




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、博學(xué) 審問(wèn) 慎思 明辨 篤行第第8章章 DMA控制器控制器第第8章章 DMA控制器控制器 8.1 DMA控制器概要控制器概要 8.2 DMA控制器控制器8237A的編程結(jié)構(gòu)的編程結(jié)構(gòu)和外部信號(hào)和外部信號(hào) 8.3 8237A的工作模式和模式寄存器的工作模式和模式寄存器 8.4 8237A的工作時(shí)序的工作時(shí)序 8.5 8237A的控制寄存器和狀態(tài)寄存器的控制寄存器和狀態(tài)寄存器 8.6 8237A各寄存器對(duì)應(yīng)的端口地址各寄存器對(duì)應(yīng)的端口地址 8.7 8237A的編程和使用的編程和使用 教學(xué)重點(diǎn)為: 8237A的編程結(jié)構(gòu);的編程結(jié)構(gòu); 8237A的工作模式與模式寄存器;的工作模式與模式寄存器; 823
2、7A的控制與狀態(tài)寄存器;的控制與狀態(tài)寄存器; 8237A的實(shí)例;的實(shí)例; 8.1 DMA控制器概要控制器概要直接存儲(chǔ)器存取方式,即直接存儲(chǔ)器存取方式,即DMA方式方式(Direct Memory Access)希望克服程序控制傳送的不足:希望克服程序控制傳送的不足:外設(shè)外設(shè)CPU存儲(chǔ)器存儲(chǔ)器外設(shè)外設(shè)CPU存儲(chǔ)器存儲(chǔ)器直接存儲(chǔ)器存取直接存儲(chǔ)器存取DMA:外設(shè)外設(shè)存儲(chǔ)器存儲(chǔ)器外設(shè)外設(shè)存儲(chǔ)器存儲(chǔ)器CPU釋放總線,由釋放總線,由DMA控制器控制器得到總線控制權(quán)得到總線控制權(quán)第第8章章 DMA控制器控制器 存儲(chǔ)器與存儲(chǔ)器與I/O設(shè)備之間的數(shù)據(jù)傳送在設(shè)備之間的數(shù)據(jù)傳送在DMA控制器(又稱控制器(又稱DMA
3、C)的)的管理下直接進(jìn)行,而不經(jīng)過(guò)管理下直接進(jìn)行,而不經(jīng)過(guò)CPU。這種方式大大提高了傳送數(shù)據(jù)的速。這種方式大大提高了傳送數(shù)據(jù)的速率,但控制電路復(fù)雜,適于大批量高速度數(shù)據(jù)傳送的場(chǎng)合。率,但控制電路復(fù)雜,適于大批量高速度數(shù)據(jù)傳送的場(chǎng)合。第第8章章 DMA控制器控制器v 一個(gè)一個(gè)DMA控制器可以由幾個(gè)通道組成。控制器可以由幾個(gè)通道組成。v DMA控制器內(nèi)部包含控制器內(nèi)部包含 控制寄存器(可公用)控制寄存器(可公用) 狀態(tài)寄存器(可公用)狀態(tài)寄存器(可公用) 地址寄存器地址寄存器 字節(jié)計(jì)數(shù)器字節(jié)計(jì)數(shù)器v DMA控制器初始化過(guò)程:控制器初始化過(guò)程: 將數(shù)據(jù)傳輸緩沖區(qū)的起始地址或結(jié)束地址送到地址寄存器中。
4、將數(shù)據(jù)傳輸緩沖區(qū)的起始地址或結(jié)束地址送到地址寄存器中。 將傳輸?shù)淖止?jié)數(shù)、字?jǐn)?shù)或雙字?jǐn)?shù)送到計(jì)數(shù)器中。將傳輸?shù)淖止?jié)數(shù)、字?jǐn)?shù)或雙字?jǐn)?shù)送到計(jì)數(shù)器中。第第8章章 DMA控制器控制器DMA傳送的工作過(guò)程:傳送的工作過(guò)程:(1)外設(shè)準(zhǔn)備好數(shù)據(jù)后向)外設(shè)準(zhǔn)備好數(shù)據(jù)后向DMA控制器(控制器(DMAC)發(fā)出發(fā)出DMA請(qǐng)求請(qǐng)求;(2)DMAC經(jīng)過(guò)內(nèi)部的判優(yōu)和屏蔽處理后,向控制總線發(fā)出總線請(qǐng)求信號(hào)經(jīng)過(guò)內(nèi)部的判優(yōu)和屏蔽處理后,向控制總線發(fā)出總線請(qǐng)求信號(hào)HRQ,請(qǐng)求占用總線請(qǐng)求占用總線。即。即DMAC將此請(qǐng)求傳遞到將此請(qǐng)求傳遞到CPU的總線保持端的總線保持端HOLD,向,向CPU提出提出DMA請(qǐng)求;請(qǐng)求;(3)CPU在完
5、成當(dāng)前總線周期后檢測(cè)在完成當(dāng)前總線周期后檢測(cè)HOLD,在非總線封鎖條件下,對(duì),在非總線封鎖條件下,對(duì)DMA請(qǐng)求請(qǐng)求作出響應(yīng);一是作出響應(yīng);一是CPU將地址總線、數(shù)據(jù)總線、控制總線置高阻,放棄對(duì)總線的控制權(quán)將地址總線、數(shù)據(jù)總線、控制總線置高阻,放棄對(duì)總線的控制權(quán);二是;二是CPU送出有效的送出有效的總線響應(yīng)信號(hào)總線響應(yīng)信號(hào)HLDA加載至加載至DMAC,告之可以使用總線;,告之可以使用總線;(4)DMAC接到有效的總線響應(yīng)信號(hào)后,接到有效的總線響應(yīng)信號(hào)后,向外設(shè)送出向外設(shè)送出DMA應(yīng)答信號(hào)應(yīng)答信號(hào)DACK,通知,通知外設(shè)做好數(shù)據(jù)傳送準(zhǔn)備,同時(shí)占用總線,開(kāi)始對(duì)總線實(shí)施控制;外設(shè)做好數(shù)據(jù)傳送準(zhǔn)備,同時(shí)
6、占用總線,開(kāi)始對(duì)總線實(shí)施控制;(5)DMAC送出內(nèi)存地址和對(duì)內(nèi)存與外設(shè)的控制信號(hào),控制外設(shè)與內(nèi)存或內(nèi)存與內(nèi)送出內(nèi)存地址和對(duì)內(nèi)存與外設(shè)的控制信號(hào),控制外設(shè)與內(nèi)存或內(nèi)存與內(nèi)存之間的數(shù)據(jù)傳送;存之間的數(shù)據(jù)傳送;(6)DMAC通過(guò)計(jì)數(shù)控制將預(yù)定的數(shù)據(jù)傳送完后,一方面,向外設(shè)發(fā)出傳送結(jié)束信通過(guò)計(jì)數(shù)控制將預(yù)定的數(shù)據(jù)傳送完后,一方面,向外設(shè)發(fā)出傳送結(jié)束信號(hào),另一方面,向號(hào),另一方面,向CPU發(fā)出無(wú)效的發(fā)出無(wú)效的HOLD信號(hào),撤消信號(hào),撤消CPU的的DMA請(qǐng)求;請(qǐng)求;(7)CPU收到此信號(hào)后,送出無(wú)效的收到此信號(hào)后,送出無(wú)效的HLDA,并重新開(kāi)始控制總線,實(shí)現(xiàn)正常的總,并重新開(kāi)始控制總線,實(shí)現(xiàn)正常的總線控制操
7、作。線控制操作。在在DMA傳送期間,傳送期間,HRQ信號(hào)和信號(hào)和HLDA信號(hào)一直有效,直至信號(hào)一直有效,直至DMA傳送結(jié)傳送結(jié)束。束。8.2 DMA控制器控制器8237A的編程結(jié)構(gòu)和外部信號(hào)的編程結(jié)構(gòu)和外部信號(hào) Intel8237A是是Intel系列中高性能的可編程系列中高性能的可編程DMA控制器,它使用單一控制器,它使用單一的的+5V電源,單相時(shí)鐘,電源,單相時(shí)鐘,40引腳雙列直插式封裝。它有引腳雙列直插式封裝。它有4個(gè)獨(dú)立的通道,個(gè)獨(dú)立的通道,每通道均有每通道均有64K的尋址能力,并且還可以用級(jí)聯(lián)方式擴(kuò)展更多的通道。的尋址能力,并且還可以用級(jí)聯(lián)方式擴(kuò)展更多的通道。允許在外設(shè)與存儲(chǔ)器以及存儲(chǔ)
8、器與存儲(chǔ)器之間交換數(shù)據(jù),數(shù)據(jù)傳輸率允許在外設(shè)與存儲(chǔ)器以及存儲(chǔ)器與存儲(chǔ)器之間交換數(shù)據(jù),數(shù)據(jù)傳輸率可達(dá)可達(dá)1.6Mb/S,提供多種控制方式和操作模式。,提供多種控制方式和操作模式。 DMA控制器在系統(tǒng)中有兩種工作狀態(tài):控制器在系統(tǒng)中有兩種工作狀態(tài):主動(dòng)態(tài)與被動(dòng)態(tài)主動(dòng)態(tài)與被動(dòng)態(tài);并處在兩;并處在兩種不同的地位:主控模塊與受控模塊(從模塊)。種不同的地位:主控模塊與受控模塊(從模塊)。 在主動(dòng)態(tài)時(shí),在主動(dòng)態(tài)時(shí),DMAC取代處理器取代處理器CPU,獲得了對(duì)系統(tǒng)總線(,獲得了對(duì)系統(tǒng)總線(AB、DB、CB)的控制權(quán),成為系統(tǒng)總線的主控者,向存儲(chǔ)器和外設(shè)發(fā)出各)的控制權(quán),成為系統(tǒng)總線的主控者,向存儲(chǔ)器和外設(shè)發(fā)
9、出各種信號(hào),以控制在兩個(gè)存儲(chǔ)實(shí)體間的信息傳送。種信號(hào),以控制在兩個(gè)存儲(chǔ)實(shí)體間的信息傳送。 在被動(dòng)態(tài)時(shí),它接受在被動(dòng)態(tài)時(shí),它接受CPU對(duì)它的控制和指揮。例如在對(duì)對(duì)它的控制和指揮。例如在對(duì)DMAC進(jìn)進(jìn)行初始化編程以及從行初始化編程以及從DMAC讀取狀態(tài)時(shí),它就如同一般讀取狀態(tài)時(shí),它就如同一般I/O芯片一樣,芯片一樣,受受CPU的控制,成為系統(tǒng)的控制,成為系統(tǒng)CPU的受控者。一般當(dāng)?shù)氖芸卣摺R话惝?dāng)DMAC加電或復(fù)位時(shí),加電或復(fù)位時(shí),DMAC自動(dòng)處于被動(dòng)自動(dòng)處于被動(dòng)DMA狀態(tài)。也就是說(shuō)在進(jìn)行狀態(tài)。也就是說(shuō)在進(jìn)行DMA傳送之前,必須傳送之前,必須由由CPU處理器對(duì)處理器對(duì)DMAC編程,以確定通道的選擇、
10、數(shù)據(jù)傳送模式和類型、編程,以確定通道的選擇、數(shù)據(jù)傳送模式和類型、內(nèi)存首地址、地址遞增還是遞減以及所需要傳送的字節(jié)數(shù)等參數(shù)。在內(nèi)存首地址、地址遞增還是遞減以及所需要傳送的字節(jié)數(shù)等參數(shù)。在DMA傳送完畢后,需要讀取傳送完畢后,需要讀取DMAC的狀態(tài)。這些時(shí)候的狀態(tài)。這些時(shí)候DMA控制器是控制器是CPU的從設(shè)備。的從設(shè)備。8237A主從兩面性:主從兩面性:作為作為DMAC,8237A是可控制總線的主模塊。是可控制總線的主模塊。作為作為I/O芯片,芯片,8237A可被處理器讀寫。可被處理器讀寫。第第8章章 DMA控制器控制器與用戶編程直接發(fā)生聯(lián)系與用戶編程直接發(fā)生聯(lián)系 第第8章章 DMA控制器控制器v
11、 8237A組成說(shuō)明:組成說(shuō)明: 基地址寄存器:存放本通道基地址寄存器:存放本通道DMA傳送的傳送的RAM地址初值。地址初值。 這個(gè)初值是在編程時(shí)寫入的,同時(shí)也被寫入這個(gè)初值是在編程時(shí)寫入的,同時(shí)也被寫入 當(dāng)前地址寄存器,不能讀出。當(dāng)前地址寄存器,不能讀出。 當(dāng)前地址寄存器:當(dāng)前地址寄存器: DMA傳送時(shí)內(nèi)容變化,每次傳送時(shí)內(nèi)容變化,每次DMA傳輸后傳輸后 自動(dòng)加自動(dòng)加1或減或減1??勺x:可用輸入指令分兩??勺x:可用輸入指令分兩 次讀出當(dāng)前地址寄存器中的值,每次讀次讀出當(dāng)前地址寄存器中的值,每次讀8位。位。 基字節(jié)數(shù)寄存器:基字節(jié)數(shù)寄存器: DMA傳送的總字節(jié)數(shù)(初值),在編程時(shí)傳送的總字節(jié)數(shù)
12、(初值),在編程時(shí) 寫入,比實(shí)際傳輸?shù)淖止?jié)少寫入,比實(shí)際傳輸?shù)淖止?jié)少1。 當(dāng)前字節(jié)數(shù)寄存器:當(dāng)前字節(jié)數(shù)寄存器: 先寫入初值,在先寫入初值,在DMA傳送時(shí)內(nèi)容變化傳送時(shí)內(nèi)容變化, 每傳送一個(gè)字節(jié),自動(dòng)減每傳送一個(gè)字節(jié),自動(dòng)減1,當(dāng)由,當(dāng)由0減到減到 FFFFH時(shí),產(chǎn)生計(jì)數(shù)結(jié)束信號(hào)時(shí),產(chǎn)生計(jì)數(shù)結(jié)束信號(hào)EOP。 可讀??勺x。第第8章章 DMA控制器控制器第第8章章 DMA控制器控制器8. 3 8237A工作模式和模式寄存器工作模式和模式寄存器8.3.1 8237A 的工作模式的工作模式v 單字節(jié)傳輸模式:?jiǎn)巫止?jié)傳輸模式:8237A每完成每完成1個(gè)字節(jié)傳輸,字節(jié)計(jì)數(shù)器減個(gè)字節(jié)傳輸,字節(jié)計(jì)數(shù)器減1,地址
13、寄存,地址寄存器加器加1或減或減1。隨后,。隨后,8237A釋放系統(tǒng)總線,同時(shí)對(duì)釋放系統(tǒng)總線,同時(shí)對(duì)DREQ進(jìn)行測(cè)試,只到進(jìn)行測(cè)試,只到DREQ回到有效電平,回到有效電平,8237A又會(huì)發(fā)出總線請(qǐng)求。又會(huì)發(fā)出總線請(qǐng)求。v 塊傳輸模式:塊傳輸模式:可進(jìn)行多個(gè)字節(jié)的傳輸,只有當(dāng)字節(jié)計(jì)數(shù)器減為可進(jìn)行多個(gè)字節(jié)的傳輸,只有當(dāng)字節(jié)計(jì)數(shù)器減為0,從而在,從而在EOP端輸出一個(gè)負(fù)脈沖或外部接口往端輸出一個(gè)負(fù)脈沖或外部接口往DMA控制器的控制器的EOP端送一個(gè)低電平信端送一個(gè)低電平信號(hào)時(shí),號(hào)時(shí),8237A才釋放總線而結(jié)束傳輸。才釋放總線而結(jié)束傳輸。v 請(qǐng)求傳輸模式:請(qǐng)求傳輸模式:每傳輸每傳輸1個(gè)字節(jié),都要對(duì)個(gè)字
14、節(jié),都要對(duì)DREQ進(jìn)行測(cè)試,若為無(wú)效電平,進(jìn)行測(cè)試,若為無(wú)效電平,馬上暫停傳輸,但測(cè)試仍繼續(xù),直到回到有效電平,在原有基礎(chǔ)上繼續(xù)傳馬上暫停傳輸,但測(cè)試仍繼續(xù),直到回到有效電平,在原有基礎(chǔ)上繼續(xù)傳輸。輸。v 級(jí)聯(lián)傳輸模式級(jí)聯(lián)傳輸模式:將從片的:將從片的HRQ端和主片的端和主片的DERQ端相連,從片的端相連,從片的HLDA端端和主片的和主片的DACK端相連,主片的端相連,主片的HRQ和和HLDA連接系統(tǒng)總線。連接系統(tǒng)總線。第第8章章 DMA控制器控制器 第第8章章 DMA控制器控制器8.3.2 8237A模式寄存器模式寄存器 自動(dòng)化初始:自動(dòng)化初始:當(dāng)選擇自動(dòng)預(yù)置時(shí),在接收到信號(hào)當(dāng)選擇自動(dòng)預(yù)置時(shí),
15、在接收到信號(hào)后,該通道自動(dòng)將基地址寄存器內(nèi)容裝入當(dāng)前地后,該通道自動(dòng)將基地址寄存器內(nèi)容裝入當(dāng)前地址寄存器,將基字節(jié)計(jì)數(shù)器內(nèi)容裝入當(dāng)前字節(jié)計(jì)址寄存器,將基字節(jié)計(jì)數(shù)器內(nèi)容裝入當(dāng)前字節(jié)計(jì)數(shù)器,而不必通過(guò)數(shù)器,而不必通過(guò)CPU對(duì)對(duì)8237A進(jìn)行初始化,就進(jìn)行初始化,就能執(zhí)行另一次能執(zhí)行另一次DMA服務(wù)。服務(wù)。 IORMEMW寫傳送。寫傳送。由由I/O設(shè)備至存儲(chǔ)器設(shè)備至存儲(chǔ)器。將數(shù)據(jù)從。將數(shù)據(jù)從I/O設(shè)備讀出再寫入存設(shè)備讀出再寫入存儲(chǔ)器。儲(chǔ)器。8237要發(fā)出要發(fā)出和校驗(yàn)。校驗(yàn)。這種操作實(shí)際不進(jìn)行數(shù)據(jù)傳這種操作實(shí)際不進(jìn)行數(shù)據(jù)傳送。送。8237A仍將保持著它對(duì)系統(tǒng)總線的控制權(quán)。設(shè)定校驗(yàn)方式時(shí),要設(shè)定命令寄存
16、器為禁止存儲(chǔ)器至存儲(chǔ)器的DMA操作方式。MEMRIOW讀傳送。讀傳送。由存儲(chǔ)器至由存儲(chǔ)器至I/O設(shè)備。將設(shè)備。將數(shù)據(jù)從存儲(chǔ)器讀出,再寫入數(shù)據(jù)從存儲(chǔ)器讀出,再寫入I/O設(shè)備。設(shè)備。因此,因此,8237A要發(fā)出要發(fā)出和第第8章章 DMA控制器控制器8. 5 8237A控制寄存器和狀態(tài)寄存器控制寄存器和狀態(tài)寄存器1. 8237A的控制寄存器的控制寄存器 8237A的控制寄存器存放編程命令字,由它來(lái)控制的控制寄存器存放編程命令字,由它來(lái)控制8237A的操的操作。編程時(shí),由作。編程時(shí),由CPU對(duì)它寫入命令字,而由復(fù)位信號(hào)(對(duì)它寫入命令字,而由復(fù)位信號(hào)(RESET)和軟件清除命令清除它。和軟件清除命令清除
17、它。 第第8章章 DMA控制器控制器2. 8237A的狀態(tài)寄存器的狀態(tài)寄存器 第第8章章 DMA控制器控制器3. 8237A的請(qǐng)求寄存器和屏蔽寄存器的請(qǐng)求寄存器和屏蔽寄存器 第第8章章 DMA控制器控制器 第第8章章 DMA控制器控制器 8237A的全屏蔽寄存器的全屏蔽寄存器第第8章章 DMA控制器控制器全部都用地址全部都用地址A A0 0A A3 3區(qū)分區(qū)分8.6 8237A寄存器對(duì)應(yīng)的端口地址寄存器對(duì)應(yīng)的端口地址 8237A共有共有10種內(nèi)部寄存器:種內(nèi)部寄存器: 通過(guò)對(duì)內(nèi)部寄存器的寫操作執(zhí)行對(duì)通過(guò)對(duì)內(nèi)部寄存器的寫操作執(zhí)行對(duì)8237A的編程命令;的編程命令; 通過(guò)讀操作來(lái)讀取通過(guò)讀操作來(lái)讀
18、取8237A的狀態(tài)寄存器的狀態(tài)字和暫存器中暫存的內(nèi)容。的狀態(tài)寄存器的狀態(tài)字和暫存器中暫存的內(nèi)容。 A0 A3雙向三態(tài)地址線:雙向三態(tài)地址線: 輸入地址時(shí)用來(lái)尋找輸入地址時(shí)用來(lái)尋找 DMA 內(nèi)部寄存器,內(nèi)部寄存器,CPU 對(duì)所選寄存器進(jìn)行操作;對(duì)所選寄存器進(jìn)行操作; 輸出地址時(shí)作為低輸出地址時(shí)作為低 4 位的地址輸出線。位的地址輸出線。A7A4 高高 4 位地址線位地址線:工作在輸出狀態(tài),輸出高:工作在輸出狀態(tài),輸出高4 位地址信息。位地址信息。第第8章章 DMA控制器控制器8237A內(nèi)部各寄存器均有相應(yīng)的端口地址,其編程順序無(wú)嚴(yán)格要求。內(nèi)部各寄存器均有相應(yīng)的端口地址,其編程順序無(wú)嚴(yán)格要求。 1
19、. 8237A的各通道寄存器地址的各通道寄存器地址通道通道寄存器名稱寄存器名稱A3A2A1A00地址寄存器地址寄存器00000字節(jié)寄存器字節(jié)寄存器000101地址寄存器地址寄存器00100字節(jié)寄存器字節(jié)寄存器001102地址寄存器地址寄存器01000字節(jié)寄存器字節(jié)寄存器010103地址寄存器地址寄存器01100字節(jié)寄存器字節(jié)寄存器01110CS第第8章章 DMA控制器控制器基地址寄存器基地址寄存器當(dāng)前地址寄存器當(dāng)前地址寄存器共用同一端口共用同一端口, 存放存放初始值初始值v 保持保持DMA傳送的當(dāng)前地址值傳送的當(dāng)前地址值v 每次傳送后該寄存器的值自動(dòng)加每次傳送后該寄存器的值自動(dòng)加1或減或減1v
20、 這個(gè)寄存器的值可由這個(gè)寄存器的值可由CPU寫入和讀出寫入和讀出第第8章章 DMA控制器控制器基本字節(jié)計(jì)數(shù)器基本字節(jié)計(jì)數(shù)器當(dāng)前字節(jié)計(jì)數(shù)器當(dāng)前字節(jié)計(jì)數(shù)器共用同一端口共用同一端口, 存放傳輸字節(jié)數(shù)的存放傳輸字節(jié)數(shù)的初始值初始值傳送傳送N個(gè)個(gè)字節(jié),初始值為字節(jié),初始值為N1v保持保持DMA傳送的剩余字節(jié)數(shù)傳送的剩余字節(jié)數(shù)v每次傳送后,該寄存器的值減每次傳送后,該寄存器的值減1v這個(gè)寄存器的值可由這個(gè)寄存器的值可由CPU寫入和讀出寫入和讀出v該寄存器的值減至該寄存器的值減至0,再減,再減1(從(從0減到減到FFFFH)時(shí),終止計(jì)數(shù))時(shí),終止計(jì)數(shù)第第8章章 DMA控制器控制器讀寫通道寄存器讀寫通道寄存器
21、DB7DB0 雙向數(shù)據(jù)線雙向數(shù)據(jù)線:連接到系統(tǒng)總線上:連接到系統(tǒng)總線上 CPU 通過(guò)讀命令,讀取通過(guò)讀命令,讀取 8237A 內(nèi)部的寄存器的內(nèi)容;內(nèi)部的寄存器的內(nèi)容; 通過(guò)寫命令,對(duì)通過(guò)寫命令,對(duì) 8237A 內(nèi)部寄存器進(jìn)行編程。內(nèi)部寄存器進(jìn)行編程。 8237A的通道寄存器均為的通道寄存器均為16位位, 而而CPU與與8237A之間通之間通過(guò)過(guò)8位數(shù)據(jù)總線交換信息,需要位數(shù)據(jù)總線交換信息,需要兩次讀寫操作兩次讀寫操作才能實(shí)現(xiàn)才能實(shí)現(xiàn)CPU與與8237A之間的一個(gè)完整數(shù)據(jù)的交換。之間的一個(gè)完整數(shù)據(jù)的交換。第第8章章 DMA控制器控制器寄存器及操作寄存器及操作A3A2A1A0讀狀態(tài)寄存器讀狀態(tài)寄存
22、器1000100寫控制寄存器寫控制寄存器1000010寫請(qǐng)求寄存器寫請(qǐng)求寄存器1001010寫單通道屏蔽寄存器寫單通道屏蔽寄存器1010010寫模式寄存器寫模式寄存器1011010清除字節(jié)指針清除字節(jié)指針1100010讀暫存寄存器讀暫存寄存器1101100發(fā)復(fù)位命令發(fā)復(fù)位命令1101010清屏蔽寄存器清屏蔽寄存器1110010寫全屏蔽寄存器寫全屏蔽寄存器1111010IOWIORCS2. 8237A的其它寄存器地址的其它寄存器地址v對(duì)它們的操作有時(shí)需要配合對(duì)它們的操作有時(shí)需要配合3個(gè)軟件命令個(gè)軟件命令, 8237A的的“軟件命令軟件命令”:不需要通過(guò)數(shù)據(jù)總線寫入控制字不需要通過(guò)數(shù)據(jù)總線寫入控制
23、字直接由地址和控制信號(hào)譯碼實(shí)現(xiàn)直接由地址和控制信號(hào)譯碼實(shí)現(xiàn)第第8章章 DMA控制器控制器由于由于8237A編程順序無(wú)嚴(yán)格要求。一般可按如下順序編制初始化程序:編程順序無(wú)嚴(yán)格要求。一般可按如下順序編制初始化程序: 8237A初始化編程初始化編程:8.7 8237A的編程和使用的編程和使用(1)發(fā)復(fù)位命令(總清除命令)發(fā)復(fù)位命令(總清除命令) A3A2A1A01101,使字節(jié)指針清零,使字節(jié)指針清零 還使控制、狀態(tài)、請(qǐng)求、暫存器清零還使控制、狀態(tài)、請(qǐng)求、暫存器清零 使屏蔽寄存器置為全使屏蔽寄存器置為全1(禁止(禁止DMA請(qǐng)求)請(qǐng)求) 與硬件的與硬件的RESET信號(hào)具有相同的功能信號(hào)具有相同的功能(
24、2)寫基地址(當(dāng)前地址)寄存器)寫基地址(當(dāng)前地址)寄存器: 寫入數(shù)據(jù)塊的首地址。寫入數(shù)據(jù)塊的首地址。(3)寫基字節(jié)計(jì)數(shù)(當(dāng)前字節(jié)計(jì)數(shù))寄存器)寫基字節(jié)計(jì)數(shù)(當(dāng)前字節(jié)計(jì)數(shù))寄存器:寫入數(shù)據(jù)塊的數(shù)據(jù)數(shù)目。寫入數(shù)據(jù)塊的數(shù)據(jù)數(shù)目。(4)寫模式寄存器)寫模式寄存器: 寫入工作方式字,以確定指定通道的操作類型、寫入工作方式字,以確定指定通道的操作類型、 傳送方式、是否自動(dòng)預(yù)置和傳送一字節(jié)數(shù)據(jù)后地傳送方式、是否自動(dòng)預(yù)置和傳送一字節(jié)數(shù)據(jù)后地 址的修改方向。址的修改方向。(5)寫屏蔽寄存器)寫屏蔽寄存器: 屏蔽方式可用單個(gè)通道屏蔽字,從地址屏蔽方式可用單個(gè)通道屏蔽字,從地址1010B寫寫 入,也可用四通道屏蔽
25、字,從地址入,也可用四通道屏蔽字,從地址1111B寫入。寫入。(6)寫命令控制寄存器)寫命令控制寄存器(7)寫請(qǐng)求寄存器)寫請(qǐng)求寄存器第第8章章 DMA控制器控制器8237A在在PC系列機(jī)的使用情況系列機(jī)的使用情況vIBM PC/XT機(jī)使用一片機(jī)使用一片8237A通道通道0:動(dòng)態(tài)存貯器:動(dòng)態(tài)存貯器DRAM刷新刷新通道通道1:用戶使用、網(wǎng)絡(luò)通信等:用戶使用、網(wǎng)絡(luò)通信等通道通道2:內(nèi)存與軟盤的高速數(shù)據(jù)交換:內(nèi)存與軟盤的高速數(shù)據(jù)交換通道通道3:內(nèi)存與硬盤的高速數(shù)據(jù)交換:內(nèi)存與硬盤的高速數(shù)據(jù)交換vIBM PC/AT機(jī)采用兩片機(jī)采用兩片8237ADMAC1包含通道包含通道03,支持,支持8位數(shù)據(jù)傳送位數(shù)
26、據(jù)傳送DMAC2組成通道組成通道47,通道,通道57支持支持16位數(shù)據(jù)傳送,通道位數(shù)據(jù)傳送,通道4用于級(jí)聯(lián)。用于級(jí)聯(lián)。v8237A初始化寫入命令字為初始化寫入命令字為0,確定了:,確定了:DREQ高電平有效、高電平有效、DACK低電平有效,固定優(yōu)先權(quán)(依次為通道低電平有效,固定優(yōu)先權(quán)(依次為通道0、17)不進(jìn)行存儲(chǔ)器到存儲(chǔ)器的數(shù)據(jù)傳輸不進(jìn)行存儲(chǔ)器到存儲(chǔ)器的數(shù)據(jù)傳輸PC機(jī)用機(jī)用DMA控制電路進(jìn)行刷新,所以控制電路進(jìn)行刷新,所以DMA傳送不能長(zhǎng)時(shí)間占用總線(不應(yīng)超過(guò)傳送不能長(zhǎng)時(shí)間占用總線(不應(yīng)超過(guò)15 s),一般只能使用單字節(jié)傳送方式),一般只能使用單字節(jié)傳送方式v在在PC系列機(jī)上,用戶如果使用系
27、列機(jī)上,用戶如果使用DMA通道,要注意遵從上述系統(tǒng)要求。除了要禁止通道,要注意遵從上述系統(tǒng)要求。除了要禁止8237A工作,用戶通常不必操作命令寄存器工作,用戶通常不必操作命令寄存器第第8章章 DMA控制器控制器v8237A對(duì)應(yīng)的端口地址為對(duì)應(yīng)的端口地址為0000000FH。 用標(biāo)號(hào)用標(biāo)號(hào)DMA表示首地址表示首地址0000H,vDMA傳送時(shí)的高位地址由傳送時(shí)的高位地址由“頁(yè)面寄存器頁(yè)面寄存器”提供。提供。v頁(yè)面寄存器頁(yè)面寄存器74LS670由由CPU的輸出指令實(shí)現(xiàn)寫入,端口的輸出指令實(shí)現(xiàn)寫入,端口0083H。頁(yè)面寄存器不會(huì)自動(dòng)增減量頁(yè)面寄存器不會(huì)自動(dòng)增減量高位地址在高位地址在DMADMA傳送過(guò)程中不改變傳送過(guò)程中不改變 某微機(jī)系統(tǒng),采用一片某微機(jī)系統(tǒng),采用一片DMA傳送數(shù)據(jù),通過(guò)通道傳送數(shù)據(jù),通過(guò)通道0將磁盤輸入的將磁盤輸入的1K數(shù)數(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ù)覽,若沒(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年AED應(yīng)急急救知識(shí)培訓(xùn)試題及答案解析
- 激光雷達(dá)技術(shù)在交通尾流優(yōu)化領(lǐng)域的創(chuàng)新與市場(chǎng)應(yīng)用前景
- 農(nóng)村土地征收工作流程-企業(yè)管理
- 旅游行業(yè)產(chǎn)品價(jià)格管理制度流程
- 九年級(jí)化學(xué)上冊(cè)教學(xué)質(zhì)量監(jiān)控計(jì)劃
- 老齡化背景下老年人營(yíng)養(yǎng)餐定制服務(wù)的行業(yè)發(fā)展趨勢(shì)預(yù)測(cè)
- 2025至2030中國(guó)自動(dòng)切紙機(jī)行業(yè)市場(chǎng)深度研究及發(fā)展前景投資可行性分析報(bào)告
- 2025至2030中國(guó)膏藥貼劑行業(yè)市場(chǎng)深度調(diào)研及投資價(jià)值與投資前景報(bào)告
- 2025至2030中國(guó)脂質(zhì)調(diào)節(jié)劑行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 2025至2030中國(guó)胎心檢測(cè)儀行業(yè)市場(chǎng)現(xiàn)狀分析及競(jìng)爭(zhēng)格局與投資發(fā)展報(bào)告
- 解熱鎮(zhèn)痛抗炎藥非甾體抗炎藥專家講座
- DB44-T 2410-2023紅樹(shù)林生態(tài)修復(fù)工程評(píng)價(jià)技術(shù)規(guī)程
- YY/T 1830-2022電動(dòng)氣壓止血儀
- 臨床、口腔醫(yī)師申報(bào)衛(wèi)生高級(jí)職稱工作量登記表
- GB/T 10045-2018非合金鋼及細(xì)晶粒鋼藥芯焊絲
- GB 7099-2015食品安全國(guó)家標(biāo)準(zhǔn)糕點(diǎn)、面包
- 2023年納雍縣財(cái)政局系統(tǒng)事業(yè)單位招聘筆試題庫(kù)及答案解析
- 2023年廣東省普通高中學(xué)業(yè)水平考試及參考答案
- 建筑工程模板施工工藝技術(shù)要點(diǎn)講義豐富課件
- 浙江省建設(shè)領(lǐng)域簡(jiǎn)易勞動(dòng)合同(A4版本)
- 位置度公差以及其計(jì)算
評(píng)論
0/150
提交評(píng)論