微機(jī)原理Comp9.3_第1頁
微機(jī)原理Comp9.3_第2頁
微機(jī)原理Comp9.3_第3頁
微機(jī)原理Comp9.3_第4頁
微機(jī)原理Comp9.3_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、9.3 9.3 可編程可編程DMADMA控制器控制器8237A教學(xué)重點(diǎn)教學(xué)重點(diǎn)n 8237A的工作方式的工作方式n 8237A寄存器組的作用寄存器組的作用n 8237A寄存器組的編程寄存器組的編程n每個(gè)每個(gè)8237A芯片有芯片有4個(gè)個(gè)DMA通道,就是有通道,就是有4個(gè)個(gè)DMA控制器控制器n每個(gè)每個(gè)DMA通道具有不同的優(yōu)先權(quán)通道具有不同的優(yōu)先權(quán)n每個(gè)每個(gè)DMA通道可以分別允許和禁止通道可以分別允許和禁止n每個(gè)每個(gè)DMA通道有通道有4種工作方式種工作方式n一次傳送的最大長度可達(dá)一次傳送的最大長度可達(dá)64KBn多個(gè)多個(gè)8237A芯片可以級連,擴(kuò)展通道數(shù)芯片可以級連,擴(kuò)展通道數(shù)9.3.1 8237A的

2、內(nèi)部結(jié)構(gòu)和引腳n內(nèi)部結(jié)構(gòu)和外部引腳都相對比較復(fù)雜內(nèi)部結(jié)構(gòu)和外部引腳都相對比較復(fù)雜n應(yīng)用觀點(diǎn),內(nèi)部主要由兩類寄存器組成應(yīng)用觀點(diǎn),內(nèi)部主要由兩類寄存器組成n通道寄存器通道寄存器n控制和狀態(tài)寄存器控制和狀態(tài)寄存器EOP NCDREQ3DREQ2DREQ1DREQ01. 請求與響應(yīng)信號nDREQ0DREQ0DREQ3 DREQ3 :DMADMA通道請求。當(dāng)外設(shè)需要請求通道請求。當(dāng)外設(shè)需要請求DMADMA服務(wù)時(shí)服務(wù)時(shí), ,將將DRQDRQ信號置成有效電平信號置成有效電平, ,并要保持到并要保持到產(chǎn)生響應(yīng)信號。產(chǎn)生響應(yīng)信號。nDACK0DACK0DACK3DACK3:DMADMA通道響應(yīng)。通道響應(yīng)。823

3、7A8237A使請求服務(wù)使請求服務(wù)的通道產(chǎn)生相應(yīng)的的通道產(chǎn)生相應(yīng)的DMADMA響應(yīng)信號。響應(yīng)信號。nHRQHRQ:保持總線請求:保持總線請求, ,輸出輸出, ,高電平有效。高電平有效。8237A8237A輸輸出有效的出有效的HRQHRQ高電平高電平, ,向向CPUCPU申請使用系統(tǒng)總線。申請使用系統(tǒng)總線。nHLDAHLDA:保持總線響應(yīng):保持總線響應(yīng), ,輸入輸入, ,高電平有效。高電平有效。8237A8237A接接受來自受來自CPUCPU的響應(yīng)信號的響應(yīng)信號HLDAHLDA,取得了總線的控制權(quán)。,取得了總線的控制權(quán)。2. DMA傳送控制信號n A A3 3A A0 0輸入輸入/ /輸出地址線

4、。輸出地址線。當(dāng)當(dāng)8237A8237A處于從屬狀態(tài)時(shí),這是由處于從屬狀態(tài)時(shí),這是由CPUCPU向向8237A8237A輸入輸入的低的低4 4位地址碼,用來尋址位地址碼,用來尋址8237A8237A中的某個(gè)端口。中的某個(gè)端口。當(dāng)當(dāng)8237A8237A處于主控狀態(tài)時(shí),這是處于主控狀態(tài)時(shí),這是8237A8237A向存儲(chǔ)器輸向存儲(chǔ)器輸出的低出的低4 4位地址碼。位地址碼。n A4A4A7A7:地址輸出線。輸出低:地址輸出線。輸出低4 4位存儲(chǔ)器地址位存儲(chǔ)器地址2. DMA傳送控制信號nA0A0A7A7:地址線。輸出低:地址線。輸出低8 8位存儲(chǔ)器地址。位存儲(chǔ)器地址。nDB0DB0DB7DB7:雙向數(shù)據(jù)

