中央處理器,也稱(chēng)微處理器(CPU,Central Processing Unit),是微型計(jì)算機(jī)的運(yùn)算和指揮控制控制中心。不同型號(hào)的微型計(jì)算機(jī),其性能的差別首先在于其微處理器性能的不同,而微處理器性能又與其內(nèi)部結(jié)構(gòu)、組成有關(guān)。
CPU從存儲(chǔ)器或高速緩沖存儲(chǔ)器中取出指令,放入指令寄存器,并對(duì)指令譯碼。它把指令分解成一系列的微操作,然后發(fā)出各種控制命令,執(zhí)行微操作系列,從而完成一條指令的執(zhí)行。指令是計(jì)算機(jī)規(guī)定執(zhí)行操作的類(lèi)型和操作數(shù)的基本命令。指令是由一個(gè)字節(jié)或者多個(gè)字節(jié)組成,其中包括操作碼字段、一個(gè)或多個(gè)有關(guān)操作數(shù)地址的字段以及一些表征機(jī)器狀態(tài)的狀態(tài)字以及特征碼。有的指令中也直接包含操作數(shù)本身。
CPU依靠指令來(lái)計(jì)算和控制系統(tǒng),每款CPU在設(shè)計(jì)時(shí)就規(guī)定了一系列與其硬件電路相配合的指令系統(tǒng)。指令的強(qiáng)弱也是CPU的重要指標(biāo),指令集是提高微處理器效率的最有效工具之一。
在計(jì)算機(jī)指令系統(tǒng)的優(yōu)化發(fā)展過(guò)程中,出現(xiàn)過(guò)兩個(gè)截然不同的優(yōu)化方向:CISC技術(shù)和RISC技術(shù)。CISC是指復(fù)雜指令系統(tǒng)計(jì)算機(jī)(ComplexInstructionSetComputer);RISC是指精減指令系統(tǒng)計(jì)算機(jī)(ReducedInstructionSetComputer)。這里的計(jì)算機(jī)指令系統(tǒng)指的是計(jì)算機(jī)的最低層的機(jī)器指令,也就是CPU能夠直接識(shí)別的指令。隨著計(jì)算機(jī)系統(tǒng)的復(fù)雜,要求計(jì)算機(jī)指令系統(tǒng)的構(gòu)造能使計(jì)算機(jī)的整體性能更快更穩(wěn)定。最初,人們采用的優(yōu)化方法是通過(guò)設(shè)置一些功能復(fù)雜的指令,把一些原來(lái)由軟件實(shí)現(xiàn)的、常用的功能改用硬件的指令系統(tǒng)實(shí)現(xiàn),以此來(lái)提高計(jì)算機(jī)的執(zhí)行速度,這種計(jì)算機(jī)系統(tǒng)就被稱(chēng)為復(fù)雜指令系統(tǒng)計(jì)算機(jī),即ComplexInstructionSetComputer,簡(jiǎn)稱(chēng)CISC。另一種優(yōu)化方法是在20世紀(jì)80年代才發(fā)展起來(lái)的,其基本思想是盡量簡(jiǎn)化計(jì)算機(jī)指令功能,只保留那些功能簡(jiǎn)單、能在一個(gè)節(jié)拍內(nèi)執(zhí)行完成的指令,而把較復(fù)雜的功能用一段子程序來(lái)實(shí)現(xiàn),這種計(jì)算機(jī)系統(tǒng)就被稱(chēng)為精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī)。即ReducedInstructionSetComputer,簡(jiǎn)稱(chēng)RISC。RISC技術(shù)的精華就是通過(guò)簡(jiǎn)化計(jì)算機(jī)指令功能,使指令的平均執(zhí)行周期減少,從而提高計(jì)算機(jī)的工作主頻,同時(shí)大量使用通用寄存器來(lái)提高子程序執(zhí)行的速度。
CPU架構(gòu)是CPU廠商給屬于同一系列的CPU產(chǎn)品定的一個(gè)規(guī)范,主要目的是為了區(qū)分不同類(lèi)型CPU的重要標(biāo)示。我們?nèi)粘J褂玫呐_(tái)式機(jī),筆記本等采用X86架構(gòu)的處理器,屬于CISC范疇,而ARM架構(gòu)的手機(jī)、平板等則屬于RISC范疇。
由于CPU內(nèi)部工作原理內(nèi)容較多,比較復(fù)雜不宜學(xué)習(xí)并且對(duì)于選購(gòu)CPU沒(méi)有太大意義,本文主講和CPU性能有關(guān)的參數(shù)內(nèi)容。
x86或80x86是英特爾Intel首先開(kāi)發(fā)制造的一種微處理器體系結(jié)構(gòu)的泛稱(chēng)。該系列較早期的處理器名稱(chēng)是以數(shù)字來(lái)表示,并以“86”作為結(jié)尾,包括Intel 8086、80186、80286、80386以及80486,因此其架構(gòu)被稱(chēng)為“x86”。由于數(shù)字并不能作為注冊(cè)商標(biāo),因此Intel及其競(jìng)爭(zhēng)者均在新一代處理器使用可注冊(cè)的名稱(chēng),如Pentium?,F(xiàn)時(shí)Intel把x86-32稱(chēng)為IA-32,全名為“Intel Architecture, 32-bit”。
“X86”是Intel和其他幾家公司處理器所支持的一組機(jī)器指令集,它大致確定了芯片的使用規(guī)范。從8086到80186、80286、80386、80486,再到后來(lái)的奔騰系列以及現(xiàn)在的多核技術(shù),都是使用一脈相承的x86指令集,既不斷擴(kuò)展又向后兼容。
三十年前,英特爾發(fā)布了第一款16位微處理器—8086,當(dāng)時(shí)的著名廣告語(yǔ)是:“開(kāi)啟了一個(gè)時(shí)代”。而當(dāng)8086的光環(huán)退去之后,其支撐架構(gòu)—我們后來(lái)所熟知的x86也成為了最成功的業(yè)界技術(shù)標(biāo)準(zhǔn)之一。
在8086之后的30年間,x86家族橫跨了桌面、服務(wù)器、便攜式電腦,超級(jí)計(jì)算機(jī)等等。無(wú)數(shù)對(duì)手?jǐn)≡诹怂哪_下。
目前采用X86架構(gòu)制造CPU的廠家有三個(gè),INTEL、AMD和VIA,由于VIA制造的CPU性能市場(chǎng)占有率過(guò)小,在此忽略VIA的X86架構(gòu)處理器。
移動(dòng)版X86處理器和臺(tái)式機(jī)CPU沒(méi)有本質(zhì)區(qū)別,外觀上或許感覺(jué)差異較大,但這只是封裝形式不同造成,其內(nèi)部參數(shù)性能比較沒(méi)有本質(zhì)區(qū)別。
臺(tái)式機(jī)CPU
X86的歷史
1971 年,英特爾為一家日本計(jì)算器廠商制造了英特爾歷史上的第一塊處理器——4位的4004。很快,在1975年,英特爾又推出了8位處理器8008和8080。
3年以后,16位的8086初次登場(chǎng)。在上世紀(jì)80年代初,IBM選擇了8086的衍生產(chǎn)品8088作為IBM PC的處理器。IBM的這一舉措給x86帶來(lái)了巨大的發(fā)展機(jī)遇,并且?guī)椭蔀榱诵袠I(yè)標(biāo)準(zhǔn)——直到今天。
英特爾執(zhí)行副總裁Patrick Gelsinger說(shuō):“PC行業(yè)發(fā)展的革命性轉(zhuǎn)折點(diǎn)是1985年32位處理器80386的推出,它推動(dòng)了整個(gè)行業(yè)的發(fā)展。”
386 之后,19**486誕生了。由于當(dāng)時(shí)數(shù)字不能作為商標(biāo),英特爾從1993年開(kāi)始改變了產(chǎn)品命名方法。第五代處理器被命名為Pentium而不是586。
所有的基于x86架構(gòu)的芯片,開(kāi)始于8086,一直延續(xù)到今天。當(dāng)然他們的命名發(fā)生了變化,運(yùn)算速度也有了驚人的提升。
X86成功的秘訣
x86為什么能一直成功,擊退甚至完全打敗其他的處理器架構(gòu)?從一開(kāi)始,x86的誕生就可謂生逢其時(shí)。1978年,計(jì)算機(jī)從巨大、昂貴的中型計(jì)算機(jī)轉(zhuǎn)變?yōu)樾⌒?、便宜的微型?jì)算機(jī)已經(jīng)有幾年了。臺(tái)式電腦成為變革的前沿。
更重要的是,x86證明了戈登·摩爾在1965年提出的一個(gè)定律。戈登·摩爾后來(lái)成為英特爾的主席和CEO。摩爾說(shuō),在成本不變的前提下,微處理器每過(guò)二年其運(yùn)算速度會(huì)翻一番。他的預(yù)言后來(lái)被稱(chēng)為摩爾定律,30年來(lái)始終被證明是有效的。
8086及其后續(xù)產(chǎn)品還一直與電腦業(yè)的兩個(gè)大名鼎鼎的名字緊緊聯(lián)系在一起。1972年,比爾 ·蓋茨和保羅·艾倫就嘗試用性能很弱的8008開(kāi)發(fā)Basic編程語(yǔ)言,但沒(méi)有成功。但他們最終在性能強(qiáng)勁一些的8080處理器上開(kāi)發(fā)出了Basic語(yǔ)言,并在1975年把 Basic語(yǔ)言應(yīng)用到Altair8800 PC。
這成為英特爾和微軟親密關(guān)系的開(kāi)始。微軟從那時(shí)起,便創(chuàng)造了一個(gè)龐大的軟件帝國(guó)并推動(dòng)了整個(gè)行業(yè)的發(fā)展。英特爾首席技術(shù)官Justin Rattner指出,x86體系架構(gòu)的靈活性是它過(guò)去以及今后成功的關(guān)鍵。他說(shuō),雖然人們通常將x86指令集看作是某種一成不變的規(guī)范,但是不管是指令集還是體系架構(gòu)本身,都在過(guò)去幾年里發(fā)生了巨大的變革。Rattner說(shuō),x86在上世紀(jì)九十年代曾憑借其內(nèi)置MMX和SSE指令集擴(kuò)展,一舉提高了多媒體和通信應(yīng)用所需的速度,從而擊退了其他專(zhuān)業(yè)媒體處理器對(duì)它發(fā)起的挑戰(zhàn)。他還舉例說(shuō)明了x86體系架構(gòu)在過(guò)去幾年中新增的一些改進(jìn)功能。比如在內(nèi)存管理和虛擬化方面的硬件支持等。
Rattner指出,同樣重要的是,英特爾在x86體系架構(gòu)發(fā)展的每一個(gè)階段都保持了向后兼容的特性。指令集的發(fā)展以及產(chǎn)品系列內(nèi)部的兼容性大大擴(kuò)展了x86體系架構(gòu)的應(yīng)用范圍,將個(gè)人用戶(hù)與企業(yè)用戶(hù)、便攜式電腦和超級(jí)計(jì)算機(jī)都包括了進(jìn)來(lái)。
加州大學(xué)伯克利分校的計(jì)算機(jī)科學(xué)教授David Patterson說(shuō):“認(rèn)識(shí)到x86體系架構(gòu)并非一種凝固的設(shè)計(jì)這一點(diǎn)很重要。30多年來(lái),它們每月都會(huì)增加一個(gè)說(shuō)明。現(xiàn)在x86指令集的說(shuō)明已經(jīng)達(dá)到500多個(gè)。每一代都會(huì)增加20到100多個(gè)。前后兼容很重要,它也一直在增加新的內(nèi)容。”
評(píng)論