Thread: F1 Season 2012!
View Single Post
Old 2012-11-28, 02:16 AM   #119
sperry
The Doink
 
sperry's Avatar
 
Real Name: Scott
Join Date: Nov 2002
Location: Portland, OR
Posts: 20,335
 
Car: '09 OBXT, '02 WRX, '96 Miata
Class: PDX/TT-6
 
The way out is through
Default

Quote:
Originally Posted by Dean View Post
There is a difference between electronics and and an ECU. It doesn't take a processor/code to trigger a spark. IC engines have been running without batteries since, well, they were invented. Even electronic fuel injection and variable ignition timing don't require anything that needs to "boot".

That said, F1 steering wheels probably don't boot in the car unless you force them to. They are powered up and ready to go before they plug them in. And even then, there probably isn't anything resembling what we would call an OS. Stupid fast optimized machine code reading sensors, doing table lookups and sending control signals out. But what do I know??? maybe they run Windows Mobile.


http://www.mclarenelectronics.com/Ne...-Sky-Sports-F1

Based on the above, I'm pretty sure the ECU runs its own OS and firmware/software that's not off-the-shelf. But since McLaren Electronics isn't in the business of manufacturing the microprocessors themselves, I would assume the microcode is something commercially available, and I would almost guarantee there's a C compiler for it, since C offers enough abstraction to make complex software possible, while offering inline assembly for anything that really needs to be optimized. Though, for most architectures, C compilers are so friggen good at optimization that dropping to assembly these days is pretty unnecessary.

But keep this in mind: while an F1 car does deal with quite a bit of data, and has to run in real-time on the order of 20,000 rpms, in computer time 20,000 rpms is only 333 Hz... plain Hz, not MHz or GHz. so even if there were 1000 calculations to do per engine revolution, a Pentium chip from the late 90's is about 400 times faster than necessary to run the motor (assuming I didn't botch my conversions). So if the processor in the ECU is at all decent, they could be running Java on *nix in there and still have cycles left over, if they have a realtime kernel like QNX or something.

What's really funny though, according to this, the data off the ECU is actually run through a bunch of microsoft DB products on the back end.
__________________
Is you is, or is you ain't, my con-stit-u-ints?
sperry is offline   Reply With Quote