第九章时序约束.ppt_第1页
第九章时序约束.ppt_第2页
第九章时序约束.ppt_第3页
第九章时序约束.ppt_第4页
第九章时序约束.ppt_第5页
免费预览已结束,剩余43页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、时序约束与时序分析,约束的分类 时序约束与时序分析基础 时序约束的基本作用 时序约束的路径 Quartus 工具运行时序分析 设置时序约束的常用方法,1 约束的分类,时序约束:规范设计的时序行为,表达设计者期望满足的时序要求,指导综合和布局布线阶段的优化算法等。 区域与位置约束:用于指定芯片I/O管脚位置以及指导实现工具在芯片指定的物理区域进行布局布线。 其它约束:泛指目标芯片型号、电气特性等约束属性。,2 时序约束与时序分析基础,时序约束的概念:时序约束主要包括周期约束(FFS到FFS, 即触发器到触发器)和偏移约束(IPAD到FFS、FFS到OPAD)以 及静态路径约束(IPAD到OPAD

2、)等3种。 附加时序约束的一般策略是先附加全局约束,然后对快速 和慢速例外路径附加专门约束。 附加全局约束时,首先定义设计的所有时钟,对各时钟域 内的同步元件进行分组,对分组附加周期约束,然后对 FPGA/CPLD输入输出PAD附加偏移约束、对全组合逻辑的PAD TO PAD路径附加约束。 附加专门约束时,首先约束分组之间的路径,然后 约束快、慢速例外路径和多周期路径,以及其他特殊路径。,时序约束的基本作用,提高设计的工作频率 : 通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。 获得正确的时序分析报告: FPGA设计平台都包含静态时序分析工具,利用这

3、类工具可以获得映射或布局布线后的时序分析报告,从而对设计的性能做出评估。 指定FPGA/CPLD引脚位置与电气标准 1 可编程特性使电路板设计加工和FPGA设计可以同时进行,而不必等FPGA引脚位置完全确定,从而节省了系统开发时间 2 通过约束还可以指定IO引脚所支持的接口标准和其他电气特性,时序约束路径,时序约束主要围绕4种时序路径来进行设置: 从输入端口到寄存器 从寄存器到寄存器 从寄存器到输出 从输入到输出的纯组合逻辑。 1、 时钟定义 主要对时钟的周期、占空比、抖动和延迟进行描述。 2、 输入延迟的设定 这种路径的约束是为了让FPGA设计工具能够尽可能的优化从输入端口到第一级寄存器之间

4、的路径延迟,使其能够保证系统时钟可靠的采到从外部芯片到FPGA的信号。 约束名称:input delay。,约束条件的影响主要有4个因素:外部芯片的Tco,电路板上信号延迟Tpd,FPGA的Tsu, 时钟延迟Tclk. Tco的参数通常需要查外部芯片的数据手册。 计算公式:input delay = Tco+Tpd+Tsu-Tclk. FPGA的Tsu也需要查FPGA芯片的手册。 FPGA速度等级不同,这个参数也不同。 Tpd和Tclk需要根据电路板实际的参数来计算。通常,每10cm的线长可以按照1ns来计算. 例如:系统时钟100MHz, 电路板上最大延迟2ns, 时钟最大延迟 1.7ns,

5、 Tco 3ns, FPGA的Tsu为0.2ns. 那么输入延迟的值: max Input delay = 2+3+0.2-1.7=3.5ns. 这个参数的含义是指 让FPGA的设计工具把FPGA的输入端口到第一级寄存器之间的路径延迟(包括门延迟和线延迟)控制在 10ns-3.5ns=6.5ns 以内。,3、 输出延迟的设定 这种路径的约束是为了让FPGA设计工具能够优化FPGA内部从最后一级寄存器到输出端口的路径,确保其输出的信号能够被下一级芯片正确的采到。约束名称:output delay 约束条件的影响主要有3个因素:外部芯片的Tsu,电路板上信号延迟Tpd,时钟延迟Tclk. Tsu的

