當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 在物聯(lián)網(wǎng)技術(shù)如火如荼的今天,嵌入式開發(fā)重新得到了廣大IT從業(yè)人員的關(guān)注。那么,什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)由哪幾部分組成?嵌入式系統(tǒng)的特點(diǎn)都有哪些?嵌入式系統(tǒng)的開發(fā)流程是怎樣的?本文將帶領(lǐng)大家重溫這些基礎(chǔ)知

 在物聯(lián)網(wǎng)技術(shù)如火如荼的今天,嵌入式開發(fā)重新得到了廣大IT從業(yè)人員的關(guān)注。那么,什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)由哪幾部分組成?嵌入式系統(tǒng)的特點(diǎn)都有哪些?嵌入式系統(tǒng)的開發(fā)流程是怎樣的?本文將帶領(lǐng)大家重溫這些基礎(chǔ)知識(shí)。


嵌入式系統(tǒng)簡介

嵌入式系統(tǒng)是指以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)一般應(yīng)用于消費(fèi)電子、智能家電、網(wǎng)絡(luò)設(shè)備、醫(yī)療儀器、航天設(shè)備、工業(yè)控制等行業(yè)中。

嵌入式系統(tǒng)組成

一個(gè)嵌入式系統(tǒng)一般都由嵌入式計(jì)算機(jī)系統(tǒng)和執(zhí)行裝置組成,嵌入式計(jì)算機(jī)系統(tǒng)是整個(gè)嵌入式系統(tǒng)的核心,由硬件層、中間層、系統(tǒng)軟件層和應(yīng)用軟件層組成。執(zhí)行裝置也稱為被控對(duì)象,它可以接受嵌入式計(jì)算機(jī)系統(tǒng)發(fā)出的控制命令,執(zhí)行所規(guī)定的操作或任務(wù)。

下面,我們來了解一下嵌入式計(jì)算機(jī)系統(tǒng)的各個(gè)部分。

1.硬件層

硬件層中包含嵌入式微處理器、存儲(chǔ)器(RAM、ROM、Flash等)、通用設(shè)備接口和I/O接口(A/D、D/A、I/O等)。在一塊嵌入式處理器基礎(chǔ)上添加電源電路、時(shí)鐘電路和存儲(chǔ)器電路,就構(gòu)成了一個(gè)嵌入式核心控制模塊。其中操作系統(tǒng)和應(yīng)用程序都可以固化在ROM中。

嵌入式系統(tǒng)硬件層的核心是嵌入式微處理器,它與通用CPU最大的不同在于它大多工作在為特定用戶群所專用設(shè)計(jì)的系統(tǒng)中,它將通用CPU許多由板卡完成的任務(wù)集成在芯片內(nèi)部,從而有利于嵌入式系統(tǒng)在設(shè)計(jì)時(shí)趨于小型化,同時(shí)還具有很高的效率和可靠性。

嵌入式微處理器的體系結(jié)構(gòu)可以采用馮·諾依曼體系或哈佛體系結(jié)構(gòu),指令系統(tǒng)可以選用精簡指令系統(tǒng)(Reduced Instruction Set Computer,RISC)和復(fù)雜指令系統(tǒng)CISC(Complex Instruction Set Computer,CISC)。嵌入式微處理器有各種不同的體系,即使在同一體系中也可能具有不同的時(shí)鐘頻率和數(shù)據(jù)總線寬度,或集成了不同的外設(shè)和接口。

嵌入式系統(tǒng)需要存儲(chǔ)器來存放和執(zhí)行代碼。嵌入式系統(tǒng)的存儲(chǔ)器包含Cache、主存和輔助存儲(chǔ)器。

Cache是一種容量小、速度快的存儲(chǔ)器陣列,它位于主存和嵌入式微處理器內(nèi)核之間,存放的是一段時(shí)間微處理器使用最多的程序代碼和數(shù)據(jù);在需要進(jìn)行數(shù)據(jù)讀取操作時(shí),微處理器盡可能的從Cache中讀取數(shù)據(jù),而不是從主存中讀取,這樣就大大改善了系統(tǒng)的性能,提高了微處理器和主存之間的數(shù)據(jù)傳輸速率;Cache的主要目標(biāo)就是:減小存儲(chǔ)器(如主存和輔助存儲(chǔ)器)給微處理器內(nèi)核造成的存儲(chǔ)器訪問瓶頸,使處理速度更快,實(shí)時(shí)性更強(qiáng);在嵌入式系統(tǒng)中Cache全部集成在嵌入式微處理器內(nèi),可分為數(shù)據(jù)Cache、指令Cache或混合Cache,Cache的大小依不同處理器而定,一般中高檔的嵌入式微處理器才會(huì)把Cache集成進(jìn)去。

