tft每日頭條

 > 科技

 > 計算機微處理器曆史

計算機微處理器曆史

科技 更新时间:2025-01-25 05:33:23

來源:technews(台) 作者:癡漢水球

俗語說的好,有人的地方就有「江湖」和「政治」。同理可證,有産品的公司就有「腰斬」、「中止」和「任其自生自滅」,處理器業界亦不可免俗,計算機工業的曆史洪流充滿無數無緣與世人見面的夢幻逸品,與漸漸被後人遺忘卻開辟嶄新時代的曠世巨作。

不學無術的筆者,再次野人獻曝,簡述知名的夢幻處理器,這深入迷霧的探險過程,不僅讓各位一窺廬山真面目,更是一段橫跨超過半個多世紀光陰的宏大叙事曲與記錄計算機工業演進的顯微膠卷片。

1960 年代:計算機結構、商業大型主機與超級電腦的誕生

要挑選出一家最能代表計算機工業的商業公司,隻要對曆史脈絡不會太不熟,多半還是會想到那大大的「三個大寫英文字母」。不過這家公司也并非在所有領域「叫我第一名」,更多是「後發先至」,因一度領先的競争者都紛紛成為曆史遺迹,所謂「英雄就是比氣長」大概就是這回事。

第二代(晶體管)與第三代(集成電路)電腦交錯期的1960 年代,可謂計算機工業的曙光期,奠定今日我們對「電腦」的基礎認知,包含提升執行效率的指令流水線處理(IBM 7030 ″Stretch″)、讓更換電腦也不必替換軟件的指令集回溯兼容性(IBM System/360 家族)、高可靠性的商業導向大型主機(IBM System/360 家族)、以浮點運算為主的高性能運算超級電腦(CDC6600)、處理器必備武裝Cache 存儲器(IBM System/360 Model 85)與構成今日高性能處理器微架構的動态指令排程與亂序指令執行(IBM System/360 Model 91),都是這時期的産物,距今超過60 年。

計算機微處理器曆史(回顧曆史夢幻處理器)1

▲ 漫長的計算機工業曆史,第三代電腦(集成電路)先驅的IBM System/360 可謂最重要的主角,沒有之一,奠定今日對電腦的基本認知,相同指令集架構的電腦可彼此軟件兼容、微碼(Microcode)控制單元、軟盤機(存放微碼)、虛拟化、Cache 存儲器、「1Byte(位元組)=8Bits(位元)」的工業标準、虛拟存儲、亂序指令執行,堪稱近代電腦技術發展的縮影。

「兼容性」并非理所當然的天賦人權

不過開始過目「受害者清單」前,得先稍微了解當時市場競争态勢與産品技術概況。

1961 年IBM 可謂統治電腦市場,北美擁有超過三分之二市占率。當年問世的IBM 7030 ″Stretch″,是史上第一台通用的指令流水線化(Pipeline)電腦與IBM 首款「晶體管化(第二代電腦)超級電腦」,利用四級流水線,互相重疊指令撷取、解碼和執行得到1.6 倍效能,目标比前代IBM 704 快100 倍,也是昵稱「Stretch」(延伸)的由來。

計算機微處理器曆史(回顧曆史夢幻處理器)2

▲ 由Gene Amdahl 操刀的IBM 7030 ″Stretch″(1961 年)是計算機工業史第一台導入指令流水線的電腦。

在那個時代,不同電腦都有自己的獨特指令集、專用操作系統與外圍設備,意味購入或升級新電腦,就需要整個「砍掉重練」,連程序都要重新編寫,極度不便,也嚴重妨礙電腦普及。

有鑒于此,一年營收25 億美元(約今日230 億美元)的IBM,1961 年12 月啟動人類史上規模最大的商用産品開發計劃(号稱僅次登月計劃和航天飛機),耗資50 億美元(約今日的460 億美元)、雇用6 萬多名新員工、新建5 座工廠,曆經4 年,1964 年4月7 日推出六種規格的System/360商用大型主機(Mainframe)和超過40 種擴充外圍,開啟第三代(集成電路)電腦序幕,價格從最低13 萬美元一路延伸到最頂規550 萬美元,客戶可照需要選購不同機種和配件,或更省力全部用「租」的(這是大型主機常見的商用業模式)。

計算機微處理器曆史(回顧曆史夢幻處理器)3

▲ 直到IBM System/360 于1964 年出現後,世人才知道「原來升級電腦後,我還可以繼續用現有應用軟件與外圍硬件」,這對電腦普及是最重要的一步。

最終到1971 年,包含NASA(美國太空總署)特化機型(曾在登月計劃扮演重要角色),總計出現14 個System/360 型号,統一執行相同OS/360 操作系統,共用一緻系統外圍設備,徹底改變人類對電腦的理解,「兼容性」從此成為計算機工業的「基本價值觀」,催生「計算機架構」(Computer Architecture)這象征「指令集向前兼容」的曆史性名詞,也讓開發軟件和研發外圍,成為具高度獲利價值的産業。對客戶來說,可視眼前需求選購合用機型,日後升級亦可沿用現有軟件與外圍,這也是今日司空見慣的常識,但在那遙遠的年代,卻不是理所當然的「天賦人權」。

值得注意的是,即使System/360 奠基于微碼(Microcode)之上的CISC(複雜指令集電腦),但相較後進「同侪」,如DEC VAX 和英特爾x86 / iAPX432,指令編碼格式和與定址模式(Addressing Mode)的對應關系,還是較簡潔有條理,也讓人不得不納悶這票「後輩」到底在想什麼,尤其是英特爾。就筆者印象所及,CISC 指令集唯一能與System/360 媲美者,好像也就隻有Motorola 68000 了。

計算機微處理器曆史(回顧曆史夢幻處理器)4

▲ 相對「毫無道理可循」的英特爾80x86(指令長度介于1~17Bytes)、亂成一團的DEC VAX(指令長度介于1~54Bytes)和史上最恐怖的英特爾iAPX432(指令長度介于6~321″Bits″,你絕對沒看錯),更古老的IBM System / 360 指令編碼格式卻異常簡潔優美,也一路發展到現在64 位元System z 大型主機。

開創計算機結構的System/360,發表後第一個月就賣出超過一千台,之後半個世紀,以System/360 為首的IBM 大型主機産品線,貢獻藍色巨人超過一半利潤。最新成員System z 更位居服務器世界頂峰,成為無數金融業核心帳務不可或缺的最可靠心髒。

System/360 主架構師Gene Amdahl(也曾負責IBM 7030)以「Amdahl′s Law」(針對電腦系統某特定元件最佳化,觀察能改變多少整體系統效能)聞名于世。當時專案經理Frederick Brooks 事後根據System/360 軟件開發經驗,寫成《人月神話:軟件專案管理之道》(The Mythical Man-Month: Essays on Software Engineering),記述人類工程史上裡程碑式大型複雜軟件系統。美國企管學家Jim Collins 在《從A 到A 》(Good to Great)将IBM System/360 與福特T 型車、波音第一款噴氣機波音707 齊名,列為史上最重要的三項企業成就。

源自二戰美國海軍密碼破解團隊的CDC 與定義「成功的超級電腦」的CDC6600

稱之為「人類曆史上最偉大電腦」大概不會有太多人敢反對的System/360,既然如此成功,為何會冒出被腰斬的全新産品?就隻因一家1957 年草創時隻有30 幾個人的小公司CDC(Control Data Corporation)。但這些人來頭可不小,神秘且顯赫,都是來自二次世界大戰期間,美國海軍破解德國和日本密碼的極機密工程團隊,成員含首席架構師、大名鼎鼎的超級電腦大師Seymour Cray。

和System/360同年的9 月,有每秒300 萬次浮點運算、足足是IBM 7030 三倍的CDC6600,1969年前都占據最快電腦寶座,銷售總數超過100 台,定義了日後人類對「高性能運算」(HPC,High Performance Computing)和「超級電腦」(Super Computer)的觀感。少少34 名員工(隻有14 名工程師和4 名程序設計師,剩下就是行政打雜看門之類)就能打造出這麼高性能的産品,對IBM 高層更是極大的刺激。

計算機微處理器曆史(回顧曆史夢幻處理器)5

▲ 由超級電腦大師Seymour Cray 主導設計的CDC6600(1964 年),可謂世界第一台「成功的超級電腦」,也讓HPC 從此與高性能浮點運算劃上等号。

CDC6600 之所以如此誇張,不外乎大量采用「超越時代」手段:近似超标量(Superscalar)的多派發指令執行單元,貌似亂序指令執行(Out-Of-Order Execution,OOOE)的記分闆(Scoreboard)動态指令排程,神似多線程(Multithreading)的共用外圍處理器(Peripheral Processor),RISC(精簡指令集電腦)存儲器載入/回存(Load / Store)架構、僅有兩種運算元定址模式與區區74 個指令,以上種種都使CDC6600 成為RISC 與衆多先進處理器高性能技術的起源。

假如要筆者用最短文字描述「大型主機」(Mainframe)和「超級電腦」的差異,唯一可想到的是「前者必須永不停機跑COBOL,後者則要吃奶加速沖FORTRAN」。相信内行人馬上就了解筆者想表達的意思。

計算機微處理器曆史(回顧曆史夢幻處理器)6

▲ 透過多達10個指令執行單元、「多線程共享」的外挂輔助處理器(Peripheral Processor)以及在指令執行的過程中可追蹤指令間相依性的記分闆(Scoreboard)以變相達成某種程度的亂序指令執行,CDC6600 實現前所未見的超高性能,并重打擊IBM 高層的信心。

前面提到IBM System/360 以「兼容性」著稱,那CDC6600 後面又如何?後繼機型CDC7600(原CDC6800)為了避免「犧牲性能」,就僅維持「高級程序語言原代碼的可攜性」(意思就是重新編譯代碼),且連操作系統也不同。以今日觀點看,為追求性能放棄兼容性看似舍本逐末,但在那個時代卻習以為常。

功敗垂成的IBM ACS

計算機微處理器曆史(回顧曆史夢幻處理器)7

IBM 原先1961 年啟動實驗性專案「Project-Y」,目标達IBM 7030 百倍效能,1965 年轉為加州ACS-1(Advanced Computer Systems-1)計劃,動員超過200 名工程師。但IBM 在1968 年5 月卻要求ACS 須兼容System/360,并改名為ACS-360。很明顯的,要「兼容CISC 的System/360」并「性能超越『類』RISC 的CDC6600」完全相互矛盾。因此掙紮了一年,IBM 還是在1969 年5 月黯然中止ACS-360,也失去大量研發人員。

但塞翁失馬焉知非福,IBM ACS 并非一無所獲,不但得到比CDC6600 更多「前RISC」相關技術與諸多創新,更在編譯器領域有突破,特别是IBM 首位女性院士、也是第一位得到計算機工業最高榮譽「圖靈獎」(Turing Award)的女性Frances Allen,就是ACS 團隊的一員,并在IBM 任職長達45 年之久。

劃時代的電腦:IBM System/360 Model 91

計算機微處理器曆史(回顧曆史夢幻處理器)8

但這筆者不得不提及劃時代的電腦:IBM System/360 Model 91。

計算機微處理器曆史(回顧曆史夢幻處理器)9

▲ 近代高性能處理器微架構必備的亂序指令執行,核心技術「暫存器重新命名」(Register Renaming)背後的靈魂「Tomasulo 演算法」,就是由IBM System/360 Model 91 為起點。上圖攝于美國太空總署戈達德太空飛行中心(NASA Goddard Space Flight Center)。

原名Model 92 的Model 91,原先寄望性能可抗衡CDC6600,并有System/360 的指令兼容性。System/360 引入很多嶄新觀念,包含暫存器重新命名(Register Renaming)的Tomasulo 演算法、動态偵測存儲器危障(Memory Hazard)、廣義的運算元前饋(Operand Forwarding)機制,講白話點就是「各位今天眼前看到所有亂序執行就是這樣誕生的」,System/360 Model 91 更是第一台使用多通道存儲器(Multi-Channel Memory)技術的電腦。

開創大量先進技術的System/360 Model 91,也成為當時最強的整數運算王者,每秒最多可執行1,660萬個指令(16.6MIPS),假若不管指令集架構的差異和每個指令的平均工作量,這相當于「1991 年」時鐘頻率20MHz 的英特爾80486SX 或40MHz 的AMD 80386DX。

不幸的是,設計高複雜度使其較晚上市,且隻賣了少少幾台(生産總數,據信不超過20 台),市場并不成功,導緻第一台有Cache 存儲器的Model 85 還賣比較好。至于鄉野流傳IBM 發揮「簡報王」本色,藉由耳語相傳不存在的System/360 Model 92「暗示」潛在客戶不要急着買CDC6600,乖乖等IBM 新産品的稗官野史,就不在本文讨論範圍了。

無論System/360或CDC6600,關鍵技術和諸多想法都逐漸消失的25 年後,1990 年代再度複活──但僅限西方世界,下一篇文章的結尾會提及冷戰時期的蘇聯。

行文至此,是否各位有股「啊,原來一切的一切,早在半個多世紀前就結束了」之慨?

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved