CN101251580A - 一种可诊断扫描链故障的电路装置及其诊断方法 - Google Patents

一种可诊断扫描链故障的电路装置及其诊断方法 Download PDF

Info

Publication number
CN101251580A
CN101251580A CNA2008101042519A CN200810104251A CN101251580A CN 101251580 A CN101251580 A CN 101251580A CN A2008101042519 A CNA2008101042519 A CN A2008101042519A CN 200810104251 A CN200810104251 A CN 200810104251A CN 101251580 A CN101251580 A CN 101251580A
Authority
CN
China
Prior art keywords
fault
scan
scan chain
chain
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008101042519A
Other languages
English (en)
Inventor
王飞
胡瑜
李晓维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNA2008101042519A priority Critical patent/CN101251580A/zh
Publication of CN101251580A publication Critical patent/CN101251580A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种可诊断扫描链故障的电路装置及其诊断方法,该电路装置由多个诊断扫描单元组成,每个诊断扫描单元包括扫描触发器,可测试性多路选择器和锁存控制器;锁存控制器的数据输入端直接与扫描触发器的SI输入端相连,锁存控制器锁存SI信号值或者锁存SI的相反信号值;可测试性多路选择器包括两个输入端Q1和Q2,其在控制信号的控制下让诊断扫描单元的输出端Q连接到其他诊断扫描单元的锁存控制器或者本诊断扫描单元的扫描触发器。其不仅可以准确诊断并容忍扫描链上发生的故障,还可以在扫描链上发生故障时,完成后续的逻辑诊断过程。

Description

