微控制器(MCU)多年來一直致力于低端,數(shù)字信號處理(DSP)中心應(yīng)用,數(shù)字信號控制器(DSC)中的硬件乘法累加(MAC)單元極大地擴展了DSP功能。盡管如此,集成外設(shè)和存儲器的MCU仍遠低于專用的DSP中心處理器和微處理器所提供的性能水平,這些處理器和微處理器也集成了輔助DSP內(nèi)核。然而,德州儀器(TI)和恩智浦半導(dǎo)體等供應(yīng)商提供的多核MCU產(chǎn)品的性能差距正在縮小。讓我們探討面向DSP挑戰(zhàn)的嵌入式設(shè)計人員的最新選擇,但也面臨系統(tǒng)占用和功耗問題,這通常會導(dǎo)致基于MCU的方法。
MCU中強大的以DSP為中心的功能可以追溯到十年前推出的第一款DSC。 Microchip推出了dsPIC30系列,結(jié)合了16位PIC24 MCU和硬件乘法累加(MAC)功能以及其他以DSP為中心的功能(如桶形移位器),從而創(chuàng)造了DSC術(shù)語。 TI以不同的方式接觸該部門,利用其DSP核心傳統(tǒng)的處理器技術(shù),并將其集成到具有C2000系列內(nèi)存和外設(shè)的MCU架構(gòu)中。
多核MCU
上面提到的DSC架構(gòu)是基于MCU或DSP遺留的單核設(shè)計。然而,最新的TI和NXP以DSP為中心的產(chǎn)品是真正的多核設(shè)計。每種情況下的意圖是將核心專用于最適合的任務(wù)。
TI新的Concerto系列如XF28M35H52C1RFPT結(jié)合了C28x以DSP為中心的內(nèi)核,包括浮點單元(FPU),它基本上是從TMS320F283x Delfino MCU系列演變而來的,該系列采用ARM Cortex-M3 RISC內(nèi)核已用于Stellaris MCU系列。實際上,使用Concerto的設(shè)計人員將兩個MCU合二為一,如框圖所示(圖1)。每個內(nèi)核都有自己專用的內(nèi)存和外設(shè)。還有一塊共享資源,支持電源時鐘和時鐘分配,以及處理器間通信,并實現(xiàn)基本的模擬外設(shè)。
圖1:TI的Concerto MCU包括獨立的RISC和以DSP為中心的內(nèi)核,每個內(nèi)核都有一組專用的外設(shè)和內(nèi)存資源。
恩智浦在圖2所示的LPC43xx MCU系列中采用了略微不同的方法。對于初學(xué)者來說,兩個CPU都基于ARM內(nèi)核。該系列不使用核心相同的同構(gòu)多核方法。相反,DSP功能集中在Cortex-M4內(nèi)核中,包括MAC,SIMD(單指令多數(shù)據(jù))執(zhí)行單元和FPU。同時,Cortex-M0內(nèi)核是ARM為MCU提供的基準32位RISC產(chǎn)品。恩智浦架構(gòu)提供了一組由內(nèi)核共享的內(nèi)存和外設(shè)功能,盡管設(shè)計可以將特定內(nèi)存塊和外設(shè)專用于單個內(nèi)核。
從編程角度來看,嵌入式設(shè)計人員面臨著TI和NXP多核MCU面臨的不同挑戰(zhàn)。在NXP的情況下,除了只有Cortex-M4支持數(shù)學(xué)指令外,內(nèi)核在指令集方面基本兼容。這應(yīng)該簡化應(yīng)用程序開發(fā)以及將任務(wù)分配到兩個核心的過程。
圖2:恩智浦在LPC43xx中結(jié)合了ARM-Cortex-M0和-M4核心系列,內(nèi)核共享一組內(nèi)存和外設(shè)資源。
在Concerto的情況下,核心具有完全不同的指令集。但TI表示,其開發(fā)工具可以緩解異構(gòu)內(nèi)核引入的任何復(fù)雜問題。該公司為兩個內(nèi)核提供ControlSUITE集成開發(fā)環(huán)境(IDE)版本,為開發(fā)團隊提供統(tǒng)一的開發(fā)窗口。編程通常使用高級語言完成,ControlSUITE支持雙核調(diào)試功能。有關(guān)詳細信息,請在Digi-Key網(wǎng)站上查看ControlSUITE產(chǎn)品培訓(xùn)模塊。
控制任務(wù)消耗DSC
當然,問我們?yōu)槭裁葱枰哂袃蓚€內(nèi)核的MCU這一問題是公平的。 MCU部分與通用微處理器部分非常不同。在后者中,多個同構(gòu)核既加速了多線程應(yīng)用,又提高了單個微處理器的聚合處理能力。
在MCU的情況下,應(yīng)用程序的實時控制環(huán)處理要求通常決定了處理器的選擇,并且這種控制環(huán)路通常不能分布在多個內(nèi)核上。多核MCU通常將以DSP為中心的核心專用于控制環(huán)路和通用核心系統(tǒng)管理任務(wù)。
當然有許多已部署的示例,其中傳統(tǒng)DSC處理控制循環(huán)處理,同時還處理系統(tǒng)管理功能和通信接口。然而,TI表示,其C2000 DSC的大量用戶群將IC與通用MCU相結(jié)合。做出這個決定是因為系統(tǒng)管理任務(wù)會限制DSC可以處理實時控制的保真度。
讓我們考慮一個例子來說明需要兩個核心以及突出顯示其他一些Concerto功能。 Concerto MCU中的C28x內(nèi)核擅長電機控制等任務(wù)。高分辨率PWM外設(shè)支持該應(yīng)用。同時,一些電機控制應(yīng)用還需要專門的通信,例如電力線調(diào)制解調(diào)器。 Cortex-M3 CPU可以處理高級通信功能,但需要C28x內(nèi)核來處理調(diào)制解調(diào)器功能。電機控制和調(diào)制解調(diào)器算法的結(jié)合將禁止C28x內(nèi)核充當系統(tǒng)管理器。
Concerto中使用的C28x內(nèi)核包括一個稱為VCU(Viterbi數(shù)學(xué)復(fù)合單元)的硬件模塊,TI也在其他一些最近發(fā)布的C2000 MCU上提供了該模塊。圖3描繪了可能在電力線調(diào)制解調(diào)器中使用的維特比解碼鏈。在VCU上實現(xiàn)該算法導(dǎo)致的性能比使用C28x上的軟件實現(xiàn)可實現(xiàn)的性能高25倍。事實證明,雙核設(shè)計不僅能夠?qū)崿F(xiàn)無法在單核設(shè)備中實現(xiàn)的應(yīng)用,還能夠支持以前可能需要更高端微處理器和DSP處理器組合的應(yīng)用。
圖3:對于以通信為中心的應(yīng)用,如電力線調(diào)制解調(diào)器,Concerto集成了VCU(Viterbi數(shù)學(xué)復(fù)合單元),以加速維特比解碼器等應(yīng)用。
確實,支持多核的MCU的不斷發(fā)展的功能將支持新的應(yīng)用類,并為設(shè)計團隊帶來新的挑戰(zhàn)。電力線通信等應(yīng)用非常復(fù)雜。 TI通過DSP內(nèi)核庫和更高級別的應(yīng)用程序庫提供幫助。例如,該公司提供用于電機控制,數(shù)字電源控制,電力線通信和其他功能的應(yīng)用程序庫。
TI還提供了一種既定的方法,可以提供開發(fā)工具和套件,使設(shè)計團隊能夠輕松地嘗試新的基于C2000的MCU。該公司為C2000系列中的每個MCU提供所謂的ControlCARD。 ControlCARD托管處理器,并通過標準化連接器訪問所有MCU信號。設(shè)計團隊可以使用ControlCARD連接器開發(fā)單個應(yīng)用板,并評估目標應(yīng)用中的許多C2000 MCU。 TI還提供結(jié)合了ControlCARD和通用基板的實驗套件。對于協(xié)奏曲,TI提供TMDXCNCDH52C1 ControlCARD和TMDXDOCKH52C1實驗套件。
結(jié)論
下次遇到性能密集型設(shè)計挑戰(zhàn)時,請確保考慮集成多個內(nèi)核的MCU的新興趨勢。正如摩爾定律推動微處理器部門采用混合均勻和異構(gòu)核心的產(chǎn)品一樣,這一趨勢肯定會升級。在MCU領(lǐng)域,您可以期待專注于針對應(yīng)用程序特定元素的內(nèi)核的設(shè)計。對于TI和NXP,您將獲得一個RISC核心,它擅長作為系統(tǒng)管理器和以DSP為中心的核心來處理粒度控制環(huán)路和實時響應(yīng)。編程此類設(shè)備可能比您最初預(yù)期的要簡單。
-
dsp
+關(guān)注
關(guān)注
554文章
8057瀏覽量
349553 -
mcu
+關(guān)注
關(guān)注
146文章
17199瀏覽量
351922 -
調(diào)制解調(diào)器
+關(guān)注
關(guān)注
3文章
854瀏覽量
38856
發(fā)布評論請先 登錄
相關(guān)推薦
評論