CPU與外設(shè)間的數(shù)據(jù)傳送方式課件_第1頁(yè)
CPU與外設(shè)間的數(shù)據(jù)傳送方式課件_第2頁(yè)
CPU與外設(shè)間的數(shù)據(jù)傳送方式課件_第3頁(yè)
CPU與外設(shè)間的數(shù)據(jù)傳送方式課件_第4頁(yè)
CPU與外設(shè)間的數(shù)據(jù)傳送方式課件_第5頁(yè)
已閱讀5頁(yè),還剩111頁(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)介

第三節(jié)CPU與外設(shè)間的數(shù)據(jù)傳送方式CPU與外設(shè)的工作速度不一致,如何使兩者高效、可靠地進(jìn)行數(shù)據(jù)傳送,是本節(jié)討論的問(wèn)題。1第三節(jié)CPU與外設(shè)間的數(shù)據(jù)傳送方式CPU與外設(shè)的工作速一、無(wú)條件傳送方式二、條件傳送方式(查詢方式)三、中斷傳送方式四、DMA傳送方式

(DirectMemoryAccess)

有以下幾種傳送方式:2一、無(wú)條件傳送方式有以下幾種傳送方式:2概述1。無(wú)條件傳送(CPU與外設(shè)同步工作):外部控制過(guò)程各種動(dòng)作時(shí)間是固定的,而且是已知的。2。查詢方式(CPU與外設(shè)不同步工作):傳送前,先查詢外設(shè)狀態(tài),準(zhǔn)備好才傳送,否則CPU處于等待狀態(tài)。3。中斷方式:

外設(shè)與CPU處于并行工作,一旦外設(shè)準(zhǔn)備好,外設(shè)向CPU發(fā)中斷申請(qǐng),條件具備,CPU暫停原程序執(zhí)行,響應(yīng)中斷,外設(shè)與CPU串行工作。4。DMA方式(高速I/O及成組交換數(shù)據(jù)):CPU不干予,由硬件實(shí)現(xiàn)存儲(chǔ)器與外設(shè)之間交換數(shù)據(jù),稱直接存取存儲(chǔ)器。3概述3一、無(wú)條件傳送方式(同步傳送方式)實(shí)現(xiàn)方法CPU不查詢外設(shè)工作狀態(tài),與外設(shè)速度的匹配通過(guò)在軟件上延時(shí)完成,在程序中直接用I/O指令,完成與外設(shè)的數(shù)據(jù)傳送特點(diǎn)1.適用于外設(shè)動(dòng)作時(shí)間已知,在CPU與外設(shè)進(jìn)行數(shù)據(jù)傳送時(shí),外設(shè)保證已準(zhǔn)備好的情況2.軟硬件十分簡(jiǎn)單。4一、無(wú)條件傳送方式(同步傳送方式)實(shí)現(xiàn)方法4例1

無(wú)條件輸入接口(參看教材圖6-8)接口電路,即硬件上保證:只在CPU執(zhí)行從200H端口輸入數(shù)據(jù)時(shí),三態(tài)門處于工作狀態(tài),使輸入設(shè)備的數(shù)據(jù)送上總線側(cè),而CPU執(zhí)行其它指令時(shí),三態(tài)門均處于高阻狀態(tài),使輸入設(shè)備的數(shù)據(jù)線與總線側(cè)斷開(kāi)三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線IOR地址譯碼地址線

200H000D7~D0A15~A0與非PC總線5例1無(wú)條件輸入接口(參看教材圖6-8)接口電路,即無(wú)條件輸入編程:從端口200H讀入100個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中。、、、MOVAX,SEGbufferMOVDS,AX;取緩沖區(qū)

LEADI,buffer;首地址

MOVCX,100H;傳送個(gè)數(shù)

MOVDX,200H;端口地址

next: ;延時(shí)等待

INAL,DX;讀入數(shù)據(jù) CALLdelay

MOV[DI],AL;送緩沖區(qū)

INCDI;修改指針

LOOPnext、、、;延時(shí)子程delayPROCPUSHCXMOVCX,80Hcc:LOOPccPOPCX

RETdelayENDP6無(wú)條件輸入編程:、、、;延時(shí)子程6例2

無(wú)條件輸出:編程控制系統(tǒng)板上揚(yáng)聲器發(fā)聲。

4765321061H端口

8253與門放大器揚(yáng)聲器01控制其它外設(shè)揚(yáng)聲器控制電路圖:T個(gè)數(shù)發(fā)聲原理:向揚(yáng)聲器發(fā)送一串脈沖信號(hào),推動(dòng)揚(yáng)聲器內(nèi)紙盆振動(dòng),發(fā)出聲音脈沖的頻率,控制音高;脈沖的個(gè)數(shù),控制音長(zhǎng)7例2無(wú)條件輸出:編程控制系統(tǒng)板上揚(yáng)聲器發(fā)聲。1.使61H端口的0位輸出0,控制8253輸出1。2.使61H端口的1位按所需頻率交替輸出0和1,產(chǎn)生所需的聲音。編程方法:

4765321061H端口

8253與門放大器揚(yáng)聲器01控制其它外設(shè)揚(yáng)聲器控制電路圖:81.使61H端口的0位輸出0,控制8253輸出1。編程方法codeSEGMENT

ASSUMECS:codestart:MOVBX,3000H;控制脈沖個(gè)數(shù)MOVDX,6000H;控制脈沖周期

INAL,61H

;讀入61H端口數(shù)據(jù)ANDAL,11111100b;D0為0,8253輸出1sound:XORAL,00000010b

OUT61H,AL

;61H端口的D1交替為0和1

MOVCX,DXdelay:LOOPdelay

;延時(shí)DECBX

;控制脈沖數(shù)JNZsound

MOVAH,4CHINT21HcodeENDS

ENDstart發(fā)聲程序:

61H端口8253與門放大器揚(yáng)聲器01控制其它外設(shè)T個(gè)數(shù)9codeSEGMENT發(fā)聲程序:將發(fā)聲程序改編為一子程:入口參數(shù)BX控制音長(zhǎng)

DX控制音高思考:10將發(fā)聲程序改編為一子程:思考:10二、條件傳送方式(查詢傳送方式)實(shí)現(xiàn)方法:在與外設(shè)進(jìn)行傳送數(shù)據(jù)前,CPU先查詢外設(shè)狀態(tài),當(dāng)外設(shè)準(zhǔn)備好后,才執(zhí)行I/O指令,實(shí)現(xiàn)數(shù)據(jù)傳送特點(diǎn):1.CPU通過(guò)不斷查詢外設(shè)狀態(tài),實(shí)現(xiàn)與外設(shè)的速度匹配2.CPU的工作效率低11二、條件傳送方式(查詢傳送方式)實(shí)現(xiàn)方法:11查詢傳送方式,編程流程:NY從狀態(tài)端口讀入狀態(tài)信息從數(shù)據(jù)端口傳送一個(gè)數(shù)據(jù)外設(shè)準(zhǔn)備好否?12查詢傳送方式,編程流程:NY從狀態(tài)端口讀入狀態(tài)信息從數(shù)據(jù)端例1

