第2章微處理器_第1頁
第2章微處理器_第2頁
第2章微處理器_第3頁
第2章微處理器_第4頁
第2章微處理器_第5頁
已閱讀5頁,還剩92頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第第2章章 微處理器微處理器l微處理器,又稱中央處理單元(Central Processing Unit,CPU)是采用大規(guī)模(LSI)或超大規(guī)模集成電路(VLSI)技術(shù)制成的半導(dǎo)體芯片。它將控制單元,寄存器組,算術(shù)邏輯單元(ALU)及內(nèi)部總線集成在芯片上,組成具有運算器和控制器功能的部件。2.1 8086微處理器的結(jié)構(gòu)微處理器的結(jié)構(gòu)l8086是Intel系列的第三代16位微處理器,采用了HMOS高密度工藝,每片集成4萬多只晶體管,單一+5v電源,主頻為5MHz/10MHz。它的內(nèi)部和外部的數(shù)據(jù)總線寬度是16位,地址總線寬度20位,可導(dǎo)址空間達220,即1MB。2.1.1 8086的功能結(jié)構(gòu)的

2、功能結(jié)構(gòu)l 8086微處理器的內(nèi)部功能結(jié)構(gòu)(如圖)由兩個獨立的工作部件執(zhí)行部件EU(Execution Unit)和總線接口部件BIU(Bus Interface Unit)構(gòu)成 :1. 執(zhí)行部件EU:由運算器、寄存器組、控制器等組成,負責(zé)指令的執(zhí)行 2.總線接口部件BIU:由指令隊列、地址加法器、總線控制邏輯等組成,負責(zé)與系統(tǒng)總線打交道數(shù)據(jù)寄存器數(shù)據(jù)寄存器指針指針和變和變址寄址寄存器存器AH ALBH BLCH CLDH DL SPBPSIDIAXBXCXDX暫存寄存器暫存寄存器ALU標志寄存器標志寄存器FR EU控制器控制器ALU數(shù)據(jù)總線數(shù)據(jù)總線 (16位)位)指令隊列緩沖器指令隊列緩沖器

3、1 2 3 4 5 6總線總線控制控制邏輯邏輯8086總線總線地址加法器地址加法器 CS DS SS ES IP內(nèi)部暫存器內(nèi)部暫存器AB(20位位)執(zhí)行部件(執(zhí)行部件(EU)總線接口部件(總線接口部件(BIU)DB(16位位)(8位)位)隊列總線隊列總線 8086CPU的內(nèi)部功能結(jié)構(gòu)框圖1.執(zhí)行部件執(zhí)行部件EUl (1)EU的功能:lA. 從BIU的指令隊列緩沖器中取出指令,由EU控制器的指令譯碼器譯碼產(chǎn)生相應(yīng)的操作控制信號給各部件lB. 對操作數(shù)進行算術(shù)運算和邏輯運算,并將運算結(jié)果的狀態(tài)特征保存到狀態(tài)寄存器FR中l(wèi)C. EU不直接與CPU外部系統(tǒng)相連,當(dāng)需要與主存儲器或I/O設(shè)備交換數(shù)據(jù)時,

4、EU向BIU發(fā)出命令,并提供給BIU16位有效地址及所需傳送的數(shù)據(jù)l(2)執(zhí)行部件EU的組成lA. EU由算術(shù)邏輯單元ALUlB. 通用數(shù)據(jù)寄存器組lC. 地址指針和變址寄存器lD. 標志寄存器lE. 數(shù)據(jù)暫存寄存器lF. EU控制器組成l(3)EU的特點:lA.通用數(shù)據(jù)寄存器AX,BX,CX,DX,既可以作16位寄存器使用,也可以分成高、低8位分別作兩個8位寄存器使用。地址指針BP,SP和變址寄存器SI,DI都是16位寄存器。lB.ALU的核心是16位二進制加法器lC.16位狀態(tài)標志寄存器(7位未用)存放操作后的狀態(tài)特征和設(shè)置的控制標志。如下圖所示:lD.EU控制器是執(zhí)行指令的控制電路,實現(xiàn)

5、從隊列中取指令、譯碼、產(chǎn)生控制信號等。D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 CFPFAFZFSFTFIFDFOFPSW 2.總線接口部件BIUl(1) BIU的功能的功能:l1) BIU從主存取指令送到指令隊列緩沖器l2) CPU執(zhí)行指令時,總線接口單元要配合EU從指定的主存單元或外設(shè)端口中取數(shù)據(jù),將數(shù)據(jù)傳送給EU或把EU的操作結(jié)果傳送到指定的主存單元或外設(shè)端口中l(wèi)3) 計算并形成訪問存儲器的20位物理地址l(3)BIU的組成:l1) 4個16位段寄存器l2) 16位指令指針寄存器l3) 20位物理地址加法器l4) 6字節(jié)指

6、令隊列及總線控制邏輯l (3)BIU的特點:l1) 指令隊列是由6個字節(jié)的寄存器組成(8088指令隊列由4個字節(jié)組成),采用“先進先出”原則。l2) 地址加法器是用來產(chǎn)生20位存儲器物理地址的。物理地址的計算公式為:l物理地址(20位)= 段基址(16位)16+ 偏移地址(16位)l3) 8086分配20條引腳線分時傳送20位地址,16位數(shù)據(jù)和4位狀態(tài)信息。2.1.2 8086的寄存器結(jié)構(gòu)的寄存器結(jié)構(gòu)l8086CPU內(nèi)部設(shè)有三組信息寄存器(通用數(shù)據(jù)寄存器組,地址指針和變址寄存器,段寄存器組)和一個標志寄存器(指令指針寄存器IP)。1.通用數(shù)據(jù)寄存器通用數(shù)據(jù)寄存器lEU中設(shè)置了四個16位通用寄存

7、器,它們分別是AX,BX,CX和DX。它們可以拆成兩個獨立的8位寄存器使用。通用寄存器可參與算術(shù)和邏輯運算,但它們還有各自特殊的用途。l它們的具體用法如圖所示:寄存器寄存器一般用法一般用法 隱含用法隱含用法 AXAX 16 16位累加器位累加器(Accumulator)Accumulator)字乘時提供一個操作數(shù)并存放積的低字字乘時提供一個操作數(shù)并存放積的低字; ;字除時提供被字除時提供被除數(shù)的低字并存放商除數(shù)的低字并存放商ALALAXAX的低的低8 8位位字節(jié)乘時提供一個操作數(shù)并存放積的低字節(jié);字節(jié)除時字節(jié)乘時提供一個操作數(shù)并存放積的低字節(jié);字節(jié)除時提供被除數(shù)的低字節(jié)并存放商;提供被除數(shù)的低

