PCIE 3.0中使用的动态均衡概念

时间:2023-02-08 04:13:03

一、PCIE 3.0中使用的动态均衡概念

因为PCIE 3.0信号的速率可以达到8Gb/s,而且链路通道走线也可能会很长,这可能会导致高速信号衰减过大,在接收端无法得到张开的眼图。因此在PCIE 3.0的Tx和Rx端均使用了均衡设置,以补偿长链路时高速信号的衰减。

但由于实际产品中PCIE 3.0信号的传输链路的长度是不一致的,有时候长,有时候短,此时可能只需要Tx发送端的均衡即可实现良好的补偿,而不需要Rx端的均衡;或者在Tx发送端与Rx接收端使用相应的均衡等级组合才可能得到最优的眼图。而Tx端有11级Preset均衡设置,Rx端也有具有行为特性(即相关的参数设置会随着情况的不同而不同)的CTLE、DFE等多种均衡算法和设置以及CDR时钟恢复,这使得针对不同的链路情况设置不同的均衡设置变得更加复杂。

PCIE 3.0中使用了动态均衡(DynamIC Equalization)的方法来自动实现和配置得到最优的均衡组合以满足不同时候的需要。即系统会自动根据链路的情况分析高速信号在接收端的性能(眼图等),通过分析结果来指导Tx发送端和Rx接收端如何设置均衡参数。如下图所示,在PCIE 3.0的发送端和接收端器件工作初始化过程中,系统会根据对链路的分析情况,要求Rx接收端发送TxEQ Preset设置请求给Tx发送端要求其进行相应的Preset均衡设置,Tx发送端也会发送RxEQ均衡设置请求给接收端要求其进行相应的RxEQ设置,通过这样一个初始化过程获得一个最优的均衡设置,从而在接收端得到最优化的高速信号(眼图)。

PCIE 3.0中使用的动态均衡概念

PCIE 3.0的动态均衡初始化过程包括如下4个阶段:

Phase 0:下行端口使用8b/10b编码方式传达发送端和接收端预设值(preset)给上行端口,这些值使用TS2(Train Sequence2)训练序列来传达。当信号速率切换到8GT/s以后,上行端口发出包含有其收到的预设(Preset)值的TS1训练序列。

Phase 1:通过交流TS1序列,带有预设(Preset)的8GT/s初始化链接成功(BER<=10e-4)。

Phase 2:下行端口器件通过TS1训练序列发送均衡请求来调整上行端口器件的输出设置,直到获得最优设置为止(BER<=10e-12)。

Phase 3:上行端口器件通过TS1训练序列发送均衡(均衡系数/预设)请求来调整下行端口器件的输出设置,直到获得最优设置为止(BER<=10e-12)。

PCIE 3.0中使用的动态均衡概念

二、PCIE 3.0中使用的动态均衡的优缺点

PCIE 3.0中使用动态均衡方法能够针对不同的情形自动配置并优化发送端和接收端的均衡设置,补偿信号的传输通道对高速信号带来的影响(如损耗),以在接收端获得最好的信号质量。

但是动态均衡优化过程需要花费时间,有时候可能会导致系统工作或运行超时等错误。因此,PCI Express® Architecture PHY Test Specification Revision 3.0 规范的2.3, 2.4, 2.7, 2.10 及2.11等章节规定了对动态均衡链接(link equalization)的测试,规定动态均衡链接需要在特定的时间内(小于500ns)完成。

三、PCIE 3.0中动态均衡的测试挑战

由于动态均衡测试需要测试仪器能够具有协议能力,即仪器可以与被测件进行协议握手通信。当前很多测试方案中的误码仪都不具备协议能力。只有力科公司(TeLEDyne LeCroy)的PeRT3 Phoenix具有基于PCIE 3.0的协议通信能力。因此,目前只有力科公司(Teledyne LeCroy)能够实现规范要求的这项测试,也是PCI-SIG协会推荐的测试方法,如下图所示为摘自PCI-SIG协会网站上对于PCIE 3.0的Tx/Rx Link Equalization测试项目所推荐的测试设备:

PCIE 3.0中使用的动态均衡概念

四、力科针对PCIE 3.0的Tx/Rx Link Equalization测试方案

1、Tx Link Equalization测试

(1)测试设备:PeRT3 Phoenix(具有协议使能的接收端发送端容限测试仪)及示波器SDA8Zi

(2)测试目的:被测件的Tx端是否能够应答协议级别的均衡预设请求,是否能够在规定的时间内完成响应。

(3)测试连接示意图如下:

如图中所描述,示波器将配合自带的测量参数和力科示波器独有的基于PCIE 3.0的协议分析软件(Protosync协议分析软件)实现Tx Link Equalization的测量。

2、Rx Link Equalization测试

(1)测试设备:PeRT3 Phoenix(具有协议使能的接收端发送端容限测试仪)

(2)测试目的:被测件的Rx端是否能够应答协议级别的均衡预设请求,是否能够在规定的时间内完成响应。

(3)测试连接示意图如下:

PCIE 3.0中使用的动态均衡概念

PCIE 3.0中使用的动态均衡概念

安装相关步骤完成设置,能够进入loopback 进行误码测试,即表示Rx Link Equalization 测试满足要求。具体步骤请参考:LeCroy_CEM3_0_Link_EQ_Test_Procedure_v0_9pdf

