Main Content

テスト ベンチ生成出力のパラメーター

シミュレーション ツールで HDL コードを検証するために生成するテスト ベンチのタイプを指定するには、[テスト ベンチ生成出力] パラメーター設定を使用します。[HDL コード生成][テスト ベンチ][テスト ベンチ生成出力] で、テスト ベンチ生成用のコンフィギュレーション パラメーターを指定できます。この設定は、モデル内のサブシステムを選択すると有効になります。親の [HDL コード生成] ペインの [HDL を生成] メニューからモデル内のサブシステムを選択し、そのサブシステムのテスト ベンチの生成を開始します。この設定は、モデル全体を選択した場合は使用できません。

HDL テスト ベンチ

HDL テスト ベンチの生成を有効または無効にします。

設定

既定の設定: 選択

オン

HDL テスト ベンチ コードの生成を有効化します。コード ジェネレーターは、Simulink® シミュレーションを実行して入力ベクトルおよび想定される DUT の出力データを取得することで、HDL テスト ベンチを作成します。

このテスト ベンチは、HDL Coder™ がモデルに対して生成する既定のテスト ベンチです。モデルのコードをまだ生成していない場合は、HDL テスト ベンチ生成を実行することでも DUT のコードが生成されます。

[シミュレーション ツール] メニューで HDL シミュレーターを指定します。HDL Coder によって、指定したシミュレーター用のビルドと実行スクリプトが生成されます。

オフ

HDL テスト ベンチ コードは生成されません。別のテスト ベンチを使用する場合にこのオプションを使用できます。

依存関係

選択したシステムが DUT であることを確認してください。このオプションはモデル全体を選択した場合は無効になります。

このチェック ボックスは、[テスト ベンチ] ペインの [設定] セクションのオプションを有効にします。テスト ベンチをビルドおよび実行するスクリプトを生成するには、[シミュレーション ツール] を選択します。

コマンド ライン情報

プロパティ: GenerateHDLTestBench
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、hdlset_param または makehdltb を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、sfir_fixed/symmetric_fir サブシステムの HDL テスト ベンチを生成するには、DUT を引数として関数 makehdltb に渡します。

makehdltb('sfir_fixed/symmetric_fir')

コシミュレーション モデル

HDL Cosimulation ブロックを含むモデルの生成を有効または無効にします。このオプションには HDL Verifier™ のライセンスが必要です。このチェック ボックスをオンにした後で、[シミュレーション ツール] を指定します。コシミュレーションでは Mentor Graphics® ModelSim® または Cadence Incisive® を選択できます。このテスト ベンチではカスタム スクリプトの設定はサポートされません。

コード ジェネレーターは、コード生成のために選択された DUT の端子とデータ型インターフェイスに準拠するように、生成された HDL Cosimulation ブロックを構成します。DUT の代わりに HDL Cosimulation ブロックをモデルに接続することで、目的のシミュレーターを使用して設計をコシミュレートすることができます。

コードでは、CosimLibPostfix プロパティが指定する文字ベクトルが、生成された HDL Cosimulation ブロックの名前に付加されます。

設定

既定の設定: 選択しない

依存関係

選択したシステムが DUT であることを確認してください。このオプションはモデル全体を選択した場合は無効になります。

コマンド ライン情報

プロパティ: GenerateCoSimBlock
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'
プロパティ: GenerateCoSimModel
型: 文字ベクトル
値: 'ModelSim' | 'Incisive'|'None'
既定の設定: 'ModelSim'

このプロパティを設定するには、hdlset_param または makehdltb を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムのテストベンチを生成する際に GenerateCoSimModel プロパティを有効にできます。

  • プロパティを引数として関数 makehdltb に渡す。

    makehdltb('sfir_fixed/symmetric_fir', ... 
                'GenerateCoSimModel','ModelSim')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdltb を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','GenerateCoSimModel','ModelSim')
    makehdltb('sfir_fixed/symmetric_fir')

参考

SystemVerilog DPI テスト ベンチ

SystemVerilog DPI テスト ベンチの生成を有効または無効にします。[シミュレーション ツール] で HDL シミュレーターを選択します。SystemVerilog DPI テスト ベンチに対して、Mentor Graphics ModelSim、Cadence Incisive、Synopsys® VCS®、または Xilinx® Vivado® を選択できます。このテスト ベンチではカスタム スクリプトの設定はサポートされません。

このプロパティを設定すると、コード ジェネレーターによって DUT およびデータ ソースを含む Simulink モデル全体に対する Direct Programming Interface (DPI) コンポーネントが生成されます。モデル全体で、Simulink Coder™ による C コードの生成をサポートしなければなりません。DPI コンポーネントの出力を DUT の HDL 実装の出力と比較する SystemVerilog テスト ベンチが生成されます。共有ライブラリも構築され、選択したシミュレーターのシミュレーション スクリプトが生成されます。

