微機原理第三章_第1頁
微機原理第三章_第2頁
微機原理第三章_第3頁
微機原理第三章_第4頁
微機原理第三章_第5頁
已閱讀5頁,還剩78頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2.1 8086/8088 CPU 內部結構 2.2 8086/8088 CPU 引腳及功能2.3 8086/8088 CPU 系統(tǒng)組織 2.4 8086/8088 CPU 時序2.5 80X86/Pentium 微處理器2 2.1.1 CPU .1.1 CPU 結構與特點結構與特點一、一、 8086/8088 CPU結構結構EU :執(zhí)行部件(8086/8088)BIU:總線接口部件(8086的不同于8088的)由兩部分組成8086 BIU:指令隊列6個字節(jié), 外部數據總線16位。8088 BIU:指令隊列4個字節(jié), 外部數據總線8位。EU:執(zhí)行指令.BIU:取指、讀操作數、 寫結果.兩部分相

2、互獨立 在大多數情況下,取指、執(zhí)指的操作并行。這消除了許多取在大多數情況下,取指、執(zhí)指的操作并行。這消除了許多取指時間,從而提高了系統(tǒng)總線的使用效率,改善了系統(tǒng)性能。指時間,從而提高了系統(tǒng)總線的使用效率,改善了系統(tǒng)性能。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器自1971年INTEL 4004問世以來,微處理器的發(fā)展速度驚人。2.1 8086/8088 CPU內部結構CHDHDISPBPSI65標志 FR3EU控制系統(tǒng)運算寄存器ALU1 24DSSSES總線控制邏輯IPCS內部RegBHAHDLCLALBL地址總線20位地址加法 數據總線外部總線

3、指令隊列通用寄存器ALU數據總線80888086AXBXCXDX第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器負責全部指令的執(zhí)行;向BIU輸出(地址及結果)數據;對Reg及PSW進行管理。(2)功能1. EU( Execution Unit,含有含有ALU及部分及部分Reg.) 數據寄存器:AX,BX,CX,DX (16位) 8個通用寄存器 變址寄存器:SI,DI 算術邏輯運算部件ALU 16 位加法器,用于對寄存器和指令操作數進行算術或邏輯運算位加法器,用于對寄存器和指令操作數進行算術或邏輯運算. 標志寄存器PSW 9個標志位,其中個標志位,其中6

4、個條件標志位用于存放結果狀態(tài)個條件標志位用于存放結果狀態(tài). 運算寄存器 EU控制系統(tǒng)(1)組成AH,AL,BH,BL,CH,CL,DH,DL(8位)指示器: SP,BP接收接收從從BIU的的指令隊列中取來的指令代碼指令隊列中取來的指令代碼,譯碼并向譯碼并向 EU 內各有關部分內各有關部分發(fā)出時序命令信號發(fā)出時序命令信號,協(xié)調執(zhí)行指令規(guī)定的操作協(xié)調執(zhí)行指令規(guī)定的操作。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器2. BIU (Bus Interface Unit,8086/8088同外部設備的接口部件)同外部設備的接口部件)完成所有外部總線的操作,提

5、供總線控制信號。具體地說,完成: 取指、指令排隊、讀寫操作數、地址轉換(將兩取指、指令排隊、讀寫操作數、地址轉換(將兩個個16位地址相加位地址相加 20位物理地址),總線控制。位物理地址),總線控制。代碼段Reg:CS 堆棧段Reg:SS 數據段Reg:DS 附加段Reg:ES (1)組成 指令指針寄存器IP(下一條要取的指令在當前代 碼段內的偏移量)4個段寄存器 指令隊列Queue 20位地址加法器 總線控制邏輯 內部通信寄存器 (2)功能第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器(3)指令隊列 BIU使用指令隊列實現流水線操作。 當指令隊列中

6、有2個或2個(1個)以上的字節(jié)空間,且EU未申請讀寫存儲器,則BIU順序預取后續(xù)指令代碼 Queue。 (1)若是運算操作:操作數 暫存器 ALU; 運算結果 經“ALU總線” 相應Reg、 并置PSW 。 (2)若從外設取數:EU BIU 訪問MEM 或 I/O 內部通信寄存器 向“ALU數據總線”傳 送 數據。3. EU的工作過程的工作過程從BIU指令隊列中取指 譯碼電路分析 相應控制命令 控制數據經過“ALU數據總線”的流向:第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器字長字長:16位 / 準16位。時鐘頻率時鐘頻率:8086/8088標準主

7、頻為5MHz,8086/8088-2主頻為8MHz。數據、地址總線復用數據、地址總線復用。最大內存容量最大內存容量:1MB?;緦ぶ贩绞交緦ぶ贩绞剑?種。指令系統(tǒng)指令系統(tǒng):99條基本匯編指令。 可以對位、字節(jié)、字、字節(jié)串、字串、壓縮和非壓縮BCD 碼等多種數據類型進行處理。端口地址端口地址:16位I/O端口地址可尋址64K端口地址。 每一個地址對應一個字節(jié)寬的每一個地址對應一個字節(jié)寬的I/OI/O端口。端口。中斷功能中斷功能:可處理內部軟件中斷和外部硬件中斷源達256個。支持單片支持單片CPUCPU或多片或多片CPUCPU系統(tǒng)工作系統(tǒng)工作。二、二、 特點特點1. 8086/8088 CPU

8、主要性能第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 通常情況下,IP中包含下一條要取出的指令在當前代碼段內的偏移地址。所以,只要是順序執(zhí)行,隊列機構中的指令就是緊接在當前執(zhí)行指令后的邏輯上的指令。 如果如果EU執(zhí)行轉移指令,則執(zhí)行轉移指令,則BIU清除隊列機構,從新地址取出清除隊列機構,從新地址取出指令,并立即送指令,并立即送EU執(zhí)行。然后,從后續(xù)的指令序列中取指令填滿執(zhí)行。然后,從后續(xù)的指令序列中取指令填滿隊列。隊列。2. 特點取指取指取指取指取指取指取指取指得到數據得到數據等待等待執(zhí)行執(zhí)行執(zhí)行執(zhí)行執(zhí)行執(zhí)行執(zhí)行執(zhí)行(1)取指執(zhí)指重疊并行 在一條

9、指令的執(zhí)行過程中可以取出下一條(或多條)指令,在一條指令的執(zhí)行過程中可以取出下一條(或多條)指令,指令在指令隊列中排隊(指令在指令隊列中排隊(預取下一條指令的技術稱指令流水線)預取下一條指令的技術稱指令流水線); 在一條指令執(zhí)行完成后,就可以立即執(zhí)行下一條指令,減少CPU為取指令而等待的時間,提高CPU的利用率和整個運行速度。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器( i )存儲器空間 20根地址線 220 = 1M Byte(2)存儲器分段與段寄存器 8086/8088率先打破微處理器只能訪問率先打破微處理器只能訪問64KB存儲空間的限存儲空

10、間的限制,可尋址制,可尋址1MB。 0000000000H H FFFFFHFFFFFH A19地地 址址A010 010111001011010101972D5H 將存儲器分成將存儲器分成4 4種段,存放三類信息:種段,存放三類信息: 代碼、數據、中間結果和斷點地址。代碼、數據、中間結果和斷點地址。972D5H 12H段(972D5H)=12H第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器分段原因分段原因:8086有有20根地址線,但根地址線,但其內部可以表示的地址其內部可以表示的地址最多只能是最多只能是16位。位。為了能尋址為了能尋址1MB空間,

11、空間,8086對存儲器進行邏輯對存儲器進行邏輯分段,分段,每個段最大為每個段最大為64KB,最小為最小為16B(此此時最多時最多64K個段)。個段)。+物理地址=段址10H+偏址段址段址 段寄存器段寄存器 CSCS、DSDS、ESES、SS SS 1616偏址偏址 1616指令地址指令地址 (CS)10H +(IP)數據地址數據地址 (DS)10H + EA(偏移地址也稱為有效地址偏移地址也稱為有效地址EA,出現在指令中出現在指令中)堆棧地址堆棧地址(SS)10H +(SP)附加段地址附加段地址(ES)10H + EA( ii )4個段寄存器CS、 DS 、SS 、ES 分別指示存儲區(qū)的段地址

12、(段起始地址的高16位,段起始地址又稱為段基地址),用來用來識別當前可尋址的四個段,不可互換使用識別當前可尋址的四個段,不可互換使用。 ( iii )存儲單元的邏輯地址和物理地址邏輯地址邏輯地址 段地址 0000HFFFFH(由段寄存器提供由段寄存器提供 ) 偏移地址 段內某個單元到段基地址的距離 (0000HFFFFH,由指令提供由指令提供 )CPU訪問存儲器時,送出訪問存儲器時,送出00000HFFFFFH間的一個間的一個20位的物理地址。位的物理地址。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器段基址段基址0 0 0 00 0 0 03 2

13、1 03 2 1 015 015 0偏移地址偏移地址基址加法器基址加法器物理地址物理地址0 015150 01919 物理地址的形成物理地址的形成.2000020000H H2525F60HF60H2525F61HF61H2525F62HF62H2525F63HF63H20002000H H段基址段基址邏邏輯輯地地址址段內偏移地址段內偏移地址5 5F62HF62H邏輯地址與物理地址邏輯地址與物理地址物理地址與邏輯地址的關系如下圖:第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器段缺省和段替換規(guī)則段缺省和段替換規(guī)則(CPU對段訪問時應遵循這個原則)對段訪

14、問時應遵循這個原則) : 段缺?。憾稳笔。憾渭拇嫫髅怀霈F在指令和機器碼中,CPU對存儲器的操作性質隱含指定; 搭配規(guī)則:搭配規(guī)則:段寄存器和寄存器(指針、變址)有較固定的配用關系; 替換(超越)規(guī)則:替換(超越)規(guī)則:在指令之前可加上“CS”,”DS”,”SS”等前綴,以指定的段寄存器替代隱含的段寄存器。(ES) 16d+(DI)DI無ES目標字符串(DS) 16d+(SI)SICS,ES,SSDS源字符串(DS )16d+EA有效地址EACS,ES,SSDS存取變量(SS) 16d+EA有效地址EACS,DS,ESSSBP間址(SS) 16d+(SP)SP無SS堆棧操作(CS)16d+(I

15、P)IP無CS取指令物理地址計算偏移地址可替換段寄存器正常使用(隱含)段寄存器操作類型第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器代碼段代碼段數據段數據段堆棧段堆棧段CSCSIPIPDSDSSI,DI或BXSI,DI或BXSSSSSP或BPSP或BP段寄存器和其他寄存器組合指向存儲單元示意圖段寄存器和其他寄存器組合指向存儲單元示意圖第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 (iv)存儲器分段的一般規(guī)律: a. 可獨立分開(最大不重疊16個段) b. 連續(xù) c. 重疊(部分重疊或完全重疊) 如:數據段

