DC综合门控时钟,怎样判断门控单元是否起到了作用
时间:10-02
整理:3721RD
点击:
最近对先前的设计进行了改进,按改进方案来说,改进后肯定能降功耗,但新改进的设计在DC综合时插入门控时钟(使用的insert_clock_gating),此时DC报出来的功耗就比没改进之前要大,而且版图后仿出来功耗比DC报出来的功耗还要大接近一倍。
在以前的设计中,后仿出来的功耗都会比DC报出来的低10%~20%,但现在的后仿出来的功耗竟然比DC报出来的功耗要大一倍,感觉好像是门控时钟没起作用。
DC综合门控时钟,请问怎样判断门控单元是否起到了作用?
在以前的设计中,后仿出来的功耗都会比DC报出来的低10%~20%,但现在的后仿出来的功耗竟然比DC报出来的功耗要大一倍,感觉好像是门控时钟没起作用。
DC综合门控时钟,请问怎样判断门控单元是否起到了作用?
1)是否有使能逻辑
2)fanout是否大于规定的数值
CG是否起作用,在后仿的结果里面看相应的波形就知道了
设计里面有使能逻辑。fanout没有超过规定的数值。从后仿的结果看,插入门控和未插入门控时功耗接近,感觉门控没起作用。
但之前的设计加入门控后功耗会有较大程度的减小,这次加入门控后没啥变化,不晓得哪儿有问题,因为DC综合时TCL脚本的约束都是一样的。
可能你的理解有误,fanout没有超过CG规定的min数值时,是不会插入CG单元的
你说的情况,有可能是条件不同造成的,找出根源不应该是难事
首先要保证2个网表的综合使用同版本的工具,同样的RTL(只改动节省功耗的部分),相同的约束/WLM/DRV,如果用到激励的话,也要相同,这时再比较2个netlist的功耗。如果还是差1倍以上,就看具体哪个module引起的,一点一点缩小范围
可能是设计太小了
嗯,懂了,谢谢小编,我再试试
嗯,懂了,谢谢小编,我再试试
做门控时钟你的各个模块直接的使能咋样协调的?我想让一个模块工作完另一个模块开始工作同时当前模块停止工作但是不知道咋样协调你能否告知一二谢谢