微機(jī)原理講義(第8章DMA控制器的編程結(jié)構(gòu)及編程)_第1頁(yè)
微機(jī)原理講義(第8章DMA控制器的編程結(jié)構(gòu)及編程)_第2頁(yè)
微機(jī)原理講義(第8章DMA控制器的編程結(jié)構(gòu)及編程)_第3頁(yè)
微機(jī)原理講義(第8章DMA控制器的編程結(jié)構(gòu)及編程)_第4頁(yè)
微機(jī)原理講義(第8章DMA控制器的編程結(jié)構(gòu)及編程)_第5頁(yè)
已閱讀5頁(yè),還剩47頁(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、微型機(jī)原理與技術(shù)微型機(jī)原理與技術(shù)CH9 DMADMA控制器的編控制器的編程結(jié)構(gòu)及編程程結(jié)構(gòu)及編程湖南中醫(yī)藥大學(xué) 王志輝主要內(nèi)容DMA 控制器概要控制器概要DMA 控制器控制器8237的原理的原理8237A的工作方式和寄存器的工作方式和寄存器9.19.29.328237A各寄存器對(duì)應(yīng)的端口地址各寄存器對(duì)應(yīng)的端口地址9.48237A的編程和應(yīng)用的編程和應(yīng)用9.5DMA 傳輸?shù)奶攸c(diǎn)傳輸?shù)奶攸c(diǎn)9.0n本章重點(diǎn)本章重點(diǎn):uDMA控制器的編程結(jié)構(gòu)控制器的編程結(jié)構(gòu)uDMA控制器的作為主模塊和從模塊時(shí)的差別控制器的作為主模塊和從模塊時(shí)的差別u8237A的工作方式的工作方式u結(jié)合例子了解結(jié)合例子了解8237A的

2、編程方法的編程方法執(zhí)行指令的數(shù)據(jù)傳送路徑;執(zhí)行指令的數(shù)據(jù)傳送路徑; DMA方式的數(shù)據(jù)傳送路徑方式的數(shù)據(jù)傳送路徑回憶一下,回憶一下,DMA的提出背景?的提出背景?不需要不需要CPUCPU干預(yù)干預(yù)( (執(zhí)行指令執(zhí)行指令) ),而在,而在專門硬件電路控制之下,在外設(shè)專門硬件電路控制之下,在外設(shè)與存儲(chǔ)器間建立直接通道,直接與存儲(chǔ)器間建立直接通道,直接傳送傳送指令控制時(shí)指令控制時(shí), ,要經(jīng)過取指、要經(jīng)過取指、識(shí)別、取操作數(shù)、執(zhí)行識(shí)別、取操作數(shù)、執(zhí)行4 4個(gè)個(gè)過程,傳輸率不很高過程,傳輸率不很高DMA傳送的工作過程? CPUCPU對(duì)對(duì)DMADMA控制器進(jìn)行控制器進(jìn)行初始化初始化設(shè)置設(shè)置 外設(shè)、外設(shè)、DMA

