在电子专业的同学眼里,很容易。
在计算机专业的同学眼里,稍稍有点复杂,有的专业课的实验课可能会带着同学做一个,或者用 Logisim 这样的仿真软件去模拟实现一个。
在非计算机专业的同学眼里,就有点不敢想象了。
我就属于第三种。
纯手工做一个 CPU 有很多好处,做完了以后确实对计算机组成的原理有了更为深入且直观的理解,而且也能稍稍涉足到电子领域,产生兴趣。
所以有那么几个月的时间,我就真正去实践了一下,做出来了一个能跑的玩具版的八位 CPU。
哦,这不是最终版的,当时没有拍照片。
如果最终做出来,应该是这个样子。
感兴趣的朋友,又不知道如何开始,可以走一遍我的老路,今天分享给大家。
当时我完全不知道这玩意该咋弄,网上找了好久也没找到个靠谱的能教我一步步做的,但后来居然发现了这个神奇的网站。
https://eater.net/
这网站真的是绝了,作者叫 Ben Eater,是个极客,里面放了很多教你如何做各种东西的视频,而且是保姆级教学。
而被我发现了,置顶的一个教学就是
Build an 8-bit CPU from scratch
,用面包板搭建一个八位的 CPU。
于是就照着这个视频一步一步做了。
可以点开看一下。
看
整体大纲,就是分模块一个个做的。你说你要是花上一段时间都做一遍之后,怎么可能对计算机组成原理不了解呢?
简直如数家珍啊。
当然我当时遇到的第一个问题就是,买什么材料,这些在这个页面也都包含了,就在前几章里。
不过这都是美国的购买方式,当时我也是花了好长时间,把它对应成了在中国的电子元器件的名称。
可以想象下当时我的痛苦,在完全没有任何电子知识的情况下,把英文的那些描述转换成中国可以买到的电子器件,我感觉我都可以成为 Ben Eater 在中国的代言人了。
准备好这些器材之后,就跟着视频一步一步搭建就好了。
我当时是真的跟着视频一步步搭建的,连人家的手法和姿势都不敢不一样,哈哈。
比如最先搭建的就是时钟模块,用的是 555 定时器。
比如由两个 74LS173 和一个 74LS245 构成一个寄存器以及连接到总线上的过程。
然后一根线一根线插,感觉我当时的手都快变小了。
哦当然,如果你对电子知识一窍不通零基础的话,比如我,还得先从如何认识色环电阻的阻值开始学起。
以及不同种类的电容长什么样。
电解电容
独石电容
等等。
总之吧,这个东西快不得,如果你能坚持下来,最后全都搞起来,会变成这个样子(理想情况)