第19講第6章輸入輸出接口技術(shù)_第1頁(yè)
第19講第6章輸入輸出接口技術(shù)_第2頁(yè)
第19講第6章輸入輸出接口技術(shù)_第3頁(yè)
第19講第6章輸入輸出接口技術(shù)_第4頁(yè)
第19講第6章輸入輸出接口技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩60頁(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)介

1、第第6章章 第6章 輸入輸出接 口 2nCPU與接口之間傳送信息的方式n總線技術(shù)第6章 輸入輸出接 口 3n重重點(diǎn)點(diǎn):n掌握同步掌握同步,異步的異步的I/O傳輸硬件設(shè)計(jì)傳輸硬件設(shè)計(jì)n掌握程序控制方式的接口軟件設(shè)計(jì)掌握程序控制方式的接口軟件設(shè)計(jì)n難難點(diǎn)點(diǎn):n 接口電路及軟件設(shè)計(jì)的配合接口電路及軟件設(shè)計(jì)的配合第6章 輸入輸出接 口 4n6.4 CPU與外部數(shù)據(jù)傳輸?shù)姆绞絥6.5 總線技術(shù)第6章 輸入輸出接 口 56.4.1 概述概述 CPU與外設(shè)交換的數(shù)據(jù)信息從廣義上來(lái)講包括數(shù)據(jù)信息、狀態(tài)信息、控制與外設(shè)交換的數(shù)據(jù)信息從廣義上來(lái)講包括數(shù)據(jù)信息、狀態(tài)信息、控制信息。這三者都用信息。這三者都用IN和和

2、OUT指令來(lái)傳送的,只不過(guò)是分別送入不同的部指令來(lái)傳送的,只不過(guò)是分別送入不同的部件,起不同的作用。件,起不同的作用。 數(shù)據(jù)信息:數(shù)據(jù)信息:是是I/O設(shè)備和設(shè)備和CPU真正要交換的信息。外設(shè)和接口之間的真正要交換的信息。外設(shè)和接口之間的數(shù)據(jù)信息可以是串行的,也可以是并行的,相應(yīng)的要使用串行接口或并數(shù)據(jù)信息可以是串行的,也可以是并行的,相應(yīng)的要使用串行接口或并行接口。不同的行接口。不同的I/O設(shè)備要求傳送的數(shù)據(jù)類型也是不同的,例如向顯示器設(shè)備要求傳送的數(shù)據(jù)類型也是不同的,例如向顯示器傳送的數(shù)據(jù)必須是傳送的數(shù)據(jù)必須是ASC碼,而不能是二進(jìn)制形式的數(shù)。數(shù)字量、開關(guān)碼,而不能是二進(jìn)制形式的數(shù)。數(shù)字量、

3、開關(guān)量、模擬量。量、模擬量。 狀態(tài)信息狀態(tài)信息:從從I/O接口輸入到接口輸入到CPU,表示,表示I/O設(shè)備當(dāng)前所處的狀態(tài)。對(duì)設(shè)備當(dāng)前所處的狀態(tài)。對(duì)于輸入設(shè)備,通常用準(zhǔn)備好(于輸入設(shè)備,通常用準(zhǔn)備好(READY)信號(hào)來(lái)表示外設(shè)已準(zhǔn)備好輸入數(shù))信號(hào)來(lái)表示外設(shè)已準(zhǔn)備好輸入數(shù)據(jù)。對(duì)于輸出設(shè)備,通常用忙(據(jù)。對(duì)于輸出設(shè)備,通常用忙(BUSY)信號(hào)表示設(shè)備是否處于空閑狀)信號(hào)表示設(shè)備是否處于空閑狀態(tài),如為空閑狀態(tài),外設(shè)則接收態(tài),如為空閑狀態(tài),外設(shè)則接收CPU送來(lái)的信息,如為忙狀態(tài),送來(lái)的信息,如為忙狀態(tài),CPU則則要等待。要等待。 控制信息控制信息:輸出到輸出到I/O接口,通知接口和設(shè)備要做什么動(dòng)作。例如

4、,接口,通知接口和設(shè)備要做什么動(dòng)作。例如,CPU向向I/O接口發(fā)出啟動(dòng)信號(hào)或停止信號(hào)以控制外設(shè)的啟停。接口發(fā)出啟動(dòng)信號(hào)或停止信號(hào)以控制外設(shè)的啟停。第6章 輸入輸出接 口 6例子假設(shè)幼兒園一個(gè)阿姨帶假設(shè)幼兒園一個(gè)阿姨帶10個(gè)孩子,要給每個(gè)孩子分個(gè)孩子,要給每個(gè)孩子分4塊水果塊水果糖。要求孩子們把糖。要求孩子們把4塊糖都吃完,那么她采用什么方法呢塊糖都吃完,那么她采用什么方法呢? 方法方法1: 她先給孩子甲一塊糖,盯著甲吃完,然后再給第二塊,等她先給孩子甲一塊糖,盯著甲吃完,然后再給第二塊,等吃完第二塊又給第三吃完第二塊又給第三 塊,吃完第三塊又給第四塊。接著給孩子塊,吃完第三塊又給第四塊。接著給

