技术狂人用基本逻辑门做了个电脑

2021-12-12 14:00:21 来源: 半导体行业观察

来源:内容 半导体行业观察(ID:icbank) 编译自hackster ,谢谢。


CPU 和 GPU 的发明意味着工程师现在可以设计大型、功能强大的计算机,且仅需要少量的外部电路和更少的组件数量,这开创了现代时代。但是,当尝试学习逻辑门如何执行数学和编程时,仅用基本芯片创建一台简单的计算机会很有用,这正是YouTube 用户 jdh决定做的。他的面包板 PC 称为 JDH-8,具有 8 位寄存器、16 位地址总线、256 个 I/O 端口和一个非常简单的 208x240px 图形处理器。也许最重要的是,它完全组装在 20 个面包板上,并带有大量跳线。

提出一个计划


在 jdh 开始布置他的小型计算机的电路之前,他首先必须提出一个详细的计划、原理图,并为构建选择最好的部件。CPU 基于加载-存储架构,这意味着它必须在执行操作之前将内存中的值加载到寄存器中。它还支持带有推送和弹出指令的硬件堆栈,以及大量的 ALU 操作。


为了存储操作数据,JDH-8 的 CPU 总共包含 8 个寄存器,其中最多 7 个可用于一般用途,最后一个用于存储 ALU 在操作后生成的状态标志。在内存方面,16KB ROM 保存程序,16KB 通用RAM,一个堆栈空间,以及三个保存堆栈指针、程序计数器和当前存储库的字。


示意图


随着理论设计在模拟器上运行之后,jdh 可以进入下一步:将其转换为硬件。该设计并没有为每个组件制作一个巨大的示意图,而是将设计拆分为可以相互交互而不会过于复杂的模块。并且不是为每个部分放置单独的晶体管,逻辑门、锁存器组、多路复用器和其他部分,以上都由单个符号表示,以便于使用。


一旦一切都经过虚拟设计、模拟并确认可以工作,原理图就被转换成一系列实际芯片,在它们之间用导线传输信号。


建造


每个模块都独立地布置在几个面包板上,以便进行测试。这包括将 IC 放置在中间并在正确的引脚之间运行跳线。总的来说,jdh 必须构建一个 ALU、寄存器文件、地址模块、I/O、指令计数器、控制信号,最后是迄今为止涉及最多的视频生成器。


测试


在花了无数个小时将 IC 连接在一起并测试模块之后,jdh 首次将它们连接在一起并通电。对他来说幸运的是,大部分指令都能正常工作,但试图在屏幕上显示图形却无法正常工作。8 小时、20 次尝试和几次修复之后,它终于成功并在屏幕上显示了字母“HI”和一张小小的笑脸。


如下所示,jdh 现在可以在屏幕上显示图像、进行一些数学运算并通过其 I/O 总线与其他设备交互。


项目的事后分析


尽管这个项目令人印象深刻并且运行正常,但 jdh 确实有一些他希望有所不同的东西。也就是说,硬件堆栈是不必要的,他的 ALU 设计被过度设计,并且加载存储架构被证明是笨拙的。但即使有这种小问题,小型计算机也能正常工作,看看它还能做些什么会很令人兴奋。


要查看有关其工作原理的更多信息, 您可以 点击下方文末“ 阅读原文 ”, 查看 jdh 的源代码和设计文件,

*免责声明:本文由作者原创。文章内容系作者个人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。


今天是《半导体行业观察》为您分享的第2886内容,欢迎关注。

推荐阅读


FPGA,大战继续!

RISC-V生态系统即将爆发

破局“内存墙”,存算一体路线分析


半导体行业观察

半导体第一垂直媒体

实时 专业 原创 深度


识别二维码 ,回复下方关键词,阅读更多

晶圆|集成电路|设备 |汽车芯片|存储|台积电|AI|封装

回复 投稿 ,看《如何成为“半导体行业观察”的一员 》

回复 搜索 ,还能轻松找到其他你感兴趣的文章!


点击阅读原文,可查看本文
原文链接
责任编辑:Sophie

相关文章

半导体行业观察
摩尔芯闻

热门评论