vivado design suite - xilinx · 2019-10-28 · vivado 高位合成 (hls)...

59
Vivado Design Suite ユーザー ガイド デザイン フ ローの概要 UG892 (v2014.1) 2014 4 2

Upload: others

Post on 10-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

Vivado Design Suite ユーザー ガイド

デザイン フローの概要

UG892 (v2014.1) 2014 年 4 月 2 日

Page 2: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

デザイン  フローの概要 japan.xilinx.com 2UG892 (v2014.1) 2014 年 4 月 2 日

改訂履歴

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

 

日付 バージョ ン 改訂内容

2014 年 4 月 2 日 2014.1 第 1 章 「概要」 で OpenCL を 「業界標準に基づいたデザイン」 に追加、 「IP サブシステムデザイン」 をアップデート、 「ザイ リ ンクス評価ボード インターフェイス」 を追加、 「エンベデッ ド プロセッサ ハードウェア デザイン」 をアップデート、 「高位合成を使用した DSPデザイン」 をアップデート、 「パーシャル リ コンフ ィギュレーシ ョ ン」 を追加

第 2 章 「使用モデル」 で 「ザイ リ ンクス Tcl Store の使用」 を追加、 「作業フォルダー」 に関する情報を 「Windows での Vivado IDE の起動」 に追加、 「ソースのバージ ョ ン管理システム」 をアップデート

第 3 章 「プロジェ ク ト モードの使用」 で 「プロジェ ク ト の作成」 をアップデート、 「FlowNavigator の理解」 をアップデート、 「タ イ ミ ング制約の開発および検証」 を追加、 「カスタム IP の作成とパッケージ」 をアップデート、 「IP のアップグレード」 、 「run のリセッ ト 」 、「LSF を使用した リモート サーバー ファームへのアクセス」、 「インク リ メンタル コンパイルを使用したインプリ メンテーシ ョ ンの実行」 、 「ログ ファ イル、 メ ッセージ、 レポート、プロパティの表示」 を追加

第 4 章 「非プロ ジ ェ ク ト モード の使用」 で 「ソース フ ァ イルの管理」 を追加、open_checkpoint Tcl コマンドに関する情報を 「デザイン チェッ クポイン トの使用」 に追加

図 3-1、 図 3-2、 図 3-4、 図 3-5、 図 3-6、 図 3-14、 図 3-15、 図 3-16、 図 4-1 をアップデート

Send Feedback

Page 3: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

目次

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

第 1章 : 概要概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

システム レベルのデザイン フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Vivado Design Suite の主な機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

第 2章 : 使用モデルプロジェク ト モード と非プロジェク ト モード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Tcl の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Vivado IDE の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

ソースのバージ ョ ン管理システム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

PCB 設計との関係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

サードパーティ デザイン ソフ ト ウェア ツールの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

第 3章 : プロジェク ト  モードの使用概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

プロジェク ト モードの利点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

プロジェク ト モードでの Tcl コマンドの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

プロジェク トの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Flow Navigator の理解 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

システム レベルのデザイン入力の実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

IP の操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

ロジッ ク シ ミ ュレーシ ョ ンの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

I/O ピン配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

ロジッ ク合成およびインプリ メンテーシ ョ ンの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

ログ ファ イル、 メ ッセージ、 レポート、 プロパティの表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

デザイン解析および制約定義の実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

デバイスのプログラム、 ハード ウェア検証、 およびデバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

第 4章 : 非プロジェク ト  モードの使用概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

非プロジェク ト モードの利点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

非プロジェク ト モードでの Tcl コマンドの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

デザイン ソースの読み込み . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

IP の操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

ロジッ ク シ ミ ュレーシ ョ ンの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

ロジッ ク合成およびインプリ メンテーシ ョ ンの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

レポートの生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

デザイン チェッ クポイン トの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Vivado IDE を使用したデザイン解析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

デザイン  フローの概要 japan.xilinx.com 3UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 4: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

付録 A : その他のリソースおよび法的通知ザイ リ ンクス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

ソ リ ューシ ョ ン センター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

デザイン  フローの概要 japan.xilinx.com 4UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 5: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1章

概要

概要Vivado® Design Suite では、 ザイ リ ンクス FPGA のデザインおよび検証に関するタスクを、 さまざまな方法で達成できます。 従来からの RTL からビッ ト ス ト リームまでの FPGA デザイン フローに加え、 Vivado Design Suite では IP 中心のデザインに焦点を置いたシステム レベルの統合フローを提供しています。 Vivado IP インテグレーター環境を使用する と、 さまざまな IP をインスタンシエート、 コンフ ィギュレーシ ョ ン、および IP サブシステム ブロ ッ ク デザインにインタラ クティブに接続できます。カスタム IP および IP ブロ ッ ク デザインをコンフ ィギュレーシ ョ ンしてパッケージにし、Vivado IP カタログから使用するこ と もできます。デザインの解析および検証は、フローの各段階で実行できます。デザイン解析機能には、 ロジッ ク シ ミ ュレーシ ョ ン、 I/O およびクロ ッ ク配置、消費電力解析、制約定義、タイ ミ ング解析、 デザイン ルール チェッ ク (DRC)、 デザイン ロジッ クの表示、 インプリ メンテーシ ョ ン結果の解析と変更、 プログラムおよびデバッグなどがあ り ます。

ソ リ ューシ ョ ン全体は、 Vivado 統合設計環境 (IDE) とい う グラフ ィカル ユーザー インターフェイス (GUI) に統合されています。 Vivado IDE では、 デザインおよび IP を作成、 インプ リ メ ン ト 、 および検証するインターフェイスが提供されています。 また、すべてのフローは Tcl コマンドを使用しても実行できます。 Tcl コマンドは Vivado IDE の Tclコンソールまたは Vivado Design Suite Tcl シェルから使用できます。 Tcl スク リプ ト を使用して、 デザイン解析を含むデザイン フロー全体を実行したり、 フローの一部のみを実行できます。

デザイン  フローの概要 japan.xilinx.com 5UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 6: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1 章 : 概要

システム レベルのデザイン  フロー図 1-1 に、 Vivado Design Suite での全体的なデザイン フローを示します。

Vivado Design Suite の主な機能Vivado Design Suite は、 さまざまなデザイン タイプに使用できます。 ツール フローおよび機能は、 デザインのタイプによって異な り ます。 このセクシ ョ ンでは、 Vivado Design Suite によ り使用できるよ うになった主な機能について説明します。

X-Ref Target - Figure 1-1

図 1‐1 : Vivado Design Suite のデザイン  フロー

デザイン  フローの概要 japan.xilinx.com 6UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 7: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1 章 : 概要

業界標準に基づいたデザイン

Vivado Design Suite では、 次の業界標準がサポート されます。

• Tcl

• AXI4、 IP-XACT

• Synopsys デザイン制約 (SDC)

• Verilog、 VHDL、 SystemVerilog

• SystemC、 C、 C++、 OpenCL

Vivado Design Suite ソ リ ューシ ョ ンは Tcl ベースで、SDC および XDC (ザイ リ ンクス デザイン制約) フォーマッ トがサポート されます。合成で Verilog、 VHDL、および SystemVerilog がサポート されので、 FPGA が採用しやすくなっています。 Vivado 高位合成 (HLS) が可能なので、 C、 C++、 System C、 OpenCL (Open Computing Language) 言語を使用してロジッ クを定義できます。 AXI4 および IP-XACT などの標準 IP インターコネク ト プロ ト コルを使用する と、 システム レベルのデザインがよ り速く簡単に統合できます。 これらの業界標準がサポート されるこ とによ り、 EDA (電子システム設計自動化) エコシステムで Vivado Design Suite がさらにサポート可能にもな り ます。また、Vivado Design Suiteには多くのサードパーティ ツールが統合されています。

IP デザインとシステム レベル デザインの統合

Vivado Design Suite は、 IP をスタンドアロンのモジュールと して、 またはシステム レベル デザインの一部と して設定、 インプ リ メ ン ト 、 検証および統合するための環境を提供するツールです。 IP には、 エンベデッ ド プロセッサ、DSP デジタル信号処理モジュール、 C ベースのアルゴ リズム デザインなども含まれます。カスタム IP は IP-XACT プロ ト コルにしたがってパッケージされ、 Vivado IP カタログから使用できます。 IP カタログからは、 IP に素早くアクセスでき、 コンフ ィギュレーシ ョ ン、 インスタンシエーシ ョ ン、検証できます。 ザイ リ ンクス IP では AXI4 インターコネク ト標準が使用され、 よ り高速なシステム レベルの統合ができるよ うになっています。 既存の IP は、 RTL またはネッ ト リ ス トのどちらかの形式のデザインで使用できます。詳細は、『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

IP サブシステム デザイン

Vivado IP インテグレーター環境では、AMBA AXI4 インターコネク ト プロ ト コルを使用してさまざまな IP を IP サブシステムに統合できます。 ブロ ッ ク デザイン形式のインターフェイスを使用してインタラ クティブに IP をコンフ ィギュレーシ ョ ンした り、 接続したり、 回路図のよ う な DRC を元に修正された接続を描画して、 インターフェイス全体を簡単に接続できます。 標準インターフェイスを使用して IP を接続する と、 従来の RTL ベースの接続に比べて時間を節約できます。 コネクシ ョ ン オート メーシ ョ ン機能と DRC セッ ト を使用するこ とで、 IP コンフ ィギュレーシ ョンおよび接続が正し くできるよ うになっています。 これらの IP ブロ ッ ク デザインは、 この後検証され、 パッケージにされて、 1 つのデザイン ソース と して扱われます。 ブロ ッ ク デザインは、 デザイン プロジェク トで使用できたり、ほかのプロジェク ト と共有できます。 IP インテグレーター環境は、 エンベデッ ド デザインおよびザイ リ ンクス評価ボード インターフェイスのメ イン インターフェイスです。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 2] を参照して ください。

ザイリンクス評価ボード  インターフェイス

Vivado Design Suite では、既存のザイ リ ンクス評価プラ ッ ト フォーム デザインをターゲッ ト デバイスと して選択できます。可能性のあるすべての IP インターフェイスが表示され、使用する IP をすばやく選択してコンフ ィギュレーシ ョンできるよ うになっています。IP コンフ ィギュレーシ ョ ン パラ メーターおよび I/O ロケーシ ョ ンや I/O 規格制約などの物理ボード制約は、 フローを介して自動的に割り当てられ、増えていきます。 コネクシ ョ ン オート メーシ ョ ンを使用するこ とで、 選択した IP への接続がすばやく実行できるよ うになっています。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] および 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 2] を参照して ください。

デザイン  フローの概要 japan.xilinx.com 7UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 8: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1 章 : 概要

RTL またはネッ ト リス トからデバイス プログラムまでのデザイン  フロー

Vivado Design Suite では、 さまざまなデザイン フローをサポートするためにさまざまなデザイン入力方法が使用できます。

• RTL フロー

Vivado 合成およびインプリ メンテーシ ョ ンでは、 Verilog、 VHDL、 SystemVerilog、および XDC などの複数のソース ファ イルの種類がサポート されます。 また、 Vivado HLS を使用して、 C ベーエスのソースを使用してデザイン部分をコンパイルするこ と もできます。

• サードパーティ合成フロー

Vivado 合成で EDIF または構造型 Verilog などのサードパーティ合成ソースがサポート されます。 SDC ソースもサポート されます。 XDC コンス ト ラ ク ト を使用するこ とをお勧めします。 Vivado IP は Vivado 合成を使用して合成されます。 Vivado Design Suite IP ソースは、 通常サードパーティ合成ツールでは合成できませんが、 メモ リ インターフェイス ジェネレーター (MIG) コアなどの例外もあ り ます。

次は、 主なデザイン フローです。

• Vivado 合成

• Vivado インプリ メンテーシ ョ ン

• Vivado タイ ミ ング解析

• Vivado 消費電力解析

• ビッ ト ス ト リーム生成

これらの機能は、 集積度が高いデザインのパフォーマンスの増加、 ランタ イムの削減のために設計されています。Vivado 合成およびインプ リ メ ンテーシ ョ ン機能は、 タイ ミ ング ド リブンで SDC または XDC 形式の制約を使用します。デザイン プロセスの各段階で、 さまざまなレポートおよび解析機能が使用できます。Vivado Design Suite Tcl シェルまたは Vivado IDE の Tcl コンソールに Tcl コマンドを入力して Tcl バッチ スク リプ ト を使用するか、 Vivado IDE を使用する と、 フロー全体を実行できます。 デザイン結果を改善するには、 複数の run を作成してさまざまな合成またはインプ リ メ ンテーシ ョ ン オプシ ョ ン、 タイ ミ ングおよび物理制約、 またはデザイン コンフ ィギュレーシ ョ ンを試してみます。

Vivado IDE は、 デザイン プロジェク ト を使用して、 デザイン プロセス全体をコンフ ィギュレーシ ョ ンおよび管理します。 ソース、 デザイン コンフ ィギュレーシ ョ ンおよび run の結果は、 Vivado Design Suite プロジェク ト内に保存され、 管理されます。 デザイン ステータスによ り、 ソース ファ イルがアップデート された場合や run 結果が古い場合など、 ステータスの変更がわかり ます。 Vivado IDE では、 標準的なレポートのセッ ト、 ツールのメ ッセージ、 ログを生成して表示できます。 インプリ メンテーシ ョ ンでは、 Vivado 消費電力 適化、 Vivado 物理 適化、 および run ス トラテジなど、デザイン ク ロージャーを達成するためのアドバンス オプシ ョ ンが使用できます。詳細は、『Vivado DesignSuite ユーザー ガイ ド : 合成』 (UG901) [参照 3] および 『Vivado Design Suite ユーザー ガイ ド : インプリ メンテーシ ョン』 (UG904) [参照 4] を参照してください。

エンベデッ ド  プロセッサ ハードウェア デザイン

プロセッサはソフ ト ウェアが効率的にブートおよび実行される こ と を要件とするので、 ソフ ト ウェア デザイン フローはハード ウェア デザイン フローと合わせて実行する必要があ り ます。 問題なく動作するためには、 異なるデータ ハンドオフ ポイン トおよび 2 つのド メ イン間の検証が重要とな り ます。エンベデッ ド プロセッサ ハードウェア デザインを作成するには、Vivado Design Suite の IP インテグレーターを使用します。Vivado IP インテグレーター環境では、ユーザーがプロセッサ コアとそのインターフェイスをインスタンシエート、 コンフ ィギュレーシ ョ ン、アセンブルします。 ツールでは、 ルール ベースで接続され、 デザイン アシスタンスが提供されます。 デザインがインプ リ メンテーシ ョ ンを介してコンパイルされたら、 ザイ リ ンクス ソフ ト ウェア開発キッ ト (SDK) にエクスポート して、 ソフ ト ウェア開発および検証フローに使用します。 シ ミ ュレーシ ョ ンおよびデバッグ機能を使用する と、 2 つのド メ イン間でデザインをシ ミ ュレーシ ョ ンおよび検証できます。 エンベデッ ド プロセッサ デザインの詳細は、 『VivadoDesign Suite ユーザー ガイ ド : エンベデッ ド プロセッサ ハード ウェア デザイン』 (UG898) [参照 5] および 『Vivado

デザイン  フローの概要 japan.xilinx.com 8UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 9: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1 章 : 概要

Design Suite チュート リ アル : エンベデッ ド プロセッサ ハード ウェア デザイン』 (UG940) [参照 6] を参照して ください。

重要 : Vivado IP インテグレーター は、 Zynq®-7000 All Programmable デバイスおよび MicroBlaze™ プロセッサをターゲッ ト にするデザインを含めたエンベデッ ド プロセッサ デザイン用の Xilinx Platform Studio (XPS) に代わるものです。 XPS は Vivado Design Suite とは統合されなくな り ましたが、 XPS で制約なしに作成された DCP および NGC ファイルは Vivado Design Suite のソース ファ イルと してサポート されます。

ビデオ : Vivado IP インテグレーターとエンベデッ ド プロセッサ デザイン フローの ト レーニング ビデオについては、Vivado Design Suite オンライン ビデオ : Vivado IP インテグレーターを使用したデザイン および Vivado Design Suite オンライン ビデオ : Vivado IP インテグレーターを使用した Zynq デバイスの設計

モデル ベースおよび高位合成ベースの DSP デザイン

ザイリンクスの System Generator を使用したモデル ベースの DSP デザイン

Vivado Design Suite は、ザイ リ ンクスの System Generator ツールと直接統合されており、DSP ファンクシ ョ ンをインプリ メン トするためのソ リ ューシ ョ ンを提供しています。 DSP モジュールは、 Vivado IDE に統合され、 管理されます。編集する DSP ソースを選択する と、System Generator が自動的に起動します。System Generator をスタンドアロン ツールと して実行し、その結果の出力ファイルを Vivado IDE のソース ファ イルと して使用するこ と もできます。詳細は、『Vivado Design Suite ユーザー ガイ ド : System Generator を使用したモデル ベースの DSP デザイン』 (UG897) [参照 7] を参照してください。

高位合成を使用した DSP デザイン

Vivado Design Suite の C ベースの高位合成ツール (Vivado HLS) を使用する と、 C、 C++、 System C、および OpenCL 言語を使用してデザインのさまざまな DSP ファンクシ ョ ンを記述するこ とができます。C コードは Vivado HLS (高位合成) ツールで作成および検証します。 この後、 さまざまなパラ メーターを試して、 パフォーマンスおよびエ リ アを適にでき、 デザインをすばやく検証し、 C ベースのシ ミ ュレーシ ョ ンを使用して RTL シ ミ ュレーシ ョ ン テス トベンチを作成できます。 C から RTL への合成では、 C ベース デザインが RTL モジュールに変換されるので、 それをパッケージして、 残りのデザインと一緒にインプ リ メ ンテーシ ョ ンできます。 この後、 このモジュールを RTL デザインまたは Vivado IP インテグレーター内にインスタンシエートできます。Vivado HLS ツール フローの詳細および機能については、『Vivado Design Suite ユーザー ガイ ド : 高位合成』 (UG902) [参照 8] および 『Vivado Design Suite チュート リアル : 高位合成』 (UG871)[参照 9] を参照してください。

