你的位置:首頁 > 互連技術(shù) > 正文

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

發(fā)布時(shí)間:2025-01-07 來源:DigiKey 責(zé)任編輯:lina

【導(dǎo)讀】本文介紹了DMA控制器的兩種模式。通過結(jié)合乒乓緩沖和多數(shù)據(jù)包緩沖傳輸模式,DMA 控制器可以顯著提高 MCU 的數(shù)據(jù)傳輸效率和帶寬,同時(shí)減少 CPU 的負(fù)擔(dān),從而提升整體系統(tǒng)性能并節(jié)省能源。


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


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


充分利用兩種 DMA 模式(兵乓模式與多數(shù)據(jù)包緩沖傳輸模式),可以幫助提高 MCU 效率。

USB 外設(shè) 是一個(gè)很好的外設(shè)示例,早期的 USB 實(shí)現(xiàn)的最大吞吐量只有1.5 Mb/秒。隨著更高性能的標(biāo)準(zhǔn)版本的出現(xiàn)。比如要接近12 Mbit/s全速 USB 標(biāo)準(zhǔn)的理論最大值。我們來看看,數(shù)據(jù)傳輸方面 DMA 如何幫助提高 MCU 效率!
我們以 Microchip 的 ATXMEGA16D4-MH 舉例。

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

AVR? XMEGA? D4 微控制器ATXMEGA16D4-MH


乒乓模式


之前通常使用單個(gè)存儲器緩沖區(qū)進(jìn)行外設(shè)數(shù)據(jù)傳輸。如果數(shù)據(jù)緩沖區(qū)已滿,MCU將響應(yīng) NAK (否定確認(rèn))消息。接收到 NAK 后,主機(jī)將等待并稍后重試傳輸。它將繼續(xù)重試,直到 MCU 能夠成功接收數(shù)據(jù)。

ATXMEGA16D4-MH 使用乒乓模式來消除這個(gè)問題。乒乓模式使用兩個(gè)存儲單元( memory banks )進(jìn)行數(shù)據(jù)傳輸。當(dāng)一個(gè)存儲單元滿時(shí),主機(jī)可以將數(shù)據(jù)傳輸?shù)搅硪粋€(gè)存儲單元。在兩個(gè)存儲單元之間交替?zhèn)鬏斂梢员苊鈴?fù)審,并提高整體數(shù)據(jù)帶寬。

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

乒乓模式提高了效率(圖片來源于 Microchip )


此外,如上圖所示,以乒乓模式還使 MCU 有更多時(shí)間來處理數(shù)據(jù)。如圖所示,沒有乒乓,CPU 只能處理傳輸之間的數(shù)據(jù)。使用乒乓模式,CPU 可以在傳輸周期的一部分時(shí)間內(nèi)處理數(shù)據(jù),并降低 NAK 被要求“趕上”數(shù)據(jù)處理要求的可能性。

多數(shù)據(jù)包緩沖傳輸模式

另一個(gè)很有用的模式,可以讓 MCU 的數(shù)據(jù)傳輸更高效。這個(gè)特性叫做“多數(shù)據(jù)包緩沖傳輸模式”。如果你要通過 USB 端口傳送的數(shù)據(jù)包,超過了全速 USB 的 BULK 傳輸模式所允許的最大值(64字節(jié)),那么就可以用上這個(gè)模式。以前,你需要在主機(jī)上把數(shù)據(jù)包分成小塊,然后在接收端把它們合并,這會增加中央處理器( CPU )的負(fù)擔(dān)。不過現(xiàn)在,多數(shù)據(jù)包緩沖功能加入了 USB 設(shè)備,它會在數(shù)據(jù)包超過 USB 標(biāo)準(zhǔn)大小時(shí)自動(dòng)幫你分割和合并數(shù)據(jù)。重要的是,這個(gè)模式還能減少中斷的次數(shù),因?yàn)橹挥性谡麄€(gè)傳輸結(jié)束后才需要中斷 CPU。這意味著,CPU 可以處理其他任務(wù),或者進(jìn)入休眠模式,直到整個(gè)傳輸完成并且準(zhǔn)備好處理。

最后:

結(jié)合“乒乓緩沖”和“多傳輸模式”,你可以把傳輸?shù)膸捥嵘?,更重要的是,在使用這兩個(gè)功能的情況下,CPU 的負(fù)擔(dān)也降低。這兩個(gè)功能的結(jié)合,不僅在性能上有所改進(jìn),而且還能節(jié)省能源。
文章來源:DigiKey電子技術(shù)臺


免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。


我愛方案網(wǎng)


推薦閱讀:

使用IO-Link收發(fā)器管理數(shù)據(jù)鏈路如何簡化微控制器選擇

PNP 晶體管:特性和應(yīng)用

增強(qiáng)視覺傳感器功能:3D圖像拼接算法幫助擴(kuò)大視場

安全設(shè)計(jì)降壓前置穩(wěn)壓器,為汽車電源保駕護(hù)航!

交流電源系統(tǒng)中的過流保護(hù)


特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
Knowles Lattice LCD LCD模組 LCR測試儀 lc振蕩器 Lecroy LED LED保護(hù)元件 LED背光 LED調(diào)光 LED模擬調(diào)光 LED驅(qū)動(dòng) LED驅(qū)動(dòng)IC LED驅(qū)動(dòng)模塊 LED散熱 LED數(shù)碼管 LED數(shù)字調(diào)光 LED顯示 LED顯示屏 LED照明 LED照明設(shè)計(jì) Lightning Linear Litepoint Littelfuse LTC LTE LTE功放 LTE基帶
?

關(guān)閉

?

關(guān)閉