航天
航空
核工业
船舶
兵器
军事电子
综合
可靠性
仪器仪表
自动化
电子元器件
电容器、LC滤波器 电阻器、电位器 PCB电路板 真空电子器件 连接器 二极管、晶体管半导体 集成电路和微电子组件 LED系列产品 光电器件 光学材料与光电元器件 继电器 电感元件 集成电路和微电子组件 频率控制和频率选择元件 电子设备用机电元件 电子材料 广播电视制作、播出、发射和传输设备 其它
传感器
光纤传感器 光电传感器 压力传感器 热学量传感器 物位测量系列 声学量传感器 流量传感器 湿度传感器 气体传感器 电学量传感器 速度传感器 力传感器 位置传感器 位移传感器 光学量传感器 加速度传感器 尺度传感器 磁学量传感器 其它传感器
电工器材
电线、电缆 开关电线 插头、插座 电动机 绝缘材料 低压电器 高压电器 防雷及电涌保护器 室内外照明设备 便携式照明设备 灯泡、灯座、整流器 其他
电源
EPS消防应急电源 UPS不间断电源 稳压电源 变频电源 净化电源 特种电源 发电机组 开关电源(AC/DC) 逆变电源(DC/AC) 模块电源(DC/DC) 电池 其它电源产品
通用机械
轴承 密封件 紧固件、连接件 弹簧 泵及真空设备 阀门 齿轮、蜗杆、链传动件 减速箱 气动元件 液压元件 过滤件 工业皮带 清洗、清理设备 制冷设备 电热设备 涂装设备 仓储设备 干燥设备 混合设备 其它未分类
行业设备
机床 机床配附件 塑料机械 包装设备 电焊、切割设备 印刷设备 环保设备 焊接材料与附件 电子产品制造设备 化工设备 铸造及热处理设备 冶炼设备 橡胶机械 玻璃加工设备 试验机 储运设备 过滤设备 空气净化装置 检测设备 安全、防护、消防设备 其它
当前位置:技术 » 可靠性技术 » 正文

高可靠性飞行代码的自动化验证技术

点击图片查看原图
  • 发布日期:2016-12-12 17:32
  • 有效期至:长期有效
  • 技术区域:广东湛江市
  • 浏览次数640
  • 留言咨询
 
详细说明

从仿真模型自动生成代码是基于模型设计中的关键开发环节,可实质性地减少开发团队手写代码所花费的时间和工作量。要想成功开发高性能的嵌入式系统,就必须生成非常高效的代码。代码效率目标包括内存使用的最小化和执行速度的最大化。要想成功部署军用和国防系统,还需要严格的代码验证能力。代码验证目标包括需求符合性和标准符合性。

本文介绍如何使用2011b版MATLAB和Simulink产品系列(包括用于飞行代码生成的Embedded Coder)测量代码效率和进行代码验证。所讨论的开发和验证活动用于满足DO-178B和DO-178C要求,同时也用于满足与DO-178C更新一同发布的基于模型的开发和验证的补充说明。本文并非介绍产品系列中的每个工具或DO-178标准的所有条款;恰恰相反,本文关注的重点是新技术。

Qualification Kit可用于本文介绍的验证工具。

源代码评估

1. 代码效率

代码效率指标分为两个广泛的类别。第一个测量RAM、ROM的内存使用率和堆栈大小;第二个测量执行周期计数或速度。Embedded Coder在生成代码后生成代码指标报告,从而帮助软件工程师分析和优化所生成代码的内存占用率。此报告可根据源代码的静态分析和对目标硬件特性的了解(如整型字长)显示各行代码、全局RAM和堆栈大小。分析是静态的,因为它并不考虑交叉编译和代码执行。这样,工程师可以快速的根据源代码优化内存使用率,例如,通过尝试不同的数据类型或修改模型中的逻辑。但是,接下来的分析和优化阶段将需要完整的嵌入式工具链来进行板上内存利用和执行时间评估,如下文中的可执行目标代码评估中所述(图1)。

图 1:静态代码指标报告.JPG


图 1:静态代码指标报告 。

2. 代码验证

源代码验证很大程度上依赖于代码审查和需求可追溯性分析。MathWorks的新产品Simulink Code Inspector可对生成的源代码自动执行结构化分析并评估代码是否符合详细设计(low-level

requirements)模型。该检查可检测每一行代码在模型中是否都具有相应的元素或模块。同样,它还可以检测模型中的元素以确定它们在结构上是否相当于生成代码中的操作、运算符和数据。然后,它会生成详细的模型到代码和代码到模型的可追溯性分析报告(图2)。

图 2:Simulink Code Inspector 报告.JPG


图 2:Simulink Code Inspector 报告。

其他源代码验证活动包括确保符合行业代码标准(如MISRA AC AGC:有关在自动代码生成过程中应用MISRA-C:2004的指南)。借助R2011a版,Embedded Coder允许开发人员基于MISRA-C标准影响代码生成器的输出。这样MISRA-C分析工具就可以应用于代码检查。例如,Polyspace代码验证产品可分析MISRA AC AGC和MISRA-C:2004代码。Polyspace还可检测代码是否具有除零和数组超出边界条件等运行时错误。Simulink Code Inspector结合Polyspace,可用于处理DO-178表A5中的所有涉及源代码分析的代码验证目标。最差情形执行时间等目标将需要使用可执行目标代码以及如下所述的其它技术和工具(图3)。

图 3:MISRA_C:2004 代码生成目标规格.JPG


图 3:MISRA-C:2004 代码生成目标规格。

可执行目标代码评估

1. 代码效率

Simulink通过使用软件在回路(SIL)和处理器在回路(PIL)测试进行评估分析来支持可执行目标代码验证。借助SIL测试,可对生成的代码进行编译并在主机上运行,以便使用Simulink作为测试装置提供的测试数据进行代码执行的快速评估。通过PIL测试,可将生成的代码交叉编译成可执行目标代码(EOC),并且在真正的飞行处理器或指令集模拟器上运行,同样使用Simulink作为在环测试装置。

对于任何使用可定制API和参考实现的嵌入式处理器的裸机或实时操作系统执行,Embedded Coder 都支持处理器在回路(PIL)测试。有这样一个示例可供观看和下载,这个示例中用到Green Hills MULTI IDE和用于Freescale MPC8620处理器的Integrity RTOS(图4)。



图 4:使用 PIL 测试验证可执行目标代码.JPG

 


图 4:使用 PIL 测试验证可执行目标代码。

代码特性执行报告在PIL测试过程中生成,用于评估瓶颈和优化设计,例如使用代码替换技术,这项技术以单指令/多数据(SIMD)和Intel集成性能基元(IPP)优化代替默认的ANSI/ISO C自动生成代码。MATLAB可基于代码特性执行数据生成图形,以便将来进行分析。DO-178和相关标准要求在复杂飞行硬件上验证复杂飞行软件,使PIL测试成为高完整性系统的关键验证环节(图5)。

图 5:使用 MATLAB 对执行周期进行特性分析.JPG


图 5:使用 MATLAB 对执行周期进行特性分析。

2. 代码验证

借助基于模型的设计,可将用于验证模型的同样基于需求的仿真测试用例重用于SIL和PIL测试。工程师可应用模型仿真中使用的相同输入数据,然后使用Simulink Data Inspector工具将SIL和 PIL测试结果与模型仿真结果进行比较,以确定它们在数值上是否相等(图6)。

图 6:使用 Simulation Data Inspector 比较仿真和 PIL 测试结果.JPG


图 6:使用 Simulation Data Inspector 比较仿真和 PIL 测试结果。

DO-178B还需要进行软件的结构覆盖率分析,包括修正的判定覆盖率(MC/DC),以评估代码在测试过程中是否完全被执行。模型覆盖率分析是模型级的类似概念,它通过Simulink Verification and Validation工具实现,用于评估模型是否已完全测试。总的来说,模型和代码覆盖率分析可检测设计、实现和测试中的潜在错误。Simulink Verification and Validation可提供模型覆盖率分析功能。在R2011b版中,Embedded Coder与LDRA Testbed集成在一起,从而支持代码覆盖率分析和其他DO-178工作流程。

总之,基于模型的设计可实现自动生成既高效又能够在模型、源代码和可执行目标代码级别轻松进行验证的飞行代码。通过将开发和验证集中在Simulink模型和仿真测试用例上这种方式可以使模型和测试用例得到重用,并有助于满足DO-178B和DO-178C软件目标,这样企业可极大地降低成本并缩短产品上市时间。集成和已发布的API可通过DO-178开发项目中使用的第三方工具实现整体解决方案。为补充这些软件开发过程改进,Simulink在与MathWorks产品搭配使用以进行系统物理建模、硬件在环(HIL)测试和FPGA的HDL代码生成时,通过其对系统工程和相关标准(例如,ARP 4754)以及硬件开发和相关标准(例如,DO-254)的支持提供了附加优势。

图 7:使用 Simulink 模型覆盖率分析工具和 LDRA Testbed 测量模型和代码覆盖率.JPG


图 7:使用 Simulink 模型覆盖率分析工具和 LDRA Testbed 测量模型和代码覆盖率。

 
0条 [查看全部]  相关评论

公司信息







该企业最新技术
在线客服

0759-2216160

© 2008-2017 运营商: 湛江市东龙网络科技有限公司 国防科技网 www.81tech.com 广东通信管理局备案:粤ICP备13001948号-2
全国公安机关 备案信息 可信网站不良举报 文明转播