兩年時(shí)間,一個(gè) 90 后體制內(nèi)小哥下班之后只干三件私務(wù),那就是:
手搓 CPU!手搓 CPU!還是 *** 手搓 CPU!
純手工制作、全自主研發(fā),于是一個(gè)名叫“初芯”的 CPU 終極形態(tài)終于誕生。
據(jù) UP 主估計(jì),整個(gè) CPU 共計(jì)兩萬多個(gè)器件、10 萬多個(gè)焊點(diǎn),全都是一個(gè)個(gè)手動(dòng)組裝上去的,網(wǎng)友給他“焊武帝”的稱號(hào)果然名副其實(shí)。
光是看這些密密麻麻的線和接口,就已經(jīng)頭大了有沒有!
視頻一出即登上熱門,網(wǎng)友們紛紛趕來,佩服他的勇氣和毅力。
他以前的粉絲也聞聲而來:神又發(fā)視頻了!他活了!
畢竟據(jù)他上一次更新視頻,已經(jīng)過了 20 個(gè)月之久了。
而這個(gè)小哥也不陌生,他名叫林乃衛(wèi),相信很多讀者之前也看過量子位寫的《B站焊武帝爆火出圈:純手工拼晶體管自制 CPU,耗時(shí)半年,可跑程序》。
時(shí)隔一年半,如今千呼萬喚始出來,就來康康這爆肝兩年的自研 CPU 終極形態(tài)到底是什么?
“底層邏輯、架構(gòu)、指令集均是自主研發(fā)”
話不多說,直接先來看手搓出來的“CPU 終極形態(tài)”的參數(shù)如何:
頻率:13kHz,超頻最大 33kHz;
ROM:64kB,支持熱更新,16 位 ROM 尋址、16 位靜態(tài)數(shù)據(jù)尋址;
內(nèi)存:系統(tǒng)內(nèi)存 256B、應(yīng)用內(nèi)存 64kB;
IO 口數(shù)量:78bit;
103 條指令,功耗 10 瓦。
做成這樣,成本統(tǒng)共算下來只有 2000 元左右,若是再刨去電烙鐵、示波器這類工具,花在基礎(chǔ)器件上的錢還不到 1000 塊。
整體性能方面,小哥表示它和 70 年代初期的 CPU 差不多,并且在指令上還要優(yōu)于當(dāng)時(shí)的 CPU。
形象點(diǎn)來說,目前它可以簡單刷個(gè)屏幕,顯示文字、圖像,甚至一些小游戲也能跑起來。
其實(shí)在去年 7 月份,小哥就已經(jīng)在B站更新過一個(gè)“純手工自制 CPU”的視頻,搭建的是 CPU 雛形,耗時(shí) 6 個(gè)月。
不過當(dāng)時(shí)的 CPU 還僅處于能跑起來的階段,要運(yùn)行更復(fù)雜的程序還比較困難。
于是小哥就開始了他的手搓“進(jìn)階版 CPU”歷程,在剛制作好的 CPU 雛形上進(jìn)行調(diào)試維修,這一步他的計(jì)劃是:
把指令增加到 100 多條;
增加了堆棧、 IO 口,運(yùn)算器的這些比較復(fù)雜一點(diǎn)的部件,還有內(nèi)存管理;
可以滿足一些復(fù)雜的運(yùn)算;
……
這一把調(diào)試維修,直接就整了小哥一年半的時(shí)間。
為了有效提高 CPU 的性能,期間小哥下了“血本”購入了示波器這類專業(yè)器材,用來檢測(cè)整個(gè) CPU 每一個(gè)節(jié)點(diǎn)的信號(hào)。
然后小哥以最簡易的方式去拆除了一些器件,直接把 CPU 的頻率從 1kHz 提升到 33kHz,性能翻了 33 倍。
話說回來,徒手搓出 CPU,小哥可是完全是依靠自己本科就已經(jīng)掌握的電子領(lǐng)域、IT 領(lǐng)域的知識(shí),實(shí)打?qū)嶉_發(fā)出來的。
從前期的電路仿真、PCB 設(shè)計(jì)到中后期的焊接、調(diào)試以及軟件編程…… 小哥一個(gè)人獨(dú)攬一條“CPU 生產(chǎn)線”。
不過這對(duì)“愛好技術(shù)類手工制作”的小哥來說可就不一樣了。
獨(dú)創(chuàng)技術(shù)了解一下~
看過視頻的盆友或許都知道,小哥在視頻中特別提到了自己的獨(dú)創(chuàng)雙通道內(nèi)存。
現(xiàn)有的雙通道內(nèi)存技術(shù)雖然也是使用了兩個(gè)內(nèi)存控制器,但并沒有將全局變量和局部變量分隔開來,它們依舊在混在一個(gè)內(nèi)存中,這樣要訪問內(nèi)存就只能一次性全部訪問。
而小哥的“獨(dú)創(chuàng)技術(shù)”就不一樣了,直接把全局變量和局部變量物理上分割開來,放在不同的內(nèi)存控制器上。
這樣一來,全局變量可以直接用作系統(tǒng)內(nèi)存,局部變量直接用作應(yīng)用內(nèi)存(64kB)。
如果要跑個(gè)大一點(diǎn)兒的游戲,直接訪問局部變量所在的應(yīng)用內(nèi)存,一條指令就能訪問到 64kB 的內(nèi)存。
曾花兩個(gè)月伙食費(fèi)買設(shè)備
光看 CPU 這個(gè)體量,就知道是個(gè)不小的工程,可能即便專業(yè)人士也很難有這樣的能力和心力從頭做起。
不少網(wǎng)友紛紛表示佩服 UP 主的勇氣和毅力。但也有冷靜的網(wǎng)友質(zhì)疑:為何要做這個(gè)呢?
正如這個(gè)高贊評(píng)論所言,實(shí)現(xiàn)方式與實(shí)際 CPU 還是有很大差距,恐怕很難談得上對(duì)現(xiàn)有架構(gòu)有太大貢獻(xiàn)。
在與量子位的交流中,Up 主跟我們坦言:做這個(gè)東西完全就是為了不留遺憾。
視頻也介紹,他是在 2016 年萌生出開發(fā) CPU 的想法。
當(dāng)時(shí)電子工程專業(yè)的他正在讀大三,日常喜歡寫寫單片機(jī)來玩,時(shí)不時(shí)就在思考:“為何一串 0101 的數(shù)字能變成程序?”再結(jié)合已有的數(shù)電知識(shí),對(duì) CPU 的底層運(yùn)行機(jī)制有了了解,自制 8 位 CPU 的想法也就油然而生。
不過他也有個(gè)私心:成功的話也比較好找工作。
很快,他就完成了電路設(shè)計(jì)仿真、PCB 設(shè)計(jì)以及打印電路板等工序。光買一堆器件和設(shè)備就花了兩個(gè)月的伙食費(fèi)。
一切準(zhǔn)備就緒時(shí),就到大四畢業(yè)設(shè)計(jì)時(shí)候了,他也就只能將 CPU 的項(xiàng)目擱置。
結(jié)果這一放就是五年,此時(shí)他回到了北海,工作內(nèi)容基本上與本科專業(yè)沒有太大關(guān)系,趁著業(yè)余時(shí)間又重新拾起當(dāng)年的興趣。
他向我們坦言:
這個(gè)想法如果一直沒有實(shí)現(xiàn),就像手里面扎了一顆小刺,沒拔出來就會(huì)一直隱隱作痛。
回頭再去看當(dāng)年大學(xué)時(shí)候的設(shè)計(jì),他表示有的設(shè)計(jì)顯得十分“愚蠢”。比如像程序計(jì)數(shù)器設(shè)計(jì)得復(fù)雜,浪費(fèi)器件的同時(shí)還限制了 CPU 的運(yùn)行速度。
于是不得不如前所述,從最底層的分立元件開始打造。要知道這種方式速度很慢,穩(wěn)定性也很差,還會(huì)經(jīng)常出問題。
但 UP 主表示正是這種從底層出發(fā)的過程,就會(huì)有更多時(shí)間去思考和解決那些問題,也會(huì)迸發(fā)出創(chuàng)新性的靈感出來。
比如,這不就是芯片發(fā)展的一個(gè)縮影嘛!
有心的讀者或許在視頻結(jié)尾注意到,他有一個(gè)「創(chuàng)作中的小發(fā)現(xiàn)」還不便展示。
量子位幫大家刺探到了一些消息,這個(gè)小發(fā)現(xiàn)是關(guān)于儲(chǔ)存邏輯電路方面的,小哥表示:
由更少的器件組成,性能更高,響應(yīng)速度更快,并且具有替代現(xiàn)有儲(chǔ)存邏輯單元的潛力。
最后,小哥還略微向我們透露了些他未來的計(jì)劃:
這次手搓 CPU,是為了進(jìn)行一場(chǎng)自主研發(fā)可商用 CPU 的可行性論證,為下一步研發(fā)商用 cpu 提供理論和實(shí)踐支持。
參考鏈接:
鄭重聲明:此文內(nèi)容為本網(wǎng)站轉(zhuǎn)載企業(yè)宣傳資訊,目的在于傳播更多信息,與本站立場(chǎng)無關(guān)。僅供讀者參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。