![第2章 8086 微處理器及其系統(tǒng)結(jié)構(gòu)_第1頁](http://file4.renrendoc.com/view11/M03/1C/3C/wKhkGWX49R2ARZMVAAEb6weH1VA738.jpg)
![第2章 8086 微處理器及其系統(tǒng)結(jié)構(gòu)_第2頁](http://file4.renrendoc.com/view11/M03/1C/3C/wKhkGWX49R2ARZMVAAEb6weH1VA7382.jpg)
![第2章 8086 微處理器及其系統(tǒng)結(jié)構(gòu)_第3頁](http://file4.renrendoc.com/view11/M03/1C/3C/wKhkGWX49R2ARZMVAAEb6weH1VA7383.jpg)
![第2章 8086 微處理器及其系統(tǒng)結(jié)構(gòu)_第4頁](http://file4.renrendoc.com/view11/M03/1C/3C/wKhkGWX49R2ARZMVAAEb6weH1VA7384.jpg)
![第2章 8086 微處理器及其系統(tǒng)結(jié)構(gòu)_第5頁](http://file4.renrendoc.com/view11/M03/1C/3C/wKhkGWX49R2ARZMVAAEb6weH1VA7385.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第二章8086微處
理器及其系統(tǒng)結(jié)構(gòu)
8086的內(nèi)部結(jié)構(gòu)
8086的寄存器組
8086微處理器引腳信號
8086微處理器典型時序分析
8086CPU是Intel公司一種16位微處理器,是第三代微處理器的代表,是80X86的基本型。它有16根數(shù)據(jù)線和20根地址線,所以可尋址的地址空間是220=1MB,內(nèi)部總線和ALU全部為16位,可以進行8位和16位操作。以下是8086CPU實物圖。8086內(nèi)部結(jié)構(gòu)有兩個功能模塊,完成一條指令的取指和執(zhí)行功能模塊之一:總線接口單元BIU,主要負責讀取指令和操作數(shù)模塊之二:執(zhí)行單元EU,主要負責指令譯碼和執(zhí)行8086的功能結(jié)構(gòu)8086內(nèi)部結(jié)構(gòu)內(nèi)部暫存器
IP
ES
SSDSCS總線控制電路外部總線執(zhí)行部分控制電路123456∑ALU標志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位8088的指令隊列是4B暫存寄存器從功能上來看,8086CPU可分為兩部分,即總線接口部件BIU(BusInterfaceUnit)和執(zhí)行部件EU(ExecutionUnit)。在執(zhí)行指令的過程中,兩個部件形成了兩級流水線:執(zhí)行部件執(zhí)行指令的同時,總線接口部件完成從主存中預取后繼續(xù)指令的工作,使指令的讀取與執(zhí)行可以部分重疊??偩€接口部件BIU●功能:負責完成取指令送指令隊列,配合執(zhí)行部件的動作,從內(nèi)存單元或I/O端口取操作數(shù),或者將操作結(jié)果送內(nèi)存單元或者I/O端口。BIU由以下部分組成。①地址加法器和段寄存器
1個20位地址加法器、4個16位段寄存器,地址加法器將16位的段寄存器內(nèi)容左移4位,與16位偏移地址相加,形成20位的物理地址。②16位指令指針I(yè)P
指令指針I(yè)P用來存放下一條要執(zhí)行指令在代碼段中的偏移地址。
③指令隊列緩沖器當EU正在執(zhí)行指令中,且不需占用總線時,BIU會自動地進行預取指令操作,將所取得的指令按先后次序存入1個6字節(jié)的指令隊列寄存器,該隊列寄存器按“先進先出”的方式工作,并按順序取到EU中執(zhí)行。④總線控制邏輯電路執(zhí)行部件EU功能:負責進行所有指令的解釋和執(zhí)行。由以下部分組成:①算術邏輯運算單元它是1個16位的運算器,可用于8位、16位二進制算術和邏輯運算,也可按指令的尋址方式計算尋址存儲器所需的16位偏移量。②通用寄存器組它包括4個16位的數(shù)據(jù)寄存器AX、BX、CX、DX和4個16位指針與變址寄存器SP、BP與SI、DI。③標志寄存器它是1個16位的寄存器,用來反映CPU運算的狀態(tài)特征和存放某些控制標志。
④數(shù)據(jù)暫它協(xié)助ALU完成運算,暫存參加運算的數(shù)據(jù)。
⑤EU控制電路它負責從BIU的指令隊列緩沖器中取指令,并對指令譯碼,根據(jù)指令要求向EU內(nèi)部各部件發(fā)出控制命令,以完成各條指令規(guī)定的功能。
BIU與EU的動作協(xié)調(diào)原則:總線接口部件(BIU)和執(zhí)行部件(EU)按以下流水線技術原則協(xié)調(diào)工作,共同完成所要求的信息處理任務.①每當8086的指令隊列中有兩個空字節(jié),BIU就會自動把指令取到指令隊列中。其取指的順序是按指令在程序中出現(xiàn)的前后順序。②每當EU準備執(zhí)行一條指令時,它會從BIU部件的指令隊列前部取出指令的代碼,然后用幾個時鐘周期去執(zhí)行指令。在執(zhí)行指令的過程中,如果必須訪問存儲器或者I/O端口,那么EU就會請求BIU,進入總線周期,完成訪問內(nèi)存或者I/O端口的操作;如果此時BIU正好處于空閑狀態(tài),會立即響應EU的總線請求。如BIU正將某個指令字節(jié)取到指令隊列中,則BIU將首先完成這個取指令的總線周期,然后再去響應EU發(fā)出的訪問總線的請求。③當指令隊列已滿,且EU又沒有總線訪問請求時,BIU便進入空閑狀態(tài)。④在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時,由于待執(zhí)行指令的順序發(fā)生了變化,則指令隊列中已經(jīng)裝入的字節(jié)被自動消除,BIU會接著往指令隊列裝入轉(zhuǎn)向的另一程序段中的指令代碼。
BIU與EU兩者的工作是不同步的,正是這種既相互獨立又相互配合的關系,使得8086可以在執(zhí)行指令的同時,進行取指令代碼的操作,也就是說BIU與EU是一種并行工作方式,改變了以往計算機取指令→譯碼→執(zhí)行指令的串行工作方式,實現(xiàn)流水線作業(yè),大大提高了工作效率。小結(jié)CPU內(nèi)部組成及各完成的功能
8086CPU由總線接口部件BIU和執(zhí)行部件EU兩部分組成。總線接口部件負責與存儲器和I0端口之間傳送數(shù)據(jù),總線口部件主要包括:4個段地址寄存器;一個指令指針寄存器IP;一個20位地址加法器;6字節(jié)指令隊列;內(nèi)部寄存器;總線控制電路。執(zhí)行部件負責指令的執(zhí)行,主要包括:8個16位通用寄存器;標志寄存器;算術邏輯單元ALU和EU控制電路。第二章8086微處
理器及其系統(tǒng)結(jié)構(gòu)
8086的功能結(jié)構(gòu)
8086的寄存器組
8086微處理器引腳信號
8086微處理器典型時序分析8086的寄存器組執(zhí)行單元EU8個通用寄存器(AX/BX/CX/DXSI/DIBP/SP)1個標志寄存器(FR)1個指令指針寄存器(IP)4個段寄存器(CS/DS/ES/SS)8086的寄存器組微處理器是微機的硬件核心,主要包含指令執(zhí)行的運算和控制部件,還有多種寄存器,對匯編語言程序員來說,8086內(nèi)部結(jié)構(gòu)就是可編程的寄存器組執(zhí)行單元EU8個通用寄存器(AX/BX/CX/DXSI/DIBP/SP)1個標志寄存器(FR)1個指令指針寄存器(IP)4個段寄存器(CS/DS/ES/SS)8086CPU內(nèi)部寄存器如圖所示。
數(shù)據(jù)寄存器數(shù)據(jù)寄存器用來存放計算的結(jié)果和操作數(shù)每個寄存器又有它們各自的專用目的:AX——16位累加器,使用頻度最高,用于算術、邏輯運算以及與外設傳送信息等;AL為8位累加器。BX——基址寄存器,常用來做基址指針,指向一批連續(xù)存放操作數(shù)的基地址。CX——計數(shù)器,作為循環(huán)和串操作等指令中的隱含計數(shù)器。DX——數(shù)據(jù)寄存器,用來存放外設端口的16位地址,或雙字長數(shù)據(jù)的高16位。變址寄存器變址寄存器常用于存儲器尋址時提供地址SI是源變址寄存器DI是目的變址寄存器在串操作類指令中,SI和DI具有特別的功能指針寄存器指針寄存器用于尋址內(nèi)存堆棧內(nèi)的數(shù)據(jù)SP為堆棧指針寄存器,指示棧頂?shù)钠频刂?。SP不能再用于其他目的,具有專用性BP為基址指針寄存器,表示數(shù)據(jù)在堆棧段中的基地址SP/BP寄存器與SS段寄存器聯(lián)合使用以確定堆棧段中的存儲單元地址堆棧(Stack)堆棧是主存中一個特殊的區(qū)域它采用先進后出FILO(FirstInLastOut)或后進先出LIFO(LastInFirstOut)的原則進行存取操作,而不是隨機存取操作方式。堆棧通常由處理器自動維持。在8086中,由堆棧段寄存器SS和堆棧指針寄存器SP共同指示
8086CPU是Intel公司一種16位微處理器,是第三代微處理器的代表,是80X86的基本型。它有16根數(shù)據(jù)線和20根地址線,所以可尋址的地址空間是220=1MB,內(nèi)部總線和ALU全部為16位,可以進行8位和16位操作。以下是8086CPU實物圖。8086內(nèi)部結(jié)構(gòu)內(nèi)部暫存器
IP
ES
SSDSCS總線控制電路外部總線執(zhí)行部分控制電路123456∑ALU標志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位8088的指令隊列是4B暫存寄存器8086的寄存器組對匯編語言程序員來說,8086內(nèi)部結(jié)構(gòu)就是可編程的寄存器組執(zhí)行單元EU8個通用寄存器
1個標志寄存器
1個指令指針寄存器
4個段寄存器標志寄存器標志(Flag)用于反映指令執(zhí)行結(jié)果或控制指令執(zhí)行形式8086處理器的各種標志形成了一個16位的標志寄存器FROF111512DF10IF9TF8SF7ZF65AF43PF21CF0進位標志CF(CarryFlag)當運算結(jié)果的最高有效位有進位(加法)或借位(減法)時,進位標志置1,即CF=1;否則CF=0。0AAH+7CH=(1)26H,有進位:CF=13AH+7CH=,CF=0B6H0零標志ZF(ZeroFlag)若運算結(jié)果為0,則ZF=1;否則ZF=03AH+7CH=0B6H,結(jié)果不是零:ZF=084H+7CH=00,結(jié)果為零:ZF=1注意:ZF為1表示的結(jié)果是0符號標志SF(SignFlag)運算結(jié)果最高位為1,則SF=1;否則SF=03AH+7CH=0B6H,最高位D7=1:SF=184H+7CH=(1)00H,最高位D7=0:SF=0奇偶標志PF(ParityFlag)當運算結(jié)果最低字節(jié)中“1”的個數(shù)為零或偶數(shù)時,PF=1;否則PF=0。例如:3AH+7CH=B6H=10110110B,結(jié)果中有5個1,是奇數(shù),則PF=0
注意:PF標志僅反映最低8位中“1”的個數(shù)是偶或奇,即使是進行16位字操作。溢出標志OF(OverflowFlag)若算術運算的結(jié)果有溢出,則OF=1;否則OF=0。例如:3AH+7CH=B6H 產(chǎn)生溢出:OF=1AAH+7CH=26H 沒有溢出:OF=0問題:什么是溢出?溢出和進位有什么區(qū)別?處理器怎么處理,程序員如何運用?如何判斷是否溢出?溢出標志OF(OverflowFlag)若算術運算的結(jié)果有溢出,則OF=1;否則OF=0。問題:什么是溢出?溢出和進位有什么區(qū)別?程序員如何運用?什么是溢出處理器內(nèi)部以補碼表示有符號數(shù)8位表達的整數(shù)范圍是:+127~-12816位表達的范圍是:+32767~-32768如果運算結(jié)果超出這個范圍,就產(chǎn)生了溢出有溢出,說明有符號數(shù)的運算結(jié)果不正確什么是溢出處理器內(nèi)部以補碼表示有符號數(shù)8位表達的整數(shù)范圍是:+127~-12816位表達的范圍是:+32767~-32768如果運算結(jié)果超出這個范圍,就產(chǎn)生了溢出有溢出,說明有符號數(shù)的運算結(jié)果不正確3AH+7CH=0B6H,就是58+124=182,已經(jīng)超出-128~+127范圍,產(chǎn)生溢出,故OF=1;什么是溢出處理器內(nèi)部以補碼表示有符號數(shù)8位表達的整數(shù)范圍是:+127~-12816位表達的范圍是:+32767~-32768如果運算結(jié)果超出這個范圍,就產(chǎn)生了溢出有溢出,說明有符號數(shù)的運算結(jié)果不正確3AH+7CH=0B6H,就是58+124=182,已經(jīng)超出-128~+127范圍,產(chǎn)生溢出,故OF=1;例:96=01100000
+65=01000001161=10100001CF=0無進位
OF=1有溢出例:
10000001
+
0000001110000100
OF=0無溢出例:96=01100000
+65=01000001161=10100001CF=0無進位
OF=1有溢出CF=0無進位
7.有符號數(shù)的擴展運算CBW
[+96]補=0000000001100000+[+65]補=0000000001000001[+161]補=0000000010100001OF=0(無溢出,結(jié)果對)
7.有符號數(shù)的擴展運算CBW(續(xù))
[+46]補=00101110B,[-46]補=11010010B,從8位擴展到16位[+46]補=0000000000101110B=002EH[-46]補=1111111111010010B=0FFD2H
什么是溢出處理器內(nèi)部以補碼表示有符號數(shù)8位表達的整數(shù)范圍是:+127~-12816位表達的范圍是:+32767~-32768如果運算結(jié)果超出這個范圍,就產(chǎn)生了溢出有溢出,說明有符號數(shù)的運算結(jié)果不正確3AH+7CH=0B6H,就是58+124=182,已經(jīng)超出-128~+127范圍,產(chǎn)生溢出,故OF=1;另一方面,補碼0B6H表達真值是-74,顯然運算結(jié)果也不正確溢出和進位的區(qū)別溢出標志OF和進位標志CF是兩個意義不同的標志進位標志表示無符號數(shù)運算結(jié)果是否超出范圍,運算結(jié)果仍然正確;溢出標志表示有符號數(shù)運算結(jié)果是否超出范圍,運算結(jié)果已經(jīng)不正確。請看例子溢出和進位的對比例1:3AH+7CH=0B6H無符號數(shù)運算:58+124=182
范圍內(nèi),無進位有符號數(shù)運算:58+124=182
范圍外,有溢出例2:0AAH+7CH=(1)26H無符號數(shù)運算: 170+124=294
范圍外,有進位有符號數(shù)運算: -86+124=28
范圍內(nèi),無溢出如何運用溢出和進位處理器對兩個操作數(shù)進行運算時,按照無符號數(shù)求得結(jié)果,并相應設置進位標志CF;同時,根據(jù)是否超出有符號數(shù)的范圍設置溢出標志OF。應該利用哪個標志,則由程序員來決定。也就是說,如果將參加運算的操作數(shù)認為是無符號數(shù),就應該關心進位;認為是有符號數(shù),則要注意是否溢出。溢出的判斷判斷運算結(jié)果是否溢出有一個簡單的規(guī)則:只有當兩個相同符號數(shù)相加(包括不同符號數(shù)相減),而運算結(jié)果的符號與原數(shù)據(jù)符號相反時,產(chǎn)生溢出;因為,此時的運算結(jié)果顯然不正確其他情況下,則不會產(chǎn)生溢出輔助進位標志AF(AuxiliaryCarryFlag)運算時D3位(低半字節(jié))有進位或借位時,AF=1;否則AF=0。例如:3AH+7CH=B6H D3向前有進位:AF=1
這個標志主要由處理器內(nèi)部使用,用于十進制算術運算的調(diào)整,用戶一般不必關心。方向標志DF(DirectionFlag)用于串操作指令中,控制地址的變化方向:設置DF=0,串操作后存儲器地址自動增量(增址);設置DF=1,串操作后存儲器地址自動減量(減址)。方向標志DF(DirectionFlag)用于串操作指令中,控制地址的變化方向:設置DF=0,串操作后存儲器地址自動增量(增址);設置DF=1,串操作后存儲器地址自動減量(減址)。CLD指令復位方向標志:DF=0STD指令置位方向標志:DF=1中斷允許標志IF(Interrupt-enableFlag)用于控制外部可屏蔽中斷是否可以被處理器響應:設置IF=1,則允許中斷;設置IF=0,則禁止中斷。中斷允許標志IF(Interrupt-enableFlag)用于控制外部可屏蔽中斷是否可以被處理器響應:設置IF=1,則允許中斷;設置IF=0,則禁止中斷。CLI指令復位中斷標志:IF=0STI指令置位中斷標志:IF=1中斷允許標志IF(Interrupt-enableFlag)用于控制外部可屏蔽中斷是否可以被處理器響應:設置IF=1,則允許中斷;設置IF=0,則禁止中斷。CLI指令復位中斷標志:IF=0STI指令置位中斷標志:IF=1
要注意的是,由于在復位操作時,標志寄存器被清0,因此其中的中斷標志IF也被清0,這樣就阻止了所有的可屏蔽中斷請求,都不能響應,即復位以后,若需要必需用開中斷指令來重新設置IF標志。陷阱標志TF(TrapFlag)用于控制處理器是否進入單步執(zhí)行方式:設置TF=0,處理器正常工作;設置TF=1,處理器每執(zhí)行一條指令就中斷一次,中斷編號為1(稱單步中斷)TF也被稱為單步標志。單步執(zhí)行和單步調(diào)試利用單步中斷可對程序進行逐條指令的調(diào)試。這種逐條指令調(diào)試程序的方法就是單步調(diào)試。標志的分類指令的執(zhí)行與標志有很大關系。標志分成兩類:狀態(tài)標志——用來記錄程序運行結(jié)果的狀態(tài)信息,許多指令的執(zhí)行都將自動地改變它。
CF
OF
AF
SF
ZF
PF控制標志——可由用戶根據(jù)需要用指令進行設置,用于控制處理器的具體工作方式。
DF
IF
TF8086的寄存器組對匯編語言程序員來說,8086內(nèi)部結(jié)構(gòu)就是可編程的寄存器組執(zhí)行單元EU8個通用寄存器
1個標志寄存器
1個指令指針寄存器
4個段寄存器指令指針寄存器IP指令指針寄存器IP,指示代碼段中指令的偏移地址它與代碼段寄存器CS聯(lián)用,確定下一條指令的物理地址計算機通過CS:IP寄存器來取指,從而控制指令序列的執(zhí)行流程IP寄存器是一個專用寄存器,用戶不能直接訪問。
順序執(zhí)行程序時,CPU每取一個指令字節(jié),IP自動加,指向下一個要讀取的字節(jié);當IP單獨改變時或當CS和IP同時改變時,會發(fā)生程序轉(zhuǎn)移。
順序執(zhí)行程序時,CPU每取一個指令字節(jié),IP自動加1,指向下一個要讀取的字節(jié);當IP單獨改變時,會發(fā)生段內(nèi)的程序轉(zhuǎn)移;當CS和IP同時改變時,會產(chǎn)生段間的程序轉(zhuǎn)移。8086的寄存器組對匯編語言程序員來說,8086內(nèi)部結(jié)構(gòu)就是可編程的寄存器組執(zhí)行單元EU8個通用寄存器
1個標志寄存器
1個指令指針寄存器
4個段寄存器在對存儲器進行操作時,內(nèi)存一般可分成4個段,分別稱為代碼段、數(shù)據(jù)段、堆棧段和附加數(shù)據(jù)段,每個段存放不同性質(zhì)的數(shù)據(jù),進行不同的操作。代碼段CS:存放指令。
堆棧段SS:程序的堆棧區(qū)(子程序調(diào)用、系統(tǒng)功能調(diào)用、中斷處理等操作使用)或作為臨時數(shù)據(jù)存儲區(qū)。段寄存器
4個邏輯段的段基址分別放在相應的代碼段寄存器CS、數(shù)據(jù)段寄存器DS、堆棧段寄存器SS和附加段寄存器ES中,由這4個段寄存器來指明每個段在內(nèi)存中的起始地址。
數(shù)據(jù)段DS:存放程序所使用的數(shù)據(jù)。
附加數(shù)據(jù)段ES:輔助的數(shù)據(jù)區(qū)(串操作指令使用)。第二章8086微處
理器及其系統(tǒng)結(jié)構(gòu)
8086的功能結(jié)構(gòu)
8086的寄存器組
8086微處理器引腳信號
8086微處理器典型時序分析學習外部特性,首先了解其引腳信號,關注以下幾個方面:引腳的功能信號的流向有效電平三態(tài)能力輸出正常的低電平、高電平外,還可以輸出高阻的第三態(tài)8086CPU引腳功能8086與8088CPU引腳區(qū)別:8086有16位數(shù)據(jù)線,與地址線A0-A15兼用;20位地址線,尋址空間達到1MB;8088有8位數(shù)據(jù)線,與地址線A0-A7兼用;8086與8088CPU引腳28信號相反(M/IO,M/IO)引腳34信號,8086與8088CPU功能稍有不同。8086CPU引腳功能8086與8088CPU引腳區(qū)別:8086有16位數(shù)據(jù)線,與地址線A0-A15兼用;20位地址線,尋址空間達到1MB;8088有8位數(shù)據(jù)線,與地址線A0-A7兼用;8086與8088CPU引腳28信號相反(M/IO,M/IO)引腳34信號,8086與8088CPU功能稍有不同。什么是分時復用?分時復用就是一個引腳在不同的時刻具有兩個甚至多個作用最常見的總線復用是數(shù)據(jù)和地址引腳復用總線復用的目的是為了減少對外引腳個數(shù)8086CPU的數(shù)據(jù)地址線采用了總線復用方法什么是分時復用?分時復用就是一個引腳在不同的時刻具有兩個甚至多個作用最常見的總線復用是數(shù)據(jù)和地址引腳復用總線復用的目的是為了減少對外引腳個數(shù)8088/8086CPU的數(shù)據(jù)地址線采用了總線復用方法最小模式下的系統(tǒng)典型配置地址/數(shù)據(jù)線地址/狀態(tài)線非屏蔽中斷可屏蔽中斷請求最小最大模式控制MN/MX=1,最小模式MN/MX=0,最大模式讀信號總線保持請求信號總線保持相應信號寫信號存儲器/IO控制信號M/IO=1,選中存儲器M/IO=0,選中IO接口數(shù)據(jù)發(fā)送/接收信號DT/R=1,發(fā)送DT/R=0,接收數(shù)據(jù)允許信號地址允許信號中斷響應信號測試信號:執(zhí)行WAIT指令,CPU處于空轉(zhuǎn)等待;TEST有效時,結(jié)束等待狀態(tài)。準備好信號:表示內(nèi)存或I/O設備準備好,可以進行數(shù)據(jù)傳輸。復位信號8086CPU引腳功能8086內(nèi)部結(jié)構(gòu)內(nèi)部暫存器
IP
ES
SSDSCS總線控制電路外部總線執(zhí)行部分控制電路123456∑ALU標志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位8088的指令隊列是4B暫存寄存器地址/數(shù)據(jù)線地址/狀態(tài)線非屏蔽中斷可屏蔽中斷請求最小最大模式控制MN/MX=1,最小模式MN/MX=0,最大模式讀信號總線保持請求信號總線保持相應信號寫信號存儲器/IO控制信號M/IO=1,選中存儲器M/IO=0,選中IO接口數(shù)據(jù)發(fā)送/接收信號DT/R=1,發(fā)送DT/R=0,接收數(shù)據(jù)允許信號地址允許信號中斷響應信號測試信號:執(zhí)行WAIT指令,CPU處于空轉(zhuǎn)等待;TEST有效時,結(jié)束等待狀態(tài)。準備好信號:表示內(nèi)存或I/O設備準備好,可以進行數(shù)據(jù)傳輸。復位信號8086CPU引腳功能學習外部特性,首先了解其引腳信號,關注以下幾個方面:引腳的功能信號的流向有效電平三態(tài)能力輸出正常的低電平、高電平外,還可以輸出高阻的第三態(tài)“引腳”小結(jié)8086CPU可分成三類信號:16位數(shù)據(jù)線:引腳D0~D1520位地址線:A0~A19控制線:ALE、M/IO、WR*、RD*、READYBHE*、MN/MX、TEST*、DT/R、DEN*INTR、INTA*、NMI,HOLD、HLDARESET、CLK、Vcc、GND最小模式下的系統(tǒng)典型配置“引腳”小結(jié)8086CPU可分成三類信號:16位數(shù)據(jù)線:引腳D0~D1520位地址線:A0~A19控制線:ALE、M/IO、WR*、RD*、READYBHE*、MN/MX、TEST*、DT/R、DEN*INTR、INTA*、NMI,HOLD、HLDARESET、CLK、Vcc、GND“引腳”小結(jié)8086CPU可分成三類信號:16位數(shù)據(jù)線:引腳D0~D1520位地址線:A0~A19控制線:ALE*、M/IO*、WR*、RD、READYBHE、MN/MX、TEST、DT/R*、DEN*INTR、INTA*、NMI,HOLD*、HLDA*RESET、CLK、Vcc、GND
8086CPU可以在兩種模式下工作,即最大模式和最小模式。當CPU處于不同工作模式時,其部分引腳的功能是不同的,圖中帶有括號的引腳為最大模式時的引腳名稱。(1)兩種工作方式功能相同的引腳●AD15~AD0(39腳、2腳~16腳):地址/數(shù)據(jù)總線,雙向,三態(tài)。是采用分時工作方式傳送地址或數(shù)據(jù)的復用引腳。根據(jù)不同時鐘周期的要求,決定當前是傳送要訪問的存儲單元或I/O端口的低16位地址,還是傳送16位數(shù)據(jù),或是處于高阻狀態(tài)?!馎19/S6~A16/S3(35腳~38腳):地址/狀態(tài)總線,輸出,三態(tài)。是采用分時工作方式傳送地址或狀態(tài)的復用引腳,其中A19~A16為20位地址總線的高4位地址,S6~S3是狀態(tài)信號。S6:指示8086當前是否與總線相連,當S6=0表示8086當前與總線相連。S5:表明中斷允許標志當前的設置。S5=0,表示CPU中斷是關閉的,禁止一切可屏蔽中斷的中斷請求;S5=1表示CPU中斷是開放的,允許一切可屏蔽中斷的中斷申請。S4和S3:組合起來指出當前使用的段寄存器的情況?!馚HE/S7(34腳):高8位數(shù)據(jù)總線允許/狀態(tài)信號,輸出,三態(tài)。高8位數(shù)據(jù)總線允許信號,當?shù)碗娖接行r,表明在高8位數(shù)據(jù)總線D15~D8上傳送1個字節(jié)的數(shù)據(jù);S7為設備的狀態(tài)信號。
●RD(32腳):讀信號,輸出,三態(tài),低電平有效。當信號為低電平時,表示CPU正在進行讀存儲器或讀I/O端口的操作。08H01H存儲器00H02H00H03H04H00H00000000
0000
00000000FFFFFFFF
FFFF
FFFFFFFD地扯線A19~A000000000
0000
0000000100000000
0000
0000001000000000
0000
0000001100000000
0000
00000100FFFFFFFF
FFFF
FFFFFFFEFFFFFFFF
FFFF
FFFF
FFFF存儲單元個數(shù):220=1M每個存儲單元存8位二進制數(shù)08H01H存儲器00H02H00H03H00H04H00HXXXXXXXXXXXXXXXX0000XXXXXXXX
XXXX
XXXX0001XXXXXXXX
XXXX
XXXX0010XXXXXXXX
XXXX
XXXX0011XXXXXXXX
XXXX
XXXX0100XXXXXXXX
XXXX
XXXX0101地扯線數(shù)據(jù)線D7~D0D7~D0D7~D0D15~D8D15~D8D15~D8A19~A0XXXXXXXX
XXXX
XXXX0110XXXXXXXX
XXXX
XXXX0111D15~D8D7~D016位微機系統(tǒng)中的典型存儲器接口●READY(22腳):準備就緒信號,輸入,高電平有效。當READY=1時,表示CPU訪問的存儲器或I/O端口已準備好傳送數(shù)據(jù)。若CPU在總線周期T3狀態(tài)檢測到READY信號為低電平,表示存儲器或I/O設備尚未準備就緒,CPU自動插入一個或多個等待狀態(tài)TW,直到READY信號變?yōu)楦唠娖綖橹??!馡NTR(18腳):可屏蔽請求信號,輸入,電平觸發(fā),高電平有效。當INTR=1時,表示外設向CPU發(fā)出中斷請求,CPU在當前指令周期的最后一個T狀態(tài)去采樣該信號,若此時IF=1,則CPU響應中斷,停止執(zhí)行原指令序列,轉(zhuǎn)去執(zhí)行中斷服務程序?!馧MI(17腳):非屏蔽中斷請求信號,輸入,上升沿有效。當NMI引腳上有一個上升沿有效的觸發(fā)信號時,表明CPU內(nèi)部或I/O設備提出了非屏蔽的中斷請求,CPU會在結(jié)束當前所執(zhí)行的指令后,立即響應中斷請求。●TEST(23腳):測試信號,輸入,低電平有效。當CPU執(zhí)行WAIT指令時,每隔5個時鐘周期對進行一次測試,若測到無效,CPU繼續(xù)處于等待狀態(tài),直到檢測到為低電平。●RESET(21腳):復位信號,輸入,高電平有效。RESET信號至少要保持4個時鐘周期。CPU接到RESET信號后,停止進行操作,并將標志寄存器、IP、DS、SS、ES及指令隊列清零,將CS設置為FFFFH。當復位信號為低電平時,CPU從FFFF0H開始執(zhí)行程序?!馛LK(19腳):主時鐘信號,輸入。8086要求時鐘信號的占空比為33%,即1/3周期為高電平,2/3周期為低電平。8086的時鐘頻率要求為5MHz,8086-1的時鐘頻率為10MHz,8086-2的時鐘頻率為8MHz。不同型號的芯片使用的時鐘頻率不同?!馟ND(1、20腳):接地引腳。●MN/MX(33腳):最小/最大模式輸入控制信號。引腳用來設置8086CPU的工作模式。當為高電平(接+5V)時,CPU工作在最小模式;當為低電平(接地)時,CPU工作在最大模式?!馰CC(40腳):電源輸入引腳。8086CPU采用單一+5V電源供電。(2)工作于最小模式時使用的引腳當MN/MX引腳接高電平時,CPU工作于最小模式。此時,引腳24~31的含義及其功能如下所示?!馦/IO(28腳):存儲器或I/O端口訪問信號,三態(tài)輸出。M/IO=1時,表示CPU當前正在訪問存儲器;M/IO=0時,表示CPU當前正在訪問I/O端口?!馱R(29腳):寫信號,三態(tài)輸出,低電平有效。WR=0時,表示當前CPU正在對存儲器或I/O端口進行寫操作。●INTA(24腳):可屏蔽中斷響應信號,輸出,低電平有效。為低電平時,表示CPU已經(jīng)響應外設的中斷請求,即將執(zhí)行中斷服務程序?!馎LE(25腳):地址鎖存允許信號,輸出,高電平有效。用來做地址鎖存器8282的片選信號,使由AD15~AD0分時發(fā)出的地址信息和數(shù)據(jù)信息分開?!馜T/R(27腳):數(shù)據(jù)發(fā)送/接收信號,輸出,三態(tài)。DT/R信號用來控制數(shù)據(jù)傳送的方向。DT/R=1時,CPU發(fā)送數(shù)據(jù)到存儲器或I/O端口;DT/R=0時,CPU接收來自存儲器或I/O端口的數(shù)據(jù)?!馜EN(26腳):數(shù)據(jù)允許控制信號,輸出,三態(tài),低電平有效。信號用作總線收發(fā)器的選通控制信號。當為低電平時,表明CPU進行數(shù)據(jù)的讀/寫操作?!馠OLD(31腳):總線保持請求信號,輸入,高電平有效。在DMA數(shù)據(jù)傳送方式中,由總線控制器8237A發(fā)出一個高電平有效的總線請求信號,通過HOLD引腳輸入到CPU,請求CPU讓出總線控制權。●HLDA(30腳):總線保持響應信號,輸出,高電平有效。HLDA是與HOLD配合使用的聯(lián)絡信號。在HLDA有效期間,HLDA引腳輸出一個高電平有效的響應信號,同時總線將處于浮空狀態(tài),CPU讓出對總線的控制權,將其交付給申請使用總線的8237A控制器使用,總線使用完后,會使HOLD信號變?yōu)榈碗娖剑珻PU又重新獲得對總線的控制權。(3)工作于最大模式時使用的引腳當引腳MN/MX接低電平時,CPU工作于最大模式。此時,引腳24~31的含義及其功能如下所示?!馭2、S1、S0(28腳~26腳):總線周期狀態(tài)信號,三態(tài),輸出,低電平有效。它們表明當前總線周期所進行的操作類型。
S2、S1、S0
:輸出(28、27、26引腳)
000中斷響應
001讀I/O口
010寫I/O口
011暫存
100取指令
101讀存儲器
110寫存儲器
111無源狀態(tài)●RQ/GT1、RQ/GT0(30、31腳):總線請求信號(輸入)/總線請求允許信號(輸出),雙向,低電平有效。這兩個信號端可供CPU以外的2個處理器用來發(fā)出使用總線的請求信號和接收CPU對總線請求信號的回答信號。●LOCK(29腳):總線封鎖信號,三態(tài)輸出,低電平有效。有效時,表示CPU不允許其他總線主控部件占用總線。信號是由指令“LOCK”使其有效,并維持到下一條指令執(zhí)行完畢為止?!馫S1,QS0(24腳、25腳):指令隊列狀態(tài)信號,輸出。QS1和QS0信號的組合可以指示總線接口部件BIU中指令隊列的狀態(tài),以便其他處理器監(jiān)視、跟蹤指令隊列的狀態(tài)。8086CPU的最大模式QS1、QS2(25、24引腳):隊列狀態(tài)信號。
00無操作
01取走指令隊列第一個字節(jié)
10隊列空
11取走指令隊列后續(xù)字節(jié)代碼
小結(jié)
8086CPU有20根地址線;16根數(shù)據(jù)線;它最大直接尋址范圍1MB;一次對外數(shù)據(jù)傳送16位二進制數(shù)。8086CPU的兩種模式最小模式MN/MX接+5V構(gòu)成小規(guī)模的應用系統(tǒng),只有8086一個微處理器。最大模式MN/MX接地。用于大型(中型)8086/8088系統(tǒng)中,系統(tǒng)總是包含有兩個或多個微處理器。8086在最小模式下的典型配置1、MN/MX接+5V2、一片8284A,作為時鐘發(fā)生器3、三片8282或74LS373,作地址鎖存器4、二片8286或74LS245,作總線收發(fā)器1、MN/MX接地;2、一片8284,作系統(tǒng)時鐘3、三片8282或74LS373,作鎖存器4、二片8286/8287或74LS245
,作數(shù)據(jù)收發(fā)器5、一片8288,作總線控制器6、一片8259(可選)8086CPU的最大模式的典型配置8086CPU引腳功能08H01H存儲器00H02H00H03H04H00H00000000
0000
00000000FFFFFFFF
FFFF
FFFFFFFD地扯線A19~A000000000
0000
0000000100000000
0000
0000001000000000
0000
0000001100000000
0000
00000100FFFFFFFF
FFFF
FFFFFFFEFFFFFFFF
FFFF
FFFF
FFFF存儲單元個數(shù):220=1M每個存儲單元存8位二進制數(shù)08H01H存儲器00H02H00H03H00H04H00HXXXXXXXXXXXXXXXX0000XXXXXXXX
XXXX
XXXX0001XXXXXXXX
XXXX
XXXX0010XXXXXXXX
XXXX
XXXX0011XXXXXXXX
XXXX
XXXX0100XXXXXXXX
XXXX
XXXX0101地扯線數(shù)據(jù)線D7~D0D7~D0D7~D0D15~D8D15~D8D15~D8A19~A0XXXXXXXX
XXXX
XXXX0110XXXXXXXX
XXXX
XXXX0111D15~D8D7~D016位微機系統(tǒng)中的典型存儲器接口補充:三態(tài)門和D觸發(fā)器三態(tài)門和以D觸發(fā)器形成的鎖存器是微機接口電路中常用的兩類邏輯電路三態(tài)門:功率放大、導通開關器件共用總線時,一般使用三態(tài)電路:需要使用總線的時候打開三態(tài)門;不使用的時候關閉三態(tài)門,使之處于高阻D觸發(fā)器:信號保持,也可用作導通開關數(shù)字電路符號表示
數(shù)字邏輯電路的兩種國標符號對照
三態(tài)緩沖器三態(tài)門具有單向?qū)ê腿龖B(tài)的特性T為低平時:輸出為高阻抗(三態(tài))T為高電平時:輸出為輸入的反相TAF表示反相或低電平有效TAFTAFTAFD觸發(fā)器DQCQ電平鎖存DQCQ上升沿鎖存電平鎖存:高電平通過,低電平鎖存上升沿鎖存:通常用負脈沖觸發(fā)鎖存負脈沖的上升沿8282內(nèi)部邏輯符號圖常見鎖存器8282DI0-DI7:數(shù)據(jù)輸入引腳;DO0-DO7:數(shù)據(jù)輸出引腳;VCC、GND:電源與地線;STB:數(shù)據(jù)選通信號,當有一個地址鎖存控制信號送到該端時,8282即完成對輸入數(shù)據(jù)的鎖存任務;OE:輸出允許信號,該端接低電平時,8282就將鎖存的內(nèi)容傳送到輸出引腳上。74LS373具有三態(tài)輸出的TTL電平鎖存器LE電平鎖存引腳OE輸出允許引腳雙向三態(tài)緩沖器三態(tài)門具有雙向?qū)ê腿龖B(tài)的特性ABTOE
OE=0,導通
T=1A→BT=0A←BOE=1,不導通8286內(nèi)部邏輯符號圖A0-
A7、B0-B7:兩個8位雙向輸入/輸出數(shù)據(jù)線;VCC、GND:電源與地線;T:數(shù)據(jù)傳送方向控制線控制8286中的數(shù)據(jù)傳送方向;OE:輸出允許信號,控制8286何時傳送數(shù)據(jù)。雙向8位三態(tài)緩沖器828674LS2458位雙向緩沖器控制端連接在一起,低電平有效可以雙向?qū)ㄝ敵雠c輸入同相
E=0,導通
DIR=1A→BDIR=0A←BE=1,不導通8282鎖存器與8086的連接T=1,發(fā)送;T=0,接收8086在最小模式下的典型配置最小模式下的系統(tǒng)典型配置8086最大模式最大模式下的系統(tǒng)典型配置第二章8086微處
理器及其系統(tǒng)結(jié)構(gòu)
8086的功能結(jié)構(gòu)
8086的寄存器組
8086微處理器引腳信號
8086微處理器典型時序分析最小模式下的系統(tǒng)典型配置時序的基本概念微機系統(tǒng)的工作,必須嚴格按照一定的時間關系來進行,CPU定時所用的周期有三種,即時鐘周期、總線周期和指令周期。雖然,每條指令的功能及長度不同,所需要進行的操作也不同。指令由一些基本的操作組合而成的。如存儲器讀/寫操作、I/O端口讀/寫操作、中斷響應、總線保持與響應操作、系統(tǒng)復位操作、暫停操作。1.時鐘周期
時鐘周期是微機系統(tǒng)工作的最小時間單元,它取決于系統(tǒng)的主頻率,系統(tǒng)完成任何操作所需要的時間,均是時鐘周期的整數(shù)倍。時鐘周期又稱為T狀態(tài)?;径〞r脈沖是由外部振蕩器產(chǎn)生的,通過CPU的CLK輸入端輸入,基本定時脈沖的頻率,稱為系統(tǒng)的主頻率。例如8086CPU的主頻率是5MHz,其時鐘周期為200ns(1/fOSC)。最小模式下的系統(tǒng)典型配置2.總線周期
CPU通過總線與內(nèi)存或I/O端口之間,進行一個字或字節(jié)數(shù)據(jù)交換所進行的操作,稱為一次總線操作,相應于某個總線操作的時間即為總線周期,一個最基本的總線周期是由4個時鐘周期(T狀態(tài))組成,也稱為4個狀態(tài),即T1、T2、T3和T4,在每個T狀態(tài)下,CPU完成不同的動作。3.指令周期
指令周期是執(zhí)行一條指令所需的時間。一個指令周期由一個或幾個總線周期組成。
指令不同,所需的總線周期數(shù)也不同。對于一些簡單的單字節(jié)指令,在取指令周期中,指令取出到指令寄存器后,立即譯碼執(zhí)行,不再需要其它的總線周期。對于一些比較復雜的指令,則需要兩個或者兩個以上的總線周期。8086CPU的操作時序8086的主要操作有:1、總線操作(存貯器讀及寫,I/O讀及寫)。2、總線保持與響應操作。3、中斷響應操作。4、系統(tǒng)的復位操作。5、暫停操作。1.存貯器讀總線周期時序例:MOVAL,[1001H]
;M/IO=1T1狀態(tài):A19~A0上是地址信息,出現(xiàn)ALE信號后,將地址鎖存到地址鎖存器(8282)。T2狀態(tài):地址信息消失,A19-A16從地址信息變?yōu)闋顟B(tài)信息S6-S3。數(shù)據(jù)允許信號DEN在T2狀態(tài)有效。T3狀態(tài):AD0~AD15上出現(xiàn)數(shù)據(jù),
RD信號有效。TW狀態(tài):若存儲器式外設的工作速度較慢,不能滿足基本時序要求,使用一個產(chǎn)生READY的電路,以使在T3狀態(tài)之后,插入一個等待周期TW。T4狀態(tài):CPU采樣數(shù)據(jù),結(jié)束一個總線周期。最小模式下的系統(tǒng)典型配置2.存儲器寫總線周期時序例:MOV[1001H],AL;M/IO=1T1狀態(tài):A19~A0上是地址信息,出現(xiàn)ALE信號后,將地址鎖存到地址鎖存器(8282)。T2狀態(tài):地址信息消失,A19-A16從地址信息變?yōu)闋顟B(tài)信息S6-S3。T3狀態(tài):AD0~
AD15上出現(xiàn)數(shù)據(jù),
WR信號有效。TW狀態(tài):若存儲器式外設的工作速度較慢,不能滿足基本時序要求,使用一個產(chǎn)生READY的電路,以使在T3狀態(tài)之后,插入一個等待周期TW。T4狀態(tài):CPU認為數(shù)據(jù)已寫入存儲器,結(jié)束一個總線周期。最小模式下的系統(tǒng)典型配置小結(jié):總線周期
CPU對存儲單元或
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工地勞務人員職業(yè)技能鑒定與認證合同
- 2025年度插畫師藝術衍生品開發(fā)合同
- 貴州2025年貴州遵義師范學院招聘34人筆試歷年參考題庫附帶答案詳解
- 荊州2024年湖北洪湖市大學生鄉(xiāng)村醫(yī)生專項招聘33人筆試歷年參考題庫附帶答案詳解
- 白銀2025年甘肅白銀礦冶職業(yè)技術學院春季引進博士研究生13人筆試歷年參考題庫附帶答案詳解
- 玉溪2025年云南玉溪市江川區(qū)審計局招聘公益性崗位工作人員筆試歷年參考題庫附帶答案詳解
- 杭州浙江杭州電子科技大學信息技術中心招聘工作人員(勞務派遣)筆試歷年參考題庫附帶答案詳解
- 2025年中國塑底布鞋市場調(diào)查研究報告
- 廊坊2025年河北廊坊臨空經(jīng)濟區(qū)選調(diào)22人筆試歷年參考題庫附帶答案詳解
- 2025至2031年中國靜電粉末涂料行業(yè)投資前景及策略咨詢研究報告
- 2023夏季廣東廣州期貨交易所招聘歷年高頻難易度、易錯點模擬試題(共500題)附帶答案詳解
- 《人事管理》課件
- 【非正式組織對企業(yè)人力資源管理的影響8700字(論文)】
- 2024拳擊比賽計劃書
- 管道直飲水系統(tǒng)技術和方案
- 肉山羊規(guī)模飼養(yǎng)生產(chǎn)技術規(guī)程
- 婦產(chǎn)科國家臨床重點專科驗收匯報
- 繪本故事PPT課件之我不敢說我怕被罵
- 社區(qū)干部培訓班交流發(fā)言(通用6篇)
- 小學語文-5 對韻歌教學設計學情分析教材分析課后反思
- 【課件】免疫系統(tǒng)組成和功能(人教版2019選擇性必修1)
評論
0/150
提交評論