【知识分享】PCIe5.0 TxRx 电气设计参数汇总

目录

0 引言

1 参考时钟--Refclk

2 发射端通道设计

3 发送均衡技术

4 接收端通道设计

5 接收均衡技术

6 结语

7 参考文献

8 扩展阅读


0 引言

        PCI Express Base Specification 5.0的电气规范中,关键技术要点如下:

                1. 支持2.5、5.0、8.0、16.0和32.0 GT/s的数据速率;

                2. 支持公共的和分立的参考时钟体系结构;

                3. 支持时钟扩频技术(SSC);

                4. 支持低电压摆幅(Voltage Swing)的低功耗模式;

                5. 在8.0、16.0和32.0 GT/s时的眼图闭合下,支持自适应发射机均衡和参考接收机均衡。

        本文就上述的技术要点进行了串联梳理,旨在增加相关技术指标的可读性,并使之更好地展现给设计者。

1 参考时钟--Refclk

        公共(Common Refclk--CC)和分立(Independent Refclk--IR)参考时钟的架构示意如下图所示,公共参考时钟架构中,系统中由一个统一的时钟源驱动发射和接收端,而分立参考时钟架构中,发射和接收端由不同的时钟源所驱动,并且每个时钟源可以独立进行相关抖动参数的定义。

        针对Refclk的测试台架配置如下图所示,台架对信号传输通道有明确的插入损耗、阻抗控制和负载属性要求,用于模拟可能发生在PCI Express设备的引脚上的最坏情况下的信号衰减情况,并使用相位噪声分析仪测量参考时钟抖动相位,用示波器测量参考时钟抖动参数,所有测试都需要在50欧姆设备端接负载下进行,以避免不必要的反射对结果产生影响。

        下表列出了Refclk需要关注的DC&AC电气设计参数规格,基于上述台架的测试结果需要满足这些技术要求;

        除此之外,如下表所示,还有一些额外的与具体数据传输速率相关的技术参数,对时钟设计要求严苛的场景可以进行详细的设计参考。

        另外,对于支持SSC的Refclk必须满足低频范围内的额外抖动限制,其定义为从30 kHz到500 kHz的连续分段线性图,如下图所示,未经滤波的Refclk相位抖动必须在该频率范围内低于限制值。

2 发射端通道设计

        与参考时钟的通道设计复用,Tx和Rx的回波损耗(RL)测量值是相同的,其测量是在各自的break-out通道的末端进行的,并要求break-out通道对RL的贡献被去嵌入,从而将RL参数与Tx或Rx引脚相关联。

        图中Breakout和Replica通道应设计为在奈奎斯特频率的插入损耗小于2 dB(最大信号速率为16.0 GT/s时,奈奎斯特频率为8GHz),并且从TP2或TP3测量时返回损耗大于15 dB,这可能需要使用低损耗介质、宽信号走线和通孔背钻等技术,因为,只有性能更好的通道设计,去嵌入的效果才可能更优。

        RL测量时采用的参考阻抗为50欧姆,如下图所示定义了 Tx和Rx端口去嵌入后的差模和共模的RL模板,两种模式都被定义在50 MHz到16.0 GHz的频率范围内进行测量。

3 发送均衡技术

        在发送端速率为2.5、5.0 GT/s时,仅支持数据去加重功能,而在发送端速率为8.0、16.0和32.0 GT/s时,可支持具备三个抽头的FIR滤波器的均衡器结构。

        上述均衡器结构的规范参数因子配置如下表所示,以此为基础对发送信号进行调理。

        具体测试时,需要根据不同的波形判定其处于预加重还是去加重,因为均衡器调节的效果发生在信号边沿处,因此,可以通过边沿峰值的位置来判定所使用的均衡方式,由上表可知:

        当Pre-shoot>0dB时,即预加重模式,意味着均衡器结构图中的Vc>Vb,信号波形可能如下图所示:

        当De-emphasis<0dB时,即去加重模式,意味着均衡器结构图中的Vb<Va,信号波形可能如下图所示:

        由上述Va、Vb和Vc之间的关系可知,不同的因子组合会导致作为稳态信号电平Vb的变化,当Pre-shoot和De-emphasis非零时,使之不能达到信号的最大电压摆幅Vd,因此,规范对极限电压摆幅(Voltage Swing)给出了限制要求,虽然降低电压摆幅可以一定程度地降低功耗,但是也必须在最小限制要求的范围内,否则,信号可能会因为过度调制导致无法正常传输和接收。

        根据前面均衡器结构图的参数描述,当完成Pre-shoot和De-emphasis的配置,即可得到Boost的参数,这三个参数组成一个矩阵单元,如下图所示,该矩阵单元有三个项对应预加重(PS)、去加重(DE)和boost,蓝色和橙色单元分别代表了电压摆动降额的最小和最大区域,信号调理需要在此区域以内(两个虚线之间的区域)进行参数的选择。

