This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: GDB ARM simulator.


>>>>> "Fabrice" == Fabrice Gautier <Fabrice_Gautier@sdesigns.com> writes:

    Fabrice> Is there any support to run eCos in the arm-elf-gdb
    Fabrice> built-in ARM simulator?

    Fabrice> I mean, I saw there was templates for other arch
    Fabrice> simultors, but not for ARM I build the default eCos with
    Fabrice> the ARM PID templates and a simple Hello World program,
    Fabrice> it seem to works fine in the debugger except it is stuck
    Fabrice> in an endless loop trying and failing to initialize the
    Fabrice> Serial Port.

The most common use for these built-in simulators is for compiler
testing, which only requires instruction-level simulation. Typically
when the gcc group within Red Hat does a port to an embedded
processor, part of the contract involves writing such a simulator.
This allows the gcc developers to work and provide support without
needing continuous access to the hardware - which may not actually
exist at the time most of the work is done.

Some of the simulators go a bit further, e.g. they can provide some
sort of interrupt mechanism and especially timer interrupts. This can
be sufficient for an eCos configuration, e.g. the am31_sim target, but
the functionality will be limited.

Some of the simulators go further still, and allow a specific board to
be simulated. eCos can then be configured for that board, e.g. the
stdeval1, and applications can run unchanged either in the simulator
or on real hardware. The simulator may be able to cope with just one
board, or with a number of different boards.

Going beyond instruction set simulation is comparatively new, at least
as far as the GNU tools are concerned, and because there is more work
involved it will be more expensive. For many existing architectures,
chances are that only instruction set simulation is available. If you
do try to run an eCos application in an instruction set simulator, it
is likely to hang as soon as something tries to access real hardware.
I suspect that this is the case for ARM, although I have not checked
the gdb sources or documentation.

Bart Veer // eCos net maintainer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]