- コード文の正確な実行回数を示すライン/ステートメント カバレッジ
- if-else、if-elseif-else、switch-case、三項演算子のブランチ カバレッジ
- コード カバレッジ レポートでの else の欠落と default の欠落の検出および強調表示
- コンディションがチェックされ、TRUE/FALSE と評価された正確な回数を示すコンディション カバレッジ
- パック型/アンパック型の reg、bit、logic、wire データ型のトグル カバレッジ
- int、short、integer、byte データ型、および非動的な構造体メンバーのトグル カバレッジ
- xcrg を使用したコード カバレッジ HTML レポートの生成
- デザインのコード カバレッジをダッシュボードで表示
- デザイン全体ファイル、のリストモジュール、階層インスタンスのリスト
- ファイル別のコード カバレッジ ビュー、モジュールとインスタンス別のコード カバレッジ ビュー
- xcrg を使用したさまざまな run からのライン/ステートメント、ブランチ、コンディション、トグルのカバレッジの統合
注記:
Vivado シミュレータでは現在、上記の機能は SystemVerilog/Verilog でサポートされています。VHDL のコード カバレッジは、サポートされていません。
このサンプル デザインで xcrg を表示させるには、エラボレーションでコード カバレッジ オプションを追加します。
- [Settings] ダイアログ ボックスの [Elaboration] タブで、次に示すようにカバレッジ タイプ、カバレッジ ディレクトリ、およびカバレッジ データベース名を追加し、OK をクリックします。 上記の手順の実行後、Tcl コンソールに次のように設定された Tcl コマンドが表示されます。
set_property -name {xsim.elaborate.coverage.name} -value {DB1} -objects [get_filesets sim_adv_mst_active__pt_passive__slv_comb]
set_property -name {xsim.elaborate.coverage.dir} -value {cRun1} -objects [get_filesets sim_adv_mst_active__pt_passive__slv_comb]
set_property -name {xsim.elaborate.coverage.type} -value {sbct} -objects [get_filesets sim_adv_mst_active__pt_passive__slv_comb]
- Tcl コンソールで
close_sim
コマンドを実行し、前に実行していたシミュレーションを閉じます。 - Tcl コンソールで
reset_simulation
コマンドを実行し、シミュレーション ディレクトリを消去します。 - Tcl コンソールで
launch_simulation
コマンドを実行し、シミュレーションを実行します。 - Tcl コンソールで次のコマンドを実行し、現在のカバレッジ データベースをディスクにダンプします。
write_xsim_coverage -cov_db_dir cRun1 -cov_db_name DB1
- Tcl コンソールで次のコマンドを実行し、Vivado シミュレータで生成されたカバレッジ データベースを読み込み、HTML レポートとしてエクスポートします。
export_xsim_coverage -cov_db_name DB1 -cov_db_dir cRun1 -output_dir cReport1 -open_html true
- これで、次の HTML レポートがデフォルトのブラウザーに表示されます。
- 右上の Files をクリックすると、ファイル別の情報 ([File Specific Information]) が表示されます。
- モジュール別の情報 ([Module Specific Information]) を表示させる場合は、右上の Modules をクリックしてください。
- [Module Specific Information] の表のモジュール名 ([Module Name]) の下にある axi_vip_v1_1_15_top_default モジュールをクリックし、statement coverage を選択すると ([Statement] をオンにする)、モジュールのステートメント カバレッジが表示されます。
-
branch coverage を選択すると ([Branch] をオンにする)、モジュールのブランチ カバレッジが表示されます。
- [Condition] をオンにすると、モジュールのコンディション カバレッジが表示されます。
-
toggle coverage を選択すると ([Toggle] をオンにする)、モジュールのトグル カバレッジが表示されます。