嵌入式系統(tǒng)是什么 嵌入式系統(tǒng)的基本設計思路
發(fā)布時間:2020-02-16 來源: 短文摘抄 點擊:
摘要:嵌入式系統(tǒng)已成為制造業(yè)的核心技術(shù),廣泛應用于工業(yè)控制、系統(tǒng)仿真、醫(yī)療設備、家用電器、通信設備等眾多領域。圍繞嵌入式系統(tǒng)展開研究和開發(fā),已經(jīng)成為計算機軟硬件技術(shù)發(fā)展最活躍的方向之一。本文就嵌入式系統(tǒng)的技術(shù)特點和嵌入式系統(tǒng)的基本設計思路進行了探討。
關(guān)鍵詞:嵌入式系統(tǒng);微處理器;操作系統(tǒng);開發(fā)工具
中圖分類號:TP336 文獻標識碼:A
嵌入式系統(tǒng)是以應用為中心、以計算機技術(shù)為基礎、軟硬件可裁剪、適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗等有嚴格要求的專用計算機系統(tǒng)。其主要由嵌入式處理器、 相關(guān)支撐硬件、嵌入式操作系統(tǒng)及應用軟件系統(tǒng)等組成。使用嵌入式系統(tǒng)技術(shù),不僅可以實現(xiàn)硬件和軟件的集成優(yōu)化,而且具有多任務和網(wǎng)絡化功能。
嵌入式系統(tǒng)是將計算機技術(shù)、半導體技術(shù)、電子技術(shù)與各個行業(yè)的具體應用相結(jié)合后的產(chǎn)物 ,是一種技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識集成系統(tǒng)。
1嵌入式系統(tǒng)的技術(shù)特點
嵌入式系統(tǒng)由構(gòu)成軟件基本運行環(huán)境的硬件和操作系統(tǒng)兩部分組成。其運行環(huán)境和應用場合決定了嵌入式系統(tǒng)有別于其它系統(tǒng)。
1.1嵌入式處理器
嵌入式處理器可以分為三類:嵌入式微控制器MCU、嵌入式微處理器MPU、嵌入式數(shù)字信號處理器DSP 。
嵌入式微控制器又稱為單片機,它將CPU、存儲器 、I/O接口封裝于同一片集成電路,常用的是以8051為內(nèi)核的各種單片機。嵌入式微處理器就是和通用計算機的微處理器對應的CPU,應用中一般將微處理器裝配在專門設計的電路板上,在母板上保留與嵌入式有關(guān)的功能,以滿足嵌入式系統(tǒng)體積小和功耗低的要求。嵌入式DSP專門用來對離散時間信號進行高速處理 ,多用于數(shù)字濾波、FFT、圖像處理等領域 。
1.2微內(nèi)核結(jié)構(gòu)
多數(shù)嵌入式操作系統(tǒng)采用了微內(nèi)核結(jié)構(gòu),內(nèi)核只提供基本的功能,如:任務的調(diào)度、任務之間的通信與同步、內(nèi)存管理、時鐘管理等。其它的應用組件,如:網(wǎng)絡功能、文件系統(tǒng)、GUI系統(tǒng)等均工作在用戶態(tài),以系統(tǒng)進程或函數(shù)調(diào)用的方式工作。因而系統(tǒng)都是可裁減的,用戶可以根據(jù)自己的需要選用相應的組件。
1.3任務調(diào)度
大多數(shù)的嵌入式操作系統(tǒng)支持多任務,依靠CPU在多個任務之間切換、調(diào)度,每個任務都有其優(yōu)先級。 任務的調(diào)度有三種方式:可搶占式調(diào)度、不可搶占式調(diào)度和時間片輪轉(zhuǎn)調(diào)度。多數(shù)嵌入式操作系統(tǒng)對不同優(yōu)先級的任務采用基于優(yōu)先級的搶占式調(diào)度法,對相同優(yōu)先級的任務則采用時間片輪轉(zhuǎn)調(diào)度法。
1.4硬實時和軟實時
對時間要求較高的嵌入式系統(tǒng),稱為實時系統(tǒng)。實時系統(tǒng)分為軟實時系統(tǒng)和硬實時系統(tǒng)。軟實時系統(tǒng)并不要求限定某一任務必須在一定的時間內(nèi)完成,只要求各任務運行得越快越好;硬實時系統(tǒng)對系統(tǒng)響應時間有嚴格要求,一旦系統(tǒng)響應時間不能滿足,就可能引起系統(tǒng)崩潰或致命的錯誤。工業(yè)控制多采用硬實時系統(tǒng)。
1.5內(nèi)存管理
多數(shù)嵌入式系統(tǒng)針對沒有內(nèi)存管理單元MMU的處理器設計,故不能采用虛擬內(nèi)存管理技術(shù),而是實存儲器管理策略。對內(nèi)存的訪問是直接的,對地址的訪問不需要經(jīng)過MMU,而是直接發(fā)送至地址線輸出,所有程序中訪問的地址都是實際的物理地址。多數(shù)嵌入式操作系統(tǒng)對內(nèi)存空間沒有保護,各個進程共享一個運行空間。一個進程在執(zhí)行前系統(tǒng)必須為它分配足夠的連續(xù)地址空間,然后全部載入主存儲器的連續(xù)空間。
2嵌入式系統(tǒng)的基本設計思路
從圖1可知,嵌入式系統(tǒng)的工程設計分成三個階段:分析、設計和實現(xiàn)。
(1)分析階段:確定要解決的問題及需要完成的目標;
。2)設計階段:主要解決如何在給定的約束條件下完成用戶的要求;
(3)實現(xiàn)階段:主要解決如何在所選擇的硬件和軟件的基礎上進行整個軟、硬件系統(tǒng)的協(xié)調(diào)實現(xiàn)。
嵌入式系統(tǒng)的工程設計包括:處理器、硬件部件、操作系統(tǒng)、編程語言、軟件開發(fā)工具、硬件調(diào)試工具、軟件組件等內(nèi)容。
2.1建立硬件平臺
2.1.1選擇處理器
嵌入式處理器是嵌入式系統(tǒng)的核心部件。目前全世界嵌入式處理器的品種總量已超過一千種,流行系列有三十多個,僅32位的CPU就有100種以上嵌入式微處理器。鑒于嵌入式系統(tǒng)設計的差異性很大,故而選擇是多樣化的。Motorola、Intel、AMD、ARM、MIPS等公司均生產(chǎn)微處理器,其中ARM是近年來在嵌入式系統(tǒng)有影響力的微處理器制造商。
選擇處理器時要考慮的主要因素有:
。1)處理性能
處理器的性能取決于時鐘頻率、內(nèi)部寄存器、指令是否對等處理所有的寄存器等多個因素。要選取能夠完成作業(yè)的處理器和I/O子系統(tǒng),不在于挑選速度最快的處理器。
(2)技術(shù)指標
許多嵌入式處理器都集成了外圍設備的功能,減少了芯片的數(shù)量,降低了整個系統(tǒng)的開發(fā)費用。首先考慮的是,系統(tǒng)所要求的一些硬件能否無需過多的膠合邏輯(GL,Glue Logic)就可以連接到處理器上。其次是考慮該處理器的一些支持芯片,如DMA控制器、內(nèi)存管理器、中斷控制器、串行設備、時鐘等的配套。
。3)功耗
嵌入式微處理器最大并且增長最快的市場是手持設備、電子記事本、PDA、手機、GPS導航器、智能家電等消費類電子產(chǎn)品。這些產(chǎn)品中選購的微處理器典型的特點是要求高性能、低功耗,使用普通電池供電即可。若用于工業(yè)控制領域,則可不考慮這方面因數(shù)。
(4)軟件支持工具
較好的軟件開發(fā)工具是必不可少的。 比如,交叉編譯器。
(5)內(nèi)置調(diào)試工具
處理器如果內(nèi)置調(diào)試工具,可以大大縮小調(diào)試周期,降低調(diào)試的難度。
(6)軟件對硬件的依賴性
軟件是否可以在硬件沒有到位的時候并行設計或先行開發(fā)。
2.1.2盡量選擇普通硬件
在 CPU 及架構(gòu)的選擇上,總原則為:只要有可替代的方案,盡量不要選擇 Linux 尚不支持的硬件平臺。
2.2建立軟件平臺
嵌入式的軟件開發(fā)主要為:代碼編程、交叉編譯、交叉連接、下載到目標板和及調(diào)試等步驟,因此軟件平臺的選擇也涉及到以下幾個方面:低端無MMU(Memory Management Unit,存儲器管理單元)的CPU,要使用uClinux 操作系統(tǒng);相對高端的硬件,則可以用普通的嵌入式 Linux 操作系統(tǒng)。
選擇操作系統(tǒng)應考慮的因素:
。1)操作系統(tǒng)提供的開發(fā)工具
有些實時操作系統(tǒng)(RTOS)只支持該系統(tǒng)供應商的開發(fā)工具,因此,還必須向操作系統(tǒng)供應商獲取編譯器、調(diào)試器等;而有些操作系統(tǒng)使用廣泛,且有第三方工具可用。
。2)操作系統(tǒng)向硬件接口移植的難度
操作系統(tǒng)到硬件的移植是關(guān)系到整個系統(tǒng)能否完成的一個關(guān)鍵因素。因此,要選擇那些可移植性程度高的操作系統(tǒng),避免操作系統(tǒng)難以向硬件移植而帶來的種種困難,加速系統(tǒng)的開發(fā)進度。
(3)操作系統(tǒng)的內(nèi)存要求
考慮是否需要擴充RAM或EEPROM來滿足操作系統(tǒng)對內(nèi)存的需求。
(4)對操作系統(tǒng)的熟悉程度
。5)操作系統(tǒng)是否提供硬件的驅(qū)動程序
。6)操作系統(tǒng)的可剪裁性
有些操作系統(tǒng)具有較強的可剪裁性,如嵌入式Linux、Tornado/VxWorks。
(7)操作系統(tǒng)的實時性能
2.3選擇編程語言
編程語言的選擇主要考慮以下因素:
。1)通用性
匯編語言不通用;
高級語言與具體機器的硬件結(jié)構(gòu)聯(lián)系較少,通用性較好。
。2)可移植性
匯編語言與具體的微處理器密切相關(guān),移植性差;
高級語言對所有微處理器都是通用的,可移植性較好。
(3)執(zhí)行效率
匯編語言來進行應用程序的開發(fā),編程復雜、開發(fā)周期長;
越高級的語言,其編譯器和開銷就越大,應用程序就越大、越慢。
因此,必須在開發(fā)時間和運行性能間進行權(quán)衡、取舍。
。4)可維護性
匯編語言可維護性不高;
高級語言程序通常采用模塊化設計,各個模塊之間的接口是固定的,模塊化設計便于系統(tǒng)功能的擴充和升級。
應用較多的高級語言有:Ada、C/C++、Modula-2和Java等。C語言具有廣泛的庫程序支持,目前在嵌入式系統(tǒng)中是應用最廣泛的編程語言。
2.4集成開發(fā)環(huán)境的選擇
集成開發(fā)環(huán)境IDE(Integrated Development Environment)主要考慮以下因素:
。1)系統(tǒng)調(diào)試器的功能
系統(tǒng)調(diào)試及遠程調(diào)試。
。2)支持庫函數(shù)
庫函數(shù)和模板代碼。
(3)編譯器是否能持續(xù)升級
。4)連接程序是否支持所有的文件格式和符號格式。
2.5選擇硬件調(diào)試工具
好的硬件調(diào)試工具會有事半功倍之效。常用的硬件調(diào)試工具有:
(1)實時在線仿真器ICE (In-Circuit Emulator)
ICE是一個可被控制的MCU。ICE支持常規(guī)的調(diào)試操作,如單步運行、斷點、反匯編、內(nèi)存檢查、源程序級的調(diào)試等。
(2)邏輯分析儀
邏輯分析儀常用于硬件調(diào)試,亦可用于軟件調(diào)試,主要用于監(jiān)視系統(tǒng)總線的事件。
(3)ROM仿真器
ROM仿真器用于仿真ROM芯片。將程序下載到ROM仿真器中,然后調(diào)試目標程序。
。4)在線調(diào)試OCD(On-Chip Debugging)或在線仿真(on-chip emulator)
2.6軟件組件的選擇
免費軟件可靠性稍差;
授權(quán)軟件費用一般較高,但經(jīng)過嚴格的測試,可靠性高,調(diào)試時間短。
3結(jié)語
嵌入式技術(shù)是計算機發(fā)展的一個重要分支,其設計、開發(fā)、應用是一個長期的課題。以信息家電為代表的互聯(lián)網(wǎng)時代,嵌入式產(chǎn)品不僅為嵌入式市場展現(xiàn)了美好前景,注人了新的生命,同時也對嵌入式系統(tǒng)技術(shù)提出了新的挑戰(zhàn)。隨著信息化、智能化、網(wǎng)絡化的發(fā)展,嵌入式系統(tǒng)技術(shù)也將獲得更廣闊的發(fā)展空間。
參考文獻
。1] 王田苗主編.嵌入式系統(tǒng)設計與實例開發(fā)[M].北京:清華大學出版社,2005.
[2] 田澤.嵌入式系統(tǒng)開發(fā)和應用教程[M].北京:北京航空航天大學出版社,2005.
(本文審稿陳兵)
相關(guān)熱詞搜索:嵌入式系統(tǒng) 思路 設計 嵌入式系統(tǒng)的基本設計思路 嵌入式系統(tǒng)設計論文 嵌入式系統(tǒng)課程設計
熱點文章閱讀