インテル® Quartus® Primeプロ・エディションのユーザーガイド: デザイン最適化

ID 683641
日付 9/30/2019
Public
ドキュメント目次

5.5.3.5. コンパイル間のクリティカル・パスをモニタする.tclスクリプト作成のヒント

多くのデザインでは、各コンパイル後に同じクリティカル・パスが表示されます。 他のデザインでは、クリティカル・パスは異なる階層間を行き来し、コンパイルごとに変化します。
この動作は、多くのレジスター間パスのスラックがほとんどない高速デザインで発生します。配置が異なると、周辺パスでタイミングエラーが発生する可能性があります。
  1. プロジェクト・ディレクトリーにTQ_critical_paths.tclという名前のスクリプトを作成します。
  2. 所定のコンパイルであれば、クリティカル・パスを表示し、このクリティカル・パスをキャプチャするために、一般的なreport_timingコマンドをライトします。
    たとえば、低レベルの階層で複数のパスが失敗した場合、次のようなコマンドを追加します。
    report_timing –setup –npaths 50 –detail path_only \
            –to “main_system: main_system_inst|app_cpu:cpu|*” \
            –panel_name “Critical Paths||s: * -> app_cpu”
  3. 他の*count_sync*レジスターへ進むステート・マシンのビットのような特別なパスには、以下のコマンドを追加します。
    report_timing –setup –npaths 50 –detail path_only \
    –from “main_system: main_system_inst|egress_count_sm:egress_inst|update” \
    –to “*count_sync*” –panel_name “Critical Paths||s: egress_sm|update -> count_sync”
  4. コンパイルのたびにTiming Analyzerでこのスクリプトを実行し、新しいクリティカル・パスが表示されたら新しいreport_timingコマンドを追加します。