Overview of LEON tools


This page is given for information, not for advertisement. The information given here represents the knowledge of the authors at a given moment and does not pretend to be exhaustive.

The LEON is ERC32’s successor and is the latest iteration of ESA's effort in providing a source of radiation tolerant microprocessors to the European space industry. Some of LEON’s new features include the presence of cache, a Memory Management Unit (MMU), and the architecture transition from the SPARC v7 to v8. Consequently, the development environments had to be updated, evaluated and validated in order to guarantee that they are suitable for the development of space applications. The TNC (Tool for New Computers) project had the purpose of evaluating the current development platforms for LEON by a consortium constituted by EDISOFT, SYDERAL, AONIX and ASTRIUM. The ESA Ravenscar Benchmark (ERB) was used to evaluate the efficiency (size and performance), as well as other aspects, of the existing development platforms for LEON.
 
 
 
Market position
 
RTEMS is a Real Time Operating System (RTOS) that is available under a Free Open Source Software (FOSS) license. RTEMS provides networking and filesystem support and allows the development of applications using the POSIX, uITRON, RTEID and Ada APIs. Supported programming languages include C, C++ and Ada. RTEMS makes available Board Support Packages for the ERC32, LEON2 and LEON3 processors among others.

BCC and RCC are respectively bare-C and RTEMS compilers provided by Gaisler Research, as well as VxWorks 6.5 for Leon.

ObjectAda Real Time RAVEN is a complete development solution that includes an IDE, a toolchain (compilers, assemblers, linkers, etc.) and a small Run Time System (RTS). The RTS provides the means for execution on top of a bare board (i.e. running on top of the hardware without the need for any Real Time Operating System). ObjectAda RAVEN is a commercial solution that complies with the Ravenscar tasking profile along with a range of other standard restrictions. ObjectAda RAVEN includes a compiler that enforces the supported restriction and a compact and efficient runtime. ObjectAda RAVEN was designed and implemented to support DO-178B level A certification. Version 7.2 of ObjectAda Real Time RAVEN includes support for the LEON processor.

GNAT Pro is a complete development solution that includes an IDE, a toolchain (compilers, assemblers, linkers, etc.) and a small Run Time System (RTS). The RTS provides the means for execution on top of a bare board (i.e. running on top of the hardware without the need for any Real Time Operating System). GNAT Pro is a commercial solution that complies with the Ravenscar tasking profile along with a range of other standard restrictions. GNAT Pro includes a compiler that enforces the supported restriction and a compact and efficient runtime. GNAT Pro was designed and implemented to support DO-178B level A certification. Version 6.0.1 of GNAT Pro includes support for the LEON processor.

The PERC product range provides clean room implementations based on standard Java platforms, and the existing RTSJ specification. Based on profiles that both subset and supplement established standards in an open, standards-based forum, PERC provides solutions for three complementary market segments: complex, dynamic soft real-time; deeply embedded and high-performance hard real-time; and certifiable safety critical applications. PERC Ultra is designed for use on large scale applications that need to use the rich features of Standard Edition Java libraries, coupled with predictable performance. PERC Pico is designed for applications with demanding requirements for small footprint, fast execution, and low level device access. PERC Raven is designed to apply safety constraints which provide the basis for fulfilling safety certification requirements.

The AERO project has used the Jamaica virtual machine of Aicas to secure the real-time behaviour of a typical on-board application.
 
 
RTEMS
 
Name RTEMS
Language(s) C, C++, Ada
Development platform(s) Linux, Windows (Cygwin).
Information Uses the GNU toolchain (Binutils, GCC, GNAT and GDB) and Newlib as the C and Math libraries.
Provides filesystem and networking features.
Applications can be developed using the POSIX, uITRON, RTEID and Ada APIs. .
Status A development platform, like ERC32CCS or RCC, is missing.
The LEON port was done by Gaisler.
Edisoft offers a European maintenance centre for RTEMS.
www Edisoft

 
 
BCC and RCC
 
Name BCC and RCC
Language(s) C, C++
Development platform(s) Solaris, Linux
Information BCC is a Gnu based cross-compilation system for LEON processors, including in particular gcc, binutils, newlib, bare-C run time system, pthreads, boot-prom builder, gdb, ddd, etc.
RCC is a cross-compilation system for both ERC32 and LEON processors, including in particular gcc, linker, assembler, archiver, newlib, RTEMS and GDB.
Status The product family is supported by the company Gaisler Research.
www Gaisler Research

 
 
ObjectAda real-time RAVEN
 
Name ObjectAda Real-Time RAVEN
Language(s) Ada 95 (Ravenscar subset)
Development platform(s) Solaris
Information The Raven Product is a commercially Ada Ravenscar product (plus additional restrictions for reduced runtime) with Run-Time System and compilation chain streamlined for Ravenscar. Suited for DO-178B level A certification, certification material can be provided.
Status Raven was ported to LEON under ESA/ESTEC contract and requires evaluation.
www Aonix

 
 
GNAT Pro
 
Name GNAT Pro
Language(s) Ada83, Ada 95, Ada2005, Ravenscar subset
Development platform(s) Linux, Solaris, Windows
Information GPL and GNAT Modified GPL. GNAT Pro is provided as a commercial product.Implements the Ravenscar tasking profile. The High Integrity Edition is suited for DO-178B certification and provides 4 different profiles: Zero Footprint, Cert, Ravenscar and Full-Runtime.
Status Supported by AdaCore. Has been recently ported to the LEON processor and requires evaluation.
www Adacore

 
 
AONIX PERC Ultra
 
Name AONIX PERC Ultra
Language(s) Java
Development platform(s) Linux, Solaris, Windows
Information A real-time embedded Standard Edition Java solution. Designed to be deterministic. Provides real-time garbage collector, priority inheritance and precise timers.
Status Under contract to develop versions of PERC Ultra for the LEON target running with Xluna.
www Aonix

 
 
AONIX PERC Pico
 
Name AONIX PERC Pico
Language(s) Java
Development platform(s) Linux, Windows
Information Based on the RTSJ profile defined by the JSR-302 experts group.
Status Under contract to develop versions of PERC Pico for the LEON target running with Xluna and RTEMS.
www Aonix

 
 
AONIX PERC Raven
 
Name AONIX PERC Raven
Language(s) Java Ravenscar profile
Development platform(s) Linux, Windows
Information Based on the RTSJ profile defined by the JSR-302 experts group. Designed to be deterministic and certifiable to DO-178B Level A.
Status This product is under development but no port is currently planned for the LEON target.
www Aonix

 
 
Jamaica-VM/AERO-VM
 
Name Jamaica-VM/AERO-VM
Language(s) Java
Development platform(s) Linux, Solaris, Windows
Information Jamaica-VM has evolved from AERO-VM. Supports the RTSJ profile defined by the JSR-302 experts group.
Status There is work in progress by the AERO-VM consortium to support the LEON based boards and to validate the software for space system applications.
www Aero project

 
 
Last update: 11 November 2009


Related articles

 •  Simulators (http://www.esa.int/TEC/Software_engineering_and_standardisation/SEMHYAXIPIF_0.html)

Related links

 •  RTEMS Maintenance Center (Edisoft) (http://rtemscentre.edisoft.pt)
 •  Gaisler Research (http://www.gaisler.com)
 •  Aonix Raven (http://www.aonix.com/objectada_raven.html)
 •  AdaCore GnatPro (http://www.adacore.com/home/gnatpro)
 •  Aonix PERC (http://www.aonix.com/perc.html)
 •  AERO project (http://www.aero-project.org)
 •  Jamaïca VM (http://www.aicas.com/sites/jamaica.html)