GPT-5.6 Sol設計のCPUでDOOM起動

X(旧Twitter)ユーザーのAngel氏(@Angaisb_)が公開したデモ映像では、1993年の『DOOM』がGPT-5.6 Solが設計したプロセッサ上で動作している。このCPUは「Codex-R32」と呼ばれ、名付けたのはモデル自身だ。

デモの舞台となったのは、コンピュータサイエンス教育用パズルゲーム「Turing Complete」。プレイヤーはNANDゲートから出発し、レジスタや演算論理ユニット(ALU)を一段ずつ積み上げ、最終的に命令を実行できる完全なコンピュータを組み上げる。サンドボックスモードはゲート単位のシミュレーションを提供し、すべての論理素子を自分で配線しなければならない。Codex-R32はこの環境の中で基本論理素子から組み上げられたもので、モデルは回路を設計しただけでなく、対応するアセンブリコードも書き上げた。

動作した『DOOM』はC言語ベースの移植版「PureDOOM」で、RV32IMのマシンコードにコンパイルされ、このシミュレート上のハードウェア上で直接実行される。今回のデモが拡散した主な理由は映像効果にある。ゲーム画面がCPUのリアルタイム回路図に重ねて表示され、ゲート回路、レジスタ、メモリ、ALUが命令に合わせて一マスずつ点滅し、サイクル数、シミュレーション速度、メモリ・レジスタの数値もリアルタイムで表示される。

RV32IMという4文字が意味するもの

命令セットの選択は、この取り組みの規模を物語っている。RV32IMはRISC-Vのサブセットで、32ビット・基本整数命令に加え、乗除算を行うM拡張を含む。選定には現実的な理由がある。PureDOOMは標準的なC言語コードであり、成熟したコンパイラのバックエンドを持つターゲットプラットフォームが必要で、RISC-Vはその条件を満たしていた。

だが裏を返せば、このCPUは公開仕様を厳密に実装しなければならないということでもある。1つでも命令のエッジケース処理を誤れば、ゲームはタイトル画面にすらたどり着かない。『DOOM』は固定小数点演算やテーブル参照を行い、レンダリングループのためにジャンプを繰り返す。バグのあるプロセッサでは、最初の数万サイクルすら持ちこたえられない。起動してプレイし続けられたということは、かなり密度の高い暗黙のテストを一通りクリアしたに等しい。

Angel氏自身のコメントは簡潔だ。誰もが望んでいた『DOOM』が、GPT-5.6 Solが作りモデル自身がCodex-R32と名付けたCPU上で動いている、こんなことができるとは常軌を逸している、と。続けて「次は『クライシス』を動かすべきでは」というやり取りが起こると、Angel氏はモデルに代わりに答えさせた——問題ない、まずGPUを1基造ってくれ、メモリを数GB足して、宇宙から見える回路図を描いてくれれば、と。

これは「AIによるチップ設計」と言えるのか

はっきりさせておくべき点がここにある。「Turing Complete」内のゲート単位シミュレーションと、実際のチップ設計との間には、業界丸ごと1つ分の距離がある。本物の量産プロセッサを作るには、タイミングクロージャーをクリアし、クロックツリーと電力ドメインを扱い、実際のプロセスライブラリ上でレイアウト・配線を行い、形式検証と数万件規模のリグレッションテストを実施し、ファウンドリのDRCルールとも折り合いをつける必要がある。これらの工程はゲームのサンドボックスには一切存在せず、シミュレータが与えるのは理想的な素子と遅延ゼロの配線だ。

つまり今回のデモが証明したのは、モデルがチップエンジニアに取って代われるということではない。証明されたのはむしろ別のことだ。ルールが明確でフィードバックが即時に得られる形式的な環境であれば、モデルはゲート回路、マイクロアーキテクチャ、命令セットの実装、アセンブリツールチェーンという複数の抽象レイヤーにまたがる設計を、どの層で間違えても最上位で露呈してしまうという条件のもとで、最初から最後まで一貫性を保ったまま完成させられる、ということだ。こうしたレイヤーをまたいだ一貫性こそ、これまでベンチマークで測るのが最も難しかった能力にほかならない。

30年以上続く一種の儀式

「『DOOM』が動くかどうか」は1990年代末からハードウェア界隈の定番ネタになっている。このゲームはプリンター、オシロスコープ、ATM、電子妊娠検査薬、さらには腸内細菌の培養装置にまで移植されてきた。繰り返し標的にされるのは、その要求スペックがちょうど絶妙な位置にあるからだ。汎用的なC言語コードを実行できるプロセッサ、数MBのメモリ、リフレッシュ可能な表示出力は必要だが、浮動小数点ユニットや現代的なグラフィックインタフェースは不要。動かせるプラットフォームなら、基本的に本物のコンピュータだと認めていい。

今回、標的となったのはAIが生成した設計だった。30年前はハードウェアが名実ともにコンピュータかどうかを確かめるために使われ、今はモデルの出力が名実ともに機能しているかを確かめるために使われている。検証の方法は変わっていない。検証される対象が変わっただけだ。

参考資料:Tom's Hardware、制作者がSNS上で公開したデモ映像および説明文、CocoLoop;CPU名、命令セットサブセットの表記、PureDOOM移植版のバージョン、シミュレーション環境名を確認。