Vivado Design Suite
ユーザー
ガイ ド
エ ンベデ ッ ド
プロセ ッ サ
ハー ド ウ ェ ア
デザイ ン
UG898 (v2017.1) 2017 年 5 月 3 日この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に
よっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきまし
ては、必ず最新英語版をご参照ください。
UG898 (v2017.2) 2017 年 6 月 7 日
次の表に、 こ の文書の改訂履歴を示 し ます。 日付 バージ ョ ン 改訂内容 2017 年 5 月 3 日 2017.1 2017.1 リ リ ース。 次を修正: 新 し い Vivado のル ッ ク ア ン ド フ ィ ールを反映する ため資料全体を ア ッ プデー ト 。 各資料へ の参照を追加。 すべてのプ ロ セ ッ サに共通の情報を第1 章 「入門」 に移動。 章の順序を変更。 第2 章の 「隔離設定」 を追加。 第3 章の 「Zynq-7000 プ ロ セ ッ シ ン グ シ ス テ ムの検証」の参照を DS897 か ら DS940 に変更。 第4 章の 「MicroBlaze プ ロ セ ッ サ デザ イ ンの概要」 の MicroBlaze コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン を ア ッ プデー ト 。 第4 章の 「[General] ページ」 を ア ッ プデー ト 。 第4 章の 「命令」 を ア ッ プデー ト 。
第4 章の 「[Memory Management Feature]」 を ア ッ プデー ト 。
第4 章の 「[Trace & Profiling]」 を ア ッ プデー ト 。
第1 章の 「コ ネ ク シ ョ ン オー ト メ ーシ ョ ン」 お よ び第5 章の 「AXI マ ス ターの追加」 に SmartConnect に関する情報を追加。
第7 章の 「 メ モ リ マ ッ プ情報 (MMI) フ ァ イ ルの機能」 を ア ッ プデー ト 。
第7 章の 「ザ イ リ ン ク ス パ ラ メ ーター指定マ ク ロ (XPM) メ モ リ 」 に UniMacro お よび XPM に関す る 情報を追加。
改訂履歴 . . . 2
第 1 章: 入門
概要 . . . 5 デバ イ ス ツール フ ローの概要 . . . 6 エンベデ ッ ド プ ロ セ ッ サ デザ イ ン作成の一般的な手順 . . . 7 設計ア シ ス タ ン ス を使用 し た接続 . . . 8 手動接続 . . . 14 I/O ポー ト の手動作成 と 接続 . . . 14 設計ア シ ス タ ン ス . . . 15 IP イ ン テグ レーターでのプ ラ ッ ト フ ォーム ボー ド フ ロー . . . 16 [Address Editor] ウ ィ ン ド ウ での メ モ リ マ ッ プ . . . 17 デザ イ ン ルール チ ェ ッ ク の実行 . . . 17 ブ ロ ッ ク デザ イ ンの最上位デザ イ ンへの統合 . . . 18 Vivado ピ ン プ ラ ンナーでの PS I/O の表示 . . . 19 Vivado IDE で生成 さ れたエンベデ ッ ド フ ァ イ ル . . . 19 ソ フ ト ウ ェ ア開発キ ッ ト (SDK) の使用 . . . 20第 2 章: エ ンベデ ッ ド デザイ ン での Zynq UltraScale+ MPSoC の使用
概要 . . . 22Zynq UltraScale+ MPSoC デバ イ ス の設計 . . . 22
Zynq UltraScale+ MPSoc 設定の概要 . . . 26
デザ イ ンの完了 . . . 49
第 3 章: エ ンベデ ッ ド デザイ ン での Zynq-7000 プ ロ セ ッ サの使用
概要 . . . 50Zynq-7000 プ ロ セ ッ サを使用 し た設計 . . . 50
Zynq-7000 ブ ロ ッ ク デザ イ ン と [Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス の概要 . . . 54
プ ロ グ ラ マブル ロ ジ ッ ク (PL) の使用 . . . 72
第 4 章: エ ンベデ ッ ド デザイ ン での MicroBlaze プ ロ セ ッ サの使用
MicroBlaze プ ロ セ ッ サ デザ イ ンの概要 . . . 76 MicroBlaze プ ロ セ ッ サ デザ イ ンの作成 . . . 77 MicroBlaze Configuration ウ ィ ザー ド . . . 80 MicroBlaze プ ロ セ ッ サの ク ロ ス ト リ ガー機能 . . . 100 カ ス タ ム ロ ジ ッ ク . . . 104 エンベデ ッ ド IP カ タ ロ グ . . . 104 接続 . . . 105第 5 章: メ モ リ IP コ ア を含むデザイ ン
概要 . . . 111第 6 章: IP イ ン テグレー タ ーの リ セ ッ ト および ク ロ ッ ク ト ポロ ジ
概要 . . . 122 メ モ リ IP コ ア を含ま ない MicroBlaze デザ イ ン . . . 123 メ モ リ IP コ ア を含む MicroBlaze デザ イ ン . . . 126 PL ロ ジ ッ ク を含ま ない Zynq デザ イ ン . . . 131 PL ロ ジ ッ ク を含む Zynq デザ イ ン . . . 133 PL ロ ジ ッ ク に メ モ リ IP コ ア を含む Zynq デザ イ ン. . . 139 メ モ リ IP と Clocking Wizard を含むデザ イ ン . . . 141第 7 章: UpdateMEM を使用 し た BIT フ ァ イルの MMI および ELF デー タ でのア ッ プデー ト
概要 . . . 142 UpdateMEM の使用 . . . 143 メ モ リ (MEM) フ ァ イ ル . . . 145 ブ ロ ッ ク RAM メ モ リ マ ッ プ情報 (MMI) フ ァ イ ル . . . 146 ザ イ リ ン ク ス パ ラ メ ー ター指定マ ク ロ (XPM) メ モ リ . . . 153付録 A: その他の リ ソ ースおよび法的通知
ザ イ リ ン ク ス リ ソ ース . . . 154 ソ リ ュ ーシ ョ ン セン ター . . . 154 Documentation Navigator およびデザ イ ン ハブ. . . 154 参考資料 . . . 155 お読み く だ さ い: 重要な法的通知 . . . 156入門
概要
こ の章では、Vivado® Design Suite フ ローを使用 し て、 Zynq® UltraScale+™ MPSoC デバ イ ス、 Zynq-7000 All
Programmable (AP) SoC デバ イ ス、 ま たは MicroBlaze™ プ ロ セ ッ サを使用 し たエンベデ ッ ド デザ イ ンのプ ロ グ ラ ム方 法の概要を示 し ます。 エンベデ ッ ド シ ス テ ムは複雑です。 エンベデ ッ ド デザ イ ンのハー ド ウ ェ ア部分 と ソ フ ト ウ ェ ア部分は、 それ自体が プ ロ ジ ェ ク ト です。1 つのシ ス テ ム と し て機能する よ う こ の 2 つのデザ イ ン コ ンポーネン ト を統合する と 、 それに 伴 う 課題が出て き ます。FPGA デザ イ ン プ ロ ジ ェ ク ト を追加する と 、 さ ら に複雑にな り ます。 こ のデザ イ ン プ ロ セ ス を単純化する ため、 ザ イ リ ン ク ス では複数のツール セ ッ ト を提供 し てい ます。 次に、 基本 ツール名 と その略語を説明 し ます。 Vivado 統合設計環境 (IDE) には、 プ ロ セ ッ サ ベース のデザ イ ン を統合する ための IP イ ン テ グ レーター ツールが含ま れてい ます。 こ の ツールをザ イ リ ン ク ス ソ フ ト ウ ェ ア開発キ ッ ト (SDK) と 合わせて使用する こ と で、 マ イ ク ロ プ ロ セ ッ サ ベース のシ ス テ ム と エンベデ ッ ド ソ フ ト ウ ェ ア アプ リ ケーシ ョ ン を設計およびデバ ッ グする ための統合環境 が提供 さ れてい ます。 エンベデ ッ ド プ ロ セ ッ サおよび SDK、 ハー ド ウ ェ アおよび ソ フ ト ウ ェ アの ク ロ ス ト リ ガー、 デザ イ ンのデバ ッ グ を 使用す る 例は、 『Vivado Design Suite チ ュー ト リ アル: エンベデ ッ ド プ ロ セ ッ サ ハー ド ウ ェ ア デザ イ ン』 (UG940) [参 照1] を参照 し て く だ さ い。 こ のチ ュー ト リ アルでは、 Vivado IP イ ン テグ レーターを使用し てエンベデ ッ ド プ ロ セ ッ サ デザ イ ン を構築し 、 SDK および Vivado ロ ジ ッ ク 解析 (ILA) を使用 し てデザ イ ン をデバ ッ グ し ます。
次のセ ク シ ョ ン では、 一般的なハー ド ウ ェ アお よ び ソ フ ト ウ ェ アの フ ロ ーの概要 と 、 ザ イ リ ン ク ス プ ロ セ ッ サを使 用 し たエンベデ ッ ド デザ イ ン生成に関する情報を示 し ます。 すべてのザ イ リ ン ク ス プ ロ セ ッ サ開発を対象に し てい ます。
デバイ ス ツール フ ローの概要
Vivado ツールでは、 プ ロ セ ッ サに基づいて、 プ ロ グ ラ ム用のフ ローが提供 さ れてい ます。 Vivado IDE では、 接続を グ ラ フ ィ カルに表す IP イ ン テグ レー ターを使用 し て、 デバ イ ス を指定し、 ペ リ フ ェ ラ ルを選択し 、 ハー ド ウ ェ ア を 設定で き ます。 Vivado IP イ ン テグ レー ターを使用する と 、 ザ イ リ ン ク ス プ ロ セ ッ サ用のデザ イ ン を開発する ために必要なハー ド ウ ェ ア プ ラ ッ ト フ ォーム情報を含む XML フ ォーマ ッ ト のアプ リ ケーシ ョ ン と その他のデータ フ ァ イ ルを生成で き ます。 ソ フ ト ウ ェ ア デザ イ ン ツールでは、 次の作業のために XML が使用 さ れます。 ° ボー ド サポー ト パ ッ ケージ (BSP) ラ イ ブ ラ リ を作成お よび設定 ° コ ンパ イ ラ オプシ ョ ン を推論 ° プ ロ セ ッ サ ロ ジ ッ ク (PL) をプ ロ グ ラ ム ° JTAG 設定を定義 ° ハー ド ウ ェ アに関す る 情報が必要なほかの操作を自動化
Zynq UltraScale+ MPSoC ソ リ ューシ ョ ンには、 ARM Cortex-R5 MPCore リ アル タ イ ム プ ロ セ ッ サを含む高パフ ォーマ ン ス、 低消費電力の 64 ビ ッ ト アプ リ ケーシ ョ ン プ ロ セ ッ サであ る ARM®v8 ベース の Cortex™-A53 が含まれてい ま
す。 エンベデ ッ ド Zynq MPSoC プ ロ セ ッ サ デザ イ ン を作成する ために IP イ ン テグ レーターな どのザ イ リ ン ク ス ツー ルの使用方法を理解す る には、第2 章 「エンベデ ッ ド デザ イ ンでの Zynq UltraScale+ MPSoC の使用」 を参照 し て く だ さ い。 ハー ド ウ ェ アお よ び ソ フ ト ウ ェ アの詳細は、 次を参照 し て く だ さ い。
° 『Zynq UltraScale+ MPSoC テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 (UG1085) [参照 9] ° 『Zynq UltraScale+ MPSoC ソ フ ト ウ ェ ア開発者向けガ イ ド 』 (UG1137) [参照 5]
Zynq-7000 AP SoC ソ リ ューシ ョ ンでは、 1 つの SoC でプ ロ グ ラ マブル ロ ジ ッ ク と 共に ARM Cortex-A9 デュ アル コ ア がエンベデ ッ ド ブ ロ ッ ク と し て提供 さ れてい る ので、 エンベデ ッ ド デザ イ ンの複雑性が軽減 さ れます。 エンベデ ッ
ド Zynq -7000 プ ロ セ ッ サ デザ イ ン を作成する ために IP イ ン テ グ レーターな どのザ イ リ ン ク ス ツールの使用方法を理 解す る には、第3 章 「エンベデ ッ ド デザ イ ンでの Zynq-7000 プ ロ セ ッ サの使用」 を参照 し て く だ さ い。 ハー ド ウ ェ アお よ び ソ フ ト ウ ェ アの詳細は、 次を参照 し て く だ さ い。
° 『Zynq-7000 All Programmable SoC テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 (UG585) [参照 8] ° 『Zynq-7000 All Programmable SoC ソ フ ト ウ ェ ア開発者向けガ イ ド 』 (UG821) [参照 4]
MicroBlaze エンベデ ッ ド プ ロ セ ッ サは、 ザ イ リ ン ク ス フ ィ ール ド プ ロ グ ラ マブル ゲー ト ア レ イ (FPGA) の イ ンプ リ メ ン テーシ ョ ン用に最適化 さ れた RISC (Reduced Instruction Set Computer) コ アです。 エンベデ ッ ド Microblaze プ ロ セ ッ サ デザ イ ン を作成する ために IP イ ン テ グ レーターな どのザ イ リ ン ク ス ツールの使用方法を理解する には、
第4 章 「エンベデ ッ ド デザ イ ンでの MicroBlaze プ ロ セ ッ サの使用」 を参照 し て く だ さ い。 詳細は、 『MicroBlaze プ ロ セ ッ サ リ フ ァ レ ン ス ガ イ ド 』 (UG984) [参照 14] を参照し て く だ さ い。
ザ イ リ ン ク ス プ ロ セ ッ サの ソ フ ト ウ ェ ア アプ リ ケーシ ョ ン を開発およびデバ ッ グする ためのデザ イ ン ツール と し て、 ザ イ リ ン ク ス では次の よ う な ツールを提供 し てい ます。
こ れ ら の ツールを使用す る と 、OS を必要 と し ないベア メ タ ル アプ リ ケーシ ョ ン と 、 オープン ソ ース Linux ベース の OS 用アプ リ ケーシ ョ ンの両方を開発で き ます。 Zynq デバ イ ス の場合、 Vivado IP イ ン テ グ レーターでは、 コ ン フ ィ ギ ュ レーシ ョ ン設定、 レ ジ ス タ メ モ リ マ ッ プ、 プ ロ グ ラ マブル ロ ジ ッ ク (PL) フ ァ ブ リ ッ ク 内の関連ロ ジ ッ ク な ど、 プ ロ セ ッ シ ン グ シ ス テ ム (PS) およびペ リ フ ェ ラ ルに関する情報がキ ャ プチ ャ さ れます。 その後、 PL 初期化用にビ ッ ト ス ト リ ーム を生成で き ます。 サー ド パーテ ィ か ら も 、 ソ フ ト ウ ェ ア IDE、 コ ンパ イ ラ ツール チ ェーン、 デバ ッ グお よび ト レース ツール、 エンベ デ ッ ド OS および ソ フ ト ウ ェ ア ラ イ ブ ラ リ 、 シ ミ ュ レータ、 モデ リ ン グ/仮想プ ロ ト タ イ プ ツールな ど、 Cortex プ ロ セ ッ サをサポー ト す る ソ フ ト ウ ェ アが提供 さ れてい ます。 サー ド パーテ ィ ツールの ソ リ ューシ ョ ンに よ っ て、 Zynq-7000 デバ イ ス と の統合お よび直接サポー ト の レベルは異な り ます。 ザ イ リ ン ク ス では、 ソ フ ト ウ ェ ア開発キ ッ ト (SDK) ま での統合フ ローでハー ド ウ ェ ア デザ イ ン と ソ フ ト ウ ェ ア開発 と の統合を提供 し てい ます。SDK は、 ザ イ リ ン ク ス ウ ェ ブサ イ ト japan.xilinx.com か ら ス タ ン ド ア ロ ンの製品 と し て ダ ウ ン ロ ー ド で き ます。 こ の ツールの使用方法は、SDK ヘルプ (UG782) [参照 26] を参照 し て く だ さ い。 次の図に、Zynq デバ イ ス のエンベデ ッ ド ハー ド ウ ェ アのツール フ ローを示 し ます。
エ ンベデ ッ ド プ ロ セ ッ サ デザイ ン作成の一般的な手順
エンベデ ッ ド プ ロ セ ッ サ デザ イ ンの一般的フ ローは、 次の と お り です。 1. 新 し い Vivado Design Suite プ ロ ジ ェ ク ト を作成し ます。2. IP イ ン テ グ レーター ツールでブ ロ ッ ク デザ イ ン を作成 し、ザ イ リ ン ク ス プ ロ セ ッ サ と その他のザ イ リ ン ク ス IP ま たはカ ス タ ム IP を イ ン ス タ ン シエー ト し ます。
3. 正 し い合成モー ド を設定 し てブ ロ ッ ク デザ イ ンの IP の出力フ ァ イ ルを生成 し ます。
4. 最上位 ラ ッ パーを作成 し て、 ブ ロ ッ ク デザ イ ン を最上位 RTL デザ イ ンに イ ン ス タ ン シエー ト し ます。 5. 最上位デザ イ ン を合成お よ び イ ンプ リ メ ン テーシ ョ ン し 、 ハー ド ウ ェ ア を SDK にエ ク ス ポー ト し ます。 6. ソ フ ト ウ ェ ア アプ リ ケーシ ョ ン を作成 し ます。 SDK で ELF (Executable Linkable File) フ ァ イ ルをハー ド ウ ェ ア デ
ザ イ ンに関連付け ます。 詳細は、「 ソ フ ト ウ ェ ア開発キ ッ ト (SDK) の使用」 を参照 し て く だ さ い。SDK ヘルプ (UG782) [参照 26] も 参照 し て く だ さ い。
7. ザ イ リ ン ク ス の updatemem ユーテ ィ リ テ ィ を使用 し て、 ブ ロ ッ ク RAM の ELF および メ モ リ マ ッ プ情報 (MMI) をハー ド ウ ェ ア デバ イ ス のビ ッ ト ス ト リ ームに統合 し ます。 こ のユーテ ィ リ テ ィ の詳細は、第7 章 「UpdateMEM を使用 し た BIT フ ァ イ ルの MMI および ELF データ でのア ッ プデー ト 」 を参照 し て く だ さ い。 8. タ ーゲ ッ ト ボー ド にプ ロ グ ラ ム し ます。
X-Ref Target - Figure 1-1
図 1-1: ハー ド ウ ェ ア デザイ ン ツールから ソ フ ト ウ ェ ア ツールへのハン ド オ フ 36ቑ岼⸩ ,3ቑ抌┯ ኰአእኖእ ዙኽቑ䞮㒟 ኇኴኔዄዐ ኚኲእኃኄቿ ኡዙወቛቑ ኅኌኖኺዙእ ኬዙኦኃኄቿ Ⅴ㱧ኲቾኁወ;0/ 3/ነዐኲኀኋዂ ዉዙኔዄዐ ኰአእኖእዙኽ 36ነዐኲኀኋዂ ዉዙኔዄዐ ኾኻአኴ㍔⫀ 00, ኬዙኦኃኄቿ ኬዐኦኇኲ ;;
エ ンベデ ッ ド IP カ タ ログ
Vivado IP カ タ ロ グは、 IP の検索、 詳細情報の確認、 関連資料の表示を実行可能な統合 リ ポジ ト リ です。 Vivado IP カ タ ロ グにサー ド パーテ ィ IP ま たはカ ス タ マー IP を追加する と 、 Vivado Design Suite フ ローか ら その IP にア ク セ ス で き る よ う にな り ます。 次の図に、IP イ ン テ グ レーター内の IP カ タ ロ グ を示 し ます。
設計ア シ ス タ ン ス を使用 し た接続
Zynq プ ロ セ ッ サでは、 ザ イ リ ン ク ス のプ ロ セ ッ サ デバ イ ス用にプ ロ セ ッ サ シ ス テ ム (PS) を設定 し た後、 デバ イ ス のプ ロ グ ラ マブル ロ ジ ッ ク (PL) 部分に含まれる ほかの IP を イ ン ス タ ン シエー ト で き ます。 IP イ ン テ グ レーター キ ャ ンバス を右 ク リ ッ ク し、 [Add IP] を ク リ ッ ク し ます。 Vivado IP イ ンテグ レーターには、 IP サブシ ス テ ム デザ イ ンの残 り の部分を完了さ せる ため、 ブ ロ ッ ク オー ト メ ー シ ョ ンおよ びコ ネ ク シ ョ ン オー ト メ ーシ ョ ン と い う 2 つの機能があ り ます。 こ れ ら の機能を使用する と 、 基本的なマ イ ク ロ プ ロ セ ッ サ シ ス テム を IP イ ンテグ レーター ツールで作成し、 ポー ト を外部 I/O ポー ト に簡単に接続で き ます。 重要: 次のセ ク シ ョ ンでは例 と し て ZYNQ7 プ ロ セ ッ サを使用し ますが、 どのプ ロ セ ッ サを使用し ていて も機能は同 じ です。ブ ロ ッ ク オー ト メ ーシ ョ ン
ブ ロ ッ ク オー ト メ ーシ ョ ンは、 IP イ ン テグ レー ター ツールのブ ロ ッ ク デザ イ ンにサブシ ス テ ム IP が イ ン ス タ ン シ エー ト さ れてい る ザ イ リ ン ク ス プ ロ セ ッ サがあ る場合に使用で き ます。図1-3 に示 さ れてい る [Run Block Automation] リ ン ク を ク リ ッ ク する と 、単純な Zynq プ ロ セ ッ シ ン グ シ ス テ ム を簡単 に作成で き ます。
X-Ref Target - Figure 1-2
次の図に示す [Run Block Automation] ダ イ ア ロ グ ボ ッ ク ス には、 オー ト メ ーシ ョ ンに使用可能なオプシ ョ ンが表示 さ れます。 タ ーゲ ッ ト リ フ ァ レ ン ス ボー ド を使用 し てい る場合は、 [Apply Board Preset] チ ェ ッ ク ボ ッ ク ス をオンにす る と 、 ボー ド プ リ セ ッ ト を イ ネーブルにで き ます。
X-Ref Target - Figure 1-3
図 1-3: [Run Block Automation] リ ン ク
X-Ref Target - Figure 1-4
[OK] を ク リ ッ ク する と 、 ブ ロ ッ ク オー ト メ ーシ ョ ン機能に よ り 、 次の図の よ う な基本的なシ ス テムが作成 さ れます。
[Run Block Automation] ダ イ ア ロ グ ボ ッ ク ス の [Cross Trigger In] および [Cross Trigger Out] で適切な機能を選択する と 、 ク ロ ス ト リ ガー機能を イ ネーブルにで き ます。
X-Ref Target - Figure 1-5
図 1-5: ブ ロ ッ ク オー ト メ ーシ ョ ン実行後の IP イ ン テグレー タ ー キ ャ ンバス
[Cross Trigger In] お よび [Cross Trigger Out] に [Enable] を選択する と 、 ZYNQ7 の ク ロ ス ト リ ガー ピ ンが 1 つだけ使用 可能にな り ます。 こ れ ら の ピ ンへの接続は、 ユーザーが指定す る 必要があ り ます。
[New ILA] を選択する と 、 ク ロ ス ト リ ガー ピ ンが イ ネーブルにな る だけでな く 、 ILA (Integrated Logic Analyzer) コ ア に も 接続 さ れます。 Vivado IP イ ン テグ レー ターでは、ZC702 の よ う なザ イ リ ン ク ス ターゲ ッ ト リ フ ァ レ ン ス プ ラ ッ ト フ ォーム を使用 し てい る 場合、 ボー ド オー ト メ ーシ ョ ン機能 も 使用で き ます。 詳細は、「IP イ ン テグ レーターでのプ ラ ッ ト フ ォーム ボー ド フ ロー」 を参照 し て く だ さ い。 こ の機能を使用す る と 、IP のポー ト が ターゲ ッ ト ボー ド の FPGA ピ ンに接続 さ れます。 IP は適切に設定 さ れ、 ユー ザーの選択に基づいて I/O ポー ト に接続 さ れます。 ボー ド オー ト メ ーシ ョ ンでは、 物理制約が必要な IP に対し て自 動的に物理制約が生成 さ れます。 図1-5 では、 外部 DDR および FIXED_IO イ ン ターフ ェ イ ス が外部ポー ト に接続 さ れてい ます。
X-Ref Target - Figure 1-7
図 1-7: ZYNQ7 のク ロ ス ト リ ガー ピ ン
X-Ref Target - Figure 1-8
コ ネ ク シ ョ ン オー ト メ ーシ ョ ン
IP イ ン テ グ レーターでキ ャ ンバス上に イ ン ス タ ン シエー ト さ れた IP の間に可能な接続が検出 さ れた場合、 コ ネ ク シ ョ ン オー ト メ ーシ ョ ン機能を使用で き ます。
次の図では、ZYNQ7 Processing System IP と 共に AXI BRAM Controller と Block Memory Generator IP が イ ン ス タ ン シ エー ト さ れてい ます。
IP イ ン テ グ レーターで AXI BRAM Controller と ZYNQ7 Processing System IP の間に可能な接続が検出 さ れる ので、 次 の図に示す よ う に コ ネ ク シ ョ ン オー ト メ ーシ ョ ン機能を使用で き ます。
こ の例では、[Run Connection Automation] を ク リ ッ ク する と 、 AXI Interconnect、 Block Memory Generator、 Processing System Reset IP が イ ン ス タ ン シエー ト さ れ、 AXI SmartConnect を使用 し て AXI BRAM Controller が ZYNQ PS IP に接 続 さ れ、Processing System Reset IP が適切に接続 さ れます。
AXI Interconnect と AXI SmartConnect と の違いについては、 『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テ グ レー タ ーを使用 し た IP サブシ ス テ ムの設計』 (UG994) [参照 7] のこ のセ ク シ ョ ンを参照 し て く だ さ い。
X-Ref Target - Figure 1-9
次の図に最終結果を示 し ます。
X-Ref Target - Figure 1-10
手動接続
次の図に、ILA の SLOT_0_AXI ま たは clk ピ ン を、 監視する必要のあ る AXI イ ン ターフ ェ イ ス に接続する方法を示 し ます。 こ れは手動で実行で き ます。 カー ソ ルを IP ブ ロ ッ ク の イ ン ターフ ェ イ ス ま たはピ ン コ ネ ク タ の近 く に移動する と 、 カー ソ ルの形が鉛筆の形に変 わ り ます。IP ブ ロ ッ ク の イ ン ターフ ェ イ ス ま たはピ ン コ ネ ク タ を ク リ ッ ク し、 接続先ブ ロ ッ ク に ド ラ ッ グ し ます。 次の図に、 手動接続の例を示 し ます。
I/O ポー ト の手動作成 と 接続
Vivado IP イ ン テグ レー ターでは、 ピ ン、 バス、 ま たは イ ン ターフ ェ イ ス接続を選択し て、 信号ま たは イ ン ターフ ェ イ ス を外部 I/O ポー ト に接続する こ と に よ り 、 外部 I/O ポー ト を手動で作成で き ます。 手動で I/O ポー ト を作成 し て接続する には、 ブ ロ ッ ク 図のポー ト を右 ク リ ッ ク し て、 次を ク リ ッ ク し ます。• [Make External]: Ctrl キーを押し なが ら ク リ ッ ク し て複数のピ ン を選択 し てか ら 、 [Make External] を ク リ ッ ク で き ます。 こ の コ マ ン ド に よ り 、IP のピ ンがブ ロ ッ ク デザ イ ンの I/O ポー ト に接続 さ れます。
• [Create Port]: clock、 reset、 uart_txd な どの イ ン ターフ ェ イ ス以外の信号を接続する のに使用し ます。 [Create Port] を使用する と 、 入力および出力、 ビ ッ ト 幅、 タ イ プ (clk、 reset、 ま たは data) の指定をユー ザーが制御 し やす く な り ます。 ク ロ ッ ク の場合、 入力周波数 も 指定で き ます。
• [Create Interface Port]: 機能を共有する信号を グループ化 し た イ ン ターフ ェ イ ス ポー ト を作成し ます。 た と えば、
X-Ref Target - Figure 1-11
設計ア シ ス タ ン ス
IP イ ン テ グ レーターでは、AXI4-Stream イ ン ターフ ェ イ ス を AXI4 メ モ リ マ ッ プ ド イ ン ターフ ェ イ ス に接続する と き に設計ア シ ス タ ン ス を使用で き ます。 次の図では、 ス ト リ ー ミ ン グ イ ン ターフ ェ イ ス を使用する FIR Compiler IP を processing_system7_0 の ス レーブ ACP ポー ト に接続し よ う と し てい ます。
設計ア シ ス タ ン ス を使用す る には、 次の図に示す よ う に、FIR Compiler の M_AXIS_DATA イ ン ターフ ェ イ ス ピ ン と ZYNQ7 Processing System の S_AXI_ACP ポー ト を直接接続し ます。
図1-14 に示す [Make Connection] ダ イ ア ロ グ ボ ッ ク ス が開き、 ス ト リ ーム バス イ ン ターフ ェ イ ス /fir_compiler_0/M_AXIS_DATA を メ モ リ マ ッ プ ド バス イ ン ターフ ェ イ ス
/processing_system7_0/S_AXI_ACP に接続する こ と を確認する メ ッ セージが表示 さ れます。 ス ト リ ー ミ ン グ イ ン タ ーフ ェ イ ス と メ モ リ マ ッ プ ド イ ン ターフ ェ イ ス の ク ロ ッ ク 供給オプシ ョ ン も 設定で き ます。 デフ ォル ト は [Auto] です。
X-Ref Target - Figure 1-12
図 1-12: ス ト リ ー ミ ング イ ン タ ー フ ェ イ ス を メ モ リ マ ッ プ ド イ ン タ ー フ ェ イ スに接続
X-Ref Target - Figure 1-13
正 し く 設定 し た後に [OK] を ク リ ッ ク する と 、 次の図に示す よ う に、 設計アシ ス タ ン ス に よ り 高周波数/中周波数転 送用に設定 さ れた DMA コ アが イ ン ス タ ン シエー ト さ れ、 適切に接続 さ れます。
設計ア シ ス タ ン ス に よ り AXI Subset Converter、 AXI Direct Memory Access、 AXI Interconnect が イ ン ス タ ン シエー ト さ れ、FIR Compiler の ス ト リ ー ミ ン グ イ ン ターフ ェ イ ス と PS7 の ACP イ ン ターフ ェ イ ス が接続 さ れます。AXI4-Stream Subset Converter は、 完全に互換し ていない AXI4-Stream 信号セ ッ ト を接続する ための ソ リ ューシ ョ ン を提供 し ます。 IP には、 イ ン ターフ ェ イ ス ご と に設定可能な AXI4-Stream 信号が含まれ、 一貫し た方法で 1 つの信号セ ッ ト を別の 信号セ ッ ト に変換で き ます。
IP イ ンテグレー タ ーでのプ ラ ッ ト フ ォーム ボー ド フ ロー
Vivado® Design Suite では、 ボー ド が自動認識 さ れます。 ターゲ ッ ト ボー ド に含まれる さ ま ざ ま な コ ンポーネン ト が
認識 さ れ る ので、IP を カ ス タ マ イ ズ し て、 そのボー ド の コ ンポーネン ト に接続 さ れ る よ う に IP を イ ン ス タ ン シエー ト お よ び設定で き ます。
IP イ ン テ グ レーターでは、 ボー ド に存在する コ ンポーネン ト すべてが [Board] ウ ィ ン ド ウ に表示 さ れます。 こ の ウ ィ ン ド ウ で必要な コ ン ポーネ ン ト を選択 し 、IP イ ン テ グ レーターの設計アシ ス タ ン ス を使用する と 、 ブ ロ ッ
X-Ref Target - Figure 1-14
図 1-14: 設計アシス タ ン スの [Make Connection] ダ イ ア ログ ボ ッ ク ス
X-Ref Target - Figure 1-15
[Address Editor] ウ ィ ン ド ウでの メ モ リ マ ッ プ
ブ ロ ッ ク デザ イ ンに イ ン ス タ ン シエー ト さ れたペ リ フ ェ ラ ル (ス レーブ) の メ モ リ マ ッ プは自動的に割 り 当て ら れま すが、 ア ド レ ス を手動で割 り 当て る こ と も で き ます。 こ のデザ イ ンのア ド レ ス マ ッ プを生成する には、 次を実行 し ます。
1. ブ ロ ッ ク 図の上にあ る [Address Editor] タ ブを ク リ ッ ク し ます。 2. ツールバーの [Auto Assign Address] を ク リ ッ ク し ます。
ア ド レ ス は、[Offset Address] および [Range] 列に値を入力 し て手動で設定で き ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テグ レーターを使用し た IP サブシ ス テ ムの設計』 (UG994) [参照 7] のこ のセ ク シ ョ ンを参照 し て く だ さ い。
ヒ ン ト: [Address Editor] ウ ィ ン ド ウは、 バス マス ター と し て機能する IP (Zynq-7000 AP SoC、 Zynq UltraScale+ MPSoC デバ イ ス な ど) がデザ イ ンに含まれてい る場合にのみ表示 さ れます。
デザイ ン ルール チ ェ ッ クの実行
Vivado IP イ ン テグ レー ターでは、 デザ イ ン作成中に リ アル タ イ ムで基本的な DRC が実行 さ れます。 ただ し、 デザ イ ン作成中にエ ラ ーが発生す る こ と があ り ます。 た と えば、 ク ロ ッ ク ピ ンの周波数が正 し く 設定 さ れていない場合な ど です。 包括的な DRC を実行する には、 [Validate Design] ボ タ ン を ク リ ッ ク し ます。 警告お よ びエ ラ ーがない場合は、 それ ら がなかっ た こ と を示す メ ッ セージが表示 さ れます。X-Ref Target - Figure 1-16
ブ ロ ッ ク デザイ ンの最上位デザイ ンへの統合
ブ ロ ッ ク デザ イ ン を完成 し てデザ イ ン を検証 し た ら 、 次の 2 つの手順を実行し てデザ イ ン を完成 さ せます。
° 出力フ ァ イ ルの生成 ° HDL ラ ッ パーの作成
出力フ ァ イ ルを生成す る と 、Vivado IDE の [Sources] ウ ィ ン ド ウ にその IP の ソ ース フ ァ イ ル と 適切な制約が作成 さ れ ます。 プ ロ ジ ェ ク ト 作成時に設定 し た タ ーゲ ッ ト 言語に応 じ て、IP イ ン テ グ レーターに よ り 適切な フ ァ イ ルが生成 さ れま す。Vivado IDE で特定の IP の ソ ース フ ァ イ ルを指定 し た ターゲ ッ ト 言語で生成で き ない場合は、 コ ン ソ ールにその こ と を示す メ ッ セージが表示 さ れます。
出力 フ ァ イルの生成
出力フ ァ イ ルを生成す る には、 次のいずれかを実行 し ます。° [Sources] ウ ィ ン ド ウ の [Design Sources] フ ォルダー階層を展開し てデザ イ ン を右 ク リ ッ ク し 、 [Generate
Output Products] を ク リ ッ ク し ます。
° Flow Navigator の [IP Integrator] の下の [Generate Block Design] を ク リ ッ ク し ます。
ブ ロ ッ ク デザ イ ンで使用 さ れるすべての IP に対 し て、 ソ ース フ ァ イ ルお よび最適な制約が生成 さ れます。 ソ ース フ ァ イ ルは、 プ ロ ジ ェ ク ト 作成中ま たは [Settings] ダ イ ア ロ グ ボ ッ ク ス で指定 し た ターゲ ッ ト 言語に基づいて生成 さ れます。 出力フ ァ イ ルの生成については、 『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テグ レーターを使用 し た IP サブシ ス テ ムの設計』 (UG994) [参照 7] のこ のセ ク シ ョ ンを参照 し て く だ さ い。
HDL ラ ッ パーの作成
IP イ ン テ グ レーターのブ ロ ッ ク デザ イ ンは、 それ よ り 上位のデザ イ ンに統合で き ます。 こ れには、 デザ イ ン を上位 の HDL フ ァ イ ルに イ ン ス タ ン シエー ト し ます。
上位に イ ン ス タ ン シエー ト す る には、図1-17 に示すよ う に Vivado IDE の [Sources] ウ ィ ン ド ウ でブ ロ ッ ク デザ イ ン を右 ク リ ッ ク し 、[Create HDL Wrapper] を ク リ ッ ク し ます。
Vivado では、 次の図に示すよ う に、 HDL ラ ッ パーを作成する際に 2 つの選択肢があ り ます。 • Vivado で ラ ッ パーを作成 し て自動的にア ッ プデー ト さ れる よ う にする (デフ ォル ト )。 • ユーザーが変更可能な ス ク リ プ ト を作成 し て、 ユーザーが編集お よ び管理す る 。 こ のオプシ ョ ン を選択 し た場 合、 ブ ロ ッ ク デザ イ ンでポー ト レベルの変更を加え る たびに、 ラ ッ パーを手動でア ッ プデー ト する必要があ り ます。 こ れに よ り 、IP イ ン テ グ レーター サブシ ス テ ムの最上位 HDL フ ァ イ ルが生成 さ れます。 こ れで、 デザ イ ン をエ ラ ボ レーシ ョ ン、 合成、 イ ンプ リ メ ン テーシ ョ ン な ど のデザ イ ン フ ローで使用で き ます。
Vivado ピ ン プ ラ ンナーでの PS I/O の表示
PCB ピ ン プ ラ ンニ ン グのガ イ ド ラ イ ンお よび こ れ ら のデバ イ ス のデザ イ ンについては、 『Zynq-7000 All Programmable SoC PCB デザ イ ン ガ イ ド 』 (UG933) [参照 11] を参照 し て く だ さ い。Vivado IDE で生成 さ れたエ ンベデ ッ ド フ ァ イル
Vivado IP イ ン テグ レー ターか ら SDK にプ ロ セ ッ サ ハー ド ウ ェ ア デザ イ ン をエ ク ス ポー ト する と き、 IP イ ン テグ レー タ ーに よ り 次の表に リ ス ト さ れてい る フ ァ イ ルが生成 さ れます。
生成フ ァ イ ルの詳細は、 ご使用のプ ロ セ ッ サの ソ フ ト ウ ェ ア開発者向けユーザー ガ イ ド を参照 し て く だ さ い。
X-Ref Target - Figure 1-18
図 1-18: [Create HDL Wrapper] ダ イ ア ログ ボ ッ ク ス 表 1-1: IP イ ン テグレー タ ーで生成 さ れる フ ァ イル フ ァ イル 説明 system.xml SDK を起動する と デフ ォル ト で開き、 シ ス テ ムのア ド レ ス マ ッ プを表示 し ます。 ps<#>_init.c ps<#>_init.h Zynq プ ロ セ ッ シ ン グ シ ス テ ムの初期化コー ド と 、 DDR ク ロ ッ ク 、 PLL、 MIO の初期 化設定が含まれます。SDK では、 プ ロ セ ッ シ ン グ シ ス テ ム上でアプ リ ケーシ ョ ン を 実行で き る よ う に、 プ ロ セ ッ シ ン グ シ ス テ ム を初期化する際に こ れ ら の設定が使用 さ れます。 プ ロ セ ッ シ ン グ シ ス テ ムの設定の中には、 ZC702 評価ボー ド 用に固定 さ れてい る も の も あ り ます。 ps<#>_init.tcl INIT フ ァ イ ルの Tcl バージ ョ ンです。 ps<#>_init.html 初期化デー タ が記述 さ れてい ます。
ソ フ ト ウ ェ ア開発キ ッ ト (SDK) の使用
ザ イ リ ン ク ス ソ フ ト ウ ェ ア開発キ ッ ト (SDK) は、 ザ イ リ ン ク ス エンベデ ッ ド プ ロ セ ッ サを ターゲ ッ ト と する ソ フ ト ウ ェ ア アプ リ ケーシ ョ ン を作成する ための環境を提供 し ます。 GNU ベース の コ ンパ イ ラ ツールチ ェーン (GCC コ ン パ イ ラ 、TCF シ ス テ ム デバ ッ ガー、 ユーテ ィ リ テ ィ 、 および ラ イ ブ ラ リ )、 JTAG デバ ッ ガー、 フ ラ ッ シ ュ プ ロ グ ラ マ、 ザ イ リ ン ク ス IP お よびベア メ タ ル ボー ド サポー ト パ ッ ケージ用の ド ラ イ バー、 アプ リ ケーシ ョ ン特定の関数 の ミ ド ル ウ ェ ア ラ イ ブ ラ リ 、 C/C++ ベア メ タ ルおよび Linux アプ リ ケーシ ョ ンの開発 と デバ ッ グ用の IDE な どが含 まれます。SDK はオープン ソ ース Eclipse プ ラ ッ ト フ ォーム をベース に し てお り 、 CDT (C/C++ Development Toolkit) が組み込まれてい ます。 SDK には、 次の機能があ り ます。 • C/C++ コー ド エデ ィ ターおよびコ ンパ イ ル環境 • プ ロ ジ ェ ク ト 管理 • アプ リ ケーシ ョ ン ビル ド コ ン フ ィ ギ ュ レーシ ョ ンおよび makefile の自動生成 • エ ラ ー ナビゲーシ ョ ン • エンベデ ッ ド ターゲ ッ ト をデバ ッ グおよびプ ロ フ ァ イ ルする ための統合環境 • ソ ース コー ド のバージ ョ ン制御な ど、 サー ド パーテ ィ プ ラ グ イ ン を使用 し た追加機能SDK の入手
SDK は、 ザ イ リ ン ク ス Vivado Design Suite イ ン ス ト ール パ ッ ケージか ら 、 ま たは ス タ ン ド ア ロ ン イ ン ス ト ール と し て入手で き ます。SDK には、 FSBL (First Stage Boot Loader) を作成する アプ リ ケーシ ョ ン テ ンプレー ト のほか、 ブー
ト イ メ ージ を ビル ド する ためのグ ラ フ ィ カル イ ン ターフ ェ イ ス も 含まれます。 SDK には、 コ ンセプ ト 、 タ ス ク 、 お よ び リ フ ァ レ ン ス情報を記述 し たヘルプ シ ス テ ムが含まれます。 詳細は、 SDK ヘルプ (UG782) [参照 26] を参照 し て く だ さ い。
ハー ド ウ ェ ア記述のエ ク スポー ト
デザ イ ン を イ ンプ リ メ ン ト し 、 ビ ッ ト ス ト リ ーム を生成 し た ら 、 ソ フ ト ウ ェ ア アプ リ ケーシ ョ ン を開発する ために デザ イ ン を SDK にエ ク ス ポー ト で き ます。 プ ロ セ ッ シ ン グ ロ ジ ッ ク に ロ ジ ッ ク が ま っ た く 含まれていない こ と が ま れにあ り ますが、 こ の よ う な場合は イ ンプ リ メ ン ト お よ びビ ッ ト ス ト リ ーム生成を実行せずにデザ イ ン を エ ク ス ポー ト す る こ と も で き ます。デザ イ ン を SDK にエ ク ス ポー ト する には、 次の手順に従い ます。
1. Vivado IDE で [File] → [Export] → [Export Hardware] を ク リ ッ ク し ます。 次の図に示す [Export Hardware] ダ イ ア ロ グ ボ ッ ク ス が表示 さ れます。
.
2. [Export Hardware] ダ イ ア ロ グ ボ ッ ク ス で [Include bitstream] チ ェ ッ ク ボ ッ ク ス をオンに し ます。
注記: プ ロ ジ ェ ク ト ベース のフ ローの場合、 [Export to] は通常 [<Local to Project>] に設定 さ れてい ますが、 必要に 応 じ て変更で き ます。
3. ハー ド ウ ェ ア定義をエ ク ス ポー ト し た ら 、[File] → [Launch SDK] を ク リ ッ ク し て Vivado か ら SDK を起動し ます。
図1-20 に示す [Launch SDK] ダ イ ア ロ グ ボ ッ ク ス が開き ます。
プ ロ ジ ェ ク ト ベース のフ ローでは、 [Exported location] および [Workspace] フ ィ ール ド は通常 [<Local to Project>] に設 定 さ れてい ます。 ハー ド ウ ェ ア定義を別のデ ィ レ ク ト リ にエ ク ス ポー ト す る 場合は、[Exported location] でそのデ ィ レ ク ト リ を指定 し て く だ さ い。[Workspace] も 必要に応 じ て適切なデ ィ レ ク ト リ に設定で き ます。
ハー ド ウ ェ ア定義を SDK にエ ク ス ポー ト し てか ら SDK を起動する と 、 SDK で ソ フ ト ウ ェ ア アプ リ ケーシ ョ ンの記 述を開始で き ます。
ソ フ ト ウ ェ アのデバ ッ グお よ びダ ウ ン ロ ー ド は、SDK か ら 実行で き ます。
ソ フ ト ウ ェ アの ELF フ ァ イ ルを Vivado ツールに イ ンポー ト し 戻し、 FPGA ビ ッ ト ス ト リ ームに統合する と 、 さ ら に 詳細なダ ウ ン ロ ー ド お よ びテ ス ト を実行で き ます。
X-Ref Target - Figure 1-19
図 1-19: [Export Hardware] ダ イ ア ログ ボ ッ ク ス
X-Ref Target - Figure 1-20
エ ンベデ ッ ド デザイ ン での Zynq UltraScale+
MPSoC の使用
概要
こ の章では、Zynq® UltraScale+™ MPSoC デバ イ ス を使用する場合の Vivado® Design Suite フ ローについて説明し ます。
こ こ に示す例では、 ザ イ リ ン ク ス ZCU102 Rev 1.0 評価ボー ド を ターゲ ッ ト と し、 Vivado Design Suite のバージ ョ ンは 2017.x を使用し てい ます。
すべてのプ ロ セ ッ サを対象に し たプ ロ グ ラ ミ ン グ情報は、第1 章の 「入門」 を参照 し て く だ さ い。
Zynq UltraScale+ MPSoC デバイ スの設計
ザ イ リ ン ク ス Zynq UltraScale+ MPSoC プ ロ セ ッ シ ン グ シ ス テ ム IP コ アの ソ フ ト ウ ェ ア イ ン ターフ ェ イ ス名は zynqps8 です。 Zynq UltraScale+ MPSoC フ ァ ミ リ は、 統合プ ロ セ ッ シ ン グ シ ス テ ム (PS) およびプ ロ グ ラ マブル ロ ジ ッ ク (PL) ユニ ッ ト を持つシ ス テ ム オン チ ッ プ (SoC) で構成 さ れてお り 、 1 つのダ イ で拡張可能で柔軟性の高い SoC ソ リ ューシ ョ ン を提供 し ます。
Zynq UltraScale+ プ ロ セ ッ シ ング シ ス テムを含む IP イ ン テグ レー タ ー
デザイ ンの作成
Zynq UltraScale+ MPSoC デバ イ ス を ターゲ ッ ト と するデザ イ ン プ ロ ジ ェ ク ト で、 [Create Block Design] ボ タ ン を ク リ ッ ク し 、 空のブ ロ ッ ク デザ イ ン を作成 し ます。
1. Flow Navigator で [Create Block Design] を ク リ ッ ク し、 次の図に示すよ う に [Create Block Design] ダ イ ア ロ グ ボ ッ ク ス にデザ イ ン名を入力 し ます。
2. こ のダ イ ア ロ グ ボ ッ ク ス で次を設定 し ます。
° [Directory]: [<Local to Project.] を選択 し てブ ロ ッ ク デザ イ ン をプ ロ ジ ェ ク ト の一部 と し て作成する か (デ
フ ォ ル ト)、 デ ィ レ ク ト リ を指定 し て別の場所に作成 し ます。
° [Specify source set]: プルダ ウ ン メ ニ ューか ら ソ ース タ イ プを指定 し ます。
次の図に示す よ う に空のブ ロ ッ ク デザ イ ン キ ャ ンバス が開き ます。
X-Ref Target - Figure 2-1
図 2-1: [Create Block Design] ダ イ ア ログ ボ ッ ク ス
X-Ref Target - Figure 2-2
3. [Add IP] を ク リ ッ ク を ク リ ッ ク する と 検索ボ ッ ク ス が表示 さ れ る ので、図2-3 に示すよ う に [ZYNQ UltraScale+ MPSoc] を検索 し て選択 し ます。
Zynq UltraScale+ MPSoc IP を選択 し てダブル ク リ ッ ク する と 、 ブ ロ ッ ク デザ イ ンに IP が追加 さ れ、 次の図に示 すプ ロ セ ッ シ ン グ シ ス テ ムのグ ラ フ ィ ッ ク が表示 さ れます。
こ れに対応す る Tcl コ マン ド は create_bd_cell で、 構文は次の と お り です。
create_bd_cell -type ip -vlnv xilinx.com:ip:zynq_ultra_ps_e:2.0 zynq_ultra_ps_e_0 4. プ ロ セ ッ シ ン グ シ ス テ ムのグ ラ フ ィ ッ ク を ダブル ク リ ッ ク する と 、 Zynq UltraScale+ MPSoc の [Re-customize IP]
ダ イ ア ロ グ ボ ッ ク ス (図2-5) が表示 さ れます。
X-Ref Target - Figure 2-3
図 2-3: IP カ タ ログでの Zynq UltraScale+ MPSoc の検索
X-Ref Target - Figure 2-4
5. ブ ロ ッ ク デザ イ ンの内容を確認 し ます。 [PS UltraScale+ MPSoc] ページの緑色のブ ロ ッ ク は設定可能です。 緑色 のブ ロ ッ ク を ク リ ッ ク す る と 、 そのブ ロ ッ ク のオプシ ョ ン を設定す る ページが開 き ます。
こ れ ら のページは、図2-5 の左側の Page Navigator か ら 選択する こ と も で き ます。
X-Ref Target - Figure 2-5
[Switch to Advanced Mode] チ ェ ッ ク ボ ッ ク ス をオンに し てア ド バン ス設定モー ド に切 り 替え る こ と も で き ます。 こ の オプシ ョ ン を オンす る と 、[Advanced Configuration][Advanced Configuration] および [PCIe Configuration] が設定可能に な り ます。
Zynq UltraScale+ MPSoc 設定の概要
Zynq UltraScale+ MPSoc の [Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス の Page Navigator か ら 設定可能なオプシ ョ ンの詳細 は、 『Zynq UltraScale+ MPSoC テ ク ニカル リ フ ァ レ ン ス マニ ュ アル』 (UG1085) [参照 9] を参照し て く だ さ い。
次のセ ク シ ョ ンでは、 こ れ ら のオプシ ョ ンについて簡単に説明 し ます。
Zynq UltraScale+ MPSoc の [Re-customize IP] ダ イ ア ログ ボ ッ ク スに関す
る情報
次の図に、[Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス の資料オプシ ョ ン を示 し ます。
X-Ref Target - Figure 2-6
図 2-6: ZYNQ UltraScale+ のア ド バン ス設定モー ド
• [Documentation]: 資料 メ ニ ューが開き、 製品ガ イ ド 、 IP 変更ロ グ、 Zynq UltraScale+ MPSoC に関連 し た資料を検 索で き る ザ イ リ ン ク ス ウ ェ ブサ イ ト にア ク セ ス で き ます。 開 く のは英語サ イ ト です。 ブ ラ ウ ザーの URL の www.xilinx.com を japan.xilinx.com に変更する と 日本語サ イ ト が表示 さ れます。 • [Presets]: 使用可能なプ リ セ ッ ト オプシ ョ ンに関する情報を表示 し ます。 プ ロ セ ッ シ ン グ シ ス テ ムの現在の設定 を フ ァ イ ルに保存 し た り 、 既存の設定を適用 し てそれを基にプ ロ セ ッ サの現在の イ ン ス タ ン ス を設定で き ます。 プ リ セ ッ ト は、 タ ーゲ ッ ト ボー ド に適用する こ と も で き ます。 使用可能なオプシ ョ ンは、 [Defalut]、 [ZC702]、 [ZC706]、 [ZedBoard] です。 • [IP Location]: IP 用に作成 さ れた ソ ース フ ァ イ ルのデ ィ レ ク ト リ を表示し ます。
I/O ペ リ フ ェ ラルの設定
ZYNQ UltraScale+ MPSoc では、 20 以上のペ リ フ ェ ラ ルを カ ス タ マ イ ズ し て使用で き ます。 こ れ ら のペ リ フ ェ ラ ル は、 デバ イ ス の専用 MIO (Multiplexed I/O)、 EMIO、 GT レーンに直接配線で き ます。 ペ リ フ ェ ラ ルには低速 と 高速の 2 種類があ り ます。
低速ペ リ フ ェ ラル: メ モ リ イ ン タ ー フ ェ イ ス
QSPI
汎用 ク ワ ッ ド SPI コ ン ト ローラーは、 ソ フ ト ウ ェ アに よ る汎用の低レベル ア ク セ スの要件を満た し ます。 こ の コ ン ト ロ ー ラ ーは、 汎用お よび今後の コ マン ド シーケ ン ス、 今後の NOR/NAND フ ラ ッ シ ュ デバ イ ス をサポー ト し ます。 ク ワ ッ ド SPI コ ン ト ローラーは汎用であ る ため、 ソ フ ト ウ ェ アでどのモー ド の コ マン ド シーケ ン スで も生成で き ます。 ク ワ ッ ド SPI コ ン ト ロー ラ ーでは、 SPI、 デュ アル SPI、 ク ワ ッ ド SPI モー ド の機能がすべてサポー ト さ れてい ます。 ま た、2 つのフ ラ ッ シ ュ デバ イ ス に対 し ては、 個別のバス を使用するデュ アル パ ラ レル モー ド 、 共有バス を使用す る ス タ ッ ク モー ド も サポー ト さ れます。 ク ワ ッ ド SPI の選択肢には、 [Single]、 [Dual Stacked]、 [Dual Parallel] があ り ます。QSPI I/O には、 スルー レー ト 、 駆動電流、 プルア ッ プ/プルダ ウ ン抵抗を設定で き ます。 オプシ ョ ンのフ ィ ー ド バ ッ ク ク ロ ッ ク も 生成で き ます。
次の図に、 ク ワ ッ ド SPI の設定オプシ ョ ン を示し ます。
X-Ref Target - Figure 2-8
NAND
NAND フ ラ ッ シ ュ コ ン ト ロー ラ ーには、 AXI (Advanced eXtensible Interface) イ ン ターフ ェ イ ス があ り ます。 こ の イ ン タ ーフ ェ イ ス に よ り 、ARM® プ ロ セ ッ サで NAND フ ラ ッ シ ュ コ ン ト ロー ラ ー内にあ る操作レ ジ ス タ を設定で き ま す。 こ のブ ロ ッ ク では、 オープ ン NAND フ ラ ッ シ ュ イ ン ターフ ェ イ ス の ワーキ ン グ グループ (ONFI) 規格 1.0、 2.0、 2.1、 2.2、 2.3、 3.0、 および 3.1 がサポー ト さ れてい ます。 NAND フ ラ ッ シ ュ コ ン ト ロー ラ ーは、 すべての コ マン ド 、 ア ド レ ス、 データ シーケ ン ス を処理し 、 ハー ド ウ ェ ア プ ロ ト コ ルを管理 し 、 レ ジ ス タ の読み出 し お よ び書 き 込み操作を実行す る こ と に よ り ユーザーが NAND フ ラ ッ シ ュ メ モ リ にア ク セ ス で き る よ う に し ます。 すべてのオプシ ョ ンは、 次の図に示す よ う に、[Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス で設定で き ます。
SD
AXI プ ロ セ ッ サ イ ン ターフ ェ イ ス を使用 し た SD 3.0/SDIO 3.0 ホ ス ト コ ン ト ロー ラ ーは、 セキ ュ ア デジ タ ル (SD) ホ ス ト コ ン ト ロー ラ ー規格のバージ ョ ン 3.00 に準拠 し てい ます。 ホ ス ト コ ン ト ロー ラ ーは転送レベルで SDIO/SD プ ロ ト コ ルを処理 し 、 デー タ のパ ッ ク 、CRC (巡回冗長検査) の追加、 開始/終了ビ ッ ト 、 ト ラ ンザ ク シ ョ ン フ ォーマ ッ ト のチ ェ ッ ク を実行 し ます。 ホ ス ト コ ン ト ロー ラ ーでは、 プ ロ グ ラ ム さ れた I/O を使用する方法 と 、 DMA データ転 送方法が提供 さ れます。 プ ロ グ ラ ム さ れた I/O を使用する方法では、 ホ ス ト プ ロ セ ッ サか ら バ ッ フ ァ ー データ ポー ト レ ジ ス タ を使用 し て デー タ が転送 さ れます。 ホ ス ト コ ン ト ロー ラ ーの DMA サポー ト は、 機能レ ジ ス タ の DMA サポー ト をチ ェ ッ ク する と 判断で き ます。DMA は、 ペ リ フ ェ ラ ルで CPU か ら の介入な し に メ モ リ に対し て読み出し ま たは書き込みを実行 で き る よ う に し ます。 ホ ス ト コ ン ト ロー ラ ーのシ ス テ ム ア ド レ ス レ ジ ス タ は最初のデータ ア ド レ ス を ポ イ ン ト し、 デー タ はそのア ド レ ス か ら 順次ア ク セ ス さ れます。X-Ref Target - Figure 2-9
I/O ペ リ フ ェ ラル
CAN
PS にはほぼ同一の CAN コ ン ト ロー ラ ーが 2 つあ り 、 個別に動作 さ せる こ と がで き ます。 CAN コ ン ト ロー ラ ーには 次の機能があ り ます。
• ISO 11898-1、 CAN 2.0A、 および CAN 2.0B 規格に準拠。 • 標準 (11 ビ ッ ト 識別子) および拡張 (29 ビ ッ ト 識別子) フ レーム。 • 64 個の メ ッ セージに対応し た送信 メ ッ セージ FIFO (TXFIFO)。 • 1 つの高優先度送信バ ッ フ ァ ー (TXHPB) を介 し て優先度を送信。 • TXFIFO および RXFIFO の ウ ォーターマー ク 割 り 込み。 • エ ラ ー発生時ま たは標準モー ド でのアービ ト レーシ ョ ン ロ ス発生時の自動再送信。 • 64 個の メ ッ セージに対応し た受信 メ ッ セージ FIFO (RXFIFO)。 • イ ネーブル、 マ ス ク 、ID での 4 つの RX 受諾フ ィ ル ター。 • 診断アプ リ ケーシ ョ ン用のループバ ッ ク お よ びス ヌープ モー ド 。 • 自動 ウ ェー ク ア ッ プ機能付 き ス リ ープ モー ド 。 • マ ス ク 可能なエ ラ ーお よ びス テー タ ス割 り 込み。 • 受信 メ ッ セージ用の 16 ビ ッ ト の タ イ ム ス タ ンプ。 • 読み出 し 可能な RX/TX エ ラ ー カ ウ ン ター。
X-Ref Target - Figure 2-10
次の図に、CAN の設定オプシ ョ ン を示 し ます。
I2C
I2C モジ ュールは、 マルチマ ス ター デザ イ ンでマ ス ターま たは ス レーブ と し て機能可能なバス コ ン ト ロー ラ ーです。 DC か ら の幅広い周波数 (400 Kb/s ま で) がサポー ト さ れています。 マ ス タ ー モー ド では、 プ ロ セ ッ サに よ り ス レーブ ア ド レ ス を I2C ア ド レ ス レ ジ ス タ に書き込む こ と に よ り 転送を開 始 し ます。 デー タ 割 り 込みま たは転送完了割 り 込みに よ り 、 プ ロ セ ッ サに受信デー タ が使用で き る よ う にな っ た こ と が通知 さ れます。 ホール ド ビ ッ ト がセ ッ ト さ れてい る場合、 データ送信後に I2C イ ン ターフ ェ イ ス で ク ロ ッ ク ラ イ ン (SCL) が Low に保持 さ れ、 低速プ ロ セ ッ サ サービ ス がサポー ト さ れます。 マ ス ターは、 標準 (7 ビ ッ ト ) ア ド レ ス指定 と 拡張 (10 ビ ッ ト ) ア ド レ ス指定の両方のモー ド を使用する よ う プ ロ グ ラ ム可能です。 10 ビ ッ ト ア ド レ ス指定 は、 マ ス タ ー モー ド でのみサポー ト さ れます。 ス レーブ モニ ター モー ド では、 I2C イ ン ターフ ェ イ ス がマ ス ター と し て設定 さ れ、 指定の ス レーブ デバ イ ス が ACK で応答す る ま で ス レーブに転送 し 続け ます。 ホール ド ビ ッ ト を設定する と 、 マ ス ターが転送 し続けない よ う に し、 ス レーブでのオーバーフ ロ ー状況を防 ぐ こ と がで き ます。 マ ス タ ー モー ド と ス レーブ モー ド の共通機能に、 タ イ ム ア ウ ト (TO) 割 り 込みフ ラ グがあ り ます。 マ ス ターま たはア ク セ ス さ れた ス レーブに よ り 、 タ イ ム ア ウ ト レ ジ ス タ で指定 さ れた時間よ り も 長 く SCL が Low に保持 さ れ る と 、 ス ト ール状態を回避す る ために TO 割 り 込みが生成 さ れます。 2 つの I2C コ ン ト ロー ラ ーに適切な MIO ピ ン を ド ロ ッ プダ ウ ン リ ス ト か ら 選択で き ます。 オプシ ョ ンの割 り 込みは、 こ の 2 つの I2C コ ン ト ロー ラ ーか ら 生成で き ます。 次の図に、I2C の設定オプシ ョ ン を示し ます。X-Ref Target - Figure 2-11
図 2-11: CAN I/O ピ ンの設定
PJTAG
ARM DAP と 通信する ための代替オプシ ョ ンは、 PJTAG 信号を介する方法です。 MIO には 6 個の イ ン ターフ ェ イ ス が指定 さ れてい ます。MIO SLCR を使用する と 、 PJTAG イ ン ターフ ェ イ ス と し て PJTAG0-5 MIO イ ン ターフ ェ イ ス の いずれか を選択で き ます。PJTAG イ ン ターフ ェ イ スは、 デバ イ ス周囲の JTAG イ ン ターフ ェ イ ス を配線する JTAG セ キ ュ リ テ ィ ゲー ト 回路に入力 さ れます。
PJTAG イ ン ターフ ェ イ ス を使用する には、 次の条件が満た さ れてい る必要があ り ます。
• CSU の正 し いレ ジ ス タ に書き込む こ と に よ り 、 JTAG セキ ュ リ テ ィ ゲー ト がデ ィ ス エーブルにな っ てい る。 • JTAG チ ェーンに ARM DAP が含まれない。
セキ ュ リ テ ィ ホールを回避する ため、 PJTAG はセキ ュ リ テ ィ ゲー ト の前に JTAG 信号転送に多重化 し て入力 さ れま す。 次の図に、PJTAG の設定オプシ ョ ン を示 し ます。
PMU
プ ラ ッ ト フ ォーム管理ユニ ッ ト (PMU) は、 電源投入、 リ セ ッ ト 、 シ ス テ ム全体の リ ソ ース監視を制御 し ます。 Zynq UltraScale+ MPSoC PMU は、 次の タ ス ク を実行し ます。
• ブー ト 中のシ ス テ ム初期化。 • 電力ゲーテ ィ ン グの管理。 シ ス テ ムがオ フ モー ド の場合、 外部ま たは内部 イベン ト か ら の指示でオンにな り ます。 それ ら の イベン ト を検出す る ため、 シ ス テ ム ロ ジ ッ ク の一部がア ク テ ィ ブにな っ てい ます。 PMU はパワー マネージ メ ン ト 、 エ ラ ー管理、 安全 性機能、 ソ フ ト ウ ェ ア テ ス ト ラ イ ブ ラ リ も 提供 し ます。 PMU はス テータ ス情報を取得 し、 アプ リ ケーシ ョ ン プ ロ セ ッ サを使用せずにほかのシ ス テ ム エ レ メ ン ト への要求の 発行、 シ ス テ ム温度セ ンサーの監視、 フ ァ ンや電源な ど のシ ス テ ム エ レ メ ン ト の制御を実行 し ます。
X-Ref Target - Figure 2-13
CSU
ブー ト プ ロ セ スは、 PMU およびコ ン フ ィ ギ ュ レーシ ョ ン セキ ュ リ テ ィ ユニ ッ ト (CSU) に よ っ て管理および実行 さ れます。CSU は、 [CSU] チ ェ ッ ク ボ ッ ク ス をオンにする と 使用で き る よ う にな り ます。
X-Ref Target - Figure 2-14
SPI
SPI バス コ ン ト ロー ラ ーは、 メ モ リ 、 温度センサー、 圧力センサー、 アナ ロ グ コ ンバーター、 リ アル タ イ ム ク ロ ッ ク 、 デ ィ ス プ レ イ 、 シ リ アル モー ド サポー ト 付き の SD カー ド な ど、 さ ま ざ ま なペ リ フ ェ ラ ル と の通信を可能に し ます。SPI コ ン ト ロー ラ ーは、 マ ス ター モー ド 、 ス レーブ モー ド 、 ま たはマルチマ ス ター モー ド で機能 し ます。 Zynq UltraScale+ MPSoC には、 SPI コ ン ト ー ラ ーの イ ン ス タ ン ス が 2 つ (SPI0 および SPI1) あ り ます。 こ れ ら の コ ン ト ロ ー ラ ーは同一で、 ソ フ ト ウ ェ ア ド ラ イ バーに よ り 個別に制御 さ れます。 同時に動作 さ せる こ と がで き ます。
UART
UART コ ン ト ロー ラ ーは全二重の非同期レ シーバーおよび ト ラ ン ス ミ ッ ターで、 プ ロ グ ラ ム可能なボー レー ト およ び I/O 信号フ ォーマ ッ ト を幅広 く サポー ト し ています。 自動パ リ テ ィ 生成およびマルチマ ス ター検出モー ド をサポー ト で き ます。 UART の操作は、 コ ン フ ィ ギ ュ レーシ ョ ン レ ジ ス タおよびモー ド レ ジ ス タ で制御 さ れます。 FIFO の ス テー ト 、 モデ ム信号、 その他の コ ン ト ロ ー ラ ー フ ァ ン ク シ ョ ンは、 ス テータ ス、 割 り 込みス テータ ス、 モデム ス テー タ ス レ ジ ス タ を使用 し て読み出 さ れます。 コ ン ト ロ ー ラ ーの RX と TX にそれぞれデータ パス があ り 、 各パス に 64 バ イ ト の FIFO が含まれています。 データ は TX お よび RX FIFO でシ リ ア ラ イ ズ/デシ リ ア ラ イ ズ さ れます。 ま た、 コ ン ト ロー ラ ーには RxD および TxD 信号の さ ま ざ ま なループバ ッ ク 設定をサポー ト す る ためのモー ド ス イ ッ チが含まれてい ます。 FIFO 割 り 込みス テータ ス ビ ッ ト は、 ポー リ ン グ ま たは割 り 込み駆動のハン ド ラ ーをサポー ト し ます。 ソ フ ト ウ ェ アは、RX および TX データ ポー ト レ ジ ス タ を使用し てデータ を読み出 しおよび書き込みます。X-Ref Target - Figure 2-15
モデムの よ う な アプ リ ケーシ ョ ンで UART を使用する と 、 モデム制御モジ ュールに よ り モデム ハン ド シ ェー ク 信号 が検出お よ び生成 さ れ、 ま たハン ド シ ェー ク プ ロ ト コ ルに従っ て レ シーバーおよび ト ラ ン ス ミ ッ ター パス が制御 さ れます。 次の図に、UART の設定オプシ ョ ン を示し ます。
GPIO
汎用 I/O (GPIO) ペ リ フ ェ ラ ルは、 MIO モジ ュールを介 し て 78 本ま でのデバ イ ス ピ ン を監視および制御する ソ フ ト ウ ェ ア を提供 し ます。 ま た、EMIO イ ン ターフ ェ イ ス を介し て、 プ ロ グ ラ マブル ロ ジ ッ ク (PL) か ら の 96 個の入力お よ び PL への 192 個の出力へのア ク セ ス を提供し ます。
X-Ref Target - Figure 2-16
GPIO では、 関連の イ ン ターフ ェ イ ス信号を グループ化する レ ジ ス タ が 6 つのバン ク に配置 さ れています。 各 GPIO は、 個別にダ イ ナ ミ ッ ク に入力、 出力、 割 り 込みを認識す る よ う プ ロ グ ラ ム さ れます。 ソ フ ト ウ ェ アでは、1 つの ロ ー ド 命令で 1 バン ク 内のすべての GPIO 値を読み出し た り 、 1 つの ス ト ア命令で 1 つ以上の GPIO (GPIO の範囲) に デー タ を書 き 込む こ と がで き ます。図2-17 に、 GPIO の設定オプシ ョ ン を示 し ます。
プ ロ セ ッ シ ング ユニ ッ ト (PU)
Zynq UltraScale+ MPSoC デバ イ ス のプ ロ セ ッ シ ン グ ユニ ッ ト (PU) は、4 つの Cortex™-A53 MPCore™ プ ロ セ ッ サ、L2 キ ャ ッ シ ュ 、 お よ びその関連機能か ら 構成 さ れてい ます。Cortex-A53 MPCore プ ロ セ ッ サは最 も 電力効率の よ い ARM v8 プ ロ セ ッ サで、 32 ビ ッ ト および 64 ビ ッ ト の コー ド を シーム レ ス にサポー ト で き、 非常に効率の よ い 8 段パ イ プ ラ イ ン と 、 高度な フ ェ ッ チお よ びデー タ ア ク セ ス テ ク ニ ッ ク をバ ラ ン ス よ く 利用 し てパフ ォーマン ス を高め ま す。 低レベル デバ イ ス に適 し た消費電力およびエ リ ア フ ッ ト プ リ ン ト ですが、 同時に高い コ ア集積度を必要 と する ス ケー ラ ブルなエン タ ープ ラ イ ズ シ ス テ ムで も 高パフ ォーマン ス を提供で き ます。
X-Ref Target - Figure 2-17
SWDT
Zynq UltraScale+ MPSoC デバ イ ス には、 RPU と APU の各サブシ ス テ ムに対し て 1 つずつ、 合計 2 つのシ ス テ ム ウ ォ ッ チ ド ッ グ タ イ マー (SWDT) が含まれてい ます。
• RPU SWDT は低消費電力 ド メ イ ン (LPD) にあ り ます。 • PU SWDT はフル電力 ド メ イ ン (FPD) にあ り ます。
各 SWDT はエ ラ ー コ ンデ ィ シ ョ ン情報をエ ラ ー マネージ ャ ーに通知し ます。
PU SWDT は、 APU ま たは FPD の リ セ ッ ト に使用で き ます。 RPU SWDT は、 RPU ま たはプ ロ セ ッ シ ン グ シ ス テ ム (PS) の リ セ ッ ト に使用で き ます。 こ れ ら の タ イ マーは 図2-18 に示す よ う に イ ネーブルにで き ます。
Trace
Cortex-A53 MPCore エンベデ ッ ド ト レース マ ク ロ セル (ETM) は、 プ ロ グ ラ ム フ ロー ト レース (PFT) アーキテ ク チ ャ に基づいて、Cortex-A53 MPCore に対 し て リ アル タ イ ム命令フ ローを実行する モジ ュールです。 Cortex-A53 MPCore ETM は、 ト レース ツールで使用 さ れる情報を生成し、 プ ロ グ ラ ムのすべて ま たは一部の実行を再構築し ます。 PFT アーキ テ ク チ ャ では、 ト レース ツールで ト レース中の コー ド の コ ピーにア ク セ ス で き る も の と 想定 さ れます。 こ の ため、ETM は ウ ェ イ ポ イ ン ト と 呼ばれ る プ ロ グ ラ ム実行の特定点でのみ ト レース を生成 し ます。 こ れに よ り 、 ETM で生成 さ れ る ト レース データ量を削減で き ます。 ウ ェ イ ポ イ ン ト は、 例外な ど、 プ ロ グ ラ ム フ ローま たは イベン ト の変化です。 ト レース ツールでは、 ウ ェ イ ポ イ ン ト を使用 し て、 プ ロ グ ラ ム実行フ ローを追跡 し ます。 イ ンプ リ メ ン テーシ ョ ン を簡単にす る ため、 各 Cortex-A53 MPCore に 1 つずつ ETM がエンベデ ッ ド さ れてお り 、 リ アル タ イ ム に実行中の ト レース がキ ャ プチ ャ さ れます。
X-Ref Target - Figure 2-18
TTC
ト リ プル タ イ ム カ ウ ン ター (TTC) モジ ュールには、 3 つの独立 し た タ イ マー /カ ウ ン ター モジ ュールがあ り 、 それぞ れにシ ス テ ム ク ロ ッ ク ま たは外部派生 ク ロ ッ ク を使用 し て ク ロ ッ ク を供給で き ます。 3 つのカ ウ ン ターで 1 つの APB バス を共有 し てい る ため、 カ ウ ン ターのセキ ュ リ テ ィ ス テータ スは同じ であ る必要があ り ます。 TTC がセキ ュ ア モー ド の場合は、 ユーザー モー ド と し て実行し てい る アプ リ ケーシ ョ ンはそのレ ジ ス タ にはア ク セ ス し ません。2 つの TTC モジ ュールがデバ イ ス に イ ン ス タ ン シエー ト さ れますが、 1 つは TrustZone ソ フ ト ウ ェ ア用 に予約 さ れ、 も う 1 つは TrustZone ソ フ ト ウ ェ ア と ユーザー ソ フ ト ウ ェ アの両方で共有 さ れます。 TrustZone テ ク ノ ロ ジ を使用 し ていない場合は、 両方の TTC をユーザー ソ フ ト ウ ェ アで使用で き ます。 さ ら に、 TTC には外部基準 ク ロ ッ ク 入力お よ びパルス幅で変調 さ れた (PWM) 出力をサポー ト する オプシ ョ ンがあ り ます。図2-19 に、 TTC の設 定オプシ ョ ン を示 し ます。高速ペ リ フ ェ ラル
ギガ ビ ッ ト イーサネ ッ ト コ ン ト ロー ラ ー (GEM)
ギガ ビ ッ ト イ ーサネ ッ ト コ ン ト ロー ラ ー (GEM) は、イーサネ ッ ト 用の IEEE 規格 (IEEE Std 802.3-2008) と 互換性のあ る 10/100/1000 Mb/s の イーサネ ッ ト MAC を イ ンプ リ メ ン ト し、 10/100 モー ド では半二重ま たは全二重で、 1000 モー ド では全二重で動作可能です。 プ ロ セ ッ シ ン グ シ ス テ ム (PS) には 4 つのギガビ ッ ト イ ーサネ ッ ト コ ン ト ロー ラ ーが 含ま れてい ます。 各 コ ン ト ロ ー ラ ーは個別に設定で き ます。 各 コ ン ト ロ ー ラ ーでは、 ピ ン を節約す る ため RGMII (Reduced Gigabit Media Independent Interface) v2.0 が使用 さ れます。
プ ロ グ ラ マブル ロ ジ ッ ク (PL) には、 GMII (Gigabit Media Independent Interface) を提供する EMIO を介 し てア ク セ ス さ れます。EMIO イ ン ターフ ェ イ ス で使用可能な GMII を使用し て、 PL にほかの イーサネ ッ ト 通信 イ ン ターフ ェ イ ス を作成で き ます。GEM では PS-GTR イ ン ターフ ェ イ ス を使用し て SGMII がサポー ト さ れています。
X-Ref Target - Figure 2-19
MAC 機能の設定、 操作モー ド の選択、 ネ ッ ト ワー ク 管理統計の有効化および監視には、 レ ジ ス タ を使用 し ます。 DMA コ ン ト ロー ラ ーは、 AXI (advanced eXtensible interface) を介 し て メ モ リ に接続 し ます。 コ ン ト ロー ラ ーの MAC の FIFO イ ン ターフ ェ イ ス に接続 さ れてお り 、 エンベデ ッ ド プ ロ セ ッ シ ン グ シ ス テ ムのパケ ッ ト デー タ ス ト レージ に ス キ ャ ッ タ ー ギ ャ ザータ イ プの機能を提供 し ます。 各 GEM コ ン ト ロー ラ ーには、 PHY 用に MDIO (Management Data Input/Output イ ン ターフ ェ イ ス があ り ます。
タ イ ム ス タ ンプ ユニ ッ ト (TSU) は、次の図に示すよ う に、[Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス で [GEM TSU Clock] チ ェ ッ ク ボ ッ ク ス をオンに し て イ ネーブルにする こ と も で き ます。 TSU は、 タ イ マー 1 個 と 複数の レ ジ ス タ で構成
さ れてお り 、PTP イベン ト フ レームが メ ッ セージ タ イ ム ス タ ンプ ポ イ ン ト を超え る時間を キ ャ プチ ャ し ます。 こ れ ら は APB イ ン ターフ ェ イ ス を介し てア ク セ ス で き ます。 キ ャ プチ ャ レ ジ ス タ がア ッ プデー ト さ れ る と 、 割 り 込みが 発行 さ れます。 次の図に、GEM の設定オプシ ョ ン を示し ます。
USB
Zynq UltraScale+ MPSoC デバ イ ス の USB 3.0 コ ン ト ロー ラ ーは、 2 つの独立し た多目的デバ イ ス (DRD) コ ン ト ロー ラ ーで構成 さ れてい ます。 ど ち ら も 個別にホ ス ト ま たはデバ イ ス と し て機能す る よ う いつで も 設定で き ます。USB 3.0 DRD コ ン ト ロー ラ ーは、シ ス テ ム ソ フ ト ウ ェ アに AXI ス レーブ イ ン ターフ ェ イ ス を介し て xHCI (eXtensible Host Controller Interface) を提供 し ます。 コ ン ト ロ ー ラ ー内に DMA エン ジ ンがあ り 、 AXI マ ス ター イ ン ターフ ェ イ ス を使用し てデータ を転送し ます。 こ の 3 つのデ ュ アル ポー ト RAM 設定に よ り 、 次の も のが イ ンプ リ メ ン ト さ れます。 • RX データ FIFO • TX デー タ FIFO • デ ィ ス ク リ プ タ ー/レ ジ ス タ キ ャ ッ シ ュ。
X-Ref Target - Figure 2-20
AXI マ ス ター ポー ト お よびプ ロ ト コ ル層は、 バ ッ フ ァ ー管理ユニ ッ ト を介し て異な る RAM にア ク セ ス し ます。 次 の図に、USB の設定オプシ ョ ン を示 し ます。
PCIe
Zynq UltraScale+ MPSoC デバ イ スは、 Integrated Block for PCI Expresss® v2.1 準拠、 AXI-PCIe ブ リ ッ ジ、 DMA モジ ュー
ルの コ ン ト ロ ー ラ ーを提供 し ます。AXI-PCIe ブ リ ッ ジは PCIe と AXI をつな ぐ高パフ ォーマン ス のブ リ ッ ジです。 PCIe 用コ ン ト ロー ラ ーではエン ド ポ イ ン ト お よびルー ト ポー ト の両方の操作がサポー ト さ れています。 コ ン ト ロー
ラ ーは 2 つのサブモジ ュールで構成 さ れています。
• AXI-PCIe ブ リ ッ ジは、 AXI か ら PCIe ま たは PCIe か ら AXI へのプ ロ ト コ ル変換、 イ ン グ レ ス/エグ レ ス ア ド レ ス変換、DMA、 ルー ト ポー ト /エン ド ポ イ ン ト (RP/EP) モー ド のサービ ス を提供 し ます。
• Integrated Block for PCIe は、 一方で AXI-PCIe ブ リ ッ ジ、 も う 一方で PS-GTR ト ラ ン シーバー と 通信 し、 リ ン ク ネ ゴ シエーシ ョ ン、 エ ラ ー検出お よ び リ カバ リ な ど、PCIe プ ロ ト コ ルに特化し た機能を実行し ます。 こ のブ ロ ッ ク には直接ア ク セ ス で き ません。
こ のブ ロ ッ ク は、 次の図に示す よ う に、[Re-customize IP] ダ イ ア ロ グ ボ ッ ク ス で [PCIe] チ ェ ッ ク ボ ッ ク ス をオンに す る と イ ネーブルにで き ます。
X-Ref Target - Figure 2-21
図 2-21: USB コ ン ト ロー ラ ー ピ ンの設定
X-Ref Target - Figure 2-22