ビデオ : Vivado HLS に関するさまざまな ト レーニング ビデオは、ザイ リ ンクス ウェブサイ トの Vivado Design Suite ビデオ チュート リ アル ページから入手できます。

I/O ピン配置およびフロアプラン  

Vivado IDE には I/O ピン配置環境が含まれており、 デバイス パッケージ ピンまたは内部ダイ パッ ドに I/O ポート を正し く割り当てるこ とができます。Vivado ピン配置ツールに表示されるビューおよび表を使用する と、デバイスおよびデザインに関する I/O データを解析できます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

Vivado IDE には、インプリ メンテーシ ョ ン結果の改善に役立つアドバンス フロアプラン機能が提供されています。これには、 特定エリ ア内に指定したロジッ クを強制的に使用したり、 特定の配置または配線を次の run のためにインタラ クティブにロ ッ ク した りする機能が含まれます。詳細は、 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

デザイン  フローの概要 japan.xilinx.com 9UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 10: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 1 章 : 概要

デザイン解析および検証

Vivado IDE では、デザイン プロセスの各段階でデザインを解析、検証、変更できます。回路のパフォーマンスは、デザイン プロセスで中間結果を解析する と改善できます。 この解析は、 RTL エラボレーシ ョ ン、 合成、 およびインプリ メンテーシ ョ ンの後に実行できます。

Vivado シ ミ ュレータを使用する と、 デザインの各段階でビヘイビアおよび構造ロジッ ク シ ミ ュレーシ ョ ンを実行できます。このシ ミ ュレータでは、Verilog および VHDL 混合モードのシ ミ ュレーシ ョ ンがサポート され、結果が VivadoIDE の波形ビューアーに表示されます。 サードパーティ シ ミ ュレータを使用するこ と もできます。 詳細は、 『VivadoDesign Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 12] を参照してください。

結果は、 Vivado IDE のデザイン プロセスの各段階でインタラ クティブに解析できます。 デザインおよび解析機能には、 タイ ミ ング解析、 消費電力概算および解析、 デバイス使用量統計、 デザイン ルール チェッ ク (DRC)、 I/O ピン配置、 フロアプラン、 インタラ クティブな配置配線解析を含むものもあ り ます。 詳細は、 『Vivado Design Suite ユーザーガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

デバイス プログラムおよびハードウェア検証

インプ リ メ ン ト をする と、 Vivado ラボ ツール環境内でデバイスをプログラムおよび解析できます。 デバッグ信号は合成後には RTL で簡単に識別でき、 フロー全体でプロセスされます。 デバッグ コアはコンフ ィギュレーシ ョ ンしてRTL または合成済みネッ ト リ ス トのいずれかに挿入できます。 Vivado ロジッ ク アナライザーを使用する と、 ハードウェア検証もできます。 このインターフェイスには、Vivado シ ミ ュレータ と同じ共通の波形ビューアーが使用されます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 13] を参照してください。

パーシャル リコンフ ィギュレーシ ョ ン

パーシャル リ コンフ ィギュレーシ ョ ン フローでは、 デバイスの起動/実行中にデザインの一部を リ コンフ ィギュレーシ ョ ンできます。 このフローの場合、 リ コンフ ィギャブル モジュールが適切にデザインされて、 パーシャル ビッ トス ト リーム アップデート中にグ リ ッチのない動作を可能にするため、 比較的厳しいデザイン プロセスが必要とな ります。 リ コンフ ィギャラブル モジュールは、それらがプランどおりに機能し、 大パフォーマンスになるよ うにするために、 適切にプランしておく必要があ り ます。 これには、 モジュールへのインターフェイス信号数の削減、 適切なフロアプラン、 モジュール ピン配置、 特定のパーシャル リ コンフ ィギュレーシ ョ ン DRC の遵守などが含まれます。デバイスのプラグラム方法も I/O ピンが適切に割り当てられるよ うにするために前もってプランしておく必要があ ります。詳細は、『Vivado Design Suite ユーザー ガイ ド : パーシャル リ コンフ ィギュレーシ ョ ン』 (UG909) [参照 14] および 『Vivado Design Suite チュート リ アル : パーシャル リ コンフ ィギュレーシ ョ ン』 (UG947) [参照 15] を参照してください。

ビデオ : パーシャル リ コンフ ィギュレーシ ョ ンの概要は、 Vivado Design Suite オンライン ビデオ : Vivado Design Suiteでのパーシャル リ コンフ ィギュレーシ ョ ンを参照してください。

デザイン  フローの概要 japan.xilinx.com 10UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 11: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2章

使用モデル

プロジェク ト  モード と非プロジェク ト  モードVivado® Design Suite では、 プリ ファレンスによって、 さまざまな方法でツールを実行できます。 プロジェク ト ベースの方法を使用して、 デザイン プロセスおよびデザイン データを自動的に管理させるこ と もできます。 この方法は、「プロジェク ト モード」 と呼ばれます。 プロジェク ト を使用する と、 ディ スク上にディ レク ト リ構造が作成され、 それを利用してデザイン ソース ファ イル、 run の結果、 およびプロジェク ト ステータスが管理されます。 run 構造を使用して、合成およびインプリ メンテーシ ョ ン プロセスおよび run ステータスを自動的に管理します。デザイン フロー全体を Vivado IDE で 1 回ク リ ッ クするだけで実行できます。 フロー全体は、 Tcl コマンドを使用してスク リプ ト記述するこ と もできます。プロジェク トの使用方法については、第 3 章「プロジェク ト モードの使用」を参照してください。

また、Tcl スク リプ ト ベースのコンパイル方法を使用する と、ソースやデザイン プロセスをユーザーが管理できます。この方法は、 「非プロジェク ト モード」 と呼ばれます。 このモードでは、 ソースが現在の場所から読み込まれ、 デザインがメモ リ内でコンパイルされます。 Tcl コマンドを使用し、 デザイン パラ メーターおよびインプリ メンテーシ ョン オプシ ョ ンを設定して、 各手順を個別に実行する必要があ り ます。 デザイン プロセスのどの段階でも、 Tcl を使用してデザイン チェッ クポイン ト を保存し、 レポート を生成できます。 また、各デザイン段階で、デザインの解析および制約の設定を実行するために Vivado IDE を開く こ とができます。アクティブ デザインはメモリで確認できるので、変更をする と自動的にその後のフローにその内容が渡されます。 たとえば、 アップデート した内容は、 新規制約ファイルまたはデザイン チェッ クポイン トに保存できます。 非プロジェク ト モードの詳細については、 第 4 章 「非プロジェク ト モードの使用」 を参照してください。

注記 : ソース ファ イルと run 結果の管理、 デザインおよびツール コンフ ィギュレーシ ョ ンの保存、 デザイン ステータス、 IP 統合などのプロジェク ト モードの機能の一部は、 非プロジェク ト モードでは使用できません。

ヒン ト : どちらのモードでも Tcl スク リプ トのバッチ モードで実行できるほか、 Vivado IDE でインタラ クティブに実行できます。

デザイン  フローの概要 japan.xilinx.com 11UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 12: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

機能の違い

プロジェク ト構造によ り、 Vivado IDE ではデザインの履歴が管理され、デザインに関する有益な情報が保存されますが、 機能の多くは自動化されているので、 このモードの場合はユーザーの制御できるこ とは少なくな り ます。 たとえば、 各 run ごとにレポート ファ イルの標準セッ トのみが生成されます。 次の自動化機能は、 プロジェク ト モードを使用した場合にのみ使用できます。

• ソース ファ イルの管理およびステータス

• 統合メ ッセージおよび自動生成の標準レポート

• ツール設定およびデザイン コンフ ィギュレーシ ョ ンの保存および再利用

• 複数の合成およびインプ リ メンテーシ ョ ン run の試行

• 制約セッ トの使用および管理

• run 結果の管理およびステータス

• Flow Navigator

• [Project Summary] ビュー

非プロジェク ト モードの場合、各アクシ ョ ンは Tcl コマンドで実行できます。すべての処理はメモリ内で実行されるので、 ファ イルやレポートは自動的には生成されません。 デザインをコンパイルするたびに、 ソースの定義、 ツールおよびデザイン コンフ ィギュレーシ ョ ン パラ メーターの設定、 すべての Tcl コマンドの実行、 必要なレポート ファイルの生成を実行する必要があ り ます。ディ スク上にプロジェク トは作成されないので、ソース ファ イルは元の場所に配置されたままにな り、 デザイン出力は指定したと きにのみ、 指定した箇所に作成されます。 この方法では、 Tclコマンドの優れた機能をすべて活用でき、 デザイン プロセス全体を完全に制御できます。

表 2-1 は、 プロジェク ト モード と非プロジェク ト モードの機能の違いを示しています。

表 2‐1 : プロジェク ト  モード と非プロジェク ト  モードの機能の違い

フローの要素 プロジェク ト  モード 非プロジェク ト  モード

デザイン ソース ファ イルの管理 自動 手動

フロー ナビゲーシ ョ ン ガイ ド 手動

フローのカスタマイズ 制限あ り 制限なし

レポート 自動 手動

解析段階 デザインのみ デザインおよびデザイン チェ ックポイン ト

デザイン  フローの概要 japan.xilinx.com 12UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 13: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

コマンドの違い

Tcl コマンドの使用は、 モードによって異なり、作成される Tcl の run スク リプ ト もモードによって異なり ます。非プロジェク ト モードの場合、 ツール オプシ ョ ンの設定、 インプ リ メ ンテーシ ョ ン コマンドの実行、 レポートの生成、デザイン チェッ クポイン トの書き込みなどの Tcl コマンドをそれぞれ実行する必要があ り ます。プロジェク ト モードの場合は、 ラ ッパー コマンドが合成、 インプリ メンテーシ ョ ン、およびレポート などのコマンドそれぞれに対して使用されます。

たとえば、 プロジェク ト モードの場合、 プロジェク トにソースを追加するには、 add_files という Tcl コマンドを使用します。ソースは、プロジェク ト ディ レク ト リ構造内で別のバージ ョ ンを維持するためにプロジェク トにコピーした り、 リ モー ト から参照した り でき ます。 非プロジェ ク ト モード の場合、 Tcl コマン ド の read_verilog、read_vhdl、 read_xdc、 および read_* を使用して、 現在のディ レク ト リから さまざまなタイプのソースを読み出すこ とができます。

プロジェク ト モードの場合は、launch_runs コマンドを使用する と、 コンフ ィギュレーシ ョ ン済みのス ト ラテジを使用してツールを起動し、 標準レポート を生成できます。 これによ り、 インプ リ メ ンテーシ ョ ン コマンド、 標準レポート、 run ス ト ラテジの使用、 run ステータスの管理が一括で実行されます。 ただし、 デザイン プロセスの前後にカスタムの Tcl コマンドを実行するこ と もできます。 run 結果は、 自動的にプロジェク ト内に保存されて管理されます。非プロジェク ト モードの場合、 opt_design、 place_design、 および route_design などの各コマンドを実行する必要があ り ます。

多くの Tcl コマンドは、レポート コマンドのよ うにどちらのモードでも使用できますが、プロジェク ト モードまたは非プロジェク ト モードのいずれかでしか使用できないものもあ り ます。スク リプ ト を作成する際は、どちらかのモードでしか使用できないコマンドを混合しないよ うに注意してください。たとえば、プロジェク ト モードを使用する場合は、 非プロジェク ト モードでしか使用できない synth_design のよ うなコマンドを使用しないよ うにします。 プロジェ ク ト モードで非プロジェ ク ト モード用のコマン ドを使用する と、 データベースでステータス情報がアップデート されず、 レポートが自動的に生成されなくな り ます。

ヒン ト : プロジェク ト モードには、 ほとんどの場合に Tcl コマンドが実行される GUI 操作が含まれます。 Vivado IDEの Tcl コンソールに表示される Tcl コマンドは、vivado.jou ファ イルにも保存されます。このファイルを使用して、どちらのモードでも使用できるよ う なスク リプ ト を開発するこ と も可能です。

デザイン  フローの概要 japan.xilinx.com 13UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 14: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

図 2-1 に、 プロジェク ト モード と非プロジェク ト モードの Tcl コマンドの違いを示します。

X-Ref Target - Figure 2-1

図 2‐1 : プロジェク ト  モード と非プロジェク トモードのコマンド

デザイン  フローの概要 japan.xilinx.com 14UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 15: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

Tcl の使用すべてのフローは Tcl コマンドを使用して実行できます。Tcl スク リプ ト を使用して、デザイン解析レポート を含むデザイン フロー全体を実行したり、 フローの一部のみを実行できます。Tcl を直接使用する場合は、Tcl コマンドで次のいずれかの方法を使用してデザインを処理します。

• Vivado IDE の外の Vivado Design Suite Tcl シェルに Tcl コマンドを入力します。

• Vivado IDE の一番下の Tcl コンソールに Tcl コマンドを入力します。

• Vivado Design Suite Tcl シェルから Tcl スク リプ ト を実行します。

• Vivado IDE から Tcl スク リプ ト を実行します。

Tcl および Tcl スク リプ トに関する情報は、『Vivado Design Suite ユーザー ガイ ド : Tcl スク リプ ト機能の使用』 (UG894)[参照 16] および 『Vivado Design Suite Tcl コマン ド リ フ ァ レンス ガイ ド』 (UG835) [参照 17] を参照して ください。Vivado ツールでの Tcl の使用方法の詳細については、 『Vivado Design Suite チュート リ アル : デザイン フローの概要』(UG888) [参照 18] を参照してください。プロジェク ト モードまたは非プロジェク ト モードのいずれかを使用した Tclベースのアプローチに関する詳細は、 第 3 章 「プロジェク ト モードの使用」 または 第 4 章 「非プロジェク ト モードの使用」 を参照してください。

Vivado Design Suite Tcl シェルの起動

Linux コマンド プロンプ ト または Windows のコマンド プロンプ トで次のコマンドを使用して、Vivado Design Suite Tclシェルを起動します。

vivado -mode tcl

注記 : Windows の場合、[スタート ] → [すべてのプログラム] → [Xilinx Design Tools] → [Vivado 2014.x] → [Vivado 2014.xTcl Shell] をク リ ッ ク しても起動できます。

バッチ Tcl スクリプ ト を使用した Vivado ツールの起動

Vivado ツールはを起動したと きに Tcl スク リプ ト を提供しておく と、 バッチ モードで使用できます。 Linux コマンドプロンプ ト または Windows のコマンド プロンプ トで次のコマンドを使用します。

vivado -mode batch -source <your_Tcl_script>

注記 :バッチ モードの場合、 指定したスク リプ トが実行されてから Vivado ツールが閉じます。

デザイン  フローの概要 japan.xilinx.com 15UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 16: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

Tcl フローでの Vivado IDE の使用

T c l を使用する場合でも、 Vivado IDE でのインタラ クティブな GUI ベースの解析および制約定義機能を利用できます。第 4 章の 「Vivado IDE を使用したデザイン解析」 に示すよ うに、デザイン サイ クルのどの段階でも Vivado IDEでデザインを開く こ とができます。 また、 第 4 章の 「デザイン チェッ クポイン トの使用」 に示すよ うに、 デザインチェッ クポイン ト もどの段階ででも保存して、 Vivado IDE で後で開く こ とができます。

ザイリンクス Tcl Store の使用

ザイ リ ンクス Tcl ス ト アは、 Tcl コードのオープン ソース リ ポジ ト リで、 主に Vivado Design Suite を使用した FPGAデザイン用に設計されています。 Tcl Store を使用する と、 さまざまな問題を解決して生産性を改善する異なるソースから提供された複数のスク リプ トおよびユーティ リ ティにアクセスできます。 Tcl スク リプ トはインス トールできるほか、 ほかの人と共有するためにリ リースするこ と もできます。 Tcl スク リプ トおよびザイ リ ンクス Tcl Store の詳細については、 『Vivado Design Suite ユーザー ガイ ド : Tcl スク リプ ト機能の使用』 (UG894) [参照 16] を参照して ください。

Vivado IDE の使用Vivado IDE では、 デザインおよび IP を作成、 インプ リ メ ン ト 、 および検証するインターフェイスが提供されています。 プロジェク ト モードの場合、 Vivado IDE ではすべてのデザイン ソース、 コンフ ィギュレーシ ョ ン、 結果を管理するプッシュ ボタンのデザイン フローがサポート されています。 Vivado IDE では、 メモ リでデザインを開く とい うコンセプ ト を使用するこ とで、デザイン フロー中でも制約の割り当ておよび解析を有効にできます。デザインを開くと、 デザイン ネッ ト リ ス トがデザイン フローの特定段階で読み込まれ、 制約が割り当てられ、 ターゲッ ト デバイスに適用されます。 これによ り、各段階でデザインを視覚化して処理できます。デザインは RTL エラボレーシ ョ ン、合成またはインプ リ メンテーシ ョ ン後に開く こ とができ、制約、 ロジッ クまたはデバイス コンフ ィギュレーシ ョ ン、およびインプ リ メンテーシ ョ ン結果に変更を加えるこ とができます。 また、デザイン チェッ クポイン ト を使用して、デザインの現在の状態を保存できます。 Vivado IDE の詳細は、 『Vivado Design Suite ユーザー ガイ ド : Vivado IDE の使用』 (UG893) [参照 19] を参照してください。

推奨 : Vivado IDE はプロジェク ト作業ディ レク ト リから起動して ください。 これによ り、 起動ディ レク ト リに書き込まれるプロジェク ト ファ イル、 ログ ファ イル、 ジャーナル ファ イルが見つけやすくな り ます。

