一种非相似三余度飞控软件开发方法

文档序号:6502135阅读:271来源:国知局
一种非相似三余度飞控软件开发方法
【专利摘要】本发明属于航空嵌入式安全关键软件应用技术,涉及到一种非相似三余度飞控软件开发方法。所述方法为硬件平台为相似余度的飞控系统或硬件单余度飞控系统的软件提供一种非相似余度软件开发方法。所述方法通过操作系统分区来实现非相似余度的飞控应用软件设计,有效减小因软件设计缺陷而导致软件共性故障的机率,提高了系统可靠性。
【专利说明】一种非相似三余度飞控软件开发方法

【技术领域】
[0001] 本发明属于航空嵌入式安全关键软件应用技术,涉及到一种非相似三余度飞控软 件开发方法。

【背景技术】
[0002] 无人机飞控计算机机载软件属于无人机机载软件的核心控制软件,可靠性要求非 常高。但以往的无人机飞控计算机机载软件只采用了相似多余度设计,没有采用软件非相 似多余度设计,原因在于没有设计一种专用的嵌入式实时操作系统支持非相似多余度的飞 控应用软件运行。
[0003] 采用相似余度软件设计,容易导致因软件设计缺陷而导致软件共性故障,从而引 发整个系统失效。通过相似余度飞控计算机的嵌入式实时操作系统分区方法设计,有利于 实现非相似余度的飞控应用软件设计,从而提高飞控系统机载软件的容错性。


【发明内容】

[0004] 本发明的目的:提供一种非相似三余度飞控软件开发方法,为硬件平台为相似余 度的飞控系统或硬件单余度飞控系统的软件提供一种非相似余度软件开发方法,从软件角 度提高飞控系统的可靠性。
[0005] 本发明的技术方案:
[0006] -种非相似三余度飞控软件开发方法,本方法包括以下步骤:
[0007] 第一步:在集成开发环境中建立一个0S项目,该项目可在飞控系统已选型且预分 区的CPU板上运行,并在该0S项目中进行如下配置:
[0008] 链接配置:对0S驻留在该CPU板的内存中的代码段text、数据段data和bss段 的起始地址和大小进行配置;
[0009] 映像配置:对0S加载地址和运行位置进行配置;
[0010] 0S 配置:
[0011] a目标板设备配置:对板卡的CPU及外围设备进行配置;
[0012] b对象配置:将要在该CPU板上运行的飞控系统应用程序配置为3个分区,配置每 个分区的复位、停止特权接口,并指定和配置每个分区的分区看门狗;为0S配置虚拟外部 中断与硬件中断的映射表,并为已配置好的每个分区派发已配置好的虚拟外部中断,并配 置系统看门狗;为已配置好的每个分区配置调度策略、时间调度表、起始地址和访问属性;
[0013] c空间配置:
[0014] 对该CPU板上的FLASHR0M、RAM以及10存储器的物理空间的起始地址和大小进行 配置;对0S可访问的空间的访问属性进行配置;
[0015] 第二步:在集成开发环境中针对第一步中的CPU板建立一个TA项目,并在该TA项 目中进行如下配置:
[0016] CPU配置:对CPU体系、类型和大小端进行配置;
[0017] 链接配置:对第一步配置好的每个分区分别驻留在内存中的text、data和bss段 的起始地址和大小进行配置;
[0018] 映像配置:对第一步配置好的每个分区的加载地址和运行位置进行配置;
[0019] 第三步:在集成开发环境中针对第一步中的CPU板建立一个KBSP项目,并在该 KBSP项目中进行如下配置:
[0020] CPU配置:对CPU体系、类型和大小端进行配置;
[0021] 第四步:在集成开发环境中针对第一步中的CPU板建立三个应用项目,并在该应 用项目中进行如下配置:
[0022] CPU配置:对CPU体系、类型和大小端进行配置;
[0023] 链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起 始地址和大小进行配置;
[0024] 映像配置:对第一步配置好的分区的加载地址和运行位置进行配置;
[0025] 第五步:在上述第一至第三步建立的项目中各自源文件夹下,对根据系统需求和 基于该CPU板的OS、TA和KBSP源代码进行手工开发;
[0026] 第六步:在第四步建立的三个项目中的源文件夹下分别开发功能相同但实现方式 不同的应用源代码;
[0027] 第七步:在集成开发环境中对上述六步已开发好的项目分别进行编译链接;
[0028] 第八步:通过加载工具将第七步中编译链接好的二进制文件都加载到飞控计算机 CHJ板中运行。
[0029] 本发明的优点:
[0030] 1、有利于实现软件非相似余度设计
[0031] 通过嵌入式操作系统分区设计,为非相似余度的软件提供不同的存放空间,并管 理非相似余度的软件的运行,为非相似余度的软件的实现提供了平台。
[0032] 2、提高系统可靠性
[0033] 通过操作系统分区来实现非相似余度的飞控应用软件设计,有效减小因软件设计 缺陷而导致软件共性故障的机率,提高了系统可靠性。

【专利附图】

【附图说明】:
[0034]图1相似余度的飞控计算机体系结构示意图
[0035] 图2嵌入式实时操作系统分区示意图(单CPU板)

【具体实施方式】:
[0036] 下面一个实施例对本发明作进一步详细说明,本实施例使用的集成开发环 境为 LambdaTOOL-SVM,建模工具为 Scade suite 和 Matlab/Simulink,加载工具为 LambdaTOOL-DIF,针对CPU芯片为PowerPC755的CPU板运行的应用程序进行开发,方法如 下:
[0037] 第一步:在LambdaTOOL-SVM集成开发环境中建立一个0S项目,并在该0S项目中 进行如下配置:
[0038] 1链接配置:对操作系统驻留在内存中的text、data和bss段的起始地址和大小 进行配置;
[0039] 2映像配置:对0S加载地址配置好,运行位置配置为FlashROM ;
[0040] 30S 配置:
[0041] a目标板设备配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置 为big、频率配置为210MHz,硬件中断个数配置为15个、定时器tick为1000微妙,触发方 式为 one-shot ;
[0042] b对象配置:
[0043] bl将用户分区配置为3个分区,指定分区看门狗,为分区看门狗选择最大喂狗时 间、回调函数最大执行时间、看门狗超时处理策略,配置分区的复位、停止等特权接口;
[0044] b2为操作系统内核配置虚拟外部中断与硬件中断的映射表、并为bl中已配置好 的3个分区分别派发已配置好的虚拟外部中断;配置系统看门狗的最大喂狗时间,并为bl 中配置好的3个分区分别指定该分区看门狗的时钟源;
[0045] b3为bl中已配置好的3个分区分别配置调度策略为基于时间调度表并配置时间 调度表的调度起点以及时间窗口长度,配置3个分区为可自动启动;
[0046] c空间配置:
[0047] cl对FLASHROM、RAM以及10存储器的物理空间的起始地址和大小进行配置;
[0048] c2对0S可访问的空间的访问属性配置为使能CACHE、CACHE方式为写回、读写权 限为用户态可读;对b项中配置好的分区的起始地址配置好,RAM空间访问属性配置为使能 CACHE、CACHE方式为写回、读写权限为可读可写,10空间访问属性配置为禁止CACHE、读写 权限为用户态可读可写;
[0049] 第二步:在LambdaT00L-SVM集成开发环境中针对该CPU板建立一个TA项目,并在 该TA项目中进行如下配置:
[0050] 1CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big ;
[0051] 2链接配置:对第一步配置好的3个分区分别驻留在内存中的text、data和bss 段的起始地址和大小进行配置;
[0052] 3映像配置:对第一步配置好的3个分区的加载地址配置好,运行位置均配置为 FlashROM ;
[0053] 第三步:在LambdaT00L-SVM集成开发环境中针对该CPU板建立一个KBSP项目,并 在该KBSP项目中进行如下配置:
[0054] 1CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big ;
[0055] 第四步:在LambdaT00L-SVM集成开发环境中针对该CPU板建立一个应用项目,并 在该应用项目中进行如下配置:
[0056] 1CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big ;
[0057] 2链接配置:对第一步配置好的3个分区分别驻留在内存中的text、data和bss 段的起始地址和大小进行配置;
[0058] 3映像配置:对第一步配置好的3个分区的加载地址配置好,运行位置均配置为 FlashROM ;
[0059] 第五步:在上述第一到第三步建立的项目中各自源文件夹下,对根据系统需求对 需运行在该CPU板上的OS、TA和KBSP进行手工编码开发;
[0060] 第六步:在上述第四步建立的应用项目中的源文件夹下,根据相同的软件需求规 格说明对第一个分区的应用程序进行手工编码开发,第二个分区的应用程序采用Scade suite建模并自动产生代码,第三个分区采用Matlab/Simulink建模并自动产生代码;
[0061] 第七步:在LambdaTOOL-SVM集成开发环境中对上述六步已开发好的项目分别进 行编译链接;
[0062] 第八步:通过LambdaTOOL-DIF加载工具将第七步中编译链接好的二进制文件加 载到飞控计算机该某CPU板中。
【权利要求】
1. 一种非相似三余度飞控软件开发方法,其特征是,本方法包括以下步骤: 第一步:在集成开发环境中建立一个0S项目,该项目可在飞控系统已选型且预分区的 CPU板上运行,并在该0S项目中进行如下配置: 链接配置:对0S驻留在该CPU板的内存中的代码段text、数据段data和bss段的起 始地址和大小进行配置; 映像配置:对0S加载地址和运行位置进行配置; 0S配置: a目标板设备配置:对板卡的CPU及外围设备进行配置; b对象配置:将要在该CPU板上运行的飞控系统应用程序配置为3个分区,配置每个分 区的复位、停止特权接口,并指定和配置每个分区的分区看门狗;为0S配置虚拟外部中断 与硬件中断的映射表,并为已配置好的每个分区派发已配置好的虚拟外部中断,并配置系 统看门狗;为已配置好的每个分区配置调度策略、时间调度表、起始地址和访问属性; c空间配置: 对该CPU板上的FLASHROM、RAM以及10存储器的物理空间的起始地址和大小进行配 置;对0S可访问的空间的访问属性进行配置; 第二步:在集成开发环境中针对第一步中的CPU板建立一个TA项目,并在该TA项目中 进行如下配置: CPU配置:对CPU体系、类型和大小端进行配置; 链接配置:对第一步配置好的每个分区分别驻留在内存中的text、data和bss段的起 始地址和大小进行配置; 映像配置:对第一步配置好的每个分区的加载地址和运行位置进行配置; 第三步:在集成开发环境中针对第一步中的CPU板建立一个KBSP项目,并在该KBSP项 目中进行如下配置: CPU配置:对CPU体系、类型和大小端进行配置; 第四步:在集成开发环境中针对第一步中的CPU板建立三个应用项目,并在该应用项 目中进行如下配置: CPU配置:对CPU体系、类型和大小端进行配置; 链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地 址和大小进行配置; 映像配置:对第一步配置好的分区的加载地址和运行位置进行配置; 第五步:在上述第一至第三步建立的项目中各自源文件夹下,对根据系统需求和基于 该CPU板的OS、TA和KBSP源代码进行手工开发; 第六步:在第四步建立的三个项目中的源文件夹下分别开发功能相同但实现方式不同 的应用源代码; 第七步:在集成开发环境中对上述六步已开发好的项目分别进行编译链接; 第八步:通过加载工具将第七步中编译链接好的二进制文件都加载到飞控计算机CPU 板中运行。
【文档编号】G06F9/44GK104123123SQ201310146093
【公开日】2014年10月29日 申请日期:2013年4月24日 优先权日:2013年4月24日
【发明者】王喆, 伍良才, 徐大勇, 郭通, 杨坤, 桑茂华 申请人:成都飞机设计研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1