0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解读FPGA的静态时序分析

FPGA设计论坛 来源:未知 2023-03-14 19:10 次阅读

任何学FPGA的人都跑不掉的一个问题就是进行静态时序分析。静态时序分析的公式,老实说很晦涩,而且总能看到不同的版本,内容又不那么一致,为了彻底解决这个问题,终于找到了一种很简单的解读办法,可以看透它的本质,而且不需要再记复杂的公式了。

我们的分析从下图开始,下图是常用的静态分析结构图,一开始看不懂公式不要紧,因为我会在后面给以非常简单的解释:


这两个公式是一个非常全面的,准确的关于建立时间和保持时间的公式。其中Tperiod为时钟周期;Tcko为D触发器开始采样瞬间到D触发器采样的数据开始输出的时间;Tlogic为中间的组合逻辑的延时;Tnet为走线的延时;Tsetup为D触发器的建立时间;Tclk_skew为时钟偏移,偏移的原因是因为时钟到达前后两个D触发器的路线不是一样长。

这里我们来做如下转化:

因为对于有意义的时序约束,建立时间余量Tslack,setup和保持时间余量Thold都要大于0才行,所以对于时序约束的要求其实等价于:

Tperiod>Tcko+Tlogic+Tnet+Tsetup-Tclk_skew (1)

Tcko+Tlogic+Tnet>Thold+Tclk_skew (2)

之前说了,这两个公式是最全面的,而实际上,大部分教材没讲这么深,他们对于一些不那么重要的延时没有考虑,所以就导致不同的教材说法不一。这里,为了得到更加简单的理解,我们按照常规,忽略两项Tnet和Tclk_skew。原因在于Tnet通常太小,而Tclk_skew比较不那么初级。简化后如下:

Tperiod>Tcko+Tlogic+Tsetup (3)

Tcko+Tlogic>Thold (4)

简单多了吧!但是你能看出这两个公式的含义吗?其实(3)式比较好理解,意思是数据从第一个触发器采样时刻传到第二个触发器采样时刻,不能超过一个时钟周期啊!假如数据传输超过一个时钟周期,那么就会导致第二个触发器开始采样的时候,想要的数据还没有传过来呢!那么(4)式又如何理解呢?老实说,一般人一眼看不出来。

我们对于(4)式两边同时加上Tsetup,得到(5):

Tcko+Tlogic+Tsetup>Thold+Tsetup (5)

结合(3)式和(5)式,我们得到如下的式子:

Thold+Tsetup

这个式子就是那个可以让我们看出规律的式子。也是可以看出静态时序分析本质的式子。

Tcko+Tlogic+Tsetup是指数据从第一级触发器采样瞬间开始,传输到第二级触发器并被采样的传输延时。我们简称为数据传输延时。下面讲述(6)式两端的含义。

Tcko+Tlogic+Tsetup<  Tperiod :约定数据传输延时不能太大,如果太大(超过一个时钟周期),那么第二级触发器就会在采样的时刻发现数据还没有到来。

Thold+Tsetup

综上,我们就可以知道,数据传输延时既不能太大以至于超过一个时钟周期,也不能太小以至于小于触发器采样窗口的宽度。这就是静态时序分析的终极内涵。有了这个,就不需要再记任何公式了。







精彩推荐



至芯科技-FPGA就业培训来袭!你的选择开启你的高薪之路!3月28号北京中心开课、欢迎咨询!
FPGA运算单元对高算力浮点应用
FPGA芯片供电系统
扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!


点个在看你最好看







原文标题:解读FPGA的静态时序分析

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21328

    浏览量

    593275

原文标题:解读FPGA的静态时序分析

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA时序约束--基础理论篇

    起点(即时钟触发器输入端口) (2)路径终点(即输出端口的寄存器或查找表单元) (3)逻辑电路和逻辑器件 有了这些元素,就可以构建完整的时序路径。在实践中,我们可以使用FPGA工具来分析、优化
    发表于 11-15 17:41

    FPGA的约束设计和时序分析

    FPGA/CPLD的综合、实现过程中指导逻辑的映射和布局布线。下面主要总结一下Xilinx FPGA时序约束设计和分析
    发表于 09-21 07:45

    FPGA I/O口时序约束讲解

    前面讲解了时序约束的理论知识FPGA时序约束理论篇,本章讲解时序约束实际使用。
    发表于 08-14 18:22 925次阅读
    <b class='flag-5'>FPGA</b> I/O口<b class='flag-5'>时序</b>约束讲解

    FPGA时序约束之时序路径和时序模型

    时序路径作为时序约束和时序分析的物理连接关系,可分为片间路径和片内路径。
    发表于 08-14 17:50 514次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b>约束之<b class='flag-5'>时序</b>路径和<b class='flag-5'>时序</b>模型

    时序分析基本概念解析

    正如“聚合”的意思(字典)“两个或多个事物聚集在一起的发生”。所以我们可以假设它也与 2 个时钟路径聚集在一起有关。 (了解时钟路径请参考另一篇博客-静态时序分析基础:第1部分“时序
    的头像 发表于 08-08 10:31 591次阅读
    <b class='flag-5'>时序</b><b class='flag-5'>分析</b>基本概念解析

    FPGA高级时序综合教程

    FPGA高级时序综合教程
    发表于 08-07 16:07 3次下载

    fpga时序分析案例 调试FPGA经验总结

    可能无法满足时序要求。 跨时钟域信号的约束写法 问题一: 没有对设计进行全面的约束导致综合结果异常,比如没有设置异步时钟分组,综合器对异步时钟路径进行静态时序分析导致误报
    的头像 发表于 08-01 09:18 1104次阅读
    <b class='flag-5'>fpga</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>案例 调试<b class='flag-5'>FPGA</b>经验总结

    什么是静态代码分析静态代码分析概述

    静态分析可帮助面临压力的开发团队。高质量的版本需要按时交付。需要满足编码和合规性标准。错误不是一种选择。 这就是开发团队使用静态分析工具/源代码分析
    的头像 发表于 07-19 12:09 934次阅读
    什么是<b class='flag-5'>静态</b>代码<b class='flag-5'>分析</b>?<b class='flag-5'>静态</b>代码<b class='flag-5'>分析</b>概述

    什么是时序分析?教你掌握FPGA时序约束

    时序分析本质上就是一种时序检查,目的是检查设计中所有的D触发器是否能够正常工作,也就是检查D触发器的同步端口(数据输入端口)的变化是否满足建立时间要求(Setup)和保持时间要求(Hold);检查
    发表于 07-14 10:48 1618次阅读
    什么是<b class='flag-5'>时序</b><b class='flag-5'>分析</b>?教你掌握<b class='flag-5'>FPGA</b><b class='flag-5'>时序</b>约束

    静态时序分析的相关概念

      本文主要介绍了静态时序分析 STA。
    的头像 发表于 07-04 14:40 604次阅读
    <b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>的相关概念

    静态时序分析的基本概念和方法

    引言 在同步电路设计中,时序是一个非常重要的因素,它决定了电路能否以预期的时钟速率运行。为了验证电路的时序性能,我们需要进行 静态时序分析
    的头像 发表于 06-28 09:38 807次阅读
    <b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>的基本概念和方法

    同步电路设计中静态时序分析时序约束和时序路径

    同步电路设计中,时序是一个主要的考虑因素,它影响了电路的性能和功能。为了验证电路是否能在最坏情况下满足时序要求,我们需要进行静态时序分析,即
    发表于 06-28 09:35 572次阅读
    同步电路设计中<b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>的<b class='flag-5'>时序</b>约束和<b class='flag-5'>时序</b>路径

    STA-0.静态时序分析概述

    静态时序分析(Static Timing Analysis, 以下统一简称 **STA** )是验证数字集成电路时序是否合格的一种方法,其中需要进行大量的数字计算,需要依靠工具进行,但
    的头像 发表于 06-27 11:43 575次阅读
    STA-0.<b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>概述

    FPGA设计-时序约束(理论篇)

    STA(Static Timing Analysis,即静态时序分析)在实际FPGA设计过程中的重要性是不言而喻的
    发表于 06-26 09:01 395次阅读
    <b class='flag-5'>FPGA</b>设计-<b class='flag-5'>时序</b>约束(理论篇)

    FPGA静态时序分析简单解读

    任何学FPGA的人都跑不掉的一个问题就是进行静态时序分析静态时序
    的头像 发表于 05-29 10:24 380次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>简单<b class='flag-5'>解读</b>