デザイン  フローの概要 japan.xilinx.com 16UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 17: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

Windows での Vivado IDE の起動

[スタート ] → [すべてのプログラム] → [Xilinx Design Tools] → [Vivado 2014.x] → [Vivado 2014.x] をク リ ッ ク します。

注記 : または、 デスク ト ップの Vivado IDE のシ ョート カッ ト をダブルク リ ッ ク します。

ヒン ト : 作業ホルダーは、 Vivado IDE のシ ョート カッ ト アイコンを右ク リ ッ ク して [プロパティ ] をク リ ッ クする とアップデートできます。これによ り、起動ディ レク ト リに書き込まれるプロジェク ト ファ イル、ログ ファ イル、ジャーナル ファ イルが見つけやすくな り ます。

Windows または Linux のコマンド  ラインからの Vivado IDE の起動

コマンド プロンプ トに次のコマンドを入力します。

vivado

注記 : このコマンドを入力する と、 自動的に vivado -mode gui が実行され、 Vivado IDE が起動されます。 ヘルプが必要な場合は、 「vivado -help」 と入力します。

Vivado Design Suite の Tcl シェルからの Vivado IDE の起動

Vivado Design Suite が Tcl モードで実行されている場合は、次のコマンドを Tcl コマンド プロンプ トに入力して、VivadoIDE を起動します。

start_gui

ソースのバージ ョ ン管理システムどの複数のデザイン コンフ ィギュレーシ ョ ンおよびリ ビジ ョ ンを保存するのに、ソース管理システムを使用するのが一般的です。 RCS (Revision Control System)、 CVS (Concurrent Versions System)、 SVN (Subversion)、 ClearCase、 Perforce、Git、 Bitkeeper などのシステムがよ く利用されていますが、 Vivado ツールはどのシステムにも対応できます。 フローで使用および作成される Vivado ツールの入力および出力ファイルには、 リ ビジ ョ ン管理が必要です。

ビデオ : Vivado ツールでリ ビジ ョ ン管理システムを使用する際のベス ト プラ クティ スについては、Vivado Design Suiteオンライン ビデオ : Vivado バージ ョ ン管理システムの概要を参照してください。

非プロジェク ト  モードでのソース バージョン管理システムの使用

ソース管理システムを連動させるには、非プロジェク ト モードの Tcl スク リプ ト フローを使用するのが も簡単な方法です。必要なソース ファ イルをユーザーが指定したローカル ディレク ト リ構造にチェッ クアウ ト します。 この後、デザインを作成するためソースをインスタンシエート します。 新しいソース ファ イルを作成する場合もあ り ます。ファ イルの準備が整ったら、 read_* コマンドを使用してファ イルを Vivado の合成およびインプ リ メ ンテーシ ョ ンコマンドに渡します。 ソース ファ イルは、元のディ レク ト リに保持されます。チェッ クアウ ト されたソースは、 インタラ クティブに、またはコード エディ ターを使用してデザイン セッシ ョ ン中に Tcl コマンドで変更できます。タイ ミ

X-Ref Target - Figure 2-2

図 2‐2 : Vivado IDE デスク ト ップ アイコン

デザイン  フローの概要 japan.xilinx.com 17UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 18: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

ング制約の変更などがこの例です。 ソース フ ァ イルは、 この後随時ソース管理システムに戻されます。 デザインチェッ クポイン ト、レポート、ビッ ト ス ト リーム ファ イルなどのデザイン結果も リ ビジ ョ ン管理用にチェッ ク インできます。

注記 : ソース ファ イルは読み取り専用にして保護できますが、 その場合は変更できません。

推奨 : 実行ス ク リ プ ト やツール設定も リ ビジ ョ ン管理用にチェ ッ ク イ ンする必要があ り ます。 こ の情報は、write_project_tcl コマンドを使用して Tcl スク リプ トに記述できます。 init.tcl は write_project_tcl で記述されたスク リプ トには含まれないため、 これもチェ ッ ク インする必要があ り ます。 これらすべてのファ イルをチェ ッ ク インしたら、 現在のソースおよびツール コンフ ィギュレーシ ョ ン設定を使用してデザインを再生成できます。

プロジェク ト  モードでのソース バージ ョ ン管理システムの使用

Vivado Design Suite プロジェク ト を使用する場合、 ソース管理システムの使用が複雑になる可能性があ り ます。 プロジェク トでは、 ソースのコピーが保持され、 独自の方法でデザインが管理されますが、 Vivado Design Suite プロジェク ト をソース管理システムと共に使用するこ とはできます。 まず、 ローカルおよびリモートのソースはすべて VivadoIDE を使用してインタラ クティブに処理できる という こ とを理解してください。ソースを変更するには Vivado IDE テキス ト エディ ターを使用でき、その後デザインを開いて結果を解析および変更できます。読み取り専用のソースを使用するこ とはできますが、 Vivado IDE を使用する利点が大き く損なわれます。

重要 : プロジェク ト を作成する際に、ソースをプロジェク ト ディ レク ト リにコピーするのではなく、 リモート ソースを使用する必要があ り ます。 ソースはリモート ソースを使用して簡単に維持および管理できます。

プロジェ ク ト をソース管理システムと共に使用する場合、 Vivado IDE で使用される実行スク リプ トは表示されません。現在のセッシ ョ ンの Tcl コマンドが書き込まれる Vivado Design Suite のジャーナル ファ イルのみが表示可能です。さ らに、ツール コンフ ィギュレーシ ョ ン設定は run ス ト ラテジ ファ イルに保存されますが、 これは今後の run には簡単には使用できません。 このため、 プロジェク ト をソース管理システムと共に使用する場合は、 Tcl スク リプ ト を使用してプロジェク ト を再ビルドするこ とを推奨します。

推奨 : プロジェク トのコンパイル実行スク リプ トやツール設定も リ ビジ ョ ン管理用にチェッ ク インする必要があ り ます。 この情報を Tcl スク リプ トに記述するには、 write_project_tcl コマンドを使用します。 このスク リプ ト を使用する と、 現在のソースおよびツール コンフ ィギュレーシ ョ ン設定を使用してデザインを再生成できます。

ソース バージ ョ ン管理システムを含む IP ソースの管理

IP および IP サブシステム ソースの リ ビジ ョ ンは、 リ モー ト の個別のスタン ドアロン IP ソースを使用するか、 IPLocation プロジェク ト を使用して管理するのが も簡単です。

各 IP コアは、 メ インの IP ソース ファ イル (拡張子は .xci) を含む下位ディ レク ト リに保存され、 こ こに IP をインプリ メ ン トするのに必要な RTL、 XDC、 および関連ファイルも保存されます。 IP が作成されたのと同じ Vivado DesignSuite リ リースを使用していれば、 XCI ファ イルから IP 出力ファ イルを生成し直すこ とができます。 今後の VivadoDesign Suite バージ ョ ンにアップグレードする予定がない場合、またはVivado Design Suite リ リースでIP を 新のバージ ョ ンにアップグレードする場合は、 単にデザインで使用されたカスタマイズ IP を含む IP の .xci ファ イルを保存しておきます。

Vivado IP は、 IP を 新のバージ ョ ンにアップグレード しておかないと、今後の Vivado Design Suite リ リースではカスタマイズし直すこ とができません。 今後、 Vivado Design Suite リ リースをアップグレードする予定がある場合は、 IPのディ レク ト リ全体を リ ビジ ョ ン管理下に置く必要があ り ます。 こ う しておく と、 すべての出力ファ イルが今後のVivado Design Suite バージ ョ ンでも使用できる よ う にな り ます。 IP のディ レ ク ト リ全体を保存しておく と、 VivadoDesign Suite で使用される階層関係も維持されます。

IP の合成済みデザイン チェッ クポイン ト (DCP) を生成するこ と もできます。 IP の DCP ファ イルは、Vivado ツールでRTL および XDC ソースの代わりにデザイン ソース と して使用できます。 このデザイン方法を使用するには、 リ ビジ ョ ン管理用にその IP のデザイン チェッ クポイン ト をチェッ ク インする必要があ り ます。DCP を IP のソースと して

デザイン  フローの概要 japan.xilinx.com 18UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 19: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 2 章 : 使用モデル

使用する と、 今後 IP のアップグレードまたはカスタマイズがされないよ うになり ます。 ネッ ト リ ス トおよび制約は、元々固定されています。

Vivado ツールでは、 write_verilog、 write_vhdl、 write_edif などを使用して IP に対してさまざまなレポートおよび出力フォーマッ ト を生成できます。 これらの出力ファイルはサードパーティの合成およびシ ミ ュレーシ ョ ンソフ ト ウェア用に使用されるのが一般的です。 これらのファイルを使用する場合も、 リ ビジ ョ ン管理下にチェッ ク インする必要があ り ます。

PCB 設計との関係I/O 配置プロセスは、 高度なシステム パフォーマンスには重要な要素となり ます。 プ リ ン ト回路基板 (PCB) 設計者にとっての懸念事項は、 PCB 上での FPGA デバイス との関係およびその順応性にあるこ とが多く、 高集積のボール グリ ッ ド アレイ (BGA) デバイスの配線は、 PCB 設計者には も困難な課題です。 重要なインターフェイス配線、 電源とレールの位置、シグナル インテグ リティ も課題事項です。FPGA 設計者と PCB 設計者が密に協力し合う こ とで、 こういった懸念事項の解決につながるこ とがあ り ます。 Vivado IDE を使用する と、 システム レベルのインターコネクト を 適化するために、 物理パッケージ ピンと内部ダイ パッ ド間の関係が視覚化できます。

Vivado Design Suite には、 FPGA、 PCB、 システム デザインのそれぞれの領域間でデザイン情報を渡す方法が複数含まれます。 I/O ピン コンフ ィギュレーシ ョ ンは、 CSV スプレッ ドシート、 RTL ヘッダー、 または XDC ファ イルを使用して渡すこ とができます。 CSV スプレッ ドシートには、 一致する長さの接続および電源接続などのさまざまな PCBデザイ ン タ ス ク に使用可能なその他のパッ ケージおよび I/O 情報が含まれます。 IBIS (I/O Buffer InformationSpecification) モデルも Vivado IDE からエクスポート して、 PCB でのシグナル インテグ リティ解析に使用できます。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

サードパーティ  デザイン ソフ トウェア ツールの使用ザイ リ ンク スでは、 複数のサードパーティ デザイン ツーのサプラ イヤーと提携しています。 次のソフ ト ウェア ソリ ューシ ョ ンには、 合成およびシ ミ ュレーシ ョ ン ツールのみが含まれます。

ロジック合成の実行

Vivado Design Suite では、 Synopsys 社および Mentor Graphics 社から提供されるザイ リ ンクス FPGA ロジッ ク合成ツールの使用がサポート されています。 Vivado Design Suite では、 構造 Verilog または EDIF 形式の合成済みのネッ ト リ スト をインポート して、 インプリ メンテーシ ョ ン中に使用できます。また、Vivado Design Suite では、 ロジッ ク合成ツールから出力される制約 (SDC または XDC) を使用するこ と もできます。

ロジック  シミ ュレーシ ョ ンの実行

Vivado IDE では、 Mentor Graphics 社、 Cadence 社、 Synopsys 社から提供されるロジッ ク シ ミ ュレーシ ョ ン ツールがサポート されます。 Mentor Graphics 社の ModelSim シ ミ ュレータは、 Vivado IDE に直接組み込まれています。 すべてのサポート されるサードパーティのロジッ ク シ ミ ュレータ用にネッ ト リ ス トが出力されます。 Vivado Design Suite からは、 デザイン フローのどの段階でも完全な Verilog または VHDL ネッ ト リ ス ト をエクスポート して、 サードパーティ シ ミ ュレータで使用できます。 また、 SAIF 形式のインプ リ メンテーシ ョ ン後の遅延をエクスポート して、 サードパーティのタイ ミ ング シ ミ ュレーシ ョ ンで使用するこ と もできます。

注記 :ザイ リ ンクス IP の中には、 RTL ソースを Verilog または VHDL 形式のいずれかで提供するものがあ り ます。合成後は、 いずれかの言語で構造型ネッ ト リ ス トが作成できます。

デザイン  フローの概要 japan.xilinx.com 19UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 20: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3章

プロジェク ト  モードの使用

概要プロジェク ト モードの場合、 Vivado® Design Suite でプロジェク ト ディ レク ト リ構造が作成され、 ソース ファ イル、制約、 IP データ、 合成およびインプリ メンテーシ ョ ン run の結果、 レポート などを含むデザインが自動的に管理されます。 Vivado Design Suite では、 ソース ファ イルのステータス、 コンフ ィギュレーシ ョ ン、 デザインの状態なども管理およびレポート されます。

作成できるのは、 RTL ベースのプロジェク ト 、 または合成済みネッ ト リ ス ト ベースのプロジェク トです。 ネッ ト リス ト プロジェ ク トは、 サードパーティ合成ツールで主に使用され、 デザイン プロセスは合成後から管理されます。ネッ ト リ ス ト デザインを解析し、制約を割り当てて管理し、デザインをインプリ メン ト して解析し、デバイスをプログラムしてデバッグしたら、 フロー全体でソース と出力を管理できます。

Vivado IDE では、 合成およびインプ リ メ ンテーシ ョ ンなどの定義済みデザイン フロー手順を起動するには、 FlowNavigator (図 3-1) を使用できます。 [Generate Bitstream] をク リ ッ クする と、 デザインが合成およびインプ リ メ ン ト されてから、 ビッ ト ス ト リーム ファ イルが生成されます。 この環境では、 プッシュボタン デザイン フローが提供されるほか、 アドバンスなデザイン管理および解析機能も提供されます。 run はさまざまなインプリ メンテーシ ョ ン コマンドを統合したラ ッパー Tcl スク リプ トによ り実行され、 自動的に標準レポートが生成されます。 さまざまな run スト ラテジを使用するこ とで、配線密度およびタイ ミ ング ク ロージャなどのさまざまなデザインの問題点を見つけることができます。

注記 : run ス ト ラテジは、 プロジェク ト モードにのみ適用できます。 非プロジェク ト モードの場合、 すべての指示子およびコマンド オプシ ョ ンを手動で設定する必要があ り ます。

プロジェ ク ト モードは Vivado IDE または Tcl コマン ド /ス ク リ プ ト を使用して実行できます。 プロジェ ク ト 内でVivado IDE と Tcl を切り替えて使用するこ と もできます。 ただし、 プロジェク ト モードの機能は Vivado IDE で使用した方が有利です。 Vivado IDE でプロジェク ト を開くか作成する と、 デザインの現在の状態、 run の結果、 生成されたレポートおよびメ ッセージが表示されます。 ソースの作成および変更、 制約の適用、 デバッグ情報の適用、 ツール設定の指定、 デザイン タスクの実行などが可能です。

推奨 : プロジェク ト モードは、 Vivado ツールの動作とザイ リ ンクス®の推奨事項を理解する一番簡単なモードです。

RTL エラボレーシ ョ ン、合成、およびインプリ メンテーシ ョ ンの後にデザインを開き、解析および制約の定義を実行できます。 デザインを開く と、 Vivado ツールでターゲッ ト デバイスに対するネッ ト リ ス ト と制約がコンパイルされ、Vivado IDE でデザインが表示されます。デザインを開いたら、 さまざまな解析およびレポート機能を使用して、異なる条件や観点からデザインを解析できます。 制約およびデザイン変更を適用して保存するこ と もできます。 詳細は、『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

デザイン  フローの概要 japan.xilinx.com 20UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 21: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

プロジェク ト  モードの利点デザインが自動的に管理されるプロジェク ト モードには、 次のよ うな利点があ り ます。

• プロジェク ト ステータス、 HDL ソース、 制約ファイル、 および IP コアが自動的に管理されます。

• 合成およびインプ リ メンテーシ ョ ンの結果が生成されます。

• インプ リ メンテーシ ョ ン結果から RTL ソース ファ イルへのクロス プローブなど、 高度なデザイン解析機能があり ます。

• run ス ト ラテジによ り コマンド オプシ ョ ンの設定が自動化され、 標準レポート も自動的に生成されます。

• 複数の run を作成してさまざまな制約およびコマンド オプシ ョ ンを設定および確認できます。

プロジェク ト  モードでの Tcl コマンドの使用表 3-1 は、 プロジェク トの作成、 インプ リ メンテーシ ョ ン、 レポート を制御するプロジェク ト モードの基本的な Tclコマンドを示しています。 デザイン タス クに関連する Tcl コマンドを理解するには、 Vivado IDE でコマンドを実行し、 [Tcl Console] ビューまたは vivado.jou ファ イルで構文を確認するのが 適な方法です。

X-Ref Target - Figure 3-1

図 3‐1 : Vivado IDE の Flow Navigator

デザイン  フローの概要 japan.xilinx.com 21UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 22: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

注記 : この文書には、 使用可能な Tcl コマンドすべての説明が含まれるわけではあ り ません。 『Vivado Design Suite Tclコマンド リ ファレンス ガイ ド』 (UG835) [参照 17] および 『Vivado Design Suite ユーザー ガイ ド : Tcl スク リプ ト機能の使用』 (UG894) [参照 16] も参照してください。

プロジェク ト  モードの Tcl スクリプ トの例

次は、 Vivado Design Suite に含まれる BFT サンプル デザインを使用した RTL プロジェク トの Tcl スク リプ ト とネット リ ス ト プロジェク トの Tcl スク リプ トの例です。 どちらの例でも、 simpl_design のよ うな基本コマンドの多くが launch_runs コマンドの一部と して実行されます。

RTL プロジェク トの Tcl スクリプ ト