3、CDMAC和和CPUCPU三者通過應(yīng)答信號(hào)三者通過應(yīng)答信號(hào)建立聯(lián)系:建立聯(lián)系:CPUCPU將將總線交給總線交給DMACDMAC控制控制 DMADMA傳送數(shù)據(jù)傳送數(shù)據(jù)DMADMA讀存儲(chǔ)器:存儲(chǔ)器讀存儲(chǔ)器:存儲(chǔ)器 外設(shè)外設(shè)DMADMA寫存儲(chǔ)器:存儲(chǔ)器寫存儲(chǔ)器:存儲(chǔ)器 外設(shè)外設(shè) 自動(dòng)增減自動(dòng)增減地址和計(jì)數(shù)地址和計(jì)數(shù),判斷傳送完,判斷傳送完成否成否 nDMA控制器的6大功能: 向CPU發(fā)總線請(qǐng)求信號(hào) 實(shí)行對(duì)三大總線的控制 修改所用的存儲(chǔ)器或接口的地址指針 發(fā)RW控制信號(hào) 字節(jié)計(jì)數(shù)器(存放數(shù)據(jù)長(zhǎng)度直至為0) 交還總線控制權(quán)DMA控制器的功能有哪些?lDMAnDMA (Direct Memory Acce

4、ss):讓存儲(chǔ)器與高速外設(shè)直接進(jìn)行數(shù)據(jù)交換而無(wú)需CPU的干預(yù)。l特點(diǎn)nDMA傳送期間,DMA控制器(DMAC)接管了CPU對(duì)總線的控制權(quán)。nDMA方式中,內(nèi)存地址的修改、傳送結(jié)束的判斷都由硬件電路實(shí)現(xiàn)。即:用硬件控制硬件控制代替了軟件控制。nDMA控制器控制器是實(shí)現(xiàn)DMA傳送的核心器件。79.0 DMA傳送的特點(diǎn)傳送的特點(diǎn)l應(yīng)用場(chǎng)合nDMA方式主要用于高速大批量傳輸數(shù)據(jù)的場(chǎng)合。如:硬盤和軟盤外設(shè);快速通信通道快速通信通道;多處理機(jī)和多程序數(shù)據(jù)塊傳送;圖像處理中向CRC屏幕傳送數(shù)據(jù);快速數(shù)據(jù)采集快速數(shù)據(jù)采集;DRAM的刷新操作的刷新操作。89.0 DMA傳送的特點(diǎn)傳送的特點(diǎn)99.1 DMA控制器

5、概要控制器概要uDMA控制器中與接口有聯(lián)系的部分稱為通道,一個(gè)DMA控制器可包含幾個(gè)通道uDMA控制器中控制寄存器和狀態(tài)寄存器為多個(gè)通道公用,但地址寄存器和計(jì)數(shù)器為每個(gè)通道獨(dú)立配備uDMA控制器初始化包括兩個(gè)方面:u數(shù)據(jù)傳輸緩沖區(qū)的起始地址或結(jié)束地址送往地址寄存器u傳輸?shù)淖止?jié)數(shù)、字?jǐn)?shù)或雙字?jǐn)?shù)送往字節(jié)計(jì)數(shù)器n1 DMA控制器概要控制器概要lDMA的傳送過程分5個(gè)階段:1. 1. 初始化階段初始化階段11 要傳送的數(shù)據(jù)字節(jié)數(shù) 數(shù)據(jù)在存儲(chǔ)器中的起始地址 傳送方向 DMAC的通道號(hào) DMAC 2. 2. 申請(qǐng)階段申請(qǐng)階段當(dāng)外設(shè)有DMA需求,并且已準(zhǔn)備就緒,則向DMA控制器發(fā)出DMA請(qǐng)求信號(hào)DREQ。D

6、MA控制器接收到DMA請(qǐng)求信號(hào)后,向CPU發(fā)出總線請(qǐng)求信號(hào)HRQ。該信號(hào)連接到CPU的HOLD信號(hào)。12 CPU DMAC 外部設(shè)備外部設(shè)備DREQHRQDMA的傳送過程分5個(gè)階段:3. 3. 響應(yīng)階段響應(yīng)階段CPU收到DMA的HRQ請(qǐng)求后,若允許DMA傳輸,則在當(dāng)前總線周期結(jié)束后,釋放總線控制權(quán),并向DMAC發(fā)HLDA信號(hào),通知其CPU已交出總線。13CPU檢測(cè)HRQHRQ有效且LOCK無(wú)效CPU交出總線CPU向DMAC發(fā)HLDAYNDMAC成為總線主控者成為總線主控者 DMA的傳送過程分5個(gè)階段:4. 4. 數(shù)據(jù)傳送階段數(shù)據(jù)傳送階段DMA控制器獲得總線的控制權(quán),向外設(shè)發(fā)送應(yīng)答信號(hào)DACK,

