インプリメンテーションのいずれかの手順の後に、report_timing
、report_timing_summary
、または report_design_analysis
を使用してタイミング結果を解析する際は、クリティカル パスの構造を確認して、RTL を変更、合成属性を使用、または異なる合成オプションを使用することにより、これらのパスをより効率的にロジック プリミティブにマップできるかどうかを調べる必要があります。ロジック段数の多いパスの場合は、インプリメンテーション ツールに負荷がかかり、全体的なデザイン パフォーマンスが制限されるので、これは特に重要です。
クリティカル パスのロジック段数が多い場合は、そのパスの機能にそれほど多くの段数が必要なのかを見直します。最適なロジック段数を判断するには、デザインに対する知識と RTL 最適化に関する知識が必要なため、簡単ではありません。合成後の最適化済みネットリストを見て、問題の原因となっている RTL の部分を特定して改善するのは、複雑な作業です。
プロジェクト モードでは、Vivado IDE で提供されている合成済みまたはインプリメント済みデザインと、エラボレート済みデザインの間のクロスプローブ機能を使用すると、解析しやすくなります。合成済み/インプリメント済みデザインとエラボレート済みデザインの間でクロスプローブするには、次を実行します。
- 合成済み/インプリメント済みデザインとエラボレート済みデザインの両方をメモリで開きます。
- 合成済み/インプリメント済みデザインでタイミング パスを選択し、F4 キーを押して回路図を表示します。
- Flow Navigator で [Elaborated Design] をクリックします。タイミング パスに対応する RTL セルも選択されているので、F4 キーを押して RTL 回路図を開き、同じパスをエラボレート済みビューで表示して、終点のピンから始点のセルにたどることができます。
- パス上にある RTL ロジック、特にその演算子またはベクターのサイズを確認します。