主存是嵌入式微處理器能直接訪問的寄存器,用來存放系統(tǒng)和用戶的程序及數(shù)據(jù);它可以位于微處理器的內(nèi)部或外部,其容量為256KB~1GB,根據(jù)具體的應(yīng)用而定,一般片內(nèi)存儲(chǔ)器容量小,速度快,片外存儲(chǔ)器容量大。

輔助存儲(chǔ)器用來存放大數(shù)據(jù)量的程序代碼或信息,它的容量大、但讀取速度與主存相比就慢的很多,用來長期保存用戶的信息;嵌入式系統(tǒng)中常用的外存有:硬盤、NAND Flash、CF卡、MMC和SD卡等。

嵌入式系統(tǒng)和外界交互需要一定形式的通用設(shè)備接口,外設(shè)通過和片外其他設(shè)備的或傳感器的連接來實(shí)現(xiàn)微處理器的輸入/輸出功能。每個(gè)外設(shè)通常都只有單一的功能,它可以在芯片外也可以內(nèi)置芯片中。外設(shè)的種類很多,可從一個(gè)簡單的串行通信設(shè)備到非常復(fù)雜的無線設(shè)備。嵌入式系統(tǒng)中常用的通用設(shè)備接口有A/D(模/數(shù)轉(zhuǎn)換接口)、D/A(數(shù)/模轉(zhuǎn)換接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太網(wǎng)接口)、USB(通用串行總線接口)、音頻接口、VGA視頻輸出接口、I2C(現(xiàn)場總線)、SPI(串行外圍設(shè)備接口)和IrDA(紅外線接口)等。

2.中間層

硬件層與軟件層之間為中間層,也稱為硬件抽象層(Hardware Abstract Layer,HAL)或板級(jí)支持包(Board Support Package,BSP),它將系統(tǒng)上層軟件與底層硬件分離開來,使系統(tǒng)的底層驅(qū)動(dòng)程序與硬件無關(guān),上層軟件開發(fā)人員無需關(guān)心底層硬件的具體情況,根據(jù)BSP層提供的接口即可進(jìn)行開發(fā)。該層一般包含相關(guān)底層硬件的初始化、數(shù)據(jù)的輸入/輸出操作和硬件設(shè)備的配置功能。

BSP具有以下兩個(gè)特點(diǎn):

第一,硬件相關(guān)性。因?yàn)榍度胧綄?shí)時(shí)系統(tǒng)的硬件環(huán)境具有應(yīng)用相關(guān)性,而作為上層軟件與硬件平臺(tái)之間的接口,BSP需要為操作系統(tǒng)提供操作和控制具體硬件的方法。

第二,操作系統(tǒng)相關(guān)性。不同的操作系統(tǒng)具有各自的軟件層次結(jié)構(gòu),因此,不同的操作系統(tǒng)具有特定的硬件接口形式。

實(shí)際上,BSP是一個(gè)介于操作系統(tǒng)和底層硬件之間的軟件層次,包括了系統(tǒng)中大部分與硬件聯(lián)系緊密的軟件模塊,它的一個(gè)主要功能是硬件相關(guān)的設(shè)備驅(qū)動(dòng)。設(shè)計(jì)一個(gè)完整的BSP需要完成兩部分工作:嵌入式系統(tǒng)的硬件初始化以及BSP功能,設(shè)計(jì)硬件相關(guān)的設(shè)備驅(qū)動(dòng)。

3.系統(tǒng)軟件和應(yīng)用軟件

系統(tǒng)軟件層由實(shí)時(shí)多任務(wù)操作系統(tǒng)(Real-time Operation System,RTOS)、文件系統(tǒng)、圖形用戶接口(Graphic User Interface,GUI)、網(wǎng)絡(luò)系統(tǒng)及通用組件模塊組成。RTOS是嵌入式應(yīng)用軟件的基礎(chǔ)和開發(fā)平臺(tái)。

