Browse Prior Art Database

Checking Non-Volatile Microprocessor Memory when No Parity is Available on Data or Address Bus

IP.com Disclosure Number: IPCOM000115723D
Original Publication Date: 1995-Jun-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 2 page(s) / 47K

Publishing Venue

IBM

Related People

Ho, W: AUTHOR [+4]

Abstract

Typical non-volatile memory, (flash, EEPROM, ROS, etc.) are usually 8 or 16 bits wide and do not have the extra bits required for parity. Therefore, a special method must be used for verification purposes.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 67% of the total text.

Checking Non-Volatile Microprocessor Memory when No Parity is Available
on Data or Address Bus

      Typical non-volatile memory, (flash, EEPROM, ROS, etc.) are
usually 8 or 16 bits wide and do not have the extra bits required for
parity.  Therefore, a special method must be used for verification
purposes.

      Disclosed is a method that can be used to verify the data
retrieved from non-volatile memory is error free or nearly error
free.

      The procedure involves using vertical parity across a block of
data.  The result is stored in the last word of that block.  To check
the parity, the user performs an exclusive OR operation against
successive addresses in the block keeping the accumulative result in
a register.  When complete, any value other than all zeroes indicates
an error.  Other checking algorithms with higher coverage, such as
Cyclic Redundancy Codes (CRC) can also be used.

      Since the microprocessor will use the data in the flash as
instructions, it is critical that the data be checked prior to
execution.  Therefore, a separate piece of hardware will perform the
checking automatically when a reset or power on condition is sensed.
At that point a few blocks are automatically checked.  Any error
would result in automatically switching to a spare device if it
exists and performing the checking on that device.  If both the
primary and secondary devices have errors, then the hardware will
hang and will indicate this as required by sys...