10956081

Method, System, and Apparatus for Multi-Tiered Progressive Memory Program Operation Suspend and Resume

PublishedMarch 23, 2021
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method, comprising: maintaining a data structure for performing a program operation in a NAND device, wherein the program operation is allowed to be suspended to perform read operations in the NAND device, wherein the data structure indicates a plurality of tiers, wherein each tier of the plurality of tiers has a number of allowed suspends of the program operation while executing in the tier, and wherein a sum of the number of allowed suspends for all tiers of the plurality of tiers equals a maximum allowed number of suspends of the program operation; and in response to performing a resume of the program operation, after performing a read following a suspend of the program operation, determining a tier of the plurality of tiers for the program operation and performing a subsequent suspend of the program operation only after a measure of progress of the program operation has been exceeded in the determined tier.

Plain English translation pending...
Claim 2

Original Legal Text

2. The method of claim 1 , wherein in each tier of the plurality of tiers at least a predetermined amount of progress in an execution of the program operation is made before a subsequent suspend is allowed.

Plain English translation pending...
Claim 3

Original Legal Text

3. The method of claim 1 , wherein in each tier of the plurality of tiers the number of allowed suspends indicated for the tier is performed, unless the program operation is completed prior to the number of allowed suspends indicated for the tier being performed.

Plain English translation pending...
Claim 4

Original Legal Text

4. The method of claim 3 , wherein the measure of progress of the program operation is based on an amount of time elapsed since a last resumption of the program operation.

Plain English translation pending...
Claim 5

Original Legal Text

5. The method of claim 3 , wherein the measure of progress of the program operation is based on a number of program pulses the program operation has executed since a last resumption of the program operation, wherein a program pulse is an incremental threshold voltage movement of a cell to a final target voltage for the cell.

Plain English translation pending...
Claim 6

Original Legal Text

6. An apparatus, comprising: a non-volatile memory; and a controller, wherein the controller controls the non-volatile memory, and wherein the controller is operable to: maintain a data structure for performing a program operation in the non-volatile memory, wherein the program operation is allowed to be suspended to perform read operations in the non-volatile memory, wherein the data structure indicates a plurality of tiers, wherein each tier of the plurality of tiers has a number of allowed suspends of the program operation while executing in the tier, and wherein a sum of the number of allowed suspends for all tiers of the plurality of tiers equals a maximum allowed number of suspends of the program operation; and in response to performing a resume of the program operation, after performing a read following a suspend of the program operation, determine a tier of the plurality of tiers for the program operation and perform a subsequent suspend of the program operation only after a measure of progress of the program operation has been exceeded in the determined tier.

Plain English translation pending...
Claim 7

Original Legal Text

7. The apparatus of claim 6 , wherein in each tier of the plurality of tiers at least a predetermined amount of progress in an execution of the program operation is made before a subsequent suspend is allowed.

Plain English translation pending...
Claim 8

Original Legal Text

8. The apparatus of claim 6 , wherein in each tier of the plurality of tiers the number of allowed suspends indicated for the tier is performed, unless the program operation is completed prior to the number of allowed suspends indicated for the tier being performed.

Plain English Translation

This invention relates to a memory storage apparatus designed to manage program operations in a multi-tiered system, particularly focusing on controlling the number of allowed suspends during these operations. The apparatus includes a plurality of tiers, each with a specified number of allowed suspends for program operations. The system ensures that the number of allowed suspends for each tier is performed unless the program operation is completed before reaching that limit. This mechanism helps optimize performance and reliability by preventing excessive suspends, which can degrade memory efficiency and longevity. The apparatus may also include a controller configured to track and enforce these suspend limits, ensuring operations adhere to the predefined constraints. The invention addresses the problem of managing suspend operations in memory systems to balance performance, endurance, and data integrity, particularly in environments where frequent interruptions or partial operations occur. By limiting suspends per tier, the system avoids unnecessary delays and wear, improving overall system reliability and efficiency. The apparatus may be integrated into solid-state drives, flash memory systems, or other storage devices requiring controlled program operations.

Claim 9

Original Legal Text

9. The apparatus of claim 8 , wherein the measure of progress of the program operation is based on an amount of time elapsed since a last resumption of the program operation.

Plain English translation pending...
Claim 10

Original Legal Text

10. The apparatus of claim 8 , wherein the measure of progress of the program operation is based on a number of program pulses the program operation has executed since a last resumption of the program operation, wherein a program pulse is an incremental threshold voltage movement of a cell to a final target voltage for the cell.

Plain English translation pending...
Claim 11

Original Legal Text

11. A controller coupled to a non-volatile memory, wherein the controller is operable to: maintain a data structure for performing a program operation in the non-volatile memory, wherein the program operation is allowed to be suspended to perform read operations in the non-volatile memory, wherein the data structure indicates a plurality of tiers, wherein each tier of the plurality of tiers has a number of allowed suspends of the program operation while executing in the tier, and wherein a sum of the number of allowed suspends for all tiers of the plurality of tiers equals a maximum allowed number of suspends of the program operation; and in response to performing a resume of the program operation, after performing a read following a suspend of the program operation, determine a tier of the plurality of tiers for the program operation and perform a subsequent suspend of the program operation only after a measure of progress of the program operation has been exceeded in the determined tier.

Plain English translation pending...
Claim 12

Original Legal Text

12. The controller of claim 11 , wherein in each tier of the plurality of tiers at least a predetermined amount of progress in an execution of the program operation is made before a subsequent suspend is allowed.

Plain English translation pending...
Claim 13

Original Legal Text

