logo
  • 首页
  • 产品中心
  • 解决方案
  • 技术专栏
  • 关于我们
  • 首页
  • 产品中心
  • 解决方案
  • 技术专栏
  • 关于我们
  • 【高清视频】从插卡到M.2:PCIe 5.0流量抓取方法与实战路径全解析

    我们平时个人经常使用笔记本电脑其实当前来讲都是PCIe 3.0或者4.0 M.2接口的NVMe SSD了,可能不搞研发的人不知道这些M.2 SSD在研发阶段碰到问题是如何来分析的。 我们今天的视频通过测试一下客户送测的一个PCIe 4.0 x4 M.2 SSD来顺便做一个知识普及视频,来看看如何使用业内领先的SerialTek公司的PCIe 5.0 x4(兼容分析PCIe 3.0/4.0)协议分析仪来分析抓取M.2 SSD转接之后,和标准的M.2 SSD接口的双向流量来分析问题,希望对于对这方面好奇的朋友可以有一定收获。 实测现场还原:SerialTek如何抓取PCIe插卡与M.2 SSD全链路流量? 1)客户的M.2转接卡 + 客户M.2 SSD + SerialTek 插卡interposer抓取双向数据 上面这段视频主要演示了一个 M.2 SSD 通过我们客户自己的转接卡接入 PCIe 分析仪进行抓包验证 的实际环境。左侧是 Gen5 x4 PCIe 分析仪,右侧是华硕 Z790 Intel 平台;M.2 盘先通过转接卡变成 AIC 插卡,再插到PCIe协议分析仪 Pod 的 Device Adapter 上,Host Adapter 则插入主板 PCIe 插槽。 实际开机抓包后,前面板显示链路工作在 Gen4 x4。进入系统后停止抓包并查看 Trace,LTSSM 过程正常。 这个视频的最后重点展示了 SerialCables Gen5 M.2 转 AIC 转接卡。从日常实测结果看,这张转接卡在 Gen5 环境中没有任何 Bit Error,信号质量表现较好,因此对于 Gen5 SSD 测试,作者建议优先使用这类高质量转接卡。 2)SerialCable PCIe 5.0 M.2转接卡 + 客户M.2 SSD + SerialTek 插卡interposer抓取双向数据 这段视频主要验证我们将客户的M.2/AIC转接卡替换成 SerialCables 的 M.2 转 AIC 转接卡 在实际抓包环境中的表现。测试对象还是同一块 M.2 SSD,通过 SerialCables 转接卡接入插卡式 PCIe 分析仪,另一端连接华硕 Intel 平台主板插槽。 测试流程是先在软件界面开始抓包,然后开机进入系统。分析仪前面板显示链路为 Gen4 x4,系统正常启动,没有明显异常。 抓包结束后查看 Trace,大约捕获了 400多 MB 数据。进一步看 LTSSM 状态,链路进入 L0 之后没有出现额外的 Recovery,说明这套连接环境整体比较稳定,转接卡在这次测试中没有引入明显链路异常。 3)客户M.2 SSD + SerialTek M.2 interposer抓取双向数据 这段视频验证的是:不通过 M.2 转 AIC 转接卡,而是让 M.2 SSD 直接接入 Gen5 x4 M.2 分析仪环境。测试时,将分析仪 Pod 两侧的小板从之前的 AIC x4 Adapter 换成了 M.2 Adapter,另一端仍然连接华硕 Z790 主板的 M.2 插槽。 测试流程同样是先开始抓包,然后主机开机。前面板显示链路正常协商到 Gen4 x4,没有看到错误提示,随后系统顺利启动。 停止抓包后查看 Trace,初始化过程没有异常,整体链路表现稳定。这个视频主要说明:在同一块 SSD、同一套主机平台下,直接使用 M.2 Adapter + Gen5 x4 M.2 分析仪 也可以完成稳定抓包,链路训练和系统启动过程都正常。 总结 通过上述三种场景,我们看到,无论你将你的M.2 SSD通过自己的转接卡,还是SerialCable转接卡,还是不转接,直接通过M.2进行数据抓取,通过SerialTek PCIe 5.0协议分析仪都可以得到完美的结果。不过,对于PCIe 5.0信号,建议一定要使用SerialCables这类转接卡,全球的客户都在使用,信号有保证,不要去图省事在国内平台购买SI不过关的产品徒增导入各类意想不到的信号问题。 更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB) 链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3 如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。  
    2026-04-24 10:17:05
  • 【经验分享】CPU是如何“发现”PCIe协议分析仿真的Endpoint的?一文讲透PCIe中的BDF分配机制

    我们知道由PCIe训练器仿真的协议层PCIe RC 是用来测试用户开发的EP,市场上大多数公司是开发各类PCIe 外设的,不论GPU,AI加速卡,DPU,网卡,SSD主控芯片,等等,所有需要PCIe 6.0训练器仿真RC的场景多,PCI SIG进行CTS测试也是以测试外设为主;但是PCIe 训练器仿真的EP则专门用来测试用户开发的RC设备,一般情况是各类CPU,当然也包括PCIe Switch的RC端(连接下行EP外设的部分)。SerialTek PCIe 6.0协议分析仪的训练器Tester(也叫Exerciser)功能支持设置成仿真RC或者EP。有用户问如果设置成EP来测试他们开发的CPU的时候,CPU是否可以在初始化过程中会扫描到这个仿真的EP device并且给它分配一个BDF(Bus: Device. Function)呢?这个就要了解BDF扫描机制是如何在系统里面实现的,我们今天先简单讲一下 PCIe 枚举里 BDF 的实现细节,再给你一个尽量贴近工程实际、尤其适合“CPU + PCIe协议仿真的 EP”场景的回答。先上答案:SerialTek公司的PCIe 6.0训练器在设置成EP emulation的时候是可以被CPU正确识别到BDF的,该设备在业内不同的主机系统里面都正确通过PCIe枚举的过程验证并且获得BDF分配,该仿真的EP和正常的PCIe EP device没有什么特别不同的地方。这么说吧,如果这个仿真的 Endpoint 最终被 CPU/Root Complex 成功枚举到,CPU 在初始化扫描过程中就会“看到”并给它分配一个 BDF。但要注意,BDF 通常不是 Endpoint 自己预先决定并上报给 CPU 的固定号码,而是 Root Complex / 固件 / 操作系统在枚举过程中分配和记录的地址。Linux 文档里也直接把设备地址写成 domain:bus:device.function 这种形式,并明确这是系统里的 PCI 设备地址表示法。我们上面这个场景里可以这样理解:1)CPU 会不会“扫描到”这个 FPGA EP 的 BDF?会,但更准确地说是:CPU/RC 在扫描配置空间时发现了这个设备,然后给它安排了一个 BDF,并在后续访问中按这个 BDF 去访问它。前提是链路先起来,LTSSM 至少走到能正常进行配置访问的状态,并且 FPGA 这边把一个合法的 PCIe 配置空间端点行为模拟出来了,比如 Vendor ID / Device ID、Header Type、BAR、Class Code 等基本字段能被正确读到。Linux 内核文档也说明了 PCI 设备是通过总线上的配置与资源模型被内核识别和管理的。2)BDF 到底是什么?BDF = Bus / Device / Function。 通常写成:bb:dd.f如果把 PCI domain 也带上,Linux 常写成:dddd:bb:dd.f例如 0000:17:00.0,其中 Linux 文档明确说明前面的部分可表示 PCI domain 和 bus,而后面的目录对应某个 slot/function 设备。它本质上是配置访问地址,不是设备内部某个永久烧录的“身份证号”。3)BDF 一般是怎么实现出来的?核心在 PCIe 枚举(enumeration)。大致过程是:Root Complex 从某个 bus 开始扫描;对每个可能的 device number、 functionnumber 发起配置读;如果读到有效的 Vendor ID,说明这里有设备;然后系统给它建立对应的 bus/device/function 记录;如果遇到桥(Bridge / Switch Port),再给下游分配新的 bus number,继续往下枚举。所以:Bus Number:通常由 RC/固件/OS 在枚举桥和下游总线时分配。Device Number:对直连 RC 端口下的设备,常由 RC 侧拓扑/端口位置决定;在 switch 下游也和枚举拓扑位置有关。Function Number:如果一个设备是多功能设备,则 function 号通常体现为 0~7 中的某个功能号;SR-IOV 场景里还会出现更多由 PF 派生出来的 VF 逻辑函数。Linux 文档对 function、PF/VF 的表述也能印证这一点。4)PCIe协议分析仪的RC/EP仿真都是通过设备内部的高端FPGA实现的,在 FPGA 仿真 Endpoint 时,哪些东西是 FPGA 自己决定的,哪些不是?一般来说:FPGA / EP 自己决定的:Vendor ID / Device IDClass CodeRevision IDHeader TypeBAR 大小与类型Capability / Extended Capability是否多功能设备(multifunction)MSI/MSI-X、AER、PCIe Capability 等配置空间内容不是 FPGA 自己最终决定的:Bus Number多数情况下的 Device Number系统里最终看到的完整 BDF也就是说,FPGA 提供“我是什么设备”的配置空间内容;系统决定“你在这台机器里住哪个地址号”。 有些 SoC/PCIe EP 控制器会提供“PCIe gadget”一类接口,让你配置 vendorid、deviceid、BAR 大小等,但这不等于你能直接指定最终 BDF。Linux 文档里这类 EP gadget 接口就体现了这一点:可配置的是设备属性,而不是最终系统分配给它的完整 BDF。5)那 CPU 初始化时,是“先知道 BDF”,还是“先发现设备再形成 BDF”?更贴近真实实现的说法是:先按候选的 bus/device/function 地址去探测配置空间,读到有效设备后,这个地址就成为该设备的 BDF。所以从软件视角看,像是在“扫描 BDF”; 从设备视角看,是“系统在一堆可能地址里探测,发现你后把那个地址作为你的 BDF”。6)这个 BDF 是不是每次开机都固定?不一定。 Linux 内核参数文档就明确提醒,PCI 的 bus/device/function 地址可能会因为插入新硬件、主板固件变化、或者内核参数变化而改变。因此:在简单、固定拓扑里,BDF 往往看起来比较稳定;但只要拓扑、桥分配策略、BIOS/UEFI 行为变了,BDF 就可能变化;所以工程上通常不要把 BDF 当作设备的永久身份标识。7)结合你这个“CPU + FPGA 仿真 EP”的场景,最实用的结论如果你的 FPGA Endpoint 仿真是正常的,那么 CPU 初始化时通常会:建链成功;对配置空间发起读请求;读到有效 Vendor ID / Device ID;给它纳入系统 PCI 设备树;在软件里表现成一个 BDF,比如 00:01.0、 01:00.0 之类。但如果下面任一项有问题,CPU 就可能根本“看不到”这个 BDF:链路没起来;FPGA 没有正确响应配置读;Vendor ID 读回 0xFFFF;Type 0 / Type 1 Header 模拟错了;BAR 或 capability 结构异常,导致枚举中断或驱动阶段失败。8)一句话总结BDF 不是 FPGA Endpoint 预先“报给 CPU”的固定编号,而是 CPU/Root Complex 在 PCIe 枚举过程中,根据系统拓扑和配置访问结果,为这个被发现的 Endpoint 确定并使用的地址。更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-23 09:47:32
  • 【经验总结】PCIe 6.0不是插上就能用:一次真实Gen6链路调崩再调稳的全过程

    我们知道,对于开发PCIe 6.0 EP外设芯片(例如网卡、GPU卡、AI加速卡、SSD控制器等)的公司来讲,在真正可用的PCIe 6.0 server面世之前,有的时候需要使用类似于SerialTek PCIe 6.0 tester/exerciser训练器模拟一个PCIe 6.0 RC(CPU端)来和自己的芯片验证卡进行建链以及通讯测试。我们经常会碰到一个问题,链路即便在模拟的CPU和待测卡之间建链到PCIe 6.0之后,但是链路不干净,就是有很多错误,link recovery, 或者大量的uncorrectable error,尤其是最后这个错误,一旦这个错误量较大,模拟的CPU和待测卡之间即便链路在PCIe 6.0 L0状态,但是双方通讯也经常会出现问题。我们最近拍了一个实际调试的视频,来看使用SerialTek的PCIe 6.0训练器是如何将该该uncorrectable error通过自动化工具Kodiak Calibration软件自动调优到一个较好的状态的。由于是内部视频,我们这里只能简单讲述一下视频中用到的方法,感兴趣的朋友可以联系我们。下面的文字是根据视频梳理的一份现场复盘风格的总结供大家参考。对于下面提到的SerialCables PCIe 6.0 80-lane switch 插卡感兴趣的,可以在saniffer公众号查询关键搜寻我们从2025年中拍摄的大量手把手演示视频,例如下面这篇文章内部的高清视频,以及文章中第一段链接的之前的部分使用该PCIe 6.0 switch做各种测试的高清视频:PCIe 6.0主机卡+Gen6 E3.S转接卡初次使用演示我们之前做过很多期PCIe 6.0主机卡(也叫switch卡)的高清演示视频,感兴趣的可以查询一下Saniffer公众号往期文章,或者直接点击下面的链接,包括Gen6 Switch + Switch;Switch + CX-8(一)和(二);Switch + Quarch故障注入卡 + Switch;Switch + 0.3米延长线 + Switch卡等等;另外,我们也拍摄了如何使用Gen6 switch卡连接Gen6 SSD的几期视频,包括Gen6 switch + MCIO x8 转接2*EDSFF female connector;Gen6 switch + MCIO x8 to 2* MCIO x4 + Gen6 8盘位盘柜,等等。我们今天演示的是PCIe 6.0主机卡顶部的插槽加入一个Gen6 E3.S转接成金手指的转接卡来测试一个E3.S SSD。一、这次演示在解决什么问题?这段视频的出发点其实很直接:在 SerialTek Gen6 Tester 训练器 + SerialCables PCIe 6.0 80-lane switch 插卡的环境下,把PCIe 6.0链路从“能跑”调到“跑得干净、稳定”。如果用一句更接地气的话来说:👉 如何链路已经能上Gen6,但质量没有那么不理想,如何调优二、一个现实前提:Gen6现在不好调视频里反复提到一个背景,其实挺关键:Gen6设备本身就不多信号裕量比较紧设备之间兼容性也比较敏感所以当前测试的一个基本策略是:👉 每个设备都需要单独调参数👉 这点很真实:Gen5以前很多时候“插上就能用”, Gen6基本是“每条链路都要调一遍”。三、判断链路好坏的核心指标这一段其实是整个视频最有价值的地方之一。关键指标:Flit Error在Gen6下,不再只看传统错误,而是重点关注:Correctable FlitUncorrectable Flit含义也讲得很直白:Correctable:可以通过FEC纠回来Uncorrectable:纠不回来 → 真正影响链路质量一个典型场景视频里举了一个例子:Uncorrectable Flit = 10K级这时候就意味着:👉 链路虽然“跑起来了”,但质量明显不够好👉 工程上可以这么理解:能跑 ≠ 可用 能用 ≠ 稳定Gen6的关键在“错误率是否可控”四、调优的核心动作:EQ Preset进入实操阶段后,第一步就是:👉 调 EQ Preset流程非常典型:修改 EQ preset 值ApplyReset Tester & Link重新训练链路观察结果反复多次,直到:👉 成功稳定进入 Gen6 L0 状态👉 这里的本质:EQ参数决定链路“能不能被接收端正确解读”五、更深一层:Interposer调节除了EQ之外,还有一个更关键的调节入口:👉 Interposer Settings可以理解为:调整信号路径特性优化链路传输质量使用方式有两种:1)直接加载已有配置如果之前调过可以直接复用2)通过软件自动或半自动优化搜索更优参数组合👉 这一层其实已经接近“信号层调优”六、一个很现实的问题:手动调太慢视频中也直接点出来了:手动逐个参数去调,是一件非常麻烦的事情原因很简单:参数组合很多每次都要重新训练链路反馈周期长👉 所以实际工程里:很少有人纯手调,一般都会借助工具,例如SerialTek的Kodiak Calibration软件或已有经验配置七、调优的目标:让链路“干净”整个调参过程,其实围绕一个非常朴素的目标:👉 让链路变得更 clean具体体现就是:Uncorrectable Flit下降错误更少稳定性更高👉 可以简单理解为:从“能跑” → “误码可控” → “长期稳定”八、一个非常实用的结果:配置可以沉淀视频后半段给了一个很有工程价值的结论:👉 调好的参数可以导出为JSON配置文件然后:可以下载保存可以在其他实验室复用相同环境下效果一致👉 这一点很关键:Gen6调试,不再是“个人经验”,而是“可复制资产”九、最终形成的一个完整流程把整段视频抽象一下,其实流程非常清晰:Step 1:建立Gen6链路(哪怕质量一般也没关系)Step 2:观察Flit错误情况(重点看Uncorrectable)Step 3:调整EQ参数(基础调优)Step 4:优化Interposer参数(深入调优)Step 5:反复训练链路(直到稳定进入L0)Step 6:导出配置文件(沉淀成果)十、一个更偏工程的结论如果把这段内容放在当前PCIe 6.0阶段来看,可以得出一个比较现实的判断:1️⃣ Gen6链路不是“即插即用”必须调而且要反复优化调2️⃣ 调试核心已经从协议转向信号质量EQInterposerFlit Error3️⃣ 最关键的能力不在“调”,而在“复用”一次调好多处使用快速复制环境最后一段,用一句更接近现场的话收一下如果你正在做PCIe 6.0相关测试,这段演示其实在传递一个很实际的经验:真正花时间的不是“把链路拉起来”,而是把它调到一个你敢长期跑业务、敢交付给客户的状态,而这件事,本质上就是在跟错误率和参数组合打交道。更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-22 10:38:17
  • 【高清视频】PCIe 6.0跑起来了:PCIe Gen6 Switch + 英伟达CX8 800G链路抓包实录

    我们Saniffer在去年2025年Q2/Q3写了一些介绍当今PCIe 6.0测试工具、测试环境搭建等的文章,也拍了一些关于PCIe 6.0 x16链路协议分析的视频,参见下面的一些文章举例:SerialTek率先实现PCIe 6.0 x16协议完整抓取,业内唯一Clean流量验证NVIDIA 正式选用 SerialTek PCIe 6.0 x16 分析仪+训练器,全球顶尖验证背书!全球最全面的 PCIe 6.0/CXL 3.0 测试工具方案探讨汇总但是,有些朋友对于上述的实际的PCIe 6.0 x16流量是如何抓取到的,协议分析仪的interposer串接在链路中间是如何调优这些信号的不是很清楚,我们今天的高清视频大概25min可以解决你的这些疑问。我们下面这份总结按“工程师复盘”的思路整理了一遍,尽量还原视频里的讲解逻辑,同时把关键点串起来,基本是一个现场经验总结。一、整体目标:这次演示到底在做什么?这段视频的核心,其实不是“介绍设备”,而是做一件更实战的事情:👉 用 SerialTek Gen6设备切到协议分析仪模式, 👉 在 CX8 800G网卡 + Gen6 Switch 的真实链路上, 👉 抓取 PCIe Gen6 X16(FLIT模式)链路数据,并验证信号质量换句话说,这是一个典型的:“Gen6系统级联调 + 协议抓取 + 信号质量评估”的完整演示二、测试环境结构(这一段非常关键)视频里花了不少时间讲拓扑,其实是有意义的——Gen6时代,环境搭错了,后面全白忙。可以把这套环境理解成三层结构:1️⃣ 中间核心:协议分析仪(可切换训练器)SerialTek Gen6主机支持 训练器 / 分析仪双模式切换当前工作在:Protocol Analyzer 模式连接方式:U0 / D0 / S0 三路高速链路接入 OCP Pod(中间插入点)👉 本质:插在链路中间做“无损监听”2️⃣ 左侧:被测设备(EP)NVIDIA CX8 800G 网卡接口:Gen6 x16 AIC通过 OCP 3.0 转接板接入 Pod👉 角色:Endpoint3️⃣ 右侧:链路另一端(Switch + 主机)Gen6 Switch卡(x16)通过延长线接入Switch上游连接:Intel Z890主机(Gen5 x16)👉 实际链路关系:CX8 (Gen6 EP)↓Pod(插入分析仪)↓Gen6Switch(Downstream)↓Z890 Host(Gen5Upstream)关键点:👉 CX8 ↔ Switch:Gen6 x16 👉 Switch ↔ Host:Gen5 x16三、链路状态验证:已经成功跑到 Gen6通过两种方式确认:1)Web UILink = Gen6 x16Mode = FLIT Mode2)设备前面板触摸屏状态一致👉 说明:不是“尝试Gen6”,而是已经稳定跑在Gen6协议栈(FLIT)四、信号质量:用 Flit 统计来判断Gen6时代,不再看传统BER,而是:👉 看 Correctable / Uncorrectable FLIT实测情况(视频里的真实数据)DownstreamCorrectable:几十万级Uncorrectable:<1000比例:<0.1%UpstreamCorrectable:百万级Uncorrectable:2万级比例:<1%👉 结论非常明确:当前链路质量:已经属于“可用且较好”水平五、核心难点:Gen6链路调优怎么做?这一部分才是视频最有价值的内容。1️⃣ 三类配置入口(1)Capture Settingsbuffer大小包过滤👉 基本不用动(2)Link Settings重点关注:speed control(反复切换观察链路变化)flit mode(建议手动指定 256B FLIT,而不是auto)lane mapping / reverse👉 这是“粗调”(3)Advanced Interposer Settings(核心)关键参数:Through Path:high / gainAnalyzer Path:high / gain👉 两个方向(Up / Down)都要调2️⃣ 手动调参逻辑(很工程师)核心方法:👉 每次只改一个参数 👉 看 uncorrectable flit 的变化判断逻辑:变少 → 调整有效变多 → 方向错了👉 本质就是:用错误率当反馈,做“闭环调参”六、真正的效率提升:Auto Calibration这是这代工具的关键升级。自动校准过程特点点击一次运行参数自动扫描错误率实时反馈自动回退错误配置表现:uncorrectable flit 会短时间暴涨然后快速收敛最终结果稳定在 <1%(甚至千分级)👉 实际意义:从“人工试错” → “算法自动收敛”七、抓包分析能力(协议层)抓到的是:👉 FLIT模式下的真实业务流量可看到内容1)Events连续 FLIT 数据流2)TransactionsTLP交互(如:MRd64Completion)3)字段级解析支持字段展开支持自定义字段显示(如tag)搜索 / 过滤能力按包类型筛选(TLP/DLLP)按关键字查找按错误分类定位八、统计分析(Gen5/6之后非常重要)视频中特别强调了一点:👉 数据量太大,人看不过来所以:Statistics功能作用自动统计:TLP数量DLLP数量Error分类快速定位:第一个异常包speed/width变化LTSSM分析支持👉 这在Gen6时代已经不是“辅助功能”,而是:必需工具九、配置复用(实际项目很关键)支持:导出 JSON 配置跨团队共享直接加载复用👉 这解决了一个现实问题:不同实验室重复调参的问题十、可以总结成一句话这段视频本质上展示了三件事:1️⃣ Gen6链路已经可以在真实系统中稳定跑起来(CX8 + Switch + Host)2️⃣ 协议分析仪不只是抓包工具而是:👉 链路调优 + 信号评估 + 协议分析一体工具3️⃣ 调试方法发生了变化从:人工经验 + 盲调变成:数据驱动(flit error)自动校准(Auto Calibration)最后一个工程师视角的判断如果把这段视频放到当前PCIe 6.0发展阶段来看,它其实说明了一件更深层的事情:Gen6调试的核心难点,已经从“能不能建链”,转向“如何稳定、如何优化、如何分析数据”而像这种:Interposer调参Flit error评估自动校准基本会成为未来所有Gen6验证环境的“标配流程”。更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-21 11:02:26
  • 【高清视频】PCIe Gen5 144 Lane Switch扩展板实测总结(8设备满载视角)

    我们4月初做了一个高清视频,讲述了一下PCIe 5.0 144 lane switch的实际操作,但是当时只是在下行方向随便接了一块PCIe 5.0 x16 GPU卡。我们今天40min的高清视频来满载8块卡来实际演示一下,并且我们也顺带讲解了一下给该扩展板特殊定制的机箱(含风扇、CRPS - 电源模块),以及对应的PCIe 6.0 144 lane switch扩展板的基本状况(提供18个Gen6 MCIO X8 CABLE CONNECTOR)等等。注意:上述144 lane switch的上行uplink其实并不限于一个x16上行,其实可以将多个端口设置为上行,例如设置其中的4个x16为上行,每个x16接入一台上游服务器的PCIe 插槽;剩余5个x16接下行的x16 end point device,例如各类GPU, AI加速卡、网卡等。PCIe Gen5 144 Lane Switch扩展板实测总结(8设备满载视角)这次内容的核心,其实不是“介绍一块板卡”,而是把一整套PCIe Gen5扩展方案,从硬件拓扑、连接方式、供电、启动到实际识别验证,完整走了一遍。相比之前只插一张GPU的演示,这次最大的变化是: 👉 把8个设备全部插满,验证真实复杂场景下的可用性一、整体架构:一颗144 Lane Switch撑起8路设备这块板的核心很明确:基于 Broadcom PCIe 5.0 144 Lane Switch典型结构是:- 上行(Upstream):接主机(CPU)- 下行(Downstream):分给多个设备这次测试的下行设备构成非常“混搭”,但也更贴近真实实验室环境:1 × PCIe Gen5 x16 GPU(摩尔线程 S80)6 × SSD(覆盖多形态)- U.2(铠侠 CD7/CD8、Intel等)- EDSFF E3.S(含单双厚度)- M.2(不同主控:SMI / Phison等)1 × 双口10G网卡👉 合计正好 8个device挂满Switch这里一个很关键的点: 不是所有设备都是“原生插卡”,大量使用了转接卡(U.2 / E3.S / M.2 → PCIe卡),这本身就已经在考验链路质量。二、上行链路设计:MCIO成为关键角色上行连接方式值得重点关注:使用 2 × MCIO x8 = x16链路MCIO(Mini Cool Edge IO)是Amphenol推出的高速连接器链路路径大致是:CPU PCIe插槽↓转接卡(MCIO x8 ×2→PCIe x16金手指)↓MCIO Cable×2↓Switch板几个现实经验:MCIO是当前Gen5/Gen6常见布线方式一根线x8,两根拼x16,这是典型做法插拔并不“优雅”:官方蓝色拉片不太好用实际更推荐“压扣+轻微晃动”方式拔出👉 这一点在实验室反复插拔时很关键,不然很容易损伤连接器。三、供电体系:真正容易踩坑的地方这部分其实是视频里最有价值的经验点之一。1. Switch板供电使用 PCIe 5.1供电接口(6+6+4)注意:- 这个“5.1”是供电规范扩展(ECN),不是协议版本- 主要为高功耗设备(GPU 200W→500W)设计2. GPU独立供电GPU单独走8pin供电与Switch板供电分开3. ATX电源“必须短接”如果你不用主板带载:ATX 20pin 必须短接,否则电源不起👉 这个是典型实验室坑点 很多人第一次做裸板测试都会卡在这里。四、启动顺序:顺序不对,可能直接失败推荐流程:先给 Switch板 + 外设上电再启动主机(主板)原因很简单:👉 对主机来说,Switch是“外设”,必须先ready否则容易出现:枚举失败链路降级设备缺失五、一个很典型的“Gen5不上速”问题这是整段视频里最工程化的一点(注意:AMD CPU没有这个问题):现象Intel Z690 / Z790 + Broadcom Switch上电后不一定直接跑到Gen5解决方式需要手动执行脚本:setpci /或自定义脚本→ 强制重新训练链路→ 提升到Gen5 speed本质:👉 重新触发LTSSM训练,让链路升速到5.0执行后可以看到:current speed = Gen5x16链路正常六、最终验证:lspci一次性识别8个设备系统(CentOS)启动后,通过 lspci 可以看到:6 × NVMe SSD(non-volatile memory controller)1 × GPU(VGA compatible controller)1 × 网卡👉 全部8个device成功枚举这说明两件事:Switch拓扑完全工作正常混合设备 + 多转接结构没有引入致命问题七、几个很“接地气”的经验结论最后把视频隐含的经验抽出来,其实更有价值:1. 转接卡/线材质量决定上限Gen5已经非常敏感转接链路一旦不好:- 降速- 不稳定- 枚举失败👉 这也是为什么强调用Sanifferi销售的SerialCables这类高质量转接件2. 台式机也能玩,但不是“标准玩法”官方建议:服务器 / 工作站实测:台式机也可以但问题更多:- 兼容性- 速率训练- BIOS/CPU限制3. 实验室环境 ≠ 标准服务器环境这个视频其实更像是在做一件事:👉 用非标准环境,复现标准服务器拓扑包括:裸板 + 风扇散热外接电源转接链路拼接这对于做:PCIe调试SSD验证CXL设备测试是非常典型的“工程场景”。一句话总结这次演示的本质,不是“144 Lane Switch能接8张卡”,而是:👉 在非服务器环境下,用一套可复制的方案,把PCIe Gen5多设备拓扑完整跑通,并把所有关键坑点都踩了一遍。如果你是做:PCIe验证SSD/网卡/GPU测试或搭建Gen5/Gen6实验环境这套方法基本就是一个“可落地模板”。更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-20 09:34:50
  • 【每日一题】一文搞懂消费类电子的电池容量单位

    我们平时使用移动充电宝,笔记本电脑,手机,智能穿戴设备,例如智能眼镜,经常看到标注的电池的容量大小,被五花八门的单位搞得晕头转向,今天我们就来看看这些单位,例如mA,mAh,mWh,Wh/kg,Wh/L分别表示什么意思?mA和mAh是一个意思吗?如何来看一个消费类电池的容量大小?例如,2023年底发布的meta rayban AI glass的电池到底是110mA,160mA还是175mA? 后来的meta rayban AI glass Gen2的电池呢?Meta Display glasses 的电池标注是960 mWh,为什么不用mA标注? //* 对于Meta这几代智能眼镜拆解视频的分析,可以在saniffer公众号查询关键词:Meta。一、mA、mAh、mWh、Wh/kg、Wh/L到底是什么?1️⃣ mA vs mAh —— 很多人最容易混淆的点👉 结论先说:mA(毫安)= 电流mAh(毫安时)= 容量✔ mA(电流)表示“瞬时流过的电流”类似“水管里的水流速度”👉 举例:智能眼镜拍视频:可能 300~500 mA待机:可能 5~20 mA✔ mAh(容量)表示“能持续输出多久”本质是:容量=电流×时间👉 举例:电池含义100 mAh可以输出 100 mA × 1小时或 10 mA × 10小时👉 关键结论: ❌ mA ≠ mAh 👉 一个是“速度”,一个是“总量”2️⃣ mWh / Wh ——真正决定续航的核心指标👉 电池真正的能量单位是 Wh(瓦时)✔ 计算公式Wh=电压(V)×容量(Ah)举例假设:160 mAh = 0.16 Ah电压 = 3.8V能量=3.8×0.16=0.608Wh=608 mWh👉 所以:👉 mAh 只是“容量” 👉 Wh 才是“真正能量”3️⃣ 为什么有 mWh?👉 因为很多设备电压不同举例对比电池mAh电压WhA2000 mAh3.7V7.4WhB2000 mAh7.4V14.8Wh👉 mAh一样,但能量差一倍👉 所以:👉 工程上比较电池必须用 Wh 或 mWh4️⃣ Wh/kg 和 Wh/L这两个是“密度指标”✔ Wh/kg(重量能量密度)每1kg能存多少Wh👉 影响:飞机、无人机、穿戴设备✔ Wh/L(体积能量密度)每1升能存多少Wh👉 影响:手机智能眼镜(非常关键)👉 对你这个行业最重要的是:智能眼镜→更看重Wh/L二、如何判断一个消费电池“大小”?1️⃣ 正确判断顺序(工程师方法)第一:看Wh(能量)第二:看Wh/L(体积密度)第三:看 mAh(辅助参考)2️⃣ 实际对比设备电池手机15~20 Wh笔记本50~100 Wh智能手表1~2 Wh智能眼镜0.5~1 Wh👉 关键结论:👉 智能眼镜电池 ≈ 手机的 1/20三、Meta RayBan AI Glass 电池到底是多少?关于这个问题网上数据是“混乱的”。1️⃣ 第一代(Ray-Ban Stories / 2021)拆解数据:≈ 175 mAh2️⃣ 2023 Ray-Ban Meta(你说的AI版)拆解结果:≈ 150~160 mAh👉 所以:160 mAh 是最接近真实值3️⃣ 110 mA 是什么?👉 这是错误或误解:可能来源:把 mA 写成 mAh或是某个子模块电流👉 电池绝不可能只有110 mAh以下(否则连1小时都撑不住)4️⃣ Gen2(2023/2024)官方没有直接给 mAh 但拆解推测:👉 仍然在 150~180 mAh 级别👉 但:👉 续航翻倍(4h → 8h)原因不是电池变大,而是:SoC+系统功耗优化四、Meta Display Glasses:为什么用 mWh(960 mWh)?1️⃣ 关键原因:电压不确定👉 mAh 必须配合电压才有意义而:👉 mWh = 已经包含电压2️⃣ 960 mWh 换算假设 3.8V:容量≈960/3.8≈252 mAh👉 结论:👉 Display glasses 电池更大(约250mAh级)3️⃣ 为什么不用 mAh?因为:👉 这是更“工程标准”的表达方式场景对比场景用什么消费者mAh工程/行业Wh / mWh👉 Meta这种产品:👉 已经进入“系统功耗设计级别”五、总结(工程速记表)电池参数理解参数含义mA电流(瞬时)mAh容量mWh / Wh能量(最重要)Wh/kg重量密度Wh/L体积密度智能眼镜电池现状产品电池RayBan Stories~175 mAhRayBan Meta~160 mAhMeta Display~960 mWh (~250 mAh)最核心结论(非常关键)续航提升≠电池变大而是:SoC功耗+系统设计+协议低功耗(类似PCIe L1.2思路)更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-16 10:19:27
  • 【市场洞察】全球和国产PCIe 6.0 switch和retimer市场动态和硅后验证技术

    我们最近的一次技术交流我觉得对于业内从事高速芯片的朋友可能有一定借鉴意义,放在这里供大家参考。我们的交流主要围绕着PCIe 6.0生态发展现状及测试解决方案展开,涵盖了PCIe 6.0 Switch芯片、Retimer技术、CXL内存扩展、分析仪与训练器设备等核心议题,也讨论了当前产业链的实际进展与挑战。PCIe 6.0发展现状协议演进与市场节奏PCIe 6.0规范于2022年1月正式发布,目前处于互联互通测试阶段,已举办五次PCI-SIG兼容性测试活动。第五次PCIe 6.0 Pre-FYI协议兼容性测试(2025年3月下旬)结果显示,协议层兼容性显著提升,但该次不涉及物理层测试。市场普遍预期在2028年底前难以买到支持PCIe 6.0的服务器主机,主要受限于Intel和AMD CPU平台推进缓慢。关键产品供应情况Switch卡:Broadcom PEX90144(144通道)/90080(80通道)是目前唯一可商用的产品,自2024年中开始销售。网卡:NVIDIA基于Maxwell架构的CXL 8端口卡可用SSD:三星明确表示不再推出PCIe 6.0 U.2盘,主流将转向EDSFF形态;企业级SSD仅少量原型机存在,Q3后才可能小批量供货。Micron也基本在Q3 2026小批量供货给CSP大厂。当前可采购的PCIe 6.0设备极为有限。国内PCIe 6.0 Switch/Retimer芯片竞争格局主要参与者国内已有十余家企业涉足PCIe 5.0和6.0 Switch研发,涉及上海、北京、深圳、无锡、成都、珠海等等城市。部分台湾团队也在大陆设立团队,在开发PCIe 5.0/6.0 switch和retimer。技术难点与进度Switch芯片设计复杂度高,涉及多链路协同与错误处理机制,出问题影响广泛。国产个别公司虽然布局较早,但尚未实现量产出货,预计Retimer类产品线会优先落地。多数厂商仍停留在5.0或6.0前期验证阶段,真正具备稳定交付能力者稀少。PCIe 6.0 Retimer与Switch技术解析功能定位差异Retimer用于信号重定时,解决高速长距离传输中的衰减问题。Switch则实现拓扑扩展,支持动态端口重配置(DPR),如将x16拆分为多个x4/x8使用。博通Broadcom集成创新博通PCIe 5.0/6.0 Switch芯片集成了SerialTek协议分析抓包功能,可在内部同时抓取上行至CPU(x16)、下行至盘(x4/x8)等多个链路。具体参见本文底部的PCIe/CXL测试工具白皮书的chapter 2.8章节介绍,或者查阅Saniffer之前公众号文章:售价仅几万美元的PCIe Gen5协议分析仪值得买吗?文章内附35分钟高清演示视频。抓包Buffer较小,需配合过滤策略使用,数据可通过SerialTek协议分析软件解码。CXL 3.0内存扩展应用进展当前瓶颈CXL技术进展缓慢,行业优先级较低,缺乏大规模市场驱动。主流应用场景为Type 3内存扩展,目标解决单机大内存需求(如6TB以上实时数据库)。缺乏成熟操作系统中间件支持,Linux尚可管理直连内存与CXL内存的分级访问,Windows服务器暂不支持。实际部署挑战已有Intel Xeon主板+国产CXL 2.0控制器卡的演示方案,实测延迟增加约100纳秒。具体可以参见我们之前拍摄的多个高清视频,在saniffer公众号查询关键词:CXL。存在通过光/电转化卡+光模块将内存扩展至50米外的技术方案,但额外引入约200纳秒延迟。多数用户仅完成原型验证,因无量产产品而未能落地。PCIe 6.0协议分析仪与训练器解决方案核心优势对比当前市场上,SerialTek的分析仪被公认为全球性能最佳,在PCI-SIG第五次互操作测试中表现领先。测试速度远超竞品:完成1000+用例兼容性测试仅需20分钟,传统品牌需1小时以上;最关键的是SerialTek测试数据的一致性最好。对于这款感兴趣的可以参考我们之前拍摄的的关于PCIe 6.0 PRE-FYI CTS测试的高清视频。支持即插即用式调试,几个月前帮助三星北美团队解决了其它PCIe 6.0协议分析仪无法使用的问题从而促成紧急采购SerialTek PCIe 6.0协议分析仪。国产替代困境高端分析仪单价高达数百万人民币(如SerialTek高端配置达到100+万美元/台),国内企业普遍因成本与融资压力难以承担。国内客户更倾向选择低价方案,但是这形成了“越不用越落后”的循环,对于国产高端PCIe接口芯片的硅后验证和测试进度造成了严重影响。PCIe 6.0故障注入与主动测试工具硬件级异常模拟提供支持PCIe 6.0的故障注入模块,可对电源、Data Lane、Sideband信号进行精确控制。支持导入可控毛刺(Glitch),制造CRC Error、Bit Error等异常,用于验证Retimer/Switch的容错能力。典型配置包含主控模块+接口适配卡(M.2/U.2/EDSFF/插卡)。电压拉偏测试可编程电源模块(PPM)可模拟供电不稳定场景,设定微秒级精度的电压波动曲线(如11.8V→13.5V跳变)。同步记录电压、电流、功耗及Sideband信号状态,采样率最高达25万次/秒,支持长期运行监测。PCIe 6.0高速连接线缆与转接方案品质要求严格高速PCIe 4.0严禁使用淘宝、京东等渠道购买的廉价延长线,此类产品普遍存在信号完整性缺陷,即使能识别也会产生大量CRC错误。推荐采用SerialCables等大厂定制线缆,保证PCIe 5.0和6.0的信号SI,尤其适用于金手指转U.2、EDSFF延长等非标场景。采购现实制约原厂线缆起订量通常为500根以上,单根成本可达数千元人民币,进口还需叠加关税与增值税。国内小批量需求难以匹配生产门槛,导致优质资源获取困难。更多关于PCIe 6.0/CXL的测试工具和技术,请下载Saniffer公司2026.1.6最新更新的白皮书15.1版本 - PCIe5&6.0, CXL, NVMeNVMoF, SSD, NAND, DDR5, 800GE测试技术和工具白皮书_ver15.1-low resolution.pdf(低分辨率版本,file size: 63MB);需要高清图片pdf版本的请参见本文底部的联系方式联系我们获取(file size: 204MB)链接: https://pan.baidu.com/s/1R-tJEqwBlzBaDR0WLuMU0Q?pwd=9av3 提取码: 9av3如果你有其任何关于PCIe5&6.0, CXL, NVMe/NVMoF, NAND, DDR5/LPDDR5以及UFS测试方面的我问题想咨询,请访问:访问www.saniffer.cn / www.saniffer.com 访问我们的相关测试工具和产品;或者添加点击左下角“阅读原文”留言,或者saniffer公众号留言,致电021-50807071 / 13127856862,sales@saniffer.com。
    2026-04-15 10:59:49
  • 1
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 51
    • 电话:(021)5080-7071; 131-2785-6862

      在这里输入描述
    • www.saniffer.cn

      在这里输入描述
    • 邮箱:sales@saniffer.com

      在这里输入描述
    • 地址:上海市浦东新区张江路505号1号楼1605-1单元

      在这里输入描述

    关注微信公众号

    上海森弗信息技术有限公司 备案号:沪ICP备2024076352号-1

    版权所有 © 上海森弗信息技术有限公司 技术支持:竹子建站