There are six blocks:
PMU0 (2MB)
#SBOOT – supplier boot (0x0000 0000 -> 0x0001 BFFF)
#CBOOT – customer boot (0x0001 C000 - > 0x0003 FFFF)
#ASW1 – Application SW part #1 (0x0004 0000 -> 0x0013 FFFF)
#ASW2 – Application SW part #2 (0x0014 0000 -> 0x001F FFFF)
#PMU1 (1MB)
#CAL – Calibration (0x0020 0000 -> 0x0027 FFFF)
#ASW3 – Application SW part #3 (0x0028 0000 -> 0x002F FFFF)
*PMU0 (2MB)**1. SBOOT – supplier boot (0x0000 0000 -> 0x0001 BFFF)**2. CBOOT – customer boot (0x0001 C000 - > 0x0003 FFFF)**3. ASW1 – Application SW part #1 (0x0004 0000 -> 0x0013 FFFF)**4. ASW2 – Application SW part #2 (0x0014 0000 -> 0x001F FFFF)*PMU1 (1MB)**5. CAL – Calibration (0x0020 0000 -> 0x0027 FFFF)**6. ASW3 – Application SW part #3 (0x0028 0000 -> 0x002F FFFF) === Each blocks block's purpose ===
==== SBOOT ====
SBOOT is not a field replaceable unit, so can’t be flashed over with OBD and you can ignore it for all intents and purposes since you can’t really modify it. The other five can be replaced via OBD and are subject to modifying.
CBOOT does all the flashing. Basically when you want to reflash via OBD, the ECU reboots into CBOOT and runs all the re-flashing procedures etc out of CBOOT. Once complete, it reboots again into ASW. ASW, the application software, is what controls the combustion process in your petrol engine. CBOOT has nothing to do with ASW. You can’t flash from ASW, you have to go into CBOOT for that. Both CBOOT and ASW have their own UDS comm stack, so when CBOOT is active it uses its own comm stack for CAN messages and similarly when ASW is active its using its own separate comm stack as well
==== ASW ====
ASW is the "Application Software" and contains all of the engine management software itself. This is the software that reads sensor data, and makes decisions.
==== CAL ====
This is the calibration data. The "maps" and "tables" that affect the way the car runs.
== Calibration changes ==