Xilinx 7系列FPGA 高性能(HP)接口与2.5V/3.3V 外设IO接口设计考虑

引言:Xilinx 7系列FPGA IO Bank分为HP Bank和HR Bank,HP IO接口电压范围为1.2V~1.8V,可以实现高性能,HR IO接口电压范围为1.2V~3.3V。当HR Bank与2.5V或者3.3V外设互联时,需要考虑接口电平的兼容性。根据性能需求、功能和信号类型(输入、输出或双向),有不同的接口设计选项。本应用说明探讨诸如添加电阻器、场效应晶体管(FET)开关、电平转换器甚至其他Xilinx FPGA等选项。

目录

1. 电阻分压设计

2. 图腾柱电阻分压器设计

3. 串联FET开关

4. 自动电平转换器

5.定向电平转换器

6. CPLDs and FPGAs转换

7.设计指导


1. 电阻分压设计

    一个简单的电阻负载可以将过多的信号摆动截断到FPGA的可容忍水平。如图1所示,通过从传输线到GND放置电阻器,只有驱动高压被衰减。这种解决方案可能导致信号完整性低于理想,因为下拉电阻器通常不与传输线匹配。将该下拉电阻器放置在接收器附近有助于减少不必要的反射。

图片

图1:下拉电阻技术

    下拉电阻器可以通过知道输出驱动器阻抗/电阻和输出驱动电压(VCC)来确定。在所需的接收器输入电压定义为VRECEIVER的情况下,下拉电阻器使用等式1以及图2的有效示意图进行计算。

图片

图片

图2:带下拉电阻器的驱动器驱动逻辑1的有效示意图

带下拉电阻器的驱动器驱动逻辑1的有效示意图

表1显示了不同驱动器阻抗/电阻上2.5V和3.3V驱动器VCC的RPULLDOWN计算值。

表1:RPULLDOWN的计算值

图片

    由于驱动器的潜在非线性,建议通过HSPICE进行模拟以将非线性考虑在内。此外,由于阻抗不匹配,必须考虑过冲和反射。HP I/O组的VCCOMAX为2.1V。

2. 图腾柱电阻分压器设计

双电阻图腾柱解决方案允许端接与传输线匹配,以最大限度地减少反射,但代价是连续直流电流。

图片

图3:带Thevenin并联终端的驱动器示意图

电阻器的选择必须使其组合并联电阻尽可能接近Z0。此外,必须遵守接收器的VIH和VIL电平。如图3所示,VBIAS点的概念确保输入的高信号能够以足够的强度向下驱动,以匹配输入的低信号的驱动强度。知道这个VBIAS点可以计算上拉和下拉电阻值。将端接电阻器靠近接收器,以获得最佳信号完整性。

VBIAS(方程2)的计算更为复杂,并假设输出高和低驱动强度是平衡的。

图片

在获得VBIAS之后,可以计算RPULLUP和RPULLDOWN,如等式3所示:

图片

表2显示了对于2.5V和3.3V的驱动器VCC的RPULLUP和RPULLDOWN的计算值。

表2:RPULLUP和RPULLDOWN的计算值

图片

使用图3中的拓扑图,驱动器的输出阻抗必须足够小,才能达到接收器的VIH和VIL阈值。此外,输出阻抗必须足够大,以免过驱动接收器的推荐工作电压(VIHMAX)。在7个系列FPGA中,LVCMOS18的VIHmax为2.1V。ZDRIVER(MAX)和ZDRIVER(MIN)的计算分别如方程4和方程5所示。

图片

表3显示了对于2.5V和3.3V的驱动器VCC的ZDRIVER(MAX)和ZDRIVER(MIN)的计算值。

表3:ZDRIVER(最大值)和ZDRIVER(最小值)的计算值

图片

在ZDRIVER(MAX)处,逻辑1和逻辑0正好有300mV的裕度。随着输出阻抗的减小,逻辑1裕度的增长速度快于逻辑0裕度。方程6和方程7根据实际驱动器阻抗计算精确的裕度水平。

图片

表4显示了2.5V和3.3V的驱动器VCC的逻辑0和逻辑1余量的计算值。

表4:逻辑0和逻辑1余量的计算