16、和附加段完全重疊,堆棧段和附加段部分重疊。 因此對一個具體的存儲單元,可以屬于一個邏輯段, 也可以同時屬于幾個邏輯段。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器(3)部分管腳功能雙重定義以適用多處理器控制寄存器控制寄存器8位寄存器位寄存器 IP FLAG CS DS SS ES 代碼段寄存器代碼段寄存器 數據段寄存器數據段寄存器 堆棧段寄存器堆棧段寄存器 附加段寄存器附加段寄存器 AH AL BH BL CH CL DH DL AX BX CX DX SP BP SI DI 累加器累加器 基地址寄存器基地址寄存器 計數器計數器 數據寄存器數據寄存

17、器 堆棧指針寄存器堆棧指針寄存器 基地址寄存器基地址寄存器 源變址寄存器源變址寄存器 目的變址寄存器目的變址寄存器 (PC) 指令指針寄存器指令指針寄存器(PSW) 狀態(tài)標志寄存器狀態(tài)標志寄存器 段寄存器段寄存器16位寄存器位寄存器通用寄存器通用寄存器寄存器組(寄存器組(Register Set) 2.1.2 2.1.2 寄存器的配置寄存器的配置第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 (1)用途:存放8位或16位操作數或中間結果, 以提高CPU的 運算速度(減少存取MEM的時間) 其中,AX是CPU使用最多的一個寄存器,功能最強。 AX的作用

18、: i )ALU之前保存一個操作數,ALU之后保存結果 。 ii)CPU與 I/O、MEM交換數據所用到的最多的寄存器。 (前者對算術運算,后者對 I/O 操作)第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器一、通用一、通用Reg.Reg. (分為兩組:一組可用于字、字節(jié); 另一組僅可用于字)1. 數據Reg.(AX,BX,CX,DX) (2)特殊用法: i )BX 計算地址用作基址Reg. ii)CX 計數器,循環(huán)或移位時用。 )DX 在某些 I/O 操作時,用來保存I/O端口地址, 或字的乘除法運算。2. 指示器和變址Reg.(SP,BP,SI,

19、DI,僅能用于字)用途: a. 縮短指令代碼的長度; b.建立可變的地址; c.寄存偏移量,與段寄存器的內容相加以獲得物理地址。 例:SP中通常存放的偏移量被認為是在堆棧段中(堆棧訪問時)。 DI、SI中的偏移量,通常被認為是在數據段中。 BP通常用于存放當前堆棧段的一個數據區(qū)“基址”的偏移量。 (通過堆棧傳送數據或地址時,BP為偏移地址,SS中為段地址。) BP也可用于通用Reg.。SP 堆棧指針BP 基地址指針SI 源變址寄存器DI 目的變址寄存器指針寄存器變址寄存器第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器通用寄存器的特殊用法通用寄存器的特

20、殊用法(默認用法默認用法)寄存器寄存器特特 殊殊 用用 法法AXAX,ALAL乘法乘法/ /除法指令,作累加器;除法指令,作累加器;I/OI/O操作時,作數據寄存器操作時,作數據寄存器AHAH在在LAHFLAHF指令中用作目的寄存器指令中用作目的寄存器(AH)AH)標志標志) )ALAL在在BCDBCD碼及碼及ASCIIASCII碼運算指令中作為累加器;碼運算指令中作為累加器;在在XLATXLAT指令中作為累加器(指令中作為累加器(ALAL)(AL)(AL)(BXBX)) )BXBX在間接尋址中作為基址寄存器和變址寄存器在間接尋址中作為基址寄存器和變址寄存器CXCX在循環(huán)程序中,作循環(huán)次數計數

21、器在循環(huán)程序中,作循環(huán)次數計數器CLCL在移位和循環(huán)移位指令中,作為移位位數和循環(huán)移位次數的計數寄在移位和循環(huán)移位指令中,作為移位位數和循環(huán)移位次數的計數寄存器存器DXDXI/OI/O指令間接尋址時,作為地址寄存器;在乘法指令中作為輔助累加指令間接尋址時,作為地址寄存器;在乘法指令中作為輔助累加器(當乘積或被除數為器(當乘積或被除數為3232位時,存放高位時,存放高1616位數)位數)BPBP在間接尋址中,作為基址寄存器在間接尋址中,作為基址寄存器SPSP在堆棧操作中,作為堆棧指針在堆棧操作中,作為堆棧指針SISI間接尋址時,作為地址寄存器或變址寄存器;在串操作指令中作為間接尋址時,作為地址寄

22、存器或變址寄存器;在串操作指令中作為源變址寄存器源變址寄存器DIDI在間接尋址時,作為地址寄存器或變址寄存器;在串操作指令中作在間接尋址時,作為地址寄存器或變址寄存器;在串操作指令中作為目的變址寄存器為目的變址寄存器 其中總是包含下一條要取的指令在當前代碼段中的偏移量,即程序運行過程中,程序運行過程中,IP始終指向下一次要取出的指始終指向下一次要取出的指令偏移地址?;蚍Q令偏移地址?;蚍QIP和和CS一起指向下一條指令的物理地址。一起指向下一條指令的物理地址。 第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器二、二、段段Reg.(CS,DS,SS,ES)C

