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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6791|回复: 10

[求助] OFFSET IN约束不满足,应该如何处理

[复制链接]
发表于 2014-8-7 10:40:55 | 显示全部楼层 |阅读模式
10资产
本帖最后由 fanny_haiyun 于 2014-8-7 14:24 编辑

在做工程的时候发现自己写的Design无法满足时序要求,但是没什么经验,不知该针对时序报告如何处理,或者说如何修改我的设计,希望各位给予帮助,欢迎讨论~~~
(1)时序约束:

NET “RX_CLK” TNM_NET = RX_CLK;
TIMESPEC TS_RX_CLK = PERIOD "RX_CLK" 8ns HIGH 50%;
INST "RXD<*>" TNM = RXD_IN;
INST "RX_DV" TNM = RXD_IN;
TIMEGRP "RXD_IN" OFFSET = IN 2.5ns BEFORE "RX_CLK" RISING;

注:这里面的时钟周期和OFFSET约束值都是根据数据手册来确定的

(2)OFFSET IN约束不满足! 约束报告如下:

================================================================================
Timing constraint: TIMEGRP "RXD_IN" OFFSET = IN 2.5 ns BEFORE COMP "RX_CLK" "RISING";
For more information, see Offset In Analysis in the Timing Closure User Guide (UG612).
  20 paths analyzed, 20 endpoints analyzed, 13 failing endpoints
  13 timing errors detected. (13 setup errors, 0 hold errors)
  Minimum allowable offset is   2.829ns.
--------------------------------------------------------------------------------

Paths for end point IF_transfer_RX/IDDR_inst0 (ILOGIC_X0Y187.DDLY), 1 path
--------------------------------------------------------------------------------
Slack (setup path):     -0.329ns (requirement - (data path - clock path - clock arrival + uncertainty))
   Source:                   RX_DV (PAD)
   Destination:             IF_transfer_RX/IDDR_inst0 (FF)
   Destination Clock:    RX_CLK_IBUFG rising at 0.000ns
   Requirement:           2.500ns
   Data Path Delay:      5.028ns  (Levels of Logic = 1)
   Clock Path Delay:     2.224ns  (Levels of Logic = 2)
   Clock Uncertainty:    0.025ns

Clock Uncertainty:           0.025ns  ((TSJ^2 + TIJ^2)^1/2 + DJ) / 2 + PE
     Total System Jitter (TSJ):  0.050ns
     Total Input Jitter (TIJ):      0.000ns
     Discrete Jitter (DJ):           0.000ns
     Phase Error (PE):              0.000ns

   Maximum Data Path: RX_DV to IF_transfer_RX/IDDR_inst0
     Location                       Delay type          Delay(ns)   Physical Resource
                                                                                 Logical Resource(s)
     -----------------------------------------------------  -------------------
     E32.I                            Tiopi                 0.830         RX_DV
                                                                                 RX_DV
                                                                                 RX_DV_IBUF
    ILOGIC_X0Y187.DDLY    net (fanout=7)  3.874         RX_DV_IBUF
     ILOGIC_X0Y187.CLK      Tidockd            0.324          RGMII_CRS
                                                                                 IF_transfer_RX/IDDR_inst0
     -----------------------------------------------------  ---------------------------
     Total                                                   5.028ns       (1.154ns logic, 3.874ns route)
                                                                                  (23.0% logic, 77.0% route)

   Minimum Clock Path: RX_CLK to IF_transfer_RX/IDDR_inst0
     Location                       Delay type         Delay(ns)      Physical Resource
                                                                                   Logical Resource(s)
     -----------------------------------------------------    -------------------
     H17.I                           Tiopi                  0.717           RX_CLK
                                                                                   RX_CLK
                                                                                   RX_CLK_IBUFG
     BUFGCTRL_X0Y18.I0    net (fanout=3)    1.092           RX_CLK_IBUFG1
     BUFGCTRL_X0Y18.O     Tbgcko_O           0.194          RX_CLK_IBUFG_BUFG
                                                                                   RX_CLK_IBUFG_BUFG
     ILOGIC_X0Y187.CLK    net (fanout=10)   0.221          RX_CLK_IBUFG
     -----------------------------------------------------    ---------------------------
     Total                                                   2.224ns        (0.911ns logic, 1.313ns route)
                                                                                   (41.0% logic, 59.0% route)


