Main Content

テスト ベンチ生成

Simulink® モデルで指定するサブシステムまたはモデル参照向けの HDL テスト ベンチを生成できます。Simulink シミュレーションを実行して入力ベクトルおよび想定される DUT の出力データを取得することで、HDL テスト ベンチが生成されます。

テスト ベンチ生成の仕組み

HDL Coder™ は、MATLAB® または Simulink シミュレーションから得られた DUT のスティミュラスと参照データをデータ ファイル (.dat) に書き込みます。

HDL シミュレーション中に、HDL テスト ベンチは保存されたスティミュラスを .dat ファイルから読み取ります。テスト ベンチは、実際の DUT 出力を想定された出力 (.dat ファイルに保存されています) と比較します。コードを生成した後、メッセージ ウィンドウにテスト ベンチ データ ファイルへのリンクが表示されます。

参照データは、ファイルからデータを読み込む際に遅延があるため、既定のテスト ベンチ生成と比較して波形ビューアーで 1 クロック サイクル分遅延します。

テスト ベンチ データ ファイル

DUT の各入力と出力のスティミュラスおよび参照データは、個別のテスト ベンチ データ ファイル (.dat) に保存されます。ただし、次の例外があります。

  • 複素数データの実数部と虚数部に対して 2 つのファイルが生成されている。

  • 定数 DUT 入力データがテスト ベンチに定数として書き込まれている。

ベクトル入力またはベクトル出力のデータは 1 つのファイルとして保存されます。

テスト ベンチのデータ型の制限事項

DUT 入力および出力に double、single または列挙データ型が含まれている場合、シミュレーション データはファイルに書き込まれず、定数としてテスト ベンチ コードに生成されます。

ファイル I/O の代わりに定数を使用

ファイル I/O を使用せずに、テスト ベンチのスティミュラスおよび参照データをテスト ベンチ コードで定数として生成できます。定数を使用する、実行時間の長いテスト ベンチのシミュレーションを行うには、ファイル I/O を使用するテスト ベンチよりもさらに多くのメモリが必要です。

DUT 入力または出力でファイル I/O をサポートしていないデータ型が使用されている場合、テスト ベンチの生成によってデータが定数として自動的に生成されます。詳細は、テスト ベンチのデータ型の制限事項を参照してください。

HDL ワークフロー アドバイザーの使用

定数を使用するテスト ベンチを生成するには、次を行います。

  1. [HDL コード生成][コード生成オプションを設定][テスト ベンチ オプションを設定] タスクで、[ファイル I/O によるテスト ベンチ データの読み取り/書き込みを行います] をオフにして [適用] をクリックします。

  2. [HDL コード生成][RTL コードとテスト ベンチを生成] タスクで、[RTL テスト ベンチを生成] を選択して [適用] をクリックします。

コマンド ラインの使用

定数を使用するテスト ベンチを生成するには、makehdltbUseFileIOInTestBench パラメーターを使用します。

たとえば、DUT サブシステム sfir_fixed/symmetric_fir の定数を使用して Verilog® テスト ベンチを生成するには、以下のように入力します。

makehdltb('sfir_fixed/symmetric_fir','TargetLanguage','Verilog',...
          'UseFileIOInTestBench','off');

参考

関連するトピック