NOTICE: The Processors Wiki will End-of-Life in December of 2020. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Ethernet Connectivity via GPMC

From Texas Instruments Wiki
Jump to: navigation, search
{{#switchcategory:MSP430=<McuHitboxHeader/>|C2000=<McuHitboxHeader/>|Stellaris=<McuHitboxHeader/>|TMS570=<McuHitboxHeader/>|MCU=<McuHitboxHeader/>|MAVRK=<MAVRKHitboxHeader/>|<HitboxHeader/>}}


Purpose[edit]

The purpose of this article is to describe a solution for connecting Ethernet to various devices, such as OMAP35x and AM37x, via GPMC.

Block Diagram[edit]

Ethernet Solution block diagram.jpg

Schematics[edit]

Below is one example of connecting an Ethernet MAC/PHY using the SMSC LAN9220. Vist the OMAP3530 download page on Mistral's site to get the complete schematic solution. OMAP3 Ethernet schematic.jpg

Performance Measurements[edit]

These numbers are taken from the PSP Feature Performance Guide

Ethernet TCP - 100Mbps Mode Performance
TCP Window Size
(in KBytes)
Bandwidth - OMAP35x
(in Mbits/sec)
Bandwidth - AM3517
(in Mbits/sec)
Bandwidth - AM/DM37x
(in Mbits/sec)
16 47.2 22.2 54.9
32 47.3 38.4 56.1
64 46.6 64.6 53.8
128 46.5 87.1 53.8

The performance numbers were captured using the iperf tool. Usage details are mentioned below:

  • On the DUT iperf is invoked in client mode  : "-c <server ip> -w <window size> -d -t60"
  • On PC Host invoke iperf in the server mode  : "-s" - window size default of 212KB
  • The transfers are measured over a duration of 60Secs
  • Cross cable is used to measure performance.
  • Speed is set to 100Mbps
  • Power Management disabled for measurement


Ethernet UDP - 100Mbps Mode Performance
UDP Buffer Size
(in KBytes)
Bandwidth - OMAP35x
(in Mbits/sec)
Bandwidth - AM3517
(in Mbits/sec)
Bandwidth - AM/DM37x
(in Mbits/sec)
16 60.6 101 48.6
32 60.6 100.9 48.8
64 60.7 100.9 48.9
128 60.6 110.1 48.7

The performance numbers were captured using the iperf tool. Usage details are mentioned below:

  • On the PC Host iperf is invoked in client mode  : "-c <server ip> -w <window size> -d -b 100M -t60"
  • On DUT invoke iperf in the server mode  : "-s -u -w 256k "
  • The transfers are measured over a duration of 60Secs
  • Cross cable is used to measure performance.
  • Speed is set to 100Mbps
  • Power Management disabled for measurement

Software[edit]

Drivers can be found as part of the u-boot source code found in the PSP (OMAP35x PSP). Relevant functions are likely to be found in the following directories:

  • u-boot_src\net\
  • u-boot_src\drivers\net

For an example on using some of this code, refer to the ITBOK source. Specifically, the ethernet_test() function found in ITBOK_src\EVM3530_ITBOK\diagnostics\src\automation.c. Here is a sample output of what the function performs:

Starting Ethernet Test...
Server IP address is 192.168.1.1
smc911x: detected LAN9220 controller
smc911x: phy initialized
smc911x: MAC 00:50:c2:7e:8e:58
Using smc911x-0 device
host is alive

Ethernet Test Completed... PASS

FAQs[edit]

Are gigabit Ethernet speeds possible?
Currently, there are no reference designs available for gigabit Ethernet. However, Asix provides the AX88180, a gigabit Ethernet controller.
What other Ethernet PHYs can I use?
The LAN9115, LAN9220 and LAN9221 from SMSC have been implemented with the OMAP35x processor.
Is it possible to get better performance than what is stated in the PSP documentation?
Some users have seen better performance using the LAN9221. See this forum thread for more details.

Useful Links[edit]

Ethernet Driver Details - Contains information about the Linux driver, including performance measurments for OMAP35x, AM35x and AM/DM37x devices.

AM/DM37x Overview

ARM and DSP Microprocessors Forum

Demystifying Ethernet Performance

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Ethernet Connectivity via GPMC here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Ethernet Connectivity via GPMC here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Ethernet Connectivity via GPMC here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Ethernet Connectivity via GPMC here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity

{{#switchcategory:MSP430=<McuHitboxFooter/>|C2000=<McuHitboxFooter/>|Stellaris=<McuHitboxFooter/>|TMS570=<McuHitboxFooter/>|MCU=<McuHitboxFooter/>|MAVRK=<MAVRKHitboxFooter/>|<HitboxFooter/>}}