• 検索結果がありません。

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

N/A
N/A
Protected

Academic year: 2021

シェア "Vivado Design Suite ユーザー ガイド : プログラムおよびデバッグ (UG908)"

Copied!
191
0
0

読み込み中.... (全文を見る)

全文

(1)

Vivado Design Suite

ユーザー

ガイ ド

プ ログ ラ ムおよびデバ ッ グ

UG908 (v2015.4) 2016 年 2 月 2 日

本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資

料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情

報につきましては、必ず最新英語版をご参照ください。

(2)

次の表に、 こ の文書の改訂履歴を示 し ます。 日付 バージ ョ ン 改訂内容 2016 年 2 月 2 日 2015.4 • 表 A-2 か ら 7 シ リ ーズに関する記述を削除 2015 年 12 月 1 日 2015.4 • ハー ド ウ ェ アへの接続に関する ヒ ン ト を追加 • 編集上の修正 2015 年 10 月 6 日 2015.3 • [Waveform] ウ ィ ン ド ウ で列挙名の表示をサポー ト • 新規 ソ フ ト ウ ェ アの改善点を反映する よ う ア ッ プデー ト 2015 年 6 月 24 日 2015.2 • XVC に関する新 し いセ ク シ ョ ン を追加 • 付録 A で UltraScale に関する記述を ア ッ プデー ト

2015 年 4 月 1 日 2015.1 • Vivado Lab Edition に関する新 し い章を追加

• 読みやす く する ため第 2 章を分割

• Vivado ダ ッ シ ュ ボー ド に関する新 し いセ ク シ ョ ン を追加 • デバ ッ グ ハブに関する情報を追加

(3)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 3 UG908 (v2015.4) 2016 年 2 月 2 日 改訂履歴 . . . 2

第 1 章 : 概要

概要 . . . 6 デバ ッ グ用語集 . . . 7

第 2 章 : Vivado Lab Edition

イ ン ス ト ール . . . 8

Vivado Lab Edition の使用 . . . 9

Vivado Lab Edition プ ロ ジ ェ ク ト . . . 10

プ ロ グ ラ ム機能 . . . 12 デバ ッ グ機能 . . . 13

第 3 章 : ビ ッ ト ス ト リ ームの生成

ビ ッ ト ス ト リ ーム フ ァ イ ルのフ ォーマ ッ ト 設定の変更 . . . 15 デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム設定の変更 . . . 15

第 4 章 : FPGA デバイ スのプ ログ ラム

ハー ド ウ ェ ア マネージ ャーを開 く . . . 17 ハー ド ウ ェ ア ターゲ ッ ト 接続を開 く . . . 18 hw_server を使用 し たハー ド ウ ェ ア ターゲ ッ ト への接続 . . . 19 新 し いハー ド ウ ェ ア ターゲ ッ ト を開 く . . . 19 ハー ド ウ ェ ア ターゲ ッ ト の ト ラ ブルシ ューテ ィ ン グ . . . 22 プ ロ グ ラ ム フ ァ イ ルをハー ド ウ ェ ア デバ イ ス に関連付け . . . 24 ハー ド ウ ェ ア デバ イ ス のプ ロ グ ラ ム . . . 25 ハー ド ウ ェ ア ターゲ ッ ト を閉 じ る . . . 26 ハー ド ウ ェ ア サーバーへの接続を閉じ る . . . 26 低い JTAG ク ロ ッ ク 周波数での ターゲ ッ ト デバ イ スへの接続 . . . 27 JTAG チ ェーンに 32 個を超え るデバ イ ス を含むサーバーへの接続 . . . 28 Vivado での リ モー ト デバ ッ グ. . . 28

第 5 章 : コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバイ スのプ ログ ラム

コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス で使用する ビ ッ ト ス ト リ ームの生成 . . . 33 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イ ルの作成 . . . 34 Vivado でハー ド ウ ェ ア ターゲ ッ ト に接続. . . 34 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス の追加 . . . 35 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス のプ ロ グ ラ ム . . . 37 デバ イ ス の起動 . . . 39

第 6 章 : ア ド バン ス プ ログ ラム機能

リ ー ド バ ッ ク お よ び検証 . . . 40

(4)

シ ス テ ム モニ ター . . . 52

第 7 章 : デザイ ンのデバ ッ グ

RTL レベル デザ イ ン シ ミ ュ レーシ ョ ン . . . 53 イ ンプ リ メ ン テーシ ョ ン後のデザ イ ン シ ミ ュ レーシ ョ ン . . . 53 イ ン シ ス テ ム ロ ジ ッ ク デザ イ ンのデバ ッ グ . . . 54 イ ン シ ス テ ム シ リ アル I/O デザ イ ンのデバ ッ グ . . . 54

第 8 章 : イ ン システム ロ ジ ッ ク デザイ ンのデバ ッ グ フ ロー

イ ン シ ス テ ム デバ ッ グ用のデザ イ ンのプ ローブ . . . 55 ネ ッ ト リ ス ト 挿入デバ ッ グ プ ローブ フ ロー . . . 56 HDL イ ン ス タ ン シエーシ ョ ン デバ ッ グ プ ローブ フ ローの概要 . . . 69 HDL イ ン ス タ ン シエーシ ョ ン デバ ッ グ プ ローブ フ ロー . . . 69 デバ ッ グ コ ア を含むデザ イ ンの イ ンプ リ メ ン テーシ ョ ン . . . 73

第 9 章 : ハー ド ウ ェ アでのロ ジ ッ ク デザイ ンのデバ ッ グ

Vivado ロ ジ ッ ク 解析を使用 し たデザ イ ンのデバ ッ グ . . . 74 ハー ド ウ ェ ア ターゲ ッ ト に接続 し て FPGA デバ イ ス をプ ロ グ ラ ム . . . 74 Vivado ハー ド ウ ェ ア マネージ ャーのダ ッ シ ュ ボー ド . . . 75 計測のための ILA コ アの設定 . . . 84 ILA プ ローブ情報の記述. . . 99 ILA プ ローブ情報の読み出 し . . . 99 ILA コ アか ら のデータ を波形ビ ューアーで表示. . . 99 ILA コ アでキ ャ プチ ャ さ れたデータ の保存および復元. . . 100 プ ロ ーブ値の列挙名 . . . 101 計測のための VIO コ アの設定 . . . 108 VIO コ アの ス テータ ス の表示 . . . 110 VIO コ アの出力プ ローブ . . . 113 JTAG-to-AXI Master デバ ッ グ コ ア を使用 し たハー ド ウ ェ ア シ ス テ ム通信. . . 115 ラ ボ環境での Vivado ロ ジ ッ ク 解析の使用. . . 117 ハー ド ウ ェ ア マネージ ャーの Tcl オブジ ェ ク ト およびコ マン ド . . . 118 Tcl コ マン ド を使用 し た JTAG-to-AXI Master コ アへのア ク セ ス . . . 122 ILA を測定する Tcl コ マン ド の使用 . . . 123 ス タ ー ト ア ッ プ時の ト リ ガー . . . 124

第 10 章 : 波形ビ ュ ーアーを使用 し た ILA プ ローブ デー タ の表示

概要 . . . 125 波形 コ ン フ ィ ギ ュ レーシ ョ ンのカ ス タ マ イ ズ . . . 129 オブジ ェ ク ト 名の変更 . . . 132 バス の基数 . . . 134 アナ ロ グ波形の表示 . . . 135 ズーム機能 . . . 136

第 11 章 : イ ン システム シ リ アル I/O デバ ッ グ フ ロー

概要 . . . 138 Vivado IP カ タ ロ グ を使用 し た IBERT コ アの生成 . . . 138 IBERT サンプル デザ イ ンの生成 と イ ンプ リ メ ン テーシ ョ ン . . . 140

(5)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 5 UG908 (v2015.4) 2016 年 2 月 2 日

付録 A : デバイ ス コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム設定

7 シ リ ーズおよび Zynq-7000 のビ ッ ト ス ト リ ーム設定 . . . 155 UltraScale ビ ッ ト ス ト リ ーム設定 . . . 161

付録 B : ト リ ガー ステー ト マシ ンの言語記述

ス テー ト . . . 168 goto ア ク シ ョ ン . . . 168 条件分岐 . . . 169 カ ウ ン タ ー . . . 169 フ ラ グ . . . 170 条件文 . . . 170

付録 C : コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ のサポー ト

Artix-7 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス . . . 175 Kintex-7 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス . . . 177 Virtex-7 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス . . . 180 Kintex UltraScale コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス. . . 182 Virtex UltraScale コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス . . . 184 Zynq-7000 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス . . . 187

付録 D : その他のソ ースおよび法的通知

ザ イ リ ン ク ス リ ソ ース . . . 189 ソ リ ュ ーシ ョ ン セン ター . . . 189 参考資料 . . . 189 ト レーニ ン グ コース . . . 190 お読み く だ さ い : 重要な法的通知 . . . 191

(6)

概要

概要

デザ イ ン を イ ン プ リ メ ン ト し た ら 、FPGA デバ イ ス を プ ロ グ ラ ム し、 デザ イ ン を イ ン シ ス テ ム でデバ ッ グ し なが ら

ハー ド ウ ェ アでデザ イ ン を実行 し ます。FPGA デバ イ ス のプ ロ グ ラ ムおよびイ ン シ ス テ ム デバ ッ グの実行に必要な コ

マ ン ド はすべて、Vivado® 統合設計環境 (IDE) の Flow Navigator の [Program and Debug] にあ り ます (1-1)。

X-Ref Target - Figure 1-1

(7)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 7 UG908 (v2015.4) 2016 年 2 月 2 日

デバ ッ グ用語集

ILA : ILA (Integrated Logic Analyzer) 機能を使用する と 、 FPGA デバ イ ス の イ ンプ リ メ ン ト 後のデザ イ ン を イ ン シ ス テ

