【Xilinx Vivado时序分析/约束系列6】FPGA开发时序分析/约束-IO时序输入延时

2023-11-17

目录

源同步FPGA输入时序分析的模型

input delay约束

极限input delay

往期系列博客


 

源同步FPGA输入时序分析的模型

以下为源同步FPGA输入时序分析的模型的示意图,在之前的文章中介绍过,在此介绍一下各个时钟延时的含义。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

Tco:到上游器件接口的数据延迟,这个延迟其实包括时钟源到寄存器D端的延迟、寄存器内部的延时Tco、Q端到输出接口的延迟,在这里统称为Tco。

Td_bd:数据延迟路径,板级布线的延迟(PCB)

Td_fi:FPGA内部到寄存器D端延迟,这部分的延时FPGA的综合工具类似Vivado是知道这部分的延迟情况是多少的。

Tc_d:到上游器件接口的时钟延迟。

Tc_bd:时钟路径延迟(PCB)

Tc_fi:FPGA内部到寄存器Clk端延迟。

 

input delay约束

在内部之间的约束(比如Td_fi、Tco、Tc_fi,建立时间门限、保持时间门限),时序分析工具是知道的,但是外部的这些延时量(比如Td_bd、Tc_d、Tc_bd等),时序分析工具是不知道的,因此就需要给它添加约束,就叫做input delay约束。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

上图中的LrMin和LrMax表示由于在多条PCB布线时,有些线长有些短,这样就会导致延时的大小问题。

如果线长,延时就大,数据就会向右移,导致FPGA in_reg2 D的数据也会往右移,相应的建立时间余量就会被压缩;

相反的,如果线短,延时就小,数据就会向左移,导致FPGA in_reg2 D的数据也会往左移,相应的保持时间余量就会被压缩。

 

极限input delay

这里涉及到一个“极限input delay”(系统模型)的概念,它指的是当setup slack(建立时间余量)为0时,

极限input delay = Tcyc + Tc_d + Tc_bd + Tc_fi - Tsu

input delay(FPGA为中心) = 数据到达时间(FPGA引脚 )- 时钟到达时间(FPGA引脚)

input delay = Tco + Td_bd - Tc_d - Tc_bd

也就是说只看到FPGA一侧的比较,并没有到FPGA内部的寄存器,如下图,只到划红线的部分的比较。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATGluZXN0LTU=,size_20,color_FFFFFF,t_70,g_se,x_16

前面说到

input delay = Tco + Td_bd - Tc_d - Tc_bd,这个input delay是存在最大最小值的

input delay MAX = Tco_max + Td_bd_max - Tc_d - Tc_bd

input delay MIN = Tco_min + Td_bd_min - Tc_d - Tc_bd

前面说了如果input delay越大就会压缩建立时间余量,而input delay越小就会压缩保持时间余量

如果取一个极端的情况:

在input delay MAX 的情况下能够满足建立时间的要求;

在input delay MIN 的情况下能够满足保持时间的要求;

那么在其他任何情况下,就都能满足建立时间和保持时间的共同要求了。

 

