用户工具

站点工具


标准:pcie:start

这是本文档旧的修订版!


PCIe

PCIe标准由PCIe-SIG组织负责,网站https://pcisig.com/,网站上的specification需要成为PCIe-SIG组织成员才能下载,普通用户无法下载。

常用标准如下:

PCI Express® Base Specification Revision 6.0

版本差异

Data Rate
单向
Unit
Interval
Modulation Encoding Effective Data Rate Base Specification Revision 示波器要求
Tx 测试
6.x 5.x 4.x 3.0 2.0 1.0 带宽 最小采样率
2.5GT/s 400ps NRZ 8b/10b 2Gbit/s 6 GHz 20 GSa/s
5.0GT/s 200ps NRZ 8b/10b 4Gbit/s 12 GHz 40 GSa/s
8.0GT/s 125ps NRZ 128b/130b ~8Gbit/s 12 GHz 40 GSa/s
16.0GT/s 62.5ps NRZ 128b/130b ~16Gbit/s 25 GHz 80 GSa/s
32.0GT/s 31.25ps NRZ 128b/130b ~32Gbit/s 50 GHz
33GHz for CEM
80 GSa/s
64.0GT/s 31.25ps PAM4 1b/1b 64Gbit/s 50 GHz
33GHz for CEM
80 GSa/s
参考文献:
1、PCI Express® Base Specification Revision 6.01)
Table 1-1 PCIe Signaling Characteristics
Table 8-6 Data Rate Dependent Transmitter Parameters
8.4.2.1 Procedure for Calibrating a Stressed EH/EW Eye
2、Keysight: D9050PCIC PCIe 5.0 TX Compliance Test Software.pdf

设计要求

Parameters of PCIe® Standard
Parameter Value
Data Clock Frequency PCIe® Gen 1: 1.25 GHz (2.5 Gbps)
PCIe® Gen 2: 2.5 GHz ( 5 Gbps)
PCIe® Gen 3: 4 GHz (8 Gbps)
PCIe® Gen 4: 8 GHz (16 Gbps)
AC Coupling Capacitors AC capacitors required:75 nF–220 nF
Polarity Reversal Allowed
Max Intra-Pair Skew 5 mils
Max Inter-Pair Skew No Inter-pair specification
Trace Impedance PCIe® Gen 1 and 2:100 Ω ±5% differential; 50 Ω ±5% single ended
PCIe® Gen 3 and 4: 85 Ω ±5% differential; 42.5 Ω ±5% single ended
参考文献: TI Layout Guidelines of PCIe® Gen 4.0 Application With the TMUXHS4412 Multiplexer.pdf

测试

PCIe总线除了有Base Spec,还有关于PCIe卡的Spec(又称为CEM Spec,全称为PCI Express Card Electromechanical Specification)。PCIe On-Board连接的测试适用于Base Spec,而带有PCIe卡连接器的则适用CEM Spec2)

测试软件有两种,一种是有PCI标准组织提供的免费软件PCI-SIG SigTest,另一种是各仪器厂家推出的付费软件如Keysight PCI Express software。以PCIe 4.0为例,两者的对比如下,PCI-SIG SigTest免费,但功能少。3)

是德科技(KEYSIGHT)PCIe测试方案介绍见网址PCIe,微信公众号文章如下:
干货:PCIE6.0技术剖析
干货 | PCIe 5.0最新更新及测试挑战

具体的测试操作见如下文档:
Tx测试:D9050PCIC-PCIeGen5-Test-Software-MOI-latest
RX测试:N5991 Receiver Compliance Test Automation Platform
互联测试:How to Ensure Interoperability and Compliance of USB Type-C Cables and Connectors

调试案例

介绍

如下内容大部分来源于Felix的博客文章PCIe扫盲系列博文连载

拓扑结构

结构中有三个角色,RC(Root Complex)、EP(EndPoint)和Swtich,三者之间的关系如下图4)。RC相当于主设备,EP相当于从设备。

Lane

PCIe收发链路可以有多条Lane组成,配置有x1 x2 x4 x8 x16 x32,Lane越多速率越快,如x2的速率是x1的两倍。5)
http://blog.chinaaet.com/justlxy/p/5100053225

每个Lane都有一对Tx差分信号和一对Rx差分信号。
http://blog.chinaaet.com/justlxy/p/5100053225

差分信号的Vpp大约为800mV,单端D+ D-大约为400mV6)

PCIe x1 Lane电路如下图,Rx差分对(PCIE_RX_P PCIE_RX_M)和Tx差分对(PCIE_TX_P PCIE_TX_M)组成了一组Lane。

链路初始化与训练