8、字節(jié)并存放商;BCDBCD碼運算指令和碼運算指令和XLATXLAT指令中作累加器;字節(jié)指令中作累加器;字節(jié)I/OI/O操作中存放操作中存放8 8位輸入位輸入/ /輸出數(shù)據(jù)輸出數(shù)據(jù)AHAHAXAX的高的高8 8位位字節(jié)乘時提供一個操作數(shù)并存放積的高字節(jié);字節(jié)除時字節(jié)乘時提供一個操作數(shù)并存放積的高字節(jié);字節(jié)除時提供被除數(shù)的高字節(jié)并存放余數(shù);提供被除數(shù)的高字節(jié)并存放余數(shù);LAHFLAHF指令中充當(dāng)指令中充當(dāng)目的操作數(shù)目的操作數(shù)BXBX基址基址(Base)(Base)寄存器寄存器, ,支支持多種尋址持多種尋址, ,常用常用作地址寄存器作地址寄存器XLATXLAT指令中提供被查表格中源操作數(shù)的間接地址指

9、令中提供被查表格中源操作數(shù)的間接地址CXCX 16 16位計數(shù)器位計數(shù)器(CounterCounter)串操作時用作串長計數(shù)器;循環(huán)操作中用作循環(huán)次數(shù)計串操作時用作串長計數(shù)器;循環(huán)操作中用作循環(huán)次數(shù)計數(shù)器數(shù)器CLCL8 8位計數(shù)器位計數(shù)器移位或循環(huán)移位時用作移位次數(shù)計數(shù)器移位或循環(huán)移位時用作移位次數(shù)計數(shù)器DXDX1616位數(shù)據(jù)(位數(shù)據(jù)(DataData)寄)寄存器存器在間接尋址的在間接尋址的I/OI/O指令中提供端口地址;字乘時存放積指令中提供端口地址;字乘時存放積的高字,字除時提供被除數(shù)高字并存放余數(shù)的高字,字除時提供被除數(shù)高字并存放余數(shù)表表2-1 80862-1 8086中通用寄存器的一般

10、用法和隱含用法中通用寄存器的一般用法和隱含用法2.指針及變址寄存器(4個16位寄存器)lEU中有兩個地址指針寄存器和兩個變址寄存器,它們分別為:lSP(Stack Pointer),堆棧指針寄存器lBP(Base Pointer),基址指針寄存器lSI (Source Index),源變址寄存器lDI (Destination Index),目的變址寄存器l它們的應(yīng)用如圖所示:寄存器寄存器一般用法一般用法隱含用法隱含用法SPSP堆棧指針(堆棧指針(Stack PointerStack Pointer),與),與SSSS配合指示堆棧棧頂?shù)奈恢门浜现甘径褩m數(shù)奈恢脡簵!⒊鰲2僮髦兄甘緱m攭簵?、?/p>

11、棧操作中指示棧頂BPBP基址指針(基址指針(Base PointerBase Pointer),它支持),它支持間接尋址、基址尋址、基址加變址等間接尋址、基址尋址、基址加變址等多種尋址手段。在子程序調(diào)用時,常多種尋址手段。在子程序調(diào)用時,常用它來取壓棧的參數(shù)用它來取壓棧的參數(shù)SISI源變址(源變址(Source IndexSource Index)寄存器。它)寄存器。它支持間接尋址、變址尋址、基址加變支持間接尋址、變址尋址、基址加變址尋址等多種尋址址尋址等多種尋址串操作時用作源變址寄存器,指串操作時用作源變址寄存器,指示數(shù)據(jù)段(段默認)或其他段示數(shù)據(jù)段(段默認)或其他段(段超越)中源操作數(shù)的偏

12、移地(段超越)中源操作數(shù)的偏移地址址DIDI目的變址(目的變址(Destination IndexDestination Index)寄)寄存器。它支持間接尋址、變址尋址、存器。它支持間接尋址、變址尋址、基址加變址尋址等多種尋址基址加變址尋址等多種尋址串操作時用作目的變址寄存器,串操作時用作目的變址寄存器,指示附加段(段默認)中目的操指示附加段(段默認)中目的操作數(shù)的偏移地址作數(shù)的偏移地址表表2-2 80862-2 8086中地址寄存器的一般用法和隱含用法中地址寄存器的一般用法和隱含用法l8086寄存器的特別說明:l(1)8086的堆棧及堆棧操作有以下特點:雙字節(jié)操作。即每次進、出棧的數(shù)據(jù)均為

13、兩字節(jié)。且高位字節(jié)對應(yīng)高地址,低位字節(jié)對應(yīng)低地址。無論是源操作數(shù)還是目的操作數(shù),也無論是存儲器操作數(shù)還是寄存器操作數(shù),都必須按這個原則執(zhí)行。堆棧向低地址方向生成。數(shù)據(jù)每次進棧時堆棧指針SP向低地址方向移動(減2);反之,數(shù)據(jù)出棧時,SP向高地址方向移動(加2)l(2)BP、BX都被稱為基址指針,但兩者用法不同。BP只能尋址堆棧段(段缺省),不允許段跨越;BX可以尋址數(shù)據(jù)段(段缺省),也可以尋址附加段(段跨越)。l(3)由于大多數(shù)算術(shù)和邏輯運算中又可以使用BP、SP和變址寄存器,因而也將這4個寄存器歸入通用寄存器組。使用中應(yīng)該注意這4個寄存器只能用于16位的存取操作3.段寄存器段寄存器l8086

14、CPU中有4個段寄存器,用于存放當(dāng)前程序所用的各段的起始地址,也稱為段的基地址。l1.代碼段寄存器CS(Code Segment)l其內(nèi)容左移4位再加上指令指針I(yè)P的內(nèi)容,就形成下一條要執(zhí)行的指令存放的實際物理地址。l2.數(shù)據(jù)段寄存器DS(Data Segment)lDS中的內(nèi)容左移4位再加上按指令中存儲器尋址方式計算出來的偏移地址,即為數(shù)據(jù)段指定的單元進行讀寫的地址。l3.堆棧段寄存器SS(Stack Segment)l堆棧是按“后進先出”原則組織的一個特別存儲區(qū)。操作數(shù)的存放地址是由SS的內(nèi)容左移4位再加上SP的內(nèi)容而形成的。l4.附加段寄存器ES(Extended Segment)l附加

15、段是在進行字符串操作時作為目的區(qū)地址使用的一個附加數(shù)據(jù)段。在字符串操作指令中SI作為源變址寄存器,DI作為目的變址寄存器,其內(nèi)容都是偏移地址。 SP,BP,SI,DI與段寄存器聯(lián)用說與段寄存器聯(lián)用說明明l(1)SP,BP與SS聯(lián)用確定堆棧段中某一存儲器單元的地址,SP用來表示棧頂?shù)钠频刂?,BP可作為堆棧區(qū)中的一個基地址以便訪問堆棧中的其他信息。l(2)SI,DI與DS聯(lián)用確定數(shù)據(jù)段中某一存儲器單元的地址,SI和DI有自動增量和自動減量的功能。在串處理指令中,SI和DI作為隱含的源變址和目的變址寄存器,SI和DS聯(lián)用,DI和ES聯(lián)用,分別達到在數(shù)據(jù)段和附加段中尋址的目的。l(3)DF為1,SI

