Ford EEC

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

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[1] and went through several model iterations.

EEC I and II

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.

The EEC-II controlled air-fuel ratio via the Ford proprietary model 7200 Variable Venturi (VV) Carburetor. This was the last carburetor designed and built by Ford US. It was considered to be the pinnacle of carburetor design. Air-fuel ratio was controlled by a stepper motor that operated a rack which moved a pintle that opened and closed the float bowl vent. When closed, no air could enter the bowl, causing the fuel mixture to be lean. When open, the fuel mixture was rich. While this carburetor worked well, it was extremely expensive to manufacture. Each carburetor was hand-calibrated in a pressure controlled room.

Although there was much in common "inside the box", the size, shape and main connector were different between EEC I and II.

The processor design was significantly upgraded as a candidate for use in EEC-III but was not chosen.

EEC-III

This system is used on certain 1981-83 models. There were two different EEC-III modules: Feedback Carburetor (FBC) and Central Fuel Injection (CFI; similar to GM's Throttle Body Injection). The module size and shape were approximately the same as the EEC-II and still utilized the external memory module. The two modules had differently keyed connectors to prevent accidental insertion in the wrong vehicle.

EEC-III uses a Duraspark III module (brown grommet where wires emerge) and a Duraspark II ignition coil. A resistance wire is used in the primary circuit. The distributors in EEC-III (and later) systems eliminate conventional mechanical and vacuum advance mechanisms. All timing is controlled by the engine computer, which is capable of firing the spark plug at any point within a 50-degree range depending on calibration. This increased spark capability requires greater separation of adjacent distributor cap electrodes to prevent cross-fire, resulting in a large-diameter distributor cap.

The FBC module controlled the same Ford 7200 VV carburetor as the EEC-II. The CFI module fired two high pressure (approximately 40 psi) fuel injectors that were mounted in a throttle body attached to a traditional intake manifold in the center valley of the 5.0 liter (302 cid) engine. CFI was available on all Ford vehicles with the 5.0 l engine.

The processor was designed and manufactured by Motorola (now Freescale). It featured an 8-bit data length, a 10-bit instruction length and a 13-bit address length. The address space was "paged", meaning you could not directly address all of the address space without special instructions. There were 4 pages. Page 0 was for normal (background) code. Page 1 was for interrupt code. Page 2 was also for background, but could only be accessed by a special "Jump Page" instruction from page 0. Page 3 was used to store parameteric ("calibration") data or additional interrupt level code. This chip was never sold commercially. Like EEC-I and -II, all code was written in assembly language.

While all processor chips were manufactured by Motorola, the modules were designed and assembled by either Motorola, Toshiba or Ford. The designs were functionally equivalent but slightly different components were used. Motorola optimized their design to use as many of their own components as possible.

EEC-IV

Preliminary design work in EEC-IV started even before EEC-III was in production. Over time, there were many different modules designed around this processor. It is likely that more Ford vehicles were produced using Engine/Powertrain Control Modules (ECM/PCM) based on variations of this design than any other module that Ford has ever used.

Unlike previous EEC systems, EEC-IV uses a small ignition module called the TFI or TFI-IV (Thick Film Integrated Ignition) module. It is usually grey in color and was originally mounted on the distributor. Later models have the TFI module mounted on a heatsink in the engine compartment. It is prone to damage from heat. Replacement TFI modules are sold with a small packet of heat transfer compound which should be applied to the back of the module. Like the General Motors H.E.I. module that preceded it, it was created with Surface-mount technology parts, allowing it to be much smaller than the previous Dura-Spark ignition module. The ignition coil used is the E-Core design. This ignition coil design is more efficient than the older-style cylinder-shaped ignition coils.

The EEC-IV system has more diagnostic capabilities than previous EEC systems. Early EEC-IV equipped cars don't have the capability to send sensor data through the diagnostic connector to a scan tool, unlike GM cars. However, there are KOEO (Key On, Engine Off) and KOER (Key On, Engine Running) self-tests, and a Continuous Monitor (wiggle) test, a feature to help test the wiring connections to various sensors/actuators by wiggling the wires of the component in question. By the early 1990s certain Ford/Lincoln/Mercury models had sensor data streaming capability. The feature is called DCL (Data Communications Link). These models have 2 additional data bus wires to the EEC-IV diagnostic connector).

The EEC-IV computer was built around an Intel-designed 8/16 bit processor called the 8061. This chip was never sold commercially, but a close variation, the 8096, was extremely popular. The major difference between these two chips was the external instruction/data bus. Ford wanted to maximize the number of pins used for input and output so Intel designed a unique bus (MBUS) that multiplexed address and data onto an 8 bit bus. Several additional control lines were used for transferring information on this bus. Because of the unique nature of the bus, custom memory chips were required.

EEC-IV first appeared on the 1983 1.6L EFI, 2.3L High Swirl Combustion (HSC), 2.3L EFI Turbo and 2.8L truck engines. With the Escort, the base engine was the same as all US Escorts, the 1.6L CVH, but featured unique intake and exhaust manifolds in addition to EFI. This was non-sequential EFI, meaning 1/4 of the required fuel for each cylinder was injected into the intake manifold, near the intake valve for each cylinder firing.

The first EEC-IV module was unique from future modules in many ways. It had a unique "edge card" connector. This was a "cost savings" over the EEC I/II/II "pin and socket" connectors but was quickly abandoned due to reliability concerns. It utilized a 40 pin "DIP" IC package which limited the number of inputs/outputs. It also used only 1 memory chips which contained 8K bytes of MROM instructions/data and 128 addition bytes of RAM.

All future EEC-IV modules used a unique "through hole" IC package with staggered pins on all 4 edges. This allowed all available I/O to be utilized. Memory quickly grew to 2 - 8k/128 MROM/RAM chips and then a separate 32K MROM and 1K RAM. Bus loading limited the design to 2 external memory devices.

Intel only manufactured chips, not modules. Eventually there was a unique MBUS UVEPROM designed and manufactured by Intel. Motorola and Ford Electronics Division (precursor to Visteon) designed and manufactured the modules. After several years of Intel being the sole suppler of processor chips, Ford persuaded Intel to share the design with Motorola and allow them to produce 8061 chips, but only for consumption by Ford.

Over the years, there were many variations of EEC-IV modules depending on the number of engine cylinders and the types and quantities of inputs and outputs. There were even a series of special EEC-IV modules designed for use in Formula 1 race cars, making Ford one of the earliest adopters of digital electronics on a race car.

  • These EEC-IV were used on the Ford/Cosworth 1.5L turbo Formula 1 engine in 1985.[2]

This engine with the EEC-IV was used by Haas/FORCE F1 a.k.a. Hass/Lola. Interestingly this team employed both Ross Brawn and Adrian Newey.[3]

EEC-V

Additional performance needs drove Ford Electronics to develop an enhanced microprocessor named the 8065 building on EEC-IV technology. Memory was expanded from 64K to 1 megabyte, speed tripled, and I/O more than doubled. Additional interrupts and improved time controlled I/O allowed continued use of EEC-IV code and extended the family lifetime to almost 20 years in production.

EEC-V DPC

European Ford Diesel Duratorq engines (all TDDi and TDCi starting with model year 2000) used EEC-V DPC-xxx series, which used variant of Intel i196 microcontroller with 28F200 flash memory. The EEC-V DPC ECUs were later replaced by Delphi, Bosch EDC16, Siemens SID80x/SID20x, or Visteon DCU ECUs.[4]

Visteon Levanta

Visteon Levanta 'Black Oak' PCM is the first ECU that used Freescale PowerPC architecture. The ECU was used in Ford Mondeo,Galaxy, Focus and Ka - 1.8/2.0/2.5/3.0 Duratec HE/I4 engine.[5]

EEC-150

EEC-150 for 3.0/4.0 V6/4.6 SOHC engines uses PowerPC, however compared to Visteon Levanta the ECU is closer to EEC-VI by design.

EEC-VI

EEC-VI is a PowerPC microcontroller used by Ford Motor Company up to 2013 models. Wide ranges of ECU variants exist. EEC-VI use ISO15765 or ISO14229 (UDS) over ISO15765 protocol for diagnostics.

EEC-VII and beyond

EEC-VII Is the latest system with a PowerPC microcontroller used by Ford Motor Company, utilizing mostly the CAN bus and Ford's proprietary MS-CAN architecture. Other variations currently exist, but no additional information about them is available at this time.

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. http://papers.sae.org/910253/
  3. http://www.grandprix.com/gpe/con-haas.html
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.