Rekursiv:一台 1988 年的蘇格蘭電腦如何預見現代記憶體安全、垃圾回收、持久化與領域特定矽晶片

Rekursiv:一台 1988 年的蘇格蘭電腦如何預見現代記憶體安全、垃圾回收、持久化與領域特定矽晶片

Rekursiv 的核心概念是對的,只是時機不對

1988 年的 Rekursiv,是由蘇格蘭高階音響公司 Linn 所打造的客製化矽晶盒,實作了硬體強制的記憶體安全、具垃圾回收功能的持久化物件,以及領域特定指令集——這些特性直到 2020 年代才成為主流。這段歷史之所以重要,是因為它顯示了技術信念可以超越最初讓它們失敗的經濟環境。


高階音響公司打造電腦

Linn Products 以 Sondek LP12 轉盤聞名,1980 年代初期在 VAX‑11 主機上營運工廠。創辦人 Ivor Tiefenbrun 不喜歡 VAX 的軟體堆疊,想要讓工廠裡的每一個實體物件都有一個陰影軟體物件,記錄其完整歷史。為此,Linn 聘請了程式設計師以及格拉斯哥大學講師 David Harland,開發一種名為 LINGO 的物件導向語言(類似 Smalltalk、語法類似 Algol)。

LINGO 在 VAX 上執行太慢,團隊認為瓶頸在硬體。一次在延誤的火車上,Harland 與工程師 Bruno Beloff 畫出了可以直接在矽晶片上實作該語言的自訂晶片架構。此計畫後來命名為 Rekursiv,於 1984 年由 Linn、價值 1,000 萬英鎊的貿易與工業部補助金以及 LSI Logic 製造,使用四顆 1.5 µm CMOS 閘陣列:NUMERIK、LOGIK、OBJEKTKLOK


物件到底層

Rekursiv 消除了可見位址。每個物件都會得到一個 40 位元的識別碼;OBJEKT 晶片透過雜湊頁表將識別碼映射到實體位置,並在每次存取時檢查型別與界限。這種硬體強制的能力模型防止了越界讀取、偽造參照,且允許物件在不更新指標的情況下移動。

因為只有 OBJEKT 知道物件的所在位置,晶片得以執行 硬體垃圾回收:兩空間緊縮收集器在 DRAM 兩半之間滑動活躍物件,同時 CPU 繼續執行。記憶體與磁碟形成 單一持久化物件儲存;若物件不在 DRAM,處理器會在指令執行中途暫停,等待外部磁碟控制器取回資料,然後透明地繼續執行。

指令集並非固定不變,而是以微碼形式載入。Linn 提供了 C 微碼,James Lothian 撰寫了 Prolog 微碼,其他團隊則移植了 Scheme 與 PS‑Algol。因而 Rekursiv 能以遠高於當時 Lisp 工作站的速度執行高階語言原語(例如 2 µs 完成一個 CONS 單元、單指令完成 Prolog 統一),雖然這些效能說法僅來自 Linn 自己的模擬,未曾獨立驗證。


為何 Rekursiv 失敗了

Rekursiv 正好在產業從 複雜指令集電腦 (CISC)精簡指令集電腦 (RISC) 轉變之際問世。開創性的 RISC 論文(Patterson & Ditzel, 1980)主張大多數程式只使用少數複雜指令,而簡單指令結合快取與優秀編譯器即可提供更高效能。到 1988 年,商品化微處理器(SPARC、386、486)已超越 Rekursiv 四年設計週期的速度。

摩爾定律仍然強勁,從 1986‑2003 年間每年約提升 52% 的效能——此時期被稱為 致命微處理器的攻擊。Rekursiv 的客製化矽晶片無法與快速進步的現成 CPU 競爭,最終只製造了約 20‑30 塊電路板,主要供大學使用。一台執行多執行緒 LINGO 的 Sun‑3 大約是它原本想要超越的 Rekursiv 速度的兩倍。

最後的致命打擊來自個人糾紛:一輛送貨貨車撞上 Harland 的保時捷,Linn 拒絕支付修理費,Harland 辭職,並將剩餘的硬體與備份媒體倒入 Forth and Clyde Canal。其中一塊電路板倖存下來,現在展示於約克附近的 Jim Austin Computer Collection。


四項設計決策成為主流

Rekursiv 設計決策 現代實現
硬體記憶體安全 – OBJEKT 在每次存取時強制型別與界限。 CHERI 能力架構(Cambridge/SRI)與 ARM Morello 原型(2022)以及 Android 手機的 Memory Tagging Extension
矽晶片內的垃圾回收 – 兩空間緊縮收集器與執行同步運作。 Azul Vega 處理器提供硬體讀屏障支援無暫停的 Java GC;此演算法現在在商品化 x86 上以軟體實作。
單層持久化儲存 – 記憶體與磁碟合為一個物件儲存。 IBM i(System/38 系列)維持單層儲存;Intel 的 Optane 嘗試類似模型,CXL 記憶體纖維則在追求持久記憶體。
領域特定矽晶片 – 為特定物件導向工作負載打造客製化閘門。 現代 TPU、Groq、Cerebras、Etched 等 transformer ASIC——皆為加速特定工作負載(線性代數、串流或 transformer 模型)而設計。

這四項概念要麼已在量產矽晶片中出貨,要麼正大規模部署,或是指引當前研究方向。Rekursiv 只是 提早了四年


給當今硬體領域的教訓

  1. 技術正確性不足以成功——市場時機與經濟條件足以讓即使是遠見設計也失敗。
  2. 矽上層的抽象能存活——IBM 的 TIMI 虛擬 ISA 讓 System/38 的語意超越原始閘陣列,證明將想法放在可移植抽象層上可延長其壽命。
  3. 領域特定架構已成主流——隨著 Dennard scaling 終結,產業已接受工作負載特定矽晶片,正是 Rekursiv 所預見的路徑。
  4. 硬體記憶體安全終於可行——能力機器與記憶體標記擴充證明 Rekursiv 的安全模型實用且有價值。

社群見解

"事情是,能力機器(像這個、432 以及許多研究機器)在當時非常前衛——甚至是最尖端。研究文獻充斥著它們。把它們全部塞進一顆腳位不多的晶片是問題,接著是『在腳位較多的晶片上與快取一起放什麼』…" – Taniwha(Hacker News 評論)

"如果一小群聰明的人不受傳統觀念束縛,他們能達成的事真是驚人。他們被商品化曲線與摩爾定律壓垮… AI 終結了程式設計師的稀缺,使得專用硬體比以往更具可行性。" – JSR_FDED


Rekursiv 與 AI 驅動語言的相關性

本文指出,今天的 AI 生成或模型中心語言(例如 Vera、agentlanguages.dev)正重新塑造自身以配合硬體,就像 Rekursiv 為其物件導向語言改變硬體一樣。循環已完成:基底(矽晶片)現在適應作者(LLM),而非相反。


結論

Rekursiv 是一項大膽的實驗,預見了四大趨勢:硬體強制的記憶體安全、內建垃圾回收、統一的持久化物件儲存,以及領域特定矽晶片。雖然它沉入蘇格蘭運河,但其理念已在 CHERI、ARM Morello、持久記憶體系統與 AI 專用 ASIC 等現代架構中重現。此故事說明 技術遠見能跨越數十年的經濟變遷,而摩爾定律的終結使得重新審視此類逆向硬體設計既可行又有利可圖。

Sources