設(shè)置
  • 日夜間
    隨系統(tǒng)
    淺色
    深色
  • 主題色

如何動手做出一個(gè) CPU

低并發(fā)編程 2022/10/15 16:19:17 責(zé)編:遠(yuǎn)生

本文來自微信公眾號:低并發(fā)編程 (ID:dibingfa),作者:閃客

純手工打造一個(gè) CPU 這個(gè)事兒。

在電子專業(yè)的同學(xué)眼里,很容易。

在計(jì)算機(jī)專業(yè)的同學(xué)眼里,稍稍有點(diǎn)復(fù)雜,有的專業(yè)課的實(shí)驗(yàn)課可能會帶著同學(xué)做一個(gè),或者用 Logisim 這樣的仿真軟件去模擬實(shí)現(xiàn)一個(gè)。

在非計(jì)算機(jī)專業(yè)的同學(xué)眼里,就有點(diǎn)不敢想象了。

我就屬于第三種。

純手工做一個(gè) CPU 有很多好處,做完了以后確實(shí)對計(jì)算機(jī)組成的原理有了更為深入且直觀的理解,而且也能稍稍涉足到電子領(lǐng)域,產(chǎn)生興趣。

所以有那么幾個(gè)月的時(shí)間,我就真正去實(shí)踐了一下,做出來了一個(gè)能跑的玩具版的八位 CPU。

哦,這不是最終版的,熟悉我的讀者朋友知道,完整版的 CPU 已經(jīng)因?yàn)楫?dāng)時(shí)和女朋友吵架,被她怒掰成了兩半。

如果最終做出來,應(yīng)該是這個(gè)樣子。

感興趣的朋友,又不知道如何開始,可以走一遍我的老路,今天分享給大家。

當(dāng)時(shí)我完全不知道這玩意該咋弄,網(wǎng)上找了好久也沒找到個(gè)靠譜的能教我一步步做的,但后來居然發(fā)現(xiàn)了這個(gè)神奇的網(wǎng)站。

https://eater.net/

這網(wǎng)站真的是絕了,作者叫 Ben Eater,是個(gè)極客,里面放了很多教你如何做各種東西的視頻,而且是保姆級教學(xué)。

而被我發(fā)現(xiàn)了,置頂?shù)囊粋€(gè)教學(xué)就是 Build an 8-bit CPU from scratch,用面包板搭建一個(gè)八位的 CPU。

于是就照著這個(gè)視頻一步一步做了。

可以點(diǎn)開看一下。

看整體大綱,就是分模塊一個(gè)個(gè)做的,你說你要是花上一段時(shí)間都做一遍之后,怎么可能對計(jì)算機(jī)組成原理不了解呢?簡直如數(shù)家珍啊。

當(dāng)然我當(dāng)時(shí)遇到的第一個(gè)問題就是,買什么材料,這些在這個(gè)頁面也都包含了,就在前幾章里。

不過這都是美國的購買方式,當(dāng)時(shí)我也是花了好長時(shí)間,把它對應(yīng)成了在中國的電子元器件的名稱。

可以想象下當(dāng)時(shí)我的痛苦,在完全沒有任何電子知識的情況下,把英文的那些描述轉(zhuǎn)換成中國可以買到的電子器件,我感覺我都可以成為 Ben Eater 在中國的代言人了。

準(zhǔn)備好這些器材之后,就跟著視頻一步一步搭建就好了,我當(dāng)時(shí)是真的跟著視頻一步步搭建的,連人家的手法和姿勢都不敢不一樣,哈哈。

比如最先搭建的就是時(shí)鐘模塊,用的是 555 定時(shí)器。

比如由兩個(gè) 74LS173 和一個(gè) 74LS245 構(gòu)成一個(gè)寄存器以及連接到總線上的過程。

然后一根線一根線插,感覺我當(dāng)時(shí)的手都快變小了。

哦當(dāng)然,如果你對電子知識一竅不通零基礎(chǔ)的話,比如我,還得先從如何認(rèn)識色環(huán)電阻的阻值開始學(xué)起。

以及不同種類的電容長什么樣。

電解電容

獨(dú)石電容

等等。

總之吧,這個(gè)東西快不得,如果你能堅(jiān)持下來,最后全都搞起來,會變成這個(gè)樣子(理想情況)

正面圖看的話,是這個(gè)樣子。

我總共耗時(shí)了兩個(gè)月時(shí)間,不過是因?yàn)槲乙话愣际瞧綍r(shí)中午回家睡覺前,搞個(gè)半小時(shí)左右,所以每天也就搞半小時(shí)而已,周末多搞一點(diǎn),也就出來了。

把這個(gè)弄出來之后,好多原理真的是清晰了不少,包括以前知道的知識,在自己動手真正實(shí)現(xiàn)的時(shí)候,又有完全不同的理解,尤其是整個(gè)控制器電路的設(shè)計(jì)與實(shí)現(xiàn),真的是讓我大吃一驚。

如果你也想做一個(gè) CPU,不論是幫助自己理解 CPU 原理,還是純粹想玩一玩,或者想讓自己入門電子 DIY 這塊尋找一個(gè)有趣的突破口,都可以直接登陸這個(gè)網(wǎng)站跟著 Eater 大佬的保姆級教學(xué)一點(diǎn)點(diǎn)做。

不過這個(gè)是純英文的,而且沒有字幕,不過好在也有國人幫忙配上了字幕,并且放到了 B 站上。

https://space.bilibili.com/3065282/#/channel/detail

哦對了,說個(gè)小秘密,買這些導(dǎo)線的時(shí)候,別買那種固定規(guī)格的長度的導(dǎo)線,那樣很難調(diào)整長度,最終你做出的 CPU 就看著亂亂的。

買那種直接一卷的線,然后用剪線鉗剪出不同的長度,這個(gè)過程看似麻煩,但后期整個(gè)線排布得漂漂亮亮的時(shí)候,能節(jié)省不少時(shí)間。

是的,不要幻想著一遍成,有次我有個(gè)導(dǎo)線插錯(cuò)了一個(gè)洞洞,找了好幾個(gè)小時(shí)才找出問題...

最后,加油!歡迎大家入坑。

廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。

相關(guān)文章

關(guān)鍵詞:CPU

軟媒旗下網(wǎng)站: IT之家 最會買 - 返利返現(xiàn)優(yōu)惠券 iPhone之家 Win7之家 Win10之家 Win11之家

軟媒旗下軟件: 軟媒手機(jī)APP應(yīng)用 魔方 最會買 要知