5、孩子乙,其過(guò)程與孩子甲完全一樣。依次類推,直至到乙,其過(guò)程與孩子甲完全一樣。依次類推,直至到 第第10個(gè)孩子個(gè)孩子發(fā)完四塊糖??磥?lái)這種方法效率太低,重要之點(diǎn)還在于孩子們發(fā)完四塊糖??磥?lái)這種方法效率太低,重要之點(diǎn)還在于孩子們吃糖時(shí)她一直在守吃糖時(shí)她一直在守 候,什么事也不能干。候,什么事也不能干。6.4 CPU與外設(shè)之間的數(shù)據(jù)傳送方式與外設(shè)之間的數(shù)據(jù)傳送方式第6章 輸入輸出接 口 7方法方法2: 每人發(fā)一塊糖各自去吃,并約定誰(shuí)吃完后就每人發(fā)一塊糖各自去吃,并約定誰(shuí)吃完后就 向她舉手報(bào)向她舉手報(bào)告,再發(fā)第二塊??磥?lái)這種新方法提高了工作效率,而且在未告,再發(fā)第二塊??磥?lái)這種新方法提高了工作效率,而且

6、在未接到孩子們吃完糖接到孩子們吃完糖 的的 報(bào)告以前,她還可以騰出時(shí)間給孩子們改報(bào)告以前,她還可以騰出時(shí)間給孩子們改作業(yè)。但是這種方法還可以改進(jìn)。作業(yè)。但是這種方法還可以改進(jìn)。方法方法3: 進(jìn)行批處理:每人拿進(jìn)行批處理:每人拿4塊糖各自去吃,吃完塊糖各自去吃,吃完4塊糖后再向她塊糖后再向她報(bào)告。顯然這種方法工作報(bào)告。顯然這種方法工作 效率大大提高,她可以騰出更多的時(shí)效率大大提高,她可以騰出更多的時(shí)間改作業(yè)。間改作業(yè)。方法方法4: 權(quán)力下放,把發(fā)糖的事交給另一個(gè)人分管,只是必要時(shí)她權(quán)力下放,把發(fā)糖的事交給另一個(gè)人分管,只是必要時(shí)她才過(guò)問一下。才過(guò)問一下。6.4 CPU與外設(shè)之間的數(shù)據(jù)傳送方式與外

7、設(shè)之間的數(shù)據(jù)傳送方式第6章 輸入輸出接 口 86.4.2 CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式 無(wú)條件傳送無(wú)條件傳送 程序方式程序方式 查詢方式(條件傳送)查詢方式(條件傳送) 中斷方式中斷方式 存儲(chǔ)器直接存取方式(存儲(chǔ)器直接存取方式(DMA方式)方式).這是本這是本章要講章要講的內(nèi)容的內(nèi)容在第九章在第九章詳細(xì)講詳細(xì)講了解即了解即可,不可,不作要求作要求第6章 輸入輸出接 口 96.4.2CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式(1 1)程序方式(a)無(wú)條件傳送)無(wú)條件傳送 在該方式中,外設(shè)總被任為已處于準(zhǔn)備就緒和準(zhǔn)備接收狀態(tài),在該方式中,外設(shè)總被任為已處于準(zhǔn)備

8、就緒和準(zhǔn)備接收狀態(tài),程序不必查驗(yàn)外設(shè)的狀態(tài)程序不必查驗(yàn)外設(shè)的狀態(tài) 當(dāng)需要與之交換數(shù)據(jù)時(shí),直接執(zhí)行輸入輸出指令,就開始接收和當(dāng)需要與之交換數(shù)據(jù)時(shí),直接執(zhí)行輸入輸出指令,就開始接收和發(fā)送數(shù)據(jù)。發(fā)送數(shù)據(jù)。第6章 輸入輸出接 口 10OOOOO+5VK與非與非與非與非或或&D0A0A7A8A15IOR.三態(tài)緩沖器三態(tài)緩沖器MOVDX,0FFF7HINAL,DXTESTAL,01JZ.D0=0K閉合閉合,D0=1K打開打開A2A3A4.O例例1:無(wú)條件輸入(如下圖所示)無(wú)條件輸入(如下圖所示)第6章 輸入輸出接 口 11 D0D7A0A7A8A15.IOWOOOO+5V+5VD0D7CPO0O7

9、74LS273(8D觸發(fā)器觸發(fā)器鎖存功能)鎖存功能)鎖存鎖存輸出輸出MOVAL,81HMOVDX,0000HOUTDX,AL第6章 輸入輸出接 口 12K7K1K0+5VD0D7A0A15CLKLS06反相反相驅(qū)動(dòng)器驅(qū)動(dòng)器LS2738D鎖存器鎖存器LS244三態(tài)三態(tài)緩沖器緩沖器8000H譯碼譯碼+5VLED0LED7GIOWIORDisp:push axpush dxmov dx,8000h;DX指向數(shù)據(jù)端口指向數(shù)據(jù)端口in al,dx;從輸入端口讀開關(guān)狀態(tài)從輸入端口讀開關(guān)狀態(tài)not al;反相反相out dx,al;送輸出端口顯示送輸出端口顯示pop dxpop axret第6章 輸入輸出接

