




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系2內(nèi)容12-1 DMA傳送概述12-2 8237A的組成與工作原理一、8237A的內(nèi)部結(jié)構(gòu)三、8237A的工作時(shí)序二、8237A的引腳功能四、8237A內(nèi)部寄存器12-3 8237A的編程與應(yīng)用舉例中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系312-1 DMA傳送概述DMA:Direct Memory Access。DMAC:用來實(shí)現(xiàn)DMA傳送的DMA器,在DMA期間系統(tǒng)總線。DMAC不是處理器,也是一種可編程接口芯片,需要CPU對(duì)其進(jìn)行初始化編程設(shè)置。在DMA期間,DMAC無需CPU的干預(yù), 器與I/O接口之間的數(shù)據(jù)傳送。DMAC和CPU是以分時(shí)方式共享系統(tǒng)總線。
2、中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系4CPUDMACAL/AX暫存RDBDBDBBUSBUS(a)(b)(c)DMA方式下內(nèi)存與外設(shè)間數(shù)據(jù)傳送通路DMA方式下內(nèi)存與內(nèi)存間數(shù)據(jù)傳送通路程控或中斷方式下的數(shù)據(jù)傳送通路內(nèi)存內(nèi)存外設(shè)內(nèi)存外設(shè)內(nèi)存DMAC中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系DMA系統(tǒng)的邏輯結(jié)構(gòu)5地址總線DMA請(qǐng)求總線請(qǐng)求DMA響應(yīng)總線響應(yīng)總線數(shù)據(jù)總線HRQDREQDMACHLDADACKI / O設(shè)備HOLD HLDACPU中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系DMAC是如何獲得總線幾種可行的方式6權(quán)的? 請(qǐng)求/應(yīng)答方式,在DMA期間CPU放棄總線,CPU與系統(tǒng)總線之間處于高阻狀態(tài); 暫停
3、CPU的時(shí)鐘脈沖,使CPU暫時(shí)“休克”; 利用CPU不 總線的間隔;中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系DMA傳送的兩種類型DMA “reads” refer to transfers from7memory to an I/O device and involves theuse of MRDC and IOWC.DMA “writes” refer to transfers from anI/O device to memory and involves the useof MWTC and IORC.The data transfer reties determined by thesp
4、eed of memory or the DMA controller中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系3種DMA傳送方式之(1)字節(jié)傳送(單次傳送)8r 特點(diǎn):每完成一次傳送,無論任務(wù)是否結(jié)束,DMAC都主動(dòng)放棄總線。如果任務(wù)沒有完成,DMAC繼續(xù)申請(qǐng)總線使用權(quán)。 NDMA請(qǐng)求?YN塊結(jié)束否?Y放棄總線中斷請(qǐng)求DMA放棄總線DMAC完成一次傳送CPU響應(yīng)DMA放棄BUSDMAC發(fā)BUS請(qǐng)求DMA中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系3種DMA傳送方式之(2)數(shù)據(jù)塊傳送(成組傳送)9Np 特點(diǎn):獲得總線使用權(quán)之后,DMAC控制總線進(jìn)行連續(xù)傳送,直到傳送任務(wù)全部完成;如果在傳送期間遇到了外部輸入
5、的EOP信號(hào),傳送任務(wù)被強(qiáng)行終止。DMA請(qǐng)求?YNN塊結(jié)束否?EOP?YY放棄總線中斷請(qǐng)求DMAC完成一次傳送CPU 響應(yīng)DMA放棄 BUSDMAC發(fā)BUS請(qǐng)求DMA中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系3種DMA傳送方式之(3)詢問傳送(請(qǐng)求傳送)10p 特點(diǎn):與成組傳送的區(qū)別:在傳送期間,若DMA請(qǐng)求信號(hào)無效,DMC暫時(shí)放棄總線,重新申請(qǐng)。當(dāng)再次獲得總線使用權(quán)之后,從斷點(diǎn)處繼續(xù)傳送, DMA請(qǐng)求信號(hào)作用類似于PAUSE。NDMA請(qǐng)求?YYDMA請(qǐng)求有效?NNN塊結(jié)束否?EOP?YY放棄總線中斷請(qǐng)求DMAC完成一次傳送CPU 響應(yīng)DMA放棄 BUSDMA放棄總線DMAC發(fā)BUS請(qǐng)求DMA中國(guó)科
6、學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系11內(nèi)容12-1 DMA傳送概述12-2 8237A的組成與工作原理一、8237A的內(nèi)部結(jié)構(gòu)三、8237A的工作時(shí)序二、8237A的引腳功能四、8237A內(nèi)部寄存器12-3 8237A的編程與應(yīng)用舉例中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系1212-2 8237A的組成與工作原理一、8237A的內(nèi)部結(jié)構(gòu)和特點(diǎn)8237A有四個(gè)通道,每個(gè)通道都可地進(jìn)或行初始化,每個(gè)通道的DMA請(qǐng)求都可以被。四個(gè)通道共用的寄存器有:寄存器,狀態(tài)寄存器,寄存器,請(qǐng)求標(biāo)志寄存器及暫存寄存器。各寄存器均為8位。的16位地址寄存器,16位每個(gè)通道各自擁有字節(jié)計(jì)數(shù)器和6位模式寄存器。中國(guó)科學(xué)技術(shù)大學(xué)
7、電子工程與信息科學(xué)系每個(gè)通道內(nèi)部的地址和字節(jié)寄存器又分為“ 和“當(dāng)前” (current)兩類,其中:13” (base)基地址寄存器:存放DMA傳送的內(nèi)存起始地址。當(dāng)前地址寄存器:在傳送過程不斷變化。 基字?jǐn)?shù)寄存器:存放DMA傳送的總次數(shù)。當(dāng)前字節(jié)數(shù)寄存器:每傳送一次減1。“”和“當(dāng)前”端口地址相同,但是“”只能寫入(寫到“當(dāng)前”),而“當(dāng)前”只能讀出。入內(nèi)容同時(shí)被地址寄存器只有16位,DMAC在DMA傳送期間僅能夠 提供16位內(nèi)存地址;字節(jié)寄存器只有16位,可以連續(xù)傳送的最大次數(shù)為64K次(若每次傳送一個(gè)字節(jié),則一次可傳送的最大數(shù)據(jù)塊為64KB)。“字節(jié)”改為“次數(shù)”更為準(zhǔn)確,因?yàn)镈MA傳
8、送每次可能不止一個(gè)字節(jié)。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系每個(gè)通道的優(yōu)先級(jí)不同,既可以是固定優(yōu)先級(jí), 也可以是循環(huán)優(yōu)先級(jí)。但DMA不能嵌套。提供4種傳送方式:?jiǎn)巫止?jié)傳送方式、數(shù)據(jù)塊傳送方式、請(qǐng)求傳送方式和級(jí)聯(lián)傳送方式;其中級(jí) 聯(lián)方式?jīng)]有級(jí)數(shù)限制。時(shí)鐘頻率05MHz,時(shí)鐘為5MHz時(shí)傳送速率最 高為1.6M次/s。每傳送一次,地址指針可以1或者1,由初始 化編程設(shè)置。支持:內(nèi)存到內(nèi)存(MÅÆM)傳送、軟件DMA 請(qǐng)求、外部輸入EOP中止信號(hào)、14中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系15P411中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系16DMA器在系統(tǒng)中的兩種工作狀態(tài)1)主動(dòng)態(tài)(
9、主態(tài)、Active cycle)在DMAC獲得總線權(quán)之后,DMAC取代CPU而成為系統(tǒng)的主控者,接管和系統(tǒng)總線(數(shù)據(jù)總線、地址總線和總線)。通過總線向存儲(chǔ)器或I/O設(shè)備發(fā)出地址、讀/寫信號(hào),以兩個(gè)實(shí)體之間的傳送。在2)態(tài)(從態(tài)、Idle cycle)在DMAC獲得總線權(quán)之前,DMAC受CPU控制。此時(shí),CPU可對(duì)DMAC進(jìn)行初始化編程,也可從DMAC中讀出狀態(tài)。當(dāng)DMAC上電或復(fù)位時(shí),DMAC自動(dòng)處于從態(tài)。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系二、8237A的引腳功能(r DB7-DB0:雙向數(shù)據(jù)總線。P412414),DB7-DB0作為數(shù)據(jù)從態(tài)時(shí)接受處理器的編程線,傳輸數(shù)據(jù)或命令字。主態(tài)時(shí)在S
10、1周期輸出地址A15-A8;在MÅÆM傳送時(shí),在內(nèi)存和8237A內(nèi)部的暫存器之間傳送數(shù)據(jù)。r A3-A0:地址線,從態(tài)時(shí)為輸入,尋址8237A內(nèi)部寄存器;主態(tài)時(shí)輸出最低4位地址。r A7-A4:地址線,主態(tài)時(shí)輸出A7-A4。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系CS:片選,從態(tài)時(shí)用于處理器尋址8237A。IOR,IOW:I/O讀寫,雙向。8237A在從態(tài)時(shí)為輸入,在主態(tài)時(shí)為輸出。AEN:地址使能,輸出。進(jìn)入主態(tài)時(shí)高電平有效,用于使能8237A輸出的地址鎖存器,關(guān)閉其它主處理器與系統(tǒng)總線之間的通道ADSTB:輸出,地址鎖存,與CPU的ALE作用相同,主態(tài)時(shí),用于地址鎖存。MEM
11、R,MEMW:輸出,主態(tài)時(shí)對(duì)器進(jìn)行讀寫。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系READY:準(zhǔn)備就緒,輸入。與CPU的READY作用相同,主態(tài)時(shí)總線周期的長(zhǎng)度RESET:輸入,復(fù)位信號(hào)。復(fù)位后全部置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)。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系20三、8237A的工作時(shí)序8237A DMAC有7種狀態(tài)周期:
12、SI,S0,S1,S2,S3,S4及SWSISIS0S0S1S2S3S4慢速IOSWSWHLDADREQDACK態(tài)請(qǐng)求應(yīng)答態(tài)主動(dòng)狀態(tài)數(shù)據(jù)傳輸狀態(tài)內(nèi)部狀態(tài)流程圖空閑狀態(tài)單字節(jié)塊傳送中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系21(1)空閑周期SI從態(tài),無DMA請(qǐng)求階段。空閑周期但實(shí)際并不空 閑,DMAC不停地檢測(cè)和采樣以下兩個(gè)信號(hào):DRQi,確定是否有通道請(qǐng)求DMA服務(wù)CS,判定CPU是否要對(duì)(2)過渡狀態(tài)S0若檢測(cè)到DRQ請(qǐng)求,DMAC即向CPU發(fā)出總線請(qǐng) 求信號(hào)HRQ,隨即DMAC從SI狀態(tài)遷移到S0狀 態(tài),并重復(fù)執(zhí)行,直到收到(來自CPU或總線仲 裁電路的)HLDA信號(hào)進(jìn)入S1狀態(tài),DMAC由從態(tài)
13、進(jìn)入主態(tài)。進(jìn)行讀寫。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系22(3)DMA有效周期( S1 S4)當(dāng)應(yīng)答信號(hào)HLDA到達(dá)后,DMAC進(jìn)入有效周 期,開始傳送數(shù)據(jù)。一個(gè)完整的傳送周期包括S1,S2,S3和S4四個(gè)周期,如果I/O速度跟不上,可在S3和S4之間待周期SW。等S1:標(biāo)志獲得系統(tǒng)總線權(quán);把地址送上總線S2:發(fā)出DACK選中設(shè)備、ReadS3:發(fā)Write(延后寫) S4:收尾中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系23SiSiS0S0S1S2S3S4S2S3S4SiSiCLKDREQHRQ HLDAAENADSTBA15A8D7D0A7A0有效地址有效地址DACKxxRDxxWT8237A-
14、5的DMA時(shí)序P423擴(kuò)展寫信號(hào)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系24關(guān)于時(shí)序的幾點(diǎn)討論擴(kuò)展寫和正常寫回顧:8288總線等待周期SW器輸出的“超前寫”在S3后半段檢測(cè)READY線,若為低電平則數(shù)據(jù)塊傳送SW。S1-S2-S3-S4-S2-S3-S4-S2- 思考:為何少了S1?壓縮時(shí)序S1-S2-S4-S2-S4-S2-S4-MÅÆM傳送,傳送一個(gè)字節(jié)需要8個(gè)S周期S11-S12-S13-S14-S21-S22-S23-S24-思考:怎樣優(yōu)化?中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系25四、8237A的內(nèi)部寄存器共用寄存器命令寄存器; 狀態(tài)寄存器 請(qǐng)求寄存器;寄存器寄存器方式
15、寄存器; 字節(jié)寄存器; 地址寄存器。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系26內(nèi)部寄存器(P414表12-1)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系271)當(dāng)前地址寄存器16位,每通道一個(gè)。由于8237A的數(shù)據(jù)總線接口只有8位,16位寄存器內(nèi)容只能分兩次讀寫。CPU按“先低后高”的順序,連續(xù)兩個(gè)字節(jié)。8237A內(nèi)部有1個(gè)先后(F/L)觸發(fā)器,當(dāng)F/L0時(shí), 讀寫的是低8位,讀寫后F/LÆ1,再讀寫時(shí)是高8位, 讀寫后F/LÆ0(乒乓式)。先后觸發(fā)器可以用軟件命令清零,保證16位寄存器的讀寫是從低8位開始。每傳送1次,地址自動(dòng)+1或-1(修改指針)重裝初始值的條件設(shè)置了“自動(dòng)預(yù)置
16、方式”,在出現(xiàn)EOP信號(hào)之后。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系282)當(dāng)前字計(jì)數(shù)寄存器又稱為當(dāng)前字節(jié)計(jì)數(shù)寄存器,存放的內(nèi)容實(shí)際上是“還有多少次傳送任務(wù)”有待完成。16位,每通道一個(gè);CPU按“先低后高”的順序,連續(xù)兩個(gè)字節(jié)。每完成1次傳送,內(nèi)容減1。實(shí)際傳送次數(shù)比內(nèi)容大1,當(dāng)0再減1為0FFFFH后,全部任務(wù)結(jié)束,輸出EOP(TC,TerminalCount)信號(hào)。重裝初始值的條件設(shè)置了“自動(dòng)預(yù)置方式”,在出現(xiàn)EOP信號(hào)之后。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系293)基地址和基字計(jì)數(shù)寄存器(只寫)16位,每通道各一個(gè)。在傳送過程中,其內(nèi)容保 持不變。只寫,不可讀事實(shí)上,每個(gè)通道的“”與對(duì)
17、應(yīng)的“當(dāng)前”寄存器的端”寄存器時(shí),寫入的內(nèi)容同時(shí)到對(duì)應(yīng)的“當(dāng)前”寄存器。CPU按“先低后高”的順序,連續(xù)寫入兩個(gè)字節(jié)。在“自動(dòng)預(yù)置方式”下的作用出現(xiàn)EOP信號(hào)后,自動(dòng)將“前”寄存器。”寄存器的內(nèi)容到“當(dāng)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系304)命令寄存器共用的寄存器,8位,8237的操作解釋DACK有效電平MEMÅÆMEM傳輸DREQ有效電平Channel0 地址保持不變擴(kuò)展寫8237A 工作優(yōu)先級(jí)類型時(shí)序類型0普通時(shí)序1壓縮時(shí)序XD0=1固定優(yōu)先級(jí)0循環(huán)優(yōu)先級(jí)10Enable 8237A1Disable 8237A不擴(kuò)展寫0擴(kuò)展寫1D3=1X0Disable1Enabl
18、eXD0=0高電平有效0低電平有效101低電平有效0高電平有效1D7D6D5D4D3D2D1D0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系315)模式(工作方式)寄存器每通道1個(gè),6位,確定每通道各自的工作方式模式選擇通道選擇傳輸類型選擇地址增量選擇說明自動(dòng)預(yù)置功能選擇01地址加10地址減1100校驗(yàn)傳輸01DMA寫10DMA讀11XXD7 D6=1100選 0# Channel01選 1# Channel10選 2# Channel11選 3# Channel方式00單字節(jié)傳輸模式01數(shù)據(jù)塊模式10級(jí)聯(lián)傳輸模式11D7D6D5D4D3D2D1D0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系326)請(qǐng)求寄存
19、器q 4個(gè)通道共用,共4位,每個(gè)通道1位。q 硬件引腳信號(hào)有效將導(dǎo)致對(duì)應(yīng)位置“1”,啟動(dòng)DMAC。也可 以通過軟件寫入方式將某位置1,啟動(dòng)對(duì)應(yīng)通道的DMA傳送。MÅÆM傳送只能使用軟件請(qǐng)求。q MÅÆIO傳送時(shí),只有成組傳送才能使用軟件請(qǐng)求q 對(duì)請(qǐng)求寄存器進(jìn)行設(shè)置令字格式如下:不用清除DMA請(qǐng)求位0建立DMA請(qǐng)求位1每次只能選擇一個(gè)通道建立或清除請(qǐng)求位。Why?00選擇通道001選擇通道110選擇通道211選擇通道3D7D6D5D4D3D2D1D0。 Why?中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系337)寄存器4個(gè)通道共用,4位,每個(gè)通道1位,用來通道的D
20、MA請(qǐng)求。或某個(gè)對(duì)寄存器進(jìn)行操作令字(字)格式有兩種,對(duì)應(yīng)的端口不一樣。格式1(單通道格式,寫入端口地址A3A00AH):通道選擇不用單通道(通道字)格式清除 MASK 位0建立 MASK 位100Channel 001Channel 110Channel 211Channel 3D7D6D5D4D3D2D1D0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系34格式2(端口地址A3A00FH,可同時(shí)設(shè)置4個(gè)通道):不用主字格式請(qǐng)對(duì)比格式1和格式2在功能上的差別清 Channel 3 M 位0設(shè) Channel 3 M 位1清 Channel 2 M 位0設(shè) Channel 2 M 位10清 Channe
21、l 0 Mask 位1設(shè) Channel 0 Mask 位0清 Channel 1 Mask 位1設(shè) Channel 1 Mask 位D7D6D5D4D3D2D1D0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系358)狀態(tài)寄存器4個(gè)通道共用,8位,存放DMAC的工作狀態(tài)。復(fù)位或讀狀態(tài)寄存器之后,狀態(tài)位全部被清除。1:通道 3計(jì)數(shù)結(jié)束通道 0 有DMA請(qǐng)求11:通道 2計(jì)數(shù)結(jié)束通道 1 有DMA請(qǐng)求11:通道 1計(jì)數(shù)結(jié)束通道 2有DMA請(qǐng)求11: 通道 0計(jì)數(shù)結(jié)束通道 3 有DMA請(qǐng)求1D7D6D5D4D3D2D1D0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系369)暫時(shí)寄存器用于MÅÆM
22、傳送時(shí)存放中間結(jié)果,最后一次傳送的內(nèi)容可以在從態(tài)時(shí)讀出。10)軟件命令共三條,僅與寫入端口有關(guān),與寫入內(nèi)容無關(guān):0CH:清除先后觸發(fā)器F/L,使裝入順序?yàn)橄鹊秃蟾摺?DH:總清命令(軟件復(fù)位),復(fù)位后為1,其它寄存器為0。寄存器均0EH:清除所有的位。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系37內(nèi)部寄存器端口地址分配表(P422表12-2)端口地址寄存器16進(jìn)制讀寫00通道0當(dāng)前地址寄存器通道0基地址與當(dāng)前地址寄存器01通道0當(dāng)前字計(jì)數(shù)寄存器通道0基字計(jì)數(shù)與當(dāng)前字計(jì)數(shù)寄存器02通道1當(dāng)前地址寄存器通道1基地址與當(dāng)前地址寄存器03通道1當(dāng)前字計(jì)數(shù)寄存器通道1基字計(jì)數(shù)與當(dāng)前字計(jì)數(shù)寄存器04通道2當(dāng)前地
23、址寄存器通道2基地址與當(dāng)前地址寄存器05通道2當(dāng)前字計(jì)數(shù)寄存器通道2基字計(jì)數(shù)與當(dāng)前字計(jì)數(shù)寄存器06通道3當(dāng)前地址寄存器通道3基地址與當(dāng)前地址寄存器07通道3當(dāng)前字計(jì)數(shù)寄存器通道3基字計(jì)數(shù)與當(dāng)前字計(jì)數(shù)寄存器08狀態(tài)寄存器命令寄存器09請(qǐng)求寄存器0A寄存器(通道字)0B工作方式寄存器0C清除先后觸發(fā)器0D暫存寄存器主清命令字(軟件復(fù)位命令字)0E寄存器(清除軟件命令)0F寄存器(主字)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系38內(nèi)容12-1 DMA傳送概述12-2 8237A的組成與工作原理一、8237A的內(nèi)部結(jié)構(gòu)三、 8237A的工作時(shí)序二、8237A的引腳功能四、8237A內(nèi)部寄存器12-3 82
24、37A的編程與應(yīng)用舉例中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系39一、8237A的初始化編程8237A的初始化編程可分為以下8個(gè)步驟(1)寫入寄存器(若已經(jīng)復(fù)位,無需再次)(2) 命令字寫入到命令寄存器(3) 方式字寫入到方式寄存器(4)先/后觸發(fā)器清0(5)寫入基地址寄存器和基字計(jì)數(shù)寄存器步驟2 步驟6 的順序沒有限定(6)寫頁(yè)面寄存器(設(shè)置地址,解決尋址空間問題)(7)清除(未用或初始化的通道仍應(yīng))(8)寫入請(qǐng)求寄存器 (如果采用軟件請(qǐng)求方式)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系40二、DMAC 8237A的應(yīng)用1、內(nèi)存地址的產(chǎn)生利用頁(yè)面寄存器對(duì)內(nèi)存進(jìn)行分頁(yè)管理頁(yè)面寄存器存放DMA期間所需的內(nèi)
25、存高端地址例如:PC/XT共有20位地址,8237A DMAC只能提高16 位地址,最高4位地址A19A16需要頁(yè)面寄存器提供。而PC/XT使用了1片8237A,總共有4個(gè)DMA通道,因此頁(yè) 面寄存器為4(bit)×4(通道)。在初始化DAMC的同時(shí),必須設(shè)置頁(yè)面寄存器的內(nèi)容。DMA響應(yīng)期間利用DACK信號(hào)尋址頁(yè)面寄存器的單元。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系41DACK 3選擇頁(yè)寄存器DACK 2選擇頁(yè)寄存器DACK1選擇頁(yè)寄存器DACK0頁(yè)寄存器8237DMAC選擇A19A16DMA 存貯器地址思考:PC/AT共有24位地址,共使用2片8237A級(jí)有7個(gè)DMA通道,頁(yè)面寄存器
26、的大小至少為多少?共A19A 16A15A 0中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系422、PC/XT中的DMA電路PC/XT使用了一片8237A,共4個(gè)DMA通道,其中通道0用于DRAM刷新,其余通道功能見P425。由于DRAM刷新是按行進(jìn)行,PC/XT的內(nèi)存總共分為128行,只需要7位行地址,因此通道0不需要頁(yè)面寄存器提供地址。PC/XT中的頁(yè)面寄存器為74LS670。這是個(gè)4單元×4bit的靜態(tài)RAM,其特性見下頁(yè)。PC/XT機(jī)只需要使用頁(yè)面寄存器三個(gè)規(guī)定DACK信號(hào)低有效。由于DMA不單元,并且嵌套(任何時(shí)候最多只有一個(gè)DACK信號(hào)為低電平),PC/XT機(jī)“巧妙”地利用2條DA
27、CK信號(hào)尋址頁(yè)面寄存器。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系43DO0DO3DACK2 DACK3“推理”00不可能出現(xiàn)01通道210通道311通道1WAWB 74LSRB 670RAREAD WRITEDI0DI374LS670單元特性以及在PC/XT機(jī)中的應(yīng)用WR WB WA功 能000寫入0寄存器0寫入1寄存器010寫入2寄存器011寫入3寄存器RD RB RA功 能000讀出0寄存器0讀出1寄存器010讀出2寄存器011讀出3寄存器0101中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系44PC/XT中的總線仲裁電路由4個(gè)D觸發(fā)器級(jí)聯(lián)而成。DMA應(yīng)答條件:與門的4個(gè)輸入都為高(回顧:對(duì)應(yīng)的是CPU
28、什么狀態(tài)周期?P54圖2.26)目的:確??偩€使用權(quán)在切換時(shí)出現(xiàn)方法:通過將8288總線器的AEN變高,CPU側(cè)的系統(tǒng)總線,但是CPU僅認(rèn)為是入了等待(P47)AENBRD 接8288 AENHLDA“自?!边B接DMAAENLOCKS1S0HOLDDMAWAIT(去8284 AEN1)AENBRD接8288的CENCLK_T系統(tǒng)總線切換D3CLKQD1 QCLKD4 QCLKSD2 QCLKR Q中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系45回顧1:最大模式時(shí)序(以讀操作為例)T3以后進(jìn)入無源狀態(tài)ÅT1ÆÅT2ÆÅT3 / Tw Æ
29、97; T4ÆCLK-S2-S0ALEREADYAD15AD0*DT/-R*-IORC或*-MRDC由8288產(chǎn)生*-DEN中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系46回顧2:8288在PC/XT機(jī)中的連接AEN由低變?yōu)楦唠姡?288輸出的7條總線命令信號(hào)立即S0ALES0地址鎖存信號(hào)數(shù)據(jù)傳輸方向數(shù)據(jù)總線S1 S2DT/R DENS1S28288進(jìn)入三態(tài),輸出的4條總線信號(hào)立即AIOWC AMWC IORC超前寫I/O超前寫讀I/O寫I/O器呈無效電平。由高變?yōu)榈碗姡?288延時(shí)幾十ns后才恢復(fù)工作。AEN CENAENBRDAENBRDIOWCCLK IOBMWTC MRDCCLK寫讀
30、器器INTA中斷響應(yīng)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系47回顧3:8284內(nèi)部邏輯結(jié)構(gòu)圖RESRESET時(shí)鐘震蕩器X1X2OSC1/3F/C1/2PCLKEFICSYNC RDY1AEN1CLKCFF1RDY2DQREADYAEN2 ASYNCCFF2DQDQC中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系48總線切換進(jìn)入DMA的時(shí)序注:S與T周期相同,但S是方波,并 且較T晚了37ns,上升沿晚了20ns。SISIS0S0S0S1S2S3S4S2S3S4SIT4TIT2T3T4T1T2T3TWTWTWTWTWCLK DREQHRQ無源態(tài)S2 S1 S0LOCKD1 Q HLDAAENBRDDMAAE
31、NDMAWAIT通過8284使CPU等待傳送結(jié)束,等待中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系49XA0 XA7A 74LS0244EEAA04A7A3A7AENBRDXA9 XA8XACSWA74LSWB670DACK7XA6XAIntel 8237 A2RBRA READDACK3A165A19DMAAENCLKWRITED0D3DREQ0HLDA雙向驅(qū)動(dòng)讀寫控制EDRXMEMWDREQ374LS245XIORHRQ74LSXIOWG373XMEMRRESETAADSTBD0 D78OED0來自總線仲裁ÆADMAAEN15XD0 XD7D7P247圖6-11 ÆWRTDMA
32、PGXA1XA1GG2A Y0G2B CB 74LSA 138高電表示CPU總 線,DMAC處于從態(tài)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系50PC/XT I/O端口地址譯碼及片選信號(hào)產(chǎn)生電路AENA9 A8Y0DMACSG1G2AY1INTRCSG2B74LS138CY2T/C CSY3PPICSWRTDMAPG寫DMA頁(yè)面寄存器Y4A7A6Y5WRTNMIREGBA寫NMI寄存器Y6A5Y7IOW中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系513、8237A的級(jí)聯(lián)8237A可以多片級(jí)聯(lián),擴(kuò)展DMA通道數(shù)8237A級(jí)聯(lián)時(shí),下一級(jí)8237A(從片)的HOLD和HLDA引腳分別與上一級(jí)(主片)8237A某個(gè)
33、通道的DREQi和DACKi相連。主片連接從片的DMA通道在初始化時(shí),應(yīng)將工作方 式寄存器的D7D6設(shè)置為11(即將該通道定義為“級(jí)聯(lián) 通道”)。道的DREQi有效并使主片進(jìn)入主態(tài)當(dāng)來片級(jí)以后,主片上除了HOLD、HLDA、DREQi和DACKi 被用來傳遞從片的HOLD和HLDA信號(hào)以外,其余引腳均輸出(處于無效電平或三態(tài)高阻),以避免與從片在DMA期間的輸出信號(hào)發(fā)生。中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系523片8237A三層級(jí)聯(lián)示意圖DREQ0 DACK0DREQ1 DACK1DREQ2 DACK2DREQ3 DACK38237A(II)對(duì)于8237A(I)是從片,但是對(duì)于8237A(III)是主片HOLDHLDADREQ0 DACK0DREQ1 DACK1DREQ2 DACK2HOLDHOLDHLDA去往CPU或總 線仲裁電路DREQ1 DACK1DREQ2 DACK2DREQ3 DACK3HLDADREQ0 DACK08237A DMAC(II)8237A DMAC(I)DREQ3 DACK38237A DMAC(III)中國(guó)科學(xué)技術(shù)大學(xué)電子工程與信息科學(xué)系53DMAC編程舉例1(P428):某一系統(tǒng)使用1片8237A作為DMAC,基地址為00H。要求利用通道0從外設(shè)讀1024字節(jié)數(shù)據(jù)塊到內(nèi)存以6000H開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湛江市重點(diǎn)中學(xué)2024-2025學(xué)年初三下學(xué)期第二學(xué)段模塊考試英語試題試卷含答案
- 上海出版印刷高等??茖W(xué)?!禪nix系統(tǒng)原理與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東女子學(xué)院《機(jī)能實(shí)驗(yàn)學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江東方職業(yè)技術(shù)學(xué)院《綜合商務(wù)英語技能訓(xùn)練》2023-2024學(xué)年第一學(xué)期期末試卷
- 昆明學(xué)院《幼兒舞蹈與編創(chuàng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄭州軟件職業(yè)技術(shù)學(xué)院《電影技術(shù)概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州信息科技職業(yè)學(xué)院《紀(jì)錄片創(chuàng)作》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶三峽職業(yè)學(xué)院《現(xiàn)代生物醫(yī)藥研究進(jìn)展》2023-2024學(xué)年第二學(xué)期期末試卷
- 佳木斯職業(yè)學(xué)院《數(shù)據(jù)分析與語言》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西機(jī)電職業(yè)技術(shù)學(xué)院《精神病護(hù)理學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 農(nóng)貿(mào)市場(chǎng)計(jì)量管理制度(3篇)
- 拼音bpmfdtnl課件教學(xué)課件最新
- 一級(jí)建造師《港口與航道工程管理與實(shí)務(wù)》課件專業(yè)工程技術(shù)
- 國(guó)家開放大學(xué)《社會(huì)心理學(xué)》形考任務(wù)1-4參考答案
- 《工程制圖》期末考試試卷附答案
- 重癥患者的容量管理課件
- 二年級(jí)下冊(cè)道德與法治 課件-9 小水滴的訴說 部編版 (共16張PPT)
- 生產(chǎn)設(shè)備點(diǎn)檢記錄表
- 轉(zhuǎn)化膜與著色技術(shù)
- DL∕T 1286-2021 火電廠煙氣脫硝催化劑檢測(cè)技術(shù)規(guī)范
- 水利工程管理單位定崗標(biāo)準(zhǔn)(試點(diǎn))
評(píng)論
0/150
提交評(píng)論