前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vivado时序收敛技术(二) 时序违例的根本原因及解决方法

Vivado时序收敛技术(二) 时序违例的根本原因及解决方法

作者头像
猫叔Rex
发布2020-08-13 16:15:49
2K0
发布2020-08-13 16:15:49
举报
文章被收录于专栏:科学计算科学计算

本文整理自Xilinx公开课:Vivado时序收敛技术。

有些知识在公开课中讲的并不是很细,因此我又对齐进行了整理,分为了几篇文章。

有很多内容也在我的时序约束课程中讲到过,都是免费课程,大家可以在公众号上找到。(下面的链接中也有)

如果出现了时序违例,我们会关注两点:

  1. 为什么会出现时序违例?
  2. 如何解决?

首先我们要搞清楚时序是在哪个阶段违例:

  • 在综合阶段或者post opt阶段出现了时序违例,那么很有可能的原因如下:
  • 添加的时序约束没有生效
  • 约束过于严苛
  • 综合选项设置不正确
  • 电路设计中延迟太高 前三个的解决方案都类似,就是进行正确的时序约束和正确的综合选项设置;如果是电路设计延时太高,电路中级联的级数太多,那么就要修改设计了。这里有一个经验值,就是LUT+NET的延时是0.5ns,如果时钟周期为5ns,那电路中最大的级联数为5ns/0.5ns=10级。
  • 在Place阶段出现了时序违例,那么很有可能是:
  • 高扇出网络
  • 布局不合理或I/O位置不合理
  • 资源使用过度
  • 对于多个die的芯片,如果跨die太多,也会造成时序违例
  • 在Place Opt阶段出现了时序违例,很有可能是:
  • 电路拥塞
  • 高扇出
  • 跨die太多 此时我们可以采取的措施包括:
  • 做一些过约束
  • 增量的布局布线
  • 对子模块进行OOC
  • 在route阶段出现了时序违例,可能的原因和措施跟上面的是一样的
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 傅里叶的猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档