Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

ネイティブ浮動小数点でサポートされる Simulink ブロック

HDL Coder™ のネイティブ浮動小数点によって、ターゲットに依存しない HDL コードを浮動小数点設計から生成できます。汎用 FPGA または ASIC で浮動小数点設計を合成できます。浮動小数点設計では、固定小数点設計に比べて、精度が向上し、ダイナミック レンジが高くなり、開発サイクルが短縮されます。設計に複雑な算術演算および三角関数演算がある場合は、ネイティブ浮動小数点テクノロジーを使用します。

HDL Coder では、Math ブロックと Trigonometric ブロックを含むいくつかの Simulink® ブロックをネイティブ浮動小数点テクノロジーでサポートしています。

HDL Floating Point Operations ライブラリ

[HDL Floating Point Operations] ライブラリでは、データ型が singledouble のすべてのブロックが HDL Coder の Native Floating Point モードでサポートされます。Discrete-Time IntegratorDiscrete PID Controller などの特定のブロックには、ゼロ レイテンシ手法を使用します。これらのブロックには特有のフィードバック ループがあり、レイテンシ手法に値以外を使用するとコード ジェネレーターで遅延を割り当てられなくなることがあります。詳細については、浮動小数点演算への十分な遅延の割り当てを参照してください。

half 型を使用する場合、次のブロックは Native Floating Point モードでサポートされます。

Math Operations ライブラリでサポートされる Simulink ブロック

Math Operations ライブラリでは、次のブロックが HDL コード生成でサポートされます。

ブロック名half データ型をサポートsingle データ型をサポートdouble データ型をサポート注意
Absいいえはいはい
Addはいはいはい
Assignmentいいえはいはい
Biasいいえはいはい
Complex to Real-Imagいいえはいはい
Divideはいはいはい
Dot Productいいえはいはい
Gainはいはいはい
Math Functionいいえはいいいえ
MinMaxいいえはいはい
Productはいはいはい[乗算] ブロック パラメーターを [行列 (*)] に設定して行列の乗算を実行するようにブロックを設定する場合、[DotProductStrategy] を [Fully Parallel] に設定しなければなりません。
Product of Elementsはいはいはい
Real-Imag to Complexいいえはいはい
Reciprocal Sqrtいいえはいはい
Reshapeはいはいはい
Sqrtいいえはいはい
Subtractはいはいはい
Sumはいはいはい
Sum of Elementsはいはいはい
Trigonometric Functionいいえはいいいえ
Unary Minusはいはいはい
Vector Concatenateはいはいはい

他のライブラリでサポートされる Simulink ブロック

次の表に、他の [HDL Coder] ブロック ライブラリでサポートされる HDL コード生成のブロックのリストを示します。

ブロック ライブラリhalf データ型をサポートsingle データ型をサポートdouble データ型をサポート

Discrete

サポートされるブロックには、同期ブロック、Integer DelayTapped Delay などの遅延ブロックのセットが含まれます。

以下のブロックがサポートされます。

  • Zero Order Hold

  • 同期ブロック、Integer DelayTapped Delay などの遅延ブロックのセット。

以下のブロックがサポートされます。

  • Zero Order Hold

  • 同期ブロック、Integer DelayTapped Delay などの遅延ブロックのセット。

HDL Operations

このライブラリのブロックはサポートされません。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

HDL RAMs

このライブラリのブロックはサポートされません。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

HDL Subsystems

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Logic and Bit Operations

以下のブロックがサポートされます。

  • Compare to Constant

  • Relational Operator

  • Detect Change

  • Detect Increase

  • Detect Decrease

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Lookup Tables

このライブラリのブロックはサポートされません。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Model Verification

このライブラリのブロックはサポートされません。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Model-Wide Utilities

このライブラリのブロックはサポートされません。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Ports & Subsystems

イネーブル端子、リセット端子、入力端子、出力端子、モデル参照、およびサブシステム ブロックがサポートされます。

イネーブル端子、リセット端子、入力端子、出力端子、モデル参照、およびサブシステム ブロックがサポートされます。

イネーブル端子、リセット端子、入力端子、出力端子、モデル参照、およびサブシステム ブロックがサポートされます。

Signal Attributes

以下のブロックがサポートされます。

  • Data Type Conversion

  • Data Type Duplicate

  • Rate Transition

  • Signal Specification

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Signal Routing

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

Sources

InportConstant、および Ground の各ブロックがサポートされます。

InportConstant、および Ground の各ブロックがサポートされます。

InportConstant、および Ground の各ブロックがサポートされます。

Sinks

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

すべてのブロックがサポートされます。

User-Defined Functions

MATLAB Function ブロックがサポートされます。

MATLAB Function ブロックがサポートされます。

MATLAB Function ブロックがサポートされます。

Simulink ブロックの制限

ネイティブ浮動小数点モードでは、コード ジェネレーターは以下のブロックまたはブロック アーキテクチャをサポートしません。

  • Biquad Filter

  • 浮動小数点型である制御端子への入力をもつ Switch ブロック。

  • 複素数入力の型をもつ Sum of Elements

  • MATLAB System ブロック。

  • [Architecture][Tree] または [Linear] に設定された複雑なモードの Dot Product

  • [Architecture][Fully Parallel] 以外に設定された Discrete FIR Filter

  • Dead Zone および Dead Zone Dynamic

  • Polar to Cartesian

  • Data Type Conversion ブロックの場合:

    • [等価な値をもつ入力と出力] 設定で [整数格納 (SI)] モードがサポートされない。

    • [整数オーバーフローで飽和] チェック ボックスをオフのままにしなければならない。

参考

モデリング ガイドライン

関数

関連する例

詳細