機(jī)械32微機(jī)--微處理器_第1頁
機(jī)械32微機(jī)--微處理器_第2頁
機(jī)械32微機(jī)--微處理器_第3頁
機(jī)械32微機(jī)--微處理器_第4頁
機(jī)械32微機(jī)--微處理器_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、主講教師:滕璇璇Shelly T. 微機(jī)原理與應(yīng)用 20152016 秋機(jī)械設(shè)計(jì)1309,1310武漢輕工大學(xué)電氣與電子工程學(xué)院Contents微處理器微處理器2微處理器概述微機(jī)系統(tǒng)簡(jiǎn)介微機(jī)系統(tǒng)簡(jiǎn)介18086/8088微處理器結(jié)構(gòu)8086/8088微處理器工作模式及外部結(jié)構(gòu)80 x86至Pentium系列微處理器技術(shù)概述2.1 微處理器概述計(jì)算機(jī)運(yùn)算器控制器存儲(chǔ)器輸入設(shè)備輸出設(shè)備 微處理器集成在一個(gè)芯片2.1.1 微處理器的基本概念微計(jì)算機(jī)單片機(jī)單板機(jī)通用微機(jī)微處理器有各種型號(hào):Intel公司的8080、8086/8088、80286/386/486、PentiumZilog公司的Z80、Z8

2、000Motorola公司的6800、6809、68000等2.1.1 微處理器的基本概念又稱微控制器,屬于嵌入式微處理器 微機(jī)早期的一種簡(jiǎn)化形式 80X862.1.2 微處理器基本結(jié)構(gòu)和功能不同型號(hào)的微處理器有不同的內(nèi)部結(jié)構(gòu),但在功能結(jié)構(gòu)上具有相似性和共通性微處理器內(nèi)部寄存器陣列 算術(shù)邏輯運(yùn)算單元 控制器 浮點(diǎn)運(yùn)算部件及高速緩沖存儲(chǔ)器cache 通用寄存器和專用寄存器指令寄存器、指令譯碼器和各種定時(shí)與控制信號(hào)的產(chǎn)生電路 現(xiàn)代的微處理器中還集成了 Intel 4040 ROM、RAM、I/O芯片MCS-4Intel 8008ROM、RAM、I/O芯片MCS-81972年 第一代微處理器2.1.

3、3 微處理器發(fā)展過程1971年第一塊微處理器問世,Intel 4040類型時(shí)期代表產(chǎn)品重要特征第一代1971-1973 Intel 4004 4040 字長(zhǎng)4位,集成度2300管/片時(shí)鐘頻率1MHz 第二代 19731977年 Intel 8080/85Zilog Z80Motorola 6800RockweH 6502 字長(zhǎng)8位,地址線16根集成度1萬管/片時(shí)鐘頻率24MHz 第三代 19781980年 Intel 8086/88Motorola 68000 字長(zhǎng)16位,地址線20根 集成度2萬6萬管/片 時(shí)鐘頻率48MHz 19811984年 Intel 80286Motorola 680

4、10 字長(zhǎng)16位,地址線24根集成度約13萬管/片時(shí)鐘頻率620MHz 類型類型時(shí)期時(shí)期代表產(chǎn)品代表產(chǎn)品重要特征重要特征第第四四代代 19851989年年 Intel 80386、Motorola 68020 字長(zhǎng)字長(zhǎng)32位、地址線位、地址線32根根集成度集成度15萬萬50萬管萬管/片、片、時(shí)鐘頻率時(shí)鐘頻率1640MHz 19891992年年 Intel、AMD、Cyrix的的80486、IBM Power PC 601 字長(zhǎng)字長(zhǎng) 32位、地址線位、地址線32根、根、集成度集成度120萬管萬管/片、時(shí)鐘片、時(shí)鐘頻率頻率33100MHz 19931994年年 Intel的的Pentium、AMD

5、、Cyrix的的5X86及及K5、M系列、系列、IBM PowerPC 604、DEC Alpha 21064 集成度集成度350萬管萬管/片、時(shí)鐘片、時(shí)鐘頻率頻率50166MHz 1995年之后年之后 Pentium Pro、Pentium MMX 等等字長(zhǎng)都是字長(zhǎng)都是32位、數(shù)據(jù)通位、數(shù)據(jù)通道道64位、地址線位、地址線32根根2005年至今年至今 Pentium 8XX處理器處理器 、9XX處理處理器器 多核多核92.2 Intel 8086/8088 8088 是準(zhǔn)16位微處理器q8086/8088除了外數(shù)據(jù)總線位數(shù)及與此相關(guān)的部分邏輯稍有差別外,內(nèi)部結(jié)構(gòu)和基本性能相同,指令系統(tǒng)完全兼容

6、。 8086 是全16位微處理器q在8086/8088的設(shè)計(jì)中,引入了兩個(gè)重要的結(jié)構(gòu)概念: 指令流水線 存儲(chǔ)器分段q數(shù)據(jù)總線和地址總線的低16位/低8位分時(shí)復(fù)用。 這兩個(gè)概念在以后升級(jí)的Intel系列微處理器中一直被沿用和發(fā)展。正是這兩個(gè)概念的引入,使8086/8088比原來的8位MPU在運(yùn)行速度、處理能力和對(duì)存儲(chǔ)空間的訪問等性能方面有很大提高。2.2.1 8086/8088微處理器結(jié)構(gòu)8088/8086 CPU寄存器組算術(shù)邏輯單元ALU 標(biāo)志寄存器FR暫存器執(zhí)行單元EU(Execution Unit)總線接口單元BIU(Bus Interface Unit)完成取指令和存取數(shù)據(jù)操作負(fù)責(zé)分析指