5、線。輸出高:雙向數(shù)據(jù)線。輸出高8 8位存儲(chǔ)器地址;存位存儲(chǔ)器地址;存貯器與存貯器的傳送期間,用于數(shù)據(jù)傳送。貯器與存貯器的傳送期間,用于數(shù)據(jù)傳送。nADSTBADSTB:地址選通信號:地址選通信號, ,輸出輸出, ,高電平有效。高電平有效。DMADMA傳送傳送開始時(shí)開始時(shí), ,輸出高有效輸出高有效, ,把在把在DB0DB0DB7DB7上輸出的高上輸出的高8 8位地位地址鎖存在外部址鎖存在外部82128212鎖存器中鎖存器中, ,用作用作8212 STB8212 STB的選通信的選通信號。號。nAENAEN:地址允許:地址允許, ,輸出輸出, ,高電平有效。將鎖存的高高電平有效。將鎖存的高8 8位

6、地位地址送入系統(tǒng)總線址送入系統(tǒng)總線, ,與芯片此時(shí)輸出的低與芯片此時(shí)輸出的低8 8位地址組成位地址組成1616位存儲(chǔ)器地址。同時(shí)可用它去封鎖位存儲(chǔ)器地址。同時(shí)可用它去封鎖CPUCPU使用低使用低8 8位數(shù)據(jù)位數(shù)據(jù)總線和控制總線??偩€和控制總線。2. DMA傳送控制信號(續(xù))nIORIOR* *:輸入:輸入/ /輸出讀控制信號輸出讀控制信號, ,雙向三態(tài)雙向三態(tài), ,低電平有效。低電平有效。當(dāng)當(dāng)8237A8237A處于處于從屬從屬狀態(tài)時(shí)狀態(tài)時(shí),I/OR,I/OR為輸入線為輸入線, ,是是CPUCPU向向8237A8237A發(fā)發(fā)出的讀命令出的讀命令, ,可讀取可讀取8237A8237A中某個(gè)通道內(nèi)

7、某個(gè)寄存器的內(nèi)容。中某個(gè)通道內(nèi)某個(gè)寄存器的內(nèi)容。當(dāng)當(dāng)8237A8237A處于處于主控主控狀態(tài)時(shí)狀態(tài)時(shí),I/OR,I/OR為輸出線為輸出線, ,是是8237A8237A向外部設(shè)向外部設(shè)備發(fā)出的讀命令,可從外部設(shè)備中讀取數(shù)據(jù)。備發(fā)出的讀命令,可從外部設(shè)備中讀取數(shù)據(jù)。nIOWIOW* *:輸入:輸入/ /輸出寫控制信號輸出寫控制信號, ,雙向、三態(tài)雙向、三態(tài), ,低電平有效低電平有效當(dāng)當(dāng)8237A8237A處于從屬狀態(tài)時(shí)處于從屬狀態(tài)時(shí),I/OW,I/OW為輸入線為輸入線, ,是是CPUCPU向向8237A8237A發(fā)發(fā)出的寫命令,可向出的寫命令,可向8237A8237A寫入控制字或通道數(shù)據(jù)。寫入控制

8、字或通道數(shù)據(jù)。當(dāng)當(dāng)8237A8237A處于主控狀態(tài)時(shí)處于主控狀態(tài)時(shí),I/OW,I/OW為輸出線為輸出線, ,是是8237A8237A向外部設(shè)向外部設(shè)備發(fā)出的寫命令備發(fā)出的寫命令, ,可向外部設(shè)備寫入數(shù)據(jù)。可向外部設(shè)備寫入數(shù)據(jù)。 。2. DMA傳送控制信號(續(xù))nMEMRMEMR* *:存儲(chǔ)器讀:存儲(chǔ)器讀, ,三態(tài)輸出三態(tài)輸出, ,低電平有效。有效將數(shù)據(jù)從低電平有效。有效將數(shù)據(jù)從存儲(chǔ)器讀出。存儲(chǔ)器讀出。nMEMWMEMW* *:存儲(chǔ)器寫:存儲(chǔ)器寫, ,三態(tài)輸出三態(tài)輸出, ,低電平有效。有效將數(shù)據(jù)寫低電平有效。有效將數(shù)據(jù)寫入存儲(chǔ)器入存儲(chǔ)器nREADYREADY:準(zhǔn)備好。輸入,高電平有效。:準(zhǔn)備好。