16、、DI減量,由高地址向低地址處理;DF為0,SI、DI增量,由低地址向高地址處理4.指令指針寄存器和標志寄存器指令指針寄存器和標志寄存器l(1)指令指針寄存器IPl指令指針寄存器IP是一個16位的表示地址指針的寄存器 l(2)標志寄存器FR(Flag Register)l標志寄存器也稱為程序狀態(tài)字PSW(Program Status Word)寄存器,它是一個16位的標志寄存器,但僅使用其中的9位。其中CF,OF,AF,ZF,SF,PF為6個狀態(tài)標志位;DF,IF和TF為3個控制標志位。如下圖所示:D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2

17、D1 D0CFPFAFZFSFTFIFDFOFPSW 圖圖2-2 8086CPU標志寄存器標志寄存器 l狀態(tài)信息由中央處理機根據(jù)計算機的結(jié)果自動狀態(tài)信息由中央處理機根據(jù)計算機的結(jié)果自動設(shè)置,設(shè)置,6位狀態(tài)位的意義說明如下:lOF(OverFlag)溢出標志:溢出為1lSF(SignFlag)符號標志:負為1,取最高有效位lZF(ZeroFlag)零標志:是0為1lCF(CarryFlag)進位標志:右進位為1lAF(AuxiliaryFlag)輔助進位標志:第3位右進位置1(半字節(jié))lPF(ParityFlag)奇偶進位標志:結(jié)果中1的個數(shù)位為偶數(shù)置1。l控制信息由系統(tǒng)程序或用戶程序根據(jù)需要用

18、指控制信息由系統(tǒng)程序或用戶程序根據(jù)需要用指令設(shè)置,控制標志(令設(shè)置,控制標志(3個):個):lDF(Direction Flag)方向標志:方向標志:DF為為1,SI、DI減減量,由高地址量,由高地址 向低地址處理;向低地址處理;DF為為0,SI、DI增增量,由低地址向高地址處理量,由低地址向高地址處理lIF(Interupt Flag )中斷標志:中斷標志: IF為為1時允許中斷時允許中斷l(xiāng)TF(Trap Flag)陷阱標志(陷阱標志( 又叫跟蹤標志):每執(zhí)又叫跟蹤標志):每執(zhí)行一條指令就引起一個內(nèi)部中斷。用于單步方式操行一條指令就引起一個內(nèi)部中斷。用于單步方式操作,作,TF為為1,指令執(zhí)行

19、完后產(chǎn)生陷阱,由系統(tǒng)控制,指令執(zhí)行完后產(chǎn)生陷阱,由系統(tǒng)控制計算機;計算機;TF為為0,CPU不產(chǎn)生陷阱,正常工作不產(chǎn)生陷阱,正常工作.例題例題l例1: MOV AX, 1l MOV BX, 2l ADD AX, BXl 指令執(zhí)行后,(AX)=3, OF=0, CF=0, ZF=0, SF=0l例2: MOV AX, FFFFHl MOV BX, 1l ADD AX, BXl 指令執(zhí)行后,(AX)=0, OF=0, CF=1, ZF=1, SF=02.1.3 8086的工作模式和引腳特性l1.芯片引腳特性的描述l引腳的功能l即引腳信號的定義l信號的有效電平l指控制引腳使用有效時的邏輯電平。低電平

20、有效的引腳名字上面加有一條橫線,引腳名字上無橫線者為高電平有效。另有一些引腳高、低電平均有效,分別表示不同的狀態(tài)或數(shù)值。還有些引腳信號為邊沿有效。l信號流向l芯片與其他部件的聯(lián)系全靠在引腳上傳送信息,這些信息可能自芯片向外輸出,也可能從外部輸入到芯片,還可能是雙向的。l引腳的復(fù)用l為了以少量引腳提供更多的功能,會采用引腳復(fù)用的做法。l三態(tài)能力l “三態(tài)”能力是指有些引腳除了能正常輸出或輸入高、低電平外,還能輸出高阻狀態(tài)。當(dāng)它輸出高阻狀態(tài)時,表示芯片實際上已放棄了對該引腳的控制,使之“浮空”。這樣,與總線相連接的其它設(shè)備就可以獲得對總線的控制權(quán),系統(tǒng)轉(zhuǎn)為接受總線的設(shè)備控制下工作。2.的工作模式的

21、工作模式l8086有兩種工作模式:最小模式和最大模式。l(1)8086系統(tǒng)處于最小模式,就是系統(tǒng)中的CPU只有8086單獨一個處理器。在這種系統(tǒng)中,所有總線控制信息都直接由8086產(chǎn)生,系統(tǒng)中總線控制邏輯電路被減到最少,這些特征就是最小模式名稱的由來。最小模式適合于較小規(guī)模的系統(tǒng)。l(2)在最大模式系統(tǒng)中有多個微處理器,其中必有一個主處理器8086,其他處理器稱為協(xié)處理器或輔助處理器,承擔(dān)某一方面的專門工作。3. 8086的引腳特性VCCAD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S

22、2)DT/R(S1)DEN(S0)ALE(QS1)INTA(QS0)TESTREADYRESETGNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND1234567891011121314151617181920403938373635343332313029282726252423222180868086有有4040個引腳,其個引腳,其中中第第33 33 (最小(最小/ /最大最大模式)模式)腳很關(guān)鍵,它腳很關(guān)鍵,它是一條輸入線,可以是一條輸入線,可以加高電平,也可以加加高電平,也可以加低電平,由該線所加低電平,由

23、該線所加電平的高或低電平?jīng)Q電平的高或低電平?jīng)Q定定24-3124-31引腳的功能引腳的功能(24-3124-31引腳的功能取引腳的功能取決于決于80868086工作在最小工作在最小模式還是最大模式)模式還是最大模式)其他引腳不受第其他引腳不受第3333引引腳的影響,我們把這腳的影響,我們把這部分引腳稱為一般引部分引腳稱為一般引腳。腳。最小模式引腳的功能定義直接點擊相關(guān)引腳進入說明最大模式最大模式l在最小模式系統(tǒng)中,全部控制信號由在最小模式系統(tǒng)中,全部控制信號由80868086提供提供1)/(MN MX1,8086MN MX0,8086MN MX最小最大模式):輸入,高,低電平均有效系統(tǒng)設(shè)置為最小

