Method of implementing a high reliability flash memory recorder
AssigneeBAE Systems Information and Electronic Systems Integration Inc.
InventorRichard W. BERGER
Life of this patent
Estimating the term…
Abstract
The system and method of implementing a high reliability flash memory recorder comprising warm spare and error code correction bytes across several multi-chip modules. The use of redundant field programmable gate arrays and/or processors for command and control increases redundancy. The system and method has lookup table-based mechanisms combined with programming to determine when to substitute a warm spare byte as well as when to declare a block of memory as “bad” and no longer to be used. The system may use multiple memory banks with power switching per bank to reduce power consumption as well as increase reliability when the array is not being accessed.
Claims19
A flash memory recorder comprising:
- an array of high-density flash memory comprising a plurality of multi-chip modules;
- a primary processor in communication with a primary field programmable gate array comprising a primary static random-access memory module, the primary processor being configured to control operations of the array of high-density flash memory;
- a primary magnetoresistant random access memory module communicating with the primary field programmable gate array and comprising a first error count lookup table and a first warm spare replacement lookup table;
- wherein information from the primary magnetoresistant random access memory module is also stored on the primary static random access memory;
- a redundant processor in communication with a redundant field programmable gate array comprising a redundant static random-access memory module, the redundant processor being configured to control operations of the array of high-density flash memory;
- and
- a redundant magnetoresistant random access memory module communicating with the redundant field programmable gate array and comprising a second error count lookup table and a second warm spare replacement lookup table;
- and
- wherein information from the redundant magnetoresistant random access memory module is also stored on the redundant static random access memory;
- at least one of the primary and redundant error count lookup tables is used to determine when to replace a bad block of data in the array of high-density flash memory;
- and
- at least one of the primary and redundant static random-access memory modules or at least one of the magnetoresistant random access memory modules, provides warm spare data to replace the bad block of data.
A method of implementing a high reliability flash memory recorder, comprising:
- providing an array of high-density flash memory comprising a plurality of multi-chip modules;
- controlling the array of high-density flash memory using a primary processor in communication with a primary field programmable gate array comprising a primary static random-access memory module;
- storing a first error count lookup table and a first warm spare replacement lookup table on a primary magnetoresistant random access memory module communicating with the primary field programmable gate array;
- storing information from the primary magnetoresistant random access memory module on the primary static random access memory;
- controlling the array of high-density flash memory using a redundant processor in communication with a redundant field programmable gate array comprising a redundant static random-access memory module;
- storing a second error count lookup table and a second warm spare replacement lookup table on a redundant magnetoresistant random access memory module communicating with the redundant field programmable gate array;
- storing information from the redundant magnetoresistant random access memory module on the redundant static random access memory;
- utilizing error count lookup tables to identify a count of corrected errors against a user-defined threshold to determine when to replace a bad block of data with warm spare replacement data;
- and
- performing a warm spare replacement of the bad block of data on a block-level basis using the warm spare replacement data from at least one of the primary and redundant static random-access memory modules or at least one of the magnetoresistant random access memory modules.
A tangible, non-transitory, computer-readable media having instructions thereupon which, when executed by a processor, cause the processor to perform a method comprising:
- controlling, via an embedded microcontroller, decisions about block byte replacement, error counting, and bad block designation;
- utilizing steering logic, via the embedded microcontroller, to move incoming data to a warm spare byte when a replacement decision has been made;
- reading, via the embedded microcontroller, from a correct combination of data bytes, error correction code bytes, and warm spare bytes when a stored memory is accessed later;
- and
- encrypting a downlink, via an encryption module using AES encryption.
Dependencies are inferred from the claim text.