9、輸入,高電平有效。 DMADMA傳送的傳送的S3S3下降下降沿檢測到為低時(shí),插入等待狀態(tài)沿檢測到為低時(shí),插入等待狀態(tài)SwSw,直到,直到READYREADY為高才進(jìn)為高才進(jìn)入第入第4 4個(gè)時(shí)鐘周期個(gè)時(shí)鐘周期S4S4。nEOP*:過程結(jié)束。:過程結(jié)束。DMA傳送過程結(jié)束,輸出一個(gè)低有效脈傳送過程結(jié)束,輸出一個(gè)低有效脈沖。外部輸入低脈沖信號,則終結(jié)沖。外部輸入低脈沖信號,則終結(jié)DMA傳送。傳送。3. 處理器接口信號nDB0DB0DB7DB7:數(shù)據(jù)線。用于:數(shù)據(jù)線。用于8237A8237A與微處理器進(jìn)行數(shù)與微處理器進(jìn)行數(shù)據(jù)交換。據(jù)交換。nA0A0A3A3:地址線。用以選擇芯片內(nèi)部寄存器。:地址線。用

10、以選擇芯片內(nèi)部寄存器。nCSCS* *:片選。低有效時(shí),微處理器與:片選。低有效時(shí),微處理器與8237A8237A通過數(shù)據(jù)通過數(shù)據(jù)線通信,主要完成對線通信,主要完成對8237A8237A的編程。的編程。nIORIOR* *:I/OI/O讀。讀取讀。讀取8237A8237A內(nèi)部寄存器。內(nèi)部寄存器。nIOWIOW* *:I/OI/O寫。寫入寫。寫入8237A8237A內(nèi)部寄存器。內(nèi)部寄存器。nCLKCLK:時(shí)鐘輸入。用來確定:時(shí)鐘輸入。用來確定8237A8237A的工作速率。的工作速率。nRESETRESET:復(fù)位。輸入:復(fù)位。輸入, ,高電平有效。高電平有效。RESETRESET有效時(shí),有效時(shí),

11、清除所有寄存器的內(nèi)容,控制線浮空,禁止清除所有寄存器的內(nèi)容,控制線浮空,禁止DMADMA操操作,復(fù)位之后,必須重新初始化,作,復(fù)位之后,必須重新初始化,8237A8237A才能工作。才能工作。8237A的兩種工作狀態(tài)n8237A具有兩種工作狀態(tài)具有兩種工作狀態(tài)n空閑周期空閑周期:作為接口電路,受作為接口電路,受CPU控制的工作狀態(tài)控制的工作狀態(tài)n有效周期有效周期:作為作為DMAC控制控制DMA傳送的工作狀態(tài)傳送的工作狀態(tài)于是,引腳分成兩種作用于是,引腳分成兩種作用8237A引腳的兩種作用與與CPU連接連接(空閑周期)的引腳(空閑周期)的引腳與外設(shè)連接與外設(shè)連接(有效周期)的引腳(有效周期)的引

12、腳CLK、RESETA0A3、CS*、DB0DB7IOR*、IOW*HRQ、HLDAAEN、ADSTB、READY、EOP*A0A7、DB0DB7IOR*、IOW*、MEMR*、MEMW*DREQ0DREQ3、DACK0DACK39.3.2 8237A的工作時(shí)序空閑周期n8237A的任一通道都沒有的任一通道都沒有DMA請求時(shí)請求時(shí)n8237A由微處理器控制作為一個(gè)接口芯片由微處理器控制作為一個(gè)接口芯片nCPU可可對對8237A編程,或從編程,或從8237A讀取狀態(tài)讀取狀態(tài)n8237A采樣采樣CS*選片信號,該信號有效,選片信號,該信號有效,CPU就就要對要對8237A進(jìn)行讀進(jìn)行讀/寫操作寫操作

13、n8237A還還采樣通道的請求輸入信號采樣通道的請求輸入信號DREQ ,該,該信號有效,就進(jìn)入有效周期信號有效,就進(jìn)入有效周期9.3.2 8237A的工作時(shí)序有效周期n8237A采樣到外設(shè)有采樣到外設(shè)有DMA請求,就脫離空閑周期請求,就脫離空閑周期進(jìn)入有效周期進(jìn)入有效周期n8237A作為系統(tǒng)的主控芯片,控制作為系統(tǒng)的主控芯片,控制DMA傳送操作傳送操作nDMA傳送借用系統(tǒng)總線完成,其控制信號以及工傳送借用系統(tǒng)總線完成,其控制信號以及工作時(shí)序類似作時(shí)序類似CPU總線周期總線周期DMA傳送時(shí)序DB0DB7DACKADSTBHRQDREQCLKS1S0S0SiSiS3S2S4S3S2SiSiS4HL

