专利名称:一种针对扫描测试中移位功耗的优化方法
技术领域:
本发明属于芯片低功耗测试技术领域,具体涉及一种针对扫描测试中移位功耗的优化方法。
背景技术:
随着集成电路物理尺寸的不断缩小和电压门限的不断降低,功耗和性能、面积一起,成为系统芯片设计最重要的设计指标。在最近十年中,基于算法、架构和电路的低功耗设计已经引起很大的重视,芯片设计者越来越多地采用低功耗设计来应对越来越艰巨的功耗挑战。虽然低功耗设计方法可以解决复杂数字系统设计中出现的功耗问题,但对于测试模式下的功耗问题,这些方法并不具有很好的效果。研究表明大规模集成电路在测试模式下的功耗可能达到其在正常模式下功耗的两倍以上。为了降低不断升高的测试功耗,业界首先使用了以下一些相对简单的办法来降低测试功耗降低测试时钟的频率。降低测试时钟频率虽然可以明显降低测试功耗,但这种方案一方面会延长测试时间,增加了测试成本;另一方面无法检测到全速测试模式下才能检测到的时延故障,降低了测试覆盖率。制定相应的测试策略来对芯片进行分块测试。与降低测试时钟频率相类似,这种方法也会延长测试时间。而且这种分块测试的方法需要对电路设计进行修改,比如增加多路选择器进行多个分块信号间的选择,从而导致测试设计复杂度的增加。随着全速测试的普及,降低芯片测试频率等方法已经不可行,必须采用新的低功耗测试技术。
发明内容
本发明的目的在于提出一种针对扫描测试中移位功耗的优化方法,该方法可以大幅度减少测试过程中的移位功耗,同时不会增加测试时间,也不会影响测试覆盖率,不需要测试设计流程的改变,而且容易实现。为了实现以上目的,本发明所采用的技术方案是—种针对扫描测试中移位功耗的优化方法,其特征在于,包括以下步骤(I)生成带扫描链的网表;(2)结合生成的带扫描链的网表,进行芯片版图设计;(3)在完成芯片版图设计后,将带扫描结构的门级网表、工艺库、时序约束文件和测试协议读入自动测试向量生成工具,进行可测试性设计规则检查,然后生成测试向量;(4)生成测试向量后,进行芯片门级仿真验证测试向量的正确性,得到电路中扫描单元输出所连接的组合逻辑单元的翻转信息,保存到值变转存储文件中;(5)将值变转存储文件、包含功耗信息的工艺库文件、连线寄生参数文件和时序约束文件读入到功耗评估工具中,进行功耗信息提取;如果功耗评估结果满足设计要求,那么重新进行物理设计;如果功耗评估结果不满足设计要求,则进行步骤(6),即功耗敏感单元提取;
(6)在步骤(4)基础之上,计算电路中所有扫描单元的翻转率变化量的值,提取电路中数目达到目标要求的功耗敏感单元;(7)在步骤(6)的基础之上,在提取出的功耗敏感单元的输出端,采用常值法插入测试逻辑,将扫描单元的输出锁定为常值;在扫描单元输出端和该输出端所驱动的组合逻辑之间插入与非门或者是或门,将扫描单元的输出逻辑值锁定成常值O或I ;(8)在步骤(7)的基础之上,利用DFT Compiler工具进行逻辑综合,得到插入测试逻辑后的网表;(9)不断循环进行步骤(3)、(4)、(5)、(6)、(7)、(8),直到使芯片的扫描测试的移位功耗满足设计要求。所述步骤(6)中,计算电路中所有扫描单元的翻转率变化量的值的具体步骤如下:(6.I)扫描单元翻转率
权利要求
1.一种针对扫描测试中移位功耗的优化方法,其特征在于,包括以下步骤: (1)生成带扫描链的网表; (2)结合生成的带扫描链的网表,进行芯片版图设计; (3)在完成芯片版图设计后,将带扫描结构的门级网表、工艺库、时序约束文件和测试协议读入自动测试向量生成工具,进行可测试性设计规则检查,然后生成测试向量; (4)生成测试向量后,进行芯片门级仿真验证测试向量的正确性,得到电路中扫描单元输出所连接的组合逻辑单元的翻转信息,保存到值变转存储文件中; (5)将值变转存储文件、包含功耗信息的工艺库文件、连线寄生参数文件和时序约束文件读入到功耗评估工具中,进行功耗信息提取;如果功耗评估结果满足设计要求,那么重新进行物理设计;如果功耗评估结果不满足设计要求,则进行步骤(6),即功耗敏感单元提取; (6)在步骤(4)基础之上,计算电路中所有扫描单元的翻转率变化量的值,提取电路中数目达到目标要求的功耗敏感单元; (7)在步骤(6)的基础之上,在提取出的功耗敏感单元的输出端,采用常值法插入测试逻辑,将扫描单元的输出锁定为常值;在扫描单元输出端和该输出端所驱动的组合逻辑之间插入与非门或者是或门,将扫描单元的输出逻辑值锁定成常值O或I ; (8)在步骤(7)的基础之上,利用DFTCompiler工具进行逻辑综合,得到插入测试逻辑后的网表; (9)不断循环进 行步骤(3)、(4)、(5)、(6)、(7)、(8),直到使芯片的扫描测试的移位功耗满足设计要求。
2.根据权利要求1所述的针对扫描测试中移位功耗的优化方法,其特征在于,所述步骤(6)中,计算电路中所有扫描单元的翻转率变化量的值的具体步骤如下: (6.1)扫描单元翻转率LR =I ; 其中TPi指电路内部节点的翻转率,TiPi = Pi (O)^Pi(I)7Pi (O)和Pi (I)分别为信号线I置O概率和置I的概率,N为电路中信号线总数量,系数Kn为第η个逻辑门的功耗权重; (6.2)在步骤(6.1)的基础之上,扫描单元翻转率变化量的计算如公式(2)所示,TTRsi=TR-MIN(TRSi=Q,TRsi = 1) (2); 其中,MIN对应两种情况,分别是TRsi = ^和TRsi = ! ;TRSi = (|指当扫描单元的输出被锁定为O后电路中每个节点的翻转率,TRsi = i指当扫描单元的输出被锁定为I后电路中每个节点的翻转率。
3.根据权利要求1所述的针对扫描测试中移位功耗的优化方法,其特征在于,所述步骤(6)中,提取电路中数目达到目标要求的功耗敏感单元的具体步骤如下: (6.1.1)、找出网表中所有的扫描单元并将其放入集合M中; (6.1.2)、通过静态时序分析工具,找出时序关键路径上的扫描单元并将其排除出集合M ; (6.1.3)、计算集合M中所有扫描单元输出端扇出组合逻辑单元的数目,找出扇出不符合要求的扫描单元并将其排除出集合M ; (6.1.4)、在步骤(6.1.3)基础之上,计算集合M中所有扫描单元翻转率变化量;(6.1.5)、将集合M中翻转率变化量按照大小顺序排序,选出前H个扫描单元,并将这H个扫描单元的输出值锁定为常值; (6.1.6)、判断选取的扫描单元是否满足预期值H=E/K,K为迭代次数,E等于最后被选中的扫描单元数目,即功耗敏感单元数目;如果满足,功耗敏感单元数目提取结束;如果不满足,将这H个扫描单元排除集合M,然后重复步骤(6.1.4),(6.1.5)和(6.1.6)。
4.根据权利要求1所述的针对扫描测试中移位功耗的优化方法,其特征在于,所述步骤(7)的具体实现步骤如下:扫描单元通过在正常寄存器电路结构中增加一个二输入选择器,将正常寄存器一个输入端D转化成两个输入端D和SI,其中D端是正常数据输入端口,SI端是测试移位数据输入端口 ;同时,扫描寄存器将原先正常寄存器的一个输出端Q转化成两个输出端Q和SO,其中SO输出至下一个扫描寄存器SI端;在正常工作模式下,数据从扫描寄存器D端输入,Q端输出;在测试移位模式下,数据从扫描寄存器SI端输入,SO端输出; 将扫描寄存器的输出逻辑值锁定成常值的实现方法: 通过在扫描单元输出端Q和该输出端所驱动的组合逻辑之间插入与门和非门,可以实现将扫描单元的输出逻辑值锁定成常值O ;通过在扫描单元输出端Q和该输出端所驱动的组合逻辑之间插入或门,可以实现将扫描单元的输出逻辑值锁定成常值I。
全文摘要
本发明公开了一种针对扫描测试中移位功耗的优化方法,在基本的测试流程的基础上,增加了功耗信息提取、功耗敏感单元选取和插入测试逻辑三个步骤;本发明提出的方法可以大幅度减少测试过程中的移位功耗,同时不会增加测试时间,也不会影响测试覆盖率,不需要测试设计流程的改变,而且容易实现。
文档编号G01R31/3185GK103076559SQ20121059005
公开日2013年5月1日 申请日期2012年12月29日 优先权日2012年12月29日
发明者蔡志匡, 单伟伟, 刘婷婷, 袁强强, 刘新宁, 杨军 申请人:东南大学