23、S內容+IP內容,為下一條指令的地址。DS內容+指令中的偏移量,為數據段內的某單元地址。SS內容+SP 為堆棧段內的某單元地址。ES 附加段的段地址。三、三、指令指針指令指針I(yè)P (用來存儲代碼段中的偏移地址)用來存儲代碼段中的偏移地址) IP的內容由8086/8088的總線接口部件BIU修改(編程序時不能直接訪問IP,但指令可引起它的改變、或將它的內容壓入堆棧、或從堆棧恢復)。 物理地址物理地址= =CS CS 16 16IPIP 四、標志寄存器四、標志寄存器FR 作用:作用:存放ALU的操作結果的特征標志,這種標志可作為條 件,用于判斷是否控制程序轉移。第第2 2章章 80 80X86/P

24、entium X86/Pentium 微處理器微處理器狀態(tài)標志寄存器(狀態(tài)標志寄存器(PSW)CFPFAFZFSFTFIFDFOF進位標志進位標志CF(Carry Flag):):當結果的最高位(D15 或D7)產生一個進位 或借位,則CF=1,否則CF=0。溢出標志溢出標志OF(Overflow Flag):):當帶符號數的運算結果超出2n-1 2n-11 時,溢出,OF=1,否則OF=0。 符號標志符號標志SF(Sign Flag):): 結果的最高位(D15 或D7)為1,則SF=1,否 則 SF=0。零標志零標志ZF(Zero Flag):): 若運算的結果為0,則ZF=1,否則ZF=

25、0。奇偶標志奇偶標志PF(Parity Flag):):若運算結果的低8位中1的個數為偶數,則 PF=1,否則,PF=0。輔助進位標志輔助進位標志AF(Auxiliary Flag):在進行8位或16位數運算時,由低4位向 高4位(D3向D4)有進位或借位,則AF=1,否則AF=0。狀狀態(tài)態(tài)標標志志控控制制標標志志方向標志方向標志DF(Direction Flag):): DF=1 ,串操作時地址自動減量; DF=0,串操作時地址自動增量。中斷允許標志中斷允許標志IF(Interrupt Enable Flag):):IF=1,允許CPU接收外部中斷 請求,IF=0,屏蔽外部中斷請求。追蹤標志

