【高清演示】Gen4/5服务器也能抓Gen6?一块E1.S SSD的64 GT/s协议分析现场实录
2026-09-09 14:04:51

我们昨天在办公室使用一颗业内领先的PCIe 6.0 x4 E1.S SSD拍摄了SerialTek PCIe 6.0协议分析仪抓取数据的高清视频用于日常交流使用,感兴趣的可以直接点击下面的高清视频观看。

由于实验室当时缺乏PCIe 5.0的服务器,所以我们临时找了一台5~6年前购买的SuperMicro H12SSL-I的基于PCIe 4.0 CPU的服务器,插入一张SerialCables公司的PCIe 6.0 Switch卡作为RC端连接上述的PCIe 6.0 SSD从而建链到PCIe 6.0速度,然后使用SerialTek PCIe协议分析仪抓取加电启动过程解码分析展示。

由于未来企业级Gen6 SSD主要通过连接到PCIe 6.0 switch和CPU进行通讯,同时,当前市场上短期内也无法购买到昂贵的PCIe 6.0服务器,所以对于如果使用Switch搭建PCIe 6.0的各类插卡、SSD的测试环境就成为了必然。对于这部分感兴趣的朋友,可以查找我们Saniffer公众号从去年初开始拍摄的大量的文章和高清视频,下面简单列举几个供参考。

【专题】全球最全面的 PCIe 6.0/CXL 3.0 测试工具方案探讨汇总

【高清视频】5个高清视频告诉你:PCIe 6.0 SSD测试环境搭建转接卡/线与隐藏风险全解析

【高清视频】PCIe 6.0主机卡+Gen6 E3.S转接卡初次使用演示

//* 上面最后一篇文章的第一段包含了我们针对PCIe Gen6 switch卡之前拍摄的很多视频;我们之前做过很多期PCIe 6.0主机卡(也叫switch卡)的高清演示视频,感兴趣的可以查询一下Saniffer公众号往期文章,或者直接点击下面的链接,包括Gen6 Switch + SwitchSwitch + CX-8(一)(二)Switch + Quarch故障注入卡 + SwitchSwitch + 0.3米延长线 + Switch卡等等;另外,我们也拍摄了如何使用Gen6 switch卡连接Gen6 SSD的几期视频,包括Gen6 switch + MCIO x8 转接2*EDSFF female connectorGen6 switch + MCIO x8 to 2* MCIO x4 + Gen6 8盘位盘柜,等等。

【业界进展】PCIe 6.0全球最新进展(截至2026.08.08)

【高清演示】国内首次拿到Gen6 E1.S SSD演示SerialTek PCIe 6.0协议分析仪抓包

为了方便工程师观看,我们针对本期视频并处理添加了中文字幕供大家参考。如果想看高清视频建议要在电脑上打开上面的视频链接进行观看!创作不易,欢迎分享到朋友圈或者与朋友讨论!如果想搬运我们的视频请告知我们。

开场:真正值得看的,不只是右上角那个“Gen6 x4”

PCIe Gen6 测试现场最容易出现的一种错觉,是看到设备成功 Link Up,就觉得工作已经完成了一半。事实上,“能连上”只是起点。工程师真正需要回答的是:链路训练经历了什么?Root Complex 与 SSD 之间交换了哪些 TLP 和 NVMe 命令?是否出现过 Recovery、重试或纠错?PERST#等边带信号与协议事件能否对齐?I/O 起来以后,功耗又在什么时候发生变化?

这次现场演示使用 SerialTek Kodiak PCIe 6.0 协议分析平台,对一块业内厂商的 PCIe Gen6 x4 E1.S 企业级 NVMe SSD 进行在线抓包。演示从桌面上的实际连线讲起,再进入分析仪前面板、Web 界面和已经捕获的 Trace,最后展示同一套模块化方案如何切换到 E3.S、E3.L 等 EDSFF 形态。下面按照视频时间顺序,把 18 分 38 秒里的关键步骤完整复盘一遍。

第一部分:先把 Gen6 链路真正搭起来

00:00—01:45 Gen4 服务器为什么也能构造 Gen6 测试段

画面右侧是一台 Supermicro PCIe Gen4 服务器,左侧是 SerialTek Kodiak 协议分析仪。服务器 CPU 本身只能提供 Gen4,因此 CPU Root Port 与 Switch 上行口之间最终协商为 Gen4 x16;但插在服务器槽位中的 Serial Cables Gen6 Switch 卡,可以让其设备侧下行端口与 Gen6 SSD 独立协商到 64 GT/s、x4。

这里最关键的概念是:PCIe Switch 两侧不是一根连续的“同速总线”,而是由多个独立的点到点 Link 组成。上行端口与 CPU 协商一次,下行端口与 SSD 再协商一次,所以“Gen4 上行 + Gen6 下行”完全可以同时存在。它不会把 Gen4 CPU 变成 Gen6 CPU,但可以让研发团队在原生 Gen6 服务器尚不方便获得时,先对设备侧 Gen6 链路、协议行为和兼容性开展工作。Serial Cables 的官方说明也明确提到,其 Gen6 Host Card 可在上一代主机上提供 Switch 下游的完整 Gen6 连接。

这套环境的逻辑拓扑可以概括为:Gen4 Server/CPU → Gen6 Switch 上行口 → Gen6 Switch 下行口 → MCIO 转 EDSFF 线缆 → Gen6 Interposer/Pod → Gen6 x4 E1.S SSD。分析仪观察的重点,是 Switch 下行口到 SSD 这一段真正运行在 Gen6 x4 的链路。

还要特别注意,“64 GT/s”表示 PCIe 6.0 每 Lane 的标称传输速率,不等于 SSD 已经跑到 64 GB/s。按 PCI-SIG 公布的带宽口径,x4 链路的理论名义带宽约为单向 32 GB/s、双向合计 64 GB/s;实际 NVMe 有效数据吞吐还要扣除 FLIT、FEC/CRC、TLP 及命令层开销,并受到 SSD 控制器、NAND、队列深度、I/O 大小和主机软件的共同限制。

01:45—04:37 从 MCIO x8 拆成两路 EDSFF x4,0.5 米线缆只是链路的一部分

接下来镜头转向 Switch 卡。卡上除了顶部的标准插槽,可用于 GPU、网卡、AI 加速卡等 x16 Endpoint 原型验证外,还提供多组 MCIO 高速连接器。本次从其中一路 Gen6 MCIO x8 端口引出,通过型号为 MCIO6-8X-EDSFFX2-1X4 的分支线缆,转换成两路 EDSFF x4;现场使用的是 0.5 米版本,其中一路接入被测 E1.S SSD。

一根 0.5 米线缆能够在这套实际环境中稳定协商到 64 GT/s,当然值得关注;但它不应被理解成“只验证了这根线”。从 Switch 芯片封装、板上走线、MCIO 连接器、线缆、Interposer PCB 到 SSD 金手指,整个通道共同决定信号裕量。若要判断某根 Cable、某个连接器或某块板卡是否满足规范,仍需结合规范化的电气一致性、BER、抖动与裕量测试。现场 Link Up 和无明显协议错误,是很好的功能性证据,却不是完整的物理层认证。

视频还强调了两个很实用、也最容易在实验室里出问题的细节。第一,EDSFF 连接方向必须按照 A1 位置和箭头标识确认,不能凭外形硬插;在接线或更换 Adapter Wing 前,最好先断电并执行 ESD 防护。第二,这根高速线缆承载的是 PCIe 差分信号、参考时钟及相关边带,并不会自动从 Switch 卡给 SSD 提供完整工作电源,因此现场通过线缆上的 SATA 电源接口给被测盘供电。电源连接必须使用对应厂商定义的线缆和针脚,不能把普通转接头想当然地混用。

按照现行 EDSFF 针脚规范,设备主供电为 12 V,3.3 Vaux 主要服务于管理侧带通信等辅助功能;两路电源在规范中是相互独立的。也正因为如此,后面软件里可以把 12 V 与 3.3 Vaux 的电压、电流分别放到同一时间轴中观察。

