嵌入式系統(tǒng)中的MCU(微控制器)正在經(jīng)歷著從8/16位到32位的轉移,雖然在量產(chǎn)上8/16位還是主流,但是新的設計采用32位占多數(shù),32位MCU越來越多地采用ARM CortexM內(nèi)核,具備更大的內(nèi)置存儲空間,集成了更多的外設和豐富的互聯(lián)功能。MCU無論是開發(fā)成本,還是開發(fā)難度都在從硬件轉移到軟件,如何降低軟件開發(fā)的成本、如何克服軟件開發(fā)中的問題變得非常重要。
IDE是主流 原廠工具有空間
傳統(tǒng)的IDE工具仍然會在MCU開發(fā)中廣泛使用,比如IAR公司Eembeded Workbench,支持各家MCU芯片公司從8/16位到ARM MCU、KEIL公司8051和ARM MDK,這些工具強調(diào)的是全面的MCU支持和易用性,也就是說它們不受到廠家和品種的限制(無論是8位還是32位)。目前,他們還是市場主流,受到有實力的大型設備制造商和MCU芯片公司的青睞。
為更廣泛和多層次滿足開發(fā)者的需求、壓縮研發(fā)的成本、追求新品的采用和上市時間,MCU芯片公司自己的開發(fā)工具將占有更大的市場份額,比如飛思卡爾CodeWarrior、Atmel Studio 6和Microchip公司MPLAB。換言之,用戶使用這些工具基本感覺不到他們是在使用8位MCU還是32位MCU。Microchip就是比較有特色的一家企業(yè),因為他們的32位MCU使用的是MIPS架構,而不是大家很熟悉的ARM架構,工具的易用性和8位到32位升級的兼容性就更重要了。
開發(fā)工具呈三大趨勢
基于開源軟件的開發(fā)工具會在MCU開發(fā)中逐漸流行,比如Menror嵌入式部門的Sourcey G++和瑞典Atollic的TrueStudio。前者主要針對32位高端MCU和MPU(嵌入式處理器,比如PPC和OMAP),當然也支持ARM CortexM3/M4,后者還支持AVR架構的代碼優(yōu)化,因為MCU的主頻和片內(nèi)的FLASH/RAM容量還是有限的。中國的CooCox工具也支持開源編譯工具。
軟件質(zhì)量和安全需求日益提高,MCU軟件設計和測試工作也越來越多,基于UML設計、靜態(tài)代碼分析和動態(tài)覆蓋測試等,把MCU開發(fā)和設計測試工具集成起來,也是一種趨勢。比如IAR的VisualState和Atolic,前者是一個基于狀態(tài)機和UML的設計工具,支持嵌入式MCU代碼生成和執(zhí)行;后者是集成部分測試功能的MCU開發(fā)工具,許多MCU開發(fā)工具也通過支持MISRA C規(guī)范檢查,達到一定汽車電子工業(yè)軟件安全標準要求,比如EWARM。
32位MCU實時處理、互聯(lián)、存儲和圖像功能的提升都離不開RTOS、TCP/IP、USB、CAN和GUI等組件。MCU芯片公司抑或自己提供豐富功能的軟件庫和組件或者提供支持第三方開發(fā)的產(chǎn)品。此外,MCU工具公司也集成了RTOS模塊。嵌入式MCU開發(fā)工具正在越來越緊密地和RTOS組件庫結合,并支持RTOS aware(識別)和調(diào)試,這些現(xiàn)在已經(jīng)成為標配。RTOS和組件對于以ARM Cortex M3為代表的主流MCU優(yōu)化,可以大大提高RTOS的效率,極大地提高了調(diào)度算法的效率。
國產(chǎn)MCU工具仍有機會
MCU開發(fā)工具與其他電子設計工具一樣,是歐美的天下,國內(nèi)產(chǎn)品只有CooCox得到了NXP和臺灣新唐的支持,他們有一定的海外用戶。廣州致遠公司(周立功創(chuàng)辦)的TKstudio支持廣泛的MCU系列芯片和工具鏈,但是沒有得到市場回報,最近宣布關閉這個項目。這與我們國產(chǎn)芯片設計在通用MCU領域基本沒有作為也不無關系,中國本土MCU工具公司很難參與到海外MCU芯片公司建立的影響全球的生態(tài)環(huán)境中。
隨著中國MCU市場在全球產(chǎn)業(yè)地位的提升,國外MCU公司紛紛在華設立MCU研發(fā)中心。ST和ATMEL公司MCU中國研發(fā)中心都有開發(fā)工具相關的小組。此外,中國正版意識也在提高,本土和臺灣MCU芯片設計逐漸崛起,國產(chǎn)MCU軟件開發(fā)工具和軟件仍有發(fā)展機會。