xilinx的高速接口构成原理和连接结构及ibert工具的使用-以k7 GTX为例

一、相关简介

Xilinx的高速接口称之为transceivers(高速收发器),这部分的电路是专用电路,供电等都是独立的,根据速率可以分为GTP/GTX/GTH/GTY/GTM等。

Xilinx的高速接口是QUAD为单位的,没一个QUAD由一个时钟COMMON资源(里面有两个用于链路的QPLL),4对收发器channel(好一点的channel中有CPLL)组成一个quad。对应结构如下:

对应到channel的内部结构如下:对于收端和发端均由物理编码子层PCS和主要负责光电转换的PMA层构成,具体二者内部硬件结构如下:

TX channel:

Fpga parallel clock txusrclk2 是 FPGA 用户逻辑使用的时钟;

PCS parallel clock TXUSRCLK 是物理编码层使用的时钟, 这里如果物理编码层和用户层位宽一样, 这样 TXUSRCLK 会和 TXUSRCLK2 时钟频率。

PMA Parallel clock XCLK 是物理媒介层时钟;

TX Serial Clock 是串行时钟, 是端口串行速率的一半, 原因是上升沿和下降沿都发送数据。

RX channel:

FPGA parallel clock RXUSRCLK2 是给 RX 端用户的接收数据的同步时钟。

PCS parallel clock RXUSRCLK 是物理编码层的时钟。

PMA parallel clock XCLK 物理媒介层时钟。

RX serial clock 接收端串行信号时钟。

二、高速接口测试软件IBERT的使用

IBERT 软件主要用于测试高速接口的传输性能。

一般可测试四种场景:

  1. 近端 PCS 回环可以自己收发回环---板内自回环

  2. 近端 PMA 回环可以自己收发回环---板内自回环

  3. 远端 PCS 回环(需要有个数据源连接)---板间

  4. 远端 PMA 回环(需要有个数据源连接)---板间

三、建立ibert测试工程

建立工程,添加ibert ip,对应的ip配置如下:

注意:这个参考时钟的选择要对应专用bank。经查数据手册,参考时钟0对应125MHz。

接收时钟选用外部系统时钟200MHz:

生成对应的example,将sfp_tx_disable引脚置0,下载对应的bitstream,即可观测到回环成功的眼图,外部连接及测试结果图如下。

ibert最方便的地方在于:能够测试不同输入预加重等情况下的最佳眼图,这里测试了81种情况,能够找到最优配置的情况,测试眼图如下:

相关推荐
qq_小单车1 天前
xilinx-DNA
fpga开发·xilinx
Flamingˢ1 天前
FPGA中的嵌入式块存储器RAM:从原理到实现的完整指南
fpga开发
Flamingˢ1 天前
FPGA中的存储器模型:从IP核到ROM的深度解析与应用实例
网络协议·tcp/ip·fpga开发
FPGA小c鸡2 天前
【FPGA深度学习加速】RNN与LSTM硬件加速完全指南:从算法原理到硬件实现
rnn·深度学习·fpga开发
Aaron15882 天前
通信灵敏度计算与雷达灵敏度计算对比分析
网络·人工智能·深度学习·算法·fpga开发·信息与通信·信号处理
博览鸿蒙2 天前
IC 和 FPGA,到底区别在哪?
fpga开发
思尔芯S2C2 天前
FPGA原型验证实战:如何应对外设连接问题
fpga开发·risc-v·soc设计·prototyping·原型验证
Flamingˢ2 天前
FPGA实战:VGA成像原理、时序详解与Verilog控制器设计与验证
fpga开发
FPGA_小田老师2 天前
xilinx原语:OSERDES2(并串转换器)原语详解
fpga开发·lvds·xilinx原语·oserdese·并串转换
Blossom.1182 天前
从数字大脑到物理实体:具身智能时代的大模型微调与部署实战
人工智能·python·深度学习·fpga开发·自然语言处理·矩阵·django