1. Field of the Invention
This disclosure relates generally to methods and apparatus for improving the ability of a memory storage system to efficiently and effectively protect, store, and retrieve data stored in multiple storage locations. More specifically, this application relates to a Flash memory system having robust backup and restart features, and to in-circuit testing circuitry that supports those features.
2. Description of the Related Art
In certain memory storage systems, data to be stored in the system is provided to the memory system by an external host. That data is then typically processed by the memory storage system in some manner before it is written to the main storage medium. For example, in many Flash memory systems data to be stored in the system is provided to the system by a host device as part of a WRITE request, along with information relating to a location where the data is to be stored. In such systems, the data provided in the WRITE request may be processed by the system. For example the data may be used by itself or with other data to generate error correction data. The location information provided in the WRITE request may also be processed so that it is associated with a specific physical address within the physical Flash memory space to which the data provided with the WRITE request will be stored.
One shortcoming of conventional systems as described above relates to the operation of the system in the event of a power failure. If the power to such a system fails, or drops below the levels required for proper operation of the system, the processing that was in progress can be lost and, potentially, data that was in the process of being processed or stored can be corrupted. This loss or corruption of data can result in errors that are either not recoverable or that will take a significant amount of time to correct.