NgdBuild:604 XPS和ISE中调用官方IP核后报错解决

NgdBuild:604 XPS和ISE中调用官方IP核后报错解决

ISE中调用嵌入式模块时,如果模块内部调用过官方IP核(代码不全是自己编写),则需要在调用模块前添加指向语句。原因是官方IP核是内部保密的,XST编译时仅生成ngc网表文件,调用时也要包含网表文件,个别软件由于版本问题,不能自动复制低层次网表文件时即会出现NgdBuild:604 error。

ISE中导入NGC文件

以下是官方推荐的导入NGC文件的解决办法:
VHDL:
attribute box_type : string;
attribute box_type of system : component is “user_black_box”;
Verilog
(* box_type = “user_black_box” *)
system u1 (. . . . );
NgdBuild:604 XPS和ISE中调用官方IP核后报错解决
网上也有在ISE中添加网表路径的办法,个人认为复杂,这里不介绍。

XPS中导入NGC文件

同样的问题,XPS中调用自定义IP核时,如果该IP核内部调用了官方IP,则需要在导入自定义IP时将官方IP的netlist文件(.ngc)一并导入。最简单的方法是使用IP导入向导
NgdBuild:604 XPS和ISE中调用官方IP核后报错解决
自定义IP核自动添加bbd文件
NgdBuild:604 XPS和ISE中调用官方IP核后报错解决

生成netlist文件夹,里边会copy需要导入的NGC文件。
NgdBuild:604 XPS和ISE中调用官方IP核后报错解决
Mpd文件会自动添加如下:
OPTION STYLE = MIX
OPTION RUN_NGCBUILD = TRUE
至此,XPS中调用自定义IP时NGC文件导入完成。笔者还没试过在自定义IP核中使用官方推荐方法解决此问题。
注:XPS中添加完NGC文件后需要清除原netlist文件后重新生成网表文件,否则旧网表文件不会被覆盖。