当前位置: 首页 > news >正文

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

在之前介绍的是FPGA内部的时序分析,包括以下几种情况

  • 寄存器与寄存器之间
  • 输入PAD(输入时钟)与寄存器之间
  • 寄存器与输出 PAD (输出时钟)之间
  • 输入PAD(输入时钟)与输出PAD(输出时钟)

现在就开始分析FPGA与外部的其他器件的连接的时序分析,也就是IO时序分析,如下图,数据由上游器件(源端)到下游器件(FPGA),上游器件提供数据,下游器件接收数据,因此分析的是输入的情况,FPGA这部分需要满足建立时间和保持时间的要求。

从下图可以看到,从源端到FPGA的数据和时钟的路径,两者是有差异的,外部的PCB布线延迟,包括系统时钟到源端寄存器的PCB布线延迟和源端寄存器到FPGA内部寄存器之间的PCB布线延迟,但是由于系统时钟到源端寄存器的PCB布线延迟是数据和时钟两者共同的路径,因此这部分的延迟可以不考虑,只需要分析第二部分的PCB布线延迟。

下图,我们把由源端提供了同步时钟和同步数据,这种模型称为源同步FPGA输入时序分析的模型

同步时钟:用于产生数据的时钟和输出的时钟是同源的,但是不一定同相。

同步数据:源端的数据和输出的数据是同源的。

另外一种模型:

这种模型与上面的模型不同的是,并不是采用的从系统时钟输出经过源端寄存器再传输到FPGA内部的寄存器,而是由系统时钟或者说是PCB板提供的晶振时钟,有这样的时钟源,直接给到了不同的子系统(这里分别是上游器件和FPGA ),这种系统称作为系统同步FPGA输入时序分析的模型

但是这种模型基本已经被淘汰了,因为这种模型不利于传输高速数据。

因此之后主要分析源同步FPGA输入时序分析的模型。

往期系列博客:

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

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

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

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

http://www.jsqmd.com/news/500031/

相关文章:

  • Nano Node选举机制深度分析:为什么它能实现零费用交易
  • Apache NuttX文件系统实战:FAT、ROMFS、NFS等12种文件系统详解
  • Docker学习(一) -- 理论及Linux安装、windows安装
  • 如何用GPT-Prompt-Engineer打造高效AI对话助手:新手必备的终极指南
  • Apache NuttX实战案例:构建智能家居控制系统的完整流程
  • Docker学习(三) -- 镜像、目录挂载(卷映射)、配置映射
  • 视频分析神器Video-Analyzer:基于LLaMA视觉模型和Whisper的完整视频内容分析指南
  • 5分钟快速上手Spec Workflow MCP:零基础配置结构化开发工作流
  • Jetpack Compose性能优化指南:避免重组与提升UI渲染效率的终极方法
  • Gatsby Starter Blog部署终极指南:Netlify、Vercel、GitHub Pages全面对比
  • yi-hack-v3固件FAQ:新手必知的10个常见问题与解决方案
  • Spring Cloud Kubernetes 健康检查与监控:构建可观测云原生应用的完整方案
  • 忘记密码也不怕:yi-hack-v3固件恢复出厂设置与故障排除
  • 如何在ML Workspace中轻松集成TensorFlow和PyTorch:一站式机器学习开发环境实战指南
  • Kiali安全性最佳实践:mTLS状态监控与授权策略验证
  • 实战案例:用Rust和AWS Lambda构建完整的S3图片处理流水线
  • 如何利用Deepagents实现AI代理驱动的利润增长:5个关键策略
  • 掌握TypeScript高级类型的终极指南:Type Challenges实战教程
  • 如何借助Deepagents优化价值:探索AI代理的终极潜力
  • jQuery.payment源码深度剖析:从CoffeeScript到JavaScript的转换艺术
  • bounty-targets-data数据格式详解:如何有效利用JSON和TXT文件
  • PrivescCheck高级用法:自定义检查模块和扩展功能开发终极指南
  • 利用Rust打造的神奇存储法:Infinite-Storage-Glitch
  • EasyFloat最佳实践:10个高效开发技巧与常见问题解决方案
  • 提升终端生产力:Nord tmux主题状态栏自定义与信息展示技巧
  • mlhub123竞赛资源宝库:Kaggle、天池等平台全攻略
  • Reflex终极指南:如何在文件变化时自动运行命令
  • BCM20702 vs BCM4350:BrcmPatchRAM支持的主流蓝牙芯片性能对比
  • 如何快速学习Android开发:官方培训课程中文版(v0.9.7)终极指南
  • 推荐开源项目:BLUI - HTML驱动的Unreal Engine 4 UI和HUD