| Overview of ERC32 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. Market position The ERC32 Ada products listed below address different concerns with regard
to nature, performance, evolution and target applications.
ERC32CCS is a Free Open Source Software (FOSS) development suite that includes RTEMS as the Real Time Operating System (RTOS), a toolchain (compilers, linkers, assemblers, etc) for C, C++ and Ada95 and a simulator. This is the only platform that supports all the features of Ada95 and, as such, suffers a hit on the memory footprint.
RCC is another FOSS platform similar to ERC32CSS that is made available by Gaisler. The biggest difference is that it does not include an Ada compiler but on the other hand it includes more up to date versions of RTEMS and associated toolchain.
Both ERC32CCS and RCC platforms rely on the same FOSS components (the RTOS and the associated toolchain; although they use different versions). However, almost all of these components have undergone considerable updates and are currently missing an updated package with all the current versions of the components.
The XGC ERC32 Ada is a commercial open-source product that uses a modified build of GNAT and seeks resource and execution performance over easy accommodation of evolutions of components. XGC ERC32 Ada supports a selection of Ravenscar
restrictions and a number of other standard restrictions to the sequential component of the language.
GNAT/ORK is a true GPL product designed to trade selected aspects of performance for the preservation of the standard GNAT interfaces so as to allow for the independent evolution of the GNAT and the ORK components. GNAT/ORK supports the Ravenscar subset of concurrent Ada and (selectively)
the whole sequential component of the language.
GNAT Pro is a complete development solution that includes an IDE, a toolchain (compilers, assemblers, linkers, etc.) and a small run time system that provides the means for execution on top of a bare board (i.e. runs 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 as well as with the Ada83 and Ada95 standards.
ObjectAda RAVEN is a commercial product that supports the Ravenscar profile along with a range of other standard restrictions. ObjectAda RAVEN includes a compiler enforcing the supported restriction and a compact and efficient runtime. ObjectAda RAVEN was designed and implemented to support
certification-based qualification.
On account of their specific characteristics, the above products feature vastly different resources and execution performances.
GCC-ERC32 (Open source)
Name |
GCC-ERC32 |
Language(s) |
C, C++ |
Development platform(s) |
Solaris, GNU/Linux, Windows NT/2000. |
Information |
Developed under the ESA/ESTEC project FRESCO (FRee Software
for ERC32 Systems COoperation) by Spacebel (Belgium)
and XGC (United Kingdom). The licence is GNU Public Licence (GPL) and as
such the source code and binary distributions can be freely copied. It's
based on the latest version of GCC. The libraries include POSIX thread
library (libpthread), math library (libm), C library (libc) and compiler
support library (libgcc). Supported formats are coff and elf. |
Status |
The FRESCO project is finished. The last functionalities added
are the support of Dwarf format (enables logic analysers and third party
debuggers to work on a highed level that assembler) and configuration supporting
the Temic ERC32 Single Chip evaluation board (TSC).
Used by Alcatel Valence as the baseline for all their C-based
space developments.
Used in the PROBA project together with VxWorks (Spacebel).
Used in the SMART-1 project (Spacebel). |
www |
XGC, SpaceBel |
ERC32CCS (Open source)
Name |
ERC32 Cross Compilation System (ERC32CCS) |
Language(s) |
C, C++, Ada 95 |
Development platform(s) |
Solaris, Linux |
Information |
Developed by ESTEC for testing the ERC32. The toolset
is based on the GNU C/C++ compiler and the GNAT Ada95 compiler. The Run-Time
Kernel is RTEMS (GPL) and the Newlib C-library is from Cygnus. It's under
GNU license and distributed freely. |
Status |
The product family is now supported by the company Gaisler
Research. Errors arising from various testing of the ERC32 have been fixed.
Since the Ada 95 part is based on standard GNAT technology, the codesize
and performance figures are quite poor compared to the Ravenscar compliant
tools. This toolset has been used extensively in experiments.
RCC is a more recent release, with up to date versions of RTEMS and associated toolchain, but without Ada compiler.
|
www |
Download from the right menu, Gaisler Research |
ERC32 Ada (Open source)
Name |
ERC32 Ada |
Language(s) |
Ada 95 (3 subsets, including one which is Ravenscar compliant) |
Development platform(s) |
Solaris, GNU/Linux (and with decreased functionality Windows NT/2000) |
Information |
Developed by XGC based on modified versions of GNAT and GNU technology.
Different subsets suited for embedded real-time applications are availiable.
Validation of the toolset has been done. |
Status |
Since the toolset is based on a modified version of GNAT, some work
in keeping the source code in line with GNAT and GNU modifications may
be required in the future.
Used for the Beagle 2 project |
www |
XGC Software |
ORK (Open source)
Name |
Open Ravenscar Real-Time Kernel (ORK) |
Language(s) |
Ada (Ravenscar subset), C, C++ |
Development platform(s) |
x86 GNU Linux and Sparc Solaris |
Information |
A GPL licensed (i.e. open source) tasking kernel which provides
full conformance with the Ravenscar profile on ERC-32 based computers.
The kernel is integrated with the GNAT compilation system. An interface
based on a subset of pthread is provided to C-applications. Nearly all
Ravenscar restrictions are checked at compilation time by a number of pragmas.
The debugger is an enhanced version of the GDB with a graphical interface
provided by DDD. A new version of the ERC-32 simulator SIS called tsim
enables the debugger to debug the executable image (without a monitor)
at source level. |
Status |
ORK was developed under ESA/ESTEC contract. One of the goals of
the kernel in the project is to provide a clean interface to the GNAT specific
upper layers. Thus future evolution of GNAT will be easily intergrated
with ORK.
The product is now maintained by AdaCore as a special version of GNAT-Pro. |
www |
OpenRavenscar, AdaCore GNAT Pro
|
ERC32/RAVEN (Proprietary)
Name |
ObjectAda Real-Time Sparc/Solaris x, ERC32/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. Certification material can be provided.
The simulator and linker which have been used for testing this product
is from the XGC ERC-32
toolset. |
Status |
Raven was ported to ERC-32 under ESA/ESTEC contract. Future improvements
identified include the integration of the debugger with the simulator,
which will enable debugging without a monitor; and inclusion of support
for Ada exceptions.
Not in project use yet. |
www |
Aonix |
Last update: 23 July 2008 | |