Scheduling of housekeeping operations in flash memory systems
First Claim
1. A method of operating an erasable and re-programmable non-volatile memory system, which comprises, in response to receiving a command from outside the memory system:
- perform any function necessary to execute the command,assert a busy signal outside of the memory system for a time extending beyond that utilized to perform said any necessary function, andperforming during the extended busy signal time at least a portion of one housekeeping operation within the memory system that is unnecessary to execute the received command,wherein said command has a time budget for its executions, and said busy signal is asserted for a time remaining within the time budget.
2 Assignments
0 Petitions
Accused Products
Abstract
A re-programmable non-volatile memory system, such as a flash EEPROM system, having its memory cells grouped into blocks of cells that are simultaneously erasable is operated to perform memory system housekeeping operations in the foreground during execution of a host command, wherein the housekeeping operations are unrelated to execution of the host command. Both one or more such housekeeping operations and execution of the host command are performed within a time budget established for executing that particular command. One such command is to write data being received to the memory. One such housekeeping operation is to level out the wear of the individual blocks that accumulates through repetitive erasing and re-programming.
-
Citations
24 Claims
-
1. A method of operating an erasable and re-programmable non-volatile memory system, which comprises, in response to receiving a command from outside the memory system:
-
perform any function necessary to execute the command, assert a busy signal outside of the memory system for a time extending beyond that utilized to perform said any necessary function, and performing during the extended busy signal time at least a portion of one housekeeping operation within the memory system that is unnecessary to execute the received command, wherein said command has a time budget for its executions, and said busy signal is asserted for a time remaining within the time budget. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
Specification