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

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

3天内不再提示

FPGA案例之时序路径与时序模型解析

454398 来源:科学计算technomania 作者:猫叔 2020-11-17 16:41 次阅读

时序路径

典型的时序路径有4类,如下图所示,这4类路径可分为片间路径(标记①和标记③)和片内路径(标记②和标记④)。


对于所有的时序路径,我们都要明确其起点和终点,这4类时序路径的起点和终点分别如下表。


这4类路径中,我们最为关心是②的同步时序路径,也就是FPGA内部的时序逻辑。

时序模型

典型的时序模型如下图所示,一个完整的时序路径包括源时钟路径、数据路径和目的时钟路径,也可以表示为触发器+组合逻辑+触发器的模型。


该时序模型的要求为(公式1)

Tclk ≥ Tco + Tlogic + Trouting + Tsetup - Tskew

其中,Tco为发端寄存器时钟到输出时间;Tlogic为组合逻辑延迟;Trouting为两级寄存器之间的布线延迟;Tsetup为收端寄存器建立时间;Tskew为两级寄存器的时钟歪斜,其值等于时钟同边沿到达两个寄存器时钟端口的时间差;Tclk为系统所能达到的最小时钟周期。

这里我们多说一下这个Tskew,skew分为两种,positive skew和negative skew,其中positive skew见下图,这相当于增加了后一级寄存器的触发时间。


但对于negative skew,则相当于减少了后一级寄存器的触发时间,如下图所示。


当系统稳定后,都会是positive skew的状态,但即便是positive skew,综合工具在计算时序时,也不会把多出来的Tskew算进去。

用下面这个图来表示时序关系就更加容易理解了。为什么要减去Tskew,下面这个图也更加直观。


发送端寄存器产生的数据,数据经过Tco、Tlogic、Trouting后到达接收端,同时还要给接收端留出Tsetup的时间。而时钟延迟了Tskew的时间,因此有:(公式2)

Tdata/_path + Tsetup < = Tskew + Tclk

对于同步设计Tskew可忽略(认为其值为0),因为FPGA中的时钟树会尽量保证到每个寄存器的延迟相同。

公式中提到了建立时间,那保持时间在什么地方体现呢?

保持时间比较难理解,它的意思是reg1的输出不能太快到达reg2,这是为了防止采到的新数据太快而冲掉了原来的数据。保持时间约束的是同一个时钟边沿,而不是对下一个时钟边沿的约束。


reg2在边沿2时刻刚刚捕获reg1在边沿1时刻发出的数据,若reg1在边沿2时刻发出的数据过快到达reg2,则会冲掉前面的数据。因此保持时间约束的是同一个边沿。


在时钟沿到达之后,数据要保持Thold的时间,因此,要满足:(公式3)

Tdata/_path = Tco + Tlogic + Trouting ≥ Tskew + Thold

这两个公式是FPGA的面试和笔试中经常问到的问题,因为这种问题能反映出应聘者对时序的理解。

在公式1中,Tco跟Tsu一样,也取决于芯片工艺,因此,一旦芯片型号选定就只能通过Tlogic和Trouting来改善Tclk。其中,Tlogic和代码风格有很大关系,Trouting和布局布线的策略有很大关系。

编辑:hfy


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

    关注

    31

    文章

    5334

    浏览量

    120208
  • 触发器
    +关注

    关注

    14

    文章

    2000

    浏览量

    61124
  • 时序路径
    +关注

    关注

    0

    文章

    12

    浏览量

    1397
收藏 人收藏

    评论

    相关推荐

    使用IBIS模型进行时序分析

    电子发烧友网站提供《使用IBIS模型进行时序分析.pdf》资料免费下载
    发表于 10-21 10:00 0次下载
    使用IBIS<b class='flag-5'>模型</b>进行<b class='flag-5'>时序</b>分析

    高速ADC与FPGA的LVDS数据接口中避免时序误差的设计考虑

    电子发烧友网站提供《高速ADC与FPGA的LVDS数据接口中避免时序误差的设计考虑.pdf》资料免费下载
    发表于 10-15 09:50 5次下载
    高速ADC与<b class='flag-5'>FPGA</b>的LVDS数据接口中避免<b class='flag-5'>时序</b>误差的设计考虑

    锁存器的基本输出时序

    在深入探讨锁存器的输出时序时,我们需要详细分析锁存器在不同控制信号下的行为表现,特别是控制信号(如使能信号E)的电平变化如何影响数据输入(D)到输出(Q)的传输过程。以下是对锁存器输出时序的详细描述,旨在全面覆盖其工作原理和时序
    的头像 发表于 08-30 10:43 530次阅读

    FPGA电源时序控制

    电子发烧友网站提供《FPGA电源时序控制.pdf》资料免费下载
    发表于 08-26 09:25 0次下载
    <b class='flag-5'>FPGA</b>电源<b class='flag-5'>时序</b>控制

    深度解析FPGA中的时序约束

    建立时间和保持时间是FPGA时序约束中两个最基本的概念,同样在芯片电路时序分析中也存在。
    的头像 发表于 08-06 11:40 639次阅读
    深度<b class='flag-5'>解析</b><b class='flag-5'>FPGA</b>中的<b class='flag-5'>时序</b>约束

    电源时序器的原理及使用方法是什么

    电源时序器是一种用于控制多个电源设备按照一定顺序开启或关闭的电子设备。它广泛应用于音响、舞台灯光、电视广播、工业自动化等领域。本文将介绍电源时序器的原理及使用方法。 一、电源时序器的原理 电源
    的头像 发表于 07-08 14:16 2207次阅读

    FPGA 高级设计:时序分析和收敛

    结果当然是要求系统时序满足设计者提出的要求。 下面举一个最简单的例子来说明时序分析的基本概念。 假设信号需要从输入到输出在FPGA 内部经过一些逻辑延时和路径延时。我们的系统要求这个
    发表于 06-17 17:07

    Xilinx FPGA编程技巧之常用时序约束详解

    今天给大侠带来Xilinx FPGA编程技巧之常用时序约束详解,话不多说,上货。 基本的约束方法 为了保证成功的设计,所有路径时序要求必须能够让执行工具获取。最普遍的三种
    发表于 05-06 15:51

    FPGA工程的时序约束实践案例

    详细的原时钟时序、数据路径时序、目标时钟时序的各延迟数据如下图所示。值得注意的是数据路径信息,其中包括Tco延迟和布线延迟,各级累加之后得到
    发表于 04-29 10:39 736次阅读
    <b class='flag-5'>FPGA</b>工程的<b class='flag-5'>时序</b>约束实践案例

    Xilinx FPGA编程技巧之常用时序约束详解

    今天给大侠带来Xilinx FPGA编程技巧之常用时序约束详解,话不多说,上货。 基本的约束方法为了保证成功的设计,所有路径时序要求必须能够让执行工具获取。最普遍的三种
    发表于 04-12 17:39

    fpga时序仿真和功能仿真的区别

    FPGA时序仿真和功能仿真在芯片设计和验证过程中各自扮演着不可或缺的角色,它们之间存在明显的区别。
    的头像 发表于 03-15 15:28 2171次阅读

    时序电路的分类 时序电路的基本单元电路有哪些

    时序电路是一种能够按照特定的顺序进行操作的电路。它以时钟信号为基准,根据输入信号的状态和过去的状态来确定输出信号的状态。时序电路广泛应用于计算机、通信系统、数字信号处理等领域。根据不同的分类标准
    的头像 发表于 02-06 11:25 2507次阅读

    时序电路包括两种类型 时序电路必然存在状态循环对不对

    时序电路是由触发器等时序元件组成的数字电路,用于处理时序信号,实现时序逻辑功能。根据时序元件的类型和组合方式的不同,
    的头像 发表于 02-06 11:22 1378次阅读

    FPGA设计的常用基本时序路径分析

    该条路径包括了触发器内部clock-to-Q的延迟,触发器之间的由组合逻辑造成的路径延迟以及目标触发器的建立时间,其延时是数据从源触发器开始,在下一个时钟沿来到之前通过组合逻辑和布线的最大时间
    的头像 发表于 01-18 16:31 779次阅读
    <b class='flag-5'>FPGA</b>设计的常用基本<b class='flag-5'>时序</b><b class='flag-5'>路径</b>分析

    Vivado时序问题分析

    有些时候在写完代码之后呢,Vivado时序报红,Timing一栏有很多时序问题。
    的头像 发表于 01-05 10:18 2060次阅读