第二部分:把协议分析仪“串”进链路,而不是在旁边猜

04:37—06:07 模块化 Pod 与 Adapter Wing 如何适配不同形态

原本,E1.S SSD 可以直接插在线缆的 EDSFF 端。为了抓取 Host 与 Device 之间的真实流量,现场先拔下 SSD,再把 SerialTek 的 Gen6 Interposer 插入两者之间:右侧标为 Host,连接来自 Switch 卡的链路;左侧标为 Device,连接被测 SSD。中间较大的模块被称为 Pod,两侧可更换的小板则被形象地称作 Adapter Wing。

这种模块化设计的价值很直接:分析核心不需要随着 DUT 形态反复更换,只需替换 Host 端或 Device 端的 Adapter Wing,就可以覆盖标准 x16 插卡、OCP NIC 3.0、MCIO、EDSFF、M.2、U.2/U.3 等不同连接方式。对需要同时验证 SSD、NIC、DPU、GPU 或加速卡的实验室来说,真正节省的往往不是一块转接板的费用,而是重复搭建环境、重新确认连线和重新学习工具的时间。

06:07—08:35 D0、U0、S0 三组连接分别在看什么

信号从 Switch 卡出来后,先进入 Pod 的 Host 端,再经过 Interposer PCB 到达 Device 端的 E1.S SSD。与此同时,Interposer 上的高速扇出/采集电路将两个传输方向分别送给分析仪:从 Root Complex/Switch 朝 SSD 方向的流量定义为 Downstream,接到 D0;从 SSD 返回 Root Complex 方向定义为 Upstream,接到 U0;PERST#、SMBus 等低速边带则由 S0 采集。

视频中讲到 Gen6 x4 SSD 的差分信号 Lane 0 到 Lane 3:x4 链路一共是四条 Lane。每条 Lane 又包含两个相反方向的高速差分通道,因此协议分析仪必须同时、同步地观察上下行,才能还原一次请求、完成以及链路级反馈的前后关系。

把分析仪称为“旁路观察者”比较容易理解,但从硬件连接上看,它并不是隔空读取数据,而是通过 Interposer(Pod + adapter wing)插在真实链路中并分出观测路径。因此,Interposer 本身的损耗、均衡能力、参考时钟方式和连线质量都会影响最终能否稳定工作。Gen6 环境下,每增加一个连接器或一段 PCB 走线,都不能当作不存在。

第三部分:先看链路活着没有,再进入软件抓包

08:35—10:07 Kodiak 前面板给出的第一轮健康检查

镜头随后转向 SerialTek Kodiak。该平台面向 PCIe 6.0、CXL 3.x 及 NVMe 分析,配置相应许可与工作模式后,还可以作为 Protocol Tester 模拟 Root Complex 或 Endpoint,用于主机、设备尚未齐备时的早期验证。也就是说,同一平台既可以回答“总线上刚才发生了什么”,也可以进一步构造特定行为,观察 DUT 如何响应。

本次演示只使用分析/抓包功能。前面板触摸屏显示链路已稳定工作在 Gen6 x4,UP0 与 DOWN0 同步正常,Training 阶段已经结束,当前未显示 Error。空闲时 Activity 灯不持续闪烁并不代表链路断开,只表示当下没有明显 TLP 业务流量。触摸屏还可用于查看简要波形与统计、配置网络地址并回到 Home 状态页,适合在机架或实验台前快速确认环境。

这里仍要避免一个常见误判:一次成功 Link Up、屏幕上暂时没有 Error,只能说明当前观察窗口内链路可工作,不能单独证明长期 BER、所有均衡 Preset、各种温度电压角落或 PCI-SIG 一致性测试全部通过。工程验证应该把它当成“第一道门”,而不是最终结论。

10:07—11:48 浏览器进入 Capture:64 GT/s x4、错误统计与功耗入口

