An Introduction to SpaceWire - its capabilities and benefits

SpaceWire is a robust serial communication technology that is used throughout the space industry. The technology was originally proposed as a standard (by 4Links staff) in the UK, and has evolved via an IEEE standard into a European Space Agency (ESA) ECSS standard, for use by the space industry world-wide.

SpaceWire is defined by the European Cooperation for Space Standardization (ECSS) Standard ECSS-E-ST-50-12C (31st July 2008). Here is a link to the SpaceWire section of the ESA web site.

SpaceWire brings the huge benefits described below:

Robust - fault-tolerance acts in microseconds: SpaceWire allows a number of alternative parallel connections between routing switches and nodes, and a packet routing header (its routing address) can be set to take any of the possible paths. If one link or one routing switch on the path fail, the packet can take one of the alternative paths. Routing can be set up to use "Group Adaptive Routing" so that the alternative path is available immediately, and in the 4Links video demonstration it was invoked within a single video line of 60 microseconds.

Flexible - multiple protocols on single network: SpaceWire uses exceptionally low overheads for headers and other control characters, making it simple and efficient to embed other protocols within SpaceWire. The 4Links demonstration carries video scan lines, command and control traffic and network management traffic including remote memory access. 4Links SpaceWire products have carried TCP-IP, file transfers, and the inter-processor communication in the MIMD DSP supercomputers that are embedded in modern spacecraft.

Scalable - add links or nodes or routers: SpaceWire fully meets the description of scalable, compared with other technologies which scale by replacing all the equipment with faster wire speed. SpaceWire can be used with multiple wire speeds too, but if one wire does not give enough bandwidth between two points, more wires can be added and aggregated to give the needed bandwidth. Similarly as nodes or routing switches are added, they increase the available bandwidth of the system, unlike buses whose bandwidth reduces with more nodes, or even some other networks that disable redundant connections.

Bandwidth - enough for uncompressed video: In 2002, 4Links' SpaceWire ran comfortably in low-cost FPGAs at 200Mbits/s in each direction for each cable. 4Links now sell test equipment that has plenty of operating margin over the data sheet speed of 400Mbits/s full duplex. At 400Mbits/s, SpaceWire is capable of carrying raw CCIR 601 4:2:2 video data. In many networks, link bandwidth is not so much the determinant of throughput as the latency in the nodes and switches. SpaceWire routing switch latency is of the order of 100 bit-periods, resulting in around 20 times as many packets per second as a "Fast" Ethernet switch.

Isochronous - at user-defined intervals: SpaceWire includes a simple time distribution mechanism, so that every node of the network can have the same notion of time. This time may be used to schedule, or time-trigger, packets from particular sources. Unlike other standards providing isochronous traffic, SpaceWire provides the background mechanism but does not mandate the frequency, allowing user choice appropriate for the application.

Deterministic - accurate time distribution: SpaceWire's time distribution is based on time-codes, which are broadcast throughout the network. The time-codes take priority over conventional network traffic, and interrupt packets flowing along a link. This pre-emption means that time distribution is far more accurate than in standards where it has to wait for the end of the current packet, and the SpaceWire standard suggests that a jitter of between 1 and 10 microseconds is achievable. 4Links has devised means, fully within the SpaceWire standard, to reduce jitter to no more than a few bit periods, well under 100ns. And with a small extension to the standard to use some of the currently reserved values of time-code, not only the jitter but the overall consistency of time across the network can be improved to a few bit-periods.

Any topology - loops don't cripple the network: Unlike many network and bus standards, including Ethernet, USB and 1394, SpaceWire does not impose serious constraints on the topology. With Ethernet, multiple connections between switches can disable the entire network, and with 1394, loops can similarly disable the entire network. SpaceWire, on the other hand, gives complete topological freedom. Multiple SpaceWire links between switches can be used to increase bandwidth and fault-tolerance, as can loops.

Switch fabric - simpler and lower cost than a bus: SpaceWire is based on point-to-point links connected to each other by switch fabric. In the past, this has been considered an expensive option. But the bus has a great deal of complication in dealing with multiple masters. Much of this complication has carried through into switched Ethernet, and even standards designed for switch fabric, such as ATM, FibreChannel and PCI-Express have far more complication than is necessary. SpaceWire has been designed on the principle of "If in doubt, leave it out", resulting in exceptionally simple protocols that can be implemented at low cost --- exemplified by 4Links' demo routing switch with eight physical port ports plus two FIFOs per port plus routing switch fabric plus network management, all fitting comfortably within a 300kgate FPGA.

Fully digital - multiple PHY ports in single FPGA: SpaceWire can be fully implemented in digital logic, requiring neither analog circuitry nor DSP. So the complete physical layer (PHY) can be embedded in a digital FPGA or ASIC, without needing external PHY circuits. (Of course, there still may be advantages in using external PHY circuits, for example in EGSE and other test equipment to protect the equipment under test.)

Standards - IEEE and Space Industry: SpaceWire, as ECSS-E-ST-50-12C, has been approved as a standard by ECSS (European Cooperation for Space Standardization) and was issued in July 2008. SpaceWire is based on the earlier standard IEEE 1355, with changes to make SpaceWire better fulfil the needs of the space industry, by adding a network layer that specifies the behaviour of a routing switch fabric, and by overcoming some minor errors in the 1355 standard.

Modular - design re-use between missions: SpaceWire, with its simple standard interface makes it particularly easy to build modular systems with multiples of the same unit or collections of different units. Devices like cameras, solid-state-mass-memories, and DSP processor subsystems can be designed as standard modules to be used and re-used in multiple missions. The combination of bandwidth, scalability, flexibility in both topology and higher-level protocols, and the inherent fault-tolerance of SpaceWire networks, makes SpaceWire the ideal interface for these disparate modules. SpaceWire makes re-use not just a theory but a practice.

Easy - with 4Links network management and Ethernet interfaces to SpaceWire: 4Links customers have told us that SpaceWire is easier to use than RS232/422, and that it can be hugely easier to use than IEEE 1394. They tell us that SpaceWire (from 4Links) works out of the box! Further to this intrinsic ease of use, 4Links has demonstrated a simple network management system comprising a small amount of logic built into the hardware, together with a drag and drop GUI for reporting the network state and for making connections between nodes. SpaceWire, combined with 4Links network management, is particularly effective in solving problems of redundancy configuration, to the extent you wonder why they ever needed to be a problem. And with 4Links demonstrating network management and control from Ethernet, via the EtherSpaceLink family of test equipment products, the opportunity opens for remote testing and management of a SpaceWire network over the Internet, for remote and easier system integration.

To sum up: SpaceWire networks are "Networks that WORK", fulfilling a uniquely wide range of requirements for the space industry. And 4Links supplies the proof, the products, the IP, and the consultancy for you to build and to benefit from these networks.

"The benefit from using SpaceWire is a lower cost for development, a reduction of development time, better reliability, and an increase in the amount of scientific work that can be achieved within a limited budget." NASA

You might also be interested to read this paper on The History of SpaceWire, which was presented back in 2003.

Please email us at 4Links with your requirements.