自动驾驶汽车 SoC 功能安全设计的一些思考

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:

做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是系统思考、大胆设计、小心求证;三是“一张纸制度”,也就是无论多么复杂的工作内容,要在一张纸上描述清楚;四是要坚决反对虎头蛇尾,反对繁文缛节,反对老好人主义。

一直很喜欢发小老李QQ签名那句话—生活如逆水行舟,不进则退。农村做题家出来的汉子,我可能已经不具备享受快乐的权力,只有做个躬行的卒子,一步一个脚印往前走。

中年男人尽量避免陷入历史虚无主义,自己无需问“人活着为了什么?”,做自己该做之事,七八月只管播种,到了十一二月收获季节,自有收获。

一、背景信息

随着汽车产业向智能化、网联化深度转型,自动驾驶技术正从概念走向规模化应用。车辆架构也逐步摒弃传统分布式控制模式,转向更高效的集中式域处理架构,域处理器已成为决定自动驾驶体验与安全的核心关键部件。自动驾驶、车联网等场景对人工智能算法的依赖,以及密集型计算需求,要求系统级芯片(SoC)必须针对特定应用场景进行深度优化。为此,越来越多汽车制造商选择自主开展芯片设计与验证,以在满足严格功耗、性能和面积(PPA)要求的前提下,实现定制化功能。

自动驾驶技术商业化的最大障碍并非技术本身,而是公众信任的建立。要赢得这份信任,必须通过严苛的安全标准与认证来证明产品的安全性和可靠性。功能安全作为汽车电气电子系统安全的核心保障体系,已成为自动驾驶 SoC 设计的重中之重。本文将围绕自动驾驶汽车 SoC 功能安全设计展开深入探讨,解析 ISO 26262 标准要求,阐述随机硬件故障应对的关键流程,以及先进验证技术在功能安全实现中的应用。

二、功能安全核心概念与 ISO 26262 标准框架

1、功能安全定义与核心目标

功能安全的核心目标是降低因电气电子元器件失效导致的系统故障风险,确保在元器件发生故障时,系统仍能保持安全状态或实现安全失效。在自动驾驶场景中,SoC 作为核心计算单元,其任何故障都可能引发严重安全事故,因此功能安全设计不仅是技术要求,更是法律与伦理责任的体现。

汽车行业的功能安全要求已在 ISO 26262 标准中形成明确规范,该标准涵盖了从系统设计到运维的全生命周期安全要求,代表了汽车电子设备安全性的先进技术水平。对于面临高额责任诉讼风险的汽车制造商和供应商而言,符合 ISO 26262 标准已成为市场准入的必备条件。

2、两类核心故障—系统性故障与随机硬件故障

系统性故障是指导致集成电路无法按产品规格正常运行的可预测故障,主要源于设计缺陷、软硬件接口不兼容、规范解释错误或不完整、制造工艺缺陷等。集成电路行业在长期发展中已积累了丰富的系统性故障应对经验,形成了成熟的工具链与流程体系。

随机硬件故障则是不可预测的,其发生概率会随 IC 运行时间推移而增加,主要诱因包括电磁干扰(EMI)、电迁移、元器件老化等,可能表现为永久性故障或瞬态故障。自动驾驶行业在随机硬件故障的检测、诊断与容错方面缺乏成熟经验,而这类故障直接威胁驾驶安全,因此成为 SoC 功能安全设计的重点与难点。ISO 26262 标准明确要求,自动驾驶 SoC 必须具备持续运行能力,或在发生随机硬件故障时能够安全失效。

3、随机硬件故障应对的四大关键流程

为确保 SoC 在随机硬件故障场景下实现安全失效,ISO 26262 标准要求遵循四大关键流程,形成闭环管理体系。这四大流程相互关联、层层递进,每一步的输出结果都将为下一步提供指导,是构建安全可靠 SoC 设计的核心框架。

-> 生命周期管理

生命周期管理涵盖功能安全从规划到合规认证的全流程,包括变更与配置管理、项目管理、需求管理、质量保证以及审核与合规性管理等核心环节。在传统设计模式中,许多企业依赖工程师手动跟踪和收集设计变更、测试结果、安全指标等关键数据,这种方式不仅效率低下,还容易引入人为错误,且无法实现数据间的有效关联,导致可追溯性极差。

随着自动驾驶 SoC 复杂度指数级增长,手动管理模式已完全无法满足需求。应用生命周期管理(ALM)软件的出现解决了这一痛点,通过自动化工具实现设计需求与合规性的全流程跟踪管理。ALM 工具支持需求驱动的验证流程,能够整合从测试计划到合规认证的全生命周期数据,将 FMEDA(失效模式和影响诊断分析)结果与安全验证指标相关联,实现各团队间的高效协作与数据共享,大幅提升合规性管理效率,消除手动数据收集的耗时与误差。

