手順 3: デザインへの IP インスタンシエーション - 2022.1 日本語

Vivado Design Suite チュートリアル: IP を使用した設計 (UG939)

Document ID
UG939
Release Date
2022-06-10
Version
2022.1 日本語
Verilog インスタンシエーション テンプレートをコピーし、プロジェクトの適切な Verilog ソース ファイルに貼り付け、信号を変更して、カスタマイズした IP をデザインにインスタンシエートします。
  1. [Sources] ウィンドウの [IP Sources] タブで、Instantiation Template を展開し、char_fifo.veo ファイルをダブルクリックして、 Vivado® テキスト エディターでテンプレートを開きます。
  2. テンプレート ファイルの 57 行目までスクロールダウンし、次の図のように、モジュール インスタンシエーションのコードを選択してコピーします。

    次に、インスタンシエーション テンプレートを適切な RTL ソース ファイルに貼り付けます。このケースでは、デザインの最上位にある wave_gen.v ソース ファイルにモジュールを貼り付けます。

  3. wave_gen.v をダブルクリックして、[Sources] ウィンドウの [Hierarchy] タブでこのファイルを開きます。次の図は、このファイルを示しています。

  4. 337 行目に移動します。この行には、Character FIFO がここにインスタンシエートされるべきであることを示すコメントが書かれています。
  5. テンプレートのコードを次の図のようにファイルに貼り付けます。

    これはテンプレートでしかないので、デザインでこのモジュールが機能するように、貼り付けたコードを編集する必要があります。



    1. インスタンシエーションを貼り付けた 338 行目 (あたり) で、モジュール名を your_instance_name から char_fifo_i0 に変更します。
    2. モジュールのポートをデザインに接続するため、次のようにワイヤ名を変更します。
      char_fifo char_fifo_i0 (
      .rst(rst_i), // input wire rst
      .wr_clk(clk_rx), // input wire wr_clk
      .rd_clk(clk_tx), // input wire rd_clk
      .din(char_fifo_din), // input wire [7 : 0] din
      .wr_en(char_fifo_wr_en), // input wire wr_en
      .rd_en(char_fifo_rd_en), // input wire rd_en
      .dout(char_fifo_dout), // output wire [7 : 0] dout
      .full(char_fifo_full), // output wire full
      .empty(char_fifo_empty), // output wire empty
      .wr_rst_busy(wr_rst_busy),  // output wire wr_rst_busy 
      .rd_rst_busy(rd_rst_busy)  // output wire rd_rst_busy 
      );
  6. テキスト エディターのメニューで Save File ボタン () をクリックし、wave_gen.v ファイルへの変更を保存します。

    次の図のように、IP がデザインにインスタンシエートされたことを反映させるため、[Hierarchy]、[Libraries]、[Complie Order] タブがアップデートされます。