Ada Embeded System Alternatives

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
I've been assigned the task to provide alternatives and solutions to
bringing legacy Ada 83 code to a new embedded system.

The new system's hardware, OS and language of choice is fixed (Mercury
Computer SBC PPCs, MC/OS, and C).  The use of C is not required,
however, if a justifiable alternative is presented.

The options I see are:
1) Port the code from Ada to C
2) Find Ada compilier for  MC/OS PPCs

Translating to C gives better tools and vendor support.  Using Ada
gives more robust code and eliminates translation errors.

Has someone pursued any options similar to these on a project before?
If so, what did you do, how did you do it, and how was the outcome?
  
Thanks,
pauL
-
Software Engineer
Northrop Grumman

Re: Ada Embeded System Alternatives
Quoted text here. Click to load it

As I remember Mercury supplies the gcc compiler for their systems. So
with very little effort you could port GNAT.  But I don't recommend
that.  If you want to use the Green Hills tool suite, why not do that:

To quote from a Green Hills press release at Mercury Computer's site:

The new Green Hills compiler accepts C, C++, EC++, and Ada95 source
code, and generates optimized object code for over 20 models of PowerPC
ISA-based processors, including Motorolas 603e, 850/860, 8240/8245,
8250/8260, the newly announced 8540 and 8560, 740/745, 750/755,
7400/7410, 7440/7445, 7450/7455, and IBMs 403, 450 and 455.
Optimizations are both global and target specific.

And:

The C/C++/EC++/Ada95 compiler is part of the MULTI Integrated
Development Environment (IDE), which provides all the development tools
needed for embedded applications. The complete MULTI IDE, with new C/C++
compiler and target connection hardware, is available immediately at a
price of $5,900 per development seat for a PC node-locked license.

Translation, by tomorrow you should be able to throw the existing Ada
code at the Green Hills compiler and see if there are any third party
packages missing...  (From experience, you will probably have to create
generic instantiations of some standard Ada 95 numerics packages.)  That
is assuming that you intend to use the Green Hills compiler and the
MULTI 2000 IDE.


Site Timeline