Main Content

AXI4-Stream Video インターフェイス生成向けのモデル設計

高速ビデオ ストリーミングを必要とする設計では、AXI4-Stream Video インターフェイスを使用します。アルゴリズムの動作に基づいて、次の 2 つのスタイルのモデル化から選択します。

  • サンプルベースのモデル化 — アルゴリズムがサンプルのストリームで動作する場合は、これらのガイドラインを使用します。

  • フレームベースのモデル化 — アルゴリズムがデータの完全なフレームで動作する場合は、これらのガイドラインを使用します。テスト対象設計 (DUT) の境界での Data 信号は、行列でなければなりません。ストリーミング ピクセル プロトコルをモデル化する場合は、このモードを使用しないでください。

HDL Coder™ ソフトウェアでは、簡易ストリーミング ピクセル プロトコルをモデルに実装できます。このソフトウェアでは AXI4-Stream Video インターフェイスをもつ HDL IP コアが生成されます。

サンプル ベースのモデル化

HDL Coder ソフトウェアでは、簡易ストリーミング ピクセル プロトコルをモデルに実装できます。このソフトウェアでは AXI4-Stream Video インターフェイスをもつ HDL IP コアが生成されます。AXI4-Stream Video インターフェイス マッピングにストリーミング ピクセル プロトコルを使用できます。ビデオ アルゴリズムはデータを逐次処理して、ビデオ データをピクセル データおよび制御信号のシリアル ストリームとして生成します。ストリーミング ピクセル プロトコルの詳細については、Streaming Pixel Interface (Vision HDL Toolbox)を参照してください。

AXI4-Stream Video インターフェイスをもつ IP コアを生成するには、次の信号を DUT インターフェイスに実装します。

  • ピクセル データ

  • ピクセル制御バス

ピクセル制御バスは、次の信号をもつバスです。

  • hStart

  • hEnd

  • vStart

  • vEnd

  • valid

信号 hStart および hEnd は、アクティブな線の先頭とアクティブな線の終端をそれぞれ表します。信号 vStart および vEnd は、フレームの開始とフレームの終了を表します。

バックプレッシャー信号 Ready をオプションでモデル化し、それを AXI4-Stream Video インターフェイスにマッピングできます。

プロトコル信号およびタイミング図

次の図は、2 行 3 列のピクセル イメージです。アクティブなイメージ領域は、破線と非アクティブなピクセルで囲まれた四角形です。ピクセルには、グレースケール値のラベルが付けられます。

ピクセル データおよびピクセル制御バス

次の図は、DUT インターフェイスでモデル化するピクセル データおよびピクセル制御バス信号のタイミング図を示します。

ピクセル データ信号は、AXI4-Stream Video インターフェイスで転送されるプライマリ ビデオ信号です。ピクセル データ信号が有効である場合、Valid 信号がアサートされます。

hStart 信号は、アクティブな線の先頭で高くなります。hEnd 信号は、アクティブな線の終端で高くなります。

vStart 信号は、2 番目の線のアクティブなフレームの開始時点で高くなります。vEnd 信号は、3 番目の線のアクティブなフレームの終了時点で高くなります。

オプションの Ready 信号

次の図は、DUT インターフェイスでモデル化するピクセル データピクセル制御バスおよび Ready 信号のタイミング図を示します。

DUT ポートを AXI4-Stream Video インターフェイスにマッピングする場合、バックプレッシャー信号 Ready をオプションでモデル化して、それを AXI4-Stream Video インターフェイスにマッピングします。

スレーブ インターフェイスでは、Ready 信号を使用してバック プレッシャーを適用できます。マスター インターフェイスでは、Ready 信号を使用してバック プレッシャーに応答できます。

AXI4-Stream Video インターフェイスで Ready 信号をモデル化する場合、マスター インターフェイスは、Ready 信号のデアサートの 1 サイクル後に Valid 信号をデアサートしなければなりません。

Ready 信号をモデル化しない場合、HDL Coder は関連付けられているバックプレッシャー ロジックを生成します。

データおよび制御バス信号のモデル化

DUT ポートのピクセル データおよびピクセル制御バス信号を使用してビデオ アルゴリズムをモデル化して、信号を AXI4-Stream Video インターフェイスにマッピングできます。バックプレッシャー信号 Ready をオプションでモデル化し、それを AXI4-Stream Video インターフェイスにマッピングできます。

次の図は、Video Source 入力をもつ最上位の Simulink® モデルの例を示しています。

Frame To Pixels および Pixels To Frame ブロックは、ビデオ フレームとピクセル データおよびピクセル制御バスの間の変換を DUT インターフェイス レベルで実行します。これらのブロックを使用するには、Vision HDL Toolbox™ がインストールされていなければなりません。

Frame To Pixels (Vision HDL Toolbox) および Pixels To Frame (Vision HDL Toolbox) も参照してください。

ピクセル データおよびピクセル制御バスのモデル化

次の図は、ピクセル データおよびピクセル制御バス信号を [DUT] サブシステム内部でモデル化する方法を示しています。

