在不改变代码情况下,时序例外约束可以说是vivado中满足时序要求最有效的方法。因为vivado默认所有时钟路径之间都是同步的,会尝试分析和满足所有的路径。通过设置时序例外约束,告诉vivado软件不需要分析和满足某些时序路径(通常异步),vivado就会尽量去分析和满足真正的同步时序路径。不过一定要注意,在进行时序例外约束时,一定要确保做了亚稳态处理,比如打两拍、异步FIFO、双端口RAM等,或者能确定约束路径发生亚稳态也没关系(比如vio)

常用的时序例外约束包括三个命令

set_clock_groups

set_clock_groups -async -group clka -group clkb

这种方法简单快捷,但是会忽略两个时钟域中所有的时序路径,容易误伤。所以,我们一定要确保在两个时钟域之间做了正确的亚稳态处理,比如同步器、fifo、双端口ram等。这种方式有最高的优先级。

set_false_path

set_false_path -from [get_cells/a/b/c/*_meta*] -to [get_cells a/b/c/*_sync*]

这种方式针对性好,但效率低下,也是会导致xdc文件臃肿。同时也要注意约束优先级。

set_max_delay

set_max_delay 10 -datapath_only -from clka -to clkb

这里的10通常为clka周期,而且通常要加一个-datapath_only。需要留意是否约束过严格,比如clka过快,同时要防止约束冲突,比如set_falth_path比set_max_delay优先级高,会覆盖这条指令。

以上三条指令通常不需要自己输入,打开实现open implementation design后,

report clock interaction ,或者report timing summary ,在需要约束的地方右键即可选择约束方式。

report clock interaction后,选择相应的时序路径做约束。如果红色或者橙色的,基本是异步路径,vivado无法在一定时间内推断出时序关系,可以设置为异步时钟组。如果有共同时钟,但是频率不同,通常可以set_max_delay.

report timing summay,在intra_clock paths中红色的路径,完全可以设置为set_false_path,不过设置set_clock_groups要慎重。

vivado 时序例外约束相关推荐

  1. 这一节学一学时序例外约束

    时序例外约束是什么?时序例外约束指的是约束这些路径在综合时不让工具去分析它们. 时序例外约束包括: set_max_delay/set_min_delay: set_multicycle_path: ...

  2. VIVADO时序约束之时序例外(set_false_path)

    前言 当FPGA设计中的逻辑行为不能满足默认的时序要求时,设计者需要使用时序例外语法对该逻辑行为进行处理,例如:有些结果只需每个一个或多个时钟周期捕获一次. vivado开发工具支持4个时序例外约束的 ...

  3. (95)Vivado时序约束TCL命令-all

    (95)Vivado时序约束TCL命令-all 1 文章目录 1)文章目录 2)时序约束引言 3)FPGA时序约束课程介绍 4)Vivado时序约束TCL命令-all 5)技术交流 6)参考资料 2 ...

  4. (94)Vivado时序约束TCL命令-get_nets

    (94)Vivado时序约束TCL命令-get_nets 1 文章目录 1)文章目录 2)时序约束引言 3)FPGA时序约束课程介绍 4)Vivado时序约束TCL命令-get_nets 5)技术交流 ...

  5. (10)Vivado 异步时钟约束

    (10)Vivado 异步时钟约束 1 文章目录 1)文章目录 2)时序约束引言 3)FPGA时序约束课程介绍 4)Vivado 异步时钟约束 5)技术交流 6)参考资料 2 时序约束引言 1)什么是 ...

  6. vivado xdc时钟约束

    XDC是Xilinx Design Constraints的简写,但其基础语法来源于业界统一的约束规范SDC(最早由Synopsys公司提出,故名Synopsys Design Constraints ...

  7. VIVADO时序约束之Input Delay(set_input_delay)

    前言 I/O Delay约束主要有两个命令:set_input_delay和set_output_delay. I/O Delay约束的主要目的同时钟约束一样,是告诉编译器,外部输入输出信号与参考时钟 ...

  8. VIVADO时序约束之Output Delay(set_output_delay)

    前言 I/O Delay约束主要有两个命令:set_input_delay和set_output_delay. I/O Delay约束的主要目的同时钟约束一样,是告诉编译器,外部输入输出信号与参考时钟 ...

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

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

最新文章

  1. 买个云服务器有啥用_如何用阿里云轻量应用服务器配置一个WordPress网站?
  2. HttpClient(4.5.x)正确的使用姿势
  3. kali使用openvas
  4. 不让自己的应用程序在桌面的图标列表里启动显示的方法
  5. MOBIUS:百度凤巢新一代广告召回系统
  6. mysql 内存占用过多的解决方法
  7. php register_shutdown_function响应error 配合error_get_last 捕获错误
  8. 并发容器(J.U.C)中的集合类
  9. Android自定义View构造函数详解
  10. 【MySQL】MySQL 使用where条件的三种方式
  11. 6个最佳的开源Python应用服务器
  12. activate激活虚拟环境无效解决办法
  13. css 文字超出变 ... 点点点
  14. 50个GMAIL申请,来吧来吧!
  15. POJ Building roads [二分答案 2SAT]
  16. 二进制算法问题解析——1000瓶药水,1瓶有毒药,几只小白鼠能够找出?
  17. 微型计算机扫描方法,微机习题课(键盘-8255A行扫描法).ppt
  18. ctfshow七夕杯复现
  19. 电脑登陆出现此工作站和主域间的信任关系失败
  20. 计算机e的指数怎么计算方法,e^x的基本算法——剥离大指数法

热门文章

  1. 计算机学院研究生论文课题,计算机专业研究生论文开题报告范文(最新)
  2. 全国计算机自考应用题,近几年度自考管理系统中计算机硬应用题汇总.doc
  3. hyper-v虚拟化和游戏冲突
  4. java毕业设计旅游分享系统源码+lw文档+mybatis+系统+mysql数据库+调试
  5. open cv均值 中值 高斯 双边高斯 滤波及模糊
  6. 《超越LOGO设计:国际顶级平面设计师的成功法则(第2版)》—第1章无处不在的LOGO...
  7. sin函数对照表_初中常用三角函数值对照表
  8. JAVA第一阶段 编程练习(1)
  9. 六十、基础框架(十八)辞典物件
  10. 【前端 H5】网页H5 调用微信支付和支付宝支付 流程