嵌入式操作系統(tǒng)(Embedded Operation System,EOS)是一種用途廣泛的系統(tǒng)軟件,過去它主要應(yīng)用于工業(yè)控制和國防系統(tǒng)領(lǐng)域。EOS負(fù)責(zé)嵌入系統(tǒng)的全部軟、硬件資源的分配、任務(wù)調(diào)度,控制、協(xié)調(diào)并發(fā)活動(dòng)。它必須體現(xiàn)其所在系統(tǒng)的特征,能夠通過裝卸某些模塊來達(dá)到系統(tǒng)所要求的功能。隨著Internet技術(shù)的發(fā)展、信息家電的普及應(yīng)用及EOS的微型化和專業(yè)化,EOS開始從單一的弱功能向高專業(yè)化的強(qiáng)功能方向發(fā)展。嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的相關(guān)依賴性、軟件固化以及應(yīng)用的專用性等方面具有較為突出的特點(diǎn)。EOS是相對(duì)于一般操作系統(tǒng)而言的,它除具有了一般操作系統(tǒng)最基本的功能,還有以下功能:如任務(wù)調(diào)度、同步機(jī)制、中斷處理、文件處理等。

嵌入式文件系統(tǒng)比較簡單,主要提供文件存儲(chǔ)、檢索和更新等功能,一般不提供保護(hù)和加密等安全機(jī)制。它以系統(tǒng)調(diào)用和命令方式提供文件的各種操作,主要有:1)設(shè)置、修改對(duì)文件和目錄的存取權(quán)限;2)提供建立、修改、改變和刪除目錄等服務(wù);3)提供創(chuàng)建、打開、讀寫、關(guān)閉和撤銷文件等服務(wù)。文件系統(tǒng)的特點(diǎn):1)兼容性;2)實(shí)時(shí)文件系統(tǒng);3)可裁剪、可配置;4)支持多種存儲(chǔ)設(shè)備。

嵌入式GUI具有下面幾個(gè)方面的基本要求:輕型、占用資源少、高性能、高可靠性、便于移植、可配置等特點(diǎn)。嵌入式系統(tǒng)中的圖形界面,一般采用下面的幾種方法實(shí)現(xiàn):1)針對(duì)特定的圖形設(shè)備輸出接口,自行開發(fā)相關(guān)的功能函數(shù);2)購買針對(duì)特定嵌入式系統(tǒng)的圖形中間軟件包;3)采用源碼開放的嵌入式GUI系統(tǒng);4)使用獨(dú)立軟件開發(fā)商提供的嵌入式GUI產(chǎn)品。

應(yīng)用軟件層是由基于實(shí)時(shí)系統(tǒng)開發(fā)的應(yīng)用程序組成,用來實(shí)現(xiàn)對(duì)被控對(duì)象的控制功能。功能層是要面對(duì)被控對(duì)象和用戶,為方便用戶操作,往往需要提供一個(gè)友好的人機(jī)界面。對(duì)于一些復(fù)雜的系統(tǒng),在系統(tǒng)設(shè)計(jì)的初期階段就要對(duì)系統(tǒng)的需求進(jìn)行分析,確定系統(tǒng)的功能,然后將系統(tǒng)的功能映射到整個(gè)系統(tǒng)的硬件、軟件和執(zhí)行裝置的設(shè)計(jì)過程中,稱為系統(tǒng)的功能實(shí)現(xiàn)。

嵌入式系統(tǒng)特點(diǎn)

嵌入式系統(tǒng)的特點(diǎn)包括:系統(tǒng)內(nèi)核小、專用性強(qiáng)、系統(tǒng)精簡、實(shí)時(shí)性等。具體而言,它主要有如下八個(gè)特點(diǎn):

1)可裁剪性。支持開放性和可伸縮性的體系結(jié)構(gòu)。

2)強(qiáng)實(shí)時(shí)性。EOS實(shí)時(shí)性一般較強(qiáng),可用于各種設(shè)備控制中。

3)統(tǒng)一的接口。提供設(shè)備統(tǒng)一的驅(qū)動(dòng)接口。

4)操作方便、簡單、提供友好的圖形GUI和圖形界面,追求易學(xué)易用;提供強(qiáng)大的網(wǎng)絡(luò)功能,支持TCP/IP協(xié)議及其他協(xié)議,提供TCP/UDP/IP/PPP協(xié)議支持及統(tǒng)一的MAC訪問層接口,為各種移動(dòng)計(jì)算設(shè)備預(yù)留接口。