图片

使用等式8计算图腾柱终端每次I/O消耗的偏置功率,VCC表示上拉电压。

图片

表5:每个I/O的功率计算

图片

通过使用VBIAS的并联端接,可以在没有直流偏置的情况下实现相同的性能,而需要额外的电源导轨(图4)。如果应用程序具有大量输入,则此解决方案可能是一个更节能的选项。

图片

图4:示例:VBIAS拓扑的并行端接

3. 串联FET开关

串联FET开关可以保证从3.3V到1.8V的单向电压转换,并可以修改为从1.8V到3.3V工作。该器件的性能类似于与传输线串联的NMOS晶体管,如图5所示。

图片

图5:串联FET开关

如果晶体管的栅极被设置为1.8V+VT,则来自3.3V驱动器的信号仅高达1.8V传递到接收器。德州仪器SN74TVC16222ADGVR提供23个具有公共栅极的并联NMOS传输晶体管,如图6所示。

图片

图6:德州仪器SN74TVC16222ADGVR的简化示意图

为了确保从2.5V/3.3V驱动器通过的电压不超过1.8V,可以使用23个NMOS晶体管中的一个作为参考晶体管,将所有栅极电压偏置到1.8V+VT,如图7所示。

图片

图7:1.8V参考晶体管示例设置

2.5/3.3V的电阻器应足够高(数百kΩ) 以限制到1.8V轨道的电流。

1.8V至2.5V/3.3V带FET开关的接口

仅通过FET开关将1.8V驱动到2.5V或3.3V接收器,留下非常少或没有VIHmargin。例如,在1.8V驱动到VIH为1.7V的Spartan®-6 FPGA LVCMOS25接收器的情况下,只有100 mV的裕度可用。在1.8V驱动到VIH为2.0V的Spartan-6 FPGA LVCMOS33接收器的情况下,根本没有余量。

如图8所示,接收器输入端的上拉电阻器可用于为低至高转换信号增加裕度。将RPULLUP放置在接收器附近,以获得最佳信号完整性。
 

图片

图8:FET开关上拉拓扑

在确定该电阻器的尺寸时必须特别小心,因为使其更强有助于以牺牲高-低转换信号为代价的低-高转换信号。此外,该电阻器影响低到高和高到低转换信号的定时。

将线路从FPGA驱动器的VCC充电到VIH所需的额外时间(T)(加上裕度)可以在等式9中合理估计,拓扑图如图8和图9所示。VIH是接收器的,并且Vm是高于VIH的期望裕度。t 是时间常数RPULLUP x(CFET+CLOAD)。

图片

表6:通过上拉电阻器充电的额外时间

图片

图片

图9:场效应管3.3V侧的示意图

上拉电阻器的存在会影响高到低的转换信号,因此驱动器阻抗必须足够低,以确保仍然满足VIL电平,减去一定量的裕度。公式10计算最大驱动器阻抗,并使用图10中的示意图作为参考。

图片

图片

图10:带上拉电阻器的驱动器驱动逻辑0的示意图

表7显示了基于各种上拉电阻值的最大驱动器阻抗值。

表7:最大驱动器阻抗与上拉电阻器

图片

I2C兼容性

使用具有适当电阻器上拉值的FET开关可以成功地对I2C信号进行电平转换。

4. 自动电平转换器

图11中的德州仪器TXB0108框图是一个自动方向感应转换器。自动感知传输方向的能力很容易进入双向系统。没有额外的控制信号,因为每个比特都有一个独立的方向传感器。该设备加起来为7.6ns
电路的传播延迟(3.3V至1.8V)。由于该设备的性质,如果线路上存在终端或其他重负载,可能会导致逻辑故障。终端和总线负载必须大于50 kΩ 以避免逻辑中断。因此,I2C和1Wire等开漏总线与这种类型的电平转换器不兼容。

图片

图11:自动电平转换器拓扑

5.定向电平转换器

德州仪器SN74AVC20T245是一个20位双向电平转换器,根据DIR的逻辑将数据从A电平转换到B电平或从B电平转换到A电平(图12,第10页)。

