FPGA——时序分析与约束


时序分析:通过分析FPGA内部各个存储器之间的数据和时钟传输路径,来分析数据延迟和时钟延迟的关系,保证所有寄存器都可以正确寄存数据。

数据和时钟传输路径是:由EDA软件,通过针对特定器件布局布线得到的。

时序约束:告知EDA软件,尽力达到约束指标。

FPGA结构基础

可编程逻辑功能结构
在这里插入图片描述

LUT 查找表的实现
在这里插入图片描述

fpga结构
在这里插入图片描述
内部连线:
采用行,列,局部的快速通道
在这里插入图片描述

数据传输模型

Tco :时钟上升沿到达D触发器 到 数据输出到Q端的延迟 。
Tsu: 建立时间,数据输入端D的数据必须提前 N ns 稳定下来,否则就没办法保存下来数据。

在这里插入图片描述
时钟偏斜原理:
在这里插入图片描述

在这个模型下:
Tclk1:时钟传到REG1有个延迟。
Tclk2:时钟传到REG2有个延迟。
Tco:触发器D 到Q输出的时间 。
Tdata:REG1的Q 传输到 REG2的D 的时间。
Tsu:建立时间。
Slack:余量时间。(下图是正的,说明可以正确读取到数据)

可以推导出公式,可以正确接收数据:
Tclk1+Tco+Tdata <= Tclk(时钟周期) + Tclk2 - Tsu
化简得: Tclk +(Tclk2 - Tclk1 )- Tco - Tdata - Tsu >= 0
再得:Slack = Tclk + Tsnew - Tco - Tdata - Tsu >= 0

在这里插入图片描述

Quartus II 时序报告

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Quartus II 中TimeQuest的操作

1.打开工具
在这里插入图片描述
2.创建时序网表
包含:该器件具体位置,什么资源上实现,每个节点到下个节点的延迟时间
在这里插入图片描述
3.读取SDC文件
在这里插入图片描述
4.看报告和加入约束

看报告
在这里插入图片描述
(1)加入约束,告诉软件外部时钟输入
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(2)编辑现有的约束
在这里插入图片描述
在这里插入图片描述
5.生成SDC文件

在这里插入图片描述

实操

查看时钟
在这里插入图片描述

查看最坏路径的余量
在这里插入图片描述
在这里插入图片描述

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-01-09 12:14:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-09 12:14:01       18 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-09 12:14:01       17 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-09 12:14:01       20 阅读

热门阅读

  1. 华纳云:Ubuntu上如何增加Swap分区?

    2024-01-09 12:14:01       36 阅读
  2. 连接oracle报:ora-28001:the password has expired

    2024-01-09 12:14:01       30 阅读
  3. leetcode每日一题43

    2024-01-09 12:14:01       39 阅读
  4. LeetCode——447. 回旋镖的数量

    2024-01-09 12:14:01       35 阅读
  5. LeetCode 每日一题 2024/1/1-2024/1/7

    2024-01-09 12:14:01       36 阅读