xilinx FPGA SelectIO模块

5.1.6 SelectIO模块

Virtex-6每个I/O片(I/O Tile)包含两个IOB、两个ILOGIC、两个OLOGIC 和两个IODELAY,如图5-24 所示。

图5-24 I/O 片结构图

本小节就以下几个方面介绍Virtex-6 的SelectIO 资源。

(1) SelectIO 的电气特性。

(2) SelectIO 的逻辑资源——ILOGIC 资源和OLOGIC 资源。

(3) SelectIO 的高级逻辑资源——ISERDES 资源、OSERDES 资源和Bitslip。 一、 SelectIO IO 的电气特性

所有的Virtex-6 FPGA 有高性能的可配置SelectIO 驱动器与接收器,支持非常广泛的接口标准。强大的功能SelectIO 包括输出强度和斜率的可编程控制以及使用数控阻抗(DCI)的片上终端。

IOB 包含输入、输出和三态SelectIO 驱动器。支持单端I/O 标准(LVCMOS、HSTL、SSTL)和差分I/O 标准(LVDS、HT、LVPECL、BLVDS、差分HSTL 和SSTL)。

注意:差分输入和VREF 相关输入由VCCAUX 供电。 IOB、引脚及内部逻辑的连接如图5-25 所示。

图5-25 IOB、引脚及内部逻辑连接图

IOB 直接连接ILOGIC/OLOGIC 对,该逻辑对包含输入和输出逻辑资源,可实现数据和三态控制。ILOGIC和OLOGIC可分别配置为ISERDES和OSERDES。 Xilinx软件库提供了大量与I/O相关的原语,在例化这些原语时,可以指定I/O标准。与单端I/O相关的原语包括IBUF(输入缓冲器)、IBUFG(时钟输入缓冲器)、OBUF(输出缓冲器)、OBUFT(三态输出缓冲器)和IOBUF(输入/输出缓冲器)。与差分I/O相关的原语包括IBUFDS(输入缓冲器)、IBUFGDS(时钟输入缓冲器)、OBUFDS(输出缓冲器)、OBUFTDS(三态输出缓冲器)、IOBUFDS(输入/输出缓冲器)、IBUFDS_DIFF_OUT(输入缓冲器)和IOBUFDS_DIFF_OUT(输入/输出缓冲器)。 二、 SelectIO的逻辑资源

SelectIO的逻辑资源主要是指ILOGIC和OLOGIC资源,它们完成了FPGA引脚到内部逻辑的连接功能,包括组合输入/输出、三态输出控制、寄存器输入/输出、寄存器三态输出控制、DDR输入/输出、DDR输出三态控制、IODELAYE1高分辨率可调整延迟单元及其控制模块。 下面简要介绍ILOGIC和OLOGIC功能。

(1) ILOGIC。

图5-26 ILOGIC内部逻辑

ILOGIC的内部逻辑如图5-26所示,可以实现的操作包括:异步/组合逻辑、DDR模式(OPPOSITE_EDGE、SAME_EDGE或SAME_EDGE_PIPELINED)、电平敏感型锁存器和边沿触发D型触发器。

?

异步/组合逻辑。

用来创建输入驱动器与FPGA内部资源之间的直接连接。当输入数据与FPGA内部逻辑之间存在直接(非寄存)连接,或者当“将I/O寄存器/锁存器合并到IOB中”的设置为OFF时,此通路被自动使用。

?

输入DDR(IDDR)。

Virtex-6器件的ILOGIC中有专用寄存器来实现输入双倍数据速率(DDR)。可以通过例化IDDR的原语来使用此功能。IDDR只有一个时钟输入,下降沿数据由输入时钟的反相版本(在ILOGIC内完成反相)进行时钟控制。所有输入I/O模块的时钟均为完全多路复用,即ILOGIC或OLOGIC模块之间不共用时钟。IDDR支持以下三种操作模式:

OPPOSITE_EDGE模式、SAME_EDGE模式和SAME_EDGE_PIPELINED模式。

SAME_EDGE和SAME_EDGE_PIPELINED与Virtex-5一样。这些模式允许设计人员在ILOGIC模块内部将下降沿数据转移到上升沿时钟域,以节省CLB和时钟资源并提高性能。这些模式是用DDR_CLK_EDGE属性实现的。 各模式下时序图请参考图5-27、图5-28和图5-29。

图5-27 OPPOSITE_EDGE模式下的输入双倍数据速率

图5-28 SAME_EDGE模式下的输入双倍数据速率

联系客服:779662525#qq.com(#替换为@)