一种可诊断扫描链故障的电路装置及其诊断方法
技术领域
本发明涉及集成电路可诊断性设计领域,尤其涉及一种满足可诊断性设计的D触发器电路装置及方法。
背景技术
近年来集成电路的设计广泛采用深亚微米和超深亚微米工艺以提升性能。同时,随着工艺尺度的缩小,芯片的缺陷密度逐渐增加,每代工艺中的量产学习过程也变得更加复杂。因此,在电路设计过程中广泛采用扫描(SCAN)设计技术以提升电路的可测性(Design-For-Testability,DFT)和可诊断性,从而提升芯片质量以及芯片生产的优良率。
扫描设计技术是在电路中插入一种称为扫描链的移位寄存器结构,通过扫描链可以非常方便地实现测试数据的有效传递以及内部状态的有效导出。
插入了扫描链的电路有两种模式:由测试使能(Scan Enable)控制的测试模式和工作模式。在测试模式下,扫描链接通,而在工作模式下,扫描链被旁路,电路按照原来的结构工作。
在器件内部实现的扫描又分为“全扫描”和“部分扫描”两种。全扫描是将电路中所有的时序单元都置换为扫描单元,并且接入一个或者多个扫描链中,这样可以非常容易地实现故障的控制和传导。部分扫描则是选择性地组成扫描链,比如可以将关键路径上的时序单元以及难于满足扫描结构要求的单元排除在扫描链之外,以确保芯片满足面积和性能方面的要求。
扫描测试的实现过程是:读入电路网表并且实施设计规则检查(Design RuleCheck,DRC),确保符合扫描测试的设计规则;将电路中原有的触发器或者锁存器置换为特定类型的扫描触发器或者锁存器(如多路选择D触发器,时钟控制的扫描触发器,以及电平敏感的扫描设计),并且将这些扫描单元链接成一个或者多个扫描链,这一过程称之为测试综合。测试向量自动生成(AutomaticTest Pattern Generation,ATPG)工具根据插入的扫描电路以及形成的扫描链自动产生测试向量。故障仿真器(Fault Simulator,FS)对这些测试向量实施评估并且确定故障覆盖率情况。
从测试角度而言,发现扫描链中的扫描单元是否存在故障并不困难。只要将flush向量(0011)移入并直接移出扫描链即可判断扫描链是否存在故障。
但从诊断角度而言,定位故障扫描单元却具有很大的挑战性,这是因为在向量移入过程中,故障扫描单元的上游将会被污染,而在移出过程中,故障扫描单元的下游会被污染,所以经过扫描移入移出过程后整条扫描链已被污染。
为解决定位故障扫描单元中存在的问题,目前有三类可行的方案,第一类方案就是专门为待测扫描链生成一组诊断向量;第二类方案将已有的失效向量注入故障模拟器,通过比较失效向量和故障模拟器的响应进行诊断;最后一类方案就是通过修改电路中的触发器单元提高电路的可诊断性。
在第一类方案中,测试向量生成方法可分成三种,一种是将待测扫描单元的故障效果通过组合逻辑传播给输出或者传播给可以正常观测的伪输出;第二种方法是把可以反映故障效果的逻辑值通过组合逻辑传播给待测扫描单元。对于以上两种方法只要在待测扫描单元上发现了与期望响应不相同的结果,就可以认为该待测扫描单元是存在故障的。第三种方法不是确定性测试生成方法,而是从功能向量中选取可以使得待测扫描链中所有扫描单元置1和置0概率相当的功能向量,通过比较失效芯片各输出的0、1出现概率和期望输出的0、1出现概率推断出故障扫描单元的位置。
第二类方案不需要为待测扫描链生成专门的诊断向量,而是利用已有的测试向量和这些向量的失效响应进行故障模拟。在诊断过程中,故障被注入到模拟器中,并施加向量得到相应的失效响应。通过比较从模拟器得到的失效响应和从测试设备上得到的实际失效响应估计故障注入位置与实际故障发生位置是否相同,如果相同则诊断过程结束,如果不同则反复迭代上述过程,直到得出满意的诊断结果。
但是,这两类方案得到的诊断分辨率均与电路结构相关,无法保证诊断的精度。
第三类方案是通过修改电路设计提高电路的可诊断性。大致分成两种方法,第一种方法为扫描单元提供旁路扫描链,使得扫描单元的扫描输出结果可以传播到多条扫描链上。第二种方法是为扫描单元提供某种置位的机制,在故障发生时,故障扫描链里的扫描单元被置成某种特殊的向量。这种特殊向量在移出过程中可以敏化一类或者几类故障。
通过修改电路设计的方法来提高电路的可诊断性可以确保逻辑诊断的精度,并在诊断速度上较前两类有较大的提高。
但是,现有的第三类方案,仅仅诊断扫描链上存在的故障。一旦扫描链上发生失效,后续的组合逻辑诊断过程也就无法进行,组合逻辑中的失效信息就不能够通过逻辑诊断获得。
发明内容
本发明要解决的问题在于提供一种可诊断扫描链故障的电路装置及其诊断方法,其不仅可以准确诊断并容忍扫描链上发生的故障,还可以在扫描链上发生故障时,完成后续的逻辑诊断过程。
为实现本发明目的而提供的一种可诊断扫描链故障的电路装置,由多个诊断扫描单元组成,其中:
每个所述诊断扫描单元包括扫描触发器,可测试性多路选择器和锁存控制器;
所述锁存控制器的数据输入端直接与所述扫描触发器的SI输入端相连,在扫描使能控制信号SE和RS的共同作用下,所述锁存控制器锁存SI信号值或者锁存SI的相反信号值;
所述可测试性多路选择器包括两个输入端Q1和Q2,其在控制信号的控制下让所述诊断扫描单元的输出端Q连接到其他诊断扫描单元的所述锁存控制器或者本诊断扫描单元的所述扫描触发器。
所述可测试性多路选择器和所述锁存控制器构成了诊断扫描单元的可诊断性电路。
所述扫描触发器为多路选择触发器,其包括DI输入端和SI输入端,其中,SI输入端输入为来自直接上游诊断扫描单元的扫描移位信号SI,DI端为数据输入端。
所述锁存控制器包括晶体管T1、T2和反相器G1、G2;
其中,反相器G1、G2组成锁存控制器中的锁存器;
在所述晶体管T1和T2的控制下,所述锁存器锁存的逻辑值可以被刷新为SI的逻辑值或者与SI相反的逻辑值;
所述晶体管T1和T2的门极与SE和RS连接;
当SE和RS均为0时,所述锁存器被写入逻辑值SI;
当SE和RS均为1时,所述锁存器被写入逻辑值SI;
当SE为1,RS为0时,所述锁存器保持原有逻辑状态。
所述扫描链包括两个控制输入端RS和DE,通过控制输入端RS和DE两个信号装置,完成对直接上游诊断扫描单元逻辑状态的存储和取反并传播至直接下游诊断扫描单元。
所述可测试性多路选择器包括晶体管T3和T4;
当DE为1时诊断扫描单元的输出端Q与T3连接;
当DE为0时诊断扫描单元的输出端Q与T4连接;
当Q与Q1端连接时,可诊断扫描单元的输出为锁存控制器的逻辑状态。
所述扫描链还包括至少一分布共享与门。
所述分布共享与门是根据共享半径r,在圆心处设置的共享与门,所述分布共享与门输出可以扇出到以r为半径的圆所能覆盖到的扫描触发器。
为实现本发明目的还提供一种扫描链故障诊断方法,包括下列步骤:
步骤A,向扫描链中移入由0011组成的flush向量并直接移出观察,可诊断性扫描链电路装置发现扫描链中的固定型故障;
步骤B,对于固定为0故障向扫描链移入全1向量;对于固定为1故障向扫描链移入全0向量,并采用“+”操作,由可诊断性扫描链电路装置诊断后移出观察,如果发现全1或者全0向量,说明故障发生在扫描链上,此时无法断定发生故障的扫描链路处于哪两个扫描单元之间,则进行步骤C;否则单独的0或者1所对应的扫描单元即为故障扫描单元的直接下游,那么故障位置定位成功,扫描链诊断过程结束;
步骤C,对于固定为0故障向扫描链移入全0向量,对于固定为1向扫描链移入全1向量并采用“-”操作,由可诊断性扫描链电路装置诊断后移出观察,诊断发生在扫描通路上的固定型故障。
为实现本发明目的更提供一种扫描链组合逻辑电路诊断方法,包括下列步骤:
步骤A’,根据故障位置对故障扫描链进行分段;
步骤B’,根据分段结果计算各段向量加载时刻;
步骤C’,根据加载时刻对诊断向量进行转换;
步骤D’,通过“+”、“-”操作将向量加载到故障扫描链中;
步骤E,捕获故障响应并通过“+”操作和移位操作将向量移出观察,得到诊断结果;
步骤F,判断是否还有诊断向量需要加载,如果没有则诊断过程结束;如有则返回步骤C。
所述分段为:
把扫描链截为三段:无故障虚拟扫描链,虚拟故障扫描链的故障上游和虚拟故障扫描链的故障下游。
本发明的有益效果是:本发明的可诊断扫描链故障的电路装置及其诊断方法,充分利用片上丰富的晶体管资源,能够提供精确诊断能力,并能够容忍扫描链故障以进行组合逻辑故障诊断,提高电路的可诊断性,并缩短逻辑诊断周期,降低逻辑诊断成本。
附图说明
图1为本发明可诊断扫描链故障的电路装置示意图;
图2为本发明可诊断扫描链故障的电路装置电路图;
图3为本发明诊断过程中的“+”和“-”操作时序图;
图4为本发明扫描链故障诊断过程流程图;
图5为诊断故障发生在扫描链路的扫描单元上的实例示意图;
图6为诊断故障发生在扫描链路的扫描通路上的实例示意图;
图7为本发明扫描链组合逻辑诊断过程流程图;
图8为扫描单元存在故障情况下扫描链路组合逻辑电路诊断实例示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的一种可诊断扫描链故障的电路装置及其诊断方法进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明的目的在于提供一种可诊断扫描链故障的电路装置及其诊断方法,其充分利用片上丰富的晶体管资源,提高电路的可诊断性,以缩短逻辑诊断周期,降低逻辑诊断成本。
在详细说明本发明的可诊断扫描链故障的电路装置及其诊断方法前,首先说明:
作为一种可实施方式,本发明的可诊断扫描链故障的电路装置,提供一种基于可诊断性设计的D触发器装置构成的可诊断扫描链故障的电路装置,即可诊断性扫描链电路装置,其把多个D触发器装置顺序链接构成满足可诊断设计要求的诊断扫描链故障的电路装置,在该电路装置中,每个D触发器装置称为诊断扫描单元。本发明同时给出了基于此电路装置的扫描链故障诊断方法,其能够有效地容忍了扫描链中存在的故障。
本发明定义扫描链的长度是该扫描链中扫描单元的个数;
从扫描输入到扫描输出,对每一个扫描链的扫描单元从大到小编号,称为扫描单元的索引;
对于一个给定的扫描单元,它的上游由所有索引值大于该扫描单元的扫描单元组成,类似的,它的下游由所有索引值小于该扫描单元的扫描单元组成。
如果直接上游诊断扫描单元的输出逻辑值被传播到直接下游诊断扫描单元,本发明称之为“+”操作,如果直接上游诊断扫描单元的输出逻辑值的相反值被传播到直接下游诊断扫描单元,本发明称之为“-”操作。
为本发明提供的可诊断扫描链故障的电路装置示意图。该电路装置由多个诊断扫描单元100组成,每个诊断扫描单元100三个部分构成,包括扫描触发器13,可测试性多路选择器12(DFD-MUX)和锁存控制器11。
其中,可测试性多路选择器12和锁存控制器11构成了诊断扫描单元100的可诊断性电路(即DFD电路)
作为一种可实施方式,本发明中,扫描触发器13采用可测性设计中广泛采用的多路选择触发器(MUX-DFF),其包括DI输入端和SI输入端,其中,SI输入端输入为来自直接上游扫描单元的扫描移位信号SI,DI端为数据输入端。
在本发明的可诊断扫描链故障的电路装置中,锁存控制器11的数据输入端直接与扫描触发器13的SI输入端相连,在扫描使能控制信号SE和RS的共同作用下,锁存控制器11可以锁存SI信号值或者锁存SI的相反信号值。
可测试性多路选择器12(DFD-MUX)包括两个输入端Q1和Q2,其在控制信号DE(输入端DE的输入信号)的控制下可以让诊断扫描单元100的输出端Q连接到其他诊断扫描单元100的锁存控制器11(当控制信号DE=1时)或者本诊断扫描单元的扫描触发器13(当控制信号DE=0时)。
当扫描使能控制信号SE=0时扫描触发器13在时钟的控制下锁存来自组合逻辑的信号DI;当扫描使能信号SE=1时扫描触发器13锁存来自直接上游诊断扫描单元100的扫描移位信号SI。
因此,当系统时钟的有效触发沿到达时,通过“+”和“-”操作,诊断扫描单元100中的锁存控制器11锁存的可能是其直接上游诊断扫描单元的扫描触发器13的输出逻辑值,也可能是锁存其直接上游诊断扫描单元的锁存控制器11的输出值,实现扫描链的故障诊断。
如图1所示,作为一种可实施方式,本发明实施例的可诊断扫描链故障的电路装置,包括第一诊断扫描单元,第二诊断扫描单元,第三诊断扫描单元,第四诊断扫描单元。当控制信号DE=I时,系统有效触发沿到来后,第二诊断扫描单元中的锁存控制器将把自己的逻辑状态传播给第一诊断扫描单元的扫描触发器13,又因为第二诊断扫描单元的锁存控制器中锁存的逻辑状态直接受第三扫描单元中的扫描触发器13的控制,所以在这种情况下,第二诊断扫描单元被旁路了,其数据通路如图1中的箭头所示。
如图2所示,为本发明的诊断扫描单元100电路示意图。图中虚线框内的部分为可诊断性电路(DFD电路),在该电路中,晶体管T1、T2和反相器G1、G2构成了图1中所示的锁存控制器11。
其中,反相器G1、G2组成锁存控制器11中的锁存器。在晶体管T1和T2的控制下,该锁存器锁存的逻辑值可以被刷新为SI的逻辑值或者与SI相反的逻辑值。
晶体管T1和T2的门极与SE和RS连接。也就是说,当SE和RS均为0时,锁存器被写入逻辑值SI;当SE和RS均为1时,锁存器被写入逻辑值SI;当SE为1,RS为0时,锁存器保持原有逻辑状态。
晶体管T3和T4构成图1所示诊断扫描单元100的可测试性多路选择器12(DFD-MUX),当DE为1时诊断扫描单元的输出端Q与T3连接,当DE为0时诊断扫描单元的输出端Q与T4连接。当Q与Q1端连接时,可诊断扫描单元的输出为锁存控制器11的逻辑状态。
所示可诊断性电路(DFD电路)的真值表如表1所示。
                       表1 DFD电路真值表
