版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2023/1/301微型計(jì)算機(jī)技術(shù)WeixinɡJisuɑnjiJishu
(第3版)
2023/1/302
第12章
32位微處理器的
硬件特點(diǎn)2023/1/30332位微處理器的硬件特點(diǎn)12.132位微處理器的基本結(jié)構(gòu)12.232位微處理器的編程結(jié)構(gòu)12.332位微處理器的引腳功能12.432位微處理器的基本時序
2023/1/30432位微處理器的基本結(jié)構(gòu)12.1.1
Intel80386微處理器的基本結(jié)構(gòu)12.1.2Intel80486微處理器的基本結(jié)構(gòu)12.1.3IntelPentium微處理器的基本結(jié)構(gòu)12.1.4IntelPentiumPro微處理器的主要特點(diǎn)12.1.5IntelPentiumMMX微處理器的主要特點(diǎn)12.1.6IntelPentiumⅡ微處理器的主要特點(diǎn)12.1.7IntelPentiumⅢ微處理器的主要特點(diǎn)12.1.8IntelPentium4微處理器的主要特點(diǎn)12.1.9IntelPentiumM微處理器的主要特點(diǎn)2023/1/30512.1.1Intel80386微處理器的基本結(jié)構(gòu)
80386
是Intel公司于1985年10月推出的一種高性能的32位微處理器,它與8086
、80286相兼容,它是為高性能的應(yīng)用領(lǐng)域與多用戶、多任務(wù)操作系統(tǒng)設(shè)計(jì)的一種高集成度的芯片。80386
具有片內(nèi)集成的存儲器管理部件和保護(hù)機(jī)構(gòu),它的數(shù)據(jù)線是32位,內(nèi)部的寄存器結(jié)構(gòu)和操作也是32位,具有32位地址線,能直接尋址4GB(1GB為230
B)的物理地址空間,它的虛擬存儲空間為64TB(1TB為240
B)。2023/1/306Intel80386微處理器
80386
微處理器的內(nèi)部結(jié)構(gòu)如圖12-1所示。由圖可見,80386
由六大部件組成,即總線接口部件、指令預(yù)取部件、指令預(yù)譯碼部件、執(zhí)行部件、分段部件和分頁部件。2023/1/307
80386微處理器的內(nèi)部結(jié)構(gòu)
2023/1/3081.總線接口部件總線接口部件(BusInterfaceUnit,BIU)提供中央處理部件和系統(tǒng)之間的高速接口,其功能是產(chǎn)生訪問存儲器和I/O端口(即完成總線周期)所必需的地址、數(shù)據(jù)和命令信號。這些動作能與當(dāng)前的任何操作同時進(jìn)行。總線接口部件被設(shè)計(jì)成能接收并優(yōu)化多個內(nèi)部總線的請求,使其在服務(wù)于請求時能最大限度地利用所提供的總線寬度。80386的總線周期僅為2個時鐘。2023/1/3092.指令預(yù)取部件指令預(yù)取部件(InstructionPrefetchUnit,IPU)包含16B指令預(yù)取隊(duì)列寄存器,當(dāng)總線空閑周期到來時,把指令流的4B讀出,存到指令預(yù)取隊(duì)列寄存器中。80386的平均指令長度為3.5B。所以預(yù)取隊(duì)列寄存器中一般可存放5條指令。2023/1/30103.指令預(yù)譯碼部件指令預(yù)譯碼部件(InstructionpreDecodeUnit,IDU)的作用是對指令操作碼進(jìn)行預(yù)譯碼,可以完成從指令到微指令的轉(zhuǎn)換,并將其存放在已譯碼的指令隊(duì)列中,供執(zhí)行部件使用。這樣,可以節(jié)省取指令和譯碼的時間。2023/1/30114.執(zhí)行部件執(zhí)行部件(ExecutionUnit,EU)包括8個32位通用寄存器(寄存器堆)、一個64位桶形移位寄存器(BarrelShifter)和一個乘/除法器。通用寄存器既可用于數(shù)據(jù)操作,也可用于地址計(jì)算。桶形移位寄存器用來有效地實(shí)現(xiàn)指令的移位、循環(huán)移位和位操作,同時也用來幫助進(jìn)行乘法和其他操作,在一個時鐘周期內(nèi)能將任何類型的數(shù)據(jù)移動任意位。乘/除法器能在1個時鐘周期完成1位的乘/除法,最快允許在40個時鐘周期內(nèi)進(jìn)行32位的乘法或除法。上述IPU、IDU和EU三部分又被合稱為中央處理部件(CentralProcessingUnit,CPU)。2023/1/30125.分段部件分段部件(SegmentationUnit,SU)按指令要求實(shí)現(xiàn)有效地址的計(jì)算,以完成從邏輯地址到線性地址的轉(zhuǎn)換,同時完成總線周期分段的違法檢查,由圖12-1中的保護(hù)測試單元(ProtectionTestUnit)完成。然后將轉(zhuǎn)換后的線性地址連同總線周期事務(wù)處理信息發(fā)送到PU。SU通過提供一個額外的尋址器件對邏輯地址空間進(jìn)行管理??梢詫?shí)現(xiàn)任務(wù)之間的隔離,也可以實(shí)現(xiàn)指令和數(shù)據(jù)區(qū)的再定位。2023/1/30136.分頁部件分頁部件(PagingUnit,PU)把由SU或IPU產(chǎn)生的線性地址轉(zhuǎn)換成物理地址,這種轉(zhuǎn)換是通過兩級頁面重定位機(jī)構(gòu)來實(shí)現(xiàn)的。所以,PU提供了對物理地址空間的管理。每一頁為4KB,每一段可以是一頁,也可以是若干頁。PU是80386芯片新增的部件,又是一個可選件,若不使用PU,80386
的線性地址即是物理地址。上述SU和PU兩部分合稱為存儲器管理部件(MemoryManagementUnit,MMU)。2023/1/301412.1.2Intel80486微處理器的基本結(jié)構(gòu)Intel公司于1989年4月推出了一種新的32位微處理器80486
,同80386
相比,在相同的工作頻率下,其處理速度提高了2~4倍。80486
采用了精簡指令集計(jì)算機(jī)(ReducedInstructionSetComputer,RISC)技術(shù),降低了執(zhí)行每條指令所需的時鐘數(shù),使其能達(dá)到1暢2條指令/時鐘。2023/1/3015Intel80486微處理器的基本結(jié)構(gòu)80486
以前的處理器執(zhí)行一條指令是取得一個地址,再進(jìn)行一個數(shù)據(jù)的輸入輸出,而80486
采用一種稱為猝發(fā)式總線(BurstBus)的技術(shù),使取得一個地址后,與該地址相關(guān)的一組數(shù)據(jù)都可以進(jìn)行輸入輸出,有效地解決了微處理器同內(nèi)存儲器之間的數(shù)據(jù)交換問題。加上80486
內(nèi)部集成有浮點(diǎn)部件(FloatingPointUnit,F(xiàn)PU)和超高速緩沖存儲器(Cache),CPU和FPU以及CPU和Cache之間都采用高速總線進(jìn)行數(shù)據(jù)傳送,使80486CPU的處理速度以及80486
系統(tǒng)的處理速度都得到了極大提高。
80486
6的內(nèi)部結(jié)構(gòu)如圖12-2所示。2023/1/3016Intel80486微處理器的基本結(jié)構(gòu)
2023/1/301780486微處理器的內(nèi)部結(jié)構(gòu)2023/1/3018Intel80486微處理器的基本結(jié)構(gòu)80486
基本上沿用了80386
的體系結(jié)構(gòu),以保持同86系列微處理器在目標(biāo)碼級的兼容性。它由8個基本部件組成:總線接口部件、指令預(yù)取部件、指令譯碼部件、執(zhí)行部件、控制部件、存儲器管理部件以及超高速緩沖存儲部件(Cache)和高性能浮點(diǎn)部件。其中,后兩個部件是在80386的基礎(chǔ)上為提高80486的性能而設(shè)計(jì)的。2023/1/3019#Intel80486DX=高性能的+高性能的+8KBL1Cache8038680387*面向多處理器結(jié)構(gòu)*主頻提高從33MHz-50/60MHz*采用部分RISC技術(shù)(ReducedInstructionSetComputer)1.2條/時鐘8087NDP數(shù)值數(shù)據(jù)處理器80287與80387數(shù)學(xué)處理器2023/1/302012.1.3IntelPentium微處理器的基本結(jié)構(gòu)
Pentium
奔騰57條MMX指令PentiumProMMX高能奔騰多能奔騰
PentiumII
70條SSE指令
PentiumIII
144條SSE2指令新的IA-32Pentium4廣度深度57條MMX指令2023/1/3021IntelPentium微處理器的基本結(jié)構(gòu)
Pentium是Intel公司于1993年3月推出的第五代80X86系列微處理器,中文譯名為“奔騰”。
Pentium的內(nèi)部結(jié)構(gòu)如圖12-3所示。同80486
相比,Pentium在結(jié)構(gòu)上有如下特點(diǎn)
2023/1/30222023/1/30231.超標(biāo)量流水線
Pentium由U和V兩條指令流水線構(gòu)成超標(biāo)量流水線結(jié)構(gòu),其中,每條流水線都有自己的ALU、地址生成邏輯和Cache接口。在每個時鐘周期內(nèi)可執(zhí)行兩條整數(shù)指令,每條流水線分為指令預(yù)取、指令譯碼、地址生成、指令執(zhí)行和回寫5個步驟。當(dāng)一條指令完成預(yù)取步驟時,流水線就可以開始對另一條指令進(jìn)行操作,極大地提高了指令的執(zhí)行速度。2023/1/30242.重新設(shè)計(jì)的浮點(diǎn)部件
Pentium的浮點(diǎn)部件在80486的基礎(chǔ)上做了重新設(shè)計(jì),其執(zhí)行過程分為8級流水,使每個時鐘周期能完成一個浮點(diǎn)操作(或兩個浮點(diǎn)操作)。采用快速算法可使諸如ADD、MUL和LOAD等運(yùn)算的速度至少提高3倍,在許多應(yīng)用程序中利用指令調(diào)度和重疊(流水線)執(zhí)行可使性能提高5倍以上。同時,用電路進(jìn)行固化,用硬件來實(shí)現(xiàn)。2023/1/30253.獨(dú)立的指令Cache和數(shù)據(jù)Cache
Pentium片內(nèi)有兩個8KB的Cache———
雙路Cache結(jié)構(gòu),一個是指令Cache,一個是數(shù)據(jù)Cache。轉(zhuǎn)換后備緩沖器(TranslatLook‐asideBuffer,TLB)的作用是將線性地址轉(zhuǎn)換為物理地址。這兩種Cache采用32×8線寬,是對Pentium的64位總線的有力支持。指令和數(shù)據(jù)分別使用不同的Cache,使Pentium中數(shù)據(jù)和指令的存取減少了沖突,提高了性能。2023/1/3026獨(dú)立的指令Cache和數(shù)據(jù)Cache
Pentium的數(shù)據(jù)Cache有兩個接口,分別與U和V兩條流水線相連,以便能在相同時刻向兩個獨(dú)立工作的流水線進(jìn)行數(shù)據(jù)交換。當(dāng)向已被占滿的數(shù)據(jù)Cache中寫數(shù)據(jù)時,將移走當(dāng)前使用頻率最低的數(shù)據(jù),同時將其寫回內(nèi)存,這種技術(shù)稱為Cache回寫技術(shù)。由于CPU向Cache寫數(shù)據(jù)和將Cache釋放的數(shù)據(jù)寫回內(nèi)存是同時進(jìn)行的,所以采用Cache回寫技術(shù)將節(jié)省處理時間。2023/1/30274.4分支預(yù)測
Pentium提供了一個稱為分支目標(biāo)緩沖器(BranchTargetBuffer,BTB)的小Cache來動態(tài)地預(yù)測程序的分支操作。當(dāng)某條指令導(dǎo)致程序分支時,BTB記住該條指令和分支目標(biāo)的地址,并用這些信息預(yù)測該條指令再次產(chǎn)生分支時的路徑,預(yù)先從該處預(yù)取,保證流水線的指令預(yù)取步驟不會空置。這一機(jī)構(gòu)的設(shè)置可以減少在循環(huán)操作時對循環(huán)條件的判斷所占用的CPU的時間。2023/1/30285.采用64位外部數(shù)據(jù)總線
Pentium芯片內(nèi)部的ALU和通用寄存器仍是32位,所以還是32位微處理器,但它同內(nèi)存儲器進(jìn)行數(shù)據(jù)交換的外部數(shù)據(jù)總線采用64位總線,兩者之間的數(shù)據(jù)傳輸率可達(dá)528MBps。2023/1/302912.1.4IntelPentiunPro微處理器的主要特點(diǎn)
PentiumPro是Intel公司于1995年11月推出的80X86系列中又一個新品種,中文名為“高能奔騰”。同Pentium芯片相比,PentiumPro芯片采用了新的體系結(jié)構(gòu)。2023/1/30301.一個封裝內(nèi)安裝了兩個芯片
PentiumPro微處理器在一個封裝內(nèi)包含兩個芯片,一個是CPU內(nèi)核,包括兩個8KB的L1Cache(一級高速緩存),集成度為550萬個晶體管;另一個是L2Cache(二級高速緩存),容量為256KB,集成度為1550萬個晶體管。這一L2Cache由全速總線同CPU內(nèi)核相連,從而提高了程序的運(yùn)行速度。2023/1/30312.指令分解為微操作
PentiumPro把CISC結(jié)構(gòu)的指令分解為若干像RISC指令的微操作,使它能在流水線上并行地執(zhí)行,以提高性能。這樣既保持了同以往的80X86微處理器的兼容性,使80X86前期產(chǎn)品的龐大軟件資源能在PentiumPro上運(yùn)行,同時又采用RISC技術(shù)提高了指令的運(yùn)行速度。2023/1/30323.亂序執(zhí)行和推測執(zhí)行
亂序執(zhí)行是指不完全按程序規(guī)定的指令順序依次執(zhí)行;推測執(zhí)行是指遇到轉(zhuǎn)移指令時,不等結(jié)果出來先推測可能往哪里轉(zhuǎn)移,并提前執(zhí)行。由于推測不一定全對,因而帶有一定風(fēng)險,又稱為風(fēng)險執(zhí)行。亂序執(zhí)行是PentiumPro的一個極具生命力的特點(diǎn),它同推測執(zhí)行結(jié)合,允許CPU使指令流能最有效地利用內(nèi)部資源。2023/1/30334.超級流水線和超標(biāo)量技術(shù)
PentiumPro具有3路超標(biāo)量結(jié)構(gòu),其并行執(zhí)行指令的能力優(yōu)于Pentium芯片;同時PentiumPro又具有14級超級流水線結(jié)構(gòu),將任一條指令的全部執(zhí)行分成一連串的指令步(這里分成14個指令步),這從另一個角度提高了處理器的并行處理能力。這兩種“超”技術(shù)的結(jié)合,使PentiumPro的性能得到極大的提高。2023/1/303412.1.5IntelPentiumMMX微處理器的
主要特點(diǎn)
1997年1月9日,IntelP55C微處理器芯片正式推出,英文全稱為PentiumwithMMX和PentiumMMX,中文名為“多能奔騰”。MMX是MultiMediaeXtension的縮寫,意為“多媒體擴(kuò)展”。這是為提高PC處理多媒體和通信能力而推出的新一代處理器技術(shù),是對32位Intel體系結(jié)構(gòu)(IntelArchitecture32,IA32)指令系統(tǒng)的擴(kuò)展,它通過在奔騰處理器中增加4種新的數(shù)據(jù)類型、8個64位寄存器和57條新指令來實(shí)現(xiàn)的。2023/1/3035IntelPentiumMMX多能奔騰中的MMX技術(shù)是Intel80X86微處理器體系結(jié)構(gòu)的重大革新,增加了很多新技術(shù),主要如下。2023/1/30361.引入新的數(shù)據(jù)類型
多能奔騰定義了4種新的64位數(shù)據(jù)類型及其緊縮(又稱壓縮)表示,它們是緊縮字節(jié)(8個字節(jié)緊縮在一個64位數(shù)據(jù)中)、緊縮字(4個字緊縮在一個64位數(shù)據(jù)中)、緊縮雙字(2個雙字節(jié)緊縮在一個64位數(shù)據(jù)中)和4字(一個64位信息)。而新增加的8個64位通用寄存器能夠保存各類緊縮的64位數(shù)據(jù)。這對多媒體處理十分有用,例如,處理一幅256級灰度的圖像,由于圖像像素數(shù)據(jù)通常以8位整數(shù)的字節(jié)表示,用MMX技術(shù),8個這樣的像素將緊縮為一個64位值,并可移入一個MMX寄存器。2023/1/3037新的數(shù)據(jù)類型當(dāng)一條MMX指令執(zhí)行時,它將從MMX寄存器中一次對所有8個像素值并行地完成其算術(shù)或邏輯操作,并將結(jié)果寫入一個MMX寄存器。這樣用MMX指令進(jìn)行一次緊縮型字節(jié)操作,一次就相當(dāng)于處理了8個像素,而且能在1個時鐘周期內(nèi)能執(zhí)行2條指令,使多能奔騰的性能大大超過奔騰。2023/1/3038新的數(shù)據(jù)類型實(shí)際上這是采用SIMD(單指令流多數(shù)據(jù)流)技術(shù)的結(jié)果。它能在運(yùn)用單條指令的同時并行處理多個數(shù)據(jù)元素的特性,在一個周期內(nèi)并行處理4種類型最多8組的64位寬度的模擬/數(shù)字的數(shù)據(jù),諸如聲音數(shù)據(jù)、圖形和圖像數(shù)據(jù)等模擬/數(shù)字的數(shù)據(jù),使并行性進(jìn)一步增強(qiáng)。2023/1/30392.采用飽和運(yùn)算飽和運(yùn)算也是MMX支持的一種新的運(yùn)算,與常用的環(huán)繞處理相對比,飽和運(yùn)算的優(yōu)點(diǎn)表現(xiàn)在:在常規(guī)的環(huán)繞處理中,上溢或下溢的結(jié)果均被截斷,只有結(jié)果的低位(有效位)能被返回,忽略了進(jìn)位。而在飽和運(yùn)算中,上溢或下溢的結(jié)果被截取(飽和)至該類數(shù)據(jù)類型的最大值或最小值,如表12-1所示。例如,2個16位的帶符號整數(shù)F000H+4000H,其和為13000H,由于保留結(jié)果的寄存器為16位,因此最高位1被截斷,結(jié)果為3000H,小于任一個輸入數(shù)。2023/1/3040采用飽和運(yùn)算而飽和算法則不同,在飽和算法中若發(fā)生上溢,則保留結(jié)果為FFFFH(16位整數(shù)的最大值),若發(fā)生下溢,則保留結(jié)果為0000H。這在圖形學(xué)中很有用。例如,一個暗色多面體正在按黑色做濃淡處理,忽然中間出現(xiàn)一個白色的像素,而飽和算法可以保證不會出現(xiàn)這樣的問題,因?yàn)橛?jì)算結(jié)果被限制在最大的黑色值,不會溢出而變成白色。2023/1/3041表12-1飽和數(shù)值范圍
2023/1/30423.具有積和運(yùn)算能力
在多媒體應(yīng)用程序中,必須處理大量數(shù)據(jù),矢量點(diǎn)積和矩陣乘法是處理圖像、音頻、視頻數(shù)據(jù)的最基本算法,用多能奔騰中的PMADDWD指令(緊縮字相乘并加結(jié)果,即積和運(yùn)算)可以大大提高矢量點(diǎn)積的運(yùn)算速度。這在音頻和視頻圖像的壓縮和解壓縮中是經(jīng)常用到的。2023/1/304312.1.6IntelPentiumⅡ微處理器
的主要特點(diǎn)1997年5月,Intel公司推出PentiumⅡ微處理器,簡稱PⅡ,中文名為“奔騰Ⅱ”
。PentiumⅡ是Intel公司PentiumPro級微處理器的第二代產(chǎn)品,它把多媒體增強(qiáng)技術(shù)(即MMX技術(shù))融合入高能奔騰處理器之中,使PentiumⅡ芯片既保持了高能奔騰原有的強(qiáng)大處理功能,又增強(qiáng)了PC在三維圖形、圖像和多媒體方面的可視化計(jì)算功能和交互功能。從系統(tǒng)結(jié)構(gòu)角度看,PentiumⅡ芯片采用了如下幾種先進(jìn)技術(shù),使其在整數(shù)運(yùn)算、浮點(diǎn)運(yùn)算和多媒體信息處理等方面具有十分優(yōu)異的功能。2023/1/30441.多媒體增強(qiáng)技術(shù)(MMX技術(shù))
在PentiumⅡ中采用了以下一系列多媒體增強(qiáng)技術(shù):①單指令多數(shù)據(jù)流(SingleInstructionMultipleData,SIMD)技術(shù),使一條指令能完成多重數(shù)據(jù)的處理工作,允許芯片減少在視頻、聲音、圖像和動畫中計(jì)算密集的循環(huán)。②針對多媒體操作中經(jīng)常出現(xiàn)的大量并行、重復(fù)運(yùn)算,新增加了57條功能強(qiáng)大的指令,用以更有效地處理聲音、圖像和視頻數(shù)據(jù)。強(qiáng)大的MMX技術(shù)指令集充分利用了動態(tài)執(zhí)行技術(shù),在多媒體和通信應(yīng)用中發(fā)揮了卓越的功能。2023/1/30452.動態(tài)執(zhí)行技術(shù)
為了幫助微處理器更有效地處理多重數(shù)據(jù)和提升軟件的速度,PentiumⅡ采用了由以下三種創(chuàng)新處理技巧相結(jié)合的動態(tài)執(zhí)行技術(shù)。1)多分支跳轉(zhuǎn)預(yù)測使用一種多分支跳轉(zhuǎn)預(yù)測的算法,當(dāng)處理器讀取指令時,也同時查看那些以前的指令,該技術(shù)增加了傳送到處理器的數(shù)據(jù)流,能對數(shù)據(jù)流向事先作出考慮。2023/1/3046動態(tài)執(zhí)行技術(shù)
2)數(shù)據(jù)流分析按一種最佳的順序執(zhí)行,使用數(shù)據(jù)流分析,處理器可查看被譯碼的指令,決定是否符合處理?xiàng)l件或取決于其他指令。然后,處理器決定最佳的處理順序,以最有效的方法執(zhí)行指令。3)推測執(zhí)行通過預(yù)先查找程序計(jì)數(shù)器和執(zhí)行那些可能會運(yùn)行的指令,來增加被執(zhí)行指令的數(shù)量。當(dāng)同時執(zhí)行5條指令時,便要用到“推測執(zhí)行”,這使得PentiumⅡ微處理器的超計(jì)算能力能充分得到發(fā)揮,以最大限度地提高指令的并行程度,從而提高軟件性能。動態(tài)執(zhí)行技術(shù)允許微處理器預(yù)測指令的順序,并進(jìn)行排序。2023/1/3047雙重獨(dú)立總線結(jié)構(gòu)
(DualIndependentBusDIB)
采用了上述兩種技術(shù)后,使PentiumⅡ處理器具有很高的處理能力,但要發(fā)揮這一高性能,還要求有很快的吞吐能力。而傳統(tǒng)的CPU數(shù)據(jù)總線如圖12-4(a)所示。CPU通過一條數(shù)據(jù)總線同主存、L2Cache以及PCI相連,這里會出現(xiàn)兩個問題:一是L2Cache受到處理器外部總線速度的限制;2023/1/3048圖12-4PentiumⅡ的總線結(jié)構(gòu)
2023/1/3049雙重獨(dú)立總線結(jié)構(gòu)二是在任一時刻,系統(tǒng)總線只允許訪問主存和L2Cache中的一個。而PentiumⅡ處理器采用了雙重獨(dú)立總線結(jié)構(gòu),如圖12-4(b)所示。這是由兩條總線組成的雙重獨(dú)立總線體系結(jié)構(gòu),一條是L2Cache總線,另一條是處理器至主存儲器的系統(tǒng)總線。PentiumⅡ處理器可以同時使用這兩條總線,其數(shù)據(jù)吞吐能力是單一總線結(jié)構(gòu)處理器的2倍;2023/1/3050雙重獨(dú)立總線結(jié)構(gòu)同時,這種雙重總線結(jié)構(gòu)使PentiumⅡ處理器的L2Cache的運(yùn)行速度達(dá)到Pentium處理器L2Cache的2倍多。隨著PentiumⅡ處理器的主頻不斷提高,L2Cache的速度也會隨之提高。另外,流水線系統(tǒng)總線實(shí)現(xiàn)了同時并行事務(wù)處理,以取代單一順序事務(wù)處理,加速了系統(tǒng)中的信息流,使總體性能得到提升。總之,這一切同雙重獨(dú)立總線體系結(jié)構(gòu)的改進(jìn)結(jié)合起來,提供3倍于單一總線體系結(jié)構(gòu)處理器的帶寬性能2023/1/3051PentiumⅡ的總線結(jié)構(gòu)
此外,PentiumⅡ處理器還采用了新的封裝技術(shù)———
單邊接觸(SingleEdgeContact,SEC)插盒。SEC插盒技術(shù)是先將芯片固定在基板上,然后用塑料和金屬將其完全封裝起來,形成一個SEC插盒封裝的處理器,插盒內(nèi)基板上固定的芯片包括PentiumⅡ處理器核心以及二級靜態(tài)突發(fā)高速緩存RAM(安排在處理器核心左、右各1個),這個SEC插盒通過Slot1插槽同主機(jī)相連。2023/1/305212.1.7IntelPentiumⅢ微處理器
的主要特點(diǎn)1999年2月,Intel公司發(fā)布了帶有70條附加浮點(diǎn)多媒體指令的PentiumⅢ微處理器,簡稱PⅢ,中文名為“奔騰Ⅲ”
。
PentiumⅢ微處理器是帶SSE指令集的PentiumⅡ處理器。2023/1/3053PentiumⅢ
最早推出的PentiumⅢ的主頻是450MHz和500MHz,系統(tǒng)總線頻率為100MHz,采用PentiumPro微結(jié)構(gòu),一級緩沖存儲器為16KB指令Cache和16KB數(shù)據(jù)Cache,二級緩沖存儲器為512KB,速度相當(dāng)CPU核心速度的一半;針對32位應(yīng)用程序進(jìn)行優(yōu)化,采用雙重獨(dú)立總線,具有動態(tài)執(zhí)行功能。其最大的特點(diǎn)是增加了70條數(shù)據(jù)流單指令多數(shù)據(jù)擴(kuò)展(StreamingSIMDExtensions,SSE)指令集,原先稱為“
MMX2指令集”,即“第二代多媒體擴(kuò)展指令集”。2023/1/3054PentiumⅢ
PentiumⅢ芯片中的70條SSE指令可分為三類:①內(nèi)存連續(xù)數(shù)據(jù)流優(yōu)化處理指令8條。②SIMD(單指令多數(shù)據(jù))浮點(diǎn)運(yùn)算指令50條。③新的多媒體指令12條。這些指令能增強(qiáng)音頻、視頻和3D圖形處理能力。2023/1/3055PentiumⅢ
為配合SSE指令集,PentiumⅢ芯片增加了8個新的128位單精度寄存器(4×32位),能同時處理4個單精度浮點(diǎn)變量,可達(dá)到每秒20億次的浮點(diǎn)運(yùn)算速度,使PentiumⅢ芯片在三維圖像處理、語言識別和視頻實(shí)時壓縮等方面的應(yīng)用得到長足的進(jìn)步。2023/1/305612.1.8IntelPentium4微處理器的
主要特點(diǎn)
2000年6月,Intel公司推出了采用新的IA32結(jié)構(gòu)的Pentium4微處理器芯片,這一芯片對PentiumPro的結(jié)構(gòu)進(jìn)行徹底的改造,Pentium4芯片的結(jié)構(gòu)是基于內(nèi)核體系結(jié)構(gòu)的重新設(shè)計(jì),而非內(nèi)核工藝的單純提高。第一代Pentium4芯片采用Willamette內(nèi)核,線寬工藝為0暢18μm,主頻為1暢4~2GHz。第二代Pentium4芯片采用Northwood內(nèi)核,線寬工藝為0暢13μm,主頻為1暢6~3暢06GHz,目前已超過3GHz。2023/1/3057Pentium42002年11月14日,Intel公司推出了支持超線程技術(shù)的Pentium4微處理器芯片,采用0.13μm線寬工藝,主頻為3.06MHz,外頻為133MHz,前端總線FSB的頻率為533MHz。2004年11月15日推出了主頻為3暢8GHz的Pentium4/750,這是Intel公司在2004年底前推出的主頻最高的Pentium4芯片。
Pentium4的主要有以下技術(shù)特性:2023/1/3058Pentium4
①采用3條超標(biāo)量流水線,流水線深度為20級,流水線深度越大(級數(shù)越高),則越易提高內(nèi)核的工作頻率。②改進(jìn)了分支預(yù)測單元,為分支預(yù)測提供了更好的算法,減少了33%的分支預(yù)測錯誤,提高了分支預(yù)測的精確度。③采用跟蹤緩存(TraceCache)和低延遲數(shù)據(jù)緩存,跟蹤緩存可以把已經(jīng)用過的并經(jīng)過譯碼后的微指令存儲下來,再次執(zhí)行到相同指令時,不必重新譯碼,就可以直接執(zhí)行已取到的相關(guān)數(shù)據(jù)。低延遲數(shù)據(jù)緩存使讀取緩存中的數(shù)據(jù)時只有2個周期的延遲,而PentiumⅢ是3個周期的延遲。2023/1/3059Pentium4
④采用高級動態(tài)執(zhí)行技術(shù)(AdvancedDynamicExecute,ADE),改善因流水線深度加大而帶來的運(yùn)算延遲問題,也可改善分支預(yù)測能力。⑤采用64位四倍數(shù)據(jù)速率(QuadDataRate,QDR)處理器前端總線(FrontSideBus,F(xiàn)SB)技術(shù),所謂QDR是指在一個時鐘周期內(nèi)可以4次訪問數(shù)據(jù),這樣,當(dāng)CPU的外頻(即CPU外部總線的基本頻率,由主板上時鐘發(fā)生器直接提供)為100MHz時,則FSB頻率為400MHz,這時,F(xiàn)SB的最大數(shù)據(jù)傳輸率可達(dá)3暢2GBps。2023/1/3060Pentium4
⑥增加了144條SSE2指令,引入了新的數(shù)據(jù)格式———
128位SIMD整數(shù)運(yùn)算和64位雙精度浮點(diǎn)運(yùn)算,SSE2指令集主要是在體系結(jié)構(gòu)內(nèi)部進(jìn)行優(yōu)化和加強(qiáng),不需要開發(fā)全新的操作系統(tǒng)。這144條指令對加速多媒體程序的執(zhí)行有很好的作用。⑦在第二代Pentium4(內(nèi)核為Northwood)中采用了超線程(Hyper‐Threading)技術(shù),使單芯片的工作能類似于雙芯片的工作,提高總體性能15%~30%。自PentiumⅡ開始,一直到Pentium4,Pentium系列又有相應(yīng)的低端產(chǎn)品Celeron(中文名為“賽揚(yáng)”)和面向服務(wù)器領(lǐng)域的高端產(chǎn)品Xeon(中文名為“至強(qiáng)”)。2023/1/3061Pentium4Celeron芯片同Pentium芯片相比,具有主頻及FSB較低、超頻性能好、價格低亷的優(yōu)點(diǎn),對一般用于文字處理、二維圖形制作、一般的上網(wǎng)和觀賞DVD碟片等具有性能/價格比的優(yōu)勢。Celeron芯片實(shí)質(zhì)上是同期Pentium芯片的簡化版本。Xeon芯片是同期Pentium芯片的高端版本,用于服務(wù)器等高端計(jì)算機(jī)領(lǐng)域。另有用于筆記本式計(jì)算機(jī)等移動式計(jì)算領(lǐng)域的Pentium4M微處理器。Pentium4M微處理器的主頻一般為2暢4GHz,前端總線的頻率為400MHz。2023/1/306212.1.9IntelPentiumM微處理器的
主要特點(diǎn)2003年3月,Intel公司發(fā)布了以迅馳技術(shù)Banias為核心的PentiumM微處理器,用于移動計(jì)算的筆記本式計(jì)算機(jī)。迅馳是指迅馳移動技術(shù)(CentrinoMobileTechnology),包括筆記本式計(jì)算機(jī)專用的、新的CPU(PentiumM)、新的855芯片組系列以及支持IEEE802.11b/a的無線網(wǎng)絡(luò)接口,迅馳技術(shù)的實(shí)質(zhì)2003年3月,Intel公司發(fā)布了以迅馳技術(shù)Banias為核心的PentiumM微處理器,用于移動計(jì)算的筆記本式計(jì)算機(jī)。迅馳是指迅馳移動技術(shù)(CentrinoMobileTechnology),包括筆記本式計(jì)算機(jī)專用的、新的CPU(PentiumM)、新的855芯片組系列以及支持IEEE802.11b/a的無線網(wǎng)絡(luò)接口,迅馳技術(shù)的實(shí)質(zhì)是指一整套無線接入的移動計(jì)算技術(shù)平臺,是對無線技術(shù)的全面支持,突出“移動性”的特點(diǎn)。2023/1/3063PentiumM
采用Banias核心的PentiumM微處理器,線寬工藝為0.13μm,主頻為1.6GHz、1.5GHz、1.4GHz、1.3GHz、1.1GHz和900MHz。2004年又推出了以Dothan為核心的PentiumM微處理器,線寬工藝為90nm,集成了1.4億個晶體管,目前面世的有PentiumM755(2GHz)、PentiumM745(1.8GHz)、PentiumM735(1.7GHz)、PentiumM725(1.6GHz)、PentiumM715(1.5GHz)。
PentiumM微處理器采用全新的體系結(jié)構(gòu),以解決高性能和低功耗、高性能和小體積的矛盾,采用了如下技術(shù):2023/1/3064PentiumM
1)適合于移動微處理器的流水線
PentiumⅢ的流水線為12級,Pentium4的流水線為20級,考慮到PentiumM微處理器的特性,以Banias為核心的芯片采用了流水線深度介于PentiumⅢ與Pentium4之間的某種特定的流水線結(jié)構(gòu)。
2023/1/3065PentiumM2)大容量的L2Cache以Banias為核心的PentiumM微處理器芯片集成了64KB的L1Cache,其中32KB為數(shù)據(jù)Cache(D‐Cache),32KB為指令Cache(I‐Cache)。同時還集成了大容量的高達(dá)1MB的L2Cache,L2Cache的晶體管數(shù)量幾乎占了Banias核心中總數(shù)為7700萬個晶體管的一半。而以Dothan為核心的PentiumM微處理器集成了2MB的L2Cache,并且精心設(shè)計(jì)了新的門電路,改變了Cache內(nèi)的數(shù)據(jù)訪問方式,使L2Cache的功耗大幅度降低。2023/1/3066PentiumM
3)電源優(yōu)化的處理器系統(tǒng)總線(PowerOptimizedProcesserSystemBus)在傳統(tǒng)的微體系結(jié)構(gòu)中,即使未使用系統(tǒng)總線,微處理器也會打開總線。而采用電源優(yōu)化的PentiumM/Dothan處理器,進(jìn)行嚴(yán)格的緩沖器管理,使系統(tǒng)總線處于斷電狀態(tài),直到感應(yīng)到來自芯片組的信息后才通電,打開總線的相關(guān)部分,達(dá)到減少處理器耗電量的目的。2023/1/3067PentiumM
4)高級分支預(yù)測技術(shù)(AdvancedBranchPrediction)
PentiumM微處理器芯片采用高級分支預(yù)測技術(shù),預(yù)先將要處理的指令進(jìn)行預(yù)編譯,分析這些指令的結(jié)構(gòu),得出分支預(yù)測的結(jié)果。同時分析程序過去的運(yùn)行規(guī)律,預(yù)測今后可能處理的指令。這可以減小20%的預(yù)測錯誤,顯著改善處理器的處理性能和執(zhí)行效率。2023/1/3068PentiumM
5)專用堆棧管理器(DedicatedStackManager)在傳統(tǒng)處理器的設(shè)計(jì)中,處理器需要反復(fù)中斷程序的執(zhí)行,以維持處理器的內(nèi)部記錄。而且在常規(guī)應(yīng)用中,有些指令要占據(jù)結(jié)構(gòu)堆棧用做源操作數(shù),有些指令除了要執(zhí)行本身操作外,還需負(fù)擔(dān)管理堆棧所需的額外操作,從而降低了處理器的效率和性能。PentiumM微處理器中有一個硬件級的記錄內(nèi)部運(yùn)行情況的專用堆棧管理器,這一堆棧管理器的出現(xiàn)完善了處理器的堆棧管理功能,不僅使PUCH、POP、CALL等指令在處理器內(nèi)部的主執(zhí)行通道內(nèi)完成操作,而且能跟蹤堆棧指針的增減,并周期性地同處理器中的其他信息同步,以高效率地協(xié)調(diào)這些指令的運(yùn)行。采用專用堆棧管理器的PentiumM微處理器可以不中斷地執(zhí)行程序指令,減少了5%的堆棧操作請求。2023/1/3069PentiumM6)增強(qiáng)型的Speedstep技術(shù)(EnhancedSpeedstep)第一代的Speedstep技術(shù)提供了兩種處理器運(yùn)行模式———
全速運(yùn)行模式(采用外接電源供電時)和低速運(yùn)行模式(采用內(nèi)部電池供電時),兩者都可在BIOS中設(shè)置強(qiáng)制運(yùn)行。PentiumM微處理器采用第二代Speedstep技術(shù)———
增強(qiáng)型的Speedstep技術(shù),其特點(diǎn)是可以根據(jù)處理器的負(fù)載情況在兩種運(yùn)行模式之間進(jìn)行電壓和頻率的動態(tài)切換。2023/1/3070PentiumM
7)微指令操作融合(Micro‐OpFusion)又稱批量微指令處理。在有多個可同時執(zhí)行的指令的情況下,將多個指令操作合并成一條指令,進(jìn)而同時處理,以提高CPU的性能和使用效率。多個微操作融合后,只需使用較少的處理器資源,便可處理相同數(shù)目的操作。例如,兩個融合后的微操作可以只占用一個資源,這樣不僅提高了性能,也改善了電源管理。這是一項(xiàng)專為實(shí)現(xiàn)移動(Mobile)CPU的高性能、低功耗而設(shè)計(jì)的新技術(shù),使PentiumM處理器中實(shí)際執(zhí)行的指令數(shù)量可以減少10%以上。2023/1/3071PentiumM8)嵌入雙頻無線連接功能
PentiumM處理器采用IEEE802.11a與IEEE802.b協(xié)議分別以54Mbps與11Mbps進(jìn)行無線通信,同無線LAN基礎(chǔ)設(shè)施兼容。迅馳平臺中采用的WLAN(無線局域網(wǎng))組件可將同時使用IEEE802.11b與藍(lán)牙時的干擾減至最少,并能優(yōu)化處理能力和運(yùn)用范圍,提高兩種方式的網(wǎng)絡(luò)響應(yīng)性能。2023/1/307212.2
32位微處理器的編程結(jié)構(gòu)
對匯編語言程序員而言,掌握所用微處理器的寄存器結(jié)構(gòu)是至關(guān)重要的。因?yàn)樵谶@些寄存器中,有的是在程序設(shè)計(jì)期間必須使用的,被稱為程序可見的寄存器;有的雖然在應(yīng)用程序設(shè)計(jì)期間不能直接尋址,被稱為程序不可見的寄存器,但這些寄存器在系統(tǒng)運(yùn)行程序期間可能間接使用到,用來控制和操作保護(hù)模式下的存儲器系統(tǒng)。2023/1/307332位微處理器的編程結(jié)構(gòu)
80X86微處理器的寄存器組主要包括:基本結(jié)構(gòu)寄存器(BaseArchitectureRegister)、系統(tǒng)級寄存器(SystemLevelRegister)、調(diào)試寄存器和測試寄存器(DebugRegisterandTestRegister)以及浮點(diǎn)寄存器(FloatingPointRegister)。2023/1/307412.2.1基本結(jié)構(gòu)寄存器
80X86微處理器有16個基本結(jié)構(gòu)寄存器,如圖12-5所示。這16個寄存器按其用途可分為通用寄存器專用寄存器段寄存器2023/1/3075基本結(jié)構(gòu)寄存器2023/1/30761.通用寄存器通用寄存器(GeneralPurposeRegister)有8個,即累加器EAX(Accumulator)、基址寄存器EBX(Base)、計(jì)數(shù)寄存器ECX(Counter)、數(shù)據(jù)寄存器EDX(Data)、堆棧指針ESP(StackPointer)、基址指針EBP(BasePointer)、源變址寄存器ESI(SourceIndex)以及目的變址寄存器EDI(DestinationIndex)。2023/1/3077通用寄存器這些32位的通用寄存器可以用來保存數(shù)據(jù)和地址,支持1位、8位、16位和32位的數(shù)據(jù)操作數(shù),1~32的位字段以及16位或32位的地址操作數(shù)。在這8個32位寄存器中,8個16位寄存器AX、BX、CX、DX、SP、BP、SI和DI可以存放16位信息,8個8位寄存器AH、AL、BH、BL、CHCL、DH和DL可以存放8位信息。而32位寄存器僅用于80386及其以上的80X86微處理器2023/1/3078通用寄存器
在80X86的指令系統(tǒng)中,某些指令的操作數(shù)只能用一個特定的寄存器或寄存器組來表示,對某些用來完成特定操作的80X86指令,上述通用寄存器具有一些隱含的用法,如表12-2所示。2023/1/3079
2023/1/30802023/1/3081
2.專用寄存器
(SpecialRegister)
80X86微處理器的專用寄存器有指令指針EIP(InstructionPointer)和標(biāo)志寄存器EFLAGS(Flags)。1)指令指針EIP32位指令指針指向要執(zhí)行的下一條指令的偏移值,該偏移值是相對于指令所在代碼段的基地址(段起始地址)的,在8086和80286微處理器中,指令指針為16位寄存器,以IP表示。程序員不能對EIP(或IP)進(jìn)行直接的存取操作,程序中的轉(zhuǎn)移指令、返回指令以及中斷處理能對EIP(或IP)進(jìn)行操作。2023/1/30822)標(biāo)志寄存器EFLAGS
32位標(biāo)志寄存器EFLAGS用于指示微處理器的狀態(tài),并控制其操作,其各位的定義如圖12-6所示。2023/1/3083標(biāo)志寄存器EFLAGS2023/1/3084標(biāo)志寄存器EFLAGS
在這32位標(biāo)志寄存器中,PentiumPro級微處理器定義了18位,如表12-3所示2023/1/3085表12-3標(biāo)志寄存器中各位的定義
表12-32023/1/3086表12-3
2023/1/30872023/1/30883.段寄存器
6個16位段寄存器用來保存標(biāo)志現(xiàn)行可尋址存儲器段的段選擇子(Selector,又稱選擇符)值,在實(shí)地址方式中,段的長度固定為64KB(216
B),而在保護(hù)方式下,每個段的長度可以在1B到機(jī)器的整個線性和物理地址空間即4GB(232
B)間任選。各段寄存器在系統(tǒng)中的功能如表12-4所示。2023/1/3089表12-4
表12-42023/1/30902023/1/3091表12-4段寄存器
在80286以上的處理器中,每一個段寄存器都有一個與之相對應(yīng)的段描述子寄存器,用來描述一個段的段基地址、段限(段的范圍、長度)和段的屬性。段寄存器是程序員可見的,而段描述子寄存器對程序員是透明的。當(dāng)一個段寄存器的值確定后,相應(yīng)的描述子寄存器的內(nèi)容就自動地修正成正確的信息。保護(hù)方式下,段基地址、段限和屬性全部按由段選擇子所指向的段描述子內(nèi)容進(jìn)行修改。每當(dāng)訪問存儲器時,與所用段相關(guān)的段描述子寄存器就自動參與該次存儲器訪問操作。段基地址成為線性地址或物理地址計(jì)算中的一個分量,段限用于段限檢查操作,屬性則對照所要求的存儲器訪問類型進(jìn)行檢驗(yàn)。段描述子寄存器又稱為段高速緩存器(Cache),段寄存器和段描述子寄存器的關(guān)系如圖12-7所示。2023/1/3092段描述子寄存器2023/1/309312.2.2系統(tǒng)級寄存器80X86微處理器中有一組系統(tǒng)級寄存器,包括5個控制寄存器CR0~CR4、2個系統(tǒng)地址寄存器GDTR、IDTR以及2個系統(tǒng)段寄存器TR、LDTR,如圖12-8所示。1.控制寄存器(ControlRegister)80X86微處理器有5個控制寄存器,用來實(shí)現(xiàn)對80X86微處理器多種功能的控制與選擇。2023/1/3094系統(tǒng)級寄存器2023/1/3095系統(tǒng)級寄存器
1)CR0
PentiumPro微處理器的CR0定義了11個控制位,各位定義如表12-5所示。2023/1/3096表12-5
CR0中各位的定義表12-52023/1/30972023/1/3098控制寄存器
控制寄存器CR0在80286微處理器中稱為機(jī)器狀態(tài)字(MachineStatusWord,MSW),它是一個16位寄存器,定義了PE、MP、EM和TS4位;在80386微處理器中,CR0定義了PE、MP、EM、TS、ET和PG6位;在80486微處理器中,CR0定義了10位,即PE、MP、EM、TS、NE、WP、AM、NW、CD和PG,另外,位4恒置1(即80386中的ET位置1);而Pentium和PentiumPro微處理器的CR0同80486
。2023/1/3099控制寄存器2)CR2頁故障線性地址寄存器CR2用來保存發(fā)生頁故障中斷(異常14)之前所訪問的最后一個頁面的線性頁地址。用軟件讀出即可得到發(fā)生頁故障的線性地址。CR2由80以上微386處理器定義。2023/1/30100控制寄存器
3)CR3頁目錄基地址寄存器CR3用來存放頁目錄表的物理基地址。由于頁目錄表是按頁對齊的(4KB),因而CR3通過高20位來實(shí)施這一要求,而低12位定義為其他用途,目前已定義7位,各位的定義如表12-6所示。2023/1/30101表12-6
CR3低10位的定義
2023/1/30102控制寄存器
CR3是80386以上微處理器才能使用的,其中PWT和PCD兩位是為80486微處理器新定義的。4)CR4
CR4是Pentium以上微處理器中新增加的控制寄存器,目前定義了8位,各位的定義如表12-7所示。CR4中的MCE和PGE兩位是為PentiumPro微處理器新定義的位。2023/1/30103表12-7
CR4低8位的定義
表12-72023/1/301042023/1/30105系統(tǒng)地址寄存器
2.系統(tǒng)地址寄存器(SystemAddressRegister)在保護(hù)方式下,存儲器操作數(shù)所在的段的性質(zhì)由一個稱為“描述子”(Descriptor)的數(shù)據(jù)結(jié)構(gòu)來描述,而在一個系統(tǒng)中,所有段的描述子存放在一個或幾個稱為“描述子表”的存儲區(qū)中。為了尋址和定義這些描述子表的地址,80X86(80286以上)微處理器中包含有2個系統(tǒng)地址寄存器———GDTR和IDTR,如圖12-8所示。2023/1/30106系統(tǒng)地址寄存器
1)全局描述子表寄存器(GlobalDescriptorTableRegister,GDTR)
GDTR是一個48位字長的寄存器(對80286微處理器而言,為40位寄存器),其間存放全局描述子表的段基地址(SegmentBaseAddress,段起始地址,對80386以上微處理器為32位,對80286微處理器為24位)以及段限(Limit,16位)。2023/1/30107系統(tǒng)地址寄存器
2)中斷描述子表寄存器(InterruptDescriptorTableRegister,IDTR)
IDTR是一個48位字長的寄存器(對80286微處理器而言,為40位寄存器),其間存放中斷描述子表的段基地址(段起始地址,對80386以上微處理器為32位,對80286微處理器為24位)以及段限(16位)。2023/1/301083.系統(tǒng)段寄存器
(SystemSegmentRegister)
80286以上的微處理器有2個系統(tǒng)段寄存器LDTR(局部描述子表寄存器)和TR(任務(wù)狀態(tài)段器),它們同段寄存器一樣,需裝入一個選擇子,以決定相應(yīng)描述子表的地址。1)局部描述子表寄存器(LocalDescriptorTableRegister,LDTR)它是一個16位的寄存器。為了訪問局部描述子表,需在LDTR中裝入一個選擇子,用該選擇子訪問全局描述子表,并把局部描述子表的段基地址、段限和訪問權(quán)(AccessRight)裝入LDTR的Cache區(qū)(LDTCache描述子寄存器,或稱段描述子Cache)。這些段描述子Cache的值根據(jù)裝入段寄存器中選擇子值所索引(變址)的段描述子內(nèi)容來定義。2023/1/30109系統(tǒng)段寄存器
2)任務(wù)狀態(tài)段寄存器(TaskStateSegmentRegister,TR)能在任務(wù)或進(jìn)程之間進(jìn)行快速切換是多任務(wù)/多用戶操作系統(tǒng)的一個重要屬性。80286以上的微處理器通過提供用硬件實(shí)現(xiàn)任務(wù)切換指令來直接支持這一操作。每一個任務(wù)都必須有一個與其相關(guān)聯(lián)的任務(wù)狀態(tài)段(TaskStateSegment,TSS),現(xiàn)行的TSS由TR來標(biāo)識。TSS中保存有當(dāng)前任務(wù)的所有環(huán)境。80286微處理器的TSS為002BH個字節(jié),80386以上微處理器的TSS為0064H個字節(jié),甚至可以擴(kuò)展到4GB。TR中含有一個指向定義現(xiàn)行TSS的任務(wù)狀態(tài)段描述子的選擇子,由TR中的16位選擇子從GDT中索引TSS描述子,微處理器會自動將TSS描述子裝入TSSCache中,TSSCache為64位寄存器,存放32位段基地址、20位段限和12位訪問權(quán),如圖12-8所示。2023/1/30110系統(tǒng)段寄存器上述LDTCache和TSSCache對程序員而言是透明的。2023/1/3011112.2.3調(diào)試寄存器和測試寄存器80386以上的微處理器中還有調(diào)試寄存器和測試寄存器,用于排除故障和測試分頁及Cache的狀態(tài),如圖12-9所示。
2023/1/301122023/1/30113調(diào)試寄存器和測試寄存器2023/1/30114
1.調(diào)試寄存器(DebugRegister)
對80386而言,定義了6個調(diào)試寄存器。其中,DR0~DR3指定了4個線性斷點(diǎn)地址;DR7為調(diào)試控制寄存器,用于設(shè)置斷點(diǎn);DR6為調(diào)試狀態(tài)寄存器,用于顯示斷點(diǎn)的當(dāng)前狀態(tài)。調(diào)試寄存器是一組32位的寄存器,是程序員可訪問的,提供片上支持調(diào)試。
80486的調(diào)試寄存器同80386。
Pentium處理器對調(diào)試寄存器DR4和DR5給予調(diào)試寄存器DR6和DR7的別名。當(dāng)控制寄存器CR4中DE位設(shè)置為0時,即禁止調(diào)試擴(kuò)充,Pentium通過允許引用DR6和DR7的別名保持與現(xiàn)有軟件兼容;當(dāng)DE位設(shè)置為1時,即允許調(diào)試擴(kuò)充,引用DR4或DR5將產(chǎn)生未定義的操作碼異常。2023/1/301152.測試寄存器(TestRegister)
對80386而言,有兩個測試寄存器TR6和TR7,用來測試TLB。TLB中保存著最常用的頁表地址轉(zhuǎn)換。TR6是TLB的命令測試寄存器,指示讀寫TLB的入口;TR7是TLB的數(shù)據(jù)寄存器,保存TLB的測試數(shù)據(jù)。對80486而言,增加了3個用于調(diào)試片上Cache的測試寄存器TR3、TR4和TR5,其中TR3為Cache數(shù)據(jù)測試寄存器,TR4為Cache狀態(tài)測試寄存器,而TR5為Cache控制測試寄存器。2023/1/30116測試寄存器Cache數(shù)據(jù)測試寄存器,TR4為Cache狀態(tài)測試寄存器,而TR5為Cache控制測試寄存器。
Pentium微處理器取消了測試寄存器TR,測試寄存器的功能由一組模型專用寄存器(ModelSpecialRegisters,MSR)來實(shí)現(xiàn),這一組MSR用于執(zhí)行跟蹤、性能監(jiān)測、測試和機(jī)器檢查錯誤。Pentium微處理器采用兩條指令RDMSR(讀MSR)和WRMSR(寫MSR)來訪問這些寄存器,ECX中的值(8位值)確定將訪問該組寄存器中的哪一個MSR。所有的MSR與需要裝入ECX的值如表12.8所示。2023/1/30117表12-8模型專用寄存器與ECX關(guān)系
表12-82023/1/301182023/1/3011912.2.4浮點(diǎn)寄存器
80486微處理器片內(nèi)集成有浮點(diǎn)處理部件(FloatingProcessingUnit,F(xiàn)PU),其浮點(diǎn)寄存器(FloatingPointRegister,F(xiàn)PR)包括8個數(shù)據(jù)寄存器、1個標(biāo)記字、1個狀態(tài)寄存器、1個控制寄存器、1個指令指針以及1個數(shù)據(jù)指針,如圖12-10所示。2023/1/30120圖12-10浮點(diǎn)寄存器
2023/1/30121浮點(diǎn)寄存器1)數(shù)據(jù)寄存器(DataRegister)它是一組80位的寄存器,提供了相當(dāng)于20個32位寄存器的容量,這8個80位的數(shù)據(jù)寄存器中的每一個都分成同F(xiàn)PU的擴(kuò)展精度數(shù)據(jù)類型相對應(yīng)的字段,即1位符號位、15位階碼、64位數(shù)值(尾數(shù))。指令可以隱式或顯式尋址這些數(shù)據(jù)寄存器。
2023/1/30122浮點(diǎn)寄存器2)標(biāo)記字(TagWord)標(biāo)記字如圖12-11所示,用來標(biāo)識每個數(shù)據(jù)寄存器的內(nèi)容。每2位標(biāo)記表示8個數(shù)據(jù)寄存器中的一個。標(biāo)記字的主要功能是優(yōu)化FPU的功能,并通過標(biāo)記字能識別“空”和“非空”寄存器單元來控制堆棧。它還允許異常處理程序檢查堆棧單元的內(nèi)容,而不需要對現(xiàn)行數(shù)據(jù)進(jìn)行復(fù)雜的譯碼。2023/1/30123圖12-11
FPU標(biāo)記字
2023/1/30124浮點(diǎn)寄存器
3)狀態(tài)寄存器(StatusRegister)狀態(tài)寄存器存放16位狀態(tài)字,反映FPU的總的狀態(tài),如圖12-12所示。2023/1/30125圖12-12
FPU狀態(tài)寄存器
2023/1/30126浮點(diǎn)寄存器4)控制寄存器(ControlRegister)
FPU提供若干處理選擇項(xiàng),這些選擇項(xiàng)是通過將存儲器的控制字裝入控制寄存器進(jìn)行選擇的,控制寄存器中各寄存器的格式如圖12-13所示。FPU控制字的低字節(jié)為錯誤和異常屏蔽,其中第0~5位包含F(xiàn)PU識別的六種異常中每一種異常的各自的屏蔽。2023/1/30127圖12-13
FPU控制寄存器
2023/1/30128浮點(diǎn)寄存器
IM(InvalidOperation)———
無效操作。
DM(DenormalizedOperand)———
非規(guī)格化操作數(shù)。
ZM(Zerodivide)———
除數(shù)為零。
OM(Overflow)———
上溢。
UM(Underflow)———
下溢。
PM(Precision)———
精度。2023/1/30129浮點(diǎn)寄存器PM(Precision)———
精度。
FPU控制字的高字節(jié)構(gòu)成FPU的工作方式,包括RC和PC。
RC(RoundingControl),舍入控制。
00———
舍入到最近的偶數(shù)。
01———
下舍入(趨向-∞)。
10———
上舍入(趨向+∞)。
11———
截斷(舍位到接近零)。
RC位提供直接舍入和真截斷,且舍入到最接近IEEE標(biāo)準(zhǔn)規(guī)定的方式。舍入控制僅影響操作結(jié)束時進(jìn)行舍入的那些指令。2023/1/30130浮點(diǎn)寄存器
PC(PrecisionControl),精度控制。
00———
24位(單精度)。
01———
保留。
10———
53(雙精度)。
11———
64(擴(kuò)展精度)。
PC位用來按低于64位(擴(kuò)展精度)默認(rèn)設(shè)置FPU內(nèi)部有效位的操作精度,這有利于保持同早期低精度運(yùn)算處理器的兼容。2023/1/30131浮點(diǎn)寄存器
5)指令指針和數(shù)據(jù)指針(InstructionPointerandDataPointer)
80486微處理器包含有2個指針寄存器———
指令指針寄存器和數(shù)據(jù)指針寄存器,以提供發(fā)生故障的指令的地址及其數(shù)據(jù)存儲器操作數(shù)的地址。在Pentium以上微處理器中,在應(yīng)用程序模式下,上述浮點(diǎn)寄存器不再使用。2023/1/3013212.3
32位微處理器的引腳功能微處理器的引腳功能是微型計(jì)算機(jī)系統(tǒng)中存儲器接口和I/O接口中的重要內(nèi)容之一。本小節(jié)論述32位微處理器的引腳功能,在第2章2.2節(jié)描述8086微處理器的引腳功能的基礎(chǔ)上扼要地描述32位微處理器80386、80486和Pentium的引腳功能。2023/1/3013312.332位微處理器的引腳功能12.3.180386微處理器的引腳功能12.3.2Pentium微處理器的引腳功能簡介2023/1/3013412.3.1
80386微處理器的引腳功能
2023/1/30135
表12-9
80386總線信號與
引腳編號對照表
2023/1/30136表12-9
80386總線信號與引腳編號對照表
2023/1/30137
80386總線信號
80386的引腳信號按其功能可分為8組。1)數(shù)據(jù)總線(D31~D0,三態(tài),雙向)它為80386和其他設(shè)備之間提供數(shù)據(jù)通路,80386每周期傳送數(shù)據(jù)的寬度是動態(tài)可變的,可以是32位或16位,由輸入信號確定。在任何寫操作周期(包括暫停周期和停機(jī)周期),80386總是驅(qū)動數(shù)據(jù)總線的所有32位信號,而不管當(dāng)前總線的實(shí)際寬度是多少。2023/1/3013880386總線信號
2)地址總線(A31~A2,~,三態(tài),輸出)(1)A31~A2提供物理存儲器和端口地址,可尋址4GB的物理存儲器和64KB的I/O端口。80386與80387或80287數(shù)值處理器的通信使用I/O空間,其地址范圍為8000008FH~800000FFH,即當(dāng)A31為高電平、M/為低電平時,才產(chǎn)生數(shù)值處理器的選擇信號。
2023/1/30139地址總線(2)~字節(jié)允許線(又稱字節(jié)使能線),用來選通數(shù)據(jù)總線的不同部件,對應(yīng)于D0~D7,對應(yīng)于D8~D15,對應(yīng)于D16~D23,對應(yīng)于D24~D31。2023/1/301403)時鐘(CLK2)
80386的基本定時信號由CLK2提供,CLK2在80386內(nèi)部經(jīng)過2分頻后產(chǎn)生用于執(zhí)行指令的處理器內(nèi)部時鐘,該內(nèi)部時鐘包括兩相———
Φ1和Φ2,每一相內(nèi)部時鐘都是一個CLK2周期,CLK2與Φ1、Φ2的關(guān)系如圖12-15所示。2023/1/30141圖12-15CLK2與Φ1和Φ2的關(guān)系2023/1/301424)總線周期定義信號4)總線周期定義信號(M/、W/、D/,三態(tài),輸出,用來定義正在進(jìn)行的總線周期的類型)(鎖定)信號用來區(qū)分總線周期的類型。W/(寫/讀)、D/(數(shù)據(jù)/控制)和M/(存儲器/IO)是總線周期定義信號。當(dāng)80386
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025委托收購合同專業(yè)版范文
- 2025設(shè)立有限責(zé)任公司出資合同
- 2025私人的轉(zhuǎn)讓合同
- 線上醫(yī)療服務(wù)的發(fā)展現(xiàn)狀與未來趨勢分析
- 商場教師節(jié)促銷活動策劃方案
- 2025年湘師大新版必修三語文下冊階段測試試卷
- 2025年浙教版七年級生物下冊月考試卷含答案
- 2025年湘教新版選擇性必修3物理上冊階段測試試卷含答案
- 2025年度智能家居鋪面轉(zhuǎn)租合同協(xié)議4篇
- 二零二五年度民辦學(xué)校教師信息技術(shù)應(yīng)用聘用合同4篇
- GB/T 45120-2024道路車輛48 V供電電壓電氣要求及試驗(yàn)
- 春節(jié)文化常識單選題100道及答案
- 華中師大一附中2024-2025學(xué)年度上學(xué)期高三年級第二次考試數(shù)學(xué)試題(含解析)
- 12123交管學(xué)法減分考試題及答案
- 2025年寒假實(shí)踐特色作業(yè)設(shè)計(jì)模板
- 24年追覓在線測評28題及答案
- 高考滿分作文常見結(jié)構(gòu)
- 心肌梗死診療指南
- 食堂項(xiàng)目組織架構(gòu)圖
- 原油脫硫技術(shù)
- GB/T 2518-2019連續(xù)熱鍍鋅和鋅合金鍍層鋼板及鋼帶
評論
0/150
提交評論