軟件 : 電子學 : 物理學類 : 跑跑卡丁車 : 船舶港口 : 建築 > 中央處理器
目錄
cpu簡介
  中央處理器是英語“central processing unit”的縮寫,即cpu,cpu一般由邏輯運算單元、控製單元和存儲單元組成。在邏輯運算和控製單元中包括一些寄存器,這些寄存器用於cpu在處理數據過程中數據的暫時保存, 簡單的講是由控製器和運算器二部分組成。
  其實我們在買cpu時,並不需要知道它的構造,衹要知道它的性能就可以了。
性能指標
  ·主頻
  主頻也叫時鐘頻率,單位是mhz,用來表示cpu的運算速度。cpu的主頻=外頻×倍頻係數。很多人認為主頻就决定着cpu的運行速度,這不僅是個片面的認識,而且對於服務器來講,這個認識也出現了偏差。至今,沒有一條確定的公式能夠實現主頻和實際的運算速度兩者之間的量值關係,即使是兩大處理器廠傢intel和amd,在這點上也存在着很大的爭議,我們從intel的産品的發展趨勢,可以看出intel很註重加強自身主頻的發展。像其他的處理器生産廠傢,有人曾經拿過一塊1g的全美達來做比較,它的運行效率相當於2g的intel處理器。
  所以,cpu的主頻與cpu實際的運算能力是沒有直接關係的,主頻表示在cpu內數字脈衝信號震蕩的速度。在intel的處理器産品中,我們也可以看到這樣的例子:1 ghz itanium芯片能夠表現得差不多跟2.66 ghz xeon/opteron一樣快,或是1.5 ghz itanium 2大約跟4 ghz xeon/opteron一樣快。cpu的運算速度還要看cpu的流水綫的各方面的性能指標。
  當然,主頻和實際的運算速度是有關的,衹能說主頻是cpu性能表現的一個方面,而不能代表cpu的整體性能。
  ·外頻
  外頻是cpu的基準頻率,單位也是mhz。cpu的外頻决定着整塊主板的運行速度。說白了,在臺式機中,我們所說的超頻,都是超cpu的外頻(當然一般情況下,cpu的倍頻都是被鎖住的)相信這點是很好理解的。但對於服務器cpu來講,超頻是絶對不允許的。前面說到cpu决定着主板的運行速度,兩者是同步運行的,如果把服務器cpu超頻了,改變了外頻,會産生異步運行,(臺式機很多主板都支持異步運行)這樣會造成整個服務器係統的不穩定。
  目前的絶大部分電腦係統中外頻也是內存與主板之間的同步運行的速度,在這種方式下,可以理解為cpu的外頻直接與內存相連通,實現兩者間的同步運行狀態。外頻與前端總綫(fsb)頻率很容易被混為一談,下面我們在前端總綫的介紹中談談兩者的區別。
  ·前端總綫(fsb)頻率
  前端總綫(fsb)頻率(即總綫頻率)是直接影響cpu與內存直接數據交換速度。有一條公式可以計算,即數據帶寬=(總綫頻率×數據位寬)/8,數據傳輸最大帶寬取决於所有同時傳輸的數據的寬度和傳輸頻率。比方,現在的支持64位的至強nocona,前端總綫是800mhz,按照公式,它的數據傳輸最大帶寬是6.4gb/秒。
  外頻與前端總綫(fsb)頻率的區別:前端總綫的速度指的是數據傳輸的速度,外頻是cpu與主板之間同步運行的速度。也就是說,100mhz外頻特指數字脈衝信號在每秒鐘震蕩一千萬次;而100mhz前端總綫指的是每秒鐘cpu可接受的數據傳輸量是100mhz×64bit÷8bit/byte=800mb/s。
  其實現在“hypertransport”構架的出現,讓這種實際意義上的前端總綫(fsb)頻率發生了變化。之前我們知道ia-32架構必須有三大重要的構件:內存控製器hub (mch) ,i/o控製器hub和pci hub,像intel很典型的芯片組 intel 7501、intel7505芯片組,為雙至強處理器量身定做的,它們所包含的mch為cpu提供了頻率為533mhz的前端總綫,配合ddr內存,前端總綫帶寬可達到4.3gb/秒。但隨着處理器性能不斷提高同時給係統架構帶來了很多問題。而“hypertransport”構架不但解决了問題,而且更有效地提高了總綫帶寬,比方amd opteron處理器,靈活的hypertransport i/o總綫體係結構讓它整合了內存控製器,使處理器不通過係統總綫傳給芯片組而直接和內存交換數據。這樣的話,前端總綫(fsb)頻率在amd opteron處理器就不知道從何談起了。
  ·cpu的位和字長
  位:在數字電路和電腦技術中采用二進製,代碼衹有“0”和“1”,其中無論是 “0”或是“1”在cpu中都是 一“位”。
  字長:電腦技術中對cpu在單位時間內(同一時間)能一次處理的二進製數的位數叫字長。所以能處理字長為8位數據的cpu通常就叫8位的cpu。同理32位的cpu就能在單位時間內處理字長為32位的二進製數據。字節和字長的區別:由於常用的英文字符用8位二進製就可以表示,所以通常就將8位稱為一個字節。字長的長度是不固定的,對於不同的cpu、字長的長度也不一樣。8位的cpu一次衹能處理一個字節,而32位的cpu一次就能處理4個字節,同理字長為64位的cpu一次可以處理8個字節。
  ·倍頻係數
  倍頻係數是指cpu主頻與外頻之間的相對比例關係。在相同的外頻下,倍頻越高cpu的頻率也越高。但實際上,在相同外頻的前提下,高倍頻的cpu本身意義並不大。這是因為cpu與係統之間數據傳輸速度是有限的,一味追求高倍頻而得到高主頻的cpu就會出現明顯的“瓶頸”效應—cpu從係統中得到數據的極限速度不能夠滿足cpu運算的速度。一般除了工程樣版的intel的cpu都是鎖了倍頻的,而amd之前都沒有鎖。
  ·緩存
  緩存大小也是cpu的重要指標之一,而且緩存的結構和大小對cpu速度的影響非常大,cpu內緩存的運行頻率極高,一般是和處理器同頻運作,工作效率遠遠大於係統內存和硬盤。實際工作時,cpu往往需要重複讀取同樣的數據塊,而緩存容量的增大,可以大幅度提升cpu內部讀取數據的命中率,而不用再到內存或者硬盤上尋找,以此提高係統性能。但是由於cpu芯片面積和成本的因素來考慮,緩存都很小。
  l1 cache(一級緩存)是cpu第一層高速緩存,分為數據緩存和指令緩存。內置的l1高速緩存的容量和結構對cpu的性能影響較大,不過高速緩衝存儲器均由靜態ram組成,結構較復雜,在cpu管芯面積不能太大的情況下,l1級高速緩存的容量不可能做得太大。一般服務器cpu的l1緩存的容量通常在32—256kb。
  l2 cache(二級緩存)是cpu的第二層高速緩存,分內部和外部兩種芯片。內部的芯片二級緩存運行速度與主頻相同,而外部的二級緩存則衹有主頻的一半。l2高速緩存容量也會影響cpu的性能,原則是越大越好,現在家庭用cpu容量通常有256kb-2mb,而服務器和工作站上用cpu的l2高速緩存可以有256kb-3mb,有的4mb也不為過。
  l3 cache(三級緩存),分為兩種,早期的是外置,現在的都是內置的。而它的實際作用即是,l3緩存的應用可以進一步降低內存延遲,同時提升大數據量計算時處理器的性能。降低內存延遲和提升大數據量計算能力對遊戲都很有幫助。而在服務器領域增加l3緩存在性能方面仍然有顯著的提升。比方具有較大l3緩存的配置利用物理內存會更有效,故它比較慢的磁盤i/o子係統可以處理更多的數據請求。具有較大l3緩存的處理器提供更有效的文件係統緩存行為及較短消息和處理器隊列長度。
  其實最早的l3緩存被應用在amd發佈的k6-iii處理器上,當時的l3緩存受限於製造工藝,並沒有被集成進芯片內部,而是集成在主板上。在衹能夠和係統總綫頻率同步的l3緩存同主內存其實差不了多少。後來使用l3緩存的是英特爾為服務器市場所推出的itanium處理器。接着就是p4ee和至強mp。intel還打算推出一款9mb l3緩存的itanium2處理器,和以後24mb l3緩存的雙核心itanium2處理器。
  但基本上l3緩存對處理器的性能提高顯得不是很重要,比方配備1mb l3緩存的xeon mp處理器卻仍然不是opteron的對手,由此可見前端總綫的增加,要比緩存增加帶來更有效的性能提升。
相關指令
  cpu依靠指令來計算和控製係統,每款cpu在設計時就規定了一係列與其硬件電路相配合的指令係統。指令的強弱也是cpu的重要指標,指令集是提高微處理器效率的最有效工具之一。從現階段的主流體係結構講,指令集可分為復雜指令集和精簡指令集兩部分,而從具體運用看,如intel的mmx(multi media extended)、sse、 sse2(streaming-single instruction multiple data-extensions 2)、see3和amd的3dnow!等都是cpu的擴展指令集,分別增強了cpu的多媒體、圖形圖象和internet等的處理能力。我們通常會把cpu的擴展指令集稱為”cpu的指令集”。sse3指令集也是目前規模最小的指令集,此前mmx包含有57條命令,sse包含有50條命令,sse2包含有144條命令,sse3包含有13條命令。目前sse3也是最先進的指令集,英特爾prescott處理器已經支持sse3指令集,amd會在未來雙核心處理器當中加入對sse3指令集的支持,全美達的處理器也將支持這一指令集。
  (1)cisc指令集
  cisc指令集,也稱為復雜指令集,英文名是cisc,(complex instruction set computer的縮寫)。在cisc微處理器中,程序的各條指令是按順序串行執行的,每條指令中的各個操作也是按順序串行執行的。順序執行的優點是控製簡單,但計算機各部分的利用率不高,執行速度慢。其實它是英特爾生産的x86係列(也就是ia-32架構)cpu及其兼容cpu,如amd、via的。即使是現在新起的x86-64(也被成amd64)都是屬於cisc的範疇。
  要知道什麽是指令集還要從當今的x86架構的cpu說起。x86指令集是intel為其第一塊16位cpu(i8086)專門開發的,ibm1981年推出的世界第一臺pc機中的cpu—i8088(i8086簡化版)使用的也是x86指令,同時電腦中為提高浮點數據處理能力而增加了x87芯片,以後就將x86指令集和x87指令集統稱為x86指令集。
  雖然隨着cpu技術的不斷發展,intel陸續研製出更新型的i80386、i80486直到過去的pii至強、piii至強、pentium 3,最後到今天的pentium 4係列、至強(不包括至強nocona),但為了保證電腦能繼續運行以往開發的各類應用程序以保護和繼承豐富的軟件資源,所以intel公司所生産的所有cpu仍然繼續使用x86指令集,所以它的cpu仍屬於x86係列。由於intel x86係列及其兼容cpu(如amd athlon mp、)都使用x86指令集,所以就形成了今天龐大的x86係列及兼容cpu陣容。x86cpu目前主要有intel的服務器cpu和amd的服務器cpu兩類。
  (2)risc指令集
  risc是英文“reduced instruction set computing ” 的縮寫,中文意思是“精簡指令集”。它是在cisc指令係統基礎上發展起來的,有人對cisc機進行測試表明,各種指令的使用頻度相當懸殊,最常使用的是一些比較簡單的指令,它們僅占指令總數的20%,但在程序中出現的頻度卻占80%。復雜的指令係統必然增加微處理器的復雜性,使處理器的研製時間長,成本高。並且復雜指令需要復雜的操作,必然會降低計算機的速度。基於上述原因,20世紀80年代risc型cpu誕生了,相對於cisc型cpu,risc型cpu不僅精簡了指令係統,還采用了一種叫做“超標量和超流水綫結構”,大大增加了並行處理能力。risc指令集是高性能cpu的發展方向。它與傳統的cisc(復雜指令集)相對。相比而言,risc的指令格式統一,種類比較少,尋址方式也比復雜指令集少。當然處理速度就提高很多了。目前在中高檔服務器中普遍采用這一指令係統的cpu,特別是高檔服務器全都采用risc指令係統的cpu。risc指令係統更加適合高檔服務器的操作係統unix,現在linux也屬於類似unix的操作係統。risc型cpu與intel和amd的cpu在軟件和硬件上都不兼容。
  目前,在中高檔服務器中采用risc指令的cpu主要有以下幾類:powerpc處理器、sparc處理器、pa-risc處理器、mips處理器、alpha處理器。
