淺談讓微控制器性能發(fā)揮極限的方法
若利用中斷,對于CPU處理能力而言,執行這類(lèi)任務(wù)的成本太高,而且會(huì )增加延時(shí),降低固定性。而采用事件系統和DMA控制器,開(kāi)發(fā)人員就能夠避免CPU執行這些功能。這不僅可減少系統必須管理的中斷數量,而且還能簡(jiǎn)化任務(wù)的實(shí)現和管理。
例如,在一個(gè)在特殊工作條件下向用戶(hù)發(fā)出警示信息的應用中,預先設置的聲音文件可以存儲在緩存中,再利用DMA通過(guò)適當的外設饋入到揚聲器,而利用定時(shí)器,事件系統就可以確保44,056KHz的準確數據率。此外還有一個(gè)額外的好處,因為頻率準確且穩定,聲音保真度也得以提高。從性能角度來(lái)看,只要配置了DMA和事件系統。
說(shuō)這些任務(wù)變得更“自由”可能顯得有點(diǎn)夸張。不過(guò),以這種方式執行這些任務(wù),的確使其能夠適用于更寬范圍的應用。協(xié)處理器、DMA控制器和事件系統的結合能夠釋放控制器,讓它只進(jìn)行信號處理,而不必把大部分資源消耗在信號的周期密集型采集工作上。這樣一來(lái),就可以利用單個(gè)控制器管理多個(gè)高頻任務(wù)。這也簡(jiǎn)化了系統設計,使用戶(hù)能夠以更低的成本在單個(gè)微控制器上執行更多任務(wù),更容易實(shí)現多個(gè)信號之間的互連性,并提高能效。
對許多應用來(lái)說(shuō),能否支持多個(gè)任務(wù)可成為一項重要的產(chǎn)品差異化指標。例如,采用了DMA控制器和事件系統的電機控制應用,就能夠使微控制器釋放出足夠的資源,使開(kāi)發(fā)人員能夠以在不增加系統材料成本的條件下實(shí)現PFC等先進(jìn)功能。
除了通過(guò)卸載中斷來(lái)提高微控制器的性能和能力之外,事件系統還能夠把功耗最低降至1/7(具體數字取決于應用)。表2所示為一個(gè)需要每秒120萬(wàn)周期的應用的功率相關(guān)數據。在12MHz時(shí),微控制器只有10%的時(shí)間在工作模式下,其余時(shí)間都處于待機模式。執行DMA控制器和事件系統可以卸載大量CPU每秒必須執行的周期數,使微控制器進(jìn)入閑置或睡眠模式。
表2 一個(gè)需要每秒120萬(wàn)周期的應用的功率相關(guān)數據

總結
架構方面的改進(jìn)提高了CPU的總體能力,使得嵌入式微控制器系統性能不斷提升。協(xié)處理器能夠從CPU卸載已詳細定義的計算密集型任務(wù),DMA控制器可把整個(gè)系統的數據移動(dòng)任務(wù)從CPU中解放出來(lái),而事件系統可解決有關(guān)多個(gè)由頻率觸發(fā)中斷的瓶頸問(wèn)題。通過(guò)減少系統必須處理的并行中斷的數目,開(kāi)發(fā)人員能夠提高系統固定性,從而降低延時(shí),提高信號的分辨率和精度,改善穩定性和可預測性,并增強系統可靠性。
評論