Intel® Processor and Intel® Core™ i3 N-Series

Datasheet, Volume 1 of 2

ID 759603
Date 01/04/2023
Version 001
Document Table of Contents

Boot Block Update Scheme

The PCH supports a “Top-Block Swap” mode that has the PCH swap the top block in the SPI flash (the boot block) with another location. This allows for safe update of the Boot Block (even if a power failure occurs).

For SPI when top swap is enabled, the behavior is as described below. When the Top Swap Enable bit is 0, the PCH will not invert any address bit.

Boot Block Update Scheme

BOOT_​BLOCK_​SIZE Value

Accesses to

Being Directed to

000 (64KB)

FFFF_​0000h - FFFF_​FFFFh

FFFE_​0000h - FFFE_​FFFFh and vice versa

001 (128KB)

FFFE_​0000h - FFFF_​FFFFh

FFFC_​0000h - FFFD_​FFFFh and vice versa

010 (256KB)

FFFC_​0000h - FFFF_​FFFFh

FFF8_​0000h - FFFB_​FFFFh and vice versa

011 (512KB)

FFF8_​0000h - FFFF_​FFFFh

FFF0_​0000h - FFF7_​FFFFh and vice versa

100 (1MB)

FFF0_​0000h - FFFF_​FFFFh

FFE0_​0000h - FFEF_​FFFFh and vice versa

101 (2MB)

FFE0_​0000h - FFFF_​FFFFh

FFC0_​0000h - FFDF_​FFFFh and vice versa

110 (4MB)

FFC0_​0000h - FFFF_​FFFFh

FF80_​0000h - FFBF_​FFFFh and vice versa

111 (8MB)

FF80_​0000h - FFFF_​FFFFh

FF00_​0000h - FF7F_​FFFFh and vice versa

Note:This bit is automatically set to 0 by RTCRST#, but not by PLTRST#.

The scheme is based on the concept that the top block is reserved as the “boot” block, and the block immediately below the top block is reserved for doing boot-block updates.

The algorithm is:

  1. Software copies the top block to the block immediately below the top
  2. Software checks that the copied block is correct. This could be done by performing a checksum calculation.
  3. Software sets the “Top-Block Swap” bit. This will invert the appropriate address bits for the cycles going to eSPI or SPI.
  4. Software erases the top block
  5. Software writes the new top block
  6. Software checks the new top block
  7. Software clears the top-block swap bit
  8. Software sets the Top_​Swap Lock-Down bit

If a power failure occurs at any point after step 3, the system will be able to boot from the copy of the boot block that is stored in the block below the top. This is because the top-swap bit is backed in the RTC well.

There is one remaining unusual case that could occur if the RTC battery is not sufficiently high to maintain the RTC well. To avoid the potentially fatal case (where the Top-Swap bit is NOT set, but the top block is not valid), a pin strap will allow forcing the top-swap bit to be set. This would be a last resort to allow the user to get the system to boot (and avoid having to de-solder the system flash).

When the top-swap strap is used, the top-swap bit will be forced to 1 (cannot be cleared by software).

The algorithm to put in the BIOS spec is as follows:

  1. If an RTC well power failure is experienced during a boot block update, the system will probably not be able to boot at that point.
  2. The user can set the Top-Swap pin strap and force the system to boot from the 2nd block. The code in the 2nd block should read the valid BIOS image from disk (probably CD-ROM) and put it into the top-swap.
  3. The BIOS will not be able to clear the Top-Swap bit (because the jumper is in place). The user should then remove the jumper and reboot.