video frame buffer ead v2.0 および video fr me buffer write ... · video frame buffer read/write...

44
Video Frame Buffer Read v2.0 および Video Frame Buffer Write v2.0 LogiCORE IP 製品ガ イ ド Vivado Design Suite PG278 2017 10 4 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に よっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきまし ては、必ず最新英語版をご参照ください。

Upload: others

Post on 31-Dec-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read v2.0 および Video Frame Buffer Write v2.0

LogiCORE IP 製品ガイド

Vivado Design Suite

PG278 2017 年 10 月 4 日

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

Page 2: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 2

PG278 2017 年 10 月 4 日 japan.xilinx.com

目次

IP の概要

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

アプリ ケーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

ラ イセンスおよび注文情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

第 2章: 製品仕様規格 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

性能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

リ ソース使用状況 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

ポートの説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

レジスタ空間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

第 3章: コアを使用するデザイン一般的なデザイン ガイ ド ライン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

ク ロ ッ ク、 イネーブル、 およびリセッ トに関する注意事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

第 4章: デザイン  フローの手順コアのカスタマイズおよび生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

コアへの制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

シ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

合成およびインプリ メンテーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

第 5章: サンプル デザインVideo Frame Buffer Read サンプル デザイン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Frame Buffer Write サンプル デザイン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

第 6章: テストベンチ

付録 A: 検証、 順応性、 相互運用性シ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

ハードウェア テス ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

相互運用性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

付録 B: 移行およびアップグレードVivado Design Suite でのアップグレード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

付録 C: アプリケーシ ョ ン  ソフ トウェア開発ボード サポート パッケージのビルド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

前提条件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

動作モード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Page 3: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 3

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 D: デバッグザイ リ ンクス ウェブサイ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

デバッグ ツール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

ハードウェア デバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

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

Documentation Navigator およびデザイン ハブ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

お読みください: 重要な法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Page 4: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 4

PG278 2017 年 10 月 4 日 japan.xilinx.com Production 製品仕様

はじめに

ザイ リ ンクス LogiCORE™ IP Video Frame Buffer Read および Video Frame Buffer Write コアは、 メモ リ と AXI4-Stream ビデオ プロ ト コルをサポート した AXI4-Stream ビデオ タイプのターゲッ ト ペリ フェラルの間で広帯域のダイレク ト メモ リ アクセスを可能にします。

機能

• AXI4 準拠

• サポート されるス ト リーミ ング ビデオ フォーマッ ト : RGB、 RGBA、 YUV 4:4:4、 YUVA 4:4:4、 YUV 4:2:2、YUV 4:2:0

• サポート される メモ リ ビデオ フォーマッ ト : RGBX8、BGRX8、 YUVX8、 YUYV8、 UYVY8、 RGBA8、BGRA8、 YUVA8、 RGBX10、 YUVX10、 Y_UV8、Y_UV8_420、 RGB8、 YUV8、 Y_UV10、 Y_UV10_420、Y8、 Y10

• プログラマブルなメモ リ ビデオ フォーマッ ト

• ス ト リーム インターフェイスおよびメモ リ インターフェイスで 8 および 10 ビッ トのカラー コンポーネン トをサポート

• 64 x 64 から最大 8192 x 4320 までの空間解像度をサポート

• サポート されるすべてのデバイス ファ ミ リで 4K60 をサポート (1)

1. 低消費電力デバイスではパフォーマンスが低下するこ とがあ り

ます。

IP の概要

この LogiCORE™ IP について

コアの概要

サポート される

デバイス ファ ミ リ (1)

UltraScale+™ ファ ミ リ

UltraScale™ アーキテクチャZynq®-7000 All Programmable SoC

7 シ リーズ

サポート される

ユーザー インターフェイス

AXI4-Master、 AXI4-Lite、 AXI4-Stream(2)

リ ソース

Performance and Resource Utilization

(ウェブ ページ)Performance and Resource Utilization

(ウェブ ページ)

コアに含まれるもの

デザイン ファイル なし

サンプル デザイン あ り

テス トベンチ なし

制約ファイル ザイ リ ンクス デザイン制約ファ イル (.xdc)

シ ミ ュレーシ ョ ン モデル

暗号化済み RTL

サポート される ソフ ト ウェア ド ラ イバー (3)

スタンドアロンLinux DMA コン ト ローラー

テスト済みデザイン フロー (4)

デザイン入力 Vivado® Design Suite

シ ミ ュレーシ ョ ン

サポート されるシ ミ ュレータについては、

『Vivado Design Suite ユーザー ガイ ド :リ リース ノート、 インス トールおよび

ライセンス』 を参照

合成 Vivado 合成

サポート

ザイ リ ンクス サポート ウェブ ページで提供

注記:1. サポート されているデバイスの一覧は、 Vivado IP カタログを参

照して ください。

2. 『Vivado Design Suite AXI: リ ファレンス ガイ ド』 (UG1037) [参照 1] の 「ビデオ IP: AXI 機能の導入」 で定義されたビデオ プロ

ト コル。

3. スタンドアロン ド ライバーの詳細は、 ソフ ト ウェア開発キッ ト (SDK) のディ レク ト リ (<install_directory>/SDK/<release>/data/embeddedsw/doc/xilinx_drivers.htm) を参照して ください。 Linux OS およびド ライバー サポートの情報は、 Xilinx Wiki ページを参

照して ください。

4. サポート されているツールのバージ ョ ンは、 『Vivado Design Suite ユーザー ガイ ド : リ リース ノート、 インス トールおよび

ライセンス』 を参照してください。

Page 5: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 5

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 1章

概要多くのビデオ アプリ ケーシ ョ ンでは、 フレーム レートの変更やイ メージ サイズの変更 (スケーリ ングまたはクロ ップ) をサポートするためにフレーム バッファーを必要と します。 Video Frame Buffer Read および Video Frame Buffer Write IP コアは、 AXI4-Stream ビデオ インターフェイス と AXI4 インターフェイスの間で効率的な広帯域アクセスが行えるよ うに設計されています。

機能概要

Video Frame Buffer Read コアおよび Video Frame Buffer Write コアはそれぞれ独立した IP で、 RGB、 YUV 4:4:4、 YUV 4:2:2、 YUV 4:2:0、 および Luma-Only (輝度のみ) の幅広いビデオ フォーマッ トに対する読み出し と書き込みをサポート しています。 データはビデオ フォーマッ トに基づきパッ ク /アンパッ ク されます。 YUV 4:2:2 および YUV 4:2:0 ではプレーナおよびセミプレーナ メモ リ フォーマッ ト を利用できます。 メモ リ ビデオのフォーマッ ト、 ス ト ラ イ ド、およびフレーム バッファー アドレスは実行時にプログラム可能です。

アプリケーシ ョ ン

放送、 業務用オーディオ/ビデオ、 民生用医療機器、 監視および産業用の幅広いビデオ システムに応用できます。これには、 次の機能が含まれます。

• ビデオ スイ ッチャー、 フォーマッ ト コンバーター

• ビデオ コーデッ ク

• ビデオ監視システム

• マシン ビジ ョ ン システム

• ビデオ会議端末装置

• セッ ト ト ップ ボッ クス

Page 6: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 6

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 1 章:概要

ライセンスおよび注文情報

このザイ リ ンクス LogiCORE™ IP モジュールは、ザイ リ ンクス エンドユーザー ライセンス規約のも とザイ リ ンクス Vivado Design Suite を使用して追加コス ト なしで提供されています。 この IP およびその他のザイ リ ンクス LogiCORE IP に関する情報は、 ザイ リ ンクス IP コア ページから入手できます。 その他のザイ リ ンクス LogiCORE IP モジュールおよびツールの価格や提供状況については、 ザイ リ ンクス販売代理店にお問い合わせください。

詳細は、 Video Frame Buffer の製品ページを参照してください。

その他のザイ リ ンクス LogiCORE IP モジュールに関する情報は、 ザイ リ ンクス IP コアのページから入手できます。その他のザイ リ ンクス LogiCORE IP モジュールおよびツールの価格や提供状況については、 ザイ リ ンクス販売代理店にお問い合わせください。

Page 7: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 7

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2章

製品仕様

規格

Video Frame Buffer Read および Video Frame Buffer Write コアは AXI4-Stream ビデオ プロ ト コル、AXI4-Lite インターコネク トおよびメモ リ マップド AXI4 インターフェイス規格に準拠しています。 詳細は、 『Vivado Design Suite AXI: リファレンス ガイ ド』 (UG1037) [参照 1] の 「ビデオ IP: AXI 機能の導入」 を参照してください。

性能

次に、 Video Frame Buffer Read および Video Frame Buffer Write コアの性能特性を示します。

最大周波数

各ターゲッ ト デバイスの代表的なクロ ッ ク周波数は次のとおりです。

• UltraScale+ デバイス (スピード グレード -1 以上): 300MHz

• Virtex®-7 および Virtex UltraScale™ デバイス (スピード グレード -2 以上): 300MHz

• Kintex®-7 および Kintex UltraScale デバイス (スピード グレード -2 以上): 300MHz

• Artix®-7 デバイス (スピード グレード -2 以上): 150MHz

達成可能な最大クロ ッ ク周波数は一概には決ま り ません。達成可能な最大クロ ッ ク周波数と リ ソース数は、ツール オプシ ョ ン、 デバイスの追加ロジッ ク、 ザイ リ ンクス ツールのバージ ョ ンなど、 さまざまな要素によって異なり ます。

リソース使用状況

性能およびリ ソース使用状況の詳細は、Video Frame Buffer Read Performance and Resource Utilization (ウェブ ページ) および Video Frame Buffer Write Performance and Resource Utilization (ウェブ ページ) を参照して ください。

Page 8: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 8

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

ポートの説明

Video Frame Buffer Read および Video Frame Buffer Write コアは、業界標準の制御/データ インターフェイスを使用してほかのシステム コンポーネン ト と接続します。 後続のセクシ ョ ンでは、 このコアで利用できるさまざまなインターフェイスについて説明します。 図 2-1 に、 Video Frame Buffer Read IP の I/O 図を示します。 どちらの IP にも、 次に示す 3 つの AXI インターフェイスがあ り ます。

• AXI-Lite 制御インターフェイス (s_axi_CTRL)

• AXI4-Stream ス ト リーミ ング ビデオ出力 (m_axis_video) または入力 (s_axis_video)

• メモ リ マップド AXI4 インターフェイス (m_axi_mm_video)

図 2-2 に、 Video Frame Buffer Write IP の I/O 図を示します。

X-Ref Target - Figure 2-1

図 2‐1: Video Frame Buffer Read IP の I/O 図

X-Ref Target - Figure 2-2

図 2‐2: Video Frame Buffer Write IP の I/O 図

Page 9: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 9

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

共通のインターフェイス信号

表 2-1 に、 AXI4-Stream、 メモ リ マップド AXI4 データ、 または AXI4-Lite 制御インターフェイスで共有される信号、またはこれらの専用インターフェイスに属さない信号を示します。

ap_clk および ap_rst_n 信号は Write コアと Read コアで共有され、AXI4-Stream、 メモ リ マップド AXI4 データ インターフェイス、 および AXI4-Lite 制御インターフェイスで共有されます。

ap_clk

AXI4-Stream、 メモ リ マップド AXI4、 および AXI4-Lite インターフェイスはコア ク ロ ッ ク信号の ap_clk に同期する必要があ り ます。 AXI4-Stream、 メモ リ マップド AXI4 インターフェイス入力信号および AXI4-Lite 制御インターフェイス入力信号はすべて ap_clk の立ち上がりエッジでサンプルされます。 AXI4-Stream 出力信号はすべて ap_clk の立ち上がりエッジの後に変化します。

ap_rst_n

ap_rst_n ピンは、 AXI4-Lite、 AXI4-Stream、 およびメモ リ マップド AXI4 インターフェイスに対するアクティブ Low 同期リセッ ト入力です。 ap_rst_n を 0 にする と、 ap_clk の次の立ち上がりエッジでコアがリセッ ト します。

interrupt

割り込みステータス出力バスは、 独立した割り込みイネーブル/マスク、 割り込みク リ ア、 および割り込みステータス レジスタを持つ外部割り込みコン ト ローラーと統合するこ とによ り、 システム プロセッサに対する割り込みを集約できます。

AXI4‐Stream ビデオ インターフェイス

Video Frame Buffer Read および Video Frame Buffer Write コアには、 AXI4-Stream ビデオ入力インターフェイス (s_axis_video) または出力インターフェイス (m_axis_video) があ り ます。ビデオ ス ト リーミ ング インターフェイスはすべて 『Vivado Design Suite AXI: リ ファレンス ガイ ド』 (UG1037) [参照 1] の 「ビデオ IP: AXI 機能の導入」 で定義したインターフェイス仕様に準拠します。 AXI4-Stream ビデオ インターフェイスは 1、 2、 または 4PPC (pixels per clock) が可能で、 8 または 10BPC (bits per component) をサポート します。

表 2-2 ~表 2-6 に、 2PPC および 10BPC でコンフ ィギュレーシ ョ ンした場合の、 AXI4-Stream インターフェイスでサポート されるすべてのカラー フォーマッ トのピクセル マップを示します。 Video Frame Buffer Read および Video Frame Buffer Write コアはハード ウェア コンフ ィギュレーシ ョ ンで必ず 3 コンポーネン ト ビデオと して設定する必要があるため、 YUV 4:2:2、 YUV 4:2:0 または Luma-Only (輝度のみ) で 2 または 1 コンポーネン ト ビデオ インターフェイスの IP と接続する際には AXI4-Stream Subset Converter が必要です。

表 2‐1:共通のインターフェイス信号

信号名 I/O 幅 説明

ap_clk I 1 ビデオ コア ク ロ ッ ク

ap_rst_n I 1 ビデオ コアのアクティブ Low ク ロ ッ ク イネーブル

interrupt O 1 割り込み要求ピン

表 2‐2: 2PPC、 10BPC の場合の RGB のマップ

63:60 59:50 49:40 39:30 29:20 19:10 9:0

ゼロ パディング R1 B1 G1 R0 B0 G0

Page 10: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 10

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

実行時にビデオ フォーマッ ト を YUV 4:2:0 または YUV 4:2:2 に設定した場合も、 この IP は常に 3 つのビデオ コンポーネン ト を生成します。 未使用のコンポーネン トは 0 に設定できます。

表 2-7 に、 入力および出力 AXI4-Stream ビデオ ス ト リーミ ング インターフェイスの信号を示します。

表 2‐3: 2PPC、 10BPC の場合の YUV 4:4:4 のマップ

63:60 59:50 49:40 39:30 29:20 19:10 9:0

ゼロ パディング V1 U1 Y1 V0 U0 Y0

表 2‐4: 2PPC、 10BPC の場合の YUV 4:2:2 のマップ

63:60 59:50 49:40 39:30 29:20 19:10 9:0

ゼロ パディング ゼロ パディング ゼロ パディング V0 Y1 U0 Y0

表 2‐5: 2PPC、 10BPC の場合の YUV 4:2:0 のマップ (偶数ライン)

63:60 59:50 49:40 39:30 29:20 19:10 9:0

ゼロ パディング ゼロ パディング ゼロ パディング V0 Y1 U0 Y0

表 2‐6: 2PPC、 10BPC の場合の YUV 4:2:0 のマップ (奇数ライン)

63:60 59:50 49:40 39:30 29:20 19:10 9:0

ゼロ パディング ゼロ パディング ゼロ パディング ゼロ パディング Y1 ゼロ パディング Y0

表 2‐7: AXI4‐Stream インターフェイス信号

信号名 I/O 幅 説明

s_axis_tdata Ifloor(((number_of_components ×

bits_per_component × pixels_per_clock) + 7) / 8) × 8

入力データ

s_axis_tready O 1 入力 Ready 信号

s_axis_tvalid O 1 入力 Valid 信号

s_axis_tdest I 1 入力データ転送先識別子

s_axis_tkeep I (s_axis_video_tdata width) / 8 TDATA の関連するバイ トの内容をデータ ス ト リームの一部と して処理するかど うかを示す入力バイ ト修飾子

s_axis_tlast I 1 入力ライン終了

s_axis_tstrb I (s_axis_video_tdata width) / 8TDATA の関連するバイ トの内容をデータ バイ ト または位置バイ ト と して処理するかど うかを示す入力バイ ト修飾子

s_axis_tuser I 1 入力フレーム開始

m_axis_tdata Ofloor(((number_of_components ×

bits_per_component × pixels_per_clock) + 7) / 8) × 8

出力データ

m_axis_tdest O 1 出力データ転送先識別子

m_axis_tid O 1 出力データ ス ト リーム識別子

m_axis_tkeep O (m_axis_video_tdata width) / 8 TDATA の関連するバイ トの内容をデータ ス ト リームの一部と して処理するかど うかを示す出力バイ ト修飾子

m_axis_tlast O 1 出力ライン終了

m_axis_tready I 1 出力 Ready 信号

Page 11: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 11

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

ビデオ ス ト リーミ ング インターフェイスはすべて IP コア ク ロ ッ ク速度 (ap_clk) で動作します。

メモリ  マップド  AXI4 インターフェイス

メモ リ マップド AXI4 インターフェイスは ap_clk ク ロ ッ ク ド メ インで動作します。 これらの信号は、 『Vivado Design Suite AXI: リ ファレンス ガイ ド』 (UG1037) [参照 1] で定義された仕様に準拠します。 表 2-8 に、 Video Frame Buffer Read および Video Frame Buffer Write コアがサポートする メモ リ ビデオのピクセル フォーマッ ト を示します。

m_axis_tstrb O (m_axis_video_tdata width) / 8TDATA の関連するバイ トの内容をデータ バイ ト または位置バイ ト と して処理するかど うかを示す出力バイ ト修飾子

m_axis_tuser O 1 出力フレーム開始

m_axis_tvalid O 1 出力 Valid 信号

表 2‐7: AXI4‐Stream インターフェイス信号 (続き)

信号名 I/O 幅 説明

表 2‐8: ピクセル フォーマッ ト

ビデオ フォーマッ ト

ID 説明BPC (Bits per Component)

BPP (Bytes per Pixel)

RGBX8 10 パッ ク ド RGB 8 ピクセルあたり 4 バイ ト

BGRX8 27 パッ ク ド BGR 8 ピクセルあたり 4 バイ ト

YUVX8 11 パッ ク ド YUV 4:4:4 8 ピクセルあたり 4 バイ ト

YUYV8 12 パッ ク ド YUV 4:2:2 8 ピクセルあたり 2 バイ ト

UYVY8 28 パッ ク ド YUV 4:2:2 8 ピクセルあたり 2 バイ ト

RGBA8 (1) 13 アルファ付きパッ ク ド RGB 8 ピクセルあたり 4 バイ ト

BGRA8 (1) 26 アルファ付きパッ ク ド BGR 8 ピクセルあたり 4 バイ ト

YUVA8 (1) 14 アルファ付きパッ ク ド YUV 4:4:4 8 ピクセルあたり 4 バイ ト

RGBX10 15 パッ ク ド RGB 10 ピクセルあたり 4 バイ ト

YUVX10 16 パッ ク ド YUV 4:4:4 10 ピクセルあたり 4 バイ ト

Y_UV8 18 セミプレーナ YUV 4:2:2 8 ピクセルあたり 1 バイ ト (1 プレーンにつき )

Y_UV8_420 19 セミプレーナ YUV 4:2:0 8 ピクセルあたり 1 バイ ト (1 プレーンにつき )

RGB8 20 パッ ク ド RGB 8 ピクセルあたり 3 バイ ト

YUV8 21 パッ ク ド YUV 4:4:4 8 ピクセルあたり 3 バイ ト

Y_UV10 22 セミプレーナ YUV 4:2:2 10 3 ピクセルあたり 4 バイ ト (1 プレーンにつき )

Y_UV10_420 23 セミプレーナ YUV 4:2:0 10 3 ピクセルあたり 4 バイ ト (1 プレーンにつき )

Y8 24 パッ ク ド Luma-Only (輝度のみ) 8 ピクセルあたり 1 バイ ト

Y10 25 パッ ク ド Luma-Only (輝度のみ) 10 3 ピクセルあたり 4 バイ ト

注記:1. ピクセルごとのアルファ情報を持つメモ リ フォーマッ トは、 Video Frame Buffer Read IP でのみ利用できます。

Page 12: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 12

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

こ こからは、 上記の各フォーマッ トで期待されるピクセル マップを表形式で説明します。

注記: RGB フォーマッ トは、 『Vivado Design Suite AXI: リ ファレンス ガイ ド』 (UG1037) [参照 1] のピクセル マップとは異なる RGB 順にメモ リに格納されます。

RGBX8

パッ ク ド RGB、 8BPC。 メモ リ内の RGB は、 次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。 イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。 ビッ ト [31:24] にはピクセル情報は含まれません。

BGRX8

パッ ク ド BGR、 8BPC。 メモ リ内の BGR は、 次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。 イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。 ビッ ト [31:24] にはピクセル情報は含まれません。

YUVX8

パッ ク ド YUV 4:4:4、 8BPC。 メモ リ内の YUV 4:4:4 は、 次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。ビッ ト [31:24] にはピクセル情報は含まれません。

YUYV8

パッ ク ド YUV 4:2:2、 8BPC。 メモ リ内の YUV 4:2:2 は、 次に示すよ うに 2 ピクセルが 32 ビッ トで表現されます。

UYVY8

パッ ク ド YUV 4:2:2、 8BPC。 メモ リ内の YUV 4:2:2 は、 次に示すよ うに 2 ピクセルが 32 ビッ トで表現されます。

31:24 23:16 15:8 7:0

X B G R

31:24 23:16 15:8 7:0

X R G B

31:24 23:16 15:8 7:0

X V U Y

31:24 23:16 15:8 7:0

V0 Y1 U0 Y0

31:24 23:16 15:8 7:0

Y1 V0 Y0 U0

Page 13: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 13

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

RGBA8

アルファ付きパッ ク ド RGB、 8BPC。 アルファ付き RGB は、次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。ビッ ト [31:24] にはアルファ情報が格納されます (0 が完全に透明、 255 が完全に不透明)。

