- Advertisement -
首頁 技術頻道 優化工作量/資料輸送量 雙核心MCU提高電源效率

優化工作量/資料輸送量 雙核心MCU提高電源效率

- Advertisement -

功耗/低延遲需求上揚 單核心設計漸難負荷

原則上,單個高速CPU核心可以透過時間切片運行多個獨立執行緒,以處理低延遲即時控制任務以及聯網和系統管理任務。不過,對於採用特定製程技術已達到如此高效能的核心晶片而言,其在功耗和複雜性方面的表現可能不甚理想。

對於運行在單個核心上的任何即時應用而言,還存在一個問題,即如何使執行緒和中斷處理常式輕鬆地按時完成任務。對於任何資源分享的實現,需要關注的一點是,不相關流程或中斷處理常式的運行會阻塞特定執行緒的運行時間。為了確保執行緒在各種沒有任何依賴關係的條件下按時完成任務,用於計算所需餘量值的保守演算法將要求留出相當大的一部分未分配的處理週期。

此外,還須要考慮頻繁進行任務切換的開銷及其對處理輸送量的影響。當單個核心處理大量中斷事件時,中斷處理及相關任務切換的開銷可能很大。一種選擇是透過更高的時脈速度構建更多的效能餘量。實際上,將應用分散到多個處理器核心可能更有意義。對於不主要依賴於單執行緒輸送量的任何多工應用,使用並行方式通常會提高能源效率、增加確定性並簡化開發過程。

有效進行多工作負載 雙核心設計備受青睞

雙核方案可以更有效地共用多工系統的工作負載。採用雙核方案時,還可以使用更低的核心時脈頻率,進而提高快閃記憶體的匹配度;此外,還有助於減少或消除處理器必須等待指令或資料從取指請求返回時的停頓週期(等候狀態)數(表1)。

在某些應用中,處理相關資料饋送任務的密切關聯特性仍然支援單一流水線。但是,在高效能嵌入式應用中執行不同的功能時,使用多個核心更有意義,因為各種功能的關聯程度相對鬆散。

例如,在採用韌體實現閉環控制的電源中,效能主要取決於將類比採樣轉換為數位所需的時間,隨後根據該時間資料計算新的工作週期,接著更新PWM。使用多核控制器時,透過在沒有其他優先順序任務執行的核心上運行延時關鍵型功能,可以確保該功能不受其他系統活動的阻礙。

與時間關鍵型控制回路計算並行工作時,另一個CPU核心可以執行其他任務,如PMBus通訊和系統監視功能。類似地,在馬達控制應用中,將控制回路處理和CAN介面協定棧拆分給不同的核心,確保馬達換相精確且具有確定性。

在專案開發時間方面,拆分處理還有其他優勢。但是,要利用這一優勢,兩個核心需要保持同質性,這一點很重要。一種傳統的多工處理方式是根據處理器類型劃分工作負載。針對乘法累加選項優化的流水線上將專門運行訊號處理程式,但幾乎沒有能力有效地運行控制程式碼,而通用處理器則負責處理分支密集型程式。

實際上,在許多即時應用中,這種架構很難處理。訊號處理操作通常取決於可能快速變化的外部條件。在不同核心間同步狀態所需的處理器間通訊實現起來可能很複雜,因為與用於將命令和狀態更新轉發到網路介面的消息相比,這種方案對時間同步的要求更為嚴格。

統一數位訊號控制器架構展妙用

統一的數位訊號控制器架構(如Microchip的dsPIC33)將兩種類型的執行特性融合到單一架構中,進而解決了上述同步問題。此類流水線不但能高速地進行乘法累加和矩陣運算,還具有快速分支能力和高中斷回應效能,因此參數和演算法可以動態地適應不斷變化的條件。

這最終簡化了複雜訊號處理演算法的軟體方案。然而,設計階段上的壓力則意味著,無論客戶選擇哪種架構,都會面臨程式碼整合的挑戰。在許多應用中,通訊和控制功能常常分別分配給不同領域專家的開發團隊。

整合來自兩個或更多團隊的程式碼時,將面臨著一個關鍵問題,即確定調度和任務優先順序如何在各團隊之間運作。看似微不足道的決策(例如各個任務的優先順序)也可能對應用的整體即時行為產生重大影響。決策不佳意味著重要任務將長時間得不到處理器的處理,而無法表現良好效能。透過將任務集分布在兩個處理器上,由最瞭解相關應用程式部分所使用執行緒的相對優先順序的工程師負責設置這些優先順序。

透過拆分處理,可更輕鬆地管理和分配資料記憶體,並確保在專案期間創建和調試的Makefile和連結描述檔設置在最終套裝軟體中仍然生效。這有助於減少軟體整合團隊的工作量,並縮短產品上市時間。

儘管已透過拆分處理優化了開發工作量和處理輸送量,MCU供應商(如Microchip)仍在不斷努力改進架構,致力於幫助用戶提高效能。以雙核dsPIC33CH為例,不僅提高中斷回應能力,且核心中還實現了額外的指令,以進一步提高DSP效能。

作為數位訊號控制器(DSC),dsPIC33CH包含許多先進周邊,可降低系統成本並縮小電路板尺寸。這些周邊包括高速ADC、具有波形生成功能的DAC、類比比較器、類比可程式設計增益放大器和高解析度PWM發生器(解析度達250 ps)。

更智慧的周邊和周邊觸發訊號發生器等先進功能有助於減少電源或馬達控制應用中核心中斷的次數。例如,UART為LIN/J2602、IrDA、DMX和智慧卡協定擴展提供硬體支援,以降低軟體開銷。同樣,CAN-FD周邊支援位元流處理器和可程式設計自動重發功能,能夠獨立於CPU核心更加自主地運行。

Microchip的dsPIC33CH設計專為當今工程團隊的開發需求而優化,非常適合各種高效能和時間關鍵型實際嵌入式控制應用。此架構能夠充分滿足客戶的獨立設計、無縫整合需求。結果是,這種架構不但能夠提高效能,還有助於縮短產品上市時間、減小系統尺寸並降低成本(圖1)。

圖1 統一的數位訊號控制器架構有助於縮短產品上市時間、減小系統尺寸並降低成本。

(本文作者任職於Microchip)

相關文章

- Advertisement -
- Advertisement -

最新文章

- Advertisement -

熱門文章

- Advertisement -

編輯推薦

- Advertisement -