关于SDC约束中的追加约束-add
时间:10-02
整理:3721RD
点击:
各位大牛,请教一个关于SDC约束中的追加约束-add的用法:
1.如果一个时钟管脚会有两种时钟进入(如CLK_100M CLK_50M),
我们一般的约束是:
create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]
create_clock -name {CLK_50M} -period 20.000 -waveform { 0.000 10.000} [get_ports clk_in] -add
2.我的问题是,如果这个管脚出来的时钟是驱动逻辑的,那么,为了保证时序OK,需要逻辑的关键路径<10.000ns,也就是取时钟周期最小的那个值,那么为什么不只约束一个:
create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]?
3.create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]
create_clock -name {CLK_50M} -period 20.000 -waveform { 0.000 10.000} [get_ports clk_in] -add
是不是已经代表创建了两个时钟树(时钟网络)啊?
1.如果一个时钟管脚会有两种时钟进入(如CLK_100M CLK_50M),
我们一般的约束是:
create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]
create_clock -name {CLK_50M} -period 20.000 -waveform { 0.000 10.000} [get_ports clk_in] -add
2.我的问题是,如果这个管脚出来的时钟是驱动逻辑的,那么,为了保证时序OK,需要逻辑的关键路径<10.000ns,也就是取时钟周期最小的那个值,那么为什么不只约束一个:
create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]?
3.create_clock -name {CLK_100M} -period 10.000 -waveform { 0.000 5.000}[get_ports clk_in]
create_clock -name {CLK_50M} -period 20.000 -waveform { 0.000 10.000} [get_ports clk_in] -add
是不是已经代表创建了两个时钟树(时钟网络)啊?
按我理解应该dc就是用了100m约束,和时钟树没关系吧
共享1个pin的2个clock必然用在2个不同的地方
所以必然也要通过set_case_analysis来设置2个clock的实际工作模式
也想只到答案,没有人用过-add么?
小编和各位大大们看过来啊
小编干什么去了?