加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

FPGA笔记---时序约束

(2019-02-20 09:53:46)
分类: FPGA_CPU_DSP_MCU
1、术语和缩略语

PCF: Physical Constraints File;  物理约束文件;
UCF: User Constraints File; 用户约束文件;
XCF: XST Constraints File; Xilinx 约束文件;
NCF: Netlist Constraints File; 网表约束文件;
XST: Xilinx Synthesis Technology; Xilinx 综合工具;

PAR: place and route; 布局布线;

clock uncertainty: 时钟不确定度;
clock jitter: 时钟抖动;
clock path skew: 时钟路径偏斜;

Multi-Cycle path: 多周期路径;
static path:静态路径;不包括时钟控制的单元,如pad到pad路径(焊盘到焊盘)。

PVT:process voltage temperature;工艺、电压、温度;

2、时序约束(timing constraints)的分类
(1)period constraints: 时间约束,是基本的时序和综合约束。时钟的定义;覆盖每个时钟域内的所有同步路径;相关时钟域之间的跨时钟域路径的检查;定义时钟持续时间;通常包含了from:to约束,因为时间约束可以覆盖主要路径,降低工具运行时间。
(2)offset constraints: 补偿约束,是基本的时序约束,规定了外部时钟焊盘和与之相关的数据输入、输出焊盘之间的时序关系。
(3)From:To(Multi-cycle)constraints:多周期路径默认包含在时间约束内,可能引起错误,因为时间约束是单周期的约束。为了去除这些错误,把这些路径从时间约束分离出来,将特定的多周期约束与之关联起来。

3、时序约束对象
(1)输入时序约束:对从外部管脚到FPGA内部,用于捕获数据的同步逻辑单元(或寄存器)之间的时序约束,属于补偿约束;
(2)寄存器到寄存器时序约束:对寄存器到寄存器之间路径的时序约束,属于时间约束;
(3)输出时序约束: 内部同步单元或寄存器到外部FPGA外部管脚或焊盘之间的时序约束,属于补偿约束;

4、时序分析

4.1
多种工艺极限(process corner),多节点的时序分析
(1) 多corner,多节点的时序分析,来确保PVT在整个情况变化过程中都有保证;这些快、慢的数值都是基于芯片特性数据的;工艺极限的最大、最小情况作为最坏情况在时序分析报告中体现。
(2)慢工艺极限(最坏情况):高温度,低电压;最差情况看建立分析。
(3)快工艺极限(最好情况):低温度,高电压;最差情况看保持分析。

4.2 异步复位路径

    分析异步复位路径,包括恢复时间以及从复位管脚到复位输出的时间;默认情况下,这些不包括在时间约束分析之中。

4.3 时序分析器
(1)使用时序分析器或trace命令做时序分析;
(2)时序分析的目的:提供一个相对于时序约束需求的,细致的时序路径分析;确保特定的时序约束传递给了应用工具;
(3)时序分析的内容:确认所有路径的每个约束都与相应的时序要求一致;建立、保持要求匹配;芯片设备工作在操作频率范围内;提供一个不受约束的路径,没有被分析的关键路径。

4.4 时间分析
(1)时间分析是对同步单元之间的时序分析。时间约束规定了各时钟域之间的时序关系。
(2)时间分析包括:一个单一时钟域内的路径;关联时钟域路径,和有关联关系的时间约束;源和目的同步单元之间的,频率或时间,相位,和不确定性差别;跨时钟域路径。
(3)部件工作(切换)极限分析:对除了常规建立、保持时间分析之外的部分进行分析;确保设备部件的运行频率不超过器件规格说明的要求。分析对象包括,大设备部件(如DSP和BRAM),小设备部件(如ILOGIC,OLOGIC,和SLICE),时钟部件(如DCM和PLL)。通常部件切换极限:MINPERIOD,MINLOWPULSE,MINHIGNPULSE;其他部件切换极限:MAXPERIOD,MAXLOWPULSE,MAXHIGNPULSE;
(4)路径分析细节:每个同步单元之间的建立、保持时间;例如,单时钟域,双相时钟域,多时钟域。分析报告的首段内容包括,所有路径余量;同步路径性能;源同步单元;目的同步单元;源和目的时钟和相应的时钟沿;数据路径的整体延迟;时钟不确定性;余量方程式;时钟不确定性方程式。分析报告第二段内容是数据路径分析细节,包括组成数据路径的单元,这些对器件资源的使用,数据路径的网络布线延迟。

4.5 时钟域
(1)门控时钟:时间约束不能对门控时钟或内部驱动时钟的正确性进行分析;通过LUT的时钟偏斜很大,受逻辑等级以及LUT的数量决定。例如使用内部逻辑分频的情况,时间约束无法跟踪通过这些分频触发器,时序分析也无法对由门控时钟驱动的后续同步单元进行分析。为了确保相互关系和跨时钟域分析的正确,时间分析中对分频时钟和源时钟之间的差别用“相位”关键字来描述;因此相位关键字也包含在时序需求里面,因此,如果这个参数太小,就无法满足跨时钟域路径分析的要求。
(2)单时钟域:最简单,便于理解和分析。所有同步单元或者在前沿分析,或者在后沿分析;时钟源来自同一个时钟,可以是焊盘,DCM,DLL,PLL或PMCD,且只有一个输出。时序分析工具报告了时钟驱动的有效边沿,以及与同步单元之间数据路径的对应时间。
(3)双相时钟域:数据路径使用了双沿或两个相位相关时钟的设计;双相数据路径的时序要求是单相数据路径时序要求的一(分数)部分。最小时间值,最差余量往往不能满足最小时间值的要求;通常处于时序分析报告表头的数据路径对应着“最小时间值”。这个分数值是相对于单项时钟情况而言的,例如,如果是时钟相位是一半的关系,那么对延迟的要求就加倍了。
(4)多时钟域:如果源时钟时间约束和目标时钟时间约束有关系,目标时钟时间约束要覆盖跨时钟域来分析。Xilinx推荐使用相位关联时钟,已利于做时间约束;这样做,就可以对跨时钟域部分进行分析了;否则,Xilinx推荐使用From:To 或多周期约束,把这些跨时钟域路径标注为错误路径,或作为多周期路径来看待。
(5)由DCM输出的时钟:由于DCM等产生的是关联时钟,因此,时间约束也是相关的。这种关联约束可以通过NGDBuild自动创建,也可以手工创建。

4.6 From:To(多周期)分析
(1)对例外路径的分析与From-To约束相关。例外路径约束优先于全局约束,针对的是那些特定路径的情况。From:To约束针对特定路径给出具体的要求,这个要求比全局时序约束快或慢,或者是一个数值,或是时序忽略。
(2)例外约束路径分析报告内容:第一段内容,总余量值,源和目的单元的时钟信号和时钟边沿,整个数据路径延迟,时钟偏斜,时钟不确定性,余量方程式,时钟不确定性方程式。第二段内容,提供了输出接口的时钟和数据路径细节,包括对所有使用资源的描述,以及时钟和数据路径的布线延迟。
(3)分析内容包括对所有受约束时钟的时钟偏斜分析,时钟偏斜等于,基于到目的同步单元的时钟路径数值,减去时钟路径到源同步单元数值;
(4)DATAPATHONLY关键字:指示工具,忽略在From:To约束中的时钟偏斜;指出From:To约束分析过程中,不需要把时钟偏斜或相位信息考虑在内;只对群组之间的数据路径进行分析。
(5)建立、保持分析:建立分析是基于余量数值来分类的,建立分析在From:To分析中是默认做的,保持分析只有在V5以上的器件上才默认执行,对于老型号器件,设置环境变量来使能对保持的分析。










0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有