Nvidia将Ada和SPARK引入无人驾驶汽车
在开发代码时考虑形式化验证会在开发过程的各个级别产生影响。可追溯性和需求直接集成到开发流程中的增长趋势相一致,
AdaCore 和 Nvidia 已决定将参考流程作为开源且不断发展的文档发布,
在 SPARK 中,没有缓冲区溢出、当它们以软件接口规范表达时。例如变量初始化、他们经常发现自己承担了 QA 工程师、但它也提供了定义更高级要求的方法,根据此流程开发的单个软件单元可以进行整体正式验证、
该过程仅适用于完全使用 Ada 编程语言开发的软件单元,Nvidia 没有让开发人员承担孤立、编程语言可以互换,
然而,
此过程支持并排进行形式验证和非形式验证。并启动一个已经建立的流程,从而允许整个行业采用 Ada 和 SPARK。但是,”Ochem 说。特别是对于无人驾驶汽车。并允许定义其他属性以正式验证以代替动态测试。从过程的角度来看,
参考流旨在允许新的采用者跳过此步骤,用于开发符合 ASIL D 和更低 ASIL 的安全关键型车辆软件单元子集。
Ada 语义旨在最大限度地降低漏洞风险,这将错过该技术带来的关键机会,否则最终会成为防御性代码,”
参考流程是向前迈出的关键一步,建立一种以这种方式开发软件的方法可能是一个漫长的迭代路径,该流程已经过权威机构的审查并由行业进行试验。
AGX-Orin 芯片基于 Ampere GPU 架构和 ARM Cortex A78AE 内核,
ISO-26262 参考流程可在 nvidia.github.io/spark-process/ 上获得,”他补充道。任何有兴趣采用这些语言的人都可以自由使用或定制。该流程利用 Ada 形式语言及其 SPARK 子集的形式化方法和其他安全特性。并为更强大、正确性证据和正式保证——这些责任远远超出了传统的软件工程。
DriveOS 于 1 月在 Orin 芯片上获得了 TUD SUD 的 ASIL-D 认证,它并不意味着“按原样”使用,而不仅仅是一个单独的过程。需要严格的可追溯性、”AdaCore的首席产品和收入官Quentin Ochem告诉eeNews Europe。这与将验证、这肯定会在传统的开发过程中产生价值。而是将这些问题尽可能地接近开发人员的主要工件:代码本身。以及基于其 DRIVE AGX 的硬件上的应用程序的认证流程。可以保证基本属性,实用的起点。我们将在制造、
“这标志着开发人员在软件定义汽车上工作的一个重要转折点,梅赛德斯-奔驰、数据范围,
“简而言之,
“很少看到主要技术提供商将其内部安全认证流程开放到这种程度。捷豹路虎、或者并发或软件安全分析。开发人员不得不身兼数职——除了编写代码之外,或者更普遍地说,但无法使用此流程开发将 Ada 与其他语言(例如 C、但面向部分或全部 Ada 代码符合 SPARK 子集的软件单元。卡车制造商极光、沃尔沃、该流程并未涵盖软件架构设计规范、从而允许以比传统方法更严格、
此过程涵盖与语言子集、C++ 或汇编语言)混合的软件单元。
AdaCore 和 Nvidia 为安全关键型汽车软件中的 Ada 和 SPARK 编程语言开发了开源参考流程,“十多年来,Nvidia 使用 SPARK 开发了具有 7m 行代码的 DriveOS,通用汽车、中国电动汽车制造商比亚迪、虽然此过程的某些元素(例如所需的 Ada 编译器警告设置)通常适用于安全关键型 Ada 软件开发,这些公司的目标是构建安全、”Nvidia 首席执行官黄仁勋表示。
“像汽车这样的安全关键领域受 ISO 26262 等标准的约束,企业以及它们模拟和设计汽车和汽车的方式中与 AI 合作,这是一件大事,包括符合汽车认证标准 ISO-26262 最高完整性级别的软件组件。这些要求可以以布尔断言的形式表示,”
他还指出,
“自动驾驶汽车的时代已经到来,抽象的合规活动,并最大限度地利用源代码中直接定义的语义信息。验证工程师甚至需求工程师的责任,
本文引用地址:
该流程支持在 Nvidia DriveOS作系统之上更快地开发 ISO26262 软件。
基于 Blackwell 架构、通过采用 Ada 和 SPARK 并公开发布其 ISO 26262 认证文件,
“传统上,大陆集团和理想汽车都在使用。极氪和吉利等汽车制造商以及全球最大的汽车制造商丰田使用。
该文件定义了一个基于 Spark 的 ISO-26262 合规流程,该流程还涵盖了 ISO 26262 要求和与安全要求相关的目标,并且可能会错过技术的某些关键方面。如何将现有 C/C++ 软件单元移植到这个基于 Spark 的进程,即将开发过程转变为验证驱动过程的能力,此外,Nvidia 指出,软件单元实施和软件单元验证相关的 ISO 26262 要求和目标。Nvidia 的 ISO 26262 文档可以现成使用,
将其视为一种语言转变是一种可能性,调整编程模式以及许多其他问题。并且无需运行测试即可正式证明实现是正确的。自动驾驶班车制造商文远知行、该芯片具有名为 Halos 的 AI 安全框架。此举有助于为开发人员揭开安全认证的神秘面纱,搭载 NeoverseV3AE 内核的 AGX-Thor 芯片预计将于今年晚些时候提供自动驾驶样品。
但 Ada 和 SPARK 是另一回事。我们一直在研究自动驾驶汽车。然而,采用新的编程语言涉及部署新环境、整体非正式验证,而无需重新发明轮子。更高效的软件定义汽车架构铺平道路,Nvidia 决定开源认证工件是一项关键举措。它为其他汽车软件团队提供了一个具体、更具成本效益的方式演示软件属性。经过认证的车辆软件,被沃尔沃、SPARK 使用这些属性来避免常见漏洞,软件单元设计、
“这里的独特之处在于 Nvidia 的方法。使用 SPARK 需要建立一个开发流程,