ムでデバ ッ グで き ます。 こ の機能は、 デザ イ ン で信号を監視す る 必要があ る 場合に使用 し ます。 ハー ド ウ ェ ア イベン

ト を ト リ ガー し 、 デー タ を シ ス テ ム速度でキ ャ プチ ャ す る ために も 使用で き ます。

ILA コ アは、 RTL コー ド に イ ン ス タ ン シエー ト する か、 Vivado デザ イ ン フ ローの合成後の段階で挿入 し ます。 ILA コ

アの詳細お よ びその Vivado Design Suite での使用方法は、第8 章お よ び第9 章を参照 し て く だ さ い。ILA コ ア IP の詳

細は、 『LogiCORE IP Integrated Logic Analyzer 製品ガ イ ド 』 (PG172) [参照 18] を参照し て く だ さ い。

VIO : VIO (Virtual Input/Output) は、内部 FPGA 信号を リ アル タ イ ムに監視および駆動で き るデバ ッ グ機能です。 ター

ゲ ッ ト ハー ド ウ ェ アへの物理的なア ク セ ス がない場合は、 こ のデバ ッ グ機能を使用し て、実際のハー ド ウ ェ アにあ る

信号を駆動お よ び監視で き ます。

こ のデバ ッ グ コ アは RTL コー ド に イ ン ス タ ン シエー ト する必要があ る ので、 どのネ ッ ト を駆動する のか前 も っ て決

めてお く 必要があ り ます。こ の コ アは IP カ タ ロ グの Debug カ テ ゴ リ に含まれます。VIO コ アの詳細およびその Vivado

Design Suite での使用方法は、第9 章を参照 し て く だ さ い。VIO コ ア IP の詳細は、 『LogiCORE IP Virtual Input/Output

製品ガ イ ド 』 (PG 159) [参照 14] を参照 し て く だ さ い。

IBERT : IBERT (Integrated Bit Error Ratio Tester) Serial Analyzer デザ イ ン を使用する と 、 イ ン シ ス テ ム シ リ アル I/O の

検証お よ びデバ ッ グが可能にな り ます。 こ の機能を使用す る と 、FPGA ベース シ ス テ ムの高速シ リ アル I/O リ ン ク を

計測お よ び最適化で き ま す。 単純な ク ロ ッ ク や接続の問題か ら 複雑なマージ ン解析お よ びチ ャ ネル最適化の問題 ま で、 さ ま ざ ま な イ ン シ ス テ ム デバ ッ グおよび検証の問題を解決する には、 IBERT Serial Analyzer デザ イ ン を使用する

こ と をお勧め し ます。

IBERT Serial Analyzer デザ イ ンは、受信信号にレ シーバー イ コ ラ イ ゼーシ ョ ンが適用 さ れた後の信号の質を計測する た

めに も 使用で き ます。 こ れに よ り 、TX か ら RX へのチャ ネルの最適なポ イ ン ト 、 つま り 実際の正し いデータ が計測 さ

れます。 こ のデザ イ ンには、IP カ タ ロ グか ら IBERT コ ア を選択、 設定、 生成し て、 こ の コ アの [Open Example Design]

を選択す る と ア ク セ ス で き ま す。IBERT コ アの詳細お よ びその Vivado Design Suite での使用方法は、第11 章お よ び

第12 章を参照 し て く だ さ い。 使用可能な さ ま ざ ま な IBERT デザ イ ンの詳細は、 『LogiCORE IP IBERT for 7 Series GTX

Transceivers 製品ガ イ ド 』 (PG132) [参照 15]、 『LogiCORE IP IBERT for 7 Series GTP Transceivers 製品ガ イ ド 』 (PG133) [参

照16]、 『LogiCORE IP IBERT for 7 Series GTH Transceivers 製品ガ イ ド 』 (PG152) [参照 17] を参照し て く だ さ い。

JTAG-to-AXI Master : JTAG-to-AXI Master デバ ッ グ機能は、ハー ド ウ ェ アで動作中の さ ま ざ ま な AXI フルおよび AXI

Lite ス レーブ コ ア と 通信す る AXI ト ラ ンザ ク シ ョ ン を生成する ために使用 さ れます。 AXI ト ラ ンザ ク シ ョ ン を生成

し 、 ラ ン タ イ ムに FPGA 内部で AXI 信号をデバ ッ グおよび駆動する には、 こ の コ ア を使用する こ と をお勧め し ます。

こ の コ アは、 プ ロ セ ッ サのないデザ イ ンでで も 使用で き ます。

こ の コ アは IP カ タ ロ グの Debug カ テ ゴ リ に含まれます。 VIO コ アの詳細お よ びその Vivado Design Suite での使用方

法は、第9 章を参照 し て く だ さ い。JTAG-to-AXI コ アの詳細は、 『LogiCORE IP JTAG to AXI Master v1.0 製品ガ イ ド 』

(PG174) [参照 19] を参照 し て く だ さ い。

デバ ッ グ ハブ : Vivado デバ ッ グ ハブ コ アは、FPGA デバ イ ス の JTAG バ ウ ンダ リ ス キ ャ ン (BSCAN) イ ン ターフ ェ イ

ス と 、 次の タ イ プの コ ア を含む Vivado デバ ッ グ コ ア と の間の イ ン ターフ ェ イ ス を提供 し ます。

• ILA (Integrated Logic Analyzer)

• VIO (Virtual Input/Output)

• IBERT (Integrated Bit Error Ratio Test)

• JTAG-to-AXI

• メ モ リ IP

重要: Vivado デバ ッ グ ハブ コ アをデザ イ ンに イ ン ス タ ンシエー ト する こ と はで き ません。 こ れは opt_design の段

(8)

Vivado Lab Edition

Vivado® Lab Edition は フ ル バージ ョ ン の Vivado Design Suite を ス タ ン ド ア ロ ン に イ ン ス ト ールで き る エデ ィ シ ョ ン

で、 ザ イ リ ン ク ス FPGA のビ ッ ト ス ト リ ーム を生成 し た後に、 FPGA をプ ロ グ ラ ムおよびデバ ッ グする のに必要なす

べての機能を備え てい ます。 マシ ンのデ ィ ス ク 容量、 メ モ リ 、 コ ネ ク テ ィ ビ テ ィ に関 し てマシ ン リ ソ ース が少ない ラ

ボ環境でのプ ロ グ ラ ムお よ びデバ ッ グに使用す る のが一般的です。Vivado Lab Editon は イ ン ス ト ール パ ッ ケージ サ

イ ズが 1GB、 イ ン ス ト ール後にハー ド デ ィ ス ク を占め る容量は約 1.3GB と 軽量です。

イ ン ス ト ール

Vivado Lab Edition を イ ン ス ト ールする には、 Lab Edition イ ン ス ト ー ラ ーが必要です。

詳細な イ ン ス ト ール、 ラ イ セ ン ス、 お よ び リ リ ース情報は、 『Vivado Design Suite ユーザー ガ イ ド : リ リ ース ノ ー ト 、

イ ン ス ト ールお よ び ラ イ セ ン ス』 (UG973) [参照 5] を参照 し て く だ さ い。

Windows での Vivado Lab Edition の起動

Vivado Lab Edition を起動する には、 次の順に ク リ ッ ク し て く だ さ い。

[ス ター ト ] → [すべてのプ ロ グ ラ ム] → [Xilinx Design Tools] → [Vivado Lab 2015.4] → [Vivado Lab 2015.4]

Windows または Linux の コ マ ン ド ラ イ ンか ら の Vivado Lab Edition

の起動

コ マ ン ド プ ロ ンプ ト に次の コ マン ド を入力 し ます。 vivado_lab ヒ ン ト : コ マン ド プ ロ ンプ ト で vivado_lab を実行するには、 使用する OS に応じ て、 次のいずれかのス ク リ プ ト を使 用 し て環境を設定 し ます。 C:\Xilinx\Vivado_Lab\2015.4\settings32.(bat|sh) C:\Xilinx\Vivado_Lab\2015.4\settings64.(bat|sh)

推奨: Vivado Lab Edition はどのデ ィ レ ク ト リ か ら で も起動で き ますが、 ロ グ フ ァ イルおよびジ ャーナル フ ァ イルが

起動デ ィ レ ク ト リ に書 き 込まれ る ので、書 き 込み権限のあ る プ ロ ジ ェ ク ト デ ィ レ ク ト リ か ら 実行する こ と をお勧め し

ま す。 コ マ ン ド プ ロ ン プ ト か ら 実行す る 場合、 プ ロ ジ ェ ク ト デ ィ レ ク ト リ か ら Vivado IDE を 起動す る か、

vivado_lab -log および -journal オプシ ョ ン を使用 し てデ ィ レ ク ト リ を指定 し ます。 Windows シ ョ ー ト カ ッ ト

を使用す る 場合は、 シ ョ ー ト カ ッ ト を右 ク リ ッ ク し て [プ ロ パテ ィ ] を ク リ ッ ク し、 [作業フ ォ ルダー ] を変更する必

要があ り ます。 書 き 込み権限のないプ ロ ジ ェ ク ト デ ィ レ ク ト リ か ら 起動する と 、 ツールか ら 警告 メ ッ セージが表示 さ

(9)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 9 UG908 (v2015.4) 2016 年 2 月 2 日

Vivado Lab Edition の使用

Vivado Lab Edition を起動する と 、Vivado Lab Edition を使用 し始め る のに役立つ さ ま ざ ま な リ ン ク を含む Getting Started

ページ (図2-1) が表示 さ れます。

プ ロ ジ ェ ク ト の開始

デザ イ ン をプ ロ グ ラ ム ま たはデバ ッ グす る には、 プ ロ ジ ェ ク ト を作成す る か開 き 、 タ ーゲ ッ ト サーバーおよびデバ イ

ス に接続 し ます。Getting Started ページの [Quick Start] セ ク シ ョ ンには、 次の タ ス ク に簡単にア ク セ ス で き る リ ン ク が

表示 さ れます。

• 新規プ ロ ジ ェ ク ト を作成す る ためのダ イ ア ロ グ ボ ッ ク ス でプ ロ ジ ェ ク ト を作成

