Versal Gen2连载第五篇--KPL3858 PS 10GbE/1GbE及PL ETH介绍和测试

作者:Fisher Yang,文章来源::FPGA FAE技术分享选集

前言

开普勒KPL3858评估板搭载AMD Versal AI Edge Series Gen 2器件(2VE3858),板上共有四个以太网接口:一个PS侧10G SFP28光口、一个PS侧1G RJ45网口,以及两个PL侧1G以太网接口。本篇逐一介绍这四个接口的硬件架构和测试方法。

其中PS 10GbE是Versal ARM处理器系统首次集成的10G以太网硬核,也是本文的重点介绍对象。

一、PS 10GbE(SFP28)

1.1 概述

AMD Versal AI Edge Series Gen 2和Versal Prime Series Gen 2是首批在ARM处理器系统(PS)中集成10G以太网硬核的Versal器件。这一硬核(10 GbE)支持10 Gbps、5 Gbps、2.5 Gbps和1 Gbps四种速率,使用1路GTYP收发器通道,无需外部PHY芯片即可直接驱动SFP28光模块,或用高速线缆直连。

KPL3858板上的SFP28接口(J9)通过GTYP Bank 105的Lane 3连接到2VE3858的PS 10GbE硬核,参考时钟由板载时钟器件提供。

图1 VEK385板卡SFP28接口原理图(与GTYP收发器连接)

图2 GTYP Bank 105引脚分配(10GbE/PCIe/HSDP共享MUX)

1.2 硬核架构

PS 10GbE硬核内部集成了完整的MAC、PCS和DMA,主要特性如下:

1. 支持10G/5G/2.5G/1G四种速率,通过PS Wizard配置线速模式;

2. 时间敏感网络/音视频桥接(TSN/AVB)支持;

3. IEEE 1588 PTP精确时间协议;

4. 4个优先级队列;

5. 支持Jumbo帧(最大10K字节);

6. PL FIFO端口(部分器件支持);

7. 如需MDIO控制外部PHY,需通过MIO引脚配合GEM MDIO使用;

图3 10Gigabit Ethernet (10 GbE)

1.2.1 10G/5G模式(USXGMII)

10G和5G模式使用USXGMII(Universal Serial 10 Gigabit Media Independent Interface)接口,PCS实现IEEE 802.3 Clause 49(10GBASE-R)的64B/66B编码,编码效率高达97%(相比8B/10B的80%)。

1.2.2 2.5G/1G模式(SGMII)

2.5G和1G模式使用SGMII接口,PCS采用8B/10B编码,通过GTYP收发器与外部PHY通信。2.5G模式实现了IEEE 802.3cb规定的链路故障状态机(LFSM)和链路故障信令。两种速率的MAC模块通过MUX与10G/5G MAC共享同一DMA。

1.2.3 GTYP MUX共享机制

2VE3858的GTYP(x4)由多个控制器共享,通过PHY MUX最多可同时使用其中两个:

A. 2路PCIe Gen5x4控制器(MDB5)

B. 高速调试端口(HSDP)

C. 10G以太网(10 GbE)

常用配置组合如下:

1.3 Linux驱动支持

AMD已为PS 10GbE提供Linux驱动,当前状态(2025年):Linux驱动已可用(☑ Linux Driver Support Current)。驱动基于标准网络子系统,支持标准的ifconfig/ip等命令配置。

1.4 10GbE连通性测试

本测试通过PC与KPL3858直连,验证10G链路的基本连通性。

1.4.1 硬件准备

· 开普勒KPL3858评估板,SFP28接口(J9)

· PC主机,安装10G PCIe网卡(如Intel X550/X710等)

· SFP28 高速线缆直连或光模块+光纤(连接PC网卡与KPL3858 SFP28口)

· USB串口线(连接KPL3858串口,用于板端配置)

图4 KPL3858板卡SFP28接口硬件连接

图5 PC PCIe 10Gb网卡连接实物图

1.4.2 PC端配置(Ubuntu)

在PC Ubuntu系统中,为10G网卡接口配置IP地址:

图6 为10G网卡接口配置IP地址

注意:enp1s0f0为PC上10G网卡的接口名,实际名称以 ip link 命令输出为准。

1.4.3 板端配置

通过KPL3858串口终端,为板端10G以太网接口配置IP地址:

sudo ifconfig eth1 192.168.199.200

图7 为KPL3858 10GbE接口配置IP地址

1.4.4 连通性验证

在PC Ubuntu终端执行ping测试:

ping 192.168.199.200

收到回复即表示10G链路连通测试通过。

图8 PC端ping测试结果

1.5 10GbE性能测试(iperf3)

使用iperf3工具测试10G链路的实际吞吐量。

1.5.1 安装iperf3

板端和PC端均需安装iperf3:

sudo apt install iperf3 # Ubuntu/Debian
1.5.2 启动服务端(板端)

iperf3 -s

1.5.3 运行客户端(PC端)

TCP吞吐量测试:

iperf3 -c 192.168.199.200 -t 30

UDP吞吐量测试(指定目标带宽):

iperf3 -c 192.168.199.200 -u -b 10G -t 30 -P 8

图9 10GbE吞吐量测试截图

二、PS 1GbE(RJ45)

2.1 概述

开普勒KPL3858板上的PS 1GbE接口(eth0)是Versal PS内置的GEM(Gigabit Ethernet MAC)控制器,通过板载PHY芯片连接RJ45网口,支持标准的10/100/1000 Mbps自适应以太网。这是Versal系列一直以来具备的标准网络接口,主要用于日常调试、文件传输和远程登录等。

2.2 连通性测试

2.2.1 硬件连接

用网线将KPL3858的RJ45网口(J52)与PC或交换机连接,确保板卡与PC处于同一网段。

2.2.2 查看板端IP

板卡启动后,通过串口终端执行:

ifconfig

eth0接口的IP地址为 192.168.110.58。

图10 板端ifconfig输出(eth0 IP: 192.168.110.58)

2.2.3 连通性验证

在板端串口终端ping PC的IP地址:

ping 192.168.110.49

收到回复即表示1G链路连通测试通过。

图11 板端ping PC测试结果

三、PL ETH(Tri-Mode Ethernet MAC)

开普勒KPL3858板上还有两个PL侧1G以太网接口,接口测试可通过Vivado中添加AMD Tri-Mode Ethernet MAC(TEMAC)IP核实现。TEMAC IP(PG051)是Vivado IP库中的标准以太网MAC核,支持10/100/1000 Mbps速率,通过RGMII接口连接板载PHY芯片。该接口测试可参考官方文档,就不再赘述。

四、总结

本文介绍了开普勒KPL3858评估板上四个以太网接口的架构和测试方法:

· PS 10GbE(SFP28):Versal ARM PS首次集成的10G以太网硬核,使用GTYP收发器,支持10G/5G/2.5G/1G多速率,通过USXGMII(64B/66B)和SGMII(8B/10B)两套PCS实现,与PCIe/HSDP共享GTYP MUX。测试通过PC 10G网卡直连,iperf3验证吞吐量。

· PS 1GbE(RJ45):标准GEM控制器,插网线即用,ping测试验证连通。

· PL ETH(×2):通过Vivado添加Tri-Mode Ethernet MAC IP实现,RGMII接口连接板载PHY芯片。

下一篇预告:开普勒KPL3858(六)PCIe Gen5示例设计和测试,敬请期待。

如果您对Versal Gen2及KPL3858开发板感兴趣,欢迎联系您身边的科通FAE及Sales,也欢迎邮件联系:
simonyang@comtech.cn
charlesxu@comtech.cn