
PCIE专题
文章平均质量分 81
PCIE是高速serdes的一个典型应用,很多概念在高速接口中是通用的
cy413026
这个作者很懒,什么都没留下…
展开
-
【精讲】PCIe基础篇——BAR(Base Address Register)详解
Bios可以为设备预留大于BAR要求的地址空间,而PCI规范中建议为需要的地址空间少于4KB的设备分配4KB的地址空间。我们发现PCI这种地址自然地要求为设备分配的地址空间要跟BAR定义的大小对齐,因此PCI设备的映射空间始终是跟BAR的大小对齐的。系统中的每个设备中,对地址空间的大小和访问方式可能有不同的需求,例如,一个设备可能有256字节的内部寄存器/存储,应该可以通过IO地址空间访问,而另一个设备可能有16KB的内部寄存器/存储,应该可以通过基于MMIO的设备访问。当该设备确认某一个请求(转载 2024-10-15 22:01:28 · 752 阅读 · 0 评论 -
PCIE基础概念BAR/in/outbound/空间映射/Post/CPLD
我们称pcie endpoint所在的芯片为设备,上位机为主机。pcie可以把设备上的内存空间和寄存器空间映射到Host上。这样Host就可以直接访问设备的内存空间和寄存器空间。空间映射是不会占用host原有的物理内存空间的,比如说Host有24GB的DDR+1GB寄存器空间,pcie设备有128GB的HBM+2G的寄存器空间。那么映射之后host可以看到Host的24GB的DDR+Host的1GB寄存器空间+128GB的设备HBM+2G设备寄存器空间。原创 2024-10-15 21:56:24 · 1707 阅读 · 0 评论 -
PCIE起源及早期
随着频率的提高,PCI并行传输遇到了干扰的问题:高速传输的时候,并行的连线直接干扰异常严重,而且随着频率的提高,干扰(EMI)越来越不可跨越;很难说PCIe的时代还有多久,会不会过几年像ISA,PCI,PCI-X一样消失在历史长河中,但可以确定的是技术发展的洪流不会就此止步。PCI-X 1.0的时钟频率有66MHz/100MHz/133MHz,总线带宽分别为:264MB/s,400MB/s和532MB/s(32位),528MB/s,800MB/s和1064MB/s (64位);中间节点为PCI-PCI桥。转载 2023-09-13 10:59:40 · 895 阅读 · 0 评论 -
PCIe 链路训练学习---------Training Sequence (TS1 TS2序列)
TS1/TS2 = 16 Symbol 1 Symbol = 8/10b编码之后TS 序列 FTS SDP等属于控制Symbol 还有数据SymbolTS 序列是Controller 自己产生的1、TS1序列N_FTS:FTS序列的个数,不同的PCIE链路需要使用不同数目的FTS序列,才能使接收端的PLL锁定接收时钟。2、TS2序列 (标记出与TS1序列的区别)转载 2023-07-20 11:34:17 · 1314 阅读 · 0 评论 -
PCIe扫盲——ReTimer和ReDriver简介
在6GT/s以下的串行通信协议中,8B/10B编码的是绝对的主流,其完美的DC均衡编码,极大地降低了串行收发器(尤其是Receiver)的设计难度。于是各种高效率编码开始出现,如Ethernet 10GBASE-R PCS中用的64B/66B,PCIe Gen3及以上版本用的128B/130B,DisplayPort用的128B/132B,64B/67B。新的高效率编码,借助更加复杂的扰码器,依然可以实现较长时间内的直流均衡,但是不可避免地会带来更长的Run Length(数据流中连续的0或者1)转载 2023-07-18 20:11:25 · 1428 阅读 · 0 评论 -
PCIe 参考时钟架构 (Refclk Architecture)SRNS和SRIS
注意:Common Clock 及 Data Clock 时,考虑到长距离时钟线上的耦合噪声,标准中给定的 Limit 是要比仿真结果小的,比如系统仿真 Gen5 的 Clock Jitter Limit 是0.25 ps RMS,标准中给定的是 0.15 ps RMS。但采用 Seoparate Clock 架构的 PCIe 系统,其收发端各自有一个独立的时钟源,消除了时钟线的耦合噪声,其 Jitter Limit 仍采用仿真结果。PCIe 时钟架构是指 PCIe 系统中收发端设备给定参考时钟的方案。转载 2023-07-18 20:27:30 · 14855 阅读 · 0 评论 -
PCIe PHYMAC--LTSSM详细讲解
Usp进入phase0之后使用在进入phase0之前收到的ts2中的tx preset发送tx信号,并给dsp返回相同preset值的eq ts1,该ts1中需要体现preset值和其对应的cursor值。Dsp进入recovery.rcvcfg并且发送eq ts2(bit7 of symbol6 in ts2,如果不准备做eq则发送普通的ts2),自己使用dsp的preset,并且发送给下游usp的preset让下游使用,然后直接进入eq phase1。开始发送ts,对端也跟着进recovery。转载 2023-07-20 11:38:02 · 2296 阅读 · 0 评论 -
PCIe 均衡技术介绍(概要)
信号从发送端发出,经信道传输,到达接收端。在传输过程中,信号会发生失真,影响接收端对信号的正确判决。影响接收端接收信号质量的因素很多,比如传输速率,电磁干扰,信道质量等等。信号失真越严重,误码率 BER 越高,从而影响通信性能。为了在接收端获取到易于判决的优质信号,可以在发送端、传输链路途中或者接收端信号判决之前对信号进行调理改善,从而减小信号失真对通信性能的影响。这种对信号的调理,称作信号补偿,或称均衡。转载 2023-07-26 18:13:44 · 1326 阅读 · 0 评论 -
PCIE常用缩写及含义
PMCLBCDBIMSG_GENHOT PLUG,在DPDK中选择的中断模式,使用此接口。10.PCIEcontroller和PCIE PHY:PIPE接口用于连接PCIE controller和PCIE PHY, controller用PIPE接口发送并行数给PHY用于并串转换等操作, PHY把串并转换得到的并行数通过PIPE接口送给controller。转载 2023-07-26 18:04:33 · 1800 阅读 · 0 评论 -
PCIe扫盲——物理层逻辑部分基础(一、二、三)
本文转自Felix的专题博客。转载 2023-07-25 19:18:56 · 869 阅读 · 0 评论 -
PCIE的ordered-set(TS/SKP/EIOS/FTS)
由COM开头组成的一系列字符,组成了有序集(Ordered Sets),用于链路管理等特殊功能。注意:不同于数据流的字节拆分到各个lane上,有序集是需要在每条lane上同时发送的。前面我们讲过字节流经过字节拆分后分布到不同的lane上发送。Spec要求数据流对齐,PAD字符就是在不对齐的情况下填充用。如下图X8的链路,红色框线中填充了4个PAD字符。SKP、IDL、FTS、EIE字符都是是某个特殊功能有序集的一部分。COM字符用作有序集的首字符。转载 2023-07-25 19:06:51 · 4907 阅读 · 0 评论 -
PCIE的Beacon与唤醒
PCIe设备除了可以使用WAKE#信号实现唤醒功能外,还可以使用Beacon信号实现唤醒功能。与WAKE#信号实现唤醒功能不同,Beacon使用In-band信号,即差分信号D+和D-实现唤醒功能。当PCIe设备准备退出L2状态(该状态为PCIe设备使用的一种低功耗状态)时,可以使用Beacon信号,提交唤醒请求。PCIE只有在L2状态(PIPE协议里叫P2)才能发送Beacon,此时需要先拉低TxElecIdle,再发送Beacon直到TxElecIdle拉高。原创 2023-07-24 20:27:51 · 4065 阅读 · 0 评论 -
PCIe 每日一问一答
以下转载自一位有毅力的大神。转载 2023-07-24 19:37:56 · 1750 阅读 · 0 评论 -
PCIe 是如何发现对端设备的:Receiver Detect
PCIe 总线是一种端到端的总线,即总线的两端连接了分别连接了一个 PCIe 设备。那么,这两个设备上电之后是怎么发现对面的另一个设备的?Receiver Detect 的原理:通过检测对端设备接收逻辑 Rx 的 DC 共模输入阻抗,来判断接收端是否存在。Device A 的 Tx 只要能够检测到阻抗的差别就可以判断 Device B 是否存在或者是否工作正常。,通过判定对端的接收逻辑 Rx 的状态,来识别对端设备是否存在或者是否正常共工作。是否存在或者是否正常工作的逻辑流程。转载 2023-07-24 15:10:23 · 1159 阅读 · 0 评论 -
pcie RX lane margining
当数据速率从PCIe 3.0s 8GT/s到PCIe 4.0s 16GT/s的数据速率加倍时,性能变化和信号完整性退化变得更大。此外,PCB制造和环境差异会导致信道损耗、串扰和信道不连续的增加,从而增加系统噪声、抖动性能恶化和眼图闭合。PCI Express 4.0规范中提供的lane margining特性将帮助系统设计人员通过使用PCIe 4.0 PHY和控制器解决方案获取lane margin信息,在设计和生产周期的早期评估其设计的性能变化容忍度。原创 2023-07-21 19:39:00 · 4494 阅读 · 0 评论 -
PCIE GT/s与Gbps的关系
为了增加电平转换,PCIe使用了 “8b/10b “编码,即每8个bit(1个字节)被编码成一个10 bit 的符号进行传输,然后在接收端进行解码。而到了PCIE 3.0 标准,编码方案为128b/130b编码,也即每128 bit的数据编码为130 bit的符号进行传输。以每条PCIe 1.0 lane 为例,PCIe是全双工的总线,一个lane由两对差分信号线,即4根信号线组成。为简洁起见,我们一般谈论的PCIE带宽,采用GT/s为单位表示,也即PCIE总线上实际编码后发送的数据速率。转载 2023-07-18 19:24:17 · 3219 阅读 · 0 评论 -
PCIe LTSSM(链路训练状态机Link Training and Status State Machine)
接口速度决定SSD的性能上限。为避免PCIe链路以较低的速率工作导致PCIe SSD性能下降(如PCIe 4.0的SSD以PCIe 1.0速率工作),自PCIe 2.0开始,PCIe SSD在初始化过程中,会在链路训练(Link Training)阶段进行链路信号质量、速率、链路宽度的调节,它由链路训练状态机(Link Training and Status State Machine,以下简称LTSSM)自动完成。在首次进入L0后,如果PCIe两端设备均支持更高的速率,则会进入Recovery状态。转载 2023-07-18 20:47:38 · 1442 阅读 · 0 评论 -
PCIe扫盲_弹性缓存(EBuff/Elastic Buffer/ CTC Buffer)
不过,Mindshare的建议是将弹性缓存放置于8b/10b解码器之前的。当本地时钟域的时钟(Local Clock)的速度比数据流通过CDR解析出的时钟(Recovered Clock)的时钟要快时,且弹性缓存即将被读空之前,可以向SKP Ordered Set中插入1~2个SKP。当本地时钟域的时钟(Local Clock)的速度比数据流通过CDR解析出的时钟(Recovered Clock)的时钟要慢时,且弹性缓存即将溢出之前,可以从SKP Ordered Set中移除1~2个SKP。转载 2023-07-18 19:34:02 · 909 阅读 · 0 评论