MMCM、XPLL、または DPLL を使用すると、入力クロックの全体的な特性を変更できます。MMCM は、次のようなクロックの特性を条件付けおよび制御するためによく使用されます。
- 位相をさらに厳しく制御
- クロックのジッターをフィルター
- クロック周波数を変更
- クロックのデューティ サイクルを修正または変更
MMCM、XPLL、または DPLL を使用するには、MMCM が仕様範囲内で動作し、出力に必要なクロック特性を提供できるように、複数の属性を調整する必要があります。このため、AMDでは Clocking Wizard を使用してこのリソースを正しく設定することを強くお勧めします。
MMCM、XPLL、または DPLL を直接インスタンシエートすると、より詳細な制御が可能です。ただし、次のような問題を回避するため、適切な設定を使用してください。
- ジッターの増加によりクロックのばらつきが増加する
- 正しくない位相関係が構築される
- タイミング クロージャが困難になる重要: MMCM または PLL を設定するのに Clocking Wizard を使用すると、デフォルトで Clocking Wizard により妥当な消費電力特性が使用され、出力ジッターが小さくなるよう MMCM が設定されます。
目的によって Clocking Wizard の設定を変更してジッターを最小限に抑えると、消費電力は大きくなりますがタイミングは向上します。消費電力を削減すると、出力ジッターが増加します。
MMCM、XPLL、または DPLL を使用する場合は、次のガイドラインに従ってください。
- 入力を未接続のままにしないでください。合成ツールまたはその他の最適化ツールで未接続の入力が接続されるようにすると、接続される値が必要な値と異なる可能性があるので、推奨されません。
- RST はユーザー ロジックに接続し、信頼性のあるクロック ソースで制御されるロジックでアサートできるようにする必要があります。RST をグランド接続すると、クロックが中断した場合に問題となることがあります。
- リセットのインプリメンテーションに LOCKED 出力を使用します。たとえば、PLL からクロックが供給される同期ロジックは、LOCKED がアサートされるまでリセットのままにします。LOCKED 信号は、デザインの同期部分で使用する前に同期する必要があります。AMDでは、LOCKED 信号をプロセッサ マップに追加し、デバッグするときに表示されるようにすることをお勧めします。
- CLKFBIN および CLKFBOUT 間の接続を確認してください。たとえば BUF_IN 補正モードを使用する際、MMCM 出力クロックの位相を入力クロックに揃える必要がある場合は、BUFG はフィードバック パスにのみ含める必要があります。
- Versal デバイスで同期クロック乗せ換えパスでの MMCM、XPLL、または DPLL 位相エラーによるタイミングへの悪影響を回避するには、最下位レベル分周を使用する MBUFG* プリミティブを使用します。MBUFG* プリミティブを使用できない場合は、複数の CLKOUT ポートからの個別の BUFGCE を使用する代わりに、1 つの CLKOUT ポートからの並列 BUFGCE_DIV を使用することを考慮してください。
推奨:
Clocking Wizard 内でさまざまな設定を試して、全体的なデザイン目標を達成するために最も適切な設定が作成されるようにしてください。