既定の HDL テスト ベンチで生成またはシミュレーションに長い時間がかかる場合、このオプションの使用を検討してください。DPI テスト ベンチの生成では、テスト ベンチ データを作成するために完全な Simulink シミュレーションが実行されないため、既定のバージョンよりも高速になることがあります。大容量のデータセットをもつ DPI テスト ベンチのシミュレーションでは、個別のファイルに入力または想定されたデータが格納されないため、既定のバージョンよりも高速になります。

この機能を使用するには、HDL Verifier および Simulink Coder がなければなりません。生成された VHDL コードで SystemVerilog テスト ベンチを実行するには、HDL シミュレーター用の混合言語シミュレーション ライセンスがなければなりません。

設定

既定の設定: 選択しない

依存関係

選択したシステムが DUT であることを確認してください。このオプションはモデル全体を選択した場合は無効になります。

制限

DUT サブシステムは、次の条件を満たしていなければなりません。

  • DUT の入力データ型と出力データ型を 64 ビットより大きくすることはできません。

  • DUT の入力端子と出力端子に列挙データ型を使用することはできません。

  • 入力端子と出力端子に単精度データ型または倍精度データ型を使用することはできません。

  • DUT に複数のクロックを設定することはできません。[クロックの入力] コード生成オプションを [単一] に設定しなければなりません。

  • [トリガー信号をクロックとして使用] を選択してはなりません。

  • DUT がベクトル端子を使用する場合、[ベクトル端子のスカラー化] を使用してインターフェイスをフラットにしなければなりません。

コマンド ライン情報

プロパティ: GenerateSVDPITestBench
型: 文字ベクトル
値: 'ModelSim' | 'Incisive'|'Custom'|'VCS'|'Vivado'
既定の設定: 'ModelSim'

このプロパティを設定するには、hdlset_param または makehdltb を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムのテストベンチを生成する際に GenerateCoSimModel プロパティを有効にできます。

  • プロパティを引数として関数 makehdltb に渡す。

    makehdltb('sfir_fixed/symmetric_fir', ... 
                'GenerateSVDPITestBench','ModelSim')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdltb を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','GenerateSVDPITestBench','ModelSim')
    makehdltb('sfir_fixed/symmetric_fir')

参考

シミュレーション ツール

生成されたテスト ベンチを実行するシミュレーター。このツールでは、HDL コードおよびテスト ベンチをビルドおよび実行するスクリプトを生成します。

設定

  • Mentor Graphics ModelSim:このオプションが既定値です。HDL Coder は Mentor Graphics ModelSim で使用する選択したタイプのテスト ベンチを生成します。

  • Cadence Incisive:Cadence Incisive で使用する選択したタイプのテスト ベンチが生成されます。

  • カスタム: このオプションを選択すると、[EDA ツールのスクリプト] ペインでカスタムのスクリプト オプションが有効化されます。

  • VCS: このシミュレーターは、[SystemVerilog DPI テスト ベンチ] でのみサポートされます。

  • Vivado: このシミュレーターは、[SystemVerilog DPI テスト ベンチ] でのみサポートされます。

依存関係

選択したシステムが DUT であることを確認してください。このオプションはモデル全体を選択した場合は無効になります。

コマンド ライン情報

HDL テスト ベンチでは、SimulationTool プロパティを使用します。コシミュレーションでは、GenerateCosimModel プロパティを使用します。SystemVerilog DPI テスト ベンチでは、GenerateSVDPITestbench プロパティを使用します。

プロパティ: SimulationTool
型: 文字ベクトル
値: 'Mentor Graphics ModelSim' | 'Cadence Incisive' | 'Custom'
既定の設定: 'Mentor Graphics ModelSim'
プロパティ: GenerateCosimModel
型: 文字ベクトル
値: 'ModelSim' | 'Incisive'|None
既定の設定: 'ModelSim'
プロパティ: GenerateSVDPITestbench
型: 文字ベクトル
値: 'ModelSim' | 'Incisive'|'Custom'|'VCS'|'Vivado'
既定の設定: 'ModelSim'

このプロパティを設定するには、hdlset_param または makehdltb を使用します。プロパティの値を表示するには、hdlget_param を使用します。

HDL コード カバレッジ

生成されたシミュレーター スクリプトで HDL コード カバレッジ フラグを有効または無効にします。

このオプションを有効にして、HDL シミュレーションを実行すると、生成されたテスト ベンチに対してコード カバレッジが収集されます。SimulationTool プロパティで HDL シミュレーターを指定します。指定したシミュレーター用のビルドと実行スクリプトが生成されます。

設定

既定の設定: 選択しない

依存関係

選択したシステムが DUT であることを確認してください。このオプションはモデル全体を選択した場合は無効になります。

コマンド ライン情報

プロパティ: HDLCodeCoverage
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、hdlset_param または makehdltb を使用します。プロパティの値を表示するには、hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムのテストベンチを生成する際に HDLCodeCoverage プロパティを有効にできます。

  • プロパティを引数として関数 makehdltb に渡す。

    makehdltb('sfir_fixed/symmetric_fir', ... 
                'HDLCodeCoverage','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdltb を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','HDLCodeCoverage','on')
    makehdltb('sfir_fixed/symmetric_fir')