4 接收端通道设计

        所有接收器的信号质量都是通过施加在校准通道上的应力眼睛来测试验证的,该校准通道模拟在实际通道中遇到的接近最坏情况的损失特性,对于2.5 GT/s和5.0 GT/s,恢复的眼图相当于Rx引脚处;对于8.0 GT/s、16.0 GT/s和32.0 GT/s,相当于应用Rx均衡后的裸芯片端口(Die)处。

        一个标准的测试台架如下图所示,信号源连接到校准通道后,在TP2处进行应力眼图的校准,校准合格后,再将信号源应用于DUT,TP1~TP2包含了信号源和DUT之间的所有组件,从而捕获了由于电缆和Replica/Breakout通道造成的总体插入损失中的所有非理想特性,而发射端到TP1的所有直流和交流损耗被假设为0,否则必须进行去嵌入,换言之,测试只允许计入TP3之后的通道损耗。

        一个校准通道的插入损耗指标通过一对高频和低频的IL极限值来定义,校准通道需要包括TP3后的所有物理损失,如下图所示为不同速率下的IL限制要求。

        通道的特性阻抗要求为:2.5、5.0和8.0 GT/s速率下,通道要求差分100 欧姆和单端50 欧姆,16.0 GT/s和32.0 GT/s速率下,通道要求差分85 欧姆和单端42.5 欧姆,阻抗公差应保持在±5%或更高。

        值得注意的是,插入损耗的定义虽然没有覆盖1GHz以下的频段,但是校准通道的DC阻抗之和(D+/-)不能超过7.5欧姆,另外,对于16.0 GT/s和32.0 GT/s,插入损失范围FHIGH-IL-MIN到FHIGH-IL-MAX只是名义上的定义,实际中,最好保证覆盖范围从“FHIGH-IL-MIN减去2 dB”到“FHIGH-IL-MAX加上3 dB”。

        校准通道的回波损耗定义如下,分为16和32 GT/s两个版本:

        请注意,校准通道是用于模拟真实信道参数的,因此,现实中,工程师可以拿这些参数对其互连通道进行设计约束,使用时,请注意与前文中的Tx、Rx端的回波损耗参数进行区分。

5 接收均衡技术

        在2.5和5.0 GT/s速率下,并不需要额外定义Rx端的信号后处理,有Tx端的均衡技术已经足够使用; 在8.0、16.0、32.0 GT/s速率下,TP2的应力眼图通常是打不开的,此时就需要通过使用接收均衡器进行优化,该均衡器可以实现CTLE和1-tap(8 GT/s)、2-tap(16 GT/s)、3-tap(32 GT/s)DFFE功能。

        8.0和16.0 GT/s的Rx均衡定义了一个具有固定低频和高频极点的一阶CTLE,如图所示,对于8.0 GT/s速率,ADC可在-6至-12 dB范围内调节,调节步长为1.0 dB,16.0 GT/s的参数基本相同,除了将ωp2系数改为16 GHz。

        32.0 GT/s的Rx均衡定义了一个具有固定极点的二阶CTLE,如图所示,ADC可在-5至-15 dB范围内调节,调节步长为1.0 dB。

        CTLE往往需要与DFE搭配使用,对于8.0 GT/s和16.0GT/s,d1的限制为±30 mV;对于16.0GT/s,d2的限制为±20 mV; 对于32.0GT/s,d2和d3的限制为±20 mV。

        当完成上述的信号后处理配置,既可以进行应力眼图的测试,规范中根据不同速率,明确给出了眼图模板的测试指标,需要注意的是,这些眼高和眼宽的指标都是在信号误码率BER10^-12等级下获取的。

6 结语

        实际的PCIe规范文档中,电气指标的技术内容很多,上述内容仅是关键部分的汇总,另外,本人的理解难免有所偏差,因此,感兴趣的工程师,需要仔细阅读文档的内容,以获取更多对设计有帮助的指标要求。

