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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2654|回复: 2

[求助] 时序约束的问题

[复制链接]
发表于 2010-6-29 11:27:55 | 显示全部楼层 |阅读模式

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

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

x
我的系统中,输入时钟为ddr_ck/ddr_ckn,经过dcm产生270度的相移,输出为clk1X。
clk1X作为整个系统的工作时钟。要求ddr_ck/ddr_ckn在400~667MHz之间。

在不做时序约束的条件下,系统的最高工作频率为365.658MHz,不满足要求。下面是综合报告的相关结果:
=========================================================================
Timing constraint: Default period analysis for Clock 'ddr_ck'
  Clock period: 2.735ns (frequency: 365.658MHz)
  Total number of paths / destination ports: 8426 / 1193
-------------------------------------------------------------------------
Delay:               2.735ns (Levels of Logic = 3)
  Source:            ddr_ana/phy_addr_19 (FF)
  Destination:       ddr_ana/dout_31 (FF)
  Source Clock:      ddr_ck rising +270
  Destination Clock: ddr_ck rising +270

  Data Path: ddr_ana/phy_addr_19 to ddr_ana/dout_31
                                Gate     Net
    Cell:in->out      fanout   Delay   Delay  Logical Name (Net Name)
    ----------------------------------------  ------------
     FDC:C->Q              2   0.317   0.701  ddr_ana/phy_addr_19 (ddr_ana/phy_addr_19)
     LUT6:I0->O            1   0.061   0.512  ddr_ana/_n0091_inv4 (ddr_ana/_n0091_inv4)
     LUT4:I1->O            1   0.061   0.357  ddr_ana/_n0091_inv5 (ddr_ana/_n0091_inv5)
     LUT5:I4->O           29   0.061   0.468  ddr_ana/_n0091_inv7 (ddr_ana/_n0091_inv)
     FDE:CE                    0.196          ddr_ana/dout_0
    ----------------------------------------
    Total                      2.735ns (0.696ns logic, 2.039ns route)
                                       (25.4% logic, 74.6% route)

=========================================================================

可以看到74.6%都是由于布线造成的

因此我就希望通过时序约束,来提高系统工作频率。

但是不知道该怎么加时序约束?我想约束的是clk1X,可是工具默认的时钟是ddr_ck。

请高手指教^_^
 楼主| 发表于 2010-6-29 14:38:34 | 显示全部楼层
1# cuizehan


加入如下约束后:

NET "ddr_ck" TNM_NET = ddr_ck;
TIMESPEC TS_ddr_ck = PERIOD "ddr_ck" 1.5 ns HIGH 50%;
NET "ddr_ckn" TNM_NET = ddr_ckn;
TIMESPEC TS_ddr_ckn = PERIOD "ddr_ckn" 1.5 ns LOW 50%;

静态时序分析给出的报告显示,最高频率为424.809MHz,关键路径的延时为2.354ns,比综合报告给出的延时稍小,但布线延时仍然占70%以上。

关键路径实现的逻辑如下,

         always@(posedge clk1X or posedge reset ) begin
              if(reset) begin
                    phy_addr    <= 0;
                    rw          <= 0;
              end
              else begin
                       phy_addr <= (phy_addr_cs0 | phy_addr_cs1);
                       rw       <= rw_cs0 | rw_cs1;
                       if(phy_addr != 0 )
                            dout <= { 1'b0, cs_d8, cmd_d8, rw, phy_addr[31:6]};
              end
          end

不知道该怎么优化?
发表于 2010-6-29 17:27:08 | 显示全部楼层
把数据再打一拍看看,
如果扇出大,手动或自动复制逻辑减小扇出
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-11-18 23:42 , Processed in 0.016762 second(s), 7 queries , Gzip On, Redis On.

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