0

我正在尝试为 Zedboard 实现自定义 IPCore。在我的 User_Logic 中,我包含了一个来自 VHDL 模块 (My_Module.vhd) 的组件 (My_Module),这是我作为 ISE 项目的一部分编写的。但是,当我在 PlanAhead 中为我的设计生成比特流时,它会要求 My_Module.ngc,就好像它把它当作一个黑盒一样。我虽然只在使用 CoreGen IPCores 时才需要 NGC,但它似乎也需要它用于包含的任何 VHDL 模块,因为我猜这是一个“黑匣子”。

问题是如何从 VHDL 为该模块创建 NGC 文件,该模块是 ISE 项目的一部分。因为我在 ISE 中找不到任何允许您为一个 VHDL 模块生成网表的功能。或者我可以将这个模块导出到一个单独的 ISE 项目中,然后合成它以获得 .ngc?

非常感谢山姆

4

3 回答 3

1

您确定您在模块.vhd文件和使用模块作为组件的文件中以完全相同的方式键入了模块名称吗?

在正常情况下,如果您的项目将模块作为.vhd文件包含,它只会与您的其余源代码一起合成 - 我做了一个快速测试并在我自己的一个项目中重命名了一个组件,并收到了关于可能缺少 .ngc 文件(这是在 ISE 中,但不在 PlanAhead 中)。

于 2013-10-18T11:53:27.037 回答
1

因此,答案是通过将您想要的模块设置为“顶级模块”来生成 NGC 文件,然后您可以运行合成以生成单个 NGC。然后在将 IP 添加到 PCore 时照常进行。因此,将这些 NGC 文件添加到网表文件夹并修改 BBD 文件等等!

作为使模块正常工作的完成说明,您需要设置综合设置“Xilinx Specefic”-> 并禁用“添加 io 缓冲区”

于 2013-10-18T14:22:59.677 回答
0

您是否将 My_Module.vhd 作为源文件包含在您的 ISE 项目中?如果是,请检查 ISE 项目的 My_Module 组件旁边是否没有黄色问号。如果是这样,那么它需要有关该组件的更多信息。您应该在 ISE 实施层次结构视图中看到一个带有字母 VHD 的小图标。

于 2013-10-18T12:00:25.453 回答