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

【汽车芯片功能安全分析与故障注入实践 08】Diagnostic Coverage 是怎么算出来的?

作者Darren H. Chen方向汽车芯片功能安全分析与故障注入实践DemoD08_dc_engine标签汽车芯片功能安全Diagnostic CoverageDCSafety MechanismFMEDADemo 说明D08_dc_engine的目标是实现一个简化但可解释的 Diagnostic Coverage 计算引擎。对应的通用工具名称为safeic-dc它的作用是把下面几类输入连接起来SP/EP/Cone 结构 Safety Mechanism Library EP-to-SM Mapping FIT / structure weights最终输出dc_report.csv metric_summary.csv dc_explain.md这一篇的重点不是背公式而是理解Diagnostic Coverage 不是一个孤立百分比而是安全机制对结构故障空间的覆盖能力。1. DC 的直观含义Diagnostic Coverage通常简称 DC可以理解为安全机制能够检测或覆盖的故障比例如果某个模块可能发生 100 个安全相关故障其中 90 个能够被 safety mechanism 检测到则可以说这个场景下的 DC 约为 90%。但在芯片工程中事情没有这么简单。原因是不同故障的权重不同 不同 endpoint 的安全影响不同 不同 safety mechanism 覆盖范围不同 permanent fault 和 transient fault 可能需要分别处理 memory 和 standard cell 权重也不同因此DC 不是简单的detected_faults / total_faults在结构分析阶段它更像是一个加权覆盖率。2. 两类 DC 思路结构估算与故障注入验证工程上可以把 DC 分成两类类型输入特点使用阶段结构估算 DCSP/EP/Cone、SM map、覆盖定义快适合早期探索架构/RTL 阶段故障注入验证 DCfault campaign 结果更接近实际仿真证据后期验证/签核前结构估算 DC 回答根据结构和安全机制定义预计能覆盖多少风险故障注入验证 DC 回答在具体运行上下文和 fault campaign 下实际检测了多少故障本篇 Demo 先做结构估算 DC为后续 fault campaign 的 quantitative DC 打基础。3. DC 为什么要基于 EP/SP/Cone第 6 篇已经说明功能安全结构可以抽象为SP - Cone - EP不同 safety mechanism 覆盖的位置不同。例如endpoint parity 可能主要覆盖 EP duplication checker 可能覆盖 EP Cone lockstep 可能覆盖 SP Cone EP所以 DC 不能只说“这个模块 90% 覆盖”。更合理的表达是对 EP 覆盖多少 对 SP 覆盖多少 对 Cone 覆盖多少 对 transient fault 覆盖多少 对 permanent fault 覆盖多少这种结构化描述可以让 DC 计算更透明。4. 一个简化 DC 公式在 Demo 中可以采用简化公式DC_EP_TOTAL Covered_Weight / Total_Weight其中Total_Weight W_EP W_SP W_Cone Covered_Weight W_EP * DC_EP W_SP * DC_SP W_Cone * DC_Cone举例EP weight 32 SP weight 64 Cone weight 16某个安全机制的覆盖能力为DC_EP 90% DC_SP 0% DC_Cone 90%则Total_Weight 32 64 16 112 Covered_Weight 32*0.9 64*0 16*0.9 43.2 DC 43.2 / 112 38.57%这个例子说明即使 EP 和 Cone 覆盖率都很高如果 SP 完全没有覆盖总体 DC 也可能不高。5. Safety Mechanism Library 的设计为了让 DC 可计算需要先把 safety mechanism 抽象成库。示例sm_library.yamlsafety_mechanisms:EP_PARITY:description:Endpoint parity checkpermanent:ep:0.90sp:0.00cone:0.00transient:ep:0.80sp:0.00cone:0.00DUP_COMPARE:description:Duplicated logic comparepermanent:ep:0.90sp:0.00cone:0.90transient:ep:0.85sp:0.00cone:0.85LOCKSTEP:description:Lockstep comparisonpermanent:ep:0.95sp:0.90cone:0.95transient:ep:0.90sp:0.85cone:0.90这个库不只是工具输入也是方法论载体。它让安全机制从一句话变成结构化数据保护对象 覆盖范围 permanent coverage transient coverage 适用模块 限制条件6. EP-to-SM Map 的作用Safety Mechanism Library 说明“某类机制能覆盖什么”。EP-to-SM Map 说明“这个设计里哪个 endpoint 被哪个机制覆盖”。示例ep_to_sm_map.csvep_id,node,sm_id,mode,enabled EP_0001,top.u_ctrl.state.D,EP_PARITY,local,true EP_0002,top.u_bus.grant.D,DUP_COMPARE,module,true EP_0003,top.u_cpu.pc.D,LOCKSTEP,system,true这使 DC 计算可以从设计结构落到具体对象。没有 EP-to-SM Map安全机制只是设计意图有了映射它才成为可计算证据。7. DC Engine 工具架构safeic-dc可以设计成以下流程Read EP/SP/Cone DataRead SM LibraryRead EP-to-SM MapBuild Endpoint WeightApply SM CoverageCompute Permanent DCCompute Transient DCGenerate Reports内部模块建议模块作用structure_loader读取 SP/EP/Conesm_loader读取 safety mechanism librarymap_loader读取 EP-to-SM mapweight_engine计算 EP/SP/Cone 权重dc_engine计算 permanent/transient DCreport_writer输出 CSV/Markdown/JSON8. 输出报告设计dc_report.csv示例ep_id,node,sm_id,total_weight,covered_perm,dc_perm,covered_tran,dc_tran EP_0001,top.u_ctrl.state.D,EP_PARITY,112,28.8,0.2571,25.6,0.2285 EP_0002,top.u_bus.grant.D,DUP_COMPARE,240,144.0,0.6000,136.0,0.5667 EP_0003,top.u_cpu.pc.D,LOCKSTEP,300,282.0,0.9400,270.0,0.9000metric_summary.csv示例scope,total_weight,covered_perm,dc_perm,covered_tran,dc_tran top,652,454.8,0.6975,431.6,0.6619dc_explain.md示例# DC Explanation Endpoint: top.u_bus.grant.D Safety Mechanism: DUP_COMPARE The endpoint has a high cone weight and is covered by duplicated logic comparison. The mechanism covers EP and Cone, but does not cover upstream SP. Therefore the final DC is lower than a full lockstep-style protection.这样的报告适合 CSDN、GitHub、软著说明书和后续工具展示。9. 结构 DC 与 fault campaign DC 的关系结构 DC 是估算fault campaign DC 是验证。两者不是互相替代而是前后衔接结构 DC帮助选择安全机制和生成 fault list 故障注入 DC验证实际运行上下文下是否真的检测到故障可以理解为SP/EP/ConeStructural DCSafety Mechanism SelectionFault ListFault CampaignQuantitative DCFinal Metric如果结构 DC 预估很高但 fault campaign 检测率很低说明可能存在问题alarm list 不完整 observe point 配置错误 VCD 上下文不足 安全机制没有在该场景触发 fault injection time 不合理 某些故障传播到了 blackbox 或 missing sim data因此DC Engine 不是最终答案而是功能安全闭环中的一个中间环节。10. D08 Demo 的目录建议D08_dc_engine/ README.md run_demo.csh run_demo.sh inputs/ sp.csv ep.csv cone.csv sm_library.yaml ep_to_sm_map.csv dc_config.yaml outputs/ dc_report.csv metric_summary.csv dc_explain.md dc_result.json scripts/ safeic_dc.py运行命令示例python3 scripts/safeic_dc.py\--spinputs/sp.csv\--epinputs/ep.csv\--coneinputs/cone.csv\--sm-lib inputs/sm_library.yaml\--sm-map inputs/ep_to_sm_map.csv\--outoutputs11. 方法论总结Diagnostic Coverage 的本质不是一个孤立数字而是安全机制对故障传播结构的覆盖能力要把 DC 讲清楚至少需要四类数据结构对象SP、EP、Cone 安全机制定义覆盖 EP/SP/Cone 的能力 映射关系哪个 endpoint 被哪个机制保护 权重模型不同结构对象的风险贡献D08_dc_engine的目标就是把这四类数据连接起来。当 DC 计算变成可解释、可复现、可追溯的工程流程后后续 safety mechanism selection、fault list generation 和 fault campaign 才能形成闭环。

相关文章:

【汽车芯片功能安全分析与故障注入实践 08】Diagnostic Coverage 是怎么算出来的?

作者: Darren H. Chen 方向: 汽车芯片功能安全分析与故障注入实践 Demo: D08_dc_engine 标签: 汽车芯片 功能安全 Diagnostic Coverage DC Safety Mechanism FMEDADemo 说明 D08_dc_engine 的目标是实现一个简化但可解释的 Diagno…...

Orcha:为AI编程助手构建微服务架构感知的智能工作空间

1. 项目概述:为AI智能体装上“工作空间大脑” 如果你和我一样,正在一个由多个独立代码仓库组成的微服务架构里折腾,并且尝试用Claude Code、Cursor这类AI编程助手来提升效率,那你肯定遇到过这样的场景:每次打开一个新的…...

macOS智能鼠标模拟器:告别远程会话超时,保持连接活跃

1. 项目概述:一个为macOS设计的智能鼠标模拟器如果你和我一样,经常需要远程连接到公司的开发机,或者长时间在虚拟机里跑一些测试任务,那你一定对“会话超时断开”这个烦人的问题深恶痛绝。无论是微软的远程桌面、VNC,还…...

iButton数据记录器:冷链监控与环境监测技术详解

1. iButton数据记录器概述iButton数据记录器是Maxim Integrated公司推出的一款微型环境监测设备,外形仅相当于五枚叠放的硬币大小(16mm直径)。这种不锈钢封装的设备内置温度传感器(部分型号含湿度传感器)、实时时钟、非…...

从思维链到思维图:GoT框架如何革新大语言模型推理

1. 项目概述:从“思维链”到“思维图”的范式跃迁如果你最近在关注大语言模型(LLM)的应用与推理能力增强,那么“思维链”(Chain-of-Thought, CoT)这个词你一定不陌生。它通过让模型“一步一步思考”&#x…...

通过用量看板观测TaotokenAPI调用成本与模型消耗分布

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过用量看板观测Taotoken API调用成本与模型消耗分布 接入大模型服务后,成本管理是开发者持续关注的核心议题。直接使…...

CANN/SiP三维FFT接口文档

FFT_3D 【免费下载链接】sip 本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库,基于华为Ascend AI处理器,专门为信号处理领域而设计。 项目地址: https://gitcode.com/cann/sip 产品支持情况 产品是否支持Atlas 200I/500 A2 推理产品…...

ChatGPT-AutoExpert:构建领域专家提示词,实现AI深度专业协作

1. 项目概述:当ChatGPT学会“自我进化”如果你和我一样,深度依赖ChatGPT进行编程、写作或解决复杂问题,那你一定遇到过这样的困境:面对一个专业领域的问题,你需要反复向ChatGPT解释背景知识、行业术语和具体约束&#…...

移动端视频帧插值技术:ANVIL框架与NPU优化实践

1. 移动端视频帧插值的技术挑战与ANVIL框架概述视频帧插值(Video Frame Interpolation, VFI)作为提升视频流畅度的关键技术,在移动设备上实现实时处理面临三重技术壁垒:首先是计算复杂度与功耗限制,传统光流法需要执行…...

跟着 MDN 学 HTML day_30:(AbortController 实现可取消的异步请求)

在现代 Web 开发中,异步操作随处可见,尤其是网络请求。但有时候我们需要主动取消一个正在进行的请求,比如用户切换了页面、重复提交表单、或者文件下载被中断。传统的做法往往难以优雅地处理这些场景。AbortController 的出现,为我…...

PL/SQL:异常处理补充

PL/SQL异常处理补充:本文在基础异常处理语法基础上,重点补充了5个实用知识点:常见预定义异常(如NO_DATA_FOUND)及其应用场景;两种自定义异常实现方式(异常别名与RAISE_APPLICATION_ERROR&#x…...

离线优先的Markdown编辑器:inkdown如何实现极致专注写作

1. 项目概述:一个为创作者而生的轻量级写作工具如果你和我一样,经常需要在不同设备间切换写作,或者对市面上那些功能臃肿、界面花哨的写作软件感到厌倦,那么你可能会对inkdown产生兴趣。这不是一个功能大而全的“巨无霸”&#xf…...

ASIC功能验证:基于规范的方法与Specman实战

1. ASIC功能验证的现状与挑战在当今的芯片设计领域,功能验证已成为决定项目成败的关键环节。作为一名从业十余年的验证工程师,我亲眼见证了ASIC设计规模从几十万门级发展到如今的数亿门级,而验证复杂度却呈指数级增长。传统验证方法在面对这种…...

PMP管理大数据学习建议

本文提出用PMP五大过程组管理大数据开发学习,建议: 启动阶段明确学习边界,制定项目章程(如6周掌握PythonOracle核心);规划阶段细化WBS分解(Python语法→数据结构→Oracle SQL→PL/SQL&#xff0…...

别再刷后台了!我用凌风工具箱导出竞价表格,摸清所有对手底牌

做Temu一年多,我最怕的不是报不上活动,不是物流延迟,而是——竞价。每次打开商家后台的竞价管理页面,看着密密麻麻的商品列表和不断跳动的竞价倒计时,心里就开始发慌。哪个品该竞价、哪个该守住、哪个该放弃&#xff1…...

基于MCP协议的AI智能体实时金融数据工具箱Tickerr详解

1. 项目概述:一个为AI智能体打造的实时金融数据工具箱最近在折腾AI智能体(Agent)开发,特别是想让它们能处理一些实时性要求高的任务,比如监控股票价格、追踪新闻动态。我发现,要让一个智能体真正“理解”并…...

别再手动下架了!Temu查重复铺货那晚,我10分钟救了三个店

上周三晚上十一点多,我正准备关电脑睡觉,群里突然炸了。“卧槽,三个店全收到重复铺货警告!几十条链接被标记了!”我瞬间睡意全无。你们知道的,Temu现在对重复铺货是零容忍——一旦触发,直接下架…...

轻量级定时任务调度库timetask:配置即代码的Python实践指南

1. 项目概述与核心价值最近在折腾个人效率工具链,发现一个挺有意思的开源项目,叫haikerapples/timetask。乍一看名字,可能觉得就是个简单的定时任务工具,但深入把玩之后,我发现它的设计理念和实现方式,恰好…...

OpenCode集成Cursor Pro:通过代理架构实现AI编程工具的无缝桥接

1. 项目概述:打破限制,将 Cursor Pro 无缝接入 OpenCode 如果你和我一样,既是 Cursor Pro 的深度用户,又对 OpenCode 这个开源、可扩展的 AI 编程环境情有独钟,那你一定遇到过那个令人头疼的“二选一”困境。Cursor 的…...

RAGxplorer:可视化调试工具,提升检索增强生成系统可观测性

1. 项目概述:RAGxplorer,一个为RAG系统打造的“X光机”如果你正在构建或优化一个基于检索增强生成(RAG)的系统,那么你一定遇到过这样的困惑:为什么用户的问题没有得到预期的答案?是检索的文档不…...

Syncia:基于浏览器扩展的AI助手,实现网页上下文智能处理与本地模型集成

1. 项目概述:一个让AI能力随处可用的浏览器助手 如果你和我一样,每天大部分时间都泡在浏览器里,处理文档、阅读文章、查找资料,那你肯定也想过:要是能把ChatGPT的能力直接“嵌入”到每一个网页里,随时帮我…...

BricksLLM:开源LLM API网关,解决大模型应用成本管控与用量追踪难题

1. 项目概述:当大模型应用遇上“计费墙” 最近在折腾大模型应用的后端服务,一个绕不开的痛点就是成本核算。无论是内部团队使用,还是对外提供SaaS服务,只要接入了OpenAI、Anthropic这些按Token收费的第三方模型,账单管…...

如何用C语言解密网易云NCM音乐文件:实现跨平台音乐格式转换

如何用C语言解密网易云NCM音乐文件:实现跨平台音乐格式转换 【免费下载链接】ncmToMp3 网易云vip的ncm文件转mp3/flac - ncm file to mp3 or flac 项目地址: https://gitcode.com/gh_mirrors/nc/ncmToMp3 你是否曾经在网易云音乐下载了VIP歌曲,却…...

从循环处理、全局工作空间到高阶理论:AI架构的意识功能映射与工程启示

1. 项目概述:一场关于智能本质的跨界探索最近和几位做认知科学和哲学的朋友聊天,聊到了一个特别有意思的话题:我们整天在搞的AI,尤其是那些大语言模型,它们到底有没有可能产生“意识”?或者说,我…...

构建办公自动化CLI工具集:从Python库选型到实战应用

1. 项目概述:一个面向办公效率的CLI工具集如果你和我一样,每天大部分时间都泡在终端里,那么“officecli/officecli-skills”这个项目标题,一眼就能让你兴奋起来。它直指一个非常具体且高频的痛点:如何在命令行&#xf…...

AI编程助手代码审计工具whatdiditdo:从黑盒到白盒的智能复盘

1. 项目概述:当AI替你写代码后,如何快速复盘?如果你和我一样,已经深度依赖AI编程助手(比如Cursor、GitHub Copilot、Claude Code)来加速日常开发,那你一定遇到过这个场景:你给AI下了…...

透明计费与用量明细让个人开发者的项目预算更加清晰

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 透明计费与用量明细让个人开发者的项目预算更加清晰 对于独立开发者或小型团队而言,在集成大模型能力时,成…...

YAPI MCP PRO:基于MCP协议将YApi无缝集成AI代码编辑器的实践指南

1. 项目概述与核心价值如果你和我一样,每天都要在YApi里翻找接口文档、复制粘贴路径和参数,然后切回代码编辑器去写调用逻辑,那这个循环一定让你感到疲惫。更别提当后端同事更新了接口,你还在用旧参数调试的尴尬场景。YAPI MCP PR…...

ClawScript:专为量化交易与AI自动化设计的领域特定语言

1. 项目概述:ClawScript,一个为交易与自动化而生的领域特定语言如果你像我一样,在量化交易和自动化流程的构建上投入了大量时间,那你一定对那种在通用编程语言的灵活性与专用交易平台的便捷性之间反复横跳的体验深有感触。用Pytho…...

基于Tauri+React的AI编码代理实时监控工具设计与实践

1. 项目概述:一个为AI编码代理打造的实时监控桌面应用如果你和我一样,日常开发中重度依赖像Claude Code、OpenCode这类AI编码代理,那你肯定也遇到过这个痛点:当同时运行多个代理任务时,它们各自在独立的终端窗口里埋头…...