性能需求直觀,特別是在開(kāi)發(fā)嵌入式應(yīng)用程序時(shí)。大多數(shù)設(shè)計(jì)團(tuán)隊(duì)面臨的挑戰(zhàn)是了解性能是多少,這本質(zhì)上取決于兩件事:所需的功能及其實(shí)現(xiàn)方式。雖然實(shí)現(xiàn)主要是在軟件中,但微控制器的部分價(jià)值在于外設(shè)在接口方面做了很多繁重的工作。然而,操縱這些接口提供的信息會(huì)給核心本身帶來(lái)更大的壓力和壓力。
更高的性能需要付出代價(jià);但由于微控制器往往是在完善的工藝節(jié)點(diǎn)上制造的,因此成本通常用系統(tǒng)級(jí)功率來(lái)衡量,而不是用元件級(jí)美元和美分來(lái)衡量。為某一特定應(yīng)用選擇最佳微控制器可以說(shuō)是有爭(zhēng)議的隨著最終用戶的需求,選擇范圍和功能深度不斷擴(kuò)大,變得越來(lái)越困難。
MCU應(yīng)用的發(fā)展
領(lǐng)先的半導(dǎo)體供應(yīng)商在過(guò)去十年中面臨著一段時(shí)間的采用或因此,提供基于32位處理核心的全面MCU組合。雖然ARM?的Cortex?-M系列在這個(gè)領(lǐng)域流行,但它并不是唯一的選擇,并且仍然存在多種專有架構(gòu)。也許其中最突出的是來(lái)自瑞薩的SuperH家族。值得注意的是,雖然瑞薩和其他公司也采用ARM架構(gòu)來(lái)生產(chǎn)互補(bǔ)的32位系列,但它們?nèi)匀惶峁?位和16位MCU,預(yù)計(jì)需求將持續(xù)數(shù)年。 》部分需求來(lái)自特定細(xì)分市場(chǎng);包括那些提到的許多設(shè)備制造商已將電機(jī)控制確定為跨越工業(yè)控制和汽車市場(chǎng)的重要水平部分。因此,許多仍然運(yùn)行專有核心的MCU專注于這些市場(chǎng),而那些具有更通用ARM架構(gòu)的MCU則針對(duì)具有不同基本要求的領(lǐng)域,包括物聯(lián)網(wǎng)和M2M。
在這十年中采用這些相同的供應(yīng)商時(shí),他們對(duì)現(xiàn)實(shí)世界對(duì)于成熟的8位和16位器件的更昂貴和復(fù)雜的32位替代品的需求持懷疑態(tài)度。雖然這些批評(píng)是有根據(jù)的,但隨著時(shí)間的推移,成本主題在很大程度上受到了規(guī)模經(jīng)濟(jì)和流程成熟的侵蝕??梢哉f(shuō),復(fù)雜性的主題仍然存在。但是,最終應(yīng)用程序的復(fù)雜性上升總是合理的,這主要是由于通信。嵌入式設(shè)備隨著更高級(jí)別的連接性的發(fā)展而發(fā)展,因此現(xiàn)在任何電子設(shè)備都不能以某種方式與外界進(jìn)行通信。當(dāng)今高級(jí)通信的地方特性,無(wú)論是有線還是無(wú)線,通常涉及標(biāo)準(zhǔn)化協(xié)議,以便提供互操作性和物理接口。根據(jù)通信接口的拓?fù)浣Y(jié)構(gòu),這可能相對(duì)復(fù)雜,因此需要更高的處理能力才能執(zhí)行。
當(dāng)然,更大的連接性并不是嵌入式設(shè)備在過(guò)去十年左右的唯一演變。通過(guò)連接,可以在更大的系統(tǒng)中發(fā)揮更大的作用,鼓勵(lì)開(kāi)發(fā)人員將更多功能集成到更小的外形,功率包絡(luò)和財(cái)務(wù)預(yù)算中。通信占據(jù)了相對(duì)較大比例的可用處理能力,這導(dǎo)致了對(duì)功能更強(qiáng)大的設(shè)備的需求,半導(dǎo)體供應(yīng)商通過(guò)采用更大,更復(fù)雜的處理器內(nèi)核來(lái)應(yīng)對(duì)這種需求。
測(cè)量性能
不幸的是,評(píng)估“標(biāo)準(zhǔn)”函數(shù)(如運(yùn)行協(xié)議棧)所需的性能量是完全主觀的。最終,它在很大程度上取決于核心,子系統(tǒng)和編譯器。由于這個(gè)原因,相對(duì)適中的8位器件可能能夠執(zhí)行代碼,但是接受更寬指令的流水線,通常允許多個(gè)指令同時(shí)執(zhí)行,或者需要更少的時(shí)鐘周期來(lái)執(zhí)行,可以顯著加快執(zhí)行速度。 br》當(dāng)考慮上述特征時(shí),通過(guò)應(yīng)用較少使用這些特征的算法,可以評(píng)估“原始”性能。這通常是行業(yè)基準(zhǔn)的目標(biāo),例如EEMBC的CoreMark。這個(gè)簡(jiǎn)單的C代碼庫(kù)的目標(biāo)是提供讀/寫(xiě),整數(shù)和控制操作的真實(shí)混合,這些操作更多地依賴于核心的基本元素,并且不能通過(guò)編譯器優(yōu)化輕易地消除。
基準(zhǔn)測(cè)試給出了單個(gè)品質(zhì)因數(shù),但它可以用時(shí)鐘速度表示,提供另一個(gè)標(biāo)準(zhǔn)化水平。選擇通過(guò)相對(duì)較窄的窗口(2.51至3.00 CoreMark/MHz)過(guò)濾結(jié)果顯示了一系列32位設(shè)備,包括瑞薩的RX600系列; Microchip的PIC32系列; STM32來(lái)自意法半導(dǎo)體;飛思卡爾的Kinetis K系列; Atmel的SAM3和SAM4系列;圖1:瑞薩的RX600 32位MCU系列實(shí)現(xiàn)了CMOS攝像頭接口。
EEMBC建議CoreMark基準(zhǔn)測(cè)試比其他產(chǎn)品更準(zhǔn)確,如圖1所示:來(lái)自瑞薩科技的OMAP35x。因?yàn)樗撬性O(shè)備的標(biāo)準(zhǔn),并且強(qiáng)烈關(guān)注核心架構(gòu)。
8位和16位器件的架構(gòu)將始終難以在核心級(jí)別與32位同類產(chǎn)品競(jìng)爭(zhēng),原因在于它們相應(yīng)地相應(yīng)吞吐量較低;在大數(shù)字上執(zhí)行的算術(shù)函數(shù)在僅有8位的ALU中總是需要更長(zhǎng)的時(shí)間。然而,許多制造商已經(jīng)竭盡全力延長(zhǎng)這些設(shè)備的使用壽命,主要是因?yàn)樗鼈內(nèi)阅軡M足客戶的要求,而不會(huì)增加復(fù)雜性或不必要的性能。
圖2:STM32 -L系列使用Cortex-M3來(lái)瞄準(zhǔn)超低功耗應(yīng)用。
這通常通過(guò)對(duì)核心架構(gòu)的創(chuàng)新擴(kuò)展來(lái)實(shí)現(xiàn),同時(shí)保留指令集。這方面的一個(gè)例子來(lái)自Silicon Labs,其基于8051的設(shè)備如C8051F12x。 SiLabs實(shí)施了一種“硬連線”8051指令集架構(gòu),可提高性能,同時(shí)保持與原始微編碼版本的目標(biāo)代碼兼容性。使用兩級(jí)流水線可提高吞吐量,保留8位程序存儲(chǔ)器寬度,但大多數(shù)指令可在1或2個(gè)時(shí)鐘周期內(nèi)執(zhí)行。 SiLabs表示,它的性能是原始8051內(nèi)核的20到25倍,峰值吞吐量高達(dá)100 MIPS。同樣,Atmel的AT89LP系列是8051兼容系列,該公司聲稱可以提供高達(dá)12倍于‘vanilla’8051設(shè)備的性能。 Atmel專有的8位架構(gòu)AVR為包括ATmega128在內(nèi)的器件供電,可提供真正的單時(shí)鐘周期執(zhí)行,并提供1 MIPS/MHz。根據(jù)EEMBC的結(jié)果,運(yùn)行頻率為2 MHz的ATmega1281的CoreMark/MHz數(shù)值為0.18,當(dāng)編譯器配置為優(yōu)化代碼大小時(shí),其數(shù)值上升至0.44。這與某些32位設(shè)備相當(dāng),并說(shuō)明了性能如何依賴于應(yīng)用程序向上移動(dòng)總線寬度
由于性能在很大程度上依賴于總線體系結(jié)構(gòu),因此在沿性能曲線遷移時(shí)保持代碼兼容性可能會(huì)在較低級(jí)別上具有挑戰(zhàn)性。正如Silicon Labs和Atmel所證明的那樣,重新實(shí)現(xiàn)指令集以提供更高的性能可以克服這一挑戰(zhàn),但隨著對(duì)性能的需求不斷加快,傳統(tǒng)指令集將不太可能滿足這種需求。 br》投資專有架構(gòu)可提供更大的性能擴(kuò)展空間,同時(shí)保持軟件兼容性;例如,德州儀器(TI)的MSP430系列基于16位RISC內(nèi)核。該系列涵蓋九個(gè)不同的系列,從低電壓和超值系列到FRAM和RF SoC系列。這種廣度提供了各種性能點(diǎn),通過(guò)每個(gè)器件提供的集成度,外設(shè)集和時(shí)鐘頻率提供。
雖然低級(jí)代碼兼容性主要取決于架構(gòu),但高級(jí)兼容性更簡(jiǎn)單,主要是由于普遍性C和C編譯器的可用性。軟件復(fù)雜性的本質(zhì)意味著今天大多數(shù)MCU使用C編程為高級(jí),而不是使用低級(jí)(匯編)語(yǔ)言。
圖3:MSP430價(jià)值線目標(biāo)是低成本,同時(shí)提供更高性能的遷移路徑。
雖然仍然存在特定于體系結(jié)構(gòu)的依賴關(guān)系,但這樣可以更大的自由來(lái)定位同一個(gè)系列的不同成員甚至是完全不同的系列。當(dāng)然,這也是ARM的Cortex-M系列被大量設(shè)備制造商成功采用的另一個(gè)原因。這得益于ARM和設(shè)備制造商提供的軟件開(kāi)發(fā)環(huán)境和庫(kù)。其不斷發(fā)展的生態(tài)系統(tǒng)也使供應(yīng)商和開(kāi)發(fā)商受益。
圖4:Atmel的SAM4L系列將Cortex-M4的更高性能與Atmel的微電源技術(shù)相結(jié)合。需求
對(duì)更高性能的持續(xù)需求意味著設(shè)備制造商現(xiàn)在在單個(gè)設(shè)備上集成了更多功能。雖然仍在不斷涌現(xiàn),但它采用的是異構(gòu)和同構(gòu)的多核MCU,其中多個(gè)相同的內(nèi)核或多個(gè)但不相似的內(nèi)核集成在一個(gè)設(shè)備中。
雖然這在針對(duì)移動(dòng)電話領(lǐng)域的特定應(yīng)用SoC中并不少見(jiàn),但在通用設(shè)備中卻不常見(jiàn)。然而,許多設(shè)備制造商認(rèn)為,在物聯(lián)網(wǎng)(IoT)的推動(dòng)下,它將變得更加普遍。物聯(lián)網(wǎng)還將促進(jìn)“智能”傳感器的更大部署,每個(gè)傳感器都可能具有高性能,32位嵌入式MCU。反過(guò)來(lái),這些將與傳感器集線器進(jìn)行通信(最有可能是無(wú)線傳輸),傳感器集線器將具有更高性能的處理器,能夠連接和控制傳感器網(wǎng)絡(luò)。
隨著這一趨勢(shì)的持續(xù),預(yù)計(jì)需求也將推動(dòng)性能進(jìn)一步提高,最終達(dá)到了64位內(nèi)核的MCU成為常態(tài)。
結(jié)論
性能是主觀的;許多應(yīng)用程序仍然只需要簡(jiǎn)單的控制,有限的連接,沒(méi)有“硬實(shí)時(shí)”要求。然而,隨著世界變得更加緊密,更復(fù)雜的通信協(xié)議所強(qiáng)加的要求將繼續(xù)提高性能標(biāo)準(zhǔn)。今天,一些8位和許多16位器件能夠滿足這種需求,而32位器件提供了巨大的空間。
今天,這個(gè)空間可能是許多應(yīng)用無(wú)法承受的奢侈品;成本優(yōu)化仍將指向更簡(jiǎn)單的設(shè)備。雖然通信協(xié)議不太可能“突然”變得更加計(jì)算密集,但最終應(yīng)用程序在復(fù)雜性方面處于不可阻擋的上升曲線,這將迅速消耗當(dāng)前可用的任何處理空間。
所有這些都指向更廣泛地采用32位架構(gòu),除此之外,還有更復(fù)雜的微控制器。
-
微控制器
+關(guān)注
關(guān)注
48文章
7490瀏覽量
151059 -
傳感器
+關(guān)注
關(guān)注
2548文章
50698瀏覽量
752046 -
集線器
+關(guān)注
關(guān)注
0文章
383瀏覽量
39457
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論