在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: xylion

[求助] Spartan 3AN DCM原语使用的问题

[复制链接]
 楼主| 发表于 2016-5-16 18:24:28 | 显示全部楼层
回复 10# atomdust


   Spartan3AN,xcs700AN,FGG484
发表于 2016-5-16 18:35:36 | 显示全部楼层
回复 11# xylion

可以的,用这个: 2222.jpg
生成的.v文件为:
module clk4out(CLKIN_IN,
               RST_IN,
               CLKFX_OUT,
               CLKIN_IBUFG_OUT,
               CLK0_OUT,
               LOCKED_OUT);

    input CLKIN_IN;
    input RST_IN;
   output CLKFX_OUT;
   output CLKIN_IBUFG_OUT;
   output CLK0_OUT;
   output LOCKED_OUT;

   wire CLKFB_IN;
   wire CLKFX_BUF;
   wire CLKIN_IBUFG;
   wire CLK0_BUF;
   wire GND_BIT;

   assign GND_BIT = 0;
   assign CLKIN_IBUFG_OUT = CLKIN_IBUFG;
   assign CLK0_OUT = CLKFB_IN;
   BUFG  CLKFX_BUFG_INST (.I(CLKFX_BUF),
                         .O(CLKFX_OUT));
   IBUFG  CLKIN_IBUFG_INST (.I(CLKIN_IN),
                           .O(CLKIN_IBUFG));
   BUFG  CLK0_BUFG_INST (.I(CLK0_BUF),
                        .O(CLKFB_IN));
   DCM_SP #( .CLK_FEEDBACK("1X"), .CLKDV_DIVIDE(2.0), .CLKFX_DIVIDE(1),
         .CLKFX_MULTIPLY(4), .CLKIN_DIVIDE_BY_2("FALSE"),
         .CLKIN_PERIOD(20.000), .CLKOUT_PHASE_SHIFT("NONE"),
         .DESKEW_ADJUST("SYSTEM_SYNCHRONOUS"), .DFS_FREQUENCY_MODE("LOW"),
         .DLL_FREQUENCY_MODE("LOW"), .DUTY_CYCLE_CORRECTION("TRUE"),
         .FACTORY_JF(16'hC080), .PHASE_SHIFT(0), .STARTUP_WAIT("FALSE") )
         DCM_SP_INST (.CLKFB(CLKFB_IN),
                       .CLKIN(CLKIN_IBUFG),
                       .DSSEN(GND_BIT),
                       .PSCLK(GND_BIT),
                       .PSEN(GND_BIT),
                       .PSINCDEC(GND_BIT),
                       .RST(RST_IN),
                       .CLKDV(),
                       .CLKFX(CLKFX_BUF),
                       .CLKFX180(),
                       .CLK0(CLK0_BUF),
                       .CLK2X(),
                       .CLK2X180(),
                       .CLK90(),
                       .CLK180(),
                       .CLK270(),
                       .LOCKED(LOCKED_OUT),
                       .PSDONE(),
                       .STATUS());
endmodule
直接把这个.v文件例化到你的设计中。
 楼主| 发表于 2016-5-16 20:00:14 | 显示全部楼层
回复 12# atomdust

感谢您细心耐心的回复,顺便问一下,1.“ LOCKED_OUT”信号究竟有什么用啊,是不是不需要也行,2.实际中,我只需要输出CLKFX_OUT就够了,其他输出就不用实例化了吧?
发表于 2016-5-16 23:12:31 | 显示全部楼层
lockedout信号是时钟锁定,当输出时钟稳定后,这个信号拉高,可以把这个信号当做你的系统复位。
就按着生成的模块例化,不用的信号放在那不用就是了。
 楼主| 发表于 2016-5-17 09:09:05 | 显示全部楼层
回复 14# atomdust

懂了,LOCKED_OUT就是用来观察输出时钟稳定了没有。再次感谢您的耐心回答,很受用!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-1-31 01:24 , Processed in 0.016507 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表