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

2023-06-11 06:48:57       來源:元宇宙網

有關dma方式是一種完全由硬件執行io交換的工作方式這方面的知識,估計很多人不是太了解,今天就給大家詳細的介紹一下關于dma方式是一種完全由硬件執行io交換的工作方式的相關內容。

1、一個設備接口試圖通過總線直接向另一個設備發送數據(一般是大批量的數據),它會先向CPU發送DMA請求信號。

2、外設通過DMA的一種專門接口電路――DMA控制器(DMAC),向CPU提出接管總線控制權的總線請求,CPU收到該信號后,在當前的總線周期結束后,會按DMA信號的優先級和提出DMA請求的先后順序響應DMA信號。


(資料圖片僅供參考)

3、CPU對某個設備接口響應DMA請求時,會讓出總線控制權。

4、于是在DMA控制器的管理下,外設和存儲器直接進行數據交換,而不需CPU干預。

5、數據傳送完畢后,設備接口會向CPU發送DMA結束信號,交還總線控制權。

6、DMA方式的主要優點是速度快。

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

8、在數據傳送過程中,沒有保存現場、恢復現場之類的工作。

9、內存地址修改、傳送字 個數的計數等等,也不是由軟件實現,而是用硬件線路直接實現的。

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

11、 實現DMA傳送的基本操作如下:外設可通過DMA控制器向CPU發出DMA請求;2、CPU響應DMA請求,系統轉變為DMA工作方式,并把總線控制權交給DMA控制器;3、由DMA控制器發送存儲器地址,并決定傳送數據塊的長度;4、執行DMA傳送;5、DMA操作結束,并把總線控制權交還CPU。

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

13、這些設備傳輸字節或字的速度非???。

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

15、而DMA方式能使I/O設備直接和存儲器進行成批數據的快速傳送。

16、DMA控制器或接口一般包括四個寄存器:1:狀態控制寄存器、2:數據寄存器、3:地址寄存器、4:字節計數器。

17、這些寄存器在信息傳送之前需要進行初始化設置。

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

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

關鍵詞:
x 廣告
x 廣告

Copyright @  2015-2022 海外生活網版權所有  備案號: 滬ICP備2020036824號-21   聯系郵箱:562 66 29@qq.com