往期系列博客

 【Xilinx Vivado时序分析/约束系列1】FPGA开发时序分析/约束-寄存器间时序分析

 【Xilinx Vivado时序分析/约束系列2】FPGA开发时序分析/约束-建立时间

 【Xilinx Vivado时序分析/约束系列3】FPGA开发时序分析/约束-保持时间

 【Xilinx Vivado时序分析/约束系列4】FPGA开发时序分析/约束-实验工程上手实操

 【Xilinx Vivado时序分析/约束系列5】FPGA开发时序分析/约束-IO时序分析

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Xilinx Vivado时序分析/约束系列6】FPGA开发时序分析/约束-IO时序输入延时 的相关文章

  • Pcb电路板的表面处理工艺简说

    随着PCB生产技术的日益增大 产品对其工艺的要求也越来越高 下面 四川英特丽 gt http www citpcba com 为您解释PCB板上的表面工艺 对比各类PCB板的表面处理工艺有哪些优缺点和适用场景 从 PCBA贴片加工 gt h
  • 计算机组成与设计:硬件/软件接口,第二章详细梳理,附思维导图

    文章目录 二 指令 计算机的语言 章节导图 一 MIPS概述 计算机的组成 MIPS的设计思想 MIPS 32中的通用寄存器 二 三类汇编指令
  • 136-基于stm32单片机家庭温湿度防漏水系统设计Proteus仿真+源程序

    资料编号 136 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 蜂鸣器 制作一个基于stm32单片机家庭温湿度防漏水系统设计Proteus仿真 2 通过DHT11传感器检测当前温湿度 并且显示到L
  • STM32超声波——HC_SR04

    文章目录 一 超声波图片 二 时序图 三 超声波流程 四 单位换算 五 取余计算 六 换算距离 七 超声波代码 一 超声波图片 测量距离 2cm 400cm 二 时序图 1 以下时序图要先提供一个至少10us的脉冲触发信号 告诉单片机我准备
  • 【ZYNQ学习】PL第一课

    这节课讲什么 这节课的名字本来是想写为LED 但这一课里除了LED也有按键 又想换为GPIO控制 但关于PL的GPIO控制 不应该这么草率和简单 而且这一课有很多和ZYNQ或者PL关联性不强的东西要说 所以我写了删删了写改了好几遍 终于定为
  • 关于DC电源模块有哪些常见的输入和输出参数?

    关于DC电源模块有哪些常见的输入和输出参数 BOSHIDA DC电源模块是一种用于将交流电转换为直流电的设备 广泛应用于电子设备 通信设备 工业控制 仪器仪表等各个领域 在选择和使用DC电源模块时 了解其常见的输入和输出参数是很重要的 输入
  • 【Proteus仿真】【Arduino单片机】定时智能插座开关

    文章目录 一 功能简介 二 软件设计 三 实验现象 联系作者 一 功能简介 本项目使用Proteus8仿真Arduino单片机控制器 使LCD1602液晶 DS18B20温度传感器 按键 蜂鸣器 继电器开关 HC05蓝牙模块等 主要功能 系
  • 嵌入式培训机构到底怎么选?培训了能找到工作吗

    嵌入式作为一种广泛应用于企业级开发的编程语言 对于想要从事软件开发行业的人来说 掌握嵌入式技能是非常重要的 而参加嵌入式培训机构是一个快速提升技能的途径 然而 很多人可能会担心 参加嵌入式培训了能找到工作吗 如何选择靠谱的嵌入式培训机构 要
  • 【Proteus仿真】【Arduino单片机】光照强度检测系统

    文章目录 一 功能简介 二 软件设计 三 实验现象 联系作者 一 功能简介 本项目使用Proteus8仿真Arduino单片机控制器 使共阳数码管 ADC模块 光敏传感器等 主要功能 系统运行后 数码管显示光传感器采集光照强度值 范围0 1
  • 串口流控(CTS/RTS)使用详解

    1 流控概念 在两个设备正常通信时 由于处理速度不同 就存在这样一个问题 有的快 有的慢 在某些情况下 就可能导致丢失数据的情况 如台式机与单片机之间的通讯 接收端数据缓冲区已满 则此时继续发送来的数据就会丢失 流控制能解决这个问题 当接收
  • 【MCU简单且容易理解的工作原理】

    SOC是啥 System on Chip 一个芯片 但是片上有好多东西的意思 市面上的AI芯片 包括你知道的麒麟xxx 骁龙xxx等等一些列手机芯片都是SOC 对于SOC设计者来讲 显然要知道码农们码出来的一行行代码是如何在SOC上跑起来的
  • MINI-UTDE 10 BASE-T 集成控制器

    MINI UTDE 10 BASE T 集成控制器 MINI UTDE 10 BASE T 拥有多达三个本地I O板和远程I OS总线通信 为用户提供了一系列生产单元功能的单一控制点 包括诸如夹头 反馈器和辅助机器等外围生产设备 支持所有主
  • 2.4G SOC收发芯片XL2412P,适用于无线键鼠,遥控器等多种场景

    XL2412P芯片是 款高性能低功耗的SOC集成无线收发芯片 集成MO核MCU 工作在2 400 2 483GHz世界通用ISM频段 该芯片集成了射频接收器 射频发射器 频率综合器 GFSK 调制器 GFSK解调器等功能模块 并且支持一对多
  • 48V转12V的DC-DC稳压电路推荐

    项目或学习过程中好用且稳定的DC DC的电路将是一个成功硬件项目的基础 主芯片 MP9486 MP9486A 是一款高压降压型开关稳压器 可输 出高达 1A 的持续电流至负载 它集成了一个高 压高端 MOSFET 提供 3 5A 的典型峰值
  • for循环延时时间计算

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 之前做led点亮的实验 好像是被delay函数影响了 因为delay参数设置的不对
  • TRICONEX MA2211-100 芯片上相互连接

    TRICONEX MA2211 100 芯片上相互连接 TRICONEX MA2211 100 所有相同的组件 io的电源 处理器 和内存将需要 但是 你可以看到所有这些带存储器和处理器的OO板 针不能嵌入到一个小的单片机上 现在是 普拉克
  • 【无标题】SMT贴片加工过程中需要注意的事项

    1 SMT贴片加工 技术员在产线上应佩戴好检验OK的防静电手环 金属片紧贴手腕并保持良好双手交替作业 插件前检查每个订单的电子元器件无错 混料 破损 变形 划伤等不良现象 2 电路板插件需要提前把电子物料准备好 注意电容极性方向须确认无误
  • 嵌入式开发--STM32G4系列片上FLASH的读写

    这个玩意吧 说起来很简单 就是几行代码的事 但楞是折腾了我大半天时间才搞定 原因后面说 先看代码吧 读操作 读操作很简单 以32位方式读取的时候是这样的 data IO uint32 t 0x0800F000 需要注意的是 当以32位方式读
  • STM32H5 Nucleo-144 board开箱

    文章目录 开发板资料下载 目标 点亮LD1 绿 LD2 黄 和LD3 红 三个LED灯 开箱过程 博主使用的是STM32CubeMX配置生成代码 具体操作如下 打开STM32CubeMX File gt New project 选择开发板型
  • Cortex-M3与M4权威指南

    处理器类型 所有的ARM Cortex M 处理器是32位的精简指令集处理器 它们有 32位寄存器 32位内部数据路径 32位总线接口 除了32位数据 Cortex M处理器也可以有效地处理器8位和16位数据以及支持许多涉及64位数据的操作

