第九章时序约束
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3、 输出延迟的设定
这种路径的约束是为了让FPGA设计工具能够优化FPGA内部从
最后一级寄存器到输出端口的路径,确保其输出的信号能够被 下一级芯片正确的采到。约束名称:output delay 约束条件的影响主要有3个因素:外部芯片的Tsu,电路板上信 号延迟Tpd,时钟延迟Tclk. Tsu的参数通常需要查外部芯片的数 据手册。 计算公式:output delay = Tsu+Tpd-Tclk. 例如:系统时钟100MHz, 电路板上最大延迟2ns, 时钟最大延迟 1.7ns, Tsu 1ns, 输出延迟的值: max output delay = 1+21.7=1.3ns . 这个参数的含义是指 让FPGA的设计工具把最后一级 寄存器到输出端口之间的路径延迟(包括门延迟和线延迟)控 制在 10ns-1.3ns=8.7ns 以内。
个别时钟约束一独立时钟设置
Assignment/timing settings ,在弹出的窗口中点 击individual clocks选项
个别时钟约束一衍生时钟设置
输入最大/最小延时
“输入最大延时”约束指定了外部输入路径延时的 最差情况。外部延时包含了外部上游器件的tco,加 上PCB走线的延时。 外部芯片和fpga使用同相位的时钟信号,因此fpga 的输入数据的建立时间需要满足: tsuA≤tclk-input maximum delay “输入最小延时”约束指定了外部输入路径延时的最 小情况。 fpga的输入数据的建立时间需要满足: thA ≤ input minimum delay
2 时序约束与时序分析基础
时序约束的概念:时序约束主要包括周期约束(FFS到FFS, 即触发器到触发器)和偏移约束(IPAD到FFS、FFS到OPAD)以 及静态路径约束(IPAD到OPAD)等3种。 附加时序约束的一般策略是先附加全局约束,然后对快速 和慢速例外路径附加专门约束。 附加全局约束时,首先定义设计的所有时钟,对各时钟域 内的同步元件进行分组,对分组附加周期约束,然后对 FPGA/CPLD输入输出PAD附加偏移约束、对全组合逻辑的PAD TO PAD路径附加约束。 附加专门约束时,首先约束分组之间的路径,然后 约束快、慢速例外路径和多周期路径,以及其他特殊路径。
其中TCKO为寄存器固有的时钟输出延迟,TLOGIC为同步元 件之间的组合逻辑延迟,TNET为网线延迟,TSETUP寄存器固 有的建立时间,TCLK_SKEW为时钟偏斜
Fmax=1/ TCLK
建立时间(Tsu)
时钟建立时间就是指时钟到达前,数据和使能已经准备好的最 小时间间隔 tsu = Data Delay – Clock Delay + Micro tsu Micro tsu指的是一个触发器内部的建立时间,它是触发器的固 有属性,一般典型值小于1ns
4、 寄存器到寄存器延迟的设定
这种路径的约束是为了让FPGA设计工具能够优化FPGA内寄
存器到寄存器之间的路径,使其延迟时间必须小于时钟周期, 这样才能确保信号被可靠的传递。 由于这种路径只存在于 FPGA内部,通常通过设定时钟频率的方式就可以对其进行约 束。对于更深入的优化方法,还可以采用对寄存器的输入和 寄存器的输出加入适当的约束,来使逻辑综合器和布线器能 够对某条路径进行特别的优化。 还可以通过设定最大扇出数 来迫使工具对其进行逻辑复制,减少扇出数量,提高性能。 5、 输入端口到输出端口 这种路径是指组合逻辑的延迟,指信号从输入到输出没有 经过任何寄存器。给这种路径加约束条件,需要虚拟一个时 钟,然后通过约束来指定哪些路径是要受该虚拟时钟的约束。
约束条件的影响主要有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, Tco 3ns, FPGA的Tsu为0.2ns. 那么输入延迟的值: max Input delay = 2+3+0.2-1.7=3.5ns. 这个参数的含义是指 让 FPGA的设计工具把FPGA的输入端口到第一级寄存器之间的 路径延迟(包括门延迟和线延迟)控制在 10ns-3.5ns=6.5ns 以内。
全编译
Processing/start/start timing analysis 使用Tcl脚本运行时序分析工具
时序分析报告内容
Timing analyzer settings:时序分析设置 Timing analyzer summery: 时序分析概要 Clock setup:时钟建立关系 Clock hold:时钟保持关系 Tsu:输入建立时间 Th:输入保持时间 Tco:时钟到输出延时 Tpd:管脚到管脚延时 Minimum tpd&tco:最小tpd和tco
指一个同源时钟到达两个不同的寄存器时钟端 的时间偏移
Slack
表示设计是否满足时序的一个称谓,正的slack表示 满足时序(时序的余量),负的slack表示不满足时 序(时序的欠缺量)。
Slack = Required clock period – Actual clock
period
Slack:Setபைடு நூலகம்p slack
时序约束与时序分析
约束的分类
时序约束与时序分析基础 时序约束的基本作用
时序约束的路径
Quartus 工具运行时序分析
设置时序约束的常用方法
1 约束的分类
时序约束:规范设计的时序行为,表达设计
者期望满足的时序要求,指导综合和布局布 线阶段的优化算法等。 区域与位置约束:用于指定芯片I/O管脚位置 以及指导实现工具在芯片指定的物理区域进 行布局布线。 其它约束:泛指目标芯片型号、电气特性等 约束属性。
时钟保持时间
时钟保持时间是只能保证有效时钟沿正确采用的数 据和使能信号的最小稳定时间 Th= Clock Delay – Data Delay + Micro Th 其中Micro Th是指寄存器内部的固有保持时间,同样 是寄存器的一个固有参数,典型值小于1~2ns
时钟到输出延时
从时钟信号有效沿到数据有效的时间间隔。 tco = Clock Delay + Micro tco + Data Delay Micor tco也是一个寄存器的固有属性,指的是寄存
器相应时钟有效沿,将数据送到输出端口的内部时 间参数
管脚到管脚延时
tpd指输入管脚通过纯组合逻辑到达输出管脚
这段路径的延时 .特别需要说明的是,要求输 入到输出之间只有组合逻辑,才是tpd延时 由于CPLD的布线矩阵长度固定,所以常用最 大管脚到管脚延时标准CPLD的速度等级。
Clock Skew
输入延时
输出最大/最小延时
“输出最大延时”约束指定了外部输出路径延时的 最差情况。外部延时实际上包含了外部下游器件的 tsu,加上pcb走线的延时。
tcoB≤tclk-output maximum delay;
tcoB≥output minimum delay
指定个别时钟要求
时钟分类:
独立时钟 衍生时钟
指定个别时钟要求
独立时钟之间是非相关时钟,而独立时钟和
其衍生时钟之间是相关时钟,缺省情况下, QuartusII不分析非相关时钟之间的路径。 指定独立时钟要求时,须显式指定该时钟的 Fmax和占空比。 指定衍生时钟要求时,只需指定衍生时钟相 对于产生该衍生时钟的独立时钟的相位差、 分频或倍频比等参数。
全局的I/O时序设置
时序分析和报告选项
时序分析和报告选项
时序向导
在对时序约束设置不熟悉的情况下,可以选择 使用向导。 Assignment/classic timing analyser wizards
指定个别时序约束
指定个别时钟要求 个别时序约束 输入最大最小延时 输出最大最小延时 反相时钟 非时钟 tCO要求(最大、最小)、 tSU要求、 tH要求、 tPD要求 剪除时序路径 时序约束的种类 单点 点到点 通配符 时序组
设计中常用的时序概念
周期 最大时钟频率 时钟建立时间 时钟保持时间 时钟到输出延时 管脚到管脚延时 Slach 时钟偏斜
周期与最大时钟频率
Fmax:所设计系统的稳定情况下的最高时钟频率,他是时序分析中最重要的 指标,综合表现所设计时序的性能 TCLK = TCKO +TLOGIC +TNET +TSETUP -TCLK_SKEW TCLK_SKEW = TCD2 - TCD1
时序约束的基本作用
提高设计的工作频率 :
通过附加约束可以控制逻辑的综合、映射、布局和布线, 以减小逻辑和布线延时,从而提高工作频率。 获得正确的时序分析报告: FPGA设计平台都包含静态时序分析工具,利用这类工 具可以获得映射或布局布线后的时序分析报告,从而对设计 的性能做出评估。 指定FPGA/CPLD引脚位置与电气标准 1 可编程特性使电路板设计加工和FPGA设计可以同时进 行,而不必等FPGA引脚位置完全确定,从而节省了系统开发 时间 2 通过约束还可以指定IO引脚所支持的接口标准和其他 电气特性
指定全局时序约束
时序驱动的编译
全局时钟设置 全局的I/O时序设置
时序分析和报告选项
时序向导
时序驱动的编译
将编绎器设置为时 序驱动编绎,即是 指让编绎过程尽量 向着满足时序约束 方向努力! assignment/settings /fitter setting
全局时钟设置
全局时钟设置如果 在设计中只有一个 全局时钟,或者所 有的时钟同频,可 以在Quartus2中 只设置一个全局时 钟约束。 assignment/timing settings
Setup Slack = Slack clock period – (Micro tCO+ Data Delay + Micro tSU)
Slack:hold slack
hold slack= (Micro tCO+ Data Delay + Micro
th)-(B-A)
Quartus 工具运行时序分析
时序约束路径
时序约束主要围绕4种时序路径来进行设置: ★从输入端口到寄存器 ★从寄存器到寄存器
★从寄存器到输出 ★从输入到输出的纯组合逻辑。
1、 时钟定义 主要对时钟的周期、占空比、抖动和延迟进行描述。 2、 输入延迟的设定 这种路径的约束是为了让FPGA设计工具能够尽可能的优化
从输入端口到第一级寄存器之间的路径延迟,使其能够保证 系统时钟可靠的采到从外部芯片到FPGA的信号。 约束名称:input delay。
时序分析内容窗口
分析设计
在分析报告中,会以升序方式排列出路径的fmax,利用
quaruts一些功能分析到更多的信息。在所选的时序路径上, 单击鼠标右键,弹出一些查看路径细节的选项。分别是
全局时序约束与个别时序约束
全局时序约束即指定工程范围内通用的全局性时序 约束。 个别时序约束即对特殊的结点、路径、分组、模块 指定个别性的时序约束。 个别时序约束的优先级高于全局时序约束。 QuartusII中常用的设置时序约束的途径: assignment/timing settings菜单命令 assginment/wizard/timing wizard菜单命令 assignmnt/assignment editor选项在图形界面下完成。 前2种方法是全局约束,后1中做个别约束,另外还可 以通过修改.qsf文件来实现