Valid 信号をピクセル制御バスから Enable ポートに直接接続できます。Vision HDL Toolbox ソフトウェアがない場合、Pixel Control Bus Selector および Pixel Control Bus Creator ブロックをそれぞれ Bus Selector および Bus Creator ブロックに置き換えます。

Ready 信号のモデル化

DUT の AXI4-Stream Video インターフェイスには、オプションで Ready 信号を含めることができます。

たとえば、DUT に FIFO を用意して、信号を処理する前にビデオ データを格納できます。HDL FIFO ブロックを含む FIFO Subsystem を使用して、ピクセル データおよびピクセル制御バス信号を格納します。バックプレッシャーをアップストリーム コンポーネントに適用するには、FIFO の完全な信号に基づいて Ready 信号をモデル化します。

次の図は、Ready 信号を [DUT] サブシステム内部でモデル化する方法を示しています。

FIFO Subsystem ブロックは、ピクセル データおよびピクセル制御バス信号に HDL FIFO ブロックを使用します。

Ready 信号のパスについて遅延の均衡化を無効にします。遅延の均衡化を有効にする場合、Ready 信号に 1 つ以上の遅延を挿入できます。

複数チャネルへの DUP 端子のマッピング

IP Core Generationワークフローを実行する場合、複数の DUT 端子を AXI4-Stream Video マスター チャネルおよび AXI4-Stream Video スレーブ チャネルにマッピングできます。複数のインターフェイス チャネルにマッピングされた DUT 端子はスカラー データ型を使用しなければなりません。ベクトル端子を使用する場合、この端子は、最大 1 つの AXI4-Stream Video マスター チャネルと 1 つの AXI4-Stream Video スレーブ チャネルにマッピングできます。

詳細については、複数の AXI4-Stream および AXI4 Master インターフェイスを使用した HDL IP コアの生成を参照してください。

複数のサンプルレートを使用した設計のモデル化

HDL Coder ソフトウェアは、IP コアの生成ワークフローの実行時に複数のサンプルレートを使用する設計をサポートします。インターフェイス端子を AXI4-Stream Video マスターまたは AXI4-Stream Video スレーブ インターフェイスにマッピングする場合に複数のサンプルレートを使用するには、これらの AXI4 インターフェイスにマッピングされる DUT 端子が、HDL コード生成後に設計の最速のレートで実行していることを確認します。

詳細については、マルチレートの IP コアの生成を参照してください。

ビデオ ポーチ挿入ロジック

ビデオ キャプチャ システムはビデオ信号を左から右に、上部から下部にスキャンします。スキャンが行われると、ビデオのアクティブなラインの間とフレームの間に非アクティブな間隔が生成されます。この非アクティブな間隔はビデオ ポーチと呼ばれます。水平方向ポーチは、1 本のラインの終端と次のラインの先頭の間の非アクティブなサイクルから構成されます。垂直方向ポーチは、1 つのフレームの終端のアクティブなラインと次のフレームの先頭のアクティブなラインの間の非アクティブなサイクルから構成されます。

次の図は、水平方向ポーチがフロント ポーチとバック ポーチに分割されているビデオ フレームを示しています。

XI4-Stream Video インターフェイスにはビデオ ポーチは必要ありませんが、Vision HDL Toolbox アルゴリズムにはビデオ ストリームを処理するためにポーチが必要です。着信ピクセル ストリームに十分なポーチがないと、HDL Coder によって必要な量のポーチがピクセル ストリームに挿入されます。生成された IP コアで AXI4-Lite レジスタを使用して、各ビデオ フレームの次のポーチ パラメーターをカスタマイズできます。

  • [Active pixels per line] (既定値: 1920)

  • [Active video lines]: (既定値: 1080)

  • [Horizontal porch length] (既定値: 280)

  • [Vertical porch length] (既定値: 45)

既定のビデオ システムのリファレンス設計

AXI4-Stream Video インターフェイスをもつ、生成された HDL IP コアを [Default video system] のリファレンス設計に統合できます。

次の図は、[Default video system] のリファレンス設計アーキテクチャのブロック線図です。

次のターゲット プラットフォームで、この [Default video system] のリファレンス設計アーキテクチャを使用できます。

  • Xilinx Zynq ZC702 評価キット

  • Xilinx Zynq ZC706 評価キット

  • ZedBoard

[Default video system] リファレンス設計を使用するには、SoC Blockset™ Support Package for Xilinx® Devices のサポート パッケージをインストールしなければなりません。

制限

DUT ポートを AXI4-Stream Video インターフェイスにマッピングする場合の制限は次のとおりです。

  • ピクセル データ信号にマッピングされている DUT ポートはスカラー データ型を使用しなければなりません。

  • ターゲット プラットフォームは Xilinx Zynq®-7000 でなければなりません。

  • 合成ツールとして Xilinx Vivado® を使用しなければなりません。

  • [プロセッサ/FPGA 同期][フリー ラン] でなければなりません。

フレームベースのモデル化

データのフレームで動作する DUT アルゴリズムをモデル化し、フレームからサンプルへの最適化を使用して行列端子を AXI4-Stream Video インターフェイスにマッピングします。詳細については、Model Design for Frame-Based IP Core Generationを参照してください。

関連するトピック

関連するトピック