Vivado Design Suite ユー ザー ガイド - Xilinx...Vivado Design Suite ユー ザー ガイド...

53
Vivado Design Suite ユー ザー ガイド IP を使用した設計 UG896 (v2013.2) 2013 6 19

Transcript of Vivado Design Suite ユー ザー ガイド - Xilinx...Vivado Design Suite ユー ザー ガイド...

  • Vivado Design Suite ユーザー ガイド

    IP を使用した設計

    UG896 (v2013.2) 2013 年 6 月 19 日

  • IP を使用した設計 www.xilinx.com 2UG896 (v2013.2) 2013 年 6 月 19 日

    Notice of DisclaimerThe information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products.To the maximum extent permitted by applicable law:(1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not be liable (whether in contract or tort, including negligence, or under any other theory of liability) for any loss or damage of any kind or nature related to, arising under, or in connection with, the Materials (including your use of the Materials), including for any direct, indirect, special, incidental, or consequential loss or damage (including loss of data, profits, goodwill, or any type of loss or damage suffered as a result of any action brought by a third party) even if such damage or loss was reasonably foreseeable or Xilinx had been advised of the possibility of the same.Xilinx assumes no obligation to correct any errors contained in the Materials or to notify you of updates to the Materials or to product specifications.You may not reproduce, modify, distribute, or publicly display the Materials without prior written consent.Certain products are subject to the terms and conditions of the Limited Warranties which can be viewed at http://www.xilinx.com/warranty.htm; IP cores may be subject to warranty and support terms contained in a license issued to you by Xilinx.Xilinx products are not designed or intended to be fail-safe or for use in any application requiring fail-safe performance; you assume sole risk and liability for use of Xilinx products in Critical Applications:http://www.xilinx.com/warranty.htm#critapps.© Copyright 2012-2013 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, and other designated brands included herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respective owners.

    本資料は英語版 (v2013.2) を翻訳したもので、 内容に相違が生じる場合には原文を優先します。資料によっては英語版の更新に対応していないものがあ り ます。日本語版は参考用と してご使用の上、 最新情報につきましては、 必ず最新英語版をご参照ください。

    この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、[email protected] までお知らせください。 いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受け付けており ません。 あらかじめご了承ください。

    改訂履歴次の表に、 この文書の改訂履歴を示します。

    日付 バージョ ン 改訂内容

    2012/07/25 2012.2 初版

    2012/12/18 2012.4 2012.4 Vivado IDE の GUI に合わせてテキス トおよびグラフ ィ ッ クをアップデート

    2013/03/20 2013.1 IP インテグレーターという早期リ リース機能を使用するための新しい章を追加2013.1 リ リースからの新機能に合わせてテキス トおよびグラフ ィ ッ クをアップデート

    2013/06/19 2013.1 本全体の構造を変更2013.2 リ リースからの新機能に合わせてテキス トおよびグラフ ィ ッ クをアップデート

    IP インテグレーターに関する内容を新しい 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) に移動

    mailto:[email protected]://www.xilinx.com/warranty.htmhttp://www.xilinx.com/warranty.htm#critappshttp://www.xilinx.com

  • 目次

    改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    第 1 章 : IP 中心のデザイン フローの概要Vivado IP カタログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Vivado IP パッケージャー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    第 2 章 : 再利用可能な IP の作成および管理[Manage IP] フローの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7フローの開始 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7IP のシ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    Vivado シ ミ ュレータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11ModelSim/QuestaSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11その他のシ ミ ュレータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12ネッ ト リ ス ト シ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    ザイ リ ンクス IP とサードパーティ合成ツール. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13バージ ョ ン制御 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    第 3 章 : プロジェク トでの IP の使用IP カタログからの IP インスタンスの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    IP のカスタマイズ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16IP のディ レク ト リ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    IP 出力ファイルの生成と リセッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19既存 IP の追加 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19プロジェク トでの IP ステート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21IP のプロジェク ト設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22IP ボード フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23IP のインスタンシエート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25IP の合成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25IP のシ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27デザイン内での IP の制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28IP のサンプル デザインの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28IP ステータスのレポート と IP のアップグレード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29IP 操作の Tcl コマンド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    第 4 章 : IP のパッケージIP パッケージャーとその使用フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    IP パッケージ化フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34IP ユーザーのフロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34リ ポジ ト リの管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35IP カタログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36IP のカスタマイズと生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36IP パッケージの検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    IP パッケージャーの入力 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    IP を使用した設計 japan.xilinx.com 3UG896 (v2013.2) 2013 年 6 月 19 日

    http://japan.xilinx.com

  • 入力ファイルのグループ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37パッケージ化された IP に最低限必要なファイル セッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    IP パッケージャーの出力 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37出力パッケージ内の IP デザイン ファ イルの分類 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37出力パッケージに含まれるその他のファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    IP パッケージ化の手順 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38既存の Vivado プロジェク トのパッケージ化または新規プロジェク トの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . 38プロジェク ト を IP と してパッケージ化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39IP カタログへの新規 IP の追加 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41HDL 以外のファイルの IP パッケージへの追加 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    以前の EDK IP のインテグレーター コアへの変換. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45推奨される変換フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45予約済みパラ メーター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    付録 A : 付録その他のリ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    ザイ リ ンクス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47ソ リ ューシ ョ ン センター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47リ ファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    IP のファイルおよびディレク ト リ構造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48Vivado Design Suite IP vs ISE CORE Generator IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48有償ライセンス IP の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Vivado IP 最適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50スタンドアロン IP の特性評価手法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Fmax マージン システム手法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51ツール オプシ ョ ンおよびその他の要因 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    IP を使用した設計 japan.xilinx.com 4UG896 (v2013.2) 2013 年 6 月 19 日

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 5UG896 (v2013.2) 2013 年 6 月 19 日

    第 1 章

    IP 中心のデザイン フローの概要Vivado™ Integrated Design Environment (IDE) には、さまざまなデザイン ソースからデザインに IP モジュールを追加できるよ うな IP 中心のデザイン フローがあ り ます。

    図 1-1 に示すよ うに、Vivado IDE には次の IP ソースを集めた IP カタログというセン ト ラル レポジ ト リが含まれます。

    • Vivado Design Suite IP

    • System Generator for DSP デザインからのモジュール (MATLAB/Simulink アルゴ リズム) および Vivado 高位合成デザイン (C/C++ アルゴ リズム)

    • サードパーティ IP

    • Vivado IP パッケージャーを使用して IP と してパッケージされたユーザー デザイン

    注記 : サードパーティから合成済み EDIF ネッ ト リ ス ト と して提供されている IP もあ り ます。 [Add Sources] コマンドを使用する と、 Vivado IDE からこれらのファイルをデザインに読み込むこ とができます。

    デザインの IP は、 さまざまな方法で操作できます。

    • [Managed IP] フローを使用して、 IP をカスタマイズし、 合成済みデザイン チェッ クポイン ト (DCP) を含む出力ファイルを生成します。 IP は、 作成された XCI ファ イルを参照する と、 プロジェク ト フローでも非プロジェクト フローでも使用できます。 これは、 多くのチーム メ ンバーで大規模プロジェク ト を設計するのに、 推奨される方法です。 詳細は、 第 2 章 「再利用可能な IP の作成および管理」 を参照して ください。

    • Vivado プロジェク ト内で IP を作成および追加します。プロジェク ト内で IP カタログにアクセスして、 IP を作成し、 デザインに追加します。 IP は、 プロジェク ト内部または外部に保存できます。 チーム メ ンバーの少ないプロジェク トに推奨される方法です。 詳細は、 第 3 章 「プロジェク トでの IP の使用」 を参照して ください。

    X-Ref Target - Figure 1-1

    図 1-1 : IP 中心のデザイン フロー

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 6UG896 (v2013.2) 2013 年 6 月 19 日

    Vivado IP カタログVivado IP カタログ (図 1-2) は、 ザイ リ ンクス IP、 サードパーティ IP および企業独自の IP のセン ト ラル レポジ ト リで、 デザイン チーム、 部署、 企業内で共有して利用できます。

    Vivado IP カタログの主な機能は、 次のとおりです。

    • 開発されているエンド アプリケーシ ョ ンにかかわらず、 構築ブロ ッ ク、 ウ ィザード、 コネクティビティ、 DSP、エンベデッ ド、 AXI 基盤構造、 およびビデオ IP を含むザイ リ ンクス IP すべてに、 1つの共有レポジ ト リから簡単にアクセス可能

    • 共有ネッ ト ワーク ド ラ イブも含めた複数の物理ロケーシ ョ ンをサポート し、サードパーティ またな企業内で開発された IP を一貫した IP 環境で利用可能

    • Vivado 統合設計環境 (IDE) または Tcl による自動スク リプ ト ベースのフローを使用して、IP をカスタマイズおよび生成

    • インスタンシエーシ ョ ン テンプレート、 シ ミ ュレーシ ョ ン モデル (HDL、 C、 または MATLAB)、 および HDL サンプル デザインなど、 オプシ ョ ンの IP 出力をオンデマンド配信

    • IP を Vivado プロジェク トのインスタンシエート ソース と して直接評価可能な IP サンプル デザインを統合

    • IP をデザインと共にグローバルに RTL 合成、 合成可能な RTL または IP のビヘイビア シ ミ ュレーシ ョ ン モデルを使用可能

    • 変更ログの記録と同じバージ ョ ン履歴の詳細に素早くアクセス可能。 IP バージ ョ ン番号の命名規則は、 メジャー番号.マイナー番号で表記されるよ う統一

    Vivado IP パッケージャー図 1-1 に示すよ うに、 Vivado IDE には IP パッケージャーという独自のデザイン機能があ り ます。 IP パッケージャーは IP-XACT 規格 (IEEE-1685) に準拠しています。 Vivado IDE ユーザー デザインが集められる と、 IP パッケージャーでデザインを再利用可能な IP モジュールに素早く変更して、 Vivado IP カタログに追加して、 ほかのユーザーが使用できるよ うにできます。

    X-Ref Target - Figure 1-2

    図 1-2 : Vivado IP カタログ

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 7UG896 (v2013.2) 2013 年 6 月 19 日

    第 2 章

    再利用可能な IP の作成および管理

    [Manage IP] フローの概要Vivado IDE では、 IP カタログで IP を検索したり、 IP をカスタマイズした り、 コンフ ィギュレーシ ョ ンされた IP のレポジ ト リ を管理したり といった使用しやすいフローが提供されており、 managed_ip_project という名前の IP プロジェク トがディ スク上に作成され、 ユーザーの作成した IP の合成後のデザイン チェッ クポイン トが生成されます。

    チームで設計する場合、 またはデザインにザイ リ ンクス IP が多く使用される場合は、 カスタマイズした IP を Vivadoプロジェク ト構造外のディ レク ト リに作成して保存するこ とをお勧めします。 この方法を使用する と、 リ ビジ ョ ン制御がシンプルになり、 IP カスタマイズをほかの人と簡単に共有できるよ うにな り ます。 この方法は、 IP を非プロジェク トのスク リプ ト ベースのフローで処理する場合にも推奨されます。

    [Manage IP] フローの主な機能は、 次のとおりです。

    • シンプルな IP プロジェク ト インターフェイス

    • ザイ リ ンクス IP カタログへの素早いアクセス

    • 複数 IP のカスタマイズ設定を作成可能

    • IP インスタンシエーシ ョ ンごとにディ レク ト リ を分割し、 IP の使用に必要なすべてのファイルを含有

    • RTL または合成後のデザイン チェッ クポイン ト (.dcp) の生成をユーザーが選択可能。 DCP ファ イルには、 IP のネッ ト リ ス トおよび制約の両方が含まれます。

    フローの開始[Manage IP] フローを開始するには、 Vivado IDE を起動して、 Getting Started ページで [Mange IP] をク リ ッ ク します (図 2-1)。

    [Manage IP] をク リ ッ クする と、 次のオプシ ョ ンを含むダイアログ ボッ クスが表示されます。

    • [New IP Location] : IP カタログの確認と IP のカスタマイズに指定したディ レク ト リで新しい IP プロジェク ト を開きます。 出力ファイルも このディ レク ト リに含まれます。

    • [Recent Customized IP Locations] : 既存 IP の管理および新規 IP の作成に使用する IP プロジェク ト を開くディ レクト リ を最近使用したディ レク ト リから選択できます。

    X-Ref Target - Figure 2-1

    図 2-1 : [Manage IP] フローの起動

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 8UG896 (v2013.2) 2013 年 6 月 19 日

    フローの開始

    [New IP Location] オプシ ョ ンを選択した場合は、[Open IP Catalog] ダイアログ ボッ クス (図 2-2) が表示され、ウ ィザードの指示に従って新しいカスタマイズ IP のディ レク ト リ を作成できます。

    [Next] をク リ ッ クする と、 [Open IP Catalog] ダイアログ ボッ クス (図 2-3) が表示されるので、 パーツ、 ターゲッ ト言語、 ターゲッ ト シ ミ ュレータ、 IP プロジェク ト を保存する IP ディ レク ト リ、 および作成またはカスタマイズされるIP を入力します。 ディ レク ト リ を設定する と、 次が実行されます。

    managed_ip_project ディ レク ト リの作成されるディ レク ト リが設定されます。

    カスタマイズ IP のディ レク ト リがそのディ レク ト リ内にそれぞれ作成されます。

    X-Ref Target - Figure 2-2

    図 2-2 : [Manage IP] フローの開始画面

    X-Ref Target - Figure 2-3

    図 2-3 : IP プロジェク ト セッシ ョ ンのデフォルト設定

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 9UG896 (v2013.2) 2013 年 6 月 19 日

    フローの開始

    情報を入力して [OK] をク リ ッ ク したら、図 2-4 のよ う な IP カタログが表示されます。この段階で IP を選択してカスタマイズできます。 カスタマイズする と IP ごとにディ レク ト リが作成されます。

    指定したディ レク ト リに既に IP プロジェク トが含まれる場合は、 既存プロジェク ト を開くかど うかを尋ねる 図 2-5のよ うなダイアログ ボッ クスが表示されます。 [Yes] をク リ ッ クする と、 既存の IP プロジェク トが開き、 カスタマイズされた IP が表示されます。 [No] をク リ ッ クする と、 図 2-2 の画面に戻るので、 新しいディ レク ト リ を指定します。

    [Yes] をク リ ッ クする と、既存の IP プロジェク トが開き、カスタマイズされた IP が表示されます。 [No] をク リ ッ クする と、 図 2-2 の画面に戻るので、 新しい IP ディ レク ト リ を指定します。

    IP 製品ガイ ド、 変更ログ、 製品ウェブ ページ、 アンサー レコードなどへのアクセスを含めたすべてのカタログを開く こ とができます。

    IP をカスタマイズして IP プロジェク トに追加する と、 プロジェク ト に含まれる IP に関する情報が [Sources] および[IP Properties] ビューに表示されます。

    X-Ref Target - Figure 2-4

    図 2-4 : IP カタログの新しい [Manage IP] ビュー

    X-Ref Target - Figure 2-5

    図 2-5 : ディレク ト リに既に IP プロジェク トが含まれる場合の表示されるダイアログ ボックス

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 10UG896 (v2013.2) 2013 年 6 月 19 日

    フローの開始

    図 2-6 は、 [Manage IP] プロジェク ト画面を示しています。

    IP プロジェク トの画面は、 主に 5 つのセクシ ョ ンに分かれています。

    1. [IP Sources] タブ : プロジェク ト用にカスタマイズされた IP すべてがリ ス ト されます。 こ こから、 出力ファイルを確認したり、その他の出力ファイルの生成を管理したりできます。 IP の出力ファイルが既に生成されている場合は (オプシ ョ ンのデザイン チェッ クポイン ト ファ イルは除く )、IP アイコンにチェッ ク マークが表示されます。IP の出力ファイルがまだ生成されていない場合は、 IP アイコンにチェッ ク マークは表示されません。

    注記 : カスタマイズ IP には、 .xci ファ イル以外にも、 インスタンシエーシ ョ ン テンプレート (.veo または.vho) および BOM ファ イル (.xml) が常に作成されます。

    2. IP カタログ : IP カタログ全体を確認し、 カスタマイズ IP を作成して IP プロジェク トに追加できます。

    3. [Details] ビュー : [IP Sources] タブや IP カタログから選択した IP の詳細が表示されます。

    4. [IP Properties] ビュー : [IP Sources] タブや IP カタログから選択した IP の詳細情報が表示されます。 IP が生成されている場合は、 プロパティおよび一般情報が表示されます。

    5. [Design Runs] ビュー : 合成デザイン チェッ クポイン トの出力ファイルが生成される と、その run がこ こに表示されます。

    X-Ref Target - Figure 2-6

    図 2-6 : 3 つの IP を含む [Manage IP] プロジェク ト画面

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 11UG896 (v2013.2) 2013 年 6 月 19 日

    IP のシミ ュレーシ ョ ン

    このフローを使用する と、 複数の IP をカスタマイズおよび管理できます。 IP の出力ファイルは指定した IP ディ レクト リに保存されます。 IP ディレク ト リには、 XCI ファ イルとその他の生成されたファイルが含まれます。 開いたり カスタマイズした IP はすべて Vivado IDE の [Sources] ビューから表示されます (図 2-6)。

    IP のシミ ュレーシ ョ ン[Manage IP] プロジェク トは、 フルの RTL プロジェク トではないので、 IP ディ レク ト リのシ ミ ュレーシ ョ ンはサポート されません。 シ ミ ュレーシ ョ ンするには、 デザイン プロジェク トからカスタマイズ IP を参照して、 そのプロジェク ト内でシ ミ ュレーシ ョ ンします。IP カタログのザイ リ ンクス IP は、RTL ソース と して配布されるので、サードパーティ シ ミ ュレータを使用してもビヘイビア シ ミ ュレーシ ョ ンが実行できます。

    ロジッ ク シ ミ ュレーシ ョ ンとサポート されるシ ミ ュレータについては、 『Vivado Design Suite ユーザー ガイ ド : ロジック シ ミ ュレーシ ョ ン』 (UG900) を参照して ください。

    Vivado シミ ュレータVivado Design Suite には、 Vivado IDE で直接サポート される混合言語シ ミ ュレータ (Vivado シ ミ ュレータ ) が含まれます。シ ミ ュレーシ ョ ンは、RTL プロジェク トから直接起動できます。または、xsim を使用して Vivado の外部でシ ミ ュレーシ ョ ンを実行する場合は、 次のよ うに launch_xsim コマンドを使用して run スク リプ ト を生成できます。

    launch_xsim –scripts_only –mode behavioral

    これによ り、 必要なファイルおよびライブラ リ情報すべてを含め、 コマンド ラインから xsim で使用できるスク リプトが生成できます。

    詳細は、 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) を参照して ください。

    ModelSim/QuestaSimModelSim/QuestaSim は、Vivado IDE で直接サポート されるシ ミ ュレーシ ョ ン ツールです。プロジェク ト設定でシ ミ ュレータを ModelSim/Questa に変更しておきます。 シ ミ ュレーシ ョ ンは、 RTL プロジェク トから直接起動できます。 または、ModelSim/Questa を使用して Vivado の外部でシ ミ ュレーシ ョ ンを実行する場合は、次のよ うに launch_modelsimコマンドを使用して run スク リプ ト を生成できます。

    launch_modelsim –scripts_only –mode behavioral

    これによ り、必要なファイルおよびライブラ リ情報すべてを含め、 コマンド ラ インから ModelSim/Questa で使用できるスク リプ トが生成できます。

    X-Ref Target - Figure 2-7

    図 2-7 : IP を含む [Sources] ビュー

    http:/japan.xilinx.com/cgi-bin/docs/rdoc?v=2013.2;d=ug900-vivado-logic-simulation.pdfhttp://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 12UG896 (v2013.2) 2013 年 6 月 19 日

    IP のシミ ュレーシ ョ ン

    その他のシミ ュレータ

    Vivado IDE に含まれるザイ リ ンクス IP は、 業界標準の IEEE P1735 暗号化を使用して暗号化されています。 これをサポートするシ ミ ュレータを使用する と、 ビヘイビア シ ミ ュレーシ ョ ンを実行できます。 この場合、シ ミ ュレーシ ョ ンファ イルおよびそれらの属するライブラ リの リ ス トが必要です。

    シ ミ ュレーシ ョ ン用に IP のすべてのファイルを取得するには、 get_files コマンドを使用します。

    get_files -compile_order sources -used_in simulation \ -of_objects [get_files .xci]

    -compile_order オプシ ョ ンは、 現在のと ころ RTL ソースしかサポート していませんが、 今後のリ リースでは制約もサポートする予定です。 -used_in オプシ ョ ンを使用する と、 シ ミ ュレーシ ョ ンまたは合成で使用されるファイルを指定できます。 -of_objects オプシ ョ ンに、 IP の XCI ファ イル オブジェク ト を指定する と、 そこから IP に関連するすべてのファイルをフ ィルターできます。

    VHDL の場合、 各ファ イルに関連付けられたライブラ リ も必要です。 Tcl スク リプ ト を使用する と、 簡単にこれが決定できます。次のスク リプ ト を使用する と、各ファイルがシ ミ ュレーシ ョ ンに使用されるパスおよび関連するライブラ リ も含めて表示されます。

    # Get the list of files required for simulationset ip_files [get_files -compile_order sources -used_in simulation \-of_objects [get_files .xci]# For each of these files, get the library informationforeach file $ip_files { puts "[get_property LIBRARY $file] $file"}

    Cadence、 Synposys、および Aldec などのベンダーのサードパーティ シ ミ ュレータを使用する場合は、 アンサー 56287のスク リプ ト を使用できます。

    注記 : Synopsys VCS では、 現在のと ころ IEEE P1735 で暗号化された VHDL ファ イルがサポート されません。 ザイ リンクス IP の多くは VHDL ソースで提供されているので、これらの IP の場合は論理ネッ ト リ ス ト を生成する必要があり ます。

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 13UG896 (v2013.2) 2013 年 6 月 19 日

    ザイリンクス IP とサードパーティ合成ツール

    ネッ ト リス ト シミ ュレーシ ョ ンネッ ト リ ス ト シ ミ ュレーシ ョ ンでは、 暗号化されたシ ミ ュレーシ ョ ン ソースを含め、 その IP の構造シ ミ ュレーシ ョン モデルを作成する必要があ り ます。デザインを 1 つの言語でシ ミ ュレーシ ョ ンできるよ うに、構造シ ミ ュレーシ ョン モデルを作成する必要がある場合もあ り ます。[Managed IP] プロジェク トで構造シ ミ ュレーシ ョ ン モデルを作成するには、 まず合成済みのデザイン チェッ クポイン ト ファ イルを生成する必要があ り ます。 これは、 [IP Sources] タブでカスタマイズした IP を右ク リ ッ ク し、 [Generate Output Products] をク リ ッ クする と生成できます。 [Generate OutputProducts] ダイアログ ボッ クスが開きます。 図 2-8 のよ うに、 [Generate Synthesized Design Checkpoint (.dcp)] をオンにします。

    注記 : DCP ファ イルが生成されたら、 IP の合成デザイン run を手動で開いて、 write_verilog コマンドを使用して構造シ ミ ュレーシ ョ ン ネッ ト リ ス ト を書き出します。

    ザイリンクス IP とサードパーテ ィ合成ツールVivado IDE で使用可能なザイ リ ンクス IP は、 Vivado 合成エンジンでのみサポート されます。 これには、 IP コアおよびすべてのサンプル デザインを含みます。 IP 用に提供される HDL ファ イルのほとんどが IEEE P1735 で暗号化されており、Vivado IDE を使用する場合は読み出し専用になっています。ユーザー デザインにはサードパーティ合成ツールを使用でき、 ネッ ト リ ス ト を生成できます。 これを Vivado のインプ リ メンテーシ ョ ンで使用できます。

    たとえば、 ザイ リ ンクス IP を含むデザインに Synopsys 社の Synplify Pro を使用する場合は、 推奨されるフローは次のよ うにな り ます。

    • Vivado で [Manage IP] フローを使用して、 必要な IP を作成およびカスタマイズします。

    • 各 IP の合成デザイン チェッ クポイン ト (DCP) を生成します。 _synplify_stub.v and_synplify.vho ファ イルが自動的に作成されます。

    • Synplify Pro プロジェク トに Verilog スタブを追加するか、 VHDL コンポーネン ト を追加します。 これらは、 ザイリ ンクス IP のブラ ッ クボッ クスを推論するため、および合成ツールで IO バッファーが追加されないよ うにするために使用されます。

    • Synplify Pro でネッ ト リ ス ト を生成します。

    • Synplify Pro からのネッ ト リ ス ト を Vivado ネッ ト リ ス ト プロジェク トに読み込んで、IP の DCP ファ イル (IP ごとに DCP ファ イル 1 つ) を追加します。また、非プロジェク ト フローのスク リプ ト を使用する場合は、Synplify Pro

    X-Ref Target - Figure 2-8

    図 2-8 : [Generate Synthesized Design Checkpoint] ボックス

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 14UG896 (v2013.2) 2013 年 6 月 19 日

    バージョ ン制御

    ネッ ト リ ス トに対して read_edif/verilog を使用したり、 IP の DCP ファ イルを add_files で追加し、 link_design を使用します。

    • Vivado でデザイン全体をインプ リ メン ト します。

    _synplify_stub.v and _synplify.vho には、 最上位ポートに接続される場合、 Synplify Pro に IP のIO バッファーを推論しないよ うに伝える合成指示子が含まれます。 これらの指示子を使用するサードパーティ合成ツールの必要に合わせて変更します。 インプリ メンテーシ ョ ン中は、 DCP に IO バッファーがない場合、 Vivado で IOバッファーが追加されます。

    バージ ョ ン制御ザイ リ ンクス IP のバージ ョ ンを制御する方法には、 次のよ うなオプシ ョ ンがあ り ます。

    • フル制御 – 出力ファイルも含め、 すべての IP ディ レク ト リがバージ ョ ン制御されます。 この方法は、 後で IP をアップグレードするかど うかやそのタイ ミ ングをユーザーが決定できるのでお勧めです。 Vivado IDE では、 カタログ内でサポート される IP のバージ ョ ンはそれぞれ 1 つのみです。 ツールをアップグレード して IP が最新バージ ョ ンでな くなっても、 まだ使用は可能です。古いバージ ョ ンはロ ッ ク されて再カスタマイズするこ とはできなくな り ますが、 出力ファイルは存在するので、 まだ使用できます。

    • 部分的制御 – IP の XCI ファ イルと合成デザイン チェッ クポイン ト (DCP) がリ ビジ ョ ン制御されます。 この方法を使用する と、IP を最新のバージ ョ ンにアップグレードする必要がある場合は、IP のカスタマイズ設定が保持されたまま自動的にアップグレード されます。アップグレード しない場合は、DCP を使用し続けるこ とができます。

    • 最低制御 – IP の XCI には IP のカスタマイズ設定の詳細がすべて含まれます。 これから、 合成に必要な出力ファイルすべてを生成し直すこ とができます。IP が最新バージ ョ ンでない場合は、自動的にアップグレード されます。

    • スク リプ ト – バージ ョ ン制御に関連するファイル数を最小限にするには、 Tcl コマンド (create_ip、 set_property など) を使用して IP を最初から作成およびカスタマイズします。

    合成デザイン チェッ クポイン ト (.dcp) が生成されているかど うかによって、Tcl を使用してその IP に関する出力ファイルのリ ス ト を表示するこ とができます。 .dcp が生成されている場合は、 次のコマンドを使用します。

    get_files -all -of [get_files .xci]

    .dcp が生成されていない場合は、 まず IP の合成 run を設定してから get_files コマンドを使用します。 get_files でファイルをクエリー検索したら、 その run を リセッ トする必要があ り ます。

    current_run _synth_1get_files -all -of [get_files .xci]

    current_run synth_1

    このクエリー検索では次のファイルが検出されないので、 バージ ョ ン制御に手動で追加する必要があ り ます。

    • 合成デザイン チェッ クポイン ト (DCP)

    • メモ リ インターフェイス ジェネレーター (MIG) のプロジェク ト ファ イル (.prj)

    • 係数ファイル (.coe)

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 15UG896 (v2013.2) 2013 年 6 月 19 日

    第 3 章

    プロジェク トでの IP の使用Vivado™ Design Suite では、 プ リ ファレンスによって、 さまざまな方法でツールを実行できます。 プロジェク ト ベースの方法を使用して、 デザイン プロセスおよびデザイン データを自動的に管理させるこ と もできます。 この方法は、「プロジェク ト モード」 と呼ばれます。 プロジェク ト を使用する と、 ディ スク上にディ レク ト リ構造が作成され、 それを利用してデザイン ソース ファ イル、 IP、 run の結果、 およびプロジェク ト ステータスが管理されます。 run 構造を使用して、合成およびインプリ メンテーシ ョ ン プロセスおよび run ステータスを自動的に管理します。デザイン フロー全体を Vivado IDE で 1 回ク リ ッ クするだけで実行でき、 スク リプ ト でそれを記述するこ と もできます。 VivadoDesign Suite で使用可能なデザイン フローの詳細については、『Vivado Design Suite ユーザー ガイ ド : デザイン フローの概要』 (UG892) を参照してください。

    RTL ベースのプロジェク トの場合、 Vivado 環境外から既存の IP を追加した り、 IP カタログから IP コア インスタンスを生成したり、 プロジェク トへ追加できます。 IP ソースを追加するには、 次の操作を実行します。

    • 「IP カタログからの IP インスタンスの作成」

    • 「IP 出力ファイルの生成と リセッ ト 」

    • 「既存 IP の追加」

    • 「プロジェ ク トでの IP ステート 」

    • 「IP ボード フロー」

    • 「IP のインスタンシエート 」

    • 「IP の合成」

    • 「IP のシ ミ ュレーシ ョ ン」

    • 「デザイン内での IP の制約」

    • 「IP のサンプル デザインの使用」

    • 「IP ステータスのレポート と IP のアップグレード」

    • 「IP 操作の Tcl コマンド」

    これらの操作について、 次のセクシ ョ ンで説明します。

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 16UG896 (v2013.2) 2013 年 6 月 19 日

    IP カタログからの IP インスタンスの作成

    IP カタログからの IP インスタンスの作成

    IP のカスタマイズIP カタログから IP を選択し、 パラ メーター値を指定するこ とによ り、 デザイン要件に合わせて IP をカスタマイズできます。

    1. [IP Catalog] ビューからカスタマイズする IP を選択します。

    2. 選択した IP をダブルク リ ッ クするか、ツールバーまたはポップアップ メニューから [Customize IP] コマンドを実行します。

    図 3-1 は、 FIFO Generator IP の [Customize IP] ダイアログ ボッ クスを示しています。

    このダイアログ ボッ クスに、 IP をカスタマイズするパラ メーターが表示されます。 [Customize IP] ダイアログ ボッ クスは選択した IP のタイプによって異な り、 パラ メーターを指定するタブが 1 つまたは複数表示されます。 ダイアログ ボッ クス上部のタブをク リ ッ ク し、各ページを表示してパラ メーターを設定します。[Customize IP] ダイアログ ボックスには、 IP シンボルと、選択した IP によって周波数応答グラフ、 リ ソース予測、 AXI4-Stream ポート構造なども表示されます。 IP シンボルでは、 Vivado IDE の [Schematic] ビューと同じズーム、 サイズ変更、 自動フ ィ ッ ト機能を使用できます。

    X-Ref Target - Figure 3-1

    図 3-1 : [Customize IP] ダイアログ ボックス

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 17UG896 (v2013.2) 2013 年 6 月 19 日

    IP カタログからの IP インスタンスの作成

    [Documentation] → [Product Guide] をク リ ッ クする と、サポート される IP の資料がウェブ ブラウザーに表示されます。

    [Switch to Defaults] をク リ ッ クする と、 すべてのコンフ ィギュレーシ ョ ン オプシ ョ ンを最初のデフォル ト状態に リセッ トするかど うかを尋ねる メ ッセージが表示されます。

    [Customize IP] ダイアログ ボッ クスでパラ メーターの設定を完了したら、 [OK] をク リ ッ ク します。 IP コアおよびインスタンシエーシ ョ ン テンプレートがデザイン ソース と してプロジェク トに追加されます。 カスタマイズした IP コアを [Sources] ビューで右ク リ ッ クして [Generate Output Products] をク リ ッ クする と、 IP コアの出力ファイルが作成されます。 この時点では、 コアは合成されません。 プロジェク ト に IP コアを追加して合成を実行する と、 デザインのほかのソース と共に IP が自動的に合成されます。 この機能によ り、 デザインに含まれる複数の IP コアを短時間でインスタンシエート できます。 プロジェク ト に IP を追加するたびに合成を実行する必要はあ り ません。 カスタマイズしてプロジェク トに追加した IP コアは、 [Sources] ビューに表示されます。 このタブでコアのツ リーを展開する と コアを構成するさまざまなファイルが表示され、コアを選択する と [Source File Properties] ビューにプロパティが表示されます。

    [Sources] ビューで IP コアを右ク リ ッ ク して [Re-customize IP] をク リ ッ クする と、 [Customize IP] ダイアログ ボッ クスが再度表示され、 コアのパラ メーターを変更できます。 また、 [Sources] ビューで IP コアを右ク リ ッ ク して [UpgradeIP] をク リ ッ クする と、カスタマイズされた IP をザイ リ ンクス IP カタログの最新バージ ョ ンにアップグレード し、現在の IP コアからのカスタマイズを適用できます。

    [Customize IP] ダイアログ ボッ クスでパラ メーターの設定を完了したら、 [OK] をク リ ッ ク します。 この後、 図 3-2 のよ うな [Generate Output Products] ダイアログ ボッ クスが表示されます。 この段階では、 [Generate] をク リ ッ クするか、[Skip] をク リ ッ ク しないままにしておく と、 出力ファイルが生成されます。 出力ファイルは、 この段階で生成されなくても、 後で必要に応じて自動的に生成されます。 後で [IP Sources] または [Hierarchy] タブで IP を右ク リ ッ ク して、[Generate Output Products] をク リ ッ ク して手動で生成するこ と もできます。

    必要であれば、 IP の合成後のデザイン チェッ クポイン ト (DCP) を生成するよ うに選択しておく こ と もできます。 選択しておく と、 次が実行されます。

    • IP の合成用に IP のデザイン run が作成されます。

    • 合成 run が起動されます。

    • 残りのデザインを合成する と、 ブラ ッ ク ボッ クスが推論されます。

    • インプリ メンテーシ ョ ン中にすべての IP のブラ ッ ク ボッ クスが接続されます。

    X-Ref Target - Figure 3-2

    図 3-2 : [Generate Output Products] コマンド

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 18UG896 (v2013.2) 2013 年 6 月 19 日

    IP カタログからの IP インスタンスの作成

    DCP を使用する と、 デザインの合成にかかるランタイムが削減できます。 これは、 開発中にデザインの合成が実行されても、 その都度 IP は合成されないよ うになるからです。 図 3-3 は、 DCP が生成されている場合の [Hierarchy] タブの IP を示しています。 アイコンは、 DCP が使用されているこ とを示します。

    DCP がカスタマイズ中に生成されない場合、 IP はこの段階では合成されません。 プロジェク トに IP コアを追加して合成を実行する と、 デザインのほかのソース と共に IP が自動的に合成されます。 この機能によ り、 デザインに含まれる複数の IP コアを短時間でインスタンシエートできます。 プロジェク トに IP を追加するたびに合成を実行する必要はあ り ません。 カスタマイズしてプロジェク トに追加した IP コアは、 [Sources] ビューに表示されます。 このタブでコアのツ リ ーを展開する と コアを構成する さ まざまなフ ァ イルが表示され、 コアを選択する と [Source FileProperties] ビューにプロパティが表示されます。

    IP のカスタマイズは、 create_ip Tcl コマンドでも実行できます。 次はその例です。

    create_ip -name fifo_generator -version 10.0 -vendor xilinx.com -library ip-module_name fifo_gen

    注記 : create_ip Tcl コマンドを実行する と、 ソース ファ イルは作成されますが、 出力ターゲッ トは作成されません。

    [Sources] ビューで IP コアを右ク リ ッ ク して [Re-customize IP] をク リ ッ クする と、 [Customize IP] ダイアログ ボッ クスが再度表示され、 コアのパラ メーターを変更できます。 または、 [Sources] ビューで IP をダブルク リ ッ ク しても、 再カスタマイズできます。

    • Vivado Design Suite でサポート される IP の詳細は、http://japan.xilinx.com/cgi-bin/search/iplocator.pl?_ProductType=Core&_SearchText=vivado を参照して ください。

    • 各 IP に関する情報は、 http://japan.xilinx.com/ipcenter/ または IP カタログを参照して ください。 AXI IP の詳細は、http://japan.xilinx.com/ipcenter/axi4.htm を参照してください。

    X-Ref Target - Figure 3-3

    図 3-3 : IP の合成後のデザイン チェ ックポイン ト (DCP)

    http://japan.xilinx.com/cgi-bin/search/iplocator.pl?_ProductType=Core&_SearchText=vivadohttp://japan.xilinx.com/cgi-bin/search/iplocator.pl?_ProductType=Core&_SearchText=vivadohttp://japan.xilinx.com/ipcenter/http://japan.xilinx.com/ipcenter/axi4.htmhttp://japan.xilinx.com/ipcenter/axi4.htmhttp://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 19UG896 (v2013.2) 2013 年 6 月 19 日

    IP 出力ファイルの生成とリセッ ト

    IP のディレク ト リIP カタログから IP をカスタマイズする場合、プロジェク ト構造内 (デフォルト ) またはプロジェク ト外部に IP ディ レク ト リ を保存するよ うに選択できます (IP ディ レク ト リの詳細は、付録 A を参照して ください)。ディ レク ト リは、 IPカスタマイズ中に 図 3-4 の [IP Location] から設定できます。

    IP 出力ファイルの生成と リセッ ト カスタマイズ中に出力ファイルが生成されなかった場合は、 IP を右ク リ ッ ク して [Generate Output Products] をク リ ックする と手動で生成できます。 この方法を使用した場合、それ以外に指定できるのは、合成デザイン チェッ クポイント を生成するかど うかだけです。 その他すべての出力ファイルは、 デフォルトで生成されます。 出力ファイルの生成は必須ではあ り ませんが、 デザイン全体を合成する と自動的に生成されます。

    Tcl を使用する と、必要に合わせてさまざまな出力ファイル (サンプル デザイン、インスタンシエーシ ョ ン テンプレート、 シ ミ ュレーシ ョ ン、 合成) を手動で選択して生成できます。 これを実行できる Tcl コマンドは generate_target で、次のよ うに使用します。

    generate_target {instantiation_template synthesis} [get_ipsfifo_gen]

    fifo_gen は、 前にモジュール名に使用された IP カスタマイズ設定の名前です。

    出力ファイルを リセッ トするには、 IP を右ク リ ッ ク して [Reset Output Product] をク リ ッ ク します。 これによ り、 生成されたすべての出力ファイルが削除されます。 DCP が作成されている場合は、 これによって関連する run も削除されます。 詳細は、 「IP の合成」 セクシ ョ ンを参照して ください。

    既存 IP の追加生成前の CORE Generator™ IP (.xco インスタンス ファ イル) または生成前の Vivado™ IP (.xciインスタンス ファ イル) を追加するには、 Add Sources ウ ィザードで [Add Existing IP] をオンにします (図 3-5)。 生成

    X-Ref Target - Figure 3-4

    図 3-4 : IP ディ レク ト リが保存されるディ レク ト リの変更

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 20UG896 (v2013.2) 2013 年 6 月 19 日

    既存 IP の追加

    前の IP を指定するか、生成されたソース ファ イルをプロジェク トに追加するかを選択できます。[Managed IP] フローを使用した IP の作成の詳細については、 第 2 章 「再利用可能な IP の作成および管理」 を参照して ください。

    X-Ref Target - Figure 3-5

    図 3-5 : 生成前の IP ソースの追加

    X-Ref Target - Figure 3-6

    図 3-6 : 既存 IP の追加

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 21UG896 (v2013.2) 2013 年 6 月 19 日

    プロジェク トでの IP ステート

    既存の IP の追加は、 次の例のよ うに import_ip Tcl コマンドを使用しても実行できます。

    import_ip -file C:/coregen_ip/aurora_8b10b_v7_1.xco -name aurora_8b10b_v7_1import_ip -file C:/coregen_ip/blk_mem_gen_v6_1.xco -name blk_mem_gen_v6_1

    注記 : IP にリモート アクセスするには、 read_ip コマンドを使用します。 これを使用する と、 IP はプロジェク トにコピーされなくな り ます。

    追加された IP コアは、 [Hierarchy]、 [Libraries]、 [Compile Order] タブのその他のソース ファ イルと一緒に、 [Sources]ビューの [IP Sources] タブにそれぞれ表示されます。 [Sources] ビューにはコアを構成するファイルが表示され、 コアを選択する と [Source File Properties] ビューにプロパティが表示されます。

    注記 : IP コアの EDIF、 Verilog、 SystemVerilog ネッ ト リ ス ト または NGC ファ イルは、 RTL またはネッ ト リ ス ト ベースのプロジェク トに追加するこ と もできます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 の第 2 章の 「合成後プロジェク トの作成」 セクシ ョ ンを参照して ください。

    プロジェク トでの IP ステートプロジェク ト内の IP は、 それがカタログの最新バージ ョ ンなのか、 出力ファイルが生成されているのかど うかなどによって、 さまざまなステートになり ます。 既存の IP (XCI または XCO 形式) を追加する場合、 出力ファイルが存在するのであれば、 それも読み込まれます。 IP は、 次のステートのいずれかで Vivado IDE の GUI に表示されます。

    • カタログに IP の最新バージ ョ ンが存在しています。

    • カタログに IP の最新バージ ョ ンが存在し、 合成ターゲッ トが生成されています。

    • IP がロ ッ ク されています。 ターゲッ トはあ り ます。 IP は使用できますが、変更できず、新規出力ファイルは作成できません。 たとえば、 シ ミ ュレーシ ョ ン ターゲッ トがない場合、 それらは作成できません。

    • IP がロ ッ ク されています。 ターゲッ トはあ り ません。

    IP は現在のステートでは使用できません。 使用する と、 エラーになり ます。 次の可能性はあ り ます。

    ° IP は IP カタログの最新バージ ョ ンにアップグレードできます。

    ° アップグレード オプシ ョ ンはあ り ませんが、 IP はカタログに含まれたままです。 最新バージ ョ ンを使用して IP を作成し直すか、 元の出力ファイルを読み込む必要があ り ます。

    ° アップグレード オプシ ョ ンはなく、 IP はカタログに含まれなくなり ます。 元の出力ファイルを読み込まないと、 IP は使用できません。

    注記 : Vivado IP カタログからアクセスできないバージ ョ ンの IP コアをインポート した場合、IP の再カスタマイズ、リセッ ト、 再生成は実行できません。

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 22UG896 (v2013.2) 2013 年 6 月 19 日

    IP のプロジェク ト設定

    IP のプロジェク ト設定図 3-7 に示すよ うに、 グローバルに IP のプロジェク ト設定をしておく と、 IP をカスタマイズする際の生産性が向上します。

    デフォルト設定には、 次の 2 つの主なカテゴ リが含まれます。

    • [Repository Manager] : IP レポジ ト リ リ ス トに追加するディ レク ト リ を指定します。 IP は、 ユーザーがパッケージできるほか、 サードパーティ サプライヤーから入手するこ と もできます。 [Apply] をク リ ッ クする と、 各レポジ ト リに IP が表示されるよ うにな り ます。

    • [Packager] : ベンダー、 ライブラ リ、 命名規則を含めて新しい IP をパッケージにする際のデフォルト値を設定します。 このカテゴ リでは、 IP パッケージャーを開いたと きのデフォルト ビヘイビアを設定したり、自動的にフ ィルターされるファ イル拡張子を指定できたり します。

    注記 : 必要であれば、 IP パッケージ プロセス中に IP をパッケージにする際のデフォルト値は変更できます。

    [IP] ページおよび IP カタログは、 RTL プロジェク ト または Getting Started ページから [Manage IP] リ ンクを使用した場合にのみ使用可能です。

    X-Ref Target - Figure 3-7

    図 3-7 : IP のプロジェク ト設定

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 23UG896 (v2013.2) 2013 年 6 月 19 日

    IP ボード フロー

    IP ボード フロー一部の IP でサポート される IP ボード フロー機能を使用する と、 IP をカスタマイズ中にボード インターフェイスを選択できます。 この機能を使用する場合、 IP の物理制約の作成は自動化され、 特定の _board.xdc ファ イルで追加のXDC 制約が含まれるよ うにな り ます。図 3-8 に示すよ うに、新規プロジェク ト を作成するプロセスでデフォルト パーツと してボードを選択します。

    リ ス ト されるボードの 1 つを選択する と、 ボード フローをサポートする IP をカスタマイズする と きに、 新しいタブが表示されます (図 3-9)。

    X-Ref Target - Figure 3-8

    図 3-8 : デフォルト パーツとしてのボードの選択

    X-Ref Target - Figure 3-9

    図 3-9 : サポート される IP のカスタマイズに表示される [Board] タブ

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 24UG896 (v2013.2) 2013 年 6 月 19 日

    IP ボード フロー

    図 3-10 は、 [Generate Board based IO Constraints] をオンにしたと ころを示しています。 これをオンにする と、 IP インターフェイスを使用可能なボード インターフェイスに関連付けるこ とができます。

    IP の出力ファイルが [IP Sources] タブに生成される と、 _board.xdc ファ イルがリ ス ト されます。 このファイルには、 IP のポート を USB ポート、 LED ボタン、 スイ ッチなどの関連するボード コネク タやデバイスに接続するパッケージ ピンに割り当てる物理制約が含まれます。 図 3-11 は、 GPI0 インターフェイスがボードの LCD インターフェイスに接続され、 GPIO2 インターフェイスがボードのプッシュ ボタンに接続されたと きに GPIO IP 用に作成された XDC 制約を示しています。

    次の IP では、 現在のと ころボード フローがサポート されています。

    • AXI GPIO

    • AXI Ethernet Lite

    • AXI EMC

    • AXI UART (16550 and lite)

    • AXI IIC

    • Clocking Wizard

    • Proc Sys Reset

    X-Ref Target - Figure 3-10

    図 3-10 : IP インターフェイスとボード インターフェイスの関連付け

    X-Ref Target - Figure 3-11

    図 3-11 : IP ボードの XCD ファイル

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 25UG896 (v2013.2) 2013 年 6 月 19 日

    IP のインスタンシエート

    IP のインスタンシエートIP インスタンスをカスタマイズしてプロジェク トに追加する と、[Sources] ビューの [IP Sources] タブに表示されます。IP インスタンスを展開する と、 [Implementation Template] フォルダーにインスタンシエーシ ョ ン テンプレート を含むVHO/VEO ファ イルが表示されます。 このインスタンシエーシ ョ ン テンプレート を RTL デザインにコピーして貼り付けるこ とができます。

    図 3-12 に、 FIFO Generator コアのインスタンシエーシ ョ ン テンプレート を示します。

    1. インスタンシエーシ ョ ン テンプレート をデザインで使用するには、 IP コアの VEO または VHO テンプレートファ イルと RTL デザイン ファ イルを、 [Sources] ビューでダブルク リ ッ クするか、 右ク リ ッ ク して [Open File] をク リ ッ ク し、 テキス ト エディ ターで開きます。

    2. VEO または VHO テンプレート ファ イルでインスタンシエーシ ョ ン テンプレート を選択してコピーし、 RTL デザインの適切な位置に貼り付けます。

    3. IP テンプレート をデザインに組み込むために必要な変更を加えます。

    IP コアをデザインに正し く インスタンシエート したら、 IP コアをデザインの残りの部分と共に合成できます。

    IP の合成デフォルトでは、 合成を実行する と、 デザイン全体と共に IP も合成されます。 ロジッ クを変更するたびに IP が再合成されないよ うにするには、 IP を前合成しておく こ とができます。 合成デザイン チェッ クポイン ト (DCP) は、 IP を最初にカスタマイズしてプロジェク トに追加したと きか、 後で新しい出力ファイルを生成したと きに生成できます。

    X-Ref Target - Figure 3-12

    図 3-12 : IP の インスタンシエーシ ョ ン RTL コード

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 26UG896 (v2013.2) 2013 年 6 月 19 日

    IP の合成

    これには、IP がプロジェク トが追加された後に、[Sources] ビューでその IP を右ク リ ッ ク し、[Generate Output Products]をク リ ッ ク します (図 3-13)。

    [Generate Output Products] ダイアログ ボッ クスが開きます。 図 3-14 のよ うに、 [Generate Synthesized Design Checkpoint(.dcp)] をオンにします。

    注記 : または、 [Hierarchy] タブで IP の XCI ファ イルを右ク リ ッ ク し、 [Set As Out-Of-Context Module] をク リ ッ ク します。 ただし、 これには合成 run 用に作成されたファイル セッ トに名前を付けて、 IP の合成 run を手動で起動する必要があ り ます。 これは、 コンテキス ト外 (out-of-context) で合成されるよ うに階層レベルを設定する一般的なメカニズムです。 合成前の IP に推奨されるフローは、 [Generate Output Products] フローです。

    DCP を生成する と、 次が実行されます。

    • 新しいファイル セッ トが作成され、 IP の合成出力ターゲッ トがそこにコピーされます。

    • IP に対して新しい合成 run が設定され、 起動されます。

    X-Ref Target - Figure 3-13

    図 3-13 : IP の合成後のデザイン チェ ッ クポイン トの作成

    X-Ref Target - Figure 3-14

    図 3-14 : [Generate Output Products] ダイアログ ボックス

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 27UG896 (v2013.2) 2013 年 6 月 19 日

    IP のシミ ュレーシ ョ ン

    • [Hierarchy] タブの IP インスタンスの位置が下がって、 新しいレベルが追加されます (図 3-15)。 アイコンは、DCP が使用され、 デザイン全体の合成でブラ ッ ク ボッ クスが推論されたこ とを示します。

    DCP の代わりに RTL を使用するよ うに戻すには、 次のいずれかを実行します。

    • IP の XCI を [Hierarchy] タブで右ク リ ッ クし、 [Reset Output Products] をク リ ッ ク します。

    • DCP を [Hierarchy] タブで右ク リ ッ ク し、 [Unset Out-Of-Context Module] をク リ ッ ク します。

    [Unset Out-of-Context Module] をク リ ッ クする と、その他の生成された出力ファイルが保持され、[Reset Output Products]をク リ ッ クする と、 その IP のすべての出力ファイルが削除されます。

    このフローは、 Out-Of-Context (OOC) の XDC フ ァ イルを含む IP にのみ使用する こ と をお勧めします。 OOC XDC(_ooc.xdc) ファ イルには、 IP のデフォルトのク ロッ ク情報が含まれます。 IP は独立して (out-of-context で) 実行されるので、 最上位クロ ッ ク情報は含まれません。 ほとんどの IP にはこ ういったデフォルトのク ロ ッ ク定義が提供されていて、 合成でタイ ミ ング最適化に使用されます。 IP に OOC の XDC ファ イルが含まれるかど うかは、 [IP Sources] タブの Synthesis フ ォルダーに _ooc.xdc のよ う な名前のフ ァ イルがないかど う かでわか り ます。Out-Of-Contex フローは、 IP をカスタマイズする際に [Manage IP] フローを使用する場合も実行できます。 詳細は、第 2 章 「再利用可能な IP の作成および管理」 を参照して ください。

    注記 : このフローを説明する演習については、 『Vivado Design Suite チュート リ アル : IP を使用した設計』(UG939) を参照して ください。

    IP のシミ ュレーシ ョ ンRTL デザインでの I P のシミ ュレーシ ョ ン

    Flow Navigator で [Run Simulation] を ク リ ッ クする と、 デザイン全体と共に IP コアがシ ミ ュ レーシ ョ ン されます。Vivado IDE では、IP と共に供給されているシ ミ ュレーシ ョ ン ソースを使用して、デザイン全体の論理シ ミ ュレーシ ョンが実行されます。 ビヘイビア モデル、テキス ト形式の合成可能なソース、 または暗号化された合成可能なソースがVHDL または Verilog シ ミ ュレーシ ョ ン モデルと して提供されています。シ ミ ュレーシ ョ ン ソース と して暗号化されたファ イルが提供される IP では、 選択されたシ ミ ュレータ (Vivado シ ミ ュレータまたは QuestaSim/ModelSim) のシミ ュレーシ ョ ン ソースのコンパイルは Vivado IDE で管理されます。 また、 プロジェ ク ト のターゲッ ト言語の IP シミ ュレーシ ョ ン ソースがない場合は、 混合モードのシ ミ ュレーシ ョ ン用にプロジェク トが設定されます。

    Vivado Design Suite 内でのシ ミ ュレーシ ョ ンの実行方法の詳細は、 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シミ ュ レーシ ョ ン』 (UG900) を参照して ください。 ター ミ ナル コマン ド ラ インから Vivado Design Suite 外で VivadoSimulator (xsim) および QuestaSim/ModelSim を使用してシ ミ ュレーシ ョ ンを実行するス ク リ プ ト の作成については、第 2 章 「再利用可能な IP の作成および管理」 を参照して ください。

    その他のシミ ュレータを使用したシミ ュレーシ ョ ン

    Vivado IDE に含まれるザイ リ ンクス IP は、サードパーティ シ ミ ュレータでビヘイビア シ ミ ュレーシ ョ ンまたはネット リ ス ト シ ミ ュレーシ ョ ンできます。 Vivado IDE の IP のほとんどに、 主なシ ミ ュレータすべてでサポート される業界標準の IEEE P1735 を使用して暗号化された HDL ファ イルが含まれます。

    X-Ref Target - Figure 3-15

    図 3-15 : [Hierarchy] タブの IP の合成後のチェ ックポイン ト

    http://japan.xilinx.com/cgi-bin/docs/rdoc?v=2013.2;d=ug939-vivado-designing-with-ip-tutorial.pdfhttp://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 28UG896 (v2013.2) 2013 年 6 月 19 日

    デザイン内での IP の制約

    サードパーティ シ ミ ュレータを使用してビヘイビア シ ミ ュレーシ ョ ンを実行前に、 まずシ ミ ュレーシ ョ ンに必要なファ イルおよびそれが属するライブラ リ を決定しておく必要があ り ます。 同様に、 合成後のシ ミ ュレーシ ョ ン前に、構造シ ミ ュレーシ ョ ン モデル (EDIF、 Verilog、 VHDL) を作成する必要があ り ます。

    サードパーティ シ ミ ュレータの使用方法については、 第 2 章 「再利用可能な IP の作成および管理」 の 「その他のシミ ュレータ」 を参照して ください。 ビヘイビア シ ミ ュレーシ ョ ンおよびネッ ト リ ス ト シ ミ ュレーシ ョ ンに関する情報が含まれています。

    デザイン内での IP の制約Vivado IDE は、 IP を含むデザイン全体の XDC タイ ミ ング制約および物理制約を管理します。 プロジェク トに複数回インスタンシエート されているザイ リ ンクス IP に含まれるデザイン エレ メン トの制約の関連付けおよび固有化は、Vivado IDE で処理されます。 IP カタログのほとんどの IP では、 カスタマイズに基づいて、 IP 特定の XDC 制約が生成されます。 IP 特定の XDC 制約は、 デザインの合成およびインプ リ メ ンテーシ ョ ン中、 ユーザー定義の XDC 制約が処理される前に読み込まれます。 IP に含まれる可能性のある XDC ファ イルの リ ス ト については、 付録の 「IP のファイルおよびディ レク ト リ構造」 セクシ ョ ンを参照して ください。

    注記 : IP の XDC 制約の特性を含む XDC 制約に関する情報の詳細は、『Vivado Design Suite ユーザー ガイ ド : 制約の使用』 (UG903) を参照してください。

    IP のサンプル デザインの使用サンプル デザインは、その機能をサポートする IP コア用に生成された出力ファイルの 1 つです。出力ファイルを生成する と、 RTL ができ、 これを確認できます。 RTL では、 IP がサンプル デザインの最上位にインスタンシエート されます。

    図 3-16 に示すよ うに、 [IP Sources] タブまたは [Hierarchy] タブで IP を右ク リ ッ ク し、 [Open IP Example Design] をクリ ッ クする と、 新しい Vivado IDE セッシ ョ ンでサンプル デザインを開く こ とができます。 サンプル デザインを開く前に出力ファ イルを生成する必要はあ り ません。 IP にサンプル デザインが含まれる場合にのみ、 [Open IP ExampleDesign] がク リ ッ クできるよ うにな り ます。

    これを ク リ ッ クする と、 example_design ディ レ ク ト リ の位置を指定でき るダイアログ ボッ ク スが表示されます (図 3-17)。 サンプル デザイン プロジェク トは、 このディ レク ト リに保存されます。 各 IP のサンプル デザインはそれ

    X-Ref Target - Figure 3-16

    図 3-16 : IP サンプル デザインを開く

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 29UG896 (v2013.2) 2013 年 6 月 19 日

    IP ステータスのレポート と IP のアップグレード

    ぞれ別のディ レク ト リに保存されています。 たとえば、char_fifo とい う IP の場合、ディ レク ト リ名は char_fifo_exampleです。

    Vivado IDE に新しいセッシ ョ ンが開いて、 [Sources] ビューにそのサンプル デザインが表示されます (図 3-18)。 IP はサンプル XDC 制約ファイルを使用してサンプル デザインにインスタンシエート されるので、 IP をさ らに詳し く評価できます。

    IP ステータスのレポート と IP のアップグレードIP を最新バージ ョ ンにアップグレードするには、 次の方法を使用します。

    • IP を右ク リ ッ ク したポップアップ メニューから [Upgrade IP] を使用

    • [Report IP Status] コマンドを使用

    プロジェク トに含まれる IP すべてのステータスは、 [Tools] → [Report] → [Report IP Status] からレポートできます (図 3-19)。 結果の名前は指定でき、 オプシ ョ ンでレポート をテキス ト ファ イルで出力するこ と もできます。 プロジェ

    X-Ref Target - Figure 3-17

    図 3-17 : [Open IP Example Design] ダイアログ ボックス

    X-Ref Target - Figure 3-18

    図 3-18 : IP サンプル デザイン インスタンスと制約ファイル

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 30UG896 (v2013.2) 2013 年 6 月 19 日

    IP ステータスのレポート と IP のアップグレード

    ク トのレポートが前に生成されていない場合は、 [Open in a new tab] オプシ ョ ンは自動的にオンになり、淡色表示になり ます。

    [OK] をク リ ッ ク したら、 [IP Status] タブが新し く作成されて、 レポート結果が表示されます。 run が複数ある場合は、それぞれが別のタブで表示されます (図 3-20)。 [Open in a new tab] をオンにする と (図 3-19)、 [Results Name] は異なる名前になり ます。 レポート を上書きするには、 このチェッ ク ボッ クスをオフにして、同じ名前を入力します。名前が既に使用されている場合は、 それが上書きされます。

    こ こから、 一部の IP を選択、 またはすべての IP をアップグレードできます。 IP を右ク リ ッ ク して、 変更ログを確認したり ([More Info] リ ンクをク リ ッ ク ) 、 IP の製品ガイ ドを表示したりできます。

    このレポートは、 Tcl コマンドの report_ip_status をコマンド ラインに入力しても生成できます。 -file オプシ ョ ンを使用する と、 テキス ト ファ イルを作成するこ と もできます。

    IP を含む古いプロジェク ト を読み込むと、 IP ステータス レポート を開いてデザインに含まれる IP のステータスを確認するかど うかを尋ねる メ ッセージが表示されます。

    X-Ref Target - Figure 3-19

    図 3-19 : IP ステータス レポートの生成

    X-Ref Target - Figure 3-20

    図 3-20 : [IP Status] ビュー

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 31UG896 (v2013.2) 2013 年 6 月 19 日

    IP 操作の Tcl コマンド

    自動アップグレードがサポート される IP の場合、図 3-21 に示すよ うに [IP Sources] タブで IP インスタンスを右ク リ ック して [Upgrade IP] をク リ ッ クする と、 IP がアップグレード されます。

    IP のアップグレードは、 次のよ うに Tcl コマンド upgrade_ip を使用しても実行できます。

    upgrade_ip [get_ips clk_core]

    引数を指定しない場合、 コマンドはプロジェク ト に含まれるすべての IP をアップグレード パスが存在する場合は、最新バージ ョ ンにアップグレード します。

    IP 操作の Tcl コマンドVivado IP カタログは Vivado IDE に統合されており、 Vivado IDE および Tcl 設計環境からスムーズにアクセスできます。 バッチ モード用に、 IP の作成、 カスタマイズ、出力ファイルの生成などの GUI で実行する各操作に対応する Tclコマンドがあ り、GUI で実行できる操作はスク リプ トで自動化して実行できます。IP のパラ メーターも、Tcl コンソールから直接設定できます。 次はその例です。

    アキュムレータ IP のインスタンスを作成するには、 次を入力します。

    create_ip -name c_accum -version 12.0 -vendor xilinx.com -library ip -module_namec_accum_0

    入力幅および出力幅などのカスタマイズ パラ メーターを変更するには、 次を入力します。

    set_property -dict [list CONFIG.Input_Width {10} CONFIG.Output_Width {10}] [get_ipsc_accum_0]

    出力ファイルを選択して生成するには、 次を入力します。

    generate_target {synthesis instantiation_template simulation} [get_ips c_accum_0]

    生成される出力ファイルを リセッ トするには、 次を入力します。

    reset_target all [get_ips c_accum_0]

    X-Ref Target - Figure 3-21

    図 3-21 : IP のアップグレード

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 32UG896 (v2013.2) 2013 年 6 月 19 日

    IP 操作の Tcl コマンド

    Tcl スク リプ ト を使用して、 IP に使用可能なユーザー コンフ ィギュレーシ ョ ン パラ メーターをすべて リ ス トするには、 list_property または report_property コマンドのいずれかを使用して、 作成された IP を参照します。 list_property では Tcl スク リプ トで簡単に処理可能なオブジェク トのリ ス トが戻され、report_property では各パラ メーターの現在の値(データ型など) がテキス ト レポートで戻されます。

    IP に適用されるプロパティすべてのリ ス トは、 次のコマンドで取得できます。

    list_property [get_ips fifo_generator_0]

    カスタマイズ パラ メーターのみのアルファベッ ト順リ ス トは、 次のコマンドで取得できます (詳細な引数を指定可能)。

    lsearch -all -inline [ list_property [ get_ips fifo_generator_0 ] ] CONFIG.*

    コンフ ィギュレーシ ョ ン パラ メーターも含めた IP のプロパティすべてを リ ス トするレポート を作成するには、 次を入力します。

    report_property [get_ips fifo_generator_0]

    サポート される IP 関連の Tcl コマンドの詳細は、Tcl コンソールで「help -category IPFlow」と入力して ください。

    注記 : IP を使用したプロジェ ク ト フローおよび非プロジェ ク ト フローの両方のス ク リ プ ト については、 『VivadoDesign Suite チュート リ アル : IP を使用した設計』 (UG939) の複数の演習で説明されています。 これらの演習には、 出力ファイルの生成例や IP の選択アップグレード方法についての例が含まれます。

    X-Ref Target - Figure 3-22

    図 3-22 : IP 関連の Tcl コマンドに関するヘルプを表示

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 33UG896 (v2013.2) 2013 年 6 月 19 日

    第 4 章

    IP のパッケージ

    IP パッケージャーとその使用フローVivado™ IP パッケージャーを使用する と、サードパーティの IP を Vivado IP カタログで使用できるよ うに準備できます。 このよ うに準備されたサードパーテ ィ IP は、 Vivado Design Suite のデザインにインスタンシエー ト できます。Vivado Design Suite の IP パッケージ フローを使用して IP を開発する と、 ザイ リ ンクス IP、 サードパーティ IP、 またはカスタム IP のいずれも Vivado Design Suite で同様に使用できます。

    図 4-1 に、 IP パッケージャー フローとその使用モデルを示します。 IP の開発時には、 IP パッケージャーを使用してIP ファ イルと関連データを ZIP ファ イルにパッケージ化します。 この生成された ZIP ファ イルを Vivado Design Suiteの IP カタログにインス トールする と、 パラ メーターを選択して IP をカスタマイズし、 IP インスタンスを生成できるよ うにな り ます。 IP が正し くパッケージ化されたこ とを検証するため、各 IP モジュールに対して IP ユーザー フローを実行し、 IP が使用可能な状態であるかど うか検証するこ とをお勧めします。

    X-Ref Target - Figure 4-1

    図 4-1 : IP パッケージャーおよびその使用フロー

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 34UG896 (v2013.2) 2013 年 6 月 19 日

    IP パッケージャーとその使用フロー

    IP パッケージ化フロー

    手順 1 : IP のパッケージ化

    IP パッケージャーの出力は IP-XACT コンポーネン ト ファ イルで、 ZIP にはデフォルト の GUI ファ イル、 レポート、再生成ファイルなどが含まれます。 次のいずれかを実行できます。

    • 既に生成済みの Vivado Design Suite プロジェク トからデザインをパッケージ化

    • 新規 Vivado Design Suite プロジェク ト ファ イルを作成し、 Package IP Wizard を使用して IP ソース ファ イルと関連データをインポート

    IP パッケージャーを起動するには、 [Tools] → [Package IP] をク リ ッ ク します。 または、 Vivado Design Suite の Tcl コマンド ラ イン インターフェイスを使用してバッチ モードで IP パッケージャーを実行するこ と もできます。

    手順 2 : IP 配布の保護

    IP ユーザーに IP を配布する際は、 保護する必要があ り ます。

    IP ユーザーのフロー

    手順 1 : IP カタログのアップデート

    サードパーティ IP または社内で開発された IP を受信したら、 Vivado IDE を起動して Vivado IP カタログに IP を追加します。

    手順 2 : IP ライセンスのインストール (オプシ ョ ン)

    オプシ ョ ンで、 サードパーティ IP プロバイダーから FlexNet ラ イセンスを取得してインス トールします。

    手順 3 : サードパーティ IP の使用

    Vivado Design Suite を使用して、 サードパーティ IP コアを使用したデザインを開始します。

    http://japan.xilinx.com

  • IP を使用した設計 japan.xilinx.com 35UG896 (v2013.2) 2013 年 6 月 19 日

    IP パッケージャーとその使用フロー

    リポジ ト リの管理

    Vivado IP カタログには、 サードパーティの I P を追加できるビルト インのレポジ ト リ管理機能が含まれます。 サードパーティの IP が表示されるよ うにするには、その IP をユーザー マシンからアクセスできるディ レク ト リに含めておく必要があ り ます。 また、 Vivado Design Suite を起動して、 IP カタログから [IP Settings] を実行して、 この新しいユーザー レポジ ト リのディ レク ト リ を指定して、 新規 I P がカタログに含まれるよ うにする必要があ り ます。

    図 4-2 に示すよ うに、 リ ポジ ト リには標準ザイ リ ンクス リ ポジ ト リ とユーザー リ ポジ ト リの 2 種類があ り ます。 標準ザイ リ ンクス リ ポジ ト リは Vivado Design Suite ツールの一部と して含まれており、常にイネーブルで、ユーザーが変更するこ とはできません。ユーザー リ ポジ ト リ とは、1 つ以上の IP を含むユーザー マシンからアクセス可能なディレク ト リです。 ザイ リ ンクスまたはサードパーティの IP プロバイダーは、 カタログへの IP アップデート をパッチを介して配布します。

    ユーザー リ ポジ ト リは、追加または削除したり、 リポジ ト リ間の優先順位を決めたりできます。 IP は、ベンダー、 ライブラ リ、 名前、 バージ ョ ンによって分類されます。

    複数のリポジ ト リが参照され、 同じ IP が複数のロケーシ ョ ンにある場合は、 優先順位の高いリポジ ト リの IP が表示されます。 ザイ リ ンクス IP リ ポジ ト リは常にイネーブルになっており、 優先順位は一番低くなっています。

    プロジェ ク ト での リポジ ト リ設定の変更はプロジェク ト と共に保存され