2.2.26.5.1 Absolute vs Relative Addressing

In Relative Addressing, the addresses in the memory content file did not determine where the client was placed in memory. You specify the location of the client by entering the start address. This becomes the 0 address from the memory content file perspective and the client is populated accordingly.

For example, if we place a client at 0x80 and the content of the memory file is as follows:

Address: 0x0000 data: 0102030405060708 Address: 0x0008 data: 090A0B0C0D0E0F10

Then the first set of bytes of this data is written to address 0x80 + 0000 in the flash memory block. The second set of bytes is written to address 0x80 + 0008 = 0x88, and so on.

Thus the addresses in the memory content file are relative to the client itself. Where the client is placed in memory is secondary.

For absolute addressing (available in the Initialization Client and the Data Storage Client), the memory content file dictates where the client is placed in the flash memory block. So the addressing in the memory content file for the client becomes absolute to the whole flash memory block. Once you enable absolute addressing option, the software extracts the smallest address from the memory content file and uses that address as the start address for the client.