KC705开发板——MGT IBERT测试记录

这篇具有很好参考价值的文章主要介绍了KC705开发板——MGT IBERT测试记录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文介绍使用KC705开发板进行MGT的IBERT测试。

KC705开发板

KC705开发板的图片如下图所示。FPGA芯片型号为XC7K325T-2FFG900C。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

MGT

MGT是 Multi-Gigabit Transceiver的缩写,是Multi-Gigabit Serializer/Deserializer (SERDES)的别称。MGT包含GTP、GTX、GTH、GTZ、GTY、GTM。在Kintex-7系列FPGA只有GTX。
根据UG810中介绍,KC705上引出的16个GTX收发器分别是

  1. Eight of the GTX transceivers are wired to the PCI Express® x8 endpoint edge connector (P1) fingers
  2. Four of the GTX transceivers are wired to the FMC HPC connector (J22)
  3. One GTX is wired to the FMC LPC connector (J2)
  4. One GTX is wired to SMA connectors (RX: J17, J18 TX: J19, J20)
  5. One GTX is wired to the SFP/SFP+ Module connector (P5)
  6. One GTX is used for the SGMII connection to the Ethernet PHY (U37)

7系列FPGA中的GTX收发器分为四个通道,称为Quad。某Quad的参考时钟可以来源于上一个Quad或下一个Quad。KC705板上有4个GTX Quad,具体连接如下表所示:

Transceiver Bank Associated Net Name Connections
MGT_BANK_115 GTXE2_CHANNEL_X0Y0 PCIe7
GTXE2_CHANNEL_X0Y1 PCIe6
GTXE2_CHANNEL_X0Y2 PCIe5
GTXE2_CHANNEL_X0Y3 PCIe4
MGTREFCLK0 N/C
MGTREFCLK1 PCIe_CLK
MGT_BANK_116 GTXE2_CHANNEL_X0Y4 PCIe3
GTXE2_CHANNEL_X0Y5 PCIe2
GTXE2_CHANNEL_X0Y6 PCIe1
GTXE2_CHANNEL_X0Y7 PCIe0
MGTREFCLK0 Si5326
MGTREFCLK1 FMC LPC GBT_CLK0
MGT_BANK_117 GTXE2_CHANNEL_X0Y8 SMA
GTXE2_CHANNEL_X0Y9 SGMII
GTXE2_CHANNEL_X0Y10 SFP/SFP+
GTXE2_CHANNEL_X0Y11 FMC LPC DP0
MGTREFCLK0 SGMII_CLK
MGTREFCLK1 SMA_CLK
MGT_BANK_118 GTXE2_CHANNEL_X0Y12 FMC HPC DP0
GTXE2_CHANNEL_X0Y13 FMC HPC DP1
GTXE2_CHANNEL_X0Y14 FMC HPC DP2
GTXE2_CHANNEL_X0Y15 FMC HPC DP3
MGTREFCLK0 FMC HPC GBT_CLK0
MGTREFCLK1 FMC HPC GBT_CLK1

时钟

KC705板载的时钟源有以下几个

1. System Clock Source

系统时钟源为2.5V LVDS差分200 MHz振荡器,SYSCLK_P——AD12,SYSCLK_N——AD11。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

2. Programmable User Clock Source

可编程用户时钟源为低抖动3.3V差分振荡器Si570,USER_CLOCK_P——K28, USER_CLOCK_N——K29。上电默认输出频率为156.250 MHz,可通过I2C接口在10MHz~810 MHz范围内调整输出频率。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

3. User SMA Clock Input

连接关系:
USER_SMA_CLOCK_P ——L25,USER_SMA_CLOCK_N——K25。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

4. GTX SMA Clock Input

连接关系:
SMA_MGT_REFCLK_P——J8,SMA_REFCLK_N——J7,其连接至Bank 117 MGT参考时钟1。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

5. Jitter Attenuated Clock

连接关系:
REC_CLOCK_C_P——W27,REC_CLOCK_C_N——W28。
SI5326_OUT_C_P——L8,SI5326_OUT_C_N——L7,连接至Bank 116 MGT参考时钟0。
SI5326_RST——SI5326_RST_LS——AE20。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

6. SGMII GTX Transceiver Clock

ICS844021I为一个倍频系数固定为5的芯片,故在此处其输出为125 MHz LVDS差分时钟。
连接关系:SGMIICLK_Q0_P——G8,SGMIICLK_Q0_N——G7,连接至Bank 117 MGT参考时钟0。

KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

IBERT IP核

Protocol Definition

KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
在Protocol为Custom1时,线速率LineRate、数据位宽DataWidth、参考时钟频率Refclk可自行指定。Quad Count取决于待测试的GTX是否位于同一个Bank。勾选Quad PLL则该Quad内的GTX共用一个QPLL,不勾选则不同GTX使用不同的CPLL。QPLL和CPLL的关系示意图如下。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

