On-Board Multi-Core Fault-Tolerant SAR Imaging Architecture
Total Page:16
File Type:pdf, Size:1020Kb
On-Board Multi-Core Fault-Tolerant SAR Imaging Architecture Helena Cruz∗, Rui Policarpo Duartey, Horacio´ Netoz Instituto Superior Tecnico,´ Lisbon, Portugal Email: ∗[email protected], [email protected], [email protected] Abstract—Nowadays, there is an increasing need for satel- Unmanned Aerial Vehicles (UAVs) to have a lightweight, lites, drones and UAVs to have lightweight, small, autonomous, small, autonomous, portable, battery-powered system able portable, battery-powered systems able to generate SAR images to generate SAR images on-board and broadcasting them to on-board and broadcasting them to Earth, avoiding the time- consuming data processing at the receivers. SAR is a form of Earth, avoiding processing data on the receivers. This paper radar used to generate images of Earth, mounted on moving describes an architecture for SAR imaging capable of tolerating platforms, such as satellites, drones or airplanes and is used to faults resulting from radiation in a space environment. This monitor the surface of the Earth. Backprojection is an algorithm architecture uses the Backprojection Algorithm to generate for SAR image generation capable of generating high quality images and is implemented and tested on a System-on-Chip images, however, it is one of the most computationally intensive algorithms. Space is a harsh environment, due to the radiation, (SoC) device [3]. which causes temporary or permanent errors on computing systems, thus, there is a need to mitigate its impact on the II. BACKGROUND devices by implementing fault tolerance mechanisms to detect This section introduces SAR, the Backprojection algorithm and correct errors. In this research work, an on-board multi- and fault tolerance mechanisms. core embedded architecture was developed for SAR imaging systems, implementing two fault tolerance mechanisms: lockstep A. Synthetic-Aperture Radar (SAR) and reduced-precision redundancy. This architecture aims to protect the Backprojection algorithm from transient faults in SAR is a form of radar used to generate 2D and 3D high the processing unit, using a software-only approach, generating resolution images of objects. Unlike other radars, SAR uses the acceptable SAR images in a space environment. The solution relative motion between the radar and the target to obtain its was implemented on a Xilinx SoC device with a dualcore processor. For error rates similar to the ones measured in a high resolution. This motion is achieved by mounting the radar space environment, the present work produced images with less on moving platforms such as satellites, aircrafts or drones. 0.65dB on average at the expense of a time overhead up to 33%. The distance between the radar and the target in the time Notwithstanding, the Backprojection algorithm executed up to between the transmission and reception of pulses creates the 1.58 times faster than its single-core version algorithm, without synthetic antenna aperture. The larger the aperture, the higher fault tolerance mechanisms. the resolution of the image, regardless of the type of aperture used. To generate SAR images, it is necessary to use an image I. INTRODUCTION generation algorithm, such as the Backprojection Algorithm, Space is a harsh environment for electronic components described below. used in circuits and systems. Therefore, systems designed for spacecrafts or satellites must be highly reliable and be B. Backprojection Algorithm able to tolerate the levels of radiation present in space. The Backprojection algorithm takes the following values as input: main sources of radiation in space are high-energy cosmic ray number of pulses, location of the platform for each pulse, the protons and heavy ions, protons and heavy ions from solar carrier wavenumber, the radial distance between the plane and flares, heavy ions trapped in the magnetosphere and protons target, the range bin resolution, the real distance between two and electrons trapped in the Van Allen belts [1]. These are pixels and the measured heights. Then, for each pixel and each capable of deteriorating the electronic systems and provoking pulse, the Backprojection algorithm performs the following bit-flips, leading to failures in electronic systems [2]. Fault steps [4]: tolerance mechanisms are used to increase the reliability of 1) Computes the distance from the platform to the pixel. these systems. 2) Converts the distance to an associated position (range) in Synthetic-Aperture Radar (SAR) is a form of radar which the data set (received echoes). is usually mounted on moving platforms such as satellites, 3) Samples at the computed range using linear interpolation, aircrafts and drones and is used to generate 2D and 3D images using Eq. 1 [5]. of Earth. SAR operates through clouds, smoke and rain and does not require a light source, making it a very attractive g(n + 1) − g(n) method to monitor the Earth, in particular, the melting of polar g (r ) = g(n) + · (r − r(n)) (1) x;y k r(n + 1) − r(n) k ice-caps, sea level rise, wind patterns, erosion, drought pre- diction, precipitation, landslide areas, oilspills, deforestation, • g(n) - Wave sample in the previous adjacent range bin. fires, natural disasters such as hurricanes, volcano eruptions • g(n+1) - Wave sample in the following adjacent range and earthquakes. There is a need for satellites, drones and bin. • r(n) - Corresponding range to the previous adjacent expressed in decibels. SNR is calculated using Eq. 5. The bin. larger the SNR value, the greater the agreement between the • r(n+1) - Corresponding range to the following adjacent values. According to [4], values above 100dB are reasonable. bin. PN 2 ! • rk - Range from pixel f(x; y) to aperture point θk. k=1 jrkj SNRdB = 10 log (5) 4) Scales the sampled value by a matched filter to form the 10 PN 2 k=1 jrk − tkj pixel contribution. This value is calculated using Eq. 2 [5]. dr is calculated using Eq. 3 [5]. • rk - Reference value for k-th element. • tk - Test value for k-th element. −! ei!2jrkj = cos(2 · ! · dr) + i sin(2 · ! · dr) (2) • N - Number of entries to compare. D. Fault Tolerance p 2 2 2 dr = (x − xk) + (y − yk) + (z − zk) − rc (3) Fault Tolerance (FT) is the ability of a system to be able to remain functional even in the presence of failures. Fault- • dr - Differential range from platform to each pixel tolerant systems are able to detect faults and to recover from versus center of swath. them. • xk; yk; zk - Radar platform location in Cartesian coor- Triple Modular Redundancy (TMR) consists in having three dinates. entities calculating the same value and have a voter entity • x; y; z - Pixel location in Cartesian coordinates. compare the results. The most common value is a assumed to • rc - Range to center of the swath from radar platform. be correct [6], [7]. 5) Accumulates the contribution into the pixel. The final Lockstep consists in the concurrent execution of the same value of each pixel is given by Eq. 4 [5]. application on the different cores of a processor. The state of −! each core is periodically checked to ensure the execution is X i·!·2·jrkj f(x; y) = gx;y(rk; θk) · e (4) running without errors. If the states match, the execution is k assumed to be correct and a checkpoint is taken to be used • f(x; y) - Value of each pixel (x; y). in case of a future fault. Otherwise, a previous state, resulting from a checkpoint, is restored. Checkpoints contain the values • θk - Aperture point. • ! - Minimal angular velocity of wave. of the processor’s registers or variables to be used in future comparisons. Oliveira et. al [8] presented a similar lockstep • gx;y(rk; θk) - Wave reflection received at rk at θk (calculated using the linear interpolation in Eq. 1). implementation. Process-Level Redundancy (PLR) [9] is a software-only fault tolerance mechanism that supports TMR and lockstep with checkpoints. Reduced-Precision Redundancy (RPR) is used to reduce the Algorithm 1 Backprojection algorithm pseudocode. overhead introduced by TMR by using a Full-Precision (FP) Source: PERFECT Manual Suite [4]. computation and two Reduced-Precision (RP) computations. 1: for all pixels k do RPR can be implemented in hardware, following an architecture 2: fk 0 similar to TMR, or software, following an architecture similar 3: for all pulses p do 4: R jjak − vpjj to temporal redundancy (i.e., fault tolerance mechanism where 5: b b(R − R0)=∆Rc an operation is executed several times and the correct result 6: if b 2 [0;Nbp − 2] then 7: w b(R − R0)=∆Rc − b is determined by majority voting). The FP computation 8: s (1 − w) · g(p; b) + w · g(p; b + 1) corresponds to the ”original computation” and the other two i·ku·R 9: fk fk + e compute an approximation. Computing the approximations is 10: end if 11: end for more efficient than calculating a full-precision value, decreasing 12: end for the overhead of the redudant computations. Examples of applications that use RPR are [10], [11]. There are several fault-tolerant versions of SAR image Algorithm 1 shows the pseudocode to compute the aforemen- generation algorithms [7], [12], [6]. Jacobs et. al [7] propose tioned steps. In the pseudocode, ku represents the wavenumber a fault tolerance mechanism for Fast-Fourier Transformer 2πfc and is given by c , where fc is the carrier frequency of the (FFT) Algorithm based on range and azimuth compression waveform and c is the speed of light, ak refers to the position by implementing Concurrent Error Detection (CED) and using of the pixel, and vp, corresponds to the platform position. The weighted sum, and also implements scrubbing. Wang et. al i! complex exponential e is equivalent to cos(!) + i sin(!) [12] also present a mechanism for FFT algorithm based on a and, therefore, a cosine and sine computation is implied in the weighted checksum encoding scheme.