製造工藝
  製造工藝的微米是指ic內電路與電路之間的距離。製造工藝的趨勢是嚮密集度愈高的方向發展。密度愈高的ic電路設計,意味着在同樣大小面積的ic中,可以擁有密度更高、功能更復雜的電路設計。現在主要的180nm、130nm、90nm、65nm。intel公司更於2007年11月16日發佈了45nm的製造工藝。
  cpu內核和i/o工作電壓
  從586cpu開始,cpu的工作電壓分為內核電壓和i/o電壓兩種,通常cpu的核心電壓小於等於i/o電壓。其中內核電壓的大小是根據cpu的生産工藝而定,一般製作工藝越小,內核工作電壓越低;i/o電壓一般都在1.6~5v。低電壓能解决耗電過大和發熱過高的問題。
  超流水綫與超標量
  在解釋超流水綫與超標量前,先瞭解流水綫(pipeline)。流水綫是intel首次在486芯片中開始使用的。流水綫的工作方式就象工業生産上的裝配流水綫。在cpu中由5—6個不同功能的電路單元組成一條指令處理流水綫,然後將一條x86指令分成5—6步後再由這些電路單元分別執行,這樣就能實現在一個cpu時鐘周期完成一條指令,因此提高cpu的運算速度。經典奔騰每條整數流水綫都分為四級流水,即指令預取、譯碼、執行、寫回結果,浮點流水又分為八級流水。
  超標量是通過內置多條流水綫來同時執行多個處理器,其實質是以空間換取時間。而超流水綫是通過細化流水、提高主頻,使得在一個機器周期內完成一個甚至多個操作,其實質是以時間換取空間。例如pentium 4的流水綫就長達20級。將流水綫設計的步(級)越長,其完成一條指令的速度越快,因此才能適應工作主頻更高的cpu。但是流水綫過長也帶來了一定副作用,很可能會出現主頻較高的cpu實際運算速度較低的現象,intel的奔騰4就出現了這種情況,雖然它的主頻可以高達1.4g以上,但其運算性能卻遠遠比不上amd 1.2g的速竜甚至intel自傢的老産品奔騰iii。
  cpu封裝形式
  cpu封裝是采用特定的材料將cpu芯片或cpu模塊固化在其中以防損壞的保護措施,一般必須在封裝後cpu才能交付用戶使用。cpu的封裝方式取决於cpu安裝形式和器件集成設計,從大的分類來看通常采用socket插座進行安裝的cpu使用pga(柵格陣列)方式封裝,而采用slot x槽安裝的cpu則全部采用sec(單邊接插盒)的形式封裝。現在還有plga(plastic land grid array)、olga(organic land grid array)等封裝技術。由於市場競爭日益激烈,目前cpu封裝技術的發展方向以節約成本為主。
  cpu封裝技術
    所謂“cpu封裝技術”是一種將集成電路用絶緣的塑料或陶瓷材料打包的技術。以cpu為例,我們實際看到的體積和外觀並不是真正的cpu內核的大小和面貌,而是cpu內核等元件經過封裝後的産品。
  cpu封裝對於芯片來說是必須的,也是至關重要的。因為芯片必須與外界隔離,以防止空氣中的雜質對芯片電路的腐蝕而造成電氣性能下降。另一方面,封裝後的芯片也更便於安裝和運輸。由於封裝技術的好壞還直接影響到芯片自身性能的發揮和與之連接的pcb(印製電路板)的設計和製造,因此它是至關重要的。封裝也可以說是指安裝半導體集成電路芯片用的外殼,它不僅起着安放、固定、密封、保護芯片和增強導熱性能的作用,而且還是溝通芯片內部世界與外部電路的橋梁——芯片上的接點用導綫連接到封裝外殼的引腳上,這些引腳又通過印刷電路板上的導綫與其他器件建立連接。因此,對於很多集成電路産品而言,封裝技術都是非常關鍵的一環。
  目前采用的cpu封裝多是用絶緣的塑料或陶瓷材料包裝起來,能起着密封和提高芯片電熱性能的作用。由於現在處理器芯片的內頻越來越高,功能越來越強,引腳數越來越多,封裝的外形也不斷在改變。封裝時主要考慮的因素:
  1. 芯片面積與封裝面積之比為提高封裝效率,盡量接近1:1
  2. 引腳要盡量短以減少延遲,引腳間的距離盡量遠,以保證互不幹擾,提高性能
  3. 基於散熱的要求,封裝越薄越好
  作為計算機的重要組成部分,cpu的性能直接影響計算機的整體性能。而cpu製造工藝的最後一步也是最關鍵一步就是cpu的封裝技術,采用不同封裝技術的cpu,在性能上存在較大差距。衹有高品質的封裝技術才能生産出完美的cpu産品。
   ·多綫程
  同時多綫程simultaneous multithreading,簡稱smt。smt可通過復製處理器上的結構狀態,讓同一個處理器上的多個綫程同步執行並共享處理器的執行資源,可最大限度地實現寬發射、亂序的超標量處理,提高處理器運算部件的利用率,緩和由於數據相關或cache未命中帶來的訪問內存延時。當沒有多個綫程可用時,smt處理器幾乎和傳統的寬發射超標量處理器一樣。smt最具吸引力的是衹需小規模改變處理器核心的設計,幾乎不用增加額外的成本就可以顯著地提升效能。多綫程技術則可以為高速的運算核心準備更多的待處理數據,減少運算核心的閑置時間。這對於桌面低端係統來說無疑十分具有吸引力。intel從3.06ghz pentium 4開始,所有處理器都將支持smt技術。
   ·多核心
  多核心,也指單芯片多處理器(chip multiprocessors,簡稱cmp)。cmp是由美國斯坦福大學提出的,其思想是將大規模並行處理器中的smp(對稱多處理器)集成到同一芯片內,各個處理器並行執行不同的進程。與cmp比較, smt處理器結構的靈活性比較突出。但是,當半導體工藝進入0.18微米以後,綫延時已經超過了門延遲,要求微處理器的設計通過劃分許多規模更小、局部性更好的基本單元結構來進行。相比之下,由於cmp結構已經被劃分成多個處理器核來設計,每個核都比較簡單,有利於優化設計,因此更有發展前途。目前,ibm 的power 4芯片和sun的 majc5200芯片都采用了cmp結構。多核處理器可以在處理器內部共享緩存,提高緩存利用率,同時簡化多處理器係統設計的復雜度。
   2005年下半年,intel和amd的新型處理器也將融入cmp結構。新安騰處理器開發代碼為montecito,采用雙核心設計,擁有最少18mb片內緩存,采取90nm工藝製造,它的設計絶對稱得上是對當今芯片業的挑戰。它的每個單獨的核心都擁有獨立的l1,l2和l3 cache,包含大約10億支晶體管。
  ·smp
  smp(symmetric multi-processing),對稱多處理結構的簡稱,是指在一個計算機上匯集了一組處理器(多cpu),各cpu之間共享內存子係統以及總綫結構。在這種技術的支持下,一個服務器係統可以同時運行多個處理器,並共享內存和其他的主機資源。像雙至強,也就是我們所說的二路,這是在對稱處理器係統中最常見的一種(至強mp可以支持到四路,amd opteron可以支持1-8路)。也有少數是16路的。但是一般來講,smp結構的機器可擴展性較差,很難做到100個以上多處理器,常規的一般是8個到16個,不過這對於多數的用戶來說已經夠用了。在高性能服務器和工作站級主板架構中最為常見,像unix服務器可支持最多256個cpu的係統。
  構建一套smp係統的必要條件是:支持smp的硬件包括主板和cpu;支持smp的係統平臺,再就是支持smp的應用軟件。
  為了能夠使得smp係統發揮高效的性能,操作係統必須支持smp係統,如winnt、linux、以及unix等等32位操作係統。即能夠進行多任務和多綫程處理。多任務是指操作係統能夠在同一時間讓不同的cpu完成不同的任務;多綫程是指操作係統能夠使得不同的cpu並行的完成同一個任務 。
  要組建smp係統,對所選的cpu有很高的要求,首先、cpu內部必須內置apic(advanced programmable interrupt controllers)單元。intel 多處理規範的核心就是高級可編程中斷控製器(advanced programmable interrupt controllers╟apics)的使用;再次,相同的産品型號,同樣類型的cpu核心,完全相同的運行頻率;最後,盡可能保持相同的産品序列編號,因為兩個生産批次的cpu作為雙處理器運行的時候,有可能會發生一顆cpu負擔過高,而另一顆負擔很少的情況,無法發揮最大性能,更糟糕的是可能導致死機。
  ·numa技術
  numa即非一致訪問分佈共享存儲技術,它是由若幹通過高速專用網絡連接起來的獨立節點構成的係統,各個節點可以是單個的cpu或是smp係統。在numa中,cache 的一致性有多種解决方案,需要操作係統和特殊軟件的支持。sequent公司numa係統的例子。這裏有3個smp模塊用高速專用網絡聯起來,組成一個節點,每個節點可以有12個cpu。像sequent的係統最多可以達到64個cpu甚至256個cpu。顯然,這是在smp的基礎上,再用numa的技術加以擴展,是這兩種技術的結合。
  ·亂序執行技術
  亂序執行(out-of-orderexecution),是指cpu允許將多條指令不按程序規定的順序分開發送給各相應電路單元處理的技術。這樣將根據個電路單元的狀態和各指令能否提前執行的具體情況分析後,將能提前執行的指令立即發送給相應電路單元執行,在這期間不按規定順序執行指令,然後由重新排列單元將各執行單元結果按指令順序重新排列。采用亂序執行技術的目的是為了使cpu內部電路滿負荷運轉並相應提高了cpu的運行程序的速度。分枝技術:(branch)指令進行運算時需要等待結果,一般無條件分枝衹需要按指令順序執行,而條件分枝必須根據處理後的結果,再决定是否按原先順序進行。
  ·cpu內部的內存控製器
  許多應用程序擁有更為復雜的讀取模式(幾乎是隨機地,特別是當cache hit不可預測的時候),並且沒有有效地利用帶寬。典型的這類應用程序就是業務處理軟件,即使擁有如亂序執行(out of order execution)這樣的cpu特性,也會受內存延遲的限製。這樣cpu必須得等到運算所需數據被除數裝載完成才能執行指令(無論這些數據來自cpu cache還是主內存係統)。當前低段係統的內存延遲大約是120-150ns,而cpu速度則達到了3ghz以上,一次單獨的內存請求可能會浪費200-300次cpu循環。即使在緩存命中率(cache hit rate)達到99%的情況下,cpu也可能會花50%的時間來等待內存請求的結束- 比如因為內存延遲的緣故。
  你可以看到opteron整合的內存控製器,它的延遲,與芯片組支持雙通道ddr內存控製器的延遲相比來說,是要低很多的。英特爾也按照計劃的那樣在處理器內部整合內存控製器,這樣導致北橋芯片將變得不那麽重要。但改變了處理器訪問主存的方式,有助於提高帶寬、降低內存延時和提升處理器性
  製造工藝:現在cpu的製造工藝是45納米。
著名廠商
  ·intel公司
  intel是生産cpu的老大哥,它占有80%多的市場份額,intel生産的cpu就成了事實上的x86cpu技術規範和標準。最新的酷睿2成為cpu的首選。
  ·amd公司
  目前使用的cpu有好幾傢公司的産品,除了intel公司外,最有力的挑戰的就是amd公司,最新的athlon64x2和閃竜具有很好性價比,尤其采用了3dnow+技術,使其在3d上有很好的表現。
  ·via中國威盛
  via威盛是臺灣一傢主板芯片組廠商,收購了前述的 cyrix和idt的cpu部門,推出了自己的cpu,性能可以與intel的經濟型cpu相比,功耗衹有1w,在intel與amd的雙重壓迫下艱難生存。
  ·cyrix
  曾經風靡一時的世界第三大cpu生産廠傢,現在被via與amd分別收購生産綫與技術。
  ·全美達·nexgen·idt公司
  曾經的輝煌,因amd與intel大廠之間的競爭而漸漸退出市場。
  ·ibm公司
  美國國傢半導體公司ibm,使其終於擁有了自己的芯片生産綫,其成品將會日益完善和完備。現在的mii性能也不錯,尤其是它的價格很低。
  ·國産竜芯
  godson 小名狗剩,是國有自主知識産權的通用處理器,目前已經有2代産品。
  最新的竜芯2f已經趕上intel中端p4的水平
