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