版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、電子科學(xué)系電子科學(xué)系第第4章章16位微處理器位微處理器4.1 16位微處理器概述位微處理器概述4.2 8086/8088 CPU的結(jié)構(gòu)的結(jié)構(gòu)4.3 8086/8088 CPU的引腳信號(hào)和工作模式的引腳信號(hào)和工作模式4.4 8086/8088的主要操作功能的主要操作功能電子科學(xué)系電子科學(xué)系 微處理器微處理器(microprocessor)是微型計(jì)算機(jī)是微型計(jì)算機(jī)的運(yùn)算及控制部件,也稱中央處理單元的運(yùn)算及控制部件,也稱中央處理單元(Central Processing Unit, CPU)。它本身不。它本身不構(gòu)成獨(dú)立的工作系統(tǒng),因而它也不能獨(dú)立地執(zhí)構(gòu)成獨(dú)立的工作系統(tǒng),因而它也不能獨(dú)立地執(zhí)行程序。通
2、常,微處理器由算術(shù)邏輯部件行程序。通常,微處理器由算術(shù)邏輯部件(ALU)、控制部件、寄存器組和片內(nèi)總線等幾、控制部件、寄存器組和片內(nèi)總線等幾部分組成,這些都已在前面講過(guò)了。部分組成,這些都已在前面講過(guò)了。4.1 16位微處理器概述位微處理器概述電子科學(xué)系電子科學(xué)系1. 第一代第一代4位或低檔位或低檔8位微處理器位微處理器 第一代微處理器的典型產(chǎn)品是Intel公司1971年研制成功的4004(4位CPU)及1972年推出的低檔8位CPU 8008。發(fā)展歷程發(fā)展歷程電子科學(xué)系電子科學(xué)系2.第二代第二代中高檔中高檔8位微處理器位微處理器 之后逐漸形成以Intel公司、Motorola公司、Zilog
3、公司產(chǎn)品為代表的三大系列微處理器。第二代微處理器的典型產(chǎn)品有1974年Intel公司生產(chǎn)的8080 CPU, Zilog 公司生產(chǎn)的Z80 CPU、Motorola公司生產(chǎn)的MC6800 CPU以及Intel 公司1976年推出的8085CPU。它們均為8位微處理器,具有16位地址總線。 可使用匯編語(yǔ)言及BASIC、FORTRAN等高級(jí)語(yǔ)言編寫(xiě)程序。電子科學(xué)系電子科學(xué)系 3第三代第三代16位微處理器位微處理器 第三代微處理器的典型產(chǎn)品是1978年Intel公司生產(chǎn)的8086 CPU,286、Zilog公司的Z8000 CPU和Motorola公司的MC6800 CPU。它們均為16位微處理器,
4、具有20位地址總線。 為方便原8位機(jī)用戶,Intel公司在8086推出后不久便很快推出準(zhǔn)16位的8088CPU,其指令系統(tǒng)與8086完全兼容,CPU內(nèi)部結(jié)構(gòu)仍為16位,但外部數(shù)據(jù)總線是8位的。并以8088為CPU組成了IBM PC、PC/XT等準(zhǔn)16位微型計(jì)算機(jī),由于其性能價(jià)格比高,很快占領(lǐng)了市場(chǎng)。 電子科學(xué)系電子科學(xué)系4第四代第四代32位高檔微處理器位高檔微處理器 1985年,Intel公司推出了32位微處理器芯片80386,其地址總線也為32位。80386SX內(nèi)部結(jié)構(gòu)位32位,外部數(shù)據(jù)總線為16位;80386DX內(nèi)部結(jié)構(gòu)、外部數(shù)據(jù)總線皆為32位,采用80387作為協(xié)處理器。 1990年,I
5、ntel公司在80386基礎(chǔ)上研制出新一代32位微處理器芯片80486,其地址總線仍然為32位。它相當(dāng)于把80386、80387及8KB高速緩沖存儲(chǔ)器(Cache)集成在一塊芯片上,性能比80386有較大提高。 電子科學(xué)系電子科學(xué)系5. 第五代第五代64位高檔微處理器位高檔微處理器 第五代微處理器的典型產(chǎn)品是1993年Intel公司推出的Pentium(奔騰,Intel 586)以及IBM、Apple和Motorola三家公司聯(lián)合生產(chǎn)的Power PC。 Pentium微處理器數(shù)據(jù)總線為64位,地址總線為36位,有兩條超標(biāo)量流水線,兩個(gè)并行執(zhí)行單元及雙高速緩沖存儲(chǔ)器,工作頻率有1.4 GHz
6、、1.6GHz 、2.0GHz 和2.3GHz等。 Power PC是一種精簡(jiǎn)指令集計(jì)算機(jī),也是一種性能優(yōu)異的64位微處理器,其中也采用了先進(jìn)的超標(biāo)量流水線技術(shù)及雙高速緩沖存儲(chǔ)器。電子科學(xué)系電子科學(xué)系圖圖4.14.2 80868088 CPU的結(jié)構(gòu)的結(jié)構(gòu)8086 CPU從功能上可分為兩部分,即總線接口部件(bus interface unit,縮寫(xiě)為BIU)和執(zhí)行部件EU(execution unit)。8086的內(nèi)部結(jié)構(gòu)如圖4.1所示。電子科學(xué)系電子科學(xué)系電子科學(xué)系電子科學(xué)系4.2.1 執(zhí)行部件執(zhí)行部件 執(zhí)行部件執(zhí)行部件(EU)的功能就是負(fù)責(zé)指令的執(zhí)行。將指的功能就是負(fù)責(zé)指令的執(zhí)行。將指令譯
7、碼并利用內(nèi)部的寄存器和令譯碼并利用內(nèi)部的寄存器和ALU對(duì)數(shù)據(jù)進(jìn)行所需的對(duì)數(shù)據(jù)進(jìn)行所需的處理。處理。從結(jié)構(gòu)圖4.1中,可見(jiàn)到執(zhí)行部件由下列部分組成:(1) 4個(gè)通用寄存器,即AX,BX,CX,DX;(2) 4個(gè)專用寄存器,即 基數(shù)指針寄存器BP, 堆棧指針寄存器SP, 源變址寄存器SI, 目的變址寄存器DI;(3) 標(biāo)志寄存器(FR);(4) 算術(shù)邏輯部件(ALU)。電子科學(xué)系電子科學(xué)系80868088的的EU有如下特點(diǎn):有如下特點(diǎn):(1) 4個(gè)通用寄存器既可以作為16位寄存器使用,也可以作為8位寄存器使用。例如當(dāng)BX寄存器作為8位寄存器時(shí),分為BH和BL,BH為高8位,BL為低8位。(2) A
8、X寄存器也常稱為累加器,8086指令系統(tǒng)中有許多指令都是通過(guò)累加器的動(dòng)作來(lái)執(zhí)行的。當(dāng)累加器作為16位來(lái)使用時(shí),可以進(jìn)行按字乘操作、按字除操作、按字輸入輸出和其他字傳送等;當(dāng)累加器作為8位來(lái)使用時(shí),可以實(shí)現(xiàn)按字節(jié)乘操作、按字節(jié)除操作、按字節(jié)輸入輸出和其他字節(jié)傳送,以及十進(jìn)制運(yùn)算等。電子科學(xué)系電子科學(xué)系A(chǔ)HAHALALBHBHBLBLCHCHCLCLDHDHDLDLAXAXBXBXCXCXDXDX累加器累加器基址基址計(jì)數(shù)計(jì)數(shù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)寄存器數(shù)據(jù)寄存器0 07 78 81515lAX、BX、CX、DX,用于存放16的數(shù)據(jù)和地址。l可以拆分成AH、AL、BH、BL、CH、CL、DH、DL,用來(lái)存放8
9、位數(shù)據(jù),可以獨(dú)立尋址,獨(dú)立使用。l隱含使用:AX作為累加器; BX作為基址寄存器; CX作為計(jì)數(shù)寄存器; DX在乘除運(yùn)算中做輔助累加器。電子科學(xué)系電子科學(xué)系SPSPBPBPSISIDIDI0 0堆棧指針堆棧指針基址指針基址指針 源變址源變址目的變址目的變址地址指針寄存器地址指針寄存器變址寄存器變址寄存器 SP、BP、SI、DI,都是16位寄存器,可以存放數(shù)據(jù),通常用來(lái)存放邏輯地址的偏移量,是形成20位物理地址的其中一部分。lSP堆棧指針,是棧頂?shù)钠屏?。lBP基址指針,用于存放位于堆棧段中的一個(gè)數(shù)據(jù)區(qū)基址的偏移地址。lSI源變址寄存器,存放源操作數(shù)地址的偏移量;lDI目的變址寄存器,存放目的操
10、作數(shù)地址的偏移量; SP、BP的段基址由寄存器SS提供,SI、DI其段基址由寄存器DS提供。1515電子科學(xué)系電子科學(xué)系80868088的的EU有如下特點(diǎn)有如下特點(diǎn):(續(xù)):(續(xù))(3) 加法器是算術(shù)邏輯的主要部件,絕大部分指令的執(zhí)行都由加法器來(lái)完成。(4) 標(biāo)志寄存器FR共有16位,是一個(gè)16寄存器,其中9位作標(biāo)志位,另外7位未用,所用的各位含義如下:電子科學(xué)系電子科學(xué)系狀態(tài)標(biāo)志狀態(tài)標(biāo)志它是操作在執(zhí)行后,決定算術(shù)邏輯部件ALU處在何種狀態(tài),這種狀態(tài)會(huì)影響后面的操作。控制標(biāo)志控制標(biāo)志它是人為設(shè)置的,指令系統(tǒng)中有專門(mén)的指令用于控制標(biāo)志的設(shè)置和清除,每個(gè)控制標(biāo)志都對(duì)每一種特定的功能起控制作用。OF
11、1511DF10IF9TF8SF7ZF6AF4PF2CF0控制標(biāo)志位:TF、IF、DF狀態(tài)標(biāo)志位:CF、PF、AF、ZF、SF、OF電子科學(xué)系電子科學(xué)系lCF進(jìn)位標(biāo)志,加法時(shí)的最高位(D7或D15)產(chǎn)生進(jìn)位或減法時(shí)最高位出現(xiàn)借位,則CF=1,否則CF=0;lAF輔助進(jìn)位標(biāo)志,供BCD碼使用。當(dāng)D3位出現(xiàn)進(jìn)位或借位時(shí)AF=1,否則AF=0;lOF溢出標(biāo)志,帶符號(hào)數(shù)進(jìn)行算術(shù)運(yùn)算時(shí),其結(jié)果超出了8位或16位的表示范圍,產(chǎn)生溢出,則OF=1,否則OF=0;電子科學(xué)系電子科學(xué)系ZF零標(biāo)志,運(yùn)算結(jié)果各位都為零,則ZF=1,否則ZF=0;SF符號(hào)標(biāo)志,運(yùn)算結(jié)果為負(fù)數(shù)時(shí),即運(yùn)算結(jié)果的最高位為1,則SF=1,否
12、則SF=0;PF奇偶標(biāo)志,反映操作結(jié)果中“1”的個(gè)數(shù)的情況,若有偶數(shù)個(gè)“1”,則PF=1,否則PF=0。電子科學(xué)系電子科學(xué)系3個(gè)是控制標(biāo)志位個(gè)是控制標(biāo)志位DF方向標(biāo)志,用來(lái)控制數(shù)據(jù)串操作指令的步進(jìn)方向;當(dāng)設(shè)置DF=1時(shí),將以遞減順序?qū)?shù)據(jù)串中的數(shù)據(jù)進(jìn)行處理。當(dāng)設(shè)置DF=0時(shí),遞增。IF中斷允許標(biāo)志,當(dāng)設(shè)置IF=1,開(kāi)中斷,CPU可響應(yīng)可屏蔽中斷請(qǐng)求;當(dāng)設(shè)置IF=0時(shí),關(guān)中斷,CPU不響應(yīng)可屏蔽中斷請(qǐng)求。TF陷阱標(biāo)志,為程序調(diào)試而設(shè)的。當(dāng)設(shè)置TF=1,CPU處于單步執(zhí)行指令的方式;當(dāng)設(shè)置TF=0時(shí),CPU正常執(zhí)行程序。返回電子科學(xué)系電子科學(xué)系4.2.2 總線接口部件總線接口部件BIU總線接口部件
13、的功能是負(fù)責(zé)與存儲(chǔ)器、IO端口傳送數(shù)據(jù),即BIU管理在存儲(chǔ)器中存取程序和數(shù)據(jù)的實(shí)際處理過(guò)程??偩€接口部件由下列各部分組成:(1) 4個(gè)段地址寄存器,即 CS16位代碼段寄存器; DS16位數(shù)據(jù)段寄存器; ES16位附加段寄存器; SS16位堆棧段寄存器。(2) 16位指令指針寄存器IP。(3) 20位的地址加法器。(4) 6字節(jié)的指令隊(duì)列。電子科學(xué)系電子科學(xué)系80868088的BIU有如下特點(diǎn):(1) 8086的指令隊(duì)列為6個(gè)字節(jié),8088的指令隊(duì)列為4個(gè)字節(jié)。不管是8086還是8088,都會(huì)在執(zhí)行指令的同時(shí),從內(nèi)存中取下一條指令或下幾條指令,取來(lái)的指令就放在指令隊(duì)列中。這樣,一般情況下,CP
14、U執(zhí)行完一條指令就可以立即執(zhí)行下一條指令,而不需要像以往的計(jì)算機(jī)那樣,讓CPU輪番進(jìn)行取指令和執(zhí)行指令的操作,從而提高了CPU的效率。(2) 地址加法器用來(lái)產(chǎn)生20位地址。上面已經(jīng)提到,8086可用20位地址尋址1M字節(jié)的內(nèi)存空間,但8086內(nèi)部所有的寄存器都是16位的,所以需要由一個(gè)附加的機(jī)構(gòu)來(lái)根據(jù)16位寄存器提供的信息計(jì)算出20位的物理地址,這個(gè)機(jī)構(gòu)就是20位的地址加法器。電子科學(xué)系電子科學(xué)系BIU和EU的工作協(xié)調(diào):(1) 每當(dāng)8086的指令隊(duì)列中有兩個(gè)空字節(jié),或者8088的指令隊(duì)列中有一個(gè)空字節(jié)時(shí),總線接口部件就會(huì)自動(dòng)把指令取到指令隊(duì)列中。(2) 每當(dāng)執(zhí)行部件準(zhǔn)備執(zhí)行一條指令時(shí),它會(huì)從總
15、線接口部件的指令隊(duì)列前部取出指令的代碼,然后用幾個(gè)時(shí)鐘周期去執(zhí)行指令。電子科學(xué)系電子科學(xué)系 在執(zhí)行指令的過(guò)程中,如果必須訪問(wèn)存儲(chǔ)器或者輸入輸出設(shè)備,那么,執(zhí)行部件就會(huì)請(qǐng)求總線接口部件,進(jìn)入總線周期,完成訪問(wèn)內(nèi)存或者輸入輸出端口的操作;如果此時(shí)總線接口部件正好處于空閑狀態(tài),那么,會(huì)立即響應(yīng)執(zhí)行部件的總線請(qǐng)求。但有時(shí)會(huì)遇到這樣的情況,執(zhí)行部件請(qǐng)求總線接口部件訪問(wèn)總線時(shí),總線接口部件正在將某個(gè)指令字節(jié)取到指令隊(duì)列中,此時(shí)總線接口部件將首先完成這個(gè)取指令的總線周期,然后再去響應(yīng)執(zhí)行部件發(fā)出的訪問(wèn)總線的請(qǐng)求。電子科學(xué)系電子科學(xué)系(3) 當(dāng)指令隊(duì)列已滿,而且執(zhí)行部件又沒(méi)有總線訪問(wèn)時(shí),總線接口部件便進(jìn)入空閑
16、狀態(tài)。(4) 在執(zhí)行轉(zhuǎn)移指令、調(diào)用指令和返回指令時(shí),下面要執(zhí)行的指令就不是在程序中緊接著的那條指令了,而總線接口部件往指令隊(duì)列裝入指令時(shí),總是按順序進(jìn)行的,這樣,指令隊(duì)列中已經(jīng)裝入的字節(jié)就沒(méi)有用了。遇到這種情況,指令隊(duì)列中的原有內(nèi)容被自動(dòng)消除,總線接口部件會(huì)接著往指令隊(duì)列中裝入另一個(gè)程序段中的指令。電子科學(xué)系電子科學(xué)系4.2.3 存儲(chǔ)器組織存儲(chǔ)器組織 8086/8088系統(tǒng)中的存儲(chǔ)器按字節(jié)編址,CPU有20條地址線,可尋址的最大存儲(chǔ)空間是220=1M,每個(gè)字節(jié)對(duì)應(yīng)唯一一個(gè)20位的物理地址。表示為:(00000H)=23H(00001H)=11H(FFFFFH)=64h23H00000H11HA
17、9H09H00001HFFFFDHFFFFEH64HFFFFFH物理地址存放的數(shù)據(jù)電子科學(xué)系電子科學(xué)系當(dāng)存放的數(shù)據(jù)是一個(gè)字時(shí),其低位字節(jié)放在低地址,高位字節(jié)放在高地址,字的地址用低位字節(jié)的地址表示。表示為:(00000H)=1123H(0000DH)=09A9H(FFFFEH)=6409H23H00000H11HA9H09H00001HFFFFDHFFFFEH64HFFFFFH物理地址存放的數(shù)據(jù)字字字電子科學(xué)系電子科學(xué)系當(dāng)字的地址是偶數(shù)地址時(shí),即從偶數(shù)地址開(kāi)始存放,稱這樣存放的字為規(guī)則字;當(dāng)字的地址是奇數(shù)地址時(shí),即從奇數(shù)地址開(kāi)始存放,稱這樣的字為非規(guī)則字。23H00000H11HA9H09H0
18、0001HFFFFDHFFFFEH64HFFFFFH物理地址存放的數(shù)據(jù)規(guī)則字非規(guī)則字規(guī)則字電子科學(xué)系電子科學(xué)系存儲(chǔ)器與8086CPU連接時(shí),1M的空間,實(shí)際被分成兩個(gè)512K的存儲(chǔ)空間。A19A1高位(奇數(shù))庫(kù)高位(奇數(shù))庫(kù)D15D8SELA19A1低位(偶數(shù))庫(kù)低位(偶數(shù))庫(kù)D7D0SELA19A1A0BHE=1D15D8D7D0A0 =0BHEBHE=0A0 =1(A0 =0 且BHE=0,兩庫(kù)同時(shí)被選中)電子科學(xué)系電子科學(xué)系存儲(chǔ)器與8086CPU連接時(shí),對(duì)規(guī)則字的存取,需要一個(gè)總線周期;對(duì)非規(guī)則的存取,則需要兩個(gè)總線周期。電子科學(xué)系電子科學(xué)系存儲(chǔ)器與8088CPU連接時(shí),因8088外部的
19、數(shù)據(jù)總線是8位,因此對(duì)應(yīng)的1M的存儲(chǔ)空間是單一的。A19A01M存儲(chǔ)空間存儲(chǔ)空間D7D0A19A0D7D0 對(duì)8088來(lái)說(shuō),每一個(gè)總線周期只能完成一個(gè)字節(jié)的存取操作電子科學(xué)系電子科學(xué)系存儲(chǔ)器的分段和物理地址的形成存儲(chǔ)器的分段和物理地址的形成CPU內(nèi)部所有寄存器和ALU都是16位的,不能直接尋址1M內(nèi)存空間。8086/8088把1M存儲(chǔ)空間分成若干邏輯段,每段最多為64KB,各邏輯段的起始地址叫基址;段內(nèi)任意一個(gè)存儲(chǔ)單元的地址,可用相對(duì)于基址的偏移量來(lái)表示,稱為段內(nèi)偏移地址,通常存放于IP、SP、SI和DI中。邏輯地址的表示格式: 段基址:偏移地址電子科學(xué)系電子科學(xué)系對(duì)于任何一個(gè)物理地址,可以惟
20、一地被包含在一個(gè)邏輯對(duì)于任何一個(gè)物理地址,可以惟一地被包含在一個(gè)邏輯段中,也可包含在多個(gè)相互重疊的邏輯段中,只要有段段中,也可包含在多個(gè)相互重疊的邏輯段中,只要有段地址和段內(nèi)偏移地址就可以訪問(wèn)到這個(gè)物理地址所對(duì)應(yīng)地址和段內(nèi)偏移地址就可以訪問(wèn)到這個(gè)物理地址所對(duì)應(yīng)的存儲(chǔ)空間,如下圖所示。的存儲(chǔ)空間,如下圖所示。電子科學(xué)系電子科學(xué)系在80868088存儲(chǔ)空間中,把16字節(jié)的存儲(chǔ)空間稱作一節(jié)(paragraph)。為了簡(jiǎn)化操作,要求各個(gè)邏輯段從節(jié)的整數(shù)邊界開(kāi)始,也就是說(shuō)段首地址低4位應(yīng)該是“0”,因此就把段首地址的高16位稱為“段基址”,存放在段寄存器DS或CS或SS或ES中,段內(nèi)的偏移地址存放在IP
21、或SP中。若已知當(dāng)前有效的代碼段、數(shù)據(jù)段、附加段和堆棧段的段基址分別為1055H,250AH,8FFBH和EFF0H,那么它們?cè)诖鎯?chǔ)器中的分布情況如圖4.4所示。電子科學(xué)系電子科學(xué)系圖圖4.4電子科學(xué)系電子科學(xué)系邏輯地址的表示格式: 段基址:偏移地址物理地址= 段基址10H偏移地址如:已知某存儲(chǔ)單元的邏輯地址為2000H:3300H,求該存儲(chǔ)單元的物理地址?解:物理地址= 段基址10H偏移地址 =2000H 10H3300H =23300H電子科學(xué)系電子科學(xué)系電子科學(xué)系電子科學(xué)系4個(gè)段寄存器分別指向4個(gè)現(xiàn)行可尋址的分段的起始字節(jié)單元。一般指令程序存放在代碼段中,段地址來(lái)源于代碼段寄存器,偏移地
22、址來(lái)源于指令指針I(yè)P。當(dāng)涉及到一個(gè)堆棧操作時(shí),段地址寄存器為SS,偏移地址來(lái)源于棧指針寄存器SP。當(dāng)涉及到一個(gè)操作數(shù)時(shí),則由數(shù)據(jù)段寄存器DS或附加段寄存器ES作為段寄存器,而偏地址是由16位偏移量得到。16位偏移量可以是指令中的偏移量加上16位地址寄存器的值組成,取決于指令的尋址方式。電子科學(xué)系電子科學(xué)系圖圖4.64.2.4 8086總線的工作周期總線的工作周期為了取得指令和傳送數(shù)據(jù)的協(xié)調(diào)工作,就需要為了取得指令和傳送數(shù)據(jù)的協(xié)調(diào)工作,就需要CPU的總線接口部件的總線接口部件執(zhí)行一個(gè)總線周期。在執(zhí)行一個(gè)總線周期。在80868088中,一個(gè)最基本的總線周期由中,一個(gè)最基本的總線周期由4個(gè)時(shí)鐘周期組
23、成,時(shí)鐘周期是個(gè)時(shí)鐘周期組成,時(shí)鐘周期是CPU的基本時(shí)間計(jì)量單位,它由的基本時(shí)間計(jì)量單位,它由計(jì)算機(jī)主頻決定。例如,計(jì)算機(jī)主頻決定。例如,8086的主頻為的主頻為10MHz,一個(gè)時(shí)鐘周期就,一個(gè)時(shí)鐘周期就是是100ns。在一個(gè)最基本的總線周期中,常將。在一個(gè)最基本的總線周期中,常將4個(gè)時(shí)鐘周期分別稱個(gè)時(shí)鐘周期分別稱為為4個(gè)狀態(tài),即個(gè)狀態(tài),即T1狀態(tài)、狀態(tài)、T2狀態(tài)、狀態(tài)、T3狀態(tài)、狀態(tài)、T4狀態(tài)。典型的狀態(tài)。典型的8086總線周期序列見(jiàn)圖總線周期序列見(jiàn)圖4.6。電子科學(xué)系電子科學(xué)系CPU往多路復(fù)用總線上發(fā)出地址信息,以指出要尋址的存儲(chǔ)單元或外設(shè)端口的地址。CPU從總線上撤消地址,而使總線的低1
24、6位浮置成高阻狀態(tài),為傳輸數(shù)據(jù)做準(zhǔn)備。總線的最高四位(A16A19)用來(lái)輸出本總線周期狀態(tài)信息。這些狀態(tài)信息用來(lái)表示中斷允許狀態(tài),當(dāng)前正在使用的段寄存器名等。多路總線的高4位繼續(xù)提供狀態(tài)信息,而多路總線的低16位(8088則為低8位)上出現(xiàn)由CPU寫(xiě)出的數(shù)據(jù)或者CPU從存儲(chǔ)器或端口讀入的數(shù)據(jù)。電子科學(xué)系電子科學(xué)系在有些情況下,被寫(xiě)入數(shù)據(jù)或者被讀取數(shù)據(jù)的外設(shè)或存儲(chǔ)器不能及時(shí)地配合CPU傳送數(shù)據(jù)。這時(shí),外設(shè)或存儲(chǔ)器會(huì)通過(guò)“READY”信號(hào)線在T3狀態(tài)啟動(dòng)之前,向CPU發(fā)一個(gè)“數(shù)據(jù)未準(zhǔn)備好”信號(hào),于是CPU會(huì)在T3之后插入一個(gè)或多個(gè)附加的時(shí)鐘周期TW,TW也叫等待狀態(tài)。在TW狀態(tài),總線上的信息情況和
25、T3狀態(tài)的信息情況一樣。當(dāng)指定的存儲(chǔ)器或外設(shè)完成數(shù)據(jù)傳送時(shí),便在“READY”線上發(fā)出“準(zhǔn)備好”信號(hào),CPU接收到這一信號(hào)后,會(huì)自動(dòng)脫離TW狀態(tài)而進(jìn)入T4狀態(tài)。電子科學(xué)系電子科學(xué)系只有在CPU和內(nèi)存或IO接口之間傳輸數(shù)據(jù),以及填充指令隊(duì)列時(shí),CPU才執(zhí)行總線周期??梢?jiàn),如果在一個(gè)總線周期之后,不立即執(zhí)行下一個(gè)總線周期,那么系統(tǒng)總線就處在空閑狀態(tài),此時(shí),執(zhí)行空閑周期。在空閑周期中,可以包含一個(gè)或多個(gè)時(shí)鐘周期。在這期間,高4位上,CPU仍然驅(qū)動(dòng)前一個(gè)總線周期的狀態(tài)信息,而且,如果前一個(gè)總線周期為寫(xiě)周期,那么,CPU會(huì)在總線低16位上繼續(xù)驅(qū)動(dòng)數(shù)據(jù)信息;如果前一個(gè)總線周期為讀周期,則在空閑周期中,總線
26、低16位處于高阻狀態(tài)。電子科學(xué)系電子科學(xué)系4.3 80868088 CPU的引腳信號(hào)的引腳信號(hào)和工作模式和工作模式為了盡可能適應(yīng)各種使用場(chǎng)合,在設(shè)計(jì)80868088CPU芯片時(shí),就使得它們可以在兩種模式下工作,即最小模式和最大模式。所謂最小模式,就是在系統(tǒng)中只有80868088一個(gè)微處理器。在這種系統(tǒng)中,所有的總線控制信號(hào)都直接由80868088產(chǎn)生,因此,系統(tǒng)中的總線控制邏輯電路被減到最少。最大模式是相對(duì)最小模式而言,它用在中等規(guī)模的或者大型的80868088系統(tǒng)中。在此系統(tǒng)中,包含兩個(gè)或多個(gè)微處理器,其中一個(gè)主處理器就是80868088,其他的處理器稱為協(xié)處理器,它們是協(xié)助主處理器工作的。
27、和80868088配合的協(xié)處理器有兩個(gè),一個(gè)是數(shù)值運(yùn)算協(xié)處理器8087,一個(gè)是輸入輸出協(xié)處理器8089。電子科學(xué)系電子科學(xué)系4.3.1 80868088的引腳信號(hào)和功能的引腳信號(hào)和功能8086和8088的引腳信號(hào)圖如圖4.7所示。1. AD15AD0(address data bus)地址數(shù)據(jù)復(fù)用引腳(雙向工作)在8088中,A8A15并不作復(fù)用,它們只用來(lái)輸出地址,稱為A8A15。作為復(fù)用引腳,在總線周期的T1狀態(tài)用來(lái)輸出要訪問(wèn)的存儲(chǔ)器或IO端口地址。T2T3狀態(tài),對(duì)讀周期來(lái)說(shuō),處于浮空狀態(tài);對(duì)寫(xiě)周期來(lái)說(shuō),則是傳輸數(shù)據(jù)。電子科學(xué)系電子科學(xué)系圖圖4.7電子科學(xué)系電子科學(xué)系在8086系統(tǒng)中,特別
28、要注意,一般常將AD0信號(hào)作為低8位數(shù)據(jù)的選通信號(hào),因?yàn)椋慨?dāng)CPU和偶地址單元或偶地址端口交換數(shù)據(jù)時(shí),在T1狀態(tài),AD0引腳傳送的地址信號(hào)必定為低電平;在其他狀態(tài),則用來(lái)傳送數(shù)據(jù)。而CPU的傳輸特性決定了只要是偶地址單元或偶地址端口交換數(shù)據(jù),那么,CPU必定通過(guò)總線低8位,即AD7AD0傳輸數(shù)據(jù)??梢?jiàn),如果在總線周期的T1狀態(tài),AD0為低電平,實(shí)際上就指示了在這一總線周期的其余狀態(tài)中,CPU將用總線低8位和偶地址單元或偶地址端口交換數(shù)據(jù)。因此,AD0和下面講到的BHE類似,可以用來(lái)作為接于數(shù)據(jù)總線低8位上的8位外設(shè)接口芯片的選通信號(hào)。AD15AD0在CPU響應(yīng)中斷,以及系統(tǒng)總線“保持響應(yīng)”時(shí)
29、,都被浮置為高阻狀態(tài)。電子科學(xué)系電子科學(xué)系2. A19S6A16/S3(address/status)地址/狀態(tài)復(fù)用引腳(輸出)A19/S6A16/S3在總線周期的T1狀態(tài),用來(lái)輸出地址的最高4位。在總線周期的T2,T3,TW和T4狀態(tài)時(shí),用來(lái)輸出狀態(tài)信息。其中,S6為0,用來(lái)指示80868088當(dāng)前與總線相連,所以在T2,T3,TW和T4狀態(tài)時(shí),80868088總是使S6等于0,以表示80868088當(dāng)前連在總線上。S5表明中斷允許標(biāo)志的當(dāng)前設(shè)置,若為1,表示當(dāng)前允許可屏蔽中斷請(qǐng)求;若為0,則禁止一切可屏蔽中斷。S4,S3合起來(lái)指出當(dāng)前正在使用哪段寄存器。電子科學(xué)系電子科學(xué)系3. BHES7
30、(bus high enable/status)高8位數(shù)據(jù)總線允許狀態(tài)復(fù)用引腳(輸出)在總線周期的T1狀態(tài),8086在BHES7引腳輸出BHE信號(hào),表示高8位數(shù)據(jù)總線D15D8上的數(shù)據(jù)有效。在T2,T3,TW和T4狀態(tài),BHES7引腳輸出狀態(tài)信號(hào)S7。不過(guò),在當(dāng)前的芯片(8086,8086-1,8086-2)設(shè)計(jì)中,S7并未被賦予任何實(shí)際意義。在8088系統(tǒng)中,第34腳不是BHE7S7,而是被賦予另外的信號(hào)。在最大模式時(shí),此引腳恒為高電平;在最小模式中,則為SS0,它和DTR,MIO一起決定了8088芯片當(dāng)前總線周期的讀寫(xiě)動(dòng)作。電子科學(xué)系電子科學(xué)系4. NMI(non-maskable int
31、errupt)非屏蔽中斷引腳(輸入)非屏蔽中斷信號(hào)是一個(gè)由低到高的上升沿。這類中斷不受中斷標(biāo)志IF的影響,也不能用軟件進(jìn)行屏蔽。每當(dāng)NMI端進(jìn)入一個(gè)正沿觸發(fā)信號(hào)時(shí),CPU就會(huì)在結(jié)束當(dāng)前指令后,進(jìn)入對(duì)應(yīng)于中斷類型號(hào)為2的非屏蔽中斷處理程序。5. INTR(interrupt request)可屏蔽中斷請(qǐng)求信號(hào)引腳(輸入)可屏蔽中斷請(qǐng)求信號(hào)為高電平有效,CPU在執(zhí)行每條指令的最后一個(gè)時(shí)鐘周期會(huì)對(duì)INTR信號(hào)進(jìn)行采樣,如果CPU中的中斷允許標(biāo)志為1,并且又接收到INTR信號(hào),那么,CPU就會(huì)在結(jié)束當(dāng)前指令后,響應(yīng)中斷請(qǐng)求,進(jìn)入一個(gè)中斷處理子程序。電子科學(xué)系電子科學(xué)系6. RD(read)讀信號(hào)引腳(
32、輸出)此信號(hào)指出將要執(zhí)行一個(gè)對(duì)內(nèi)存或IO端口的讀操作。到底是讀取內(nèi)存單元中的數(shù)據(jù)還是IO端口中的數(shù)據(jù),這決定于MIO信號(hào)。在一個(gè)執(zhí)行讀操作的總線周期中,RD信號(hào)在T2,T3和TW狀態(tài)均為低電平。在系統(tǒng)總線進(jìn)入“保持響應(yīng)”期間,RD引腳被浮置為高阻狀態(tài)。7. CLK(clock)時(shí)鐘引腳(輸入)80868088要求時(shí)鐘信號(hào)的占空比為33%,即13周期為高電平,23周期為低電平。80868088的時(shí)鐘頻率要求為5MHz,8086-1的時(shí)鐘頻率為10MHz,8086-2的時(shí)鐘頻率則為8MHz,時(shí)鐘信號(hào)為CPU和總線控制邏輯電路提供定時(shí)手段。電子科學(xué)系電子科學(xué)系8. RESET(reset)復(fù)位信號(hào)引
33、腳(輸入)復(fù)位信號(hào)為高電平有效。80868088要求復(fù)位信號(hào)至少維持4個(gè)時(shí)鐘周期的高電平才有效。復(fù)位信號(hào)來(lái)到后,CPU便結(jié)束當(dāng)前操作,并對(duì)處理器標(biāo)志寄存器、IP,DS,SS,ES及指令隊(duì)列清零,而將CS設(shè)置為FFFFH。當(dāng)復(fù)位信號(hào)變?yōu)榈碗娖綍r(shí),CPU從FFFF0H開(kāi)始執(zhí)行程序。9. READY(ready)“準(zhǔn)備好”信號(hào)引腳(輸入)“準(zhǔn)備好”信號(hào)實(shí)際上是由所訪問(wèn)的存儲(chǔ)器或IO設(shè)備發(fā)來(lái)的響應(yīng)信號(hào),高電平有效?!皽?zhǔn)備好”信號(hào)有效時(shí),表示內(nèi)存或IO設(shè)備準(zhǔn)備就緒,馬上就可進(jìn)行一次數(shù)據(jù)傳輸。CPU在每個(gè)總線周期的T3狀態(tài)開(kāi)始對(duì)READY信號(hào)進(jìn)行采樣。如果檢測(cè)到READY為電子科學(xué)系電子科學(xué)系低電平,則在
34、T3狀態(tài)之后插入等待狀態(tài)TW,在TW狀態(tài),CPU也對(duì)READY進(jìn)行采樣,若READY仍為低電平,則會(huì)繼續(xù)插入TW,所以TW可以插入一個(gè)或多個(gè)。直到READY變?yōu)楦唠娖胶螅胚M(jìn)入T4狀態(tài),完成數(shù)據(jù)傳送過(guò)程,從而結(jié)束當(dāng)前總線周期。10. TEST(test)測(cè)試信號(hào)引腳(輸入)測(cè)試信號(hào)為低電平有效。TEST信號(hào)是和指令WAIT結(jié)合起來(lái)使用的,在CPU執(zhí)行WAIT指令時(shí),CPU處于空轉(zhuǎn)狀態(tài)進(jìn)行等待;當(dāng)8086的TEST信號(hào)有效時(shí),等待狀態(tài)結(jié)束,CPU繼續(xù)往下執(zhí)行被暫停的指令。電子科學(xué)系電子科學(xué)系11. MNMX(minimummaximum mode control)最小最大模式控制信號(hào)引腳(輸入)
35、它是最大模式及最小模式的選擇控制端。此引腳固定接為+5V時(shí),CPU處于最小模式;如果接地,則CPU處于最大模式。12. GND地和Vcc電源引腳80868088均用單一+5V電源。80868088CPU的第24腳第31腳在最大模式和最小模式下有不同的名稱和定義。電子科學(xué)系電子科學(xué)系4.3.2 最小工作方式最小工作方式當(dāng)MN/MX(33號(hào)引腳)接+5V時(shí),8086/8088處于最小工作方式,整個(gè)系統(tǒng)只有一片CPU,所有的總線控制信號(hào)都由該CPU產(chǎn)生。INTA中斷響應(yīng)信號(hào)(輸出),是CPU對(duì)外設(shè)的中斷請(qǐng)求的回答信號(hào)。ALE地址鎖存允許信號(hào)(輸出),是CPU在每個(gè)總線周期T1發(fā)出的,高電平表示當(dāng)前地
36、址/數(shù)據(jù)復(fù)用線上輸出的是地址信息。接下頁(yè)電子科學(xué)系電子科學(xué)系DEN數(shù)據(jù)允許信號(hào)(輸出),表示CPU準(zhǔn)備好接受和發(fā)送數(shù)據(jù)。DT/R數(shù)據(jù)收發(fā)信號(hào),用其控制數(shù)據(jù)的傳送方向。此引腳為高電平,則CPU進(jìn)行數(shù)據(jù)發(fā)送;反之,CPU進(jìn)行數(shù)據(jù)接受;M/IO存儲(chǔ)器/IO控制信號(hào),高電平表示訪問(wèn)存儲(chǔ)器,低電平表示訪問(wèn)I/O。WR寫(xiě)信號(hào)(輸出)此引腳低電平時(shí),表示CPU正在執(zhí)行存儲(chǔ)器或I/O的寫(xiě)操作。電子科學(xué)系電子科學(xué)系HOLD總線保持請(qǐng)求信號(hào)(輸入),是系統(tǒng)中其他總線主控部件向CPU發(fā)出的請(qǐng)求占用總線的申請(qǐng)信號(hào)。HLDA總線保持響應(yīng)信號(hào)(輸出),是CPU對(duì)請(qǐng)求占用總線使用權(quán)的響應(yīng)信號(hào)。說(shuō)明:對(duì)8088來(lái)說(shuō),第34引
37、腳為SSO,與DT/R、M/IO的組合,反映了當(dāng)前總線周期的操作。電子科學(xué)系電子科學(xué)系圖4.8是8086在最小模式下的典型配置。由圖4.8可看到,在8086的最小模式中,硬件包括:1片8284A,作為時(shí)鐘發(fā)生器;3片8282或74LS373,用來(lái)作為地址鎖存器;當(dāng)系統(tǒng)中所連的存儲(chǔ)器和外設(shè)較多時(shí),需要增加數(shù)據(jù)總線的驅(qū)動(dòng)能力,這時(shí),要用兩片82868287作為總線收發(fā)器。電子科學(xué)系電子科學(xué)系圖圖4.8電子科學(xué)系電子科學(xué)系4.3.3 最大工作模式最大工作模式當(dāng)MN/MX(33號(hào)引腳)接地時(shí),8086/8088處于最大工作方式,系統(tǒng)的總線控制信號(hào)由專用的總線控制器8288提供。最大方式用于多處理器和協(xié)
38、處理器的結(jié)構(gòu)中。最大工作模式的典型配置如圖4.12所示。這時(shí),80868088的MNMX引腳接地。電子科學(xué)系電子科學(xué)系圖圖4.12電子科學(xué)系電子科學(xué)系8086引腳信號(hào)定義引腳信號(hào)定義公 用 信 號(hào) 引 腳 名 稱 功 能 引 腳 號(hào) 類 型 A D15 A D0 地 址 /數(shù) 據(jù) 總 線 2 16, 39 雙 向 A19/S6 A16/S3 地 址 /狀 態(tài) 總 線 35 38 輸 出 BHE/S7 數(shù) 據(jù) 總 線 高 8 位 允 許 /狀 態(tài) 34 輸 出 M N /MX 最 小 /最 大 方 式 控 制 33 輸 入 RD 讀 控 制 32 輸 出 TEST 測(cè) 試 信 號(hào) 23 輸 出
39、R E A D Y 存 儲(chǔ) 器 或 I/O 準(zhǔn) 備 好 信 號(hào) 22 輸 入 R E S E T 系 統(tǒng) 復(fù) 位 21 輸 入 N M I 不 可 屏 蔽 中 斷 請(qǐng) 求 17 輸 入 IN T R 可 屏 蔽 中 斷 請(qǐng) 求 18 輸 入 C LK 系 統(tǒng) 時(shí) 鐘 19 輸 入 V C C + 5V 電 源 40 輸 入 G N D 接 地 1, 20 輸 入 電子科學(xué)系電子科學(xué)系最小工作方式信號(hào)引腳 名稱 功能 引腳號(hào) 類型 HOLD 保持請(qǐng)求 31 輸入 HLDA 保持響應(yīng) 30 輸出 WR 寫(xiě)控制 29 輸出 M/IO 存儲(chǔ)器/IO 控制 28 輸出 DT/R 數(shù)據(jù)發(fā)送/接受 27 輸
40、出 DEN 數(shù)據(jù)允許 26 輸出 ALE 地址鎖存允許 26 輸出 INTA 中斷響應(yīng) 24 輸出 電子科學(xué)系電子科學(xué)系最大工作方式信號(hào)引腳 名稱 功能 引腳號(hào) 類型 RQ/0 , 1GT 請(qǐng)求/允許總線訪問(wèn)控制 30,31 雙向 LOCK 總線優(yōu)先權(quán)鎖定控制 29 輸出 2S、1S、0S 總線周期狀態(tài) 2628 輸出 QS1、QS0 指令隊(duì)列狀態(tài) 2425 輸出 電子科學(xué)系電子科學(xué)系4.4 80868088的主要操作功能的主要操作功能一個(gè)微型機(jī)系統(tǒng)要完成各種任務(wù),其中有一些操作是最基本的。本節(jié)講解以下幾項(xiàng)8086的主要操作: 系統(tǒng)的復(fù)位和啟動(dòng)操作; 總線操作; 中斷操作; 最小工作模式下的總
41、線請(qǐng)求; 最大工作模式下的讀寫(xiě)操作。 電子科學(xué)系電子科學(xué)系4.4.1 系統(tǒng)的復(fù)位和啟動(dòng)操作80868088的復(fù)位和啟動(dòng)操作是在RESET引腳上加上觸發(fā)信號(hào)來(lái)執(zhí)行的。80868088要求復(fù)位信號(hào)(RESET)至少有4個(gè)時(shí)鐘周期的高電平,如果是初次加電的啟動(dòng),則要求有大于50s的高電平。電子科學(xué)系電子科學(xué)系標(biāo)志寄存器FR指令指針寄存器IPCSDSSSES指令隊(duì)列其他寄存器清零0000HFFFFH0000H0000H0000H空0000H復(fù)位時(shí)內(nèi)部各寄存器的值在復(fù)位的時(shí)候,代碼段寄存器在復(fù)位的時(shí)候,代碼段寄存器CS和指令指針寄存器和指令指針寄存器IP分別初始化為分別初始化為FFFFH和和0000H。
42、所以,。所以,80868088在復(fù)位之后再重新啟動(dòng)時(shí),便從內(nèi)存的在復(fù)位之后再重新啟動(dòng)時(shí),便從內(nèi)存的FFFF0H處開(kāi)處開(kāi)始執(zhí)行指令,使系統(tǒng)在啟動(dòng)時(shí),能自動(dòng)進(jìn)入系統(tǒng)程始執(zhí)行指令,使系統(tǒng)在啟動(dòng)時(shí),能自動(dòng)進(jìn)入系統(tǒng)程序。序。復(fù)位信號(hào)復(fù)位信號(hào)RESET從高電平到低電平的跳變會(huì)觸發(fā)從高電平到低電平的跳變會(huì)觸發(fā)CPU內(nèi)部的一個(gè)復(fù)位邏輯電路,經(jīng)過(guò)內(nèi)部的一個(gè)復(fù)位邏輯電路,經(jīng)過(guò)7個(gè)時(shí)鐘周期之后,個(gè)時(shí)鐘周期之后,CPU就被啟動(dòng)而恢復(fù)正常工作,即從就被啟動(dòng)而恢復(fù)正常工作,即從FFFF0H處開(kāi)始處開(kāi)始執(zhí)行程序。執(zhí)行程序。電子科學(xué)系電子科學(xué)系4.4.2 總線操作總線操作80868088 CPU中各單元之間以及與外設(shè)的數(shù)據(jù)中
43、各單元之間以及與外設(shè)的數(shù)據(jù)交換,都是通過(guò)總線來(lái)進(jìn)行的??偩€操作有兩種交換,都是通過(guò)總線來(lái)進(jìn)行的??偩€操作有兩種情況,即情況,即總線讀操作總線讀操作及及總線寫(xiě)操作總線寫(xiě)操作??偩€讀操作指CPU從存儲(chǔ)器或外設(shè)端口讀取數(shù)據(jù)??偩€寫(xiě)操作指CPU把數(shù)據(jù)寫(xiě)入存儲(chǔ)器或外設(shè)端口。1.最小模式下的總線操作最小模式下的總線操作電子科學(xué)系電子科學(xué)系(1) 8086 CPU最小模式下的總線讀周期最小模式下的總線讀周期電子科學(xué)系電子科學(xué)系(1) T1狀態(tài)狀態(tài) l當(dāng) CPU 準(zhǔn)備開(kāi)始一個(gè)總線讀周期時(shí),用 M/IO 信號(hào)指出當(dāng)前執(zhí)行的讀操作是從存儲(chǔ)器讀,還是從I/O 端口讀。M/IO 信號(hào)的有效電平一直保持到整個(gè)總線周期的
44、結(jié)束。l在 T1 狀態(tài),CPU 經(jīng)地址/數(shù)據(jù)復(fù)用線 AD15AD0,地址/狀態(tài)復(fù)用線 A19/S7A16/S3 發(fā)出20位地址信息。l發(fā)出地址信息的同時(shí) BHE 和 ALE 控制信號(hào)有效。lBHE 信號(hào)用來(lái)表示高位數(shù)據(jù)線上的信息可以使用,用該信號(hào)作為奇地址存儲(chǔ)體的選擇信號(hào),配合地址信號(hào)來(lái)實(shí)現(xiàn)對(duì)存儲(chǔ)單元的尋址。lALE 信號(hào)作為地址鎖存信號(hào),啟動(dòng)鎖存器 8212,在 ALE 信號(hào)下降沿將20位地址和BHE 信號(hào)鎖存。從而把地址信息和狀態(tài)信息分開(kāi)。電子科學(xué)系電子科學(xué)系(2) T2狀態(tài)狀態(tài) l在T2狀態(tài)時(shí),A19/S6A16/S3 上的地址信號(hào)消失,而出現(xiàn) S6S3 狀態(tài)信號(hào),這些狀態(tài)信號(hào)保持到讀周
45、期結(jié)束,狀態(tài)信號(hào)用來(lái)表明當(dāng)前正在使用哪一個(gè)段寄存器,指示可屏蔽中斷允許標(biāo)志 IF 的狀態(tài),以及表明8086 CPU當(dāng)前是連在總線上。lAD15AD0 變成高阻狀態(tài),為讀入數(shù)據(jù)作準(zhǔn)備。lRD 有效信號(hào)為由高電平變成低電平,送至存儲(chǔ)器或I/O端口,開(kāi)始從被選中的存儲(chǔ)單元或I/O端口讀取數(shù)據(jù)。lDEN 也變成低電平有效信號(hào),啟動(dòng)收發(fā)器8286,與在T1狀態(tài)時(shí)已有效的DT/信號(hào)一樣,做好了接收來(lái)自存儲(chǔ)器或I/O端口的數(shù)據(jù)。 電子科學(xué)系電子科學(xué)系(3) T3狀態(tài)狀態(tài) 若存儲(chǔ)器或 I/O 端口已做好數(shù)據(jù)準(zhǔn)備而不需要等待狀態(tài)時(shí),在T3期間將數(shù)據(jù)放到數(shù)據(jù)總線上,在T3結(jié)束時(shí),CPU從AD15AD0上讀取數(shù)據(jù)。
46、(4) TW狀態(tài)狀態(tài) 若存儲(chǔ)器或 I/O設(shè)備來(lái)不及把數(shù)據(jù)放到數(shù)據(jù)總線上,則發(fā)出一個(gè)低電平信號(hào)到CPU的READY端,使 CPU 在 T3 和 T4 之間插入一個(gè)或幾個(gè)TW狀態(tài)等待存儲(chǔ)器或I/O端口的數(shù)據(jù)。電子科學(xué)系電子科學(xué)系8086 CPU這時(shí)的工作過(guò)程是: 在T3狀態(tài)開(kāi)始測(cè)試READY引腳信號(hào),若發(fā)現(xiàn)為高電平,則表示存儲(chǔ)器或 I/O 端口能按時(shí)將數(shù)據(jù)送上數(shù)據(jù)總線,T3 狀態(tài)之后即進(jìn)入 T4 狀態(tài); 若測(cè)試到READY為低電平,則在T3狀態(tài)結(jié)束后,不進(jìn)入T4狀態(tài),而插入一個(gè)或幾個(gè)TW狀態(tài),在每個(gè) TW狀態(tài)開(kāi)始,CPU都測(cè)試READY線,只有發(fā)現(xiàn)它為高電平后,才在該TW結(jié)束后進(jìn)入T4狀態(tài)。 在最
47、后一個(gè)TW狀態(tài),數(shù)據(jù)已經(jīng)出現(xiàn)在數(shù)據(jù)總線上。所以,在最后一個(gè) TW 狀態(tài)中,總線的動(dòng)作和基本總線周期中 T3 狀態(tài)所完成的動(dòng)作完全一樣。而在其他的 TW 狀態(tài),所有控制信號(hào)的電平和 T3 狀態(tài)的一樣,但數(shù)據(jù)尚未出現(xiàn)在數(shù)據(jù)總線上。 電子科學(xué)系電子科學(xué)系(5) T4狀態(tài) 在T4狀態(tài)和前一個(gè)狀態(tài)交界的下降沿處,CPU 對(duì)數(shù)據(jù)總線進(jìn)行采樣,讀取數(shù)據(jù)。2. 8086 CPU最小模式下的總線寫(xiě)周期(1) T1狀態(tài)l 首先使M/IO控制信號(hào)有效,指明是對(duì)存儲(chǔ)器還是對(duì) I/O 接口進(jìn)行操作。此有效電平一直保持到T4 狀態(tài)才結(jié)束。l同時(shí)由 A19/S6A16/S3 和 AD15AD0 的復(fù)用引腳發(fā)出將要訪問(wèn)的存儲(chǔ)
48、單元或 I/O 接口的20位地址。l發(fā)出地址鎖存信號(hào) ALE。ALE 的下降沿對(duì)地址信號(hào)進(jìn)行鎖存,同時(shí)也對(duì) M/IO 信號(hào)和BHE 信號(hào)進(jìn)行鎖存。l使 BHE 信號(hào)有效,作為存儲(chǔ)體的體選信號(hào),配合地址信號(hào)實(shí)現(xiàn)對(duì)奇地址存儲(chǔ)單元的尋址。l使控制數(shù)據(jù)收發(fā)器方向的信號(hào) DT/R信號(hào)為高電平,指出將要傳送的數(shù)據(jù)流方向,收發(fā)器8286發(fā)送數(shù)據(jù),進(jìn)行寫(xiě)操作。電子科學(xué)系電子科學(xué)系電子科學(xué)系電子科學(xué)系(2) T2狀態(tài)狀態(tài)l由 AD15AD0 復(fù)用引腳發(fā)出將要寫(xiě)到存儲(chǔ)單元或 I/O 端口的16位數(shù)據(jù),此數(shù)據(jù)一直保持到 T4 狀態(tài)的中間。lWR引腳發(fā)出寫(xiě)信號(hào),該信號(hào)送到存儲(chǔ)器或 I/O 接口,并保持到T4 狀態(tài)的中
49、間。此時(shí)寫(xiě)操作已準(zhǔn)備就緒,只等待將數(shù)據(jù)寫(xiě)入存儲(chǔ)單元或I/O接口。(3) T3狀態(tài)狀態(tài)lCPU也將在 T3 上升沿測(cè)試 READY 信號(hào),若 READY 為低電平,則表明將訪問(wèn)的存儲(chǔ)單元或 I/O 接口未準(zhǔn)備好接收數(shù)據(jù),CPU將在 T3 與 T4 狀態(tài)之間插入 TW 等待狀態(tài),以等待存儲(chǔ)器或I/O 接口做好準(zhǔn)備工作。l如果測(cè)試到 READY 為高電平,則在 T3 和 T4 狀態(tài)交接處,或是 TW 與 T4 狀態(tài)交接處將數(shù)據(jù)寫(xiě)入存儲(chǔ)單元或I/O接口。電子科學(xué)系電子科學(xué)系(4) T4狀態(tài)狀態(tài) 在T4狀態(tài),數(shù)據(jù)從數(shù)據(jù)總線上被撤除,各種控制信號(hào)和狀態(tài)信號(hào)進(jìn)入無(wú)效狀態(tài),CPU完成了對(duì)存儲(chǔ)單元或I/O接口的
50、寫(xiě)操作。電子科學(xué)系電子科學(xué)系4.4.3 中斷操作中斷操作 當(dāng)CPU正常運(yùn)行時(shí),由于隨機(jī)事件(內(nèi)部或外部)引起CPU暫時(shí)中止正在運(yùn)行的程序,轉(zhuǎn)去執(zhí)行請(qǐng)求中斷的外設(shè)(或內(nèi)部事件)的中斷服務(wù)程序,中斷服務(wù)程序結(jié)束后再返回被中止的程序,這一過(guò)程稱為中斷。l微機(jī)系統(tǒng)為適應(yīng)各種需要,都有一個(gè)中斷系統(tǒng),80868088是16位微處理器,它的中斷系統(tǒng)可以處理256種不同類型的中斷。硬件中斷硬件中斷軟件中斷:軟件中斷:主要來(lái)自主要來(lái)自CPU內(nèi)部的軟件中斷。內(nèi)部的軟件中斷。非屏蔽中斷非屏蔽中斷: NMI引腳輸入,不受中斷標(biāo)志位引腳輸入,不受中斷標(biāo)志位IF控制。控制。可屏蔽中斷可屏蔽中斷:INTR引腳輸入,引腳輸入
51、,由標(biāo)志寄存器中的由標(biāo)志寄存器中的 IF位控制。位控制。電子科學(xué)系電子科學(xué)系 硬件中斷軟件中斷電子科學(xué)系電子科學(xué)系2.中斷向量表 (1)中斷向量的定義-實(shí)際上就是中斷服務(wù)程序的入口地址。 每個(gè)中斷類型號(hào)對(duì)應(yīng)一個(gè)中斷向量。中斷向量占4個(gè)字節(jié)存儲(chǔ)單元,其中前兩個(gè)字節(jié)放中斷向量的偏移地址(IP),且低字節(jié)在前,高字節(jié)在后;后兩個(gè)字節(jié)放中斷向量的段地址(CS),也是低字節(jié)在前,高字節(jié)在后。 (2)中斷向量表-存放中斷向量的存儲(chǔ)區(qū)稱為中斷向量表。通常在存儲(chǔ)器的低地址區(qū)。 8086/8088有256種中斷類型,類型號(hào)為0-255(或0-FFH),共有256個(gè)中斷向量,每個(gè)占4個(gè)存儲(chǔ)單元,所以需要1024個(gè)
52、字節(jié),在存儲(chǔ)器的最低端,地址從00000H-003FFH,這塊地址空間就是中斷向量表。電子科學(xué)系電子科學(xué)系電子科學(xué)系電子科學(xué)系 從表中,知道了中斷類型號(hào),便可計(jì)算出相應(yīng)的中斷向量在表中存放的位置,稱為中斷向量表地址,或稱為中斷向量指針。從中斷向量表地址中取出中斷向量,便得到了該中斷類型號(hào)的中斷服務(wù)程序入口地址。即 中斷類型號(hào)4 = 中斷向量指針的低地址 中斷類型號(hào)4+2 = 中斷向量指針的高地址 (中斷向量指針的低地址) (IP) (中斷向量指針的高地址) (CS)例1:中斷類型號(hào)為27H 則中斷向量指針的低地址= 27H 4= 9CH 中斷向量指針的高地址= 27H 4+2= 9EH 即該中斷向量存放在0000H:009CH開(kāi)始的4個(gè)連續(xù)單元中。如果這4個(gè)單元中的內(nèi)容如下:電子科學(xué)系電子科學(xué)系 0000:009C 2AH 0000:009D 43H 0000:009E 65H 0000:009F 87H 則該中斷類型號(hào)27H的中斷向量(中斷服務(wù)程序入口地址)的邏輯地址是8765H:432AH,即(CS)=8765H,(IP)=432AH;物理地址是8B97AH。 (3)8086/8088中斷的分
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度文化產(chǎn)業(yè)園場(chǎng)地租賃轉(zhuǎn)讓意向協(xié)議范本4篇
- 二零二五版二婚離婚協(xié)議起草與子女撫養(yǎng)協(xié)議合同
- 二零二五版金融科技公司短期員工聘用協(xié)議2篇
- 2025年度公共安全設(shè)施拆遷工程承包合同書(shū)(安全風(fēng)險(xiǎn)評(píng)估協(xié)議)3篇
- 2025年度鋁合金門(mén)窗出口貿(mào)易代理與銷售合同4篇
- 二零二五年叉車(chē)租賃與安全操作培訓(xùn)協(xié)議4篇
- 個(gè)性化2024二手車(chē)購(gòu)銷協(xié)議樣本版A版
- 個(gè)人股份買(mǎi)賣(mài)中介服務(wù)協(xié)議范本2024版版
- 二零二五版別墅買(mǎi)賣(mài)協(xié)議書(shū)模板(含配套設(shè)施保障)4篇
- 二零二五年網(wǎng)絡(luò)安全防護(hù)監(jiān)控系統(tǒng)安裝合同4篇
- 2023核電廠常規(guī)島及輔助配套設(shè)施建設(shè)施工技術(shù)規(guī)范 第8部分 保溫及油漆
- 2025年蛇年春聯(lián)帶橫批-蛇年對(duì)聯(lián)大全新春對(duì)聯(lián)集錦
- 表B. 0 .11工程款支付報(bào)審表
- 警務(wù)航空無(wú)人機(jī)考試題庫(kù)及答案
- 空氣自動(dòng)站儀器運(yùn)營(yíng)維護(hù)項(xiàng)目操作說(shuō)明以及簡(jiǎn)單故障處理
- 新生兒窒息復(fù)蘇正壓通氣課件
- 法律顧問(wèn)投標(biāo)書(shū)
- 班主任培訓(xùn)簡(jiǎn)報(bào)4篇(一)
- 成都市數(shù)學(xué)八年級(jí)上冊(cè)期末試卷含答案
- T-CHSA 020-2023 上頜骨缺損手術(shù)功能修復(fù)重建的專家共識(shí)
- 危重癥患者轉(zhuǎn)運(yùn)指南-課件
評(píng)論
0/150
提交評(píng)論