嵌入式系統(tǒng)硬件抽象層的原理與實(shí)現(xiàn)
發(fā)布時(shí)間:2007/8/28 0:00:00 訪問次數(shù):1123
摘要:板級支持包(BSP)是嵌入式系統(tǒng)中常用的硬件抽象形式,是介于操作系統(tǒng)和硬件之間的軟件層次。介紹BSP的功能和特點(diǎn),并結(jié)合工作實(shí)踐提出了設(shè)計(jì)BSP的一般方法;最后針對當(dāng)前嵌入式系統(tǒng)中BSP的設(shè)計(jì)方法所面臨的問題提出了可行的解決辦法。
關(guān)鍵詞:嵌入式系統(tǒng) 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS) 硬件抽象層(HAL) 板級支持包(BSP)
隨著計(jì)算機(jī)硬件技術(shù)的快速發(fā)展,出現(xiàn)了越來越多的便攜設(shè)備和智能設(shè)備。這些設(shè)備中通常包含控制用的CPU和相應(yīng)的操作系統(tǒng);這類特殊的計(jì)算機(jī)系統(tǒng)叫做嵌入式實(shí)時(shí)系統(tǒng)。嵌入式實(shí)時(shí)系統(tǒng)以其簡潔高效等特點(diǎn)在計(jì)算機(jī)、通信等領(lǐng)域中廣泛使用。
由于嵌入式實(shí)時(shí)系統(tǒng)應(yīng)用環(huán)境的特殊性,因此在設(shè)計(jì)實(shí)現(xiàn)過程中存在著許多特殊問題。其中,操作系統(tǒng)及其他系統(tǒng)軟件模塊與硬件之間的接口形式是嵌入式實(shí)時(shí)系統(tǒng)的主要特征和系統(tǒng)設(shè)計(jì)過程中的必需環(huán)節(jié),也是影響嵌入式系統(tǒng)應(yīng)用前景的關(guān)鍵問題。經(jīng)過近些年的發(fā)展,隨著通用嵌入式操作系統(tǒng)技術(shù)的日趨成熟和應(yīng)用的不斷擴(kuò)大,一種統(tǒng)一的接口形式得到廣泛的認(rèn)可和應(yīng)用,這就是通常所說的板級支持包,即BSP。
1 嵌入式系統(tǒng)硬件抽象層的原理
1.1 硬件抽象層的引入
嵌入式實(shí)時(shí)系統(tǒng)作為一類特殊的計(jì)算機(jī)系統(tǒng)自底向上包含三個(gè)部分,如圖1所示。
(1)硬件環(huán)境:是整個(gè)嵌入式實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)應(yīng)用程序運(yùn)行的硬件平臺;不同的應(yīng)用通常有不同的硬件環(huán)境;硬件平臺的多樣性是嵌入式系統(tǒng)的一個(gè)主要特點(diǎn)。
(2)嵌入式實(shí)時(shí)操作系統(tǒng)——RTOS:完成嵌入式實(shí)時(shí)應(yīng)用的任務(wù)調(diào)度和控制等核心功能,具有內(nèi)核較精簡、可配置、與高層應(yīng)用緊密關(guān)聯(lián)等特點(diǎn)。嵌入式操作系統(tǒng)具有相對不變性。
(3)嵌入式實(shí)時(shí)應(yīng)用程序:運(yùn)行于操作系統(tǒng)之上,利用操作系統(tǒng)提供的實(shí)時(shí)機(jī)制完成特定功能的嵌入式應(yīng)用。不同的系統(tǒng)需要設(shè)計(jì)不同的嵌入式實(shí)時(shí)應(yīng)用程序。
由于嵌入式系統(tǒng)應(yīng)用的硬件環(huán)境差異較大,因此,如何簡潔有效地使嵌入式系統(tǒng)能夠應(yīng)用于各種不同的應(yīng)用環(huán)境是嵌入式系統(tǒng)發(fā)展中所必須解決的關(guān)鍵問題。
經(jīng)過不斷的發(fā)展,原先嵌入式系統(tǒng)的三層結(jié)構(gòu)逐步演化成為一種四層結(jié)構(gòu)。這個(gè)新增加的中間層次位于操作系統(tǒng)和硬件之間,包含了系統(tǒng)中與硬件相關(guān)的大部分功能。通過特定的上層接口與操作系統(tǒng)進(jìn)行交互,向操作系統(tǒng)提供底層的硬件信息;并根據(jù)操作系統(tǒng)的要求完成對硬件的直接操作。由于引入了一個(gè)中間層次,展蔽了底層硬件的多樣性,操作系統(tǒng)不再直接面對具體的硬件環(huán)境。而是面向由這個(gè)中間層次所代表的、邏輯上的硬件環(huán)境。因此,把這個(gè)中間層次叫做硬件抽象層HAL(Hardware Abstraction Layer)。在目前的嵌入式領(lǐng)域中通常也把HAL叫做板級支持包BSP(Board Support Package)。圖2顯示了引入HAL以后的嵌入式系統(tǒng)結(jié)構(gòu)。BSP的引入大大推動(dòng)了嵌入式實(shí)時(shí)操作系統(tǒng)的通用化,從而為嵌入式系統(tǒng)的廣泛應(yīng)用提供了可能。
1.2 BSP的特點(diǎn)與功能
HAL/BSP的提出使通用的嵌入式操作系統(tǒng)及高層的嵌入式應(yīng)用能夠有效地運(yùn)行于特定的、應(yīng)用相關(guān)的硬件環(huán)境之上,使擔(dān)任系統(tǒng)和應(yīng)用程序能夠控制和操作具體的硬件設(shè)備,完成特定的功能。因此,在絕大多數(shù)的嵌入式系統(tǒng)中,BSP是一個(gè)必不可少的層次。
由于在系統(tǒng)中的特殊位置,因此BSP具有以下主要特點(diǎn):
(1)硬件相關(guān)性
因?yàn)榍度胧綄?shí)時(shí)系統(tǒng)的硬件環(huán)境具有應(yīng)用相關(guān)性,所以
摘要:板級支持包(BSP)是嵌入式系統(tǒng)中常用的硬件抽象形式,是介于操作系統(tǒng)和硬件之間的軟件層次。介紹BSP的功能和特點(diǎn),并結(jié)合工作實(shí)踐提出了設(shè)計(jì)BSP的一般方法;最后針對當(dāng)前嵌入式系統(tǒng)中BSP的設(shè)計(jì)方法所面臨的問題提出了可行的解決辦法。
關(guān)鍵詞:嵌入式系統(tǒng) 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS) 硬件抽象層(HAL) 板級支持包(BSP)
隨著計(jì)算機(jī)硬件技術(shù)的快速發(fā)展,出現(xiàn)了越來越多的便攜設(shè)備和智能設(shè)備。這些設(shè)備中通常包含控制用的CPU和相應(yīng)的操作系統(tǒng);這類特殊的計(jì)算機(jī)系統(tǒng)叫做嵌入式實(shí)時(shí)系統(tǒng)。嵌入式實(shí)時(shí)系統(tǒng)以其簡潔高效等特點(diǎn)在計(jì)算機(jī)、通信等領(lǐng)域中廣泛使用。
由于嵌入式實(shí)時(shí)系統(tǒng)應(yīng)用環(huán)境的特殊性,因此在設(shè)計(jì)實(shí)現(xiàn)過程中存在著許多特殊問題。其中,操作系統(tǒng)及其他系統(tǒng)軟件模塊與硬件之間的接口形式是嵌入式實(shí)時(shí)系統(tǒng)的主要特征和系統(tǒng)設(shè)計(jì)過程中的必需環(huán)節(jié),也是影響嵌入式系統(tǒng)應(yīng)用前景的關(guān)鍵問題。經(jīng)過近些年的發(fā)展,隨著通用嵌入式操作系統(tǒng)技術(shù)的日趨成熟和應(yīng)用的不斷擴(kuò)大,一種統(tǒng)一的接口形式得到廣泛的認(rèn)可和應(yīng)用,這就是通常所說的板級支持包,即BSP。
1 嵌入式系統(tǒng)硬件抽象層的原理
1.1 硬件抽象層的引入
嵌入式實(shí)時(shí)系統(tǒng)作為一類特殊的計(jì)算機(jī)系統(tǒng)自底向上包含三個(gè)部分,如圖1所示。
(1)硬件環(huán)境:是整個(gè)嵌入式實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)應(yīng)用程序運(yùn)行的硬件平臺;不同的應(yīng)用通常有不同的硬件環(huán)境;硬件平臺的多樣性是嵌入式系統(tǒng)的一個(gè)主要特點(diǎn)。
(2)嵌入式實(shí)時(shí)操作系統(tǒng)——RTOS:完成嵌入式實(shí)時(shí)應(yīng)用的任務(wù)調(diào)度和控制等核心功能,具有內(nèi)核較精簡、可配置、與高層應(yīng)用緊密關(guān)聯(lián)等特點(diǎn)。嵌入式操作系統(tǒng)具有相對不變性。
(3)嵌入式實(shí)時(shí)應(yīng)用程序:運(yùn)行于操作系統(tǒng)之上,利用操作系統(tǒng)提供的實(shí)時(shí)機(jī)制完成特定功能的嵌入式應(yīng)用。不同的系統(tǒng)需要設(shè)計(jì)不同的嵌入式實(shí)時(shí)應(yīng)用程序。
由于嵌入式系統(tǒng)應(yīng)用的硬件環(huán)境差異較大,因此,如何簡潔有效地使嵌入式系統(tǒng)能夠應(yīng)用于各種不同的應(yīng)用環(huán)境是嵌入式系統(tǒng)發(fā)展中所必須解決的關(guān)鍵問題。
經(jīng)過不斷的發(fā)展,原先嵌入式系統(tǒng)的三層結(jié)構(gòu)逐步演化成為一種四層結(jié)構(gòu)。這個(gè)新增加的中間層次位于操作系統(tǒng)和硬件之間,包含了系統(tǒng)中與硬件相關(guān)的大部分功能。通過特定的上層接口與操作系統(tǒng)進(jìn)行交互,向操作系統(tǒng)提供底層的硬件信息;并根據(jù)操作系統(tǒng)的要求完成對硬件的直接操作。由于引入了一個(gè)中間層次,展蔽了底層硬件的多樣性,操作系統(tǒng)不再直接面對具體的硬件環(huán)境。而是面向由這個(gè)中間層次所代表的、邏輯上的硬件環(huán)境。因此,把這個(gè)中間層次叫做硬件抽象層HAL(Hardware Abstraction Layer)。在目前的嵌入式領(lǐng)域中通常也把HAL叫做板級支持包BSP(Board Support Package)。圖2顯示了引入HAL以后的嵌入式系統(tǒng)結(jié)構(gòu)。BSP的引入大大推動(dòng)了嵌入式實(shí)時(shí)操作系統(tǒng)的通用化,從而為嵌入式系統(tǒng)的廣泛應(yīng)用提供了可能。
1.2 BSP的特點(diǎn)與功能
HAL/BSP的提出使通用的嵌入式操作系統(tǒng)及高層的嵌入式應(yīng)用能夠有效地運(yùn)行于特定的、應(yīng)用相關(guān)的硬件環(huán)境之上,使擔(dān)任系統(tǒng)和應(yīng)用程序能夠控制和操作具體的硬件設(shè)備,完成特定的功能。因此,在絕大多數(shù)的嵌入式系統(tǒng)中,BSP是一個(gè)必不可少的層次。
由于在系統(tǒng)中的特殊位置,因此BSP具有以下主要特點(diǎn):
(1)硬件相關(guān)性
因?yàn)榍度胧綄?shí)時(shí)系統(tǒng)的硬件環(huán)境具有應(yīng)用相關(guān)性,所以
上一篇:使用集成電路的基本知識
熱門點(diǎn)擊
- 一種基于CPLD的偽隨機(jī)序列發(fā)生器
- 嵌入式系統(tǒng)硬件抽象層的原理與實(shí)現(xiàn)
- 利用XPS工具快速生成Virtex FPGA
- 在MC68HC908GP32上移植μC/OS
- 基于PIC18F系列單片機(jī)的嵌入式系統(tǒng)設(shè)計(jì)
- 嵌入式Email發(fā)送模塊
- 便攜系統(tǒng)中微處理器功耗的設(shè)計(jì)考慮
- 在Windows環(huán)境下調(diào)用動(dòng)態(tài)庫實(shí)現(xiàn)VXI嵌
- 使用LeonardoSpectrum綜合Xi
- Nios SoC系統(tǒng)中的BCH編解碼IP核的
推薦技術(shù)資料
- 羅盤誤差及補(bǔ)償
- 造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究