8086的總線操作和時(shí)序及工作模式_第1頁(yè)
8086的總線操作和時(shí)序及工作模式_第2頁(yè)
8086的總線操作和時(shí)序及工作模式_第3頁(yè)
8086的總線操作和時(shí)序及工作模式_第4頁(yè)
8086的總線操作和時(shí)序及工作模式_第5頁(yè)
已閱讀5頁(yè),還剩85頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、8086的總線操作和時(shí)序及工作模式5.1 時(shí)鐘周期、總線周期和指令周期5.2 8086/8088的引腳信號(hào)及工作模式5.3 8086CPU最小模式下的引腳功能5.4 8086CPU最小模式下的總線形成5.5 8086CPU最小模式下的總線時(shí)序習(xí)題與思考題 問題:CPU通過什么將地址、數(shù)據(jù)和控制信息傳到存儲(chǔ)器芯片中?三大總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線CPU通過控制總線實(shí)現(xiàn)對(duì)外部器件的控制。控制總線的寬度決定了對(duì)外部的控制能力??偩€操作是指CPU通過總線對(duì)外的各種操作。8086的總線操作主要有:存儲(chǔ)器讀、I/O讀操作存儲(chǔ)器寫、I/O寫操作中斷響應(yīng)操作總線請(qǐng)求及響應(yīng)操作CPU正在進(jìn)行內(nèi)部操作、

2、并不進(jìn)行實(shí)際對(duì)外操作的空閑狀態(tài)Ti 總線操作時(shí)序(Timing)是指信號(hào)高低電平(有效或無效)變化及相互間的時(shí)間順序關(guān)系總線時(shí)序描述CPU引腳如何實(shí)現(xiàn)總線操作 總線操作與時(shí)序描述總線操作的CPU時(shí)序有三級(jí)指令周期 總線周期 時(shí)鐘周期指令周期(Instruction Cycle) 1、 8086CPU執(zhí)行一條指令所需要的時(shí)間稱為指令周期(Instruction Cycle) 。 2、一個(gè)指令周期由一個(gè)或若干個(gè)總線周期組成,不同指令的指令周期不是等長(zhǎng)的,最短為一個(gè)總線周期,長(zhǎng)的指令周期,如乘法指令周期,長(zhǎng)達(dá)124個(gè)時(shí)鐘周期。5.1 時(shí)鐘周期、總線周期和指令周期總線周期(Bus Cycle) 1、8

3、086CPU要通過總線才能與外部交換信息,CPU通過總線與外部(存儲(chǔ)器或I/O)交換一次信息,稱為一次總線操作。 2、執(zhí)行一個(gè)總線操作所需要的時(shí)間稱為一個(gè)總線周期(Bus Cycle),也稱機(jī)器周期(Machine Cycle)。 3、根據(jù)總線操作功能的不同,有多種不同的總線周期,如存儲(chǔ)器讀周期、存儲(chǔ)器寫周期、I/O讀周期、I/O寫周期。5.1 時(shí)鐘周期、總線周期和指令周期時(shí)鐘周期8086的基本總線周期需要4個(gè)時(shí)鐘周期4個(gè)時(shí)鐘周期編號(hào)為T1、T2、T3和T4總線周期中的時(shí)鐘周期也被稱作“T狀態(tài)” 時(shí)鐘周期的時(shí)間長(zhǎng)度就是時(shí)鐘頻率的倒數(shù)5.1 時(shí)鐘周期、總線周期和指令周期一個(gè)基本的總線周期通常包含

4、 4 個(gè)T狀態(tài) 8086 CPU的總線周期圖5.1 時(shí)鐘周期、總線周期和指令周期一個(gè)總線周期數(shù)據(jù)傳輸過程T1狀態(tài):CPU發(fā)存儲(chǔ)單元的20位地址信息或I/O端口的16/8位地址信息和 信號(hào),并發(fā)地址鎖存允許ALE信號(hào),將地址信息和信號(hào) 鎖存到地址鎖存器8282中。CPU通過發(fā) 信號(hào)確定是讀存儲(chǔ)器還是讀I/O端口。T2狀態(tài): S7S3狀態(tài)信息輸出,同時(shí)發(fā)讀有效 (寫有效 )和數(shù)據(jù)允許 信號(hào),啟動(dòng)所選中的存儲(chǔ)單元或I/O端口。5.1 時(shí)鐘周期、總線周期和指令周期T3狀態(tài):在下降沿CPU采樣READY,若所選中的存儲(chǔ)單元或I/O端口能在T3期間準(zhǔn)備好數(shù)據(jù),則READY=1;否則置READY=0,T3過

5、后插入Tw,CPU再在插入的Tw下降沿采樣READY,直至READY=1為止。選中的存儲(chǔ)單元或I/O端口把數(shù)據(jù)送到數(shù)據(jù)總線DB上。 T3狀態(tài)的上升沿或插入Tw的上升沿:CPU在發(fā) =0和 =0的情況下,讀數(shù)據(jù)總線。T4狀態(tài):完成當(dāng)前數(shù)據(jù)的采樣,結(jié)束當(dāng)前的總線周期。5.1 時(shí)鐘周期、總線周期和指令周期8086/8088CPU采用40個(gè)引腳的雙列直插式封裝形式。為了解決功能多與引腳少的矛盾,8086/8088CPU采用了引腳復(fù)用技術(shù),采用了分時(shí)復(fù)用的地址/數(shù)據(jù)總線。 5.2 8086/8088CPU的引腳信號(hào)圖2.5 8086/8088CPU外部引腳圖5.2 8086/8088CPU的引腳信號(hào) 1

6、. 內(nèi)部結(jié)構(gòu)的區(qū)別 1)8088CPU和8086 CPU的內(nèi)部結(jié)構(gòu)基本相同,都是16位的內(nèi)部結(jié)構(gòu),只是外部數(shù)據(jù)總線的寬度不同。 2)8086的外部數(shù)據(jù)總線為16位,而8088的BIU對(duì)外部只提供8位的數(shù)據(jù)線,所以稱8088為準(zhǔn)16位CPU。 3)8086CPU內(nèi)的BIU中有一個(gè)6字節(jié)的指令隊(duì)列,而8088CPU內(nèi)的BIU中只有一個(gè)4字節(jié)的指令隊(duì)列。當(dāng)8088指令隊(duì)列有1個(gè)字節(jié)的空余(8086隊(duì)列為2個(gè)字節(jié)空余)時(shí),BIU在執(zhí)行單元不需要數(shù)據(jù)訪問時(shí)將自動(dòng)取指令到指令隊(duì)列。5.2 8086/8088CPU的引腳信號(hào)8086CPU和8088CPU區(qū)別 2. 外部引腳的區(qū)別1) 8086有16根數(shù)據(jù)線

7、,與地址線A15A0分時(shí)復(fù)用,而 8088只有8根數(shù)據(jù)線與地址線AD7AD0分時(shí)復(fù)用;2)8086一次可讀寫8位或16位數(shù)據(jù);8088讀寫16位的數(shù)據(jù)需要兩次訪問存儲(chǔ)器或端口。3)28號(hào)引腳的相位不同。4)34號(hào)引腳定義不同。5.2 8086/8088CPU的引腳信號(hào)5.2 8086/8088的兩種組態(tài)模式最小組態(tài)模式構(gòu)成小規(guī)模的應(yīng)用系統(tǒng)8086本身提供所有的系統(tǒng)總線信號(hào)最大組態(tài)模式構(gòu)成較大規(guī)模的應(yīng)用系統(tǒng),例如可以接入數(shù)值協(xié)處理器80878086和總線控制器8288共同形成系統(tǒng)總線信號(hào)5.2 8086/8088的兩種組態(tài)模式兩種組態(tài)利用MN/MX*(33號(hào))引腳區(qū)別MN/MX*接高電平為最小組

8、態(tài)模式MN/MX*接低電平為最大組態(tài)模式兩種組態(tài)下的內(nèi)部操作并沒有區(qū)別本書以最小組態(tài)展開基本原理通常在信號(hào)名稱加上劃線(如:MX)或星號(hào)(如:MX*)表示低電平有效外部特性表現(xiàn)在其引腳信號(hào)上,學(xué)習(xí)時(shí)請(qǐng)?zhí)貏e關(guān)注以下幾個(gè)方面:指引腳信號(hào)的定義、作用;通常采用英文單詞或其縮寫表示信號(hào)從芯片向外輸出,還是從外部輸入芯片,或者是雙向的起作用的邏輯電平高、低電平有效上升、下降邊沿有效輸出正常的低電平、高電平外,還可以輸出高阻的第三態(tài) 有效電平 三態(tài)能力 信號(hào)的流向 引腳的功能5.3 8086CPU最小模式下的引腳信號(hào)及功能分類學(xué)習(xí)這40個(gè)引腳(總線)信號(hào)1、數(shù)據(jù)和地址引腳2、讀寫控制引腳3、中斷請(qǐng)求和響應(yīng)

9、引腳4、總線請(qǐng)求和響應(yīng)引腳5、其它引腳5.3 8086CPU最小模式下的引腳信號(hào)及功能1. 地址、數(shù)據(jù)引腳線 AD0AD15(Address/Data Bus):分時(shí)復(fù)用的地址數(shù)據(jù)引腳線,具有雙向、三態(tài)功能。在總線周期T1期間作地址線A15A0用,此時(shí)輸出存儲(chǔ)單元的低16位地址在T2T3期間作數(shù)據(jù)線D15D0用,是雙向的。當(dāng)CPU響應(yīng)中斷時(shí),以及系統(tǒng)總線處理“保持響應(yīng)”狀態(tài)時(shí),AD0AD15都處于懸空狀態(tài)。1、數(shù)據(jù)地址引腳 A19/S6A16/S3:地址/狀態(tài)分時(shí)復(fù)用,輸出引腳。在T1期間,作地址線A19A16,對(duì)存儲(chǔ)單元進(jìn)行讀寫時(shí),高四位地址由A19A16輸出;就和A15A0組合在一起構(gòu)成2

10、0位地址總線A19A0。在T2T4期間作為S6S3狀態(tài)線用。 1)S6狀態(tài)為低電平表明8086/8088CPU正與總線相連。 2)S5狀態(tài)表示當(dāng)前中斷允許標(biāo)志IF的狀態(tài),如果IF=1表明當(dāng)前允許可屏蔽中斷請(qǐng)求,IF=0表明當(dāng)前禁止可屏蔽中斷請(qǐng)求 3)S4和S3狀態(tài)組合起來指出CPU正在使用哪一個(gè)段寄存器1、數(shù)據(jù)地址引腳表2-2 S4、S3組合與當(dāng)前段的關(guān)系表S4 S3當(dāng)前使用的段寄存器0 0ES段寄存器0 1SS段寄存器1 0存儲(chǔ)器尋址時(shí)為CS段寄存器,I/O端口則不需要1 1DS段寄存器1、數(shù)據(jù)地址引腳2、讀寫控制引腳ALE(Address Latch Enable)地址鎖存允許,輸出、三態(tài)

11、ALE引腳高電平有效,當(dāng)復(fù)用引腳AD15 AD0和A19/S6 A16/S3正在傳送地址信息,CPU提供ALE有效電平,將地址信息鎖存到地址鎖存器中。2、讀寫控制引腳(續(xù)1)IO/M*(Input and Output/Memory) I/O或存儲(chǔ)器訪問,輸出、三態(tài)該引腳輸出高電平時(shí),表示CPU將訪問I/O端口,這時(shí)地址總線A15 A0提供16位I/O口地址該引腳輸出低電平時(shí),表示CPU將訪問存儲(chǔ)器,這時(shí)地址總線A19 A0提供20位存儲(chǔ)器地址2、讀寫控制引腳(續(xù)2)WR*(Write) 寫控制,輸出、三態(tài)、低電平有效有效時(shí),表示CPU正在寫出數(shù)據(jù)給存儲(chǔ)器或I/O端口RD*(Read)讀控制,

12、輸出、三態(tài)、低電平有效有效時(shí),表示CPU正在從存儲(chǔ)器或I/O端口讀入數(shù)據(jù)2. 讀寫控制引腳(續(xù)3) IO/M*、WR*和RD*是最基本的控制信號(hào)組合后,控制4種基本的總線周期總線周期IO/M*WR*RD*存儲(chǔ)器讀低高低存儲(chǔ)器寫低低高I/O讀高高低I/O寫高低高READY(ready)準(zhǔn)備就緒信號(hào):存儲(chǔ)器和I/O就緒使CPU和低速的存儲(chǔ)器或I/O設(shè)備之間實(shí)現(xiàn)速度匹配的信號(hào)。當(dāng)READY為高電平時(shí),表示內(nèi)存或I/O設(shè)備已準(zhǔn)備就緒,可以立即進(jìn)行一次數(shù)據(jù)傳輸。CPU在每個(gè)總線周期的T3狀態(tài)對(duì)READY引腳進(jìn)行檢測(cè),若檢測(cè)到READY=1,則總線周期按正常時(shí)序進(jìn)行讀、寫操作;不需要插入等待狀態(tài)TW。若測(cè)

13、得READY=0,則表示存儲(chǔ)器或I/O設(shè)備工作速度慢,沒有準(zhǔn)備好數(shù)據(jù),則CPU在T3和T4之間自動(dòng)插入一個(gè)或幾個(gè)等待狀態(tài)TW來延長(zhǎng)總線周期,直到檢測(cè)到READY為高電平后,才使CPU退出等待進(jìn)入T4狀態(tài),完成數(shù)據(jù)傳送。2、讀寫控制引腳(續(xù)4)2、讀寫控制引腳(續(xù)5)DEN*(Data Enable) 數(shù)據(jù)允許信號(hào),輸出、三態(tài)、低電平有效有效時(shí),表示當(dāng)前數(shù)據(jù)總線上正在傳送數(shù)據(jù)。DT/R*(Data Transmit/Receive)數(shù)據(jù)發(fā)送/接收,控制數(shù)據(jù)傳送的方向該信號(hào)表明當(dāng)前總線上數(shù)據(jù)的流向高電平時(shí)數(shù)據(jù)自CPU輸出(發(fā)送)低電平時(shí)數(shù)據(jù)輸入CPU(接收)HOLD(Hold Request)總線

14、保持請(qǐng)求信號(hào)HLDA(Hold Acknowledge)總線保持響應(yīng)信號(hào) HOLD總線保持請(qǐng)求信號(hào): 最小模式系統(tǒng)中,除CPU(8086/8088)以外的其它總線控制器,如DMA控制器申請(qǐng)使用系統(tǒng)總線的請(qǐng)求信號(hào)。3、總線請(qǐng)求和響應(yīng)信號(hào)HLDA總線保持響應(yīng)信號(hào): 1)對(duì)HOLD的響應(yīng)信號(hào)。 2)請(qǐng)求響應(yīng)過程:當(dāng)CPU測(cè)得總線請(qǐng)求信號(hào)HOLD引腳為高電平,如果CPU又允許讓出總線,則在當(dāng)前總線周期結(jié)束時(shí),Ti或者T4狀態(tài)期間發(fā)出HLDA高電平信號(hào),表示CPU讓出總線使用權(quán),同時(shí)總線(地址總線、數(shù)據(jù)總線、控制總線) 置為高阻抗?fàn)顟B(tài)。當(dāng)總線使用完畢,總線請(qǐng)求信號(hào)HOLD變?yōu)榈碗娖?,總線響應(yīng)信號(hào)HLDA

15、也轉(zhuǎn)為無效,CPU重新獲得總線控制權(quán)3、總線請(qǐng)求和響應(yīng)信號(hào)(續(xù)1) 中斷請(qǐng)求和響應(yīng)操作有兩種類型的中斷: 非屏蔽中斷和可屏蔽中斷。 NMI非屏蔽中斷請(qǐng)求信號(hào) INTR可屏蔽中斷請(qǐng)求信號(hào) 中斷響應(yīng)信號(hào)4、中斷請(qǐng)求和響應(yīng)信號(hào)NMI非屏蔽中斷請(qǐng)求信號(hào):當(dāng)該引腳電平出現(xiàn)由低到高變化時(shí),不管中斷允許標(biāo)志IF是0或1,CPU就會(huì)在當(dāng)前指令周期結(jié)束后響應(yīng)中斷請(qǐng)求,轉(zhuǎn)去執(zhí)行中斷處理程序。INTR可屏蔽中斷請(qǐng)求信號(hào):當(dāng)INTR信號(hào)高電平時(shí),表示外部設(shè)備有中斷請(qǐng)求,CPU在每個(gè)指令周期的最后一個(gè)T狀態(tài)檢測(cè)此引腳,一旦測(cè)得此引腳為高電平,并且中斷允許標(biāo)志位IF=1,則CPU在當(dāng)前指令周期結(jié)束后,響應(yīng)中斷請(qǐng)求,轉(zhuǎn)去執(zhí)

16、行中斷處理程序。 中斷響應(yīng)信號(hào): 是CPU響應(yīng)可屏蔽中斷后發(fā)給請(qǐng)求中斷設(shè)備的回答信號(hào),對(duì)中斷請(qǐng)求信號(hào)INTR的響應(yīng)。目的為了獲取中斷類型碼。4、中斷請(qǐng)求和響應(yīng)信號(hào)(續(xù)1)5、其它引腳RESET復(fù)位請(qǐng)求,輸入、高電平有效該信號(hào)有效,將使CPU回到其初始狀態(tài)在復(fù)位狀態(tài),CPU內(nèi)部的寄存器初始化表2-3 復(fù)位后寄存器狀態(tài)寄存器狀態(tài)標(biāo)志Reg清除CSFFFFHIP、DS、ES、SS0000H指令流隊(duì)列清除5、其它引腳復(fù)位后將從FFFF:0000H的邏輯地址,即物理地址FFFF0H處開始執(zhí)行程序。5、其它引腳(續(xù)1)CLK(Clock) 時(shí)鐘輸入系統(tǒng)通過該引腳給CPU和總線控制提供內(nèi)部定時(shí)脈沖。8086

17、/8088CPU的時(shí)鐘一般都是由時(shí)鐘發(fā)生器Intel 8284A芯片來產(chǎn)生。5、其它引腳(續(xù)2)Vcc電源輸入,向CPU提供5V電源GND接地,向CPU提供參考地電平MN/MX*(Minimum/Maximum)組態(tài)選擇,輸入接高電平時(shí),8086引腳工作在最小組態(tài);反之,8086工作在最大組態(tài)5、其它引腳(續(xù)3)TEST*測(cè)試,輸入、低電平有效TEST*信號(hào)和WAIT指令配合使用,當(dāng)CPU執(zhí)行WAIT指令時(shí),CPU處于等待狀態(tài),一旦檢測(cè)到TEST*信號(hào)為低,則結(jié)束等待狀態(tài),繼續(xù)執(zhí)行WAIT指令下面的指令。 /S7高8位數(shù)據(jù)總線允許/狀態(tài)復(fù)用引腳: 在總線周期的T1狀態(tài),8086在 /S7腳輸出

18、低電平,表示高8位數(shù)據(jù)總線有效,即表示數(shù)據(jù)通過ADl5AD8; 若 /S7腳輸出高電平且A0低電平時(shí),表示數(shù)據(jù)通過AD7AD0。 5、其它引腳(續(xù)4)“引腳” 小結(jié)CPU引腳是系統(tǒng)總線的基本信號(hào)可以分成三類信號(hào)16位數(shù)據(jù)線:D0 D1520位地址線:A0 A19控制線:ALE、IO/M*、WR*、RD*、READYINTR、INTA*、NMI,HOLD、HLDARESET、CLK、Vcc、GND什么是分時(shí)復(fù)用分時(shí)復(fù)用就是一個(gè)引腳在不同的時(shí)刻具有兩個(gè)甚至多個(gè)作用最常見的總線復(fù)用是數(shù)據(jù)和地址引腳復(fù)用 總線復(fù)用的目的是為了減少對(duì)外引腳個(gè)數(shù)8088 /8086CPU的數(shù)據(jù)地址線采用了總線復(fù)用方法“引腳

19、”提問提問之一:CPU引腳是如何與外部連接的呢? 解答:總線提問之二:CPU引腳是如何相互配合,實(shí)現(xiàn)總線操作、控制系統(tǒng)工作的呢?解答:總線時(shí)序基本控制信號(hào)的組合方法I/O讀I/O寫存儲(chǔ)器讀存儲(chǔ)器寫最小模式:指微型計(jì)算機(jī)系統(tǒng)中只有8086/8088一個(gè)微處理器系統(tǒng)中所有總線控制信號(hào)直接由8086CPU提供8086工作在最小模式下,將引腳接5V即可。最小模式下,系統(tǒng)控制信號(hào)都由CPU本身發(fā)出。地址數(shù)據(jù)引腳線(AD0AD15)分時(shí)復(fù)用,既輸出地址信息又輸出數(shù)據(jù)信息,將地址信息傳送到地址總線上,需要地址鎖存器進(jìn)行地址信息的分流,同樣需要使用總線緩沖器將數(shù)據(jù)信息分流到數(shù)據(jù)總線。5.4 最小模式的總線形成

20、圖2.6 8086在最小模式下的典型配置最小模式總線形成1片8284A,作為時(shí)鐘發(fā)生器/驅(qū)動(dòng)器,外接振蕩源。圖表明了8284A和CPU的連接。圖2.7 8284A與CPU的連接由圖可以看到,硬件連接由以下幾部分組成:最小模式總線形成1為什么需要地址鎖存與數(shù)據(jù)收發(fā) 由于8086的AD15AD0為分時(shí)復(fù)用的地址/數(shù)據(jù)線,對(duì)在T1狀態(tài)輸出的地址,需要在其消失前將其鎖存起來,以便在整個(gè)總線操作周期中地址線上都保持有穩(wěn)定的地址信號(hào)。 數(shù)據(jù)收發(fā)是為了對(duì)數(shù)據(jù)信號(hào)進(jìn)行放大,以更總線能掛接較多部件。2鎖存與收發(fā)器芯片 8086系統(tǒng)中使用8282/8283作為地址信號(hào)鎖存器,8282的引腳信號(hào)及功能分別如圖所示。

21、8283類同8282,唯一的區(qū)別在于8283輸出反相。 8086系統(tǒng)中采用8286/8287作為數(shù)據(jù)收發(fā)器,8286的引腳信號(hào)及功能分別如圖所示。8287除了輸出與輸入反相外,其余均同8286。最小模式總線形成 地址鎖存器8282(8283):需要3個(gè)片子來分流20位的地址信息。8282(8283)是帶有三態(tài)透明緩沖器的8位通用數(shù)據(jù)鎖存器。它們的引腳圖和內(nèi)部結(jié)構(gòu)如圖所示。 三態(tài)輸出:輸出控制信號(hào)有效時(shí),允許數(shù)據(jù)輸出;無效時(shí),不允許數(shù)據(jù)輸出,呈高阻狀態(tài)透明:鎖存器的輸出能夠跟隨輸入變化地址鎖存器補(bǔ)充圖2.9 8282引腳及內(nèi)部結(jié)構(gòu)圖地址鎖存器常用集成電路芯片 74LS373具有三態(tài)輸出的TTL電

22、平鎖存器LE 電平鎖存引腳OE* 輸出允許引腳74LS373與Intel 8282功能一樣三態(tài)緩沖鎖存器(三態(tài)鎖存器)TA D Q CB鎖存環(huán)節(jié)緩沖環(huán)節(jié)電平鎖存:高電平通過,低電平鎖存上升沿鎖存:通常用負(fù)脈沖觸發(fā)鎖存 兩者的區(qū)別僅在于8282的8位輸入信號(hào)和輸出信號(hào)之間是同相的,而8283的是反相的。當(dāng)STB有效時(shí),輸入端DI0DI7上的8位數(shù)據(jù)被鎖存到鎖存器中。當(dāng) 有效時(shí),鎖存器中的數(shù)據(jù)輸出到輸出線上; 無效時(shí),輸出呈高阻狀態(tài)。 8282/8283和CPU連接時(shí),STB端和CPU的ALE端相連; 接地就行了。CPU輸出的地址碼一旦被鎖存,騰出地址/數(shù)據(jù)復(fù)用線ADl5AD0,為在以后狀態(tài)周期內(nèi)

23、傳送數(shù)據(jù)作好準(zhǔn)備。 地址鎖存器 當(dāng)系統(tǒng)中所連的存儲(chǔ)器和外設(shè)較多時(shí),需要增加數(shù)據(jù)總線的驅(qū)動(dòng)能力,同時(shí)也需要將數(shù)據(jù)信息分流到數(shù)據(jù)總線,要用2片8286/8287作為總線收發(fā)器。8286/8287都是三態(tài)輸出8位雙向數(shù)據(jù)緩沖器,它的引腳如圖所示。 數(shù)據(jù)收發(fā)器圖2.10 8286引腳及內(nèi)部結(jié)構(gòu)圖最小模式總線形成雙向三態(tài)緩沖器ABTOE*OE*0,導(dǎo)通 T1 AB T0 ABOE*1,不導(dǎo)通雙向三態(tài)門具有雙向?qū)ê腿龖B(tài)的特性常用集成電路芯片 74LS2458位雙向緩沖器控制端連接在一起低電平有效可以雙向?qū)ㄝ敵雠c輸入同相E*0,導(dǎo)通 DIR1 AB DIR0 ABE*1,不導(dǎo)通74LS245與Intel

24、 8286功能一樣 是開啟緩沖器的控制信號(hào)。當(dāng) 有效時(shí),允許數(shù)據(jù)通過緩沖器;當(dāng) 無效時(shí),禁止數(shù)據(jù)通過緩沖器,輸出呈高阻狀態(tài)。T是數(shù)據(jù)傳送方向控制信號(hào)。當(dāng)T為高電平時(shí),正向三態(tài)門接通,A7A0為輸入線;當(dāng)T端為低電平時(shí),反向三態(tài)門接通,B7B0為輸入線。 在8086最小模式系統(tǒng)中,8286/8287的 端與CPU的數(shù)據(jù)允許端 相連接;T端與CPU的 端相連接。當(dāng)然,在8086最小模式系統(tǒng)中,也可以不用數(shù)據(jù)收發(fā)器。這時(shí)CPU的地址/數(shù)據(jù)線ADl5AD0可直接與存儲(chǔ)器或I/O端口的數(shù)據(jù)線連接。 最小模式總線形成 最大模式: 微型計(jì)算機(jī)系統(tǒng)中包含有兩個(gè)或多個(gè)微處理器 其中一個(gè)主處理器是8086或808

25、8微處理器 其它處理器稱為協(xié)處理器 協(xié)處理器協(xié)助主處理器工作。常用的協(xié)處理器有8087協(xié)處理器和8089協(xié)處理器。前者是專用于數(shù)值運(yùn)算的處理器;后者是專用于控制輸入/輸出操作的協(xié)處理器。 要使8086CPU按最大模式工作,只需 將引腳接地即可。圖是8086系統(tǒng)在最大模式下的典型配置。最大模式和系統(tǒng)組成最大模式總線形成圖2.10 8086在最大模式下的典型配置最大模式總線形成 從圖可以看到,在最大模式下,除了8282鎖存器和8286數(shù)據(jù)收發(fā)器外,還增加了8288總線控制器。8288對(duì)CPU發(fā)出的控制信號(hào)進(jìn)行變換和組合,以獲得對(duì)存儲(chǔ)器和I/O端口的讀/寫信號(hào)及對(duì)鎖存器8282和總線收發(fā)器8286的

26、控制信號(hào)。最大模式總線形成8288引腳如圖所示。圖2.11 8288與8086CPU的連接圖最大模式總線形成從圖中可以看到,8288接收時(shí)鐘發(fā)生器的CLK信號(hào),這使得8288與CPU及系統(tǒng)中的其它部件同步。8288的 2,1,0和CPU的 2,1,0信號(hào)直接相連,接收CPU這三個(gè)引腳提供的狀態(tài)信息,由此來確定當(dāng)前CPU要執(zhí)行哪種操作,從而發(fā)出相應(yīng)的命令信號(hào)。 最大模式總線形成狀態(tài)信號(hào)和命令信號(hào)之間的對(duì)應(yīng)關(guān)系見表2-5所示。 :中斷響應(yīng)信號(hào),送往發(fā)出中斷請(qǐng)求的接口,與最小模式下由CPU直接發(fā)出的中斷響應(yīng)信號(hào) 相同。 :I/O端口讀命令。此命令有效時(shí),將所選中的端口中的數(shù)據(jù)讀到數(shù)據(jù)總線上。它相當(dāng)于

27、最小模式系統(tǒng)中由CPU發(fā)出的控制信號(hào) 有效和 為低電平的組合。最大模式總線形成 :I/O端口寫命令。此命令有效時(shí),把數(shù)據(jù)總線上的數(shù)據(jù)寫入被選中的端口中。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號(hào) 有效和 為低電平的組合。 :存儲(chǔ)器讀命令。此命令有效時(shí),被選中的存儲(chǔ)單元把數(shù)據(jù)送到數(shù)據(jù)總線。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號(hào) 有效和 為高電平的組合。 :存儲(chǔ)器寫命令。此命令有效時(shí),把數(shù)據(jù)總線上的數(shù)據(jù)寫入被選中的存儲(chǔ)單元中。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的控制信號(hào) 有效和 為高電平的組合。 最大模式總線形成 :提前的存儲(chǔ)器寫命令。其功能與 一樣,只是提前一個(gè)時(shí)鐘周期輸出。 :提前的I

28、/O端口寫命令, 其功能與 一樣,只是提前一個(gè)時(shí)鐘周期輸出。 8288除了根據(jù)CPU送來的狀態(tài)信號(hào)發(fā)出相應(yīng)的命令信號(hào)外,還發(fā)出控制輸出信號(hào),8288總線控制器發(fā)出的控制信號(hào)有ALE、DEN、 和 。 ALE:地址鎖存允許信號(hào)。它的功能相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的ALE。最大模式總線形成 DEN:數(shù)據(jù)總線允許信號(hào)。此信號(hào)經(jīng)反相器接數(shù)據(jù)收發(fā)器8286的端。當(dāng)DEN有效時(shí),數(shù)據(jù)收發(fā)器把局部數(shù)據(jù)總線和系統(tǒng)數(shù)據(jù)總線連接起來。形成一個(gè)傳輸數(shù)據(jù)的通路;當(dāng)DEN 無效時(shí),數(shù)據(jù)收發(fā)器使局部數(shù)據(jù)總線與系統(tǒng)數(shù)據(jù)總線斷開。它相當(dāng)于最小模式系統(tǒng)中由CPU發(fā)出的信號(hào),其差別只是高電平有效。 :數(shù)據(jù)收發(fā)信號(hào)。它的功能

29、相當(dāng)于最小模式系統(tǒng)中由 CPU發(fā)出的信號(hào)。 :主級(jí)連允許/外設(shè)數(shù)據(jù)允許信號(hào)。此功能取決 于8288的輸入控制信號(hào)IOB(I/O總線方式)。最大模式總線形成8086 CPU最小方式下的主要操作存儲(chǔ)器讀/寫I/O端口讀/寫中斷響應(yīng)總線請(qǐng)求/允許 復(fù)位 5.4 8086 CPU最小模式下的總線時(shí)序1. 總線讀操作 當(dāng)8086 CPU進(jìn)行存儲(chǔ)器或I/O端口讀操作時(shí),總線進(jìn)入讀周期,8086的讀周期時(shí)序如圖所示。8086 CPU最小模式下的總線時(shí)序存儲(chǔ)器讀總線周期T4T3T2T1ALECLKA19/S6 A16/S3A15 A8AD7 AD0A15 A8A7 A0輸入數(shù)據(jù)A19 A16S6 S3READ

30、Y(高電平)IO/M*RD*T1狀態(tài)輸出20位存儲(chǔ)器地址A19 A0IO/M*輸出低電平,表示存儲(chǔ)器操作;ALE輸出正脈沖,表示復(fù)用總線輸出地址T2狀態(tài)輸出控制信號(hào)RD*T3和Tw狀態(tài)檢測(cè)數(shù)據(jù)傳送是否能夠完成T4狀態(tài)前沿讀取數(shù)據(jù),完成數(shù)據(jù)傳送I/O讀總線周期T4T3T2T1ALECLKA19/S6 A16/S3A15 A8AD7 AD0A15 A8A7 A0輸入數(shù)據(jù)S6 S3READY(高電平)IO/M*RD*0000T1狀態(tài)輸出16位I/O地址A15 A0IO/M*輸出高電平,表示I/O操作;ALE輸出正脈沖,表示復(fù)用總線輸出地址T2狀態(tài)輸出控制信號(hào)RD*T3和Tw狀態(tài)檢測(cè)數(shù)據(jù)傳送是否能夠完

31、成T4狀態(tài)前沿讀取數(shù)據(jù),完成數(shù)據(jù)傳送基本的讀周期由4個(gè)T周期組成T1狀態(tài):8086從分時(shí)復(fù)用線AD15AD0和A19/S6A16/S3輸出讀目標(biāo)的地址T2狀態(tài):高四位地址線上的地址信號(hào)消失,出現(xiàn)S6S3狀態(tài)信號(hào),保持到讀周期結(jié)束T3狀態(tài):存儲(chǔ)器或I/O端口的數(shù)據(jù)送數(shù)據(jù)總線,在T3狀態(tài)結(jié)束時(shí),CPU開始從數(shù)據(jù)總線讀取數(shù)據(jù);如果存儲(chǔ)器或I/O端口的數(shù)據(jù)來不及送數(shù)據(jù)總線,則在T3和T4狀態(tài)之間插入Tw。8086 CPU最小模式下的總線時(shí)序 Tw狀態(tài):所有控制信號(hào)的電平與T3狀態(tài)相同,直到最后一個(gè)Tw狀態(tài),數(shù)據(jù)才送上數(shù)據(jù)總線。T4狀態(tài):在讀周期中,T4狀態(tài)和前一個(gè)狀態(tài)的交界的下降沿處,CPU將數(shù)據(jù)總線

32、上出現(xiàn)的穩(wěn)定數(shù)據(jù)讀入其內(nèi)部,將數(shù)據(jù)從數(shù)據(jù)總線上撤銷。8086 CPU最小模式下的總線時(shí)序2. 總線寫操作 總線寫操作是指CPU把數(shù)據(jù)輸出到存儲(chǔ)器或I/O端口的操作,8086最小模式下的總線寫操作時(shí)序如圖所示。8086 CPU最小模式下的總線時(shí)序存儲(chǔ)器寫總線周期T4T3T2T1ALECLKA19/S6 A16/S3A15 A8AD7 AD0A15 A8A7 A0輸出數(shù)據(jù)A19 A16S6 S3READY(高電平)IO/M*WR*T1狀態(tài)輸出20位存儲(chǔ)器地址A19 A0IO/M*輸出低電平,表示存儲(chǔ)器操作;ALE輸出正脈沖,表示復(fù)用總線輸出地址T2狀態(tài)輸出控制信號(hào)WR*和數(shù)據(jù)D7 D0T3和Tw狀

33、態(tài)檢測(cè)數(shù)據(jù)傳送是否能夠完成T4狀態(tài)完成數(shù)據(jù)傳送I/O寫總線周期T4T3T2T1ALECLKA19/S6 A16/S3A15 A8AD7 AD0A15 A8A7 A0輸出數(shù)據(jù)0000S6 S3READY(高電平)IO/M*WR*T1狀態(tài)輸出16位I/O地址A15 A0IO/M*輸出高電平,表示I/O操作;ALE輸出正脈沖,表示復(fù)用總線輸出地址T2狀態(tài)輸出控制信號(hào)WR*和數(shù)據(jù)D7 D0T3和Tw狀態(tài)檢測(cè)數(shù)據(jù)傳送是否能夠完成T4狀態(tài)完成數(shù)據(jù)傳送 總線寫操作時(shí)序與總線讀操作時(shí)序基本相似,不同點(diǎn)有:(1)CPU不是輸出 信號(hào),而是輸出 信號(hào),表示是寫操作;(2) 在整個(gè)總線周期為高電平,表示本總線周期為

34、寫周期,在接有數(shù)據(jù)總線收發(fā)器的系統(tǒng)中,用來控制數(shù)據(jù)傳輸方向。(3)AD15AD0在T2到T4狀態(tài)輸出數(shù)據(jù),因輸出地址與輸出數(shù)據(jù)為同一方向,勿需像讀周期那樣要高阻態(tài)作緩沖,故T2狀態(tài)無高阻態(tài)。8086 CPU最小模式下的總線時(shí)序3中斷響應(yīng)操作 當(dāng)8086 CPU的INTR引腳上有一有效電平,且標(biāo)志寄存器中IF=1,則8086 CPU在執(zhí)行完當(dāng)前的指令后,響應(yīng)中斷。在響應(yīng)中斷時(shí)CPU執(zhí)行兩個(gè)中斷響應(yīng)周期,如圖所示。8086 CPU最小模式下的總線時(shí)序中斷響應(yīng)周期占用兩個(gè)總線周期。第一個(gè)總線周期,T1狀態(tài)CPU發(fā)出ALE信號(hào),作為地址鎖存信號(hào),T2到T4狀態(tài)信號(hào) 為低電平,通知外設(shè)CPU已接受其中斷請(qǐng)求,同時(shí)使數(shù)據(jù)總線、地址總線浮空,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(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)論