EmbDev.net

Forum: µC & Digital Electronics Arm Cortex for Automotive Engine Management?

Author: Paul Ware (enigmapaul)
Posted on:

Hi Guys,

I'm wondering about the applicability of ARM Cortex M4 or other families
for engine management.  Is the M4 used in this applicable at all, or is
that more towards the Cortex R4?

What might be the key differences between the Cortex M4 and the
established engine management players like Freescale MPC55xx and
Infineon Tricore?  Is ARM growing its share in this segment?

Thanks!

Paul
Author: Robert Teufel (robertteufel)
Posted on:

Hi Paul,

engine management is dominated by two players, Freescale and Infineon.
Neither is using a Cortex based to device to control an engine, both
have been using higher performance devices than a Cortex-M for many
years. I would not know about Cortex-R in engine management, however
afaik they are used in ABS systems.
Currently the dominating architecture for engine management is the
Infineon TriCore, which has been providing DSP and Floating Point
options for many years.
While Cortex-M4 is probably targeted at Automotive applications I doubt
ARM envisions the Cortex-M in engine management. There is so much more
to automotive than this, although I have to admit, I still consider
engine management the heart of all automotive applications.
There will be even more computing performance required for all the car
infotainment and there high end Cortex devices seem to do really well.

Cheers, Robert
Author: Paul Ware (enigmapaul)
Posted on:

Hi Robert,

Thanks much for the reply.

I know that Cortex-M3 is used for industrial control and motor
applications, but not engine management.  The Cortex M4 seems to be a
bit more power and can do floating point.  But the Cortex-R4 seems to be
targeted at, among other things, engine management.

Do you know of any automotive controllers that use the R4, or is this
still an emerging application?  Also, do you know what kind of functions
that Freescale (I assume MPC5xx and MPC5xxx) and Infineon Tricore have
that distinguish it as an engine management device?

thanks,
Paul
Author: TPU (Guest)
Posted on:

Yes they have one or more TPU (Time Process Unit)
Freescale has introduced the TPU yeras ago in the 68xxx uC.
Newer devices as the MPC5xx have better and more flexible TPUs.

Go to the Freescale hompage and search for it.
Author: TPU (Guest)
Posted on:

Shortform from the ref manual MPC561:

Chapter 19
Time Processor Unit 3

The time processor unit 3 (TPU3), an enhanced version of the original
TPU, is an intelligent,
semi-autonomous microcontroller designed for timing control. The TPU3 is
fully compatible to the TPU2.
Operating simultaneously with the CPU, the two TPU3 modules process
micro-instructions, schedule and
process real-time hardware events, perform input and output, and access
shared data without CPU
intervention. Consequently, for each timer event, the CPU setup and
service times are minimized or
eliminated.
The MPC561/MPC563 contains two independent TPU3s: TPU_A and TPU_B.
Author: Robert Teufel (robertteufel)
Posted on:

Mr. TPU guest is right. One major difference is the timer capability.
TriCore as multiple timer arrays that can be combined in any thinkable
way and then some more. IIRC there are approx. 100 timers on a TC1796.

One brief quote from the TC1796 data sheet "286 interrupt sources,
generating up to 92 service requests" that is a little bit more than
what a Cortex-M3 could or should handle. 416-pin package, 2 MB Flash
with 256 KB SRAM and some more big chip items show that these devices,
the TriCore and the MPC5xxx belong in a totally different league.

The timers are used to trigger injection on a hardware dependence rather
than software triggered with jitter.

Or in a nutshell, the Cortex-M3 core does not cut it for this
applications and existing peripherals are even much further below the
required complexity level.

Robert
Author: Paul Ware (enigmapaul)
Posted on:

How about the Cortex-R4 however?
Author: Robert Teufel (robertteufel)
Posted on:

Paul Ware wrote:
> How about the Cortex-R4 however?

Chances are I just haven't heard about the R4 being used in Engine
management but I can't fight the feeling that the Cortex-R family some
off to a rough start with questionable future. Cortex-Ax and Cortex-Mx
are doing great and having 2 out of 3 families being a huge success is a
great achievements.
Again, the R-4 is not very visible to me, doesn't really mean there is
no business with it. The only automotive implementation I've heard is a
dual R4 design from TI, afaik for ABS.
The performance of the CPU would probably be adequate for engine
management, the secret is in the peripherals though. The timer
description for TriCore is more than 200 pages thick.

If you are with a company that does engine management, invite ARM to
present their success stories, they would be happy to come. If it is
just for academic interest, the lesson is there are specialized
suppliers for this high end segment.

Robert

Reply

Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]




Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.


webmaster@embdev.netContactAdvertising on EmbDev.net