10、 口 13根據(jù)開關(guān)狀態(tài)在根據(jù)開關(guān)狀態(tài)在7段數(shù)碼管上顯示數(shù)字或符號(hào)段數(shù)碼管上顯示數(shù)字或符號(hào)共陰極共陰極7段數(shù)碼管結(jié)構(gòu)段數(shù)碼管結(jié)構(gòu)用用74LS273作為輸出接口,把數(shù)據(jù)送到作為輸出接口,把數(shù)據(jù)送到7段數(shù)碼管段數(shù)碼管74LS273的地址假設(shè)為的地址假設(shè)為F0H用用74LS244作為輸入口,讀入開關(guān)作為輸入口,讀入開關(guān)K0K3的狀態(tài)的狀態(tài)74LS244的地址假設(shè)為的地址假設(shè)為F1H4.當(dāng)開關(guān)的狀態(tài)分別為當(dāng)開關(guān)的狀態(tài)分別為00001111時(shí),在時(shí),在7段數(shù)碼管上對(duì)段數(shù)碼管上對(duì)應(yīng)顯示應(yīng)顯示0F簡(jiǎn)單的簡(jiǎn)單的I/OI/O接口接口舉例:舉例:第6章 輸入輸出接 口 14O1 I1O2 I2O3 I3O4 I4E

11、1# K0K3+5VGG2AG2BCBA1174LS244D0 Q0 | Q1D7 Q2 Q3 Q4CP Q5 Q6 Q7 abcdefgDP7406反相反相器器74LS273Rx81174LS138D0D7IOW#IOR#Y0Y1&1A7A4A15A8A3A2A1A0D0D1D2D3譯碼譯碼器器F0H=0000 0000 1111 0000F1H=0000 0000 1111 0001第6章 輸入輸出接 口 15符號(hào)形狀7段碼.gfedcba符號(hào)形狀7段碼.gfedcba000111111801111111100000110901100111201011011A01110111301

12、001111B01111100401100110C00111001501101101D01011110601111101E01111001700000111F01110001第6章 輸入輸出接 口 16相應(yīng)程序段如下:相應(yīng)程序段如下:Seg7 DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,67H,77H,7CH,39H,5EH,79H,71HLEA BX,Seg7;??;取7段碼表基地址段碼表基地址MOVAH,0第6章 輸入輸出接 口 17GO:MOV DX,0F1H;開關(guān)接口的地址為;開關(guān)接口的地址為F1HINAL,DX;讀入開關(guān)狀態(tài);讀入開關(guān)狀態(tài)ANDAL,0

13、FH;保留低;保留低4位位MOV SI,AX;作為;作為7段碼表的表內(nèi)位移量段碼表的表內(nèi)位移量MOV AL,BX+SI;??;取7段碼段碼MOV DX,0F0H;7段數(shù)碼管接口的地址為段數(shù)碼管接口的地址為F0HOUTDX,ALJMPGO第6章 輸入輸出接 口 18 三態(tài)緩沖器三態(tài)緩沖器地址地址譯碼器譯碼器O&OOO地址總線地址總線M/IORD去去CPU數(shù)據(jù)數(shù)據(jù)(來(lái)自外設(shè)來(lái)自外設(shè))輸入加三態(tài)緩沖器輸入加三態(tài)緩沖器鎖存器鎖存器地址地址譯碼器譯碼器OOOO數(shù)據(jù)總線數(shù)據(jù)總線數(shù)據(jù)數(shù)據(jù)(來(lái)自來(lái)自CPU)地址總線地址總線M/IOWR到外設(shè)去到外設(shè)去輸出加鎖存器輸出加鎖存器&程序設(shè)計(jì)簡(jiǎn)單、數(shù)據(jù)傳

14、程序設(shè)計(jì)簡(jiǎn)單、數(shù)據(jù)傳送不能太頻繁、針對(duì)一送不能太頻繁、針對(duì)一些簡(jiǎn)單的外設(shè)操作些簡(jiǎn)單的外設(shè)操作第6章 輸入輸出接 口 19查詢方式輸入過(guò)程的流程圖查詢方式輸入過(guò)程的流程圖 開始開始初始化初始化數(shù)據(jù)是否數(shù)據(jù)是否準(zhǔn)備好?準(zhǔn)備好?輸入一個(gè)字節(jié)輸入一個(gè)字節(jié)到到CPU數(shù)據(jù)處理并送數(shù)據(jù)處理并送內(nèi)存緩沖區(qū)內(nèi)存緩沖區(qū)否否是是第6章 輸入輸出接 口 20IOR+5V8D鎖存器鎖存器8位位三態(tài)三態(tài)緩沖器緩沖器譯碼譯碼1位位三態(tài)三態(tài)緩沖器緩沖器RQA0A158000H8001HD0D7D0D輸入輸入設(shè)備設(shè)備IORSTB外設(shè)準(zhǔn)備好信號(hào)外設(shè)準(zhǔn)備好信號(hào),兩個(gè)作用兩個(gè)作用讀數(shù)據(jù)之前一定要確定外設(shè)讀數(shù)據(jù)之前一定要確定外設(shè)是否準(zhǔn)

