理解GTX的必备姿势,学起来!


汇总篇:

Xilinx FPGA平台GTX简易使用教程(汇总篇)

目录

一、什么是GTX?

二、Quad/Channel

三、PMA与PCS

四、GTX收发处理流程

五、其他内容


一、什么是GTX?

GT  :Gigabit Transceiver千兆比特收发器;

GTX :Xilinx 7系列FPGA的高速串行收发器,硬核

xilinx的7系列FPGA根据不同的器件类型,集成了GTP、GTX、GTH、GTZ四种串行高速收发器,可以支持多种协议如PCI Express,SATA,JESD204B等。

四种收发器主要区别是支持的线速率不同,下图可以说明在7系列里面器件类型和支持的收发器类型以及最大的收发器数量。

如我们常用的芯片 : 7K325TFFG900-2 ,集成了16个GTX。

如下图,我的测试工程使用了1个GTX,可使用16个。

另外,下面还可以看到Cell Types:GTXE2_COMMON与GTXE2_CHANNEL,这个先混个眼熟,后面会继续谈到。

二、Quad/Channel

我们先看一张GTX的结构图:(以7K325T为例)

Quad:4个GTX位1组,称为Quad,也就是图中标记的大红框。

从图中可以看到,7K325T芯片共有4个Quad,也就是16个GTX。

我们继续来看Quad的布局图:

简单总结下:

Quad:

包含4个Channel(每个channel包含一个GTX),1个QPLL,2个差分输入参考时钟;

QPLL :

也就是一个Quad共用的PLL,属于GTXE2_COMMON;

Channel:每个channel就是一个GTX,包含一个CPLL和一对收发器;

CPLL : 每个Channel独有的PLL,属于GTXE2_CHANNEL;

注:

CPLL最高支持线速6.x G,而QPLL则可超过10G;在通道线速较大(超过6.xGbps)时,IP会自动使用QPLL。

GTXE2_COMMON、GTXE2_CHANNEL :是Xilinx的器件原语(primitive),原语是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数;原语类似最底层的描述方法,使用好处多多~

三、PMA与PCS

接上一节,我们继续看Channel的拓扑结构:

看图说话,发送端(TX)和接收端(RX)功能独立,均由PMA和PCS两个子层组成。

PMA:(Physical Media Attachment,物理媒介适配层)

PCS:(Physical Coding Sublayer,物理编码子层)

其中PMA子层包含高速串并转换(PISO)、预/后加重、接收均衡、时钟发生器及时钟恢复等电路。PCS子层包含8B/10B编解码、缓冲区、通道绑定和时钟修正等电路。这么来说,PMA是最基本的单位,负责模拟部分,而PCS主要负责并行的数字电路处理,理论上来说PCS完全可以由逻辑设计完成;但是硬核专用电路实现肯定功能更强大更稳定!

四、GTX收发处理流程

GTX发送端处理流程:首先用户逻辑数据经过8B/10B编码后,进入一个发送缓存区Phase Adjust FIFO,该缓冲区主要是PMA子层和PCS子层两个时钟域的时钟隔离,解决两者时钟速率匹配和相位差异的问题,最后经过高速Serdes进行并串转换(PISO parallel-in serial-out),有必要的话,可以进行预加重、后加重(Pre/Post Emp)。值得一提的是,如果在PCB设计时不慎将TXP和TXN差分引脚交叉连接,则可以通过极性控制来弥补这个设计错误。

接收端和发送端过程相反,相似点较多,这里就不赘述了,需要注意的是RX接收端的弹性缓冲区(RX Elastic Buffer),其具有时钟纠正和通道绑定功能。

五、其他内容

介绍一些专用名词和使用的技术。

  1. PRBS :伪随机序列码,在一定程度的随机数,使用PRBS这种伪随机码进行高速串行通道的测试,主要是测试误码率的情况。
  2. ibert:GTX辅助IP核,集成式比特误码率测试仪,是Xilinx专门用于具有高速串行接口的 FPGA 芯片的调试和交互式配置工具。放一张测试眼图吧:(1.25Gbps)

眼图中颜色越蓝的地方,BER 值越小,说明这个区域误码率越低,或者几乎没有误码率。颜色越红,表示这个区域误码率越高。一般来讲,这个眼图的眼睛张的越开,说明数据传输信号越好。Link 的速度越低,对应的眼图也会更好,Link 的速度越高,对应的眼图会下降。

 3. 8b/10b

8b/10b编码主要是为了解决直流平衡。也就是0/1数量的平衡。

优点:具备错误检测;

缺点:效率不高,具有20%开销;因此出现了64b/66b编码。

K28.5 :8b/10b编码中常用k28.5来做K码,对应过来就是0xBC,主要用于接收数据对齐。

注:上述介绍均为简单说明,可能不够精确,有个概念就好。

2021-11-22日晚22:35分

狗命要紧,洗洗睡了!明天继续《第二篇-时钟与复位》

