Search

DE-112019007385-B4 - VERBESSERTE SICHERHEIT UND KORREKTHEIT BEIM LESEN UND PROGRAMMIEREN VON DATEN IN EINEM NICHTFLÜCHTIGEN SPEICHERGERÄT

DE112019007385B4DE 112019007385 B4DE112019007385 B4DE 112019007385B4DE-112019007385-B4

Abstract

Nichtflüchtige Speichervorrichtung (100) aufweisend: - ein Array (90) von Speicherzellen mit einer Vielzahl von Speicherblöcken; - eine Dummy-Zeile (200), die einem Speicherblock (160) der Vielzahl von Speicherblöcken entspricht, zum Speichern eines bekannten Musters und eines Trimmparameters, wobei der Trimmparameter ein Lesen des bekannten Musters außerhalb eines Adressraums des entsprechenden Speicherblocks (160) der Vielzahl von Speicherblöcken ermöglicht; - eine Steuerung (101) der Speichervorrichtung (100), welche so konfiguriert ist, dass sie eine Erfassung eines thermischen Drifts in einem Speicherblock (160) der mehreren Speicherblöcke unter Verwendung des bekannten Musters, das in der, dem Speicherblock (160) entsprechenden Dummy-Zeile (200) gespeichert ist, als Reaktion auf eine Erfassung einer Temperaturänderung der Speichervorrichtung (100) auslöst; - von der Steuerung (101) angesteuerte Leseschaltungen zum Lesen des in der Dummy-Zeile (200) gespeicherten bekannten Musters durch Ausführen von Lesezyklen und Ändern des gelesenen Trimmparameters, welcher zum Lesen des bekannten Musters in der Dummy-Zeile (200) gespeichert ist, bis zu einem Moment, in dem ein Wert des bekannten Musters korrekt gelesen wird, wobei der Wert des bekannten Musters in der Dummy-Zeile (200) gespeichert ist, wobei die Steuerung (101) so konfiguriert ist, dass sie: ◯ in einer nachfolgenden Lesephase, basierend auf einem Fehlen des Trimmparameters in der Dummy-Zeile (200) bestimmt, dass ein Leistungsverlust aufgetreten ist; und ◯ in Reaktion auf die Feststellung, dass ein Leistungsverlust aufgetreten ist, den gesamten Speicherblock löscht.

Inventors

  • Alberto Troia
  • Antonino Mondello

Assignees

  • MICRON TECHNOLOGY, INC.

Dates

Publication Date
20260507
Application Date
20190531

Claims (19)

  1. Nichtflüchtige Speichervorrichtung (100) aufweisend: - ein Array (90) von Speicherzellen mit einer Vielzahl von Speicherblöcken; - eine Dummy-Zeile (200), die einem Speicherblock (160) der Vielzahl von Speicherblöcken entspricht, zum Speichern eines bekannten Musters und eines Trimmparameters, wobei der Trimmparameter ein Lesen des bekannten Musters außerhalb eines Adressraums des entsprechenden Speicherblocks (160) der Vielzahl von Speicherblöcken ermöglicht; - eine Steuerung (101) der Speichervorrichtung (100), welche so konfiguriert ist, dass sie eine Erfassung eines thermischen Drifts in einem Speicherblock (160) der mehreren Speicherblöcke unter Verwendung des bekannten Musters, das in der, dem Speicherblock (160) entsprechenden Dummy-Zeile (200) gespeichert ist, als Reaktion auf eine Erfassung einer Temperaturänderung der Speichervorrichtung (100) auslöst; - von der Steuerung (101) angesteuerte Leseschaltungen zum Lesen des in der Dummy-Zeile (200) gespeicherten bekannten Musters durch Ausführen von Lesezyklen und Ändern des gelesenen Trimmparameters, welcher zum Lesen des bekannten Musters in der Dummy-Zeile (200) gespeichert ist, bis zu einem Moment, in dem ein Wert des bekannten Musters korrekt gelesen wird, wobei der Wert des bekannten Musters in der Dummy-Zeile (200) gespeichert ist, wobei die Steuerung (101) so konfiguriert ist, dass sie: ◯ in einer nachfolgenden Lesephase, basierend auf einem Fehlen des Trimmparameters in der Dummy-Zeile (200) bestimmt, dass ein Leistungsverlust aufgetreten ist; und ◯ in Reaktion auf die Feststellung, dass ein Leistungsverlust aufgetreten ist, den gesamten Speicherblock löscht.
  2. Nichtflüchtige Speichervorrichtung (100) nach Anspruch 1 , wobei das bekannte Muster der Steuerung (101) der Speichervorrichtung (100) bekannt ist und wobei das bekannte Muster eine gleiche Anzahl von programmierten (‚0‘) und gelöschten (‚1‘) Bits enthält.
  3. Nichtflüchtige Speichervorrichtung (100) nach Anspruch 1 , wobei der geänderte Trimmparameter einem eingestellten Temperaturwert entspricht, der in einem programmierbaren Register aufgezeichnet ist.
  4. Nichtflüchtige Speichervorrichtung (100) nach Anspruch 1 , wobei die Dummy-Zeile (200) konfiguriert ist, um interne Blockvariablen einer Lese-, einer Programmier- und/oder einer Löschphase zu speichern.
  5. Nichtflüchtige Speichervorrichtung (100) nach Anspruch 4 , wobei die internen Blockvariablen Leseimpulse und die während der Lesephase an den Speicherblock (160) angelegten Zielspannungen umfassen.
  6. Nichtflüchtige Speichervorrichtung (100) nach Anspruch 1 , wobei sich die Dummy-Zeile (200) außerhalb eines Adressraums des Speicherblocks (160) befindet.
  7. Nichtflüchtige Speichervorrichtung nach Anspruch 1 , wobei die Dummy-Zeile (200) in einem anderen Speicherblock (160) des Arrays (90) von Speicherzellen bereitgestellt ist.
  8. Ein Gerät aufweisend: - ein Host-Gerät, welches ein System-on-Chip, SoC umfasst, wobei der SoC konfiguriert ist, dass er Fehlerkorrekturoperationen an Daten durchführt, die aus einem adressierbaren Raum einer nichtflüchtigen Speicherkomponente abgerufen werden; - die nichtflüchtige Speicherkomponente wobei die nichtflüchtige Speicherkomponente eine von dem SoC unabhängige Struktur umfasst aber mit dem Host-Gerät gekoppelt ist, umfassend ein Array (90) von Speicherzellen mit einer Vielzahl von Speicherblöcken und wobei ein Speicherblock von der Vielzahl von Speicherblöcken dazu konfiguriert ist die Daten in dem adressierbaren Raum zu speichern; - die Dummy-Zeile (200), die dem Speicherblock (160) der Vielzahl von Speicherblöcken entspricht, zum Speichern eines bekannten Musters und des Trimmparameters, wobei der Trimmparameter ein Lesen des bekannten Musters außerhalb eines Adressraums des entsprechenden Speicherblocks (160) der Vielzahl von Speicherblöcken ermöglicht; - eine Steuerung (101) der Speicherkomponente, welche so konfiguriert ist, dass sie eine Erkennung eines thermischen Drifts oder Alterung unter Verwendung des in der Dummy-Zeile (200) gespeicherten bekannten Musters als Reaktion auf eine Anzahl von ECC-Bits aus der Korrektur der aus dem adressierbaren Raum der nichtflüchtigen Speicherkomponente durch den SoC abgerufenen Daten auslöst, die einen Schwellenwert überschreitet; und - von der Steuerung (101) angesteuerte Leseschaltungen zum Lesen des in der Dummy-Zeile (200) gespeicherten bekannten Musters durch Ausführen eines Lesezyklus und Ändern des gelesenen Trimmparameters bis zu dem Moment, in dem der Wert des bekannten Musters, mittels des Trimmparameters, korrekt gelesen wird, wobei die Steuerung (101) so konfiguriert ist, dass sie: ◯ in einer nachfolgenden Lesephase basierend auf einem Fehlen des Trimmparameters von der Dummy-Zeile (200) bestimmt, dass ein Leistungsverlust aufgetreten ist; und ◯ in Reaktion auf die Feststellung, dass ein Leistungsverlust aufgetreten ist, den gesamten Speicherblock löscht.
  9. Gerät nach Anspruch 8 , wobei die Dummy-Zeile (200) konfiguriert ist, um interne Blockvariablen einer Lesephase und einer Löschphase zu speichern.
  10. Gerät nach Anspruch 9 , wobei die internen Blockvariablen Leseimpulse oder die während der Lesephase an den Speicherblock (160) angelegten Zielspannungen umfassen.
  11. Gerät nach Anspruch 8 , wobei das Array (90) der Speicherzellen eine Vielzahl von unabhängig adressierbaren Speicherblöcken enthält; wobei jeder der Vielzahl von unabhängig adressierbaren Speicherblöcken enthält mindestens 256 Reihen von Speicherzellen und jede Reihe enthält mindestens sechzehn Superseiten, die jeweils durch eine Kombination von Datenbits, Adressbits und ECC-Bits einer Speicherstelle gebildet werden.
  12. Gerät nach Anspruch 11 , wobei die Lesezyklen automatisch von der Steuerung (101) durchgeführt werden, wenn eine erhöhte Anzahl von ECC-Bits eine übermäßige Anzahl von Fehllesungen aus der Speicherkomponente darstellt.
  13. Verfahren das umfasst: - Speichern eines bekannten Musters in einer Dummy-Zeile (200), wobei die Dummy-Zeile (200) einem Speicherblock (160) einer Vielzahl von Speicherblöcken eines Arrays (90) von Speicherzellen entspricht, wobei das bekannte Muster mit der Erkennung eines thermischen Drifts im Speicherblock (160) in Verbindung steht, wobei das Array (90) von Speicherzellen Daten in einem Adressraum des Arrays 90 von Speicherzellen speichert und wobei die Dummy-Zeile (200) das bekannte Muster außerhalb des Adressraums des Arrays 90 von Speicherzellen speichert; - Durchführen von Lesezyklen und ändern eines Trimmparameters, welcher in der Dummy-Zeile (200) gespeichert ist, bis zu einem Moment, in dem das bekannte Muster, mittels des Trimmparameters, korrekt gelesen wird; und - die Übernahme des Trimmparameters der korrekten Lesung des bekannten Musters für die nachfolgenden Lesephasen des Adressraums - Bestimmen in einer nachfolgenden Lesephase, basierend auf einem Fehlen des Trimmparameters von der Dummy-Zeile (200), dass ein Leistungsverlust aufgetreten ist; und - Löschen des Speicherblocks (160) in Reaktion auf die Bestimmung, dass der Leistungsverlust aufgetreten ist.
  14. Verfahren nach Anspruch 13 , bei dem die geänderten Trimmparameter der korrekten Ablesung einem Temperatursollwert entsprechen, der in einem programmierbaren Register aufgezeichnet ist.
  15. Verfahren nach Anspruch 13 , wobei das Übernehmen des Trimmparameters als Reaktion auf das korrekte Auslesen des bekannten Werts durchgeführt wird.
  16. Verfahren nach Anspruch 13 , wobei das bekannte Muster Werte in hexadezimaler Form enthält, die dieselbe Anzahl von logischen Werten von „0“ und logischen Werten von „1“ umfassen.
  17. Verfahren nach Anspruch 13 , wobei die Lesezyklen automatisch durchgeführt werden, wenn eine erhöhte Anzahl von ECC-Bits für eine übermäßige Anzahl von Fehllesungen aus einer nicht-flüchtigen Speichervorrichtung umfassend das Array (90) von Speicherzellen repräsentativ ist.
  18. Verfahren nach Anspruch 13 , wobei die Dummy-Zeile (200) konfiguriert ist, um Informationen zu speichern, die ein Fehlschlagen eines Löschvorgangs anzeigen.
  19. Verfahren nach Anspruch 13 , ferner umfassend das Starten einer Löschphase auf dem Speicherblock (160) basierend auf dem Abrufen interner Blockvariablen einer vorherigen Löschphase aus der Dummy-Zeile (200).

