<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式系統HAL原理與BSP的實(shí)現方法

嵌入式系統HAL原理與BSP的實(shí)現方法

作者: 時(shí)間:2013-10-23 來(lái)源:網(wǎng)絡(luò ) 收藏

隨著(zhù)計算機軟硬件技術(shù)的快速發(fā)展,出現了越來(lái)越多的便攜設備和智能設備。這些設備中通常包含控制用的CPU和相應的操作系統;這類(lèi)特殊的計算機系統叫做嵌入式實(shí)時(shí)系統。嵌入式實(shí)時(shí)系統以其簡(jiǎn)潔高效等特點(diǎn)在計算機、通信等領(lǐng)域中廣泛使用。
由于嵌入式實(shí)時(shí)系統應用環(huán)境的特殊性,因此在設計實(shí)現過(guò)程中存在著(zhù)許多特殊問(wèn)題。其中,操作系統及其他系統軟件模塊與硬件之間的接口形式是嵌入式實(shí)時(shí)系 統的主要特征和系統設計過(guò)程中的必需環(huán)節,也是影響應用前景的關(guān)鍵問(wèn)題。經(jīng)過(guò)近些年的發(fā)展,隨著(zhù)通用嵌入式操作系統技術(shù)的日趨成熟和應用的不斷 擴大,一種統一的接口形式得到廣泛的認可和應用,這就是通常所說(shuō)的板級支持包,即。
1 硬件抽象層的原理
1.1 硬件抽象層的引入

嵌入式系統HAL原理與BSP的實(shí)現方法
嵌入式實(shí)時(shí)系統作為一類(lèi)特殊的計算機系統自底向上包含三個(gè)部分,如圖1所示。

(1)硬件環(huán)境:是整個(gè)嵌入式實(shí)時(shí)操作系統和實(shí)時(shí)應用程序運行的硬件平臺;不同的應用通常有不同的硬件環(huán)境;硬件平臺的多樣性是的一個(gè)主要特點(diǎn)。
(2)嵌入式實(shí)時(shí)操作系統——RTOS:完成嵌入式實(shí)時(shí)應用的任務(wù)調度和控制等核心功能,具有內核較精簡(jiǎn)、可配置、與高層應用緊密關(guān)聯(lián)等特點(diǎn)。嵌入式操作系統具有相對不變性。
(3)嵌入式實(shí)時(shí)應用程序:運行于操作系統之上,利用操作系統提供的實(shí)時(shí)機制完成特定功能的嵌入式應用。不同的系統需要設計不同的嵌入式實(shí)時(shí)應用程序。
由于嵌入式系統應用的硬件環(huán)境差異較大,因此,如何簡(jiǎn)潔有效地使嵌入式系統能夠應用于各種不同的應用環(huán)境是嵌入式系統發(fā)展中所必須解決的關(guān)鍵問(wèn)題。
經(jīng)過(guò)不斷的發(fā)展,原先嵌入式系統的三層結構逐步演化成為一種四層結構。這個(gè)新增加的中間層次位于操作系統和硬件之間,包含了系統中與硬件相關(guān)的大部分功 能。通過(guò)特定的上層接口與操作系統進(jìn)行交互,向操作系統提供底層的硬件信息;并根據操作系統的要求完成對硬件的直接操作。由于引入了一個(gè)中間層次,屏蔽了 底層硬件的多樣性,操作系統不再直接面對具體的硬件環(huán)境。而是面向由這個(gè)中間層次所代表的、邏輯上的硬件環(huán)境。因此,把這個(gè)中間層次叫做硬件抽象層 HAL(Hardware Abstraction Layer)。在目前的嵌入式領(lǐng)域中通常也把HAL叫做板級支持包 (Board Support Package)。圖2顯示了引入HAL以后的嵌入式系統結構。的引入大大推動(dòng)了嵌入式實(shí)時(shí)操作系統的通用化,從而為嵌入式系統的廣泛應用提供了可能。

嵌入式系統HAL原理與BSP的實(shí)現方法

1.2 BSP的特點(diǎn)與功能
HAL/BSP的提出使通用的嵌入式操作系統及高層的嵌入式應用能夠有效地運行于特定的、應用相關(guān)的硬件環(huán)境之上,使操作系統和應用程序能夠控制和操作具體的硬件設備,完成特定的功能。因此,在絕大多數的嵌入式系統中,BSP是一個(gè)必不可少的層次。
由于在系統中的特殊位置,因此BSP具有以下主要特點(diǎn):
(1)硬件相關(guān)性
因為嵌入式實(shí)時(shí)系統的硬件環(huán)境具有應用相關(guān)性,所以,作為高層軟件與硬件之間的接口,BSP必須為操作系統提供操作和控制具體硬件的方法。
(2)操作系統相關(guān)性
不同的操作系統具有各自的軟件層次結構,因此,不同的操作系統具有特定的硬件接口形式。
在實(shí)現上,BSP是一個(gè)介于操作系統和底層硬件之間的軟件層次,包括了系統中大部分與硬件相關(guān)的軟件模塊。在功能上包含兩部分:系統初始化及與硬件相關(guān)的設備驅動(dòng)。

2 BSP的設計與實(shí)現
為實(shí)現上述兩部分功能,設計一個(gè)完整的BSP需要完成兩部分工作:
(1)設計初始化過(guò)程,完成嵌入式系統的初始化;
(2)設計硬件相關(guān)的設備驅動(dòng),完成操作系統及應用程序對具體硬件的操作。
2.1 嵌入式系統初始化以及BSP的功能
嵌入式系統的初始化過(guò)程是一個(gè)同時(shí)包括硬件初始化和軟件(主要是操作系統及系統軟件模塊)初始化的過(guò)程;而操作系統啟動(dòng)以前的初始化操作是BSP的主要 功能之一。由于嵌入式系統不僅具有硬件環(huán)境的多樣性,同時(shí)具有軟件的可配置性,因此,不同的嵌入式系統初始化所涉及的內容各不相同,復雜程度也不盡相同。 但是初始化過(guò)程總是可以抽象為三個(gè)主要環(huán)節,按照自底向上、從硬件到軟件的次序依次為:片級初始化、板級初始化和系統級初始化。
(1)片級初始化:主要完成CPU的初始化,包括設置CPU的核心寄存器和控制寄存器,CPU核心工作模式以及CPU的局部總線(xiàn)模式等。片級初始化把CPU從上電時(shí)的缺省狀態(tài)逐步設置成為系統所要求的工作狀態(tài)。這是一個(gè)純硬件的初始化過(guò)程。
(2)板級初始化:完成CPU以外的其他硬件設備的初始化。除此之外,還要設置某些軟件的數據結構和參數,為隨后的系統級初始化和應用程序的運行建立硬件和軟件環(huán)境。這是一個(gè)同時(shí)包含軟硬件兩部分在內的初始化過(guò)程。
(3)系統級初始化:這是一個(gè)以軟件初始化為主的過(guò)程,主要進(jìn)行操作系統初始化。BSP將控制轉交給操作系統,由操作系統進(jìn)行余下的初始化操作。包括加 載和初始化與硬件無(wú)關(guān)的設備驅動(dòng)程序,建立系統內存區,加載并初始化其他系統軟件模塊,比如網(wǎng)絡(luò )系統、文件系統等;最后,操作系統創(chuàng )建應用程序環(huán)境并將控 制轉交給應用程序的入口。
經(jīng)過(guò)以上三個(gè)層次的操作,嵌入式系統運行所需要的硬件和軟件環(huán)境已經(jīng)進(jìn)行了正確設置,從這里開(kāi)始,高層的實(shí)時(shí)應用程序可以運行了。
需要指出:系統級初始化不是BSP的工作。但是,系統級初始化成功與否的關(guān)鍵在于BSP的前兩個(gè)初始化過(guò)程中所進(jìn)行的軟件和硬件的正確設置,而且系統級 初始化也是由BSP發(fā)起的。因此,設計BSP中初始化功能的重點(diǎn)主要集中在前兩個(gè)環(huán)節。圖3顯示了嵌入式系統的初始化過(guò)程。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 嵌入式系統 HAL原理 BSP

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>