Intel IA-32 User Manual
Page 427

Vol. 3A 9-53
PROCESSOR MANAGEMENT AND INITIALIZATION
For each processor
{
If ((this is a unique processor stepping) AND
(we have a unique update in the database for this processor))
{
Checksum the update from the database;
If Checksum fails
exit
NumBlocks
← NumBlocks + size of microcode update / 2048
}
}
//
//
Do we have enough update slots for all CPUs?
//
If there are more blocks required to support the unique processor steppings
than update blocks provided by the BIOS
exit
//
//
Do we need any update blocks at all? If not, we are done
//
If (NumBlocks == 0)
exit
//
//
Record updates for processors in NVRAM.
//
For (I=0; I { // // Load each Update // Issue the WriteUpdate function If (STORAGE_FULL) returned { Display Error -- BIOS is not managing NVRAM appropriately exit } If (INVALID_REVISION) returned { Display Message: More recent update already loaded in NVRAM for this stepping continue } If any other error returned { Display Diagnostic exit