24、模式;設(shè)置為最大模式。引腳圖引腳圖lVCC,GND(電源,地):輸入(電源,地):輸入l 8086 VCC接入的電壓為接入的電壓為+5V10%l GND有兩條(有兩條(1,20腳)腳)ll該時鐘信號的占空比為33%(即1/3周期為低電平,2/3周期為高電平)。l 系統(tǒng)時鐘為CPU和總線控制邏輯電路提供了時序基準(定時手段)。引腳圖引腳圖lAD15-AD0(地址/數(shù)據(jù)):分時復(fù)用的存儲器或端口的地址/數(shù)據(jù)總線。l傳送地址時為單向的三態(tài)輸出,傳送數(shù)據(jù)時可雙向三態(tài)輸入/輸出。l在總線周期的T1狀態(tài),輸出要訪問的存儲器或I/O端口的地址;T2狀態(tài)浮置成高阻狀態(tài),為傳輸數(shù)據(jù)做準備; 在T3狀態(tài),用于傳輸

25、數(shù)據(jù);T4狀態(tài),結(jié)束總線周期。l當(dāng)CPU響應(yīng)中斷,DMA方式時,這些線處于浮空狀態(tài)(高阻態(tài))。l注:直接存儲器存取(DMA)方式,使數(shù)據(jù)的傳送不經(jīng)過CPU,由DMA控制器來實現(xiàn)內(nèi)存與外設(shè),或外設(shè)與外設(shè)之間的直接快速傳送。引腳圖引腳圖lA19-A16是地址的高4位,在T1輸出地址。lS6-S3是CPU的狀態(tài)信號,在T2-T4時輸出CPU狀態(tài)l當(dāng)訪問存儲器時,T1輸出的A19-A16與AD15-AD0組成20位地址信號l而訪問I/O端口時 A19-A16=0000,AD15-AD0為16位地址信號l狀態(tài)信號的S6=0,表示當(dāng)前8086與總線相連lS5標志中斷允許IF的狀態(tài)lS4和S3組合指示當(dāng)前使

26、用的段寄存器(00,01,10,11)分別指ES,SS,CS,DSl在進行DMA方式時, A19-A16/S6-S3浮空引腳圖引腳圖7115824770/(TBHE8DDTTSSBHEABHE S 數(shù)據(jù)線高位開放狀態(tài)):復(fù)用線,輸出,三態(tài)在 狀態(tài),輸出信號,表示高 位數(shù)據(jù)線上的數(shù)據(jù)有效;在狀態(tài),輸出狀態(tài)信號(作備用狀態(tài)信號,未用)和組合起來表示當(dāng)前數(shù)據(jù)在總線上的格式,如下表:BHEBHEA A0 0操操 作作所用數(shù)據(jù)引腳所用數(shù)據(jù)引腳0 00 0從偶地址讀從偶地址讀/ /寫一個字寫一個字ADAD1515ADAD0 01 10 0從偶地址讀從偶地址讀/ /寫一個字節(jié)寫一個字節(jié)ADAD7 7ADAD

27、0 00 01 1從奇地址讀從奇地址讀/ /寫一個字節(jié)寫一個字節(jié)ADAD1515ADAD8 80 01 11 10 0從奇地址讀從奇地址讀/ /寫一個字(分兩個總線周期寫一個字(分兩個總線周期實現(xiàn),首先作奇字節(jié)讀實現(xiàn),首先作奇字節(jié)讀/ /寫,然后作偶字寫,然后作偶字節(jié)讀節(jié)讀/ /寫)寫)ADAD1515ADAD8 8ADAD7 7ADAD0 0引腳圖引腳圖lALEALE(Address Latch EnableAddress Latch Enable)是是80868086在每個在每個總線周期的總線周期的T T1 1狀態(tài)時發(fā)出的,作為地址鎖存器狀態(tài)時發(fā)出的,作為地址鎖存器的選通信號,表示當(dāng)前地址

28、的選通信號,表示當(dāng)前地址/ /數(shù)據(jù)復(fù)用線上輸數(shù)據(jù)復(fù)用線上輸出的是地址信息,要求進行地址鎖存,注意出的是地址信息,要求進行地址鎖存,注意ALEALE端不能被浮空。端不能被浮空。引腳圖引腳圖lRD =0,表示8086為存儲器或I/O端口讀操作。當(dāng)DMA時,此線浮空。lWR=0,表示8086為存儲器或I/O端口寫操作。當(dāng)DMA時,此線浮空。l具體到底是讀取存儲器某地址單元的內(nèi)容還是某輸入設(shè)備輸入端口的內(nèi)容,這取決于M/ IO信號。l在最小模式中,信號M/IO、 WR、RD組合起來決定了系統(tǒng)中數(shù)據(jù)傳送方式引腳圖引腳圖M/IOIOM/IO1,CPUM/IO 0,CPUIODMA用于指示是存儲器還是 訪問

29、。表示與存儲器之間數(shù)據(jù)傳輸; 表示和 設(shè)備之間數(shù)據(jù)傳輸。當(dāng)時,此線浮空。引腳圖引腳圖DEN8086DT RDENDT R 1,DT R 0,DMA是提供給數(shù)據(jù)收發(fā)器的選通信號; 是控制其數(shù)據(jù)傳輸方向的信號。如果有效,表示允許傳輸,此時, 進行數(shù)據(jù)發(fā)送; 進行數(shù)據(jù)接收。在下,它們被置為浮空。引腳圖引腳圖lRESET引起處理器立即結(jié)束現(xiàn)行操作。lCPU結(jié)束當(dāng)前操作后,對狀態(tài)標志寄存器、IP、DS、lSS、ES清零,而將CS設(shè)置為0FFFFH。l當(dāng)RESET=0時,CPU從0FFFFH開始執(zhí)行程序。引腳圖引腳圖lREADY-準備好信號線,輸入,高電平有效。準備好信號線,輸入,高電平有效。l當(dāng)當(dāng)REA

30、DY=1時,表示內(nèi)存或時,表示內(nèi)存或I/O設(shè)備準備就緒,設(shè)備準備就緒,馬馬 上可以進行依次數(shù)據(jù)傳輸。上可以進行依次數(shù)據(jù)傳輸。lCPU在每個總線周期的在每個總線周期的T3狀態(tài)開始對狀態(tài)開始對READY進行采樣,如進行采樣,如READY=0,CPU在在T3之后,自之后,自動插入一個或幾個等待狀態(tài)動插入一個或幾個等待狀態(tài)TW。一旦一旦READY=1,才進入才進入T4狀態(tài),完成數(shù)據(jù)傳輸過狀態(tài),完成數(shù)據(jù)傳輸過程,從而結(jié)束當(dāng)前總線周期。程,從而結(jié)束當(dāng)前總線周期。引腳圖引腳圖lTEST-等待測試信號,輸入。用于多處理器系統(tǒng)中,且只有在執(zhí)行WAIT指令時才使用。l當(dāng)CPU執(zhí)行WAIT指令時,它就進入空轉(zhuǎn)的等待

