Vxworks BSP开发流程.docx
《Vxworks BSP开发流程.docx》由会员分享,可在线阅读,更多相关《Vxworks BSP开发流程.docx(15页珍藏版)》请在三一办公上搜索。
1、Vxworks BSP开发流程Vxworks BSP开发 1 板级支持包的介绍 2 VxWorks映象及启动顺序 3 VxWorks预内核初始化 4 BSP的配置 5 BSP的开发 6 VxWorks下设备驱动程序概述 板级支持包的介绍 一板级支持包简述 在VxWorks系统中,对BSP的简单描述为:介于底层硬件环境和VxWorks之间的一个软件接口,它的主要功能是在系统加电后初始化目标机硬件、初始化操作系统、提供部分硬件的驱动程序。具体功能包括: 初始化。所谓初始化就是指从系统上电复位开始,到VxWorks开始初始化用户应用的一段时间内系统所执行的过程。这个过程主要包括三个部分的工作: CP
2、U初始化。初始化CPU的内部寄存器。 目标机初始化。初始化控制芯片的寄存器,I/O设备的寄存器,为整个软件系统提供底层硬件环境的支持。 系统资源初始化。为操作系统及系统的正常运行做准备,进行资源初始化,如空间分配等等。 使VxWorks能够访问硬件驱动程序。这主要是指VxWorks包含必要的设备驱动程序和相关设备的初始化。 在VxWorks系统中,集成了与硬件相关的软件和部分与硬件无关的软件。 二板级支持包与VxWorks 从上面的图中,我们可以看到,BSP不是设备驱动程序,因为设备驱动程序可以访问硬件设备,同时,相同设备的驱动程序可以不作修改的从一个环境移植到另外一个环境当中去,而BSP只能
3、在特定的环境下面运行。 简单地说,BSP开发人员要完成两个方面的工作: 完全支持BSP管理设备 通用设备驱动程序的集成工作 三BSP的组成 BSP包含的程序是提供VxWorks访问目标机硬件环境的主要接口。BSP主要由下面几类文件组成。 1 源文件 主要是由C语言编写的代码所组成的文件,也有一小部分由汇编语言编写而成。 2 头文件 包含针对CPU板的硬件定义以及内存定位定义的文件。 3 Make file文件 控制构造所有类型映象的文件 4 派生文件 由其他文件衍生而成的文件。 BSP的组成文件主要包含在以下四个目录里面: .Tornadotargetconfigall .Tornadotar
4、getconfigcompsvxWorks .Tornadotargetconfigcompssrc .Tornadotargetconfigbspname 1. .targetconfigall目录下的文件 这个目录下的文件作为VxWorks体系结构产品的一部分交给用户.如果不是特殊需要的话,没有必要修改这些文件。简单的说,configall下的文件并不是特定BSP的一部分,而是所有BSP的公共部分。该目录下主要包含如下几个文件: (1) bootConfig.c 引导ROM映象的主要初始化和控制文件. (2) bootInit.C bootInit.c包含引导ROM映象第二阶段初始化的代码
5、。该文件定义了romStart函数,romInit.s中的romInit函数执行完毕后会跳转到romStart函数。该函数执行必要的代码压缩和ROM型映象的重定位。 (3) dataSegPad.c 它保证了代码段和数据段不会共享一个MMU. (4) usrCongif.c 包含了VxWorks映象的主要初始化代码。不同于bootInit.c文件,它是非常完整的。 (5) version.c 提供了VxWorks的版本号、构造映象的日期和时间等信息。 (6) configAll.h 设置了所有VxWorks映象的默认设置。在这个文件里定义的变量是一些通用的设置,如果需要的VxWorks映象不同
6、于默认的设置,使用configbspname目录下的config.h文件中定义的宏来替换这里定义的默认宏。 2. .targetconfigbspname目录下的文件 这个子目录包含系统或者硬件相关的BSP文件,主要由下面的一些文件组成。 (1) Readme文件 Readme文件包含了这个BSP的发布记录。它记录了每次发布版本、修订版本和新版本上面所做的工作。 (2) Makefile和depend.bspname文件 Makefile文件控制使用命令行方式构造映象。从VxWorks5.2开始,标准的make工具是GNU make。BSP make系统包含了位于targethmake目录下的
7、make子文件。如果某个相关性文件不存在,make将自动产生一个depend.bspname文件,它可以用来追踪所有模块的相关性。 (3) Config.h文件 Config.h文件包含了所有头文件和CPU板相关的特殊定义。标准的config.h包含下面的内容: BSP版本号和修订版本号 包含configAll.h文件 高速缓冲存储器和MMU的配置 共享内存网络定义 目标板上的内存地址和大小 ROM地址和大小 非易失性RAM 默认的引导参数 时间戳驱动程序支持 外部总县地址映射 网络设备和中断向量 包含bspname.h文件 (4) romInit.s文件 该文件包含引导ROM和基于引导ROM
8、的VxWorks映象的入口初始化汇编代码。入口点为romInit函数,是系统加电启动后首先执行的代码。同时它也设置了启动参数类型,并把该参数传递给通用的romStart函数。如果硬件需要立即内存映射或者设置特殊的寄存器,则在这里处理。 一个普遍的错误是BSP的开发人员企图在romInit.s文件中进行过多的初始化操作。实际上,大部分其他初始化操作是被推迟到sysHwInit函数中进行的。另外,romInit.s文件中的代码不应当被其它的函数或者模块所调用。 (5) sysALib.s 这个文件包含目标机体系结果所决定的、与系统有关的汇编语言程序。所有BSP程序应当用C语言来编写,然而由于编译等
9、原因需要用汇编语言程序编写的时候,可以把所有汇编语言编写的程序代码放在 sysALib.s中。 sysALib.s文件里的sysInit函数是VxWorks映象的入口点。系统引导之后,首先执行该段代码。 (6) sysLib.c 这个文件包含目标机体系结构所决定的、与系统有关的C程序。这些程序提供板极接口,基于这些板极接口,VxWorks和应用程序的构造和系统无关。sysLib.c文件中包含了对驱动程序的安装和初始化工作,这些工作具体在一些子文件中实现,比如sysSerial.c、sysScsi.c、sysNet.c等。使用子文件的目的是为了保持设备驱动程序的安装和初始化不随结构的变化而改变。
10、 (7) sysSerial.c SIO设备串行I/O设备驱动程序的安装和初始化 (8) sysScsi.c 包含SCSI-2设备驱动程序的安装和初始化 (9) sysNet.c 网络接口程序的安装和初始化 (10) bspname.h 与目标板有关的特殊信息的定义 (11) target.nr 这个文件了运行VxWorks必须需要的目标板特殊信息 (12) configNet.h 网络配置头文件。主要包含END网络设备驱动程序的配置。 3. .targetconfigcompsvxWorks目录下的文件 VxWorks实时内核基本模块描述文件. 4. .targetconfigcompssr
11、c目录下的文件 VxWorks实时内核基本模块配置文件. 四BSP开发 下面对BSP的开发做一下宏观上面的描述: (1) BSP的开发步骤应当是一个逐步增加应用的过程 (2) 开发过程中的软、硬件支持 (3) 开发效率的提高 (4) BSP的调试方法 仿真器 ICE调试法 主机 映象 并口 BDM调试法 主机 BDM适配器 并口 黑调试法 利用亮灯、示波器等手段。 数据线 目标板 数据线 目标板BDM口 五Tornado目录结构 Tornado开发系统包含三个高度集成的部分: 运行在宿主机和目标机上功能强大的交叉开发工具和实用程序 运行在目标机上的高性能、可裁剪的实时操作系统VxWorks 连
12、接宿主机和目标机的连接方式,如以太网、串口线、ICE、ROM仿真器等 Tornado下的主要目录如下: Host目录树 Target目录树 VxWorks映象及启动顺序 最小的初始化处理是由防在目标机内存特殊位置的一部分代码和可能的一些表组成。当目标机复位或者加电以后,处理器总是跳转到这个位置。这部分代码初始化机器到某一个指定的状态上、初始化内存和内存地址、关中断,然后把控制权交给附加引导代码。 一VxWorks映象类型 系统把VxWorks映象的类型分成三种,各类型的影响内部又包含不同的子类型。 1 可加载的映象类型 可加载型映象的执行需要通过引导代码把它装载到目标机RAM中,然后才开始执行
13、。而引导代码分为两中: 引导代码固化在ROM或FLASH中 引导代码是一个独立的VxWorks应用 引导代码通常也是一种VxWorks映象,有时候称之为引导映象。它的设计目的就是把另一个包含应用的VxWorks映象装入到RAM中。引导映象在运行时,可能在ROM/FLASH中执行,也可能在RAM中执行。 2 基于ROM的映象类型 基于ROM型映象在执行前首先把自己从ROM或者FLASH中装载到RAM中。这种类型的映象通常在启动阶段会比较慢,但是执行阶段比较快。 3 ROM驻留的映象类型 ROM驻留型映象在启动的时候,把数据段拷贝到目标机RAM中。这种类型的映象通常在启动的时候会比较快,当目标机的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Vxworks BSP开发流程 BSP 开发 流程

链接地址:https://www.31ppt.com/p-3168787.html