Patent ID: 8296467

Claim:
A single-chip flash device for communicating with a host system, the single-chip flash device comprising: a flash memory device including a plurality of non-volatile memory cells for storing a data file, the non-volatile memory cells being arranged in at least one of a plurality of memory blocks, a plurality of pages, and a plurality of sectors; an input/output interface circuit for establishing communication with the host system, wherein the input/output interface circuit includes a parallel or serial interface circuit including means for transmitting the data file using an embedded storage protocol; a flash memory controller, electrically connected to the flash memory device and to the input/output interface circuit, wherein the flash memory controller comprises a processor, a main memory coupled to the processor for storing instructions for execution by the processor, and an interface for switching to one of a plurality of internal buses; wherein the flash memory controller further comprises a volatile main memory circuit, and means for transferring the at least one of a boot code data and a control code data from the flash memory device to the volatile main memory circuit in accordance with instructions read from a memory; wherein the flash memory controller includes update means for updating only a first copy of the control code data in the flash memory device, and means for utilizing a second copy of the control code data as an identical back-up copy; and wherein the flash memory controller further comprises means for transferring the boot code data to a main memory before transferring the control code data to the main memory, and means for freeing up the main memory space occupied by the boot code data after the control code data is transferred to the main memory.