查詢方式輸入假設(shè)外設(shè)的狀態(tài)端口為21CH,其中D4=1時(shí),表示外設(shè)數(shù)據(jù)準(zhǔn)備好外設(shè)的數(shù)據(jù)端口為218H。實(shí)現(xiàn)從外設(shè)讀入50H個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中。21CH端口狀態(tài)端口218H端口數(shù)據(jù)端口地址譯碼數(shù)據(jù)緩沖控制電路輸入外備CPU地址線數(shù)據(jù)線控制線13例1查詢方式輸入假設(shè)外設(shè)的狀態(tài)端口為21C查詢方式輸入接口,參看教材圖6-10狀態(tài)端口D4=1表示外設(shè)準(zhǔn)備好三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線218H

數(shù)據(jù)端口地址譯碼地址線

狀態(tài)端口地址譯碼鎖存器IOR

R

Q

D三態(tài)緩沖器+5vD421CH

STBPC總線IORA15~A0D7~D0&&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX14查詢方式輸入接口,參看教材圖6-10狀態(tài)端口D4=1三從21CH狀態(tài)端口讀入外設(shè)狀態(tài)信息從218H數(shù)據(jù)端口讀入一個(gè)字節(jié)數(shù)據(jù)YND4=1,外設(shè)準(zhǔn)備好否?N50H個(gè)數(shù)據(jù)傳送結(jié)束?Y編程從外設(shè)讀入50H個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中15從21CH狀態(tài)端口從218H數(shù)據(jù)端口YND4=1,外設(shè)準(zhǔn)備、、、MOVAX,SEGbuffer;取緩沖區(qū)首地址

MOVDS,AXLEADI,bufferMOVCX,50H;傳送個(gè)數(shù)

next:MOVDX,21CH

ask:

INAL,DX;從狀態(tài)端口讀入狀態(tài)信息

TESTAL,00010000B;檢測(cè)D4位

JZask;D4=0,繼續(xù)查詢MOVDX,218H

INAL,DX;從數(shù)據(jù)端口讀入數(shù)據(jù)MOV[DI],AL;送緩沖區(qū)INCDI;修改緩沖區(qū)指針

LOOPnext;傳送下一個(gè)、、、查詢方式輸入程序段:16、、、查詢方式輸入程序段:16例2

查詢方式輸出假設(shè)外設(shè)的狀態(tài)端口為21CH,其中D0=0時(shí),表示外設(shè)準(zhǔn)備好外設(shè)的數(shù)據(jù)端口為219H。編程將緩沖區(qū)buffer的80H個(gè)字節(jié)輸出到外設(shè)。21CH端口狀態(tài)端口219H端口數(shù)據(jù)端口地址譯碼數(shù)據(jù)緩沖控制電路輸出外設(shè)CPU地址線數(shù)據(jù)線控制線17例2查詢方式輸出假設(shè)外設(shè)的狀態(tài)端口為21C查詢方式輸出接口,參看教材圖6-11狀態(tài)端口D0=0表示外設(shè)準(zhǔn)備好輸出設(shè)備數(shù)據(jù)線219H數(shù)據(jù)端口地址譯碼地址線

鎖存器

RD

Q

三態(tài)緩沖器+5vACKPC總線IORA15~A0D7~D0IOW狀態(tài)端口地址譯碼D021CH&&MOVDX,219HOUTDX,ALMOVDX,21CHAsk:INAL,DXTESTAL,01h

JNZask

18查詢方式輸出接口,參看教材圖6-11狀態(tài)端口D0=0從21CH狀態(tài)端口讀入外設(shè)狀態(tài)信息將一字節(jié)數(shù)據(jù)送至219H數(shù)據(jù)端口YND0=0,外設(shè)準(zhǔn)備好否?N80H個(gè)數(shù)據(jù)傳送結(jié)束?Y編程將緩沖區(qū)buffer的80H個(gè)字節(jié)輸出到外設(shè)19從21CH狀態(tài)端口將一字節(jié)數(shù)據(jù)送至YND0=0,外設(shè)準(zhǔn)備好、、、MOVAX,SEGbuffer;取緩沖區(qū)首地址

MOVDS,AXLEASI,bufferMOVCX,80H;傳送個(gè)數(shù)

next:MOVDX,21CHask:INAL,DX

;從狀態(tài)端口讀入狀態(tài)信息

TESTAL,00000001B;檢測(cè)D0位

JNZask

;D0≠0,繼續(xù)查詢MOVAL,[SI];從緩沖區(qū)取數(shù)

MOVDX,219H

OUTDX,AL;從數(shù)據(jù)端口輸出數(shù)據(jù)INCSI;修改緩沖區(qū)指針

LOOPnext;輸出下一個(gè)

、、、查詢方式輸出程序段:

20、、、查詢方式輸出程序段:20三、中斷傳送方式

實(shí)現(xiàn)方法:

1.

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

CPU與外設(shè)并行工作;一旦外設(shè)準(zhǔn)備就緒,外設(shè)向CPU發(fā)中斷申請(qǐng),CPU暫停原程序執(zhí)行,響應(yīng)中斷,進(jìn)行數(shù)據(jù)傳輸。此時(shí),CPU與外設(shè)是串行工作。23使用中斷方式時(shí):231.CPU和外設(shè)大部分時(shí)間處在并行工作狀態(tài),只在CPU響應(yīng)外設(shè)的中斷申請(qǐng)后,進(jìn)入數(shù)據(jù)傳送的過(guò)程2.中斷傳送方式提高了CPU的效率中斷傳送方式的特點(diǎn):241.CPU和外設(shè)大部分時(shí)間處在并行工作狀態(tài),中斷傳送中斷方式輸入接口:某位未屏蔽,中斷屏蔽觸發(fā)器置‘0’,Q=025中斷方式輸入接口:某位未屏蔽,25(1)當(dāng)外設(shè)數(shù)據(jù)準(zhǔn)備好,外設(shè)向接口電路發(fā)出選通信號(hào): 將數(shù)據(jù)打入鎖存器;同時(shí)將中斷請(qǐng)求觸發(fā)器置“1”,(2)若此時(shí),中斷請(qǐng)求屏蔽觸發(fā)器置“0”, =1,Q=0,允許本接口發(fā)出中斷, 接口電路向CPU發(fā)出中斷請(qǐng)求信號(hào)INTR=1;(3)CPU在運(yùn)行程序時(shí)不斷訪問(wèn)INTR,若查到INTR=1信號(hào), 且CPU內(nèi)部中斷允許標(biāo)志IF=1,