• 既存プ ロ ジ ェ ク ト を開 く

注記 : [Recent Projects] リ ス ト か ら 最近開いたプ ロ ジ ェ ク ト を開 く こ と も で き ます。

ハー ド ウ ェ ア マネージ ャ ーを開 く

Vivado Design Suite ハー ド ウ ェ ア マネージ ャ ーを開 く と 、デザ イ ン ビ ッ ト ス ト リ ーム をデバ イ ス にダ ウ ン ロー ド で き

ます。Vivado ロ ジ ッ ク 解析機能および Vivado シ リ アル I/O 解析機能を使用する と 、 デザ イ ン をデバ ッ グで き ます。 た

と えば、ILA、 VIO および JTAG-to-AXI コ ア をデザ イ ンに追加し て Vivado ロ ジ ッ ク 解析機能でデバ ッ グ し た り 、 ザ イ

リ ン ク ス IP カ タ ロ グか ら IBERT サンプル デザ イ ン を使用し、 Vivado シ リ アル I/O 解析機能で GT を テ ス ト およびコ

ン フ ィ ギ ュ レーシ ョ ン し た り で き ます。

X-Ref Target - Figure 2-1

(10)

資料およびビデオ

Getting Started ページか ら Xilinx Documentation Navigator を使用し て、 ユーザー ガ イ ド 、 チ ュー ト リ アル、 ビデオ、 リ リ ース ノ ー ト な どの資料にア ク セ ス で き ます。

Vivado Lab Edition プ ロ ジ ェ ク ト

Vivado Lab Edition を使用する と 、 ラ ボ環境でプ ロ ジ ェ ク ト を作成で き ます。 プ ロ グ ラ ムおよび ラ ン タ イ ム デバ ッ グ に関す る すべてのプ リ フ ァ レ ン スや基本設定はプ ロ ジ ェ ク ト に保存 さ れます。 プ ロ ジ ェ ク ト を開 き 直す と 、 設定お よ びプ リ フ ァ レ ン ス が復元 さ れます。Vivado Lab Edition プ ロ ジ ェ ク ト は、Vivado Lab Edition ツールおよび Vivado Design Suite の両方で作成で き ます。

新規プ ロ ジ ェ ク ト の作成

Vivado Lab Edition で新 し く プ ロ ジ ェ ク ト を作成する には、 Getting Started ページで [Create New Project] を ク リ ッ ク し

ます。[New Vivado Lab Edition Project] ダ イ ア ロ グ ボ ッ ク ス にプ ロ ジ ェ ク ト 名およびデ ィ レ ク ト リ を入力し ます。新 し

いプ ロ ジ ェ ク ト を作成す る と 、Vivado Lab Edition に よ り プ ロ ジ ェ ク ト フ ァ イ ルが作成 さ れます。 こ のプ ロ ジ ェ ク ト

フ ァ イ ルには、[New Vivado Lab Edition Project] ダ イ ア ロ グ ボ ッ ク ス で入力 し たプ ロ ジ ェ ク ト 名 と 同 じ 名前が付け ら

れ、 .lpr と い う 拡張子が付き ます。図2-2 を参照 し て く だ さ い。

X-Ref Target - Figure 2-2

(11)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 11 UG908 (v2015.4) 2016 年 2 月 2 日

Tcl コ マ ン ド を使用 し た プ ロ ジ ェ ク ト の作成

プ ロ ジ ェ ク ト は、Tcl コ マン ド を使用 し て も 作成で き ます。 Vivado Lab Edition の [Tcl Console] ウ ィ ン ド ウ に次の コ マ

ン ド を入力す る か、 source コ マン ド を使用 し て Tcl フ ァ イ ルか ら 読み込みます。 create_project project_1 C:/Lab_edition/project_1

プ ロ ジ ェ ク ト を開 く

既存のプ ロ ジ ェ ク ト を開 く には、Getting Started ページで [Open Project] を ク リ ッ ク する か (図2-3)、[Recent Projects] リ

ス ト にあ る プ ロ ジ ェ ク ト を ダブル ク リ ッ ク し ます。Vivado Lab Edition プ ロ ジ ェ ク ト フ ァ イ ル (.lpr) を開 く ダ イ ア ロ

グ ボ ッ ク ス が表示 さ れます。 [Recent Projects] リ ス ト には、 デフ ォル ト で 10 個のプ ロ ジ ェ ク ト が表示 さ れます。 こ の

数は、[Tools] → [Options] の [General] ページで変更で き ま す。 プ ロ ジ ェ ク ト が表示 さ れ る 前に、 そのプ ロ ジ ェ ク ト

デー タ が存在す る か ど う かが確認 さ れます。

Tcl コ マ ン ド を使用 し て プ ロ ジ ェ ク ト を開 く

プ ロ ジ ェ ク ト は Tcl コ マン ド を使用 し て開 く こ と も で き ます。 Vivado Lab Edition の [Tcl Console] ウ ィ ン ド ウ に次の コ

マ ン ド を入力す る か、 source コ マン ド を使用 し て Tcl フ ァ イ ルか ら 読み込みます。 open_project C:/Lab_edition/project_1/project_1.lpr

X-Ref Target - Figure 2-3

(12)

Vivado Lab Edition で既存のビ ッ ト ス ト リ ーム (.bit) およびデバ ッ グ

プ ローブ (.ltx) フ ァ イルを使用

Vivado Lab Edition が イ ン ス ト ール さ れてい る ラ ボ マシ ンで、 以前に実行 し た イ ンプ リ メ ン テーシ ョ ン run の既存の .bit フ ァ イ ルおよび .ltx フ ァ イ ルを使用で き ます。

一般的な フ ロ ーは次の と お り です。

• Vivado Lab Edition プ ロ ジ ェ ク ト を新 し く 作成 し ます。

• ボー ド に接続 し ます。 • プ ロ ジ ェ ク ト の .bit フ ァ イ ルおよび .ltx フ ァ イ ルを指定 し ます。 注記 : フ ァ イ ルを手動で コ ピーする か、 ネ ッ ト ワー ク ド ラ イ ブにあ る フ ァ イ ルを参照で き ます。 • デバ イ ス をプ ロ グ ラ ム し ます。 • ハー ド ウ ェ アでデザ イ ン をデバ ッ グ し ます。 • 変更はプ ロ ジ ェ ク ト に継続的に保存 さ れます。 • ユーザー プ リ フ ァ レ ン ス、 ラ ン タ イ ム マネージ ャー デバ ッ グ ダ ッ シ ュ ボー ド 、 ウ ィ ン ド ウ設定は、 継続的にプ ロ ジ ェ ク ト に保存 さ れます。 • ユーザー プ リ フ ァ レ ン ス、 ラ ン タ イ ム マネージ ャー デバ ッ グ ダ ッ シ ュ ボー ド 、 ウ ィ ン ド ウ設定は、 プ ロ ジ ェ ク ト を再度開いた と き に復元 さ れます。

Vivado Design Suite か らの既存の .lpr プ ロ ジ ェ ク ト を使用

Vivado Design Suite では、 プ ロ ジ ェ ク ト の開始時に .lpr フ ァ イ ルが作成 さ れ、 ハー ド ウ ェ ア マネージ ャーを使用 し てプ ロ ジ ェ ク ト のデザ イ ン を プ ロ グ ラ ム ま たはデバ ッ グす る と き に、 こ の フ ァ イ ルに適切な詳細情報が記述 さ れ ま す。 こ の フ ァ イ ルは、 project_name.hw デ ィ レ ク ト リ に project_name.lpr と い う 名前で保存 さ れます。 こ の

プ ロ ジ ェ ク ト フ ァ イ ルを Vivado Lab Edition で開 く こ と がで き ます。

一般的な フ ロ ーは次の と お り です。

• Vivado Lab Edition の Getting Started ページで [Open Project] を ク リ ッ ク し ます。

• Vivado IDE プ ロ ジ ェ ク ト デ ィ レ ク ト リ にあ る project_name.hw デ ィ レ ク ト リ に移動 し ます。

• project_name.hw デ ィ レ ク ト リ 内にあ る .lpr プ ロ ジ ェ ク ト フ ァ イ ルを選択 し、 [OK] を ク リ ッ ク し ます。

• ハー ド ウ ェ アに接続 し ます。

• 該当す る Vivado の run デ ィ レ ク ト リ のか ら 正 し い .bit フ ァ イ ルおよび .ltx フ ァ イ ルを使用 し てプ ロ グ ラ ムおよび

デバ ッ グ を実行 し ます。

• ユーザー プ リ フ ァ レ ン ス、 ラ ン タ イ ム マネージ ャー デバ ッ グ ダ ッ シ ュ ボー ド 、 ウ ィ ン ド ウ設定は、 プ ロ ジ ェ ク

ト を開いた と き に復元 さ れます。

プ ロ グ ラ ム機能

プ ロ ジ ェ ク ト を開 き 、 ハー ド ウ ェ ア マネージ ャーを ターゲ ッ ト デバ イ ス に接続 し た ら 、 Vivado Design Suite で使用で

き る すべてのプ ロ グ ラ ム機能を Vivado Lab Edition か ら 使用で き ます。プ ロ グ ラ ム関連の Tcl コ マン ド はすべて Vivado

Lab Edition でサポー ト さ れてい ます。 プ ロ グ ラ ム機能の詳細は、第5 章 「コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス

(13)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 13 UG908 (v2015.4) 2016 年 2 月 2 日

デバ ッ グ機能

プ ロ ジ ェ ク ト を開 き 、 ハー ド ウ ェ ア マネージ ャーを ターゲ ッ ト デバ イ ス に接続 し た ら 、 Vivado Design Suite で使用で

き る すべてのデバ ッ グ機能を Vivado Lab Edition か ら 使用で き ます。デバ ッ グ関連の Tcl コ マン ド はすべて Vivado Lab

