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®SystemVerilog、または VHDL 言語で予約されたキーワードを使用してはいけません。

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

制限

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

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

  • 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, Atomic Subsystem, CodeReuse Subsystem ブロックがサポートされています。

Signal Attributes

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

Signal Routing

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

Sources

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

Sinks

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

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

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

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

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

関連する例

詳細