Re: embedded system emulator help

"Frank Ch. Eigler" <[email protected]>
Newsgroups gmane.comp.emulators.sid.devel
Message-ID <[email protected]>
Hi -


On Mon, Mar 07, 2005 at 09:06:31AM -0800, Imran Shafiq wrote:

> [...]  automotive subsystems are comprised of [ECU] Electronic
> Control Units (e.g fujitsu mb90f598, Powerpc mpc 566) connected
> through a BUS system usually CAN.  [...]  So does that means I have
> to implement the whole instruction set for every ECU??

That's right.  If you want to simulate software compiled for a given
platform, and a model of that platform is not already available, then
there is some coding to do.  I believe there is no PowerPC model in
sid at the moment.


> I also have to simulate UART, Timer etc

Some UART and timer models are already included in sid.  They may be
useful as is, or may serve as a basis for derivation.


> It should be possible to check the data on the bus So that would
> mean I have to implement the CAN protocol??

Well, one doesn't simulate a "protocol" per se, rather entities that
perform it.  You would need to pick a level of abstraction at which
the simulator should model a CAN system.  This could be at the
controller level, wire level, perhaps even some software level. This
allows you to trade of hardware fidelity versus modeling simplicity.


> Simulator should also report stack overflows or memory
> limitations.

Some of this is often best done by instrumentation added by the
compiler (check gcc's -fstack-limit options).  Or a simulator could
also model "missing" physical memory that would trigger bus errors
upon attempted access.  Think of the latter as mprotect(PROT_NONE).


> IS all this possible with SID considering the fact that i have to do
> it in 5 months :) .

Probably, if you pick another CPU architecture that is already
well-supported in sid, such as ARM.  If nearly all of your software 
is to be written in C, you could argue that the difference in the
processors is almost immaterial.


> Where can i start with an example. any pointers?

I would start with one of the classic sid configurations: running an
application linked with the eCos RTOS on a model of a board such as
the ARM PID.  Analyze the application, eCos linkages, memory and
peripheral layout, and the corresponding sid configuration.


- FChE
signature.asc (application/pgp-signature, 189 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFCL1cAVZbdDOm/ZT0RAlFlAJ90xANUX02xuoiJuMTdscUADMZAwACfZ1hq
S3IHPEGRZUTV95vO80/YoHg=
=Rhgn
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.