「B站焊武帝」再出圈!孤身爆肝造CPU,軟硬件全自研,可玩游戲
楊凈 Pine 發(fā)自 凹非寺量子位 | 公眾號(hào) QbitAI
兩年時(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(48支持位操作);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è)器材,用來檢測整個(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)線”。
(聽起來就很頭疼對吧)不過這對“愛好技術(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)存(256B),局部變量直接用作應(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è)高贊評論所言,實(shí)現(xiàn)方式與實(shí)際CPU還是有很大差距,恐怕很難談得上對現(xiàn)有架構(gòu)有太大貢獻(xiàn)。

在與量子位的交流中,Up主跟我們坦言:做這個(gè)東西完全就是為了不留遺憾。
視頻也介紹,他是在2016年萌生出開發(fā)CPU的想法。
當(dāng)時(shí)電子工程專業(yè)的他正在讀大三,日常喜歡寫寫單片機(jī)來玩,時(shí)不時(shí)就在思考:“為何一串0101的數(shù)字能變成程序?”再結(jié)合已有的數(shù)電知識(shí),對CPU的底層運(yùn)行機(jī)制有了了解,自制8位CPU的想法也就油然而生。
不過他也有個(gè)私心:成功的話也比較好找工作。(很真實(shí)了)
很快,他就完成了電路設(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è)縮影嘛?。―oge)

(咳咳正經(jīng)一點(diǎn)) 有心的讀者或許在視頻結(jié)尾注意到,他有一個(gè)「創(chuàng)作中的小發(fā)現(xiàn)」還不便展示。

量子位幫大家刺探到了一些消息,這個(gè)小發(fā)現(xiàn)是關(guān)于儲(chǔ)存邏輯電路方面的,小哥表示:
由更少的器件組成,性能更高,響應(yīng)速度更快,并且具有替代現(xiàn)有儲(chǔ)存邏輯單元的潛力。
最后,小哥還略微向我們透露了些他未來的計(jì)劃:
這次手搓CPU,是為了進(jìn)行一場自主研發(fā)可商用CPU的可行性論證,為下一步研發(fā)商用cpu提供理論和實(shí)踐支持。
(可以期待一波了~~~)
參考鏈接:[1]https://space.bilibili.com/28026515[2]https://www.bilibili.com/read/cv12035591?spm_id_from=333.999.0.0
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由財(cái)神資訊-領(lǐng)先的體育資訊互動(dòng)媒體轉(zhuǎn)載發(fā)布,如需刪除請聯(lián)系。