低功耗物聯(lián)網(wǎng)應用的處理器配置
系統(tǒng)架構要求
為了執(zhí)行高級系統(tǒng)功能,系統(tǒng)設計經(jīng)常要求升級應用處理器的性能水平,但同時還要維持類似8位微控制器系統(tǒng)的功耗。把它想象成用發(fā)條玩具的電量提供一個智能手機的大腦。能配置處理器實現(xiàn)這些似乎有沖突的目標,至關重要。本文說明通過選擇和配置處理器,降低系統(tǒng)功耗的技術和方法。
把 DSP 處理與 RISC 處理相結合
物聯(lián)網(wǎng)設備的定義是根據(jù)它們的能力,包括吸收或“感知”真實世界的信號,通過互聯(lián)網(wǎng)或本地網(wǎng)絡對關聯(lián)數(shù)據(jù)和通信結果進行操作。大多數(shù)通用 RISC 處理器可以成功地處理信號,但是專用的 DSP 處理這些任務的功耗效率更好,延遲更低。另一方面,RISC 處理器很適合傳遞數(shù)據(jù)和設置通信通道。用分離的多個獨立的處理器是一個選擇,但是它會增加系統(tǒng)的成本和板級空間,開發(fā)和調(diào)試還要用多種環(huán)境與工具。如果一個芯片兼具兩種功能,就可以降低復雜性和成本。
語音觸發(fā)、語音控制、語音回放和慣性傳感器處理等主要功能在實時啟動和低功耗環(huán)境中已經(jīng)是必需品了,這就要求系統(tǒng)的DSP指令能夠在滿足低功耗目標下實現(xiàn)諸如濾波、快速傅立葉變換(FFT)和插值等任務。
DesignWare® ARC® EMxD 系列處理器面對這些挑戰(zhàn),通過向 ARC 可配置處理器核心增加有 ARCv2DSP指令集架構(ISA)的 DSP 引擎,在一個統(tǒng)一的架構里進行 RISC 和數(shù)字信號處理(圖 1)。它們功耗低,對語音控制用的語音檢測功耗可以低于 1 微瓦。
ARC EM DSP 處理器高度可配置,以便每個用例都可以量身定制,最好地平衡目標應用的 DSP 性能和 RISC 性能,以及功耗效率和面積效率。例如,ARC EM5D 和 EM7D 很適合需要約 50% DSP 處理的應用,而 EM9D 和 EM11D 支持 XY 存儲器,用于 DSP 敏感的應用很理想。ARC 處理器擴展(APEX)技術還讓設計工程師能創(chuàng)建用戶定義指令,支持集成定制的硬件加速器,提高特定應用的性能,同時又降低耗電量和減少需要的存儲器數(shù)量。
圖 1:ARC EMxD 框圖
包括支持多組存儲器
在RISC + DSP處理器中用來實現(xiàn)典型的 DSP MAC 操作的代碼,包括從存儲器加載數(shù)據(jù),然后按加載的操作數(shù)執(zhí)行 MAC 操作。如圖 2 所示,先是通過加載指令獲得兩個數(shù)據(jù)值然后緊接著進行MAC操作,本架構的最大吞吐量可以達到每個周期1/3 MAC。
圖 2:RISC + DSP 架構中的 DSP MAC 操作
增加一個 XY 存儲器系統(tǒng),可以支持需要更大吞吐量的 DSP 應用。一個基于 XY 存儲器的系統(tǒng)一般包括多組存儲器和帶有指針和更新寄存器的自動化地址生成單元(AGU)。AGU 置于指令流水線中,允許一條指令執(zhí)行三個數(shù)據(jù)移動、一個 MAC 操作和三個地址指針更新,支持多址指針升級模式。這種方法使用一個基于 XY 存儲器的系統(tǒng)架構,可以實現(xiàn)每個周期一個 MAC 操作的有效吞吐量,顯著提升性能(圖 3)。因為 XY 存儲器系統(tǒng)不需要單獨加載和遞增指令,還能減少代碼。
圖 3:有 XY 存儲器的 RISC + DSP架構里的DSP MAC 操作
除了提高吞吐量和減少代碼外,降低耗電量是常常被忽視的一大優(yōu)勢。如圖 4 所示,DSP 函數(shù)通過使用 XY 存儲器(EM9D)可以大幅節(jié)省電量,因為同樣的函數(shù)需要的時鐘周期數(shù)更少,尤其是為 RISC + DSP 架構量身定制時,允許 RISC 和 DSP 同時訪問。
圖 4:隨著 DSP 需要的增加,有無 XY 存儲器的耗電量比較
用緊密集成的存儲器
物聯(lián)網(wǎng)應用對性能和處理能力的要求不斷提高,推動了從緊密集成 8 位微處理器的嵌入式系統(tǒng)轉(zhuǎn)向基于總線的 32 位處理器嵌入式系統(tǒng)的發(fā)展趨勢。這個趨勢對系統(tǒng)的功耗和面積產(chǎn)生了負面影響,違背了物聯(lián)網(wǎng)產(chǎn)品隨著大規(guī)模應用變得更小更便宜的主要需求。向 32 位嵌入式處理器系統(tǒng)緊密集成的擴展,移除較為低效的總線基礎架構,可以同時實現(xiàn)所有這些系統(tǒng)目標。處理器可以直接訪問各個存儲器和外部寄存器,降低延遲和需要的時鐘頻率,從而會降低執(zhí)行這些功能所需要的電量。
降低情況的示例如圖 5 所示,圖中比較了基于總線的處理器子系統(tǒng)和緊密集成的系統(tǒng)處理傳感器數(shù)據(jù)的用電情況。處理器核心訪問輔助寄存器用一個時鐘周期,而在基于總線的系統(tǒng)里,外部寄存器要用四個周期。
圖 5:緊密集成的系統(tǒng)中處理傳感器數(shù)據(jù)的省電情況
DMA
降低處理器系統(tǒng)功耗的另一種方法是使用直接存儲器訪問(DMA),這種方法使周邊設備不用涉及 CPU 就能移動數(shù)據(jù)。要確保系統(tǒng)面積優(yōu)化,DMA 必須面向處理器和應用進行高度優(yōu)化。因為內(nèi)部 DMA 移動數(shù)據(jù)進出 XY 存儲器不會影響處理器通道,所以把 DMA 和多級存儲器結合起來,甚至會節(jié)省更多電量。
Synopsys 的 ARC EM 系列處理器的 µDMA 法完全以物聯(lián)網(wǎng)應用為目標,只包含這種類型的嵌入式系統(tǒng)需要的特性。µDMA 控制器通過讓 EM內(nèi)核休眠來降低電量操作,而 µDMA 圍繞芯片從周邊設備向存儲器移動數(shù)據(jù),或在存儲器之間移動數(shù)據(jù)時,并且只在必要時才喚醒內(nèi)核。另外多種的休眠模式可以用來自定義最小的可運行功耗。
軟件算法加速
如上所述,物聯(lián)網(wǎng)應用的要求不斷擴張,其中一個重要的關鍵是安全性。不過,安全算法會使系統(tǒng)更復雜,而系統(tǒng)的功耗和面積預算已經(jīng)非常緊張。通過減少時鐘周期來加速安全算法可以降低功耗。對系統(tǒng)需要的任何常見或常用功能來說,確實如此;通過提高執(zhí)行效率,用得越多越省電。
ARC EM 處理器系列使用 APEX 技術,使 SoC 設計工程師可以簡化和自動化處理設計和驗證常見功能的擴展,像加密軟件算法或客戶專用代碼,從而使執(zhí)行這些常用算法耗費的時間、存儲器和電量更少。
圖 6:使用APEX加速對傳感器應用軟件運行時的耗電量降低和周期數(shù)減少情況
結論
為物聯(lián)網(wǎng)應用設計芯片時,設計工程師為了滿足性能要求的不斷發(fā)展,經(jīng)常要考慮犧牲耗電量。設計工程師可以選擇架構方法達到需要的性能而不犧牲能量效率。選擇處理器架構時,關鍵要看靈活性和可配置性,還要能擴展以適應不斷變化的應用要求。
ARC EM 系列處理器可以擴展,能提供不會過時的產(chǎn)品路線圖,能靈活找出最佳的性能功耗比。能用 APEX 技術定制處理器,就能在物聯(lián)網(wǎng)市場競爭中差異化你的產(chǎn)品。





