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

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

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

有很多内容也在我的时序约束课程中讲到过,都是免费课程,大家可以在我的知乎专栏上找到。

FPGA Times

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

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

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

  • 在综合阶段或者post opt阶段出现了时序违例,那么很有可能的原因如下:

    • 添加的时序约束没有生效
    • 约束过于严苛
    • 综合选项设置不正确
    • 电路设计中延迟太高

    前三个的解决方案都类似,就是进行正确的时序约束和正确的综合选项设置;如果是电路设计延时太高,电路中级联的级数太多,那么就要修改设计了。这里有一个经验值,就是LUT+NET的延时是0.5ns,如果时钟周期为5ns,那电路中最大的级联数为5ns/0.5ns=10级。

    image-20200810173515580

  • 在Place阶段出现了时序违例,那么很有可能是:

    • 高扇出网络
    • 布局不合理或I/O位置不合理
    • 资源使用过度
    • 对于多个die的芯片,如果跨die太多,也会造成时序违例

image-20200810210439690

  • 在Place Opt阶段出现了时序违例,很有可能是:

    • 电路拥塞
    • 高扇出
    • 跨die太多

    此时我们可以采取的措施包括:

    • 做一些过约束
    • 增量的布局布线
    • 对子模块进行OOC

image-20200810210507804

  • 在route阶段出现了时序违例,可能的原因和措施跟上面的是一样的

image-20200810211119772

  • 7
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值