7 参考文献

        [1] PCI Express Base Specification Revision 5.0, May 2019;

8 扩展阅读

        [1] SerDes系列之DFE均衡技术_serdes ffe-CSDN博客

        [2] SerDes系列之CTLE均衡技术_serdes ctle-CSDN博客

        [3] 关于USB 3.1电气参数的探讨-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/5160.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 的初认识(一)

好久不见兄弟们&#xff01;之前更新完 C 语言的内容之后呢&#xff0c;我是做了一个“ 短暂 ”的休息昂&#xff0c;当然我自己的学习是没有停歇的&#xff0c;只是在更新博客这上面休息了一下&#xff0c;主要还是想让自己先把这部分的知识掌握透彻了之后&#xff0c;再来为大…

2024年美赛C题评委文章及O奖论文解读 | AI工具如何影响数学建模?从评委和O奖论文出发-O奖论文做对了什么?

模型假设仅仅是简单陈述吗&#xff1f;允许AI的使用是否降低了比赛难度&#xff1f;还在依赖机器学习的模型吗&#xff1f;处理题目的方法有哪些&#xff1f;O奖论文的优点在哪里&#xff1f; 本文调研了当年赛题的评委文章和O奖论文&#xff0c;这些问题都会在文章中一一解答…

C语言练习(17)

两个乒乓球队进行比赛&#xff0c;各出3人。甲队为A、B、C 3人&#xff0c;乙队为X、Y、Z 3人&#xff0c;并抽签决定比赛名单。有人向队员打听比赛的名单&#xff0c;A说他不和X比&#xff0c;C说他不和X、Z比&#xff0c;请编程序找出3对选手的对阵名单。 #include <stdi…

【回忆迷宫——处理方法+DFS】

题目 代码 #include <bits/stdc.h> using namespace std; const int N 250; int g[N][N]; bool vis[N][N]; int dx[4] {0, 0, -1, 1}; int dy[4] {-1, 1, 0, 0}; int nx 999, ny 999, mx, my; int x 101, y 101; //0墙 (1空地 2远方) bool jud(int x, int y) {if…

Flowable 审核功能封装

文章目录 引言I 查询当前用户需要审核的数据列表整体逻辑根据组获取任务数据根据审核人获取任务数据II 进行审核整体逻辑III 审核历史查询IV 流程图查看流程进度思路根据任务 ID 获取任务进度流程图引言 流程引擎功能封装 : 审核列表数据查询进行审核的整体逻辑:获取任务 Id,…

Java-数据结构-二叉树习题(2)

第一题、平衡二叉树 ① 暴力求解法 &#x1f4da; 思路提示&#xff1a; 该题要求我们判断给定的二叉树是否为"平衡二叉树"。 平衡二叉树指&#xff1a;该树所有节点的左右子树的高度相差不超过 1。 也就是说需要我们会求二叉树的高&#xff0c;并且要对节点内所…

github汉化

本文主要讲述了github如何汉化的方法。 目录 问题描述汉化步骤1.打开github&#xff0c;搜索github-chinese2.打开项目&#xff0c;打开README.md3.下载安装脚本管理器3.1 在README.md中往下滑动&#xff0c;找到浏览器与脚本管理器3.2 选择浏览器对应的脚本管理器3.2.1 点击去…

学习ASP.NET Core的身份认证(基于JwtBearer的身份认证8)

为进一步测试通过请求头传递token进行身份验证&#xff0c;在main.htm中增加layui的数据表格组件&#xff0c;并调用后台服务分页显示数据&#xff0c;后台分页查询数据接口如下所示&#xff08;测试时&#xff0c;直接将数据写死到代码中&#xff0c;没有查询数据库&#xff0…

Linux系统 C/C++编程基础——使用make工具和Makefile实现自动编译

ℹ️大家好&#xff0c;我是练小杰&#xff0c;今天周二了&#xff0c;距离除夕只有&#xff16;天了&#xff0c;新的一年就快到了&#x1f606; 本文是有关Linux C/C编程的make和Makefile实现自动编译相关知识点&#xff0c;后续会不断添加相关内容 ~~ 回顾:【Emacs编辑器、G…

68,[8] BUUCTF WEB [RoarCTF 2019]Simple Upload(未写完)

