廣州工商學(xué)院 梁光華
這些年來隨著信息化,智能化,網(wǎng)絡(luò)化的發(fā)展,嵌入式系統(tǒng)將起著越來越重要作用,其原因有幾個:一是芯片技術(shù)的發(fā)展,使得單個芯片具有更強的處理能力,而且使集成多種接口已經(jīng)成為可能,眾多芯片生產(chǎn)廠商已經(jīng)將注意力集中在這方面。另一方面的原因就是應(yīng)用的需要,由于對產(chǎn)品可靠性、成本、更新?lián)Q代要求的提高,使得嵌入式系統(tǒng)逐漸從純硬件實現(xiàn)和使用通用計算機實現(xiàn)的應(yīng)用中脫穎而出。
嵌入式系統(tǒng)技術(shù)的應(yīng)用也將獲得更廣泛的發(fā)展空間,無論是民用還是軍用隨處都可見到嵌入式系統(tǒng)的身影。嵌入式系統(tǒng)在工業(yè)控制、交通管理、信息家電、家庭智能管理、網(wǎng)絡(luò)及電子商務(wù)、環(huán)境監(jiān)測和機器人等方面,無處不在。
當(dāng)前歷史任務(wù)就是:在源于計算機領(lǐng)域的嵌入式系統(tǒng)基礎(chǔ)上,研究和發(fā)展智能化的現(xiàn)代電子系統(tǒng)時代的嵌入式系統(tǒng)。
嵌入式系統(tǒng)是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),將用戶所需的功能嵌入到產(chǎn)品、裝置或大型系統(tǒng)中的計算機系統(tǒng),并且軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計算機系統(tǒng);它一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等四個部分組成,用于實現(xiàn)對其他設(shè)備的控制、監(jiān)視或管理等功能。
目前,對嵌入式系統(tǒng)的定義多種多樣,下面給出兩種比較合理定義:
(1)從技術(shù)的角度定義
以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計算機系統(tǒng)。
(2)從系統(tǒng)的角度定義
嵌入到對象體系中的專用計算機系統(tǒng)。嵌入性、專用性與計算機系統(tǒng)是嵌入式系統(tǒng)的三個基本要素。對象系統(tǒng)是指嵌入式系統(tǒng)所嵌入的宿主系統(tǒng)。
嵌入式計算機系統(tǒng)是整個嵌入式系統(tǒng)的核心,由硬件層、中間層、系統(tǒng)軟件層和應(yīng)用軟件層組成。執(zhí)行裝置也稱為被控對象,它可以接受嵌入式計算機系統(tǒng)發(fā)出的控制命令,執(zhí)行所規(guī)定的操作或任務(wù)。
(1)功能層
應(yīng)用程序:面向應(yīng)用領(lǐng)域,如手機軟件、路由器軟件、交換機軟件和飛控軟件等。
(2)軟件層
軟件層由實時多任務(wù)操作系統(tǒng)(Real-time Operation System,RTOS)、文件系統(tǒng)、圖形用戶接口(Graphic User Interface,GUI)、網(wǎng)絡(luò)系統(tǒng)及通用組件模塊組成。RTOS是嵌入式應(yīng)用軟件的基礎(chǔ)和開發(fā)平臺。
(3)中間層
硬件層與軟件層之間為中間層,也稱為硬件抽象層(Hardware Abstract Layer,HAL)或者板級支持包(Board Support Package,BSP),它使系統(tǒng)的上層軟件與底層硬件分離開,該層一般包含相關(guān)底層硬件的初始化、數(shù)據(jù)的輸入/輸出操作和硬件設(shè)備的配置功能。
(4)硬件層
硬件層中包含嵌入式微處理器、存儲器(SDRAM、ROM、Flash等)、通用設(shè)備接口和I/O接口(A/D、D/A、I/O等)。在一嵌入式處理器基礎(chǔ)上添加電源電路、時鐘電路和存儲器電路,就構(gòu)成了一個嵌入式核心控制模塊。其中操作系統(tǒng)和應(yīng)用程序都可以固化在ROM中。
(1)幾個重要特點:
① 系統(tǒng)內(nèi)核小
由于嵌入式系統(tǒng)一般是應(yīng)用于小型電子裝置的,系統(tǒng)資源相對有限,所以內(nèi)核較之傳統(tǒng)的操作系統(tǒng)要小得多。
② 專用性強
嵌入式系統(tǒng)的個性化很強,其中的軟件系統(tǒng)和硬件的結(jié)合非常緊密,一般要針對硬件進行系統(tǒng)的移植,即使在同一品牌、同一系列的產(chǎn)品中也需要根據(jù)系統(tǒng)硬件的變化和增減不斷進行修改。同時針對不同的任務(wù),往往需要對系統(tǒng)進行較大更改,程序的編譯下載要和系統(tǒng)相結(jié)合,這種修改和通用軟件的“升級”是完全兩個概念。
③ 系統(tǒng)精簡
嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應(yīng)用軟件的明顯區(qū)分,不要求其功能設(shè)計及實現(xiàn)上過于復(fù)雜,這樣一方面利于控制系統(tǒng)成本,同時也利于實現(xiàn)系統(tǒng)安全。
④ 嵌入式系統(tǒng)代碼質(zhì)量高
由于嵌入式系統(tǒng)的運算速度和存儲容量仍然存在一定程度的限制,另外,由于大部分嵌入式系統(tǒng)必須具有較高的實時性,因此軟件代碼要求高質(zhì)量和高可靠性。
(2)嵌入式系統(tǒng)的三要素
① 嵌入性:計算機嵌入到對象體系中。
② 內(nèi)含計算機:實現(xiàn)對象系統(tǒng)的計算機智能化控制。
③ 專用性:軟、硬件按對象要求裁減,軟件配置必須依據(jù)嵌入對象的要求設(shè)計成專用的系統(tǒng)。
嵌入式系統(tǒng)在很多產(chǎn)業(yè)中廣泛的應(yīng)用,包括工業(yè)自動化、國防、運輸和航天領(lǐng)域。在日常生活中,幾乎所有帶有一點—智能—的家電(智能手機、恒溫空調(diào)、全自動洗衣機、電腦電飯煲…)都是嵌入式系統(tǒng)。
在虛擬現(xiàn)實系統(tǒng)中的數(shù)據(jù)手套、頭盔等也都是嵌入式系統(tǒng).嵌入式系統(tǒng)廣泛的適應(yīng)能力和多樣性,使得教學(xué)、娛樂、游戲、視聽、工作場所甚至健身設(shè)備中到處都有嵌入式系統(tǒng)。
嵌入式系統(tǒng)的應(yīng)用領(lǐng)域如圖2所示。
一是在程序總體結(jié)構(gòu)的設(shè)計和編制中,軟件程序的開發(fā)者應(yīng)當(dāng)盡做好軟件系統(tǒng)和硬件系統(tǒng)的結(jié)合工作,減輕對硬件系統(tǒng)的依賴。同時這樣的設(shè)計還可以提高其實時性和可靠性的特征。
二是因為嵌入式系統(tǒng)在實際的使用中,可以實現(xiàn)軟件數(shù)據(jù)的初始化過程和格式化過程。這就保證了程序設(shè)計的整體過程中,提高了整體的工作效率。
隨著科技的不斷進步和嵌入式系統(tǒng)的廣泛應(yīng)用,可見嵌入式軟件在計算機軟件開發(fā)中發(fā)揮著不可替代的作用。嵌入式是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計算機系統(tǒng)。
因此,在嵌入式軟件應(yīng)用設(shè)計的過程中,軟件設(shè)計和開發(fā)人員需要根據(jù)相關(guān)的流程,掌握嵌入式軟件的應(yīng)用原理,做好各項架構(gòu)劃分、實現(xiàn)對嵌入式軟件的的控制,并且注意結(jié)合軟硬系統(tǒng)等,提高軟件的可操作性、穩(wěn)定性,進而胃我國當(dāng)前和未來計算機高性能的應(yīng)用與發(fā)展打開新的篇章。