测试现象:(单板A板载7A series,单板B板载7K series)

1. 单板A板载2个type C接口,通过线缆自环,GTP near-end loopback, OK.

2. 2块单板A,使用线缆通过type C接口互联,GTP far-end loopback, OK.

3. 单板B板载2个type C接口,通过线缆自环,GTX near-end loopback, OK.

4. 2块单板B,使用线缆通过type C接口互联,GTX far-end loopback, OK.

5. 单板A和单板B,使用线缆通过type C接口互联,SerDes far-end loopback, NO link,无法正常通信测试.

现象分析:

1. 通过现象5,怀疑是插损过大导致信号无法识别。但是现象2/4又排除了插损的猜测。

2. 相同的单板能互通,不同的单板则无法互通,怀疑板间差异导致的。而理论上,7A series与7K series确定可以SerDes互通,与竞争对手的SerDes都能互通,所以不存在不同系列的SerDes互通上的疑问。

3. 重点排查SerDes与type C的PN线序是否颠倒,时钟是否正常等等硬件参数连接是否正常。

ROOT CAUSE:

单板A GTP的refclk与单板B GTX的refclk有差异,不是预期的相同时钟,从而导致了实际SerDes LineRate不一致,无法正常通信。

预期refclk为125Mhz,时钟源由时钟芯片输出,该时钟芯片由板上ARM芯片配置(RK3566)。实际发现单板A的refclk与预期的频偏相差较大,最大相差5M,即恶劣时,refclk=120M。具体原因时ARM配置的问题,ARM操作系统的负载差异,会导致配置程序的结果与预期不符,细节未知。

(频偏:是指实际时钟频率相差较大,target frequence = 125M, 实际输出120M 或者 130M;

抖动: jitter,是指实际时钟频率以中心频点来回抖动,正态分布)

改进措施:

如下截图,IBERT设置时,System Clock不建议选择与SerDes REFCLK相同的时钟源

原因:

1. 假设target refclk = 125Mhz, LineRate = 5Gbps。如果实际输入的refclk频偏大,130Mhz,实际的LineRate就超过5Gpbs。

2. 如果System Clock选择与SerDes REFCLK相同的时钟源,则相当于自己测试自己。IBERT GUI界面虽然仍然显示5Gpbs速率,但是实际不准确,调试时无法及时发现。

3. 如果System Clock选择独立的External时钟源,则使用另外一个晶振时钟来监测SerDes功能。IBERT GUI界面显示数据为独立晶振时钟的检测结果,若因为SerDes时钟不准确导致的问题,方便及时发现问题。

Accurate SerDes LineRate的更多相关文章

  1. myeclipse中导入js报如下错误Syntax error on token "Invalid Regular Expression Options", no accurate correc

    今天在使用bootstrap的时候引入的js文件出现错误Syntax error on token "Invalid Regular Expression Options", no ...

  2. 12 Tips for Accurate Project Estimating

    Projects typically involve many dynamic aspects, yet they're often constrained by finite conditions. ...

  3. 目标检测--Rich feature hierarchies for accurate object detection and semantic segmentation(CVPR 2014)

    Rich feature hierarchies for accurate object detection and semantic segmentation 作者: Ross Girshick J ...

  4. 什么是SerDes,serializer/deserializer?

    序列化器与反序列化器(SerDes,serializer/deserializer)是一种进行串行数据和并行数据相互转换的收发集成电路(IC).发送器部分是一个串行到并行的转换器,接收器部分是一个并行 ...

  5. 【转载】xilinx 高速收发器Serdes深入研究

    此篇文章深入浅出介绍了关于高速串行收发器的几个重要概念和注意事项,为方便知识点复习总结和后续查阅特此转载,原文标题及链接为:xilinx 高速收发器Serdes深入研究 - CSDN博客   http ...

  6. 论文阅读(Weilin Huang——【arXiv2016】Accurate Text Localization in Natural Image with Cascaded Convolutional Text Network)

    Weilin Huang——[arXiv2016]Accurate Text Localization in Natural Image with Cascaded Convolutional Tex ...

  7. 论文笔记:ATOM: Accurate Tracking by Overlap Maximization

    ATOM: Accurate Tracking by Overlap Maximization  2019-03-12 23:48:42  Paper:https://arxiv.org/pdf/18 ...

  8. 【设计经验】4、SERDES关键技术总结

    一.SERDES介绍 随着大数据的兴起以及信息技术的快速发展,数据传输对总线带宽的要求越来越高,并行传输技术的发展受到了时序同步困难.信号偏移严重,抗干扰能力弱以及设计复杂度高等一系列问题的阻碍.与并 ...

  9. 论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation

    在上计算机视觉这门课的时候,老师曾经留过一个作业:识别一张 A4 纸上的手写数字.按照传统的做法,这种手写体或者验证码识别的项目,都是按照定位+分割+识别的套路.但凡上网搜一下,就能找到一堆识别的教程 ...

  10. SERDES关键技术总结

    转自https://www.cnblogs.com/liujinggang/p/10125727.html 一.SERDES介绍 随着大数据的兴起以及信息技术的快速发展,数据传输对总线带宽的要求越来越 ...

随机推荐

  1. mysql 不包含某个字符

    转载网址: https://blog.csdn.net/mp624183768/article/details/121696040?utm_medium=distribute.pc_relevant. ...

  2. java的数据和表达式

    一.基本语法元素 1.空白和注释及语句 (1)空白: 换行符.回车符.空格键.水平定位键(Tab) 编译器会忽略掉多余的空白 作用:增加程序的易读性 (2)注释:主要作用是将代码解释其功能和作用,在编 ...

  3. Google colab复现openpose+st-gcn的心路历程

    Google colab复现openpose+st-gcn的心路历程: 因为本人的大致研究方向为动作识别,加上自己的笔记本比较菜鸡,没有牛皮的显卡,所以采用了google的colab.在网上查了三天, ...

  4. 如何规避MyBatis使用过程中带来的全表更新风险

    作者:京东零售 贾玉西 一.前言 程序员A: MyBatis用过吧? 程序员B: 用过 程序员A: 好巧,我也用过,那你遇到过什么风险没?比如全表数据被更新或者删除了. 程序员B: 咔,还没遇到过,这 ...

  5. 【VSC】ERROR:GDB exited unexpectedly.

    [VSC]ERROR:GDB exited unexpectedly. 记录一次调试所遇bug的查找历程 问题描述 ERROR: GDB exited unexpectedly. Debugging ...

  6. Redis使用ZSET实现消息队列使用总结一

    转载请注明出处: 目录 1.zset为什么可以做消息队列 2.zset实现消息队列的步骤 3.使用jedis实现消息队列示例 4.+inf与-inf 5.redis使用list与zset做消息队列有什 ...

  7. 我们为什么要阅读webpack源码

    相信很多人都有这个疑问,为什么要阅读源码,仅仅只是一个打包工具,会用不就行了,一些配置项在官网,或者谷歌查一查不就好了吗,诚然在大部分的时候是这样的,但这样在深入时也会遇到以下几种问题. webpac ...

  8. java多线程---4 线程同步介绍及不安全案例说明

    java多线程---4 线程同步介绍及不安全案例说明 线程同步 并发: 同一个对象被多个线程同时操作. 处理多线程问题时,多个线程访问同一个对象,并且某些线程还想修改这个对象,这时候我们就需要线程同步 ...

  9. Android系统服务DropBoxManagerService详解与实践应用

    作者:vivo 互联网客户端团队- Ma Lian 借助系统DropBoxManagerService对于系统文件目录dropbox管理的设计,了解其文件管理的规则.运行机制.读写机制.管控机制,根据 ...

  10. GET 和 POST 到底有什么区别?

    HTTP最早被用来做浏览器与服务器之间交互HTML和表单的通讯协议:后来又被被广泛的扩充到接口格式的定义上.所以在讨论GET和POST区别的时候,需要现确定下到底是浏览器使用的GET/POST还是用H ...