UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 14425

Virtex-II/-II Pro/-4/-5 FPGA DCM - DCM が外部または内部フィードバックでコンフィギュレーションされている場合のコンフィギュレーション後のリセットの推奨 (VHDL/Verilog)

説明

DCM が外部または内部フィードバックでコンフィギュレーションされている場合、一定したロックが行われるようにするため、生産デバイスおよびエンジニアリング サンプル デバイスの両方で、コンフィギュレーション後にリセットを行うことを推奨します。このアンサーは、Virtex-II、Virtex-II Pro、Virtex-4、および Virtex-5 デバイスに適用されます。

この推奨理由と VHDL/Verilog コードのサンプルを次に示します。

ソリューション

外部フィードバック コンフィギュレーション

最適なロック プロセスが行われるようにするため、外部フィードバックを使用する DCM には、ロック プロセスを開始する際に安定した CLKIN と CLKFB が必要です。外部フィードバックがあるコンフィギュレーション中には、ロック プロセスの開始時に CLKFB を供給することはできません。コンフィギュレーションの最後に、デバイスがスタートアップ シーケンスを開始すると、DCM はロックを開始します。この時点では GTS 信号がまだアサートされているため、出力 I/O ピンはトライステート状態で、CLKFB 信号がトライステートになります。

GTS のディアサート後 CLKFB が現れるときに、DCM がロックされます。ただし、DCM が最適なポイントでロックされず、ジッタおよびクロック サイクルのレイテンシが増加する可能性があります。

また CLKFB がトライステート (PCB シグナル インテグリティの問題) になるときに別の信号とカップリングされる場合は、DCM でこの無効なクロックが CLKFB として識別されて、ロックに使用される場合があります。この場合、GTS がディアサートされ、本来の CLKFB 信号が現れたときに、DCM が正しくロックされない可能性もあります。コンフィギュレーション後にリセットを行うと、このロック プロセスが有効な CLKIN および CLKFB 信号で開始することが保証され、一定したロックが行われます。

内部フィードバック コンフィギュレーション

内部クロック オシレータでコンフィギュレーション中の安定を保証できず、フィードバックが内部の場合は、コンフィギュレーション後にリセットして正しいロックが発生することを確認する必要があります。

メモ :

- BitGen オプションなどを使用してスタートアップ シーケンスを変更する場合は、LCK_cycle (DCM がロック状態になるまで待機) を GTS_cycle (GTS をディアサート) の前に配置しないでください。配置すると、DCM がロックせず、コンフィギュレーションが完了しません。
- デフォルト値は ''-g LCK_cycle:NoWait'' および ''-g GTS_cycle:5'' です。この設定では、スタートアップ シーケンスで DCM がロックするまで待機することはありません。
- 外部フィードバックでは、BitGen オプションで GTS_cycle を GWE_cycle の前に設定する必要があります (これはデフォルトです)。これで、DCM が I/O ピンがアクティブにされた後にリセットされます。
- Virtex-4 デバイスを使用している場合は、200ms のリセット要件を満たすようにしてください。詳細は (ザイリンクス アンサー 21127) を参照してください。

Verilog の例 :

// DCM instantiation to show the reset connection
DCM u_dcm1 (.CLKIN(clkin),
.CLKFB(clkfb),
.CLK0(clk0),
.RST(rstin),
.LOCKED(locked));

// rstin connects to RST pin of DCM
assign rstin = (user_reset || config_rst);

// This is the actual reset circuit that outputs config_rst. It is a four-cycle shift register.
FDS flop1 (.D(1'b0), .C(clkin), .Q(out1), .S(1'b0));
FD flop2 (.D(out1), .C(clkin), .Q(out2));
FD flop3 (.D(out2), .C(clkin), .Q(out3));
FD flop4 (.D(out3), .C(clkin), .Q(out4));

//config_rst will be asserted for 3 clock cycles.
assign config_rst = (out2 | out3 | out4);

VHDL の例 :

-- DCM instantiation to show the reset connection
u_dcm1: DCM port map (
CLKIN => clkin,
CLKFB => clkfb,
CLK0 => clk0,
RST => rstin,
LOCKED => locked);

-- rstin connects to RST pin of DCM
rstin <= user_reset or config_rst;

-- This is the actual reset circuit that outputs config_rst. It is a four-cycle shift register.
flop1: FDS port map (D => '0', C => clkin, Q => out1, S => '0');
flop2: FD port map (D => out1, C => clkin, Q => out2);
flop3: FD port map (D => out2, C => clkin, Q => out3);
flop4: FD port map (D => out3, C => clkin, Q => out4);

-- config_rst will be asserted for 3 clock cycles.
config_rst <= out2 or out3 or out4;

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

関連アンサー レコード

AR# 14425
日付 12/15/2012
ステータス アクティブ
種類 一般
デバイス
  • Virtex-II
  • Virtex-II Pro
  • Virtex-II Pro X
  • More
  • Virtex-II QPro/R
  • Virtex-5QV
  • Virtex-5 FXT
  • Virtex-5 LX
  • Virtex-5 LXT
  • Virtex-5 SXT
  • Virtex-5 TXT
  • Virtex-5Q
  • Virtex-4 QPro/R
  • Virtex-4 SX
  • Virtex-4 FX
  • Virtex-4 LX
  • Less
IP
  • Digital Clock Manager (DCM) Module
このページをブックマークに追加