インテルのみ表示可能 — GUID: ewa1462825815635
Ixiasoft
1.4.2.2. ポインター・パラメーター、参照パラメーター、および Avalon Memory-Mapped インターフェイス
コンポーネントは、Avalon® Memory-Mapped (Avalon®-MM) インターフェイスを介して外部メモリーとインターフェイスすることができます。 Avalon-MM インターフェイスは、ポインター関数引数を黙示的に使用するか、またはhls.hファイルで定義されるmm_master<> クラスを明示的に使用して指定できます。mm_master<> クラスはコンポーネント・シグネチャーの参照パラメーターとして機能しなければなりません。
テンプレート引数 | 値 | デフォルト | 説明 |
---|---|---|---|
type | 任意の有効な C++ 型 | N/A | 基となるポインター型です。マスター・オブジェクトで実行されるポインター演算はこの型に準じます。マスターの依存関係は、sizeof(type)の幅を有するロード・ストアー・サイトの結果となります。ポインター引数は、少なくともバイト単位でsizeof(type)に揃えられている必要があります。 |
ihc::dwidth<value> | 8、16、32、64、128、256、512、または 1024 | 64 | ビット単位のメモリーマップド・データバスの幅。 |
ihc::awidth<value> | 1 – 64 の範囲の整数値 | 64 | ビット単位のメモリーマップド・アドレスバスの幅。 |
ihc::aspace<value> | 0 よりも大きい整数値 | 1 | マスターに関連するインターフェイスのアドレススペースです。同じアドレススペースのすべてのマスターは、コンポーネント内で単一インターフェイスに調停されます。これらのマスターは、インターフェイスを記述する同じテンプレート・パラメーターを共有している必要があります。 |
ihc::latency<value> | 正の整数値 | 1 | 外部メモリーが有効な読み出しデータを返す際に、read コマンドがコンポーネントを終了してから保証されるレイテンシーです。 このレイテンシーが変数の場合、 0 に設定されます。 |
ihc::maxburst<value> | 1 – 1024 の範囲の整数値 | 1 | リードおよびライト・トランザクションに関連付けることができるデータ転送の最大数です。固定レイテンシー・インターフェイスでは、値は 1 に設定される必要があります。 詳しくは、Avalon Interface Specificationsを参照ししてください。 |
ihc::align<value> | type引数の整列の整数倍である整数値 | 型のアライメント | 基本ポインターアドレスのバイト境界合わせです。HLSコンパイラーはこの情報を使用してこのポインターへのロードとストアーで可能な結合の量を決定します。 データ型の幅がマスターデータの幅より小さい場合、 インテル® はこの引数を少なくともマスター幅と同じに設定することを推奨しています。 例えば、型がcharでマスター幅を 64 ビットになるように設定している場合、各クロックサイクルごとに 8 文字をリードまたはライトできるように、alignテンプレート引数を 8 バイトに設定します。
重要: 呼び出し元は、align引数の設定値にデータを整列する必要があります。そうでない場合、機能上で障害が起こる場合があります。
|