
Offset
Size (in bytes)
Description
0x08
4
Size of pointer block (4096 for this document)
0x0C
4
Reserved
0x10
4
Offset to image pointers (IPTAB)
0x14
4
Number of image pointer slots (
NSLOTS
)
0x18
—
Reserved
IPTAB
8
First (lowest priority) image pointer slot
8
Second (2nd lowest priority) image pointer slot
8
…
8
Last (highest priority) image pointer
The configuration pointer block can contain up to 508 application image pointers. The actual number is listed as
NSLOTS
. A
typical configuration pointer block update procedure consists of adding a new pointer and potentially clearing an older pointer.
Typically, the pointer block update uses one additional entry. Consequently, you can make 508 remote system updates before
the pointer block must be erased. The erase procedure is called pointer block compression. This procedure is safe. There are
two copies of pointer block. The copies are in different flash erase sectors. While one copy is being updated the other copy is
still valid.
4.4.2.4. Modifying the List of Application Images
The SDM uses the configuration pointer block to determine priority of application images.
The pointer block operates taking into account the following characteristics of quad SPI flash memory:
•
On a sector erase, all the sector flash bits become 1’s
•
A program operation can only turn 1’s into 0’s
The pointer block contains an array of values which have the following meaning:
•
All 1’s – the entry is unused. The client can write a pointer to this entry. This is the state after a quad SPI erase operation
on the pointer block.
•
All 0’s – the entry was previously used and then canceled.
•
A combination of 1's and 0's – a valid pointer to an application image.
4. Remote System Update (RSU)
UG-20205 | 2019.10.09
Intel
®
Agilex
™
Configuration User Guide
148