pg电子模拟器股份有限公司-pg电子官方网站-底层指令集与微处理器重构

您现在所在位置: 主页 > 前沿洞察 > 技术白皮书

技术白皮书

Company information

行业动态

Industry dynamics

开发者FAQ

Common Problem

用手搓CPU放《黑客帝国》果然高手还得看民间

发布日期:2026-07-22 10:29 浏览次数:

  

用手搓CPU放《黑客帝国》果然高手还得看民间(图1)

  这位网名叫MINT的小哥,从零纯手搓了个CPU出来,从设计、布线到编程,全程都是他一人包揽。

  为了秀一波肌肉,小哥自己写了点代码,用这个手搓的CPU再VFD屏幕上放起了《黑客帝国》。

  这个手搓的CPU名叫EPROMINT,从外观来看,整个CPU用了四块穿孔板,总重量有500来克。如果要把线路全部铺开,总长度大概能有一千米。

  在配置上,EPROMINT还是8位,跟现在64位的性能肯定没得比(具体如下)。

  但要和好几十年前的8位CPU比,它还是可圈可点的。既能根据真实的指令集运行,也能执行自己的汇编代码,还能像商用处理器一样对硬件中断做出反应。

  比如驱动Apple I/II、任天堂红白机的MOS 6502,或者主导CP/M系统的Z80,在这个手搓的CPU面前,可能都要稍稍逊色一筹, 能流畅播《黑客帝国》就是很好的证据。

  最早有纯手搓CPU这个想法,来自MINT小哥之前做过的一个实验,他用过时的EPROM存储芯片,搞了个能控制小型系统的开发板。

  这个实验一下子就激发了他内心深处的DIY灵魂,既然内存能用来模拟基本逻辑,那用它搞个完整的CPU也不是不可能。

  就拿ALU来说,怎么设计就是一大难题,刚开始他搞出来的ALU还只能处理最简单的加法运算,用他本人的原话来说就是个玩具,而且性能也不可靠。

  后来不断摸索才决定把ALU设计成全插槽式的,主打一个方便调试,这对手搓CPU来说也算是一个相当大的优势。

  而在手搓CPU的过程中,MINT小哥偏偏又是个完美主义者,一个模块没做到最好,就会一直修改一直修改。。。

  当然,硬件设计出来后还不算完,还得有对应的指令集,这决定了CPU之后都能干什么。

  在这块儿,MINT小哥也是从0开始,写了将近2000行的代码,好定义CPU怎么处理指令,顺带简化了数据在系统中的传输方式。

  而且相较于Z80这些老式CPU的能力,EPROMINT还支持它们没有的乘法、除法、三角运算等等。

  就比如CPU本来在放《黑客帝国》,突然来了个电话,这时CPU得学会停下来,等人接完电话后再回来继续放。

  而EPpg电子ROMINT,遇到中断时会亮起第二个LED灯,紧接着把当前的程序计数器(PC)压入栈堆,等别的任务处理完后,在从栈堆里回复数据,好继续任务。

  目前,EPROMINT已经完全开源,电路图、设计文档、指令集等等都能在GitHub上获取,链接放在结尾了。

  手搓CPU,MINT小哥不算是第一人,前些年B站就有up出过自己手搓CPU的视频,热度也是相当之高。

  但可能还会有人纳闷,现在造CPU的技术已经相当成熟了,为啥还要费力从零手搓CPU呢?

  借用一句网友的话,“或许这才是DIY的精神所在”。从零手搓CPU不会像现代CPU,把所有的执行路径都隐藏在硅片之下,它的每个时钟周期、所有寄存器的更改,都是可见、可追溯的。

  无论最后手搓出的CPU性能如何,就光是这个行为本身,就已经够令人敬佩了。

  本文来自微信公众号“科技狐”(ID:kejihutv),作者:老狐,36氪经授权发布。

  36氪欧洲总站()是关注海外的行业媒体,为企业跨境提供海外资讯及商业服务。

0335-3630388