DE112020000177T5 - Speichersystem und verfahren zur videoeinzelbild-segregation zum optimieren der speicherung - Google Patents

Speichersystem und verfahren zur videoeinzelbild-segregation zum optimieren der speicherung Download PDF

Info

Publication number
DE112020000177T5
DE112020000177T5 DE112020000177.6T DE112020000177T DE112020000177T5 DE 112020000177 T5 DE112020000177 T5 DE 112020000177T5 DE 112020000177 T DE112020000177 T DE 112020000177T DE 112020000177 T5 DE112020000177 T5 DE 112020000177T5
Authority
DE
Germany
Prior art keywords
storage system
memory
video
storage
host
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.)
Pending
Application number
DE112020000177.6T
Other languages
English (en)
Inventor
Ramanathan Muthiah
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.)
Sandisk Technologies Inc NDGesD Staates Us
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 DE112020000177T5 publication Critical patent/DE112020000177T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3081Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is a video-frame or a video-field (P.I.P)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23113Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

Ein Speichersystem und ein Verfahren zur Videoeinzelbild-Segregation zum Optimieren der Speicherung werden bereitgestellt. In einer Ausführungsform wird ein Speichersystem vorgestellt, das einen Speicher und eine Steuerung aufweist. Die Steuerung ist eingerichtet zum: Empfangen eines Videostroms von einem Host; Identifizieren einer Vielzahl von Videoeinzelbild-Typen aus dem Videostrom; und Speichern von Videoeinzelbildern verschiedener Videoeinzelbild-Typen in dem Speicher unter Verwendung verschiedener Speicheroptionen. Andere Ausführungsformen werden bereitgestellt.

