基于国产化平台的多路千兆以太网接口设计与实现

VSole2021-07-23 13:30:22

摘 要:

千兆以太网通信接口国产化是网络通信设备实现自主可控的第一步,也是应用最广泛的技术之一。考虑到国产化平台成本因素,采用较低成本的CPU和FPGA实现多路以太网接口交互平台。若按照标准设计,多路接口设计在较低规格FPGA中会出现时钟资源欠缺和时序不稳定现象。针对该问题,将接收时钟共享、相位取反、时序优化以及相位偏移调整等多种方式相结合,解决时钟资源和时序不稳定问题,实现了国产化FPGA与CPU多路千兆以太网接口交互平台。

内容目录:

0 引 言

1 国产化交互平台设计

2 FPGA设计与实现

2.1 FPGA总体设计

2.2 时钟资源优化

2.3 多路RGMII接口时序优化

2.3.1 单路RGMII接口调试

2.3.2 多路RGMII接口调试

3 验证结果

4 结 语

00引 言

在目前通信设备中,千兆以太网通信接口已成为最常见和通用的数据传输通道。本文采用较低成本的国产化处理器、国产化FPGA和国产化PHY芯片搭建多路千兆以太网接口交互处理平台,可满足多路以太网数据内外交互需求,也可根据自身需求,基于FPGA设计实现自定义功能。

01国产化交互平台设计

为了确保平台的应用推广性,国产化平台设计以实现数据交互性能达到1 000 Mb/s为硬性指标,采用较低成本和较低规格的国产化器件。本文采用CPU(龙芯2K1000)、FPGA(国微SMQ2V6000)和PHY芯片(JEM88E111)等国产化器件。它的平台架构如图1所示。

图1 国产化交互硬件平台

多路千兆以太网接口国产化交互平台对外提供2个通信网口,与背板采用Serdes总线进行交互,可实现自定义协议数据高速传输。FPGA与CPU连接接口为RGMII,与以太网芯片连接接口为GMII,可在FPGA内部实现自定义多路千兆数据交互。SMQ2V6000资源情况,如表1所示。

表1 SMQ2V6000资源情况

02FPGA设计与实现

2.1 FPGA总体设计


FPGA设计主要包括GMII接口模块、RGMII接口、时钟模块和自定义交互处理模块,总体设计框图如图2所示。

图2 FPGA总体设计

GMII和RGMII接口模块主要使用厂家提供的IP core,经过剪裁实现数据收发,对内统一将GMII接口和RGMII接口数据转化为SPI-3(System Packet Interface)总线,便于平台内部进行自定义交互处理。时钟模块对FPGA全局时钟进行管理规划,分别为各个功能模块提供处理时钟;自定义交互模块用户可根据自身需求进行代码开发。

2.2 时钟资源优化

根据厂家提供的IP Core用户手册,GMII和RGMII接口数据接收、发送均需独立处理时钟。单路GMII接口时钟方案较为简单,其时钟逻辑框图如图3所示。接收时钟通过1个BUFG驱动作为IP Core的gmii_rx_clk时钟源,发送时钟经过1个BUFG作为gtx_clk时钟源和GMII接口线路发送时钟。

图3 GMII接口时钟逻辑

由于RGMII接口是用时钟上下沿处理数据,其时钟处理较复杂。发送方向,时钟通过1个DCM和4个BUFG驱动相位为0、90、180、270的4种时钟。接收方向,线路时钟通过1个DCM和2个BUFG恢复相位为0°和180°的2种时钟。它的时钟逻辑框图如图4所示。

图4 RGMII接口时钟逻辑

通过以上分析可得,FPGA实现2路GMII接口和2路RGMII接口所需全局时钟缓冲器为16个,已将SMQ2V6000全局时钟缓冲器资源全部占用,导致FPGA其他逻辑模块无法使用时钟资源。所以,必须优化时钟资源。

时钟资源可通过以下方案进行优化:

(1)2路GMII接口和2路RGMII线路发送时钟可共用1个,时钟源为FPGA内部全局输入时钟,可减少使用3个时钟缓冲器;

(2)RGMII发送时钟模块只产生0°相位和90°相位的时钟,其180°相位和270°相位的时钟采用0°相位和90°相位的时钟直接取反得到,2路RGMII接口则可减少使用6个时钟缓冲器;

(3)RGMII接收时钟180°相位也可使用取反方式代替,可节约2个时钟缓冲器资源。

表2 时钟缓冲器使用数量对比

通过时钟优化后,2路GMII和2路RGMII仅使用7个时钟缓冲器,因此SMQ2V6000资源完全满足设计需求。

2.3 多路RGMII接口时序优化

RGMII接口所有数据以及指示信号是时钟上下沿采样,时钟频率为125 MHz高频。在FPGA设计中必须对RGMII接口时钟、线路IOB、电平/驱动、上下沿采样以及时钟相位和位置进行约束,否则会引起线路数据恢复错误或不稳定现象。本文将对国产化FPGA的多路RGMII接口调试常遇到的问题进行排查和分析。

2.3.1 单路RGMII接口调试

单路RGMII接口接收方向无数据,一般是由硬件问题和接收时钟与数据时序问题引起的。因此,需从这两方面入手进行问题排查。排查流程如图5所示。

图5 接收方向问题排查流程

硬件问题主要包括线路时钟频率稳定问题、PCB布线等长以及接口电平是否符合IPCore要求。若硬件设计均满足要求,RGMII接口接收方向依然无数据,则可能是由于接收时钟与数据时序问题引起的。RGMII接口采用接收时钟上升沿恢复低4 bit,下降沿恢复高4 bit。若时钟不稳定或者出现相位差,则导致恢复数据不正确,下一个模块采不到正确的帧头则会丢弃数据。该问题可在约束文件中对接收时钟进行频率和相位调整解决。

2.3.2 多路RGMII接口调试

由于国产化FPGA时钟资源限制,本文采用多路RGMII接口共用发送时钟解决该问题。但是,各路时钟FPGA内部不同的布局则会引起一路RGMII接口收发正常、另一路收发不正常的现象,需对多路RGMII多个接收、发送时钟时序同时进行约束和优化,具体步骤如下。

(1)先调A路,记录各个时钟BUFG、DCM的位置,约束A路所有收方向时钟的BUFG位置。

(2)再调B路,记录各个时钟BUFG、DCM的位置,约束B路所有收方向时钟的BUFG位置。

(3)对比两次BUFG的位置,将相同的BUFG位置写入UCF文件。一般来说,RGMII数据收发不正常是由于发送方向时钟和数据存在相位差,所以在FPGA尽量将两路共用的发送BUFG设置在相近的位置。

(4)约束好时钟位置后,每路采用偏移相位的方法进行调试,根据数据恢复情况将时钟相位调整到最佳位置。

03验证结果

本文在多路千兆以太网接口国产化交互平台上进行结果验证。FPGA内部对RGMII0接口与GMII0接口、RGMII1接口与GMII1接口客户侧数据进行交换,外部在背板上对两路Serdes进行环回处理。它的验证平台如图6所示。

图6 验证平台

验证过程主要在CPU网口0和网口1之间进行数据收发。FPGA内部对各个接口客户侧信号采集,其时序图如图7、图8所示,可得多路GMII和RGMII接口数据收发均正常。网口0和网口1数据收发均正常,证明该国产化平台多路千兆以太网接口数据交互正确稳定。目前,该硬件平台已成功应用于隔离交换项目。

图7 GMII接口时序图

图8 RGMII接口时序图

04结 语

本文搭建了一种低成本的国产化CPU+FPGA硬件平台,针对多路GMII和RGMII接口时钟资源冲突和时序不稳定问题,采用时钟共享、时序优化、相位调整等措施进行解决。大量数据的传输验证了其稳定性和可靠性,实现了多路千兆以太网接口交互。目前,该平台已成功应用于相关项目,同时可以广泛应用于需要多路以太网接口交互和数据处理的平台。

引用本文:戴玲琳,罗劼夫.基于国产化平台的多路千兆以太网接口设计与实现[J].通信技术,2021,54(7):1794-1799.


戴玲琳,硕士,工程师,主要研究方向为网络通信、网络安全技术;
罗劼夫,硕士,工程师,主要研究方向为网络通信、网络安全技术。
选自《通信技术》2021年第7期(为便于排版,已省去原文参考文献)
fpga千兆以太网
本作品采用《CC 协议》,转载必须注明作者和本文链接
很早以前就从影视作品中看到这样的一幕--美国总统、国务卿、参谋长等高官坐在五角大楼办公室里面,现场指挥飞机用导弹攻击地面目标,同时直观看到攻击后的结果,然后一起开心鼓掌微笑···。现实中真的能做到还是仅仅存在于电影电视作品?通过仔细分析美军现役密码装备特点与设计实现思路, 可以确信美军真的能做到, 美军 C5ISR 真的就是这样设计的,美军是如何做到的?值得我们分析分析。
无论是使用内部数据中心的企业,还是迁移至云的企业,数据安全都是其最关心的问题。机密计算(Confidential Computing,简称CC),作为一项突破性技术,因其可以让用户对“使用中”数据进行加密,备受业界关注。
在这种背景下,旨在保护“使用中”数据机密性和完整性的“机密计算”应运而生。与现代版本TEE不同的是,它们内置于芯片的核心中,而不是作为可能会因互连而受到损害的外部附件。微软Azure2017年,微软新增加了一项名为Azure机密计算的安全功能,以确保数据在处理时能得到更多的控制。
2022年,CHES会议上Brian Udugama等人提出了一种名为VITI的FPGA片上传感器,可以用于监测FPGA的能量变化,从而获取同一FPGA上其它电路的侧信息,以实现远程能量攻击。
Detector提供一个完整的测评框架,支持测评人员将待分析的原始波形及分析结果导出到Word文档中,以快速生成测试报告。测试报告内容包括测试信息、测试波形图及相应的测试结果。以TVLA测试为例,生成报告对话框界面如图1所示,生成的测试报告如图2所示。图1 生成报告功能界面图2 生成TVLA测试报告结果02新增标准计时分析功能旧版本Detector支持两种计时分析功能,分别是计时分析-IO、计时分析-明密文相关性。
2021年9月29日在实验室学术年会上,毛伏兵老师做了题为“从计算机系统角度看类脑计算研究”的前瞻报告,分别从类脑计算的现状、面临的挑战和未来可能的研究方向进行了介绍。 现分享本次报告PPT的部分内容,供大家学习和参考。
本文是一份全面的指南,解释了如何使用nProbe Cento构建一个高效的100 Gbit NetFlow传感器。旨在帮助大家充分利用NetFlow技术,以监控和分析高速网络流量。当需要监控分布式网络,了解流经上行链路或关键网段的网络流量时,NetFlow等技术通常是最佳选择。 nProbe Pro/Enterprise和nProbe Cento是软件探针,可用于构建多功能传感器,以多种
提到网络安全或IT安全,大多数人会立即想到基于软件的威胁和防护,例如勒索软件、病毒或其他形式的恶意软件,鲜有人会提及硬件安全的重要性。
VSole
网络安全专家