Protocol Selection

KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

根据待测试的GT所位于的Bank号设置Protocol Selected。参考时钟Refclk可以来自于本Quad或上一个Quad或下一个Quad的参考时钟输入。在前面勾选Quad PLL的情况下,TXUSERCLK Source可以任意设置。

Clock Settings

KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
系统时钟System Clock可以选择前面所设置的GT参考时钟,也可以选择外部参考时钟。

生成IP核示例工程

KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
右击IP核后,点击Open IP Example Design生成工程。

注意事项

生成IP核示例工程后,查看综合后的Schematic和I/O Ports确认。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
此时修改该工程中的IBERT IP核的GT参考时钟和系统时钟时,引脚分配是不会发生改变的。

SMA回环测试

根据前面的介绍,接下来进行KC705的GT测试。KC705上的J17和J66、J19和J20分别连接了Quad 117的GT的接收通道和发送通道。使用SMA连接线将J17与J19相连,J66与J20相连。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
生成并下载Bitstream,点击Auto-detect links,即可看到测试结果。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
链路测试所用的回环方式一共有4种,分别是
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
该4种方式在通信链路中对应的位置示意图如下。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
点击Serial I/O Scans中的Create Scan创建扫描。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
扫描后得到如下结果。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

SFP+回环测试

使用如图所示的回环器,插到KC705开发板上的SFP/SFP+连接器上。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
Bank 117上GT收发器的连接关系如下表。

Transceiver Bank Associated Net Name Connections
MGT_BANK_117 GTXE2_CHANNEL_X0Y8 SMA
GTXE2_CHANNEL_X0Y9 SGMII
GTXE2_CHANNEL_X0Y10 SFP/SFP+
GTXE2_CHANNEL_X0Y11 FMC LPC DP0
MGTREFCLK0 SGMII_CLK
MGTREFCLK1 SMA_CLK

注意到SPF/SFP+所连接的GT收发器是X0Y10,参考时钟输入1来自于外部时钟输入。
此时IBERT IP核参考时钟,仍可选择SMA回环测试中的MGTREFCLK0 117。为了再做一个MGT参考时钟的实验,将参考时钟设为MGTREFCLK1 117。时钟产生方法是从其他博主那里学到的。
即是将SI570默认输出的156.250MHz的差分时钟输入(引脚为K28和K29);
通过USER_SMA_CLOCK(引脚为L25和K25,SMA头为J11和J12)输出;
然后通过SMA连接线接到SMA_MGT_REFCLK(Bank 117的参考时钟1,引脚为J8和J7,SMA头为J16和J15)。
最后的硬件连接关系如下图所示。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

此时需要更改IBERT IP核中GTX的参考时钟频率和来源,同时该SFP+回环器最高支持10 Gbps,于是我们也将线速率设置为10 Gbps。具体设置如下图所示。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
接下来,重新生成IBERT IP核示例工程。
在示例工程的顶层文件中,添加如下代码。

input USER_CLOCK_P;
input USER_CLOCK_N;
output USER_SMA_CLOCK_P;
output USER_SMA_CLOCK_N;

wire user_clock;
IBUFGDS u_user_clock
  (
    .I(USER_CLOCK_P),
    .IB(USER_CLOCK_N),
    .O(user_clock)
  );

wire user_clock_bufg;
BUFG u_BUFG_sysclk (
     .O(user_clock_bufg),
     .I(user_clock)
);

OBUFDS u_OBUFDS_sysclk (
  .O (USER_SMA_CLOCK_P),      
  .OB(USER_SMA_CLOCK_N), 
  .I (user_clock_bufg)  
);
  

同时在xdc文件中,添加时钟约束和引脚约束。

create_clock -name user_clock -period 6.4 [get_ports USER_CLOCK_P]
create_clock -name user_sma_clock -period 6.4 [get_ports USER_SMA_CLOCK_P]
set_property PACKAGE_PIN K28 [get_ports USER_CLOCK_P]
set_property IOSTANDARD LVDS_25 [get_ports USER_CLOCK_P]
set_property PACKAGE_PIN L25 [get_ports USER_SMA_CLOCK_P]
set_property IOSTANDARD LVDS_25 [get_ports USER_SMA_CLOCK_P]

综合后得到额外的RTL电路为。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT

生成并下载Bitstream,链路正常锁定,得到链路测试结果如下。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT
眼图扫描结果如下。
KC705开发板——MGT IBERT测试记录,FPGA,笔记,Vivado,KC705,IBERT,MGT文章来源地址https://www.toymoban.com/news/detail-695157.html

参考资料

  1. kc705_Schematic_xtp132_rev1_1.pdf
  2. xtp200-kc705-ibert-c-2014-3.pdf
  3. ug810_KC705_Eval_Bd.pdf
  4. ug811_ChipScopeUsingIBERTwithAnalyzer.pdf