7、令和執(zhí)行指令內(nèi)部控制邏輯段寄存器(CS、SS、DS、ES)地址加法器指令隊(duì)列輸入/輸出控制電路指令指針寄存器IP11總線控制電路20位AB通用寄存器累加器基址寄存器計(jì)數(shù)寄存器數(shù)據(jù)寄存器堆棧指針基址指針目的變址源變址指針寄存器變址寄存器地址加法器運(yùn)算暫存器ALU標(biāo)志寄存器 EU控制電路指令指針內(nèi)部暫存器指令隊(duì)列總線接口單元(BIU)執(zhí)行單元(EU)外部總線8086/8088DB8088:8位8086:16位CSDSSSESIP1 2 3 4 5 68位80888086AX AH ALBX BH BLCX CH CLDX DH DL SPBPDISIALU DB16位12 當(dāng)EU從指令隊(duì)列中取出指

8、令時(shí),BIU便從內(nèi)存中取出后續(xù)的代碼放入隊(duì)列中;當(dāng)EU需要數(shù)據(jù)時(shí),BIU根據(jù)EU輸出的地址,從指定的內(nèi)存單元或外設(shè)中取出數(shù)據(jù)供EU使用;當(dāng)運(yùn)算結(jié)束時(shí),BIU將運(yùn)算結(jié)果送給指定的內(nèi)存單元或外設(shè)。 EU控制電路從指令隊(duì)列取出指令代碼,經(jīng)譯碼發(fā)出相應(yīng)的控制信號(hào);數(shù)據(jù)在ALU中進(jìn)行運(yùn)算;運(yùn)算結(jié)果的特征保留在標(biāo)志寄存器(FLAGS)中。 EU-負(fù)責(zé)分析和執(zhí)行指令BIU-負(fù)責(zé)執(zhí)行所有的“外部總線”操作指令隊(duì)列的存在使EU和BIU并行工作 取指令和分析、執(zhí)行指令操作可重疊進(jìn)行,形成了兩級(jí)指令流水線結(jié)構(gòu),減少了CPU等待時(shí)間,提高了CPU的利用率,加快了整機(jī)運(yùn)行速度,降低了對(duì)存儲(chǔ)器存取速度的要求。15 0AX

9、BXCXDX通用寄存器AH ALBH BLCH CLDH DL 8 7累加器基地址寄存器計(jì)數(shù)器數(shù)據(jù)寄存器執(zhí)行部件(Execution Unit)堆棧指針寄存器基地址寄存器源變址寄存器目的變址寄存器SPBPSIDI專用寄存器1、算術(shù)邏輯單元ALU4、EU控制器2、寄存器組狀態(tài)標(biāo)志寄存器FR15 03、標(biāo)志寄存器標(biāo)志寄存器的安排標(biāo)志寄存器FR8086標(biāo)志寄存器F為16位,用了其中9位。6個(gè)狀態(tài)標(biāo)志位:CF、PF、AF、ZF、SF、OF3個(gè)控制標(biāo)志位:DF、IF、TF狀態(tài)標(biāo)志位:反映算術(shù)或邏輯運(yùn)算后結(jié)果狀態(tài) CF(Carry Flag):進(jìn)位標(biāo)志,D0位。執(zhí)行結(jié)果在最高位上產(chǎn)生了一個(gè)進(jìn)位或借位,CF

10、=1;無進(jìn)位或借位,CF=0。會(huì)受循環(huán)指令影響。 PF(Parity Flag):奇偶性標(biāo)志,D2位。執(zhí)行結(jié)果的低8位中有偶數(shù)個(gè)“1”時(shí),PF=1;否則,PF=0。機(jī)器中傳遞信息時(shí),對(duì)產(chǎn)生的代碼出錯(cuò)情況提供檢測(cè)條件。 AF(Auxiliary Flag):輔助進(jìn)位標(biāo)志,D4位。執(zhí)行結(jié)果的低4位向高4位有進(jìn)位或借位時(shí),AF=1;否則,AF=0。 一般用在BCD碼運(yùn)算中。 ZF(Zero Flag):零標(biāo)志,D6位。如運(yùn)算結(jié)果為零,ZF=1;如運(yùn)算結(jié)果不為零,ZF=0。 SF(Sign Flag):符號(hào)標(biāo)志,D7位。如運(yùn)算結(jié)果為負(fù)數(shù),SF=1;如運(yùn)算結(jié)果為正數(shù),ZF=0; OF(Overflow

11、Flag):溢出標(biāo)志,D11位。如帶符號(hào)數(shù)在進(jìn)行算術(shù)運(yùn)算時(shí)產(chǎn)生了溢出,OF=1;如無溢出,OF=0。溢出表示運(yùn)算結(jié)果已經(jīng)超出機(jī)器能夠表示的數(shù)值范圍。 DF(Direction Flag):方向標(biāo)志,D10位??刂茢?shù)據(jù)串操作指令的步進(jìn)方向。若用指令STD將DF=1, 數(shù)據(jù)串操作過程中地址自動(dòng)遞減;若用指令CLD將DF=0, 則地址自動(dòng)遞增??刂茦?biāo)志位:控制CPU的操作,由程序設(shè)置或清除。 IF(Interrupt Flag):中斷允許標(biāo)志,D9位??刂瓶善帘沃袛?。若用指令STI將IF=1, 允許接受外部從INTR引腳發(fā)來的可屏蔽中斷請(qǐng)求;若用指令CLI將IF=0, 禁止接受外部發(fā)來的可屏蔽中斷請(qǐng)