## STEP#1:Create Project, add and configure sources and configure design #create_project project_bft ./project_bft -part xc7k70tfbg484-2add_files {./Sources/hdl/async_fifo.v ./Sources/hdl/bft.vhdl ./Sources/hdl/FifoBuffer.v}add_files./Sources/hdl/bftLibset_property library bftLib [get_files -of_objects sources_1 [glob ./Sources/hdl/*.vhdl]]import_files -force import_files -fileset constrs_1 -force ./Sources/bft_full.xdc## STEP#2:Configure and launch Synthesis and Implementation and generate reports#

表 3‐1 : プロジェク ト  モードでの基本 Tcl コマンド

コマンド 説明

create_project Vivado Design Suite プロジェク ト を作成します。 引数と してプロジェク ト名、 保存場所、 デザインの 上位モジュール名、 ターゲッ ト パーツを指定します。

add_files プロジェク トにソース ファ イルを追加します。 Verilog (.v)、 VHDL (.vhd または .vhdl)、 SystemVerilog (.sv)、IP (.xcoまたは.xci)、XDC 制約 (.xdc または .sdc)、System Generator モジュール (.mdl)などのソースを追加できます。 個々のファイルを追加するか、 ディ レク ト リ全体を指定して有効なファイルが自動的に追加されるよ うにするこ と もできます。

set_property Vivado Design Suite でさまざまな目的で使用されます。 プロジェク トでは、 ソースの VHDL ライブラ リ、 シ ミ ュレーシ ョ ンのみのソース、 ターゲッ ト制約ファイル、 ツール設定などを定義できます。

import_files 指定のファ イルを現在のファ イル セッ トにインポート し、 プロジェク トに追加します。 XDCファ イルを制約セッ トに定義するのにも使用します。

launch_runslaunch_runs -to_step

合成、 インプリ メンテーシ ョ ン、 またはビッ ト ス ト リーム生成を開始します。 このコマンドには、 個々のインプリ メンテーシ ョ ン コマンド と、 run の完了後に標準レポート を生成するコマンドが含まれます。すべてのインプリ メンテーシ ョ ン プロセスを 1 つのコマンドで実行し、進行状況を管理します。 -to_step オプシ ョ ンを使用する と、 個々のインプリ メンテーシ ョ ン コマンドおよびビッ ト ス ト リーム生成を個別に実行できます。

wait_on_run run が完了するまで待ってから Tcl スク リプ トの次のコマンドを実行します。

open_run 合成済みデザインまたはインプリ メン ト済みデザインをレポートおよび解析用に開きます。 レポートや解析の Tcl を使用して情報を取得するには、 デザインを開いておく必要があ り ます。

close_design メモ リ内のデザインを閉じます。

start_guistop_gui

メモ リ内の現在のデザインで Vivado IDE を起動し、 終了します。

デザイン  フローの概要 japan.xilinx.com 22UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 23: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

launch_runs synth_1wait_on_run synth_1launch_runs impl_1wait_on_run impl_1launch_runs impl_1 -to_step bitgenwait_on_run impl_1## STEP#3:Start IDE for design analysis#start_guistop_gui

ネッ ト リス ト  プロジェク トの Tcl スクリプ ト

## STEP#1:Create Project, add and configure sources and configure design#create_project -force project_K7_batch ./project_K7_batch -part xc7k70tfbg676-3set_property design_mode GateLvl [current_fileset]add_files {../rev_1/K7.edf}import_files -forceimport_files -fileset constrs_1 -force ./Sources/K7_full.xdc## STEP#2:Configure and launch Synthesis and Implementation and generate reports#launch_runs impl_1wait_on_run impl_1launch_runs impl_1 -to_step bitgenwait_on_run impl_1## STEP#3:Start IDE for design analysis#start_guistop_gui

プロジェク トの作成Vivado Design Suite では、 さまざまなデザイン目的別にさまざまなプロジェク ト タイプがサポート されます。 たとえば、RTL ソースやサードパーティ合成プロバイダーからの合成済みネッ ト リ ス ト を使用してプロジェク ト を作成できるほか、 空の I/O 配置プロジェク ト を作成して、 デバイスを確認したり、 早期ピン配置を実行したりするこ と もできます。 Vivado IDE では、 選択したプロジェク ト タイプに関連するコマンドのみが表示されます。

Vivado IDE で Create Project ウ ィザードを使用する と、 プロジェ ク ト を簡単に作成できます。 ウ ィザードを使用すると、 プロジェク ト名やプロジェク ト を保存するディ レク ト リ、 プロジェク ト タイプ (RTL、 ネッ ト リ ス ト など)、 ターゲッ ト パーツなどを定義できます。 RTL、 IP、 XDC/SDC 制約、 シ ミ ュレーシ ョ ン テス トベンチ、 System Generator(XMP) からの DSP モジュール、 Vivado 高位合成 (HLS) からのソース、 デザインに関する文書など、 さまざまなタイプのソースを追加できます。 ソースを追加する際は、 ソースを元の場所から参照するか、プロジェク ト ディ レク ト リにコピーするかを指定できます。 Vivado Design Suite では各ファ イルのタイムスタンプが監視され、 ステータスがレポート されます。 ファ イルが変更される と、 ソースまたはデザインのステータスが 新でなくなったこ とが示されます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] を参照して ください。

デザイン  フローの概要 japan.xilinx.com 23UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 24: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

さまざまなタイプのプロジェク ト

Vivado Design Suite には、 ソース ファ イルのタイプおよびデザイン タスクによって、 さまざまなタイプのデザイン入力が使用できます。 次は、 これらのタスクを実行するのに使用できるプロジェク ト タイプです。

• RTL プロジェク ト : RTL ソース ファ イルおよび制約を追加し、 Vivado IP カタログを使用して IP をコンフ ィギュレーシ ョ ンし、 Vivado IP インテグレーターを使用して IP サブシステムを作成し、 デザインを合成およびインプリ メン ト して、 デザイン プランおよび解析を実行できます。

• 合成後のプロジェク ト : サードパーティ ネッ ト リ ス ト をインポート し、デザインをインプリ メン ト し、デザインプランおよび解析を実行できます。

• I/O 配置プロジェク ト : RTL ソースの入力よ り も前に、 I/O 配置の早期プランおよびデバイス確認用に空のプロジェク ト を作成できます。

• インポート プロジェク ト : ISE Design Suite、 Xilinx Synthesis Technology (XST)、 または Synopsys Synplify から既存のプロジェク ト ソースをインポートできます。

• パーシャル リ コンフ ィギュレーシ ョ ン プロジェク ト : :パーシャル リ コンフ ィギュレーシ ョ ンのライセンスをお持ちの場合は、 RTL プロジェク トにパーシャル リ コンフ ィギュレーシ ョ ン デザイン フローと コマンドを有効にするオプシ ョ ンが含まれるよ うになり ます。

プロジェク ト  モードでのソース ファイルの管理

プロジェク ト モードの場合、 ソース管理はプロジェク ト基盤で実行されます。 Vivado IDE では、 RTL デザイン ソース、 IP シ ミ ュレーシ ョ ン ソース、 制約ソースなどのさまざまな種類のソースが個別に管理され、 複数バージ ョ ンのシ ミ ュレーシ ョ ンまたはデザイン制約セッ ト をイネーブルにするソース セッ トのコンセプ トが使用されます。これによ り、 1 つのデザイン プロジェ ク ト内でさまざまなデザイン制約セッ ト を管理および使用できます。 Vivado IDE では、 シ ミ ュレーシ ョ ンにも同じアプローチを使用して、 モジュール レベルのシ ミ ュレーシ ョ ン セッ トの管理を有効にし、 さまざまなデザインのパーツをシ ミ ュレーシ ョ ンします。

ソースを追加する場合は、 リモート ディ レク ト リから ソースを参照するか、 ソースをローカルのプロジェク ト ディレク ト リ構造にコピーします。 ソースは、 ネッ ト ワーク接続されているディ レク ト リから も使用できます。 どちらの方法でも、Vivado IDE ではファイルのタイム スタンプから、アップデートがないかど うか確認されます。ソース ファイルを変更する と、Vivado IDE のプロジェク ト ステータスが変更され、合成またはインプリ メンテーシ ョ ン run が期限切れであるかど うかが示されます。 読み取り専用の権限しかないソースは、 そのよ うに処理されます。

Vivado IDE にソースを追加する場合、 RTL ファ イルをオプシ ョ ンでスキャンして、 ソース ディ レク ト リにある可能性のあるインクルード ファ イルやほかのグローバル ソース ファ イルを検索するよ うにできます。 指定したディ レクト リやディ レク ト リ ツ リー内のすべてのソース ファ イルの種類は、 [File] → [Add Sources] で追加できます。 VivadoIDE では、ディ レク ト リおよびその下位ディ レク ト リ をスキャンして、既知のソース タイプのセッ ト と一致する拡張子のファイルをインポート します。

ソース ファ イルがプロジェク トに追加される と、 コンパイル順が決まって、 [Sources] ビューに表示されます。 これによ り、不正な形式の RTL やモジュールの欠損などを識別しやすくな り ます。 [Messages] ビューには、 RTL コンパイルに関する メ ッセージが表示され、 メ ッセージをク リ ッ クする と、 該当する RTL ソースが表示されるよ うにな り ます。 また、 ソース ファ イルをイネーブル/ディ スエーブルににして、 コンフ ィギュレーシ ョ ンを制御できます。

リモート、 読み取り専用ソースの使用

Vivado Design Suite では、 プロジェ ク ト を作成する際または非プロジェク ト モードで読み込む際に リモート ソースファ イルを使用できます。 ソース ファ イルは読み取り専用で、 ファ イルをメモ リでコンパイルしますが、元のファイルに変更を保存するこ とはできません。 ソース ファ イル ファ イルは必要であれば、 別のディ レク ト リに保存されます。

プロジェク トのアーカイブ

Vivado IDE では、 [File] → [Archive Project] コマンドでソース ファ イル、デザイン コンフ ィギュレーシ ョ ン、 run 結果データ (オプシ ョ ン) などを含むプロジェク ト全体の ZIP ファ イルが作成されます。 プロジェク トで リモート ソース

デザイン  フローの概要 japan.xilinx.com 24UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 25: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

が使用される場合、 ファ イルはローカルのプロジェク トにコピーされるので、 アーカイブ プロジェク トにすべてのファイルが含まれるよ うになり ます。

プロジェク ト を再作成する  Tcl スクリプ トの作成

Vivado IDE で [File] → [Write Project Tcl] をク リ ッ クする と、 ソース ファ イル、 IP、デザイン コンフ ィギュレーシ ョ ンを含むプロジェク ト全体を実行できる Tcl スク リプ トが作成できます。 このスク リプ トは、プロジェク ト ディ レク トリ構造の代わりにソース管理システムにチェッ ク インできます。

デザイン  フローの概要 japan.xilinx.com 25UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 26: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

Flow Navigator の理解Flow Navigator (図 3-2) では、 プロジェク トの設定、 合成、 インプリ メンテーシ ョ ン、 ビッ ト ス ト リームの生成などの主なデザイン プロセス タスクを制御します。 Flow Navigator で使用可能なコマンドおよびオプシ ョ ンは、デザインのステータスによって異なり ます。 必要なデザイン タスクが終了するまで、 実行できない手順は淡色表示されます。

X-Ref Target - Figure 3-2

図 3‐2 : Flow Navigator

デザイン  フローの概要 japan.xilinx.com 26UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 27: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

サードパーティ ネッ ト リ ス ト を使用して作成されたプロジェク トの場合、 Flow Navigator が異な り ます (図 3-3)。 たとえば、 システム レベル デザイン入力、 IP、 合成オプシ ョ ンなどは使用できません。

これらのデザイン タスクが完了したら、 デザイン結果を開き、 解析したり、 制約を適用したりできます。 これには、Flow Navigator で [Open Elaborated Design]、 [Open Synthesized Design]、または [Open Implemented Design] をク リ ッ ク します。 詳細は、 「デザイン解析および制約定義の実行」 を参照してください。

デザインを開く と、 デザイン フローに適したよ く使用されるコマン ドのセッ ト が Flow Navigator に表示されます。Flow Navigator でこれらのコマンドをク リ ッ クする と、 既に開いていない場合はデザインが開き、 操作が実行されます。 図 3-4 に合成に関連するコマンドを示します。

X-Ref Target - Figure 3-3

図 3‐3 :サードパーティ  ネッ ト リス ト  プロジェク トの Flow Navigator

デザイン  フローの概要 japan.xilinx.com 27UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 28: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

システム レベルのデザイン入力の実行

自動化された階層ソース ファイルのコンパイルと管理

Vivado IDE の [Sources] ビュー (図 3-5) では、 ソース ファ イルの管理を自動化する機能があ り ます。 このビューにはタブが複数含まれ、 さまざまな方法でソースが表示されます。 プロジェク ト を開くか、 変更する と、 [Sources] ビューでそのプロジェク ト ソースのステータスがアップデート されます。デザイン ソースのコンパイルが素早く実行され、ソースがダウンス ト リーム ツールでコンパイルされる順序に [Sources] ビューの [Compile Order] タブに表示されます。 RTL 階層のコンパイルに関する潜在的な問題がある場合は、 [Message ] ビューにレポート されます。 ソースの詳細については、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] を参照してください。

注記 : モジュールを 上位モジュールと して明確に設定した場合、そのモジュールは保持され、合成に渡されますが、上位モジュールと して指定していない場合は、 Vivado ツールでプロジェク ト内の使用可能なソース ファ イルの中

から 適なモジュールが 上位モジュールと して選択されます。 ファ イルに構文エラーがあったり、 エラボレート しない場合は、 Vivado ツールでそれが 上位モジュールと して選択されるこ とはあ り ません。

制約およびシ ミ ュレーシ ョ ン ソースは、セッ トに分類されます。制約セッ トは、制約の確認や管理に使用します。 さまざまなシ ミ ュレーシ ョ ン ソース セッ ト を使用するこ とで、 異なるシ ミ ュレーシ ョ ン セッ ト を開始できます。 ソースはどれでも追加、 削除、 ディ スエーブル、 またはアップデートできます。 制約の詳細については、 『Vivado DesignSuite ユーザー ガイ ド : 制約の使用』 (UG903) [参照 21] を参照して ください。 シ ミ ュレーシ ョ ンの詳細については、『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 12] を参照して ください。

X-Ref Target - Figure 3-4

図 3‐4 : Flow Navigator の [Synthesis] セクシ ョ ン

デザイン  フローの概要 japan.xilinx.com 28UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 29: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

RTL の開発

Vivado IDE には、 RTL の開発に役立つ次のよ うな機能が含まれています。

• ソース ファ イルを作成および編集する Vivado IDE テキス ト エディ ター

• 言語テンプレートからロジッ ク コンス ト ラ ク トの例をコピーする機能

• 検索条件を入力してテンプレート ラ イブラ リ を検索可能な [Find in Files] 機能

• RTL エラボレーシ ョ ンおよびインタラ クティブな解析

• RTL デザイン ルール チェッ ク (DRC)

• RTL 制約の割り当てと I/O 配置

RTL の開発および解析の詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] を参照して ください。 RTL ベースの I/O ピン配置の詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

X-Ref Target - Figure 3-5

図 3‐5 : [Sources] ビューでの階層デザイン  ソース ファイルのコンパイル

デザイン  フローの概要 japan.xilinx.com 29UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 30: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

RTL のエラボレーシ ョ ンおよび解析

エラボレート済み RTL デザインを開く と、RTL ソース ファ イルがコンパイルされて RTL ネッ ト リ ス トがインタラ クティブ解析用に読み込まれ、RTL 構造、構文、ロジッ ク定義を確認できます。次の解析およびレポート機能があ り ます。

• RTL のコンパイル検証および構文チェッ ク

• ネッ ト リ ス トおよび回路図の確認

• デザイン ルール チェッ ク

• RTL ポート リ ス ト を使用した初期 I/O ピン配置

• 1 つのビューで RTL ソース ファ イル内のインスタンシエーシ ョ ンおよびロジッ ク定義などのオブジェク ト を選択する と、 ほかのビューでも自動選択

RTL の開発および解析の詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] を参照して ください。 RTL ベースの I/O ピン配置の詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

タイ ミング制約の開発および検証

Vivado IDE には、 デザインのタイ ミ ング制約を作成および検証するための Timing Constraints ウ ィザードが含まれます。 このウ ィザードでは、 デザインのクロ ッ クおよび論理コンス ト ラ ク トが識別され、 タイ ミ ング制約を入力および検証するためのインターフェイスが提供されます。イン メモ リ デザインはクロ ッ ク情報を含んだ合成後のデザインなので、このウ ィザードは合成後およびインプリ メン ト後のデザインでのみ使用できます。詳細は、『Vivado Design Suiteユーザー ガイ ド : 制約の使用』 (UG903) [参照 21] を参照してください。

注記 : Vivado Design Suite でサポート されるのは、 Synopsys デザイン制約 (SDC) およびザイ リ ンク ス デザイン制約(XDC) ファ イルのみです。ISE Design Suite で使用したザイ リ ンクス ユーザー制約ファイル (UCF) や Synplicity デザイン制約は、 直接はサポート されません。 UCF を XDC 形式に変換する方法については、 『ISE から Vivado Design Suiteへの移行ガイ ド』 (UG911) [参照 22] を参照して ください。

IP の操作Vivado IDE では、 IP をコンフ ィギュレーシ ョ ン、 インプ リ メ ン ト 、 検証、 統合できます。 IP は、 スタンドアロンのモジュールと して、 またはシステム レベル デザインの一部と して設定および検証できます。 IP には、 エンベデッ ドプロセッサ、 DSP デジタル信号処理モジュール、 C ベースのアルゴ リ ズム デザインなども含まれます。 カスタム IPは IP-XACT プロ ト コルにしたがってパッケージされ、Vivado IP カタログから使用できます。 IP カタログから IP を簡単に設定、 インスタンシエート、 および検証できます。 ザイ リ ンクス IP は AMBA AXI4 インターコネク ト規格を使用しており、 高速システム レベル統合が可能です。 既存の IP は、 デザインで RTL またはネッ ト リ ス ト と と して使用できます。 また、 Vivado IDE では CORE Generator™ ツールで作成されたコア (拡張子 .xco のファイル) も使用できます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

