FPGA静态时序分析模型——寄存器到寄存器

合集下载

FPGA静态时序分析——IO口时序(InputDelayoutputDelay)

FPGA静态时序分析——IO口时序(InputDelayoutputDelay)

FPGA静态时序分析——IO口时序(InputDelayoutputDelay)FPGA静态时序分析——IO口时序(Input Delay /output Delay)1.1 概述在高速系统中FPGA时序约束不止包括内部时钟约束,还应包括完整的IO时序约束和时序例外约束才能实现PCB板级的时序收敛。

因此,FPGA时序约束中IO口时序约束也是一个重点。

只有约束正确才能在高速情况下保证FPGA和外部器件通信正确。

1.2 FPGA整体概念由于IO口时序约束分析是针对于电路板整个系统进行时序分析,所以FPGA需要作为一个整体分析,其中包括FPGA的建立时间、保持时间以及传输延时。

传统的建立时间、保持时间以及传输延时都是针对寄存器形式的分析。

但是针对整个系统FPGA的建立时间保持时间可以简化。

图1.1 FPGA整体时序图如图1.1所示,为分解的FPGA内部寄存器的性能参数:(1)Tdin为从FPGA的IO口到FPGA内部寄存器输入端的延时;(2) Tclk为从FPGA的IO口到FPGA内部寄存器时钟端的延时;(3) Tus/Th为FPGA内部寄存器的建立时间和保持时间;(4) Tco为FPGA内部寄存器传输时间;(5) Tout为从FPGA寄存器输出到IO口输出的延时;对于整个FPGA系统分析,可以重新定义这些参数:FPGA建立时间可以定义为:(1) FPGA建立时间:FTsu = Tdin + Tsu – Tclk;(2) FPGA保持时间:FTh = Th + Tclk;(3) FPGA数据传输时间:FT co = Tclk + Tco + Tout;由上分析当FPGA成为一个系统后即可进行IO时序分析了。

FPGA模型变为如图1.2所示。

图1.2 FPGA系统参数1.3 输入最大最小延时外部器件发送数据到FPGA系统模型如图1.3所示。

对FPGA的IO口进行输入最大最小延时约束是为了让FPGA设计工具能够尽可能的优化从输入端口到第一级寄存器之间的路径延迟,使其能够保证系统时钟可靠的采到从外部芯片到FPGA的信号。

FPGA静态时序分析

FPGA静态时序分析

FPGA静态时序分析在FPGA设计中,静态时序分析是一个非常重要的步骤,用于评估电路在不同工作条件下的时序要求是否能够满足。

本文将介绍FPGA静态时序分析的概念、步骤、工具以及常见的优化技术,以帮助读者更好地理解和应用静态时序分析。

1.概念静态时序分析是指在FPGA设计中,通过分析电路中各个时序元素(如时钟、延迟等)之间的关系,来确定电路是否能够满足设计要求的一种分析方法。

它能够预测电路在各种工作条件下的最快和最慢工作频率,从而保证电路能够正确运行。

2.步骤静态时序分析通常包括以下几个步骤:(1)设计综合:首先将设计描述(如Verilog或VHDL)综合成门级电路表示,得到与FPGA相关的逻辑网表。

(2)时钟约束设置:设置设计中的时钟频率和时钟边沿等约束条件。

时钟约束对于时序分析非常关键,它告诉工具如何处理时钟信号以及如何计算时钟间的延迟等。

(3)路径分析:对电路中的各个时序路径进行分析,包括从时钟到寄存器的路径(称为注册路径)和从寄存器到输出的路径(称为组合路径)。

路径分析主要用于确定时序路径上的关键路径和最长路径。

(4)时序缺陷检测:对设计中存在的潜在时序缺陷进行检测,例如时序冒险、信号捕获问题等。

时序缺陷可能导致电路不能按照设计要求正确工作,因此在分析过程中需要及时检测和解决这些问题。

(5)时序优化:根据静态时序分析的结果,对电路进行优化,以满足设计要求。

常见的优化技术包括添加额外的时钟约束、优化逻辑电路结构、调整时钟频率等。

3.工具在进行FPGA静态时序分析时,通常使用专门的时序分析工具,如Xilinx的TimeQuest和Altera的TimeQuest等。

这些工具能够自动识别设计中的时序路径和时序要求,并进行全面的时序分析和优化。

4.优化技术静态时序分析的结果可以指导电路的优化,以满足设计要求。

常见的优化技术包括:(1)添加额外的时钟约束:通过设置更严格的时钟约束,可以减小时钟间的延迟、提高时钟频率,并且可以帮助工具更准确地评估时序关系。

FPGA时序分析

FPGA时序分析

FPGA时序分析FPGA (Field-Programmable Gate Array) 是一种可编程逻辑门阵列芯片,它通过配置在其内部的逻辑门和可编程连线实现不同的逻辑功能。

FPGA 在数字电路设计中广泛应用,其灵活性和可重构性使其成为快速原型设计和现场配置电路的理想选择。

然而,FPGA设计和时序分析是一个复杂的过程。

时序分析是验证设计电路的正确性以及保证其能够在时钟信号的驱动下按照预期的时间顺序工作的过程。

下面将重点介绍FPGA时序分析的基本原理和关键概念。

在FPGA设计中,时序分析主要关注以下几个方面:时钟,时钟延迟,组合逻辑路径和寄存器。

1.时钟:时钟信号在FPGA设计中起到重要作用,它用于同步各个电路模块的操作。

时钟的频率和占空比对电路实现的性能和功耗都有很大的影响。

2.时钟延迟:时钟信号在从原始源头传达到特定电路元件的过程中会有一定的延迟。

这个延迟可以由时钟发生器的性能以及时钟信号在FPGA中传输的路径和电路元件的特性决定。

3.组合逻辑路径:组合逻辑路径是指信号从输入到输出经过的一系列逻辑门的路径。

每个逻辑门都会引入一定的延迟,而组合逻辑路径的时序分析主要关注延迟和信号传播的时间约束。

4.寄存器:FPGA中的寄存器用于存储电路的中间结果或暂存数据,它们可以在时钟上升沿或下降沿触发。

寄存器的时序分析包括确定数据到达寄存器的时间以及寄存器中数据对输出的影响。

时序分析主要用于验证和优化FPGA电路设计。

通过分析时钟频率、时钟延迟和电路路径延迟,可以确定电路是否满足设计规范和时间约束。

时序分析还可以帮助设计人员优化电路以达到更好的性能,如降低时钟频率、优化组合逻辑路径、调整寄存器设置等。

在进行 FPGA 时序分析时,通常使用的工具是时序分析器。

时序分析器是一种软件工具,可以输入 FPGA 设计的网络描述、时钟频率、时钟源等信息,利用相关算法和模型计算出电路的时序性能。

常见的时序分析器包括 Xilinx 的 Vivado 和 Altera 的 Quartus。

fpga期末复习题(答案)知识点题型

fpga期末复习题(答案)知识点题型

一、填空题:1、 FPGA结构一般分为三部分:可编程逻辑块(CLB)、可编程I/O模块和可编程内部连线。

2、 CPLD的内部连线为连续式布线互连结构,任意一对输入、输出端之间的延时是固定;FPGA的内部连线为分段式布线互连结构,各功能单元间的延时不定(不可预测)。

3、大规模可编程器件主要有CPLD和FPGA两类,其中CPLD通过可编程乘积项逻辑实现其逻辑功能。

基于SRAM的FPGA器件,每次上电后必须进行一次配置。

FPGA内部阵列的配置一般采用在电路可重构技术,编程数据保存在静态存储器(SRAM) ,掉电易失。

4、目前世界上有十几家生产CPLD/FPGA的公司,最大的两家是:Altera,Xilinx。

5、硬件描述语言(HDL)是EDA技术的重要组成部分,是电子系统硬件行为描述、结构描述、数据流描述的语言,它的种类很多,如VHDL、Verilog HDL、AHDL6、 WHEN_ELSE条件信号赋值语句和 IF_ELSE顺序语句的异同:* WHEN_ELSE条件信号赋值语句中无标点,只有最后有分号;必须成对出现;是并行语句,必须放在结构体中。

* IF_ELSE顺序语句中有分号;是顺序语句,必须放在进程中7、可编程逻辑器件设计输入有原理图输入、硬件描述语言输入和波形输入三种方式。

原理图输入方式是一种最直接的设计描述方式,波形设计输入适用于时序逻辑和有重复性的逻辑函数。

硬件描述语言的突出优点是:* 语言与工艺的无关性;语言的公开可利用性,便于实现大规模系统的设计;* 具有很强逻辑描述和仿真功能,而且输入效率高,在不同设计输入库之间的转换非常方便,用不着对底层的电路和PLD结构的熟悉。

8、用VHDL/Veilog HDL语言开发可编程逻辑电路的完整流程:文本编辑→功能仿真→逻辑综合→布局布线→时序仿真。

*所谓综合,就是根据设计功能和实现该设计的约束条件(如面积、速度、功耗和成本等),将设计输入转换成满足要求的电路设计方案,该方案必须同时满足与其的功能和约束条件。

何谓静态时序分析

何谓静态时序分析

何谓静态时序分析(Static Timing Analysis,简称STA)何谓静态时序分析(Static Timing Analysis,简称STA)?它可以简单的定义为:设计者提出一些特定的时序要求(或者说是添加特定的时序约束),套用特定的时序模型,针对特定的电路进行分析。

分析的最终结果当然是要求系统时序满足设计者提出的要求。

下面举一个最简单的例子来说明时序分析的基本概念。

假设信号需要从输入到输出在FPGA内部经过一些逻辑延时和路径延时。

我们的系统要求这个信号在FPGA内部的延时不能超过15ns,而开发工具在执行过程中找到了如图4.1所示的一些可能的布局布线方式。

那么,怎样的布局布线能够达到我们的要求呢?仔细分析一番,发现所有路径的延时可能为14ns、14ns、16ns、17ns、18ns,有两条路径能够满足要求,布局布线就会选择满足要求的两条路径之一。

1.静态时序分析模型因此,有些说法是错误的,不分什么情况就说时序不收敛,其实在不加约束的情况下谈时序约束是没有意义的。

附加约束的基本作用1.提高设计的工作频率对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。

通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。

2.获得正确的时序分析报告几乎所有的FPGA设计平台都包含静态时序分析工具,利用这类工具可以获得映射或布局布线后的时序分析报告,从而对设计的性能做出评估。

静态时序分析工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确输入约束,以便静态时序分析工具输出正确的时序分析报告。

3.指定FPGA/CPLD引脚位置与电气标准FPGA/CPLD的可编程特性使电路板设计加工和FPGA/CPLD设计可以同时进行,而不必等FPGA/CPLD引脚位置完全确定,从而节省了系统开发时间。

这样,电路板加工完成后,设计者要根据电路板的走线对FPGA/CPLD加上引脚位置约束,使FPGA/CPLD与电路板正确连接。

非常详细的静态时序分析教程

非常详细的静态时序分析教程

非常详细的静态时序分析教程静态时序分析是电子设计自动化领域中的重要方法之一,用于评估数字电路中的时序性能。

本教程将介绍静态时序分析的基本概念、方法和步骤,并提供一些实例来帮助读者深入了解这个领域。

一、静态时序分析的基本概念在进行静态时序分析之前,我们需要了解一些基本概念:1.时钟边沿:时钟是数字电路中的基本信号之一,它的边沿可以分为上升沿和下降沿。

时序分析通常以时钟的上升沿作为参考边沿进行分析。

2.关键路径:在一个数字电路中,存在多条路径可以连接输入和输出。

关键路径是指在特定时钟频率下,数据从输入到输出的延时最长的路径。

时序分析的目标之一就是找到并优化关键路径,以提高电路的性能。

3.时序约束:时序约束是对数字电路的时序性能要求的规定。

通常由设计者在进行时序分析之前进行设置,用于指导分析工具进行正确的分析和优化。

二、静态时序分析的方法和步骤静态时序分析的主要方法是通过对电路中的时钟域、数据路径和约束条件进行建模和分析,从而判断关键路径和优化方案。

下面是静态时序分析的基本步骤:1. 建立电路模型:首先,需要将数字电路转化为时序分析工具可以理解的模型,通常可以使用硬件描述语言(如Verilog或VHDL)对电路进行描述。

2.设定时序约束:根据设计规范和目标性能要求,制定适当的时序约束,如最大延时、最小脉冲宽度等。

时序约束的制定需要根据具体的电路应用和设计要求进行。

3.进行静态时序分析:使用时序分析工具对电路进行分析,找到关键路径,并计算出关键路径的延时。

关键路径上的最大延时指示了电路的最坏情况性能。

4.优化关键路径:在找到关键路径后,可以通过各种手段进行优化,如增加缓冲器、减少逻辑门延时等。

优化的目标是减小关键路径的延时,以提高整个电路的性能。

5.重新进行时序分析:在优化关键路径之后,需要重新进行时序分析,确保所做的优化在整个电路中得到正确应用,并满足时序约束。

三、实例分析让我们通过一个简单的例子来说明静态时序分析的具体过程。

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

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

