嵌入式系統的分類和特點

嵌入式系統是一種"完全嵌入受控器件內部,爲特定應用而設計的專用計算機系統",那麼嵌入式系統的分類和特點是什麼呢,一起來看看吧。

嵌入式系統的分類和特點

  嵌入式系統的分類

由於嵌入式系統由硬件和軟件兩大部分組成,所以其分類也可以從硬件和軟件進行劃分。

  (1) 嵌入式系統的硬件

從硬件方面來講,嵌入式系統的核心部件是嵌入式處理器。據不完全統計,全世界嵌入式處理器的品種數量已經超過1000多種,流行體系結構有30多個,其中8051體系佔大多數。生產8051單片機的半導體廠家有20多個,共350多種衍生產品,僅Philips就有近100種。目前嵌入式處理器的尋址空間可以從64KB到256MB,處理速度從0.1MIPS到2000MIPS。

近年來嵌入式微處理器的主要發展方向是小體積、高性能、低功耗。專業分工也越來越明顯,出現了專業的IP(Intellectual Property Core,知識產權核)供應商,如ARM、MIPS等,他們通過提供優質、高性能的嵌入式微處理器內核,由各個半導體廠商生產面向各個應用領域的芯片。

如圖1-1所示,一般可以將嵌入式處理器分成4類,即嵌入式微處理器(Micro Processor Unit,MPU)、嵌入式微控制器(Micro Controller Unit,MCU單片機)、嵌入式DSP處理器(Digital Signal Processor,DSP)和嵌入式片上系統(System On Chip,SOC)。

  (2) 嵌入式系統的軟件

嵌入式系統的軟件一般由嵌入式操作系統和應用軟件組成。操作系統是連接計算機硬件與應用程序的系統程序。

操作系統有兩個基本功能:使計算機硬件便於使用;高效組織和正確地使用計算機的資源。

操作系統有4個主要任務:進程管理、進程間通信與同步、內存管理和I/O資源管理。

目前嵌入式系統的軟件主要有兩大類:實時系統和分時系統。如圖1-2所示。

實時操作系統是指具有實時性,能支持實時控制系統工作的操作系統。

實時操作系統的首要任務是調度一切可利用的資源完成實時控制任務;

其次才着眼於提高計算機系統的使用效率,其重要特點是通過任務調度來滿足對於重要事件在規定的時間內做出正確的響應。

實時操作系統與分時操作系統的區別:

對於分時操作系統,軟件的執行在時間上的要求並不嚴格,時間上的延誤或者時序上的錯誤,一般不會造成災難性的後果。

而對於實時操作系統,主要任務是對事件進行實時的處理,雖然事件可能在無法預知的時刻到達,但是軟件必須在事件隨機發生時,在嚴格的時限內做出響應(系統的響應時間)。即使是系統處在尖峯負荷下,也應如此,系統時間響應的超時就意味着致命的失敗。

另外,實時操作系統的重要特點是具有系統的可確定性,即系統能對運行的最好和最壞情況做出精確的估計。

Stankovic給出了實時系統的定義:

“實時系統是這樣一種系統,即系統執行的正確性不僅取決於計算的邏輯結果,而且還取決於結果的產生時間。”

實時系統又可以分爲“硬實時系統”和“軟實時系統”。硬實時和軟實時的區別就在於對外界的事件做出反應的時間。

硬實時系統必須是對事件做出及時的反應,絕對不能錯過事件處理的時限。在硬實時系統中如果出現了這樣的情況就意味着巨大的損失和災難。比如說航天飛機的控制系統,如果出現故障,後果不堪想象。

軟實時系統是指,如果在系統負荷較重的.時候,允許發生錯過時限的情況而且不會造成太大的危害。比如液晶屏刷新允許有短暫的延遲。

硬實時系統和軟實時系統實現的區別主要是在選擇調度算法上。

對於軟實時系統,選擇基於優先級調度的算法足以滿足軟實時系統的需求,而且可以提供高速的響應和大的系統吞吐量;

而對硬實時系統來說,需要使用的算法就應該是調度方式簡單,反應速度快的實時調度算法。

  嵌入式系統的特點

  (1) 系統內核小

由於嵌入式系統一般是應用於小型電子裝置,系統資源相對有限,所以內核較之傳統的操作系統要小得多。比如ENEA公司的OSE分佈式系統,內核只有5KB而Windows的內核則要大得多。

  (2) 專用性強

嵌入式系統的個性化很強,其中的軟件系統和硬件的結合非常緊密,一般要針對硬件進行系統的移植,即使在同一品牌、同一系列的產品中也需要根據系統硬件的變化和增減不斷進行修改。同時,針對不同的任務,往往需要對系統進行較大更改;程序的編譯下載要和系統相結合,這種修改和通用軟件的“升級”是完全不同的概念。

  (3) 系統精簡

嵌入式系統一般沒有系統軟件和應用軟件的明顯區分,不要求其功能的 設計及實現過於複雜,這樣一方面利於控制系統成本,同時也利於實現系統安全。

  (4) 高實時性

高實時性的操作系統軟件是嵌入式軟件的基本要求。而且軟件要求固化存儲,以提高速度。軟件代碼要求高質量和高可靠性。

  (5)多任務的操作系統

嵌入式軟件開發要想走向標準化,就必須使用多任務的操作系統。嵌入式系統的應用程序可以沒有操作系統而直接在芯片上運行;但是爲了合理地調度多任務,利用系統資源、系統函數以及專家庫函數接口,用戶必須自行選配RTOS(Real Time Operating System)開發平臺,這樣才能保證程序執行的實時性、可靠性,並減少開發時間,保障軟件質量。

  (6)專門的開發工具和環境

嵌入式系統開發需要專門的開發工具和環境。由於嵌入式系統本身不具備自主開發能力,即使設計完成以後,用戶通常也不能對其中的程序功能進行修改,因此必須有一套開發工具和環境才能進行開發,這些工具和環境一般是基於通用計算機上的軟硬件設備以及各種邏輯分析儀、混合信號示波器等。開發時往往有主機和目標機的概念,主機用於程序的開發,目標機作爲最後的執行機,開發時需要交替結合進行。