CPU 作為計算機的核心,負責整個計算機系統的協調、控制以及程序運行。伴隨著大規模集成電路的技術革命以及微電子技術的發展,CPU 發展日新月異、種類繁多,其中集成的電子元件也越來越多,速度越來越快,功能越來越強。
1.主頻
主頻,即 CPU 內核工作的時鐘頻率(CPU Clock Speed),單位是 MHz 或 GHz。通常所說的某某 CPU 是多少兆赫指的就是 CPU 的主頻。
注意:很多人認為 CPU 的主頻就是其運行速度,其實不然。
CPU 的主頻表示在 CPU 內數字脈沖信號震蕩的速度,主頻和實際的運算速度存在一定的關系,但目前還沒有一個確定的公式能夠定量兩者的數值關系,因為 CPU 的運算速度還與 CPU 的流水線數目、緩存大小、指令集、CPU 的位數等指標有關。
2.外頻
外頻是 CPU 的基準頻率,單位是 MHz,是 CPU 與主板之間同步運行的工作頻率(系統時鐘頻率)。絕大部分計算機系統外頻也是內存與主板之間同步運行的頻率。
3.前端總線
前端總線(Front Side Bus,FSB)是 AMD 公司推出 K7 CPU 時提出的概念,是將 CPU連接到北橋芯片的總線,決定 CPU 與內存數據交換的速度。
數據傳輸最大帶寬取決于所有同時傳輸數據的寬度和傳輸頻率,即數據帶寬=(FSB×數據位寬)/8。例如 64 位的 CPU,前端總線是 800MHz,則它的數據傳輸最大帶寬是6.4GB/s。常見的前端總線頻率有 266MHz、333MHz、400MHz、533MHz、800MHz、1066MHz、1333MHz 等,前端總線頻率越大,表示 CPU 與內存之間的數據傳輸速率越高,更能充分發揮出 CPU 的性能。足夠大的前端總線可以保障有足夠的數據供給 CPU。較低的前端總線無法供給足夠的數據給 CPU,限制了 CPU 性能的發揮,成為系統瓶頸。
外頻與前端總線的區別:前端總線的速度是 CPU 與內存之間數據傳輸的速度,外頻是CPU 與主板之間同步運行的頻率。也就是說,100MHz 外頻特指數字脈沖信號在每秒鐘震蕩一千萬次;而 64 位處理器 100MHz 前端總線指的是每秒鐘 CPU 可接受的數據傳輸量是100MHz×64b/8 = 800MB/s。
4.倍頻
倍頻,全稱是倍頻系數,是 CPU 主頻與外頻的比值。原先并沒有倍頻概念,CPU 主頻和系統總線的速度是一樣的,但 CPU 的速度越來越快,倍頻技術也就應運而生。
CPU 主頻的計算方式為:主頻 = 外頻 × 倍頻。顯然,當外頻不變時,提高倍頻,CPU 主頻也就提高了。每一款 CPU 默認的倍頻只有一個,主板必須能支持這個倍頻。因此在選購主板和 CPU 時必須注意這點,如果兩者不匹配,系統就無法工作。俗稱的超頻就是通過設置倍頻系數,CPU 工作頻率超過 CPU 主頻。
5.CPU 的位和字長
在數字電路和計算機技術中采用二進制,只有 0 和 1,無論是 0 還是 1 在 CPU 中都是
一“位”。
CPU 在單位時間內(同一時間)能一次處理的二進制數的位數叫字長。能處理字長為8 位數據的 CPU 通常叫 8 位 CPU。同理,32 位 CPU 就能在單位時間內處理 32 位二進制數據。
字節和字長的區別:英文字符用 8 位二進制可以表示,所以將 8b 稱為一個字節。CPU字長是不固定的,8 位 CPU 一次只能處理 1B,而 32 位 CPU 一次就能處理 4B,64 位 CPU一次可以處理 8B。
6.緩存
緩存(Cache)是位于 CPU 與內存之間的臨時存儲器,容量比內存小,存取速度比內存快。Cache 中的數據實際上是內存中的一小部分,計算機工作時,CPU 需要重復讀取同樣的數據塊,如果每次都從內存中讀取,由于 CPU 速度遠高于內存速度,則內存成為計算機工作的瓶頸,Cache 正是在這種情況下出現的。
Cache 工作原理:當 CPU 要讀取一個數據時,首先從 Cache 中查找,如果找到,就立即讀取并送給 CPU 處理;如果沒有找到,就從速度相對慢的內存中讀取,同時把這個數據所在的數據塊調入 Cache 中,以便以后能夠快速地從 Cache 中讀取該數據,而不必再去讀內存。
?
?
這樣的讀取機制使 CPU 讀取 Cache 的命中率非常高(多數 CPU 可達 90%左右),也就是說 CPU 下一次要讀取的數據 90%都在 Cache 中,只有大約 10%需要從內存讀取,這樣可以大大節省 CPU 讀取數據的時間。
CPU 內核集成的緩存稱為一級緩存(L1 Cache),主板上集成的緩存稱為二級緩存(L2 Cache)。一級緩存可以進一步分為數據緩存(D-Cache)和指令緩存(I-Cache),分別用來存放數據和執行這些數據的指令,可以同時被 CPU 訪問,能夠減少爭用 Cache 造成的沖突,提高處理器效能。
7.指令集
CPU 依靠指令完成計算和控制各部件的工作,每款 CPU 在設計時就規定了一系列與其硬件電路相配合的指令系統。指令集的強弱也是 CPU 的重要指標,指令集是提高 CPU效率的有效工具之一。
從計算機體系結構講,指令集可分為復雜指令集和精簡指令集兩部分。目前常見的Intel CPU 以及 AMD CPU 均為采用 X86 架構的復雜指令集。
而從具體運用看,Intel 公司的 MMX(Multi Media Extended)、SSE、SSE2(Streaming-Single instruction multiple data-Extensions 2)和 AMD 公司的 3DNow!等都是 x86 架構 CPU的擴展指令集,分別增強了 CPU 的多媒體、圖形、圖像和 Internet 等的處理能力。
8.CPU 內核和 I/O 工作電壓
從 Pentium 開始,CPU 的工作電壓分為核心電壓和 I/O 電壓兩種,核心電壓即驅動CPU 核心芯片的電壓,I/O 電壓指驅動 I/O 電路的電壓。CPU 的核心電壓小于等于 I/O 電壓。核心電壓根據 CPU 的生產工藝而定,一般制作工藝越先進,電壓越低;I/O 電壓一般在 1.6~5V 之間。CPU 的工作電壓有明顯的下降趨勢,低工作電壓有三個優點:
(1)使 CPU 的總功耗降低,系統的運行成本相應降低,電池可以工作更長時間,對于便攜式和移動系統來說非常重要。
(2)功耗降低,發熱量減少,運行溫度不高的 CPU 可以與系統更好的配合。
(3)是提高 CPU 主頻的重要因素之一。
9.制造工藝
制造工藝是指集成電路內電路與電路之間的距離。1995 年以后,芯片制造工藝從 0.5μm、0.35 μm、0.25μm、0.18μm、0.15μm、0.13μm、90nm、65nm、45nm,發展到目前的28nm、15nm、7nm、5nm。
先進的制造工藝可以在同樣的面積上集成更多的晶體管,并降低功耗,從而減少發熱量,使 CPU 實現更多的功能和更高的性能;使 CPU 核心面積不斷減小,在相同面積的晶圓上可以制造出更多的 CPU 產品,從而降低 CPU 的售價。
10.超流水線與超標量
在解釋超流水線與超標量前,先了解流水線(Pipeline)。
流水線是 Intel 公司在 80486 CPU 中開始使用的。流水線工作方式就像工業生產上的裝配流水線,通過增加硬件實現。例如要預取指令,就增加取指令的硬件電路,在 CPU 中由 5、6 個不同功能的電路單元組成一條指令處理流水線,并將一條指令分成 5、6 步,再由這些電路單元分別執行,各步的工作在時間上重疊,從而提高 CPU 的運算速度。
超級流水線通過細化流水、提高主頻,使得在一個機器周期內完成一個甚至多個操作,其實質是以時間換空間。例如 Intel Pentium 4 的流水線長 20 級。流水線的步(級)越長,完成一條指令的速度越快,能適應主頻更高的 CPU。但是流水線過長也帶來一定的副作用,很可能會出現主頻較高的 CPU 實際運算速度較低的現象。
CPU 中內置多條流水線來同時執行多條指令,每時鐘周期內可以完成一條以上的指令,這種設計叫超標量(Superscalar)技術。
11.SMP
SMP(Symmetric Multi-Processing,對稱多處理結構)是指在一個計算機上匯集了一組結構相同的處理器(多 CPU),各 CPU 共享內存以及總線。在高性能主板和服務器中常見,例如運行 UNIX 操作系統的服務器可支持最多 256 個 CPU。
12.多核心
多核心是指單芯片多處理器(Chip Multiprocessors,CMP)。CMP 由美國斯坦福大學提出,其思想是將大規模并行處理器中的 SMP 集成到同一芯片內,各個處理器并行執行不同的進程。從體系結構角度看,SMP 比 CMP 對處理器資源利用率要高,在克服延遲影響方面更具優勢。
而 CMP 相對 SMP 的最大優勢在于其模塊化設計的簡潔性。復制簡單、設計容易,指令調度也更加簡單。同時,SMP 中多個線程對共享資源的爭用也會影響其性能,而 CMP 對共享資源的爭用要少得多,因此當應用的線程級并行性較高時,CMP 性能一般優于 SMP。此外,在設計上,更短的芯片連線使 CMP 比長導線集中式設計的 SMP 更容易提高芯片的運行頻率,從而在一定程度上起到性能優化的效果。
13.多(超)線程技術
每個正在運行的程序都是一個進程。每個進程包含一到多個線程。線程是進程中可以獨立完成一定功能的指令段。
多線程技術是指從軟件或者硬件上實現多個線程并發執行的技術。具有多線程能力的計算機因有硬件支持而能夠在同一時間執行多個線程,進而提升整體性能。具有這種能力的系統包括對稱多處理機、多核心處理器以及芯片級多處理(Chip-Level Multithreading)或同時多線程(Simultaneous Multithreading,SMT)處理器。
超線程(Hyper-Threading,HT)技術是 Intel P4 CPU 開始出現的一種技術,利用特殊的硬件指令把兩個邏輯內核模擬成兩個物理芯片,讓單個處理器能進行線程級并行計算,進而兼容多線程操作系統和軟件,減少 CPU 的閑置時間,提高 CPU 的運行效率。雖然采用超線程技術能同時執行兩個線程,但它并不像兩個真正的 CPU 那樣,每個 CPU 都具有獨立的資源。當兩個線程都同時需要某一個資源時,其中一個要暫時停止,并讓出資源,直到這些資源閑置后才能繼續。因此超線程的性能并不等于兩個 CPU 的性能。另外,含有超線程技術的 CPU 需要芯片組、軟件支持才能發揮該技術的優勢。
14.NUMA 技術
NUMA 即非一致訪問分布共享存儲技術,是由若干通過高速專用網絡連接起來的獨立節點構成的系統,各個節點可以是單個的 CPU 或是 SMP 系統。在 NUMA 中,Cache 的一致性有多種解決方案,需要操作系統和特殊軟件的支持。
編輯:黃飛
?
評論
查看更多