Namespace Change Propagation in Non-Volatile Memory Devices
First Claim
1. A solid state drive, comprising:
- random access memory;
non-volatile storage media; and
a controller having a plurality of processors, the controller configured to at least;
store a first copy of a namespace map in the random access memory;
configure the first copy of the namespace map as active;
cache the first copy as one or more second copies in one or more processors in the plurality of processors;
replicate, in the random access memory, the first copy as a third copy;
change the third copy in the random access memory while the first copy is configured as active;
configure the third copy as active and the first copy as inactive after the changing of the third copy in the random access memory; and
update the one or more second copies in the one or more processors according to the third copy that is configured as active.
5 Assignments
0 Petitions
Accused Products
Abstract
A computer storage device having a host interface, a controller, non-volatile storage media, and firmware. The firmware instructs the controller to: generate mapping data defining mapping, from logical block addresses in namespaces configured on the non-volatile storage media, to logical block addresses in a capacity of the non-volatile storage media; maintain an active copy of the mapping data; generate cached copies of the mapping data from the active copy; generate a shadow copy from the active copy; implement changes in the shadow copy; after the changes are made in the shadow copy, activate the shadow copy and simultaneously deactivate the previously active copy; and update the cached copies according to the newly activated copy, as a response to the change in active copy identification.
-
Citations
20 Claims
-
1. A solid state drive, comprising:
-
random access memory; non-volatile storage media; and a controller having a plurality of processors, the controller configured to at least; store a first copy of a namespace map in the random access memory; configure the first copy of the namespace map as active; cache the first copy as one or more second copies in one or more processors in the plurality of processors; replicate, in the random access memory, the first copy as a third copy; change the third copy in the random access memory while the first copy is configured as active; configure the third copy as active and the first copy as inactive after the changing of the third copy in the random access memory; and update the one or more second copies in the one or more processors according to the third copy that is configured as active. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method implemented in a solid state drive, the method comprising:
-
storing a first copy of a namespace map in random access memory of the solid state drive; configuring the first copy as active; caching the first copy as one or more second copies in one or more processors of the solid state drive; replicating the first copy in the random access memory as a third copy; changing the third copy while the first copy is configured as active; configuring the third copy as active and the first copy as inactive after the changing of the third copy; and updating the one or more second copies in the one or more processors according to the third copy that is configured as active. - View Dependent Claims (16, 17)
-
-
18. A non-transitory computer storage medium storing instructions which, when executed in a solid state drive, cause the solid state drive to perform a method, the method comprising:
-
storing a first copy of a namespace map in random access memory of the solid state drive; configuring the first copy as active; caching the first copy as one or more second copies in one or more processors of the solid state drive; replicating the first copy in the random access memory as a third copy; changing the third copy while the first copy is configured as active; configuring the third copy as active and the first copy as inactive after the changing of the third copy; and updating the one or more second copies in the one or more processors according to the third copy that is configured as active. - View Dependent Claims (19, 20)
-
Specification