DC综合时的clock gating单元与DFF一一对应的问题
时间:10-02
整理:3721RD
点击:
请问大家,我在DC综合的时候,使用insert_clock_gating命令。在综合之后的网表中,每一个DFF的时钟都是单独的门控时钟单元产生的,这就导致门控时钟单元有很多。请问这种情况是正常的吗?
另一个问题是,在插入门控时钟之后,时序检查的时候,launch clock使用的是rise edge,可是到了capture clock使用的是fall edge,通过时序路径看到,这是因为路径中有锁存器,这个锁存器是门控时钟单元中的。这种情况是正常的吗?是不是插入门控时钟之后,可用的时钟周期就变为半个周期了
另一个问题是,在插入门控时钟之后,时序检查的时候,launch clock使用的是rise edge,可是到了capture clock使用的是fall edge,通过时序路径看到,这是因为路径中有锁存器,这个锁存器是门控时钟单元中的。这种情况是正常的吗?是不是插入门控时钟之后,可用的时钟周期就变为半个周期了
见set_clock_gating_style 命令,通常是fanout 为30
小编大人,我在SDC文件中添加了set_clock_gating_style -max_fanout 30之后,综合出来的网表中仍然有一千多个SNPS_CLOCK_GATE_HIGH*单元,请问这是什么原因呢?
我的SDC中关于clock gating的语句是这样的:
“
set_clock_gating_style -max_fanout 30
insert_clock_gating -global
propagate_constraints -gate_clock
”
set_clock_gating_style还有很多别的选项要用的,具体man下,
set_clock_gating_style 有三个关键的option,-minimun_bitwidth/-max_fanout/-num_stages,最好根据需求都设定下。另外,DC的约束不是SDC文件,是DC出的文件