AM261x MCU+ SDK  10.02.00
Ethernet Performance on AM261x

Introduction

This section provides the performance numbers of Ethernet drivers using CPSW peripheral in MCU+ SDK

Setup Details

SOC Details Values
Core R5F
Core Operating Speed 400 MHz
Memory Type MSRAM
Cache status Enabled

Layer 2 Performance

Latency defination

Configuration Details

Configuration Value
Processing Core Main R5F0 Core 0
Core Frequency 400 MHz
Ethernet Interface Type RGMII at 1 Gbps
Packet buffer memory MSRAM (un-cached)
Scatter-gather TX Yes
Scatter-gather RX Yes
CPDMA interrupt pacing Yes
RTOS FreeRTOS
RTOS application Modified Enet CPSW Loopback Example
example
Host PC tool version nload
Rx packet length 200 B
Tx packet length 200 B


Layer 2 Latency

Parameter CPU<->CPSW
Latency Value (ns)
PHY (DP83869HM)Latency
(from datasheet) in ns
Total Latency
(ns)
RX Latency 4756 193 4949
TX Latency 13225 384 13609

Layer-2 Hardware Switching Latency for CPSW

Configuration Value
EVM Type AM261x-SOM
CPSW CPPI Frequency 320 MHz
Ethernet Interface Type RGMII
PHY model number DP83869
Ethernet Cable Spec CAT-6
Sample size 10 Million Packets
RTOS application Modified Enet Layer 2 CPSW SWITCH Example
example


Test Setup

Connections for Latency Measurement

CPSW Latency for RGMII

Datagram Length Latency @ 1Gbps link (in us) Latency @ 100Mbps link (in us) Latency @ 10Mbps link (in us)
Without Cut-ThroughWith Cut-Through Without Cut-ThroughWith Cut-Through Without Cut-ThroughWith Cut-Through
64 Bytes 1.81.7 7.97.8 73.471.9
256 Bytes 3.12.0 23.013.8 227.3135.6
512 Bytes 5.22.0 43.513.8 432.0135.6
1518 Bytes 13.22.0 124.013.8 1237.0135.6

TCP/IP Performance

Configuration Details

Configuration Value
Processing Core Main R5F0 Core 0
Core Frequency 400 MHz
Ethernet Interface Type RGMII at 1 Gbps
Packet buffer memory MSRAM (cached)
Hardware checksum offload Enabled on Tx side
Enabled on Rx Side
Scatter-gather TX Yes
Scatter-gather RX Yes
CPDMA interrupt pacing Yes
RTOS FreeRTOS
RTOS application Enet Lwip CPSW Example example
TCP/IP stack LwIP version STABLE-2_2_0_RELEASE
Host PC tool version iperf v2.0.10
Number of Rx packet buffers 32
Number of Tx packet buffers 16


TCP Throughput

Test Bandwidth
(Mbps)
CPU Load
(%)
TCP RX19598
TCP TX158100
TCP BidirectionalRX=73
TX=87
100

Host PC commands:

  • TCP Rx and Tx (Sequential):
    $iperf -c <evm_ip> -r
  • TCP Rx and Tx (Bidirectional):
    $iperf -c <evm_ip> -d

UDP Throughput

Test Datagram Length = 64B Datagram Length = 256B Datagram Length = 512B Datagram Length = 1470B
Bandwidth (Mbps)CPU Load (%)Packet Loss (%) Bandwidth (Mbps)CPU Load (%)Packet Loss (%) Bandwidth (Mbps)CPU Load (%)Packet Loss (%) Bandwidth (Mbps)CPU Load (%)Packet Loss (%)
UDP RX 5410.0 5200.0 25480.0 50420.0
10720.0 15530.0 50850.7 60480.0
15917.3 25810.15 55950.4 95720.0
UDP RX (Max) 13911.3 30963.4 58971.1 130.8971.4
UDP TX (Max) 23.71000.0 54.11000.0 1081000.0 3111000.0

Host PC commands:

  • Test with datagram length of 64B:
    $iperf -c <evm_ip> -u -l64 -b <bw> -r
    where <bw> is 5M, 10M, 15M, etc
  • Test with datagram length of 256B:
    $iperf -c <evm_ip> -u -l256 -b <bw> -r
    where <bw> is 25M, 50M, 100M, etc
  • Test with datagram length of 512B:
    $iperf -c <evm_ip> -u -l512 -b <bw> -r
    where <bw> is 25M, 50M, 100M, etc
  • Test with datagram length of 1470B (max):
    $iperf -c <evm_ip> -u -b <bw> -r
    where <bw> is 25M, 50M, 100M, etc

See Also

Ethernet And Networking Enet Lwip CPSW Example