Edition でサポー ト さ れてい ます。 デバ ッ グ機能の詳細は、第9 章 「ハー ド ウ ェ アでの ロ ジ ッ ク デザ イ ンのデバ ッ グ」

(14)

ビ ッ ト ス ト リ ームの生成

ビ ッ ト ス ト リ ーム デー タ フ ァ イ ルを生成する前に、 ビ ッ ト ス ト リ ーム設定が正 し いかど う かを確認する こ と が重要 です。 Vivado® IDE には、 次の 2 つのビ ッ ト ス ト リ ーム設定があ り ます。 1. ビ ッ ト ス ト リ ーム フ ァ イ ルのフ ォーマ ッ ト 設定 2. デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン設定

Flow Navigator の [Bitstream Settings] を ク リ ッ ク す る か、 [Flow] → [Bitstream Settings] を ク リ ッ ク す る と 、 [Project

Settings] ダ イ ア ロ グ ボ ッ ク ス の [Bitstream] ページが開き ます (図3-1)。 ビ ッ ト ス ト リ ーム設定が正 し い こ と を確認 し

た ら 、write_bistream Tcl コ マン ド ま たは Flow Navigator の [Generate Bitstream] を使用し て ビ ッ ト ス ト リ ーム デー タ フ ァ イ ルを生成で き ます。

X-Ref Target - Figure 3-1

(15)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 15 UG908 (v2015.4) 2016 年 2 月 2 日

ビ ッ ト ス ト リ ーム フ ァ イルのフ ォーマ ッ ト 設定の変更

デフ ォ ル ト では、 write_bistream Tcl コ マン ド でバ イ ナ リ ビ ッ ト ス ト リ ーム フ ァ イ ル (.bit) が生成 さ れます。 生 成 さ れ る フ ァ イ ルの フ ォーマ ッ ト を変更す る には、 次のオプシ ョ ン を使用 し ます。 • -raw_bitfile (オプシ ョ ン) : ロー ビ ッ ト フ ァ イ ル (.rbt) を生成 し ます。 ロー ビ ッ ト フ ァ イ ルには、 バ イ ナ リ ビ ッ ト ス ト リ ーム フ ァ イ ル と 同 じ 情報が ASCII 形式で含まれます。 出力フ ァ イ ル名は filename.rbt と な り ます。 • -mask_file (オプシ ョ ン) : マ ス ク フ ァ イ ル (.msk) を生成し ます。 マ ス ク フ ァ イ ルには、 ビ ッ ト ス ト リ ーム フ ァ イ ルの コ ン フ ィ ギ ュ レーシ ョ ン データ が含まれる場所を示すマ ス ク デー タ が含まれます。 こ のフ ァ イ ルは、 検証時にビ ッ ト ス ト リ ームの ど の ビ ッ ト を リ ー ド バ ッ ク データ と 比較するべき かを判断する ために使用 し ます。 マ ス ク ビ ッ ト が 0 の場合はその ビ ッ ト はビ ッ ト ス ト リ ーム デー タ に対 し て検証 さ れ、 1 の場合は検証 さ れませ ん。 出力フ ァ イ ル名は file.msk と な り ます。 • -no_binary_bitfile (オプシ ョ ン) : バ イ ナ リ ビ ッ ト ス ト リ ーム フ ァ イ ル (.bit) を生成 し ません。 こ のオプ シ ョ ンは、 バ イ ナ リ ビ ッ ト ス ト リ ーム フ ァ イ ルを生成せずに、 ASCII 形式のビ ッ ト ス ト リ ーム フ ァ イ ルま たは マ ス ク フ ァ イ ルを生成 し た り 、 ビ ッ ト ス ト リ ーム レ ポー ト を生成 し た り する場合に使用 し ます。

• -logic_location_file (オプシ ョ ン) : ラ ッ チ、 フ リ ッ プフ ロ ッ プ、 LUT、 ブ ロ ッ ク RAM、 I/O ブ ロ ッ ク 入力

お よ び出力の ビ ッ ト ス ト リ ーム位置を示す ASCII 形式の ロ ジ ッ ク ロ ケーシ ョ ン フ ァ イ ル (.ll) を生成 し ます。 こ の ロ ケーシ ョ ン フ ァ イ ルではビ ッ ト がフ レームおよびビ ッ ト 番号で示 さ れる ので、FPGA レ ジ ス タ の内容を調 べ る のに役立ち ます。 • -bin_file (オプシ ョ ン) : デバ イ ス プ ロ グ ラ ム データ のみを含むバ イ ナ リ フ ァ イ ル (.bin) を生成 し ます。 通 常のビ ッ ト ス ト リ ーム フ ァ イ ル (.bit) に含まれ るヘ ッ ダー情報は含まれません。 • -reference_bitfile <arg> (オプシ ョ ン) : リ フ ァ レ ン ス ビ ッ ト ス ト リ ーム フ ァ イ ルを読み込み、 指定 し た リ フ ァ レ ン ス フ ァ イ ルか ら の変更部分のみを含む イ ン ク リ メ ン タ ル ビ ッ ト ス ト リ ーム フ ァ イ ルを生成 し ます。 こ のパーシ ャ ル ビ ッ ト ス ト リ ームは、既存のデバ イ ス を ア ッ プデー ト さ れたデザ イ ンで イ ン ク リ メ ン タ ルにプ ロ グ ラ ムす る 場合に使用で き ます。

デバイ ス コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ー

ム設定の変更

コ ン フ ィ ギ ュ レーシ ョ ン設定で最 も 頻繁に変更 さ れ る のは、 デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン設定です。 こ れ ら の設 定はデバ イ ス モデルのプ ロ パテ ィ で あ り 、 選択 し た合成済み ま たは イ ン プ リ メ ン ト 済みデザ イ ン ネ ッ ト リ ス ト の

[Edit Device Properties Properties] ダ イ ア ロ グ ボ ッ ク ス で変更 し ます。 こ の方法で さ ま ざ ま な ビ ッ ト ス ト リ ーム プ ロ パ テ ィ を変更す る には、 次の手順に従い ます。

1. [Tools] → [Edit Device Properties] を ク リ ッ ク し ます。

(16)

ヒ ン ト : 検索フ ィ ール ド にプ ロパテ ィ を入力し ます。 た と えば、 JTAG プ ロ グ ラ ムに関連する プ ロパテ ィ を検索およ び選択す る には、 「jtag」 と 入力 し ます。

3. プ ロ パテ ィ に値を設定 し 、[OK] を ク リ ッ ク し ます。

4. [File] → [Save Constraints] を ク リ ッ ク し、 ア ッ プデー ト し た制約を ターゲ ッ ト XDC フ ァ イ ルに保存し ます。

ビ ッ ト ス ト リ ーム プ ロ パテ ィ は、XDC フ ァ イ ルで set_property コ マン ド を使用 し て設定する こ と も 可能です。次

の例では、 ス タ ー ト ア ッ プ DONE サ イ ク ル プ ロ パテ ィ を変更し てい ます。

set_property BITSTREAM.STARTUP.DONE_CYCLE 4 [current_design]

その他の例は、Vivado テ ンプレー ト に含まれてい ます。付録A 「デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ー

ム設定」 に、 すべてのデバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン設定が説明 さ れてい ます。

X-Ref Target - Figure 3-2

(17)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 17 UG908 (v2015.4) 2016 年 2 月 2 日

FPGA デバイ スのプ ログ ラ ム

ビ ッ ト ス ト リ ー ム デー タ プ ロ グ ラ ム フ ァ イ ル を生成 し た ら 、 タ ーゲ ッ ト FPGA デバ イ ス にダ ウ ン ロ ー ド し ま す。

Vivado® IDE には、 こ の作業を行 う ための イ ン シ ス テ ム デバ イ ス プ ロ グ ラ ミ ン グ機能があ り ます。

Vivado Design Suite お よ び Vivado Lab Edition には、 1 つ以上の FPGA デバ イ ス を含むハー ド ウ ェ アに接続 し、 その FPGA デバ イ ス をプ ロ グ ラ ム し て ア ク セ スする機能が含まれてい ます。 ハー ド ウ ェ アへの接続は、 Vivado Lab edition

ま たは Vivado Design Suite の GUI、 ま たは Tcl コ マ ン ド で実行で き ます。 ど ち ら の場合 も 、 ハー ド ウ ェ アに接続 し、

タ ーゲ ッ ト FPGA デバ イ ス をプ ロ グ ラ ムする手順は同 じ です。 1. ハー ド ウ ェ ア マネージ ャーを開き ます。 2. ホ ス ト コ ン ピ ュ ー タ ー上で稼働中のハー ド ウ ェ ア サーバーで制御 さ れてい る ハー ド ウ ェ ア タ ーゲ ッ ト を開 き ま す。 3. ビ ッ ト ス ト リ ーム データ プ ロ グ ラ ム フ ァ イ ルを適切な FPGA デバ イ ス に関連付け ます。 4. プ ロ グ ラ ム フ ァ イ ルをハー ド ウ ェ ア デバ イ ス にプ ロ グ ラ ム (ダ ウ ン ロー ド ) し ます。

ハー ド ウ ェ ア マネージ ャ ーを開 く

デザ イ ン をハー ド ウ ェ アにプ ロ グ ラ ム し た り デバ ッ グす る には、 まずハー ド ウ ェ ア マネージ ャ ーを開き ます。ハー ド ウ ェ ア マネージ ャーを開 く には、 次のいずれかを実行 し ます。

• プ ロ ジ ェ ク ト を開いてい る 場合は、Flow Navigator で [Program and Debug] → [Open Hardware Manager] を ク リ ッ ク

し ます。

• [Flow] → [Open Hardware Manager] を ク リ ッ ク し ます。

(18)

ハー ド ウ ェ ア タ ーゲ ッ ト 接続を開 く

次に、 ハー ド ウ ェ ア ターゲ ッ ト (1 つ以上の FPGA デバ イ ス で構成 さ れる JTAG チ ェーン を含むハー ド ウ ェ ア ボー ド

な ど) を開き、 ハー ド ウ ェ ア ターゲ ッ ト への接続を制御する ハー ド ウ ェ ア サーバーに接続し ます。 こ れには、 次のい