15、備好。是否準(zhǔn)備好。READY第6章 輸入輸出接 口 21n發(fā)出一個(gè)選通信號(hào)發(fā)出一個(gè)選通信號(hào),一面把數(shù)據(jù)鎖存起來(lái)一面把數(shù)據(jù)鎖存起來(lái),一面送一面送D觸發(fā)觸發(fā)器的器的CLK端端,將將D=1打入打入Q端端,使使Q=1;CPU讀入狀態(tài)信讀入狀態(tài)信息息READY;當(dāng);當(dāng)READY=1,輸入數(shù)據(jù);讀入數(shù)據(jù)同時(shí)輸入數(shù)據(jù);讀入數(shù)據(jù)同時(shí),將狀態(tài)信號(hào)清零將狀態(tài)信號(hào)清零。mov dx,8000h;DX指向狀態(tài)端口status:in al,dx;讀狀態(tài)端口test al,01h;測(cè)試標(biāo)志位D0jz status;D00,未就緒,繼續(xù)查詢inc dx;D01,就緒,DX指向數(shù)據(jù)端口in al,dx;從數(shù)據(jù)端口輸入數(shù)據(jù)第6

16、章 輸入輸出接 口 228D鎖存器鎖存器譯碼譯碼1位位三態(tài)三態(tài)緩沖器緩沖器RQA0A158000H8001HD0D7D7D+5V輸出輸出設(shè)備設(shè)備ACKIOWIOR寫數(shù)據(jù)之前一定要確定外設(shè)寫數(shù)據(jù)之前一定要確定外設(shè)是否準(zhǔn)備好。是否準(zhǔn)備好。BUSY第6章 輸入輸出接 口 23n當(dāng)輸出裝置輸出數(shù)據(jù)后當(dāng)輸出裝置輸出數(shù)據(jù)后,發(fā)發(fā)ACK信號(hào)信號(hào),將將D觸發(fā)器置觸發(fā)器置0,即即BUSY=0nCPU查詢查詢BYSY,若為若為0,轉(zhuǎn)入轉(zhuǎn)入,否否,繼續(xù)查繼續(xù)查n執(zhí)行輸出指令執(zhí)行輸出指令,把數(shù)據(jù)送至鎖存器把數(shù)據(jù)送至鎖存器n同時(shí)令同時(shí)令D觸發(fā)器置觸發(fā)器置1,它一方面告知外設(shè)它一方面告知外設(shè), 數(shù)據(jù)已準(zhǔn)備好數(shù)據(jù)已準(zhǔn)備好,

17、另一方面讓另一方面讓BUSY=1,阻止阻止CPU輸出新的數(shù)據(jù)輸出新的數(shù)據(jù)mov dx,8000h ;DX指向狀態(tài)端口指向狀態(tài)端口status: in al,dx;讀取狀態(tài)端口的狀態(tài)數(shù)據(jù)讀取狀態(tài)端口的狀態(tài)數(shù)據(jù)test al,80h;測(cè)試標(biāo)志位測(cè)試標(biāo)志位D7jnz status;D71,未就緒,繼續(xù)查詢,未就緒,繼續(xù)查詢inc dx;D70,就緒,就緒,DX指向數(shù)據(jù)端口指向數(shù)據(jù)端口mov al,buf;變量變量buf送送ALout dx,al;將數(shù)據(jù)輸出給數(shù)據(jù)端口將數(shù)據(jù)輸出給數(shù)據(jù)端口第6章 輸入輸出接 口 24查詢方式的步驟查詢方式的步驟(1)CPU從接口(狀態(tài)口)中讀取狀態(tài)字從接口(狀態(tài)口)中讀

18、取狀態(tài)字(2)CPU檢測(cè)狀態(tài)字,滿足條件,檢測(cè)狀態(tài)字,滿足條件,CPU從數(shù)據(jù)口輸入從數(shù)據(jù)口輸入 (輸出)數(shù)據(jù)(輸出)數(shù)據(jù)(3)不滿足條件,)不滿足條件,CPU重新讀取狀態(tài)字重新讀取狀態(tài)字(4)輸入數(shù)據(jù)查外設(shè)是否)輸入數(shù)據(jù)查外設(shè)是否“準(zhǔn)備就緒準(zhǔn)備就緒 ”。 輸出數(shù)據(jù)時(shí)查外設(shè)是否處于輸出數(shù)據(jù)時(shí)查外設(shè)是否處于“忙忙”或或“空閑空閑”查詢方式優(yōu)點(diǎn):硬件接口簡(jiǎn)單,便于程序控制查詢方式優(yōu)點(diǎn):硬件接口簡(jiǎn)單,便于程序控制缺點(diǎn):效率低缺點(diǎn):效率低第6章 輸入輸出接 口 25DMA方式即直接存儲(chǔ)器存?。ǚ绞郊粗苯哟鎯?chǔ)器存?。―irect Memory Access)方式,也稱為成組數(shù)據(jù)傳送方式方式,也稱為成組數(shù)據(jù)

