一般的なタイミング パス レポートには、ルートからシーケンシャル セルのクロック ピンまでの、ソースおよびデスティネーション クロック パスの遅延の詳細が示されます。次に説明するように、ソースおよびデスティネーション クロックは、共通回路上であっても、異なる遅延で解析されます。
共通部分のこの遅延差により、スキュー算出における見積もりがさらに悪くなります。非現実的なスラックが算出されないようにするため、この不必要に悪い見積もり部分が Clock Pessimism Removal (CPR) 値と呼ばれる遅延により補正されます。
Clock Pessimism Removal (CPR) = common clock circuitry (max delay - min delay)
CPR は、実行する解析のタイプによって、スキューに足されるか、スキューから引かれます。
- 最大遅延解析 (セットアップ/リカバリ)
CPR はデスティネーション クロック パス遅延に足されます。
- 最小遅延解析 (ホールド/リムーバル)
CPR はデスティネーション クロック パス遅延から引かれます。
Vivado Design Suite では、各タイミング パスのクロック スキューが次のようにレポートされます (この場合はホールド解析)。
- DCD: デスティネーション クロック遅延
- SCD: ソース クロック遅延
- CPR: Clock Pessimism Removal
Clock Path Skew: 0.301ns (DCD - SCD - CPR) Destination Clock Delay (DCD): 2.581ns Source Clock Delay (SCD): 2.133ns Clock Pessimism Removal (CPR): 0.147ns
多くの場合、CPR の精度は配線の前後で変わります。たとえば、ソース クロックとデスティネーション クロックが同じで、始点クロック ピンと終点クロック ピンが同じクロック バッファーで駆動されるタイミング パスがあるとします。
配線前は、共通点はクロック ネット ドライバー (クロック バッファーの出力ピン) です。CPR は、クロック ルートからクロック バッファーの出力ピンまでの不必要に悪い見積もり部分のみを補正します。
配線後は、共通点はデバイス アーキテクチャのソース クロック パスとデスティネーション クロック パスで共有される最後の配線リソースです。この共通点はネットリストには表されないので、タイミング レポートから共通クロック回路の遅延差を減算することにより対応する CPR を直接求めることはできません。タイミング エンジンは、ユーザーが直接アクセスできないデバイス情報に基づいて CPR 値を算出します。