Top Banner
UltraFast エンベデッド デザイン 設計手法ガ イ ド UG1046 (v2.3) 2018 4 20 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に よっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきまし ては、必ず最新英語版をご参照ください。
218

UltraFast エンベデッド デザイン 設計手法ガイド - Xilinx...UltraFast エンベデッド デザイン 設計手法ガイド UG1046 (v2.3) 2018 年 4 月 20 日...

Jan 25, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • UltraFast エンベデ ッ ド デザイ ン設計手法ガイ ド

    UG1046 (v2.3) 2018 年 4 月 20 日

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

  • UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 2UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    改訂履歴

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

    日付 バージ ョ ン 改訂内容

    2018 年 4 月 20 日 2.3 • 第 5 章の 「概要」 に注記を追加。

    • ガイ ド全体で 「BFM」 を 「VIP」 に置換。

    2017 年 7 月 27 日 2.2 • Vivado IDE をア ッ プデー ト および編集上の変更を追加。

    2015 年 4 月 22 日 2.1 • 「エンベデッ ド設計手法チェ ッ ク リ ス ト 」 を追加。

    • 「資料および ト レーニングへのア ク セス」 を追加。

    2015 年 3 月 26 日 2.0 • 「SDSoC 環境」 を追加。

    • 「関連するデザイ ン ハブ」 を追加。

    2014 年 10 月 20 日 1.1 • 古い情報を削除。

    • 「システム レベルの考慮事項」 の次のセ ク シ ョ ンに情報を追加:

    ° 「パフ ォーマン ス」

    ° 「ク ロ ッ キングおよび リ セ ッ ト 」

    2014 年 10 月 8 日 1.0 初版。

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=2

  • 目次

    第 1 章: 概要エンベデッ ド設計手法チェ ッ ク リ ス ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7資料および ト レーニングへのア ク セス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    第 2 章: システム レベルの考慮事項パフ ォーマン ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11消費電力 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15ク ロ ッ キングおよび リ セ ッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33割 り 込み . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37エンベデッ ド デバイ スのセキ ュ リ テ ィ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41プロ フ ァ イ リ ングおよび分割 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    第 3 章: ハー ド ウ ェ ア デザイ ンの考慮事項ブー ト デバイ スおよびそのコ ンフ ィ ギュ レーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57メ モ リ イ ン ターフ ェ イ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63ペ リ フ ェ ラル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69IP ブロ ッ クの設計 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86ハード ウ ェア パフ ォーマン スの考慮事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94データ フ ロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99PL ク ロ ッ ク供給手法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103ACP およびキ ャ ッ シュ コ ヒ ーレ ンシ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107PL の HP ポー ト ア ク セス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110システム管理のハード ウ ェア アシス タ ン ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114ハード ウ ェア リ コ ンフ ィ ギュ レーシ ョ ンの管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117APU からの GP およびダ イ レ ク ト PL ア ク セス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

    第 4 章: ソ フ ト ウ ェ ア デザイ ンの考慮事項プロセ ッ サの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127OS および RTOS の選択 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132ラ イブラ リ および ミ ド ルウ ェア . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141ブー ト ローダー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145ソ フ ト ウ ェア開発ツール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

    第 5 章: ハー ド ウ ェ ア デザイ ン フ ロー概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160Vivado IDE を使用し た IP サブシステムの構築 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160ルール ベースの接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161階層的な IP サブシステムの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162[Board] ウ ィ ン ド ウ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162ブロ ッ ク デザイ ンの生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162再利用のための IP の作成と パッ ケージ化. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 3UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=3

  • カス タ ム イ ン ターフ ェ イ スの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164カス タ ム IP の管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164Vivado 高位合成 (HLS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165ま と め . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

    第 6 章: ソ フ ト ウ ェ ア デザイ ン フ ローボード立ち上げ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168ド ラ イバーの開発 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171アプ リ ケーシ ョ ン開発 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179ザイ リ ン ク ス SDK ツールおよびパッ ケージ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185ザイ リ ン ク ス ソ フ ト ウ ェ ア開発ツール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

    第 7 章: デバッ グ概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190ソ フ ト ウ ェアのみのデバッ グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192シ ミ ュ レーシ ョ ン ベースのデバッ グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196ボード のデバッ グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197ハード ウ ェア と ソ フ ト ウ ェアの協調デバッ グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198仮想プラ ッ ト フ ォーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

    第 8 章: SDSoC 環境概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202全体的な使用フ ロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204プロ フ ァ イ リ ング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206パフ ォーマン ス見積も り . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206ソ フ ト ウ ェア/ハード ウ ェ ア システム全体の作成と実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207C 言語から呼び出し可能な RTL IP ラ イブラ リ を使用し たパフ ォーマン スの最適化 . . . . . . . . . . . . . . . . . . . . . . . 207Vivado HLS を使用し た IP パフ ォーマン スの最適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207システム パフ ォーマン スの最適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208システムのデバッ グ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209パフ ォーマン スの測定と解析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210エ ク スパー ト 向けの使用モデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

    付録 A: その他のリ ソースおよび法的通知ザイ リ ン ク ス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212ソ リ ューシ ョ ン セン ター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212Documentation Navigator およびデザイ ン ハブ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212Xilinx Documentation Navigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213ト レーニング リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217お読み く ださ い: 重要な法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 4UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=4

  • 第 1 章

    概要SoC 製品の リ リ ースに伴い、 ザイ リ ン ク スでは、 さ らに高度なシステムを短期間で、 効率的に、 確実に構築するための効果的な方法を提供し ています。 システムが高度になるほど、 通常複雑性も増し ます。 これには、 長所も あれ

    ば短所も あ り ます。 以前は構築するのが不可能であった り 、 非常に困難であった製品を作成でき る よ う になった こ

    と は長所ですが、 製品の複雑性が増し た こ と によ り 、 特に製品のラ イ フ サイ クルの早期に設計に関する適切な決定を下すこ と がさ らに重要 と な り ます。 システム ソ フ ト ウ ェア、 アプ リ ケーシ ョ ン、 およびハード ウ ェアは互いに影響し合 う ので、 システム レベルの問題を考慮し て解決する ためには、 新しい手法が必要です。 ザイ リ ン ク スでは、この課題に対処するため、 ソ フ ト ウ ェ ア ツール、 ユーザー ガイ ド、 リ フ ァ レ ン ス マニュ アル、 リ フ ァ レ ン ス デザイ ンなどを含む包括的なツール ボ ッ ク を提供し てお り 、 これを使用する こ と によ り SoC を使用し た製品の開発期間を短縮でき ます。

    通常、 エンベデッ ド開発チームにはシステム構築者、 ソ フ ト ウ ェ ア エンジニア、 およびハード ウ ェア エンジニアが含まれ、 それぞれのチーム メ ンバーが使い慣れたツールで設計を開始し ます。 こ の方法は従来のエンベデッ ド開発プロ ジェ ク ト では問題あ り ませんでし たが、 SoC のボード機能を使用する場合は、 開発方法を前も って考慮し ておかない と、 問題 と なる可能性があ り ます。 この資料は、 開発チームがよ り 効率的にデザイ ンの開発を進められる よ

    う にエンベデッ ド システム開発者向けに記述されてお り 、 主に FPGA 設計者向けの 『UltraFast 設計手法ガイ ド (Vivado Design Suite 用)』 (UG949) [参照 16] を補足するために提供されています。

    「手法」 の意味は人によ って異な り ますが、 通常はフ ロー チャー ト 、 方法、 原則、 規則、 方針などを意味し ます。 この資料は、 手順を 1 つずつ示すものではな く 、 設計者がザイ リ ン ク ス ツール ボ ッ ク ス を使用し てデザイ ンに関する適切な決定を下すこ と ができ る よ う に、 エンベデッ ド システムを設計する ための情報およびガイ ダン ス を示すためのものです。 内容によ っては、 エンベデッ ド システム全般に適用される ものも あれば、 ザイ リ ン ク スの SoC 製品にしか適用されないものも あ り ます。 内容は、 ユーザーの経験やザイ リ ン ク ス内外のシステム開発から学んだこ と を

    反映し てお り 、 主な原則や、 実行すべき こ とおよび実行すべきでないこ と、 ベス ト プラ ク テ ィ ス、 危険な状況の回避方法などについて記述し ています。 ト ピ ッ ク によ っては、 概念を示すユース ケース も示されています。

    この資料は、 開発チーム内の役割に応じ た次の機能分野別に構成されています。

    • 「システム レベルの考慮事項」

    • 「ハード ウ ェ ア デザイ ンの考慮事項」

    • 「ソ フ ト ウ ェ ア デザイ ンの考慮事項」

    • 「ハード ウ ェ ア デザイ ン フ ロー」

    • 「ソ フ ト ウ ェ ア デザイ ン フ ロー」

    • 「デバッ グ」

    • 「SDSoC 環境」

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 5UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=5

  • 第 1 章: 概要

    表 1-1 にチーム メ ンバーの各役割に関連する章を示し ますが、 開発を始める前にチーム メ ンバー全員がこの資料全体を読んでお く こ と をお勧めし ます。 章の内容が担当し ている部分のものでな く て も、 それらに示される課題やガ

    イ ダン ス を理解し てお く こ と で役立つこ と があ り ます。 ソ フ ト ウ ェ ア エンジニア と ハード ウ ェア エンジニアの境はあいまいになってき てお り 、 お互いの分野を超えて理解し てお く こ と で、 チーム全体が効率的に機能する よ う にな

    り ます。 た と えば、 ソ フ ト ウ ェ ア エンジニアは使用されるハード ウ ェアがどのよ う に動作するのかを理解し てお く必要があ り ますし、 ハード ウ ェ ア エンジニアはハード ウ ェアに関する決定事項がソ フ ト ウ ェアにどのよ う に影響するかを理解し てお く 必要があ り ます。

    通常エンベデッ ド デザイ ンは、 こ の資料に示されている順に、 システム レベル デザイ ンから開始し てテス ト とデバッ グで終わ り ますが、 どの章から読み始めて も問題あ り ません。 図 1-1 は、 この資料の章の関係を示し ています。

    注記: 「SDSoC 環境」 は図 1-1 には含まれていません。 こ のツールは、 第 2 章から第 7 章までの概念および手法のすべてを使用し てシステムを構築するのに使用し ます。 第 8 章では、 SDSoC フ ロー特有の推奨事項も説明し ています。

    この資料を読む と、 ザイ リ ン ク スから提供される さ まざまなツールおよびそれに付属する ものを よ り 詳細に効率的

    な方法で学ぶこ と ができ ます。 各 ト ピ ッ ク分野で学んだ主要な事項は、 SoC の資料を理解するのにも役立ちます。

    表 1-1: 各設計チーム メ ンバーに関連する章

    章 システム構築者 ハー ド ウ ェ ア設計者 ソ フ ト ウ ェ ア設計者

    「システム レベルの考慮事項」 X X X

    「ハード ウ ェア デザイ ンの考慮事項」 X X

    「ソ フ ト ウ ェア デザイ ンの考慮事項」 X X

    「ハード ウ ェア デザイ ン フ ロー」 X

    「ソ フ ト ウ ェア デザイ ン フ ロー」 X

    「デバッ グ」 X X

    「SDSoC 環境」 X

    X-Ref Target - Figure 1-1

    図 1-1: 設計手法ガイ ドの章の関係

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 6UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=6

  • 第 1 章: 概要

    『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュ アル』 (UG585) [参照 4] および 『Zynq-7000 SoC ソ フ ト ウ ェア開発者向けガイ ド』 (UG821) [参照 7] に精通し ている場合は、 まずこ の資料を読むこ と をお勧めし ます。

    Zynq®-7000 SoC アーキテ クチャについて よ く 知ら ない場合は、 『Zynq-7000 SoC 概要』 (DS190) [参照 31] を参照し てく ださい。 この資料を読むこ と で、 エンベデッ ド デザイ ン チームが ト レード オフを理解し てボ ト ルネ ッ クや問題を回避でき る よ う にな り 、 エンベデッ ド システム開発に最適な決定を下すこ と ができ る よ う にな り ます。

    エンベデ ッ ド設計手法チ ェ ッ ク リ ス ト

    この資料は、 UltraFast エンベデッ ド設計手法チェ ッ ク リ ス ト と合わせて使用する こ と をお勧めし ます。 チェ ッ ク リス ト には、 プラ ニングから その後に続 く すべての段階のデザイ ン プロセスに関する よ く あ る質問や推奨される操作が記載されています。 チェ ッ ク リ ス ト の質問は、 後の段階に悪影響を及ぼす可能性のあ るデザイ ンの決定事項に関

    する もので、 知られていなかった り 、 無視されて し まいがちな問題が含まれます。

    チェ ッ ク リ ス ト を使用する前に、 この資料を読むこ と をお勧めし ます。 チェ ッ ク リ ス ト の項目のほ と んどは、 この

    資料およびその他のザイ リ ン ク ス資料に リ ン ク されています。 これらの参照資料は、 チェ ッ ク リ ス ト 項目の質問に

    関連するデザイ ンの考慮事項のガイ ダン ス と し てご使用 く ださい。

    チェ ッ ク リ ス ト は、ザイ リ ン ク ス製品を使用し ながら資料にア ク セスするために使用可能な無償ツールであ る Xilinx Documentation Navigator の一部と し て提供されています。 Documentation Navigator は、 ス タ ン ド ア ロ ン製品と し てダウ ン ロード でき るほか、 SDK および Vivado のイ ン ス ト ールに含まれます ( 「Documentation Navigator の使用」 参照)。

    チェ ッ ク リ ス ト の機能を使用するには、 Documentation Navigator 2015.1 バージ ョ ン以降をご使用 く ださい。 日本語版のチェ ッ ク リ ス ト は、 現在の と こ ろ Documentation Navigator からは使用でき ませんので、 スプレ ッ ド シー ト バージ ョ ンを参照し て く ださい。 Documentation Navigator から設計手法チェ ッ ク リ ス ト を使用するには、 次の手順に従います。

    1. [Design Hub View] タブを ク リ ッ ク し ます。

    2. 左側の メ ニューの上部にあ る [Create Design Checklist] を ク リ ッ ク し ます。

    3. [New Design Checklist] ダ イ ア ロ グ ボ ッ ク スに情報を入力し、 [OK] を ク リ ッ ク し ます。

    4. 新しいチェ ッ ク リ ス ト が開き ます。 チェ ッ ク リ ス ト の一番上のタブ (図 1-2) は、 ナビゲーシ ョ ン と し て使用し ます。 [Title Page] タブには、 チェ ッ ク リ ス ト を使用する際の基本的な情報が含まれます。 ほかのタブを ク リ ッ クする と、 チェ ッ ク リ ス ト の質問およびガイ ダン スが表示されます。

    日本語版は、 次のスプレ ッ ド シー ト バージ ョ ンを参照し て く ださい。

    j_xtp397-embedded-design-methodology-checklist.zip

    X-Ref Target - Figure 1-2

    図 1-2: Documentation Navigator のエンベデッ ド設計手法チ ェ ッ ク リ ス ト のタ ブ

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 7UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.com/cgi-bin/docs/rdoc?d=j_xtp397-embedded-design-methodology-checklist.ziphttps://japan.xilinx.com/cgi-bin/docs/rdoc?d=j_xtp397-embedded-design-methodology-checklist.ziphttps://japan.xilinx.com/cgi-bin/docs/rdoc?d=j_xtp397-embedded-design-methodology-checklist.ziphttps://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=7

  • 第 1 章: 概要

    資料および ト レーニングへのアクセス

    デザイ ン ク ロージ ャの短時間での達成およびデザイ ンの総合的な成功のためには、 適切な情報にタ イ ム リ ーにア クセスでき る こ と が重要です。 ザイ リ ン ク ス ツールについてでき るだけ短期間で理解でき る よ う 、 リ フ ァ レン ス ガイド、 ユーザー ガイ ド、 チュー ト リ アル、 ビデオなどが多数用意されています。 こ のセ ク シ ョ ンでは、 資料および トレーニングの入手先を示し ます。

    Documentation Navigator の使用ザイ リ ン ク ス エンベデッ ド ツールには Xilinx Documentation Navigator が含まれてお り 、 ザイ リ ン ク ソ フ ト ウ ェアおよびハード ウ ェ ア資料、 ト レーニング、 サポー ト 資料にア ク セス し、 管理する環境を提供し ています。

    Documentation Navigator を使用する と、 最新版およびこれまでのザイ リ ン ク ス資料を表示でき ます。 資料は、 リ リ ース、 資料の種類、 デザイ ン タ ス ク ご と にフ ィ ルターし て表示でき ます。 検索機能を使用する と、 必要な情報をすばや く 見つける こ と ができ ます。

    Documentation Navigator はザイ リ ン ク ス ウ ェブサイ ト を スキ ャ ン し て、 資料がア ッ プデー ト されているかど う かをチェ ッ ク し ます。 [Update Catalog] を使用する と、 利用可能なア ッ プデー ト があ る場合は警告 メ ッ セージが表示され、関連する資料の詳細が表示されます。 カ タ ロ グを最新にする よ う メ ッ セージが表示された場合は、 カ タ ロ グをア ッ

    プデー ト し て資料を最新の状態にし てお く こ と をお勧めし ます。 指定し た資料を含む資料カ タ ロ グを ローカルに作

    成し て、 管理でき ます。

    Documentation Navigator には、 [Design Hub View] と い う タブがあ り ます。 このタブには、 Zynq-7000 デザイ ンの概要、PetaLinux ツール、 SDK など、 設計での特定のタ ス ク に関連する資料が リ ス ト されています。 資料およびビデオがそのタ ス ク を学びやすいよ う に並べられています。 エンベデッ ド デザイ ン用の各ハブには、 [Embedded Processor Design] (エンベデッ ド プロセ ッ サ デザイ ン) セ ク シ ョ ン、 [Design Resources] (デザイ ン リ ソース) セ ク シ ョ ン、 およびサポー ト される リ ソースの リ ス ト などが含まれます。 新規ユーザーは、 [Embedded Processor Design] セ ク シ ョ ンから始める こ と をお勧めし ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 8UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=8

  • 第 1 章: 概要

    ビデオ チュー ト リ アルへのアクセスザイ リ ン ク ス ビデオ チュー ト リ アルでは、 SDK、 SDSoC、 および PetaLinux などのザイ リ ン ク ス ツールの機能の使用方法が具体的に説明されています。 これらのチュー ト リ アルを視聴する と、 短時間で簡単にツールを学ぶこ と が

    でき ます。 これらは、 https://japan.xilinx.com のビデオ チュー ト リ アルのページまたはザイ リ ン ク ス YouTube チャネルから視聴でき ます。

    ヒ ン ト : ビデオ チュー ト リ アルには、 Documentation Navigator から も ア ク セスでき ます。

    X-Ref Target - Figure 1-3

    図 1-3: Xilinx Documentation Navigator の [Catalog View] タ ブ

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 9UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.com/cgi-bin/docs/ndoc?t=vivado+videoshttp://www.youtube.com/user/XilinxInchttp://www.youtube.com/user/XilinxInchttps://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=9

  • 第 2 章

    システム レベルの考慮事項この章では、 Zynq®-7000 SoC を使用し て設計する際に考慮する必要のあ る次のシステム レベルのデザイ ン問題について説明し ます。

    • 「パフ ォーマン ス」 : 通常、 ターゲ ッ ト アプ リ ケーシ ョ ンによ り 全体的なシステム パフ ォーマン スが決ま り ます。 システム パフ ォーマン スの目標は、 ハード ウ ェ ア と ソ フ ト ウ ェアに分配され、 さ らにサブコ ンポーネン トに分配されます。

    • 「消費電力」 : システム パフ ォーマン スは、 消費電力が増加する主な要因と な り ます。 消費電力と システム パフ ォーマン スの ト レード オフは、 設計者に と って困難な課題 と な り ます。 このセ ク シ ョ ンでは、 Zynq-7000 SoC の消費電力を最適化する際の考慮事項を説明し ます。

    • 「ク ロ ッ キングおよび リ セ ッ ト 」 : ク ロ ッ ク リ ソース を最適に使用する よ う プラ ンニングするため、 使用可能なク ロ ッ ク リ ソース を理解し てお く こ と が重要です。 同様に リ セ ッ ト システムにも さ まざまな ソースがあ るので、 それぞれが異なる リ セ ッ ト デステ ィ ネーシ ョ ンにどのよ う に影響するかを理解し てお く こ と も重要です。

    • 「割 り 込み」 : システム レベルの割 り 込み環境では、 アプ リ ケーシ ョ ンのハード ウ ェア と ソ フ ト ウ ェア リ ソースの優先順位を決定する包括的な機能が提供されます。

    • 「エンベデッ ド デバイ スのセキ ュ リ テ ィ 」 : 必要なセキ ュ リ テ ィ レベルは、 アプ リ ケーシ ョ ンによ って大き く 異な り ます。 Zynq-7000 SoC のさ まざまなセキ ュ リ テ ィ 機能を理解し てお く と、 アプ リ ケーシ ョ ンに適切なレベルのセキ ュ リ テ ィ を適用でき ます。

    • 「プロ フ ァ イ リ ングおよび分割」 : システム レベルでは、 アプ リ ケーシ ョ ンの機能をどのよ う にハード ウ ェア とソ フ ト ウ ェ アに分割するかが重要な決定事項にな り ます。 プロ フ ァ イ リ ング ツールは、 これらの決定に役立ちます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 10UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=10

  • 第 2 章: システム レベルの考慮事項

    パフ ォーマンス

    Zynq-7000 SoC デバイ スでは、 システム パフ ォーマン スは最終的なアプ リ ケーシ ョ ンの目標によ って異な り ます。 たと えば、 リ アルタ イ ム アプ リ ケーシ ョ ンのシステム パフ ォーマン スが割 り 込みサービ ス ルーチンのレ イ テンシによ って決ま った り 、 ビデオ アプ リ ケーシ ョ ンのシステム パフ ォーマン スがオフチッ プ イ ン ターフ ェ イ スで毎秒 60 フ レームを保持する こ と に依存し た り する などです。 このセ ク シ ョ ンでは、 異なる設計チーム メ ンバー間でのパフ ォーマン ス目標の分配について説明し、 その後これらのパフ ォーマン ス目標をデータの移動および計算に関する

    設計の選択によ り 達成するための考慮事項を示し ます。 また、 ソ フ ト ウ ェ アおよびプロ グ ラ マブル ロ ジ ッ ク (PL) にカ ス タ ム パフ ォーマン ス監視機能を構築でき る よ う に、 Zynq-7000 SoC デバイ スの監視オプシ ョ ンについて も説明します。

    システム パフ ォーマンスのデザイ ン目標システム パフ ォーマン スの目標は、 Zynq-7000 SoC デバイ ス設計チームの異なるエンジニア リ ング部門に分配されます。 このガイ ド では、 ハード ウ ェ ア、 ソ フ ト ウ ェ ア、 システムの 3 つの部門について説明し ます。

    ハー ド ウ ェ ア設計者

    Zynq デバイ スのハード ウ ェア設計者は、 PL コ ンポーネン ト 、 AXI で接続された IP、 高速オフチ ッ プ イ ン ターフ ェイ ス、 およびカ ス タ ム ロ ジ ッ ク を組み合わせてデザイ ンを イ ンプ リ メ ン ト し ます。 PL での選択は、 スループ ッ ト やレ イ テンシなどのパフ ォーマン ス要件によ り 決定されますが、 システム ソ フ ト ウ ェア と ハード ウ ェアの通信におけるパフ ォーマン スの制限も考慮する場合があ り ます。 ハード ウ ェ ア設計ではデータの移動および同期が PL のスループ ッ ト およびレ イ テンシに大き く 影響するので、 プロセ ッ シング システム (PS) と の通信を考慮する必要があ り ます。 設計における決定を下すため、 PL データの移動および監視ポイ ン ト を使用でき ます。 これについては、 こ のセク シ ョ ンの後の方で説明し ます。 最大周波数や リ ソース使用率などの従来からの PL メ ト リ ク スについては説明し ません。 詳細は、 『UltraFast 設計手法ガイ ド (Vivado Design Suite 用)』 (UG949) [参照 16] を参照し て く ださい。

    ソ フ ト ウ ェ ア設計者

    ソ フ ト ウ ェア設計者は、 PS 内で実行される システム ソ フ ト ウ ェア と、 その メ モ リ 、 I/O、 および PL と の通信に焦点を置いて設計し ます。 た と えば、 PL と通信するユーザー ソ フ ト ウ ェアに複数の通信オプシ ョ ンがあ り 、 それぞれ利点 と欠点があ る と し ます。 Zynq デバイ ス特有のソ フ ト ウ ェア パフ ォーマン ス監視機能を使用し て、 パフ ォーマン スを調整でき ます。 これについては、 このセ ク シ ョ ンの後の方で説明し ます。 また、 既存の Arm パフ ォーマン ス プロフ ァ イ リ ング ツールおよび監視ツールを使用し て、 デュ アル コ ア Cortex-A9 プロセ ッサのパフ ォーマン ス を最適化でき ます。 パフ ォーマン ス監視機能の詳細は、 Arm DS-5 Development Studio Streamline Performance Analyzer の資料 [参照 74] を参照し て く ださ い。

    システム設計者

    Zynq デバイ ス を使用し て イ ンプ リ メ ンテーシ ョ ン されたデザイ ンのパフ ォーマン ス目標は、 ハード ウ ェア と ソ フ トウ ェアに分配でき ます。 この分配は、 デザイ ンのすべての段階を通し て考慮する必要があ り ます。 初期段階では、

    ハード ウ ェア設計者 と ソ フ ト ウ ェ ア設計者は比較的個別に作業でき ますが、 早期にパフ ォーマン ス を見積も って現

    実的なパフ ォーマン ス目標を設定し、 分配する こ と が必要にな り ます。 システム設計者は、 ハード ウ ェ ア と ソ フ ト

    ウ ェアのパフ ォーマン スのボ ト ルネ ッ ク をすべて考慮し、 ト レード オフを決定する必要があ り ます。 システム設計

    者は、 早期にデータおよび通信パスのパフ ォーマン ス を見積も り 、 それを後でシステム パフ ォーマン ス監視ポイ ント およびツールを使用し て調整し ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 11UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=11

  • 第 2 章: システム レベルの考慮事項

    設計チームのすべての メ ンバーは、 データの移動およびデータの計算のパフ ォーマン スに対する影響を考慮し ま

    す。 シス テム イベン ト を監視する機能は、 Zynq デバイ スのパフ ォーマン ス を設計および最適化する際に有益です。次のセ ク シ ョ ンでは、 これら の考慮事項 と 、 Zynq デバイ スの設計フ ローを進めてい く 上で役立つ推奨設計手法を示し ます。

    システム データの移動 システム内でデータ を移動させる こ と は、 システム レベル パフ ォーマン スの一般的な問題です。 Zynq デバイ スには AXI マス ターが複数あ り 、 直接または DMA から ト ラ ンザク シ ョ ンを駆動でき ます。 このセ ク シ ョ ンでは、 Zynq デバイ スでのデータ移動の問題に対処するためのさ まざまなオプシ ョ ン と ト レード オフについて説明し ます。

    Arm CPU では、 memcpy などの直接 メ モ リ 転送を使用し てデータ を移動でき ます。 このよ う な転送は 4 KB 以下の小さい転送に有益であ り 、 大きい転送では DMA を使用する と有益です。 データのソースおよびデステ ィ ネーシ ョ ン バッ フ ァーの場所も考慮する必要があ り ます。 た と えば、 PS から PL への DMA データ転送は、 通常 32 ビ ッ ト マスター GP ポー ト を介し ます。 PS DMA コ ン ト ローラーを使用する ための手法は、 『Zynq-7000 SoC テ ク ニカル リ フ ァ レン ス マニュ アル』 (UG585) [参照 4] に説明されています。 PS DMA コ ン ト ローラーは、 独自のマイ ク ロ コード を実行し ます。 PL の DMA を使用し て 64 ビ ッ ト の ACP または HP ポー ト を介し てデータ を移動する方法も あ り ますが、 この方法の方がパフ ォーマン スが高 く 、 PL リ ソース を使用し ます。

    システム データの移動パフ ォーマン ス を判断する際は、 PS 内のほかの AXI マス ターも考慮する必要があ り ます。IOP DMA は、 GigE コ ン ト ローラー、 SDIO コ ン ト ローラー、 USB コ ン ト ローラー、 およびデバイ ス コ ンフ ィ ギ ュレーシ ョ ン イ ン ターフ ェ イ ス (DevC) の IP ブロ ッ ク に存在し ています。 IP ブロ ッ ク の機能は 『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュ アル』 (UG585) [参照 4] に説明されてお り 、 Linux などのオペレーテ ィ ング システムおよびス タ ン ド ア ロ ン デザイ ンで使用する ための ド ラ イバーが提供されています。 GigE コ ン ト ローラーのパフ ォーマン ス特性については、 『Zynq-7000 SoC 内で PL イーサネ ッ ト を使用する場合の PS および PL イーサネ ッ ト パフ ォーマンス と ジャ ンボ フ レームのサポー ト 』 (XAPP1082) [参照 40] を参照し て く ださい。 残 り のコ アには追加機能を提供するド ラ イバー層があ り ますが、 そのパフ ォーマン ス特性はこ こ では説明し ません。

    PL からは、 AXI マス ターによ り ACP、 HP、 またはス レーブ GP ポー ト のデータ移動を駆動でき ます。 これらのポート および関連のパフ ォーマン スは、 次のセ ク シ ョ ンで説明し ます。

    • 「ACP およびキ ャ ッ シ ュ コ ヒ ーレ ンシ」

    • 「PL の HP ポー ト ア ク セス」

    • 「APU からの GP およびダ イ レ ク ト PL ア ク セス」

    これらのポー ト に接続されている DMA は、AXI4 メ モ リ マ ッ プ ド イ ン ターフ ェ イ ス と AXI4-Streaming イ ン ターフ ェイ スの間の変換に使用するのが最適で、 メ モ リ マ ッ プ ド ア ク セス とデータ中心プロセ ッ シング (ビデオ パイプラ インなど) を確実に分離し ます。 ただし、 DMA が常に好ま しい方法ではあ り ません。 ス ト リ ー ミ ング イ ン ターフ ェ イスのパフ ォーマン スが低 く 、 問題 と な ら ない場合は、 AXI4-Stream FIFO コ アを使用するのがプロセ ッサから AXI-Stream イ ン ターフ ェ イ ス を ソースおよび同期するのに簡単な方法です。 ユーザー アプ リ ケーシ ョ ンには、 標準の AXI メ モ リ マ ッ プ ド ト ラ ンザク シ ョ ンを使用し てデータ を直接移動する カス タ ム AXI マス ターを含める こ と ができ ます。 このよ う なカ ス タ ム データ転送のスループ ッ ト およびレ イ テンシのパフ ォーマン ス特性は、 標準 PL DMA データ転送に非常に近いものになる可能性があ り ます。 「システム監視」 に説明されている カ ウ ン ターおよびタ イ

    マーを使用し て、 パフ ォーマン ス を比較でき ます。

    DMA は、 ソースからデステ ィ ネーシ ョ ンにデータ を転送し ます。 データ ソース、 処理、 またはデータ シン ク のレー ト を一致させるために メ モ リ がデータ バッ フ ァーと し て よ く 使用され、 処理段階で最大のスループ ッ ト を達成でき る よ う にし ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 12UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=12

  • 第 2 章: システム レベルの考慮事項

    オフチッ プのデータ バッ フ ァーの場所は、 カス タマイ ズ可能な MIO または EMIO ピンに接続されているオフチ ッ プの メ モ リ を使用し て イ ンプ リ メ ン ト でき ます。 メ モ リ の特性は、 SD カード のフ ァ イル システムや GigE コ ン ト ローラーを介し てネ ッ ト ワーク で接続されたス ト レージなど、 大き なバッ フ ァーを移動する際のパフ ォーマン スに影響

    し ます。

    オンチッ プのバッ フ ァ リ ングでは、 OCM、 L2 キ ャ ッ シュ、 DDR コ ン ト ローラーが PS 内の共有可能なバッ フ ァー空間の主な ソースです。 L2 キ ャ ッ シュおよび DDR コ ン ト ローラーは、 プロセ ッ サ と ACP ポー ト 間でデータ を共有するのに非常に適し たバッ フ ァー ア ク セス レ イ テンシを持ちます。 ACP のみが PL から L2 キ ャ ッ シュにア ク セス可能です。 DDR への高帯域幅のア ク セスには、 ACP よ り も HP ポー ト が適し ています。 OCM は、 PL 内のすべてのマスターでア ク セス可能な 256 KB のス ク ラ ッチパッ ド と し て ソ フ ト ウ ェ ア アプ リ ケーシ ョ ンで使用でき ます。 OCM を使用する利点は、 ラ ンダム ア ク セス レ イ テンシが優れている と い う こ と です。 L2 キ ャ ッ シュおよび DDR メ モ リ はローカルの メ モ リ ア ク セスで有益です。

    システム計算

    計算は Arm コ アまたは PL 内で実行でき ます。 一般的な Zynq デバイ スには、 Arm コ アで実行される ソ フ ト ウ ェ アに記述された制御プレーンがあ り ます。 データ中心の計算は、 既存の IP と カス タ ム IP を組み合わせて使用し て PL で実行されます。 ラ イ ン レー ト パケ ッ ト の処理など高パフ ォーマン スが必要な場合は、 計算 と制御をデータの近 く に移動でき ます。 これには通常、 データ フ ローを制御するのにカス タ ム PL IP が必要です。

    計算を ソ フ ト ウ ェ アから PL に移動でき る こ と は、 Zynq-7000 SoC プラ ッ ト フ ォームの重要な利点です。 すべてのソフ ト ウ ェアを PL に移動でき るわけではあ り ません。 コ ンパイル済みのコード、 複雑な ラ イブラ リ ルーチン、 OS サービ スなどは移動でき ません。 ソ フ ト ウ ェ ア コ ンポーネン ト を PL に移動でき る場合は、 フル アプ リ ケーシ ョ ン ラ ン タ イ ムなどのパフ ォーマン ス メ ト リ ク スでデータ移動のコ ス ト と ア ク セラ レーシ ョ ンの ト レード オフを考慮する必要があ り ます。 このコ ス ト と利点の解析はソ フ ト ウ ェ ア プロ フ ァ イ リ ング ツールを使用し て実行でき、 アムダールの法則に基づいて可能な高速化を判断でき ます。

    この式で、 S はシステム全体のパフ ォーマンス向上、 α はハード ウ ェア ア ク セラ レーシ ョ ンによ り ス ピード ア ップ可能なアルゴ リ ズムの割合を示し ます。 1-α は向上できないアルゴ リ ズムの割合です。 p はア ク セラ レーシ ョ ンによ る スピード ア ップです。 た と えば、 すべてがソ フ ト ウ ェアにイ ンプ リ メ ン ト されている計算アルゴ リ ズムを高速化するた

    め、 TCF プロ フ ァ イ ラーなどのプロ フ ァ イ リ ング ツールを使用して頻繁に使用される関数を特定でき ます。 その関数が使用される時間の割合が大きい と、 α の値が大き く な り ます。 この関数をハード ウ ェアにイ ンプ リ メ ン ト してスピード ア ップでき ます。 関数のス ピード ア ップが p に代入されます。 頻繁に使用される関数のス ピード ア ップが大きければ、 ハード ウ ェア ア ク セラ レーシ ョ ンによ る アルゴ リ ズムの計算のパフ ォーマンス向上も大き く な り ます。

    特定の関数のス ピード ア ッ プには、 ア ク セラ レーシ ョ ン ブロ ッ ク と のデータ転送と、 ア ク セ ラ レータによ り 実行される実際の計算の 2 つの要素があ り ます。 データ転送に DMA を使用する場合、 p を算出する際に DMA の設定および制御のオーバーヘッ ド を考慮する必要があ り ます。 オーバーヘッ ド が大きい と p の値が小さ く な り 、 パフ ォーマン スの向上率も低 く な り ます。 詳細は、 「プロ フ ァ イ リ ングおよび分割」 を参照し て く ださい。

    高位合成は、 ソ フ ト ウ ェ ア コ ンポーネン ト を PL に移動し てア ク セラ レーシ ョ ン オプシ ョ ンを調べるのに適し た方法です。 候補 と なっている ソ フ ト ウ ェ アが高位合成に適し ていない場合は、 ザイ リ ン ク スが提供するプロ グ ラ マブ

    ル ロ ジ ッ ク IP と対応する ド ラ イバーのラ イブラ リ を使用し て、 これら を ソ フ ト ウ ェアにイ ンプ リ メ ン ト された関数と置き換えて、 システム パフ ォーマン ス全体を向上でき ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 13UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=13

  • 第 2 章: システム レベルの考慮事項

    システム監視 Arm プロセ ッ サを監視するために、 さ まざまなツールがあ り ます。 Zynq デバイ スでは、 システム レベル パフ ォーマン スの監視に PS および PL にあ るブロ ッ ク も使用されます。 これらのブロ ッ クは、 次の とお り です。

    • SCU グ ローバル タ イマー (PS): SCU グ ローバル タ イマーは、 1 つのク ロ ッ ク ド メ イ ンでのシステム イベン トにタ イ ム ス タ ンプを付けるのに使用でき ます。 また、 オペレーテ ィ ング システムには通常、 Linux clock_nanosleep のよ う に、 ソ フ ト ウ ェア イベン ト ト レーシング用の高精度タ イマーが含まれています。

    • Arm パフ ォーマン ス モニ ター ユニ ッ ト (PS): 各 Arm コ アには、 マイ ク ロ アーキテ クチャ イベン ト をカ ウ ン トするのに使用されるパフ ォーマン ス監視ユニ ッ ト (PMU) が含まれています。 これらのカ ウ ン ターには、 オペレーテ ィ ング システムのユーテ ィ リ テ ィ を介し て ソ フ ト ウ ェアから直接ア ク セスするか、 Linux Perf や Arm Streamline などのチッ プ デバッ ガーでア ク セスでき ます。 これらのカ ウ ン ターは、 SDK 2014.2 の [Performance] ビ ューで表示でき ます。 詳細は、 Arm 社の 『Cortex-A9 Technical Reference Manual』 [参照 77] の 「Performance Monitoring Unit」 を参照し て く ださい。

    • L2 キ ャ ッ シュ イベン ト カ ウ ン ター (PS): L2 キ ャ ッ シュには、 キ ャ ッ シュ パフ ォーマン ス を計測する ためにアク セス可能な イベン ト カ ウ ン ターがあ り ます。 これらのカ ウ ン ターは、 SDK の [Performance Counters] ビ ューで表示でき ます。 詳細は、 『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュ アル』 (UG585) [参照 4] を参照し て く ださい。

    • GigE コ ン ト ローラー (PS): ギガビ ッ ト イーサネ ッ ト コ ン ト ローラーには、 イ ン ターフ ェ イ スで送受信されたバイ ト 数を監視するための統計カ ウ ン ターがあ り ます。 詳細は、 『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュアル』 (UG585) [参照 4] を参照し て く ださい。

    • Arm パフ ォーマンス モニター (PL): このコアは PL に追加し、 スループッ ト やレ イテンシなどの AXI パフ ォーマンス メ ト リ ク ス を監視するために使用でき ます。 ト レース機能は、 ト ラ ンザク シ ョ ンご と のレ イテンシを監視するためのタ イ ムス タ ンプ付きの AXI ト ラ ンザク シ ョ ンの開始と終了など、 タ イ ムス タ ンプ付き AXI ト レース をイネーブルにし ます。 詳細は、 AXI パフ ォーマンス モニターのウ ェブ ページ [参照 45] を参照して く ださい。

    • Arm タ イマー (PL): このコ アは PL に追加し、 PL 内のフ リ ーラ ンニング タ イマーと し て使用でき ます。 PL クロ ッ ク ド メ イ ン内のイベン ト にタ イ ム ス タ ンプを付けるのに便利です。 詳細は、 AXI タ イマー /カ ウ ン ターのウ ェブ ページ [参照 46] を参照し て く ださ い。

    • Arm ト ラ フ ィ ッ ク ジェネレーター (PL): このコアを使用する と、 PS イ ン ターフ ェ イ スに対して さ まざまな ト ラフ ィ ッ ク パターンを生成でき ます。 AXI パフ ォーマンス モニターと共に使用して、 システム レベルのパフ ォーマンス を早期に見積も る こ と ができ ます。 このコ アを使用して、 データ移動コ ス ト を見積も り 、 デザイ ンの分割

    方法を検証でき ます。 詳細は、 LogiCORE™ AXI Traffic Generator のウ ェブ ページ [参照 47] を参照して く ださい。

    これらのモニター ブロ ッ ク を使用する と、 システム全体のパフ ォーマン ス を可視化でき ます。 イベン ト カ ウ ン ターおよび PL 監視ブロ ッ クは、 特定のデザイ ン パフ ォーマン ス目標に合わせてカス タマイ ズ し た り 、 システム パフ ォーマン スの全体像を取得するのに使用でき ます。 ビル ト イ ンのパフ ォーマン ス監視機能を早期に使用する こ と

    によ り 、 デザイ ン サイ クルを通し てパフ ォーマン ス フ ィ ード バッ ク を取得でき、 データ ド リ ブンのシステム アーキテ クチャの決定を下すこ と ができ ます。

    さ まざまなブロ ッ ク からの監視データ を利用および取得する方法は複数あ り ます。 ほ と んどのペ リ フ ェ ラルには、

    対応するベア メ タル ド ラ イバーと共にパッ ケージ されたサンプル アプ リ ケーシ ョ ンがザイ リ ン ク ス SDK で提供されています。 使用可能な Linux ド ラ イバーの リ ス ト は、 ザイ リ ン ク ス Linux ド ラ イバー Wiki ページ [参照 52] を参照し て く ださい。

    ザイ リ ン ク ス SDK には、 ビル ト イ ンのシステム パフ ォーマン ス モデ リ ングおよび解析機能が含まれています。 パフ ォーマン ス モニターは、 システムから ラ イブ データ または実際の ト ラ ンザク シ ョ ンをモデ リ ングする ト ラ フ ィ ック ジェネレーターで作成されたデータ を収集し ます。 こ のデータは、 ザイ リ ン ク ス SDK の表示ツールを使用し て、HP および ACP ポー ト に接続されている APM (プロ フ ァ イル モード ) からの ト ラ ンザク シ ョ ン数、 帯域幅、 およびレイ テンシの統計 と共に表示でき ます。 詳細は、 「ザイ リ ン ク ス SDK システム デバッ ガー」 を参照し て く ださい。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 14UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=14

  • 第 2 章: システム レベルの考慮事項

    消費電力

    Zynq-7000 SoC の消費電力は、 システム設計およびボード設計において重要な考慮事項です。 消費電力はほ と んどのアプ リ ケーシ ョ ンで重大な課題であ り 、 アプ リ ケーシ ョ ンによ ってはカード ご と またはシステムご と の最大消費電

    力が指定されます。 そのため、 設計プロセスの早期に消費電力を考慮する必要があ り ます (多 く の場合デバイ ス選択時から開始)。

    SoC の消費電力を削減する と、 電源レールの電力を下げ、 電源デザイ ンおよび温度管理を簡略化し、 電源分配プレーンの要件を緩和する こ と によ り ボード設計を向上でき ます。 消費電力が少ない と、 バッ テ リ の寿命も長 く な り 、

    システムの動作温度が低い方が長持ちするので信頼性も向上し ます。

    システムの消費電力を削減するには、 最適な結果を得るために包括的で集中的なアプローチが必要です。 このセ ク

    シ ョ ンでは、 PS および PL のアーキテ クチャおよび機能、 PL に関連する電力コ ンポーネン ト 、 プロセス テ ク ノ ロ ジなど、 Zynq-7000 SoC の消費電力に関する さ まざまな側面について説明し ます。 また、 電力損失と、 消費電力の見積も り および計測に使用される従来からの方法を示し ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 15UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=15

  • 第 2 章: システム レベルの考慮事項

    消費電力の課題

    ムーアの法則によれば、 プロセス テ ク ノ ロ ジの各世代ご と に ト ラ ンジス タのサイ ズが小さ く な り ます。 サイ ズが小さ く なる と、 各 ト ラ ンジス タの リ ーク電流が増加し、 ス タ テ ィ ッ ク消費電力 (デバイ スが動作し ていない と きに消費される電力) が増加し ます。 SoC のパフ ォーマン ス を向上するには、 高周波数ク ロ ッ ク が必要で、 ダ イナ ミ ッ ク消費電力が増加し ます。 ス タ テ ィ ッ ク消費電力は ト ラ ンジス タの リ ーク電流に、 ダ イナ ミ ッ ク消費電力は ト ラ ンジス タ

    のス イ ッチング周波数によ って決ま り ます。 さ らに不利な こ と に、 ト ラ ンジス タのサイ ズを小さ く する と、 FPGA 上に搭載でき る ト ラ ンジス タの数が増加し ます。 ト ラ ンジス タ数が多 く なれば リ ーク電流も増加し、 各 FPGA デバイス上でよ り 多 く の ト ラ ンジス タがよ り 高いク ロ ッ ク周波数で切 り 替わる こ と にな り ます。

    これらの問題のため、 電源および温度管理の問題にデザイ ン サイ クルの早期から対処し てお く 必要があ り ます。 デバイ スに ヒ ー ト シン ク を使用するだけでは、 これらの問題を適切に解決でき ない可能性があ り ます。 デザイ ン ロジ ッ ク の影響を削減する方法を模索する必要があ り ます。

    図 2-1 に、 デザイ ン サイ クルのさ まざまな地点で消費電力を削減する ために実行可能な操作を示し ます。 消費電力の問題に設計プロセスの早期に対処する と、 大き な効果が得られます。

    X-Ref Target - Figure 2-1

    図 2-1: デザイ ン サイ クルのさ まざまな段階で消費電力の問題に対処

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 16UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=16

  • 第 2 章: システム レベルの考慮事項

    消費電力および信号伝送

    Zynq-7000 SoC デバイ スは、 図 2-2 に示すよ う に、 い く つかの電源ド メ イ ンに分割されます。

    PS と PL の電源は独立し ていますが、PL に電源を供給し ている と きには PS にも電源が供給されている必要があ り ます。 PL を必要と し ないアプ リ ケーシ ョ ンでは、 PL の電源をオフにでき ます。 表 2-1 に PS および PL の電源ピンを示し ます。 電圧シーケン ス と電気的仕様は、 『Zynq-7000 SoC (Z-7010、 Z-7015、 Z-7020): DC 特性および AC ス イ ッチ特性』 (DS187) [参照 30] を参照し て く ださい。

    PS 電源 ド メ イ ン

    Zynq-7000 SoC の PS 電源ド メ イ ンについては、 『Zynq-7000 SoC PCB デザイ ン ガイ ド』 (UG933) [参照 14] の第 5 章「プロセ ッ シング システム (PS) の電源および信号」 を参照し て く ださい。

    X-Ref Target - Figure 2-2

    図 2-2: Zynq-7000 SoC の電源ド メ イ ン

    表 2-1: 電源ピン

    タ イプ ピン名 公称電圧 説明

    PS 電源 VCCPINT 1.0V 内部ロ ジ ッ ク

    VCCPAUX 1.8V I/O バッ フ ァー プ リ ド ラ イバー

    VCCO_DDR 1.2V ~ 1.8V DDR メ モ リ イ ン ターフ ェ イ ス

    VCCO_MIO0 1.8V ~ 3.3V MIO バン ク 0、 ピン 0:15

    VCCO_MIO1 1.8V ~ 3.3V MIO バン ク 1、 ピン 16:53

    VCCPLL 1.8V 3 つの PLL ク ロ ッ ク、 アナロ グ

    PL 電源 VCCINT 1.0V 内部コ ア ロ ジ ッ ク

    VCCAUX 1.8V I/O バッ フ ァー プ リ ド ラ イバー

    VCCO_# 1.8V ~ 3.3V I/O バッ フ ァー ド ラ イバー (バン ク ご と )

    VCC_BATT 1.5V PL 復号キーの メ モ リ バッ ク ア ッ プ

    VCCBRAM 1.0V PL ブロ ッ ク RAM

    VCCAUX_IO_G# 1.8V ~ 2.0V PL 補助 I/O 回路

    XADC VCCADC 1.8V アナロ グ電源およびグ ラ ン ド

    グ ラ ン ド GND グ ラ ン ド デジ タルおよびアナロ グ グ ラ ン ド

    X14195-073117

    Programmable Logic

    VCCINT

    VCCAUX

    VCCO0 VCCO1 VCCOn

    Processing System (PS)

    VCCPINT

    VCCPAUX

    VCCPLL

    VCCO_MIO0 VCCO_DDR VCCO_MIO1

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 17UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=17

  • 第 2 章: システム レベルの考慮事項

    PL 電源ド メ イ ン

    Zynq-7000 SoC の異な る PL リ ソースに電源を供給するには、 複数の電源が必要です。 異なる リ ソースは異なる電圧レベル動作するので、 ノ イ ズや寄生効果に対し て高い耐性を保ちながら、 パフ ォーマン スおよび信号強度を向上で

    き ます。

    「PL の電源」 に、 Zynq-7000 SoC で使用可能な PL リ ソースで使用される一般的な電源を示し ます。 詳細は Zynq-7000 SoC フ ァ ミ リ によ って異なる場合があ るので、 こ の表はガイ ド ラ イ ン と し てのみ示し ています。

    表 2-2: PL の電源

    電源 電源が供給される リ ソース

    VCCINTおよび

    VCCBRAM

    • すべての CLB リ ソース

    • すべての配線 リ ソース

    • ク ロ ッ ク ツ リ ー全体 (すべてのク ロ ッ ク バッ フ ァーを含む)

    • ブロ ッ ク RAM/FIFO

    • DSP ス ラ イ ス

    • すべての入力バッ フ ァー

    • IOB 内のロ ジ ッ ク エレ メ ン ト (ILOGIC/OLOGIC)

    • ISERDES/OSERDES

    • ト ラ イ ステー ト イーサネ ッ ト MAC

    • ク ロ ッ ク マネージャー (DCM、PLL など) (大部分は Vccaux で供給されるため少量のみを供給)

    • MGT の PCIE および PCS 部分

    VCCAUXおよび

    VCCAUX_IO

    • ク ロ ッ ク マネージャー (MMCM、 PLL、 DCM など)

    • IODELAY/IDELAYCTRL

    • すべての出力バッ フ ァー

    • 差動入力バッ フ ァー

    • VREF ベースのシングルエン ド I/O 規格 (HSTL18_I など)

    • 位相器

    VCCO • すべての出力バッ フ ァー

    • 一部の入力バッ フ ァー

    • デジ タル制御イ ンピーダン ス (DCI) 回路 (オンチッ プ終端 (OCT))

    MGT • ト ラ ンシーバーの PMA 回路

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 18UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=18

  • 第 2 章: システム レベルの考慮事項

    ボー ド レベルの電源分配システムプ リ ン ト 回路基板では、 電源が電源分配システム (PDS) によ り ソースから電源を必要とする さ まざまなチッ プおよびデバイ スに分配されます。 PDS デザイ ンは単純な ものから複雑な ものまであ り ますが、 次の 3 つの主な要件を満たす必要があ り ます。

    • 適切に調整された電源を供給する必要があ り ます。 電源調整は安定化電源回路で実行され、 1 つまたは複数のバルク キ ャパシ タ と LC フ ィ ルター回路でサポー ト されます。

    • すべての電流負荷条件下でボード のすべてのポイ ン ト で安定し ている必要があ り ます。 すべての負荷条件化での安定には、 次の 2 つの要件があ り ます。

    ° 分配システムの抵抗 と イ ンダ ク タ ン スは低い必要があ り ます。 これには通常、 分配用に電源プレーンおよ

    び帰路プレーン と、 さ まざまなデバイ ス接続に低イ ンダ ク タ ン スのパッ ド およびビアが必要です。

    ° 電荷は必要な と きに必要な場所にあ る こ と が必要です。 必要な電荷は通常、 ボード 全体に配置されている

    バイパス キ ャパシ タ と、 それよ り は少ないが分配された平面キ ャパシ タ ン スに蓄積されます。

    • デバイ スのス イ ッチをオンにし た と きにほかのデバイ ス を干渉し た り 、 EMI を発生させる ノ イ ズを生成し ないこ と が必要です。

    Zynq デバイ スの電源分配システムの詳細は、 『Zynq-7000 SoC PCB デザイ ン ガ イ ド』 (UG933) [参照 14] の第 3 章 「電源分配システム」 を参照し て く ださい。

    パワー マネージ メ ン トZynq-7000 SoC を使用する こ と によ り 、 システムのス タ テ ィ ッ ク消費電力を削減でき る こ と があ り ます。 Zynq-7000 SoC の PS は、デュ アル コ ア Arm Cortex-A9 CPU と統合されたペ リ フ ェ ラルから構成される最適化されたシ リ コ ン エレ メ ン ト です。 PL は、 28 nm の高性能、 低消費電力 (HPL) プロセスで構築されたザイ リ ン ク ス 7 シ リ ーズ アーキテクチャに基づいてお り 、 消費電力を大幅に削減し ながら高パフ ォーマン ス を提供し ます。 HPL プロセスで構築されたデバイ ス を選択する と、 複雑でコ ス ト の高いス タ テ ィ ッ ク消費電力管理機構は必要な く な り ます。

    システム消費電力を削減するには、 多数の方法があ り ます。 次のセ ク シ ョ ンでは、 システム消費電力要件を満たす

    ためにデザイ ンを最適化する際に役立つ ヒ ン ト を示し ます。

    PS パワー マネージ メ ン ト

    このセ ク シ ョ ンでは、 Zynq-7000 SoC PS の消費電力を最適化する際の考慮事項を説明し ます。 これには、 APU ユニ ッ ト 、 PS ペ リ フ ェ ラル、 ク ロ ッ クおよび PLL、 キ ャ ッ シュ、 SCU、 OCM の消費電力管理が含まれます。 こ こ での説明は、 システム全体の消費電力管理の ト レード オフの影響を理解し ている こ と を前提と し ています。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 19UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=19

  • 第 2 章: システム レベルの考慮事項

    システム設計に関する考慮事項

    PS コ ンポーネン ト の消費電力は、 次のよ う に管理でき ます。

    • アプ リ ケーシ ョ ン プロセ ッ シング ユニ ッ ト (APU): Zynq-7000 SoC の APU では、 動的な ク ロ ッ ク ゲーテ ィ ングがサポー ト されています。 この機能は、 CP15 電源制御レジス タ を使用し て有効にでき ます。 有効にする と、CPU 内部ブロ ッ クへのク ロ ッ ク がア イ ド ル期間中、 動的に無効にな り ます。 ク ロ ッ ク ゲーテ ィ ングの対象と なるのは、 次のブロ ッ ク です。

    ° 整数コ ア

    ° システム制御ブロ ッ ク

    ° データ エンジン

    プロセ ッ サ コ アの電圧と動作周波数を下げる こ と によ り 、 消費電力を最大 1/2 削減する こ と が可能です。 詳細は、『Zynq-7000 SoC テ ク ニカル リ フ ァ レン ス マニュ アル』 (UG585) [参照 4] の消費電力管理のセ ク シ ョ ンを参照し て く ださい。

    • PS ペ リ フ ェ ラル: PS は、 数個のク ロ ッ ク ド メ イ ンをサポー ト し てお り 、 各ド メ イ ンに個別のク ロ ッ ク ゲーテ ィ ング制御があ り ます。 システムが動作モード の場合は、 使用されていない ク ロ ッ ク ド メ イ ンをシ ャ ッ ト ダウ ン し てダ イナ ミ ッ ク消費電力を削減でき ます。 タ イマー、 DMA、 SPI、 QSPI、 SDIO、 DDR コ ン ト ローラーなどの PS ペ リ フ ェ ラルのク ロ ッ クは、 個別にゲーテ ィ ング し て消費電力を削減でき ます。 システム ク ロ ッ ク と、それら を分周器、 ゲー ト 、 マルチプレ ク サーを使用し て制御する方法の詳細は、 『Zynq-7000 SoC テ ク ニカル リフ ァ レ ン ス マニュ アル』 (UG585) [参照 4] の第 25 章 「ク ロ ッ ク」 を参照し て く ださい。

    • キ ャ ッ シュ : L2 キ ャ ッ シュ コ ン ト ローラーでは、 次のダ イナ ミ ッ ク消費電力削減機能がサポー ト されます。 この機能は、 l2cpl310.reg15_power_ctrl レジス タの該当する イネーブル ビ ッ ト で制御し ます。

    ° 動的ク ロ ッ ク ゲーテ ィ ング: 高度な動的ク ロ ッ ク ゲーテ ィ ング機能を有効にする と、 キ ャ ッ シュ コ ン トローラーがア イ ド ル状態の と きにそのク ロ ッ ク が停止し ます。 ク ロ ッ ク ゲーテ ィ ング機能は、 コ ン ト ローラーがア イ ド ル状態になってから数サイ クル後にク ロ ッ ク を停止し ます。

    ° ス タ ンバイ モード : L2 キ ャ ッ シュ コ ン ト ローラーのス タ ンバイ モード は、 L2 キ ャ ッ シュ コ ン ト ローラーを駆動し ているプロセ ッ サの割 り 込み待機 (WFI) モード と組み合わせて使用でき ます。 プロセ ッサが WFI モード でス タ ンバイ モード が有効になっている場合、 L2 キ ャ ッ シュ コ ン ト ローラーの内部ク ロ ッ ク が停止し ます。 WFI 使用の詳細は、 『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュ アル』 (UG585) [参照 4] の第 3 章 「アプ リ ケーシ ョ ン プロセ ッ シング ユニ ッ ト (APU)」 を参照し て く ださ い。

    ス タ ンバイ モード は、 動的ク ロ ッ ク ゲーテ ィ ング機能の一部です。 ス タ ンバイ モード では、 ク ロ ッ ク ゲーテ ィ ングは WFI ステー ト に限定される ため、 通常の動作条件における L2 キ ャ ッ シュ ア ク セスの予測性が向上し ます。

    • オンチッ プ メ モ リ (OCM): 通常、 Linux ス タ ン ド バイ モード などの低消費電力モード での全体的な消費電力を削減するために OCM を使用でき ます。 た と えば、 DDR が低消費電力モード の場合に実行コード を格納するのに OCM を使用でき ます。

    • ス ヌープ制御ユニ ッ ト (SCU): mpcore.SCU_CONTROL_REGISTER で該当する ビ ッ ト をセ ッ ト する と、 SCU のスタ ンバイ モード を有効にでき ます。 これを有効にする と、 次の条件が満た された場合に内部 SCU ク ロ ッ ク が停止し ます。

    ° CPU が WFI モード。

    ° ACP に保留中の要求がない。

    ° SCU にア ク テ ィ ビテ ィ が残っていない。

    CPU が WFI モード を終了するか、 ACP に要求が発生する と、 SCU は通常動作を再開し ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 20UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=20

  • 第 2 章: システム レベルの考慮事項

    • PLL: PLL の消費電力は PLL の出力周波数に依存するので、 PLL の出力周波数を低 く する と消費電力を削減でき ます。 また、 未使用の PLL の電源をオフにし て も、 消費電力を削減でき ます。 た と えば、 すべてのク ロ ッ ク ジェネレーターを DDR PLL で駆動でき る場合、 Arm コ ア PLL と I/O PLL を無効にし て消費電力を削減でき ます。 すべてのク ロ ッ ク ジェネレーターを駆動でき るのは DDR PLL のみです。 各ク ロ ッ クは、 使用し ない場合は個別に無効にでき ます。 サブシステムに追加のク ロ ッ ク無効化機能およびほかの消費電力削減機能が含まれ

    ている場合も あ り ます。

    • 物理 メ モ リ : Zynq-7000 SoC では、 DDR2、 DDR3、 LPDDR2 など、 異なる タ イプの物理 メ モ リ がサポー ト されます。 サポー ト される DDR メ モ リ タ イプは、 16 ビ ッ ト データおよび 32 ビ ッ ト データの両方で動作でき ます。DDR の消費電力は総消費電力の大きな割合を占めるため、 その消費電力を最小限に抑え る こ と がシステム消費電力を削減する重要な手段 と な り ます。 DDR の消費電力を削減する際には、 次の事項を考慮し ます。

    ° DDR コ ン ト ローラーの動作速度。

    ° DDR の幅および ECC を有効にするか無効にするか。

    ° 使用される DDR チッ プの数。

    ° DDR タ イプ (電圧を大幅に下げるために LPDDR を使用する など)。

    ° 低消費電力動作中に使用される異なる DDR モード の使用 (DDR セルフ リ フ レ ッ シ ュ モード など)。 DDR の低消費電力動作モード での消費電力については、 該当する DDR 規格を参照し て く ださい。

    DDR コ ン ト ローラーのク ロ ッ ク ゲーテ ィ ングのイ ンプ リ メ ンテーシ ョ ンについては、 『Zynq-7000 SoC テ ク ニカル リ フ ァ レ ン ス マニュ アル』 (UG585) [参照 4] の 「ク ロ ッ ク」 の章を参照し て く ださい。

    • I/O: MIO や DDR I/O などの I/O デバイ ス も、 総消費電力に影響し ます。 I/O バッ フ ァー制御のパワー マネージメ ン ト については、 『Zynq-7000 SoC PCB デザイ ン ガイ ド』 (UG933) [参照 14] の 「SelectIO のシグナ リ ング」 の章を参照し て く ださい。

    ソ フ ト ウ ェ ア サポー ト

    Linux カーネルでは、 次のパワー マネージ メ ン ト ステー ト がサポー ト されます。

    • S0: フ リ ーズまたは低消費電力ア イ ド ル状態。 これは、 汎用の純粋な ソ フ ト ウ ェ ア、 軽量、 低消費電力ステー トです。

    • S1: ス タ ンバイ またはパワーオン サスペン ド。 すべてのプロセ ッ サ キ ャ ッ シュが消去され、 命令実行が停止します。 プロセ ッ サおよび RAM への電源供給は保持されます。

    • S3: STR (Suspend-to-RAM)。 システムおよびデバイ スのステー ト が メ モ リ に保存されます。 すべてのデバイ スがサスペン ド状態にな り 、 電源がオフにな り ます。 RAM への電源供給は保持されます。

    Linux の Zynq-7000 SoC のパワー マネージ メ ン ト サポー ト については、 Zynq パワー マネージ メ ン ト Wiki ページ [参照 66] を参照し て く ださい。

    この リ ン ク には、 Zynq-7000 SoC 用にイ ンプ リ メ ン ト される CPU スケー リ ング フ レーム ワーク についての情報も あり ます。 CPU スケー リ ング フ レーム ワークは、 ラ ン タ イ ムに CPU の周波数を ス ケー リ ングするために使用されます。 高処理パフ ォーマン ス を必要 と し ないアプ リ ケーシ ョ ンでは、 アプ リ ケーシ ョ ンの要件に合わせて CPU の周波数を下げる こ と ができ ます。 ク ロ ッ ク周波数を下げる と、 動作時の消費電力を大幅に削減でき ます。

    UltraFast エンベデッ ド デザイ ン設計手法ガイ ド 21UG1046 (v2.3) 2018 年 4 月 20 日 japan.xilinx.com

    https://japan.xilinx.comhttps://japan.xilinx.com/about/feedback.html?docType=Methodology_Guides&docId=UG1046&Title=UltraFast%20%26%2312456%3B%26%2312531%3B%26%2312505%3B%26%2312487%3B%26%2312483%3B%26%2312489%3B%20%26%2312487%3B%26%2312470%3B%26%2312452%3B%26%2312531%3B%26%2335373%3B%26%2335336%3B%26%2325163%3B%26%2327861%3B%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=2.3&docPage=21

  • 第 2 章: システム レベルの考慮事項

    PL パワー マネージ メ ン トPL を必要と し ないアプ リ ケーシ ョ ンでは、 PL の電源をオフにでき ます。 これには、 PS と PL を独立し た電源に接続し てお く 必要があ り ます。 オフにでき る PL 電源には、 VCCINT、 VCCAUX、 VCCBRAM、 および VCCO があ り ます。 電源投入シーケン ス を判断するには、 該当するデータ シー ト を参照し て く ださい。

    PL の電源をオフにする と コ ンフ ィ ギュ レーシ ョ ンが失われる ため、 次の電源投入時にも う 一度コ ンフ ィ ギュ レーシ ョ ンする必要があ り ます。 PL の電源をオフにし て も安全かど う かは、 ソ フ ト ウ ェ アで判断する よ う にする必要があ り ます。

    このセ ク シ ョ ンでは、 Zynq-7000 SoC の PL 消費電力を最適化する際の考慮事項を説明し ます。

    ロジ ッ ク リ ソースの使用量

    PL リ ソースの使用量は、 Zynq-7000 SoC で使用される総消費電力を決定する重要な要素です。 使用される CLB リソース、 専用ハード ウ ェ ア、 配線の量はデザイ ンによ って異な り 、 PL で使用される ス タ テ ィ ッ ク消費電力およびダイナ ミ ッ ク消費電力が追加されます。 PL アーキテ クチャ を詳細に理解し てお く こ と によ り 、 シ リ コ ン リ ソース を活用でき ます。

    消費電力を削減するには、 デザイ ンのロ ジ ッ ク を削減でき る可能性を探す必要があ り ます。 これによ り よ り 小型の

    デバイ ス を使用でき る よ う にな り 、 ス タ テ ィ ッ ク消費電力が削減されます。 1 つの方法は、 CLB にフ ァ ン ク シ ョ ンを イ ンプ リ メ ン ト するのではな く 専用ハード ウ ェ ア ブロ ッ ク を使用する こ と です。 これによ り ス タ テ ィ ッ ク消費電力およびダ イナ ミ ッ ク消費電力が削減され、 タ イ ミ ング要件を満た しやす く な り ます。 専用ハード ウ ェ ア ブロ ッ ク を使用する と、 CLB ロ ジ ッ ク を使用し て等価コ ンポーネン ト を構築する よ り も総 ト ラ ンジス タ数が少な く なるので、ス タ テ ィ ッ ク消費電力が削減されます。

    特定の リ ソース を イ ン ス タ ンシエー ト するには、 IP カ タ ロ グを使用し て専用ハード ウ ェアをカ ス タマイ ズ し ます。未使用の PS IP は、 ほかのタ ス ク に使用でき ます。 た と えば DSP48 ス ラ イ スには、 乗算、 加算、 累算、 多入力ロジ ッ ク コ ンパレータ、 シフ ター、 パターン一致、 カ ウ ン ターなど、 多数のロ ジ ッ ク フ ァ ン ク シ ョ ンがあ り ます。 ブロ ッ ク RAM は、 ステー ト マシン、 数値演算、 ROM に使用でき ます。