中央處理器 (CPU) 全名是 Central Processing Unit, 又叫做 Processor,如果將電腦主機比喻為人體的話,實際上 CPU 就相當於人類的腦袋中負責思考與運算的部分,是電腦核心三大元件之一 (CPU、主機板、記憶體),且處理器的選擇會直接牽動記憶體與主機板的搭配,因此其地位可說是電腦中數一數二的關鍵零組件。

11896172_1629778167294324_1729205734503881352_n

↑ 常見 CPU 的零售彩盒包裝,至於為什麼有這麼多呢?我室友貢獻了不少給 Intel 啊…….XD

淺談處理器

IMG_0341

↑ 處理器就在這個寫著 Intel 字樣的風扇下,從它的位置與專屬風扇,應該不難看出 CPU 的地位有多重要。

處理器架構概觀

其實很多設備都有處理器的存在,一般來說我們比較熟知的是電腦與智慧型手機,但實際上小至遙控器,大至飛彈、衛星其實裡面都可以見到處理器的蹤跡,只是根據不同的用途我們會使用不同類型的處理器,例如要求省電但性能要求不那麼高,用途也不像電腦那麼廣泛的智慧型手機與平板電腦就習慣使用 ARM 架構的 RISC 處理器 (Reduced Instruction Set Computing,精簡指令集處理器),更加要求省電且功能更加單一的有可能會使用 ARM Cortex M0 或是 8051 等更簡單、更低階的處理器 (電資科系的微處理機系統實驗課程與計算機組織課程大概就是在搞這類東西)。

至於目前個人電腦主要使用的架構則是 x86 架構 (一種 CISC 處理器,Complex Instruction Set Computing,相對於 RISC 是精簡,因此確實複雜很多的 CISC 就被命名為「複雜」了) 的延伸,這個架構的最早版本實際上在 1978 年就已經出現,是由 Intel 提出的,名稱的由來也很簡單,當時 Intel 推出的晶片是以 4008、8008 這樣的編號命名的,而第一個採用 x86 架構的產品的名字就是 8086,之後 Intel 也將後來幾代個人電腦用處理器依序命名為 80186、80286、80386、80486 等共計五款的 80×86 系列產品,其中 8086、80186、80286 是 16 位元處理器,之後開始則升級為 32 位元 (後來被 Intel 稱為 IA-32,Intel Architecture, 32-bit)。

ASA0001ASX9852

↑ 早期的 CPU,左為 Intel 8086 ( x86 的始祖)、右為 Intel 386。

至於後來由於美國商標法規定不能使用數字當註冊商標,因此 Intel 就把 80486 的後繼者-80586 命名為我們熟知的「Pentium」了,儘管已經不叫 80586,但 x86 指令集的稱呼已經為大家所習慣了因此就延續至今 (其實 Windows Vista 以前的 Windows,只要是 32 位元版本的,安裝檔案目錄都放在「i386」裡面,其實就是 x86 架構適用的意思)。

拋棄 x86 架構的嘗試

x86 架構發展至今已經將近四十年,早已經過無數的修改、調整,至今其實已經成為一個很龐大、很複雜,甚至被批評為效率不佳、一團混亂的架構了,實際上 Intel 也曾經努力嘗試過拋棄日益混亂的 x86 架構,其中最具體的作為就是當時 Intel 發展了一種稱為 IA-64 的「純 64 位元」架構 (全名就是 Intel Architecture, 64-bit),IA-64 雖然名稱與 IA-32 很像,但實際上與 x86 架構幾乎沒有任何關聯,是砍掉重練的結果 (其實目的就是要取代 x86 架構,拋掉過去的包袱),然而當時個人電腦的應用其實已經相當普及,且都是 x86 架構的天下,IA-64 架構整個砍掉重練帶來的後果於是變得非常明顯:

  • 由於架構整組砍掉重練,因此原有的 x86 架構程式全都不能用了。
  • 如前所述,IA-64 架構與 x86 完全不相容,程式都得用新的編譯器重新編譯,甚至有不少需要修改以迎合新的架構。
  • IA-64 架構使用 VLIW 設計 (超長指令字,Very Long Instruction Word),允許在一個指令字中放入多個指令,原意是要提高處理性能,減少花費在並行處理時損失的性能,但導致的結果卻是使得 IA-64 架構程式性能會很大程度受到編譯器設計是否良好的影響,這直接導致在不少情況下 IA-64 架構的性能甚至不及原本的 x86 處理器。
  • 後來為了解決不能執行現有程式的問題,所以 Intel 設計了能在 IA-64 處理器上執行 x86 程式的方法,但需要透過模擬 (肇因於上一點所說的 VLIW 設計),因此在 IA-64 處理器上執行 x86 32-bit 程式的效率仍舊不理想,比原有的 x86 處理器還要慢。
  • 受制於專利,其他廠商無法自由使用 IA-64 架構的技術。(可說是 IA-64 無法普及的重要原因之一)

