Namespace change propagation in non-volatile memory devices
First Claim
1. A computer storage device, comprising:
- a controller;
non-volatile storage media; and
firmware containing instructions which, when executed by the controller, instruct the controller to at least;
identify a first copy of mapping data as active, the mapping data defining mapping, from logical block addresses in one or more namespaces configured on the non-volatile storage media, to logical block addresses in a capacity of the non-volatile storage media;
cache the first copy in one or more memory areas in the computer storage device as one or more second copies of the mapping data in one or more running instances of a first component of the firmware;
replicate the first copy to create a third copy;
implement changes in the third copy while the first copy is being identified as active;
after the changes are made in the third copy, identify the third copy as active and simultaneously make the first copy inactive; and
update the one or more second copies according to the third copy in response to making the third copy active and the first copy inactive.
6 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 computer storage device, comprising:
-
a controller; non-volatile storage media; and firmware containing instructions which, when executed by the controller, instruct the controller to at least; identify a first copy of mapping data as active, the mapping data defining mapping, from logical block addresses in one or more namespaces configured on the non-volatile storage media, to logical block addresses in a capacity of the non-volatile storage media; cache the first copy in one or more memory areas in the computer storage device as one or more second copies of the mapping data in one or more running instances of a first component of the firmware; replicate the first copy to create a third copy; implement changes in the third copy while the first copy is being identified as active; after the changes are made in the third copy, identify the third copy as active and simultaneously make the first copy inactive; and update the one or more second copies according to the third copy in response to making the third copy active and the first copy inactive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method implemented in a computer storage device, the method comprising:
-
storing a first copy of mapping data, the mapping data defining mapping, from logical block addresses in one or more namespaces configured on a non-volatile storage media of the computer storage device, to logical block addresses in a capacity of the non-volatile storage media; configuring an active indicator to identify the first copy as active; caching the first copy in one or more memory areas in the computer storage device as one or more second copies of the mapping data in one or more running instances of a first firmware component being executed by a controller of the computer storage device; replicating the first copy to create a third copy; changing the third copy while the first copy is being identified as active; after changing the third copy, changing the active indicator to identify the third copy as active and thus simultaneously render the first copy inactive; and in response to the changing of the active indicator, updating the second copies according to the third copy. - View Dependent Claims (16, 17)
-
-
18. A non-transitory computer storage medium storing instructions which, when executed by a controller of a computer storage device, cause the controller to perform a method, the method comprising:
-
storing a first copy of mapping data, the mapping data defining mapping, from logical block addresses in one or more namespaces configured on a non-volatile storage media of the computer storage device, to logical block addresses in a capacity of the non-volatile storage media; configuring an active indicator to identify the first copy as active; caching the first copy in one or more memory areas in the computer storage device as one or more second copies of the mapping data in one or more running instances of a first instruction component being executed by a controller of the computer storage device; replicating the first copy to create a third copy; changing the third copy while the first copy is being identified as active; after changing the third copy, changing the active indicator to identify the third copy as active and thus simultaneously rendering the first copy inactive; and in response to the changing of the active indicator, updating the second copies according to the third copy. - View Dependent Claims (19, 20)
-
Specification