Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?

  在Vivado工程的调试中,xdc文件指定管脚后,我们偶尔会临时修改管脚位置,但之前的位置信息还想保留在xdc中,因此很多工程师就会选择将之前的管脚信息注释在修改位置的后面。比如下面的工程中,rxd_pin的位置本来是F25,我们需要临时改成E17,同时把F25注释到后面,表明这个位置之前是F25

图片[1]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913152939927

在综合完后,Open Synthesised Design后,会提示下面的Critial Warning

图片[2]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913151152886

意思就是我们加的这个注释有问题,同时我们看下管脚分配的页面中,这个管脚确实是有问题的:

图片[3]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913151803156

这是为什么呢?

首先大家需要知道的一点是,xdc里面的语句都是tcl脚本,所以语法也都是tcl的语法,如果语法错误,那xdc里面的内容也不会生效。

在tcl的语法中,行末注释是需要加分号的,就像下面这样:

图片[4]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913153006166

再重新综合,打开管脚页面,可以看到,并没有任何错误和警告。

图片[5]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913152458509

也可以把注释单独一行,也是正确的语法:

图片[6]-Xilinx FPGA的 XDC约束中加入注释,为什么会导致该约束失效?-Xilinx-AMD社区-FPGA CPLD-ChipDebug
image-20210913155134121
请登录后发表评论