除外設定のレポート - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: デザイン解析およびクロージャ テクニック (UG906)

Document ID
UG906
Release Date
2023-10-19
Version
2023.2 日本語

除外設定した違反のみが除外されるかどうかを確認することをお勧めします。これは、除外設定の定義後、最終的なビットストリームよりも前に確認する必要があります。

[Report CDC]、[Report DRC]、および [Report Methodology] コマンドでは、複数のレポート モードがサポートされます。

  • デフォルトでは、report_cdcreport_drc、および report_methodology コマンドでは、除外設定されていない違反のみがレポートされます。
  • -waived を使用すると、report_cdcreport_drc、および report_methodology コマンドで除外設定された違反のみがレポートされます。このレポートで、除外設定されたすべての違反が意図どおりになっているかどうかを確認する必要があります。
  • -no_waiver を使用すると、report_cdcreport_drc、および report_methodology コマンドが除外設定なしで実行されます。このモードでは、除外設定の有無に関係なくすべての違反がレポートされます。

この 3 つのレポート モードは、コマンド ラインおよび GUI のレポート関連のダイアログ ボックスから指定できます。次の [Report DRC] ダイアログ ボックス図の [Waivers] セクションの下で、これらのレポート モードが選択できるようになっています。同じ [Waivers] セクションは、[Report CDC] および [Report Methodology] ダイアログ ボックスにも表示されます。

図 1. 除外設定のレポート モード

CDC、DRC、および Methodology の GUI の結果ウィンドウでは、除外設定された違反が含まれている場合、違反の前にアイコンが表示され、ウィンドウ名に除外設定された違反の数が含まれます。

注記: 除外設定は、CDC、DRC、および Methodology 違反を示すウィンドウからは作成できません。

次のウィンドウ例は、2 つの除外設定された違反を含む DRC が 2 つ含まれているところを示しています。

図 2. 除外設定された DRC 違反

すべての除外設定と除外された違反のレポートのサマリは、report_waivers コマンドで取得できます。レポートは、Tcl コンソールからのみ使用できます。

report_waivers では、report_cdcreport_drc、および report_methodology コマンドで抽出された統計のみがレポートされます。正確な統計を取得するには、report_waivers よりも前、および除外設定が変更 (追加または削除) されるよりも前に、report_cdcreport_drc、および report_methodology を実行する必要があります。統計は、レポートがコマンド ラインから実行されるか GUI から実行されるかに関係なくアップデートされます。アップデートされた統計を取得できない場合、CDC、DRC、または Methodology 情報のどれが古くなっているかによって、report_waivers で次のようなメッセージが表示されます。

WARNING: [Vivado_Tcl 4-972] Waiver counts for 'CDC' will be invalid because 
report_cdc has not been run since waivers were changed; please run the report_cdc 
command.
WARNING: [Vivado_Tcl 4-972] Waiver counts for 'DRC' will be invalid because 
report_drc has not been run since waivers were changed; please run the report_drc 
command.
WARNING: [Vivado_Tcl 4-972] Waiver counts for 'METHODOLOGY' will be invalid because 
report_methodology has not been run since waivers were changed; please run the 
report_methodology command.

report_waivers からのレポートには、サマリの表と、CDC、DRC、および Methodology 除外設定別の詳細な表が含まれます。表には、次の列があります。

  • [Total Vios]: 除外設定を適用する前の違反の総数。つまり、除外設定のない場合にレポートされる違反数です。終点の数は複数ビットのルールによって変わります。
  • [Remaining Vios]: 除外設定適用後の違反数。違反に除外設定がない場合、この数は [Total Vios] と同じになります。終点の数は複数ビットのルールによって変わります。
  • [Waived Vios]: 除外設定された違反数。違反が除外設定されていない場合、この数は 0 になります。終点の数は複数ビットのルールによって変わります。
  • [Used Waivers]: 違反を除外した除外設定の数。パターンやワイルドカードを含む場合は、1 つの除外設定で複数の違反を除外できます。
  • [Set Waivers]: デザインに適用された除外設定の数。[Used Waivers] と [Set Waivers] の数は同じであるのが理想的です。除外設定が定義されていても、どの違反とも一致しなければ、これらの数は同じになりません。

デフォルトでは、定義された除外設定が複数あるルールのみが詳細な表にレポートされます。ただし、最初のサマリの表には、デザイン内のすべての違反がレポートされます。

図 3. report_waivers のデフォルトのレポート

-show_msgs_with_no_waivers コマンド ライン オプションを使用すると、その特定のルールに対する除外設定が存在するかどうかに関係なく、違反のあったチェックすべてが詳細な表にレポートされます。

図 4. report_waivers -show_msgs_with_no_waivers

上記のレポートに加えて、report_waivers では、CDC、DRC、または Methodology 違反に一致する除外設定と、どの違反にも一致しない除外設定のリストがエクスポートできます。-write_valid_waivers オプションを使用すると、違反と一致した除外設定が、 -write_ignore_waivers オプションを使用すると、どの違反にも一致しなかった除外設定がエクスポートできます。どの違反にも一致しなかった除外設定のリストは、確認しておくことをお勧めします。このような除外設定がないはずの場合は、除外設定が正しく定義されているかどうかを確認してください。

-write_valid_waivers および -write_ignore_waivers オプションでは、一番最近の report_cdcreport_drc、および report_methodology コマンドの実行でレポートされた情報に基づいて除外設定がフィルターされます。report_drc または report_methodology がルール チェックまたはチェックのサブセットを指定して実行される場合、除外設定の中に実行されていないチェックを無視するものがあります。 -write_valid_waivers および -write_ignore_waivers を使用する前に DRC/Methodology チェックすべてを実行することをお勧めします。次に例を示します。

report_cdc -all_checks_per_endpoint
report_drc -checks [get_drc_checks]
report_methodology -checks [get_methodology_checks]
report_waivers -write_valid_waivers -file waivers_valid.xdc
report_waivers -write_ignored_waivers -file waivers_ignored.xdc