到了这里,关于KC705开发板——MGT IBERT测试记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA开发环境安装VIVADO

     BASYS3开发板使用的是 Xilinx 厂商的 Artix-7 FPGA 芯片,所以要使用 Xilinx 提供的配套开发软件 Vivado ,我使用的是 Vivado 18.3 。Vivado 18.3 的版本相对来说是较为稳定的,所以推荐给大家这个版本当然 读者也可安装更新的版本,安装步骤都是大同小异的。 第一步: 找到 Vivado 2018.

    2024年02月09日
    浏览(90)
  • FPGA 学习笔记:Vivado 工程管理技巧

    当前使用 Xilinx 的 FPGA,所以需要熟悉 Xilinx FPGA 的 开发利器 Vivado 的工程管理方法 这里初步列举一些实际 Xilinx FPGA 开发基于 Vivado 的项目使用到的工程的管理技巧 做过嵌入式软件或者其他软件开发的工程技术人员,都会想到使用代码管理工具,如 SVN 、Git 等对代码进行管理

    2024年02月09日
    浏览(38)
  • FPGA开发必备软件——Vivado,安装教程

    FPGA开发必备软件——Vivado,安装教程 如果你想开始FPGA的开发学习,那么Vivado是一个不可或缺的软件。它是Xilinx推出的一款针对FPGA、SoC和ASIC开发的综合设计环境。在这里,我们详细介绍如何下载、安装和配置Vivado软件。 在Xilinx官网上注册一个账号。注册时需要提供自己的邮

    2024年02月13日
    浏览(47)
  • FPGA入门学习笔记(十三)Vivado实现按键消抖

    四种状态 按键未按下:静止状态呈高电平; 按下过程中:抖动状态呈高低电平; 按键已按下:静止状态呈低电平; 释放过程中:抖动状态呈高低电平。 按键消抖思路 :区别于单片机使用20ms延时判断电平正负,FPGA中采用电平保持计时,若时间长度超过20ms则认为发生了一次

    2024年02月04日
    浏览(71)
  • Xilinx FPGA开发环境vivado使用流程

    第一步:点击Add Sources按钮 第二步:选择add or create design sources按钮,即添加设计文件 第三步:选择create file 文件新建完成后: 此时可以定义I/O端口,我们选择自己在程序中编写。 第四步:在编辑器中编写verilog程序 XDC文件里主要是完成管脚的约束,时钟的约束,以及组的约

    2024年02月03日
    浏览(63)
  • 【FPGA】Vivado开发流程(基于2018.3版本)

    基本流程:①设计定义 ②设计输入 ③分析综合 ④功能仿真 ⑤布局布线 ⑥分析性能   双击 Vivado图标即可启动 Vivado 软件。 ①Quick Start 组包含有 Create Project(创建工程) Open Project(打开工程)OpenExample Project(打开实例工程)。 ②Tasks 组包含有 Manage IP(管理 IP) Open Hardw

    2024年02月14日
    浏览(41)
  • FPGA 学习笔记:Vivado 2018.2 MicroBlaze 启动 SDK

    Vivado 2018.2,配置好 MicroBlaze Uartlite等Block Design后,生成了 bin、bin文件,此时烧写到FPGA板子上,发现没有任何动静,所以需要 SDK的支持 这里使用的Vivado 2018.2,最新的 Vivado版本,如 Vivado 2020.2,启动的SDK 是 :Vitis,启动方式稍微有点不同,后面补充 Vivado 2020.2版本的操作方法

    2024年02月12日
    浏览(52)
  • FPGA vivado IP核学习笔记——单端口RAM

    1. 新建IP 在IP Catalog中找到Block Memory Generator 2. 基本配置 ①在 Component Name 位置可以修改IP名字 ② Interface Type 选择接口类型,有Native(常规)和AXI4两种,AXI4常用于软核控制FPGA或ZYNQ中PS端控制FPGA时使用 ③ Generate address interface with 31 bits ,将地址深度固定在32bit ④ Memory Type : 有一

    2024年04月29日
    浏览(40)
  • Vivado中的COE文件:FPGA开发指南

    COE文件是Vivado软件中用于初始化存储器内容的一种常见文件格式。在FPGA开发过程中,我们经常需要对存储器进行初始化,以存储初始数据或者程序代码。COE文件提供了一种简单而灵活的方式来定义存储器的初始内容。本文将介绍COE文件的使用方法,并提供相应的示例代码。

    2024年02月06日
    浏览(56)
  • Vivado | FPGA开发工具(Xilinx系列芯片)

    官网下载地址 最详细的Vivado安装教程 Vivado的安装以及使用_入门

    2024年02月12日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包