BKi810 v1.6 で FC-PGA 版 Celeron を使う

■BKi810 v1.6 で FC-PGA は使えるのか?
■BKi810 v1.6 は FC-PGA 版 CPU の動作はサポート外
 ここにも書いたように,メーカー資料によるとBKi810 v1.6 で 利用可能な CPU は, PPGA のみのようです.逆に言うと,FC-PGA 版の動作は正式サポート しないということです.しかし, Celeron は PPGA 版から FC-PGA 版に急速に切り替わっており,近い将来, 店頭で PPGA タイプの CPU の姿を見なくなる日が来るでしょう.

 v3.3A は FC-PGA CPU に対応しています.そのため,これから BKi810 を購入する人にはこの 問題とは無縁です.しかし,現在 v1.6 を使用している人にとっては,かなり悩ましい問題だと思います. 今は手持ちの PPGA Celeron で動かしておくにしても,将来的に別の CPU に乗せ換え,パフォーマンス アップを図る道が閉ざされてしまうわけですから.

■FC-PGA Celeron を使用しようとした動機
 私は BKi810 v1.6 で PPGA 版の Celeron 400を使用していましたが,Linux を使用していたこともあり,それほどパフォーマンス不足を感じたことはありませんでした.しかし,v3.3 で使用している CPU をCeleron 533A から PentiumIII/650 に乗せ換えたため,533Aが浮いてきました.今回 v1.6 で FC-PGA 版 Celeron を使用しようとした動機は,この浮いてきた CPU の有効利用を考えたためです.

■PPGA CPU 用ソケットに FC-PGA CPU を載せる場合の問題点
■『PPGA』,『FC-PGA』とは何を表しているのか
 CPU ソケット自身の正式名称は,Socket370.つまり370本のピンを持ったCPUを接続することの可能な ソケットを意味しています.PPGAソケット,FC-PGAソケットのような使われ方をする場合もありますが,正式 には,『PPGA』,『FC-PGA』 とは,CPU のパッケージングの違いを意味しています.

  Intel の資料によると,PPGA パッケージと FC-PGA パッケージの違いは,次のように説明されています.

略称正式名称 説明
PPGA Plastic Pin Grid Array シリコン・コアがプロセッサの下に付いており,ヒート・スラグと呼ばれるコアの熱をヒート・シンクへ放出する部品に覆われている.コアの小型化やCPUの高速化に伴い,熱処理上問題を抱える
FC-PGA Flip Chip Pin Grid Array シリコン・コアがプロセッサの上側に付いており,ヒートシンクへ直接熱を放出する

■PPGA Celeron, FC-PGA Celeron の端子の違い
 端子の違いについては,PGA Adventureに,大変詳しく解説されたページがあります.内容を要約しますと,PPGA用マザーでFC-PGA Celeron を使用する際に,問題になりそうなピンは2本.特に関係のありそうなものは,E21であり,PPGA版 Celeron では 2V をかけていたが,FC-PGA 版では使われていないが,結線はされているとのことです.

 最近の情報としては,v1.6 では cB0 コアの FC-PGA Celeron は動作可能であるであるが,cC0 コアの FC-PGA Celeron はピンアサインが少し異なるため,動作しないという話も出ています.なお,使用しているCPUのコアの種類は, Intel(R) Celeron(TM) Processor Sspec Informationで確認することができます.ちなみに上記のページでは,cB0 コアの Celeron を解析されています.

