PCIe扫盲——ReTimer和ReDriver简介

2023-11-23 19:59

本文主要是介绍PCIe扫盲——ReTimer和ReDriver简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

发一个上海的岗位(可接受实习生)_Felix@SH的博客-CSDN博客

自2019年下半年,PCIe Gen5正式发布以来,其单个Lane/Channel速率已达32Gbps,传统的FR4电路板支持这么高的速率是完全不可能的事情。即使面对的是Gen4带来的16Gbps,FR4仍在瑟瑟发抖……

在6GT/s以下的串行通信协议中,8B/10B编码的是绝对的主流,其完美的DC均衡编码,极大地降低了串行收发器(尤其是Receiver)的设计难度。但是8B/10B的浪费20%带宽的缺点,限制了其在6GT/s以上速率串行协议中的进一步演进……于是各种高效率编码开始出现,如Ethernet 10GBASE-R PCS中用的64B/66B,PCIe Gen3及以上版本用的128B/130B,DisplayPort用的128B/132B,64B/67B……等等

1.jpg

新的高效率编码,借助更加复杂的扰码器,依然可以实现较长时间内的直流均衡,但是不可避免地会带来更长的Run Length(数据流中连续的0或者1)。这对串行接收器(Receiver)提出了更高的要求,往往也需要更加复杂的CDR设计,匹配以更加复杂的Tx/Rx EQ手段。

然而,相比于每提高1Gbps速率所需要的硬件成本(更低损耗的板材,价格是传统FR4的数倍),使用高效率编码带来的成本显然更低。

2.jpg

以PCIe应用来说,PCIe Gen3 仍可以较为容易地在普通的FR4上实现。但是Gen4则需要比FR4更低损耗的板材,这也是为什么支持PCIe Gen4的PC主板要比不支持Gen4的贵很多的原因之一。然而,即使是使用更贵(低损耗)的板材,长距离地传输16Gbps的信号仍然是一个非常大的挑战。在PCIe Gen4 Base Spec,还首次提出了信号调节的概念。有两种信号调节功能的器件:

  • ReTimer,

  • ReDriver

3.jpg

ReDriver功能相对简单,其通过Rx端的CTLE(基本原理一般就是一个高通滤波器),和Tx端的驱动器,实现对损耗的补偿,进而使得眼图的窗口变大,让整个PCIe通道看起来有更小的衰减。由于ReDriver有没涉及到任何协议相关的内容,所以其两端的PCIe设备是无法感知到ReDriver器件的存在的。

ReTimer不仅会在Rx端实现CTLE和DFE,还会在Tx端实现相应的EQ功能。这使得ReTimer器件能够分别于其两端的器件实现EQ Training,如上图所示。

因此ReTimer能够实现比ReDriver更好的降低通道物理损耗的效果。然而,复杂的ReTimer会增加更多的Latency。以PCIe Gen4应用为例,ReTimer带来的Latency可达64ns,而ReDriver往往只有100ps。

下面是几个使用ReTimer/ReDriver的例子:

4.jpg

5.jpg

6.jpg

7.jpg

注:本文主要参考资料来自TI,原文网址:TI 高精度实验室 - PCIe-PCIe、SAS 和 SATA IC - 德州仪器(TI)官方视频课程培训

注:原文最早发表于本人的ChinaAET博客(Felix-电子技术应用-AET-中国科技核心期刊-最丰富的电子设计资源平台)

这篇关于PCIe扫盲——ReTimer和ReDriver简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/420372

相关文章

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

业务协同平台--简介

一、使用场景         1.多个系统统一在业务协同平台定义协同策略,由业务协同平台代替人工完成一系列的单据录入         2.同时业务协同平台将执行任务推送给pda、pad等执行终端,通知各人员、设备进行作业执行         3.作业过程中,可设置完成时间预警、作业节点通知,时刻了解作业进程         4.做完再给你做过程分析,给出优化建议         就问你这一套下

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

容器编排平台Kubernetes简介

目录 什么是K8s 为什么需要K8s 什么是容器(Contianer) K8s能做什么? K8s的架构原理  控制平面(Control plane)         kube-apiserver         etcd         kube-scheduler         kube-controller-manager         cloud-controlle

【Tools】AutoML简介

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 AutoML(自动机器学习)是一种使用机器学习技术来自动化机器学习任务的方法。在大模型中的AutoML是指在大型数据集上使用自动化机器学习技术进行模型训练和优化。

SaaS、PaaS、IaaS简介

云计算、云服务、云平台……现在“云”已成了一个家喻户晓的概念,但PaaS, IaaS 和SaaS的区别估计还没有那么多的人分得清,下面就分别向大家普及一下它们的基本概念: SaaS 软件即服务 SaaS是Software-as-a-Service的简称,意思是软件即服务。随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。 它是一种通过Internet提供

LIBSVM简介

LIBSVM简介 支持向量机所涉及到的数学知识对一般的化学研究者来说是比较难的,自己编程实现该算法难度就更大了。但是现在的网络资源非常发达,而且国际上的科学研究者把他们的研究成果已经放在网络上,免费提供给用于研究目的,这样方便大多数的研究者,不必要花费大量的时间理解SVM算法的深奥数学原理和计算机程序设计。目前有关SVM计算的相关软件有很多,如LIBSVM、mySVM、SVMLight等,这些

urllib与requests爬虫简介

urllib与requests爬虫简介 – 潘登同学的爬虫笔记 文章目录 urllib与requests爬虫简介 -- 潘登同学的爬虫笔记第一个爬虫程序 urllib的基本使用Request对象的使用urllib发送get请求实战-喜马拉雅网站 urllib发送post请求 动态页面获取数据请求 SSL证书验证伪装自己的爬虫-请求头 urllib的底层原理伪装自己的爬虫-设置代理爬虫coo

新一代车载(E/E)架构下的中央计算载体---HPC软件架构简介

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节能减排。 无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、焦虑、毁掉你本就不多的热情和定力。 时间不知不觉中,快要来到夏末秋初。一年又过去了一大半,成

AI学习指南深度学习篇-带动量的随机梯度下降法简介

AI学习指南深度学习篇 - 带动量的随机梯度下降法简介 引言 在深度学习的广阔领域中,优化算法扮演着至关重要的角色。它们不仅决定了模型训练的效率,还直接影响到模型的最终表现之一。随着神经网络模型的不断深化和复杂化,传统的优化算法在许多领域逐渐暴露出其不足之处。带动量的随机梯度下降法(Momentum SGD)应运而生,并被广泛应用于各类深度学习模型中。 在本篇文章中,我们将深入探讨带动量的随