7、通知外設(shè)可以進(jìn)行DMA傳輸了。DMA控制器送出地址信號(hào)和控制信號(hào),實(shí)現(xiàn)外設(shè)與內(nèi)存的數(shù)據(jù)傳輸。14 外部設(shè)備 DMAC 存儲(chǔ)器 DACK地址信號(hào)讀寫信號(hào)DMA的傳送過程分5個(gè)階段:5. 5. 傳送結(jié)束階段傳送結(jié)束階段DMAC向外設(shè)發(fā)送EOP信號(hào),外設(shè)撤銷DREQ請(qǐng)求,同時(shí)HRQ和HLDA信號(hào) 變 為 無(wú) 效 ,DMAC釋放總線,CPU重獲總線控制權(quán)。15CPU重獲總線控制權(quán)重獲總線控制權(quán)DMAC向外設(shè)發(fā)EOP信號(hào)外設(shè)撤消DREQ信號(hào)HRQ和HLDA變?yōu)闊o(wú)效DMAC交出總線控制權(quán)DMA的傳送過程分5個(gè)階段:169.2 DMA控制器控制器8237A的原理的原理lDMA控制器的2種狀態(tài)n主動(dòng)工作態(tài):總

8、線主模塊 在主動(dòng)工作狀態(tài)下,DMAC取代處理器CPU,獲得了對(duì)系統(tǒng)總線的控制權(quán)總線的控制權(quán),成為系統(tǒng)總線的主控者,向存儲(chǔ)器和外設(shè)發(fā)號(hào)施令發(fā)號(hào)施令。n被動(dòng)工作態(tài):總線從模塊 在被動(dòng)工作狀態(tài)下,DMAC接受CPU對(duì)它的控制和指揮。例如:對(duì)DMAC進(jìn)行初始化編程以及從DMAC讀取狀態(tài)等。1. 8237A的編程結(jié)構(gòu)l2、DMA控制器8237A的基本特點(diǎn)n8237A是一個(gè)高性能通用可編程可編程DMAC。n具有4個(gè)獨(dú)立的通道,每個(gè)通道有16為的地址寄存器和字節(jié)計(jì)數(shù)器,還有8為的方式寄存器。4個(gè)通道公用控制寄存器和狀態(tài)寄存器。n8237A通過級(jí)聯(lián)方式進(jìn)行擴(kuò)充。最多可擴(kuò)展4個(gè)從片,即16個(gè)DMA通道。每個(gè)通道

9、可傳輸?shù)淖畲髷?shù)據(jù)塊均為64KB。n可實(shí)現(xiàn)內(nèi)存到外設(shè)、外設(shè)到內(nèi)存以及內(nèi)存到內(nèi)存之間的高速數(shù)據(jù)傳輸,最高數(shù)據(jù)傳輸速率可達(dá)1.6MB/s。n具有多種控制方式和操作類型。179.2 DMA控制器控制器8237A的原理的原理8237A的編程結(jié)構(gòu)和外部連接l控制寄存器l狀態(tài)寄存器l地址寄存器l字節(jié)計(jì)數(shù)器:字節(jié)數(shù)初值同時(shí)寫入基本字節(jié)計(jì)數(shù)器和當(dāng)前字節(jié)計(jì)數(shù)器,當(dāng)有0減為FFFF時(shí),產(chǎn)生EOP信號(hào)8237A的內(nèi)部有的內(nèi)部有10種不同類型的寄存器種不同類型的寄存器 名稱名稱位數(shù)位數(shù)數(shù)量數(shù)量功能功能當(dāng)前地址寄存器當(dāng)前地址寄存器16164 4保存保存在在DMA傳傳送期間的地址值,可讀寫送期間的地址值,可讀寫當(dāng)前字節(jié)計(jì)數(shù)

10、寄存器當(dāng)前字節(jié)計(jì)數(shù)寄存器16164 4保存當(dāng)前字節(jié)數(shù),初始值比實(shí)際值少保存當(dāng)前字節(jié)數(shù),初始值比實(shí)際值少1 1,可讀寫,可讀寫基地址寄存器基地址寄存器16164 4保存當(dāng)前地址寄存器的初始值,只能寫保存當(dāng)前地址寄存器的初始值,只能寫基字節(jié)計(jì)數(shù)寄存器基字節(jié)計(jì)數(shù)寄存器16164 4保存相應(yīng)通道當(dāng)前字節(jié)計(jì)數(shù)器的初值保存相應(yīng)通道當(dāng)前字節(jié)計(jì)數(shù)器的初值工作方式控制寄存器工作方式控制寄存器8 84 4保存相應(yīng)通道的方式控制字,由編程寫入保存相應(yīng)通道的方式控制字,由編程寫入命令寄存器命令寄存器8 81 1保存保存CPU發(fā)送的控制命令發(fā)送的控制命令狀態(tài)寄存器狀態(tài)寄存器8 81 1保存保存8237A各通道的現(xiàn)行狀態(tài)

