Triple-Speed Ethernet IP User Guide: Agilex™ 3 and Agilex™ 5 FPGAs and SoCs
ID
813669
Date
8/04/2025
Public
1. About Triple-Speed Ethernet IP for Agilex™ 3 and Agilex™ 5 devices
2. Getting Started
3. Parameter Settings
4. Functional Description
5. Configuration Register Space
6. Interface Signals
7. Design Considerations
8. Timing Constraints
9. Testbench
10. Triple-Speed Ethernet Debug Checklist
11. Software Programming Interface
12. Triple-Speed Ethernet IP User Guide: Agilex™ 3 and Agilex™ 5 FPGAs and SoCs Archives
13. Document Revision History for the Triple-Speed Ethernet IP User Guide: Agilex™ 3 and Agilex™ 5 FPGAs and SoCs
A. Ethernet Frame Format
B. Simulation Parameters
4.1.1. MAC Architecture
4.1.2. MAC Interfaces
4.1.3. MAC Transmit Datapath
4.1.4. MAC Receive Datapath
4.1.5. MAC Transmit and Receive Latencies
4.1.6. FIFO Buffer Thresholds
4.1.7. Congestion and Flow Control
4.1.8. Magic Packets
4.1.9. MAC Local Loopback
4.1.10. MAC Reset
4.1.11. PHY Management (MDIO)
4.1.12. Connecting MAC to External PHYs
5.1.1. Base Configuration Registers (Dword Offset 0x00 – 0x17)
5.1.2. Statistics Counters (Dword Offset 0x18 – 0x38)
5.1.3. Transmit and Receive Command Registers (Dword Offset 0x3A – 0x3B)
5.1.4. Supplementary Address (Dword Offset 0xC0 – 0xC7)
5.1.5. IEEE 1588v2 Feature (Dword Offset 0xD0 – 0xD6)
5.1.6. Deterministic Latency (Dword Offset 0xE1– 0xE3)
5.1.7. IEEE 1588v2 Feature PMA Delay
6.1.1. 10/100/1000 Ethernet MAC Signals
6.1.2. 10/100/1000 Multiport Ethernet MAC Signals
6.1.3. 10/100/1000 Ethernet MAC with 1000BASE-X/SGMII PCS Signals
6.1.4. 10/100/1000 Ethernet MAC with Internal FIFO Buffers, and 1000BASE-X/SGMII 2XTBI PCS with Embedded PMA (GTS) Signals
6.1.5. 10/100/1000 Multiport Ethernet MAC with 1000BASE-X/SGMII PCS Signals
6.1.6. 1000BASE-X/SGMII PCS Signals
6.1.7. 1000BASE-X/SGMII PCS and PMA (LVDS) Signals
6.1.8. 1000BASE-X/SGMII 2XTBI PCS Signals
6.1.9. 10/100/1000 Ethernet MAC with 1000BASE-X/SGMII PCS and Embedded PMA (LVDS) Signals
6.1.10. 10/100/1000 Multiport Ethernet MAC with 1000BASE-X/SGMII PCS and Embedded PMA (LVDS) Signals
6.1.11. 10/100/1000 Ethernet MAC without Internal FIFO Buffers with 1000BASE-X/SGMII 2XTBI PCS and Embedded PMA Signals (GTS) with IEEE 1588v2
6.1.12. 10/100/1000 Multiport Ethernet MAC with 1000BASE-X/SGMII PCS and Embedded PMA Signals (LVDS) with IEEE 1588v2
6.1.1.1. Clock and Reset Signals
6.1.1.2. Clock Enabler Signals
6.1.1.3. MAC Control Interface Signals
6.1.1.4. MAC Status Signals
6.1.1.5. MAC Receive Interface Signals
6.1.1.6. MAC Transmit Interface Signals
6.1.1.7. Pause and Magic Packet Signals
6.1.1.8. MII/GMII/RGMII Signals
6.1.1.9. PHY Management Signals
6.1.11.1. Deterministic Latency Clock Signals
6.1.11.2. IEEE 1588v2 RX Timestamp Signals
6.1.11.3. IEEE 1588v2 TX Timestamp Signals
6.1.11.4. IEEE 1588v2 TX Timestamp Request Signals
6.1.11.5. IEEE 1588v2 TX Insert Control Timestamp Signals
6.1.11.6. IEEE 1588v2 Time-of-Day (TOD) Clock Interface Signals
B.2. Test Configuration Parameters
You can use these parameters to create custom test scenarios.
Parameter | Description | Default |
---|---|---|
Supported in configurations that contain the 10/100/1000 Ethernet MAC | ||
TB_RXFRAMES | Enables local loopback on the Ethernet side (GMII/MII). The value must always be set to 0. | 0 |
TB_TXFRAMES | Specifies the number of frames to be generated by the Avalon® streaming Ethernet frame generator. | 5 |
TB_RXIPG | IPG on the receive path. | 12 |
TB_ENA_VAR_IPG | 0: A constant IPG, TB_RXIPG, is used by the GMII/MII Ethernet frame generator. 1: Enables variable IPG on the receive path. |
0 |
TB_LENSTART | Specifies the payload length of the first frame generated by the frame generators. The payload length of each subsequent frame is incremented by the value of TB_LENSTEP. | 100 |
TB_LENSTEP | Specifies the payload length increment. | 1 |
TB_LENMAX | Specifies the maximum payload length generated by the frame generators. If the payload length exceeds this value, it wraps around to TB_LENSTART. This parameter can be used to test frame length error by setting it to a value larger than the value of TB_MACLENMAX. | 1500 |
TB_ENA_PADDING | 0: Disables padding. 1: If the length of frames generated by the GMII/MII Ethernet frame generator is less than the minimum frame length (64 bytes), the generator inserts padding bytes to the frames to make up the minimum length. |
1 |
TB_ENA_VLAN | 0: Only basic frames are generated.
1: Enables VLAN frames generation. This value specifies the number of basic frames generated before a VLAN frame is generated followed by a stacked VLAN frame. |
0 |
TB_STOPREAD | Specifies the number of packets to be read from the receive FIFO before reading is suspended. You can use this parameter to test FIFO overflow and flow control. | 0 |
TB_HOLDREAD | Specifies the number of clock cycles before the Avalon® streaming monitor stops reading from the receive FIFO. | 1000 |
TB_TX_FF_ERR | 0: Normal behavior. 1: Drives the Avalon® streaming error signal high to simulate erroneous frames transmission. |
0 |
TB_TRIGGERXOFF | Specifies the number of clock cycles from the start of simulation before the xoff_gen signal is driven. | 0 |
TB_TRIGGERXON | Specifies the number of clock cycles from the start of simulation before the xon_gen signal is driven high. | 0 |
RX_COL_FRM | Specifies which frame is received with collision. Valid in fast Ethernet and half-duplex mode only. | 0 |
RX_COL_GEN | Specifies which nibble within the frame collision occurs. | 0 |
TX_COL_FRM | Specifies which frame is transmitted with a collision. Valid in fast Ethernet and half-duplex mode only. | 0 |
TX_COL_GEN | Specifies which nibble within the frame collision occurs on the transmit path. | 0 |
TX_COL_NUM | Specifies the number of consecutive collisions during retransmission. | 0 |
TX_COL_DELAY | Specifies the delay, in nibbles, between collision and retransmission. | 0 |
TB_PAUSECONTROL | 0: GMII frame generator does not respond to pause frames.
1: Enables flow control in the GMII frame generator. |
1 |
TB_MDIO_SIMULATION | Enable / Disable MDIO simulation. | 0 |
Supported in configurations that contain the 1000BASE-X/SGMII PCS | ||
TB_SGMII_HD | 0: Disables half-duplex mode. 1: Enables half-duplex mode. |
0 |
TB_SGMII_1000 | 0: Disables gigabit operation.
1: Enables gigabit operation. |
1 |
TB_SGMII_100 | 0: Disables 100 Mbps operation. 1: Enables 100 Mbps operation. |
0 |
TB_SGMII_10 | 0: Disables 10 Mbps operation. 1: Enables 10 Mbps operation. |
0 |
TB_TX_ERR | 0: Disables error generation.
1: Enables error generation. |
0 |