SN74AVC20T245分为两条10位总线,每条总线具有独立的DIR控制。每个块还有一个输出使能,用于将端口A与B隔离。通过设备存在高达4.6ns的引脚到引脚传播延迟。

图片

图12:20位双向电平转换器拓扑

6. CPLDs and FPGAs转换

各种Xilinx器件具有2.5V和3.3V的耐受性,可适用于双向电平移动应用。Xilinx CPLD非常适合。

Xilinx CPLD非常适合在3.3V之间进行电平转换,并且可提供多达117个I/O,以支持多达58位的总线。Spartan-6 FPGA也非常适合3.3V电平转换,可提供高达530个I/O。Virtex-6 FPGA也是可行的选择,可以从2.5V切换到2.5V。非易失性Spartan-3AN系列是另一个可行的选择。

使用CPLD或FPGA可以卸载7系列FPGA的其他逻辑和任务。通过Xilinx CPLD的引脚到引脚传播延迟为5ns,而对于FPGA,这取决于通过设备的路由。

图片

图13:CPLD或FPGA设计示例示意图

在CPLD或Spartan设备(图13)中,IOBUF被实例化以与7系列设备接口,而另一个IOBUF用于与2.5V/3.3V逻辑接口。信号从7系列FPGA或3.3V逻辑引入设备,以识别业务方向。

7.设计指导

表8给出了几种电平转换方法的比较。7系列FPGA中的高性能I/O组能够通过一系列选项适应更高电压的接口,这些选项几乎可以满足所有设计、成本和性能需求。

表8:设计指南比较

图片


图片

FPGA项目实战圈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/366.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模拟相机拍照——对文档进行数据增强

一. 背景 假如我们有一个标准文件,我们对其进行文字识别、版面分析或者其他下游任务就比较容易。然而,当图片是手机拍照获取的,图片中往往有阴影、摩尔纹、弯曲。 那么,如何通过标准的文档,获得类似相机拍照的图片呢&…

家庭营销广告Criteo公司首次获得MRC零售媒体测量认证

家庭营销广告Criteo公司首次获得零售媒体测量MRC认证 商业媒体公司Criteo2024年3月28日宣布,它首次获得媒体评级委员会(MRC)的认证,在其企业零售媒体平台commerce Max和commerce Yield上,在桌面、移动网络和移动应用内…

4-Java方法详解

目录 Java方法详解 1、什么是方法 2、方法的定义及调用 3、方法重载 4、命令行传参 5、可变参数 6、递归 例题:代码实现一个计算机 Java方法详解 1、什么是方法 2、方法的定义及调用 形参:用来定义作用的 实参:实际调用传递给他的参数…

C#基于SSE传递消息给Vue前端实现即时单向通讯

一、简述 通常前端调用后端的API,调用到了,等待执行完,拿到返回的数据,进行渲染,流程就完事了。如果想要即时怎么办?如果你想问什么场景非要即时通讯,那可就很多了,比如在线聊天、实…

Java 笔记 01:Java 概述,MarkDown 常用语法整理

一、前言 记录时间 [2024-04-18] 昨天整理完 Docker 基础后略微思索了一下,还是决定把 Java 捡起来,系统地学习一遍,参考的学习课程是狂神说 Java 零基础,真诚感激此系列视频对笔者的帮助。 零基础可以学 Java 吗?只要…

JVS低代码平台表单引擎:字符串拼接与逻辑函数的完美结合

字符串拼接使用逻辑函数配置 示例场景:通过按钮触发逻辑使用函数将两个日期字段组合为范围时间类型。 选择开始日期和结束日期后,点击【合并】按钮自动处理回显至起止日期字段。在【合并】按钮上设置逻辑。 注意:这里【起止日期】组件是数组…

【web开发02】后端开发Maven

后端开发Maven 1 Maven是什么?1.1 Maven基础概念1.1.2 仓库1.1.3 坐标 2 配置maven环境3 创建maven项目4 导入maven项目4 依赖管理4.1 依赖配置4.2 依赖传递4.2.1 排除依赖 4.3 依赖范围4.4 生命周期4.4.1 运行生命周期 1 Maven是什么? Maven本质是项目…

二次元AI绘画生成器免费:教你生成精美图片