11、各通道的現(xiàn)行狀態(tài)請(qǐng)求寄存器請(qǐng)求寄存器4 41 1保存各通道保存各通道的的DMA請(qǐng)求信號(hào)請(qǐng)求信號(hào)屏蔽寄存器屏蔽寄存器4 41 1用于選擇允許或禁止各通道用于選擇允許或禁止各通道的的DMA請(qǐng)求信號(hào)請(qǐng)求信號(hào)暫存寄存器暫存寄存器8 81 1暫存?zhèn)鬏敂?shù)據(jù),僅用于存儲(chǔ)器到存儲(chǔ)器的傳輸暫存?zhèn)鬏敂?shù)據(jù),僅用于存儲(chǔ)器到存儲(chǔ)器的傳輸l8237A-5外部特性n概況 40引腳雙列直插封裝。n引腳說明209.2 DMA控制器控制器8237A的原理的原理lCLKlCSlRESET lREADYlADSTBlAENlMEMR lMEMW lIOR lIOW8237A作為主模塊和從模塊時(shí),IOR和IOW的作用不同lEOPlDR

12、EQ lDACK lHRQlHLDA lA3A0 lA7A4 lDB7DB0傳輸結(jié)束信號(hào),雙向分8237A作為主模塊和從模塊兩種情況(1) 請(qǐng)求與應(yīng)答信號(hào)請(qǐng)求與應(yīng)答信號(hào)DREQ3 DREQ0:DMA通道請(qǐng)求輸入信號(hào)(由外設(shè)提供)。有效電平可高可低,由程序選定。 優(yōu)先級(jí):DREQ0最高, DREQ3最低。DACK3 DACK0:DMA響應(yīng)輸出信號(hào)(外接外設(shè))。有效電平可高可低,由程序選定。 8237A在同一個(gè)時(shí)間,只能有一個(gè)DACK應(yīng)答信號(hào)有效。HRQ:8237A-5向CPU發(fā)出的總線請(qǐng)求信號(hào),高電平有效。HLDA:CPU發(fā)給8237A-5的總線請(qǐng)求響應(yīng)信號(hào)。高電平有效。有效時(shí)表示CPU已讓出總

13、線。23 外部設(shè)備外部設(shè)備 DMAC DREQ CPU HRQHLDADACK9.2 DMA控制器控制器8237A的原理的原理2. 8237A的外部信號(hào)的外部信號(hào) (2)地址信號(hào)線)地址信號(hào)線A3 A0:地址線,雙向三態(tài)。l 被動(dòng)狀態(tài)下,為輸入,作為CPU對(duì)8237A內(nèi)部的16個(gè)寄存器與計(jì)數(shù)器尋址之用。l 主動(dòng)狀態(tài)下,為輸出,作為20位存儲(chǔ)器地址的最低4位。A7 A4:地址線,單向。l 主動(dòng)狀態(tài)下,為輸出。作為訪問20位存儲(chǔ)器地址低8位中的高4位。249.2 DMA控制器控制器8237A的原理的原理2. 8237A的外部信號(hào)的外部信號(hào) (3)數(shù)據(jù)信號(hào))數(shù)據(jù)信號(hào)DB7 DB0:地址數(shù)據(jù)復(fù)用線,雙

14、向三態(tài)。l被動(dòng)狀態(tài)下,為雙向數(shù)據(jù)線。用于CPU對(duì)8237A進(jìn)行初始化,或DMA傳輸結(jié)束后傳送狀態(tài)。l主動(dòng)狀態(tài)下,分時(shí)復(fù)用分時(shí)復(fù)用作為訪問存儲(chǔ)器的高8位地址線和數(shù)據(jù)線。在存儲(chǔ)器到存儲(chǔ)器傳送方式中,作為數(shù)據(jù)的輸入輸出端。259.2 DMA控制器控制器8237A的原理的原理2. 8237A的外部信號(hào)的外部信號(hào) (4)控制信號(hào))控制信號(hào)CS:片選信號(hào),低有效。被動(dòng)狀態(tài)下用于CPU對(duì)8237的尋址。CLK:控制芯片內(nèi)部操作和數(shù)據(jù)傳輸。RESET:輸入信號(hào),復(fù)位8237A。IOR/IOW:讀寫控制信號(hào)。l被動(dòng)狀態(tài)下,為輸入被動(dòng)狀態(tài)下,為輸入。用于CPU向DMAC寫命令或初始化參數(shù),或CPU讀取8237A內(nèi)