BGRA8

アルファ付きパッ ク ド BGR、 8BPC。 アルファ付き BGR は、次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。ビッ ト [31:24] にはアルファ情報が格納されます (0 が完全に透明、 255 が完全に不透明)。

YUVA8

アルファ付きパッ ク ド YUV、 8BPC。 アルファ付き YUV 4:4:4 は、 次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。 ビッ ト [31:24] にはアルファ情報が格納されます (0 が完全に透明、 255 が完全に不透明)。

RGBX10

パッ ク ド RGB、 10BPC。 RGB は、 次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。 ビッ ト [31:30] にはピクセル情報は含まれません。

YUVX10

パッ ク ド YUV 4:4:4、 10BPC。 YUV 4:4:4 は、次に示すよ うに 1 ピクセルが 32 ビッ トで表現されます。 ビッ ト [31:30] にはピクセル情報は含まれません。

31:24 23:16 15:8 7:0

A B G R

31:24 23:16 15:8 7:0

A R G B

31:24 23:16 15:8 7:0

A V U Y

31:30 29:20 19:10 9:0

X B G R

31:30 29:20 19:10 9:0

X V U Y

Page 14: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 14

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

Y_UV8

セミプレーナ YUV 4:2:2、 8BPC。 Y と UV は、 次に示すよ うに別々のプレーンに格納されます。 UV プレーンは、 Y プレーンのバッファー アドレスから (ス ト ラ イ ド x 高さ ) バイ トのオフセッ ト とする必要があ り ます。 ス ト ラ イ ドの詳細は、 付録 C の 「前提条件」 の 「ス ト ラ イ ド」 を参照してください。

Y_UV8_420

セミプレーナ YUV 4:2:0、 8BPC。 Y と UV は、 次に示すよ うに別々のプレーンに格納されます。 UV プレーンは、 Y プレーンのバッファー アドレスから (ス ト ラ イ ド x 高さ ) バイ トのオフセッ ト とする必要があ り ます。 ス ト ラ イ ドの詳細は、 付録 C の 「前提条件」 の 「ス ト ラ イ ド」 を参照してください。

RGB8

パッ ク ド RGB、 8BPC。 メモ リ内の RGB は、 次に示すよ うに 1 ピクセルが 24 ビッ トで表現されます。 イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。

YUV8

パッ ク ド YUV 4:4:4、 8BPC。 メモ リ内の YUV 4:4:4 は、 次に示すよ うに 1 ピクセルが 24 ビッ トで表現されます。イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。

31:24 23:16 15:8 7:0

Y3 Y2 Y1 Y0

31:24 23:16 15:8 7:0

V2 U2 V0 U0

31:24 23:16 15:8 7:0

Y3 Y2 Y1 Y0

31:24 23:16 15:8 7:0

V4 U4 V0 U0

23:16 15:8 7:0

B G R

23:16 15:8 7:0

V U Y

Page 15: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 15

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

Y_UV10

セミプレーナ YUV 4:2:2、 10BPC。 3 ピクセルが 32 ビッ トで表現されます。 ビッ ト [31:30] にはピクセル情報は含まれません。 Y と UV は、 次に示すよ うに別々のプレーンに格納されます。 UV プレーンは、 Y プレーンのバッファー アドレスから (ス ト ラ イ ド x 高さ ) バイ トのオフセッ ト とする必要があ り ます。 ス ト ラ イ ドの詳細は、 付録 C の 「前提条件」 の 「ス ト ラ イ ド」 を参照してください。

Y_UV10_420

セミプレーナ YUV 4:2:0、 10BPC。 3 ピクセルが 32 ビッ トで表現されます。 ビッ ト [31:30] にはピクセル情報は含まれません。 Y と UV は、 次に示すよ うに別々のプレーンに格納されます。 UV プレーンは、 Y プレーンのバッファー アドレスから (ス ト ラ イ ド x 高さ ) バイ トのオフセッ ト とする必要があ り ます。 ス ト ラ イ ドの詳細は、 付録 C の 「前提条件」 の 「ス ト ラ イ ド」 を参照してください。

Y8

パッ ク ド Luma-Only、 8BPC。 メモ リ内の Luma-Only は、 次に示すよ うに 1 ピクセルが 8 ビッ トで表現されます。イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。Y8 は AXI4-Stream インターフェイスでは YUV 4:4:4 と して表現されます。

Y10

パッ ク ド Luma-Only、 10BPC。 メモ リ内の Luma-Only は、 次に示すよ うに 3 ピクセルが 32 ビッ トで表現されます。イ メージはラスター順、 すなわち左上のピクセルから右下のピクセルに向かってメモ リに格納する必要があ り ます。Y10 は AXI4-Stream インターフェイスでは YUV 4:4:4 と して表現されます。

63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0

X Y5 Y4 Y3 X Y2 Y1 Y0

63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0

X V4 U4 V2 X U2 V0 U0

63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0

X Y5 Y4 Y3 X Y2 Y1 Y0

63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0

X V8 U8 V4 X U4 V0 U0

7:0

Y

31:30 29:20 19:10 9:0

X Y2 Y1 Y0

Page 16: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 16

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI4‐Lite 制御インターフェイス

AXI4-Lite インターフェイスを使用する と、 コアのパラ メーターを動的に制御できます。 この設定は、 AXI4-Lite マスター ステート マシン、 エンベデッ ド ARM®、 または MicroBlaze™ などのソフ ト システム プロセッサを使用して実行できます。 Video Frame Buffer Read および Video Frame Buffer Write コアは、 ソフ ト ウェア開発キッ ト (SDK) のドライバーによって提供される機能を使用して AXI4-Lite インターフェイス経由で制御できます。 このほか、 レジスタ空間に対する読み出しおよび書き込みト ランザクシ ョ ンを実行する方法もあ り ますが、 これは上記の方法を利用できない場合のみにとどめてください。 表 2-9 に、 AXI4-Lite 制御インターフェイスの信号を示します。 このインターフェイスは ap_clk ク ロ ッ クで動作します。

表 2‐9: AXI4‐Lite 制御インターフェイス信号

信号名 I/O 幅 説明

s_axi_ctrl_aresetn I 1 リセッ ト

s_axi_ctrl_aclk I 1 ク ロ ッ ク

s_axi_ctrl_awaddr I 18 書き込みアドレス

s_axi_ctrl_awprot I 3 書き込みアドレス保護

s_axi_ctrl_awvalid I 1 書き込みアドレスの Valid 信号

s_axi_ctrl_awready O 1 書き込みアドレスの Ready 信号

s_axi_ctrl_wdata I 32 書き込みデータ

s_axi_ctrl_wstrb I 4 書き込みデータのス ト ローブ

s_axi_ctrl_wvalid I 1 書き込みデータの Valid 信号

s_axi_ctrl_wready O 1 書き込みデータの Ready 信号

s_axi_ctrl_bresp O 2 書き込み応答

s_axi_ctrl_bvalid O 1 書き込み応答の Valid 信号

s_axi_ctrl_bready I 1 書き込み応答の Ready 信号

s_axi_ctrl_araddr I 18 読み出しアドレス

s_axi_ctrl_arprot I 3 読み出しアドレス保護

s_axi_ctrl_arvalid I 1 読み出しアドレスの Valid 信号

s_axi_ctrl_aready O 1 読み出しアドレスの Ready 信号

s_axi_ctrl_rdata O 32 読み出しデータ

s_axi_ctrl_rresp O 2 読み出しデータの応答信号

s_axi_ctrl_rvalid O 1 読み出しデータの Valid 信号

s_axi_ctrl_rready I 1 読み出しデータの Ready 信号

Page 17: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 17

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

レジスタ空間

Video Frame Buffer Read および Video Frame Buffer Write コアには、 コアの動作を動的に制御するためのレジスタがあり ます。 どのレジスタも初期値は 0 です。

最上位レジスタ

表 2-10 に、 IP に対してグローバルに適用されるすべてのレジスタの詳細な説明を示します。

制御 (0x0000) レジスタ  

このレジスタは、 コアの動作を制御します。 制御レジスタのビッ ト [0] (ap_start) を使用して、 ソフ ト ウェアからコアの動作を開始します。 このビッ トに 1 を書き込むと、 コアはビデオ フレームの生成を開始します。 コアをフリー ランニング モードに設定するには、 このレジスタのビッ ト [7] (auto_restart) を 1 に設定する必要があ り ます。 ビッ ト [3:1] は将来のために予約されており、 現在は使用しません。

表 2‐10:最上位レジスタ

アドレス (16 進数) BASEADDR+ レジスタ名

アクセス タイプ

レジスタの説明

0x0000 制御 R/W ビッ ト [0] = ap_start (R/W/COH)(1)

ビッ ト [1] = ap_done (R/COR)

ビッ ト [2] = ap_idle (R)

ビッ ト [3] = ap_ready (R)

ビッ ト [7] = auto_restart (R/W)

その他 = 予約

0x0004 グローバル割り込みイネーブル

R/W ビッ ト [0] = グローバル割り込みイネーブル

その他 = 予約

0x0008 IP 割り込みイネーブル R/W ビッ ト [0] = チャネル 0 (ap_done)

ビッ ト [1] = チャネル 1 (ap_ready)

その他 = 予約

0x000c IP 割り込みステータス R/TOW(1)ビッ ト [0] = チャネル 0 (ap_done)

ビッ ト [1] = チャネル 1 (ap_ready)

その他 = 予約

0x0010 幅 R/W s_axis_video または m_axis_video のス ト リームのアクティブな幅

0x0018 高さ R/W s_axis_video または m_axis_video のス ト リームのアクティブな高さ

0x0020 ス ト ラ イ ド R/W アクティブなス ト ラ イ ド (単位: バイ ト )

0x0028 メモリ ビデオ フォーマッ ト R/W メモ リ内データのアクティブなビデオ フォーマッ ト

0x0030 プレーン 1 バッファー R/W プレーン 1 フレーム バッファーの開始アドレス

0x003C プレーン 2 バッファー R/W プレーン 2 フレーム バッファーの開始アドレス。 セ ミプレーナ ビデオ フォーマッ ト を選択した場合のみ有効。

注記:1. COH はハンドシェイ クによ り ク リ ア、 COR は読み出しによ り ク リ ア、 TOW は書き込みによ り ト グルという意味です。

Page 18: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 18

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

グローバル割り込みイネーブル (0x0004) レジスタ

このレジスタは、 すべての割り込みのマスター制御です。 ビッ ト [0] を使用してすべてのコア割り込みを有効/無効にします。

IP 割り込みイネーブル (0x0008) レジスタ

このレジスタは、 割り込みを個別に有効/無効にします。 現在利用できる割り込みソースは、 ap_done と ap_ready の 2 つです。 ap_done はフレーム処理が完了する と ト リガーされます。 ap_ready はコアが次のフレーム処理を開始できる状態になる と ト リガーされます。

IP 割り込みステータス (0x000C) レジスタ

このレジスタは 2 つの目的を兼ねています。 割り込みが発生する と、 このレジスタの対応する割り込みソース ビットがセッ ト されます。 リードバッ ク モード (Get status) では、 割り込みソースを特定できます。 ライ トバッ ク モード (Clear interrupt) では、 要求された割り込みソースがク リ アされます。

