汽车功能安全--TC3xx之PBIST、MONBIST

目录

1.PMS 电源监控速览

2.PBIST

3.MONBIST

4.小结


1.PMS 电源监控速览

英飞凌TC3xx芯片的四种硬件机制,分别是:

  • PMS:PBIST: Power Built-in Self Test.
  • MCU:LBIST: Logic Built-in Self Test.
  • PMS:MONBIST: Monitor Built-in Self Test.
  • VMT:MBIST: Memory Built-in Self Test.

我们已经探讨了LBIST和MBIST两种,接下来我们聊聊比较少接触的PBIST、MONBIST。

在讲这个之前,我们首先回顾下TC3xx电源监控的原理。

TC3xx PMS模块有两级电源监控模式,分别为Primary Monitor(主监控)、Secondary Monitor(次级监控)

其中,主监控用于监控VEXT(外部电源)、 VDDP3、VDD三种电源,;次级监控除了上述提到的VEXT、VDDP3、VDD外,还监控VEVRSB(Standby)、 VDDM、 VDDPD;如下图:

主监控对应的三个电源都有一个最小的阈值 ,如果监控到小于最小的threshold就会触发LVD Reset,此外针对过压、欠压的瞬态探测,会产生alarm给到SMU和HSM,分别用于功能安全和信息安全考虑,如下图红色路径所示:

针对次级监控我们可以看到,它主要是监控过压欠压,产生Alarm给到SMU。如下图绿色部分:

主监控和次级监控使用的参考VREF均来源SHPBG(Secondary Bandgap Reference)中的一个模块。为了功能安全的考虑,和多样性。

2.PBIST

PBIST:Power Built-in Self Test。从字面上看就和电源相关,该测试主要是在MCU冷启动(Cold PORST)释放之前对电源、电压等功能进行自检。

英飞凌TC3xx不同供电输入给不同功能域,如下所示:

因此启动阶段电压检测就尤为重要,根据第一节定义,芯片启动时最终要的参考电压VREF的准确性需要由PLPBG和SHPBG进行相互检测,保证电源部分的冗余性,如下图蓝框部分:

其次,在PBIST状态下、EVR33、EVRC regulator启动之前,VEXT、VEXRSB由次级监控进行检测,一旦发现电压不在范围内,则不会释放CPU。

最后,VEVRSB、VEXT、VDDPR、VDD、VDDPD等过压欠压进行测试,这些参考配置电压值均在EVROVMON、EVRMON2、EVRUVMON、EVRUVMON2寄存器展示;

由于这部分动作是在冷复位释放之前进行,使用者几乎影响不到这块内容,因此我们从SafeTlib里找不到任何关于PBIST的配置。

PS:在写这部分内容时,最初思路是准备描述PMS结构、在演进到电源监测模块,但在写的时候发现没办法用易懂语言描述,故PMS这章内容后面会单独出一篇文章。

3.MONBIST

MONBIST全称Secondary Monitor and Standby Built-in Self Test;顾名思义,这部分功能是为了次级监控的自检,同时也可测试部分standby smu的alarm通路。

通过MONBIST,可以有效增加电源次级监控器(Secondaty monitors)的潜伏故障诊断覆盖率。它主要通过配置Standby SMU模块相关寄存器使能,因此这部分内容我们就可以在SafetyLib中进行实现。

需要注意的内容总结如下:

  • 保证Standby SMU使能,可以参考CMD_STDBY.SMUEN:

  • 设置PMSWCR0.VEXTSTBYEN\VDDSTBYEN为disable,防止MONBIST期间进入Standby;
  • 测试之前需要清除所有测试标记位,参考MONBISTSTAT:

  •  根据推荐配置EVRMONFILT激活过滤器,写入EVRMONCTRL0xa5a5a5激活过压、欠压alarm;

  •  MONBIST期间,Standby的FSP配置需要关闭,防止错误使用了Error Pin。

4.小结

总结下来,英飞凌4种硬件BIST机制,我们需要关心的就是LBIST、MBIST、MONBIST,分别关联模块SCU.LBIST、MTU(MBIST)、SMU Core\Standby(MONBIST),因此搞懂这几个模块的配置关联关系,理清上电启动LBIST、MBIST、MONBIST执行顺序,这样才能做好一颗芯片的功能安全软件。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/419303.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!

command :命令名,相应功能的英文单词或单词的缩写[-options] :选项,可用来对命令进行控制,也可以省略parameter :传给命令的参数,可以是 零个、一个 或者 多个 查阅命令帮助信息 -help 说明&…

【高阶数据结构】B树、B+树、B*树

B树、B树、B*树 1. 常见的搜索结构2. B树概念3. B树的插入分析4. B树的插入实现4.1 B树的节点设计4.2 B树的部分插入实现14.3 B树的查找4.4 B树的部分插入实现24.5 插入key的过程4.7 B树的插入完整代码4.8 B树的简单验证4.9 B树的删除4.10 B树的性能分析 5. B树6. B*树7. 总结8…

【C++】STL学习——list模拟实现

目录 list介绍list结构介绍节点类的实现迭代器的实现构造函数运算符重载--运算符重载运算符重载!运算符重载*运算符重载->运算符重载 const迭代器的实现多参数模板迭代器list函数接口总览默认成员函数构造函数1构造函数2构造函数3 析构函数拷贝构造函数赋值重载函数 迭代器b…

开放式系统互连(OSI)模型的实际意义

0 前言 开放式系统互连(OSI,Open Systems Interconnection)模型,由国际标准化组织(ISO)在1984年提出,目的是为了促进不同厂商生产的网络设备之间的互操作性。 定义了一种在层之间进行协议实现…

