サブシステムの RTL インターフェイスを指定します。
ライブラリ
Tools
説明
Interface Spec ブロックをサブシステムにインスタンシエートすると、そのサブシステムのポートに合成する RTL インターフェイスを指定できます。これは、Model Composer で生成された C++ モデルを Vitis HLS で RTL モデル (IP) に合成する際のコード生成と合成にのみ影響します。デザインの Simulink® シミュレーションには影響しません。デザインに Interface Spec ブロックがない場合は、Model Composer のデフォルトのインターフェイスが使用されます。インターフェイスの合成は、C++ コードを生成するサブシステムでのみサポートされます。そのため、C++ コードを生成するサブシステム内に組み込まれているサブシステムに Interface Spec ブロックがインスタンシエートされている場合、その Interface Spec ブロックは無視されます。
Interface Spec ブロックは、次のように使用します。
- Interface Spec ブロックは、C++ コードを生成するサブシステムにインスタンシエートします。Input ports タブに、親サブシステムの各入力ポートがそれぞれの行に表示されます。同様に、Output ports タブにも親サブシステムの各出力ポートがそれぞれの行に表示されます。
- Function Protocol、Input ports、および Output ports タブを設定を入力します。
Interface Spec ブロックでは、次の情報が含まれます。
- ブロック レベルのインターフェイス プロトコル。データ処理を開始するタイミングを IP に伝えるために使用します。この情報は、IP が新しいデータを受信するのか、演算を終了したのか、アイドル状態なのかを知らせる目的でも使用されます。
- 親サブシステムの入力ポートごとのポート レベルのインターフェイス プロトコル。
- 親サブシステムの出力ポートごとのポート レベルのインターフェイス プロトコル。
ポート レベルのインターフェイス プロトコルを選択する場合は、次に注意してください。
- 大型配列または行列のポートでは、AXI4-Stream、FIFO、または AXI4-Stream (ビデオ) などのストリーミング プロトコルを使用する必要があります。
- スカラー ポートは、[Default]、[AXI4-Lite Slave]、[Constant]、[Valid Port]、[No protocol] のいずれかのプロトコルを使用してインプリメントできます。
- ビデオ信号は、AXI4-Stream (ビデオ) インターフェイスを使用して転送できます。この場合、ビデオ フォーマットを YUV 4:2:2、YUV 4:4:4、RGB、または Mono に指定する必要もあります。ビデオ フォーマットの色成分が複数ある場合は、どのポートでどの色成分を転送するかを指定し、これらの 3 つのポートの [Bundle] 属性に同じ名前を割り当てる必要があります。ビデオ信号を構成するすべてのポート (3 または 1) は、開始フレームと行末側帯波信号を含む 1 つの AXI4-Stream インターフェイスでインプリメントされます。『AXI4-Stream Video IP およびシステム デザイン ガイド』 (UG934) に説明されている仕様に従ってください。
- AXI4-Lite Slave インタースレーブフェイスでは、1 つまたは複数のポートをインプリメントできます。
- 詳細は、 『Vitis 高位合成ユーザー ガイド』 (UG1399) の「インターフェイス合成」を参照してください。
Interface Spec ブロックでは、現在のところ、最大 8 つの入力ポートと 8 つの出力ポートを含むサブシステムがサポートされています。
データ型サポート
Interface Spec ブロックでは、データ型は関係ありません。
パラメーター
Interface Spec ブロックのパラメーターは、次の 3 種類に分類できます。
- 関数プロトコルに適用されるパラメーター。これは [Mode] および [Bundle] です。GUI のダイアログ ボックスでは、[Functional Protocol] タブに表示されます。
- 入力ポートに適用されるパラメーター。入力ポートごとに、[Mode]、[Bundle]、[Offset]、[Video Format]、および [Video Component] のパラメーター セットが 1 つずつあります。[Block Parameter] ダイアログ ボックスでは、これらのパラメーターは [Input ports] タブに表示されます。
- 出力ポートに適用されるパラメーター。出力ポートごとに、[Mode]、[Bundle]、[Offset]、[Video Format]、および [Video Component] のパラメーター セットが 1 つずつあります。GUI のダイアログ ボックスでは、[Output ports] タブに表示されます。
Function Protocol タブのパラメーターは、次のとおりです。
- Mode
-
Mode パラメーターは、ブロック レベルの I/O プロトコルを指定します。
Mode パラメーターの設定は、次のとおりです。
表 1. [Mode] パラメーター 設定 説明 AXI4-Lite Slave AXI4-Lite Slave をブロック レベルの I/O プロトコルとして指定します。 Handshake ハンドシェイク プロトコルをブロック レベルの I/O プロトコルとして指定します。 No block-level I/O Protocol ブロック レベルの I/O プロトコルなしと指定します。 関数プロトコルのデフォルトは、[AXI4-Lite Slave] です。ただし、DUT にスカラー ポートがない場合は、[Handshake] がデフォルトの関数プロトコルとして選択されます。
- Bundle
-
Bundle パラメーターは AXI4-Lite Slave インタースレーブフェイスの場合に使用し、複数のポートを同じインターフェイスにまとめます。Bundle には、C 言語で有効な識別子を入力します (スペースおよび特殊文字は使用不可)。
Input ports および Output ports タブのパラメーターは、次のとおりです。
- Mode
-
Mode パラメーターは、入力ポートまたは出力ポートの I/O プロトコルを指定します。
Mode パラメーターの設定は、次のとおりです。
表 2. [Mode] パラメーター 設定 説明 Default ポートがスカラーの場合は AXI4-Lite Slave、スカラー以外の場合は AXI4-Stream が使用されます。 AXI4-Stream AXI4-Stream プロトコルが使用されます。 AXI4-Stream (video) AXI4-Stream (video) プロトコルが使用されます。指定できるパラメーターは、Bundle、Video Format、および Video Component です。 AXI4-Lite Slave AXI4-Lite Slave プロトコルが使用されます。指定できるパラメーターは、Bundle および Offset です。 FIFO 要素が順次アクセスされる配列のプロトコルを指定します。 Valid port Valid ポートのみを持つハンドシェイク プロトコルが使用されます。 Constant ポートに I/O プロトコルは追加されません。これは、デバイスがリセット モードのときにのみ変化するコンフィギュレーション入力用のモードです。
このモードは、Input ports にのみ適用されます。
No protocol ポートに I/O プロトコルは追加されません。 Block RAM Block RAM インターフェイス プロトコルを指定します。 - Bundle
-
Bundle パラメーターは入力ポートまたは出力ポートに適用され、色成分が複数ある AXI4-Stream (video) インターフェイスを選択した場合に設定できます。色成分ごとにポートが 1 つずつあるので、これらのポートの Bundle 属性に同じ名前を指定して、同じ AXI4-Stream (video) インターフェイスにまとめられるようにします。
このパラメーターは、AXI4-Lite Slave インターフェイスを指定した場合にも使用され、Bundle 属性に同じ名前を指定したポートが同じ AXI4-Lite Slave インターフェイスにまとめられます。
Bundle には、C 言語で有効な識別子を入力します (スペースおよび特殊文字は使用不可)。
- Offset
-
Offset パラメーターは入力ポートまたは出力ポートに適用され、AXI4-Lite Slave インターフェイスを指定した場合に使用されます。AXI4-Lite Slave アドレス マップ内のポートのアドレス オフセットを指定します。
- Video Format
-
Video Format パラメーターは入力ポートまたは出力ポートに適用され、ビデオ信号の色フォーマットを指定します。AXI4-Stream (video) インターフェイスの場合にのみ設定できます。オプションは、Mono、YUV 4:2:2、YUV 4:4:4、および RGB です。
- Video Component
-
VideoComponent パラメーターは、入力ポートまたは出力ポートに適用され、ビデオ信号の色成分を指定します。色成分が複数ある Video Format を使用する AXI4-Stream (video) インターフェイスにのみ適用されます。オプションは、Mono、YUV 4:2:2、YUV 4:4:4、および RGB です。
Video Format の設定によって、Video Component は次のようになります。オプションの各 OS の手順は次のとおりです。表 3. [Video Component] オプション [Video Format] ビデオの色成分オプション Mono なし YUV 4:2:2 Y、U、V YUV 4:4:4 Y、U、V RGB R、G、B