我的设计中有一个时钟,可以在正常操作中驱动某些逻辑。但有时我想通过设置VHDL通用来禁用它来禁用这个逻辑块。但我的.xcf文件中仍然有一个时钟约束,例如:
NET "TEST_CLK" TNM_NET = "TEST_CLK";
TIMESPEC TS_TEST_CLK = PERIOD "TEST_CLK" 20.000 ns HIGH 50 %;
如果我尝试运行综合,我会收到以下错误:
Processing TIMESPEC TS_TEST_CLK: No TNM or User group name TEST_CLK is defined.
当时钟已经(正确)优化出设计时,如何告诉工具有效地忽略此约束?这甚至可能吗?
答案 0 :(得分:0)
Vivado针对与设计不匹配的约束发出严重警告,但是它会继续构建并且无论如何都会生成.bit文件。我认为这是一个很好的权衡,但你必须记得看一下关键的警告。
另外,正如Morten Zilmer评论的那样,Vivado使用TCL文件作为约束,因此您可以条件化约束或根据实际设计生成约束。
答案 1 :(得分:0)
使用ISE工具时,ngdbuild(Translate)具有“允许不匹配的计时组”选项(命令行上的-aut)。当你的设计不完整时,应该使用它。 gui中的翻译属性也应该有一个选项。如果您在综合时添加约束,我不确定是否有专门执行此操作的选项。