DC中这种时钟设计应该如何进行约束
设计有两个时钟域!clkx和clky!而且两个时钟域之间有跨时钟域的时序路径!如图所示,clky1由clkx六分频产生,clky0是外部输入的,当mux的sel为1时,clky等于clky0,反之为clky1,请问这种时钟应该如何约束?
求帮助!以前未遇到过!
create generated clock clky_a [get_pin mux/z] -master_clock clockx
create generated clock clky_b [get_pin mux/z] -add -master_clock clocky0
set clky_a and clk_b async group
谢谢!但是我的clky0应该是外部输入信号!clky1为内部分频信号!而且这两个时钟应该是asy group还是logic exclusive group呢?
clk_y1 和clk_y0设physically_exclusive:
set_clock_groups -physically_exclusive -group {clk_y1} -group {clk_y0}
clk_y1和clk_y2均做成gengerated。
然后mux/Y端不需要设clock
但是设计中最终用到的时钟信号是clkx和clky,所以我觉得分频产生的clky1应该不用设置exclusive吧?
另外请问一下,如果选用clky,那么report timing 会不会把内部时钟clky相关的路径给报出来啊?
还有你说的clky2是不是指的clky0,它是外部输入时钟,应该还是设置create clock吧?
前面没写清楚,再写一下:
1-y1和y0设exclusive,因为mux的输出会有两种模式
2-y1由x生成,设generated
3-y0用create
不需要在mux的输出点定义clk y
嗯!这个明白了!还有一个问题就是外部输入端口延时是和内部mux之后的时钟clk相关的,是应该设置-clock clk还是外部输入的clky0呢?或者clky1?我试过设置为clk,但是report timing,没有看到clk group的时序报告!只有clkx的时序报告!谢谢!
