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
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
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
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.
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.
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
How about the Cortex-R4 however?
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