インテルのみ表示可能 — GUID: mwh1410383733918
Ixiasoft
インテルのみ表示可能 — GUID: mwh1410383733918
Ixiasoft
2.2.5.6.2. クロック不確実性
Timing Analyzerは、適用可能な各パスのデータ所要時間からセットアップの不確実性を差し引き、適用可能な各パスのデータ所要時間にホールドの不確実性を追加します。これにより、セットアップがわずかに削減され、各パスのスラックが保持されます。
Timing Analyzerは、クロック間転送の3つのタイプ(クロック内転送、クロック間転送、I/Oインターフェイス・クロック転送)の不確実性クロックの影響を考慮します。
- デバイス内でレジスター間転送が行われ、ソースおよびデスティネーション・クロックが同じPLL出力ピンまたはクロックポートから来ると、クロック内転送が発生します。
- クロック間転送は、デバイスのコアでレジスター間転送が行われ、ソースクロックとデスティネーション・クロックが異なるPLL出力ピンまたはクロックポートから送信されるときに発生します。
- I/Oインターフェイスのクロック転送は、データがI/Oポートからデバイスのコアに、またはデバイスのコアからI/Oポートに転送されるときに発生します。
クロックの不確実性を手動で指定するには、set_clock_uncertaintyコマンドを使用します。セットアップとホールドの不確実性を個別に指定できます。クロックの立ち上がりと立ち下がりの遷移に個別の値を指定することもできます。derive_clock_uncertaintyコマンドが自動的に適用する値をオーバーライドできます。
derived_clock_uncertaintyコマンドは、PLLへの入力のクロックジッターがターゲットデバイスのPLLの入力ジッター仕様内にある場合、PLLクロックジッターを考慮します。 PLLの入力クロックジッターが仕様を超える場合、set_clock_uncertainty -addコマンドで過剰なジッターを考慮して、PLL出力クロックに不確実性を追加します。ジッターの仕様については、デバイスのデバイスハンドブックを参照してください。
また、set_clock_uncertainty -addを使用して、ジッターがデバイスのジッター仕様を超えたときにボードからのピークツーピークジッターを考慮することもできます。この場合、ジッター値の1/2に等しいセットアップとホールドの両方に不確実性を追加します。
set_clock_uncertainty –setup –to <clock name> \
-setup –add <p2p jitter/2>
set_clock_uncertainty –hold –enable_same_physical_edge –to <clock name> \
–add <p2p jitter/2>
Timing Analyzerがderive_clock_uncertaintyおよびset_clock_uncertaintyの値を適用する方法には、.sdcファイル内のコマンドとオプションの順序に依存する複雑な優先ルールのセットがあります。以下のヘルプトピックには、これらのルールの完全な説明が含まれています。次の推奨事項に従うと、これらの優先順位ルールを実装するのが簡単になります。
- クロック転送に独自のクロックの不確かさの値を割り当てるには、.sdcファイルのderive_clock_uncertaintyコマンドの後にset_clock_uncertainty例外を配置します。
- set_clock_uncertaintyに-addオプションを使用する場合、指定する値はderive_clock_uncertaintyの値に加算されます。-addを指定しない場合、指定した値がderive_clock_uncertaintyの値を置き換えます。