DE102019134290A1 - Verfahren und System zum Verbessern der Leistung einer Speichervorrichtung unter Verwendung einer asynchronen, unabhängigen Ebenenlesefunktionalität - Google Patents

Verfahren und System zum Verbessern der Leistung einer Speichervorrichtung unter Verwendung einer asynchronen, unabhängigen Ebenenlesefunktionalität Download PDF

Info

Publication number
DE102019134290A1
DE102019134290A1 DE102019134290.2A DE102019134290A DE102019134290A1 DE 102019134290 A1 DE102019134290 A1 DE 102019134290A1 DE 102019134290 A DE102019134290 A DE 102019134290A DE 102019134290 A1 DE102019134290 A1 DE 102019134290A1
Authority
DE
Germany
Prior art keywords
memory
section
level
timer
memory section
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102019134290.2A
Other languages
English (en)
Inventor
Sahil Sharma
Phil Reusswig
Rohit Sehgal
Niles Yang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Technologies Inc
Original Assignee
Western Digital Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of DE102019134290A1 publication Critical patent/DE102019134290A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/02Arrangements for writing information into, or reading information out from, a digital store with means for avoiding parasitic signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

In einer Ausführungsform gibt es ein Verfahren zum Berechnen eines Zeitgebers auf einer Speichervorrichtung einschließlich einer Vielzahl von Speicherabschnitten zum Speichern von Daten und einer Speichersteuerung zum Durchführen von Operationen auf den Speicherabschnitten, wobei das Verfahren das Empfangen einer Anforderung zum Durchführen einer Anfangsoperation auf einem Speicherabschnitt aufweist; Bestimmen einer Betriebseigenschaft, die mit der Anfangsoperation in Verbindung steht, die auf dem Speicherabschnitt durchgeführt werden soll; und Berechnen einer Zeitspanne für einen Zeitgeber des Speicherabschnitts basierend auf den Betriebseigenschaften vor dem Start der Anfangsoperation auf dem Speicherabschnitt, wobei die Durchführung einer nachfolgenden Operation für einen anderen Speicherabschnitt verzögert wird, bis die Zeitspanne für den Zeitgeber des Speicherabschnitts seit Start der Operation auf dem Speicherabschnitt verstrichen ist.

