《集成电路可测性原理与设计》由会员分享,可在线阅读,更多相关《集成电路可测性原理与设计(27页珍藏版)》请在金锄头文库上搜索。
1、第八讲第八讲集成电路可测性原理与设计集成电路可测性原理与设计浙大微电子韩雁2024/8/31浙大微电子浙大微电子2/26IC测试概念测试概念在芯片设计正确的前提下,在制造过程中引在芯片设计正确的前提下,在制造过程中引入的缺陷(故障)造成的电路失效,需要用入的缺陷(故障)造成的电路失效,需要用测试的方法将其检测出来。测试的方法将其检测出来。对对IC设计,用设计,用仿真仿真手段验证设计正确性手段验证设计正确性对对IC制造,用制造,用测试测试手段报告生产手段报告生产“良率良率”故障的存在故障的存在影响电路功能的正确性影响电路功能的正确性故障的定位故障的定位若大量电路由于相同原因失效,要找出问题所在若
2、大量电路由于相同原因失效,要找出问题所在2024/8/31浙大微电子浙大微电子3/26电路测试与电路仿真的不同电路测试与电路仿真的不同电路仿真电路仿真时间充裕时间充裕软件可对电路内部任意节点进行仿真软件可对电路内部任意节点进行仿真电路测试电路测试测试机时昂贵,每分钟都计算成本测试机时昂贵,每分钟都计算成本不可能对电路内部进行探测,故障排查困难不可能对电路内部进行探测,故障排查困难2024/8/31浙大微电子浙大微电子4/26样品测试与产品测试的不同样品测试与产品测试的不同1.样品测试样品测试人工进行人工进行测试时间充裕测试时间充裕测试方法自由测试方法自由2.产品测试产品测试机器测试机器测试测试
3、时间折进产品成本(有时比制造成本还高)测试时间折进产品成本(有时比制造成本还高)测试代码编写测试代码编写2024/8/31浙大微电子浙大微电子5/261.样品的测试样品的测试大规模大规模IC, 其输入其输入/输出管脚众多。输出管脚众多。理论上理论上, 只有只有“穷尽穷尽”了输入信号的所有组了输入信号的所有组合合, 并验证了输出信号相应无误后并验证了输出信号相应无误后, 才能断才能断定此电路是合格产品。定此电路是合格产品。二输入端二输入端“与非与非”门门, 只有测试了只有测试了00, 01, 10, 11四种输入状态下的输出分别是四种输入状态下的输出分别是1, 1, 1, 0, 才能断定该才能断
4、定该“与非与非”门是合格产品。门是合格产品。这种方法类似于设计阶段所做的电路仿真。这种方法类似于设计阶段所做的电路仿真。 2024/8/31浙大微电子浙大微电子6/26实例:乘法实例:乘法/累加累加ASIC测试测试 穷尽法要做多少次测试?穷尽法要做多少次测试?2827215次次 2024/8/31浙大微电子浙大微电子7/26是否有一种切实可行的测试方法是否有一种切实可行的测试方法 127 255C0 = ij i =1 j =1 = 265297920 转化为二进制数因为寄存器为15位,所以C值最终应为0 1 0 0 0 0 0 0 0 0 0 0 0 0 032 24 16 80 0 0 0
5、 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2024/8/31浙大微电子浙大微电子8/26乘法乘法/累加累加ASIC性能性能测试测试测试乘法测试乘法/累加电路的最高工作频率累加电路的最高工作频率当时钟频率较低时当时钟频率较低时, 芯片输出芯片输出C = C0, 工作正常。工作正常。将时钟频率不断提高将时钟频率不断提高, 每提高一次每提高一次, 进行一进行一次测试次测试, 直至测试结果直至测试结果C C0, 说明电路工说明电路工作状态已发生紊乱作状态已发生紊乱, 工作频率上限即可确定。工作频率上限即可确定。2024/8/31浙
6、大微电子浙大微电子9/26准穷尽法概念及不足准穷尽法概念及不足上述测试可称之为上述测试可称之为“准穷尽法准穷尽法”测试,其不足为测试,其不足为累加器输入端Z的累加信号并不是严格按照穷尽法来提供测试码的。测试只保留了低15位数据, 因此并不排除更高位有错误数据无法被发现的可能。虽然这种可能性比较小。2024/8/31浙大微电子浙大微电子10/262.产品测试产品测试产品测试与样品测试不同产品测试与样品测试不同, 目的在于如何让目的在于如何让机器用统一固定的算法来解决大量电路的机器用统一固定的算法来解决大量电路的快速测试问题和为快速测试问题和为“故障定位故障定位”提供可能。提供可能。这就是这就是D
7、FT理论需要研究和解决的问题理论需要研究和解决的问题产品测试要求具备的条件产品测试要求具备的条件电路要有电路要有可测性可测性( 可测性设计是可测性设计是ASIC设计师在设计师在电路设计初期就应考虑的问题电路设计初期就应考虑的问题), 提取出的提取出的测试矢量集测试矢量集要有较高的故障覆盖率要有较高的故障覆盖率 有故障模型和尽可能完备的有故障模型和尽可能完备的“故障字典故障字典”2024/8/31浙大微电子浙大微电子11/26故障模型故障模型在各种故障模型中比较常用的两种模型:在各种故障模型中比较常用的两种模型:“对电源短路模型对电源短路模型”S-a-1 ( Stuck at 1) “对地短路模
8、型对地短路模型”S-a-0 ( Stuck at 0) 可诊断由对电源短路或对地短路引起的电路失效可诊断由对电源短路或对地短路引起的电路失效实例:实例:2024/8/31浙大微电子浙大微电子12/26 故障字典故障字典实例中有实例中有5个测试点个测试点: A,B,C,P,D 10种故障可能种故障可能: A1,A0,B1,B0,C1,C0,P1,P0,D1,D0 A1表示表示A点的点的S-a-1故障,故障,A0表示表示A点的点的S-a-0故障故障 当电路无故障时当电路无故障时, 输入与输出之间应有输入与输出之间应有正确真值表正确真值表当有各种当有各种S-a-X故障时故障时, 输出端输出端D的测试
9、值将有的测试值将有10种可种可能的错误结果能的错误结果将上两项结果合并即可形成一张将上两项结果合并即可形成一张故障字典故障字典根据故障字典以及测量到的根据故障字典以及测量到的D值值,即有可能分析电路即有可能分析电路中中S-a-1故障和故障和S-a-0故障所处的位置。故障所处的位置。2024/8/31浙大微电子浙大微电子13/26故障字典表故障字典表 正确值正确值2024/8/31浙大微电子浙大微电子14/26故障字典表故障字典表当输入端当输入端A B C取值取值(0 0 0 )时时, 即可测得即可测得P0故障或者故障或者D1故障故障 当取当取(0 1 0)时时, 可测得可测得A1故障或者是故障
10、或者是P0故障或者是故障或者是D1故障故障 输入端的取值输入端的取值 ( 0 0 0),(0 0 1),(0 1 1),(1 0 1)称为称为测试向量测试向量有些故障是不可区分的有些故障是不可区分的, 例如例如A0,B0,C1,P1,D0故障故障, 无论用哪一组测试向量都无法将它们区分开来无论用哪一组测试向量都无法将它们区分开来, 这种故障称为这种故障称为“等价故障等价故障”, 因为它们在电路中是逻辑等价的因为它们在电路中是逻辑等价的。正确值正确值2024/8/31浙大微电子浙大微电子15/26测试向量集及其提取测试向量集及其提取 进一步分析还可发现进一步分析还可发现, 要诊断上述电路中所有的
11、要诊断上述电路中所有的S-a-1故障和故障和S-a-0故障故障, 并不需要对全部的并不需要对全部的8个输个输入向量进行测试入向量进行测试, 而只需其中的而只需其中的6个就够了:个就够了: (0 0 0), 可测可测P0,D1; (0 0 1), 可测可测D1; (0 1 0 ), 可测可测A1,P0,D1; (1 0 0 ), 可测可测B1,P0,D1; (1 1 1 ), 可测可测C0,D1; (1 1 0 ), 可测可测A0,B0,C1,P1,D0而而( 0 1 1 )和和( 1 0 1) 对测试故障没有特别贡献对测试故障没有特别贡献因此只要将因此只要将T(000, 001, 010, 1
12、00, 110, 111) 提提取为取为测试向量集测试向量集就可以了就可以了2024/8/31浙大微电子浙大微电子16/26故障覆盖率故障覆盖率 故障覆盖率定义为故障覆盖率定义为: 用测试向量集可以测出的故障与电路中所有可能存用测试向量集可以测出的故障与电路中所有可能存在的故障之比。在的故障之比。在上述实例中在上述实例中, 共有共有10个可能故障个可能故障, 因此因此T(000, 001, 010, 100, 110, 111)能够检测出这所能够检测出这所有的有的10个故障个故障, 因此其故障覆盖率为因此其故障覆盖率为100%。T1(011, 101)仅能测出仅能测出D1这一个故障这一个故障,
13、 故其故障覆故其故障覆盖率为盖率为10%。T2(110 )的故障覆盖率为的故障覆盖率为50%, 虽然它不能给等价虽然它不能给等价故障故障A0,B0,C1,P1,D0精确定位。精确定位。2024/8/31浙大微电子浙大微电子17/26电路的可测性分析电路的可测性分析 电路测试的难易程度可由电路测试的难易程度可由“测试因子测试因子”定量描述。定量描述。共共6个个(3个组合电路、三个时序电路个组合电路、三个时序电路):CC0(X) - 表示组合电路中表示组合电路中X 结点结点S-a-0故障的故障的可控制性可控制性。CC1(X) - 表示组合电路中表示组合电路中X 结点结点S-a-1故障的可控制性。故
14、障的可控制性。CO(X) - 表示组合电路中表示组合电路中X 结点故障的结点故障的可观察性可观察性。SC0(X) - 表示时序电路中表示时序电路中X 结点结点S-a-0故障的可控制性。故障的可控制性。SC1(X) - 表示时序电路中表示时序电路中X 结点结点S-a-1故障的可控制性。故障的可控制性。SO(X) - 表示时序电路中表示时序电路中X 结点故障的可观察性。结点故障的可观察性。2024/8/31浙大微电子浙大微电子18/26某结点某故障的可控制性某结点某故障的可控制性可控制性:可控制性:人为地将某结点设置为某故障的难易程度人为地将某结点设置为某故障的难易程度对于原始输入端对于原始输入端
15、I和原始输出端和原始输出端O, 一般有如下约一般有如下约定:定:CC0( I ) = CC1( I ) = 1(组合电路的可控制性)(组合电路的可控制性)SC0( I ) = SC1( I ) = 0(时序电路的可控制性)(时序电路的可控制性)CO(O) = SO(O) = 0(组合与时序电路的可观察性)(组合与时序电路的可观察性)值越小表示越易观察或控制值越小表示越易观察或控制2024/8/31浙大微电子浙大微电子19/26“与非与非”门测试因子的计算门测试因子的计算Y = CC1(Y) = min CC0(X1), CC0(X2) + 1CC0(Y) = CC1(X1) + CC1(X2)
16、 + 1CO(X1) = CC1(X2) + CO(Y) + 1CO(X2) = CC1(X1) + CO(Y) + 1SC1(Y) = min SC0(X1), SC0(X2) SC0(Y) = SC1(X1) + SC1(X2)SO(X1) = SC1(X2) + SO(Y)SO(X2) = SC1(X1) + SO(Y) 2024/8/31浙大微电子浙大微电子20/26Y = CC1(Y) = CC0(X1) + CC0(X2) + 1CC0(Y) = min CC1(X1), CC1(X2) + 1CO(X1) = CC0(X2) + CO(Y) + 1CO(X2) = CC0(X1)
17、 + CO(Y) + 1SC0(Y) = min SC1(X1), SC1(X2) SC1(Y) = SC0(X1) + SC0(X2)SO(X1) = SC0(X2) + SO(Y)SO(X2) = SC0(X1) + SO(Y) “或非或非”门测试因子的计算门测试因子的计算2024/8/31浙大微电子浙大微电子21/26一个简单组合逻辑的测试因子一个简单组合逻辑的测试因子对于原始输入对于原始输入I和原始输出和原始输出OCC0( I ) = CC1( I ) = 1CO(O) = 0Y = CC1(Y) = CC0(X1) + CC0(X2) + 1CC0(Y) = min CC1(X1),
18、 CC1(X2) + 1CO(X1) = CC0(X2) + CO(Y) + 1CO(X2) = CC0(X1) + CO(Y) + 1Y = CC1(Y) = min CC0(X1), CC0(X2) + 1CC0(Y) = CC1(X1) + CC1(X2) + 1CO(X1) = CC1(X2) + CO(Y) + 1CO(X2) = CC1(X1) + CO(Y) + 12024/8/31浙大微电子浙大微电子22/26测试因子值测试因子值因为是组合电路, 故其与时序有关的测试因子值均为02024/8/31浙大微电子浙大微电子23/26 增加增加I/O端口降低测试因子的方法端口降低测试因
19、子的方法当某结点当某结点X的可观察因子的可观察因子CO(X) 过大时过大时, 可通过增加一个输出端口的办法可通过增加一个输出端口的办法, 将该点直接引出将该点直接引出;当某点当某点X的可控制因子过大时的可控制因子过大时, 当当CC0(X)过大时过大时,可插入一个可插入一个“与门与门”使之下降使之下降:CC0(X) = min CC0(X), CC0( I ) + 1 = 1 + 1 = 2当当CC1(X)过大时过大时,可插入一个可插入一个“或门或门”使之下降使之下降:CC1(X) = min CC1(X), CC1( I ) + 1 = 1 + 1 = 2在某些特殊情况下还可直接将该在某些特殊
20、情况下还可直接将该X点与增加的输入端点与增加的输入端I相连。相连。2024/8/31浙大微电子浙大微电子24/26简单电路的可测性设计简单电路的可测性设计直接从直接从A,B模块增加输模块增加输出管脚进行测试出管脚进行测试增加了输出管脚数和增加了输出管脚数和芯片面积,封装成本芯片面积,封装成本增加增加用多路选择器,只需用多路选择器,只需增加一个管脚增加一个管脚2024/8/31浙大微电子浙大微电子25/26多路选择器在可测性设计中的作用多路选择器在可测性设计中的作用 不但将多路选择器用在不但将多路选择器用在芯片电路的输出端芯片电路的输出端, 而而且将它们用在芯片的且将它们用在芯片的内部内部, 利
21、用它们把内部利用它们把内部的子电路分割开来并的子电路分割开来并彼此绝缘彼此绝缘, 单独测试单独测试, 是大规模、超大规模是大规模、超大规模集成电路可测性设计集成电路可测性设计更常用的方法。更常用的方法。 2024/8/31浙大微电子浙大微电子26/26复杂电路的可测性设计(复杂电路的可测性设计(DFT)对于组合电路对于组合电路有非常成熟的测试矢量生成算法来检测电路中的有非常成熟的测试矢量生成算法来检测电路中的故障,无需增加故障,无需增加DFT电路电路 对于时序电路来说对于时序电路来说扫描链法,把内部的时序单元(扫描链法,把内部的时序单元(DFF)改成特定)改成特定的扫描单元,然后把所有的扫描单元串成扫描链,的扫描单元,然后把所有的扫描单元串成扫描链,通过扫描链,将内部信息串行传到输出管脚。通过扫描链,将内部信息串行传到输出管脚。 内建自测试法(内建自测试法(BIST),无需外部测试机台,),无需外部测试机台,内部产生测试向量,将无故障响应值也事先存放内部产生测试向量,将无故障响应值也事先存放在芯片内部,自己比较并输出比较结果。在芯片内部,自己比较并输出比较结果。2024/8/31浙大微电子浙大微电子27/26 Thanks!