第五章接口電路_第1頁(yè)
第五章接口電路_第2頁(yè)
第五章接口電路_第3頁(yè)
第五章接口電路_第4頁(yè)
第五章接口電路_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第五章接口技術(shù)

I/O接口概述

CPU與外設(shè)數(shù)據(jù)傳送的方式

DMA控制器8237I/O端口1I/O端口2I/O端口3地址譯碼數(shù)據(jù)緩沖控制電路外設(shè)ABDBCBCPU5.1I/O接口概述

介于主機(jī)和外設(shè)之間的一種緩沖電路稱為I/O接口電路1.I/O接口的功能及其組成(1)速度的不匹配。(2)信息格式的不匹配。(3)信息類型與信號(hào)電平的不匹配。(4)時(shí)序的不匹配。2、接口電路的分類和功能接口電路按通用性分為兩類:通用接口和專用接口通用接口:可供多種外部設(shè)備使用的標(biāo)準(zhǔn)接口,目的是使微機(jī)正常工作通用接口通常制造成集成電路芯片,稱為接口芯片。最初的IBM-PC使用了6塊接口芯片:

8284、8288、8255、8259、8237、8253后來(lái)的微機(jī)將這些芯片集成為大規(guī)模集成電路芯片,稱為芯片組。如82430TX芯片組,由兩片芯片組成:北橋:82439TX南橋:82371AB專用接口:為某種用途或某類外設(shè)而專門設(shè)計(jì)的接口電路,目的在于擴(kuò)充微機(jī)系統(tǒng)的功能。專用接口通常制造成接口卡,插在主板總線插槽上使用。通用接口和專用接口的界限并不嚴(yán)格。按照可編程性,接口芯片分成硬布線邏輯接口芯片和可編程接口芯片??删幊探涌谛酒墓δ芸梢杂芍噶顏?lái)控制。2.I/O接口的端口及其尋址方式

一個(gè)I/O接口總要包括若干個(gè)端口,如數(shù)據(jù)端口、命令端口、狀態(tài)端口、方式端口、操作結(jié)果端口、地址索引端口等。I/O端口也必須進(jìn)行編址以便能被主機(jī)訪問(wèn)。在微機(jī)系統(tǒng)中,對(duì)I/O接口的端口編址有兩種方法:端口統(tǒng)一編址和端口獨(dú)立編址。

三、I/O端口的編址方式I/O端口與存儲(chǔ)單元統(tǒng)一編址I/O端口獨(dú)立編址PC系列機(jī)采用I/O端口獨(dú)立編址方式Port65535Port255Port3Port2Port1Port0Port0(16位)Port1(16位)Port0(32位)(1)統(tǒng)一編址把外設(shè)接口與內(nèi)存統(tǒng)一進(jìn)行編址。各占據(jù)統(tǒng)一地址空間的不同部分。優(yōu)點(diǎn)指令統(tǒng)一,靈活;訪問(wèn)控制信號(hào)統(tǒng)一。

缺點(diǎn)內(nèi)存可用地址空間減小FFFFFHEFFFFHF0000H0地址空間(共1MB)內(nèi)存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H

(2)獨(dú)立編址外設(shè)地址空間和內(nèi)存地址空間相互獨(dú)立。優(yōu)點(diǎn):內(nèi)存地址空間不受I/O編址的影響缺點(diǎn):I/O指令功能較弱8086總線A19-A0A9-A0MEMR、MEMWIOR、IOW、AEN存儲(chǔ)器輸入/輸出三、I/O端口的編址方式端口地址是一種重要資源表1.1I/O端口地址分配返回本節(jié)3.I/O端口地址的譯碼(1)固定式端口地址譯碼:所謂固定式端口地址譯碼是指接口中用到的端口地址不能更改。(2)可選式地址譯碼:可選式地址譯碼常用的是開關(guān)式可選端口地址譯碼。使用跳線開關(guān)選擇I/O端口譯碼地址。圖IBM-PC系統(tǒng)板I/O地址譯碼電路地址范圍I/O接口名稱000H~01FHDMA控制器020H~03FH中斷控制器040H~05FH定時(shí)器8253/8254060H~07FH并行接口芯片82550A0H~0BFHNMI屏蔽寄存器080H~09FHDMA頁(yè)面寄存器表

