Programmers- How they are made.
Overview: In nearly all calibrations across most (if not all) manufacturers, data is stored in a binary format and can be edited using either any of a number of popular hex editors or through specialized software tailored to handle conversion and display of the binary data in engineering units. How each manufacturer arranges and uses the data varies, so tuning a Ford would be very different than tuning a Dodge, GM, Porsche, VW, or Ferrari. This is why tuning has become so highly specialized, with tuners becoming proficient on specific platforms and/or drivetrains.
Moving on....
Ford EEC-IV/V (1988 to 2003): These are based on the Intel 8061/8065 Microprocessor which are 1 off builds of the 8096 processor with a slightly different instruction set and bus architecture. As I understand it, all the code was written in Assembly language in order to preserve some of the critical timing routines to handle injection and other timing sensitive functions. All data is handled as 8 bit/16 bit values and are bit shifted to handle decimal output values.
Ford OAK Series (2003 to 2010): These were the first to use a fully integrated OS running on the Motorola MPC555/MPC556 (PowerPC) processors. These processors are full 32 bit Floating Point, although some data is still handled in 8 bit or 16 bit fashion (for whatever reason). While the "software" portion is a compiled language that runs on the operating system, the calibration data (maps, function, etc.) are still stored in a binary format. It is my understanding that much of the development on this was provided through Accurate Technologies although I'm not sure if the OS was developed by them or by Ford.
Bosch ECMs (2008 to 2011): These are found on the 6.4L and 6.7L, as well as the newer gas vehicles. Like the OAK series, these also feature a standalone OS coupled to compiled "software" and binary calibration data.
If you're interested in looking at some binary files, I'd be happy to give you some samples or you can download them directly from the Motorcraft website. If you poke around, there are a number of resources that have modified calibrations and even some old documents on how to build chips. Very cool stuff.
As for the programmers themselves, most of them have code written in 'C' and use processors that have CAN communications already built into them. This keeps the overhead low and allows for a good deal of flexibility.
I hope this helps.