-> 安全分析

安全分析是功能安全实现的基础环节,其核心目标是明确设计在随机硬件故障下的失效模式与影响,为后续安全设计提供依据。安全分析主要包括三个关键步骤:

第一是 FMEDA 分析,作为专家驱动的自上而下分析方法,FMEDA 能够系统识别设计中的潜伏失效模式、计算失效率、评估每种失效模式对系统功能的影响,以及自动化诊断工具捕获该失效模式的概率。尽管 FMEDA 是功能安全分析的核心工作产品,但由于其依赖专家经验,仍存在人为错误风险。

第二是基础失效率(FIT)计算,通过量化元器件的失效概率,为安全指标设定提供数据支撑。同时,安全分析还需估算单点故障指标(SPFM)、潜伏故障指标(LFM)等关键安全参数,这些指标将作为安全设计的目标基准。

第三是安全探索与差距分析,设计人员通过评估不同安全架构的可行性,确定需要提升安全性的关键区域,明确实现安全目标所需的安全增强措施。安全探索的输出结果包括硬件与软件安全机制清单,以及用于指导安全验证的故障列表,为后续设计与验证工作提供明确方向。

安全分析应在设计的结构层面开展,这一层次的分析能够生成更准确的数据,更好地匹配最终安全验证结果,从而提高安全 IC 设计一次成功率,避免昂贵且耗时的设计迭代。

4、安全设计是插入安全机制实现故障防护

安全设计阶段的核心任务是根据安全分析结果,在设计中插入针对性的安全机制,以减少随机硬件故障导致的潜伏失效风险,确保系统在故障发生时能够正常运行或安全失效。记忆供应商提供了完整的安全设计解决方案,涵盖从 RTL 级到系统级的安全机制插入与优化。

在 RTL 设计阶段,可通过安全综合工具自动插入运行时设计强化技术,包括纠错码(ECC)、循环冗余校验(CRC)、奇偶校验、重复执行与复制等硬件安全机制,这些机制能够直接应对永久和瞬态单点故障,实现故障的实时检测与纠正。

在电路级设计中,可通过 Tessent 工具插入逻辑内建自测试(LBIST)和存储器内建自测试(MBIST)结构,并配置 MissionMode 控制器,使这些测试机制能够在汽车运行过程中按需激活,及时识别现场发生的潜伏故障,提升芯片长期安全性与可靠性。

自动化安全设计工具为行业带来多重价值:一是大幅减少工程师在重复性工作上的时间投入,使其能够专注于芯片差异化功能开发;二是简化第三方 IP 或机器生成代码等未知架构模块的安全机制插入流程;三是确保不同团队、不同个人在安全机制实现上的一致性;四是加速传统 IP 的功能安全升级,尤其适用于无法联系原始设计人员的场景。

5、安全验证通过故障注入验证安全指标

安全验证是功能安全设计的闭环环节,通过故障注入等手段验证安全机制的有效性,确保设计满足预设安全指标。安全验证的核心指标包括单点故障指标(SPFM)、潜伏故障指标(LFM)和诊断覆盖率(DC),这些指标需通过严格测试得到确认。

故障优化解决验证复杂度难题,自动驾驶 SoC 的高度复杂性给安全验证带来巨大挑战。在 RTL 级别,IC 设计的节点、寄存器和端口数量已十分庞大,而门电路级网表的故障数量更是高达数百万个,若考虑潜伏故障,验证规模将进一步扩大。为将仿真时间控制在合理范围,必须采用故障优化技术缩小验证范围。

故障抽样是常用的优化方法,通过随机选择数千个故障样本进行测试,可显著减少需激活的故障数量。但对于安全关键组件,这种方法无法保证验证的全面性,因此需要更先进的优化技术。

形式验证作为一种基于数学推理的验证方法,能够有效解决安全关键组件的全面验证问题。形式验证将设计转化为布尔表达式,通过分析信号的 “影响锥”(COI),自动修剪结构上安全的故障,仅保留可能影响系统安全的关键故障。这种方法不仅能大幅减少验证故障数量,还能确保安全关键组件的全面验证,避免仿真验证的能力瓶颈。形式验证采用 “宽度优先” 原则,自动遍历所有可能的输入条件与状态空间,生成最坏情况的安全指标,为安全关键模块提供最严格的验证保障。

6、故障注入验证的多元实现路径

故障注入是安全验证的核心手段,通过在设计中主动注入故障,观察系统响应,验证安全机制的有效性。根据验证阶段与实现方式的不同,故障注入主要分为以下三类:

数字故障仿真适用于 RTL 级和门电路级验证,能够快速模拟各类数字电路故障;混合信号故障仿真则用于同时包含数字与模拟模块的 SoC 设计,确保模拟电路故障不会影响系统安全;故障仿真则通过硬件平台实现故障注入,适用于更接近实际运行环境的验证场景。

