-
Querverweis auf ähnliche Anmeldung
-
Diese Anmeldung beansprucht die Priorität der koreanischen Patentanmeldung
KR 10-2019-0142181 , eingereicht am 8. November 2019, deren Gegenstand hiermit durch Verweis aufgenommen wird.
-
Hintergrund
-
Technisches Gebiet
-
Die vorliegende Offenbarung betrifft Speichervorrichtungen, Speichersysteme und Betriebsverfahren für Speichervorrichtungen und/oder Speichersysteme.
-
Beschreibung des Stands der Technik
-
Speichervorrichtungen, die mindestens einen nichtflüchtigen Speicher umfassen, können mit Schreibfaktor (Write Amplification) assoziierte Probleme haben. Schreibfaktorprobleme können auftreten, wenn ein Verhältnis zwischen einer Anzahl an Schreibvorgängen, die durch den nichtflüchtigen Speicher ausgeführt werden, und einer Anzahl an Schreibvorgängen, die von einem Host angefordert werden, unausgewogen wird. Schreibfaktorprobleme können auftreten, wenn eine Speichervorrichtung eine große Anzahl an zufällig adressierten Schreibvorgängen durchführt. Schreibfaktorprobleme können eine Schreibperformance der Speichervorrichtung reduzieren und den Gesamtverschleiß der einzelnen nichtflüchtigen Speicherzellen erhöhen, wodurch die Lebensdauer und Zuverlässigkeit der Speichervorrichtung reduziert wird.
-
Um die schädlichen Auswirkungen des Schreibfaktors zu verringern oder zu verhindern, können logische Blockadressen (LBA), die mit einem oder mehreren Datenstreamkennung(en) (ID) assoziiert sind, in Bezug auf die Speichervorrichtung verwendet werden. Entsprechend muss die Speichervorrichtung dazu fähig sein, LBA-Werte, die mit einer Stream-ID assoziiert sind, genau zu ermitteln. Ferner muss die Speichervorrichtung dazu fähig sein, eine bestimmte Stream-ID mit LBA-Werten zu assoziieren, denen die gleiche Stream-ID zugeordnet wurde.
-
Kurzfassung
-
Ausführungsformen der vorliegenden Offenbarung schaffen eine Speichervorrichtung, die dazu fähig ist, LBA-Werte genau vorherzusagen, denen für einen Schreibvorgang die gleiche Stream-ID zugeordnet werden sollte.
-
Ausführungsformen der vorliegenden Offenbarung schaffen ein Speichersystem, das dazu fähig ist, LBA-Werte genau vorherzusagen, denen für einen Schreibvorgang die gleiche Stream-ID zugeordnet werden sollte.
-
Ausführungsformen der vorliegenden Offenbarung schaffen ein Betriebsverfahren für ein Speichersystem, das dazu fähig ist, LBA-Werte genau vorherzusagen, denen für einen Schreibvorgang die gleiche Stream-ID zugeordnet werden sollte.
-
Gemäß einem Aspekt des vorliegenden erfinderischen Konzepts wird eine Speichervorrichtung geschaffen umfassend: einen Pufferspeicher, der eingerichtet ist, eine erste Kennungs(ID)-spezifische, auf eine logische Blockadresse (LBA) bezogene Information, die mit einer ersten Stream-ID assoziiert ist und ferner mit „m“ LBA-Werten assoziiert ist, und eine zweite ID-spezifische LBA-bezogene Information, die mit einer zweiten Stream-ID assoziiert ist und ferner mit „n“ LBA-Werten assoziiert ist, zu speichem, und einen LBA-Vorhersager, der ein neuronales Netzmodell umfasst und eingerichtet ist, einen (m+k)-ten LBA-Wert basierend auf der ersten ID-spezifischen LBA-bezogenen Information vorherzusagen und einen (n+1)-ten LBA-Wert basierend auf der zweiten ID-spezifischen LBA-bezogenen Information vorherzusagen, wobei n, m, k und 1 natürliche Zahlen sind. Das neuronale Netzmodell kann eingerichtet sein, die erste ID-spezifische LBA-bezogene Information als erstes Merkmal zu empfangen, das verwendet wird, um den (m+k)-ten LBA-Wert vorherzusagen, die zweite ID-spezifische LBA-bezogene Information als zweites Merkmal zu empfangen, das verwendet wird, um den (n+1)-ten LBA-Wert vorherzusagen, die erste Stream-ID einem LBA-Wert zuzuordnen, der größer ist als ein m-ter LBA-Wert und kleiner gleich dem (m+k)-ten LBA-Wert ist, und die zweite Stream-ID einem LBA-Wert zuzuordnen, der größer ist als ein n-ter LBA-Wert und kleiner gleich dem (n+1)-ten LBA-Wert ist.
-
Gemäß einem Aspekt des vorliegenden erfinderischen Konzepts wird eine Speichervorrichtung geschaffen umfassend: eine Schnittstelle, die eingerichtet ist, Daten und eine entsprechende logische Blockadresse (LBA) von einem Host zu empfangen, wobei die Daten erste Daten mit einer Stream-ID und/oder zweite Daten ohne eine Stream-ID umfassen, eine nichtflüchtige Speicher(NVM)-Vorrichtung, die mindestens einen nichtflüchtigen Speicher umfasst, der eingerichtet ist, die Daten zu speichern, einen Pufferspeicher, und einen LBA-Vorhersager, der eingerichtet ist, eine vorhergesagte Stream-ID für die zweiten Daten unter Verwendung eines neuronalen Netzmodells bereitzustellen, das ansprechend auf mindestens ein Merkmal arbeitet, das mit LBA-Werten assoziiert ist, welche die Speichervorrichtung von dem Host empfangen hat, wobei die ersten Daten in der NVM-Vorrichtung unter Verwendung der Stream-ID gespeichert werden und die Daten in der NVM-Vorrichtung unter Verwendung der vorhergesagten Stream-ID gespeichert werden.
-
Gemäß einem Aspekt des vorliegenden erfinderischen Konzepts wird ein Speichersystem geschaffen umfassend: einen Host, der eingerichtet ist, „m“ logische Blockadress(LBA)-Werte auszugeben; und eine Speichervorrichtung. Die Speichervorrichtung umfasst: eine Schnittstelle, die eingerichtet ist, mit dem Host zu kommunizieren und die m LBA-Werte zu empfangen, einen Pufferspeicher, der eingerichtet ist, die m LBA-Werte vorübergehend zu speichern, eine nichtflüchtige Speichervorrichtung, die eingerichtet ist, Daten entsprechend den m LBA-Werten zu speichern, und einen LBA-Vorhersager, der eingerichtet ist, einen (m+k)-ten LBA-Wert unter Verwendung eines neuronalen Netzmodells ansprechend auf eine LBA-bezogene Information vorherzusagen, die in das neuronale Netzmodell als Merkmal eingegeben wird.
-
Gemäß einem Aspekt des vorliegenden erfinderischen Konzepts wird ein Betriebsverfahren für ein Speichersystem geschaffen. Das Verfahren umfasst: Speichern von Information bezüglich einer logischen Blockadresse (LBA) in einem Pufferspeicher, wobei die LBA-bezogene Information mit „m“ LBA-Werten assoziiert ist, Vorhersagen, durch die Verwendung eines LBA-Vorhersagers, der ein neuronales Netzmodell umfasst, eines (m+k)-ten LBA-Werts ansprechend auf die LBA-bezogene Information, und Zuordnen einer vorhergesagten Stream-ID zu einem LBA-Wert, der größer ist als ein m-ter LBA-Wert und kleiner gleich dem (m+k)-ten LBA-Wert ist.
-
Jedoch sind Aspekte der vorliegenden Offenbarung nicht auf die im vorliegenden Text dargelegten Aspekte beschränkt. Die obigen sowie weitere Aspekte der vorliegenden Offenbarung werden für einen Fachmann auf dem Gebiet, zu dem die vorliegende Offenbarung gehört, anhand der folgenden detaillierten Beschreibung der vorliegenden Offenbarung besser ersichtlich sein.
-
Figurenliste
-
Die obigen sowie weitere Aspekte und Merkmale der vorliegenden Offenbarung werden anhand einer detaillierten Beschreibung beispielhafter Ausführungsformen derselben unter Bezug auf die beiliegenden Zeichnungen besser ersichtlich sein; hierbei zeigen:
- 1 ein Blockschaltbild, das ein Speichersystem gemäß einigen Ausführungsformen darstellt.
- 2 und 3 Konzeptschemata, die einen Schreibfaktor sowie die Verwendung von Stream-IDs, um Schreibfaktorprobleme zu adressieren, genauer darstellen.
- 4 ein Konzeptschema, das einen Betrieb einer Speichervorrichtung, die einen Wert einer logischen Blockadresse (LBA) unter Verwendung eines neuronalen Netzmodells vorhersagt, gemäß einigen Ausführungsformen darstellt.
- 5, 6 und 7 jeweils Graphen, die einen Betrieb der Speichervorrichtung, die LBA-Werte vorhersagt, gemäß einigen Ausführungsformen genauer darstellen.
- 8 eine Tabelle, die beispielhafte LBA-Informationen genauer auflistet, die verwendet werden können, um LBA-Werte vorherzusagen, gemäß einigen Ausführungsformen.
- 9 und 10 jeweils Graphen, die einen Betrieb der Speichervorrichtung, die LBA-Werte vorhersagt, gemäß einigen Ausführungsformen genauer darstellen.
- 11, 12 und 13 Blockschaltbilder, die Speichersysteme gemäß einigen Ausführungsformen darstellen.
- 14 ein Flussdiagramm, das ein Betriebsverfahren für ein Speichersystem gemäß einigen Ausführungsformen zusammenfasst.
-
Detaillierte Beschreibung
-
Es werden nun bestimmte Ausführungsformen in Bezug auf die beigefügten Zeichnungen beschrieben. In allen dargestellten Ausführungsformen und einer zugehörigen schriftlichen Beschreibung werden gleiche Bezugszeichen und Benennungen verwendet, um gleiche oder ähnliche Elemente zu bezeichnen.
-
Figur (Fig.) 1 ist ein Blockschaltbild, das ein Speichersystem gemäß einigen Ausführungsformen darstellt. 2 ist ein Konzeptschema, das einen Schreibfaktor genauer beschreibt, und 3 ist ein Konzeptschema, das einen Zustand genauer beschreibt, in dem Stream-Kennungen (nachfolgend „IDs“) durch das Speichersystem zugeordnet werden. 4 ist ein Flussdiagramm, das einen Betrieb einer Speichervorrichtung genauer beschreibt, die einen Wert einer logischen Blockadresse (LBA) unter Verwendung eines neuronalen Netzmodells vorhersagt, gemäß einigen Ausführungsformen.
-
Gemäß 1 kann ein Speichersystem 1 allgemein einen Host 10 und eine Speichervorrichtung 20 umfassen.
-
Die Speichervorrichtung 20 kann eine Schnittstelle 60 umfassen, die eingerichtet ist, eine Verbindung zwischen dem Host 10 und der Speichervorrichtung, einer nichtflüchtigen Speichervorrichtung (NVM) 50, die eine oder mehrere nichtflüchtige Speicher umfasst, einem Pufferspeicher 40 und einem LBA-Vorhersager 30 zu fördern.
-
Der Host 10 kann während eines Schreib- (oder Programmier-)vorgangs, der durch die Speichervorrichtung 20 (z. B. eine Solid State Drive (SSD)) ausgeführt wird, Daten, die eine assoziierte ID umfassen, an die Speichervorrichtung 20 übertragen. Der Host 10 kann die ID den Daten abhängig von (z. B.) dem Datentyp (z. B. einer Protokolldatei, einer Meta-Datei, einer Mediendatei usw.) zuordnen. In diesem Kontext kann sich der Begriff „Typ“ auf verschiedene Merkmale oder Attribute der Daten beziehen. Sobald der Host 10 den Daten eine bestimmte ID zugeordnet hat, können die Daten als Teil eines Multi-Stream-Datensatzes an die Speichervorrichtung 20 übertragen werden. Zum Beispiel kann der Host 10 ersten Daten eines Protokolldateityps eine erste ID zuweisen und Daten eines Mediendateityps eine zweite ID zuweisen.
-
In diesem Kontext kann die Speichervorrichtung 20 - die eingerichtet ist, eine Mehrzahl mit einem Datensatz assoziierte IDs zu empfangen - als Multi-Stream-Speichervorrichtung bezeichnet werden. Die Multi-Stream-Speichervorrichtung kann Betriebssysteme und Anwendungen mit Schnittstellen vorsehen, durch die Daten mit unterschiedlichen Attributen individuell gespeichert werden können. Der/die jeweiligen Prozess(e), mit dem individuelle Daten gespeichert werden, können als „Streams“ bezeichnet werden. Das heißt, eine Sammlung (oder „Gruppe“) individueller Datenschreibvorgänge kann in einem aggregierten „Stream“ umfasst sein, wobei jeder Stream im Einzelnen durch eine entsprechende „Stream-ID“ identifiziert werden kann, die (z. B.) durch ein Betriebssystem oder eine entsprechende Anwendung zugeordnet wird. So kann ungleichartigen Daten mit ähnlichen Merkmalen oder Attributen eine eindeutige ID zugeordnet werden, sodass die Daten, die der eindeutigen Stream-ID entsprechen, in den gleichen Block in der NVM-Vorrichtung 50 der Speichervorrichtung 20 geschrieben werden können.
-
Wenn allerdings Daten ohne Stream-ID von dem Host 10 empfangen werden, kann die Speichervorrichtung 20 die Daten ohne Stream-ID in einen beliebigen Block speichem. Folglich können Daten mit unterschiedlichen Stream-IDs in den gleichen Block geschrieben werden. Diese Folge wird nachfolgend unter Bezugnahme auf 2 in genauerem Detail beschrieben.
-
Gemäß 1 und 2 kann die Speichervorrichtung 20, wenn Daten ohne Stream-ID von dem Host 10 empfangen werden, die Daten ohne Stream-ID beliebig in (z. B.) jeweilige Blöcke BLK1, BLK2 und BLK3 der NVM 50 in der Speichervorrichtung 20 schreiben.
-
Wie zuvor angemerkt, kann die NVM 50 eine Mehrzahl nichtflüchtiger Speicher umfassen. Jede der Mehrzahl nichtflüchtiger Speicher kann nichtflüchtige Speicherzellen (z. B.) NAND-Flash-Speicherzellen, NOR-Flash-Speicherzellen, resistive Direktzugriffsspeicher(RRAM)-Zellen, ferroelektrische Direktzugriffsspeicher(FRAM)-Zellen, Phasenänderungs-Direktzugriffsspeicher(PRAM)-Zellen, Thyristor-Direktzugriffsspeicher(TRAM)-Zellen, magnetische Direktzugriffsspeicher(MRAM)-Zellen usw. umfassen.
-
In dem in 2 dargestellten Beispiel wird angenommen, dass die Speichervorrichtung 20 sechs (6) individuelle Daten (z.B. erste Daten DATA1 bis sechste Daten DATA6) von dem Host 10 empfängt und jeweils (z. B. unter Verwendung einer beliebig etablierten Zuordnungssequenz, zufällig usw.) die ersten Daten DATA1 bis sechsten Daten DATA6 jeweils einem der Blöcke BLK1, BLK2 und BLK3 zuordnet.
-
Zum Beispiel kann die Speichervorrichtung 20 die ersten Daten DATA1 in einer ersten Zeile Row1 des ersten Blocks BLK1 und die zweiten Daten DATA2 in einer zweiten Zeile Row2 des ersten Blocks BLK1 speichern. Die Speichervorrichtung 20 kann die dritten Daten DATA3 in einer ersten Zeile Row1 des zweiten Blocks BLK2 und die vierten Daten DATA4 in einer zweiten Zeile Row2 des zweiten Blocks BLK2 speichern und kann die fünften Daten DATA5 in einer ersten Zeile Row1 des dritten Blocks BLK3 und die sechsten Daten DATA6 in einer zweiten Zeile Row2 des dritten Blocks BLK3 speichem.
-
Unter diesen Annahmen und erkennend, dass keine der ersten Daten DATA1 bis sechsten Daten DATA6 eine zugeordnete Stream-ID haben, kann die Speichervorrichtung 20 die ersten Daten DATA1 bis sechsten Daten DATA6 jeweils beliebig in einen der Blöcke BLK1, BLK2 und BLK3 schreiben. Allerdings gibt es Stream-IDs, die abhängig von (oder basierend auf) dem bestimmten Datentyp jeweils den ersten Daten DATA1 bis sechsten DATA6, die von der Speichervorrichtung 20 empfangen wurden, hätten zugeordnet werden sollen.
-
Das heißt, wenn die ersten Daten DATA1 bis sechsten Daten DATA6 von dem Host 10 empfangen werden aber keine jeweiligen Stream-IDs haben, speichert die Speichervorrichtung 20 die ersten Daten DATA1 bis sechsten Daten DATA6 beliebig (z. B. zufällig) in Blöcke BLK1, BLK2 und BLK3. Die Speichervorrichtung 20 sollte allerdings zweckmäßiger den ersten Daten DATA1 bis sechsten Daten DATA6 abhängig von seinem Typ jeweils eine Stream-ID zuordnen und dann alle Daten aus den ersten Daten DATA1 bis sechsten Daten DATA6 mit der gleichen Stream-ID dem gleichen Block zuweisen.
-
Gemäß 1, 2 und 3 und unter Berücksichtigung der zuvor genannten Annahmen sollte die Speichervorrichtung 20 die beliebig geschriebenen Daten (z. B. die in 2 gezeigten Daten) so „neu zuweisen“, dass Daten mit der gleichen Stream-ID in den gleichen Block geschrieben werden (wie in 3 gezeigt).
-
Zum Beispiel kann die Speichervorrichtung 20 die ersten Daten DATA1, die dritten Daten DATA3 und die fünften Daten DATA5 mit einer ersten Stream-ID (SID1) dem ersten Block BLK1 neu zuweisen (d. h. schreiben oder programmieren), die zweiten Daten DATA2 und die vierten Daten DATA4 mit einer zweiten Stream-ID (SID2) dem zweiten Block BLK2 neu zuweisen und die sechsten Daten DATA6 mit einer dritten Stream-ID (SID3) dem dritten Block BLK3 neu zuweisen. Als Folge des Neuzuordnungsprozesses kann die Speichervorrichtung 20 den ersten Block BLK1 löschen und dann die ersten Daten DATA1, die dritten Daten DATA3 und die fünften Daten DATA5 in den ersten Block BLK1 schreiben; den zweiten Block BLK2 löschen und dann die zweiten Daten DATA2 und die vierten Daten DATA4 in den zweiten Block BLK2 schreiben; und den dritten Block BLK3 löschen und dann die sechsten Daten DATA6 in den dritten Block BLK3 schreiben.
-
Um Daten mit der gleichen Stream-ID dem gleichen Block neu zuzuweisen, muss die Speichervorrichtung 20 daher zahlreiche zusätzliche Lösch- und/oder Schreibvorgänge über jene Schreibvorgänge hinaus durchführen, die erforderlich sind, um die von dem Host 10 empfangenen Daten erstmalig (und beliebig) zu schreiben. Die Ausführung dieser zusätzlichen Lösch- und/oder Schreibvorgänge trägt zu dem oben beschriebenen Schreibfaktorproblem bei. Zum Beispiel kann ein Schreibfaktor die Schreibvorgangsperformance der Speichervorrichtung 20 reduzieren und den Verschleiß einzelner nichtflüchtiger Speicherzellen der NVM 50 in der Speichervorrichtung 20 erhöhen, wodurch die Lebensdauer der Speichervorrichtung 20 reduziert wird.
-
Um Schreibfaktor zu verringern oder zu verhindern, kann die Speichervorrichtung 20, sobald sie einen Schreibbefehl, der mit Daten ohne Stream-ID assoziiert ist empfängt, und bevor sie die Daten ohne Stream-ID tatsächlich in die NVM 50 schreibt, eine Stream-ID für die Daten vorhersagen und danach basierend auf der vorhergesagten Stream-ID die Daten mit einer vorhergesagten Stream-ID in einen Speicherblock schreiben.
-
Die Vorhersage einer Stream-ID für bestimmte Daten kann unter Verwendung von „LBA-bezogenen Informationen“ (z. B. LBA-Werten, LBA-Größen, einer Häufigkeit, mit der jeweilige LBAs empfangen werden, Zeitintervallen, entsprechend welchen jeweilige LBAs empfangen werden usw.) durchgeführt werden, die bei einem Modell eines neuronalen Netzes (NN) eingesetzt werden. Das heißt, die Speichervorrichtung 20 kann eine Stream-ID für Daten ohne Stream-ID unter Verwendung eines neuronalen Netzmodells vorhersagen, um die Genauigkeit des einen oder der mehreren Schreibvorgänge, die verwendet werden, um die Daten ohne Stream-ID erstmalig in verfügbare Speicherblöcke zu schreiben, im Vergleich zu dem beliebigen Schreiben von Daten ohne Stream-ID zu verbessern.
-
Im Grunde ist es das Ziel des vorstehenden Ansatzes, eine Stream-ID (z. B. einen LBA-Wert) für Daten ohne Stream-ID genau vorherzusagen, bevor sie in der NVM-Vorrichtung 50 gespeichert werden (d. h. die gleiche Stream-ID kann genauer LBA-Werten zugeordnet werden, denen die gleiche Stream-ID zugeordnet werden sollte). Daher kann die Speichervorrichtung 20 die LBA-Werte, denen die gleiche Stream-ID zugeordnet werden sollte, genau vorhersagen, und kann die Daten basierend auf den vorhergesagten LBA-Werten in dem gleichen Block speichern, wodurch ein Schreibfaktor reduziert wird und die Zuverlässigkeit der Speichervorrichtung 20 verbessert wird. Nachfolgend wird ein beispielhafter Betrieb zur Vorhersage von LBA-Werten, denen die gleiche Stream-ID zugeordnet werden sollte, etwas detaillierter beschrieben.
-
Es ist anzumerken, dass die Anzahl und der Typ von Daten, welche die Speichervorrichtung 20 von dem Host 10 empfängt, nicht auf die in 2 und 3 dargestellten beschränkt sind. Zudem sind die Anzahl und der Typ von Blöcken in der Speichervorrichtung 20, die verwendet werden, um die Daten zu speichern, nicht auf die in 2 und 3 dargestellten beschränkt. In gewissen Ausführungsformen können ferner Daten auf Basis von Seiten gespeichert werden.
-
Es wird erneut auf 1 Bezug genommen; der Host 10 kann eine von verschiedenen möglichen Formen annehmen, einschließlich derer einer Verarbeitungseinheit, eines Host-Speichers, eines Interface-Schaltkreises usw. Hier kann die Verarbeitungseinheit unterschiedliche Software (z. B. Anwendungsprogramme, Betriebssysteme, Gerätetreiber und dergleichen) ausführen, die in dem Host-Speicher geladen wird. Die Verarbeitungseinheit kann ein Betriebssystem (OS) oder Anwendungsprogramme ausführen. Die Verarbeitungseinheit kann homogene Mehrkernprozessoren oder heterogene Mehrkernprozessoren umfassen. Die Verarbeitungseinheit kann zum Beispiel eine zentrale Verarbeitungseinheit (Central Processing Unit, CPU), eine Bildverarbeitungseinheit (Image Processing Unit, ISP), eine digitale Signalverarbeitungseinheit (Digital Signal Processing Unit, DSP), eine Grafikverarbeitungseinheit (Graphics Processing Unit, GPU), eine Vision Processing Unit (VPU) und/oder eine neuronale Verarbeitungseinheit (Neural Processing Unit, NPU) umfassen, ist aber nicht darauf beschränkt.
-
Ein Anwendungsprogramm, ein Dateisystem, ein Gerätetreiber und dergleichen zum Antreiben bzw. Ansteuern des Speichersystems 1 kann in den Host-Speicher geladen werden. Allerdings ist es nicht darauf beschränkt, und es können unterschiedliche andere Software zum Ansteuern der Speichervorrichtung 20 in den Host-Speicher geladen werden. In den Host-Speicher können Anwendungsprogramme oder Daten geladen werden, die von der Verarbeitungseinheit verarbeitet werden sollen. Zum Beispiel kann ein (nicht gezeigter) Eingabe-/Ausgabe-Planer zum Verwalten von Eingabewarteschlangen und Beendigungswarteschlangen für Befehle, die an die Speichervorrichtung 20 geliefert werden sollen, in den Host-Speicher geladen werden.
-
Der Interface-Schaltkreis kann physische Verbindungen zwischen dem Host 10 und der Speichervorrichtung 20 vorsehen. Zum Beispiel kann der Interface-Schaltkreis Befehle, Adressen, Datensätze und dergleichen, die verschiedenen, von dem Host 10 erzeugten Anfragen entsprechen, in eine Schnittstellen-Form mit der Speichervorrichtung 20 konvertieren. Zum Beispiel kann der Interface-Schaltkreis eingerichtet sein, mit der Speichervorrichtung 20 unter Verwendung verschiedener Kommunikationsverfahren zu kommunizieren, wie beispielsweise universellem seriellem Bus (USB), Serial AT Attachment (SATA), Serial Attached SCSI (SAS), High Speed InterChip (HSIC), Small Computer System Interface (SCSI), Peripheral Component Interconnection (PCI), PCI express (PCIe), Nonvolatile Memory express (NVMe), Universal Flash Storage (UFS), Secure Digital (SD), Multi Media Card (MMC) und Embedded MMC (Emmc); allerdings ist die Konfiguration nicht darauf beschränkt.
-
Die Schnittstelle 60 in der Speichervorrichtung 20 kann verschiedene Befehle verarbeiten, die von dem Host 10 bereitgestellt werden. Die verschiedenen Befehle, die von dem Host 10 bereitgestellt werden, können Daten mit (oder ohne) eine Mehrzahl möglicher Stream-IDs umfassen. Alternativ können die verschiedenen, dem Host 10 bereitgestellten Befehle, Daten umfassen, denen keine Stream-IDs zugeordnet sind. Die Schnittstelle 60 kann ersucht werden, Daten an die NVM 50 zu übertragen. Alternativ kann die Schnittstelle 60 verwendet werden, um Daten aus der NVM 50 auszulesen, wenn die Schnittstelle 60 einen Lesebefehl von dem Host 10 empfängt.
-
Die Schnittstelle 60 kann als Schaltung implementiert werden, wie beispielsweise als Field Programmable Gate Array (FPGA), anwendungsspezifische integrierte Schaltung (ASIC) und dergleichen, oder sie kann als Kombination aus Prozessor und Software, die von dem Prozessor ausgeführt wird, implementiert werden, aber die Implementierung der Schnittstelle 60 ist nicht darauf beschränkt.
-
Die Schnittstelle 60 kann verwendet werden, um Daten vorübergehend in dem Pufferspeicher 40 zu speichern. Alternativ kann die Schnittstelle 60 verwendet werden, um Daten aus dem Pufferspeicher 40 zu laden. Der Pufferspeicher 40 kann vorübergehend LBA-bezogene Informationen speichern, wobei die LBA-bezogenen Informationen kontinuierlich gemäß (z. B.) einem etablierten Aktualisierungsplan oder -intervall aktualisiert werden kann. Auf diese Weise kann ein zunehmender Korpus LBA-bezogener Informationen (nachfolgend zu beliebiger Zeit schlicht als „die LBA-bezogene Information(en)“ bezeichnet) von einem neuronalen Netzmodell in dem LBA-Vorhersager 30 verwendet werden, um eine Stream-ID für die empfangenen Daten vorherzusagen. Die LBA-bezogene Information kann auf verschiedene Art und Weise in dem Speichersystem 1 oder in einer externen Umgebung gespeichert werden, die für das Speichersystem 1, das (z. B.) den Pufferspeicher 40 umfasst, zugänglich ist. Hier kann der Pufferspeicher 40 flüchtige Speicherzellen, wie beispielsweise eine dynamische Direktzugriffsspeicher(DRAM)-Zelle, eine statische Direktzugriffsspeicher(SRAM)-Zelle, oder dergleichen umfassen.
-
Der LBA-Vorhersager 30 in der Speichervorrichtung 20 kann verwendet werden, um Daten, die von dem Host 10 empfangen werden, eine vorhergesagte Stream-ID in Bezug auf LBA-Werte unter Verwendung des neuronalen Netzmodells zuzuordnen, das ansprechend auf die LBA-bezogene Informationen arbeitet.
-
Ein Beispiel für ein neuronales Netzmodell, das in gewissen Ausführungsformen des LBA-Vorhersagers 30 verwendet werden kann, ist in 4 dargestellt.
-
In 1 und 4 kann das neuronale Netzmodell des LBA-Vorhersagers 30 der Speichervorrichtung 20 die LBA-bezogenen Informationen als „Merkmale“ empfangen. So kann in dem dargestellten Beispiel aus 4 die LBA-bezogenen Informationen (z. B.) LBA-Werte F1, LBA-Größen F2, eine Häufigkeit Fn-1, mit der spezifische LBAs empfangen werden, Zeitintervalle Fn, in welchen LBAs empfangen werden usw. umfassen.
-
Diese Merkmale können in einem Merkmalspool 70 gebündelt werden und in dem Pufferspeicher 40 oder in einem später beschriebenen Merkmalspuffer 32 vorübergehend gespeichert werden.
-
Gewisse LBA-bezogene Informationen können, sobald sie in dem Korpus LBA-bezogener Information empfangen werden, in getrennte LBA-Informationen für die gleiche Stream-ID konfiguriert werden. Nachfolgend werden gewisse LBA-bezogene Informationen, die mit einer bestimmten Stream-ID gruppiert, assoziiert oder konfiguriert wurden, als „ID-spezifische LBA-bezogene Informationen“ bezeichnet. So kann die LBA-bezogene Information auf unterschiedliche Weise erste ID-spezifische LBA-bezogene Information, zweite ID-spezifische LBA-bezogene Information usw. umfassen.
-
ID-spezifische LBA-bezogenen Informationen können auf unterschiedliche Weise in den Merkmalspool 70 des neuronalen Netzmodells kanalisiert und gebündelt werden. Ein möglicher Ansatz bezüglich des Kanalisierens und/oder Bündelns ID-spezifischer, LBA-bezogener Informationen wird unter Bezugnahme auf 6 näher beschrieben.
-
In der nachfolgenden Beschreibung wird angenommen, dass eine erste ID-spezifische LBA-bezogene Information durch das neuronale Netzmodell aus 4 empfangen wurde und entsprechend in dem Merkmalspool 70 gebündelt wurde.
-
Das neuronale Netzmodell, das von dem LBA-Vorhersager 30 verwendet wird, verwendet die jeweiligen Merkmale des Merkmalspools 70 als Eingabe und kann den Merkmalen jeweils eine entsprechende Gewichtung (z. B. Gewichte W1, W2, ..., Wn-1 und Wn) zuschreiben oder zuordnen. Zum Beispiel kann ein erstes Merkmal F1 (z. B. LBA-Werte) mit einem ersten Gewicht W1 gewichtet werden, ein zweites Merkmal F2 (z. B. LBA-Größen) kann mit einem zweiten Gewicht W2 gewichtet werden usw. um entsprechend einen ersten gewichteten Merkmalswert (F1 x W1), einen zweiten gewichteten Merkmalswert (F2 x W2) usw. zu erzeugen.
-
Danach kann der LBA-Vorhersager
30 die gewichteten Merkmalswerte addieren (oder summieren), um ein Summenergebnis zu erzeugen. Das Summenergebnis kann verwendet werden, um unter Verwendung einer Aktivierungsfunktionfeinen zweckmäßigen LBA-Wert vorherzusagen. Entsprechend kann der vorhergesagte LBA-Wert durch die Aktivierungsfunktionfals Ausgabe bereitgestellt werden, wie beispielsweise in der nachfolgenden Gleichung gezeigt:
-
4 nimmt die Verwendung eines relativ einfachen neuronalen Netzmodells durch den LBA-Vorhersager 30 an. Der Fachmann wird allerdings erkennen, dass das von dem LBA-Vorhersager 30 verwendete neuronale Netzmodell eine Vielfalt an neuronalen Netzmodellen verwenden kann, die ein einlagiges Perzeptron(SLP)-Modell oder ein mehrlagiges Perzeptron(MLP)-Modell umfassen. Die Struktur des neuronalen Netzmodells, die von dem LBA-Vorhersager 30 verwendet wird, kann ein nichtlineares Regressionsmodell oder ein Klassifikationsmodell sein. Ferner können die Merkmale, die von dem LBA-Vorhersager 30 verwendet werden, in ihrer Art und Anzahl von den oben gegebenen Beispielen variieren. Allerdings können unterschiedliche, ID-spezifische LBA-bezogene Informationen, die mit der gleichen Stream-ID assoziiert sind, in dem gleichen Merkmalspool 70 gruppiert werden und als Eingabe in das neuronale Netzmodell verwendet werden.
-
Nachfolgend werden gewisse Betriebsprinzipien für den LBA-Vorhersager 30 etwas detaillierter unter Bezugnahme auf einen bzw. mehrere Graphen beschrieben. Ferner werden mögliche Ansätze für die Zuordnung und/oder Zuweisung der gleichen Stream-ID basierend auf vorhergesagten LBA-Werten beschrieben, die von einem neuronalen Netzmodell abgeleitet werden, das ID-spezifische LBA-bezogene Informationen als Eingaben verwendet.
-
5 ist ein Graph, der einen Betrieb einer Speichervorrichtung, die vorhergesagte LBA-Werte vorsieht, gemäß einigen Ausführungsformen darstellt.
-
Gemäß 1, 4 und 5 kann der LBA-Vorhersager 30 spezifische LBA-Werte aus einem gespeicherten Korpus zuvor empfangener LBA-Werte (z. B. LBA1 bis LBAm) als Merkmale des neuronalen Netzmodells auslesen. Das heißt, die LBA-Werte, die innerhalb eines ersten Bereichs „I“ fallen, können als Merkmale des neuronalen Netzmodells eingegeben werden. Die LBA-Werte des ersten Bereichs „I“ können mit der gleichen Stream-ID (z. B. der ersten Stream-ID) assoziiert werden. Unter Verwendung dieser Information kann der LBA-Vorhersager 30 ein neuronales Netzmodell ansteuern, den (m+k)-ten LBA-Wert (z. B. LBAm+k) vorherzusagen.
-
Danach kann der LBA-Vorhersager 30 Daten (z. B. LBA-Werte) ohne Stream-ID empfangen, und kann einen Bereich des Graphen bestimmen, in dem sich die LBA-Werte wahrscheinlich befinden. Der LBA-Vorhersager 30 kann dann (z. B.) eine erste Stream-ID (SID1) empfangenen LBA-Werten zuordnen, die innerhalb eines zweiten Bereichs „II“ des Graphen fallen, die größer sind als der m-te LBA-Wert (LBAm) und kleiner gleich dem (m+k)-ten LBA-Wert (LBAm+k) sind.
-
Für die LBA-Werte ohne Stream-IDs kann der LBA-Vorhersager 30 Stream-IDs im Voraus zuordnen, um vorhergesagte Stream-IDs bereitzustellen, die verwendet werden können, um Daten mit der gleichen Stream-ID in den gleichen Block in der NVM 50 zu schreiben.
-
6 ist ein anderer Graph, der einen Betrieb einer Speichervorrichtung, die LBA-Werte vorhersagt, gemäß einigen Ausführungsformen darstellt.
-
Gemäß 1, 4 und 6 wird angenommen, dass der LBA-Vorhersager 30 „m“ LBA-Werte, die mit der ersten Stream-ID (SID1) assoziiert sind, die innerhalb des ersten Bereichs „I“ des Graphen fallen (d. h. die erste ID-spezifische LBA-bezogene Information) als Merkmale des neuronalen Netzmodells ausliest, das verwendet wird, um die (m+k)-ten LBA-Werte (LBAm+k) vorherzusagen.
-
Zudem wird angenommen, dass der LBA-Vorhersager 30 „n“ LBA-Werte, die mit der zweiten Stream-ID (SID2) assoziiert sind, die innerhalb des dritten Bereichs III fallen (d. h. die zweite ID-spezifische LBA-bezogene Information) als Merkmale des neuronalen Netzmodells ausliest, das verwendet wird, um den (10+n+1)-ten LBA-Wert vorherzusagen (LBA10+n+1).
-
Es ist anzumerken, dass obwohl 6 konkret nur die erste Stream-ID (SID1) und die zweite Stream-ID (SID2) als Beispiele darstellt, jede geeignete Anzahl an Stream-IDs auf ähnliche Art und Weise vorhergesagt werden kann. Zum Beispiel wenn Daten (z. B. LBA-Werte) ohne Stream-ID von dem Host 10 empfangen werden und danach bestimmt wird, dass sie innerhalb des zweiten Bereichs „II“ fallen, kann die Speichervorrichtung 20 den Daten die erste Stream-ID (SID1) zuordnen, und wenn Daten (z. B. LBA-Werte) ohne Stream-ID von dem Host 10 empfangen werden und danach bestimmt wird, dass sie in den vierten Bereich IV fallen, kann die Speichervorrichtung 20 den Daten die zweite Stream-ID (SID2) zuordnen.
-
7 ist ein anderer Graph, der einen Betrieb einer Speichervorrichtung, die LBA-Werte vorhersagt, gemäß einigen Ausführungsformen darstellt.
-
Gemäß 1, 4 und 7 kann der LBA-Vorhersager 30 Differenzen (z. B. Diff 1 bis Diff 4) zwischen „m“ vorher empfangenen LBA-Werten (z. B. LBA1 bis LBAm), die mit der gleichen ersten Stream-ID assoziiert sind, als Merkmale des neuronalen Netzmodells einlesen (oder eingeben). Das heißt, die Differenzen zwischen den LBA-Werten, die innerhalb eines ersten Bereichs „I“ fallen, können als Merkmale in das neuronale Netzmodell eingegeben werden. Die LBA-Werte des ersten Bereichs „I“ können alle mit der gleichen Stream-ID (z. B. der ersten Stream-ID) assoziiert sein. Entsprechend kann der LBA-Vorhersager 30 das neuronale Netzmodell derart ansteuern, dass es die m-te LBA-Differenz (Diff m) vorhersagt. Mit dieser Konfiguration kann der LBA-Vorhersager 30 die (m+k)-ten LBA-Werte (LBAm+k) vorhersagen, die erhalten werden, indem die m-te LBA-Differenz (Diff m) zu dem m-ten LBA-Wert (LBAm) addiert wird.
-
Danach kann der LBA-Vorhersager 30 Daten (z. B. LBA-Werte) ohne Stream-ID empfangen und einen Bereich des Graphen bestimmen, in dem sich die LBA-Werte ohne Stream-ID befinden.
-
Der LBA-Vorhersager 30 kann die erste Stream-ID (SID1) den empfangenen LBA-Werten des zweiten Bereichs „II“ zuordnen, die größer sind als der m-te LBA-Wert (LBAm) und kleiner gleich dem (m+k)-ten LBA-Wert (LBAm+k) sind.
-
Für die LBA-Werte ohne Stream-ID kann der LBA-Vorhersager 30 in der Speichervorrichtung 20 im Voraus auf die obige Art und Weise Stream-IDs zuordnen, um Daten ohne Stream-ID unter Verwendung einer vorhergesagten Stream-ID in den gleichen Block der NVM 50 zu schreiben. Entsprechend ist es möglich, einen Verschleiß der einzelnen nichtflüchtigen Speicherzelle der NVM 50 zu verringern oder zu verhindern. Folglich kann ein Schreibfaktor für die Speichervorrichtung 20 reduziert werden, wodurch die Zuverlässigkeit der Speichervorrichtung 20 verbessert wird.
-
8 ist eine beispielhafte Tabelle, die Iterationsschrittbeziehungen für gewisse LBA-Informationen darstellt, die zum Vorhersagen von LBA-Werten gemäß einigen Ausführungsformen verwendet werden.
-
Gemäß 1, 4 und 8 kann der LBA-Vorhersager 30 gewisse Start-LBA-Werte und gewisse LBA-Größen für zuvor empfangene LBA-Werte, die mit der gleichen Stream-ID (z. B. der ersten Stream-ID) assoziiert sind, als Merkmale des neuronalen Netzmodells einlesen (oder eingeben). Gewisse LBA-Werte für „m“ LBA-Werte können abgeleitet werden, indem die LBA-Größen jeweils zu den Start-LBA-Werten addiert werden. Der LBA-Vorhersager 30 kann dann den (m+k)-ten LBA-Wert mit der gleichen Stream-ID unter Verwendung der LBA-Größentabelle vorhersagen, in der Informationen über die Start-LBA-Werte, LBA-Größen und End-LBA-Werte für die jeweiligen m LBA-Werte gespeichert sind.
-
Ein Betrieb des LBA-Vorhersagers 30 gemäß einigen Ausführungsformen sagt LBA-Werte vorher, indem als Merkmale des neuronalen Netzmodells die Start-LBA-Werte und LBA-Größen der vergangenen m LBA-Werte mit der gleichen ersten Stream-ID eingegeben werden; dies wird unter Bezugnahme auf 9 näher beschrieben.
-
9 ist ein weiterer Graph, der einen Betrieb zur Vorhersage von LBA-Werten unter Verwendung der LBA-Informationen aus 8 gemäß einigen Ausführungsformen beschreibt.
-
In 1, 4, 8 und 9 kann der LBA-Vorhersager 30 die Start-LBA-Werte (Start-LBA 1~Start-LBA m) und LBA-Größen (LBA-Größe 1~LBA-Größe m) der „m“ zuvor empfangenen LBA-Werte, die mit der gleichen Stream-ID assoziiert sind, als Merkmale des neuronalen Netzmodells einlesen (oder eingeben). Das heißt, die LBA-Werte (Start-LBA 1-Start-LBA m) und LBA-Größen (LBA Größe 1~LBA-Größe m) der LBA-Werte des ersten Bereichs 1 können als Merkmale des neuronalen Netzmodells eingegeben werden. Die LBA-Werte des ersten Bereichs 1 können alle die gleiche Stream-ID aufweisen (z. B. die erste Stream-ID). Der LBA-Vorhersager 30 in der Speichervorrichtung 20 kann das neuronale Netzmodell ansteuern, um den (m+k)-ten Start-LBA-Wert (Start-LBA m+k) und die (m+k)-te LBA-Größe (LBA-Größe m+k) vorherzusagen. Durch diese Konfiguration kann der LBA-Vorhersager 30 in der Speichervorrichtung 20 den m+k-ten LBA-Wert vorhersagen, der erhalten wird, indem die m+k-te LBA-Größe (LBA-Größe m+k) zu dem m+k-ten Start-LBA-Wert (Start-LBA m+k) addiert wird.
-
Danach kann der LBA-Vorhersager 30 Daten (z. B. LBA-Werte) ohne Stream-ID empfangen und kann einen Bereich bestimmen, in dem sich die LBA-Werte ohne Stream-ID befinden.
-
Der LBA-Vorhersager 30 kann den empfangenen LBA-Werten des zweiten Bereichs II, die größer sind als der m-te LBA-Wert und kleiner gleich dem (m+k)-ten LBA-Wert sind, die erste Stream-ID (SID1) zuordnen, wobei der m-te LBA-Wert erhalten wird, indem die m-te LBA-Größe (LBA-Größe m) zu dem m-ten Start-LBA-Wert (Start-LBA m) addiert wird, und der (m+k)-te LBA-Wert erhalten wird, indem die (m+k)-te LBA-Größe (LBA-Größe m+k) zu dem (m+k)-ten Start-LBA-Wert (Start-LBA m+k) addiert wird.
-
Den LBA-Werten, denen von dem Host 10 keine Stream-IDs zugeordnet werden, kann der LBA-Vorhersager 30 in der Speichervorrichtung 20 auf die obige Art und Weise im Voraus Stream-IDs zuordnen, um Daten mit der gleichen Stream-ID in den gleichen Block der NVM 50 zu schreiben. Entsprechend ist es möglich, einen Verschleiß der einzelnen nichtflüchtigen Speicherzellen der NVM 50 zu verringern oder zu verhindern. Folglich kann ein Schreibfaktor für die Speichervorrichtung 20 reduziert werden, wodurch die Zuverlässigkeit der Speichervorrichtung 20 verbessert wird.
-
10 ist ein anderer Graph, der einen Betrieb der Speichervorrichtung, die LBA-Werte vorhersagt, gemäß einigen Ausführungsformen darstellt.
-
Gemäß 1, 4 und 10 kann der LBA-Vorhersager 30 „m“ zuvor empfangene LBA-Werte (LBA1~LBAm), die mit der gleichen Stream-ID assoziiert sind, und Informationen bezüglich der Zeit (t1~tm), zu der die jeweiligen LBA-Werte (LBA1∼LBAm) empfangen wurden, als Merkmale des neuronalen Netzmodells einlesen (oder eingeben). Das heißt, die LBA-Werte (LBA1~LBAm) und die eingegebene Informationen bezüglich der Zeit (t1∼tm) der LBA-Werte (LBA1~LBAm) des ersten Bereichs I können als Merkmale des neuronalen Netzmodells eingegeben werden. Die LBA-Werte des ersten Bereichs I können alle die gleiche Stream-ID aufweisen (z. B. die erste Stream-ID). Der LBA-Vorhersager 30 in der Speichervorrichtung 20 kann das neuronale Netzmodell ansteuern, um den (m+k)-ten LBA-Wert (LBAm+k) vorherzusagen.
-
Da der LBA-Vorhersager 30 in der Speichervorrichtung 20 die Informationen bezüglich der Zeit (t1∼tm) als Eingabe in das neuronale Netzmodell umfasst, ist es möglich, die Vorhersagegenauigkeit des m+k-ten LBA-Wert zu verbessern (LBAm+k). Insbesondere kann, obwohl ein gewisser LBA-Wert innerhalb des ersten Bereichs „I“ fällt, der LBA-Wert aus der Vorhersage des (m+k)-ten LBA-Werts (LBAm+k) ausgeschlossen werden, falls die Zeit, zu welcher der LBA-Wert eingegeben wurde, ein übermäßig langes Zeitintervall (wobei die Kriterien des Zeitintervalls mit der Konfiguration des neuronalen Netzmodells frei beschränkt werden können) nach den anderen LBA-Werten liegt, die zuvor innerhalb des ersten Bereichs I fielen.
-
Danach kann der LBA-Vorhersager 30 Daten (z. B. LBA-Werte) ohne Stream-ID empfangen und kann einen Bereich bestimmen, in dem sich die LBA-Werte ohne Stream-ID wahrscheinlich befinden.
-
Der LBA-Vorhersager 30 kann die erste Stream-ID (SID1) den empfangenen LBA-Werten des zweiten Bereichs „II“ zuordnen, die größer sind als der m-te LBA-Wert (LBAm) und kleiner gleich dem (m+k)-ten LBA-Wert (LBAm+k) sind.
-
Für die LBA-Werte ohne Stream-IDs kann der LBA-Vorhersager 30 Stream-IDs im Voraus auf die obige Art und Weise zuordnen, um Daten mit der gleichen vorhergesagten Stream-ID in den gleichen Block in der NVM 50 zu schreiben. Entsprechend ist es möglich, einen Verschleiß der einzelnen nichtflüchtigen Speicherzellen der NVM 50 zu verringern oder zu verhindern. Folglich kann ein Schreibfaktor der Speichervorrichtung 20 reduziert werden, wodurch die Zuverlässigkeit der Speichervorrichtung 20 verbessert wird.
-
Es ist anzumerken, dass die Werte „n“, „m“, „k“ und „l“, die oben verwendet wurden, jeweils eine natürliche Zahl sind. Insbesondere kann „k“ eine natürliche Zahl sein, die größer ist als „m“, und „l“ kann eine natürliche Zahl sein, die größer ist als „n“, aber Ausführungsformen sind nicht darauf beschränkt.
-
11, 12 und 13 sind jeweils Blockschaltbilder, die ein Speichersystem gemäß einigen Ausführungsformen darstellen.
-
Gemäß 11 kann der LBA-Vorhersager 30 der Speichervorrichtung 20 in einem Speichersystem 2, im Vergleich zu der Ausführungsform aus 1, ferner einen Merkmalspuffer 32 umfassen.
-
Der Merkmalspuffer 32 kann verwendet werden, um vorübergehend LBA-bezogene Informationen zu speichern. Der Merkmalspuffer 32 kann flüchtige Speicherzellen, wie beispielsweise eine DRAM-Zelle, eine SRAM-Zelle und dergleichen umfassen.
-
Der LBA-Vorhersager 30 kann die LBA-bezogenen Informationen, die verwendet werden, um einen LBA-Wert mit der gleichen Stream-ID nach einem gewissen Schritt vorherzusagen, vorübergehend in dem Merkmalspuffer 32 speichern und kann sie laden, um sie zu verwenden, wenn das neuronale Netzmodell angesteuert wird.
-
Gemäß 12 kann der LBA-Vorhersager 30 der Speichervorrichtung 20 in einem Speichersystem 3 gemäß einigen Ausführungsformen, im Vergleich zu der Ausführungsform aus 1, in der Schnittstelle 60 umfasst sein und gemäß 13 kann der LBA-Vorhersager 30 eines Speichersystems 4 ferner, im Vergleich zu der Ausführungsform aus 12, einen Merkmalspuffer 32 umfassen.
-
14 ist ein Flussdiagramm, das ein Betriebsverfahren für ein Speichersystem gemäß einigen Ausführungsformen zusammenfasst.
-
Gemäß 1 und 14 kann das Speichersystem 1 LBA-bezogene Informationen als Merkmale extrahieren, die in ein neuronales Netzmodell eingegeben werden sollen, das verwendet wird, um LBA-Werte vorherzusagen (S10).
-
Danach kann das Speichersystem 1 die LBA-bezogenen Informationen, die als jene Merkmale extrahiert wurden, die in das neuronale Netzmodell eingegeben werden sollen, in einem Merkmalspool gruppieren (S20). Hier kann der Merkmalspool gemäß getrennten ID-spezifischen LBA-bezogenen Informationen, die mit der gleichen Stream-ID assoziiert sind, gruppiert werden.
-
Um das neuronale Netzmodell anzutreiben, kann das Speichersystem 1 die jeweiligen Merkmale (z. B. ID-spezifische LBA-bezogene Informationen, die mit der gleichen Stream-ID des Merkmalspools assoziiert sind) verwenden, um das neuronale Netzmodell anzusteuern (oder auszuführen) (S30).
-
Das Speichersystem 1 kann so LBA-Werte durch das neuronale Netzmodell vorhersagen (S40).
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-