IP 管理ディレク ト リの作成

Vivado Design Suite IP はリモートの IP ディレク ト リでコンフ ィギュレーシ ョ ンおよび管理できます。IP ディ レク ト リを作成または開くには、Vivado IDE の Getting Started ページで [Manage IP] をク リ ッ ク します。IP ディ レク ト リ を作成したら、 次が作成されます。

• さまざまな IP ソースおよび出力ファイルを分類して維持するディ レク ト リ構造

• manage_ip_project という名前のプロジェク ト

このタイプのプロジェク ト を使用した場合は、 次を実行できます。

デザイン  フローの概要 japan.xilinx.com 30UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 31: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

• Vivado IP カタログを使用した IP のコンフ ィギュレーシ ョ ン

• 出力ファイルの生成と IP 検証プロセスの管理

• 個別 IP または複数 IP の出力ファイルの同時生成

• Vivado IDE の [Sources] ビューでの IP 出力ファイルの表示および管理

• IP バージ ョ ン アップグレードを繰り返し実行

詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 2] を参照してください。

Vivado IP カタログを使用した IP のコンフ ィギュレーシ ョ ン

Vivado IP カ タ ロ グ (図 3-6) には、 プロ ジェ ク ト で選択し た ターゲ ッ ト デバイ スで使用可能な ザイ リ ン ク スLogiCORE™ IP が表示されます。 IP カタログには、 各 IP のバージ ョ ンおよびライセンス情報、 該当するデータシートが含まれます。 IP をダブルク リ ッ クする と、 コンフ ィギュレーシ ョ ン ウ ィザードが起動され、 デザインに対するIP のコンフ ィギュレーシ ョ ンおよびインス トール プロセスを開始できます。

出力ファイルの生成

Vivado Design Suite IP には、 その IP の合成、 インプ リ メ ンテーシ ョ ンおよび検証に使用するためのさまざまな出力ファイルが含まれます。 これらの出力ファイルは、 IP のコンフ ィギュレーシ ョ ン直後に生成できるほか、後で生成できます。プロジェク ト モードの場合、足りない出力ファイルが合成中に自動的に生成されます。 IP でスタンドアロン

X-Ref Target - Figure 3-6

図 3‐6 : Vivado IP カタログ

デザイン  フローの概要 japan.xilinx.com 31UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 32: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

の Out-of-Context フローがサポート される場合は、合成済みデザイン チェッ クポイン ト (DCP) ファ イルも含まれます。非プロジェク ト モードの場合、 出力ファイルは Tcl コマンドの synth_design を実行する前に生成する必要があ ります。

Vivado Design Suite IP には、 次の出力ファイルが含まれます。

• インスタンシエーシ ョ ン テンプレート

• RTL ソース ファ イルと XDC 制約

• 合成済みデザイン チェッ クポイン ト (オプシ ョ ン)

• サードパーティ シ ミ ュレーシ ョ ン ソース

• サードパーティ合成ソース

• サンプル デザイン (該当 IP のみ)

• テス トベンチサンプル デザイン (該当 IP のみ)

• C モデル (該当 IP のみ)

Out‐of‐Context デザイン用の IP のスタンドアロン合成

デフォルトでは、各 IP に対してデザイン チェッ クポイン トが作成され、 その IP の合成済みネッ ト リ ス ト と制約が含まれます。 IP モジュールは Vivado 合成を使用してで合成され、 デザイン チェッ クポイン トはインプリ メンテーシ ョン中に使用されます。 Vivado 合成では、 各 IP に対してデザイン チェッ クポイン ト を含むブラ ッ ク ボッ クス スタブファ イルが挿入されます。 これによ り、 IP を別個に 適化および検証できるので、 合成ランタイムが削減できます。これは、 Out-of-Context デザインと呼ばれます。

デザイン チェッ クポイン トの生成をオフにする と、 IP と 上位デザインが一緒に合成されるグローバル ト ップダウン合成アプローチが使用されます。 このアプローチが使用される場合、合成中に追加のロジッ ク 適化を実行することができるこ と もあ り ます。

ヒン ト : Vivado IDE には [Generate Output Products] ダイアログ ボッ ク スには [Generate Design Checkpoint (.dcp)] オプシ ョ ンがあ り、 デフォルト動作を制御できるよ うになっています。

IP の検証

ビヘイビアまたは構造型ロジッ ク シ ミ ュレーシ ョ ンを実行して、IP モジュールをインプリ メン ト してタイ ミ ング、消費電力、エ リ アなどを検証する と、Vivado IP を検証できます。通常はスタンドアロン IP を検証するために、RTL ラ ッパーおよびテス トベンチを含む小さめの 上位デザイン プロジェク トが作成されます。 Vivado Design Suite では、上位デザイン プロジェ ク ト のコンテキス ト内で IP モジュールを検証する こ と もできます。 IP は合成済みデザインチェッ クポイン ト を作成するので、 このボ ト ムアップ検証ス ト ラテジはスタンドアロンまたはプロジェク ト内のいずれかで問題なく実行されます。

IP コア生成の一部と して、 オプシ ョ ンでサンプル デザインが作成されます。 サンプル デザインを作成するには、[Sources] ビューで IP を右ク リ ッ ク し、 [Open Example Design] をポップアップ メニューから ク リ ッ ク します。 サンプル IP モジュールを使用する と、サンプル デザイン プロジェク トのコンテキス ト内でスタンドアロン IP を検証できます。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 12]、 『Vivado Design Suiteユーザー ガイ ド : 合成』 (UG901) [参照 3]、および 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896)[参照 1] を参照して ください。

IP サブシステム ブロック  デザインの作成

Vivado IP インテグレーター (図 3-7) では、AXI4 インターコネク ト プロ ト コルを使用して複数の IP を接続するこ とができます。 Vivado IP カタログから互換性のある IP を選択し、 デザイン キャンバスでその IP をインスタンシエート

デザイン  フローの概要 japan.xilinx.com 32UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 33: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

します。 この後、 IP をダブルク リ ッ ク し、 コンフ ィギュレーシ ョ ン ウ ィザードを起動します。 インターコネク ト をド ラ ッグ アンド ド ロ ップする と DRC でチェッ ク されるので、互換性のあるピンが視覚的にわかりやすくなっています。 AXI インターフェイスすべてを 1 本のワイヤで接続し、 ポートおよびインターフェイス ポート を配置して、 IPサブシステムを残りのデザイン部分に接続します。 この後、 これらの IP ブロ ッ ク デザインをパッケージにする と、ほかのデザインで再利用できます。詳細は、『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IPサブシステムの設計』 (UG994) [参照 2] または 『Vivado Design Suite ユーザー ガイ ド : エンベデッ ド プロセッサ ハードウェア デザイン』 (UG898) [参照 5] を参照してください。

カスタム IP の作成とパッケージ

Vivado IDE では、 カスタム IP や IP ブロ ッ ク デザインを IP にパッケージにできます。 この後、 Vivado IP カタログからアクセスし、デザインや Vivado IP インテグレーターで使用できます。 IP は、RTL ソース ファ イルのコレクシ ョ ン、Vivado IP インテグレーターのブロ ッ ク デザインまたは Vivado Design Suite プロジェク ト全体など、さまざまなソースからパッケージできます。 IP をコンフ ィギュレーシ ョ ンし、 Vivado IP カタログおよび IP インテグレーター内で使用できるよ うにする方法は複数あ り ます。 たとえば、 Package IP ウ ィザードでは、 情報を入力したり、 データを収集するプロセスができるよ うになっており、 IP を完成し、 AXI4 に準拠させ、 コンフ ィギュレーシ ョ ン可能で、 IP カタログで使用可能な状態にできます。 [Create and Package IP] コマンドを使用する と、 エンベデッ ド プロセッサ デザインで使用するためのカスタム インターフェイス ペリ フェラルも作成できます。 詳細は、 『Vivado Design Suite ユーザーガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照して ください。

X-Ref Target - Figure 3-7

図 3‐7 : Vivado IP インテグレーター

デザイン  フローの概要 japan.xilinx.com 33UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 34: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

IP のアップグレード

Vivado Design Suite のリ リースごとに、 新しい IP バージ ョ ンも リ リースされます。 既にコンフ ィギュレーシ ョ ン済みのスタティ ッ ク バージ ョ ンを使用するか、 IP をアップグレード して ください。 IP の現在のステータスをレポートするには、Tcl コマンドの report_ip_status を使用します。必要であれば、IP を選択して、それだけを 新バージ ョンにアップグレードするこ と もできます。変更ログには、変更の詳細が記述されるほか、必要なデザイン アップデートが リ ス ト されます。 たとえば、 新しい IP バージ ョ ンで 上位ポートが変更された場合、 デザインを修正する必要があるこ とがあ り ます。 また、 Tcl コマンドのreport_ip_status では、 既存 IP のターゲッ ト デバイスを変更するこ と もできます。

注記 : スタティ ッ ク バージ ョ ンの IP を使用する場合は、その IP を使用したのと同じソフ ト ウェア バージ ョ ンを使用して、 すべての出力ファイルを作成する必要があ り ます。 Vivado Design Suite の新しいバージ ョ ンでは、 古い IP を リコンフ ィギュレーシ ョ ンするこ とができません。アップグレードを実行しない場合、 IP にはリ コンフ ィギュレーシ ョンができないこ とを示す鍵のアイコンが付きます。

ロジック  シミ ュレーシ ョ ンの実行Vivado Design Suite では、 デザインまたは IP を検証するために複数のロジッ ク シ ミ ュレーシ ョ ン オプシ ョ ンが提供されています。 Vivado IDE に統合されている Vivado シ ミ ュレータでは、 デザインのシ ミ ュレーシ ョ ン、 波形ビューアーでの信号の追加および表示、デザインの確認およびデバッグを必要に応じて実行できます。Vivado シ ミ ュレータでは、デザインのビヘイビアー シ ミ ュレーシ ョ ン、構造シ ミ ュレーシ ョ ン、 インプリ メン ト済みデザインのタイ ミ ング シ ミ ュレーシ ョ ンを実行できます。 または、 開いているデザインの Verilog、 VHDL ネッ ト リ ス ト 、 および SDFフォーマッ ト ファ イルを記述するこ とによ り、 サードパーティ シ ミ ュレータ も使用できます。 Vivado IDE からは、Mentor Graphics 社の ModelSim および Questa シ ミ ュレータを起動できます。詳細は、『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 12] または 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 13] を参照してください。

I/O ピン配置 Vivado IDE には I/O ピン配置環境が含まれており、特定のパッケージ ピンまたは内部ダイ パッ ドに I/O ポート を正しく割り当てるこ とができます。 さまざまな表示ビューおよび表があ り、 パッケージおよび I/O 関連データを解析できます。また、I/O DRC および同時スイ ッチ ノ イズ (SSN) の解析コマンド もあ り、I/O 割り当てを検証できるよ うになっています。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照して ください。

ロジック合成およびインプリ メンテーシ ョ ンの実行

ロジック合成

Vivado 合成では、 合成 run を設定、 起動、 および監視できます。 Vivado IDE では、 合成結果が表示され、 レポートファ イルが作成されます[Log] ビューから合成の警告またはエラーを選択する と、 RTL ソース ファ イルで該当するロジッ クがハイライ ト されます。

複数の合成 run を同時に、または 1 つずつ順に実行できます。Linux システムでは、 リモート サーバー上の run がローカルで実行されます。 複数の合成 run を実行する と、 複数のネッ ト リ ス トが作成され、 Vivado Design Suite プロジェク ト内に保存されます。 異なるバージ ョ ンの合成済みネッ ト リ ス ト を Vivado IDE 環境で開いて、 デバイスおよびデザインの解析を実行するこ とができます。 また、 I/O ピン配置、 タイ ミ ング、 フロアプラン、およびインプリ メンテー

デザイン  フローの概要 japan.xilinx.com 34UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 35: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

シ ョ ン用に制約を作成できます。 デザインを合成する と、 ク ロ ッ ク と ロジッ クを解析および配置できるよ うにな り、合成済みネッ ト リ ス トに対しては も包括的な DRC を実行できます。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : 合成』 (UG901) [参照 3] を参照してください。

インプリ メンテーシ ョ ン

Vivado インプリ メンテーシ ョ ンでは、 インプリ メンテーシ ョ ン run を設定、 起動、 および監視できます。 インプ リ メンテーシ ョ ン run 用に異なるインプ リ メ ンテーシ ョ ン オプシ ョ ンを設定し、 再利用可能なス ト ラテジを作成できます。 たとえば、 短いランタイム、 改善されたシステム パフォーマンス、 エ リ ア 適化のス ト ラテジを作成できます。run が終了する と、 インプリ メンテーシ ョ ン run の結果が表示され、 レポート ファ イルが使用可能になり ます。

複数のインプ リ メンテーシ ョ ン run を同時に、または 1 つずつ順に実行できます。Linux システムでは、 リモート サーバーを使用できます。 制約セッ ト を作成して、 さまざまなタイ ミ ング制約、 物理制約、 代替デバイスを設定して試すこ とができます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : インプ リ メ ンテーシ ョ ン』 (UG904) [参照 4] を参照してください。

ヒン ト : tcl.pre および tcl.post ファ イルを使用する と、 Tcl スク リプ ト を追加して合成、 インプリ メンテーシ ョン、ビッ ト ス ト リーム生成の前後に読み出されるよ うにできます。詳細は、『Vivado Design Suite ユーザー ガイ ド : Tclスク リプ ト機能の使用』 (UG894) [参照 16] を参照してください。

合成およびインプリ メンテーシ ョ ン  run の設定

プロジェク ト モードを使用する場合、 合成およびインプ リ メ ンテーシ ョ ンの機能を制御する設定を多数使用できます。 これらの設定は、 run ス ト ラテジを使用する run に渡されます。 これは、 [Project Settings] ダイアログ ボッ クスで設定できます。 run ス ト ラテジは、 run の設定パラ メーターの組み合わせを保存したものです。 ザイ リ ンクスでは、合成およびインプ リ メ ンテーシ ョ ン run 用にいくつかの定義済み run ス ト ラテジを提供しています。 ユーザーがカスタムの run 設定を適用するこ と もできます。 また、 合成と インプリ メンテーシ ョ ンで異なる制約セッ ト を指定するこ ともできます。

プロジェ ク ト 設定の変更に関する詳細は、 『Vivado Design Suite ユーザー ガイ ド : 合成』 (UG901) [参照 3] および『Vivado Design Suite ユーザー ガイ ド : インプ リ メ ンテーシ ョ ン』 (UG904) [参照 4] を参照して ください。 制約の詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] および 『Vivado DesignSuite ユーザー ガイ ド : 制約の使用』 (UG903) [参照 21] を参照して ください。

ヒン ト : Out-of-Context モジュールの run は、プロジェク ト内の Vivado Design Suite IP を合成するために作成できます。IP のデザイン チェッ クポイン ト を生成する場合、デフォルトではデザインの各 run に対して Out-of-Context (スタンドアロン) の run が作成されます。

run の作成および管理

[Project Settings] ダイアログ ボッ クスで合成およびインプ リ メ ンテーシ ョ ンの設定を指定したら、 次のいずれかの方法で合成 run またはインプリ メンテーシ ョ ン run を実行できます。

• Flow Navigator で [Run Synthesis]、 [Run Implementation]、 または [Generate Bitstream] をク リ ッ ク します。

• [Design Runs] ビューで run を選択し、 右ク リ ッ ク して [Launch Runs] をク リ ッ クするか、 またはツールバーの[Launch Selected Runs] ボタンをク リ ッ ク します。

• [Flow] → [Run Synthesis]、[Flow] → [Run Implementation]、または [Flow] → [Generate Bitstream] をク リ ッ ク します。

複数の合成 run またはインプリ メンテーシ ョ ン run を作成して、 さまざまな制約およびツール設定を試してみるこ とができます。 その他の run を作成するには、 次の手順に従います。

1. Flow Navigator で [Synthesis] または [Implementation] を右ク リ ッ ク します。

2. [Create Synthesis Runs] または [Create Implementation Runs] をク リ ッ ク します。

デザイン  フローの概要 japan.xilinx.com 35UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 36: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

3. Create New Runs ウ ィザード (図 3-8) で、 制約セッ トおよびターゲッ ト パーツを選択します。

インプ リ メンテーシ ョ ン run の作成では、 複数の合成 run が存在する場合はネッ ト リ ス ト も選択できます。 さまざまなス ト ラテジ、 制約セッ ト、 またはデバイスを指定した複数の run を作成できます。 run が複数ある場合、 実行オプシ ョ ンを指定できます。 選択した run を順次実行するか、 複数のローカル プロセッサで同時に実行できます。

注記 : Linux でのみ、 リモート ホス ト を設定および使用できます。

[Design Runs] ビューでの run の管理

[Design Runs] ビュー (図 3-9) には、 run のステータスおよび情報が表示され、 ポップアップ メニューからは run を管理するコマンドが実行できます。 [Design Runs] ビューから複数の run を制御できます。 run が複数ある場合、アクティブな run が太字で示されます。 Vivado IDE には、アクティブな run の実行結果が表示されます。 [Project Summary]、 レポート、 およびメ ッセージに表示されるのは、 すべてアクティブ run に関する情報です。

Flow Navigator で [Open Synthesized Design] または [Open Implemented Design] をク リ ッ クする と、 デフォル ト でアクティブ デザインが開きます。 run をアクティブにするには、 run を右ク リ ッ ク して [Make Active] をク リ ッ ク します。Vivado IDE に新たにアクティブになった run の情報が表示されます。 合成済み run またはインプリ メン ト済み run をダブルク リ ッ クする と、 Vivado IDE にそのデザインが開きます。

