FPGA project?

Free and Open Source Engine Management discussions excluding more specific things on this board.
Post Reply
toalan
Wideband Wizard
Posts: 241
Joined: Tue Jun 10, 2008 2:53 am
Location: Toronto Canada
Contact:

FPGA project?

Post by toalan »

I ordered a Digilent board a few months ago. I have not put it to use yet. Anyone have any cool automotive projects that an FPGA would be great for? Something not to hard, as I am a newb to FPGAs.
User avatar
ababkin
LQFP112 - Up with the play
Posts: 215
Joined: Tue Jan 15, 2008 5:14 pm

Re: FPGA project?

Post by ababkin »

No automotive projects i've seen

what board did you get? There is a free logic analyzer project for one of the digilent boards (spartan 3 , not 3e though)

Alex
Legal disclaimer for all my posts: I'm not responsible for anything, you are responsible for everything. This is an open and free world with no strings attached.
toalan
Wideband Wizard
Posts: 241
Joined: Tue Jun 10, 2008 2:53 am
Location: Toronto Canada
Contact:

Re: FPGA project?

Post by toalan »

I have the 3E board, I have seen the FPGA logic analyzer and it looks pretty nice, but I already have a ghetto logic analyzer.
User avatar
jharvey
1N4001 - Signed up
Posts: 1607
Joined: Tue Jun 10, 2008 5:17 pm

Re: FPGA project?

Post by jharvey »

I think a fairly large issue with FPGA's in the automotive world is the need to be loaded up every time they are booted. That loading time makes it hard to get the first spark and fuel correct.

FPGA's are usually best for places where you have a lot of data that needs specific processing. They would best here for complicated tasks, but probably not very good for the overall project. Perhaps a sub-set of EMS maybe ion sensing. I could see that as having several signal blocks that might be able to be done with an FPGA.
User avatar
ababkin
LQFP112 - Up with the play
Posts: 215
Joined: Tue Jan 15, 2008 5:14 pm

Re: FPGA project?

Post by ababkin »

toalan: What ghetto analyzer you have? i haven't seen a free one for 3E

jharvey: I think the time-critical part of EMS is the perfect field for programmable logic. Usually there is just not enough high res counters in regular uC's to cover many cylinders (barring the software ISR's with their indeterministic delays). Things like ion sensing or knock detection is another good use for it.

Alex
Legal disclaimer for all my posts: I'm not responsible for anything, you are responsible for everything. This is an open and free world with no strings attached.
thebigmacd
LQFP112 - Up with the play
Posts: 205
Joined: Thu Apr 10, 2008 5:51 pm

Re: FPGA project?

Post by thebigmacd »

This is what National Instruments did...

http://sine.ni.com/csol/cds/item/vw/p/id/538/nid/124100

A very interesting tidbit from that article...
We used a combination of these control strategies by applying speed density to low-speed and low-load operating points where intake air pressure had the most variability. An alpha-N method was applied to the rest of the operating map. After we noted Yamaha’s use of sensors on the production motorcycle, we determined that the factory ECU was likely implementing a similar strategy. We used the data acquired in the mapping phase to calibrate these control strategies. Experienced riders could not identify significant differences between the factory ECU control and the prototype control. Most importantly, we achieved this level of control without dynamometer time. We successfully achieved our goal of prototyping a motorcycle ECU on time and on budget.
FWIW this is the exact opposite of what the hybrid alpha-n firmware in MSextra does!
Keith MacDonald
Control Engineering (Systems) Technologist
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: FPGA project?

Post by Fred »

thebigmacd wrote:FWIW this is the exact opposite of what the hybrid alpha-n firmware in MSextra does!
If you mean ms2extra, you can configure it any way you like. I didn't know ms1 firmware had it if you were referring to that.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
thebigmacd
LQFP112 - Up with the play
Posts: 205
Joined: Thu Apr 10, 2008 5:51 pm

Re: FPGA project?

Post by thebigmacd »

Fred wrote:
thebigmacd wrote:FWIW this is the exact opposite of what the hybrid alpha-n firmware in MSextra does!
If you mean ms2extra, you can configure it any way you like. I didn't know ms1 firmware had it if you were referring to that.
There is no reference to Hybrid Alpha-N in the MS2extra docs

MS1extra had it first nonetheless
http://www.msextra.com/manuals/MS_Extra ... #deshybrid

And I quote:
Alpha-N is for naturally aspirated engines ONLY, the Hybrid Alpha-N adds the MAP value into the fueling algorithm, (obviously the map sensor will need to be connected to the inlet manifold) so fueling is increased with boost pressure.
Please Note: There is no extra table or any other settings other than selecting the option in Advanced Settings. It is simply used to add the MAP value to the equation.
It's very much a hack, and it was intended to improve idle with a poor MAP signal by using alpha-n at low-load low-rpm, which is exactly the opposite of how NI does it.
Keith MacDonald
Control Engineering (Systems) Technologist
GrowlingandBiffo
QFP80 - Contributor
Posts: 56
Joined: Sat Apr 26, 2008 7:42 am

Re: FPGA project?

Post by GrowlingandBiffo »

ababkin wrote:No automotive projects i've seen

what board did you get? There is a free logic analyzer project for one of the digilent boards (spartan 3 , not 3e though)

Alex
This is what Life were doing 4 years ago. There are many ways to skin a cat.

(The lads at Life, are ex-Pectel)

"For the ECU board, Life Racing opted to use Actel's ProASIC APA450 non-volatile FPGA to sit alongside the host processor, a PowerPC 565 made by Motorola. Colby was no stranger to working with Actel devices based on antifuse technology in previous projects. He chose them over volatile SRAM-based parts because the ECU designs needed an FPGA that would work as soon as power is applied to the system. The ECU cannot wait for a configuration file to be downloaded from a serial EPROM into an SRAM-based part. "The antifuse parts were also very simple in terms of board designs," said Colby.



For the new generation of ECUs, Colby needed a design where the FPGA could be reprogrammed. But he still wanted the FPGA to be live at power-on. So, the ProASIC was selected. "With flash, we still do not have to worry about boot time," he explained.

The move to the ProASIC FPGA has proved important for a number of reasons. It makes the design more flexible and it greatly reduces the number of spare boards the company has to carry for each team. Crashes and other calamities on the track can mean a team calling up for a replacement for a race the next day. "With the flash-based FPGA, the board can be made blank and programmed as necessary," said Colby. "We have the ability to ship product that is working but, in a sense, not complete. We manufacture in low volumes and so we need to pay attention to lead times."

Another reason for using a reprogrammable FPGA is that it allows more flexibility over which parts of the control run in software and which can be implemented as hardware. In the early days of motor racing with ECUs, the boards were based on designs used in road vehicles. Over time the paths taken by the racing community and the road-car builders have diverged.

Colby said the ECU in a modern car will make extensive use of engine models and use advanced processing techniques to determine how the engine is performing and avoid conditions such as knocking. In the race environment, knock detection can be as important but is handled in a different way. With a road car, it can take years to optimise the theoretical models and control algorithms for the ECU. There is no time to do that for a racing car so the engineers rely on empirical models of engine behaviour based on direct experience of how it performs on the track.

Without the use of an advanced theoretical model, latency is a much bigger issue for the racing ECU than for its road-car cousin. That means performing a lot of measurements, such as crankshaft position, in a short space of time and reacting to changes quickly. The more frequently a reading can be updated, the better the ECU can gauge how conditions are changing. For example, when pulling out of a corner, engine conditions will change rapidly. Reacting to this can mean the difference between staying in front or dropping behind a competitor with better acceleration.

Says Colby: "With a processor you may only have time to look at a signal once in a given period. The FPGA can look at the signals more frequently and make a more accurate prediction. That way, you can better handle acceleration."

The FPGA can perform pre-processing on the incoming signals, such as determining crankshaft position by letting the FPGA deal with the pattern of signals produced by the encoder. As the FPGA handles a lot of the sensor pre-processing, "there is very little to change in the software for each different engine", said Colby, which helps greatly in getting an ECU ready for each new engine.


He said that decisions on interrupt structures and how peripherals are controlled were all informed by their effects on software complexity. For example, Colby said that peripherals will align to different clock edges used by the queued serial peripheral interface (QSPI) that features on the PowerPC embedded processor. "We would try to organise those transfers to be on different buses," said Colby, as that would simplify the programming model.

The focus on rapid software development is paying off for Life Racing, and its customers, in the highly competitive world of motor racing. It shows how critical choices, such as which FPGA to use, can pay dividends in implementing a complete system."
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: FPGA project?

Post by Fred »

To thebigmacd :

OK, fair enough. I admit to knowing F all about MS1 primarily because when I researched it years ago, I found that it wasn't all that good and MS2 was "coming soon" so I waited and got that.

MS2Extra does have hybrid. you just select what you want for each table and how to merge them. multiplicative is the normal mode so 100% in one table means that the other table is in total control and vice versa. Though you can have additive too.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Post Reply