B.5.1. コンポーネント・インターフェイスのレビュー
Component Viewer レポートには、コンポーネント内のインターフェイスの視覚的表現が表示されます。デフォルト、ポインター、参照渡し、 Avalon® Memory-Mapped (MM)、および Avalon® Streaming などのインターフェイス引数の詳細が確認できます。
コンポーネント内の一部のインターフェイス引数には、stableであるとしてマークすることができます。安定したインターフェイス引数は、コンポーネントの実行中に変更されない引数ですが、コンポーネントの実行間で引数が変更される可能性があります。
Component Viewer レポートでは、安定したノードはエッジ接続がありません。
Component Viewer レポートは次のセクションの概要のとおり、異なるインターフェイスを表示します。
デフォルトのインターフェイス引数
デフォルトのインターフェイス引数は任意のスカラーまたはシンプルな構造です。Component Viewer レポートはデフォルトの引数ノードを対応するチャネル読み出し (RD) ノードに接続します。

各デフォルトのインターフェイス引数ノードでは、ノード上にマウスを置くとノードに関する詳細が表示されます。
ポインター、参照渡し、および Avalon® MM マスターのインターフェイス引数
ポインター・インターフェイス、参照渡しインターフェイス、 Avalon® MM マスター・インターフェイスおよびグローバル変数はすべて、コンポーネント外のメモリーへのアドレスに対応します。デフォルトのインターフェイス引数と同様に、これらのノードはコンポーネントの対応するチャネル読み出し (RD) ノードに接続します。
Component Viewer レポートには、これらのインターフェイス引数の詳細が表示されます。
- Stable
- インターフェイス引数が安定しているかどうかを表示します。
- Data width
- ビット単位での memory-mapped データバスの幅
- Address width
- ビット単位での memory-mapped アドレスバスの幅
- Latency
- コンポーネントからのリードコマンドが終了してから外部メモリーが有効なリードデータを返すまでの保証されたレイテンシー
- Maximum burst
- リードまたはライト・トランザクションに関連付けられるデータ転送の最大数。固定レイテンシー・インターフェイスでは、この値は 1 に設定されます。
- Alignment
- ベース・ポインターアドレスのバイト配列。 インテル® HLS コンパイラーはこの情報を使用してこのポインターへのロードおよびストアーが可能な結合の量を決定します。
Avalon® MM スレーブレジスターのインターフェイス引数
インターフェイス引数を Avalon® MM スレーブレジスター (hls_avalon_slave_register_argument) としてラベル付けする際、インターフェイス引数は CSR ( コントロールおよびステータスレジスター ) スレーブのインターフェイスに実装されます。Component Viewer レポートはスレーブレジスターの引数をCSRコンテナー内に格納します。
結果のメモリーマップは、自動的に生成されたヘッダーファイル <component_name>_csr.hに記述されます。このヘッダーファイルは source editor のメニューにあります。Component Viewer レポートのCSRコンテナーのノードをクリックすると、ヘッダーファイルも開くことができます。
hls_avalon_slave_componentマクロを使用すると、“do” または “return” ストリーム ( コントロールおよびステータスレジスター ) は CSR インターフェイスに実装されます。
Avalon® MM スレーブメモリー・インターフェイス引数
ポインター引数をスレーブメモリーとして宣言する場合、Component Viewer レポートは、コンポーネント内の Local Memory ノードと接続される <slave memory name> LD/STノードでスレーブメモリー・インターフェイスを表示します。
Component Memory Viewer レポートにある同じ Avalon® MM スレーブメモリー・インターフェイスを確認すると、 <slave memory name> LD/STノードは外部RWポートに接続されていることが表示されています。
Avalon® Streaming インターフェイス引数
Streaming インターフェイスは、対応するRDノード (stream_in<> 用 ) またはWRノード (stream_out<> 用 ) に接続されている <stream name> ノードで Component Viewer レポートに表示されます。
Component Viewer レポートは Streaming インターフェイス引数に関する次の詳細を表示します。
- Width
- ビット単位でのデータバスの幅
- Depth
- ストリームの深さ
- Bits per symbol
- データがデータバス上のシンボルで分割される方法を表示します。
- Uses Packets
- インターフェイスが Streaming インターフェイス上のstartofpacketおよびendofpacketサイドバンド信号を公開するかどうかを表示します。信号はパケットベースの読み出しおよび書き込みでアクセス可能です。
- Uses Valid
- (stream_in) valid信号が Streaming インターフェイス上に存在するかどうかを表示します。Yesの場合、upstream ソースはreadyがアサートされている各サイクルで有効データを提供する必要があります。
- Uses Reader
- (stream_in) ready信号が Streaming インターフェイス上に存在するかどうかを表示します。Yesの場合、ダウンストリーム・シンクはvalidがアサートされている各サイクルでデータの受け取りが可能です。