Namespaces Allocation in Non-Volatile Memory Devices
First Claim
1. A computer storage device, comprising:
- a host interface;
a controller;
non-volatile storage media; and
firmware containing instructions which, when executed by the controller, instruct the controller to at least;
receive, via the host interface, a request from a host to allocate a namespace of a quantity of non-volatile memory;
generate, in response to the request, a namespace map identifying;
a plurality of blocks of addresses having a same predetermined block size; and
a partial block of addresses having a size smaller than the predetermined block size; and
convert, using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory.
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: receive, via the host interface, a request from a host to allocate a namespace of a quantity of non-volatile memory; generate, in response to the request, a namespace map identifying a plurality of blocks of addresses having a same predetermined block size, and a partial block of addresses having a size smaller than the predetermined block size; and convert, using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory. For example, the request for allocating the namespace can be in accordance with an NVMe protocol.
20 Citations
20 Claims
-
1. A computer storage device, comprising:
-
a host interface; a controller; non-volatile storage media; and firmware containing instructions which, when executed by the controller, instruct the controller to at least; receive, via the host interface, a request from a host to allocate a namespace of a quantity of non-volatile memory; generate, in response to the request, a namespace map identifying; a plurality of blocks of addresses having a same predetermined block size; and a partial block of addresses having a size smaller than the predetermined block size; and convert, using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory. - View Dependent Claims (2, 3)
-
-
4. A method implemented in a computer storage device, the method comprising:
-
receiving, in a controller coupled with a non-volatile memory, a request from a host to create or reserve a namespace of a quantity of non-volatile memory; generating, by the controller in response to the request, a namespace map identifying; a plurality of blocks of addresses having a same predetermined block size; and a partial block of addresses having a size smaller than the predetermined block size; and converting, by the controller using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. 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:
-
receiving, in the controller coupled with a non-volatile memory, a request from a host to create or reserve a namespace of a quantity of non-volatile memory; generating, by the controller in response to the request, a namespace map identifying; a plurality of blocks of addresses having a same predetermined block size; and a partial block of addresses having a size smaller than the predetermined block size; and converting, by the controller using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory. - View Dependent Claims (18, 19, 20)
-
Specification