31、狀態(tài),每隔5個時鐘周期對該線的輸入進行一次測試。l若TEST=1,則CPU將停止取下條指令而繼續(xù)等待,直至TEST=0。_引腳圖引腳圖lNMI(Non-Maskable Interrupt)中斷請求不受中斷允許標志位的影響,也不能用軟件進行屏蔽l只要此信號一有效,CPU就在現(xiàn)行指令結(jié)束后立即響應(yīng)中斷,進入非屏蔽中斷處理程序 引腳圖引腳圖lINTR可屏蔽中斷請求:輸入,高電平有效。l當(dāng)INTR=1,表示外設(shè)提出了中斷請求。lCPU在執(zhí)行每條指令的最后一個時鐘周期采樣此信號,若INTR=1且IF=1(中斷允許),則響應(yīng)中斷。l所謂中斷,是指在CPU正常運行程序時,由于內(nèi)部事件、外部事件或由程序預(yù)先

32、安排的事件所引起的CPU暫時停止正在運行的程序,而轉(zhuǎn)去執(zhí)行請求CPU服務(wù)的內(nèi)部/外部事件或預(yù)先安排事件的服務(wù)程序,待服務(wù)程序處理完畢后又返回去繼續(xù)執(zhí)行被暫停的程序,這個過程稱為中斷 引腳圖引腳圖lINTA(Interrupt Acknowledge)有效表示對INTR的外部中斷請求作出響應(yīng),進入中斷響應(yīng)周期。 lINTA信號實際上是位于連續(xù)周期中的兩個負脈沖,在每個總線周期的T2、T3和TW狀態(tài), INTA端為低電平。第一個負脈沖通知外部設(shè)備的接口,它發(fā)出的中斷請求已經(jīng)得到允許;外設(shè)接口收到第二個負脈沖后,往數(shù)據(jù)總線上放中斷類型碼(中斷向量號),從而CPU便得到了有關(guān)此中斷請求的詳盡信息。_引

33、腳圖引腳圖lHLDAHLDA(Hold AcknowledgeHold Acknowledge)lHOLDHOLD和和HLDAHLDA是一對配合使用的總線聯(lián)絡(luò)信號。當(dāng)系統(tǒng)中的其他總是一對配合使用的總線聯(lián)絡(luò)信號。當(dāng)系統(tǒng)中的其他總線主控部件要占用總線時,向線主控部件要占用總線時,向CPUCPU發(fā)發(fā)HOLD=1HOLD=1總線請求。總線請求。l如果此時如果此時CPUCPU允許讓出總線,就在當(dāng)前總線周期完成時,發(fā)允許讓出總線,就在當(dāng)前總線周期完成時,發(fā)HLDA=1HLDA=1應(yīng)答信號,且同時使具有三態(tài)功能的地址應(yīng)答信號,且同時使具有三態(tài)功能的地址/ /數(shù)據(jù)總線和控制總線處數(shù)據(jù)總線和控制總線處于浮空,表

34、示讓出總線。于浮空,表示讓出總線。l總線請求部件收到總線請求部件收到HLDA=1HLDA=1后,獲得總線控制權(quán),在這期間,后,獲得總線控制權(quán),在這期間,HOLDHOLD和和HLDAHLDA都保持高電平。當(dāng)請求部件完成對總線的占用后,都保持高電平。當(dāng)請求部件完成對總線的占用后,HOLD=0HOLD=0總線請求撤消,總線請求撤消,CPUCPU收到后,也將收到后,也將HLDA=0HLDA=0。這時,這時,CPUCPU又恢復(fù)了對又恢復(fù)了對地址地址/ /數(shù)據(jù)總線和控制總線的占有權(quán)。數(shù)據(jù)總線和控制總線的占有權(quán)。 引腳圖引腳圖最大模式引腳的功能定義最大模式引腳的功能定義VCCAD15A16/S3A17/S4

35、A18/S5A19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN(S0)ALE(QS1)INTA(QS0)TESTREADYRESETGNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGND12345678910111213141516171819204039383736353433323130292827262524232221lMN/MX=0MN/MX=0,80868086系統(tǒng)設(shè)置為最大模式系統(tǒng)設(shè)置為最大模式l在最大模式下,許多

36、總線控制信號不是由在最大模式下,許多總線控制信號不是由80868086直接產(chǎn)直接產(chǎn)生的,而是通過總線控制器生的,而是通過總線控制器82888288產(chǎn)生產(chǎn)生_返回返回lS0,S1,S2 的組合表示CPU總線周期的操作類型。l8288總線控制器依據(jù)這三個狀態(tài)信號產(chǎn)生相關(guān)訪問存儲器和I/O端口的控制命令。l下表給出S2,S1,S0對應(yīng)的數(shù)據(jù)傳輸過程的類型。_S S2 2 S S1 1 S S0 0 操作過程操作過程0 0 00 0 00 0 10 0 10 1 00 1 00 1 10 1 11 0 01 0 01 0 11 0 11 1 01 1 01 1 1 1 1 1 發(fā)出中斷響應(yīng)信號發(fā)出中斷

37、響應(yīng)信號讀讀I/OI/O端口端口寫寫I/OI/O端口端口暫停暫停取指令取指令讀存儲器(內(nèi)存)讀存儲器(內(nèi)存)寫存儲器(內(nèi)存)寫存儲器(內(nèi)存)無源狀態(tài)(不起作用)無源狀態(tài)(不起作用) 返回返回lQSQS1 1,QSQS0 0 指令隊列狀態(tài)指令隊列狀態(tài)l QS QS1 1,QSQS0 0組合起來提供前一個時鐘周期(指總線周期組合起來提供前一個時鐘周期(指總線周期的前一個狀態(tài))中指令隊列的狀態(tài)標志,以便讓外部的前一個狀態(tài))中指令隊列的狀態(tài)標志,以便讓外部對對80868086內(nèi)部指令隊列的動作跟蹤內(nèi)部指令隊列的動作跟蹤lQSQS0 0,QSQS1 1,組合與隊列狀態(tài)的對應(yīng)關(guān)系見下表組合與隊列狀態(tài)的對應(yīng)

38、關(guān)系見下表QSQS1 1QSQS0 0 隊列狀態(tài)隊列狀態(tài)000 0111 1001 1001 1無操作無操作從隊列緩沖器中取出指令的第一字節(jié)從隊列緩沖器中取出指令的第一字節(jié)清除隊列緩沖器清除隊列緩沖器從隊列緩沖器中取出指令的第二字節(jié)以后部從隊列緩沖器中取出指令的第二字節(jié)以后部分分返回返回lRQ/GT1、RQ/GT0(總線請求總線允許)分別是最大模式時裁決總線使用權(quán)的信號,可供CPU以外的兩個處理器用來發(fā)出使用總線的請求信號和接收CPU對總線請求信號的回答信號lRQ為輸入信號,表示總線請求,GT為輸出信號,表示總線允許,當(dāng)它們兩個同時有請求時,RQ/GT0 的優(yōu)先權(quán)更高。l當(dāng)8086使用總線,其