GDA9858

↑ Intel Itanium 2 處理器

BTW,IA-64 架構實際上不是 RISC 也不是 CISC,而是 HP 與 Intel 在當時合作新研究出來的 EPIC 架構,沒聽過嗎?其實站長也不是很了解這是什麼架構,但唯一一款使用這種架構的就是 IA-64,所以大概也沒甚麼必要去了解了其實 XD 以站長目前的認知來說,這系列真正 EPIC 的其實是外觀吧…….確實挺宏偉的。

現在看來你可能會覺得這些原因沒甚麼,頂多幾年的陣痛期過去,大家轉換到 IA-64 的程式不就好了嗎?不過實際情況並不是這樣,如果你有開過工作管理員看過程式的執行狀態的話,就會發現實際上我們已經轉換到 64 位元架構這麼多年,實際上絕大多數程式都仍然還是基於 32 位元的架構,所以其實 IA-64 推不起來也不是什麼很值得意外的事情。

TKS6998

Intel 旗下基於 IA-64 架構的處理器都命名為 Itanium 系列,中文譯名叫做「安騰」,第一款產品發佈於 2001 年,安騰系列的絕大多數產品都用於伺服器市場,且大部分來自於惠普 (HP),因為 IA-64 架構是由 HP 與 Intel 兩間公司合作而成的,IA-64 架構目前被 Intel 稱為 Intel Itanium Architecture。

拋棄不了,所以乾脆改良它-x86-64 (AMD64, EM64T, Intel 64, IA-32E)

IA-64 架構現在看起來基本上是失敗的,最後 IA-64 架構處理器只能在伺服器市場中看到,實際上市佔也不算高,只排到第四名而已,輸給 x86-64、IBM 的 Power 架構、SPARC 架構,而 Intel 在 2012 年釋出 Itanium 9500 系列後,至今也沒有再推出新的 IA-64 處理器,微軟等公司也在 2010~2011 年間宣布不再開發 Itanium 用的軟體,儘管 Intel 目前還是說不會放棄 IA-64,但最具體的作為僅是幫 Itanium 畫了與第六代 Core 同系列的 Logo,看起來應該是很難繼續走下去了。

badge-atom badge-xeon-vert badge-itanium

↑ 新的 Intel Logo 群 (對應 Skylake 架構家族)

而在 Intel 搞出 IA-64 架構之後,AMD 也發展了自己的 64 位元架構,與 Intel 走了相反的路線,AMD 選擇繼續使用 x86 架構,而且還要「繼續擴充 x86 架構」,最終的產物就是 AMD64 (第一款實際運用的產品是 2003 年的 Opteron 處理器),AMD64 實際上就是目前你我所使用的 64 位元架構,雖然把本來就已經夠複雜的 x86 架構搞得更加噁心了,但 AMD64 架構作為 x86 架構的延伸,能夠做到維持與過去 x86 架構近乎完全的相容性 (連重新編譯都不必),因此 AMD 這回合在市場上獲得了巨大的成功,這大概是 AMD 公司歷史上最輝煌的時期,與 Intel 幾乎可以有平起平坐的地位與市佔率。

GSA9985

↑ 基於 AMD64 架構的 AMD Athlon 64 X2 處理器,其實早期的處理器與 AMD 絕大多數的處理器背面並不是平的,而是許多針腳組成的 PGA 封裝

實際上在大約同一時間 Intel 也開始偷偷設計 x86-64 架構,偷偷的開始了「Yamhill」計畫,儘管一開始 Intel 是極力否認這個研究計畫的存在 (其實就是嘴硬加上拉不下臉來承認 Intel 居然會有需要採用 AMD 技術的一天 XD),並且砲轟 AMD,認為 IA-64 架構才是「未來」,不過看著 AMD64 的成功,Intel 也逐漸開始正視自己市佔率被 AMD 蠶食鯨吞的事實,因此在 2004 年改口承認自己正在發展一項稱為「Clackamas Technology」的技術,其實從 Intel 光是在 2004 年內就為這個技術起了 IA-32E (Extended Intel Architecture, 32-bit)、EM64T (Extended Memory 64 Technology) 等名字就可以看出當時的 Intel 有多麼慌亂。

EM64T 架構從 2004 年就開始廣泛用於 Pentium 4 與 Xeon 處理器上,時至今日,Intel 將 x86-64 架構稱為 Intel 64,目前你所能在一般市場買到的 Intel 處理器,全部都基於這個架構。

GSX8695

↑ Intel 旗下第一款支援 EM64T 的消費性處理器-LGA775 版本的 Pentium 4 (部分型號)

電腦達人養成計畫:1-2 組裝電腦 VS 品牌電腦」<< PREV

NEXT >>「電腦達人養成計畫 2-2:帶你看懂 CPU 規格