静态时序分析的基本概念和⽬的内容:静态时序分析的概念与⽬的与时钟相关的时序特性静态时序分析(Statistic)时钟sdc静态时序分析的概念和⽬的时序路径与关键路径时序路径:是⼀个点到另⼀个点的数据通路,数据沿着时序路径进⾏传递,每条时序路径有⼀个起点(Startpoint)和⼀个终点(Endpoint)。

起点可以是:数据输⼊端⼝,触发器或寄存器的时钟引脚。

终点可以是:数据输出端⼝,时序器件的除时钟引脚外的所有输⼊引脚。

因此时序路径可以是数据输⼊端⼝到寄存器、寄存器到寄存器、寄存器到输出端⼝、输⼊端⼝到输出端⼝。

如下图电路中存在4条路径:从输⼊端⼝A到FF1的D端;从FF1的CLK端到FF2的D端;从FF2的CLK端到输出端⼝Z;从输⼊端⼝A到输出端⼝Z。

⼀般情况下,路径1、2、3是最常见的,路径4⽐较少见。

关键路径:路径的特性是存在延时,其中延时最长的⼀条称为关键路径。

常见的时序路径约束在进⾏约束前,需要了解触发器的三个概念:建⽴时间、保持时间和亚稳态。

这⾥简单介绍这三个概念,更深⼊的介绍见《笔试题》、《亚稳态》。

建⽴时间指的是在时钟有效沿来之前数据必须保持稳定的⼀段时间,否则触发器锁存不住数据,⽤Tsu表⽰。

保持时间指的是在时钟有效沿来之后数据仍需保持稳定的⼀段时间,否则触发器锁存不住数据,⽤Th表⽰。

亚稳态:半导体⼚商在⼯艺库中规定了每个触发器的建⽴时间和保持时间参数。

如果数据在建⽴时间和保持时间中被采样,那么其输出是不可预知的,有可能是0,也有可能是1,这种未知的状态称为亚稳态。

了解这三个概念后,就可以对路径进⾏约束。

约束的⽬的就是为了确定寄存器是否满⾜建⽴时间(和保持时间)。

与时钟相关的时序特性时钟的时序特性主要分为抖动(Jitter)、偏移(Skew)和占空⽐失真(Duty Cycle Distortion)三种。

在低速设计中不需要考虑这些时序特性;但是在告诉设计中,由于这三种特性会造成普遍的时序问题。

FPGA中的时序分析(一)

FPGA中的时序分析(一)

FPGA中的时序分析(⼀)谈及此部分,多多少少有⼀定的难度,笔者写下这篇⽂章,差不多是在学习FPGA⼀年之后的成果,尽管当时也是看过类似的⽂章,但是都没有引起笔者注意,笔者现在再对此知识进⾏梳理,也发现了有很多不少的收获。

笔者根据⽹上现有的资源,作进⼀步的总结,希望能够有所帮助。

静态时序分析(STA,static timing analysis),对于STA的理解,可以想象在FPGA的内部好⽐⼀块PCB,FPGA的逻辑阵列好⽐PCB板上的⼀些分⽴元器件,PCB通过导线将具有相关电⽓特性的信号相连接,FPGA也需要通过内部连线将相关的逻辑节点导通,PCB上的信号通过任何⼀个元器件都会产⽣⼀定的延时,FPGA的信号通过内部逻辑门传输也有⼀定的延时,PCB信号⾛线也有延时,FPGA信号⾛线也有延时,这就带来了⼀系列的问题,⼀个信号从FPGA的⼀端输⼊,经过⼀定的逻辑处理后从FPGA的另⼀端输出,这期间会产⽣多⼤的延时呢?有多个总线信号从FPGA的⼀端输⼊,这条总线的各个信号经过逻辑处理之后从FPGA的另⼀端输出,这条总线的各个信号的延时⼀致吗?之所以关⼼这些问题,是因为过长的延时或者⼀条总线多个信号传输延时的不⼀致,不仅会影响FPGA本⾝会给FPGA之外的电路或者系统带来诸多的问题。

所以针对上⾯的⼀系列问题,设计者需要提出⼀些特定的时序要求,针对现有的电路给出时序约束,分析时序,本质上是节点对节点之间的时序分析,如果没有节点,时序也就⽆从谈起。

在FPGA中,我们可以把节点当作是寄存器与寄存器之间的时序分析,寄存器与寄存器之间可能还有⼀些组合逻辑充斥着。

所以时序路径通常有四⼤类:(1)寄存器到寄存器类型,即reg2reg;(2)输⼊引脚到寄存器类型,即pin2reg;(3)寄存器到输出引脚类型,即reg2pin;(4)输⼊引脚到输出引脚类型,即pin2pin;针对上述四种基本时序路径,最关⼼的就是数据信号和时钟锁存沿之间的建⽴时间和保持时间的关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FPGA静态时序分析模型——寄存器到寄存器
1. 适用范围
本文档理论适用于Actel FPGA并且采用Libero软件进行静态时序分析(寄存器到寄存器)。

2. 应用背景
静态时序分析简称STA,它是一种穷尽的分析方法,它按照同步电路设计的要求,根据电路网表的拓扑结构,计算并检查电路中每一个DFF(触发器)的建立和保持时间以及其他基于路径的时延要求是否满足。

STA作为FPGA设计的主要验证手段之一,不需要设计者编写测试向量,由软件自动完成分析,验证时间大大缩短,测试覆盖率可达100%。

静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分析,给出正确是时序报告。

进行静态时序分析,主要目的就是为了提高系统工作主频以及增加系统的稳定性。

对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。

通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。

3. 理论分析
3.1 静态时序分析的理论基础知识
在进行正确的时序分析前,我们必须具备基本的静态时序的基本知识点,不然看着编译器给出的时序分析报告犹如天书。

如图3.1所示,为libero软件给出的寄存器到寄存器模型的时序分析报告的截取,接下来我们会弄清楚每个栏目的数据变量的含义,以及计算方法。

图3.1 libero静态时序分析报告
3.1.1 固定参数launch edge、latch edge、Tsu、Th、Tco概念
1. launch edge
时序分析起点(launch edge):第一级寄存器数据变化的时钟边沿,也是静态时序分析的起点。

2. latch edge
时序分析终点(latch edge):数据锁存的时钟边沿,也是静态时序分析的终点。

3. Clock Setup Time (Tsu)
建立时间(Tsu):是指在时钟沿到来之前数据从不稳定到稳定所需的时间,如果建立的时间不满足要求那么数据将不能在这个时钟上升沿被稳定的打入触发器。

如图3.2所示:
图3.2 建立时间图解
4. Clock Hold Time (Th)
保持时间(Th):是指数据稳定后保持的时间,如果保持时间不满足要求那么数据同样也不能被稳定的打入触发器。

保持时间示意图如图3.3所示:
图3.3 保持时间图解
5. Clock-to-Output Delay(tco)
数据输出延时(Tco):这个时间指的是当时钟有效沿变化后,数据从输入端到输出端的最小时间
间隔。

3.1.2 Clock skew
时钟偏斜(clock skew):是指一个时钟源到达两个不同寄存器时钟端的时间偏移,如图3.4所示:
图3.4 时钟偏斜
时钟偏斜计算公式如下:
Tskew = Tclk2 - Tclk1
(公式3-1)
3.1.3 Data Arrival Time
数据到达时间(Data Arrival Time):输入数据在有效时钟沿后到达所需要的时间。

主要分为三部分:时钟到达寄存器时间(Tclk1),寄存器输出延时(Tco)和数据传输延时(Tdata),如图3.5所示
图3.5 数据到达时间
数据到达时间计算公式如下:
Data Arrival Time = Launch edge + Tclk1 +Tco + Tdata
(公式3-2)
3.1.4 Clock Arrival Time
时钟到达时间(Clock Arrival Time):时钟从latch边沿到达锁存寄存器时钟输入端所消耗的时间为时钟到达时间,如图3.6所示
图3.6 时钟到达时间
时钟到达时间计算公式如下:
Clock Arrival Time = Lacth edge + Tclk2
(公式3-3)
3.1.5 Data Required Time(setup/hold)
数据需求时间(Data Required Time):在时钟锁存的建立时间和保持时间之间数据必须稳定,从源时钟起点达到这种稳定状态需要的时间即为数据需求时间。

如图3.7所示:
图3.7 数据需求时间
(建立)数据需求时间计算公式如下:
Data Required Time = Clock Arrival Time - Tsu
(公式3-4)
(保持)数据需求时间计算公式如下:
Data Required Time = Clock Arrival Time + Th(公式3-5)
3.1.6 Setup slack
建立时间余量(setup slack):当数据需求时间大于数据到达时间时,就说时间有余量,Slack 是表示设计是否满足时序的一个称谓。

