標籤: 暫無標籤

存取(DirectMemoryAccess,DMA)允許某些電腦內部的硬體子系統可以獨立地存取系統記憶體的讀取或寫入,而不需牽涉到CPU。很多硬體的系統會使用DMA,包含硬碟控制器,繪圖顯示卡,網路卡,和音效卡。
DMA是所有現代電腦的重要特色,他允許不同速度的硬體裝置來溝通,而不需要依於CPU的大量中斷負載。否則,CPU需要從來源把每一片段的資料複製到暫存器,然後把他們再次寫回到新的地方。在這個時間中,CPU對於其他的工作來說就無法使用。
DMA傳輸重要地將一個記憶體區從一個裝置複製到另外一個。當CPU初始化這個傳輸動作,傳輸動作本身是由DMA控制器來實行和完成。典型的例子就是移動一個外部記憶體的區塊到晶片內部更快的記憶體去。像是這樣的操作並沒有讓處理器工作拖延,反而可以被重新排程去處理其他的工作。DMA傳輸對於高效能嵌入式系統演演算法和網路是很重要的。
舉個例子,PCISADMA控制器擁有8個DMA通道,其中的7個通道是可以讓PC的CPU所利用。每一個DMA通道有一個16位元位址暫存器和一個16位元計數暫存器。要初始化資料傳輸時,裝置驅動程式一起設定DMA通道的位址和計數暫存器,以及資料傳輸的方向,讀取或寫入。然後指示DMA硬體開始這個傳輸動作。當傳輸結束的時候,裝置就會以中斷的方式通知CPU。
"分散-收集"(Scatter-gather)DMA允許在一次單一的DMA處理中傳輸資料到多個記憶體區域。相當於把多個簡單的DMA要求串在一起。再一次,這個動機是要減輕CPU的多次輸出輸入中斷和資料複製任務。
DRQ意為DMA要求;DACK意為DMA確認。這些符號一般在有DMA功能的電腦系統硬體概要上可以看到。他們表示了介於CPU和DMA控制器之間的電子訊號傳輸線路。
上一篇[隨意記]    下一篇 [十齋日]

相關評論

同義詞:暫無同義詞