Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

信号タイプとデータ型のサポート

HDL Coder™ では、Simulink® の信号タイプとデータ型でコード生成がサポートされていますが、いくつか特殊なケースがあります。

バス

モデルの DUT ブロックまたは他のブロックに入力信号や出力信号が多数ある場合は、バス信号を作成するとモデルの可読性が向上します。バス信号またはバスは、要素と呼ばれる他の信号で構成される合成信号です。

バーチャル バスと非バーチャル バスを使用する設計の HDL コードを生成できます。たとえば、次を含む設計のコードを生成できます。

  • バスに接続されている DUT サブシステムの端子。

  • バスと HDL コード生成をサポートしている Simulink および Stateflow® ブロック

バスがサポートされるブロック

バス対応ブロックとは、バス信号を入力として受け入れるブロックとバス信号を出力として生成できるブロックのことです。Simulink でサポートされるバス対応ブロックの一覧については、バス対応ブロックを参照してください。HDL Coder では、[HDL Coder] ブロック ライブラリでバス対応ブロックのコード生成をサポートしています。詳細については、各ブロック ページの [HDL コード生成] セクションを参照してください。以下のブロックがサポートされます。

さらに、サブシステム、モデル、および次のユーザー定義関数では、シミュレーションと HDL コード生成でバスがサポートされます。

バスのサポートの制限

バスは IP Core Generation ワークフローではサポートされていません。さらに、次を使用する設計のコードは生成できません。

  • バスに接続されているブラック ボックス モデル参照。

  • 非ゼロの [初期条件] をもつ Delay ブロックへのバス入力。

列挙型

設計内の Simulink、MATLAB® または Stateflow の列挙型に対して、コードを生成できます。

必要条件

  • 列挙型の値は、単調増加していなければなりません。

  • 列挙型 string は、一意の名前を持たなければならず、Verilog® または VHDL 言語で予約されたキーワードは使用できません。

  • ターゲット言語が Verilog の場合は、すべての列挙型メンバーの名前が設計内で固有でなければなりません。

制限

次のワークフローまたは検証メソッドでは、最上位 DUT の端子の列挙型はサポートされていません。

  • IP コアの生成ワークフロー

  • FPGA ターンキー ワークフロー

  • Simulink Real-Time FPGA I/O ワークフロー

  • USRP デバイス ワークフローのカスタマイズ

  • FPGA インザループ

  • HDL コシミュレーション

行列

設計内の次のブロックで行列タイプを使用できます。詳細については、各ブロック ページの [HDL コード生成] セクションを参照してください。

HDL Coder ブロック ライブラリサポートされているブロック

Discontinuities

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

Discrete

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

HDL Floating Point Operations

Rounding Function ブロックがサポートされています。

HDL Operations

このライブラリのすべてのブロックがサポートされています。

HDL RAMs

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

HDL Subsystems

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

Logic and Bit Operations

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

Lookup Tables

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

Math Operations

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

Model Verification

このライブラリのすべてのブロックがサポートされています。

Model-Wide Utilities

DocBlock がサポートされています。Model Info ブロックは行列のデータ型をサポートしません。

Ports & Subsystems

Subsystem ブロックがサポートされています。

Signal Attributes

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

Signal Routing

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

Sources

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

Sinks

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

User-Defined FunctionsMATLAB Function ブロックがサポートされています。

コード ジェネレーターは、HDL コードを生成する Subsystem のインターフェイスで行列タイプをサポートしません。Reshape ブロックを使用して行列入力をインターフェイスの 1 次元配列に変換します。Subsystem 内では別の Reshape ブロックを使用して、1 次元配列から指定した次元の行列タイプへ変換を戻します。

サポートされていない信号タイプとデータ型

  • 行優先のレイアウトで格納された行列は HDL コード生成でサポートされていません。

  • 可変サイズ信号はコード生成でサポートされていません。

関連する例

詳細