ホールド チェック (ホールド関係) は、セットアップ関係と直接関連しています。セットアップ解析は、最悪の見積もり条件でもデータが正しく受信されるかどうかを検証しますが、ホールド関係では次を検証します。
- セットアップ ソース エッジで送信されたデータが、セットアップ デスティネーション エッジの前のアクティブ エッジでキャプチャされない (次の図で H1a および H2a はセットアップ エッジ S1 および S2 に対応)。
- セットアップ ソース エッジの後の次のアクティブ ソース クロック エッジで送信されたデータが、セットアップ デスティネーション エッジでキャプチャされない (次の図で H2a および H2b はセットアップ エッジ S1 および S2 に対応)。
ホールド解析では、2 つのクロック間における最悪の見積もりのホールド関係のみがレポートされます。最悪の見積もりのホールド関係が、ワースト セットアップ関係に関連付けられているとは限りません。タイミング エンジンでは、可能なすべてのセットアップ関係とそれに対応するホールド関係を評価し、最悪の見積もりのホールド関係を特定する必要があります。
セットアップ関係の例と同じパスを例にとってみます。2 つのセットアップ関係があります。
次の図に、セットアップ関係ごとに 2 つのホールド関係があることを示します。
図 1. セットアップ関係ごとのホールド関係
最大ホールド要件は 0 ns で、ソース クロックとデスティネーション クロック両方の最初の立ち上がりエッジに対応します。
パス要件がわかったら、スラックの算出にパス遅延、クロックのばらつき、およびホールド タイムが追加されます。一般的なスラックの式は、次のとおりです。
データ所要時間 (ホールド) = デスティネーション エッジ時間 + デスティネーション クロック パス遅延 + クロックのばらつき + ホールド時間
データ到着時間 (ホールド) = ソース エッジ時間 + ソース クロック パス遅延 + データパス遅延
スラック (ホールド) = データ到着時間 - データ所要時間
これらの式が示すように、所要時間の後に新しいデータが到着すると、ホールド スラックが正になります。
リムーバル チェックはホールド チェックと似ていますが、プリセットやクリアなどの非同期ピンに適用されます。関係はホールドと同様に確立され、スラックの式もホールド タイムの代わりにリムーバル タイムが使用されることを除けば同じです。