Description

  • HINTERGRUND
  • Halbleiterspeichervorrichtungen, einschließlich Flash-Speicher, und Steuerungen davon verwenden in der Regel Speicherzellen, um Daten als einen elektrischen Wert zu speichern, wie eine elektrische Ladung oder Spannung. Eine Speicherzelle schließt beispielsweise einen einzelnen Transistor mit einem Floating-Gate ein, der verwendet wird, um eine Ladung zu speichern, die einen Datenwert darstellt. Ein Speicher ist eine nichtflüchtige Datenspeichervorrichtung, die elektrisch gelöscht und neu programmiert werden kann. Genauer gesagt behalten nichtflüchtige Speicher (z. B. Flash-Speicher sowie andere Arten von nichtflüchtigen Speichern, die unter Verwendung jeder beliebigen von einer Vielzahl von Technologien implementiert werden) gespeicherte Informationen auch ohne Strom, im Gegensatz zu flüchtigen Speichern, die Strom benötigen, um die gespeicherten Informationen zu erhalten.
  • Die Halbleiterspeichervorrichtungen können so eingerichtet werden, dass sie einen oder mehrere Chips einschließen. Jeder Chip kann in einer oder mehreren Ebenen organisiert sein. Jede Ebene kann ein zweidimensionales Gitter sein, das aus Zeilen (Bitleitungen) und Spalten (Wortleitungen) besteht, die mit den Speicherzellen verbunden sind. Die einzelnen Zeilen, die das Gitter bilden, können als eine Seite bezeichnet werden. Allgemeine Seitengrößen können 2K, 4K, 8K oder 16K einschließen.
  • Die Halbleiterspeichervorrichtungen können eingerichtet werden zum Durchführen eines zufälligen 4K-Lesevorgangs, bei dem jede Ebene mit einer anderen zufälligen Seite erfasst (z. B. gelesen) wird. In dieser Konfiguration kann jede Ebene für einen unabhängigen Chip stehen, wodurch die Systemparallelität für Ebenenlesevorgänge erhöht wird.
  • Es können einige Einschränkungen für die Halbleitervorrichtung existieren, um unabhängige Ebenenlesevorgänge durchzuführen. Während beispielsweise zwei Ebenen gleichzeitig erfassen, kann es Interferenzen zwischen den zwei Ebenen geben, was eine hohe Bitfehlerrate (BER) oder eine unerwünschte Spitze der Spitzenleistung verursachen kann. Die Erhöhung der BER kann möglicherweise die Nutzung von asynchronen unabhängigen Ebenenlesevorgängen (alPR) für das System begrenzen (z. B. Leseausnahmebehandlung, Leseschwellenkalibrierung) oder den Druck auf die Speichervorrichtungsingenieure erhöhen, die Anforderungen der System-BER zu erfüllen. Die Spitze der Spitzenleistung kann eine unerwünschte Erhöhung der Systemlast verursachen, was erfordert, dass das System die Anzahl der parallel arbeitenden Chips begrenzt, um bestimmte Leistungsanforderungen sicherzustellen. Um diese Probleme anzugehen, kann die Halbleitervorrichtung eingerichtet werden zum Durchführen synchroner unabhängiger Ebenenlesevorgänge, wobei jede Ebene individuell gelesen und basierend auf einem gemeinsamen Taktsignal synchronisiert wird. Jedoch kann die Halbleitervorrichtung unter reduzierten Leistungsgeschwindigkeiten leiden, da jede Ebene eine festgelegte vorbestimmte Zeitspanne warten muss, bis eine vorhergehende Ebene eine Erfassungsoperation vollständig beendet, bevor eine neue Erfassungsoperation durchgeführt wird. Daher besteht Bedarf an verbesserten Halbleitervorrichtungen und Steuerungen für die Halbleitervorrichtungen, die für unabhängige Ebenenlesevorgänge mit verbesserten Leistungsgeschwindigkeiten eingerichtet sind, bei gleichzeitigem Begrenzen der Bitfehlerrate und Verwalten von Spitzenleistung und Durchschnittsleistung.
  • KU RZDARSTELLU NG
  • Ohne den Schutzumfang der beiliegenden Ansprüche einzuschränken, wird nach Betrachtung dieser Offenbarung und insbesondere nach Betrachtung des Abschnitts mit dem Titel „Detaillierte Beschreibung“ ersichtlich, wie die Gesichtspunkte verschiedener Ausführungsformen implementiert und verwendet werden, um unabhängige Ebenenlesevorgänge mit verbesserten Leistungsgeschwindigkeiten durchzuführen, bei gleichzeitigem Begrenzen der Bitfehlerrate und Spitzen in der Spitzenleistung und Durchschnittsleistung.
  • In einer Ausführungsform gibt es ein Verfahren zum Implementieren unabhängiger Ebenenlesevorgänge auf einer Speichervorrichtung mit einer Vielzahl von Speicherebenen zum Speichern von Daten und einer Speichersteuerung zum Durchführen von Operationen auf den Speicherebenen, wobei das Verfahren aufweist: auf der Speichersteuerung: Empfangen einer Anforderung zum Durchführen einer ersten Operation auf einer ersten Ebene; Bestimmen, für eine zweite Ebene, ob ein Zeitgeber der zweiten Ebene mit einer jeweiligen vorbestimmten Zeitspanne seit Start einer zweiten Operation, die auf der zweiten Ebene durchgeführt wird, die von der ersten Ebene getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene nicht verstrichen ist, Verzögern des Durchführens der ersten Operation auf der ersten Ebene, bis die jeweilige vorbestimmte Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf der ersten Ebene, während die zweite Operation weiter auf der zweiten Ebene durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene verstrichen ist, Durchführen der ersten Operation auf der ersten Ebene.
  • In einigen Ausführungsformen ist die erste und/oder zweite Operation eine Erfassungsoperation.
  • In einigen Ausführungsformen basiert die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene auf den jeweiligen Eigenschaften des Speichers und/oder der Erfassungsoperation.
  • In einigen Ausführungsformen ist die jeweilige Eigenschaft mindestens eine von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften der jeweiligen Ebene.
  • In einigen Ausführungsformen, das Verfahren weiterhin aufweisend: auf der Speichersteuerung: als Reaktion auf den Start der Durchführung der ersten Operation auf der ersten Ebene, Starten eines Zeitgebers der ersten Ebene einschließlich einer jeweiligen vorbestimmten Zeitspanne, um die erste Operation auf der ersten Ebene durchzuführen, wobei es sich um die erste Erfassungsoperation handelt.
  • In einigen Ausführungsformen, das Verfahren weiterhin aufweisend: auf der Speichersteuerung: als Reaktion auf den Abschluss des Durchführens der ersten Operation auf der ersten Ebene, Zurücksetzen der Zeit der ersten Ebene.
  • In einigen Ausführungsformen basiert die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der ersten Ebene auf einer jeweiligen Eigenschaft der ersten Operation, die auf der ersten Ebene durchgeführt wird.
  • In einigen Ausführungsformen ist die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der ersten Ebene verschieden von der jeweiligen vorbestimmten Zeitspanne für den Zeitgeber der zweiten Ebene.
  • In einigen Ausführungsformen sind die erste Ebene und die zweite Ebene mit einer gleichen Stromquelle verbunden.
  • In einigen Ausführungsformen sind die erste Ebene und die zweite Ebene auf einem gleichen Chip angeordnet.
  • In einigen Ausführungsformen gibt es ein Datenspeichersystem zum Implementieren unabhängiger Ebenenlesevorgänge, wobei das Datenspeichersystem aufweist: eine Speichervorrichtung mit einer Vielzahl von Speicherebenen zum Speichern von Daten; und eine Speichersteuerung zum Durchführen von Operationen auf den Speicherebenen, wobei die Speichersteuerung eingerichtet ist zum Durchführen der Schritte von: Empfangen einer Anforderung zum Durchführen einer ersten Operation auf einer ersten Ebene; Bestimmen, für eine zweite Ebene, ob ein Zeitgeber der zweiten Ebene mit einer jeweiligen vorbestimmten Zeitspanne seit Start einer zweiten Operation, die auf der zweiten Ebene durchgeführt wird, die von der ersten Ebene getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene nicht verstrichen ist: Verzögern des Durchführens der ersten Operation auf der ersten Ebene, bis die jeweilige vorbestimmte Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf der ersten Ebene, während die zweite Operation weiter auf der zweiten Ebene durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene verstrichen ist, Durchführen der ersten Operation auf der ersten Ebene.
  • In einigen Ausführungsformen ist die erste Operation eine Erfassungsoperation.
  • In einigen Ausführungsformen basiert die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene auf einer jeweiligen Eigenschaft der zweiten Operation, die auf der zweiten Ebene durchgeführt wird.
  • In einigen Ausführungsformen ist die jeweilige Eigenschaft der zweiten Operation mindestens eine von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften der jeweiligen Ebene.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen des Schrittes von: als Reaktion auf den Start der Durchführung der ersten Operation auf der ersten Ebene, Starten eines Zeitgebers der ersten Ebene mit einer jeweiligen vorbestimmten Zeitspanne, um die erste Operation auf der ersten Ebene durchzuführen, wobei es sich um die erste Erfassungsoperation handelt.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen des Schrittes von: als Reaktion auf den Abschluss des Durchführens der ersten Operation auf der ersten Ebene, Zurücksetzen der Zeit der ersten Ebene.
  • In einigen Ausführungsformen basiert die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der ersten Ebene auf einer jeweiligen Eigenschaft der ersten Operation, die auf der ersten Ebene durchgeführt wird.
  • In einigen Ausführungsformen ist die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der ersten Ebene verschieden von der jeweiligen vorbestimmten Zeitspanne für den Zeitgeber der zweiten Ebene.
  • In einigen Ausführungsformen sind die erste Ebene und die zweite Ebene mit einer gleichen Stromquelle verbunden.
  • In einigen Ausführungsformen sind die erste Ebene und die zweite Ebene auf einem gleichen Chip angeordnet.
  • In einer Ausführungsform gibt es ein Verfahren zum Berechnen eines Zeitgebers auf einer Speichervorrichtung einschließlich einer Vielzahl von Speicherabschnitten zum Speichern von Daten und einer Speichersteuerung zum Durchführen von Operationen auf den Speicherabschnitten. Das Verfahren kann das Empfangen einer Anforderung zum Durchführen einer Anfangsoperation auf einem Speicherabschnitt einschließen. Das Verfahren kann das Bestimmen einer Betriebseigenschaft in Verbindung mit der Anfangsoperation einschließen, die auf dem Speicherabschnitt durchgeführt werden soll. Das Verfahren kann das Berechnen einer Zeitspanne für einen Zeitgeber eines Speicherabschnitts basierend auf den Betriebseigenschaften vor dem Start der Anfangsoperation auf dem Speicherabschnitt einschließen, wobei die Durchführung einer nachfolgenden Operation für einen anderen Speicherabschnitt verzögert wird, bis die Zeitspanne für den Zeitgeber des Speicherabschnitts seit Start der Operation auf dem Speicherabschnitt verstrichen ist.
  • In einigen Ausführungsformen schließt die Betriebseigenschaft mindestens eine ein von: einer Speichereigenschaft, einer Seitenkombinationseigenschaft und einer Erfassungseigenschaft.
  • In einigen Ausführungsformen ist die Betriebseigenschaft eine Speichereigenschaft, die mindestens eines einschließt von: Programmierungs-/Löschzyklus, Datenaufbewahrung, Cross-Temperature, Systemtemperatur und Read-Disturb.
  • In einigen Ausführungsformen ist die Betriebseigenschaft eine Seitenkombinationseigenschaft, die mindestens eine einschließt von: einer Single-Level-Cell-Seite, einer unteren Multi-Level-Cell-Seite (MLC-Seite), einer mittleren MLC-Seite und einer oberen MLC-Seite.
  • In einigen Ausführungsformen ist die Betriebseigenschaft eine Erfassungseigenschaft, die mindestens eines einschließt von: erster Lesevorgang, normaler Lesevorgang, Vreak Spike und Data Look-Ahead.
  • In einigen Ausführungsformen überlappt ein erster Zeitraum für die Durchführung der Anfangsoperation auf dem Speicherabschnitt mit einem zweiten Zeitraum für die Durchführung einer nachfolgenden Operation für einen anderen Speicherabschnitt.
  • In einigen Ausführungsformen ist der Speicherabschnitt mindestens eines von: einer Ebene, einem Chip, einem Block, einer Seite.
  • In einer Ausführungsform gibt es eine Speichersteuerung zum Durchführen von Operationen auf einem oder mehreren Speicherabschnitten zum Speichern von Daten, wobei die Speichersteuerung eingerichtet ist zum Durchführen der Operationen: empfangen einer Anforderung zum Durchführen einer ersten Operation auf einem ersten Speicherabschnitt; Bestimmen, für einen zweiten Speicherabschnitt, ob ein Zeitgeber eines zweiten Speicherabschnitts mit einer jeweiligen Zeitspanne seit dem Start einer zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt wird, der von dem ersten Speicherabschnitt getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts nicht verstrichen ist: Verzögern des Durchführens der ersten Operation auf dem ersten Speicherabschnitt, bis die jeweilige Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf dem zweiten Speicherabschnitt durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf dem ersten Speicherabschnitt, während die zweite Operation weiter auf dem zweiten Speicherabschnitt durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts verstrichen ist, Durchführen der ersten Operation auf dem ersten Speicherabschnitt.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen der Operation von: vor dem Durchführen der zweiten Operation auf dem zweiten Speicherabschnitt: Bestimmen einer jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll; und Berechnen der jeweiligen Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts basierend auf der jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll.
  • In einigen Ausführungsformen ist die jeweilige Betriebseigenschaft der zweiten Operation mindestens eine von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften des jeweiligen Speicherabschnitts.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen der Operation von: als Reaktion auf den Start der Durchführung der ersten Operation auf dem ersten Speicherabschnitt, Starten eines Zeitgebers des ersten Speicherabschnitts einschließlich einer jeweiligen Zeitspanne, um die erste Operation auf dem ersten Speicherabschnitt durchzuführen.
  • In einigen Ausführungsformen sind der erste Speicherabschnitt und der zweite Speicherabschnitt mit einer gleichen Stromquelle verbunden.
  • In einigen Ausführungsformen ist der Speicherabschnitt mindestens eines von: einer Ebene, einem Chip, einem Block und einer Seite.
  • In einer Ausführungsform gibt es ein Datenspeichersystem zum Implementieren unabhängiger Ebenenlesevorgänge, wobei das Datenspeichersystem aufweist: eine Speichersteuerung zum Durchführen von Operationen auf einer oder mehreren Speicherebenen zum Speichern von Daten, wobei die Speichersteuerung eingerichtet ist zum Durchführen der Schritte von: Empfangen einer Anforderung zum Durchführen einer ersten Operation auf einer ersten Ebene; Bestimmen, für eine zweite Ebene, ob ein Zeitgeber der zweiten Ebene mit einer jeweiligen Zeitspanne seit Start der zweiten Operation, die auf der zweiten Ebene durchgeführt wird, die von der ersten Ebene getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber der zweiten Ebene nicht verstrichen ist: Verzögern des Durchführens der ersten Operation auf der ersten Ebene, bis die jeweilige Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf der ersten Ebene, während die zweite Operation weiter auf der zweiten Ebene durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber der zweiten Ebene verstrichen ist, Durchführen der ersten Operation auf der ersten Ebene.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen der Operation von: vor dem Durchführen der zweiten Operation auf der zweiten Ebene: Bestimmen einer jeweiligen Betriebseigenschaft der zweiten Operation, die auf der zweiten Ebene durchgeführt werden soll; und Berechnen der jeweiligen Zeitspanne für den Zeitgeber der zweiten Ebene, basierend auf der jeweiligen Betriebseigenschaft der zweiten Operation, die auf der zweiten Ebene durchgeführt werden soll.
  • In einigen Ausführungsformen ist die jeweilige Betriebseigenschaft der zweiten Operation mindestens eine von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften der jeweiligen Ebene.
  • In einigen Ausführungsformen ist die Betriebseigenschaft eine Speichereigenschaft, die mindestens eines einschließt von: Programmierungs-/Löschzyklus, Datenaufbewahrung, Cross-Temperature, Systemtemperatur und Read-Disturb.
  • In einigen Ausführungsformen ist die Speichersteuerung ferner eingerichtet zum Durchführen der Operation von: als Reaktion auf den Start der Durchführung der ersten Operation auf der ersten Ebene, Starten eines Zeitgebers der ersten Ebene einschließlich einer jeweiligen Zeitspanne, um die erste Operation auf der ersten Ebene durchzuführen.
  • In einigen Ausführungsformen sind die erste Ebene und die zweite Ebene mit einer gleichen Stromquelle verbunden.
  • In einigen Ausführungsformen ist der Speicherabschnitt mindestens eines von: einer Ebene, einem Chip, einem Block und einer Seite.
  • Figurenliste
  • Die vorstehende Kurzdarstellung sowie die folgende detaillierte Beschreibung der Ausführungsformen der offenbarten Erfindung werden besser verstanden, wenn sie in Verbindung mit den beigefügten Zeichnungen eines Ausführungsbeispiels betrachtet werden. Es versteht sich jedoch, dass die Erfindung nicht auf die gezeigten präzisen Anordnungen und Mittel beschränkt ist.
  • In den Zeichnungen:
    • ist 1 ein Blockdiagramm, das eine Implementierung eines Datenspeichersystems gemäß einigen Ausführungsformen veranschaulicht;
    • ist 2 ein Zeitdiagramm, das eine asynchrone Erfassungsoperation gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht;
    • ist 3 ein Zeitdiagramm, das eine asynchrone Erfassungsoperation gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht;
    • ist 4 ein Zeitdiagramm, das die Verzögerungsverwaltung eines asynchronen unabhängigen Ebenenlesevorgangs (alPR) durch Zeitgeber der Systemebenen gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht;
    • ist 5 ein Zeitdiagramm, das eine Erfassungsoperation einer ersten Ebene gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht; und
    • 6 ist ein Flussdiagramm, das eine alPR-Verzögerungsverwaltung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG
  • Spannungsspitzen in der Spitzen-/Durchschnittsleistung und/oder eine erhöhte Bitfehlerrate (BER) beeinflussen die Zuverlässigkeit und Zweckmäßigkeit einer Speichervorrichtung negativ. Folglich sind Mechanismen wünschenswert, um unabhängige Ebenenlesevorgänge mit verbesserten Leistungsgeschwindigkeiten durchzuführen, bei gleichzeitigem Begrenzen der Bitfehlerrate und Spannungsspitzen in der Spitzenleistung oder Durchschnittsleistung.
  • Zahlreiche Details sind hierin beschrieben, um ein gründliches Verstehen der beispielhaften Ausführungsformen zu ermöglichen, die in den beigefügten Zeichnungen veranschaulicht sind. Allerdings können einige Ausführungsformen ohne zahlreiche spezifische Details praktiziert werden und der Schutzumfang der Ansprüche wird nur durch die Merkmale und Aspekte eingeschränkt, die in den Ansprüchen spezifisch genannt sind. Ferner wurden wohlbekannte Verfahren, Komponenten und Schaltungen nicht ausführlich beschrieben, um die klare Darstellung von sachdienlichen Aspekten der hier beschriebenen Ausführungsformen nicht unnötig zu beeinträchtigen.
  • Bezugnehmend auf 1 wird ein Blockdiagramm gezeigt, das eine Implementierung eines Datenspeichersystems 100 gemäß einigen Ausführungsformen veranschaulicht. Obgleich einige beispielhafte Merkmale veranschaulicht sind, wurden verschiedene andere Merkmale zum Zwecke der Kürze, und um nicht unnötig von den sachdienlichen Aspekten der hierin beschriebenen Ausführungsbeispielen abzulenken, nicht veranschaulicht. Zu diesem Zweck, als ein nicht begrenzendes Beispiel, schließt ein Datenspeichersystem 100 eine Speichervorrichtung 120 ein (hierin auch manchmal als eine Informationsspeichervorrichtung, eine Datenspeichervorrichtung, eine nichtflüchtige Speichervorrichtung oder eine Speichervorrichtung bezeichnet), die eine Speichersteuerung 124 und ein Speichermedium 130 einschließt, und in Verbindung mit einem Computersystem 110 (z. B. einem Hostsystem oder einem Hostcomputer) genutzt wird oder ein solches einschließt. In einigen Ausführungsformen ist das Speichermedium 130 eine einzelne Speichervorrichtung, während in anderen Ausführungsformen das Speichermedium 130 eine Vielzahl von Speichervorrichtungen einschließt. In einigen Ausführungsformen ist das Speichermedium 130 ein NAND-Speicher oder ein NOR-Speicher. In einigen Ausführungsformen schließt das Speichermedium 130 eine oder mehrere dreidimensionale (3D) Speichervorrichtungen ein. In einigen Ausführungsformen sind die Speicherzellen des Speichermediums 130 eingerichtet, um zwei, drei oder mehr Bits pro Speicherzelle zu speichern. Ferner ist in manchen Ausführungsformen die Speichersteuerung 124 eine Solid-State-Laufwerk-Steuerung (SSD-Steuerung). Andere Arten von Speichermedien können jedoch gemäß den Aspekten einer umfassenden Vielzahl von Ausführungsformen eingeschlossen werden (z. B. Phase Change Random-Access Memory (PCRAM), Resistive Random Access Memory (ReRAM), Spin-Transfer Torque Random-Access Memory (STT-RAM), Magnetoresistive Random-Access Memory (MRAM) usw.). In einigen Ausführungsformen schließt eine Speichervorrichtung einen oder mehrere Speicherchips, ein oder mehrere Speicherpakete, einen oder mehrere Speicherkanäle oder dergleichen ein. In einigen Ausführungsformen schließt das Datenspeichersystem 100 eine oder mehrere Speichervorrichtungen 120 ein.
  • Das Computersystem 110 ist mit der Speichersteuerung 124 über Datenverbindungen 101 gekoppelt. Jedoch schließt das Computersystem 110 in einigen Ausführungsformen die Speichersteuerung 124 oder einen Abschnitt der Speichersteuerung 124 als eine Komponente und/oder als ein Subsystem ein. Zum Beispiel werden in einigen Ausführungsformen einige oder alle der Funktionalitäten der Speichersteuerung 124 durch Software implementiert, die auf dem Computersystem 110 ausgeführt wird. Das Computersystem 110 kann jede beliebige geeignete Computervorrichtung sein, wie ein Computer, ein Laptop, ein Tablet, ein Netbook, ein Internetkiosk, ein persönlicher digitaler Assistent, ein Mobiltelefon, ein Smartphone, eine Spielekonsole, ein Computerserver oder eine beliebige andere Rechenvorrichtung. Das Computersystem 110 wird manchmal als ein Host, Hostsystem, Client, oder Clientsystem bezeichnet. In einigen Ausführungsformen ist das Computersystem 110 ein Serversystem, wie ein Serversystem in einem Datenzentrum. In einigen Ausführungsformen schließt das Computersystem 110 einen oder mehrere Prozessoren, eine oder mehrere Arten von Speicher, ein Display und/oder andere Benutzerschnittstellenkomponenten wie eine Tastatur, einen Touchscreen, eine Maus, ein Trackpad, eine digitale Kamera und/oder eine beliebige Anzahl von zusätzlichen E/A-Vorrichtungen ein, um Funktionalität zum Computersystem 110 hinzuzufügen. In einigen Ausführungsformen weist das Computersystem 110 kein Display und keine anderen Benutzerschnittstellenkomponenten auf.
  • Das Speichermedium 130 ist mit der Speichersteuerung 124 über Verbindungen 103 gekoppelt. Verbindungen 103 werden manchmal als Datenverbindungen bezeichnet, übertragen in der Regel jedoch zusätzlich zu Daten Befehle, und übertragen zusätzlich zu Datenwerten, die im Speichermedium 130 gespeichert werden und zusätzlich zu Datenwerten, die vom Speichermedium 130 gelesen werden, gegebenenfalls Metadaten, Fehlerkorrekturinformationen und/oder andere Informationen. In einigen Ausführungsformen sind die Speichersteuerung 124 und das Speichermedium 130 jedoch in derselben Vorrichtung (d. h. einer integrierten Vorrichtung) als Komponenten davon eingeschlossen. Ferner sind in einigen Ausführungsformen die Speichersteuerung 124 und das Speichermedium 130 in eine Hostvorrichtung (z. B. ein Computersystem 110) eingebettet, wie eine mobile Vorrichtung, ein Tablet, ein anderer Computer oder eine computergesteuerte Vorrichtung, und die hierin beschriebenen Verfahren werden zumindest teilweise durch die eingebettete Speichersteuerung durchgeführt. Das Speichermedium 130 kann eine beliebige Anzahl von (d. h. eine oder mehrere) Speichervorrichtungen 134-i einschließen, einschließlich, ohne Einschränkung, persistenter Speicher oder nichtflüchtiger Halbleiterspeichervorrichtungen, wie Flash-Speichervorrichtung(en). Zum Beispiel kann eine Speichervorrichtung bzw. können Speichervorrichtungen für Unternehmensspeicher eingerichtet sein, die für Anwendungen wie Cloud Computing, für Datenbankanwendungen, als primäre und/oder sekundäre Speicher oder zum Zwischenspeichern von gespeicherten (oder zu speichernden) Daten in sekundären Speichern, wie Festplattenlaufwerken, geeignet sind. Außerdem und/oder alternativ kann die Speichervorrichtung bzw. können die Speichervorrichtungen auch für Anwendungen mit relativ kleinerem Maßstab wie persönliche Laufwerke oder Festplattenersatz für PCs, Laptops und Tablets eingerichtet sein. In einigen Ausführungsformen ist jede Speichervorrichtung 134-i ein einzelner persistenter 3D-Speicher oder ein nichtflüchtiger Halbleiterspeicherchip, der mehrere Löschblöcke einschließt (z. B. Arrays 302, 3, manchmal einfach als „Blöcke“ bezeichnet), die die löschbaren Einheiten mit minimaler Größe in diesen Speichervorrichtungen sind. In einigen Ausführungsformen sind die Löschblöcke in einer jeweiligen Speichervorrichtung 134-i in zwei getrennten Ebenen angeordnet, genauer gesagt in n getrennten Ebenen, wobei n eine Ganzzahl größer als Eins ist. Zum Beispiel schließt in einigen Ausführungsformen jede Ebene der jeweiligen Speichervorrichtung 134-i N Blöcke ein, wobei N eine Ganzzahl größer als 1 ist, und in der Regel größer als 15, 63 oder 99 ist.
  • Speichervorrichtungen 134-i des Speichermediums 130 schließen adressierbare und individuell auswählbare Blöcke ein, wie den auswählbaren Abschnitt 131 des Speichermediums 130 (hierin auch als ausgewählter Abschnitt 131 bezeichnet). In einigen Ausführungsformen sind die individuell auswählbaren Blöcke (manchmal Löschblöcke genannt) die löschbaren Einheiten mit minimaler Größe in einer Speichervorrichtung. Mit anderen Worten: jeder Block enthält die minimale Anzahl von Speicherzellen, die gleichzeitig gelöscht werden können. Jeder Block wird in der Regel weiter unterteilt in eine Vielzahl von Seiten und/oder Wortleitungen, wobei jede Seite oder Wortleitung in der Regel eine Instanz des kleinsten individuell zugänglichen (lesbaren) Abschnitts in einem Block ist. In einigen Ausführungsformen (z. B. unter Verwendung einiger Arten von Flash-Speichern) ist die kleinste individuell zugängliche Einheit eines Datensatzes jedoch ein Sektor, der eine Untereinheit einer Seite ist. Das heißt, ein Block schließt eine Vielzahl von Seiten ein, wobei jede Seite eine Vielzahl von Sektoren enthält, und jeder Sektor die minimale Dateneinheit zum Schreiben von Daten auf die Speichervorrichtung oder zum Lesen von Daten von der Speichervorrichtung ist.
  • In einigen Ausführungsformen schließt die Speichersteuerung 124 ein Verwaltungsmodul 121-1, eine Host-Schnittstelle 129, eine Speichermediumschnittstelle 128 und ein zusätzliches Modul bzw. zusätzliche Module 125 ein. Die Speichersteuerung 124 kann verschiedene zusätzliche Merkmale einschließen, die aus Gründen der Kürze, und damit nicht von sachdienlichen Merkmalen der hierin offenbarten Ausführungsbeispiele abgelenkt wird, nicht veranschaulicht wurden, und eine verschiedene Anordnung von Merkmalen kann möglich sein. Die Host-Schnittstelle 129 stellt eine Schnittstelle zu dem Computersystem 110 über Datenverbindungen 101 bereit. Die Host-Schnittstelle 129 schließt in der Regel einen Eingangspuffer und einen Ausgangspuffer ein, die nicht gezeigt werden. In ähnlicher Weise stellt die Speichermediumschnittstelle 128 eine Schnittstelle zu dem Speichermedium 130 über die Verbindungen 103 bereit. In einigen Ausführungsformen schließt die Speichermediumschnittstelle 128 Lese- und Schreibschaltungen ein, einschließlich Schaltungen, die in der Lage sind, Lesesignale an das Speichermedium 130 (z. B. Lesen von Schwellenspannungen für NAND-Speicher) bereitzustellen.
  • In einigen Ausführungsformen schließt das Verwaltungsmodul 121-1 eine oder mehrere Verarbeitungseinheiten 122-1 (hierin gelegentlich als CPUs, Prozessoren oder Hardware-Prozessoren bezeichnet und manchmal unter Verwendung von Mikroprozessoren, Mikrosteuerungen oder dergleichen implementiert), die eingerichtet sind zum Ausführen von Anweisungen in einem oder mehreren Programmen (z. B. im Verwaltungsmodul 121-1). In einigen Ausführungsformen teilen sich eine oder mehrere Komponenten eine oder mehrere CPUs 122-1 im Rahmen der Funktion der Speichersteuerung 124 und in einigen Fällen auch darüber hinausgehend. Das Verwaltungsmodul 121-1 ist mit der Host-Schnittstelle 129, einem zusätzlichen Modul bzw. zusätzlichen Modulen 125 und der Speichermediumschnittstelle 128 gekoppelt, um den Betrieb dieser Komponenten zu koordinieren. In einigen Ausführungsformen sind ein oder mehrere Module des Verwaltungsmoduls 121-1 im Verwaltungsmodul 121-2 des Computersystems 110 implementiert. In einigen Ausführungsformen sind ein oder mehrere Prozessoren des Computersystems 110 (nicht gezeigt) eingerichtet, um Anweisungen in einem oder mehreren Programmen (z. B. im Verwaltungsmodul 121-2) auszuführen. Das Verwaltungsmodul 121-2 ist mit der Speichervorrichtung 120 gekoppelt, um den Betrieb der Speichervorrichtung 120 zu verwalten.
  • In einigen Ausführungsformen schließt ein zusätzliches Modul bzw. schließen zusätzliche Module 125 ein Fehlerüberwachungsmodul ein, das bereitgestellt ist, um die Anzahl der nicht korrigierbaren Fehler zu begrenzen, die versehentlich bei Schreibvorgängen in den Speicher oder bei Lesevorgängen von dem Speicher in die Daten eingeführt werden. In einigen Ausführungsformen wird das Fehlerüberwachungsmodul in der Software durch einen oder mehrere CPUs 122-1 des Verwaltungsmoduls 121-1 ausgeführt, und in anderen Ausführungsformen wird das Fehlersteuerungsmodul vollständig oder teilweise mithilfe einer besonderen Schaltung implementiert, um Datenkodierungs- und Datendekodierungsfunktionen durchzuführen. Zu diesem Zweck schließt das Fehlerüberwachungsmodul in einigen Ausführungsformen einen Encoder und einen Decoder ein. Der Encoder kodiert Daten durch Anwenden eines Fehlerüberwachungscodes, um ein Codewort zu erzeugen, das nachfolgend in dem Speichermedium 130 gespeichert wird.
  • Wenn die kodierten Daten (z. B. ein oder mehrere Codewörter) aus dem Speichermedium 130 gelesen werden, wendet der Decoder einen Dekodierungsprozess auf die kodierten Daten an, um die Daten wiederherzustellen und die Fehler in den wiederhergestellten Daten innerhalb der Fehlerkorrekturfähigkeit des Fehlerüberwachungscodes zu korrigieren. Der Fachmann erkennt, dass verschiedene Fehlerüberwachungscodes unterschiedliche Fehlererfassungs- und Fehlerkorrekturfähigkeiten aufweisen und dass bestimmte Codes für verschiedene Anwendungen aus Gründen ausgewählt werden, die über den Schutzumfang dieser Offenbarung hinausgehen. Somit wird eine vollständige Übersicht über die verschiedenen Arten von Fehlerüberwachungscodes hierin nicht bereitgestellt. Darüber hinaus erkennt der Fachmann, dass jede Art oder Familie von Fehlerüberwachungscodes Kodierungs- und Dekodierungsalgorithmen aufweisen kann, die speziell für die Art oder die Familie des Fehlerüberwachungscodes gelten. Andererseits können einige Algorithmen zumindest bis zu einem gewissen Ausmaß für das Dekodieren einer Anzahl von verschiedenen Arten oder Familien von Fehlerüberwachungscodes verwendet werden. Somit wird zum Zwecke der Kürze eine ausführliche Beschreibung der verschiedenen Arten der Kodierungs- und Dekodierungsalgorithmen, die allgemein verfügbar und dem Fachmann bekannt sind, hierin nicht bereitgestellt.
  • Die Speichersteuerung 124 ist eingerichtet, um Erfassungsoperationen durchzuführen (z. B. Leseoperationen oder hierin auch als unabhängige Ebenenlesevorgänge (IPR) bezeichnet). Eine Leseoperation wird gestartet, wenn das Computersystem (Host) 110 einen oder mehrere Host-Lesebefehle (z. B. über Datenverbindungen 101) an die Speichersteuerung 124 sendet und Daten von einer oder mehreren Ebenen 134-i des Speichermediums 130 anfordert. Die Speichersteuerung 124 sendet ein oder mehrere Lesezugriffsbefehle an das Speichermedium 130 über die Speichermediumschnittstelle 128, um unverarbeitete Lesedaten gemäß Speicherorten (Adressen auf bestimmten Ebenen) zu erhalten, die durch die eine oder mehreren Host-Lesebefehle festgelegt werden. Die Speichermediumschnittstelle 128 liefert die unverarbeiteten Lesedaten (z. B. ein oder mehrere Codewörter aufweisend) an den Decoder. Wenn die Dekodierung erfolgreich ist, werden die dekodierten Daten an einen Ausgangspuffer geliefert, in dem die dekodierten Daten dem Computersystem 110 zur Verfügung gestellt werden. In einigen Ausführungsformen kann, wenn die Dekodierung nicht erfolgreich ist, die Speichersteuerung 120 auf eine Anzahl von Abhilfemaßnahmen zurückgreifen oder eine Anzeige eines unauflösbaren Fehlerzustands bereitstellen.
  • Das Speichermedium 130 kann eingerichtet werden, um Daten von einer oder mehreren Zellen auf einer oder mehreren Ebenen 134-i zu lesen. Zum Beispiel kann das Speichermedium 130 eine Erfassungsverstärkerschaltung einschließen, die mit einer Bitleitung eines Speicherarrays gekoppelt ist, das wiederum mit einer zugehörigen Speicherzelle einer Ebene 134-i gekoppelt ist. Während eines Abschnitts der Leseoperation kann elektrischer Strom durch die Speicherzelle übertragen werden, um eine Erfassungsoperation durch die Erfassungsverstärkerschaltung zum Lesen von Daten von der Speicherzelle zu ermöglichen. Beispielsweise kann die Erfassungsverstärkerschaltung so eingerichtet werden, dass sie die Strommenge erfasst, die durch die Bitleitung zu der Speicherzelle geleitet wird, um einen Zustand der Speicherzelle (z. B. On-Zelle oder Off-Zelle) zu identifizieren und wiederum ein Datenbit mit einem bestimmten Logikpegel (z. B. Logikpegel 0 oder ein Logikpegel 1) zu identifizieren, der auf der Speicherzelle gespeichert ist. Während der elektrische Strom durch eine Erfassungsoperation übertragen wird, wird auf der entsprechenden Ebene 134-i elektrisches Rauschen erzeugt. Dieses elektrische Rauschen kann andere Erfassungsoperationen auf anderen Ebenen beeinflussen. Implementierungen zur Minderung der Auswirkungen dieses elektrischen Rauschens auf andere Erfassungsoperationen auf anderen Ebenen werden nachfolgend näher beschrieben.
  • 2 zeigt ein Zeitdiagramm 200, das asynchrone Erfassungsoperationen auf den jeweiligen Ebenen 134-0, 134-1 (in den Figuren auch jeweils als Ebenen PB0 und PB1 bezeichnet) des Speichermediums 130 veranschaulicht, die auf dem gleichen Chip angeordnet sind. Das Zeitdiagramm 200 schließt eine horizontale Achse ein, die die Zeit 210 darstellt. Die Erfassungsoperations-Zeiträume 211, 213 für die jeweiligen Ebenen PB0, PB1 werden gezeigt und stellen den Zeitraum vom Start der Erfassungsoperation bis zum Abschluss der Erfassungsoperation auf den jeweiligen Ebenen PB0, PB1 dar. Das Zeitdiagramm 200 schließt eine vertikale Achse 214, 216 ein, die einen belegten/nicht belegten Zustand für jede der jeweiligen Ebenen PB0, PB1 darstellt. Der Erfassungsoperations-Zeitraum 211 für die Ebene PB0 kann einen verrauschten Zeitraum 202 und empfindliche Zeiträume 204, 206 einschließen. Der Erfassungsoperations-Zeitraum 213 für die Ebene PB1 kann einen verrauschten Zeitraum 208 und empfindliche Zeiträume 210, 212 einschließen.
  • Während eines verrauschten Zeitraums können die Ebenen PB0, PB1 ein elektromagnetisches Signal erzeugen, das elektromagnetisches Rauschen über eine gemeinsame Stromquelle oder Stromleitung erzeugt, die die Ebenen PB0, PB1 verbindet, das die Operationen der anderen jeweiligen Ebene stören und eine Erhöhung der BER verursachen kann, wenn der verrauschte Zeitraum einer Ebene mit einem empfindlichen Zeitraum einer anderen Ebene überlappt. Zum Beispiel, wie in 2 gezeigt, kann die Ebene PB1 ein elektromagnetisches Signal während eines verrauschten Zeitraums 208 erzeugen, der mit dem empfindlichen Zeitraum 206 der Ebene PB0 überlappt. In Folge des verrauschten elektromagnetischen Signals, das während des empfindlichen Zeitraums 206 für die Ebene PB0 übertragen wird, würde sich die BER für die Ebene PB0 erhöhen und so eine unerwünschte Verringerung der Leistung des Datenspeichersystems 100 verursachen.
  • Das elektromagnetische Signal kann auch zu einer unerwünschten Spannungsspitze der Spitzenleistung oder Durchschnittsleistung führen, wenn das elektromagnetische Signal von der Ebene PB0 übertragen wird, während ein ähnliches elektromagnetisches Signal auch von einer getrennten Ebene, wie der Ebene PB1, übertragen wird. Dieses Szenario kann auftreten, wenn verrauschte Zeiträume überlappen, beispielsweise wenn der verrauschte Zeitraum 202 der Erfassungsoperation für die Ebene PB0 mit dem verrauschten Zeitraum 208 der Erfassungsoperation für die Ebene PB1 überlappt.
  • 3 zeigt ein Zeitdiagramm 300, das einen synchronen IPR auf den jeweiligen Ebenen PB0, PB1 des Speichermediums 130 veranschaulicht. 3 ist im Wesentlichen ähnlich zu 2, mit der Ausnahme, dass die Erfassungsoperations-Zeiträume 211, 213 synchron sind. Synchroner Betrieb kann das Synchronisieren der IPRs basierend auf einem unabhängigen Taktzyklus einschließen, der im Wesentlichen konsistent ist über die Lebensdauer des Datenspeichersystems 100, ohne menschliches Eingreifen. In einigen Ausführungsformen sind die Erfassungsoperations-Zeiträume 211, 213 synchron, wenn die Erfassungsoperations-Zeiträume 211 und 213 basierend auf dem gleichen Taktzyklus der Reihe nach gestartet und abgeschlossen werden, so dass der Erfassungsoperations-Zeitraum 213 erst dann gestartet wird, wenn der Erfassungsoperations-Zeitraum 211 abgeschlossen ist. Wenn die Erfassungsoperations-Zeiträume synchron sind, überlappen die verrauschten Zeiträume 202, 208 nicht mit den empfindlichen Zeiträumen 204, 206, 210 und 212. Daher können die BER und Spannungsspitzen in der Spitzenleistung/Durchschnittsleistung minimiert werden. Jedoch kann, wie bereits hierin erwähnt, die Leistungsgeschwindigkeit für synchrone Erfassungsoperationen im Vergleich zum asynchronen Erfassen unerwünscht geringer sein.
  • 4 zeigt ein Zeitdiagramm 400, das eine alPR-Verzögerungsverwaltung durch die Verwendung von Ebenenzeitgebern zum Verzögern und Versetzen der Erfassungsoperationen für die Ebenen PB0, PB1 veranschaulicht. 4 ist im Wesentlichen ähnlich zu den 2 bis 3, mit Ausnahme der Erfassungsoperations-Zeiträume 211, 213, die asynchron und versetzt sind, so dass es, während es eine Überlappung zwischen den Erfassungsoperations-Zeiträumen 211, 213, gibt, keine Überlappung zwischen den verrauschten Zeiträumen und den empfindlichen Zeiträumen für die zwei unterschiedlichen Ebenen PB0, PB1 gibt.
  • Um diese verbesserte asynchrone Funktionalität zu implementieren, kann die Speichersteuerung 124 in einigen Ausführungsformen Ebenenzeitgeber für jede Ebene PB0, PB1 einschließen. So kann beispielsweise die Speichersteuerung 124 in einigen Ausführungsformen als Reaktion auf das Empfangen einer Anforderung, eine Erfassungsoperation auf der Ebene PB0 durchzuführen, zusätzlich zum Starten einer entsprechenden Erfassungsoperation, einen Ebenenzeitgeber für die Ebene PB0 starten, der anzeigt, wann ein verrauschter Zeitraum 202 und/oder ein empfindlicher Zeitraum 204, 206 auftreten kann. In einigen Ausführungsformen kann zum Starten des Ebenenzeitgebers für PB0 die Speichersteuerung 124 eine Betriebseigenschaft (z. B. Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungseigenschaften) in Verbindung mit der Anfangsoperation, die auf der Ebene PB0 durchgeführt werden soll, bestimmen. Die Speichersteuerung 124 kann dann eine Zeitspanne für den Ebenenzeitgeber basierend auf der Betriebseigenschaft berechnen.
  • Als Reaktion auf das Empfangen einer separaten Anforderung zum Durchführen einer Erfassungsoperation auf der Ebene PB1 kann die Speichersteuerung 124 bestimmen, ob eine weitere Erfassungsoperation bereits erfolgt. Dies kann durch eine Anzeige von dem Zeitgeber oder den Erfassungsverstärkern bestimmt werden. Wenn eine Erfassungsoperation bereits erfolgt, wie in diesem Beispiel beschrieben, kann die Speichersteuerung 124 die Erfassungsoperation für die Ebene PB1 verzögern, bis der Ebenenzeitgeber für die Ebene PB0 verstrichen ist. Nachdem der Zeitgeber für Ebene PB0 verstrichen ist, kann die Speichersteuerung 124 die Erfassungsoperation für Ebene PB1 starten. Infolge der asynchronen Verzögerung unter Verwendung von Ebenenzeitgebern kann der verrauschte Zeitraum 208 für die Ebene PB1 nach dem empfindlichen Zeitraum 206 auftreten, um Systemleistungsprobleme (z. B. BER) wie hierin beschrieben zu minimieren, während sie auch früher als in einer synchronen Operation auftreten.
  • Der Zeitraum für die Ebenenzeitgeber kann variabel sein und auf einer jeweiligen Betriebseigenschaft basieren von mindestens einer von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungseigenschaften der jeweiligen Ebene. Beispiele der Speichereigenschaften können Programmierungs-/Löschzyklus, Datenaufbewahrung, Cross-Temperature, Systemtemperatur und Read-Disturb einschließen. Programmierungs-/Löschzyklus kann auf eine Sequenz von Ereignissen Bezug nehmen, in der Daten auf eine Speicherzelle geschrieben, dann gelöscht und erneut darauf geschrieben werden. Datenaufbewahrung kann auf eine oder mehrere Operationen Bezug nehmen, die zum Aufbewahren von Daten, die auf einem oder mehreren Speicherzellen gespeichert sind, durchgeführt werden. Cross-Temperature (d. h. X-temp) kann auf einen Temperaturbereich oder eine Temperaturschwankung zwischen der Programmierung von Daten auf einer Speicherzelle und dem Lesevorgang von Daten auf der Speicherzelle Bezug nehmen. Die Systemtemperatur kann auf eine Temperatur des Computersystems 110 während einer Erfassungsoperation Bezug nehmen. Read-Disturb kann auf die Änderung von Daten, die in einer Speicherzelle gespeichert sind, Bezug nehmen, als Ergebnis einer Leseoperation, die auf einer nahegelegenen Speicherzelle durchgeführt wird. Beispiele von Seitenkombinationseigenschaften können Single-Level-Cell-Seiten (SLC-Seiten) oder untere MLC-Seiten, mittlere MLC-Seiten und obere MLC-Seiten einschließen. Beispiele von Erfassungseigenschaften können einen ersten Lesevorgang, einen normalen Lesevorgang, einen Vreak Spike und einen Data Look-Ahead einschließen. Durch Variieren des Zeitraums für die Ebenenzeitgeber kann das Datenspeichersystem 100 unabhängige Erfassungsoperationen anpassen, um die Geschwindigkeit zu maximieren und gleichzeitig unerwünschte Überlappungen von verrauschten Zeiträumen und/oder empfindlichen Zeiträumen zwischen den jeweiligen Ebenen zu verringern.
  • 5 zeigt ein Zeitdiagramm 500, das die Zeit für eine Erfassungsoperation auf der Ebene PB0 und die Zeit des entsprechenden Ebenenzeitgebers für die Ebene PB0 veranschaulicht. Die Darstellung der Erfassungsoperation auf der Ebene PB0 ist im Wesentlichen ähnlich zu der Darstellung der Erfassungsoperation auf der Ebene PB0 in den 2 bis 4. Wie in 5 gezeigt, kann die Ebene PB0 auch einen Zeitgeber 508 aufweisen. In einigen Ausführungsformen kann der Zeitgeber 508 ein Countdown-Zeitgeber sein. In einigen Ausführungsformen kann der Zeitgeber 508 eine Softwareimplementierung sein. In anderen Ausführungsformen kann der Zeitgeber 508 eine Hardwareimplementierung sein. In einer Ausführungsform kann der Zeitgeber 508 einen unbegrenzten Zeitgeberwert 512 und einen begrenzten Zeitgeberwert 514 aufweisen. Während der Zeitgeber 508 einen begrenzten Zeitgeberwert 514 aufweist, kann eine Erfassungsoperation auf einer anderen Ebene, wie Ebene PB1, verzögert werden, bis der Zeitgeber 508 zu dem unbegrenzten Zeitgeberwert 512 übergeht. Während der Zeitgeber 508 einen unbegrenzten Zeitgeberwert 512 aufweist, kann eine Erfassungsoperation auf der Ebene PB1 durchgeführt werden. Mit anderen Worten, vor dem Ausgeben einer Erfassung für eine Ebene, wie die Ebene PB1, kann der Zeitgeber 508 für die Ebene PB0 von der Speichersteuerung 124 überprüft werden, um zu bestimmen, ob die Erfassungsoperation verzögert oder die Erfassungsoperation durchgeführt werden soll.
  • 6 veranschaulicht eine Flussdiagramm-Darstellung eines Verfahrens 600 für eine alPR-Verzögerungsverwaltung gemäß einigen Ausführungsformen. In einer Ausführungsform schließt das Verfahren 600 der alPR-Verzögerungsverwaltung ein Verfahren zum Implementieren unabhängiger Ebenenlesevorgänge auf einer Speichervorrichtung (z. B. Datenspeichersystem 110) ein, das eine Vielzahl von Speicherebenen zum Speichern von Daten und ein Steuerungssystem (z. B. Speichersteuerung 124) zum Durchführen von Operationen auf den Speicherebenen, Verbessern von Leistungsgeschwindigkeiten und Verringern der BER und Spannungsspitzen in der Spitzen-/Durchschnittsleistung einschließt. Dies wird nun detaillierter beschrieben.
  • In einigen Ausführungsformen schließt das Verfahren 600 auf dem Steuerungssystem das anfängliche Empfangen (602) einer Anforderung zum Starten einer ersten Operation auf einer ersten Ebene (z. B. 2 bis 4, Ebene (PB1)) ein. Zum Beispiel kann, wie in 6 gezeigt, eine Anforderung zum Starten einer alPR-Erfassungsoperation auf der Ebene PB1 empfangen werden. In einigen Ausführungsformen kann die erste Operation eine Erfassungsoperation sein, wie hierin beschrieben.
  • Das Verfahren 600 kann das Bestimmen (604) für eine zweite Ebene (z. B. 2 bis 4, zweite Ebene (PB1)) einschließen, ob ein Zeitgeber der zweiten Ebene mit einer jeweiligen vorbestimmten Zeitspanne seit Start einer zweiten Operation, die auf der zweiten Ebene durchgeführt wird, verstrichen ist. In einer Ausführungsform basiert die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene auf einer jeweiligen Eigenschaft der zweiten Operation, die auf der zweiten Ebene durchgeführt wird, wie hierin erläutert.
  • Das Verfahren 600 kann als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene nicht verstrichen ist, das Durchführen der ersten Operation auf der ersten Ebene verzögern (606), bis die jeweilige vorbestimmte Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist. Das Verfahren 600 kann als Reaktion auf das Verzögern des Durchführens der ersten Operation auf der ersten Ebene, bis die jeweilige vorbestimmte Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, oder als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene bereits verstrichen ist, das Durchführen (608) der ersten Operation auf der ersten Ebene, während die zweite Operation weiter auf der zweiten Ebene durchgeführt wird, einschließen. Als ein Beispiel für das Verzögern (606) und Durchführen (608) der Schritte, in der Anpassung von 2 bis 4 gezeigt, wird die Ebene PB1 vor dem Durchführen der Erfassungsoperation verzögert. Infolgedessen überlappt der verrauschte Zeitraum 208 der Ebene PB1 nicht mit dem empfindlichen Zeitraum 206 der Ebene PB0. Dies steht im Gegensatz zu 2, welche die unabhängige Ebenenlesevorgangs-Erfassungsoperation vor dem Implementieren des Verzögerns zeigt. In 2 überlappt der verrauschte Zeitraum 208 der Ebene PB1 mit dem empfindlichen Zeitraum 206 der Ebene PB0. Infolge des Vermeidens der Überlappung zwischen den verrauschten und empfindlichen Zeiträumen kann das Verfahren 600 die Leistungsgeschwindigkeiten verbessern und die BER und Spannungsspitzen in der Spitzen-/Durchschnittsleistung verringern.
  • Das Verfahren 600 kann, als Reaktion auf eine Bestimmung, dass die jeweilige vorbestimmte Zeitspanne für den Zeitgeber der zweiten Ebene verstrichen ist, das Starten (610) der Zeit für die erste Ebene für die erste Operation auf der ersten Ebene einschließen.
  • Das Verfahren 600 kann, wenn der Zeitgeber der ersten Ebene verstrichen ist, das Beenden (612) der ersten Operation auf der ersten Ebene einschließen.
  • In einigen Ausführungsformen kann das Verfahren 600 auf drei oder mehr Ebenen implementiert werden. In einigen Ausführungsformen kann das Verfahren 600 auf N Ebenen implementiert werden, wobei N eine Ganzzahl größer als Eins ist. In einigen Ausführungsformen kann das Verfahren 600 anstatt auf Ebenen implementiert zu werden, auf einem oder mehreren Blöcken, einer oder mehreren Seiten, einem oder mehreren Chips und/oder einer oder mehreren anderen Speichervorrichtungen oder Speicherabschnitten davon implementiert werden.
  • In einer Ausführungsform schließt das System einen oder mehrere Computer mit einem oder mehreren Prozessoren und Speicher (z. B. eine oder mehrere nichtflüchtige Speichervorrichtungen) ein. In einigen Ausführungsformen speichert der Speicher oder das computerlesbare Speichermedium des Speichers Programme, Module und Datenstrukturen oder eine Teilmenge davon, damit ein Prozessor die verschiedenen hierin offenbarten Systeme und Verfahren steuern und ausführen kann. In einer Ausführungsform, ein nichtflüchtiges, computerlesbares Speichermedium, auf dem computerausführbare Anweisungen gespeichert sind, die, wenn sie von einem Prozessor ausgeführt werden, eines oder mehrere der hierin offenbarten Verfahren durchführen.
  • Der Fachmann erkennt, dass an den vorstehend gezeigten und beschriebenen Ausführungsbeispielen Änderungen vorgenommen werden könnten, ohne von deren umfassenden erfinderischen Konzepten abzuweichen. Es versteht sich aus diesem Grund, dass diese Erfindung nicht auf die gezeigten und beschriebenen Ausführungsbeispiele beschränkt ist, sondern dass Modifikationen innerhalb des Geistes und Schutzumfangs der vorliegenden Erfindung, wie durch die Ansprüche definiert, abgedeckt sein sollen. So können beispielsweise spezifische Merkmale der Ausführungsbeispiele Teil der beanspruchten Erfindung sein oder nicht und verschiedene Merkmale der offenbarten Ausführungsformen kombiniert werden. Sofern hierin nicht ausdrücklich festgelegt, sind die Begriffe „ein/eine“ und „der/die/das“ nicht auf ein Element beschränkt, sondern sollten vielmehr mit der Bedeutung „mindestens ein“ gelesen werden.
  • Es ist zu verstehen, dass mindestens einige der Figuren und Beschreibungen der Erfindung vereinfacht wurden, um den Fokus auf Elemente zu lenken, die für ein klares Verständnis der Erfindung relevant sind, während zum Zwecke der Klarheit andere Elemente ausgelassen wurden, die, wie ein Durchschnittsfachmann erkennt, auch einen Teil der Erfindung aufweisen können. Da jedoch solche Elemente im Stand der Technik gut bekannt sind und da sie nicht notwendigerweise ein besseres Verständnis der Erfindung ermöglichen, wird eine Beschreibung solcher Elemente hierin nicht bereitgestellt.
  • Soweit sich die Verfahren der vorliegenden Erfindung nicht auf die hierin dargestellte besondere Reihenfolge der Schritte stützen, sollte die besondere Reihenfolge der Schritte ferner nicht als Beschränkung der Ansprüche ausgelegt werden. Alle Ansprüche, die sich auf die Verfahren der vorliegenden Erfindung beziehen, sollten nicht auf die Durchführung ihrer Schritte in der schriftlichen Reihenfolge beschränkt werden, und ein Fachmann kann leicht erkennen, dass die Schritte variiert werden können und dennoch im Geist und Schutzumfang der vorliegenden Erfindung bleiben.

Claims (20)

  1. Verfahren zum Berechnen eines Zeitgebers auf einer Speichervorrichtung einschließlich einer Vielzahl von Speicherabschnitten zum Speichern von Daten und einer Speichersteuerung zum Durchführen von Operationen auf den Speicherabschnitten, wobei das Verfahren aufweist: Empfangen einer Anforderung zum Durchführen einer Anfangsoperation auf einem Speicherabschnitt; Bestimmen einer Betriebseigenschaft, die mit der Anfangsoperation in Verbindung steht, die auf dem Speicherabschnitt durchgeführt werden soll; und Berechnen einer Zeitspanne für einen Zeitgeber des Speicherabschnitts basierend auf der Betriebseigenschaft zum Start der Anfangsoperation auf dem Speicherabschnitt, wobei die Durchführung einer nachfolgenden Operation für einen anderen Speicherabschnitt verzögert wird, bis die Zeitspanne für den Zeitgeber des Speicherabschnitts seit Start der Operation auf dem Speicherabschnitt verstrichen ist.
  2. Verfahren gemäß Anspruch 1, wobei die Betriebseigenschaft mindestens eine einschließt von: einer Speichereigenschaft, einer Seitenkombinationseigenschaft und einer Erfassungseigenschaft.
  3. Verfahren gemäß Anspruch 1, wobei die Betriebseigenschaft eine Speichereigenschaft ist, die mindestens eines einschließt von: Programmierungs-/Löschzyklus, Datenaufbewahrung, Cross-Temperature, Systemtemperatur und Read-Disturb.
  4. Verfahren gemäß Anspruch 1, wobei die Betriebseigenschaft eine Seitenkombinationseigenschaft ist, die mindestens eine einschließt von: einer Single-Level-Cell-Seite, einer unteren MLC-Seite (Multi-Level-Cell-Seite), einer mittleren MLC-Seite und einer oberen MLC-Seite.
  5. Verfahren gemäß Anspruch 1, wobei die Betriebseigenschaft eine Erfassungseigenschaft ist, die mindestens eines einschließt von: erster Lesevorgang, normaler Lesevorgang, Vreak Spike und Data Look-Ahead.
  6. Verfahren gemäß Anspruch 1, wobei ein erster Zeitraum für die Durchführung der Anfangsoperation auf dem Speicherabschnitt mit einem zweiten Zeitraum für die Durchführung einer nachfolgenden Operation für einen anderen Speicherabschnitt überlappt.
  7. Verfahren gemäß Anspruch 1, wobei der Speicherabschnitt mindestens eines ist von: einer Ebene, einem Chip, einem Block, einer Seite.
  8. Speichersteuerung zum Durchführen des Implementierens unabhängiger Speicherabschnitt-Leseoperationen auf einem oder mehreren Speicherabschnitten zum Speichern von Daten, wobei die Speichersteuerung eingerichtet ist zum Durchführen der Operationen: Empfangen einer Anforderung zum Durchführen einer ersten Operation auf einem ersten Speicherabschnitt; Bestimmen, für einen zweiten Speicherabschnitt, ob ein Zeitgeber eines zweiten Speicherabschnitts mit einer jeweiligen Zeitspanne seit dem Start einer zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt wird, der von dem ersten Speicherabschnitt getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts nicht verstrichen ist: Verzögern des Durchführens der ersten Operation auf dem ersten Speicherabschnitt, bis die jeweilige Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf dem ersten Speicherabschnitt, während die zweite Operation weiter auf dem zweiten Speicherabschnitt durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts verstrichen ist, Durchführen der ersten Operation auf dem ersten Speicherabschnitt.
  9. Speichersteuerung gemäß Anspruch 8, wobei die Speichersteuerung ferner eingerichtet ist zum Durchführen der Operation von: vor dem Durchführen der zweiten Operation auf dem zweiten Speicherabschnitt: Bestimmen einer jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll; und Berechnen der jeweiligen Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts basierend auf der jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll.
  10. Speichersteuerung gemäß Anspruch 9, wobei die jeweilige Betriebseigenschaft der zweiten Operation mindestens eine ist von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften des jeweiligen Speicherabschnitts.
  11. Speichersteuerung gemäß Anspruch 8, wobei die Speichersteuerung ferner eingerichtet ist zum Durchführen der Operation von: als Reaktion auf die Durchführung der ersten Operation auf dem ersten Speicherabschnitt, Starten eines Zeitgebers des ersten Speicherabschnitts mit einer jeweiligen Zeitspanne zum Durchführen der ersten Operation auf dem ersten Speicherabschnitt.
  12. Speichersteuerung gemäß Anspruch 8, wobei der erste Speicherabschnitt und der zweite Speicherabschnitt mit einer gleichen Stromquelle verbunden sind.
  13. Speichersteuerung gemäß Anspruch 8, wobei der erste Speicherabschnitt und der zweite Speicherabschnitt mindestens eines sind von: einer Ebene, einem Chip, einem Block und einer Seite.
  14. Datenspeichersystem zum Implementieren unabhängiger Speicherabschnitts-Lesevorgänge, wobei das Datenspeichersystem aufweist: eine Speichersteuerung zum Durchführen von Operationen auf einem oder mehreren Speicherabschnitten zum Speichern von Daten, wobei die Speichersteuerung eingerichtet ist zum Durchführen der Schritte von: Empfangen einer Anforderung zum Durchführen einer ersten Operation auf einem ersten Speicherabschnitt; Bestimmen, für einen zweiten Speicherabschnitt, ob ein Zeitgeber eines zweiten Speicherabschnitts mit einer jeweiligen Zeitspanne seit dem Start einer zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt wird, der von dem ersten Speicherabschnitt getrennt und verschieden ist, verstrichen ist; als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts nicht verstrichen ist: Verzögern des Durchführens der ersten Operation auf dem ersten Speicherabschnitt, bis die jeweilige Zeitspanne, die mit dem Start der zweiten Operation in Verbindung steht, die auf der zweiten Ebene durchgeführt wird, verstrichen ist, und nach Verzögern der Durchführung, Durchführen der ersten Operation auf dem ersten Speicherabschnitt, während die zweite Operation weiter auf dem zweiten Speicherabschnitt durchgeführt wird; und als Reaktion auf eine Bestimmung, dass die jeweilige Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts verstrichen ist, Durchführen der ersten Operation auf dem ersten Speicherabschnitt.
  15. Datenspeichersystem gemäß Anspruch 14, wobei die Speichersteuerung ferner eingerichtet ist zum Durchführen der Operation von: vor dem Durchführen der zweiten Operation auf dem zweiten Speicherabschnitt: Bestimmen einer jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll; und Berechnen der jeweiligen Zeitspanne für den Zeitgeber des zweiten Speicherabschnitts basierend auf der jeweiligen Betriebseigenschaft der zweiten Operation, die auf dem zweiten Speicherabschnitt durchgeführt werden soll.
  16. Datenspeichersystem gemäß Anspruch 15, wobei die jeweilige Betriebseigenschaft der zweiten Operation mindestens eine ist von: Speichereigenschaften, Seitenkombinationseigenschaften und Erfassungsoperationseigenschaften des jeweiligen Speicherabschnitts.
  17. Datenspeichersystem gemäß Anspruch 16, wobei die Betriebseigenschaft eine Speichereigenschaft ist, die mindestens eines einschließt von: Programmierungs-/Löschzyklus, Datenaufbewahrung, Cross-Temperature, Systemtemperatur und Read-Disturb.
  18. Datenspeichersystem gemäß Anspruch 14, wobei die Speichersteuerung ferner eingerichtet ist zum Durchführen der Operation von: als Reaktion auf die Durchführung der ersten Operation auf dem ersten Speicherabschnitt, Starten eines Zeitgebers des ersten Speicherabschnitts mit einer jeweiligen Zeitspanne zum Durchführen der ersten Operation auf dem ersten Speicherabschnitt.
  19. Datenspeichersystem gemäß Anspruch 14, wobei der erste Speicherabschnitt und der zweite Speicherabschnitt mit einer gleichen Stromquelle verbunden sind.
  20. Datenspeichersystem gemäß Anspruch 14, wobei der erste Speicherabschnitt und der zweite Speicherabschnitt mindestens eines sind von: einer Ebene, einem Chip, einem Block und einer Seite.