Xilinx FPGA平台GTX简易使用教程(一)GTX基础知识相关推荐

  1. Xilinx FPGA平台GTX简易使用教程(汇总篇)

    GTX简易使用教程,先"知其然",慢慢再研究"所以然". 目录 一.GTX必备基础知识 二.时钟篇 三.复位与初始化 四.GTX   IP核配置介绍 五.GTX ...

  2. Xilinx FPGA平台GTX简易使用教程(三)GTX复位与初始化

    所有IP核没有正确工作,原因一半是时钟,一半是复位. 汇总篇: Xilinx FPGA平台GTX简易使用教程(汇总篇) 目录 前言 一.复位与初始化 二.复位模式 三.CPLL复位 四.QPLL复位 ...

  3. Xilinx FPGA平台GTX简易使用教程(四)GTX IP核配置教程

    干货来了,GTX核配置,搬砖全靠它~~ 汇总篇: Xilinx FPGA平台GTX简易使用教程(汇总篇) 目录 前言 一.GTX  IP核配置界面 1.1第一页配置 1.2第二页配置 1.3第三页配置 ...

  4. Xilinx FPGA平台GTX简易使用教程(五)GTX收发测试及示例工程介绍

    GTX IP配置完了,你不得搞个回环测试一番? 汇总篇: Xilinx FPGA平台GTX简易使用教程(汇总篇) 目录 前言 一.示例工程Example Design 1.1 gtx_support模 ...

  5. Xilinx FPGA平台GTX简易使用教程(二)GTX时钟篇

    时钟就是脉搏,能否工作全靠它! 汇总篇: Xilinx FPGA平台GTX简易使用教程(汇总篇) 目录 一.参考时钟 1.1 收发测试能跑起来的基本参考时钟设置 1.2 继续了解时钟,走着 1.3 单 ...

  6. php插入js教程,JavaScript_JavaScript入门教程(2) JS基础知识,在什么地方插入 JavaScript  Ja - phpStudy...

    JavaScript入门教程(2) JS基础知识 在什么地方插入 JavaScript JavaScript 可以出现在 HTML 的任意地方.使用标记,你可以在 HTML 文档的任意地方插入 Jav ...

  7. 全国计算机等级考试二级教程——公共基础知识(2013年版)pdf,全国计算机等级考试2级教程:公共基础知识(2013年版)...

    <全国计算机等级考试2级教程:公共基础知识(2013年版)>是根据教育部考试中心颁布的<全国计算机等级考试二级公共基础知识考试大纲<2913年版)>的要求,在2012年版 ...

  8. excel宏计算机,excel宏教程_电脑基础知识_IT计算机_专业资料.doc

    excel宏教程_电脑基础知识_IT计算机_专业资料 Excel宏教程 一.?? 选中单个单元格 Range("").Select ? 例:Range("C9" ...

  9. 计算机基础outlook知识,outlook配置教程_电脑基础知识_IT计算机_专业资料

    outlook配置教程_电脑基础知识_IT计算机_专业资料 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 Outlook配置教程直接点 ...

最新文章

  1. 解决事件多次绑定,执行多次问题
  2. 什么是数据库视图(view),视图(view)优缺点是什么?
  3. /etc/rsyncd.conf
  4. 直播预告 | AAAI 2022论文解读:融入知识图谱的分子对比学习
  5. MySQL中的datetime与timestamp比较
  6. Django Bootstrap开发笔记01 - 添加简单网页
  7. android 底部导航,Android 底部导航之BottomNavigationBar
  8. linux设置send时间,[转]Socket 的send,recv在windows与linux下的超时设置
  9. 网页版简书界面优化小建议
  10. 在网页子文本框模拟特定的鼠标滚轮_Pyhton爬虫的另类操作,之前有碰到不能爬的网页来看看!...
  11. Linux基于v4l2的视频采集(可用)
  12. 单片机相关知识点,最强科普总结!
  13. linux下RabbitMQ的配置和安装
  14. mysql ctrl+y_mysql操作
  15. uni-app从创建到运行到微信开发者工具
  16. 关于ruoyi验证码无法显示的问题
  17. CorelDraw 13从入门到精通视频教程
  18. *.lwp文件如何打开
  19. 钉短信、钉电话收费套餐
  20. 绝地腾讯手游登入显示服务器满了,绝地求生刺激战场注册已满什么意思 注册已满解决方法详解[多图]...

热门文章

  1. 使用Vlookup筛选数据
  2. 计算机软盘与磁性材料,磁盘,硬盘,软盘分别是什么,有什么联系
  3. 求矩阵的逆的三种方法
  4. Python——矩阵求逆、矩阵的转置
  5. flannel和calcio_Calcio是什么意思
  6. (翻译)闭合需要(Need for closure)
  7. 心灵鸡汤:谦虚、不沉默、有危机感、不断努力
  8. python爬虫打造_Python爬虫与AI结合,打造诗歌接龙程序!
  9. echarts折线图常见配置项 分割线虚线样式 显示y轴符号 设置间隔
  10. [音乐心情]高品位精品音乐:百听不厌的醉人曲调欣赏