PCIE 3.0中使用的动态均衡概念的更多相关文章

  1. Odoo8&period;0中允许用户动态调整TreeView栏位宽度

    现有的Odoo8.0中TreeView的栏位宽度是固定的,不可以手动调整,通过安装第三方插件后,可以实现手工动态调整. 下载模块安装即可.http://download.csdn.net/detail ...

  2. ASP&period;NET Core 3&period;0中使用动态控制器路由

    原文:Dynamic controller routing in ASP.NET Core 3.0 作者:Filip W 译文:https://www.cnblogs.com/lwqlun/p/114 ...

  3. &period;net core 3&period;0中动态卸载程序集

    动态加载程序集在一些插件式的应用中非常常见,.net core 2.0中可以通过AssemblyLoadContext中提供程序集的动态加载功能,但取不支持卸载.现在,在.net core 3.0中提 ...

  4. C&num; 4&period;0中的动态类型和动态编程

    # 4.0的主题就是动态编程(Dynamic Programming).虽然C#仍然是一种静态语言,但是对象的意义开始变得越来越“动态”.它们的结构和行为无法通过静态类型来捕获,或者至少编译器在编译程 ...

  5. Linux中keepalived&plus;LVS负载均衡的搭建测试

    1.1 LVS简介       LVS(Linux Virtual Server),也就是Linux虚拟服务器, 是一个*软件项目.使用LVS技术要达到的目标是:通过LVS提供的负载均衡技术和Lin ...

  6. LVS集群中的IP负载均衡技术

    LVS集群中的IP负载均衡技术 章文嵩 (wensong@linux-vs.org) 转自LVS官方参考资料 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集 ...

  7. 非常郁闷的 &period;NET中程序集的动态加载

    记载这篇文章的原因是我自己遇到了动态加载程序集的问题,而困扰了一天之久. 最终看到了这篇博客:http://www.cnblogs.com/brucebi/archive/2013/05/22/Ass ...

  8. Hadoop学习笔记—13&period;分布式集群中节点的动态添加与下架

    开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如何动态(不关机且正在运行的情况下)地添加一个Hadoop节点与 ...

  9. Android6&period;0中的权限

    Android6.0相比之前的Android版本有一个很大的不同点,就是动态的获取权限.之前我们需要什么权限只需要在Manifest文件中声明即可,在6.0中,又新增了运行时权限的动态检测. Andr ...

随机推荐

  1. 20145224&amp&semi;20145238《信息安全系统设计基础》实验五

    20145224陈颢文20145238荆玉茗 <信息安全系统设计基础>第五次实验报告 课程:信息安全系统设计基础 班级: 1452 姓名:荆玉茗 陈颢文 学号:20145238 20145 ...

  2. Magicodes&period;WeiChat——使用AntiXssAttribute阻止XSS(跨站脚本攻击)攻击

    跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web页面里插 ...

  3. C语言sizeof

    一.关于sizeof 1.它是C的关键字.是一个运算符,不是函数: 2.一般用法为sizeof 变量或sizeof(数据类型):后边这种写法会让人误认为是函数,但这种写法是为了防止和C中类型修饰符(s ...

  4. BestCoder Round &num;66 &lpar;div&period;2&rpar; hdu5592

    GTW likes math Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  5. &lbrack;译&rsqb; ASP&period;NET 生命周期 – ASP&period;NET 上下文对象(五)

    ASP.NET 上下文对象 ASP.NET 提供了一系列对象用来给当前请求,将要返回到客户端的响应,以及 Web 应用本身提供上下文信息.间接的,这些上下文对象也可以用来回去核心 ASP.NET 框架 ...

  6. hihocode 第九十二周 数论一&&num;183&semi;Miller-Rabin质数测试

    题目链接 检测n是否为素数,数据范围为2 <= n <= 10^18; 思路:Miller_Rabin素数检测模板题,原理:在Fetmat定理的基础之上,再利用二次探测定理: 对于任意的正 ...

  7. java&lowbar;web学习&lpar;3&rpar;XML基础

    XML 技术概述 XML是一种通用的数据交换格式.为实现计算机之间的文档交换而设计的文档内容编写规范,语法与HTML相似;XML的作用:统一信息的结构,实现不同系统之间的相互通信;目前许多系统的配置文 ...

  8. OC类的介绍

    类的本质 类的本质其实也是一个对象(类对象) 类对象 类对象再程序运行时一直存在 类对象是一种数据结构,存储类的基本信息:类大小,类名称,类的版本以及消息与函数的映射表等 类对象所保存的信息在程序编译 ...

  9. RHEL 6&period;9 udev 将lv绑定raw devices

    环境 RHEL6|RHEL7,LVM2,RAW device 用途 使用LVM的lv逻辑卷绑定裸设备 1. 编辑 /etc/udev/rules.d/60-raw.rules 添加如下: ACTION ...

  10. shell脚本中的set -e和set -o pipefail

    工作中经常在shell脚本中看到set的这两个用法,但就像生活中的很多事情,习惯导致忽视,直到出现问题才引起关注. 1. set -eset命令的-e参数,linux自带的说明如下:"Exi ...