高性能微處理器的先進(jìn)技術(shù)及典型結(jié)構(gòu).ppt
《高性能微處理器的先進(jìn)技術(shù)及典型結(jié)構(gòu).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《高性能微處理器的先進(jìn)技術(shù)及典型結(jié)構(gòu).ppt(66頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、第 16 章,高性能微處理器的先進(jìn)技術(shù) 及典型結(jié)構(gòu),本章主要內(nèi)容,高性能微處理器的先進(jìn)技術(shù) 高性能微處理器的典型結(jié)構(gòu),16.1 高性能微處理器所采用的先進(jìn)技術(shù),16.1.1流水線中的“相關(guān)”及其處理技術(shù) 流水線技術(shù)是實(shí)現(xiàn)多條指令并行執(zhí)行的重要技術(shù)。現(xiàn)在,它已成為建造高速CPU的一項(xiàng)基本實(shí)現(xiàn)技術(shù)。 流水級(jí)數(shù)為n的流水線,在理想情況下可以使處理器性能提高n倍。但是,在實(shí)際中,有一些情況會(huì)阻止指令流中的下一條指令在預(yù)定的時(shí)鐘周期內(nèi)執(zhí)行,這種情況稱為指令間的“相關(guān)”(dependency)或“險(xiǎn)態(tài)”(hazard)。 指令間的“相關(guān)”會(huì)造成流水線的停頓,使指令不能連續(xù)不斷地進(jìn)入流水線,其結(jié)果是降低了流
2、水線的工作效率。,,指令間的“相關(guān)”是指后面一條指令需要等前面一條(或幾條)指令的執(zhí)行結(jié)果,或者要等前面的一條(或幾條)指令用完它們所需要的硬件資源(如存儲(chǔ)器)后才能執(zhí)行完。也就是說(shuō),后面一條指令必須等待前面一條(或幾條)指令流過(guò)流水線后才能執(zhí)行完。 指令間的“相關(guān)”可分為:結(jié)構(gòu)相關(guān)、數(shù)據(jù)相關(guān)和控制相關(guān)。 下面分別說(shuō)明這三種“相關(guān)”的不同特性、產(chǎn)生原因及處理方法。,1. 結(jié)構(gòu)相關(guān),結(jié)構(gòu)相關(guān)(structural dependency)亦稱資源相關(guān)。它是指令流水線中在不同流水級(jí)(stage)上重疊執(zhí)行的指令之間爭(zhēng)用同一硬件資源時(shí)所產(chǎn)生的相關(guān)。例如,在流水線執(zhí)行過(guò)程中出現(xiàn)訪問(wèn)存儲(chǔ)器沖突就是結(jié)構(gòu)相關(guān)
3、的一個(gè)例子。 要緩解結(jié)構(gòu)相關(guān)引起的流水線停頓問(wèn)題,可以采用把具有訪問(wèn)沖突的資源配置成多套的辦法來(lái)實(shí)現(xiàn)。例如,可以采用分開(kāi)式的Cache,即由指令Cache和數(shù)據(jù)Cache分別提供指令和數(shù)據(jù)(即所謂哈佛結(jié)構(gòu)),而且可以把這兩個(gè)Cache的總線及存儲(chǔ)器地址寄存器也分開(kāi)成兩套,使得當(dāng)一條指令在某流水級(jí)上訪問(wèn)指令Cache時(shí),另一條指令在其他流水級(jí)上可以在同一時(shí)間訪問(wèn)數(shù)據(jù)Cache。,2. 數(shù)據(jù)相關(guān),在流水線中重疊執(zhí)行的指令中,如果后一條指令依賴于前面一條指令的執(zhí)行結(jié)果,就會(huì)出現(xiàn)數(shù)據(jù)相關(guān)(data dependency)。 在指令流水線中重疊執(zhí)行的讀數(shù)和寫數(shù)指令之間,若要使用同一個(gè)存儲(chǔ)單元或同一個(gè)通用
4、寄存器時(shí),就可能發(fā)生數(shù)據(jù)相關(guān)。這可通過(guò)下面的例子來(lái)說(shuō)明。 設(shè)有相繼的兩條算術(shù)運(yùn)算指令如下: ADD R3 , R2 , R1;(R3)+(R2)R1 SUB R4 , R1 , R5 ;(R4)-(R1)R5 假設(shè)采用4級(jí)流水,且分別是: 取指(F)、譯碼(D)、執(zhí)行(E)和寫結(jié)果(W),則上述兩條指令在流水線中執(zhí)行的時(shí)間圖可能會(huì)出現(xiàn)如圖16.1(a)所示的情況。,,圖16.1 數(shù)據(jù)相關(guān)及其處理方法,,從圖16.1(a)中可以看到,指令2從寄存器R1中取操作數(shù)是在流水級(jí)D,而指令1把結(jié)果送入寄存器R1是在流水級(jí)W。顯然,指令2取操作數(shù)是在指令1把結(jié)果送入R1之前,所以指令2取來(lái)的是R1中先前(
5、未執(zhí)行指令1時(shí))的舊內(nèi)容,從而發(fā)生錯(cuò)誤。 要解決數(shù)據(jù)相關(guān),需要設(shè)置專門的檢查數(shù)據(jù)相關(guān)的硬件,在每次取操作數(shù)時(shí),把取數(shù)的地址同它前面正在流水線中尚未完成寫數(shù)操作的所有寫數(shù)指令的寫數(shù)地址進(jìn)行比較,如果有相同的,說(shuō)明有數(shù)據(jù)相關(guān)存在,就必須采取相應(yīng)措施。 就本例而言,解決數(shù)據(jù)相關(guān)最簡(jiǎn)單的辦法就是推遲執(zhí)行讀數(shù)操作,等待相關(guān)的寫數(shù)指令完成寫數(shù)操作之后,再執(zhí)行讀數(shù)操作。如圖16.1(b)所示。,,從圖16.1(b)可見(jiàn),指令2要等待指令1在流水級(jí)W的操作完成之后才啟動(dòng)流水級(jí)D的操作,指令2在流水線中停頓了兩個(gè)時(shí)鐘周期。這種機(jī)制稱為流水線互鎖(pipeline interlock),是通過(guò)硬件實(shí)現(xiàn)的。也有的用
6、軟件(編譯程序)的辦法來(lái)實(shí)現(xiàn)。無(wú)論是通過(guò)軟件還是硬件,顯然,推遲執(zhí)行讀數(shù)操作的辦法總要影響流水線的效率。為了盡量縮短數(shù)據(jù)相關(guān)時(shí)指令在流水線中停頓的時(shí)間,還有其他一些方法,在此不再詳述。 共有三種類型的數(shù)據(jù)相關(guān),分別是:先寫后讀相關(guān)(讀-寫相關(guān)),即RAW(Read After Write);先讀后寫相關(guān)(寫-讀相關(guān)),即WAR(Write After Read)和先寫后寫相關(guān)(寫-寫相關(guān)),即WAW(Write After Write)。 上面給出的例子屬于“先寫后讀”(RAW)相關(guān)。,3. 控制相關(guān),控制相關(guān)(control dependency)主要是由轉(zhuǎn)移指令或其他能夠改變程序計(jì)數(shù)器(P
7、C)內(nèi)容的指令在流水線中進(jìn)行處理時(shí)引起的。以轉(zhuǎn)移指令為例,如果發(fā)生轉(zhuǎn)移,則流水線中在轉(zhuǎn)移指令之后的指令要全部作廢,需要重新按轉(zhuǎn)移地址取指令后才開(kāi)始執(zhí)行。 轉(zhuǎn)移指令又分為無(wú)條件轉(zhuǎn)移和條件轉(zhuǎn)移兩種類型,它們對(duì)指令流水線效率產(chǎn)生的影響有所不同。無(wú)條件轉(zhuǎn)移指令在指令譯碼發(fā)現(xiàn)它的同時(shí)已經(jīng)知道了轉(zhuǎn)移地址,可以較早地采取措施,因而對(duì)流水線效率的影響比條件轉(zhuǎn)移指令要小。,,對(duì)于條件轉(zhuǎn)移指令,雖然在指令流水線前端的指令譯碼時(shí)就能發(fā)現(xiàn),但是確定轉(zhuǎn)移方向的條件碼卻要在指令流水線的末端的執(zhí)行部件中產(chǎn)生。所以一旦在指令部件中發(fā)現(xiàn)條件轉(zhuǎn)移指令,指令部件就要停頓下來(lái),等待轉(zhuǎn)移指令前面一條指令在執(zhí)行部件中執(zhí)行完畢,產(chǎn)生條件碼
8、以后,才能確定轉(zhuǎn)移方向,此時(shí)整個(gè)流水線已經(jīng)排空,沒(méi)有指令在里面流動(dòng)了。 如果轉(zhuǎn)移條件成立,執(zhí)行新的指令流,就要從指令部件預(yù)取新指令開(kāi)始;如果轉(zhuǎn)移條件不成立,雖然指令部件中原來(lái)預(yù)取的指令還有用,但也要從指令部件分析指令開(kāi)始。等到指令流到執(zhí)行部件時(shí),執(zhí)行部件已經(jīng)停頓了相當(dāng)一段時(shí)間,所以條件轉(zhuǎn)移指令對(duì)流水線效率的影響很大。,,為了改進(jìn)由于條件轉(zhuǎn)移指令引起的流水線“斷流”現(xiàn)象,減少條件轉(zhuǎn)移指令造成的執(zhí)行部件停頓時(shí)間,可采用多項(xiàng)措施和技術(shù): (1) 雙分支預(yù)取。對(duì)于條件轉(zhuǎn)移指令而言,共有兩個(gè)分支方向,一個(gè)是順序執(zhí)行的方向,一個(gè)是轉(zhuǎn)移目標(biāo)的方向。雙分支預(yù)取就是在發(fā)現(xiàn)條件轉(zhuǎn)移指令后,同時(shí)向兩個(gè)分支方向預(yù)取指
9、令。即除了繼續(xù)順序預(yù)取指令外,還要按轉(zhuǎn)移方向預(yù)取指令,最后根據(jù)條件碼所確定的方向選取其中的一個(gè)分支的指令,進(jìn)行分析和執(zhí)行。 這樣,無(wú)論是否發(fā)生轉(zhuǎn)移,總有一個(gè)分支的指令可以使用,從而節(jié)省了等待讀取指令的時(shí)間,即減少了流水線的停頓時(shí)間。,,(2) 加快和提前形成條件碼。有的指令的條件碼并不一定要等待指令執(zhí)行完畢得到運(yùn)算結(jié)果后才能形成。例如,對(duì)于乘法和除法指令,其結(jié)果(積和商)是正還是負(fù)的條件碼在相乘(或除)前就能夠根據(jù)兩個(gè)操作數(shù)的符號(hào)位來(lái)確定。乘法和除法指令的執(zhí)行時(shí)間很長(zhǎng),所以這種提前形成條件碼的措施對(duì)減少條件轉(zhuǎn)移指令引起的流水線停頓時(shí)間很有益處。 (3) 轉(zhuǎn)移預(yù)測(cè)。轉(zhuǎn)移預(yù)測(cè)有靜態(tài)預(yù)測(cè)和動(dòng)態(tài)預(yù)測(cè)兩
10、種。靜態(tài)預(yù)測(cè)是在程序編譯時(shí)進(jìn)行預(yù)測(cè),而在硬件設(shè)計(jì)中則規(guī)定條件轉(zhuǎn)移指令總是向一個(gè)固定方向執(zhí)行指令。在編譯時(shí)應(yīng)盡可能使程序的轉(zhuǎn)移方向與硬件規(guī)定的方向一致。,,動(dòng)態(tài)轉(zhuǎn)移預(yù)測(cè)用硬件來(lái)實(shí)現(xiàn),它是在現(xiàn)代微處理器設(shè)計(jì)中普遍采用的一種行之有效的方法。 在前面第7章介紹Pentium處理器結(jié)構(gòu)時(shí)曾介紹過(guò)這種方法。,16.1.2 指令級(jí)并行,要提高計(jì)算機(jī)系統(tǒng)的整體性能,可以在兩個(gè)方面做出努力,一是改進(jìn)構(gòu)成計(jì)算機(jī)的器件性能(如微電子電路的速度、功耗等),二是要采用先進(jìn)的系統(tǒng)結(jié)構(gòu)設(shè)計(jì)。而在系統(tǒng)結(jié)構(gòu)設(shè)計(jì)方面,一個(gè)重要的手段就是要采用并行處理技術(shù),設(shè)法以各種方式挖掘計(jì)算機(jī)工作中的并行性。 并行性有粗粒度并行性和細(xì)粒度并行
11、性之分。所謂粗粒度并行性是在多個(gè)處理器上分別運(yùn)行多個(gè)進(jìn)程,由多個(gè)處理器合作完成一個(gè)程序。所謂細(xì)粒度并行性是指在一個(gè)進(jìn)程中實(shí)現(xiàn)操作一級(jí)或指令一級(jí)的并行處理。 高性能處理器在指令處理方面采用了一系列關(guān)鍵技術(shù),大多是圍繞指令級(jí)并行處理這個(gè)核心問(wèn)題發(fā)揮作用的。,,下面通過(guò)兩個(gè)例子來(lái)說(shuō)明指令級(jí)并行性的特點(diǎn)和含義: (1)Add R1R12 (2) Add R1R13 Sub C2C2C1 并行度=3 Sub R3R1R2 并行度=1 Load C350R2 Store R0R3 在上面的例子中,(1)的三條指令是互相獨(dú)立的,它們之間不存在數(shù)據(jù)相關(guān),所以可以并行(同時(shí))執(zhí)行。
12、即(1)存在指令級(jí)并行性,其并行度為3(可并行執(zhí)行三條指令)。 (2)的情況則完全不同,在其三條指令中,第二條要用到第一條的結(jié)果,第三條又要用到第二條的結(jié)果,它們都不能并行執(zhí)行。即(2)的并行度為1,指令間沒(méi)有并行性。,,,,與指令級(jí)并行性有關(guān)的一個(gè)指標(biāo)是每條指令的時(shí)鐘周期數(shù)CPI(Clock Per Instruction),它是在流水線中執(zhí)行一條指令所需的時(shí)鐘周期數(shù)。CPI隨指令的不同而異,比如在RISC機(jī)器中,大多數(shù)指令的CPI等于1,但有些復(fù)雜指令需要幾個(gè)時(shí)鐘周期才能執(zhí)行完,則其CPI大于1。 通??梢杂闷骄鵆PI來(lái)說(shuō)明一個(gè)處理器的速度性能。平均CPI是把各種類型的指令所需的時(shí)鐘周期數(shù)
13、按一定的混合比(出現(xiàn)的頻度)加權(quán)后計(jì)算得到。它同另一種表示處理器速度的指標(biāo)MIPS(每秒百萬(wàn)條指令)的關(guān)系是:f/CPI=MIPS,其中f為時(shí)鐘頻率(以MHz為單位)。例如,f=300MHz,CPI=0.6,則處理器的速度可達(dá)300/0.6=500MIPS.,,需要說(shuō)明的是,在單處理器中挖掘指令級(jí)并行性,實(shí)現(xiàn)指令級(jí)并行處理,提高系統(tǒng)總體運(yùn)算速度,是通過(guò)處理器和編譯程序的結(jié)合來(lái)實(shí)現(xiàn)的,對(duì)于用戶是完全透明的,用戶不必考慮如何使自己編寫的程序去適應(yīng)指令級(jí)并行處理的需要,即處理器中實(shí)現(xiàn)指令級(jí)并行處理是由編譯程序和處理器硬件電路負(fù)責(zé)實(shí)現(xiàn)的。 目前,已有幾種典型的開(kāi)發(fā)指令級(jí)并行的系統(tǒng)結(jié)構(gòu),如超標(biāo)量結(jié)構(gòu)、超
14、長(zhǎng)指令字結(jié)構(gòu)及超級(jí)流水線結(jié)構(gòu)。,16.1.3 超標(biāo)量技術(shù),在早期采用流水線方式的處理器中只有一條流水線,它是通過(guò)指令的重疊執(zhí)行來(lái)提高計(jì)算機(jī)的處理能力的。而在采用超標(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ù),
15、不僅要考慮單條流水線中的重疊執(zhí)行,還要考慮在流水線之間的并行執(zhí)行,其“相關(guān)”問(wèn)題比單流水線的處理器要復(fù)雜得多。這需要通過(guò)專門的技術(shù)來(lái)解決。 超標(biāo)量處理器工作的大致過(guò)程是:首先,取指部件從指令Cache中取出多條指令,并送至分發(fā)部件的指令緩沖器中,這個(gè)指令緩沖器有時(shí)又稱為指令窗口;在每個(gè)機(jī)器周期,分發(fā)部件都對(duì)指令窗口進(jìn)行掃描,一旦發(fā)現(xiàn)可以并行發(fā)送的指令,并且和這些指令相對(duì)應(yīng)的功能部件是空閑的,則同時(shí)將它們送到功能部件去處理。,,一般地說(shuō),超標(biāo)量計(jì)算機(jī)具有如下特點(diǎn): (1) 處理器中配有多套取指、譯碼及執(zhí)行等功能部件,采用多條流水線進(jìn)行并行處理; (2)能同時(shí)將可以并行執(zhí)行的指令送往不同的功能部件
16、,從而達(dá)到每一個(gè)時(shí)鐘周期啟動(dòng)多條指令的目的; (3) 對(duì)程序代碼的順序可通過(guò)編譯程序進(jìn)行靜態(tài)調(diào)度,或通過(guò)處理器硬件在程序執(zhí)行期間進(jìn)行動(dòng)態(tài)調(diào)度,以達(dá)到并行執(zhí)行指令的目的。 從原理上講,超標(biāo)量技術(shù)主要是借助硬件資源的重復(fù)來(lái)實(shí)現(xiàn)空間上的并行操作。,16.1.4 超長(zhǎng)指令字結(jié)構(gòu),超長(zhǎng)指令字VLIW(Very Long Instruction Word)技術(shù)是1983年由美國(guó)耶魯大學(xué)的Josh Fisher在研制ELI-512機(jī)器時(shí)首先實(shí)現(xiàn)的。 采用VLIW技術(shù)的計(jì)算機(jī)在開(kāi)發(fā)指令級(jí)并行上與上面介紹的超標(biāo)量計(jì)算機(jī)有所不同,它是由編譯程序在編譯時(shí)找出指令間潛在的并行性,進(jìn)行適當(dāng)調(diào)整安排,把多個(gè)能并行執(zhí)行的操
17、作組合在一起,構(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)”問(wèn)題,所以控制硬件較簡(jiǎn)單; (4) 在編譯階段完成超長(zhǎng)指令中多個(gè)可并行執(zhí)行操作的調(diào)度。,16.1.5 超級(jí)流水
18、線技術(shù),資源重復(fù)和流水線技術(shù)是開(kāi)發(fā)計(jì)算機(jī)并行性的兩個(gè)基本手段。通過(guò)上面介紹的超標(biāo)量技術(shù)和超長(zhǎng)指令字結(jié)構(gòu)可以看到,這兩種技術(shù)主要是依賴資源的重復(fù)來(lái)開(kāi)發(fā)指令級(jí)并行性,從而提高處理器性能的。 而超級(jí)流水線技術(shù)則是通過(guò)另一種途徑來(lái)改進(jìn)處理器執(zhí)行程序的能力。 一個(gè)程序在計(jì)算機(jī)中總的執(zhí)行時(shí)間T可用如下公式表示: T=N*CPI*t 式中N是被執(zhí)行程序的指令總條數(shù),CPI是每條指令所需的平均時(shí)鐘周期數(shù),t是時(shí)鐘周期。,,可見(jiàn),改變CPI和改變時(shí)鐘周期t可能對(duì)機(jī)器速度產(chǎn)生等效的影響。雖然不可能孤立地通過(guò)改變N、CPI和時(shí)鐘周期t中的某一因素來(lái)改進(jìn)處理器的性能,但是,不同體系結(jié)構(gòu)對(duì)于這三個(gè)因素的側(cè)重程度是可以存
19、在差異的。 超級(jí)流水線技術(shù)是從減小t著手的,即它是把執(zhí)行一條指令過(guò)程中的操作劃分得更細(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í),然后,通過(guò)在一個(gè)機(jī)器時(shí)鐘內(nèi)發(fā)送多條指令,在一定的流水線調(diào)度和控制下,使得每個(gè)流水小級(jí)和
20、其他指令的不同流水小級(jí)并行執(zhí)行,從而在形式上好像每個(gè)流水周期都可以發(fā)送一條指令。 對(duì)于超級(jí)流水線結(jié)構(gòu)的處理器,其機(jī)器時(shí)鐘和流水線時(shí)鐘是不同的。在這種情況下,流水線時(shí)鐘頻率通常是機(jī)器時(shí)鐘頻率的整數(shù)倍,具體數(shù)值決定于流水級(jí)劃分為流水小級(jí)的程度。 例如,在MIPS R4000處理器中,流水線時(shí)鐘頻率就是外部機(jī)器時(shí)鐘頻率的兩倍。,16.1.6 RISC技術(shù),1. RISC結(jié)構(gòu)對(duì)傳統(tǒng)計(jì)算機(jī)結(jié)構(gòu)的挑戰(zhàn) 在計(jì)算機(jī)技術(shù)的發(fā)展過(guò)程中,為了保證同一系列內(nèi)各機(jī)種的向前兼容和向后兼容,后來(lái)推出機(jī)種的指令系統(tǒng)往往只能增加新的指令和尋址方式,而不能取消老的指令和尋址方式。于是新設(shè)計(jì)計(jì)算機(jī)的指令系統(tǒng)變得越來(lái)越龐大,尋址方式
21、和指令種類越來(lái)越多,CPU的控制硬件也變得越來(lái)越復(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á)到最高,甚至超過(guò)傳統(tǒng)的指令系統(tǒng)龐大復(fù)雜的計(jì)算機(jī)。 用這種想法設(shè)計(jì)的計(jì)算機(jī)就是精簡(jiǎn)指
22、令集計(jì)算機(jī),簡(jiǎn)稱RISC(Reduced Instruction Set Computer)。它的對(duì)立面?zhèn)鹘y(tǒng)的指令系統(tǒng)復(fù)雜的計(jì)算機(jī)被稱作復(fù)雜指令集計(jì)算機(jī),簡(jiǎn)稱CISC (Complex Instruction Set Computer)。,,為了說(shuō)明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的概念,并由Pat
23、terson和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)指令能夠訪問(wèn)存儲(chǔ)器; (6) RISC
24、處理器中有較大的通用寄存器組,絕大多數(shù)指令是面向寄存器操作的,通常支持較大的片載高速緩沖存儲(chǔ)器(Cache);,,(7) 完全的硬連線控制,或僅使用少量的微程序; (8) 采用流水線技術(shù),并能很好地發(fā)揮指令流水線的功效; (9) 機(jī)器設(shè)計(jì)過(guò)程中,對(duì)指令系統(tǒng)仔細(xì)選擇,采用優(yōu)化的編譯程序,以彌補(bǔ)指令種類減少后帶來(lái)的程序膨脹的弊?。?(10) 將一些功能的完成從執(zhí)行時(shí)間轉(zhuǎn)移到編譯時(shí)間,以提高處理器性能。 * RISC機(jī)并沒(méi)有公認(rèn)的嚴(yán)格定義,以上只是大多數(shù)RISC機(jī)具有的特點(diǎn)。有的機(jī)器雖然有其中的幾條不符合,但仍稱作RISC機(jī)。,16.2 高性能微處理器舉例,,16.2.1 64位處理器Alpha 2
25、1064,Alpha 21064是Alpha處理器系列的首次實(shí)現(xiàn)。其組成結(jié)構(gòu)框圖如圖16.2所示。 圖16.2 Alpha芯片組成結(jié)構(gòu)框圖,,Alpha 21064的主要性能參數(shù)如下: (1) 字長(zhǎng)64位,外部數(shù)據(jù)通道64/128位; (2) 32位物理地址,可直接尋址的物理存儲(chǔ)空間為4GB; (3) 64位虛擬地址,使虛擬存儲(chǔ)空間可達(dá)161018B; (4) 分別有8KB的指令高速緩存和8KB的數(shù)據(jù)高速緩存; (5) 整數(shù)流水線:7級(jí)流水線; (6) 浮點(diǎn)流水線:10級(jí)流水線; (7) 片內(nèi)時(shí)鐘頻率200MHz,外部時(shí)鐘頻率400MHz,峰
26、值速度400MIPS。,,由圖16.2可見(jiàn),Alpha 21064處理器由四個(gè)獨(dú)立的功能部件(I盒、E盒、F盒及A盒)及片上高速緩存組成,主要包括: (1) 中央控制部件I box(I盒); (2) 整數(shù)執(zhí)行部件 E box(E盒); (3) 浮點(diǎn)部件F box(F盒); (4) 地址轉(zhuǎn)換和裝入/存儲(chǔ)部件 A box(A盒); (5) 指令高速緩存(8KB)和數(shù)據(jù)高速緩存(8KB)。,,下面對(duì)Alpha 21064的各組成部件做概要說(shuō)明。 1. 片內(nèi)高速緩存 Alpha 21064片內(nèi)分開(kāi)設(shè)立兩個(gè)高速緩存。一個(gè)為指令高速緩存,包含指令轉(zhuǎn)移歷程表、標(biāo)志及指令代碼。指令高速緩存的大小為8
27、K字節(jié);另一個(gè)為數(shù)據(jù)高速緩存,大小也為8K字節(jié)。此外,還允許在片外配置高速緩存(第二級(jí)高速緩存)。 2. 四個(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ù)。Alp
28、ha處理器采用多級(jí)流水,并分設(shè)兩條流水線:整數(shù)流水線及浮點(diǎn)流水線。從預(yù)取指令開(kāi)始,隨后進(jìn)行資源沖突分析,通過(guò)流水線控制,使指令按流水處理方式執(zhí)行。,,3. 總線接口部件 Alpha處理器的總線接口部件允許用戶配置64位或128位的外部數(shù)據(jù)通道,調(diào)整所需要的外部高速緩存容量和訪問(wèn)時(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.2 Itanium(安騰)處理器,Itanium處理器的基本設(shè)計(jì)思想是: (1)提供
29、一種新的機(jī)制,利用編譯程序和處理器協(xié)同能力來(lái)提高指令并行度。采用創(chuàng)新的技術(shù)充分利用編譯程序提供的信息和調(diào)度能力來(lái)提高指令并行度。 (2)簡(jiǎn)化芯片邏輯結(jié)構(gòu),為提高主頻和性能開(kāi)辟道路。信守工程設(shè)計(jì)上的一條基本原則,即“不是越復(fù)雜越好,而是越簡(jiǎn)捷越好”。事實(shí)上,簡(jiǎn)捷的構(gòu)思比復(fù)雜的構(gòu)思更困難。 (3)提供足夠的資源來(lái)實(shí)現(xiàn)EPIC,包括存儲(chǔ)編譯程序提供的信息以及提高并行計(jì)算效率所需的處理單元、高速緩存和其他資源。 (4)充分利用豐富的寄存器資源,采用寄存器輪轉(zhuǎn)技術(shù),讓指令按順序循環(huán)使用寄存器,使得處理器在非常繁忙的情況下也不會(huì)出現(xiàn)寄存器不足的情況。,,Itanium處理器能夠提供遠(yuǎn)比RISC處理器豐富得
30、多的資源,后繼推出的Itanium處理器比前期的Itanium處理器所提供的資源還有進(jìn)一步增加。圖16.3 展示了了Itanium 2處理器的外觀,圖16.4 給出了Itanium 2的組成結(jié)構(gòu)方框圖。 Itanium 2的晶體管數(shù)已達(dá)214M (2.14億)只,主頻1GHz,線寬(工藝)0.18 m,系統(tǒng)總線接口128位,片內(nèi)3級(jí)緩存(L1 Cache 為32KB,L2 Cache為256KB,L3 Cache已達(dá)3MB),8級(jí)流水,指令/時(shí)鐘周期(IPC)數(shù)為6,即每個(gè)時(shí)鐘周期可以處理6條指令,片內(nèi)寄存器數(shù)達(dá)328個(gè)等。,,圖16.3 Itanium 2 外觀,,圖16.4 Itanium
31、 2的框圖,,Itanium 處理器具有64位內(nèi)存尋址能力,能提供近180GB物理內(nèi)存。當(dāng)處理非常龐大的數(shù)據(jù)集時(shí),這種巨大的物理內(nèi)存空間對(duì)于服務(wù)器應(yīng)用是非常重要的。 由于該處理器有充裕的并行處理能力,其內(nèi)部有9個(gè)功能通道(Itanium 2為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é)果,放棄沒(méi)有被轉(zhuǎn)向的分支,繼續(xù)執(zhí)行保留的分支。這樣就避免了由于分支預(yù)測(cè)錯(cuò)誤造成的流水線清空這種大大影響系統(tǒng)執(zhí)行效率的操作
32、。,16.3 多核處理器簡(jiǎn)介,16.3.1 復(fù)雜單處理器結(jié)構(gòu)所遇到的挑戰(zhàn) 在過(guò)去幾十年里,處理器的設(shè)計(jì)主要采用復(fù)雜單處理器結(jié)構(gòu),設(shè)計(jì)人員一直通過(guò)不斷提高處理器結(jié)構(gòu)的復(fù)雜度和提升工作頻率來(lái)改進(jìn)處理器的運(yùn)算能力。 隨著半導(dǎo)體制造工藝的不斷發(fā)展,硅片上能夠利用的晶體管和連線資源越來(lái)越多。同時(shí),隨著晶體管特征尺寸的不斷減小,晶體管本身的延遲越來(lái)越小,而硅片上的互聯(lián)線延遲相對(duì)于門延遲則不斷加大,因此設(shè)計(jì)人員越來(lái)越傾向于將片上的晶體管資源分開(kāi)管理,借此平衡門電路的延遲和互聯(lián)線的延遲。,,另一方面,處理器晶體管數(shù)量的不斷增長(zhǎng)及運(yùn)行頻率的提升導(dǎo)致了處理器的功耗越來(lái)越大,甚至已經(jīng)到了無(wú)法容忍的程度。芯片的功耗在
33、很大程度上影響著芯片的封裝、測(cè)試及系統(tǒng)的可靠性。對(duì)于目前的主流處理器來(lái)說(shuō),芯片產(chǎn)生的熱量已經(jīng)嚴(yán)重影響到處理器工作頻率的提高,這個(gè)問(wèn)題甚至被業(yè)界人士認(rèn)為是對(duì)摩爾定律的一大挑戰(zhàn)。,16.3.2 多核處理器的出現(xiàn),在公元2000年以前,由于功耗問(wèn)題還沒(méi)有特別嚴(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)所帶來(lái)的性能上的提高相比以前已經(jīng)大大降低了。 事實(shí)說(shuō)明,必須采用新的處理器設(shè)計(jì)思路,即通過(guò)在單個(gè)芯片上放置多個(gè)相對(duì)簡(jiǎn)單的處理
34、單元,通過(guò)片上互聯(lián)網(wǎng)絡(luò)將這些處理單元連接起來(lái),充分利用應(yīng)用程序的并行性來(lái)提高處理器的運(yùn)算能力,而不是單純地依靠提升單個(gè)處理器的硬件復(fù)雜度和工作頻率來(lái)提高處理器性能。這就是多核處理器的基本設(shè)計(jì)理念,并由此導(dǎo)致了多核處理器的出現(xiàn)。,,產(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ù)雜度越來(lái)越高,從而導(dǎo)致消耗龐大的晶體管資源和大量的設(shè)計(jì)驗(yàn)證時(shí)間。 目前負(fù)載程序的ILP的利用已漸漸逼近極限,而負(fù)載程序的另一種并行性線程
35、級(jí)并行性(TLP)則無(wú)法在復(fù)雜單處理器結(jié)構(gòu)中得到有效利用。 雖然晶體管特征尺寸的減小會(huì)使晶體管的延遲進(jìn)一步縮小,但片內(nèi)互連線延遲占每一級(jí)流水線的延遲比重則越來(lái)越大。,, 目前一些高性能的復(fù)雜單處理器的功耗已經(jīng)高達(dá)上百瓦特了,這樣巨大的能量密度對(duì)于晶體管工作的可靠性和穩(wěn)定性帶來(lái)極不利的影響。 上述原因?qū)е铝嗽O(shè)計(jì)人員必須把目光轉(zhuǎn)向新型的處理器結(jié)構(gòu)單芯片多核處理器結(jié)構(gòu)(Single-Chip Multi Processor),簡(jiǎn)稱CMP結(jié)構(gòu)。 CMP結(jié)構(gòu)在單芯片上放置多個(gè)彼此獨(dú)立的處理器核心,并且通過(guò)片上互聯(lián)網(wǎng)絡(luò)將這些核心連接起來(lái),使得這些處理器單元之間可以高帶寬、低延遲地交換數(shù)據(jù)。CMP的結(jié)構(gòu)特點(diǎn)
36、可以很好解決前述復(fù)雜單處理器結(jié)構(gòu)的技術(shù)瓶頸,給現(xiàn)代處理器的設(shè)計(jì)展現(xiàn)出一片光明前景。,16.3.3 多核處理器結(jié)構(gòu)的主要特點(diǎn),1. 降低了硬件設(shè)計(jì)的復(fù)雜度 CMP可以通過(guò)重用先前的單處理器設(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)通過(guò)多發(fā)射和推測(cè)執(zhí)行來(lái)利用ILP以提高處理器性能,但它無(wú)法利用應(yīng)用程序的線程級(jí)并行性(TLP)。相反,CMP將注意力集中于TLP的有效利
37、用,通過(guò)多處理器核并行執(zhí)行應(yīng)用程序的多個(gè)線程來(lái)提高處理器的整個(gè)性能。,,3.降低全局連線延遲 晶體管特征尺寸的縮小導(dǎo)致了互連線延遲占據(jù)處理器周期延遲的比例在增大。在復(fù)雜單處理器結(jié)構(gòu)中,由于各個(gè)功能模塊緊密地耦合在一起,運(yùn)算部件的結(jié)果總線需要把運(yùn)算結(jié)果傳遞到許多模塊,由于多發(fā)射的原因,造成模塊之間頻繁地交換數(shù)據(jù),從而導(dǎo)致處理器整體性能下降。 相反,CMP結(jié)構(gòu)的各處理器核是松散地耦合在一起的,處理器核之間的數(shù)據(jù)交換通過(guò)片上互聯(lián)網(wǎng)絡(luò)來(lái)完成,雖然全局連線延遲的增大同樣會(huì)損失CMP的性能,但是相比復(fù)雜單處理器結(jié)構(gòu),這種交換共享數(shù)據(jù)的行為并不是經(jīng)常發(fā)生的,因此性能損失相對(duì)較小。 另外,通過(guò)軟件的方
38、法仔細(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)行頻率來(lái)?yè)Q取高性能。相反,可以適當(dāng)降低空閑處理器核的工作頻率,這樣雖然犧牲了單處理器核的性能,但CMP的整體性能并不會(huì)受到明顯影響,即CMP結(jié)構(gòu)具有較好的功耗有效性。,16.4 現(xiàn)代PC機(jī)主板典型結(jié)構(gòu),
39、主板(Motherboard)是PC機(jī)系統(tǒng)的核心組成部件,它包括了構(gòu)成現(xiàn)代PC機(jī)的一系列關(guān)鍵部件和設(shè)備,如CPU(或CPU插座)、主存、高速緩存、芯片組(Chipset)及連接各種適配卡的擴(kuò)展插槽等。 采用先進(jìn)的主板結(jié)構(gòu)及設(shè)計(jì)技術(shù),是提高現(xiàn)代PC機(jī)整體性能的重要環(huán)節(jié)之一。 圖16.5給出了一個(gè)PC機(jī)主板的外觀圖示。,,圖16.5 PC機(jī)主板外觀圖示,16.4.1芯片組、橋芯片及接口插座,在微型計(jì)算機(jī)系統(tǒng)中,芯片組實(shí)際上就是除CPU外所必需的系統(tǒng)控制邏輯電路。在微型計(jì)算機(jī)發(fā)展的初期,雖然沒(méi)有單獨(dú)提出芯片組的概念和技術(shù),但已具雛形,如IBM PC/XT 系統(tǒng)中的各種接口芯片,如并行接口芯片8255
40、A、串行接口芯片8251、定時(shí)/計(jì)數(shù)器8253、中斷控制器8259及DMA控制器8237等。 現(xiàn)代微型計(jì)算機(jī)中的芯片組就是在這些芯片的基礎(chǔ)上,不斷完善與擴(kuò)充功能、提高集成度與可靠性、降低功耗而發(fā)展起來(lái)的。用少量幾片VLSI芯片即可完成主板上主要的接口及支持功能,這幾片VLSI芯片的組合就稱為芯片組。,,采用芯片組技術(shù),可以簡(jiǎn)化主板的設(shè)計(jì),降低系統(tǒng)的成本,提高系統(tǒng)的可靠性,同時(shí)對(duì)今后的測(cè)試、維護(hù)和維修等都提供了極大的方便。 芯片組有的由一塊大規(guī)模集成電路芯片組成,有的由兩塊芯片組成,有的由三塊或更多芯片組成。它們?cè)谕瓿晌⑿陀?jì)算機(jī)所需要的邏輯控制的功能上是基本相同的,只是在芯片的集成形式上有所區(qū)別
41、。 在現(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控制器8
42、237以及定時(shí)/計(jì)數(shù)器8253的基本功能。,,早期通常是將微處理器直接焊在主板上,而現(xiàn)代微處理器則往往是通過(guò)一個(gè)焊接在主板上的符合一定標(biāo)準(zhǔn)的接口插座與主板相連,這樣便于在不更換主板的前提下就可以升級(jí)微處理器,以提高整機(jī)的性能價(jià)格比。 常見(jiàn)的微處理器接口插座的主要類型有Socket5、Socket7、Socket8、Socket370等。 Pentium/ 微處理器則采用了與過(guò)去微處理器不同的封裝形式,在主板上采用了Slot1接口標(biāo)準(zhǔn),該接口標(biāo)準(zhǔn)一改過(guò)去將微處理器貼在主板上的方法,而是通過(guò)SEC封裝形式將微處理器模塊插接到主板的Slot1插槽內(nèi),該插槽在外形上類似PCI總線插槽,但引腳定義、內(nèi)部
43、連接則完全不同。,16.4.2 Pentium PC主板結(jié)構(gòu),Pentium PC主板結(jié)構(gòu)框圖如圖16.6所示。該圖中插在Socket7插座上的是Pentium 75200或Pentium MMX處理器。 由該圖可見(jiàn),整個(gè)主板結(jié)構(gòu)是由CPU總線、PCI總線及ISA總線構(gòu)成的三層次總線結(jié)構(gòu)。,,圖16.6 Pentium PC主板結(jié)構(gòu)框圖,,CPU總線是一個(gè)64位數(shù)據(jù)線、32位地址線的同步總線,總線時(shí)鐘頻率為66.6MHz。該總線連接4128MB的主存。 擴(kuò)充主存容量是以內(nèi)存條的形式插入主板SIMM或DIMM插座來(lái)實(shí)現(xiàn)的。另外,CPU總線還接有256512KB的第二級(jí)Cache。主存與Cache
44、控制器芯片用來(lái)管理CPU對(duì)主存和Cache的存取操作。CPU是這個(gè)總線的主控者,實(shí)際上可以把該總線看成是CPU引腳信號(hào)的延伸。 PCI總線用于連接各種高速的I/O設(shè)備模塊,如圖形顯示適配器、硬盤控制器、網(wǎng)絡(luò)接口控制器等。通過(guò)“橋”芯片上面與更高速的CPU總線相連,下面與低速的ISA總線相連。,,Pentium PC使用ISA總線與低速I/O設(shè)備相連。在“南橋”芯片的控制下,ISA總線可支持7個(gè)DMA通道和15級(jí)可屏蔽硬件中斷。此外,南橋控制邏輯還通過(guò)主板上的X總線(也稱片級(jí)總線)與時(shí)鐘/日歷、CMOS RAM電路和鍵盤、鼠標(biāo)控制器(8042微處理器)以及ROM BIOS芯片相接。 支持這種Pe
45、ntium PC主板的芯片組是Intel 82430系列(簡(jiǎn)稱430系列)。該系列的芯片組已先后開(kāi)發(fā)出LX、NX、FX、HX、VX、TX六個(gè)版本,每個(gè)版本的芯片組都是由北橋芯片和南橋芯片組成。,16.4.3 Pentium-1GHz處理器典型主板布局,圖16.7給出的是使用Pentium-1GHz處理器的典型主板布局圖。從中可以直觀地看到現(xiàn)代PC機(jī)主板及微型計(jì)算機(jī)系統(tǒng)的組成結(jié)構(gòu)情況。,,圖16.7 Pentium-1GHz處理器典型主板布局圖,,Pentium-1GHz處理器主板采用VIA Apollo Pro266芯片組,包括VT8633(北橋)和VT8233(南橋),提供了性能優(yōu)越、功能強(qiáng)
46、大、性價(jià)比優(yōu)良的PC機(jī)硬件操作平臺(tái)。 該系列主板還采用了ITE IT8712F I/O芯片,提供了一個(gè)智能卡讀寫器(SCR)接口。該系列主板還提供其他先進(jìn)的功能,如網(wǎng)絡(luò)喚醒功能、調(diào)制解調(diào)器喚醒功能、ACPI電源管理模式及AGP Pro插槽等。 本系列主板提供了靈活多樣的性能組合方式,可選配置包括:AC97軟件音效Codec(編碼解碼器)、高級(jí)音效和板載網(wǎng)絡(luò)接口。另外,該系列主板還提供了防止電腦病毒(如CIH病毒)保護(hù)BIOS免遭破壞的功能、加快電腦啟動(dòng)速度的Boot Easy等新型技術(shù)。,,該系列的主板中的北橋芯片(VT 8633)負(fù)責(zé)管理CPU、高速緩存(Cache)、主存和PCI總線之間的信息傳輸,并具有對(duì)主存和高速緩存的控制功能,如維持Cache的一致性、控制主存的動(dòng)態(tài)刷新以及CPU總線到PCI總線的控制協(xié)議轉(zhuǎn)換等功能。另外,由圖16.12可見(jiàn),VT8633還提供了一個(gè)32位、66MHz的高級(jí)圖形端口AGP,用以支持高性能的視頻顯示。 南橋芯片(VT8233)的基本功能是將PCI總線標(biāo)準(zhǔn)轉(zhuǎn)換成其他類型的外設(shè)接口標(biāo)準(zhǔn),如ISA總線接口標(biāo)準(zhǔn)、USB接口標(biāo)準(zhǔn)、IEEE1394以及IDE接口標(biāo)準(zhǔn)等。 另外,VT8233還負(fù)責(zé)完成系統(tǒng)中的中斷請(qǐng)求的管理、DMA傳送的控制以及定時(shí)/計(jì)數(shù)等功能。,第16章 作業(yè),P498 1題 2題 3題 4題 8題 9題,
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案