ずれか を実行 し ます。

• Flow Navigator で [Program and Debug] → [Hardware Manager] → [Open Target] を ク リ ッ ク し、 新規ま たは最近の

ハー ド ウ ェ ア ターゲ ッ ト を開き ます (図4-1)。

• Hardware Manager 環境の上部にあ る緑のユーザー アシ ス タ ン ス バナーの [Open Target] → [Open recent target] ま

たは [Open Target] → [Open New Target] を ク リ ッ ク し 、 最近開いた、 ま たは新 し いハー ド ウ ェ ア ターゲ ッ ト を開

き ます (図4-2 を参照)。

• Tcl コ マン ド を使用 し て、 ハー ド ウ ェ ア ターゲ ッ ト への接続を開き ます。

ヒ ン ト : [Auto Connect] を使用する と 、 ローカル ハー ド ウ ェ ア ターゲ ッ ト に自動的に接続されます。

X-Ref Target - Figure 4-1

図 4-1 : Flow Navigator からハー ド ウ ェ ア タ ーゲ ッ ト を開 く

X-Ref Target - Figure 4-2

(19)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 19 UG908 (v2015.4) 2016 年 2 月 2 日

hw_server を使用 し たハー ド ウ ェ ア タ ーゲ ッ ト への

接続

hw_server でサポー ト さ れる互換性のあ る JTAG ダ ウ ン ロー ド ケーブルおよびデバ イ スは、 次の と お り です。 • ザ イ リ ン ク ス プ ラ ッ ト フ ォーム ケーブル USB II (DLC10) • ザ イ リ ン ク ス プ ラ ッ ト フ ォーム ケーブル USB (DLC9G、 DLC9LP、 DLC9) • Digilent 社 JTAG-HS1 • Digilent 社 JTAG-HS2 • Digilent 社 JTAG-HS3 • Digilent 社 JTAG-SMT1 • Digilent 社 JTAG-SMT2

ロ ーカル マシ ン上の ターゲ ッ ト に接続する と 、Vivado に よ り hw_server が自動的に実行 さ れます。hw_server は、

ロ ーカル マシ ン ま たは リ モー ト マシ ン上で手動で実行する こ と も で き ます。 Windows プ ラ ッ ト フ ォーム上の Vivado フル イ ン ス ト ールでは、 コ マン ド プ ロ ンプ ト で次の コ マン ド を実行 し ます。 C:\Xilinx\Vivado\<Vivado_version>\bin\hw_server.bat Windows プ ラ ッ ト フ ォーム上の ス タ ン ド ア ロ ンのハー ド ウ ェ ア サーバー イ ン ス ト ールを使用する場合は、 コ マン ド プ ロ ンプ ト で次の コ マ ン ド を実行 し ます。 c:\Xilinx\HWSRVR\<Vivado_version>\bin\hw_server.bat 次のセ ク シ ョ ンの手順に従っ て、 こ のエージ ェ ン ト を使用 し て新 し いハー ド ウ ェ ア ターゲ ッ ト への接続を開き ます。

重要: Vivado ハー ド ウ ェ ア マネージ ャーが hw_server に接続 さ れてお り 、 hw_server が停止し た場合、 ハー ド ウ ェ ア

マネージ ャ ーに よ り こ の状況が自動的に検出 さ れ、 サーバーか ら の接続が解除 さ れます。

新 し いハー ド ウ ェ ア タ ーゲ ッ ト を開 く

Open New Hardware Target ウ ィ ザー ド では、 ウ ィ ザー ド の指示に従いなが ら 、 ハー ド ウ ェ ア サーバー と ターゲ ッ ト を 接続で き ます。 ウ ィ ザー ド でのプ ロ セ ス は次の と お り です。

1. ハー ド ウ ェ ア ターゲ ッ ト を接続する ローカルま たは リ モー ト サーバーを選択 し ます。

• [Local server] :ハー ド ウ ェ ア ターゲ ッ ト を Vivado Lab Edition ま たは Vivado IDE を実行 し てい る マシ ンに接続す

る 場合に選択 し ます (図4-3)。 Vivado に よ り 、 ローカル マシ ン上で Vivado ハー ド ウ ェ ア サーバー (hw_server)

アプ リ ケーシ ョ ンが自動的に開始 さ れます。

• [Remote server] :ハー ド ウ ェ ア ターゲ ッ ト を Vivado Lab Edition ま たは Vivado IDE を実行 し てい る別のマシ ンに

接続す る 場合に選択 し ます。 リ モー ト マシ ンのホ ス ト 名ま たは IP ア ド レ ス と 、 そのマシ ン上で実行中のハー ド

ウ ェ ア サーバー (hw_server) アプ リ ケーシ ョ ンのポー ト 番号を指定し ます (図4-4)。 リ モー ト デバ ッ グの詳細

は、117 ページの 「 ラ ボ マシ ンで動作中の hw_server サーバーへの接続」 を参照 し て く だ さ い。

重要: リ モー ト サーバーを使用する場合は、 ハー ド ウ ェ ア サーバーに接続するのに使用する Vivado のバージ ョ ン と

(20)

ヒ ン ト : ラ ボ マシンに リ モー ト で接続する場合は、その リ モー ト マシン上に Vivado Design Suite のフル バージ ョ ン を イ ン ス ト ールす る 必要はあ り ません。 軽量の Vivado ハー ド ウ ェ ア サーバー (ス タ ン ド ア ロ ン) ツールを イ ン ス ト ール で き ます。

X-Ref Target - Figure 4-3

(21)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 21 UG908 (v2015.4) 2016 年 2 月 2 日

2. ハー ド ウ ェ ア サーバーで制御 さ れてい る ターゲ ッ ト の リ ス ト か ら 、 適切なハー ド ウ ェ ア ターゲ ッ ト を選択 し ま

す。 タ ーゲ ッ ト を選択す る と 、 そのハー ド ウ ェ ア ターゲ ッ ト で使用可能なハー ド ウ ェ ア デバ イ ス が表示 さ れま

す (図4-5)。

X-Ref Target - Figure 4-4

(22)

重要: JTAG チェーンにサー ド パーテ ィ デバイ スがあ る場合は、 IDCODE、 IR の長さ、 名前を追加する ため、「Vivado ハー ド ウ ェ ア マネージ ャ ー 2014.2/2014.3/2014.4 - JTAG チ ェ ーン でサー ド パーテ ィ デバ イ ス が認識 さ れない」 (ア ン サー 61312) にあ る手順に従っ て く だ さ い。

ハー ド ウ ェ ア タ ーゲ ッ ト の ト ラ ブルシ ュ ーテ ィ ング

ハー ド ウ ェ ア ターゲ ッ ト に接続する際に問題が発生する こ と があ り ます。次に、 よ く 発生する問題 と その解決方法を 示 し ます。 • タ ーゲ ッ ト 上のハー ド ウ ェ ア デバ イ ス を正 し く 特定で き ない場合は、ハー ド ウ ェ アがデフ ォル ト の ターゲ ッ ト 周 波数で動作で き ない可能性があ り ます。 ハー ド ウ ェ ア ターゲ ッ ト ま たはケーブルの TCK ピ ンの周波数を調整で き ます (図4-5)。 ハー ド ウ ェ ア ターゲ ッ ト の各タ イ プでプ ロ パテ ィ が異な る こ と があ り ます。 プ ロ パテ ィ の詳細 は、 各ハー ド ウ ェ ア ターゲ ッ ト の資料を参照 し て く だ さ い。

• Vivado ハー ド ウ ェ ア サーバーに よ り JTAG チ ェーンに含まれるすべてのデバ イ ス の命令レ ジ ス タ (IR) 長の自動

的な検出が試み ら れ ますが、 ま れに正 し く 検出で き ない こ と があ り ます。 不明なデバ イ ス の IR 長が正 し い こ と

を 確認 し て く だ さ い。IR 長 を 指定す る 必要が あ る 場合は、 Open New Hardware Target ウ ィ ザー ド の [Hardware

Devices] の表に直接入力で き ます (図4-5)。

X-Ref Target - Figure 4-5

(23)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 23 UG908 (v2015.4) 2016 年 2 月 2 日

最近開いたハー ド ウ ェ ア タ ーゲ ッ ト を開 く

Open New Hardware Target ウ ィ ザー ド では、前に接続し たハー ド ウ ェ ア ターゲ ッ ト の リ ス ト も 生成 さ れます。ウ ィ ザー ド を使用 し てハー ド ウ ェ ア タ ーゲ ッ ト に接続 し な く て も 、 Hardware Manager 環境で [Open recent target] リ ン ク を ク

リ ッ ク し 、 リ ス ト か ら 最近接続 し たハー ド ウ ェ ア サーバー/ターゲ ッ ト の組み合わせを選択する と 、前に接続 し たハー

ド ウ ェ ア タ ーゲ ッ ト への接続を再開で き ま す。 こ の最近使用 さ れた タ ーゲ ッ ト の リ ス ト には、 Vivado IDE の Flow Navigator の [Program and Debug] → [Hardware Manager] → [Open Target] か ら も ア ク セ ス で き ます。

Tcl コ マ ン ド を使用 し てハー ド ウ ェ ア タ ーゲ ッ ト を開 く

Tcl コ マン ド を使用 し て、 ハー ド ウ ェ ア サーバー /ターゲ ッ ト に接続する こ と も 可能です。 た と えば、 localhost:3121上

の hw_server で制御 さ れ る digilent_plugin ターゲ ッ ト (シ リ アル番号 210203339395A) に接続する には、 次の Tcl コ

マ ン ド を使用 し ます。

connect_hw_server -url localhost:3121

current_hw_target [get_hw_targets */xilinx_tcf/Digilent/210203339395A] set_property PARAM.FREQUENCY 15000000 [get_hw_targets \

*/xilinx_tcf/Digilent/210203339395A] open_hw_target

