快时钟到慢时钟域约束
最近在看xilinx UG903手册,手册中针对快时钟到慢时钟使用multicycle 约束的描述如下:

使用如下约束
set_multicycle_path 3 -setup -start -from [get_clocks CLK1] -to [get_clocks CLK2]
set_multicycle_path 2 -hold -from [get_clocks CLK1] -to [get_clocks CLK2]
得到结果

xilinx官方给出了重要提示:
For a FAST-to-SLOW clock domain crossing, define a setup multiplier of N against the launch clock (-start) with a hold multiplier of N-1 (most common case).
推荐了这样的写法:
set_multicycle_path N -setup -start -from [get_clocks CLK1] -to [get_clocks CLK2]
set_multicycle_path N-1 -hold -from [get_clocks CLK1] -to [get_clocks CLK2]