服务器端已经启动 Linux,另一台控制电脑通过网络连接 Kodiak,在浏览器中输入分析仪 IP 地址即可进入 BusXpert Web 界面。控制电脑不承担 PCIe 数据转发,它只负责配置、触发、查看和分析;高速流量由仪器本地采集与处理。SerialTek 官方资料显示,Kodiak 支持浏览器及独立应用界面,并提供实时内存 Trace、深度缓冲、内部 SSD 存储和 REST API 自动化。

Capture 页面再次显示 Downstream 为 64 GT/s x4,也就是 Gen6 x4。右侧统计区可以实时观察 DLLP/TLP 活动、链路事件以及 Correctable、Uncorrectable 等错误计数。在 PAM4 与 FEC 语境下,这类统计的价值在于:链路表面上可能始终保持 L0,业务也没有立即失败,但底层已经依靠纠错机制“救回”了一部分错误。如果工程师只看操作系统是否掉盘,就会错过早期劣化信号。

不过,Correctable/Uncorrectable 计数必须结合具体字段定义、抓包条件和触发窗口解释。零计数不等同于完整的信号完整性 Pass;出现 Correctable 也不必立刻等同于业务数据损坏。正确做法是继续关联 Recovery、重放/重试、FEC/CRC、AER 以及温度、电压和压力负载,再判断问题属于通道裕量、协议实现还是外部环境。

同一页面还集成了 Quarch Power Analysis Module 的数据入口,可同步显示 12 V 和 3.3 Vaux 的实时电压、电流与功耗。这里应理解为 SerialTek 软件对外部功耗采集模块的联动显示,而不是协议分析仪仅凭高速探头就“推算”出 SSD 电流。

第四部分:打开 6.86 GB Trace,把 18 分钟演示的核心信息展开

11:48—13:03 从 Live Trace 进入 Timeline:Idle、DLLP、TLP 与吞吐量

现场停止采集后,打开 Traces 中的 Live View。画面中尚未保存的内存 Trace 约为 6.86 GB;这只是本次已经捕获的数据量,不是仪器总缓冲容量。双击打开后,顶部首先出现 Timeline,所有事件按时间戳排列,并把 Downstream、Upstream 和不同类型事件用颜色区分。

把鼠标移到不同颜色区域,可以快速判断某段时间主要是 Idle、链路层活动还是 TLP 业务;旁边的 Throughput 曲线则帮助工程师找到开机、驱动加载或 I/O 开始时的突发流量。它的价值不是替代逐包解码,而是先把数 GB 数据压缩成一张“地图”:先定位异常发生在哪一秒,再进入那一小段看包。

对于 PCIe 6.0 还要多补一层背景。PCI-SIG 在 Gen6 引入 PAM4、低延迟 FEC、CRC 与固定 256 Byte FLIT;64 GT/s 下必须使用 FLIT Mode。协议分析软件因此既要让工程师看到 FLIT 这个传输容器,也要继续解码其中承载的 TLP 和数据链路层信息。界面上同时出现 FLIT、TLP、DLLP/DLP 相关条目并不矛盾,它们只是处于不同观察层级。

13:03—14:16 把 PERST#、LTSSM 和功耗放进同一条时间轴

Timeline 下方首先能看到 Sideband,例如本次接出的 PERST#。再往下是 LTSSM 状态变化,包括链路训练和 Recovery 等阶段;最下面则是 12 V、3.3 Vaux 及功耗曲线。三类信息对齐后,很多原本只能靠猜的问题会变得清楚:复位释放后链路多久进入 L0?是否反复掉入 Recovery?驱动开始访问控制器时功耗有没有同步抬升?吞吐下降之前,电压是否先发生了波动?

视频画面中,链路训练相关阶段结束后,功耗曲线很快抬高。严格说,这并不表示 SSD 到了那一刻才获得 12 V 主电源——设备必须先上电,物理链路才可能训练。更合理的解释是:链路进入可用状态、控制器初始化或后续 I/O 开始后,SSD 从较低负载转入更活跃状态,电流随之增加。判断先后关系时,应同时对照 PWRDIS、PERST#、LTSSM、NVMe 寄存器访问和命令,而不能只凭一条功耗曲线下结论。

这种同步观察对于压力测试、低功耗状态、异常掉电和偶发掉盘尤其重要。单独的功耗仪只能告诉你“电流在这里变了”,单独的协议分析仪只能告诉你“链路在这里进了 Recovery”;两者共享时间参考后,才能更接近因果链。

第五部分:从单条 Event 走到一次完整 Transaction

14:16—15:30 时间戳、FLIT、NOP/ACK 与事务聚合

Event 视图按照时间戳列出总线事件,选择任意一条后,右上角 Detail 区域给出字段级解码,并标明方向、速率与 Lane 宽度。界面可显示到皮秒量级的时间字段,有利于比较事件间隔;但最小显示单位不应简单等同于系统端到端的绝对测时精度,真正做时延结论时仍需看仪器规格、同步方式和测量定义。

在 Gen6 Trace 里可以看到大量 FLIT,以及 NOP、ACK/重试相关的链路事件。对于长时间连续重复的内容,软件会进行聚合显示,例如画面中出现的 187 条连续记录,避免工程师在成百上千行重复事件中迷失。需要定位细节时再展开单条记录,检查 FLIT 内容、序号、CRC/FEC 结果和其中承载的协议对象。

再切换到 Transaction 视图,软件会把分散的底层 Event 组织成更接近工程语义的事务。例如一次 Configuration Read 可以与对应 Completion 放在一起,让人直接看到“请求了什么、返回了什么”。但“事务”并不意味着所有 TLP 都是一问一答:Memory Write 属于 Posted Request,在 PCIe 事务层通常没有对应 Completion;分析时仍需理解不同 TLP 类型的规则,不能只凭界面是否出现 Response 判断成功与否。

15:30—16:22 从 PCIe 枚举走到 NVMe Identify、Set Features 和读写命令

被测对象是一块 NVMe SSD,因此开机 Trace 最有价值的部分,是把 PCIe 底层事务继续向上解码成 NVMe 控制器初始化和命令交互。视频中依次提到了版本、配置、状态、队列、Set Features、Identify,以及后续 Read/Write 等内容。为了便于没有长期跟踪 NVMe 启动过程的读者理解,可以把一段典型流程整理成下面这条链:

链路进入 L0 → 主机进行 PCIe 配置空间枚举并分配 BAR/MSI-X 等资源 → NVMe 驱动读取控制器寄存器 → 配置 Admin Submission/Completion Queue → 置位 Controller Enable 并等待 Controller Ready → 发送 Identify、Get/Set Features 等 Admin 命令 → 创建 I/O Completion Queue 与 I/O Submission Queue → 开始正常读写。

这条链描述的是规范化的典型顺序,具体 Trace 里出现哪些可选命令、先后是否有差异,要以被测主机、驱动和 SSD 实际记录为准。NVM Express 官方资料将 Identify、Get Log Page 等归入 Admin Command Set,而 Read/Write 属于 NVM Command Set。协议分析仪的意义,正是把“操作系统看见了一块盘”拆解为可核对的寄存器访问、队列建立、命令提交和完成状态。

如果 SSD 偶发枚举失败,就可以判断它究竟卡在 PCIe Link、配置空间、Controller Ready,还是某条 Admin 命令;如果盘能识别却无法建立 I/O Queue,也能继续查看命令参数、Doorbell 访问和 Completion 状态,而不是停留在一条笼统的系统日志上。

第六部分:Sync View 为什么是现场排障的关键动作

15:59—17:18 一个时间点,同步拉齐 Event、Transaction、功耗与边带

演示最后重点展示了 Sync View。选中某个时间点后,Event、Transaction、Throughput、LTSSM、Sideband 和 Power 等窗口会同步跳到同一位置。这个操作看似只是界面联动,实质上解决了跨层排障最费时间的问题:工程师不再需要手工抄时间戳,再到几个独立工具中反复拖动寻找同一事件。

例如看到一次 NVMe 命令延迟突然拉长,可以立即检查当时链路是否进入 Recovery、是否出现可纠正错误、功耗是否跌落、PERST#是否发生异常;又比如 SSD 在压力测试中掉盘,可以从系统感知到设备消失的时间点向前回溯,判断最早的异常究竟出现在电源、边带、LTSSM、Data Link Layer 还是 NVMe 层。

这也是本次演示真正想说明的重点:协议分析不应只是一张“包列表”。当高速双向流量、LTSSM、边带信号和功耗数据被放到统一时间坐标中,工具才从看包软件变成问题诊断平台。

第七部分:从 E1.S 切换到 E3.S、E3.L

17:18—18:38 更换 Adapter Wing,复用同一个分析核心

最后一段,现场拿出 E3.S 和更长的 E3.L 适配件作对比,当然也有 E1.L 的适配器(adapter wing)这次忘记展示了。测试方法没有变化:更换与 DUT 和背板机械形态匹配的 Adapter Wing,一端连接 Pod,另一端连接 E3.S/E3.L 设备或服务器背板。对于机箱内空间受限、设备必须插在真实背板位置的场景,这种形态比用多层通用转接板堆叠更容易布置。

视频里说 E1.S、E3.S、E3.L“接口都是一样的”,正式理解需要加一个限定:在本次 Gen6 x4、1C 连接场景下,它们采用同一 SFF-TA-1002/SFF-TA-1009 EDSFF 连接体系,因此电气针脚和分析方案具有很高共通性;但 EDSFF 还存在 1C、2C、4C、4C+ 等不同连接器宽度,对应 x4、x8、x16 及更多边带组合,E3 家族也可支持更宽 Lane 配置。不能把“同一家族、同一 x4 版本可复用”泛化成所有 EDSFF 设备物理接口都完全相同。

结语:Gen6 测试的终点,不是“点亮”

回看整场演示,这套环境完成了三个层次的验证。第一,证明 Switch 到 E1.S SSD 的设备侧链路能够在加入 0.5 米线缆和 Interposer 后协商并稳定运行在 Gen6 x4;第二,真实抓到了双向 PCIe 6.0 流量,并能从 FLIT 继续解码到 TLP、Transaction 和 NVMe 命令;第三,把 PERST#、LTSSM、吞吐量和外部功耗测量对齐到同一时间轴。

但一次演示也不应被夸大成全部验证已经结束。它没有单独证明所有电气一致性项目、长时间 BER、极限温压角、最大 NVMe 性能、异常掉电一致性或全部协议边界条件都已通过。更完整的下一步,应该在这套可观测环境上加入持续压力流量、重复冷/热复位、速率与 Lane 降级、错误触发、Recovery 捕获、电源拉偏与掉电、不同主机/交换芯片互操作,以及针对特定 NVMe 状态码和超时的自动化搜索。

对研发团队来说,Gen6 真正困难的地方从来不是把一个 64 GT/s 标志显示出来,而是当链路偶发抖动、性能不稳定、驱动报错或 SSD 掉盘时,能否沿着同一时间轴把物理连接、链路状态、协议事务、NVMe 命令和电源变化一层层对上。能够回答这件事,才算真正拥有一套可用于定位问题的 Gen6 测试环境。

免费下载Saniffer公司白皮书

希望获得更多关于PCIe5.0&6.0, CXL, NVMe SSD, SAS/SATA, NVMe over Fabric (NVMoF), NAND,新型存储技术NVM(RRAM/ReRAM, FRAM/FeRAM, MRAM, PCM, 3D-NOR, SRAM/DRAM等) DDR5/LPDDR5以及UFS测试技术和产品,可以查看Saniffer公司2026.2.24最新更新的测试工具白皮书15.1版本,我们已经整理收录在Saniffer公众号的【白皮书】菜单中。

欢迎关注Saniffer公众号,点击底部菜单栏即可免费获取。如有任何技术问题,也可直接在公众号内留言交流。