C for embedded controllers (was Re: Timed mechanical fuel

Dan J. Declerck declrckd at cig.mot.com
Tue Nov 28 18:50:59 GMT 1995


> >	Message 11:
> >	From owner-diy_efi-outgoing at coulomb.eng.ohio-state.edu Wed Nov 22 12:42:42 1995
> >	From: Ed Lansinger <elansi01 at mpg.gmpt.gmeds.com>
> >	Subject: RE: C for embedded controllers (was Re: Timed mechanical fuel injection ) 
> >	To: diy_efi at coulomb.eng.ohio-state.edu
> >	Mime-Version: 1.0
> >	
Lot's of stuff about language specifics and productivity deleted.

> The engine/trans controller I am working on uses assembly vs. 
> a high level language used for some other programs. Our RAM/ROM 
> usage is substantially smaller (~40-50%!) and there is no
> comparison in our throughput numbers. This translates into SERIOUS
> $$$ at high volume. (I realize this won't apply in most applications
> here.)


On cellular phone products, we chose one compiler over another because
it had an option to store integers as 16 bits and push them on the stack that way.
This reduced stack usage considerably as well as some execution time,
and allowed us to run the whole product within 64K of SRAM.

> (Actual dialog)
> Dave: What is the throughput on your program?
> Chuck: It is about ~80% at 9100 RPM.
> Dave: Why the #^@&$&% are you doing testing at 9100 RPM?
> Chuck: Because my simulator wouldn't go any higher.  ;)

When you run out of CPU time within real-time constraints, do you
use any of the Hewlett-Packard performance analyzer tools to
identify hot-spots for possible hand-coding?

I've found these to be quite invaluable in eeking out the
last bit of performance to make certain real-time windows.

I assume I may run into trouble with a project where top RPM
is about 11,500 RPM... But I know I don't have to control
a transmission (It's a bike).

-Dan

-- 
=> Dan DeClerck                        | EMAIL: declrckd at cig.mot.com      <=
=> Motorola Cellular CSD               |                                  <=
=>"The truth to CDMA... is spreading"  | Phone: (708) 632-4596            <=
----------------------------------------------------------------------------



More information about the Diy_efi mailing list