【项目实战】功能安全目标有四个ASIL等级:A、B、C、D,ASIL D是最高的等级
一、什么是功能安全?
功能安全作为一种核心理念,在产品异常运行时有效防止潜在风险的概念。
该技术主要涵盖三个关键领域:硬件系统、电子设备以及软件开发。
硬件系统的概念设计是核心内容。(1)具体实施则聚焦于电子技术和软件优化。(2)
二、功能安全的等级
功能安全级别通过ASIL(Automotive Safety Integration Level)进行表示,并且涵盖A级至D级四种级别。其中最高级别为D级,并基于产品开发复杂程度及资源投入规模的变化进行动态调整;产品开发复杂程度及资源投入规模越大,则相应级别的评估标准越高;反之亦然。
三、如何实践功能安全要求?
在软件开发领域中, 功能安全则要求开发者遵循既定的技术流程, 并依赖特定的安全技术手段来保障产品的安全性. 开发功能安全软件时, 并非必须依赖特定的标准体系, 例如 ASPICE 或 CMMI 等. 但同时需满足一些基础的产品输出目标和活动规范. 然而, 尽管 ASPICE 和 CMMI 标准体系已具备足够的适用性, 但在实际开发过程中, 许多企业倾向于采用这两种标准体系作为参考.
ISO 26262 标准并未明确规定采用何种软件架构,但对其架构设计提出了具体要求.
每个软件模块应具备合理的层次结构,各模块之间应有合理的调度机制.
各软件单元应当具有较高的内部分聚和较低的耦合度.
为保证系统的可维护性,必须控制模块规模和复杂程度.
各模块之间应具有良好的独立性.
尽管采用AUTOSAR架构能够显著提升系统的安全性。然而这并不意味着仅仅采用 AUTOSAR 就能完全确保系统的安全性。毕竟整个系统由 AUTOSAR 框架 软件组件以及 MCAL 平台等多模块构成 只有各个组成部分均达到功能性安全标准时 整个系统的安全性才能得到充分保障。
四、功能安全软件
功能安全软件是否指的是流程?
在ISO26262-Part 6(软件部分)中展示两个典型的V型图谱清晰展示了功能安全软件的核心诉求:
- 功能安全软件需要遵循既定的开发流程
- 即采用汽车行业的通用V型图谱作为基础

Overview of the ISO 26262

Reference phase model at the software level
四、功能安全软件是预防措施和监控措施的结合
功能安全软件整合了静态与动态的安全方案。静态安全通过预防性措施来实现,而动态 security 则依赖于实时监控系统来完成.该方案涵盖流程管理和技术保障两大方面.
4.1 预防措施
预防措施包括制定规范的软件需求计划以及开展软件架构设计活动。整个过程涵盖详细规划阶段,并通过内部评审阶段对系统进行全面评估。在源代码审查环节进行多维度测试方案制定,并结合静态分析工具辅助检查潜在问题。同时遵循开发规范中的编译约束,在资源使用标准及相应的测试措施下完成漏洞安全评估流程,并通过系统稳定性验证阶段完成故障注入测试等各项保障工作
(1)运行流程:确保软件具有一致性和完整性
(2)AUTOSAR协议:遵循系统的合理调度
(3)隔离措施:防止低安全级软件对高安全级软件造成影响

4.2 监控措施
监控措施则主要包括:软件模块运行周期、程序流程、芯片内部共因失效风险、应用数据完整度、内存信息、栈溢出风险以及信息传递状况等各项指标。
(1)软件模块的运行周期及其处理流程
(2)在软件运行过程中是否存在堆栈溢出的风险
(3)数据存储的真实性和准确性
(4)信息传递过程中的准确性和可靠性

