インテル®高位合成 (HLS) コンパイラー プロ・エディション: ベスト・プラクティス・ガイド

ID 683152
日付 12/16/2019
Public
ドキュメント目次

3. インターフェイスのベスト・プラクティス

インテル®HLS (高位合成) コンパイラーを使用すると、コンポーネントでは、基本的なワイヤーからAvalon StreamingおよびAvalon Memory-Mapped Masterインターフェイスまでのさまざまなインターフェイスが使用できます。インターフェイスのベスト・プラクティスは、コンポーネントに適切なインターフェイスの選択やコンフィグレーションに役立ちます。

インテル®HLSコンパイラー プロ・エディションでサポートする各インターフェイスには、そのタイプによって異なる利点がああります。しかしながら、コンポーネントを囲むシステムによって、インターフェイスの選択が制限される場合があります。コンポーネントにとって最適なインターフェイスを決定する際には、ご自身の必要条件を念頭に置いてください。

インターフェイスのベスト・プラクティスの説明

インテル®HLSコンパイラー プロ・エディションに付属している多数のチュートリアルでは、 インテル®HLSコンパイラーの重要な概念や優れたコーディング・プラクティスについて説明しています。

次のチュートリアルでは、さまざまなインターフェイスのほか、デザインに適用できる可能性のあるベスト・プラクティスについて確認できます。
チュートリアル 内容
この表のチュートリアルは、 インテル® Quartus® Primeシステム内の次の場所にあります。
<quartus_installdir>/hls/examples/tutorials
interfaces/ overview コンポーネント・アルゴリズムが変化しない状態でも、異なるコンポーネント・インターフェイスの選択が結果の品質 (QoR) に与える影響を示します。
best_practices/ parameter_aliasing

コンポーネント引数に __restrict キーワードを使用する方法を示します。

best_practices/ lsu_control 可変遅延 Avalon® Memory Mapped Masterインターフェイス向けにインスタンス化されたLSUのタイプの制御効果を示します。
interfaces/ explicit_streams_buffer

明示的 stream_in および stream_out インターフェイスをコンポーネントおよびテストベンチで使用する方法を示します。

interfaces/ explicit_streams_packets_empty usesPacketsusesEmpty 、および firstSymbolInHighOrderBits ストリーム・テンプレート・パラメーターの使用方法を示します。
interfaces/explicit_streams_packets_ready_valid usesPacketsusesValid および usesReady ストリーム・テンプレート・パラメーターの使用方法を示します。
interfaces/ explicit_streams_ready_latency readyLatency ストリーム・テンプレート・パラメーターを使用したストリーム書き込みで、より優れたループ開始間隔 (II) を達成する方法を示します。
interfaces/ mm_master_testbench_operators Avalon Memory Mapped (MM) Master (mm_master class) インターフェイスのさまざまなインデックスでコンポーネントを呼び出す方法を示します。
interfaces/ mm_slaves Avalon-MM Slaveインターフェイス (スレーブレジスターとスレーブメモリー) の作成方法を示します。
interfaces/ multiple_stream_call_sites 複数のストリーム呼び出しサイトを使用する場合のトレードオフを示します。
interfaces/ pointer_mm_master Avalon-MM Masterインターフェイスの作成方法とそのパラメーターの制御方法を示します。
interfaces/ stable_arguments 不変引数のstable属性を使用してリソース使用率を向上させる方法を示します。