DE102019134290.2A 2019-01-24 2019-12-13 Verfahren und System zum Verbessern der Leistung einer Speichervorrichtung unter Verwendung einer asynchronen, unabhängigen Ebenenlesefunktionalität Withdrawn DE102019134290A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/256,010 2019-01-24
US16/256,010 US10685722B1 (en) 2019-01-24 2019-01-24 Method and system for improving performance of a storage device using asynchronous independent plane read functionality

Publications (1)

Publication Number Publication Date
DE102019134290A1 true DE102019134290A1 (de) 2020-07-30

Family

ID=71074999

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019134290.2A Withdrawn DE102019134290A1 (de) 2019-01-24 2019-12-13 Verfahren und System zum Verbessern der Leistung einer Speichervorrichtung unter Verwendung einer asynchronen, unabhängigen Ebenenlesefunktionalität

Country Status (4)

Country Link
US (2) US10685722B1 (de)
KR (1) KR102310832B1 (de)
CN (1) CN111477256B (de)
DE (1) DE102019134290A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7392180B2 (ja) * 2021-03-29 2023-12-05 長江存儲科技有限責任公司 メモリデバイスおよびその非同期マルチプレーン独立読み出し動作
CN113228181B (zh) 2021-03-29 2023-10-03 长江存储科技有限责任公司 存储器器件及其异步多面独立读取操作
US12019913B2 (en) 2021-05-17 2024-06-25 Western Digital Technologies, Inc. Storing log and user data in SSD with independent plane operations
US11954366B2 (en) * 2022-05-26 2024-04-09 Western Digital Technologies, Inc. Data storage device with multi-commands
US11989458B2 (en) 2022-09-12 2024-05-21 Western Digital Technologies, Inc. Splitting sequential read commands

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438670B1 (en) * 1998-10-02 2002-08-20 International Business Machines Corporation Memory controller with programmable delay counter for tuning performance based on timing parameter of controlled memory storage device
JP5000872B2 (ja) * 2005-09-15 2012-08-15 凸版印刷株式会社 半導体メモリ
JP4777807B2 (ja) * 2006-03-29 2011-09-21 エルピーダメモリ株式会社 積層メモリ
KR101774471B1 (ko) * 2010-11-25 2017-09-05 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 읽기 방법
US8769232B2 (en) * 2011-04-06 2014-07-01 Western Digital Technologies, Inc. Non-volatile semiconductor memory module enabling out of order host command chunk media access
US9141568B2 (en) * 2011-08-25 2015-09-22 Apple Inc. Proportional memory operation throttling
US9570195B2 (en) * 2014-02-28 2017-02-14 Texas Instruments Incorporated On chip characterization of timing parameters for memory ports
US9093160B1 (en) * 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US9875785B2 (en) 2015-10-01 2018-01-23 Qualcomm Incorporated Refresh timer synchronization between memory controller and memory
KR101848418B1 (ko) * 2015-12-31 2018-04-12 서강대학교산학협력단 불균일 기억 장치 접근(numa) 구조에서 메모리 정책기반 쓰레드 재배치 방법
US20180039425A1 (en) * 2016-08-02 2018-02-08 Alibaba Group Holding Limited Method and apparatus for improved flash memory storage latency and robustness
US10140027B1 (en) * 2017-05-26 2018-11-27 Seagate Technology Llc Data transfers with adaptively adjusted polling times

Also Published As

Publication number Publication date
CN111477256A (zh) 2020-07-31
KR20200092251A (ko) 2020-08-03
US20200258584A1 (en) 2020-08-13
KR102310832B1 (ko) 2021-10-07
US10685722B1 (en) 2020-06-16
CN111477256B (zh) 2023-03-24
US10741261B1 (en) 2020-08-11

Similar Documents

Publication Publication Date Title
DE102019134290A1 (de) Verfahren und System zum Verbessern der Leistung einer Speichervorrichtung unter Verwendung einer asynchronen, unabhängigen Ebenenlesefunktionalität
DE102020115736A1 (de) Halbleiterspeichervorrichtung und Verfahren zum Betreiben der Halbleiterspeichervorrichtungen
DE102020130044A1 (de) Techniken zum verhindern von lese-störung in nand-speicher
DE102017104257A1 (de) Auf Zellenstrom basierende Bitleitungsspannung
DE102020107659A1 (de) Zonenbildung für gezonte namensräume
DE112018004251T5 (de) Adaptive vorrichtungsdienstqualität durch host-speicherpufferbereich
DE102018123891A1 (de) Handhabung nichtabgestimmter Schreibvorgänge
DE112016005869T5 (de) Vorausschauende Arbeitsspeicherinstandhaltung
DE112016004629T5 (de) Datencodiertechniken für eine Vorrichtung
DE112016002631B4 (de) Speicherfunktionszustandsüberwachung
DE112018005505T5 (de) Verfahren und vorrichtung zur spezifikation von lese-spannungsversetzungen für einen lesebefehl
DE112020006139T5 (de) Vor-lese-und lese-schwellenspannungsoptimierung
DE102015108143A1 (de) Nand-Vorab-Lese-Fehlerkorrektur
DE102013109235A1 (de) Flash-Speichersystem mit Detektor für anormale Wortleitung und Verfahren zum Erfassen einer anormalen Wortleitung
DE102011055714A1 (de) Verfahren zum Programmieren einer nicht-flüchtigen Speichervorrichtung
DE102010061530A1 (de) Speicher mit variablem Widerstand, Betriebsverfahren und System
DE102017114078A1 (de) Fehlerabschwächung für 3d-nand-flash-speicher
DE112016000696B4 (de) Ablaufplanungsschema(ta) für eine Mehrchip-Speichervorrichtung
DE112019000161T5 (de) Speicher-cache-verwaltung
DE112021000776T5 (de) Verwaltung von schreib-operationen in einer nichtflüchtigen speichervorrichtung unter verwendung eines variablen vor-lese-spannungspegels
DE102018123961A1 (de) Gruppen-leseaktualisierung
DE112015004531T5 (de) Latch-Initialisierung für eine Datenspeichervorrichtung
DE102013200515A1 (de) Halbleiterspeichervorrichtung
DE102020115747A1 (de) Speichermodul, Fehlerkorrekturverfahren für Speicher-Controller, der dieses steuert, und Rechensystem, das dieses umfasst
DE102017120971A1 (de) Pipelineverzögerungsdetektion während des Decodierens durch eine Datenspeichereinrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R083 Amendment of/additions to inventor(s)
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee