<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 用好 DMA控制器這兩種模式 MCU效率大大提高!

用好 DMA控制器這兩種模式 MCU效率大大提高!

作者: 時(shí)間:2025-01-17 來(lái)源:Digikey 收藏

 文章 概述

本文引用地址:http://dyxdggzs.com/article/202501/466440.htm

本文介紹了的兩種模式。 通過(guò)結合乒乓緩沖和多數據包緩沖傳輸模式,DMA 控制器可以顯著(zhù)提高 MCU 的數據傳輸效率和帶寬,同時(shí)減少 CPU 的負擔,從而提升整體系統性能并節省能源。


直接存儲器訪(fǎng)問(wèn) ( DMA ) 控制器,可以在內存和/或外設之間傳輸數據,而不需要 CPU 參與每次傳輸。

充分利用兩種 DMA 模式( 兵乓模式 與 多數據包緩沖傳輸模式 ),可以幫助提高 MCU 效率。USB 外設 是一個(gè)很好的外設示例,早期的 USB 實(shí)現的最大吞吐量只有1.5 Mb/秒。隨著(zhù)更高性能的標準版本的出現。比如要接近12 Mbit/s全速 USB 標準的理論最大值。我們來(lái)看看,數據傳輸方面 DMA 如何幫助提高 MCU 效率!我們以 Microchip 的 ATXMEGA16D4-MH 舉例。

AVR ? XMEGA ? D4 微控制器ATXMEGA16D4-MH乒乓模式之前通常使用單個(gè)存儲器緩沖區進(jìn)行外設數據傳輸。如果數據緩沖區已滿(mǎn),MCU將響應 NAK (否定確認)消息。接收到 NAK 后,主機將等待并稍后重試傳輸。它將繼續重試,直到 MCU 能夠成功接收數據。ATXMEGA16D4-MH 使用乒乓模式來(lái)消除這個(gè)問(wèn)題。乒乓模式使用兩個(gè)存儲單元( memory banks )進(jìn)行數據傳輸。當一個(gè)存儲單元滿(mǎn)時(shí),主機可以將數據傳輸到另一個(gè)存儲單元。在兩個(gè)存儲單元之間交替傳輸可以避免復審,并提高整體數據帶寬。

乒乓模式提高了效率( 圖片來(lái)源于 Microchip )此外,如上圖所示,以乒乓模式還使 MCU 有更多時(shí)間來(lái)處理數據。如圖所示,沒(méi)有乒乓,CPU 只能處理傳輸之間的數據。使用乒乓模式,CPU 可以在傳輸周期的一部分時(shí)間內處理數據,并降低 NAK 被要求“趕上”數據處理要求的可能性。多數據包緩沖傳輸模式另一個(gè)很有用的模式,可以讓 MCU 的數據傳輸更高效。這個(gè)特性叫做“多數據包緩沖傳輸模式”。如果你要通過(guò) USB 端口傳送的數據包,超過(guò)了全速 USB 的 BULK 傳輸模式所允許的最大值(64字節),那么就可以用上這個(gè)模式。以前,你需要在主機上把數據包分成小塊,然后在接收端把它們合并,這會(huì )增加中央處理器( CPU )的負擔。不過(guò)現在,多數據包緩沖功能加入了 USB 設備,它會(huì )在數據包超過(guò) USB 標準大小時(shí)自動(dòng)幫你分割和合并數據。重要的是,這個(gè)模式還能減少中斷的次數,因為只有在整個(gè)傳輸結束后才需要中斷 CPU。這意味著(zhù),CPU 可以處理其他任務(wù),或者進(jìn)入休眠模式,直到整個(gè)傳輸完成并且準備好處理。最后:結合“乒乓緩沖”和“多傳輸模式”,你可以把傳輸的帶寬提升,更重要的是,在使用這兩個(gè)功能的情況下,CPU 的負擔也降低。這兩個(gè)功能的結合,不僅在性能上有所改進(jìn),而且還能節省能源。



關(guān)鍵詞: Digikey DMA控制器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>