(3)我自己的理解:
     我认为主要不满足的原因是标红处,隶属于RX_DV to IF_transfer_RX/IDDR_inst0这条路径。在设计中,RX_DV Input信号除了输入到一些FF中,还会输入到一个IDDR中,以分别获取上升沿和下降沿的数据。可能就是这个操作造成布局布线延迟较大,但是为何延时较大及应该如何处理我就不知道了。
     开始我以为是和fanout有关,于是在综合器中将MAX_FANOUT设置小些,这样设置的确会使FANOUT值变小一些,但是延迟并不会变化。

(4)问题:导致我的设计不满足时序约束的主要原因是什么呢?我应该如何处理?

最佳答案

查看完整内容

设计满足不了时序要求的原因那肯定是布线的问题, 实际上你的slack只有0.4不到, 2.1ns的setup时间实际应该够了, 当然如果手册上要求2.5那就按照2.5来。IDDR_inst0那个目标寄存器既然是上下沿都锁存,那就应该把目标寄存器的下沿锁存的时序限制也加入进来。如果还是时序上过不了,还要把IDDR_inst0目标寄存器综合限定到靠近引脚的寄存器中,或者直接指定IDDR_inst0在IOB中实现。ddr接口时序限定不是这两句就可以搞定的,你查一下, ...
发表于 2014-8-7 10:40:56 | 显示全部楼层
设计满足不了时序要求的原因那肯定是布线的问题, 实际上你的slack只有0.4不到, 2.1ns的setup时间实际应该够了, 当然如果手册上要求2.5那就按照2.5来。IDDR_inst0那个目标寄存器既然是上下沿都锁存,那就应该把目标寄存器的下沿锁存的时序限制也加入进来。如果还是时序上过不了,还要把IDDR_inst0目标寄存器综合限定到靠近引脚的寄存器中,或者直接指定IDDR_inst0在IOB中实现。ddr接口时序限定不是这两句就可以搞定的,你查一下,看看具体还要限定哪些。
发表于 2014-8-7 13:13:16 | 显示全部楼层
顶楼主,等待解答。
 楼主| 发表于 2014-8-8 10:48:05 | 显示全部楼层
回复 3# goswami
你好,谢谢你的回答,关于你说的方案,我在网上查了下,但是我还是有点问题问你:1.IDDR的输入是RX_DV,是由IOB输入的一个信号,在IOB中可以指定IDDR的实现吗?我搜索的都是对于输入管脚指定在IOB中实现,比如:
INST “RX_DV” IOB = TRUE;但是对于内部寄存器在IOB中实现没找到,你能告诉我一下该怎么使用吗?或者该查哪方面的信息?
2.IDDR_inst0放到靠近引脚的寄存器中,也不会用呢,我该搜哪方面的内容或该怎么实现。


谢谢!
发表于 2014-8-8 14:25:31 | 显示全部楼层
调整生成的寄存器位置 就是逻辑锁定(logic lock),以利于关键路径布局布线, 在ucf文件中就可以完成,具体做法 ug612里都有,你仔细看一下
发表于 2014-8-8 22:08:31 | 显示全部楼层
看起来E32和ILOGIC_X0Y187不是相对应的, 正常每个IO都有对应最近的IOLOGIC,但是你这里输入线fanout>1,所以这里应该走不了最近的走线。看看是不是可以输入就连到IDDR,不连到其他逻辑;或者在时钟走线上连上MMCM/DCM/PLL来调相。
 楼主| 发表于 2014-8-12 08:58:08 | 显示全部楼层
回复 5# goswami


  你好,我看了UG612了,但是逻辑锁定那部分的内容没找到在哪里,由于刚接触FPGA不久,很多东西不会,你能不能简单的告诉下用法。或者告诉我UG612的那部分。太麻烦你了。

谢谢!
 楼主| 发表于 2014-8-12 10:12:04 | 显示全部楼层
回复 6# stickying


   你好,我将RX_DV的fanout改成1,延迟仍旧不变,我觉得是IDDR并不是离RX_DV最近的IOLOGIC,怎样约束使它离RX_DV最近(这方面知识欠缺)?你能给个例子或建议吗?另外,我不想讲时钟延迟,因为这样会比较麻烦,后面用到时钟的地方比较的复杂,所以DCM延迟CLOCK不太好。谢谢!
发表于 2014-8-12 14:39:06 | 显示全部楼层
顶楼主,顺便看看。
发表于 2016-4-15 23:42:41 | 显示全部楼层
您好,这个offset怎样根据数据手册确定?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-19 15:33 , Processed in 0.047913 second(s), 8 queries , Gzip On, Redis On.

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