真·手搓CPU!旧芯片打造完整CPU:纯手工焊接 1800行汇编代码
7月15日消息,一位爱好者使用了老式内存芯片和8-bit时代的逻辑元件,打造出了一整个处理器,不是开发板,不是微控制器,而是一个功能完全的、能够执行指令、进行内存寻址的CPU。
这位名叫Majsterkowanie i nie tylko(简称MINT)的极客爱好者,历时三个月完成了这个名为EPROMINT的项目。
MINT从一个简单的实验开始,利用过时的EPROM内存芯片控制小型外部系统,例如PWM调光器或消息显示器。
他发现,如果内存可以模拟基本逻辑,那么构建一个完整处理器的思路或许并非遥不可及,于是,他一头扎进了电路图和经典8-bit CPU(如Z80)的架构研究中。
最终,他成功打造了一台功能齐全的CPU,看起来不时尚或不精致,但它根据真实的指令集运行,执行自己的汇编代码,并像商业处理器一样响应硬件中断。
项目从最基本的算术逻辑单元(ALU)开始,最初的原型因不可靠而被废弃,后续的版本则便于调试。
随后,他又增加了内存接口、地址总线控制器(由第二个ALU驱动)以及控制逻辑,后者负责解码操作码并协调整个数据流。
软件部分同样是从零开始编写的,近2000行代码定义了处理器如何处理指令、优化数据流动,并创建了测试程序。
这些代码是基于早期电路板的定制开发工具编写的,其指令集甚至超越了老式CPU所能做到的,包括乘法、除法、三角函数计算甚至位序列处理等操作。
当所有模块连接完成后,CPU首次通电,电流为250毫安,经过测试,它不仅能运行闪烁的LED程序,还能在检测到中断时点亮第二个LED,能够像真实处理器一样处理外部事件。
最终,这台CPU由四块全尺寸的穿孔板组成,重达500多克,如果将所有电线拉直,总长度超过1公里,所有逻辑运算都通过预编程的内存实现,数据路由和指令解码等功能均依赖于此。
与现代芯片不同,这台CPU的执行路径完全暴露,每个时钟周期、每个操作码以及所有寄存器的变化都清晰可见。
为了展示这台CPU的功能,MINT将其连接到一台VFD显示屏上,并编写代码播放《黑客帝国》的片段。
【本文结束】如需转载请务必注明出处: