VIVADO——XDC中定义的变量,“设置”命令在实现的设计中不起作用——“不能读取”<var_name>“没有这样的变量”
描述
我有类似于XDC文件中定义的变量:
TestBay1模型/时钟驱动/ FDRYCOMP
然而,在实现的设计中,当在TCL命令中使用上述变量时(例如,RePrimeTimeTimes),给出以下错误:
不能读取“变量1”:没有这样的变量
这种行为只能在实现的设计中看到,而不是在综合设计中。
造成这个问题的原因是什么?
解决方案
这是一种预期的行为。
在打开综合运行后,首先读取DCP,然后读取XDC项目并应用于网表。
因为项目XDC包含TCL变量,所以您可以使用它们。
然而,打开一个IMPrimun-Run,只读取DCP(其中DCP既包含NETLIST又包含XDC)。
DCP文件中的XDC不包含任何变量,因为它们都已被解析。
在实现的设计中,变量需要在TCL控制台中定义,然后才能在任何命令行中使用。
若要在实现的设计中使用预定义变量,请将“设置”命令放入TCL脚本文件中,并在实现设置中的TCL.PROFE选项中指定此文件。