Main Content

checkhdl

HDL コード生成の互換性についてサブシステムまたはモデルをチェックする

説明

checkhdl は HDL コード生成チェック レポートを生成してレポートをターゲット フォルダーに保存し、新しいウィンドウにレポートを表示します。HDL コードを生成する前に、checkhdl を使用してサブシステムまたはモデルをチェックします。

メモ

このコマンドを実行すると、Scope ブロックなどのブロックの [シミュレーション開始時に開く] 設定がアクティブになるため、そのブロックを呼び出せるようになります。

レポートには、互換性エラーと、問題の原因となった各ブロックまたはサブシステムへのリンクがリストされます。互換性のないブロックを強調表示および表示するには、モデルを開いたままでレポート内の各リンクをクリックします。

レポート ファイルの名前は system_report.html です。system は、checkhdl に渡されたサブシステムまたはモデルの名前です。

モデルまたはサブシステムが checkhdl にパスした場合でも、コード生成が完了することを意味するわけではありません。checkhdl で検証されないブロック パラメーターもあります。

checkhdl(bdroot) は、現在のモデルを調べて HDL コード生成の互換性を確認します。

checkhdl("dut") は、絶対階層パスを含む、指定した DUT モデル名、モデル参照名、またはサブシステム名を調べます。

checkhdl(gcb) は、現在選択されているサブシステムを調べます。

output = checkhdl("system") はレポートを生成しません。そうではなく、各エラー、警告、またはメッセージごとに 1 つのエントリをもつ 1xN の構造体配列を返します。system では、モデル、またはモデルの階層構造の任意のレベルにおけるサブシステムの絶対ブロック パスを指定します。

makehdl および makehdltb で指定する名前と値のペアの引数は、checkhdl でも指定できます。名前と値のペアの引数のリストについては、名前と値の引数を参照してください。

checkhdl は以下の 3 つのレベルの互換性の問題をレポートします。

  • エラー: コード生成プロセスは強制終了します。HDL コード生成を続行するには、レポートにエラーが含まれていてはなりません。

  • 警告: 生成されるコードの問題を示しますが、HDL コード生成は続行できます。

  • メッセージ: 一部のデータ型が特殊な扱いを受けることを示します。たとえば、HDL Coder™ ソフトウェアは、単精度浮動小数点データ型を倍精度に自動変換します。これは、VHDL® および Verilog® で単精度のデータ型がサポートされていないためです。

すべて折りたたむ

モデル sfir_fixed 内のサブシステム symmetric_fir を調べて HDL コード生成互換性についてチェックし、互換性レポートを生成します。

checkhdl("sfir_fixed/symmetric_fir")

モデル sfir_fixed_err 内のサブシステム symmetric_fir_err を調べて HDL コード生成互換性についてチェックし、検出された問題に関する情報を構造体 output で返します。

output = checkhdl("sfir_fixed_err/symmetric_fir_err")
### Running HDL checks on the model 'sfir_fixed_err'.
...
### HDL Check Complete with 4 errors, warnings and messages.

次の MATLAB® コマンドでは、構造体 output の最上位の構造体およびその最初の cell を表示します。

output = 

1x4 struct array with fields:
    path
    type
    message
    level


output(1)

ans = 

       path: 'sfir_fixed_err/symmetric_fir_err/Product'
       type: 'block'
    message: 'Unhandled mixed double and non-double datatypes at ports of block'
      level: 'Error'

バージョン履歴

R2006b で導入