X-Ref Target - Figure 3-8

図 3‐8 :複数の合成 run およびインプリ メンテーシ ョ ン run の作成

X-Ref Target - Figure 3-9

図 3‐9 : [Design Runs] ビュー

デザイン  フローの概要 japan.xilinx.com 36UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 37: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

run のリセッ ト

Flow Navigator で [Synthesis] または [Implementation] を右ク リ ッ ク し、次のポップアップ メニューを使用して run を リセッ ト します。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : インプ リ メンテーシ ョ ン』 (UG904) [参照 4] を参照してください。

• [Reset Synthesis Run] または [Reset Implementation Run] では、 run が元の状態にリセッ ト されます。 オプシ ョ ンでrun ディ レク ト リから生成されたファイルを削除できます。

• [Reset to Previous Step] ではリ ス ト された段階に run を リセッ ト します。

ヒン ト : 実行されているプロセスを停止するには、 Vivado IDE の右上の [Cancel] ボタンをク リ ッ ク します。

LSF を使用したリモート  サーバー ファームへのアクセス

リ モート Linux ホス ト で run を起動するには、 LSF (Load Sharing Facility) サーバー ファームに直接アクセスします。詳細は、 『Vivado Design Suite ユーザー ガイ ド : インプリ メンテーシ ョ ン』 (UG904) [参照 4] を参照してください。

インクリ メンタル コンパイルを使用したインプリ メンテーシ ョンの実行

インク リ メンタル コンパイルを使用して Vivado インプリ メンテーシ ョ ンを実行する と、 小さいデザイン変更を処理できます。 インク リ メンタル コンパイルでは、 変更の範囲および変更したタイ ミ ング ク リ ティカル ロジッ クの量によって、 ランタイムが削減でき、既存の結果を保持できます。Tcl コマンドの read_checkpoint に -incrementalオプシ ョ ンを付けて、 配線済みデザイン チェッ クポイン ト を指定して、 リ ファレンス と して使用されるよ うにします。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : インプリ メンテーシ ョ ン』 (UG904) [参照 4] を参照してください。

ログ ファイル、 メ ッセージ、 レポート、 プロパティの表示

ログ ファイルの表示

[Log] ビュー (図 3-10) で [Synthesis]、 [Implementation]、 [Simulation] タブをク リ ッ クする と、 合成、 インプリ メンテーシ ョ ン、 シ ミ ュレーシ ョ ンの標準出力を確認できます。 この出力は、 Vivado IDE の起動ディ レク ト リに書き込まれるvivado.log ファ イルにも含まれます。

X-Ref Target - Figure 3-10

図 3‐10 : ログ ファイルの表示

デザイン  フローの概要 japan.xilinx.com 37UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 38: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

メ ッセージの表示

[Messages] ビュー (図 3-11) では、 メ ッセージがエラー、 ク リ ティカル警告、 警告、 情報、 ステータス といった重要度別に分類されます。 [Messages] ビューの上部にあるチェ ッ ク ボッ クスのオン/オフを切り替えて、 表示する メ ッセージを選択できます。 メ ッセージのカテゴ リ を展開表示する と、 個々のメ ッセージを表示できます。 多くのメ ッセージにはリ ンクが含まれており、 ク リ ッ クする と RTL ファ イルの該当する行が開きます。 アドバンスなフ ィルター方法などの詳細は、 『Vivado Design Suite ユーザー ガイ ド : Vivado IDE の使用』 (UG893) [参照 19] を参照して ください。

レポートの表示

[Reports] ビュー (図 3-12) には、 複数の標準的なレポートが Tcl コマンドの launch_runs を使用して生成されます。レポート をダブルク リ ッ クする と、 Vivado IDE テキス ト エディ ターで開きます。 [Tcl Console] ビューで該当する Tclコマンドを入力して、 カスタム レポート を作成するこ と もできます。詳細は、 『Vivado Design Suite ユーザー ガイ ド :Vivado IDE の使用』 (UG893) [参照 19] を参照して ください。

X-Ref Target - Figure 3-11

図 3‐11 : メ ッセージの表示

X-Ref Target - Figure 3-12

図 3‐12 : レポートの表示

デザイン  フローの概要 japan.xilinx.com 38UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 39: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

デバイス プロパティの表示

[Tools] → [Edit Device Properties] をク リ ッ ク して [Edit Device Properties] ダイアログ ボッ クス (図 3-13) を開く と、デバイス コンフ ィギュレーシ ョ ンを表示および設定できます。各プロパティの詳細については、『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 13] を参照してください。デバイス コンフ ィギュレーシ ョ ンモードの設定については、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

X-Ref Target - Figure 3-13

図 3‐13 :デバイス プロパティの表示

デザイン  フローの概要 japan.xilinx.com 39UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 40: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

デザイン解析および制約定義の実行RTL エラボレーシ ョ ン、 合成、 およびインプ リ メンテーシ ョ ンの後に、 解析および制約の割り当てを実行できます。デザインの問題を早期に特定するため、 インプ リ メ ンテーシ ョ ンの前にタイ ミ ング シ ミ ュレーシ ョ ン、 リ ソース予測、 接続性の解析、 DRC などのデザイン解析を実行できます。 さまざまな合成 run またはインプ リ メ ンテーシ ョ ンrun 結果を開く と、 解析および制約の割り当てができます。 これは、 デザインを開く とわかり ます。

デザインを開く と、 Vivado IDE でネッ ト リ ス トがコンパイルされ、 ターゲッ ト デバイスに対する物理制約およびタイ ミ ング制約が適用されます。 デザインは、 開いて、 保存して、 閉じるこ とができます。 新しいデザインを開く と、メモ リ容量を確保するため、既に開いているデザインを閉じるかど うかを確認する メ ッセージが表示されます。既に開いているデザインを閉じる必要はなく、複数のデザインを同時に開いておく こ とができます。合成済みデザインを開く と、 ネッ ト リ ス ト と制約が表示されます。 インプリ メン ト済みデザインを開く と、 ネッ ト リ ス ト 、 制約、 インプリ メンテーシ ョ ン結果が表示されます。デザイン データは異なるビューにさまざまな形式で表示でき、ビューのデータは連動しています。

デザインを開く と、 Vivado IDE のさまざまな解析およびレポート機能が使用できるよ うにな り ます。 たとえば、内部デバイスおよび外部物理パッケージの対話型グラフ ィカル表示で、デバイス リ ソースを解析できます。また、[Netlist]、[Device]、 [Schematic]、 [Hierarchy] ビューを使用してタイ ミ ングおよび物理制約を適用して解析するこ と もできます。詳細は、『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] および『Vivado Design Suite ユーザー ガイ ド : 制約の使用』 (UG903) [参照 21] を参照してください。

注記 :デザインが開いている と きに制約を変更する と、 変更を元の XDC ソース ファ イルに保存するか、 新しい制約セッ ト を作成するかを選択するダイアログ ボッ クスが表示されます。詳細は、 『Vivado Design Suite ユーザー ガイ ド :システム レベル デザイン入力』 (UG895) [参照 20] および 『Vivado Design Suite ユーザー ガイ ド : 制約の使用』 (UG903)[参照 21] を参照して ください。

エラボレート済み RTL デザインを開く

エラボレート済みデザインを開く と、Vivado Design Suite が拡張され、RTL ネッ ト リ ス トがコンパイルされ、ターゲット デバイスに対して物理制約およびタイ ミ ング制約が適用されます。エラボレート済みデザインのさまざまなエレ メン トがメモ リに読み込まれる と、必要に応じて解析および変更して、デザインを完了させるこ とができます。詳細は、『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』 (UG895) [参照 20] を参照してください。

Vivado Design Suite には、 リ ンクおよびチェッ ク ツールが含まれ、 ロジッ クが正しいかど うかデザインを解析できるよ うになっています。 ロジッ クが正し く コンパイルされたか、 欠けているモジュールはないか、 インターフェイスの不一致がないかなどをチェッ クできます。 [Messages] ビューでメ ッセージのリ ンクをク リ ッ クする と、 Vivado IDE テキス ト エディ ターで RTL ファ イルの該当する行が表示されます。 [Schematic] ビューでは、 ロジッ クの接続および階層をさまざまな方法で調べるこ とができます。 [Schematic] ビューには、 RTL ベースのロジッ ク コンス ト ラ ク ト を使用して、 RTL の接続が表示されます。 [Schematic] ビューでロジッ クを選択した り、 Vivado IDE テキス ト エディ ターで RTL ファ イルの特定の行を確認したりできます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

注記 : RTL エラボレーシ ョ ンでは、 FPGA テク ノ ロジへのマップは実行されません。

レジスタなど、 ロジッ ク階層の特定のロジッ ク インスタンスに定義されている制約は、 RTL エラボレーシ ョ ンでは解決できない場合があ り ます。 エラボレーシ ョ ン中に生成されるロジッ ク名と階層は、合成中に生成されるものと一致しない可能性があ り ます。 そのため、 これらの制約が定義されている場合、 RTL デザインをエラボレート したと きに制約マップに関する警告またはエラー メ ッセージが表示されるこ とがあ り ますが、合成を実行する と、 これらの問題は回避されます。

Vivado IDE の I/O 配置機能を使用する と、 インタラ クティブに I/O ポート をコンフ ィギュレーシ ョ ンしてエラボレート済み RTL デザインに割り当て、 DRC を実行できます。 可能であれば、 合成後に I/O 配置を実行して ください。 これによ り、 ク ロ ッ クおよびロジッ ク制約が 適になり、合成後に実行する DRC がよ り詳細に実行されます。詳細は、『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] を参照してください。

デザイン  フローの概要 japan.xilinx.com 40UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 41: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

ヒン ト : [Report DRC] コマンドをク リ ッ クする と、 RTL および I/O の DRC が実行され、非同期クロ ッ ク、 ラ ッチなどのロジッ クの問題が特定されます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : システム レベル デザイン入力』(UG895) [参照 20] を参照してください。

エラボレート済みデザインを開くには、 次のいずれかを実行します。

• Flow Navigator の [RTL Analysis] セクシ ョ ンで [Open Elaborated Design] をク リ ッ ク します。

• Flow Navigator で [RTL Analysis] を右ク リ ッ ク し、 [New Elaborated Design] をク リ ッ ク します。

• [Flow] → [Open Elaborated Design] をク リ ッ ク します。

図 3-14 は、エラボレート済み RTL デザインを開いた場合のデフォルト ビュー レイアウ ト を示しています。回路図でロジッ ク インスタンスを選択する と、 RTL ソース ファ イルおよびエラボレート済み RTL ネッ ト リ ス トで特定のインスタンスが選択されます。

合成済みデザインを開く

合成済みデザインを開く と、 Vivado Design Suite で合成済みネッ ト リ ス トが開かれ、 ターゲッ ト デバイスに対して物理制約およびタイ ミ ング制約が適用されます。 合成済みデザインのさまざまなエレ メン ト がメモ リに読み込まれると、 必要に応じて解析および変更して、 デザインを完了させるこ とができます。 変更は、 制約ファイル、 ネッ ト リ スト 、 デバッグ コア、 およびコンフ ィギュレーシ ョ ンに保存できます。

合成済みデザインを使用する と、早期のタイ ミ ング、消費電力、使用率予測のよ うなデザイン タスクを多く実行するこ とができ、 デザインが指定するターゲッ ト で要件を満たすこ とができるのかど うか判断できます。 デザインは、Vivado IDE のビューを使用してさまざまな方法で解析できます。 1 つのビューでオブジェク ト を選択する と、 ほかのビューでも選択されます。 [Messages]、 [Schematic]、 [Device]、 [Package]、 [Find] などのさまざまなビューから、 RTL

X-Ref Target - Figure 3-14

図 3‐14 : エラボレート済み RTL デザインを開く

デザイン  フローの概要 japan.xilinx.com 41UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 42: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

ファ イルの問題のある行にクロス プローブできます。 [Schematic] ビューでは、 ロジッ クの接続および階層をインタラ クティブに調べるこ とができます。 タイ ミ ング制約を適用したり、 よ り詳細なタイ ミ ング解析を実行したり もできます。 I/O ポートの物理制約、 フロアプラン、 デザイン コンフ ィギュレーシ ョ ンをインタラ クティブに定義するこ ともできます。詳細は、『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

Vivado IDE の I/O 配置機能を使用する と、 インタラ クティブに I/O ポート をコンフ ィギュレーシ ョ ンして合成済みデザインに割り当て、 DRC を実行できます。 [Report DRC] コマンドをク リ ッ クする と、 包括的な DRC が実行され、 ロジッ クの問題が特定されます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ ク配置』 (UG899) [参照 10] および 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11]を参照してください。

合成済みデザインでは、プログラム済みFPGA のテス トおよびデバッグをサポートするために、デバッグ コア ロジックを設定およびインプ リ メン トできます。 [Schematic or Netlist] ビューで、 インタラ クティブにデバッグ用の信号を選択し、 その後デバッグ コアをコンフ ィギュレーシ ョ ンし、デザインに挿入します。 コアのロジッ クおよび接続は、デザインの合成がアップデート されても、 できる限り保持されます。詳細は、 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 13] を参照してください。

合成済みデザインを開くには、 次のいずれかを実行します。

• Flow Navigator の [Synthesis] セクシ ョ ンで [Open Synthesized Design] をク リ ッ ク します。

• Flow Navigator で [Synthesis] を右ク リ ッ ク し、 [New Synthesized Design] をク リ ッ ク します。

• [Flow] → [Open Synthesized Design] をク リ ッ ク します。

• [Design Runs] ビューで run の名前をダブルク リ ッ ク します。

図 3-15 は、 合成済みデザインを開いた場合のデフォルト ビュー レイアウ ト を示しています。

X-Ref Target - Figure 3-15

図 3‐15 :合成済みデザインを開く

デザイン  フローの概要 japan.xilinx.com 42UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 43: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

インプリ メン ト済みデザインを開く

Flow Navigator からインプリ メ ン ト済みデザインを開く と、 Vivado IDE でそのインプ リ メ ン ト済みネッ ト リ ス トが開き、 インプリ メンテーシ ョ ン、配置、およぼ配線結果に使用されるターゲッ ト デバイスに対する物理制約およびタイミ ング制約が適用されます。インプリ メン ト済みデザインの配置済みのロジッ ク と配線済みの接続がメモリに読み込まれる と、 必要に応じて解析および変更して、 デザインを完了させるこ とができます。 変更は、 制約ファイル、 ネット リ ス ト 、 インプ リ メ ンテーシ ョ ン結果、 およびデザイン コンフ ィギュレーシ ョ ンに保存できます。 Vivado IDE では複数のインプ リ メンテーシ ョ ン run を設定できるので、どの完了済みのインプリ メンテーシ ョ ン run を選択しても、インプ リ メン ト済みデザインを開く こ とができます。

インプ リ メン ト済みデザインでは、 タイ ミ ング解析、消費電力解析、使用量統計のよ うなデザイン タスクを多く実行するこ とができ、 デザインが必要なパフォーマンス ターゲッ トの要件を満たすこ とができるのかど うか判断できます。 デザインは、 Vivado IDE のビューを使用してさまざまな方法で解析できます。 1 つのビューでオブジェク ト を選択する と、 ほかのビューでも選択されます。 [Messages]、 [Schematic]、 [Device]、 [Package]、 [Find] などのさまざまなビューから、 ソースの RTL ファ イルの問題のある行にクロス プローブできます。 [Schematic] ビューでは、 ロジッ クの接続および階層をインタラ クティブに調べるこ とができます。 タイ ミ ング制約を適用したり、 よ り詳細なタイ ミ ング解析を実行したり もできます。また、インタラ クティブにフロアプランやデザイン コンフ ィギュレーシ ョ ン制約を適用したり、 今後の run 用に制約を保存したり もできます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

[Device] ビューでは、 [Routing Resources] をク リ ッ ク して、 配置または配線結果を確認できます。 拡大する と、[Device] ビューに表示される詳細な情報が増えます。配置配線、およびルッ クアップ テーブル (LUT) およびランダムアクセス メモ リ (RAM) の初期化などのデザイン コンフ ィギュレーシ ョ ンをインタラ クティブに変更するこ と もできます。 [Device] ビューまたは [Schematic] ビューで結果をク リ ッ ク して、 RTL ファ イルの問題の行にクロス プローブするこ と もできます。 [Schematic] ビューでは、 ロジッ クの接続および階層をインタラ クティブに調べるこ とができます。詳細は、『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

インプ リ メン ト済みデザインを開くには、 次のいずれかを実行します。

• Flow Navigator の [Implementation] セクシ ョ ンで [Open Implemented Design] をク リ ッ ク します。

• [Flow] → [Open Implemented Design] をク リ ッ ク します。

• [Design Runs] ビューで run の名前をダブルク リ ッ ク します。

ヒン ト : Flow Navigator のメニューはアクティブ run の状態によって異なるので、アクティブ run がインプリ メン ト されていない場合は [Open Implemented Design] コマン ドが淡色表示になっている こ とがあ り ます。 この場合、 FlowNavigator で [Implementation] を右ク リ ッ ク して、 完了したインプ リ メンテーシ ョ ン run のインプリ メン ト済みデザインを開く こ とができます。

デザイン  フローの概要 japan.xilinx.com 43UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 44: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

図 3-16 にインプリ メン ト済みデザインのデフォルト ビュー レイアウ ト を表示します。

注記 : [Device] ビューには、 後に閉じたと きの状態によ り、 配置のみが表示される場合と配線も表示される場合があ リ ます。 [Device] ビューで [Routing Resources] ボタンをク リ ッ クする と、 配置または配線のみを表示するよ うに表示を切り替えるこ とができます。

X-Ref Target - Figure 3-16

図 3‐16 : インプリ メン ト済みデザインを開く

