睿頻加速
智能處理
------Intel在最新酷睿i系列cpu中加入的新技術(shù),以往cpu的主頻是出廠之前被設(shè)定好的,不可以隨意改變。而i系列cpu都加入睿頻加速,使得cpu的主頻可以在某一范圍內(nèi)根據(jù)處理數(shù)據(jù)需要自動(dòng)調(diào)整主頻。它是基于Nehalem架構(gòu)的電源管理技術(shù),通過分析當(dāng)前CPU的負(fù)載情況,智能地完全關(guān)閉一些用不上的核心,把能源留給正在使用的核心,并使它們運(yùn)行在更高的頻率,進(jìn)一步提升性能;相反,需要多個(gè)核心時(shí),動(dòng)態(tài)開啟相應(yīng)的核心,智能調(diào)整頻率。這樣,在不影響CPU的TDP情況下,能把核心工作頻率調(diào)得更高。比如,某i5處理主頻為2.53GHz,最高可達(dá)2.93GHz,在此范圍內(nèi)可以自動(dòng)調(diào)整其數(shù)據(jù)處理頻率,而此cpu的承受能力遠(yuǎn)遠(yuǎn)大于2.93GHz,不必?fù)?dān)心cpu的承受能力。加入此技術(shù)的cpu不僅可以滿足用戶多方面的需要,而且省電,使cpu具有一些智能特點(diǎn)。實(shí)現(xiàn)Turbo技術(shù)需要在核心內(nèi)部設(shè)計(jì)一個(gè)功率控制器,大約需要消耗100萬個(gè)晶體管。因?yàn)樵谀承┯螒蛑虚_啟Turbo模式可以直接帶來10%左右的性能提升,相當(dāng)于將顯卡提升一個(gè)檔次。值得一提的是,Extreme版本的Core i7處理器最高可以將TDP在BIOS中設(shè)定到190W來執(zhí)行Turbo模式,在個(gè)別應(yīng)用中進(jìn)一步提升CPU時(shí)鐘頻率,帶來效能上的提升。)。他的加入可以很好的幫助處理器在空閑時(shí)刻降低功耗,從而起到提高工作效率同時(shí)節(jié)能的目的。Turbo Mode功能是一項(xiàng)可以充分使用處理器工作效率的技術(shù)。它能讓內(nèi)核運(yùn)行動(dòng)態(tài)加速。可以根據(jù)需要開啟、關(guān)閉以及加速單個(gè)或多個(gè)內(nèi)核的運(yùn)行。如在一個(gè)四核的Nehalem處理器中,如果一個(gè)任務(wù)是單線程的,則可以關(guān)閉另外三個(gè)內(nèi)核的運(yùn)行,同時(shí)把工作的那個(gè)內(nèi)核的運(yùn)行主頻提高,這樣動(dòng)態(tài)的調(diào)整可以提高系統(tǒng)和CPU整體的能效比率。CPU會(huì)確定其當(dāng)前工作功率、電流和溫度是否已達(dá)到最高極限,如仍有多余空間,CPU會(huì)逐漸提高活動(dòng)內(nèi)核的頻率,以進(jìn)一步提高當(dāng)前任務(wù)的處理速度,當(dāng)程序只用到其中的某些核心時(shí),CPU會(huì)自動(dòng)關(guān)閉其它未使用的核心,睿頻加速技術(shù)無需用戶干預(yù),自動(dòng)實(shí)現(xiàn)。
HT
術(shù)語解釋超線程技術(shù)是在一顆CPU同時(shí)執(zhí)行多個(gè)程序而共同分享一顆CPU內(nèi)的資源,理論上要像兩顆CPU一樣在同一時(shí)間執(zhí)行兩個(gè)線程,P4處理器需要多加入一個(gè)
Logical CPU Pointer
(邏輯處理單元)。因此新一代的P4 HT的die的面積比以往的P4增大了5%。而其余部分如ALU(整數(shù)運(yùn)算單元)、FPU(浮點(diǎn)運(yùn)算單元)、L2 Cache(二級(jí)緩存)則保持不變,這些部分是被分享的。雖然采用超線程技術(shù)能同時(shí)執(zhí)行兩個(gè)線程,但它并不象兩個(gè)真正的CPU那樣,每個(gè)CPU都具有獨(dú)立的資源。當(dāng)兩個(gè)線程都同時(shí)需要某一個(gè)資源時(shí),其中一個(gè)要暫時(shí)停止,并讓出資源,直到這些資源閑置后才能繼續(xù)。因此超線程的性能并不等于兩顆CPU的性能。
性能提升一般很多人都會(huì)認(rèn)為,采用超線程技術(shù),就能使得系統(tǒng)效能大幅提升,但是事實(shí)真是如此么?不要忘了我們前面說到的超線程技術(shù)實(shí)現(xiàn)的必要條件,這可是超線程技術(shù)發(fā)揮應(yīng)有效能的前提條件。除了操作系統(tǒng)支持之外,還必須要軟件的支持。從這點(diǎn)我們就可以看出,就目前的軟件現(xiàn)狀來說,支持雙處理器技術(shù)的軟件畢竟還在少數(shù)。對(duì)于大多數(shù)軟件來說,目前由于設(shè)計(jì)的原理不同,還并不能從超線程技術(shù)上得到直接的好處,因?yàn)槌€程技術(shù)是在線程級(jí)別上并行處理命令,按線程動(dòng)態(tài)分配處理器等資源。該技術(shù)的核心理念是“并行度(Parallelism)”,也就是提高命令執(zhí)行的并行度、提高每個(gè)時(shí)鐘的效率。這就需要軟件在設(shè)計(jì)上線程化,提高并行處理的能力。而目前PC上的應(yīng)用程序幾乎沒有為此作出相應(yīng)的優(yōu)化,采用超線程技術(shù)并沒不能獲得效能的大幅提升。上面說的只是目前軟件支持的現(xiàn)狀,操作系統(tǒng)在這個(gè)方面則沒有太大的問題,畢竟Windows的某些版本、Linux都是支持多處理器的操作系統(tǒng)。并且隨著Intel支持超線程技術(shù)的處理器面世之后,憑借Intel處理器的號(hào)召力,必然會(huì)引起目前應(yīng)用程序設(shè)計(jì)上的改變,必然會(huì)有更多的支持并行線程處理的軟件面世,屆時(shí),當(dāng)然是支持超線程處理器大顯身手的時(shí)候了。那時(shí)候普通用戶才能夠從超線程技術(shù)中得到最直接的好處。
盡管提高CPU的時(shí)鐘頻率和增加緩存容量后的確可以改善性能,但這樣的CPU性能提高在技術(shù)上存在較大的難度。實(shí)際上在應(yīng)用中基于很多原因,CPU的執(zhí)行單元都沒有被充分使用。如果CPU不能正常讀取數(shù)據(jù)(總線/內(nèi)存的瓶頸),其執(zhí)行單元利用率會(huì)明顯下降。
目前大多數(shù)執(zhí)行線程缺乏ILP(Instruction-Level Parallelism,多種指令同時(shí)執(zhí)行)支持。這些都造成了目前CPU的性能沒有得到全部的發(fā)揮。因此,Intel則采用另一個(gè)思路去提高CPU的性能,讓CPU可以同時(shí)執(zhí)行多重線程,就能夠讓CPU發(fā)揮更大效率,即所謂“超線程(Hyper-Threading,簡稱“HT”)”技術(shù)。
英特爾P4 超線程有兩個(gè)運(yùn)行模式,Single Task Mode(單任務(wù)模式)及Multi Task Mode(多任務(wù)模式),當(dāng)程序不支持Multi-Processing(多處理器作業(yè))時(shí),系統(tǒng)會(huì)停止其中一個(gè)邏輯CPU的運(yùn)行,把資源集中于單個(gè)邏輯CPU中,讓單線程程序不會(huì)因其中一個(gè)邏輯CPU閑置而減低性能,但由于被停止運(yùn)行的邏輯CPU還是會(huì)等待工作,占用一定的資源,因此Hyper-Threading CPU運(yùn)行Single Task Mode程序模式時(shí),有可能達(dá)不到不帶超線程功能的CPU性能,但性能差距不會(huì)太大。也就是說,當(dāng)運(yùn)行單線程運(yùn)用軟件時(shí),超線程技術(shù)甚至?xí)档拖到y(tǒng)性能,尤其在多線程操作系統(tǒng)運(yùn)行單線程軟件時(shí)容易出現(xiàn)此問題。
需要注意的是,含有超線程技術(shù)的CPU需要芯片組、軟件支持,才能比較理想的發(fā)揮該項(xiàng)技術(shù)的優(yōu)勢。操作系統(tǒng)如:Microsoft Windows XP、Microsoft Windows 2003,Linuxkernel 2.4.x以后的版本也支持超線程技術(shù)。
優(yōu)點(diǎn)1、超線程技術(shù)的優(yōu)勢在于同時(shí)進(jìn)行多任務(wù)批處理工作,盡管現(xiàn)在支持超線程技術(shù)的軟件不多,也只有少數(shù)的軟件可以享受到由超線程技術(shù)帶來的性能提升,但是這符合今后軟件等技術(shù)的發(fā)展方向,今后更多的軟件將受益于超線程技術(shù)。
2、從目前來看,部分客戶發(fā)可以發(fā)覺在運(yùn)行某些特定軟件時(shí),超線程技術(shù)讓系統(tǒng)有了30%的性能提升,為超線程技術(shù)優(yōu)化的軟件都能夠享受到超線程技術(shù)的好處。
3、客戶同時(shí)運(yùn)行兩個(gè)以上的軟件軟件時(shí)候,將可以明顯的感受到這兩個(gè)軟件的性能都得到提升相比關(guān)閉超線程技術(shù)的情況下都有很大的提升,超線程技術(shù)的效率優(yōu)勢只有在多任務(wù)操作時(shí)候才能得到發(fā)揮。
4、另外目前支持超線程技術(shù)的Windows XP操作系統(tǒng),其中的很多系統(tǒng)軟件都已經(jīng)針對(duì)超線程技術(shù)優(yōu)化過,因此在使用Windows操作系統(tǒng)的時(shí)候可以很好的享受到超線程技術(shù)帶來好處。
缺點(diǎn)1、因?yàn)槌€程技術(shù)是對(duì)多任務(wù)處理有優(yōu)勢,因此當(dāng)運(yùn)行單線程運(yùn)用軟件時(shí),超線程技術(shù)將會(huì)降低系統(tǒng)性能,尤其在多線程操作系統(tǒng)運(yùn)行單線程軟件時(shí)將容易出現(xiàn)此問題(這也是在WindowsXP中運(yùn)行顯卡的測試軟件時(shí)候,得分下降了一點(diǎn))。
2、在打開超線程支持后,如果處理器以雙處理器模式工作,那么處理器內(nèi)部緩存就會(huì)被劃分成幾區(qū)域,互相共享內(nèi)部資源。對(duì)于不支持多處理器工作的軟件在雙處理器上運(yùn)行時(shí)出錯(cuò)的概率要比單處理器上高很多。
3、目前因?yàn)楹芏喙ぷ髡拒浖閃indows 2000操作系統(tǒng)進(jìn)行過優(yōu)化,但是采用
Windows2000
這樣的操作系統(tǒng)的工作戰(zhàn)無法完全利用超線程技術(shù)的優(yōu)勢,也帶來不了高的工作效率。通過上面的解答,我們應(yīng)該知道了超線程技術(shù)的確實(shí)對(duì)系統(tǒng)性能提升有好處,但是這僅對(duì)多任務(wù)處理的時(shí)候有優(yōu)勢,在進(jìn)行單各任務(wù)處理的時(shí)候,優(yōu)勢表現(xiàn)不出來,而且因?yàn)榇蜷_超線程,處理器內(nèi)部緩存就會(huì)被劃分成幾區(qū)域,互相共享內(nèi)部資源,造成單個(gè)的子系統(tǒng)性能下降。個(gè)人認(rèn)為,用戶在進(jìn)行單任務(wù)操作時(shí)候,沒有必要打開超線程,只有多任務(wù)操作時(shí)候可以適時(shí)打開超線程,享受超線程技術(shù)帶來的好處。
小結(jié)超線程技術(shù)就是利用特殊的硬件指令,把兩個(gè)邏輯內(nèi)核模擬成兩個(gè)物理芯片,讓單個(gè)處理器都能使用線程級(jí)并行計(jì)算,從而兼容多線程操作系統(tǒng)和軟件,提高處理器的性能。操作系統(tǒng)或者應(yīng)用軟件的多線程可以同時(shí)運(yùn)行于一個(gè)HTT處理器上,兩個(gè)邏輯處理器共享一組處理器執(zhí)行單元,并行完成加、乘、負(fù)載等操作。這樣就可以使得運(yùn)行性能提高30%,這是因?yàn)樵谕粫r(shí)間里,應(yīng)用程序可以使用芯片的不同部分。雖然單線程芯片每秒鐘能夠處理成千上萬條指令,但是在任一時(shí)刻只能夠?qū)σ粭l指令進(jìn)行操作。而“超線程”技術(shù)可以使芯片同時(shí)進(jìn)行多線程處理,使芯片性能得到提升。
挑選處理器
天氣的逐漸變冷,提醒著我們年末的到來,同時(shí)也意味著寒促高峰的來臨。辛苦勞作一年的大伙兒難免要“腐敗”一把,不少朋友將買本的事兒提上日程。那么購買筆記本有哪些事項(xiàng)是需要格外注意的呢?雖說針對(duì)不同的應(yīng)用有不同的筆記本機(jī)型供大家選擇,但也有一些標(biāo)準(zhǔn)是放之四海而皆準(zhǔn)的,比如性能、散熱、續(xù)航這些選本的要點(diǎn)是值得用戶去注意的,而這一切都與筆記本處理器的選擇密不可分,可以說選對(duì)了處理器,就是選對(duì)了筆記本。
性能睿頻加速技術(shù)示意圖
從性能上看,英特爾新酷睿處理器加入的睿頻加速技術(shù)使得筆記本的頻率更加的智能化了,換言之,筆記本的處理器頻率會(huì)依據(jù)當(dāng)前運(yùn)行需求在一個(gè)范圍內(nèi)變動(dòng)。通俗地講就是:當(dāng)用戶在PC上進(jìn)行簡單的操作、或者機(jī)器閑置的時(shí)候,處理器頻率會(huì)自動(dòng)調(diào)整到較低的頻率,但是能夠滿足機(jī)器流暢運(yùn)行;而當(dāng)用戶在PC上進(jìn)行消耗資源較大的操作,比如處理大容量存儲(chǔ)格式相片、運(yùn)行大型3D游戲時(shí),處理器立馬滿狀態(tài)運(yùn)行,并能通過睿頻技術(shù)自動(dòng)超頻到一個(gè)較高的水準(zhǔn)來滿足運(yùn)行程序的需求。而這一切操作,并不需要用戶隨時(shí)去手動(dòng)切換,一切都在后臺(tái)“悄悄地”完成,省去了很多麻煩。當(dāng)用戶啟動(dòng)一個(gè)運(yùn)行程序后,比如運(yùn)行一款對(duì)系統(tǒng)資源要求較高的大型3D游戲,處理器會(huì)自動(dòng)加速到合適的頻率,將原來的運(yùn)行速度提升10%~20% 以保證程序流暢運(yùn)行;應(yīng)對(duì)復(fù)雜應(yīng)用時(shí),處理器可自動(dòng)提高運(yùn)行主頻以提速,輕松進(jìn)行對(duì)性能要求更高的多任務(wù)處理;當(dāng)進(jìn)行工作任務(wù)切換時(shí),如果只有內(nèi)存和硬盤在進(jìn)行主要的工作,處理器會(huì)立刻處于節(jié)電狀態(tài)。這樣既保證了能源的有效利用,又使程序運(yùn)行速度大幅提升。
功能特色除了性能之外,筆記本的散熱和續(xù)航能力是另外兩大要素,由于采用睿頻技術(shù),筆記本在閑置時(shí)將運(yùn)行在更低的頻率,同時(shí)新酷睿處理器本身采用32nm的制程工藝,與目前市場上還在流通的45nm處理器相比,本身就擁有更好的功耗控制,先天的優(yōu)勢加上后天的技術(shù),使得Intel新酷睿智能處理器擁有更低的功耗、更低的發(fā)熱量以及更長的續(xù)航時(shí)間。
采用Intel智能處理器的筆記本往往更輕更薄
采用Intel新酷睿智能處理器的筆記本由于擁有更為出色的功耗控制,使得其在產(chǎn)品模具設(shè)計(jì)上能夠做到更輕更薄,外觀也更加的時(shí)尚,同時(shí)筆記本的重量也降低了,便攜性提高了,可謂一舉多得。
記得早些時(shí)候筆記本的發(fā)熱量控制還不是很好,不少朋友調(diào)侃說:冬天到了,買個(gè)本本暖暖手。如果你買了一款采用新酷睿智能處理器的筆記本,那“暖手”這個(gè)附加優(yōu)惠基本上是不可能實(shí)現(xiàn)了。在價(jià)位上,您完全不需要擔(dān)心,新酷睿智能處理器分為i3 i5 i7三大品類,價(jià)位從3000元到萬元以上不等,相信可以滿足不用戶的需求。
工作原理
提取第一階段,提取,從程式記憶體中檢索指令(為數(shù)值或一系列數(shù)值)。由程式計(jì)數(shù)器(Program Counter)指定程式記憶體的位置,程式計(jì)數(shù)器保存供識(shí)別目前程式位置的數(shù)值。換言之,程式計(jì)數(shù)器記錄了CPU在目前程式里的蹤跡。
提取指令之后,程式計(jì)數(shù)器根據(jù)指令長度增加記憶體單元。指令的提取必須常常從相對(duì)較慢的記憶體尋找,因此導(dǎo)致CPU等候指令的送入。這個(gè)問題主要被論及在現(xiàn)代處理器的快取和管線化架構(gòu)。
解碼CPU根據(jù)從記憶體提取到的指令來決定其執(zhí)行行為。在解碼階段,指令被拆解為有意義的片斷。根據(jù)CPU的指令集架構(gòu)(ISA)定義將數(shù)值解譯為指令。
一部分的指令數(shù)值為運(yùn)算碼(Opcode),其指示要進(jìn)行哪些運(yùn)算。其它的數(shù)值通常供給指令必要的資訊,諸如一個(gè)加法(Addition)運(yùn)算的運(yùn)算目標(biāo)。這樣的運(yùn)算目標(biāo)也許提供一個(gè)常數(shù)值(即立即值),或是一個(gè)空間的定址值:暫存器或記憶體位址,以定址模式?jīng)Q定。
在舊的設(shè)計(jì)中,CPU里的指令解碼部分是無法改變的硬體裝置。不過在眾多抽象且復(fù)雜的CPU和指令集架構(gòu)中,一個(gè)微程式時(shí)常用來幫助轉(zhuǎn)換指令為各種形態(tài)的訊號(hào)。這些微程式在已成品的CPU中往往可以重寫,方便變更解碼指令。
執(zhí)行在提取和解碼階段之后,接著進(jìn)入執(zhí)行階段。該階段中,連接到各種能夠進(jìn)行所需運(yùn)算的CPU部件。
例如,要求一個(gè)加法運(yùn)算,算數(shù)邏輯單元(
ALU,Arithmetic Logic Unit
)將會(huì)連接到一組輸入和一組輸出。輸入提供了要相加的數(shù)值,而輸出將含有總和的結(jié)果。ALU內(nèi)含電路系統(tǒng),易于輸出端完成簡單的普通運(yùn)算和邏輯運(yùn)算(比如加法和位元運(yùn)算)。如果加法運(yùn)算產(chǎn)生一個(gè)對(duì)該CPU處理而言過大的結(jié)果,在標(biāo)志暫存器里,運(yùn)算溢出(Arithmetic
Overflow)標(biāo)志可能會(huì)被設(shè)置。寫回最終階段,寫回,以一定格式將執(zhí)行階段的結(jié)果簡單的寫回。運(yùn)算結(jié)果經(jīng)常被寫進(jìn)CPU內(nèi)部的暫存器,以供隨后指令快速存取。在其它案例中,運(yùn)算結(jié)果可能寫進(jìn)速度較慢,但容量較大且較便宜的主記憶體中。某些類型的指令會(huì)操作程式計(jì)數(shù)器,而不直接產(chǎn)生結(jié)果。這些一般稱作“跳轉(zhuǎn)”(Jumps),并在程式中帶來循環(huán)行為、條件性執(zhí)行(透過條件跳轉(zhuǎn))和函式。
許多指令也會(huì)改變標(biāo)志暫存器的狀態(tài)位元。這些標(biāo)志可用來影響程式行為,緣由于它們時(shí)常顯出各種運(yùn)算結(jié)果。
例如,以一個(gè)“比較”指令判斷兩個(gè)值的大小,根據(jù)比較結(jié)果在標(biāo)志暫存器上設(shè)置一個(gè)數(shù)值。這個(gè)標(biāo)志可藉由隨后的跳轉(zhuǎn)指令來決定程式動(dòng)向。
在執(zhí)行指令并寫回結(jié)果之后,程式計(jì)數(shù)器的值會(huì)遞增,反覆整個(gè)過程,下一個(gè)指令周期正常的提取下一個(gè)順序指令。如果完成的是跳轉(zhuǎn)指令,程式計(jì)數(shù)器將會(huì)修改成跳轉(zhuǎn)到的指令位址,且程式繼續(xù)正常執(zhí)行。許多復(fù)雜的CPU可以一次提取多個(gè)指令、解碼,并且同時(shí)執(zhí)行。這個(gè)部分一般涉及“經(jīng)典RISC管線”,那些實(shí)際上是在眾多使用簡單CPU的電子裝置中快速普及(常稱為微控制(
Microcontrollers
))。基本結(jié)構(gòu)
CPU包括運(yùn)算邏輯部件、寄存器部件和控制部件。CPU從存儲(chǔ)器或高速緩沖存儲(chǔ)器中取出指令,放入指令寄存器,并對(duì)指令譯碼。它把指令分解成一系列的微操作,然后發(fā)出各種控制命令,執(zhí)行微操作系列,從而完成一條指令的執(zhí)行。
指令是計(jì)算機(jī)規(guī)定執(zhí)行操作的類型和操作數(shù)的基本命令。指令是由一個(gè)字節(jié)或者多個(gè)字節(jié)組成,其中包括操作碼字段、一個(gè)或多個(gè)有關(guān)操作數(shù)地址的字段以及一些表征機(jī)器狀態(tài)的狀態(tài)字和特征碼。有的指令中也直接包含操作數(shù)本身。
運(yùn)算邏輯部件運(yùn)算邏輯部件,可以執(zhí)行定點(diǎn)或浮點(diǎn)的算術(shù)運(yùn)算操作、移位操作以及邏輯操作,也可執(zhí)行地址的運(yùn)算和轉(zhuǎn)換。
寄存器部件寄存器部件,包括通用寄存器、專用寄存器和控制寄存器。
通用寄存器又可分定點(diǎn)數(shù)和浮點(diǎn)數(shù)兩類,它們用來保存指令中的寄存器操作數(shù)和操作結(jié)果。
通用寄存器是中央處理器的重要組成部分,大多數(shù)指令都要訪問到通用寄存器。通用寄存器的寬度決定計(jì)算機(jī)內(nèi)部的數(shù)據(jù)通路寬度,其端口數(shù)目往往可影響內(nèi)部操作的并行性。
專用寄存器是為了執(zhí)行一些特殊操作所需用的寄存器。
控制寄存器通常用來指示機(jī)器執(zhí)行的狀態(tài),或者保持某些指針,有處理狀態(tài)寄存器、地址轉(zhuǎn)換目錄的基地址寄存器、特權(quán)狀態(tài)寄存器、條件碼寄存器、處理異常事故寄存器以及檢錯(cuò)寄存器等。
有的時(shí)候,中央處理器中還有一些緩存,用來暫時(shí)存放一些數(shù)據(jù)指令,緩存越大,說明CPU的運(yùn)算速度越快,目前市場上的中高端中央處理器都有2M左右的二級(jí)緩存,高端中央處理器有4M左右的二級(jí)緩存。
控制部件控制部件,主要負(fù)責(zé)對(duì)指令譯碼,并且發(fā)出為完成每條指令所要執(zhí)行的各個(gè)操作的控制信號(hào)。
其結(jié)構(gòu)有兩種:一種是以微存儲(chǔ)為核心的微程序控制方式;一種是以邏輯硬布線結(jié)構(gòu)為主的控制方式。
微存儲(chǔ)中保持微碼,每一個(gè)微碼對(duì)應(yīng)于一個(gè)最基本的微操作,又稱微指令;各條指令是由不同序列的微碼組成,這種微碼序列構(gòu)成微程序。中央處理器在對(duì)指令譯碼以后,即發(fā)出一定時(shí)序的控制信號(hào),按給定序列的順序以微周期為節(jié)拍執(zhí)行由這些微碼確定的若干個(gè)微操作,即可完成某條指令的執(zhí)行。
簡單指令是由(3~5)個(gè)微操作組成,復(fù)雜指令則要由幾十個(gè)微操作甚至幾百個(gè)微操作組成。
邏輯硬布線控制器則完全是由隨機(jī)邏輯組成。指令譯碼后,控制器通過不同的邏輯門的組合,發(fā)出不同序列的控制時(shí)序信號(hào),直接去執(zhí)行一條指令中的各個(gè)操作。
發(fā)展歷史
CPU這個(gè)名稱,早期是對(duì)一系列可以執(zhí)行復(fù)雜的計(jì)算機(jī)程序或電腦程式的邏輯機(jī)器的描述。這個(gè)空泛的定義很容易在“CPU”這個(gè)名稱被普遍使用之前將計(jì)算機(jī)本身也包括在內(nèi)。
誕 生但從20世紀(jì)70年代開始,由于集成電路的大規(guī)模使用,把本來需要由數(shù)個(gè)獨(dú)立單元構(gòu)成的CPU集成為一塊微小但功能空前強(qiáng)大的微處理器時(shí)。這個(gè)名稱及其縮寫才真正在電子計(jì)算機(jī)產(chǎn)業(yè)中得到廣泛應(yīng)用。盡管與早期相比,CPU在物理形態(tài)、設(shè)計(jì)制造和具體任務(wù)的執(zhí)行上都有了戲劇性的發(fā)展,但是其基本的操作原理一直沒有改變。
1971年,當(dāng)時(shí)還處在發(fā)展階段的Intel公司推出了世界上第一臺(tái)真正的微處理器--4004。這不但是第一個(gè)用于計(jì)算器的4位微處理器,也是第一款個(gè)人有能力買得起的電腦處理器!
4004含有2300個(gè)晶體管,功能相當(dāng)有限,而且速度還很慢,被當(dāng)時(shí)的藍(lán)色巨人IBM以及大部分商業(yè)用戶不屑一顧,但是它畢竟是劃時(shí)代的產(chǎn)品,從此以后,Intel公司便與微處理器結(jié)下了不解之緣??梢赃@么說,CPU的歷史發(fā)展歷程其實(shí)也就是Intel公司X86系列CPU的發(fā)展歷程,就通過它來展開的“CPU歷史之旅”。
起步的角逐1978年,Intel公司再次領(lǐng)導(dǎo)潮流,首次生產(chǎn)出16位的微處理器,并命名為i8086,同時(shí)還生產(chǎn)出與之相配合的數(shù)學(xué)協(xié)處理器i8087,這兩種芯片使用相互兼容的指令集,但在i8087指令集中增加了一些專門用于對(duì)數(shù)、指數(shù)和三角函數(shù)等數(shù)學(xué)計(jì)算的指令。由于這些指令集應(yīng)用于i8086和i8087,所以人們也把這些指令集中統(tǒng)一稱之為X86指令集。
雖然以后Intel公司又陸續(xù)生產(chǎn)出第二代、第三代等更先進(jìn)和更快的新型CPU,但都仍然兼容原來的X86指令,而且Intel公司在后續(xù)CPU的命名上沿用了原先的X86序列,直到后來因商標(biāo)注冊問題,才放棄了繼續(xù)用阿拉伯?dāng)?shù)字命名。至于在后來發(fā)展壯大的其他公司,例如AMD和Cyrix等,在486以前(包括486)的CPU都是按Intel的命名方式為自己的X86系列CPU命名,但到了586時(shí)代,市場競爭越來越厲害了,由于商標(biāo)注冊問題,它們已經(jīng)無法繼續(xù)使用與Intel的X86系列相同或相似的命名,只好另外為自己的586、686兼容CPU命名了。
1979年,Intel公司推出了8088芯片,它仍舊是屬于16位微處理器,內(nèi)含29000個(gè)晶體管,時(shí)鐘頻率為4.77MHz,地址總線為20位,可使用1MB內(nèi)存。8088內(nèi)部數(shù)據(jù)總線都是16位,外部數(shù)據(jù)總線是8位,而它的兄弟8086是16位。
微機(jī)時(shí)代1981年,8088芯片首次用于IBM的PC(個(gè)人電腦Personal Computer)機(jī)中,開創(chuàng)了全新的微機(jī)時(shí)代。也正是從8088開始,PC的概念開始在全世界范圍內(nèi)發(fā)展起來。
早期的CPU通常是為大型及特定應(yīng)用的計(jì)算機(jī)而訂制。但是,這種昂貴為特定應(yīng)用定制CPU的方法很大程度上已經(jīng)讓位于開發(fā)便宜、標(biāo)準(zhǔn)化、適用于一個(gè)或多個(gè)目的的處理器類。
這個(gè)標(biāo)準(zhǔn)化趨勢始于由單個(gè)晶體管組成的大型機(jī)和微機(jī)年代,隨著集成電路的出現(xiàn)而加速。集成電路使得更為復(fù)雜的CPU可以在很小的空間中設(shè)計(jì)和制造出來(在微米的量級(jí))。
1982年,許多年輕的讀者尚在襁褓之中的時(shí)候,Intel公司已經(jīng)推出了劃時(shí)代的最新產(chǎn)品棗80286芯片,該芯片比8086和8088都有了飛躍的發(fā)展,雖然它仍舊是16位結(jié)構(gòu),但是在CPU的內(nèi)部含有13.4萬個(gè)晶體管,時(shí)鐘頻率由最初的6MHz逐步提高到20MHz。其內(nèi)部和外部數(shù)據(jù)總線皆為16位,地址總線24位,可尋址16MB內(nèi)存。從80286開始,CPU的工作方式也演變出兩種來:實(shí)模式和保護(hù)模式。
1985年,Intel公司推出了80386芯片,它是80X86系列中的第一種32位微處理器,而且制造工藝也有了很大的進(jìn)步,與80286相比,80386內(nèi)部內(nèi)含27.5萬個(gè)晶體管,時(shí)鐘頻率為12.5MHz,后提高到20MHz、25MHz、33MHz。80386的內(nèi)部和外部數(shù)據(jù)總線都是32位,地址總線也是32位,可尋址高達(dá)4GB內(nèi)存。它除具有實(shí)模式和保護(hù)模式外,還增加了一種叫虛擬86的工作方式,可以通過同時(shí)模擬多個(gè)8086處理器來提供多任務(wù)能力。
除了標(biāo)準(zhǔn)的80386芯片,也就是經(jīng)常說的80386DX外,出于不同的市場和應(yīng)用考慮,Intel又陸續(xù)推出了一些其它類型的80386芯片:80386SX、80386SL、80386DL等。
1988年,Intel推出的80386SX是市場定位在80286和80386DX之間的一種芯片,其與80386DX的不同在于外部數(shù)據(jù)總線和地址總線皆與80286相同,分別是16位和24位(即尋址能力為16MB)。
高速CPU時(shí)代1990年,Intel公司推出的80386 SL和80386 DL都是低功耗、節(jié)能型芯片,主要用于便攜機(jī)和節(jié)能型臺(tái)式機(jī)。80386 SL與80386 DL的不同在于前者是基于80386SX的,后者是基于80386DX的,但兩者皆增加了一種新的工作方式:系統(tǒng)管理方式。當(dāng)進(jìn)入系統(tǒng)管理方式后,CPU 就自動(dòng)降低運(yùn)行速度、控制顯示屏和硬盤等其它部件暫停工作,甚至停止運(yùn)行,進(jìn)入“休眠”狀態(tài),以達(dá)到節(jié)能目的。
1989年,大家耳熟能詳?shù)?0486 芯片由Intel公司推出,這種芯片的偉大之處就在于它實(shí)破了100萬個(gè)晶體管的界限,集成了120萬個(gè)晶體管。80486的時(shí)鐘頻率從25MHz逐步提高到了33MHz、50MHz。80486是將80386和數(shù)學(xué)協(xié)處理器80387以及一個(gè)8KB的高速緩存集成在一個(gè)芯片內(nèi),并且在80X86系列中首次采用 了RISC(精簡指令集)技術(shù),可以在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條指令。它還采用了突發(fā)總線方式,大大提高了與內(nèi)存的數(shù)據(jù)交換速度。
由于這些改進(jìn),80486 的性能比帶有80387數(shù)學(xué)協(xié)處理器的80386DX提高了4倍。80486和80386一樣,也陸續(xù)出現(xiàn)了幾種類型。上面介紹的最初類型是80486DX。
1990年,Intel公司推出了80486 SX,它是486類型中的一種低價(jià)格機(jī)型,其與80486DX的區(qū)別在于它沒有數(shù)學(xué)協(xié)處理器。80486 DX2由于用了時(shí)鐘倍頻技術(shù),也就是說芯片內(nèi)部的運(yùn)行速度是外部總線運(yùn)行速度的兩倍,即芯片內(nèi)部以2倍于系統(tǒng)時(shí)鐘的速度運(yùn)行,但仍以原有時(shí)鐘速度與外界通訊。80486 DX2的內(nèi)部時(shí)鐘頻率主要有40MHz、50MHz、66MHz等。80486 DX4也是采用了時(shí)鐘倍頻技術(shù)的芯片,它允許其內(nèi)部單元以2倍或3倍于外部總線的速度運(yùn)行。為了支持這種提高了的內(nèi)部工作頻率,它的片內(nèi)高速緩存擴(kuò)大到 16KB。80486 DX4的時(shí)鐘頻率為100MHz,其運(yùn)行速度比66MHz的80486 DX2快40%。80486也有SL增強(qiáng)類型,其具有系統(tǒng)管理方式,用于便攜機(jī)或節(jié)能型臺(tái)式機(jī)。
CPU的標(biāo)準(zhǔn)化和小型化都使得這一類數(shù)字設(shè)備(香港譯為“電子零件”)在現(xiàn)代生活中
的出現(xiàn)頻率遠(yuǎn)遠(yuǎn)超過有限應(yīng)用專用的計(jì)算機(jī)?,F(xiàn)代微處理器出現(xiàn)在包括從汽車到手機(jī)到兒童玩具在內(nèi)的各種物品中。
技術(shù)架構(gòu)
制造工藝制造工藝的微米是指IC內(nèi)電路與電路之間的距離。制造工藝的趨勢是向密集度愈高的方向發(fā)展。密度愈高的IC電路設(shè)計(jì),意味著在同樣大小面積的IC中,可以擁有密度更高、功能更復(fù)雜的電路設(shè)計(jì)?,F(xiàn)在主要的180nm、130nm、90nm、65nm、45納米。最近inter已經(jīng)有32納米的制造工藝的酷睿i3/i5系列了。
而AMD則表示、自己的產(chǎn)品將會(huì)直接跳過32nm工藝(2010年第三季度生產(chǎn)少許32nm產(chǎn)品、如Orochi、Llano)于2011年中期初發(fā)布28nm的產(chǎn)品(名稱未定)
指令集(1)CISC指令集
CISC指令集,也稱為復(fù)雜指令集,英文名是CISC,(Complex Instruction Set Computer的縮寫)。在CISC微處理器中,程序的各條指令是按順序串行執(zhí)行的,每條指令中的各個(gè)操作也是按順序串行執(zhí)行的。順序執(zhí)行的優(yōu)點(diǎn)是控制簡單,但計(jì)算機(jī)各部分的利用率不高,執(zhí)行速度慢。其實(shí)它是英特爾生產(chǎn)的x86系列(也就是IA-32架構(gòu))CPU及其兼容CPU,如AMD、VIA的。即使是現(xiàn)在新起的X86-64(也被成AMD64)都是屬于CISC的范疇。
要知道什么是指令集還要從當(dāng)今的X86架構(gòu)的CPU說起。X86指令集是Intel為其第一塊16位CPU(i8086)專門開發(fā)的,IBM1981年推出的世界第一臺(tái)PC機(jī)中的CPU-i8088(i8086簡化版)使用的也是X86指令,同時(shí)電腦中為提高浮點(diǎn)數(shù)據(jù)處理能力而增加了X87芯片,以后就將X86指令集和X87指令集統(tǒng)稱為X86指令集。
雖然隨著CPU技術(shù)的不斷發(fā)展,Intel陸續(xù)研制出更新型的i80386、i80486直到過去的PII至強(qiáng)、PIII至強(qiáng)、Pentium 3,Pentium 4系列,最后到今天的酷睿2系列、至強(qiáng)(不包括至強(qiáng)Nocona),但為了保證電腦能繼續(xù)運(yùn)行以往開發(fā)的各類應(yīng)用程序以保護(hù)和繼承豐富的軟件資源,所以Intel公司所生產(chǎn)的所有CPU仍然繼續(xù)使用X86指令集,所以它的CPU仍屬于X86系列。由于Intel X86系列及其兼容CPU(如AMD Athlon MP、)都使用X86指令集,所以就形成了今天龐大的X86系列及兼容CPU陣容。x86CPU目前主要有intel的服務(wù)器CPU和AMD的服務(wù)器CPU兩類。
(2)RISC指令集
RISC是英文“Reduced Instruction Set Computing ”的縮寫,中文意思是“精簡指令集”。它是在CISC指令系統(tǒng)基礎(chǔ)上發(fā)展起來的,有人對(duì)CISC機(jī)進(jìn)行測試表明,各種指令的使用頻度相當(dāng)懸殊,最常使用的是一些比較簡單的指令,它們僅占指令總數(shù)的20%,但在程序中出現(xiàn)的頻度卻占80%。復(fù)雜的指令系統(tǒng)必然增加微處理器的復(fù)雜性,使處理器的研制時(shí)間長,成本高。并且復(fù)雜指令需要復(fù)雜的操作,必然會(huì)降低計(jì)算機(jī)的速度。基于上述原因,20世紀(jì)80年代RISC型CPU誕生了,相對(duì)于CISC型CPU ,RISC型CPU不僅精簡了指令系統(tǒng),還采用了一種叫做“超標(biāo)量和超流水線結(jié)構(gòu)”,大大增加了并行處理能力。RISC指令集是高性能CPU的發(fā)展方向。它與傳統(tǒng)的CISC(復(fù)雜指令集)相對(duì)。相比而言,RISC的指令格式統(tǒng)一,種類比較少,尋址方式也比復(fù)雜指令集少。當(dāng)然處理速度就提高很多了。目前在中高檔服務(wù)器中普遍采用這一指令系統(tǒng)的CPU,特別是高檔服務(wù)器全都采用RISC指令系統(tǒng)的CPU。RISC指令系統(tǒng)更加適合高檔服務(wù)器的操作系統(tǒng)UNIX,現(xiàn)在Linux也屬于類似UNIX的操作系統(tǒng)。RISC型CPU與Intel和AMD的CPU在軟件和硬件上都不兼容。
目前,在中高檔服務(wù)器中采用RISC指令的CPU主要有以下幾類:PowerPC處理器、SPARC處理器、PA-RISC處理器、MIPS處理器、Alpha處理器。
(3)IA-64
EPIC(Explicitly Parallel Instruction Computers,精確并行指令計(jì)算機(jī))是否是RISC和CISC體系的繼承者的爭論已經(jīng)有很多,單以EPIC體系來說,它更像Intel的處理器邁向RISC體系的重要步驟。從理論上說,EPIC體系設(shè)計(jì)的CPU,在相同的主機(jī)配置下,處理Windows的應(yīng)用軟件比基于Unix下的應(yīng)用軟件要好得多。
Intel采用EPIC技術(shù)的服務(wù)器CPU是安騰Itanium(開發(fā)代號(hào)即Merced)。它是64位處理器,也是IA-64系列中的第一款。微軟也已開發(fā)了代號(hào)為Win64的操作系統(tǒng),在軟件上加以支持。在Intel采用了X86指令集之后,它又轉(zhuǎn)而尋求更先進(jìn)的64-bit微處理器,Intel這樣做的原因是,它們想擺脫容量巨大的x86架構(gòu),從而引入精力充沛而又功能強(qiáng)大的指令集,于是采用EPIC指令集的IA-64架構(gòu)便誕生了。IA-64 在很多方面來說,都比x86有了長足的進(jìn)步。突破了傳統(tǒng)IA32架構(gòu)的許多限制,在數(shù)據(jù)的處理能力,系統(tǒng)的穩(wěn)定性、安全性、可用性、可觀理性等方面獲得了突破性的提高。
IA-64微處理器最大的缺陷是它們?nèi)狈εcx86的兼容,而Intel為了IA-64處理器能夠更好地運(yùn)行兩個(gè)朝代的軟件,它在IA-64處理器上(Itanium、Itanium2 ……)引入了x86-to-IA-64的解碼器,這樣就能夠把x86指令翻譯為IA-64指令。這個(gè)解碼器并不是最有效率的解碼器,也不是運(yùn)行x86代碼的最好途徑(最好的途徑是直接在x86處理器上運(yùn)行x86代碼),因此Itanium 和Itanium2在運(yùn)行x86應(yīng)用程序時(shí)候的性能非常糟糕。這也成為X86-64產(chǎn)生的根本原因。
(4)X86-64 (AMD64 / EM64T)
AMD公司設(shè)計(jì),可以在同一時(shí)間內(nèi)處理64位的整數(shù)運(yùn)算,并兼容于X86-32架構(gòu)。其中支持64位邏輯定址,同時(shí)提供轉(zhuǎn)換為32位定址選項(xiàng);但數(shù)據(jù)操作指令默認(rèn)為32位和8位,提供轉(zhuǎn)換成64位和16位的選項(xiàng);支持常規(guī)用途寄存器,如果是32位運(yùn)算操作,就要將結(jié)果擴(kuò)展成完整的64位。這樣,指令中有“直接執(zhí)行”和“轉(zhuǎn)換執(zhí)行”的區(qū)別,其指令字段是8位或32位,可以避免字段過長。
x86-64(也叫AMD64)的產(chǎn)生也并非空穴來風(fēng),x86處理器的32bit尋址空間限制在4GB內(nèi)存,而IA-64的處理器又不能兼容x86。AMD充分考慮顧客的需求,加強(qiáng)x86指令集的功能,使這套指令集可同時(shí)支持64位的運(yùn)算模式,因此AMD把它們的結(jié)構(gòu)稱之為x86-64。在技術(shù)上AMD在x86-64架構(gòu)中為了進(jìn)行64位運(yùn)算,AMD為其引入了新增了R8-R15通用寄存器作為原有X86處理器寄存器的擴(kuò)充,但在而在32位環(huán)境下并不完全使用到這些寄存器。原來的寄存器諸如EAX、EBX也由32位擴(kuò)張至64位。在SSE單元中新加入了8個(gè)新寄存器以提供對(duì)SSE2的支持。寄存器數(shù)量的增加將帶來性能的提升。與此同時(shí),為了同時(shí)支持32和64位代碼及寄存器,x86-64架構(gòu)允許處理器工作在以下兩種模式:Long Mode(長模式)和Legacy Mode(遺傳模式),Long模式又分為兩種子模式(64bit模式和Compatibility mode兼容模式)。該標(biāo)準(zhǔn)已經(jīng)被引進(jìn)在AMD服務(wù)器處理器中的Opteron處理器.
而今年也推出了支持64位的EM64T技術(shù),再還沒被正式命為EM64T之前是IA32E,這是英特爾64位擴(kuò)展技術(shù)的名字,用來區(qū)別X86指令集。Intel的EM64T支持64位sub-mode,和AMD的X86-64技術(shù)類似,采用64位的線性平面尋址,加入8個(gè)新的通用寄存器(GPRs),還增加8個(gè)寄存器支持SSE指令。與AMD相類似,Intel的64位技術(shù)將兼容IA32和IA32E,只有在運(yùn)行64位操作系統(tǒng)下的時(shí)候,才將會(huì)采用IA32E。IA32E將由2個(gè)sub-mode組成:64位sub-mode和32位sub-mode,同AMD64一樣是向下兼容的。Intel的EM64T將完全兼容AMD的X86-64技術(shù)?,F(xiàn)在Nocona處理器已經(jīng)加入了一些64位技術(shù),Intel的Pentium 4E處理器也支持64位技術(shù)。
應(yīng)該說,這兩者都是兼容x86指令集的64位微處理器架構(gòu),但EM64T與AMD64還是有一些不一樣的地方,AMD64處理器中的NX位在Intel的處理器中將沒有提供。