Eth Usage Guide
Basic Overview
Hardware Features
-
Supports data transfer rates up to 1000 Mbps
-
Supports full-duplex flow control operations (including IEEE 802.3x Pause packets and Priority Flow Control)
-
Supports network statistics functionality
-
Supports Ethernet packet timestamping as defined by IEEE 1588-2002/1588-2008 standards
-
Supports output of PPS (Pulse Per Second) signal
-
Supports programmable Ethernet frame length, up to a maximum of 16 KB
Assumptions and Limitations
-
FIFOs for transmit and receive directions support up to 6 each.
-
Does not support transmission of data exceeding the available buffer size of the controller in use; longer data must be transmitted using Internet Protocol (IP) and Transmission Control Protocol (TCP).
-
The length of a single received frame (including the 14-byte Ethernet header and 4-byte FCS) must be less than or equal to the configured RX buffer length.
-
Module clock frequency is 300 MHz, and the PTP clock period is 20 ns.
Code Paths
-
McalCdd/Ethernet/inc # Header files
-
McalCdd/Ethernet/src/Eth.c # Provides external API interfaces
-
McalCdd/Ethernet/src/Eth_Interrupt.c # Interrupt handling callback function interfaces
-
McalCdd/Ethernet/src/Mac_Lld.c # Wraps register control interfaces for use by API functions
-
Config/McalCdd/gen_s100_sip_B_mcu1/Ethernet/src/Eth_PBcfg.c # Pre-compiled Eth configuration, used to provide initialization attributes for external API calls
-
Config/McalCdd/gen_s100_sip_B_mcu1/Ethernet/src/Mac_Ip_PBcfg.c # Pre-compiled MAC driver configuration, statically dependent on Eth_PBcfg.c
-
samples/Eth/Eth_Test/Eth_test.c # Eth functional test example program
Application Sample
Taking S100's samples/Eth/Eth_Test/Eth_test.c sending an ARP packet as an example: