
关于时序分析的那些事
文章平均质量分 92
FPGA时序分析
apple_ttt
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
FPGA时序分析与约束(0)——目录与传送门
关于时序分析和约束的学习似乎是学习FPGA的一道分水岭,似乎只有理解了时序约束才能算是真正入门了FPGA,对于FPGA从业者或者未来想要从事FPGA开发的工程师来说,时序约束可以说是一道躲不过去的坎,所以这个系列我们会详细介绍FPGA时序分析与约束的相关内容。原创 2023-12-09 13:38:18 · 6037 阅读 · 50 评论 -
FPGA时序分析与约束(1)——组合电路时序
在可实现的情况下,我们一般会期望fpga处理速率越快越好,但是与理论不同,在实际的硬件设计的时候,一个逻辑上正确的设计仍然会因为现实世界中的实现问题而失败!本文中我们介绍了组合电路的时序问题,定义了tcd和tpd两个重要参数,明确了如何寻找一个组合逻辑电路的最短路径Shortest Path和最长路径LongestPath(更常规的叫法是关键路径Critical Path),然后我们分析了组合逻辑毛刺产生的原因及影响原创 2023-09-01 15:25:44 · 2420 阅读 · 11 评论 -
FPGA时序分析与约束(2)——时序电路时序
本文我们介绍了时序电路中的时序问题,这是我们进行进一步时序分析内容学习的重要理论基础,首先我们介绍了D触发器相关内容,着重说明了建立时间和保持时间的含义和产生原因,然后引入了触发器的输出时序,最后介绍了时序电路系统的设计约束。原创 2023-09-02 00:03:22 · 5712 阅读 · 72 评论 -
FPGA时序分析与约束(3)——时钟不确定性
本文主要介绍了FPGA中时钟的不确定性问题,FPGA中的时钟不确定性由2部分组成,时钟抖动和时钟偏移,时钟抖动由时钟内部产生,是时钟的固有参数,时钟偏移是由于时钟到达不同部分的时间不一致导致的,与FPGA的设计结构,布局布线等有关。原创 2023-09-02 13:16:49 · 2963 阅读 · 15 评论 -
FPGA时序分析与约束(4)——时序分析,时序约束,时序收敛
本文中我们学习了时序分析,时序约束,时序收敛的含义,我们主要采用的时序分析方法是静态时序分析法,在后文中,我们将正式开始介绍如何进行时序分析。原创 2023-09-03 08:30:00 · 1699 阅读 · 12 评论 -
FPGA时序分析与约束(5)——时序路径
介绍了时序分析过程中时序路径的基本概念,分别介绍了FPGA中常见的4种时序路径:(1)引脚到寄存器(从FPGA的输入端口到目的寄存器的数据输入端口)(2)寄存器到寄存器(从源寄存器的时钟端口到目的寄存器的数据输入端口)(3)寄存器到引脚(从源寄存器的时钟端口到FPGA的输出端口)(4)引脚到引脚(从FPGA的输入端口到FPGA的输出端口)。这部分的内容是我们进行后续时序分析及时序约束的重要基础。原创 2023-09-09 09:00:00 · 6025 阅读 · 98 评论 -
FPGA时序分析与约束(6)——综合的基础知识
与综合相关的一些问题的性质和约束的必要性。随着设计复杂性的不断提高,为了能够正确地表示的要求和关系,约束自身也变得越来越复杂原创 2023-10-22 14:25:30 · 4424 阅读 · 76 评论 -
FPGA时序分析与约束(7)——通过Tcl扩展SDC
通过使SDC 扩展到Tcl,特定于工具的命令可以与原生的Tcl结构,如变量、表达式、语句和子程序相混合,使其成为实现工具非常强大的语言。术语“Synopsys公司设计约束”(又名SDC,Synopsys Design Constraints)用于描述对时序、功率和面积的设计要求,是EDA工具中用于综合、STA和布局布线最常用的格式。该类别包括帮助设计人员放宽要求地命令,此命令是由其他命令所规定的,从而提供了约束放宽的适用范围,下表给出了此类约束,表格中标有星号的命令也可提供额外的收紧(而不是放宽)。原创 2023-10-28 15:03:31 · 1607 阅读 · 0 评论 -
FPGA时序分析与约束(8)——时序引擎
FPGA时序分析,时序引擎如何实现建立分析(setup),保持分析(hold),恢复时间分析(recovery)和移除时间分析(removal)。原创 2023-10-29 14:30:51 · 4780 阅读 · 59 评论 -
FPGA时序分析与约束(9)——主时钟约束
fpga时钟约束,create_clock详细解读,主时钟约束原创 2023-10-30 11:47:51 · 1210 阅读 · 13 评论 -
FPGA时序分析与约束(10)——生成时钟
如今的Soc在同一个芯片内包含多种异构设备。同一个芯片内可能包含高速的处理器和低速的存储器。这些工作在不同频率下的器件通常由不同的时钟触发。每个部分的运行是基于各自时钟的,这些会带来异步性的设计问题。这可能导致几个时钟都源于同一个主时钟,这些时钟称为生成时钟(衍生时钟、派生时钟)。原创 2023-11-07 08:58:34 · 3259 阅读 · 24 评论 -
FPGA时序分析与约束(11)——时钟组
如果不进行正确的时钟组区分,时序工具(如Vivado)默认会检查所有时钟之间的路径。如果两个时钟实际是异步的(如来自不同晶振),但未声明为异步组,工具会强制分析它们的时序关系(例如建立时间/保持时间)。由于异步时钟的相位关系随机,这种分析毫无意义,且会生成大量虚假违例,干扰真正的时序问题定位。原创 2025-04-13 22:03:34 · 1401 阅读 · 1 评论 -
FPGA时序分析与约束(13)——I/O接口约束
在应用了时钟约束后,所有寄存器到寄存器的路径都能定时。为了获得更加精准的FPGA外部时序信息,设计者需要为FPGA的I/O接口指定时序信息,一般时序工具只能获取FPGA器件内部的时序信息,对于FPGA器件引脚之外的时序信息,必须由设计者约束定义。如果没有指定的输入输出的,时序分析工具会假设在接口上使用最优时序要求并假设电路单元的组合逻辑本身具有整个周期,电路单元外部没有信号原创 2023-11-15 10:58:19 · 4966 阅读 · 53 评论 -
FPGA时序分析与约束(14)——虚拟路径
到目前为止,我们已经看到了如何约束时钟和端口来指定设计中的时序要求,我们可以通过这些基础的约束命令来进行时序约束,但是时序分析工具默认的时序检查方式可能和我们实际工程实现的情况不同,通常来说是约束过紧,可能导致时序失败。此时,设计者就需要额外增加一下啊约束命令,用于调整既有的时序检查方式,以保证达到我们的设计预期。设计者额外增加的这部分约束,我们称之为时序异常(也有地方称之为时序例外约束)。本文中,我们重点关注虚拟路径。原创 2023-11-15 10:58:05 · 745 阅读 · 0 评论 -
FPGA时序分析和约束(15)——多周期路径
多周期路径为指定的路径提供了额外的宽松。在指定多周期路径时,我们应该注意:(1)不可预知的路径不能称为多周期路径(2)允许的额外时间量应该与预期的一致。如果路径受限于(即多周期规格允许信号达到更宽的范围)设计的路径,则元器件可能无法以所需的频率运行。 当我们通过多周期路径规格移动建立沿时,保持沿也会移动。我们需要检查保持沿是否需要恢复到初始位置。在大多数情况下,应该恢复。如果没有恢复保持沿,则设计可能在数据路径中有额外的缓冲器,以增加延迟来满足增加的保持要求。这将导致硅片面积和功耗的增原创 2024-02-05 14:54:16 · 1280 阅读 · 0 评论