ハー ド ウ ェ ア ターゲ ッ ト への接続を開 く と 、[Hardware] ウ ィ ン ド ウ にハー ド ウ ェ ア サーバー、ハー ド ウ ェ ア ターゲ ッ

ト 、 お よ び開いてい る タ ーゲ ッ ト 用の さ ま ざ ま なハー ド ウ ェ ア デバ イ ス が表示 さ れます (図4-6)。

X-Ref Target - Figure 4-6

(24)

プ ロ グ ラ ム フ ァ イルをハー ド ウ ェ ア デバイ スに関

連付け

ハー ド ウ ェ ア タ ーゲ ッ ト に接続し た ら 、 FPGA デバ イ ス をプ ロ グ ラ ムする前に、 ビ ッ ト ス ト リ ーム デー タ プ ロ グ ラ

ム フ ァ イ ル を デバ イ ス に関連付け る 必要が あ り ま す。 [Hardware] ウ ィ ン ド ウ でハー ド ウ ェ ア デバ イ ス を 選択 し、

[Properties] ウ ィ ン ド ウ で [Programming File] プ ロ パテ ィ が適切な ビ ッ ト ス ト リ ーム デー タ フ ァ イ ル (.bit) に設定 さ れてい る こ と を確認 し ます。

注記 : Vivado IDE では、 開いてい る ハー ド ウ ェ ア ターゲ ッ ト の最初のデバ イ スの [Programming File] プ ロ パテ ィ 値 と し て、 現在の イ ンプ リ メ ン ト 済みデザ イ ンの .bit フ ァ イ ルが自動的に使用 さ れます。 こ の機能は、 Vivado IDE をプ

ロ ジ ェ ク ト モー ド で使用 し た場合にのみ使用で き ます。 Vivado IDE を非プ ロ ジ ェ ク ト モー ド で使用する場合は、 こ

のプ ロ パテ ィ を手動で設定す る 必要があ り ます。

ま た、set_property Tcl コ マン ド を使用 し て、 ハー ド ウ ェ ア デバ イ ス の PROGRAM.FILE プ ロ パテ ィ を設定で き ます。

(25)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 25 UG908 (v2015.4) 2016 年 2 月 2 日

ハー ド ウ ェ ア デバイ スのプ ログ ラム

プ ロ グ ラ ム フ ァ イ ルをハー ド ウ ェ ア デバ イ ス に関連付けた ら 、 [Hardware] ウ ィ ン ド ウ でデバ イ ス を右 ク リ ッ ク し、

[Program Device] を ク リ ッ ク し て、 ハー ド ウ ェ ア デバ イ ス をプ ロ グ ラ ム し ます。 program_hw_device Tcl コ マン ド で も

同 じ 操作を実行で き ます。 た と えば、JTAG チ ェーンの最初のデバ イ ス を プ ロ グ ラ ムする には、 次の Tcl コ マン ド を

使用 し ます。

program_hw_devices [lindex [get_hw_devices] 0]

進捗状況 イ ン ジ ケ ー タ ー で プ ロ グ ラ ム が 100% 完了 し た こ と が示 さ れ た ら 、 プ ロ グ ラ ム が正常に完了 し た か を

[Hardware Device Properties] ウ ィ ン ド ウ の DONE の ス テー タ ス で確認で き ます (図4-7)。

DONE の ス テータ スは、 get_property Tcl コ マン ド で も 確認で き ます。 た と えば、 JTAG チ ェーンの最初のデバ イ ス で

あ る Kintex®-7 デバ イ ス の DONE ス テータ ス を確認する には、 次の Tcl コ マン ド を使用 し ます。

get_property REGISTER.IR.BIT5_DONE [lindex [get_hw_devices] 0]

フ ラ ッ シ ュ デバ イ ス を使用 し た り 、 iMPACT ツールな どの外部デバ イ ス プ ロ グ ラ ム ツールを使用する な ど、 別の方

法でハー ド ウ ェ ア デバ イ ス をプ ロ グ ラ ム し た場合は、 ハー ド ウ ェ ア デバ イ ス を右 ク リ ッ ク し て [Refresh Device] を ク

リ ッ ク す る か、refresh_hw_device Tcl コ マ ン ド を実行す る と 、 ハー ド ウ ェ ア デバ イ ス の ス テー タ ス を更新で き ます。

こ れに よ り 、DONE ス テータ ス だけでな く 、 デバ イ ス の さ ま ざ ま なプ ロ パテ ィ が更新 さ れます。

X-Ref Target - Figure 4-7

(26)

ハー ド ウ ェ ア タ ーゲ ッ ト を閉 じ る

ハー ド ウ ェ ア タ ーゲ ッ ト を閉 じ る には、 [Hardware] ウ ィ ン ド ウ でハー ド ウ ェ ア タ ーゲ ッ ト を右 ク リ ッ ク し、 [Close Target] を ク リ ッ ク し ま す。 Tcl コ マ ン ド で も 同 じ 操作 を 実行 で き ま す。 た と え ば、 localhost サ ー バー上 の xilinx_platformusb/USB21 ターゲ ッ ト を閉 じ る には、 次の Tcl コ マン ド を使用 し ます。 close_hw_target {localhost/xilinx_tcf/Digilent/210203339395A} 重要: ボー ド の電源がオフになった場合、 ま たはケーブルの接続が解除された場合、 Vivado IDE に よ り ハー ド ウ ェ ア マネージ ャ ーのハー ド ウ ェ ア ターゲ ッ ト が閉 じ ら れます。 メ イ ンの Vivado ス レ ッ ド に対する Vivado の操作 も キ ャ ン セル さ れます。

ハー ド ウ ェ ア サーバーへの接続を閉 じ る

ハー ド ウ ェ ア サーバーへの接続 を 閉 じ る には、 [Hardware] ウ ィ ン ド ウ でハー ド ウ ェ ア サーバー を 右 ク リ ッ ク し、

[Close Server] を ク リ ッ ク し ます。 Tcl コ マ ン ド で も 同 じ 操作を実行で き ます。 た と えば、 localhost サーバーへの接続

を閉 じ る には、 次の Tcl コ マン ド を使用 し ます。

disconnect_hw_server localhost

重要: Vivado ハー ド ウ ェ ア マネージ ャーが hw_server に接続 さ れてお り 、 hw_server が停止し た場合、 ハー ド ウ ェ ア

(27)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 27 UG908 (v2015.4) 2016 年 2 月 2 日

低い JTAG ク ロ ッ ク周波数での タ ーゲ ッ ト デバイ ス

への接続

JTAG チ ェ ーンは、 チ ェ ーン内で一番遅いデバ イ ス と 同 じ 速 さ にな り ます。 JTAG ク ロ ッ ク の周波数を下げ る には、 JTAG ク ロ ッ ク 周波数がデフ ォル ト の JTAG ク ロ ッ ク 周波数よ り も 低い ターゲ ッ ト デバ イ ス に接続し ます。 デフ ォ ル ト の JTAG ク ロ ッ ク 周波数 (ケーブル接続の場合は 15MHz、 USB ケーブル接続の場合は 6MHz) を使用 し て 開いてみ る 必要があ り ます。 こ れ ら の速度で接続で き ない場合は、 次に説明す る よ う に、 デフ ォ ル ト の JTAG 周波数 を さ ら に下げ る こ と をお勧め し ます。

JTAG ク ロ ッ ク 周波数を変更する には、 Vivado Design Suite の Open New Hardware Target ウ ィ ザー ド を使用し ます

(図4-8)。

ま たは、 次の Tcl コ マン ド シーケ ン ス を使用 し ます。

open_hw connect_hw_server -url machinename:3121

current_hw_target [get_hw_targets */xilinx_tcf/Digilent/210203327962A]

set_property PARAM.FREQUENCY 250000 [get_hw_targets */xilinx_tcf/Digilent/210203327962A] open_hw_target

X-Ref Target - Figure 4-8

(28)

JTAG チ ェ ーンに 32 個を超え るデバイ ス を含むサー

バーへの接続

Vivado では、 JTAG チ ェーンに 32 個を超え るデバ イ ス を含むサーバーへ接続する こ と が可能です。 ス キ ャ ン チ ェー ンでデバ イ ス を検出す る ための機能を有効にす る ため、 hw_server の開始時に max-jtag-devices オプシ ョ ン を 指定す る 必要があ り ます。 こ の設定のデフ ォ ル ト 値は 32 です。 こ の値を大 き く する と 、 デバ イ ス検出プ ロ セ ス に時 間がかか り 、 ケーブル ア ク セ ス が遅 く な っ て し ま う 可能性があ る こ と に注意 し て く だ さ い。 次の よ う に、 hw_server の開始時に max-jtag-devices オプシ ョ ン を指定し ます。 hw_server -e "set max-jtag-devices 64"

Vivado での リ モー ト デバ ッ グ

さ ま ざ ま な状況で リ モー ト デバ ッ グが必要にな る こ と が多 く な っ てい ます。 た と えば、 ラ ボへの物理的なア ク セ ス の ない場合に ラ ボでデザ イ ン をデバ ッ グす る 場合、 組織内で リ ソ ース を共有す る 場合な ど、 製品のプ ロ ト タ イ プ段階で 必要にな る 可能性があ り ます。 リ モー ト デバ ッ グは、 問題を診断し た り 、 製品 ラ イ フサ イ ク ルを延長する ための イ ン フ ィ ール ド デバ ッ グ/ア ッ プデー ト に必要な こ と も あ り ます。 ザ イ リ ン ク ス では、デザ イ ン を リ モー ト でデバ ッ グ/ア ッ プデー ト する複数の ソ リ ューシ ョ ン を提供し てい ます。 こ れ は、 ラ ボでザ イ リ ン ク ス ハー ド ウ ェ ア サーバー製品を使用 し て リ モー ト コ ン ピ ュ ー タ に接続する と 実行で き ます。 ま た、 ザ イ リ ン ク ス仮想ケーブル (XVC) プ ロ ト コ ルを イ ンプ リ メ ン ト し て も 、 ネ ッ ト ワー ク に接続 さ れたボー ド に接 続で き ます。 こ れ ら の各 ソ リ ュ ーシ ョ ンについては、 次のセ ク シ ョ ンで説明 し ます。