14、DAAENA0A7 MEMR(IOR)IOW(MEMW)S1狀態(tài)狀態(tài)輸出輸出16位存儲(chǔ)器地址位存儲(chǔ)器地址AEN輸出高電平,表示輸出高電平,表示DMA傳送傳送S2狀態(tài)狀態(tài)輸出輸出DMA響應(yīng)信號和控制信號響應(yīng)信號和控制信號DMA讀:讀:MEMR*和和IOW*有效有效DMA寫:寫:IOR*和和MEMW*有效有效S3和和Sw狀態(tài)狀態(tài)檢測數(shù)據(jù)傳送是否能夠完檢測數(shù)據(jù)傳送是否能夠完成,決定是否插入等待狀態(tài)成,決定是否插入等待狀態(tài)SwS4狀態(tài)狀態(tài)完成數(shù)據(jù)傳送完成數(shù)據(jù)傳送通道請求總線請求總線響應(yīng)地址允許地址選通通道響應(yīng)讀寫存儲(chǔ)器cpu讀寫9.3.3 8237A的工作方式nDMA傳送方式傳送方式 單字節(jié)傳送方式單

15、字節(jié)傳送方式 數(shù)據(jù)塊傳送方式數(shù)據(jù)塊傳送方式 請求傳送方式請求傳送方式 級連方式級連方式nDMA傳送類型傳送類型 DMA讀讀 DMA寫寫 DMA檢驗(yàn)檢驗(yàn)n存儲(chǔ)器到存儲(chǔ)器的傳送存儲(chǔ)器到存儲(chǔ)器的傳送1. DMA傳送單字節(jié)方式n每次每次DMA傳送時(shí)僅傳送一個(gè)字節(jié)傳送時(shí)僅傳送一個(gè)字節(jié)n傳送一個(gè)字節(jié)之后,字節(jié)數(shù)寄存器減傳送一個(gè)字節(jié)之后,字節(jié)數(shù)寄存器減1,地址,地址寄存器加寄存器加1或減或減1,HRQ變?yōu)闊o效變?yōu)闊o效n8237A釋放系統(tǒng)總線,將控制權(quán)還給釋放系統(tǒng)總線,將控制權(quán)還給CPUn若傳送后使字節(jié)數(shù)從若傳送后使字節(jié)數(shù)從0減到減到FFFFH,則終結(jié),則終結(jié)DMA傳送或重新初始化傳送或重新初始化n特點(diǎn):特點(diǎn)

16、:n一次傳送一個(gè)字節(jié),效率略低一次傳送一個(gè)字節(jié),效率略低nDMA傳送之間傳送之間CPU有機(jī)會(huì)重新獲取總線控制權(quán)有機(jī)會(huì)重新獲取總線控制權(quán)1. DMA傳送數(shù)據(jù)塊方式n由由DRQ啟動(dòng)就連續(xù)地傳送數(shù)據(jù),直到字節(jié)啟動(dòng)就連續(xù)地傳送數(shù)據(jù),直到字節(jié)數(shù)寄存器從數(shù)寄存器從0減到減到FFFFH終止計(jì)數(shù),或由外終止計(jì)數(shù),或由外部輸入有效信號終結(jié)部輸入有效信號終結(jié)DMA傳送傳送nDREQ只需維持有效到只需維持有效到DACK有效有效n特點(diǎn):特點(diǎn):n一次請求傳送一個(gè)數(shù)據(jù)塊,效率高一次請求傳送一個(gè)數(shù)據(jù)塊,效率高n整個(gè)整個(gè)DMA傳送期間傳送期間CPU長時(shí)間無法控制總線長時(shí)間無法控制總線(無法響應(yīng)其他(無法響應(yīng)其他DMA請求、無

17、法處理中斷等)請求、無法處理中斷等)1. DMA傳送請求方式nDREQ信號有效就連續(xù)傳送數(shù)據(jù)信號有效就連續(xù)傳送數(shù)據(jù)nDREQ信號無效,信號無效,DMA傳送被暫時(shí)中止,傳送被暫時(shí)中止,8237A釋放總線,釋放總線,CPU可繼續(xù)操作可繼續(xù)操作nDMA通道的地址和字節(jié)數(shù)的中間值仍被保持通道的地址和字節(jié)數(shù)的中間值仍被保持nDREQ信號再次有效,信號再次有效,DMA傳送就繼續(xù)進(jìn)行傳送就繼續(xù)進(jìn)行n如果字節(jié)數(shù)寄存器從如果字節(jié)數(shù)寄存器從0減到減到FFFFH,或者由外,或者由外部送來一個(gè)有效的信號,將終止計(jì)數(shù)部送來一個(gè)有效的信號,將終止計(jì)數(shù)n特點(diǎn):特點(diǎn):nDMA操作可由外設(shè)利用操作可由外設(shè)利用DREQ信號控制傳

