1. creat_clock -period 10 [get_ports sysclk]
1. creat_clock -name clkin -period 10 [get_ports clkin] #创建primary clock
2. creat_generated_clock -name clkdiv2 -source [get_ports clkin] -divide_by 2 [get_pins REGA/Q]
set_clock_groups -name async_clk0_clk1 -asynchronous
-group [get_clocks -include_generated_clocks clk0]
-group [get_clocks -include_generated_clocks clk1]
set_clock_groups -name exclusive_clk0_clk1 -physically_exclusive
-group clk0 -group clk1
creat_clock -name sysclk -period 10 [get_ports clkin]
set_input_delay -clock sysclk 4 [get_ports din]
creat_clock -name sysclk -period 10 [get_ports clkin]
set_input_delay -clock sysclk -max 4 [get_ports ain]
set_input_delay -clock sysclk -min 2 [get_ports ain]
creat_clock -name sysclk -period 10 [get_ports clkin]
set_output_delay -clock sysclk [get_ports din]
creat_clock -name sysclk -period 10 [get_ports clkin]
set_output_delay -clock sysclk -max 2 [get_ports dout]
srt_output_delay -clock sysclk -min -1 [get_ports dout]
creat_clock -name sysclk -period 10 [get_ports clkin]
creat_clock -name vclk -period 5
set_input_delay 6 -clock sysclk [get_ports dina]
set_input_delay 6 -clock vclk [get_ports dinb]
注意 vclk的时钟频率和internal clock的时钟频率相同
creat_clock -name sysclk -period 10 [get_ports clkin]
creat_clock -name vclk -period 5
set_clock_latency -source 1 [get_clocks vclk]
set_input_delay -clock vclk -max 4 [get_ports dina]
set_input_delay -clock vclk -max 2 [get_ports dina]
虚拟时钟只能用于IO时序分析,其与实体时钟的一个本质区别是虚拟时钟,不与任何管脚绑定。
set_multicycle_path -from [get_cells rega] -to [get_cells regb] -setup -end 2
set_multicycle_path -from [get_cells rega] -to [get_cells regb] -hold -end 1
-setup表示该周期路径所需要的时钟周期的个数;-hold表示相对于缺省的捕获沿,实际捕获沿迎回调的周期set_false_path -from [get_clocks clka] -to [get_clocks clkb]
set_false_path -from [get_clocks clkb] -to [get_clocks clka]
上面的语句和时钟分组约束的效果是一样的。