Spartan6系列文章之GTP Transceiver的介绍与使用

1.       什么是GTP transceiver?

  GTP transceiver是FPGA里一种线速度达500Mb/sà6.6Gb/s的收发器,利用FPGA内部可编程资源可对其进行灵活地配置,使其适合不同的需要如以太网、SATA1.0接口等,它的作用是各种高速串行接口的物理层。对Spartan6系列而言,GTPA1_DUAL包含两个GTP transceiver,或者说包含两个通道。

  下图是GTPA1_DUAL的内部结构图,图的下半部分是receiver,receiver在对串行输入的比特流并行化后,对其进行Sync原语丢失检测、COMMA字符的检测、8B/10B解码等;图的上半部分是transmitter,transmitter的串行输出则有着与receiver接收相反的过程。

图 1Spartan-6 FPGA GTP Transceiver 框图

  下图是GTPA1_DUAL在FPGA里的位置图,实际上,FPGA的高速接口一般都存在于FPGA的TOP部分,GTPA1_DUAL是高速接口,它的摆放位置就在FPGA的顶部。

图 2GTP Transceiver在Spartan6LX45T FPGA内的位置图

  图3所示:一个GTP DUAL包含两个GTP
Transceiver GTP0和GTP1和两个PLL;在生成GTP Core的时候,其PLL的输入参考时钟是可选的。


3Two GTP Transceivers in One GTPA1_DUAL Tile

  如图 4所示,GTPA1_DUAL内部的PLL0和PLL1可以分别连接不同的时钟源,也可以连接同一个时钟源如图 5所示。两个PLL可以产生两个不同的时钟供GTPA1_DUAL使用,也就是说,GTPA1_DUAL的两个Transceiver是可以运行于不同的频率的。它们的协议可以不一样,如GTPA1_DUAL的一个Transceiver运行PCIE协议,另一个运行SATA协议。

图 4GTP Transceiver参考时钟原理图1

图 5GTP Transceiver参考时钟原理图2

1.1.   
GTP Transceiver使用中必须明白的几个概念

  Spartan6系列的GTP Transceiver是被放在专门的Bank里,也就是说,在Spartan6系列里,如果一个Bank里有GTP引脚,那么这个Bank将不包含Select IO等引脚。

1个发送器、1个接收器、1个PLL组成1个GTP Lane;

两个GTP Lane组成一个GTP_DUAL;

两个GTP_DUAL组成1个Bank;

1.2.   
GTP Transceiver的复位

  GTP Transceiver的复位有两个办法:1是FPGA烧写完后的上电复位;2是直接驱动GTPRESET,使其为高电平一段时间。下图是GTP Transceiver内部复位的顺序图。


6 GTPA1_DUAL Reset Hierarchy

GTPRESET有效,使得RESETDONE立刻无效(变低),在GTP
Transceiver复位完成后,RESETDONE有效(变高)。


7Reset 时序图

1.3.   
GTP Transceiver的专用引脚功能描述

  GTP Transceiver从本质上来说是一种模拟电路,为了能够更好的对它进行PCB等的设计,必须深刻理解其引脚的功能。

表格
1GTP引脚描述表


Pins


Dir


Description


MGTAVCC


In


1.2V,是GTP Transceiver的内部模拟和数字电路的供电电压


MGTAVCCPLL0


In


1.2V,不但为PLL0供电,也为GTPA1_DUAL的Lane0供电,所以只要用到了Lane0,就需要给这个电压引脚供电


MGTAVCCPLL1


In


1.2V,不但为PLL1供电,也为GTPA1_DUAL的Lane1供电,所以只要用到了Lane1,就需要给这个电压引脚供电


MGTAVTTRCAL


In


为终端电阻校准电路供电,属于基本供电单元,该引脚不但要与MGTAVTTTX相连,还要连接一个50Ω精密电阻后与MGTRREF相连。


MGTAVTTRX


In


1.2V,接收器的终端电路供电


MGTAVTTTX


In


1.2V,发送终端的供电电压引脚


MGTREFCLK0P

MGTREFCLK0N


In


GTPA1_DUAL的差分输入时钟,如果没有,则需要接地


MGTREFCLK1P

MGTREFCLK1N


In


GTPA1_DUAL的差分输入时钟,如果没有,则需要接地


MGTRREF


In


连接一个50Ω的电阻后与MGTAVTTRCAL相连


MGTRXP0/MGTRXN0

MGTRXP1/MGTRXN1


In


差分数据输入引脚,如果不使用,则应接地


MGTTXP0/MGTTXN0

MGTTXP1/MGTTXN1


Out


差分数据输出引脚,如果不使用,则应悬空

  下图描述了GTP Transceiver的电源的推荐连接方式,选择该连接的原因(原理)参考表1。


8一种参考的电源连接方式

时间: 2024-08-04 12:41:22

Spartan6系列文章之GTP Transceiver的介绍与使用的相关文章

