根據IEEE(國際電機工程師協(xié)會(huì ))的定義,嵌入式系統是“控制、監視或者輔助裝置、機器和設備運行的裝置”(devices used tocontrol, monitor, or assist the operation of equipment, machinery orplants)。從中可以看出嵌入式系統是軟件和硬件的綜合體,還可以涵蓋機械等附屬裝置。目前國內一個(gè)普遍被認同的定義是:以應用為中心、以計算機技術(shù)為基礎、軟件硬件可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專(zhuān)用計算機系統。
一、簡(jiǎn)介
嵌入式系統本身是一個(gè)相對模糊的定義。目前嵌入式系統已經(jīng)滲透到我們生活中的每個(gè)角落,工業(yè)、服務(wù)業(yè)、消費電子……,而恰恰由于這種范圍的擴大,使得“嵌入式系統”更加難于明確定義。舉個(gè)簡(jiǎn)單例子:一個(gè)手持的mp3是否可以叫做是嵌入式系統呢?答案肯定是“是”。另外一個(gè)PC104的微型
工業(yè)控制計算機你會(huì )認為它是嵌入式系統嗎?當然,也是,工業(yè)控制是
嵌入式系統技術(shù)的一個(gè)典型應用領(lǐng)域。然而比較兩者,你也許會(huì )發(fā)現二者幾乎完全不同,除了其中都嵌入有微處理器。那是否可以說(shuō)嵌入著(zhù)微處理器的設備就是嵌入式系統?那鼠標中也有單片機,能叫嵌入式系統嘛?那到底什么是嵌入式系統?莫非嵌入式系統只是一個(gè)難以定義的抽象概念?
1.1、嵌入式系統的歷史
雖然嵌入式系統是近幾年才風(fēng)靡起來(lái)的,但是這個(gè)概念并非新近才出現。從20世紀七十年代單片機的出現到今天各式各樣的嵌入式微處理器,
微控制器的大規模應用,嵌入式系統已經(jīng)有了近30年的發(fā)展歷史。作為一個(gè)系統,往往是在硬件和軟件交替發(fā)展的雙螺旋的支撐下逐漸趨于穩定和成熟,嵌入式系統也不例外。嵌入式系統的出現最初是基于單片機的。70年代單片機的出現,使得汽車(chē)、家電、工業(yè)機器、通信裝置以及成千上萬(wàn)種產(chǎn)品可以通過(guò)內嵌電子裝置來(lái)獲得更佳的使用性能:更容易使用、更快、更便宜。這些裝置已經(jīng)初步具備了嵌入式的應用特點(diǎn),但是這時(shí)的應用只是使用8位的芯片,執行一些單線(xiàn)程的程序,還談不上“系統”的概念。提示:最早的單片機是Intel公司的8048,它出現在1976年。Motorola同時(shí)推出了68HC05,Zilog公司推出了Z80系列,這些早期的單片機均含有256字節的RAM、4K的ROM、4 個(gè)8位并口、1個(gè)全雙工串行口、兩個(gè)16位定 時(shí)器。之后在80年代初,Intel又進(jìn)一步完善了8048,在它的基礎上研制成功了8051,這在單片機的歷史上是值得紀念的一頁(yè),迄今為止,51系列的單片機仍然是最為成功的單片機芯片,在各種產(chǎn)品中有著(zhù)非常廣泛的應用。從80年代早期開(kāi)始,嵌入式系統的程序員開(kāi)始用商業(yè)級的“操作系統”編寫(xiě)嵌入式應用軟件,這使得可以獲取更短的開(kāi)發(fā)周期,更低的開(kāi)發(fā)資金和更高的開(kāi)發(fā)效率,“嵌入式系統”真正出現了。確切點(diǎn)說(shuō),這個(gè)時(shí)候的操作系統是一個(gè)實(shí)時(shí)核,這個(gè)實(shí)時(shí)核包含了許多傳統操作系統的特征,包括任務(wù)管理、任務(wù)間通訊、同步與相互排斥、中斷支持、內存管理等功能。其中比較著(zhù)名的有Ready System公司的VRTX、Integrated System Incorporation (ISI)的PSOS和IMG的VxWorks、QNX公司的QNX等。這些嵌入式操作系統都具有嵌入式的典型特點(diǎn):它們均采用占先式的調度,響應的時(shí)間很短,任務(wù)執行的時(shí)間可以確定;系統內核很小,具有可裁剪,可擴充和可移植性,可以移植到各種處理器上;較強的實(shí)時(shí)和可靠性,適合嵌入式應用。這些嵌入式
實(shí)時(shí)多任務(wù)操作系統的出現,使得應用開(kāi)發(fā)人員得以從小范圍的開(kāi)發(fā)解放出來(lái),同時(shí)也促使嵌入式有了更為廣闊的應用空間。90年代以后,隨著(zhù)對實(shí)時(shí)性要求的提高,軟件規模不斷上升,實(shí)時(shí)核逐漸發(fā)展為實(shí)時(shí)多任務(wù)操作系統(RTOS),并作為一種軟件平臺逐步成為目前國際嵌入式系統的主流。這時(shí)候更多的公司看到了嵌入式系統的廣闊發(fā)展前景,開(kāi)始大力發(fā)展自己的嵌入式操作系統。除了上面的幾家老牌公司以外,還出現了PalmOS,WinCE,嵌入式Linux,Lynx,Nucleux,以及國內的Hopen,Delta Os等嵌入式操作系統。隨著(zhù)
嵌入式技術(shù)的發(fā)展前景日益廣闊,相信會(huì )有更多的嵌入式操作系統軟件出現。在中國嵌入式系統領(lǐng)域,比較認同的嵌入式系統概念是:嵌入式系統是以應用為中心,以計算機技術(shù)為基礎,并且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專(zhuān)用計算機系統。它一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統以及用戶(hù)的應用程序等四個(gè)部分組成,用于實(shí)現對其他設備的控制、監視或管理等功能。
1.2、嵌入式系統的定義
定義可從幾方面來(lái)理解嵌入式系統:◆嵌入式系統是面向用戶(hù)、面向產(chǎn)品、面向應用的,它必須與具體應用相結合才會(huì )具有生命力、才更具有優(yōu)勢。因此可以這樣理解上述三個(gè)面向的含義,即嵌入式系統是與應用緊密結合的,它具有很強的專(zhuān)用性,必須結合實(shí)際系統需求進(jìn)行合理的裁減利用?!羟度胧较到y是將先進(jìn)的計算機技術(shù)、半導體技術(shù)和電子技術(shù)和各個(gè)行業(yè)的具體應用相結合后的產(chǎn)物,這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng )新的知識集成系統。所以,介入嵌入式系統行業(yè),必須有一個(gè)正確的定位。例如Palm之所以在PDA領(lǐng)域占有70%以上的市場(chǎng),就是因為其立足于個(gè)人電子消費品,著(zhù)重發(fā)展圖形界面和多任務(wù)管理;而風(fēng)河的Vxworks之所以在火星車(chē)上得以應用,則是因為其高實(shí)時(shí)性和高可靠性?!羟度胧较到y必須根據應用需求對軟硬件進(jìn)行裁剪,滿(mǎn)足應用系統的功能、可靠性、成本、體積等要求。所以,如果能建立相對通用的軟硬件基礎,然后在其上開(kāi)發(fā)出適應各種需要的系統,是一個(gè)比較好的發(fā)展模式。目前的嵌入式系統的核心往往是一個(gè)只有幾K到幾十K微內核,需要根據實(shí)際的使用進(jìn)行功能擴展或者裁減,但是由于微內核的存在,使得這種擴展能夠非常順利的進(jìn)行。實(shí)際上,嵌入式系統本身是一個(gè)外延極廣的名詞,凡是與產(chǎn)品結合在一起的具有嵌入式特點(diǎn)的控制系統都可以叫嵌入式系統,而且有時(shí)很難以給它下一個(gè)準確的定義?,F在人們講嵌入式系統時(shí),某種程度上指近些年比較熱的具有操作系統的嵌入式系統,本文在進(jìn)行分析和展望時(shí),也沿用這一觀(guān)點(diǎn)。一般而言,嵌入式系統的構架可以分成四個(gè)部分:處理器、存儲器、輸入輸出(I/O)和軟件(由于多數
嵌入式設備的應用軟件和操作系統都是緊密結合的,在這里我們對其不加區分,這也是嵌入式系統和Windows系統的最大區別)。
1.3、關(guān)聯(lián)的概念
嵌入式系統中有許多非常重要的概念:
1.3.1、嵌入式處理器嵌入式系統的核心,是控制、輔助系統運行的硬件單元。范圍極其廣闊,從最初的4位處理器,目前仍在大規模應用的8位單片機,到最新的受到廣泛青睞的32位,64位嵌入式CPU。
1.3.2、實(shí)時(shí)操作系統◆
實(shí)時(shí)操作系統 (
RTOS-RealTime Operating System):嵌入式系統目前最主要的組成部分。根據操作系統的工作特性,實(shí)時(shí)是指物理進(jìn)程的真實(shí)時(shí)間。實(shí)時(shí)操作系統具有實(shí)時(shí)性,能從硬件方面支持實(shí)時(shí)控制系統工作的操作系統。其中實(shí)時(shí)性是第一要求,需要調度一切可利用的資源完成實(shí)時(shí)控制任務(wù),其次才著(zhù)眼于提高計算機系統的使用效率,重要特點(diǎn)是要滿(mǎn)足對時(shí)間的限制和要求。
1.3.3、分時(shí)操作系統對于分時(shí)操作系統,軟件的執行在時(shí)間上的要求,并不嚴格,時(shí)間上的錯誤,一般不會(huì )造成災難性的后果。目前分時(shí)系統的強項在于多任務(wù)的管理,而實(shí)時(shí)操作系統的重要特點(diǎn)是具有系統的可確定性,即系統能對運行情況的最好和最壞等的情況能做出精確的估計。
1.3.4、多任務(wù)操作系統系統支持多任務(wù)管理和任務(wù)間的同步和通信,傳統的單片機系統和DOS系統等對多任務(wù)支持的功能很弱,而目前的Windows是典型的多任務(wù)操作系統。在嵌入式應用領(lǐng)域中,多任務(wù)是一個(gè)普遍的要求。
1.3.5、實(shí)時(shí)操作系統中的重要概念系統響應時(shí)間(System responsetime):系統發(fā)出處理要求到系統給出應答信號的時(shí)間。任務(wù)換道時(shí)間(Context-switching time):任務(wù)之間切換而使用的時(shí)間。中斷延遲(Interruptlatency):計算機接收到中斷信號到操作系統作出響應,并完成換道轉入中斷服務(wù)程序的時(shí)間。
1.3.6、實(shí)時(shí)操作系統的工作狀態(tài)實(shí)時(shí)系統中的任務(wù)有四種狀態(tài):運行(Executing),就緒(Ready),掛起(Suspended),冬眠(Dormant)。運行:獲得CPU控制權。就緒:進(jìn)入任務(wù)等待隊列,通過(guò)調度轉為運行狀態(tài)。掛起:任務(wù)發(fā)生阻塞,移出任務(wù)等待隊列,等待系統實(shí)時(shí)事件的發(fā)生而喚醒,從而轉為就緒或運行。冬眠:任務(wù)完成或錯誤等原因被清除的任務(wù),也可以認為是系統中不存在的任務(wù)。任何時(shí)刻系統中只能有一個(gè)任務(wù)在運行狀態(tài),各任務(wù)按級別通過(guò)時(shí)間片分別獲得對CPU的訪(fǎng)問(wèn)權。
二、嵌入式系統的特點(diǎn)
2.1、嵌入式系統的重要特征
這些年來(lái)掀起了嵌入式系統應用熱潮的原因只要有幾個(gè)方面:一是芯片技術(shù)的發(fā)展,使得單個(gè)芯片具有更強的處理能力,而且使集成多種接口已經(jīng)成為可能,眾多芯片生產(chǎn)廠(chǎng)商已經(jīng)將注意力集中在這方面。另一方面的原因就是應用的需要,由于對產(chǎn)品可靠性、成本、更新?lián)Q代要求的提高,使得嵌入式系統逐漸從純硬件實(shí)現和使用通用計算機實(shí)現的應用中脫穎而出,成為近年來(lái)令人關(guān)注的焦點(diǎn)。從上面的定義,我們可以看出嵌入式系統的幾個(gè)重要特征:1.系統內核小。由于嵌入式系統一般是應用于小型電子裝置的,系統資源相對有限,所以?xún)群溯^之傳統的操作系統要小得多。比如Enea公司的OSE
分布式系統,內核只有5K,而Windows的內核?簡(jiǎn)直沒(méi)有可比性。2.專(zhuān)用性強。嵌入式系統的個(gè)性化很強,其中的軟件系統和硬件的結合非常緊密,一般要針對硬件進(jìn)行系統的移植,即使在同一品牌、同一系列的產(chǎn)品中也需要根據系統硬件的變化和增減不斷進(jìn)行修改。同時(shí)針對不同的任務(wù),往往需要對系統進(jìn)行較大更改,程序的編譯下載要和系統相結合,這種修改和通用軟件的“升級”是完全兩個(gè)概念。3.系統精簡(jiǎn)。嵌入式系統一般沒(méi)有系統軟件和應用軟件的明顯區分,不要求其功能設計及實(shí)現上過(guò)于復雜,這樣一方面利于控制系統成本,同時(shí)也利于實(shí)現系統安全。4.高實(shí)時(shí)性的系統軟件(OS)是嵌入式軟件的基本要求。而且軟件要求固態(tài)存儲,以提高速度;軟件代碼要求高質(zhì)量和高可靠性。5.
嵌入式軟件開(kāi)發(fā)要想走向標準化,就必須使用多任務(wù)的操作系統。嵌入式系統的應用程序可以沒(méi)有操作系統直接在芯片上運行;但是為了合理地調度多任務(wù)、利用系統資源、系統函數以及和專(zhuān)家庫函數接口,用戶(hù)必須自行選配RTOS(Real-Time OperatingSystem)開(kāi)發(fā)平臺,這樣才能保證程序執行的實(shí)時(shí)性、可靠性,并減少開(kāi)發(fā)時(shí)間,保障軟件質(zhì)量。6.
嵌入式系統開(kāi)發(fā)需要開(kāi)發(fā)工具和環(huán)境。由于其本身不具備自舉開(kāi)發(fā)能力,即使設計完成以后用戶(hù)通常也是不能對其中的程序功能進(jìn)行修改的,必須有一套開(kāi)發(fā)工具和環(huán)境才能進(jìn)行開(kāi)發(fā),這些工具和環(huán)境一般是基于通用計算機上的軟硬件設備以及各種邏輯分析儀、混合信號示波器等。開(kāi)發(fā)時(shí)往往有主機和目標機的概念,主機用于程序的開(kāi)發(fā),目標機作為最后的執行機,開(kāi)發(fā)時(shí)需要交替結合進(jìn)行。
2.2、嵌入式微處理器的特點(diǎn)
嵌入式系統的核心是嵌入式微處理器。嵌入式微處理器一般就具備以下4個(gè)特點(diǎn):1)對
實(shí)時(shí)任務(wù)有很強的支持能力,能完成多任務(wù)并且有較短的中斷響應時(shí)間,從而使內部的代碼和實(shí)時(shí)內核心的執行時(shí)間減少到最低限度。2)具有功能很強的存儲區保護功能。這是由于嵌入式系統的軟件結構已模塊化,而為了避免在軟件模塊之間出現錯誤的交叉作用,需要設計強大的存儲區保護功能,同時(shí)也有利于軟件診斷。3)可擴展的處理器結構,以能最迅速地開(kāi)發(fā)出滿(mǎn)足應用的最高性能的嵌入式微處理器。4)嵌入式微處理器必須功耗很低,尤其是用于便攜式的無(wú)線(xiàn)及移動(dòng)的計算和通信設備中靠電池供電的嵌入式系統更是如此,如需要功耗只有mW甚至μW級。2.3、嵌入式計算機同通用型計算機系統的不同點(diǎn) 1.嵌入式系統通常是面向特定應用的嵌入式CPU與通用型的最大不同就是嵌入式CPU大多工作在為特定用戶(hù)群設計的系統中,它通常都具有低功耗、體積小、集成度高等特點(diǎn),能夠把通用CPU中許多由板卡完成的任務(wù)集成在芯片內部,從而有利于嵌入式系統設計趨于小型化,移動(dòng)能力大大增強,跟網(wǎng)絡(luò )的耦合也越來(lái)越緊密。2.嵌入式系統是將先進(jìn)的計算機技術(shù)、半導體技術(shù)和電子技術(shù)與各個(gè)行業(yè)的具體應用相結合后的產(chǎn)物。這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng )新的知識集成系統。3.嵌入式系統的硬件和軟件都必須高效率地設計,量體裁衣、去除冗余,力爭在同樣的硅片面積上實(shí)現更高的性能,這樣才能在具體應用中對處理器的選擇更具有競爭力。4.嵌入式系統和具體應用有機地結合在一起,它的升級換代也是和具體產(chǎn)品同步進(jìn)行,因此嵌入式系統產(chǎn)品一旦進(jìn)入市場(chǎng),具有較長(cháng)的生命周期。5.為了提高執行速度和系統可靠性,嵌入式系統中的軟件一般都固化在存儲器芯片或單片機本身中,而不是存貯于磁盤(pán)等載體中。6.嵌入式系統本身不具備自舉開(kāi)發(fā)能力,即使設計完成以后用戶(hù)通常也是不能對其中的程序功能進(jìn)行修改的,必須有一套開(kāi)發(fā)工具和環(huán)境才能進(jìn)行開(kāi)發(fā)。7.目前,嵌入式系統多用于手機等操作系統的開(kāi)發(fā)。具有巨大的市場(chǎng)潛力.
3、嵌入式系統的分類(lèi)
由于嵌入式系統由硬件和軟件兩大部分組成,所以其分類(lèi)也可以從硬件和軟件進(jìn)行劃分。
3.1、基于硬件的視覺(jué)
從硬件方面來(lái)講,各式各樣的嵌入式處理器是嵌入式系統硬件中的最核心的部分,而目前世界上具有嵌入式功能特點(diǎn)的處理器已經(jīng)超過(guò)1000種,流行體系結構包括MCU,MPU等30多個(gè)系列。鑒于嵌入式系統廣闊的發(fā)展前景,很多半導體制造商都大規模生產(chǎn)嵌入式處理器,并且公司自主設計處理器也已經(jīng)成為了未來(lái)嵌入式領(lǐng)域的一大趨勢,其中從單片機、DSP到FPGA有著(zhù)各式各樣的品種,速度越來(lái)越快,性能越來(lái)越強,價(jià)格也越來(lái)越低。目前嵌入式處理器的尋址空間可以從64kB到16MB,處理速度最快可以達到2000 MIPS,封裝從8個(gè)引腳到144個(gè)引腳不等。根據其現狀,嵌入式處理器可以分成下面幾類(lèi):
3.1.1、嵌入式微處理器(Micro Processor Unit,MPU) 嵌入式微處理器是由通用計算機中的CPU演變而來(lái)的。它的特征是具有32位以上的處理器,具有較高的性能,當然其價(jià)格也相應較高。但與計算機處理器不同的是,在實(shí)際嵌入式應用中,只保留和嵌入式應用緊密相關(guān)的功能硬件,去除其他的冗余功能部分,這樣就以最低的功耗和資源實(shí)現嵌入式應用的特殊要求。和工業(yè)控制計算機相比,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優(yōu)點(diǎn)。目前主要的嵌入式處理器類(lèi)型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/ StrongARM系列等。其中Arm/StrongArm是專(zhuān)為手持設備開(kāi)發(fā)的嵌入式微處理器,屬于中檔的價(jià)位。
3.1.2、嵌入式微控制器(Microcontroller Unit, MCU) 嵌入式微控制器的典型代表是單片機,從70年代末單片機出現到今天,雖然已經(jīng)經(jīng)過(guò)了20多年的歷史,但這種8位的電子器件目前在嵌入式設備中仍然有著(zhù)極其廣泛的應用。單片機芯片內部集成ROM/EPROM、RAM、總線(xiàn)、總線(xiàn)邏輯、定時(shí)/計數器、看門(mén)狗、I/O、串行口、脈寬調制輸出、A/D、D/A、FlashRAM、EEPROM等各種必要功能和外設。和嵌入式微處理器相比,微控制器的最大特點(diǎn)是單片化,體積大大減小,從而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系統工業(yè)的主流。微控制器的片上外設資源一般比較豐富,適合于控制,因此稱(chēng)微控制器。由于MCU低廉的價(jià)格,優(yōu)良的功能,所以擁有的品種和數量最多,比較有代表性的包括8051、MCS-251、MCS-96/196/296、P51XA、C166/167、68K系列以及 MCU8XC930/931、C540、C541,并且有支持I2C、CAN-Bus、LCD及眾多專(zhuān)用MCU和兼容系列。目前MCU占嵌入式系統約70%的市場(chǎng)份額。近來(lái)Atmel出產(chǎn)的Avr單片機由于其集成了FPGA等器件,所以具有很高的性?xún)r(jià)比,勢必將推動(dòng)單片機獲得更高的發(fā)展。
3.1.3、嵌入式DSP處理器(Embedded Digital SignalProcessor, EDSP) DSP處理器是專(zhuān)門(mén)用于信號處理方面的處理器,其在系統結構和指令算法方面進(jìn)行了特殊設計,具有很高的編譯效率和指令的執行速度。在數字濾波、FFT、譜分析等各種儀器上DSP獲得了大規模的應用。DSP的理論算法在70年代就已經(jīng)出現,但是由于專(zhuān)門(mén)的DSP處理器還未出現,所以這種理論算法只能通過(guò)MPU等由分立元件實(shí)現。MPU較低的處理速度無(wú)法滿(mǎn)足DSP的算法要求,其應用領(lǐng)域僅僅局限于一些尖端的高科技領(lǐng)域。隨著(zhù)大規模集成電路技術(shù)發(fā)展,1982年世界上誕生了首枚DSP芯片。其運算速度比MPU快了幾十倍,在語(yǔ)音合成和編碼解碼器中得到了廣泛應用。至80年代中期,隨著(zhù)CMOS技術(shù)的進(jìn)步與發(fā)展,第二代基于CMOS工藝的DSP芯片應運而生,其存儲容量和運算速度都得到成倍提高,成為語(yǔ)音處理、圖像硬件處理技術(shù)的基礎。到80年代后期,DSP的運算速度進(jìn)一步提高,應用領(lǐng)域也從上述范圍擴大到了通信和計算機方面。90年代后,DSP發(fā)展到了第五代產(chǎn)品,集成度更高,使用范圍也更加廣闊。目前最為廣泛應用的是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的應用范圍。
3.1.4、嵌入式片上系統(System On Chip) SoC追求產(chǎn)品系統最大包容的集成器件,是目前嵌入式應用領(lǐng)域的熱門(mén)話(huà)題之一。SOC最大的特點(diǎn)是成功實(shí)現了軟硬件無(wú)縫結合,直接在處理器片內嵌入操作系統的代碼模塊。而且SOC具有極高的綜合性,在一個(gè)硅片內部運用VHDL等硬件描述語(yǔ)言,實(shí)現一個(gè)復雜的系統。用戶(hù)不需要再像傳統的系統設計一樣,繪制龐大復雜的電路板,一點(diǎn)點(diǎn)的連接焊制,只需要使用精確的語(yǔ)言,綜合時(shí)序設計直接在器件庫中調用各種通用處理器的標準,然后通過(guò)仿真之后就可以直接交付芯片廠(chǎng)商進(jìn)行生產(chǎn)。由于絕大部分系統構件都是在系統內部,整個(gè)系統就特別簡(jiǎn)潔,不僅減小了系統的體積和功耗,而且提高了系統的可靠性,提高了設計生產(chǎn)效率。由于SOC往往是專(zhuān)用的,所以大部分都不為用戶(hù)所知,比較典型的SOC產(chǎn)品是Philips的SmartXA。少數通用系列如Siemens的TriCore,Motorola的M-Core,某些ARM系列器件,Echelon和Motorola聯(lián)合研制的Neuron芯片等。預計不久的將來(lái),一些大的芯片公司將通過(guò)推出成熟的、能占領(lǐng)多數市場(chǎng)的SOC芯片,一舉擊退競爭者。SOC芯片也將在聲音、圖像、影視、網(wǎng)絡(luò )及系統邏輯等應用領(lǐng)域中發(fā)揮重要作用。
3.2、基于軟件的視覺(jué)
從軟件方面劃分,主要可以依據操作系統的類(lèi)型。目前嵌入式系統的軟件主要有兩大類(lèi):實(shí)時(shí)系統和分時(shí)系統。其中實(shí)時(shí)系統又分為兩類(lèi):硬實(shí)時(shí)系統和軟實(shí)時(shí)系統。實(shí)時(shí)
嵌入系統是為執行特定功能而設計的,可以嚴格的按時(shí)序執行功能。其最大的特征就是程序的執行具有確定性。在實(shí)時(shí)系統中,如果系統在指定的時(shí)間內未能實(shí)現某個(gè)確定的任務(wù),會(huì )導致系統的全面失敗,則系統被稱(chēng)為硬實(shí)時(shí)系統。而在軟實(shí)時(shí)系統中,雖然響應時(shí)間同樣重要,但是超時(shí)卻不會(huì )導致致命錯誤。一個(gè)硬實(shí)時(shí)系統往往在硬件上需要添加專(zhuān)門(mén)用于時(shí)間和優(yōu)先級管理的控制芯片,而軟實(shí)時(shí)系統則主要在軟件方面通過(guò)編程實(shí)現時(shí)限的管理。比如WindowsCE就是一個(gè)多任務(wù)分時(shí)系統,而Ucos-II則是典型的實(shí)時(shí)操作系統。當然,除了上述分類(lèi)之外,還有許多其他分類(lèi)方法,比如從應用方面分為工業(yè)應用和消費電子等,在這里就不一一累述了。
四、嵌入式系統的組成
4.1、簡(jiǎn)介
一個(gè)嵌入式系統裝置一般都由嵌入式計算機系統和執行裝置組成,如圖1-1所示,嵌入式計算機系統是整個(gè)嵌入式系統的核心,由硬件層、中間層、系統軟件層和應用軟件層組成。執行裝置也稱(chēng)為被控對象,它可以接受嵌入式計算機系統發(fā)出的控制命令,執行所規定的操作或任務(wù)。執行裝置可以很簡(jiǎn)單,如手機上的一個(gè)微小型的電機,當手機處于震動(dòng)接收狀態(tài)時(shí)打開(kāi);也可以很復雜,如SONY 智能機器狗,上面集成了多個(gè)微小型控制電機和多種傳感器,從而可以執行各種復雜的動(dòng)作和感受各種狀態(tài)信息。下面對嵌入式計算機系統的組成進(jìn)行介紹。
4.2、硬件層
硬件層中包含嵌入式微處理器、存儲器(SDRAM、ROM、Flash等)、通用設備接口和I/O接口(A/D、D/A、I/O等)。在一片嵌入式處理器基礎上添加電源電路、時(shí)鐘電路和存儲器電路,就構成了一個(gè)嵌入式核心控制模塊。其中操作系統和應用程序都可以固化在ROM中。
4.2.1、嵌入式微處理器嵌入式系統硬件層的核心是嵌入式微處理器,嵌入式微處理器與通用CPU最大的不同在于嵌入式微處理器大多工作在為特定用戶(hù)群所專(zhuān)用設計的系統中,它將通用CPU許多由板卡完成的任務(wù)集成在芯片內部,從而有利于嵌入式系統在設計時(shí)趨于小型化,同時(shí)還具有很高的效率和可靠性。嵌入式微處理器的體系結構可以采用馮·諾依曼體系或哈佛體系結構;指令系統可以選用精簡(jiǎn)指令系統(Reduced Instruction Set Computer,
RISC)和復雜指令系統CISC(Complex Instruction Set Computer,
CISC)。RISC計算機在通道中只包含最有用的指令,確保數據通道快速執行每一條指令,從而提高了執行效率并使CPU硬件結構設計變得更為簡(jiǎn)單。嵌入式微處理器有各種不同的體系,即使在同一體系中也可能具有不同的時(shí)鐘頻率和數據總線(xiàn)寬度,或集成了不同的外設和接口。據不完全統計,目前全世界嵌入式微處理器已經(jīng)超過(guò)1000多種,體系結構有30多個(gè)系列,其中主流的體系有ARM、MIPS、PowerPC、X86和SH等。但與全球PC市場(chǎng)不同的是,沒(méi)有一種嵌入式微處理器可以主導市場(chǎng),僅以32位的產(chǎn)品而言,就有100種以上的嵌入式微處理器。嵌入式微處理器的選擇是根據具體的應用而決定的。
4.2.2、存儲器嵌入式系統需要存儲器來(lái)存放和執行代碼。嵌入式系統的存儲器包含Cache、主存和輔助存儲器。1>
CacheCache是一種容量小、速度快的存儲器陣列它位于主存和嵌入式微處理器內核之間,存放的是最近一段時(shí)間微處理器使用最多的程序代碼和數據。在需要進(jìn)行數據讀取操作時(shí),微處理器盡可能的從Cache中讀取數據,而不是從主存中讀取,這樣就大大改善了系統的性能,提高了微處理器和主存之間的數據傳輸速率。Cache的主要目標就是:減小存儲器(如主存和輔助存儲器)給微處理器內核造成的存儲器訪(fǎng)問(wèn)瓶頸,使處理速度更快,實(shí)時(shí)性更強。在嵌入式系統中Cache全部集成在嵌入式微處理器內,可分為數據Cache、指令Cache或混合Cache,Cache的大小依不同處理器而定。一般中高檔的嵌入式微處理器才會(huì )把Cache集成進(jìn)去。2>主存主存是嵌入式微處理器能直接訪(fǎng)問(wèn)的寄存器,用來(lái)存放系統和用戶(hù)的程序及數據。它可以位于微處理器的內部或外部,其容量為256KB~1GB,根據具體的應用而定,一般片內存儲器容量小,速度快,片外存儲器容量大。常用作主存的存儲器有:ROM類(lèi) NOR Flash、EPROM和PROM等。RAM類(lèi) SRAM、DRAM和SDRAM等。其中NOR Flash憑借其可擦寫(xiě)次數多、存儲速度快、存儲容量大、價(jià)格便宜等優(yōu)點(diǎn),在嵌入式領(lǐng)域內得到了廣泛應用。3>輔助存儲器輔助存儲器用來(lái)存放大數據量的程序代碼或信息,它的容量大、但讀取速度與主存相比就慢的很多,用來(lái)長(cháng)期保存用戶(hù)的信息。嵌入式系統中常用的外存有:硬盤(pán)、NAND Flash、CF卡、MMC和SD卡等。
4.2.3、通用設備接口和I/O接口嵌入式系統和外界交互需要一定形式的通用設備接口,如A/D、D/A、I/O等,外設通過(guò)和片外其他設備的或傳感器的連接來(lái)實(shí)現微處理器的輸入/輸出功能。每個(gè)外設通常都只有單一的功能,它可以在芯片外也可以?xún)戎眯酒?。外設的種類(lèi)很多,可從一個(gè)簡(jiǎn)單的串行通信設備到非常復雜的802.11無(wú)線(xiàn)設備。目前嵌入式系統中常用的通用設備接口有A/D(模/數轉換接口)、D/A(數/模轉換接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太網(wǎng)接口)、USB(通用串行總線(xiàn)接口)、音頻接口、VGA視頻輸出接口、I2C(
現場(chǎng)總線(xiàn))、SPI(串行外圍設備接口)和IrDA(紅外線(xiàn)接口)等。
4.3、中間層
硬件層與軟件層之間為中間層,也稱(chēng)為硬件抽象層(Hardware Abstract Layer,HAL)或板級支持包(Board SupportPackage,BSP),它將系統上層軟件與底層硬件分離開(kāi)來(lái),使系統的底層驅動(dòng)程序與硬件無(wú)關(guān),上層軟件開(kāi)發(fā)人員無(wú)需關(guān)心底層硬件的具體情況,根據BSP 層提供的接口即可進(jìn)行開(kāi)發(fā)。該層一般包含相關(guān)底層硬件的初始化、數據的輸入/輸出操作和硬件設備的配置功能。BSP具有以下兩個(gè)特點(diǎn)。硬件相關(guān)性:因為
嵌入式實(shí)時(shí)系統的硬件環(huán)境具有應用相關(guān)性,而作為上層軟 件與硬件平臺之間的接口,BSP需要為操作系統提供操作和控制具體硬件的方法。操作系統相關(guān)性:不同的操作系統具有各自的軟件層次結構,因此,不同的操作系統具有特定的硬件接口形式。實(shí)際上,BSP是一個(gè)介于操作系統和底層硬件之間的軟件層次,包括了系統中大部分與硬件聯(lián)系緊密的軟件模塊。設計一個(gè)完整的BSP需要完成兩部分工作:嵌入式系統的硬件初始化以及BSP功能,設計硬件相關(guān)的設備驅動(dòng)。
4.3.1、嵌入式系統硬件初始化系統初始化過(guò)程可以分為3個(gè)主要環(huán)節,按照自底向上、從硬件到軟件的次序依次為:片級初始化、板級初始化和系統級初始化。片級初始化完成嵌入式微處理器的初始化,包括設置嵌入式微處理器的核心寄存器和控制寄存器、嵌入式微處理器核心工作模式和嵌入式微處理器的局部總線(xiàn)模式等。片級初始化把嵌入式微處理器從上電時(shí)的默認狀態(tài)逐步設置成系統所要求的工作狀態(tài)。這是一個(gè)純硬件的初始化過(guò)程。板級初始化完成嵌入式微處理器以外的其他硬件設備的初始化。另外,還需設置某些軟件的數據結構和參數,為隨后的系統級初始化和應用程序的運行建立硬件和軟件環(huán)境。這是一個(gè)同時(shí)包含軟硬件兩部分在內的初始化過(guò)程。系統初始化該初始化過(guò)程以軟件初始化為主,主要進(jìn)行操作系統的初始化。BSP將對嵌入式微處理器的控制權轉交給嵌入式操作系統,由操作系統完成余下的初始化操作,包含加載和初始化與硬件無(wú)關(guān)的設備驅動(dòng)程序,建立系統內存區,加載并初始化其他系統軟件模塊,如網(wǎng)絡(luò )系統、文件系統等。最后,操作系統創(chuàng )建應用程序環(huán)境,并將控制權交給應用程序的入口。
4.3.2、硬件相關(guān)的設備驅動(dòng)程序BSP的另一個(gè)主要功能是硬件相關(guān)的設備驅動(dòng)。硬件相關(guān)的設備驅動(dòng)程序的初始化通常是一個(gè)從高到低的過(guò)程。盡管BSP中包含硬件相關(guān)的設備驅動(dòng)程序,但是這些設備驅動(dòng)程序通常不直接由BSP使用,而是在系統初始化過(guò)程中由BSP將他們與操作系統中通用的設備驅動(dòng)程序關(guān)聯(lián)起來(lái),并在隨后的應用中由通用的設備驅動(dòng)程序調用,實(shí)現對硬件設備的操作。與硬件相關(guān)的驅動(dòng)程序是BSP設計與開(kāi)發(fā)中另一個(gè)非常關(guān)鍵的環(huán)節。
4.4、系統軟件層
系統軟件層由實(shí)時(shí)多任務(wù)操作系統(Real-time Operation System,RTOS)、文件系統、圖形用戶(hù)接口(Graphic UserInterface,GUI)、網(wǎng)絡(luò )系統及通用組件模塊組成。RTOS是嵌入式應用軟件的基礎和開(kāi)發(fā)平臺。
嵌入式操作系統嵌入式操作系統(EmbeddedOperationSystem,EOS)是一種用途廣泛的系統軟件,過(guò)去它主要應用與工業(yè)控制和國防系統領(lǐng)域。EOS負責嵌入系統的全部軟、硬件資源的分配、任務(wù)調度,控制、協(xié)調并發(fā)活動(dòng)。它必須體現其所在系統的特征,能夠通過(guò)裝卸某些模塊來(lái)達到系統所要求的功能。目前,已推出一些應用比較成功的EOS產(chǎn)品系列。隨著(zhù)Internet技術(shù)的發(fā)展、信息家電的普及應用及EOS的微型化和專(zhuān)業(yè)化,EOS開(kāi)始從單一的弱功能向高專(zhuān)業(yè)化的強功能方向發(fā)展。嵌入式操作系統在系統實(shí)時(shí)高效性、硬件的相關(guān)依賴(lài)性、軟件固化以及應用的專(zhuān)用性等方面具有較為突出的特點(diǎn)。EOS是相對于一般操作系統而言的,它除具有了一般操作系統最基本的功能,如任務(wù)調度、同步機制、中斷處理、文件處理等外,還有以下
五、嵌入式系統的應用領(lǐng)域
嵌入式系統技術(shù)具有非常廣闊的應用前景,其應用領(lǐng)域可以包括:
5.1、工業(yè)控制
基于嵌入式芯片的工業(yè)自動(dòng)化設備將獲得長(cháng)足的發(fā)展,目前已經(jīng)有大量的8、16、32位嵌入式微控制器在應用中,網(wǎng)絡(luò )化是提高生產(chǎn)效率和產(chǎn)品質(zhì)量、減少人力資源主要途徑,如工業(yè)過(guò)程控制、數字機床、電力系統、電網(wǎng)安全、電網(wǎng)設備監測、石油化工系統。就傳統的工業(yè)控制產(chǎn)品而言,低端型采用的往往是8位單片機。但是隨著(zhù)技術(shù)的發(fā)展,32位、64位的處理器逐漸成為工業(yè)控制設備的核心,在未來(lái)幾年內必將獲得長(cháng)足的發(fā)展。
5.2、交通管理
在車(chē)輛導航、流量控制、信息監測與汽車(chē)服務(wù)方面,嵌入式系統技術(shù)已經(jīng)獲得了廣泛的應用,內嵌GPS模塊,
GSM模塊的移動(dòng)定位終端已經(jīng)在各種運輸行業(yè)獲得了成功的使用。目前GPS設備已經(jīng)從尖端產(chǎn)品進(jìn)入了普通百姓的家庭,只需要幾千元,就可以隨時(shí)隨地找到你的位置。
5.3、信息家電
這將稱(chēng)為嵌入式系統最大的應用領(lǐng)域,冰箱、空調等的網(wǎng)絡(luò )化、智能化將引領(lǐng)人們的生活步入一個(gè)嶄新的空間。即使你不在家里,也可以通過(guò)電話(huà)線(xiàn)、網(wǎng)絡(luò )進(jìn)行遠程控制。在這些設備中,嵌入式系統將大有用武之地。
5.4、家庭智能管理系統
水、電、煤氣表的遠程自動(dòng)抄表,安全防火、防盜系統,其中嵌有的專(zhuān)用控制芯片將代替傳統的人工檢查,并實(shí)現更高,更準確和更安全的性能。目前在服務(wù)領(lǐng)域,如遠程點(diǎn)菜器等已經(jīng)體現了嵌入式系統的優(yōu)勢。
5.5、POS網(wǎng)絡(luò )及電子商務(wù)
公共交通無(wú)接觸智能卡(Contactless Smartcard,CSC)發(fā)行系統,公共電話(huà)卡發(fā)行系統,自動(dòng)售貨機,各種智能ATM終端將全面走入人們的生活,到時(shí)手持一卡就可以行遍天下。
5.6、環(huán)境工程與自然
水文資料實(shí)時(shí)監測,防洪體系及水土質(zhì)量監測、堤壩安全,地震監測網(wǎng),實(shí)時(shí)氣象信息網(wǎng),水源和空氣污染監測。在很多環(huán)境惡劣,地況復雜的地區,嵌入式系統將實(shí)現無(wú)人監測。
5.7、機器人
嵌入式芯片的發(fā)展將使機器人在微型化,高智能方面優(yōu)勢更加明顯,同時(shí)會(huì )大幅度降低機器人的價(jià)格,使其在工業(yè)領(lǐng)域和服務(wù)領(lǐng)域獲得更廣泛的應用。這些應用中,可以著(zhù)重于在控制方面的應用。就遠程家電控制而言,除了開(kāi)發(fā)出支持TCP/IP的嵌入式系統之外,家電產(chǎn)品控制協(xié)議也需要制訂和統一,這需要家電生產(chǎn)廠(chǎng)家來(lái)做。同樣的道理,所有基于網(wǎng)絡(luò )的遠程控制器件都需要與嵌入式系統之間實(shí)現接口,然后再由嵌入式系統來(lái)控制并通過(guò)網(wǎng)絡(luò )實(shí)現控制。所以,開(kāi)發(fā)和探討嵌入式系統有著(zhù)十分重要的意義。
5.8、嵌入式系統在機電產(chǎn)品方面的應用
相對于其他的領(lǐng)域,機電產(chǎn)品可以說(shuō)是嵌入式系統應用最典型最廣泛的領(lǐng)域之一。從最初的單片機到現在的
工控機、SOC在各種機電產(chǎn)品中均有著(zhù)巨大的市場(chǎng)。工業(yè)設備是機電產(chǎn)品中最大的一類(lèi),在目前的工業(yè)控制設備中,工控機的使用非常廣泛,這些工控機一般采用的是工業(yè)級的處理器和各種設備,其中以X86的MPU最多。工控的要求往往較高,需要各種各樣的設備接口,除了進(jìn)行實(shí)時(shí)控制,還須將設備狀態(tài),傳感器的信息等在顯示屏上實(shí)時(shí)顯示。這些要求8位的單片機是無(wú)法滿(mǎn)足的,以前多數使用16位的處理器,隨著(zhù)處理器快速的發(fā)展,目前32位、64位的處理器逐漸替代了16位處理器,進(jìn)一步提升了系統性能。采用PC104總線(xiàn)的系統,體積小,穩定可靠,受到了很多用戶(hù)的青睞。不過(guò)這些工控機采用的往往是DOS或者Windows系統,雖然具有嵌入式的特點(diǎn),卻不能稱(chēng)作純粹的嵌入式系統。另外在工業(yè)控制器和設備控制器方面,則是各種嵌入式處理器的天下。這些控制器往往采用16位以上的處理器,各種MCU,Arm、Mips、68K系列的處理器在控制器中占據核心地位。這些處理器上提供了豐富的接口總線(xiàn)資源,可以通過(guò)它們實(shí)現數據采集,數據處理,通訊以及顯示(顯示一般是連接LED或者LCD)。最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業(yè)控制,采用最先進(jìn)的0.18微米CMOS嵌入式閃存處理技術(shù),操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業(yè)領(lǐng)域中對最終用戶(hù)而言是一套極具成本效益的解決方案。美國TERN工業(yè)控制器基于A(yíng)m188/186ES、i386EX、NEC V25、Am586(ElanSC520),采用了SUPERTASK實(shí)時(shí)多任務(wù)內核,可應用于便攜設備、無(wú)線(xiàn)控制設備、數據采集設備、工業(yè)控制與工業(yè)自動(dòng)化設備以及其它需要控制處理的設備。家電行業(yè)是嵌入式應用的另一大行業(yè),我們傳統的電視,電冰箱當然其中也嵌有處理器,但是這些處理器只是在控制方面應用。而現在只有按鈕、開(kāi)關(guān)的電器顯然已經(jīng)不能滿(mǎn)足人們的日常需求,具有用戶(hù)界面,能遠程控制,智能管理的電器是未來(lái)的發(fā)展趨勢。據IDG發(fā)布的統計數據表明,未來(lái)信息家電將會(huì )成長(cháng)五至十倍。中國的傳統家電廠(chǎng)商向信息家電過(guò)渡時(shí),首先面臨的挑戰是核心操作系統軟件開(kāi)發(fā)工作。硬件方面,進(jìn)行智能信息控制并不是很高的要求,目前絕大多數嵌入式處理器都可以滿(mǎn)足硬件要求,真正的難點(diǎn)是如何使軟件操作系統容量小、穩定性高且易于開(kāi)發(fā)。Linux核心可以起到很好的橋梁作用,作為一個(gè)跨平臺的操作系統,它可以支持二三十種CPU,而目前已有眾多家電業(yè)的芯片都開(kāi)始做Linux的平臺移植工作。1999年就登錄中國的微軟“維納斯”計劃給了國人一個(gè)數字家庭的概念,引導各大家電廠(chǎng)商紛紛投入到這場(chǎng)革命中來(lái),雖然最終未能獲得成功,卻使信息家電深入人心。如今各大廠(chǎng)商仍然在努力推出適用于新一代家電應用的芯片,英特爾公司已專(zhuān)為信息家電業(yè)研發(fā)了名為StrongARM的ARMCPU系列,這一系列CPU本身不象X86CPU需要整合不同的芯片組,它在一顆芯片中可以包括你所需要的各項功能,即硬件系統實(shí)現了SOC的概念。美商網(wǎng)虎公司已將全球最小的嵌入式操作系統——QUARK成功移植到StrongARM系列芯片上,這是第一次把Linux、圖形界面和一些程序進(jìn)行完整移植(QUARK的內核只有143K),它將為信息家電提供功能強大的核心操作系統。相信在不久的將來(lái),數字智能家庭必將來(lái)到我們身邊。機器人技術(shù)的發(fā)展從來(lái)就是與嵌入式系統的發(fā)展緊密聯(lián)系在一起的。最早的機器人技術(shù)是50年代MIT提出的數控技術(shù),當時(shí)使用的還遠未達到芯片水平,只是簡(jiǎn)單的與非門(mén)邏輯電路。之后由于處理器和
智能控制理論的發(fā)展緩慢從50年代到70年代初期,機器人技術(shù)一直未能獲得充分的發(fā)展。70年代中期之后,由于智能理論的發(fā)展和MCU出現,機器人逐漸成為研究熱點(diǎn),并且獲得了長(cháng)足的發(fā)展。近來(lái)由于嵌入式處理器的高度發(fā)展,機器人從硬件到軟件也呈現了新的發(fā)展趨勢。例如火星車(chē)就是一個(gè)典型例子,這個(gè)價(jià)值10億美金的技術(shù)高密集移動(dòng)機器人,采用的是美國風(fēng)河公司的Vxworks嵌入式操作系統,可以在不與地球聯(lián)系的情況下自主工作。1997年美國發(fā)射的“索杰納”火星車(chē)帶有機械手,可以采集火星上的各種地況,并且通過(guò)攝像頭把火星上的圖像發(fā)回地面指揮中心。這臺火星車(chē)在火星上自主工作了3個(gè)月,充分體現了Vxworks系統的高可靠性。以索尼的機器狗為代表的智能機器寵物,可以?xún)H僅使用8位的AVR,
51單片機或者16位的DSP來(lái)控制舵機,進(jìn)行圖像處理,就能制造出那些人見(jiàn)人愛(ài)的玩具,讓我們不能不驚嘆嵌入式處理器強大的功能。近來(lái)32位處理器,WindowsCE等32位嵌入式操作系統的盛行,使得操控一個(gè)機器人只需要在手持PDA上獲取遠程機器人的信息,并且通過(guò)無(wú)線(xiàn)通訊控制機器人的運行,與傳統的采用工控機相比,要輕巧便捷的多。隨著(zhù)嵌入式控制器越來(lái)越微型化、功能化,微型機器人、特種機器人等也將獲得更大的發(fā)展機遇。
六、嵌入式系統的現狀和發(fā)展趨勢
6.1、 嵌入式系統的發(fā)展現狀
隨著(zhù)信息化,智能化,網(wǎng)絡(luò )化的發(fā)展,嵌入式系統技術(shù)也將獲得廣闊的發(fā)展空間。美國著(zhù)名未來(lái)學(xué)家尼葛洛龐帝99年1月訪(fǎng)華時(shí)預言,4~5年后嵌入式智能(電腦)工具將是PC和因特網(wǎng)之后最偉大的發(fā)明。我國著(zhù)名嵌入式系統專(zhuān)家沈緒榜院士98年11月在武漢全國第11次微機學(xué)術(shù)交流會(huì )上發(fā)表的《計算機的發(fā)展與技術(shù)》一文中,對未來(lái)10年以嵌入式芯片為基礎的計算機工業(yè)進(jìn)行了科學(xué)的闡述和展望。1999年世界電子產(chǎn)品產(chǎn)值已超過(guò)12000億美元,2000年達到13000億美元,預計2005年,銷(xiāo)售額將達18000億美元。進(jìn)入20世紀90年代,嵌入式技術(shù)全面展開(kāi),目前已成為通信和消費類(lèi)產(chǎn)品的共同發(fā)展方向。在通信領(lǐng)域,數字技術(shù)正在全面取代模擬技術(shù)。在廣播電視領(lǐng)域,美國已開(kāi)始由模擬電視向數字電視轉變,歐洲的DVB(數字電視廣播)技術(shù)已在全球大多數國家推廣。數字音頻廣播(DAB)也已進(jìn)入商品化試播階段。而軟件、集成電路和新型元器件在產(chǎn)業(yè)發(fā)展中的作用日益重要。所有上述產(chǎn)品中,都離不開(kāi)嵌入式系統技術(shù)。象前途無(wú)可計量的維納斯計劃生產(chǎn)機頂盒,核心技術(shù)就是采用32位以上芯片級的嵌入式技術(shù)。在個(gè)人領(lǐng)域中,嵌入式產(chǎn)品將主要是個(gè)人商用,作為個(gè)人移動(dòng)的數據處理和通訊軟件。由于嵌入式設備具有自然的人機交互界面,GUI屏幕為中心的多媒體界面給人很大的親和力。手寫(xiě)文字輸入、語(yǔ)音撥號上網(wǎng)、收發(fā)電子郵件以及彩色圖形、圖像已取得初步成效。目前一些先進(jìn)的PDA在顯示屏幕上已實(shí)現漢字寫(xiě)入、短消息語(yǔ)音發(fā)布,日用范圍也將日益廣闊。對于企業(yè)專(zhuān)用解決方案,如物流管理、條碼掃描、移動(dòng)信息采集等,這種小型手持嵌入式系統將發(fā)揮巨大的作用。自動(dòng)控制領(lǐng)域,不僅可以用于A(yíng)TM機,自動(dòng)售貨機,工業(yè)控制等專(zhuān)用設備,和移動(dòng)通訊設備結合、GPS、娛樂(lè )相結合,嵌入式系統同樣可以發(fā)揮巨大的作用。近期長(cháng)虹推出的ADSL產(chǎn)品,結合網(wǎng)絡(luò ),控制,信息,這種智能化,網(wǎng)絡(luò )化將是家電發(fā)展的新趨勢。硬件方面,不僅有各大公司的微處理器芯片,還有用于學(xué)習和研發(fā)的各種配套開(kāi)發(fā)包。目前低層系統和硬件平臺經(jīng)過(guò)若干年的研究,已經(jīng)相對比較成熟,實(shí)現各種功能的芯片應有盡有。而且巨大的市場(chǎng)需求給我們提供了學(xué)習研發(fā)的資金和技術(shù)力量。從軟件方面講,也有相當部分的成熟軟件系統。國外商品化的嵌入式實(shí)時(shí)操作系統,已進(jìn)入我國市場(chǎng)的有WindRiver、Microsoft、QNX和Nuclear等產(chǎn)品。我國自主開(kāi)發(fā)的嵌入式系統軟件產(chǎn)品如科銀(CoreTek)公司的嵌入式軟件開(kāi)發(fā)平臺DeltaSystem,中科院推出的Hopen嵌入式操作系統(雖然還不夠完善)。同時(shí)由于是研究熱點(diǎn),所以我們可以在網(wǎng)上找到各種各樣的免費資源,從各大廠(chǎng)商的開(kāi)發(fā)文檔,到各種驅動(dòng),程序
源代碼,甚至很多廠(chǎng)商還提供微處理器的樣片。這對于我們從事這方面的研發(fā),無(wú)疑是個(gè)資源寶庫。對于軟件設計來(lái)說(shuō),不管是上手還是進(jìn)一步開(kāi)發(fā),都相對來(lái)說(shuō)比較容易。這就使得很多生手能夠比較快的進(jìn)入研究狀態(tài),利于發(fā)揮大家的積極創(chuàng )造性。今天嵌入式系統帶來(lái)的工業(yè)年產(chǎn)值已超過(guò)了1萬(wàn)億美元,1997年來(lái)自美國嵌入式系統大會(huì )(Embedded SystemConference)的報告指出,未來(lái)5年僅基于嵌入式計算機系統的全數字電視產(chǎn)品,就將在美國產(chǎn)生一個(gè)每年1500億美元的新市場(chǎng)。美國汽車(chē)大王福特公司的高級經(jīng)理也曾宣稱(chēng),“福特出售的‘計算能力’已超過(guò)了IBM”,由此可以想見(jiàn)嵌入式計算機工業(yè)的規模和廣度。1998年11月在美國加州舉行的嵌入式系統大會(huì )上,基于RTOS的EmbeddedInternet成為一個(gè)技術(shù)新熱點(diǎn)。在國內,“維納斯計劃”和“女鍋計劃”一度鬧得沸沸揚揚,機頂盒、信息加電這兩年更成了IT熱點(diǎn),而實(shí)際上這些都是嵌入式系統在特定環(huán)境下的一個(gè)特定應用。據調查,目前國際上已有兩百多種嵌入式操作系統,而各種各樣的開(kāi)發(fā)工具、應用于嵌入式開(kāi)發(fā)的儀器設備更是不可勝數。在國內,雖然嵌入式應用、開(kāi)發(fā)很廣,但該領(lǐng)域卻幾乎還是空白,只有三兩家公司和極少數人員在從事這方面工作。由此可見(jiàn),嵌入式系統技術(shù)發(fā)展的空間真是無(wú)比廣大。
6.2、未來(lái)嵌入式系統的發(fā)展趨勢
信息時(shí)代,數字時(shí)代使得嵌入式產(chǎn)品獲得了巨大的發(fā)展契機,為嵌入式市場(chǎng)展現了美好的前景,同時(shí)也對嵌入式生產(chǎn)廠(chǎng)商提出了新的挑戰,從中我們可以看出未來(lái)嵌入式系統的幾大發(fā)展趨勢:1.嵌入式開(kāi)發(fā)是一項系統工程,因此要求嵌入式系統廠(chǎng)商不僅要提供嵌入式軟硬件系統本身,同時(shí)還需要提供強大的硬件開(kāi)發(fā)工具和軟件包支持。目前很多廠(chǎng)商已經(jīng)充分考慮到這一點(diǎn),在主推系統的同時(shí),將開(kāi)發(fā)環(huán)境也作為重點(diǎn)推廣。比如三星在推廣Arm7,Arm9芯片的同時(shí)還提供開(kāi)發(fā)板和版及支持包(BSP),而WindowCE在主推系統時(shí)也提供EmbeddedVC++作為開(kāi)發(fā)工具,還有Vxworks的Tonado開(kāi)發(fā)環(huán)境,DeltaOS的Limda編譯環(huán)境等等都是這一趨勢的典型體現。當然,這也是市場(chǎng)競爭的結果。2.網(wǎng)絡(luò )化、信息化的要求隨著(zhù)因特網(wǎng)技術(shù)的成熟、帶寬的提高日益提高,使得以往單一功能的設備如電話(huà)、手機、冰箱、微波爐等功能不再單一,結構更加復雜。這就要求芯片設計廠(chǎng)商在芯片上集成更多的功能,為了滿(mǎn)足應用功能的升級,設計師們一方面采用更強大的嵌入式處理器如32位、64位RISC芯片或信號處理器DSP增強處理能力,同時(shí)增加功能接口,如USB,擴展總線(xiàn)類(lèi)型,如CANBUS,加強對多媒體、圖形等的處理,逐步實(shí)施片上系統(SOC)的概念。軟件方面采用實(shí)時(shí)多任務(wù)編程技術(shù)和交叉開(kāi)發(fā)工具技術(shù)來(lái)控制功能復雜性,簡(jiǎn)化應用程序設計、保障軟件質(zhì)量和縮短開(kāi)發(fā)周期。如HP3.網(wǎng)絡(luò )互聯(lián)成為必然趨勢。未來(lái)的嵌入式設備為了適應網(wǎng)絡(luò )發(fā)展的要求,必然要求硬件上提供各種網(wǎng)絡(luò )通信接口。傳統的單片機對于網(wǎng)絡(luò )支持不足,而新一代的嵌入式處理器已經(jīng)開(kāi)始內嵌網(wǎng)絡(luò )接口,除了支持TCP/IP協(xié)議,還有的支持IEEE1394、USB、CAN、Bluetooth或IrDA通信接口中的一種或者幾種,同時(shí)也需要提供相應的通信組網(wǎng)協(xié)議軟件和物理層驅動(dòng)軟件。軟件方面系統系統內核支持網(wǎng)絡(luò )模塊,甚至可以在設備上嵌入Web瀏覽器,真正實(shí)現隨時(shí)隨地用各種設備上網(wǎng)。4.精簡(jiǎn)系統內核、算法,降低功耗和軟硬件成本。未來(lái)的嵌入式產(chǎn)品是軟硬件緊密結合的設備,為了減低功耗和成本,需要設計者盡量精簡(jiǎn)系統內核,只保留和系統功能緊密相關(guān)的軟硬件,利用最低的資源實(shí)現最適當的功能,這就要求設計者選用最佳的編程模型和不斷改進(jìn)算法,優(yōu)化編譯器性能。因此,既要軟件人員有豐富的硬件知識,又需要發(fā)展先進(jìn)嵌入式軟件技術(shù),如Java、Web和WAP等。5.提供友好的多媒體人機界面嵌入式設備能與用戶(hù)親密接觸,最重要的因素就是它能提供非常友好的用戶(hù)界面。圖像界面,靈活的控制方式,使得人們感覺(jué)嵌入式設備就象是一個(gè)熟悉的老朋友。這方面的要求使得嵌入式軟件設計者要在圖形界面,多媒體技術(shù)上痛下苦功。手寫(xiě)文字輸入、語(yǔ)音撥號上網(wǎng)、收發(fā)電子郵件以及彩色圖形、圖像都會(huì )使使用者獲得自由的感受。目前一些先進(jìn)的PDA在顯示屏幕上已實(shí)現漢字寫(xiě)入、短消息語(yǔ)音發(fā)布,但一般的嵌入式設備距離這個(gè)要求還有很長(cháng)的路要走。參考文獻:《嵌入式處理器分類(lèi)與現狀》 呂京建 肖海橋《DSP發(fā)展應用縱橫談》 戴 敏
七、嵌入式系統學(xué)習方法
嵌入式系統無(wú)疑是當前最熱門(mén)最有發(fā)展前途的IT應用領(lǐng)域之一。嵌入式系統用在一些特定專(zhuān)用設備上,通常這些設備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時(shí)對實(shí)時(shí)響應要求很高等。特別是隨著(zhù)消費家電的智能化,嵌入式更顯重要。像我們平常常見(jiàn)到的手機、PDA、電子字典、可視電話(huà)、VCD/DVD/MP3Player、數字相機(DC)、數字攝像機(DV)、U-Disk、機頂盒(Set TopBox)、高清電視(HDTV)、游戲機、智能玩具、交換機、路由器、數控設備或儀表、
汽車(chē)電子、家電控制系統、醫療儀器、航天航空設備等等都是典型的嵌入式系統。嵌入式系統是軟硬結合的東西,搞嵌入式開(kāi)發(fā)的人有兩類(lèi)。一類(lèi)是學(xué)電子工程、
通信工程等偏硬件專(zhuān)業(yè)出身的人,他們主要是搞硬件設計,有時(shí)要開(kāi)發(fā)一些與硬件關(guān)系最密切的最底層軟件,如BootLoader、Board SupportPackage(像PC的BIOS一樣,往下驅動(dòng)硬件,往上支持操作系統),最初級的硬件驅動(dòng)程序等。他們的優(yōu)勢是對硬件原理非常清楚,不足是他們更擅長(cháng)定義各種硬件接口,但對復雜軟件系統往往力不從心(例如嵌入式操作系統原理和復雜應用軟件等)。另一類(lèi)是學(xué)軟件、計算機專(zhuān)業(yè)出身的人,主要從事嵌入式操作系統和應用軟件的開(kāi)發(fā)。如果我們學(xué)軟件的人對硬件原理和接口有較好的掌握,我們完全也可寫(xiě)BSP和硬件驅動(dòng)程序。
嵌入式開(kāi)發(fā)板和軟件,另外需要有經(jīng)驗的人進(jìn)行指導開(kāi)發(fā)流程。(2)與企業(yè)計算等應用軟件不同,嵌入式領(lǐng)域人才的工作強度通常低一些(但收入不低)。搞企業(yè)應用軟件的IT企業(yè),這個(gè)用戶(hù)的系統搞完了,又得去搞下一個(gè)用戶(hù)的,而且每個(gè)用戶(hù)的需求和完成時(shí)間都得按客戶(hù)要求改變,往往疲于奔命,重復勞動(dòng)。相比而言,搞嵌入式系統的公司,都有自己的產(chǎn)品計劃,按自己的節奏行事。所開(kāi)發(fā)的產(chǎn)品通常是通用的,不會(huì )因客戶(hù)的不同而修改。一個(gè)產(chǎn)品型號開(kāi)發(fā)完了,往往有較長(cháng)一段空閑時(shí)間(或只是對軟件進(jìn)行一些小修補),有時(shí)間進(jìn)行充電和休整。另外,從事嵌入式軟件的每個(gè)人工作范圍相對狹窄,所涉及的專(zhuān)業(yè)技術(shù)范圍就是那些(ARM、RTOS、MPEG、802.11等),時(shí)間長(cháng)了這些東西會(huì )越搞越有經(jīng)驗,賣(mài)賣(mài)老本,幾句指導也夠讓那些初入道者琢磨半年的。若搞應用軟件,可能下一個(gè)客戶(hù)要換成一個(gè)完全不同的軟件開(kāi)發(fā)平臺,那就苦了。(3)哪天若想創(chuàng )業(yè),搞自已的產(chǎn)品,那么嵌入式是一個(gè)不錯的主意,這可不像應用軟件那樣容易被盜版。。學(xué)習嵌入式,顯然應偏重于嵌入式軟件,特別是嵌入式操作系統方面。對于搞嵌入式軟件的人,最重要的技術(shù)顯然是(實(shí)際上很多公司的招聘廣告上就是這樣寫(xiě)的):a 掌握主流嵌入式微處理器的結構與原理b 必須掌握一個(gè)嵌入式操作系統c 必須熟悉嵌入式軟件開(kāi)發(fā)流程并至少做過(guò)一個(gè)嵌入式軟件項目。
八、常見(jiàn)的嵌入式操作系統
uC/OS IIuCLinuxArm-LinuxVxWorkspSOSNucleusPalmOSWindows CEWindows XP EmbeddedWindows Vista Embedded嵌入式LinuxECOSQNXLynxSymbian