打印

请教一个ISE使用进行时序约束的问题

[复制链接]
2505|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
建立一个基本程序:
1)输入到芯片的时钟频率为clk_in=50MHz,经DCM_SP后为clk=21.2144MHz.
2)然后用这个21.2144MHz作为系统时钟,对一个0~15计数器进行计数.(程序见下面)
3)用XST综合,再添加时序约束. 此时问题来了-->
运行创建时序约束项后,在Clock Domains项中,被ISE认作为时钟的只能clk_in,而
真正的系统同步时钟clk未出现. 所以没有办法进行系统时钟周期的约束了.

A)程序部分
module top(
    input rst,
    input clk_in,
    output [3:0] dout,
  output thresh0
    );
wire clk;

c_counter_4bit D1 (
  .clk(clk),
  .thresh0(thresh0),
  .sclr(sclr),
  .q(dout)
);

c_dcm D2 (
  .CLKIN_IN(clk_in),
      .RST_IN(rst),    //have being a program =mcu_rst?
  .CLKFX_OUT(clk),      //50MHz
      .CLKIN_IBUFG_OUT(),  //had IBUFG
      .CLK0_OUT(),      //had BUFG
      .LOCKED_OUT()
);
endmodule

B)截图部分

相关帖子

沙发
nongfuxu|  楼主 | 2012-1-14 15:39 | 只看该作者
B)截图部分

使用特权

评论回复
板凳
nongfuxu|  楼主 | 2012-1-14 16:26 | 只看该作者
哪位大侠还没有休息啊?现身相救啦!

使用特权

评论回复
地板
tangkuan| | 2012-1-15 11:29 | 只看该作者
大哥,对于用DCM,你最多只要约束DCM的输入,即你的clk_in为50M就可以了,其输出不用约束,甚至输入也不用约束的,系统会自动约束(因为你调用了他的IPcore),OVER.

使用特权

评论回复
5
nongfuxu|  楼主 | 2012-1-15 12:51 | 只看该作者
本帖最后由 nongfuxu 于 2012-1-15 13:02 编辑

噢,谢谢tangkuan! 有不清楚的地方还得请教你.

使用特权

评论回复
6
nongfuxu|  楼主 | 2012-1-16 09:53 | 只看该作者
按tangkuan的说的试了试,有点担心。

1)输出的dout[N:0]是给DA的,因此需要OFFSET AFTER。而它需要有个参照时钟。
例如:
  NET “DATA_OUT”OFFSET =OUT 10.0 BEFORE “CLK”
2)而现在只有clk_in可以参照,没有DCM输出的clk啊。

应该怎么约束呢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:是不是经济不KUA,房价下不来? 高房价只能带来“实体经济挤出效应”。

417

主题

4293

帖子

2

粉丝