Spartan6系列文章之器件资源与特性介绍、选型参考

1.      概述 Spartan6系列是一类低成本高容量的FPGA,采用45nm低功耗敷铜技术,能在功耗.性能.成本之间很好地平衡:Spartan6系列内部采用双寄存器.6输入的LUT,还有一系列的内建系统级模块,这些系统级模块有18Kb Block Ram.第二代DSP48A21 Slice.SDRAM存储器接口(DDR接口).强健的混合型时钟管理模块.Select IO技术.优化的高速串行收发器GTP Transceiver.PCIE接口.先进的系统级电源管理模式.可自动检测配置.具有A

二、BaseCms系列文章:项目目录结构介绍

一. 目录结构截图 二. 目录结构说明 - documents    存放项目相关的文档文件 - api   api 数据接口目录 - assets    资源文件目录 - components     组件存放目 - mixins       vue 混入代码目录 - mock        mockjs 数据接口目录 - router 路由 - store  状态管理 - style   样式文件目录 - utils    工具类,公用代码 - views 视图 - vue.config.j

开篇:IT软件人员学习的书籍 - IT软件人员书籍系列文章

读书是一件快乐的事情. 读书能够增长知识,了解社会,了解人类的思想,继而转换成智慧.无论是什么人,都需要读书,多读书,读好书,同时也要把书中的精髓记录下来,一个是当做读后感,一个是为以后如果忘记了回头翻看能快速找回来. IT软件人员同样要多读书,多找能增进知识,增进技术的书来看.现在市场上有很多IT软件类的书籍,鱼龙混杂,林子大了什么书都有.所以,要从这些书中找到合适自己的书来阅读.但是,因为现在的书籍都比较贵,一本至少几十块钱,要购买相关的书籍需要付出不少费用.所以,关键是找到好书,如果是电子

云帮系列文章:核心组件介绍

本文是云帮系列文章的第三篇,前两篇分别介绍了云帮的设计思想和技术架构,您可以点击连接访问先前发布的文档. 云帮包含了很多功能组件,本篇文章针对 核心组件 加以介绍. 自动构建组件 云帮支持2种类型的自动构建:1. 源代码构建2. Dockerfile构建 两种构建方式分别走2套构建流程,其中Dockerfile的构建流程与Docker官方构建镜像的步骤一致.这里不再赘述,咱们重点介绍基于源代码的自动构建. 源代码构建背后的理论是:代码即环境 ,什么类型的代码从根本上来说已经决定了它的环境,比如说

Flask常用扩展介绍系列文章索引

这篇文章包含常用扩展介绍系列文章的索引目录. 关于扩展的基础知识可以阅读<Flask扩展的配置.初始化与管理>了解. *扩展列表按照写作时间排序 Flask-WTF 文章:关于Flask表单,我所知道的一切 GitHub主页:lepture/flask-wtf 文档:Flask-WTF - Flask-WTF 0.14 Flask-Uploads 文章:Flask文件上传(二):使用扩展实现 GitHub主页:maxcountryman/flask-uploads 文档:Flask-Uploa

一、BaseCms系列文章:项目介绍与环境配置

一.项目效果图预览: 二.项目介绍 基于 elementui 写一个自己的管理后台.这个系列文章的目的就是记录自己搭建整个管理后台的过程,希望能帮助到那些入门 vue + elementui 开发的小伙伴.之前有写过一个很简洁的版本,但觉得那个版本太粗糙,也没有相关的搭建过程讲解,学习意义不大.所以这个版本相当于对之前版本的升级和补充.那么项目中涉及到的知识点有哪些呢? 1. elementui 常用组件的使用和细节 2. axios 的封装及使用 3. vuex 的使用和模块化 4. 动态菜单

Spartan6系列之器件引脚功能详述

1.   Spartan-6系列封装概述 Spartan-6系列具有低成本.省空间的封装形式,能使用户引脚密度最大化.所有Spartan-6 LX器件之间的引脚分配是兼容的,所有Spartan-6 LXT器件之间的引脚分配是兼容的,但是Spartan-6 LX和Spartan-6 LXT器件之间的引脚分配是不兼容的. 表格 1Spartan-6系列FPGA封装 2.   Spartan-6系列引脚分配及功能详述 Spartan-6系列有自己的专用引脚,这些引脚是不能作为Select IO使用的,

Spartan6系列之SelectIO深入详解及高级应用简介

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和

《深入理解Java集合框架》系列文章

Introduction 关于C++标准模板库(Standard Template Library, STL)的书籍和资料有很多,关于Java集合框架(Java Collections Framework, JCF)的资料却很少,甚至很难找到一本专门介绍它的书籍,这给Java学习者们带来不小的麻烦.我深深的不解其中的原因.虽然JCF设计参考了STL,但其定位不是Java版的STL,而是要实现一个精简紧凑的容器框架,对STL的介绍自然不能替代对JCF的介绍. 本系列文章主要从数据结构和算法层面分析