Apparatus including memory system controllers and related methods for memory management using block tables
First Claim
1. An apparatus, comprising:
- a switch;
non-volatile memory control circuitry coupled to the switch and including a plurality of channel control circuits, wherein each of the plurality of channel control circuits is configured to be coupled to a number of logical units (LUNs), wherein each of the number of LUNs includes a plurality of blocks;
volatile memory coupled to the switch; and
memory management circuitry coupled to the switch and including local memory, wherein the memory management circuitry is configured to;
store logical to physical address translations in a logical block address (LBA) table in the volatile memory;
retrieve a first physical address corresponding to a logical address for a particular block of the plurality of blocks from the block table prior to information being read from the particular block during a wear leveling operation on the particular block;
retrieve a second physical address corresponding to the logical address from the LBA table after the information is written to a different one of the plurality of blocks during the wear leveling operation; and
update the LBA table with a third physical address corresponding to the different one of the plurality of blocks to which the information is written during the wear leveling operation at least partially in response to the second physical address being equal to the first physical address.
8 Assignments
0 Petitions
Accused Products
Abstract
Memory controllers can include a switch and non-volatile memory control circuitry including channel control circuits coupled to the switch. The channel control circuits can coupled to logical units including blocks. Volatile memory and memory management circuitry including local memory can be coupled to the switch. The memory management circuitry can be configured to store health and status information for each of the blocks in a block table in the volatile memory, store a candidate block table that identifies a candidate block for a particular operation based on criteria in the local memory, update the health and status information for a particular block in the block table, compare the updated health and status information for the particular block with the candidate block according to the criteria, and update the candidate block table to identify the particular block in response to the comparison indicating that the particular block better satisfies the criteria.
26 Citations
4 Claims
-
1. An apparatus, comprising:
-
a switch; non-volatile memory control circuitry coupled to the switch and including a plurality of channel control circuits, wherein each of the plurality of channel control circuits is configured to be coupled to a number of logical units (LUNs), wherein each of the number of LUNs includes a plurality of blocks; volatile memory coupled to the switch; and memory management circuitry coupled to the switch and including local memory, wherein the memory management circuitry is configured to; store logical to physical address translations in a logical block address (LBA) table in the volatile memory; retrieve a first physical address corresponding to a logical address for a particular block of the plurality of blocks from the block table prior to information being read from the particular block during a wear leveling operation on the particular block; retrieve a second physical address corresponding to the logical address from the LBA table after the information is written to a different one of the plurality of blocks during the wear leveling operation; and update the LBA table with a third physical address corresponding to the different one of the plurality of blocks to which the information is written during the wear leveling operation at least partially in response to the second physical address being equal to the first physical address. - View Dependent Claims (2)
-
-
3. A method, comprising:
-
storing, with memory management circuitry coupled to a switch and including logical memory, logical to physical address translation in a logical block address (LBA) table in volatile memory coupled to the switch; wherein non-volatile memory control circuitry coupled to the switch includes a plurality of channel control circuits, wherein each of the plurality of channel control circuits is configured to be coupled to a number of logical units (LUNs), wherein each of the number of LUNs includes a plurality of blocks; retrieving, with the memory management circuitry, a first physical address corresponding to a logical address for a particular block of the plurality of blocks from the block table prior to information being read from the particular block during a wear leveling operation on the particular block; retrieving, with the memory management circuitry, a second physical address corresponding to the logical address from the LBA table after the information is written to a different one of the plurality of blocks during the wear leveling operation; and updating, with the memory management circuitry, the LBA table with a third physical address corresponding to the different one of the plurality of blocks to which the information is written during the wear leveling operation at least partially in response to the second physical address being equal to the first physical address. - View Dependent Claims (4)
-
Specification