GPT-5.6 Sol设计的CPU跑起了《毁灭战士》

一位 X 用户 Angel(@Angaisb_)放出的演示视频里,1993 年的《毁灭战士》正在一颗由 GPT-5.6 Sol 设计的处理器上运行。这颗 CPU 叫 Codex-R32,名字是模型自己起的。

演示的舞台是 Turing Complete——一款计算机科学教育解谜游戏,玩家从与非门开始,一级级往上搭出寄存器、算术逻辑单元,最后拼成一台能执行指令的完整计算机。它的沙盒模式提供门级仿真,每一个逻辑元件都要老老实实连线。Codex-R32 就是在这个环境里从基础逻辑元件搭起来的,模型不光画了电路,还为它写了配套的汇编代码。

跑起来的《毁灭战士》是基于 C 的 PureDOOM 移植版,被编译成 RV32IM 机器码,直接在这台仿真硬件上执行。画面效果是这次演示传播开的主要原因:游戏视口叠在 CPU 的实时电路示意图上,门电路、寄存器、内存和 ALU 一格格跟着指令闪动,旁边还挂着周期计数器、仿真速度、内存和寄存器的实时数值。

RV32IM 这四个字符的分量

指令集的选择透露了工作量。RV32IM 是 RISC-V 的一个子集,32 位、包含基础整数指令,加上 M 扩展的乘除法。选它有个现实理由:PureDOOM 是标准 C 代码,需要一个有成熟编译器后端的目标平台,RISC-V 正好满足。

但反过来,这也意味着这颗 CPU 必须严格实现一份公开规范。只要有一条指令的边界情况处理错了,游戏就跑不到标题画面。《毁灭战士》要做定点数运算、要查表、要跳来跳去地处理渲染循环,一颗有 bug 的处理器熬不过前几万个周期。能启动并玩下去,等于跑了一轮相当密集的隐式测试。

Angel 自己的评价简短:这是大家点名要的《毁灭战士》,跑在 GPT-5.6 Sol 造的 CPU 上,模型给它取名 Codex-R32,能做出这种事情实在离谱。有人接着起哄问下一步是不是该跑《孤岛危机》,Angel 让模型代为回答——没问题,先给我造一块 GPU、加几 GB 内存,再画一张从太空能看见的电路图。

这算不算”AI 设计芯片”

需要把话说清楚的地方在这里。Turing Complete 里的门级仿真和真实芯片设计之间,隔着一整个产业。真做一颗流片的处理器,要过时序收敛、要处理时钟树和功耗域、要在具体工艺库上做布局布线、要跑形式验证和数以万计的回归用例,还得和代工厂的 DRC 规则打交道。这些环节在游戏沙盒里一个都不存在,仿真器给的是理想器件、零延迟连线。

所以这次演示证明的不是模型能替代芯片工程师。它证明的是另一件事:模型有能力在一个规则明确、反馈即时的形式化环境里,把一个跨越多个抽象层的设计从头做到尾且保持自洽——门电路、微架构、指令集实现、汇编工具链,任何一层出错都会在最上层暴露出来。这种跨层一致性,恰恰是过去评估模型时最难用基准测试量出来的东西。

一个持续三十多年的仪式

“能不能跑《毁灭战士》“从上世纪九十年代末就成了硬件圈的固定玩法。这游戏被塞进过打印机、示波器、ATM 机、电子测孕棒,甚至肠道细菌的培养装置。它之所以被反复拿来当靶子,是因为要求刚好卡在一个位置:需要一颗能跑通用 C 代码的处理器、需要几 MB 内存和一块能刷新的显示输出,但又不需要浮点单元和现代图形接口。凡是能跑起来的平台,基本可以认定是一台货真价实的计算机。

这次的标靶换成了 AI 生成的设计。三十年前它用来验证一块硬件是否名副其实,现在用来验证一个模型的输出是否名副其实。检验方式没变,被检验的对象换了。

参考来源:Tom's Hardware、创作者在社交平台公开的演示视频与说明、CocoLoop;核验 CPU 名称、指令集子集写法、PureDOOM 移植版本与仿真环境名称。