1.      什么是I/O Tile?

  对Spartan-6系列FPGA来说,一个IO Tile包括2个IOB、2个ILOGIC、2个OLOGIC、2个IODELAY。

图 1Spartan-6系列IO Tile结构图

图 2Spartan-6 FPGA I/O Banks

1.1.  IOB结构介绍

  每个IOB包含了输入、输出、三态驱动器;这些驱动器可以配置为不同的电平标准如LVTTL、LVCMOS等;差分IO会用到1个IO Tile里的两个IOB。

每个IOB都被直接连接到了ILOGIC和OLOGIC,ILOGIC和OLOGIC可以被配置成ISERDES或OSERDES,。

图 3基本IOB结构图

1.1.1.   IOB内部终端电阻

  高速IO电平标准的使用可以优化电平转换特性和信号完整性,在高速IO电平标准中往往需要使用终端电阻。终端电阻的位置应该距离接收器越近越好。

Spartan-6 FPGA为差分IO和单端IO提供了片内终端电阻,这个终端电阻位于IOB内部,使用这些终端电阻,可以避免FPGA外部再引脚处再接电阻。

  • 差分IO的终端电阻

    Spartan-6系列为差分IO提供了100Ω的终端电阻,差分引脚的终端电阻可以通过约束文件使之使能或不使能。

图 4差分引脚使能终端电阻

图 5差分引脚不使能终端电阻

  • 单端引脚终端电阻

    单端引脚的输入终端电阻和输出阻抗都是可编程控制的,如下图所示:左边FPGA的输出使能了50Ω的输出阻抗,右边的FPGA使能了输入50%分压电阻;在高速接口应用中,使能输出阻抗可以减少电磁反射,Spartan-6系列FPGA输出阻抗可选值为None、25Ω、50Ω、75Ω;输入阻抗可设置为25%、50%、75%分压。

图 6单向SSTL接口使用片上终端电阻

1.1.2.   IOB内部可例化的原语

  IOB内部有多种输入输出缓冲资源(buffer resource),他们可以原语的形式调用,在Spartan-6系列里,单端IO标准的原语如下5个:

原语

功能

IBUF

输入缓冲

IBUFG

时钟输入缓冲

OBUF

输出缓冲

OBUFT

输出三态缓冲

IOBUF

输入输出缓冲

同时有7个差分IO标准的原语

原语

功能

IBUFDS

输入缓冲

IBUFGDS

时钟输入缓冲

IBUFDS_DIFF_OUT

取反输出缓冲

IBUFGDS_DIFF_OUT

时钟取反输出缓冲

OBUFDS

输出缓冲

OBUFTDS

三态输出缓冲

IOBUFDS

输入输出IO缓冲

1.1.3.   IOB内可用IO电平标准

  IOB支持多种电平标准,用户可以自由灵活地为自己的设计选择合适的IO电平标准,Spartan-6系列支持的IO电平标准如下

标准

解释

用途及厂商

输入缓冲

输出缓冲

单端IO电平标准

LVTTL

Low Voltage TTL

General purpose

3.3V

LVTTL

Push-Pull

LVCMOS

Low Voltage CMOS

General purpose

CMOS

Push-Pull

PCI

Peripheral

Component

Interconnect

PCI bus

LVTTL

Push-Pull

I2C

Inter Integrated

Circuit

NXP

CMOS

Open drain

SMBUS

System Management

Bus

Intel

CMOS

Open drain

SDIO

Secure Digital Input

Output

SD Card Assoc,

Memory Card

CMOS

Push-Pull

Mobile DDR

Low Power DDR

CMOS

Push-Pull

HSTL

High-Speed

Transceiver Logic

Hitachi SRAM; IBM;

three of four classes

supported

Vref based

Push-Pull

HSTL18

High-Speed

Transceiver Logic

Hitachi SRAM; IBM;

three of four classes

supported

Vref based

Push-Pull

SSTL3

Stub Series

Terminated Logic for

3.3V

SDRAM bus; Hitachi

and IBM; two classes

Vref based

Push-Pull

SSTL2

SSTL for 2.5V

DDR SDRAM

Vref based

Push-Pull

SSTL18

SSTL for 1.8V

DDR SDRAM

Vref based

Push-Pull

SSTL15

SSTL for 1.5V

DDR SDRAM

Vref based

Push-Pull

差分IO电平标准

LVDS25

LVDS33

Low Voltage

Differential Signaling

