数字电路测试生成算法综述..docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字电路测试生成算法综述.

数字电路测试生成算法综述 于功敬,魏蛟龙 (北京航天测控技术公司,北京 100830) 摘要:随着数字电路的规模和复杂性不断增加,自动矢量生成技术己日益成为数字电路测试与诊断的瓶颈环节。本文主要讨论了电路的测试及故障检测的一些基本问题,并对数字电路测试生成的主要算法进行了分析和比较。最后预测了测试矢量自动生成技术的发展趋势。 关键词:故障检测;测试矢量;数字电路;测试生成算法 引言 数字电路测试与故障诊断包括四个步骤:建立故障字典、加载激励、回收响应和分离故障,即选择激励通道和响应通道并建立激励矢量和故障模式之间的映射关系,然后向被测对象施加激励矢量,并采集其响应矢量,最后通过故障字典来分离故障。故障字典先于实际测试而建立,并直接用于测试结束后的故障分析,包含了被测对象故障征兆的全部信息,是贯穿四个测试诊断步骤的关键数据。而故障字典对于故障图样分辨能力和覆盖程度的优劣,完全取决于测试激励矢量的生成质量,这就是数字电路测试矢量自动生成技术所要研究的中心问题。 自从1966年Armstrong提出一维通路敏化法以来,数字电路测试矢量自动生成理论的研究课题经历了一个从雏型到成熟、从理论到应用、从实用到完备的发展历程。可以从不同的角度对不同的生成算法进行划分,如按时间跨度可分为传统算法和现代算法;按其是否引入随机策略可分为确定性方法和随机性方法;按其使用的分析工具可分为代数方法和结构性方法;而按其生成调度策略可分为串行算法和并行算法等。 本文主要介绍了布尔差分法、D算法系列、临界路径法以及G-F算法等,着重阐述其算法思想及其相互之间的性能比较,然后对现代ATPG理论中引入的新方法、新思路和前景等进行了简要的介绍。 布尔差分法 布尔差分法由Sellers等人提出,是组合电路测试生成的一种方法。其主要特点是将电路描述抽象为数学表达式模型,从而可进行严密的数学推导,因而具有较高的理论研究价值。这种方法通过对数字电路的布尔方程模型进行差分运算,能获得测试矢量集的一般表达式,并能求出所给故障的全部测试矢量,因此具有理论上的完备性。 考虑实现函数的组合电路C,若以a表示输入的s-a-0的故障,则故障电路对应的函数,我们用来表示这个函数。同样,若是s-a-1故障则故障对应的函数为[3]。 用布尔差分法求故障的测试矢量集的本质是求满足条件=1的测试矢量T,检测故障a s-a-0的测试组对应的矢量集为: T= = = 其中因子叫做f对布尔差分,用表示,它给出f值单独对值敏化的全部条件。因为把与故障输入值相反的信号值加到出故障的输出上,而保证这个信号能影响f的值,则表示s-a-0故障的全部测试组。同样,检测s-a-1故障的全部测试组由布尔表达式确定。 布尔差分法能获得测试集的一般表达式,可以求出所给故障的全部测试矢量。由于它将电路描述抽象为数学表达式,从而可进行严密的数学推导, 因此有较高的理论价值。 布尔差分法仅适用于组合逻辑电路。而且对于复杂性较高的电路,特别是对L S I、VL S I 电路,用它进行测试生成时需要做大量的布尔差分运算,复杂度高。 D算法及其改进算法 D算法是由Roth等人提出的,它克服了一维敏化法的局限,采用多维敏化思想的同时敏化从故障位置到电路的所有输出端的全部通路.它用5个值(0,1,X, D,)来描述电路中的各节点的状态.算法由故障激活、故障驱赶和线相容等步骤组成.只要所考虑的故障可测,用D算法就一定能求得故障的测试[4]。 D算法的基本步骤分为三大部分: 1)故障激活,即使故障的影响能反映出来。某线s-a-0故障的激活条件是使该线出现1值的原始输入矢量;某线s-a-1故障的激活条件是使该线出现0值的原始输入矢量。具体做法是:选择故障的一个原D立方作为初始测试D立方。 2)正向驱赶,也称D驱赶,即将当前测试D立方与有关元件的传播D立方进行D交,目标是使D或信号向电路输出端推进。D交的结果为新的测试D立方,可表示为。D驱赶要进行到输出端出现D或为止。 3)反向跟踪,也叫一致性操作,即将当前的测试D立方与有关元件的奇异立方进行D交,目标是求得电路中尚未确定的信号值。可表示为。一致性操作要进行到求得电路原始输入端的一组无矛盾的值为止,这组输入值就是所求的一个测试。 D算法的特点是具有通路敏化的能力,即它能在几条扇出重会集的路径上传播故障,这是一维通路敏化方法所不具有的。但D算法在选择敏化通路时其随意性太大,尤其是考虑多通路敏化时各种组合的情况太多,然而真正有效的选择往往较少。因此在做D算法时,做了大量的返回操作,所以很难付诸实际应用。 为了尽可能减少返回操作的次数,大大缩短计算时间,使D算法能真正付诸实践,又产生了各种改进的算法。如 PODEM(Path-

文档评论(0)

stzs + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档