当前位置:首页 > 汽车 > 正文

功能安全的架构设计(四)

谈功能安全的架构设计这个话题时对于汽车行业的安全从业人员来说很难不提到E-GAS监控架构,在本系列的功能安全架构专题中如果不和大家谈谈E-GAS架构,就有点像 “吃面不吃蒜,香味少一半” 的感觉。

本篇我们就和大家谈谈E-GAS架构概念,看看这种架构是fail-safe还是fail-的,它又和前面两篇文章《功能安全的架构设计(二)》、《功能安全的架构设计(三)》提到的MooN(D)及指定架构( )有什么区别与联系?

汽车行业的工程师们可能对E-GAS架构听得比较多,该概念提出的架构也常被称作 “三层电子架构” 或 “三层监控架构”,是EGAS工作组定义的一种标准化的传统燃油发动机控制系统架构设计模式,但其架构设计理念也适用于各类控制器系统,尤其是动力域相关的控制器系统。

图片

接下来我们来看看E-GAS架构中三层架构的概念及特点。

第一层用于实现控制器的基本功能,针对发动机控制器该层包含发动机控制功能,即执行要求的发动机扭矩、部件监控、输入/输出变量诊断,以及在检测到故障时控制系统的反应。

第二层用于监控第一层功能实现的正确性,也即检测第一层的功能实现过程中是否有缺陷。例如通过监测第一层中计算的扭矩值或车辆加速度来判断扭矩是否符合预期,如果超出预期,系统会触发故障响应。

第三层用于监控系统中控制器是否正确运行。用于监控控制器运行状态的监控模块应独立于控制器本身,通过某种机制(e.g. 问答机制)来检验控制器运行过程的正确性。

以上三层架构概念对应的架构框图如下:

图片

Q: 根据上面三层架构的概念,想想第二层_功能监控层和第三层_控制器监控层在你所涉及的产品中是如何实现的?

根据以上概念及对应架构模式,下面我们简要介绍下三层监控架构在EGAS系统中的应用,可顺便将这种应用映射到VCU(整车控制器)的系统设计中。

先看下EGAS系统架构的示意图。

图片

该架构示意图对应于VCU的系统架构框图如下:

图片

经过分析该控制器的ASIL等级最高的一个安全目标为:

SG01: 避免非预期的加速。

根据上方系统架构及基本功能定义,对 'SG01_避免非预期的加速' 做个快速FTA,以识别出架构中与该目标相关的要素,如下:

图片

从上方简易FTA可知,以下事件将导致非预期加速:

1)加速踏板(Drive Pedal)输入过大 -> 加速踏板传感器;

2)外部请求扭矩过大 -> 外部ECU(e.g. EPS);

3)目标扭矩计算过大 -> EGAS处理器(e.g. EMS);

4)执行扭矩过大-> 扭矩执行单元(e.g. MCU);

加速踏板传感器采集的踏板行程信号反映的是驾驶员的意图,即驾驶员踩下油门的深浅。

针对驾驶员意图,EGAS中给出了下方的驾驶员意图监控架构:

图片

驾驶员意图最终也是以扭矩的形式表达,只不过在转换成扭矩之前须保证加速踏板信号采集的正确性(这在输入端代表了驾驶员意图的合理性),这意味着加速踏板传感器需采用独立的冗余采集,以便处理器实施踏板信号的合理性检查。

关于实施功能监控的原则,EGAS监控概念中有这么段话可供参考:

Only shall be now, which are for and in the . that if a value be ( to the state-of-the-art), may be also .

Jet Note: 在实施某个功能的监测时,如果一个值不能直接监测(根据现有技术),监测另一个物理相关的值也是可以接受的。比如单体电压和模组电压存在直接的换算关系。这个思想是非常重要的,既可用于设计诊断策略,还可以为ASIL 分解提供思路。

EGAS中对于扭矩管理功能的监控提供了两种监控架构,一是基于扭矩的监控,二是基于加速度的监控。

驾驶员的意图()通过踏板(加速,制动)采集后其意图最终用扭矩表征,只不过扭矩和加速度之间存在一定的换算关系,故在实施扭矩监控时结合了这两者的监控逻辑。

这里不管是基于哪个信号的监控逻辑,都遵循一个监控原则,即扭矩连续。

Usage for all →

这里的扭矩连续原则主要是出于加速踏板的动态特性考虑,它包含了几层含义:

1)扭矩连续但不可突变;

2)如果踏板行程维持在一个恒定状态,允许有较小的跳变;

