微處理器
微處理器(英語:Microprocessor,縮寫:µP或uP)通常指稱一種可程式化特殊積體電路,其所有元件小型化至一塊或數塊積體電路內。微處理器可在其一端或多端接受編碼指令,執行此指令並輸出描述其狀態的訊號。這些指令能在內部輸入、集中或存放。
研發日期 | 1960年代後期或1970年代前期 |
---|---|
連接至 | 印刷電路板通過:
|
架構 | PowerPC x86 x86-64 其他(詳見下文) |
常見製造商 | AMD IBM Intel |
微處理器的元件常安裝在一個單片上或在同一組件內,但有時分布在一些不同晶片上。在具有固定指令集的微型電腦中,微處理器由算術邏輯單元和控制邏輯單元組成;在具有微程式控制的指令集的微型電腦中,它包含另外的控制儲存單元[1]。
用作處理通用資料時,叫作中央處理器(Central Processing Unit),這也是最為人所知的應用,如:AMD Ryzen CPU;專用於圖像資料處理的,叫作圖形處理器(Graphics Processing Unit),如Nvidia GeForce 30X0 GPU;用於音訊資料處理的,叫作音訊處理單元(Audio Processing Unit),如Creative emu10k1 APU等等。從物理角度來說,它就是一塊整合了數量龐大的微型電晶體與其他電子元件的半導體積體電路晶片。
之所以會被稱為微處理器,不僅是因為它比迷你電腦所用的處理器還要小而已。最主要的區別,是因為當初各大晶片廠之製程,已經進入了1 微米尺度的階段。在微米尺度下所產製出來的處理器晶片,廠商就會在產品名稱上用「微」字,以彰顯自身的技術。與現在的許多商業廣告中,「奈米」字眼時常出現一樣。
早在微處理器問世之前,電子計算機的中央處理單元就經歷了從真空管到電晶體以及再後來的離散式TTL積體電路等幾個重要階段。甚至在電子計算機以前,還出現過以齒輪、輪軸和槓桿為基礎的機械結構電腦。微處理器的發明使得複雜的電路群得以製成單一的電子元件。
從1970年代早期開始,微處理器效能的提升就基本上遵循著IT界著名的摩爾定律。這意味著在過去的30多年裡每18個月,CPU的計算能力就會翻倍。大到巨型機,小到筆記型電腦,持續高速發展的微處理器取代了諸多其他計算形式而成為各個類別各個領域所有電腦系統的計算動力之源。
歷史
編輯最早的晶片
編輯正如近現代其他科技的發展一樣,微處理器時代仿佛一夜之間就到來了。三個公司,三個計劃,幾乎不約而同地成為微處理器產業的先鋒。它們就是英特爾的Intel 4004,德州儀器公司的TMS 1000和Garrett AiResearch工業部的CADC(Central Air Data Computer)for F14 MP944。
1968年Garrett AiResearch被邀請參加研製一種數字電腦,以同正在開發中的用於美國海軍F-14雄貓戰鬥機的主飛行控制電腦的電機系統競爭。這個以基於MOS(金屬氧化物半導體)技術的晶片組為核心的CPU於1970年設計完成,並以更小的體積和更高的可靠性打敗了基於電機系統的設計,被運用於早期的所有雄貓戰鬥機。但今天看來,知道CADC和MP944晶片組的人並不多,主要原因在於美國海軍認為這種技術太過先進而不允許將其設計細節公開,這種情況一直持續到1997年。
德州儀器公司開發出以預編程嵌入式應用(pre-programmed embedded applications)為主打技術的4位元微處理器TMS 1000,並於1971年9月17日推出代號為TMS1802NC的市場版本,用於生產單晶片計算機。英特爾的4004計劃則由弗得里克·法金(Federico Faggin)主持開發,並於1971年11月15日發布。
德州儀器為微處理器申請了專利。1973年9月4日Gary Boone獲得了單片微處理器的美國專利,專利號是3757306。但是我們可能無法確定究竟哪家公司第一個在實驗室做出了微處理器。1971年和1976年英特爾和德州儀器兩次達成專利互許可協定,根據協定,英特爾向德州儀器付微處理器專利的使用費。Cyrix曾經同英特爾為微處理器專利對簿公堂,關於此事的法律檔案可以參見。[1]
有趣的是,有第三方人士聲稱擁有可以涵蓋「微處理器」的專利。具體請參見這個網站 (頁面存檔備份,存於網際網路檔案館),根據這裡的描述,有人早於德州儀器和英特爾就發明了「微控制器」,這算不算「微處理器」尚有爭議。
所謂的單晶片是微處理機的一種變體,它包括了CPU,一些主記憶體以及I/O介面,所有都整合在一塊積體電路上。單晶片的專利號為4074351,授予了德州儀器的Gary Boone和Michael J. Cochran。當時他們是以微電腦的名稱申請專利的。
根據麻省理工出版的《現代計算史》第200頁到221頁,英特爾同聖安東尼奧的一家叫做電腦終端的公司(後改名為數點公司)簽署了一份合同,合作設計一塊用於終端的晶片。數點後來決定不用這塊晶片了,而採用TTL邏輯電路設計跑相同的指令集,英特爾隨即將該晶片其命名為8008,並於1972年4月上市銷售。這是世界上第一塊8位元微處理器,也是後來《無線電電子》雜誌賣的著名的馬克-8電腦的主要部件。8008及其後繼產品8080開創了微處理器的市場。
8位元
編輯緊隨4位元的4004之後,英特爾設計出世界上第一片8位元微處理器,Intel 8008。此後,在市場運作中非常成功的Intel 8080和Zilog公司的Z80以及一系列其他8位元微處理器又相繼推出。原先在摩托羅拉公司設計Motorola 6800的一群人離開公司,另組建了MOS Technology公司並在6800的技術基礎上推出改良產品6502,藉此與Z80在20世紀80年代的微處理器市場上分庭抗禮。
Z80和6502晶片的設計目標都是要減少整個系統的成本,為此開發者使用了縮小規模,簡化匯流排,合併專用晶片(比如Z80就包含了一個主記憶體控制器等方法。這些措施導致了1980年代早期家用電腦的「革命」:消費者用99美元的價格就能買到一台半可用的電腦了。
摩托羅拉推出了MC6809,成為8位元處理器市場的領頭羊。有人認為這是有史以來功能最強大的純8位元處理器-也是所有投產的硬布線處理器中最複雜的。比MC6809更先進的處理器後來都用了微代碼技術。這是因為硬布線邏輯無法滿足越來越複雜的設計,逐步被淘汰了。
另一種早期的8位元處理器是Signetics 2650。由於其指令集架構新穎而功能強大,這種晶片風靡一時。
RCA公司生產的CDP1802,即RCA COSMAC,是應用於航天的處理器的先鋒。1970年代,NASA的旅行者號和維京號太空探測器都使用了這種晶片。1989年發射的木星探測器伽利略號也裝配了這種處理器。選用CDP1802,一是因為它可以在很低的功耗下執行*;二是因為它采的工藝可以更好抵抗宇宙射線和電脈衝。因此1802也被認為是第一塊抗輻射微處理器。
16位元
編輯第一款多片16位元微處理器是美國國家半導體公司於1973年初期推出的IMP-16,8位元的IMP-8晶片組又於1974年推出。1975年該公司推出了第一款單片16位元微處理器,PACE,其基於NMOS技術的新版本,INS8900不久就替代了它。
其他早期的多片16位元微處理器包括DEC用於PDP11小型機系列中LSI-11和PDP-11/30上的主機板,還有仙童公司的MicroFlame 9440,這兩款都是在1975年到1976年推出的。
另外德州儀器出的TMS 9900也是早期的單片16位元處理器,同TI 990相容。9900用在了TI 990/4小型機,TI-99/4A家用電腦和TM990系列OEM品牌微機上。這塊晶片封裝成在一塊陶瓷64腳雙內線(DIP)晶片,而當時大多數8位元微處理器都用更便宜的40腳DIP。後續產品TMS 9980針對英特爾的8080推出,全相容TI 990的16位元指令集,一次傳輸8位元資料,設計成塑料40腳DIP,但是只能定址16KB。TMS 9995是這個系列的第三塊晶片,使用了全新的設計。此系列產品後來擴充到了99105和99110。
英特爾走了一條不同的路,由於沒有小型機可以類比,他們採取擴充8080的辦法設計出了16位元的8086,這是後來幾乎統治PC晶片的x86家族的第一個成員。英特爾推出的8086使得8080上的軟體可以很經濟的移植重用,商業上獲得的成功超出預期。接著英特爾又發布80186,80286,還有1985年推出的32位元80386,這些處理器都是向前相容的,造就了英特爾PC市場的霸主地位。
整合主記憶體管理器的微處理器是英特爾公司的柴爾茨等開發的,獲得美國專利號4442484。
32位元
編輯16位元的設計剛剛進入市場,32位元的微處理器就出現了。
世界上第一塊單片32位元微處理器是AT&T貝爾實驗室的BELLMAC-32A,樣本於1980年,1982年正式投產。1984年AT&T解體後更名為WE32000(WE代表西部電子),後來又推出了後續產品WE32100和WE32200。這些晶片用在了AT&T的3B5及3B14小型電腦、世界上第一台超級台式微機3B2,還有世界上第一台筆記本式超級微機「亞歷山大」上(這種系統使用類似於現在遊戲機上用的ROM外掛程式)。所有這些系統都執行貝爾實驗室的UNIX作業系統,包括叫做xt-layers的第一個窗口系統。
最著名的32位元微處理器是摩托羅拉於1979年推出的MC68000。這片被稱為68K的晶片具有32位元的暫存器,但是內部和外部資料匯流排都是16位元的,這樣可以減少晶片的腳數。摩托羅拉將其描述為16位元處理器,但是顯然這是塊有32位元結構的晶片。由於速度快、主記憶體定址空間大(16兆)價格低廉,MC68000很快成為此類CPU中最流行的型號。1980年代中期,很多公司都用它來裝配機器,其中包括Atari ST和Commodore Amiga,最為知名的大概算蘋果公司的Apple Lisa和Macintosh了。
英特爾的第一款32位元微處理器是iAPX 432,於1981年推出,但市場上並未獲得成功。此產品有先進的物件導向架構,但同其它同類產品,特別是68000比,效能較差。
68000的成功讓摩托羅拉繼續推出MC68010,這塊晶片加入了對虛擬記憶體的支援。1985年又推出了MC68020,增加了完全的32位元資料和位址匯流排。68020在Unix超級微機市場上獲得巨大成功,許多小公司也用它生產桌面系統。MC68030晶片內整合了主記憶體管理器,幾乎成為除DOS外所有機器的標準處理器。MC68040合成了浮點運算器,數學運算效能得到提高。68050未能達到設計要求,沒有發行。後繼的68060採用了更快的RISC設計。1990年代早期,68K開始淡出桌面系統的市場。
其他大公司用68020設計嵌入式系統。曾幾何時,執行在嵌入式系統上的68020晶片比執行在PC機上的英特爾奔騰晶片都多。(見此網頁。摩托羅拉的"冷火"處理器也是68020的一種變種。
在此期間(1980年早期到中期),國家半導體推出了一種非常類似的16位元外部資料線,32位元內部匯流排的微處理器,稱為NS 16032(後改名為32016)。全32位元版本稱作32032,以及一系列工業用OEM微機。待到1980年代中期,Sequent使用NS 32032推出了第一款對稱多處理器伺服器。這款伺服器少有對手,但1980年代晚期就消失了。
其他較值得注意的晶片包括Zilog的Z 8000,但是推出太遲,未能在市場上立足即消聲匿跡了。
一些晶片在20世紀80年代晚期上演的微處理器大戰中開始淡出,甚至逐漸退出市場。結果僅有一種出色產品的Sequent NS 32032系統逐步消失,Sequent也改用英特爾的微處理器。
RISC技術
編輯1980年代中期到1990年代早期,一類新型高效能RISC(精簡指令集電腦)嶄露頭角,這些晶片最初用於專用機器和UNIX工作站,但很快就在各領域流行起來了。當然,不包括英特爾的個人電腦。
最早的商業產品是MIPS發布的32位元R2000微處理器(R1000沒有正式發布)。後續產品R3000是真正實用的型號,R4000則是世界上第一個64位元RISC晶片。同類產品還有IBM的Power系列和Sun的SPARC系列。很快所有的廠商都開始生產RISC,包括AT&T的CRISP,AMD 29000,英特爾的i860及i960,摩托羅拉88000,DEC Alpha和HP的PA。
激烈的市場競爭淘汰了很多系列,現在POWER和衍生的PowerPC系列成了個人電腦RISC晶片的主流。只有Sun還在使用SPARC架構。MIPS繼續為SGI系統提供支援,但主要用於嵌入式系統,特別是思科的路由器。其他的系統要麼已經絕跡,要麼也奄奄一息。其他公司也曾經試圖分一杯羹,如ARM公司原打算進軍家用電腦市場,但後來還是專注於嵌入式處理器了。現今基於RISC的計算裝置由MIPS,ARM和PowerPC占據了市場的主流。
當然在IBM相容機領域內,英特爾,AMD以及台灣的VIA都生產x86相容的微處理器。到2004年底,DEC和AMD合作的Alpha,AMD Athlon 64,以及HP和英特爾合作的安騰是最流行的型號。
常見微處理器架構
編輯- NSC 320xx
- AMD K5, K6, K6-2, K6-III, Duron, Athlon, Athlon XP, Athlon MP, Athlon XP-M(x86架構)
- AMD Athlon 64, Athlon 64 FX, Athlon 64 X2, Opteron, Sempron, Turion 64, Athlon II, Phenom II, AMD APU, AMD FX, AMD Ryzen, AMD EPYC(AMD64架構)
- ARM架構, StrongARM, Intel PXA2xx
- Atmel AVR架構(僅微控制器)
- CDP1802(屬於RCA COSMAC)
- Cyrix M1, M2, 6x86(Intel x86架構)
- DEC Alpha
- IBM POWER(與88000同為PowerPC系列以前的產品線)
- Intel 4004, 4040
- Intel 8080, 8085, Zilog Z80
- Intel 8086, 8088, 80186, 80188, 80286, 80386, 80486(Intel x86架構)
- Pentium, Pentium Pro, Celeron, Pentium II, Pentium III, Xeon, Pentium 4, Pentium M, Pentium D, Celeron M, Celeron D(x86)
- Intel Core 2, Pentium Dual-Core, Intel Core i3, Intel Core i5, Intel Core i7, Intel Core i9, Xeon(Intel 64架構)
- Itanium(IA-64架構)
- Intel i860, i960
- MIPS架構
- 摩托羅拉6800, MOS Technology 6502, 摩托羅拉6809
- 摩托羅拉68000系列, 摩托羅拉ColdFire
- 摩托羅拉88000(與POWER同為PowerPC系列之前的產品線)
- NexGen Nx586(Intel x86架構)
- OpenCores OpenRISC架構
- PA-RISC系列(HP公司,與x86同為IA-64架構以前的產品線)
- PowerPC系列, G3, G4, G5
- Signetics 2650
- SPARC, UltraSPARC, UltraSPARC II–IV
- 日立/瑞薩科技的SuperH系列
- Transmeta的Crusoe和Efficeon(VLIW架構,可類比Intel x86)
- INMOS Transputer
- WDC 65816
- 美國國家半導體公司的SC/MP("scamp")
注
編輯- 1802晶片具有所謂靜態設計,就是說它的時脈頻率可以設為任意低;這種設計可以讓太空飛行器上的處理器以很低的速度執行(最低可以到0赫茲,也就是停機狀態)。這樣的話,如果飛船在航行過程中正處於長時間沒有事件的旅程的時候,可以把電能消耗降到最低。在有任務到達的情況下,例如要進行航線修正,高度控制,資料採集或者無線電通訊的時候,又可以用定時器或者感測器來喚醒處理器,或者加速其執行。
參考文獻
編輯- ^ 源自:英漢雙解電腦字典
外部連結
編輯- 綜合資訊
- Great Microprocessors of the Past and Present (頁面存檔備份,存於網際網路檔案館)
- CPU Info Center
- Microprocessor White Papers (頁面存檔備份,存於網際網路檔案館)
- Microprocessor history (頁面存檔備份,存於網際網路檔案館)
- 歷史文獻
參見
編輯