PC/XT機(jī)系統(tǒng)板配置的端口地址圖使用跳線開關(guān)選擇I/O口譯碼地址5.Intel80X86CPU中的端口訪問(wèn)(1)8086/8088采用IN和OUT指令訪問(wèn)端口(2)80286和80386/80486還支持INSB/INSW和OUTSB/OUTSW指令訪問(wèn)端口5.2CPU與外設(shè)數(shù)據(jù)傳送的方式(1)程序傳送方式:在程序控制下進(jìn)行數(shù)據(jù)傳送。(2)中斷處理方式:由I/O設(shè)備主動(dòng)提出服務(wù)請(qǐng)求(即中斷申請(qǐng))。(3)DMA控制方式:DMA即直接存儲(chǔ)器存取??梢詽M足高速I/O設(shè)備與RAM進(jìn)行數(shù)據(jù)傳送的需要(如圖所示)。1、程序直接傳送方式1)無(wú)條件傳送 無(wú)條件:每次進(jìn)行輸入/輸出之前,不需要查詢外設(shè)的狀態(tài)(如,靜態(tài)開關(guān)輸入和LED顯示輸出)。2)有條件傳送又稱查詢式傳送,在每次輸入/輸出之前,先要讀取外設(shè)的狀態(tài),滿足一定的條件才能進(jìn)行一次I/O操作。例:有條件地從輸入口取數(shù) ;設(shè)S_PORT為已定義的狀態(tài)口地址 ;設(shè)D_PORT為已定義的數(shù)據(jù)口地址(a)WAIT:INAL,S_PORT;取狀態(tài)信息 TESTAL,80H;若最高位=1,為滿足條件JZWAIT;不滿足條件,則循環(huán)等待INAL,D_PORT;滿足條件輸入信息

(b)CHECK:INAL,S_PORT;取狀態(tài)信息TESTAL,80H;若最高位=1,為滿足條件JZDONE;不滿足條件,則退出INAL,D_PORT;滿足條件輸入信息DONE:RET(a)(b)CHECKWAIT二、中斷傳送方式使用查詢方式,CPU必須檢測(cè)接口電路的狀態(tài)寄存器,如果設(shè)備未準(zhǔn)備好,CPU就要不斷地查詢,降低了CPU的運(yùn)行效率中斷方式:當(dāng)外設(shè)作好傳送準(zhǔn)備后,主動(dòng)向CPU請(qǐng)求中斷,CPU響應(yīng)中斷后在中斷處理程序中與外設(shè)交換數(shù)據(jù)。若外設(shè)未準(zhǔn)備好,CPU可以執(zhí)行其他程序,提高了CPU的利用率每條指令完成后,CPU均可響應(yīng)中斷,因此當(dāng)設(shè)備準(zhǔn)備好時(shí),可及時(shí)與CPU交換數(shù)據(jù),提高了實(shí)時(shí)性中斷的概念-中斷請(qǐng)求(InterruptRequest)

-中斷響應(yīng)(InterruptAcknowledge)中斷請(qǐng)求INTR中斷請(qǐng)求INTR中斷服務(wù)程序1中斷服務(wù)程序2主程序IRETIRET斷點(diǎn)中斷源使用堆棧保護(hù)斷點(diǎn)3.DMA方式(直接存儲(chǔ)器存取方式)當(dāng)外設(shè)的速度相對(duì)很高,且一次傳送的數(shù)據(jù)量很大時(shí),中斷方式的效率就很低。例如,對(duì)磁盤的讀寫操作,一般的文件都有幾十K,幾百K,甚至幾兆,通過(guò)DMA方式利用專門的接口控制電路,在存儲(chǔ)器與高速的外設(shè)之間進(jìn)行大量的數(shù)據(jù)交換,而不需要CPU的參與。DMA控制器-DMAC,除了具有一般接口的特點(diǎn)外,CPU可以通過(guò)對(duì)DMAC相應(yīng)端口的讀/寫操作來(lái)控制DMA的工作方式;DMAC在得到總線控制權(quán)后,能夠像CPU一樣提供相應(yīng)的控制信號(hào)來(lái)控制系統(tǒng)總線,從而實(shí)現(xiàn)外設(shè)與內(nèi)存之間高速大量的數(shù)據(jù)傳輸。一般接口電路不具備控制總線的能力。典型的DMA傳送流程圖5.3DMA與DMA控制器DMA(DirectMemoryAccess)的概念DMA方式不用處理器干預(yù)完成M與I/O間數(shù)據(jù)傳送。DMA期間系統(tǒng)總線由其它主模塊控制(驅(qū)動(dòng))控制總線的主模塊要提供系統(tǒng)的地址及控制信號(hào)。DMA控制器與處理器配合可實(shí)現(xiàn)系統(tǒng)的DMA功能。3.Intel8237A可編程DMA控制器8237A主從兩面性:作為DMAC,8237A是可控制總線的主模塊。作為I/O芯片,8237A可被處理器讀寫。運(yùn)行時(shí)注意8237A主-從地址的變化。8237A組成說(shuō)明:8237A有四個(gè)獨(dú)立通道:每個(gè)通道有16位地址,16位字節(jié)數(shù)計(jì)數(shù)器,6位模式REG。四個(gè)通道公用控制寄存器,狀態(tài)寄存器,屏蔽寄存器,請(qǐng)求標(biāo)志寄存器及暫存器,各寄存器均為8位。控制REG.8HRQAddr.Temp.16CountTemp.16狀態(tài)REG.8暫存器8HLDARENMODEREG.6REQ1FLAG1MASK

