IP Library Granted Patent US 11,567,862
Granted Patent B2
US 11,567,862 · App. 16/821,842 · Granted Jan 31, 2023

Configurable NVM set to tradeoff between performance and user space

Inventors: Cody Dinges (Longmont, CO); Joseph Tarango (Longmont, CO); Jim Baca (Longmont, CO)
Assignee: Intel Corporation
G06F12/0246G06F11/3006G06F11/3034G06F12/0893G06K9/6218G06F2212/7202
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,567,862
App. No.
16/821,842
Granted
Jan 31, 2023
Kind
B2
Abstract

An embodiment of an electronic apparatus may include one or more substrates, and logic coupled to the one or more substrates, the logic to determine a set of requirements for a persistent storage media based on input from an agent, dedicate one or more banks of the persistent storage media to the agent based on the set of requirements, and configure at least one of the dedicated one or more banks of the persistent storage media at a program mode width which is narrower than a native maximum program mode width for the persistent storage media. Other embodiments are disclosed and claimed.

Claims (66)

1. An electronic apparatus, comprising:

one or more substrates; and

logic coupled to the one or more substrates, the logic to:

determine a set of requirements for a persistent storage media based on input from an agent,

dedicate one or more banks of the persistent storage media to the agent based on the set of requirements, and

configure at least one of the dedicated one or more banks of the persistent storage media at a program mode width which is narrower than a native maximum program mode width for the persistent storage media.

2. The apparatus of claim 1 , wherein the logic is further to:

configure a cache hierarchy within the dedicated one or more banks of the persistent storage media.

3. The apparatus of claim 1 , wherein the logic is further to:

relocate blocks of the persistent storage media; and

re-target predicted faulted blocks to an offline pool as the blocks are relocated.

4. The apparatus of claim 1 , wherein the logic is further to:

mark blocks for offline status;

exercise the blocks marked for offline status;

determine an integrity of the exercised blocks; and

indicate an amount of free space for the persistent storage media based on the determined integrity of the exercised block.

5. The apparatus of claim 1 , wherein the logic is further to:

cluster a candidate tier of constructed blocks; and

calculate concurrent limitations for the cluster based on one or more regression sets.

6. The apparatus of claim 1 , wherein the logic is further to:

construct a namespace of blocks suitable for a use mode; and

provide a notification of an availability of the namespace for the use mode if the constructed namespace is determined to be large enough based on the set of requirements.

7. The apparatus of claim 1 , wherein the persistent storage media comprises a solid state drive.

8. An electronic storage system, comprising:

persistent storage media; and

a controller communicatively coupled to the persistent storage media, the controller including logic to:

determine a set of requirements for the persistent storage media based on input from an agent,

dedicate one or more banks of the persistent storage media to the agent based on the set of requirements, and

configure at least one of the dedicated one or more banks of the persistent storage media at a program mode width which is narrower than a native maximum program mode width for the persistent storage media.

9. The system of claim 8 , wherein the logic is further to:

configure a cache hierarchy within the dedicated one or more banks of the persistent storage media.

10. The system of claim 8 , wherein the logic is further to:

relocate blocks of the persistent storage media; and

re-target predicted faulted blocks to an offline pool as the blocks are relocated.

11. The system of claim 8 , wherein the logic is further to:

mark blocks for offline status;

exercise the blocks marked for offline status;

determine an integrity of the exercised blocks; and

indicate an amount of free space for the persistent storage media based on the determined integrity of the exercised block.

12. The system of claim 8 , wherein the logic is further to:

cluster a candidate tier of constructed blocks; and

calculate concurrent limitations for the cluster based on one or more regression sets.

13. The system of claim 8 , wherein the logic is further to:

construct a namespace of blocks suitable for a use mode; and

provide a notification of an availability of the namespace for the use mode if the constructed namespace is determined to be large enough based on the set of requirements.

14. The system of claim 8 , wherein the persistent storage media comprises a solid state drive.

15. A method of managing storage, comprising:

determining a set of requirements for a persistent storage media based on input from an agent;

dedicating one or more banks of the persistent storage media to the agent based on the set of requirements; and

configuring at least one of the dedicated one or more banks of the persistent storage media at a program mode width which is narrower than a native maximum program mode width for the persistent storage media.

16. The method of claim 15 , further comprising:

configuring a cache hierarchy within the dedicated one or more banks of the persistent storage media.

17. The method of claim 15 , further comprising:

relocating blocks of the persistent storage media; and

re-targeting predicted faulted blocks to an offline pool as the blocks are relocated.

18. The method of claim 15 , further comprising:

marking blocks for offline status;

exercising the blocks marked for offline status;

determining an integrity of the exercised blocks; and

indicating an amount of free space for the persistent storage media based on the determined integrity of the exercised block.

19. The method of claim 15 , further comprising:

clustering a candidate tier of constructed blocks; and

calculating concurrent limitations for the cluster based on one or more regression sets.

20. The method of claim 15 , further comprising:

constructing a namespace of blocks suitable for a use mode; and

providing a notification of an availability of the namespace for the use mode if the constructed namespace is determined to be large enough based on the set of requirements.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2023
From: INTEL CORPORATION
To: INTEL NDTM US LLC
Reel/Frame 064928/0832 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2020
From: DINGES, CODY; TARANGO, JOSEPH; BACA, JIM
To: INTEL CORPORATION
Reel/Frame 052143/0029 →