Figure S2008101042519D00081
较佳地,如图1所示,被诊断的扫描链比现有传统的扫描链多了两个控制输入端RS和DE,以及至少一个分布共享与门200。通过控制输入端RS和DE这两个信号装置,完成对直接上游诊断扫描单元逻辑状态的存储和取反并传播至直接下游诊断扫描单元,但对于整个扫描链来说,只是增加了一个全局信号DE,因为另一个控制输入信号RS来自于一个分布共享与门200的输出。
较佳地,所述分布共享与门200是根据共享半径r,在圆心处设置的共享与门,该分布共享与门200输出可以扇出到以r为半径的圆所能覆盖到的扫描触发器13。使得这个以r为半径的圆能覆盖到的扫描触发器13均共享该共享与门。扫描链中的多个扫描单元就可以共享一个RS信号,均衡了扫描链的布线开销和面积开销。
作为一种可实施方式,可以通过图的最小覆盖算法(如二分图最小覆盖(byHybridTheory算法)),找出在半径为r的约束下,共享与门数目的下限,也可以根据约束最少与门的数目,得出相应的共享半径r值。
下面说明本发明实施例中通过“+”和“-”操作,实现扫描链的故障诊断。如图3所示,两个逻辑状态S1和S2在“+”“-”操作的作用下在扫描链里传播的过程。其中图3中示例了“+”“-”操作的时序步骤和数据通路。
在图3中阶段501和502构成了“+”操作。在系统时钟处于低电平时,把DE和SE置为1,此时各个诊断扫描单元100的可诊断电路(DFD电路)打开,SI写入锁存控制器11,传播路径如图3中诊断扫描单元506和507间的实线箭头,标明了阶段501的数据通路。
随后,将DE设置为0,SE设置为1,诊断扫描单元的锁存控制器11进入保持状态,在阶段502中,系统时钟的上升沿到达,此时,诊断扫描单元的锁存控制器11中的值被传播给下游诊断扫描单元中的扫描触发器13。
在图3中,诊断扫描单元507和508间的实线箭头标明了阶段502的数据通路。至此状态S1从诊断扫描单元506在不经过诊断扫描单元507中的扫描触发器13的情况下传播至诊断扫描单元508的扫描触发器13。此时,诊断扫描单元507的锁存控制器11也存储了逻辑状态S1。
图3阶段503至505构成了“-”操作的时序图。在系统时钟为低的情况下,置DE=0,SE=0,此时各诊断扫描单元的DFD电路被写入为其直接上游诊断扫描单元输出逻辑值的相反值。
在图3中,诊断扫描单元508和509间的实线箭头标明了阶段503和504的数据通路,可以看到,诊断扫描单元508中扫描触发器13的状态S1传播到诊断扫描单元509的锁存控制器11时被取反为
Figure S2008101042519D00091
最后,在阶段505分别将DE和SE设置成0和1,诊断扫描单元的DFD电路保持其状态,并在系统时钟有效沿到来是将它传播出去,此时,逻辑状态从诊断扫描单元509的锁存控制器11传播至诊断扫描单元510的扫描触发器13中。
基于上述针对诊断扫描链的电路装置,图4示出了本发明提供的扫描链故障诊断方法流程图,该方法包括以下步骤:
步骤3.1向扫描链中移入由0011组成的flush向量并直接移出观察,可诊断性扫描链电路装置发现扫描链中的固定型故障;
在步骤3.1中,目的是为了发现扫描链中的固定型故障。当扫描链中发生固定为0(SA0)故障时可诊断性扫描链电路装置移出的向量为全0;当扫描链中发生固定为1(SA1)故障时可诊断性扫描链电路装置移出的向量为全1。因此,通过此步骤,可诊断性扫描链电路装置可以发现扫描链中是否发生固定型故障和固定型故障的类型。
步骤3.2,对于固定为0(SA0)故障向扫描链移入全1向量;对于固定为1(SA1)故障向扫描链移入全0向量,并采用“+”操作,由可诊断性扫描链电路装置诊断后移出观察,如果发现全1或者全0向量,说明故障发生在扫描链上,此时无法断定发生故障的扫描链路处于哪两个扫描单元之间,则进行步骤3.3;否则单独的0或者1所对应的扫描单元即为故障扫描单元的直接下游,那么故障位置定位成功,扫描链诊断过程结束;
在步骤S3.2中,目的是为了发现扫描单元上的固定型故障的位置,通过此步骤,在移出向量中如果发现在全1或者全0向量中的一位被置0或者置1,例如111011或者000100,单独的0或者1所对应的扫描单元即为故障扫描单元的直接下游,那么故障位置定位成功,扫描链诊断过程结束。但是,对于发生在扫描链路上的故障,移出的向量为全0或者全1,此时无法断定发生故障的扫描链路处于哪两个扫描单元之间,因此采用步骤3.3进行诊断。
步骤3.3,对于固定为0(SA0)故障向扫描链移入全0向量,对于固定为1(SA1)向扫描链移入全1向量并采用“-”操作,由可诊断性扫描链电路装置诊断后移出观察,诊断发生在扫描通路上的固定型故障。
在步骤S3.3中,目的是为了诊断发生在扫描通路上的固定型故障。通过此步骤,在移出向量中可以发现一个由连续1和连续0组成的向量,例如111000或者000111。连续0和连续1的交界处所对应的扫描单元即是故障扫描单元的直接下游扫描单元,扫描链诊断过程结束。
下面通过一可实施例进一步详细说明本发明的扫描链故障诊断过程。
设一条扫描链由6个扫描单元构成,其中扫描单元3存在一个SA1故障,移入一个flush向量并移出后发现移出向量为全1,说明扫描链中发生了SA1故障,此时存在两种可能:故障发生在扫描单元上和故障发生在扫描通路上。在本例中用图5和图6分别进行说明。如果故障发生在扫描单元上,全0向量加载后的扫描链状态如图5和图6所示,在向量加载完成后,采用“+”操作,当故障发生在扫描单元上时移出为111011,其中0出现的位置为故障扫描单元的直接下游。当故障发生在扫描通路上时,如果采用“+”操作,如图7所示,扫描单元704的逻辑值因为被扫描通路上的故障污染,无法将0传播给扫描单元702,此时观察移出向量为全1。通过这种现象可以判定故障发生在扫描通路上,随后移入全1向量,因为1不会敏化SA1故障,所以向量可以正确加载,如图6所示。向量加载完成后,采用“-”操作,此时除故障通路的直接下游扫描单元外,所有的扫描单元均被翻转成其直接上游扫描单元逻辑值的相反值,如图7所示。在移出后的向量为111000,则0和1的边界就是故障的直接下游。
根据扫描链故障定位结果,图7示出了在扫描单元存在故障的情况下,利用本发明的电路装置进行扫描链组合逻辑电路诊断方法流程图,该方法包括以下步骤:
步骤4.1,根据故障位置对故障扫描链进行分段,把扫描链截为三段:无故障虚拟扫描链,虚拟故障扫描链的故障上游和虚拟故障扫描链的故障下游。
因为故障只能存在于奇数或者偶数扫描单元上,所以,如果故障发生在奇数/偶数扫描单元上,则把故障扫描链上的所有奇数/偶数扫描单元称为虚拟故障扫描链,把故障扫描链上的所有偶数/奇数扫描单元称为虚拟无故障扫描链。
对于虚拟故障扫描链,根据故障的位置,再把扫描链分为故障上游扫描链和故障下游扫描链两段,对于无故障虚拟扫描链和虚拟故障扫描链的上游,向量通过SI端移入向量,对于虚拟故障扫描链的故障下游,通过故障扫描单元的直接下游扫描单元的可诊断电路(DFD电路)移入。
在步骤4.1中,向量分段的目的是区分向量移入的途径。因为故障扫描单元在向量移入过程中会把所有故障下游扫描单元污染,所以,要避免向量通过故障扫描单元向其下游传播。
步骤4.2,根据分段结果结合表2计算各段向量加载时刻;
在步骤4.2中,为了在各段虚拟扫描链长度不等的情况下可以同时完成向量移入,不同的段在不同的时刻加载扫描向量,根据步骤4.1的描述,无故障虚拟扫描链具有最长的扫描通路,因此最先开始移入向量,如果规定无故障虚拟扫描链开始移入向量的时刻为0时刻,那么故障虚拟扫描链的故障上游和故障下游向量移入时刻如表2所示。在表2中,F代理故障扫描单元的索引号,L代理扫描链的长度。
表2各段扫描链向量加载时刻表
  扫描链长度的奇偶性   故障位置的奇偶性   故障上游   故障下游
  偶   偶   F/2+1   L/2-F/2
