saab Workshop Repair Guides

Saab Workshop Service and Repair Manuals

Main Components|Page 5473 > < Main Components|Page 5471
Page 16
background image

The control module microprocessor (CPU) is the unit in the control module that does the work. The CPU performs a calculation each time the internal
clock ticks. Which calculation is to be done is determined by the program stored in ROM (Read Only Memory).

A CPU with 8, 16 or 32 bits is used in cars. In a 16-bit computer, 2 bytes are handled simultaneously with each clock pulse.

The CPU of a control module in the car is normally activated when the ignition is switched ON. The control module can also be activated through
actuation of a button on a panel, a door being opened or the remote receiver getting a radio signal. Control modules connected to the I-bus can be
activated by a voltage pulse. This pulse is close to B+ and is sent by the control module that is doing the "waking", after which it sends its message.

The CPU may sometimes freeze up because it receives unreasonable instructions. This could be an interruption or a combination of input data that was
not foreseen when the program was developed. An example of unreasonable instructions is that the control module receives input data that it is to both
lock and unlock the central locking system at the same time. The cause could be a cable that got caught in a door.

A frozen CPU is indicated by lack of communication between the control module and the diagnostic tool (despite all conditions being fulfilled), that the
CPU continues performing the last instructions, pulling the fuel pump relay, holding a sensor at 2200 rpm or continually activates a lamp.

The easiest way to reactivate the CPU is to briefly disconnect the battery cable or interrupt the power supply to the control module some other way. It is
not enough to switch off the ignition if the control module has +30 feed as it is the CPU that determines shut-off.

Internal Clock

The internal clock governs when the CPU shall perform a new calculation. The clock has a quartz crystal like those found in wristwatches.

Clock frequencies in a car are much lower than those in a home computer; often approx.15 MHz.

ROM (Read Only Memory)

ROM stores the program memory, i.e. what the CPU is to do, such as switch on interior lighting when the door is opened. ROM is not volatile and is not
affected by loss of power. It can sometimes be SPS programmed. In a home computer, ROM is stored on the hard drive, which can hold several GB. In a
vehicle control module (vehicle computer), ROM is often only a few hundred KB.

If battery voltage becomes too low during reprogramming, only part of the program will be downloaded to ROM. If this occurs, there is a risk that the
control module will lock up and not respond to new instructions from the diagnostic tool.

The diagnostic tool can be used to read system information from the control module. New program versions may have modified or improved properties.
Stay informed on which new programs have come out on TIS to avoid unnecessary tracing of a fault that is software-related.

In addition to being stored in the program memory, certain other data is also stored in ROM. In a control module, for example, you can go in under the
Adjustments menu of the diagnostic tool and make a change so that the doors lock when you driver faster than a certain speed. This is stored in ROM,
not RAM, so that the function does not disappear if the customer replaces the car battery. All values in the diagnostic tool Adjustments menu are stored
in ROM for this reason.

RAM (Random Access Memory)

Random Access Memory is the working memory. All sensor values and values that the CPU has calculated and will use during travel are stored here.
The memory is volatile and is thus erased if there is a loss of power. RAM is like a notebook for the CPU.

The values read using the Read Values menu of the diagnostic tool are from RAM. The CPU retrieves these values from I/O and updates them
(overwrites the old value) at specific time intervals. For the tank sensor, the update is once/second, for the coolant temperature sensor 10 times/second
and for the mass air flow sensor 1000 times/second. For a crankshaft position sensor, update is done with the highest priority as soon as the value
changes.

Thus, RAM always has the latest sensor data. Not only does the control module update sensor values at specific time intervals, it must also perform a
task, such as inject fuel or lock a door. The program for the different functions retrieves the necessary sensor values from RAM and makes its
calculation. The result of the calculation is the output value delivered to I/O, which then activates the relevant output. RAM in a home computer
currently averages between 64 and 256 MB. In a car computer, the size is about 2 KB.

Internal Bus

The internal bus is leads in the control module that the CPU uses to retrieve data from ROM, as well as transmit data to and retrieve data from RAM and
the Input/Output unit.

I/O Unit

The Input/Output unit receives values from sensors and delivers outputs to transistors in the power amplifiers. Data is transferred internally to and from
the CPU.

Main Components|Page 5473 > < Main Components|Page 5471