随机推荐

  • 经验:数据库中性别、状态、字典使用什么字段?

    结论 使用char类型 长度为1 0表示女 1表示男 char类型可以在java中转换成String 方便前端进行判断转换 而且方便在Java代码中进行转换 比如excel导出时使用 如 gender gender equals 1 男 女
  • 纯前端--原生js将html页面变成pdf文件(html2canvas+jsPDF)

    一 html2canvas 将dom变成图片 下载或者安装html2canvas 官网 1 将文档放在本地 用原生js进行引用和使用 新建一个名为 html2canvas min js 的文件 并且将线上的内容进行复制 引入 js 文件 j
  • java+ssm汽车维修管理系统

    项目介绍 java ssm汽车维修管理系统 java ssm汽车维修管理系统 技术和环境 技术 ssm html jq 环境 jdk1 7 mysql5 7 tomcat8 x idea eclipse 数据库表的数量 7张 是否为mave
  • element-ui实现多级checkbox关联选择(权限管理)

    1 依赖element ui 只是使用了el checkbox 可以很轻松替换掉 效果图
  • 告诉你外汇交易中心最有可能掉入的九个坑

    一 外汇真能赚钱吗 预期目标多少才算合理 玩外汇的人越来越多 大部分人都是奔着暴利去的 但是现实很残酷 这个市场95 的人都是亏钱的 努力多年都不一定能赚多钱 所以想入坑的人 如果没有足够的经济支撑 不要参与这个残酷的游戏 外汇的难度大于期
  • SQL语句中的条件查询

    条件查询 什么是条件查询 不是将表中所有数据都查出来 而是查询出符合条件的 语法格式 select 字段1 字段2 from 表名 where 条件 具体条件有 lt lt gt gt 或 lt gt between and is null
  • NetCDF文件概要与读写

    NetCDF简介 NetCDF network Common Data Format 即网络通用数据格式 最早是由美国国家科学委员会资助之计划 Unidata 所发展 其用意是在Unidata计划中不同的应用项目下 提供一种可以通用的数据存
  • python抽学号程序_Python编写编程作业批量自动打分程序的思路与实现

    总体思路 把接口明确地告诉学生 本文后面的代码要求学生程序中必须有个函数叫做searchOnede 然后学生把Python程序文件 学号 姓名 py 以任何方式提交给老师 放到同一文件夹中 下面的代码首先由老师编写一个自己认为的最佳和最优实
  • React中的合成事件

    Synthetic Event 合成事件是围绕浏览器原生事件 充当跨浏览器包装器的对象 它们将不同浏览器的行为合并为一个API 这样做是为了确保事件再不同浏览器中显示一致的属性 合成事件的基本操作 基础语法 在JSX元素上 直接基于onXx
  • 【春秋云境】CVE-2022-2073靶场WP和CVE-2022-1014靶场WP

    春秋云境 CVE 2022 2073靶场WP 网站地址 https yunjing ichunqiu com 渗透测试 1 已知提示 Grav CMS 可以通过 Twig 来进行页面的渲染 使用了不安全的配置可以达到远程代码执行的效果 影响
  • 循环神经网络——上篇【深度学习】【PyTorch】【d2l】

    文章目录 6 循环神经网络 6 1 序列模型 6 1 1 序列模型 6 1 2 条件概率建模 6 1 2 代码实现 6 2 文本预处理 6 2 1 理论部分 6 2 2 代码实现 6 3 语言模型和数据集 6 循环神经网络 6 1 序列模型
  • 附答案

    1 什么是机器学习 简单的说 机器学习就是让机器从数据中学习 进而得到一个更加符合现实规律的模型 通过对模型的使用使得机器比以往表现的更好 这就是机器学习 对上面这句话的理解 数据 从现实生活抽象出来的一些事物或者规律的特征进行数字化得到
  • Ubuntu搭建FTP(vsftpd)文件服务器

    前言 在开始介绍ftp服务器如何搭建前 先来介绍一些名词概念 以下名词均和文件服务器有关 SSH Secure Shell ssh是加密的shell 最初是用来替代telnet等无加密的远程登陆 相应的一个服务器是sshd SSL Secu
  • 关于LaTex下插入的图片排列问题及图片与文本排列问题

    begin figure tb centering setlength abovecaptionskip 0pt setlength belowcaptionskip 0pt subfigure show Fig 1 label subfi
  • uboot下的mw写内存和md显示内存命令以及nand命令

    配置uboot参数 setenv ipaddr 192 168 0 10 setenv serverip 192 168 0 40 setenv gatewayip 192 168 0 1 setenv netmask 255 255 25
  • Linux 实操篇(CentOS7)

    关于Shell shell 可看作命令解释器 bin sh 命令 shell命令入口 uinx解释执行的程序 bourne shell 处理和用户的交互比较差一点 后来Linux在此基础上发展出bash shell bourne again
  • 初学stm32-库函数开发步骤及总结

    stm32库函数开发 一 外设常具备的几类寄存器 二 控制外设的常见操作 三 外设的初始化 四 数据传送 五 状态检查与清除 六 外设函数分类 一 外设常具备的几类寄存器 控制寄存器xxx CR Control Configuration
  • spring boot配置类注册深入解析

    前言 spring ApplicationContext的刷新总体来看有两个过程 第一个是注册BeanDefinition 提供整个IOC容器初始化的材料 第二个是根据BeanDefinition加载bean 从spring boot开始
  • 日常错误整理

    DOMException Failed to execute setItem on Storage Setting the value of widgetCacheData exceeded the quota 在使用sessionStor
  • 【Xilinx Vivado时序分析/约束系列6】FPGA开发时序分析/约束-IO时序输入延时

    目录 源同步FPGA输入时序分析的模型 input delay约束 极限input delay 往期系列博客 源同步FPGA输入时序分析的模型 以下为源同步FPGA输入时序分析的模型的示意图 在之前的文章中介绍过 在此介绍一下各个时钟延时的