2. Marvell DPU硬件架构总览
要建立对 Marvell DPU 的整体硬件认知,最有效的方式不是记住某个型号的参数表,而是先理解它“为什么必须长成这样”。DPU 的定位是在服务器与网络之间承担数据搬运、协议处理、安全卸载和部分基础设施服务,因此它的硬件必须同时具备三类能力:高速网络接入、可编程的数据面处理、以及独立于主机的通用计算与内存。Marvell 的 OCTEON 系列 DPU(如 OCTEON 10 系列)正是围绕这三类能力组织的 SoC 级平台。
芯片组成:一颗 SoC 里的多个“子系统”
Marvell DPU 芯片内部并非单一处理器,而是由若干功能子系统通过片上互连(如 coherent mesh/NoC)连接而成。典型组成包括:
- 通用计算子系统:基于 Arm Neoverse 内核的 CPU 集群,负责控制面、操作系统、管理代理和复杂协议栈,通常运行 Linux 与 DPU 固件。
- 可编程数据面:以 P4/可编程包处理器或专用加速引擎形式存在,负责线速报文解析、匹配、转发与修改。
- 网络接口子系统:集成以太网 MAC/PCS 与 SerDes,支持 100G/200G/400G 等速率,并可通过 PCIe 或 CXL 与主机连接。
- 存储与内存子系统:包含 DDR 控制器、片上缓存、以及面向加速器的队列/缓冲管理。
- 安全与压缩引擎:IPsec/TLS 加解密、正则匹配、压缩/解压等,用于卸载主机 CPU。
这些子系统共享同一套内存地址空间与一致性互连,使得数据可以在 CPU、加速器和网络接口之间高效流动,而不必反复拷贝到主机内存。
计算单元:通用核与专用核的分工
在 Marvell DPU 中,计算单元通常分为两类。第一类是 Arm 通用核,它们适合运行控制逻辑、管理面和需要复杂分支判断的任务;第二类是专用加速单元,例如包处理引擎、加密引擎和正则引擎,它们以流水线或并行阵列方式工作,追求确定性时延与高吞吐。实际工程中,一个常见的做法是:由 Arm 核负责建立流表、处理异常报文和运行管理服务,而将常规转发、加解密和压缩交给加速单元。这样既能保证灵活性,又能避免通用核成为瓶颈。
需要特别注意的是,DPU 的“计算”并不等同于“跑应用”。它的计算单元更多是围绕数据面路径设计的,因此评估其能力时,应关注包处理速率、时延抖动、并发流表规模和加速引擎吞吐,而不是单纯看 CPU 主频或核数。
网络接口与存储层次
网络接口方面,Marvell DPU 通常提供多个以太网端口,并支持将部分端口以“代表端口”形式暴露给主机,使主机看到的是标准网卡接口,而实际转发和策略执行发生在 DPU 内部。主机与 DPU 之间通过 PCIe 连接,DPU 可作为 PCIe 端点,也可在部分场景下作为 PCIe 主机或支持 CXL 内存语义。
存储层次则呈现明显的“近计算”特征:最靠近处理引擎的是片上 SRAM 与队列缓存,用于存放报文描述符和流表项;其次是片外 DDR,用于存放较大规模的表项、日志和操作系统;再往外才是通过 PCIe 访问的主机内存。理解这一层次关系,有助于判断哪些数据应放在片上、哪些可以放在 DDR、哪些必须留在主机侧。
板级形态:从芯片到可部署的卡
芯片本身只是硅片,真正交付到服务器中的是板级形态。Marvell DPU 常见的板级形态包括 PCIe 加速卡(半高半长或全高全长)、OCP 3.0 网卡形态,以及面向特定平台的 SmartNIC 模块。板级设计需要处理供电、散热、时钟、SerDes 走线、DDR 布线以及 PCIe 金手指或 OCP 连接器。对于工程部署而言,板级形态直接决定了它能插入哪种服务器、能提供几个网络端口、功耗预算是多少,以及是否需要额外供电。
一个典型的部署判断逻辑是:如果服务器需要 2×100G 端口且功耗预算在 75W 以内,通常会选择单宽 PCIe 卡形态;如果需要 400G 端口并支持 CXL 内存扩展,则往往需要全高全长卡和额外供电。板级形态不是“外观差异”,而是与端口数量、散热能力和主机接口能力直接绑定的工程约束。
建立整体认知的检查清单
在阅读具体型号手册或进行方案选型时,可以按以下顺序快速建立认知:
- 确认芯片属于哪一代 OCTEON 系列,通用核架构与核数是多少。
- 确认可编程数据面的编程模型(P4 版本、表项规模、是否支持状态化处理)。
- 确认网络接口速率、端口数量、是否支持代表端口模式。
- 确认主机接口是 PCIe Gen4/Gen5 还是 CXL,带宽是否满足数据面需求。
- 确认存储层次中 DDR 容量、片上缓存大小以及是否支持外部存储扩展。
- 确认板级形态、功耗、散热与服务器兼容性。
总体来看,Marvell DPU 的硬件架构可以概括为:以 Arm 通用核为控制中枢,以可编程数据面和专用加速引擎为吞吐主力,以多速率以太网接口为对外通道,以片上缓存—片外 DDR—主机内存构成分层存储,最终通过 PCIe/OCP 板级形态交付到服务器。理解这五层关系,就掌握了后续讨论卸载、编程和性能调优的硬件基础。