26、追蹤標志TF(Trace Flag):): TF=1,使處理進入單步方式,以便于調試。 四、標志寄存器四、標志寄存器FR 第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器狀態(tài)標志寄存器(狀態(tài)標志寄存器(PSW)CFPFAFZFSFTFIFDFOFu反映指令對數據作用之后,結果的狀態(tài)(不是結果本身)。反映指令對數據作用之后,結果的狀態(tài)(不是結果本身)。這些狀態(tài)將控制后續(xù)指令的執(zhí)行這些狀態(tài)將控制后續(xù)指令的執(zhí)行u有些運算操作將影響全部狀態(tài)標志,如加法、減法運算有些運算操作將影響全部狀態(tài)標志,如加法、減法運算u有些操作影響部分狀態(tài)標志,如移位操作有些操作影響部

27、分狀態(tài)標志,如移位操作u有些指令的操作不影響任何狀態(tài)標志,如數據傳送指令有些指令的操作不影響任何狀態(tài)標志,如數據傳送指令第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器例例1:執(zhí)行:執(zhí)行2345H3219H,分析對分析對PSW的影響。的影響。1 10 00 00 01 11 10 01 10 00 00 01 10 01 10 00 00 00 01 11 10 00 01 10 00 00 00 01 11 10 00 01 1+ +0 01 11 11 11 10 01 10 01 10 01 10 01 10 01 10 0標志標志: 運算結果最

28、高位為運算結果最高位為0 SF=0; 運算結果本身運算結果本身0 ZF=0 低低8位中位中1的個數為奇數個的個數為奇數個 PF=0; 最高位沒有進位最高位沒有進位 CF=0; 第第3位向第位向第4位無進位位無進位 AF=0; 次高位向最高位沒有進位次高位向最高位沒有進位 ,最高位向前沒有進位,最高位向前沒有進位 OF=0。例例2:執(zhí)行:執(zhí)行2345H3219H,分析對分析對PSW的影響。的影響。1 10 00 00 01 11 10 01 10 00 00 01 10 01 10 00 01 11 10 00 01 11 10 01 11 11 11 10 00 01 11 11 1+ +0

29、00 01 11 10 01 10 00 01 10 00 00 01 11 11 11 1標志標志: F12CH 補補 = -0ED4H 運算結果最高位為運算結果最高位為1 SF=1; 運算結果本身運算結果本身0 ZF=0 低低8位中位中1的個數為奇數個的個數為奇數個 PF=0; 最高位沒有進位(最高位沒有進位(無進位,有借位無進位,有借位) CF=1; 第三位向第四位無進位(第三位向第四位無進位(無進位,有借位無進位,有借位 ) AF=1; 次高位向最高位沒有進位次高位向最高位沒有進位 ,最高位向前沒有進位,最高位向前沒有進位 OF=0。第第2 2章章 80 80X86/Pentium X

30、86/Pentium 微處理器微處理器 8086/8088 均為40 PIN 、雙列直插式(DIP)封裝的芯片。 其功能強于8位CPU。為解決功能強與引腳的矛盾,在8086/8088 CPU內部設置了若干個多路開關,使某些引腳具有多種功能。 多功能引腳功能的轉換分兩種情況 分時復用:在總線周期的不同時鐘周期內其功能不同; 按工作模式來定義引腳的功能:同一引腳在單CPU(最 小模式)和多CPU(最大模式)下,加接不同的信號。2.2 8086/80882.2 8086/8088引腳功能引腳功能第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器2.2.1 80

31、882.2.1 8088引腳功能引腳功能 地址/數據線20根 控制和狀態(tài)線16根 定時信號線1根 電源和地線3根40PIN按功能分:每個信號方向(單、雙)電平(三態(tài)、二態(tài))第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器最 小 模 式最 小 模 式 :系 統(tǒng) 中 只 有8086/8088一個微處理器,系統(tǒng)中的所有總線控制信號都直接由8086/8088產生,因此整個系統(tǒng)中的控制線路最簡單。最大模式:最大模式:系統(tǒng)中含有兩個或兩個以上微處理器,其中一個就是8086/8088為主處理器,其它都是協(xié)處理器。 如:數值運算協(xié)處理器8087 輸入輸出協(xié)處理器808

32、9。引腳引腳33 MN/MX決定工作模式決定工作模式: 接+5V, 最小模式 接地,最大模式 (括號內引腳) 12345678910VccAD15A16/S3A17/S4A18/S5GNDA14A13A12A114039383736A19/S6SS0MN/MXRDHOLD (RQ/GT0)A10A9A8AD7AD6HLDA (RQ/GT1)WR (LOCK)IO/M (S2)DT/R (S1)DEN (S0)AD5AD4AD3AD2AD1ALE (QS0)INTA (QS1)TESTREADYRESETAD0NMIINTRCLKGND353433323130292827261112131415

33、252423222116171819208088補充:補充: 指令周期 一條指令從取出到執(zhí)行完畢所持續(xù)的時間。 機器周期 CPU完成某個獨立操作所需要的時間(取指, 存儲器讀、寫)。 第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器時鐘周期 CPU的基本時間計量單位,由P的主頻決定。 例:主頻5MHz,則T=200ns 一個指令周期由若干個機器周期構成。在8086/8088 中,機器周期稱為總線周期。一個基本總線周期由4個時鐘周期 T 構成,稱為T1、T2、T3和T4。T1:CPU經多路復用總線發(fā)地址信息,指出尋址單元或端口地址。 T2:CPU從總線上

34、撤消地址,成浮空狀態(tài)(16位),而A19A16 用來輸出本總線周期狀態(tài)信息。 T3:連續(xù)提供狀態(tài)信息,傳送數據。T4:結束狀態(tài)。ADAD7 7ADAD0 0: 地址/數據總線,雙向(入/出)、三態(tài)。分時復用多功能引腳。在每個總線周期T1,作地址總線低8位 A7A0,用于尋址存儲器或I/O端口。 之后,內部多路轉換開關數據總線D7D0,用來傳送數據,直到總線周期結束。 在DMA方式時,這些引腳成浮空狀態(tài)。 8088引腳圖見右引腳圖見右第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器12345678910VccAD15A16/S3A17/S4A18/S5G

35、NDA14A13A12A114039383736A19/S6SS0MN/MXRDHOLD (RQ/GT0)A10A9A8AD7AD6HLDA (RQ/GT1)WR (LOCK)IO/M (S2)DT/R (S1)DEN (S0)AD5AD4AD3AD2AD1ALE (QS0)INTA (QS1)TESTREADYRESETAD0NMIINTRCLKGND353433323130292827261112131415252423222116171819208088 A8A15:地址總線,輸出、三態(tài)。這些地址在整個總線周期 內保持有效(即輸出穩(wěn)定8位地址)。 在DMA方式時,這些引腳成浮空狀態(tài)。 A

36、19/S6A16/S3:地址/狀態(tài)線,輸出、三態(tài)。分時復用多功能引 腳。 在T1狀態(tài),若訪問MEM,作地址總線高4位。 若訪問I/O口,全為低電平。因為 I/O口只用16位地址。 在T2T4期間,輸出狀態(tài)信息: S6總是低電平,表示8086/8088連在總線上; S5可屏蔽中斷允許標志; S4和S3表示當前訪問存儲器所用的段寄存器, S4和S3編碼與段寄存器對應關系如表2-2所示。 在DMA方式時,這些引腳成浮空狀態(tài)。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器地址線地址線A19A0,1M內存;地址線內存;地址線A15A0,64K個端口地址。個端口

37、地址。表2-2 S4,S3編碼表示段寄存器S4 S3性能性能對應段寄存器對應段寄存器0 0數據交換使用附加段寄存器ES0 1堆棧操作使用堆棧段寄存器SS1 0代 碼使用代碼段寄存器CS1 1數 據使用數據段寄存器DS第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器ALE:地址鎖存允許信號,輸出,高電平有效。 地址鎖存進鎖存器地址鎖存進鎖存器(8282/8283,74LS373)的鎖存控制信號的鎖存控制信號。 在T1期間,ALE高電平,其下跳沿將使地址鎖存入鎖存器。

38、 在DMA方式中,ALE不能浮空。 CPU在每條指令的最后一個時鐘周期對INTR采樣,若INTR引腳信號為高電平,同時CPU內部IF=1時,CPU就進入了中斷響應周期。 若IF=0,即使有INTR引腳信號為高,CPU對此中斷請求信號不予理睬。因此可以通過軟件的方法使IF=0,以達到屏蔽中斷請求INTR的目的。入口地址中斷子程序斷點INTR:可屏蔽中斷請求,輸入、高電平有效。 CPU響應中斷時,暫停正在執(zhí)行的主程序,從響應中斷時,暫停正在執(zhí)行的主程序,從中斷源取出中斷類型向量,根據中斷類型向量,中斷源取出中斷類型向量,根據中斷類型向量,從中斷向量表里找到相應中斷服務子程序的入從中斷向量表里找到相

39、應中斷服務子程序的入口地址,轉去執(zhí)行中斷服務程序。中斷結束后,口地址,轉去執(zhí)行中斷服務程序。中斷結束后,再返回斷點繼續(xù)執(zhí)行主程序。再返回斷點繼續(xù)執(zhí)行主程序。INTA:中斷響應信號,輸出,低電平有效。 CPU響應外部中斷后,發(fā)應答信號給請求中斷的設備。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 NMI: 非屏蔽中斷請求,輸入,上升沿有效。 NMI 不能用軟件進行屏蔽。 只要該引腳上出現一個從低到高的電脈沖就能使CPU當前 指令結束,立刻進入中斷響應,自動形成中斷類型2,將中斷向 量表中的08H和09H單元的內容送指令寄存器IP,將0AH和0BH 單

40、元內容送入段寄存器CS,形成非屏蔽中斷服務子程序入口地 址,轉去執(zhí)行NMI中斷處理。CLK:時鐘信號,輸入。為CPU和總線控制器提供定時基準定時基準。 占空比0.33(1/3周期高電平,2/3周期低電平)。 RESET:復位信號,輸入,高電平有效。至少保持4個時鐘周期。 當主頻為4.77MHz時,上電復位時必須大于50s。 復位時,復位時,CPU各個寄存器的狀態(tài)見各個寄存器的狀態(tài)見P43(表表2 -3)。 可見,CSFFFFH,IP0000H,復位后,CPU從FFFF0H單元開始執(zhí)行。 通常在FFFF0HFFFFFH這16個單元中存放轉移指令。 READY: 準備好信號,輸入,高電平有效。 是

41、被訪問的被訪問的MEM和和I/O設備數據準備好設備數據準備好發(fā)回來的應答 信號。 當被訪問部件無法在CPU規(guī)定的時間內完成數據傳送時,應 使READY信號處于低電平低電平,這時CPU進入等待狀態(tài),插入一個或 幾個等待周期TW來延長總線周期。 第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 當被訪問的部件可以完成數據傳送時,READY輸入高電平高電平,CPU繼續(xù)運行。復位后復位后CPU內部內部內內 容容標志位清除指令指針(IP)0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES 寄存器0000H指令隊列空表2-3 初始化操作第第

42、2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 DEN:數據允許,輸出,三態(tài),低電平有效。 在單CPU系統(tǒng)中,用DEN作為數據總線雙向驅動器的選通信號。 在每個MEM或I/O訪問周期以及中斷響應周期,DEN為低電平。 在 DMA方式時,它處于浮空狀態(tài)。 第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 TESTTEST:測試信號,輸入,低電平有效。 當執(zhí)行WAIT指令時,CPU對TEST進行監(jiān)視(每隔5個T采樣一次TEST ,若TEST為高,就使CPU重復執(zhí)行WAIT指令而處于等待狀態(tài)。若TEST為低,CPU則脫

43、離等待狀態(tài),繼續(xù)執(zhí)行下一條指令。(常用于多常用于多CPU系統(tǒng)系統(tǒng)) DT/R:數據發(fā)送/接收控制,輸出,三態(tài)。 在單CPU系統(tǒng)中,用DT/R來控制數據總線雙向驅動器的數據 傳送方向: DT/R=1時,CPU發(fā)送數據,DT/R=0時,CPU接收數據。 IO/MIO/M:外設/內存訪問控制,輸出,三態(tài)。 輸出高電平高電平時,表示總線周期為I/OI/O訪問周期; 輸出低電平低電平時,表示總線周期為MEMMEM訪問周期。 在DMA工作方式時,它為浮空狀態(tài)。 WR:寫信號,輸出,三態(tài),低電平有效低電平有效。 WR信號有效時,表示CPU正做寫MEM(或I/O口)的操作。 由IO/M的狀態(tài)決定是寫MEM(I

44、O/M=0), 還是寫入I/O(IO/M=1) . 在DMA方式時,它處于浮空狀態(tài)。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 RD:讀信號,輸出,三態(tài),低電平有效低電平有效。 RD信號有效時,由IO/M決定是對I/0讀(IO/M=1),還是對 MEM(IO/M=0)讀。 IO/MIO/M、 WR 、RD三者決定了三者決定了CPU訪問訪問MEM或或I/O的方式的方式配合的引腳還有配合的引腳還有DT/R HOLD:保持請求信號,輸入,高電平有效。 當DMA操作或外部處理器要求通過總線傳送數據時, HOLD信號為高,表示外界請求主CPU讓出對總線的控

45、制權。 HLDA:保持響應信號,輸出,高電平有效。 當CPU同意讓出總線控制權時,輸出HLDA高電平信號, 通知外界可以使用總線。同時,現有主CPU所有具“三態(tài)”的 線,都進入浮空狀態(tài); 當HOLD變?yōu)榈碗娖綍r,主CPU也把HLDA變?yōu)榈?電平,此時它又重新獲得總線控制權。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器HOLDHLDA MEM CPU I/O DMASSSS0 0:狀態(tài)信號,輸出,三態(tài)。 用在單CPU系統(tǒng)中,與IO/M、DT/R一起表示當前的系統(tǒng)總 線周期狀態(tài),如表2-4所示。 在多在多CPUCPU系統(tǒng)下,系統(tǒng)下,SSSS0 0總是輸

46、出高電平。總是輸出高電平。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器IO/MDT/RSS0操作111100000011001101010101中斷響應讀IO/口寫I/O口暫停取指令讀存儲器寫存貯器無效表2-4 MN/MX:單CPU/多CPU方式控制,輸入。 當MN/MX=1(接VCC)時,單CPU模式(最小模式) , 8088的2431引腳功能如上面所述如上面所述; 若MN/MX=0(接GND),多CPU模式(最大模式), 8088的2431引腳定義如圖2-9括號內所示。 以下介紹多以下介紹多CPUCPU模式(最大模式)下引腳的功能。模式(最大模

47、式)下引腳的功能。(通常(通常PC/XTPC/XT中有中有80878087,故設為多,故設為多CPUCPU模式)模式) S2、S1、S0:總線周期狀態(tài)標志,輸出、三態(tài),低電平有效。 它們的不同組合,表示它們的不同組合,表示CPU總線周期的操作類型??偩€周期的操作類型。 此組信號 8288總線控制器對應輸入端,8288利用 這些信號的不同組合,產生訪問MEM或I/O的控制信號或 中斷響應信號。(見見P45 表表2-5)第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器表2-5 總線周期狀態(tài)標志S2S1S0操作類型0000111100110011010101

48、01中斷響應讀I/O口寫I/O口暫停取指令操作碼讀存儲器寫存儲器無效狀態(tài)第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器RQ/GT0,:請求/允許控制信號,雙向、三態(tài)、低電平有效。 RQ/GT1 供外部主控設備(如協(xié)處理器)用來請求獲得總線 控制權。 首先由外部主控設備向8088輸入請求總線控制權的 信號(HOLD),若8088可以讓出控制權,則在同一條線上 輸出允許外部主控設備使用總線的回答信號(HLDA)。 兩條控制線可同時接兩個外部主控設備,但 RQ/GT0的優(yōu)先權 RQ/GT1的優(yōu)先權 。 工作時序圖見書P45,圖2-10。第第2 2章章 80

49、 80X86/Pentium X86/Pentium 微處理器微處理器LOCK:封鎖信號,輸出,三態(tài),低電平有效。 用來封鎖外部主控設備請求的。 當LOCK信號為低時,外部主控設備不能占用總線。 這個信號由指令在程序中設置。若某條指令加上前綴 LOCK,則CPU執(zhí)行這條指令時,LOCK引腳為低,并保持 到指令結束。 QS1、QS0:指令隊列狀態(tài),輸出,高電平有效。 QS1和QS0的編碼反映了CPU內部當前的指令隊列狀態(tài), 以便外部主控設備對8088進行跟蹤。見表2-6。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器表2-6 指令隊列狀態(tài)QS1 QS0

50、意 義0 0無操作0 1取指令隊列中第一操作碼1 0隊列空1 1取指令隊列中后續(xù)字節(jié)2.2.2 80862.2.2 8086引腳功能引腳功能第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器與8088引腳功能的區(qū)別: 1. 8086:16條地址/數據復用 引腳AD15AD0。 8088:只有AD7AD0 BHE、 A0組合編碼與數據總線傳送數據的關系如下表所示。 對8086,用BHE作為訪問存儲器高字節(jié)的選通信號, 用A0作為訪問存儲器低字節(jié)的選通信號。2. 8086的PIN34:BHE/S7 8088中為 SS0 PIN34是高是高8位數據總線的允許位

51、數據總線的允許和狀態(tài)信息復用引腳。和狀態(tài)信息復用引腳。BHE A0數據傳送狀態(tài)數據傳送狀態(tài) 0 0 傳送傳送16位位D15D0 0 1 傳送高傳送高8位位D15D8 1 0 傳送低傳送低8位位D7D0 1 1 無操作無操作第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器T1時,CPU輸出BHE有效信息,T2、T3、TW和T4期間,CPU輸出S7狀態(tài)信息。S7低電平有效。在DMA工作方式,它為浮空狀態(tài)。 3. 8086:PIN28為M/IO,存貯器/輸入輸出信號,輸出、三態(tài)。 當M/IO=1時,表示訪問存貯器。 當M/IO=0時,表示訪問I/O端口。 它

52、和它和8088的的PIN28(IO/M)意義正好相反。意義正好相反。 單獨的8086/8088 CPU只能進行數據處理,但不能記憶,更不能與外界交換信息。 CPU芯片必須加上必要的支持芯片:時鐘電路、地址鎖存器、總線驅動器、存貯器、I/O接口芯片及基本外圍設備,才能構成一臺完整微機系統(tǒng)。 本節(jié)主要介紹本節(jié)主要介紹8086/8088 CPU的支持芯片。的支持芯片。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器2.3 8086/80882.3 8086/8088系統(tǒng)組織系統(tǒng)組織2.3.1 8086/80882.3.1 8086/8088支持芯片支持芯片

53、8284是Intel公司專門為8086/8088系統(tǒng)設計配套的單片時鐘發(fā)生器,含有: 時鐘信號發(fā)生電路CLK; 控制電路:準備就緒(READY)、復位(RESET)信號; 晶體振蕩信號(OSC,14.31818MHz); 外圍芯片所需時鐘(PCLK, 2.5M)等。一、一、82848284時鐘發(fā)生器時鐘發(fā)生器時鐘芯片8284引腳及內部結構如圖所示。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 CLK 輸出,系統(tǒng)時鐘。頻率為晶體頻率或外接頻率EF1的1/3。 CLK信號占空比為1/3。 X1、X2 輸入,晶體輸入。其頻率(14.318MHz)為CPU

54、所需時鐘 頻率的3倍(4.77MHz)。 PCLK 輸出,外部設備時鐘。其頻率(2.5MHz)約為CLK的1/2, 占空比為1/2。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 AEN1、AEN2 輸入,地址允許信號。 當AEN1、AEN2為低時,RDY1和RDY2產生READY(0)信號, 致使CPU產生等待周期。 RDY1、RDY2 輸入,總線準備好信號。當系統(tǒng)總線上某個設備已 收到數據或已準備好數據,則該設備可使RDY1或RDY2有效。 READY 輸出,準備好信號。 由RDY1或RDY2形成。1表示已準備好;0使CPU產生等待周期。 RES

55、 輸入,外部復位信號。 產生加到CPU的復位信號RESET。8284與8088/8086連接的一種方案見P48圖2-12。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器二、二、82828282/8283 8/8283 8位三態(tài)輸出鎖存器位三態(tài)輸出鎖存器 (用于鎖存地址,74LS373) AD15AD0/AD7AD0既可作為地址線,又可作為數據線。 外加三態(tài)鎖存器可以把地址信息分離出來,為外接MEM或I/O設備提供16位/8位地址信息, 由CPU產生的ALE的下跳沿將地址信息鎖存進8282/8283鎖存器中。 8282引腳及真值表如圖2-13所示。是2

56、0個PIN、雙列直插式封裝(DIP)。 8283的功能與8282完全相同,僅僅是輸入/輸出反相而已。STBSTB:輸入選通信號,高電平有效。輸入選通信號,高電平有效。 STBSTB1 1,輸出,輸出D D7 7DODO0 0隨輸入隨輸入DIDI7 7DIDI0 0而變,起傳輸作用;而變,起傳輸作用; STBSTB由由11變到變到00時,將時,將輸入數據鎖存。輸入數據鎖存。 OEOE:輸出允許,低電平有效。輸出允許,低電平有效。 OE OE為為00,將鎖存的信號輸出,將鎖存的信號輸出, OEOE為為11,8282/82838282/8283輸出呈輸出呈高阻狀態(tài)。高阻狀態(tài)。 在系統(tǒng)中,在系統(tǒng)中,O

57、EOE接地,保證總是接地,保證總是允許輸出狀態(tài)。允許輸出狀態(tài)。第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器STBSTB:輸入選通信號輸入選通信號, ,高電平有效高電平有效. . STBSTB1 1,輸出,輸出D D7 7DODO0 0隨輸入隨輸入DIDI7 7DIDI0 0而變,起傳輸作用;而變,起傳輸作用; STBSTB由由11變到變到00時,將時,將輸入數據鎖存。輸入數據鎖存。 圖2-14 8282和8086的連接OEOE:輸出允許,低電平有效。輸出允許,低電平有效。 OE OE為為00, ,將鎖存的信號輸將鎖存的信號輸出出, , OEOE為為

58、11,8282/8283,8282/8283輸出呈輸出呈高阻狀態(tài)。高阻狀態(tài)。 在系統(tǒng)中在系統(tǒng)中,OE,OE接地,保證總是接地,保證總是允許輸出狀態(tài)。允許輸出狀態(tài)。8282接入系統(tǒng)中如圖2-14所示。 74LS245/74LS244 20PIN, DIP 1. 用于數據總線和CPU之間的數據傳輸; 2. 用以增加數據總線的帶負載能力。 1 A B(發(fā)送)T= 0 B A(接收)B7. .B0A7 B7. 。 . 。. 。 . 。. 。 . 。 A0 B0 _OETDEN DT/R 1 高阻OE= 0 允許輸出T,輸入,傳輸方向控制。OE,輸入,允許輸出。第第2 2章章 80 80X86/Pent

59、ium X86/Pentium 微處理器微處理器三三 、8286/8287(反相反相)8位并行雙向總線驅動器位并行雙向總線驅動器 8286/8287引腳及一位內部結構如圖2-15所示。采用20引腳(PIN)、雙列直插封裝(DIP)。P49 P49 圖圖2-16 82862-16 8286與與80888088的連接的連接P49 P49 圖圖2-15 82862-15 8286引腳與內部結構引腳與內部結構第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器 CPU用在最大模式下時,不能直接提供總線控制信號。8288總線控制器專門為此而設計。 CPU的S2、S1

60、、S0與8288狀態(tài)信號連接,譯碼產生各種總線信號,使多個CPU接在同一組系統(tǒng)總線上。四、四、8288總線控制器總線控制器第第2 2章章 80 80X86/Pentium X86/Pentium 微處理器微處理器8288的組成:狀態(tài)譯碼器;命令信號發(fā)生器;控制信號發(fā)生器;控制邏輯。圖圖2-17 82882-17 8288總線控制器引腳總線控制器引腳 8288引腳信號介紹:S2 S1 S0:輸入,狀態(tài)譯碼信號。輸入,狀態(tài)譯碼信號。AEN: 輸入,地址允許信號。當輸入,地址允許信號。當AENAEN為低為低電平時,允許電平時,允許82888288的各種命令輸出;當的各種命令輸出;當AENAEN為高電

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論