幅 (0x0010) レジスタ  

幅レジスタは、 1 スキャンラインあたりのアクティブなピクセル数をエンコード します。 サポート される値は、 64 ~ [Maximum Number of Columns] (Vivado IDE の設定値) の範囲です。 処理エラーを防ぐため、 幅レジスタに書き込む値は、 コア インスタンスでサポート される範囲に制限してください。 また、 幅レジスタの値は [Samples per Clock] (Vivado IDE の設定値) の倍数とする必要があ り ます。

高さ  (0x0018) レジスタ  

高さレジスタは、 1 フレームあたりのアクティブなスキャン ライン数をエンコード します。 サポート される値は、64 ~ [Maximum Number of Rows] (Vivado IDE の設定値) の範囲です。 処理エラーを防ぐため、 高さレジスタに書き込む値は、 コア インスタンスでサポート される範囲に制限してください。

スト ライ ド  (0x0020) レジスタ  

ス ト ラ イ ドは、 メモ リに格納したピクセルの行間隔をバイ ト数で指定します。 ビデオ フレームをメモ リに格納すると、 メモ リ バッファー内で各ピクセル行の後にパディング バイ トが追加されるこ とがあ り ます。 パディング バイ トはイ メージをどのよ うにメモ リに格納するかにのみ影響し、 イ メージをどのよ うに表示するかには影響しません。

パディング バイ トは、 すべてのピクセル行の開始アドレスがメモ リ マップド AXI4 インターフェイスのデータ サイズに揃う よ うにするために必要です。 したがって、 ス ト ラ イ ド値はメモ リ マップド AXI4 データ サイズの倍数とする必要があ り ます。 メモ リ マップド AXI4 インターフェイスのデータ サイズは 64*[Samples per Clock] ビッ トで、 たとえば [Samples per Clock] が 1、 2、 4 の場合はそれぞれ 64、 128、 256 ビッ トです。

メモリ  ビデオ フォーマッ ト  (0x0028) レジスタ  

このレジスタは、 コアが使用する メモ リ ビデオ フォーマッ ト を指定します。 Vivado IDE で選択したメモ リ ビデオ フォーマッ トがサポート されます (表 2-8 参照)。 メモ リ ビデオ フォーマッ トは、 表 2-11 に示すよ うに AXI4-Stream インターフェイスのデータ フォーマッ ト と互換である必要があ り ます。 8BPC を使用する メモ リ フォーマッ トは、アップ スケーリ ングによ り 10BPC ビデオ ス ト リームへの読み出しが可能です。 スケーリ ングは、 ビッ ト をシフ ト して実行します。 たとえば 8 ビッ トで 255 は 10 ビッ トでは 1020 になり ます。 同様に、 10 ビッ ト ビデオ ス ト リームはダウン スケーリ ングによ り 8 ビッ ト メモ リ ビデオ フォーマッ トへの書き込みが可能です。 ただし逆は不可で、8 ビッ ト ビデオ ス ト リーム データを 10 ビッ ト メモ リ ビデオ フォーマッ トに書き込んだり 10 ビッ ト メモ リ ビデオ フォーマッ トから読み出したりはできません。

Page 19: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 19

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

プレーン  1 バッファー (0x0030) およびプレーン  2 バッファー (0x003C) レジスタ

プレーン 1 バッファー レジスタは、プレーン 1 のフレーム バッファー アドレスを指定します。 セ ミプレーナ フォーマッ ト (Y_UV8、 Y_UV8_20、 Y_UV10、 Y_UV10_420) の場合、 クロマ (色差) バッファーをプレーン 2 バッファー レジスタで指定します。 アドレスは、 メモ リ マップド AXI4 インターフェイスのデータ サイズに揃える必要があ り ます。 メモ リ マップド AXI4 インターフェイスのデータ サイズは 64*[Samples per Clock] ビッ トで、 たとえば [Samples per Clock] が 1、 2、 4 の場合はそれぞれ 64、 128、 256 ビッ トです。

表 2‐11: メモリ  ビデオ フォーマッ ト とス ト リーミング ビデオ フォーマッ トの互換性

メモリ  ビデオ フォーマッ ト 互換性のある  AXI4‐Stream ビデオ フォーマッ ト

RGBX8

RGBRGBX10

RGB8

BGRX8

YUVX8

YUV 4:4:4

YUVX10

YUV8

Y8

Y10

YUYV8

YUV 4:2:2Y_UV8

Y_UV10

UYVY8

Y_UV8_420YUV 4:2:0

Y_UV10_420

RGBA8ピクセルごとのアルファ付き RGB

BGRA8

YUVA8 ピクセルごとのアルファ付き YUV 4:4:4

Page 20: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 20

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 3章

コアを使用するデザインこの章では、 コアを使用した設計をよ り容易にするためのガイ ド ラインおよび追加情報を紹介します。

一般的なデザイン  ガイド ライン

このセクシ ョ ンでは、 Video Frame Buffer Read および Video Frame Buffer Write IP コアと AXI Video Direct Memory Access IP コアの違いについて説明します。

AXI Video Direct Memory Access (VDMA) は、 メモ リ との間で読み書きするデータのピクセル パッ ク /アンパッ クを実行しません。 データは、 AXIS_VIDEO_TDATA バス上のフォーマッ トのまま メモ リに書き込まれます。 このため、次のよ うな結果となり ます。

• 8 ビッ ト RGB は GBR と してメモ リに書き込まれます。

• 3 コンポーネン ト ス ト リーミ ング インターフェイスでの YUV 4:2:2 は 3 番目のコンポーネン トには有効なデータが含まれませんが、 3 コンポーネン ト と してメモ リに書き込まれます。

• YUV 4:2:0 も YUV 4:2:2 の場合と同様です。 つま り、 4:2:0 は、 輝度プレーンと色差プレーンを分離した場合に比べ 2 倍の帯域幅を占有します。

• 10 ビッ ト フォーマッ トは、 ク ロ ッ クあた りのピクセル数 (PPC) によってメモリへの書き込み方法が異なり ます。たとえば 1PPC の場合、 RGBX は次のよ うに書き込まれます。

2PPC の場合、 RGBX は次のよ うに書き込まれます。

AXI VDMA IP と比べる と、Video Frame Buffer Read および Video Frame Buffer Write IP にはいくつかの違いや制限事項があ り ます。 次に、 Video Frame Buffer Read および Video Frame Buffer Write IP と AXI VDMA IP の主な違いをま とめます。

• Video Frame Buffer Read および Video Frame Buffer Write コアは 1 チャネル読み出しまたは 1 チャネル書き込みをサポート していますが、 これらを結合するこ とはできません。 AXI VDMA は 1 つの IP で読み立しチャネルと書き込みチャネルを結合できます。

• このため、 Video Frame Buffer Read および Video Frame Buffer Write コアは (1 つのバッファーに対する読み出し と書き込みを防止する ) ゲンロ ッ ク同期を使用しません。 これはソフ ト ウェアで実装する必要があ り ます。

• Video Frame Buffer Read および Video Frame Buffer Write コアは現在 8 および 10BPC (bits per component) のみをサポート しています。

• Video Frame Buffer Read および Video Frame Buffer Write コアはバイ ト (8 ビッ ト ) レベルへのデータ再アライ メント をサポート していません。 たとえば、 アドレスはメモ リ マップド データ幅バイ トの倍数に揃える必要があ ります。

31:30 29:20 19:10 9:0

X R B G

63:60 59:50 49:40 39:30 29:20 19:10 9:0

X R B G R B G

Page 21: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 21

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 3 章: コアを使用するデザイン

• Video Frame Buffer Read および Video Frame Buffer Write コアは、 メモ リ バス サイズの明示的な制御をサポートしていません。 データ幅の変換が必要な場合は AXI Interconnect IP を使用する必要があ り ます。

推奨: Video Processing Subsystem などのビデオ IP を使用する場合、 メモ リに対する読み出し /書き込みには Video Frame Buffer Read および Video Frame Buffer Write コアを使用するこ とを推奨します。 Zynq UltraScale+ MPSoC デバイスでは、 ビデオ コーデッ ク ユニッ トがメモ リ ビデオ データを正し くエンコード /デコード します。

クロック、 イネーブル、 およびリセッ トに関する注意事項

クロッキング

Video Frame Buffer Read および Video Frame Buffer Write IP のクロ ッ ク ド メ インは 1 つです。すべてのインターフェイス (マスターおよびスレーブ AXI4-Stream ビデオ インターフェイス、 AXI4-Lite インターフェイス、 およびメモ リ マップド AXI4 インターフェイス) が ap_clk ピンをクロ ッ ク ソース と して使用します。

リセッ ト

Video Frame Buffer Read および Video Frame Buffer Write IP のハードウェア リセッ トは、ap_rst_n ピンでのみ可能です。 ソフ ト ウェア リセッ トの方法はあ り ません。 コアを リセッ トするには、 外部リセッ ト パルスを ap_clk の 16 サイクル以上保持する必要があ り ます。 ap_rst_n 信号は ap_clk ク ロ ッ ク ド メ インに同期します。 ap_rst_n 信号は、 AXI4-Lite、 AXI4-Stream、 およびメモ リ マップド AXI4 インターフェイスを含むコア全体を リセッ ト します。

システムに関する注意事項

正し く動作させるには、Video Frame Buffer Read および Video Frame Buffer Write IP を実際の入力および出力イ メージ フレーム サイズに合わせてコンフ ィギュレーシ ョ ンする必要があ り ます。 IP を Video In to AXI4-Stream 入力および Video Timing Controller コアに接続する と、 イ メージ ビデオ ス ト リームからフレーム サイズの情報を取得できます。Video Timing Controller のタイ ミ ング検出ロジッ クがビデオ タイ ミ ング信号を収集します。 システム プロセッサは、計測したフレーム サイズを Video Timing Controller の AXI4-Lite 制御インターフェイス経由で読み出し、 Video Frame Buffer Read および Video Frame Buffer Write コアを含むすべてのダウンス ト リーム コアに適切なイ メージ サイズをプログラムします。

Video Frame Buffer Read および Video Frame Buffer Write には十分な帯域幅を確保する必要があ り ます。 必要な帯域幅 (MB/s) は、 次の式で求めます。

帯域幅 (MB/s) = fps × hight × stride  式 3‐1

fps は、 Video Frame Buffer Read および Video Frame Buffer Write の 1 秒あたりのフレーム数です。 height は高さ (ラ イン)、 stride はス ト ラ イ ド値 (バイ ト ) です。 ス ト ラ イ ドの詳細は、 付録 C の 「前提条件」 の 「ス ト ラ イ ド」 を参照してください。

プログラム シーケンス

この IP のバッファーレジスタは動的に変更でき、 変更は直ちに反映されます。 幅、 高さ、 ス ト ラ イ ド、 またはビデオ フォーマッ ト を変更する場合、 またはシステム全体を再起動する場合は、 ザイ リ ンクス IP パイプライン ビデオ コアのシステム出力からシステム入力の順に無効/ リセッ ト した後、 システム出力からシステム入力の順にプログラム/有効にするこ とを推奨します。