15、部寄存器狀態(tài)。l主動(dòng)狀態(tài)下,為輸出主動(dòng)狀態(tài)下,為輸出。對(duì)外設(shè)進(jìn)行讀寫。MEMR/MEMW:存儲(chǔ)器讀/寫信號(hào),單向輸出。當(dāng)8237A為主動(dòng)為主動(dòng)工作狀態(tài)時(shí),對(duì)存儲(chǔ)器進(jìn)行讀寫。269.2 DMA控制器控制器8237A的原理的原理2. 8237A的外部信號(hào)的外部信號(hào)ADSTB:地址選通信號(hào)。此信號(hào)有效時(shí),DMA控制器的當(dāng)前地址寄存器中的高8位地址通過DB0DB7送到外部鎖存器。AEN:地址允許。使地址鎖存器中的高8位地址送地址總線。READY:準(zhǔn)備就緒信號(hào)。低電平時(shí),8237A處于等待狀態(tài),高電平表示外設(shè)或存儲(chǔ)器準(zhǔn)備就緒。EOP:DMA傳輸過程結(jié)束信號(hào)。DMA傳送過程結(jié)束,則從EOP輸出一個(gè)低有效脈

16、沖。若從EOP輸入低脈沖信號(hào),則表明外部強(qiáng)制結(jié)束DMA傳送。279.2 DMA控制器控制器8237A的原理的原理(4 4)控制信號(hào))控制信號(hào)u作為作為從模塊從模塊工作時(shí)工作時(shí)l8237A用高12位地址產(chǎn)生片選信號(hào),用低4位來選擇內(nèi)部寄存器l用IOR和IOW作為讀/寫控制端l此時(shí)信號(hào)CS、HRQ、AEN均為低電平u作為作為主模塊主模塊工作時(shí)工作時(shí)l要訪問的內(nèi)存地址的低8位放在A7A0,地址高8位放在DB7DB0l信號(hào)AEN為高電平,兩個(gè)作用:將高8位地址送到A15A8,使與CPU相連的地址鎖存器無(wú)效l待訪問內(nèi)存地址A19A16不是從8237A得到,而是存放在另外的4位I/O端口3. 8237A工

17、作時(shí)各信號(hào)的配合工作時(shí)各信號(hào)的配合lDMA的傳送類型n數(shù)據(jù)傳送數(shù)據(jù)傳送:把源地址的數(shù)據(jù)傳送到目的地址去。DMA讀:把數(shù)據(jù)由存儲(chǔ)器傳送到外設(shè)。DMA寫:把外設(shè)輸入的數(shù)據(jù)寫入存儲(chǔ)器。存儲(chǔ)器與存儲(chǔ)器之間的傳遞。讀讀/寫操作均是針對(duì)存儲(chǔ)器而言。寫操作均是針對(duì)存儲(chǔ)器而言。n數(shù)據(jù)校驗(yàn)數(shù)據(jù)校驗(yàn):對(duì)數(shù)據(jù)塊內(nèi)的每個(gè)字節(jié)進(jìn)行校驗(yàn)。n數(shù)據(jù)檢索數(shù)據(jù)檢索:在指定的內(nèi)存區(qū)域內(nèi)查找某個(gè)關(guān)鍵字節(jié)或某幾個(gè)關(guān)鍵數(shù)據(jù)位是否存在,如果查到了,就停止檢索。8.3 8237A的工作方式和寄存器的工作方式和寄存器n單字節(jié)傳輸方式單字節(jié)傳輸方式每傳送一個(gè)字節(jié),字節(jié)計(jì)數(shù)器減1,地址寄存器加1或減1,8237A釋放系統(tǒng)總線;傳送下一個(gè)字節(jié)時(shí),若