Description

  • HINTERGRUND
  • In einem Speichersystem kann ein von einem Host an dieses gesendeter Datenstrom gespeichert werden. In einer Überwachungs- oder digitalen Videorecorder-Umgebung (DVR-Umgebung) können die Daten im Moving Picture Experts Group Transport Stream-Format (MPEG-TS-Format) gespeichert werden. Der gesamte Strom wird als eine Einheit gespeichert, was in der Regel vorteilhaft ist, da die Daten auf diese Weise einfach gespeichert und abgerufen werden können. Bei Überwachungsdaten muss nach einiger Zeit in der Regel nur ein Teil der Daten gespeichert werden. Um die nicht benötigten Daten zu entfernen, wird der Datenstrom aus dem Speicher ausgelesen, die nicht benötigten Videoeinzelbilder entfernt und der resultierende neue Strom wieder in dem Speicher gespeichert.
  • Figurenliste
    • 1A ist ein Blockdiagramm eines nichtflüchtigen Speichersystems einer Ausführungsform.
    • 1B ist ein Blockdiagramm, das ein Speichermodul einer Ausführungsform veranschaulicht.
    • 1C ist ein Blockdiagramm, das ein hierarchisches Speichersystem einer Ausführungsform veranschaulicht.
    • 2A ist ein Blockdiagramm, das Komponenten der Steuerung des in 1A veranschaulichten nichtflüchtigen Speichersystems gemäß einer Ausführungsform veranschaulicht.
    • 2B ist ein Blockdiagramm, das Komponenten des in 1A veranschaulichten nichtflüchtigen Speichersystems gemäß einer Ausführungsform veranschaulicht.
    • 3 ist ein Blockdiagramm eines Hosts und Speichersystems einer Ausführungsform.
    • 4 ist ein Flussdiagramm eines Verfahrens einer Ausführungsform zur Segregation von Videoeinzelbildern, das von einem Host durchgeführt wird.
    • 5 ist ein Flussdiagramm eines Verfahrens einer Ausführungsform zur Segregation von Videoeinzelbildern, das von einem Speichersystem durchgeführt wird.
  • DETAILLIERTE BESCHREIBUNG
  • Überblick
  • Zur Einführung beziehen sich die folgenden Ausführungsformen auf ein Speichersystem und ein Verfahren zur Segregation von Videoeinzelbildern zum Optimieren der Speicherung. In einer Ausführungsform wird ein Speichersystem vorgestellt, das einen Speicher und eine Steuerung aufweist. Die Steuerung ist eingerichtet zum: Empfangen eines Videostroms von einem Host; Identifizieren einer Vielzahl von Videoeinzelbild-Typen aus dem Videostrom; und Speichern von Videoeinzelbildern verschiedener Videoeinzelbild-Typen in dem Speicher unter Verwendung verschiedener Speicheroptionen.
  • In einigen Ausführungsformen sind die unterschiedlichen Speicheroptionen unterschiedliche Lebensdauergrade.
  • In einigen Ausführungsformen ist ein erster Videoeinzelbild-Typ ein intra-codiertes Einzelbild (I-Bild) und ein zweiter Videoeinzelbild-Typ ist ein differenzcodiertes Einzelbild (P-Bild) oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild).
  • In einigen Ausführungsformen wird ein I-Bild mit einem höheren Lebensdauergrad gespeichert als ein P-Bild oder ein B-Bild.
  • In einigen Ausführungsformen ist die Steuerung ferner eingerichtet, um nach einem verstrichenen Zeitraum Videoeinzelbilder eines Videoeinzelbild-Typs zu löschen, während die Videoeinzelbilder eines anderen Videoeinzelbild-Typs behalten werden.
  • In einigen Ausführungsformen ist die Steuerung eingerichtet, um die Vielzahl von Videoeinzelbild-Typen basierend auf Informationen zu identifizieren, die von dem Host empfangen werden.
  • In einigen Ausführungsformen weist der Speicher einen dreidimensionalen Speicher auf.
  • In einigen Ausführungsformen ist das Speichersystem eingerichtet, um in dem Host integriert zu sein.
  • In einigen Ausführungsformen ist das Speichersystem eingerichtet, um trennbar mit dem Host verbunden zu werden.
  • In einer anderen Ausführungsform wird ein Verfahren zur Videoeinzelbild-Segregation vorgestellt, das in einem Speichersystem, das in Kommunikation mit einem Host steht, durchgeführt wird, wobei das Speichersystem einen Speicher umfasst. Das Verfahren weist Folgendes auf: Empfangen, von dem Host, einer Vielzahl von Videoeinzelbildern, die von dem Host aus einem Videostrom extrahiert werden; Empfangen, von dem Host, von Anweisungen zu einem Speicherparameter, der von dem Speichersystem verwendet werden soll, um jedes der Videoeinzelbilder zu speichern, wobei Videoeinzelbilder unterschiedlicher Videoeinzelbild-Typen unterschiedliche Speicherparameter aufweisen; und Speichern jedes der Vielzahl von Videoeinzelbildern in dem Speicher unter Verwendung der durch den Host spezifizierten Speicherparameter.
  • In einigen Ausführungsformen sind die unterschiedlichen Speicherparameter unterschiedliche Lebensdauergrade.
  • In einigen Ausführungsformen ist ein erster Videoeinzelbild-Typ ein intra-codiertes Einzelbild (I-Bild) und ein zweiter Videoeinzelbild-Typ ist ein differenzcodiertes Einzelbild (P-Bild) oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild).
  • In einigen Ausführungsformen wird ein I-Bild mit einem höheren Lebensdauergrad gespeichert als ein P-Bild oder ein B-Bild.
  • In einigen Ausführungsformen weist das Verfahren ferner nach einem verstrichenen Zeitraum das Löschen von Videoeinzelbildern eines Videoeinzelbild-Typs auf, während die Videoeinzelbilder eines anderen Videoeinzelbild-Typs beibehalten werden.
  • In einer anderen Ausführungsform wird ein Speichersystem vorgestellt, das einen Speicher und Mittel zum Speichern unterschiedlicher Videoeinzelbilder aus einem Videostrom in dem Speicher unter Verwendung unterschiedlicher Speicherparameter gemäß einer erwarteten Speicherlebensdauer eines Videoeinzelbilds in dem Speicher aufweist.
  • In einigen Ausführungsformen sind die unterschiedlichen Speicherparameter unterschiedliche Lebensdauergrade.
  • In einigen Ausführungsformen weisen die verschiedenen Videoeinzelbilder (i) ein intra-codiertes Einzelbild (I-Bild) und (ii) ein differenzcodiertes Einzelbild (P-Bild) und/oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild) auf.
  • In einigen Ausführungsformen weist der Speicher einen dreidimensionalen Speicher auf.
  • In einigen Ausführungsformen ist das Speichersystem eingerichtet, um in einem Host integriert zu sein.
  • In einigen Ausführungsformen ist das Speichersystem eingerichtet, um trennbar mit einem Host verbunden zu sein.
  • Andere Ausführungsformen sind möglich, und jede der Ausführungsformen kann allein oder zusammen in Kombination verwendet werden. Dementsprechend werden nun verschiedene Ausführungsformen unter Bezugnahme auf die beigefügten Zeichnungen beschrieben.
  • Ausführungsformen
  • Speichersysteme, die zur Verwendung bei der Implementierung von Gesichtspunkten dieser Ausführungsformen geeignet sind, sind in 1A bis 1C gezeigt. 1A ist ein Blockdiagramm, das ein nichtflüchtiges Speichersystem 100 gemäß einer Ausführungsform des hierin beschriebenen Gegenstands veranschaulicht. Bezug nehmend auf 1A schließt das nichtflüchtige Speichersystem 100 eine Steuerung 102 und einen nichtflüchtigen Speicher, der aus einem oder mehreren nichtflüchtigen Speicher-Dies 104 bestehen kann, ein. Wie hierin verwendet, bezieht sich der Begriff „Die“ auf die Zusammenstellung von nichtflüchtigen Speicherzellen und eine zugeordnete Schaltung zum Verwalten des physischen Betriebs dieser nichtflüchtigen Speicherzellen, die auf einem einzelnen Halbleitersubstrat gebildet sind. Die Steuerung 102 bildet mit einem Hostsystem eine Schnittstelle und überträgt Befehlssequenzen für Lese-, Programmier- und Löschvorgänge zu dem nichtflüchtigen Speicher-Die 104.
  • Die Steuerung 102 (welche eine Steuerung eines nichtflüchtigen Speichers (z. B. eine Steuerung eines Flash-Speichers, eines resistiven Direktzugriffsspeichers (ReRAM), eines Phasenwechselspeichers (PCM) oder eines magnetoresistiven Direktzugriffsspeichers (MRAM)) sein kann) kann zum Beispiel die Form einer Verarbeitungsschaltlogik, eines Mikroprozessors oder Prozessors und eines computerlesbaren Mediums annehmen, welches computerlesbaren Programmcode (z. B. Firmware) speichert, der von dem (Mikro-)Prozessor, Logikgattern, Schaltern, einer anwendungsspezifischen integrierten Schaltung (ASIC), einer programmierbaren Logiksteuerung und einer eingebetteten Mikrosteuerung ausführbar ist. Die Steuerung 102 kann mit Hardware und/oder Firmware eingerichtet sein, um die verschiedenen Funktionen durchzuführen, die unten beschrieben und in den Flussdiagrammen gezeigt sind. Außerdem können einige der Komponenten, die als innerhalb der Steuerung gezeigt sind, auch außerhalb der Steuerung gespeichert werden, und andere Komponenten können verwendet werden. Zusätzlich könnte der Ausdruck „operativ in Kommunikation mit“ direkt in Kommunikation mit oder indirekt (verdrahtet oder drahtlos) in Kommunikation mit durch eine oder mehrere Komponenten, die hierin gezeigt oder beschrieben sein können oder nicht gezeigt oder beschrieben sein können, bedeuten.
  • Wie hierin verwendet, ist eine nichtflüchtige Speichersteuerung eine Vorrichtung, die auf nichtflüchtigem Speicher gespeicherte Daten verwaltet und mit einem Host, wie einem Computer oder einer elektronischen Vorrichtung, kommuniziert. Eine Steuerung eines nichtflüchtigen Speichers kann verschiedene Funktionalitäten zusätzlich zu der hierin beschriebenen spezifischen Funktionalität aufweisen. Zum Beispiel kann die Steuerung des nichtflüchtiges Speichers den nichtflüchtigen Speicher formatieren, um sicherzustellen, dass der Speicher ordnungsgemäß arbeitet, defekte nichtflüchtige Speicherzellen kartieren und Ersatzzellen zuweisen, die künftige fehlerhafte Zellen ersetzen sollen. Ein Teil der Ersatzzellen kann verwendet werden, um Firmware aufzunehmen, um die Steuerung des nichtflüchtiges Speichers zu betreiben und andere Merkmale zu implementieren. Wenn ein Host im Betrieb Daten aus dem nichtflüchtigen Speicher lesen oder Daten in diesen schreiben muss, kann er mit der Steuerung des nichtflüchtigen Speichers kommunizieren. Wenn der Host eine logische Adresse bereitstellt, in die Daten gelesen/geschrieben werden sollen, kann die Steuerung des nichtflüchtigen Speichers die von dem Host empfangene logische Adresse in eine physische Adresse in dem nichtflüchtigen Speicher umwandeln. (Alternativ kann der Host die physische Adresse bereitstellen.) Die Steuerung des nichtflüchtigen Speichers kann auch verschiedene Speicherverwaltungsfunktionen durchführen, wie, ohne darauf beschränkt zu sein, einen Abnutzungsausgleich (Verteilen von Schreibvorgängen, um zu vermeiden, dass bestimmte Speicherblöcke, die ansonsten wiederholt beschrieben würden, abgenutzt werden) und eine Speicherbereinigung (nachdem ein Block voll ist, werden nur die gültigen Datenseiten in einen neuen Block bewegt, sodass der volle Block gelöscht und wiederverwendet werden kann).
  • Das nichtflüchtige Speicher-Die 104 kann jedes geeignete nichtflüchtige Speichermedium, einschließlich resistiver Direktzugriffsspeicher (ReRAM), magnetoresistiver Direktzugriffsspeicher (MRAM), Phasenwechselspeicher (PCM), NAND-Flash-Speicherzellen und/oder NOR-Flash-Speicherzellen, einschließen. Die Speicherzellen können die Form von Festkörperspeicherzellen (z. B. Flash-Speicherzellen) annehmen und können einmalig programmierbar, mehrfach programmierbar oder vielfach programmierbar sein. Die Speicherzellen können auch Single-Level Cells (SLC), Multiple-Level Cells (MLC), Triple-Level Cells (TLC) oder andere Speicherzellen-Level-Technologien sein, die jetzt bekannt sind oder später entwickelt werden. Außerdem können die Speicherzellen auf zweidimensionale oder dreidimensionale Weise hergestellt werden.
  • Die Schnittstelle zwischen der Steuerung 102 und dem nichtflüchtigen Speicher-Die 104 kann jede geeignete Flash-Schnittstelle wie ein Toggle-Modus 200, 400 oder 800 sein. In einer Ausführungsform kann das Speichersystem 100 ein kartenbasiertes System sein, wie eine Secure Digital-Karte (SD-Karte) oder eine micro Secure Digital-Karte (micro-SD-Karte). In einer alternativen Ausführungsform kann das Speichersystem 100 Teil eines eingebetteten Speichersystems sein.
  • Obwohl in dem in 1A veranschaulichten Beispiel das nichtflüchtige Speichersystem 100 (hierin manchmal als Speichermodul bezeichnet) einen einzigen Kanal zwischen der Steuerung 102 und dem nichtflüchtigen Speicher-Die 104 einschließt, ist der hierin beschriebene Gegenstand nicht auf einen einzigen Speicherkanal beschränkt. Zum Beispiel können in einigen Speichersystemarchitekturen (wie den in 1B und 1C gezeigten) abhängig von Steuerungsfähigkeiten 2, 4, 8 oder mehr Speicherkanäle zwischen der Steuerung und der Speichervorrichtung vorhanden sein. In jeder der hierin beschriebenen Ausführungsformen kann mehr als ein einziger Kanal zwischen der Steuerung und dem Speicher-Die vorhanden sein, selbst wenn in den Zeichnungen ein einziger Kanal gezeigt ist.
  • 1B veranschaulicht ein Speichermodul 200, das mehrere nichtflüchtige Speichersysteme 100 einschließt. Als solches kann das Speichermodul 200 eine Speichersteuerung 202 einschließen, die mit einem Host und mit einem Speichersystem 204, das eine Vielzahl von nichtflüchtigen Speichersystemen 100 einschließt, verbunden ist. Die Schnittstelle zwischen der Speichersteuerung 202 und den nichtflüchtigen Speichersystemen 100 kann eine Busschnittstelle sein, wie eine Serial Advanced Technology Attachment-Schnittstelle (SATA-Schnittstelle), eine Peripheral Component Interface express-Schnittstelle (PCIe-Schnittstelle) oder eine Double Data Rate-Schnittstelle (DDR-Schnittstelle). Das Speichermodul 200 kann in einer Ausführungsform ein Solid State Drive (SSD) oder ein Non-Volatile Dual In-line Memory Module (NVDIMM) sein, wie es in einem Server-PC oder in tragbaren Rechenvorrichtungen, wie Laptop-Computern und Tablet-Computern, zu finden ist.
  • 1C ist ein Blockdiagramm, das ein hierarchisches Speichersystem veranschaulicht. Ein hierarchisches Speichersystem 250 schließt eine Vielzahl von Speichersteuerungen 202 ein, von denen jede ein entsprechendes Speichersystem 204 steuert. Host-Systeme 252 können über eine Busschnittstelle auf Speicher innerhalb des Speichersystems zugreifen. In einer Ausführungsform kann die Busschnittstelle eine Non Volatile Memory Express-Schnittstelle (NVMe-Schnittstelle) oder eine Fibre Channel over Ethernet-Schnittstelle (FCoE-Schnittstelle) sein. In einer Ausführungsform kann das in 1C veranschaulichte System ein in Racks montierbares Massenspeichersystem sein, auf das von mehreren Host-Computern zugegriffen werden kann, wie es in einem Datenzentrum oder an einem anderen Ort, an dem eine Massenspeicherung benötigt wird, zu finden ist.
  • 2A ist ein Blockdiagramm, das Komponenten der Steuerung 102 detaillierter veranschaulicht. Die Steuerung 102 schließt ein Frontend-Modul 108, das mit einem Host verbunden ist, ein Backend-Modul 110, das mit dem einen oder den mehreren nichtflüchtigen Speicher-Dies 104 verbunden ist, und verschiedene andere Module, die Funktionen durchführen, die nun ausführlich beschrieben werden, ein. Ein Modul kann zum Beispiel die Form einer gepackten funktionellen Hardwareeinheit, die zur Verwendung mit anderen Komponenten konzipiert ist, eines Abschnitts eines Programmcodes (z. B. Software oder Firmware), der durch einen (Mikro-)Prozessor oder eine Verarbeitungsschaltung, die üblicherweise eine bestimmte Funktion von verwandten Funktionen durchführt, ausführbar ist, oder einer eigenständigen Hardware- oder Softwarekomponente, die mit einem größeren System verbunden ist, annehmen. Module der Steuerung 102 können einen Videoeinzelbild-Segregator 111 einschließen, der nachstehend ausführlicher erörtert wird, und können in Hardware oder Software/Firmware implementiert sein, um verschiedene Videoeinzelbilder aus einem Videostrom zu extrahieren. Der Videoeinzelbild-Segregator 111 kann eingerichtet sein, um die Algorithmen und Verfahren durchzuführen, die unten erörtert und in den beigefügten Zeichnungen gezeigt sind.
  • Unter erneuter Bezugnahme auf Module der Steuerung 102 verwaltet eine Pufferverwaltung/Bussteuerung 114 Puffer in Direktzugriffsspeicher (RAM) 116 und steuert die interne Busarbitrierung der Steuerung 102. Ein Nur-Lese-Speicher (ROM) 118 speichert Systemhochfahrcode (Boot-Code). Obwohl sie in 2A als von der Steuerung 102 getrennt angeordnet veranschaulicht sind, können in anderen Ausführungsformen einer oder beide von dem RAM 116 und dem ROM 118 innerhalb der Steuerung angeordnet sein. In noch anderen Ausführungsformen können sich Abschnitte des RAM und des ROM sowohl innerhalb der Steuerung 102 als auch außerhalb der Steuerung befinden.
  • Das Frontend-Modul 108 schließt eine Host-Schnittstelle 120 und eine Bitübertragungsschicht-Schnittstelle (PHY) 122 ein, welche die elektrische Schnittstelle mit dem Host oder der Speichersteuerung der nächsten Ebene bereitstellen. Die Wahl des Typs der Host-Schnittstelle 120 kann von dem Typ des verwendeten Speichers abhängen. Beispiele für Host-Schnittstellen 120 schließen, ohne jedoch darauf beschränkt zu sein, SATA, SATA Express, Serially Attached Small Computer System Interface (SAS), Fibre Channel, Universal Serial Bus (USB), PCle und NVMe ein. Die Host-Schnittstelle 120 unterstützt üblicherweise den Transfer von Daten, Steuersignalen und Taktsignalen.
  • Das Backend-Modul 110 schließt eine Fehlerkorrekturcode-Engine (ECC-Engine) 124 ein, welche die von dem Host empfangenen Datenbytes codiert, und die aus dem nichtflüchtigen Speicher gelesenen Datenbytes decodiert und Fehler korrigiert. Ein Befehlssequenzer 126 erzeugt Befehlssequenzen wie Programmier- und Löschbefehlssequenzen zum Übermitteln an das nichtflüchtige Speicher-Die 104. Ein RAID-Modul (Redundant Array of Independent Drives-Modul) 128 verwaltet die Erzeugung von RAID-Parität und die Wiederherstellung fehlerhafter Daten. Die RAID-Parität kann als zusätzliche Ebene des Integritätsschutzes für die Daten verwendet werden, die in die Speichervorrichtung 104 geschrieben werden. In manchen Fällen kann das RAID-Modul 128 Teil der ECC-Engine 124 sein. Eine Speicherschnittstelle 130 stellt die Befehlssequenzen für das nichtflüchtige Speicher-Die 104 bereit und empfängt Statusinformationen von dem nichtflüchtigen Speicher-Die 104. In einer Ausführungsform kann die Speicherschnittstelle 130 eine Double Data Rate-Schnittstelle (DDR-Schnittstelle), wie eine Schnittstelle für den Toggle-Modus 200, 400 oder 800 sein. Eine Flash-Steuerschicht 132 steuert den Gesamtbetrieb des Backend-Moduls 110.
  • Das Speichersystem 100 schließt auch andere diskrete Komponenten 140 ein, wie externe elektrische Schnittstellen, externen RAM, Widerstände, Kondensatoren oder andere Komponenten, die mit der Steuerung 102 verbunden sein können. In alternativen Ausführungsformen sind eine oder mehrere der Bitübertragungsschicht-Schnittstelle 122, des RAID-Moduls 128, der Medienverwaltungsschicht 138 und der Pufferverwaltungs-/Bussteuerung 114 optionale Komponenten, die in der Steuerung 102 nicht notwendig sind.
  • 2B ist ein Blockdiagramm, das Komponenten des nichtflüchtigen Speicher-Dies 104 detaillierter veranschaulicht. Das nichtflüchtige Speicher-Die 104 schließt eine Peripherieschaltlogik 141 und ein Array nichtflüchtiger Speicher 142 ein. Das Array nichtflüchtiger Speicher 142 schließt die nichtflüchtigen Speicherzellen ein, die zum Speichern von Daten verwendet werden. Die nichtflüchtigen Speicherzellen können beliebige geeignete nichtflüchtige Speicherzellen sein, einschließlich ReRAM-, MRAM-, PCM-, NAND-Flash-Speicherzellen und/oder NOR-Flash-Speicherzellen in einer zweidimensionalen und/oder dreidimensionalen Konfiguration. Das nichtflüchtige Speicher-Die 104 schließt weiterhin einen Datencache 156 ein, der Daten zwischenspeichert. Die Peripherieschaltung 141 schließt eine Zustandsmaschine 152, die Statusinformationen an die Steuerung 102 bereitstellt, ein.
  • Erneut Bezug nehmend auf 2A, behandelt die Flash-Steuerschicht 132 (die hierin als Flash-Übersetzungsschicht (FTL) oder allgemeiner als die „Medienverwaltungsschicht“ bezeichnet wird, da der Speicher möglicherweise kein Flash-Speicher ist) Flash-Fehler und bildet eine Schnittstellen mit dem Host. Insbesondere ist die FTL, die ein Algorithmus in Firmware sein kann, für die internen Vorgänge der Speicherverwaltung verantwortlich und übersetzt Schreibvorgänge vom Host in Schreibvorgänge in den Speicher 104. Die FTL kann benötigt werden, da der Speicher 104 möglicherweise eine begrenzte Lebensdauer aufweist, möglicherweise nur in Vielfachen von Seiten beschrieben wird und/oder möglicherweise nicht beschrieben wird, sofern er nicht als Block gelöscht wird. Die FTL kennt diese potenziellen Einschränkungen des Speichers 104, die für den Host möglicherweise nicht sichtbar sind. Dementsprechend versucht die FTL, die Schreibvorgänge vom Host in Schreibvorgänge in den Speicher 104 zu übersetzen.
  • Die FTL kann eine logisch-physische Adressabbildung (L2P) und einen zugewiesenen Cache-Speicher einschließen. Auf diese Weise übersetzt die FTL logische Blockadressen („LBAs“) von dem Host in physische Adressen in dem Speicher 104. Die FTL kann andere Merkmale einschließen, wie, ohne darauf beschränkt zu sein, eine Power-off Recovery (so dass die Datenstrukturen der FTL im Fall eines plötzlichen Stromausfalls wiederhergestellt werden können) und einen Verschleißausgleich (so dass der Verschleiß über Speicherblöcke gleichmäßig ist, um zu verhindern, dass bestimmte Blöcke übermäßigem Verschleiß unterliegen, was zu einer größeren Wahrscheinlichkeit eines Ausfalls führen würde).
  • Erneut Bezug nehmend auf die Zeichnungen ist 3 ein Blockdiagramm eines Systems gemäß einer Ausführungsform, das einen Host 300 und das Speichersystem 100 aufweist. Der Host 300 kann jede geeignete Form annehmen, einschließlich, aber nicht beschränkt auf, einen Computer, ein Mobiltelefon, ein Tablet, eine tragbare Vorrichtung, einen digitalen Videorecorder, ein Überwachungssystem usw. Der Host 300 in dieser Ausführungsform weist einen Prozessor 320 und einen Speicher 330 auf. Der Prozessor 320 ist eingerichtet, um einen Videoeinzelbild-Segregator 340 zu implementieren. In einer Ausführungsform wird computerlesbarer Programmcode des Videoeinzelbild-Segregators 340 im Speicher 330 gespeichert und vom Prozessor 320 ausgeführt (d. h. der Videoeinzelbild-Segregator 340 kann Software/Firmware sein, die von Hardware ausgeführt wird). Gemäß einer anderen Ausführungsform ist der Videoeinzelbild-Segregator 340 ausschließlich in Hardware implementiert. In jedem Fall kann in einer Ausführungsform der Videoeinzelbild-Segregator 340 verwendet werden, um verschiedene Videoeinzelbilder aus einem Videostrom zu extrahieren, wie hierin gezeigt und beschrieben.
  • Wie oben erwähnt, kann ein Speichersystem verwendet werden, um einen Datenstrom zu speichern, der von einem Host an dieses gesendet wird. In einer Überwachungs- oder digitalen Videorecorder-Umgebung (DVR-Umgebung) können die Daten im Moving Picture Experts Group Transport Stream-Format (MPEG-TS-Format) gespeichert werden. Der gesamte Strom wird als eine Einheit gespeichert, was in der Regel vorteilhaft ist, da die Daten auf diese Weise einfach gespeichert und abgerufen werden können. Dies führt jedoch zu einheitlichen Dateneigenschaften (z. B. Lebensdauer) über das gesamte Datenspektrum hinweg, was in der Regel nicht erforderlich ist. Ferner erfordern praktische Anwendungen tendenziell dynamischen Schutz, dynamische Lebensdauer und dynamische Wiederherstellbarkeit für verschiedene Datentypen und manchmal gemäß einer Datenquelle, wie in Überwachungsumgebungen.
  • Auch muss bei Überwachungsdaten nach einem Zeitraum (z. B. zwei Monate) in der Regel nur ein Teil der Daten gespeichert werden. Dies geschieht in der Regel, um mit Speicheranforderungen Schritt zu halten, wobei die Dienstgüte älterer Daten gegen Speicherkapazität eingetauscht wird (z. B. bis 50 % des Speichers). Um die nicht benötigten Daten zu entfernen, wird der Datenstrom aus dem Speicher ausgelesen, die nicht benötigten Videoeinzelbilder werden entfernt und der resultierende neue Strom wieder wird in dem Speicher gespeichert, was ein ineffizienter Prozess sein kann, der die Leistung reduziert und die Schreibverstärkung erhöht. Ferner sind die Einzelbilder, die entfernt werden, mit den gleichen Lebensdauer- und Schutzparametern gespeichert, wie die, die beibehalten werden. Die gleiche Problematik liegt bei unterschiedlichen Paketkennungen vor.
  • Die folgenden Ausführungsformen können verwendet werden, um diese Probleme zu beheben. Genauer gesagt, werden in einer Ausführungsform eine Vielzahl von unterschiedlichen Videoeinzelbild-Typen aus einem Videostrom extrahiert (entweder durch den Host 300 oder das Speichersystem 100), und Videoeinzelbilder unterschiedlicher Videoeinzelbild-Typen werden unter Verwendung unterschiedlicher Speicheroptionen in dem Speicher des Speichersystems gespeichert, wobei Videoeinzelbilder eines Videoeinzelbild-Typs mit einer anderen Speicheroption als Videoeinzelbilder eines anderen Videoeinzelbild-Typs gespeichert werden. Dies geht das oben erwähnte Problem an, bei dem das Speichern der MPEG-TS-Daten als ein einzelner Strom Durchsatzprobleme erzeugt, wenn die Daten nach einer verstrichenen Zeit schrittweise reduziert werden. Diese Ausführungsform erkennt, dass einige Einzelbilder wichtiger sind als andere Einzelbilder, so dass sie mit unterschiedlichen Speicheroptionen, wie Lebensdauer und Schutz, gespeichert werden können. Diese Ausführungsformen können auch an verschiedenen Paketkennungen (PIDs) durchgeführt werden, welche die Daten sind, durch die einzelne Tabellen oder Elementarströme in einem Transportstrom identifiziert werden. Durch die Verwendung des „segregierten Routings“ dieser Ausführungsform kann die Leistung erhöht und die Schreibverstärkung verringert werden.
  • Die folgenden Absätze stellen eine beispielhafte Verwendung einer Ausführungsform bereit, bei der der Datenstrom im MPEG-TS-Format vorliegt. Es versteht sich, dass dies nur ein Beispiel ist und andere Arten von Formaten, Einzelbild-Typen und Speicheroptionen verwendet werden können.
  • Im Allgemeinen werden bei der Videokompression unterschiedliche Videoeinzelbilder unter Verwendung unterschiedlicher Kompressionsalgorithmen komprimiert. Verschiedene Videoeinzelbilder können in verschiedene Bild- oder Einzelbild-Typen eingeteilt werden. Drei der Hauptbildtypen sind intra-codierte Einzelbilder (I-Bilder), differenzcodierte Einzelbilder (P-Bilder) und bidirektionale differenzcodierte Einzelbilder (B-Bilder). I-Bilder sind am wenigsten komprimierbar, aber insofern unabhängig, als sie ohne Bezugnahme auf andere Videoeinzelbilder decodiert werden können. Ein I-Bild kann ein vollständiges Bild sein, wie beispielsweise eine Joint Photographic Experts Group-Bilddatei (JPEG-Bilddatei). Im Gegensatz dazu enthält ein differenzcodiertes Einzelbild (P-Bild) (oder Deltaeinzelbild) die Änderungen im Bild aus dem vorherigen Einzelbild und erfordert die Bezugnahme auf andere zu dekomprimierende Videoeinzelbilder. P-Bilder sind jedoch komprimierbarer als I-Bilder. Ein bidirektionales differenzcodiertes Einzelbild (B-Bild) enthält Unterschiede zwischen dem aktuellen Einzelbild und sowohl dem vorhergehenden als auch dem nachfolgenden Einzelbild. Dementsprechend stellen B-Bilder die höchste Menge an Datenkompression bereit.
  • Wie oben erwähnt, können entweder der Host 300 und/oder das Speichersystem 100 Einzelbilder aus dem Videostrom extrahieren. Die 4 und 5 werden nun erörtert, um diese beiden jeweiligen Optionen zu veranschaulichen.
  • Bezug nehmend zuerst auf 4 steht in diesem Beispiel der Host 300 in Kommunikation mit einem Überwachungssystem. Die Erfindung betrifft ein Überwachungssystem mit zwei oder mehr Kameras mit Encodern, die jeweils ein Programm mit Audio- und Videokomponenten ausgeben. Diese Programme werden dem Host 300 im MPEG-TS-Format bereitgestellt. Wenn der Host 300 die Programme empfängt, extrahiert der Videoeinzelbild-Segregator 340 des Prozessors 340 des Hosts 300 die Elementarströme (ESs) aus den gepackten Audio- und Videokennungen (PIDs) eines jeden Programms (d. h. die PIDs werden aus dem MPEG-TS extrahiert, dann werden die entsprechenden Audio-/Video-ESs aus diesen Programm-PIDs erhalten). Die Elementarströme sind die Ausgänge der Audio/Video-Codierer der Kameras, die nur eine Art von Daten (z. B. Audio oder Video) enthalten. Basierend auf den Informationen in den Paketkennungen kann der Videoeinzelbild-Segregator 340 die verschiedenen Videoeinzelbild-Typen in dem Videostrom identifizieren. Mit diesen Informationen extrahiert der Videoeinzelbild-Segregator 340 separat die I-, B- und/oder P-Bilder.
  • Der Prozessor 320 des Hosts 300 gibt dann Befehle an das Speichersystem 100 aus, um die verschiedenen Einzelbilder (und optional die verschiedenen PIDs) mit verschiedenen Speicheroptionen zu speichern. Zum Beispiel können die I-Bilder mit einem hohen Schutzgrad und einer Lese-Wiederherstellbarkeitsoption zu dem Speichersystem 100 geleitet werden, und die B- und P-Bilder können mit einer Schnellausfall- oder einer Standardspeicheroption zu dem Speichersystem 100 geleitet werden. Auf diese Weise streamt der Host 300 Einzelbilder des Elementarstroms und nicht der Transportstrom. Da I-Bilder, die einzeln dekodierbar sind, zur höheren Lebensdauer getrennt gespeichert werden, wird ein Strom von einzeln dekodierbaren Videoeinzelbildern zu einem Speicherblock gestreamt. Diese einzelnen Einzelbilder können vom Transportstrom unterschieden werden, da der Transportstrom der MPEG-Spezifikation folgt, die eine Programmzuordnungstabelle (PAT), Programmabbildungstabelle (PMT) und andere Datenstrukturen, die in einzelnen Videoeinzelbildern nicht vorhanden sind, aufweist.
  • Das Speichersystem 100 speichert dann die verschiedenen Einzelbilder mit den verschiedenen Speicheroptionen im Speicher 104. Zum Beispiel kann das Speichersystem 100 auf Anweisung des Hosts 300 die I-Bilder mit einem hohen Lebensdauerzuschnitt in einem separaten Speicherblock 104 speichern und die B- und P-Bilder mit einem standardmäßigen/geringeren Lebensdauerzuschnitt in einem anderen Speicherblock speichern. Wenn die I-Bilder die Einzelbilder sind, die beibehalten werden, und die B- und P-Bilder die Einzelbilder sind, die zur stufenweisen Reduzierung gelöscht werden, kann es bevorzugt sein, die I-Bilder mit höherer Speicherlebensdauer als die B- und P-Bilder zu speichern. Wenn B- und P-Bilder vor den I-Bilder gelöscht werden, benötigen die B- und P-Bilder keine so hohe Lebensdauer wie die I-Bilder, die länger gespeichert werden. (Es ist jedoch nicht immer der Fall, dass die Deltaeinzelbilder vor den I-Bilder gelöscht werden.) Auf diese Weise kann die Durchführung der Speicherung verschiedener Einzelbilder mit verschiedenen Speicheroptionen anstelle der Speicherung des Videostroms als eine einzige Einheit verwendet werden, um von Speicherparametern zu profitieren.
  • Dies bietet Vorteile gegenüber dem bisherigen Ansatz, den gesamten Videostrom als eine Einheit im Speicher 104 des Speichersystems zu speichern. Im Allgemeinen werden I-Bilder in Anwendungen, wie der Überwachung, als kritisch angesehen, da sie für die Videowiedergabe grundlegend sind. P-Bilder und B-Bilder sind Deltaeinzelbilder, ohne die ein Video zwar noch aufrechterhalten werden kann, jedoch mit einer gewissen Verschlechterung der Dienstgüte, da sie gewöhnlich dem Bewegtvideo Ruckelfreiheit verleihen. Das Routen von I-Bilder getrennt von den Deltaeinzelbildern (den P- und B-Bildern) in verschiedene Speicherblöcke ermöglicht es, den Deltaeinzelbild-Block insgesamt zu reinigen, was den Hintergrundverschiebungsprozess erleichtert, wenn das Video stufenweise reduziert werden soll. Die I-Bilder werden länger in einem separaten Block gehalten, ohne dass es zu Schwierigkeiten bei der Speicherbereinigung kommt. Dadurch wird das stufenweise Reduzieren älterer Videodaten mit in jeder Stufe verringerter Dienstgüte optimiert. Somit kann diese Ausführungsform verwendet werden, um unterschiedliche Datenmengen/Redundanz für die verschiedenen Einzelbild-Typen bereitzustellen. Ferner wird, abgesehen von der optimalen Speichersystemleistung, die Gesamtlebensdauer des Speichers 104 erhöht, da die Daten gut segregiert und in das Ziel geschrieben werden, in das sie gehören sollten. Die Verbesserung der Lebensdauer hat einen Kostenvorteil, da weniger Blöcke für die gleiche Anzahl von Vorrichtungszyklen erforderlich sind. Ein solcher Vorteil sorgt im kostensensiblen Einzelhandelssektor für Mehrwert. Außerdem kann das Segregieren und Speichern verschiedener Videoeinzelbilder gemäß ihrer erwarteten Lebensdauer in dem Speichersystem 100 zu weniger Speicherbereinigungsvorgängen führen.
  • Wie oben erwähnt, kann die Steuerung 102 (z. B. unter Verwendung seines Videoeinzelbild-Segregators 111) anstelle des Host 300 die Einzelbilder extrahieren (die MPEG-TS-Segregation/Routing-Entscheidung kann z. B. innerhalb des Speichersystems 100 durchgeführt werden). Diese Ausführungsform ist in 5 dargestellt. 5 ist ähnlich wie 4, aber anstatt das Extrahieren von dem Host 300 durchführen zu lassen, führt die Frontend-Speichersteuerung (oder jede andere geeignete Komponente in dem Speichersystem 100) das Extrahieren durch, optional mit etwas Konfigurationsunterstützung von dem Host 300. In dieser Alternative ist das Speichersystem 100 aktiver und führt die Videoeinzelbild-Segregation selbst durch, um unabhängige codierte Medien zu erzeugen, und segregiert anschließend die Videoeinzelbilder daraus (z. B. host-gesteuert). Der Host 300 kann ein gewisses Feedback über eine Schnittstelle bereitstellen, beispielsweise darüber, welche Paketkennungen wichtig sind, und darüber, mit welchem Bevorzugungsgrad das Speichersystem 100 den Elementarstrom im Hinblick auf Datenaufbewahrung, Schutz und Wiederherstellbarkeit bevorzugen sollte. Im Betrieb kann der Host 100 einen Hinweismechanismus aufweisen, der Videoeinzelbilder zur Segregation in verschiedene Blöcke in Abhängigkeit von ihrer Verwendung kennzeichnet, und das Speichersystem 100 kann automatisch Einzelbild-Typen basierend auf den Hinweisen erkennen. Das Speichersystem 100 kann abgeleitete oder host-initiierte Eingaben verwenden, um die Videoeinzelbilder in eine Vielzahl von Speicherpools zu segregieren, die unabhängig voneinander verwaltet werden können. Der Host 300 kann auch das Speichersystem 100 anweisen, einigen Videopaketkennungen gegenüber anderen, zusammen mit den Videoeinzelbildern, Priorität bezüglich Schutz und Wiederherstellbarkeit während der Speicherung zu geben.
  • Unabhängig davon, welche Entität die Videoeinzelbild-Segregation durchführt, kann der Host 300 eingerichtet sein, um die unerwünschten Einzelbilder in dem Videostrom durch Senden einer Löschanweisung an das Speichersystem 100 nach einer verstrichenen Zeit zu entsorgen. (Alternativ kann das Speichersystem 100 mit dieser Fähigkeit eingerichtet werden.) Beispielsweise sind für eine typische Videodecodierung B- und P-Bilder von anderen Einzelbildern abhängig, während I-Bilder von keinem anderen Einzelbild abhängig sind. Dies kann im Speichersystem 100 für eine stufenweise Entfernung genutzt werden, um Kapazität in Stufen wiederzuerlangen, wobei die B- und P-Bilder in der ersten Stufe der Datenreduktion entsorgt werden und I-Bilder entsorgt werden, wenn das gesamte Videoprogramm aus dem Speichersystem 100 entfernt werden muss. Die Speicherbereinigung kann stark reduziert werden, wenn die Videoeinzelbilder im Speicher 104 mit Informationen darüber gespeichert werden, in welcher Stufe die Daten entfernt werden.
  • Als ein weiteres Beispiel wird in einem Mehrkamera-Überwachungssystem (wie in den 4 und 5) der Videostrom in der Regel aus mehreren Paketkennungen von mehreren Kameras gebildet. Der Host 300 kann entscheiden, eine einzelne oder eine Gruppe von Paketkennungen (z. B. basierend auf Priorität/Wichtigkeit des Standorts der Kamera) in einem Speicher und eine andere Gruppe von Paketkennungen in einem anderen Speicher aufzubewahren. Das Ermöglichen eines ähnlichen Videostrom-Parsing, um Elementarströme abzurufen und unterschiedliche Speicheranweisungen bereitzustellen, um ein bedarfsbasiertes Routing durchzuführen, kann den Gesamtsystemdurchsatz mit der geeigneten Lebensdauer und Leistung für unterschiedliche Datenquellen optimieren.
  • In einigen Fällen kann der Host 300 zusammen mit der Elementarstromsegregation auch wichtige und außer Acht gelassene Videopaketkennungen im Transportstrom identifizieren. Zum Beispiel können die Paketkennungen, die einer Kamera zugeordnet sind, die ein Programm in einem Bankfach/Bankschalter-Abschnitt aufnimmt, mit einer Kamera verglichen werden, die ein Programm in der Pantry-Halle erzeugt. Der Elementarstrom der entsprechenden Paketkennungen kann neben bevorzugter Einzelbild-Speicherung bevorzugt gespeichert werden.
  • Nachdem die unerwünschten Einzelbilder aus dem Speicher entfernt wurden, können die verbleibenden Einzelbilder in der Lage sein, den Videostrom in gewisser Weise neu zu erzeugen. Zum Beispiel kann der Host 300 mit der geeigneten Logik eingerichtet werden, um den MPEG-TS-Videostrom mit verkürzten Elementarströmen für eine nachfolgende Wiedergabe neu zu erzeugen.
  • Es sei darauf hingewiesen, dass es viele Alternativen gibt, die bei diesen Ausführungsformen verwendet werden können. Obwohl zum Beispiel die vorstehenden Ausführungsformen in Bezug auf Videos erörtert wurden, können diese Ausführungsformen auch auf andere Arten von Medien, wie Abbildungen, angewendet werden. Wie Videos können Abbildungen „wichtige“ Daten sowie „unwichtige“ Daten, wie Metadaten, aufweisen, die die Dienstgüte verbessern können, aber nicht decodiert werden müssen.
  • Schließlich kann, wie oben erwähnt, jeder geeignete Speichertyp verwendet werden. Halbleiterspeichervorrichtungen schließen flüchtige Speichervorrichtungen ein, wie etwa Dynamic Random Access Memory-Vorrichtungen („DRAM-Vorrichtungen“) oder Static Random Access Memory-Vorrichtungen („SRAM-Vorrichtungen“), nichtflüchtige Speichervorrichtungen, wie etwa resistiver Direktzugriffsspeicher („ReRAM“), Electrically Erasable Programmable Read Only Memory („EEPROM“), Flash-Speicher (der auch als Untergruppe eines EEPROM betrachtet werden kann), Ferroelectric Random Access Memory („FRAM“) und magnetoresistiver Direktzugriffsspeicher („MRAM“), und andere Halbleiterelemente, die Informationen speichern können. Jeder Typ von Speichervorrichtung kann unterschiedliche Konfigurationen aufweisen. Zum Beispiel können Flash-Speichervorrichtungen in einer NAND- oder NOR-Konfiguration eingerichtet sein.
  • Die Speichervorrichtungen können aus passiven und/oder aktiven Elementen in beliebigen Kombinationen gebildet sein. Als ein nicht einschränkendes Beispiel schließen passive Halbleiterspeicherelemente ReRAM-Vorrichtungselemente ein, die in einigen Ausführungsformen ein Speicherelement mit Widerstandsumschaltung, wie eine Anti-Sicherung, Phasenwechselmaterial usw., und optional ein Lenkelement, wie eine Diode usw., einschließen. Weiterhin schließen als nicht einschränkendes Beispiel aktive Halbleiterspeicherelemente EEPROM- und Flash-Speicher-Vorrichtungselemente ein, die in einigen Ausführungsformen Elemente einschließen, die einen Ladungsspeicherbereich, wie ein Floating-Gate, leitende Nanopartikel oder ein dielektrisches Material zur Ladungsspeicherung, einschließen.
  • Mehrere Speicherelemente können derart eingerichtet sein, dass sie in Reihe geschaltet sind, oder derart, dass jedes Element einzeln zugänglich ist. Als nicht einschränkendes Beispiel enthalten Flash-Speichervorrichtungen in einer NAND-Konfiguration (NAND-Speicher) üblicherweise Speicherelemente, die in Reihe geschaltet sind. Ein NAND-Speicherarray kann derart eingerichtet sein, dass das Array aus mehreren Speicherketten zusammengesetzt ist, in denen eine Kette aus mehreren Speicherelementen zusammengesetzt ist, die sich eine einzelne Bitleitung teilen und auf die als eine Gruppe zugegriffen wird. Alternativ können Speicherelemente derart eingerichtet sein, dass jedes Element einzeln zugänglich ist, z. B. ein NOR-Speicherarray. NAND- und NOR-Speicherkonfigurationen sind Beispiele, und Speicherelemente können anderweitig eingerichtet sein.
  • Die Halbleiterspeicherelemente, die in und/oder über einem Substrat angeordnet sind, können in zwei oder drei Dimensionen angeordnet sein, wie einer zweidimensionalen Speicherstruktur oder einer dreidimensionalen Speicherstruktur.
  • In einer zweidimensionalen Speicherstruktur sind die Halbleiterspeicherelemente in einer einzelnen Ebene oder einer einzelnen Speichervorrichtungsebene angeordnet. Üblicherweise sind Speicherelemente in einer zweidimensionalen Speicherstruktur in einer Ebene (z. B. in einer x-z-Richtung-Ebene) angeordnet, die sich im Wesentlichen parallel zu einer Hauptoberfläche eines Substrats erstreckt, das die Speicherelemente trägt. Das Substrat kann ein Wafer sein, über oder in dem die Schicht der Speicherelemente gebildet ist, oder es kann ein Trägersubstrat sein, das an den Speicherelementen befestigt wird, nachdem diese ausgebildet wurden. Als ein nicht einschränkendes Beispiel kann das Substrat einen Halbleiter, wie Silizium, einschließen.
  • Die Speicherelemente können auf der einzelnen Speichervorrichtungsebene in einem geordneten Array angeordnet sein, wie in einer Vielzahl von Zeilen und/oder Spalten. Jedoch können die Speicherelemente auch in nicht regelmäßigen oder nicht orthogonalen Konfigurationen angeordnet sein. Die Speicherelemente können jeweils zwei oder mehr Elektroden oder Kontaktleitungen, wie Bitleitungen und Wortleitungen, aufweisen.
  • Ein dreidimensionales Speicherarray ist derart angeordnet, dass Speicherelemente mehrere Ebenen oder mehrere Speichervorrichtungsebenen belegen, wodurch eine Struktur in drei Dimensionen gebildet wird (d. h. in der x-, y- und z-Richtung, wobei die y-Richtung im Wesentlichen senkrecht und die x- und z-Richtungen im Wesentlichen parallel zu der Hauptoberfläche des Substrats verlaufen).
  • Als ein nicht einschränkendes Beispiel kann eine dreidimensionale Speicherstruktur vertikal als ein Stapel von mehreren zweidimensionalen Speichervorrichtungsebenen angeordnet sein. Als weiteres nicht einschränkendes Beispiel kann ein dreidimensionales Speicherarray als mehrere vertikale Spalten (z. B. Spalten, die sich im Wesentlichen senkrecht zu der Hauptoberfläche des Substrats erstrecken, d. h. in y-Richtung) angeordnet sein, wobei jede Spalte mehrere Speicherelemente in jeder Spalte aufweist. Die Spalten können in einer zweidimensionalen Konfiguration angeordnet sein, z. B. in einer x-z-Ebene, was zu einer dreidimensionalen Anordnung von Speicherelementen mit Elementen auf mehreren vertikal gestapelten Speicherebenen führt. Andere Konfigurationen von Speicherelementen in drei Dimensionen können ebenfalls ein dreidimensionales Speicherarray bilden.
  • Als nicht einschränkendes Beispiel können in einem dreidimensionalen NAND-Speicherarray die Speicherelemente miteinander gekoppelt sein, um eine NAND-Kette innerhalb einer einzelnen horizontalen (z. B. x-y-) Speichervorrichtungsebenen zu bilden. Alternativ können die Speicherelemente miteinander gekoppelt sein, um eine vertikale NAND-Kette zu bilden, die über mehrere horizontale Speichervorrichtungsebenen verläuft. Andere dreidimensionale Konfigurationen können in Betracht gezogen werden, wobei einige NAND-Ketten Speicherelemente in einer einzelnen Speicherebene enthalten, während andere Ketten Speicherelemente enthalten, die sich über mehrere Speicherebenen erstrecken. Dreidimensionale Speicherarrays können auch als eine NOR-Konfiguration und als eine ReRAM-Konfiguration ausgelegt sein.
  • Üblicherweise werden in einem monolithischen dreidimensionalen Speicherarray eine oder mehrere Speichervorrichtungsebenen über einem einzelnen Substrat gebildet. Optional kann das monolithische dreidimensionale Speicherarray auch eine oder mehrere Speicherschichten mindestens teilweise innerhalb des einzelnen Substrats aufweisen. Als ein nicht einschränkendes Beispiel kann das Substrat einen Halbleiter, wie Silizium, einschließen. In einem monolithischen dreidimensionalen Array werden die Schichten, die jede Speichervorrichtungsebene des Arrays bilden, üblicherweise auf den Schichten der darunter liegenden Speichervorrichtungsebenen des Arrays gebildet. Jedoch können Schichten von benachbarten Speichervorrichtungsebenen eines monolithischen dreidimensionalen Speicherarrays gemeinsam genutzt werden oder Zwischenschichten zwischen Speichervorrichtungsebenen aufweisen.
  • Es können jedoch auch zweidimensionale Arrays getrennt gebildet und dann zusammengepackt werden, um eine nicht monolithische Speichervorrichtung mit mehreren Speicherschichten zu bilden. Zum Beispiel können nicht monolithische gestapelte Speicher konstruiert werden, indem Speicherebenen auf separaten Substraten gebildet und dann die Speicherebenen übereinander gestapelt werden. Die Substrate können vor dem Stapeln gedünnt oder von den Speichervorrichtungsebenen entfernt werden, aber da die Speichervorrichtungsebenen anfänglich über separaten Substraten gebildet werden, sind die resultierenden Speicherarrays keine monolithischen dreidimensionalen Speicherarrays. Weiterhin können mehrere zweidimensionale Speicherarrays oder dreidimensionale Speicherarrays (monolithisch oder nicht monolithisch) auf separaten Chips gebildet und dann zusammengepackt werden, um eine gestapelte Chip-Speichervorrichtung zu bilden.
  • Eine zugehörige Schaltung ist üblicherweise für den Betrieb der Speicherelemente und für die Kommunikation mit den Speicherelementen erforderlich. Als nicht einschränkende Beispiele können Speichervorrichtungen Schaltungen aufweisen, die zum Steuern und Ansteuern von Speicherelementen verwendet werden, um Funktionen, wie Programmieren und Lesen, auszuführen. Diese zugehörige Schaltung kann sich auf demselben Substrat wie die Speicherelemente und/oder auf einem separaten Substrat befinden. Zum Beispiel kann eine Steuerung für Schreib-/Lesevorgänge des Speichers auf einem separaten Steuerungschip und/oder auf demselben Substrat wie die Speicherelemente angeordnet sein.
  • Ein Fachmann wird erkennen, dass diese Erfindung nicht auf die beschriebenen zweidimensionalen und dreidimensionalen Strukturen beschränkt ist, sondern alle relevanten Speicherstrukturen innerhalb des Wesens und Umfangs der Erfindung abdeckt, wie es hierin beschrieben ist und wie es von einem Fachmann verstanden wird.
  • Es ist beabsichtigt, dass die vorstehende detaillierte Beschreibung als eine Veranschaulichung ausgewählter Formen, die die Erfindung annehmen kann, und nicht als eine Definition der Erfindung verstanden wird. Es sind nur die folgenden Ansprüche, einschließlich aller Äquivalente, die den Umfang der beanspruchten Erfindung definieren sollen. Schließlich sei darauf hingewiesen, dass jeder Gesichtspunkt von jeder der hierin beschriebenen Ausführungsformen allein oder in Kombination miteinander verwendet werden kann.

Claims (20)

  1. Speichersystem, aufweisend: einen Speicher; und eine Steuerung, die eingerichtet ist zum: Empfangen eines Videostroms von einem Host; Identifizieren einer Vielzahl von Videoeinzelbild-Typen aus dem Videostrom; und Speichern von Videoeinzelbildern verschiedener Videoeinzelbild-Typen in dem Speicher unter Verwendung verschiedener Speicheroptionen.
  2. Speichersystem nach Anspruch 1, wobei die unterschiedlichen Speicheroptionen unterschiedliche Lebensdauergrade sind.
  3. Speichersystem nach Anspruch 1, wobei ein erster Videoeinzelbild-Typ ein intra-codiertes Einzelbild (I-Bild) ist und ein zweiter Videoeinzelbild-Typ ein differenzcodiertes Einzelbild (P-Bild) oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild) ist.
  4. Speichersystem nach Anspruch 3, wobei ein I-Bild mit einem höheren Lebensdauergrad als ein P-Bild oder ein B-Bild gespeichert wird.
  5. Speichersystem nach Anspruch 1, wobei die Steuerung ferner eingerichtet ist, nach einem verstrichenen Zeitraum Videoeinzelbilder eines Videoeinzelbild-Typs zu löschen, während die Videoeinzelbilder eines anderen Videoeinzelbild-Typs behalten werden.
  6. Speichersystem nach Anspruch 1, wobei die Steuerung eingerichtet ist, um die Vielzahl von Videoeinzelbild-Typen basierend auf Informationen zu identifizieren, die von dem Host empfangen werden.
  7. Speichersystem nach Anspruch 1, wobei der Speicher einen dreidimensionalen Speicher aufweist.
  8. Speichersystem nach Anspruch 1, wobei das Speichersystem dafür eingerichtet ist, in einen Host integriert zu sein.
  9. Speichersystem nach Anspruch 1, wobei das Speichersystem dafür eingerichtet ist, trennbar mit einem Host verbunden zu sein.
  10. Verfahren zur Videoeinzelbild-Segregation, wobei das Verfahren aufweist: Durchführen des Folgenden in einem Speichersystem, das in Kommunikation mit einem Host steht, wobei das Speichersystem einen Speicher umfasst: Empfangen, von dem Host, einer Vielzahl von Videoeinzelbildern, die von dem Host aus einem Videostrom extrahiert werden; Empfangen, von dem Host, von Anweisungen zu einem Speicherparameter, der von dem Speichersystem verwendet werden soll, um jedes der Videoeinzelbilder zu speichern, wobei Videoeinzelbilder unterschiedlicher Videoeinzelbild-Typen unterschiedliche Speicherparameter aufweisen; und Speichern jedes Einzelbilds der Vielzahl von Videoeinzelbildern in dem Speicher unter Verwendung der durch den Host spezifizierten Speicherparameter.
  11. Verfahren nach Anspruch 10, wobei die unterschiedlichen Speicherparameter unterschiedliche Lebensdauergrade sind.
  12. Verfahren nach Anspruch 10, wobei ein erster Videoeinzelbild-Typ ein intra-codiertes Einzelbild (I-Bild) ist und ein zweiter Videoeinzelbild-Typ ein differenzcodiertes Einzelbild (P-Bild) oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild) ist.
  13. Verfahren nach Anspruch 12, wobei ein I-Bild mit einem höheren Lebensdauergrad als ein P-Bild oder ein B-Bild gespeichert wird.
  14. Verfahren nach Anspruch 10, ferner umfassend: Löschen von Videoeinzelbildern eines Videoeinzelbild-Typs nach einem verstrichenen Zeitraum, während die Videoeinzelbilder eines anderen Videoeinzelbild-Typs behalten werden.
  15. Speichersystem, aufweisend: einen Speicher; und Mittel zum Speichern verschiedener Videoeinzelbilder aus einem Videostrom in dem Speicher unter Verwendung verschiedener Speicherparameter gemäß der erwarteten Speicherlebensdauer eines Videoeinzelbilds in dem Speicher.
  16. Speichersystem nach Anspruch 15, wobei die unterschiedlichen Speicherparameter unterschiedliche Lebensdauergrade sind.
  17. Speichersystem nach Anspruch 15, wobei die verschiedenen Videoeinzelbilder (i) ein intra-codiertes Einzelbild (I-Bild) und (ii) ein differenzcodiertes Einzelbild (P-Bild) und/oder ein bidirektionales differenzcodiertes Einzelbild (B-Bild) aufweisen.
  18. Speichersystem nach Anspruch 15, wobei der Speicher einen dreidimensionalen Speicher umfasst.
  19. Speichersystem nach Anspruch 15, wobei das Speichersystem dafür eingerichtet ist, in einen Host integriert zu sein.
  20. Speichersystem nach Anspruch 15, wobei das Speichersystem dafür eingerichtet ist, trennbar mit einem Host verbunden zu sein.
DE112020000177.6T 2019-12-09 2020-03-25 Speichersystem und verfahren zur videoeinzelbild-segregation zum optimieren der speicherung Pending DE112020000177T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/708,091 US10841645B1 (en) 2019-12-09 2019-12-09 Storage system and method for video frame segregation to optimize storage
US16/708,091 2019-12-09
PCT/US2020/024635 WO2021118619A1 (en) 2019-12-09 2020-03-25 Storage system and method for video frame segregation to optimize storage

Publications (1)

Publication Number Publication Date
DE112020000177T5 true DE112020000177T5 (de) 2021-09-02

Family

ID=73264128

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020000177.6T Pending DE112020000177T5 (de) 2019-12-09 2020-03-25 Speichersystem und verfahren zur videoeinzelbild-segregation zum optimieren der speicherung

Country Status (4)

Country Link
US (1) US10841645B1 (de)
CN (1) CN113316817B (de)
DE (1) DE112020000177T5 (de)
WO (1) WO2021118619A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11575978B2 (en) 2021-06-01 2023-02-07 Western Digital Technologies, Inc. Data storage device and method for reliable watermarking
US11546612B2 (en) * 2021-06-02 2023-01-03 Western Digital Technologies, Inc. Data storage device and method for application-defined data retrieval in surveillance systems
US11601656B2 (en) 2021-06-16 2023-03-07 Western Digital Technologies, Inc. Video processing in a data storage device
US20240298044A1 (en) * 2023-03-03 2024-09-05 Western Digital Technologies, Inc. Data Storage Device and Method for Selecting a Data Recovery Mechanism Based on a Video Frame Position

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5099150A (en) 1989-09-29 1992-03-24 Sgs-Thomson Microelectronics, Inc. Circuit block for programmable logic devices, configurable as a user-writable memory or a logic circuit
US6839725B2 (en) 2000-05-16 2005-01-04 Sun Microsystems, Inc. Dynamic adaptive tenuring of objects
US6646676B1 (en) 2000-05-17 2003-11-11 Mitsubishi Electric Research Laboratories, Inc. Networked surveillance and control system
US6920281B1 (en) * 2000-06-30 2005-07-19 Koninklijke Philips Electronics N.V. Video memory manager for use in a video recorder and method of operation
US6542075B2 (en) 2000-09-28 2003-04-01 Vigilos, Inc. System and method for providing configurable security monitoring utilizing an integrated information portal
US7088910B2 (en) * 2001-02-09 2006-08-08 Microsoft Corporation Optimizing use of storage space in a video data recording system
US7631327B2 (en) 2001-08-08 2009-12-08 Accenture Global Services Gmbh Enhanced custom content television
JP2004062916A (ja) * 2002-06-05 2004-02-26 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
US7433582B2 (en) 2002-06-25 2008-10-07 International Business Machines Corporation Personal video recording with machine learning for messaging
US6768661B2 (en) 2002-06-27 2004-07-27 Matrix Semiconductor, Inc. Multiple-mode memory and method for forming same
KR100565307B1 (ko) * 2003-11-24 2006-03-30 엘지전자 주식회사 이동 통신 단말기의 스트리밍 콘텐츠 저장 방법
US7697026B2 (en) 2004-03-16 2010-04-13 3Vr Security, Inc. Pipeline architecture for analyzing multiple video streams
US7302159B2 (en) * 2004-11-12 2007-11-27 Pelco Apparatus and method of storing video data
US20060190419A1 (en) 2005-02-22 2006-08-24 Bunn Frank E Video surveillance data analysis algorithms, with local and network-shared communications for facial, physical condition, and intoxication recognition, fuzzy logic intelligent camera system
KR20080044616A (ko) * 2006-11-17 2008-05-21 엘지전자 주식회사 디지털 비디오 레코더에서의 기록 제어방법
KR100858614B1 (ko) * 2007-03-08 2008-09-17 삼성에스디아이 주식회사 유기전계발광표시장치 및 그의 구동방법
US8356061B2 (en) 2008-06-23 2013-01-15 Oracle America, Inc. Maximizing throughput for a garbage collector
EP2141928A1 (de) 2008-06-30 2010-01-06 Thomson Licensing S.A. Vorrichtung und Verfahren zur Analyse eines kodierten Bildes
EP2377277A4 (de) * 2008-12-10 2013-08-28 Motorola Solutions Inc Verfahren und system für deterministischen paketverwurf
JP5100667B2 (ja) 2009-01-09 2012-12-19 キヤノン株式会社 画像符号化装置及び画像符号化方法
US9215423B2 (en) 2009-03-30 2015-12-15 Time Warner Cable Enterprises Llc Recommendation engine apparatus and methods
US8725940B2 (en) 2010-02-27 2014-05-13 Cleversafe, Inc. Distributedly storing raid data in a raid memory and a dispersed storage network memory
EP2407943B1 (de) 2010-07-16 2016-09-28 Axis AB Verfahren zur ereignisinitiierter Videoaufnahme und Videokamera zur Aufnahme eines ereignisinitiierten Videos
US9414109B2 (en) 2011-08-31 2016-08-09 Tivo Inc. Multimedia program recording schedule manager
US8825721B2 (en) 2011-10-03 2014-09-02 Oracle International Corporation Time-based object aging for generational garbage collectors
US8516019B2 (en) 2011-10-03 2013-08-20 Oracle America, Inc. Time-based object aging for generational garbage collectors
US20140078256A1 (en) * 2011-12-28 2014-03-20 Panasonic Corporation Playback device, transmission device, playback method and transmission method
US9037921B1 (en) 2012-03-29 2015-05-19 Amazon Technologies, Inc. Variable drive health determination and data placement
US8855466B2 (en) * 2012-05-01 2014-10-07 Eldon Technology Limited Separate video file for I-frame and non-I-frame data to improve disk performance in trick play
KR102094902B1 (ko) 2013-07-08 2020-03-30 삼성전자주식회사 액티브 상태에서 인터페이스 모드를 전환하는 스토리지 시스템 및 ufs 시스템
CN104580969A (zh) * 2013-10-23 2015-04-29 中兴通讯股份有限公司 录像帧率调整方法和装置
US20150237351A1 (en) 2014-02-18 2015-08-20 Penne Lee Techniques for inclusion of region of interest indications in compressed video data
US9354794B2 (en) 2014-07-07 2016-05-31 Google Inc. Method and system for performing client-side zooming of a remote video feed
CN105335437A (zh) 2014-08-11 2016-02-17 中兴通讯股份有限公司 数据的处理方法及装置
US10007442B2 (en) 2014-08-20 2018-06-26 Sandisk Technologies Llc Methods, systems, and computer readable media for automatically deriving hints from accesses to a storage device and from file system metadata and for optimizing utilization of the storage device based on the hints
US10228854B2 (en) 2014-08-20 2019-03-12 Sandisk Technologies Llc Storage devices and methods for optimizing use of storage devices based on storage device parsing of file system metadata in host write operations
US9836248B2 (en) 2014-10-30 2017-12-05 ScaleFlux In-memory data compression complementary to host data compression
GB201508074D0 (en) 2015-05-12 2015-06-24 Apical Ltd People detection
US20160345009A1 (en) 2015-05-19 2016-11-24 ScaleFlux Accelerating image analysis and machine learning through in-flash image preparation and pre-processing
US9578278B1 (en) * 2015-10-20 2017-02-21 International Business Machines Corporation Video storage and video playing
KR102618049B1 (ko) 2016-02-02 2023-12-27 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 비디오 스트리밍의 관심 장면 섹션 및 영역 처리
US9781479B2 (en) 2016-02-29 2017-10-03 Rovi Guides, Inc. Methods and systems of recommending media assets to users based on content of other media assets
US10095445B2 (en) 2016-03-29 2018-10-09 Western Digital Technologies, Inc. Systems and methods for offloading processing from a host to storage processing units using an interconnect network
KR101923661B1 (ko) 2016-04-04 2018-11-29 주식회사 맴레이 플래시 기반 가속기 및 이를 포함하는 컴퓨팅 디바이스
US11010431B2 (en) 2016-12-30 2021-05-18 Samsung Electronics Co., Ltd. Method and apparatus for supporting machine learning algorithms and data pattern matching in ethernet SSD
US10452278B2 (en) 2017-03-24 2019-10-22 Western Digital Technologies, Inc. System and method for adaptive early completion posting using controller memory buffer
KR20180114972A (ko) 2017-04-11 2018-10-22 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10592121B2 (en) 2017-09-14 2020-03-17 Samsung Electronics Co., Ltd. Quasi-synchronous protocol for large bandwidth memory systems
US10587919B2 (en) 2017-09-29 2020-03-10 International Business Machines Corporation Cognitive digital video filtering based on user preferences
TWI674505B (zh) 2017-11-30 2019-10-11 宜鼎國際股份有限公司 資料存取效率的預估方法
US10747659B2 (en) 2018-02-06 2020-08-18 Western Digital Technologies, Inc. Flash fast program mode for high definition video recording and high resolution camera burst mode recording
US11025942B2 (en) 2018-02-08 2021-06-01 Samsung Electronics Co., Ltd. Progressive compressed domain computer vision and deep learning systems
CN110300134B (zh) * 2018-03-22 2022-10-04 杭州海康威视系统技术有限公司 云存储资源池的存储空间调整方法、装置及云存储系统