Description

TECHNISCHES GEBIET Die vorliegende Offenbarung bezieht sich im Allgemeinen auf Speichervorrichtungen und insbesondere auf Ausführungsformen, die sich auf die Sicherheit und verbesserte Leistungen beim Lesen und Programmieren von Daten in nichtflüchtigen Speichervorrichtungen beziehen. Ausführungsformen der vorliegenden Offenbarung beziehen sich insbesondere auf ein Verfahren zum Neutrimmen der Einstellung einer Speicherkomponente, um die Cross-Temp-Robustheit der Speichervorrichtung zu verbessern. STAND DER TECHNIK Speichervorrichtungen sind auf dem elektronischen Gebiet gut bekannt, um digitale Informationen zu speichern und darauf zuzugreifen. Im Allgemeinen können verschiedene Arten von Halbleiterspeichervorrichtungen in komplexere Systeme eingebaut werden, die entweder nichtflüchtige Speicherkomponenten sowie flüchtige Speicherkomponenten umfassen, beispielsweise in sogenannten System-on-Chips (SoC), bei denen der oben erwähnte Speicher Komponenten eingebettet sind. Heutzutage erfordert jedoch der Bedarf an Echtzeit-Betriebssystemen, insbesondere für Automobilanwendungen, SoC mit immer mehr Leistung und Effizienz und die bekannten Lösungen erfüllen diese Anforderungen teilweise, jedoch nicht kosten- und ertragswirksam. Nichtflüchtiger Speicher kann persistente Daten bereitstellen, indem er gespeicherte Daten beibehält, wenn er nicht mit Strom versorgt wird, und kann unter anderem NAND-Flash-Speicher, NOR-Flash-Speicher, 3DXP-Speicher, MRAMs, STTRAM und CBRAMs umfassen. NAND-Flash hat kürzere Lösch- und Schreibzeiten und erfordert weniger Chipfläche pro Zelle, wodurch eine höhere Speicherdichte und niedrigere Kosten pro Bit als NOR-Flash ermöglicht werden. Die I/O-Schnittstelle von NAND-Flash bietet jedoch keinen externen Adressbus mit wahlfreiem Zugriff. Vielmehr müssen Daten blockweise gelesen werden, mit typischen Blockgrößen von Hunderten bis Tausenden von Bits. Flash-Speicherbauelemente leiden unter Temperaturschwankungen, insbesondere dem Anstieg der Temperatur während ihres Betriebs. Der Grund liegt hauptsächlich in der Tatsache begründet, dass, wenn die den Speicher bildenden Floating-Gates in Gegenwart einer höheren Temperatur vorgespannt werden, ein Energieniveau erreichen kann, das ausreicht, um einen Sprung in den Kanal zu ermöglichen, und die Folge ist ein Ladungsverlust. Bei anderen Technologien, die beispielsweise Ladungsfallen verwenden, beschleunigt die hohe Temperatur die Rekombination und bedeutet den Verlust der gespeicherten Informationen. Diese Probleme beeinträchtigen die Sicherheit und Korrektheit der aus dem Speichergerät gelesenen Daten. US 2016 / 0 342 494 A1 offenbart ein Speichersystem mit einem nichtflüchtigen Speicher, bei dem jeder Speicherblock hinsichtlich seines Zustands und Verhaltens überwacht werden kann. Dazu werden innerhalb jedes Blocks eine oder mehrere Dummy-Wortleitungen eingesetzt, die nicht für die normale Datenspeicherung zugänglich sind. Diese Dummy-Wortleitungen werden mit einem bekannten Datenmuster programmiert, das ausgelesen und analysiert werden kann, um potenzielle Fehler zu erkennen und den Gesundheitszustand des Speicherblocks darzustellen. Auf Basis dieser Analyse können die Betriebsparameter, wie beispielsweise Lesespannungen, angepasst werden, um die Leistung jedes Speicherblocks zu optimieren. US 2018 / 0 293 029 A1 offenbart ein Speichersystem mit einem nichtflüchtigen Speicher und einem Controller, das auf Temperaturunterschiede zwischen dem Schreiben und Lesen von Daten reagiert. Der Controller kann Schwellenwerte (Vt) von Speicherzellen unter unterschiedlichen Parametern messen und daraus Korrekturwerte bestimmen, um die Leseschwelle entsprechend anzupassen. Ergänzend werden Daten, die bei ungewöhnlichen Schreibtemperaturen gespeichert wurden, als refresh-bedürftig markiert oder mit erhöhter Zuverlässigkeit gespeichert. Auf diese Weise werden Leseparameter temperaturabhängig angepasst, um die Datenintegrität und Zuverlässigkeit des Speichers zu erhöhen. US 2016 / 0 322 108 A1 offenbart ein nichtflüchtiges Speichersystem mit NAND-Architektur, bei dem eine oder mehrere Wortzeilen an den Enden eines Speicherblocks als Dummy-Wortzeilen vorgesehen sind, die nicht für die Speicherung von Nutzdaten verwendet werden. Diese Dummy-Wortzeilen dienen dazu, Metadaten über den Zustand des Blocks, Trimmparameter, Fehlerstatistiken und weitere Statusinformationen zu speichern. Auf Basis dieser Metadaten kann der Speichercontroller Leseparameter anpassen oder Blockumlagerungen vornehmen. Ein Ziel der vorliegenden Offenbarung besteht darin, eine Flash-Speichervorrichtung und ein Leseverfahren für Flash-Speichervorrichtungen bereitzustellen, die den Einfluss von Alter und Temperatur auf die Leistung der Speichervorrichtung reduzieren, wodurch das Risiko des Informationsverlusts verringert wird. KURZBESCHREIBUNG DER ZEICHNUNGEN 1 zeigt eine schematische Ansicht eines Systems mit einer Speicherkomponente, die einem Controller zugeordnet ist, der Daten-, Adress-