發展歷程
  任何東西從發展到壯大都會經歷一個過程,cpu能夠發展到今天這個規模和成就,其中的發展史更是耐人尋味。作為電腦之“芯”的cpu也不例外,本文讓我們進入時間不長卻風雲激蕩的cpu發展歷程中去。在這個回顧的過程中,我們主要敘述了目前兩大cpu巨頭——intel和amd的産品發展歷程,對於其他的cpu公司,例如cyrix和idt等,因為其産品我們極少見到,篇幅所限我們就不再纍述了。
  一、x86時代的cpu
  cpu的溯源可以一直去到1971年。在那一年,當時還處在發展階段的intel公司推出了世界上第一臺微處理器4004。這不但是第一個用於計算器的4位微處理器,也是第一款個人有能力買得起的電腦處理器!!4004含有2300個晶體管,功能相當有限,而且速度還很慢,被當時的藍色巨人ibm以及大部分商業用戶不屑一顧,但是它畢竟是劃時代的産品,從此以後,intel便與微處理器結下了不解之緣。可以這麽說,cpu的歷史發展歷程其實也就是intel公司x86係列cpu的發展歷程,我們就通過它來展開我們的“cpu歷史之旅”。
  1978年,intel公司再次領導潮流,首次生産出16位的微處理器,並命名為i8086,同時還生産出與之相配合的數學協處理器i8087,這兩種芯片使用相互兼容的指令集,但在i8087指令集中增加了一些專門用於對數、指數和三角函數等數學計算指令。由於這些指令集應用於i8086和i8087,所以人們也這些指令集統一稱之為x86指令集。雖然以後intel又陸續生産出第二代、第三代等更先進和更快的新型cpu,但都仍然兼容原來的x86指令,而且intel在後續cpu的命名上沿用了原先的x86序列,直到後來因商標註册問題,纔放棄了繼續用阿拉伯數字命名。至於在後來發展壯大的其他公司,例如amd和cyrix等,在486以前(包括486)的cpu都是按intel的命名方式為自己的x86係列cpu命名,但到了586時代,市場競爭越來越厲害了,由於商標註册問題,它們已經無法繼續使用與intel的x86係列相同或相似的命名,衹好另外為自己的586、686兼容cpu命名了。
  1979年,intel公司推出了8088芯片,它仍舊是屬於16位微處理器,內含29000個晶體管,時鐘頻率為4.77mhz,地址總綫為20位,可使用1mb內存。8088內部數據總綫都是16位,外部數據總綫是8位,而它的兄弟8086是16位。1981年8088芯片首次用於ibm pc機中,開創了全新的微機時代。也正是從8088開始,pc機(個人電腦)的概念開始在全世界範圍內發展起來。
  1982年,許多年輕的讀者尚在襁褓之中的時候,inte已經推出了劃時代的最新産品棗80286芯片,該芯片比8006和8088都有了飛躍的發展,雖然它仍舊是16位結構,但是在cpu的內部含有13.4萬個晶體管,時鐘頻率由最初的6mhz逐步提高到20mhz。其內部和外部數據總綫皆為16位,地址總綫24位,可尋址16mb內存。從80286開始,cpu的工作方式也演變出兩種來:實模式和保護模式。
  1985年intel推出了80386芯片,它是80x86係列中的第一種32位微處理器,而且製造工藝也有了很大的進步,與80286相比,80386內部內含27.5萬個晶體管,時鐘頻率為12.5mhz,後提高到20mhz,25mhz,33mhz。80386的內部和外部數據總綫都是32位,地址總綫也是32位,可尋址高達4gb內存。它除具有實模式和保護模式外,還增加了一種叫虛擬86的工作方式,可以通過同時模擬多個8086處理器來提供多任務能力。除了標準的80386芯片,也就是我們以前經常說的80386dx外,出於不同的市場和應用考慮,intel又陸續推出了一些其它類型的80386芯片:80386sx、80386sl、80386dl等。1988年推出的80386sx是市場定位在80286和80386dx之間的一種芯片,其與80386dx的不同在於外部數據總綫和地址總綫皆與80286相同,分別是16位和24位(即尋址能力為16mb)。1990年推出的80386 sl和80386 dl都是低功耗、節能型芯片,主要用於便攜機和節能型臺式機。80386 sl與80386 dl的不同在於前者是基於80386sx的,後者是基於80386dx的,但兩者皆增加了一種新的工作方式:係統管理方式(smm)。當進入係統管理方式後,cpu就自動降低運行速度、控製顯示屏和硬盤等其它部件暫停工作,甚至停止運行,進入“休眠”狀態,以達到節能目的。
  1989年,我們大傢耳熟能詳的80486芯片由intel推出,這種芯片的偉大之處就在於它實破了100萬個晶體管的界限,集成了120萬個晶體管。80486的時鐘頻率從25mhz逐步提高到33mhz、50mhz。80486是將80386和數學協處理器80387以及一個8kb的高速緩存集成在一個芯片內,並且在80x86係列中首次采用了risc(精簡指令集)技術,可以在一個時鐘周期內執行一條指令。它還采用了突發總綫方式,大大提高了與內存的數據交換速度。由於這些改進,80486的性能比帶有80387數學協處理器的80386dx提高了4倍。80486和80386一樣,也陸續出現了幾種類型。上面介紹的最初類型是80486dx。1990年推出了80486sx,它是486類型中的一種低價格機型,其與80486dx的區別在於它沒有數學協處理器。80486 dx2由係用了時鐘倍頻技術,也就是說芯片內部的運行速度是外部總綫運行速度的兩倍,即芯片內部以2倍於係統時鐘的速度運行,但仍以原有時鐘速度與外界通訊。80486 dx2的內部時鐘頻率主要有40mhz、50mhz、66mhz等。80486 dx4也是采用了時鐘倍頻技術的芯片,它允許其內部單元以2倍或3倍於外部總綫的速度運行。為了支持這種提高了的內部工作頻率,它的片內高速緩存擴大到16kb。80486 dx4的時鐘頻率為100mhz,其運行速度比66mhz的80486 dx2快40%。80486也有sl增強類型,其具有係統管理方式,用於便攜機或節能型臺式機。
  二、奔騰時代的cpu
  1、奔騰開端:
  繼承着80486大獲成功的東風,賺翻了幾倍資金的intel在1993年推出了全新一代的高性能處理器——奔騰。由於cpu市場的競爭越來越趨嚮於激烈化,intel覺得不能再讓amd和其他公司用同樣的名字來搶自己的飯碗了,於是提出了商標註册,由於在美國的法律裏面是不能用阿拉伯數字註册的,於是intel玩了哥花樣,用拉丁文去註册商標。奔騰在拉丁文裏面就是“五”的意思了。intel公司還替它起了一個相當好聽的中文名字——奔騰。奔騰的廠傢代號是p54c,奔騰的內部含有的晶體管數量高達310萬個,時鐘頻率由最初推出的60mhz和66mhz,後提高到200mhz。單單是最初版本的66mhz的奔騰微處理器,它的運算性能比33mhz的80486 dx就提高了3倍多,而100mhz的奔騰則比33mhz的80486 dx要快6至8倍。也就是從奔騰開始,我們大傢有了超頻這樣一個用盡量少的錢換取盡量多的性能的好方法。作為世界上第一個586級處理器,奔騰也是第一個令人超頻的最多的處理器,由於奔騰的製造工藝優良,所以整個係列的cpu的浮點性能也是各種各樣性能是cpu中最強的,可超頻性能最大,因此贏得了586級cpu的大部分市場。奔騰傢族裏面的頻率有60/66/75//90/100/120/133/150/166/200,至於cpu的內部頻率則是從60mhz到66mhz不等。值得一提的是,從奔騰75開始,cpu的插座技術正式從以前的socket4轉換到同時支持socket 5和7同時支持,其中socket 7還一直沿用至今。而且所有的奔騰 cpu裏面都已經內置了16k的一級緩存,這樣使它的處理性能更加強大。
  與此同時,amd公司也不甘示弱推出了k5係列的cpu。(amd公司也改名字了!)它的頻率一共有六種:75/90/100/120/133/166,內部總綫的頻率和奔騰差不多,都是60或者66mhz,雖然它在浮點 運算方面比不上奔騰,但是由於k5係列cpu都內置了24kb的一級緩存,比奔騰內置的16kb多出了一半,因此在整數運算和係統整體性能方面甚至要高於同頻率的奔騰。即便如此,因為k5係列的 交付日期一再後拖,amd公司在“586”級別的競爭中最終還是敗給了intel。 牐1、初受挫折——奔騰 pro:牐牫醪稭季萘艘徊糠諧pu市場的intel並沒有停下自己的腳步,在其他公司還在不斷追趕自己的奔騰之際,又在1996年推出了最新一代的第六代x86係列cpu——p6。p6衹是它的研究代號,上市之後p6有了一個非常響亮的名字——奔騰 pro。pentimu pro的內部含有高達550萬個的晶體管,內部時鐘頻率為133mhz,處理速度幾乎是100mhz的奔騰的2倍。pentimu pro的一級(片內)緩存為8kb指令和8kb數據。
  值得註意的是在pentimu pro的一個封裝中除pentimu pro芯片外還包括有一個256kb的二級緩存芯片,兩個芯片之間用高頻寬的內部通訊總綫互連,處理器與高速緩存的連接綫路也被安置在該封裝中,這樣就使高速緩存能更容易地運行在更高的頻率上。奔騰 pro 200mhzcpu的l2 cache就是運行在200mhz,也就是工作在與處理器相同的頻率上。這樣的設計領奔騰 pro達到了最高的性能。 而pentimu pro最引人註目的地方是它具有一項稱為“動態執行”的創新技術,這是繼奔騰在超標量體係結構上實現實破之後的又一次飛躍。pentimu pro係列的工作頻率是150/166/180/200,一級緩存都是16kb,而前三者都有256kb的二級緩存,至於頻率為200的cpu還分為三種版本,不同就在於他們的內置的緩存分別是256kb,512kb,1mb。不過由於當時緩存技術還沒有成熟,加上當時緩存芯片還非常昂貴,因此儘管pentimu pro性能不錯,但遠沒有達到拋離對手的程度,加上價格十分昂貴,一次pentimu pro實際上出售的數目非常至少,市場生命也非常的短,pentimu pro可以說是intel第一個失敗的産品。
  2、輝煌的開始——奔騰 mmx:
  intel吸取了奔騰 pro的教訓,在1996年底推出了奔騰係列的改進版本,廠傢代號p55c,也就是我們平常所說的奔騰 mmx(多能奔騰)。這款處理器並沒有集成當時賣力不討好的二級緩存,而是獨闢蹊徑,采用mmx技術去增強性能。
  mmx技術是intel最新發明的一項多媒體增強指令集技術,它的英文全稱可以翻譯“多媒體擴展指令集”。mmx是intel公司在1996年為增強奔騰 cpu在音像、圖形和通信應用方面而采取的新技術,為cpu增加了57條mmx指令,除了指令集中增加mmx指令外,還將cpu芯片內的l1緩存由原來的16kb增加到32kb(16k指命+16k數據),因此mmx cpu比普通cpu在運行含有mmx指令的程序時,處理多媒體的能力上提高了60%左右。mmx技術不但是一個創新,而且還開創了cpu開發的新紀元,後來的sse,3d now!等指令集也是從mmx發展演變過來的。
  在intel推出奔騰 mmx的幾個月後,am也推出了自己研製的新産品k6。k6係列cpu一共有五種頻率,分別是:166/200/ 233/266/300,五種型號都采用了66外頻,但是後來推出的233/266/300已經可以通過升級主板的bios 而支持100外頻,所以cpu的性能得到了一個飛躍。特別值得一提的是他們的一級緩存都提高到了64kb,比mmx足足多了一倍,因此它的商業性能甚至還優於奔騰 mmx,但由於缺少了多媒體擴展指令集這道殺手鐧,k6在包括遊戲在內的多媒體性能要遜於奔騰 mmx。
  3、優勢的確立——奔騰 Ⅱ:
  1997年五月,intel又推出了和奔騰 pro同一個級別的産品,也就是影響力最大的cpu——奔騰 Ⅱ。第一代奔騰 Ⅱ核心稱為klamath。作為奔騰Ⅱ的第一代芯片,它運行在66mhz總綫上,主頻分233、266、300、333mhz四種,接着又推出100mhz總綫的奔騰 Ⅱ,頻率有300、350、400、450mhz。奔騰ii采用了與奔騰 pro相同的核心結構,從而繼承了原有奔騰 pro處理器優秀的32位性能,但它加快了段寄存器寫操作的速度,並增加了mmx指令集,以加速16位操作係統的執行速度。由於配備了可重命名的段寄存器,因此奔騰Ⅱ可以猜測地執行寫操作,並允許使用舊段值的指令與使用新段值的指令同時存在。在奔騰Ⅱ裏面,intel一改過去bicmos製造工藝的笨拙且耗電量大的雙極硬件,將750萬個晶體管壓縮到一個203平方毫米的印模上。奔騰Ⅱ衹比奔騰 pro大6平方毫米,但它卻比奔騰 pro多容納了200萬個晶體管。由於使用衹有0.28微米的扇出門尺寸,因此加快了這些晶體管的速度,從而達到了x86前所未有的時鐘速度。
  與此同時,amd公司也不甘示弱推出了k5係列的cpu。(amd公司也改名字了!)它的頻率一共有六種:75/90/100/120/133/166,內部總綫的頻率和奔騰差不多,都是60或者66mhz,雖然它在浮點 運算方面比不上奔騰,但是由於k5係列cpu都內置了24kb的一級緩存,比奔騰內置的16kb多出了一半,因此在整數運算和係統整體性能方面甚至要高於同頻率的奔騰。即便如此,因為k5係列的 交付日期一再後拖,amd公司在“586”級別的競爭中最終還是敗給了intel。
  在接口技術方面,為了擊跨intel的競爭對手,以及獲得更加大的內部總綫帶寬,奔騰Ⅱ首次采用了最新的solt1接口標準,它不再用陶瓷封裝,而是采用了一塊帶金屬外殼的印刷電路板,該印刷電路板不但集成了處理器部件,而且還包括32kb的一級緩存。如要將奔騰Ⅱ處理器與單邊插接卡(也稱sec卡)相連,衹需將該印刷電路板(pcb)直接卡在sec卡上。sec卡的塑料封裝外殼稱為單邊插接卡盒,也稱sec(single-edgecontactcartridge)卡盒,其上帶有奔騰Ⅱ的標志和奔騰Ⅱ印模的彩色圖像。在sec卡盒中,處理器封裝與l2高速緩存和tagram均被接在一個底座(即sec卡)上,而該底座的一邊(容納處理器核心的那一邊)安裝有一個鋁製散熱片,另一邊則用黑塑料封起來。奔騰Ⅱcpu內部集合了32kb片內l1高速緩存(16k指令/16k數據);57條mmx指令;8個64位的mmx寄存器。750萬個晶體管組成的核心部分,是以203平方毫米的工藝製造出來的。處理器被固定到一個很小的印刷電路板(pcb)上,對雙嚮的smp有很好的支持。至於l2高速緩存則有,512k,屬於四路級聯片外同步突發式sram高速緩存。這些高速緩存的運行速度相當於核心處理器速度的一半(對於一個266mhz的cpu來說,即為133mhz)。奔騰Ⅱ的這種sec卡設計是插到slot1(尺寸大約相當於一個isa插槽那麽大)中。所有的slot1主板都有一個由兩個塑料支架組成的固定機構。一個sec卡可以從兩個塑料支架之間滑入slot1中。將該sec卡插入到位後,就可以將一個散熱槽附着到其鋁製散熱片上。266mhz的奔騰Ⅱ運行起來衹比200mhz的奔騰pro稍熱一些(其功率分別為38.2瓦和37.9瓦),但是由於sec卡的尺寸較大,奔騰Ⅱ的散熱槽幾乎相當於socket7或socket8處理器所用的散熱槽的兩倍那麽大。
  除了用於普通用途的奔騰Ⅱ之外,intel還推出了用於服務器和高端工作站的xeon係列處理器采用了slot 2插口技術,32kb 一級高速緩存,512kb及1mb的二級高速緩存,雙重獨立總綫結構,100mhz係統總綫,支持多達8個cpu。
  為了對抗不可一世的奔騰 Ⅱ,在1998年中,amd推出了k6-2處理器,它的核心電壓是2.2伏特,所以發熱量比較低,一級緩存是64kb,更為重要的是,為了抗衡intel的mmx指令集,amd也開發了自己的多媒體指令集,命名為3dnow!。3dnow!是一組共21條新指令,可提高三維圖形、多媒體、以及浮點運算密集的個人電腦應用程序的運算能力,使三維圖形加速器全面地發揮性能。k6-2的所有型號都內置了3dnow!指令集, 使amd公司的産品首次在某些程序應用中,在整數性能以及浮點運算性能都同時超越intel,讓intel感覺到了危機。不過和奔騰 Ⅱ相比,k6-2仍然沒有集成二級緩存,因此儘管廣受好評,但始終沒有能在市場占有率上戰勝奔騰Ⅱ。
  4、廉價高性能cpu的開端——celeron:
  在以往,個人電腦都是一件相對奢侈的産品,作為電腦核心部件的cpu,價格幾乎都以千元來計算,不過隨着時代的發展,大批用戶急需廉價而使用的家庭電腦,連帶對廉價cpu的需求也急劇增長了。
  在奔騰 Ⅱ又再次獲得成功之際,intel的頭腦開始有點發熱,飄飄然了起來,將全部力量都集中在高端市場上,從而給amd,cyrix等等公司造成了不少 乘虛而入的機會,眼看着性能價格比不如對手的産品,而且低端市場一再被蠶食,intel不能眼看着自己的發傢之地就這樣落入他人手中,又與1998年全新推出了面嚮低端市場,性能價格比相當厲害的cpu——celeron,賽揚處理器。
  celeron可以說是intel為搶占低端市場而專門推出的,當時1000美元以下pc的熱銷,令amd等中小公司在與intel的抗爭中打了個漂亮的翻身仗,也令intel如芒刺在背。於是,intel把奔騰 ii的二級緩存和相關電路抽離出來,再把塑料盒子也去掉,再改一個名字,這就是celeron。中文名稱為賽揚處理器。 最初的celeron采用0.35微米工藝製造,外頻為66mhz,主頻有266與300兩款。接着又出現了0.25微米製造工藝的celeron333。
  不過在開始階段,celeron並不很受歡迎,最為人所詬病的是其抽掉了芯片上的l2 cache,自從在奔騰 Ⅱ嘗到甜頭以後,大傢都知道了二級緩存的重要性,因而想到賽揚其實是一個被閹割了的産品,性能肯定不怎麽樣。實際應用中也證實了這種想法,celeron266裝在技嘉bx主板上,性能比pii266下降超過25%!而相差最大的就是經常須要用到二級緩存的程序。
  intel也很快瞭解到這個情況,於是隨機應變,推出了集成128kb二級緩存的celeron,起始頻率為300mhz,為了和沒有集成二級緩存的同頻celeron區分,它被命名為celeron 300a。有一定使用電腦歷史的朋友可能都會對這款cpu記憶猶新,它集成的二級緩存容量衹有128kb,但它和cpu頻率同步,而奔騰 Ⅱ衹是cpu頻率一半,因此celeron 300a的性能和同頻奔騰 Ⅱ非常接近。更誘人的是,這款cpu的超頻性能奇好,大部分都可以輕鬆達到450mhz的頻率,要知道當時頻率最高的奔騰 Ⅱ也衹是這個頻率,而價格是celeron 300a的好幾倍。這個係列的celeron出了很多款,最高頻率一直到566mhz,纔被采用奔騰Ⅲ結構的第二代celeron所代替。
  為了降低成本,從celeron 300a開始,celeron又重投socket插座的懷抱,但它不是采用奔騰mmx的socket7,而是采用了socket370插座方式,通過370個針腳與主板相連。從此,socket370成為celeron的標準插座結構,直到現在頻率1.2ghz的celeron cpu也仍然采用這種插座。
  5、世紀末的輝煌——奔騰iii:
  在99年初,intel發佈了第三代的奔騰處理器——奔騰iii,第一批的奔騰iii 處理器采用了katmai內核,主頻有450和500mhz兩種,這個內核最大的特點是更新了名為sse的多媒體指令集,這個指令集在mmx的基礎上添加了70條新指令,以增強三維和浮點應用,並且可以兼容以前的所有mmx程序。
  不過平心而論,katmai內核的奔騰iii除了上述的sse指令集以外,吸引人的地方並不多,它仍然基本保留了奔騰ii的架構,采用0.25微米工藝,100mhz的外頻,slot1的架構,512kb的二級緩存(以cpu的半速運行)因而性能提高的幅度並不大。不過在奔騰iii剛上市時卻掀起了很大的熱潮,曾經有人以上萬元的高價去買第一批的奔騰iii。
  可以大幅提升,從500mhz開始,一直到1.13ghz,還有就是超頻性能大幅提高,幅度可以達到50%以上。此外它的二級緩存也改為和cpu主頻同步,但容量縮小為256kb。
  除了製程帶來的改進以外,部分coppermine 奔騰iii還具備了133mhz的總綫頻率和socket370的插座,為了區分它們,intel在133mhz總綫的奔騰iii型號後面加了個“b”, socket370插座後面加了個“e”,例如頻率為550mhz,外頻為133mhz的socket370 奔騰iii就被稱為550eb。
  看到coppermine核心的奔騰iii大受歡迎,intel開始着手把celeron處理器也轉用了這個核心,在2000年中,推出了coppermine128核心的celeron處理器,俗稱celeron2,由於轉用了0.18的工藝,celeron的超頻性能又得到了一次飛躍,超頻幅度可以達到100%。
  6、amd的絶地反擊——athlon
  在amd公司方面,剛開始時為了對抗奔騰iii,曾經推出了k6-3處理器。k6-3處理器是三層高速緩存(trilevel)結構設計,內建有64k的第一級高速緩存(level 1)及256k的第二層高速緩存(level 2),主板上則配置第三級高速緩存(level 3)。k6-3處理器還支持增強型的3d now!指令集。由於成本上和成品率方面的問題,k6-3處理器在臺式機市場上並不是很成功,因此它逐漸從臺式機市場消失,轉進筆記本市場。
  真正讓amd揚眉吐氣的是原來代號k7的athlon處理器。athlon具備超標量、超管綫、多流水綫的risc核心(3way superscalar risc core),采用0.25微米工藝,集成2,200萬個晶體管,athlon包含了三個解碼器,三個整數執行單元(ieu),三個地址生成單元(agu),三個多媒體單元(就是浮點運算單元),athlon可以在同一個時鐘周期同時執行三條浮點指令,每個浮點單元都是一個完全的管道。k7包含3個解碼器,由解碼器將解碼後的macroops指令(k7把x86指令解碼成macroops指令,把長短不一的x86指令轉換成長短一致的macroops指令,可以充分發揮risc核心的威力)送給指令控製單元,指令控製單元能同時控製(保存)72條指令。再把指令送給整數單元或多媒體單元。整數單元可以同時調度18條指令。每個整數單元都是一個獨立的管道,調度單元可以對指令進行分支預測,可以亂序執行。k7的多媒體單元(也叫浮點單元)有可以重命名的堆棧寄存器,浮點調度單元同時可以調度36條指令,浮點寄存器可以保存88條指令。在三個浮點單元中,有一個加法器,一個乘法器,這兩個單元可以執行mmx指令和3dnow指令。還有一個浮點單元負責數據的裝載和保存。由於k7強大的浮點單元,使amd處理器在浮點上首次超過了intel當時的處理器。
  athlon內建128kb全速高速緩存(l1 cache),芯片外部則是1/2時頻率、512kb容量的二級高速緩存(l2 cache),最多可支持到8mb的l2 cache,大的緩存可進一步提高服務器係統所需要的龐大數據吞吐量。
  athlon的封裝和外觀跟pentium Ⅱ相似,但athlon采用的是slot a接口規格。slot a接口源於alpha ev6總綫,時鐘頻率高達200mhz,使峰值帶寬達到1.6gb/s,在內存總綫上仍然兼容傳統的100mhz總綫,現這樣就保護了用戶的投資,也降低了成本。後來還采用性能更高的ddr sdram,這和intel力推的800mhz rambus的數據吞吐量差不多。ev6總綫最高可以支持到400mhz,可以完善的支持多處理器。所以具有天生的優勢,要知道slot1衹支持雙處理器而slota可支持4處理器。slota外觀看起來跟傳統的slot1插槽很像,就像slot1插槽倒轉180度一樣,但兩者在電氣規格、總綫協議是完全不兼容的。slot 1/socket370的cpu,是無法安裝到slot a插槽的athlon主板上,反之亦然。
  三、踏入新世紀的cpu
  進入新世紀以來,cpu進入了更高速發展的時代,以往可望而不可及的1ghz大關被輕鬆突破了,在市場分佈方面,仍然是intel跟amd公司在兩雄爭霸,它們分別推出了pentium4、tualatin核心pentium Ⅱ和celeron、tunderbird核心athlon、athlonxp和duron等處理器,競爭日益激烈。
  1、在intel方面,在上個世紀末的2000年11月,intel發佈了旗下第四代的pentium處理器,也就是我們天天都能接觸到的pentium 4。pentium 4沒有沿用piii的架構,而是采用了全新的設計,包括等效於的400mhz前端總綫(100 x 4), sse2指令集,256k-512kb的二級緩存,全新的超管綫技術及netburst架構,起步頻率為1.3ghz。
  第一個pentium4核心為willamette,全新的socket 423插座,集成256kb的二級緩存,支持更為強大的sse2指令集,多達20級的超標量流水綫,搭配i850/i845係列芯片組,隨後intel陸續推出了1.4ghz-2.0ghz的willamette p4處理器,而後期的p4處理器均轉到了針角更多的socket 478插座。
  和奔騰iii一樣,第一個pentium4核心並不受到太多的好評,主要原因是新的cpu架構還不能受到程序軟件的充分支持,因此pentium4經常大幅落後於同頻的athlon,甚至還如intel自己的奔騰iii。但在一年以後,intel發佈了第二個pentium4核心,代號為northwood,改用了更為精細的0.13微米製程,集成了更大的512kb二級緩存,性能有了大幅的提高,加上intel孜孜不倦的推廣和主板芯片廠傢的支持,目前pentium4已經成為最受歡迎的中高端處理器。
  在低端cpu方面,intel發佈了第三代的celeron核心,代號為tualatin,這個核心也轉用了0.13微米的工藝,與此同時二級緩存的容量提高到256kb,外頻也提高到100mhz,目前tualatin celeron的主頻有1.0、1.1、1.2、1.3ghz等型號。intel也推出了tualatin核心的奔騰iii,集成了更大的512kb二級緩存,但它們衹應用於服務器和筆記本電腦市場,在臺式機市場很少能看到。
  2、在amd方面,在2000年中發佈了第二個athlon核心——tunderbird,這個核心的athlon有以下的改進,首先是製造工藝改進為0.18微米,其次是安裝界面改為了socketa,這是一種類似於socket370,但針腳數為462的安裝接口。最後是二級緩存改為256kb,但速度和cpu同步,與coppermine核心的奔騰iii一樣。
  tunderbird核心的athlon不但在性能上要稍微領先於奔騰iii,而且其最高的主頻也一直比奔騰iii高,1ghz頻率的里程碑就是由這款cpu首先達到的。不過隨着pentium4的發佈,tunderbird開始在頻率上落後於對手,為此,amd又發佈了第三個athlon核心——palomino,並且采用了新的頻率標稱制度,從此athlon型號上的數字並不代表實際頻率,而是根據一個公式換算相當於競爭對手(也就是intel)産品性能的頻率,名字也改為athlonxp。例如athlonxp1500+處理器實際頻率並不是1.5ghz,而是1.33ghz。最後,athlonxp還兼容intel的sse指令集,在專門為sse指令集優化的軟件中也能充分發揮性能。
  在低端cpu方面,amd推出了duron cpu,它的基本架構和athlon一樣,衹是二級緩存衹有64kb。duron從發佈開始,就能遠遠拋離同樣主攻低端市場的celeron,而且價格更低廉,一時間duron成為低價diy兼容機的第一選擇,但duron也有它致命的弱點,首先是繼承了athlon發熱量大的特點,其次是它的核心非常脆弱,在安裝cpu散熱器時很容易損壞。因此儘管在兼容機市場很受歡迎,但始終打不進利潤最高的品牌機市場。
  四、cpu未來發展的方向
  縱觀我們上面敘述的cpu發展史,大傢不難得出以下的cpu發展方向:首先是更高的頻率,其次是更小的製造工藝,第三,更大的高速緩存。除了這三點之外,pc處理器也將緩慢的從32位數據帶寬嚮64位發展。
