预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

FPGA高级设计——时序分析和收敛 Altera公司上海交通大学EDA/SOPC联合实验室 何谓静态时序分析(StaticTimingAnalysis,简称STA) 它可以简单的定义为:设计者提出一些特定的时序要求(或者说是添加特定的时序约 束),套用特定的时序模型,针对特定的电路进行分析。分析的最终结果当然是要求系统时 序满足设计者提出的要求。 下面举一个最简单的例子来说明时序分析的基本概念。假设信号需要从输入到输出在 FPGA内部经过一些逻辑延时和路径延时。我们的系统要求这个信号在FPGA内部的延时不 能超过15ns,而开发工具在执行过程中找到了如图1所示的一些可能的布局布线方式。那 么,怎样的布局布线能够达到我们的要求呢?仔细分析一番,发现所有路径的延时可能为 14ns、14ns、16ns、17ns、18ns,有两条路径能够满足要求,布局布线就会选择满足要求的 两条路径之一。 图1静态时序分析模型 因此,有些说法是错误的,不分什么情况就说时序不收敛,其实在不加约束的情况下谈 时序约束是没有意义的。 附加约束的基本作用: 1、提高设计的工作频率 对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。 通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高 工作频率。 2、获得正确的时序分析报告 几乎所有的FPGA设计平台都包含静态时序分析工具,利用这类工具可以获得映射或 布局布线后的时序分析报告,从而对设计的性能做出评估。静态时序分析工具以约束作为判 断时序是否满足设计要求的标准,因此要求设计者正确输入约束,以便静态时序分析工具输 出正确的时序分析报告。 3、指定FPGA/CPLD引脚位置与电气标准 FPGA/CPLD的可编程特性使电路板设计加工和FPGA/CPLD设计可以同时进行,而不 必等FPGA/CPLD引脚位置完全确定,从而节省了系统开发时间。这样,电路板加工完成后, 设计者要根据电路板的走线对FPGA/CPLD加上引脚位置约束,使FPGA/CPLD与电路板正 确连接。另外通过约束还可以指定IO引脚所支持的接口标准和其他电气特性。为了满足日 新月异的通信发展,Xilinx新型FPGA/CPLD可以通过IO引脚约束设置支持诸如AGP、 BLVDS、CTT、GTL、GTLP、HSTL、LDT、LVCMOS、LVDCI、LVDS、LVPECL、LVDSEXT、 LVTTL、PCI、PCIX、SSTL、ULVDS等丰富的IO接口标准。另外通过区域约束还能在FPGA 上规划各个模块的实现区域,通过物理布局布线约束,完成模块化设计等。 静态时序分析中使用的各个模型分析: 1、周期(PERIOD)的含义 周期的含义是时序中最简单也是最重要的含义,其它很多时序概念会因为软件商不同略 有差异,而周期的概念确是最通用的,周期的概念是FPGA/ASIC时序定义的基础概念。后 面要讲到的其它时序约束都是建立在周期约束的基础上的,很多其它时序公式,可以用周期 公式推导。周期约束是一个基本时序和综合约束,它附加在时钟网线上,时序分析工具根据 PERIOD约束检查时钟域内所有同步元件的时序是否满足要求。PERIOD约束会自动处理寄 存器时钟端的反相问题,如果相邻同步元件时钟相位相反,那么它们之间的延迟将被默认限 制为PERIOD约束值的一半,如图2所示: 图2周期定义 时钟的最小周期为: TCLK=TCKO+TLOGIC+TNET+TSETUP-TCLK_SKEW TCLK_SKEW=TCD1-TCD2(稳定时为负的) 其中TCKO为时钟输出时间,TLOGIC为同步元件之间的组合逻辑延迟,TNET为网线 延迟,TSETUP为同步元件的建立时间,TCLK_SKEW为时钟信号TCD2和TCD1延迟的 差别。 2、关于输入到达时间 图3输入到达时间示意图 定义的含义是输入数据在有效时钟沿之后的TARRIVAL时刻到达。则 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<Tclk(3) 这就是Tarrival应该满足的时序关系。其中TINPUT为输入端的组合逻辑、网线和PAD 的延迟之和,TSETUP为输入同步