约束、时序分析的概念介绍.docx

上传人:太** 文档编号:38939870 上传时间:2022-09-06 格式:DOCX 页数:11 大小:392.34KB
返回 下载 相关 举报
约束、时序分析的概念介绍.docx_第1页
第1页 / 共11页
约束、时序分析的概念介绍.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《约束、时序分析的概念介绍.docx》由会员分享,可在线阅读,更多相关《约束、时序分析的概念介绍.docx(11页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、约束、时序分析的概念介绍很多人询问关于约束、时序分析的问题,比方:如何设置setup, hold时 间?如何使用全局时钟和第二全局时钟(长线资源)?如何进行分组约束?如 何约束某局部组合逻辑?如何通过约束保证异步时钟域之间的数据交换可靠? 如何使用I/O逻辑单元内部的寄存器资源?如何进行物理区域约束,完成物理 综合和物理实现?为了解决大家的疑难,我们将逐一讨论这些问题。(注:以 下主要设计时序约束)A时序约束的概念和基本策略时序约束主要包括周期约束(FFS到FFS,即触发器到触发器)和偏移约束 (IPAD到FFS、FFS到0PAD)以及静态路径约束(IPAD到0PAD)等3种。通过 附加约束条

2、件可以使综合布线工具调整映射和布局布线过程,使设计到达时序 要求。例如用0FFSETN_BEF0RE约束可以告诉综合布线工具输入信号在时钟之 前什么时候准备好,综合布线工具就可以根据这个约束调整与IPAD相连的 Logic Circuitry的综合实现过程,使结果满足FFS的建立时间要求。附加时序约束的一般策略是先附加全局约束,然后对快速和慢速例外路径 附加专门约束。附加全局约束时,首先定义设计的所有时钟,对各时钟域内的 同步元件进行分组,对分组附加周期约束,然后对FPGA/CPLD输入输出PAD附 加偏移约束、对全组合逻辑的PAD TO PAD路径附加约束。附加专门约束时,首 先约束分组之间

3、的路径,然后约束快、慢速例外路径和多周期路径,以及其他 特殊路径。B附加约束的基本作用提高设计的工作频率对很多设计来说,提高工作频率非常重要,因为高工作频率意味着高处理 能力。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和 布线延时,从而提高工作频率。获得正确的时序分析报告几乎所有的FPGA设计平台都包含静态时序分析工具,利用这类工具可以获 得映射或布局布线后的时序分析报告,从而对设计的性能做出评估。静态时序Launching EdgeLaunching EdgeSlackClock PeriodCturing Edge图9 slack示意图Slack = Required c

4、lock period - Actual clock periodSlack = Slack clock period - (Micro tCO+ Data Delay + Micro tSU)Clock Skew指一个同源时钟到达两个不同的寄存器时钟端的时间偏移,如 下列图所示。图10 clock skew示意图分析工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确 输入约束,以便静态时序分析工具输出正确的时序分析报告。指定FPGA/CPLD引脚位置与电气标准FPGA/CPLD的可编程特性使设计加工和FPGA/CPLD设计可以同时进行,而 不必等FPGA/CPLD引脚位置完全确

5、定,从而节省了系统开发时间。这样,电路 板加工完成后,设计者要根据电路板的走线对FPGA/CPLD加上引脚位置约束, 使FPGA/CPLD与电路板正确连接。另外通过约束还可以指定10引脚所支持的接 口标准和其他电气特性。为了满足日新月异的通信开展,Xilinx新型 FPGA/CPLD可以通过10引脚约束设置支持诸如AGP、BLVDS. CTT、GTL、GTLP、 HSTL、 LDT、 LVCMOS、 LVDCE LVDS、 LVPECL、 LVDSEXT、 LVTTL、 PCI、 PCIX、 SSTL、ULVDS等丰富的10接口标准。另外通过区域约束还能在FPGA上规划各 个模块的实现区域,通

6、过物理布局布线约束,完成模块化设计等。C周期(PERIOD)的含义周期的含义是时序中最简单也是最重要的含义,其它很多时序概念会因为 软件商不同略有差异,而周期的概念确是最通用的,周期的概念是FPGA/ASIC 时序定义的基础概念。后面要讲到的其它时序约束都是建立在周期约束的基础 上的,很多其它时序公式,可以用周期公式推导。周期约束是一个基本时序和 综合约束,它附加在时钟网线上,时序分析工具根据PERIOD约束检查时钟域内 所有同步元件的时序是否满足要求。PERIOD约束会自动处理寄存器时钟端的反 相问题,如果相邻同步元件时钟相位相反,那么它们之间的延迟将被默认限制 为PERIOD约束值的一半。

7、如下列图所示,图1周期的定义时钟的最小周期为:TCLK = TCKO +TLOGIC +TNET +TSETUP -TCLK SKEWTCLK SKEW =TCD2 -TCD1其中TCKO为时钟输出时间,TLOGIC为同步元件之间的组合逻辑延迟,TNET为网线延迟,TSETUP为同步元件的建立时间,TCLK_SKEW为时钟信号TCD2 和TCD1延迟的差异。D数据和时钟之间的约束为了确保芯片数据采样可靠和下级芯片之间正确地交换数据,需要约束外 部时钟和数据输入输出引脚之间的时序关系(或者内部时钟和外部输入/输出数 据之间的关系,这仅仅是从采用了不同的参照系罢了)。约束的内容为告诉综 合器、布线

8、器输入数据到达的时刻,或者输出数据稳定的时刻,从而保证与下 一级电路的时序关系。这种时序约束在 Xilinx 中用 Setup to Clock (edge) , Clock (edge) to hold 等表示。在 Altera 里常用 tsu (Input Setup Times)、th (Input Hold Times)、tco (Clock to Out Delays)来表示。很多其它时序工具直接 用setup和hold表示。其实他们所要描述的是同一个问题,仅仅是时间节点的 定义上略有不同。下面依次介绍。E关于输入到达时间Xilinx的“输入到达时间的计算”时序描述如下列图所示:CL

9、K开发中的器件图2输入到达时间示意图定义的含义是输入数据在有效时钟沿之后的TARRIVAL时刻到达。贝IJ,TARRIVAL=TCKO+TOUTPUT+TLOGIC 公式 1根据上面介绍的周期(Period)公式,我们可以得到:Tcko+Toutput+Tlogic+Tinput+Tsetup-Tclk_skew=Tclk;公式 2将公式 1 代入公式 2: Tarrival+Tinput+Tsetup-Tclk_skew=Tclk, 而 Tclk_skew满足时序关系后为负,所以TARRIVAL +TINPUT+TSETUP这就是Tarrival应该满足的时序关系。其中TINPUT为输入端的

10、组合逻辑、 网线和PAD的延迟之和,TSETUP为输入同步元件的建立时间。F数据延时和数据到达时间的关系ARRIVALARRIVALDELAY MAXPERIOD图3数据延时和数据到达时间示意图TDELAY为要求的芯片内部输入延迟,其最大值TDELAY_MAX与输入数据到 达时间TARRIVAL的关系如上图所不。也就是说:TDELAY_MAX+TARRIVAL=TPERIOD 公式 4所以:TDELAYG要求输出的稳定时间从下一级输入端的延迟可以计算出当前设计输出的数据必须在何时稳定下 来,根据这个数据对设计输出端的逻辑布线进行约束,以满足下一级的建立时 间要求,保证下一级采样的数据是稳定的。

11、计算要求的输出稳定时间如下列图所 示:CLKCLK开发中的器件图4要求的输出稳定时间示意图公式的推导如下:定义:TSTABLE = TLOGIC +TINPUT +TSETUP从前面帖子介绍的周期(Period)公式,可以得到(其中TCLK_SKEW= TCLK1-TCLK2):TCLK=TCKO+TOUTPUT+TLOGIC+TINPUT+TSETUP+TCLK_SKEW将TSTABLE的定义代入到周期公式,可以得到:TCLK=TCKO+TOUTPUT+TSTABLE+TCLK_SKEW所以:TCKO +TOUTPUT+TSTABLE这个公式就是TSTABLE必须要满足的基本时序关系,即本级

12、的输出应该保 持怎么样的稳定状态,才能保证下级芯片的采样稳定。有时我们也称这个约束 关系是输出数据的保持时间的时序约束关系。只要满足上述关系,当前芯片输 出端的数据比时钟上升沿提早TSTABLE时间稳定下来,下一级就可以正确地采 样数据。其中TOUTPUT为设计中连接同步元件输出端的组合逻辑、网线和PAD 的延迟之和,TCKO为同步元件时钟输出时间。H实施时序约束的方法和命令实施上述约束的基本方法是,根据时序信息,推算需要约束的时间值, 实施约束。具体地说是这样的,首先对于一般设计,首先掌握的是TCLK,这个 对于设计者来说是个量。前面介绍公式和图中的TCKO和TSETUP (注:有 的工具软

13、件对TCKO和TSETUP的定义与前面图形不同,还包含了到达同步器件 的一段logic的时延)是器件内部固有的一个时间量,一般我们选取典型值, 对于FPGA,这个量值比拟小,一般不大于广2ns。比拟难以确定的是TINPUT和 T0UTPUT两个时间量。约束输入时间偏移,需要知道TINPUT, TINPUT为输入端的组合逻辑、网线 和PAD的延迟之和,PAD的延时也根据器件型号也有典型值可选,但是到达输 入端的组合逻辑电路和网线的延时就比拟难以确定了,只能通过静态时序分析 工具分析,或者通过底层布局布线工具量取,有很大的经验和试探的成分在里 面。约束输出时间偏移,需要知道TOUTPUT, TOU

14、TPUT为设计中连接同步元件输 出端的组合逻辑、网线和PAD的延迟之和,仍然是到达输出端的组合逻辑电路 和网线的延时就比拟难以确定,需要通过静态时序分析工具分析,或者通过底 层布局布线工具量取,有很大的经验和试探的成分在里面。约束的具体命令根据约束工具不同而异,首先说使用Xilinx器件的情况下, 实施上述约束的命令和方法。Xilinx把上述约束统称为:OFFSET约束(偏移约 束),一共有 4 个相关约束属性:OFFSETN_BEFORE、OFFSET_IN_AFTER OFFSET_OUT_BEFORE和0FFSET_0UT_AFTERo其中前两个属性叫做输入偏移 (OFFSET_IN)约

15、束,基本功能相似,仅仅是约束取的参考对象不同而已。后两 个属性叫做输出偏移(OFFSET.OUT)约束,基本功能相似,也是约束取的参考 对象不同而已。为了便于理解,举例说明。输入偏移约束:时钟周期为20ns,前级寄存器的TCKO选择1ns,前级输出 逻辑延时TOUTPUT为3ns,中间逻辑TLOGIC的延时为10ns,那么 TARRIVAL=14ns,于是可以在数据输入引脚附加NET DATA_IN OFFET=IN 14ns AFTER CLK约束,也可以使用OFFSETN_BEFORE对芯片内部的输入逻辑进行约 束,其语法如下:NET DATA_IN OFFET=IN TDELAY BEF

16、ORE CLK其中TDELAY为要求的芯片内部输入延迟,其最大值与输入数据到达时间 TARRIVAL 的关系:TDELAY_MAX + TARRIVAL = TPERIOD,所以 TDELAY TPERIOD - TARRIVAL = 20 - 14 =6 ns。输出偏移约束:设时钟周期为20ns,后级输入逻辑延时TINPUT为4ns、建 立时间TSETUP为1ns,中间逻辑TLOGIC的延时为10ns,那么TSTABLE=15ns, 于是可以在数据输入引脚附加NET DATA_OUT OFFET=OUT 15ns BEFORE CLK约束, 也可以直接对芯片内部的输出逻辑直接进行约束,NET

17、 DATA_OUT OFFET=OUTTOUTPUT_DELAY AFTER CLK,其中TOUTPUT_DELAY为要求的芯片内部输出延迟, 其最大值与要求的输出数据稳定时间TSTABLE的关系为:TOUTPUT_DELAY_MAX+TSTABLE二 TPERIODo TOUT_DELAY TPERIOD - TSTABLE = 20 - 15 = 5nsI Altera对应的时序概念下面主要介绍Altera对应的这些时序概念和约束方法。前面首先介绍的 第一个时序概念是周期(Period),这个概念是FPGA/ASIC通用的一个概念, 各方的定义相当统一,至多是描述方式不同罢了,所有的FPG

18、A设计都首先要进 行周期约束,这样做的好处除了在综合与布局布线时给出规定目标外,还能让 时序分析工具考察整个设计的Fmax等。Altera的周期定义如下列图所示,公式描述如下:Clock Period图5 Altera的Period示意图Clock Period = Clk-to-out + Data Delay + Setup Time - Clk Skew即,Tclk= Tco+ B + Tsu- (E-C) Fmax =1/Tclk比照一下前面的介绍,只要理解了 B包含了两级寄存器之间的所有logic 和net的延时就会发现与前面公式完全一致。J Altera的其他基本时序概念Clock

19、 Setup Time (tsu)要想正确采样数据,就必须使数据和使能信号 在有效时钟沿到达前就准备好,所谓时钟建立时间就是指时钟到达前,数据和 使能已经准备好的最小时间间隔。如下列图所示:Data DelayClock Delay图6 tsu示意图(注:这里定义Setup时间是站在同步时序整个路径上的,需要区别的是 另一个概念Micro tsuo Micro tsu指的是一个触发器内部的建立时间,它是触 发器的固有属性,一般典型值小于广2ns。在Xili)等的时序概念中,称 Altera的Micro tsu为setup时间,用Tsetup表示,请大家区分一下。回到 Altera 的时序概念,

20、Altera 的 tsu 定义如下:tsu 二 Data Delay - Clock Delay + Micro tsu)Clock Hold Time (tH)时钟保持时间是只能保证有效时钟沿正确采用的 数据和使能信号的最小稳定时间。其定义如下列图所示:Data DelayClock Delay图7 tH示意图定义的公式为:tH= Clock Delay - Data Delay + Micro tH注:其中Micro tH是指寄存器内部的固有保持时间,同样是寄存器的一个 固有参数,典型值小于12ns。Clock-to-Output Delay (tco)这个时间指的是当时钟有效沿变化后,将

21、 数据推倒同步时序路径的输出端的最小时间间隔。如下列图所示:Clock Delay图8 tco示意图tco = Clock Delay + Micro tco + Data Delay(注:其中Micor tco也是一个寄存器的固有属性,指的是寄存器相应时 钟有效沿,将数据送到输出端口的内部时间参数。它与Xilinx的时序定义中, 有一个概念叫Tcko是同一个概念。)Pin to Pin Delay (tpd) tpd指输入管脚通过纯组合逻辑到达输出管脚 这段路径的延时,特别需要说明的是,要求输入到输出之间只有组合逻辑,才 是tpd延时。Slack是表示设计是否满足时序的一个称谓,正的slack表示满足时序 (时序的余量),负的slack表示不满足时序(时序的欠缺量)。slack的定 义和图形如下列图所示。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com