电子说
今天我们要介绍的时序分析概念是 clock gate 。 clock gate cell是用data signal控制clock信号的cell,它被频繁地用在多周期的时钟path,可以节省功耗。如下图所示:
我们经常说的reg2clockgate path的setup和hold检查,就是指:clock gate上enable信号要比clock信号提前到达一段时间和保持一段时间。
通常,clock gate上的setup会比较难收敛,因为如下图对于clock gate的timing path,天然会穿在skew k;clock tree必然不balance。在实际设计中,我们一般会尽量将clock gate 单元放在寄存器附近以减小skew。也可以采用 set_clock_gating_check ,加大对clock gate timing的约束。
常见的clock gating cell有 ICG cell (integrated clock gating cell)和 clock gating logical cell (and+low latch)。现在一般library库里都带有ICG cell了,clock gating logical cell已经不常用了
对于clock gating cell,synthesis前就会插入,本身和CTS没太大关系,
一般只要确保clock timing check打开的就行,就是如下global变量设成true
timing_enable_clock2clock_clockgating_check
另外,CTS工具会对其做clone,declone操作.
ICG cell Clone: 受相同ICG cell控制的时序单元较多或者分布不均匀时,就会导致ICG cell连线过长,这时可以通过clone ICG cell进行优化
ICG cell De-Clone: 受相同ICG cell控制的时序单元较少,就会导致ICG cell数量过多,设计density增大。这时可以通过De-clone ICG cell进行优化。
全部0条评论
快来发表一下你的评论吧 !