18、送的過程信號控制傳送的過程1. DMA傳送級連方式n用于通過多個(gè)用于通過多個(gè)8237A級連以擴(kuò)展通道級連以擴(kuò)展通道n第二級的第二級的HRQ和和HLDA信號連到第一級某信號連到第一級某個(gè)通道的個(gè)通道的DREQ和和DACK上上n第二級芯片的優(yōu)先權(quán)等級與所連通道的優(yōu)第二級芯片的優(yōu)先權(quán)等級與所連通道的優(yōu)先權(quán)相對應(yīng)先權(quán)相對應(yīng)n第一級只起優(yōu)先權(quán)網(wǎng)絡(luò)的作用,實(shí)際的操第一級只起優(yōu)先權(quán)網(wǎng)絡(luò)的作用,實(shí)際的操作由第二級芯片完成作由第二級芯片完成n還可由第二級擴(kuò)展到第三級等還可由第二級擴(kuò)展到第三級等2. DMA傳送類型nDMA讀讀把數(shù)據(jù)由存儲(chǔ)器傳送到外設(shè)把數(shù)據(jù)由存儲(chǔ)器傳送到外設(shè)n由由MEMR*有效從存儲(chǔ)器讀出數(shù)據(jù),由

19、有效從存儲(chǔ)器讀出數(shù)據(jù),由IOW*有效有效把這一數(shù)據(jù)寫入外設(shè)把這一數(shù)據(jù)寫入外設(shè)nDMA寫寫把外設(shè)輸入的數(shù)據(jù)寫入存儲(chǔ)器把外設(shè)輸入的數(shù)據(jù)寫入存儲(chǔ)器n由由IOR*有效從外設(shè)輸入數(shù)據(jù),由有效從外設(shè)輸入數(shù)據(jù),由MEMW*有效把有效把這一數(shù)據(jù)寫入存儲(chǔ)器。這一數(shù)據(jù)寫入存儲(chǔ)器。nDMA檢驗(yàn)檢驗(yàn)空操作空操作n8237A不進(jìn)行任何檢驗(yàn)不進(jìn)行任何檢驗(yàn)n外設(shè)可以進(jìn)行外設(shè)可以進(jìn)行DMA校驗(yàn)校驗(yàn)n存儲(chǔ)器和存儲(chǔ)器和I/O控制線保持無效,不進(jìn)行傳送控制線保持無效,不進(jìn)行傳送3. 存儲(chǔ)器到存儲(chǔ)器的傳送n固定使用通道固定使用通道0和通道和通道1n通道通道0的地址寄存器的地址寄存器存存源區(qū)源區(qū)地址地址n通道通道1的地址寄存器的地址寄

20、存器存存目的目的區(qū)地址,通道區(qū)地址,通道1的的字節(jié)數(shù)寄存器存?zhèn)魉偷淖止?jié)數(shù)字節(jié)數(shù)寄存器存?zhèn)魉偷淖止?jié)數(shù)n傳送由設(shè)置通道傳送由設(shè)置通道0的軟件請求啟動(dòng)的軟件請求啟動(dòng)n每傳送一字節(jié)需用每傳送一字節(jié)需用8個(gè)時(shí)鐘周期個(gè)時(shí)鐘周期n前前4個(gè)時(shí)鐘周期用通道個(gè)時(shí)鐘周期用通道0地址寄存器的地址從源區(qū)讀地址寄存器的地址從源區(qū)讀數(shù)據(jù)送入數(shù)據(jù)送入8237A的臨時(shí)寄存器的臨時(shí)寄存器n后后4個(gè)時(shí)鐘周期用通道個(gè)時(shí)鐘周期用通道1地址寄存器的地址把臨時(shí)寄地址寄存器的地址把臨時(shí)寄存器中的數(shù)據(jù)寫入目的區(qū)存器中的數(shù)據(jù)寫入目的區(qū)4. DMA通道的優(yōu)先權(quán)方式n固定優(yōu)先權(quán)方式固定優(yōu)先權(quán)方式優(yōu)先權(quán)固定優(yōu)先權(quán)固定n通道通道0優(yōu)先權(quán)最高,通道優(yōu)先權(quán)