FLAG當(dāng)前ADDR..REG.16基地址REG.16可讀非讀當(dāng)前字節(jié)計(jì)數(shù)器.16基字節(jié)數(shù)REG.16

通道0通道1通道2通道3HOLDHLDACLOCKAEN關(guān)閉CPU地址鎖存器EN#STB鎖存器ADSTBDB7:DB0IO/M#CS#ADDR.譯碼DATASUBA15~A8A7~A0地址總線A3~A0A7~A4IOR#MEMR#IOW#MEMW#READYRESETDREQ0DACK0DREQ1DACK1DREQ2DREQ3DACK2DACK3EOP#DMA與DMA控制器(續(xù))3.Intel8237A可編程DMA控制器框圖(續(xù))8237A組成說(shuō)明:基地址寄存器:放DMA傳送RAM地址初值。當(dāng)前地址寄存器:DMA傳送時(shí)內(nèi)容變化,可讀?;止?jié)數(shù)寄存器:DMA傳送的總字節(jié)數(shù)。當(dāng)前字節(jié)數(shù)寄存器:DMA傳送時(shí)內(nèi)容變化,可讀。3.Intel8237A可編程DMA控制器8237A引線說(shuō)明:DB7-DB0:雙向數(shù)據(jù)總線。8237A為從模塊時(shí)被處理器編程或讀狀態(tài),DB7-DB0作為數(shù)據(jù)線,傳輸數(shù)據(jù)或命令字。8237A為主模塊時(shí)DB7-DB0輸出地址A15-A8,在MM傳送操作時(shí)經(jīng)DB7-DB0,將M數(shù)據(jù)送8237A暫存器。CS#:片選,從模塊時(shí)處理器用來(lái)尋址8237A。IOR#,IOW#:I/O讀寫控制,雙向。8237A在從模塊時(shí)為輸入,在主模塊時(shí)為輸出。AEN,ADSTB輸出:8位地址鎖存允許及選通。在主模塊時(shí)允許外部鎖存器鎖存8237A的高8位地址。MEMR#,MEMW:輸出,存儲(chǔ)器讀寫控制,主模塊時(shí)送存儲(chǔ)器。READY:輸入,準(zhǔn)備就緒,主模塊時(shí)控制總線周期的長(zhǎng)度,與慢速設(shè)備同步。RESET:輸入,復(fù)位信號(hào),復(fù)位時(shí)屏幕寄存器置1,其它寄存器置0。EOP#:雙向。輸出時(shí),表明內(nèi)部通道傳送結(jié)束;輸入時(shí),表明外部強(qiáng)迫DMA傳送停止。DREQ0-DREQ3:I/O設(shè)備DMA請(qǐng)求輸入信號(hào)。DACK0-DACK3:輸出DMA請(qǐng)求的響應(yīng)。HRQ:8237A向處理器發(fā)出的總線請(qǐng)求信號(hào)。HLDA:處理器發(fā)給8237A的總線請(qǐng)求響應(yīng)信號(hào)。地址總線HRQDREQDMACHLDADACK總線請(qǐng)求總線響應(yīng)

HOLDHLDACPUDMA請(qǐng)求DMA響應(yīng)I/O設(shè)備控制總線數(shù)據(jù)總線2.DMA系統(tǒng)組成及工作過(guò)程2.

DMA系統(tǒng)組成及工作過(guò)程?DMA工作過(guò)程

I/O向DMACDMAC向CPU響應(yīng)DMAC向發(fā)請(qǐng)求CPU發(fā)請(qǐng)求DMAC請(qǐng)求I/O發(fā)響應(yīng)DMA傳送結(jié)束DMA傳送進(jìn)行DMAC發(fā)出控制信號(hào)DMAC發(fā)出內(nèi)存地址3.DMA的四種傳送方式:⑴單字節(jié)傳送方式⑵數(shù)據(jù)塊傳送方式⑶請(qǐng)求傳送方式⑷級(jí)連方式字節(jié)傳送允許DMA