CPU簡介
  CPU是中央處理單元(Central Processing Unit)的縮寫,它可以被簡稱做微處理器(Microprocessor),不過經常被人們直接稱為處理器(processor)。不要因為這些簡稱而忽視它的作用,CPU是計算機的核心,其重要性好比大腦對於人一樣,因為它負責處理、運算計算機內部的所有數據,而主板芯片組則更像是心髒,它控製着數據的交換。CPU的種類决定了你使用的操作係統和相應的軟件。CPU主要由運算器、控製器、寄存器組和內部總綫等構成,是PC的核心,再配上儲存器、輸入/輸出接口和係統總綫組成為完整的PC(個人電腦)。 寄存器組用於在指令執行過後存放操作數和中間數據,由運算器完成指令所規定的運算及操作。
CPU性能指標
  1.主頻
   主頻也叫時鐘頻率,單位是MHz(或GHz),用來表示CPU的運算、處理數據的速度。CPU的主頻=外頻×倍頻係數。很多人認為主頻就决定着CPU的運行速度,這不僅是個片面的,而且對於服務器來講,這個認識也出現了偏差。至今,沒有一條確定的公式能夠實現主頻和實際的運算速度兩者之間的數值關係,即使是兩大處理器廠傢Intel英特爾和AMD,在這點上也存在着很大的爭議,從Intel的産品的發展趨勢,可以看出Intel很註重加強自身主頻的發展。像其他的處理器廠傢,有人曾經拿過一塊1G的全美達處理器來做比較,它的運行效率相當於2G的Intel處理器。
  所以,CPU的主頻與CPU實際的運算能力是沒有直接關係的,主頻表示在CPU內數字脈衝信號震蕩的速度。在Intel的處理器産品中,也可以看到這樣的例子:1 GHz Itanium芯片能夠表現得差不多跟2.66 GHz至強( Xeon)/Opteron一樣快,或是1.5 GHz Itanium 2大約跟4 GHz Xeon/Opteron一樣快。CPU的運算速度還要看CPU的流水綫、總綫等等各方面的性能指標。
  主頻和實際的運算速度是有關的,衹能說主頻僅僅是CPU性能表現的一個方面,而不代表CPU的整體性能。
  2.外頻
   外頻是CPU的基準頻率,單位是MHz。CPU的外頻决定着整塊主板的運行速度。通俗地說,在臺式機中,所說的超頻,都是超CPU的外頻(當然一般情況下,CPU的倍頻都是被鎖住的)相信這點是很好理解的。但對於服務器CPU來講,超頻是絶對不允許的。前面說到CPU决定着主板的運行速度,兩者是同步運行的,如果把服務器CPU超頻了,改變了外頻,會産生異步運行,(臺式機很多主板都支持異步運行)這樣會造成整個服務器係統的不穩定。
  目前的絶大部分電腦係統中外頻與主板前端總綫不是同步速度的,而外頻與前端總綫(FSB)頻率又很容易被混為一談,下面的前端總綫介紹談談兩者的區別。 3.前端總綫(FSB)頻率
   前端總綫(FSB)頻率(即總綫頻率)是直接影響CPU與內存直接數據交換速度。有一條公式可以計算,即數據帶寬=(總綫頻率×數據位寬)/8,數據傳輸最大帶寬取决於所有同時傳輸的數據的寬度和傳輸頻率。比方,現在的支持64位的至強Nocona,前端總綫是800MHz,按照公式,它的數據傳輸最大帶寬是6.4GB/秒。
  外頻與前端總綫(FSB)頻率的區別:前端總綫的速度指的是數據傳輸的速度,外頻是CPU與主板之間同步運行的速度。也就是說,100MHz外頻特指數字脈衝信號在每秒鐘震蕩一億次;而100MHz前端總綫指的是每秒鐘CPU可接受的數據傳輸量是100MHz×64bit÷8bit/Byte=800MB/s。
  其實現在“HyperTransport”構架的出現,讓這種實際意義上的前端總綫(FSB)頻率發生了變化。IA-32架構必須有三大重要的構件:內存控製器Hub (MCH) ,I/O控製器Hub和PCI Hub,像Intel很典型的芯片組 Intel 7501、Intel7505芯片組,為雙至強處理器量身定做的,它們所包含的MCH為CPU提供了頻率為533MHz的前端總綫,配合DDR內存,前端總綫帶寬可達到4.3GB/秒。但隨着處理器性能不斷提高同時給係統架構帶來了很多問題。而“HyperTransport”構架不但解决了問題,而且更有效地提高了總綫帶寬,比方AMD Opteron處理器,靈活的HyperTransport I/O總綫體係結構讓它整合了內存控製器,使處理器不通過係統總綫傳給芯片組而直接和內存交換數據。這樣的話,前端總綫(FSB)頻率在AMD Opteron處理器就不知道從何談起了。 4、CPU的位和字長
   位:在數字電路和電腦技術中采用二進製,代碼衹有“0”和“1”,其中無論是 “0”或是“1”在CPU中都是 一“位”。
  字長:電腦技術中對CPU在單位時間內(同一時間)能一次處理的二進製數的位數叫字長。所以能處理字長為8位數據的CPU通常就叫8位的CPU。同理32位的CPU就能在單位時間內處理字長為32位的二進製數據。字節和字長的區別:由於常用的英文字符用8位二進製就可以表示,所以通常就將8位稱為一個字節。字長的長度是不固定的,對於不同的CPU、字長的長度也不一樣。8位的CPU一次衹能處理一個字節,而32位的CPU一次就能處理4個字節,同理字長為64位的CPU一次可以處理8個字節。 5.倍頻係數
   倍頻係數是指CPU主頻與外頻之間的相對比例關係。在相同的外頻下,倍頻越高CPU的頻率也越高。但實際上,在相同外頻的前提下,高倍頻的CPU本身意義並不大。這是因為CPU與係統之間數據傳輸速度是有限的,一味追求高倍頻而得到高主頻的CPU就會出現明顯的“瓶頸”效應—CPU從係統中得到數據的極限速度不能夠滿足CPU運算的速度。一般除了工程樣版的Intel的CPU都是鎖了倍頻的,少量的如Inter 酷睿2 核心的奔騰雙核E6500K和一些至尊版的CPU不鎖倍頻,而AMD之前都沒有鎖,現在AMD推出了黑盒版CPU(即不鎖倍頻版本,用戶可以自由調節倍頻,調節倍頻的超頻方式比調節外頻穩定得多)。 6.緩存
   緩存大小也是CPU的重要指標之一,而且緩存的結構和大小對CPU速度的影響非常大,CPU內緩存的運行頻率極高,一般是和處理器同頻運作,工作效率遠遠大於係統內存和硬盤。實際工作時,CPU往往需要重複讀取同樣的數據塊,而緩存容量的增大,可以大幅度提升CPU內部讀取數據的命中率,而不用再到內存或者硬盤上尋找,以此提高係統性能。但是由於CPU芯片面積和成本的因素來考慮,緩存都很小。
  L1 Cache(一級緩存)是CPU第一層高速緩存,分為數據緩存和指令緩存。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩衝存儲器均由靜態RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般服務器CPU的L1緩存的容量通常在32—256KB。
  L2 Cache(二級緩存)是CPU的第二層高速緩存,分內部和外部兩種芯片。內部的芯片二級緩存運行速度與主頻相同,而外部的二級緩存則衹有主頻的一半。L2高速緩存容量也會影響CPU的性能,原則是越大越好,以前家庭用CPU容量最大的是512KB,現在筆記本電腦中也可以達到2M,而服務器和工作站上用CPU的L2高速緩存更高,可以達到8M以上。
  L3 Cache(三級緩存),分為兩種,早期的是外置,現在的都是內置的。而它的實際作用即是,L3緩存的應用可以進一步降低內存延遲,同時提升大數據量計算時處理器的性能。降低內存延遲和提升大數據量計算能力對遊戲都很有幫助。而在服務器領域增加L3緩存在性能方面仍然有顯著的提升。比方具有較大L3緩存的配置利用物理內存會更有效,故它比較慢的磁盤I/O子係統可以處理更多的數據請求。具有較大L3緩存的處理器提供更有效的文件係統緩存行為及較短消息和處理器隊列長度。
  其實最早的L3緩存被應用在AMD發佈的K6-III處理器上,當時的L3緩存受限於製造工藝,並沒有被集成進芯片內部,而是集成在主板上。在衹能夠和係統總綫頻率同步的L3緩存同主內存其實差不了多少。後來使用L3緩存的是英特爾為服務器市場所推出的Itanium處理器。接着就是P4EE和至強MP。Intel還打算推出一款9MB L3緩存的Itanium2處理器,和以後24MB L3緩存的雙核心Itanium2處理器。
  但基本上L3緩存對處理器的性能提高顯得不是很重要,比方配備1MB L3緩存的Xeon MP處理器卻仍然不是Opteron的對手,由此可見前端總綫的增加,要比緩存增加帶來更有效的性能提升。 7.CPU擴展指令集
   CPU依靠指令來計算和控製係統,每款CPU在設計時就規定了一係列與其硬件電路相配合的指令係統。指令的強弱也是CPU的重要指標,指令集是提高微處理器效率的最有效工具之一。從現階段的主流體係結構講,指令集可分為復雜指令集和精簡指令集兩部分,而從具體運用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)、SEE3、SSE4係列和AMD的3DNow!等都是CPU的擴展指令集,分別增強了CPU的多媒體、圖形圖象和Internet等的處理能力。通常會把CPU的擴展指令集稱為”CPU的指令集”。SSE3指令集也是目前規模最小的指令集,此前MMX包含有57條命令,SSE包含有50條命令,SSE2包含有144條命令,SSE3包含有13條命令。目前SSE4也是最先進的指令集,英特爾酷睿係列處理器已經支持SSE4指令集,AMD會在未來雙核心處理器當中加入對SSE4指令集的支持,全美達的處理器也將支持這一指令集。 8.CPU內核和I/O工作電壓
   從586CPU開始,CPU的工作電壓分為內核電壓和I/O電壓兩種,通常CPU的核心電壓小於等於I/O電壓。其中內核電壓的大小是根據CPU的生産工藝而定,一般製作工藝越小,內核工作電壓越低;I/O電壓一般都在1.6~5V。低電壓能解决耗電過大和發熱過高的問題。 9.製造工藝
   製造工藝的微米是指IC內電路與電路之間的距離。製造工藝的趨勢是嚮密集度愈高的方向發展。密度愈高的IC電路設計,意味着在同樣大小面積的IC中,可以擁有密度更高、功能更復雜的電路設計。現在主要的180nm、130nm、90nm、65nm、45納米。最近官方已經表示有32納米的製造工藝了。
  10.指令集
   (1)CISC指令集
  CISC指令集,也稱為復雜指令集,英文名是CISC,(Complex Instruction Set Computer的縮寫)。在CISC微處理器中,程序的各條指令是按順序串行執行的,每條指令中的各個操作也是按順序串行執行的。順序執行的優點是控製簡單,但計算機各部分的利用率不高,執行速度慢。其實它是英特爾生産的x86係列(也就是IA-32架構)CPU及其兼容CPU,如AMD、VIA的。即使是現在新起的X86-64(也被成AMD64)都是屬於CISC的範疇。
  要知道什麽是指令集還要從當今的X86架構的CPU說起。X86指令集是Intel為其第一塊16位CPU(i8086)專門開發的,IBM1981年推出的世界第一臺PC機中的CPU—i8088(i8086簡化版)使用的也是X86指令,同時電腦中為提高浮點數據處理能力而增加了X87芯片,以後就將X86指令集和X87指令集統稱為X86指令集。
  雖然隨着CPU技術的不斷發展,Intel陸續研製出更新型的i80386、i80486直到過去的PII至強、PIII至強、Pentium 3,Pentium 4係列,最後到今天的酷睿2係列、至強(不包括至強Nocona),但為了保證電腦能繼續運行以往開發的各類應用程序以保護和繼承豐富的軟件資源,所以Intel公司所生産的所有CPU仍然繼續使用X86指令集,所以它的CPU仍屬於X86係列。由於Intel X86係列及其兼容CPU(如AMD Athlon MP、)都使用X86指令集,所以就形成了今天龐大的X86係列及兼容CPU陣容。x86CPU目前主要有intel的服務器CPU和AMD的服務器CPU兩類。
  (2)RISC指令集
  RISC是英文“Reduced Instruction Set Computing ” 的縮寫,中文意思是“精簡指令集”。它是在CISC指令係統基礎上發展起來的,有人對CISC機進行測試表明,各種指令的使用頻度相當懸殊,最常使用的是一些比較簡單的指令,它們僅占指令總數的20%,但在程序中出現的頻度卻占80%。復雜的指令係統必然增加微處理器的復雜性,使處理器的研製時間長,成本高。並且復雜指令需要復雜的操作,必然會降低計算機的速度。基於上述原因,20世紀80年代RISC型CPU誕生了,相對於CISC型CPU ,RISC型CPU不僅精簡了指令係統,還采用了一種叫做“超標量和超流水綫結構”,大大增加了並行處理能力。RISC指令集是高性能CPU的發展方向。它與傳統的CISC(復雜指令集)相對。相比而言,RISC的指令格式統一,種類比較少,尋址方式也比復雜指令集少。當然處理速度就提高很多了。目前在中高檔服務器中普遍采用這一指令係統的CPU,特別是高檔服務器全都采用RISC指令係統的CPU。RISC指令係統更加適合高檔服務器的操作係統UNIX,現在Linux也屬於類似UNIX的操作係統。RISC型CPU與Intel和AMD的CPU在軟件和硬件上都不兼容。
  目前,在中高檔服務器中采用RISC指令的CPU主要有以下幾類:PowerPC處理器、SPARC處理器、PA-RISC處理器、MIPS處理器、Alpha處理器。
  (3)IA-64
  EPIC(Explicitly Parallel Instruction Computers,精確並行指令計算機)是否是RISC和CISC體係的繼承者的爭論已經有很多,單以EPIC體係來說,它更像Intel的處理器邁嚮RISC體係的重要步驟。從理論上說,EPIC體係設計的CPU,在相同的主機配置下,處理Windows的應用軟件比基於Unix下的應用軟件要好得多。
  Intel采用EPIC技術的服務器CPU是安騰Itanium(開發代號即Merced)。它是64位處理器,也是IA-64係列中的第一款。微軟也已開發了代號為Win64的操作係統,在軟件上加以支持。在Intel采用了X86指令集之後,它又轉而尋求更先進的64-bit微處理器,Intel這樣做的原因是,它們想擺脫容量巨大的x86架構,從而引入精力充沛而又功能強大的指令集,於是采用EPIC指令集的IA-64架構便誕生了。IA-64 在很多方面來說,都比x86有了長足的進步。突破了傳統IA32架構的許多限製,在數據的處理能力,係統的穩定性、安全性、可用性、可觀理性等方面獲得了突破性的提高。
  IA-64微處理器最大的缺陷是它們缺乏與x86的兼容,而Intel為了IA-64處理器能夠更好地運行兩個朝代的軟件,它在IA-64處理器上(Itanium、Itanium2 ……)引入了x86-to-IA-64的解碼器,這樣就能夠把x86指令翻譯為IA-64指令。這個解碼器並不是最有效率的解碼器,也不是運行x86代碼的最好途徑(最好的途徑是直接在x86處理器上運行x86代碼),因此Itanium 和Itanium2在運行x86應用程序時候的性能非常糟糕。這也成為X86-64産生的根本原因。
  (4)X86-64 (AMD64 / EM64T)
  AMD公司設計,可以在同一時間內處理64位的整數運算,並兼容於X86-32架構。其中支持64位邏輯定址,同時提供轉換為32位定址選項;但數據操作指令默認為32位和8位,提供轉換成64位和16位的選項;支持常規用途寄存器,如果是32位運算操作,就要將結果擴展成完整的64位。這樣,指令中有“直接執行”和“轉換執行”的區別,其指令字段是8位或32位,可以避免字段過長。
  x86-64(也叫AMD64)的産生也並非空穴來風,x86處理器的32bit尋址空間限製在4GB內存,而IA-64的處理器又不能兼容x86。AMD充分考慮顧客的需求,加強x86指令集的功能,使這套指令集可同時支持64位的運算模式,因此AMD把它們的結構稱之為x86-64。在技術上AMD在x86-64架構中為了進行64位運算,AMD為其引入了新增了R8-R15通用寄存器作為原有X86處理器寄存器的擴充,但在而在32位環境下並不完全使用到這些寄存器。原來的寄存器諸如EAX、EBX也由32位擴張至64位。在SSE單元中新加入了8個新寄存器以提供對SSE2的支持。寄存器數量的增加將帶來性能的提升。與此同時,為了同時支持32和64位代碼及寄存器,x86-64架構允許處理器工作在以下兩種模式:Long Mode(長模式)和Legacy Mode(遺傳模式),Long模式又分為兩種子模式(64bit模式和Compatibility mode兼容模式)。該標準已經被引進在AMD服務器處理器中的Opteron處理器.
  而今年也推出了支持64位的EM64T技術,再還沒被正式命為EM64T之前是IA32E,這是英特爾64位擴展技術的名字,用來區別X86指令集。Intel的EM64T支持64位sub-mode,和AMD的X86-64技術類似,采用64位的綫性平面尋址,加入8個新的通用寄存器(GPRs),還增加8個寄存器支持SSE指令。與AMD相類似,Intel的64位技術將兼容IA32和IA32E,衹有在運行64位操作係統下的時候,纔將會采用IA32E。IA32E將由2個sub-mode組成:64位sub-mode和32位sub-mode,同AMD64一樣是嚮下兼容的。Intel的EM64T將完全兼容AMD的X86-64技術。現在Nocona處理器已經加入了一些64位技術,Intel的Pentium 4E處理器也支持64位技術。
  應該說,這兩者都是兼容x86指令集的64位微處理器架構,但EM64T與AMD64還是有一些不一樣的地方,AMD64處理器中的NX位在Intel的處理器中將沒有提供。 11.超流水綫與超標量
   在解釋超流水綫與超標量前,先瞭解流水綫(pipeline)。流水綫是Intel首次在486芯片中開始使用的。流水綫的工作方式就象工業生産上的裝配流水綫。在CPU中由5—6個不同功能的電路單元組成一條指令處理流水綫,然後將一條X86指令分成5—6步後再由這些電路單元分別執行,這樣就能實現在一個CPU時鐘周期完成一條指令,因此提高CPU的運算速度。經典奔騰每條整數流水綫都分為四級流水,即指令預取、譯碼、執行、寫回結果,浮點流水又分為八級流水。
  超標量是通過內置多條流水綫來同時執行多個處理器,其實質是以空間換取時間。而超流水綫是通過細化流水、提高主頻,使得在一個機器周期內完成一個甚至多個操作,其實質是以時間換取空間。例如Pentium 4的流水綫就長達20級。將流水綫設計的步(級)越長,其完成一條指令的速度越快,因此才能適應工作主頻更高的CPU。但是流水綫過長也帶來了一定副作用,很可能會出現主頻較高的CPU實際運算速度較低的現象,Intel的奔騰4就出現了這種情況,雖然它的主頻可以高達1.4G以上,但其運算性能卻遠遠比不上AMD 1.2G的速竜甚至奔騰III。 12.封裝形式
   CPU封裝是采用特定的材料將CPU芯片或CPU模塊固化在其中以防損壞的保護措施,一般必須在封裝後CPU才能交付用戶使用。CPU的封裝方式取决於CPU安裝形式和器件集成設計,從大的分類來看通常采用Socket插座進行安裝的CPU使用PGA(柵格陣列)方式封裝,而采用Slot x槽安裝的CPU則全部采用SEC(單邊接插盒)的形式封裝。現在還有PLGA(Plastic Land Grid Array)、OLGA(Organic Land Grid Array)等封裝技術。由於市場競爭日益激烈,目前CPU封裝技術的發展方向以節約成本為主。
  13、多綫程
   同時多綫程Simultaneous multithreading,簡稱SMT。SMT可通過復製處理器上的結構狀態,讓同一個處理器上的多個綫程同步執行並共享處理器的執行資源,可最大限度地實現寬發射、亂序的超標量處理,提高處理器運算部件的利用率,緩和由於數據相關或Cache未命中帶來的訪問內存延時。當沒有多個綫程可用時,SMT處理器幾乎和傳統的寬發射超標量處理器一樣。SMT最具吸引力的是衹需小規模改變處理器核心的設計,幾乎不用增加額外的成本就可以顯著地提升效能。多綫程技術則可以為高速的運算核心準備更多的待處理數據,減少運算核心的閑置時間。這對於桌面低端係統來說無疑十分具有吸引力。Intel從3.06GHz Pentium 4開始,所有處理器都將支持SMT技術。 14、多核心
   多核心,也指單芯片多處理器(Chip multiprocessors,簡稱CMP)。CMP是由美國斯坦福大學提出的,其思想是將大規模並行處理器中的SMP(對稱多處理器)集成到同一芯片內,各個處理器並行執行不同的進程。與CMP比較, SMT處理器結構的靈活性比較突出。但是,當半導體工藝進入0.18微米以後,綫延時已經超過了門延遲,要求微處理器的設計通過劃分許多規模更小、局部性更好的基本單元結構來進行。相比之下,由於CMP結構已經被劃分成多個處理器核來設計,每個核都比較簡單,有利於優化設計,因此更有發展前途。目前,IBM 的Power 4芯片和Sun的 MAJC5200芯片都采用了CMP結構。多核處理器可以在處理器內部共享緩存,提高緩存利用率,同時簡化多處理器係統設計的復雜度。
  2005年下半年,Intel和AMD的新型處理器也將融入CMP結構。新安騰處理器開發代碼為Montecito,采用雙核心設計,擁有最少18MB片內緩存,采取90nm工藝製造,它的設計絶對稱得上是對當今芯片業的挑戰。它的每個單獨的核心都擁有獨立的L1,L2和L3 cache,包含大約10億支晶體管。 15、SMP
   SMP(Symmetric Multi-Processing),對稱多處理結構的簡稱,是指在一個計算機上匯集了一組處理器(多CPU),各CPU之間共享內存子係統以及總綫結構。在這種技術的支持下,一個服務器係統可以同時運行多個處理器,並共享內存和其他的主機資源。像雙至強,也就是所說的二路,這是在對稱處理器係統中最常見的一種(至強MP可以支持到四路,AMD Opteron可以支持1-8路)。也有少數是16路的。但是一般來講,SMP結構的機器可擴展性較差,很難做到100個以上多處理器,常規的一般是8個到16個,不過這對於多數的用戶來說已經夠用了。在高性能服務器和工作站級主板架構中最為常見,像UNIX服務器可支持最多256個CPU的係統。
  構建一套SMP係統的必要條件是:支持SMP的硬件包括主板和CPU;支持SMP的係統平臺,再就是支持SMP的應用軟件。為了能夠使得SMP係統發揮高效的性能,操作係統必須支持SMP係統,如WINNT、LINUX、以及UNIX等等32位操作係統。即能夠進行多任務和多綫程處理。多任務是指操作係統能夠在同一時間讓不同的CPU完成不同的任務;多綫程是指操作係統能夠使得不同的CPU並行的完成同一個任務 。
  要組建SMP係統,對所選的CPU有很高的要求,首先、CPU內部必須內置APIC(Advanced Programmable Interrupt Controllers)單元。Intel 多處理規範的核心就是高級可編程中斷控製器(Advanced Programmable Interrupt Controllers–APICs)的使用;再次,相同的産品型號,同樣類型的CPU核心,完全相同的運行頻率;最後,盡可能保持相同的産品序列編號,因為兩個生産批次的CPU作為雙處理器運行的時候,有可能會發生一顆CPU負擔過高,而另一顆負擔很少的情況,無法發揮最大性能,更糟糕的是可能導致死機。 16、NUMA技術
   NUMA即非一致訪問分佈共享存儲技術,它是由若幹通過高速專用網絡連接起來的獨立節點構成的係統,各個節點可以是單個的CPU或是SMP係統。在NUMA中,Cache 的一致性有多種解决方案,需要操作係統和特殊軟件的支持。圖2中是Sequent公司NUMA係統的例子。這裏有3個SMP模塊用高速專用網絡聯起來,組成一個節點,每個節點可以有12個CPU。像Sequent的係統最多可以達到64個CPU甚至256個CPU。顯然,這是在SMP的基礎上,再用NUMA的技術加以擴展,是這兩種技術的結合。 17、亂序執行技術
  亂序執行(out-of-orderexecution),是指CPU允許將多條指令不按程序規定的順序分開發送給各相應電路單元處理的技術。這樣將根據個電路單元的狀態和各指令能否提前執行的具體情況分析後,將能提前執行的指令立即發送給相應電路單元執行,在這期間不按規定順序執行指令,然後由重新排列單元將各執行單元結果按指令順序重新排列。采用亂序執行技術的目的是為了使CPU內部電路滿負荷運轉並相應提高了CPU的運行程序的速度。分枝技術:(branch)指令進行運算時需要等待結果,一般無條件分枝衹需要按指令順序執行,而條件分枝必須根據處理後的結果,再决定是否按原先順序進行。 18、CPU內部的內存控製器
   許多應用程序擁有更為復雜的讀取模式(幾乎是隨機地,特別是當cache hit不可預測的時候),並且沒有有效地利用帶寬。典型的這類應用程序就是業務處理軟件,即使擁有如亂序執行(out of order execution)這樣的CPU特性,也會受內存延遲的限製。這樣CPU必須得等到運算所需數據被除數裝載完成才能執行指令(無論這些數據來自CPU cache還是主內存係統)。當前低段係統的內存延遲大約是120-150ns,而CPU速度則達到了3GHz以上,一次單獨的內存請求可能會浪費200-300次CPU循環。即使在緩存命中率(cache hit rate)達到99%的情況下,CPU也可能會花50%的時間來等待內存請求的結束- 比如因為內存延遲的緣故。
  你可以看到Opteron整合的內存控製器,它的延遲,與芯片組支持雙通道DDR內存控製器的延遲相比來說,是要低很多的。英特爾也按照計劃的那樣在處理器內部整合內存控製器,這樣導致北橋芯片將變得不那麽重要。但改變了處理器訪問主存的方式,有助於提高帶寬、降低內存延時和提升處理器性
  製造工藝:現在CPU的製造工藝是0.35微米,最新的PII可以達到0.28微米,在將來的CPU製造工藝可以達到0.18微米。
