小高輝真の「いまどきの98」第4回

98のポイントはこれで完璧把握

小高輝真の「いまどきの98」 第4回

98アップグレード
~Pentium IIを300MHzで駆動する

TEXT:小高輝真 (ウェブテクノロジ)


PentiumII & RaII23
 PentiumIIを搭載したPC-98は4機種ある(表1)。しかし、8月18日現在、300MHz動作のPentiumIIを採用した機種は発表されていない。300MHz版PentiumIIの出荷開始は比較的最近であること、当初は非常に高価格であったこと、数量の確保の問題などから、採用されなかったものと考えられる。
 ところで、この連載の第2回、第3回でも取り上げたように、95年5月以降に発表されたPC-98は、簡単な設定変更だけでCPUクロックの変更ができるように設計されている場合が多い。このことはPC-9821RaII23・RvII26も例外ではなく、ジャンパスイッチの変更だけでクロック変更が可能なことがわかった。今回は、その方法をご紹介しよう。

表1 Pentium II搭載PC-9800
  • PC-9821RaII23
  • PentiumII 233MHzデスクトップ
  • PC-9821Ra266
  • PentiumII 266MHzデスクトップ
  • PC-9821RvII26
  • PentiumII 266MHz 
    (デュアルCPU対応)
    ミニタワー
  • PC-9821RsII26
  • PentiumII 266MHz 
    (デュアルCPU対応)
    ミニタワー
    (サーバ用)


    ご注意 この記事に基づいて改造を行った場合、その結果について、筆者およびインプレスPC Watch編集部はなんらの保証もいたしません。改造により、動作が不安定になることもありますので、データの破壊等には充分ご注意ください。また、なんらかの原因により本体等を壊してしまった場合には、メーカの保証は受けられなくなります。すべて自己の責任において行なってください。

    クロックアップ方法

     クロックアップは、PC-9821RaII23とPC-9821RvII26で実験した。PC-9821Ra266・RsII26については実機を確認していないが、それぞれRaII23・RvII26と同様と考えられる。クロックアップを試みた方は、ぜひご報告いただきたい。

    ●倍率設定スイッチの位置

     さて、実際のクロックアップ方法だが、いたって簡単だ。写真1、2の赤枠で示したジャンパスイッチの設定を変更するだけである。

    PC-9821RaII23の倍率設定スイッチ
    PC-9821RvII26の倍率設定スイッチ
    写真1 PC-9821RaII23の倍率設定スイッチ
    写真2 PC-9821RvII26の倍率設定スイッチ

     PC-9821RaII23では、マザーボード上のPCIスロットのすぐ脇にある。カバーを開け、PCIカードを抜けばすぐに見つかるはずだ。
     PC-9821RvII26の場合、CPUはマザーボードとは別のCPUボード(写真3)に実装されている。これは、筐体の蓋を開け、ビス2本を緩めれば簡単に引き抜けるような構造になっている。
    PC-9821RvII26のCPUボード

    写真3 PC-9821RvII26のCPUボード

    写真4 ターミネータカード
    ターミネータカード
     写真3からわかるように、設定スイッチはプライマリCPUとセカンダリCPUの間に位置している。セカンダリのCPUスロットには、ターミネータカード(写真4)が刺さっているので、これを外すと作業がラクになる。

    ●ジャンパの設定方法

     ジャンパスイッチが実装されているプリント基板には、スイッチの名称がシルク印刷されている。表2のとおり設定すると、CPUクロックを233MHz・266MHz・300MHzに変更できる。

    表2 PC-9821RaII23/RvII26のクロック設定方法
    RaII23の
    ジャンパ名
    RvII26の
    ジャンパ名
    233MHz266MHz300MHz
    SW24B5SHORTSHORTSHORT
    SW34B2OPENSHORTOPEN
    SW44B4SHORTOPENOPEN
    SW14B3OPENSHORTSHORT

    ●ITFの表示

    写真5 ITFの表示
    ITFの表示
     PC-98には、起動時にCPU名やクロック数などを表示することのできる隠し機能があることは良く知られている。表示は、ITF(Initial Test Firmware…ハードウェアの動作テストや初期化を行うROM内ルーチン)が行っている。
     これを表示させるには、[CTRL]+[CAPS]+[カナ]+[GRPH]キーを押しながらリセット(RaII23・RvII26などはリセットスイッチがないので、電源投入)する。ブザーが「ピピピピピピ」と鳴ったら、一瞬だけキーから指を離してまた4つのキーを押すと、写真5のような画面が現れる。
     写真では、「CPU Clock is」のところが空欄になっているが、これは300MHzに設定した場合である。PC-9821RaII23・RvII26とも、233MHzと266MHzの場合は、そのものズバリ「233MHz」「266MHz」という表示が出る。300MHzの表示が用意されていないということは、これらの機種の設計時点では、300MHzのPentiumIIを搭載した機種の商品計画がなかったということだろうか。
     なお、詳しくは後述するが、ジャンパの設定で133MHz・166MHz・200MHzにも設定することができるが、この場合もここは空欄になる。間違えてクロックダウンしてしまわないように、設定変更後はWindows NT診断プログラム等でCPUクロックを実測することをお勧めする。

    ●CPUはオーバースペックに耐えられるのか

     ジャンパスイッチの設定変更だけでCPUを300MHz動作させるということは、CPUをオーバースペックで使用することになる。果たして、安定した動作は望めるのだろうか。
     筆者の会社では、先日PC-9821RaII23とRvII26を各1台ずつ購入したが、どちらも300MHzに設定変更して、すでに1ヶ月近く安定動作しているという実績がある。ただし、日経MIXのpc9800会議では、RaII23を購入したが、266MHzでは動くものの、残念ながら300MHzでは安定して動作しなかったという報告が寄せられている。
     233MHz用のCPUを266MHzで、または266MHz用のCPUを300MHzで動作させる場合は、13~14%オーバーで駆動するだけなので、マージンの範囲内に収まる可能性が高いと考えられる。だが、233MHz用のCPUを300MHzで動作させるとなると、30%オーバーにもなるので、ここまでのマージンを持った個体である確率は、そう高くないのかも知れない。
     もっとも、このあとで述べるように、300MHzと266MHzのパフォーマンスにはあまり大きな違いが見られなかった。300MHzで動いたら「ラッキー!ヽ(^o^)ノ」という嬉しい気持ちにはなれるかも知れないが、それ以上のメリットはあまりないので、もし300MHzで動かなかったとしても、あまり気落ちしないで欲しい(?)。



    クロックアップの効果

     さて、このクロックアップにはどの程度の効果があるのだろうか。
     PC-9821RvII26を使い、CPUクロックを233MHz・266MHz・300MHzに変えて2種類のベンチマークテストを実行してみた。
     まず一つ目は、Visual C++4.2によるコンパイルの実行である。サンプルとしては、ある程度の規模のプログラムが望ましいので、あるWWW自動巡回プログラムのコンパイルにかかる時間を計測してみることにした。
     もう一つは、古典的なベンチマークプログラムであるWinTach(v1.2)である。ちなみに、これは16ビットのプログラムである。
     ベンチマークテストの結果を表3・表4に示した。
     この結果から、233MHzから266MHzへのクロックアップはそれなりに効果があるものの、266MHzと300MHzのパフォーマンスは大差ないということがわかった。
     CPUのコアクロックだけ高速化しても、外部バスクロックは66MHzのままなので、メモリとの入出力速度がボトルネックとなっているためだろう。さらにパフォーマンスを上げるためには、2次キャッシュ容量の増加、外部バスの高速化等が必須となるだろう。

    表3 VC++4.2によるコンパイルの所要時間

    Visual C++4.2によるコンパイル速度のグラフ

    CPUクロック1回目2回目3回目合計(速度比)
    233MHz897669234(100%)
    266MHz766465205(114%)
    300MHz736660199(118%)
    単位:秒

    【測定条件】
    メモリ: 96MB
    HDD1 : SCSI 2GB(IBM DCAS-32160 5400rpm) WindowsNT4.0システム,VC++4.2
    HDD2 : SCSI 2GB(Seagate ST32550N 7200rpm) ソースファイル
    ソースファイルの個数: 83個(合計757,274バイト)
    VC++4.2を起動し、連続して同じものを3回コンパイルして、その時間を計測。
    * 計測のサンプルとして用いたプログラムは、「ぷらネットウォ~カ~」

    表4 WinTach v1.2によるベンチマーク結果

    Wintachのベンチマーク結果のグラフ

    CPUクロックWord ProcessingCAD/DrawSpreadsheetPaint
    233MHz504.14788.13383.14231.08
    266MHz563.37840.70396.45244.56
    300MHz563.37970.06410.62252.07

    【測定条件】
    メモリ: 96MB
    HDD : SCSI 2GB(IBM DCAS-32160 5400rpm) WindowsNT4.0システム
    グラフィック: Matrox Millennium 1280x1024 64K色


    Pentium II 動作クロックの決定方法

    ●外部バスクロックは66MHz、倍率設定用信号線は4本

     本連載の第3回で、Pentiumの動作クロックについて述べた。Pentiumを搭載したシステムでは、外部バスクロック周波数は50MHz、60MHz、66MHzのいずれかである。また、CPUコアの動作クロックは、2本の倍率設定用信号線で決定され、入力されたクロックを1.5~3倍(233MHz用のMMX Pentiumには1.5倍の設定はなく、3.5倍の設定がある)して生成していた。
     Pentium IIを搭載したシステムでは、外部バスクロック周波数は現在66MHz(正確には66.666...MHz。15nsの逆数)のみである。これを3.5倍(233MHz)、4倍(266MHz)、4.5倍(300MHz)して、CPUコアクロックを生成する。コアクロックの倍率は、リセット時にCPUが4本の信号線の状態を読み込み、決定される。
     Pentium II搭載システムでは、A20M#,IGNNE#,INT0/INTR,LINT1/NMIの各信号線は、CPUに入力される前にマルチプレクサを通る。リセット時に、マルチプレクサによって、これらの信号線はコアクロック倍率を設定するスイッチに接続される。CPUのRESET#信号の立ち上がりとともに倍率の設定がCPUに読み込まれ、内蔵したPLL(Phase Locked Loop)回路により、コアクロックが生成される。

    ●166MHz、200MHzの設定もある

     PentiumIIのコアクロック周波数を決める信号線は4本あるので、その組み合わせは16通りある。しかし、Intelのデータシートで保証されている組み合わせはなぜか4通りしかない。そこで、実際にすべての組み合わせでジャンパピンを差し替えてCPUコアの動作周波数を調べたところ、表5のような結果が得られた。なお、表2で示した設定は、すべてIntelのデータシートで保証された組み合わせに基づいている。
     表5のように、A20M#・IGNNE#・LINT0/INTR信号線をbit 2・bit 1・bit 0に見立てて並べてみると、クロック倍率が2.0倍から4.5倍まで0.5倍刻みで設定できるようになっていることがわかった。LINT1/NMI信号線の状態は倍率の設定に影響を与えていないが、どのような意味を持っているのか不明だ。また、順序的には5.0倍、5.5倍となる設定にしたときは、2.0倍の周波数で動作していた。
     次期PentiumIIでは、バスクロック周波数が100MHzになると言われている。2.5倍、3.0倍の設定は、その段階でドキュメントされるようになるのかも知れない。

    表5 PentiumIIのクロック倍率設定信号と実際のコア周波数の対応
    コア周波数(倍率)A20M#
    (bit 2)
    IGNNE#
    (bit 1)
    LINT0/INTR
    (bit 0)
    LINT1/NMI
    (Don't care)
    133MHz(x2.0)LLLL
    133MHz(x2.0)LLLH
    166MHz(x2.5)LLHL
    166MHz(x2.5)LLHH
    200MHz(x3.0)LHLL
    200MHz(x3.0)LHLH
    233MHz(x3.5)LHHL
    233MHz(x3.5)LHHH
    266MHz(x4.0)HLLL
    266MHz(x4.0)HLLH
    300MHz(x4.5)HLHL
    300MHz(x4.5)HLHH
    133MHz(x2.0)HHLL
    133MHz(x2.0)HHLH
    133MHz(x2.0)HHHL
    133MHz(x2.0)HHHH
     * 太字はIntelのデータシートで保証されている設定。
     * PC-9821RaII23・RvII26のジャンパ名とCPU信号名の対応は次の通り。
      A20M#=SW4/4B4
      IGNNE#=SW1/4B3
      LINT0/INTR=SW3/4B2
      LINT1/NMI=SW2/4B5
      (SHORT=L, OPEN=H)


  • 参考文献 Pentium(R) II Processors-Datasheets (Intel Corporation)
  • ベンチマーク協力 小野知之
  • 撮影協力 古庄 歩
  • 本記事中のGIF画像ファイルは、OPTPiXを用いて減色・加工処理を行いました。


    ご意見・ご感想をお寄せください

     今回のクロックアップを再現してみた方は、結果をお知らせください。
     また、「こんな改造は可能か?」などのご質問も大歓迎です(ただし、個別のご質問にはお答えすることができませんので、あらかじめご了承ください)。


    このページに関するご意見・ご感想は、筆者までお願いします。

    [Text by 小高輝真(ウェブテクノロジ)]

    【PC Watchホームページ】


    ウォッチ編集部内PC Watch担当 pc-watch-info@impress.co.jp