Page 22: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 22

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4章

デザイン フローの手順この章では、 コアのカスタマイズと生成、 制約、 およびシ ミ ュレーシ ョ ン/合成/インプリ メンテーシ ョ ンの手順について説明します。 一般的な Vivado® デザイン フローおよび IP インテグレーターの詳細は、 次の Vivado Design Suite ユーザー ガイ ドを参照してください。

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

• 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 3]

• 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910) [参照 4]

• 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 5]

コアのカスタマイズおよび生成

こ こでは、 ザイ リ ンクス ツールを使用し、 Vivado Design Suite でコアをカスタマイズおよび生成する方法について説明します。

Vivado IP インテグレーターでコアをカスタマイズおよび生成する場合は、 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 2] を参照して ください。 IP インテグレーターは、 デザインの検証または生成時に一部のコンフ ィギュレーシ ョ ン値を自動的に計算する場合があ り ます。 値が変わるかど うかを確認するには、 この章のパラ メーターの説明を参照してください。 パラ メーター値を確認するには、Tcl コンソールから validate_bd_design コマンドを実行してください。

IP はユーザー デザインに合わせてカスタマイズできます。 それには、 IP コアに関連する各種パラ メーターの値を次の手順に従って指定します。

1. Vivado IP カタログから IP を選択します。

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

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

注記: この章の図には Vivado 統合設計環境 (IDE) のスク リーンシ ョ ッ トが使用されていますが、 現在のバージ ョ ンとはレイアウ トが異なる場合があ り ます。

Page 23: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 23

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

インターフェイス

このセクシ ョ ンは、生成時に Vivado Design Suite を使用して設定可能なパラ メーターのクイ ッ ク リ ファレンスを提供します。

図 4-1 と図 4-2 に、 Vivado IDE での Video Frame Buffer Read および Video Frame Buffer Write コアのカスタマイズ画面を示します。

X-Ref Target - Figure 4-1

図 4‐1: Video Frame Buffer Read コアの [Customize IP] ダイアログ ボックス

Page 24: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 24

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

X-Ref Target - Figure 4-2

図 4‐2: Video Frame Buffer Write コアの [Customize IP] ダイアログ ボックス

Page 25: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 25

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

全般的な設定

次に、 全般的な設定項目を示します。

• [Component Name]: このコアに対して生成される出力ファイルのベース名です。 最初の 1 文字は必ず小文字アルファベッ ト と し、 2 文字目以降は a ~ z、 0 ~ 9、 アンダースコア (_) を自由に組み合わせるこ とができます。

• [Samples Per Clock]: 1 ク ロ ッ ク サイ クルあたりに処理されるピクセル数を指定します。 指定可能な値は 1、 2、4 です。 このパラ メーターで IP のスループッ トが決定します。 指定する値が大きいほどスループッ トが高くなり ます。 ただしスループッ ト を高くする と必要なハード ウェア リ ソースが増大します。

• [Maximum Number of Columns]: IP コアが実行時に生成できるアクティブなビデオ列/ピクセルの最大値を指定します。 [Maximum Number of Columns] の設定値よ り幅の小さいビデオは、 コアを再生成しな くても AXI4-Lite 制御インターフェイス経由でプログラムできます。

• [Maximum Number of Rows]: IP コアが実行時に生成できるアクティブなビデオ行/ラインの最大値を指定します。 [Maximum Number of Rows] の設定値よ り高さの小さいビデオは、 コアを再生成しな くても AXI4-Lite 制御インターフェイス経由でプログラムできます。

• [Maximum Data Width]: すべてのス ト リーミ ング インターフェイスの入力および出力サンプルのビッ ト幅を指定します。 指定可能な値は 8 および 10 ビッ トです。 このパラ メーターは、 AXI-Stream ビデオ インターフェイスに接続する IP コアの [Video Component Width] と一致している必要があ り ます。

• [Address Width]: メモ リ インターフェイスの AXI マスター インターフェイス アドレス幅を 32 または 64 ビッ トで指定します。

• [Video Formats]: サポートする メモ リ ビデオ フォーマッ ト を選択します。 ビデオ フォーマッ トは AXI4-Lite 制御インターフェイス経由でプログラムできます。 各ビデオ フォーマッ トの詳細は、 第 2 章の 「メモ リ マップド AXI4 インターフェイス」 を参照して ください。

RGBA8、 BGRA8、 および YUVA8 の 3 つのビデオ フォーマッ トは、 ピクセルごとのアルファ情報をサポート します。 これらのビデオ フォーマッ トは、 Video Frame Buffer Read IP でのみ利用できます。

パッ ク ド フォーマッ ト とセ ミプレーナ フォーマッ トの両方を選択できます。 パッ ク ド フォーマッ トのみを選択した場合、 必要なプレーンが 1 つで済むため、 IP のサイズが小さ くな り ます。 次に示すフォーマッ トはパッ クド フォーマッ トで、 必要なプレーンは 1 つのみです。

° RGBX8

° BGRX8

° YUVX8

° YUYV8

° UYVY8

° RGBA8

° BGRA8

° YUVA8

° RGBX10

° YUVX10

° RGB8

° YUV8

° Y8

° Y10

Page 26: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 26

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

次に示すフォーマッ トはセ ミプレーナ フォーマッ トで、 2 プレーンが必要です。

° Y_UV8

° Y_UV8_420

° Y_UV10

° Y_UV10_410

ユーザー パラメーター

表 4-1 に、 Vivado IDE のフ ィールド とユーザー パラ メーターの対応関係を示します。 ユーザー パラ メーターは Tcl コンソールで表示できます。

表 4‐1: Vivado IDE のパラメーターとユーザー パラメーターの対応表

Vivado IDE のパラメーター /値 ユーザー パラメーター /値 デフォルト値

[Number of Video Components] NUM_VIDEO_COMPONENTS 3

[Samples per Clock] SAMPLES_PER_CLOCK 2

[Maximum Number of Columns] MAX_COLS 3840

[Maximum Number of Rows] MAX_ROWS 2160

[Maximum Data Width] MAX_DATA_WIDTH 8

[AXIMM Data Width] AXIMM_DATA_WIDTH 128

[AXIMM Address Width] AXIMM_ADDR_WIDTH 32

[Number Read/Write Outstanding] AXIMM_NUM_OUTSTANDING 16

[Transaction Burst Length] AXIMM_BURST_LENGTH 4

[Video Formats with Alpha] HAS_ALPHA 0

RGBX8 HAS_RGBX8 0

BGRX8 HAS_BGRX8 0

YUVX8 HAS_YUVX8 0

YUYV8 HAS_YUYV8 0

UYVY8 HAS_UYVY8 0

RGBA8 HAS_RGBA8 0

BGRA8 HAS_BGRA8 0

YUVA8 HAS_YUVA8 0

RGBX10 HAS_RGBX10 0

YUVX10 HAS_YUVX10 0

Y_UV8 HAS_Y_UV8 0

Y_UV8_420 HAS_Y_UV8_420 1

RGB8 HAS_RGB8 0

YUV8 HAS_YUV8 0

Y_UV10 HAS_Y_UV10 0

Y_UV10_420 HAS_Y_UV10_420 0

Y8 HAS_Y8 0

Page 27: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 27

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

出力の生成

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

コアへの制約

こ こでは、 Vivado Design Suite でコアに制約を指定する方法について説明します。

必須の制約

このセクシ ョ ンは、 この IP コアには適用されません。

デバイス、 パッケージ、 スピード  グレードの選択

このセクシ ョ ンは、 この IP コアには適用されません。

クロック周波数

このセクシ ョ ンは、 この IP コアには適用されません。

クロック管理

このセクシ ョ ンは、 この IP コアには適用されません。

クロック配置

このセクシ ョ ンは、 この IP コアには適用されません。

バンク設定

このセクシ ョ ンは、 この IP コアには適用されません。

ト ランシーバーの配置

このセクシ ョ ンは、 この IP コアには適用されません。

I/O 規格と配置

このセクシ ョ ンは、 この IP コアには適用されません。

Y10 HAS_Y10 0

[Maximum Number of Pixel Planes] MAX_NR_PLANES 1

表 4‐1: Vivado IDE のパラメーターとユーザー パラメーターの対応表 (続き)

Vivado IDE のパラメーター /値 ユーザー パラメーター /値 デフォルト値

Page 28: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 28

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

シ ミ ュレーシ ョ ン

Vivado シ ミ ュレーシ ョ ン コンポーネン トについて、 またサポート されているサードパーティ ツールについては、『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 5] を参照してください。

重要: 7 シ リーズまたは Zynq-7000 デバイスをターゲッ トにしたコアでは、 UNIFAST ライブラ リはサポート されません。 ザイ リ ンクスの IP は UNISIM ラ イブラ リでのみテス ト と認定が行われています。

合成およびインプリ メンテーシ ョ ン

合成およびインプ リ メンテーシ ョ ンの詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 3] を参照してください。

Page 29: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 29

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 5章

サンプル デザインこの章では、 Video Frame Buffer Read コアのみを含むサンプル システムと、 Video Frame Buffer Read コアと Video Frame Buffer Write コアの両方を含むサンプル システムの 2 つを紹介します。 これらのサンプル デザインは、 コアを使用した設計におけるシステム レベルの重要な事項と して、 次の内容を例示します。

• Video Frame Buffer Read および Video Frame Buffer Write コアをほかのコアと組み合わせた場合の代表的な使用例

• 動作中にレジスタをプログラムして Video Frame Buffer Read および Video Frame Buffer Write コアを動的に設定する方法

注記:合成可能なサンプル デザインは、 ザイ リ ンクス KC705 評価ボードでのみ利用できます。

サンプル プロジェク ト を開くには、 次の手順を実行します。

1. Vivado® IP カタログから Video Frame Buffer Read IP または Video Frame Buffer Write IP を選択します。

2. 選択した IP をダブルク リ ッ クするか、 右ク リ ッ ク して表示される メニューで [Customize IP] をク リ ッ ク します。

3. [Customize IP] ダイアログ ボッ クスでビルド時のパラ メーターを設定し、 [OK] をク リ ッ ク します。 こ こで設定したパラ メーターに基づいて、 Vivado IDE でサンプル デザインが生成されます。

4. [Generate Output Products] ダイアログ ボッ クスで [Generate] または [Skip] をク リ ッ ク します。 [Generate] をク リ ック した場合、 IP の出力ファイルが生成されます (生成には少し時間がかかる )。

5. [Sources] ウ ィンド ウで [Video Frame Buffer Read] または [Video Frame Buffer Write] を右ク リ ッ ク して表示される メニューで [Open IP Example Design] をク リ ッ ク します。

6. [Open IP Example Design] ダイアログ ボッ クスでサンプル プロジェク トのディ レク ト リ を選択して [OK] をクリ ッ ク します。 する と、 選択したディ レク ト リにサンプル デザインが自動的に生成されます。

Page 30: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 30

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 5 章:サンプル デザイン

Video Frame Buffer Read サンプル デザイン