硬件加速仿真技术的应用大幅提升了故障注入验证的效率。硬件加速器以兆赫(MHz)级速度执行测试,比传统软件仿真快数个数量级,能够在硅片制造前就开展系统级验证。其优势不仅在于速度提升,还能提供全面的硬件设计可见性,支持安全关键型汽车应用的故障注入、实时监控与结果分析。硬件加速仿真无需改变现有设计流程,支持 IP 级和 SoC 级的故障注入测试,即使在满软件负载情况下也能稳定运行,为供应链各环节的协同开发提供了灵活支撑。

三、全车验证:从组件安全到系统安全

随着自动驾驶级别从 L1 向 L5 演进,需要验证的潜伏场景数量激增至数百万个。据估算,要全面验证自动驾驶汽车的安全性,需要累计超过 80 亿英里的路测里程,仅依靠实车测试完全不具备可行性。因此,在设计早期采用虚拟测试环境,实现 “左移” 验证已成为行业共识。

硬件加速仿真支持模型在环(MIL)、软件在环(SIL)和硬件在环(HIL)的全流程验证,通过集成传感器仿真、机电仿真等模块,在没有实际芯片或车辆硬件的情况下,构建完整的虚拟测试环境。该环境主要由三部分构成:

传感器仿真正对激光雷达、雷达、摄像头等关键传感器,基于物理特性生成仿真数据,并模拟交通模式与 V2X 通信,全面测试自动驾驶平台的环境感知能力;硬件加速器提供强大的计算支撑,以 MHz 级速度运行 SoC 设计,还原真实芯片的信号处理过程,为工程师提供清晰的设计可见性;机电仿真器则生成转向、制动、传动系统的执行器数据,通过多物理特性模型库准确模拟热、液压、气动等系统行为,使被测设计能够在虚拟环境中实现真实车辆的各项操作。

这种全方位的虚拟验证环境,使芯片设计人员能够在设计早期就开展系统级验证,提前发现并解决潜在安全问题,大幅降低后期整改成本。

1、自动驾驶 SoC 功能安全设计的趋势与挑战

自动驾驶技术的演进对 SoC 提出了更高要求:全新架构设计需在满足 PPA 要求的同时,支撑海量数据的实时处理;极端环境下的高可靠性成为核心指标,要求 SoC 在恶劣工况下仍能保持近乎理想的运行精度,且使用寿命远超传统消费电子芯片。

功能安全标准的要求也在不断升级,安全关键 IC 的目标缺陷率已趋向于每十亿件产品缺陷率(DPPB)为零。这一严苛要求推动验证流程向 “左移” 深化,即在设计早期就引入全面的安全分析与验证,将仿真与硬件加速仿真深度融合,构建全流程、多层次的验证体系。

2、行业面临的核心挑战

汽车初创企业、传统 OEM 厂商和系统公司均面临着市场竞争与安全合规的双重压力,需要在短时间内满足严苛的安全要求。验证团队在处理高度复杂的自动驾驶 SoC 时,面临三大核心挑战:

-> 一是验证规模呈指数级增长,传统验证方法难以应对;

-> 二是跨团队、跨供应链的协同验证难度大,数据一致性与可追溯性难以保障;

-> 三是传统 IP 的安全升级与第三方 IP 的安全验证存在技术壁垒。

对此,自动化工具链的应用成为关键突破口。从 ALM 生命周期管理到自动化安全机制插入,再到形式验证与硬件加速仿真,自动化技术能够大幅提升验证效率,确保流程一致性,为安全目标的实现提供支撑。

3、结论

自动驾驶汽车 SoC 的功能安全设计是一项复杂的系统工程,涉及标准合规、故障分析、安全机制设计与验证等多个环节。ISO 26262 标准为功能安全提供了明确的框架指引,而应对随机硬件故障的四大关键流程 —— 生命周期管理、安全分析、安全设计与安全验证 —— 构成了功能安全实现的核心路径。

先进验证技术的应用是功能安全目标达成的关键支撑。ALM 软件实现了全生命周期的高效管理与数据追溯;形式验证解决了安全关键组件的全面验证难题;硬件加速仿真则突破了传统仿真的效率瓶颈,实现了从组件到系统的全方位虚拟验证。这些技术的融合应用,使 “左移” 验证成为可能,帮助企业在设计早期发现并解决安全问题,大幅提升设计成功率。

随着自动驾驶技术向更高阶演进,功能安全标准将持续升级,验证复杂度也将不断提升。未来,自动驾驶 SoC 功能安全设计将更加依赖自动化、智能化的工具链,通过全流程的数字化转型,实现安全与效率的统一。只有建立完善的功能安全体系,才能真正赢得公众信任,推动自动驾驶技术的商业化落地,开启智能出行的新时代。

搁笔分享完毕!

愿你我相信时间的力量

做一个长期主义者