19、傳送方式。DMA控制器:控制器:一般包括四個(gè)寄存器:控制寄存器,狀態(tài)寄存器,一般包括四個(gè)寄存器:控制寄存器,狀態(tài)寄存器,地址寄存器和字節(jié)計(jì)數(shù)器,這些寄存器在信息傳送之前應(yīng)進(jìn)地址寄存器和字節(jié)計(jì)數(shù)器,這些寄存器在信息傳送之前應(yīng)進(jìn)行初始化,即系統(tǒng)程序在地址寄存器中設(shè)置要傳送的數(shù)據(jù)塊行初始化,即系統(tǒng)程序在地址寄存器中設(shè)置要傳送的數(shù)據(jù)塊的首地址,在字節(jié)寄存器中設(shè)置要傳送的數(shù)據(jù)長(zhǎng)度(字節(jié)的首地址,在字節(jié)寄存器中設(shè)置要傳送的數(shù)據(jù)長(zhǎng)度(字節(jié)數(shù)),在狀態(tài)控制寄存器中設(shè)置控制字,指出數(shù)據(jù)是輸入還數(shù)),在狀態(tài)控制寄存器中設(shè)置控制字,指出數(shù)據(jù)是輸入還是輸出,并啟動(dòng)是輸出,并啟動(dòng)DMA操作。每個(gè)字節(jié)傳送后地址寄存器增操

20、作。每個(gè)字節(jié)傳送后地址寄存器增1,字節(jié)計(jì)數(shù)器減字節(jié)計(jì)數(shù)器減1。(2)DMA方式和方式和DMA控制器控制器第6章 輸入輸出接 口 26(a)DMA工作過(guò)程工作過(guò)程(1)外設(shè) DMAC CPU(HOLD = 1 請(qǐng)求占有總線) CPU(HLDA = 1 同意讓出總線) DMAC(2) CPU將地址、數(shù)據(jù)、控制總線的管理權(quán)交DMAC(3) DMAC回答外設(shè)。(4)進(jìn)行DMA傳送。傳送的內(nèi)存地址,字節(jié)數(shù)由DMAC控制。(5)傳送完畢,DMAC交出總線管理權(quán),CPU重新占有總線。DMA請(qǐng)求請(qǐng)求回答6.4.2 CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式(2)DMA方式和方式和DMA控制器控制器

21、第6章 輸入輸出接 口 27HLDA HOLDHLDA HRQCPUDACK DREQDMAC地?cái)?shù)控地?cái)?shù)控M外設(shè)(1)DMA請(qǐng)求(2)總線 請(qǐng)求(3)總線允許(4)DMA回答EOP計(jì)數(shù)結(jié)束DMAC初始化:工作方式地址 基與當(dāng)前寄存器計(jì)數(shù)值 基與當(dāng)前寄存器此時(shí)DMAC是接口(從摸塊)。稱DMAC空閑周期。進(jìn)入DMA方式:DMAC管理總線,此時(shí)DMAC相當(dāng)于CPU(主摸塊)。稱DMAC工作周期數(shù)據(jù) D0 D7 內(nèi)存或反之。6.4.2 CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式第6章 輸入輸出接 口 28(c)缺點(diǎn))缺點(diǎn)(1)DMA期間,期間,CPU不占總線,因而不能做其它工作。不占總線

22、,因而不能做其它工作。(2)CPU對(duì)對(duì)DMAC初始化占有額外時(shí)間。初始化占有額外時(shí)間。(3)增加硬件,提高成本,使電路復(fù)雜。)增加硬件,提高成本,使電路復(fù)雜。 因此對(duì)于數(shù)據(jù)塊短,需頻繁因此對(duì)于數(shù)據(jù)塊短,需頻繁DMAC初始化的場(chǎng)合,對(duì)于初始化的場(chǎng)合,對(duì)于CPU來(lái)得及來(lái)得及處處 理的情理的情 況就不必采用況就不必采用DMA方式。方式。(1)硬盤和軟盤的輸入)硬盤和軟盤的輸入 / 輸出輸出(2)快速通信通道輸入)快速通信通道輸入 / 輸出輸出(3)多處理機(jī)和多程序數(shù)據(jù)塊傳送)多處理機(jī)和多程序數(shù)據(jù)塊傳送(4)掃描操作(圖象顯示)掃描操作(圖象顯示)(5)高速數(shù)據(jù)采集)高速數(shù)據(jù)采集(b)在什么情況下用)