39、 RQ/GT為高電平(浮空);這時若8087或8089要使用總線,它們就使 RQ/GT0輸出低電平(請求,相當(dāng)于HOLD信號)。經(jīng)8086檢測,若總線處于開放狀態(tài),則8086輸出的 RQ/GT0變?yōu)榈碗娖剑ㄔ试S,相當(dāng)于HLDA信號),再經(jīng)8087或8089檢測出此允許信號,對總線進行使用。待使用完結(jié),將 RQ/GT0變成低電平(釋放),8086再檢測出該信號,又恢復(fù)對總線的使用。返回返回 lLOCK(總線封鎖)信號是為避免多個處理器使用共有資源時產(chǎn)生沖突而設(shè)置的,為低電平表示CPU獨占總線使用權(quán)。lLOCK信號由指令前綴LOCK產(chǎn)生,在LOCK前綴后面的一條指令執(zhí)行完后,便撤消了LOCK信號。

40、l此外,在8086的中斷響應(yīng)周期, LOCK信號也自動變?yōu)橛行щ娖?,以防止其他的總線主部件在中斷響應(yīng)過程中占有總線,而使一個完整的中斷響應(yīng)過程被間斷。l在 DMA時, LOCK端處于浮空。 _返回返回2.2 80862.2 8086的系統(tǒng)組成和總線時序的系統(tǒng)組成和總線時序l2.2.1 8086的系統(tǒng)組成l1.系統(tǒng)組成的特點l1)MN/MX端接VCC或GND,決定工作在最小模式或最大模式l2)8084A為時鐘發(fā)生器,外接15MHz振蕩源,經(jīng)8284A三分頻后,得5MHz主頻送到8086系統(tǒng)時鐘端CLK。除此之外,8284A還將外部的復(fù)位信號RESET和就緒信號READY實現(xiàn)同步后發(fā)給8086相應(yīng)

41、引腳l3)用3片8282作地址鎖存器,在T1時鎖存地址/數(shù)據(jù)復(fù)用線上的地址A19-A0和BHE信號l4)當(dāng)系統(tǒng)所連的存儲器和外設(shè)較多時,需要增加數(shù)據(jù)總線的驅(qū)動能力 l5)系統(tǒng)組成還必須有其他的一些,如半導(dǎo)體存儲器RAM和ROM,外部設(shè)備的I/O接口,中斷控制管理部件等組件_BHECLKREADYRESET等待等待狀態(tài)狀態(tài)發(fā)生發(fā)生 A19A16AD15AD0地址地址/數(shù)據(jù)數(shù)據(jù)8286收發(fā)器收發(fā)器TOE8282鎖存器鎖存器STBD15D08284ARES8288總線總線控制器控制器CLKMN/MX80861S0S1S2S0S1S2RDYOEDENDT/RALE2.最小模式系統(tǒng)組成A19A0MRDC

42、MWTCAMWCIORCIOWCAIOWCINTABHECLKREADYRESET等待等待狀態(tài)狀態(tài)發(fā)生發(fā)生 A19A16AD15AD0地址地址/數(shù)據(jù)數(shù)據(jù)8286收發(fā)器收發(fā)器TOE8282鎖存器鎖存器STBD15D08284ARES8288總線總線控制器控制器CLKMN/MX80861S0S1S2S0S1S2RDYOEDENDT/RALE3.最大模式系統(tǒng)組成最大模式系統(tǒng)組成總線控制器總線控制器l最大模式與最小模式在總線部件配置上最主要的差別就是總線控制器8288。l系統(tǒng)因包含多個處理器,需要解決主處理器和協(xié)處理器之間的協(xié)調(diào)工作以及對總線的共享控制等問題。為此,最大模式系統(tǒng)中要采用8288總線控制

43、器。l系統(tǒng)的許多控制信號不再由8086直接發(fā)出,而是由總線控制器8288對8086發(fā)出的控制信號進行變換和組合,以得到系統(tǒng)各種總線控制信號。l8086最大模式系統(tǒng)的其他組件,例如,協(xié)處理器8087或8089,總線仲裁器8289,中斷控制器8259,存儲器,I/O接口等根據(jù)實際系統(tǒng)的需要選配,目的是支持多總線結(jié)構(gòu),形成一個多處理器系統(tǒng)。地址總線地址總線BHE控制總線控制總線 S0S1S28086CPUCLK8259A&STB8282鎖存器鎖存器 (3片)片)8286總線總線收發(fā)器收發(fā)器(2片)片)OETDENALECLKS0S1S2AENIOBCEN INTAMRDMWT8288總線總線控制器控

44、制器 IORC IOWCMCE/PDEN 8259A中斷控制器中斷控制器INTA WRDT/RSP/EN RD圖圖2-6 2-6 總線控制器總線控制器82888288與系統(tǒng)的連接與系統(tǒng)的連接8288的兩種工作方式l8288提供了兩種工作方式,由提供了兩種工作方式,由IOBI/O總總線工作方式信號決定。線工作方式信號決定。l 當(dāng)當(dāng)IOB接地,接地,8288適用于單處理器系統(tǒng),稱適用于單處理器系統(tǒng),稱作系統(tǒng)總線方式,此時,還要求作系統(tǒng)總線方式,此時,還要求AEN接地,接地,CEN接接5V。圖圖2-6給出的就是這種方式的系給出的就是這種方式的系統(tǒng)的連接。統(tǒng)的連接。l 當(dāng)當(dāng)IOB接接5V,且,且CEN

45、接接5V,8288則適合則適合工作于多處理器系統(tǒng),稱作局部總線方式。工作于多處理器系統(tǒng),稱作局部總線方式。4.存儲器組織與分段存儲器組織與分段l所謂存儲器分段技術(shù)就是把1MB空間分成若干邏輯段,每個邏輯段的容量64KB。l段內(nèi)地址是連續(xù)的,段與段之間是互相獨立的。l邏輯段可以在整個存儲空間浮動,即段的排列可以連續(xù)、分開、部分重疊或完全重疊,非常靈活。l這里所謂的重疊是指存儲單元可以分屬于不同的邏輯段。 存儲器的邏輯分段斷開排列斷開排列A段段B段段C段段D段段E段段40000H50000H60000H70000H連續(xù)排列連續(xù)排列部分重疊部分重疊完全重疊完全重疊偏移地址偏移地址段基址段基址地址加法

46、器地址加法器物理地址物理地址段寄存器段寄存器15150190圖圖2-82-8存儲器物理地址的形成存儲器物理地址的形成存儲器物理地址的形成存儲器物理地址的形成5. I/O組織組織l8086系統(tǒng)和外部設(shè)備之間是通過I/O接口進行相互傳輸信息的。l每個I/O接口都有一個或幾個I/O端口,一個端口往往對應(yīng)于接口上一個寄存器或一組寄存器。l微機要為每個I/O端口分配一個地址,稱端口地址。端口地址和存儲單元地址一樣,應(yīng)具有惟一的地址編碼。 l微機I/O端口有兩種編址方式l(1)統(tǒng)一編址 l(2)獨立編址 編址方式編址方式l統(tǒng)一編址l這種編址方式是將I/O端口和存儲單元統(tǒng)一編址,即把I/O端口置于存儲器空間