21、最高,通道1其次,通道其次,通道2再次,再次,通道通道3最低最低n循環(huán)優(yōu)先權(quán)方式循環(huán)優(yōu)先權(quán)方式優(yōu)先權(quán)循環(huán)變化優(yōu)先權(quán)循環(huán)變化n最近一次服務(wù)的通道在下次循環(huán)中變成最低最近一次服務(wù)的通道在下次循環(huán)中變成最低優(yōu)先權(quán),其他通道依次輪流相應(yīng)的優(yōu)先權(quán)優(yōu)先權(quán),其他通道依次輪流相應(yīng)的優(yōu)先權(quán)DMADMA傳送不存在嵌套傳送不存在嵌套5. 自動(dòng)初始化方式n每當(dāng)每當(dāng)DMA過程結(jié)束時(shí)產(chǎn)生信號過程結(jié)束時(shí)產(chǎn)生信號EOP*(不論是內(nèi)部終止計(jì)數(shù)還是外部輸入該(不論是內(nèi)部終止計(jì)數(shù)還是外部輸入該信號)信號)n用基地址寄存器和基字節(jié)數(shù)寄存器的內(nèi)用基地址寄存器和基字節(jié)數(shù)寄存器的內(nèi)容,使相應(yīng)的現(xiàn)行寄存器恢復(fù)為初始值,容,使相應(yīng)的現(xiàn)行寄存器

22、恢復(fù)為初始值,包括恢復(fù)屏蔽位、允許包括恢復(fù)屏蔽位、允許DMA請求請求n這樣就作好了下一次這樣就作好了下一次DMA傳送的準(zhǔn)備傳送的準(zhǔn)備9.3.4 8237A的寄存器n8237A共有共有10種內(nèi)部寄存器,對它們的種內(nèi)部寄存器,對它們的操作有時(shí)需要配合操作有時(shí)需要配合3個(gè)軟件命令個(gè)軟件命令n8237A的的“軟件命令軟件命令”n不需要通過數(shù)據(jù)總線寫入控制字不需要通過數(shù)據(jù)總線寫入控制字n直接由地址和控制信號譯碼實(shí)現(xiàn)直接由地址和控制信號譯碼實(shí)現(xiàn)全部都用地址全部都用地址A A0 0A A3 3區(qū)分區(qū)分1. 現(xiàn)行地址寄存器n保持保持DMA傳送的當(dāng)前地址值傳送的當(dāng)前地址值n每次傳送后該寄存器的值自動(dòng)加每次傳送后

23、該寄存器的值自動(dòng)加1或減或減1n這個(gè)寄存器的值可由這個(gè)寄存器的值可由CPU寫入和讀出寫入和讀出基地址寄存器基地址寄存器存放存放初始值初始值2. 現(xiàn)行字節(jié)數(shù)寄存器n保持保持DMA傳送的剩余字節(jié)數(shù)傳送的剩余字節(jié)數(shù)n每次傳送后,該寄存器的值減每次傳送后,該寄存器的值減1n這個(gè)寄存器的值可由這個(gè)寄存器的值可由CPU寫入和讀出寫入和讀出n該寄存器的值減至該寄存器的值減至0,再減,再減1(從(從0減到減到FFFFH)時(shí),終止計(jì)數(shù))時(shí),終止計(jì)數(shù)基字節(jié)數(shù)寄存器基字節(jié)數(shù)寄存器存放存放初始值初始值傳送傳送N N個(gè)字節(jié),個(gè)字節(jié),初始值初始值為為N N1 1讀寫通道寄存器nCPU與與8237A之間通過之間通過8位數(shù)據(jù)

