1.在Translate过程中出现如下错误:
"ERROR:ConstraintSystem:59 - Constraint< xxx >: NET/INST "xxx" 未找到。Please verify that:
The specified design element actually exists in the design.
The specified object is spelled correctly in the constraint source file."
解决办法:为了防止综合工具删除 net,应为 net 应用 "KEEP"
例如:(* KEEP = "TRUE" *) wire [3:0] SdData_o ;
另外注意检查管脚约束UCF文件中,是否有对多余的IO信号分配了同一个管脚
2、在implement时点击translate后,出现如下错误:
ERROR:NgdBuild:924- input pad net 'clk' is driving non-buffer primitive。
意为输 入信号clk未经buffer就用来驱动其他primitives了
主要的原因:
输入时钟clk_in在作为DCM输入引脚的时候又为其他module的输入,也就是说clk有两个load,连接PLL时,输入信号先要连接到内部buffer以产生较强的驱动能力,从而保证时钟的时 序质量。但是由于输入信号的另一分支不经过任何电路就直接连接到了输出Pad ,所以存在一种可能,即连接buffer的分支会被短路,从而失去预期的效果。即输入clk两个分支,一个直接连到模块fsm;一个连在了DCM的输入时钟源。由于经过DCM时会自动加一个buffer缓冲器,而到fsm会直接连在一起,这样会造成DCM这一路短路出现错误。正因为如此,ISE给出了错误警告。
解决办法:clk只是连接一个load,就是DCM。DCM两个输出一个CLKFX_OUT_1,另外一个用CLK0_OUT,此信号和clk无论相位还是频率是一样的。
另外: chipscope 不能用晶振输入时钟来作为采样时钟