嵌入式開發(fā)工具發(fā)展趨勢
近年來嵌入式領(lǐng)域得到了迅猛發(fā)展,嵌入式系統(tǒng)已經(jīng)無處不在,嵌入式系統(tǒng)的開發(fā)也變得越來越復(fù)雜,軟硬件的復(fù)雜度都大幅度增加。而市場對于嵌入式系統(tǒng)的開發(fā)周期要求也越來越高,這對于嵌入式開發(fā)工具提出了新的挑戰(zhàn)。
1 嵌入式開發(fā)工具面臨的挑戰(zhàn)
嵌入式開發(fā)過程相對PC應(yīng)用程序開發(fā)而言,具有其特殊的復(fù)雜性,涉及更多的硬件以及操作系統(tǒng)底層的知識,缺乏統(tǒng)一的軟硬件平臺,系統(tǒng)建模、工程管理和項(xiàng)目管理的工具也非常缺乏。隨著32位嵌入式處理器的應(yīng)用越來越廣泛,市場對于嵌入式系統(tǒng)的性能要求不斷提高。當(dāng)前嵌入式系統(tǒng)的復(fù)雜程度已不是過去8位單片機(jī)系統(tǒng)所能比擬的了,這對項(xiàng)目的開發(fā)、測試、管理都提出了新的要求,過去的嵌入式開發(fā)工具已經(jīng)越來越無法適應(yīng)新的需求。總體上講,當(dāng)前的嵌入式開發(fā)對工具提出了以下新需求:
(1)如何從4/8/16位處理器過渡到32位處理器?
中國很多嵌入式工程師都具有8位處理器的開發(fā)經(jīng)驗(yàn),多數(shù)高校畢業(yè)生在學(xué)校也是接受8位處理器的培訓(xùn)。目前,8位處理器在微控制器領(lǐng)域仍具有重要的地位,但是2008年32位微控制器的全球出貨量第一次超過了8位。引起這一市場變化的原因有兩個:其一是市場需要性能更高、功能更復(fù)雜的產(chǎn)品,8位處理器在功能上已經(jīng)無法滿足要求;其二是32位RISC微處理器價(jià)格已經(jīng)非常便宜了,例如ST公司基于Cortex―M3的STM32處理器,最便宜的僅僅1美元。
32位處理器與8位處理器在體系結(jié)構(gòu)上還是有著很大區(qū)別的,如何讓熟悉8位處理器的工程師迅速熟悉并能進(jìn)行32位處理器的開發(fā)非常重要。這就需要為那些熟悉8位處理器開發(fā)的工程師提供一種界面、接口他們都熟悉的32位處理器開發(fā)工具。ARM公司推出的RealViewMDK是一個典型范例:MDK的IDE采用了中國工程師非常熟悉的μVision(Keil),內(nèi)部則使用了ARM公司的專業(yè)編譯工具RVCT,這樣熟悉8位處理器的工程師可以非常平滑地過渡到32位處理器開發(fā)中。
(2)如何加快開發(fā)周期?
嵌入式系統(tǒng)現(xiàn)在越來越復(fù)雜,硬件復(fù)雜性和軟件復(fù)雜性大大增加。由于很多硬件已經(jīng)高度集成,這導(dǎo)致在目前的嵌入式系統(tǒng)開發(fā)中,軟件開發(fā)占80%以上的工作量。因此現(xiàn)在某些嵌入式軟件開發(fā)已經(jīng)逐步達(dá)到中型軟件項(xiàng)目的程度,而隨著軟件規(guī)模的增大,軟件按時(shí)交付率將會下降。但是市場對嵌入式系統(tǒng)開發(fā)周期要求卻越來越短。
嵌入式開發(fā)中軟件和硬件的依賴性非常高,軟件開發(fā)和硬件開發(fā)需要協(xié)同進(jìn)行。如果能減少兩者之間的依賴性,尤其是軟件開發(fā)對硬件開發(fā)的依賴,那么將可以大大加快開發(fā)周期。
(3)各類工具之間如何配合?
嵌入式開發(fā)過程中會使用到各種工具,包括IDE環(huán)境、編譯工具、軟硬件調(diào)試工具、操作系統(tǒng)等。根據(jù)項(xiàng)目的需求,往往會選擇來自不同廠商的工具進(jìn)行組合。如果能非常方便地將這些不同廠商的工具無縫地配合起來,則可以大大減少不必要的工作,這對于開發(fā)人員而言很重要。
(4)如何調(diào)試復(fù)雜的系統(tǒng)?
嵌入式系統(tǒng)越來越復(fù)雜,很多嵌入式系統(tǒng)都開始使用各種操作系統(tǒng),并使用多核結(jié)構(gòu)。但是傳統(tǒng)的JTAG調(diào)試方法能力非常有限,尤其是當(dāng)目標(biāo)設(shè)備實(shí)時(shí)運(yùn)行的時(shí)候,開發(fā)人員通常只能使用串口打印輸出的方法來做調(diào)試。當(dāng)需要分析內(nèi)存錯誤、多任務(wù)之間關(guān)系、異常或中斷處理、睡眠模式等情況時(shí),目前的調(diào)試方法基本無效,系統(tǒng)實(shí)時(shí)運(yùn)行時(shí)基本是黑箱運(yùn)行。這就需要更加強(qiáng)大的調(diào)試工具和手段來為開發(fā)復(fù)雜的嵌入式應(yīng)用提供支持。
(5)如何提高編譯性能?
新的商業(yè)應(yīng)用嵌入式系統(tǒng)中,多處理器系統(tǒng)和各種多核處理器已經(jīng)成為趨勢,這些新的硬件架構(gòu)會帶來非常可觀的效益。但是這種多核和多處理器的結(jié)構(gòu)給編譯系統(tǒng)提出了非常高的要求。例如一個ARM+DSP的系統(tǒng),如何將工作合理地分配給ARM處理器和DSP處理器,這非常重要。優(yōu)秀的編譯工具,應(yīng)該能使它們能實(shí)現(xiàn)“1+1>2”。
(6)如何實(shí)現(xiàn)圖形化開發(fā)?
圖形化開發(fā)在計(jì)算機(jī)軟硬件開發(fā)中已不是新問題了。圖形化的開發(fā)方法能大大減少開發(fā)工作量和復(fù)雜程度。
評論