デザイン  フローの概要 japan.xilinx.com 44UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 45: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

最新でないデザインのアップデート

設計プロセスでは、 通常ソース ファ イルまたは制約の変更が必要です。 これらのファイルの依存性は Vivado IDE で管理され、 表示されているデザイン データが 新でなくなる とそれが示されます。 たとえば、 ターゲッ ト パーツやアクティブ制約セッ ト などのプロジェク ト設定を変更する と、デザインが 新の状態でなくな り ます。ソース ファ イル、 ネッ ト リ ス ト 、 またはインプリ メンテーシ ョ ン結果がアップデート される と、 開いた合成済みデザインまたはインプ リ メン ト済みデザインのデザイン ビュー バナーに 「out-of-date」 とい う メ ッセージが表示され、 run が 新の状態ではないこ とが示されます (図 3-17)。 デザインのどの部分が 新ではないのかを確認するには、 [more info] リ ンクをク リ ッ ク します。

デザイン ビュー バナーから、 新でないデザインに対して次のいずれかの動作を実行します。

• [More Info] をク リ ッ クする と開く [Out-of-Date Due to] ウ ィンド ウに表示される [Force up-to-date] リ ンクをク リ ック します。

アクティブな合成またはインプ リ メンテーシ ョ ン run の NEEDS_REFRESH プロパティがリセッ ト され、 run が新の状態である とマーク されます。 このコマンドを Tcl で実行する場合は、 次のよ うなコードにな り ます。

set_property NEEDS_REFRESH false [get_runs synth_2]

注記 : このコマンドは、 デザインに少しだけ変更を加えており、 デザインを更新したくない場合に使用します。

• [Reload] をク リ ッ ク して現在のデザインのメモ リ内の表示を更新し、 デザイン データへの変更を保存します。

• [Close Design] をク リ ッ ク し、 新の状態でないデザインを閉じます。

X-Ref Target - Figure 3-17

図 3‐17 :デザインの再読み込みが必要であることを示すバナー

デザイン  フローの概要 japan.xilinx.com 45UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 46: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

デザイン  タスク実行のためのビュー レイアウトの使用

デザインを開く と、 I/O 配置、 フロアプラン、デバッグ コンフ ィギュレーシ ョ ンなどの特定のデザイン タスクを実行しやすいよ うにした複数のデフォルト ビューレイアウ トが提供されます (図 3-18)。レイアウ ト を変更する と、特定のデザイン タスクを実行するのに適したビューが表示されます。 カスタム ビュー レイアウ トは、 [Save Layout As] コマンドで作成できます。

注記 :デフォルト ビュー レイアウ トは、 デザインが開いている と きにのみ使用できます。

デザインへの変更の保存

Vivado IDE では、 メモ リでアクティブ デザインをインタラ クティブに編集します。 制約やネッ ト リ ス ト を変更したり、 消費電力解析特性、 ハード ウェア コンフ ィギュレーシ ョ ン モード パラ メーター、 デバッグ コンフ ィギュレーシ ョ ンなどのデザイン パラ メーターを変更した場合などは、必ずデザインを保存するよ うにしてください。開いたデザインをインタラ クティブに編集する場合、 次のセクシ ョ ンに示すよ うに、 その変更点は元の XDC ファ イルに保存するか、 新しい制約セッ トに保存できます。

元の XDC 制約ファイルへの変更の保存

デザインに加えた変更を元の XDC 制約ファイルに保存するには、 [File] → [Save Constraints] をク リ ッ クするか、 またはツールバーの [Save Constraints] ボタン をク リ ッ ク します。

開いているデザインに対して加えられた制約、デバッグ コアおよびコンフ ィギュレーシ ョ ン、デザイン コンフ ィギュレーシ ョ ン設定の変更がすべて保存されます。 Vivado IDE では、 可能な限り元のファ イル フォーマッ トが保持されます。追加した制約は、ファ イルの 後に追加されます。既存の制約への変更は、元のファイルの場所に保持されます。

新しい XDC 制約ファイルへの変更の保存

デザインへの変更を新しい制約セッ トに保存するには、[File] → [Save Constraints As] をク リ ッ ク して、新しい制約ファイルを作成します。

これによ り、元の制約ソース ファ イルを保持したままで変更を保存できます。新しい制約セッ トには、変更を含むすべてのデザイン制約が含まれます。 このよ うにする と、 元の XDC ソース ファ イルを変更せずに保持できます。 新しい制約セッ ト をアクティブにしておく と、次回の run の実行時やデザインを開いたと きに適用されるよ うにできます。

X-Ref Target - Figure 3-18

図 3‐18 : レイアウトの選択

デザイン  フローの概要 japan.xilinx.com 46UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 47: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

デザインを閉じる

デザインを閉じる と、 メモ リ内のデザイン数を減らし、 ソースを編集できる場所が複数になるのを避けるこ とができます。 別のデザイン表示に移動する前に、 デザインを閉じるよ うダイアログ ボッ クスが表示されるこ とがあ り ます。デザインを閉じるには、 次のいずれかを実行します。

• デザインのタイ トル バーで X ボタンをク リ ッ ク します。

• Flow Navigator でデザインを右ク リ ッ ク し、 [Close] をク リ ッ ク します。

インプリ メンテーシ ョ ン結果の解析 

インプ リ メ ン ト済みデザインが開いている場合は、 [Device] ビューに配置配線結果が表示されます。 [Timing Results]ビューでタイ ミ ング パスを選択する と、 [Device] ビューにその配置配線が表示されます。 また、 配置配線をインタラクテ ィブに編集して、 デザイン目標を達成した り、 LUT 式、 RAM 初期化、 位相ロ ッ ク ループ (PLL) コンフ ィギュレーシ ョ ンなどのデザインの特性評価を実行するこ と もできます。詳細は、 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

重要 : 変更は、 インプ リ メ ン ト済みデザインのイン メモ リ バージ ョ ンにのみ加えられます。 run を リセッ トする と変更は失われます。変更を保存するには、第 4 章の 「デザイン チェッ クポイン トへのデザインの変更点の保存」 に示すよ うに、 [Save Checkpoint] コマンドを使用します。

タイ ミング解析の実行

Vivado IDE では、タイ ミ ング解析結果をグラフ ィカルに設定および表示できます。 [Tools] → [Timing] コマンドを使用して、 さまざまなタイ ミ ング解析パラ メーターを使用してみてください。 ク ロ ッ ク ネッ ト ワーク レポートおよびクロ ッ クの相互関係レポートには、 ク ロ ッ クの ト ポロジおよび関係を表示できます。 スラ ッ ク ヒ ス ト グラムには、デザインの全体的なタイ ミ ング パフォーマンスが表示されます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

また、 Vivado IDE には、 Tcl コンソールおよび SDC 制約オプシ ョ ンを使用してさまざまなタイ ミ ング解析オプシ ョ ンが提供されています。 多数の標準レポート Tcl コマンドがあ り、 ク ロ ッ ク構造、 ロジッ クの関係、 デザインに適用されている制約などに関する情報を取得できます。詳細については、 『Vivado Design Suite Tcl コマンド リ ファレンス ガイ ド』 (UG835) [参照 17] を参照するか、 help report_* を入力してください。

DRC、 消費電力、 リソース使用率の解析

Vivado IDE では、 消費電力、 リ ソース使用率、 DRC 解析結果をグラフ ィカルに設定および表示できます。 デザインのどの段階でも、 消費電力パラ メーターを指定してすばやく消費電力を予測できます。 また、 さまざまなタイプのデバイス リ ソース使用率統計を解析できるほか、広範囲の DRC が用意されており、ユーザーが設定して実行できます。結果のレポートには、 問題のオブジェク トへのリ ンクが含まれます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド :デザイン解析およびクロージャ テクニッ ク』 (UG906) [参照 11] を参照してください。

ヒン ト : 多数の標準レポート Tcl コマンドがあ り、 デザインに関する情報を取得できます。 詳細は、 『Vivado DesignSuite Tcl コマンド リ ファレンス ガイ ド』 (UG835) [参照 17] を参照してください。

デザイン  フローの概要 japan.xilinx.com 47UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 48: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 3 章 : プロジェク ト  モードの使用

デバイスのプログラム、 ハードウェア検証、 およびデバッグVivado IDE の Vivado ロジッ ク解析環境には、デザインを検証およびデバッグするための多数の機能があ り ます。RTLまたは合成済みネッ ト リ ス トに ILA (Integrated Logic Analyzer) や Debug Hub コアなどの IP デバッグ コアをコンフ ィギュレーシ ョ ンおよびインプ リ メン トできます。 Vivado IDE で合成済みデザインを開く と、必要なプローブ信号を選択してコアにコンフ ィギュレーシ ョ ンできます。 ビッ ト ス ト リーム ファ イルが生成されているどの run に対しても、Vivado ロジッ ク解析を起動してハード ウェアを検証できます。 また、完了したどのインプリ メンテーシ ョ ン run に対しても、 ビッ ト ス ト リーム ファ イルを生成できます。 ビッ ト ス ト リーム ファ イル生成オプシ ョ ンも設定可能です。Vivado デバイス プログラマーを起動してデバイスをコンフ ィギュレーシ ョ ンおよびプログラムできます。 Vivado ロジッ ク解析は Vivado IDE から直接実行でき、 配線およびデバイス リ ソースを解析できます。 詳細は、 『Vivado DesignSuite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 13] を参照してください。

デザイン  フローの概要 japan.xilinx.com 48UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 49: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4章

非プロジェク ト  モードの使用

概要非プロジェク ト モードでは、 Tcl コマンドを使用してメモ リ内でフローを実行するこ とで、 デザインをコンパイルできます。 Tcl コマンドを使用する と、 柔軟なデザインの設定および実行、 解析およびデバッグが可能です。 Tcl コマンドは、バッチ モードで実行するか、Vivado® Design Suite Tcl シェルまたは Vivado IDE の Tcl コンソールから実行できます。 非プロジェ ク ト モードのフローを使用する と、 ユーザーが各デザイン フロー段階を完全に制御できますが、ソース ファ イル、 レポート、 中間結果 (デザイン チェッ クポイン ト ) を手動で管理する必要があ り ます。 さまざまなレポート を生成し、デザイン ルール チェッ ク (DRC) を実行し、 インプリ メンテーシ ョ ン プロセスのすべての段階のデザイン チェッ クポイン ト を書き出すこ とが可能です。

プロジェク ト モードの場合と異な り、 複数の run の作成および管理、 ソース ファ イル管理、 デザイン状態のレポート などの機能は含まれません。ソース ファ イルがアップデート されるたびに、デザインを手動で実行し直す必要があり ます。 このモードの場合、 デフォルトではレポートや中間ファイルは作成されません。 必要に応じて Tcl コマンドを使用して、 さまざまなレポートやデザイン チェッ クポイン ト を作成できます。 また、 Vivado IDE の GUI ベースのデザインの解析および制約の設定を実行する こ と もできます。 現在のデザインは、 メモ リ または保存したデザインチェッ クポイン トのいずれかで開く こ とができます。

Vivado IDE を非プロジェク ト モードで起動する と、 Flow Navigator、 プロジェク ト サマリ、 Vivado IP カタログなどのプロジェク ト モードの機能は含まれません。 非プロジェク ト モードの場合、 Vivado IDE 内で合成 run やインプ リ メンテーシ ョ ン run を開いたり変更した りできません。 ただし、 デザイン ソース ファ イルが元のディ レク ト リにある場合は、 Vivado IDE の別のビューでデザイン オブジェク ト を選択する とそれがクロス プローブされます。たとえば、デザイン オブジェク ト を選択して、 [Go To Instantiation]、 [Go To Definition] または [Go To Source] コマンドを使用すると、 関連する RTL ソース ファ イルが開いて、 該当する行がハイライ ト されます。

非プロジェク ト  モードの利点非プロジェク ト モードを使用する と、 デザイン フローの各段階をユーザーが完全に制御できます。 このモードの場合、 デザインはユーザーが手動で管理します。

• HDL ソース ファ イル、 制約、 および IP の管理

• 依存性の管理

• 合成およびインプ リ メンテーシ ョ ンの結果の生成および保存

Vivado Design Suite には、 デザインおよび IP を作成、 コンフ ィギュレーシ ョ ン、 インプ リ メ ン ト 、 解析、 管理するVivado Tcl コマンドがすべて含まれます。 非プロジェク ト モードでは、 Tcl コマンドを使用して次が実行できます。

• フロー全体からデザインをコンパイル

• デザインを解析してレポート を作成

デザイン  フローの概要 japan.xilinx.com 49UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 50: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

非プロジェク ト  モードでの Tcl コマンドの使用表 4-1 は、 基本的な非プロジェク ト モードでの Tcl コマンドを示しています。 非プロジェク ト モードを使用する場合、 デザインは read_verilog、 read_vhdl、 read_edif、 read_ip、 および read_xdc コマンドを使用してコンパイルされます。 ソースはコンパイル用に順序付けられ、 合成に渡されます。 Vivado Design Suite Tcl シェルまたはTcl バッチ スク リプ トの使用に関する詳細は、 第 2 章の 「Tcl の使用」 を参照してください。

注記 : この文書には、 使用可能な Tcl コマンドすべての説明が含まれるわけではあ り ません。 その他のコマンドについては、 『Vivado Design Suite Tcl コマンド リ ファレンス ガイ ド』 (UG835) [参照 17] および 『Vivado Design Suite ユーザー ガイ ド : Tcl スク リプ ト機能の使用』 (UG894) [参照 16] を参照してください。

表 4‐1 :非プロジェク ト  モードでの基本 Tcl コマンド

コマンド 説明

read_edif EDIF または NGC ネッ ト リ ス ト ファ イルを現在のプロジェ ク ト のデザイン ソース ファ イルセッ トにインポート します。

read_verilog 非プロジェク ト セッシ ョ ン用に Verilog (.v) および System Verilog (.sv) ソース ファ イルを読み込みます。

read_vhdl 非プロジェク ト セッシ ョ ン用に VHDL (.vhd または .vhdl) ソース ファ イルを読み込みます。

read_ip 非プロジェク ト セッシ ョ ン用に既存の IP (.xci または .xco) プロジェク ト ファ イルを読み込みます。Vivado IP (.xci) の場合、ネッ ト リ ス トが IP ディレク ト リにあれば、デザイン チェッ クポイン ト (.dcp) の合成済みネッ ト リ ス トが IP のインプリ メン トに使用されます。ネッ ト リ ス トがIP ディ レ ク ト リ にない場合は、 RTL ソースが 上位デザインの残り と一緒に使用されます。.xco IP プロジェク トでは .ngc ネッ ト リ ス トが使用されます。

read_checkpoint デザイン チェッ クポイン ト をイン メモ リ デザインに読み込みます。

read_xdc 非プロジェク ト セッシ ョ ン用に .sdc または .xdc フォーマッ トの制約ソース ファ イルを読み込みます。

set_paramset_property

デザイン コンフ ィギュレーシ ョ ン、 ツール設定の定義など、 さまざまな目的に使用します。

link_design セッシ ョ ンでネッ ト リ ス ト ソースを使用している場合に、デザインを合成用にコンパイルします。

synth_design デザインの 上位モジュールと ターゲッ ト パーツを引数と して Vivado 合成を実行します。

opt_design 高レベルのデザイン 適化を実行します。

power_opt_design システム全体の消費電力を削減するためクロ ッ ク ゲーティングを実行します(オプシ ョ ン)。

place_design デザインを配置します。

phys_opt_design タイ ミ ングまたは配線性を向上するため物理ロジッ ク 適化を実行します(オプシ ョ ン)。

route_design デザインを配線します。

report_* デザイン プロセスのさまざまな段階のレポート を生成します。

write_bitstream ビッ ト ス ト リーム ファ イルを生成して DRC を実行します。

write_checkpoint フローの任意の段階でのデザインを保存します。デザイン チェッ クポイン トには、ネッ ト リ スト 、 制約 (フローで実行された 適化を含む)、 インプ リ メンテーシ ョ ン結果が含まれます。

start_guistop_gui

メモ リ内の現在のデザインで Vivado IDE を起動し、 終了します。

デザイン  フローの概要 japan.xilinx.com 50UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 51: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

非プロジェク ト  モードの Tcl スクリプ トの例

次は、Vivado Design Suite に含まれる BFT サンプル デザインの非プロジェク ト モードの Tcl スク リプ トです。デザイン チェッ クポイン ト を使用してフローのさまざまな段階でデータベースの状態を保存する方法と、さまざまなレポート を手動で生成する方法を示しています。

# create_bft_batch.tcl# bft sample design # A Vivado script that demonstrates a very simple RTL-to-bitstream batch flow## NOTE:typical usage would be "vivado -mode tcl -source create_bft_batch.tcl" ## STEP#0: define output directory area.#set outputDir ./Tutorial_Created_Data/bft_output file mkdir $outputDir## STEP#1: setup design sources and constraints#read_vhdl -library bftLib [ glob ./Sources/hdl/bftLib/*.vhdl ] read_vhdl ./Sources/hdl/bft.vhdlread_verilog [ glob ./Sources/hdl/*.v ]read_xdc ./Sources/bft_full.xdc## STEP#2: run synthesis, report utilization and timing estimates, write checkpoint design#synth_design -top bft -part xc7k70tfbg484-2 -flatten rebuilt write_checkpoint -force $outputDir/post_synthreport_timing_summary -file $outputDir/post_synth_timing_summary.rptreport_power -file $outputDir/post_synth_power.rpt## STEP#3: run placement and logic optimization, report utilization and timing estimates, write checkpoint design#opt_designpower_opt_designplace_designphys_opt_designwrite_checkpoint -force $outputDir/post_placereport_timing_summary -file $outputDir/post_place_timing_summary.rpt## STEP#4: run router, report actual utilization and timing, write checkpoint design, run drc, write verilog and xdc out#route_designwrite_checkpoint -force $outputDir/post_routereport_timing_summary -file $outputDir/post_route_timing_summary.rptreport_timing -sort_by group -max_paths 100 -path_type summary -file $output-Dir/post_route_timing.rptreport_clock_utilization -file $outputDir/clock_util.rptreport_utilization -file $outputDir/post_route_util.rptreport_power -file $outputDir/post_route_power.rptreport_drc -file $outputDir/post_imp_drc.rptwrite_verilog -force $outputDir/bft_impl_netlist.vwrite_xdc -no_fixed_only -force $outputDir/bft_impl.xdc## STEP#5: generate a bitstream

