Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Robust microcode load/recovery protocol

IP.com Disclosure Number: IPCOM000015336D
Original Publication Date: 2001-Dec-29
Included in the Prior Art Database: 2003-Jun-20
Document File: 4 page(s) / 52K

Publishing Venue

IBM

Abstract

Disclosed is a method to load and recover microcode on a rewritable storage to maintain the robustness. Microcode is often stored on a rewritable storage due to update program, and is loaded to a memory. In such a storage, a read error may occur when reading the sectors that microcode is stored. To avoid such a load error, some systems often

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 56% of the total text.

Page 1 of 4

Robust microcode load/recovery protocol

Disclosed is a method to load and recover microcode on a rewritable storage to

maintain the robustness.

Microcode is often stored on a rewritable storage due to update program, and is loaded to a memory. In such a storage, a read error may occur when reading the

sectors that microcode is stored. To avoid such a load error, some systems often

have secondary microcode in addition to primary microcode that is loaded ordinarily. In that case, loading microcode is successfully completed by reading secondary microcode even if a read error occurs when reading primary microcode. However, a load error is not avoidable if a read error occurs when reading secondary microcode. This disclosure shows that how to avoid a load error by reading primary and secondary microcode fragmentarily and how to maintain the robustness of microcode by recovering the sector that a read error occurred.

It is supposed that microcode are stored in primary and secondary area on a storage. Both microcode in primary and secondary area are the same contents. Each area has N sectors. Sector is the unit of read/write. The microcode in primary and secondary area are loaded to memory area A and B, respectively.

First, read microcode in primary area to memory area A. If a read error occurred, stop to read. Let a is the read error sector number, that is relative value that the first sector of microcode is 0. If no error occurred, a is set by N. Similarly, read microcode in secondary area to memory area B. Let b is the read error sector number in secondary area. Next, recovery the sector that a read error occurred. If a is smaller than b, the contents of sector that a read error occurred in primary

area has read in secondary...