首页 > 其他分享 >FPGA时序约束基础

FPGA时序约束基础

时间:2024-10-20 17:31:58浏览次数:13  
标签:触发器 FPGA 约束 传输 时序 数据 时钟

一、时序约束的目的
由于实际信号在FPGA内部期间传输时,由于触发器等逻辑期间并非理想期间,因此不可避免地存在传输延时,这种延迟在高速工作频率、高逻辑级数时会造成后级触发器地建立时间和保持时间不满足,造成时序违例。(这也是为什么需要把FPGA设计不能以高级编程语言思想看的原因,设计时,需要做到“心中有电路”)一般来说在一个高速系统(时钟频率大于100M),或存在高速信号如DDR,千兆网络等情况下,必须进行时序分析和约束,以提高系统的鲁棒性和稳定性。
二、基本概念
2.1 建立时间和保持时间
setup time是指在时钟有效沿(下图为上升沿)之前,数据输入端信号必须保持稳定的最短时间。

hold time是指在时钟有效沿(下图为上升沿)之后,数据输入端信号必须保持稳定的最短时间。hold time时序检查确保新数据不会在触发器稳定输出初始数据之前过早到达D端而覆盖其初始数据。

简单来说:数据传输至触发器时,数据必须在时钟的建立时间前保持稳定,而且数据必须保持到时钟的保持时间点后才能撤销,才能保证该级触发器可以正常寄存该数据。
三、模型分析
下面以经典的时序分析模型分析:

如图,data信号传输经存在DFF1、组合逻辑后传输至DFF2,由于触发器延迟tco和组合逻辑延时,clk1传输延迟,
因此建立时间余量为:
Tslack = (T-tsu+tclk2)-(tclk1+tco+tdelay),
保持时间余量为:
Thd_slack = (T+tdelay+tco+tclk1)-(T+thd+tclk2)
以上可以看出,系统的极限性能参数(时钟能跑多快,即T的大小)只与建立时间余量有关。

标签:触发器,FPGA,约束,传输,时序,数据,时钟
From: https://www.cnblogs.com/dy-stairmed/p/18487546

相关文章

  • 基于FPGA控制的AD采集,ads8688芯片8通道扫描
     1. ads8688芯片简介        芯片详细介绍可仔细查看数据手册,链接:    由于数据手册内容太多,在次不做过多介绍,此处将只对实现8通道的扫描采集所涉及到的知识点做解释说明,大概需掌握如下3点。1.1 程序寄存器配置    程序寄存器映射图如下所示。......
  • 【教程4>第3章>第22节】基于双向链路的自适应调制解调通信链路FPGA实现1——理论分析研
      欢迎订阅FPGA/MATLAB/Simulink系列教程《★教程1:matlab入门100例》《★教程2:fpga入门100例》《★教程3:simulink入门60例》《★教程4:FPGA/MATLAB/Simulink联合开发入门与进阶X例》目录1.软件版本2.基于双向链路的自适应调制解调通信链路理论分析3.双向链路自......
  • 正点原子新起点V2开发板FPGA关于SDRAM代码解读
    正点原子新起点V2开发板FPGA关于SDRAM代码解读1.SDRAM概述SDRAM(SynchronousDynamicRandomAccessMemory)是一种同步动态随机存储器,广泛用于FPGA项目中。通过SDRAM控制模块,可以实现数据读写、刷新等操作。本文对SDRAM的控制模块进行详细解读,分析代码中的命令控制、数据传输、......