一种VxWorks系统中BSP的设计方法
【专利摘要】本发明提供一种VxWorks系统中BSP的设计方法,包括以下步骤:选择BSP模板;修改配置文件config.h、bonito.h和hwconf.c;修改VxWorks系统启动文件sysALib.s、VxWorks系统编译文件Makefile和BSP初始化文件syslib.c;修改设备与VxWorks系统的接口文件和设备驱动文件。本发明提供的VxWorks系统中BSP的设计方法,简单可行,可操作性强,能够对基于龙芯处理器的VxWorks系统的BSP设计起到了事半功倍的效果;而且,将VxWorks系统移植到基于龙芯处理器的设备上,可以提高处理器的实时性,提高设备运行的整体性能。
【专利说明】—种VxWorks系统中BSP的设计方法
【技术领域】
[0001]本发明涉及一种设计方法,具体涉及一种VxWorks系统中BSP的设计方法。
【背景技术】
[0002]VxWorks是美国Wind River公司开发的嵌入式实时操作系统,具有高性能、可高度裁剪等特点,能够支持多种微处理器,如PowerPC、X86、ARM、MIPS等。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及对实时性要求极高的领域中。板级支持包(Board Support Package, BSP)是介于硬件和操作系之间的一层,其作用是针对特定的硬件平台,为操作系统系统内核提供操作接口,使操作系统能够独立于底层硬件,对上层应用屏蔽具体硬件,Vxfforks的高可移植性就是通过BSP实现的。
[0003]龙芯处理器是一款基于MIPS指令集的,拥有自主知识产权的高性能32位处理器,具有高速缓存等丰富偏上资源,广泛应用于国防、军工及商用领域。本发明的一种VxWorks系统的BSP的设计方法,简单可行,可操作性强,对于基于龙芯处理器的VxWorks系统的BSP设计起到了事半功倍的效果;而且,将VxWorks系统移植到基于龙芯处理器的设备上,可以提高设备运行的整体性能。
【发明内容】
[0004]为了克服上述现有技术的不足,本发明提供一种VxWorks系统中BSP的设计方法,简单可行,可操作性强,能够对基于龙芯处理器的VxWorks系统的BSP设计起到了事半功倍的效果;而且,将VxWorks系统移植到基于龙芯处理器的设备上,可以提高处理器的实时性,提高设备运行的整体性能。
[0005]为了实现上述发明目的,本发明采取如下技术方案:
[0006]本发明提供一种VxWorks系统中BSP的设计方法,所述方法包括以下步骤:
[0007]步骤1:选择BSP模板;
[0008]步骤2:修改配置文件 config.h、bonit0.h 和 hwconf.c ;
[0009]步骤3:修改VxWorks系统启动文件sysALib.S、Vxfforks系统编译文件Makefile和BSP初始化文件syslib.c ;
[0010]步骤4:修改设备与VxWorks系统的接口文件和设备驱动文件。
[0011]所述步骤I中,根据主板上微处理器的架构和字节序,在VxWorks系统开发包的BSP目录下选择同硬件平台相同或相近的VxWorks的BSP模板。
[0012]所述步骤2包括以下步骤:
[0013]步骤2-1:根据主板的硬件资源修改配置文件config.h,并由配置文件config.h的内容定义VxWorks系统的内核组件;
[0014]配置文件config.h的内容包括VxWorks系统启动方式、各种类型存储空间的范围和硬件接口的使用情况;
[0015]步骤2-2:修改配置文件bonit0.h ;[0016]配置文件bonit0.h的内容包括主板上硬件资源的配置参数;配置参数包括微处理器中VxWorks系统控制寄存器的配置参数、设备各个接口的寄存器、Vxfforks系统中断号、中断向量的定义和端口地址;
[0017]步骤2-3:修改配置文件hwconf.c ;
[0018]在配置文件hwconf.c中设置所有非可选的、与微处理器相关的信息,并定义基于微处理器的各项宏定义;
[0019]配置文件hwconf.c该文件包含设备的驱动程序头文件。
[0020]所述步骤3包括以下步骤:
[0021]步骤3-1:修改VxWorks系统启动文件sysALib.s ;
[0022]依照微处理器手册,配置相关寄存器和微处理器,使微处理器正常运转;
[0023]步骤3-2:修改VxWorks系统编译文件Makefile ;
[0024]修改RAM的起始地址L0CAL_MEM_L0CAL_ADRS、VxWorks系统镜像的入口地址RAM_L0ff_ADRS和VxWorks系统引导代码的入口地址RAM_HIGH_ADRS,使三者的地址与配置文件config.h中的地址相同;若VxWorks系统镜像中包含BSP以外的文件,则将文件放在BSP目录下,在VxWorks系统编译文件Makefile文件中添加MACH_EXTRA,把该文件生成的目标文件赋值给MACH_EXTRA ;
[0025]步骤3-3:BSP 初始化文件 syslib.c ;
[0026]按照主板上的微处理器,修改硬件初始化函数sysHwInit O以及连接VxWorks系统中断和ISR挂接的函数sysHwInit2 O。
[0027]所述步骤4中,确定设备驱动在VxWorks系统中的调用方式,编写主板上的每个设备对应的设备结构和设备驱动。
[0028]与现有技术相比,本发明的有益效果在于:
[0029]本发明提供的VxWorks系统中BSP的设计方法,简单可行,可操作性强,能够对基于龙芯处理器的VxWorks系统的BSP设计起到了事半功倍的效果;而且,将VxWorks系统移植到基于龙芯处理器的设备上,可以提高处理器的实时性,提高设备运行的整体性能。
【专利附图】
【附图说明】
[0030]图1是VxWorks系统中BSP的设计方法流程图。
【具体实施方式】
[0031]下面结合附图对本发明作进一步详细说明。
[0032]如图1,本发明提供一种VxWorks系统中BSP的设计方法,所述方法包括以下步骤:
[0033]步骤1:选择BSP模板;
[0034]所述步骤I中,根据主板上微处理器的架构和字节序,在VxWorks系统开发包的BSP目录下选择同硬件平台相同或相近的VxWorks的BSP模板;如所用的CPU为龙芯处理器,则选择一个MIPS架构的模板;
[0035]步骤2:修改配置文件 config.h、bonit0.h 和 hwconf.c ;
[0036]所述步骤2包括以下步骤:[0037]步骤2-1:根据主板的硬件资源修改配置文件config.h,并由配置文件config.h的内容定义VxWorks系统的内核组件;
[0038]配置文件config.h的内容包括VxWorks系统启动方式、各种类型存储空间的范围和硬件接口的使用情况;
[0039]步骤2-2:修改配置文件bonit0.h ;
[0040]配置文件bonit0.h的内容包括主板上硬件资源的配置参数;配置参数包括微处理器中VxWorks系统控制寄存器的配置参数、设备各个接口的寄存器、Vxfforks系统中断号、中断向量的定义和端口地址;
[0041]步骤2-3:修改配置文件hwconf.c ;
[0042]在配置文件hwconf.c中设置所有非可选的、与微处理器相关的信息,并定义基于微处理器的各项宏定义;
[0043]配置文件hwconf.c该文件包含设备的驱动程序头文件。
[0044]步骤3:修改VxWorks系统启动文件sysALib.S、Vxfforks系统编译文件Makefile和BSP初始化文件syslib.c ;
[0045]所述步骤3包括以下步骤:
[0046]步骤3-1:修改VxWorks系统启动文件sysALib.s ;
[0047]依照微处理器手册,配置相关寄存器和微处理器,使微处理器正常运转;
[0048]步骤3-2:修改VxWorks系统编译文件Makefile ;
[0049]修改RAM的起始地址L0CAL_MEM_L0CAL_ADRS、VxWorks系统镜像的入口地址RAM_L0ff_ADRS和VxWorks系统引导代码的入口地址RAM_HIGH_ADRS,使三者的地址与配置文件config.h中的地址相同;若VxWorks系统镜像中包含BSP以外的文件,则将文件放在BSP目录下,在VxWorks系统编译文件Makefile文件中添加MACH_EXTRA,把该文件生成的目标文件赋值给MACH_EXTRA ;
[0050]步骤3-3:BSP 初始化文件 syslib.c ;
[0051]按照主板上的微处理器,修改硬件初始化函数sysHwInit O以及连接VxWorks系统中断和ISR挂接的函数sysHwInit2 O。
[0052]步骤4:修改设备与VxWorks系统的接口文件和设备驱动文件。
[0053]所述步骤4中,确定设备驱动在VxWorks系统中的调用方式,编写主板上的每个设备对应的设备结构和设备驱动。
[0054]BSP设计开发中一般先实现一个BSP包最小系统,包括定时器、中断控制器和串口,此时VxWorks已经可以启动了,在此基础上再继续添加其他设备的驱动即可完善整个BSP的设计。
[0055]最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的【具体实施方式】进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
【权利要求】
1.一种VxWorks系统中BSP的设计方法,其特征在于:所述方法包括以下步骤: 步骤1:选择BSP模板; 步骤 2:修改配置文件 config.h、bonit0.h 和 hwconf.c ; 步骤3:修改VxWorks系统启动文件sysALib.S、Vxfforks系统编译文件Makefile和BSP初始化文件syslib.c ; 步骤4:修改设备与VxWorks系统的接口文件和设备驱动文件。
2.根据权利要求1所述的VxWorks系统中BSP的设计方法,其特征在于:所述步骤I中,根据主板上微处理器的架构和字节序,在VxWorks系统开发包的BSP目录下选择同硬件平台相同或相近的VxWorks的BSP模板。
3.根据权利要求1所述的VxWorks系统中BSP的设计方法,其特征在于:所述步骤2包括以下步骤: 步骤2-1:根据主板的硬件资源修改配置文件config.h,并由配置文件config.h的内容定义VxWorks系统的内核组件; 配置文件config.h的内容包括VxWorks系统启动方式、各种类型存储空间的范围和硬件接口的使用情况; 步骤2-2:修改配置文件bonit0.h ; 配置文件bonit0.h的内容包括主板上硬件资源的配置参数;配置参数包括微处理器中VxWorks系统控制寄存器的配置参数、设备各个接口的寄存器、Vxfforks系统中断号、中断向量的定义和端口地址; 步骤2-3:修改配置文件hwconf.c ; 在配置文件hwconf.c中设置所有非可选的、与微处理器相关的信息,并定义基于微处理器的各项宏定义; 配置文件hwconf.c该文件包含设备的驱动程序头文件。
4.根据权利要求1所述的VxWorks系统中BSP的设计方法,其特征在于:所述步骤3包括以下步骤: 步骤3-1:修改VxWorks系统启动文件sysALib.s ; 依照微处理器手册,配置相关寄存器和微处理器,使微处理器正常运转; 步骤3-2:修改VxWorks系统编译文件Makefile ; 修改RAM的起始地址LOCAL_MEM_LOCAL_ADRS、Vxfforks系统镜像的入口地址RAM_L0ff_ADRS和VxWorks系统引导代码的入口地址RAM_HIGH_ADRS,使三者的地址与配置文件config.h中的地址相同;若VxWorks系统镜像中包含BSP以外的文件,则将文件放在BSP目录下,在VxWorks系统编译文件Makefile文件中添加MACH_EXTRA,把该文件生成的目标文件赋值给MACH_EXTRA ; 步骤3-3 =BSP初始化文件syslib.c ; 按照主板上的微处理器,修改硬件初始化函数sysHwInit O以及连接VxWorks系统中断和ISR挂接的函数sysHwInit2 O。
5.根据权利要求1所述的VxWorks系统中BSP的设计方法,其特征在于:所述步骤4中,确定设备驱动在VxWorks系统中的调用方式,编写主板上的每个设备对应的设备结构和设备驱动。
【文档编号】G06F9/445GK103955387SQ201410169857
【公开日】2014年7月30日 申请日期:2014年4月25日 优先权日:2014年4月25日
【发明者】卢慧慧, 袁玉湘, 姜学平, 于坤山 申请人:国家电网公司, 国网智能电网研究院