CPU的工作原理浅析
2019獨角獸企業重金招聘Python工程師標準>>>
?CPU的工作原理淺析
?? 一個完整的微型計算機系統包括硬件系統和軟件系統兩大部分。?計算機硬件是指組成一臺計算機的各種物理裝置,
??????它們是由各種實在的器件所組成,是計算機進行工作的物質基礎。計算機硬件系統中最重要的組成部分是中央處理器(CPU )?。
(一)CPU的基本概念和組成
??????中央處理器簡稱CPU(Central Processing? Unit),它是計算機系統的核心,主要包括運算器和控制器兩個部件。如果把計算機比作一個人,那么CPU就是心臟,其重要作用由此可見一斑。CPU的內部結構可以分為控制單元、邏輯單元和存儲單元三大部分,三個部分相互協調,便可以進行分析,判斷、運算并控制計算機各部分協調工作。 計算機發生的所有動作都是受CPU控制的。其中運算器主要完成各種算術運算(如加、減、乘、除)和邏輯運算(?如邏輯加、邏輯乘和非運算);
? ?而控制器不具有運算功能,它只是讀取各種指令,并對指令進行分析,作出相應的控制。通常,在CPU中還有若干個寄存器,它們可直接參與運算并存放運算的中間結果。我們常說的CPU都是X86系列及兼容CPU ,所謂X86指令集是美國Intel公司為其第一塊16位CP?U(i8086)專門開發的,美國IBM公司1981年推出的世界第一臺PC機中的CPU—?i8088(i8086?簡化版)使用的也是X86指令,同時電腦中為提高浮點數據處理能力而增加的X87芯片系列數學協處理器則另外使用X87指令,以后就將X86指令集和X87指令集統稱為X86指令集。雖然隨著CPU技術的不斷發展,Intel陸續研制出更新型的i80386、i80486直到今天的Pentium?Ⅲ系列,但為了保證電腦能繼續運行以往開發的各類應用程序以保護和繼承豐富的軟件資源,Intel公司所生產的所有CPU仍然繼續使用X86指令集。
??????另外除Intel?公司之外,AMD和Cyrix等廠家也相繼生產出能使用X86指令集的CPU,由于這些CPU能運行所有的為Inte l CPU所開發的各種軟件,所以電腦業內人士就將這些CPU列為Intel的CPU兼容產品。由于Intel X86系列及其兼容CPU都使用X86指令集,就形成了今天龐大的X86系列及兼容CPU陣容。
(二)CPU主要技術參數
?????? CPU品質的高低直接決定了一個計算機系統的檔次,而?CPU的主要技術特性可以反映出CPU的大致 性能。
?????? 1、位、字節和字長
?????? CPU可以同時處理的二進制數據的位數是其最重要的一個品質標志。人們通常所說的16位機、32位機就是指該微機中的CPU可以同時處理16位、32位的二進制數據。早期有代表性的IBM PC/XT、IBM PC/AT與286機是16位機,386機和486機是32位機,586機則是64位的高檔微機。
? ? ? ? ? ? ? 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個字節。
?????? 2、CPU外頻
?????? CPU外頻也就是常見特性表中所列的CPU總線頻率,是由主板為CPU提供的基準時鐘頻率,而CPU的工作主頻則按倍頻系數乘以外頻而來。在Pentium時代,?CPU的外頻一般是60/66MHz,從Pentium II?350開始,CPU外頻提高到1O0MHz。由于正常情況下CPU總線頻率和內存總線頻率相同,所以當CPU外頻提高后,與內存之間的交換速度也相應得到了提高,對提高電腦整體運行速度影響較大。
? ? ? ? ?3、前端總線(FSB)頻率
?????? 前端總線也就是以前所說的CPU總線,由于在目前的各種主板上前端總線頻率與內存總線頻率相同,所以也是?CPU與內存以及L2
??????Cache(僅指Socket7主板)之間交換數據的工作時鐘。由于數據傳輸最大帶寬取決所同時傳輸的數據位寬度和傳輸頻率,即數據帶寬=(總線頻率(數據寬度)/8。例如Intel公司的PⅡ333使用6 6MHz的前端總線,所以它與內存之間的數據交換帶寬為528MB/s =(66×64)/8,而其PⅡ350則使用100MHz的前端總線,所以其數據交換峰值帶寬為800MB/s=(100×64)/8。由此可見前端總線速率將影響電腦運行時CPU與內存、(L2 Cache)之間的數據交換速度,實際也就影響了電腦的整體運行速度。因此目前?Intel正開始將其P Ⅲ的前端總線頻率從100MHz向133MHz過渡。?AMD公司新推出的K7雖然使用20 0MHz的前端總線頻率,但有資料表明K7CPU內核與內存之間數據交換時鐘仍然是100MHz,主頻也是以100 MHz為基頻倍頻的。
?????? 4、CPU主頻
?????? CPU主頻也叫工作頻率,是CPU內核(整數和浮點運算器)電路的實際運行頻率。在486 DX2CPU之前。CPU的主頻與外頻相等。從486DX2開始,基本上所有的CPU主頻都等于“外頻乘上倍頻系數”了。CPU的主要技術特征?。主頻是CPU內核運行時的時鐘頻率,主頻的高低直接影響CPU的運算速度。我們知道僅Pentium就可以在一個時鐘周期內執行兩條運算指令,假如主頻為100MHz的Pentium可以在1秒鐘內執行2億條指令,那么主頻為200MHz的Pentium每秒鐘就能執行4億條指令,因此CPU主頻越高,電腦運行速度就越快。需要說明的是Cyrix的CPU對主頻這項指標是采用PR性能等級參數(Performance Rating)來標稱的,表示此時CPU性能相當于Intel某主頻CPU的性能。用PR參數標稱的CPU實際運行時鐘頻率與標稱主頻并不一致。例如MⅡ-300的實際運行頻率為233MHz(66×3.5),但PR參數主頻標為300MHz,意思就是MⅡ-300相當于Intel的PⅡ-300。不過事實上也僅是MⅡ-300的Business Winston指標(整數性能)能與PⅡ-300相當而已。
?????? 5、L1和L2 Cache的容量和速率
?????? L1和L2 Cache的容量和工作速率對提高電腦速度起關鍵作用,尤其是L2 Cache對提高運行2 D圖形處理較多的商業軟件速度有顯著作用。
?????? 設置L2 Cache是486時代開始的,目的是彌補L1 Cache(一級高速緩存)容量的不足,以最大程度地減小主內存對CPU運行造成的延緩。
?????? CPU的L2 Cache分芯片內部和外部兩種。設在CPU芯片內的L2 Cache運行速度與主頻相同,而采用PⅡ方式安裝在CPU芯片外部的L2?Cache運行頻率一般為主頻的二分之一,因此其效率要比芯片內的L2 Cache要低,這就是賽揚只有128KB片內Cache但性能卻幾乎超過同主頻PⅡ(有512KB但工作時鐘為主頻一半的片外L2Cache)的重要原因。
?????? (三)CPU主要技術術語淺析
?????? 1、流水線技術
?????? 流水線(pipeline)是InteI首次在486芯片中開始使用的。流水線的工作方式就象工業生產上的裝配流水線。在CPU中由5~6個不同功能的電路單元組成一條指令處理流水線,然后將一條X86指令分成5~6步后再由這些電路單元分別執行,這樣就能實現在一個CPU時鐘周期完成一條指令,因此提高CPU的運算速度。由于486CPU只有一條流水線,通過流水線中取指令、譯碼、產生地址、執行指令和數據寫回五個電路單元分別同時執行那些已經分成五步的指令,因此實現了486CPU設計人員預期的在每個時鐘周期中完成一條指令的目的(按筆者看法,CPU實際上應該是從第五個時鐘周期才達到每周期能完成一條指令的處理速度)。到了Pentium時代、設計人員在CPU中設置了兩條具有各自獨立電路單元的流水線,因此這樣CPU在工作時就可以通過這兩條流水線來同時執行兩條指令,因此在理論上可以實現在每一個時鐘周期中完成兩條指令的目的。
?
?????? 2、超流水線和超標量技術
?????? 超流水線是指某些CPU內部的流水線超過通常的5~6步以上,例如Pentium pro的流水線就長達14步。將流水線設計的步(級)數越多,其完成一條指令的速度越快,因此才能適應工作主頻更高的CPU。超標量(supe rscalar)是指在?CPU中有一條以上的流水線,并且每時鐘周期內可以完成一條以上的指令,這種設計就叫超標量技術。
?????? 3、亂序執行技術
?????? 亂序執行(out-of-orderexecution)是指CPU采用了允許將多條指令不按程序規定的順序分開發送給各相應電路單元處理的技術。比方說程序某一段有7條指令,此時CPU將根據各單元電路的空鬧狀態和各指令能否提前執行的具體情況分析后,將能提前執行的指令立即發送給相應電路執行。當然在各單元不按規定順序執行完指令后還必須由相應電路再將運算結果重新按原來程序指定的指令順序排列后才能返回程序。這種將各條指令不按順序拆散后執行的運行方式就叫亂序執行(也有叫錯序執行)技術。采用亂序執行技術的目的是為了使CPU內部電路滿負荷運轉并相應提高了CPU的運行程序的速度。
?????? 4、分技預溯和推測執行技術
?????? 分枝預測(branch prediction)和推測執行(speculatlon execution)是CPU動態執行技術中的主要內容,動態執行是目前CPU主要采用的先進技術之一。采用分枝預測和動態執行的主要目的是為了提高CPU的運算速度。推測執行是依托于分枝預測基礎上的,在分枝預測程序是否分枝后所進行的處理也就是推測執行。
?
?????? 5、指令特殊擴展技術
?????? 自最簡單的計算機開始,指令序列便能取得運算對象,并對它們執行計算。對大多數計算機而言,這些指令同時只能執行一次計算。如需完成一些并行操作,就要連續執行多次計算。此類計算機采用的是“單指令單數據”(SISD)處理器。在介紹CPU性能中還經常提到“擴展指令”或“特殊擴展”一說,這都是指該CPU是否具有對X86指令集進行指令擴展而言。擴展指令中最早出現的是InteI公司自己的“MMX”,其次是AMD公司的“3D
??????Now!”,最后是最近的Pentium III中的“SSE”。MMX和SSE:MMX是英語“多媒體指令集”的縮寫。共有57條指令,是Intel公司第一次對自1985?年就定型的
??????X86指令集進行的擴展。MMX主要用于增強CPU對多媒體信息的處理,提高CPU處理3D圖形、視頻和音頻信息能力。但由于只對整數運算進行了優化而沒有加強浮點方面的運算能力。所以在3D圖形日趨廣泛,因特網3D網頁應用日趨增多的情況下,MMX已心有余而力不足了。MMX指令可對整數執行SIMD運算,比如-40、0、1、469或32766等等;SSE指令則增加了對浮點數的SIMD運算能力,比如-40.2337,1.4355或877343226.012等等。利用MMX和SSE,一條指令可對2個以上的數據流執行計算。就前面的例子來說,再也不必每秒執行529000條指令了,只需執行264600條即可。因為同樣的指令可同時對左、右聲道發生作用。顯示時,每秒也不需要70778880條指令,只需23592960條,因為紅、綠、藍通道均可用相同的指令控制。
?
?????? SSE:SSE是英語“因特網數據流單指令序列擴展/Internet Streaming SIMDExt? ensions”的縮寫。它是InteI公司首次應用于?Pentium III中的。實際就是原來傳聞的MMX2以后來又叫KNI(Katmai?NewInstruction),?Katmai實際上也就是現在的Pentium III。SSE共有70條指令,不但涵括了原MMX和3DNow!指令集中的所有功能,而且特別加強了SIMD浮點處理能力,另外還專門針對目前因特網的日益發展,加強了CPU處理3D網頁和其它音、象信息技術處理的能力。CPU具有特殊擴展指令集后還必須在應用程序的相應支持下才能發揮作用,因此,當目前最先進的PenthmIII 450和?Pentium II 450運行同樣沒有擴展指令支持的應用程序時,它們之間的速度區別并不大。
?????? SSE除保持原有的MMX指令外,又新增了70條指令,在加快浮點運算的同時,也改善了內存的使用效率,使內存速度顯得更快一些。對游戲性能的改善十分顯著,按Intel的說法,SSE對下述幾個領域的影響特別明顯:3D幾何運算及動畫處理;圖形處理(如Photoshop);視頻編輯/壓縮/解壓(如MPEG和DVD);語音識別;以及聲音壓縮和合成等。
?
?????? 3D
??????NOW!:AMD公司開發的多媒體擴展指令集,共有27條指令,針對MMX指令集沒有加強浮點處理能力的弱點,重點提高了AMD公司K6系列CPU對3D圖形的處理能力,但由于指令有限,該指令集主要應用于3D游戲,而對其他商業圖形應用處理支持不足。
?
?????? (四)?CPU的生產工藝及產品構架
?????? 1、CPU的生產工藝
?????? 表明CPU性能的參數中常有“工藝技術”一項,其中有“0.35um”或“0.25um”等。一般來說“工藝技術”中的數據越小表明CPU生產技術越先進。目前生產CPU主要采用CMOS技術。CMOS是英語“互補金屬氧化物半導體”的縮寫。采用這種技術生產CPU時過程中采用“光刀”加工各種電路和元器件,并采用金屬鋁沉淀在硅材料上后用?“光刀”刻成導線聯接各元器件。現在光刻的精度一般用微米(um)表示,精度越高表示生產工藝越先進。因為精度越高則可以在同樣體積上的硅材料上生產出更多的元件,所加工出的聯接線也越細,這樣生產出的CPU工作主頻可以做得很高。正因為如此,在只能使用0.65u m工藝時生產的第一代Pentium?CPU的工作主頻只有60/66MHz,在隨后生產工藝逐漸發展到0.35um、0.25um時、所以也相應生產出了工作主額高達266MHz的Pentium MMX和主頻高達500MHz的Pentium II CPU。由于目前科學技術的限制,現在的CPU生產工藝只能達到0.25 um,因此Intel、AMD、?Cyrix以及其它公司正在向0.18um和銅導線(用金屬銅沉淀在硅材料上代替原來的鋁)技術努力,估計只要生產工藝達到0.18um后生產出主頻為l000MHz的CPU就會是很平常的事了。
? ? ? ?AMD為了跟Intel繼續爭奪下個世紀的微處理器發展權,已經跟摩托羅拉(Motorola)達成一項長達七年的技術合作協議。Motorola將把最新開發的銅導線工藝技術(Copper Interconnect)?授權給AMD。AMD準備在2000年之內,制造高達1000MHz(1GHz)的K7微處理器。CPU將向速度更快、64位結構方向前進。CPU的制作工藝將更加精細,將會由現在0.25微米向0.18微米過渡,到2000年中大部分CPU廠商都將采用0.18微米工藝,2001年之后,許多廠商都將轉向0.13微米的銅制造工藝,制造工藝的提高,味著體積更小,集成度更高,耗電更少。銅技術的優勢非常明顯。主要表現在以下方面:銅的導電性能優于現在普遍應用的鋁,而且銅的電阻小,發熱量小,從而可以保證處理器在更大范圍內的可靠性;采用0.13微米以下及銅工藝芯片制造技術將有效的提高芯片的工作頻率;能減小現有管芯的體積。與傳統的鋁工藝技術相比,銅工藝制造芯片技術將有效地提高芯片的速度,減小芯片的面積,從發展來看銅工藝將最終取代鋁工藝。各廠家所生產的每一種CPU都有名稱(商標名)、代號(研制代號)和標志(專用圖案)。其中Intel公司的早期產品以i80x86命名,即以前的286、386、486等,到Intel開發出第5代產品586時由于商標注冊上的麻煩改為Pentium并同時為其注冊中文商標名“奔騰”,由此也就有了后來的PentiumPr o(高能奔騰)、Pentium?Ⅱ(奔騰2代)、PentiumⅢ(奔騰3代)以及Celeron(賽揚),目前名稱并不能反映出同類型中CPU的規格,這點將從Intel正式推出前端總線為133MHz的PⅢ后開始改進,以后只要看見CPU的名稱就可以了解這塊CPU的大致技術特性。
另外廠家對每一種CPU包括同名但技術規格不同的產品都另有一個研制代號,例如Intel公司使用0.35和0.25工藝生產的PⅡ就各有一個代號分別為:Klamath和Destrutes。同時Itel每一種名稱的CPU都有還一個專用商標圖案作為標志。AMD和Cyrix公司的情況與Intel相近,它們的每一種CPU也都有一個名稱、代號和標志,但都還沒有正式的中文名稱。
?
?????? 2、CPU的內部結構
?????? 當前我們使用的CPU內部結構實際可分為單總線和雙總線兩種結構,由于CPU內部結構特征決定CPU的封裝形式和安裝規范,所以在此作些簡單的介紹。在Intel公司研制出Pentium Pro之前,各種486以上CPU,如經典Pentium內部由主處理器、數學協處理器、控制器、各種寄存器和L1?Cache組成。至今為止仍然有大量的CPU繼續以這種內部結構模式進行生產,例如AMD的K6-2、Cyrix的MⅡ以及IDT-C6等CPU。從P6(Pen-tium?Pr o的研制代號)起,Intel為進一步提高CPU與L2 Cache間的數據交換速度,將原來設置在電腦主板上的高速緩存控制電路和L2 ?Cache(二級高速緩存)采用在同一塊硅材料上制作的方法集成到CPU芯片上,這樣CPU內核與高速緩存之間的數據交換就無需經過外部總線而直接通過CPU內部的緩存總線進行,由于CPU內核與內存和CPU與高速緩存之間的數據交換通道分離而形成首創的P6雙總線架構模式(見圖1)。從Pentium Pro?的實際應用效果看這一技術措施非常成功,是CPU研制技術上的一次重大改進。由于P6雙總線結構的優越性,因此凡是內部具有L2 ?Cache?和高速緩存控制器的CPU都由傳統的單總線模式過渡到雙總線模式,例如Intel公司的P?Ⅱ、新賽揚和P?Ⅲ;AMD公司的K6-Ⅲ和K7等。
?????? 3、CPU的構架和封裝方式
?????? CPU架構是按CPU的安裝插座類型和規格確定的。目前常用的CPU按其安裝插座規范可分為Socket x和Slotx兩大架構。
?????? 其中Socket x架構CPU中又分Socket 7和Socket 370兩種,分別使用321針的Socket?7和370針的Socket370插座進行安裝。Socket 7和Socket 370插座在外形上非常相似尺寸也相同,但Socket?370插座上比Socket7多了一圈針插孔。在Slot x架構CPU中可分為Slot 1、Slot 2和Slot A三種,分別使用對應規格的Slot槽進行安裝。其中Slot 1和Slot A都是242線插槽,但在機械和電氣標準上都不相同,所以互不兼容。Slot2 是尺寸較大的插槽,專門用于安裝P?Ⅱ和P?Ⅲ序列中的Xeon。Xeon是一種專用于工作組服務器上的CPU。
?????? 封裝是CPU生產過程中的最后一道工序,封裝是采用特定的材料將CPU芯片或CPU模塊固化在其中以防損壞的保護措施,一般必須在封裝后CPU才能交付用戶使用。CPU的封裝方式取決于CPU安裝形式和器件集成設計,通常采用Socket插座進行安裝的CPU只能使用PGA(柵格陣列)方式封裝,而采用Slot?x槽安裝的CPU則全部采用SEC(單邊接插盒)的形式封裝。
?????? 目前采用PGA封裝的CPU主要有Intel公司的賽揚,AMD的K6-2、K6-Ⅲ和Cyrix公司的MⅡ,以前賽揚曾采用SEC封裝,現已逐漸全部改用PGA封裝(見圖4)。采用SEC封裝的CPU有Intel的PⅡ、PⅢ和AMD公司的K7。其中Intel的Slot架構CPU實際上分別使用SEPP、SECC和SECC2三種單邊接插盒進行封裝。
?????? 以上CPU中雖然賽揚和K6-Ⅲ內部分別集成了128KB和256KB的L2?Cache和高速緩存控制器,但由于它們是采用在同一片硅材料上一次制造出CPU內核和L2 Cache、高速緩存控制器的方法制造,所以它們的體積較小并能采用PGA方式進行封裝。不過賽揚采用PGA封裝的主要原因是降低生產成本,而K6-Ⅲ采用PGA封裝的主要原因則是因為Intel對其開發的Slot
??????1、Slot 2和Socket 370插座進行專利保護,所以A MD只能沿用Socket 7架構和采用PGA封裝方式生產K6-Ⅲ。
?????? 目前Slot架構的CPU有兩種制造方法,一是將分別制造的CPU內核芯片、高速Cache控制器芯片和?L2 Cache芯片安裝在一塊PCB(電路板)上,然后再安裝上單邊接插盒和風扇以完成CPU的最終制作。采用這類結構和方法制作的CPU有Intel的PⅡ、PⅢ和AMD的K7。二是將完整的CPU(內含CPU內核、高速Cache 控制器芯片和L2Cache芯片)芯片安裝在電路板上,此時電路板純粹只起Slot接口的安裝作用。最后同樣再安裝單邊接插盒和風扇也就形成完整的CPU。采用這種結構和方法制作的CPU只有Intel公司的部分賽揚。
?
??????Slot與Socket:CPU插槽簡介
?????
?????? Slot1是Intel PⅡ等CPU同主板的接口方式,采用的是SEC(單邊接觸插槽)接口。
?????? Slot2是近期才出現的專用于PⅡ服務器的一種CPU同主板的接口。
?????? Socket7是目前Pentium、Pentuim MMX、AMD K6、Cyrix?6x86以及IDT的WinChip等處理器廣泛使用的接口方式。
?????? Super7是AMD公司提出的一種新的CPU接口,支持100MHz的總線頻率和AGP技術,并與Socket7完全兼容。主要用于配合AMD的K6-2及最新推出的K6-3CPU。
?????? Socket370是INTEL專為賽揚配備的具有370條針狀引線(與Socket 7插座不兼容)的CPU插槽。
?????? SlotA是AMD一種同Intel PⅡ在尺寸和結構上兼容的接口方式,與AMD推出的K7處理器配合。
? ? ? ? ? ? 奔騰IV處理器架構剖析
?
?
????
?????? P4處理器硬件架構
?????? 這次正式零售版本的P4處理器全部為防靜電袋單顆封裝,產地是哥斯達黎加在處理器表面有大大的淡金黃“Pentium4”的蝕刻字樣,處理器表面全部字體如下:
?????? 1.4GHz「Intel(R) Pentium(R) 4 1.4GHZ/256/400/1.7V SL4SG COSTA RICA
??????3039A662-0437 i(M)(c)"00 4039A633」
?
?????? 1.5GHz「Intel(R) Pentium(R) 4 1.5GHZ/256/400/1.7V SL4SH COSTA RICA
??????3038A605-0285 i(M)(c)"00 4039A506
?
?????? P4處理器采用了Socket423接口,因此不能用在現有的PIII主板上,從實物圖中我們
??????可以看出來,P4處理器內核的上方和外表面有一層金屬板覆蓋,主要是散熱之用。整個處理器的尺寸要現在的PIII銅礦FCPGA封裝的處理器大不少。
?
?????? 如果大家仔細觀察一下P4處理器的表面金屬散熱片,就可以發現在其表面右下方有一個圓形小孔,通過向多家P4散熱風扇生產廠商的詢問,我們大致可以得到兩類答案,一種說法是當使用者涂抹好散熱膏,安裝好散熱風扇并開機運行之后,由于擠壓作用和受熱膨脹,部分的散熱膏將進入處理器表面右下角這個小孔,在處理器內腔和散熱片之間形成粘合作用,有助于更好的散熱。另外一種說法是這個小孔在處理器運行的時候,有助于平衡處理器內腔和外部的氣壓,幫助熱量從處理器向外對流。由于部分的散熱膏含有銀,銅等幫助散熱的金屬微粒,具有導電能力,讓這種散熱膏進入處理器內腔的后果不堪設想,因此P4處理器表面小孔的后一種解釋比較有說服力,因此在使用含有金屬微粒的散熱膏時一定要注意涂抹的范圍,不能讓這種散熱膏進入小孔。
?
?
??????技術前沿:芯片集成的未來趨勢
??????? 整個有關如何在系統芯片(SoC)方案中集成知識產權(IP)模塊的爭論中,多數討論都集中在IP的設計和傳遞機制上。很明顯,IP是未來SoC設計的核心,但還必須考慮一個重要的問題基礎硅芯片制造技術本身。
?????? 目前,多數的注意力都集中在選擇單層多元而又成熟的CMOS技術做為SoC器件的傳遞機制。確實,CMOS技術近期仍將是主導技術。CMOS技術適用的范圍不斷改變,深亞微米技術和硅工藝設計以及封裝技術的革新使器件密度達到了前所未有的高度。為在一塊硅片(或封裝單元)內實現一個電子系統所有功能的夢想提供新的機遇。
?????? 硅技術優化
?????? 在這一領域常問的一個關鍵問題是,硅芯片的工藝設計和開發過程是否有區別。在深亞微米技術的世界里,所有的方法最終都會融合成“標準”工藝,這些工藝的面市時間取決于關鍵的制造工具是否具備,特別是在光刻領域。
?????? 這種看法忽略了半導體技術發展的另一個關鍵因素如何選擇為達到目標應用的關鍵功能所需的半導體技術。
?????? 考慮一個深亞微米CMOS晶體管設計時面臨的選擇會使我們對這一問題有較好的理解。從這幅復雜的圖片中可以得到一個明顯的結論。不可能在大驅動電流的情況下同時得到低的亞閾值漏電流。低的亞閾值漏電流(即晶體管關斷時的電流消耗)對用電池供電的器件來說是至關重要的。以系統術語來說,這一電流直接與器件備用電流相關,因此也直接影響電池壽命。與此對比,對要求內部時鐘速度優化的設計來說,驅動電流應盡可能高。因為對驅動深亞微米金屬互連線的高金屬負載來說,大驅動電流有內在的優點。
?????? 因此如何開發可以同時適用這兩種類型應用的技術方案呢?LSI
??????Logic公司的(0.18μm)G12技術中采用了模塊化處理以及嚴格針對兩種不同應用的軟件庫。
?????? 結構設計時允許在同一工藝流程中制造兩個晶體管(需要的話可在一個片芯上),其中一個在1.8V時具有極佳的性能,另一個性能稍差,但在1.8V時的亞閾值漏電流極小。在一個工藝中包括這兩個晶體管,就解決了一個工藝流程中同時保證高性能和低漏電流的難題。
?????? 上面的例子很好地表明了如何根據最終應用的要求選擇合適的技術。在構建完善的技術方面存在一整套的選擇。大體上,人們可以預見完善的技術可以在單一芯片上集成DRAM、非易失存儲器、混合信號甚至RF功能。然而,不能僅從技術層面上來考慮這一問題;關鍵是要以合理的成本提供具有竟爭力的解決方案。
?????? LSI Logic的G12技術的一個關鍵集成部分仍然是混合信號的集成。對混合信號來說,必須在工藝復雜性和集成方案性能做出明確的折衷。
?????? LSI Logic解決這一問題的方法是采用一系列工藝模塊,以針對LSI
??????Logic的目標市場提供具有合適性能特點的,而且價格具有竟爭力的混合信號集成。
?????? LSI Logic的G12
??????0.13μm(Leff)工藝中增加了兩個混合信號晶體管,從而可以集成電源供電電壓范圍寬混合信號內核,在低至1.8V或2.5V的低電壓下,凈空和信號擺動問題減弱了,結果達到了較好的功率/性能平衡點。還可以支持針對機頂盒等應用中的全3.3V供電的高速度、高性能混合信號核心。
?????? G12工藝中,混合信號模塊中無源無件的精確度也增加了。有了改進的電阻技術以及優化金屬/金屬電容技術,設計者就可以實現高精度數據轉換器和集成高階濾波等數據處理功能。系統設計者會注意到板級外部器件的成本節約十分明顯。
?????? 在兩種情況下,混合信號和晶體管結構的取舍,都可以看到明顯的成本和性能優勢。然而,這并不意味著可以擴展到所有可能的技術集成。
?????? 有明確性能要求的一個例子是嵌入式DRAM領域的嵌入技術。在某些應用中,例如網絡交換機,嵌入DRAM可使系統性能獲得明顯提高。其它領域,如公共通信中,系統制造商非常喜歡嵌入DRAM,因為可以避免由于PC DRAM產品壽命周期短的影響。
?????? 在傳統數字CMOS工藝中嵌入DRAM并不是直接了當的。DRAM采用的疊層(或埋溝)電容器構造單元(通常用雙層多元工藝實現)和高性能邏輯電路的結合帶來了獨特的具有挑戰性的問題。這種情況下,成本和性能的平衡點是由采用的具體技術決定的,而非僅僅是對邏輯CMOS技術的優化擴展。
?????? 未來技術集成面臨眾多選擇?
?????? 那么未來技術的發展方向到底如何?在半導體業,預測未來是一項危險的事情。如果從今天看,我們已經有了許多具有競爭力的技術方案。今天市場上我們已經有了嵌入閃存、嵌入DRAM、嵌入混合信號和嵌入FPGA的技術。
?????? 此外,我們也注意到一些針對此類競爭性技術集成的創新封裝技術。例如,將閃存和數字CMOS電路封裝在單一芯片內并不是顯而易見的解決方案。閃速存儲器使工藝復雜性大大增加,從而增加了單位芯片面積的成本。這一成本發生在整個芯片上,對像移動電話這樣的應用,閃速存儲器在包括基帶處理及存儲器的整個芯片上占的比例很小。因此在整個數字基帶區域都要付出額外的成本。
?????? 嵌入技術的性能也在提高。0.18μm CMOSN溝道晶體管的ft大于60GHz,因此可以考慮集成IF甚至RF方案在數字CMOS工藝中。下一代技術中可能還會走得更遠。
?????? 真正成功的集成工藝技術必須能以適當的價格提供某種系統級性能。這一不證自明的陳述表述了這樣的事實,即集成本身不是追求的目的。
?????? 最大的挑戰?
?????? 如果還有什么日益成為ASIC和SoC技術的發展障礙的話,那就是利用新技術開發此類器件的成本。
?????? 利用0.13μm工藝開發此類器件掩膜的成本一般會超過40萬美元。對系統設計者、芯片設計室和芯片制造商來說,需要提供某些新的推動力。當然,人們會追求可以降低硅芯片掩膜制作成本的光刻解決方案,然而,物理定律是不能超越的,即使最好的芯片工程師也不行。這對SoC設備以及相關系統的設計意味著什么呢?
?????? 顯然,有兩個緊逼問題:其一是要求保證領先設計成功;第二是希望盡可能廣泛應用硅器件。兩種情況下,靈活性都是成功的關鍵。
?????? 嵌入FPGA提供了一個解決方案,至少可部分解決上述兩個問題。在原型硅片生產后,將設計的一些器件做為可編程器件以提供靈活性來適應不斷變化和發展的標準。這也為將設計中最困難的挑戰性部分留給可編程邏輯來解決提供了可能性。
?????? 此外,硅產品可重編程或重配置的能力提供了將同一硅片利用到不同應用中去的機會。很明顯,一些系統設計室會從中受益。
?????? Cisco Systems公司工程部經理Bill?Harris在FPGA’99會議上說:“當需要現場編程時我們寧愿不要大容量可編程器件,也不要在大塊硬件旁邊帶上可編程器件。我們只要ASIC器件中裝有FPGA內核。也就是說,通常我們需要的是固定硬件外的少量可重配置邏輯。”
?????? 結論
?????? 下一代技術的可能性有很多。成功的關鍵不僅依賴于工程師們決定怎樣去做,在技術開發的針對性以及技術為系統設計師的實際設計提供的條件也起著關鍵的作用。十分清楚的是客戶將繼續需要高水平的集成和每功能成本更低的器件。
?????? 從各個方便來看,摩爾定律仍在起作用。系統設計師將不斷挑戰更新、密度更高的技術。深亞微米幾何結構也使在單個器件內集成更多的功能成為可能,同時也對硅芯片設計者針對最終應用的設計提出了更大的挑戰。
?????? 高度集成、高密度的SoC器件的多種變化之一就是盡可能擴展其功能和用途。嵌入FPGA為此類復雜器件的用途最大化提供了可行的解決方案。
?????? 片上系統是今天的技術并代表了ASIC設計的未來。深亞微米技術不斷發展,使更加復雜的應用可以集成在單一硅芯片內,這樣的激動時刻一定會來臨的。(電子產品世界)
?測試你的硬件:CPU篇
在一臺電腦中,CPU應該屬于個部件中的心臟部件,CPU的性能直接關系到我們在電腦中的所有操作,所以說檢驗一臺電腦整體性能的好壞,首先要檢測的就是CPU的性能。因為的在電腦中的所有操作,都要經過CPU的處理,速度越快的CPU越能在單位時間內處理更多的工作。
?????? 從總體測試角度來講,在CPU的測試中主要測試的應該是CPU基本工作性能和CPU的超頻能力兩個部分。
?????? 一、基本性能測試
?????? CPU的基本性能是在CPU的出廠頻率(即為CPU所標注的頻率)下進行測試,根據各種測試軟件的不同,所進行的測試項目大致有:CPU的符點運算、CPU的整數運算、CPU的商業軟件應用、CPU的穩定性、CPU的多媒體方面應用等許多項目的測試。在這里,我們根據測試軟件的不同,來向大家介紹一下幾個主要的測試項目。
?????? 首先要介紹的當然要算是鼎鼎大名的Winbench?99了,這是ZD所制作的一系列評測軟件中的一款,可以說是最權威、也是最全面的評測軟件,其它ZD系列的評測軟件還有3D Winbench、Audio?Winbench等等。在Winbench 99中,主要測的CPU數值有兩個:一個是CPUmark? 99,這項數值表明的是CPU的整數運算的能力;另一個是FPU Win ?Mark,它是CPU浮點運算的能力數值。這兩項是CPU最直接測試結果,CPU的整數運算能力的應用主要表現在Windows等實際應用軟件使用上面,而對于復雜的3D游戲,除了要有性能出眾的顯卡以外,最重要的,就是要看CPU的浮點能力了,否則就算有再好的顯卡,也只會出現小馬拉大車的情況。舉個例子:有兩臺機器A和B,A的基本配置為賽揚450+Riva128顯卡,B為K6-2 450+VooDooⅡ顯卡,其它配置均基本相同。大家都知道,K6-2的整數運算是相當出眾的,而浮點運算則一直是K6-2
??????CPU的弱點。在運行一般Windows軟件時,兩臺機器同時啟動,結果肯定是B電腦速度領先一步,但是在運行游戲時A電腦卻明顯表現出優勢來。VooDooⅡ不用說大家也知道要比Riva 128高一個檔次,但在640x480下進行QuakeⅢDemo001的測試,A電腦的分數為26,而使用VooDooⅡ的B電腦只有21。可見CPU的整數和浮點兩個指標的區別了。
? ? ? 接下來向大家介紹的是另一個比較知名的軟件SiSoft Sandra 2001
??????Standard(以下簡稱Sandra)。這是除了ZD的Bench系列以外的另一個比較權威的測試軟件了。它可以顯示你的機器中的所有性能指數,與CPU有關的測試為:CPUBenchmark和CPU Multi-Media Benchmark這兩項。這兩項測試,可以對當前的CPU測試結果提供其它的級別CPU的測試結果進行比較,從而判斷當前CPU的性能。在CPU
??????Multi-Media Benchmark這項測試中是檢測MMX、3D
??????Now!、SSE、SSE2等多媒體指令集的表現。至于Sandra所提供的比較數據,則是根據軟件的版本的更新而改變,目前最新的版本即為:SiSoft
??????Sandra 2001 Standard。
?????? 還有一些其它軟件,它們在一般的測試中使用的不是很多,比如:CPU
??????Stability是一款測試CPU穩定性的軟件,還有專門測試PⅢCPU系列號等軟件。
?????? 在以上測試中,都需要在一個干凈的系統中進行基本條件要求Windows中只有一些基本必備的程序運行,而且在每次測試之前需要進行磁盤碎片整理,然后重起進行測試,這樣才能保證測試數據的準確性。在Winbench的Startup
??????Manager中,把所有選項設為Disable即可關閉Windows啟動時不必要的程序。
?????? 二、超頻測試
?????? 一塊CPU的超頻性能也是CPU測試中的重要項目,即使是同一種型號的、同一批次的CPU它們的超頻性能也不相同,所以必須進行仔細的超頻測試,才能判斷出一塊CPU的實際超頻性能如何。
?????? CPU的外頻、倍頻、核心電壓是CPU超頻中的幾個重要參數,CPU的實際頻率=外頻×倍頻,而CPU的核心電壓直接影響到CPU壽命,我們不建議大家來采用提高核心電壓來超頻。在目前的CPU中大都是在出廠時就把倍頻鎖死,因此,現在最簡單的超頻方法就是超外頻了。在過去的主板上是通過主板上的跳線來實現改變外頻的,現在的主板都是通過BIOS中的調節來進行要簡單得多。
?????? 現在以一款超頻性能比較強的賽揚Ⅱ533為例,向大家介紹一下什么叫做超頻的成功。賽揚Ⅱ533的倍頻為8,外頻為66MHz,我們首先把外頻設為100MHz,這時的實際頻率為800MHz,這樣就算是超頻成功了嗎?不,這只是成功超頻的第一部,下面我們來看看CPU的溫度,CPU在高速運行的時候會產生出很多的熱量,超頻以后熱量產生的更過,過多的熱量會使CPU的壽命大大的減少,甚至造成CPU的燒毀,所以必須想辦法將CPU的溫度迅速的降下來,給CPU降溫有很多的方法,但我們還是推薦使用傳統的風扇冷卻的方法,風冷相比水冷等等新型的散熱設備雖然散熱的效果不如它們,但是風冷還是最安全的,所以我們還是使用風冷吧。給你的CPU配備一個好一些的風扇就已經足可以應付超頻以后CPU產生的熱量了,這樣CPU的高溫問題就輕松的解決了,所有的問題我們都已經解決了,下面我們就要開始對CPU進行測試了,也就是來測試我們CPU的超頻是否成功,要看超頻是否成功就要進行測試來看看它的穩定性,如果穩定性沒有問題就證明CPU超頻是成功的了,測試的方法和我們上面講的方法是一樣的,我們在這就不多說了!
?????? 其實超頻的方法有很多種的,大多數人會使用主板上的硬跳線來對CPU超頻,這樣的主板跳線超頻很不方便,需要對照隨機說明書,打開機箱,找到相應設置跳針,如果用戶對計算機并不怎么熟悉,而隨機說明書配置說明講得又不是很清楚,這種硬跳線超頻就非常危險。BIOS
??????Jumpless免跳線超頻需要用戶熟悉計算機BIOS的確切含義,弄不好會把BIOS設置搞得一塌糊涂,如果超頻不成功就必須清除CMOS,又是一陣大動作。不過現在通過軟件就可以實現超頻了,這個軟件的名字是SoftFSB,通過這個軟件就可以直接在Windows窗口下調節系統總線頻率,達到超頻目的。若超頻成功,系統以后就將在此設定頻率下工作,連重新開機都不需要;超頻失敗,重新開機,系統回到原來狀態,絲毫不受影響。所謂FSB,指的是PentiumⅡ的Front
??????Side Bus,實際上就是系統頻率,Intel只不過想表明Front Side Bus比以往傳統的系統頻率表現更好。SoftFSB通過軟件改變時鐘芯片(ClockGenerator?Chip)部分寄存器(Register)數值,進而讓該芯片根據這些數值產生相應的系統總線頻率。目前許多Intel
??????CPU的倍頻被鎖定,通過提高系統總線頻率成了唯一的超頻方法。SoftFSB用法比較簡單,如果你知道主板型號,那就通過選擇主板型號來設定CPU的外頻。也可以通過時鐘芯片(Target? Clock Generator)來設定CPU的外頻,所以通過軟件實現超頻才是最佳的方案。
2
? ? 21世紀的微處理器構架:IA--64概述
? ? ?IA是英語“英特爾體系/IntelArchitecture”的縮寫,人們將Intel生產的CPU統稱為英特爾體系(IA)CPU。從386開始,桌面PC使用的CPU,包括最新推出的PentiumⅣ都還是32位構架的,所以都被列為IA-32。而IA-64是Intel即將推出的64位CPU,其物理結構和工作機理與目前的X86序列的IA-32
??????CPU完全不同。傳統IA-32微處理器架構存在一些基本的性能限制。為了達到更高的性能,處理器不僅要能更快地執行指令,而且還要在每個周期中執行更多的指令,即通常所說的"并行執行"。較好的并行執行可同時處理更多的信息,也就是提高了處理器的總體性能。在傳統的系統架構下,處理器的性能并沒有得到充分發揮。分支指令(在程序內改變執行流程)、存儲器等待時間(數據到達存儲器的時間)和現有處理器的局限性使真正的并行處理成為必要。
?????? 為了克服上述局限性,需要采用新的系統架構。傳統IA-32系統架構通過對處理器暗示并行的排序密碼來向處理器傳遞并行命令。在IA-64構架中英特爾和惠普聯合定義了一種新的被稱作"顯性并行指令計算"(EPIC)的全新系統架構技術。此軟件技術能在原有的條件下獲得最大限度的并行能力(即并行工作的潛力),并以明顯的方式傳達給硬件。同時,他們聯合在EPIC技術的基礎上定義了一種新的64位指令架構(ISA),英特爾將此技術融入其IA
??????64架構之中。新的64位ISA采用全新的方式,把顯式并行性能與推理和判斷技術結合起來,因而大大跨越了傳統架構的局限性。EPIC技術支持的IA64架構,打破了傳統架構的順序執行限制,使并行能力達到了新的水平。預測、判斷功能與顯性并行功能的創新應用令EPIC技術打破了傳統架構的局限性(如錯誤預測分支、存儲等待等),使各種運行都在業界領先。而這些概念不能直接加到現有的系統架構上,必須創立一個新的系統架構,即IA64。IA64是首個旨在充分利用并執行指令的主流系統架構。IA64架構的廣泛資源、固有可擴展性和全面兼容性,將使它成為可支持更高性能的服務器和工作站的新一代處理器系統架構。
?????? 對英特爾而言,IA-64是其下一個10到15年的架構。新的ISA將使英特爾擺脫X86架構的限制,從而設計出超越所有現有RISC
??????CPU和X86CPU的新型處理器。IA-64的處理器,具有64位尋址能力和64位寬的寄存器,所以我們稱它為64位CPU。由于具有64位尋址能力,它能夠使用1百萬TB的地址空間,足以運算企業級或超大規模的數據庫任務;64位寬的寄存器可以使CPU浮點運算達到非常高的精度。粗看起來,IA-64很像其他的64位RISC
??????CPU:指令的長度是固定的,由一個指令、兩個輸入和一個輸出寄存器組成;指令只對寄存器操作;超標量,具有多個不同的流水線或執行單元,能夠并行執行許多指令。其實IA--64處理器還具有:顯性并行性、分支預測、投機裝載等特性。IA-64確實是為提高速度而設計的,使用IA-64指令可以制造一個具有比今天的X86CPU更多執行單元的CPU,比X86CPU能進行多得多的并行處理工作。指令級并行性可促進最優化的軟件指令結構,從而使處理器能夠在相同時間內執行更多的指令。推測:推測技術允許提前載入數據,甚至在代碼分支發生以前進行。通過盡早從內存載入數據,推測技術可以避免內存等待時間。預測:預測技術避免了許多代碼分支,以及因相關的數據分支預測錯誤而導致的性能下降。IA-64還允許處理器上有更多的空間用于執行指令--更多的執行單元、更多的寄存器和更多的高速緩存。隨著處理器技術的發展為這些執行資源提供更多的空間,IA-64的性能將相應地得到增長。
?????? 自英特爾于1985年通過80386從16位跨越到32位計算以來,IA-64是迄今為止最重要的體系結構發展。作為64位處理器架構,IA-64代表了一種新型微處理器的發展方向,英特爾和惠普早在4年前就開始共同開發,并將于2001年投入批量生產。在其產品尚未正式露面前,已引起了業界的廣泛關注,同時,世界上各大計算機廠商也大幅度調整各自的戰略,以迎接挑戰。與傳統的體系結構相比,基于IA-64的處理器可以提供更高的指令級并行性(ILP)。這是通過使用推測和預測等先進技術,并輔以大量的內部硬件資源來實現的。這些技術使編譯器能夠發揮最大效能來安排指令執行,而同時使處理器亦發揮最佳效能來執行指令。這種編譯器和處理器間的合力也正是IA-64有別于其它體系結構的優勢所在。
?
轉載于:https://my.oschina.net/u/3626804/blog/1821656
總結
以上是生活随笔為你收集整理的CPU的工作原理浅析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hibernate 二级缓存和查询缓存
- 下一篇: 电子政务网站设计