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

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

3天内不再提示

FPGA quartus ii里的静态时序分析

电子设计 来源:CSDN博主 作者:huan09900990 2020-11-25 11:39 次阅读

fpga工程中加入时序约束的目的:
1、给quartusii 提出时序要求;
2、quartusii 在布局布线时会尽量优先去满足给出的时序要求;
3、STA静态时序分析工具根据你提出的约束去判断时序是否满足的标准。

举个形象的比喻:就好比我要让代工厂(类比quartus ii)给我加工一批零件,要求长宽高为10x10x10cm,误差不超过1mm(类比时序约束条件)。代工厂按要求(即约束条件)开始进行生产加工,工厂为了不返工,肯定会尽量生产出达到我要求的零件。当加工完成后,质检员(类比STA静态时序分析工具)按我给出的要求进行检验看是否满足要求。要是工厂想尽了各种办法也不能达到我给出的要求,那么就是我给出的要求太高了(即时序约束中的过约束),要是我给出的要求太低(比如说加工成方形就行,而没有指出长宽高),那么工厂很容易就生产出来了,但这并不是我想要的,这是由于我给出的约束太松 即相当于时序里的 欠约束。

quartus ii里的静态时序分析(STA):是套用特定的时序模型,针对特定电路分析其是否违反设计者给定的时序限制。说白了就是检查fpga内部所有寄存器的建立时间保持时间是否满足spec给定的要求。

1、Data Arrival Time 数据到达目的寄存器REG2时间


2、Clock Arrival Time 时钟到达目的寄存器REG2时间


3、Data Required Time 数据需求时间-Setup

指数据需要在需求时间前到达目的寄存器,否则不满足建立时间关系,不能被正确采样。

最大延迟是防止数据来的太慢 ,当时钟沿已经到来时,数据还没到,这样就不能在上升沿被寄存器正确采样。


4、Data Required Time 数据需求时间-Hold

指数据在时钟锁存沿到达后,必须保持一段稳定的时间,使数据被正确采样。做最小延迟约束是为了防止数据传输过快,使得寄存器还在锁存上一个数据时,下一个数据就来了,使得上次锁存数据发生错误。

所以 保持时间必须小于 tco+tlogic(组合逻辑延时),这里 tco+tlogic(组合逻辑延时)就是数据从源寄存器到目的寄存器的时间。


5、时序裕量slack

Setup Slack=Setup Required Time - Data Arrival Time

Hold Slack=Data Arrival Time - Hold Required Time

时序裕量为正 表示时序满足时序约束条件,为负,时序不满足。

6、Input Delay 输入最大最小延迟

Input Delay=数据路径延迟-时钟路径延迟+utco(外部器件)

输入延迟 Input Delay=Data Arrival Time-Clock Arrival Time
=launch Edge+Tclk1+uTco+Tdata-latch edge-Tclk2

数据相对于时钟到达目的寄存器的时间差值。即数据和时钟从同一时间点(launch)开始,到达目的寄存REG2的时间差。

数据到达REG2走的路径延时是:时钟从launch开始 经过Tclk1的延迟到达REG1,REG1在时钟沿来之后,经过Tco的时间把数据送出REG1,然后数据再经过路径延迟Tdata 到达REG2的数据管脚。

时钟到达REG2走的路径延时是:时钟也从同一时间点(launch)开始,经过路径延迟Tclk2就到达REG2的时钟管脚。
输入最大延迟是约束为了满足寄存器的建立时间,输入最小延迟是位了满足寄存器的保持时间。

Input Maximum Delay=Data Arrival Time最大值-Clock Arrival Time 最小值

“fpga-centric”Input Maximum Delay<=tclk-tsu(fpga)


Input Minimum Delay=Data Arrival Time最小值-Clock Arrival Time 最大值

“fpga-centric” Input Minimum Delay>=th(fpga)


7、output Delay 输出最大最小延迟

output Maximum Delay=外部器件tsu+数据路径最大延迟-时钟路径最小延迟


output Minimum Delay=外部器件th+数据路径最小延迟-时钟路径最大延迟


8、Fmax

指设计能运行的最高频率,即周期为最小时,频率最大
当Setup Slack=0时,系统刚好满足建立时间,此时周期为最小值。
period=tco+data_delay+tsu-tskew


编辑:hfy


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

    关注

    1603

    文章

    21328

    浏览量

    593275
  • 寄存器
    +关注

    关注

    30

    文章

    5037

    浏览量

    117765
收藏 人收藏

    评论

    相关推荐

    浅析FPGA的调试-内嵌逻辑分析仪(SignalTap)原理及实例

    对于FPGA调试,主要以Intel FPGA为例,在win10 Quartus ii 17.0环境下进行仿真和调试,开发板类型EP4CE15F17。
    的头像 发表于 01-12 09:34 899次阅读
    浅析<b class='flag-5'>FPGA</b>的调试-内嵌逻辑<b class='flag-5'>分析</b>仪(SignalTap)原理及实例

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

    时序约束可以让VIvado和QuartusFPGA开发软件,在布线时检测综合出来的逻辑电路是否满足这个时序要求,并生成时序报告。
    发表于 11-15 17:41

    FPGA的约束设计和时序分析

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

    FPGA I/O口时序约束讲解

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

    FPGA高级时序综合教程

    FPGA高级时序综合教程
    发表于 08-07 16:07 3次下载

    fpga时序分析案例 调试FPGA经验总结

    可能无法满足时序要求。 跨时钟域信号的约束写法 问题一: 没有对设计进行全面的约束导致综合结果异常,比如没有设置异步时钟分组,综合器对异步时钟路径进行静态时序分析导致误报
    的头像 发表于 08-01 09:18 1104次阅读
    <b class='flag-5'>fpga</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>案例 调试<b class='flag-5'>FPGA</b>经验总结

    Quartus II没有对应芯片的原因及其解决办法

    Quartus II开发ALTERA的FPGA时,有时候会发现没有自己对应的芯片型号
    的头像 发表于 07-24 15:15 6758次阅读
    <b class='flag-5'>Quartus</b> <b class='flag-5'>II</b>没有对应芯片的原因及其解决办法

    静态时序分析的相关概念

      本文主要介绍了静态时序分析 STA。
    的头像 发表于 07-04 14:40 604次阅读
    <b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>的相关概念

    静态时序分析的基本概念和方法

    引言 在同步电路设计中,时序是一个非常重要的因素,它决定了电路能否以预期的时钟速率运行。为了验证电路的时序性能,我们需要进行 静态时序分析
    的头像 发表于 06-28 09:38 807次阅读
    <b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>的基本概念和方法

    同步电路设计中静态时序分析时序约束和时序路径

    同步电路设计中,时序是一个主要的考虑因素,它影响了电路的性能和功能。为了验证电路是否能在最坏情况下满足时序要求,我们需要进行静态时序分析,即
    发表于 06-28 09:35 572次阅读
    同步电路设计中<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>路径

    STA-0.静态时序分析概述

    静态时序分析(Static Timing Analysis, 以下统一简称 **STA** )是验证数字集成电路时序是否合格的一种方法,其中需要进行大量的数字计算,需要依靠工具进行,但
    的头像 发表于 06-27 11:43 576次阅读
    STA-0.<b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>概述

    如何读懂FPGA开发过程中的Vivado时序报告?

    FPGA开发过程中,vivado和quartus等开发软件都会提供时序报告,以方便开发者判断自己的工程时序是否满足时序要求。
    发表于 06-26 15:29 574次阅读
    如何读懂<b class='flag-5'>FPGA</b>开发过程中的Vivado<b class='flag-5'>时序</b>报告?

    FPGA设计-时序约束(理论篇)

    STA(Static Timing Analysis,即静态时序分析)在实际FPGA设计过程中的重要性是不言而喻的
    发表于 06-26 09:01 395次阅读
    <b class='flag-5'>FPGA</b>设计-<b class='flag-5'>时序</b>约束(理论篇)

    如何读懂Vivado时序报告

    FPGA开发过程中,vivado和quartus等开发软件都会提供时序报告,以方便开发者判断自己的工程时序是否满足时序要求。
    的头像 发表于 06-23 17:44 621次阅读
    如何读懂Vivado<b class='flag-5'>时序</b>报告

    FPGA静态时序分析简单解读

    任何学FPGA的人都跑不掉的一个问题就是进行静态时序分析静态时序
    的头像 发表于 05-29 10:24 381次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>静态</b><b class='flag-5'>时序</b><b class='flag-5'>分析</b>简单解读