版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第16章高性能微處理器的先進(jìn)技術(shù)及典型結(jié)構(gòu)本章主要內(nèi)容(1)高性能微處理器的先進(jìn)技術(shù)(2)高性能微處理器的典型結(jié)構(gòu)
16.1
高性能微處理器所采用的先進(jìn)技術(shù)16.1.1
指令級(jí)并行
在系統(tǒng)結(jié)構(gòu)設(shè)計(jì)方面,一個(gè)重要的手段就是要采用并行處理技術(shù),設(shè)法以各種方式挖掘計(jì)算機(jī)工作中的并行性。并行性有粗粒度并行性和細(xì)粒度并行性之分。所謂粗粒度并行性是在多個(gè)處理器上分別運(yùn)行多個(gè)進(jìn)程,由多個(gè)處理器合作完成一個(gè)程序。所謂細(xì)粒度并行性是指在一個(gè)進(jìn)程中實(shí)現(xiàn)操作一級(jí)或指令一級(jí)的并行處理。高性能處理器在指令處理方面采用了一系列關(guān)鍵技術(shù),大多是圍繞指令級(jí)并行處理這個(gè)核心問題發(fā)揮作用的。下面通過兩個(gè)例子來說明指令級(jí)并行性的特點(diǎn)和含義:(1)
AddR1←R1+2(2)AddR1←R1+3SubC2←C2-C1并行度=3SubR3←R1-R2并行度=1LoadC3←50R2StoreR0←R3在上面的例子中,(1)的三條指令是互相獨(dú)立的,它們之間不存在數(shù)據(jù)相關(guān),所以可以并行(同時(shí))執(zhí)行。即(1)存在指令級(jí)并行性,其并行度為3(可并行執(zhí)行三條指令)。(2)的情況則完全不同,在其三條指令中,第二條要用到第一條的結(jié)果,第三條又要用到第二條的結(jié)果,它們都不能并行執(zhí)行。即(2)的并行度為1,指令間沒有并行性。與指令級(jí)并行性有關(guān)的一個(gè)指標(biāo)是每條指令的時(shí)鐘周期數(shù)CPI(ClockPerInstruction),它是在流水線中執(zhí)行一條指令所需的時(shí)鐘周期數(shù)。CPI隨指令的不同而異,比如在RISC機(jī)器中,大多數(shù)指令的CPI等于1,但有些復(fù)雜指令需要幾個(gè)時(shí)鐘周期才能執(zhí)行完,則其CPI大于1。通??梢杂闷骄鵆PI來說明一個(gè)處理器的速度性能。平均CPI是把各種類型的指令所需的時(shí)鐘周期數(shù)按一定的混合比(出現(xiàn)的頻度)加權(quán)后計(jì)算得到。它同另一種表示處理器速度的指標(biāo)MIPS(每秒百萬條指令)的關(guān)系是:f/CPI=MIPS,其中f為時(shí)鐘頻率(以MHz為單位)。例如,f=300MHz,CPI=0.6,則處理器的速度可達(dá)300/0.6=500MIPS.需要說明的是,在單處理器中挖掘指令級(jí)并行性,實(shí)現(xiàn)指令級(jí)并行處理,提高系統(tǒng)總體運(yùn)算速度,是通過處理器和編譯程序的結(jié)合來實(shí)現(xiàn)的,對(duì)于用戶是完全透明的,用戶不必考慮如何使自己編寫的程序去適應(yīng)指令級(jí)并行處理的需要,即處理器中實(shí)現(xiàn)指令級(jí)并行處理是由編譯程序和處理器硬件電路負(fù)責(zé)實(shí)現(xiàn)的。目前,已有幾種典型的開發(fā)指令級(jí)并行的系統(tǒng)結(jié)構(gòu),如超標(biāo)量結(jié)構(gòu)、超長(zhǎng)指令字結(jié)構(gòu)及超級(jí)流水線結(jié)構(gòu)。16.1.2
超標(biāo)量技術(shù)在采用超標(biāo)量結(jié)構(gòu)的處理器中有多條流水線,即在處理器中配有多套取指、譯碼及執(zhí)行等功能部件,在寄存器組中設(shè)有多個(gè)端口,總線也安排了多套,使在同一個(gè)機(jī)器周期中可以向幾條流水線同時(shí)送出多條指令,并且能夠并行地存取多個(gè)操作數(shù)和操作結(jié)果,執(zhí)行多個(gè)操作。這就是所謂超標(biāo)量技術(shù)(Superscalar)。
采用超標(biāo)量結(jié)構(gòu)的處理器中流水線的條數(shù)稱為超標(biāo)度。例如,Pentium處理器中的流水線為兩條,其超標(biāo)度為2;PⅡ/PⅢ處理器的超標(biāo)度為3等。采用超標(biāo)量技術(shù),不僅要考慮單條流水線中的重疊執(zhí)行,還要考慮在流水線之間的并行執(zhí)行,其“相關(guān)”問題比單流水線的處理器要復(fù)雜得多。這需要通過專門的技術(shù)來解決。超標(biāo)量處理器工作的大致過程是:首先,取指部件從指令Cache中取出多條指令,并送至分發(fā)部件的指令緩沖器中,這個(gè)指令緩沖器有時(shí)又稱為指令窗口;在每個(gè)機(jī)器周期,分發(fā)部件都對(duì)指令窗口進(jìn)行掃描,一旦發(fā)現(xiàn)可以并行發(fā)送的指令,并且和這些指令相對(duì)應(yīng)的功能部件是空閑的,則同時(shí)將它們送到功能部件去處理。一般地說,超標(biāo)量計(jì)算機(jī)具有如下特點(diǎn):(1)處理器中配有多套取指、譯碼及執(zhí)行等功能部件,采用多條流水線進(jìn)行并行處理;
(2)
能同時(shí)將可以并行執(zhí)行的指令送往不同的功能部件,從而達(dá)到每一個(gè)時(shí)鐘周期啟動(dòng)多條指令的目的;(3)對(duì)程序代碼的順序可通過編譯程序進(jìn)行靜態(tài)調(diào)度,或通過處理器硬件在程序執(zhí)行期間進(jìn)行動(dòng)態(tài)調(diào)度,以達(dá)到并行執(zhí)行指令的目的。從原理上講,超標(biāo)量技術(shù)主要是借助硬件資源的重復(fù)來實(shí)現(xiàn)空間上的并行操作。16.1.3
超長(zhǎng)指令字結(jié)構(gòu)
超長(zhǎng)指令字VLIW(VeryLongInstructionWord)技術(shù)是1983年由美國(guó)耶魯大學(xué)的JoshFisher在研制ELI-512機(jī)器時(shí)首先實(shí)現(xiàn)的。采用VLIW技術(shù)的計(jì)算機(jī)在開發(fā)指令級(jí)并行上與上面介紹的超標(biāo)量計(jì)算機(jī)有所不同,它是由編譯程序在編譯時(shí)找出指令間潛在的并行性,進(jìn)行適當(dāng)調(diào)整安排,把多個(gè)能并行執(zhí)行的操作組合在一起,構(gòu)成一條具有多個(gè)操作段的超長(zhǎng)指令,由這條超長(zhǎng)指令控制VLIW機(jī)器中多個(gè)互相獨(dú)立工作的功能部件,每個(gè)操作段控制一個(gè)功能部件,相當(dāng)于同時(shí)執(zhí)行多條指令。
VLIW指令的長(zhǎng)度和機(jī)器結(jié)構(gòu)的硬件資源情況有關(guān),往往長(zhǎng)達(dá)上百位。VLIW技術(shù)的主要特點(diǎn):(1)只有一個(gè)控制器(單一控制流),每個(gè)時(shí)鐘周期啟動(dòng)一條長(zhǎng)指令;(2)超長(zhǎng)指令字被分成多個(gè)控制字段,每個(gè)字段直接地、獨(dú)立地控制特定的功能部件;(3)含有大量的數(shù)據(jù)通路及功能部件,由于編譯程序在編譯時(shí)已考慮到可能出現(xiàn)的“相關(guān)”問題,所以控制硬件較簡(jiǎn)單;(4)在編譯階段完成超長(zhǎng)指令中多個(gè)可并行執(zhí)行操作的調(diào)度。16.1.4
超級(jí)流水線技術(shù)
資源重復(fù)和流水線技術(shù)是開發(fā)計(jì)算機(jī)并行性的兩個(gè)基本手段。通過上面介紹的超標(biāo)量技術(shù)和超長(zhǎng)指令字結(jié)構(gòu)可以看到,這兩種技術(shù)主要是依賴資源的重復(fù)來開發(fā)指令級(jí)并行性,從而提高處理器性能的。而超級(jí)流水線技術(shù)則是通過另一種途徑來改進(jìn)處理器執(zhí)行程序的能力。一個(gè)程序在計(jì)算機(jī)中總的執(zhí)行時(shí)間T可用如下公式表示:T=N*CPI*t式中N是被執(zhí)行程序的指令總條數(shù),CPI是每條指令所需的平均時(shí)鐘周期數(shù),t是時(shí)鐘周期。可見,改變CPI和改變時(shí)鐘周期t可能對(duì)機(jī)器速度產(chǎn)生等效的影響。雖然不可能孤立地通過改變N、CPI和時(shí)鐘周期t中的某一因素來改進(jìn)處理器的性能,但是,不同體系結(jié)構(gòu)對(duì)于這三個(gè)因素的側(cè)重程度是可以存在差異的。超級(jí)流水線技術(shù)是從減小t著手的,即它是把執(zhí)行一條指令過程中的操作劃分得更細(xì),把流水線中的流水級(jí)分得更多,由于每個(gè)操作要做的事情少了,可以執(zhí)行得更快些,因而可以使流水線的時(shí)鐘周期縮短,即可以把上式中的t縮短。這樣的流水線就是超級(jí)流水線(Superpipeline)。如果設(shè)法把t縮短一半,則相當(dāng)于起到了CPI減少一半的作用。如果一個(gè)處理器具有較高的時(shí)鐘頻率和較深的流水級(jí),那么就稱它采用了超級(jí)流水線技術(shù)。超級(jí)流水線技術(shù)的實(shí)現(xiàn)方式一般是將通常流水線中的若干流水級(jí)進(jìn)一步細(xì)分為兩個(gè)或更多個(gè)流水小級(jí),然后,通過在一個(gè)機(jī)器時(shí)鐘內(nèi)發(fā)送多條指令,在一定的流水線調(diào)度和控制下,使得每個(gè)流水小級(jí)和其他指令的不同流水小級(jí)并行執(zhí)行,從而在形式上好像每個(gè)流水周期都可以發(fā)送一條指令。對(duì)于超級(jí)流水線結(jié)構(gòu)的處理器,其機(jī)器時(shí)鐘和流水線時(shí)鐘是不同的。在這種情況下,流水線時(shí)鐘頻率通常是機(jī)器時(shí)鐘頻率的整數(shù)倍,具體數(shù)值決定于流水級(jí)劃分為流水小級(jí)的程度。例如,在MIPSR4000處理器中,流水線時(shí)鐘頻率就是外部機(jī)器時(shí)鐘頻率的兩倍。16.1.5RISC技術(shù)在計(jì)算機(jī)技術(shù)的發(fā)展過程中,為了保證同一系列內(nèi)各機(jī)種的向前兼容和向后兼容,后來推出機(jī)種的指令系統(tǒng)往往只能增加新的指令和尋址方式,而不能取消老的指令和尋址方式。于是新設(shè)計(jì)計(jì)算機(jī)的指令系統(tǒng)變得越來越龐大,尋址方式和指令種類越來越多,CPU的控制硬件也變得越來越復(fù)雜。然而往基本的簡(jiǎn)單指令集中不斷添加進(jìn)去的一些復(fù)雜指令,其使用頻率卻往往很低。人們研究了大量的統(tǒng)計(jì)資料后發(fā)現(xiàn):復(fù)雜指令系統(tǒng)中僅占20%的簡(jiǎn)單指令,竟覆蓋了程序全部執(zhí)行時(shí)間的80%。這是一個(gè)重要的發(fā)現(xiàn),它啟發(fā)人們產(chǎn)生了這樣一種設(shè)想:能否設(shè)計(jì)一種指令系統(tǒng)簡(jiǎn)單的計(jì)算機(jī),它只用少數(shù)簡(jiǎn)單指令,使CPU的控制硬件變得很簡(jiǎn)單,能夠比較方便地使處理器在執(zhí)行簡(jiǎn)單的常用指令時(shí)實(shí)現(xiàn)最優(yōu)化,把CPU的時(shí)鐘頻率提得很高,并且設(shè)法使每個(gè)時(shí)鐘周期能完成一條指令,從而可以使整個(gè)系統(tǒng)的性能達(dá)到最高,甚至超過傳統(tǒng)的指令系統(tǒng)龐大復(fù)雜的計(jì)算機(jī)。用這種想法設(shè)計(jì)的計(jì)算機(jī)就是精簡(jiǎn)指令集計(jì)算機(jī),簡(jiǎn)稱RISC(ReducedInstructionSetComputer)。它的對(duì)立面——傳統(tǒng)的指令系統(tǒng)復(fù)雜的計(jì)算機(jī)被稱作復(fù)雜指令集計(jì)算機(jī),簡(jiǎn)稱CISC(ComplexInstructionSetComputer)。為了說明RISC的基本特性,再看一下前面給出的計(jì)算程序總的執(zhí)行時(shí)間T的公式:T=N*CPI*t。實(shí)際上,為了減少程序的執(zhí)行時(shí)間,CISC機(jī)器采取的辦法是減少N,但要略微增加CPI,同時(shí)可能增加t;而RISC機(jī)器采取的辦法是減少CPI和t,但通常會(huì)引起N的增加。1980年,Patterson和Ditzel首先提出了精簡(jiǎn)指令集計(jì)算機(jī)RISC的概念,并由Patterson和Sequin領(lǐng)導(dǎo)的一個(gè)小組于1981年在美國(guó)加州大學(xué)伯克萊分校首先推出第一臺(tái)這種類型的機(jī)器—RISC機(jī)。RISC結(jié)構(gòu)是計(jì)算機(jī)技術(shù)發(fā)展中的重要變革,對(duì)傳統(tǒng)的計(jì)算機(jī)結(jié)構(gòu)的技術(shù)和概念提出了挑戰(zhàn)。RISC不僅代表著一類計(jì)算機(jī),它的特性、所涉及的關(guān)鍵技術(shù)還代表著一種設(shè)計(jì)哲學(xué)。概括而言,RISC機(jī)器的主要特點(diǎn)有:(1)指令種類少;(2)尋址方式少;(3)指令格式少,而且長(zhǎng)度一致;(4)除存數(shù)(Store)和取數(shù)(Load)指令外,所有指令都能在不多于一個(gè)CPU時(shí)鐘周期的時(shí)間內(nèi)執(zhí)行完畢;(5)只有存數(shù)(Store)和取數(shù)(Load)指令能夠訪問存儲(chǔ)器;(6)RISC處理器中有較大的通用寄存器組,絕大多數(shù)指令是面向寄存器操作的,通常支持較大的片載高速緩沖存儲(chǔ)器(Cache);(7)完全的硬連線控制,或僅使用少量的微程序;(8)采用流水線技術(shù),并能很好地發(fā)揮指令流水線的功效;(9)機(jī)器設(shè)計(jì)過程中,對(duì)指令系統(tǒng)仔細(xì)選擇,采用優(yōu)化的編譯程序,以彌補(bǔ)指令種類減少后帶來的程序膨脹的弊?。?10)將一些功能的完成從執(zhí)行時(shí)間轉(zhuǎn)移到編譯時(shí)間,以提高處理器性能。*RISC機(jī)并沒有公認(rèn)的嚴(yán)格定義,以上只是大多數(shù)RISC機(jī)具有的特點(diǎn)。有的機(jī)器雖然有其中的幾條不符合,但仍稱作RISC機(jī)。16.2高性能微處理器舉例16.2.164位處理器Alpha21064Alpha21064是Alpha處理器系列的首次實(shí)現(xiàn)。其組成結(jié)構(gòu)框圖如圖16.1所示。
圖16.1Alpha處理器組成結(jié)構(gòu)框圖
Alpha21064的主要性能參數(shù)如下:
(1)字長(zhǎng)64位,外部數(shù)據(jù)通道64/128位;
(2)32位物理地址,可直接尋址的物理存儲(chǔ)空間為4GB;
(3)64位虛擬地址,使虛擬存儲(chǔ)空間可達(dá)16×1018B;
(4)分別有8KB的指令高速緩存和8KB的數(shù)據(jù)高速緩存;
(5)整數(shù)流水線:7級(jí)流水線;
(6)浮點(diǎn)流水線:10級(jí)流水線;
(7)片內(nèi)時(shí)鐘頻率200MHz,外部時(shí)鐘頻率400MHz,峰值速度400MIPS。由圖16.1可見,Alpha21064處理器由四個(gè)獨(dú)立的功能部件(I盒、E盒、F盒及A盒)及片上高速緩存組成,主要包括:
(1)中央控制部件Ibox(I盒);
(2)整數(shù)執(zhí)行部件Ebox(E盒);
(3)浮點(diǎn)部件Fbox(F盒);
(4)地址轉(zhuǎn)換和裝入/存儲(chǔ)部件Abox(A盒);
(5)指令高速緩存(8KB)和數(shù)據(jù)高速緩存(8KB)。下面對(duì)Alpha21064的各組成部件做概要說明。1.片內(nèi)高速緩存Alpha21064片內(nèi)分開設(shè)立兩個(gè)高速緩存。一個(gè)為指令高速緩存,包含指令轉(zhuǎn)移歷程表、標(biāo)志及指令代碼。指令高速緩存的大小為8K字節(jié);另一個(gè)為數(shù)據(jù)高速緩存,大小也為8K字節(jié)。此外,還允許在片外配置高速緩存(第二級(jí)高速緩存)。2.4個(gè)功能部件(1)整數(shù)部件。整數(shù)部件稱為E盒,即常規(guī)定點(diǎn)運(yùn)算部件,包括加法器、乘法器、移位器及邏輯運(yùn)算部件。此外,整數(shù)部件還有一個(gè)由32個(gè)64位整數(shù)寄存器構(gòu)成的整數(shù)寄存器堆。
(2)浮點(diǎn)部件。浮點(diǎn)部件稱為F盒,即浮點(diǎn)運(yùn)算器,包括加法器、乘法器和專門的浮點(diǎn)除法器。
(3)地址轉(zhuǎn)換和裝入/存儲(chǔ)部件。地址轉(zhuǎn)換和裝入/存儲(chǔ)部件稱為A盒,負(fù)責(zé)將整數(shù)/浮點(diǎn)數(shù)裝入整數(shù)寄存器/浮點(diǎn)寄存器,或者將寄存器中的數(shù)寫入數(shù)據(jù)高速緩存。
(4)控制部件??刂撇考Q為I盒,它采用了超標(biāo)量流水線技術(shù)。Alpha處理器采用多級(jí)流水,并分設(shè)兩條流水線:整數(shù)流水線及浮點(diǎn)流水線。從預(yù)取指令開始,隨后進(jìn)行資源沖突分析,通過流水線控制,使指令按流水處理方式執(zhí)行。3.總線接口部件Alpha處理器的總線接口部件允許用戶配置64位或128位的外部數(shù)據(jù)通道,調(diào)整所需要的外部高速緩存容量和訪問時(shí)間,控制總線接口部件的時(shí)鐘頻率,使用TTL電平或ECL電平等。Alpha是真正的64位體系結(jié)構(gòu)。它的所有寄存器都是64位寬。它絕不是擴(kuò)展成64位的32位體系結(jié)構(gòu)。Alpha的設(shè)計(jì)目標(biāo)是高性能、長(zhǎng)壽命并能運(yùn)行多種操作系統(tǒng)。16.2.2Itanium(安騰)處理器Itanium處理器的基本設(shè)計(jì)思想是:(1)提供一種新的機(jī)制,利用編譯程序和處理器協(xié)同能力來提高指令并行度。采用創(chuàng)新的技術(shù)充分利用編譯程序提供的信息和調(diào)度能力來提高指令并行度。(2)簡(jiǎn)化芯片邏輯結(jié)構(gòu),為提高主頻和性能開辟道路。信守工程設(shè)計(jì)上的一條基本原則,即“不是越復(fù)雜越好,而是越簡(jiǎn)捷越好”。事實(shí)上,簡(jiǎn)捷的構(gòu)思比復(fù)雜的構(gòu)思更困難。(3)提供足夠的資源來實(shí)現(xiàn)EPIC,包括存儲(chǔ)編譯程序提供的信息以及提高并行計(jì)算效率所需的處理單元、高速緩存和其他資源。(4)充分利用豐富的寄存器資源,采用寄存器輪轉(zhuǎn)技術(shù),讓指令按順序循環(huán)使用寄存器,使得處理器在非常繁忙的情況下也不會(huì)出現(xiàn)寄存器不足的情況。
Itanium處理器能夠提供遠(yuǎn)比RISC處理器豐富得多的資源,后繼推出的Itanium處理器比前期的Itanium處理器所提供的資源還有進(jìn)一步增加。圖16.2
展示了Itanium2處理器的外觀,圖16.3
給出了Itanium2的組成結(jié)構(gòu)框圖。
Itanium2的晶體管數(shù)已達(dá)214M(2.14億)只,主頻1GHz,線寬(工藝)0.18μm,系統(tǒng)總線接口128位,片內(nèi)3級(jí)緩存(L1Cache為32KB,L2Cache為256KB,L3Cache已達(dá)3MB),8級(jí)流水,指令/時(shí)鐘周期(IPC)數(shù)為6,即每個(gè)時(shí)鐘周期可以處理6條指令,片內(nèi)寄存器數(shù)達(dá)328個(gè)等。
圖16.2Itanium2外觀
圖16.3Itanium2的框圖
Itanium處理器具有64位內(nèi)存尋址能力,能提供近180GB物理內(nèi)存。當(dāng)處理非常龐大的數(shù)據(jù)集時(shí),這種巨大的物理內(nèi)存空間對(duì)于服務(wù)器應(yīng)用是非常重要的。由于該處理器有充裕的并行處理能力,其內(nèi)部有9個(gè)功能通道(Itanium2為11個(gè)),包括2個(gè)整數(shù)通道(I)、2個(gè)浮點(diǎn)通道(F)、3個(gè)分支單元(B)、2個(gè)存取單元(M),所以對(duì)于執(zhí)行代碼中出現(xiàn)的分支,處理器采用了一種非常有趣的處理方式:同時(shí)并行執(zhí)行分支判斷、左分支和右分支。當(dāng)分支判斷執(zhí)行完畢后,根據(jù)分支判斷的結(jié)果,放棄沒有被轉(zhuǎn)向的分支,繼續(xù)執(zhí)行保留的分支。這樣就避免了由于分支預(yù)測(cè)錯(cuò)誤造成的流水線清空這種大大影響系統(tǒng)執(zhí)行效率的操作。16.3
多核處理器簡(jiǎn)介 16.3.1復(fù)雜單處理器結(jié)構(gòu)所遇到的挑戰(zhàn)在過去幾十年里,處理器的設(shè)計(jì)主要采用復(fù)雜單處理器結(jié)構(gòu),設(shè)計(jì)人員一直通過不斷提高處理器結(jié)構(gòu)的復(fù)雜度和提升工作頻率來改進(jìn)處理器的運(yùn)算能力。隨著半導(dǎo)體制造工藝的不斷發(fā)展,硅片上能夠利用的晶體管和連線資源越來越多。同時(shí),隨著晶體管特征尺寸的不斷減小,晶體管本身的延遲越來越小,而硅片上的互聯(lián)線延遲相對(duì)于門延遲則不斷加大,因此設(shè)計(jì)人員越來越傾向于將片上的晶體管資源分開管理,借此平衡門電路的延遲和互聯(lián)線的延遲。另一方面,處理器晶體管數(shù)量的不斷增長(zhǎng)及運(yùn)行頻率的提升導(dǎo)致了處理器的功耗越來越大,甚至已經(jīng)到了無法容忍的程度。芯片的功耗在很大程度上影響著芯片的封裝、測(cè)試及系統(tǒng)的可靠性。對(duì)于目前的主流處理器來說,芯片產(chǎn)生的熱量已經(jīng)嚴(yán)重影響到處理器工作頻率的提高,這個(gè)問題甚至被業(yè)界人士認(rèn)為是對(duì)摩爾定律的一大挑戰(zhàn)。16.3.2
多核處理器的出現(xiàn)
在公元2000年以前,由于功耗問題還沒有特別嚴(yán)重地影響到處理器的設(shè)計(jì),所以設(shè)計(jì)人員利用晶體管的方案一直是復(fù)雜的單處理器結(jié)構(gòu),并在此基礎(chǔ)上相繼推出了多種復(fù)雜的微體系結(jié)構(gòu)設(shè)計(jì),如指令轉(zhuǎn)移預(yù)測(cè)、寄存器重命名、動(dòng)態(tài)指令調(diào)度和復(fù)雜的Cache結(jié)構(gòu)等。然而,這種復(fù)雜的單處理器結(jié)構(gòu)所帶來的性能上的提高相比以前已經(jīng)大大降低了。事實(shí)說明,必須采用新的處理器設(shè)計(jì)思路,即通過在單個(gè)芯片上放置多個(gè)相對(duì)簡(jiǎn)單的處理單元,通過片上互聯(lián)網(wǎng)絡(luò)將這些處理單元連接起來,充分利用應(yīng)用程序的并行性來提高處理器的運(yùn)算能力,而不是單純地依靠提升單個(gè)處理器的硬件復(fù)雜度和工作頻率來提高處理器性能。
產(chǎn)生多核處理器設(shè)計(jì)理念的基本原因:⑴復(fù)雜單處理器結(jié)構(gòu)提高性能的途徑通常是充分地利用負(fù)載程序內(nèi)在的指令級(jí)并行性(ILP),采用的方法是加大流水線的發(fā)射寬度、采用更加激進(jìn)的推測(cè)執(zhí)行和更為復(fù)雜的Cache結(jié)構(gòu)。這樣做的結(jié)果是使處理器的硬件復(fù)雜度越來越高,從而導(dǎo)致消耗龐大的晶體管資源和大量的設(shè)計(jì)驗(yàn)證時(shí)間。⑵目前負(fù)載程序的ILP的利用已漸漸逼近極限,而負(fù)載程序的另一種并行性——線程級(jí)并行性(TLP)則無法在復(fù)雜單處理器結(jié)構(gòu)中得到有效利用。⑶雖然晶體管特征尺寸的減小會(huì)使晶體管的延遲進(jìn)一步縮小,但片內(nèi)互連線延遲占每一級(jí)流水線的延遲比重則越來越大。⑷目前一些高性能的復(fù)雜單處理器的功耗已經(jīng)高達(dá)上百瓦特了,這樣巨大的能量密度對(duì)于晶體管工作的可靠性和穩(wěn)定性帶來極不利的影響。上述原因?qū)е铝嗽O(shè)計(jì)人員必須把目光轉(zhuǎn)向新型的處理器結(jié)構(gòu)——單芯片多核處理器結(jié)構(gòu)(Single-ChipMultiProcessor),簡(jiǎn)稱CMP結(jié)構(gòu)。CMP結(jié)構(gòu)在單芯片上放置多個(gè)彼此獨(dú)立的處理器核心,并且通過片上互聯(lián)網(wǎng)絡(luò)將這些核心連接起來,使得這些處理器單元之間可以高帶寬、低延遲地交換數(shù)據(jù)。CMP的結(jié)構(gòu)特點(diǎn)可以很好解決前述復(fù)雜單處理器結(jié)構(gòu)的技術(shù)瓶頸,給現(xiàn)代處理器的設(shè)計(jì)展現(xiàn)出一片光明前景。16.3.3
多核處理器結(jié)構(gòu)的主要特點(diǎn)1.降低了硬件設(shè)計(jì)的復(fù)雜度
CMP可以通過重用先前的單處理器設(shè)計(jì)作為處理器核,這樣可以僅需微小的改動(dòng)就可以搭建起一個(gè)高效的系統(tǒng)。而復(fù)雜單處理器的設(shè)計(jì)為了達(dá)到很少的性能上的提高就需重新設(shè)計(jì)整個(gè)控制邏輯和數(shù)據(jù)通路,這些控制邏輯由于緊密耦合而異常復(fù)雜,因此需要耗費(fèi)設(shè)計(jì)人員大量時(shí)間和精力。2.充分利用應(yīng)用程序的并行性復(fù)雜單處理器結(jié)構(gòu)通過多發(fā)射和推測(cè)執(zhí)行來利用ILP以提高處理器性能,但它無法利用應(yīng)用程序的線程級(jí)并行性(TLP)。相反,CMP將注意力集中于TLP的有效利用,通過多處理器核并行執(zhí)行應(yīng)用程序的多個(gè)線程來提高處理器的整個(gè)性能。3.降低全局連線延遲
CMP結(jié)構(gòu)的各處理器核是松散地耦合在一起的,處理器核之間的數(shù)據(jù)交換通過片上互聯(lián)網(wǎng)絡(luò)來完成,雖然全局連線延遲的增大同樣會(huì)損失CMP的性能,但是相比復(fù)雜單處理器結(jié)構(gòu),這種交換共享數(shù)據(jù)的行為并不是經(jīng)常發(fā)生的,因此性能損失相對(duì)較小。另外,通過軟件的方法仔細(xì)地分配各處理器核上的數(shù)據(jù)也可以減少需要在核間交互共享數(shù)據(jù)的頻度,從而獲得處理器整體性能的提升。4.具有良好的功耗有效性復(fù)雜單處理器的緊密耦合結(jié)構(gòu)及頻繁的全局?jǐn)?shù)據(jù)交換使其受到了難以逾越的功耗制約。而CMP結(jié)構(gòu)利用多個(gè)處理器核并發(fā)執(zhí)行多個(gè)線程,這樣就減輕了每個(gè)處理器核的性能壓力,所以CMP不需要設(shè)計(jì)象復(fù)雜單處理器那樣明顯高功耗的復(fù)雜硬件。
CMP也不需要象復(fù)雜處理器那樣竭力提高運(yùn)行頻率來換取高性能。相反,可以適當(dāng)降低空閑處理器核的工作頻率,這樣雖然犧牲了單處理器核的性能,但CMP的整體性能并不會(huì)受到明顯影響,即CMP結(jié)構(gòu)具有較好的功耗有效性。16.4
現(xiàn)代PC機(jī)主板典型結(jié)構(gòu)主板是PC機(jī)系統(tǒng)的核心組成部件,它包括了構(gòu)成現(xiàn)代PC機(jī)的一系列關(guān)鍵部件和設(shè)備,如CPU、主存、高速緩存、芯片組(Chipset)及連接各種適配卡的擴(kuò)展插槽等。采用先進(jìn)的主板結(jié)構(gòu)及設(shè)計(jì)技術(shù),是提高現(xiàn)代PC機(jī)整體性能的重要環(huán)節(jié)之一。圖16.4給出了一個(gè)PC機(jī)主板的外觀圖示。
圖16.4PC機(jī)主板外觀圖示16.4.1
芯片組、橋芯片及接口插座在微型計(jì)算機(jī)系統(tǒng)中,芯片組實(shí)際上就是除CPU外所必需的系統(tǒng)控制邏輯電路。在微型計(jì)算機(jī)發(fā)展的初期,雖然沒有單獨(dú)提出芯片組的概念和技術(shù),但已具雛形,如IBMPC/XT系統(tǒng)中的各種接口芯片,如并行接口芯片8255A、串行接口芯片8251、定時(shí)/計(jì)數(shù)器8253、中斷控制器8259及DMA控制器8237等?,F(xiàn)代微型計(jì)算機(jī)中的芯片組就是在這些芯片的基礎(chǔ)上,不斷完善與擴(kuò)充功能、提高集成度與可靠性、降低功耗而發(fā)展起來的。用少量幾片VLSI芯片即可完成主板上主要的接口及支持功能,這幾片VLSI芯片的組合就稱為芯片組。采用芯片組技術(shù),可以簡(jiǎn)化主板的設(shè)計(jì),降低系統(tǒng)的成本,提高系統(tǒng)的可靠性,同時(shí)對(duì)今后的測(cè)試、維護(hù)和維修等都提供了極大的方便。芯片組有的由一塊大規(guī)模集成電路芯片組成,有的由兩塊芯片組成,有的由三塊或更多芯片組成。它們?cè)谕瓿晌⑿陀?jì)算機(jī)所需要的邏輯控制的功能上是基本相同的,只是在芯片的集成形式上有所區(qū)別。在現(xiàn)代微型計(jì)算機(jī)中,芯片組多數(shù)是由兩塊稱為“北橋”及“南橋”的橋芯片組成的。
北橋芯片也稱為系統(tǒng)控制器,負(fù)責(zé)管理微處理器、高速緩存、主存和PCI總線之間的信息傳送。該芯片具有對(duì)高速緩存和主存的控制功能,如Cache的一致性、控制主存的動(dòng)態(tài)刷新以及信號(hào)的緩沖、電平轉(zhuǎn)換和CPU總線到PCI總線的控制協(xié)議的轉(zhuǎn)換等功能。
南橋芯片的主要作用是將PCI總線標(biāo)準(zhǔn)(協(xié)議)轉(zhuǎn)換成外設(shè)的其他接口標(biāo)準(zhǔn),如IDE接口標(biāo)準(zhǔn)、ISA接口標(biāo)準(zhǔn)、USB接口標(biāo)準(zhǔn)等。此外,還負(fù)責(zé)微型計(jì)算中一些系統(tǒng)控制與管理功能,如對(duì)中斷請(qǐng)求的管理、對(duì)DMA傳輸?shù)目刂啤⒇?fù)責(zé)系統(tǒng)的定時(shí)與計(jì)數(shù)等,即完成傳統(tǒng)的中斷控制器8259、DMA控制器8237以及定時(shí)/計(jì)數(shù)器8253的基本功能。早期通常是將微處理器直接焊在主板上,而現(xiàn)代微處理器則往往是通過一個(gè)焊接在主板上的符合一定標(biāo)準(zhǔn)的接口插座與主板相連,這樣便于在不更換主板的前提下就可以升級(jí)微處理器,以提高整機(jī)的性能價(jià)格比。PentiumⅡ/Ⅲ微處理器則采用了與過去微處理器不同的封裝形式,在主板上采用了Slot1接口標(biāo)準(zhǔn),該接口標(biāo)準(zhǔn)一改過去將微處理器貼在主板上的方法,而是通過SEC封裝形式將微處理器模塊插接到主板的Slot1插槽內(nèi),該插槽在外形上類似PCI總線插槽,但引腳定義、內(nèi)部連接則完全不同。16.4.2PentiumPC主板結(jié)構(gòu)
PentiumPC主板結(jié)構(gòu)框圖如圖16.5所示。該圖中插在Socket7插座上的是Pentium75~200或PentiumMMX處理器。由該圖可見,整個(gè)主板結(jié)構(gòu)是由CPU總線、PCI總線及ISA總線構(gòu)成的三層次總線結(jié)構(gòu)。圖16.5PentiumPC主板結(jié)構(gòu)框圖
CPU總線是一個(gè)64位數(shù)據(jù)線、32位地址線的同步總線,總線時(shí)鐘頻率為66.6MHz。該總線連接4~128MB的主存。擴(kuò)充主存容量是以內(nèi)存條的形式插入主板SIMM或DIMM插座來實(shí)現(xiàn)的。另外,CPU總線還接有256~512KB的第二級(jí)Cache。主存與Cache控制器芯片用來管理CPU對(duì)主存和Cache的存取操作。CPU是這個(gè)總線的主控者,實(shí)際上可
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鄭州市中原銀行農(nóng)村普惠金融支付服務(wù)點(diǎn)招聘?jìng)淇碱}庫及1套完整答案詳解
- 旅館治安管理制度
- 2025年興業(yè)銀行拉薩分行社會(huì)招聘?jìng)淇碱}庫及答案詳解參考
- 2025年為棗莊市檢察機(jī)關(guān)公開招聘聘用制書記員的備考題庫及完整答案詳解一套
- 黑龍江公安警官職業(yè)學(xué)院《英語口語》2025 學(xué)年第二學(xué)期期末試卷
- c語言課程設(shè)計(jì)紙牌代碼
- 2025河南信陽藝術(shù)職業(yè)學(xué)院招才引智招聘專業(yè)技術(shù)人員32人備考核心題庫及答案解析
- c語言課程設(shè)計(jì)大數(shù)階乘
- 2025湖北武漢人才招聘工作人員-派往武漢商學(xué)院工作1人筆試重點(diǎn)題庫及答案解析
- 2025年揚(yáng)州市江都婦幼保健院公開招聘編外合同制專業(yè)技術(shù)人員備考題庫及參考答案詳解
- 2025下半年貴州遵義市市直事業(yè)單位選調(diào)56人備考筆試題庫及答案解析
- 2025融通科研院社會(huì)招聘5人筆試試題附答案解析
- 危重患者的護(hù)理管理
- 2025云南省人民檢察院招聘22人考試筆試備考試題及答案解析
- 2025海南地產(chǎn)行業(yè)市場(chǎng)深度調(diào)研及發(fā)展趨勢(shì)和前景預(yù)測(cè)研究報(bào)告
- 2026廣東揭陽市檢察機(jī)關(guān)招聘勞動(dòng)合同制書記員19人參考筆試試題及答案解析
- 2025年最高人民檢察院招聘書記員考試試題及答案
- 藥理學(xué)(藥)期末復(fù)習(xí)資料 (一)
- 2025年中小學(xué)校長(zhǎng)選拔筆試試題及參考答案
- 2025年燃?xì)馀嘤?xùn)考試試題及答案
- 公司法人變更協(xié)議書
評(píng)論
0/150
提交評(píng)論