InTech-Reconfigurable_computing_for_space
InTech-Reconfigurable_computing_for_space
1. Introduction
Reconfigurable computing is an emerging technology with important implications for space
systems. Spacecraft serve as sensor platforms to gather, format, possibly screen or interpret,
and then downlink sensor data. Once launched, a spacecraft may operate unattended for
decades. The trend in spacecraft design is toward more complex and voluminous data,
including multispectral and hyperspectral images and synthetic aperture radar, which
require extensive on-board data processing. Other on-board computing tasks are navigation,
orientation, and communication. As spacecraft grow more sophisticated, the need for
higher-performance computing grows also.
Reconfigurable computing allows computing hardware to be configured or “wired” by
software to optimize the architecture for the problem at hand. Some early discussions of
reconfigurable computing are found in (DeHon, 1996), and Villasenor (Villasenor, 1997).
Reconfigurable computers may be implemented on specially-designed hardware, or on
Field Programmable Gate Arrays (FPGAs). Hauck and DeHon cover FPGA-based
reconfigurable computing very thoroughly their book (Hauck, 2008).
The space environment presents special challenges to the system designer. Chief among
these are:
1. Power efficiency. Electrical power is a scarce and expensive commodity for orbiters and
deep space probes. In addition, removing heat generated by electronics is very
challenging in space, where air cooling is not an option.
2. Minimum size and weight. Increased size and weight increase launch costs, and require
more fuel for on-orbit maneuvering.
3. High reliability for long mission life. On-orbit repair is rarely feasible, and the time and
monetary cost of replacing a spacecraft are high.
4. Rapid deployment or redeployment of spacecraft to meet new or changing mission
requirements.
5. Radiation tolerance. The specific requirements depend on the mission profile, but all
spacecraft systems must be designed to cope with cosmic radiation, chiefly heavy ions.
In some space missions, rapid deployment of a new spacecraft, or redeployment of an
existing craft, are of high priority. Many of potential benefits of reconfigurability for space
are laid out in (Lanza, 2004). Reconfigurability can help designers meet challenges (1) and
(2) above by enabling hardware to be reconfigured for different phases of a computational
task, resulting in smaller size, lower weight, and reduced power consumption than would
Source: Aerospace Technologies Advancements, Book edited by: Dr. Thawar T. Arif,
ISBN 978-953-7619-96-1, pp. 492, January 2010, INTECH, Croatia, downloaded from SCIYO.COM
38 Aerospace Technologies Advancements
be the case if each task required dedicated hardware. For example, in an instrument
calibration task, three configurations of a processor were used to capture and format
calibration data, and a fourth configuration was used in operational mode, to calibrate data
in real time (Sabde, 2003 & 2004).
charge. Radiation Hardening by Design (RHBD) can often achieve acceptable levels of
radiation tolerance, but exacts a performance cost, as the resulting processor is slower,
larger, and consumes more power than an un-hardened equivalent.
2.1 Architectures
Spacecraft on-board processing fits in the category of embedded computing, as distinct from
general-purpose computing associated with laptop or desktop computers. An embedded
40 Aerospace Technologies Advancements
computer is designed into a product, is often not detectable as a computer by the users, and
is targeted to a comparatively limited range of processing tasks. Thus, some flexibility may
often be sacrificed to maximize throughput and energy efficiency.
Spacecraft data processing applications that demand high throughput are often streaming
processes such as signal and image processing, instrument calibration, and feedback control
loops. These are well-suited to Single Instruction-Multiple Data (SIMD) computational models,
something they share with multimedia processing. Most reconfigurable computing
implementations perform best on these kinds of problems, which fit naturally into a dataflow
computing model. A. Dehon provides a survey of computing models for reconfigurable
computing in Chapter 5 of (Hauck, 2008), with emphasis on dataflow models.
Some representative reconfigurable computing architectures are listed below.
PipeRench. A product of research at Carnegie-Mellon University, the PipeRench (Goldstein,
2000; Tessier, 2 001) is a very innovative architecture that interleaves processing elements
and data registers to form a virtualized data path, portions of which map onto hardware at
any time. This virtualization model enables implementation of computational problems too
large to fit directly on the hardware. When implemented in a 0.18 micron process, it was
competitive with commercial DSP chips in throughput, consuming less than one watt for a
20-tap FIR filter.
RAW Processor. Developed at the Massachusetts Institute of Technology, the RAW
processor (Taylor, 2002) is essentially an on-chip network of RISC processor cores with
flexible interconnect to enable it to set up a multicore computing fabric. It represents the
high end of complexity and flexibility. It is not intended for low-power applications.
Stream Processor. The Stream Processor (Khailany, 2008) is an example of an SIMD
architecture designed for signal processing and multimedia applications. Implemented as a
System on Chip (SOC) in a 0.13 micron process, it is reported to deliver performance of 256
16-bit Giga-operations per second (GOPS) with excellent power efficiency. The architecture
is quite comprehensive, optimized for processing data streams.
For more examples, see “Reconfigurable Computing for Digital Signal Processing: A
Survey” (Tessier, 2001).
output control signals and sixteen one-bit input control signals. The output controls signal
internal state to external devices. The input controls implement a “wait on event” function,
halting FPPA processing until an external condition is satisfied. In this way, the FPPA can
synchronize itself with external devices.
The goals of high throughput with deterministic sample rate, low power consumption, and
radiation tolerance are addressed below.
High throughput is achieved through through data path pipelining. Multiple chips can be
connected to increase the size of the computational fabric in increments of 32 PEs.
Interconnect paths are established during a configuration, and persists until the next
configuration phase.
Low power consumption is achieved by concentrating chip resources in the data path. The
control mechanism is very simple and distributed, minimizing the complexity of control
circuitry and communication.
The chip is implemented using Radiation Hard by Design (RHBD) techniques built into a
standard cell library designed for a commercial bulk CMOS process. The chip was
synthesized using a commercial software tool (Synopsys). The library mitigates single even
latchup (SEL) with guard bands, and single event upset (SEU) with a 14-transistor SEL-
resistant latch circuit.
provided for each FPPA chip. Constraint #5 is met by the sixteen bit granularity and the pre-
built arithmetic and logic circuits, which require many fewer configuration bits than a bit-
oriented FPGA.
3.3 Memory
The FPPA is a shallow-memory device; the only data memory is the input registers to the
processing elements and the I/O ports, and an 8-word programmable delay line in each PE.
The latter is provided to aid in aligning parallel paths in the dataflow pipeline. Many
applications, such as one-dimensional linear and nonlinear filters and wavelets, can be
implemented without additional memory.
Reconfigurable Computing for Space 45
much memory to incorporate and how to organize it, as this is highly application
dependent.
The FPPA can work with random access memory, but this is very costly in terms of I/O
ports and board-level interconnects, as shared busses are not supported, and dedicated data
busses are required for addresses and data. For this reason, a Reconfigurable Memory
Module (RMM) was conceived to aid in coupling the FPPA with commercial memory chips.
This consists of an interface module configured to generate addresses for a particular
application, interfaced with a commercial memory chip. In one instantiation of the RMM,
the following access modes were implemented:
RMM Data Access Modes
1. Sequential access
2. Last In, First Out (LIFO) stack
3. First In, Last Out (FIFO) buffer
4. Circular (ring) buffer
5. Lookup Table (LUT)
6. Region of Interest (ROI)
7. Histogram
The circular buffer defines a beginning and end of a buffer in the memory. Access is
sequential until the end of the buffer is reached; then it wraps around to the beginning.
Lookup table mode (mode 5) is just random access, using one of the data ports for an
address and the other for data. Region of interest mode (mode 6) models the random access
memory as a two-dimensional array (often used to store images), and defines a subarray, or
subimage; sequential accesses sweep horizontally across a row of data elements; when the
end of the row is reached, the address counter moves to the beginning of the next row.
Histogram mode (mode 7) supports histogram calculations, which are sometimes used in
image enhancement and in signal and image analysis. For example, estimating signal
entropy requires calculating
Where X is a set of N values x0 to xN-1 and p(xn) is the probability of occurrence of value of
element xn. This probability can be estimated by counting occurrences of xn for each n, i.e.,
forming a histogram, then dividing by the total number of samples. This histogram is
initialized by setting each element to zero using sequential access mode. To calculate the
histogram, a data sample is read from a source, and this is used as an index into the
histogram in a read-modify-write operation: the histogram values is read, incremented, then
written back. Finally, the histogram can be read out in sequential access mode. Thus, three
configurations of the RMM are required.
Figure 5 shows a typical arrangement for an FPPA systems consisting of one FPPA, a host
processor, and the RMM. The host configures and initializes both the FPPA and the RMM.
One FPPA data port is used for writing from the FPPA to the RMM, and one for reading
from the RMM into the FPPA. The host communicates with the RMM via an 8-bit data bus
and two asynchronous handshake signals, RTX and CTX. Once the FPPA and RMM are set
up, and the FPPA begins to execute, the host is not longer required. Two control bits,
command_0 and command_1, are sufficient for the FPPA to control the RMM.
Reconfigurable Computing for Space 47
1The prototype chip is not fully radiation tolerant, as single-event-upset resistant latches
were not used.
48 Aerospace Technologies Advancements
4. Conclusion
Spacecraft represent one of the application domains that have the most to gain from
reconfigurability, particularly due to the high cost and long delays associated with
designing, building, qualifying and launching a new craft (Lanza 2004). Areas in which
spacecraft can benefit include:
• Tele-alteration: the ability to change configuration and function of a system remotely,
increasing mission agility and extending the useful life of the system.
• Resilience and robustness: reconfigurability makes it possible to map out failed
components and restore functionality.
• Functionality on demand : when a new function is required, if the configurable
resources are in place, remotely configure the required functionality
Adapting commercial technologies to reconfigurable space systems is complicated by the
requirements of small size and weight, low power consumption, and radiation hardness.
This chapter presented an example of a reconfigurable processor developed for space using
radiation-hard-by-design techniques. The goals of the design were to achieve an appropriate
level of functionality to solve a wide range of space computing problems, extensible to
larger-scale problems than can be implemented in one chip, minimal power consumption,
and sufficient radiation hardness for space applications. The architecture implements a
Reconfigurable Computing for Space 49
5. References
Bohm, W.; Hammes, J.; Draper, B; Chawath, M.; Ross, C.; Rinker, R. & Majjar, W. (2002).
Mapping a Single Assignment Programming Language to Reconfigurable Systems,
Supercomputing 21:117-130, 2002.
DeHon, A. (1996). Reconfigurable Architectures for General-Purpose Computing, MIT AI Lab
Report No. 1586, Massachusetts Institute of Technology, Cambridge, MA, USA,
1996.
Donohoe, G; Buehler, D; Hass, K; Walker, W. & Yeh, P.-S. (2007). Field Programmable
Processor Array: Reconfigurable Computing for Space, IEEE Aerospace Conference,
Big Sky, MT, March 3-10, 2007.
Goldstein, S; Schmit,H., Budiu, M., Cadambi, S., Moe,M. & Taylor, R. (2000) “Piperench: a
Reconfigurable Architecture and Compiler”, IEEE Computer, Vol. 33, Issue 4, April
2000, pp. 70-77.
Hauck, S. & Dehon, Andre (2008), Reconfigurable Computing: The Theory and Practice of
FPGA-Based Computation, Elsevier/Morgan Kaufmann, Amsterdam, ISBN 978-0-
12-370552-8.
Holmes, A. & Adams, L. (2002), Handbook of Radiation Effects, Oxford University Press,
Oxford, ISBN-13 978-0198507338.
Lanza, D; Lyke, J.; Zetocha, P; Fronterhouse, D; & Melanson, D. (2004). Responsive Space
through Adaptive Avionics, Space 2004 Conference and Exhibit, American Institute
of Avionics and Aeronautics, AIAA 2004-6116, San Diego, CA, 2004.
Sabde, J; Buehler, D. & Donohoe, G. (2003) Focal Plane Array Sensor Readout Correction on
a Reconfigurable Processor, Proc. 11th NASA Symposium on VLSI Design, Coeur
d’Alene, ID, USA, May 2003.
Sabde, J. (2004). Sensor Data Processing on a Reconfigurable Processor, Master of Science
Thesis, University of Idaho, USA.
Sinthop,K.; Le Moigne, J. & El-Ghazawi, T. (2003). “Automatic Reduction of Hyperspectral
Imagery using Wavelet Spectral Analysis,” IEEE Trans. Geoscience and Remote
Sensing, Vol. 41, No. 4, April 2003.
Tessier, R. & Burleson, W. (2001). Reconfigurable Computing for Digital Signal Processing:
A Survey, Journal of VLSI Signal Processing 28, 7-27, 2001.
50 Aerospace Technologies Advancements