2013-10-18 65 views
0

我想爲Zedboard實現一個定製的IPCore。在我的User_Logic中,我包含了作爲ISE項目一部分編寫的來自VHDL模塊(My_Module.vhd)的組件(My_Module)。但是當我在PlanAhead中爲我的設計生成比特流時,它會請求My_Module.ngc,好像它將它視爲黑盒子一樣。我雖然只在使用CoreGen的IPCores時才需要NGC,但它似乎也希望它能夠包含任何VHDL模塊,因爲我猜這是一個'黑匣子'。在IPCore賽靈思生成定製VHDL模塊的NGC

問題是如何從VHDL爲這個模塊創建一個NGC文件,該模塊是ISE項目的一部分。由於在ISE中找不到任何功能,允許您爲一個VHDL模塊生成網表。或者,我可以將此模塊導出到單獨的ISE項目中,然後將其合成爲獲得.ngc?

非常感謝 山姆

回答

1

所以答案就是通過製作你想要的「頂級模塊」模塊來生成NGC文件,然後運行綜合以生成單獨的NGC。然後在將IP添加到PCore時照常進行。因此,將這些NGC文件添加到網表文件夾並修改BBD文件和所有這些!

至於完成一記讓模塊工作,你需要設置綜合設置「賽靈思Specefic」 - >和禁用「添加IO緩衝區」

1

你確定你已經在完全相同的方式無論是在你的模塊.vhd文件類型的模塊名稱,並使用該模塊作爲一個組件的文件嗎?

在正常情況下,如果您的項目包含該模塊作爲.vhd文件,它將與其他源一起綜合 - 我做了一個快速測試並在我自己的一個項目中重新命名了一個組件,並且得到了關於可能缺少.ngc文件的投訴(這是在ISE中,而不是在PlanAhead中)。

+0

是的,我敢肯定,在ISE和XPS,項目synthesises並且實施運行良好。它只在PlanAhead中出現這個問題,這讓我感到困惑! –

+0

另一個令人費解的事情是,當在XPS中生成網表時,如果它需要構建的ngc文件,它甚至會在我得到PlanAhead綜合階段之前拋出這個錯誤。但在這裏它運行在XPS但不是PlanAhead。 –

+1

聽起來很奇怪 - 我沒有真正使用過PlanAhead來管理項目,所以對此無能爲力。您應該添加您的問題,該問題是特定於PlanAhead,並且ISE中的一切都很好。也可能是一些代碼片段(例如你的模塊/組件等的聲明)。 – sonicwave

0

您是否在您的ISE項目中包含My_Module.vhd作爲源文件?如果是,請檢查ISE項目的My_Module組件旁邊沒有黃色問號。如果是這樣,那麼它需要有關該組件的更多信息。您應該在ISE實施層次結構視圖中看到一個帶有字母VHD的小圖標。

+0

不用一切都好,My_Module.vhd源是通過創建新VHDL模塊的常用方式創建的,所以鏈接沒有問題。 –

+0

您是否記得在實例化My_Module的文件中包含您的體系結構之前的組件定義?如果你沒有,我想你會有一個編譯錯誤,但只是想我會問。 – Russell