FPGA时序约束简介。

时序约束的场景:

在简单电路中,当频率较低时,数字信号的边沿时间可以忽略时,无需考虑时序约束。但在复杂电路中,为了减少系统中各部分延时,使系统协同工作,提高运行频率,需要进行时序约束。通常当频率高于50MHz时,需要考虑时序约束。

限制FPGA最大频率的因素:

  • 组合逻辑延时

越多的门电路,所构成的组合逻辑延时越大,以ALTERA C4为例,FPGA实际上是用四输入查找表(LUT, Look-Up-Tables)的方式实现门电路的,变量数目小于4的所有组合逻辑延时相同,大于4时需要多个查找表组合,延时增加。

  • 信号路径延时

路径延时是所有延时中最需要考虑的,甚至可以占到总延时的一半以上,一般EDA工具不会寻找最快的路径,需要施加时序约束。

  • 时钟偏移、抖动和延时

时钟传到每个触发器的时间会由于距离时钟源路径长度不同而有偏移,时钟偏移可以通过走时钟树的结构解决,但时钟偏斜永远存在,不可能消除。时钟抖动是由于温度分布,信号串扰等因素使得晶振、PLL等产生的时钟信号周期不会严格相等而造成的。

  • 触发器建立时间Tsu、保持时间Th

输入管脚的数据必须在时钟有效之前提前出现的时间称为建立时间Tsu;保持时间Th是指在时钟上跳沿后,数据必须保持的最小时间。

  • 触发器时钟到输出时间Tco

在时钟有效后,D的数据并不能立即传到Q端,这段等待的时间就是触发器的时钟到输出时间。

以上时间是触发器固有时间,无法更改。

  • 功耗

合理的时序约束可以提高运行频率,但往往会使得功耗增加, 在性能要求不高的移动设备中,需要综合考虑。

  • 高扇出信号延时

高扇出信号是指带多负载的信号,在多负载情况下,信号的延时会增大,信号到达某些负载的时间增加,从而可能造成该信号相对时钟信号是一个晚到的信号。


版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


扫描二维码关注杭州卿萃科技FPGA极客空间


最新文章

  1. JS语法(二)
  2. winform学习之----Directory
  3. Eclipse "IOConsole updater" has encounter a problem
  4. python 通过urllib模块在svn中下载文件
  5. [nowCoder] 局部最小值位置
  6. 最大连续子数组问题2-homework-02
  7. Java基础(二十三)GUI图形界面编程(Java基础完)
  8. UFLDL教程(五)之self-taught learning
  9. 文件转换dll mingw
  10. codeforcese 498C. Array and Operations 网络流
  11. MonkeyRunner于Windows在下面Eclipse开发环境的搭建步骤(并解决在线Jython配置错误的问题)
  12. hrbustoj 2013 Play Game 2(博弈)
  13. Object类的equals()方法总结
  14. 微服务之路由网关—zuul
  15. Doctrine2-基础概念
  16. Oracle PGA作用&work_mode
  17. Django01-Django基础
  18. python2.x 与 python3.x的区别
  19. 快速了解yuv4:4:4 yuv4:2:2 yuv 4:1:1 yuv 4:2:0四种YUV格式区别
  20. Webwork【04】Configuration 详解

热门文章

  1. 摘录:Jetty 的工作原理以及与 Tomcat 的比较
  2. 监控系统信息模块psutil
  3. linux find命令使用(转)
  4. DOS命令说明
  5. LeetCode OJ:Add Two Numbers (相加链表之数)
  6. Tiny4412 Android5.0 定制:编译生成img后如何删除原厂的apk
  7. Unity3d 背景、音效 播放 简单demo
  8. Metasploit的基本使用
  9. I.MX6 View长宽大于屏的分辨率
  10. Android4.0系统接收不到广播的问题解析