版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2章80x86/Pentium微處理器2.180x86/Pentium微處理器的內部結構2.2微處理器的主要引腳及功能
2.3系統(tǒng)總線與典型時序2.4典型CPU應用系統(tǒng)2.5CPU的工作模式2.6指令流水線與高速緩存2.764位CPU與多核微處理器
第2章80x86/Pentium微處理器自1978年Intel公司推出16位微處理器8086至今,微處理器歷經多次升級換代,構成了80x86/Pentium系列CPU。芯片集成度提高了30多倍,主頻提高了100多倍,運算速度達100MIPS,性能已到達大、中型機水平。本章重點:8086/8088微處理器的內部結構8086/8088微處理器的主要引腳及功能8086/8088系統(tǒng)總線與典型時序典型CPU應用系統(tǒng)
南京航空航天大學電子信息工程學院EU:執(zhí)行部件(8086/8088)BIU:總線接口部件(8086的不同于8088的)由兩部分組成(相互獨立)8086BIU:指令隊列6個字節(jié),外部數據總線16位。8088BIU:指令隊列4個字節(jié),外部數據總線8位。EU:執(zhí)行指令。BIU:取指、讀操作數、寫結果。大多數情況下,CPU取指、執(zhí)指操作并行。提高了系統(tǒng)總線的使用效率,改善了系統(tǒng)性能。2.180x86/Pentium微處理器的內部結構2.1.18086/8088CPU基本結構1.8086/8088CPU結構框圖第2章80x86/Pentium微處理器CHDHDISPBPSI65標志FR3EU控制系統(tǒng)運算寄存器ALU124DSSSES總線控制邏輯IPCS內部RegBHAHDLCLALBL地址總線20位地址加法
數據總線外部總線指令隊列通用寄存器執(zhí)行部件(EU)總線接口部件(BIU)ALU數據總線80888086AXBXCXDX第2章80x86/Pentium微處理器(1)EU(ExecutionUnit,含有ALU及部分Reg.)負責全部指令的執(zhí)行;向BIU輸出(地址及結果)數據;對Reg及PSW進行管理。功能①
8個通用寄存器②算術邏輯運算部件ALU
16位加法器,用于對寄存器和指令操作數進行算術或邏輯運算。③標志寄存器FR
9個標志位,其中6個條件標志位用于存放結果狀態(tài)。④暫存寄存器⑤EU控制系統(tǒng)接收從BIU的指令隊列中取來的指令代碼,譯碼并向EU內各有關部分發(fā)出時序命令信號,協(xié)調執(zhí)行指令規(guī)定的操作。組成AH,AL,BH,BL,CH,CL,DH,DL(8位)指針寄存器:SP,BP數據寄存器:AX,BX,CX,DX(16位)變址寄存器:SI,DI
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器(2)BIU(BusInterfaceUnit,8086/8088同外部設備的接口部件)代碼段Reg:CS堆棧段Reg:SS數據段Reg:DS附加段Reg:ES
組成②指令指針寄存器IP(下一條將要執(zhí)行的指令在當前代碼段內的地址偏移量)
4個段寄存器③指令隊列Queue④20位地址加法器Σ
⑤總線控制邏輯⑥內部通信寄存器①功能完成所有外部總線的操作,提供總線控制信號。具體為:
取指、指令排隊、讀寫操作數、總線控制、
地址轉換(將兩個16位地址相加20位物理地址)。第2章80x86/Pentium微處理器BIU使用指令隊列實現(xiàn)流水線操作。當Queue中有2/1個或2/1個以上的字節(jié)空間,且EU未申請讀寫存儲器,BIU順序預取后續(xù)指令代碼→Queue。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院(3)EU的工作過程①若是運算操作:操作數→暫存器→ALU;運算結果→經“ALU總線”
→相應Reg,并置FR。②若從外設取數:EU→BIU→訪問MEM或I/O
→內部通信寄存器
→向“ALU數據總線”傳送數據。從BIU的指令隊列中取指→譯碼電路分析→相應控制命令→控制數據經過“ALU數據總線”的流向:第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.性能及特點(1)8086/8088CPU主要性能字長:16位/準16位時鐘頻率:8086/8088標準主頻為5MHz,8086/8088-2主頻為8MHz。數據/地址總線:復用,外部DB寬度16bit/8bit,AB寬度20bit。最大內存容量:1MB(220)基本尋址方式:8種指令系統(tǒng):99條基本指令??梢詫ξ?字節(jié)/字/字節(jié)串/字串/壓縮/非壓縮BCD碼等多種數據類型進行處理。端口地址:16bitI/O端口地址,可尋址64K個端口地址,每個地址對應一個字節(jié)寬的I/O端口。中斷功能:支持的中斷源(內部中斷和外部硬件)達256個支持單片CPU或多片CPU系統(tǒng)工作
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器(2)特點①取指執(zhí)指重疊并行取指取指取指取指得到數據等待執(zhí)行執(zhí)行執(zhí)行執(zhí)行執(zhí)行當前指令時預取下一條(或多條)指令,指令在指令隊列中排隊(指令流水線技術);
優(yōu)點:
一條指令執(zhí)行完成后,可以立即執(zhí)行下一條指令,減少CPU為取指令而等待的時間,提高CPU的利用率。
通常,IP中是將要執(zhí)行的下一條指令在當前代碼段內的偏移地址。只要是順序執(zhí)行,隊列中的指令就是緊接當前指令的邏輯上的指令。
如果EU當前執(zhí)行的是轉移指令,則BIU清除隊列,從新地址取出指令立即送EU執(zhí)行。再從后續(xù)的指令序列中取指令填滿隊列。第2章80x86/Pentium微處理器②段寄存器和存儲器分段存儲器空間20根地址線220=1MByte
00000H
FFFFFH
……A19地址A010010111001011010101972D5H由存儲器中存放的信息屬性,分成4種段,存放3類信息:代碼、數據、中間結果和斷點地址。8086CPU有20根地址線,16位數據線。CPU內部寄存器是16位的。→
CPU內部存放地址的寄存器是16位的,只可表示16位的地址。為了能尋址1MB地址空間,8086對存儲器進行分段管理:每個段最大為64KB(216),最小為16B。(此時最多64K個段)8086/8088率先打破微處理器只能訪問64KB存儲空間的限制,可尋址1MB。972D5H12H段[972D5H]=12H分段原因:第2章80x86/Pentium微處理器+物理地址=段址×10H+偏址段地址
CS、DS、ES、SS16偏址
16指令地址CS×10H+IP數據地址DS×10H+EA(偏移地址也稱為有效地址EA,出現(xiàn)在指令中)堆棧地址SS×10H+SP附加段地址ES×10H+EA
4個段寄存器CS、DS、SS、ES存儲單元的邏輯地址和物理地址
邏輯地址段地址0000H~FFFFH(由段寄存器提供)偏移地址段內某個單元到段基地址的距離(0000H~FFFFH,由指令提供)物理地址:CPU訪問存儲器時,送出的20位地址(00000H~FFFFFH)分別指示存儲區(qū)的段地址,用來識別當前可尋址的四個段,不可互換使用。段起始地址的高16位,段起始地址又稱為段基地址。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院物理地址與邏輯地址的關系:物理地址=段基地址×16+偏移量......20000H25F60H25F61H25F62H25F63H2000H段地址邏輯地址段內偏移地址5F62H邏輯地址與物理地址物理地址的形成段地址00003210150偏移地址基址加法器物理地址015019第2章80x86/Pentium微處理器表2-1訪問存儲器類型與邏輯地址來源關系訪問存儲器類型約定段寄存器可代換段寄存器偏移量物理地址計算式取指令CS—IPCS×16+IP堆棧操作SS—SPSS×16+SP訪問變量DSCS,ES,,SS有效地址EADS×16+EA源字符串DSCS,ES,SSSIDS×16+SI目的字符串ES—DIES×16+DIBP用作基地址寄存器SSCS,DS,SS有效地址EASS×16+EA段缺省和段替換規(guī)則(CPU對段訪問時應遵循這個原則):段缺?。憾渭拇嫫髅怀霈F(xiàn)在指令和機器碼中,由CPU對存儲器的操作性質隱含指定;搭配規(guī)則:段寄存器和寄存器(指針、變址)有較固定的配用關系;替換(超越)規(guī)則:在指令之前可加上“CS”,”DS”,”SS”等前綴,以指定的段寄存器替代隱含的段寄存器。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院段寄存器和其他寄存器組合指向存儲單元示意圖代碼段數據段堆棧段CSIPDSSI,DI或BXSSSP或BP第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院存儲器分段的一般規(guī)律:
可獨立分開(最大不重疊16個段)
連續(xù)
重疊(部分重疊或完全重疊)如:數據段和附加段完全重疊,堆棧段和附加段部分重疊。因此,對一個具體的存儲單元,可以屬于一個邏輯段,也可以同時屬于幾個邏輯段。③部分管腳功能雙重定義以適用多處理器第2章80x86/Pentium微處理器3.寄存器配置控制寄存器8位寄存器IPFLAGCSDSSSES代碼段寄存器數據段寄存器堆棧段寄存器附加段寄存器AHALBHBLCHCLDHDL
AXBXCXDX
SPBPSIDI累加器基地址寄存器計數器數據寄存器堆棧指針寄存器基地址指針寄存器源變址寄存器目的變址寄存器(PC)指令指針寄存器(PSW)狀態(tài)標志寄存器段寄存器16位寄存器通用寄存器寄存器組(RegisterSet)
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器用途:存放8位或16位操作數或中間結果,以提高CPU的運算速度(減少存取MEM的時間)
其中,AX是CPU使用最多的一個寄存器,功能最強。(1)通用Reg.(分為兩組:一組可用于字、字節(jié);一組僅可用于字)①數據Reg.(AX,BX,CX,DX)特殊用法:AX
—算術運算、I/O傳輸的主要寄存器(Accumulator)BX—計算地址時用作基址Reg.(Base)CX—計數器,循環(huán)或移位時用。(Counter)DX—I/O操作時用于保存I/O端口地址,或字的乘除法運算時用來存放高16位。(Data)AX的作用算術邏輯運算之前保存一個操作數,之后保存結果。CPU與I/O、MEM交換數據所用到的最多的寄存器。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院②指示器和變址Reg.(SP,BP,SI,DI,僅能用于字)用途:縮短指令代碼的長度;建立可變的地址;寄存偏移量,與段寄存器的內容相加以獲得物理地址。說明:
SP中存放的偏移量被認為是在堆棧段中(堆棧訪問)。
DI、SI中的偏移量,通常被認為是在數據段中。
BP通常用于存放當前堆棧段的一個數據區(qū)“基址”的偏移量(這為隨機訪問堆棧提供了手段),BP也可用于通用Reg.。SP—堆棧指針BP—基地址指針SI—源變址寄存器DI—目的變址寄存器指針寄存器變址寄存器第2章80x86/Pentium微處理器通用寄存器的特殊用法(默認用法)寄存器特殊用法AX,AL乘法/除法指令,作累加器;I/O操作時,作數據寄存器AH在LAHF指令中用作目的寄存器(AH←標志)AL在BCD碼及ASCII碼運算指令中作為累加器;在XLAT指令中作為累加器(AL←AL+BX)BX在間接尋址中作為基址寄存器CX在循環(huán)程序中,作循環(huán)次數計數器CL在移位和循環(huán)移位指令中,作為移位位數和循環(huán)移位次數的計數寄存器DXI/O指令間接尋址時,作為地址寄存器;在乘法指令中作為輔助累加器(當乘積或被除數為32位時,存放高16位數)BP在間接尋址中,作為基址寄存器SP在堆棧操作中,作為堆棧指針SI間接尋址時,作為地址寄存器或變址寄存器;在串操作指令中作為源變址寄存器DI在間接尋址時,作為地址寄存器或變址寄存器;在串操作指令中作為目的變址寄存器第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院(2)段Reg.(CS,DS,SS,ES)程序運行過程中,IP中總是包含著將要執(zhí)行的下一條指令在當前代碼段內的偏移地址?;蚍Q:IP和CS一起指向下一條指令的物理地址。
物理地址=CS×16+IPCS+IP,為下一條指令的地址。DS+指令中的偏移量,為數據段內的某單元地址。SS+SP,為堆棧段內的某單元地址。ES+指令中的偏移量,為附加段內的某單元地址。(3)指令指針I(yè)P(用來存儲代碼段中的偏移地址)用戶不能通過MOV指令直接修改IP的內容,但轉移、調用等指令可引起它的改變。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院(4)標志寄存器FRCFPFAFZFSFTFIFDFOF反映指令對數據作用之后,結果的狀態(tài)(不是結果本身)。這些狀態(tài)將控制后續(xù)指令的執(zhí)行;有些運算操作將影響全部狀態(tài)標志,如加法、減法運算;有些操作影響部分狀態(tài)標志,如移位操作;有些指令的操作不影響任何狀態(tài)標志,如數據傳送指令。用途:存放ALU運算結果的特征標志。
這些標志可作為條件,用于判斷是否控制程序轉移。第2章80x86/Pentium微處理器進位標志CF(CarryFlag):當結果的最高位(D15或D7)產生一個進位或借位,則CF=1,否則CF=0。溢出標志OF(OverflowFlag):當帶符號數的運算結果超出-2n-1~2n-1-1時,溢出,OF=1,否則OF=0。
符號標志SF(SignFlag):結果的最高位(D15或D7)為1,則SF=1,否則SF=0.零標志ZF(ZeroFlag):
若運算的結果為0,則ZF=1,否則ZF=0。奇偶標志PF(ParityFlag):若運算結果的低8位中‘1’的個數為偶數,則PF=1,否則,PF=0。輔助進位標志AF(AuxiliaryFlag):在進行8位或16位數運算時,由低4位向高4位(D3向D4)有進位或借位,則AF=1,否則AF=0.狀態(tài)標志控制標志方向標志DF(DirectionFlag):
DF=1,串操作時地址自動減量;DF=0,串操作時地址自動增量。中斷允許標志IF(InterruptEnableFlag):IF=1,允許CPU接收外部中斷請求,IF=0,屏蔽外部中斷請求。追蹤標志TF(TraceFlag):
TF=1,使處理進入單步方式,以便于調試。CFPFAFZFSFTFIFDFOF第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院例1:執(zhí)行2345H+3219H,分析對FR的影響。10001101000101000011001000011001+0111101010101010標志:
運算結果最高位為0 ∴SF=0
運算結果本身≠0 ∴ZF=0
低8位中1的個數為奇數個∴PF=0
最高位沒有進位∴CF=0
D3位向D4位無進位 ∴AF=0
次高位向最高位沒有進位,最高位向前沒有進位∴OF=0第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院例2:執(zhí)行2345H-3219H,分析對FR的影響。10001101000101001100110111100111+0011010010001111標志:
運算結果最高位為1 ∴SF=1
運算結果本身≠0 ∴ZF=0
低8位中1的個數為奇數個∴PF=0
最高位沒有進位(無進位,有借位)∴CF=1
D3位向D4位無進位(無進位,有借位) ∴AF=1
次高位向最高位沒有進位,最高位向前沒有進位∴OF=0F12CH補=-0ED4H第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.2微處理器的主要引腳及功能2.2.18086/8088CPU引腳功能
8086/8088CPU內部設置了若干多路開關,使某些引腳具有多種功能(解決功能強與引腳少的矛盾)。引腳功能的轉換分兩種情況——
①分時復用:在不同時鐘周期內其功能不同;
②工作模式不同引腳功能不同:同一引腳在單CPU(最小模式)和多CPU(最大模式)下,加接不同信號。8086/8088均為40PIN、雙列直插式(DIP)封裝的芯片。①地址/數據線20根②控制和狀態(tài)線16根③定時信號線1根④電源和地線3根40PIN按功能分:每個信號方向(單、雙)電平(三態(tài)、二態(tài))第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院8088最小模式:系統(tǒng)中只有1個微處理器,系統(tǒng)中的所有總線控制信號都直接由8086/8088產生(整個系統(tǒng)中的控制線路最簡單)。最大模式:
系統(tǒng)中含有兩個或兩個以上微處理器,其中8086/8088為主處理器,其它是協(xié)處理器。如:數值運算協(xié)處理器8087輸入輸出協(xié)處理器8089。引腳33MN/MX決定工作模式:
接+5V,最小模式;接地,最大模式(括號內引腳)第2章80x86/Pentium微處理器補充時鐘周期—CPU的基本時間計量單位,由CPU的主頻決定。例:主頻5MHz,則T=200ns一個指令周期由若干個機器周期構成。在8086/8088中,機器周期稱為總線周期。一個基本總線周期由4個時鐘周期T構成,稱為T1、T2、T3和T4。T1:CPU經多路復用總線發(fā)地址信息,指出尋址單元或端口地址。T2:CPU從總線上撤消地址,成浮空狀態(tài)(16位),而A19~A16
用來輸出本總線周期狀態(tài)信息。T3:連續(xù)提供狀態(tài)信息,傳送數據。T4:結束狀態(tài)。指令周期
—一條指令從取出到執(zhí)行完畢所持續(xù)的時間。機器周期—CPU完成某個獨立操作所需要的時間。(取指,存儲器讀、寫,I/O讀寫)第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院AD7~AD0:地址/數據總線,雙向、三態(tài)。分時復用。
③在DMA方式時,這些引腳成浮空狀態(tài)。
①這些地址在整個總線周期內保持有效(即輸出穩(wěn)定8位地址)。②DMA方式時,這些引腳成浮空。8088CPU引腳功能8088②之后,經轉換開關→數據總線D7~D0,傳送數據,直到總線周期結束。①在每個總線周期T1,作地址總線低8位A7~A0,用于尋址MEM或I/O端口。
A8~A15:地址總線,輸出、三態(tài)。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院DMA(DirectMemoryAccess)方式CPU讓出總線(懸浮狀態(tài)),使外部設備和存儲器之間直接傳送(不通過CPU)數據的方式。通常在如下的情況使用:外設與存儲器之間有大量的數據需要傳送。外設的工作速度很快。
MEM
CPU
I/ODMA補充第2章80x86/Pentium微處理器地址線A19~A0,1M內存;地址線A15~A0,64K個端口地址。A19/S6~A16/S3:地址/狀態(tài)線,輸出、三態(tài)。分時復用。③DMA方式時,這些引腳成浮空。①在T1狀態(tài),若訪問MEM,作地址總線高4位。若訪問I/O口,全為低電平(I/O端口只用16位地址)。②在T2~T4期間,輸出狀態(tài)信息:
S6總是低電平,表示CPU連在總線上;S5是可屏蔽中斷允許標志;
S4和S3表示當前訪問存儲器所用的段寄存器,S4和S3編碼與段寄存器對應關系如表所示。S4S3性能對應段寄存器00數據交換使用附加段寄存器ES01堆棧操作使用堆棧段寄存器SS10代碼使用代碼段寄存器CS11數據使用數據段寄存器DS第2章80x86/Pentium微處理器ALE:地址鎖存允許信號,輸出,高電平有效。CPU在每條指令的最后一個時鐘周期對INTR采樣:①若INTR引腳信號為高電平,同時CPU內部IF=1時,CPU就進入了中斷響應周期。
②若IF=0,即使有INTR引腳信號為高,CPU對此中斷請求不予理睬。因此可以通過軟件的方法使IF=0,以達到屏蔽中斷請求INTR的目的。INTR:可屏蔽中斷請求,輸入、高電平有效。地址鎖存進鎖存器(8282/8283,74LS373)的鎖存控制信號。①在T1期間,ALE高電平,其下跳沿將使地址鎖存入鎖存器。②在DMA方式中,ALE不能浮空。入口地址中斷服務程序斷點
CPU響應中斷時,暫停正在執(zhí)行的主程序,由中斷源提供的中斷類型碼從中斷向量表中找到相應中斷服務程序的入口地址,轉去執(zhí)行中斷服務程序。中斷結束后,再返回斷點繼續(xù)執(zhí)行主程序。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院INTA:中斷響應信號,輸出,低電平有效。
NMI:非屏蔽中斷請求,輸入,上升沿有效。CLK:時鐘信號,輸入。①
NMI不能用軟件進行屏蔽。只要該引腳上出現(xiàn)一個從低到高的電脈沖,CPU在當前指令結束后立刻進入中斷響應。②NMI的中斷類型碼為2,其服務程序入口地址在中斷向量表的08H/09H(IP)和0AH/0BH(CS)單元中??善帘沃袛郔NTR與非屏蔽中斷NMI屬于系統(tǒng)的外部(硬件)中斷CPU響應外部中斷后,會發(fā)應答信號給請求中斷的設備。為CPU和總線控制器提供定時基準。占空比0.33(1/3周期高電平,2/3周期低電平)。
第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院RESET:復位信號,輸入,高電平有效。①RESET信號寬度至少保持4個時鐘周期。②復位時CPU各寄存器的狀態(tài)見表2-7??梢姡珻S=FFFFH,IP=0000H,
READY:準備好信號,輸入,高電平有效。②當被訪問的部件可以完成數據傳送時,READY為高電平,CPU繼續(xù)運行。③復位后,CPU從FFFF0H單元開始執(zhí)行。通常在FFFF0H~FFFFFH這16個單元中存放轉移指令。復位后CPU內部內容標志位清除指令指針(IP)0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES寄存器0000H指令隊列空是被訪問的MEM和I/O設備數據準備好發(fā)回來的應答信號。①當被訪問部件無法在CPU規(guī)定的時間內完成數據傳送時,應使READY信號處于低電平,這時CPU進入等待狀態(tài),插入一個或幾個等待周期TW來延長總線周期。
當執(zhí)行WAIT指令時,CPU對TEST進行監(jiān)視(每隔5個T采樣一次,若TEST為高,就使CPU重復執(zhí)行WAIT指令而處于等待狀態(tài)。若TEST為低,CPU則脫離等待狀態(tài),繼續(xù)執(zhí)行下一條指令。(常用于多CPU系統(tǒng))
第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院
DT/R:數據發(fā)送/接收控制,輸出,三態(tài)。
TEST:測試信號,輸入,低電平有效。
DEN:數據允許,輸出,三態(tài),低電平有效。①在單CPU系統(tǒng)中,DEN作為數據總線雙向驅動器的選通信號。②在每個MEM或I/O訪問周期以及中斷響應周期,DEN為低電平。③DMA方式時,它處于浮空狀態(tài)。
在單CPU系統(tǒng)中,用DT/R來控制數據總線雙向驅動器的數據傳送方向:
①DT/R=1時,CPU發(fā)送數據;②DT/R=0時,CPU接收數據。第2章80x86/Pentium微處理器
IO/M:外設/內存訪問控制,輸出,三態(tài)。
①輸出高電平時,表示總線周期為I/O訪問周期;②輸出低電平時,表示總線周期為MEM訪問周期。③DMA工作方式時,它為浮空狀態(tài)。WR:寫信號,輸出,三態(tài),低電平有效。
①
WR信號有效時,表示CPU正做寫MEM(或I/O口)的操作:由IO/M的狀態(tài)決定是寫MEM(IO/M=0);還是寫入I/O(IO/M=1)。②DMA方式時,它處于浮空狀態(tài)。RD:讀信號,輸出,三態(tài),低電平有效。
RD信號有效時,由IO/M決定是對I/O讀(IO/M=1);還是對MEM(IO/M=0)讀。
IO/M、WR、RD決定了CPU訪問MEM或I/O的方式DT/R在寫WR或讀RD時電平不同第2章80x86/Pentium微處理器HOLD:保持請求信號,輸入,高電平有效。
當DMA操作或外部處理器要求通過總線傳送數據時,HOLD信號為高,表示外界請求主CPU讓出對總線的控制權。HLDA:保持響應信號,輸出,高電平有效。
①當CPU同意讓出總線控制權時,輸出HLDA高電平信號,通知外界可以使用總線。同時,現(xiàn)有主CPU所有具“三態(tài)”的線,都進入浮空狀態(tài);②當HOLD變?yōu)榈碗娖綍r,主CPU也把HLDA變?yōu)榈碗娖?,此時它又重新獲得總線控制權。HOLDHLDA
MEM
CPU
I/ODMA第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院SS0:狀態(tài)信號,輸出,三態(tài)。
①用在單CPU系統(tǒng)中,與IO/M、DT/R一起表示當前的系統(tǒng)總線周期狀態(tài),如表2-8所示。
②在多CPU系統(tǒng)下,SS0總是輸出高電平。IO/MDT/RSS0操作111100000011001101010101中斷響應讀IO/口寫I/O口暫停取指令讀存儲器寫存貯器無效第2章80x86/Pentium微處理器
MN/MX:單CPU/多CPU方式控制,輸入。①當MN/MX=1(接VCC)時,單CPU模式(最小模式),8088的24~31引腳功能如上面所述;②若MN/MX=0(接GND),多CPU模式(最大模式),8088的24~31引腳定義如圖2-38(b)括號內所示。
以下介紹多CPU模式(最大模式)下引腳的功能(PC機為多CPU模式)
S2、S1、S0:總線周期狀態(tài)標志,輸出、三態(tài),低電平有效。①多CPU模式下,它們的不同組合,表示CPU總線周期的狀態(tài)。②此組信號→8288總線控制器,8288利用它們的不同組合,產生訪問MEM或I/O的控制信號或中斷響應信號。S2S1S0操作類型000011110011001101010101中斷響應讀I/O口寫I/O口暫停取指令操作碼讀存儲器寫存儲器無效狀態(tài)第2章80x86/Pentium微處理器LOCK:封鎖信號,輸出,三態(tài),低電平有效。RQ/GT0:請求/允許控制信號,雙向、三態(tài)、低電平有效。
RQ/GT1供外部主控設備(如協(xié)處理器)用來請求總線控制權。由外部主控設備向8088輸入請求總線控制權的信號(HOLD),若8088可以讓出控制權,則在同一條線上輸出允許使用總線的回答信號(HLDA)。RQ/GT0的優(yōu)先權>RQ/GT1的優(yōu)先權。
QS1、QS0:指令隊列狀態(tài),輸出,高電平有效。①用來封鎖外部主控設備的請求。當LOCK信號為低時,外部主控設備不能占用總線。②這個信號配合指令來實現(xiàn)。若某條指令加上前綴LOCK,則CPU執(zhí)行這條指令時,LOCK引腳為低,并保持到指令結束。QS1和QS0的編碼反映了CPU內部當前的指令隊列狀態(tài),以便外部主控設備對8088進行跟蹤。見P60表2-10。
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器8086CPU引腳功能與8088引腳功能的區(qū)別:(1)8086:16條地址/數據復用AD15~AD08088:只有AD7~AD0
(2)8086的PIN34:BHE/S78088中為SS0
PIN34—高8位數據總線的
允許/狀態(tài)信息復用引腳。對8086
用BHE作為訪問存儲器高字節(jié)(高8位)的選通信號;用A0作為訪問存儲器低字節(jié)(低8位)的選通信號。第2章80x86/Pentium微處理器
BHE、A0組合編碼與數據總線傳送數據的關系如下:BHEA0數據傳送狀態(tài)00傳送16位D15~D001傳送高8位D15~D810傳送低8位D7~D011無操作(3)8086的PIN28為M/IO,存貯器/輸入輸出信號,輸出、三態(tài)。當M/IO=1時,表示訪問存貯器。 當M/IO=0時,表示訪問I/O端口。
它和8088的PIN28(IO/M)意義正好相反。
①
T1時,CPU輸出BHE有效(低電平)信息;②T2、T3、TW和T4期間,CPU輸出S7狀態(tài)信息。S7低電平有效。③DMA工作方式,它為浮空狀態(tài)。
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器2.3系統(tǒng)總線與典型時序處理器子系統(tǒng)DB數據總線CB控制總線I/O接口I/O接口存儲器存儲器……AB地址總線
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器2.3.1CPU系統(tǒng)總線及其操作本質上都是通過總線進行信息交換,這些操作統(tǒng)稱為總線操作。①取指令②將數據寫入存儲器③從存儲器讀出數據④將數據寫入輸出端口⑤從輸入端口讀入數據⑥
DMA訪問操作等。微機系統(tǒng)中的各種操作①總線請求和仲裁(模塊對總線的使用權)②尋址階段(取得使用權的模塊發(fā)出要訪問對象的地址)③數據傳輸階段(完成模塊間的數據交換)④結束階段(模塊的有關信息從系統(tǒng)總線上撤除,讓出總線)完整的總線操作周期包括4個階段總線操作周期:系統(tǒng)中模塊間完成一次信息交換的時間片。(數據傳輸周期)
第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.3.2基本總線操作時序
對于只有一個主模塊的單CPU系統(tǒng),總線始終歸它所有,不存在總線的請求、分配和撤除等。
8086/8088系統(tǒng)總線操作周期只需要尋址和傳輸數據兩個階段。
8086/8088CPU的操作都是在系統(tǒng)時鐘CLK控制下嚴格定時的
1.微處理器時序的概念
CPU執(zhí)行指令時送出一系列的控制信號,這些控制信號在時間上的關系稱為CPU時序。從時序角度考慮,CPU的執(zhí)行工作可分作三種類型的周期(1)時鐘周期(ClockCycle)
時鐘周期又稱為T狀態(tài),是CPU動作處理的最小時間單位。
時鐘周期值的大小由系統(tǒng)時鐘(晶振頻率)來確定,T=1/f
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器(2)總線周期(BusCycle,由若干時鐘周期組成,也稱機器周期)
8086/8088的一個基本總線周期由4個T(時鐘周期)構成。指CPU對MEM或I/O端口完成一次讀或寫所需要的時間。(3)指令周期(InstructionCycle)指令周期反映了執(zhí)行一條指令所需要的時間。一個指令周期通常由若干個總線周期構成。T1:CPU從地址/數據線上送出地址。T2:地址撤消。若是CPU讀:地址/數據線是高阻;若是CPU寫:地址/數據線是數據。T3:數據穩(wěn)定在總線上,在T3與T4交界處采樣數據,進入T4狀態(tài)。T4:結束狀態(tài)。不同指令的執(zhí)行時間不同,即周期長短不一樣。簡單指令只需要一個總線周期,復雜指令就需要較多的總線周期。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.8086/8088基本總線操作時序(1)8086存儲器/IO讀周期時序8086存儲器讀周期時序第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院8086存儲器/IO讀周期時序第2章80x86/Pentium微處理器T1狀態(tài)①M/IO信號確定CPU是要從MEM還是I/O端口讀數據且一直保持到本總線周期結束。②CPU在T1通過地址線輸出地址,這些地址值要保持到T2狀態(tài)。③地址值必須鎖存,鎖存信號用ALE。④BHE信號也要鎖存。⑤DT/R輸出為低電平,表示本總線周期的數據總線方向是由外向CPU內傳送數據。
T2狀態(tài)①在T2狀態(tài),地址信號消失,AD15-AD0進入高阻狀態(tài),為數據讀入作準備;A19/S6-A16/S3及BHE/S7引腳輸出狀態(tài)信號S7-S3。②RD輸出低電平信號表示讀操作,數據送往數據總線。③DEN信號也在T2狀態(tài)變低,表示數據允許。
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院TW狀態(tài)
當系統(tǒng)中采用的MEM或I/O接口速度較慢,不能用基本總線周期執(zhí)行讀操作時,系統(tǒng)就要根據READY信號進行采樣。①如果READY為高電平,則下一個狀態(tài)為正常的T4狀態(tài);②如果READY為低電平,表示數據還未有效,則下一個為插入的TW狀態(tài),在TW狀態(tài)的前沿繼續(xù)采樣READY信號,以決定是否還要插入等待狀態(tài)TW。T4狀態(tài)
在T4狀態(tài)和前一個狀態(tài)交界的下降沿處,CPU對數據總線進行采樣,從而獲得數據。
T3狀態(tài)
在T3狀態(tài),來自MEM或I/O的數據被送到數據總線,CPU在T3狀態(tài)結束時讀取數據總線上的數據。第2章80x86/Pentium微處理器(2)8086存儲器/IO寫周期時序(3)8088訪問存貯器/IO時序基本上同8086,不同之處①地址/數據復用線8根AD7~AD0;②沒有BHE信號;③訪問存儲器與IO的控制信號是IO/M。第2章80x86/Pentium微處理器2.3.3特殊總線操作時序1.中斷響應周期中斷類型碼
INTACLKAD7~AD0T1T2T3T4第一個中斷響應周期T1T2T3T4第二個中斷響應周期
第一個周期:送INTA,①表示響應中斷,②外設取消INTR信號用。
第二個周期:又送INTA,通知外設送中斷類型碼到數據線上,以便CPU取得該中斷服務程序入口地址,轉入中斷服務。則,CPU在執(zhí)行完當前指令后響應中斷,進入中斷響應。這包含兩個中斷響應周期:①INTR腳為高電平②IF=1當第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.8086/8088等待(WAIT)狀態(tài)時序CPU不與MEM或I/O之間傳送數據時,則不執(zhí)行總線周期,BIU不和總線打交道,此時進入總線空閑周期T??偩€空閑周期,是CPU總線空操作,BIU對EU的等待。T1T2T3TwT4CLKREADY在任何時刻,當CPU檢測到READY引腳為低電,則在T3~T4之間插入等待周期Tw,直至READY為高。
3.總線空閑周期第2章80x86/Pentium微處理器2.4典型CPU應用系統(tǒng)時鐘電路、地址鎖存器、總線驅動器、存貯器、I/O接口及基本外圍設備CPU完整的微機系統(tǒng)支持芯片2.4.18086/8088支持芯片1.8284時鐘發(fā)生器是Intel公司為8086/8088系統(tǒng)配套設計的單片時鐘發(fā)生器向CPU提供——CLK、READY、RESET向外部設備提供——OSC、PCLK信號第2章80x86/Pentium微處理器2.8282/82838位三態(tài)輸出鎖存器
對于地址/數據線復用的芯片,電路設計時應該有將地址與數據分離的手段。OE:輸出允許,低電平有效。在系統(tǒng)中,OE接地,保證總是允許輸出。STB:輸入選通信號,高電平有效。
8282鎖存器用于系統(tǒng)中,在ALE的下跳變啟動鎖存地址碼。功能同74LS373①
STB=1,輸出DO7~DO0隨輸入DI7~DI0而變,起傳輸作用;②STB由‘1’變到‘0’時,將輸入數據鎖存。第2章80x86/Pentium微處理器3.8286/8287(反相)8位并行雙向總線驅動器功能同74系列的244/245芯片。
1A→B(發(fā)送)T=0B→A(接收)1高阻OE=0允許輸出T:傳輸方向控制,輸入。OE:允許輸出,輸入。
增強數據總線的帶負載能力;在CPU與訪問對象之間做隔離。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院4.8288總線控制器
CPU在最大模式(PIN33=0)時,不能直接提供總線控制信號。
8288總線控制器專門為此而設計。
CPU的S2、S1、S0與8288狀態(tài)信號連接,譯碼產生各種總線信號,使多個CPU接在同一組系統(tǒng)總線上。8288的組成:狀態(tài)譯碼器;命令信號發(fā)生器;控制信號發(fā)生器;控制邏輯。典型信號:①正常的MEM/IO讀寫②超前的MEM/IO寫③DEN是高電平有效第2章80x86/Pentium微處理器
8086多CPU系統(tǒng)存貯器/IO讀時序補充第2章80x86/Pentium微處理器
8086多CPU系統(tǒng)存貯器/IO寫時序
8088多CPU系統(tǒng)存貯器/IO讀寫時序①僅AD7~AD0復用②無BHE與8086不同之處超前的MEM/IO寫信號第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.4.28086/8088單CPU(最小模式)系統(tǒng)1.8088單CPU系統(tǒng)8086/8088CPU工作在最小模式時,引腳直接提供總線信號常用方式系統(tǒng)設計時,8088引腳與總線連接關系必須遵循以下原則:(1)MN/MX引腳接高電平;(2)IO/M、RD、WR和INTA引腳直接接在存儲器和I/O端口的相應控制線上;(3)地址線、地址/數據線接到鎖存器上(CPU的ALE→STB);(4)數據線有兩種接法:①直接接到數據總線上②經數據總線驅動器接到數據總線上(DEN、DT/R)(5)由8284時鐘發(fā)生器提供CPU的CLK時鐘。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院圖2-558088單CPU(最小模式)系統(tǒng)結構
注意:RD+IO/M=MEMRMEM讀WR+IO/M=MEMWMEM寫RD+IO/M=IORIO讀WR+IO/M=IOWIO寫第2章80x86/Pentium微處理器2.8086單CPU系統(tǒng)8086是真16位CPU,系統(tǒng)設計時,要注意存儲器的連接。(1)需兩片8286。(2)需兩塊8位的存儲體并成一個16位的存儲體,即:奇存儲體:奇地址單元組成,用于存儲16位數據的高字節(jié)。偶存儲體:偶地址單元組成,用于存儲16位數據的低字節(jié)。將1MB的存儲體分為兩個512KB的存儲體。對8086,BHE、A0組合編碼與數據總線傳送數據的關系為:BHEA0數據傳送狀態(tài)數據傳送狀態(tài)00傳送16位D15~D0同時對兩個存儲體訪問01傳送高8位D15~D8奇地址訪問10傳送低8位D7~D0偶地址訪問11無操作無存儲器操作第2章80x86/Pentium微處理器存儲器地址空間分配FFFFEH偶地址存儲體512K*8bitA0=0奇地址存儲體512K*8bitBHE=0FFFFFH00002H00003H00000H00001H地址內容內容地址D7~D0D15~D8A0A19~A1DBABBHED7~D0奇地址存儲體CSA18~A0D7~D0偶地址存儲體CSA18~A0存儲體與總線的連接依據CPU的設計作如下連接:①CPU地址中A19-A1作奇偶存儲塊的片內尋址(A19-A1→A18-A0
)。②
A0作偶地址存儲體片選信號:A0=0選中偶;A0=1不選中偶。③
BHE作奇地址存儲體片選信號:BHE=0選中奇;BHE=1不選中奇。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院圖2-568086單CPU(最小模式)系統(tǒng)結構
注意:RD+IO/M=MEMRMEM讀WR+IO/M=MEMWMEM寫RD+IO/M=IORIO讀WR+IO/M=IOWIO寫第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院2.4.38086/8088多CPU(最大模式)系統(tǒng)在一個系統(tǒng)中存在兩個或兩個以上的處理器作為一個多CPU系統(tǒng),應該要處理好以下幾方面問題:(1)多處理器并行處理時,各處理器之間同步;(2)各處理器任務協(xié)調,并保證協(xié)調操作;(3)多處理器系統(tǒng)共用設備的共享和分配;(4)系統(tǒng)總線使用權的占用問題。以PC為例:(1)8088、8087(協(xié)處理器)、8089(I/O處理器)不是并行操作,而是8088主處理器控制下的協(xié)調操作。(2)兩個處理器不可能同時訪問系統(tǒng)總線,只有主處理器同意后才可能。(3)主、協(xié)處理器之間采用異步通信方式交換數據。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院1.以8088為核心構成的多CPU系統(tǒng)8086/8088工作在最大模式時,系統(tǒng)總線信號由8288提供系統(tǒng)設計時:(1)MN/MX引腳接低電平;(2)8088必須通過總線控制器8288提供總線控制信號。采用8288:
(1)產生系統(tǒng)總線控制信號;
MRDC、MWTC、IORC、IOWC(MEM/IO讀寫)、INTA、ALE、DEN、DT/R(中斷應答/地址鎖存等)(2)提供慢速存儲器讀/寫控制信號AMWC和AIOWC;(3)產生簡單/級聯(lián)中斷控制信號MCE/PDEN等;(4)可使總線浮空,允許DMA操作。第2章80x86/Pentium微處理器
南京航空航天大學電子信息工程學院圖2-578088多CPU模式系統(tǒng)結構第2章80x86/Pentium微處理器2.以8086為核心構成的多CPU系統(tǒng)第2章80x86/Pentium微處理器2.5CPU的工作模式
80x86/PentiumCPU共有多種工作模式:
8086/8088工作于實地址模式;
80286工作于實地址模式、保護模式;
80386~80486可工作于實地址模式、保護模式和虛擬8086模式;
Pentium及其以上的CPU可以工作在全部4種模式下。實地址模式、保護模式、虛擬8086模式和系統(tǒng)管理模式。2.5.1實地址模式(最基本的工作方式)實地址模式:將8086/8088的工作模式稱為實地址模式。在實地址模式下——任何CPU地址線中只有低20位起作用,即:能尋址的物理存儲空間為1MB。存儲器的管理方式與8086/8088CPU存儲器的管理方式相同。系統(tǒng)復位時,進入實地址模式。
南京航空航天大學電子信息工程學院第2章80x86/Pentium微處理器2.5.2保護模式保護模式:一種建立在虛擬存儲器和保護機制基礎上的工作模式.在保護模式下——
可最大限度地發(fā)揮CPU的存儲管理功能:
80286可直接尋址224=16MB,可使用1024MB(1GB)虛擬內存;
80386及以上CPU可直接尋址232=4GB,可使用64TB虛擬內存;為多用戶多任務的保護機制提供硬件支持:任務之間完全隔離(給每個任務分配不同的虛擬地址空間);任務內部的保護機制(保護操作系統(tǒng)存儲空間及特別的寄存器,使其不被其他應用程序破壞)。通過設立0~3級4個特權級,實現(xiàn)應用程序之間、應用程序與操作系統(tǒng)之間的隔離:0級(最高),分配給操作系統(tǒng)內核;
1級,操作系統(tǒng)的系統(tǒng)服務程序;
2級,應用系統(tǒng)服務程序;
3級(最低),分配給應用程序。保護模式與實地址模式之間可以相互切換存儲暫不執(zhí)行的程序和數據第2章80x86/Pentium微處理器
局部地址空間:指每個任務各自占有的虛擬地址空間。
局部地址空間內的代碼和數據是任務私有的,需要和系統(tǒng)中的其他任務相隔離。全局地址空間:各任務共用的一部分虛擬地址空間。操作系統(tǒng)存儲在全局地址空間中。全局地址空間可以被所有任務共享,而且任務對全局地址空間的訪問不會破壞其內容。
保護模式下的虛擬地址空間被分為全局地址空間和局部地址空間
南京航空航天大學電子信息工程學院2.5.3虛擬8086模式(一種特殊的保護模式)
虛擬8086模式:CPU工作在保護模式,但對邏輯地址的解釋是按照8086/8088的方式。在虛擬8086模式,CPU不僅可以執(zhí)行8086/8088的程序,而且支持多個8086/8088實模式程序的運行,其實質是為運行于32位微處理器上的8086程序提供獨立的虛擬機。第2章80x86/Pentium微處理器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 親子讀書心得體會15篇
- 中學生物教研組工作總結
- 中隊委競選演講稿模板集錦9篇
- 中國醫(yī)師節(jié)致辭范文(6篇)
- 中醫(yī)院經濟管理經驗匯報材料-學習材料范文
- 應急值守課件教學課件
- 影像科緊急搶救預案及流程(修)
- 影響-“小組合作學習”實效性的因素及對策
- 機動車安全技術檢測儀器設備計算機控制與通信技術條件 編制說明
- wipo-文本和圖像作品的集體管理
- 慢性傷口的綜合處理課件
- 《人民幣硬幣和普通紀念幣》理論考試題庫(含答案)
- RoseMirrorHA安裝維護手冊
- 城市軌道交通牽引供電及電力技術分析
- 提高外墻干掛石材施工一次合格率QC成果Word版
- 建筑行業(yè)會計基本處理課件
- 超星爾雅學習通走近核科學技術章節(jié)測試答案
- 初中藝術鄂教七年級上冊(2022年新編) 漫步藝術長廊舞劇欣賞《永不消逝的電波》教學設計
- python學習課件(共73張PPT)
- 中考數學復習專題課件:瓜豆原理之直線型
- 精品堆垛機安裝指導書
評論
0/150
提交評論