24、總線交位數(shù)據(jù)總線交換信息,換信息,8237A的通道寄存器均為的通道寄存器均為16位位n需要兩次讀寫操作才能實(shí)現(xiàn)需要兩次讀寫操作才能實(shí)現(xiàn)CPU與與8237A之間的一個(gè)完整數(shù)據(jù)的交換之間的一個(gè)完整數(shù)據(jù)的交換n8237A內(nèi)含一個(gè)內(nèi)含一個(gè)高高/低觸發(fā)器低觸發(fā)器,用來控,用來控制讀寫通道寄存器的高、低字節(jié)制讀寫通道寄存器的高、低字節(jié)高/低觸發(fā)器n該觸發(fā)器為該觸發(fā)器為0,控制讀寫低字節(jié),控制讀寫低字節(jié)n該觸發(fā)器為該觸發(fā)器為1,控制讀寫高字節(jié),控制讀寫高字節(jié)n軟、硬件復(fù)位后,觸發(fā)器為軟、硬件復(fù)位后,觸發(fā)器為0n每次讀寫通道寄存器,自動(dòng)改變觸發(fā)器每次讀寫通道寄存器,自動(dòng)改變觸發(fā)器狀態(tài)。如果狀態(tài)。如果對對16位

25、寄存器的操作用兩次位寄存器的操作用兩次連續(xù)讀寫進(jìn)行,就不必清除這個(gè)觸發(fā)器連續(xù)讀寫進(jìn)行,就不必清除這個(gè)觸發(fā)器n清除高清除高/低觸發(fā)器低觸發(fā)器軟件命令軟件命令(A3A2A1A01100)將使高)將使高/低觸發(fā)器清零低觸發(fā)器清零3個(gè)軟件命令n清除高清除高/低觸發(fā)器軟件命令低觸發(fā)器軟件命令nA3A2A1A01100,使高,使高/低觸發(fā)器清零低觸發(fā)器清零n主清除命令主清除命令nA3A2A1A01101,使高使高/低觸發(fā)器清零低觸發(fā)器清零n還使命令、狀態(tài)、請求、臨時(shí)寄存器清零還使命令、狀態(tài)、請求、臨時(shí)寄存器清零n使屏蔽寄存器置為全使屏蔽寄存器置為全1(禁止(禁止DMA請求)請求)n主清除命令與硬件的主清除

