0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA时序约束:如何查看具体错误的时序路径

FPGA设计论坛 来源:未知 2023-03-17 03:25 次阅读

1、时序错误的影响

一个设计的时序报告中,design run 时序有红色,裕量(slack)为负数时,表示时序约束出现违例,虽然个别违例不代表你的工程就有致命的问题,但是这是一个风险(时序报告是按照工艺、电压以及温度的上下限给出的结果)。当违例数较多,也就意味着设计在实际环境中出现问题的概率也会越大。 时间裕量包括建立时间裕量和保持时间裕量(setup slack和hold slack)。从字面上理解,所谓“裕量”即富余的、多出的。什么意思呢?即保持最低要求的建立时间或保持时间所多出的时间,那么“裕量”越多,意味着时序约束越宽松。

2、如何查看具体错误的时序路径

上述错误的时序,双击可以看到详细的时钟路径和数据路径,右键可以看到具体代码中的原理图。个人比较喜欢先查看原理图可以很直观的看到到底是哪一块的代码错了。 在调试的过程中发现,基本上时序错误都是代码的错误,比如没有跨时钟操作(跨时钟需要打两拍,跨时钟一些信号前后初始化不一致);数据路径过长(主要是针对位宽较大的数据,路径又长。解决办法是在该路径上添加寄存器)。出现时序错误,先从代码逻辑上找问题,代码逻辑排查完了,在考虑时序怎么约束。

3、clock interaction 时序错误还可以通过下图查看,以前特别爱用里面的指令 set false path 和 set clock groups。自从意识到大部分的时序错误都是逻辑错误导致以后,基本没用到这两句话。有一次盲目的使用set false path 指令,没有对 set false path 的用法有深刻理解, 导致代码逻辑不正常后,就更不会轻易用这些优化指令了。扩展:1)set_false_path 设置伪路径后,不再对特殊路径进行时序分析。特殊路径如测试逻辑、添加同步电路后的跨时钟域路径等。在两个时钟域之间应该相互设置为set_false:(注意:只是不对特殊路径进行时序分析,而不是只要出现错误就能用这句话) set_false_path -from [get_clocks clk_a] -to [get_clocks clk_b] set_false_path -from [get_clocks clk_b] -to [get_clocks clk_a] 2)set_clock_groups :添加完以后事这样的 set_clock_groups -asynchronous -group clk_a -group clk_b clk_a和clk_b是异步时钟 设置异步时钟







精彩推荐



至芯科技-FPGA就业培训来袭!你的选择开启你的高薪之路!3月28号北京中心开课、欢迎咨询!
FPGA学习-Verilog例化说明
FPGA vs ASIC
扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!


点个在看你最好看





原文标题:FPGA时序约束:如何查看具体错误的时序路径

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1606

    文章

    21345

    浏览量

    594226

原文标题:FPGA时序约束:如何查看具体错误的时序路径

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Xilinx FPGA编程技巧之常用时序约束详解

    今天给大侠带来Xilinx FPGA编程技巧之常用时序约束详解,话不多说,上货。 基本的约束方法 为了保证成功的设计,所有路径
    发表于 05-06 15:51

    Xilinx FPGA编程技巧之常用时序约束详解

    今天给大侠带来Xilinx FPGA编程技巧之常用时序约束详解,话不多说,上货。 基本的约束方法为了保证成功的设计,所有路径
    发表于 04-12 17:39

    FPGA时序约束--基础理论篇

    和时钟偏差组成的。 二、时序路径 时序路径是指从FPGA输入到输出的所有逻辑路径组成的
    发表于 11-15 17:41

    FPGA约束设计和时序分析

    FPGA/CPLD的综合、实现过程中指导逻辑的映射和布局布线。下面主要总结一下Xilinx FPGA时序约束设计和分析。
    发表于 09-21 07:45

    FPGA I/O口时序约束讲解

    前面讲解了时序约束的理论知识FPGA时序约束理论篇,本章讲解时序
    发表于 08-14 18:22 1010次阅读
    <b class='flag-5'>FPGA</b> I/O口<b class='flag-5'>时序</b><b class='flag-5'>约束</b>讲解

    FPGA时序约束时序路径时序模型

    时序路径作为时序约束时序分析的物理连接关系,可分为片间路径和片内
    发表于 08-14 17:50 556次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b><b class='flag-5'>约束</b>之<b class='flag-5'>时序</b><b class='flag-5'>路径</b>和<b class='flag-5'>时序</b>模型

    浅谈时序设计和时序约束

      本文主要介绍了时序设计和时序约束
    的头像 发表于 07-04 14:43 869次阅读

    FPGA时序约束的原理是什么?

    FPGA开发过程中,离不开时序约束,那么时序约束是什么?简单点说,FPGA芯片中的逻辑电路,从输
    发表于 06-26 14:42 403次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b><b class='flag-5'>约束</b>的原理是什么?

    详解时序路径的相关概念

    reg2reg路径约束的对象是源寄存器(时序路径的起点)和目的寄存器(时序路径的终点)都在
    的头像 发表于 06-26 14:28 706次阅读
    详解<b class='flag-5'>时序</b><b class='flag-5'>路径</b>的相关概念

    FPGA时序约束理论篇之时序路径时序模型

    典型的时序路径有4类,如下图所示,这4类路径可分为片间路径(标记①和标记③)和片内路径(标记②和标记④)。
    发表于 06-26 10:30 294次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b><b class='flag-5'>约束</b>理论篇之<b class='flag-5'>时序</b><b class='flag-5'>路径</b>与<b class='flag-5'>时序</b>模型

    如何在Vivado中添加时序约束

    前面几篇文章已经详细介绍了FPGA时序约束基础知识以及常用的时序约束命令,相信大家已经基本掌握了时序
    的头像 发表于 06-23 17:44 1494次阅读
    如何在Vivado中添加<b class='flag-5'>时序</b><b class='flag-5'>约束</b>

    FPGA时序约束之伪路径和多周期路径

    前面几篇FPGA时序约束进阶篇,介绍了常用主时钟约束、衍生时钟约束、时钟分组约束的设置,接下来介
    发表于 06-12 17:33 1105次阅读

    FPGA时序约束之衍生时钟约束和时钟分组约束

    FPGA设计中,时序约束对于电路性能和可靠性非常重要。在上一篇的文章中,已经详细介绍了FPGA时序约束
    发表于 06-12 17:29 1539次阅读

    FPGA主时钟约束详解 Vivado添加时序约束方法

    FPGA设计中,时序约束的设置对于电路性能和可靠性都至关重要。在上一篇的文章中,已经详细介绍了FPGA时序
    发表于 06-06 18:27 7570次阅读
    <b class='flag-5'>FPGA</b>主时钟<b class='flag-5'>约束</b>详解 Vivado添加<b class='flag-5'>时序</b><b class='flag-5'>约束</b>方法

    FPGA时序约束的基础知识

    FPGA开发过程中,离不开时序约束,那么时序约束是什么?简单点说,FPGA芯片中的逻辑电路,从输
    发表于 06-06 17:53 944次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>时序</b><b class='flag-5'>约束</b>的基础知识