<?php // 声明命名空间&#xff0c;遵循 PSR-4 自动加载规范&#xff0c;命名空间为 Home\Controller namespace Home\Controller;// 导入 Think\Controller 类&#xff0c;以便扩展该类 use Think\Controller;// 定义 IndexController 类&#xff0c;继承自 Think\Control…

可以自己部署的微博 Mastodon

Mastodon&#xff08;又称乳齿象、长毛象或万象&#xff09;是一个自由开源的去中心化的分布式微博客社交网络。它的用户界面和操作方式跟推特&#xff08;Twitter&#xff09;类似&#xff0c;但整个网路并非由单一机构运作&#xff0c;而是以多个由不同营运者独立运作的伺服器…

机器学习-核函数(Kernel Function)

核函数&#xff08;Kernel Function&#xff09;是一种数学函数&#xff0c;主要用于将数据映射到一个更高维的特征空间&#xff0c;以便于在这个新特征空间中更容易找到数据的结构或模式。核函数的主要作用是在不需要显式计算高维特征空间的情况下&#xff0c;通过内积操作来实…

AQS公平锁与非公平锁之源码解析

AQS加锁逻辑 ReentrantLock.lock public void lock() {sync.acquire(1);}AbstractQueuedSynchronizer#acquire public final void acquire(int arg) {if (!tryAcquire(arg) &&acquireQueued(addWaiter(Node.EXCLUSIVE), arg))selfInterrupt();}addWaiter就是将节点加入…

软件授权产品介绍

CodeMeter技术可提供高达40亿个授权模块&#xff0c;其中6000个可存放于硬件加密狗CmDongle中&#xff0c;其他可存放于软授权CmActLicense中按需激活&#xff0c;CodeMeter云授权CmCloud也可以无任何限制的为“云中软件”提供灵活的授权控制。 CodeMeter安全时钟模块采用了独…

Excel 技巧17 - 如何计算倒计时,并添加该倒计时的数据条(★)

本文讲如何计算倒计时&#xff0c;并添加该倒计时的数据条。 1&#xff0c;如何计算倒计时 这里也要用公式 D3 - TODAY() 显示为下面这个样子的 然后右键该单元格&#xff0c;选 设置单元格格式 然后点 常规 这样就能显示出还书倒计时的日数了。 下拉适用到其他单元格。 2&a…

Vue3初学之Element Plus Dialog对话框,Message组件,MessageBox组件

Dialog的使用&#xff1a; 控制弹窗的显示和隐藏 <template><div><el-button click"dialogVisible true">打开弹窗</el-button><el-dialogv-model"dialogVisible"title"提示"width"30%":before-close&qu…

C++ 类与对象(上)

在C中&#xff0c;在原来C语言基础上引入了类的概念。与C语言最大的不同就是&#xff1a;C可以在类中定义函数。由类声明的变量&#xff0c;称为对象。 1.类的定义 1.1类定义的格式 class为定义类的关键字&#xff0c;Stack为类的名字&#xff0c;{}中为类的主体&#xff0c;…

什么样的问题适合用递归

递归是一种通过函数调用自身来解决问题的方法。递归适用于那些可以被分解为相似子问题的问题&#xff0c;即原问题可以通过解决一个或多个更小规模的同类问题来解决。递归通常需要满足以下两个条件&#xff1a; 递归基&#xff08;Base Case&#xff09;&#xff1a;问题的最简…

Qt基础项目篇——Qt版Word字处理软件

一、核心功能 本软件为多文档型程序&#xff0c;界面是标准的 Windows 主从窗口 拥有&#xff1a;主菜单、工具栏、文档显示区 和 状态栏。 所要实现的东西&#xff0c;均在下图了。 开发该软件&#xff0c;主要分为下面三个阶段 1&#xff09;界面设计开发 多窗口 MDI 程序…

【物联网】keil仿真环境设置 keilV5可以适用ARM7

文章目录 一、ARM指令模拟器环境搭建1. keil软件2. Legacy Support 二、Keil仿真环境设置1. 创建一个项目2. 编译器介绍(1)arm-none-eabi-gcc(2)arm-none-linux-gnueabi-gcc(3)arm-eabi-gcc(4)grmcc(5)aarch64-linux-gnu-gcc 3. 安装编译器(1)设置调试 一、ARM指令模拟器环境搭…