lib_ethernet

VERSION RELEASED COMMENTS DOCUMENTATION SOFTWARE
4.0.1 2025-03-18 Updated to include support of Ethernet MAC on xcore.ai devices VIEW HTML VIEW PDF ZIP

Summary#

lib_ethernet is a library providing implementations of the Ethernet MAC layer, designed to support network communication by handling data transmission and reception at the Media Access Control level. It provides complete, software defined, Ethernet MAC implementations that support 10/100/1000 Mb/s data rates and are designed to IEEE Std 802.3-2002 specifications.

  • 10/100 Mb/s Ethernet MAC

  • 10/100 Mb/s Ethernet MAC with real-time features

  • 10/100/1000 Mb/s Ethernet MAC with real-time features (xCORE-200 XE/XEF)

  • Raw MII interface

Features#

  • 10/100/1000 Mb/s full-duplex operation

  • Media Independent Interface (MII), Reduced Media Independent Interface (RMII) and Reduced Gigabit Media Independent Interface (RGMII) to the physical layer

  • Configurable Ethertype and MAC address filters for unicast, multicast and broadcast addresses

  • Frame alignment, CRC, and frame length error detection

  • IEEE 802.1Q Audio Video Bridging priority queueing and credit based traffic shaper

  • Support for VLAN-tagged frames

  • Transmit and receive frame timestamp support for IEEE 1588 and 802.1AS

  • Management Data Input/Output (MDIO) Interface for physical layer management

Known issues#

  • RMII MAC hardware testing is done on the XK_ETH_XU316_DUAL_100M board which uses the TI DP83826 PHY. During testing it was noticed that very occasionally (1% of the time) the first packet sent after initialisation may be dropped for certain link partners. Subsequent packets are always OK (#164)

  • RMII MAC implementation is not tested for 10Mbps operation (#87)

  • MII/RMII buffering uses a global for the lock meaning lib is not re-entrant. This may cause problems when running 2 instances of the MAC on the same tile (#126)

Development repo#

Required tools#

  • XMOS XTC Tools: 15.3.1

Required libraries (dependencies)#

Support#

This package is supported by XMOS Ltd. Issues can be raised against the software at http://www.xmos.com/support

Scroll to Top