5)強(qiáng)穩(wěn)定性,弱交互性。嵌入式系統(tǒng)一旦開始運(yùn)行就不需要用戶過多的干預(yù)、這就要負(fù)責(zé)系統(tǒng)管理的EOS具有較強(qiáng)的穩(wěn)定性。嵌入式操作系統(tǒng)的用戶接口一般不提供操作命令,它通過系統(tǒng)的調(diào)用命令向用戶程序提供服務(wù)。

6)固化代碼。在嵌入式系統(tǒng)中,嵌入式操作系統(tǒng)和應(yīng)用軟件被固化在嵌入式系統(tǒng)計(jì)算機(jī)的ROM中。

7)更好的硬件適應(yīng)性。也就是良好的移植性。

8)嵌入式系統(tǒng)和具體應(yīng)用有機(jī)地結(jié)合在一起,它的升級(jí)換代也是和具體產(chǎn)品同步進(jìn)行,因此嵌入式系統(tǒng)產(chǎn)品一旦進(jìn)入市場,具有較長的生命周期。

嵌入式系統(tǒng)開發(fā)流程

嵌入式系統(tǒng)的開發(fā)分為不帶操作系統(tǒng)(裸機(jī)開發(fā))和帶操作系統(tǒng)的開發(fā)兩種。裸機(jī)開發(fā)是指對(duì)于功能簡單僅包括應(yīng)用程序的嵌入式系統(tǒng)一般不使用操作系統(tǒng),僅有應(yīng)用程序和設(shè)備驅(qū)動(dòng)程序。帶操作系統(tǒng)的開發(fā)是由一個(gè)操作系統(tǒng)(OS)來管理控制內(nèi)存、多任務(wù)、周邊資源等。

通?;贚inux系統(tǒng)的嵌入式開發(fā)步驟有如下七步:

1)開發(fā)目標(biāo)硬件系統(tǒng):如選擇微處理器、Flash及其它外設(shè)等。

2)建立交叉開發(fā)環(huán)境:安裝交叉編譯工具鏈、安裝開發(fā)調(diào)試工具。

3)開發(fā)Bootloader:移植uboot。

4)移植Linux內(nèi)核:如Linux 3.0.25內(nèi)核。

5)開發(fā)根文件系統(tǒng):如CRAMFS,YAFFS等。

6)開發(fā)相關(guān)硬件的驅(qū)動(dòng)程序:如led,adc等驅(qū)動(dòng)。

7)開發(fā)上層的應(yīng)用程序:如QT GUI開發(fā)。

嵌入式系統(tǒng)初始化

嵌入式系統(tǒng)初始化過程可以分為3個(gè)主要環(huán)節(jié),按照自底向上、從硬件到軟件的次序依次為:片級(jí)初始化、板級(jí)初始化和系統(tǒng)級(jí)初始化。

片級(jí)初始化完成嵌入式微處理器的初始化,包括設(shè)置嵌入式微處理器的核心寄存器和控制寄存器、嵌入式微處理器核心工作模式和嵌入式微處理器的局部總線模式等。片級(jí)初始化把嵌入式微處理器從上電時(shí)的默認(rèn)狀態(tài)逐步設(shè)置成系統(tǒng)所要求的工作狀態(tài)。這是一個(gè)純硬件的初始化過程。

板級(jí)初始化完成嵌入式微處理器以外的其他硬件設(shè)備的初始化。另外,還需設(shè)置某些軟件的數(shù)據(jù)結(jié)構(gòu)和參數(shù),為隨后的系統(tǒng)級(jí)初始化和應(yīng)用程序的運(yùn)行建立硬件和軟件環(huán)境。這是一個(gè)同時(shí)包含軟硬件兩部分在內(nèi)的初始化過程。

系統(tǒng)級(jí)初始化以軟件初始化為主,主要進(jìn)行操作系統(tǒng)的初始化。BSP(中間層)將對(duì)嵌入式微處理器的控制權(quán)轉(zhuǎn)交給嵌入式操作系統(tǒng),由操作系統(tǒng)完成余下的初始化操作,包含加載和初始化與硬件無關(guān)的設(shè)備驅(qū)動(dòng)程序,建立系統(tǒng)內(nèi)存區(qū),加載并初始化其他系統(tǒng)軟件模塊,如網(wǎng)絡(luò)系統(tǒng)、文件系統(tǒng)等。最后,操作系統(tǒng)創(chuàng)建應(yīng)用程序環(huán)境,并將控制權(quán)交給應(yīng)用程序的入口。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