6、参数通常需要查外部芯片的数据手册。 计算公式:output delay = Tsu+Tpd-Tclk. 例如:系统时钟100MHz, 电路板上最大延迟2ns, 时钟最大延迟 1.7ns, Tsu 1ns, 输出延迟的值: max output delay = 1+2-1.7=1.3ns . 这个参数的含义是指 让FPGA的设计工具把最后一级寄存器到输出端口之间的路径延迟(包括门延迟和线延迟)控制在 10ns-1.3ns=8.7ns 以内。,4、 寄存器到寄存器延迟的设定 这种路径的约束是为了让FPGA设计工具能够优化FPGA内寄存器到寄存器之间的路径,使其延迟时间必须小于时钟周期,这样才能确保

7、信号被可靠的传递。 由于这种路径只存在于FPGA内部,通常通过设定时钟频率的方式就可以对其进行约束。对于更深入的优化方法,还可以采用对寄存器的输入和寄存器的输出加入适当的约束,来使逻辑综合器和布线器能够对某条路径进行特别的优化。 还可以通过设定最大扇出数来迫使工具对其进行逻辑复制,减少扇出数量,提高性能。 5、 输入端口到输出端口 这种路径是指组合逻辑的延迟,指信号从输入到输出没有经过任何寄存器。给这种路径加约束条件,需要虚拟一个时钟,然后通过约束来指定哪些路径是要受该虚拟时钟的约束。,设计中常用的时序概念,周期 最大时钟频率 时钟建立时间 时钟保持时间 时钟到输出延时 管脚到管脚延时 Sla

8、ch 时钟偏斜,周期与最大时钟频率,Fmax:所设计系统的稳定情况下的最高时钟频率,他是时序分析中最重要的指标,综合表现所设计时序的性能 TCLK = TCKO +TLOGIC +TNET +TSETUP TCLK_SKEW TCLK_SKEW = TCD2 TCD1 其中TCKO为寄存器固有的时钟输出延迟,TLOGIC为同步元 件之间的组合逻辑延迟,TNET为网线延迟,TSETUP寄存器固 有的建立时间,TCLK_SKEW为时钟偏斜 Fmax=1/ TCLK,建立时间(Tsu),时钟建立时间就是指时钟到达前,数据和使能已经准备好的最小时间间隔 tsu = Data Delay Clock D

9、elay + Micro tsu Micro tsu指的是一个触发器内部的建立时间,它是触发器的固有属性,一般典型值小于1ns,时钟保持时间,时钟保持时间是只能保证有效时钟沿正确采用的数据和使能信号的最小稳定时间 Th= Clock Delay Data Delay + Micro Th 其中Micro Th是指寄存器内部的固有保持时间,同样 是寄存器的一个固有参数,典型值小于12ns,时钟到输出延时,从时钟信号有效沿到数据有效的时间间隔。 tco Clock Delay + Micro tco + Data DelayMicor tco也是一个寄存器的固有属性,指的是寄存器相应时钟有效沿,将

10、数据送到输出端口的内部时间参数,管脚到管脚延时,tpd指输入管脚通过纯组合逻辑到达输出管脚这段路径的延时 .特别需要说明的是,要求输入到输出之间只有组合逻辑,才是tpd延时 由于CPLD的布线矩阵长度固定,所以常用最大管脚到管脚延时标准CPLD的速度等级。,Clock Skew,指一个同源时钟到达两个不同的寄存器时钟端 的时间偏移,Slack,表示设计是否满足时序的一个称谓,正的slack表示满足时序(时序的余量),负的slack表示不满足时序(时序的欠缺量)。 Slack = Required clock period Actual clock period,Setup Slack = Sl

11、ack clock period (Micro tCO+ Data Delay + Micro tSU),Slack:Setup slack,Slack:hold slack,hold slack= (Micro tCO+ Data Delay + Micro th)-(B-A),Quartus 工具运行时序分析,全编译 Processing/start/start timing analysis 使用Tcl脚本运行时序分析工具,时序分析报告内容,Timing analyzer settings:时序分析设置 Timing analyzer summery: 时序分析概要 Clock setu

12、p:时钟建立关系 Clock hold:时钟保持关系 Tsu:输入建立时间 Th:输入保持时间 Tco:时钟到输出延时 Tpd:管脚到管脚延时 Minimum tpd&tco:最小tpd和tco,时序分析内容窗口,分析设计,在分析报告中,会以升序方式排列出路径的fmax,利用quaruts一些功能分析到更多的信息。在所选的时序路径上,单击鼠标右键,弹出一些查看路径细节的选项。分别是,全局时序约束与个别时序约束,全局时序约束即指定工程范围内通用的全局性时序约束。 个别时序约束即对特殊的结点、路径、分组、模块指定个别性的时序约束。 个别时序约束的优先级高于全局时序约束。 QuartusII中常用的

13、设置时序约束的途径: assignment/timing settings菜单命令 assginment/wizard/timing wizard菜单命令 assignmnt/assignment editor选项在图形界面下完成。 前2种方法是全局约束,后1中做个别约束,另外还可以通过修改.qsf文件来实现,指定全局时序约束,时序驱动的编译 全局时钟设置 全局的I/O时序设置 时序分析和报告选项 时序向导,时序驱动的编译,将编绎器设置为时 序驱动编绎,即是 指让编绎过程尽量 向着满足时序约束 方向努力! assignment/settings /fitter setting,全局时钟设置,全

14、局时钟设置如果 在设计中只有一个 全局时钟,或者所 有的时钟同频,可 以在Quartus2中 只设置一个全局时 钟约束。 assignment/timing settings,全局的I/O时序设置,时序分析和报告选项,时序分析和报告选项,时序向导,在对时序约束设置不熟悉的情况下,可以选择 使用向导。 Assignment/classic timing analyser wizards,指定个别时序约束,指定个别时钟要求 个别时序约束 输入最大最小延时 输出最大最小延时 反相时钟 非时钟 tCO要求(最大、最小)、 tSU要求、 tH要求、 tPD要求 剪除时序路径 时序约束的种类 单点 点到点

15、 通配符 时序组,指定个别时钟要求,时钟分类: 独立时钟 衍生时钟,指定个别时钟要求,独立时钟之间是非相关时钟,而独立时钟和其衍生时钟之间是相关时钟,缺省情况下,QuartusII不分析非相关时钟之间的路径。 指定独立时钟要求时,须显式指定该时钟的Fmax和占空比。 指定衍生时钟要求时,只需指定衍生时钟相对于产生该衍生时钟的独立时钟的相位差、分频或倍频比等参数。,个别时钟约束一独立时钟设置,Assignment/timing settings ,在弹出的窗口中点击individual clocks选项,个别时钟约束一衍生时钟设置,输入最大/最小延时,“输入最大延时”约束指定了外部输入路径延时的

16、最差情况。外部延时包含了外部上游器件的tco,加上PCB走线的延时。 外部芯片和fpga使用同相位的时钟信号,因此fpga的输入数据的建立时间需要满足: tsuAtclk-input maximum delay “输入最小延时”约束指定了外部输入路径延时的最小情况。 fpga的输入数据的建立时间需要满足: thA input minimum delay,输入延时,输出最大/最小延时,“输出最大延时”约束指定了外部输出路径延时的最差情况。外部延时实际上包含了外部下游器件的tsu,加上pcb走线的延时。 tcoBtclk-output maximum delay; tcoBoutput minim

17、um delay,输出延时,反相时钟,非时钟,其它要求,Tco,th,tpd,tsu,都可在assignment editor中设置。 剪除时序路径:可指定专门的时序路径,将其剪除,使其不在时序报告中出现。,时序约束的种类,在约束设置时,可以使用 单点 点到点 通配符 时序分组。,单点,在一个”输入最大/最小延时“的设置中,如果对输入的管脚进行单点约束,那么这个输入管脚到不同时钟驱动的所有寄存器路径有效。,点到点,在一个”输入最大/最小延时“的设置中,如果对“从时钟输入管脚到数据输入管脚”进行点对点约束,那么这个设置对输入管脚到指定时钟驱动的寄存器路径有效。,通配符,如果需要约束管脚的建立时间,而且这个管脚驱动多个触发器,可以在约束中使用通配符,对其中一组路径约束。 一种:用“*”代替零个或多个字符; 另一种:用“

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论