- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
DFT规则检查器得到应有的重视了吗?
随着芯片设计复杂程度的日益增加,半导体产业已经开始寻求更具成本效益的方式来应对高质量测试的挑战。近年来,许多公司开始逐步摆脱对维护费用昂贵的内部测试工具的依赖,改用现成的商业自动化测试解决方案来进行测试综合和模式生成。虽然这些EDA产品解轻了公司的负担,使他们不必再开发和维护不属于自身的关键核心能力的专用功能,但是这些产品功能往往较为普通,以致于需要相当程度的定制改造,才能支持各种设计风格和测试方法。事实证明DFT规则检查器像粘结剂一样将各个方面结合在一起。 让我们看看为何会如此。
设计流程中的DFT规则检查器
测试自动化的目的是为任何一个设计生成高质量的测试模式。为了在合理的计算约束条件下尽可能多地假设设计中的缺陷,可以通过设计分析和算法应用产生测试模式。这就是所谓的自动测试模式生成(ATPG)。如果不通过各种方法修改设计以使算法可行的话,ATPG很难取得理想的结果。事实上,为了克服目前ATPG技术本身的局限性,对可测性设计(DFT)进行修改是完全有必要的,比如在一个设计中插入扫描链。从这一角度来看,可以说DFT的设计规则检查(DRC)的主要任务只是要确保设计符合ATPG工具为了保证高质量的结果所“期望”满足的最低条件集。
然而,设计团队往往为满足他们自己的需求而制订另外的规则,由此形成的设计规则检查与上面描述的以ATPG为中心的规则不同。设计师选择测试方法,随后确定设计约束,这样商用的ATPG工具通常会得到很高的故障覆盖率。他们可以扩展DRC的范围(但不一定必需)来检查被测设计是否良好。
因此,设计师扩大了测试规则检查器在整个设计流程中的使用范围,以确保在设计网表上运行DRC之前满足所有需要的约束条件,以抽取ATPG所需的信息。设计部门可能使用来自不同供应商以及自身内部的自动测试工具, 所以经常会出现在设计的开始阶段使用的DFT规则检查器和签字确认ATPG工具使用的DFT规则检查器不一样的情况。虽然简单的规则检查结果往往与多个工具相关,但随着压缩技术、存储器BIST技术、逻辑BIST技术或其它专门测试功能集成进设计之后,情况变得越来越复杂。在这种情况下,在设计建立流程的所有阶段调用相同的规则检查器就变得越来越重要。在复杂的DFT实现过程中使用不同的工具会增加创建测试程序的不可预测性,甚至导致设计的过度修正。
DFT规则检查的类型
提到一个典型IC创建流程的测试部分,最花时间和精力的工作恐怕就是调试DFT规则检查违规了。可以断定,一个典型的EDA自动测试产品包中的任何测试工具的设计师都非常重视规则检查器。奇怪的是,考虑到它们给设计机构带来的高投资回报率,现有的商用DFT规则检查器从未得到过应有的重视。如今,这些工具通常能检查数以百计的DFT规则违规,甚至能自动改正其中许多违规行为。一般来说,DFT设计规则检查器应做到:
1.证实设计中存在正确的逻辑结构设计,在有违规时提醒设计者。
2.为ATPG工具以后使用的数据构造赋值(例如,在没有正确控制触发器的情况下告诉ATPG工具,扫描移位后的触发器状态未知)。
3.可选的自动纠正某些DFT违规。
DFT规则可分为以下几种不同类型:
1.面向测试模式生成的规则。ATPG工具假定组合设计是零延迟的,这会导致需要大量设计约束才能确保可预测的高质量结果
2.面向故障覆盖的规则。这些基本规则需要保证设计的所有逻辑部分的可控性和可观测性。这些规则能够以最大可能的故障覆盖率完成最终IC的测试
3.面向测试方法的规则。根据测试方法的类型-扫描、逻辑BIST、IDDQ测试、边界扫描测试、压缩等,需要运行许多规则检查以确保测试方法的成功实现或复用
4.系统级芯片复用规则。采用更小模块创建的设计一般要求采用某些非强制性的DFT硬性规则。例如,一个层次化模块的I/O端口绑定可以将嵌入式环境和层次隔离开来,并使测试模式集的成功创建更具可测性
5.面向测试环境的规则。ATPG工具创建的测试模式最终应用于测试设备(ATE设备)。必须事先考虑测试设备性能的局限性以确保测试模式能正常工作。
所有的DFT规则并不是同等重要的。对于IC的创建过程来说某些规则可能比其他规则更为重要,因此每一个规则都有各自的重要性等级。设计师可以忽略不严重的违规,而不必担心对设计的测试操作或功能造成负面影响。
不难发现,为什么目前在设计流程的大多数阶段都采用DFT规则检查器。事实上,早期的DRC能够在RTL级发现问题。这些问题越早解决,其对项目进度的影响就越小。让我们看几个DFT规则检查的例子。
DFT规则检查举例
本节的例子是用于测试的新思公司Galaxy设计平台中DFT规则检查的代表,它包括RTL和门级DFT规则检查和门级测试DRC违规的自动修复。该规则检查器使用与芯片级ATPG签字确认中相同的TetraMAX ATPG引擎。除了生成批量报告外,该测试规则检查器在Design Vision图形用户界面(GUI)中集成了DRC分析功能,如图1所示。
图1:新思公司Design Vision DFT GUI可显示RTL测试DRC违规和原理
例1:组合反馈回路
如图2所示的有源或可敏化反馈回路会降低ATPG能达到的故障覆盖率,因为这增加了控制组成回路的路径值的难度。
图2:高亮度显示组合反馈回路
例如,一个振荡回路会导致ATPG和故障仿真出现严重的问题。如果一个设计包括可敏化的反馈回路,那么新思公司的DFT规则检查器会生成如下的信息:
消息#:通过源门U1实现反馈路径网络X的可敏化
设计师可以通过在设计中加入测试约束来切断这个环路,从而从根本上撤消反馈环路。DFT规则检查器不应对由于设置约束而引起的环路中断报告违规。如果反馈回路在设计中被用作锁存器,那么设计师就需要利用ASIC供应商的库把组成环路的组合元件转换成等效的锁存器。
例2:与寄存器输入进行交互的时钟
图3:时钟与寄存器输入交互
如图3所示,影响寄存器数据输入的时钟可能会降低故障覆盖率,因为一些ATPG工具在同一时刻只激活一个时钟,其它所有时钟都保持“关闭”状态。即使在此类限制不存在的时候,时序错误仍然可能发生,除非设计师能够正确约束ATPG时钟。如果某个时钟影响到了寄存器的数据,新思公司的DFT规则检查器将生成下列报警信息:
消息#:时钟clk1连接至DFF U2的数据输入(D)。
如果在带不同时钟的多个触发器上发生这种情况,就没有可行的时序关系允许所有时钟被ATPG当成数据脉冲来捕获。解决这个问题最安全的方法是正确配置馈入寄存器数据输入的逻辑,从而消除对其它时钟的依赖性。
例3:馈入锁存器和触发器的多路时钟
为了将锁存器用作扫描链的一部分,必须由一个时钟或任一个时钟和从时钟以外的源中获取的数据进行“与”运算,激活该锁存器。多路时钟和门控时钟必须经过“或”运算才能使任意一个时钟都能捕获数据。因为ATPG工具通常在任一时刻只允许一个时钟工作,因此能够捕获数据并作为一个以上时钟结果的锁存器必须能够在一个时钟有效、其它时钟关闭的情况下捕获数据。
例如:如果某个设计中有个与(AND)门有一个以上时钟输入,那么如果ATPG在任一时刻只激活一个时钟的话,该与门的输出就永远也不会产生时钟脉冲。当一个或(OR)门同时有时钟和数据输入时,或门的输出时钟将包含取决于数据输入的附加脉冲。这两种情况都可能违规,新思公司的DFT规则检查器会产生如下的告警信息:
消息#:时钟clk1在其它时钟关闭时不能捕获数据
如果电路包含以下部件,设计师就可以为锁存器创建有效的时钟门控逻辑:
1.一个只带一个时钟输入和一个以上数据输入的与门
2.一个带时钟或门控时钟输入的或门
这些有效的时钟规则的组合如图4所示。
图4:有效的锁存器时钟选通
例4:黑盒
如图5所示,驱动黑盒或被黑盒驱动的逻辑是无法测试的,因为它不可观测或不可控制。这种违规会极大性地降低故障覆盖率,因为黑盒周围的逻辑都是不可观测或不可控制的。
图5:黑盒对周边逻辑的影响
如果在设计中存在任何的黑盒,新思公司的DFT规则检查器会发出如下警告:
警告:单元U0(黑盒)是未知的(黑盒),因为输出引脚Z的功能有问题或不完整。
本文小结
DRC测试检查的关键好处在于能在设计流程中尽早地识别出尽可能多的潜在DFT问题,从而尽量减小这些问题对项目进度的影响。测试规则检查的范围已经扩展到不仅仅检查设计中需要符合基本ATPG需求的控制/观察结构。如今,测试规则检查包括涵盖设计测试所有方面的全面DRC,包括对DFT方法的一致性检查以确保设计始终能够获得可预测的高故障覆盖率。随着越来越多的复杂DFT方法(如片上扫描压缩)的实现,需要在整个IC设计流程中强制执行统一的测试规则检查。
事实上,由于投入到调试DRC违规的工程资源比投入到可测性设计过程中任何其它阶段中的都要多,目前更多的需求集中在规则检查器上。如今,最完善的设计规则检查器能够帮助设计者快速隔离并修正那些往往会造成项目瓶颈的DFT问题的根源。
图6:新思公司Design Vision DFT GUI显示用于调试复杂测试协议的仿真波形观察器
例如,图6所示的新思公司 Design Vision GUI就包含了一个仿真波形观察器,可以用来帮助设计者更轻松地调试复杂测试协议和初始化序列。由于越来越多的设计需要依赖于越来越复杂的测试协议,所以未来几年内DFT规则检查将会继续得到发展。为了满足这些需求,自动测试工具的供应商将更专业化的DFT规则集嵌入设计规则检查器中,并为设计师提供交互性和可定制程度更高的工具。
作者:Rohit Kapur,科学家
Chris Allsup,自动测试产品行销经理
Synopsys公司
上一篇:超薄热电模块建立热电应用新的性能范例
下一篇:纳米材料与器件的电气测量方法