イ ーサネ ッ ト か ら Vivado ハー ド ウ ェ ア サーバーを使用 し たデ

バ ッ グ

リ モー ト ラ ボ マシ ンには、 Vivado ハー ド ウ ェ ア サーバー製品を使用する と 接続で き ます。 こ れは、 100MB 未満の小 さ いサ イ ズの ス タ ン ド ア ロ ン ダ ウ ン ロー ド で、 ラ ボ マシ ンに イ ン ス ト ール し ます。 こ のオプシ ョ ン を実行する には、 イ ン ト ラ ネ ッ ト ま たは イ ン タ ーネ ッ ト ア ク セ ス が必要で、 ユーザーの組織内部でのみ使用で き ます。

X-Ref Target - Figure 4-9

図 4-9 : イ ン ト ラ ネ ッ ト /イ ン タ ーネ ッ ト からハー ド ウ ェ ア サーバーを使用 し たデバ ッ グ

'HVN /DE

,17(51(7,175$1(7

+$5':$5(6(59(5

(29)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 29 UG908 (v2015.4) 2016 年 2 月 2 日

ザイ リ ン ク ス仮想ケーブル (XVC)

ザ イ リ ン ク ス仮想ケーブル (XVC) は、 Vivado IDE 2014.3.1 リ リ ース以降のバージ ョ ンでサポー ト さ れます。 ザ イ リ ン ク ス仮想ケーブルを使用す る と 、USB ま たはパ ラ レル コ ン フ ィ ギ ュ レーシ ョ ン ケーブルな し にザ イ リ ン ク ス デバ イ ス にア ク セ ス し てデバ ッ グがで き ます。 こ の機能に よ り 、 次の よ う なデザ イ ン を Vivado IDE でデバ ッ グ し やす く な り ます。 • ラ ボ と PC が近 く にない場合に、 ア ク セ ス し に く い位置に FPGA があ る • ボー ド のデバ イ ス ピ ンへの直接ア ク セ ス がない (例 : JTAG ピ ンが ローカル マ イ ク ロ プ ロ セ ッ サ イ ン ターフ ェ イ ス か ら のみア ク セ ス可能) XVC は JTAG ケーブルの よ う に動作する イ ン ターネ ッ ト ベース (TCP/IP) プ ロ ト コ ルで、かな り 基本的な ケーブル コ マ ン ド を含みます。XVC を使用する と 、 イ ン ト ラ ネ ッ ト を介し てシ ス テ ム をデバ ッ グで き ます。 こ の機能に よ り 、 コ ス ト のかか る 実行困難な伝搬が少な く な り 、 リ モー ト にあ る シ ス テ ム をデバ ッ グす る のにかか る 時間が削減 さ れ ま す。XVC イ ンプ リ メ ン テーシ ョ ンはプ ロ グ ラ ム言語であ り 、 プ ラ ッ ト フ ォームが独立 し ています。 プ ロ セ ッ サか ら タ ーゲ ッ ト デバ イ スへの適切な JTAG コ マン ド を作成する には、 専用の JTAG ヘ ッ ダーを使用する よ り も 、 既存の イ ーサネ ッ ト 接続 を 使用 し ま す。XVC v1.0 プ ロ ト コ ル を 使用す る と 、 イ ーサネ ッ ト 接続を 使用 し て

Vivado か ら 同 じ JTAG コ マ ン ド を使用で き ます。 既存の Vivado デバ ッ グお よ びプ ロ グ ラ ム機能はサポー ト さ れた ま ま にな り ます。 図4-10 は よ く あ る ケース で、 データ セン ターでデバ イ ス をデバ ッ グする必要があ る例を示 し てい ます。 こ れ ら のデ バ イ ス は、 ラ ッ ク にマ ウ ン ト さ れたボー ド 上の離れた箇所にあ り ます。 デス ク ト ッ プ/ホ ス ト マシ ンで Vivado IDE お よ びハー ド ウ ェ ア サーバー (hw_server) を実行 し て、 イーサネ ッ ト を介 し てデータ セン ター と 通信で き る ので、 JTAG を使用 し てマ イ ク ロ プ ロ セ ッ サで実行 さ れ る XVC サーバー と 通信で き ます。

XVC サーバー イ ン プ リ メ ン テーシ ョ ン

XVC プ ロ ト コ ルを イ ンプ リ メ ン ト し て、 適切なプ ロ セ ッ サに XVC サーバーを作成する必要があ り ます。

X-Ref Target - Figure 4-10

図 4-10 : イーサネ ッ ト から XCV サーバーを使用 し たデバ ッ グ

KZBVHUYHU

(WKHUQHW;9& 'DWD&HQWHU ;9&6HUYHU 7&,3,3 RU RWKHUSURFHVVRU 7DUJHW )3*$ -7$* ;

(30)

XVC プ ロ ト コ ル

XVC プ ロ ト コ ルを使用する と 、 イーサネ ッ ト を介 し て Vivado IDE か ら JTAG コ マン ド をエンベデ ッ ド シ ス テ ムに対

し て実行で き 、 タ ーゲ ッ ト ザ イ リ ン ク ス デバ イ ス がプ ロ グ ラ ム ま たはデバ ッ グで き る よ う にな り ます。 こ れに よ り 、 ど のベン ダーを使用す る かに関係な く 、 ザ イ リ ン ク ス デバ イ ス をデバ ッ グおよびプ ロ グ ラ ムで き ます。 プ ロ グ ラ ム機 能には、 従来の JTAG 接続 と 同 じ サポー ト が含まれ、 デバ ッ グ機能には、 ザ イ リ ン ク ス シ ス テ ム デバ ッ ガー (XSDB) ま たは Vivado ハー ド ウ ェ ア デバ ッ グ IP を使用 し た操作性が含まれます。 デバ イ スへの JTAG コ マン ド は、 プ ロ グ ラ ム ケーブルを使用 し て通信 し た場合ま たは Digilent モジ ュールを使用 し た 場合にデバ イ スへ転送 さ れ る の と 同 じ コ マ ン ド です。 こ の コ マ ン ド に よ り 、 すべての既存の Vivado ハー ド ウ ェ ア デ バ ッ グ ツール間で機能が使用で き ます。

ユーザー XVC 1.0 コ マ ン ド

表4-1 は、 XVC 1.0 プ ロ ト コ ル コ マン ド について ま と めています。 表 4-1 : XVC コ マ ン ド の説明 コ マ ン ド 説明 getinfo コ マ ン ド 形式 : getinfo : XCV サービ ス バージ ョ ン を取得し ます。getinfo を受信する と 、サービ スか ら次の文字列を返し ます。 xvcServer_v1.0:<xvc_vector_len>\n <xvc_vector_len> は、 サービ ス にシ フ ト 可能なベ ク ターの最大幅です。 shift コ マ ン ド 形式 :

shift:[num bits][tms vector][tdi vector]

tms_vector および tdi_vecto のバ イ ト ベ ク ターを使用し て num_bits でシ フ ト を実行し ます。 • num_bits は リ ト ル エンデ ィ ア ン モー ド の整数です。

こ れは、 ベ ク タ ーを シ フ ト ア ウ ト す る のに必要な TCK clk ト グルの数を示 し ています。 • tms_vector は、 すべての TMS シ フ ト ビ ッ ト を使用し たバ イ ト サ イ ズのベ ク ターです。

こ のベ ク タ ーのバ イ ト 0 のビ ッ ト 0 が最初にシ フ ト ア ウ ト さ れます。

ベ ク タ ーは num_bits で、 最 も 近いバ イ ト に丸め ら れます。

• tdi_vector は tms_vector と 似てい ますが、 すべての tdi ベ ク ターがシ フ ト イ ン さ れる と こ ろ を示 し てい ます。 こ の コ マ ン ド は、 シ フ ト イ ン さ れ る ビ ッ ト ご と にサンプ リ ン グ さ れ る 該当す る tdo ビ ッ ト を使用 し て、 tms_vector と 同じ サ イ ズのバ イ ト ベ ク ターを返 し ます。 こ のベ ク タ ーのバ イ ト 0 のビ ッ ト 0 は、 シ フ ト か ら 読み出 さ れ る最初の tdo 値です。 settck コ マ ン ド 形式 : settck:[period] サービ ス tck 周期を [period] に設定し よ う と し ます。 • [period] は ns で指定 さ れます。 こ れは リ ト ル エンデ ィ ア ンの整数値です。 こ の コ マ ン ド は、 settck: が終了 し た と き に適用 さ れた周期を返 し ます。 • 返 さ れた値は ns で指定 さ れます。 こ れは リ ト ル エンデ ィ ア ンの整数値です。

(31)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 31 UG908 (v2015.4) 2016 年 2 月 2 日

Vivado IDE の hw_server の初期化

Vivado IDE の hw_server が XVC 接続を使用し て開始 さ れ る と 、 Vivado IDE で USB ケーブル と 同 じ よ う に XVC ケー ブルが認識 さ れます。 こ れには、 次の引数を使用 し て Vivado IDE の hw_server を開始 し ます。

hw_server -e "set auto-open-servers xilinx-xvc:localhost:10200"

auto-open-servers オプシ ョ ンは、 起動時に hw_server で初期化 さ れる よ う に XVC ケーブルを イ ネーブルに し ま す。 既存の XVC ケーブルへの接続が使用 さ れ る よ う に、 ハー ド ウ ェ ア サーバーを初期化で き ます。 サーバーでは、 今後の接続で XVC ケーブルが自動的に認識 さ れる よ う にな り ます。 auto-open-servers への引数は、 次の よ う にな り ます。 xilinx-xvc:<xvc_host_name>:<xvc_port> 複数のサーバーを指定す る には、 カ ン マで区切 り ます。 ハー ド ウ ェ ア サーバーが開始 さ れ る と 、 指定 し た XVC サー バーへの接続を構築 し よ う と し ます。

こ の例については、 『PetaLinux ツールを使用 し た Zynq-7000 でのザ イ リ ン ク ス仮想ケーブルの実行』 (XAPP1251) [参

照13] を参照 し て く だ さ い。

こ の ア プ リ ケ ー シ ョ ン ノ ー ト は、 PetaLinux ツ ール で生成 さ れ た Linux オペ レ ー テ ィ ン グ シ ス テ ム を 使用 し て Zynq®-7000 デバ イ ス で実行 さ れ る ザ イ リ ン ク ス仮想ケーブル (XVC) を取得する方法を示 し ています。 使用 さ れてい る 参照デザ イ ンは、Avnet MicroZed ボー ド 用です。 こ のアプ リ ケーシ ョ ン ノ ー ト の ターゲ ッ ト デバ イ スは AC701 で、 Linux で XVC を実行する MicroZed ボー ド でプ ロ グ ラ ムおよびデバ ッ グ さ れます。

(32)

コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバイ ス

のプ ログ ラ ム

Vivado デバ イ ス プ ロ グ ラ マ機能を使用す る と 、 ザ イ リ ン ク ス FPGA デバ イ ス を JTAG を介 し て直接プ ロ グ ラ ムで き

ます。Vivado では、 フ ラ ッ シ ュ ベース の コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス を JTAG を介 し て間接的にプ ロ グ ラ ムす る こ と も で き ます。 こ れには、 まず JTAG と フ ラ ッ シ ュ デバ イ ス イ ン ターフ ェ イ ス の間にデータ パス を提供 す る 特別な コ ン フ ィ ギ ュ レーシ ョ ン を使用 し てザ イ リ ン ク ス FPGA デバ イ ス を プ ロ グ ラ ム し、 そのデー タ パス を使 用 し て コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス の内容をプ ロ グ ラ ム し ます。 Vivado デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン機能を使用する と 、 ザ イ リ ン ク ス FPGA ま たは メ モ リ デバ イ ス をザ イ リ ン ク ス ケーブルま たは Digilent ケーブルを使用し て直接プ ロ グ ラ ムで き ます。適切な ケーブルの リ ス ト は、19 ページの 「hw_server を使用 し たハー ド ウ ェ ア タ ーゲ ッ ト への接続」 を参照 し て く だ さ い。 バ ウ ン ダ リ ス キ ャ ン モー ド で実行 す る と 、 ザ イ リ ン ク ス FPGA お よびコ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ン ま たはプ ロ グ ラ ムで き ます。 Vivado でサポー ト さ れる コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス の リ ス ト は、付録C 「コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ のサポー ト 」 を参照 し て く だ さ い。 Vivado で コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス をプ ロ グ ラ ム し、 こ のデバ イ ス か ら 起動する には、 次の手順に従 い ます。 1. コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス で使用する ビ ッ ト ス ト リ ーム を生成 し ます。 2. コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イ ル (.mcs ま たは .bin) を作成 し ます。 3. Vivado でハー ド ウ ェ ア ターゲ ッ ト に接続 し ます。 4. コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス を追加 し ます。 5. Vivado IDE を使用 し て コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス をプ ロ グ ラ ム し ます。 6. FPGA デバ イ ス を起動し ます (オプシ ョ ン)。

(33)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 33 UG908 (v2015.4) 2016 年 2 月 2 日

コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバイ スで使用す

る ビ ッ ト ス ト リ ームの生成

合成済みデザ イ ン ま たは イ ンプ リ メ ン ト 済みデザ イ ン を開 き 、[Tools] → [Edit Device Properties] を ク リ ッ ク し て [Edit

Device Properties] ダ イ ア ロ グ ボ ッ ク ス を開き ます。

ダ イ ア ロ グ ボ ッ ク ス の左上にあ る検索フ ィ ール ド を使用 し て、すべての SPI ま たは BPI に関連する フ ィ ール ド を検索

し 、 適切なオプシ ョ ン を設定 し ます。 デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン設定の詳細は、付録A 「デバ イ ス コ ン フ ィ

ギ ュ レーシ ョ ン ビ ッ ト ス ト リ ーム設定」 を参照 し て く だ さ い。

X-Ref Target - Figure 5-1

(34)

コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イルの作成

プ ロ グ ラ ム フ ァ イ ル (.mcs ま たは .bin) を作成する には、write_cfgmem Tcl コ マン ド を使用 し ます。 こ のフ ァ イ

ルは、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス のプ ロ グ ラ ムに使用 し ます。

た と えば、1G ビ ッ ト の BPI コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス の .mcs フ ァ イ ルを生成する には、 次の コ マン

ド を使用 し ます。

write_cfgmem -format mcs -interface bpix16 -size 128 \

-loadbit "up 0x0 design.bit"-file design.mcs

注記 : write_cfgmem コ マン ド の -size オプシ ョ ンは メ ガ バ イ ト で指定する ので、単位が メ ガ ビ ッ ト のフ ラ ッ シ ュ

デバ イ ス の容量 と は異な り ます。 そのため上記の write_cfgmem コ マン ド の例では、 1G ビ ッ ト のフ ラ ッ シ ュ デバ

イ ス のサ イ ズが 128MB と 指定 さ れてい ます。 write_cfgmem コ マン ド では、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ フ ァ イ ルのサ イ ズが自動的にビ ッ ト ス ト リ ームのサ イ ズに設定 さ れます。

Vivado IDE では、 write_cfgmem コ マ ン ド を使用 し て複数の .bit フ ァ イ ルをチ ェーン接続で き ます。 複数のビ ッ ト ス ト リ ーム を含む 1 つの 1G ビ ッ ト BPI コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス の .mcs フ ァ イ ルを生成す る に は、 次の コ マ ン ド を使用 し ます。

write_cfgmem -format mcs -interface bpix16 -size 128 \

-loadbit "up 0 design1.bit up 0xFFFFF design2.bit" \

-file design1_design2.mcs

write_cfgmem コ マン ド の詳細は、 『Vivado Design Suite Tcl コ マン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) [参照 8] を参照

し て く だ さ い。

Vivado でハー ド ウ ェ ア タ ーゲ ッ ト に接続

Vivado でハー ド ウ ェ ア ターゲ ッ ト に接続する には、 次の手順に従い ます。 1. ハー ド ウ ェ ア ターゲ ッ ト の FPGA モー ド ピ ンで、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス か ら FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る のに適切な コ ン フ ィ ギ ュ レーシ ョ ン モー ド (マ ス タ ー SPI ま たはマ ス タ ー BPI) が選択 さ れてい る こ と を確認 し ます。 詳細は、 タ ーゲ ッ ト デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド を参照 し て く だ さ い。 2. ハー ド ウ ェ ア ターゲ ッ ト に接続する には、第4 章 「FPGA デバ イ ス のプ ロ グ ラ ム」 の手順に従っ て く だ さ い。 重要: ボー ド の電源がオフになった場合、 ま たはケーブルの接続が解除された場合、 Vivado IDE に よ り ハー ド ウ ェ ア タ ーゲ ッ ト が閉 じ ら れます。 メ イ ンの Vivado ス レ ッ ド に対する Vivado の操作 も キ ャ ンセル さ れます。

(35)

Vivado プ ロ グ ラ ムおよびデバ ッ グ japan.xilinx.com 35 UG908 (v2015.4) 2016 年 2 月 2 日

コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバイ スの追加

Vivado デバ イ ス プ ロ グ ラ マでハー ド ウ ェ ア ターゲ ッ ト に コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス を追加する には、 次の手順に従い ます。 1. 前述の手順に従っ てハー ド ウ ェ ア ターゲ ッ ト に接続し た後、 次の図に示すよ う にハー ド ウ ェ ア ターゲ ッ ト を右

ク リ ッ ク し て [Add Configuration Memory Device] を ク リ ッ ク し ます。

X-Ref Target - Figure 5-2

(36)

こ の メ ニ ュ ーを ク リ ッ ク す る と 、[Add Configuration Memory Device] ダ イ ア ロ グ ボ ッ ク ス が開き ます。

2. 適切な コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス を選択 し、 [OK] を ク リ ッ ク し ます。

ヒ ン ト : [Search] フ ィ ール ド を使用し て、 ベンダー、 集積度、 タ イ プなどで絞 り 込みます。

こ れでハー ド ウ ェ ア ターゲ ッ ト デバ イ ス に コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ デバ イ ス が追加 さ れま し た。

X-Ref Target - Figure 5-3

図 5-3 : [Add Configuration Memory Device] ダ イ ア ログ ボ ッ ク スのデバイ ス選択ページ

X-Ref Target - Figure 5-4

図  2-3 : [Open Vivado Lab Edition Project]  ダ イ ア ロ グ ボ ッ ク ス
図  3-2 : [Edit Device Properties]  ダ イ ア ロ グ ボ ッ ク ス
図  4-1 : Flow Navigator  から ハー ド ウ ェ ア タ ーゲ ッ ト を開 く
図  4-5 : ハー ド ウ ェ ア タ ーゲ ッ ト の選択
+7

参照

Outline

関連したドキュメント

7IEC で定義されていない出力で 575V 、 50Hz

HORS

水道水又は飲用に適する水の使用、飲用に適する水を使

携帯端末が iPhone および iPad などの場合は App Store から、 Android 端末の場合は Google Play TM から「 GENNECT Cross 」を検索します。 GENNECT

テストが成功しなかった場合、ダイアログボックスが表示され、 Alienware Command Center の推奨設定を確認するように求め

Windows Hell は、指紋または顔認証を使って Windows 10 デバイスにアクセスできる、よ

客さまが希望され,かつ,お客さまの電気の使用状態,当社の供給設備

荒天の際に係留する場合は、1つのビットに 2 本(可能であれば 3