当前位置: 首页 > news >正文

MUNIK解读ISO26262--什么是DFA

我们在学习功能安全过程中,经常会听到很多安全分析方法,有我们熟知的FMEA(Failure Modes Effects Analysis)和FTA(Fault Tree Analysis)还有功能安全产品设计中几乎绕不开的FMEDA(Failure Modes Effects and Diagnostic Analysis),相比于它们而言,今天我们的主角DFA(Dependent Failure Analysis)可能会稍微有点陌生。

在开发功能安全产品过程中,我们会进行大量的定性分析工作,其中主要就包含上面提到的FMEA和FTA。这两种分析方法一个是从底层的要素出发,分析要素故障会对系统造成何种失效影响,一个是从系统已知的单一失效模式出发,深挖造成失效发生的根本原因。无论如何,它们的研究对象都是单独的要素和系统之间的关系,并且是建立在这些底层要素之间不会发生互相影响的前提下,但是在实际的电子电气产品中,要素之间的相互影响是普遍存在的,要素之间的这种影响会不会影响我们终极目标(顶层安全目标)的实现?我们只有执行了DFA才会知道答案。

反过来讲,我们执行DFA就是为了验证我们设计中的要素之间互相影响的可能性和严重程度都比较低,它们之间尽可能不要互相影响,其实这就是在证明标准讲的“独立性”,标准对于独立性的定义是:两个或多个要素之间不存在导致违背安全要求的相关失效。意思就是只要要素具有充足的独立性以后,也就不会发生相关失效。这里面的相关失效其实就两种情况,一种叫级联失效,一种叫共因失效。关于级联失效的解释,标准是分为了内部原因和外部原因这两种情况,无论是内部原因还是外部原因,归根结底都是前者的故障最终导致后者的失效。共因失效是由于一些公用资源,公用信息等发生故障,从而导致多个组件同时发生失效的情况。

所有项目都要做DFA吗?

首先DFA(相关失效分析)的执行与ASIL没有关系,这是与FMEA还有FTA明显的一个区别,其次就是在架构设计过程中若产生了ASIL分解,有要素共存的情况(低等级的要素我们通常会认为他的开发要求不够严谨,可能会对高要求的产品造成不利影响),有冗余设计,功能电路和安全机制等情况时,那么就要执行相关失效分析。

DFA分析对象

在功能安全设计中,DFA一般在整个产品架构设计结束后执行,因为分析对象是整个产品,所以没必要细化到某一个子组件内部进行分析,将产品的架构设计框图作为DFA分析的输入信息就可以。

DFA的执行流程

标准对于DFA执行的详细流程见下图,此图虽然是定位于芯片层面,但是任何层面的产品,使用同样的方法,那么思考逻辑就是一样的。

上图中重要的活动可概括为以下四点:

  • 目标识别:就是明确分析对象。因为相关失效分析是分析要素之间是否会有影响,所以分析对象肯定是要素组,在实际产品设计中,内部的要素数量一般会比较庞大,那么我们在考虑分析产品内部是否存在共因失效或者级联失效时,如果将产品所有的组件进行配对分析的话,这个工作量会很巨大。标准也考虑了这个问题,因此对实施相关失效分析对象也是做了提前的分类和筛选的。这些互相可能发生相关失效的要素,他们之间会存在一些比较明显的关系特征,比如:我们在架构设计中进行了ASIL分解,那么分解后的两个要素,就要考虑之间会不会有相关失效的发生,或者有要素共存的情况发生时,若低等级的要素和高等级的要素进行了交互,那么它们之间就要执行相关失效分析。如果有冗余设计,功能电路和其安全机制这种关系也要对其进行相关失效分析,我们在进行其他安全分析比如FMEA分析过程中多次出现的具有相似失效模式的相似元器件或组件,FTA过程中出现重复的相同事件,这些都是可以作为DFA分析的输入指导。
  • 确定耦合因子类型:在明确产品中可能会发生相关失效的要素之后,按照标准中的要求进行耦合因子类型的判断。标准对于耦合因子进行了总结和归纳分为了共享资源,共享信息输入,环境抗干扰能力不足,系统耦合,相同类型的组件,通信,非预期接口这七类。

  • 失效分析:在确定了要素组的耦合因子类型后,对于每种耦合因子深层次的失效原因,故障模式(也就是故障发生如何导致系统失效),故障影响进行分析。根本的失效原因我们通常称之为相关失效引发源,缩写DFI。

我们举个例子,

第一步目标识别:假设我们的架构设计中存在PLL(锁相环,实现外部输入信号与内部震荡信号同步)和对其的监控电路CMC,它们之间的关系就属于功能电路和安全机制的关系,所以我们要分析这两者会不会发生相关失效。

第二部分析耦合因子的类型:我们分析后发现PLL和CMC共用了一个电源,因此就满足“共享资源”类型的耦合因子。

第三步失效分析:也就是目前的这个阶段,我们对这种情况分析后发现,如果共用电源电压过高或过低,PLL和CMC都无法工作,最终影响了产品安全目标的实现。因此我们就要制定安全措施来对此情况进行处理,也就是我们的下一个环节。

  • 措施:通过上面的分析活动之后,进入到第四步制定措施,因为共享电源的故障会导致PLL和CMC的失效,最终违反安全目标,我们对电源增加独立的PVT监控电路(安全机制),当电源电压过高或过低时,PVT会检测到异常,并将异常上报给CPU进行故障诊断,最终结果可能会向外发送一个异常信号。从发现异常,到上报异常,再到系统发送出异常信号,整个过程会控制在60ms以内(其中发送出异常信号就是经常讲的安全状态,其中的60ms应小于它最终分配到的FTTI)。这些增加的安全措施最终都要通过一些验证或测试手段证明他的有效性。

需要注意的是这里的安全措施不局限于安全机制。

相关文章:

MUNIK解读ISO26262--什么是DFA

我们在学习功能安全过程中,经常会听到很多安全分析方法,有我们熟知的FMEA(Failure Modes Effects Analysis)和FTA(Fault Tree Analysis)还有功能安全产品设计中几乎绕不开的FMEDA(Failure Modes Effects and Diagnostic Analysis),相比于它们…...

启动spring boot项目停止 提示80端口已经被占用

可能的情况: 检查并结束占用进程: 首先,你需要确定哪个进程正在使用80端口。在Windows上,可以通过命令行输入netstat -ano | findstr LISTENING | findstr :80来查看80端口的PID,然后在任务管理器中结束该进程。在...

SOLIDWORKS分期许可(订阅形式),降低前期的投入成本!

SOLIDWORKS 分期许可使您能够降低前期软件成本,同时提供对 SOLIDWORKS 新版本和升级程序的即时访问,以及在每个期限结束时调整产品的灵活性,帮助您跟上市场需求和竞争压力的步伐。 目 录: ★ 1 什么是SOLIDWORKS分期许可 ★ 2 …...

详细分析Spring Boot 数据源配置的基本知识(附配置)

目录 前言1. 基本知识2. 模版3. 实战经验前言 对于Java的基本知识推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目】实战CRUD的功能整理(持续更新)1. 基本知识 包括数据源的概念、连接池的作用、多数据源的实现与管理、Druid 连接池…...

海思SD3403/SS928V100开发(15)9轴IMU ICM-20948模块SPI接口调试

1.前言 芯片平台: 海思SD3403/SS928V100 操作系统平台: Ubuntu20.04.05【自己移植】 9轴IMU模块:ICM-20948 通讯接口: SPI 模块datasheet手册: https://download.csdn.net/download/jzwjzw19900922/89517096 2. 调试记录 2.1 pinmux配置 #spi0 bspmm 0x0102F01D8 …...

大力出奇迹:大语言模型的崛起与挑战

随着人工智能(AI)技术的迅猛发展,特别是在自然语言处理(NLP)领域,大语言模型(LLM)的出现与应用,彻底改变了我们与机器互动的方式。本文将探讨ChatGPT等大语言模型的定义、…...

【算法 - 哈希表】两数之和

这里写自定义目录标题 两数之和题目解析思路解法一 :暴力枚举 依次遍历解法二 :使用哈希表来做优化 核心逻辑为什么之前的暴力枚举策略不太好用了?所以,这就是 这道题选择 固定一个数,再与其前面的数逐一对比完后&…...

【深度学习】图形模型基础(5):线性回归模型第一部分:认识线性回归模型

1. 回归模型定义 最简单的回归模型是具有单一预测变量的线性模型,其基本形式如下: y a b x ϵ y a bx \epsilon yabxϵ 其中, a a a 和 b b b 被称为模型的系数或更一般地,模型的参数。 ϵ \epsilon ϵ 代表误差项&#…...

2024 年第十四届 APMCM 亚太地区大学生数学建模竞赛B题超详细解题思路+数据预处理问题一代码分享

B题 洪水灾害的数据分析与预测 亚太中文赛事本次报名队伍约3000队,竞赛规模体量大致相当于2024年认证杯,1/3个妈杯,1/10个国赛。赛题难度大致相当于0.6个国赛,0.8个妈杯。该比例仅供大家参考。 本次竞赛赛题难度A:B:C3:1:4&…...

Yarn有哪些功能特点

Yarn是一个由Facebook团队开发,并联合Google、Exponent和Tilde等公司推出的JavaScript包管理工具,旨在提供更优的包管理体验,解决npm(Node Package Manager)的一些痛点。Yarn的功能特点主要包括以下几个方面&#xff1…...

深度学习算法bert

bert 属于自监督学习的一种(输入x的部分作为label) 1. bert是 transformer 中的 encoder ,不同的bert在encoder层数、注意力头数、隐藏单元数不同 2. 假设我们有一个模型 m ,首先我们为某种任务使用大规模的语料库预训练模型 m …...

PyTorch - 神经网络基础

神经网络的主要原理包括一组基本元素,即人工神经元或感知器。它包括几个基本输入,例如 x1、x2… xn ,如果总和大于激活电位,则会产生二进制输出。 样本神经元的示意图如下所述。 产生的输出可以被认为是具有激活电位或偏差的加权…...

docker-compose搭建minio对象存储服务器

docker-compose搭建minio对象存储服务器 最近想使用oss对象存储进行用户图片上传的管理,了解了一下例如aliyun或者腾讯云的oss对象存储服务,但是呢涉及到对象存储以及经费有限的缘故,决定自己手动搭建一个oss对象存储服务器; 首先…...

vue3使用pinia中的actions,需要调用接口的话

actions,需要调用接口的话,假如页面想要调用actions中的方法获取数据, 必须使用try catch async await 进行包裹,详情看下面代码 import {defineStore} from pinia import {reqCode,reqUserLogin} from ../../api/hospital/i…...

Python酷库之旅-第三方库Pandas(003)

目录 一、用法精讲 4、pandas.read_csv函数 4-1、语法 4-2、参数 4-3、功能 4-4、返回值 4-5、说明 4-6、用法 4-6-1、创建csv文件 4-6-2、代码示例 4-6-3、结果输出 二、推荐阅读 1、Python筑基之旅 2、Python函数之旅 3、Python算法之旅 4、Python魔法之旅 …...

社交电商中的裂变营销利器,二级分销模式,美妆家具成功案例分享

二级分销返佣模式是一种帮助商家迅速扩大市场覆盖的有效营销策略,不仅能降低营销成本,还能提升品牌知名度。下面通过两个具体的案例来说明这种模式的好处和优势。 某知名美妆品牌在市场竞争日益激烈的情况下,决定采用二级分销返佣模式进行市场…...

【国产开源可视化引擎Meta2d.js】图层

独立图层 每个图元都有先后绘画顺序,即每个图元拥有一个独立图层,即meta2d.data().pens的数组索引。 可以通过meta2d.top/bottom/up/down等函数改变独立图层顺序。 分组图层 通过标签可以标识一个分组图层,通过meta2d.find(图层标签)获取…...

基于Redisson实现分布式锁

基于redisson实现分布式锁 之前背过分布式锁几种实现方案的八股文,但是并没有真正自己实操过。现在对AOP有了更深一点的理解,就自己来实现一遍。 1、分布式锁的基础知识 分布式锁是相对于普通的锁的。普通的锁在具体的方法层面去锁,单体应…...

Android Studio下载Gradle特别慢,甚至超时,失败。。。解决方法

使用Android studio下载或更新gradle时超级慢怎么办? 切换服务器,立马解决。打开gradle配置文件 修改服务器路径 distributionUrlhttps\://mirrors.cloud.tencent.com/gradle/gradle-7.3.3-bin.zip 最后,同步,下载,速…...

leetcode--二叉树中的最长交错路径

leetcode地址:二叉树中的最长交错路径 给你一棵以 root 为根的二叉树,二叉树中的交错路径定义如下: 选择二叉树中 任意 节点和一个方向(左或者右)。 如果前进方向为右,那么移动到当前节点的的右子节点&…...

实测!用DeepSeek R1和通义千问Max分别写代码、解数学题,结果有点意外

DeepSeek R1与通义千问Max实战对比:当代码遇上数学题 上周我在开发一个需要同时处理算法优化和复杂数学计算的个人项目时,突然萌生了一个想法:为什么不把市面上最火的两个AI编程助手——DeepSeek R1和通义千问Max拉出来比一比?作…...

LiuJuan Z-Image效果对比展示:BF16 vs FP16在人像细节与稳定性上的差异

1. 1. 1. 1. 1. 1. 1. 1. 1. 概述 1. 1. 1. 概述 1. 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 1. 概述 1. 概述 1. 概述 1. 概述 1. 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1. 概述 1…...

Eigen矩阵打印踩坑记:从乱码到优雅输出的3个关键技巧与一个隐藏Bug

Eigen矩阵打印踩坑记:从乱码到优雅输出的3个关键技巧与一个隐藏Bug 第一次在ROS项目里调试Eigen矩阵时,我盯着终端里歪歪扭扭的数字对齐和突然冒出的科学计数法,花了整整两小时才意识到这不是算法问题,而是输出格式在作祟。Eigen作…...

Windows下OpenClaw安装详解:GLM-4.7-Flash模型联调全流程

Windows下OpenClaw安装详解:GLM-4.7-Flash模型联调全流程 1. 为什么选择OpenClawGLM-4.7-Flash组合 去年我在处理个人知识管理时,发现每天要重复执行大量机械操作:整理网页摘录、归类PDF文档、生成日报摘要。尝试过各种自动化工具后&#x…...

Android逆向实战:用Frida Hook自己写的APK,让1+1=88(附完整代码)

Android逆向实战:用Frida Hook自己写的APK,让1188(附完整代码) 在移动安全领域,逆向工程一直是个充满挑战又极具魅力的方向。想象一下,你能否让一个简单的计算器应用突然改变行为,比如让11的结果…...

YOLOv11赋能卡证检测矫正:新一代目标检测模型实战应用

YOLOv11赋能卡证检测矫正:新一代目标检测模型实战应用 最近在做一个卡证信息自动录入的项目,发现最头疼的不是后面的文字识别,而是第一步——把歪歪扭扭、角度各异的证件图片给“摆正”了。传统的图像处理方法,比如霍夫变换找直线…...

如何为 Play With Docker 贡献代码:社区参与与开发流程详解

如何为 Play With Docker 贡献代码:社区参与与开发流程详解 【免费下载链接】play-with-docker You know it, you use it, now its time to improve it. PWD!. 项目地址: https://gitcode.com/gh_mirrors/pl/play-with-docker Play With Docker(P…...

QT事件过滤器实战:如何用eventFilter拦截鼠标移动事件(附完整代码)

QT事件过滤器实战:如何精准拦截鼠标移动事件 在QT开发中,事件处理机制是GUI编程的核心。当我们需要对特定控件的事件流进行精细化控制时,事件过滤器(eventFilter)提供了一种优雅的解决方案。不同于直接重写事件处理函数,事件过滤器…...

Comsol 薄板声辐射响应优化:激励位置与频率的协同效应

1. 薄板声辐射响应基础原理 当你用手指轻轻敲击一块金属薄板时,会听到清脆的声响。这个看似简单的现象背后,隐藏着复杂的声学原理。在Comsol仿真中,我们可以精确模拟这种声辐射响应,为声学设备设计提供科学依据。 薄板声辐射的本质…...

ESP8266轻量Web服务器库myWebServerESP深度解析

1. myWebServerESP:面向ESP8266/NODEMCU的轻量级嵌入式Web服务器库深度解析1.1 项目定位与工程价值myWebServerESP是一个专为 ESP8266 系列芯片(含 NodeMCU 开发板)设计的轻量级、可配置 Web 服务框架,运行于 Arduino IDE 生态下。…...