版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章
;16位和32位微處理器
本章主要教學(xué)內(nèi)容
A8086微處理器內(nèi)部組成、寄存器結(jié)構(gòu)
>8086微處理器的外部引腳特性和作用
>8086微處理器的存儲(chǔ)器和I/O組織
>8086的時(shí)序和總線概念以及最小/最大工作方式
>80X86和Pentium系列微處理器的組成結(jié)構(gòu)及特點(diǎn)
章教學(xué)目的及要求
通過(guò)學(xué)習(xí),使學(xué)生掌握8086微處理器
的基本應(yīng)用;熟悉8086微處理器的組
成及其寄存器結(jié)構(gòu);掌握8086微處理
器的存儲(chǔ)器和I/O組織。
2.1Intel8086微處理器
Intel8086微處理器是典型的16位微處理器,
它采用高速運(yùn)算性能的HMOS工藝制造,芯片
上集成了2.9萬(wàn)只晶體管,使用單一的+5V電源,
40條引腳雙列直插式封裝,有16根數(shù)據(jù)線和20
根地址線,可尋址的地址空間為1MB(220B),
時(shí)鐘頻率為5MHz?10MHz,基本指令的執(zhí)行時(shí)
間為0.3(is?0.6然。
I8086CPU的特點(diǎn)
?8086CPU的特點(diǎn)是:采用并行流水線工作方
式,通過(guò)設(shè)置指令預(yù)取隊(duì)列實(shí)現(xiàn);對(duì)內(nèi)存空間實(shí)行
分段管理,將內(nèi)存分為4個(gè)段并設(shè)置地址段寄存器,
以實(shí)現(xiàn)對(duì)1MB空間的尋址;支持多處理器系統(tǒng);
8086可工作于兩種模式下,即最小模式和最大模式。
8086還具有多重處理能力,使它能極方便地和浮點(diǎn)
運(yùn)算器8087、I/O處理器8089或其他處理器組成多
處理器系統(tǒng),從而極大地提高了系統(tǒng)的數(shù)據(jù)吞吐能
力和數(shù)據(jù)處理能力。
2,1.18086微處理器的內(nèi)部結(jié)構(gòu)
I------------------------------
Intel8086微處理器內(nèi)部安排了兩個(gè)邏輯
單元,即執(zhí)行部件EU(ExecutionUnit)和總線
接口部件BIU(BusInterfaceUnit),其組成
結(jié)構(gòu)如圖2T所示。
地址總線
AXAHAL
BXBHBL數(shù)據(jù)寄存器
地址加法器
CXCHCL數(shù)據(jù)
總線
DXDHDL
SP
BP地址寄存器CS
SIDS
DISS8086
總
總線
ES線
控\
/
ALU數(shù)據(jù)總線(16位)IP制
邏
內(nèi)部通信輯
寄存器
指令隊(duì)列
123456
圖2-1
執(zhí)行部件(EU)總線接口部件(BIU)
[■總線接口部件(businterfaceunit,BIU)
總線接口部件負(fù)責(zé)與存儲(chǔ)器、I/O端口傳送數(shù)據(jù),由
下列部分組成:
①4個(gè)段地址寄存器(CS、DS、ES、SS)
②16位的指令指針寄存器IP(InstructionPointer)
③20位的地址加法器
④6字節(jié)的指令隊(duì)列緩沖器
⑤總線控制邏輯
*2.執(zhí)行部件(executionunit,Ell)
行部件EU負(fù)責(zé)指令的譯碼、執(zhí)行和數(shù)據(jù)運(yùn)算,
其基本功能是:從總線接口部件BIU的指令隊(duì)列中取出
指令代碼,經(jīng)過(guò)指令譯碼器譯碼后執(zhí)行該指令所規(guī)定的
操作功能。EU中的各個(gè)部件都通過(guò)16位的ALU數(shù)據(jù)總
線連接在一起,在內(nèi)部可實(shí)現(xiàn)快速的數(shù)據(jù)傳輸。
EU由算術(shù)邏輯單元(ALU)、8個(gè)通用寄存器,1個(gè)
狀態(tài)標(biāo)志寄存器、1個(gè)數(shù)據(jù)暫存寄存器和EU控制電路等
組成。
執(zhí)行部件EU
負(fù)責(zé)指令的譯碼、執(zhí)行和數(shù)據(jù)運(yùn)算,由下列部分組成:
①16位算術(shù)邏輯部件ALU(arithmeticlogicunit);
②16便標(biāo)志寄存器F反映CPU運(yùn)算的狀態(tài)特征或存放控
制標(biāo)志;
③4個(gè)16位通用寄存器,即AX、BX、CX、DX;
④4個(gè)16位專(zhuān)用寄存器,即
基數(shù)指針寄存器BP(basepointer)
堆棧指針寄存器SP(stackpointer)
源變址寄存器SI(sourceindex)
目的變址寄存器DI(destinationindex);
⑤數(shù)據(jù)暫存寄存器協(xié)助ALU完成運(yùn)算,暫存參加運(yùn)算
的數(shù)據(jù);
⑥EU控制電路它是控制、定時(shí)與狀態(tài)邏輯電路,接收
從BIU中指令隊(duì)列取來(lái)的指令,經(jīng)過(guò)指令譯碼形成各種
定時(shí)控制信號(hào),對(duì)EU的各個(gè)部件實(shí)現(xiàn)特定的定時(shí)操作。
EU中所有的寄存器和數(shù)據(jù)通道(除指令隊(duì)列總線為8位
外)都是16位的寬度,可實(shí)現(xiàn)數(shù)據(jù)的快速傳送。
I3.Bill和EU的流水線管理
■j?IU和EU并不是同步工作的,但兩者的動(dòng)作仍然有一定的
管理原則,體現(xiàn)在下面幾個(gè)方面。
①每當(dāng)BIU的指令隊(duì)列中有兩個(gè)空字節(jié),BIU就會(huì)自動(dòng)把后面的
指令從存儲(chǔ)器取到指令隊(duì)列中。
②在EU執(zhí)行指令的過(guò)程中,指令需要對(duì)存儲(chǔ)器或I/O設(shè)備存取數(shù)
據(jù)時(shí),所需的數(shù)據(jù)交換均由BIU完成。
③當(dāng)指令隊(duì)列已滿(mǎn),且EU對(duì)BIU又沒(méi)有總線訪問(wèn)請(qǐng)求時(shí),BIU進(jìn)
入空閑狀態(tài)。
④遇轉(zhuǎn)移/循環(huán)指令時(shí),BIU將指令隊(duì)列中指令完全清除,重新取
指令。
2.1,28086/8088的寄存器結(jié)構(gòu)
8086CPU中可供編程使用的有13個(gè)16位寄存器和1個(gè)只
用了9位的標(biāo)志寄存器,按其用途可分為8個(gè)通用寄存器、2
個(gè)控制寄存器和4個(gè)段寄存器,如圖2-2所示。
AHAL累加器
BHBL基址寄存器
數(shù)據(jù)寄存器
CHCL計(jì)數(shù)寄存器
DHDL-
通用寄存器
SP堆棧指針寄存器
BP基址指針寄存器地址指針和
SI源變址寄存器變址寄存器
DI目的變址寄存器
IP指令指針寄存器
控制寄存器
FLAGS標(biāo)志寄存器
CS代碼段寄存器
DS數(shù)據(jù)段寄存器
段寄存器
SS堆棧段寄存器
ES附加段寄存器圖2-2
8086/8088的寄存器結(jié)構(gòu)
F通用寄存器
通用寄存器是一種面向寄存器的體系結(jié)構(gòu),操作數(shù)可以直接存放
在這些寄存器中。
(1)數(shù)據(jù)寄存器:有4個(gè)16位的寄存器,其典型功能歸納如下:
AX:累加器,用于完成各類(lèi)運(yùn)算和傳送、移位等操作;
BX:基址寄存器,在間接尋址中用于存放基地址;
CX:計(jì)數(shù)寄存器,用于在循環(huán)或串操作指令中存放計(jì)數(shù)值;
DX:數(shù)據(jù)寄存器,在間接尋址的I/O指令中存放。
止匕外,還可將每個(gè)16位的寄存器分成獨(dú)立的兩個(gè)8位寄存器
來(lái)使用,即AH、BH、CH、DH和AL、BL、CL、DL兩組。16位數(shù)
據(jù)寄存器主要用于存放常用數(shù)據(jù),也可存放地址,而8位寄存器只
能用于存放數(shù)據(jù)。
8086/8088的寄存器結(jié)構(gòu)
(2)指針與變址寄存器:8086的指針寄存器和變址寄存
器都是16位寄存器,一般用來(lái)存放偏移地址,4個(gè)寄存器的功
能如下:
SP:堆棧指針寄存器,保存位于當(dāng)前堆棧段中的數(shù)據(jù),其內(nèi)容
為棧頂?shù)钠频刂贰?/p>
BP:基址指針寄存器,在訪問(wèn)內(nèi)存時(shí)存放內(nèi)存單元的偏移地址,
或用來(lái)存放位于堆棧段中的一個(gè)數(shù)據(jù)區(qū)基址的偏移地址。
SI:源變址寄存器,用來(lái)存放源操作數(shù)的偏移地址。
DI:目的變址寄存器,用來(lái)存放目的操作數(shù)的偏移地址。
(3).通用寄存器的隱含用法
表2-1寄存器的隱含用法
寄存靜執(zhí)行操作
AX整字乘法,整字除法,整字I/O
AL字節(jié)乘法,字節(jié)除法,字節(jié)I/O.查表,十進(jìn)制篁術(shù)運(yùn)篁
AH字節(jié)乘法,字節(jié)除法
BX查表
CX字符串噪作,循環(huán)
CL變量的移位和循環(huán)移位
DX整字乘法,整字除法,間接尋址ID
SP堆棧操作
SI字符串操作
DI字符串操作
圖2-3
&8086/8088的寄存器結(jié)構(gòu)
2.控制寄存器
(1)指令指針寄存器IP:由于指令代碼是存放在存儲(chǔ)器的
代碼段中,代碼段寄存器CS指示代碼段的開(kāi)始,16位指令指
針寄存器IP用來(lái)指示當(dāng)前指令在代碼段的偏移位置。CPU利
用CS和IP取得要執(zhí)行的指令,然后修改IP中的內(nèi)容,使之指
向BIU要取的下一條指令的偏移地址。
指令序列執(zhí)行時(shí),每取一次指令I(lǐng)P就自動(dòng)加1,這樣保
證按順序取出指令并執(zhí)行相應(yīng)操作。需要注意的是,IP是指
令代碼存放單元的地址指針,不能用指令取出IP或給IP設(shè)置
給定值,但可以通過(guò)某些指令(如轉(zhuǎn)移類(lèi)指令)來(lái)修改IP的
內(nèi)容。
■8086/8088的寄存器結(jié)構(gòu)
(2)標(biāo)志寄存器FLAG:FLAG用于反映指令執(zhí)行結(jié)果或控
制指令執(zhí)行的形式。它是一個(gè)16位的寄存器,共有9個(gè)可用
的標(biāo)志位,其余7個(gè)位空閑不用。各種標(biāo)志按作用可分為兩
類(lèi):狀態(tài)標(biāo)志和控制標(biāo)志。
狀態(tài)標(biāo)志:用來(lái)反映算術(shù)或邏輯運(yùn)算后結(jié)果的狀態(tài),以記錄
CPU的狀態(tài)特征。
控制標(biāo)志:用來(lái)控制CPU的操作,由程序設(shè)置或清除。
標(biāo)志寄存器F所用的各位含義如下:
6個(gè)狀態(tài)標(biāo)志:CF-進(jìn)位標(biāo)志;PF-奇偶標(biāo)志;AF-輔助
進(jìn)位標(biāo)志;ZF-零標(biāo)志;SF-符號(hào)標(biāo)志;OF-溢出標(biāo)志
3個(gè)控制標(biāo)志:TF-陷阱標(biāo)志或單步操作標(biāo)志:IF-中斷
允許標(biāo)志;DF-方向標(biāo)志
1514131211109876543210
OFDFIFTFSFZFAFPFCF
圖2-4
狀態(tài)標(biāo)志位有6個(gè),即SF、ZF、PF、CF、AF和OF
①符號(hào)標(biāo)志SF(signflag)
②零標(biāo)志ZF(zeroflag)
③奇偶標(biāo)志PF(parityflag):當(dāng)指令執(zhí)行結(jié)果的
低8位中含有偶數(shù)個(gè)1時(shí),則PF為1;否則為0。
④進(jìn)位標(biāo)志CF(carryflag)
⑤輔助進(jìn)位標(biāo)志AF(auxiliarycarryflag)
⑥溢出標(biāo)志OF(overflowflag)
控制標(biāo)志位有3個(gè),即DF、IF、TF
①方向標(biāo)志DF(directionflag):控制數(shù)據(jù)串操
作指令的步進(jìn)方向??捎肧TD、CLD將DF置1或清0。
②中斷允許標(biāo)志IF(interruptenableflag):控
制可屏蔽中斷的標(biāo)志??捎肧TI、CLI將IF置1或清0。
③跟蹤(陷阱)標(biāo)志TF(trapflag):為調(diào)試程
序的方便而設(shè)置的。若將TF置1,貝”8086/8088CPU處
于單步工作方式;否則,將正常執(zhí)行程序。
3,段寄存器
在IBMPC機(jī)中,有四個(gè)專(zhuān)門(mén)存放段地址的寄存器,稱(chēng)為段
寄存器。每個(gè)段寄存器可以確定一個(gè)段的起始地址,而這些
段則各有各的用途。
(1)代碼段(CodeSegment):用來(lái)存放當(dāng)前正在運(yùn)行的
程序。系統(tǒng)在取指時(shí)將尋址代碼段,其段地址和偏移地址分
別由段寄存器CS和指令指針I(yè)P給出。
(2)數(shù)據(jù)段(DataSegment):存放當(dāng)前運(yùn)行程序所用的
數(shù)據(jù)。用戶(hù)在尋址該段內(nèi)的數(shù)據(jù)時(shí),可以缺省段的說(shuō)明,其
偏移地址可通過(guò)多種尋址方式形成。
?8086/8088的寄存器結(jié)構(gòu)
(StackSegment):“堆?!笔菙?shù)據(jù)的一種存取方
式,按照“先進(jìn)后出”的方式操作。堆棧指針SP用來(lái)指示棧頂。
堆棧為保護(hù)、調(diào)度數(shù)據(jù)提供了重要的手段。系統(tǒng)在執(zhí)行棧操作指
令時(shí)將尋址堆棧段,這時(shí),段地址和偏移地址分別由段寄存器SS
和堆棧指針SP提供。
(4)附加數(shù)據(jù)段(ExtraSegment):該段是附加的數(shù)據(jù)段,是
一個(gè)輔助的數(shù)據(jù)區(qū),也用于數(shù)據(jù)的保存。用戶(hù)在訪問(wèn)段內(nèi)的數(shù)據(jù)
時(shí),其偏移地址同樣可以通過(guò)多種尋址方式來(lái)形成,但在偏移地
址前要加上段的說(shuō)明(即段跨越前綴ES)。
2.1.38086的引腳信號(hào)和工作模式
1.最小模式和最大模式的概念
⑴最小模式:
系統(tǒng)中只有一個(gè)微處理器。
(2)最大模式:
兩個(gè)或多個(gè)微處理器(主處理器、協(xié)處理器)
j,2.8086/8088的引腳信號(hào)和功能
VI)8086CPU引腳信號(hào)
8086CPU具有40個(gè)引腳,采用雙列直插式的封裝形
式,如圖2-4所示。
數(shù)據(jù)總線為16條,地址總線為20條,其余為狀態(tài)
線、控制信號(hào)線、電源、地線等。地址/數(shù)據(jù)總線采
用了分時(shí)復(fù)用方式,即一部分引腳具有雙重功能,
例如AD15~ADo這16個(gè)引腳,有時(shí)傳送數(shù)據(jù)信號(hào),有時(shí)
可輸出信址信號(hào)。
GNDi40VCCl十3v)
An,.
AD14239aAun1y5
An.A/Q
八U|3338A16/S3
八AUr)|2437AIS.
AnA/Q
AD11536A18/^5
…ADio635A19/^6
An
3AU9734
BHE/S/
cADUo?8331MV1N1>//1MV1Y人
r\U7932RD
AADn61031HOLID\RQ/CJ1Q/
AAUn5L1130HLDA(RQ/G11/
AD41229WR(LOCK)
AnA4/TC/C\
AD31328M/1U\02o7
AD21427D1/R(S1/
ADi-1526DEN(So)
AALn)()1625ATP(Ct)
N1、M1V1I11724ITNNT1TAA\(CS,、
1T1NNT1TDK1823TEST
CTLVlx1922KEADI
VJINU2021KLSL1
圖2-58086CPU引腳圖
注意點(diǎn):
①8086/8088的數(shù)據(jù)線和低16位地址線復(fù)用
②8086有16位數(shù)據(jù)線,而8088只有8位
③除了第28和34腳之外,8086和8088的控
制線引腳定義是一樣的。
④第21腳(RESET)為輸入復(fù)位信號(hào)
⑤第22引腳為“準(zhǔn)備好”(READY)信號(hào)
⑥高4位地址線和狀態(tài)線復(fù)用
(2)引腳功能
①GND、VCC地和電源
②AD15?ADO地址/數(shù)據(jù)復(fù)用
③A19/S6?A16/S3地址/狀態(tài)復(fù)用
④§n^/s7高8位數(shù)據(jù)總線允許/
狀態(tài)復(fù)用
⑤NMI非屏蔽中斷輸入
⑥INTR可屏蔽中斷請(qǐng)求信號(hào)輸入
⑦亞讀信號(hào)輸出
⑧CLK時(shí)鐘輸入
⑨RESET復(fù)位信號(hào)輸入
?READY“準(zhǔn)備好”信號(hào)輸入
(11)TEST測(cè)試信號(hào)輸入
?MN/MX最小和最大模式控制輸入
(3)最小模式下引腳功能
①I(mǎi)NTA中斷響應(yīng)信號(hào)輸出
②ALE地址鎖存允許信號(hào)輸出
③DEN數(shù)據(jù)允許信號(hào)
(4)DT/R數(shù)據(jù)收發(fā)信號(hào)輸出
⑤M/記存儲(chǔ)器/輸入輸出控制信號(hào)
輸出
⑥而寫(xiě)信號(hào)輸出
?HOLD總線保持請(qǐng)求信號(hào)輸入
⑧HLDA總線保持響應(yīng)信號(hào)輸出
(4)最大模式下引腳功能定義
①Q(mào)S1、QSO指令隊(duì)列狀態(tài)信號(hào)輸出
②豆、可、前總線周期狀態(tài)信號(hào)輸出
③LOCK(lock)總線封鎖信號(hào)輸出
@RQ/GTI>也?/而)總線請(qǐng)求信號(hào)輸入、
總線授權(quán)信號(hào)輸出
4
表2-2SO,S1,免的組含和對(duì)應(yīng)總線操作
SOsiS2操作
000發(fā)中斷響應(yīng)信號(hào)
001讀I/O端口
0i0寫(xiě)DO端口
0i1哲停
100取指令
101讀存儲(chǔ)器
1i0寫(xiě)存儲(chǔ)器
1i1無(wú)源狀態(tài)
2.1.4最小/最大工作模式
8086CPU的最小/最大工作模式的概念
Intel公司在設(shè)計(jì)8086CPU芯片時(shí),為了適應(yīng)各種應(yīng)用場(chǎng)合,構(gòu)成不
同規(guī)模的微型計(jì)算機(jī)系統(tǒng),規(guī)定了兩種工作模式,即最小工作模式和最
大工作模式。通過(guò)CPU的第33條引腳MN/來(lái)控制。
(1)最小工作模式(MN/=1):當(dāng)把8086CPU的33引腳MN/接+5V時(shí),系統(tǒng)
就處于最小工作模式了。最小模式系統(tǒng)適用于單微處理器組成的小系統(tǒng),
系統(tǒng)中通常只有一個(gè)微處理器,所有的總線控制信號(hào)都直接由8086CPU產(chǎn)
生,系統(tǒng)中的總線控制邏輯電路被減到最少。該模式8086CPU的8條控制
引腳24?31的功能定義如表2-7所示。
(2)最大工作模式(MN/R):當(dāng)把8086的33引腳MN/接地時(shí),系統(tǒng)處于
最大工作模式。此時(shí),系統(tǒng)中存在兩個(gè)或兩個(gè)以上的微處理器,其中有
一個(gè)主處理器8086,其他處理器稱(chēng)為協(xié)處理器。
02.最小工作模式的配置特點(diǎn)_
(1)8086CPU的33引腳MN/接+5V(MN/=1)時(shí),決定了系統(tǒng)處于最小工
作模式。
(2)有一片8284A,作為時(shí)鐘發(fā)生器。
(3)有三片8282或74LS373,用來(lái)作為地址鎖存器。
(4)當(dāng)系統(tǒng)中所連接的存儲(chǔ)器和外設(shè)比較多時(shí),需要增加系統(tǒng)數(shù)據(jù)總線
的驅(qū)動(dòng)能力,這時(shí),可選用兩片8286或74LS245作為總線收發(fā)器。
8086在最小模式下的典型配置:
8284A
CLKRESET
READYBHE
MN/MX+5V
ALESTB
BHE
地址鎖存器地圮:總吟〉
A|9?A]6
8282
AD]5~AD()c(3片)
8086才收發(fā)器----------1
I8286途攵據(jù)總終
DEN-I,(2片)
DT/R-IT(可選)
____I
M/7O
WR
RD
HOLD
HLDA一控制總線
INTR
INTA
READY
RESET
圖2-6
3.8284A時(shí)鐘信號(hào)發(fā)生器
8284A是Intel公司專(zhuān)為8086設(shè)計(jì)的時(shí)鐘信號(hào)發(fā)生器,能產(chǎn)生8086所
需的系統(tǒng)時(shí)鐘信號(hào),即系統(tǒng)主頻。8284A除提供恒定的時(shí)鐘信號(hào)外,還
對(duì)外界輸入的準(zhǔn)備就緒信號(hào)RDY和復(fù)位信號(hào)進(jìn)行同步操作。
8284A芯片的引腳特性如圖2-7所示。
8
CSYNC
—VCc
27
PCLK-Xi
3
AENi-----X1
485
2—ASYNC
RDYi8
54-4
A4
READY—EFI
613
1—F/C
RDY2
72
—osc
AEN2
?
CLK一—RES
o
GND—RESET
圖2-78284A引腳特性
8284A時(shí)鐘信號(hào)發(fā)生器的原理
其工作原理簡(jiǎn)述如下:當(dāng)外界的準(zhǔn)備就緒信號(hào)RDY輸入8284A,經(jīng)
時(shí)鐘下降沿同步后,輸出READY信號(hào)作為8086的準(zhǔn)備就緒信號(hào);外界的
復(fù)位信號(hào)輸入8284A,經(jīng)整形并由時(shí)鐘的下降沿同步后,輸出RESET信
號(hào)作為8086的復(fù)位信號(hào),其寬度不得小于4個(gè)時(shí)鐘周期。采用脈沖發(fā)生
器作為振蕩源時(shí)只需將脈沖發(fā)生器的輸出端和8284A的EFI端相連,引
腳F/接為高電平即可;采用石英晶體振蕩器作為振蕩源時(shí)只需將晶體
振蕩器連在8284A的Xi和X2兩端,將引腳F/接地即可。不管采用哪種方
法,8284A輸出的時(shí)鐘頻率CLK應(yīng)該是振蕩源頻率的1/3,振蕩源頻率經(jīng)
過(guò)驅(qū)動(dòng)后,再由0SC端輸出供系統(tǒng)使用。
4.最大工作模式的配置特點(diǎn)
(1)8086CPU的33引腳MN/接地(MN/-O)時(shí),決定了系統(tǒng)處于最大工作
模式。
(2)最大模式外加8288總線控制器,通過(guò)它對(duì)CPU發(fā)出的控制信號(hào)進(jìn)行
變換和組合。
(3)最大模式中,一般包含2個(gè)或多個(gè)處理器,需要解決主處理器和協(xié)
處理器之間的協(xié)調(diào)工作問(wèn)題以及對(duì)總線的共享控制問(wèn)題,為此,需從軟
件和硬件兩個(gè)方面去解決。
8086在最大模式下的典型配置:
CLKRESET
READY
MN/MX
BHE
A[9?A%
AD15~AD()
80868286
收發(fā)器
OE(2個(gè))
8288
總線控制器
S.
S.
INTR
RQ/GTQ8259A
RQ/GT|及有關(guān)電路圖2-8
42.L5存儲(chǔ)器和I/O組織
1.8086的存儲(chǔ)器編址
圖2?9存儲(chǔ)器的邏輯結(jié)構(gòu)示意圖
低位中節(jié)方:入低地址,高位字節(jié)存入高地址。
(2)同一個(gè)地址既可看作字節(jié)單元的地址,也可看作字節(jié)
單元的地址。
(3)存儲(chǔ)器的特性:內(nèi)容取之不盡,從某單元取出其內(nèi)容
后,該單元仍然保存著原來(lái)的內(nèi)容不變,可以重復(fù)取出,只
有存入新的信息后,原來(lái)保存的內(nèi)容就自動(dòng)消失了。
(4)假設(shè)X單元中存放著Y,而Y又是一個(gè)地址,則可用
(Y)=((X))來(lái)表示Y單元的內(nèi)容。如:
(0001H)=1234H
(1234H)=2F1EH
((0001H))=2F1EH
2.存儲(chǔ)器分段
8086系統(tǒng)中采用20位地址線來(lái)尋址1M字節(jié)的存儲(chǔ)空間。由于CPU內(nèi)所有
的寄存器都只有16位,只能尋址64KB(216字節(jié))。因此,把整個(gè)存儲(chǔ)空間分
成若干邏輯段,每個(gè)邏輯段的容量最大為64KB,這樣段內(nèi)地址可以用16位表
示。CPU允許各個(gè)邏輯段在整個(gè)存儲(chǔ)空間中浮動(dòng),它們可以緊密相連,也可
以相互重疊,還可以分開(kāi)一段距離,如圖2-10所示。
段的起始地址有所限制,不能起于任意地址,而必須從任一小段的首
地址開(kāi)始,其特征是:在16進(jìn)制表示的地址中,最低為0(即20位地址的
低4位為0)。
在1MB的存儲(chǔ)器中,每個(gè)存儲(chǔ)單元都有一個(gè)唯一的20位地址,稱(chēng)為該
單元的物理地址,由16位段地址和16位偏移地址組成。
OOOOOH
邏輯段1
W64KB
邏輯段2
W64KB
邏輯段3
W64KB
邏輯段4
W64KB
FFFFFH
圖2-10存儲(chǔ)器分段示意圖
20位物理地址的形成:
段地址:每一段的起始地址。
偏移地址:在段內(nèi)相對(duì)于起始地址的偏移值。
段寄存器值
偏移量
物理地址
圖2-11
CS、DS、SS和其他寄存器組合指向存儲(chǔ)單元的示
意圖:
圖2-12
3.邏輯地址(LA)和物理地址(PA)的關(guān)系
物理地址:就是存儲(chǔ)器的實(shí)際地址,它是指CPU和存儲(chǔ)器
進(jìn)行數(shù)據(jù)交換時(shí)所使用的地址(20位)。
邏輯地址:是在程序中使用的地址,它由段地址和偏移地
址兩部分組成(16位)。
邏輯地址的表示形式為“段地址:偏移地址”。
物理地址=段地址X10H+偏移地址
一個(gè)存儲(chǔ)單元的物理地址唯一,邏輯地址不唯一。
存儲(chǔ)器組織
?存儲(chǔ)器內(nèi)部是按字節(jié)進(jìn)行組織的,兩個(gè)相鄰的字節(jié)被
稱(chēng)為一個(gè)“字”。
8086CPU在組織1M字節(jié)的存儲(chǔ)器時(shí),其存儲(chǔ)空間被分
成兩個(gè)512K字節(jié)的存儲(chǔ)體:固定與CPU的低位字節(jié)數(shù)據(jù)
線D7?D。相連的稱(chēng)為低字節(jié)存儲(chǔ)體,該存儲(chǔ)體中的每個(gè)地
址均為偶數(shù);固定與CPU的高位字節(jié)數(shù)據(jù)線D”?Dg相連的
稱(chēng)為高字節(jié)存儲(chǔ)體,該存儲(chǔ)體中的每個(gè)地址均為奇數(shù)。兩
個(gè)存儲(chǔ)體之間采用字節(jié)交叉編址方式,如圖2-13所示。
00001H00000H
00003H00002H
.■
100005H00004H
512KX8(位)512KX8(位)
|njT*T1存儲(chǔ)體低字吊存儲(chǔ)體
(奇地址存儲(chǔ)體)(偶地址存儲(chǔ)體)
(A0=l)(Ao=O)
FFFFDHFFFFCH
FFFFFHFFFFEH
圖2-138086存儲(chǔ)器的分體結(jié)構(gòu)
A1Q-A1
圖8086系統(tǒng)的存儲(chǔ)結(jié)構(gòu)
-表BHE和AO的意義
操作BHEA0使用的數(shù)據(jù)埃
傳送偶地址的一個(gè)字節(jié)10AD7-AD0
傳送奇地址的一個(gè)字節(jié)01AD15-AD8
存取規(guī)則字0LIAD15~AD0
01AD15~AD8(第一個(gè)總線周期)
存取不規(guī)則字
10AD7-AD0(第二個(gè)總線周期)
.5.I/O端口組織
■8086的I/O端口有以下兩種編址方式:
(1)統(tǒng)一編址:該方式將I/O端口地址置于1MB的存儲(chǔ)器
空間中,把它們看作存儲(chǔ)器單元對(duì)待,每個(gè)端口占用一個(gè)
存儲(chǔ)單元的地址。CPU訪問(wèn)存儲(chǔ)器的指令和各種尋址方式
都可用于尋址I/O端口。優(yōu)點(diǎn)是不需要專(zhuān)門(mén)的I/O指令,對(duì)
I/O端口操作的指令類(lèi)型多,數(shù)據(jù)存取靈活,方便進(jìn)行I/O
程序的設(shè)計(jì);缺點(diǎn)是I/O端口要占用部分存儲(chǔ)器的地址空間,
程序不易閱讀,不容易區(qū)分哪些指令在訪問(wèn)存儲(chǔ)器,哪些
指令在訪問(wèn)外部設(shè)備。
5.I/O端口組織
■獨(dú)立編址:該方式的端口單獨(dú)編址構(gòu)成一個(gè)I/O空間,
不占用存儲(chǔ)器地址。CPU設(shè)置了專(zhuān)門(mén)的輸入/輸出指令(IN和
OUT)和接口控制信號(hào)來(lái)訪問(wèn)I/O端口。8086CPU使用16條地
址線Ai5~A0來(lái)作為訪問(wèn)I/O端口的地址線,可訪問(wèn)最多64K容
量的8位端口或32K容量的16位端口。
獨(dú)立編址的優(yōu)點(diǎn)是I/O端口的地址空間獨(dú)立,控制電路和地
址譯碼電路比較簡(jiǎn)單,采用專(zhuān)用的I/O指令,使得端口操作
的指令在形式上與存儲(chǔ)器操作指令有明顯區(qū)別,程序編制清
晰,閱讀容易;缺點(diǎn)是輸入/輸出指令類(lèi)別少,一般只能進(jìn)
行傳送操作。
1j,L5總線操作及時(shí)序
8086CPU的操作是在時(shí)鐘CLK統(tǒng)一控制下進(jìn)行的,以便使
取指令和傳送數(shù)據(jù)能夠協(xié)調(diào)地工作。
8086CPU經(jīng)外部總線對(duì)存儲(chǔ)器或I/O端口進(jìn)行一次信息的
輸入或輸出過(guò)程,稱(chēng)為總線操作,執(zhí)行該操作所需要的時(shí)間,
稱(chēng)為總線周期。一個(gè)總線周期通常包括T1、丁2、丁3、丁4狀態(tài),
即4個(gè)時(shí)鐘周期。不同的總線操作需要不同的總線信號(hào),對(duì)這
些信號(hào)的變化進(jìn)行時(shí)間順序的描述稱(chēng)為“總線時(shí)序”
1.8086總線周期與時(shí)鐘周期的概念
通常,計(jì)算機(jī)執(zhí)行一條指令所需要的時(shí)間稱(chēng)為一個(gè)指令
周期。而一個(gè)指令周期是由若干個(gè)總線周期所組成的,一個(gè)
總線周期是CPU通過(guò)總線與存儲(chǔ)器或外部設(shè)備進(jìn)行一次數(shù)據(jù)傳
輸所需的時(shí)間。
為了保證總線的讀/寫(xiě)操作,8086的總線周期至少要由4
個(gè)時(shí)鐘周期組成,每個(gè)時(shí)鐘周期稱(chēng)為T(mén)狀態(tài)。時(shí)鐘周期是CPU
的基本時(shí)間計(jì)量單位,由主頻決定。對(duì)于8086來(lái)講,其主頻
為5MHz,故一個(gè)時(shí)鐘周期為200ns。
2.總線周期序列
典型的8086總線周期序列:
圖2-14
①T1狀態(tài),發(fā)地址信息
②T2狀態(tài),總線的高4位輸出狀態(tài)信息
③T3狀態(tài),高4位狀態(tài)信息,低16位
數(shù)據(jù)
④T3之后,可能插入Tw
⑤在T4狀態(tài),結(jié)束。
3.8086的操作和時(shí)序
8086的主要操作:
①系統(tǒng)的復(fù)位和啟動(dòng)操作;
②暫停操作;
③總線操作;
④中斷操作;
⑤最小模式下的總線保持;
⑥最大模式下的總線請(qǐng)求/允許。
4.系統(tǒng)的復(fù)位和啟動(dòng)操作
圖2-15
露,6復(fù)位時(shí)各內(nèi)部寄存翻值
標(biāo)志寄存器1等
指令指針(網(wǎng)0000H
CS膏存器FFFFH
DS寄存器0000H
SS寄儲(chǔ)0000H
ES箱詈0000H
指令隊(duì)列5
其他鞘器0000H
5.總線操作
(1)最小方式下的總線讀操作
(2)最小方式下的總線寫(xiě)操作
(3)最大模式下的總線讀操作
(4)最大模式下的總線寫(xiě)操作
(1)最小方式下的總線讀操作
TTw(l?〃)
T,T2
CLK-
①
M/TOX高為讀內(nèi)存低為讀I/O
A"S6-------?_____⑥
Y地址輸狀態(tài)輸出
-A|/Sf1LX_>
63_⑧
BHE/S7儂BHE
%、⑦.?___________
AD-AD,--------〈地址輸出)一<數(shù)據(jù)輸入
15(>
圖2-16
(2)最小方式下的總線寫(xiě)操作
圖2-17
(3)最大模式下的總線讀操作
1個(gè)總線周期---------
0s??s()/無(wú)源狀態(tài)'
?A16、BHE
A19/S6-A,6/S3)浮空
XS7?S3
BHE/S7
地址輸入數(shù)據(jù)、
AD]5~AD()(AI5-AOy〈D|5?D0>
*ALE
*MRDC或*10RC
*DT/R
*DEN
圖2-18
(4)最大模式下的總線寫(xiě)操作
1個(gè)總線周期
T.T2T4
當(dāng)。/無(wú)源狀態(tài)\
?S2?So
A~A,BHE
A/S~A/S19I6浮空
196163S~S
73>
BHE/S7
地址
AD]5?AD°)-—(A]5?A()X輸出數(shù)據(jù)—>
*DT/R-------------------------------------------------------
?ALE-----------/\----------------------------------------------
*AMWC或*AIOWC\/
*MWTC或*IOWC\/
*DEN----------------------''-----------
圖2-19
6.中斷操作和中斷系統(tǒng)
(1)8086的中斷分類(lèi)
硬件中斷(非屏蔽中斷和可屏蔽中斷)
軟件中斷
8086/8088的中斷分類(lèi):
INTn指令非屏蔽中斷請(qǐng)求
NM1
中斷控制邏輯
INIR
中
斷
可
控
屏
制
蔽
系
中
統(tǒng)
INT3INTO單步除數(shù)為斷
請(qǐng)
0中斷
指令指令中斷求
(8259A)
軟件中斷
硬件中斷
圖2-20
(2)中斷向量和中斷向量表
溢出4?斷
斷點(diǎn)中斷
非屏蔽中斷
單步中斷
除數(shù)為o中斷
圖2-21
(3)硬件中斷
NMI
INTR
(4)硬件中斷的響應(yīng)和時(shí)序
可屏蔽中斷的響應(yīng)過(guò)程:
①讀取中斷類(lèi)型碼
②將標(biāo)志寄存器的值推入堆棧
③把標(biāo)志寄存器的IF和TF清零
④將斷點(diǎn)保護(hù)到堆棧中。
⑤尋找中斷向量,轉(zhuǎn)入中斷處理程序
結(jié)束當(dāng)前指令
心經(jīng)部中斷嗎?
中斷響應(yīng)是非屏蔽中斷嗎?
是可屏蔽中斷嗎?
一
~~
執(zhí)行下一條指令
圖2-22
返回?cái)帱c(diǎn)
(5)8086的中斷響應(yīng)總線周期:
ALE
INTA
中斷類(lèi)型
AD7-AD0
圖2-23
①非屏蔽中斷和可屏蔽中斷有兩點(diǎn)差別;
②TF是單步中斷標(biāo)志;
③在中斷響應(yīng)后,又遇NMI;
④結(jié)束時(shí),返回?cái)帱c(diǎn);
⑦等待或串操作時(shí),允許過(guò)程中進(jìn)入中斷。
中斷響應(yīng)用2個(gè)總線周期
第1個(gè)總線周期,通知外設(shè),CPU準(zhǔn)備響應(yīng)中斷;
第2個(gè)總線周期,外設(shè)發(fā)送中斷類(lèi)型碼
(6)中斷處理子程序
①進(jìn)一步保護(hù)中斷現(xiàn)場(chǎng)
②開(kāi)放中斷
③中斷處理的具體內(nèi)容
④彈出堆棧指令
⑤中斷返回指令
(7)軟件中斷
特點(diǎn):
①用一條指令進(jìn)入中斷處理子程序,并且,
中斷類(lèi)型碼由指令提供。
②不執(zhí)行中斷響應(yīng)總線周期,也不從數(shù)據(jù)總
線讀取中斷類(lèi)型碼。
③不受中斷允許標(biāo)志IF的影響
④執(zhí)行過(guò)程中可響應(yīng)外部硬件中斷
⑤軟件中斷沒(méi)有隨機(jī)性
7.最小模式下的總線保持
M/IO、DEN、DT/R
圖2-24利用HOLD和HLDA信號(hào)實(shí)現(xiàn)總線保持
8.最大模式下的總線請(qǐng)求/授權(quán)
CLKjvwwuwvwwww
峭士授釋
權(quán)a
、至v放
RQ/GT國(guó)GT
AD]5?ADQ■,“?a二太
一心((
勺/年?勺6§、)------------------------?T
務(wù)<
S()、S[、S2
RD>LOCK>BHE/S7
圖2-25利用RQ#/GT#實(shí)現(xiàn)總線請(qǐng)求/授權(quán)
2.232位微處理器80386
2.2.180386的體系結(jié)構(gòu)
分段部件SU
指令預(yù)取部件IPU
邏輯地址一I
16字節(jié)的指令預(yù)取隊(duì)列
L一線性地址
令
指線性地址
指
指令譯碼部件IDU邏分頁(yè)部件PU
令
輯
字
地線性地址一I
址
指令譯碼器節(jié)
洋碼指令隊(duì)列物理地址
譯好碼的
物理地址
指令
存
器
儲(chǔ)
接口
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度交通運(yùn)輸安全評(píng)價(jià)與風(fēng)險(xiǎn)評(píng)估合同3篇
- 二零二五年度全新房產(chǎn)抵押預(yù)告登記服務(wù)合同3篇
- 2024年版房地產(chǎn)抵押合同:詳細(xì)條款與標(biāo)的
- 2024版二手房買(mǎi)賣(mài)合同解析
- 2024年獨(dú)家商業(yè)信息保密合同
- 2025版家具租賃經(jīng)營(yíng)合同匯編3篇
- 2025版酒類(lèi)產(chǎn)品市場(chǎng)調(diào)研與品牌定位合同3篇
- 2025年度老舊小區(qū)改造工程安裝施工合同范本7篇
- 2025年度安置房施工噪聲污染控制合同2篇
- 交房前的房屋買(mǎi)賣(mài)法律協(xié)議
- 2024年01月11042國(guó)際經(jīng)濟(jì)法期末試題答案
- 高中生物課件
- 物業(yè)年會(huì)講話(huà)稿范文
- TCUWA40055-2023排水管道工程自密實(shí)回填材料應(yīng)用技術(shù)規(guī)程
- 2024年國(guó)家公務(wù)員考試《申論》真題(地市級(jí))及答案解析
- 公眾號(hào)年終總結(jié)個(gè)人
- 私募股權(quán)投資基金績(jī)效考核制度
- 初三生活學(xué)習(xí)總結(jié)模板
- 福建省福州市2023-2024學(xué)年高一上學(xué)期期末質(zhì)量檢測(cè)英語(yǔ)試題 含答案
- 2024-2025學(xué)年第一學(xué)期期中考試 初一語(yǔ)文 試卷
- 單位內(nèi)部發(fā)生治安案件、涉嫌刑事犯罪事件的報(bào)告制度
評(píng)論
0/150
提交評(píng)論