*** Welcome to piglix ***

Ford EEC


The Ford EEC or Electronic Engine Control is a series of ECU (or Engine Control Unit) that was designed and built by Ford Motor Company. They were introduced in 1978 and went through several model iterations.

These two "modules" used a common processor and memory so they can be described together. The processor was a 12 bit unit manufactured by Toshiba. The Ford internal code name for it was "PM-11" or "Poor Man's 11" implying it was a stripped down version of the, then popular, Digital Equipment Corporation PDP-11 computer. A PDP-11 was used in a vehicle in the first half of the 1970s for "proof of concept". In reality there was very little in common between these two computer architectures. This chip was never commercially available.

This 12 bit processor was the only commercially available chip to feature all four mathematical functions (addition, subtraction, multiplication and division) at the time. The choice of 12 bits was not accidental. For accuracy, it was determined that formulas needed to be able to resolve 1 part in 1000 or about 10 bits. Another bit was required for sign. This, logically, was rounded up to 12 bits which also resulted in an address space of 16 kilo-words. There was no "stack" for subroutine calls and returns. Rather the Instruction Pointer Register was "swapped" with another register that had been previously filled with the address of the target subroutine. Returning was accomplished by swapping back. All code was written in assembly language.

Another feature on the EEC I/II modules was the use of a separate memory module that bolted to the housing of the control module. This was done to facilitate changing the software, a combination of algorithms ("strategy") and data ("calibration") in the field, if necessary. The memory module used "Masked ROM" (MROM), a type of memory chip that was not modifiable after manufacture. The memory module also featured some switches that could be changed in the field. The strategy would read these switches and retard the spark advance for vehicles experiencing pre-ignition (knock).

The processor module featured a 10 volt reference for its analog-to-digital converter which was used to gather data from various sensors. This could have been an issue as the available power to the module varied above and below 10 volts during engine cranking. The problem was solved by several steps. First, all sensors used a ratiometric measuring method that insured accuracy in spite of varying reference voltage. Second, during cranking, a special circuit triggered the ignition system in synchronization with the reference pulses from the engine. Third, the processor was not allowed to start until the internal voltage was stabilized above 10 volts.


...
Wikipedia

...