0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區
會(huì )員中心
創(chuàng )作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內不再提示

什么是DMA?DMA究竟有多快!

工程師看海 ? 來(lái)源:工程師看海 ? 作者:工程師看海 ? 2024-02-22 10:43 ? 次閱讀

直接內存訪(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í)間就白白浪費了。

64673866-bbe4-11ee-9b10-92fbcf53809c.png

再看下,開(kāi)啟DMA之后的效果。SPI可以連續工作,時(shí)鐘速率穩定在20MHz,高效工作。

這就是DMA的強大之處!

646b5176-bbe4-11ee-9b10-92fbcf53809c.png

問(wèn)題來(lái)了,為什么上圖中的波形,有這么大的震蕩呢?

答案可以參考我的原創(chuàng )書(shū)籍《硬件設計指南》

6477b4ca-bbe4-11ee-9b10-92fbcf53809c.png

如果看到這里,請點(diǎn)贊、收藏、分享三連!

限時(shí)免費掃碼進(jìn)群,交流更多行業(yè)技術(shù)

647b9bc6-bbe4-11ee-9b10-92fbcf53809c.png

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權轉載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習之用,如有內容侵權或者其他違規問(wèn)題,請聯(lián)系本站處理。 舉報投訴
  • 數據傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    1593

    瀏覽量

    63841
  • dma
    dma
    +關(guān)注

    關(guān)注

    3

    文章

    540

    瀏覽量

    99368