基于此原则,实施扭矩管理时不允许出现不可控的加速度。

图片

我们来看下EGAS中提到的扭矩监控架构和基于加速度的监控架构。

基于加速度/扭矩监控的实施原则:

An /drive shall be of the from an and the of the power train speed. The /drive shall be the /.

应根据来自加速度传感器的车辆加速度信息和动力传动系速度的评估来确定实际加速度/驱动扭矩,然后将实际加速度/驱动扭矩与允许的加速度/扭矩进行比较。

图片

此架构的监控逻辑是比较独立计算得到的“允许的扭矩”与“实际扭矩”之间的差值是否超过限值。

图片

此架构的监控逻辑是比较独立计算得到的“允许的加速度”与“实际加速度”之间的差值是否超过限值。

车辆实际加速度和发动机转速应通过第2层中的冗余采集输入值进行监测。

如果当前车辆加速度高于目标车辆加速度,则第二层应在合适的时间内限制节气门角度。

Q: 上面的监控架构体现了架构设计上的什么特性?除了上面的监控方法还有没有其他监控方法?

接下来我们再看看EGAS的第三层在架构设计上是什么表现形式。

这一层用于监控系统中控制器是否正确运行,对应监控模块要独立于控制器,也即这一层的监控模块可独立控制执行器。

to the and . It the of of the ( core, areas in RAM/ROM).

Jet Note: 控制器监控功能的实现包括实施控制器处理器本身自带的控制器内部控制器诊断机制,即芯片自带的安全机制,这部分机制可以是硬件的(如ECC, BIST),也是可以通过软件功能实现(e.g. range check),或者两者的结合,具体可通过查看芯片的安全手册来获取。除了芯片自带的安全机制,还需要结合外部一个独立的监控器()来监控整个控制器的运行状态是否正常,即芯片自带的机制是用于检测芯片是否具备执行相关功能的能力( ),而外部独立的是对处理器运行过程中状态的在线监控(on-line ),检测的是处理器的正确运行的能力( )。

必要的检查可以作为软件功能(例如存储器测试值和补码)来执行,或者作为控制器内部错误检测硬件或两者的组合来执行。

Q: 基于上方关于第三层的控制器监控的描述,你认为要对控制器的哪些功能模块实施监控?

我们再看看上面的三层监控架构概念框图。

图片

Level 3的监控功能主要由两部分组成,一是独立的监控模块( ),一个是处理器内部自带检测电路及对应的检测软件模块(L3_SW),这两部分相互结合实现对处理器 和 的监控。

一般地,控制器的最小系统的外设都需要被监控以保证 ,整个处理器的运行逻辑需要被监控以保证 。

接下来我们分别来看下保证控制器系统这两种能力在Level 3的监控概念。

当在level 3中监控模块(L3_MM)中使用ROM/RAM部件时,这些部件应在每个驾驶循环中至少循环测试一次。

在可通过配置处理器内部自带的测试硬件(MBIST)对ROM/RAM进行上电自测,以及打开ECC机制对ROM/RAM进行周期性的测试。

EGAS中给到的Level 3的 test概念架构如下:

图片

安全处理器内部带有时钟监控器(clock )用于监控时钟是否运行在指定的频率范围,还有就是结合外部监控模块(L3_MM)对时钟在系统层面进行逻辑监控。

外部监控模块(L3_MM)与处理器内部监控软件通过问答机制(Q/A)实现对处理器运行状态的监控,结合外部监控模块的时钟可实现对处理器执行程序流的监控,以及时钟频率正确性的系统层面监控。

图片

在初始化阶段ADC的完整性也要被检测,可通过处理器内部自带的参考电压或外部独立的某个高精度的电压源作为参考结合一定的检测逻辑来确认ADC的完整性。

也可以通过常用模拟量(如,电压、温度)的合理性检验来实现ADC完整性检测,这时电压(V)或温度(T)的初始值是经过标定后作为参考值用。

下方是ADC检测的一种流程,供参考:

图片

除了上面提到的这些Level 3的监控功能,还有配置寄存器集( set) 的正确性检测、安全关断路径(shut-off path)完整性检测等都是要在Level 3的监控概念中实施,具体可参考EGAS监控概念以及对应产品的芯片应用手册。

到这里,EGAS的三层监控架构概念就给大家谈完了。你觉得EGAS的三层监控架构是safe-safe的还是fail-的?它又算不算一种 呢?

参考:

ak-egas-v6-0

你可能想看:

有话要说...

取消
扫码支持 支付码