タイミング解析では、MMCM/PLL PHASESHIFT_MODE プロパティを設定することにより、クロック位相シフトを 2 つの方法でモデル化できます。
PHASESHIFT_MODE プロパティ | 位相シフトのモデリング | 注記 |
---|---|---|
WAVEFORM | クロック波形の変更 | 位相シフトされたクロックをソースまたはデスティネーションとするクロック乗せ換えパスのタイミング パスを調整するため、通常 set_multicycle_path
–setup 制約が必要です。 |
LATENCY | MMCM/PLL 挿入遅延 | 追加のマルチサイクル パス制約は不要です。 |
デフォルトの MMCM/PLL クロック位相シフト モードは、ザイリンクス FPGA ファミリによって異なります。クロック位相シフト モードは、PLL/MMCM ごとにユーザーが設定できます。
テクノロジ | デフォルトの MMCM/PLL クロック位相シフト処理 |
---|---|
7 シリーズ | クロック波形の変更 (WAVEFORM) |
UltraScale™ | クロック波形の変更 (WAVEFORM) |
UltraScale+™ | MMCM/PLL 挿入遅延 (LATENCY) |
Versal® ACAP | MMCM/PLL 挿入遅延 (LATENCY) |
CLKOUTx
ピンのいずれかで定義され、複数のクロックが MMCM/PLL の入力に接続される場合、PHASESHIFT_MODE=LATENCY は無効になり、「Warning Timing 38-437」警告メッセージが表示されます。その場合、MMCM/PLL は PHASESHIFT_MODE=WAVEFORM モードを使用するよう設定する必要があります。タイミングを満たすために 2 つのクロック間にスキューを追加する際、PHASESHIFT_MODE=LATENCY を使用すると特に便利です。クロック位相シフトを負の値、ヌル、または正の値に設定する際、タイミング パス要件を調整するためにマルチサイクル パス制約を追加する必要はありません。
7 シリーズまたは UltraScale から UltraScale+ に移行したレガシ デザインの場合、PHASESHIFT_MODE プロパティが MMCM/PLL に設定されていないと、デフォルト ビヘイビアーが適用され、MMCM/PLL クロック位相シフトはクロック エッジ シフトではなく、遅延レイテンシとしてモデル化されます。この場合、クロック位相シフト用にレガシ デザインで指定されていたすべてのマルチサイクル パス制約を見直し、通常は削除する必要があります。そのような制約は、設計手法チェック (report_methodology
) を実行すると簡単に特定できます。TIMING-31 は、位相がシフトされたクロックと、PHASESHIFT_MODE
を LATENCY
に設定して MMCM/PLL で生成されているクロックとの間のパスにあるマルチサイクル パスをレポートします。
Clocking Wizard および High Speed SelectIO Wizard のどちらにも、各 MMCM/PLL でクロック位相シフトのモデル化を強制するオプションがあります。PHASESHIFT_MODE プロパティは自動的に IP XDC に保存されます。