深度分析:嵌入式系統綜述
隨著電子技術的快速發展,特別是大規模集成電路的產生而出現的微型機,使現代科學研究得到了質的飛躍,而嵌入式微控制器技術的出現則是給現代工業控制領域帶來了一次新的技術革命。由嵌入式微控制器組成的系統,最明顯的優勢就是可以嵌入到任何微型或小型儀器、設備中。
嵌入式系統被定義為:以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適應應用系統,對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。嵌入式系統是將先進的計算機技術、半導體技術、電子技術和各個行業的具體應用相結合后的產物,這一點就決定了他必然是一個技術密集、資金密集、高度分散、不斷創新的知識集成系統。嵌入式計算機的外部設備中就包含了多個嵌入式微處理器,如鍵盤、硬盤、顯示器、網卡、聲卡等均是由嵌入式處理器控制的。現在,嵌入式系統帶來的工業年產值已超過了1萬億美元,嵌入式計算機不僅在民品上而且在軍事裝備上也得到了廣泛地應用。
2 嵌入式系統的結構
嵌入式系統作為一類特殊的計算機系統,自底向上包含有3個部分,如圖1所示。
(1)硬件環境 是整個嵌入式操作系統和應用程序運行的硬件平臺,不同的應用通常有不同的硬件環境。硬件平臺的多樣性是嵌入式系統的一個主要特點。 (2)嵌入式操作系統 完成嵌入式應用的任務調度和控制等核心功能。具有內核較精簡、可配置、與高層應用緊密關聯等特點。嵌入式操作系統具有相對不變性。
(3)嵌入式應用程序 運行于操作系統之上,利用操作系統提供的機制完成特定功能的嵌入式應用。不同的系統需要設計不同的嵌入式應用程序。
如何簡潔有效地使嵌入式系統能夠應用于各種不同的應用環境,是嵌入式系統發展中所必須解決的關鍵問題。經過不斷的發展,原先嵌入式系統的3層結構逐步演化成為一種4層結構。如圖2所示,這個新增加的中間層次叫硬件抽象層,有時也叫板級支持包,是一個介于硬件與軟件之間的中間層次。硬件抽象層通過特定的上層接口與操作系統進行交互,向操作系統硬件的直接操作。硬件抽象層的引入大大推動了嵌入式操作系統的通用化。
3 嵌入式系統的特點
3.1 嵌入式系統工業的特點和要求
從某種意義上來說,通用計算機行業的技術是壟斷的。嵌入式系統則不同,嵌入式系統工業是不可壟斷的高度分散的工業,充滿了競爭、機遇與創新,沒有哪一個系列的處理器和操作系統能夠壟斷全部市場,即便在體系結構上存在著主流。但各不相同的應用領域決定了不可能由少數公司、少數產品壟斷全部市場。因此嵌入式系統領域的產品和技術,必然是高度分散的,留給各個行業高新技術公司的創新余地很大。另外,社會上的各個應用領域是不斷向前發展的,要求其中的嵌入式處理器核心也同步發展,這也構成了推動嵌入式工業發展的強大動力。嵌入式系統工業的基礎是以應用為中心的“芯片”設計和面向應用的軟件產品開發。
3.2 嵌入式系統具有的產品特征
嵌入式系統是面向用戶、面向產品、面向應用的,不能獨立于應用自行發展,否則便會失去市場。嵌入式系統的核心部件,嵌入式微處理器的功耗、體積、成本、處理能力和電磁兼容性等方面均受到應用要求的制約,這些也是各個半導體廠商之間競爭的熱點。嵌入式系統的硬件和軟件設計都必須精心考慮,力爭在同樣的硅片面積上實現更高的性能,只有這樣,才能在具體應用時對處理器的選擇面前更具有競爭力。嵌入式處理器要針對用戶的具體需求,對芯片配置進行裁剪和添加才能達到理想的性能。由于嵌入式系統和具體應用有機地結合在一起,具有較長的生命周期。
3.3 嵌入式處理器軟件的特征
嵌入式處理器的應用軟件是實現嵌入式系統功能的關鍵,對嵌入式處理器系統軟件和應用軟件的要求也和通用計算機有所不同,主要有以下幾點:
(1)軟件要求固態化存儲 為了提高執行速度和系統可靠性,嵌入式系統中的軟件一般都固化在存儲器芯片或嵌入式微控制器本身中,而不是存貯于磁盤等載體中。
(2)軟件代碼要求高質量、高可靠性 盡管半導體技術的發展使處理器速度不斷提高、片上存儲器容量不斷增加,但在大多數應用中,存儲空間仍然是寶貴的,還存在實時性的要求。為此要求程序編寫和編譯工具的質量要高,以減小程序二進制代碼長度、提高執行速度。
(3)系統軟件(OS)的高實時性是基本要求 在多任務嵌入式系統中,對重要性各不相同的任務進行統籌兼顧的合理調度是保證每個任務及時執行的關鍵,單純通過提高處理器速度是無法完成和沒有效率的,這種任務調度只能由優化編寫的系統軟件來完成,因此系統軟件的高實時性是基本要求。
(4)多任務操作系統是知識集成的平臺和走向工業化標準化道路的基礎,嵌入式系統開發需要開發工具和環境 嵌入式系統本身不具備開發能力,即使設計完成以后用戶通常也是不能對其中的程序功能進行修改的,必須有一套開發工具和環境才能進行開發,這些工具和環境一般是基于通用計算機上的軟硬件設備以及各種邏輯分析儀、混合信號示波器等。
(5)嵌入式系統軟件需要實時多任務操作系統開發平臺(RTOS) 通用計算機具有完善的操作系統和應用程序接口,是計算機基本組成不可分離的一部分,應用程序的開發以及完成后的軟件都在OS平臺上面運行,但一般不是實時的。嵌入式系統則不同,應用程序可以沒有操作系統直接在芯片上運行;但是為了合理地調度多任務、利用系統資源,用戶必須自行選配RTOS開發平臺,這樣才能保證程序執行的實時性、可靠性,并減少開發時間,保障軟件質量。
(6)在嵌入式系統的軟件開發過程中,采用C語言將是最佳和最終的選擇 由于匯編語言是一種非結構化的語言,對于大型的結構化程序設計已經不能完全勝任了。這就要求我們采用更高級的C語言去完成這一工作。
4 嵌入式系統的發展趨勢
中國的單片機應用和嵌入式系統開發已走過了15年的歷程,隨著市場對超微型嵌入式應用技術和產品的要求不斷增長,以及半導體技術和系統設計方法的進步,嵌入式系統在目前的發展形勢下,表現出以下幾大趨勢:
(1)可靠性及應用水平越來越高和互聯網連接已是一種明顯的走向。
(2)所集成的部件越來越多,從意義上講只是單片集成電路,從功能上講可以說是萬用機了。
(3)功耗越來越低,和模擬電路結合越來越多。
5 結 語
隨著半導體工藝技術的發展及系統設計水平的提高,嵌入式微控制器還會不斷的產生變化和進步,最終人們可能發現:嵌入式微控制器與微機系統之間的距離越來越小,而功能更大,因而將會更加廣泛地滲入到各類設備和產品中去。
評論