AM263Px MCU+ SDK: Ethernet Performance on AM263Px

| AM263Px MCU+ SDK 26.00.00 |

Ethernet Performance on AM263Px

# 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

# 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_1_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 RX | 195 | 98
TCP TX | 158 | 100
TCP Bidirectional | RX=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 | 5 | 41 | 0.0 | 5 | 20 | 0.0 | 25 | 48 | 0.0 | 50 | 42 | 0.0
10 | 72 | 0.0 | 15 | 53 | 0.0 | 50 | 85 | 0.7 | 60 | 48 | 0.0
15 | 91 | 7.3 | 25 | 81 | 0.15 | 55 | 95 | 0.4 | 95 | 72 | 0.0
UDP RX (Max) | 13 | 91 | 1.3 | 30 | 96 | 3.4 | 58 | 97 | 1.1 | 130.8 | 97 | 1.4
UDP TX (Max) | 23.7 | 100 | 0.0 | 54.1 | 100 | 0.0 | 108 | 100 | 0.0 | 311 | 100 | 0.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

# Ether-Ring Performance

Traffic Type | Average Latency(us) | Max Latency(us)
--- | --- | ---
Profile-A(Transmit-Heavy) | 44 | 94
Profile-B(Receive-Heavy) | 40 | 96
Profile-C(Symmetric Traffic) | 27 | 80

# Ether-Ring Round Trip Latency with CAN(Vehicle) traffic

Packet Rate(per sec) | Average Latency(us) | Max Latency(us)
--- | --- | ---
2000 | 561 | 569

# XIP Performance

Lwip Application size: 796KB

FLASH: 201KB

Region | Memory
.text | 159KB
.rodata | 42KB

OCRAM: 595KB

Region | Memory
.bss | 471KB
.sysmem | 34KB
.data | 23KB
.stack | 8KB
misc | 59KB

Board POV | MSRAM - OOB | XIP : text and ro data in flash | Opti-flash: RL2 8KB | Opti-flash: RL2 16KB | Opti-flash: RL2 32KB | Opti-flash: RL2 64KB | Opti-flash: RL2 128KB
UDP Tx | 262Mbps at 100% CPU load | 114Mbps at 100% CPU load | 212Mbps at 100% CPU load | 249Mbps at 100% CPU load | 258Mbps at 100% CPU load | 262Mbps at 100% CPU load | 262Mbps at 100% CPU load
UDP Rx | 116Mbps ~1% pkt drop 92% CPU load | 39Mbps ~1% pkt drop 97% CPU load | 53Mbps ~1% pkt drop 98% CPU load | 82Mbps ~1% pkt drop 99% CPU load | 110Mbps ~1% pkt drop 90% CPU load | 110Mbps ~1% pkt drop 88% CPU load | 116Mbps ~1% pkt drop 92% CPU load

# See Also

Ethernet And Networking Enet Lwip CPSW Example Enet CPSW Ether-Ring CAN Example Enet CPSW Ether-Ring Real-time and LWIP Traffic Generator Application Enet CPSW Ether-Ring TSN Example