CN104123122A - 一种非相似三余度飞控计算机的非相似余度软件开发方法 - Google Patents
一种非相似三余度飞控计算机的非相似余度软件开发方法 Download PDFInfo
- Publication number
- CN104123122A CN104123122A CN201310144328.6A CN201310144328A CN104123122A CN 104123122 A CN104123122 A CN 104123122A CN 201310144328 A CN201310144328 A CN 201310144328A CN 104123122 A CN104123122 A CN 104123122A
- Authority
- CN
- China
- Prior art keywords
- configuration
- cpu
- subregion
- project
- flight control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明属于航空嵌入式软件应用技术,涉及到一种非相似三余度飞控计算机的非相似余度软件开发方法。本发明为运行在非相似三余度飞控计算机上运行的应用软件提供开发方法,本方法能抑制因软件相似存在的共态故障,大大的降低了飞控系统的失效率,提高了飞控系统可靠性。
Description
技术领域
本发明属于航空嵌入式软件应用技术,涉及到一种非相似三余度飞控计算机的非相似余度软件开发方法。
背景技术
无人机飞控计算机机载软件属于无人机机载软件的核心控制软件,可靠性要求非常高。但以往的无人机飞控计算机机载软件只采用了相似多余度设计,没有采用软件非相似多余度设计,原因在于没有使用非相似多余度的飞控计算机平台供非相似多余度的应用软件运行。
采用相似余度软件设计,容易导致因软件设计缺陷而导致软件共性故障,从而引发整个系统失效。而对于相似余度的飞控计算机体系,在相同的指令控制下,运行相同的程序,并时刻处于相同的工作状态,通道间的耦合十分紧密。但经验表明,余度通道耦合越紧,受共态故障影响使整个系统崩溃的可能性越大。通过在非相似三余度飞控计算机的不同CPU板上开发功能相同但实现方法不同的应用程序,实现非相似三余度的飞控应用软件设计,从而提高飞控系统可靠性。
发明内容:
本发明的目的:提供一种非相似三余度飞控计算机的非相似余度软件开发方法,为运行在非相似三余度飞控计算机上运行的应用软件提供开发方法,提高飞控系统的可靠性。
本发明的技术方案:
一种非相似三余度飞控计算机的非相似余度软件开发方法,本方法包括以下步骤:
第一步:在集成开发环境中建立一个OS项目,该项目可在飞控系统已选型且预分区的CPU板上运行,并在该OS项目中进行如下配置:
链接配置:对OS驻留在该CPU板的内存中的代码段text、数据段data和bss段的起始地址和大小进行配置;
映像配置:对OS加载地址和运行位置进行配置;
OS配置:
a目标板设备配置:对板卡的CPU及外围设备进行配置;
b对象配置:将要在该CPU板上运行的飞控系统应用程序配置为1个分区,配置分区的复位、停止特权接口,并指定和配置该分区的分区看门狗;为OS配置虚拟外部中断与硬件中断的映射表,并为已配置好的分区派发已配置好的虚拟外部中断,并配置系统看门狗;为已配置好的分区配置调度策略、时间调度表、起始地址和访问属性;
c空间配置:
对该CPU板上的FLASHROM、RAM以及IO存储器的物理空间的起始地址和大小进行配置;对OS可访问的空间的访问属性进行配置;
第二步:在集成开发环境中针对第一步中的CPU板建立一个TA项目,并在该TA项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址和运行位置进行配置;
第三步:在集成开发环境中针对第一步中的CPU板建立一个KBSP项目,并在该KBSP项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
第四步:在集成开发环境中针对第一步中的CPU板建立一个应用项目,并在该应用项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址和运行位置进行配置;
第五步:在上述四步建立的项目中各自源文件夹下,对根据系统需求和基于该CPU板的OS、TA、KBSP和应用源代码进行手工开发;
第六步:在集成开发环境中对上述五步已开发好的项目分别进行编译链接;
第七步:通过加载工具将第六步中编译链接好的二进制文件加载到飞控计算机基于某CPU硬件平台的板卡中;
第八步:基于第二个不同CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在第一个CPU板功能相同但实现方式不同的源代码;
第九步:基于第三个不同CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在第一、二个CPU板功能相同但实现方式不同的源代码。
本发明的优点:
与传统的相似余度的飞控软件开发方法相比,本方法能抑制因软件相似存在的共态故障,大大的降低了飞控系统的失效率,提高了飞控系统可靠性。
附图:
图1非相似三余度的飞控计算机体系结构示意图
图2嵌入式实时操作系统分区示意图(单CPU板)
具体实施方式:
下面一个实施例对本发明作进一步详细说明,本实施例使用的集成开发环境为LambdaTOOL-SVM,针对PPC755、Intel80486和AMD29050,但频率相近的三个CPU板上运行的应用程序进行开发,方法如下:
第一步:在LambdaTOOL-SVM集成开发环境中针对该CPU板建立一个OS项目,并在该OS项目中进行如下配置:
链接配置:对OS驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对OS加载地址配置好,运行位置配置为FlashROM;
OS配置:
a目标板设备配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big、频率配置为210MHz,硬件中断个数配置为15个、定时器tick为1000微妙,触发方式为one-shot;
b对象配置:
将用户分区配置为1个分区,指定分区看门狗,为分区看门狗选择最大喂狗时间、回调函数最大执行时间、看门狗超时处理策略,配置分区的复位、停止等特权接口;为操作系统内核配置虚拟外部中断与硬件中断的映射表、并为已配置好的分区派发已配置好的虚拟外部中断;配置系统看门狗的最大喂狗时间,并为(a)中配置好的分区指定该分区看门狗的时钟源;为已配置好的分区配置调度策略为基于时间调度表,并配置分区可自动启动;为已配置好的分区配置时间调度表(调度起点以及时间窗口长度);
c空间配置:对FLASHROM、RAM以及IO存储器的物理空间的起始地址和大小进行配置;对OS可访问的空间的访问属性配置为使能CACHE、CACHE方式为写回、读写权限为用户态可读;对b项中配置好的分区的起始地址配置好,RAM空间访问属性配置为使能CACHE、CACHE方式为写回、读写权限为可读可写,IO空间访问属性配置为禁止CACHE、读写权限为用户态可读可写;
第二步:在LambdaTOOL-SVM集成开发环境中针对该CPU板建立一个TA项目,并在该TA项目中进行如下配置:
CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址配置好,运行位置配置为FlashROM;
第三步:在LambdaTOOL-SVM集成开发环境中针对该CPU板建立一个KBSP项目,并在该KBSP项目中进行如下配置:
CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big;
第四步:在LambdaTOOL-SVM集成开发环境中针对该CPU板建立一个应用项目,并在该应用项目中进行如下配置:
CPU配置:对CPU板的CPU体系配置为PPC、类型配置为755、大小端配置为big;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址配置好,运行位置配置为FlashROM;
第五步:在上述四步建立的项目中各自源文件夹下,对根据系统需求和基于该CPU硬件平台的板卡的OS、TA、KBSP和应用源代码进行手工开发;
第六步:在LambdaTOOL-SVM集成开发环境中对上述五步已开发好的项目分别进行编译链接;
第七步:通过LambdaTOOL-DIF加载工具将第六步中编译链接好的二进制文件加载到飞控计算机该CPU板中;
第八步:基于Intel80486芯片的CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在基于PPC755芯片的CPU板功能相同但实现方式不同的源代码;
第九步:基于AMD29050芯片的CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在基于Intel80486芯片和AMD29050芯片的CPU板功能相同但实现方式不同的源代码。
Claims (1)
1.一种非相似三余度飞控计算机的非相似余度软件开发方法,其特征是,本方法包括以下步骤:
第一步:在集成开发环境中建立一个OS项目,该项目可在飞控系统已选型且预分区的CPU板上运行,并在该OS项目中进行如下配置:
链接配置:对OS驻留在该CPU板的内存中的代码段text、数据段data和bss段的起始地址和大小进行配置;
映像配置:对OS加载地址和运行位置进行配置;
OS配置:
a目标板设备配置:对板卡的CPU及外围设备进行配置;
b对象配置:将要在该CPU板上运行的飞控系统应用程序配置为1个分区,配置分区的复位、停止特权接口,并指定和配置该分区的分区看门狗;为OS配置虚拟外部中断与硬件中断的映射表,并为已配置好的分区派发已配置好的虚拟外部中断,并配置系统看门狗;为已配置好的分区配置调度策略、时间调度表、起始地址和访问属性;
c空间配置:
对该CPU板上的FLASHROM、RAM以及IO存储器的物理空间的起始地址和大小进行配置;对OS可访问的空间的访问属性进行配置;
第二步:在集成开发环境中针对第一步中的CPU板建立一个TA项目,并在该TA项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址和运行位置进行配置;
第三步:在集成开发环境中针对第一步中的CPU板建立一个KBSP项目,并在该KBSP项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
第四步:在集成开发环境中针对第一步中的CPU板建立一个应用项目,并在该应用项目中进行如下配置:
CPU配置:对CPU体系、类型和大小端进行配置;
链接配置:对第一步配置好的分区分别驻留在内存中的text、data和bss段的起始地址和大小进行配置;
映像配置:对第一步配置好的分区的加载地址和运行位置进行配置;
第五步:在上述四步建立的项目中各自源文件夹下,对根据系统需求和基于该CPU板的OS、TA、KBSP和应用源代码进行手工开发;
第六步:在集成开发环境中对上述五步已开发好的项目分别进行编译链接;
第七步:通过加载工具将第六步中编译链接好的二进制文件加载到飞控计算机基于某CPU硬件平台的板卡中;
第八步:基于第二个不同CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在第一个CPU板功能相同但实现方式不同的源代码;
第九步:基于第三个不同CPU板,重复第一到第七步,但在第五步应用源代码开发时,应开发与运行在第一、二个CPU板功能相同但实现方式不同的源代码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310144328.6A CN104123122A (zh) | 2013-04-24 | 2013-04-24 | 一种非相似三余度飞控计算机的非相似余度软件开发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310144328.6A CN104123122A (zh) | 2013-04-24 | 2013-04-24 | 一种非相似三余度飞控计算机的非相似余度软件开发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104123122A true CN104123122A (zh) | 2014-10-29 |
Family
ID=51768548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310144328.6A Pending CN104123122A (zh) | 2013-04-24 | 2013-04-24 | 一种非相似三余度飞控计算机的非相似余度软件开发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104123122A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176253A (zh) * | 2019-12-18 | 2020-05-19 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于蒙特卡洛的飞行控制律自动评估方法 |
CN112363385A (zh) * | 2020-09-30 | 2021-02-12 | 成都飞机工业(集团)有限责任公司 | 一种多余度发动机数字电子控制系统 |
CN112558461A (zh) * | 2021-02-25 | 2021-03-26 | 四川腾盾科技有限公司 | 一种多余度无人机飞机管理计算机输出信号表决方法 |
CN112783523A (zh) * | 2021-01-18 | 2021-05-11 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件空中加载方法 |
CN113377005A (zh) * | 2021-05-31 | 2021-09-10 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件的空中管控方法、系统、计算机程序及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4799159A (en) * | 1985-05-30 | 1989-01-17 | Honeywell Inc. | Digital automatic flight control system with disparate function monitoring |
CN202213715U (zh) * | 2011-09-02 | 2012-05-09 | 北京航空航天大学 | 一种民机的液压能源系统的多电配置 |
-
2013
- 2013-04-24 CN CN201310144328.6A patent/CN104123122A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4799159A (en) * | 1985-05-30 | 1989-01-17 | Honeywell Inc. | Digital automatic flight control system with disparate function monitoring |
CN202213715U (zh) * | 2011-09-02 | 2012-05-09 | 北京航空航天大学 | 一种民机的液压能源系统的多电配置 |
Non-Patent Citations (5)
Title |
---|
专业娱乐文档: ""μC_OS-II实验指导书"", 《豆丁网》 * |
秦旭东等: ""我国大型民机的非相似余度飞控计算机的研究"", 《大型飞机关键技术高层论坛暨中国航空学会2007年年会论文集》 * |
郭兵等: ""嵌入式应用软件开发环境DeltaOS/LambdaTool的设计与实现"", 《第十届全国抗恶劣环境计算机学术年会论文集》 * |
陈宗基等: ""非相似余度飞控计算机"", 《航空学报》 * |
韩炜: ""非相似容错计算机系统设计及其验证技术研究"", 《中国优秀博硕士学位论文全文数据库(博士) 信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176253A (zh) * | 2019-12-18 | 2020-05-19 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于蒙特卡洛的飞行控制律自动评估方法 |
CN111176253B (zh) * | 2019-12-18 | 2022-04-19 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于蒙特卡洛的飞行控制律自动评估方法 |
CN112363385A (zh) * | 2020-09-30 | 2021-02-12 | 成都飞机工业(集团)有限责任公司 | 一种多余度发动机数字电子控制系统 |
CN112783523A (zh) * | 2021-01-18 | 2021-05-11 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件空中加载方法 |
CN112783523B (zh) * | 2021-01-18 | 2024-07-23 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件空中加载方法 |
CN112558461A (zh) * | 2021-02-25 | 2021-03-26 | 四川腾盾科技有限公司 | 一种多余度无人机飞机管理计算机输出信号表决方法 |
CN112558461B (zh) * | 2021-02-25 | 2021-05-14 | 四川腾盾科技有限公司 | 一种多余度无人机飞机管理计算机输出信号表决方法 |
CN113377005A (zh) * | 2021-05-31 | 2021-09-10 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件的空中管控方法、系统、计算机程序及存储介质 |
CN113377005B (zh) * | 2021-05-31 | 2022-09-16 | 四川腾盾科技有限公司 | 一种多余度飞机管理计算机软件的空中管控方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104123122A (zh) | 一种非相似三余度飞控计算机的非相似余度软件开发方法 | |
US9678666B2 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
CA2680807C (en) | Method and systems for restarting a flight control system | |
CN102467402B (zh) | 有关网络设备选择性暂停的方法 | |
US10223094B2 (en) | Initializing a system on a chip | |
CN103218313B (zh) | 用于实现缓存描述符交互的方法和电子设备 | |
US10802998B2 (en) | Technologies for processor core soft-offlining | |
CN105740139B (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
CN104123123A (zh) | 一种非相似三余度飞控软件开发方法 | |
CN103425612A (zh) | 低功耗的皮卫星星载计算机系统 | |
CN103927279A (zh) | Fpga配置方法及系统、处理器 | |
EP2672388B1 (en) | Multi-processor parallel simulation method, system and scheduler | |
US20180307497A1 (en) | System and method of interactive splash screen in embedded environments | |
US9729305B2 (en) | Airplane system and control method thereof | |
JP2008282314A (ja) | シミュレータ、シミュレーション方法 | |
CN104866355A (zh) | 一种应用于ima系统的应用多态性设计方法 | |
US20150161062A1 (en) | Method, device and computer program for dynamic control of memory access distances in a numa type system | |
CN102141915B (zh) | 一种基于RTLinux的设备实时控制方法 | |
Hilbrich et al. | Deploying safety-critical applications on complex avionics hardware architectures | |
US9442831B1 (en) | Automated testing of program code for processing a simple boot flag data structure | |
KR101376690B1 (ko) | 다기종 비행 시뮬레이터의 다중 프로세서 시스템 및 그 제어 방법 | |
US8849647B2 (en) | Dual-firmware for next generation emulation | |
US20190332407A1 (en) | I/o emulation with abortion in virtualized environments | |
US10261817B2 (en) | System on a chip and method for a controller supported virtual machine monitor | |
Delange et al. | Design and analysis of multi-core architecture for cyber-physical systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141029 |