FPGA中时钟和数据传输路径

前言

FPGA设计中,要想设计达到想要的效果,需要对时序约束加以重视,

一、时钟和数据传输路径

在这里插入图片描述

根据上图,有以下关键点:

  1. 数据总是从一个D 触发器(reg1)传到另一个D 触发器(reg2),我们称数据发出D 触发器为源寄存器,数据接收D 触发器为目的寄存器。
  2. 数据在传输过程中,可能参与多次组合逻辑变换
  3. 数据在传输过程中,需要经过可编程互联线传递
  4. 分析信号在两个寄存器之间的传递时,需要保证这两个寄存器的时钟信号是同源时钟。

二、建立时间,保持时间,输出延迟

在这里插入图片描述对于实际的D 触发器来说,为了保证在时钟的上升沿能够正确的将D 端的数据寄存并输出到Q 端,需要满足以下几点:

  1. D 端的数据必须在时钟上升沿到来之前的一定时间内就已经保持稳定,该时间被称为D 触发器的建立时间(Tsu)
  2. D 端的数据必须在时钟上升沿到来之后的一定时间内继续保持稳定,该时间被称为D 触发器的保持时间(Th)
  3. 同时,对于D 触发器来说,D 端的数据也不可能会在时钟上升沿出现的那一刻就立即更新到Q 端,从钟的上升沿到D 端的数据稳定出现在Q 端,也有一个时间,该时间称为寄存器的时钟到输出延迟(Tco)

三、FPGA内数据传输典型时序

在这里插入图片描述

  1. 数据存在于reg1的D端口上,当时钟上升沿到达reg1时,进过Tco时间,D端数据才会到达reg1的Q端
  2. reg1的Q端数据经过内部可编程连线,和组合逻辑后,到达reg2,即目标寄存器,所需时间为Tdata。
数据到达时间(data arrived time):clk上升沿+Tclk1+Tco+Tdata
目的寄存器时钟到达时间(clock arrive time):下一次clk上升沿+Tclk2
正确接收数据,则需要Tsu+clk上升沿+Tclk1+Tco+Tdata>下一次clk上升沿+Tclk2,
其中:下一次clk上升沿-clk上升沿=时钟周期
即:Tclk1+Tco+Tdata>时钟周期+Tclk2
data required time  = clock arrive time - Tsu

建立时间余量:data required time - data arrived time

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值