['01/03/04] cB0コアであっても,BKi810 v1.6 でゲタ無しで動作可能ものとしないものががあるようです.ひが氏の検証実験によると,cB0 のコアであったとしても,コア電圧が 1.5[V] の Celeron 533A,566,600 [MHz] は動作するが,コア電圧 1.65[V]の Celeron 633,667,700[MHz] は動作しないとのことです.

['03/02/07] メーカーの公式見解では,v1.6はコア電圧 が 1.5[V]タイプの B0コア Celeron のみに対応しており,C0,D0 コア(コア電圧 1.65/1.7V)のものはハード的な制約で利用できないとされています.しかし実際 には,下駄を使用したり,ピンマスク等を行うことにより利用可能なようです. 詳しくは,リンクのページから辿り, 『BOOK PC (BKI810 V1.6) でFC-PGA Celeron を使いたい! 』を参照してください.

 PentiumIIIを使用する場合や,FC-PGA 版 Celeron の新しいコアのものを使用する場合は, NEO-S370 のような FC-PGA -> PPGA ソケットへの変換ゲタを使用するようにしましょう.cB0コアの場合でも,ゲタを使用した方が問題は少ないと思われます.なお,BookPC (BKi810掲示板) の方に,ゲタの使用/不使用による動作報告を,何人かの方がされていますので,参考にすると良いでしょう.

■M/Bが対応する CPU コア電圧を出力可能か
 CPU の高速化に伴い,CPU の消費電力は上昇傾向にあります.消費電力が上昇すると,電源に対する負担の増加と共に,発熱量も増えます.そのため,廃熱も困難になってきます.

 CPUメーカーでは,これらの問題を解決するために,CPU のプロセスルールを微細化すると共に,稼動電圧を落とすということを行っています.一昔前までは CPU は 5[V] (普通の TTL IC の電源電圧)でしたが,その後3.3[V]になり,今ではモバイルPC用として提供されている CPU に至っては,1[V]弱の電圧で動くようなものまで出てきています.

 その結果,同じシリーズの CPU であっても,動作周波数や製造時期によってコア電圧が変更になることが多くなっています.この問題に柔軟に対応するため,CPU から出ている特定のピンの情報を参照することにより,M/B側がコア電圧を認識することが可能な仕組みがあります.例えば PPGA 版の Celeron では,VID0〜VID3までの CPU のピンを参照し,適切な電圧を知ることが可能になっています.M/B はこれらのピンをチェックし,CPUに電力を供給するモジュールをコントロールし,適切な電圧をかけることが可能なわけです.

 また,この電圧を供給するモジュールは,VRM(Voltage Regulator Module:電源レギュレータモジュール)と呼ばれ,Inltelからは,バージョン番号を付加した仕様が提供されています.

 PPGA 版 Celeron の頃は VRM 8.2 という規格が使用されていましたが,PentiumIIIも含めた FC-PGA 版のCPU を使用するためには,VRM 8.4 という規格を満たしている必要があります.一概には言えませんが,多くのM/Bでは,設計時点で存在している CPU で必要な電圧よりも,低電圧を供給可能な設計を行っていることがほとんどです.

 今回対象となる Celeron の場合は,以下の表のように,PPGA 版では 2.0[V],FC-PGA 版では,1.5〜1.7[V]を供給可能である必要があります.

Celeron のコア電圧
クロック[MHz]コア電圧[V]
300A〜500(PPGA)2.00
533A〜600(FC-PGA)1.50/1.70
667〜700(FC-PGA)1.65/1.70

 ちなみに,これらのコア電圧は定格として供給する電圧です.実際には若干マージンを取ってありますので,多少電圧が上下しても動作上問題はありません.場合によっては,オーバークロックを目的とし,コア電圧を意図的に上げる場合もあります.ただし,定格よりも高い電圧をかけた場合,消費電力が上昇し,発熱量も増加します.また,あまり高い電圧をかけて長期間使用した場合,CPU 自身の寿命を縮める場合もあります.

 今回使用する CPU は Celeron 533A のため,1.5[V]が供給可能であれば動作します.Intelのデータシートによると,2.1[V]までは破壊しない(動作するという意味ではない)ようです.そのため,誤って PPGA 版用の 2.0[V] が供給された場合も,最悪の事態は避けられそうです.

■BIOS が認識するか
 CPUには,自分自身がどのようなCPUであるかを示すために,CPUID,Vender ID,Family ID,Model ID,Step ID等の情報が収められています.BIOSはこの情報を読み出し,『このCPUは Celeron XXXである』のような判断をします.そしてCPUの種別を特定した後,場合によってはそのCPU専用のコードを実行する場合があります.例えば Intel の CPU には,CPU のロジックにバグ(Erattaと呼ばれます)が見つかった場合,BIOS がCPU内のマイクロコードにパッチを当て,その対策をする仕組みが備わっています.その他,Socket 7 M/B では,K6シリーズにおいて何種類かのキャッシュアルゴリズムが存在するため,CPU のタイプによって異なるコードを BIOS 側で実行します.K6シリーズに限定して話をすると,使用CPUに対応したBIOSが使用されていない場合,キャッシュが有効に働かないため,極端なパフォーマンスダウンが発生します(FYI:対応を講じるための DOS/Windows用プログラムも存在します).

 そのようなわけで,BIOS 側で搭載するCPUに対応しているか否かは重要な場合があります.しかし,大抵の場合は,起動画面で実際に使用している CPU とは異なった名前が表示されるだけで済むことが多いでしょう.

■BKi810 v1.6 で Celeron 533A を使用する
■Celeron 533A の取り付け
 これまでと同様に,CPUのソケットへの取り付け方向を間違えないように取り付けます.当然ながらソケットの形状は PPGA 版も FC-PGA 版も同じですので,物理的な取り付け方法に違いはありません.ただし,パッケージの変更により,FC-PGA 版は CPU コアが上面に剥き出しになっているため,CPU ファンの取り付けの際にはコアに傷を付けないように注意しましょう.人によっては,冷却効率を高めるため,銅製のスペーサーをCPUとCPUファンの間に挟む方もおられますが,私はそのままCPUファンを取り付けることにしました.

ケースを開ける
入れ替えるCPUを用意.使いまわす場合は,シリコングリスが変質していることがあるので,ふき取ること.
CPUファンを取り,CPUを露出させる
レバーを跳ね上げて古いCPUは取り除く
新しいCPUをソケットに挿入.シリコングリスを薄く塗布する

CPUファンを使いまわす場合は,埃がたまっている場合があるので注意
埃はエアーで吹き飛ばすと楽です
レバーをロックしてCPUを固定し,CPUファンを取り付ける.CPUファンのケーブルも当然接続
■起動してみる
 電源ボタンを押し,起動してみます.

 まず起動画面で確認できたことは,BIOS は使用しているCPUを PentiumIII として誤認識していることです.

Celeron 533A が PentiumIII として認識されている
(写真中では,ベースクロックを75[MHz]にしたままであったため,600[MHz]と表示されている)

 次に,コア電圧として何[V]が供給されているかを BIOS 画面で確認してみます.表示されている値は若干 1.5[V] と異なりますが,これは誤差の範囲内です.

コア電圧として,1.5[V]が供給されている

 この後とりあえず OS が起動し,使用できることが確認できました.ただし,動作上の不具合があります.不具合の内容に関しては,後述します.

■クロックアップを試す
 これまで PPGA 版の Celeron 400 を使用する際には,ベースクロックを上げ,75[MHz]*6 の設定にして 450[MHz] で使用していました.これと同様に,Celeron 533A もベースクロックを上げ,75[MHz]*8 の 600[MHz] 動作をさせてみました.BIOS 設定の変更方法に関しては,BIOSの設定方法のページを参照してください.

 Celeron 533A は 600[MHz] で動作し,クロックアップが原因と考えられるトラブルは特にありませんでした.

■Celeron 533Aを使用した際の不具合について
 Celeron 533A を乗せ,とりあえず使用できるようになった BKi810 v1.6 ですが,一つ深刻な不具合が発生しました.不具合の内容は,『リセットが利かない』です.電源ON時には普通に起動して動作するのですが,OSから再起動をかけたり,リセットボタンを押して再起動をかけると,画面がブラックアウトしてそのままダンマリを決め込みます.IDE等の初期化までは動作しているようですが,その後のビープが鳴り,起動画面が出るところまでは辿り着けません.

 この問題が発生すると,Windows 98 のインストールすら正常に出来ません.とりあえずは電源ボタンを押し,強制的にリセットをかけることによって凌ぐことが可能ですが,とても不便です.また,電源ボタンを押す際にも,数秒押しつづけないと電源が落ちないという不具合も発生します.

 大きな問題はこれだけですが,小さな問題としては起動画面で Celeron が PentiumIII として表示されていることが挙げられます.しかし,これ自身は表示だけの問題ですので,それほど大きな問題ではありません.

■BIOSの update による不具合の解消
■BIOS の update
 しばらくはこのような状態で使用していたのですが,BIOS の update によりこれら不具合が解決できることが分かりました.BKi810 用の BIOS イメージは,リンクのページから辿り,pcchips のページからダウンロードします.BIOS の update のためには BIOS のイメージファイルだけではなく,BIOS を Flash RAM に書き込むソフトも必要です.後者はも同じサイトにありますので,忘れずにダウンロードしましょう.

 サイト上に BIOS のイメージファイルが複数種類存在しますが,対応する BKi810 のバージョン(今回は v1.6)のもので,TV出力がデフォルトで NTSC のものを選ぶようにします.『NTSC』 とは,TV放送の仕様で,日本や米国では NTSC 形式,ヨーロッパ圏では PAL 形式が主に使われています.なお,デフォルトが PAL 形式の BIOS にした場合でも,後で BIOS 上で NTSC に設定を変更できます.TV出力をしない場合はどちらでも良いのですが,日本国内で使用する場合は,デフォルトが NTSC の BIOS イメージで update しておいた方が良いでしょう.

 今回の update では, 00101n という名前の BIOS イメージファイルを使用しました.多くの M/B メーカーでは,新しい version の BIOS を公開する際に,どのような変更が加えられたかの ChangeLog も一緒に公開するのが一般的です.しかし,PC Chips からは特にそのような情報は公開されていないため,以前の BIOS version からどこがどのように変更されているかは不明です.

■BIOS update による変化
 BIOS の update により,リセット周りの不具合は解消しました.また,同時に初期画面の CPU タイプの表示も,正しく Celeron と表示されるようになりました.その他の違いは,全く分かりません.

CPU タイプが正しく表示されるようになった

 BIOS の update 処理は,書き込み中にトラブルが発生すると二度と PC が起動しなくなるなどの危険が伴うため,新しいバージョンが出たからといって必ずしも update するべきだとは言い切れません.また,バグフィックス以外にバグを新たに入れてしまっている可能性もあるため,通常利用で不具合が発生し,update により解決可能だと思われる場合以外は,慎重に判断する必要があります.

 しかし,BKi810 v1.6 上で FC-PGA 版 Celeron を使用する上では,BIOS の update は必須だと言えます.

■BKi810 v1.6 で Celeron 533A を使用した際のパフォーマンス
■Byte Bench でのパフォーマンス調査
 パフォーマンスのチェックは,Byte Benchmark を用いて行いました.ベンチマークに関しての詳細は,こちらのページを参照してください.

※Maxtor 91531U3を使用.メモリはSDRAM 256MB
CPUBKi810 Typeクロック[MHz] Ari Dhy Exe File Pipe Shell
Celeron 400v1.6400 (66*6) 41.7 34.8 27.0 138.5 97.8 15.5
Celeron 400v1.6450 (75*6) 46.9 39.1 30.9 138.8 109.9 17.5
Celeron 533Av1.6533 (66*8) 55.7 47.0 31.2 136.5 130.3 19.8
Celeron 533Av1.6600 (75*8) 62.5 52.7 36.1 136.9 146.2 22.2
Celeron 533A (参考値)v3.3533 (66*8) 55.7 47.0 31.9 139.5 129.7 19.8
PentiumIII 650 (参考値)v3.3650 (100*6.5) 67.9 57.3 54.8 140.4 158.4 25.8

(略語の意味:
 Ari :Arithmetic Test (type = double)
 Dhr :Dhrystone 2 without register variables
 Exe :Execl Throughput Test
 File :File Copy (30 seconds)
 Pipe :Pipe-based Context Switching Test
 Shell:Shell scripts (8 concurrent))


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

■パフォーマンス考察
 ByteBenchの結果から,v1.6 と v3.3A 上で同一の CPU を使用した場合のパフォーマンスは,全く同じであることが分かりました(当然といえば当然ですが).また,CPU のクロック上昇に伴い,全体的なパフォーマンスも上昇することから,v1.6 においてFC-PGA 版 Celeron を使用することは,意味のあることであると言えそうです.

■まとめ
■総括
 メーカーの正式サポートはありませんが,BKi810 v1.6 において,FC-PGA 版 Celeron が動作することが分かりました.また,高クロックの CPU を使用した場合,それなりに全体的なパフォーマンスも上昇します.v1.6を使用していてパフォーマンス不足を感じている方には,CPU 換装は非常に良い問題解決の選択肢であると思われます.

 ただし,FC-PGA 版 Celeron を使用する際には,BIOS のアップデートが必須です.また,その他の FC-PGA 版 CPU を使用する上での問題を避ける意味では,NEO-S370 のようなゲタを使用することが安心であると思われます.

 なお,本ページを読み,同様のことを行われる際には,あくまで自己責任で行うようお願いします.

■その後の BKi810 v1.6 + FC-PGA Celeron
 本ページのような実験を行った後,BKi810 v1.6 でHCL-Sという下駄 を利用することにより, Celeron 766[MHz] も使用可能であることが確認できまし た.詳しくは,『v1.6 で 下駄を使用して Celeron 766[MHz]を使う』 にまとめてありますので,よろしければこちらもご覧ください.


『BKi810 活用メモ』 へ戻る