




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
微機(jī)原理與接口技術(shù)(第3版)3
8086/8088微處理器結(jié)構(gòu)
微處理器的內(nèi)部結(jié)構(gòu)總線工作周期中斷系統(tǒng)外部引腳和工作模式存儲(chǔ)器組織結(jié)構(gòu)微處理器的時(shí)序例題解析1.8086CPU是16位的第三代微處理器,
其內(nèi)部數(shù)據(jù)總線和外部數(shù)據(jù)總線均16位。2.8086具有20位地址總線,可尋址的內(nèi)存地址空間達(dá)1M字節(jié),可尋址的I/O地址空間為64K字節(jié),3.8086有多重尋址方式、多級(jí)中斷方式、多重?cái)?shù)據(jù)處理形式、段式存儲(chǔ)器結(jié)構(gòu)、硬件乘除法運(yùn)算電路。取指令和執(zhí)行指令的操作并行運(yùn)行,
運(yùn)行速度大大提高。4.8086具有最小模式和最大模式,應(yīng)用領(lǐng)域?qū)拸V,適應(yīng)性強(qiá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ù)存儲(chǔ)格式1.尋址空間當(dāng)存儲(chǔ)器按字節(jié)編址時(shí),若地址總線為n位,CPU尋址范圍是2n字節(jié)例如:8086CPU有地址總線20位,尋址能力為220=1M字節(jié)3.28086的存儲(chǔ)器組織3
8086/8088微處理器結(jié)構(gòu)2.8086存儲(chǔ)器的組織及尋址20位地址線,可尋址的地址范圍為00000H~FFFFFH3.28086的存儲(chǔ)器組織3
8086/8088微處理器結(jié)構(gòu)十六進(jìn)制地址二進(jìn)制地址存儲(chǔ)器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ù)的存儲(chǔ)格式
計(jì)算機(jī)中信息的單位有:位(bit)、字節(jié)(byte)字(word)、雙字(doubleword)等⑴字節(jié)數(shù)據(jù)(BYTE)
8位,偶地址(地址的最低位A0=0),或奇地址(A0=1)
⑵字?jǐn)?shù)據(jù)(WORD)16位,存放在兩個(gè)連續(xù)的字節(jié)單元中。其中高8位存放在在高地址字節(jié)(高字節(jié)),低8位存放在在低地址字節(jié)(低字節(jié)),并規(guī)定將低字節(jié)的地址作為這個(gè)字的地址(字地址)
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個(gè)連續(xù)字節(jié)單元,并規(guī)定最低字節(jié)地址為雙字的地址數(shù)據(jù)的存儲(chǔ)格式
D31~D24地址=N+3
D23~D16地址=N+2
D15~D8地址=N+1雙字地址D7~D0地址=N(低字節(jié))數(shù)據(jù)的地址對(duì)齊同一個(gè)存儲(chǔ)器地址可以表示為:字節(jié)單元地址、字單元地址、雙字單元地址等等(視指令的具體情況)。將字單元安排在偶地址(xx……….xx0B),將雙字單元安排在模4地址(xx………xx00B)的做法,被稱為“地址對(duì)齊(Align)”。存儲(chǔ)的數(shù)據(jù)如果對(duì)齊邊界,則存取速度較快3
8086/8088微處理器結(jié)構(gòu)8086系統(tǒng)的存儲(chǔ)器結(jié)構(gòu)數(shù)據(jù)類型A0操
作用到的數(shù)據(jù)引腳規(guī)則字00從偶地址開始讀/寫一個(gè)字D15—D0字節(jié)01從奇地址開始讀/寫一個(gè)字節(jié)D15—D810從偶地址開始讀/寫一個(gè)字節(jié)D7—D0非規(guī)則字0110從奇地址開始讀寫一個(gè)字(非規(guī)則字),第一總線周期高8位數(shù)據(jù)有效,第二總線周期低8位數(shù)據(jù)有效。D15—D8D7—D0
11無效
3
8086/8088微處理器結(jié)構(gòu)3.2.2存儲(chǔ)器的分段結(jié)構(gòu)和物理地址的形成
0段1段2段15段00000H0FFFFH10000H1FFFFH20000H2FFFFHF0000HFFFFFH64K字節(jié)64K字節(jié)64K字節(jié)64K字節(jié)……………………1.存儲(chǔ)器的分段結(jié)構(gòu)由于8086中的地址寄存器都是16位的,用戶不能直接使用20位的物理地址,編程時(shí)需要使用邏輯地址來尋址存儲(chǔ)單元。邏輯地址由兩個(gè)16位數(shù)構(gòu)成,其形式為:8086將存儲(chǔ)空間分為多個(gè)邏輯段(Segment)來進(jìn)行管理,要求:段的20位的起始地址(xxxxxH)其低4位必須為0(xxxx0H),所以可以將它們省略,然后用1個(gè)16位數(shù)來表示表示段的首地址。每段長度限216=64KB,所以段內(nèi)偏移地址可以用1個(gè)16位數(shù)表示(xxxxH)1MB最多可分為16個(gè)不重迭的段。(16位段地址)
:(16位偏移量)
段的起始地址:
段內(nèi)的偏移地址3
8086/8088微處理器結(jié)構(gòu)實(shí)際上,兩個(gè)不同的邏輯段可以交疊,或者完全重疊3
8086/8088微處理器結(jié)構(gòu)3.2.2存儲(chǔ)器的分段結(jié)構(gòu)和物理地址的形成CS=7018H,IP=FE7FH,物理地址=7FFFFH例如:7018:FE7F圖3.5物理地址形成過程2.物理地址的形成每個(gè)存儲(chǔ)單元都有一個(gè)唯一物理地址(00000H~FFFFFH),20位二進(jìn)制數(shù),該地址在指令執(zhí)行時(shí)由地址加法器形成,并進(jìn)行硬件尋址。地址加法器的具體做法:段地址左移4位,然后加上偏移地址就得到20位物理地址。3
8086/8088微處理器結(jié)構(gòu)用戶編程時(shí)采用邏輯地址,其形式為:段的首地址:段內(nèi)偏移地址它們由兩個(gè)16位的無符號(hào)數(shù)構(gòu)成。邏輯地址“1460H:100H”=物理地址14700H一個(gè)存儲(chǔ)單元可以擁有多個(gè)邏輯地址,但只可能擁有一個(gè)唯一的物理地址。例如:物理地址:00200H邏輯地址:0020H:0000H邏輯地址:0000H:0200H3
8086/8088微處理器結(jié)構(gòu)存儲(chǔ)器可以劃分為:程序區(qū)、數(shù)據(jù)區(qū)、堆棧區(qū)程序段中存儲(chǔ)程序的指令代碼;數(shù)據(jù)段和附加段中存儲(chǔ)數(shù)據(jù)、中間結(jié)果和最后結(jié)果;堆棧段存儲(chǔ)壓入堆棧的數(shù)據(jù)或狀態(tài)信息。3.按信息特征分段存儲(chǔ)3
8086/8088微處理器結(jié)構(gòu)3.3.1
8086CPU內(nèi)部結(jié)構(gòu)分成兩部分:總線接口部件BIU:
總線接口單元BIU,負(fù)責(zé)控制存貯器讀寫。執(zhí)行部件EU:
執(zhí)行單元EU從指令隊(duì)列中取出指令并執(zhí)行。特點(diǎn):取指部分和執(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通用寄存器地址加法器指令隊(duì)列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位外部總線內(nèi)部暫存器
IP
ES
SSDSCS輸入/輸出控制電路執(zhí)行部分控制電路123456∑ALU標(biāo)志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器地址加法器指令隊(duì)列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位執(zhí)行部件總線接口部件通用寄存器四個(gè)專用寄存器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通用寄存器地址加法器指令隊(duì)列緩沖器執(zhí)行部件(EU)總線接口部件(BIU)16位20位16位8位20位地址加法器四個(gè)段寄存器:CS、DS、SS、ESCS管理代碼段;DS管理數(shù)據(jù)段SS管理堆棧段;ES管理附加段.16位的指令指針寄存器IP:IP中的內(nèi)容是下一條指令對(duì)現(xiàn)行代碼段基地址的偏移量,6字節(jié)的指令隊(duì)列指令隊(duì)列共六字節(jié),總線接口部件BIU從內(nèi)存取指令,取來的總是放在指令隊(duì)列中;執(zhí)行部件EU從指令隊(duì)列取指令,并執(zhí)行。3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)AHBHCHDHALBLCLDLSPBPSIDIIPFLAGSCSDSSSES000151515AXBXCXDX累加器基址寄存器計(jì)數(shù)器數(shù)據(jù)寄存器堆棧指針基址指針源變址目的變址指令指針標(biāo)志寄存器代碼段數(shù)據(jù)段堆棧段附加段通用數(shù)據(jù)寄存器指針和變址寄存器控制寄存器段寄存器015871.數(shù)據(jù)寄存器8086含4個(gè)16位數(shù)據(jù)寄存器,它們又可分為8個(gè)8位寄存器,即:AXAH,ALBXBH,BLCXCH,CLDXDH,DL常用來存放參與運(yùn)算的操作數(shù)或運(yùn)算結(jié)果3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)數(shù)據(jù)寄存器特有的習(xí)慣用法AX:累加器。多用于存放中間運(yùn)算結(jié)果。
所有I/O指令必須都通過AX與接口傳送信息;BX:基址寄存器。常用于存放訪問內(nèi)存時(shí)的偏移地址;CX:計(jì)數(shù)寄存器。用于在循環(huán)或串操作指令中存放循環(huán)次數(shù)
或重復(fù)次數(shù);DX:數(shù)據(jù)寄存器。在32位乘除法運(yùn)算時(shí),存放高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)存時(shí)存放內(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)志寄存器,用來存放運(yùn)算結(jié)果的特征。其中7位沒有定義,其余9位分成兩類:狀態(tài)標(biāo)志:表示運(yùn)算后結(jié)果的狀態(tài)特征它影響后面的操作,
有6位:CF、PF、AF、ZF、SF和OF。控制標(biāo)志,用來控制CPU操作,有3個(gè):TF、IF和DF。具體格式如圖3-9。3.3.28086CPU的寄存器結(jié)構(gòu)3
8086/8088微處理器結(jié)構(gòu)CF-進(jìn)位標(biāo)志:算術(shù)運(yùn)算時(shí)有進(jìn)位CF=1,無進(jìn)位CF=0PF-奇偶標(biāo)志:運(yùn)算結(jié)果中“1”的個(gè)數(shù)為偶數(shù)PF=1AF-輔助進(jìn)位標(biāo)志:第3位向第4位有進(jìn)位時(shí)AF=1ZF-零標(biāo)志:運(yùn)算結(jié)果為“0”則ZF=1SF-符號(hào)標(biāo)志:運(yùn)算結(jié)果為負(fù)數(shù)時(shí)SF=1OF-溢出標(biāo)志:運(yùn)算結(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)。解用補(bǔ)碼公式對(duì)兩數(shù)進(jìn)行運(yùn)算,并按定義對(duì)結(jié)果進(jìn)行判別。計(jì)算機(jī)中存儲(chǔ)的已是補(bǔ)碼,兩數(shù)相加過程如下:3.3.28086CPU的寄存器結(jié)構(gòu)根據(jù)兩數(shù)相加結(jié)果,可得如下結(jié)論:①結(jié)果非零,故ZF=0。②低8位中共有4個(gè)1(偶數(shù)個(gè)),故PF=1。③根據(jù)符號(hào)位,可知SF=0。④運(yùn)算結(jié)束后,向更高位無進(jìn)位,故CF=0。⑤運(yùn)算結(jié)果無溢出,故OF=0。
⑥D(zhuǎn)3位向D4位產(chǎn)生進(jìn)位,故AF=1。了解幾個(gè)概念主頻:CPU的工作頻率時(shí)鐘周期:對(duì)主頻進(jìn)行分頻后的工作時(shí)鐘總線周期:完成一次總線操作所需的時(shí)間在8088CPU中,CPU與內(nèi)存或接口間進(jìn)行通信,
如將一個(gè)字節(jié)寫入內(nèi)存一個(gè)單元(或接口),
或者從內(nèi)存某單元(或某接口)讀一個(gè)字節(jié)到CPU,
這種讀(或)寫的過程稱為一個(gè)總線周期。指令周期:一條指令從開始取指令到最后執(zhí)行完畢所需的時(shí)間3.48086總線的工作周期3
8086/8088微處理器結(jié)構(gòu)3.48086總線的工作周期3
8086/8088微處理器結(jié)構(gòu)總線周期時(shí)序1個(gè)總線周期正常情況下由4個(gè)時(shí)鐘周期(T1―T4)組成;時(shí)鐘周期由主頻決定;空閑周期TI和等待周期TW;讀、寫、中斷響應(yīng)、總線保持與響應(yīng)等的總線周期時(shí)序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可屏蔽中斷請(qǐng)求中斷邏輯INTO指令I(lǐng)NTn指令除法出錯(cuò)單步(TF=1)非屏蔽中斷請(qǐng)求8086/8088CPUNMIINTR內(nèi)部中斷外部中斷可屏蔽中斷非屏蔽中斷1.外部中斷3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086CPUNMIINTR不可屏蔽中斷請(qǐng)求輸入端可屏蔽中斷請(qǐng)求輸入端8086CPU提供兩條引腳INTR、NMI接受中斷請(qǐng)求信號(hào)INTA中斷響應(yīng)信號(hào)輸出端不可屏蔽中斷(NMI中斷)▼中斷類型碼2▼上升沿觸發(fā)申請(qǐng)中斷▼不受中斷允許標(biāo)志IF的控制與影響(即不可屏蔽),一旦NMI引腳出現(xiàn)中斷請(qǐng)求,CPU在當(dāng)前指令執(zhí)行完后,必須立即響應(yīng)。▼由計(jì)算機(jī)內(nèi)部硬件出錯(cuò)而引發(fā),一般用于處理緊急事件。
PC機(jī)中用于內(nèi)存奇偶校驗(yàn)出錯(cuò)和系統(tǒng)主要故障(如電源斷電等)。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)8086CPUNMI可屏蔽中斷(INTR中斷)▼外設(shè)申請(qǐng)的中斷▼電平觸發(fā)▼受中斷允許標(biāo)志IF控制
IF=1(指令STI),開中斷,允許響應(yīng)INTR中斷
IF=0(指令CLI),關(guān)中斷,禁止響應(yīng)INTR中斷
——當(dāng)外設(shè)對(duì)CPU有服務(wù)請(qǐng)求,會(huì)向INTR發(fā)來一個(gè)高電平信號(hào)(見上圖),并且中斷允許標(biāo)志IF=1時(shí),CPU會(huì)在當(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只有一個(gè)可屏蔽中斷請(qǐng)求輸入引腳,8086中斷系統(tǒng)設(shè)計(jì)中斷控制器(8259A)管理各種外設(shè)提出的中斷請(qǐng)求。所有外設(shè)的中斷請(qǐng)求信號(hào)都可送至8259A的中斷請(qǐng)求輸入端IRQ0~I(xiàn)RQ7任何一個(gè),8259A選擇其中優(yōu)先級(jí)最高的中斷請(qǐng)求,送至CPU的INTR引腳,向CPU申請(qǐng)可屏蔽中斷。
可屏蔽中斷源的中斷類型碼由8259A提供。INTRINTA8086CPUINTINTA8259AIRQ0IRQ1IRQ2IRQ7……可屏蔽中斷請(qǐng)求輸入端8259A可對(duì)多個(gè)可屏蔽中斷源進(jìn)行優(yōu)先級(jí)控制,一片8259A可管理8級(jí)可屏蔽中斷。2.內(nèi)部中斷不需要外部硬件支持,不受中斷標(biāo)志IF的影響,中斷類型碼或包含在指令中,或預(yù)先規(guī)定。8086/8088內(nèi)部中斷有以下5種:除法出錯(cuò)中斷斷點(diǎn)中斷單步中斷溢出中斷軟件中斷3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)軟件中斷主要有五種,分為三類。
1)處理運(yùn)算過程中某些錯(cuò)誤的中斷執(zhí)行程序時(shí),為及時(shí)處理運(yùn)算中的某些錯(cuò)誤,CPU以中斷方式中止正在運(yùn)行的程序,提醒程序員改錯(cuò)。
(1)除法錯(cuò)中斷(中斷類型號(hào)為0)。在8086/8088CPU執(zhí)行除法指令(DIV/IDIV)時(shí),若發(fā)現(xiàn)除數(shù)為0,或所得的商超過了CPU中有關(guān)寄存器所能表示的最大值,則立即產(chǎn)生一個(gè)類型號(hào)為0的內(nèi)部中斷,CPU轉(zhuǎn)去執(zhí)行除法錯(cuò)中斷處理程序。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)
例movbl,0idivbl ;除數(shù)BL=0,產(chǎn)生除法錯(cuò)中斷(2)溢出中斷INTO(中斷類型號(hào)為4)。CPU進(jìn)行帶符號(hào)數(shù)的算術(shù)運(yùn)算時(shí),若發(fā)生了溢出,則標(biāo)志位OF=1,若此時(shí)執(zhí)行INTO指令,會(huì)產(chǎn)生溢出中斷,打印出一個(gè)錯(cuò)誤信息,結(jié)束時(shí)不返回,而把控制權(quán)交給操作系統(tǒng)。若OF=0,則INTO不產(chǎn)生中斷,CPU繼續(xù)執(zhí)行下一條指令。INTO指令通常安排在算術(shù)指令之后,以便在溢出時(shí)能及時(shí)處理。例如:3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)movax,2000haddax,7000h
;2000H+7000H=9000H,溢出:OF=1into ;因?yàn)镺F=1,所以產(chǎn)生溢出中斷2)為調(diào)試程序設(shè)置的中斷(1)單步中斷(中斷類型號(hào)為1)。當(dāng)TF=1時(shí),每執(zhí)行一條指令,CPU會(huì)自動(dòng)產(chǎn)生一個(gè)單步中斷。單步中斷可一條一條指令地跟蹤程序流程,觀察各個(gè)寄存器及存儲(chǔ)單元內(nèi)容的變化,幫助分析錯(cuò)誤原因。單步中斷又稱為陷阱中斷,主要用于程序調(diào)試。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)例如:DEBUG.EXE調(diào)試程序的單步命令T就利用單步中斷實(shí)現(xiàn)對(duì)程序的單步調(diào)試(2)斷點(diǎn)中斷(中斷類型號(hào)為3)。調(diào)試程序時(shí)可以在一些關(guān)鍵性的地方設(shè)置斷點(diǎn),它相當(dāng)于把一條INT3指令插入到程序中,CPU每執(zhí)行到斷點(diǎn)處,INT3指令便產(chǎn)生一個(gè)中斷,使CPU轉(zhuǎn)向相應(yīng)的中斷服務(wù)程序3)中斷指令I(lǐng)NTn引起的中斷(中斷類型號(hào)為n)
程序設(shè)計(jì)時(shí),可以用INTn指令來產(chǎn)生軟件中斷,中斷指令的操作數(shù)n給出了中斷類型號(hào),CPU執(zhí)行INTn指令后,會(huì)立即產(chǎn)生一個(gè)類型號(hào)為n的中斷,轉(zhuǎn)入相應(yīng)的中斷處理程序來完成中斷功能。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)3.8086中斷源的優(yōu)先級(jí)
8086中斷源的優(yōu)先級(jí)順序由高到低依次為:
軟件中斷(除單步中斷外)、非屏蔽中斷、可屏蔽中斷、單步中斷。3.58086中斷系統(tǒng)3
8086/8088微處理器結(jié)構(gòu)對(duì)同時(shí)產(chǎn)生的中斷:首先處理優(yōu)先級(jí)別較高的中斷;若優(yōu)先級(jí)別相同,則按先來先服務(wù)的原則處理;對(duì)非同時(shí)產(chǎn)生的中斷:允許低優(yōu)先級(jí)別的中斷處理程序被高優(yōu)先級(jí)別的中斷源所中斷——中斷嵌套。中斷類型碼:8086可以處理256個(gè)中斷請(qǐng)求,每個(gè)中斷請(qǐng)求均對(duì)應(yīng)于惟一固定的類型碼。被0除類型碼是0,單步為1;NMI為2;斷點(diǎn)中斷為3,溢出中斷為4……等。中斷向量:即中斷服務(wù)程序的入口地址,包括段地址(高字單元)和偏移地址(低字單元)。3.5.2中斷向量與中斷向量表3
8086/8088微處理器結(jié)構(gòu)每個(gè)中斷處理程序都有一個(gè)唯一的中斷向量。;中斷服務(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。每個(gè)中斷向量占用4Bytes,低字為段內(nèi)偏移地址,高字為段基址。中斷類型碼與中斷向量地址的關(guān)系:
設(shè)某類中斷的中斷類型碼為n中斷向量在IVT中的存放地址(向量地址)=4×n3.5.2中斷向量與中斷向量表3
8086/8088微處理器結(jié)構(gòu)例:某系統(tǒng)中鍵盤中斷的類型碼為09H,試問其對(duì)應(yīng)中斷服務(wù)程序的入口地址?
40H30H20H10H
0024H0025H0026H0027H1)中斷向量的存放地址由4
n=4
9=36=24H知中斷向量存放在存儲(chǔ)器中從0000:0024H開始的4個(gè)單元中,即0024H—0027H單元。存儲(chǔ)器
IP
CS2)由右圖易知鍵盤中斷的中斷處理程序的入口地址為
4030:2010H即可轉(zhuǎn)入鍵盤中斷服務(wù)程序執(zhí)行。1.可屏蔽中斷的中斷過程3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)中斷處理過程:包括中斷請(qǐng)求、中斷排隊(duì)、中斷響應(yīng)、中斷處理、中斷返回等全過程。(1)CPU響應(yīng)可屏蔽中斷的條件外設(shè)提出中斷申請(qǐng);本中斷未被中斷控制器屏蔽;本中斷優(yōu)先級(jí)最高;CPU允許中斷;(2)CPU響應(yīng)可屏蔽中斷的過程CPU在每條指令的最后一個(gè)T周期,檢測INTR,若為高電平,且IF=1,則CPU響應(yīng)中斷。響應(yīng)過程中自動(dòng)依次完成以下工作:CPU向外設(shè)發(fā)兩個(gè)/INTA,外設(shè)收到第2個(gè)/INTA后,立即通過數(shù)據(jù)線給CPU送中斷類型號(hào)。CPU從數(shù)據(jù)線上讀取中斷類型號(hào)將Flags內(nèi)容入棧保護(hù)現(xiàn)行程序的控制標(biāo)志及其運(yùn)行結(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í)行中斷程序這段時(shí)間內(nèi)又響應(yīng)新的中斷。保護(hù)斷點(diǎn)將當(dāng)前指令的下一條指令的CS和IP入棧,使中斷處理完成后能正確的回到原程序處繼續(xù)執(zhí)行。轉(zhuǎn)入相應(yīng)的中斷服務(wù)子程序;中斷返回從堆棧中彈出斷點(diǎn)的地址(IP和CS)和Flags的內(nèi)容,返回主程序的斷點(diǎn)處,繼續(xù)執(zhí)行主程序。3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)2.非屏蔽中斷和軟件中斷的執(zhí)行過程3.5.38086中斷處理過程3
8086/8088微處理器結(jié)構(gòu)3.中斷類型碼的形成中斷入口地址依賴中斷類型號(hào),中斷型號(hào)獲取方法:對(duì)于專用中斷:除法出錯(cuò)、單步中斷、不可屏蔽中斷、斷點(diǎn)中斷和溢出中斷,由CPU分別提供中斷類型號(hào)0~4(內(nèi)部行成);對(duì)于用戶自己確定的軟件中斷INTn,類型號(hào)由n決定;對(duì)于INTR引腳上的中斷:由硬件電路設(shè)計(jì)產(chǎn)生中斷類型號(hào)可用8259A獲取中斷類型號(hào)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一個(gè)微處理器,所有的總線控制信號(hào)均為8086產(chǎn)生,系統(tǒng)中的總線控制邏輯電路,減少到最少。最大模式:用于大型(中型)8086系統(tǒng)中。系統(tǒng)總是包含有兩個(gè)或多個(gè)微處理器,其中一個(gè)主處理器就是8086,還有協(xié)處理器8087、8089等。通常由專門的總線控制器(8288)產(chǎn)生總線控制信號(hào)。8086采用雙列直插式(DoubleInlinePackage,DIP)封裝,具有40條引腳,使用+5V電源供電。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)40引腳線地址線數(shù)據(jù)線控制線狀態(tài)線電源線定時(shí)線時(shí)鐘頻率有3種:5MHz(8086)、8MHz(8086-1)和10MHz(8086-2)。其引腳信號(hào)如圖3.13所示,括號(hào)內(nèi)為最大模式時(shí)的引腳名稱。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)表3.28086引腳信號(hào)定義3.6.2兩種模式下公用的引腳信號(hào)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)所謂三態(tài)是指總線輸出可以有三個(gè)狀態(tài):高電平、低電平和高阻狀態(tài)。當(dāng)處于高阻狀態(tài)時(shí),該總線在邏輯上與所有連接負(fù)載斷開。地址總線、數(shù)據(jù)總線、狀態(tài)信號(hào)(1)AD15~AD0(2~16,39)地址/數(shù)據(jù)復(fù)用總線;雙向、三態(tài);分時(shí)輸出低16位地址信號(hào)及進(jìn)行數(shù)據(jù)信號(hào)的輸入/輸出。A15-A0:T1輸出訪問存儲(chǔ)器或I/O的地址信息。D15-D0:T2-T4輸出與存儲(chǔ)器和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);分時(shí)輸出地址的高4位及狀態(tài)信息。A19-A16:T1輸出訪問存儲(chǔ)器的20位地址的高4位地址A19-A16。S6-S3:T2-T4輸出CPU的工作狀態(tài)。其中S6為0用以指示8086當(dāng)前與總線連通;S5為1表明8086可以響應(yīng)可屏蔽中斷。S4、S3共有四個(gè)組合狀態(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)信號(hào);T2-T4狀態(tài)輸出S7狀態(tài)信號(hào)。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)讀信號(hào);三態(tài)輸出;低電平有效;RD=0,表示CPU正在讀存儲(chǔ)器或I/O端口。(2)READY(22)準(zhǔn)備就緒信號(hào);輸入;高電平有效。READY=1,表示CPU訪問的存儲(chǔ)器或IO端口已準(zhǔn)備好傳送數(shù)據(jù)。若CPU在總線周期T3狀態(tài)檢測到READY=0,表示未準(zhǔn)備好,CPU自動(dòng)插入一個(gè)或多個(gè)等待狀態(tài)TW,直到READY=1為止。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)TEST(23)測試信號(hào),輸入。當(dāng)CPU執(zhí)行WAIT指令時(shí),CPU每隔5個(gè)T狀態(tài)進(jìn)行一次測試;當(dāng)測試到TEST=1,則CPU重復(fù)執(zhí)行WAIT指令,即CPU處于空閑等待狀態(tài),直到測試到TEST=0時(shí),等待狀態(tài)結(jié)束,CPU繼續(xù)執(zhí)行后續(xù)指令。(4)
RESET
(21)復(fù)位信號(hào),輸入,高電平有效。RESET信號(hào)至少要保持4個(gè)時(shí)鐘周期。復(fù)位時(shí):標(biāo)志寄存器、IP、DS、SS、ES為0,CS=FFFFH,復(fù)位后CPU從FFFF0H處開始執(zhí)行。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(4)INTR
(18)可屏蔽中斷請(qǐng)求信號(hào);輸入,高電平有效。當(dāng)INTR=1,表示外設(shè)向CPU發(fā)出中斷請(qǐng)求,CPU在當(dāng)前指令周期的最后一個(gè)T狀態(tài)去采樣該信號(hào),若此時(shí),IF=1,CPU響應(yīng)中斷,執(zhí)行中斷服務(wù)程序。(5)NMI(17)不可屏蔽中斷請(qǐng)求信號(hào),輸入,上升沿觸發(fā)。該請(qǐng)求信號(hào)不受IF狀態(tài)的影響,也不能用軟件屏蔽,一旦該信號(hào)有效,則執(zhí)行完當(dāng)前指令后立即響應(yīng)中斷。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(6)MN/MX(33)工作模式選擇信號(hào);輸入。MN/MX=1,表示CPU工作在最小模式系統(tǒng);MN/MX=0,表示CPU工作在最大模式系統(tǒng)。3.其他信號(hào)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(1)VCC(40)GND(1,20)電源、接地引腳輸入;8086采用單一的+5V電源;但有兩個(gè)接地引腳。(2)CLK(19)時(shí)鐘信號(hào)輸入引腳。要求時(shí)鐘信號(hào)的占空比為33%;即1/3周期為高電平,2/3周期為低電平。3.6.3最小模式3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)最小模式——僅支持單處理器主要需解決:地址與數(shù)據(jù)的分離地址鎖存電路實(shí)現(xiàn)方案用3片8位的鎖存器8282實(shí)現(xiàn)地址鎖存。ALE為鎖存控制信號(hào),OE#≡0使鎖存的地址直接輸出;用2片雙向三態(tài)門8286用作數(shù)據(jù)總線驅(qū)動(dòng)和隔離,DT//R作為方向控制,/DEN作為開門信號(hào);其他控制信號(hào)由8086直接產(chǎn)生。8086最小工作模式下控制核心單元的組成地+5V讀寫控制讀寫控制讀寫控制CSH奇地址存儲(chǔ)體8284時(shí)鐘發(fā)生器RESETREADYCBD7~D0D15~D8DBCSL偶地址存儲(chǔ)體CSI/O接口ABA0A1~A19BHE
STBOE8282鎖存器8086CPUMN/MXINTARDCLKWRREADYM/IORESETALEBHEA19-A16AD15-AD0DENDT/RTOE8286
收發(fā)器D15~D0(1)時(shí)鐘發(fā)生器3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)
8086內(nèi)沒有時(shí)鐘發(fā)生電路,8284就是供8086系列使用的單片時(shí)鐘發(fā)生器。它由時(shí)鐘電路、復(fù)位電路、準(zhǔn)備就緒電路3部分組成。時(shí)鐘發(fā)生電路X1,X2:外接石英晶體連接端F/C:使用外振源還是由X1,X2端外接晶體振蕩器,低電平時(shí)外接晶體振蕩器。CLK:時(shí)鐘信號(hào)輸出端,為振蕩信號(hào)經(jīng)3分頻后產(chǎn)生。PLCK:對(duì)CLK時(shí)鐘信號(hào)二分頻產(chǎn)生,占空比為1/2,供定時(shí)/計(jì)數(shù)器使用。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)時(shí)鐘發(fā)生電路CSYNC:時(shí)鐘同步輸入,為多個(gè)8284同步工作而設(shè)置EFI:外振源輸入端OSC:晶振頻率輸出端,供顯示器用復(fù)位電路RES:輸入信號(hào),用于產(chǎn)生使系統(tǒng)復(fù)位的輸出信號(hào)RESET,一般來自電源電路。RESET:輸出信號(hào),到CPU的RESET端準(zhǔn)備就緒電路RDY1,RDY2:準(zhǔn)備就緒輸入信號(hào),AEN1,AEN2:用來決定對(duì)應(yīng)的RDY信號(hào)生效與否,若有效使RDY1和RDY2產(chǎn)生REDAY信號(hào),否則使CPU產(chǎn)生等待周期ASYNC:準(zhǔn)備就緒輸入信號(hào)和時(shí)鐘信號(hào)進(jìn)行同步的方式選擇輸入端REDAY:輸出到CPU的準(zhǔn)備就緒信號(hào)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8284A的功能:產(chǎn)生恒定的時(shí)鐘信號(hào),對(duì)準(zhǔn)備好信號(hào)和復(fù)位信號(hào)進(jìn)行同步;外界控制信號(hào)RDY和RES可以在任何時(shí)候到來,8284A把它們同步在時(shí)鐘下降沿時(shí)輸出READY和RESET信號(hào)到CPU。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(2)地址鎖存器:
Intel8282或74LS373
當(dāng)?shù)刂锋i存允許信號(hào)ALE被送到373的選通端G上時(shí),373就鎖存送到它的數(shù)據(jù)輸入端的數(shù)據(jù)。當(dāng)把一個(gè)低電平有效的信號(hào)送給輸出允許端OC(OE)時(shí),373就把鎖存的數(shù)據(jù)從數(shù)據(jù)輸出端輸出。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)雙向總線驅(qū)動(dòng)器
8088收發(fā)數(shù)據(jù)的負(fù)載能力是有限的。為了增加8088的負(fù)載能力,尤其是組建較大系統(tǒng)時(shí),在8088和系統(tǒng)數(shù)據(jù)總線間需使用雙向總線驅(qū)動(dòng)器。用于雙向總線驅(qū)動(dòng)器的芯片有8286和74LS245。G:控制驅(qū)動(dòng)器A端和B端何時(shí)接通DIR:當(dāng)DIR輸入高電平時(shí)。數(shù)據(jù)從A傳到B;當(dāng)DIR輸入低電平時(shí)。數(shù)據(jù)從B傳到A。2.最小模式下的引腳信號(hào)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)
(1)INTA(24)中斷響應(yīng);輸出;當(dāng)CPU響應(yīng)INTR時(shí),INTA=0,表示響應(yīng)中斷。
(2)ALE(25)地址鎖存允許信號(hào);輸出;高電平有效。在任一總線周期的T1期間輸出一個(gè)正脈沖,用于輸出地址鎖存信號(hào)。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(3)DEN(26)數(shù)據(jù)允許信號(hào);三態(tài)、輸出;DEN通常作為數(shù)據(jù)收發(fā)器的選通信號(hào);僅當(dāng)DEN=0時(shí),才允許收發(fā)器收發(fā)數(shù)據(jù)。(4)DT/R(27)數(shù)據(jù)發(fā)送/接收信號(hào);三態(tài)、輸出。為提高CPU數(shù)據(jù)總線驅(qū)動(dòng)能力,常常使用數(shù)據(jù)收發(fā)器(8286/8287);DT/R控制數(shù)據(jù)收發(fā)器的數(shù)據(jù)傳送方向。DT/R=1時(shí),表示CPU輸出(發(fā)送)數(shù)據(jù);DT/R=0時(shí),表示CPU輸入(接收)數(shù)據(jù)。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(5)M/IO(28)存儲(chǔ)器或IO端口訪問信號(hào);三態(tài)、輸出;M/IO=1時(shí),表示CPU當(dāng)前正在訪問存儲(chǔ)器;M/IO=0時(shí),表示CPU當(dāng)前正在訪問I/O端口。(6)WR
(29)寫信號(hào);輸出、三態(tài);低電平有效。WR=0,表示CPU當(dāng)前正在寫存儲(chǔ)器或I/O端口。最小模式下,信號(hào)M/IO,RD,和WR組合起來決定了系統(tǒng)中數(shù)據(jù)傳輸?shù)姆绞健?偩€周期M/IODT/RWR存儲(chǔ)器讀101存儲(chǔ)器寫110I/O讀001I/O寫0103.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)(7)HOLD
(31)總線請(qǐng)求;輸入;用于其它主控器(處理器、DMA等)向本CPU
請(qǐng)求占用總線。(8)HLDA
(30)總線請(qǐng)求響應(yīng),輸出;高電平有效;表示CPU認(rèn)可其他總線部件提出的總線占用請(qǐng)求,準(zhǔn)備讓出總線控制權(quán)。3.6.4最大模式在最小模式下,CPU必須配有8282、8284、8286才能構(gòu)成整個(gè)微處理器系統(tǒng),才能通過地址、數(shù)據(jù)、控制總線與外部設(shè)備聯(lián)系,控制外設(shè)工作。在最大模式下,除了上述還需要配置8288總線控制器,由8288對(duì)處理器發(fā)出的控制信號(hào)進(jìn)行變換和組合,最終由8288產(chǎn)生總線控制信號(hào),而不是由CPU直接產(chǎn)生。有兩個(gè)或兩個(gè)以上的CPU,一個(gè)為主處理器8086/8088,另一個(gè)為協(xié)處理器8087/8089。數(shù)值運(yùn)算協(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è)了一個(gè)總線控制器8288和一個(gè)總線仲裁器8289。
8086CPU輸出的狀態(tài)信號(hào)S2~S0同時(shí)送給8288和8289,由8288輸出8086CPU系統(tǒng)所需要的控制信號(hào),以得到對(duì)存儲(chǔ)器和I/O端口的讀寫信號(hào)和對(duì)鎖存器8282及對(duì)總線收發(fā)器8286的控制信號(hào)。而8289總線仲裁器對(duì)系統(tǒng)中多個(gè)處理器提出共享總線資源的要求作出裁決。因此,8086的最大模式系統(tǒng)由于8288和8289的存在,可以構(gòu)成一個(gè)多處理器系統(tǒng)。在最大模式系統(tǒng)中,一般還有中斷優(yōu)先級(jí)管理部件,圖中用8259A作為中斷優(yōu)先級(jí)管理部件。系統(tǒng)所含設(shè)備較少時(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)方式時(shí),就需要使用8288總線控制器來產(chǎn)生存儲(chǔ)器和I/O端口讀寫操作的控制信號(hào)。在最大組態(tài)的系統(tǒng)中,命令信號(hào)和總線控制所需要的信號(hào)都是8288根據(jù)8088提供的狀態(tài)信號(hào)S0、S1、S2輸出的。不同狀態(tài)下8288對(duì)應(yīng)的輸出命令信號(hào)
000 中斷響應(yīng)001 讀I/O010 寫I/O011 暫停100 取指101 讀存儲(chǔ)器110 寫存儲(chǔ)器111 無效S2S1S0INTAMRDCIORCAIOWCIOWCMRDCMWTCAMWC3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)用于輸出中斷響應(yīng)讀I/O信號(hào)寫I/O信號(hào)I/O寫超前控制信號(hào)讀存儲(chǔ)器信號(hào)寫存儲(chǔ)器信號(hào)存儲(chǔ)器寫超前控制信號(hào)INTAMRDCIORCAIOWCIOWCMWTCAMWC8288各輸出命令信號(hào)的功能輸出命令信號(hào)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8086控制邏輯8288控制邏輯8288的工作受輸入控制信號(hào)控制,控制信號(hào)包括IOB、
、CEN和CLK,其功能是使8288與CPU保持同步工作。
AEN3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)地址使能信號(hào),當(dāng)8288處于系統(tǒng)總線方式下(IOB=0),用于多總線同步。該信號(hào)保持低電平115ns后,8288開始輸出控制信號(hào)。AEN:CEN:8288片選有效信號(hào),用于多片8288協(xié)調(diào)工作。CEN=1,該8288工作=0,該8288不工作CLK:時(shí)鐘信號(hào),通常由系統(tǒng)時(shí)鐘提供,同步控制信號(hào)的節(jié)拍。IOB=0,系統(tǒng)總線工作方式=1,I/O總線工作方式IOB:總線工作方式信號(hào),決定該8288的工作方式。3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)8288輸出控制信號(hào)
8288在進(jìn)行總線讀寫控制中,需要提供相應(yīng)的地址鎖存、數(shù)據(jù)使能及方向控制等信號(hào)。8288提供的信號(hào)包括ALE、DEN、DT/R和MCE/PDEN。ALE:地址鎖存允許信號(hào)DEN:數(shù)據(jù)使能信號(hào)DT/
:數(shù)據(jù)收發(fā)方向信號(hào)RMCE/:主設(shè)備使能/外設(shè)數(shù)據(jù)允許,復(fù)用信號(hào)PDEN3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)2.最大模式8086CPU外部引腳3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)S0,S1,S2(BusCycleStatus)總線周期狀態(tài)信號(hào),三態(tài)輸出它們提供當(dāng)前總線周期中所進(jìn)行的數(shù)據(jù)傳輸過程的類型。由總線控制器8288根據(jù)這些對(duì)存儲(chǔ)器及I/O進(jìn)行控制
.QS1,QS0指令隊(duì)列狀態(tài),向外部輸出.用來表示CPU中指令隊(duì)列當(dāng)前的狀態(tài).編碼如下:QS1QS2含義00無操作01從隊(duì)列中取第一個(gè)字節(jié)10隊(duì)列已空11從隊(duì)列中取后續(xù)字節(jié)3.68086微處理器外部基本引腳與工作模式3
8086/8088微處理器結(jié)構(gòu)RQ/GT1,RQ/GT0
(Request/Grant)請(qǐng)求/同意信號(hào),雙向,低電平有效.輸入時(shí)表示其它主控者請(qǐng)求使用總線輸出時(shí)表示CPU對(duì)總線請(qǐng)求的響應(yīng)信號(hào)兩條線可同時(shí)與兩個(gè)主控者相連。但是GT0的優(yōu)先級(jí)比GT1的高。LOCK封鎖信號(hào)
三態(tài)輸出,低電平有效.
LOCK有效時(shí)表示CPU不允許其它總線主控者占用總線.
可防止8086在響應(yīng)中斷時(shí)總線被其它主控部件所占用,在中斷過程中,也自動(dòng)變?yōu)榈碗娖?.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)8086的主要操作:①系統(tǒng)的復(fù)位和啟動(dòng)操作;②暫停操作;③總線操作;④中斷操作;⑤最小模式下的總線保持;⑥最大模式下的總線請(qǐng)求/允許。3.7.1系統(tǒng)的復(fù)位與啟動(dòng)3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)產(chǎn)生:RESET端上的高電平維持4個(gè)時(shí)鐘周期,可使CPU復(fù)位。如果是初次加電引起的復(fù)位,則要求維持不小于50us的高電平。CPU復(fù)位:PSW、DS、ES、SS、IP等寄存器,指令隊(duì)列被清零。CS寄存器設(shè)置為FFFFH。注:由于復(fù)位后,IF=0,處關(guān)中斷狀態(tài),所以在初始化程序中應(yīng)開中斷,使CPU可響應(yīng)中斷請(qǐng)求。CPU重啟:復(fù)位信號(hào)RESET從高電平到低電平的跳變會(huì)觸發(fā)CPU內(nèi)部的復(fù)位邏輯電路,當(dāng)RESET由高電平變低電平7個(gè)機(jī)器周期后,CPU開始從FFFF0處執(zhí)行程序。3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)復(fù)位操作時(shí)序圖
①外部RESET變?yōu)楦唠娖舰贑LK上升沿,內(nèi)部RESET有效③總線復(fù)位④總線懸浮,直到復(fù)位結(jié)束復(fù)位時(shí)總線狀態(tài)地址線為高阻態(tài),直到RESET變?yōu)榈碗娖剑_始從FFFF0H單元取指令;ALE、HLDA等信號(hào)為低電平(無效);一些信號(hào)呈高阻態(tài)。3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)8086的復(fù)位操作通過RESET引腳信號(hào)執(zhí)行,至少維持4個(gè)時(shí)鐘周期高電平,初次加電不少于50μs。復(fù)位后各寄存器值標(biāo)志寄存器清零IP0000HCSFFFFHDS0000HSS0000HES0000H指令隊(duì)列空其它寄存器0000H3.7.2最小模式系統(tǒng)總線周期時(shí)序3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)1.8086最小模式存儲(chǔ)器和I/O讀總線周期1.T1狀態(tài):①T1
前沿之后,使
=0,訪問存儲(chǔ)器
=1,訪問I/O端口②送地址信號(hào)AD19-0
,輸出ALE正脈沖信號(hào)下降沿鎖存地址。
A15~
A8始終為高8位地址。③送=0,
8286工作在接收狀態(tài)(讀數(shù)據(jù))。T2狀態(tài):①AD0~AD7線地址信號(hào)消失,處于浮空狀態(tài),作為輸入數(shù)據(jù)的過渡期
A16~A19變?yōu)闋顟B(tài)S3~S6②在T2前沿,=0
低電平有效,打開存儲(chǔ)器或I/O端數(shù)據(jù)緩沖器
=0,作為
8286的選通信號(hào),開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲(chǔ)器或I/O端口將數(shù)據(jù)送AD0~AD7總線②若數(shù)據(jù)未準(zhǔn)備就緒,則通過8284經(jīng)CPU的READY線送低電平信號(hào)③
T3
的下降沿,采樣READY引腳電平,若是低電平,需插入TW
等待狀態(tài)。④在每個(gè)TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,
CPU從AD0~AD7數(shù)據(jù)總線上讀取數(shù)據(jù)。,
引腳上控制信號(hào)復(fù)位。③
S3~S6狀態(tài)線復(fù)位。ALEA19/S6~A16/S3地址輸出狀態(tài)輸出
A15~A8地址輸出CLKT1T2T3TWT4≈高為讀I/O,低為讀存儲(chǔ)器AD15~AD0地址輸出數(shù)據(jù)輸入3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)2.8086最小模式存儲(chǔ)器和I/O寫總線周期1.T1狀態(tài):①T1
前沿之后,使
=0,訪問存儲(chǔ)器
=1,訪問I/O端口②送地址信號(hào)AD19-0
,輸出ALE正脈沖信號(hào)下降沿鎖存地址。
A15~
A8始終為高8位地址。③送=1,
8286工作在發(fā)送狀態(tài)(寫數(shù)據(jù))。T2狀態(tài):①AD0~AD7地址信號(hào)消失,立即將要輸出的數(shù)據(jù)送AD0~AD7
總線
A16~A19變?yōu)闋顟B(tài)S3~S6②在T2前沿,=0
低電平有效,打開存儲(chǔ)器或I/O端數(shù)據(jù)緩沖器
=0,作為
8286的選通信號(hào),開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲(chǔ)器或I/O端口接受AD0~AD7上的數(shù)據(jù)②若來不及接受數(shù)據(jù),則通過8284經(jīng)CPU的READY線送低電平信號(hào)③T3
的下降沿,采樣
READY引腳電平,若是低電平,需插入TW
等待狀態(tài)。④在每個(gè)TW狀態(tài)的下降沿采樣READY引腳電平,直到就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,存儲(chǔ)器或I/O端口完成從AD0~AD7數(shù)據(jù)總線上讀取數(shù)據(jù)。,
引腳上控制信號(hào)復(fù)位。③S3~S6狀態(tài)線復(fù)位。CLKALET1T2T3TWT4≈A19/S6~A16/S3地址輸出狀態(tài)輸出S3~
S6高為寫I/O,低為寫存儲(chǔ)器AD7~AD0地址輸出數(shù)據(jù)輸出A15~A8地址輸出3.總線保持請(qǐng)求和總線授權(quán)時(shí)序3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)
當(dāng)系統(tǒng)中CPU之外的總線主設(shè)備(例如DMA)需要占用總線時(shí),向CPU發(fā)出一個(gè)總線保持請(qǐng)求信號(hào)HOLD,該信號(hào)可能與時(shí)鐘信號(hào)不同步。CPU在每個(gè)時(shí)鐘周期的上升沿檢測到該信號(hào)時(shí),在當(dāng)前總線周期的T4后或下一個(gè)總線周期的T1后,CPU發(fā)出HLDA信號(hào),并讓出總線。1.T1狀態(tài):①T1
狀態(tài)的下降沿,發(fā)出狀態(tài)信號(hào)
~
。經(jīng)Intel8288譯碼形成、、、
ALE、DEN等控制信號(hào)。②送出地址信號(hào)AD19-0
,輸出ALE正脈沖信號(hào),在
ALE
的下降沿鎖存地址。③送出=0,8286工作在接收狀態(tài)(讀數(shù)據(jù))T2狀態(tài):①AD0~AD15地址信號(hào)消失,處于浮空狀態(tài),作為輸入數(shù)據(jù)的過渡期
A16~A19變?yōu)闋顟B(tài)S3~S6。②低有效訪問存儲(chǔ)器低有效訪問I/O端口
DEN為高電平有效,作為8286的選通信號(hào),開啟8286數(shù)據(jù)收發(fā)器。3.T3狀態(tài):①存儲(chǔ)器或I/O端口將數(shù)據(jù)送AD0~AD15總線②
~
變?yōu)楦唠娖健"廴魯?shù)據(jù)未準(zhǔn)備就緒,則通過8284經(jīng)CPU的
READY線送低電平信號(hào)經(jīng)T3的下降沿采樣引腳電平,插入TW等待狀態(tài)。④在每個(gè)TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,
CPU從AD0~AD15數(shù)據(jù)總線上讀取數(shù)據(jù)。各引腳上控制信號(hào)復(fù)位,準(zhǔn)備下一個(gè)總線周期。③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)總線周期時(shí)序3.78086微處理器的時(shí)序3
8086/8088微處理器結(jié)構(gòu)1.8086最大模式存儲(chǔ)器和I/O讀總線周期3
8086/8088微處理器結(jié)構(gòu)1.T1狀態(tài):①T1
狀態(tài)的下降沿,發(fā)出狀態(tài)信號(hào)
~
。經(jīng)Intel8288譯碼形成、、、ALE、
DEN等控制信號(hào)。②送出地址信號(hào)AD19-0
,輸出ALE正脈沖信號(hào),在
ALE
的下降沿鎖存地址。③送出=1,8286工作在發(fā)送狀態(tài)(寫數(shù)據(jù))T2狀態(tài):①AD0~AD15地址信號(hào)消失,立即將要輸出的數(shù)據(jù)送AD0~AD15數(shù)據(jù)總線。
A16~A19變?yōu)闋顟B(tài)S3~S6。②存儲(chǔ)器寫超前寫控制信號(hào);
I/O端口寫超前寫控制信號(hào);超前寫控制信號(hào)超前一個(gè)時(shí)鐘周期發(fā)出。
DEN為高電平有效,作為8286的選通信號(hào)。3.T3狀態(tài):①存儲(chǔ)器或I/O端口接受
AD0~AD15總線上的數(shù)據(jù)②
~
變?yōu)楦唠娖健"廴魜聿患敖邮軘?shù)據(jù),則通過8284經(jīng)CPU的
READY線送低電平信號(hào),經(jīng)T3的下降沿采樣引腳電平,插入TW等待狀態(tài)。④在每個(gè)TW狀態(tài)的下降沿采樣READY引腳電平,直到數(shù)據(jù)就緒。4.T4狀態(tài):T4狀態(tài)的下降沿,存儲(chǔ)器或I/O端口從AD0~AD15數(shù)據(jù)總線上讀取數(shù)據(jù)。各引腳上控制信號(hào)復(fù)位,準(zhǔn)備下一個(gè)總線周期。③
S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 實(shí)踐報(bào)告心得體會(huì)1500字
- 幼兒園教師任教學(xué)科怎么填寫
- 關(guān)于音樂的教育論文
- 2025-2030年大麥茶飲料行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 2025-2030年國內(nèi)建筑用鋼行業(yè)市場發(fā)展分析及發(fā)展前景與投資機(jī)會(huì)研究報(bào)告
- 2025-2030年半甜紅葡萄酒產(chǎn)業(yè)市場深度調(diào)研及前景趨勢與投資研究報(bào)告
- 2025-2030年農(nóng)產(chǎn)品配送行業(yè)市場發(fā)展分析及發(fā)展趨勢前景預(yù)測報(bào)告
- 2025-2030年入侵檢測系統(tǒng)行業(yè)市場發(fā)展分析與發(fā)展前景及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國雨水頭行業(yè)市場現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030年中國防水防風(fēng)雨標(biāo)簽行業(yè)市場現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 護(hù)理安全用藥制度
- 中國藥妝行業(yè)發(fā)展現(xiàn)狀、藥妝市場政策解讀及未來發(fā)展趨勢分析圖
- 畢業(yè)離校學(xué)生證遺失證明
- 《汽輪機(jī)原理》第03章1課件
- 家族成員關(guān)系輩分排列樹狀圖含女眷
- 圍堰施工監(jiān)理實(shí)施細(xì)則
- 新生血管性青光眼課件
- YY∕T 1797-2021 內(nèi)窺鏡手術(shù)器械 腔鏡切割吻合器及組件
- 智慧停車技術(shù)方案
- 土地整理質(zhì)量評(píng)定表
- 腸內(nèi)腸外營養(yǎng)制劑及特點(diǎn)
評(píng)論
0/150
提交評(píng)論