第 3 章 : デザイン エレメント
第 3 章 : デ ザ イ ン エ レ メ ン ト
ポート名 タイプ 幅 機能
PROGDATA 入力 1 DCM の M (逓倍) および/または D (分周) 値の再プログラム用デー タを供給するシリアル データ入力。 この入力は、PROGCLK 入力 に同期させる必要があります。
PROGDONE 出力 1 M または D 値の再プログラミングが正しく完了したことを示すアク
ティブ High 出力
PROGEN 入力 1 M/D 値を再プログラムする アクティブ High のイネーブル入力。 この
入力は、PROGCLK 入力に同期させる必要があります。
RST 入力 1 DCM 回路をリセットします。 RST 信号は、アクティブ High の非同
期リセットです。 RST 信号をアサートすると、すべての DCM 出力 (LOCKED 信号、ステータス信号、出力クロック) が ソース クロックの 4 サイクル以内に Low になります。 リセットは非同期であるため、ディア サート中にクロックの最後のサイクルが短いパルスになったり、デュー ティ サイクルが崩れたり、クロック間のスキューが調整されなる可能性 があります。 このため、デバイスをリコンフィギュレーションする場合や は入力周波数を変更する場合は、RST ピンを使用する必要がありま す。 RST 信号をディアサートすると、次の CLKIN サイクルに同期して クロックをロック状態にするプロセスが開始します。 DCM がリセット後 に正しくロックされるようにするには、CLKIN 信号が供給され、3 クロッ ク サイクル以上安定するまで RST 信号をディアサートしておく必要が あります。 どのデザインでも、クロックが安定するまで DCM をリセット に保持する必要があります。 コンフィギュレーションでは、GWE が解 除されるまで DCM は自動的にリセット状態に保持されます。 GSR が 解除されたときにクロックが安定していれば、コンフィギュレーション 後に DCM をリセットする必要はありません。
STATUS[2:1] 出力 2 クロック ステータス出力
• STATUS[1] : CLKIN の停止
• STATUS[2] : CLKFX または CLKFX180 の停止
デザインの入力方法
インスタンシエーション 可
推論 不可
CORE Generator™ およびウィザード 推奨
マクロのサポート 不可
使用可能な属性
属性 タイプ 値 デフォルト 説明
CLKFX_DIVIDE 整数 1 ~ 256 1 この値と入力周波数および
CLKFX_MULTIPLY の値を組み合わ せて、CLKFX および CLKFX180 の 出力周波数が決定されます。
CLKFXDV_DIVIDE 整数 2、4、8、16、32 2 CLKFXDV の分周値を指定します。
CLKFX_MD_MAX 3 上位ビット浮 動小数点
0.000 ~ 256.000
0.000 DCM_CLKGEN を変数 M および D 値で使用するとき、スタティック タイミ ング解析中に使用する M と D の最 大比率を指定します。
第 3 章 : デザイン エレメント
属性 タイプ 値 デフォルト 説明
CLKFX_MULTIPLY 整数 2 ~ 256 4 この値と入力周波数および
CLKFX_DIVIDE の値を組み合わせ て、CLKFX および CLKFX180 の出 力周波数が決定されます。
CLKIN_PERIOD 文字列 0 ビット文字列 “10.0” CLKFX/CLKFX180 出力のために DCM の調整を補助しロックにかかる 時間を短縮するために使用するソー ス クロックの周期を指定します。
DFS_BANDWIDTH 文字列 OPTIMIZED、
HIGH、
LOW
OPTIMIZED プロセス、電圧、温度 (PVT) に対す る DCM の周波数調整バンド幅を指 定します。
PROG_MD_BANDWIDTH 文字列 OPTIMIZED、
HIGH、
LOW
OPTIMIZED M および D 値のプログラミング変更 に対する DCM の周波数調整バンド 幅を指定します。
SPREAD_SPECTRUM 文字列 NONE, CENTER_
LOW_SPREAD 、 CENTER_HIGH_
SPREAD 、 VIDEO_LINK_M0、
VIDEO_LINK_M1、
VIDEO_LINK_M2
NONE スペクトラム拡散でサポートされるモー ドを指定します。 周波数ホッピングを 実現するには、適切な IP と共に使用 する必要があります。
固 定 ス ペ ク ト ラ ム 拡 散 (CENTER_LOW_SPREAD 、
CENTER_HIGH_SPREAD) またはソフト スペクトラム拡散 (VIDEO_LINK_M0、
VIDEO_LINK_M1、VIDEO_LINK_) で 使用されます。 ソフト スペクトラム拡 散は、ソフト スペクトラム拡散リファレ ンス デザインと共に使用する必要が あります。
STARTUP_WAIT ブール代数 FALSE、TRUE FALSE コンフィギュレーション DONE 信号を DCM LOCKED 信号が High になる まで遅らせます。
VHDL 記述 (インスタンシエーション)
次の 2 つの構文が存在しない場合はコピーし、エンティティ宣言の前に貼り付けます。
Library UNISIM;
use UNISIM.vcomponents.all;
-- DCM_CLKGEN: Frequency Aligned Digital Clock Manager
-- Spartan-6
-- Xilinx HDL Libraries Guide, version 12.2 DCM_CLKGEN_inst : DCM_CLKGEN
generic map (
CLKFXDV_DIVIDE => 2, -- CLKFXDV divide value (2, 4, 8, 16, 32) CLKFX_DIVIDE => 1, -- Divide value - D - (1-256)
CLKFX_MD_MAX => 0.0, -- Specify maximum M/D ratio for timing anlysis CLKFX_MULTIPLY => 4, -- Multiply value - M - (2-256)
CLKIN_PERIOD => 0.0, -- Input clock period specified in nS
SPREAD_SPECTRUM => "NONE", -- Spread Spectrum mode "NONE", "CENTER_LOW_SPREAD", "CENTER_HIGH_SPREAD", -- "VIDEO_LINK_M0", "VIDEO_LINK_M1" or "VIDEO_LINK_M2"
STARTUP_WAIT => FALSE -- Delay config DONE until DCM LOCKED (TRUE/FALSE) )
port map (
CLKFX => CLKFX, -- 1-bit Generated clock output
第 3 章 : デ ザ イ ン エ レ メ ン ト
CLKFX180 => CLKFX180, -- 1-bit Generated clock output 180 degree out of phase from CLKFX.
CLKFXDV => CLKFXDV, -- 1-bit Divided clock output LOCKED => LOCKED, -- 1-bit Locked output
PROGDONE => PROGDONE, -- 1-bit Active high output to indicate the successful re-programming STATUS => STATUS, -- 2-bit DCM status
CLKIN => CLKIN, -- 1-bit Input clock
FREEZEDCM => FREEZEDCM, -- 1-bit Prevents frequency adjustments to input clock PROGCLK => PROGCLK, -- 1-bit Clock input for M/D reconfiguration
PROGDATA => PROGDATA, -- 1-bit Serial data input for M/D reconfiguration PROGEN => PROGEN, -- 1-bit Active high program enable
RST => RST -- 1-bit Reset input pin );
-- End of DCM_CLKGEN_inst instantiation
Verilog 記述 (インスタンシエーション)
次の 2 つの構文が存在しない場合はコピーし、エンティティ宣言の前に貼り付けます。
Library UNISIM;
use UNISIM.vcomponents.all;
-- DCM_CLKGEN: Frequency Aligned Digital Clock Manager
-- Spartan-6
-- Xilinx HDL Libraries Guide, version 12.2 DCM_CLKGEN_inst : DCM_CLKGEN
generic map (
CLKFXDV_DIVIDE => 2, -- CLKFXDV divide value (2, 4, 8, 16, 32) CLKFX_DIVIDE => 1, -- Divide value - D - (1-256)
CLKFX_MD_MAX => 0.0, -- Specify maximum M/D ratio for timing anlysis CLKFX_MULTIPLY => 4, -- Multiply value - M - (2-256)
CLKIN_PERIOD => 0.0, -- Input clock period specified in nS
SPREAD_SPECTRUM => "NONE", -- Spread Spectrum mode "NONE", "CENTER_LOW_SPREAD", "CENTER_HIGH_SPREAD", -- "VIDEO_LINK_M0", "VIDEO_LINK_M1" or "VIDEO_LINK_M2"
STARTUP_WAIT => FALSE -- Delay config DONE until DCM LOCKED (TRUE/FALSE) )
port map (
CLKFX => CLKFX, -- 1-bit Generated clock output
CLKFX180 => CLKFX180, -- 1-bit Generated clock output 180 degree out of phase from CLKFX.
CLKFXDV => CLKFXDV, -- 1-bit Divided clock output LOCKED => LOCKED, -- 1-bit Locked output
PROGDONE => PROGDONE, -- 1-bit Active high output to indicate the successful re-programming STATUS => STATUS, -- 2-bit DCM status
CLKIN => CLKIN, -- 1-bit Input clock
FREEZEDCM => FREEZEDCM, -- 1-bit Prevents frequency adjustments to input clock PROGCLK => PROGCLK, -- 1-bit Clock input for M/D reconfiguration
PROGDATA => PROGDATA, -- 1-bit Serial data input for M/D reconfiguration PROGEN => PROGEN, -- 1-bit Active high program enable
RST => RST -- 1-bit Reset input pin );
-- End of DCM_CLKGEN_inst instantiation
詳細情報
•
Spartan-6 FPGA クロック リソース ユーザー ガイド•
Spartan-6 FPGA データシート : DC 特性およびスイッチ特性第 3 章 : デザイン エレメント