Skip to content

OpenETH 1.1.0 — Gigabit Ethernet RTL and Linux driver / 千兆以太网RTL与Linux驱动

Latest

Choose a tag to compare

@XLxiaoliaoGmail XLxiaoliaoGmail released this 17 Oct 14:06
· 1 commit to main since this release

OpenETH 1.1.0

Reusable Gigabit Ethernet components: a full-duplex MAC, RGMII digital interface, frame storage and clock-domain crossing, OpenNIC DMA/CSR interfaces, and a Linux platform driver. Sources, generated SystemVerilog, component tests and file-specific licenses are included.

Build and use · Interfaces · Verification and measurements.

On the 50 MHz Rocket/Linux reference system, TCP receive is 27.089 Mbit/s, transmit 25.235 Mbit/s, and simultaneous receive-plus-transmit 24.748 Mbit/s. Payload integrity passed for 256 MiB in each direction, with intentional byte corruption detected. UDP loss is observed at offered rates of 18/20 Mbit/s; zero-loss operation is not guaranteed at those rates. Full PCB/package/PVT timing and whole-design CDC signoff are not established.

This repository supplies components and integration sources, not a complete FPGA board image. Linux, Chipyard and licensed FPGA IP are external dependencies. Build the driver for the target kernel and enable the four copy parameters as documented. Unsupported features include 10/100 Ethernet, PTP, PFC, hardware checksum offload and TCP segmentation offload.

Original OpenETH code is MIT-licensed. Third-party MIT/BSD-3-Clause notices and the Linux driver's Dual MIT/GPL module declaration apply to their files. MIT commercial use does not require a paid service. Optional integration and customization: https://openrtl.top/?lang=en .

简体中文

OpenETH提供可复用的千兆全双工MAC、RGMII数字接口、整帧缓存与跨时钟域传输、OpenNIC DMA/CSR接口及Linux平台驱动,包含源码、生成的SystemVerilog、组件测试和逐文件许可。构建使用、接口及验证实测见上述版本链接。

50MHz Rocket/Linux参考系统的TCP接收为27.089Mbit/s、发送25.235Mbit/s、同时双向合计24.748Mbit/s。每向256MiB字节完整性通过,故改字节能被检测。UDP在18/20Mbit/s发送速率下有丢包,不能保证这些速率下零丢包;完整PCB/封装/PVT时序及全设计CDC尚未签核。

本仓库交付组件及集成源码,不是完整FPGA板镜像。Linux、Chipyard及合法厂商IP为外部依赖;驱动须按目标内核构建,并按指南启用四个拷贝参数。不支持10/100、PTP、PFC、硬件校验和卸载或TCP分段卸载。

原创OpenETH代码采用MIT,第三方MIT/BSD-3-Clause及驱动Dual MIT/GPL模块声明分别适用。MIT商用不要求购买服务;可选集成定制见OpenRTL官网。