DMA請(qǐng)求?DMAC發(fā)BUS請(qǐng)求CPU響應(yīng)DMA放棄BUSDMAC控制傳一個(gè)字節(jié)

塊結(jié)束否?放棄總線中斷請(qǐng)求NDMA放總線NY

Y?DMA傳送方式允許DMADMA請(qǐng)求?DMAC發(fā)BUS請(qǐng)求CPU響應(yīng)DMA放棄BUSDMAC控制傳一個(gè)字節(jié)塊結(jié)束否?放總線中斷請(qǐng)求DMA請(qǐng)求?NYYN塊傳送?DMA傳送方式隨機(jī)請(qǐng)求DEMANDREQUEST允許DMADMA請(qǐng)求?DMAC發(fā)出BUS請(qǐng)求CPU響應(yīng)DMA放棄總線DMAC控制傳一個(gè)字節(jié)塊結(jié)束否?放總線中斷請(qǐng)求YDMA請(qǐng)求?Y放總線NNY?DMA傳送方式通道REGISTER操作CS#10R#10W#A3A2A1A0內(nèi)F/FDB0~DB7000

1111基/現(xiàn)行地址基/現(xiàn)行字計(jì)數(shù)現(xiàn)行地址現(xiàn)行字計(jì)數(shù)基/現(xiàn)行地址現(xiàn)行地址基/現(xiàn)行字計(jì)數(shù)現(xiàn)行字計(jì)數(shù)寫寫寫寫讀讀讀讀

010010001001

010010

0010010100100010010010010100100000000000000000000100010001000100100010001000100011001100110011

0101010101010101

A0~A7A8~A15A0~A7A8~A15W0~W7W8~W15W0~W7W8~W15W0~W7W8~W15W0~W7W8~W15A0~A7A8~A15A0~A7A8~A158237A字計(jì)數(shù)器與地址寄存器端口號(hào)與對(duì)應(yīng)操作(1)8237A編程地址、字計(jì)數(shù)器端口分配08237A字計(jì)數(shù)器與地址寄存器端口號(hào)與對(duì)應(yīng)操作(2)通道REGISTER操作CS#10R#10W#A3A2A1A0內(nèi)F/FDB0~DB7223333基/現(xiàn)行地址基/現(xiàn)行字計(jì)數(shù)現(xiàn)行地址現(xiàn)行字計(jì)數(shù)基/現(xiàn)行地址現(xiàn)行地址基/現(xiàn)行字計(jì)數(shù)現(xiàn)行字計(jì)數(shù)寫寫寫寫讀讀讀讀

010010001001

010010

0010010100100010010010010100100100010001000100010101010101010101100110011001100111011101110111

0101010101010101

A0~A7A8~A15A0~A7A8~A15W0~W7W8~W15W0~W7W8~W15W0~W7W8~W15W0~W7W8~W15A0~A7A8~A15A0~A7A8~A1522

操作命令與端口號(hào)對(duì)應(yīng)關(guān)系表A3A2A1A0IOR#IOW#操作十六進(jìn)制100001讀狀態(tài)REG.8100010寫命令/控制REG.100101非法9100110寫DMA請(qǐng)求標(biāo)志REG.

101001非法A101010寫屏蔽標(biāo)志REG.101101非法B101110寫模式REG.110001非法C110010清除字節(jié)指針F/F

110101讀暫存器D110110復(fù)位(總清)

111001非法E111010清除/屏蔽標(biāo)志REG.111101非法F111110寫所有屏蔽REG單一位三個(gè)軟件命令不依賴DB上數(shù)據(jù)所有位

8237A模式REG.格式(寫B(tài)號(hào)):工作方式設(shè)定

D7D6D5D4D3D2D1D0模式選擇隨機(jī)請(qǐng)求傳輸模式00單字節(jié)傳輸模式001111非傳輸模式級(jí)聯(lián)傳輸模式地址增量選擇地址加10地址減11自動(dòng)預(yù)置功能選擇禁止0

允許1

通道選擇

0選0#Channel

0011101選1#Channel選2#Channel選3#Channel傳輸類型選擇

00校驗(yàn)傳輸001111

XX寫傳輸

讀傳輸非法D7D6=11

8237A控制/命令REG.格式(寫8號(hào)):硬件設(shè)置與運(yùn)行控制MEM.傳輸

D7D6D5D4D3D2D1D0DACK有效電平低電平有效0高電平有效101DREQ有效電平高電平有效擴(kuò)展寫

MEM.011001

Enable8237A低電平有效不擴(kuò)展寫0擴(kuò)展寫1D3=1

X優(yōu)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論