Patent ID: 7006386

Claim:
A storage device employing a flash memory, wherein said flash memory is divided into a plurality of sectors each identified by a flash memory side address, wherein said flash memory carries out data write operation of write data from a host system into a sector of said plurality of sectors in response to a host side address accompanied with said write data from said host system, said storage device includes: a memory controller which generates a flash memory side address in response to said host side address for said data write operation of said write data from said host system, wherein said memory controller carries out address conversion from host side addresses to flash memory side addresses, wherein said memory controller carries out a current data write operation in which current write data from said host system is written into a selected one sector of said plurality of sectors identified by a current flash memory side address which is converted by said memory controller from a current host side address, and said memory controller carries out a succeeding data write operation in which succeeding write data from said host system is written into a selected another one sector of said plurality of sectors identified by the succeeding flash memory side address which is converted by said memory controller from the succeeding host side address that is identical to said current host side address, and wherein said succeeding data write operation is carried out within said storage device even though said selected one sector of said plurality of sectors is not defective and is usable before said succeeding data write operation, so that even when data of a specific host side address are frequently rewritten from said host system, the same flash memory side address is not always used in said storage device, but different flash memory side addresses, which correspond to said same specific host side address and are generated by said memory controller, are used, thereby uniformalizing increases in the numbers of erasures of said plurality of sectors, wherein said memory controller seeks an old sector of said specific host side address in which unnecessary data is written and carries out an erase operation of unnecessary data in said old sector among said plurality of sectors, and wherein said memory controller stores a new correspondence between said different flash memory side address and said specific host side address within a table for said address conversion.