热度 4| |
Clock gating cell 在DFT的过程中如何连接?连接scan mode还是scan enable?有什么不同?
在IC综合flow里面为了去优化功耗,会在clock网络上面插入ICG cell减少clock消耗的动态功耗,在Scan时,需要考虑到这些ICG cell的clock传输情况,把普通的ICG cell替换成带有测试控制pin的ICG,保证在scan shift阶段,scan clock能传到registers的clk点。
对于这些scanable ICG cell TE pin的连接,可以通过命令进行设置:
set_dft_configuration –connect_clock_gating <enable | disable>
set_clock_gating_style –control_signal <scan_enable | test_mode>
那么TE pin到底连接哪个信号?怎么选择?一般按照下面的几点来考量:
从E pin前面的fault考虑:
a、TE pin建议连接scan_enable, 那么在shift阶段可以有TE为1,保证clock能传输到scan chain上的regsters的clock pin,有稳定的clock,在capture 阶段TE为0,ICG的控制器交给Epin,那么Epin前的组合逻辑的fault就可以被coverage到,提高coverage。
b、如果发现ICG的类型不是我们常见的类型,这种类型可能会导致scan shift阶段miss clock pulse的情况,那么需要连接scan mode。(这种类型在后续会给大家介绍)
从test coverage和fault coverage的角度来分析:
这两个coverage在计算时分子相同,分母不同,如果他们相差很大,重点分析一下是不是ICG的接法,分析一下untestable的fault中的RE/uu/BL等fault。
test coverage要是特别低:
这种情况重点怀疑ICG的TEpin在连接了scan_enable后,Epin前面的组合逻辑上的fault点是不是不可控或不可观测,那么可能导致在capture阶段传过来的clock为不定态,从而影响了后面的clock,那么会导致很多逻辑无法测试,导致coverage很低。
除了从测试架构的角度来分析,还要从PPA的角度以及timing方面对ICG进行分析。