1.3.2 数字电路的故障诊断方法
数字电路故障诊断的原理是暗箱理论,是通过向被测电路的输入端加载激励信号,根据输出端的响应信号、整个电路的拓扑结构及一定的函数算法与运算规则,确定出电路的故障原因及其故障位置的。它的基本过程是,先通过测试程序在被测电路加载测试激励信号,然后在输出端得到该激励信号的响应信号,把得到的响应信号与正确情况下的进行比较,两者一致表明电路系统的功能正常,如果不一样就能判断被测电路存在功能性问题,并判断故障的位置。但是,应该认识到,对电路系统进行故障检测,并不是仅仅为了判断电路是否存在故障,而是为了判断出电路存在故障后,能对故障进行修复。实际上,故障修复是电子系统故障诊断中非常重要的一部分,不仅需要确定故障的位置,还要结合电路原理图和电路工作状态判断故障出现的原因。故障修复是建立在对使用的数字电路有清楚的认识的基础上的,后续在电路的设计和工艺上做出相应改进,提高电路的安全性和可靠性。
数字电路,是指用数字信号完成对数字量进行算术运算和逻辑运算的电路。由于数字电路中的状态非0即1,所以数字电路中的元器件需要拥有两种或多种状态来完成数字电路中的信号处理。
根据电路的逻辑功能,数字电路分为时序逻辑电路和组合逻辑电路两种。时序逻辑电路具有存储功能的触发器。时序逻辑电路的输出信号除了与当前的输入信号有关,之前的输入信号对逻辑电路现在的输出信号也有影响。而组合逻辑电路与时序逻辑电路不同,组合逻辑电路是由各种各样的逻辑门电路组成的,没有存储功能的触发器,没有存储记忆功能。这样的电路不存在反馈,某一时刻的输出信号只与这个时刻的输入信号有关系。
数字电路系统的故障诊断,需要逐步对故障进行定位,根据电路原理依照一定的顺序,结合数字电路的输入信号和输出信号进行比较,判断故障的位置。如果电路中存在非周期性的数字信号,传统的方法行不通,需要利用逻辑分析仪对数字电路进行测量,观察信号,判断被测数字电路的运行状态。实际上,常见的被测数字电路的输入和输出变量从几十个到数百个,被测数字电路系统的复杂度很高,对数字电路进行故障诊断的实际操作非常复杂。如果是时序逻辑电路和组合逻辑电路的混合电路,诊断的难度就更高了,所以需要计算机辅助处理,人工实现的可能性太低。
随着制造工艺更加精良,数字电路的器件越来越精细,集成度越来越高。但是电路中依然存在一定数量的缺陷,相当部分缺陷发生在电路内部,而进入数字电路的内部观察是不现实的,只能对电路的外部引线进行测量。
1.组合逻辑电路的故障诊断
组合逻辑电路任意时刻的输出状态仅由该时刻的输入状态决定。组合逻辑电路的故障诊断方法有多种,下面对常用的两种方法的原理进行阐述。
(1)伪穷举法
伪穷举法的主要思想就是,在所有可能的输入信号中,列出所有和故障有关的激励信号。显然,如果电路的输入信号只有几个,通过穷举法来进行诊断是可行的,但是如果数字电路的规模非常大,则穷举法非常烦琐。为了解决穷举法难以实现的问题,工程技术人员在穷举法的基础上提出了伪穷举法。
穷举法的最大缺陷就是工作效率低下。穷举法的时间复杂度是与解空间的个数有关的,而解空间的个数为2n(n是电路输入信号的维数)。
伪穷举法的关键就是分块,逐步细化与故障有关的端口,通过电路分块减小输入矢量的维度,降低电路的规模。
(2)故障表法
按照测试目录的选择,故障表法可以分为固定目录法和自适应目录法。固定目录法指的是,测试结果和选择哪个测试目录没有关系的故障表法。相反,自适应目录法指的是,测试结果和选择哪个目录有关的故障表法。
利用故障表法,求固定目录故障检测最小测试集,其主要过程如下:
1)第一,构造故障表。
2)第二,构造故障检测表。
3)第三,确定最小的测试集。
2.时序逻辑电路的故障诊断
由于时序逻辑电路中存在存储元件,所以时序逻辑电路的故障诊断的复杂性远大于组合逻辑电路。针对时序逻辑电路的故障诊断的解决方法主要包括两类:第一种叫作线路测试法;第二种叫作转换核对法。这两种方法的区别主要在于,工程技术人员对电路中的故障是否确定并且了解。线路测试法,是建立在工程技术人员对电路中可能发生的故障确定了解的基础上的;而转换核对法是假设工程技术人员对电路的故障不了解,但是知道要对电路实现的转换。前者在小规模电路中的应用比较多,效率比后者高。
(1)线路测试法
对于任意的同步时序逻辑电路来说,都存在一组最短的故障测试序列,可以覆盖电路中所有的永久性故障。
用线路测试法进行故障诊断时,先做如下的假设:
1)被测电路是最简状态的。
2)电路中的故障是永久性的固定0故障或固定1故障,或者多故障。
3)复位信号可以使被测电路处于唯一的初始状态,而且故障发生后会产生新的存储单元。
(2)转换核对法
转换核对法的一般步骤如下:
1)第一阶段,被测电路系统先到达一个指定状态,通常来讲,这个初状态是把一个复原序列加载到系统上,然后再观察电路系统的响应,直到被测电路的状态达到期盼的一种启动状态。
2)第二阶段,又称为状态识别阶段,把一个可以区分的序列重复地加载到被测电路系统上,观察电路系统的响应状态是不是有N种。
3)最后一个阶段,又称为状态核对阶段,在被测电路上执行所有可能的转换。