wire CLKIN_IBUFG;
线CLK0_BUF;
导线LOCKED_OUT;导线tx_clk_0;
wire tx_clk_1;
//输入到DCMBUFG BUFG_INST_0(.I(tx_clk_0),. O(CLKIN_IBUFG));
//来自具有LOCKED控制的DCM的输出BUFGCE BUFGCE_INST_0(.O(tx_clk_1),. CE(LOCKED_OUT),. I(CLK0_BUF));
DCM_SP#(。CLK_FEEDBACK(“1X”),. CLKDV_DIVIDE(2.0),. CLKFX_DIVIDE(1),. CLKFX_MUL
tiPLY(4),. CLKIN_DIVIDE_BY_2(“FALSE”),. CLKIN_PERIOD(62.500),. CLKOUT_PHASE_SHIFT(“FIXED”)
,.DESKEW_ADJUST(“SYSTEM_SYNCHRONOUS”),. DFS_FREQUENCY_MODE(“LOW”),. DLL_FREQUENCY_MODE(“LOW”),. DUTY_CYCLE_CORRECTION(“TRUE”),.FACTORY_JF(16'hC080),。PHASE_SHIFT(192),. STARTUP_WAIT(
“FALSE”))DCM_SP_INST(.CLKFB(tx_clk_1),. CLKIN(CLKIN_IBUFG),. DSSEN(0),. PSCLK(0),. PSEN(0),. PSINCDEC(0),. RST(hw_or_sw_reset),.
CLKDV(),. CLKFX(),. CLKFX180(),. CLK0(CLK0_BUF),. CLK2X(),. CLK2X180(),. CLK90(),. CLK180(),. CLK270(),. LOCKED(LOCKED_OUT)
,.PSDONE(),. STATUS());
我正在尝试生成输入时钟的延迟版本。
预期的延迟是270度。
但它似乎不适用于我的董事会。
有人可以告诉我这是否是使用DCM的正确方法?
我不确定我是否在输出缓冲区(BUFGCE)上做得对。
如果这是DCM的正确方法,那么我可以查看我设计的其他部分,以找出问题所在。
谢谢
以上来自于谷歌翻译
以下为原文
wire CLKIN_IBUFG;
wire CLK0_BUF;
wire LOCKED_OUT;
wire tx_clk_0;
wire tx_clk_1;
//input to the DCM
BUFG BUFG_INST_0 (.I(tx_clk_0),
.O(CLKIN_IBUFG));
//output from the DCM with LOCKED control
BUFGCE BUFGCE_INST_0 (
.O (tx_clk_1),
.CE (LOCKED_OUT),
.I (CLK0_BUF));
DCM_SP #( .CLK_FEEDBACK("1X"), .CLKDV_DIVIDE(2.0), .CLKFX_DIVIDE(1),
.CLKFX_MULTIPLY(4), .CLKIN_DIVIDE_BY_2("FALSE"),
.CLKIN_PERIOD(62.500), .CLKOUT_PHASE_SHIFT("FIXED"),
.DESKEW_ADJUST("SYSTEM_SYNCHRONOUS"), .DFS_FREQUENCY_MODE("LOW"),
.DLL_FREQUENCY_MODE("LOW"), .DUTY_CYCLE_CORRECTION("TRUE"),
.FACTORY_JF(16'hC080), .PHASE_SHIFT(192), .STARTUP_WAIT("FALSE") )
DCM_SP_INST
(
.CLKFB(tx_clk_1),
.CLKIN(CLKIN_IBUFG),
.DSSEN(0),
.PSCLK(0),
.PSEN(0),
.PSINCDEC(0),
.RST(hw_or_sw_reset),
.CLKDV(),
.CLKFX(),
.CLKFX180(),
.CLK0(CLK0_BUF),
.CLK2X(),
.CLK2X180(),
.CLK90(),
.CLK180(),
.CLK270(),
.LOCKED(LOCKED_OUT),
.PSDONE(),
.STATUS());
I am trying to generate a delayed version of input clock. The intended delay is 270 degree. But it doesn't seem to work on my board. Could someone tell me if this is the right way of using DCM? I am not sure if I did it right on the output buffer (BUFGCE). If this is the right way of DCM than I can look into other part of my design to figure out what goes wrong.
Thanks