AR# 53083

Vivado タイミング解析 - コンポーネント内のパルス幅の最大スキューに関する問題の原因を突き止める方法(PCIe)

説明

タイミングが満たされていないデザインがあります。

タイミング レポートの「パルス幅」というカテゴリで問題がレポートされています。


問題が起きているクロック名をチェックすると、問題は「最大スキュー」の制限に関しています。

この最大スキューの制限チェックとは何ですか。また問題の原因を突き止めるにはどうしたらよいでしょうか。

ソリューション

スキューは、ネット/信号により駆動されるロードすべての遅延の差です。 

最大スキュー制限チェックとは、BRAM、PCI、GTX などのクリティカル ブロックに対して定義されているパラメーターです。

この値が満たされていない場合は、修正する必要があります。



なぜ最大スキューのタイミング違反が発生しているのかを見極めるには、まず、問題が起きているとレポートされているクロック ツリー パスのトポロジをチェックします。

クロック パスの 1 つは「参照パス」で、もう 1 つのパスのスキューが制限値を超えています。 

 

この 2 つのクロック パスを判別できたら、この 2 つの共通ノード ポイントを見つける必要があります。 

この 2 つのクロックは同じソースから生成されている可能性が高いのです (それぞれ独立しておらず、関係していない場合)。

たとえば、MMCM や PLL といった、共通ポイントがあるはずです。


Vivado では、次のコマンドを実行して、クロック信号パスをトレースすることができます。

report_timing -to [get_pin <full_hierarchy_pin_failing_clock_skew/CLK>]

このコマンドは、入力ポート クロックからデバイスのピンまでの遅延、および共通ノードのクロッキング リソースをレポートします。 

 

両方の入力ピンに対してこのレポートを生成すると、2 つのクロックの最大スキューの差がわかるはずです。 

理想的には、2 つのクロックが枝分かれする共通ポイントまでは、同じであるべきです。



同じソース (MMCM が共通ポイント) から生成されたクロックが 2 つある PCIe を例にとってみましょう。
AR_Max_skew.PNG


参照パス (この場合は MMCM/CLKOU2) と、MMCM/CLKOUT3 から USERCLK までと、USERCLK2 までのパスの遅延差がスキューです。



アンサー レコード リファレンス

関連アンサー レコード

AR# 53083
日付 01/14/2015
ステータス アクティブ
種類 一般
デバイス
ツール