10108350

Method for Providing Nonvolatile Storage Write Bandwidth Using a Caching Namespace

PublishedOctober 23, 2018
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. An apparatus for implementing an enhanced-write-bandwidth caching stream, the apparatus comprising: a processor; and a memory storing machine instructions thereon that, when executed by the processor, configure the processor to: apportion a first address space and a second address space comprising a logical namespace; separate host write requests into a first host write stream and a different second host write stream based on respective types of the host write requests, requests of the first host write stream being of a first type and designated for storage in the first address space, and requests of the second host write stream being of a second type and designated for storage in the second address space, the first type of request being a general host write request, and the second type of request being a latency-sensitive host write request that is more sensitive to write latency than the general host write request; subject the first host write stream to host-write throttling of storage in the first address space; and exempt the second host write stream from host-write throttling of storage in the second address space when a second available space of memory cells currently available for programming associated with the second address space is greater than zero.

2

2. The apparatus of claim 1 , wherein the machine instructions, when executed, further configure the processor to require data in memory cells corresponding to the second address space be invalidated at an interval not to exceed a number of host writes equaling the capacity of the second address space.

3

3. The apparatus of claim 1 , wherein the machine instructions, when executed, further configure the processor to require logical blocks corresponding to the second address space be invalidated in an order corresponding to a previous order in which the respective logical blocks were previously programmed.

4

4. The apparatus of claim 1 , wherein the machine instructions, when executed, further configure the processor to store the first host write stream in the first address space, and store the second host write stream in the second address space.

5

5. The apparatus of claim 4 , wherein to subject the first address space to host-write throttling the machine instructions, when executed, further configure the processor to determine a first available space of memory cells currently available for programming associated with the first address space, compare the first available space to a predetermined threshold, and reduce a first throughput of the first host write stream based on the first available space not exceeding the threshold, while permitting an unthrottled throughput of the second host write stream.

6

6. The apparatus of claim 5 , wherein to determine the first available space of memory cells currently available for programming the machine instructions, when executed, further configure the processor to determine a total available space of memory cells currently available for programming associated with the first address space and the second address space, determine a second available space of memory cells currently available for programming associated with the second address space, and subtract the second available space from the total available space.

7

7. The apparatus of claim 4 , wherein to exempt the second address space from host-write throttling the machine instructions, when executed, further configure the processor to determine a second available space of memory cells currently available for programming associated with the second address space, and permit an unthrottled throughput of the second host write stream while the second available space is greater than zero.

8

8. The apparatus of claim 4 , wherein to store the first host write stream in the first address space the machine instructions, when executed, further configure the processor to combine the first host write stream with a reclamation write stream to form an aggregate write stream, and store the aggregate write stream in the first address space.

9

9. An apparatus for implementing an enhanced-write-bandwidth caching stream, the apparatus comprising: a processor; and a memory storing machine instructions thereon that, when executed by the processor, configure the processor to: divide a stream of host write requests into a first host write stream and a second host write stream based on whether respective requests of the stream are latency-sensitive host write requests, the first host write stream comprising general host write requests in a first address space and the second host write stream comprising latency-sensitive host write requests in a second address space different from the first address space; and perform host-write throttling, wherein the second address space is exempted from host-write throttling when a second available space of memory cells currently available for programming associated with the second address space is greater than zero.

10

10. The apparatus of claim 9 , wherein the machine instructions, when executed, further configure the processor to require data in memory cells corresponding to the second address space be invalidated at an interval not to exceed a number of host writes equaling the capacity of the second address space.

11

11. The apparatus of claim 9 , wherein the machine instructions, when executed, further configure the processor to define the first address space and the second address space comprising a logical namespace, wherein the first address space corresponds to the first host write stream, the second address space corresponds to the second host write stream.

12

12. The apparatus of claim 9 , wherein the machine instructions, when executed, further configure the processor to invalidate previously-programmed logical blocks associated with the second host write stream in an order corresponding to a previous order in which the respective logical blocks were previously programmed.

13

13. A computer-implemented method for implementing an enhanced-write-bandwidth caching stream, the method comprising: apportioning a first address space and a second address space associated with a storage device, the second address space comprising a logical namespace; separate host write requests into a first host write stream and a different second host write stream based on respective types of the host write requests, requests of the first host write stream being of a first type and designated for storage in the first address space, and requests of the second host write stream being of a second type and designated for storage in the second address space, the first type of request being a general host write request, and the second type of request being a latency-sensitive host write request that is more sensitive to write latency than the general host write request; subjecting the first host write stream to host-write throttling of storage in the first address space; and exempting the second host write stream from host-write throttling of storage in the second address space when a second available space of memory cells currently available for programming associated with the second address space is greater than zero.

14

14. The method of claim 13 , further comprising requiring data in memory cells corresponding to the second address space be invalidated at an interval not to exceed a number of host writes equaling the capacity of the second address space.

15

15. The method of claim 13 , further comprising requiring logical blocks corresponding to the second address space be invalidated in an order corresponding to a previous order in which the respective logical blocks were previously programmed.

16

16. The method of claim 13 , the method further comprising: receiving the first host write stream and the second host write stream; storing the first host write stream in the first address space; and storing the second host write stream in the second address space.

17

17. The method of claim 16 , further comprising: determining a first available space of memory cells currently available for programming associated with the first address space; comparing the first available space to a predetermined threshold; reducing a first throughput of the first host write stream based on the first available space not exceeding the threshold, while permitting an unthrottled throughput of the second host write stream.

18

18. The method of claim 17 , wherein determining the first available space of memory cells currently available for programming further comprises: determining a total available space of memory cells currently available for programming associated with the first address space and the second address space; determining a second available space of memory cells currently available for programming associated with the second address space; and subtracting the second available space from the total available space.

19

19. The method of claim 18 , wherein determining the first available space of memory cells currently available for programming further comprises: ascertaining a first number of blocksets currently available for programming associated with the first address space; determining the total available space of memory cells currently available for programming further comprises ascertaining a second number of blocksets currently available for programming associated with the first address space and the second address space; and determining the second available space of memory cells currently available for programming further comprises ascertaining a third number of blocksets currently available for programming associated with the second address space.

20

20. The method of claim 16 , wherein exempting the second address space from host-write throttling further comprising: determining a second available space of memory cells currently available for programming associated with the second address space; and permitting an unthrottled throughput of the second host write stream while the second available space is greater than zero.

Patent Metadata

Filing Date

Unknown

Publication Date

October 23, 2018

Inventors

Adam Michael ESPESETH
Colin Christopher McCAMBRIDGE
David George DREYER

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD FOR PROVIDING NONVOLATILE STORAGE WRITE BANDWIDTH USING A CACHING NAMESPACE” (10108350). https://patentable.app/patents/10108350

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.