SpaceWire

SpaceWire Specifications
Created byEuropean Space Agency
Speed2.0โ€“400 Mbit/s
StyleSerial
Hotplugging interfaceYes
External interfaceYes
Websitespacewire.esa.int/WG/SpaceWire/
SpaceWire Connector Specifications
Type Data connector
Production history
Designer European Space Agency
General specifications
Hot pluggable Yes
External Yes
Audio signal No
Video signal No
Pins 9
Connector Micro-D
Data
Data signal Yes
Bitrate 2.0โ€“400 Mbit/s
Protocol Serial
Pinout
Pin Name Description
Pin 1 DIN+ Data In Pos.
Pin 2 SIN+ Strobe In Pos.
Pin 3 Inner Shield Ground
Pin 4 SOUT- Strobe Out Neg.
Pin 5 DOUT- Data Out Neg.
Pin 6 DIN- Data In Neg.
Pin 7 SIN- Strobe In Neg.
Pin 8 SOUT+ Strobe Out Pos.
Pin 9 DOUT+ Data Out Pos.

SpaceWire is a spacecraft communication network based in part on the IEEE 1355 standard of communications. It is coordinated by the European Space Agency (ESA) in collaboration with international space agencies including NASA, JAXA, and RKA.

Within a SpaceWire network the nodes are connected through low-cost, low-latency, full-duplex, point-to-point serial links, and packet switching wormhole routing routers.

Architecture

Physical layer

SpaceWire's modulation and data formats generally follow the data strobe encoding - differential ended signaling (DS-DE) part of the IEEE Std 1355-1995. SpaceWire utilizes asynchronous communication and allows speeds between 2 Mbit/s and 200 Mbit/s, with initial signalling rate of 10 Mbit/s.[1] DS-DE is well-favored because it describes modulation, bit formats, routing, flow control, and error detection in hardware, with little need for software. SpaceWire also has very low error rates, deterministic system behavior, and relatively simple digital electronics. SpaceWire replaced old PECL differential drivers in the physical layer of IEEE 1355 DS-DE by low-voltage differential signaling (LVDS). SpaceWire also proposes the use of space-qualified 9-pin connectors.

SpaceWire and IEEE 1355 DS-DE allows for a wider set of speeds for data transmission, and some new features for automatic failover. The fail-over features let data find alternate routes, so a spacecraft can have multiple data buses, and be made fault-tolerant. SpaceWire also allows the propagation of time interrupts over SpaceWire links, eliminating the need for separate time discretes.

Each transferred character starts with a parity bit and a data-control flag bit. If data-control flag is a 0-bit, an 8-bit LSB character follows. Otherwise one of the control codes, including end of packet (EOP).[2]

Network layer

The network data frames look as follows:

Address byte Address byte... Protocol ID Frame data

One or more address bytes are used for the routing. Addresses are either physical ones (0โ€“31), or logical ones. The difference is that the physical addresses are deleted from the frame header during routing - which is used for hop-based routing (based on path specified in the frame itself). Logical addresses may be deleted as well, depending on the router configuration.

Interconnection

The hardware devices may be connected either directly, or via a SpaceWire router. In the former case, usually pairs of devices are used to guarantee a fail-safe operation, which is handled by the software.

A SpaceWire router is usually a crossbar switch-type device, operating in wormhole switching mode. This also may limit the speed of the communication to the lowest common speed.[3] The routing decisions are based on the programmed routing table and the initial incoming frame contents.

Uses

SpaceWire is used all around the globe.[4] Its use began primarily in ESA projects, but it is currently used by NASA, JAXA, RKA, and many other organizations and companies. Some NASA projects using it include the James Webb Space Telescope, Swift's Burst Alert Telescope, the Lunar Reconnaissance Orbiter, LCROSS, the Geostationary Operational Environmental Satellite (GOES-R), and the SCaN Testbed, previously known as the Communications, Navigation, and Networking Reconfigurable Testbed (CoNNeCT). It has also been selected by the United States Department of Defense for Operationally Responsive Space. SpaceWire initiatives are being coordinated between several space agencies in the frame of Consultative Committee for Space Data Systems (CCSDS) in order to extend its communication model to the network and transport layers of the OSI model.

SpaceWire supports highly fault-tolerant networks and systems, which is one reason for its popularity.[5]

Protocols

The ESA has a draft specification in place for the Protocol ID.

The following Protocol ID's have been assigned in ECSS-E-ST-50-11:

Protocol ID Name Description
1 Remote Memory Access Protocol (RMAP) used to remotely access/alter register configuration of the devices
2 CCSDS Packet Transfer Protocol [6] a common protocol used for sending Telecommands and receiving Telemetry
238 Proposal for Reliable Data Delivery Protocol (RDDP) used on GOES-R
239 Serial Transfer Universal Protocol (STUP) Used on SMCS-332 ASIC

References

  1. ^ "SpaceWire's User Guide" (PDF). Star-dundee.com. Retrieved 27 October 2019. chapter 3.3.5
  2. ^ "SpaceWire Characters". Star-dundee.com. Retrieved 28 October 2018.
  3. ^ "Radiation-Tolerant 10x SpaceWire Router" (PDF). Gaisler.com. Retrieved 28 October 2018.
  4. ^ "Who Uses SpaceWire? - STAR-Dundee". Star-dundee.com. Retrieved 28 October 2018.
  5. ^ Dr Barry M Cook; Paul Walker. "Ethernet over SpaceWire - software issues". 4links.co.uk, p. 2 Archived 2019-08-30 at the Wayback Machine
  6. ^ "Space Packet Transfer Protocol" (PDF). Public.ccsds.org. Archived from the original (PDF) on 11 September 2018. Retrieved 28 October 2018.

Other sources

SpaceWire IP Cores:

Articles: