时序路径

  典型的时序路径有4类,如下图所示,这4类路径可分为片间路径(标记①和标记③)和片内路径(标记②和标记④)。

  对于所有的时序路径,我们都要明确其起点和终点,这4类时序路径的起点和终点分别如下表。

时序路径 起点 终点 应用约束
①输入端口到FPGA内部第一级触发器的路径 ChipA/clk rega/D set_input_delay
②FPGA内部触发器之间的路径 rega/clk regb/D create_clock
③FPGA内部末级触发器到输出端口的路径 regb/clk ChipB/D set_output_delay
④FPGA输入端口到输出端口的路径 输入端口 输出端口 set_max_delay

  这4类路径中,我们最为关心是②的同步时序路径,也就是FPGA内部的时序逻辑。

时序模型

  典型的时序模型如下图所示,一个完整的时序路径包括源时钟路径、数据路径和目的时钟路径,也可以表示为触发器+组合逻辑+触发器的模型。

  该时序模型的要求为(公式1)

Tclk ≥ Tco + Tlogic + Trouting + Tsetup - Tskew

其中,Tco为发端寄存器时钟到输出时间;Tlogic为组合逻辑延迟;Trouting为两级寄存器之间的布线延迟;Tsetup为收端寄存器建立时间;Tskew为两级寄存器的时钟歪斜,其值等于时钟同边沿到达两个寄存器时钟端口的时间差;Tclk为系统所能达到的最小时钟周期。

  这里我们多说一下这个Tskew,skew分为两种,positive skew和negative skew,其中positive skew见下图,这相当于增加了后一级寄存器的触发时间。

但对于negative skew,则相当于减少了后一级寄存器的触发时间,如下图所示。

  当系统稳定后,都会是positive skew的状态,但即便是positive skew,综合工具在计算时序时,也不会把多出来的Tskew算进去。

  用下面这个图来表示时序关系就更加容易理解了。为什么要减去Tskew,下面这个图也更加直观。

发送端寄存器产生的数据,数据经过Tco、Tlogic、Trouting后到达接收端,同时还要给接收端留出Tsetup的时间。而时钟延迟了Tskew的时间,因此有:
(公式2)

Tdata\_path + Tsetup <= Tskew + Tclk

对于同步设计Tskew可忽略(认为其值为0),因为FPGA中的时钟树会尽量保证到每个寄存器的延迟相同。

公式中提到了建立时间,那保持时间在什么地方体现呢?

  保持时间比较难理解,它的意思是reg1的输出不能太快到达reg2,这是为了防止采到的新数据太快而冲掉了原来的数据。保持时间约束的是同一个时钟边沿,而不是对下一个时钟边沿的约束。

  reg2在边沿2时刻刚刚捕获reg1在边沿1时刻发出的数据,若reg1在边沿2时刻发出的数据过快到达reg2,则会冲掉前面的数据。因此保持时间约束的是同一个边沿。

在时钟沿到达之后,数据要保持Thold的时间,因此,要满足:(公式3)

Tdata\_path =  Tco + Tlogic + Trouting ≥ Tskew + Thold

  这两个公式是FPGA的面试和笔试中经常问到的问题,因为这种问题能反映出应聘者对时序的理解。

  在公式1中,Tco跟Tsu一样,也取决于芯片工艺,因此,一旦芯片型号选定就只能通过Tlogic和Trouting来改善Tclk。其中,Tlogic和代码风格有很大关系,Trouting和布局布线的策略有很大关系。

  关于时序约束的基本理论就讲这么多,下面讲具体的约束。

个人网站:http://www.technomania.cn/

微信公众号:Quant_Times
      Reading_Times

FPGA时序约束教程所有文章:

1 FPGA时序约束理论篇之建立保持时间
2 FPGA时序约束理论篇之时序路径与时序模型
3 FPGA时序约束理论篇之IO约束
4 FPGA时序约束理论篇之时钟周期约束
5 FPGA时序约束理论篇之两种时序例外
6 FPGA时序约束理论篇之xdc约束优先级
7 FPGA时序约束实战篇之梳理时钟树
8 FPGA时序约束实战篇之主时钟约束
9 FPGA时序约束实战篇之衍生时钟约束
10 FPGA时序约束实战篇之延迟约束
11 FPGA时序约束实战篇之伪路径约束
12 FPGA时序约束实战篇之多周期路径约束
13 FPGA时序约束之Vivado辅助工具
14 FPGA时序约束之Tcl命令的对象及属性

