[Constraints 18-1056] Clock 'dclk_200' completely overrides clock 'design_1_wrapper_i/design_1_i/clk_wiz_0/dclk_200'. New: create_generated_clock -name dclk_200 -source [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/clk_in1] -divide_by 1 -multiply_by 2 [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/dclk_200], ["/mnt/batman/ex_regions/yangang/zynq/bd_design/nfc_fm_20230610_8ch_125MHZ_syn_id5/project_1/project_1.srcs/constrs_1/new/top.xdc": and 46] Previous: create_generated_clock -source [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/clk_in1] -edges {1 2 3} -edge_shift {0.000 -2.656 -5.312} [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/dclk_200], ["/mnt/batman/ex_regions/yangang/zynq/bd_design/nfc_fm_20230610_8ch_125MHZ_syn_id5/project_1/project_1.srcs/sources_1/bd/design_1/ip/design_1_clk_wiz_0_0/design_1_clk_wiz_0_0/design_1_clk_wiz_0_0_in_context.xdc": and 2]
时间: 2023-08-04 20:08:39 浏览: 447
这是一个关于 Vivado 约束文件的错误信息,指出了时钟 'dclk_200' 被新的约束完全覆盖了,新约束为:
create_generated_clock -name dclk_200 -source [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/clk_in1] -divide_by 1 -multiply_by 2 [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/dclk_200]
而之前的约束为:
create_generated_clock -source [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/clk_in1] -edges {1 2 3} -edge_shift {0.000 -2.656 -5.312} [get_pins design_1_wrapper_i/design_1_i/clk_wiz_0/dclk_200]
这种情况通常是由于在约束文件中出现了重复的约束或者约束冲突导致的。建议检查约束文件中的所有时钟约束,并确保每个时钟都只有一个约束,并且没有冲突。可以选择删除一个约束或者修改约束参数来解决问题。
相关问题
# 设置时钟create_clock -period 10.0 [get_ports {clk}]# 设置时序约束set_max_delay -to [get_ports {out}] 5.0set_max_delay -to [get_ports {out}] -clock [get_clocks {clk}] 10.0# 生成SDC文件write_sdc "constraints.sdc",design compiler执行这个脚本会输出什么,输出的内容是什么
当Design Compiler执行这个Tcl脚本时,它会完成以下操作:
1. 设置名为"clk"的输入时钟端口,并将时钟周期设置为10.0纳秒。
2. 设置从名为"out"的端口到任意时钟的最大延迟为5.0纳秒。
3. 设置从名为"out"的端口到名为"clk"的时钟的最大延迟为10.0纳秒。
4. 将时序约束输出到名为"constraints.sdc"的SDC文件中。
在控制台上,Design Compiler会输出一些执行过程中的日志信息,例如Tcl脚本中使用的命令和参数值等。如果执行成功,它还会输出一条消息,表示SDC文件已经生成。
输出的内容类似于下面这个样子:
```
create_clock -period 10.0 [get_ports {clk}]
set_max_delay -to [get_ports {out}] 5.0
set_max_delay -to [get_ports {out}] -clock [get_clocks {clk}] 10.0
write_sdc "constraints.sdc"
"constraints.sdc" has been written.
```
其中,第一行到第四行分别对应Tcl脚本中的四个命令,最后一行表示SDC文件已经生成。
这段代码什么意思:sh sed -i '/set_dont_ungroup_hierarchy/s/false//g' ./des_unit_dft_constraints.tcl
这段代码的含义是在当前目录下的 `des_unit_dft_constraints.tcl` 文件中,查找包含字符串 `set_dont_ungroup_hierarchy` 并且后面紧跟着 `false` 的行,并将其中的 `false` 替换成空(即删除 `false`)。其中 `sh` 是执行 shell 命令的命令行前缀,`sed` 是一个常用的文本编辑工具,`-i` 表示直接修改文件内容,`/.../` 表示查找匹配的字符串模式,`s` 表示替换操作,`g` 表示全局替换。