CPU的廠商
  1.Intel公司
  Intel是生産CPU的老大哥,個人電腦市場,它占有80%多的市場份額,Intel生産的CPU就成了事實上的x86CPU技術規範和標準。個人電腦平臺最新的酷睿2成為CPU的首選,下一代酷睿i5、酷睿i7搶占先機,在性能上大幅領先其他廠商的産品。
  2.AMD公司
  目前使用的CPU有好幾傢公司的産品,除了Intel公司外,最有力的挑戰的就是AMD公司,最新的AMD 速竜II X2和羿竜II具有很好性價比,尤其采用了3DNOW+技術並支持SSE4.0指令集,使其在3D上有很好的表現。
  3.IBM和Cyrix
  IBM之強在於高端的實驗室,工作室的非民用CPU
  美國國傢半導體公司NS和Cyrix公司合併後,使其終於擁有了自己的芯片生産綫,其成品將會日益完善和完備。現在的MII性能也不錯,尤其是它的價格很低。
  4.IDT公司
  IDT是處理器廠商的後起之秀,但現在還不太成熟。
  5.VIA威盛公司
  VIA威盛是臺灣一傢主板芯片組廠商,收購了前述的 Cyrix和IDT的cpu部門,推出了自己的CPU
  6.國産竜芯
  GodSon 小名狗剩,是國有自主知識産權的通用處理器,目前已經有2代産品,已經能達到現在市場上INTEL和AMD的低端CPU的水平,
  7.ARM Ltd
  安謀國際科技,少數衹授權其CPU設計而沒有自行製造的公司。嵌入式應用軟件最常被ARM架構微處理器執行。
  8.Freescale Semiconductor
  前身是Motorola的飛思卡爾,設計數款嵌入裝置以及SoC PowerPC 處理器。
