1. 定义
BSP主要功能为屏蔽硬件,提供操作系统及硬件驱动,具体功能包括:
(1)单板硬件初始化,主要是CPU的初始化,为整个软件系统提供底层硬件支持。
(2)为操作系统提供设备驱动程序和系统中断服务程序。
(3)定制操作系统的功能,为软件系统提供一个实时多任务的运行环境。
(4)初始化操作系统,为操作系统的正常运行做好准备。
2. 作用
建立让操作系统运行的基本环境
(1)初始化CPU内部寄存器
(2)设定RAM工作时序
(3)时钟驱动及中断控制器驱动
(4)串口驱动
完善操作系统运行的环境
(1)完善高速缓存和内存管理单元的驱动
(2)指定程序起始运行位置
(3)完善中断管理
(4)完善系统总线驱动
3.开发流程
(1)验证硬件
了解上电后的电压和电流,连接调试器读写CPU内部寄存器,控制处理器的输出端口(GPIO)观察输出,以及检验时钟设置。
(2)配置RAM
这一步包括RAM的初始化和测试。在初始化RAM的过程中需要填写与RAM相关的CPU寄存器,在测试过程中可分为:单元测试,整体测试,噪声测试三部分。
(3)内存管理
需要规划内存的使用方法,开MMU等。
4.BSP特点
在一些BSP中还包括硬件设计诊断程序,该程序在系统启动过程中对硬件扫描以检测设备的状况,其功能和PC机操作系统启动前的设备检测类似。
(1)硬件相关性
嵌入式实时系统的硬件环境具有应用相关性,因此,作为高层软件和硬件之间的接口,BSP必须为操作系统提供操作和控制具体硬件的方法。
(2)操作相关性
不同的操作系统具有各自的软件层次结构,因此,不同操作系统具有特定的硬件接口形式。
总结:
BSP是一个介于操作系统和底层硬件之间的软件层次,包括了系统中大部分与硬件相关的软件模块。