直接內存訪(fǎng)問(wèn)(Direct Memory Access,DMA):在計算機體系結構中,DMA 是一種數據傳輸方式,允許外部設備直接訪(fǎng)問(wèn)計算機的內存,而無(wú)需通過(guò)中央處理單元(CPU)的干預。這有助于提高數據傳輸速度和系統效率。
那么,DMA究竟有多快呢?
實(shí)踐出真知
恰好,最近有個(gè)多通道數據采集的項目,受限于通道數多、分辨率高,而系統帶寬有限,為了盡可能充分利用有限帶寬,就得想辦法優(yōu)化時(shí)序,把時(shí)間都留給數據采集和傳輸。
優(yōu)化方向就是DMA。
硬件鏈路是ADC通過(guò)SPI接口將數據發(fā)送給STM32單片機,單片機再將數據發(fā)送到上位機。
咱們的目標就是優(yōu)化SPI這邊,先看普通采集模式。
下圖是普通采集模式,SPI每傳輸1個(gè)字節后,就有一段時(shí)間的空閑,這段時(shí)間就白白浪費了。
再看下,開(kāi)啟DMA之后的效果。SPI可以連續工作,時(shí)鐘速率穩定在20MHz,高效工作。
這就是DMA的強大之處!
問(wèn)題來(lái)了,為什么上圖中的波形,有這么大的震蕩呢?
答案可以參考我的原創(chuàng )書(shū)籍《硬件設計指南》
如果看到這里,請點(diǎn)贊、收藏、分享三連!
限時(shí)免費掃碼進(jìn)群,交流更多行業(yè)技術(shù)
審核編輯 黃宇
-
數據傳輸
+關(guān)注
關(guān)注
9文章
1593瀏覽量
63841 -
dma
+關(guān)注
關(guān)注
3文章
540瀏覽量
99368
發(fā)布評論請先 登錄
相關(guān)推薦
評論