發展歷史
  任何東西從發展到壯大都會經歷一個過程,CPU能夠發展到今天這個規模和成就,其中的發展史更是耐人尋味。兩大CPU巨頭——Intel和AMD的産品發展歷程。
  一、X86時代的CPU
  CPU的溯源可以一直去到1971年。在那一年,當時還處在發展階段的INTEL公司推出了世界上第一臺微處理器4004。這不但是第一個用於計算器的4位微處理器,也是第一款個人有能力買得起的電腦處理器!4004含有2300個晶體管,功能相當有限,而且速度還很慢,被當時的藍色巨人IBM以及大部分商業用戶不屑一顧,但是它畢竟是劃時代的産品,從此以後,INTEL便與微處理器結下了不解之緣。可以這麽說,CPU的歷史發展歷程其實也就是 INTEL公司X86係列CPU的發展歷程,就通過它來展開的“CPU歷史之旅”。
  1978年,Intel公司再次領導潮流,首次生産出16位的微處理器,並命名為i8086,同時還生産出與之相配合的數學協處理器 i8087,這兩種芯片使用相互兼容的指令集,但在i8087指令集中增加了一些專門用於對數、指數和三角函數等數學計算指令。由於這些指令集應用於 i8086和i8087,所以人們也這些指令集統一稱之為X86指令集。雖然以後Intel又陸續生産出第二代、第三代等更先進和更快的新型CPU,但都 仍然兼容原來的X86指令,而且Intel在後續CPU的命名上沿用了原先的X86序列,直到後來因商標註册問題,纔放棄了繼續用阿拉伯數字命名。至於在 後來發展壯大的其他公司,例如AMD和Cyrix等,在486以前(包括486)的CPU都是按Intel的命名方式為自己的X86係列CPU命名,但到 586時代,市場競爭越來越厲害了,由於商標註册問題,它們已經無法繼續使用與Intel的X86係列相同或相似的命名,衹好另外為自己的586、 686兼容CPU命名了。
  1979年,INTEL公司推出了8088芯片,它仍舊是屬於16位微處理器,內含29000個晶體管,時鐘頻率為4.77MHz,地址總綫 為20位,可使用1MB內存。8088內部數據總綫都是16位,外部數據總綫是8位,而它的兄弟8086是16位。1981年8088芯片首次用於IBM PC機中,開創了全新的微機時代。也正是從8088開始,PC(personal computer——個人電腦)的概念開始在全世界範圍內發展起來。
  1982年,許多年輕的讀者尚在襁褓之中的時候,INTE已經推出了劃時代的最新産品棗80286芯片,該芯片比8006和8088都有了飛 躍的發展,雖然它仍舊是16位結構,但是在CPU的內部含有13.4萬個晶體管,時鐘頻率由最初的6MHz逐步提高到20MHz。其內部和外部數據總綫皆 為16位,地址總綫24位,可尋址16MB內存。從80286開始,CPU的工作方式也演變出兩種來:實模式和保護模式。
  Intel 80286處理器
  1985年INTEL推出了80386芯片,它是80X86係列中的第一種32位微處理器,而且製造工藝也有了很大的進步,與80286相比, 80386內部內含27.5萬個晶體管,時鐘頻率為12.5MHz,後提高到20MHz,25MHz,33MHz。80386的內部和外部數據總綫都是 32位,地址總綫也是32位,可尋址高達4GB內存。它除具有實模式和保護模式外,還增加了一種叫虛擬86的工作方式,可以通過同時模擬多個8086處理 器來提供多任務能力。除了標準的80386芯片,也就是經常說的80386DX外,出於不同的市場和應用考慮,INTEL又陸續推出了一些其它類 型的80386芯片:80386SX、80386SL、80386DL等。1988年推出的80386SX是市場定位在80286和80386DX之間的 一種芯片,其與80386DX的不同在於外部數據總綫和地址總綫皆與80286相同,分別是16位和24位(即尋址能力為16MB)。
  1990年推出的80386 SL和80386 DL都是低功耗、節能型芯片,主要用於便攜機和節能型臺式機。80386 SL與80386 DL的不同在於前者是基於80386SX的,後者是基於80386DX的,但兩者皆增加了一種新的工作方式:係統管理方式。當進入係統管理方式後,CPU 就自動降低運行速度、控製顯示屏和硬盤等其它部件暫停工作,甚至停止運行,進入“休眠”狀態,以達到節能目的。1989年,大傢耳熟能詳的80486 芯片由INTEL推出,這種芯片的偉大之處就在於它實破了100萬個晶體管的界限,集成了120萬個晶體管。80486的時鐘頻率從25MHz逐步提高到 33MHz、50MHz。80486是將80386和數學協處理器80387以及一個8KB的高速緩存集成在一個芯片內,並且在80X86係列中首次采用 RISC(精簡指令集)技術,可以在一個時鐘周期內執行一條指令。它還采用了突發總綫方式,大大提高了與內存的數據交換速度。由於這些改進,80486 的性能比帶有80387數學協處理器的80386DX提高了4倍。80486和80386一樣,也陸續出現了幾種類型。上面介紹的最初類型是 80486DX。1990年推出了80486SX,它是486類型中的一種低價格機型,其與80486DX的區別在於它沒有數學協處理器。80486 DX2由係用了時鐘倍頻技術,也就是說芯片內部的運行速度是外部總綫運行速度的兩倍,即芯片內部以2倍於係統時鐘的速度運行,但仍以原有時鐘速度與外界通 訊。80486 DX2的內部時鐘頻率主要有40MHz、50MHz、66MHz等。80486 DX4也是采用了時鐘倍頻技術的芯片,它允許其內部單元以2倍或3倍於外部總綫的速度運行。為了支持這種提高了的內部工作頻率,它的片內高速緩存擴大到 16KB。80486 DX4的時鐘頻率為100MHz,其運行速度比66MHz的80486 DX2快40%。80486也有SL增強類型,其具有係統管理方
  式,用於便攜機或節能型臺式機。
  Pentium名稱的來歷
  在286、386、486這些産品深入人心後,1992年10月20日,在紐約第十屆PC用戶大會上,葛洛夫正式宣佈Intel第五代處理器被命名Pentium,而不是586。
  事實上,Intel公司對此更名"蓄謀已久"。由於386、486係列産品性能出衆,AMD與Cyrix生産的處理器也以這些數字命名,INTEL雖大為不滿卻又無可奈何,因為按照法律,數字是不能用作商標名稱,無法註册。"偏執狂"葛洛夫在一次記者招待會上說:"如果要命名586, 就請從我身上跨過去"--充分顯示了Intel管理層重新製定品牌戰略的决心。
  一場極其廣泛的命名活動拉開了帷幕。從公司員工腦海中的靈感火花到海外友人集思廣益,一共徵集到3300多個名稱。其中甚至有586NOT、 iCUCyrix等十分有趣滑稽的名字。最後敲定的三個候選名稱是InteLigence、RADAR1和Pentium.據說當時 InteLigence的呼聲頗高,但後來公司高層對它們的最終投票卻使得Pentium脫穎而出。Pentium來自古典語的商標,PENT在希臘文中表示"5",-ium看上去是某化學元素的詞尾,用在這裏可以表示處理器的強大處理能力和高速性能。
  在Pentimu Pro的一個封裝中除Pentimu Pro芯片外還包括有一個256KB的二級緩存芯片,兩個芯片之間用高頻寬的內部通訊總綫互連,處理器與高速緩存的連接綫路也被安置在該封裝中,這樣就使 高速緩存能更容易地運行在更高的頻率上。奔騰 Pro 200MHZCPU的L2 CACHE就是運行在200MHZ,也就是工作在與處理器相同的頻率上。這樣的設計領奔騰 Pro達到了最高的性能。 而Pentimu Pro最引人註目的地方是它具有一項稱為“動態執行”的創新技術,這是繼奔騰在超標量體係結構上實現實破之後的又一次飛躍。Pentimu Pro係列的工作頻率是150/166/180/200,一級緩存都是16KB,而前三者都有256KB的二級緩存,至於頻率為200的CPU還分為三種 版本,不同就在於他們的內置的緩存分別是256KB,512KB,1MB。不過由於當時緩存技術還沒有成熟,加上當時緩存芯片還非常昂貴,因此儘管 Pentimu Pro性能不錯,但遠沒有達到拋離對手的程度,加上價格十分昂貴,一次Pentimu Pro實際上出售的數目非常至少,市場生命也非常的短,Pentimu Pro可以說是Intel第一個失敗的産品。
  2、輝煌的開始——奔騰 MMX
  INTEL吸取了奔騰 Pro的教訓,在1996年底推出了奔騰係列的改進版本,廠傢代號P55C,也就是平常所說的奔騰 MMX(多能奔騰)。這款處理器並沒有集成當時賣力不討好的二級緩存,而是獨闢蹊徑,采用MMX技術去增強性能。
  MMX技術是INTEL最新發明的一項多媒體增強指令集技術,它的英文全稱可以翻譯“多媒體擴展指令集”。MMX是Intel公司在1996年為 增強奔騰 CPU在音像、圖形和通信應用方面而采取的新技術,為CPU增加了57條MMX指令,除了指令集中增加MMX指令外,還將CPU芯片內的L1緩存由原來的 16KB增加到32KB(16K指命+16K數據),因此MMX CPU比普通CPU在運行含有MMX指令的程序時,處理多媒體的能力上提高了60%左右。MMX技術不但是一個創新,而且還開創了CPU開發的新紀元, 來的SSE,3D NOW!等指令集也是從MMX發展演變過來的。
  在Intel推出奔騰 MMX的幾個月後,AMD也推出了自己研製的新産品K6。K6係列CPU一共有五種頻率,分別是:166/200/ 233/266/300,五種型號都采用了66外頻,但是後來推出的233/266/300已經可以通過升級主板的BIOS 而支持100外頻,所以CPU的性能得到了一個飛躍。特別值得一提的是他們的一級緩存都提高到了64KB,比MMX足足多了一倍,因此它的商業性能甚至還 優於奔騰 MMX,但由於缺少了多媒體擴展指令集這道殺手鐧,K6在包括遊戲在內的多媒體性能要遜於奔騰 MMX。
  3、優勢的確立——奔騰 Ⅱ
  1997年五月,INTEL又推出了和奔騰 Pro同一個級別的産品,也就是影響力最大的CPU——奔騰 Ⅱ。第一代奔騰 Ⅱ核心稱為Klamath。作為奔騰Ⅱ的第一代芯片,它運行在66MHz總綫上,主頻分233、266、300、333Mhz四種,接着又推出 100Mhz總綫的奔騰 Ⅱ,頻率有300、350、400、450Mhz。奔騰II采用了與奔騰 Pro相同的核心結構,從而繼承了原有奔騰 Pro處理器優秀的32位性能,但它加快了段寄存器寫操作的速度,並增加了MMX指令集,以加速16位操作係統的執行速度。由於配備了可重命名的段寄存 器,因此奔騰Ⅱ可以猜測地執行寫操作,並允許使用舊段值的指令與使用新段值的指令同時存在。在奔騰Ⅱ裏面,Intel一改過去BiCMOS製造工藝的笨拙 且耗電量大的雙極硬件,將750萬個晶體管壓縮到一個203平方毫米的印模上。奔騰Ⅱ衹比奔騰 Pro大6平方毫米,但它卻比奔騰 Pro多容納了200萬個晶體管。由於使用衹有0.28微米的扇出門尺寸,因此加快了這些晶體管的速度,從而達到了X86前所未有的時鐘速度。
  Intel奔騰Ⅱ處理器
  在接口技術方面,為了擊跨INTEL的競爭對手,以及獲得更加大的內部總綫帶寬,奔騰Ⅱ首次采用了最新的solt1接口標準,它不再用陶瓷封裝, 而是采用了一塊帶金屬外殼的印刷電路板,該印刷電路板不但集成了處理器部件,而且還包括32KB的一級緩存。如要將奔騰Ⅱ處理器與單邊插接卡(也稱SEC 卡)相連,衹需將該印刷電路板(PCB)直接卡在SEC卡上。SEC卡的塑料封裝外殼稱為單邊插接卡盒,也稱SEC(Single- edgecontactCartridge)卡盒,其上帶有奔騰Ⅱ的標志和奔騰Ⅱ印模的彩色圖像。在SEC卡盒中,處理器封裝與L2高速緩存和 TagRAM均被接在一個底座(即SEC卡)上,而該底座的一邊(容納處理器核心的那一邊)安裝有一個鋁製散熱片,另一邊則用黑塑料封起來。奔騰ⅡCPU 內部集合了32KB片內L1高速緩存(16K指令/16K數據);57條MMX指令;8個64位的MMX寄存器。750萬個晶體管組成的核心部分,是以 203平方毫米的工藝製造出來的。處理器被固定到一個很小的印刷電路板(PCB)上,對雙嚮的SMP有很好的支持。至於L2高速緩存則有,512K,屬於 四路級聯片外同步突發式SRAM高速緩存。這些高速緩存的運行速度相當於核心處理器速度的一半(對於一個266MHz的CPU來說,即為133MHz)。 奔騰Ⅱ的這種SEC卡設計是插到Slot1(尺寸大約相當於一個ISA插槽那麽大)中。所有的Slot1主板都有一個由兩個塑料支架組成的固定機構。一個 SEC卡可以從兩個塑料支架之間滑入Slot1中。將該SEC卡插入到位後,就可以將一個散熱槽附着到其鋁製散熱片上。266MHz的奔騰Ⅱ運行起來衹比 200MHz的奔騰Pro稍熱一些(其功率分別為38.2瓦和37.9瓦),但是由於SEC卡的尺寸較大,奔騰Ⅱ的散熱槽幾乎相當於Socket7或 Socket8處理器所用的散熱槽的兩倍那麽大。
  除了用於普通用途的奔騰Ⅱ之外,Intel還推出了用於服務器和高端工作站的Xeon係列處理器采用了Slot 2插口技術,32KB 一級高速緩存,512KB及1MB的二級高速緩存,雙重獨立總綫結構,100MHz係統總綫,支持多達8個CPU。
  Intel奔騰Ⅱ Xeon處理器
  為了對抗不可一世的奔騰 Ⅱ,在1998年中,AMD推出了K6-2處理器,它的核心電壓是2.2伏特,所以發熱量比較低,一級緩存是64KB,更為重要的是,為了抗衡Intel 的MMX指令集,AMD也開發了自己的多媒體指令集,命名為3DNow!。3DNow!是一組共21條新指 令,可提高三維圖形、多媒體、以及浮點運算密集的個人電腦應用程序的運算能力,使三維圖形加速器全面地發揮性能。K6-2的所有型號都內置了3DNow! 指令集, 使AMD公司的産品首次在某些程序應用中,在整數性能以及浮點運算性能都同時超越INTEL,讓INTEL感覺到了危機。不過和奔騰 Ⅱ相比,K6-2仍然沒有集成二級緩存,因此儘管廣受好評,但始終沒有能在市場占有率上戰勝奔騰Ⅱ。
  4、廉價高性能CPU的開端——Celeron在以往,個人電腦都是一件相對奢侈的産品,作為電腦核心部件的CPU,價格幾乎都以千元來計算,不過隨着時代的發展,大批用戶急需廉價而使用的家庭電腦,連帶對廉價CPU的需求也急劇增長了。
  在奔騰 Ⅱ又再次獲得成功之際,INTEL的頭腦開始有點發熱,飄飄然了起來,將全部力量都集中在高端市場上,從而給AMD,CYRIX等等公司造成了不少 乘虛而入的機會,眼看着性能價格比不如對手的産品,而且低端市場一再被吞食,INTEL不能眼看着自己的發傢之地就這樣落入他人手中,又與1998年全新 推出了面嚮低端市場,性能價格比相當厲害的CPU——Celeron,賽揚處理器。
  Celeron可以說是Intel為搶占低端市場而專門推出的,當時1000美元以下PC的熱銷,令AMD等中小公司在與Intel的抗爭中 打了個漂亮的翻身仗,也令Intel如芒刺在背。於是,Intel把奔騰 II的二級緩存和相關電路抽離出來,再把塑料盒子也去掉,再改一個名字,這就是Celeron。中文名稱為賽揚處理器。 最初的Celeron采用0.35微米工藝製造,外頻為66MHz,主頻有266與300兩款。接着又出現了0.25微米製造工藝的 Celeron333。
  不過在開始階段,Celeron並不很受歡迎,最為人所詬病的是其抽掉了芯片上的L2 Cache,自從在奔騰 Ⅱ嘗到甜頭以後,大傢都知道了二級緩存的重要性,因而想到賽揚其實是一個被閹割了的産品,性能肯定不怎麽樣。實際應用中也證實了這種想法, Celeron266裝在技嘉BX主板上,性能比PII266下降超過25%!而相差最大的就是經常須要用到二級緩存的程序。
  Intel也很快瞭解到這個情況,於是隨機應變,推出了集成128KB二級緩存的Celeron,起始頻率為300Mhz,為了和沒有集成二 級緩存的同頻Celeron區分,它被命名為Celeron 300A。有一定使用電腦歷史的朋友可能都會對這款CPU記憶猶新,它集成的二級緩存容量衹有128KB,但它和CPU頻率同步,而奔騰 Ⅱ衹是CPU頻率一半,因此Celeron 300A的性能和同頻奔騰 Ⅱ非常接近。更誘人的是,這款CPU的超頻性能奇好,大部分都可以輕鬆達到450Mhz的頻率,要知道當時頻率最高的奔騰 Ⅱ也衹是這個頻率,而價格是Celeron 300A的好幾倍。這個係列的Celeron出了很多款,最高頻率一直到566MHz,纔被采用奔騰Ⅲ結構的第二代Celeron所代替。
  為了降低成本,從Celeron 300A開始,Celeron又重投Socket插座的懷抱,但它不是采用奔騰MMX的Socket7,而是采用了Socket370插座方式,通過 370個針腳與主板相連。從此,Socket370成為Celeron的標準插座結構,直到現在頻率1.2Ghz的Celeron CPU也仍然采用這種插座。
  5、世紀末的輝煌——奔騰III
  在99年初,Intel發佈了第三代的奔騰處理器——奔騰III,第一批的奔騰III 處理器采用了Katmai內核,主頻有450和500Mhz兩種,這個內核最大的特點是更新了名為SSE的多媒體指令集,這個指令集在MMX的基礎上添加 70條新指令,以增強三維和浮點應用,並且可以兼容以前的所有MMX程序。
  不過平心而論,Katmai內核的奔騰III除了上述的SSE指令集以外,吸引人的地方並不多,它仍然基本保留了奔騰II的架構,采用 0.25微米工藝,100Mhz的外頻,Slot1的架構,512KB的二級緩存(以CPU的半速運行)因而性能提高的幅度並不大。不過在奔騰III剛上 市時卻掀起了很大的熱潮,曾經有人以上萬元的高價去買第一批的奔騰III。
  可以大幅提升,從500Mhz開始,一直到1.13Ghz,還有就是超頻性能大幅提高,幅度可以達到50%以上。此外它的二級緩存也改為和CPU主頻同步,但容量縮小為256KB。
  除了製程帶來的改進以外,部分Coppermine 奔騰III還具備了133Mhz的總綫頻率和Socket370的插座,為了區分它們,Intel在133Mhz總綫的奔騰III型號後面加了個“B”, Socket370插座後面加了個“E”,例如頻率為550Mhz,外頻為133Mhz的Socket370 奔騰III就被稱為550EB。
  看到Coppermine核心的奔騰III大受歡迎,Intel開始着手把Celeron處理器也轉用了這個核心,在2000年中,推出了 Coppermine128核心的Celeron處理器,俗稱Celeron2,由於轉用了0.18的工藝,Celeron的超頻性能又得到了一次飛躍, 超頻幅度可以達到100%。
  6、AMD的絶地反擊——Athlon
  在AMD公司方面,剛開始時為了對抗奔騰III,曾經推出了K6-3處理器。K6-3處理器是三層高速緩存(TriLevel)結構設計,內建有 64K的第一級高速緩存(Level 1)及256K的第二層高速緩存(Level 2),主板上則配置第三級高速緩存(Level 3)。K6-3處理器還支持增強型的3D Now!指令集。由於成本上和成品率方面的問題,K6-3處理器在臺式機市場上並不是很成功,因此它逐漸從臺式機市場消失,轉進筆記本市場。
  真正讓AMD揚眉吐氣的是原來代號K7的Athlon處理器。Athlon具備超標量、超管綫、多流水綫的Risc核心(3Way SuperScalar Risc core),采用0.25微米工藝,集成2,200萬個晶體管,Athlon包含了三個解碼器,三個整數執行單元(IEU),三個地址生成單元 (AGU),三個多媒體單元(就是浮點運算單元),Athlon可以在同一個時鐘周期同時執行三條浮點指令,每個浮點單元都是一個完全的管道。K7包含3 個解碼器,由解碼器將解碼後的macroOPS指令(K7把X86指令解碼成macroOPS指令,把長短不一的X86指令轉換成長短一致的 macroOPS指令,可以充分發揮RISC核心的威力)送給指令控製單元,指令控製單元能同時控製(保存)72條指令。再把指令送給整數單元或多媒體單 元。整數單元可以同時調度18條指令。每個整數單元都是一個獨立的管道,調度單元可以對指令進行分支預測,可以亂序執行。K7的多媒體單元(也叫浮點單 元)有可以重命名的堆棧寄存器,浮點調度單元同時可以調度36條指令,浮點寄存器可以保存88條指令。在三個浮點單元中,有一個加法器,一個乘法器,這兩 個單元可以執行MMX指令和3DNow指令。還有一個浮點單元負責數據的裝載和保存。由於K7強大的浮點單元,使AMD處理器在浮點上首次超過了 Intel當時的處理器。
  Athlon內建128KB全速高速緩存(L1 Cache),芯片外部則是1/2時頻率、512KB容量的二級高速緩存(L2 Cache),最多可支持到8MB的L2 Cache,大的緩存可進一步提高服務器係統所需要的龐大數據吞吐量。
  Athlon的封裝和外觀跟Pentium Ⅱ相似,但Athlon采用的是Slot A接口規格。Slot A接口源於Alpha EV6總綫,時鐘頻率高達200MHz,使峰值帶寬達到1.6GB/S,在內存總綫上仍然兼容傳統的100MHz總綫,現這樣就保護了用戶的投資,也降低 了成本。後來還采用性能更高的DDR SDRAM,這和Intel力推的800MHz RAMBUS的數據吞吐量差不多。EV6總綫最高可以支持到400MHz,可以完善的支持多處理器。所以具有天生的優勢,要知道Slot1衹支持雙處理器 而SlotA可支持4處理器。SlotA外觀看起來跟傳統的Slot1插槽很像,就像Slot1插槽倒轉180度一樣,但兩者在電氣規格、總綫協議是完全 不兼容的。Slot 1/Socket370的CPU,是無法安裝到Slot A插槽的Athlon主板上,反之亦然。
  三、踏入新世紀的CPU
  21世紀以來,CPU進入了更高速發展的時代,1Ghz大關被突破,市場分佈方面,仍然是Intel跟AMD公司在兩雄爭霸,分別推出了Pentium4、Tualatin核心Pentium Ⅱ和Celeron、Tunderbird核心Athlon、AthlonXP和Duron等處理器,競爭日益激烈。
  1、在Intel方面,在20個世紀末的2000年11月,Intel發佈了旗下第四代的Pentium處理器,也就是接觸到的 Pentium 4。Pentium 4沒有沿用PIII的架構,而是采用了全新的設計,包括等效於的400MHz前端總綫(100 x 4), SSE2指令集,256K-512KB的二級緩存,全新的超管綫技術及NetBurst架構,起步頻率為1.3GHz。
  第一個Pentium4核心為Willamette,全新的Socket 423插座,集成256KB的二級緩存,支持更為強大的SSE2指令集,多達20級的超標量流水綫,搭配i850/i845係列芯片組,隨後Intel陸 續推出了1.4GHz-2.0GHz的Willamette P4處理器,而後期的P4處理器均轉到了針角更多的Socket 478插座。
  和奔騰III一樣,第一個Pentium4核心並不受到太多的好評,主要原因是新的CPU架構還不能受到程序軟件的充分支持,因此 Pentium4經常大幅落後於同頻的Athlon,甚至還如Intel自己的奔騰III。但在一年以後,Intel發佈了第二個Pentium4核心, 代號為Northwood,改用了更為精細的0.13微米製程,集成了更大的512KB二級緩存,性能有了大幅的提高,加上Intel孜孜不倦的推廣和主 板芯片廠傢的支持,目前Pentium4已經成為最受歡迎的中高端處理器。
  在低端CPU方面,Intel發佈了第三代的Celeron核心,代號為Tualatin,這個核心也轉用了0.13微米的工藝,與此同時二 級緩存的容量提高到256KB,外頻也提高到100Mhz,目前Tualatin Celeron的主頻有1.0、1.1、1.2、1.3Ghz等型號。Intel也推出了Tualatin核心的奔騰III,集成了更大的512KB二級 緩存,但它們衹應用於服務器和筆記本電腦市場,在臺式機市場很少能看到。
  2、在AMD方面,在2000年中發佈了第二個Athlon核心——Tunderbird,這個核心的Athlon有以下的改進,首先是製造工 藝改進為0.18微米,其次是安裝界面改為了SocketA,這是一種類似於Socket370,但針腳數為462的安裝接口。最後是二級緩存改為 256KB,但速度和CPU同步,與Coppermine核心的奔騰III一樣。
  Tunderbird核心的Athlon不但在性能上要稍微領先於奔騰III,而且其最高的主頻也一直比奔騰III高,1Ghz頻率的里程碑 就是由這款CPU首先達到的。不過隨着Pentium4的發佈,Tunderbird開始在頻率上落後於對手,為此,AMD又發佈了第三個Athlon核 心——Palomino,並且采用了新的頻率標稱制度,從此Athlon型號上的數字並不代表實際頻率,而是根據一個公式換算相當於競爭對手(也就是 Intel)産品性能的頻率,名字也改為AthlonXP。例如AthlonXP1500+處理器實際頻率並不是1.5Ghz,而是1.33GHz。最 後,AthlonXP還兼容Intel的SSE指令集,在專門為SSE指令集優化的軟件中也能充分發揮性能。
  在低端CPU方面,AMD推出了Duron CPU,它的基本架構和Athlon一樣,衹是二級緩存衹有64KB。Duron從發佈開始,就能遠遠拋離同樣主攻低端市場的Celeron,而且價格更 低廉,一時間Duron成為低價DIY兼容機的第一選擇,但Duron也有它致命的弱點,首先是繼承了Athlon發熱量大的特點,其次是它的核心非常脆弱,在安裝CPU散熱器時很容易損壞。
  各品牌的雙核處理器
  英特爾
  “酷睿”是一款領先節能的新型微架構,設計的出發點是提供卓然出衆的性能和能效,提高每瓦特性能,也就是所謂的能效比。早期的酷睿是基於筆記本處理器的。