High-speed

interface, backplane,

video; National, TI

Differential

Pair

Differential

Pair

BLVDS

Bus LVDS

Bidirectional,

multipoint LVDS

Differential

Pair

Pseudo

Differential

Pair

DISPLAY PORT

Auxiliary channel

interface for DISPLAY

PORT

Flat panel displays

Differential

Pair

Pseudo

Differential

Pair

LVPECL

Low Voltage Positive

ECL

High-speed clocks

Differential

Pair

N/A

MINI_LVDS

mini-LVDS

Flat panel displays

Differential

Pair

Differential

Pair

RSDS

Reduced Swing

Differential Signaling

Flat panel displays

Differential

Pair

Differential

Pair

TMDS

Transition Minimized

Differential Signaling

Silicon Image;

DVI/HDMI

Differential

Pair

Differential

Pair

PPDS

Point-to-Point

Differential Signaling

LCDs

Differential

Pair

Differential

Pair

Differential

Mobile DDR

Differential LPDDR

for CK/CK#

Differential

Pair

Pseudo

Differential

Pair

DIFF_HSTL_I

DIFF_HSTL_III

DIFF_HSTL_IV

DIFF_HSTL_I_18

DIFF_HSTL_III_18

DIFF_HSTL_IV_18

Pseudo Differential

HSTL

SRAM

Differential

Pair

Pseudo

Differential

Pair

DIFF_SSTL3_I

DIFF_SSTL3_II

DIFF_SSTL2_I

DIFF_SSTL2_II

DIFF_SSTL18_I

DIFF_SSTL18_II

DIFF_SSTL15_II

Pseudo Differential

SSTL

DDR, DDR2,

DDR3 SDRAM

Differential

Pair

Pseudo

Differential

Pair

1.1.4.   FPGA配置后未使用引脚状态

  在默认情况下,在FPGA配置完成后,所有未使用的引脚将被配置成输入,并在IOB内部经下拉电阻接地,这种未使用引脚在配置后的状态可以通过UnusedPin BitGen option进行设定。

1.2.  SelectIO 的逻辑资源

SelectIO的逻辑资源包括基本资源和高级资源,其中,基本资源包括:

  • Combinatorial input/output,组合输入/输出
  • 3-state output control,三态输出控制
  • Registered input/output,寄存器输入输出
  • Registered 3-state output control,寄存器三态输出控制
  • Double Data Rate (DDR) input/output,双倍数据率输入输出
  • DDR output 3-state control,双倍数据率三态输出控制

高级资源包括:

  • IODELAY2,为用户提供精准的延时控制
  • NONE, C0, and C1 output DDR mode,输出双倍数据输出
  • NONE, C0, and C1 input DDR mode,输入双倍数据输入
  • ISERDES,输入串并转换
  • OSERDES,输出并串转换

  selectIOn逻辑资源被组合在一个IO Tile内部,如下图所示,在单端模式中,master I/O buffer驱动P Pad,slave I/O buffer驱动N Pad;在差分模式中,master I/O buffer和slave I/O buffer组合起来使用,可以完成串并或者并串转换。

图 7一个I/OTile里的selectIO逻辑资源

1.3.  Selection资源中可用的时钟资源

  所有IO的数据采集和转换(包括串并转换和并串转换)、DDR传输等都需要一个内部SDR时钟,为了实现这些功能,I/O接口Tile需要一个本地的时钟倍频器来获取SDR时钟。

进行DDR传输的倍频器需要两个输入时钟,这两个输入时钟必须是下面三种情况之一:  

  • 一个全局时钟和它的局部(IO接口资源里)取反时钟
  • 两个相位相差180°的全局时钟
  • 两个相位相差180°的I/O时钟

图 8IO接口逻辑的时钟资源

Spartan6系列之SelectIO深入详解及高级应用简介的更多相关文章

  1. ASP.NET MVC深入浅出系列(持续更新) ORM系列之Entity FrameWork详解(持续更新) 第十六节:语法总结(3)(C#6.0和C#7.0新语法) 第三节:深度剖析各类数据结构(Array、List、Queue、Stack)及线程安全问题和yeild关键字 各种通讯连接方式 设计模式篇 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借

    ASP.NET MVC深入浅出系列(持续更新)   一. ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态模 ...

  2. Hexo系列(三) 常用命令详解

    Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...

  3. RabbitMQ详解(一)------简介与安装(Docker)

    RABBITMQ详解(一)------简介与安装(DOCKER) 刚刚进入实习,在学习过程中没有接触过MQ,RabbitMQ 这个消息中间件,正好公司最近的项目中有用到,学习了解一下. 首先什么是MQ ...

  4. 官网实例详解-目录和实例简介-keras学习笔记四

    官网实例详解-目录和实例简介-keras学习笔记四 2018-06-11 10:36:18 wyx100 阅读数 4193更多 分类专栏: 人工智能 python 深度学习 keras   版权声明: ...

  5. yum的repo文件详解、以及epel简介、yum源的更换、常用yum命令

    https://www.cnblogs.com/nineep/p/6795692.html       yum的repo文件详解.以及epel简介.yum源的更换 常用命令如下: yum list  ...

  6. Signalr系列之虚拟目录详解与应用中的CDN加速实战

    目录 对SignalR不了解的人可以直接移步下面的目录 SignalR系列目录 前言 前段时间一直有人问我 在用SignalR 2.0开发客服系统[系列1:实现群发通讯]这篇文章中的"/Si ...

  7. 转载爱哥自定义View系列--文字详解

    FontMetrics FontMetrics意为字体测量,这么一说大家是不是瞬间感受到了这玩意的重要性?那这东西有什么用呢?我们通过源码追踪进去可以看到FontMetrics其实是Paint的一个内 ...

  8. 转载爱哥自定义View系列--Paint详解

    上图是paint中的各种set方法 这些属性大多我们都可以见名知意,很好理解,即便如此,哥还是带大家过一遍逐个剖析其用法,其中会不定穿插各种绘图类比如Canvas.Xfermode.ColorFilt ...

  9. kubernetes系列07—Pod控制器详解

    本文收录在容器技术学习系列文章总目录 1.Pod控制器 1.1 介绍 Pod控制器是用于实现管理pod的中间层,确保pod资源符合预期的状态,pod的资源出现故障时,会尝试 进行重启,当根据重启策略无 ...

随机推荐

  1. Guass列主元、平方根法、追赶法求解方程组的C++实现

    一,要解决的问题 选用合适的算法,求解三种线性方程组:一般线性方程组,对称正定方程组,三对角线性方程组. 方程略. 二,数值方法 1,使用Guass列主元消去法求解一般线性方程组. Guass列主元是 ...

  2. MapReduce的Reduce side Join

    1. 简单介绍 reduce side  join是全部join中用时最长的一种join,可是这样的方法可以适用内连接.left外连接.right外连接.full外连接和反连接等全部的join方式.r ...

  3. Tomcat启动一半闪退问题解决

    近期刚刚接触Tomcat.对其还不是非常了解. 在这几天,遇到一个Tomcat启动闪退的问题.通过查阅各种资料.算是完美解决.在此分享给朋友们. 首先.确定你的问题在哪里.有两个方法,你能够通过日志去 ...

  4. cmd启动Oracle服务和监听服务

    启动数据库服务 net start oracleserviceorcl 启动数据库监听 lsnrctl start

  5. websphere修改jsp不生效的解决办法

    最近在给客户部署系统后,进行UAT测试的时候,发现一些小问题(是一些jsp文件),改好后,就进行增量发布了,可是后来在页面刷新的时候,怎么都是显示不出来效果,后来就把服务websphere重启后,页面 ...

  6. HDU 3308 线段树单点更新+区间查找最长连续子序列

    LCIS                                                              Time Limit: 6000/2000 MS (Java/Oth ...

  7. ios20--xib2

    故事板控制器: // // ViewController.m // 03-通过xib自定义商品的View #import "ViewController.h" #import &q ...

  8. ubuntu 截图工具 Shutter,设置快捷键 Ctrl+Alt+A

    系统设置 键盘 快捷键 自定义快捷键

  9. 使Android 自带SDK 完美支持HTML5 之 html5webview

    HTML5出来之后,webkit 大部分都支持了,但是由于历史原因,支持限度有限,我在Android 4.0使用 hao123的客户端访问youxi.cn期望可以万网手机HTML5游戏但是有些失望,进 ...

  10. Opencv+Zbar二维码识别(一维码校正)

    一维码由一组规则排列的黑色线条.白色线条以及对应的字符组成.对倾斜的(没有严重形变)一维码的角度校正,可以根据其黑白相间.排列规则的特点,计算傅里叶频谱,通过傅里叶频谱中直线的倾斜角度计算空间域图像一 ...