WR Streamers provide the user with a FIFO-like interface over Ethernet with low latency of transmission that can be configured to be constant (see figure below). The WR Streamers provide a protocol on top of Ethernet that is ideal for streaming of data between VHDL modules over Ethernet networks. The VHDL implementers of applications that require transmission of data between spatially distributed nodes are provided with interface that resembles FIFO. The complexity of sending data over Ethernet (e.g. encapsulation, sanity check) is hidden from the implementer who just writes data in one node and receives the same data in the other node(s) connected to the same network. If the nodes are connected to WR Network, the WR Streamers take advantage of the WR synchronization in two ways: 1) precise measurement of transmission latency and 2) configuration of fixed transmission latency. In the later case, the jitter of the network latency is mitigated by delaying the received data for a short time and providing this data to user's application after a configured time with respect to the time of data transmission. Additionally to transmission and reception of data, WR Streamers provide advanced diagnostics and debugging capabilities that can be accessed via SNMP, WB registers (via PCI or VME) and Command Line Interface (CLI) of WR PTP Core console.
WR Streamers constitute one of the optional interfaces provided in the
Board Support Package of the WR PTP Core (see "Board Support Package"
section of WRPC documentation). They
can be enabled by setting the @ g_fabric_iface@ generic to
STREAMERS
.
Detailed information about WR Streamers
- Principle of Operation
- Top-level module (includes: TX and RX streamer and statistics)
- Testbenches and simulations
- WR PTP Core project that includes WR Streamers as an option
- WR-streamers SNMP diagnostics
Projects that use WR Streamers
- White Rabbit PTP Core Hands-on Training - provides WR Streamers demo (see these slides from day 1 and day 2)
- Upgrade of the BTrain system that distributes the value of magnetic
field in CERN accelerators to use White Rabbit and WR
Streamers
-
BTrain-over-WhiteRabbit
- (publicly accessible) project that integrates WR Streamers for the BTrain application (note extensive documentation possibly helpful for WR Streamers integrators)
-
BTrain-over-WhiteRabbit
- (CERN-only access) wiki page that documents upgrade of the BTrain system to use White Rabbit and WR Streamers
-
BTrain-over-WhiteRabbit
Contacts
- Maciej Lipinski - CERN
Project Status
Date | Event |
15-03-2013 | Streamers developed for White Rabbit Core Hands-on Training by Tom. |
07-03-2016 | Tom's streamers included into wr-cores proposed_master and documented with a wiki page. |
31-03-2016 | Layout of streamer's frame modified slightly to make it backward compatible with the version used in B-train, wiki updated. |
24-05-2017 | Major update, part of wrpc-v4.0 and wrbtrain-v1.0 releases: added statistics, top xwr_streamers module, VLAN support, override of configuration via WB, wiki updated. |
18 December 2017