一种基于VxWorks的BSP代码开发系统的制作方法

文档序号:11154363阅读:707来源:国知局
一种基于VxWorks的BSP代码开发系统的制造方法与工艺

本发明涉及基于VxWorks操作系统实现的嵌入式航电设备及其开发,特别涉及对BSP(Board Support Package)的开发。



背景技术:

目前,随着机载软件复杂度的增加,其重要程度越来越明显,业内对软件产品质量的关注度也越来越高,如何在提高软件产品开发效率的同时,提高软件产品质量,已成为业内热议的话题。

软件的代码自动生成技术,能在一定程度上减少手工维护代码带来的错误,能有效提高软件质量,在代码自动生成技术基础上的图形化开发技术,又能有效提高软件开发效率,提高产品的技术成熟度和开发者的设计层次。

对于上层应用软件开发领域,Rhapsody等代码自动生成工具已被广泛使用,其应用效果也被广泛证实。

然而对于BSP等底层软件而言,由于其具有与硬件关系密切,可重用性强,软件算法简单等特点,不适用于上层应用软件的开发架构及相应的代码自动生成工具。而架构和工具的缺乏,导致了以下问题:

a)缺乏统一接口,影响了上层应用程序的可移植性;

b)重复开发现象严重,影响了软件开发效率;

c)手工维护代码程度高,严重影响软件质量、可维护性和成熟度;

d)BSP中对寄存器的配置无规可循,严重影响软件的可重用性,影响二次开发及故障分析的效率。



技术实现要素:

本发明的发明内容在于提供了一种基于VxWorks的BSP代码开发系统,实现了PC端图形化开发软件对BSP软件的配置,从而实现了BSP的图形化开发和代码自动生成技术。该发明可在很大程度上提高软件产品的可移植性和开发效率,增加产品的技术成熟度;减少因手工维护代码带来的错误,提高了软件产品的质量;同时使开发者不必过于关注底层代码细节的描述,而是更关注于软件架构设计,提高了开发人员的设计层次。另外,相关驱动软件作为通用化的可重用软件管理,项目中遇到的问题可及时回溯到可重用软件中,并及时发布至其他项目,避免重复解决相同的问题。

本发明的发明目的通过以下技术方案实现:

一种基于VxWorks的BSP代码开发系统,包含配置工具模块和核心BSP模块,其特征在于:

所述配置工具模块用于根据用户在可视化界面完成的硬件资源的选择以及硬件参数的配置生成XML配置文件提交给核心BSP模块;

所述核心BSP模块用于解析XML配置文件,编译生成可执行文件。

优选地,所述配置工具模块还用于在配置完成后生成CMM文件,所述CMM文件用于TRACE 32仿真器调试使用。

优选地,所述配置工具模块还用于在配置完成后生成的BSP配置报告式,所述BSP配置报告反映配置结果,用于后续软件文档的编写。

优选地,核心BSP模块包含硬件驱动软件模型库和BSP配置文件,所述硬件驱动软件模型库是根据各硬件资源封装的代码库;所述BSP配置文件为由核心BSP模块对XML配置文件解析后产生的.h形式的文件;核心BSP模块根据BSP配置文件从硬件驱动软件模型库调用硬件资源,并根据对硬件参数的配置完成可执行文件的生成。

附图说明

图1为本发明一种基于VxWorks的BSP代码开发系统的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。

本发明提出了一种基于VxWorks的BSP代码开发系统,并基于此系统实现了PC端图形化开发软件对BSP软件的配置,从而实现了BSP的图形化开发和代码自动生成技术。

一、设计架构

设计按照工程经验,梳理出经常变更的硬件资源作为可配置内容,并按照GJB5000A软件开发流程,对相应硬件资源进行驱动软件的开发,形成通用化、标准化、组件化的驱动库,供BSP使用。

设计分为核心BSP模块和配置工具模块两部分,其中核心BSP模块将上述可配置内容,通过宏定义形式封装至BSP配置文件中,实现只更改宏定义即可完成从硬件驱动软件模型库中对硬件驱动选择。例如,核心BSP中可能针对常见的不同硬件,包含了几种常见的以太网驱动,这些以太网驱动存在于硬件驱动软件模型库中,而BSP配置文件的宏定义中则需要决定针对本次设计具体要从硬件驱动软件模型库中选择哪种硬件驱动,以及这种硬件驱动的性能参数等进行定义。而BSP配置文件中的部分代码是由配置工具模块生成的。

配置工具模块设计了一套可视化图形界面,将上述常用的硬件资源的可配置内容整合到图形界面中,以实现用户通过该配置工具模块完成实际硬件资源的选择,以及硬件参数的配置,从而完成BSP软件配置。

配置工具模块和核心BSP模块的架构关系如图1所示。通过配置工具模块能够完成核心BSP配置和CMM配置,配置工具模块根据用户对硬件驱动程序的选择和可配置内容的设置生成对应的XML配置文件,以保存配置信息。

在XML配置文件的生成后,核心BSP模块通过解析XML中保存的用户配置信息,来生成.h形式的文件,以供核心BSP模块的编译使用。

此外,根据XML配置文件能够以Word的形式生成BSP配置报告,可用于BSP的需求和设计文档,并且能够对BSP开发中涉及到的配置设计项以及基于标准BSP所进行的改型配置项内容均可一目了然的查看,取代了原有通过查看代码或文档了解BSP配置设计的复杂方式。

二、核心BSP模块

设计的关键环节在于通用BSP的设计,即对BSP中常用配置相关的定义和接口在头文件(.h形式的文件)中进行统一设计和管理,对BSP中可配置项进行划分和定义,与BSP中的驱动软件分开,使得驱动软件能够以通用化软件模块的形式出现在不同配置的BSP中。而对于可配置项则提供配置工具模块,所有基于标准BSP的改型设计不再通过修改代码的方式完成,全部由配置工具模块完成配置操作。此外,设计还对BSP的启动时间做了优化,通过修改FLASH片选参数和修改MMU的方式,将BSP的启动时间控制在最短状态,使得后续开发能基于一套高性能的通用化软件进行。用于可配置的硬件资源包括:

1、片选

2、PCIE控制器

3、LAWBAR及LAWAR设置

4、内存参数配置

5、跳转功能配置

6、以太网

7、晶振频率

8、MMU管理

9、DMA控制器驱动

10、FLASH驱动

11、RTC驱动

12、电压处理芯片驱动

13、温度处理芯片驱动

14、常用BIT

15、文件系统

其中,片选、PCIE控制器、晶振频率等均将对应寄存器值在BSP配置文件中以宏定义的形式供配置;FLASH、RTC、电压、温度等驱动的配置,都是将常用硬件驱动封装成统一接口的库形式,在BSP配置文件中通过包含该库实现调用。

三、配置工具模块

配置工具模块通过下拉列表、数据填充等形式,直观的对硬件进行配置,生成XML配置文件,供BSP编译使用,同时还具备以下功能:

a)对常见错误进行检测,能有效避免地址冲突、常见寄存器错误等问题;

b)自动解析寄存器配置值,自动打开对应数据手册,供设计者查看,并以注释的形式写入BSP可配置文件中;

c)自动生成配置报告,对配置内容进行归纳总结;

d)自动生成CMM等仿真器配置文件,供仿真器调试使用;

e)自动生成XML配置文件,保存当前配置信息,以备下次使用。

本发明提供的一种基于VxWorks的BSP代码开发系统,可在一定程度上提高软件开发阶段的工作效率,降低其工作难度,提高其成熟度和软件开发者的设计层次,减少因手工维护代码引入的错误,从而保证了软件质量。该设计方法极大的丰富了对于航空电子系统机载计算机VxWorks操作系统下BSP软件的开发方法,同时可被借鉴应用于其他操作系统底层软件的开发。该专利的应用独立于硬件平台,适用范围广,具有显著的市场前景和经济效益。

可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1