このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
TLM コンポーネントのテスト
TLM コンポーネント テストベンチの概要
テストベンチ生成オプションは、[コンフィギュレーパラメーター]ダイアログ ボックスのTLM Testbenchタブで制御します。このオプションは、生成されたコンポーネントに対してスタンドアロンのSystemC™テストベンチを作成します。テストベンチは、生成された TLM コンポーネントに対してテスト ベクトルを適用し、各トランザクションの結果をチェックすることによって機能します。「Verify TLM Component」TLM Testbench」ボタンをクリックすると、モデルのSimulink®シミュレーションからテスト ベクトルが自動的にキャプチャされます。
生成されたテストベンチを構成して、入力および出力バッファリングのタイミング モードとトリガー モードを指定できます。後者の選択では、イニシエーター モジュールがレジスターとバッファー間の入力および出力データ セットの移動を制御するかどうか、またはコンポーネントが移動を自動的に実行するかどうかを指定できます。オプションで、テストベンチは、SystemCシミュレーションのステータスを確認するのに役立つ詳細メッセージを実行時に生成することもできます。
メモ
この機能には、 ASIC Testbench for HDL Verifierアドオンが必要です。
MATLAB®マシンとは異なるオペレーティング システムを使用するホスト用のコンポーネントを生成する場合、TLM テスト ベンチはサポートされません。
TLM コンポーネントのコンパイル
[コンフィギュレーションパラメーター]ダイアログ ボックスの[TLM Compilation]タブには、SystemCおよび TLM ライブラリの場所情報が表示されます。環境変数を使用して、これらの場所を指定できます。
提供した情報は、メイクファイルを構築するために使用されます。これらの Makefile を使用して、コンポーネントとテストベンチを構築できます。このメイクファイルを使用して、MATLAB環境の外で TLM コンポーネントの実行可能ファイルとテストベンチをビルドすることもできます。
生成されたコンポーネントの自動検証
設定パラメーターのTLM Testbenchタブには、次のようなVerify TLM Componentボタンがあります。
入力刺激と期待される出力データを自動的に生成
コンポーネントとテストベンチを一緒に構築して実行します
コンポーネントの出力を自動的にチェックします
SystemCシミュレーションからの出力をキャプチャし、それらをSimulinkデータに変換し、 Simulink内のそれらをSimulinkシミュレーションの結果。
レポートの生成
tlmgenerator ターゲットは、生成されたコンポーネントの詳細を含む HTML ドキュメントを提供します。このドキュメントには、生成されたソース コード ファイルへのリンクが含まれています。レポートの生成は、設定パラメーターのSimulink Coder™ Reportペインを介して設定できます。レポート生成は厳密にはテストベンチ機能ではありませんが、プロセスにはテストベンチ ファイルの使用が含まれます。
構成の操作
構成オプションを選択した後、それらをSimulinkモデルとともに保存できます。以前のセッションで作成した保存された構成を復元することもできます。さらに、特定のモデルの複数の構成を保存して選択することができます。Simulinkドキュメントの「モデル参照の概要」セクションを参照してください。構成の操作については、「」を参照してください。
TLM コンポーネントのテストベンチを作成する場合の考慮事項
生成された TLM コードを最適化し、目的のテストベンチを達成するには、 Simulinkモデルを開発するときに次の考慮事項に留意する必要があります。
モデルでは 1 つのレートのみを使用できます。
モデルのコンポジット信号はメモリ内で連続している必要があります。マルチプレクサおよびバス出力信号をSignal Conversionブロックと連続させることができます。
モデルに複雑な信号が含まれている場合は、最初にそれらを分割する必要があります。Simulink Complex to Real-Imagブロックを使用して複素信号を分割します。その後、信号をデザインの反対側にあるReal-Imag to Complexブロックと再度組み合わせることができます。
デザインには Triggered または Enabled サブシステムを含めることができますが、生成するデザイン自体を Triggered または Enabled サブシステムにすることはできません。
HDL Verifier™ は、連続時間信号を含むSimulinkデザインを生成できます。Simulinkシミュレーションとキャプチャされたベクトルを SystemC で再生すると、まったく同じ結果が得られない場合があります。差のプロットは、次のMATLAB図ウィンドウに示すように、基本的に同じ曲線ですが、信号の遷移で数値的な差がより顕著であることがわかります。
この違いは、 Simulink信号キャプチャでは必然的に信号が離散化されるため、 Simulinkとスタンドアロン SystemC シミュレーションの両方で同じ正確なデータが使用されないために発生します。SystemC での離散信号シミュレーションの忠実度を向上するには、 Simulink Verify TLM Component で小さな基本ステップ サイズを選択します。