RVS — 嵌入式软件分析套件

[复制链接]
查看669 | 回复0 | 2020-10-13 14:43:19 | 显示全部楼层 |阅读模式
      随着芯片产业日新月异,汽车行业也不断更新迭代整车电子电气系统的各项技术。在过去的四十年中,整车上的控制器数量快速增长,却仍不能满足愈发多样、复杂的功能设计对硬件的需求。控制器架构精简、集成逐渐成为了未来的发展方向,域控制器等概念逐步走进了业界,ISO-26262等标准也应运而生,为控制器系统的研发方法及规范提出一系列要求。这些潮流在一方面降低了控制器及线束等原料成本,规范了开发方法,提高了开发质量;但另一方面,越来越高的功能集成度、越来越复杂的嵌入式芯片以及高标准的开发要求也给开发工作带来了诸多挑战,例如:
1.如何评估代码对硬件资源的使用情况?
2.如何评估控制器在复杂工况下的运行情况?
3.如何高效管理代码测试用例和测试过程?
4.如何评估代码覆盖度?
5.如何定位、解决代码中非功能性的问题?
6.如何让嵌入式软件研发流程符合高ASIL标准的要求?
7.......
        Rapita公司推出的Rapita Verification Suite(以下简称为RVS)是一款包含多种嵌入式软件分析工具的套件,能够提供嵌入式代码测试过程管理、代码覆盖度分析、时间性能分析、任务调度分析等功能,并且拥有配套的数据记录仪RTBx。RVS能够提供一套易于部署、易于使用且行之有效的嵌入式软件分析解决方案。同时,我们也提供目标集成、ISO-26262认证、使用培训和日常技术支持等服务,为RVS工具套件的使用及嵌入式软件研发项目的推进提供有力支撑。
        产品介绍
      •  RapiTime
         ♦  计算最差情况执行时间(WCET)和执行时间高水位值
         ♦  快速识别待优化的代码
         ♦  可支持单核、多核目标芯片的分析

        RapiTime可计算目标嵌入式软件的最差情况执行时间和高水位时间等时序指标,由此帮助开发人员定位待优化代码,以及生成功能安全认证流程所需的证据。借助先进、高效的可配置式目标代码插桩技术,RapiTime可以广泛应用于各种复杂的目标硬件系统,例如多核心嵌入式系统等。

      •  RapiTask
         ♦  可图像化展示系统调度情况
         ♦  高亮展示少见的时序事件,例如竞争条件
         ♦  识别CPU负载问题
        RapiTask可将嵌入式操作系统的调度情况进行还原,通过生成甘特图及各类统计图表,辅助开发人员理解多核心和多线程嵌入式系统的调度行为,识别时序相关问题,根据CPU负载情况评估系统可拓展性。对于传统测试过程中出现的功能异常、控制器非预期复位等问题,借助RapiTask也可以快速还原异常工况,定位问题根源。
      •  RapiCover:
         ♦  代码覆盖率测试可支持至MC/DC测试标准
         ♦  极低的目标硬件额外开销
         ♦  可合并复数个测试的覆盖率结果
       RapiCover是一款目标硬件额外开销极低的结构化代码覆盖度分析工具。通过高效、可配置的目标代码插桩工序,RapiCover可支持包括MC/DC覆盖度测试在内的多种覆盖度测试标准,帮助开发人员全方位评估代码覆盖度情况,并能将结果导出到报告中以供认证流程的使用。
      •  RapiTest:
         ♦  支持单元、集成与系统测试的管理
         ♦  可在目标硬件或上位机上应用执行测试用例
         ♦  维护测试用例和测试需求之间的可追溯性
        RapiTest提供各种强大的测试编写格式,帮助开发人员管理测试用例及测试需求,并可以实现测试用例的自动注入和运行,提高测试开发和执行过程的效率。
      •  RTBx:
         ♦  可持续多天保持每秒跟踪100多万条事件记录
         ♦  极低的代码插桩开销
        RTBx可以以极高的速率从目标嵌入式硬件中采集跟踪数据。且具有可自定义,低开销的插桩代码库和易于使用的网络界面。
      多核系统解决方案
        相较于传统的单核嵌入式系统,多核系统的难点在于如何评估核心间代码的相互影响。运算任务的分配、核心间的通信模式与同步模式、公共资源的分配等细节都会影响整个多核系统的性能,不恰当的软件实现方法不仅不能有效利用多核心带来的算力提升,甚至可能对功能实现造成负面影响。
        结合RVS工具的先进性与工程师的专业知识,我们提供多核系统解决方案:对目标多核系统和目标代码进行细致分析,得出各核心代码之间存在的各种干扰渠道。在RapiTest中有针对性地编写测试用例,并借助RapiDaemons对这些干扰行为进行量化,通过RapiTask和RapiTime生成测试结果,最终对测试结果进行分析,得到代码的实际性能数据与各类干扰行为的具体影响,从而评估代码实现的效果,并为后续改进优化提供参考。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则