步骤4.3,根据加载时刻对诊断向量进行转换;
在步骤4.3中,虚拟故障扫描链的故障下游的向量是通过故障扫描单元的直接下游扫描单元的可诊断电路(DFD电路)在“+”、“-”操作的基础上移入的。
式(1)给出了将从故障扫描单元的DFD电路移入的向量转换为“+”、“-”操作的方法。
d i &prime; = ( &Sigma; j = n i + 1 d j &prime; + d i ) &CirclePlus; SA , 0 &le; i < n - - - ( 1 )
在式(1)中,n为发生故障的扫描单元索引号。i,j为其下游虚拟故障扫描链的扫描单元索引号。di为扫描单元j所对应的初始向量的逻辑值,di’和dj’分别是扫描单元i和j所对应的转换后的向量,其中0代表“+”操作,1代表“-”操作。SA为故障类型。
因为“+”、“-”操作具有全局性,因此,对于从SI端移入的向量而言,应当预先计算,以保证最终向量移入的正确性。
式(2)给出了虚拟无故障扫描链和虚拟故障扫描链的故障上游向量的转换公式。
p i &prime; = &Sigma; j = i + st 1 - s t 0 n + st 1 - st 0 d j + p i , 其中 &ForAll; j < 0 d j = 0,0 &le; i < n - - - ( 2 )
在式(2)中,n为待转换虚拟扫描链的长度,i,j为扫描单元的索引号。pi为扫描单元i所对应的初始向量的逻辑值,pi’为转换后的逻辑值,st0代表该向量开始移入的时刻,st1代表当前向量移入的时刻。dj为st0至st1所采用的操作,0代表“+”操作,1代表“-”操作。
步骤4.4,通过“+”、“-”操作将向量加载到故障扫描链中;
在步骤4.4中,根据步骤4.3的转换结果,向量被施加到故障扫描链中,并通过步骤4.5捕获到响应。
步骤4.5,捕获故障响应并通过“+”操作和移位操作将向量移出观察,得到诊断结果;
在步骤4.5中,先通过移位将故障下游的响应移出,然后重复步骤4.4,利用“+”操作将无故障虚拟扫描链的响应移出,再重复步骤4.4,并进行一次移位操作,此次操作把虚拟故障扫描链的值映射到无故障虚拟扫描链,随后利用“+”操作移出。
步骤4.6,判断是否还有诊断向量需要加载,如果没有则诊断过程结束,如有则返回步骤4.3。
如图8所示,下面通过一个由9个扫描单元组成的故障扫描链上,进行逻辑诊断的过程,说明本发明的诊断过程。
在一个由9个扫描单元组成的故障扫描链上,其中在扫描单元804上存在一个SA1故障。那么无故障虚拟扫描链由扫描单元807,805,803,801组成。故障虚拟扫描链的故障上游由扫描单元808和扫描单元806组成。故障虚拟扫描链的故障下游由扫描单元800和扫描单元802组成。
扫描单元807,805,803,801和扫描单元808,806的向量通过扫描输入端移入向量。扫描单元802和扫描单元800的向量通过扫描单元803的DFD电路移入。
设待移入扫描链的向量为100110011。扫描链长度为奇数,故障扫描单元的索引值为偶数。根据表2,故障虚拟扫描链故障上游的移入时刻比无故障虚拟扫描链的移入时刻晚4/2=2周期,故障虚拟扫描链的故障下游的移入时刻比无故障虚拟扫描链的移入时刻晚9/2-4/2=2。整个无故障虚拟扫描链的长度为4,因此整个移入过程需要4个周期。在第0周期时,扫描链中所有的扫描单元处于未知状态(x)。此时在扫描输入端加载逻辑值1,如表3第一行所示,采取“+”操作后1被传播到扫描单元807,此时将逻辑值0加载到逻辑扫描输入端,如表3的第2行所示。在第2周期,依然采取“+”操作并将逻辑值1施加在扫描输入上。在第三周期,如表3中的第三行所示,在此周期故障虚拟扫描链的两段也同事开始移入向量。根据式(1)和式(2)的计算,在此周期应当采用“-”操作,且扫描输入端的输入向量为1,可以看到,在采用“-”操作后,0被传播到扫描单元2,其他无故障虚拟扫描链中的扫描单元被刷新为其直接上游扫描单元的逻辑状态的相反值。类似的,在最后一周期,采用“-”操作后,100110011被移入到故障扫描链。那么,对于无故障虚拟扫描链,移入的值为1011,对于虚拟故障扫描链的故障上游,移入的值为11,为了将向量移入虚拟故障扫描链的故障下游,采用的操作为“+”、“+”、“-”、“-”。
下面介绍向量的移出过程。在捕获到响应后,首先将无故障虚拟扫描链的向量移出,就本例而言,将扫描单元807,805,803,801沿图7中虚线所示路径用“+”操作移出。随后重复移入和捕获响应过程,随后移位一次。那么扫描单元808的逻辑值被移到扫描单元807,扫描单元806的逻辑值被移到扫描单元805,以此类推。然后通过“+”操作把无故障虚拟扫描链的向量移出。至此,扫描链中的所有响应均被移出。
表3在向量加载过程中扫描链中各扫描单元的状态
Figure S2008101042519D00141
从技术方案可以看出,本发明具有以下有益效果:
1、利用本发明提供的可诊断扫描链故障的电路装置及其故障诊断方法,可以准确地定位扫描链中的故障扫描单元,并简化了扫描链故障诊断的复杂性。
2、利用本发明提供的可诊断扫描链故障的电路装置及其故障诊断方法,可以在扫描链存在故障的情况下继续对组合逻辑电路进行诊断,最大程度地挖掘失效信息。
3、本发明提供的可诊断扫描链故障的电路装置及其故障诊断方法,与软件故障诊断手段完全兼容,具有很好的兼容性。
4、与其他硬件方法相比,本发明提供的可诊断扫描链故障的电路装置及其故障诊断方法,面积开销、布线开销小。
通过以上结合附图对本发明具体实施例的描述,本发明的其它方面及特征对本领域的技术人员而言是显而易见的。
以上对本发明的具体实施例进行了描述和说明,这些实施例应被认为其只是示例性的,并不用于对本发明进行限制,本发明应根据所附的权利要求进行解释。

Claims (11)

1、一种可诊断扫描链故障的电路装置,其特征在于,由多个诊断扫描单元组成,其中:
每个所述诊断扫描单元包括扫描触发器,可测试性多路选择器和锁存控制器;
所述锁存控制器的数据输入端直接与所述扫描触发器的SI输入端相连,在扫描使能控制信号SE和RS的共同作用下,所述锁存控制器锁存SI信号值或者锁存SI的相反信号值;
所述可测试性多路选择器包括两个输入端Q1和Q2,其在控制信号的控制下让所述诊断扫描单元的输出端Q连接到其他诊断扫描单元的所述锁存控制器或者本诊断扫描单元的所述扫描触发器。
2、根据权利要求1所述的可诊断扫描链故障的电路装置,其特征在于,所述可测试性多路选择器和所述锁存控制器构成了诊断扫描单元的可诊断性电路。
3、根据权利要求1所述的可诊断扫描链故障的电路装置,其特征在于,所述扫描触发器为多路选择触发器,其包括DI输入端和SI输入端,其中,SI输入端输入为来自直接上游诊断扫描单元的扫描移位信号SI,DI端为数据输入端。
4、根据权利要求1至3任一项所述的可诊断扫描链故障的电路装置,其特征在于,所述锁存控制器包括晶体管T1、T2和反相器G1、G2;
其中,反相器G1、G2组成锁存控制器中的锁存器;
在所述晶体管T1和T2的控制下,所述锁存器锁存的逻辑值可以被刷新为SI的逻辑值或者与SI相反的逻辑值;
所述晶体管T1和T2的门极与SE和RS连接;
当SE和RS均为0时,所述锁存器被写入逻辑值
Figure S2008101042519C00011
当SE和RS均为1时,所述锁存器被写入逻辑值SI;
当SE为1,RS为0时,所述锁存器保持原有逻辑状态。
5、根据权利要求4所述的可诊断扫描链故障的电路装置,其特征在于,所述扫描链包括两个控制输入端RS和DE,通过控制输入端RS和DE两个信号装置,完成对直接上游诊断扫描单元逻辑状态的存储和取反并传播至直接下游诊断扫描单元。
6、根据权利要求5所述的可诊断扫描链故障的电路装置,其特征在于,所述可测试性多路选择器包括晶体管T3和T4;
当DE为1时诊断扫描单元的输出端Q与T3连接;
当DE为0时诊断扫描单元的输出端Q与T4连接;
当Q与Q1端连接时,可诊断扫描单元的输出为锁存控制器的逻辑状态。
7、根据权利要求6所述的可诊断扫描链故障的电路装置,其特征在于,所述扫描链还包括至少一分布共享与门。
8、根据权利要求7所述的可诊断扫描链故障的电路装置,其特征在于,所述分布共享与门是根据共享半径r,在圆心处设置的共享与门,所述分布共享与门输出可以扇出到以r为半径的圆所能覆盖到的扫描触发器。
9、一种扫描链故障诊断方法,其特征在于,包括下列步骤:
步骤A,向扫描链中移入由0011组成的flush向量并直接移出观察,可诊断性扫描链电路装置发现扫描链中的固定型故障;
步骤B,对于固定为0故障向扫描链移入全1向量;对于固定为1故障向扫描链移入全0向量,并采用“+”操作,由可诊断性扫描链电路装置诊断后移出观察,如果发现全1或者全0向量,说明故障发生在扫描链上,此时无法断定发生故障的扫描链路处于哪两个扫描单元之间,则进行步骤C;否则单独的0或者1所对应的扫描单元即为故障扫描单元的直接下游,那么故障位置定位成功,扫描链诊断过程结束;
步骤C,对于固定为0故障向扫描链移入全0向量;对于固定为1向扫描链移入全1向量并采用“-”操作,由可诊断性扫描链电路装置诊断后移出观察,诊断发生在扫描通路上的固定型故障。
10、一种扫描链组合逻辑电路诊断方法,其特征在于,包括下列步骤:
步骤A’,根据故障位置对故障扫描链进行分段;
步骤B’,根据分段结果计算各段向量加载时刻;
步骤C’,根据加载时刻对诊断向量进行转换;
步骤D’,通过“+”、“-”操作将向量加载到故障扫描链中;
步骤E,捕获故障响应并通过“+”操作和移位操作将向量移出观察,得到诊断结果;
步骤F,判断是否还有诊断向量需要加载,如果没有则诊断过程结束;如有则返回步骤C。
11、根据权利要求10所述的扫描链组合逻辑电路诊断方法,其特征在于,所述分段为:
把扫描链截为三段:无故障虚拟扫描链,虚拟故障扫描链的故障上游和虚拟故障扫描链的故障下游。
CNA2008101042519A 2008-04-17 2008-04-17 一种可诊断扫描链故障的电路装置及其诊断方法 Pending CN101251580A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008101042519A CN101251580A (zh) 2008-04-17 2008-04-17 一种可诊断扫描链故障的电路装置及其诊断方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008101042519A CN101251580A (zh) 2008-04-17 2008-04-17 一种可诊断扫描链故障的电路装置及其诊断方法

