インテルのみ表示可能 — GUID: zcd1508549436855
Ixiasoft
7. データ型のベスト・プラクティス
コンポーネントのデータ型や、データ型が受ける可能性のある変換またはキャストは、コンポーネントのパフォーマンスやFPGA領域の使用に大きく影響する可能性があります。データ型のベスト・プラクティスでは、コンポーネントのサイズや変換を制御するための最適な方法についてのヒントとガイダンスが確認できます。
デザインのアルゴリズムのボトルネックを最適化した後、コンポーネント内の一部のデータ型を微調整することができます。このためには、任意の精度のデータ型を使用して、データ幅を縮小します。 インテル®HLSコンパイラー プロ・エディションのデバッグ機能では、任意の精度データ型のオーバーフローを簡単に検出することができます。
C++では、short や char などの小さいデータ型を32ビットに自動昇格させ、加算やビットシフトなどの操作に使用します。このため、コンポーネント内に狭いデータパスを作成する場合は、任意の精度のデータ型を使用してください。
データ型のベスト・プラクティスに関するチュートリアル
インテル®HLSコンパイラー プロ・エディションに付属している多数のチュートリアルでは、 インテル®HLSコンパイラーの重要な概念や優れたコーディング・プラクティスを示しています。
次のチュートリアルでは、デザインに適用できる可能性のあるデータ型のベスト・プラクティスを確認できます。
チュートリアル | 内容 |
---|---|
この表のチュートリアルは、 インテル® Quartus® Primeシステム内の次の場所にあります。<quartus_installdir>/hls/examples/tutorials |
|
best_practices/ac_datatypes | int データ型の代わりに ac_int データ型を使用した場合の効果について示します。 |
ac_datatypes/ac_fixed_constructor | ac_fixed コンストラクターの使用例を示します。ここでは、より優れたQoRを得るために、コーディング・スタイルのわずかな相違を使用します。 |
ac_datatypes/ac_int_basic_ops | ac_int クラスで使用可能な演算子を示します。 |
ac_datatypes/ac_int_overflow | DEBUG_AC_INT_WARNING および DEBUG_AC_INT_ERROR キーワードの使用方法を示します。これは、エミュレーション・ランタイム中のオーバーフローの検出に役立ちます。 |
best_practices/single_vs_double_precision_math | 倍精度リテラルと関数の代わりに、単精度リテラルと関数を使用した場合の効果を示します。 |