嵌入式系統組成
簡介
一個嵌入式系統裝置一般都由嵌入式計算機系統和執行裝置組成,如圖1-1所示,嵌入式計算機系統是整個嵌入式系統的核心,由硬件層、中間層、系統軟件層和應用軟件層組成。執行裝置也稱爲被控對象,它可以接受嵌入式計算機系統發出的控制命令,執行所規定的操作或任務。執行裝置可以很簡單,如手機上的一個微小型的電機,當手機處於震動接收狀態時打開;也可以很複雜,如SONY智能機器狗,上面集成了多個微小型控制電機和多種傳感器,從而可以執行各種複雜的動作和感受各種狀態信息。
硬件層
硬件層中包含嵌入式微處理器、存儲器(SDRAM、ROM、Flash等)、通用設備接口和I/O接口(A/D、D/A、I/O等)。在一片嵌入式處理器基礎上添加電源電路、時鐘電路和存儲器電路,就構成了一個嵌入式核心控制模塊。其中操作系統和應用程序都可以固化在ROM中。
1、嵌入式微處理器
嵌入式系統硬件層的核心是嵌入式微處理器,嵌入式微處理器與通用CPU最大的不同在於嵌入式微處理器大多工作在爲特定用戶羣所專用設計的系統中,它將通用CPU許多由板卡完成的任務集成在芯片內部,從而有利於嵌入式系統在設計時趨於小型化,同時還具有很高的效率和可靠性。
嵌入式微處理器的體系結構可以採用馮·諾依曼體系或哈佛體系結構;指令系統可以選用精簡指令系統(Reduced Instruction Set Computer,RISC)和複雜指令系統CISC(Complex Instruction Set Computer,CISC)。RISC計算機在通道中只包含最有用的指令,確保數據通道快速執行每一條指令,從而提高了執行效率並使CPU硬件結構設計變得更爲簡單。
嵌入式微處理器有各種不同的體系,即使在同一體系中也可能具有不同的時鐘頻率和數據總線寬度,或集成了不同的外設和接口。據不完全統計,目前全世界嵌入式微處理器已經超過1000多種,體系結構有30多個系列,其中主流的體系有ARM、MIPS、PowerPC、X86和SH等。但與全球PC市場不同的是,沒有一種嵌入式微處理器可以主導市場,僅以32位的產品而言,就有100種以上的嵌入式微處理器。嵌入式微處理器的選擇是根據具體的應用而決定的。
2、存儲器
嵌入式系統需要存儲器來存放和執行代碼。嵌入式系統的存儲器包含Cache、主存和輔助存儲器。
1>Cache
Cache是一種容量小、速度快的存儲器陣列它位於主存和嵌入式微處理器內核之間,存放的是最近一段時間微處理器使用最多的程序代碼和數據。在需要進行數據讀取操作時,微處理器儘可能的從Cache中讀取數據,而不是從主存中讀取,這樣就大大改善了系統的性能,提高了微處理器和主存之間的數據傳輸速率。Cache的主要目標就是:減小存儲器(如主存和輔助存儲器)給微處理器內核造成的存儲器訪問瓶頸,使處理速度更快,實時性更強。
在嵌入式系統中Cache全部集成在嵌入式微處理器內,可分爲數據Cache、指令Cache或混合Cache,Cache的大小依不同處理器而定。一般中高檔的嵌入式微處理器纔會把Cache集成進去。
2>主存
主存是嵌入式微處理器能直接訪問的寄存器,用來存放系統和用戶的程序及數據。它可以位於微處理器的內部或外部,其容量爲256KB~1GB,根據具體的應用而定,一般片內存儲器容量小,速度快,片外存儲器容量大。
常用作主存的存儲器有:
ROM類 NOR Flash、EPROM和PROM等。
RAM類 SRAM、DRAM和SDRAM等。
其中NOR Flash 憑藉其可擦寫次數多、存儲速度快、存儲容量大、價格便宜等優點,在嵌入式領域內得到了廣泛應用。
3>輔助存儲器
輔助存儲器用來存放大數據量的程序代碼或信息,它的容量大、但讀取速度與主存相比就慢的很多,用來長期保存用戶的信息。
嵌入式系統中常用的外存有:硬盤、NAND Flash、CF卡、MMC和SD卡等。
3、通用設備接口和I/O接口
嵌入式系統和外界交互需要一定形式的通用設備接口,如A/D、D/A、I/O等,外設通過和片外其他設備的或傳感器的連接來實現微處理器的輸入/輸出功能。每個外設通常都只有單一的功能,它可以在芯片外也可以內置芯片中。外設的種類很多,可從一個簡單的串行通信設備到非常複雜的802.11無線設備。
目前嵌入式系統中常用的通用設備接口有A/D(模/數轉換接口)、D/A(數/模轉換接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太網接口)、USB(通用串行總線接口)、音頻接口、VGA視頻輸出接口、I2C(現場總線)、SPI(串行外圍設備接口)和IrDA(紅外線接口)等。
中間層
硬件層與軟件層之間爲中間層,也稱爲硬件抽象層(Hardware Abstract Layer,HAL)或板級支持包(Board Support Package,BSP),它將系統上層軟件與底層硬件分離開來,使系統的底層驅動程序與硬件無關,上層軟件開發人員無需關心底層硬件的具體情況,根據BSP 層提供的接口即可進行開發。該層一般包含相關底層硬件的初始化、數據的輸入/輸出操作和硬件設備的配置功能。BSP具有以下兩個特點。
硬件相關性:因爲嵌入式實時系統的硬件環境具有應用相關性,而作爲上層軟 件與硬件平臺之間的接口,BSP需要爲操作系統提供操作和控制具體硬件的方法。
操作系統相關性:不同的操作系統具有各自的軟件層次結構,因此,不同的操作系統具有特定的硬件接口形式。
實際上,BSP是一個介於操作系統和底層硬件之間的軟件層次,包括了系統中大部分與硬件聯繫緊密的軟件模塊。設計一個完整的BSP需要完成兩部分工作:嵌入式系統的硬件初始化以及BSP功能,設計硬件相關的設備驅動。
1、嵌入式系統硬件初始化
系統初始化過程可以分爲3個主要環節,按照自底向上、從硬件到軟件的次序依次爲:片級初始化、板級初始化和系統級初始化。
片級初始化
完成嵌入式微處理器的初始化,包括設置嵌入式微處理器的核心寄存器和控制寄存器、嵌入式微處理器核心工作模式和嵌入式微處理器的局部總線模式等。片級初始化把嵌入式微處理器從上電時的默認狀態逐步設置成系統所要求的工作狀態。這是一個純硬件的初始化過程。
相關文章
-
嵌入式系統開發技術工程師考試要點:嵌入式系統的組成
導語:計算機四級指的是全國計算機等級考試的最高級別,科目種類有:四級操作系統原理、四級計算機組成與接口、四級數據庫原理、四級軟件工程、四級計算機網絡。考試從科目中任意選取兩個科目進行考試,同時通過成績方爲合格 -
嵌入式系統的定義及組成
我所學習的是護理專業,轉眼學生時代就要過去,我即將離開美麗的校園,走上社會,走進醫院,而成爲一名救死扶傷的護士。本人從xx年進入xx學院就讀以來,一直以嚴謹的態度和積極的熱情投身於學習和工作中,雖然有成功的淚水,也有失敗 -
2016嵌入式系統開發技術知識點:嵌入式系統
嵌入式系統以應用爲中心、以計算機技術爲基礎、軟件硬件可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。下面YJBYS小編爲大家整理了關於嵌入式系統的相關知識,希望對你有所幫助。 -
2017嵌入式系統開發工程師知識點:嵌入式系統簡介
嵌入式系統是一種"完全嵌入受控器件內部,爲特定應用而設計的專用計算機系統",根據英國電氣工程師協會的定義,嵌入式系統爲控制、監視或輔助設備、機器或用於工廠運作的設備。YJBYS小編下面爲你整理了2017嵌入式系統開發 -
嵌入式系統開發技術工程師考試複習要點:嵌入式系統的定義
導語:計算機四級指的是全國計算機等級考試的最高級別,科目種類有:四級操作系統原理、四級計算機組成與接口、四級數據庫原理、四級軟件工程、四級計算機網絡。考試從科目中任意選取兩個科目進行考試,同時通過成績方爲合格 -
嵌入式操作系統與嵌入式處理器
在日常學習、工作抑或是生活中,大家一定沒少看童話吧,童話故事是兒童文學的重要體裁,具有濃厚幻想色彩的虛構故事,你還記得哪些童話故事呢?下面是小編收集整理的關於老虎的童話故事,歡迎閱讀與收藏。關於老虎的童話故事1大 -
嵌入式系統與操作系統的關係
除了WinCE的實時性稍差外,大多數嵌入式操作系統的實時性都很強,所以也可稱爲實時操作系統,從事嵌入式的人至少須掌握一個嵌入式操作系統(當然掌握兩個更好),這在嵌入式的所有技術中是最爲關鍵的了。目前最重要的RTOS主 -
Linux操作系統成爲嵌入式操作系統的因素
嵌入式系統通常進行大量生產,所以單個的成本節約,能夠隨着產量進行成百上千的放大。下面是小編收集的Linux操作系統成爲嵌入式操作系統的因素,希望大家認真閱讀!在精簡內核在編譯內核之前,首先要明確需要那些驅動和模塊,然 -
嵌入式系統文件系統比較
嵌入式系統和具體應用有機地結合在一起,它的升級換代也是和具體產品同步進行,因此嵌入式系統產品一旦進入市場,具有較長的生命週期。下面是小編整理的關於嵌入式系統的文件系統,歡迎大家參考!Linux支持多種文件系統,包括ex -
基於嵌入式系統的語音加密處理系統設計
嵌入式系統的發展促進了嵌入式通信安全技術的發展,基於嵌入式系統的語音加密處理系統作爲可以有效確保嵌入式系統通信安全的一個系統,其在嵌入式系統中的應用有效的提高了嵌入式系統數據信息傳輸的安全性和可靠性。下面