《“ 功能安全产品实现技术“系列讲座 第10讲 实用功能安.pdf》由会员分享,可在线阅读,更多相关《“ 功能安全产品实现技术“系列讲座 第10讲 实用功能安.pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、PROCESS AUTOMATION INSTRUMENTATION Vol郾 35 No郾 3 March 2014修改稿收到日期:2014-02-28。第一作者谢亚莲(1966-),女,1991 年毕业于上海机械学院可靠性技术专业,获硕士学位,高级工程师;主要从事可靠性技术和功能安全技术的研究。“功能安全产品实现技术冶系列讲座第 10 讲摇实用功能安全设计技术解析Chapter X摇 Analysis on the Practical Design Techniques for Functional Safety谢亚莲1,2摇廖丽华1,2(上海工业自动化仪表研究院1,上海摇 200233;
2、上海仪器仪表自控检验测试所功能安全中心2,上海摇 200233)摘摇 要:针对在设计和开发功能安全相关产品中控制失效的要求及标准中推荐的控制失效的技术和措施的建议,详述了控制随机硬件失效中对可变内存 RAM 进行诊断测试的 Galpat 测试法和 March 测试法,并分析了这两种测试方法可测试的 RAM 故障类型,以及如何选择可变内存诊断测试方法。最后对控制系统性失效的部分技术措施进行了解析。关键词:功能安全摇 控制失效 摇 安全完整性摇 多样化冗余摇 存储器单元摇 单元阵列中图分类号:TP202摇 摇 摇 摇 文献标志码:AAbstract:In accordance with the r
3、equirements of control failure and the recommended control failure techniques and measures in relatedstandards for designing and developing functional safety related products,the Galpat test method and March test method for diagnostic test ofvariable memory RAM in control of random hardware failure
4、are described in detail.The fault types of RAM that can be tested with these twomethods,and how to select the test methods for variable memory diagnosis test are analyzed.Finally,some of the technical solutions forcontrolling systematic failures are resolved.Keywords:Functional safety摇 Control failu
5、re摇 Safety integrity摇 Diversity redundancy摇 Memory unit摇 Cell array0摇 引言在安全相关产品的实现过程中,为达到控制危险失效的目的,需在软硬件的设计和开发中针对相应的安全完整性等级选择合适的措施,以保证安全相关产品在运行中控制失效。控制失效是安全相关产品的内在特性,这也是用于功能安全的安全相关产品有别于普通产品的典型特性。安全相关产品的安全完整性包括硬件安全完整性和系统性安全完整性,所以控制失效就是控制随机硬件失效和控制系统性失效。在运行中,不同的元器件有不同的退化机理且以不同的速率退化,虽然硬件失效是不可控的,但硬件失效可以通
6、过采用一定的方法诊断出来,所以可采用一些技术和措施检测出硬件的故障和失效,从而控制随机硬件失效。从功能安全的理念来说,控制随机硬件失效本质上就是降低不可诊断的危险失效。同样控制系统性失效有利于在线控制失效。为了控制随机硬件失效,在标准 IEC 61508.2 附录 A 中,表 A.2 表 A.14 对构成安全相关系统和产品的所有可能的各功能模块给出了推荐的诊断技术和措施,并推荐了在使用这些技术和措施时可实现的最高诊断覆盖率。当然对硬件模块的故障和失效的诊断方法不只限于标准所给出的,还可使用其他技术和措施。这些技术和措施只要能提供相应的证据,保证支持所声明的诊断覆盖率。表 A.15 A.17为每
7、一安全完整性等级推荐了控制系统性失效的技术和措施。下面就控制随机硬件失效和系统性失效所采用的一些技术和措施进行解析。1摇 控制随机硬件失效 可变内存1.1摇 可变内存的故障类型存储器的存储单元在逻辑上可用 D 触发器描述,对其操作是写入一位“1冶或者“0冶,写入的信息在下一次覆盖操作到来前一直保留。可变内存的功能模型如图 1 所示。29第 10 讲摇 实用功能安全设计技术解析摇 谢亚莲,等自动化仪表第 35 卷第 3 期摇 2014 年 3 月图 1摇 RAM 功能模型Fig.1摇 RAM functional model存储器由于自身的缺陷及受周围环境的影响而产生故障,预期主要有五类故障,这
8、五类故障分别介绍如下。淤 固定型故障(stuck鄄at fault):一个存储器的存储单元总是保持在“0冶状态或“1冶状态,不能写入其他值。于 变迁故障(transition fault):一个存储单元不能从“0冶状态变迁到“1冶状态,或者不能从“1冶状态变迁到“0冶状态。盂 固定开故障(stack鄄open fault):一个存储单元无法进入,即对这个单元既不能进行写操作,也不能进行读操作。榆 耦合故障(coupling fault):对一个存储单元进行写操作时,会影响到其相邻的单元,反之亦然。虞 数据保留故障(data retention fault):一个存储单元在一定的时间后会丢失它所
9、保存的内容。这五类故障在存储器的故障概率中约占 90%99%,现有的嵌入式存储器测试算法都是直接对存储器内部单元测试,不对存储器外围互连线进行测试。1.2摇 可变内存的诊断测试方法可变内存的诊断测试方法常用的有跳步模式(Galpat)测试法和跨步(March)测试法两种。(1)跳步模式(Galpat)测试法Galpat 算法目前是 RAM 测试法之一,它的具体步骤如下。淤 先将被测试的 RAM 存储单位的数据备份;于 初始化该存储单位为 0;盂 将存储单位的值与 1 左移 n 位的值进行按位或运算(n 为从 0 开始的存储器位数);榆 读取该存储单位的值与运算后的值是否一致;虞 如果不一致,报
10、故障错误,程序停止执行;愚 否则,重复执行步骤于 虞,直到该存储单位的每一位都测试完;舆 重新按位初始化存储单位的值为 1;余 将存储单位的值与 1 左移 n 位的值进行按位异或运算;俞 读取该存储单位的值与运算后的值是否一致;逾 如果不一致,报故障错误,程序停止执行;訛輥輯 否则重复执行步骤舆 逾,直到该存储单位的每一位都测试完,则可以证明该存储单位是无故障的。Galpat 测试法简化图如图 2 所示。图 2摇 Galpat 测试法简化图Fig.2摇 Simplified drawing of Galpat testing methodGalpat 测试算法的测试故障覆盖率较高,能够测试固定
11、型故障、变迁故障、固定开故障以及大部分耦合故障。由 Galpat 的时间复杂度为 o(n2)(n 为被测试存储器的位数)可知,该测试算法需要花费的测试时间较长,对于大容量存储器来说并不适合。(2)跨步(March)测试法常见的 March 算法包含 MATS+、March C-、March C+、March B、March LR、March SR 等。这些算法的不同之处就是包含的 March 元素各不相同,每种 March 算法包含多个 March 元素,每个 March 元素都由地址变化顺序、读写的操作和操作的数据三部分组成。目前最常用的是 March C+,因为其故障覆盖率最高。March
12、 C+算法简化图如图 3 所示。图 3摇 March C+算法简化图Fig.3摇 Simplified drawing of March C+method摇 摇 图 3 中:符号“邙冶表示地址升序;符号“邬冶表示地址降序;“R0冶表示读 0 操作;“R1冶表示读 1 操作;“W0冶表示写 0 操作;“W1冶表示写 1 操作;M2 M7 表示 6 个 March 单元或 6 个状态机状态。39第 10 讲摇 实用功能安全设计技术解析摇 谢亚莲,等PROCESS AUTOMATION INSTRUMENTATION Vol郾 35 No郾 3 March 2014March C+算法的步骤如下。淤
13、 先将被测试的 RAM 存储单位的数据备份;于 初始化该存储单元为 0;盂 按照升序从地址 0 到最大地址依次进行读出0,再写入 1,再读出 1;榆 按照升序从地址 0 到最大地址依次进行读出1,再写入 0,再读出 0;虞 按照降序从最大地址到 0 地址依次进行读出0,再写入 1,再读出 1;愚 按照降序从最大地址到 0 地址依次进行读出1,再写入 0,再读出 0;舆 按照降序从最大地址到0 地址依次进行读出0。March C+算法同样能够测试固定型故障、变迁故障、固定开故障和耦合故障。由该算法的时间复杂度为 o(n)可知,该测试算法可以运用到大容量的 SRAM测试、SDRAM 测试等存储器测
14、试领域。1.3摇 可变内存诊断测试方法的选择采用软件测试内存的完好性,需兼顾到测试所需时间与诊断覆盖率,原则上对处理器及内存的故障诊断测试不应影响到产品(系统)的主功能,所耗时间不应大于 1 h。所以在实际产品开发中,采用软件诊断处理器及可变内存的故障时,在低要求模式下需考虑以下三个时间量的兼容性:淤诊断测试时间间隔;于诊断程序完成一次对可变内存检查的时间;盂平均修复时间(mean time to restoration,MTTR)。在高要求连续模式下,当故障裕度(hardware fault tolerance,HFT)=0 时需考虑以下四个时间量的兼容性:淤诊断测试时间间隔;于诊断程序完成
15、一次对可变内存检查的时间;盂过程安全时间(process safety time,PST);榆要求率。因此,在选择故障诊断测试方法时需兼顾诊断覆盖率及以上所提到的几个时间量。2摇 控制系统性失效当使用复杂硬件和软件时,失效的重点将从随机失效转变为系统性失效。控制系统性失效包括:淤控制软硬件设计引起的失效;于控制由环境应力或影响引起的失效;盂控制操作过程的失效。控制系统性失效的部分技术和措施解析如表 1 所示。表 1摇 控制系统性失效的部分技术和措施解析Tab.1摇 Partial techniques and measures to control systematic failures失效分
16、类技术/措施针对对象实现方法由硬件设计引起的失效程序顺序监视处理器的时钟存在问题硬件设计访问端口和边界扫描结构的标准测试检测 IC 的失效软硬件设计由软件设计引起的失效故障检测基于冗余(检测硬件故障)和多样性原理(检测软件故障)软硬件设计错误检测和纠正代码用于检测敏感信息中的错误软件设计失效断言编程在执行一个程序期间检测残余的软件设计故障软件设计多样化冗余(多种程序设计)在执行一个程序过程中检测和屏蔽残余软件设计和实现的故障软件设计由环境应力或影响引起的失效防电压击穿、电压波动、过压、低压和其他可能导致危险现象的措施电压硬件设计提高抗干扰性电磁干扰硬件设计抗物理环境(如温度、湿度、水、振动、灰
17、尘、腐蚀物)的措施物理环境结构设计外壳设计控制操作过程的失效修改保护防止修改硬件软硬件设计输入确认操作员自己检测操作过程中的错误软件设计失效断言编程由程序来检查控制操作过程中输入参数的正确性软件设计摇 摇 由表 1 可以看出,控制系统性失效归根结底还是由产品的设计尤其是软件和硬件的设计来实现的。譬如,在自动扶梯安全相关系统上实现“修改保护冶。为了防止对安全相关系统的硬件进行更改,安全相关系统的逻辑处理单元通过对传感器信号特征的辨识确定传感器单元的完好性和正确性。更进一步讲,为了防止自动扶梯用户私自拆除安全相关系统,在自动扶梯控制系统上设置了“门锁冶,只有在安全相关系统正常启动给出解锁信号后,自动扶梯控制系统的“门锁冶才会打开。这里“门锁冶和“钥匙冶通过软硬件设计来实现,以防止拆除安全相关系统这一重大硬件更改。3摇 结束语控制失效是安全相关产品设计的关键点,是安全相关产品的内在特性。在安全相关产品的软件设计和硬件设计中融入控制失效的要求,就能设计出满足硬件安全完整性和系统性安全完整性要求的用于功能安全的合格的产品。49第 10 讲摇 实用功能安全设计技术解析摇 谢亚莲,等