AR# 53373

Vivado 2013.1 - CORE Generator で作成した FIFO Generator IP コアを Vivado に追加すると、FIFO VHDL ファイル名とその名前が同じである場合に、Vivado でエラーが発生する

説明

CORE Generator で作成した FIFO Generator IP コアを Vivado プロジェクトに追加すると、次のようなメッセージが合成で表示されます。

[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'clk' ["C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'rst' [C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'wr_en' [C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'rd_en' ["C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'din' ["C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-3493] module 'async_fifo' declared at 'C:/Xilinx/14.3/ISE_DS/ISE/coregen/ip/xilinx/primary/com/xilinx/ip/fifo_generator_v8_1/ramfifo/async_fifo.vhd:91' does not have matching formal port for component port 'dout' ["C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":118]
[Synth 8-285] failed synthesizing module 'async_fifo_exdes' ["C:/my_project/project_1/project_1.srcs/sources_1/imports/example_design/async_fifo_exdes.vhd":89]



これらのエラーが発生するのはなぜですか、またこの問題を回避するにはどうしたらよいでしょうか。

ソリューション

この問題は、次の条件に当てはまる場合に発生します。

  • FIFO Generator IP コアが CORE Generator を使用して作成されている。
  • IP コアの名前が、FIFO Generator コアのインストールでのファイルと同じ名前である (async_fifo.vhd など)
  • NGC は含まれているが、同じ名前の HDL ラッパー ファイルがない。

Vivado は ISE DS インストールで配布されている HDL ファイルを検索していますが、これは、ユーザー パラメーターを一致させるためにカスタマイズされておらず、使用可能なポートがすべて含まれています。

考えられる回避策は次のとおりです。

  • 別の名前で FIFO Generator コアを再生成する。
  • NGC ファイルと同じ基本名で HDL ラッパー ファイルを作成し、それを IP コア ディレクトリに保存する。
  • この問題は Vivado のみで発生するので、XST 合成を実行する。

この問題は、Vivado 2013.2 で修正されています。

AR# 53373
日付 06/16/2014
ステータス アーカイブ
種類 一般
ツール 詳細 概略
IP