【C++】STL容器详解【下】

目录 一、list容器 1.1 list基本概念 1.2 lsit构造函数 1.3 list数据元素插入和删除操作 1.4 list大小操作 1.5 list赋值操作 1.6 list数据的存取 1.7 list反转排序 二、set/multiset容器 2.1 set/multiset基本概念 2.2 set构造函数 2.3 set赋值操作 2.4 set大小操…

数据库的操作:SQL语言的介绍

一.前言 SQL是一种结构化查询语言。关系型数据库中进行操作的标准语言。 二.特点 ①对大小写不敏感 例如:select与Select是一样的 ②结尾要使用分号 没有分号认为还没结束; 三.分类 ①DDL:数据定义语言(数据库对象的操作(结…

| Origin绘图 |瀑布图的绘制(保姆级教程)

🐑 | Origin绘图 |瀑布图的绘制🐑 文章目录 🐑 | Origin绘图 |瀑布图的绘制🐑前言瀑布图简介瀑布图绘制数据导入坐标轴刻度调节调整画布大小添加颜色及设置线条为曲线坐标轴标签调节网格调节 总结 前言 感觉好久没出过关于Origin…

MyBatis-MappedStatement什么时候生成?QueryWrapper如何做到动态生成了SQL?

通过XML配置的MappedStatement 这部分MappedStatement主要是由MybatisXMLMapperBuilder进行解析,核心逻辑如下: 通过注解配置的MappedStatement 核心逻辑就在这个里面了: 继承BaseMapper的MappedStatement 我们看看这个类,里…

FreeRTOS学习笔记—③RTOS内存管理篇(待更新完善)

二、RTOS的核心功能 RTOS的核心功能块主要分为任务管理、内核管理、时间管理以及通信管理4部分,框架图如下所示: (1)任务管理:负责管理和调度任务的执行,确保系统中的任务能够按照预期运行。 (…

了解开源消息代理RabbitMQ

1.RabbitMQ 是什么? RabbitMQ是一个消息代理:它接受并转发消息。你可以把它想象成邮局:当你把要寄的邮件放进邮箱时,你可以确定邮递员最终会把邮件送到收件人那里。在这个比喻中,RabbitMQ是一个邮筒、一个邮局和一个邮递员。RabbitMQ和邮局之…

【kubernetes】配置管理中心Configmap运用

一,介绍 Configmap(简写 cm)是k8s中的资源对象,用于保存非机密性的配置的,数据可以用key/value键值对的形式保存,也可通过文件的形式保存。 【局限性】:在ConfigMap不是用来保存大量数据的&am…

(计算机网络)运输层

一.运输层的作用 运输层:负责将数据统一的交给网络层 实质:进程在通信 TCP(有反馈)UDP(无反馈) 二.复用和分用 三. TCP和UDP的特点和区别 进程号--不是固定的 端口号固定--mysql--3306 端口--通信的终点 …

【深度学习】softmax 回归的从零开始实现与简洁实现

前言 小时候听过一个小孩练琴的故事,老师让他先弹最简单的第一小节,小孩练了两天后弹不出。接着,老师让他直接去练更难的第二小节,小孩练习了几天后还是弹不出,开始感觉到挫败和烦躁了。 小孩以为老师之后会让他从简…

科技信贷业务怎么寻找客户?

在科技信贷业务领域,寻找客户的痛点主要集中在以下几个方面: 1.风险评估难题:科技型企业尤其是初创企业,往往缺乏足够的历史数据和抵押物,这使得金融机构在评估其信用风险时面临较大挑战。由于科技企业的研发周期长、…

C语言小游戏--贪吃蛇实现

C语言小游戏--贪吃蛇实现 1.游戏实现背景2.Win32 API介绍2.1什么是Win32 API2.2控制台程序(Console)2.3控制台屏幕的坐标COORD2.4GetStdHandle2.4.1函数语法2.4.2函数的使用 2.5GetConsoleCursorInfo2.5.1函数语法2.5.2函数的使用 2.6CONSOLE_CURSOR_INFO2.6.1结构体结构2.6.2结…

【数据库】MySQL聚合统计

目录 1.聚合函数 案例1: 统计班级共有多少同学 案例2:统计本次考试的数学成绩分数个数 案例3:统计数学成绩总分 案例4:统计平均总分 案例5:返回英语最高分 案例6:返回 > 70 分以上的数学最低分 2.分…

通信工程学习:什么是SSB单边带调制、VSB残留边带调制、DSB抑制载波双边带调制

SSB单边带调制、VSB残留边带调制、DSB抑制载波双边带调制 SSB单边带调制、VSB残留边带调制、DSB抑制载波双边带调制是三种不同的调制方式,它们在通信系统中各有其独特的应用和特点。以下是对这三种调制方式的详细解释: 一、SSB单边带调制 1、SSB单边带…

Android Framework(四)WMS-窗口显示流程——窗口创建与添加

文章目录 流程概览涉及模块流程概览 应用端——window创建:Activity::attach创建window流程setWindowManager,getWindowManagerDecorView 应用端——window的显示流程:Activity::onResumeViewRootImpl::setViewmWindowSession 是什么mWindow是…

ThinkPHP5 5-rce远程代码执行漏洞复现

启动容器 docker-compose up -d 查看端口 docker ps 端口为:8080,访问网站,搭建成功 漏洞复现 (1)输出关于 PHP 配置的信息 (2)将php代码写入文件 接着访问shell.php 由于存在过滤,需要用到base64加密来使…

SprinBoot+Vue图书馆预约与占座微信小程序的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue3.6 uniapp代码 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍:CSDN认证博客专家,CSDN平…