12、求。IF的狀態(tài)不影響非屏蔽中斷(NMI)請(qǐng)求,也不影響CPU響應(yīng)內(nèi)部的中斷請(qǐng)求。 TF(Trap Flag):跟蹤(陷阱)標(biāo)志,D8位。為方便調(diào)試程序而設(shè)置的。若TF=1,CPU處于單步工作方式;若TF=0,正常執(zhí)行程序。總線接口部件(Bus Interface Unit)CSDSSSES代碼段寄存器數(shù)據(jù)段寄存器堆棧段寄存器附加段寄存器段寄存器IP指令指針寄存器20位的地址加法器BIU總線控制邏輯1 2 3 4 5 66個(gè)字節(jié)的指令隊(duì)列80884個(gè)字節(jié)19 4個(gè)段寄存器為8086/8088采用存儲(chǔ)器分段管理提供了主要硬件支持。 通過分段管理,把1MB可尋址的物理存儲(chǔ)空間分成若干個(gè)邏輯段,每段大

13、小為64KB。 段的起始單元地址叫段基址,存放在段寄存器中。 通過4個(gè)段寄存器,CPU每次可同時(shí)對(duì)4個(gè)段進(jìn)行尋址。且分段方式不唯一,各段之間可以連續(xù)、分離、部分重疊或完全重疊,具體取決于對(duì)各個(gè)段寄存器的預(yù)置內(nèi)容。20采用分段管理,存儲(chǔ)器地址有物理地址和邏輯地址之分。 物理地址是1MB存儲(chǔ)空間中的某一單元地址,用20位地址碼表示,CPU訪問存儲(chǔ)器時(shí),地址總線上送出的就是物理地址。 邏輯地址在編程時(shí)采用,由段基址和偏移地址組成,兩者均為16位。 由16位邏輯地址變換為20位物理地址的關(guān)系如下: 物理地址=段基址16+偏移地址物理地址生成示意圖段基址 偏移地址地址加法器邏輯地址15 0 15 0 左

14、移四位段基址 000020位物理地址19 020條地址線 尋址能力地址范圍220=1M字節(jié) 00000FFFFFH19 0物理地址加法器段基址 偏移地址15 015 00000偏移地址段首地址00000H42320H42386H乘以16物理地址例:已知IP=66H,CS=4232HCS16=42320H段首址IP=66H偏移地址下一條指令物理地址采用段寄存器的優(yōu)點(diǎn)1.解決了16位寄存器如何訪問大于64KB內(nèi)存空間的問題2.可以實(shí)現(xiàn)程序的重定位物理地址:1MB存儲(chǔ)區(qū)域中的實(shí)際地址(20位的地址)邏輯地址:程序中出現(xiàn)的地址,由段地址和段內(nèi)偏移量組成(注:段地址和段偏移量都是16位的二進(jìn)制數(shù))存儲(chǔ)器

15、管理就是將程序中的邏輯地址轉(zhuǎn)換成物理地址的結(jié)構(gòu)物理地址=段地址16+偏移量*同一物理地址可以有不同的段地址和偏移量對(duì)8086/8088而言BIU與EU的動(dòng)作協(xié)調(diào)原則BIU和EU是并行工作的,按流水線技術(shù)原則管理4. 執(zhí)行轉(zhuǎn)移、調(diào)用和返回指令時(shí),指令隊(duì)列中的原有內(nèi)容自動(dòng)消除 BIU往指令隊(duì)列中裝入另一程序段中的指令8088中一個(gè)1.當(dāng)8086指令隊(duì)列中有兩個(gè)空字節(jié)時(shí),BIU自動(dòng)把指令取到隊(duì)列中2. EU從指令隊(duì)列取指,執(zhí)行。執(zhí)行過程中如果要訪問存儲(chǔ)器或I/O, 而此時(shí),BIU正在取指,完成取指后,響應(yīng)EU的總線請(qǐng)求。3. 指令隊(duì)列已滿,EU又沒有總線訪問,BIU進(jìn)入空閑狀態(tài)2.3 8086/80

16、88微處理器的工作模式及外部結(jié)構(gòu)工作模式最小工作模式:所有的總線控制信號(hào)都 直接由8088/8086產(chǎn)生最大工作模式:8088/8086要通過總線控制器 8288來形成各種總線周期,控 制信號(hào)由8288供給MN / MX=VCCMN / MX= GND單CPU系統(tǒng)多CPU系統(tǒng)2.3.1 指令周期、總線周期、時(shí)鐘周期取指令譯碼執(zhí)行每條指令一系列控制信號(hào)指令周期:執(zhí)行一條指令所需要的時(shí)間總線周期:CPU從存儲(chǔ)器或I/O端口存取 一次所需要的時(shí)間(Bus Cycle)訪問一次總線的時(shí)間分析執(zhí)行每一條指令的時(shí)間不同一個(gè)基本的總線周期由4個(gè)T狀態(tài)組成是微機(jī)系統(tǒng)工作的最小時(shí)間單位時(shí)鐘周期:系統(tǒng)完成任何操作

17、所需要的時(shí)間,均是時(shí)鐘周期的整數(shù)倍。取決于系統(tǒng)的主頻率T狀態(tài)CLKT1 T2 T3 T4總線周期8088CPU的主頻率為5MHz,時(shí)鐘周期(一個(gè)T狀態(tài))為200ns基本總線周期存儲(chǔ)器讀或?qū)戄斎胼敵龅淖x或?qū)懼袛囗憫?yīng)一個(gè)最基本的總線周期通常包括4個(gè)T狀態(tài) T1狀態(tài):CPU往多路復(fù)用總線上發(fā)送地址信息,選中所要尋址的存儲(chǔ)單元或外設(shè)端口地址。 T2狀態(tài):CPU從總線上撤銷地址,并使總線的低16位浮置成高阻狀態(tài),為傳送數(shù)據(jù)做準(zhǔn)備。 T3狀態(tài):總線的高4位繼續(xù)提供狀態(tài)信息,低16位將出現(xiàn)由CPU寫出的數(shù)據(jù),或CPU從存儲(chǔ)器或者外設(shè)端口讀入的數(shù)據(jù)。 等待狀態(tài):有些情況下,I/O或M不能及時(shí)配合CPU傳送數(shù)據(jù)

18、,在T3狀態(tài)啟動(dòng)之前它會(huì)通過READY引腳向CPU 發(fā)出一個(gè)“未準(zhǔn)備好”信號(hào)。CPU在T3狀態(tài)之后自動(dòng)插入若干個(gè)時(shí)鐘周期Tw,直至CPU接收到“準(zhǔn)備好”信號(hào),自動(dòng)脫離Tw狀態(tài)進(jìn)入T4。 T4狀態(tài):總線周期結(jié)束。 空閑周期Ti:兩個(gè)總線周期之間,若干個(gè)時(shí)鐘周期。8086/8088存儲(chǔ)器20條AB,尋址1M存儲(chǔ)空間;按字節(jié)組織,每個(gè)字節(jié)唯一 地址;字節(jié):順序存放字:低位字節(jié)放在低地址中 高位字節(jié)放在高地址中雙字節(jié):低位字是偏移量 高位字是段地址規(guī)則字:低位字節(jié)存放在偶 數(shù)地址非規(guī)則字:低位字節(jié)存放在 奇數(shù)地址規(guī)則字的存取需要1個(gè)總線周期,非規(guī)則字的存取需要2個(gè)總線周期地址總線A19A1可同時(shí)對(duì)高、

19、低位庫(kù)的存儲(chǔ)單元尋址,A0或BHE用于庫(kù)的選擇,分別接到庫(kù)選擇端SEL。BHEA0操作操作使用的數(shù)據(jù)總線使用的數(shù)據(jù)總線00同時(shí)讀同時(shí)讀/寫高低兩個(gè)字節(jié)寫高低兩個(gè)字節(jié)AD15AD001只讀只讀/寫奇地址的高位寫奇地址的高位AD15AD810只讀只讀/寫偶地址的高位寫偶地址的高位AD8AD011不傳送不傳送8088系統(tǒng)中,尋址空間1MB,單一的存儲(chǔ)器,1M8位。20跟地址線與8跟數(shù)據(jù)線分別同8088CPU的對(duì)應(yīng)地址線和數(shù)據(jù)線相連。8088CPU每訪問1次存儲(chǔ)器只讀/寫1個(gè)字節(jié)信息。任何數(shù)據(jù)字都需要兩次訪問存儲(chǔ)器才能完成讀/寫操作。8088系統(tǒng)中,程序運(yùn)行速度比在8086系統(tǒng)中慢些。每個(gè)段大小可以從

20、一個(gè)字節(jié)開始,任意遞增,最多包含 64KB長(zhǎng)的連續(xù)存儲(chǔ)單元;每個(gè)段的20位起始地址(段基址),是能被16整除的數(shù), 即最后4位為零,可通過程序在段寄存器中裝入16位段地 址來設(shè)置;段地址是20位段基址的前16位。1個(gè)程序所用的具體存儲(chǔ)空間:1個(gè)或多個(gè)邏輯段;段基地址存在CS、SS、DS、ES中,程序可以從中給出的 邏輯段中存取代碼和數(shù)據(jù);段區(qū)的分配是由操作系統(tǒng)完成的,系統(tǒng)允許程序員指定。20位尋址操作變?yōu)?6位尋址操作縮短了指令長(zhǎng)度,提高了執(zhí)行速度多在段內(nèi)操作,少在段間操作注:程序設(shè)計(jì)中變復(fù)雜尋址為簡(jiǎn)單尋址分段結(jié)構(gòu)的優(yōu)點(diǎn):實(shí)際地址(也稱為物理地址):CPU對(duì)存儲(chǔ)器進(jìn)行訪問時(shí)的實(shí)際尋址所使用的地

21、址,對(duì)8086/8088來講,用20位二進(jìn)制數(shù)或5位十六進(jìn)制數(shù)表示。邏輯地址:程序和指令中表示的一種地址,由段地址和偏移地址兩部分組成,用無符號(hào)的16位二進(jìn)制或4位十六進(jìn)制表示。 段地址:16位段寄存器直接給出的16位地址。 偏移地址(也稱為偏移量或偏移):由指令尋址時(shí)的寄存器組合與位移量之和,16位的偏移量。表示所尋址的地址單元距離段起始地址之間的偏移。 實(shí)際地址和邏輯地址 8086系統(tǒng)中的堆棧是用段定義語句在存儲(chǔ)器中定義的一個(gè) 堆棧段,如同其它邏輯段,可在1MB的存儲(chǔ)空間中浮動(dòng)。 一個(gè)系統(tǒng)堆棧數(shù)目不受限制,棧長(zhǎng)度不超過64KB。 堆棧由段寄存器SS和堆棧指針SP來尋址 SS:給出堆棧段的段

22、地址 SP:給定當(dāng)前棧頂,即指出從堆棧的段基址到棧頂?shù)钠屏俊?棧頂是堆棧操作的唯一出口,是棧地址較小的一端。堆棧(1)在進(jìn)行連續(xù)的壓入和彈出操作時(shí),壓入的次序與彈出的次序正相反,即先壓入的內(nèi)容后彈出,這樣可保證返回寄存器的內(nèi)容不發(fā)生錯(cuò)誤。由于堆棧操作是按“后進(jìn)先出”方式工作,因此在使用進(jìn)棧指令PUSH和出棧指令POP時(shí)應(yīng)注意兩點(diǎn):(2)PUSH和POP指令必須成對(duì)出現(xiàn),否則會(huì)使地址出錯(cuò),而造成整個(gè)程序執(zhí)行出錯(cuò)。2.3.2 8086/8088CPU的引腳信號(hào)和功能8080/8085 8位 16位 64KB 408088/8086 16位 20位 1MB 40數(shù)據(jù)線 地址線 直接尋址 引腳數(shù)雙功

23、能引腳的功能轉(zhuǎn)換分時(shí)復(fù)用同一引腳在一個(gè)總線周期的不同時(shí)鐘周期內(nèi)其功能不同根據(jù)工作模式定義引腳的功能8086GNDAD14AD13AD12AD11AD10AD9AD8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKGNDVCCAD15A16/S3A17/S4A18/S5A19/S6BHE/S7MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN (S0)ALE (QS0)INTA(QS1)TESTREADYRESET8088GNDA14A13A12A11A10A9A8AD7AD6AD5AD4AD3AD2AD1AD

24、0NMIINTRCLKGNDVCCA15A16/S3A17/S4A18/S5A19/S6SS0(HIGH)MN/MXRDHOLD(RQ/GT0)HLDA(RQ/GT1)WR(LOCK)M/IO(S2)DT/R(S1)DEN (S0)ALE (QS0)INTA(QS1)TESTREADYRESET其中帶括號(hào)的引腳功能為最大模式下的功能8086/8088 的引腳信號(hào)和功能 分時(shí)復(fù)用地址/數(shù)據(jù)總線:AD15AD0(引腳39,2-16,16根) 傳送地址時(shí):?jiǎn)蜗?,三態(tài)輸出,傳送數(shù)據(jù)時(shí):雙向,三態(tài)輸入輸出。通過分時(shí)復(fù)用利用40條引腳實(shí)現(xiàn)20位地址、16位數(shù)據(jù)即眾多控制信號(hào)和狀態(tài)信號(hào)的傳輸。T1狀態(tài):輸出

25、要尋址的存儲(chǔ)器或I/O端口地址;T2狀態(tài):浮置成高阻狀態(tài),為傳輸數(shù)據(jù)做準(zhǔn)備;T3狀態(tài):用于傳輸數(shù)據(jù);T4狀態(tài):結(jié)束總線周期。當(dāng)CPU響應(yīng)中斷以及系統(tǒng)總線“保持響應(yīng)”時(shí),復(fù)用線都被浮置成高阻狀態(tài)。 分時(shí)復(fù)用地址/狀態(tài)總線:A19/S6 A16/S3(引腳3538,4根)輸出,三態(tài)。T1狀態(tài):輸出地址的最高位;T2T4狀態(tài):輸出狀態(tài)信息。訪問存儲(chǔ)器:T1狀態(tài)時(shí)輸出的A19 A16送到鎖存器(8282)鎖存,與AD15AD0組成20位的地址信號(hào);訪問I/O端口:不使用這4條引線,A19 A16=0。S6為0,8086當(dāng)前與總線相連。S5表明中斷允許標(biāo)志位IF的當(dāng)前設(shè)置。S4和S3指示當(dāng)前正在使用哪個(gè)

26、段寄存器。S4S3狀態(tài)00當(dāng)前正在使用ES01當(dāng)前正在使用SS10當(dāng)前正在使用CS,或未用任何段寄存器11當(dāng)前正在使用DSS4、S3的代碼組合和對(duì)應(yīng)的狀態(tài) 電源線和地線:3根,1個(gè)電源線Vcc(引腳40):輸入電壓+5V10%。2個(gè)地線GND(引腳1,20):均接地 控制總線:8根 a)BHE/S7(引腳34):高8位數(shù)據(jù)總線允許/狀態(tài)復(fù)用,三態(tài),輸出BHE在總線周期的T1狀態(tài)時(shí)輸出,S7在T2T4時(shí)輸出。 8086中,當(dāng)BHE/S7引腳上輸出BHE信號(hào)時(shí),表示總線上高8位AD15AD8的數(shù)據(jù)有效。存儲(chǔ)體寄庫(kù)選擇控制。 8088中,34引腳不是BHE/S7,而是被賦予另外的信號(hào):最小方式時(shí),它

27、為SS0,最大方式時(shí),它恒為高電平。 S7在8086中未被賦予定義。b) RD(引腳32):讀控制,三態(tài),輸出,低有效RD =0時(shí),CPU將執(zhí)行對(duì)M/IO端口的讀操作。對(duì)內(nèi)存單元還是對(duì)IO端口讀取數(shù)據(jù),取決于M/IO(8086)或M/IO(8088)信號(hào)。在一個(gè)讀操作的總線周期中, RD信號(hào)在T2、T3、Tw狀態(tài)均為低電平,以保證CPU讀有效。在系統(tǒng)總線“保持響應(yīng)”期間,RD被浮空?!癛eady”輸入引腳,接收來自于內(nèi)存單元或I/O端口向CPU發(fā)來的“準(zhǔn)備好”狀態(tài)信號(hào),表明內(nèi)存單元或I/O端口已經(jīng)準(zhǔn)備好進(jìn)行讀寫操作。該信號(hào)是協(xié)調(diào)CPU與內(nèi)存單元或I/O端口之間進(jìn)行信息傳送的聯(lián)絡(luò)信號(hào)。 c)RE

28、ADY(引腳22):“準(zhǔn)備好”信號(hào),輸入,高有效,由所尋址的M或IO設(shè)備發(fā)出。READY=1時(shí),表示M或IO設(shè)備已準(zhǔn)備就緒,馬上可以進(jìn)行依次數(shù)據(jù)傳輸。CPU在每個(gè)總線周期的T3狀態(tài)開始對(duì)READY信號(hào)采樣。當(dāng)READY=0時(shí),表示M或IO設(shè)備尚未準(zhǔn)備好,則CPU在T3狀態(tài)之后自動(dòng)插入一個(gè)或幾個(gè)等待狀態(tài)Tw,直到READY變?yōu)楦唠娖?,進(jìn)入T4狀態(tài),完成數(shù)據(jù)傳送過程。d)TEST(引腳23):等待測(cè)試信號(hào),輸入,低有效。當(dāng)CPU執(zhí)行WAIT指令時(shí),進(jìn)入空轉(zhuǎn)等待狀態(tài),且每隔5個(gè)時(shí)鐘周期對(duì)該線的輸入進(jìn)行一次測(cè)試:若TEST=1時(shí),CPU將停止取下條指令而繼續(xù)處于等待狀態(tài),重復(fù)執(zhí)行WAIT,直到TEST

29、=0時(shí),等待狀態(tài)結(jié)束,CPU才繼續(xù)往下執(zhí)行被暫停的指令。 e)INTR(引腳18):可屏蔽中斷請(qǐng)求,輸入,高有效。INTR=1時(shí),表示外設(shè)提出了中斷請(qǐng)求,8086在每個(gè)指令周期的最后一個(gè)T狀態(tài)去采樣此信號(hào)。若IF=1,CPU響應(yīng)中斷,停止執(zhí)行當(dāng)前的指令序列,并轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。 f)NMI(引腳17):非屏蔽中斷請(qǐng)求,輸入,上升沿觸發(fā)此請(qǐng)求不受IF狀態(tài)的影響,也不能用軟件屏蔽,只要此信號(hào)一出現(xiàn),CPU就會(huì)在現(xiàn)行指令結(jié)束后引起中斷。 g)RESET(引腳21):復(fù)位信號(hào),輸入,高電平有效。與8284A(時(shí)鐘發(fā)生/驅(qū)動(dòng)器)的復(fù)位輸出端相連;8086/8088要求復(fù)位脈沖寬度不得小于4個(gè)時(shí)鐘周期

30、,而初次接通電源時(shí)所引起的復(fù)位,則要求維持的高電平不能小于50S。復(fù)位后,CPU的主程序流程恢復(fù)到啟動(dòng)時(shí)的循環(huán)待命初始狀態(tài)。內(nèi)部寄存器內(nèi)部寄存器狀態(tài)狀態(tài)標(biāo)志寄存器標(biāo)志寄存器IPCSDSSSES指令隊(duì)列緩沖器指令隊(duì)列緩沖器清除清除0000HFFFFH0000H0000H0000H清除清除h)CLK(引腳19):系統(tǒng)時(shí)鐘,輸入通常與8284A時(shí)鐘發(fā)生器的時(shí)鐘輸出端CLK相連,該時(shí)鐘信號(hào)的低/高之比常采用2:1(占空比1/3)。 其它控制線(引腳2431):8個(gè) 這些控制線的性能,根據(jù)方式控制線(引腳33)MN/MX所處的狀態(tài)而定。MN/MX=1,8086工作于最小方式,全部信號(hào)由CPU提供;MN/

31、MX=0,8086工作于最大方式,控制信號(hào)由8288總線控制器提供。時(shí)序:計(jì)算機(jī)操作運(yùn)行的時(shí)間順序。時(shí)序:三總線上出現(xiàn)的信息不但有嚴(yán)格的順序,而且有準(zhǔn)確的時(shí)間,成為定時(shí)或時(shí)序。數(shù)據(jù)/地址、狀態(tài)/地址復(fù)用線的特點(diǎn) 減少了 8086CPU的引腳線 需解決 數(shù)據(jù)/地址線的分離控制線的特點(diǎn) 功能各異:不同控制線具有不同的作用 方向確定:僅為單相輸入或輸出 電平觸發(fā):不同控制線有不同的電平觸發(fā)方式電源線 VCC:+5V GND:地 8086/80888086/8088的引腳特性8086/8088系統(tǒng)最小/最大工作方式條件 最小工作模式:控制線MN/MX=H 最大工作模式:控制線MN/MX=L特點(diǎn) 最小工

32、作模式:控制線由CPU自身產(chǎn)生 最大工作模式:控制線由芯片8288產(chǎn)生應(yīng)用 最小工作模式:硬件簡(jiǎn)單,用于專用機(jī) 最大工作模式:硬件復(fù)雜,用于系統(tǒng)機(jī)注:掌握最小工作模式,了解最大工作模式MN/MX接電源電壓,系統(tǒng)處于最小方式,即單處理器系統(tǒng)方式;時(shí)鐘信號(hào)發(fā)生器8284A;外接晶體的基本振蕩頻率為15MHz,經(jīng)8284A三分頻后,送給CPU作系統(tǒng)時(shí)鐘CLK。8位地址鎖存器8282:鎖存后地址信號(hào),在整個(gè)周期保持不變。三態(tài)輸出的8位數(shù)據(jù)總線收發(fā)器8286:用于增加系統(tǒng)的驅(qū)動(dòng)能力。等待狀態(tài)產(chǎn)生電路:向8284A的RDY端提供一個(gè)信號(hào),經(jīng)同步 后,向CPU的READY線發(fā)“準(zhǔn)備就緒”信號(hào), 通知CPU數(shù)

33、據(jù)傳送已完成,可退出當(dāng)前總線 周期。最小方式a) INTA(Interrupt acknowledge) 引腳24 中斷響應(yīng)信號(hào),輸出,低有效 CPU對(duì)來自外設(shè)的中斷請(qǐng)求作出響應(yīng),發(fā)兩個(gè)連續(xù)負(fù)脈沖。 第一個(gè)脈沖:通知外設(shè)端口,中斷請(qǐng)求被允許; 第二個(gè)脈沖:外設(shè)往數(shù)據(jù)總線上發(fā)送中斷類型碼。b)ALE:(address latch enable)引腳25 地址鎖存允許信號(hào),輸出,高有效。 CPU在每個(gè)總線周期T1狀態(tài)發(fā)出,作為地址鎖存器的地址 鎖存信號(hào)。中斷:是CPU與外部設(shè)備交換信息的一種方式。計(jì)算機(jī)在執(zhí)行正常程序的過程中,當(dāng)出現(xiàn)某些異常事件或某種外部請(qǐng)求時(shí),處理器就暫時(shí)中斷正在執(zhí)行的正常程序,

34、而轉(zhuǎn)去執(zhí)行對(duì)異常事件或某種外設(shè)的請(qǐng)求的處理操作。c) DEN:(data enable)引腳26 數(shù)據(jù)允許信號(hào),輸出,三態(tài),低有效 為總線收發(fā)器OE端提供控制信號(hào),決定是否允許數(shù)據(jù)通過。d) DT/R: (data enable)引腳27 數(shù)據(jù)收發(fā)控制信號(hào),輸出,三態(tài)??刂瓶偩€收發(fā)器的數(shù)據(jù)傳送方向,高電平時(shí):數(shù)據(jù)發(fā)送;低電平時(shí):數(shù)據(jù)接收e) M/IO:(memory/input and output)引腳28 存儲(chǔ)器/輸入輸出控制信號(hào),輸出,三態(tài)。用于區(qū)分CPU訪問M還是IO。 高電平:訪問M:;低電平:訪問IO。f) WR: (write)引腳29 寫控制信號(hào),輸出,三態(tài),低有效 表示CPU

35、當(dāng)前進(jìn)行M或IO的寫操作。g) HOLD:(hold request)引腳30 總線保持請(qǐng)求信號(hào),輸入,高有效 是系統(tǒng)中的其它總線主控部件向CPU發(fā)出的請(qǐng)求占用總線 的控制信號(hào)。h) HLDA: (hold acknowledge)引腳31 總線保持應(yīng)答信號(hào),輸出,高有效 與HOLD配合使用的聯(lián)絡(luò)信號(hào), 有效期間,所有與三態(tài)門連接的引腳處于浮空,讓 出總線。MN/MX接地,系統(tǒng)處于最大方式,含兩個(gè)或多個(gè)處理器,需要解決主處理器和協(xié)處理器之間協(xié)調(diào)工作及總線共享問題。時(shí)鐘發(fā)生/驅(qū)動(dòng)器8284A:1片8位地址鎖存器8282:3片三態(tài)輸出的8位數(shù)據(jù)線收發(fā)器8286:2片等待狀態(tài)產(chǎn)生電路:協(xié)調(diào)Ready

36、信號(hào)總線控制器8288:對(duì)CPU發(fā)出的控制信號(hào)變換、組合,得到對(duì)M或IO的讀/寫信號(hào),對(duì)8282和8286的控制信號(hào)。最大方式最小方式:控制信號(hào)M/IO或(M/IO)、WR、INTR、ALE、DT/R、DEN直接從CPU的第2429腳送出。a) LOCK(lock)引腳29 總線封鎖信號(hào),輸出由指令前綴LOCK產(chǎn)生,LOCK前綴后面一條指令執(zhí)行完畢,LOCK信號(hào)撤銷。低電平時(shí):CPU獨(dú)占總線,系統(tǒng)中其它主要部件就不能占用總線。b) RQ/GT1、RQ/GT0:引腳30、31 總線請(qǐng)求輸入/總線允許輸出供CPU以外的兩個(gè)處理器,用來發(fā)出使用總線的請(qǐng)求信號(hào),和接收CPU對(duì)總線請(qǐng)求信號(hào)的回答信號(hào)。二

37、者都是雙向的,信號(hào)在同一引線上傳輸,當(dāng)方向相反,RQ/GT0有更高優(yōu)先權(quán)。c) MRDC(memory read command)對(duì)存儲(chǔ)器讀 MWTC:(memory write command)對(duì)存儲(chǔ)器寫 AMWC(advanced memory write command)超前寫存儲(chǔ)器命令 IOWC(I/O write command)對(duì)I/O寫 IODC(I/O read command)對(duì)I/O讀 AIOWC(advanced I/O write command)超前寫I/O命令2.4 8086/8088微處理器的基本時(shí)序CPU的基本時(shí)序最小模式下的典型時(shí)序最大模式下的典型時(shí)序時(shí)序:是

38、計(jì)算機(jī)操作運(yùn)行的時(shí)間順序 2.4.1 最小模式下的典型時(shí)序T1 T2 T3 T4CLKALE1. 8086最小工作模式最小工作模式下的總線讀周期下的總線讀周期M/IOA19A16S6S3BHERDDT/RDENAD15AD0高高=M地址地址地址地址低低=IO輸出輸出輸出輸出S6S3數(shù)據(jù)數(shù)據(jù) 輸入輸入數(shù)據(jù)數(shù)據(jù)TwCLKALEM/IOA19A16S6S3RDDT/RDENAD15AD0 具有等待狀態(tài)的總線讀操作BHET1高高=M地址地址地址地址READY低低=IO輸出輸出輸出輸出T2S6S3T3輸入輸入T42. 最小模式下的總線寫操作(8086)T1 T2 T3 T4CLKALEM/IOA19A1

39、6S6S3BHEWRDT/RDENAD15AD0數(shù)據(jù)數(shù)據(jù)S6S3高高=M地址地址地址地址輸出輸出讀操作和讀操作和寫操作有寫操作有哪些不同?哪些不同?*輸出輸出低低=IO輸出輸出3. 中斷響應(yīng)周期T1 T2 T3 T4 T1 T1 T1 T1 T2 T3 T4三個(gè)空閑狀態(tài)三個(gè)空閑狀態(tài)LCKALEAD7AD0INTA中斷類型中斷類型INTA4. 系統(tǒng)的復(fù)位和啟動(dòng)操作CLK無作用狀態(tài)無作用狀態(tài)浮空浮空三態(tài)門三態(tài)門輸出信號(hào)輸出信號(hào)RESET輸入輸入8086/8088的啟動(dòng)和復(fù)位信號(hào)的啟動(dòng)和復(fù)位信號(hào)內(nèi)部?jī)?nèi)部RESETCPU立即停止操作,清立即停止操作,清FR,DS,ES,SS、IP及指令隊(duì)列。及指令隊(duì)列

40、。同時(shí),置同時(shí),置CS為為FFFFH。當(dāng)。當(dāng)RESET變?yōu)榈碗娖綍r(shí),變?yōu)榈碗娖綍r(shí),CPU從從FFFF0H單元開始啟動(dòng)。單元開始啟動(dòng)。進(jìn)入內(nèi)部進(jìn)入內(nèi)部RESET后后5. 總線占用周期CLKHOLDHLDA所所有有三三態(tài)態(tài)總總線線8086/8088總線請(qǐng)求總線請(qǐng)求/響應(yīng)時(shí)序圖響應(yīng)時(shí)序圖T4或或T169Intel 80286(1)內(nèi)部有4個(gè)獨(dú)立的可并行操作單元:執(zhí)行單元(EU)、總線單元(BU)、指令單元(IU)和地址單元(AU),可實(shí)現(xiàn)4級(jí)流水線作 (2)地址總線和數(shù)據(jù)總線完全分開;(3)存儲(chǔ)空間有實(shí)地址和保護(hù)虛擬地址兩種工作方式。兩者的實(shí)地址空間分別為1MB和16MB;(4)在保護(hù)方式下,4個(gè)段寄存器裝入的不再是段基址,而是指向段描述符表中某個(gè)段描述符的索引值,稱為段選

溫馨提示

  • 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. 人人文庫(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論