則CPU在現(xiàn)行指令執(zhí)行完后,

暫停程序的執(zhí)行,向接口電路發(fā)出中斷響應(yīng)信號(hào)。(4)外設(shè)把中斷類型號(hào)送上數(shù)據(jù)總線;

(4N)=(IP),(4(N+2))=(CS)(5)CPU轉(zhuǎn)入中斷服務(wù)程序,執(zhí)行IN指令,讀入數(shù)據(jù);

清除中斷請(qǐng)求標(biāo)志。當(dāng)中斷處理完后,返回原程序。26(1)當(dāng)外設(shè)數(shù)據(jù)準(zhǔn)備好,外設(shè)向接口電路發(fā)出選通信號(hào):26四、DMA傳送方式(直接存儲(chǔ)器存取方式)

實(shí)現(xiàn)方法:1.由專用接口芯片DMA控制器(稱DMAC)控制傳送過(guò)程,2.當(dāng)外設(shè)需傳送數(shù)據(jù)時(shí),通過(guò)

DMAC向CPU發(fā)出總線請(qǐng)求;3.CPU發(fā)出總線響應(yīng)信號(hào),釋放總線;4.DMAC接管總線,控制外設(shè)、內(nèi)存之間直接數(shù)據(jù)傳送27四、DMA傳送方式(直接存儲(chǔ)器存取方式)實(shí)現(xiàn)方法:27DMA

傳送方式過(guò)程CPUDMAC內(nèi)存外設(shè)總線響應(yīng)總線請(qǐng)求28DMA傳送方式過(guò)程CPUDMAC內(nèi)存外設(shè)總線總線28DMA傳送方式的特點(diǎn)1.外設(shè)和內(nèi)存之間,直接進(jìn)行數(shù)據(jù)傳送,不通過(guò)CPU,傳送效率高。適用于在內(nèi)存與高速外設(shè)、或兩個(gè)高速外設(shè)之間進(jìn)行大批量數(shù)據(jù)傳送。2.電路結(jié)構(gòu)復(fù)雜,硬件開(kāi)銷較大。29DMA傳送方式的特點(diǎn)29

接收接口往DMA控制器發(fā)出DMA請(qǐng)求信號(hào)后,DMA控制器能向CPU發(fā)出總線請(qǐng)求信號(hào)HOLD(高電平)。當(dāng)CPU向DMA發(fā)出響應(yīng)信號(hào)HLDA(高電平)以后,DMA能接管對(duì)總線的控制,進(jìn)入DMA方式。能向地址總線發(fā)出內(nèi)存地址信息,對(duì)其進(jìn)行尋址及修改地址指針。能向存儲(chǔ)器或外設(shè)發(fā),命令。能決定傳送字節(jié)數(shù),并判斷DMA傳送是否結(jié)束。DMA過(guò)程結(jié)束,能向CPU發(fā)出DMA結(jié)束信號(hào),HOLD變低,將總線控 制權(quán)還給CPU,CPU恢復(fù)正常工作。DMA控制器功能30接收接口往DMA控制器發(fā)出DMA請(qǐng)求信號(hào)后,DMA控制器DMA控制器工作原理31DMA控制器工作原理31當(dāng)外設(shè)輸入數(shù)據(jù)準(zhǔn)備好,外設(shè)向DMA發(fā)出一個(gè)選通信號(hào),

將數(shù)據(jù)送數(shù)據(jù)端口;向DMA發(fā)出請(qǐng)求。DMA控制器向CPU發(fā)出總線請(qǐng)求信號(hào)(HOLD)高電平。CPU在現(xiàn)行總線周期結(jié)束后響應(yīng),向DMA發(fā)出響應(yīng)信號(hào)(HLDA)高電平;CPU放棄對(duì)總線控制,DMA控制器接管三態(tài)總線,接口將數(shù)據(jù)送上數(shù)據(jù)總線,并撤消DMA請(qǐng)求;內(nèi)存收到數(shù)據(jù)以后,給DMA一個(gè)回答,于是DMA修改地址指針,改變傳送字節(jié)數(shù)。檢查傳送是否結(jié)束。沒(méi)有結(jié)束,下次接口準(zhǔn)備好數(shù)據(jù),再進(jìn)行一次新的傳輸;當(dāng)計(jì)數(shù)值計(jì)為0,DMA傳輸過(guò)程便告結(jié)束。DMA控制器撤消總線請(qǐng)求(HOLD變低),在下一個(gè)時(shí)鐘周期上升沿使總線響應(yīng)HLDA變低,DMA釋放總線,CPU取得總線控制權(quán)。DMA控制器工作原理(續(xù))32當(dāng)外設(shè)輸入數(shù)據(jù)準(zhǔn)備好,外設(shè)向DMA發(fā)出一個(gè)選通信號(hào),DMDMA控制器工作原理(續(xù))33DMA控制器工作原理(續(xù))33用DMA方式進(jìn)行輸出過(guò)程與輸入過(guò)程類似,只是在DMA控制器發(fā)出回答信號(hào)后接著發(fā)出的是I/O寫信號(hào)和存儲(chǔ)器讀信號(hào),數(shù)據(jù)傳送方向與輸入相反而已。DMA控制器工作原理(續(xù))34用DMA方式進(jìn)行輸出過(guò)程與輸入過(guò)程類似,DMA控制器工作原理

第四節(jié)接口技術(shù)的現(xiàn)狀與發(fā)展趨勢(shì) (自學(xué))一、接口技術(shù)的現(xiàn)狀二、接口技術(shù)的發(fā)展趨勢(shì)35第四節(jié)接口技術(shù)的現(xiàn)狀與發(fā)展趨勢(shì) (自學(xué))一、接口一、接口技術(shù)的現(xiàn)狀1.用簡(jiǎn)單的邏輯電路2.用可編程集成接口芯片3.用多功能的芯片組4.