47、,也看作是存儲單元。因此,存儲器的各種尋址方式均可用來尋址I/O端口。在這種方式下I/O端口操作功能強,使用起來也很靈活,I/O接口與CPU的連接和存儲器與CPU的連接相似。但是I/O端口占用了一定的存儲空間,而且執(zhí)行I/O操作時,因地址位數(shù)長,速度較慢。l獨立編址l這種編址方法是將I/O端口進行獨立編址,I/O端口空間與存儲器空間相互獨立。這就需要設(shè)置專門的輸入、輸出指令對I/O端口進行操作。8086系統(tǒng)采用的就是這種獨立的I/O編址方式。端口地址說明端口地址說明l8086使用使用A15A0這這16根地址線作為根地址線作為I/O端口地址線,端口地址線,可訪問端口最多可達可訪問端口最多可達64

48、K個個8位端口或位端口或32K個個16位位端口。端口。l和存儲器的字單元一樣,對于奇地址的和存儲器的字單元一樣,對于奇地址的16位端口的位端口的訪問,要進行兩次操作才能完成。訪問,要進行兩次操作才能完成。l16位的位的I/O端口地址無需經(jīng)過地址加法器產(chǎn)生,因端口地址無需經(jīng)過地址加法器產(chǎn)生,因而不使用段寄存器。而不使用段寄存器。l從從AB總線上發(fā)出的端口地址仍為總線上發(fā)出的端口地址仍為20位,只不過最位,只不過最高四位高四位A19A16為為0。2.2.2 80862.2.2 8086的總線時序的總線時序l微型計算機系統(tǒng)內(nèi)的所有操作都要按統(tǒng)一的時鐘節(jié)拍進行。每項總線操作也都需要一定的時間,稱之為總

49、線周期。不同的總線操作需要不同的總線信號,而“總線時序”則是對這些信號的變化時間順序的描述??偩€周期總線周期l8086CPU為了要與存儲器及I/O端口交換數(shù)據(jù),需要執(zhí)行一個總線周期,即完成一次總線操作。l依照數(shù)據(jù)傳輸?shù)姆较?,總線操作分為總線讀操作和總線寫操作。l總線讀操作指CPU從存儲器或I/O端口讀取數(shù)據(jù)l總線寫操作指CPU將數(shù)據(jù)寫入存儲器或I/O端口l一個基本的讀/寫周期包括4個T狀態(tài),即T1、T2、T3、T4。l在存儲器和外設(shè)速度較慢時,要在T3之后插入一個或幾個等待周期Tw,以使其在數(shù)據(jù)傳送時能與CPU同步。1.最小模式下的讀寫總線周期最小模式下的讀寫總線周期l8086CPU為了要與存

50、儲器IO端口交換數(shù)據(jù),需要執(zhí)行一個總線周期,即完成一次總線操作。依照數(shù)據(jù)傳輸?shù)姆较?,總線操作分為總線讀操作和總線寫操作。高為讀內(nèi)存高為讀內(nèi)存 低為讀低為讀I/O地址輸出地址輸出 狀態(tài)輸出狀態(tài)輸出地址輸出地址輸出 數(shù)據(jù)輸入數(shù)據(jù)輸入BHE11輸出輸出DT/RDENALERDAD15AD0 A19/S6A16/S3BHE/S7M/IOCLKT1 T2 T3 Tw(1+n) T4(1)最小模式下的總線讀操作最小模式下的總線讀操作(2)最小模式下的總線寫周期操作AD15AD0T1 T2 T3 Tw T4CLKM/IO A19/S6A16/S3BHE/S7ALE WRDT/RDEN高為寫內(nèi)存高為寫內(nèi)存 低

51、為寫低為寫I/O地址輸出地址輸出 狀態(tài)輸出狀態(tài)輸出地址輸出地址輸出 數(shù)據(jù)輸出數(shù)據(jù)輸出BHE 輸出輸出(3)總線空閑狀態(tài)l當(dāng)CPU不執(zhí)行總線周期時,總線接口部件不與總線打交道,進入總線空閑周期。此時,CPU內(nèi)部指令隊列已滿,且EU單元正在進行有效的內(nèi)部操作。所以說,總線空操作是總線接口部件對執(zhí)行部件的等待狀態(tài)。l總線空閑周期由一系列T1構(gòu)成,基本維持前一總線周期時的狀態(tài)。如果前一個總線周期為寫周期,AD15AD0的數(shù)據(jù)仍被繼續(xù)驅(qū)動;如果前一個總線周期為讀周期,則AD15AD0在空閑周期處于高阻狀態(tài)。2.(1)最大模式下的讀總線周期T1 T2 T3 T4一個總線周期一個總線周期無源狀態(tài)無源狀態(tài)S2

52、S0CLKAD15AD0BHE/S7A19/S6A16/S3S2 S0*ALE* *MRDC或或*IORC*DT/R*DENA19A16BHES7S3浮空浮空A15A0D15D0地址地址 輸入數(shù)據(jù)輸入數(shù)據(jù)T1 T2 T3 T4一個總線周期一個總線周期CLKS2 S0BHE/S7A19/S6A16/S3AD15AD0*DT/R*ALE* *MRDC或或*IORC* *MWTC或或* *IOWC*DEN高電平高電平無源狀態(tài)無源狀態(tài)A19A16BHES7S3A15A0S2S0 輸出數(shù)據(jù)輸出數(shù)據(jù)地址地址2.(2)最大模式下的寫總線周期2.3 高檔微處理器l自1971年推出一般型微處理器4004以來,I

53、ntel所設(shè)計生產(chǎn)的微處理器一直占有相當(dāng)大的市場。從80868088,80286,80386,80486到Pentium,Pentium Pro, Pentium II,Pentium III以及Pentium 4每一次都將微型計算機帶向全新的領(lǐng)域。2.3.1 803862.3.1 80386微處理器微處理器l1.803861.80386微處理器的主要特點微處理器的主要特點l采用全采用全32位結(jié)構(gòu),其內(nèi)部寄存器、位結(jié)構(gòu),其內(nèi)部寄存器、ALU和操作是和操作是32位,數(shù)據(jù)線和地址線均為位,數(shù)據(jù)線和地址線均為32位位l提供提供32位外部總線接口,最大數(shù)據(jù)傳輸率為位外部總線接口,最大數(shù)據(jù)傳輸率為32M