Also Published As

Publication number Publication date
CN113316817B (zh) 2023-03-10
US10841645B1 (en) 2020-11-17
WO2021118619A1 (en) 2021-06-17
CN113316817A (zh) 2021-08-27

Similar Documents

Publication Publication Date Title
DE112020000177T5 (de) Speichersystem und verfahren zur videoeinzelbild-segregation zum optimieren der speicherung
DE60303895T2 (de) Hybridimplementierung von Fehlerkorrekturkoden eines nichtflüchtigen Speichersystems
DE112020000184T5 (de) In zonen unterteilte namensräume in festkörperlaufwerken
DE112016004760T5 (de) System und Verfahren für direktes Schreiben auf einen MLC-Speicher
DE102020107659A1 (de) Zonenbildung für gezonte namensräume
DE112016004629T5 (de) Datencodiertechniken für eine Vorrichtung
DE102018123891A1 (de) Handhabung nichtabgestimmter Schreibvorgänge
DE112018004275T5 (de) Raid-array-wiederherstellungsunterstützung anhand einer externen array-kopie
DE102018106154A1 (de) Faltungsoperationen in datenspeichersystemen mit einzeladressenaktualisierungen
DE112017005955T5 (de) Speichersystem und verfahren zur schlanken speicherzuweisung
DE112018000834T5 (de) System und verfahren zur adaptiven befehlsabruf-aggregation
DE112015000378T5 (de) Selektives Rückkopieren für einen auf einem Chipplättchen gepufferten nichtflüchtigen Speicher
DE102021115373A1 (de) Identifizierte zonen für zonen mit optimaler paritätsteilung
DE112020006139T5 (de) Vor-lese-und lese-schwellenspannungsoptimierung
DE102012112354A1 (de) Speichervorrichtung und nichtflüchtige Speichervorrichtung sowie Betriebsverfahren davon
DE112017005637T5 (de) Verfahren und System zur Schreibverstärkungsanalyse
DE112015005102T5 (de) Systeme und verfahren zum erzeugen von einem hostbefehl zugeordneten hinweisinformationen
DE112018000230T5 (de) System und Verfahren zur spekulativen Befehlsausführung unter Verwendung des Steuerungsspeicherpuffers
DE102019124668A1 (de) Transistorschwellenspannungshaltung in 3d-speicher
DE112019000161T5 (de) Speicher-cache-verwaltung
DE112020000143T5 (de) Ssd-system, das einschaltzyklus-basierten read-scrub verwendet
DE112020000159T5 (de) Systeme und verfahren zum definieren von speicher-unterblöcken
DE112022000468T5 (de) Unterschiedliche schreibpriorisierung in zns-vorrichtungen
DE112022000525T5 (de) Datenspeicherungsvorrichtung und verfahren zur verhinderung von versehentlichen aktualisierungen und löschungen bei der verwendung von datenversionierung
DE112021000139T5 (de) Speicherungssystem und verfahren zum verwenden von zugewiesenem speicher in einem host für lesedaten als host-speicherpuffer

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MURGITROYD GERMANY PATENTANWALTSGESELLSCHAFT M, DE

Representative=s name: MEWBURN ELLIS LLP, DE

R082 Change of representative

Representative=s name: MURGITROYD GERMANY PATENTANWALTSGESELLSCHAFT M, DE

R081 Change of applicant/patentee

Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

Free format text: FORMER OWNER: WESTERN DIGITAL TECHNOLOGIES, INC., SAN JOSE, CA, US

Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES. D. STAATE, US

Free format text: FORMER OWNER: WESTERN DIGITAL TECHNOLOGIES, INC., SAN JOSE, CA, US

R081 Change of applicant/patentee

Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

Free format text: FORMER OWNER: SANDISK TECHNOLOGIES, INC. (N.D.GES. D. STAATES DELAWARE), MILPITAS, CA, US