安全到达某个地方不仅仅取决于良好的刹车、正常工作的尾灯和方向盘后反应灵敏的人。越来越多地,让你的汽车在路上行驶和让你的飞机在空中飞行的部件不仅是人类,甚至只是机械。它们是在复杂的异构多核处理器上运行的复杂嵌入式软件,控制从飞行管理系统到动力转向的一切,并执行以微秒为单位的严格计时期限。
挑战就在这里。多核系统中软件的时序行为不仅受其上运行的软件及其输入的影响,还受运行在其他内核上的其他软件的影响。
开发关键的嵌入式系统需要付出巨大的努力和投资(数百万欧元/美元和多年的工程努力)。从软件开发过程的初阶段开始,安全就必须成为架构和设计的。特别是,系统设计人员必须了解其软件的时序行为,以确保它可以在安全的时间范围内执行。
解决多核时序分析 (MTA) 难题
尽管多核处理器强大的计算能力应该(理论上)使嵌入式系统更加强大和高效,但在一个内核上执行的软件会减慢在其他内核上运行的软件的执行速度。在这种情况下,由于与在其他内核上运行的任务共享的总线、内存、缓存、设备、FPGA 和 GPU 等共享资源争用造成的干扰,软件可能需要更长时间才能执行。
您如何量化这种干扰的影响?您如何分析、测试并提供具体证据证明您的安全关键软件在多核平台上运行时始终可以在其时限期限内执行?
巴塞罗那超级计算中心(BSC)、Rapita Systems Ltd (RPT)、Raytheon Technologies (RTRC) 和Marelli Europe (MAR)的多年来一直在研究这些问题的答案。BSC 和 Rapita 一直在开发一种解决方案,该解决方案很快将在航空航天和汽车行业推广。的工具和自动化,与基于需求、以安全为中心的方法相结合,是解决难题的关键。
这项工作构成了MASTECS 项目的基础,该项目是一个由欧盟委员会资助并于 2019 年 12 月启动的多学科研发项目。MASTECS 项目将使技术成熟并支持它们用于航空电子设备和汽车系统的。MASTECS 项目的一个关键部分是通过 RTRC 和 MAR 部署的研究在两个行业中展示该方法。
的工具
支持时序分析的商用工具对简单(单核)电子产品有效,但无法扩展以满足新颖的多核特定要求和建议。
据我们所知,市场上没有任何商业工具可用,除了 MASTECS 中成熟的工具,它能够分析多核平台上的软件时序,重点关注适用的安全标准和新兴的要求。
干扰分析与控制在行动
理解干扰的关键是结构化测试方法,使用硬件和软件来提供有关多核时序行为的证据。BSC 的一项专门技术(称为多核微基准技术或 MμBT,由 Rapita 商业化为 RapiDaemons)允许系统设计人员通过创建额外的干扰场景来对多核应用程序的不同部分进行压力测试,从而分析和量化干扰在基于多核应用程序中的影响多核处理器。
微基准测试是 MuBT 的,是精心设计的代码片段,它们在硬件和软件之间的接口上运行,以强调特定的共享资源。微基准测试揭示了干扰通道对软件时序的影响。为此,可以部署微基准测试以对特定应用程序造成可配置和可量化的压力。微基准专门设计用于展示单一、明确定义的行为,对特定硬件资源具有预期影响,同时尽可能防止在其他干扰通道上产生争用。微基准测试主要功能包括以下内容:
点击查看大图
图 1:在干扰分析中使用微基准。()
已经开发出范围广泛的微基准以发挥特定作用,包括匹配所需的干扰水平、化资源干扰,或者只是对争用非常敏感(“受害者”)。
在分析干扰影响时,MμBT 的使用得到了任务竞争模型 (TCM) 的支持,该模型提供了任务可能遭受的竞争延迟的早期估计。Rapita 开发的软件自动化和测试工具 RapiTest 和 RapiTime 用于编写测试并在嵌入式目标上运行它们。
设计方法
通过遵循标准软件“V”开发流程(图 2)的七步测试设计流程,工程师可以更全面地了解干扰的影响。
点击查看大图
图 2:V 模型软件开发过程中的 MTA 步骤。()
注入硬件(多核)知识是拟议的 MTA 方法在现代复杂多核上取得成功的关键特征。在早期软件开发阶段:
在后期设计阶段:
点击查看大图
图 3:分析结果 (RapiTime)。()
7 步测试设计过程只是图 2 前面所示的更广泛的多核验证方法的一部分。这种方法将作为 MASTECS 项目的一部分继续成熟,旨在通过全面的证据和结果返回到相应的要求和设计。该方法旨在满足航空航天机构发布的关键指导文件 CAST-32A 中定义的目标。它还特别符合 ISO 26262,这是汽车行业的安全标准,提倡不受干扰。
CAST-32A 由机构软件团队 (CAST) 于 2016 年发布,确定了影响在多核处理器上执行的机载软件系统的安全性、性能和完整性的因素。如果您想在航空电子系统中使用多核硬件,这是文档。它提供了旨在指导安全多核航空电子系统生产的目标,包括与识别和限制干扰信道影响相关的目标。在此处查看 CAST-32A 立场文件。EASA 和 FAA 正在努力将多核通用 CRI 改编成通用的 AMC/AC 材料 (AMC 20-193)。预计将在“今年晚些时候”出版 [3]。
干扰效应很复杂。要解开它们的谜团,您需要了解多核架构组件以及软件中的调度和资源分配系统的。硬件和软件之间的协作将成为 MASTECS 项目的特征,因为它会持续到未来。但是,虽然协作导致软件工具和自动化取得长足进步,但请务必记住,您无法自动化验证过程的每一步——尤其是在涉及多核时序分析时。
您需要对系统有详细了解的经验丰富的工程师。例如,在早期阶段,多核可以识别决定软件功能和时序行为的处理器配置(也称为硬件关键配置设置),以及潜在的干扰通道。在分析测试结果时,经验丰富的人类重新审视和评估对平台的原始假设,并利用他们的知识进入新的测试周期,没有什么比这更好的了。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。