各種包裝
  散裝CPU衹有一顆CPU,無包裝。通常店保一年。一般是廠傢提供給裝機商,裝機商用不掉而流入市場的。有些經銷商將散裝CPU配搭上風扇,包裝成原裝的樣子,就成了翻包貨。
  原包CPU ,也稱盒裝CPU。 原包CPU,是廠傢為零售市場推出的CPU産品,帶原裝風扇和廠傢三年質保。 其實散裝和盒裝CPU本身是沒有質量區別的,主要區別在於渠道不同,從而質保不同,盒裝基本都保3年,而散裝基本衹保1年,盒裝CPU所配的風扇是原廠封裝的風扇,而散裝不配搭風扇,或者由經銷商自己配搭風扇。
  黑盒CPU是指由廠傢推出的頂級不鎖頻CPU,比如AMD的黑盒5000+,這類CPU不帶風扇,是廠傢專門為超頻用戶而推出的零售産品。
  深包CPU,也稱翻包CPU。經銷商將散裝CPU自行包裝,加風扇。沒有廠傢質保,衹能店保,通常是店保三年。或把CPU從國外走私到境內,進行二次包裝,加風扇。這類是未稅的,價格比散裝略便宜。
百科大全
  zhongyang chuliqi
  中央處理器
  central processing unit
    處理機中解釋和執行指令的部件,簡稱CPU。中央處理器包括處理機中的運算器和係統控製器。係統控製器不僅解釋指令,執行控製型指令,還提供全機控製係統的硬件支援,因而表示和控製處理機運行狀態、實現實時處理和係統管理的中斷係統等也屬於中央處理器。CPU有兩種工作狀態,用戶程序運行時處理機處於“目的程序狀態”(簡稱“目態”);係統管理程序運行時則處於“管理程序狀態”(簡稱“管態”)。中央處理器的係統管理指令衹能在“管態”下運行,成為特權指令,用戶使用這些指令會導致係統的混亂,因而處理機監督這種違法使用的情況。CPU響應中斷可能會改變CPU的程序狀態,甚至改變它的內部狀態等。這些都需要中央處理器的硬件支援。
    指令是中央處理器直接識別的機器語言的基本單位。一條運算指令一般指定一種操作和若幹操作數;一條控製指令則指定中央處理器的狀態,設置和改變各個控製寄存器的內容。中央處理器既是一個按用戶程序要求處理數據的部件,又是負責整個係統控製的部件。它的運算器實現算術、邏輯運算和數據移位、傳送的功能;係統控製器則實現指令譯碼、尋址變址、存取數據、控製運算、執行控製指令、接收中斷請求以及對中斷按優先級排隊。
    中央處理器除包含運算器和傳統的運算控製器(簡稱控製器)外,在結構上還包含中斷係統、通用寄存器和堆棧等部分。中斷係統是係統控製器的一個重要組成部分,它由中斷請求寄存器、中斷屏蔽寄存器和排隊優先綫路組成。
    通用寄存器(以至便箋存儲器或局部存儲器),是中央處理器的重要部件。它可以在一個中央處理器時鐘周期內完成讀或寫操作。按地址存取的通用寄存器、浮點寄存器、控製寄存器、程序計數器和堆棧指針一般都放在局部存儲器中。在采用微程序控製的中央處理器中,微程序工作寄存器、微堆棧以及狀態保留寄存器均可在局部存儲器分配到存儲單元。有時,它還可用作輸入-輸出通道的數據緩衝存儲器。這種局部存儲器可以是一個或幾個。
    堆棧是中央處理器的一個常用部件。它一般按後進先出規則存取信息,故又稱“後進先出存儲器”。它包括棧基、棧限和棧頂三個指針寄存器。棧基指嚮棧的底部,棧限指示棧的最大長度,棧頂指嚮堆棧中現行信息頂部。堆棧可以設在主存儲器或局部存儲器中,也可以將棧頂若幹單元存放在寄存器中,其餘部分使用存儲器單元。堆棧常用在采用零地址機器指令的CPU中,作為嚮運算器提供操作數和存放運算結果的指定部件。堆棧還常用於中斷保護和程序調用與嵌套兩種情況。①中斷保護:CPU響應中斷時,首先將中斷現場的處理機狀態存入堆棧。待中斷處理完畢退出中斷時,從堆棧中取出保留信息、恢復原先的處理機狀態,保證被中斷程序的繼續執行。②程序調用和嵌套:從主程序轉子程序或子程序又套用子程序時,每一次都將轉子程序的返回地址壓入堆棧,如此可以層層嵌套。每個子程序的結尾,執行一條返回指令,自動從棧頂取出返回地址送入程序計數器。由於堆棧是後進先出的,可保證中央處理器從裏嚮外逐層執行子程序,實現多重子程序的遞歸。
     (陳仁甫)
    
英文解釋
  1. :  CPU (Central Processing Unit),  central processing unit (CPU),  central processor,  center processing unit (cpu)
  2. n.:  CPU,  central processing unit
法文解釋
  1. n.  (ordinateur) unité centrale
相關詞
硬件CPUamd閃竜計算機cpu超微半導體技術
INTEL8086pentium處理器信息技術運算核心更多結果...
包含詞
中央處理器模型計算機中央處理器中央處理器(製造商
中央處理器(CPU)製造商微型計算機中央處理器係統中央處理器時間
用戶中央處理器時間