真·手搓CPU!舊芯片打造完整CPU:純手工焊接+1800行彙編代碼

來源——硬件世界

一位愛好者使用了老式內存芯片和8-bit時代的邏輯元件,打造出了一整個處理器,不是開發板,不是微控制器,而是一個功能完全的、能夠執行指令、進行內存尋址的CPU。

這位名叫Majsterkowanie i nie tylko(簡稱MINT)的極客愛好者,歷時三個月完成了這個名爲EPROMINT的項目。

MINT從一個簡單的實驗開始,利用過時的EPROM內存芯片控制小型外部系統,例如PWM調光器或消息顯示器。

他發現,如果內存可以模擬基本邏輯,那麼構建一個完整處理器的思路或許並非遙不可及,於是,他一頭扎進了電路圖和經典8-bit CPU(如Z80)的架構研究中。

最終,他成功打造了一臺功能齊全的CPU,看起來不時尚或不精緻,但它根據真實的指令集運行,執行自己的彙編代碼,並像商業處理器一樣響應硬件中斷。

項目從最基本的算術邏輯單元(ALU)開始,最初的原型因不可靠而被廢棄,後續的版本則便於調試。

隨後,他又增加了內存接口、地址總線控制器(由第二個ALU驅動)以及控制邏輯,後者負責解碼操作碼並協調整個數據流。

軟件部分同樣是從零開始編寫的,近2000行代碼定義了處理器如何處理指令、優化數據流動,並創建了測試程序。

這些代碼是基於早期電路板的定製開發工具編寫的,其指令集甚至超越了老式CPU所能做到的,包括乘法、除法、三角函數計算甚至位序列處理等操作。

當所有模塊連接完成後,CPU首次通電,電流爲250毫安,經過測試,它不僅能運行閃爍的LED程序,還能在檢測到中斷時點亮第二個LED,能夠像真實處理器一樣處理外部事件。

最終,這臺CPU由四塊全尺寸的穿孔板組成,重達500多克,如果將所有電線拉直,總長度超過1公里,所有邏輯運算都通過預編程的內存實現,數據路由和指令解碼等功能均依賴於此。

與現代芯片不同,這臺CPU的執行路徑完全暴露,每個時鐘週期、每個操作碼以及所有寄存器的變化都清晰可見。

爲了展示這臺CPU的功能,MINT將其連接到一臺VFD顯示屏上,並編寫代碼播放《黑客帝國》的片段。

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com