1 microcode update – Intel IA-32 User Manual

Page 410

Advertising
background image

9-36 Vol. 3A

PROCESSOR MANAGEMENT AND INITIALIZATION

9.11.1

Microcode Update

A microcode update consists of an Intel-supplied binary that contains a descriptive header and
data. No executable code resides within the update. Each microcode update is tailored for a
specific list of processor signatures. A mismatch of the processor’s signature with the signature
contained in the update will result in a failure to load. A processor signature includes the
extended family, extended model, type, family, model, and stepping of the processor (starting
with processor family 0fH, model 03H, a given microcode update may be associated with one
of multiple processor signatures; see Section 9.11.2 for detail).

Microcode updates are composed of a multi-byte header, followed by encrypted data and then
by an optional extended signature table. Table 9-6 provides a definition of the fields; Table 9-7
shows the format of an update.

The header is 48 bytes. The first 4 bytes of the header contain the header version. The update
header and its reserved fields are interpreted by software based upon the header version. An
encoding scheme guards against tampering and provides a means for determining the authen-
ticity of any given update. For microcode updates with a data size field equal to 00000000H, the
size of the microcode update is 2048 bytes. The first 48 bytes contain the microcode update
header. The remaining 2000 bytes contain encrypted data.

For microcode updates with a data size not equal to 00000000H, the total size field specifies the
size of the microcode update. The first 48 bytes contain the microcode update header. The
second part of the microcode update is the encrypted data. The data size field of the microcode
update header specifies the encrypted data size, its value must be a multiple of the size of
DWORD. The optional extended signature table if implemented follows the encrypted data, and
its size is calculated by (Total Size – (Data Size + 48)).

NOTE

The optional extended signature table is supported starting with processor
family 0FH, model 03H.

Figure 9-7. Applying Microcode Updates

CPU

BIOS

Update

Blocks

New Update

Update
Loader

Advertising