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