嵌入式處理器是一個復雜的高技術系統,要在短時間內掌握并開發出所有功能是很不容易的,而市場競爭則要求產品能夠快速上市,這一矛盾要求嵌入式處理器能夠有容易掌握和使用的開發工具平臺。提高用戶和程序員的時間--投入回報率。面對成百上千種處理器,選擇是一個問題,學習掌握處理器結構及其應用更需要時間,因此以開發工具和技術咨詢為基礎的整體解決方案是迫切需要的。好的開發工具除能夠開發出處理器的全部功能以外,還應當是對用戶友好的。
目前嵌入式系統的開發工具平臺主要包括下面幾類:
① 實時在線仿真系統ICE(In-CircuitEmulator)
在計算機輔助設計非常發達的今天,實時在線仿真系統(ICE)仍是進行嵌入式應用系統調試最有效的開發工具。ICE首先可以通過實際執行,對應用程序進行原理性檢驗,排除人的思維難以發現的設計邏輯錯誤。ICE的另一個主要功能是在應用系統中仿真微控制器的實時執行,發現和排除由于硬件干擾等引起的異常執行行為。此外,高級的ICE帶有完善的跟蹤功能,可以將應用系統的實際狀態變化、微控制器對狀態變化的反應、以及應用系統
對控制的響應等以一種錄像的方式連續記錄下來,以供分析,在分析中優化控制過程。很多機電系統難以建立一個精確有效的數字模型,或是建立模型需要大量人力,這時采用ICE的跟蹤功能對系統進行記錄和分析是一個快而有效的方法。
嵌入式應用的特點是和現實世界中的硬件系統有關,存在各種異變和事先未知的變化,這就給微控制器的指令執行帶來了各種不確定性,這種不確定性只有通過ICE的實時在線仿真器才能發現,特別是在分析可靠性時要在同樣條件下多次仿真,以發現偶然出現的錯誤。
ICE不僅是軟件硬件排錯工具,同時也是提高和優化系統性能指標的工具。高檔ICE工具(如美國NOHAU公司的產品)是可根據用戶投資裁剪功能的系統, 亦可根據需要選擇配置各種檔次的實時邏輯跟蹤器(Trace)、實時映象存儲器(Shadow RAM)及程序效率實時分析功能(PPA)。
② 高級語言編譯器(Compiler Tools)
C語言作為一種通用的高級語言,大幅度提高了嵌入式系統工程的工作效率,充分發揮出嵌入式處理器日益提高的性能,縮短產品進入市場時間。另外,C語言便于移植和修改,使產品的升級和繼承更迅速。更重要的是采用C語言編寫的程序易于在不同的開發者之間進行交流,從而促進了嵌入式系統開發的產業化。
區別于一般計算機中的C語言編譯器,嵌入式系統中的C語言編譯器要專門進行優化,以提高編譯效率。優秀的嵌入式系統C編譯器代碼長度和執行時間僅比以匯編語言編寫的同樣功能程度長5-20%。編譯效率的不同,是區別嵌入式系統C編譯器之間性能差別的重要根據之一。而C編譯器殘余的5-10%效率差別,完全可以由現代微控制器的高速度、大存儲器空間以及產品提前進入市場來彌補。
新型的微控制器指令速度不斷提高,存儲器空間也相應加大,已經達到甚至超過了目前的通用計算機中的微處理器,為嵌入式系統工程采用過去一直不敢問津的C+ +語言創造了條件。C++語言強大的類、繼承等功能更便于實現復雜的程序功能。但是C++語言為了支持復雜的語法,在代碼生成效率方面不免有所下降。為此,1995年初在日本成立的Embedded C++技術委員會經過幾年的研究,針對嵌入式應用制訂了減小代碼尺寸的EC++標準。EC++保留了C++的主要優點,提供對C++的向上兼容性,并滿足嵌入式系統設計的一些特殊要求。在嵌入式高級語言編譯器方面處于領先地位的Tasking公司,是EC++技術委員會成員之一,也是最先推出EC++產品的公司。
C/C++/EC++引入嵌入式系統,使得嵌入式開發和個人計算機、小型機等之間在開發上的差別正在逐漸消除,軟件工程中的很多經驗、方法乃至庫函數可以移植到嵌入式系統。在嵌入式開發中采用高級語言,還使得硬件開發和軟件開發可以分工,從事嵌入式軟件開發不再必須精通系統硬件和相應的指令集匯編。
另一種高級語言JAVA的發展則具有戲劇性。JAVA本來是為設備獨立的嵌入式系統設計的、為了提高程序繼承性的語言,但是目前基于JAVA的嵌入式開發工具代碼生成長度要比嵌入式C編譯工具差10倍以上。因此EC++很可能在未來的一段時間內仍是嵌入式系統的主流。
源程序模擬器是在廣泛使用的、人機接口完備的工作平臺上,如小型機和PC,通過軟件手段模擬執行某種嵌入式處理器內核編寫的源程序測試工具。簡單的模擬器可以通過指令解釋方式逐條執行源程序,分配虛擬存儲空間和外設,供程序員檢查;高級的模擬器可以利用計算機的外部接口模擬出處理器的I/O電氣信號。不同檔次和功能模擬器工具價格差距巨大。模擬器軟件獨立于處理器硬件,一般與編譯器集成在同一個環境中,是一種有效的源程序檢驗和測試工具。但值得注意的是, 模擬器畢竟是以一種處理器模擬另一種處理器的運行,在指令執行時間、中斷響應、定時器等方面很可能與實際處理器有相當的差別。另外它無法和ICE一樣,仿真嵌入式系統在應用系統中的實際執行情況。
3 結束語
嵌入式系統是將計算機直接嵌入到應用系統中,是信息技術的最終產品。嵌入式系統的核心就是嵌入式處理器。嵌入式系統是信息產業走向二十一世紀知識經濟時代的最重要的經濟增長點之一,這是一個不可壟斷的工業,對中國的信息產業來說充滿了機遇和挑戰。世界這么廣大,充滿了多樣化,尤其是我們已經進入到后PC時代--無所不在的計算(nomadic computing)使嵌入式處理器將遍及我們能夠想象得到的各個角落,因此,每種處理器都有存在的理由,都有可伸展的方向。這一點應特別引起中國信息產業界的關注。
隨著我國的龍芯、北大眾志、方舟、星光、漢芯等處理器芯片的問世,中國無芯的時代已經過去?!败浖谴竽X,芯片是心臟?!敝袊镜囊饬x不僅僅是中國有了自己的核心芯片,更重要的是中國也開始參與了世界半導體競技場的角逐,這樣更有利于我國在21世紀更加主動地、有利地、有效地分享嵌入式應用這塊大蛋糕。
但這個行業是一個充滿競爭的行業,科技、工程技術人員應該面對世界技術市場的變遷,迎頭趕上,早日形成在通用處理器、嵌入式處理器領域及其相關的軟件IC領域的核心技術鏈和產業鏈,從而為我國的信息產業、為我國的早日的真正崛起做出應有的貢獻。
評論