二次元AI绘画生成器,无疑是现代技术与艺术完美结合的典范。这些工具不仅将复杂的绘画过程简化,更让每一个艺术爱好者的创意得以充分展现。这些生成器能够精准捕捉大家的创意精髓,将其转化为细腻、独特的二次元画作。无论是角色设计、场景描绘…

SpringMVC(五)【拦截器】

前言 今天来把 SpringMVC 最后一部分学完,虽然课时很短,但是学起来还是很慢的,不过确收获很大。不得不感慨学大数据确实有必要把 SSM、SpringBoot 等各种 JavaEE 技术好好学一学,收获很大,尽管我们到现在 Java 代码写了…

Redis几种常见的应用方式

1.登录认证 redis最常见的应用就是,登录认证把。再首次登录返回给前端token,把用户名和登录状态缓存到redis一段时间,每次其他请求进来过滤器那这token解析出来的用户名或其他关键的key值,再redis里面查询缓存,有则直…

【算法】二分查找

快乐的流畅:个人主页 个人专栏:《算法神殿》《数据结构世界》《进击的C》 远方有一堆篝火,在为久候之人燃烧! 文章目录 引言一、二分查找二、查找元素的第一个和最后一个位置三、x的平方根四、搜索插入位置五、山脉数组的峰顶索引…

【Leetcode每日一题】 分治 - 排序数组(难度⭐⭐)(60)

1. 题目解析 题目链接:912. 排序数组 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 2.算法原理 算法思路: 快速排序作为一种经典的排序算法,其核心思想在于通过“分而治之”的策略&#xff…

eCongnition 根据栅格类别图分类分割结果

目录 1、导入标签文件 2、根据栅格类别计算对象类别 3、导出栅格计算的类别 1、导入标签文件 导入栅格类别文件Label.tif 参考:eCongnition 对图像进行多尺度分割-CSDN博客 2、根据栅格类别计算对象类别 对类别栅格创建 mode[Maximum] 特征,该特征…

SQL Serve---嵌套查询

定义 嵌套查询:主要用于复杂的查询中。在SQL语言中,一个Select From Where语句称为一个查询块,将一个查询块嵌套在另一个查询的Where子句或Having短语中的查询称为嵌套查询。 子查询的类型 使用别名的子查询 使用IN和NOT IN的子查询 使用比较…

基于SSM的列车订票管理系统(含源码+sql+视频导入教程+文档+PPT)

👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于SSM的列车订票管理系统3拥有两种角色;管理员、用户 管理员:用户管理、车票管理、购票指南管理、系统管理等 用户:发布帖子、登录注册、购票等 1.…

数据结构速成--串

由于是速成专题,因此内容不会十分全面,只会涵盖考试重点,各学校课程要求不同 ,大家可以按照考纲复习,不全面的内容,可以看一下小编主页数据结构初阶的内容,找到对应专题详细学习一下。 目录 …

【Linux冯诺依曼体系结构】

目录 1.冯诺依曼体系结构原理 1.冯诺依曼体系结构 我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。 截至目前,我们所认识的计算机,都是有一个个的硬件组件组成 输入单元&#…

最新SpringBoot项目财务管理系统

采用技术 最新SpringBoot项目财务管理系统的设计与实现~ 开发语言:Java 数据库:MySQL 技术:SpringBootMyBatis 工具:IDEA/Ecilpse、Navicat、Maven 页面展示效果 系统登录页面 管理员功能 管理员功能页面 员工管理页面 部…

SpringBoot多数据源(五)

SpringBoot多数据源-集成多个mybatis框架 1.基本框架2.使用2.1项目结构2.2 依赖导入2.3 application.yml配置2.4 创建读与写的SqlSessionFactoryBean 3.总结 1.基本框架 通过启动多个SqlSessionFactoryBean,每个SqlSessionFactoryBean对应一个datasource和指定位置的…

STM32G431RBT6移植FreeRTOS

引言: 本文专门为参加了蓝桥杯嵌入式赛道的同学准备, 大家可能会有这样一个问题, 比完赛之后, 对于像继续使用STM32G431RBT6学习FreeRTOS的, 发现网上的教程使用的板子基本上都是F1和F4的, 其实呢&#xff…