嵌入式系統(tǒng)中的處理器技術(shù)綜述
引言
嵌入式系統(tǒng)是將應(yīng)用程序和操作系統(tǒng)與計(jì)算機(jī)硬件集成在一起的系統(tǒng),它以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、功能、可靠性、成本、體積、功耗嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。這種系統(tǒng)具有軟件代碼小,高度自動(dòng)化,響應(yīng)速度快等特點(diǎn),特別適合于要求實(shí)時(shí)的和多任務(wù)的體系。嵌入式設(shè)備是指應(yīng)用了嵌入式系統(tǒng)的計(jì)算機(jī)設(shè)備。從某種意義上來(lái)講確實(shí)是大型計(jì)算設(shè)備的一個(gè)微縮,這一微縮肯定多少會(huì)帶來(lái)相對(duì)性能上的減弱。但正是這一體積的微縮帶給人們的方便卻是無(wú)法比擬的。擁有嵌入式設(shè)備,人們可以隨時(shí)隨地的閱覽電子書(shū)籍,預(yù)定機(jī)票,在任何一個(gè)陌生的城市都不會(huì)丟失,甚至可以在最短的時(shí)間內(nèi)看到任何一部想看到的電影。
關(guān)于嵌入式設(shè)備的軟件開(kāi)發(fā)2001年IT產(chǎn)業(yè)生產(chǎn)20億臺(tái)微型計(jì)算機(jī)。其中,95%將用于嵌入設(shè)備用途。因此,與其以每年上市的1億5000萬(wàn)臺(tái)網(wǎng)絡(luò)化計(jì)算機(jī)為研究對(duì)象,倒不如加大力度推進(jìn)80億臺(tái)嵌入設(shè)備的網(wǎng)絡(luò)化、將注意力放在制造與之相適應(yīng)的軟件上來(lái)。美國(guó)英特爾公司研究部門(mén)的領(lǐng)導(dǎo)人 DavidTennenhouse在舊金山召開(kāi)的ComputingContinuumConference會(huì)議上這樣說(shuō)道"有關(guān)計(jì)算機(jī)的研究,比起1億 5000萬(wàn)臺(tái)計(jì)算機(jī),更應(yīng)該加大8億臺(tái)嵌入微處理器設(shè)備的網(wǎng)絡(luò)化"。構(gòu)筑無(wú)論何時(shí)何地都可與網(wǎng)絡(luò)連接的環(huán)境以及開(kāi)發(fā)適應(yīng)型軟件已成為當(dāng)務(wù)之急。在仔細(xì)考察了國(guó)外嵌入式設(shè)備軟件現(xiàn)狀和國(guó)內(nèi)的市場(chǎng)潛力后,嵌入式設(shè)備軟件將在國(guó)內(nèi)掀起一場(chǎng)軟件革命!
1 嵌入式處理器技術(shù)
嵌入式系統(tǒng)的核心是嵌入式微處理器。嵌入式處理器是用于在計(jì)算機(jī)之外的設(shè)備中提供添加的功能性的計(jì)算機(jī)芯片,它經(jīng)常用于控制和監(jiān)控領(lǐng)域。
椐世界半導(dǎo)體貿(mào)易統(tǒng)計(jì)數(shù)據(jù)藍(lán)皮書(shū)中的審計(jì)報(bào)告顯示, 從單位銷(xiāo)售額角度看,象Intel公司的Pentium系統(tǒng)、Advanced Micro Devices公司的Athlon以及IBM和Motorola公司的PowerPC等處理器的市場(chǎng)份額只占世界市場(chǎng)的6%,余下的94%,即50億片芯片為嵌入式微處理器。據(jù)估計(jì),平均每個(gè)美國(guó)家庭擁有大約60片內(nèi)嵌式處理器。 一些嵌入式處理器是由桌面市場(chǎng)中傳下來(lái)的東西,即使對(duì)于今天的PC已經(jīng)過(guò)時(shí),但對(duì)于處理功能要求較低的任務(wù)卻綽綽有余的芯片。過(guò)去驅(qū)動(dòng)象TRS-80 、Apple II和Commodore 64這類(lèi)早期PC的Z80和6502處理器現(xiàn)在仍是非常暢銷(xiāo)的產(chǎn)品。 甚至最低級(jí)的4位處理器的銷(xiāo)售量也遠(yuǎn)遠(yuǎn)超過(guò)象Pentium這類(lèi)32位處理器。老式的處理器也沒(méi)有淡出江湖:它們只是變?yōu)榍度胧搅恕? 因此,嵌入式微處理器市場(chǎng)異乎尋常的廣闊。在PC市場(chǎng)的任何時(shí)刻,微處理器之間性能差距只有約3比1,目前速度最快的芯片以1GHz速度運(yùn)行,而最慢的最常用的芯片的速度為333MHz。與此相比,僅就32位嵌入式微處理器來(lái)說(shuō),其性能范圍為500比1。如果你在4位和8位嵌入式處理器中進(jìn)行比較的話(huà),性能范圍為幾千比一。
隨著這類(lèi)處理器體積越變?cè)叫?,價(jià)格越來(lái)越便宜,功能越來(lái)越強(qiáng)大,它們將進(jìn)入到更多的設(shè)備和產(chǎn)品中。現(xiàn)在,它們已經(jīng)存在于會(huì)唱歌的賀卡和測(cè)量行程的運(yùn)動(dòng)鞋中。最終,由于毫微米技術(shù)的出現(xiàn),它們將變得象原子那樣普通,并且?guī)缀跸笤幽菢有 ?/p>
嵌入式系統(tǒng)的廣泛應(yīng)用正是嵌入式微處理器具備以下4個(gè)特點(diǎn):
①對(duì)實(shí)時(shí)多任務(wù)有很強(qiáng)的支持能力,能完成多任務(wù)并且有較短的中斷響應(yīng)時(shí)間,從而使內(nèi)部的代碼和實(shí)時(shí)內(nèi)核心的執(zhí)行時(shí)間減少到最低限度。②具有功能很強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能。這是由于嵌入式系統(tǒng)的軟件結(jié)構(gòu)已模塊化,而為了避免在軟件模塊之間出現(xiàn)錯(cuò)誤的交叉作用,需要設(shè)計(jì)強(qiáng)大的存儲(chǔ)區(qū)保護(hù)功能,同時(shí)也有利于軟件診斷。③可擴(kuò)展的處理器結(jié)構(gòu),以能最迅速地開(kāi)展出滿(mǎn)足應(yīng)用的最高性能的嵌入式微處理器。④嵌入式微處理器必須功耗很低,尤其是用于便攜式的無(wú)線及移動(dòng)的計(jì)算和通信設(shè)備中靠電池供電的嵌入式系統(tǒng)更是如此,如需要功耗只有mW甚至μW級(jí)。
1.1 嵌入式處理器的種類(lèi)
目前據(jù)不完全統(tǒng)計(jì),全世界嵌入式處理器的品種總量已經(jīng)超過(guò)1000多種,流行體系結(jié)構(gòu)有30幾個(gè)系列,其中8051體系的占有多半。生產(chǎn)8051單片機(jī)的半導(dǎo)體廠家有20多個(gè),共350多種衍生產(chǎn)品,僅Philips就有近100種?,F(xiàn)在幾乎每個(gè)半導(dǎo)體制造商都生產(chǎn)嵌入式處理器,越來(lái)越多的公司有自己的處理器設(shè)計(jì)部門(mén)。嵌入式處理器的尋址空間一般從64KB到16-32MB,處理速度從0.1MIPS到 2000MIPS,常用封裝從8個(gè)引腳到144個(gè)引腳。根據(jù)其現(xiàn)狀,嵌入式計(jì)算機(jī)可以分成下面幾類(lèi):
① 嵌入式微處理器(Embedded Microprocessor Unit, EMPU)
嵌入式微處理器的基礎(chǔ)是通用計(jì)算機(jī)中的CPU。在應(yīng)用中,將微處理器裝配在專(zhuān)門(mén)設(shè)計(jì)的電路板上,只保留和嵌入式應(yīng)用有關(guān)的母板功能,這樣可以大幅度減小系統(tǒng)體積和功耗。為了滿(mǎn)足嵌入式應(yīng)用的特殊要求,嵌入式微處理器雖然在功能上和標(biāo)準(zhǔn)微處理器基本是一樣的,但在工作溫度、抗電磁干擾、可靠性等方面一般都做了各種增強(qiáng)。
和工業(yè)控制計(jì)算機(jī)相比,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優(yōu)點(diǎn),但是在電路板上必須包括ROM、RAM、總線接口、各種外設(shè)等器件,從而降低了系統(tǒng)的可靠性,技術(shù)保密性也較差。嵌入式微處理器及其存儲(chǔ)器、總線、外設(shè)等安裝在一塊電路板上,稱(chēng)為單板計(jì)算機(jī)。如STD-BUS、 PC104 等。近年來(lái),德國(guó)、日本的一些公司又開(kāi)發(fā)出了類(lèi)似“火柴盒”式名片大小的嵌入式計(jì)算機(jī)系列OEM產(chǎn)品。
嵌入式微處理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等。
② 嵌入式微控制器(Microcontroller Unit, MCU)
嵌入式微控制器又稱(chēng)單片機(jī),顧名思義,就是將整個(gè)計(jì)算機(jī)系統(tǒng)集成到一塊芯片中。嵌入式微控制器一般以某一種微處理器內(nèi)核為核心,芯片內(nèi)部集成 ROM/EPROM、RAM、總線、總線邏輯、定時(shí)/計(jì)數(shù)器、WatchDog、I/O、串行口、脈寬調(diào)制輸出、A/D、D/A、FlashRAM、 EEPROM等各種必要功能和外設(shè)。為適應(yīng)不同的應(yīng)用需求,一般一個(gè)系列的單片機(jī)具有多種衍生產(chǎn)品,每種衍生產(chǎn)品的處理器內(nèi)核都是一樣的,不同的是存儲(chǔ)器和外設(shè)的配置及封裝。這樣可以使單片機(jī)最大限度地和應(yīng)用需求相匹配,功能不多不少,從而減少功耗和成本。
和嵌入式微處理器相比,微控制器的最大特點(diǎn)是單片化,體積大大減小,從而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系統(tǒng)工業(yè)的主流。微控制器的片上外設(shè)資源一般比較豐富,適合于控制,因此稱(chēng)微控制器。[!--empirenews.page--]
嵌入式微控制器目前的品種和數(shù)量最多,比較有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、 C166/167、MC68HC05/11/12/16、68300等。另外還有許多半通用系列如:支持USB接口的MCU8XC930/931、 C540、C541;支持I2C、CAN-Bus、LCD及眾多專(zhuān)用MCU和兼容系列。目前MCU占嵌入式系統(tǒng)約70%的市場(chǎng)份額。特別值得注意的是近年來(lái)提供X86微處理器的著名廠商AMD公司,將Am186CC/CH/CU等嵌入式處理器稱(chēng)之為Microcontroller, MOTOROLA公司把以Power PC為基礎(chǔ)的PPC505和PPC555亦列入單片機(jī)行列。TI公司亦將其TMS320C2XXX系列DSP做為MCU進(jìn)行推廣。
③ 嵌入式DSP處理器(Embedded Digital Signal Processor, EDSP)
DSP處理器對(duì)系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計(jì),使其適合于執(zhí)行DSP算法,編譯效率較高,指令執(zhí)行速度也較高。在數(shù)字濾波、FFT、譜分析等方面DSP算法正在大量進(jìn)入嵌入式領(lǐng)域,DSP應(yīng)用正在從通用單片機(jī)中以普通指令實(shí)現(xiàn)DSP功能,過(guò)渡到采用嵌入式DSP處理器。嵌入式DSP處理器有兩個(gè)發(fā)展來(lái)源,一是DSP處理器經(jīng)過(guò)單片化、EMC改造、增加片上外設(shè)成為嵌入式DSP處理器,TI的TMS320C2000/C5000 等屬于此范疇;二是在通用單片機(jī)或SOC中增加DSP協(xié)處理器,例如Intel的MCS-296和Siemens的TriCore。推動(dòng)嵌入式DSP處理器發(fā)展的另一個(gè)因素是嵌入式系統(tǒng)的智能化,例如各種帶有智能邏輯的消費(fèi)類(lèi)產(chǎn)品,生物信息識(shí)別終端,帶有加解密算法的鍵盤(pán),ADSL接入、實(shí)時(shí)語(yǔ)音壓解系統(tǒng),虛擬現(xiàn)實(shí)顯示等。這類(lèi)智能化算法一般都是運(yùn)算量較大,特別是向量運(yùn)算、指針線性尋址等較多,而這些正是DSP處理器的長(zhǎng)處所在。
嵌入式DSP處理器比較有代表性的產(chǎn)品是TexasInstruments的TMS320系列和Motorola的DSP56000系列。 TMS320系列處理器包括用于控制的C2000系列,移動(dòng)通信的C5000系列,以及性能更高的C6000和C8000系列。DSP56000目前已經(jīng)發(fā)展成為 DSP56000,DSP56100,DSP56200和DSP56300等幾個(gè)不同系列的處理器。另外PHILIPS公司今年也推出了基于可重置度朧? SP結(jié)構(gòu)低成本、低功耗技術(shù)上制造的 R. E. A. L DSP 處理器,特點(diǎn)是具備雙 Harvard結(jié)構(gòu)和雙乘/累加單元,應(yīng)用目標(biāo)是大批量消費(fèi)類(lèi)產(chǎn)品。
④ 嵌入式片上系統(tǒng)(System On Chip)
隨著EDI的推廣和VLSI設(shè)計(jì)的普及化,及半導(dǎo)體工藝的迅速發(fā)展,在一個(gè)硅片上實(shí)現(xiàn)一個(gè)更為復(fù)雜的系統(tǒng)的時(shí)代已來(lái)臨,這就是System On Chip(SOC)。各種通用處理器內(nèi)核將作為SOC設(shè)計(jì)公司的標(biāo)準(zhǔn)庫(kù),和許多其它嵌入式系統(tǒng)外設(shè)一樣,成為VLSI設(shè)計(jì)中一種標(biāo)準(zhǔn)的器件,用標(biāo)準(zhǔn)的 VHDL等語(yǔ)言描述,存儲(chǔ)在器件庫(kù)中。用戶(hù)只需定義出其整個(gè)應(yīng)用系統(tǒng),仿真通過(guò)后就可以將設(shè)計(jì)圖交給半導(dǎo)體工廠制作樣品。這樣除個(gè)別無(wú)法集成的器件以外,整個(gè)嵌入式系統(tǒng)大部分均可集成到一塊或幾塊芯片中去,應(yīng)用系統(tǒng)電路板將變得很簡(jiǎn)潔,對(duì)于減小體積和功耗、提高可靠性非常有利。
SOC可以分為通用和專(zhuān)用兩類(lèi)。通用系列包括Siemens的TriCore,Motorola的M-Core,某些ARM系列器件,Echelon和 Motorola聯(lián)合研制的Neuron芯片等。專(zhuān)用SOC一般專(zhuān)用于某個(gè)或某類(lèi)系統(tǒng)中,不為一般用戶(hù)所知。一個(gè)有代表性的產(chǎn)品是Philips的 SmartXA,它將XA單片機(jī)內(nèi)核和支持超過(guò)2048位復(fù)雜RSA算法的CCU單元制作在一塊硅片上,形成一個(gè)可加載JAVA或C語(yǔ)言的專(zhuān)用的SOC,可用于公眾互聯(lián)網(wǎng)如Internet安全方面。
1.2 嵌入式處理器分類(lèi)的變遷
國(guó)際上公認(rèn)的通用嵌入式處理器有三大類(lèi):MCU、DSP和MPU(Micro-Processor Unit)。TI公司曾把處理器比作汽車(chē),有個(gè)生動(dòng)的比喻:DSP是跑車(chē),追求的是速度;MPU是轎車(chē),追求的是經(jīng)濟(jì)性與速度的折中;MCU是滿(mǎn)足特殊用途的車(chē)。
現(xiàn)在,隨著處理速度的要求越來(lái)越高,同時(shí)處理的數(shù)據(jù)更加復(fù)雜,出現(xiàn)了雙核與多核處理器,通常為DSP+RISC芯核,如Infineon公司的 TriCore(CISC+RISC+DSP),Philips公司的Trimedia。隨著一些大量應(yīng)用市場(chǎng)的崛起,又出現(xiàn)了一些新名詞,例如用于網(wǎng)絡(luò)、通信設(shè)備上的通信處理器(2000年左右興起),數(shù)碼相機(jī)、數(shù)碼錄像機(jī)等視頻、音頻流所需的媒體處理器(2003年興起),智能手機(jī)上的應(yīng)用處理器(2004年興起)。
由于一些處理器不僅要有速度,還要有控制功能,又出現(xiàn)了DSP與MCU的結(jié)合品,主攻電機(jī)控制市場(chǎng)。如Freescale公司的DSP利用了其在MCU控制方面的技術(shù);Microchip 2004年2月也推出了這種產(chǎn)品,稱(chēng)為DSC(Digital Signal Controller)。
處理器IP(知識(shí)產(chǎn)權(quán)):
為了滿(mǎn)足多芯核與SoC設(shè)計(jì)的需要,還有一些廠家專(zhuān)門(mén)供應(yīng)處理器芯核的IP廠商,芯核主要有16位、32位、64位,有軟核與硬核。值得一提的是,世界上最成功的IP廠商是做處理器芯核公司--ARM公司,至今年6月付運(yùn)量已達(dá)20億個(gè),可見(jiàn)處理器行業(yè)的博大。多芯核市場(chǎng)發(fā)展?jié)摿V闊,在 2004年2月美國(guó)的Electronic Summit 2004上,做64位RISC IP的Tensilica公司總裁Chris Rowen博士說(shuō),未來(lái)十年,一塊芯片中需要上千個(gè)處理器芯核,每秒要完成1012運(yùn)算。
2 嵌入式處理器芯片的開(kāi)發(fā)
2.1 嵌入式處理器芯片的一般開(kāi)發(fā)過(guò)程
盡管有幾千種現(xiàn)成的芯片可供選擇,但是許多產(chǎn)品的設(shè)計(jì)者需要一些與眾不同的特性。因此,他們開(kāi)發(fā)自己的嵌入式芯片,即所謂的專(zhuān)用集成電路。
一位設(shè)計(jì)人員開(kāi)始時(shí)需要從一家公司取得嵌入式微處理器的內(nèi)核的授權(quán),然后添加他自己應(yīng)用特有的特性。例如,對(duì)于數(shù)字照相機(jī)處理器來(lái)說(shuō),他可能為這種電荷耦合設(shè)備的芯片添加一個(gè)控制器。又比如,對(duì)于具有Internet功能的家電處理器來(lái)說(shuō),可以添加一個(gè)Ethernet接口。 這位設(shè)計(jì)者然后將他的設(shè)計(jì)交給“鑄造廠”,即一家擁有“工廠”(芯片制造廠)的公司,并將部分制造量出售給其他公司。主要的制造廠有United Microelectronics公司、臺(tái)灣的TSMC公司和美國(guó)的IBM Microelectronics公司。
對(duì)于一些設(shè)計(jì)者來(lái)說(shuō),甚至這種靈活性還不夠用。他們可以找到某些公司,這些公司擁有可高度定制嵌入式微處理器內(nèi)核的許可證。利用這類(lèi)內(nèi)核,可以開(kāi)發(fā)出用于特殊目的的新機(jī)器級(jí)指令。 對(duì)于數(shù)字相機(jī)處理器而言,一條提高JPEG 圖像壓縮的指令具有很高的價(jià)值。 對(duì)于MP3音樂(lè)播放器來(lái)說(shuō),一條加速音頻解壓縮的指令具有同樣的用處。然后, 定制的設(shè)計(jì)被交給“鑄造廠”進(jìn)行生產(chǎn) 和通用計(jì)算機(jī)不同,嵌入式系統(tǒng)的硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣、去除冗余,力爭(zhēng)在同樣的硅片面積上實(shí)現(xiàn)更高的性能,這樣才能在具體應(yīng)用對(duì)處理器的選擇面前更具有競(jìng)爭(zhēng)力。嵌入式處理器要針對(duì)用戶(hù)的具體需求,對(duì)芯片配置進(jìn)行裁剪和添加才能達(dá)到理想的性能;但同時(shí)還受用戶(hù)訂貨量的制約。因此不同的處理器面向的用戶(hù)是不一樣的,可能是一般用戶(hù),行業(yè)用戶(hù)或單一用戶(hù)。[!--empirenews.page--]
嵌入式處理器的發(fā)展也體現(xiàn)出穩(wěn)定性,一個(gè)體系一般要存在8-10年的時(shí)間。一個(gè)體系結(jié)構(gòu)及其相關(guān)的片上外設(shè)、開(kāi)發(fā)工具、庫(kù)函數(shù)、嵌入式應(yīng)用產(chǎn)品是一套復(fù)雜的知識(shí)系統(tǒng),用戶(hù)和半導(dǎo)體廠商都不會(huì)輕易地放棄一種處理器。
2.2 基于嵌入式處理器的嵌入式系統(tǒng)的開(kāi)發(fā)工具
嵌入式處理器是一個(gè)復(fù)雜的高技術(shù)系統(tǒng),要在短時(shí)間內(nèi)掌握并開(kāi)發(fā)出所有功能是很不容易的,而市場(chǎng)競(jìng)爭(zhēng)則要求產(chǎn)品能夠快速上市,這一矛盾要求嵌入式處理器能夠有容易掌握和使用的開(kāi)發(fā)工具平臺(tái)。提高用戶(hù)和程序員的時(shí)間--投入回報(bào)率。面對(duì)成百上千種處理器,選擇是一個(gè)問(wèn)題,學(xué)習(xí)掌握處理器結(jié)構(gòu)及其應(yīng)用更需要時(shí)間,因此以開(kāi)發(fā)工具和技術(shù)咨詢(xún)?yōu)榛A(chǔ)的整體解決方案是迫切需要的。好的開(kāi)發(fā)工具除能夠開(kāi)發(fā)出處理器的全部功能以外,還應(yīng)當(dāng)是對(duì)用戶(hù)友好的。
目前嵌入式系統(tǒng)的開(kāi)發(fā)工具平臺(tái)主要包括下面幾類(lèi):
① 實(shí)時(shí)在線仿真系統(tǒng)ICE(In-CircuitEmulator)
在計(jì)算機(jī)輔助設(shè)計(jì)非常發(fā)達(dá)的今天,實(shí)時(shí)在線仿真系統(tǒng)(ICE)仍是進(jìn)行嵌入式應(yīng)用系統(tǒng)調(diào)試最有效的開(kāi)發(fā)工具。ICE首先可以通過(guò)實(shí)際執(zhí)行,對(duì)應(yīng)用程序進(jìn)行原理性檢驗(yàn),排除人的思維難以發(fā)現(xiàn)的設(shè)計(jì)邏輯錯(cuò)誤。ICE的另一個(gè)主要功能是在應(yīng)用系統(tǒng)中仿真微控制器的實(shí)時(shí)執(zhí)行,發(fā)現(xiàn)和排除由于硬件干擾等引起的異常執(zhí)行行為。此外,高級(jí)的ICE帶有完善的跟蹤功能,可以將應(yīng)用系統(tǒng)的實(shí)際狀態(tài)變化、微控制器對(duì)狀態(tài)變化的反應(yīng)、以及應(yīng)用系統(tǒng)
對(duì)控制的響應(yīng)等以一種錄像的方式連續(xù)記錄下來(lái),以供分析,在分析中優(yōu)化控制過(guò)程。很多機(jī)電系統(tǒng)難以建立一個(gè)精確有效的數(shù)字模型,或是建立模型需要大量人力,這時(shí)采用ICE的跟蹤功能對(duì)系統(tǒng)進(jìn)行記錄和分析是一個(gè)快而有效的方法。
嵌入式應(yīng)用的特點(diǎn)是和現(xiàn)實(shí)世界中的硬件系統(tǒng)有關(guān),存在各種異變和事先未知的變化,這就給微控制器的指令執(zhí)行帶來(lái)了各種不確定性,這種不確定性只有通過(guò)ICE的實(shí)時(shí)在線仿真器才能發(fā)現(xiàn),特別是在分析可靠性時(shí)要在同樣條件下多次仿真,以發(fā)現(xiàn)偶然出現(xiàn)的錯(cuò)誤。
ICE不僅是軟件硬件排錯(cuò)工具,同時(shí)也是提高和優(yōu)化系統(tǒng)性能指標(biāo)的工具。高檔ICE工具(如美國(guó)NOHAU公司的產(chǎn)品)是可根據(jù)用戶(hù)投資裁剪功能的系統(tǒng), 亦可根據(jù)需要選擇配置各種檔次的實(shí)時(shí)邏輯跟蹤器(Trace)、實(shí)時(shí)映象存儲(chǔ)器(Shadow RAM)及程序效率實(shí)時(shí)分析功能(PPA)。
② 高級(jí)語(yǔ)言編譯器(Compiler Tools)
C語(yǔ)言作為一種通用的高級(jí)語(yǔ)言,大幅度提高了嵌入式系統(tǒng)工程的工作效率,充分發(fā)揮出嵌入式處理器日益提高的性能,縮短產(chǎn)品進(jìn)入市場(chǎng)時(shí)間。另外,C語(yǔ)言便于移植和修改,使產(chǎn)品的升級(jí)和繼承更迅速。更重要的是采用C語(yǔ)言編寫(xiě)的程序易于在不同的開(kāi)發(fā)者之間進(jìn)行交流,從而促進(jìn)了嵌入式系統(tǒng)開(kāi)發(fā)的產(chǎn)業(yè)化。
區(qū)別于一般計(jì)算機(jī)中的C語(yǔ)言編譯器,嵌入式系統(tǒng)中的C語(yǔ)言編譯器要專(zhuān)門(mén)進(jìn)行優(yōu)化,以提高編譯效率。優(yōu)秀的嵌入式系統(tǒng)C編譯器代碼長(zhǎng)度和執(zhí)行時(shí)間僅比以匯編語(yǔ)言編寫(xiě)的同樣功能程度長(zhǎng)5-20%。編譯效率的不同,是區(qū)別嵌入式系統(tǒng)C編譯器之間性能差別的重要根據(jù)之一。而C編譯器殘余的5-10%效率差別,完全可以由現(xiàn)代微控制器的高速度、大存儲(chǔ)器空間以及產(chǎn)品提前進(jìn)入市場(chǎng)來(lái)彌補(bǔ)。
新型的微控制器指令速度不斷提高,存儲(chǔ)器空間也相應(yīng)加大,已經(jīng)達(dá)到甚至超過(guò)了目前的通用計(jì)算機(jī)中的微處理器,為嵌入式系統(tǒng)工程采用過(guò)去一直不敢問(wèn)津的C+ +語(yǔ)言創(chuàng)造了條件。C++語(yǔ)言強(qiáng)大的類(lèi)、繼承等功能更便于實(shí)現(xiàn)復(fù)雜的程序功能。但是C++語(yǔ)言為了支持復(fù)雜的語(yǔ)法,在代碼生成效率方面不免有所下降。為此,1995年初在日本成立的Embedded C++技術(shù)委員會(huì)經(jīng)過(guò)幾年的研究,針對(duì)嵌入式應(yīng)用制訂了減小代碼尺寸的EC++標(biāo)準(zhǔn)。EC++保留了C++的主要優(yōu)點(diǎn),提供對(duì)C++的向上兼容性,并滿(mǎn)足嵌入式系統(tǒng)設(shè)計(jì)的一些特殊要求。在嵌入式高級(jí)語(yǔ)言編譯器方面處于領(lǐng)先地位的Tasking公司,是EC++技術(shù)委員會(huì)成員之一,也是最先推出EC++產(chǎn)品的公司。
C/C++/EC++引入嵌入式系統(tǒng),使得嵌入式開(kāi)發(fā)和個(gè)人計(jì)算機(jī)、小型機(jī)等之間在開(kāi)發(fā)上的差別正在逐漸消除,軟件工程中的很多經(jīng)驗(yàn)、方法乃至庫(kù)函數(shù)可以移植到嵌入式系統(tǒng)。在嵌入式開(kāi)發(fā)中采用高級(jí)語(yǔ)言,還使得硬件開(kāi)發(fā)和軟件開(kāi)發(fā)可以分工,從事嵌入式軟件開(kāi)發(fā)不再必須精通系統(tǒng)硬件和相應(yīng)的指令集匯編。
另一種高級(jí)語(yǔ)言JAVA的發(fā)展則具有戲劇性。JAVA本來(lái)是為設(shè)備獨(dú)立的嵌入式系統(tǒng)設(shè)計(jì)的、為了提高程序繼承性的語(yǔ)言,但是目前基于JAVA的嵌入式開(kāi)發(fā)工具代碼生成長(zhǎng)度要比嵌入式C編譯工具差10倍以上。因此EC++很可能在未來(lái)的一段時(shí)間內(nèi)仍是嵌入式系統(tǒng)的主流。
③ 源程序模擬器(Simulator)
源程序模擬器是在廣泛使用的、人機(jī)接口完備的工作平臺(tái)上,如小型機(jī)和PC,通過(guò)軟件手段模擬執(zhí)行某種嵌入式處理器內(nèi)核編寫(xiě)的源程序測(cè)試工具。簡(jiǎn)單的模擬器可以通過(guò)指令解釋方式逐條執(zhí)行源程序,分配虛擬存儲(chǔ)空間和外設(shè),供程序員檢查;高級(jí)的模擬器可以利用計(jì)算機(jī)的外部接口模擬出處理器的I/O電氣信號(hào)。不同檔次和功能模擬器工具價(jià)格差距巨大。模擬器軟件獨(dú)立于處理器硬件,一般與編譯器集成在同一個(gè)環(huán)境中,是一種有效的源程序檢驗(yàn)和測(cè)試工具。但值得注意的是, 模擬器畢竟是以一種處理器模擬另一種處理器的運(yùn)行,在指令執(zhí)行時(shí)間、中斷響應(yīng)、定時(shí)器等方面很可能與實(shí)際處理器有相當(dāng)?shù)牟顒e。另外它無(wú)法和ICE一樣,仿真嵌入式系統(tǒng)在應(yīng)用系統(tǒng)中的實(shí)際執(zhí)行情況。
3 結(jié)束語(yǔ)
嵌入式系統(tǒng)是將計(jì)算機(jī)直接嵌入到應(yīng)用系統(tǒng)中,是信息技術(shù)的最終產(chǎn)品。嵌入式系統(tǒng)的核心就是嵌入式處理器。嵌入式系統(tǒng)是信息產(chǎn)業(yè)走向二十一世紀(jì)知識(shí)經(jīng)濟(jì)時(shí)代的最重要的經(jīng)濟(jì)增長(zhǎng)點(diǎn)之一,這是一個(gè)不可壟斷的工業(yè),對(duì)中國(guó)的信息產(chǎn)業(yè)來(lái)說(shuō)充滿(mǎn)了機(jī)遇和挑戰(zhàn)。世界這么廣大,充滿(mǎn)了多樣化,尤其是我們已經(jīng)進(jìn)入到后PC時(shí)代--無(wú)所不在的計(jì)算(nomadic computing)使嵌入式處理器將遍及我們能夠想象得到的各個(gè)角落,因此,每種處理器都有存在的理由,都有可伸展的方向。這一點(diǎn)應(yīng)特別引起中國(guó)信息產(chǎn)業(yè)界的關(guān)注。
隨著我國(guó)的龍芯、北大眾志、方舟、星光、漢芯等處理器芯片的問(wèn)世,中國(guó)無(wú)芯的時(shí)代已經(jīng)過(guò)去。“軟件是大腦,芯片是心臟。”中國(guó)芯的意義不僅僅是中國(guó)有了自己的核心芯片,更重要的是中國(guó)也開(kāi)始參與了世界半導(dǎo)體競(jìng)技場(chǎng)的角逐,這樣更有利于我國(guó)在21世紀(jì)更加主動(dòng)地、有利地、有效地分享嵌入式應(yīng)用這塊大蛋糕。[!--empirenews.page--]
但這個(gè)行業(yè)是一個(gè)充滿(mǎn)競(jìng)爭(zhēng)的行業(yè),科技、工程技術(shù)人員應(yīng)該面對(duì)世界技術(shù)市場(chǎng)的變遷,迎頭趕上,早日形成在通用處理器、嵌入式處理器領(lǐng)域及其相關(guān)的軟件IC領(lǐng)域的核心技術(shù)鏈和產(chǎn)業(yè)鏈,從而為我國(guó)的信息產(chǎn)業(yè)、為我國(guó)的早日的真正崛起做出應(yīng)有的貢獻(xiàn)。