54、B/s,具有自動切換數(shù)據(jù)總線寬度的功能,具有自動切換數(shù)據(jù)總線寬度的功能l具有片內(nèi)集成的存儲器管理部件具有片內(nèi)集成的存儲器管理部件MMU,可支持虛,可支持虛擬存儲和特權(quán)保護,虛擬存儲器空間可達擬存儲和特權(quán)保護,虛擬存儲器空間可達64太字節(jié)太字節(jié)(TB)l具有實地址方式、保護方式和虛擬具有實地址方式、保護方式和虛擬8086方式方式3種工種工作方式作方式l采用了比采用了比8086更先進的流水線結(jié)構(gòu),使其能高效、更先進的流水線結(jié)構(gòu),使其能高效、并行地完成取指、譯碼、執(zhí)行和存儲管理功能并行地完成取指、譯碼、執(zhí)行和存儲管理功能(指指令隊列令隊列16字節(jié)長)字節(jié)長)2. 80386的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu)l (

55、1)總線接口部件(總線接口部件(BIU)l (2)指令預(yù)取部件()指令預(yù)取部件(IPU)l (3)指令譯碼部件()指令譯碼部件(IDU)l (4)指令執(zhí)行部件()指令執(zhí)行部件(EU)l (5)分段部件()分段部件(SU)l (6)分頁部件()分頁部件(PU) (1)總線接口部件(BIU)l微處理器與系統(tǒng)的接口,其功能是:在取指令、取數(shù)據(jù)、分段部件請求和分頁部件請求時,有效地滿足微處理器對外部總線的傳輸要求。lBIU能接收多個內(nèi)部總線請求,并且能按優(yōu)先權(quán)加以選擇,最大限度地利用所提供的總線寬度,為這些請求服務(wù)。(2)指令預(yù)取部件(IPU)l職責(zé)是從存儲器預(yù)先取出指令職責(zé)是從存儲器預(yù)先取出指令l有

56、一個能容納有一個能容納16條指令的隊列條指令的隊列(3)指令譯碼部件(IDU)l職責(zé)是從預(yù)取部件的指令隊列中取出指令字節(jié),對它們進行譯碼后存入自身的已譯碼指令隊列中,并且作好供執(zhí)行部件處理的準備工作。l如果在預(yù)譯碼時發(fā)現(xiàn)是轉(zhuǎn)移指令,可提前通知總線接口部件BIU去取目標地址中的指令,取代原預(yù)取隊列中的順序指令。(4)指令執(zhí)行部件(EU)l由控制部件、數(shù)據(jù)處理部件和保護測試部件組成。l控制部件中包含著控制ROM、譯碼電路等微程序驅(qū)動機構(gòu)。l數(shù)據(jù)處理部件中有8個32位通用寄存器、算術(shù)邏輯運算器ALU、一個64位桶形移位器、一個乘除法器和專用的控制邏輯,它負責(zé)執(zhí)行控制部件所選擇的數(shù)據(jù)操作。l保護測試部

57、件用于微程序控制下,執(zhí)行所有靜態(tài)的與段有關(guān)的違章檢驗。執(zhí)行部件EU中還設(shè)有一條附加的32位的內(nèi)部總線及專門的總線控制邏輯,以確保指令的正確完成。(5)分段部件(SU)l作用是應(yīng)執(zhí)行部件的請求,把邏輯地址轉(zhuǎn)換成線性地址。l在完成地址轉(zhuǎn)換的同時還執(zhí)行總線周期的分段合法性檢驗。l該部件可以實現(xiàn)任務(wù)之間的隔離,也可以實現(xiàn)指令和數(shù)據(jù)區(qū)的再定位。(6)分頁部件(PU)l作用是把由分段部件產(chǎn)生的線性地址轉(zhuǎn)換成物理地址,并且要檢驗訪問是否與頁屬性相符合。l為了加快線性地址到物理地址的轉(zhuǎn)換速度,80386內(nèi)設(shè)有一個頁描述符高速緩沖存儲器(TLB),其中可以存儲32項頁描述符,使得在地址轉(zhuǎn)換期間,大多數(shù)情況下不需

58、要到內(nèi)存中查頁目錄表和頁表。l試驗證明TLB的命中率可達98。l對于在TLB內(nèi)沒有命中的地址轉(zhuǎn)換,80386設(shè)有硬件查表功能,從而緩解了因查表引起的速度下降問題。l分段部件SU和分頁部件PU統(tǒng)稱為存儲器管理部件MMU(Memory Management Unit)系統(tǒng)總線系統(tǒng)總線分段部件分段部件SU分頁部件分頁部件PU執(zhí)行部件執(zhí)行部件EU預(yù)取部件預(yù)取部件IPU譯碼部件譯碼部件IDU總線部件總線部件BIU線性地址線性地址譯碼指令譯碼指令數(shù)據(jù)(操作和結(jié)果)數(shù)據(jù)(操作和結(jié)果)有效地址有效地址物理地址物理地址32位位指令字節(jié)指令字節(jié)指令指令六大功能部件之間的關(guān)系有效地址總線有效地址總線有效地址總線有效

59、地址總線移位地址移位地址加法器加法器乘乘/除除寄存器棧寄存器棧狀態(tài)狀態(tài)標志標志ALU控制控制保護檢保護檢測部件測部件控制控制控制控制ROM譯碼和譯碼和定序定序位移總線位移總線指令和指令和譯碼譯碼兩個譯碼兩個譯碼指令隊列指令隊列指令預(yù)譯碼指令預(yù)譯碼內(nèi)部控內(nèi)部控制總線制總線分段部件分段部件 輸入輸入加法器加法器描述符描述符寄存器寄存器界限和屬界限和屬 性性PLA分頁部件分頁部件加法器加法器頁面超高頁面超高速緩存器速緩存器控制和特控制和特性性PLA預(yù)取器預(yù)取器 界限界限檢測器檢測器指令預(yù)取指令預(yù)取 16字節(jié)字節(jié)指令隊列指令隊列指令流指令流線性地址總線線性地址總線請求請求特權(quán)特權(quán)地址地址驅(qū)動器驅(qū)動器流

60、水線流水線I/O總線總線寬度控制寬度控制多路多路收發(fā)器收發(fā)器取代碼取頁數(shù)取代碼取頁數(shù)物理地址總線物理地址總線控制控制總線控制總線控制HOLD,INTR,NMI,ERRORBUSY,HLDA,RESETBE0BE3A2A3M/IO,D/C,W/R,LOCK,ADS,NA,BSIG,READYD0D33232323234ALU總線總線3232六大功能部件的結(jié)構(gòu)與連接圖3.80386內(nèi)部寄存器l80286內(nèi)部寄存器一共有7種:l(1)通用寄存器l(2)段寄存器l(3)系統(tǒng)地址寄存器l(4)指針和標志寄存器l(5)控制寄存器l(6)調(diào)試寄存器l(7)測試寄存器(1)通用寄存器l8個32位的通用寄存器,

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論