23、在什么情況下用DMA6.4.2 CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式第6章 輸入輸出接 口 29 CPU對(duì)DMA控制器進(jìn)行初始化設(shè)置 外設(shè)、DMAC和CPU三者通過(guò)應(yīng)答信號(hào)建立聯(lián)系:CPU將總線交給DMAC控制 DMA傳送qDMA讀存儲(chǔ)器:存儲(chǔ)器 外設(shè)qDMA寫存儲(chǔ)器:存儲(chǔ)器 外設(shè) 自動(dòng)增減地址和計(jì)數(shù),判斷傳送完成否第6章 輸入輸出接 口 30HLDA發(fā)存儲(chǔ)器地址發(fā)存儲(chǔ)器地址傳送數(shù)據(jù)傳送數(shù)據(jù)傳送結(jié)束?傳送結(jié)束?DMA結(jié)束結(jié)束修改地址指針修改地址指針第6章 輸入輸出接 口 316.4.2 CPU與外設(shè)數(shù)據(jù)傳送的三種方式與外設(shè)數(shù)據(jù)傳送的三種方式(3) 中斷傳送方式中斷傳送方式 實(shí)

24、現(xiàn)方法: 1. 當(dāng)外設(shè)準(zhǔn)備好,向當(dāng)外設(shè)準(zhǔn)備好,向CPU發(fā)出中斷請(qǐng)求發(fā)出中斷請(qǐng)求 2. CPU在滿足響應(yīng)中斷的條件下,發(fā)出中斷響應(yīng)信號(hào);在滿足響應(yīng)中斷的條件下,發(fā)出中斷響應(yīng)信號(hào); 3. CPU暫停當(dāng)前的程序,轉(zhuǎn)暫停當(dāng)前的程序,轉(zhuǎn) 去執(zhí)行中斷服務(wù)程序,去執(zhí)行中斷服務(wù)程序, 完成與外設(shè)的數(shù)據(jù)傳送;完成與外設(shè)的數(shù)據(jù)傳送; 4. CPU從中斷服務(wù)程序返回,繼續(xù)執(zhí)行被中斷的程序從中斷服務(wù)程序返回,繼續(xù)執(zhí)行被中斷的程序第6章 輸入輸出接 口 32中斷服務(wù)程序中斷服務(wù)程序發(fā)申請(qǐng)發(fā)申請(qǐng)中斷服務(wù)程序中斷服務(wù)程序發(fā)申請(qǐng)發(fā)申請(qǐng)中斷方式下中斷方式下CPU執(zhí)行程序流程執(zhí)行程序流程外外設(shè)設(shè)第6章 輸入輸出接 口 33使用中

25、斷方式時(shí)使用中斷方式時(shí): :外設(shè)準(zhǔn)備數(shù)據(jù),外設(shè)準(zhǔn)備數(shù)據(jù),CPUCPU執(zhí)行程序執(zhí)行程序, , CPUCPU與外設(shè)并行工作;與外設(shè)并行工作; 一旦外設(shè)準(zhǔn)備就緒,外設(shè)向一旦外設(shè)準(zhǔn)備就緒,外設(shè)向CPUCPU發(fā)中斷申請(qǐng),發(fā)中斷申請(qǐng), CPUCPU暫停原程序執(zhí)行,響應(yīng)中斷,進(jìn)行數(shù)據(jù)傳輸。暫停原程序執(zhí)行,響應(yīng)中斷,進(jìn)行數(shù)據(jù)傳輸。此時(shí),此時(shí),CPUCPU與外設(shè)是串行工作。與外設(shè)是串行工作。第6章 輸入輸出接 口 34中斷傳送方式的特點(diǎn):中斷傳送方式的特點(diǎn):1. CPU和外設(shè)大部分時(shí)間處在并行工作狀態(tài)和外設(shè)大部分時(shí)間處在并行工作狀態(tài), 只在只在CPU響應(yīng)外設(shè)的中斷申請(qǐng)后,響應(yīng)外設(shè)的中斷申請(qǐng)后, 進(jìn)入數(shù)據(jù)傳送的過(guò)

26、程。進(jìn)入數(shù)據(jù)傳送的過(guò)程。2. 中斷傳送方式提高了中斷傳送方式提高了CPU的效率,實(shí)時(shí)性強(qiáng)。的效率,實(shí)時(shí)性強(qiáng)。第6章 輸入輸出接 口 35n無(wú)條件傳送無(wú)條件傳送:慢速外設(shè)需與:慢速外設(shè)需與CPU保持同步保持同步n查詢傳送查詢傳送: 簡(jiǎn)單實(shí)用,效率較低簡(jiǎn)單實(shí)用,效率較低n中斷傳送中斷傳送:外設(shè)主動(dòng),可與:外設(shè)主動(dòng),可與CPU并行工作,并行工作,但每次傳送需要大量額外時(shí)間開銷但每次傳送需要大量額外時(shí)間開銷 nDMA傳送傳送:DMAC控制,外設(shè)直接和存儲(chǔ)器控制,外設(shè)直接和存儲(chǔ)器進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳送進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳送第6章 輸入輸出接 口 36一、接口技術(shù)的現(xiàn)狀二、接口