2 FPGA时序约束理论篇之时序路径与时序模型相关推荐

  1. 3 FPGA时序约束理论篇之IO约束

    I/O约束   I/O约束是必须要用的约束,又包括管脚约束和延迟约束. 管脚约束   管脚约束就是指管脚分配,我们要指定管脚的PACKAGE_PIN和IOSTANDARD两个属性的值,前者指定了管脚的 ...

  2. 1 FPGA时序约束理论篇之建立保持时间

    读万卷书–时序约束理论篇 周期约束理论   首先来看什么是时序约束,泛泛来说,就是我们告诉软件(Vivado.ISE等)从哪个pin输入信号,输入信号要延迟多长时间,时钟周期是多少,让软件PAR(Pl ...

  3. 5 FPGA时序约束理论篇之两种时序例外

    两种时序例外 多周期路径   上面我们讲的是时钟周期约束,默认按照单周期关系来分析数据路径,即数据的发起沿和捕获沿是最邻近的一对时钟沿.如下图所示.   默认情况下,保持时间的检查是以建立时间的检查为 ...

  4. 4 FPGA时序约束理论篇之时钟周期约束

    时钟周期约束   时钟周期约束,顾名思义,就是我们对时钟的周期进行约束,这个约束是我们用的最多的约束了,也是最重要的约束.   下面我们讲一些Vivado中时钟约束指令. 1. Create_cloc ...

  5. 6 FPGA时序约束理论篇之xdc约束优先级

    xdc约束优先级   在xdc文件中,按约束的先后顺序依次被执行,因此,针对同一个时钟的不同约束,只有最后一条约束生效.   虽然执行顺序是从前到后,但优先级却不同:就像四则运算一样,±x÷都是按照从 ...

  6. FPGA时序约束理论篇之IO约束

    参考来源–知乎–张大侠 I/O约束 I/O约束是必须要用的约束,又包括管脚约束和延迟约束. 管脚约束 管脚约束就是指管脚分配,我们要指定管脚的PACKAGE_PIN和IOSTANDARD两个属性的值, ...

  7. FPGA时序约束篇之时序分析与时序约束的作用

    FPGA时序约束篇之时序分析与时序约束的作用 一.写在前面 二.名词解释 三.举个栗子 3.1 降低时钟频率 3.2 提升时钟频率 END 一.写在前面   在每个初学者学习FPGA设计时,都会听前辈 ...

  8. FPGA时序约束理论之时钟周期约束(5)

    1. 时钟周期约束:对时钟的周期进行约束. 2. vivado中时钟约束指令: create_clock 使用create_clock来创建时钟周期约束,使用方法: create_clock -nam ...

  9. FPGA时序约束理论(基于Vivado)

    引言        FPGA的时序约束是非常重要的,它在FPGA的综合和实现过程中扮演了一个非常重要的角色.最近在公众号中看到了一系列关于FPGA时序约束相关的内容,觉得写的非常好,非常全面,深入浅出 ...

最新文章

  1. CF375D Tree and Queries(dsu on tree)
  2. 谁说被吃是鸡的宿命?这只鸡长了个价值三个诺奖的肿瘤
  3. python动态图-Python图像处理之gif动态图的解析与合成操作详解
  4. [渝粤教育] 中国地质大学 微积分(一) 复习题 (2)
  5. jieba分词,构建词典
  6. python对象保存在哪_Python – 在本地保存请求或BeautifulSoup对象
  7. Keras 开发你的第一个 Python 深度学习项目
  8. java持续集成soapui_接口自动化测试持续集成--Soapui接口测试
  9. matlab找异步电机,基于Matlab的异步电动机仿真
  10. 微信公众号跳转小程序,详细教程
  11. Beyond compare vs kdiff3
  12. Spring ldap ODM
  13. 190115_Vue下路由History mode导致页面无法渲染的原因
  14. CSS的特殊性 (specificity)
  15. OA系统八:用户登录一:基于LayUI框架开发登录页;
  16. 【转载】电子通信、嵌入式工程师的面试指南
  17. 微信域名防屏蔽跳转系统-微信域名防拦截技术
  18. 快速云:了解混合云连接最佳做法
  19. ipa在线安装搭建_HBuilder如何打包ipa文件?如何获取苹果证书?
  20. 《高数》基本初等函数 反对幂三指 (二)

热门文章

  1. SQL初学者如何安装MySQL和破解版Navicat搭建SQL练习环境
  2. 视觉SLAM⑫----建图(未完)
  3. Windows沾滞键设置
  4. java唯一订单号_java web在高并发和分布式下实现订单号生成唯一的解决方案
  5. quartz cron表达式在线生成
  6. 3Dmax和blender渲染线稿
  7. python获取电脑有线/无线网卡MAC地址信息
  8. [渝粤教育] 中国地质大学 互换性与测量技术 复习题 (2)
  9. 医学百科医院全部信息爬取(转)
  10. pc端vue登录如何调用软键盘_使用vue实现简单键盘的示例(支持移动端和pc端)