デザイン  フローの概要 japan.xilinx.com 51UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 52: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

# write_bitstream -force $outputDir/bft.bit

デザイン  ソースの読み込み非プロジェク ト モードの場合、 さまざまなデザイン ソースがイン メモ リ デザインに読み込まれ、 インプリ メンテーシ ョ ン ツールで処理されます。 Vivado Design Suite のソース ファ イルは、 read_verilog、 read_vhdl、 read_ip、read_edif、 または read_xdc など、 ファ イルの種類によってそれぞれ read_... で始まる Tcl コマンドを使用して読み込むこ とができます。 ソースは、 Tcl スク リプ ト またはインタラ クティブなフローが開始されるたびに読み込む必要があ り ます。

ソース ファイルの管理

非プロジェク ト モードの場合、 ファ イルをイン メモ リ デザインに特定の順序で読み込むこ とで、 ソース ファ イルを手動で管理できます。ファ イルの管理方法やファイルのディ レク ト リ をユーザーが完全に制御できるよ うになっています。 ソースは、 ネッ ト ワーク接続されているディ レク ト リから も使用できます。 読み取り専用の権限しかないソースは、 そのよ うに処理されます。

サードパーティの合成済みネッ ト リス トの使用

Vivado Design Suite では、 サードパーティの合成ツールを使用する場合など、 合成済みネッ ト リ ス トのインプ リ メンテーシ ョ ンがサポート されます。 外部合成ツールでは、 Verilog または EDIF ネッ ト リ ス ト と制約ファイルが生成されます。 これらのネッ ト リ ス トは、 プロジェク ト モードまたは非プロジェク ト モードのいずれかで、 スタンドアロンで使用するか、 RTL ファ イルと混合して使用できます。

IP の操作IP は、 RTL ソースおよび制約を使用するか、 合成済みデザイン チェッ クポイン ト を 上位デザインのソース と して使用するよ うにコンフ ィギュレーシ ョ ンできます。 デフォルトでは、 各 IP に対して Out-of-Context (スタンドアロン)のデザイン チェッ クポイン トが生成されます。

非プロジェク ト モードの場合、 IP のインプリ メン トは、 次のいずれかの方法で実行できます。

• Vivado IP カタログを使用して生成した IP (.xci 形式)

Out-of-Context (スタンドアロン) のデザイン チェッ クポイン ト ファ イルが IP ディレク ト リにある場合は、それがインプ リ メンテーシ ョ ンに使用され、 合成ではブラ ッ ク ボッ クスが挿入されます。 デザイン チェッ クポイン トファ イルが IP ディ レク ト リにない場合は、 RTL および制約ソースがグローバルな合成およびインプ リ メ ンテーシ ョ ンに使用されます。

• IP 用に合成されたネッ ト リ ス ト (.dcp 形式)

合成済みネッ ト リ ス ト を使用する と、 IP をスタンドアロンで構造的に検証できるので、安定した既知のネッ ト リス ト を提供できます。Vivado IP ファ イルが IP ディ レク ト リにある場合は、そのデザイン チェッ クポイン ト ファイルも使用されます。

• IP をコンフ ィギュレーシ ョ ンおよび生成する Tcl コマンドのセッ ト

Tcl を使用する と、 run ごとに IP がコンフ ィギュレーシ ョ ン、 生成、 および合成されます。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

デザイン  フローの概要 japan.xilinx.com 52UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 53: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

ロジック  シミ ュレーシ ョ ンの実行Vivado IDE に統合されている Vivado シ ミ ュレータでは、 デザインのシ ミ ュレーシ ョ ン、 波形ビューアーでの信号の追加および表示、デザインの確認およびデバッグを必要に応じて実行できます。 Vivado シ ミ ュレータは、完全に統合された混合モード シ ミ ュレータで、 アナログ波形を表示する機能を備えています。 Vivado シ ミ ュレータでは、 デザインのビヘイビアー シ ミ ュレーシ ョ ン、 構造シ ミ ュレーシ ョ ン、 インプ リ メ ン ト済みデザインのタイ ミ ング シ ミ ュレーシ ョ ンを実行できます。

または、 開いているデザインの Verilog、 VHDL ネッ ト リ ス ト 、 および SDF フォーマッ ト ファ イルを記述するこ とによ り、 サードパーティ シ ミ ュレータ も使用できます。 ModelSim および Questa シ ミ ュレータを Vivado IDE から起動できます。

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

ロジック合成およびインプリ メンテーシ ョ ンの実行非プロジェク ト モードでは、各インプ リ メンテーシ ョ ン手順は、 コンフ ィギュレーシ ョ ン可能な Tcl コマンドを使用して起動され、 デザインはメモ リでコンパイルされます。 インプリ メンテーシ ョ ン手順は、 「非プロジェク ト モードの Tcl スク リプ トの例」 に示すよ うに、特定の順序で実行する必要があ り ます。必要に応じて、 power_opt_designまたは phys_opt_design などの手順を実行するこ と もできます。非プロジェク ト モードでは、 プロジェク ト モードでしかサポート されない run ス ト ラテジの代わりに、 さまざまなコマンドを使用してツール動作を制御できます。詳細は、 『Vivado Design Suite ユーザー ガイ ド : インプリ メンテーシ ョ ン』 (UG904) [参照 4] を参照してください。

重要なデザイン手順の後は、 デザイン解析および制約の定義のためにデザイン チェッ クポイン ト を保存しておきます。 デザイン チェッ クポイン トは、 ビッ ト ス ト リームの生成を除き、 デザイン プロセスを続行するための開始ポイン ト と しては使用できません。 これらは、単に解析および制約定義のためのデザインのスナップシ ョ ッ トにすぎません。

ヒン ト : 各デザイン手順が終了したら、 Vivado IDE を起動して、 「Vivado IDE を使用したデザイン解析」 に示す方法でアクティブなデザインに対してインタラ クティブなグラフ ィカル デザイン解析および制約定義ができます。

レポートの生成vivado.log および vivado.jou を除き、 レポートは Tcl コマンドを使用して手動で生成する必要があ り ます。 デザイン プロセスのどの段階でも、 さまざまなレポート を生成できます。 詳細は、 『Vivado Design Suite Tcl コマンド リフ ァ レンス ガイ ド』 (UG835) [参照 17] または 『Vivado Design Suite ユーザー ガイ ド : イ ンプ リ メ ンテーシ ョ ン』(UG904) [参照 4] を参照してください。

デザイン  フローの概要 japan.xilinx.com 53UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 54: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

デザイン  チェ ックポイン トの使用デザイン チェッ クポイン ト を使用する と、デザインの現在の状態のスナップシ ョ ッ ト を撮るこ とができます。現在のネッ ト リ ス ト 、制約、およびインプリ メンテーシ ョ ン結果が、デザイン チェッ クポイン トに保存されます。デザインチェッ クポイン ト を使用する と、 次が実行できます。

• 必要であればデザインを復元

• デザイン解析を実行

• 制約を定義

• デザイン フローに従って処理

デザイン チェッ クポイン トは、 フローの異なる段階で書き出すこ とができます。重要なデザイン手順の後は、デザイン解析および制約の定義のためにデザイン チェッ クポイン ト を書き出しておきます。 デザイン チェッ クポイン ト を読み込むとデザインを復元できるので、問題をデバッグする際に便利です。デザイン チェッ クポイン トは、デザインを現在のインプ リ メンテーシ ョ ン状態ですべて保存したものです。 デザイン フローの残りは、 Tcl コマンドを使用して実行できますが、 新規ソースをデザインに追加するこ とはできません。

注記 : Tcl コマンドの write_checkpoint <file_name>.dcp および read_checkpoint <file_name>.dcp を使用してもデザイン チェッ クポイン ト を書き込みおよび読み出しできます。 Vivado IDE でチェ ッ クポイン ト を表示するには、 Tcl コマンドの open_checkpoint <file_name>.dcp を使用します。 詳細は、 『Vivado Design Suite Tclコマンド リ ファレンス ガイ ド』 (UG835) [参照 17] を参照してください。

重要 : プロジェク ト モードまたは非プロジェク ト モードで IP を使用する場合は、 DCP ファ イルではなく、 XCI ファイルを常に使用して ください。 こ うするこ とで、 IP 出力ファ イルがすべてのデザイン フロー段階で一貫して使用されるよ うにな り ます。 IP がスタンドアロン (Out-of-Context) で合成され、 既に関連する DCP ファ イルがある場合は、その DCP ファ イルが自動的に使用され、 IP が合成し直されるこ とはあ り ません。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

デザイン  フローの概要 japan.xilinx.com 54UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 55: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

Vivado IDE を使用したデザイン解析非プロジェク ト モードの場合、 デザイン手順の後に Vivado IDE を起動する と、 アクティブなデザインに対してインタラ クティブなグラフ ィカル デザイン解析および制約定義ができます。

アクテ ィブ デザインで Vivado IDE を開く

非プロジェク ト モードでは、 次のコマンドを使用してメモ リ内のアクティブ デザインに対する Vivado IDE を起動および終了します。

• start_gui : メモ リ内のアクティブ デザインを Vivado IDE で開きます。

• stop_gui : Vivado IDE を終了し、 Vivado Design Suite シェルに戻り ます。

注意 : GUI から Vivado Design Suite を閉じた場合は、 Vivado Design Suite Tcl シェルが閉じ、 メモ リにデザインは保存されません。 アクティブ デザインを変更せずに Vivado Design Suite Tcl シェルに戻るには、 exit コマンドではなく、stop_gui コマンドを入力してください。

デザイン プロセスの各段階が終了したら、 Vivado IDE を開いてメモ リにある現在のデザインを解析および操作できます (図 4-1)。 Flow Navigator、 プロジェク ト サマリ、 ソースへのアクセスおよび管理、 run などの Vivado IDE の機能は非プロジェク ト モードでは使用できませんが、 解析および制約変更の機能の多くは、 [Tools] メニューから使用できます。

重要 : ただし、 メモ リ内のアクティブ デザインに対して Vivado IDE で加えた変更は、 自動的にはダウンス ト リームツールに適用されません。

デザイン  フローの概要 japan.xilinx.com 55UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 56: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

アクテ ィブ デザインへの変更の保存

メモ リ内でデザインを変更するので、 加えた変更は Vivado IDE Tcl セッシ ョ ンの残りのフローで使用されるダウンスト リーム ツールに自動的に渡されます。 これによ り、現在の run に影響を与えたり、今後の実行用に変更を保存したりできます。 今後の実行用に制約を保存するには、 [File] → [Export] → [Export Constraints] をク リ ッ ク します。新しい制約ファイルを作成するか、 元のファイルに上書きできます。

注記 :制約をエクスポートする場合は、 Tcl コマンドの write_xdc を実行します。 詳細は、 『Vivado Design Suite Tclコマンド リ ファレンス ガイ ド』 (UG835) [参照 17] を参照してください。

X-Ref Target - Figure 4-1

図 4‐1 : アクテ ィブ デザインで Vivado IDE を開く

デザイン  フローの概要 japan.xilinx.com 56UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 57: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

第 4 章 : 非プロジェク ト  モードの使用

Vivado IDE でデザイン  チェ ックポイン ト を開く

Vivado IDE を使用する と、 デザイン チェッ クポイン ト と して保存されたデザインを解析できます (図 4-2)。 Tcl コマンド (synth_design、opt_design、power_opt_design、place_design、phys_opt_design、route_design)を使用して非プロジェク ト モードでデザインを実行し、任意の段階でデザインを保存して、後の Vivado IDE セッシ ョンで読み込むこ とができます。 配線済みデザインから開始し、 タイ ミ ングを解析し、 タイ ミ ング問題を回避できるように配置を調整し、 デザインが完全に配線されていない状態であっても、 後で使用できるよ うに保存Vivado IDE のビュー バナーに、 開いているデザイン チェッ クポイン トの名前が表示されます。

デザイン チェ ックポイン トへのデザインの変更点の保存

デザイン チェッ クポイン トは開き、 解析し、 保存できます。 新しいデザイン チェッ クポイン トに変更を保存すること もできます。

• [File] → [Save Checkpoint] をク リ ッ ク し、 現在のデザイン チェッ クポイン トに加えた変更を保存します。

• [File] → [Write Checkpoint] をク リ ッ ク し、デザイン チェッ クポイン トの現在の状態を新しいデザイン チェッ クポイン ト と して保存します。

X-Ref Target - Figure 4-2

図 4‐2 : Vivado IDE でデザイン  チェ ックポイン ト を開く

デザイン  フローの概要 japan.xilinx.com 57UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 58: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

付録 A

その他のリソースおよび法的通知

ザイリンクス リソースアンサー、 資料、 ダウンロード、 フォーラムなどのサポート リ ソースは、 次のザイ リ ンクス サポート サイ ト を参照してください。

ソリューシ ョ ン  センターデバイス、 ツール、 IP のサポートについては、 ザイ リ ンクス ソ リ ューシ ョ ン センターを参照して ください。 ト ピックには、 デザイン アシスタン ト 、 アドバイザリ、 ト ラブルシュート ヒ ン ト などが含まれます。

参考資料1. 『Vivado® Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896)

2. 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994)

3. 『Vivado Design Suite ユーザー ガイ ド : 合成』 (UG901)

4. 『Vivado Design Suite ユーザー ガイ ド : インプリ メンテーシ ョ ン』 (UG904)

5. 『Vivado Design Suite ユーザー ガイ ド : エンベデッ ド プロセッサ ハードウェア デザイン (UG898)

6. 『Vivado Design Suite チュート リ アル : エンベデッ ド プロセッサ ハードウェア デザイン (UG940)

7. 『Vivado Design Suite ユーザー ガイ ド : System Generator を使用したモデルベースの DSP デザイン』 (UG897)

8. 『Vivado Design Suite ユーザー ガイ ド : 高位合成』 (UG902)

9. 『Vivado Design Suite チュート リ アル : 高位合成』 (UG871)

10. 『Vivado Design Suite ユーザー ガイ ド : I/O およびクロ ッ クの配置』 (UG899)

11. 『Vivado Design Suite ユーザー ガイ ド : デザイン解析およびクロージャー テクニッ ク』 (UG906)

12. 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900)

13. 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908)

14. 『Vivado Design Suite ユーザー ガイ ド : パーシャル リ コンフ ィギュレーシ ョ ン』 (UG909)

15. 『Vivado Design Suite チュート リ アル : パーシャル リ コンフ ィギュレーシ ョ ン』 (UG947)

16. 『Vivado Design Suite ユーザー ガイ ド : Tcl スク リプ ト機能の使用』 (UG894)

17. 『Vivado Design Suite Tcl コマンド リ ファレンス ガイ ド』 (UG835)

18. 『Vivado Design Suite チュート リ アル : デザイン フローの概要』 (UG888)

デザイン  フローの概要 japan.xilinx.com 58UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback

Page 59: Vivado Design Suite - Xilinx · 2019-10-28 · Vivado 高位合成 (HLS) が可能なので、C、C++、System C、OpenCL (Open Computing Language) 言語を使用して ロジックを定義できます。AXI4

Appendix A: その他のリソースおよび法的通知

19. 『Vivado Design Suite ユーザー ガイ ド : Vivado IDE の使用』 (UG893)

20. 『Vivado Design Suite ユーザー ガイ ド : システム レベル のデザイン入力』 (UG895) : (UG895)

21. 『Vivado Design Suite ユーザー ガイ ド : 制約の使用』 (UG903)

22. 『Vivado Design Suite : ISE から Vivado Design Suite への移行手法ガイ ド』 (UG911)

23. Vivado Design Suite オンライン ビデオ : Vivado IP インテグレーターを使用したデザイン (日本語吹替)

24. Vivado Design Suite オンライン ビデオ : Vivado IP インテグレーターを使用した Zynq デバイスの設計

25. Vivado Design Suite オンライン ビデオ : Vivado Design Suite でのパーシャル リ コンフ ィギュレーシ ョ ン

26. Vivado Design Suite オンライン ビデオ : バージ ョ ン管理システムの概要

27. Vivado Design Suite ビデオ チュート リ アル

28. Vivado Design Suite の資料

法的通知The information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products.To the maximum extentpermitted by applicable law:(1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES ANDCONDITIONS, 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 connectionwith, 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 suchdamage or loss was reasonably foreseeable or Xilinx had been advised of the possibility of the same.Xilinx assumes no obligation to correct anyerrors 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 Xilinx’s limited warranty,please refer to Xilinx’s Terms of Sale which can be viewed at http://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and supportterms 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 applicationrequiring fail-safe performance; you assume sole risk and liability for use of Xilinx products in such critical applications, please refer to Xilinx’sTerms of Sale which can be viewed at http://www.xilinx.com/legal.htm#tos.

© Copyright 2012–2014 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, and other designated brandsincluded herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respective owners.

本資料は英語版 (v2014.1) を翻訳したもので、 内容に相違が生じる場合には原文を優先します。

資料によっては英語版の更新に対応していないものがあ り ます。

日本語版は参考用と してご使用の上、 新情報につきましては、 必ず 新英語版をご参照ください。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] までお知らせください。

いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受け付けており ま

せん。 あらかじめご了承ください。

デザイン  フローの概要 japan.xilinx.com 59UG892 (v2014.1) 2014 年 4 月 2 日

Send Feedback