DMA學習總結

2021-10-21 02:19:33 字數 571 閱讀 2080

dma主要功能是傳輸資料,其特點是不需占用cpu,在資料傳輸時cpu可以做別的事。資料傳輸支援外設與儲存器互傳,儲存器與儲存器互傳。乙個處理器可能有多個dma控制器,乙個控制器下又有多個通道。

以下基於cortex-m3處理器的暫存器模式對dma進行資料配置

資料的去向

傳輸方向一共有三個:外設到儲存器,儲存器到外設,儲存器到儲存器

具體方向由dma暫存器配置。既然傳輸,dma就需要知道傳輸雙方的位址,兩者位址均由dma控制器的暫存器控制

傳多少資料

知道資料的流向,還需要明確傳輸的資料量。如果乙個32位暫存器那麼一次最多能夠傳輸65535個資料。

資料正確傳輸,需要使傳輸雙方目標位址的資料寬度保持一致。以串列埠向電腦傳送資料為例,串列埠的資料寄存是8位的,那麼待傳送資料長度也是8位。外設和儲存器的資料寬度均可由暫存器配置。

為了保證資料有條不紊的傳輸,需要正確射中i兩邊資料指標的增量模式,這也是由暫存器配置。以串列埠向儲存器傳送資料為例,串列埠傳送的資料很多的時候,每傳送完乙個,儲存器的位址就要加1;但是串列埠資料暫存器只有乙個,所以外設的位址指標固定不變。如果是儲存器到儲存器,兩者的位址指標均需要同步變化。

微機原理之DMA總結

1 當介面準備就緒,便向dma控制器發dma請求 2 cpu通過hold引腳接受dma發出的匯流排請求 就是所謂的hold訊號 3 cpu如果完成了當前匯流排的操作,如果允許dma對匯流排的請求會通過 hlda引腳向dma控制器傳送hlda訊號 4 dma先把位址送上位址匯流排,然後然後會向介面傳送...

DMA 二 DMA介面函式

流式dma對映,使用這個函式前需要事先分配連續物理記憶體,這個函式只是物理位址對映到虛擬位址 dma map single dma unmap single dma池 dma如果使用cache,那麼一定要考慮cache的一致性。解決dma導致的一致性的方法最簡單的就是禁止dma目標位址範圍內的cac...

dma匯流排全稱 DMA匯流排

dma 是所有現代電腦的重要特色,他允許不同速度的硬體裝置來溝通,而不需要依於 cpu 的大量 中斷 負載。否則,cpu 需要從 把每一片段的資料複製到 暫存器,然後把他們再次寫回到新的地方。在這個時間中,cpu 對於其他的工作來說就無法使用。dma 傳輸主要地將乙個記憶體區從乙個裝置複製到另外乙個...