27、技術(shù)的發(fā)展趨勢(shì)第6章 輸入輸出接 口 371用簡(jiǎn)單的邏輯電路2用可編程集成接口芯片3用多功能的芯片組第6章 輸入輸出接 口 381.用簡(jiǎn)單的邏輯電路用簡(jiǎn)單的邏輯電路采用簡(jiǎn)單的邏輯部件完成接口電路采用簡(jiǎn)單的邏輯部件完成接口電路特點(diǎn):特點(diǎn):原理清楚,但實(shí)際用得少。原理清楚,但實(shí)際用得少。例例1無(wú)條件輸入接口無(wú)條件輸入接口例例2無(wú)條件輸出接口無(wú)條件輸出接口例例3查詢輸入接口查詢輸入接口例例4查詢輸出接口查詢輸出接口注意:注意:教材中教材中控制信號(hào)采用的是控制信號(hào)采用的是8086CPU工作于最小模式下的信號(hào)工作于最小模式下的信號(hào)講義中講義中控制信號(hào)采用的是控制信號(hào)采用的是IBMPC/XT總線上的信號(hào)總

28、線上的信號(hào)第6章 輸入輸出接 口 39例例 1 無(wú)條件輸入接口無(wú)條件輸入接口三三 態(tài)態(tài)緩沖器緩沖器輸入輸入設(shè)備設(shè)備數(shù)據(jù)數(shù)據(jù)線線IOR地址地址譯碼譯碼地址線地址線200H000D7D0A15A0與與非非PC總總線線注意:注意:在邏輯門前輸入信號(hào)的在邏輯門前輸入信號(hào)的,表示對(duì)信號(hào)求反。,表示對(duì)信號(hào)求反。與鎖存器、三態(tài)門等控制端的意義不同。與鎖存器、三態(tài)門等控制端的意義不同。簡(jiǎn)單的邏輯電路:簡(jiǎn)單的邏輯電路:第6章 輸入輸出接 口 40例例 2 無(wú)條件輸出接口無(wú)條件輸出接口PC總線總線鎖存器鎖存器輸出輸出設(shè)備設(shè)備數(shù)據(jù)線數(shù)據(jù)線IOW地址地址譯碼譯碼地址線地址線300H000D7D0A15A0與與非非簡(jiǎn)單

29、的邏輯電路:簡(jiǎn)單的邏輯電路:第6章 輸入輸出接 口 41例例3 3 查詢輸入接口查詢輸入接口狀態(tài)端口狀態(tài)端口D4=1表示外設(shè)準(zhǔn)備好表示外設(shè)準(zhǔn)備好三三態(tài)態(tài)緩沖器緩沖器輸輸入入設(shè)設(shè)備備數(shù)數(shù) 據(jù)據(jù) 線線2 1 8H數(shù)據(jù)數(shù)據(jù)端口端口地址地址譯碼譯碼地址線地址線狀態(tài)狀態(tài)端口端口地址地址譯碼譯碼鎖鎖存存器器IOR R Q D三三態(tài)態(tài)緩沖器緩沖器+5vD42 1 CHSTBPC總線總線IORA15A0D7D0&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:簡(jiǎn)單的邏輯電路:第6章 輸入輸出接 口 42例例4 查詢輸出接口查詢輸出接口狀態(tài)端口狀態(tài)端口D0=0表示外設(shè)

30、準(zhǔn)備好表示外設(shè)準(zhǔn)備好輸輸出出設(shè)設(shè)備備數(shù)數(shù) 據(jù)據(jù) 線線219H數(shù)據(jù)數(shù)據(jù)端口端口地址地址譯碼譯碼地址線地址線鎖鎖存存器器 RD D Q 三三 態(tài)態(tài)緩沖器緩沖器+5vACKPC總總線線IORA15A0D7D0IOW狀態(tài)狀態(tài)端口端口地址地址譯碼譯碼D021CH&MOVDX,219HOUTDX,ALMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:簡(jiǎn)單的邏輯電路:第6章 輸入輸出接 口 432.用可編程集成接口芯片用可編程集成接口芯片 將完成某一功能的接口電路集成在一個(gè)芯片上, 通過(guò)對(duì)接口芯片編程,設(shè)置接口芯片的工作狀態(tài)。特點(diǎn):1. 體積小、功能強(qiáng)、可靠性高2. 通常是專門為配合微機(jī)系統(tǒng)中的各種

31、適配器設(shè)計(jì), 不必增加或增加很少的電路,就可直接與總線連接, 使用方便。3. 應(yīng)用時(shí),應(yīng)掌握芯片的工作原理、外部特性、編程方法。第6章 輸入輸出接 口 44接口芯片舉例接口芯片舉例:并行接口芯片并行接口芯片8255A、8155A、Z80-PIO串行接口芯片串行接口芯片8251A、8250、Z80-SIO定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器8253、8254、Z80-CTC中斷控制器中斷控制器8259ADMA控制器控制器8237A、Z80-DMA鍵盤控制器鍵盤控制器8279CRT控制器控制器8275、6845硬盤控制器硬盤控制器6843D/A轉(zhuǎn)換器轉(zhuǎn)換器DAC0832A/D轉(zhuǎn)換器轉(zhuǎn)換器ADC0809第6章 輸

