UltraScale+GTY手动眼动扫描-Xilinx-AMD社区-FPGA CPLD-ChipDebug

UltraScale+GTY手动眼动扫描

描述

UltraScale+GTY允许实时、非破坏性的眼部扫描。用户可以同时接收数据并检查均衡的信号眼睛扩展,以获得完整的误码率和信号裕度控制,而不遗漏一个比特。

所需的大部分信息可在(UG57 8)UltraScale和UltraScale+GTY、RX裕度分析中找到。

这个答案记录将指导您一步一步的简单操作手动眼部扫描。

解决方案

眼动扫描功能已经在IBERT中实现,其中GUI有助于眼睛扫描的简单定制,并且Ibt自动驱动眼睛扫描。

当眼睛扫描过程在IBERT外部实施时,例如与用户的应用程序并行时,我们称之为“手动眼动扫描”。

因为眼睛扫描引擎是由映射在DRP空间中的一些属性控制的,所以代码应该执行以下操作:

  • 注意DRP的读取、修改和写入操作
  • 在眼睛内移动偏移采样器
  • 驱动眼动扫描FSM
  • 分析结果(即计算偏移采样器BER)

眼睛扫描所需的端口被列在(UG57 8)中。请参阅RX保证金分析章节。

手动眼动扫描可以变得非常复杂,并且可以做到以下几点:

  • 扫满眼睛或部分
  • 连续跑或一击
  • 根据偏移采样器位置改变误码率目标
  • 评估信号质量并随时间监控其变化

眼睛扫描的原子访问总是通过简单的通道来进行。有很多选择可以得到相同的结果;可能更灵活的是让微处理器处理眼部扫描。

一个非常快的眼睛扫描可以完全开发HDL。(赛灵思解答64098)是用ILA实现的简单的眼睛扫描测量的一个很好的例子。

DATARATE & 10GbPS

DATARATE>10GbPs

ESHORZZY偏移量〔11〕


表1 -每个数据的ESHORZZORY偏移量[11 ]设置

超高+GTY DRP地址:

有关UpjCAL+GTY眼扫描的DRP地址可以在(UG57 8)中找到,RX裕度分析下表C-2:GDY4-通道原始的DRP图。

流程图和逐步UltraScale+GTY眼动扫描:

一旦收发器被正确地设置和工作,基本的眼睛扫描通过FSM的测量环路。

如果偏移采样器计数错误,但不存在数据错误,则可能需要“重新校准序列”。

为了检测这种情况,我们可以在织物中实现PRBS检查器(请参阅XAPP84)。

FSM默认启动状态正在等待。

通过改变ESH控件[1:0](信号ARM和Run,分别),从等待状态,运行启动BER测量循环(左),ARM启动诊断循环(右)。在这个应答记录中只测量了测量回路。

FSM自动启动错误计数和接收样本计数。计数器连续更新,直到两个计数器中的一个达到饱和点。在这一点上,FSM到达状态结束。

我们总是通过读取ESSCAN控件状态来访问FSM实际状态。

在结束或等待状态下,读取计数器并计算BER是可能的。

开始眼部扫描:

步骤1

根据表1设置ESHORZZORY偏移量〔11〕。

步骤2:

重置GT:GT应该启动和运行。

例如,您配置发射机和接收机均衡器,运行复位序列,等待重置完成,并检查缓冲区是否溢出。

在这个例子中使用了LPM模式。对于DFE模式,需要两次眼部扫描,一个是阳性的UT征,一个是阴性的UT征象。

步骤3:

准备好扫描:

ESH控制[5:0]=600亿

EsHyMySkySnayEn= 1B1实现眼部扫描

EsSeReTraceEng1B1允许错误检测:当且仅当对应的偏移数据样本与恢复的数据样本不一致时,SDATA总线的每一位都是1。

根据BER目标(我们可以将它设置为非常小的初始值:即5B00 100)。

步骤4:

在运行错误计数之前,我们需要告诉眼睛扫描引擎测量什么。这在用户指南,在眼部扫描架构章节中得到了很好的描述。

通常,统计眼图使用以下内容:

用于80位数据的EsSsDATAYMase= { 80 {1B1},80 {1B0}}

EsQualQualMask= { 160 {1B1}}

步骤5:

将垂直和水平偏移设置为0。

RxAyEsCANVS VSnEngdidir=1B0(相当于7系列器件中的ESVIETTH偏移量[7)]

RxAyEsCANVS VSuutuSt符号=1B0(相当于7系列器件中的ESVIETTH偏移量[8)]

RxAyEsCANIVS代码=7B000 000(相当于7系列器件中的EsSwittTyPosie[6:0])

RxayEysCANVS范围=2B00(这是用于眼睛扫描的比例因子)

ESHORZZORPHON[10:0]=11亿

步骤6:

通过使FSM重置并决定测量循环来运行扫描:

设置ESX控件=6B00 0 01

步骤7:

检查FSM是否处于结束状态。

读取ESX控件状态应等于3B010

步骤8:

返回FSM等待状态。

设置ESX控件[5:0]=600亿

步骤9

如果垂直和水平偏移是零,我们预期偏移采样器和数据采样器总是匹配。

因此,在等待状态的FSM中,如果错误计数器显示出错误,则意味着眼睛扫描需要重新校准。请执行重新排列顺序。

如果错误计数器中没有错误,请跳转到步骤10。

重新排列顺序:

这个序列的目的是在眼睛扫描时钟和数据时钟之间获得正确的同步。

在错误同步的情况下,错误计数器将饱和,并且眼睛扫描将显示闭合的眼睛。如果眼睛完全闭合但不存在数据错误,则应该执行序列。

重新排列顺序如下:

EsHORZZORYSEX= X880
YeSCAN复位=1

EsHORZZORPHORY=X800
YeSCAN复位=0

回到步骤6。

完成眼部扫描。

步骤10:

设置新的垂直和水平偏移:请正确设置下列参数:

RXY-YESCANN-VSX码

EsHORZZORKOPEN[10:0]

步骤11:

通过使FSM重置并决定测量环路来运行眼睛扫描:

设置ESX控件=6B00 0 01

步骤12:

检查FSM是否处于结束状态。

读取ESX控件的状态应该等于3B010。

步骤13:

返回FSM等待状态并再次循环。

设置ESX控件[5:0]=600亿

当FSM处于结束或等待状态时,我们可以读取错误、样本,并计算BER。

从步骤10重复一个新的偏移位置。


请登录后发表评论

    没有回复内容