|
LEON 3 Fault Tolerant Processor IP Core
Introduction
The LEON3FT is a fault-tolerant
version of the standard LEON3 SPARC
V8 Processor. It has been designed for operation in the harsh space
environment, and includes functionality to detect and correct (SEU)
errors in all on-chip RAM memories. The LEON3FT processor support
most of the functionality in the standard
LEON3 processor, and adds the
following features:
* Register file SEU error-correction of up to 4 errors per 32-bit
word
* Cache memory error-correction of up to 4 errors per tag or 32-bit
word
* Autonomous and software transparent error handling
* No timing impact due to error detection or correction
The following features of the standard LEON3 processor are NOT
supported by LEON3FT
- Local scratch pad RAM (I and D)
- Cache locking
- LRR cache replacement algorithm
Fault-tolerance scheme
The fault-tolerance in LEON3FT is implemented using ECC coding of
all on-chip RAM blocks. The ECC codes are adapted to the type of RAM
blocks that are available for a given target technology, and to the
type of data that is stored in the RAM blocks. The general scheme is
to be able to detect and correct up to four errors per 32-bit RAM
word. In RAM blocks where the data is mirrored in a secondary memory
area (e.g. cache memories), the ECC codes are tuned for
error-detection only. A correction cycle consists then of reloading
the faulty data from the mirror location. In the cache memories,
this equals to an invalidation of the faulty cache line and a cache
line reload from main memory.
In RAM blocks where no secondary copy of the data is available (e.g.
register file), the ECC codes are tuned for both error-detection and
correction. The focus is placed on fast encoding/decoding times
rather than minimizing the number of ECC bits. This approach ensures
that the FT logic does not affect the timing of the processor, and
that the LEON3FT can reach the same maximum frequency as the
standard non-FT LEON3. The ECC encoding/decoding is done in the
LEON3FT pipeline in parallel with normal operation, and a correction
cycle is fully transparent to the software without affecting the
instruction timing.
The ECC protection of RAM blocks is not limited to the LEON3FT
processor. In a SOC design based on LEON3FT, any IP core using block
RAM will have the RAM protected in a similar manner. This includes
for instance the FIFOs in the Spacewrire IP core (GRSWP) and the
buffer RAM in the CAN-2.0 IP core (CAN_OC).
Simulation & synthesis
The LEON3FT is simulated and synthesized in the same manner as the
standard LEON3 processor. The area
overhead for the FT logic is less than 15% on both ASIC and FPGA
implementations. Following shows some typical area figures for
ASIC and RTAX technologies:
|
Core |
RTAX Cells |
RTAX RAM Blocks |
ASIC Gates |
| LEON3 8 + 8 Kbyte Cache |
6,500 |
40 |
20,000 |
| LEON3FT 8 + 8 Kbyte Cache |
7,500 |
40 |
22,000 |
| LEON3FT 8 + 4 Kbyte Cache |
7,500 |
31 |
22,000 |
Distribution
The LEON3FT core is distributed together with a special FT version
of the GRLIP IP library. Both source code and netlist distribution
is possible.
Software development
Software development for LEON3FT is identical to the standard
LEON3 The fault-tolerance
implementation is fully software transparent, and no software
drivers are necessary for its operation. The software development
environment is based on the eCos, RTEMS and VxWorks operating
systems. See the LEON3 software
page for more details. The LEON3 simulators (TSIM and GRSIM) as well
as the GRMON debug monitor are fully compatible with LEON3FT.
LEON3FT implemented in RTAX2000S
radiation-tolerant FPGA
The LEON3FT-RTAX
processor is a SOC design based on LEON3FT, implemented in the
RTAX2000S radiation-tolerant FPGA. In addition to the LEON3FT core,
the LEON3FT-RTAX includes a number of application-specific IP cores.
Four pre-defined configurations are available to address different
application requirements. The LEON3FT-RTAX devices are shipped as
pre-programmed and tested parts in all quality levels supported by
Actel. Available packages are CQFP352 and CCGA624. More details on
LEON3FT-RTAX is available on a dedicated page:
|
|











|