Spacewire on Earth Orbiting Scatterometers
Total Page:16
File Type:pdf, Size:1020Kb
Spacewire on Earth Orbiting Scatterometers Alex Bachmann, Minh Lang, James Lux, Richard Steffke Jet Propulsion Laboratory California Institute of Technology 4800 Oak Grove Drive Pasadena, CA 9 1 109 (818) 354-5087, (818) 354-1556, (818) 354-2075, (818) 354-3533 [email protected],[email protected], James.p.Lux @id.nasa.gov, [email protected] Abstract-The need for a high speed, reliable and easy to implementations. Serial methods are popular as they reduce implement communication link has led to the development the wire and pin count. of a space flight oriented version of IEEE 1355 called Spacewire. Spacewire is based on high-speed (200 Mbps) Spacewire is a high-speed serial communication link serial point-to-point links using Low Voltage Differential standard, which set specifications for the various layers. Its Signaling (LVDS). Spacewire has provisions for routing progenitor is IEEE1355 the commercial communication messages between a large network of processors, using link, which is very prolific. Spacewire adds LVDS and wormhole routing for low overhead and latency. specifies different space qualified cable and connectors. We [Additionally, there are available space qualified hybrids, have developed a testbed for the next generation orbiting which provide the Link layer to the user's bus]. A test bed scatterometer [ 1][2] which uses the Astrium Multi Chip of multiple digital signal processor breadboards, Module containing theTSC2 1020 DSP, Digital peripheral demonstrating the ability to meet signal processing controller and a Spacewire (the SMCS332) asic. Rather requirements for an orbiting scatterometer has been than attempt to implement some other inter processor link, implemented using three Astrium MCM-DSPs, each we used the IEEE-l355/SpaceWire link as the breadboard consists of a Multi Chip Module (MCM) that communication method between the DSP processors. combines a space qualified Digital Signal Processor and Alternative technologies used in the past have strong peripherals, including IEEE- 1355 links. With the addition of heritage but technical or implementation limitations reduced appropriate physical layer interfaces and software on the or excluded them as an option on the testbed. DSP, the Spacewire link is used to communicate between processors on the test bed, e.g. sending timing references, 2. SPACEWIRESTANDARD commands, status, and science data among the processors. The main purpose of the Spacewire standard is to ensure Results are presented on development issues surrounding compatibility between different equipment, in order to the use of Spacewire in this environment, from physical facilitate integration, testing, reduce time-to-market, cost layer implementation (cables, connectors, LVDS drivers) to and re-use in different missions [ 31. diagnostic tools, driver firmware, and development methodology. The tools, methods, and hardware, software Spacewire (proposed as IEEE 1355.2) is based on the IEEE challenges and preliminary performance are investigated 1355-1995 standard; it is a full-duplex, bi-directional, serial, and discussed. point-to-point data link with a raw data rate of 200Mbit/sec. It encodes data using two differential signal pairs in each TABLEOF CONTENTS direction. A total of eight signal wires, four in each direction 1. INTRODUCTION [4]. Each pair is twisted, shields of the four individual 2. SPACEWIRE STANDARD twisted shielded pairs are insulated from one another, and from the overall shield. encompassing the whole bundle. CHIP 3. ASTRIUMMULTI MODULE Connections are made with 9 pin micro D-type connectors, 4. SMCS which have strong flight legacy. The signaling method is 5. SPACEWIREvs. ALTERNATIVES LVDS . 6. SCATTEROMETERAND TESTBED 7. TESTINGSPACEWIRE 8. CONCLUSION LVDS Spacewire, allowing communication over distances of 10 m 1. INTRODUCTION or more, uses Low Voltage Differential Signaling (LVDS). LVDS are current mode switched devices and require a The need to send data reliably and quickly from subsystem good match between the characteristic impedance of the to subsystem on spacecraft has led to various data transfer transfer medium (Le. 100 to 100 ohm twisted pair) and the shunt termination resistance at the receiver end. Given the -~ low voltages involved (350mV) requires more attention be ' 0-7803-7231-X/01/$10.00/0 2002 IEEE paid to grounding, common mode rejection ratio (cmrr) and EMC design. This means balanced signal skew between the Character Level-describes how a basic character is defined differential signals needs to be maintained by keeping the using bits to build the basic unit of a character. Spacewire line lengths of similar distance. However the “constant defines a control character and a data character. The control current loop” signaling also helps reduce radiated noise and characters are made up of a parity bit, a data control flag (set as a side benefit allows detection of opens or shorts in the to one) and a two-bit control code. These in different cable. combinations indicate the following and are used to facilitate the exchange level. Each link consists of two pairs of lines per direction for a Flow Control (FCT) total of 4 pairs or 8 individual wires. One of the differential 1 Normal End of Packet (EOP) pairs carries the data the other carries a strobe signal. 1 Error End of Packet (EEP) XOR’d these two signals generate the clock. The strobe 1 Escape (ESC) signal is dependent on the data, when the data remains 1 Null (ESC + FCT) constant from one data bit interval to the next a strobe The data character contains a parity bit, the data control flag transition occurs. This type of coding is called Data-Strobe bit (set to zero) and eight bits of data transmitted least (DS) encoding. This coding stream is diagramed below. significant bit first. Exchange Level-describes how the data will be sent across Data 10 10 10 4 1010 10 lilil0 the link. It contains the format or steps necessary to I, I II I I1 establish and maintain communication between any two I I, nodes. This level contains the following elements. I, D I, I, Initialization I I, I I, I I, 1 Flow Control S 1 1 Detection of Parity Errors Fig.1 Data-Strake (DS) Encoding 1I1 1 1 Detection of Disconnect Errors Link Error Recovery Two of the advantages to this type of coding are: Initialization starts by placing both nodes in kno state, 1. Since the resulting data is clocked on both the then checking for errors and followed by the s n ing out of positive and negative edges of the recovered clock, NULL’S, ending with the transmission of 6@”Data, FCT and one gets twice the bit rate as versus the more Nulls as required. traditional leading edge clock with synchronous protocol. Flow control characters control the availability of each node 2. And since the strobe signal gets switched only in a link. They indicate whether each side of node has space when the data bit was the same as the previous data available to accept new incoming data thus avoiding bit, the di/dt type noise introduced into the system overflow and loss of data. They are sent every n characters is much lower. (8 in this case). Once received they are not stored in the receive memory or buffer. Thus a transmitter will not send Any communication technology is broken down into levels any characters until it has received one or more FCT’s to which are characterized per a specification. The Spacewire indicate that the receiver is ready. The transmitter keeps a levels are described below. credit count of the number of characters it has been authorized to send. Each time the receiver sends an FCT the Vurious Space Wire Protocol Levels transmitter increments its credit counter by 8. When it transmits a character it decrements its credit counter by 1. If 1 Level 0: Physical Level the credit counter reaches zero the transmitter will stop 1 Level 1: Signal Level sending characters until it receives another FCT. The NULL 1 Level 2: Character Level character is used to maintain the connectivity between two 1 Level 3: Exchange Level nodes. In order to remain connected, the nodes at both ends Level 4: Packet Level of a link must send NULL characters continuously when 1 Level 5: Transaction Level they do not have data to send. Physical Level-describes the physical interface between Detection of ParityDisconnect errors will result in the nodes in a link. This includes mechanical and electrical transmitted data to be erroneous or even missing. Therefore specifications, covering items like connectors and cabling. when Spacewire detects one of these it will initiate a response accordingly. A disconnect error is registered when Signal Level-describes the make up of the electrical the time interval from the last transition on either the data or signals going across a link; including voltage amplitudes, strobe signal exceeds the disconnect-detection time. If an encoding (in this case DS) see Figure 1 above, fault error is detected Spacewire follows the Link Error protocol, and data rates Recovery sequence. Link Error Recovery starts with one node of the link ceasing transmission. This will cause a disconnect at the other node. This node then also stops transmitting. This generates a 3. ASTRKJMMULTI CHIP MODULE disconnect error at the original node. This procedure is known as “exchange of silence”. Once this occurs both The Astrium Multi Chip Module (MCMDSP) is a radiation nodes cycle through the reset sequence (ErrorReset, tolerant hybrid that incorporates a TSC21020F Digital Errorwait, Ready) ending up in the Ready state ready to Signal Processor, the SMCS332, and a Digital Peripheral begin operation. If a error continues the working node will Controller, which allows various peripherals to be attempt to establish the link by sending NULL’S. If it does connected to it making it a possible contender for a turnkey not receive a response due to the error then the above cycle DSP system requiring limited hardware and software design is repeated.