FPGA学习总结5:常见IO接口标准

0.FPGA SelectIO 引言

        xilinx 7系列FPGA的SelectIO。所谓SelectIO,就是I/O接口以及I/O逻辑的总称;说到I/O,咱们必须先提到FPGA的BANK。在7系列的FPGA中,BANK分为HR(High-range)BANK和HP(High-performance) BANK。

1.HP BANK只能支持小于等于1.8V电平标准的I/O信号,HP BANK专为高速I/O信号设计,支持DCI(数控阻抗);

HP BANK涉及的高速I/O接口类型:GTX、GTH、GTY、GTP、GTZ、GTM

他们都是高速收发器,只是传输速率不同,速率大小为:

GTP < GPX < GTH < GTZ < GTY < GTM

不同芯片上使用的高速收发器也不同,而且同样是GTX,不同系列芯片上的速率也可能不同。
比如7系列的FPGA,GTP最高可以达到6.6Gb/s,GTX最高12.5Gb/s,GTH最高13.1Gb/s,GTZ最高28.05Gb/s

A7系列上面使用的高速收发器是GTP

K7系列上面使用的高速收发器是GTX

V7系列上面则是GTX/GTH/GTZ都有使用,而且只有在高端的芯片上才使用了GTZ。

UltraScaleUltraScale+的FPGA,高速收发器使用情况如下表,速度最低的也是GTH,高端的Virtex UltraScale+中使用了GTM

Versal ACAP系列的芯片,使用的也是高端的GTY和GTM

下面的表总结了各系列FPGA的高速收发器的类型和性能

2.HR BANK则支持小于等于3.3V电平标准的I/O信号,而HR BANK则适合更大众化的所有I/O信号设计。下表列出了HP BANK 和HR BANK的特性。

无论是HR或者HP BNANK,每个BANK都包含50个I/O管脚,每个I/O管脚都可配置成输入、输出。每个BANK的首尾管脚只能作为单端I/O,其余48个I/O则可配置成24对差分I/O。

单端的I/O管脚支持LVTTL、LVCMOS、HSTL、PCI等等常用的电平标准。差分的I/O管脚则支持LVDS、差分HSTL等差分信号

1.FPGA 常见IO接口配置

        Xilinx FPGA提供和支持高性能、可配置、多样化的接口标准。

I/O主要的可配置属性如下:

1.1 I/O std:  电平标准

常见IO接口可分为单端IO接口和差分IO接口,详细的IO标准参见下图1,表1

                                                        图1:IO接口标准

 

 

 

 




Xilinx SelectIO:个人整理_u924512005的博客-CSDN博客_selectio

具体与FPGA管脚(单端、差分)的连接应用可参考该篇博客;

1.2.output strength(输出驱动器的电流驱动能力)

    

1.3.slew rate(输出电压压摆率)

注明:压摆率越快,电平转换时间越短,时间性能越优;

1.4.Pull  type(上下拉类型)

1.5.On-chip termination(输入端/输出端的内置片上端接电阻)

当使用高速IO接口时,在接收端通常需要匹配的端接电阻,有利于高低电平的转换和提高信号的完整性,且端接电阻尽可能的放置在接收端。

1.5.1 差分输入端接电阻配置

        通常需要在差分输入端并行端接100Ω的电阻,FPGA在差分输入接收器提前内置了端接电阻,其阻值R为100Ω,为可选项optional。设计者也可以采用外接端接电阻来进行电阻匹配,阻值选择更灵活。采用片上内置的端接电阻可以节省无聊和缩小PCB面积

 

 通过UCF文件进行约束,是否使用差分输入端接电阻,语法规则如下:

NET <I/O_NAME> DIFF_TERM = "<TRUE/FALSE>" 

1.5.2 单端输入端接电阻配置

通过UCF文件进行约束,是否使用输入端接电阻,语法规则如下:

NET <I/O_NAME>  IN_TERM = "UNTUNED_SPLIT_<25,50,75>" 

1.5.3 输出端接电阻配置

由上图可知,输出端(也称为源端)也可以配置输出端接电阻,以减少信号的反射,应用在高速单端信号场合,例如FPGA输出驱动DDR3芯片。输出端接电阻也是optional可选项,常见阻值R为none,25Ω,50Ω,75Ω。通过UCF文件进行约束,是否使用单端输出端接电阻,语法规则如下:

NET <NET NAME> OUT_TERM = <NONE/ UNTUNED_25 / UNTUNED_50 / UNTUNED_75>;

 2.实例应用:

具体在FPGA中使用时,我们在FPGA约束文件XDC需要对FPGA的管脚做如下处理:

OUTPUT管脚配置:

1.I/O std:

2.output strength

3.slew rate

4.Package-PIN

5.offchip_Term:out_term

INPUT管脚配置:

1.I/O std:

2.Package-PIN

3.offchip_Term(选配):in_term

常见IO接口标准之FPGA_CAOXUN_FPGA的博客-CSDN博客_fpga io口

3.电平标准和阻抗匹配

关于高速接口:LVPECL, LVDS, HSTL, and CML的定义以及端接匹配可参考TI的官方设计指导

下载地址如下:

1.LVPECL、VML、CML、LVDS接口定义介绍-其它文档类资源-CSDN下载

2.TI官方指导LVPECL、LVDS、HSTL、AndCML接口AC耦合匹配教程-其它文档类资源-CSDN下载

或者参考以下教程:

Xilinx 7系列FPGA架构 SelectIO 常见电平标准和阻抗匹配(精华)_一个早起的程序员-CSDN博客_tmds电平标准

  • 13
    点赞
  • 234
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: FPGA IO相位移是指FPGA芯片上的输入输出端口信号在传输过程中发生的相对时间延迟。当信号从FPGA的输入端口送入到输出端口时,由于信号需要在内部逻辑电路中经过一定的处理和传播,所以会引起相位的延迟。 FPGA芯片中的IO资源通常由输入寄存器和输出缓冲器组成。输入端口的信号通过输入寄存器进行采样后,再经过内部逻辑电路处理后发送到输出缓冲器,最后输出到外部设备中。在这个过程中,信号需要在内部逻辑电路中传播,会经过许多逻辑门、数据通路等,而这些组件都会引入一定的延迟,从而导致信号的相位发生变化。 由于FPGA的内部逻辑电路会根据设计需要进行优化和布局,不同的逻辑电路组件的延迟也会有所差异。因此,FPGA IO相位移通常是一个不确定的值,需要在设计和布局阶段进行综合和优化,以确保信号的稳定性和正确性。 针对FPGA IO相位移问题,设计者可以采取一些方法来减小其影响。比如,可以采用合适的布局和布线规则,将相关的输入输出端口尽量靠近,减少信号的传播路径和延迟;可以合理设置时钟和数据的时序关系,以确保信号在传输过程中不会出现冲突和干扰;可以使用FPGA芯片自带的时序分析和优化工具,对设计进行综合和布局分析,找出潜在的相位问题并进行优化。 总之,FPGA IO相位移是一个需要设计者重视和解决的问题,通过综合布局和优化设计,可以有效减小相位移的影响,提高FPGA设计的性能和可靠性。 ### 回答2: FPGAIO相位移是指通过FPGA芯片来改变输入输出信号的相位。在FPGA中,IO相位移可以用于调整时钟信号的相位,从而实现对输入输出信号的同步或延迟控制。 首先,FPGAIO相位移可以用于时钟信号的同步。在FPGA设计中,不同模块之间通常需要使用同一时钟信号进行数据传输和处理。然而,由于信号路径的长度和电路延迟等因素的影响,时钟信号可能会出现相位不一致的情况。通过使用FPGAIO相位移功能,可以对时钟信号进行微调,以实现各个模块之间的同步,确保数据的准确传输。 其次,FPGAIO相位移还可以用于延迟控制。在某些应用中,需要对输入信号进行延迟处理,以满足系统对时间精度的要求。通过FPGAIO相位移功能,可以对输入信号进行微调,从而实现对信号延迟的控制。这在一些音频、视频处理等需要对信号进行同步处理的场景中非常常见。 总而言之,FPGAIO相位移是一种通过调整时钟信号相位来实现输入输出信号同步和延迟控制的功能。它对于保证信号的稳定传输和满足系统对时间精度的要求非常重要。FPGA作为可编程的硬件平台,可以根据具体应用需求通过配置IO相位移参数,以实现更灵活、高效的信号处理和传输。 ### 回答3: FPGA(可编程逻辑门阵列)的IO(输入/输出)相位移是指在FPGA芯片内部对输入和输出信号进行延时控制,以达到满足特定设计需求的目的。 首先,FPGA芯片的IO延时可以通过调整时钟边沿来实现。在FPGA设计中,时钟信号用于同步各个逻辑元件,对于需要通过IO接口传输的信号,可以通过控制输入输出寄存器(IOB)的时钟边沿来实现输入输出相位的调整。例如,可以选择上升沿或下降沿作为IO的采样点,从而调整信号被采样的时机,以改变信号的相位。 其次,FPGA芯片还提供了专门的相位锁定环(PLL)或延迟锁定环(DLL)等硬件资源,用于实现更精确的IO相位移。通过对这些资源的配置和控制,可以对输入输出信号的时钟进行细粒度的延时和相位调整。这些锁定环通常采用反馈环路或计数器的方式,通过调整内部时钟的相位来实现IO信号的相位控制。 最后,FPGA芯片通常提供了硬件描述语言(如Verilog或VHDL)来描述设计的逻辑电路,并能够通过工具链进行综合、布局和布线等操作。在这个过程中,可以使用特定的语法和指令来指定IO信号的延时和相位移。通过合理地设定延时和相位参数,可以满足各类设计需求,如时序要求、时钟分频、数据同步等。 综上所述,FPGA芯片的IO相位移是通过控制时钟边沿、使用专门的PLL或DLL资源以及合理使用硬件描述语言等手段来实现的。具体的相位移控制方法会根据设计需求和FPGA芯片的资源而有所不同,需要结合具体的设计和技术手段来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值