やじうまPC Watch

それは愛。24年の時を経て「Voodoo4」がMXMに。初のノートPCも完成

Voodoo4 M4800(右)とオリジナルのVoodoo4(左)

 3dfx InteractiveのVSA-100チップを搭載した「Voodoo4」が登場してから約24年。このたび海外掲示板vogonsの有志“sdz”氏の手によってMXM 3.0/3.1 TYPE A化された。「Voodoo 4 M4800」と呼ばれるこのモジュールによって、ノートPCへの搭載が可能となった。同氏はプロジェクトのオープンソース化も予定している。

 Voodoo4をMXM化するにあたって、PCI→PCI Express変換チップの搭載、そして電源回路や基板の設計をする必要がある……、というのは言うまでもないことなのだが、その後解決しなければならない問題はビデオBIOSにあったという。

 本来Voodoo4のBIOSはMXMと互換性がない上に、MXM対応ノートPCではBIOSを書き換えてホワイトリストに追加したりする必要があるそうだが、同氏はこの両方の変更を望まなかった。そうするとPC起動時にビデオBIOSが実行されないため、一部レジスタが設定されなくなるが、多くはハードウェアストラップで設定できたという。

 また、ビデオBIOSでレジスタをセットできないことによって、デジタルRGBの出力が非スクランブル化のBrooktreeではなく、スクランブル化されたChrontelになってしまう問題については、標準のTMDSエンコーダをFPGAに置き換えることで対処した。

Voodoo 4 M4800のブロックダイアグラム
基板設計
回路図
完成した基板
部品を載せたところ

 さらにビデオBIOSがなく、ノートPCからはビデオカードが接続されていないかのように見えるため、統合GPUを搭載したノートの場合、MXMスロットからのビデオ信号に切り替えるためのマルチプレクサが動作しない。そのためsdz氏はLVDSコネクタがMXMスロットの近くにあるDellの「Precision M4800」を利用し、MXMカードにLVDSコネクタを追加することにした。

Precision M4800での動作テストの様子
LVDSテストの様子

 加えて、VSA-100にはパネルのネイティブ解像度よりも低い解像度でレンダリングした場合のアップスケーリング機能がないほか、パネルにデュアルチャネルのLVDS/OpenLDI/FPDLIK-I信号を受信させる必要があるため、カードにはRealtek製のスケーラも搭載することで対処。その後、同氏はFPGAから(Realtekのスケーラを経由せずに)HDMI出力させることにも成功している。

 同氏は次のステップとしてThunderbolt(またはUSB4)でVoodoo4を駆動させることを目指しているようだ。

MXMからPCI Expressへの変換も
HDMIでの出力テスト