求助timing constraint
时间:10-02
整理:3721RD
点击:
一个FPGA设计,从外部晶振输入的25M时钟经过PLL0产生一个150M时钟clk0,然后clk0由作为PLL1的源产生一个100M时钟clk1。
请问我在下timing constraint的时候需要在clk0和clk1之间的path设false_path么?
如:
set_false_path -from [get_clocks $clk0] -to [get_clocks $clk1]
set_false_path -from [get_clocks $clk1] -to [get_clocks $clk0]
求助!拜托!
请问我在下timing constraint的时候需要在clk0和clk1之间的path设false_path么?
如:
set_false_path -from [get_clocks $clk0] -to [get_clocks $clk1]
set_false_path -from [get_clocks $clk1] -to [get_clocks $clk0]
求助!拜托!
不需要。
pll是模拟器件,无法保证输出的始终和输入是同步的,应该是需要设的
不同时钟域一般都可设成false path,尤其在时序不满足的时候!
首先要从fpga手册看看这两个pll是否有相位锁的功能,也就是说是否保证输入始终和输出时钟每次上电和运行过程中始终保持同一相位。如果是,哪么就不用false_path了如果不是,哪么就是false-path,但是要保证两个时钟域之间数据传送要用异步时钟接口
这种情况下的timing constraint一般约束的是FF到FF之间的路径延时不超过一个时钟周期的时间,小编说的是从PLL到PLL,时序分析器都不会分析这段路径。再说了,如果相位之间没有特别要求的话,约束它也没什么意义;如果有要求,则应该采用反馈的机制来保证。这时,false path之类的约束起不到什么作用。
