dma方式是一種完全由硬件執(zhí)行io交換的工作方式

2023-06-11 06:48:57       來源:元宇宙網(wǎng)

有關(guān)dma方式是一種完全由硬件執(zhí)行io交換的工作方式這方面的知識(shí),估計(jì)很多人不是太了解,今天就給大家詳細(xì)的介紹一下關(guān)于dma方式是一種完全由硬件執(zhí)行io交換的工作方式的相關(guān)內(nèi)容。

1、一個(gè)設(shè)備接口試圖通過總線直接向另一個(gè)設(shè)備發(fā)送數(shù)據(jù)(一般是大批量的數(shù)據(jù)),它會(huì)先向CPU發(fā)送DMA請(qǐng)求信號(hào)。

2、外設(shè)通過DMA的一種專門接口電路――DMA控制器(DMAC),向CPU提出接管總線控制權(quán)的總線請(qǐng)求,CPU收到該信號(hào)后,在當(dāng)前的總線周期結(jié)束后,會(huì)按DMA信號(hào)的優(yōu)先級(jí)和提出DMA請(qǐng)求的先后順序響應(yīng)DMA信號(hào)。


(資料圖片僅供參考)

3、CPU對(duì)某個(gè)設(shè)備接口響應(yīng)DMA請(qǐng)求時(shí),會(huì)讓出總線控制權(quán)。

4、于是在DMA控制器的管理下,外設(shè)和存儲(chǔ)器直接進(jìn)行數(shù)據(jù)交換,而不需CPU干預(yù)。

5、數(shù)據(jù)傳送完畢后,設(shè)備接口會(huì)向CPU發(fā)送DMA結(jié)束信號(hào),交還總線控制權(quán)。

6、DMA方式的主要優(yōu)點(diǎn)是速度快。

7、由 于CPU根本不參加傳送操作,因此就省去了CPU取指令、取數(shù)、送數(shù)等操作。

8、在數(shù)據(jù)傳送過程中,沒有保存現(xiàn)場(chǎng)、恢復(fù)現(xiàn)場(chǎng)之類的工作。

9、內(nèi)存地址修改、傳送字 個(gè)數(shù)的計(jì)數(shù)等等,也不是由軟件實(shí)現(xiàn),而是用硬件線路直接實(shí)現(xiàn)的。

10、所以DMA方式能滿足高速I/O設(shè)備的要求,也有利于CPU效率的發(fā)揮。

11、 實(shí)現(xiàn)DMA傳送的基本操作如下:外設(shè)可通過DMA控制器向CPU發(fā)出DMA請(qǐng)求;2、CPU響應(yīng)DMA請(qǐng)求,系統(tǒng)轉(zhuǎn)變?yōu)镈MA工作方式,并把總線控制權(quán)交給DMA控制器;3、由DMA控制器發(fā)送存儲(chǔ)器地址,并決定傳送數(shù)據(jù)塊的長(zhǎng)度;4、執(zhí)行DMA傳送;5、DMA操作結(jié)束,并把總線控制權(quán)交還CPU。

12、 DMA方式主要適用于一些高速的I/O設(shè)備。

13、這些設(shè)備傳輸字節(jié)或字的速度非???。

14、對(duì)于這類高速I/O設(shè)備,如果用輸入輸出指令或采用中斷的方法來傳輸字節(jié)信息,會(huì)大量占用CPU的時(shí)間,同時(shí)也容易造成數(shù)據(jù)的丟失。

15、而DMA方式能使I/O設(shè)備直接和存儲(chǔ)器進(jìn)行成批數(shù)據(jù)的快速傳送。

16、DMA控制器或接口一般包括四個(gè)寄存器:1:狀態(tài)控制寄存器、2:數(shù)據(jù)寄存器、3:地址寄存器、4:字節(jié)計(jì)數(shù)器。

17、這些寄存器在信息傳送之前需要進(jìn)行初始化設(shè)置。

18、即在輸入輸出程序中用匯編語言指令對(duì)各個(gè)寄存器寫入初始化控制字。

相信通過dma方式這篇文章能幫到你,在和好朋友分享的時(shí)候,也歡迎感興趣小伙伴們一起來探討。

關(guān)鍵詞:
x 廣告
x 廣告

Copyright @  2015-2022 海外生活網(wǎng)版權(quán)所有  備案號(hào): 滬ICP備2020036824號(hào)-21   聯(lián)系郵箱:562 66 29@qq.com