汽车行业必读:ISO 26262和ASIL安全等级解读与攻略

2024-02-21 20:50

本文主要是介绍汽车行业必读:ISO 26262和ASIL安全等级解读与攻略,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ISO 26262,名称为“道路车辆——功能安全”,是汽车行业中使用的功能安全标准。而ASIL/ASIL级别则是确定软件开发安全要求的关键组成部分。

遵守这一标准对于汽车产品的开发来说至关重要。原始设备制造商、供应商和汽车零部件开发商们都需要遵守这一标准。

本篇文章将介绍ISO 26262、ISO 26262认证工具、ASIL(汽车安全完整性级别)以及针对软件开发团队的ISO 26262功能安全合规建议。

什么是ISO 26262功能安全?

ISO 26262是一项基于风险的安全标准,源自IEC 61508。它适用于量产车辆中的电气和/或电子系统。这包括驾驶员辅助、推进和车辆动力学控制系统。

这项功能安全标准涵盖了整个开发过程的所有功能安全方面:

  • 需求规范

  • 设计

  • 执行

  • 集成

  • 验证

  • 验证

  • 配置

为什么ISO 26262很重要?以及为什么ASIL(汽车安全完整性等级)/ASIL等级很重要?

该标准的目标是确保汽车设备和系统的整个生命周期的安全性。

在生命周期的每个阶段,需要采取具体的步骤。这将确保安全的概念贯穿始终,从早期的概念阶段到车辆退役。

通过遵守ISO 26262标准,您能够避免或控制系统性的故障,并且可以检测或控制随机硬件故障(或者您将减轻故障的影响)。

ISO 26262的十个部分

  • 第1部分:术语

  • 第2部分:功能安全管理

  • 第3部分:概念阶段

  • 第4部分:系统级别的产品开发

  • 第5部分:硬件级别的产品开发

  • 第6部分:软件级别的产品开发

  • 第7部分:生产与运营

  • 第8部分:支持流程

  • 第9部分:面向ASIL和安全性的分析

  • 第10部分:安全标准指南

安全标准的第二版曾计划增加一个部分——SOTIF,重点关注预期功能的安全性。然而,SOTIF随后已经作为一个单独的标准发布——ISO/PAS 21448。

针对软件开发人员的功能安全

第6部分对于软件开发人员来说是最重要的部分。它详细介绍了开发人员必须采取的步骤,以确保每个组件的安全性。

此外,第6部分还包括了几个表格,定义了为了达到标准合规性必须考虑的方法。

ISO 26262认证工具

在汽车开发中,使用的任何工具都需要经过合格性认证。第8部分提供了ISO 26262工具资格认证的指导。

认证工具需要有以下内容:

  • 软件工具认证计划

  • 软件工具文档

  • 软件工具分类分析

  • 软件工具认证报告

某些工具比其他工具更容易获得合格性认证。例如,Helix QAC(C和C++静态代码分析器)附带了合规证书,使认证过程更容易。

什么是ASIL(汽车安全完整性等级)?

汽车安全完整性等级(ASIL)是ISO 26262的关键组成部分,用于衡量特定系统组件的风险。系统越复杂,出现系统性故障和随机硬件故障的风险就越大。

汽车安全完整性级别(ASIL)有四个值,分别为A到D。ASIL A是最低的风险级别,ASIL D是最高的级别。从A到D,合规要求变得更加严格。

在确定汽车安全完整性级别时,还有第五个选项——QM(质量管理)。这用于表示该组件没有安全要求。(但为了提高产品质量,通常仍建议遵守)

如何确定ASIL和ASIL级别?

ASIL由三个因素决定——严重性、暴露度和可控性。

严重性

严重性衡量了系统故障造成的损害的严重程度,包括人员和财产损害。

有四个严重性等级:

  • S0没有伤害

  • S1轻度至中度伤害

  • S2严重至危及生命(可能生存)的伤害

  • S3危及生命(生存不确定)至致命伤害

暴露度

暴露度描述了在什么条件下某个特定的故障可能会引发安全隐患。

每个条件按照发生的概率,分为了以下五个等级:

  • E0完全不可能

  • E1概率极低(仅在极少数操作条件下才会发生伤害)

  • E2低概率

  • E3中等概率

  • E4高概率(在大多数操作条件下都可能发生伤害)

可控性

可控性是在发生危险情况时可以避免伤害的可能性。这种情况可能是由于驾驶员的操作或外部措施造成的。

危险情况的可控性分为四个等级:

  • C0总体可控

  • C1容易控制

  • C2一般可控(大多数司机可以采取行动防止受伤)

  • C3难以控制或无法控制

一旦您确定了严重性、暴露度和可控性,您就可以确定汽车安全完整性等级(ASIL)。第3部分的表格4提供了关于此方面的指导。

图片

△ 使用此图表可根据严重性、暴露度和可控性来确定ASIL

ASIL级别合规指南+ISO 26262

无论您是在开发传统的汽车组件(例如集成电路)还是虚拟组件(例如汽车虚拟机管理程序),遵守安全标准都很重要。在整个汽车嵌入式软件开发生命周期中保持合规性至关重要。

但对于开发团队来说,满足合规可能很困难。系统和代码库越来越复杂,使得验证和确认软件变得困难。

您可以通过使用软件开发工具来简化这一过程。

建立可追溯性

满足合规性要求,并证明自己满足这些要求是一个非常繁琐的过程。您需要记录这些需求,并将它们与其他制品库(包括测试、问题和源代码)进行关联。

建立需求的可追溯性能够简化验证过程——尤其是在使用Helix ALM等工具的情况下。它还可以帮助您在开发的过程中管理风险。

而且,如果您为汽车开发半导体,使用Methodics IPLM等工具将有助于为您的设计建立验证可追溯性。此外,Methodics IPLM 可以帮助您管理ISO 26262功能安全认证。

将您的代码存储在Helix Core中(来自Perforce的版本控制系统)中,可以安全地管理所有数字资产的修订历史。您将获得精细的访问控制、高透明度的的审核日志、强大的密码安全性以及安全的复制。因此,您可以对自己的代码充满信心。

应用编码标准

确保代码安全、防范和可靠可能很困难。您需要满足特定的编码和设计准则。

应用编码标准,例如MISRA®或AUTOSAR,可以更轻松地根据安全标准指南来验证您的代码。特别是使用像Helix QAC这样的静态分析工具时。

通过Perforce确保ASIL级别的ISO 26262 + ASIL功能安全

如果没有合适的工具,就难以确保代码功能安全。通过使用Helix QAC,您可以轻松地应用编码标准,以验证您的代码是否符合特定的安全标准准则,如ISO 26262指南。

作者简介:

图片

理查德·贝莱尔斯(Richard Bellairs

Perforce产品营销经理

理查德·贝莱尔斯拥有超过20年的跨行业工作经验。在90年代和21世纪初,他在制造、国防、测试和测量行业担任电子和软件工程职位,之后转向产品管理和产品营销。现在他负责Perforce市场领先的代码质量管理解决方案。理查德拥有谢菲尔德大学的电子工程学士学位和英国特许营销协会 (CIM) 的市场营销专业文凭。

文章来源:https://bit.ly/45walsS

这篇关于汽车行业必读:ISO 26262和ASIL安全等级解读与攻略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/733036

相关文章

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

SpringCloud负载均衡spring-cloud-starter-loadbalancer解读

《SpringCloud负载均衡spring-cloud-starter-loadbalancer解读》:本文主要介绍SpringCloud负载均衡spring-cloud-starter-loa... 目录简述主要特点使用负载均衡算法1. 轮询负载均衡策略(Round Robin)2. 随机负载均衡策略(

解读spring.factories文件配置详情

《解读spring.factories文件配置详情》:本文主要介绍解读spring.factories文件配置详情,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录使用场景作用内部原理机制SPI机制Spring Factories 实现原理用法及配置spring.f

Spring MVC使用视图解析的问题解读

《SpringMVC使用视图解析的问题解读》:本文主要介绍SpringMVC使用视图解析的问题解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC使用视图解析1. 会使用视图解析的情况2. 不会使用视图解析的情况总结Spring MVC使用视图

Linux中的进程间通信之匿名管道解读

《Linux中的进程间通信之匿名管道解读》:本文主要介绍Linux中的进程间通信之匿名管道解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基本概念二、管道1、温故知新2、实现方式3、匿名管道(一)管道中的四种情况(二)管道的特性总结一、基本概念我们知道多

Linux系统之authconfig命令的使用解读

《Linux系统之authconfig命令的使用解读》authconfig是一个用于配置Linux系统身份验证和账户管理设置的命令行工具,主要用于RedHat系列的Linux发行版,它提供了一系列选项... 目录linux authconfig命令的使用基本语法常用选项示例总结Linux authconfi

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --

解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题

《解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题》在Spring开发中,@Autowired注解常用于实现依赖注入,它可以应用于类的属性、构造器或setter方法上,然... 目录1. 为什么 @Autowired 在属性上被警告?1.1 隐式依赖注入1.2 IDE 的警告:

Rust中的注释使用解读

《Rust中的注释使用解读》本文介绍了Rust中的行注释、块注释和文档注释的使用方法,通过示例展示了如何在实际代码中应用这些注释,以提高代码的可读性和可维护性... 目录Rust 中的注释使用指南1. 行注释示例:行注释2. 块注释示例:块注释3. 文档注释示例:文档注释4. 综合示例总结Rust 中的注释

解读Pandas和Polars的区别及说明

《解读Pandas和Polars的区别及说明》Pandas和Polars是Python中用于数据处理的两个库,Pandas适用于中小规模数据的快速原型开发和复杂数据操作,而Polars则专注于高效数据... 目录Pandas vs Polars 对比表使用场景对比Pandas 的使用场景Polars 的使用