PCIe总线中的链路初始化与训练(Link Initialization & Training)是一种完全由硬件实现的功能,处于PCIe体系结构中的物理层。整个过程由链路训练状态机(Link Training and Status State Machine,LTSSM)自动完成7)
在系统复位后,会自动进行链路训练,以达成以下目标:位锁定(Bit Lock)、字符锁定(Symbol Lock,Gen1 & Gen2 Only)、块锁定(Block Lock,Gen3 Only)、确定链路宽度(Link Width)、通道位置翻转(Lane Reversal)、信号极性翻转(Polarity Inversion)、确定链路的数据率(Data Rate)和通道对齐(Lane-to-Lane De-skew)等功能。
链路训练状态机LTSSM有11个状态(其中又有多个子状态),分别是Detect(根据RC时间常数来判断Rx端是否存在8))、Polling、Configuration、Recovery,L0、L0s、L1、L2(L3是可选的)、Hot Reset、Loopback和Disable状态。系统进行复位操作(Cold, Hot or Warm Reset)后,会自动进入Detect状态9)
各状态之间的转换如下图所示:

参考时钟

参考时钟REFCLK是一种类LVDS信号(即Low Voltage Swing,Differential Clocks),时钟频率为100MHz,Gen1~4精度为±300ppm,Gen5为±100ppm。注意其和Data的时钟不同,其是固定的100MHz,而Data的时钟则是由CDR(Clock Data Recovery)电路直接从Data波形中恢复出来的,CDR电路需要此参考时钟。10) 11)

REFCLK的电平如下图12)

PCIe参考时钟的三种架构13)
1、Common Refclk (Shared Refclk) Architecture
架构如下图,共用同一个时钟,PCIe spec推荐这种架构。
2、Data Clocked Rx Architecture
参考时钟直接从数据流中恢复出,这种难度大,对CDR的要求高。
3、Separate Refclk Architecture
收发双方用独立的时钟,PCIe spec强烈不推荐,不建议使用。

REFCLK标准参考 PCI Express® Base Specification Revision 6.0 : 8.6 Refclk Specifications

中断

有以下两种14),PCIe RC和对应的EP中断需要能支持相同的中断,否则有些功能会实现不了。
1、INTx15)
最早采用的基于边缘信号的INTx。
2、MSI/MSI-X16) 17)
后续的基于消息信号的MSI/MSI-X。

复位

有如下四种复位18)
1、冷复位
因为主电源断开后重新连接导致的复位。PCIe Spec允许两种实现基本复位的方式。一是直接通过边带信号PERST#(PCI Express Reset);二是不使用边带信号PERST#,PCIe设备在主电源被切断时,自行产生一个复位信号。
2、暖复位
其是可选的,指的是在不关闭主电源的情况下,产生的复位。然而,PCIe Spec并未明确规定暖复位的产生机制,因此,如果产生暖复位完全是由系统设计者决定的。
3、热复位
其是一种In-band 复位,其并不使用边带信号。
如果Switch的Upstream端口收到了热复位,则会将其广播至所有的Downstream端口,并复位其自己。如果PCIe设备的Downstream端口接收到热复位,则只需要复位其自己即可。
当PCIe设备接收到热复位后,LTSSM会进入Recovery and Hot Reset状态,然后返回值Detect状态,并重新开始链路初始化训练。其该PCIe设备的所有状态机,硬件逻辑,端口状态和配置空间中的寄存器(除了Sticky bits)都将被初始化值默认状态。
4、功能复位19)
PCIe总线自V2.0加入了此功能。该功能主要针对的是支持多个功能的PCIe设备(Multi-Fun PCIe Device),可以实现只对特定的Function复位,而其他的Function不受影响。
此功能是可选的。

热插拔

PCIe总线的热插拔主要指的是PCIe卡设备的热插拔,以及相关的实现机制等20)
PCIe卡有两个用于热插拔机制的引脚——PRSNT1#和PRSNT2#。PCIe卡设备上的这两个信号之间是短路的,PCIe插槽的PRSNT1#被固定地连接到地,PRSNT2#则被上拉。且PCIe卡上的这两个信号的金手指长度要比其他的信号的金手指长度要短一点。
如下图所示,当PCIe卡设备未被完全插入插槽时,插槽的PRSNT2#信号由于上拉的作用,将一直处于高点平状态。当PCIe卡设备被完全插入插槽后,插槽上的PRSNT2#信号则会被PCIe卡设备的短路线连接到地,从而使得其变为低电平。换句话说,从插槽的角度看,当PRSNT2#位高电平时,则认为PCIe卡设备未能正确插入或者无PCIe卡设备;当PRSNT2#位低电平时,表明PCIe卡设备被正确地插入插槽中。

评论

请输入您的评论. 可以使用维基语法:
Q B K B C
 
标准/pcie/start.1707041046.txt.gz · 最后更改: 2024/02/04 18:04 由 hwwiki