Video Frame Buffer Read IP に付属するサンプル デザインには、 Video Frame Buffer Read、 Video Timing Controller、および AXI4-Stream to Video Out の各ビデオ IP コアが含まれます。また、 このデザインにはレジスタ プログラ ミ ング用に AXI Interconnect に接続された MicroBlaze マイクロプロセッサも含まれます。 Memory Interface Generator (MIG) は DDR メモ リ アクセスに使用します。

MicroBlaze プロセッサはシステムの AXI マスターと して動作し、 Video Frame Buffer Read および Video Timing Controller コアを駆動します。 MicroBlaze プロセッサはまず Video Frame Buffer Read コアの高さ、 幅、 およびその他のレジスタを設定し、 次に Video Timing Controller コアのタイ ミ ング パラ メーターを設定します。

デフォルトでは、Video Frame Buffer Read コアは起動後にフ リー ランニング モードにな り ます。そして ap_clk のクロ ッ ク レートでビデオ ス ト リーム ピクセルを生成します。 Video Frame Buffer Read コアはメモ リ マップド AXI4 メモ リ インターフェイスからフレームを読み出し、 データを AXI4-Stream マスター インターフェイスへ出力します。

AXI4-Stream to Video Out コアは Video Timing Controller と連携し、AXI4-Stream インターフェイスに接続してビデオ ソース (ビデオ同期およびブランクを含むパラレル ビデオ データ ) に対するタイムド ビデオ プロ ト コルを実装します。

このサンプル デザインは、 AXI4-Stream to Video Out コアからの LOCKED 出力をチェッ ク します。 LOCKED ポートは、 出力タイ ミ ングが出力ビデオにロ ッ ク したこ とを示します。 このサンプル デザインでビデオ ロ ッ クが正し く検出された場合、 テス トが正常に完了しています。 AXI4-Stream to Video Out の LOCKED ポートは AXI GPIO コアに接続され、 MicroBlaze が対応するレジスタをポーリ ングしてテス トが正し く完了したかど うかを判定します。

X-Ref Target - Figure 5-1

図 5‐1: Video Frame Buffer Read サンプル デザイン

Page 31: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 31

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 5 章:サンプル デザイン

Frame Buffer Write サンプル デザイン

Video Frame Buffer Write コアには別のサンプル デザインが付属します。Video Frame Buffer Write に付属するサンプル デザインには、Video Frame Buffer Read に付属するサンプル デザインに加え、Video Frame Buffer Write コアと Video In to AXI4-Stream コアも含まれます。 このサンプル デザインは Video In to AXI4-Stream コアの OVERFLOW ポート をチェッ ク し、 Video Frame Buffer Write コアがリ アルタイムに処理できず欠落しているデータがないかを確認します。Video Input to AXI4-Stream コアの OVERFLOW ポートは AXI GPIO に接続され、 MicroBlaze で監視します。

サンプル デザインの実行

合成可能なサンプル デザインには、 Vivado とザイ リ ンクス SDK の両方のツールが必要です。 サンプル デザインを実行するには、 次の手順を実行します。

1. Vivado で合成、 インプリ メンテーシ ョ ンおよびビッ ト ス ト リーム生成を実行します。

2. 手順 1 が完了したら、 [File] → [Export] → [Export Hardware] をク リ ッ ク します。 ダイアログ ボッ クスで [Include bitstream] をオンにし、 エクスポート先ディ レク ト リ を選択して [OK] をク リ ッ ク します。

これ以降の作業はザイ リ ンクス SDK ツールで実行します。 サンプル デザインのファイルは次の SDK ディ レク ト リにあ り ます。

