版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
微機(jī)原理與接口技術(shù)(第3版)3
8086/8088微處理器結(jié)構(gòu)
微處理器的內(nèi)部結(jié)構(gòu)總線工作周期中斷系統(tǒng)外部引腳和工作模式存儲器組織結(jié)構(gòu)微處理器的時序例題解析1.8086CPU是16位的第三代微處理器,
其內(nèi)部數(shù)據(jù)總線和外部數(shù)據(jù)總線均16位。2.8086具有20位地址總線,可尋址的內(nèi)存地址空間達(dá)1M字節(jié),可尋址的I/O地址空間為64K字節(jié),3.8086有多重尋址方式、多級中斷方式、多重數(shù)據(jù)處理形式、段式存儲器結(jié)構(gòu)、硬件乘除法運算電路。取指令和執(zhí)行指令的操作并行運行,
運行速度大大提高。4.8086具有最小模式和最大模式,應(yīng)用領(lǐng)域?qū)拸V,適應(yīng)性強。5.8086可方便地和數(shù)據(jù)處理器8087、I/O處理器8089或其它處理器組成多處理機(jī)系統(tǒng),提高數(shù)據(jù)處理能力和輸人輸出能力。
3.1Intel8086微處理器3
8086/8088微處理器結(jié)構(gòu)
3.2.1尋址空間和數(shù)據(jù)存儲格式1.尋址空間當(dāng)存儲器按字節(jié)編址時,若地址總線為n位,CPU尋址范圍是2n字節(jié)例如:8086CPU有地址總線20位,尋址能力為220=1M字節(jié)3.28086的存儲器組織3
8086/8088微處理器結(jié)構(gòu)2.8086存儲器的組織及尋址20位地址線,可尋址的地址范圍為00000H~FFFFFH3.28086的存儲器組織3
8086/8088微處理器結(jié)構(gòu)十六進(jìn)制地址二進(jìn)制地址存儲器00000H0000,0000,0000,0000,0000B
00001H0000,0000,0000,0000,0001B
00002H0000,0000,0000,0000,0010B
00003H0000,0000,0000,0000,0011B
::
::
FFFFDH1111,1111,1111,1111,1101B
FFFFEH1111,1111,1111,1111,1110B
FFFFFH1111,1111,1111,1111,1111B
數(shù)據(jù)的存儲格式
計算機(jī)中信息的單位有:位(bit)、字節(jié)(byte)字(word)、雙字(doubleword)等⑴字節(jié)數(shù)據(jù)(BYTE)
8位,偶地址(地址的最低位A0=0),或奇地址(A0=1)
⑵字?jǐn)?shù)據(jù)(WORD)16位,存放在兩個連續(xù)的字節(jié)單元中。其中高8位存放在在高地址字節(jié)(高字節(jié)),低8位存放在在低地址字節(jié)(低字節(jié)),并規(guī)定將低字節(jié)的地址作為這個字的地址(字地址)
D15~D8(高字節(jié))地址=N+1(奇地址)
D15~D8(高字節(jié))地址=N+1(偶地址)字地址D7~D0(低字節(jié))地址=N(偶地址)
字地址D7~D0(低字節(jié))地址=N(奇地址)
規(guī)則字
非規(guī)格字3
8086/8088微處理器結(jié)構(gòu)⑶雙字?jǐn)?shù)據(jù)(DOUBLEWORD)雙字?jǐn)?shù)據(jù)占用4個連續(xù)字節(jié)單元,并規(guī)定最低字節(jié)地址為雙字的地址數(shù)據(jù)的存儲格式
D31~D24地址=N+3
D23~D16地址=N+2
D15~D8地址=N+1雙字地址D7~D0地址=N(低字節(jié))數(shù)據(jù)的地址對齊同一個存儲器地址可以表示為:字節(jié)單元地址、字單元地址、雙字單元地址等等(視指令的具體情況)。將字單元安排在偶地址(xx……….xx0B),將雙字單元安排在模4地址(xx………xx00B)的做法,被稱為“地址對齊(Align)”。存儲的數(shù)據(jù)如果對齊邊界,則存取速度較快3
8086/8088微處理器結(jié)構(gòu)8086系統(tǒng)的存儲器結(jié)構(gòu)數(shù)據(jù)類型A0操
作用到的數(shù)據(jù)引腳規(guī)則字00從偶地址開始讀/寫一個字D15—D0字節(jié)01從奇地址開始讀/寫一個字節(jié)D15—D810從偶地址開始讀/寫一個字節(jié)D7—D0非規(guī)則字0110從奇地址開始讀寫一個字(非規(guī)則字),第一總線周期高8位數(shù)據(jù)有效,第二總線周期低8位數(shù)據(jù)有效。D15—D8D7—D0
11無效
3
8086/8088微處理器結(jié)構(gòu)3.2.2存儲器的分段結(jié)構(gòu)和物理地址的形成
0段1段2段15段00000H0FFFFH10000H1FFFFH20000H2FFFFHF0000HFFFFFH64K字節(jié)64K字節(jié)64K字節(jié)64K字節(jié)……………………1.存儲器的分段結(jié)構(gòu)由于8086中的地址寄存器都是16位的,用戶不能直接使用20位的物理地址,編程時需要使用邏輯地址來尋址存儲單元。邏輯地址由兩個16位數(shù)構(gòu)成,其形式為:8086將存儲空間分為多個邏輯段(Segment)來進(jìn)行管理,要求:段的20位的起始地址(xxxxxH)其低4位必須為0(xxxx0H),所以可以將它們省略,然后用1個16位數(shù)來表示表示段的首地址。每段長度限216=64KB,所以段內(nèi)偏移地址可以用1個16位數(shù)表示(xxxxH)1MB最多可分為16個不重迭的段。(16位段地址)
:(16位偏移量)
段的起始地址:
段內(nèi)的偏移地址3
8086/8088微處理器結(jié)構(gòu)實際上,兩個不同的邏輯段可以交疊,或者完全重疊3
8086/8088微處理器結(jié)構(gòu)3.2.2存儲器的分段結(jié)構(gòu)和物理地址的形成CS=7018H,IP=FE7FH,物理地址=7FFFFH例如:7018:FE7F圖3.5物理地址形成過程2.物理地址的形成每個存儲單元都有一個唯一物理地址(00000H~FFFFFH),20位二進(jìn)制數(shù),該地址在指令執(zhí)行時由地址加法器形成,并進(jìn)行硬件尋址。地址加法器的具體做法:段地址左移4位,然后加上偏移地址就得到20位物理地址。3
8086/8088微處理器結(jié)構(gòu)用戶編程時采用邏輯地址,其形式為:段的首地址:段內(nèi)偏移地址它們由兩個16位的無符號數(shù)構(gòu)成。邏輯地址“1460H:100H”=物理地址14700H一個存儲單元可以擁有多個邏輯地址,但只可能擁有一個唯一的物理地址。例如:物理地址:00200H邏輯地址:0020H:0000H邏輯地址:0000H:0200H3
8086/8088微處理器結(jié)構(gòu)存儲器可以劃分為:程序區(qū)、數(shù)據(jù)區(qū)、堆棧區(qū)程序段中存儲程序的指令代碼;數(shù)據(jù)段和附加段中存儲數(shù)據(jù)、中間結(jié)果和最后結(jié)果;堆棧段存儲壓入堆棧的數(shù)據(jù)或狀態(tài)信息。3.按信息特征分段存儲3
8086/8088微處理器結(jié)構(gòu)3.3.1
8086CPU內(nèi)部結(jié)構(gòu)分成兩部分:總線接口部件BIU:
總線接口單元BIU,負(fù)責(zé)控制存貯器讀寫。執(zhí)行部件EU:
執(zhí)行單元EU從指令隊列中取出指令并執(zhí)行。特點:取指部分和執(zhí)行指令部分分開進(jìn)行,提高了速度。8086CPU的內(nèi)部結(jié)構(gòu)3.38086微處理器的內(nèi)部結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)外部總線內(nèi)部暫存器
IP
ES
SSDSCS輸入/輸出控制電路執(zhí)行部分控制電路123456∑ALU標(biāo)志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位外部總線內(nèi)部暫存器
IP
ES
SSDSCS輸入/輸出控制電路執(zhí)行部分控制電路123456∑ALU標(biāo)志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位執(zhí)行部件總線接口部件通用寄存器四個專用寄存器SP:堆棧指針,其內(nèi)容與堆棧段寄存器SS的內(nèi)容一起,提供堆棧操作地址。
BP:基址指針:構(gòu)成段內(nèi)偏移地址的一部分.
SI:(SourceIndex):SI含有源地址意思,產(chǎn)生有效地址或?qū)嶋H地址的偏移量。
DI:(DestinationIndex):DI含有目的意思,
產(chǎn)生有效地址或?qū)嶋H地址的偏移量。算術(shù)邏輯單元ALU:主要是加法器。大部分指令的執(zhí)行由加法器完成。標(biāo)志寄存器:16位字利用了9位。標(biāo)志分兩類:狀態(tài)標(biāo)志(6位):反映剛剛完成的操作結(jié)果情況??刂茦?biāo)志(3位):在某些指令操作中起控制作用。外部總線內(nèi)部暫存器
IP
ES
SSDSCS輸入/輸出控制電路執(zhí)行部分控制電路123456∑ALU標(biāo)志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位20位地址加法器四個段寄存器:CS、DS、SS、ESCS管理代碼段;DS管理數(shù)據(jù)段SS管理堆棧段;ES管理附加段.16位的指令指針寄存器IP:IP中的內(nèi)容是下一條指令對現(xiàn)行代碼段基地址的偏移量,6字節(jié)的指令隊列指令隊列共六字節(jié),總線接口部件BIU從內(nèi)存取指令,取來的總是放在指令隊列中;執(zhí)行部件EU從指令隊列取指令,并執(zhí)行。3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)AHBHCHDHALBLCLDLSPBPSIDIIPFLAGSCSDSSSES000151515AXBXCXDX累加器基址寄存器計數(shù)器數(shù)據(jù)寄存器堆棧指針基址指針源變址目的變址指令指針標(biāo)志寄存器代碼段數(shù)據(jù)段堆棧段附加段通用數(shù)據(jù)寄存器指針和變址寄存器控制寄存器段寄存器015871.數(shù)據(jù)寄存器8086含4個16位數(shù)據(jù)寄存器,它們又可分為8個8位寄存器,即:AXAH,ALBXBH,BLCXCH,CLDXDH,DL常用來存放參與運算的操作數(shù)或運算結(jié)果3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)數(shù)據(jù)寄存器特有的習(xí)慣用法AX:累加器。多用于存放中間運算結(jié)果。
所有I/O指令必須都通過AX與接口傳送信息;BX:基址寄存器。常用于存放訪問內(nèi)存時的偏移地址;CX:計數(shù)寄存器。用于在循環(huán)或串操作指令中存放循環(huán)次數(shù)
或重復(fù)次數(shù);DX:數(shù)據(jù)寄存器。在32位乘除法運算時,存放高16位數(shù);
在間接尋址的I/O指令中存放I/O端口地址。3
8086/8088微處理器結(jié)構(gòu)3.3.28086CPU的寄存器結(jié)構(gòu)2.段寄存器段寄存器為信息按特征分段存貯帶來方便.3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)CS:16位的代碼段寄存器,管理程序段DS:16位的數(shù)據(jù)段寄存器,管理數(shù)據(jù)段。ES:16位的擴(kuò)展段(附加段)寄存器,管理擴(kuò)展段。SS:16位的堆棧段寄存器,管理堆棧段。3.地址指針與變址寄存器
SP:堆棧指針寄存器,其內(nèi)容為棧頂?shù)钠频刂罚?BP:基址指針寄存器,常用于在訪問內(nèi)存時存放內(nèi)存單元的偏移地址。3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)BX與BP在應(yīng)用上的區(qū)別作為通用寄存器,二者均可用于存放數(shù)據(jù);作為基址寄存器,BX通常用于數(shù)據(jù)段,一般與DS或ES搭配使用;BP則通常用于堆棧段,與SS搭配使用。SI:源變址寄存器DI:目標(biāo)變址寄存器變址寄存器常用于指令的間接尋址或變址尋址.4.控制寄存器指令指針寄存器IP其內(nèi)容為下一條要執(zhí)行的指令的偏移地址;3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)標(biāo)志寄存器FLAGS16位標(biāo)志寄存器,用來存放運算結(jié)果的特征。其中7位沒有定義,其余9位分成兩類:狀態(tài)標(biāo)志:表示運算后結(jié)果的狀態(tài)特征它影響后面的操作,
有6位:CF、PF、AF、ZF、SF和OF。控制標(biāo)志,用來控制CPU操作,有3個:TF、IF和DF。具體格式如圖3-9。3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)CF-進(jìn)位標(biāo)志:算術(shù)運算時有進(jìn)位CF=1,無進(jìn)位CF=0PF-奇偶標(biāo)志:運算結(jié)果中“1”的個數(shù)為偶數(shù)PF=1AF-輔助進(jìn)位標(biāo)志:第3位向第4位有進(jìn)位時AF=1ZF-零標(biāo)志:運算結(jié)果為“0”則ZF=1SF-符號標(biāo)志:運算結(jié)果為負(fù)數(shù)時SF=1OF-溢出標(biāo)志:運算結(jié)果超出規(guī)定范圍OF=1IF-中斷允許標(biāo)志:IF=1中斷允許DF-方向標(biāo)志,DF=0地址加1TF-跟蹤標(biāo)志,TF=1,為單步工作方式3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)例3.1
設(shè)(AX)=0010001101001101B,(DX)=0101001000001001B,試指出兩數(shù)相加后,6位標(biāo)志位的狀態(tài)。解用補碼公式對兩數(shù)進(jìn)行運算,并按定義對結(jié)果進(jìn)行判別。計算機(jī)中存儲的已是補碼,兩數(shù)相加過程如下:3.3.28086CPU的寄存器結(jié)構(gòu)根據(jù)兩數(shù)相加結(jié)果,可得如下結(jié)論:①結(jié)果非零,故ZF=0。②低8位中共有4個1(偶數(shù)個),故PF=1。③根據(jù)符號位,可知SF=0。④運算結(jié)束后,向更高位無進(jìn)位,故CF=0。⑤運算結(jié)果無溢出,故OF=0。
⑥D(zhuǎn)3位向D4位產(chǎn)生進(jìn)位,故AF=1。了解幾個概念主頻:CPU的工作頻率時鐘周期:對主頻進(jìn)行分頻后的工作時鐘總線周期:完成一次總線操作所需的時間在8088CPU中,CPU與內(nèi)存或接口間進(jìn)行通信,
如將一個字節(jié)寫入內(nèi)存一個單元(或接口),
或者從內(nèi)存某單元(或某接口)讀一個字節(jié)到CPU,
這種讀(或)寫的過程稱為一個總線周期。指令周期:一條指令從開始取指令到最后執(zhí)行完畢所需的時間3.48086總線的工作周期3
8086/8088微處理器結(jié)構(gòu)3.48086總線的工作周期3
8086/8088微處理器結(jié)構(gòu)總線周期時序1個總線周期正常情況下由4個時鐘周期(T1―T4)組成;時鐘周期由主頻決定;空閑周期TI和等待周期TW;讀、寫、中斷響應(yīng)、總線保持與響應(yīng)等的總線周期時序T1等待狀態(tài)總線周期kT2T3T4TiT1T2T3TWT4TiTiT1T2T3TWTWT4空閑狀態(tài)總線周期k+1總線周期k+23.5.18086中斷類型3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086/8088可以處理256種不同的中斷。兩類:內(nèi)部中斷和外部中斷。中斷源示意圖如下圖:8259A可屏蔽中斷請求中斷邏輯INTO指令I(lǐng)NTn指令除法出錯單步(TF=1)非屏蔽中斷請求8086/8088CPUNMIINTR內(nèi)部中斷外部中斷可屏蔽中斷非屏蔽中斷1.外部中斷3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086CPUNMIINTR不可屏蔽中斷請求輸入端可屏蔽中斷請求輸入端8086CPU提供兩條引腳INTR、NMI接受中斷請求信號INTA中斷響應(yīng)信號輸出端不可屏蔽中斷(NMI中斷)▼中斷類型碼2▼上升沿觸發(fā)申請中斷▼不受中斷允許標(biāo)志IF的控制與影響(即不可屏蔽),一旦NMI引腳出現(xiàn)中斷請求,CPU在當(dāng)前指令執(zhí)行完后,必須立即響應(yīng)。▼由計算機(jī)內(nèi)部硬件出錯而引發(fā),一般用于處理緊急事件。
PC機(jī)中用于內(nèi)存奇偶校驗出錯和系統(tǒng)主要故障(如電源斷電等)。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086CPUNMI可屏蔽中斷(INTR中斷)▼外設(shè)申請的中斷▼電平觸發(fā)▼受中斷允許標(biāo)志IF控制
IF=1(指令STI),開中斷,允許響應(yīng)INTR中斷
IF=0(指令CLI),關(guān)中斷,禁止響應(yīng)INTR中斷
——當(dāng)外設(shè)對CPU有服務(wù)請求,會向INTR發(fā)來一個高電平信號(見上圖),并且中斷允許標(biāo)志IF=1時,CPU會在當(dāng)前指令執(zhí)行完后,響應(yīng)可屏蔽中斷。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086CPUINTRINTA3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)可屏蔽中斷(INTR中斷)
8086CPU只有一個可屏蔽中斷請求輸入引腳,8086中斷系統(tǒng)設(shè)計中斷控制器(8259A)管理各種外設(shè)提出的中斷請求。所有外設(shè)的中斷請求信號都可送至8259A的中斷請求輸入端IRQ0~I(xiàn)RQ7任何一個,8259A選擇其中優(yōu)先級最高的中斷請求,送至CPU的INTR引腳,向CPU申請可屏蔽中斷。
可屏蔽中斷源的中斷類型碼由8259A提供。INTRINTA8086CPUINTINTA8259AIRQ0IRQ1IRQ2IRQ7……可屏蔽中斷請求輸入端8259A可對多個可屏蔽中斷源進(jìn)行優(yōu)先級控制,一片8259A可管理8級可屏蔽中斷。2.內(nèi)部中斷不需要外部硬件支持,不受中斷標(biāo)志IF的影響,中斷類型碼或包含在指令中,或預(yù)先規(guī)定。8086/8088內(nèi)部中斷有以下5種:除法出錯中斷斷點中斷單步中斷溢出中斷軟件中斷3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)軟件中斷主要有五種,分為三類。
1)處理運算過程中某些錯誤的中斷執(zhí)行程序時,為及時處理運算中的某些錯誤,CPU以中斷方式中止正在運行的程序,提醒程序員改錯。
(1)除法錯中斷(中斷類型號為0)。在8086/8088CPU執(zhí)行除法指令(DIV/IDIV)時,若發(fā)現(xiàn)除數(shù)為0,或所得的商超過了CPU中有關(guān)寄存器所能表示的最大值,則立即產(chǎn)生一個類型號為0的內(nèi)部中斷,CPU轉(zhuǎn)去執(zhí)行除法錯中斷處理程序。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)
例movbl,0idivbl ;除數(shù)BL=0,產(chǎn)生除法錯中斷(2)溢出中斷INTO(中斷類型號為4)。CPU進(jìn)行帶符號數(shù)的算術(shù)運算時,若發(fā)生了溢出,則標(biāo)志位OF=1,若此時執(zhí)行INTO指令,會產(chǎn)生溢出中斷,打印出一個錯誤信息,結(jié)束時不返回,而把控制權(quán)交給操作系統(tǒng)。若OF=0,則INTO不產(chǎn)生中斷,CPU繼續(xù)執(zhí)行下一條指令。INTO指令通常安排在算術(shù)指令之后,以便在溢出時能及時處理。例如:3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)movax,2000haddax,7000h
;2000H+7000H=9000H,溢出:OF=1into ;因為OF=1,所以產(chǎn)生溢出中斷2)為調(diào)試程序設(shè)置的中斷(1)單步中斷(中斷類型號為1)。當(dāng)TF=1時,每執(zhí)行一條指令,CPU會自動產(chǎn)生一個單步中斷。單步中斷可一條一條指令地跟蹤程序流程,觀察各個寄存器及存儲單元內(nèi)容的變化,幫助分析錯誤原因。單步中斷又稱為陷阱中斷,主要用于程序調(diào)試。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)例如:DEBUG.EXE調(diào)試程序的單步命令T就利用單步中斷實現(xiàn)對程序的單步調(diào)試(2)斷點中斷(中斷類型號為3)。調(diào)試程序時可以在一些關(guān)鍵性的地方設(shè)置斷點,它相當(dāng)于把一條INT3指令插入到程序中,CPU每執(zhí)行到斷點處,INT3指令便產(chǎn)生一個中斷,使CPU轉(zhuǎn)向相應(yīng)的中斷服務(wù)程序3)中斷指令I(lǐng)NTn引起的中斷(中斷類型號為n)
程序設(shè)計時,可以用INTn指令來產(chǎn)生軟件中斷,中斷指令的操作數(shù)n給出了中斷類型號,CPU執(zhí)行INTn指令后,會立即產(chǎn)生一個類型號為n的中斷,轉(zhuǎn)入相應(yīng)的中斷處理程序來完成中斷功能。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)3.8086中斷源的優(yōu)先級
8086中斷源的優(yōu)先級順序由高到低依次為:
軟件中斷(除單步中斷外)、非屏蔽中斷、可屏蔽中斷、單步中斷。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)對同時產(chǎn)生的中斷:首先處理優(yōu)先級別較高的中斷;若優(yōu)先級別相同,則按先來先服務(wù)的原則處理;對非同時產(chǎn)生的中斷:允許低優(yōu)先級別的中斷處理程序被高優(yōu)先級別的中斷源所中斷——中斷嵌套。中斷類型碼:8086可以處理256個中斷請求,每個中斷請求均對應(yīng)于惟一固定的類型碼。被0除類型碼是0,單步為1;NMI為2;斷點中斷為3,溢出中斷為4……等。中斷向量:即中斷服務(wù)程序的入口地址,包括段地址(高字單元)和偏移地址(低字單元)。3.5.2中斷向量與中斷向量表3
8086/8088微處理器結(jié)構(gòu)每個中斷處理程序都有一個唯一的中斷向量。;中斷服務(wù)程序INT_PROCPROCPUSHDXPUSHAX…IRETINT_PROCENDP
INC_PROCPUSHDXPUSHAX┅┅IRET中斷服務(wù)程序入口地址中斷向量表3.5.2中斷向量與中斷向量表3
8086/8088微處理器結(jié)構(gòu)按中斷類型碼從小到大順序依次存放各類中斷(256種)的中斷向量(中斷服務(wù)程序入口地址)。在內(nèi)存的00000H~003FFH地址范圍內(nèi),大小為1KB。每個中斷向量占用4Bytes,低字為段內(nèi)偏移地址,高字為段基址。中斷類型碼與中斷向量地址的關(guān)系:
設(shè)某類中斷的中斷類型碼為n中斷向量在IVT中的存放地址(向量地址)=4×n3.5.2中斷向量與中斷向量表3
8086/8088微處理器結(jié)構(gòu)例:某系統(tǒng)中鍵盤中斷的類型碼為09H,試問其對應(yīng)中斷服務(wù)程序的入口地址?
40H30H20H10H
0024H0025H0026H0027H1)中斷向量的存放地址由4
n=4
9=36=24H知中斷向量存放在存儲器中從0000:0024H開始的4個單元中,即0024H—0027H單元。存儲器
IP
CS2)由右圖易知鍵盤中斷的中斷處理程序的入口地址為
4030:2010H即可轉(zhuǎn)入鍵盤中斷服務(wù)程序執(zhí)行。1.可屏蔽中斷的中斷過程3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)中斷處理過程:包括中斷請求、中斷排隊、中斷響應(yīng)、中斷處理、中斷返回等全過程。(1)CPU響應(yīng)可屏蔽中斷的條件外設(shè)提出中斷申請;本中斷未被中斷控制器屏蔽;本中斷優(yōu)先級最高;CPU允許中斷;(2)CPU響應(yīng)可屏蔽中斷的過程CPU在每條指令的最后一個T周期,檢測INTR,若為高電平,且IF=1,則CPU響應(yīng)中斷。響應(yīng)過程中自動依次完成以下工作:CPU向外設(shè)發(fā)兩個/INTA,外設(shè)收到第2個/INTA后,立即通過數(shù)據(jù)線給CPU送中斷類型號。CPU從數(shù)據(jù)線上讀取中斷類型號將Flags內(nèi)容入棧保護(hù)現(xiàn)行程序的控制標(biāo)志及其運行結(jié)果產(chǎn)生的狀態(tài)標(biāo)志。3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)(2)CPU響應(yīng)可屏蔽中斷的過程關(guān)中斷(清IF和TF)
為了防止在進(jìn)入中斷處理,但并未執(zhí)行中斷程序這段時間內(nèi)又響應(yīng)新的中斷。保護(hù)斷點將當(dāng)前指令的下一條指令的CS和IP入棧,使中斷處理完成后能正確的回到原程序處繼續(xù)執(zhí)行。轉(zhuǎn)入相應(yīng)的中斷服務(wù)子程序;中斷返回從堆棧中彈出斷點的地址(IP和CS)和Flags的內(nèi)容,返回主程序的斷點處,繼續(xù)執(zhí)行主程序。3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)2.非屏蔽中斷和軟件中斷的執(zhí)行過程3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)3.中斷類型碼的形成中斷入口地址依賴中斷類型號,中斷型號獲取方法:對于專用中斷:除法出錯、單步中斷、不可屏蔽中斷、斷點中斷和溢出中斷,由CPU分別提供中斷類型號0~4(內(nèi)部行成);對于用戶自己確定的軟件中斷INTn,類型號由n決定;對于INTR引腳上的中斷:由硬件電路設(shè)計產(chǎn)生中斷類型號可用8259A獲取中斷類型號3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)3.6.18086系統(tǒng)總線結(jié)構(gòu)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)最小模式:系統(tǒng)中只有8086一個微處理器,所有的總線控制信號均為8086產(chǎn)生,系統(tǒng)中的總線控制邏輯電路,減少到最少。最大模式:用于大型(中型)8086系統(tǒng)中。系統(tǒng)總是包含有兩個或多個微處理器,其中一個主處理器就是8086,還有協(xié)處理器8087、8089等。通常由專門的總線控制器(8288)產(chǎn)生總線控制信號。8086采用雙列直插式(DoubleInlinePackage,DIP)封裝,具有40條引腳,使用+5V電源供電。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)40引腳線地址線數(shù)據(jù)線控制線狀態(tài)線電源線定時線時鐘頻率有3種:5MHz(8086)、8MHz(8086-1)和10MHz(8086-2)。其引腳信號如圖3.13所示,括號內(nèi)為最大模式時的引腳名稱。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)表3.28086引腳信號定義3.6.2兩種模式下公用的引腳信號3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)所謂三態(tài)是指總線輸出可以有三個狀態(tài):高電平、低電平和高阻狀態(tài)。當(dāng)處于高阻狀態(tài)時,該總線在邏輯上與所有連接負(fù)載斷開。地址總線、數(shù)據(jù)總線、狀態(tài)信號(1)AD15~AD0(2~16,39)地址/數(shù)據(jù)復(fù)用總線;雙向、三態(tài);分時輸出低16位地址信號及進(jìn)行數(shù)據(jù)信號的輸入/輸出。A15-A0:T1輸出訪問存儲器或I/O的地址信息。D15-D0:T2-T4輸出與存儲器和I/O設(shè)備交換數(shù)據(jù)信息。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(2)A19/S6~A16/S3(35~38)地址/狀態(tài)復(fù)用線;輸出、三態(tài);分時輸出地址的高4位及狀態(tài)信息。A19-A16:T1輸出訪問存儲器的20位地址的高4位地址A19-A16。S6-S3:T2-T4輸出CPU的工作狀態(tài)。其中S6為0用以指示8086當(dāng)前與總線連通;S5為1表明8086可以響應(yīng)可屏蔽中斷。S4、S3共有四個組合狀態(tài),用以指明當(dāng)前使用的段寄存器;S4S3當(dāng)前正在使用的段寄存器00ES01SS10CS或未使用任何段寄存器11DS(3)BHE/S7(34)高8位數(shù)據(jù)總線有效/狀態(tài)復(fù)用引腳;三態(tài)輸出;表示高8位數(shù)據(jù)線D15~
D8上的數(shù)據(jù)有效和S7
狀態(tài)信號;T2-T4狀態(tài)輸出S7狀態(tài)信號。8086中無定義。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)偶地址單元數(shù)據(jù)通過數(shù)據(jù)總線低8位傳輸。奇地址單元數(shù)據(jù)通過數(shù)據(jù)總線高8位傳輸。BHEA0總線使用情況
00從偶地址單元開始,在16位數(shù)據(jù)總線上進(jìn)行字傳送
01從奇地址單元開始,在高8位數(shù)據(jù)總線上進(jìn)行字節(jié)傳送
10從偶地址單元開始,在低8位數(shù)據(jù)總線上進(jìn)行字節(jié)傳送
11無效2.控制總線3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(1)RD(32)讀信號;三態(tài)輸出;低電平有效;RD=0,表示CPU正在讀存儲器或I/O端口。(2)READY(22)準(zhǔn)備就緒信號;輸入;高電平有效。READY=1,表示CPU訪問的存儲器或IO端口已準(zhǔn)備好傳送數(shù)據(jù)。若CPU在總線周期T3狀態(tài)檢測到READY=0,表示未準(zhǔn)備好,CPU自動插入一個或多個等待狀態(tài)TW,直到READY=1為止。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)TEST(23)測試信號,輸入。當(dāng)CPU執(zhí)行WAIT指令時,CPU每隔5個T狀態(tài)進(jìn)行一次測試;當(dāng)測試到TEST=1,則CPU重復(fù)執(zhí)行WAIT指令,即CPU處于空閑等待狀態(tài),直到測試到TEST=0時,等待狀態(tài)結(jié)束,CPU繼續(xù)執(zhí)行后續(xù)指令。(4)
RESET
(21)復(fù)位信號,輸入,高電平有效。RESET信號至少要保持4個時鐘周期。復(fù)位時:標(biāo)志寄存器、IP、DS、SS、ES為0,CS=FFFFH,復(fù)位后CPU從FFFF0H處開始執(zhí)行。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(4)INTR
(18)可屏蔽中斷請求信號;輸入,高電平有效。當(dāng)INTR=1,表示外設(shè)向CPU發(fā)出中斷請求,CPU在當(dāng)前指令周期的最后一個T狀態(tài)去采樣該信號,若此時,IF=1,CPU響應(yīng)中斷,執(zhí)行中斷服務(wù)程序。(5)NMI(17)不可屏蔽中斷請求信號,輸入,上升沿觸發(fā)。該請求信號不受IF狀態(tài)的影響,也不能用軟件屏蔽,一旦該信號有效,則執(zhí)行完當(dāng)前指令后立即響應(yīng)中斷。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(6)MN/MX(33)工作模式選擇信號;輸入。MN/MX=1,表示CPU工作在最小模式系統(tǒng);MN/MX=0,表示CPU工作在最大模式系統(tǒng)。3.其他信號3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(1)VCC(40)GND(1,20)電源、接地引腳輸入;8086采用單一的+5V電源;但有兩個接地引腳。(2)CLK(19)時鐘信號輸入引腳。要求時鐘信號的占空比為33%;即1/3周期為高電平,2/3周期為低電平。3.6.3最小模式3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)最小模式——僅支持單處理器主要需解決:地址與數(shù)據(jù)的分離地址鎖存電路實現(xiàn)方案用3片8位的鎖存器8282實現(xiàn)地址鎖存。ALE為鎖存控制信號,OE#≡0使鎖存的地址直接輸出;用2片雙向三態(tài)門8286用作數(shù)據(jù)總線驅(qū)動和隔離,DT//R作為方向控制,/DEN作為開門信號;其他控制信號由8086直接產(chǎn)生。8086最小工作模式下控制核心單元的組成地+5V讀寫控制讀寫控制讀寫控制CSH奇地址存儲體8284時鐘發(fā)生器RESETREADYCBD7~D0D15~D8DBCSL偶地址存儲體CSI/O接口ABA0A1~A19BHE
STBOE8282鎖存器8086CPUMN/MXINTARDCLKWRREADYM/IORESETALEBHEA19-A16AD15-AD0DENDT/RTOE8286
收發(fā)器D15~D0(1)時鐘發(fā)生器3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)
8086內(nèi)沒有時鐘發(fā)生電路,8284就是供8086系列使用的單片時鐘發(fā)生器。它由時鐘電路、復(fù)位電路、準(zhǔn)備就緒電路3部分組成。時鐘發(fā)生電路X1,X2:外接石英晶體連接端F/C:使用外振源還是由X1,X2端外接晶體振蕩器,低電平時外接晶體振蕩器。CLK:時鐘信號輸出端,為振蕩信號經(jīng)3分頻后產(chǎn)生。PLCK:對CLK時鐘信號二分頻產(chǎn)生,占空比為1/2,供定時/計數(shù)器使用。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)時鐘發(fā)生電路CSYNC:時鐘同步輸入,為多個8284同步工作而設(shè)置EFI:外振源輸入端OSC:晶振頻率輸出端,供顯示器用復(fù)位電路RES:輸入信號,用于產(chǎn)生使系統(tǒng)復(fù)位的輸出信號RESET,一般來自電源電路。RESET:輸出信號,到CPU的RESET端準(zhǔn)備就緒電路RDY1,RDY2:準(zhǔn)備就緒輸入信號,AEN1,AEN2:用來決定對應(yīng)的RDY信號生效與否,若有效使RDY1和RDY2產(chǎn)生REDAY信號,否則使CPU產(chǎn)生等待周期ASYNC:準(zhǔn)備就緒輸入信號和時鐘信號進(jìn)行同步的方式選擇輸入端REDAY:輸出到CPU的準(zhǔn)備就緒信號3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8284A的功能:產(chǎn)生恒定的時鐘信號,對準(zhǔn)備好信號和復(fù)位信號進(jìn)行同步;外界控制信號RDY和RES可以在任何時候到來,8284A把它們同步在時鐘下降沿時輸出READY和RESET信號到CPU。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(2)地址鎖存器:
Intel8282或74LS373
當(dāng)?shù)刂锋i存允許信號ALE被送到373的選通端G上時,373就鎖存送到它的數(shù)據(jù)輸入端的數(shù)據(jù)。當(dāng)把一個低電平有效的信號送給輸出允許端OC(OE)時,373就把鎖存的數(shù)據(jù)從數(shù)據(jù)輸出端輸出。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)雙向總線驅(qū)動器
8088收發(fā)數(shù)據(jù)的負(fù)載能力是有限的。為了增加8088的負(fù)載能力,尤其是組建較大系統(tǒng)時,在8088和系統(tǒng)數(shù)據(jù)總線間需使用雙向總線驅(qū)動器。用于雙向總線驅(qū)動器的芯片有8286和74LS245。G:控制驅(qū)動器A端和B端何時接通DIR:當(dāng)DIR輸入高電平時。數(shù)據(jù)從A傳到B;當(dāng)DIR輸入低電平時。數(shù)據(jù)從B傳到A。2.最小模式下的引腳信號3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)
(1)INTA(24)中斷響應(yīng);輸出;當(dāng)CPU響應(yīng)INTR時,INTA=0,表示響應(yīng)中斷。
(2)ALE(25)地址鎖存允許信號;輸出;高電平有效。在任一總線周期的T1期間輸出一個正脈沖,用于輸出地址鎖存信號。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)DEN(26)數(shù)據(jù)允許信號;三態(tài)、輸出;DEN通常作為數(shù)據(jù)收發(fā)器的選通信號;僅當(dāng)DEN=0時,才允許收發(fā)器收發(fā)數(shù)據(jù)。(4)DT/R(27)數(shù)據(jù)發(fā)送/接收信號;三態(tài)、輸出。為提高CPU數(shù)據(jù)總線驅(qū)動能力,常常使用數(shù)據(jù)收發(fā)器(8286/8287);DT/R控制數(shù)據(jù)收發(fā)器的數(shù)據(jù)傳送方向。DT/R=1時,表示CPU輸出(發(fā)送)數(shù)據(jù);DT/R=0時,表示CPU輸入(接收)數(shù)據(jù)。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(5)M/IO(28)存儲器或IO端口訪問信號;三態(tài)、輸出;M/IO=1時,表示CPU當(dāng)前正在訪問存儲器;M/IO=0時,表示CPU當(dāng)前正在訪問I/O端口。(6)WR
(29)寫信號;輸出、三態(tài);低電平有效。WR=0,表示CPU當(dāng)前正在寫存儲器或I/O端口。最小模式下,信號M/IO,RD,和WR組合起來決定了系統(tǒng)中數(shù)據(jù)傳輸?shù)姆绞???偩€周期M/IODT/RWR存儲器讀101存儲器寫110I/O讀001I/O寫0103.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(7)HOLD
(31)總線請求;輸入;用于其它主控器(處理器、DMA等)向本CPU
請求占用總線。(8)HLDA
(30)總線請求響應(yīng),輸出;高電平有效;表示CPU認(rèn)可其他總線部件提出的總線占用請求,準(zhǔn)備讓出總線控制權(quán)。3.6.4最大模式在最小模式下,CPU必須配有8282、8284、8286才能構(gòu)成整個微處理器系統(tǒng),才能通過地址、數(shù)據(jù)、控制總線與外部設(shè)備聯(lián)系,控制外設(shè)工作。在最大模式下,除了上述還需要配置8288總線控制器,由8288對處理器發(fā)出的控制信號進(jìn)行變換和組合,最終由8288產(chǎn)生總線控制信號,而不是由CPU直接產(chǎn)生。有兩個或兩個以上的CPU,一個為主處理器8086/8088,另一個為協(xié)處理器8087/8089。數(shù)值運算協(xié)處理器8087,輸入輸出協(xié)處理器8089。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)1.8086在最大模式下的典型配置3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)
與最小模式系統(tǒng)相比較,主要區(qū)別是最大模式系統(tǒng)中增設(shè)了一個總線控制器8288和一個總線仲裁器8289。
8086CPU輸出的狀態(tài)信號S2~S0同時送給8288和8289,由8288輸出8086CPU系統(tǒng)所需要的控制信號,以得到對存儲器和I/O端口的讀寫信號和對鎖存器8282及對總線收發(fā)器8286的控制信號。而8289總線仲裁器對系統(tǒng)中多個處理器提出共享總線資源的要求作出裁決。因此,8086的最大模式系統(tǒng)由于8288和8289的存在,可以構(gòu)成一個多處理器系統(tǒng)。在最大模式系統(tǒng)中,一般還有中斷優(yōu)先級管理部件,圖中用8259A作為中斷優(yōu)先級管理部件。系統(tǒng)所含設(shè)備較少時,也可省去。在最大模式系統(tǒng)中,總線控制器8288的詳細(xì)連接,見圖3.17.8086在最模式下的典型配置3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(1)8288總線控制器3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)當(dāng)8088工作在最大組態(tài)方式時,就需要使用8288總線控制器來產(chǎn)生存儲器和I/O端口讀寫操作的控制信號。在最大組態(tài)的系統(tǒng)中,命令信號和總線控制所需要的信號都是8288根據(jù)8088提供的狀態(tài)信號S0、S1、S2輸出的。不同狀態(tài)下8288對應(yīng)的輸出命令信號
000 中斷響應(yīng)001 讀I/O010 寫I/O011 暫停100 取指101 讀存儲器110 寫存儲器111 無效S2S1S0INTAMRDCIORCAIOWCIOWCMRDCMWTCAMWC3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)用于輸出中斷響應(yīng)讀I/O信號寫I/O信號I/O寫超前控制信號讀存儲器信號寫存儲器信號存儲器寫超前控制信號INTAMRDCIORCAIOWCIOWCMWTCAMWC8288各輸出命令信號的功能輸出命令信號3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8086控制邏輯8288控制邏輯8288的工作受輸入控制信號控制,控制信號包括IOB、
、CEN和CLK,其功能是使8288與CPU保持同步工作。
AEN3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)地址使能信號,當(dāng)8288處于系統(tǒng)總線方式下(IOB=0),用于多總線同步。該信號保持低電平115ns后,8288開始輸出控制信號。AEN:CEN:8288片選有效信號,用于多片8288協(xié)調(diào)工作。CEN=1,該8288工作=0,該8288不工作CLK:時鐘信號,通常由系統(tǒng)時鐘提供,同步控制信號的節(jié)拍。IOB=0,系統(tǒng)總線工作方式=1,I/O總線工作方式IOB:總線工作方式信號,決定該8288的工作方式。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8288輸出控制信號
8288在進(jìn)行總線讀寫控制中,需要提供相應(yīng)的地址鎖存、數(shù)據(jù)使能及方向控制等信號。8288提供的信號包括ALE、DEN、DT/R和MCE/PDEN。ALE:地址鎖存允許信號DEN:數(shù)據(jù)使能信號DT/
:數(shù)據(jù)收發(fā)方向信號RMCE/:主設(shè)備使能/外設(shè)數(shù)據(jù)允許,復(fù)用信號PDEN3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)2.最大模式8086CPU外部引腳3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)S0,S1,S2(BusCycleStatus)總線周期狀態(tài)信號,三態(tài)輸出它們提供當(dāng)前總線周期中所進(jìn)行的數(shù)據(jù)傳輸過程的類型。由總線控制器8288根據(jù)這些對存儲器及I/O進(jìn)行控制
.QS1,QS0指令隊列狀態(tài),向外部輸出.用來表示CPU中指令隊列當(dāng)前的狀態(tài).編碼如下:QS1QS2含義00無操作01從隊列中取第一個字節(jié)10隊列已空11從隊列中取后續(xù)字節(jié)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)RQ/GT1,RQ/GT0
(Request/Grant)請求/同意信號,雙向,低電平有效.輸入時表示其它主控者請求使用總線輸出時表示CPU對總線請求的響應(yīng)信號兩條線可同時與兩個主控者相連。但是GT0的優(yōu)先級比GT1的高。LOCK封鎖信號
三態(tài)輸出,低電平有效.
LOCK有效時表示CPU不允許其它總線主控者占用總線.
可防止8086在響應(yīng)中斷時總線被其它主控部件所占用,在中斷過程中,也自動變?yōu)榈碗娖?.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)8086的主要操作:①系統(tǒng)的復(fù)位和啟動操作;②暫停操作;③總線操作;④中斷操作;⑤最小模式下的總線保持;⑥最大模式下的總線請求/允許。3.7.1系統(tǒng)的復(fù)位與啟動3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)產(chǎn)生:RESET端上的高電平維持4個時鐘周期,可使CPU復(fù)位。如果是初次加電引起的復(fù)位,則要求維持不小于50us的高電平。CPU復(fù)位:PSW、DS、ES、SS、IP等寄存器,指令隊列被清零。CS寄存器設(shè)置為FFFFH。注:由于復(fù)位后,IF=0,處關(guān)中斷狀態(tài),所以在初始化程序中應(yīng)開中斷,使CPU可響應(yīng)中斷請求。CPU重啟:復(fù)位信號RESET從高電平到低電平的跳變會觸發(fā)CPU內(nèi)部的復(fù)位邏輯電路,當(dāng)RESET由高電平變低電平7個機(jī)器周期后,CPU開始從FFFF0處執(zhí)行程序。3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)復(fù)位操作時序圖
①外部RESET變?yōu)楦唠娖舰贑LK上升沿,內(nèi)部RESET有效③總線復(fù)位④總線懸浮,直到復(fù)位結(jié)束復(fù)位時總線狀態(tài)地址線為高阻態(tài),直到RESET變?yōu)榈碗娖?,開始從FFFF0H單元取指令;ALE、HLDA等信號為低電平(無效);一些信號呈高阻態(tài)。3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)8086的復(fù)位操作通過RESET引腳信號執(zhí)行,至少維持4個時鐘周期高電平,初次加電不少于50μs。復(fù)位后各寄存器值標(biāo)志寄存器清零IP0000HCSFFFFHDS0000HSS0000HES0000H指令隊列空其它寄存器0000H3.7.2最小模式系統(tǒng)總線周期時序3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)1.8086最小模式存儲器和I/O讀總線周期1.T1狀態(tài):①T1
前沿之后,使
=0,訪問存儲器
=1,訪問I/O端口②送地址信號AD19-0
,輸出ALE正脈沖信號下降沿鎖存地址。
A15~
A8始終為高8位地址。③送=0,
8286工作在接收狀態(tài)(讀數(shù)據(jù))。T2狀態(tài):①AD0~AD7線地址信號消失,處于浮空狀態(tài),作為輸入數(shù)據(jù)的過渡期
A16~A19變?yōu)闋顟B(tài)S3~S6②在T2前沿,=0
低電平有效,打開存儲器或I/O端數(shù)據(jù)緩沖器
=0,作為
8286的選通信號,開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲器或I/O端口將數(shù)據(jù)送AD0~AD7總線②若數(shù)據(jù)未準(zhǔn)備就緒,則通過8284經(jīng)CPU的READY線送低電平信號③
T3
的下降沿,采樣READY引腳電平,若是低電平,需插入TW
等待狀態(tài)。④在每個TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,
CPU從AD0~AD7數(shù)據(jù)總線上讀取數(shù)據(jù)。,
引腳上控制信號復(fù)位。③
S3~S6狀態(tài)線復(fù)位。ALEA19/S6~A16/S3地址輸出狀態(tài)輸出
A15~A8地址輸出CLKT1T2T3TWT4≈高為讀I/O,低為讀存儲器AD15~AD0地址輸出數(shù)據(jù)輸入3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)2.8086最小模式存儲器和I/O寫總線周期1.T1狀態(tài):①T1
前沿之后,使
=0,訪問存儲器
=1,訪問I/O端口②送地址信號AD19-0
,輸出ALE正脈沖信號下降沿鎖存地址。
A15~
A8始終為高8位地址。③送=1,
8286工作在發(fā)送狀態(tài)(寫數(shù)據(jù))。T2狀態(tài):①AD0~AD7地址信號消失,立即將要輸出的數(shù)據(jù)送AD0~AD7
總線
A16~A19變?yōu)闋顟B(tài)S3~S6②在T2前沿,=0
低電平有效,打開存儲器或I/O端數(shù)據(jù)緩沖器
=0,作為
8286的選通信號,開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲器或I/O端口接受AD0~AD7上的數(shù)據(jù)②若來不及接受數(shù)據(jù),則通過8284經(jīng)CPU的READY線送低電平信號③T3
的下降沿,采樣
READY引腳電平,若是低電平,需插入TW
等待狀態(tài)。④在每個TW狀態(tài)的下降沿采樣READY引腳電平,直到就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,存儲器或I/O端口完成從AD0~AD7數(shù)據(jù)總線上讀取數(shù)據(jù)。,
引腳上控制信號復(fù)位。③S3~S6狀態(tài)線復(fù)位。CLKALET1T2T3TWT4≈A19/S6~A16/S3地址輸出狀態(tài)輸出S3~
S6高為寫I/O,低為寫存儲器AD7~AD0地址輸出數(shù)據(jù)輸出A15~A8地址輸出3.總線保持請求和總線授權(quán)時序3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)
當(dāng)系統(tǒng)中CPU之外的總線主設(shè)備(例如DMA)需要占用總線時,向CPU發(fā)出一個總線保持請求信號HOLD,該信號可能與時鐘信號不同步。CPU在每個時鐘周期的上升沿檢測到該信號時,在當(dāng)前總線周期的T4后或下一個總線周期的T1后,CPU發(fā)出HLDA信號,并讓出總線。1.T1狀態(tài):①T1
狀態(tài)的下降沿,發(fā)出狀態(tài)信號
~
。經(jīng)Intel8288譯碼形成、、、
ALE、DEN等控制信號。②送出地址信號AD19-0
,輸出ALE正脈沖信號,在
ALE
的下降沿鎖存地址。③送出=0,8286工作在接收狀態(tài)(讀數(shù)據(jù))T2狀態(tài):①AD0~AD15地址信號消失,處于浮空狀態(tài),作為輸入數(shù)據(jù)的過渡期
A16~A19變?yōu)闋顟B(tài)S3~S6。②低有效訪問存儲器低有效訪問I/O端口
DEN為高電平有效,作為8286的選通信號,開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲器或I/O端口將數(shù)據(jù)送AD0~AD15總線②
~
變?yōu)楦唠娖?。③若?shù)據(jù)未準(zhǔn)備就緒,則通過8284經(jīng)CPU的
READY線送低電平信號經(jīng)T3的下降沿采樣引腳電平,插入TW等待狀態(tài)。④在每個TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,
CPU從AD0~AD15數(shù)據(jù)總線上讀取數(shù)據(jù)。各引腳上控制信號復(fù)位,準(zhǔn)備下一個總線周期。③S3~S6狀態(tài)線復(fù)位。ALEAD15~AD0地址輸出數(shù)據(jù)輸入CLKT1T2T3、TWT4輸出狀態(tài)輸出S7~S3A19/S6~A16/S3地址輸出QS0,QS1READYDEN8288輸出3.7.3最大模式系統(tǒng)總線周期時序3.78086微處理器的時序3
8086/8088微處理器結(jié)構(gòu)1.8086最大模式存儲器和I/O讀總線周期3
8086/8088微處理器結(jié)構(gòu)1.T1狀態(tài):①T1
狀態(tài)的下降沿,發(fā)出狀態(tài)信號
~
。經(jīng)Intel8288譯碼形成、、、ALE、
DEN等控制信號。②送出地址信號AD19-0
,輸出ALE正脈沖信號,在
ALE
的下降沿鎖存地址。③送出=1,8286工作在發(fā)送狀態(tài)(寫數(shù)據(jù))T2狀態(tài):①AD0~AD15地址信號消失,立即將要輸出的數(shù)據(jù)送AD0~AD15數(shù)據(jù)總線。
A16~A19變?yōu)闋顟B(tài)S3~S6。②存儲器寫超前寫控制信號;
I/O端口寫超前寫控制信號;超前寫控制信號超前一個時鐘周期發(fā)出。
DEN為高電平有效,作為8286的選通信號。3.T3狀態(tài):①存儲器或I/O端口接受
AD0~AD15總線上的數(shù)據(jù)②
~
變?yōu)楦唠娖?。③若來不及接受?shù)據(jù),則通過8284經(jīng)CPU的
READY線送低電平信號,經(jīng)T3的下降沿采樣引腳電平,插入TW等待狀態(tài)。④在每個TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,存儲器或I/O端口從AD0~AD15數(shù)據(jù)總線上讀取數(shù)據(jù)。各引腳上控制信號復(fù)位,準(zhǔn)備下一個總線周期。③
S
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職第一學(xué)年(視覺傳達(dá)設(shè)計)品牌視覺設(shè)計基礎(chǔ)測試題及答案
- 2025年高職(炭素工程技術(shù))炭素制品設(shè)計階段測試試題及答案
- 2025年大學(xué)藝術(shù)概論(應(yīng)用解讀)試題及答案
- 2025年中職(美容美體藝術(shù))面部護(hù)理技術(shù)階段測試試題及答案
- 2025年大學(xué)漢語言文學(xué)(文學(xué)理論研究)試題及答案
- 2025年高職教師專業(yè)發(fā)展(教學(xué)能力提升)試題及答案
- 道路公路施工組織設(shè)計方案
- 2026年玉溪興誠會計服務(wù)有限公司公開招聘玉溪市紅塔區(qū)春和街道綜合應(yīng)急隊伍備考題庫及1套參考答案詳解
- 會議紀(jì)律與秩序維護(hù)制度
- 2026年設(shè)計心理學(xué)基礎(chǔ)與應(yīng)用試題含答案
- 裝飾裝修驗收方案
- 七年級上冊語文人教版字詞帶拼音解釋(完整版)
- 環(huán)境監(jiān)測站電路安裝施工方案
- DB14∕T 1754-2018 保模一體板現(xiàn)澆混凝土復(fù)合保溫系統(tǒng)通.用技術(shù)條件
- JGJT46-2024《施工現(xiàn)場臨時用電安全技術(shù)標(biāo)準(zhǔn)》條文解讀
- 電梯安裝施工合同
- DL-T5024-2020電力工程地基處理技術(shù)規(guī)程
- 耐高溫鋁電解電容器項目計劃書
- 小學(xué)四年級語文上冊期末測試卷(可打印)
- 人教版三年級上冊數(shù)學(xué)應(yīng)用題100題及答案
- 防污閃涂料施工技術(shù)措施
評論
0/150
提交評論