Publications (1)

Publication Number Publication Date
CN101251580A true CN101251580A (zh) 2008-08-27

Family

ID=39955072

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008101042519A Pending CN101251580A (zh) 2008-04-17 2008-04-17 一种可诊断扫描链故障的电路装置及其诊断方法

Country Status (1)

Country Link
CN (1) CN101251580A (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101846724A (zh) * 2009-03-26 2010-09-29 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
CN101877248A (zh) * 2009-05-01 2010-11-03 索尼公司 半导体集成电路、信息处理装置和输出数据扩散方法
CN101706553B (zh) * 2009-11-02 2012-02-01 中国科学院计算技术研究所 一种片上通路时延测量电路及方法
CN102565682A (zh) * 2010-12-14 2012-07-11 苏州工业园区谱芯科技有限公司 一种基于二分法的故障测试向量的定位方法
CN102645628A (zh) * 2012-04-19 2012-08-22 北京航空航天大学 一种数字电路板在线测试的固高固低故障注入电路及方法
CN103197232A (zh) * 2009-03-26 2013-07-10 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
US9086457B2 (en) 2013-03-26 2015-07-21 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
CN105445641A (zh) * 2014-06-30 2016-03-30 国际商业机器公司 用于扫描链诊断的方法和装置
CN105717444A (zh) * 2014-12-22 2016-06-29 三星电子株式会社 包括片上时钟控制器的片上系统和具有其的移动装置
CN105911461A (zh) * 2016-04-26 2016-08-31 湖北理工学院 环形链分时复用测试端口的测试结构
CN107450003A (zh) * 2016-05-30 2017-12-08 瑞萨电子株式会社 半导体装置、电子控制系统和评估电子控制系统的方法
CN108196799A (zh) * 2013-11-22 2018-06-22 华为技术有限公司 存储设备的写入方法及写入装置
CN109375094A (zh) * 2018-09-30 2019-02-22 龙芯中科技术有限公司 扫描单元、扫描链结构以及确定扫描链结构的方法
CN109444716A (zh) * 2018-11-27 2019-03-08 中科曙光信息产业成都有限公司 一种具有定位功能的扫描测试结构及方法
CN112154336A (zh) * 2018-03-22 2020-12-29 明导公司 确定性星体内建自测
CN113203944A (zh) * 2016-06-02 2021-08-03 台湾积体电路制造股份有限公司 电子器件及其操作方法
CN113311319A (zh) * 2021-06-01 2021-08-27 成都海光集成电路设计有限公司 集成电路芯片与配置方法以及测试系统和测试方法

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103197232B (zh) * 2009-03-26 2016-03-09 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
CN101846724B (zh) * 2009-03-26 2013-06-12 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
CN103197232A (zh) * 2009-03-26 2013-07-10 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
CN101846724A (zh) * 2009-03-26 2010-09-29 台湾积体电路制造股份有限公司 用于诊断集成电路的方法和装置
CN101877248A (zh) * 2009-05-01 2010-11-03 索尼公司 半导体集成电路、信息处理装置和输出数据扩散方法
CN101706553B (zh) * 2009-11-02 2012-02-01 中国科学院计算技术研究所 一种片上通路时延测量电路及方法
CN102565682A (zh) * 2010-12-14 2012-07-11 苏州工业园区谱芯科技有限公司 一种基于二分法的故障测试向量的定位方法
CN102565682B (zh) * 2010-12-14 2014-05-28 苏州工业园区谱芯科技有限公司 一种基于二分法的故障测试向量的定位方法
CN102645628A (zh) * 2012-04-19 2012-08-22 北京航空航天大学 一种数字电路板在线测试的固高固低故障注入电路及方法
CN102645628B (zh) * 2012-04-19 2014-01-22 北京航空航天大学 一种数字电路板在线测试的固高固低故障注入电路及方法
US9678152B2 (en) 2013-03-26 2017-06-13 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US9086457B2 (en) 2013-03-26 2015-07-21 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US9261561B2 (en) 2013-03-26 2016-02-16 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US9372231B2 (en) 2013-03-26 2016-06-21 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US10571520B2 (en) 2013-03-26 2020-02-25 Internatioanl Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US10789012B2 (en) 2013-11-22 2020-09-29 Huawei Technologies Co., Ltd. Write method and write apparatus for storage device
CN108196799A (zh) * 2013-11-22 2018-06-22 华为技术有限公司 存储设备的写入方法及写入装置
CN108196799B (zh) * 2013-11-22 2021-03-30 华为技术有限公司 存储设备的写入方法及写入装置
CN105445641B (zh) * 2014-06-30 2018-03-27 国际商业机器公司 用于扫描链诊断的方法和装置
CN105445641A (zh) * 2014-06-30 2016-03-30 国际商业机器公司 用于扫描链诊断的方法和装置
CN105717444A (zh) * 2014-12-22 2016-06-29 三星电子株式会社 包括片上时钟控制器的片上系统和具有其的移动装置
CN105911461A (zh) * 2016-04-26 2016-08-31 湖北理工学院 环形链分时复用测试端口的测试结构
CN107450003A (zh) * 2016-05-30 2017-12-08 瑞萨电子株式会社 半导体装置、电子控制系统和评估电子控制系统的方法
CN107450003B (zh) * 2016-05-30 2021-06-15 瑞萨电子株式会社 半导体装置、电子控制系统和评估电子控制系统的方法
CN113203944A (zh) * 2016-06-02 2021-08-03 台湾积体电路制造股份有限公司 电子器件及其操作方法
CN112154336B (zh) * 2018-03-22 2024-03-29 西门子工业软件有限公司 确定性星体内建自测
CN112154336A (zh) * 2018-03-22 2020-12-29 明导公司 确定性星体内建自测
CN109375094B (zh) * 2018-09-30 2021-06-01 龙芯中科技术股份有限公司 扫描单元、扫描链结构以及确定扫描链结构的方法
CN109375094A (zh) * 2018-09-30 2019-02-22 龙芯中科技术有限公司 扫描单元、扫描链结构以及确定扫描链结构的方法
CN109444716A (zh) * 2018-11-27 2019-03-08 中科曙光信息产业成都有限公司 一种具有定位功能的扫描测试结构及方法
CN109444716B (zh) * 2018-11-27 2021-08-10 中科曙光信息产业成都有限公司 一种具有定位功能的扫描测试结构及方法
CN113311319A (zh) * 2021-06-01 2021-08-27 成都海光集成电路设计有限公司 集成电路芯片与配置方法以及测试系统和测试方法
CN113311319B (zh) * 2021-06-01 2024-02-13 成都海光集成电路设计有限公司 集成电路芯片与配置方法以及测试系统和测试方法

Similar Documents

Publication Publication Date Title
CN101251580A (zh) 一种可诊断扫描链故障的电路装置及其诊断方法
US7139955B2 (en) Hierarchically-controlled automatic test pattern generation
US9097762B2 (en) Method and apparatus for diagnosing an integrated circuit
CN101285871B (zh) 一种扫描链诊断向量生成方法和装置及扫描链诊断方法
US8438433B2 (en) Registers with full scan capability
CN103376405A (zh) 用于扫描链诊断的方法和装置
KR20190121701A (ko) 메모리 애플리케이션용 래치 회로
US11293980B2 (en) Customer-transparent logic redundancy for improved yield
CN107068193A (zh) 集成电路
CN101320078A (zh) 一种扫描链故障诊断系统、方法及诊断向量生成装置
US7778790B2 (en) Semiconductor integrated circuit device and delay fault testing method
US8230283B2 (en) Method to test hold path faults using functional clocking
CN101315412A (zh) 一种扫描链故障诊断方法及系统
Eichenberger et al. Towards a world without test escapes: The use of volume diagnosis to improve test quality
US10520550B2 (en) Reconfigurable scan network defect diagnosis
JPH1074400A (ja) シフト・レジスタ
US20070011521A1 (en) Integrated scannable interface for testing memory
CN102156259B (zh) 一种集成电路的测试方法及一种集成电路
Nemati et al. Asynchronous interleaved scan architecture for on-line built-in self-test of null convention logic
US7702979B2 (en) Semiconductor integrated circuit incorporating test configuration and test method for the same
JP5383588B2 (ja) スキャンテスト回路、半導体集積回路
Li et al. IEEE standard 1500 compatible interconnect diagnosis for delay and crosstalk faults
Pomeranz Improving the diagnosability of scan chain faults under transparent-scan by observation points
JP2009175154A (ja) 半導体集積回路およびその設計方法
Xiang et al. Handling the pin overhead problem of DFTs for high-quality and at-speed tests

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20080827