[Diy_efi] new EFI controller

Klaus R Schambeck klaus at micro-craft.com
Wed Mar 12 05:43:51 GMT 2003


update


> Hi Bevan, hi to the EFI group !!!
>
> Both chips have 16 CAPCOM2 (individual internal timer controlled ins or
> outs), should be plenty for timed IO

16's not enough
(8-injection, 8-ignition, at least 1 for timing)

****************************************
there are 16 more sw timer which can produce intrs, good enough for
injection timing, at idle it's more precise as at full RPM, depenent upon
intr priority setup
****************************************

> Roughly 10k internal ram (should be plenty, large constant tables can be
in
> flash and reprogrammed) or an additional 8 bit 128k SRAM

10k is enough for data, but if the instructions always have to get fetched
from (8/16bit) RAM/FLASH then the entire system will be slowed down to a
crawl.

****************************************
I am doing embedded control software for 20+ years (assembly and C)
I had a computerized ingition running in 1982 on a 8048 uP
I can not imagine that you run out of processing power if you write the code
right
****************************************

> Use external flash Atmel AT29C1024 (16bit, with 256 byte sectors). If you
> want to save money, use an 8-bit external Flash path (well 1/2 the speed,
> but the timers do most of your work anyway)
> Internal Flash typically costs more than the external flash plus the glue
> logic and the pc-board space. If you limit the external bus to the flash
> alone, the layout should not get too complicated

Internal Flash does cost more than external, and can't be replaced
individually.  However it also has much lower access time and better
integration (as would be expected).  The key question is "Is the extra cost
justified?" and I really think that it is in this case.

******************************************
The V series with internal flash is as fast as it goes. I bet the CPU will
be 90% idle if the code is written effectively
******************************************

> You can use the "V series" or similar on the C16x parts. 40 MHz and
internal
> flash (10 times writeable). You need external flash for the development
and
> fake the now used up I/O pins (for address and data lines) with 2 sets of
> I/O functions (should be some simple peripheral I/O functions anyway)

It's a nice design idea, however it's having to work around problems with
the processor, and in particular the fact that you would then require an
external bus...
The MPC565 doesn't have to make such sacrifices

*********************************************
What is the the pricetag for the 565 CPU, RAM and FLASH ?????????????
compared to $25 for the V series
*********************************************

> Use the MC33385 as injector drivers for 4 cylinders or double it for 8
> There might be a 6 cyl driver with SPI interface (but less current)

The MC33385 isn't an injector driver... it's a basic low-side quad driver.
ie 4x low impedance drivers.  It doesn't have the facilities for current
limiting or any other such injector requirements

*********************************************
it has a bit more and is advertised for injectors (if I'm not wrong)
I use it and it works fine
*********************************************

> Use a CS1124 for inductive pickups if needed.
Any hall effect pickup shoudl suffice...

*********************************************
what if you have already an inductive pickup installed from the factory
*********************************************

> Write the code in "C" in medium memory model with the NEAR keyword for
> functions within +/- 32k range (I can't imagne that the code gets bigger
> than 40k). Look at the assembly output for the code it procudes and you
will
> get a feeling for how to optimize runtime critical code. I usually write
my
> own intr vector table and not the "C" compiler, as well as the save and
> restore algorithm for ISRs.

Yeah, interrupt vectors etc are best written in assembly, or if not
practical in C but with the assembly checked for consistancy/errors or
possible improvements.

> Additional outs through SPI based output drivers from Allegro

SPI is available on the MPC565 as well, but can be used for genuine
auxillary outputs, ie non core components.

> you have 8 or more 8 bit analog ins. If you scale them right it should
give
> you plenty of resolution (0.1024 %, in reality maybe 0.25). What are you
> gonna do with 14 bits if the last few bits are floating all over the place
> due to noise.

******************************************
correction 10 bit analog ins
******************************************

I wouldn't say 8bits too loudly :P
many people on here seem to think that 10bits is borderline and want like
14->16bits.
Maybe we just should go with professional audio quality 24bits lol
10bits is fine, 8bits may give some problems especially with log scales.
8bits = 256 codes... = 0.4%  There's nothing really wrong with this, just
not that suited to log scales (as mentioned) those extra 2 bits really do
help :)

> I can not invision on running injectors on PWM current limited drivers
with
> minimum on times of 5 to 10 ms. If you want to open them faster either
> charge a cap with a higher voltage and switch it on along with the normal
> 12v. The circuitry could get a bit complicated (expensive)

Yeah, the injection scheme and ignition scheme are the hardest parts... and
then followed by ION sense.  The rest of the stuff isn't much...  These are
independant of the processor though.

 > Or have 2 outputs drive it, one providing a short defined pulse (maybe
> external hardware timed (74HC4538) and the second applying a holding
voltage
> or current.

Not a bad idea, but that requires two voltage sources if the second is to be
constant on.  I'm thinking more about a switch mode current regulation...

> to make sure they switch off fast put a zener into the back EMF diode path
> (A higher voltage during the injector energy discharge makes it faster)

Yep, the consensus seems to be zener or shottky...
I'd probably say shottky, though I'd have to look into it slightly more...

***********************************************
sorry, a schottky doesn't drop a specified voltage like a zener
a schottky is very fast and has a low forward voltage and a higher leakage
current
***********************************************

> That's my 5 cents to a simple EFI concept.

Good ideas, and you could use a very simple micro if you want all the
switching to be external (ie use a low level PIC and have all switches
controlled over SPI).
I just don't think that it's all that suited to the current direction :)

> Please, I hope that no one got offended by my opinion.
No offense taken, everyone has there own ideas about this subject.  It's in
choosing which are the best ideas (and adding them to our own repertoise
(sp??) ) that we all become better designers :)

> Best regards, KLAUS


_______________________________________________
Diy_efi mailing list
Diy_efi at diy-efi.org
http://www.diy-efi.org/mailman/listinfo/diy_efi



More information about the Diy_efi mailing list