chanon的个人空间 https://blog.eetop.cn/56214 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

从Technology Map Viewer分析Clock Setup Slack

已有 3284 次阅读| 2010-4-10 21:25

从Technology Map Viewer分析Clock Setup Slack

Technology Map Viewer分析Clock Setup Slack

 

       特权同学对于时序分析也还只是个初学者,前阵子被Quartus IIClassic Timing Analyzar折腾的焦头烂额之际,无意中看到了ripple兄过去写的一些关于TimeQuest的一些博文,可谓受益匪浅。虽然ripple兄只是对Quartus II handbook里关于TimerQuest的基本概念做了一些翻译 (当然也对容易混淆的概念做了一些解释),更重要的是ripple兄指明了一个方向,还 是先扎扎实实的弄懂基本概念。这不,特权同学本着好记性不如烂笔头的菜鸟思想,把自己的零星感悟一一呈上。

既然要说Clock Setup Slack,那么不得不从最基本 的概念说起。简单的说,建立时间Tsu无非是指在时钟的上升沿 到来前多久数据必须到达,只有满足这个时间的数据才会被正确锁存。那么Clock Setup Slack就是指建立时间余量, 它为正时表示满足建立时间要求,当它为负时表示不满足时序要求。

公式如下:(有三种情况,这里只讨论寄存器到寄存器的建立时序余量,具体大家可以参考http://blog.ednchina.com/riple/24489/message.aspx

Clock Setup Slack Time = Data Required Time – Data Arrival Time

Data Arrival Time = Launch Edge + Clock Network Delay to Source Register + Input Maximum Delay of Pin + Pin-to-Register Delay

Data Required Time = Clock Arrival Time – μtsu

Clock Arrival Time = Latch Edge + Clock Network Delay to Destination Register

       从上面的公式可以知道,建立时间余量=数据需要到达的时间-数据实际到达的时间。 换句话说,就是数据实际到达的时间比需要到达的时间早,那么建立时间余量就为正,达到要求,反之亦然。(本文不对公式里的基本概念做太对阐述了,还请感兴 趣的朋友看上面给了链接的博文。)

       那么步入主题吧,下面要给出的一个Technology Map Viewer下的视图背景大体是这样 的,一个时钟约束为10ns的工程,实际只跑到了91.5MHz,也就是说出现了未满足时序余量要求的路径。而下面就是一个Worst Case Slack的例子。

点击看大图

       report里可以看到,Data Arribal Time="14".175Data Required Time="13".348,通过上面公式得出结论 是slack=-0.827,也就是没有满足时序要求。那么现在就用Technology Map Viewer来看看这个路径为何不满 足建立时间的要求。

       先罗列出Data Arrival Path

Total      Incr        RF   Type       Fanout   Location              Element

0.000     0.000                                 launch edge time

3.681     3.681     R                          clock network delay

4.057     0.376            uTco       2     LC_X5_Y5_N8  wr_gene:wr_gene|over_addr[10]

4.057     0.000     RR   CELL      1     LC_X5_Y5_N8      wr_gene|over_addr[10]|regout

6.051     1.994     RR   IC    3     LC_X3_Y5_N0      wr_gene|Add2~144|datab

6.798     0.747     RR   CELL      1     LC_X3_Y5_N0      wr_gene|Add2~144|cout0

6.798     0.000     RR   IC    2     LC_X3_Y5_N1      wr_gene|Add2~134|cin0

6.921     0.123     RR   CELL      1     LC_X3_Y5_N1      wr_gene|Add2~134|cout0

6.921     0.000     RR   IC    2     LC_X3_Y5_N2      wr_gene|Add2~140|cin0

7.044     0.123     RR   CELL      1     LC_X3_Y5_N2      wr_gene|Add2~140|cout0

7.044     0.000     RR   IC    2     LC_X3_Y5_N3      wr_gene|Add2~142|cin0

7.167     0.123     RR   CELL      1     LC_X3_Y5_N3      wr_gene|Add2~142|cout0

7.167     0.000     RR   IC    2     LC_X3_Y5_N4      wr_gene|Add2~138|cin0

7.982     0.815     RR   CELL      1     LC_X3_Y5_N4      wr_gene|Add2~138|combout

9.689     1.707     RR   IC    1     LC_X5_Y5_N8      wr_gene|over_addr[10]|datad

9.889     0.200     RR   CELL      1     LC_X5_Y5_N8  wr_gene|over_addr[10]|combout

11.024   1.135     RR   IC    1     LC_X4_Y5_N0      wr_gene|Equal2~88|datab

11.764   0.740     RR   CELL      1     LC_X4_Y5_N0      wr_gene|Equal2~88|combout

12.069   0.305     RR   IC    1     LC_X4_Y5_N1      wr_gene|Equal2~89|datad

12.269   0.200     RR   CELL      2     LC_X4_Y5_N1      wr_gene|Equal2~89|combout

12.574   0.305     RR   IC    1     LC_X4_Y5_N2      wr_gene|Selector5~116|datad

12.774   0.200     RR   CELL      1     LC_X4_Y5_N2  wr_gene|Selector5~116|combout

13.079   0.305     RR   IC    1     LC_X4_Y5_N3      wr_gene|Selector5~117|datad

13.279   0.200     RR   CELL      1     LC_X4_Y5_N3  wr_gene|Selector5~117|combout

13.584   0.305     RR   IC    1     LC_X4_Y5_N4        wr_gene|current_state.IDLE|datad

14.175   0.591     RR   CELL  1  LC_X4_Y5_N4  wr_gene:wr_gene|current_state.IDLE

 

       再来看Technology Map Viewer里从over_addr[10]current_state.IDLE的路径。

点击看大图

       绿色圈起来的就是两个由时钟控制的触发器端,也就是这个时序的 起始端和结束端,那么只要你仔细沿着起始路径一直观察到结束路径,就会发现正如上面Data Arrival Path所描述的。呵呵,显然这个时序路径有些长了,大部分的时间都消耗在了这上面,所以导致了时序余量达不到要求。那么解 决的办法有两个,其一是把两个时序逻辑之间的大组合逻辑分为两个小的逻辑,即所谓的流水线思想;其二是进行时序约束。

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 2

    粉丝
  • 0

    好友
  • 13

    获赞
  • 50

    评论
  • 2787

    访问数
关闭

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

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

GMT+8, 2024-3-29 15:31 , Processed in 0.013412 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部