(/data/embeddedsw/XilinxProcessorIPLib/drivers/v_frmbuf_rd_v2_0/examples/ (/data/embeddedsw/XilinxProcessorIPLib/drivers/v_frmbuf_wr_v2_0/examples/

examples フォルダーにあるサンプル アプリ ケーシ ョ ンのデザイン ソース ファ イルは、 Vivado カタログにあるサンプル デザインと密に関連します。

付属のサンプル HDF ファ イルからダウンロード可能な BIT および ELF ファ イルを生成するプロセスは、v_frmbuf_rd_example.tcl および v_frmbuf_wr_example.tcl ファ イルによって自動化されます。

付属の Tcl スク リプ ト を実行する手順は次のとおりです。

1. エクスポート したサンプル デザインの hdf ファ イルをド ライバーの examples ディ レク ト リにコピーします。

2. ザイ リ ンクス ソフ ト ウェア コマンド ライン ツール (xsct) ターミナルを起動します。

3. examples ディ レク ト リへ移動します。

X-Ref Target - Figure 5-2

図 5‐2: Frame Buffer Write サンプル デザイン

Page 32: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 32

PG278 2017 年 10 月 4 日 japan.xilinx.com

第 5 章:サンプル デザイン

4. xsct で tcl ファイルを実行します。

%>source vfrmbuf_xx_example.tcl

「xx」 には Video Frame Buffer Read の場合は 「rd」、 Video Frame Buffer Write の場合は 「wr」 が入り ます。

5. 次のスク リプ ト を実行します。

xsct%>vfrmbuf_xx_example <hdf_file_name.hdf>

この Tcl スク リプ トは、 次の動作を実行します。

• ワークスペースの作成

• ハードウェア プロジェク トの作成

• ボード サポート パッケージの作成

• アプリ ケーシ ョ ン プロジェク トの作成

• BSP およびアプリ ケーシ ョ ン プロジェク トのビルド

これらの処理が完了する と、 必要なファイルが次の場所に生成されます。

bit file -> vfrmbuf_xx_example.sdk/vfrmbuf_xx_example_hw_platform folder elf file -> vfrmbuf_xx_example.sdk/vfrmbuf_xx_example_design/{Debug/Release} folder

次に、 ソフ ト ウェア アプリ ケーシ ョ ンを実行します。 手順は次のとおりです。

重要: ソフ ト ウェア アプリ ケーシ ョ ンを実行する前に、 ハード ウェアに電源が投入されているこ と、 および Digilent 社製ケーブルまたは USB プラ ッ ト フォーム ケーブルがホス ト PC に接続されているこ とを確認してください。 また、KC705 ボードの UART ポートに USB ケーブルが接続されているこ と も確認してください。

1. SDK を起動します。

2. ワークスペースを設定するダイアログ ボッ クスで vfrmbuf_xx_example.sdk フォルダーを選択します。SDK プロジェク トが自動的に開きます (ウェルカム ページが表示された場合は閉じてください)。

3. [Xilinx Tools] → [Program FPGA] をク リ ッ ク して、 ビッ ト ス ト リームを FPGA にダウンロード します。 [Program FPGA] ダイアログ ボッ クスが開きます。

4. [Bitstream] に Tcl スク リプ トで生成されたビッ ト ス ト リーム ファ イルが表示されているこ とを確認し、[Program] をク リ ッ ク します。

注記: プログラ ミ ングが正し く完了する と、 ボードの DONE LED が緑に変わり ます。

5. UART 通信にはハイパーターミナルや PuTTY などのターミナル プログラムが必要です。 プログラムを起動し、適切なポート を選択し、 ボー レート を 115200 に設定してシ リ アル ポート接続を確立します。

6. [Project_Explorer] パネルでアプリ ケーシ ョ ン vfrmbuf_xx_example_design を選択して右ク リ ッ ク します。

7. [Run As] → [Launch on Hardware (GDB)] をク リ ッ ク します。

8. [Binaries and Qualifier] をク リ ッ ク し、 [OK] をク リ ッ ク します。

サンプル デザインのテス ト結果がターミナル プログラムに表示されます。

詳細は、 japan.xilinx.com/tools/sdk.htm を参照して ください。

ボード上で実行した場合の内容は、 examples フォルダーの readme.txt に記載されています。 テス ト したビデオ入力は 4Kp60、 4Kp30、 1080p および 720p です。

Page 34: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 34

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 A

検証、 順応性、 相互運用性この付録では、 この IP コアが設計どおりプロ ト コル仕様に適合しているこ とをどのよ うな方法で検証したかについて記載します。

シミ ュレーシ ョ ン

Video Frame Buffer Read および Video Frame Buffer Write コアは、Vivado® HLS (高位合成) で非常に柔軟なパラ メーター指定が可能なテス トベンチを用いてテス ト されています。 実施したテス トには次が含まれます。

• レジスタ アクセス

• 複数のデータ フレームの処理

• IP スループッ トおよびピクセル データ幅の変更

• AXI4-Stream およびメモ リ マップド AXI4 インターフェイスを使用した Video Frame Buffer Read および Video Frame Buffer Write コアのテス ト

• 各種フレーム サイズのテス ト

• パラ メーター設定の変更

ハードウェア テスト

Video Frame Buffer Read および Video Frame Buffer Write コアは、 さまざまなパラ メーターを設定してザイ リ ンクスで検証しています。 このコア用に開発したテス ト デザインには、 MicroBlaze™ プロセッサ、 AXI4-Lite インターコネクト、 およびその他の各種ペリ フェラルが搭載されています。 MicroBlaze プロセッサは次の機能を実行します。

• テス ト したビデオ解像度に応じたビデオ ク ロ ッ クのプログラ ミ ング

• 解像度の異なる複数のビデオ IP コアのコンフ ィギュレーシ ョ ン

• テス トの開始

• テス トの合否ステータスおよび検出されたエラーの報告

相互運用性

このコアのスレーブ (入力) およびマスター (出力) AXI4-Stream インターフェイスは、 RGB、 YUV 4:4:4、 YUV 4:2:2、または YUV 4:2:0 ビデオ データを生成する任意のコアと直接接続できます。

Page 35: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 35

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 B

移行およびアップグレードこの付録では、 最新版 IP コアへのアップグレードについて説明します。

Vivado Design Suite でのアップグレード

このセクシ ョ ンでは、 コア バージ ョ ン間でのユーザー ロジッ クまたはポートの変更点について説明します。

v1.0 から  v2.0 への変更点

パラメーターの変更点

新規パラ メーター : HAS_ALPHA、 HAS_RGBA8、 HAS_BGRA8、 HAS_YUVA8。 Video Frame Buffer Read IP は、 ピクセルごとのアルファ情報を新たにサポート しています。 メモ リ フォーマッ ト RGBA8、 BGRA8、 および YUVA8 で利用できるス ト リーミ ング ビデオ フォーマッ トに、アルファ付き RGB とアルファ付き YUV 4:4:4 の 2 つが追加されました。

新規パラ メーター : HAS_BGRX8、 HAS_UYVY8。 Video Frame Buffer Read IP と Video Frame Buffer Write IP の両方に、新しいメモ リ ビデオ フォーマッ ト と して BGRX8 と UYVY8 が追加されました。

新規パラ メーター : AXIMM_ADDR_WIDTH。 メモ リ インターフェイスで 32 ビッ トおよび 64 ビッ ト アドレス指定がサポート されるよ うになり ました。

ポートの変更点

ポートの変更点はあ り ません。

その他の変更点

セミプレーナ フォーマッ トには 2 つのバッファーが用意されます。 IP v1.0 では、 クロマ (色差) バッファーのアドレスはフレーム サイズとス ト ラ イ ドに基づいて自動的に設定されていました。 IP v2.0 では、 クロマ バッファー アドレスをレジスタで指定する必要があ り ます。

Page 36: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 36

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 C

アプリケーシ ョ ン  ソフ トウェア開発SDK をインス トールする と、Video Frame Buffer Read および Video Frame Buffer Write コアのベアメ タル ド ラ イバーもインス トールされます。 このド ライバーは階層型アーキテクチャを採用しており、 レイヤー 1 は基本的なレジスタ peek/poke 機能を提供します。 このレイヤーを利用するには、 ユーザーにはレジスタ マップおよびコアの内部動作に関する知識が求められます。 これに対し、 レイヤー 2 はロー レベルの詳細を抽象化しており、 Video Frame Buffer Read/Video Frame Buffer Write コアの機能を使いやすいインターフェイスで利用できます。 コアとの通信には、 常にレイヤー 2 API を使用するこ とを推奨します。

ボード  サポート  パッケージのビルド

ボード サポート パッケージをビルドする と、Video Frame Buffer Read および Video Frame Buffer Write ド ラ イバーは必要な依存ファイル、 すなわちビデオ共通ド ライバーを取り込みます。 このド ライバーには、 色フォーマッ ト、 色深度、 フレーム レート などビデオに関する情報のエニュ メ レーシ ョ ンが含まれます。 また、 Video Frame Buffer Read および Video Frame Buffer Write ド ラ イバーで使用されるビデオ ス ト リームおよびタイ ミ ングを表現する基本的なデータ タイプも定義します。 これはすべてのザイ リ ンクス ビデオ ド ラ イバーで共通です。

ビルド実行中、 Video Frame Buffer Read および Video Frame Buffer Write ド ラ イバーは提供されたハード ウェア デザイン ファ イルから Video Frame Buffer Read および Video Frame Buffer Write コアのハード ウェア コンフ ィギュレーシ ョン設定を抽出します。

前提条件

コアをプログラムする際には、 いくつかの要件を満たしておく必要があ り ます。

• このコアにはデータ再アライ メン ト エンジンは含まれません。 したがって、 レジスタに書き込む前にアプリケーシ ョ ン ソフ ト ウェアでメモ リ アドレスの境界を揃える必要があ り ます。 アライ メン トの要件は次のとおりです。 これによ り、 開始アドレスがメモ リ インターフェイスの幅に揃います。

開始アドレスのアライメン ト要件: (8 * クロックあたりのピクセル数) バイ ト

• ス ト ラ イ ド値 (バイ ト ) は上記のよ うにアライ メン ト し、 すべてのピクセル行の開始アドレスがメモ リ境界に揃う よ うにする必要があ り ます。 幅 (ピクセル) からス ト ラ イ ドを求めるには、 次の式を使用します。

スト ライ ド (バイ ト ) (幅 × 1 ピクセルあたりのバイ ト数); 式 C‐1

1 ピクセルあたりのバイ ト数はメモ リ ビデオ フォーマッ トによ り異な り ます。 詳細は、 第 2 章の 「メモ リ マップド AXI4 インターフェイス」 を参照してください。

注記:すべてのピクセル行の開始アドレスがメモ リ マップド インターフェイスのデータ サイズに揃う よ うにするために、 パディング バイ トが必要になるこ とがあ り ます (式に が用いられているのはそのため)。

• 幅は、 このコアの Vivado IDE で選択した [Pixels per Clock] の倍数とする必要があ り ます。

Page 37: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 37

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 C: アプリケーシ ョ ン ソフ トウェア開発

動作モード

Video Frame Buffer Read および Video Frame Buffer Write コアは 2 つの動作モードをサポート しています。

• 同期モード

割り込みが ト リガーされる と、 コアの割り込みサービス ルーチン (ISR) は現在のフレーム処理が完了しているかど うかを確認した後、 ユーザー プログラマブルな任意のコールバッ ク関数を追加で呼び出します。 このコールバッ ク関数で、 次のフレームに対するレジスタ設定 (次にどのバッファー アドレスを読み出すか) をプログラムします。

たとえば、 フレームの処理が完了する と Video Frame Buffer Write IP は ap_done で割り込みを ト リガーします。この時点でコールバッ ク関数が実行され、 新しいバッファー アドレスがプログラムされます。 コールバッ ク関数を実行後、 コアは動作を再開し、 次のフレームが処理されます。

• 非同期モード

非同期モードでは、 次のフレームに対するレジスタ設定は割り込みを待たずにプログラムされます。

たとえば Video Frame Buffer Write IP がフレーム処理を完了する と割り込みを発行します。 この時点で、 フレーム処理中の Video Frame Buffer Read IP にバッファー アドレスが渡されます。 Video Frame Buffer Read IP のバッファー アドレスは非同期にプログラムされます。Video Frame Buffer Read IP が現在のフレームの処理を完了すると、新し くプログラムされたバッファー アドレスが有効になり、 Video Frame Buffer Read IP によって次のフレームが処理されます。

使用法

Video Frame Buffer Read/Video Frame Buffer Write コアのド ライバーをアプリ ケーシ ョ ンに統合して使用するには、 次の手順を実行します。

注記: こ こでは、 Video Frame Buffer Read コアを例に説明します。

1. フレーム バッファー インスタンス オブジェク ト定義を含むド ライバー ヘッダー ファ イル xv_frmbufrd_l2.h をインクルード します。

2. Video Frame Buffer Read または Video Frame Buffer Write コアのインスタンスを宣言します。

XV_FrmbufRd_l2 FrmbufRd;

3. 電源投入時にフレーム バッファー インスタンスを初期化します。

int XVFrmbufRd_Initialize(XV_FrmbufRd_l2 *InstancePtr, u16 DeviceId);

この関数はハードウェア コンフ ィギュレーシ ョ ンにアクセスし、 コアを電源投入時のデフォルト状態に初期化します。

4. アプリ ケーシ ョ ンは ISR をシステム割り込みコン ト ローラーに登録し、 アプリ ケーシ ョ ン コールバッ ク関数を設定する必要があ り ます。 この関数は、 フレーム完了 IRQ がト リガーされる と Video Frame Buffer Read または Video Frame Buffer Write ド ラ イバーによって呼び出されます。

° コア ISR ルーチン XVFrmbufRd_InterruptHandler または XVFrmbufWr_InterruptHandler をシステム割り込みコン ト ローラーに登録します。

° 割り込みコンテキス ト内で呼び出されるアプリ ケーシ ョ ン コールバッ ク関数を登録します。 これは API XVFrmbufRd_SetCallback または XVFrmbufWr_SetCallback を使用して実行できます。

5. 必要に応じて、 アプ リ ケーシ ョ ン レベルのコールバッ ク関数を作成します。 こ こで実行するアクシ ョ ンと しては、 たとえば次のフレーム データを読み出すバッファー アドレスの更新などの動作があ り ます。 これによ り、アプ リ ケーシ ョ ンはメモ リ内のフレーム更新を画面上にレンダ リ ングできるよ うになり ます。

Page 38: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 38

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 C: アプリケーシ ョ ン ソフ トウェア開発

6. コアをコンフ ィギュレーシ ョ ンするための関数を作成します。 こ こでは、 たとえば次のよ うなイベン ト シーケンスを実行します。

a. ビデオ属性を設定する。

void XVFrmbufRd_SetMemFormat(XV_FrmbufRd_l2 *InstancePtr,u32 StrideInBytes,XVidC_ColorFormat MemFmtconst XVidC_VideoStream *StrmIn);

b. フレーム バッファーのベース アドレスを設定する。

int XVFrmbufRd_SetBufferAddr(XV_FrmbufRd_l2 *InstancePtr,UINTPTR Addr);

セミプレーナ フォーマッ トの場合、 プレーン 2 のバッファー ベース アドレスを設定する。

int XVFrmbufRd_SetChromaBufferAddr(XV_FrmbufRd_l2 *InstancePtr, UINTPTR Addr);

c. 割り込みを有効にする。

void XVFrmbufRd_InterruptEnable(XV_FrmbufRd_l2 *InstancePtr);

d. コアの動作を開始する。

void XVFrmbufRd_Start(XV_FrmbufRd_l2 *InstancePtr);

また、 Video Frame Buffer Read コアのデバッグ用に、 コアのステート を取得するデバッグ API も利用できます。

void XVFrmbufRd_DbgReportStatus(XV_FrmbufRd_l2 *InstancePtr);

注記:

a. 動作中は解像度を変更できません。 マスター入力ス ト リームまたは出力ス ト リームの解像度を動作中に変更する場合は、 アプ リ ケーシ ョ ンで ap_rst_n を ト グルしてVideo Frame Buffer Read および Video Frame Buffer Write IP を リセッ ト し、 新しい解像度を リ コンフ ィギュレーシ ョ ンする必要があ り ます。 リセッ ト後、 すべてのレジスタは 0 にク リ アされます。

b. Video Frame Buffer Read および Video Frame Buffer Write コアをコンフ ィギュレーシ ョ ンする際、 ド ライバーはフレーム サイズ、 ス ト ラ イ ド、 およびメモ リ ビデオ フォーマッ トが有効であるこ とを確認します。 これら設定のいずれかが有効でない場合、 アクシ ョ ンは適用されず、 API はエラー コードを返します。 アプリケーシ ョ ン コードですべての API から返されたステータスをチェッ ク し、 必要なアクシ ョ ンが正し く完了していない場合は是正アクシ ョ ンを実行します。

Page 39: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 39

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 D

デバッグこの付録では、 ザイ リ ンクス サポート ウェブサイ ト よ り入手可能な リ ソースおよびデバッグ ツールについて説明します。

ザイリンクス ウェブサイ ト

Video Frame Buffer Read および Video Frame Buffer Write を使用した設計およびデバッグでヘルプが必要な場合は、 ザイ リ ンクス サポート ウェブ ページから製品の資料、 リ リース ノート、 アンサーなどを参照するか、 テクニカル サポートでサービス リ クエス ト を作成してください。

資料

この製品ガイ ドは Video Frame Buffer Read および Video Frame Buffer Write に関する主要資料です。 このガイ ド、並びに設計プロセスで使用する各製品の関連資料はすべて、 ザイ リ ンクス サポート ウェブ ページ (https://japan.xilinx.com/support) または Xilinx Documentation Navigator から入手できます。

Xilinx Documentation Navigator は、 ダウンロード ページからダウンロードできます。 このツールの詳細および機能は、 インス トール後にオンライン ヘルプを参照してください。

アンサー 

アンサーには、 よ く発生する問題についてその解決方法、 およびザイ リ ンクス製品に関する既知の問題などの情報が記載されています。 アンサーは、 ユーザーが該当製品の最新情報にアクセスできるよ う作成および管理されています。

このコアに関するアンサーの検索には、 ザイ リ ンクス サポート ウェブ ページにある検索ボッ クスを使用します。よ り的確な検索結果を得るには、 次のよ うなキーワードを使用してください。

• 製品名

• ツールで表示される メ ッセージ

• 問題の概要

検索結果は、 フ ィルター機能を使用してさ らに絞り込むこ とができます。

Video Frame Buffer Read に関するマスター アンサー :

AR: 68764

Video Frame Buffer Write に関するマスター アンサー :

AR: 68765

Page 40: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 40

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 D:デバッグ

テクニカル サポート

ザイ リ ンクスは、 製品資料の説明に従って使用されている LogiCORE™ IP 製品に対するテクニカル サポート を japan.xilinx.com/support で提供しています。 ただし、 次のいずれかに該当する場合、 タイ ミ ング、 機能、 サポートは保証されません。

• 資料で定義されていないデバイスにソ リ ューシ ョ ンをインプリ メン ト した場合。

• 資料で定義されている許容範囲を超えてカスタマイズした場合。

• 「DO NOT MODIFY」 と されているデザイン セクシ ョ ンに変更を加えた場合。

ザイ リ ンクス テクニカル サポートへのお問い合わせは、 ザイ リ ンクス サポート ウェブ ページを参照してください。

デバッグ ツール

Video Frame Buffer Read および Video Frame Buffer Write デザインの問題を解決するには、 数多くのツールを利用できます。 さまざまな状況をデバッグするのに有益なツールを理解しておく こ とが重要です。

Vivado Design Suite のデバッグ機能

Vivado® Design Suite のデバッグ機能は、Logic Analyzer および Virtual I/O コアをユーザー デザインに直接挿入します。デバッグ機能を使用する と、 ト リガー条件を設定して、 アプリ ケーシ ョ ンおよび統合ブロッ クのポート信号をハード ウェアに取り込むこ とができます。 取り込まれた信号は、 その後解析できます。 Vivado IDE のこの機能は、 ザイリ ンクス デバイスで実行されるデザインの論理デバッグおよび検証に使用されます。

Vivado ロジッ ク解析は次の IP ロジッ ク デバッグ コアと共に使用されます。

• ILA 2.0 (およびそれ以降のバージ ョ ン)

詳細は、 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 7] を参照してください。

Page 41: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 41

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 D:デバッグ

ハードウェア デバッグ

ハードウェアの問題は、 リ ンク立ち上げ時の問題から、 テス ト後に生じる問題までさまざまです。 こ こでは、 一般的な問題のデバッグ手順を説明します。 Vivado のデバッグ機能は、 ハード ウェア デバッグに有益な リ ソースです。次の各セクシ ョ ンに示す信号を Vivado のデバッグ機能でプローブするこ とで、 個々の問題をデバッグできます。

一般的なチェ ック

コアに対するタイ ミ ング制約がサンプル デザインからすべて適切に取り込まれているこ と、 さ らにインプリ メンテーシ ョ ン時にこれらの制約がすべて満たされているこ とを確認します。

• 配置配線後のタイ ミ ング シ ミ ュレーシ ョ ンで正し く動作しているかを確認します。 タイ ミ ング シ ミ ュレーシ ョンでは発生しない問題がハードウェアで発生する場合、 PCB の問題である可能性があ り ます。 すべてのクロ ック ソースがアクティブでク リーンであるこ とを確認してください。

• デザインで MMCM を使用している場合、 locked ポート をモニターして、 すべての MMCM がロ ッ ク しているこ とを確認します。

• Video Frame Buffer Read コアから出力されるス ト リーミ ング データの色が適切でない場合、 メモ リ ビデオ フォーマッ ト レジスタをチェッ ク して、 メモ リで使用しているビデオ フォーマッ トがレジスタに正し くプログラムされているかど うかを確認してください。 また、 各メモ リ ビデオ フォーマッ トには対応するス ト リーミ ング ビデオ フォーマッ トがあ り ます。 たとえば、メモ リ フォーマッ ト RGB8 は RGB ス ト リーミ ング データを出力します。 システムで使用するス ト リーミ ング ビデオ フォーマッ トが正し く設定されているこ とを確認して ください。

• Video Frame Buffer Write コアによってメモ リに書き込まれたデータのフォーマッ トが適切でない場合は、 メモ リ ビデオ フォーマッ ト レジスタをチェッ ク して、 メモ リで使用しているビデオ フォーマッ トがレジスタに正し くプログラムされているかど うかを確認してください。

Page 42: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 42

PG278 2017 年 10 月 4 日 japan.xilinx.com

付録 E

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

ザイリンクス リソース

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

Documentation Navigator およびデザイン  ハブ

Xilinx Documentation Navigator (DocNav) を使用する とザイ リ ンクスの資料、 ビデオ、 およびサポート リ ソースにアクセスして情報をフ ィルター、 検索できます。 Xilinx Documentation Navigator を開くには、 次のいずれかを実行します。

• Vivado IDE で [Help] → [Documentation and Tutorials] をク リ ッ ク します。

• Windows で [スタート ] → [すべてのプログラム] → [Xilinx Design Tools] → [DocNav] をク リ ッ ク します。

• Linux コマンド プロンプ トに 「docnav」 と入力します。

ザイ リ ンクス デザイン ハブには、 資料やビデオへのリ ンクがデザイン タスクおよびト ピッ クごとにま とめられており、 これらを参照するこ とでキー コンセプ ト を学び、 よ く ある質問を解決できます。 デザイン ハブにアクセスするには、 次のいずれかを実行します。

• Xilinx Documentation Navigator で [Design Hubs View] タブをク リ ッ ク します。

• ザイ リ ンクス ウェブサイ トのデザイン ハブ ページを参照します。

注記: Documentation Navigator の詳細は、 ザイ リ ンクス ウェブサイ トの Documentation Navigator ページを参照してください。

注意: Xilinx Documentation Navigator からは、 日本語版は参照できません。 ウェブサイ トのデザイン ハブ ページの一部は翻訳されており、 日本語版が提供されている場合はそのリ ンク も追加されています。

Page 43: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 43

PG278 2017 年 10 月 4 日 japan.xilinx.com

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

参考資料

次の資料は、 この製品ガイ ドの補足資料と して役立ちます。 日本語版のバージ ョ ンは、 英語版よ り古い場合があ り ます。

注記:日本語版のバージ ョ ンは、 英語版よ り古い場合があ り ます。

1. 『Vivado Design Suite: AXI リ ファレンス ガイ ド』 (UG1037: 英語版、 日本語版)

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

3. 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896: 英語版、 日本語版)

4. 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910: 英語版、 日本語版)

5. 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900: 英語版、 日本語版)

6. 『ISE から Vivado Design Suite への移行ガイ ド』 (UG911: 英語版、 日本語版)

7. 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908: 英語版、 日本語版)

8. 『Vivado Design Suite ユーザー ガイ ド : インプ リ メンテーシ ョ ン』 (UG904: 英語版、 日本語版)

改訂履歴

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

日付 バージョ ン 内容

2017 年 10 月 4 日 2.0 新しいビデオ フォーマッ ト を追加。セ ミプレーナ フォーマッ ト用に 2 つ目のバッファーを追加。 メモ リ インターフェイスで 64 ビッ ト アドレス指定のサポート を追加。

2017 年 4 月 5 日 1.0 初版

Page 44: Video Frame Buffer ead v2.0 および Video Fr me Buffer Write ... · Video Frame Buffer Read/Write v2.0 8 PG278 2017 年 10 月 4 日 japan.xilinx.com 第 2 章:製品仕様 ポートの説明

Video Frame Buffer Read/Write v2.0 44

PG278 2017 年 10 月 4 日 japan.xilinx.com

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

お読みください: 重要な法的通知本通知に基づいて貴殿または貴社 (本通知の被通知者が個人の場合には 「貴殿」、 法人その他の団体の場合には 「貴社」。 以下同じ ) に開示される情報 (以下 「本情報」 といいます) は、 ザイ リ ンクスの製品を選択および使用するこ とのためにのみ提供されます。 適

用される法律が許容する最大限の範囲で、 (1) 本情報は 「現状有姿」、 およびすべて受領者の責任で (with all faults) とい う状態で提供

され、 ザイ リ ンクスは、 本通知をもって、 明示、 黙示、 法定を問わず (商品性、 非侵害、 特定目的適合性の保証を含みますがこれ

らに限られません)、 すべての保証および条件を負わない (否認する ) ものと します。 また、 (2) ザイ リ ンクスは、 本情報 (貴殿または

貴社による本情報の使用を含む) に関係し、 起因し、 関連する、 いかなる種類 ・ 性質の損失または損害についても、 責任を負わな

い (契約上、 不法行為上 (過失の場合を含む)、 その他のいかなる責任の法理によるかを問わない) ものと し、 当該損失または損害に

は、 直接、 間接、 特別、 付随的、 結果的な損失または損害 (第三者が起こした行為の結果被った、 データ、 利益、 業務上の信用の

損失、 その他あらゆる種類の損失や損害を含みます) が含まれるものと し、 それは、 たとえ当該損害や損失が合理的に予見可能で

あったり、 ザイ リ ンクスがそれらの可能性について助言を受けていた場合であったと しても同様です。 ザイ リ ンクスは、 本情報に

含まれるいかなる誤り も訂正する義務を負わず、 本情報または製品仕様のアップデート を貴殿または貴社に知らせる義務も負いま

せん。 事前の書面による同意のない限り、 貴殿または貴社は本情報を再生産、 変更、 頒布、 または公に展示してはなり ません。 一

定の製品は、 ザイ リ ンクスの限定的保証の諸条件に従う こ と となるので、 https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンク

スの販売条件を参照してください。 IP コアは、 ザイ リ ンクスが貴殿または貴社に付与したライセンスに含まれる保証と補助的条件

に従う こ とにな り ます。 ザイ リ ンクスの製品は、 フェイルセーフと して、 または、 フェイルセーフの動作を要求するアプリ ケー

シ ョ ンに使用するために、 設計されたり意図されたり していません。 そのよ うな重大なアプリ ケーシ ョ ンにザイ リ ンクスの製品を

使用する場合のリ スク と責任は、 貴殿または貴社が単独で負う ものです。 https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンク

スの販売条件を参照してください。

自動車用のアプリケーシ ョ ンの免責条項

オートモーティブ製品 (製品番号に 「XA」 が含まれる ) は、 ISO 26262 自動車用機能安全規格に従った安全コンセプ ト または余剰性

の機能 ( 「セーフティ設計」 ) がない限り、 エアバッグの展開における使用または車両の制御に影響するアプリ ケーシ ョ ン ( 「セー

フティ アプリ ケーシ ョ ン」 ) における使用は保証されていません。 顧客は、 製品を組み込むすべてのシステムについて、 その使用

前または提供前に安全を目的と して十分なテス ト を行う ものと します。 セーフティ設計なしにセーフティ アプリ ケーシ ョ ンで製品

を使用する リ スクはすべて顧客が負い、 製品の責任の制限を規定する適用法令および規則にのみ従う ものと します。

© Copyright 2017 Xilinx, Inc. Xilinx、 Xilinx のロゴ、 Artix、 ISE、 Kintex、 Spartan、 Virtex、 Vivado、 Zynq、 およびこの文書に含まれる

その他の指定されたブランドは、 米国およびその他各国のザイ リ ンクス社の商標です。 すべてのその他の商標は、 それぞれの保有

者に帰属します。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] まで、 または各ページの

右下にある [フ ィードバッ ク送信] ボタンをク リ ッ クする と表示されるフォームからお知らせください。 フ ィードバッ クは日本語で

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

け付けており ません。 あらかじめご了承ください。