## Introduction

Before you read this, you should already have read the articles on Injector Theory and Speed-Density.  This article will not make much sense without the background information in those articles.

First, vocabulary:

• ECM, ECU, Engine computer : used interchangeably to mean the computer operating the fuel injectors and running the engine
• RPM : Revolutions Per Minute – how fast the motor is spinning
• MAP : Manifold Absolute Pressure – (usually) the pressure of air entering the motor
• ECT : Engine Coolant Temperature sensor – sensor used to measure the temperature of coolant circulating through a motor.  Sometimes called different things by different manufacturers.  I will use ECT here
• IAT : Intake Air Temperature sensor – sensor used to measure the temperature of air entering the motor.  Sometimes called different things by different manufacturers.  I will use IAT here.
• Displacement : the volume swept by a piston descending from the top to the bottom of the cylinder bore.  More here.
• AFR : Air Fuel Ratio – the ratio of air to fuel present in a combustible mixture.  Usually stated as a ratio, i.e. 14.7:1 for the stoichiometric AFR for gasoline.  Stoichiometric AFR varies from fuel to fuel.
• Lambda : similar to AFR, except usually expressed as a number where 1.0 represents a stoichiometric mixture for all fuels.  Lambda and AFR are the same concept expressed in different units.
• Stoichiometric : a mixture containing the precise amount of oxidants required for complete combustion of all fuel present.  See here or here for more information on chemistry involved.
• Ideal Gas Law : PV= nRT (Pressure times Volume equals moles of gas times ideal gas constant times temperature)  More to be read about this here.
• Moles : a measure of how many atoms are present.  See here.
• Induction stoke :  the part of a 4-stroke engine’s cycle in which air is drawn into the cylinder by the piston.  See here for more information if you are not familiar with a 4 stroke engine’s operation.

Many ECMs (particularly older ones) use extremely slow processors to run an engine, especially by today’s standards.  In addition to doing all the math required by Speed-Density to calculate airflow, the processor often has many other extremely timing or IO-intensive tasks, such as processing crank and cam sensor inputs, firing spark plugs and firing injectors.  Additionally, most of these processors lacked floating-point units (short explanation: pieces of a chip that understand what fractions and decimals are) limiting their ability to accurately represent a model that involved lots of numbers with a fractional component.   Bottom line: engineers had to come up with ways to simplify and speed up the math involved in speed density in order to get older, slower, cheap microcontrollers to be able to run an engine.

Obviously, different manufacturers implement things differently.  In the remainder of this article, we are going to explore briefly how Honda and GM simplified the ideal speed density system to make it more practical to implement on cheap hardware.

## GM: Base Pulse Width (BPW)

Ideally, n = PV /RT and then injector pulse = n / injector flow constant

GM introduce the concept of “Base Pulse Width” or BPW to reduce the “V” and “R” terms.  Basically, the BPW is how long the injectors need to be open in order to fill cylinders at 100% volumetric efficiency at a standardized temperature.  The BPW is then multiplied by the Volumetric Efficiency table (which is no longer a VE table in the ideal sense of the word) to determine fueling at different load and RPM conditions.  This is then modified further by coolant and intake air correction tables to account for temperature.  This cuts the number of math operations more or less in half.  The idea behind Speed-Density is being applied in a way that is less math-intensive.

## Honda: Required Fuel Value (ReqFuel)

Ideally, n = PV /RT and then injector pulse = n / injector flow constant

Honda took a different approach to the problem of simplifying Speed-Density.  Basically, the MAP sensor and RPM values measured by the ECU are used to index a LUT that contains (more or less) a desired fueling value.  Looking at the math above, Honda essentially pulls the final desired injector pulse (n / injector flow constant) out of a table.  This required fueling value is then scaled by various tables indexed by ECT and IAT which attempt to correct for variations in air temperature.  Honda reduces about half a dozen math operations to one table lookup and a couple of additional easy math operations.  Again, the principles of Speed-Density are being applied in a non-ideal way that attempts to capture what is going on in a way that is fast to implement on slow chips.