AR# 11936

Virtex-II - DCM 位相シフトの精度および位相シフトへの影響

説明

キーワード : tap, shifter, delay, resolution, タップ, シフタ, 遅延, 精度

DCM 位相シフトの最小精度はいくらですか。
特定の周波数での最小位相シフトはいくらですか。
また、これらの値はデザインの位相シフトにどのように影響しますか。

ソリューション

最小精度は、 次の 2 つのうち大きい方の値となります。

1. 位相シフトの最小ステップ サイズ = 1/256 x CLKIN_Period
2. タップ遅延精度 (DCM_TAP)。DCM_TAP_MIN および DCM_TAP_MAX の仕様は、次のページから Virtex-II のデータシートの「Miscellaneous Timing Parameters」セクションを参照してください。http://japan.xilinx.com/support/documentation/virtex-ii.htm

約 90MHz (周期 11.11ns) で動作する 45ps の通常の DCM_TAP の場合、1/256 x CLKIN_Period は約 45ps となります。

1. 周波数が約 90MHz 未満の場合、1/256 x CLKIN_Period は 45ps より大きくなるため、最小ステップ サイズは上記の #1 に限定されます。
2. 周波数が約 90MHz より大きい場合、1/256 x CLKIN_Period は 45ps 未満になるため、最小ステップ サイズは上記の #2 に限定されます。

90MHz 以上の周波数での位相シフト

CLKIN の周波数にかかわらず、PHASE_SHIFT (PS) の値は次の式で決定されます。

位相シフト = (PS/256) x (CLKIN 周期)

この PS 値から、DCM の DPS 機能により適切なタップ設定が選択されます。タップ設定は、プロセス、電圧、温度 (PVT) によって異なります。

たとえば、CLKIN = 150MHz (周期 6.67ns) で、必要な位相シフトが 680ps の場合、PS の値は次のようになります。

0.680 = PS/256 * 6.67
PS = 26

この値を PHASE_SHIFT 値として入力します。

DCM_TAP = 約 45ps は、概算値に過ぎません。実際のタップ値は、30ps ~ 60ps の範囲内で PVT によって異なります。そのため、10 タップ ステップは必ずしも 10 x 45ps = 450ps ではありません。さらに、1/256 x CLK_Period が DCM_TAP 以下の場合、1/256 は 1 タップと等しくないため、DCM で新しい位相シフトが 1/256 のインクリメントで調整されない可能性があります。

たとえば、PS 値を 3 から 4 に変更するとき、PVT で次のタップと比較して現在の位相シフトの方がその値に近い場合、DCM で位相シフトが増加されない場合があります。

DCM では PHASE_SHIFT 属性値に応じた最も近い位相シフト量が使用されることに注意してください。CLK0 を使用する単純なケースの PHASE_SHIFT のエラーは、CLKOUT_PER_JITT_0 + CLKIN_CLKFB_PHASE となります。これらの値は、Virtex-II データシート (http://japan.xilinx.com/support/documentation/virtex-ii.htm) で指定されています。

DCM_TAP 値は、出力ジッタ仕様に DCM および FPGA により発生するランダム ジッタと共に含まれています。FIXED 位相シフトを使用すると、必要な位相シフトの 5 ~ 10% 以内になります。より高い精度が要求される場合は、VARIABLE モードを使用して調整してください。
AR# 11936
日付 12/15/2012
ステータス アクティブ
種類 一般