本文首先介紹了什么是板級支持包以及BSP的三大部分,其次介紹了板級支持包的作用分析以及功能,最后介紹了BSP在項目開發(fā)中的位置和步驟,具體的跟隨小編一起來了解一下。
板級支持包的定義
板級支持包(BSP)是介于主板硬件和操作系統(tǒng)中驅(qū)動層程序之間的一層,一般認為它屬于操作系統(tǒng)一部分,主要是實現(xiàn)對操作系統(tǒng)的支持,為上層的驅(qū)動程序提供訪問硬件設(shè)備寄存器的函數(shù)包,使之能夠更好的運行于硬件主板。在嵌入式系統(tǒng)軟件的組成中,就有BSP。BSP是相對于操作系統(tǒng)而言的,不同的操作系統(tǒng)對應(yīng)于不同定義形式的BSP,例如VxWorks的BSP和Linux的BSP相對于某一CPU來說盡管實現(xiàn)的功能一樣,可是寫法和接口定義是完全不同的,所以寫B(tài)SP一定要按照該系統(tǒng)BSP的定義形式來寫(BSP的編程過程大多數(shù)是在某一個成型的BSP模板上進行修改)。這樣才能與上層OS保持正確的接口,良好的支持上層OS。
BSP可以分為三大部分:
1、系統(tǒng)上電時的硬件初始化。
2、為操作系統(tǒng)訪問硬件驅(qū)動程序提供支持。
3、集成硬件相關(guān)和硬件無關(guān)的操作系統(tǒng)所需的軟件模塊。
BSP向上層提供的接口有:
1、與操作系統(tǒng)內(nèi)核的接口(如報告DRAM大小、修改中斷屏蔽級別等)
2、與操作系統(tǒng)的I/O系統(tǒng)的接口
3、與應(yīng)用程序的接口
廣義上講,單板中所有需要CPU控制的硬件的程序,都屬于單板BSP,但是,為了調(diào)試方便和軟件的模塊化,我們通常就將與此單板最小系統(tǒng)相關(guān)的程序簡稱為BSP,而將其他程序稱為驅(qū)動程序。
對于嵌入式系統(tǒng)來說,所謂最小系統(tǒng)就是一個包含:CPU, Bootrom, RAM,系統(tǒng)時鐘,網(wǎng)口,串口的計算機運行環(huán)境。
這樣,最小系統(tǒng)BSP就包含了CPU系統(tǒng)的初始化程序以及網(wǎng)口,串口,系統(tǒng)時鐘等設(shè)備的驅(qū)動程序。
板級支持包的作用分析
1、初始化CPU內(nèi)部寄存器
2、設(shè)定RAM工作時序
3、時鐘驅(qū)動及中斷控制器驅(qū)動
4、串口驅(qū)動
1、完善高速緩存和內(nèi)存管理單元的驅(qū)動
2、指定程序起始運行位置
3、完善中斷管理
4、完善系統(tǒng)總線驅(qū)動
板級支持包的的功能
1、單板硬件初始化,主要是CPU的初始化,為整個軟件系統(tǒng)提供底層硬件支持
2、為操作系統(tǒng)提供設(shè)備驅(qū)動程序和系統(tǒng)中斷服務(wù)程序
3、定制操作系統(tǒng)的功能,為軟件系統(tǒng)提供一個實時多任務(wù)的運行環(huán)境
4、初始化操作系統(tǒng),為操作系統(tǒng)的正常運行做好準備。
BSP在項目開發(fā)中的位置和步驟
BSP開發(fā)處于整個嵌入式開發(fā)的前期,是后面系統(tǒng)能夠正常運行的保證。
大概步驟如下:
(1)硬件主板研制,測試。
(2)操作系統(tǒng)的選定,BSP編程。
(3)上層應(yīng)用程序的開發(fā)。
BSP部分在硬件和操作系統(tǒng)之間。所以這就要求BSP程序員對硬件,軟件和操作系統(tǒng)都要有一定的了解。這樣才能做好BSP編程。
-
板級支持包
+關(guān)注
關(guān)注
0文章
5瀏覽量
8458
發(fā)布評論請先 登錄
相關(guān)推薦
評論