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