收藏 人收藏

    評論

    相關(guān)推薦

    Xilinx高性能PCIe DMA控制器IP,8個(gè)DMA通道

    基于PCI Express Integrated Block,Multi-Channel PCIe QDMA Subsystem實(shí)現了使用DMA地址隊列的獨立多通道、高性能Continous
    的頭像 發(fā)表于 02-22 11:11 ?511次閱讀
    Xilinx高性能PCIe <b class='flag-5'>DMA</b>控制器IP,8個(gè)<b class='flag-5'>DMA</b>通道

    雅特力AT32F423 DMA使用指南

    DMA簡(jiǎn)介DMA控制器的作用不僅在增強系統性能并減少處理器的中斷生成,而且還針對32位MCU應用程序專(zhuān)門(mén)優(yōu)化設計。DMA控制器為存儲器到存儲器,存儲器到外設和外設到存儲器的傳輸提供了7個(gè)通道。每個(gè)
    的頭像 發(fā)表于 02-22 08:13 ?322次閱讀
    雅特力AT32F423 <b class='flag-5'>DMA</b>使用指南

    dma和串口直接發(fā)送的區別

    DMA(Direct Memory Access)和串口直接發(fā)送是兩種不同的數據傳輸方式,它們在實(shí)現上有著(zhù)明顯的區別和優(yōu)劣勢。本文將詳細介紹DMA和串口直接發(fā)送的原理、優(yōu)缺點(diǎn)以及適用場(chǎng)景。 首先
    的頭像 發(fā)表于 01-07 17:43 ?1528次閱讀

    dma和通道技術(shù)的區別

    DMA(Direct Memory Access)和通道技術(shù)是計算機系統中用來(lái)優(yōu)化數據傳輸和處理的重要技術(shù)。盡管它們都與數據傳輸相關(guān),但它們在實(shí)現方法、特點(diǎn)和應用場(chǎng)景等方面存在一些重要的區別
    的頭像 發(fā)表于 01-04 14:31 ?1021次閱讀

    STM32的DMA的五大問(wèn)題

    1,DMA控制器的內部結構STM32中的DMA控制器是一種用于在外設和存儲器之間傳輸數據的專(zhuān)用硬件。DMA控制器的內部結構主要包括以下幾個(gè)關(guān)鍵部分:通道:DMA控制器可以有多個(gè)通道,每
    的頭像 發(fā)表于 12-10 08:00 ?955次閱讀
    STM32的<b class='flag-5'>DMA</b>的五大問(wèn)題

    STM32 DMA傳輸的問(wèn)題分析

    用戶(hù)使用STM32G473RET6芯片,開(kāi)發(fā)環(huán)境STM32CubeMX+Keil(LL庫)。使用DMA1通道1,在半傳輸中斷和完全傳輸中斷里,拷貝ADC采集的數據。在應用過(guò)程中發(fā)現DMA半傳輸中斷和完全傳輸中斷不能獨立使用。
    的頭像 發(fā)表于 12-01 09:19 ?1413次閱讀
    STM32 <b class='flag-5'>DMA</b>傳輸的問(wèn)題分析

    小白都看得懂的STM32的DMA知識

    一、DMA簡(jiǎn)介1、DMA簡(jiǎn)介DMA(DirectMemoryAccess:直接內存存取)是一種可以大大減輕CPU工作量的數據轉移方式。CPU有轉移數據、計算、控制程序轉移等很多功能,但其實(shí)轉移
    的頭像 發(fā)表于 11-27 08:00 ?1978次閱讀
    小白都看得懂的STM32的<b class='flag-5'>DMA</b>知識

    SWM341 DMA2D模塊介紹

    SWM341 DMA2D模塊介紹
    的頭像 發(fā)表于 11-06 17:11 ?482次閱讀
    SWM341 <b class='flag-5'>DMA</b>2D模塊介紹

    DMA不產(chǎn)生傳輸完成中斷

    DMA不產(chǎn)生傳輸完成中斷
    的頭像 發(fā)表于 10-18 16:44 ?870次閱讀
    <b class='flag-5'>DMA</b>不產(chǎn)生傳輸完成中斷

    STM32 TIMER+DMA輸出PWM異常案例的問(wèn)題解析

    有人使用STM32U575的TIMER加上DMA做PWM輸出。具體就是利用某TIMER的一個(gè)通道的比較事件觸發(fā)DMA,通過(guò)DMA修改CCR值來(lái)實(shí)現指定占空比的PWM輸出。
    的頭像 發(fā)表于 09-28 09:04 ?5007次閱讀
    STM32 TIMER+<b class='flag-5'>DMA</b>輸出PWM異常案例的問(wèn)題解析

    DMA優(yōu)點(diǎn)多 缺點(diǎn)也不少

    Q A 問(wèn): 直接內存訪(fǎng)問(wèn) DMA 優(yōu)缺點(diǎn) 在一些系統應用中, 微處理器 可能會(huì )遇到一些限制和瓶頸。比如,當處理器需要管理一個(gè)不斷發(fā)送數據的模數轉換器( ADC )時(shí),處理器可能會(huì )被頻繁中斷,導致
    的頭像 發(fā)表于 09-06 20:20 ?2515次閱讀
    <b class='flag-5'>DMA</b>優(yōu)點(diǎn)多 缺點(diǎn)也不少

    DMA是什么意思啊 DMA的使用思路

    DMA(Direct Memory Access, 直接存儲區訪(fǎng)問(wèn)) 為實(shí)現數據高速在外設寄存器與存儲器之間或者存 儲器與存儲器之間傳輸提供了高效的方法。
    發(fā)表于 08-10 14:45 ?5913次閱讀
    <b class='flag-5'>DMA</b>是什么意思啊 <b class='flag-5'>DMA</b>的使用思路

    STM32U5 ADC+DMA配置演示

    隨意選擇ADC1的4個(gè)通道,掃描模式,連續轉換,DMA傳輸轉換結果并令DMA工作在外設字到內存字的循環(huán)傳輸模式。使用CubeMx進(jìn)行配置。其中DMA通道使用Channel 1。
    的頭像 發(fā)表于 07-29 16:19 ?1099次閱讀
    STM32U5 ADC+<b class='flag-5'>DMA</b>配置演示

    STM32F1的DMA使用

    在前面我們提到過(guò) DMA,這一章我們就來(lái)學(xué)習 STM32F1 的DMA 使 用。要實(shí)現的功能是:通過(guò) K_UP 按鍵控制 DMA 串口 1 數據的傳送,在傳送過(guò)程中讓 D2 指示燈不斷閃爍,直到數據
    的頭像 發(fā)表于 06-22 10:23 ?1847次閱讀
    STM32F1的<b class='flag-5'>DMA</b>使用

    AT32講堂058 | 雅特力AT32F425 DMA使用指南

    DMA簡(jiǎn)介IDMA控制器的作用不僅在增強系統性能并減少處理器的中斷生成,而且還針對32位MCU應用程序專(zhuān)門(mén)優(yōu)化設計。DMA控制器為存儲器到存儲器,存儲器到外設和外設到存儲器的傳輸提供了7個(gè)通道。每個(gè)
    的頭像 發(fā)表于 06-21 17:19 ?956次閱讀
    AT32講堂058 | 雅特力AT32F425 <b class='flag-5'>DMA</b>使用指南
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看