18、DREQ回到有效電平,則可繼續(xù)發(fā)送總線請(qǐng)求特點(diǎn)CPU在每個(gè)DMA周期結(jié)束后立即控制總線。對(duì)系統(tǒng)影響不大。CPU和DMAC輪流控制系統(tǒng)總線,傳輸效率低。308.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器1. 8237A的工作方式和方式寄存器的工作方式和方式寄存器8237A的四種工作方式的四種工作方式允許 DMADMAC發(fā)總線請(qǐng)求CPU響應(yīng)DMA放棄總線DMAC控制傳一個(gè)字節(jié)放棄總線中斷請(qǐng)求DREQ有效電平NYYDMA請(qǐng)求?傳送結(jié)束否?n塊傳輸方式塊傳輸方式只要DMA一啟動(dòng),DMAC始終占用總始終占用總線線,直到數(shù)據(jù)傳送結(jié)束,或外部強(qiáng)制停止,才交出總線控制權(quán)。兩種結(jié)束方式:1、當(dāng)字

19、節(jié)計(jì)數(shù)器減為0時(shí),使EOP#信號(hào)有效;2、接口往EOP#端送入有效電平,8237A釋放總線。特點(diǎn)效率高。DMA傳輸期間CPU長(zhǎng)時(shí)間不能控制總線。若一次傳輸?shù)臄?shù)據(jù)較多,對(duì)系統(tǒng)會(huì)有一定響應(yīng)。31YNDMAC控制傳一個(gè)字節(jié)放棄總線中斷請(qǐng)求CPU 響應(yīng) DMA放棄總線DMAC發(fā)總線請(qǐng)求允許 DMADMA請(qǐng)求?塊結(jié)束?8237A的四種工作方式的四種工作方式8237A的工作方式和方式寄存器的工作方式和方式寄存器1. 8237A的工作方式和方式寄存器的工作方式和方式寄存器n請(qǐng)求傳輸方式請(qǐng)求傳輸方式當(dāng)8237A檢測(cè)到DREQ請(qǐng)求時(shí)就傳輸一字節(jié),當(dāng)DREQ 無(wú)效,或操作結(jié)束,或由外部送來結(jié)束信號(hào)EOP,DMAC

20、都會(huì)釋放總線,把總線控制權(quán)交還CPU。具體實(shí)現(xiàn):每傳完一個(gè)字節(jié),DMAC都會(huì)檢測(cè)外設(shè)的DREQ請(qǐng)求。若若DREQ無(wú)效,則馬上停止無(wú)效,則馬上停止DMA傳輸傳輸,將總線控制權(quán)交給CPU。特點(diǎn)實(shí)現(xiàn)靈活,DMA操作可由外設(shè)用DREQ信號(hào)控制發(fā)送過程。328237A的四種工作方式的四種工作方式8.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器1. 8237A的工作方式和方式寄存器的工作方式和方式寄存器33允許DMADMAC發(fā)出總線請(qǐng)求CPU響應(yīng)DMA放棄總線DMAC控制傳一個(gè)字節(jié)放棄總線中斷請(qǐng)求YY放棄總線NNYDMA請(qǐng)求?塊結(jié)束?DMA請(qǐng)求?Nn請(qǐng)求傳輸方式流程圖請(qǐng)求傳輸方式流程圖343

21、 8237A 的工作方式和寄存器 工作方式和方式寄存器1. 單字節(jié)傳輸方式每傳送一個(gè)字節(jié),便釋放系統(tǒng)總線;若DREQ回到有效電平,則可繼續(xù)發(fā)送總線請(qǐng)求2. 塊傳輸方式可連續(xù)傳送多個(gè)字節(jié)。兩種結(jié)束方式:當(dāng)字節(jié)計(jì)數(shù)器減為0時(shí),使EOP信號(hào)有效;接口往EOP端送入有效電平,8237A釋放總線3. 請(qǐng)求傳輸方式每傳送1個(gè)字節(jié),則對(duì)DREQ端進(jìn)行測(cè)試。若DREQ端為無(wú)效電平,則暫停傳送,但仍繼續(xù)測(cè)試n級(jí)聯(lián)傳輸方式級(jí)聯(lián)傳輸方式將多個(gè)DMAC連在一起,一個(gè)為主,其余為從。從片收到外設(shè)的DMA請(qǐng)求后,不是向CPU申請(qǐng)總線,而是從片向主片申請(qǐng),再由主片向CPU申請(qǐng)。358237A的四種工作方式的四種工作方式9.

