2182771_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2182771_zh-CN

2182771_zh-CN

数字输入/ADC/PWM 输入完整性检查

我正在使用 MPC5746C 微控制器进行功能安全关键型 ECU 设计,我需要确保我的 ASILB ECU 的功能安全相关输入(数字输入、ADC、PWM)的完整性。

根据 MPC5746C 功能安全手册(修订版 2),第 5.2.31 节 (SIUL2) 和假设 [SM_232]、[SM_233] 和 [SM_237],建议使用冗余 I/O 模块或复制传感器来实现所需的功能安全完整性。

不过,由于当前系统的硬件限制,我只能使用单个硬件输入,没有冗余引脚或重复的传感器。因此,我无法实现硬件级冗余。

我想请您就以下方面提供指导

  1. 推荐或支持哪些软件或 MCU 级别的机制(例如诊断、自检或可信性检查)来确保此类非冗余配置中输入数据完整性?

  2. 在 SIUL2、ADC 或其他模块中,是否有寄存器、内部交叉检查或外设功能可用于在运行时检测故障(卡住、VDD/GND 短路等)?

  3. 恩智浦是否为单通道输入完整性监控提供任何参考实现或示例,以替代硬件冗余?

Re: Inputs integrity check for Digital Input/ ADC/PWM

你好

在内部将单个 ADC 输入连接到不同的 ADC 通道并验证两个通道的输出如何?- 这种说法是否成立?

这样就可以排除内部 ADC 模块的故障。但也可以通过每隔一段时间进行 ADC 测试测量来消除这种情况,以确保 ADC 正确转换引脚信号。

有些 UC 还为此进行了 ADC 硬件自检。但这次不是。

如果引脚上存在电磁兼容干扰(感应),那么这种电磁兼容干扰也会从引脚传播到所有路由 ADC 通道。

换句话说,如果您在引脚上测量到不正确的电压(由于感应),您只能通过两个不相邻的输入引脚进行双重感应来消除这种情况。

我在这里看不到任何解决方法。

也许如果你知道要测量的预期电压范围,那么你可以编写一个比较+测试算法,使其至少在预期范围内,如果不是,你将进入安全状态(RESET/重新测量等...)。但这并不能捕捉边角情况。

请说明如何对数字输入和PWM 输入实施类似的完整性检查或故障检测机制?

以下是一些一般提示:

1.数字输入 - 完整性监测技术

卡死故障检测

上拉/下拉电阻器切换:

  • 将输入引脚配置为内部上拉,然后切换为下拉。
  • 如果输入值没有相应变化,则可能是卡住或短路。

输入激励(如有可能)

  • 如果输入端连接到可控外部信号(如通过 MCU 输出或测试模式),则切换信号并验证输入响应。

可信度检查

  • 时间行为:确保输入在预期时间间隔内切换。
  • 与系统状态交叉检查:例如,如果预期某个开关在某个操作过程中处于关闭状态,则标记意外接通状态。

2.PWM 输入 - 完整性监测技术

捕获和测量占空比

  • 在输入捕获模式下使用 emiOS 可以:
    • 测量频率、占空比和脉冲宽度。
    • 与预期范围或模式进行比较。

可信度检查

  • 范围检查:确保占空比和频率在有效范围内。
  • 变化率:检测突然跳变或冻结的信号。
  • 超时检测:如果在时间窗口内未检测到边沿,则标记为故障。

与 ADC 或系统状态交叉检查

  • 如果 PWM 输入控制物理致动器(例如风扇),则将测得的 PWM 与 ADC 反馈(例如 RPM 传感器)进行比较。

据我了解,在每次破坏性RESET期间,STCU 已经验证了外设的完整性,而 ADC的输入完整性只能通过冗余输入通道得到充分保证。请确认这一解释是否正确。

是,如果选择并启用了 ADC 的 STCU BIST。除了冗余测量之外,我看不到其他确保测量信号正确的方法。由于电磁兼容性通常不会影响所有引脚。这只是邻居针脚的感应。

顺祝商祺!

Peter

Re: Inputs integrity check for Digital Input/ ADC/PWM

正如您所提到的,在同一 ADC 通道上执行多次读取(突发采样)可以提高诊断覆盖率,但无法检测到所有类型的故障。因此,这种方法并不能完全有效地确保电磁兼容性条件下的输入完整性。

在内部将单个 ADC 输入连接到不同的 ADC 通道并验证两个通道的输出如何?- 这种说法是否成立?

请说明如何对数字输入和PWM 输入实施类似的完整性检查或故障检测机制?

AshokSubramani_0-1760001920479.png

据我了解,在每次破坏性RESET期间,STCU 已经验证了外设的完整性,而 ADC的输入完整性只能通过冗余输入通道得到充分保证。请确认这一解释是否正确。


Re: Inputs integrity check for Digital Input/ ADC/PWM

你好

推荐或支持哪些软件或 MCU 级别的机制(例如诊断、自检或可信性检查)来确保此类非冗余配置中输入数据完整性?

好吧,你很难用软件对策取代硬件层面的冗余读取。我不清楚 ASIL-B 标准中关于 ADC 读冗余的具体要求,但您可以在同一通道上进行多次读取(如突发),然后查看所有数据是否都在所需的阈值范围内。

但是,如果输入受到电磁兼容性的干扰,这就没有什么用了。

因此,需要对引脚分布的 2 个通道进行物理读取。

在 SIUL2、ADC 或其他模块中,是否有寄存器、内部交叉检查或外设功能可用于在运行时检测故障(卡住、VDD/GND 短路等)?

我不用担心外设的完整性,因为它在每次破坏性 RESET 时都会由 STCU2 逻辑 BIST 进行测试。该设备没有像 ASIL-D 设备那样的版本 ADC 自检功能。

恩智浦是否为单通道输入完整性监控提供任何参考实现或示例,以替代硬件冗余?

不,我们通过多种渠道为 HW 提供支持。而且我看不出任何软件示例将如何帮助消除模拟引脚上的电磁干扰。

我认为 ASIL-B 要求的目的是消除 EMC 导致的通道错误读取,因此您需要对遍布 uC 的引脚进行冗余读取。

顺祝商祺!

Peter

Tags (1)
No ratings
Version history
Last update:
‎11-20-2025 11:23 AM
Updated by: