Real-time Ethernet data management
To achieve predictable timing on Ethernet networks, collisions need to be avoided. Moving from shared Ethernet (many devices on one network segment) to (fully) switched Ethernet (only two devices on a network segment) seems to be a promising solution. Just like with switches in a telephone network, data packages are only being forwarded to a specific network segment if the target address matches with a device connected to that particular segment.
Since there are only two ports per network segment (switch port and device port), the forward and backward channel of the segment can be used simultaneously. This full-duplex operation theoretically doubles the bandwidth of the network. With switched Ethernet, collisions no longer occur in any of the network segments. However, the network is still not suitable for real-time operations because the bottleneck point of switched Ethernet is the switch itself. All data streams arriving simultaneously at the switch ports need to be buffered and bundled by the switch and sent out sequentially on the output port. The timing for multiplexing and buffering depends on the respective switch implementation and varies with the network load.
By reducing the amount of data to be transferred on a particular network, timing delays and deviations can be somewhat limited. An exact calculation of the timing, however, is still not possible.
In many industrial applications, it is necessary to send data from one device to various other devices simultaneously (broadcast, publish/subscribe relationship). Switched Ethernet is better suited for point-to-point data relationship. Broadcast or multicast messages load many switch ports simultaneously leading to exactly those timing delays and deviations mentioned above.
Another aspect to be considered when using switched Ethernet is the wiring topology of such networks.
Point-to-point connections unavoidably lead to a tree topology. There is limited space in embedded systems, therefore machines and control equipment require the wiring topology to be adapted to the needs of the system and not vice versa.
A specific solution for handling real-time data, not only via Ethernet, is described in the IEEE 1588 standard. It defines methods to synchronize distributed clocks in a network and time-tagging data. All distributed clocks are calibrated regularly using synchronization telegrams. Each piece of data is tagged with time information stating when it has been captured or when a certain activity has to be initiated.
The receiver processes the time tag accordingly by setting a certain output or sampling an input at a specific time. These clocks can be implemented in hardware or software depending on the necessary precision. This method allows precise synchronization down to the
Advantages of this method are that it is based solely on standard IEEE protocols and it is transparent across multiple network systems. Disadvantages are the effort necessary to compensate for inevitable switching delays and the additional load on the network through regular sync-messages. Infrastructure components like switches and routers need to be equipped with integrated boundary clocks to guarantee timing precision. This method only achieves synchronization of devices, it does not guarantee that data will arrive at the addressee in time. Thus the possibility remains that the time tag will have already expired when the data arrives. As a result, additional measures have to be implemented for timely delivery.
Time slicing seems to be a better method to guarantee predictable data communication via Ethernet with very short cycle times and precise timing, and to reserve additional bandwidth for less time-critical data.
It has been implemented with Ethernet Powerlink, an open real-time protocol standard managed by the Ethernet Powerlink Standardization Group—an association comprised of leading companies in the automation and embedded industry. With this method, even highly dynamic drives systems can be synchronized. Until now, this was only possible with dedicated motion bus systems.
Ethernet Powerlink organizes data transmission on the network chronologically, thereby guaranteeing no collisions on the network and that the bandwidth is ideally utilized. Each node on the network has its dedicated time window to send data. Management of time allocation is handled by one dedicated node, the managing node. Communication is organized in regular basic cycles that are divided into specific phases:
Start Phase : All networked nodes synchronize themselves to the managing node's clock.
Isochronous Phase : The managing node assigns a fixed time window to each node to transfer time-critical data. All other nodes can listen to the traffic during this phase. (publish/subscribe)
Asynchronous Phase : The managing node grants the right to send ad-hoc data to one particular node. Standard IP-based protocols and addressing are used during this period.
Idle Period : Remaining time until the start of the next basic cycle.
Durations of the isochronous and the asynchronous phase can be configured. The precision of the cycle time is always better than 1
In addition to transferring isochronous data during each cycle, data during that period can be multiplexed for better bandwidth utilization. Less important time-critical data can be transferred in larger cycles than the basic cycle. Assigning the time slots during each cycle is at the discretion of the managing node.
The method complies with standard Ethernet according to IEEE 802.3 and can be implemented on any standard Ethernet chip or interface card. All IP-based protocols on higher layers, like TCP or UDP, can be further used without modifications. Ethernet Powerlink also complies with:
IEEE 802.3 Fast Ethernet;
IEEE 1588 clock synchronisation for distributed real-time domains;
Standard device profiles according to CANopen EN50325-4 for automation; and
Can be implemented on any Ethernet hardware—no ASICs necessary
Dipl.-Ing. Andreas Pfeiffer with Bernecker & Rainer Industrie-Elektronik GmbH, Eggelsberg, Austria, www.br-automation.com ; he is also a board member of Ethernet Powerlink Standardization Group, www.ethernet-powerlink.org .