22、3 8237A的工作方式和方式寄存器的工作方式和方式寄存器1. 8237A的工作方式和方式寄存器的工作方式和方式寄存器368237A的方式寄存器的方式寄存器8.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器1. 8237A的工作方式和方式寄存器的工作方式和方式寄存器當(dāng)計(jì)數(shù)值到達(dá)0時(shí),當(dāng)前地址寄存器和當(dāng)前字節(jié)計(jì)數(shù)器會(huì)從基址寄存器和基本字節(jié)計(jì)數(shù)器中重新取得初值,進(jìn)入下一個(gè)數(shù)據(jù)傳輸過程從內(nèi)存的角度來看待內(nèi)存與外設(shè)之間的傳輸請(qǐng)思考請(qǐng)思考:PC系列軟盤讀寫操作選擇系列軟盤讀寫操作選擇DMA通道通道2,單字節(jié),單字節(jié)傳送,地址增傳送,地址增1,不用自動(dòng)預(yù)置,其寫、讀、校驗(yàn)操作,不用自動(dòng)預(yù)置,其

23、寫、讀、校驗(yàn)操作的方式字用的方式字用16進(jìn)制表示進(jìn)制表示分別是多少分別是多少?l寫操作:寫操作:01000110 = 46H。l讀操作:讀操作:01001010 = 4AH。l校驗(yàn)操作:校驗(yàn)操作:01000010 = 42H。9.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器9.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器2. 8237A的控制寄存器和有關(guān)問題的控制寄存器和有關(guān)問題 (1) 8237A控制寄存器(只寫)控制寄存器(只寫)通道通道0的地址寄存器的地址寄存器存放存放源源地址,地址,通道通道1的的地址地址寄存器和寄存器和字字節(jié)計(jì)數(shù)器節(jié)計(jì)數(shù)器存放存放目的目的地

24、址和計(jì)數(shù)值地址和計(jì)數(shù)值將將IOW和和MEMW信號(hào)的負(fù)脈沖加寬信號(hào)的負(fù)脈沖加寬,并,并提前發(fā)出,使提前發(fā)出,使READY信號(hào)早些信號(hào)早些到來到來普通:傳輸普通:傳輸1個(gè)字節(jié)個(gè)字節(jié)3個(gè)時(shí)鐘;個(gè)時(shí)鐘;壓縮:傳輸壓縮:傳輸1個(gè)字節(jié)個(gè)字節(jié)2個(gè)時(shí)鐘。個(gè)時(shí)鐘。D7、D6:決定DREQ和DACK的有效電平。D5:擴(kuò)展寫和不擴(kuò)展寫lD5=1:擴(kuò)展寫信號(hào),表示寫脈沖加寬。lD5=0:不擴(kuò)展寫信號(hào),表示正常時(shí)序。D4:控制通道的優(yōu)先權(quán)l(xiāng)D4=0:采用固定優(yōu)先級(jí),DREQ0最高,DREQ3最低。lD4=1:采用循環(huán)優(yōu)先級(jí)。已服務(wù)過的通道優(yōu)先權(quán)變?yōu)樽畹?,其下一個(gè)通道優(yōu)先權(quán)變?yōu)樽罡摺?99.3 8237A的工作方式和方式

25、寄存器的工作方式和方式寄存器2. 8237A的控制寄存器和有關(guān)問題的控制寄存器和有關(guān)問題 (1) 8237A控制寄存器(只寫)控制寄存器(只寫)409.3.2 8237A的控制寄存器和有關(guān)問題的控制寄存器和有關(guān)問題 D3:時(shí)序類型lD3=0:普通時(shí)序普通時(shí)序,每傳輸一個(gè)字節(jié)需要3個(gè)時(shí)鐘周期。lD3=1:壓縮時(shí)序壓縮時(shí)序,每傳輸一個(gè)字節(jié)需要2個(gè)時(shí)鐘周期。 D2:?jiǎn)?dòng)和停止8237A的工作。lD2=0:?jiǎn)?dòng);D2=1:停止。l該位影響所有的通道 D1:通道0地址保持。用于內(nèi)存到內(nèi)存的傳輸。lD1=0:不保持。D1=1:保持。l配合D0位使用。D0:允許和禁止內(nèi)存到內(nèi)存內(nèi)存到內(nèi)存?zhèn)鬏?。lD0=1:允

26、許。D0=0:禁止。l在實(shí)現(xiàn)內(nèi)存到內(nèi)存的傳輸時(shí),需把源數(shù)據(jù)先送到源數(shù)據(jù)先送到8237的暫存器暫存器中,然后再送到目的區(qū)目的區(qū)。這時(shí),用通道通道0的地址寄存器存放源地址存放源地址,用通道通道1的地址寄存器和字節(jié)計(jì)數(shù)器存放目的地址和計(jì)數(shù)值目的地址和計(jì)數(shù)值。41低4位表示哪些DMA通道傳送結(jié)束傳送結(jié)束。高4位表示哪些通道有DMA請(qǐng)求還未處理還未處理。狀態(tài)位在復(fù)位或被讀出后,均被清零。429.3.3 8237A的狀態(tài)寄存器的格式的狀態(tài)寄存器的格式(1)請(qǐng)求標(biāo)志和請(qǐng)求寄存器(只寫)請(qǐng)求標(biāo)志和請(qǐng)求寄存器(只寫)n產(chǎn)生DMA請(qǐng)求的兩種方式:l硬件方法:通過DREQ引腳引入DMA請(qǐng)求l軟件方法:通過請(qǐng)求寄存器

27、設(shè)置DMA請(qǐng)求標(biāo)志n若是內(nèi)存到內(nèi)存內(nèi)存到內(nèi)存?zhèn)鬏敚瑒t必須由軟件請(qǐng)求啟動(dòng)通道0。n僅適用于塊傳輸方式,傳送結(jié)束信號(hào)EOP自動(dòng)清除自動(dòng)清除請(qǐng)求位。439.3.4 8237A的請(qǐng)求標(biāo)志、屏蔽標(biāo)的請(qǐng)求標(biāo)志、屏蔽標(biāo)志和復(fù)位命令志和復(fù)位命令(2)屏蔽寄存器(只寫)屏蔽寄存器(只寫)用來禁止或允許通道的DMA請(qǐng)求。各通道相互獨(dú)立。復(fù)位使4個(gè)通道全被屏蔽屏蔽。有單屏蔽寄存器單屏蔽寄存器和和全屏蔽寄存器全屏蔽寄存器兩種形式:?jiǎn)瓮ǖ绬瓮ǖ榔帘渭拇嫫鳎好看沃荒芷帘我粋€(gè)通道。449.3.4 8237A的請(qǐng)求標(biāo)志、屏蔽標(biāo)的請(qǐng)求標(biāo)志、屏蔽標(biāo)志和復(fù)位命令志和復(fù)位命令四通道四通道屏蔽寄存器(全屏蔽寄存器):可同時(shí)屏蔽4個(gè)通道。低4位全部置1,則屏蔽屏蔽所有的DMA請(qǐng)求。低4位全部置0,則允許允許所有的DMA請(qǐng)求。459.3 8237A的工作方式和方式寄存器的工作方式和方式寄存器4. 8237A的請(qǐng)求標(biāo)志、屏蔽標(biāo)志和復(fù)位命令的請(qǐng)求標(biāo)志、屏蔽標(biāo)志和復(fù)位命令(2)屏蔽標(biāo)志和屏蔽寄存器)屏蔽標(biāo)志和屏蔽寄存器【例】為了在每次軟盤讀/寫操作時(shí),進(jìn)行DMA初始化都必須開放通道2,以便響應(yīng)軟盤的DMA請(qǐng)求,可采用下述兩種方法之一來實(shí)現(xiàn)。(已知單通道屏蔽寄存器和4通道屏蔽寄存器對(duì)應(yīng)的地址分別為0AH和

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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)論