26、命令與硬件的RESET信號具有相同的功能信號具有相同的功能n清屏蔽寄存器命令清屏蔽寄存器命令nA3A2A1A01110,使使4個(gè)屏蔽位都清零(允許個(gè)屏蔽位都清零(允許DMA請求)請求)5. 模式寄存器n存放相應(yīng)通道的方式控制字存放相應(yīng)通道的方式控制字n選擇某個(gè)選擇某個(gè)DMA通道的工作方式通道的工作方式n其中用最低其中用最低2位選擇哪個(gè)位選擇哪個(gè)DMA通道通道請看請看方式字方式字的格式的格式方式字格式D7 D6D5D4D3 D2D1 D000 請求模式請求模式01 單字節(jié)模式單字節(jié)模式10 數(shù)據(jù)塊模式數(shù)據(jù)塊模式11 級聯(lián)模式級聯(lián)模式0 地址增量(加地址增量(加1)1 地址減量(減地址減量(減1)

27、0 禁止自動(dòng)初始化禁止自動(dòng)初始化1 允許自動(dòng)初始化允許自動(dòng)初始化00DMA校驗(yàn)校驗(yàn)01DMA寫寫10DMA讀讀11非法非法 若若D7D61100 通道通道001 通道通道110 通道通道211 通道通道36. 命令寄存器n存放存放8237A的命令字的命令字n設(shè)置設(shè)置8237A芯片的操作方式芯片的操作方式n影響每個(gè)影響每個(gè)DMA通道通道n復(fù)位時(shí)使命令寄存器清零復(fù)位時(shí)使命令寄存器清零n設(shè)置設(shè)置D21才使才使8237A可以作為可以作為DMA控制器控制器請看請看命令字命令字的格式的格式命令字格式D7D6D5D4D3D2D1D00 DACK低有效低有效1 DACK高有效高有效0 DREQ高有效高有效1

28、DREQ低有效低有效0 滯后寫入選擇滯后寫入選擇1 擴(kuò)展寫入選擇擴(kuò)展寫入選擇 若若D310 固定優(yōu)先權(quán)固定優(yōu)先權(quán)1 循環(huán)優(yōu)先權(quán)循環(huán)優(yōu)先權(quán)0 正常時(shí)序正常時(shí)序1 壓縮時(shí)序壓縮時(shí)序 若若D010 允許允許DMAC工作工作1 禁止禁止DMAC工作工作0 允許通道允許通道0地址改變地址改變1 禁止通道禁止通道0地址改變地址改變 若若D000 禁止存儲(chǔ)器之間傳送禁止存儲(chǔ)器之間傳送1 允許存儲(chǔ)器之間傳送允許存儲(chǔ)器之間傳送7. 請求寄存器n存放軟件存放軟件DMA請求狀態(tài)請求狀態(tài)n除硬件除硬件DMA請求外,當(dāng)工作在數(shù)據(jù)塊傳請求外,當(dāng)工作在數(shù)據(jù)塊傳送方式時(shí)也可以通過軟件發(fā)出送方式時(shí)也可以通過軟件發(fā)出DMA請求請

29、求n若是存貯器到存貯器傳送,則必須由軟件若是存貯器到存貯器傳送,則必須由軟件請求啟動(dòng)通道請求啟動(dòng)通道0請看請看請求字請求字的格式的格式請求字格式D7 D6 D5 D4 D3D2D1 D0任意任意0 復(fù)位復(fù)位1 置位置位00 通道通道001 通道通道110 通道通道211 通道通道38. 屏蔽寄存器n控制外設(shè)硬件控制外設(shè)硬件DMA請求是否被響應(yīng)(為請求是否被響應(yīng)(為0允允許),各個(gè)通道互相獨(dú)立。許),各個(gè)通道互相獨(dú)立。3種方法:種方法:n單通道屏蔽字只對一個(gè)單通道屏蔽字只對一個(gè)DMA通道屏蔽位進(jìn)行設(shè)置通道屏蔽位進(jìn)行設(shè)置n主屏蔽字對主屏蔽字對4個(gè)個(gè)DMA通道屏蔽位同時(shí)進(jìn)行設(shè)置通道屏蔽位同時(shí)進(jìn)行設(shè)置

30、n清屏蔽寄存器命令使清屏蔽寄存器命令使4個(gè)屏蔽位都清零(允許)個(gè)屏蔽位都清零(允許)n復(fù)位使復(fù)位使4個(gè)通道全置于屏蔽狀態(tài)個(gè)通道全置于屏蔽狀態(tài)n當(dāng)一個(gè)通道的當(dāng)一個(gè)通道的DMA過程結(jié)束,如果不是工作在過程結(jié)束,如果不是工作在自動(dòng)初始化方式,則這一通道的屏蔽位置位,自動(dòng)初始化方式,則這一通道的屏蔽位置位,必須再次編程為允許,才能進(jìn)行下次必須再次編程為允許,才能進(jìn)行下次DMA傳送傳送請看請看屏蔽字屏蔽字的格式的格式單通道屏蔽字格式D7 D6 D5 D4 D3D2D1 D0任意任意0 清屏蔽位清屏蔽位1 置屏蔽位置屏蔽位00 通道通道001 通道通道110 通道通道211 通道通道3主屏蔽字格式D7 D

31、6 D5 D4D3D2D1D0任意任意Di0 清通道清通道3屏蔽位屏蔽位Di1 置通道置通道3屏蔽位屏蔽位Di0 清通道清通道2屏蔽位屏蔽位Di1 置通道置通道2屏蔽位屏蔽位Di0 清通道清通道1屏蔽位屏蔽位Di1 置通道置通道1屏蔽位屏蔽位Di0 清通道清通道0屏蔽位屏蔽位Di1 置通道置通道0屏蔽位屏蔽位9. 狀態(tài)寄存器n可由可由CPU讀取讀取n低低4位反映讀命令這個(gè)瞬間每個(gè)通道是否位反映讀命令這個(gè)瞬間每個(gè)通道是否產(chǎn)生產(chǎn)生TC(為(為1,表示該通道傳送結(jié)束,表示該通道傳送結(jié)束,即即通道終止計(jì)數(shù))通道終止計(jì)數(shù))n高高4位反映每個(gè)通道的位反映每個(gè)通道的DMA請求情況請求情況(為(為1,表示該通道有請求),表示該通道有請求)n狀態(tài)位在復(fù)位或被讀出后,均被清零狀態(tài)位在復(fù)位或被讀出后,均被清零D7D6D5D4D3D2D1D00通道通道3無無DMA請求請求1通道通道3有有DMA請求請求0通道通道2無無DMA請求請求1通道通道2有有DMA請求請求0通道通道1無

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論