?(結(jié)合所學(xué)的數(shù)字電子技術(shù),在并行接口實(shí)驗(yàn)報(bào)告上闡述)第四次實(shí)驗(yàn)報(bào)告36一、接口技術(shù)的現(xiàn)狀1.用簡(jiǎn)單的邏輯電路(結(jié)合所學(xué)的數(shù)字電子技

1.用簡(jiǎn)單的邏輯電路采用簡(jiǎn)單的邏輯部件完成接口電路特點(diǎn):原理清楚,但實(shí)際用得少。

例1無(wú)條件輸入接口例2無(wú)條件輸出接口例3查詢輸入接口例4查詢輸出接口注意:

教材中控制信號(hào)采用的是8088CPU工作于最小模式下的信號(hào)

講義中控制信號(hào)采用的是IBMPC/XT總線上的信號(hào)371.用簡(jiǎn)單的邏輯電路采用簡(jiǎn)單的邏輯部件完成接口電路37例1無(wú)條件輸入接口(參看教材圖6-8)三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線IOR地址譯碼地址線

200H000D7~D0A15~A0與非PC總線注意:在邏輯門前輸入信號(hào)的,表示對(duì)信號(hào)求反。與鎖存器、三態(tài)門等控制端的意義不同。簡(jiǎn)單的邏輯電路:38例1無(wú)條件輸入接口(參看教材圖6-8)三態(tài)輸入數(shù)例2無(wú)條件輸出接口(參看教材圖6-9)PC總線鎖存器輸出設(shè)備數(shù)據(jù)線IOW地址譯碼地址線

300H000D7~D0A15~A0與非簡(jiǎn)單的邏輯電路:39例2無(wú)條件輸出接口(參看教材圖6-9)PC總線鎖存例3

查詢輸入接口(參看教材圖6-11)狀態(tài)端口D4=1表示外設(shè)準(zhǔn)備好三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線218H

數(shù)據(jù)端口地址譯碼地址線

狀態(tài)端口地址譯碼鎖存器IOR

R

Q

D三態(tài)緩沖器+5vD421CH

STBPC總線IORA15~A0D7~D0&&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:40例3查詢輸入接口(參看教材圖6-11)狀態(tài)端口D4=1例4查詢輸出接口(參看教材圖6-12)狀態(tài)端口D0=0表示外設(shè)準(zhǔn)備好輸出設(shè)備數(shù)據(jù)線219H數(shù)據(jù)端口地址譯碼地址線

鎖存器

RD

Q

三態(tài)緩沖器+5vACKPC總線IORA15~A0D7~D0IOW狀態(tài)端口地址譯碼D021CH&&MOVDX,219HOUTDX,ALMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:41例4查詢輸出接口(參看教材圖6-12)狀態(tài)端口D0=2.用可編程集成接口芯片

將完成某一功能的接口電路集成在一個(gè)芯片上,通過(guò)對(duì)接口芯片編程,設(shè)置接口芯片的工作狀態(tài)。特點(diǎn):1.體積小、功能強(qiáng)、可靠性高2.通常是專門為配合微機(jī)系統(tǒng)中的各種適配器設(shè)計(jì),不必增加或增加很少的電路,就可直接與總線連接,使用方便。3.應(yīng)用時(shí),應(yīng)掌握芯片的工作原理、外部特性、編程方法。422.用可編程集成接口芯片將完成某一功能的接口電路接口芯片舉例:并行接口芯片8255A、8155A、Z80-PIO串行接口芯片8251A、8250、Z80-SIO定時(shí)/計(jì)數(shù)器8253、8254、Z80-CTC中斷控制器8259ADMA控制器8237A、Z80-DMA鍵盤控制器8279CRT控制器8275、6845硬盤控制器6843D/A轉(zhuǎn)換器DAC0832A/D轉(zhuǎn)換器ADC080943接口芯片舉例:43例用可編程并行接口芯片8255A做打印機(jī)的接口。查詢方式接線圖A0A1CS并行接口8255A打印機(jī)PC總線A0A1數(shù)據(jù)線IORRDWRIOW片選譯碼PA0~PA7PC0PC4A2~A9數(shù)據(jù)線STROBEBUSYD0~D7D0~D744例用可編程并行接口芯片8255A做打印機(jī)的接口。查詢方中斷方式接線圖A0A1CS并行接口8255A打印機(jī)PC總線A0A1數(shù)據(jù)線IORRDWRIOW片選譯碼PA0~PA7PC7PC6A2~A9數(shù)據(jù)線STROBEACKD0~D7D0~D7PC3IRQ345中斷方式接線圖A0A1CS并行接口8255APC總線A0A1

將完成多個(gè)功能的接口電路集成在一個(gè)芯片上,通過(guò)編程,設(shè)置控制字,改變接口芯片的工作狀態(tài)。例

82206集成外設(shè)控制器,內(nèi)部包含:2個(gè)8237DMA控制器2個(gè)8259A中斷控制器1個(gè)8254定時(shí)/計(jì)數(shù)器1個(gè)MC146818實(shí)時(shí)時(shí)鐘以及其他接口芯片特點(diǎn):可靠性更高、功能更強(qiáng)3.用多功能的芯片組46將完成多個(gè)功能的接口電路集成在一個(gè)芯片上,3.用多功能的將主板上的外圍芯片集成在一組(2~4片)超大規(guī)模集成芯片上,構(gòu)成芯片組。

芯片組是主板的關(guān)鍵部件,通常固定在主板上,不象CPU、內(nèi)存條或其他插卡等可進(jìn)行簡(jiǎn)單的替換和升級(jí)。芯片組提供主板的核心邏輯,影響主板的性能和功能,決定主板所支持的CPU類型、內(nèi)存類型、總線類型、總線速度等關(guān)鍵技術(shù)配置47將主板上的外圍芯片集成在一組(2~4片)超大規(guī)模集成芯片上,4848550MHzIDE2PentiumIII北橋440BXAGP南橋PIIX4ECMOS&RTCUSB超級(jí)I/OIDE1COM1COM2LPT1550MHzL1CacheL2Cache處理機(jī)總線100MHz100MHzPCI總線33MHzPCI插槽ISA插槽硬件實(shí)驗(yàn)箱ISA總線8MHz內(nèi)存條ROMBIOS顯示器硬盤光驅(qū)軟驅(qū)鍵盤鼠標(biāo)打印機(jī)MODEM66MHz顯卡49550MHzIDE2PentiumIII北橋AGP南橋CM二、接口技術(shù)的發(fā)展趨勢(shì)集成化多功能化標(biāo)準(zhǔn)化智能化50二、接口技術(shù)的發(fā)展趨勢(shì)集成化50

第五節(jié)接口的設(shè)計(jì)與分析一、基本方法二、注意事項(xiàng)51第五節(jié)接口的設(shè)計(jì)與分析一、基本方法51一、基本方法1.了解外設(shè)工作原理,明確接口功能,選擇接口芯片2.設(shè)計(jì)接口與系統(tǒng)的連接3.分析和設(shè)計(jì)接口程序4.接口的調(diào)試52一、基本方法1.了解外設(shè)工作原理,明確接口功能,選擇接口芯1.了解外設(shè)工作原理,明確接口功能,選擇接口芯片531.了解外設(shè)工作原理,明確接口功能,選擇接口芯片53外設(shè)數(shù)據(jù)線接口電路PC總線數(shù)據(jù)線片選譯碼

高位地址線控制線低位地址線控制線狀態(tài)線CPU輔助電路CPU2.設(shè)計(jì)接口與系統(tǒng)的連接54數(shù)據(jù)線接PC數(shù)據(jù)線片高位控制線低位地址線控制線狀態(tài)線C接口電路實(shí)現(xiàn)計(jì)算機(jī)與外設(shè)間的數(shù)據(jù)傳送功能接口電路的一般連接方法:接口與計(jì)算機(jī)的連接

(1)接口的數(shù)據(jù)線與計(jì)算機(jī)的數(shù)據(jù)線連

(2)接口的地址線與總線的低位地址連

由接口的片內(nèi)譯碼確定接口內(nèi)不同的端口接口的片選信號(hào)由總線的高位地址經(jīng)譯碼電路得到

(3)接口的控制線與計(jì)算機(jī)相應(yīng)的控制線連如接口的RD與總線的IOR連接口的WR與總線的IOW連接口與外設(shè)的連接(1)接口的數(shù)據(jù)端口與外設(shè)的數(shù)據(jù)線、狀態(tài)線連(2)接口與外設(shè)控制線的連接據(jù)設(shè)計(jì)確定。55接口電路實(shí)現(xiàn)計(jì)算機(jī)與外設(shè)間的數(shù)據(jù)傳送功能55采用可編程接口芯片,步驟:(1)掌握接口芯片的編程結(jié)構(gòu)、編程方法包括:確定各端口地址;了解控制字各位的含義和設(shè)置控制字的方法(2)

確定接口的工作方式,設(shè)計(jì)接口工作過(guò)程包括:CPU與外設(shè)的數(shù)據(jù)傳送方式(3)

據(jù)硬件連接關(guān)系,編寫接口程序

包括:可編程芯片的初始化程序CPU與外設(shè)間數(shù)據(jù)傳送的輸入/輸出程序3.分析和設(shè)計(jì)接口程序56采用可編程接口芯片,步驟:3.分析和設(shè)計(jì)接口程序56單獨(dú)調(diào)試硬件單獨(dú)調(diào)試軟件綜合調(diào)試硬件、軟件4.接口的調(diào)試實(shí)驗(yàn)指導(dǎo)書(shū)中給出了每個(gè)硬件實(shí)驗(yàn)的一些調(diào)試經(jīng)驗(yàn),可供大家實(shí)驗(yàn)時(shí)參考57單獨(dú)調(diào)試硬件4.接口的調(diào)試實(shí)驗(yàn)指導(dǎo)書(shū)中給出了每個(gè)硬件實(shí)驗(yàn)的二、注意事項(xiàng)1.軟、硬件應(yīng)綜合考慮2.注意信號(hào)的轉(zhuǎn)換在邏輯上(高電平、低電平、邊沿信號(hào))當(dāng)信號(hào)在電平上(TTL電平、非TTL電平)在時(shí)序上

等不匹配,需轉(zhuǎn)換匹配后,方能連接。3.注意數(shù)據(jù)線的連接

考慮是否需加三態(tài)緩沖、鎖存器等58二、注意事項(xiàng)1.軟、硬件應(yīng)綜合考慮58第三節(jié)CPU與外設(shè)間的數(shù)據(jù)傳送方式CPU與外設(shè)的工作速度不一致,如何使兩者高效、可靠地進(jìn)行數(shù)據(jù)傳送,是本節(jié)討論的問(wèn)題。59第三節(jié)CPU與外設(shè)間的數(shù)據(jù)傳送方式CPU與外設(shè)的工作速一、無(wú)條件傳送方式二、條件傳送方式(查詢方式)三、中斷傳送方式四、DMA傳送方式

(DirectMemoryAccess)

有以下幾種傳送方式:60一、無(wú)條件傳送方式有以下幾種傳送方式:2概述1。無(wú)條件傳送(CPU與外設(shè)同步工作):外部控制過(guò)程各種動(dòng)作時(shí)間是固定的,而且是已知的。2。查詢方式(CPU與外設(shè)不同步工作):傳送前,先查詢外設(shè)狀態(tài),準(zhǔn)備好才傳送,否則CPU處于等待狀態(tài)。3。中斷方式:

外設(shè)與CPU處于并行工作,一旦外設(shè)準(zhǔn)備好,外設(shè)向CPU發(fā)中斷申請(qǐng),條件具備,CPU暫停原程序執(zhí)行,響應(yīng)中斷,外設(shè)與CPU串行工作。4。DMA方式(高速I/O及成組交換數(shù)據(jù)):CPU不干予,由硬件實(shí)現(xiàn)存儲(chǔ)器與外設(shè)之間交換數(shù)據(jù),稱直接存取存儲(chǔ)器。61概述3一、無(wú)條件傳送方式(同步傳送方式)實(shí)現(xiàn)方法CPU不查詢外設(shè)工作狀態(tài),與外設(shè)速度的匹配通過(guò)在軟件上延時(shí)完成,在程序中直接用I/O指令,完成與外設(shè)的數(shù)據(jù)傳送特點(diǎn)1.適用于外設(shè)動(dòng)作時(shí)間已知,在CPU與外設(shè)進(jìn)行數(shù)據(jù)傳送時(shí),外設(shè)保證已準(zhǔn)備好的情況2.軟硬件十分簡(jiǎn)單。62一、無(wú)條件傳送方式(同步傳送方式)實(shí)現(xiàn)方法4例1

無(wú)條件輸入接口(參看教材圖6-8)接口電路,即硬件上保證:只在CPU執(zhí)行從200H端口輸入數(shù)據(jù)時(shí),三態(tài)門處于工作狀態(tài),使輸入設(shè)備的數(shù)據(jù)送上總線側(cè),而CPU執(zhí)行其它指令時(shí),三態(tài)門均處于高阻狀態(tài),使輸入設(shè)備的數(shù)據(jù)線與總線側(cè)斷開(kāi)三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線IOR地址譯碼地址線

200H000D7~D0A15~A0與非PC總線63例1無(wú)條件輸入接口(參看教材圖6-8)接口電路,即無(wú)條件輸入編程:從端口200H讀入100個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中。、、、MOVAX,SEGbufferMOVDS,AX;取緩沖區(qū)

LEADI,buffer;首地址

MOVCX,100H;傳送個(gè)數(shù)

MOVDX,200H;端口地址

next: ;延時(shí)等待

INAL,DX;讀入數(shù)據(jù) CALLdelay

MOV[DI],AL;送緩沖區(qū)

INCDI;修改指針

LOOPnext、、、;延時(shí)子程delayPROCPUSHCXMOVCX,80Hcc:LOOPccPOPCX

RETdelayENDP64無(wú)條件輸入編程:、、、;延時(shí)子程6例2

無(wú)條件輸出:編程控制系統(tǒng)板上揚(yáng)聲器發(fā)聲。

4765321061H端口

8253與門放大器揚(yáng)聲器01控制其它外設(shè)揚(yáng)聲器控制電路圖:T個(gè)數(shù)發(fā)聲原理:向揚(yáng)聲器發(fā)送一串脈沖信號(hào),推動(dòng)揚(yáng)聲器內(nèi)紙盆振動(dòng),發(fā)出聲音脈沖的頻率,控制音高;脈沖的個(gè)數(shù),控制音長(zhǎng)65例2無(wú)條件輸出:編程控制系統(tǒng)板上揚(yáng)聲器發(fā)聲。1.使61H端口的0位輸出0,控制8253輸出1。2.使61H端口的1位按所需頻率交替輸出0和1,產(chǎn)生所需的聲音。編程方法:

4765321061H端口

8253與門放大器揚(yáng)聲器01控制其它外設(shè)揚(yáng)聲器控制電路圖:661.使61H端口的0位輸出0,控制8253輸出1。編程方法codeSEGMENT

ASSUMECS:codestart:MOVBX,3000H;控制脈沖個(gè)數(shù)MOVDX,6000H;控制脈沖周期

INAL,61H

;讀入61H端口數(shù)據(jù)ANDAL,11111100b;D0為0,8253輸出1sound:XORAL,00000010b

OUT61H,AL

;61H端口的D1交替為0和1

MOVCX,DXdelay:LOOPdelay

;延時(shí)DECBX

;控制脈沖數(shù)JNZsound

MOVAH,4CHINT21HcodeENDS

ENDstart發(fā)聲程序:

61H端口8253與門放大器揚(yáng)聲器01控制其它外設(shè)T個(gè)數(shù)67codeSEGMENT發(fā)聲程序:將發(fā)聲程序改編為一子程:入口參數(shù)BX控制音長(zhǎng)

DX控制音高思考:68將發(fā)聲程序改編為一子程:思考:10二、條件傳送方式(查詢傳送方式)實(shí)現(xiàn)方法:在與外設(shè)進(jìn)行傳送數(shù)據(jù)前,CPU先查詢外設(shè)狀態(tài),當(dāng)外設(shè)準(zhǔn)備好后,才執(zhí)行I/O指令,實(shí)現(xiàn)數(shù)據(jù)傳送特點(diǎn):1.CPU通過(guò)不斷查詢外設(shè)狀態(tài),實(shí)現(xiàn)與外設(shè)的速度匹配2.CPU的工作效率低69二、條件傳送方式(查詢傳送方式)實(shí)現(xiàn)方法:11查詢傳送方式,編程流程:NY從狀態(tài)端口讀入狀態(tài)信息從數(shù)據(jù)端口傳送一個(gè)數(shù)據(jù)外設(shè)準(zhǔn)備好否?70查詢傳送方式,編程流程:NY從狀態(tài)端口讀入狀態(tài)信息從數(shù)據(jù)端例1

查詢方式輸入假設(shè)外設(shè)的狀態(tài)端口為21CH,其中D4=1時(shí),表示外設(shè)數(shù)據(jù)準(zhǔn)備好外設(shè)的數(shù)據(jù)端口為218H。實(shí)現(xiàn)從外設(shè)讀入50H個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中。21CH端口狀態(tài)端口218H端口數(shù)據(jù)端口地址譯碼數(shù)據(jù)緩沖控制電路輸入外備CPU地址線數(shù)據(jù)線控制線71例1查詢方式輸入假設(shè)外設(shè)的狀態(tài)端口為21C查詢方式輸入接口,參看教材圖6-10狀態(tài)端口D4=1表示外設(shè)準(zhǔn)備好三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線218H

數(shù)據(jù)端口地址譯碼地址線

狀態(tài)端口地址譯碼鎖存器IOR

R

Q

D三態(tài)緩沖器+5vD421CH

STBPC總線IORA15~A0D7~D0&&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX72查詢方式輸入接口,參看教材圖6-10狀態(tài)端口D4=1三從21CH狀態(tài)端口讀入外設(shè)狀態(tài)信息從218H數(shù)據(jù)端口讀入一個(gè)字節(jié)數(shù)據(jù)YND4=1,外設(shè)準(zhǔn)備好否?N50H個(gè)數(shù)據(jù)傳送結(jié)束?Y編程從外設(shè)讀入50H個(gè)字節(jié)到內(nèi)存緩沖區(qū)buffer中73從21CH狀態(tài)端口從218H數(shù)據(jù)端口YND4=1,外設(shè)準(zhǔn)備、、、MOVAX,SEGbuffer;取緩沖區(qū)首地址

MOVDS,AXLEADI,bufferMOVCX,50H;傳送個(gè)數(shù)

next:MOVDX,21CH

ask:

INAL,DX;從狀態(tài)端口讀入狀態(tài)信息

TESTAL,00010000B;檢測(cè)D4位

JZask;D4=0,繼續(xù)查詢MOVDX,218H

INAL,DX;從數(shù)據(jù)端口讀入數(shù)據(jù)MOV[DI],AL;送緩沖區(qū)INCDI;修改緩沖區(qū)指針

LOOPnext;傳送下一個(gè)、、、查詢方式輸入程序段:74、、、查詢方式輸入程序段:16例2

查詢方式輸出假設(shè)外設(shè)的狀態(tài)端口為21CH,其中D0=0時(shí),表示外設(shè)準(zhǔn)備好外設(shè)的數(shù)據(jù)端口為219H。編程將緩沖區(qū)buffer的80H個(gè)字節(jié)輸出到外設(shè)。21CH端口狀態(tài)端口219H端口數(shù)據(jù)端口地址譯碼數(shù)據(jù)緩沖控制電路輸出外設(shè)CPU地址線數(shù)據(jù)線控制線75例2查詢方式輸出假設(shè)外設(shè)的狀態(tài)端口為21C查詢方式輸出接口,參看教材圖6-11狀態(tài)端口D0=0表示外設(shè)準(zhǔn)備好輸出設(shè)備數(shù)據(jù)線219H數(shù)據(jù)端口地址譯碼地址線

鎖存器

RD

Q

三態(tài)緩沖器+5vACKPC總線IORA15~A0D7~D0IOW狀態(tài)端口地址譯碼D021CH&&MOVDX,219HOUTDX,ALMOVDX,21CHAsk:INAL,DXTESTAL,01h

JNZask

76查詢方式輸出接口,參看教材圖6-11狀態(tài)端口D0=0從21CH狀態(tài)端口讀入外設(shè)狀態(tài)信息將一字節(jié)數(shù)據(jù)送至219H數(shù)據(jù)端口YND0=0,外設(shè)準(zhǔn)備好否?N80H個(gè)數(shù)據(jù)傳送結(jié)束?Y編程將緩沖區(qū)buffer的80H個(gè)字節(jié)輸出到外設(shè)77從21CH狀態(tài)端口將一字節(jié)數(shù)據(jù)送至YND0=0,外設(shè)準(zhǔn)備好、、、MOVAX,SEGbuffer;取緩沖區(qū)首地址

MOVDS,AXLEASI,bufferMOVCX,80H;傳送個(gè)數(shù)

next:MOVDX,21CHask:INAL,DX

;從狀態(tài)端口讀入狀態(tài)信息

TESTAL,00000001B;檢測(cè)D0位

JNZask

;D0≠0,繼續(xù)查詢MOVAL,[SI];從緩沖區(qū)取數(shù)

MOVDX,219H

OUTDX,AL;從數(shù)據(jù)端口輸出數(shù)據(jù)INCSI;修改緩沖區(qū)指針

LOOPnext;輸出下一個(gè)

、、、查詢方式輸出程序段:

78、、、查詢方式輸出程序段:20三、中斷傳送方式

實(shí)現(xiàn)方法:

1.

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

CPU與外設(shè)并行工作;一旦外設(shè)準(zhǔn)備就緒,外設(shè)向CPU發(fā)中斷申請(qǐng),CPU暫停原程序執(zhí)行,響應(yīng)中斷,進(jìn)行數(shù)據(jù)傳輸。此時(shí),CPU與外設(shè)是串行工作。81使用中斷方式時(shí):231.CPU和外設(shè)大部分時(shí)間處在并行工作狀態(tài),只在CPU響應(yīng)外設(shè)的中斷申請(qǐng)后,進(jìn)入數(shù)據(jù)傳送的過(guò)程2.中斷傳送方式提高了CPU的效率中斷傳送方式的特點(diǎn):821.CPU和外設(shè)大部分時(shí)間處在并行工作狀態(tài),中斷傳送中斷方式輸入接口:某位未屏蔽,中斷屏蔽觸發(fā)器置‘0’,Q=083中斷方式輸入接口:某位未屏蔽,25(1)當(dāng)外設(shè)數(shù)據(jù)準(zhǔn)備好,外設(shè)向接口電路發(fā)出選通信號(hào): 將數(shù)據(jù)打入鎖存器;同時(shí)將中斷請(qǐng)求觸發(fā)器置“1”,(2)若此時(shí),中斷請(qǐng)求屏蔽觸發(fā)器置“0”, =1,Q=0,允許本接口發(fā)出中斷, 接口電路向CPU發(fā)出中斷請(qǐng)求信號(hào)INTR=1;(3)CPU在運(yùn)行程序時(shí)不斷訪問(wèn)INTR,若查到INTR=1信號(hào), 且CPU內(nèi)部中斷允許標(biāo)志IF=1,

則CPU在現(xiàn)行指令執(zhí)行完后,

暫停程序的執(zhí)行,向接口電路發(fā)出中斷響應(yīng)信號(hào)。(4)外設(shè)把中斷類型號(hào)送上數(shù)據(jù)總線;

(4N)=(IP),(4(N+2))=(CS)(5)CPU轉(zhuǎn)入中斷服務(wù)程序,執(zhí)行IN指令,讀入數(shù)據(jù);

清除中斷請(qǐng)求標(biāo)志。當(dāng)中斷處理完后,返回原程序。84(1)當(dāng)外設(shè)數(shù)據(jù)準(zhǔn)備好,外設(shè)向接口電路發(fā)出選通信號(hào):26四、DMA傳送方式(直接存儲(chǔ)器存取方式)

實(shí)現(xiàn)方法:1.由專用接口芯片DMA控制器(稱DMAC)控制傳送過(guò)程,2.當(dāng)外設(shè)需傳送數(shù)據(jù)時(shí),通過(guò)

DMAC向CPU發(fā)出總線請(qǐng)求;3.CPU發(fā)出總線響應(yīng)信號(hào),釋放總線;4.DMAC接管總線,控制外設(shè)、內(nèi)存之間直接數(shù)據(jù)傳送85四、DMA傳送方式(直接存儲(chǔ)器存取方式)實(shí)現(xiàn)方法:27DMA

傳送方式過(guò)程CPUDMAC內(nèi)存外設(shè)總線響應(yīng)總線請(qǐng)求86DMA傳送方式過(guò)程CPUDMAC內(nèi)存外設(shè)總線總線28DMA傳送方式的特點(diǎn)1.外設(shè)和內(nèi)存之間,直接進(jìn)行數(shù)據(jù)傳送,不通過(guò)CPU,傳送效率高。適用于在內(nèi)存與高速外設(shè)、或兩個(gè)高速外設(shè)之間進(jìn)行大批量數(shù)據(jù)傳送。2.電路結(jié)構(gòu)復(fù)雜,硬件開(kāi)銷較大。87DMA傳送方式的特點(diǎn)29

接收接口往DMA控制器發(fā)出DMA請(qǐng)求信號(hào)后,DMA控制器能向CPU發(fā)出總線請(qǐng)求信號(hào)HOLD(高電平)。當(dāng)CPU向DMA發(fā)出響應(yīng)信號(hào)HLDA(高電平)以后,DMA能接管對(duì)總線的控制,進(jìn)入DMA方式。能向地址總線發(fā)出內(nèi)存地址信息,對(duì)其進(jìn)行尋址及修改地址指針。能向存儲(chǔ)器或外設(shè)發(fā),命令。能決定傳送字節(jié)數(shù),并判斷DMA傳送是否結(jié)束。DMA過(guò)程結(jié)束,能向CPU發(fā)出DMA結(jié)束信號(hào),HOLD變低,將總線控 制權(quán)還給CPU,CPU恢復(fù)正常工作。DMA控制器功能88接收接口往DMA控制器發(fā)出DMA請(qǐng)求信號(hào)后,DMA控制器DMA控制器工作原理89DMA控制器工作原理31當(dāng)外設(shè)輸入數(shù)據(jù)準(zhǔn)備好,外設(shè)向DMA發(fā)出一個(gè)選通信號(hào),

將數(shù)據(jù)送數(shù)據(jù)端口;向DMA發(fā)出請(qǐng)求。DMA控制器向CPU發(fā)出總線請(qǐng)求信號(hào)(HOLD)高電平。CPU在現(xiàn)行總線周期結(jié)束后響應(yīng),向DMA發(fā)出響應(yīng)信號(hào)(HLDA)高電平;CPU放棄對(duì)總線控制,DMA控制器接管三態(tài)總線,接口將數(shù)據(jù)送上數(shù)據(jù)總線,并撤消DMA請(qǐng)求;內(nèi)存收到數(shù)據(jù)以后,給DMA一個(gè)回答,于是DMA修改地址指針,改變傳送字節(jié)數(shù)。檢查傳送是否結(jié)束。沒(méi)有結(jié)束,下次接口準(zhǔn)備好數(shù)據(jù),再進(jìn)行一次新的傳輸;當(dāng)計(jì)數(shù)值計(jì)為0,DMA傳輸過(guò)程便告結(jié)束。DMA控制器撤消總線請(qǐng)求(HOLD變低),在下一個(gè)時(shí)鐘周期上升沿使總線響應(yīng)HLDA變低,DMA釋放總線,CPU取得總線控制權(quán)。DMA控制器工作原理(續(xù))90當(dāng)外設(shè)輸入數(shù)據(jù)準(zhǔn)備好,外設(shè)向DMA發(fā)出一個(gè)選通信號(hào),DMDMA控制器工作原理(續(xù))91DMA控制器工作原理(續(xù))33用DMA方式進(jìn)行輸出過(guò)程與輸入過(guò)程類似,只是在DMA控制器發(fā)出回答信號(hào)后接著發(fā)出的是I/O寫信號(hào)和存儲(chǔ)器讀信號(hào),數(shù)據(jù)傳送方向與輸入相反而已。DMA控制器工作原理(續(xù))92用DMA方式進(jìn)行輸出過(guò)程與輸入過(guò)程類似,DMA控制器工作原理

第四節(jié)接口技術(shù)的現(xiàn)狀與發(fā)展趨勢(shì) (自學(xué))一、接口技術(shù)的現(xiàn)狀二、接口技術(shù)的發(fā)展趨勢(shì)93第四節(jié)接口技術(shù)的現(xiàn)狀與發(fā)展趨勢(shì) (自學(xué))一、接口一、接口技術(shù)的現(xiàn)狀1.用簡(jiǎn)單的邏輯電路2.用可編程集成接口芯片3.用多功能的芯片組4.

?(結(jié)合所學(xué)的數(shù)字電子技術(shù),在并行接口實(shí)驗(yàn)報(bào)告上闡述)第四次實(shí)驗(yàn)報(bào)告94一、接口技術(shù)的現(xiàn)狀1.用簡(jiǎn)單的邏輯電路(結(jié)合所學(xué)的數(shù)字電子技

1.用簡(jiǎn)單的邏輯電路采用簡(jiǎn)單的邏輯部件完成接口電路特點(diǎn):原理清楚,但實(shí)際用得少。

例1無(wú)條件輸入接口例2無(wú)條件輸出接口例3查詢輸入接口例4查詢輸出接口注意:

教材中控制信號(hào)采用的是8088CPU工作于最小模式下的信號(hào)

講義中控制信號(hào)采用的是IBMPC/XT總線上的信號(hào)951.用簡(jiǎn)單的邏輯電路采用簡(jiǎn)單的邏輯部件完成接口電路37例1無(wú)條件輸入接口(參看教材圖6-8)三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線IOR地址譯碼地址線

200H000D7~D0A15~A0與非PC總線注意:在邏輯門前輸入信號(hào)的,表示對(duì)信號(hào)求反。與鎖存器、三態(tài)門等控制端的意義不同。簡(jiǎn)單的邏輯電路:96例1無(wú)條件輸入接口(參看教材圖6-8)三態(tài)輸入數(shù)例2無(wú)條件輸出接口(參看教材圖6-9)PC總線鎖存器輸出設(shè)備數(shù)據(jù)線IOW地址譯碼地址線

300H000D7~D0A15~A0與非簡(jiǎn)單的邏輯電路:97例2無(wú)條件輸出接口(參看教材圖6-9)PC總線鎖存例3

查詢輸入接口(參看教材圖6-11)狀態(tài)端口D4=1表示外設(shè)準(zhǔn)備好三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線218H

數(shù)據(jù)端口地址譯碼地址線

狀態(tài)端口地址譯碼鎖存器IOR

R

Q

D三態(tài)緩沖器+5vD421CH

STBPC總線IORA15~A0D7~D0&&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:98例3查詢輸入接口(參看教材圖6-11)狀態(tài)端口D4=1例4查詢輸出接口(參看教材圖6-12)狀態(tài)端口D0=0表示外設(shè)準(zhǔn)備好輸出設(shè)備數(shù)據(jù)線219H數(shù)據(jù)端口地址譯碼地址線

鎖存器

RD

Q

三態(tài)緩沖器+5vACKPC總線IORA15~A0D7~D0IOW狀態(tài)端口地址譯碼D021CH&&MOVDX,219HOUTDX,ALMOVDX,21CHINAL,DX簡(jiǎn)單的邏輯電路:99例4查詢輸出接口(參看教材圖6-12)狀態(tài)端口D0=2.用可編程集成接口芯片

將完成某一功能的接口電路集成在一個(gè)芯片上,通過(guò)對(duì)接口芯片編程,設(shè)置接口芯片的工作狀態(tài)。特點(diǎn):1.體積小、功能強(qiáng)、可靠性高2.通常是專門為配合微機(jī)系統(tǒng)中的各種適配器設(shè)計(jì),不必增加或增加很少的電路,就可直接與總線連接,使用方便。3.應(yīng)用時(shí),應(yīng)掌握芯片的工作原理、外部特性、編程方法。1002.用可編程集成接口芯片將完成某一功能的接口電路接口芯片舉例:并行接口芯片8255A、8155A、Z80-PIO串行接口芯片8251A、8250、Z80-SIO定時(shí)/計(jì)數(shù)器8253、8254、Z80-CTC中斷控制器8259ADMA控制器8237A、Z80-DMA鍵盤控制器8279CRT控制器8275、6845硬盤控制器6843D/A轉(zhuǎn)換器DAC0832A/D轉(zhuǎn)換器

溫馨提示

  • 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)論