Re: Preferred OS, processor family for running embedded Ada?
- From: Stephen Leake <stephen_leake@xxxxxxxxxxxxxxxx>
- Date: Sat, 24 Feb 2007 05:45:37 -0500
"Mike Silva" <snarflemike@xxxxxxxxx> writes:
As this is just a hobby/learning thing at the moment, $10k is way,
way too much. I'd like to keep the cost including SBC under, say,
$1000. Do I dream the impossible dream? I hope not, because I'd
really like to give this a try and perhaps learn enough to use
embedded Ada commercially down the line (at which time somebody else
could fork up the $10k).
My main job at work is building a satellite simulator (GDS;
http://fsw.gsfc.nasa.gov/gds/). It's a hard real-time system. Some
people would say it's not "embedded" because it has an ethernet
connection to a sophisticated user interface, but that's another
discussion.
I develop all of the software for GDS on Windows. I've written
emulation packages for some of the hardware. I do this because it's
easier to debug top level code without the hardware getting in the
way, and the development tools (Emacs, GNAT, gdb) work better on
Windows than on the target OS (Lynx). Once it's working on the
emulator, then I run it on the real hardware. Sometimes it Just Works,
sometimes I have to get out the scope and see what's going on. In that
case, I try to fix the emulator so I won't have to use the scope again
:). Using the scope can be fun, but it's always way slower than using
gdb or higher-level tests.
So I suggest you take a similar approach. Make up some hardware that
you'd like to play with, and write an emulator for it. Then write some
code to make that hardware dance.
You can do all of that on free software and cheap hardware.
If I was hiring (which I'm not), I'd look for someone who can
implement algorithms from simple problem descriptions. That's my
biggest need.
Understanding how to use a scope to debug hardware problems is also
good, but not as important. It's easier to learn that on the job.
If you want to expand into "real hardware", there are data acquistion
and control devices that plug into PCI slots, and come with Windows
drivers. I don't use them, but I think they are fairly inexpensive.
Anything for Windows is going to be the cheapest solution, because of
economies of scale. And they are "real-time" enough to get your feet wet.
Another area to explore is FPGA programming. We use small FPGAs on an
IP bus carrier
(http://www.acromag.com/functions.cfm?Category_ID=24&Group_ID=1) to
interface to our hardware. There is a free "Web" version of Alterra
Quartus
(https://www.altera.com/support/software/download/sof-download_center.html),
or the open-source ghdl VHDL compiler/simulator
(http://ghdl.free.fr/). FPGA development relies heavily on simulation,
which does not require real hardware.
If you are ambitious, you can try to tie the ghdl simulator to your
Ada code, to allow testing the Ada interface to the FPGA in
simulation. I haven't done that yet, but I wish I could.
Someone who can do both Ada and VHDL would be a very valuable person!
--
-- Stephe
.
- Follow-Ups:
- Re: Preferred OS, processor family for running embedded Ada?
- From: Mike Silva
- Re: Preferred OS, processor family for running embedded Ada?
- From: Jeffrey Creem
- Re: Preferred OS, processor family for running embedded Ada?
- References:
- Preferred OS, processor family for running embedded Ada?
- From: Mike Silva
- Re: Preferred OS, processor family for running embedded Ada?
- From: Stephen Leake
- Re: Preferred OS, processor family for running embedded Ada?
- From: Mike Silva
- Preferred OS, processor family for running embedded Ada?
- Prev by Date: Re: typed pipes
- Next by Date: Re: The Ada 2005 name
- Previous by thread: Re: Preferred OS, processor family for running embedded Ada?
- Next by thread: Re: Preferred OS, processor family for running embedded Ada?
- Index(es):
Relevant Pages
|