TCP/IP Library
VERSION | RELEASED | COMMENTS | ||
---|---|---|---|---|
6.2.0 | 2025-07-18 | Supports TCP and UDP protocols on the xcore architecture. The library has been updated to use the new SW build system and the MAC components in the new lib_ethernet, and includes an example of a simple web server application. | VIEW HTML VIEW PDF | ZIP |
View older versions | ||||
6.0.0rc2 | 2017-11-28 | DOWNLOAD PDF | ZIP | |
4.0.2rc1 | 2016-01-07 | DOWNLOAD PDF | ZIP | |
4.0.0rc1 | 2015-03-22 | DOWNLOAD PDF | ZIP |
Summary¶
lib_xtcp
is a library providing implementations of the Ethernet transport
layer, designed to support host-to-host network communication by handling data
exchange typically using TCP or UDP protocols.
It provides a software defined Ethernet transport stack implementation that
connects to and runs on the XMOS Ethernet library lib_ethernet
to support
layer-4 traffic over Ethernet via MII or RGMII, at 10/100/1000 Mb/s Ethernet data
rates.
The library provides two alternative TCP/UDP/IP protocol stacks for XMOS devices. See the following section for further details.
Stacks¶
This library provides two different TCP/IP stack implementations ported to the xCORE architecture.
uIP stack¶
The first stack ported is the uIP (micro IP) stack. The uIP stack has been designed to have a minimal resource footprint. As a result, it has limited performance and does not provide support for TCP windowing.
lwIP stack¶
The second stack ported is the lwIP (lightweight IP) stack. The lwIP stack requires more resources than uIP, but is designed to provide better throughput and also has support for TCP windowing.
Features¶
TCP and UDP connection handling
Common API to selectable TCP stack, uIP/LwIP
TCP, UDP, DHCP, IP4LL, ICMP, IGMP
Low level, event based interface for efficient memory usage
Supports IPv4 only, not IPv6
Known issues¶
psock.c does output ftpgroup warnings. This does not affect operation. This is due to the stack not being calculable on code paths with a function pointer.
Development repo¶
Required tools¶
XMOS XTC Tools: 15.3.1
Required libraries (dependencies)¶
Support¶
This package is supported by XMOS Ltd. Issues can be raised against the software at http://www.xmos.com/support