嵌入式系統硬件抽象層的原理與實現
發布時間:2007/8/28 0:00:00 訪問次數:1100
摘要:板級支持包(BSP)是嵌入式系統中常用的硬件抽象形式,是介于操作系統和硬件之間的軟件層次。介紹BSP的功能和特點,并結合工作實踐提出了設計BSP的一般方法;最后針對當前嵌入式系統中BSP的設計方法所面臨的問題提出了可行的解決辦法。
關鍵詞:嵌入式系統 嵌入式實時操作系統(RTOS) 硬件抽象層(HAL) 板級支持包(BSP)
隨著計算機硬件技術的快速發展,出現了越來越多的便攜設備和智能設備。這些設備中通常包含控制用的CPU和相應的操作系統;這類特殊的計算機系統叫做嵌入式實時系統。嵌入式實時系統以其簡潔高效等特點在計算機、通信等領域中廣泛使用。
由于嵌入式實時系統應用環境的特殊性,因此在設計實現過程中存在著許多特殊問題。其中,操作系統及其他系統軟件模塊與硬件之間的接口形式是嵌入式實時系統的主要特征和系統設計過程中的必需環節,也是影響嵌入式系統應用前景的關鍵問題。經過近些年的發展,隨著通用嵌入式操作系統技術的日趨成熟和應用的不斷擴大,一種統一的接口形式得到廣泛的認可和應用,這就是通常所說的板級支持包,即BSP。
1 嵌入式系統硬件抽象層的原理
1.1 硬件抽象層的引入
嵌入式實時系統作為一類特殊的計算機系統自底向上包含三個部分,如圖1所示。
(1)硬件環境:是整個嵌入式實時操作系統實時應用程序運行的硬件平臺;不同的應用通常有不同的硬件環境;硬件平臺的多樣性是嵌入式系統的一個主要特點。
(2)嵌入式實時操作系統——RTOS:完成嵌入式實時應用的任務調度和控制等核心功能,具有內核較精簡、可配置、與高層應用緊密關聯等特點。嵌入式操作系統具有相對不變性。
(3)嵌入式實時應用程序:運行于操作系統之上,利用操作系統提供的實時機制完成特定功能的嵌入式應用。不同的系統需要設計不同的嵌入式實時應用程序。
由于嵌入式系統應用的硬件環境差異較大,因此,如何簡潔有效地使嵌入式系統能夠應用于各種不同的應用環境是嵌入式系統發展中所必須解決的關鍵問題。
經過不斷的發展,原先嵌入式系統的三層結構逐步演化成為一種四層結構。這個新增加的中間層次位于操作系統和硬件之間,包含了系統中與硬件相關的大部分功能。通過特定的上層接口與操作系統進行交互,向操作系統提供底層的硬件信息;并根據操作系統的要求完成對硬件的直接操作。由于引入了一個中間層次,展蔽了底層硬件的多樣性,操作系統不再直接面對具體的硬件環境。而是面向由這個中間層次所代表的、邏輯上的硬件環境。因此,把這個中間層次叫做硬件抽象層HAL(Hardware Abstraction Layer)。在目前的嵌入式領域中通常也把HAL叫做板級支持包BSP(Board Support Package)。圖2顯示了引入HAL以后的嵌入式系統結構。BSP的引入大大推動了嵌入式實時操作系統的通用化,從而為嵌入式系統的廣泛應用提供了可能。
1.2 BSP的特點與功能
HAL/BSP的提出使通用的嵌入式操作系統及高層的嵌入式應用能夠有效地運行于特定的、應用相關的硬件環境之上,使擔任系統和應用程序能夠控制和操作具體的硬件設備,完成特定的功能。因此,在絕大多數的嵌入式系統中,BSP是一個必不可少的層次。
由于在系統中的特殊位置,因此BSP具有以下主要特點:
(1)硬件相關性
因為嵌入式實時系統的硬件環境具有應用相關性,所以
摘要:板級支持包(BSP)是嵌入式系統中常用的硬件抽象形式,是介于操作系統和硬件之間的軟件層次。介紹BSP的功能和特點,并結合工作實踐提出了設計BSP的一般方法;最后針對當前嵌入式系統中BSP的設計方法所面臨的問題提出了可行的解決辦法。
關鍵詞:嵌入式系統 嵌入式實時操作系統(RTOS) 硬件抽象層(HAL) 板級支持包(BSP)
隨著計算機硬件技術的快速發展,出現了越來越多的便攜設備和智能設備。這些設備中通常包含控制用的CPU和相應的操作系統;這類特殊的計算機系統叫做嵌入式實時系統。嵌入式實時系統以其簡潔高效等特點在計算機、通信等領域中廣泛使用。
由于嵌入式實時系統應用環境的特殊性,因此在設計實現過程中存在著許多特殊問題。其中,操作系統及其他系統軟件模塊與硬件之間的接口形式是嵌入式實時系統的主要特征和系統設計過程中的必需環節,也是影響嵌入式系統應用前景的關鍵問題。經過近些年的發展,隨著通用嵌入式操作系統技術的日趨成熟和應用的不斷擴大,一種統一的接口形式得到廣泛的認可和應用,這就是通常所說的板級支持包,即BSP。
1 嵌入式系統硬件抽象層的原理
1.1 硬件抽象層的引入
嵌入式實時系統作為一類特殊的計算機系統自底向上包含三個部分,如圖1所示。
(1)硬件環境:是整個嵌入式實時操作系統實時應用程序運行的硬件平臺;不同的應用通常有不同的硬件環境;硬件平臺的多樣性是嵌入式系統的一個主要特點。
(2)嵌入式實時操作系統——RTOS:完成嵌入式實時應用的任務調度和控制等核心功能,具有內核較精簡、可配置、與高層應用緊密關聯等特點。嵌入式操作系統具有相對不變性。
(3)嵌入式實時應用程序:運行于操作系統之上,利用操作系統提供的實時機制完成特定功能的嵌入式應用。不同的系統需要設計不同的嵌入式實時應用程序。
由于嵌入式系統應用的硬件環境差異較大,因此,如何簡潔有效地使嵌入式系統能夠應用于各種不同的應用環境是嵌入式系統發展中所必須解決的關鍵問題。
經過不斷的發展,原先嵌入式系統的三層結構逐步演化成為一種四層結構。這個新增加的中間層次位于操作系統和硬件之間,包含了系統中與硬件相關的大部分功能。通過特定的上層接口與操作系統進行交互,向操作系統提供底層的硬件信息;并根據操作系統的要求完成對硬件的直接操作。由于引入了一個中間層次,展蔽了底層硬件的多樣性,操作系統不再直接面對具體的硬件環境。而是面向由這個中間層次所代表的、邏輯上的硬件環境。因此,把這個中間層次叫做硬件抽象層HAL(Hardware Abstraction Layer)。在目前的嵌入式領域中通常也把HAL叫做板級支持包BSP(Board Support Package)。圖2顯示了引入HAL以后的嵌入式系統結構。BSP的引入大大推動了嵌入式實時操作系統的通用化,從而為嵌入式系統的廣泛應用提供了可能。
1.2 BSP的特點與功能
HAL/BSP的提出使通用的嵌入式操作系統及高層的嵌入式應用能夠有效地運行于特定的、應用相關的硬件環境之上,使擔任系統和應用程序能夠控制和操作具體的硬件設備,完成特定的功能。因此,在絕大多數的嵌入式系統中,BSP是一個必不可少的層次。
由于在系統中的特殊位置,因此BSP具有以下主要特點:
(1)硬件相關性
因為嵌入式實時系統的硬件環境具有應用相關性,所以
上一篇:企業級DSL設計
上一篇:使用集成電路的基本知識