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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2960|回复: 7

[求助] 关于ISE14.7 时钟IP核使用 输出时钟恒为0

[复制链接]
发表于 2019-1-15 15:39:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
FPGA:Kintex7, 输入为差分时钟 200M
ip 核实例
      myclc_test instance_name
   (// Clock in ports
    .CLK_IN1_P(clk_in_p),    // IN
    .CLK_IN1_N(clk_in_n),    // IN
    // Clock out ports
    .CLK_OUT1(CLK_OUT1),     // OUT
    // Status and control signals
    .RESET(rst),// IN
    .LOCKED(rst_n));      // OUT

UCF约束
   时序约束
NET "clk_in_p" TNM_NET = "clk_in_p";
TIMESPEC "TS_clk_in_p" = PERIOD : "clk_in_p" : 5.000 ns HIGH 50.0%;
管脚约束
NET "clk_in_p"   LOC="AA3" |IOSTANDARD=DIFF_SSTL15;
NET "clk_in_n"   LOC="AA2" |IOSTANDARD=DIFF_SSTL15;

结果  CLK_OUT1恒为零
请问原因何在?
发表于 2019-1-15 16:08:24 | 显示全部楼层
thanks
发表于 2019-1-17 19:31:33 | 显示全部楼层
不知楼主是不是在做仿真,如果做仿真请把仿真文件贴出来,光写约束没用呀
 楼主| 发表于 2019-1-22 10:14:02 | 显示全部楼层
回复 3# vegetablebirds
不是做仿真,仿真的时候可以出信号,下载到板子上就没有信号了 这是时钟IP核的实例化代码
      my_clc instance_name
   (// Clock in ports
    .CLK_IN1_P(clk_in_p),    // IN
    .CLK_IN1_N(clk_in_n),    // IN
    // Clock out ports
    .CLK_OUT1(CLK_OUT1),     // OUT
    // Status and control signals
    .RESET(my_clc_rst),// IN
    .LOCKED(rst_n));      // OUT
发表于 2019-1-23 14:05:57 | 显示全部楼层
差分时钟要自己手动添加DCI。先使用原语IBUFGDS,再串接BUFG,然后接MMCM里面
发表于 2019-1-23 14:36:31 | 显示全部楼层
myclc_test是锁相环吗?检查是不是锁相环被复位了
 楼主| 发表于 2019-1-24 14:58:04 | 显示全部楼层
回复 5# sonson2008
用的是ip核,您看一下
module my_clc
(// Clock in ports
  input         CLK_IN1_P,
  input         CLK_IN1_N,
  // Clock out ports
  output        CLK_OUT1,
  // Status and control signals
  input         RESET,
  output        LOCKED
);

  // Input buffering
  //------------------------------------
  IBUFGDS clkin1_buf
   (.O  (clkin1),
    .I  (CLK_IN1_P),
    .IB (CLK_IN1_N));


  // Clocking primitive
  //------------------------------------
  // Instantiation of the MMCM primitive
  //    * Unused inputs are tied off
  //    * Unused outputs are labeled unused
  wire [15:0] do_unused;
  wire        drdy_unused;
  wire        psdone_unused;
  wire        clkfbout;
  wire        clkfbout_buf;
  wire        clkfboutb_unused;
  wire        clkout0b_unused;
  wire        clkout1_unused;
  wire        clkout1b_unused;
  wire        clkout2_unused;
  wire        clkout2b_unused;
  wire        clkout3_unused;
  wire        clkout3b_unused;
  wire        clkout4_unused;
  wire        clkout5_unused;
  wire        clkout6_unused;
  wire        clkfbstopped_unused;
  wire        clkinstopped_unused;

  MMCME2_ADV
  #(.BANDWIDTH            ("OPTIMIZED"),
    .CLKOUT4_CASCADE      ("FALSE"),
    .COMPENSATION         ("ZHOLD"),
    .STARTUP_WAIT         ("FALSE"),
    .DIVCLK_DIVIDE        (10),
    .CLKFBOUT_MULT_F      (49.875),
    .CLKFBOUT_PHASE       (0.000),
    .CLKFBOUT_USE_FINE_PS ("FALSE"),
    .CLKOUT0_DIVIDE_F     (33.250),
    .CLKOUT0_PHASE        (0.000),
    .CLKOUT0_DUTY_CYCLE   (0.500),
    .CLKOUT0_USE_FINE_PS  ("FALSE"),
    .CLKIN1_PERIOD        (5.000),
    .REF_JITTER1          (0.010))
  mmcm_adv_inst
    // Output clocks
   (.CLKFBOUT            (clkfbout),
    .CLKFBOUTB           (clkfboutb_unused),
    .CLKOUT0             (clkout0),
    .CLKOUT0B            (clkout0b_unused),
    .CLKOUT1             (clkout1_unused),
    .CLKOUT1B            (clkout1b_unused),
    .CLKOUT2             (clkout2_unused),
    .CLKOUT2B            (clkout2b_unused),
    .CLKOUT3             (clkout3_unused),
    .CLKOUT3B            (clkout3b_unused),
    .CLKOUT4             (clkout4_unused),
    .CLKOUT5             (clkout5_unused),
    .CLKOUT6             (clkout6_unused),
     // Input clock control
    .CLKFBIN             (clkfbout_buf),
    .CLKIN1              (clkin1),
    .CLKIN2              (1'b0),
     // Tied to always select the primary input clock
    .CLKINSEL            (1'b1),
    // Ports for dynamic reconfiguration
    .DADDR               (7'h0),
    .DCLK                (1'b0),
    .DEN                 (1'b0),
    .DI                  (16'h0),
    .DO                  (do_unused),
    .DRDY                (drdy_unused),
    .DWE                 (1'b0),
    // Ports for dynamic phase shift
    .PSCLK               (1'b0),
    .PSEN                (1'b0),
    .PSINCDEC            (1'b0),
    .PSDONE              (psdone_unused),
    // Other control and status signals
    .LOCKED              (LOCKED),
    .CLKINSTOPPED        (clkinstopped_unused),
    .CLKFBSTOPPED        (clkfbstopped_unused),
    .PWRDWN              (1'b0),
    .RST                 (RESET));

  // Output buffering
  //-----------------------------------
  BUFG clkf_buf
   (.O (clkfbout_buf),
    .I (clkfbout));

  BUFG clkout1_buf
   (.O   (CLK_OUT1),
    .I   (clkout0));




endmodule
 楼主| 发表于 2019-1-24 15:05:31 | 显示全部楼层
回复 5# sonson2008

请问,那个DCI是指 约束么?对输入端的约束不够?(大致搜了下,说什么可抗阻抗,搞不太懂)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-19 18:07 , Processed in 0.024683 second(s), 8 queries , Gzip On, Redis On.

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