第34卷第4期
2005年8月
电子科技大学学报
Jo哪alofUESTofChina
V01.34No.4
Aug.2005
基于布尔差分的数字逻辑电路故障诊断
杨俊华1,尚志恩1,吕 锋2
(1.河北师范大学职业技术学院石家庄050016:2.河北师范大学数学与信息科学学院石家庄050016)
【摘要】讨论了数字系统的故障
的内涵,阐述了故障的可测性定理,并以组合逻辑电路为例,介绍如
何利用布尔差分法求解其全部测试码,给出了多重故障测试码的公式,说明了布尔差分法数字系统故I章诊断的局
限性. 、
关键词故障诊断;测试码;组合逻辑电路;布尔差分
中图分类号TP277 文献标识码A
FaultDiagnosisoftheDigitalLogicCircuitBastonBoolean
DifIferenceCalculus·
YANGJⅧ-hual,sHANGzhi—enl,LIJFen矿
(1.Colle伊of、bc砒i∞alEducati∞,HebeiN蚴alUI曲粥姆shDiazhu锄g050016:
2.M砒咖硝锵趾dInfbnnati咀HebciN咖8lUnjV粥时shjiazhu蛐g050016)
AbstractTheapplyingof也ela唱escale趾dsuperla玛escaleintegra=teciI.Cuitinelec仃0niC
syStenlsgraduallyabmad.Theresearchto血efaultdia印osisdesi弘fortes乞abili够oft11edigitalsystem
drawstlleteclln0109酬sfIlllyattention.Multi-faultfmnula瞅黼givenint11isp印er.Thepapers仃esses
mefaultdia印osis锄dtestsetanddesi盟fbrte鼬i1埘byB00le锄a培ebrame吐10d.
Keywordsfaultdia髓osis;testset; c砌binational109icc如uit;Boole锄diff-erencecalcuIus
数字电路的故障分析不仅是数字系统分析的重要方面,还是正常电路功能分析的重要补充,也是数字
系统理论应用到实践——构成实际系统所必须具备的基本知识和技能。数字系统的故障分析包括【1,2】:1)发
现故障,识别故障的基本类型;2)确诊故障的原因与部件;3)防止故障的对策。
1故障可测性定理
当且仅当下列条件满足时,组合电路的故障可检测:1)至少存在一个输入矢量能使故障处出现逻辑错
误;2)这—错误信息能传播到一个基本输出端。此定理给出了故障可检测的充要条件。按条件1),至少要
求有一个输入矢量,使电路在该输入作用下,故障处的正确逻辑值正好与实际故障值相反,产生逻辑错误
信息。条件2)保证了这一错误信息能从一个基本输出端观察到,即被测试到。
检测故障的方法有:通路敏化法、D算法、布尔微分法、布尔差分法等,各种方法都有它自己的优缺
点,本文主要以布尔差分法来获得组合逻辑电路的故障测试码。
2用布尔差分法求测试码
为了诊断组合逻辑电路的故障,必须先求出初始输入测试码。显然应用敏化通路法可以求出组合逻辑
收稿日期:2005—08—27
基金项目:国家自然科学基金资助项目(60374020):河北省自然科学基金资助项目@2004000180);河北省科技攻关资助项目(04213573)
作者简介:杨俊华(196l一)。女,大学,副教授.主要从事计算机硬件应用方面的研究.
万方数据
518 电子科技大学学报 第34卷
线路的测试码,但这一方法是建立在观察和分析的基础上,在很大程度上决定于应用人员的经验。布尔差
分法以严格的数学运算为基础,按照一定步骤进行运算,便可正确地求出所需要的输入测试码。
2.1布尔差分的定义及性质
假定有一组合逻辑线路,它的初始输入布尔变量记为确,娩,⋯,%,它的输出布尔函数记为厂@-,屹,⋯,
南),被检测通路上的布尔函数记为Ⅸ@I,娩,⋯,%)。如果在组合逻辑线路的某—通路存在有—个固定0或固
定1故障,则其输出函数当故障为固定0时可以表示为触l,娩,⋯,札l,0,硌l,⋯,%),当故障为固定l时表
示为厂Gl,jc2,⋯,椎I,1,孙t,⋯,%)。这两个不同的输出布尔函数式的异或运算称为布尔差分,记为彭阱,,
它的定义为:
定义1
彭驺y电=厂@l,娩,⋯,稚l,O,稚l,⋯,砧。厂Gl,娩,⋯,椎l,1,‰l,⋯,%)2
厂Gl,娩,⋯,札I,而,‰l,。,%)o厂@l,娩,⋯,稚l,i,‰l,⋯,b) (1)
称为厂∞对砖的布尔差分。
根据布尔差分的定义可知,若输入变量而的正确取值和错误取值两者所对应的输出变量的值不相同,
则此布尔函数对而的布尔差分等于1,若两者相同,则此布尔函数对而的布尔差分等于0。这是用布尔差分
检测组合逻辑线路有无故障的基础。
定义2当且仅当而取反时,布尔函数脚逻辑值不变,即
1厂G1,娩,⋯,%⋯,%)=俺I,娩,⋯,墨,⋯,砧,
则称布尔函数厂(的与x,无关。
定义2即妒(的/d秘=o的充分必要条件是厂∽与而无关,而的错误将不影响最终的输出函缈C的。
定义3
d2厂(x)/d(■,x,)=厂@l,x2,⋯,x,,⋯,而,⋯,硝。厂Gl'x2,⋯,-『,⋯,iJ,⋯,x。)(2)
称为布尔函数,r(.的对于而和而的双重布尔差分。
定义4当且仅当而和而同时取反时,布尔函娄妙@)的逻辑值不变,即
厂Gl,⋯,而,⋯,而,⋯,%阿@l,⋯,葺,⋯,乃,⋯,而)
则布尔函数厂∽与两个变量两和而是无关的。由定义4推出,双重布尔差分d7@)/d@,咿。的充要条件是布尔函娴与两个输入变量硝和而无关。显
然,布尔差分有两个性质:
性质1如果厂@l,吻,⋯,椎l,o,稚l,⋯,砧=厂Gl,吻,⋯,稚l,1,札l'⋯,硝,则d厂涮(妒o。
布尔差分为0,说明在x,处无论是有s_a_O故障()铲O),还是有s-a-1故障(j旷1),输出布尔函数都相同。也
即是在x,处不管有什么类型的故障,对输出都无影响。所以在此情况下,而处的故障无论是s-a-0,还是s_a_1,
都是不可检测的。
例:设有一组合逻辑电路输出函数为厂∞=i工:瓦+x3+砭x3+x,,问娩处的故障(s·a-o或s-a-1)可否检
测。该输出函数的布尔差分为:
d厂(x)/叱=厂(毪)0厂(夏)=(墨吃焉+黾+夏黾+而)0(夏瓦写+x3+吃而+墨)=瓴+黾)0(夏+黾)=0
结果表明,输入变量殇的故障不能引起输出错误。所以,屹处的故障(s.a_1和s—a-O)是不可检测的。
性质2如果/@l,娩,⋯,工f_l’%稚l'⋯,砧≠厂Gl,娩,⋯,稚I,夏,靠1,⋯,功,则妒(Ⅳ)/咄=10布
尔差分为1,说明在而处有s.a_O故障∞=0)时的输出布尔函数与而处有s.a-l故障0cf_1)时输出布尔函数不相同。
即x,处的故障对被测线路有影响,且x,处的故障无论是s-a-0或s-a-1,都可检测。
2.2求单故障测试码的公式
如果孔口。,口2,⋯,∞是被测通路Ⅸ@,,恐,⋯,硝线上的固定故障的测试码,则:
J,,v.、l
五“,艺,⋯,毛)旦掣f 一 (3)
%h,".,%)
如果敢口,,吃,⋯,砧是被测通路Ⅸ@。,娩,⋯,砧线上的固定1故障的测试码,则:
万方数据
第4期 杨俊华等:基于布尔差分的数字逻辑电路故障诊断 519
五(■,%,⋯,矗)堂盟l :1
咄Ir“.口2.⋯㈤
(4)
式中珥=0或1。应用布尔差分的性质1、2,可以判断被测通路上的s-a.O故障和s.a-l故障可否被检测。用式
(3)可求出被测通路墨@。,娩,⋯,硝线上同类单故障s-a_0的测试码。将求得的测试码Z№,,口2,⋯,嘲加到被测
线路的
输入端,如果被测线路的输出端z=1,说明Ⅸ@,,娩,⋯,砧线上无s-a-0故障,反之则有。应用式(4)
可求出被测通路五缸。,娩,⋯,硝线上同类单故障s_a.1测试码。将求得的测试码Z№,,吃,⋯,%)加到被测线路
的标准输入端,如果被测线路的输出端z=1,贝怄融,,吻,⋯,砧线上有s-a-1故障,反之则无。
设有一个组合逻辑电路如图1所示,求通路s上乩处的单故障s-a-0和s-a_1的测试码。
1)判断故障s.a-0和s.a.1在此线路中是否可测。
F∞=妇x1,知%+秘
掣=(o_)。(1五)=o。而=墨≥o一=¨,LlⅢIlL-=IJⅢL=L;¨‘lX且
所以根据性质2判断,耽处的故障s-a-0和s-a_1是可测的。
2)求k处故障s.a-0的测试码。根据式(2),则有:
蜀
尼
为
图1组合逻辑电路
_挈l :_五吨Ⅷ西:置恐+而弓:1%lr吼’口2.a3,
只有当选取{x1,屹,而)={1,1,x;1,毛l>为测试码时上式才成立,所以{1,0,1;1,1,0;1,1,1)就是K处s-a-
O故障测试码集。将此测试码加到图1所示电路输入端时,如果输出为1,则施处无s-a-0故障;如果为O,则
有s.a.O故障。
3)求k故障s-a-1的测试码。根据式(3),则有:
=吃+玛五兰而夏焉=1
辆,口2.毋)
只有当选取缸。,吻,秘)={1,0,O)为测试码时上式才成立,所以{1,O,0)就是确处s—a-1故障的测试码。当将
此测试码加到图1电路的输入端时,如果输出为1,则确处有s.a-l故障:如果为0,则鞠处无s.a-1故障。
2.3求多重故障测试码的公式
如果嗽l,口2,⋯,∞是被测单通道的串联线路f,,,Ji},⋯,肌上固定O多重故障测试码,则:
行五“而⋯,矿,吒)掣l :1 (5)兀五“,恐,⋯,而,⋯,吒)羔导I =1 (5)
扛1 a弓 lr(q,口2。⋯,%)
如果胞。,锄,⋯,q,⋯,嘲是被单测电路的串联线f,工屯⋯,m上固定1多重故障的测试码,则:
"l--———--—--------——---------—----------·-一
兀五(而,吃,⋯,而,⋯,%)
i=1
式中舷)=厂@。,恐,⋯,砧被测线路的输出布尔函数;五@。,娩,⋯,而,⋯,硝是对应于被测线f的布尔函数;
f,,,毛⋯,m是被测线路的不同线号;口部或1。如果在单通道S的任何一条串联线f,j『,毛⋯,肌上的固定O或固
定1的故障分别有:
亘乃㈦,⋯巾訾=o兀石,G,而,⋯,吒)兰#z=op=J U工。
五
(7) 五琢丽掣:o (8)‘ @。
式中 JP=‘,,岛⋯,m。则在单通路S上的同类型多重故障是不可
墨
检测的。应用式(5)求出单通路同类型多重故障s-a_0的测试码,将五
求得的测试码加到被测线路的输入端,如果被测线路的输出乒l, 图2多级组合电路
说明在此线路上没有同类型多重故障s—a.0,反之则有。应用式(6)求出单通路同类型多重故障s.a-1的测试码。
将求得的测试码加到被测线路的输入端,如果被测线路的输出z=1,说明在此线路上至少有一处有s-a-1故障,
万方数据
520 电子科技大学学报 第34卷
反之则无。一种常见的多级逻辑线路如图2所示。求单通路S(1—5—8—9)上扔和瓿处同类型双重故障s-a-0和
s.a.1的测试码。
1)判断上述线路中的故障s.a-0和s.a-1是否可测。
用xl=@l娩+x2x3Ⅻ池,坞2%l恐,施=xlx2+x2而
挈:(o+石)毛%。(1+雨而黾:(夏+写)为确。而确:恐黾黾≠o
挈=o而_。1恐_=恐硝≠o
uh
因此,根据式(7)、(8)判断,砖和粕处的双重故障s-a-O和s-a-l都是可以检测的。
2)求如和魂处s-a-0故障的测试码。
根据式(5),则有: ,
黾警黾警嘲州榭雨%砀嘲而纠
当缸l,娩,扬,札>={1,1,l,l>时,上式成立。所以,{1,1,l,1)就是如和魂处s_a-0故障的检测码。当将此
测试码加到图2所示的组合逻辑线路的输入端时,如果输出z=1,则如和施处无s-a-O故障,反之则有。
3)求玛和施处s.a_1故障的测试码。
根据式(6),有:
瓦等写警=磊而而磊雨龇嘲恐叫
当缸l,娩,秘,确>={O,1,1,1)时,上式成立。所以,{0,1,l,1)就是巧和施处s-a-1故障的测试码。当将此
测试码加到图2所示的组合逻辑线路的输入端时,如输出z=1,则扔和玩处至少有一处有s.a-l故障,反之则
无。
3结束语
用布尔差分法获得组合逻辑电路的检测故障的全部测试码,即求得了所有激活故障以及所有可能敏化
的传输路径。该方法适用于中、小规模组合逻辑电路。随着元件规模的增大和系统的日趋复杂,该方法也
有不足,由于计算布尔差分是一项很麻烦的工作,尤其是求高阶布尔差分更是困难。同时它要处理大量文
字符号的计算,在计算机上运行有一定的困难。因此,需要在设计新的芯片或系统时就充分考虑测试的需
要,进行可测性设计。
参考文献
【1】nayseA,DaviaM.Boole锄di虢rcncecalculllS锄ditsapplic砒iontos订itchiIlgtheor),【J】.mEEn蚰s.Comp此
l973,C一22:409-420
【2】杨士元.数字系统的故障诊断与可靠性设计(第2版)D旧.北京:清华大学出版社,2000
[3】王毓银.数字电路逻辑设计(笫3版)嗍.北京:高等教育出版社,1999
[4】邹逢兴.计算机应用系统的故障诊断与可靠性技术基础咖.北京:高等教育出版社,1999
编辑漆蓉
万方数据
基于布尔差分的数字逻辑电路故障诊断
作者: 杨俊华, 尚志恩, 吕锋, YANG Jun-hua, SHANG Zhi-en, U Feng
作者单位: 杨俊华,尚志恩,YANG Jun-hua,SHANG Zhi-en(河北师范大学职业技术学院,石家庄,050016)
, 吕锋,U Feng(河北师范大学数学与信息科学学院,石家庄,050016)
刊名: 电子科技大学学报
英文刊名: JOURNAL OF UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA
年,卷(期): 2005,34(4)
被引用次数: 0次
参考文献(4条)
1.THAYSE A.Davia M Boolean difference calculus and its application to switching theory 1973
2.杨士元 数字系统的故障诊断与可靠性设计 2000
3.王毓银 数字电路逻辑设计(第3版) 1999
4.邹逢兴 计算机应用系统的故障诊断与可靠性技术基础 1999
相似文献(10条)
1.期刊论文 沈茜 数字电路测试的故障诊断和测试码生成 -科技资讯2007,""(34)
随着数字电路的广泛应用,电路的测试与故障诊断已成为设计与生产过程中重要的组成部分.本文讨论了电路的测试方法、故障模型和利用通路敏化
法导出测试码等问题,需要在数字电路安装之前对元件进行逻辑功能测试,从而避免因器件功能不正常而增加测试的困难.
2.学位论文 寻晓青 "门级故障诊断测试码自动生成系统"--电路预处理实现与可测性度量研究 1994
3.会议论文 郑清水.马志瀛 现代电器设备电路数字故障诊断 2002
本文提出了一种全新的方法对电器设备电路进行故障诊断,该方法借鉴数字电路故障诊断技术,采用布尔差分法生成测试码,并将测试码施加于电器设
备电路.经过处理后的电器设备电路,其测试码生成、施加都可以在微机上实现.该方法简单可行,对大型的电器设备电路具有重要的指导性意义.
4.学位论文 武永乐 门级故障诊断测试码自动生成系统研究 1993
5.学位论文 卢代军 基于LASAR仿真的测试程序开发 1999
该论文的工作是LASAR应用研究课题的一部分.在LASAR仿真软件的支持下,该文用人工生成测试码的方法,对052舰的ZKJ-4B型指控系统的两块电路板
(156板和534板)开发了两 套测试程序,均达到了较高的故障覆盖率和故障隔离率.文中概括了基于仿真的测试程序开发的一般方法.人工测试生成依赖于
开发人员的经验和电路知识,所需开发时间长,而完全意义上的"自动测试"不应实现测试码的自动生成,该文提出一种基于器件级激励程序的电路板级汲励
程序的自动生成方法.TPS的开发难度和所能达到的故障覆盖率和故障隔离率, 与电路板本身的可测性是紧密相关的.该文从LASAR应用的角度出发,提出了
一些实用的板 级可测性计方法.
6.期刊论文 倪军.杨建宁.成立.徐丽红.NI Jun.YANG Jian-ning.CHENG Li.XU Li-hong VLSI边界扫描测试故障诊
断及其策略研究 -半导体技术2006,31(8)
介绍了支持JTAG标准的IC芯片结构和故障测试的4-wire串行总线,以及运用边界扫描故障诊断的原理.实验中分析了IC故障类型、一般故障诊断
和进行扫描链本身完整性测试的
,并提出了一种外加测试码向量生成的算法.该故障诊断策略通过两块xc9572 pc84芯片互连PCB板的实现方法进行验
证,体现了该策略对于芯片故障定位准确、测试效率高、控制逻辑简便易行的优越性.
7.学位论文 陈亮 基于IEEE1445标准的电路故障诊断技术研究与实现 2004
标准化是当今测试技术发展的趋势,IEEE1445是数字电路诊断中一个十分重要的国际标准,它为众多的ATE设备制造商提供了一个输入测试码的通用标
准,依据该标准来设计和制造自动测试设备,可以有效的延长ATE的生命周期和扩展它的适用范围.在利用IEEE1445标准来完成电路板的故障诊断时,矢量的
约简是整个测试程序开发过程中的一个难点.本文在深入研究粗糙集理论的基础上,提出了利用可辩识矩阵和分辨函数来提取最小测试集的约简算法,试验
结果表明该算法在保证故障覆盖率的前提下,能够有效的优化测试激励集.IEEE1445标准共涉及总计39个不同内容的数据文件,每个文件有自己特定的格式
,分别描述了用于电路板诊断所需的详细信息,其中包括各种激励、输入输出管脚、故障的名称、对应的输出模式等信息.这些数据文件可组织成4个
不同的功能组:UUT模型组、激励与响应组、故障字典组和探针组.本文详细的介绍了IEEE1445标准所涉及到的三种诊断方式:端到端、故障字典、探针,而
且对这三种诊断方式的诊断机理做了深入的讨论,最后以流程图的方式描述了三种诊断方式的具体实现过程.另外,以中国北京航天测控公司支持的"板级
产品故障诊断软件开发平台"项目为背景,本文采用COM组件技术实现了基于IEEE1445标准的故障诊断模块,并将其集成到整个软件开发平台中.最后本文给
出了应用IEEE1445标准来完成具体诊断任务的实例,诊断结果表明基于IEEE1445标准的故障诊断模块能高效的完成实际的故障诊断任务,具有很强的实际
意义.
8.期刊论文 罗春桥.林争辉 基于BIST矩阵扫描的一种VLSI故障诊断策略 -上海交通大学学报2002,36(12)
针对规模大而复杂的VLSI(Very Large Scale Integrated-Circuit)提出了一种新的基于BIST(Built-In Self Test)的故障诊断策略.它通过对触发
器阵列扫描,可同时找出有故障的CUT(Circuit Under Test)和测试码以及与之相应的响应,从而能应用传统的非BIST设计故障诊断方法来定位故障门.它
克服了传统基于BIST故障诊断方法中数据量大,或者由于使用经过压缩处理的数据而带来的不确定性等缺点.电路结构简单可行,提供的相应算法也易于实
现.
9.学位论文 王立梅 基于PSpice的数/模混合电路故障诊断与虚拟测试设备研究 2004
EDA(Electronic Design Automation)技术已日趋成熟,与以往电子线路的设计、诊断方法相比,其方便快捷的电路仿真、人机交互界面、信息处理和
显示功能都展现出特有的优势.该文基于PSpice仿真,研究了数/模混合电路的故障诊断问题,并提出了虚拟测试设备的工作原理和实现方法.论文对国内外
现有故障诊断理论进行了研究和总结,归纳出一般电子线路的故障模式、模拟电路故障字典的建立方法及数字电路的故障诊断方法.随着电子技术的迅猛
发展,数/模混合电路大量涌现,集成电路的规模越来越大,测试这样的系统变得更加困难,因此需要合理的信号激励、精密的仪器测量及对被测信息的有效
处理.该文结合仿真技术,给出了电子线路故障诊断仿真原理图,同时针对如何在PSpice仿真中注入故障、测试点的选择策略等问题提出了自己的见解.此
外,基于PSpice建立一真实数/模混合电路的仿真模型,对选中的七种故障模式分别进行了仿真,给出了数/模混合电路测试点选取的方法及其测试码的特点
和生成过程,并建立了数/模混合电路的故障字典.为了使这种方法具有可操作性,将虚拟技术应用于测试领域,提出了虚拟测试设备的设计模型,给出相应
的工作原理图,并对其中各个功能模块的实现进行了详细的描述.同时,针对具体电路给出虚拟测试设备的工作流程图及相应的人机交互界面.最后全面总
结自己所做的工作,并对故障测试与诊断中存在的问题和今后的发展方向进行了探讨.
10.期刊论文 梁玉英.蔡金燕.封吉平.黄允华.LIANG Yu-ying.CAI Jin-yan.FENG Ji-ping.HUANG Yun-hua 组合逻
辑多故障诊断 -微电子学2000,30(3)
通过对布尔差分法的剖析,得到了组合电路单固定故障测试生成的简化方法.该方法不必进行异或运算,只须求解恒等式就能得到组合逻辑电路的测试
矢量.多故障的测试码产生可以对高阶布尔差分经过变换,转化为一阶布尔差分来处理,从而极大地减少了多故障测试生成的计算工作量.
本文链接:http://d.g.wanfangdata.com.cn/Periodical_dzkjdxxb200504023.aspx
授权使用:上海交通大学(shjtdxip),授权号:9e2db64f-6081-4eb5-a0d4-9e2d0142722a
下载时间:2010年11月13日