13. The controller of claim 11 , wherein in each tier of the plurality of tiers the number of allowed suspends indicated for the tier is performed, unless the program operation is completed prior to the number of allowed suspends indicated for the tier being performed.

Plain English Translation

A system for managing program operations in a storage device, particularly for handling suspend operations during data programming, is described. The system addresses the problem of inefficient or unreliable data programming in storage devices, where frequent or improper suspends can degrade performance or cause data integrity issues. The invention involves a controller that regulates suspend operations across multiple tiers of a storage device, where each tier has a predefined limit on the number of allowed suspends. The controller enforces these limits to ensure that suspend operations do not disrupt the programming process excessively. If a program operation completes before reaching the allowed suspend limit for a given tier, the remaining suspends are not performed. This mechanism helps maintain data integrity and performance by preventing excessive suspends while allowing necessary interruptions when required. The system is particularly useful in storage devices with hierarchical or multi-tiered architectures, such as solid-state drives or other non-volatile memory systems, where controlled suspend handling is critical for reliable operation.

Claim 14

Original Legal Text

14. The controller of claim 13 , wherein the measure of progress of the program operation is based on an amount of time elapsed since a last resumption of the program operation.

Plain English Translation

A system for managing program operations in a computing environment addresses the challenge of efficiently tracking and resuming program execution, particularly in scenarios where operations are interrupted or paused. The system includes a controller that monitors the progress of a program operation by measuring the elapsed time since the operation was last resumed. This time-based measurement allows the controller to assess how much of the operation has been completed and to determine whether additional steps, such as resuming or terminating the operation, are necessary. The controller may also compare the elapsed time against predefined thresholds to make decisions about the operation's status or next steps. This approach ensures that program operations are managed in a controlled and predictable manner, reducing the risk of incomplete or stalled processes. The system is particularly useful in environments where operations may be frequently interrupted, such as in distributed computing or real-time processing systems. By focusing on the time elapsed since resumption, the controller provides a simple yet effective way to track progress without requiring complex state tracking or additional computational overhead. This method enhances reliability and efficiency in program execution management.

Claim 15

Original Legal Text

15. The controller of claim 13 , wherein the measure of progress of the program operation is based on a number of program pulses the program operation has executed since a last resumption of the program operation, wherein a program pulse is an incremental threshold voltage movement of a cell to a final target voltage for the cell.

Plain English translation pending...
Claim 16

Original Legal Text

16. A non-volatile memory complex comprising an array of non-volatile memory, wherein the non-volatile memory complex is operable to: maintain a data structure for performing a program operation in a non-volatile memory of the array of non-volatile memory, wherein the program operation is allowed to be suspended to perform read operations in the non-volatile memory of the array of non-volatile memory, wherein the data structure indicates a plurality of tiers, wherein each tier of the plurality of tiers has a number of allowed suspends of the program operation while executing in the tier, and wherein a sum of the number of allowed suspends for all tiers of the plurality of tiers equals a maximum allowed number of suspends of the program operation; and in response to performing a resume of the program operation, after performing a read following a suspend of the program operation, determine a tier of the plurality of tiers for the program operation and perform a subsequent suspend of the program operation only after a measure of progress of the program operation has been exceeded in the determined tier.

Plain English translation pending...
Claim 17

Original Legal Text

17. The non-volatile memory complex of claim 16 , wherein in each tier of the plurality of tiers at least a predetermined amount of progress in an execution of the program operation is made before a subsequent suspend is allowed.

Plain English translation pending...
Claim 18

Original Legal Text

18. The non-volatile memory complex of claim 16 , wherein in each tier of the plurality of tiers the number of allowed suspends indicated for the tier is performed, unless the program operation is completed prior to the number of allowed suspends indicated for the tier being performed.

Plain English translation pending...
Claim 19

Original Legal Text

19. A system, comprising: a solid state drive (SSD) comprising a plurality of non-volatile memories; and a display communicatively coupled to the SSD to display data stored in the SSD, wherein the SSD is operable to: maintain a data structure for performing a program operation in a non-volatile memory of the plurality of non-volatile memories, wherein the program operation is allowed to be suspended to perform read operations in the non-volatile memory of the plurality of non-volatile memories, wherein the data structure indicates a plurality of tiers, wherein each tier of the plurality of tiers has a number of allowed suspends of the program operation while executing in the tier, and wherein a sum of the number of allowed suspends for all tiers of the plurality of tiers equals a maximum allowed number of suspends of the program operation; and in response to performing a resume of the program operation, after performing a read following a suspend of the program operation, determine a tier of the plurality of tiers for the program operation and perform a subsequent suspend of the program operation only after a measure of progress of the program operation has been exceeded in the determined tier.

Plain English translation pending...
Claim 20

Original Legal Text

20. The system of claim 19 , wherein in each tier of the plurality of tiers at least a predetermined amount of progress in an execution of the program operation is made before a subsequent suspend is allowed.

Plain English translation pending...
Patent Metadata

Filing Date

Unknown

Publication Date

March 23, 2021

Inventors

David J. PELSTER
David B. CARLTON
Mark Anthony GOLEZ
Xin GUO
Aliasgar S. MADRASWALA
Sagar S. SIDHPURA
Sagar UPADHYAY
Neelesh VEMULA
Yogesh B. WAKCHAURE
Ye ZHANG

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, FAQs, 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, SYSTEM, AND APPARATUS FOR MULTI-TIERED PROGRESSIVE MEMORY PROGRAM OPERATION SUSPEND AND RESUME” (10956081). https://patentable.app/patents/10956081

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/10956081. See llms.txt for full attribution policy.