GM WORLDWIDE ENGINEERING STANDARDS
GMW3110
© Copyright 2010 General Motors All Rights Reserved
February 2010
Page 269 of 336
Offset
Number
of Bytes
Description
$3A
2
NOAR_am2 = $00 01
$3C
4
PMA#1_am2 = $00 02 20 00
$40
4
NOB#1_am2 = $00 00 60 00
The headers for the calibration modules in this example would contain the following information (Tables 224
and 225):
st
Calibration Module Header Data for Example 2
Offset
Number
of Bytes
Description
$00
2
Module checksum or CRC (hex) = $xx xx
$02
2
Module ID = $00 02
$04
2
Header Format Identifier = $22 00
$06
4
SWMI (part # 12345678) = $00 BC 61 4E
$0A
2
Alpha Code = AA ($41 41)
Offset
Number
of Bytes
Description
$00
2
Module checksum or CRC (hex) = $xx xx
$02
2
Module ID = $00 03
$04
2
Header Format Identifier = $22 00
$06
4
SWMI (part # 34567812) = $02 0F 76 84
$0A
2
Alpha Code = AA ($41 41)
Note:
If the header of the operational software contains address information for all of the modules in the ECU
then the boot software must be capable of determining which additional module address information correlates
to a given Module Identifier. This can be accomplished by having the Module Identifiers sequentially numbered
for each calibration module. With this approach the address information for
the first additional module
(contained in the operational software header) would correspond to Module Id $00 02 (since $00 01 is the
operational software), the address information for the second additional module would be for Module Id $00 03
etc. This approach also supports downloading calibrations in any order
since the boot software can
mathematically determine which address information in the software module
header is correct for the
calibration module being downloaded based on the Module Id in the calibration module header.
In this final example, the boot software is utilizing the PMA information provided in the header of the module to
determine the ECU physical addresses for programming. The data within a calibration
module will occupy a
single contiguous memory region in the ECU. The starting address where the module will be loaded in
memory
is $8000 and the length is $1000 bytes. The calibration module part number is used as the SWMI and is stored
in the header in 4-byte hexadecimal format. The Design Level Suffix or Alpha Code is stored in 2-byte ASCII
format. The tool set used to create the headers uses only a single byte for the HFI field and the NOAR field.
For this example, the following information is given:
--``,,``````,``,,``,,,`,`,`,,-`-`,,`,,`,`,,`---
CameraLoops.com