32、入輸出接 口 45例例 用可編程并行接口芯片用可編程并行接口芯片8255A做打印機(jī)的接口做打印機(jī)的接口。查詢方式接線圖查詢方式接線圖A0A1CS并行接口并行接口8255A打打印印機(jī)機(jī)PC總線總線A0A1數(shù)數(shù)據(jù)據(jù)線線IORRDWRIOW片選片選譯碼譯碼PA0PA7PC0PC4A2A9數(shù)據(jù)線數(shù)據(jù)線STROBEBUSYD0D7D0D7第6章 輸入輸出接 口 46中斷方式接線圖中斷方式接線圖A0A1CS并行接口并行接口8255A打打印印機(jī)機(jī)PC總線總線A0A1數(shù)數(shù)據(jù)據(jù)線線IORRDWRIOW片選片選譯碼譯碼PA0PA7PC7PC6A2A9數(shù)據(jù)線數(shù)據(jù)線STROBEACKD0D7D0D7PC3IRQ3第6

33、章 輸入輸出接 口 473.用多功能的芯片組用多功能的芯片組 將完成多個(gè)功能的接口電路集成在一個(gè)芯片上, 通過(guò)編程,設(shè)置控制字,改變接口芯片的工作狀態(tài)。例 82206集成外設(shè)控制器,內(nèi)部包含: 2個(gè)8237DMA控制器2個(gè)8259A中斷控制器 1個(gè)8254定時(shí)/計(jì)數(shù)器 1個(gè)MC 146818實(shí)時(shí)時(shí)鐘 以及其他接口芯片特點(diǎn):可靠性更高、功能更強(qiáng)第6章 輸入輸出接 口 48l芯片組是主板的關(guān)鍵部件,通常固定在主板上,芯片組是主板的關(guān)鍵部件,通常固定在主板上,不象不象CPU、內(nèi)存條或其他插卡等可進(jìn)行簡(jiǎn)單的替換和升級(jí)。、內(nèi)存條或其他插卡等可進(jìn)行簡(jiǎn)單的替換和升級(jí)。l芯片組提供主板的核心邏輯,影響主板的性

34、能和功能, 決定主板所支持的CPU 類型、內(nèi)存類型、 總線類型、總線速度等關(guān)鍵技術(shù)配置l將主板上的外圍芯片集成在一組(24片)超大規(guī)模集成芯片上, 構(gòu)成芯片組。第6章 輸入輸出接 口 49第6章 輸入輸出接 口 50550MHzIDE2PentiumIII北橋北橋440BXAGP南橋南橋PIIX4ECMOS&RTCUSB超級(jí)超級(jí)I/OIDE1COM1COM2LPT1550MHzL1CacheL2Cache處理機(jī)總線處理機(jī)總線100MHz100MHzPCI總線總線33MHzPCI插槽插槽ISA插槽插槽硬件實(shí)驗(yàn)箱硬件實(shí)驗(yàn)箱ISA總線總線8MHz內(nèi)存條內(nèi)存條ROMBIOS顯顯示示器器硬盤硬盤

35、光驅(qū)光驅(qū)軟驅(qū)軟驅(qū)鍵盤鼠標(biāo)鍵盤鼠標(biāo)打印機(jī)打印機(jī)MODEM66MHz顯卡顯卡第6章 輸入輸出接 口 51l集成化l多功能化l標(biāo)準(zhǔn)化l智能化第6章 輸入輸出接 口 52一、基本方法二、注意事項(xiàng)第6章 輸入輸出接 口 531. 了解外設(shè)工作原理,明確接口功能,選擇接口芯片2. 設(shè)計(jì)接口與系統(tǒng)的連接3. 分析和設(shè)計(jì)接口程序4. 接口的調(diào)試第6章 輸入輸出接 口 541.了解外設(shè)工作原理,明確接口功能,選擇接口芯片了解外設(shè)工作原理,明確接口功能,選擇接口芯片CPU接接口口作作用用外外設(shè)設(shè)模模/數(shù)數(shù)轉(zhuǎn)轉(zhuǎn)換換( (A/ /D) )數(shù)數(shù)/模模轉(zhuǎn)轉(zhuǎn)換換( (D/ /A) )模模擬擬量量信信息息類類型型數(shù)數(shù)字字量量三三態(tài)態(tài)緩緩沖沖、鎖鎖存存數(shù)數(shù)字字量量工工作作速速度度快快解解決決傳傳送送方方式式慢慢串串/并并轉(zhuǎn)轉(zhuǎn)換換并并/串串轉(zhuǎn)轉(zhuǎn)換換串串行行通通信信方方式式并并行行三三態(tài)態(tài)緩緩沖沖、鎖鎖存存并并行行第6章 輸入輸出接 口 55外外設(shè)設(shè)數(shù)據(jù)線數(shù)據(jù)線接接口口電電路路PC總總線線數(shù)據(jù)線數(shù)據(jù)線片片選選譯譯碼碼高高位位地址線地址線控制線控制線低位地址線低位地址線控制線控制線狀態(tài)線狀態(tài)線CPU輔輔助助電電路路CPU2.設(shè)計(jì)接口與系統(tǒng)的連接設(shè)計(jì)接口與系

溫馨提示

  • 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ù)覽,若沒有圖紙預(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)論