Vivado的pll约束(重命名)主要是下面这三句话
create_generated_clock -name clk_100m -source [get_pins u_my_pll/inst/plle2_adv_inst/CLKIN1] -multiply_by 2 -add -master_clock clk_in [get_pins u_my_pll/inst/plle2_adv_inst/CLKOUT0]
set_false_path -from [get_clocks clk_100m] -to [get_clocks clk_out1_my_pll]
set_false_path -from [get_clocks clk_out1_my_pll] -to [get_clocks clk_100m]
在vivado中pll会自动约束,一般约束的名字即为pll输出到BUFG/I线路的名字
即约束语句如下
create_generated_clock -name clk_out1_my_pll [get_pins u_my_pll/inst/plle2_adv_inst/CLKOUT0]
现在想将系统默认的重命名为clk_100m,如果只有create_generated_clock -name clk_100m -source [get_pins u_my_pll/inst/plle2_adv_inst/CLKIN1] -multiply_by 2 -add -master_clock clk_in [get_pins u_my_pll/inst/plle2_adv_inst/CLKOUT0],会出现
这是时序报表的情况
按理说clk_out1_my_pll和clk_100m是指示同一个时钟,所以不用分析从clk_out1_my_pll到clk_100m和clk_100m到clk_out1_my_pll。所以再添加下面两个约束语句
set_false_path -from [get_clocks clk_100m] -to [get_clocks clk_out1_my_pll]
set_false_path -from [get_clocks clk_out1_my_pll] -to [get_clocks clk_100m]
checking timing出现的警告就可以解决
[get_pins u_my_pll/inst/plle2_adv_inst/CLKIN1]和[get_pins u_my_pll/inst/plle2_adv_inst/CLKOUT0]可以通过在report_clocks的tcl命令得到