图3.8 建立时间余量
如图3.8所示,建立时间余量的计算公式如下:
Setup slack = Data Required Time - Data Arrival
Time(公式3-6)
由公式可知,正的slack表示数据需求时间大于数据到达时间,满足时序(时序的余量),负的slack表示数据需求时间小于数据到达时间,不满足时序(时序的欠缺量)。

3.1.7 时钟最小周期
时钟最小周期:系统时钟能运行的最高频率。

1.当数据需求时间大于数据到达时间时,时钟具有余量;
2. 当数据需求时间小于数据到达时间时,不满足时序要求,寄存器经历亚稳态或者不能正确获得数据;
3. 当数据需求时间等于数据到达时间时,这是最小时钟运行频率,刚好满足时序。

从以上三点可以得出最小时钟周期为数据到达时间等于数据需求时间,的运算公式如下:
Data Required Time = Data Arrival Time
(公式3-7)
由上式推出如下公式:
Tmin + Latch edge + Tclk2 - Tsu = Launch edge + Tclk1 + Tco + Tdata 最终推出最小时钟周期为:
Tmin = Tco + Tdata + Tsu - Tskew
(公式3-8)
4. 应用分析
4.1 设置时钟主频约束
所有的静态时序分析都是在有约束的情况下编译器才给出分析报告,所以进行时序分析的第一步就是设置约束。

Libero软件设置时钟约束的途径三种,单时钟约束,多时钟约束和在Designer里面进行约束。

4.1.1 单时钟约束
有时我们系统所有模块都采用同一个时钟,这种方式最为简单,直接在Synplify主界面上有个设置时钟约束的,如图4.1中红框所示:
图4.1 单时钟设置
设置完成后,编译,通过Synplify时钟报告看初步时钟运行频率能否达到要求,时钟报告如图4.2所示,设定100Mhz,能运行102.7Mhz,满足时序。

图4.2 时序报告
4.2 多时钟约束
当系统内部模块采用了多个时钟时,那就需要进行多时钟约束了。

首先需要打开设置界面,在
Synplify中选择:File->New->Constraint File建立SDC文件,选择时钟约束如图4.3所示:
图4.3 多时钟约束
对时钟进行如下约束后保存SDC文件,约束如图4.4所示
图4.4 多时钟约束完成
4.3 Designer SmartTime时钟约束
时钟约束除了在Synplify中可以约束外,还可以在Designer SmartTime中设置时钟约束,打开Designer Constraint,选择Clock进行针对每个使用时钟的设置,如图4.5所示:
图4.5 Designer时序约束
4.4 时序报告分析
4.4.1 Synplify时序报告
当约束了时序后,需要观察时序报告,看时钟能否达到我们需要的时钟,首先观察Synplify综合报告。

以多时钟约束为例子,从Synplify得到的时序报告如图4.6所示:
图4.6 多时钟约束时序报告
由上图可知时序都满足约束,未出现违规,可以在下面的报告中查看最差路径,如图4.7所示是clk2的最差路径。

图4.7 最差路径
4.4.2 Designer SmartTime时序分析报告
当设计经过Synplify综合给出网表文件后,还需要Designer进行布局布线,通过布局布线优化后的时序会有变化,因此,还需要分析布局布线后的时序,打开Designer->Timing Analyzer 查阅整体时序分析报告如图4.8所示:
图4.8 布局布线后时序报告
由Synplify综合后的报告和Designer进行布局布线后的报告可以看出,布局布线后优化了一些时序,特别是clk2时钟,通过布局布线后优化到了184Mhz,完全满足时序。

4.4.3 详细时序报告图
通过Synplify综合后的和Designer进行布局布线都只是看到了一个大体的时序报告,当我们需要分析时序时候必须观察仔细的时序报告,在SmartTime中提供这种报告功能,以clk2分析为例,在Timing Analyzer找到如下区域。

图4.9 时序报告选择
如图4.9所示,选择寄存器到寄存器进行分析时钟主频。

图4.10 寄存器到寄存器分析
如图4.10所示,时序报告中给出了数据延时,时序余量,数据到达时间,数据需求时间,数据建立时间,以及最小周期和时钟偏斜等信息,有了上一节的时序分析基础知识,我们完全能看懂这些
数据代表的意义,这样对我们时序分析就知己知彼,进一步双击其中一条路径,还会给出这条路径的硬件电路图,如图4.11所示,有了这些详细的时序报告,对设计进行调整更加清晰。

图4.11 硬件路径。

相关文档
最新文档