Main Content

HDL インポートでサポートされている Verilog 構造

"HDL インポート" を使用して、合成可能な HDL コードを Simulink® モデリング環境にインポートします。HDL コードをインポートするには、関数 importhdl を使用します。HDL コードで使用されている構造が HDL インポートでサポートされていることを確認します。

以下の表には、HDL コードをインポートするときに使用できる、サポートされている Verilog® 構造がリストされています。サポートされていない構造を使用する場合、入力 HDL ファイルの解析時に HDL インポートがエラーを生成します。Verilog HDL インポートでは、HDL コード内の特定の構造の存在を無視できる場合があります。詳細については、表のコメント セクションを参照してください。

モジュール定義とインスタンス化

Verilog 構造サポートコメント
ライブラリ宣言いいえ
コンフィギュレーション宣言いいえ
モジュール宣言はい複数のサンプルレートと複数のクロック入力はサポートされません。
モジュールのパラメーター端子リストはい
端子宣言はいINOUT 端子はサポートされません。
端子を使用しないモジュールいいえ
ローカル パラメーター宣言はい
パラメーター宣言はい最大サイズが 64 ビットのパラメーターと定数を使用できます。既定では、パラメーター サイズは 32 ビットです。
モジュールのインスタンス化はい
  • インスタンス化されたモジュールの接続されていない端子は、Verilog コードをインポートするときに削除されます。

  • 再帰的なモジュールのインスタンス化はサポートされません。

    代わりに、最上位モジュールは、再帰的サブフォルダーで定義されているモジュールをインスタンス化すると、importhdl はすべての Verilog ファイルを解析します。たとえば、この Figure では、importhdl は、DFF.v でインスタンス化される DFF_Instantiation.v および TFF_Instantiation.v の両方を解析できます。

    Folder structure containing subfolders.

データ型とベクトル

Verilog 構造サポートコメント
ネット宣言 (Wire、Supply0、Supply1)はい
実数宣言いいえ
文字列宣言いいえ
ベクトル宣言はい
配列のサポートと配列のインデックス付けはい
reg 宣言はい
整数宣言はい

識別子とコメント

Verilog 構造サポートコメント
字句トークン (空白、演算子、コメント)はい
識別子 (単純、エスケープ)はい
システム関数 ($signed、$unsigned)はい
属性インスタンスいいえHDL インポートはこれらの構造を無視します。
コメントいいえHDL インポートはこれらの構造を無視します。
数値 (10 進数、バイナリ、16 進数、8 進数)はい
コンパイラ命令 (`define、`undef、`ifndef、`else if)はい

代入

Verilog 構造サポートコメント
連続代入はい
ブロッキング代入はい--
非ブロッキング代入はい
手続き的代入 (Always ブロック)はい

演算子

Verilog 構造サポートコメント
算術演算子 (+、-、*、**、/、<<<、>>>)はい
論理演算子 (<<、>>、!、&&、| |、==、!=)はい
関係演算子 (>、<、>=、<=、==、!=) はい
ビット演算子 (~、&、|、^、~^、^~)はい
単項演算子 (+、-)はい限られたデータ型でサポート
べき乗演算子はい限られたデータ型でサポート
条件演算子 (?:)はい
連結はい
ビット選択はい
簡約演算子 (&、~&、|、~|、^、~^、または ^~)はい

各種演算子の使用方法を示す例については、さまざまな演算子に対応する Verilog コードからの Simulink モデルの生成を参照してください。

条件付きステートメントとループ ステートメント

Verilog 構造サポートコメント
If-else ステートメントはい
条件演算子 (?:)はい
For ループはい
loop generate 文はいfor-generate、case-generate、if-generate などの loop generate 文がサポートされます。
conditional generate 文いいえ
generate 領域いいえ
genvar 宣言いいえ
Case ステートメントはいcasex ステートメントと casez ステートメントもサポートされます。

手続きブロックとイベント

Verilog 構造サポートコメント
タスク宣言いいえ
初期構造 (ROM モデリング)いいえ
連続ブロックはい
ブロック宣言はい
イベント制御ステートメントはい
関数呼び出しはいHDL インポートは再帰的な関数呼び出しをサポートしません。
タスク イネーブルいいえ
Alwaysはい
関数宣言はい

その他の構造

Verilog 構造サポートコメント
ゲートのインスタンス化いいえ
specparamいいえ
specify ブロックいいえ
セマンティック検証 (未使用の端子、正しいモジュールのインスタンス化)はい
クロック バンドルの特定はい複数のサンプルレートと複数のクロック信号はサポートされていません。
レジスタ推定はい
Compare to Constant ブロック推定はい
Gain ブロック推定はい
RAM 推定はい
ROM 推定いいえ
カウンター推定いいえ
駆動強度いいえ

参考

関数

関連する例

詳細