Flash non-volatile memory
First Claim
1. A flash non-volatile memory, comprising:
- a plurality of non-volatile memory blocks accessible by a processor;
means for maintaining control information in each block, said control information including a respective block ID representing a relative block address specified by said processor upon writing, and an erase count indicating the number of times each respective block has been erased;
means, responsive to a request to write data to said flash non-volatile memory at a specified relative block address, for identifying a writable block having a minimum erase count;
means for writing said data to said identified block having a minimum erase count; and
means for updating said block ID contained in said control information to correspond to said specified relative block address.
1 Assignment
0 Petitions
Accused Products
Abstract
A flash-erase memory includes a plurality of blocks accessible by a processor and, in association with each block, a block ID representing an address (RBA) specified by the processor upon writing, a revision code (RC) indicating how many times the processor performed writing using the same RBA, and an erase count (EC) indicating the number of times of erasing of this block are stored. Writing is performed to a writable block having the minimum erase count, and if there is a different block having the same block ID as the address specified by the processor, its revision code is updated and used as a revision code of the written block, and the different block is erased and its erase count is updated.
-
Citations
16 Claims
-
1. A flash non-volatile memory, comprising:
-
a plurality of non-volatile memory blocks accessible by a processor; means for maintaining control information in each block, said control information including a respective block ID representing a relative block address specified by said processor upon writing, and an erase count indicating the number of times each respective block has been erased; means, responsive to a request to write data to said flash non-volatile memory at a specified relative block address, for identifying a writable block having a minimum erase count; means for writing said data to said identified block having a minimum erase count; and means for updating said block ID contained in said control information to correspond to said specified relative block address. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A solid state file apparatus which is accessed by a relative block address from a processor, comprising:
-
a controller for connecting to said processor; and a flash non-volatile memory connected to said controller and including a plurality of blocks accessible by said processor, each block of said flash non-volatile memory comprising a header section and a data section, said header section including a block ID representing a relative block address specified by said processor upon writing to the respective block, and an erase count indicating the number of times the respective block has been erased; wherein said controller further comprises; (a) means, responsive to a request by said processor to write data to a specified relative block address, for identifying a writable block in said flash non-volatile memory having a minimum erase count; (b) means for writing data for said processor to the data section of said identified block having a minimum erase count; and (c) means for writing to the header section of said identified block having a minimum erase count a block ID represented by said specified relative block address. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
Specification