Hybrid mapping implementation within a non-volatile memory system
First Claim
1. A method for mapping logical blocks with physical blocks in a non-volatile memory system, wherein a plurality of the logical blocks in the non-volatile memory system each include a plurality of logical pages organized into at least two logical block groups, the method comprising:
- determining whether a first physical block in the non-volatile memory system is logically associated with one or more logical block groups of a first logical block in the non-volatile memory system;
determining whether it is appropriate to logically map one or more logical block groups of a second logical block in the non-volatile memory system to the first physical block responsive to determining that the first physical block is logically associated with the one or more logical block groups of the first logical block; and
logically mapping the one or more logical block groups of the second logical block to the first physical block responsive to determining that it is appropriate to map the one or more logical block groups of the second logical block to the first physical block; and
wherein the one or more logical block groups of the first logical block and the one or more logical block groups of the second logical block are concurrently mapped to the first physical block.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for allowing different mapping implementations, including a many-to-one logical to physical block mapping, to be used within a memory system are disclosed. According to one aspect of the present invention, a method for mapping a plurality of logical blocks to a physical block includes identifying a first logical block meets at least one criterion. The method also includes identifying a second logical block which is substantially complementary to the first logical block, and providing contents associated with the first logical block and contents associated with the second logical block to the physical block.
56 Citations
22 Claims
-
1. A method for mapping logical blocks with physical blocks in a non-volatile memory system, wherein a plurality of the logical blocks in the non-volatile memory system each include a plurality of logical pages organized into at least two logical block groups, the method comprising:
-
determining whether a first physical block in the non-volatile memory system is logically associated with one or more logical block groups of a first logical block in the non-volatile memory system; determining whether it is appropriate to logically map one or more logical block groups of a second logical block in the non-volatile memory system to the first physical block responsive to determining that the first physical block is logically associated with the one or more logical block groups of the first logical block; and logically mapping the one or more logical block groups of the second logical block to the first physical block responsive to determining that it is appropriate to map the one or more logical block groups of the second logical block to the first physical block; and wherein the one or more logical block groups of the first logical block and the one or more logical block groups of the second logical block are concurrently mapped to the first physical block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-volatile memory system comprising:
-
a non-volatile memory, the non-volatile memory including a plurality of physical blocks, and a plurality of logical blocks each having a plurality of pages organized into at least two logical block groups; means for determining whether a first physical block is logically associated with one or more logical block groups of a first logical block; means for determining whether it is appropriate to logically map one or more logical block groups of a second logical block to the first physical block responsive to determining that the first physical block is logically associated with the one or more logical block groups of the first logical block; and means for logically mapping the one or more of the logical block groups of the second logical block to the first physical block responsive to determining that it is appropriate to logically map the one or more logical block groups of the second logical block to the first physical block, wherein the one or more logical block groups of the first logical block and the one or more logical block groups of the second logical block are concurrently mapped to the first physical block. - View Dependent Claims (11, 12, 13, 15, 16)
-
-
14. The non-volatile memory system of 10 further comprising:
-
means for determining whether it is appropriate to logically map one or more logical block groups of a third logical block to the first physical block; and means for logically mapping the one or more logical block groups of the third logical block to the first physical block responsive to determining that it is appropriate to logically map the one or more logical block groups of the third logical block to the first physical block, wherein the one or more logical block groups of the first logical block the one or more logical block groups of the second logical block, and the one or more logical block groups of the third logical block are concurrently mapped to the first physical block.
-
-
17. A memory system comprising:
-
a non-volatile memory, the non-volatile memory having a plurality of physical blocks, the non-volatile memory further having a plurality of logical blocks each having a plurality of logical pages organized into at least two logical block groups; code devices operating to determine whether a first physical block is logically associated with one or more logical block groups of a first logical block; code devices operating to determine whether it is appropriate to logically map one or more logical block groups of a second logical block to the first physical block responsive to determining that the first physical block is logically associated with the one or more logical block groups of the first logical block; code devices operating to logically map the one or more logical block groups of the second logical block to the first physical block responsive to determining that it is appropriate to logically map the one or more logical block groups of the second logical block to the first physical block; and a memory area that stores at least a portion of the code devices for execution by a controller; wherein the code devices cooperate so that the one or more logical block groups of the first logical block and the one or more logical block groups of the second logical block may be concurrently mapped to the first physical block. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification