FPGA设计杂谈之一:时序违例的影响

目录

一、前言

二、时序违例的确认

三、时序违例的影响

    a)、逻辑功能问题

    ​b)、性能问题

    ​c)、可靠性问题

    ​d)、不确定性


一、前言

    ​    ​在FPGA设计中,最常提到的一个词就是时序,而与之相关最不想看到的就是时序违例。

    ​    ​那什么是时序违例?在工程设计中的单元可分为组合逻辑单元时序逻辑单元,两者的区别是看是否需要时钟信号,如LUT的输入全为数据信号,不需要时钟,就是组合逻辑单元,像FF,ROM等需要有时钟信号输入的就是时序逻辑单元。

    ​    ​对于时序单元,因为输入同时有数据信号和时钟信号,此时为保证输出的信号准确,就说时钟信号和数据信号到达输入端口的先后顺序有要求,这个要求是很矫情的,数据信号要比时钟的采集边沿提前到达,但有不能提前太多。如果不满足这个要求时序单元的输出可能就会异常,这种情况即是时序违例

二、时序违例的确认

    ​如何知道时序是否违例?FPGA设计工具如Vivado会有对应的时序报告,查看报告可以知道是否存在违例路径。

    ​报告查看包括同步时钟路径(intra-clock paths)跨时钟域路径(inter-clock paths)的时序,如果路径的slack为负数,则对应的路径前会标红色告警符号,如下图中跨时钟域路径中出现了时序违例的路径。

 

根据不同工艺,以及时序分析类型,违例可分为slow corner下的setup/hold/recovery/removal和fast corner下setup/hold/recovery/removal共8种类型的违例,具体路径属于哪一类,可以点击路径查看Path Type,如上图的违例为slow corner下的setup违例

三、时序违例的影响

    a)、逻辑功能问题

时序违例可能导致FPGA设计运行时出现逻辑功能错误,即设计的输出结果与预期出现不一致,为什么说是可能?因为在违例的情况下,违例路径单元上的输出有可能正确,也可能不正确,即是一种不确定状态。

    ​b)、性能问题

 时序违例会导致设计达不到预期的最高频率

    ​c)、可靠性问题

如果频繁地出现时序违例,因不断地处于临界状态,增加电路原件的应力,从而导致器件老化,不仅使用寿命受影响,可靠性也将受影响。

    ​d)、不确定性

时序违例使电路中会出现信号冒险,噪声增加,导致出现不确定性。

因此,设计如果出现时序违例,根据时序报告进行优化,使时序满足要求。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值