DE102006007201A1 - Vorrichtung und Verfahren zur Datenspeicherung mit nichtflüchtigen Speichern - Google Patents
Vorrichtung und Verfahren zur Datenspeicherung mit nichtflüchtigen Speichern Download PDFInfo
- Publication number
- DE102006007201A1 DE102006007201A1 DE102006007201A DE102006007201A DE102006007201A1 DE 102006007201 A1 DE102006007201 A1 DE 102006007201A1 DE 102006007201 A DE102006007201 A DE 102006007201A DE 102006007201 A DE102006007201 A DE 102006007201A DE 102006007201 A1 DE102006007201 A1 DE 102006007201A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- storage device
- group
- volatile memory
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
Die
Erfindung bezieht sich auf eine Datenspeichervorrichtung mit nichtflüchtigen
Speichern und auf ein zugehöriges
Datenspeicherverfahren.
Eine erfindungsgemäße Datenspeichervorrichtung beinhaltet einen Speicherblock (120) mit einem ersten nichtflüchtigen Speicher (122) mit einer ersten Datenzugriffsgeschwindigkeit und einem zweiten nichtflüchtigen Speicher (124) mit einer gegenüber der ersten niedrigeren zweiten Datenzugriffsgeschwindigkeit, eine Datenklassifikationseinheit (140) zur Klassifizierung extern zugeführter Daten in wenigstens eine erste Datengruppe (Besetzt-Daten) und eine zweite Datengruppe (Frei-Daten), wobei die erste Datengruppe eine höhere Zugriffsfrequenz aufweist als die zweite Datengruppe, und eine Speichersteuereinheit (160) zur Speicherung der von der Datenklassifkationseinheit in die erste Datengruppe klassifizierten Daten im ersten nichtflüchtigen Speicher und der durch die Datenklassifikationseinheit in die zweite Datengruppe klassifizierten Daten im zweiten nichtflüchtigen Speicher.
Verwendung z. B. in Halbleiterspeichersystemen.
Eine erfindungsgemäße Datenspeichervorrichtung beinhaltet einen Speicherblock (120) mit einem ersten nichtflüchtigen Speicher (122) mit einer ersten Datenzugriffsgeschwindigkeit und einem zweiten nichtflüchtigen Speicher (124) mit einer gegenüber der ersten niedrigeren zweiten Datenzugriffsgeschwindigkeit, eine Datenklassifikationseinheit (140) zur Klassifizierung extern zugeführter Daten in wenigstens eine erste Datengruppe (Besetzt-Daten) und eine zweite Datengruppe (Frei-Daten), wobei die erste Datengruppe eine höhere Zugriffsfrequenz aufweist als die zweite Datengruppe, und eine Speichersteuereinheit (160) zur Speicherung der von der Datenklassifkationseinheit in die erste Datengruppe klassifizierten Daten im ersten nichtflüchtigen Speicher und der durch die Datenklassifikationseinheit in die zweite Datengruppe klassifizierten Daten im zweiten nichtflüchtigen Speicher.
Verwendung z. B. in Halbleiterspeichersystemen.
Description
- Die Erfindung bezieht sich auf eine Datenspeichervorrichtung mit nichtflüchtigen Speichern und auf ein zugehöriges Datenspeicherverfahren.
- Eine elektronische Datenspeichervorrichtung greift im Allgemeinen in Reaktion auf einen extern zugeführten Datenzugriffsbefehl auf einen Speicher zu und speichert dann Daten in diesen Speicher bzw. liest Daten aus diesem aus. Bei dem Speicher der Datenspeichervorrichtung kann es sich z.B. um einen nichtflüchtigen Speicher handeln, der Daten auch ohne extern angelegte Leistung hält.
- Nichtflüchtige Speicher können in solche mit hoher bzw. höherer Geschwindigkeit und solche mit niedriger bzw. niedrigerer Geschwindigkeit klassifiziert werden. Ein nichtflüchtiger Speicher hoher Geschwindigkeit weist eine höhere Datenzugriffsgeschwindigkeit auf als ein nichtflüchtiger Speicher niedriger Geschwindigkeit. Jeder der beiden Typen hat bestimmte Vor- und Nachteile. Beispielsweise kann ein NAND-Flash speicher als ein Beispiel eines nichtflüchtigen Speichers niedriger Geschwindigkeit vorteilhafterweise mit hoher Speicherkapazität und kostengünstig implementiert werden, er weist aber eine relativ niedrige Datenzugriffsgeschwindigkeit auf. Beispiele nichtflüchtiger Speicher hoher Geschwindigkeit sind ferroelektrische Direktzugriffsspeicher (FRAM) und Phasenänderungs-Direktzugriffsspeicher (PRAM). Da ein nichtflüchtiger Speicher hoher Geschwindigkeit, wie ein FRAM, wahlfreier auf Daten zugreift, ist seine Datenzugriffsgeschwindigkeit etwa um den Faktor 1000 höher als diejenige eines NAND-Flashspeichers. Es ist jedoch relativ schwierig, einen nichtflüchtigen Speicher hoher Geschwindigkeit, wie einen FRAM, mit hoher Speicherkapazität zu implementieren, und die Herstellungskosten eines solchen Speichers sind relativ hoch.
- In Speichern gespeicherte Daten lassen sich allgemein in Nutzerdaten und Metadaten klassifizieren. Nutzerdaten sind von einem Benutzer generierte Daten, während Metadaten Daten sind, die Indikativ für Attribute extern zugeführter Daten sind, beispielsweise bezüglich der Speicherposition von Daten, wie in einer Dateizuweisungstabelle (FAT). Auf Benutzerdaten wird während eines Speichervorgangs in relativ großen Dateneinheiten zugegriffen, die Zugriffsfrequenz ist jedoch relativ niedrig. Im Gegensatz dazu wird auf Metadaten typischerweise in kleineren Dateneinheiten zugegriffen, jedoch mit höher Zugriffsfrequenz.
-
1 veranschaulicht im Blockdiagramm eine herkömmliche nichtflüchtige Datenspeichervorrichtung10 , die Daten DTA von einer externen Einheit20 empfängt und umgekehrt dieser auch Daten DTA zuführt. Die herkömmliche Datenspeichervorrichtung10 von1 beinhaltet eine Speichersteuereinheit11 und einen homogenen nichtflüchtigen Speicher12 , beispielsweise einen NAND-Flashspeicher, auf den die Speichersteuereinheit11 zugreift. Von der Speichersteuereinheit11 werden Steuersignale CON erzeugt, um den Zugriff auf ausgewählte Bereiche des nichtflüchtigen Speichers12 zu steuern und dadurch Daten DTA im nichtflüchtigen Speicher12 abzulegen oder aus diesem abzurufen. Des Weiteren beinhaltet die Datenspeichervorrichtung eine Pufferschaltung13 , in der Daten DTA temporär abgelegt werden, und eine Schnittstellenschaltung14 zwischen der Pufferschaltung13 und der externen Einheit20 . - Der Erfindung liegt als technisches Problem die Bereitstellung einer Vorrichtung und eines Verfahren zur Datenspeicherung der eingangs genannten Art zugrunde, mit denen sich die oben erwähnten Schwierigkeiten des Standes der Technik reduzieren oder eliminieren lassen und die insbesondere eine vergleichsweise hohe Datenzugriffsgeschwindigkeit auch schon mit relativ begrenzten Speicherkapazitäten ermöglichen.
- Die Erfindung löst dieses Problem durch die Bereitstellung einer Datenspeichervorrichtung mit den Merkmalen des Anspruchs 1 und eines Datenspeicherverfahrens mit den Merkmalen des Anspruchs 9.
- Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
- Vorteilhafte, nachfolgend beschriebene Ausführungsformen der Erfindung sowie das zu deren besserem Verständnis oben erläuterte herkömmliche Ausführungsbeispiel sind in den Zeichnungen dargestellt und werden nachfolgend beschrieben. Hierbei zeigen:
-
1 ein Blockdiagramm einer herkömmlichen Datenspeichervorrichtung, -
2 ein Blockdiagramm einer erfindungsgemäßen Datenspeichervorrichtung, -
3 eine schematische Blockdiagrammdarstellung einer Konfiguration eines Speicherblocks der Datenspeichervorrichtung von2 und -
4 ein Flussdiagramm eines erfindungsgemäßen Datenspeicherverfahrens. - Eine in
2 veranschaulichte erfindungsgemäße Datenspeichervorrichtung100 empfängt Daten DTA von einer externen Einheit200 und führt dieser Daten DTA zu. Die Datenspeichervorrichtung100 beinhaltet einen heterogenen nichtflüchtigen Speicherblock120 , eine Speichersteuereinheit160 , eine Datenklassifikationseinheit140 und eine Eingabe/Ausgabe-Schnittstelleneinheit180 . - Der heterogene nichtflüchtige Speicherblock
120 weist einen nichtflüchtigen Speicher hoher Geschwindigkeit122 und einen davon verschiedenen nichtflüchtigen Speicher124 niedriger Geschwindigkeit auf. Der nichtflüchtige Speicher hoher Geschwindigkeit122 kann z.B. ein FRAM-Speicher, wie in2 gezeigt, oder ein PRAM-Speicher sein. Der nichtflüchtige Speicher niedriger Geschwindigkeit124 kann z.B. ein NAND-Flashspeicher sein. Die Datenzugriffsgeschwindigkeit bzw. Datenverarbeitungsgeschwindigkeit des nichtflüchtigen Speichers hoher Geschwindigkeit122 ist höher als diejenige des nichtflüchtigen Speichers niedriger Geschwindigkeit124 . - Die Datenklassifikationseinheit
140 empfängt Daten DTA über die Eingabe/Ausgabe-Schnittstelleneinheit180 und klassifiziert die Daten DTA gemäß einer Zugriffsfrequenz. Im gezeigten Ausführungsbeispiel werden die Daten als „Besetzt-Daten" BDTA oder „Frei-Daten" FDTA klassifiziert. Die Besetzt-Daten BDTA sind hierbei als Daten definiert, die eine relativ hohe Zugriffsfrequenz haben, wie die oben erwähnten Metadaten. - Die Frei-Daten FDTA sind als Daten definiert, die eine relativ niedrige Zugriffsfrequenz haben, wie die oben erwähnten Nutzerdaten.
- Wie in
2 dargestellt, führt die Datenklassifikationseinheit140 der Speichersteuereinheit160 die Besetzt-Daten BDTA und die Frei-Daten FDTA zu. Die Speichersteuereinheit160 umfasst eine Datenverteilungseinheit166 , eine Steuereinheit162 für den Speicher hoher Geschwindigkeit und eine Steuereinheit164 für den Speicher niedriger Geschwindigkeit. - Die Datenverteilungseinheit
166 empfängt die Besetzt-Daten BDTA von der Datenklassifikationseinheit140 und verteilt sie als Besetzt-Daten BDTA1 an die Steuerschaltung162 für den Speicher hoher Geschwindigkeit oder als Besetzt-Daten BDTA2 an die Steuerschaltung164 für den Speicher niedriger Geschwindigkeit. Wenn im nichtflüchtigen Speicher hoher Geschwindigkeit122 kein Datenspeicherplatz mehr belegt oder erhalten werden kann, wird ein Speicherbelegtsignal XMFUL aktiviert und der Datenverteilungseinheit166 zugeführt. Das Speicherbelegtsignal XMFUL kann von einer nicht gezeigten externen Verarbeitungseinheit bereitgestellt werden, welche die verfügbare Speicherkapazität des nichtflüchtigen Speichers hoher Geschwindigkeit122 überwacht. Wie es sich für den Fachmann versteht, kann es sich bei der externen Verarbeitungseinheit, die das Speicherbelegtsignal XMFUL generiert, z.B. um das Betriebssystem eines die Datenspeichervorrichtung100 enthaltenden Systems handeln. - Die Datenverteilungseinheit
166 reagiert auf das aktivierte Speicherbelegtsignal XMFUL, indem sie der Steuereinheit164 für den Speicher niedriger Geschwindigkeit die Besetzt-Daten BDTA2 zuführt. Wenn andererseits das Speicherbelegtsignal XMFUL nicht aktiviert ist, was bedeutet, dass noch Speicherplatz im nichtflüchtigen Speicher hoher Geschwindigkeit122 verfügbar ist, führt die Datenverteilungseinheit166 der Steuereinheit162 für den Speicher hoher Geschwindigkeit die Besetzt-Daten BDTA1 zu. - Wenn die Datenverteilungseinheit
166 die Besetzt-Daten BDTA1 der Steuereinheit162 für den Speicher hoher Geschwindigkeit zuführt, speichert diese die Besetzt-Daten BDTA1 im nichtflüchtigen Speicher hoher Geschwindigkeit122 gemäß einem Steuersignal HCON für den Speicher hoher Geschwindigkeit. Wenn die Datenverteilungseinheit166 andererseits die Besetzt-Daten BDTA2 der Speichersteuereinheit niedriger Geschwindigkeit164 zuführt, speichert diese die Besetzt-Daten BDTA2 im nichtflüchtigen Speicher niedriger Geschwindigkeit124 gemäß einem Steuersignal LCON für den Speicher niedriger Geschwindigkeit. - Des Weiteren führt die Datenklassifikationseinheit
140 die Frei-Daten FDTA der Steuereinheit164 für den Speicher niedriger Geschwindigkeit zu, welche die Frei-Daten FDTA im nichtflüchtigen Speicher niedriger Geschwindigkeit124 gemäß dem Steuersignal LCON für den Speicher niedriger Geschwindigkeit speichert. - Wenn Daten aus dem Speicherblock
120 abgerufen werden, werden die Datenklassifikationseinheit140 und die Datenverteilungseinheit166 umgangen, und die abgerufenen Daten werden von der Steuereinheit162 für den Speicher hoher Geschwindigkeit und der Steuereinheit164 für den Speicher niedriger Geschwindigkeit der Eingabe/Ausgabe-Schnittstelleneinheit180 zugeführt. Die abgerufenen Daten werden dann über die Eingabe/Ausgabe-Schnittstelleneinheit180 als Ausgabedaten DTA an die externe Einheit200 abgegeben. - Der Austausch der Daten PDTA1, PDTA2 und FDTA zwischen den Speichersteuereinheiten
162 ,164 einerseits und den nichtflüchtigen Speichern122 ,124 andererseits kann unter Verwendung eigens zugewiesener Speicherleitungen oder unter Verwendung eines einzigen Bus systems ausgeführt werden, das so eingerichtet ist, dass es einige der Anschlüsse der Chips der nichtflüchtigen Speicher122 ,124 gemeinsam nutzt, um die Anzahl von genutzten Anschlüssen gering zu halten. -
3 veranschaulicht eine logische Konfiguration des Speicherblocks120 von2 mit dem nichtflüchtigen Speicher hoher Geschwindigkeit, wie einem FRAM, und dem nichtflüchtigen Speicher niedriger Geschwindigkeit, wie einem NAND-Flashspeicher. Normalerweise sind die Frei-Daten, wie Nutzerdaten, in einem entsprechenden Speicherbereich im nichtflüchtigen Speicher niedriger Geschwindigkeit enthalten, während die Besetzt-Daten, wie Metadaten, in einem entsprechenden Speicherbereich im nichtflüchtigen Speicher hoher Geschwindigkeit enthalten sind. Wenn jedoch im nichtflüchtigen Speicher hoher Geschwindigkeit nicht mehr genügend Speicherplatz verfügbar ist, wird der Speicherbereich für die Besetzt-Daten in den nichtflüchtigen Speicher niedriger Geschwindigkeit ausgedehnt, wie in3 dargestellt. -
4 veranschaulicht im Flussdiagramm ein erfindungsgemäßes Verfahren zur Datenspeicherung, bei dem in einem ersten Schritt S210 eine Datenspeichervorrichtung Eingabedaten von einer externen Einheit empfängt. In einem Schritt S230 werden die Eingabedaten abhängig von der Zugriffsfrequenz in Besetzt-Daten oder Frei-Daten klassifiziert. In einem Schritt S250 werden die Eingabedaten an einen heterogenen nichtflüchtigen Speicherblock weitergeleitet. Der Schritt S250 enthält Teilschritte S251, S253, S255 und S257. - Im Teilschritt S251 wird festgestellt, ob die Eingabedaten im Schritt S230 als Besetzt-Daten klassifiziert worden sind. Wenn dies der Fall ist, wird im Teilschritt S253 weiter festgestellt, ob noch ausreichend Datenspeicherplatz in einem nichtflüchtigen Speicher hoher Geschwindigkeit des heterogenen nichtflüchtigen Speicherblocks belegt werden kann. Wenn dies der Fall ist, werden die Besetzt-Daten im Teilschritt S255 dem nichtflüchtigen Speicher hoher Geschwindigkeit zugeführt. Wenn im Abfrageteilschritt S251 festgestellt wurde, dass die Eingabedaten keine Besetzt-Daten sind, oder wenn im nichtflüchtigen Speicher hoher Geschwindigkeit nicht mehr genug Speicherplatz belegt werden kann, werden die Eingabedaten im Teilschritt S257 dem nichtflüchtigen Speicher niedriger Geschwindigkeit des heterogenen nichtflüchtigen Speicherblocks zugeführt.
- In einem Schritt S290 werden die dem heterogenen nichtflüchtigen Speicherblock zugeführten Eingabedaten gespeichert. Speziell wird hierbei in einem Teilschritt S291 auf den nichtflüchtigen Speicher hoher Geschwindigkeit zugegriffen, wenn die Eingabedaten in diesem zu speichern sind, d.h. wenn es sich bei den Eingabedaten um Besetzt-Daten handelt und der nichtflüchtige Speicher hoher Geschwindigkeit nicht voll ist. Andernfalls wird in einem Teilschritt S293 auf den nichtflüchtigen Speicher niedriger Geschwindigkeit zugegriffen, um die Eingabedaten in diesem zu speichern. In diesem Fall handelt es sich bei den Eingabedaten um Frei-Daten, oder der nichtflüchtige Speicher hoher Geschwindigkeit ist voll, wobei es sich dann auch um Besetzt-Daten handeln kann.
- Die eingangs in Verbindung mit
1 erläuterte herkömmliche Datenspeichervorrichtung10 ist in ihrer Datenverarbeitungskapazität dahingehend beschränkt, dass auch die Besetzt-Daten, wie Metadaten, d.h. Daten, auf die häufig zugegriffen wird, im nichtflüchtigen Speicher niedriger Geschwindigkeit abgelegt werden. Demgegenüber ist bei der erfindungsgemäßen Datenspeichervorrichtung und beim erfindungsgemäßen Datenspeicherverfahren vorgesehen, die Besetzt-Daten BDAT im nichtflüchtigen Speicher hoher Geschwindigkeit zu speichern, wenn und soweit dort Speicherplatz verfügbar ist, wobei der nichtflüchtige Speicher hoher Geschwindigkeit eine höhere Datenzugriffsgeschwindigkeit aufweist als der nichtflüchtige Speicher niedriger Geschwindigkeit, wobei er eventuell eine niedrigere Speicherkapazität besitzt. Größere Mengen von Frei-Daten FDAT, d.h. solchen, auf die nicht so häufig zugegriffen wird, werden effektiv im nichtflüchtigen Speicher niedriger Geschwindigkeit abgelegt. Auf diese Weise kann die Erfindung die Datenzugriffsgeschwindigkeit der Datenspeichervorrichtung im Vergleich zum eingangs erwähnten Stand der Technik unter Verwendung begrenzter Ressourcen verbessern. - Wenn der Speicherplatz im nichtflüchtigen Speicher hoher Geschwindigkeit für Besetzt-Daten nicht mehr ausreicht, können letztere adaptiv auch im nichtflüchtigen Speicher niedriger Geschwindigkeit abgelegt werden. Der nichtflüchtige Speicher niedriger Geschwindigkeit ist folglich hinsichtlich seines Speicherplatzes ausreichend flexibel, so dass eine Verschwendung von Speicherressourcen vermieden werden kann.
Claims (13)
- Datenspeichervorrichtung, gekennzeichnet durch – einen Speicherblock (
120 ) mit einem ersten nichtflüchtigen Speicher (122 ) mit einer ersten Datenzugriffsgeschwindigkeit und einem zweiten nichtflüchtigen Speicher (124 ) mit einer gegenüber der ersten niedrigeren zweiten Datenzugriffsgeschwindigkeit, – eine Datenklassifikationseinheit (140 ) zur Klassifizierung extern zugeführter Daten in wenigstens eine erste Datengruppe (Besetzt-Daten) und eine zweite Datengruppe (Frei-Daten), wobei die erste Datengruppe eine höhere Zugriffsfrequenz aufweist als die zweite Datengruppe, und – eine Speichersteuereinheit (160 ) zur Speicherung der von der Datenklassifikationseinheit in die erste Datengruppe klassifizierten Daten im ersten nichtflüchtigen Speicher und der durch die Datenklassifikationseinheit in die zweite Datengruppe klassifizierten Daten im zweiten nichtflüchtigen Speicher. - Datenspeichervorrichtung nach Anspruch 1, weiter dadurch gekennzeichnet, dass die Speichersteuereinheit dafür eingerichtet ist, die in die erste Datengruppe klassifizierten Daten im zweiten nichtflüchtigen Speicher zu speichern, wenn zu deren Speicherung nicht auf den ersten nichtflüchtigen Speicher zugreifbar ist.
- Datenspeichervorrichtung nach Anspruch 1 oder 2, weiter dadurch gekennzeichnet, dass die Speichersteuereinheit folgende Elemente enthält: – eine erste Speichersteuerschaltung (
162 ) zur Speicherung der extern zugeführten Daten im ersten nichtflüchtigen Speicher, – eine zweite Speichersteuerschaltung (164 ) zur Speicherung der extern zugeführten Daten im zweiten nichtflüchtigen Speicher und – eine Datenverteilungseinheit (166 ), die ein für eine Zugriffsmöglichkeit des ersten nichtflüchtigen Speichers indikatives Steuersignal empfängt und die in die erste Datengruppe klassifizierten, extern zugeführten Daten der ersten Speichersteuerschaltung zuführt, wenn das Steuersignal anzeigt, dass der erste nichtflüchtige Speicher zugreifbar ist, und der zweiten Speichersteuerschaltung zuführt, wenn das Steuersignal anzeigt, dass der erste nichtflüchtige Speicher nicht zugreifbar ist. - Datenspeichervorrichtung nach einem der Ansprüche 1 bis 3, weiter gekennzeichnet durch eine mit der Speichersteuereinheit verbundene Pufferschaltung und eine mit der Pufferschaltung verbundene Eingabe/Ausgabe-Schnittstellenschaltung.
- Datenspeichervorrichtung nach einem der Ansprüche 1 bis 4, weiter dadurch gekennzeichnet, dass die in die erste Datengruppe klassifizierten Daten Metadaten beinhalten und/oder die in die zweite Datengruppe gruppierten Daten Nutzerdaten umfassen.
- Datenspeichervorrichtung nach einem der Ansprüche 1 bis 5, weiter dadurch gekennzeichnet, dass der zweite nichtflüchtige Speicher einen NAND-Flashspeicher beinhaltet.
- Datenspeichervorrichtung nach einem der Ansprüche 1 bis 6, weiter dadurch gekennzeichnet, dass der erste nichtflüchtige Speicher von einem vom NAND-Flashspeichertyp verschiedenen Speichertyp ist.
- Datenspeichervorrichtung nach Anspruch 7, weiter dadurch gekennzeichnet, dass der erste nichtflüchtige Speicher einen ferroelektrischen Direktzugriffsspeicher oder einen Phasenänderungs-Direktzugriffsspeicher beinhaltet.
- Verfahren zur Speicherung von Daten in einer Datenspeichervorrichtung, bei dem – Eingabedaten, die von einer externen Einheit übermittelt werden, von der Datenspeichervorrichtung empfangen werden, gekennzeichnet durch folgende Schritte: – Klassifizieren der Eingabedaten in eine erste Datengruppe oder eine zweite Datengruppe in Abhängigkeit von einer Zugriffsfrequenz der Eingabedaten, wobei die erste Datengruppe Daten umfasst, die eine höhere Zugriffsfrequenz haben als die Daten der zweiten Datengruppe, – Speichern der in die zweite Datengruppe gruppierten Eingabedaten in einem zugehörigen nichtflüchtigen Speicher niedrigerer Datenzugriffsgeschwindigkeit in der Datenspeichervorrichtung, – Feststellen, ob Speicherplatz in einem nichtflüchtigen Speicher höherer Datenzugriffsgeschwindigkeit in der Datenspeichervorrichtung verfügbar ist, und – Speichern der in die erste Datengruppe klassifizierten Eingabedaten im nichtflüchtigen Speicher höherer Datenzugriffsgeschwindigkeit, wenn festgestellt wurde, dass dieser ausreichend Speicherplatz verfügbar hat, und ansonsten Speichern der in die erste Datengruppe klassifizierten Eingabedaten im nichtflüchtigen Speicher niedrigerer Datenzugriffsgeschwindigkeit.
- Verfahren nach Anspruch 9, weiter dadurch gekennzeichnet, dass Metadaten in die erste Datengruppe gruppiert werden und/oder Nutzerdaten in die zweite Datengruppe gruppiert werden.
- Verfahren nach Anspruch 9 oder 10, weiter dadurch gekennzeichnet, dass die in die zweite Datengruppe gruppierten Eingabedaten in einem NAND-Flashspeicher als nichtflüchtigen Speicher niedrigerer Datenzugriffsgeschwindigkeit gespeichert werden.
- Verfahren nach einem der Ansprüche 9 bis 11, weiter dadurch gekennzeichnet, dass die in die erste Datengruppe gruppierten Eingabedaten in einem nichtflüchtigen Speicher höher Datenzugriffsgeschwindigkeit eines von einem NAND-Flashspeichertyp verschiedenen Speichertyps gespeichert werden, wenn dort ausreichend Speicherplatz verfügbar ist.
- Verfahren nach Anspruch 12, weiter dadurch gekennzeichnet, dass die in die erste Datengruppe klassifizierten Eingabedaten in einem ferroelektrischen Direktzugriffsspeicher oder einem Phasenänderungs-Direktzugriffsspeicher als nichtflüchtigen Speicher höherer Datenzugriffsgeschwindigkeit gespeichert werden, wenn dort ausreichend Speicherplatz verfügbar ist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050031275A KR100704037B1 (ko) | 2005-04-15 | 2005-04-15 | 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법 |
KR10-2005-0031275 | 2005-04-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102006007201A1 true DE102006007201A1 (de) | 2006-10-19 |
Family
ID=37055593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102006007201A Ceased DE102006007201A1 (de) | 2005-04-15 | 2006-02-15 | Vorrichtung und Verfahren zur Datenspeicherung mit nichtflüchtigen Speichern |
Country Status (4)
Country | Link |
---|---|
US (1) | US7523274B2 (de) |
JP (1) | JP5053552B2 (de) |
KR (1) | KR100704037B1 (de) |
DE (1) | DE102006007201A1 (de) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8560760B2 (en) * | 2007-01-31 | 2013-10-15 | Microsoft Corporation | Extending flash drive lifespan |
US7657572B2 (en) | 2007-03-06 | 2010-02-02 | Microsoft Corporation | Selectively utilizing a plurality of disparate solid state storage locations |
JP5224706B2 (ja) | 2007-03-23 | 2013-07-03 | キヤノン株式会社 | 記憶装置及び記憶装置の制御方法 |
US8429677B2 (en) * | 2007-04-19 | 2013-04-23 | Microsoft Corporation | Composite solid state drive identification and optimization technologies |
KR101498673B1 (ko) * | 2007-08-14 | 2015-03-09 | 삼성전자주식회사 | 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템 |
KR101464338B1 (ko) | 2007-10-25 | 2014-11-25 | 삼성전자주식회사 | 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템 |
JP2009230414A (ja) * | 2008-03-21 | 2009-10-08 | Toshiba Corp | 複数の不揮発性メモリデバイスを有する記憶装置 |
US8069300B2 (en) | 2008-09-30 | 2011-11-29 | Micron Technology, Inc. | Solid state storage device controller with expansion mode |
TWI499906B (zh) * | 2008-12-08 | 2015-09-11 | Apacer Technology Inc | Memory reorganization method of storage device, computer storage medium, computer program product, reorganization method |
US8627017B2 (en) | 2008-12-30 | 2014-01-07 | Intel Corporation | Read and write monitoring attributes in transactional memory (TM) systems |
US8458562B1 (en) | 2008-12-30 | 2013-06-04 | Micron Technology, Inc. | Secondary memory element for non-volatile memory |
US8806101B2 (en) * | 2008-12-30 | 2014-08-12 | Intel Corporation | Metaphysical address space for holding lossy metadata in hardware |
US9785462B2 (en) | 2008-12-30 | 2017-10-10 | Intel Corporation | Registering a user-handler in hardware for transactional memory event handling |
US8245060B2 (en) * | 2009-10-15 | 2012-08-14 | Microsoft Corporation | Memory object relocation for power savings |
KR20110048304A (ko) | 2009-11-02 | 2011-05-11 | 삼성전자주식회사 | 솔더 리플로우에서 코드 데이터의 손실을 방지할 수 있는 방법과 그 장치들 |
US9015441B2 (en) | 2010-04-30 | 2015-04-21 | Microsoft Technology Licensing, Llc | Memory usage scanning |
US8990538B2 (en) | 2010-11-05 | 2015-03-24 | Microsoft Corporation | Managing memory with limited write cycles in heterogeneous memory systems |
US8627176B2 (en) | 2010-11-30 | 2014-01-07 | Microsoft Corporation | Systematic mitigation of memory errors |
US8504106B2 (en) * | 2011-11-01 | 2013-08-06 | Kt Corporation | Smart card and method for managing data of smart card, and mobile terminal |
JP2013142947A (ja) * | 2012-01-10 | 2013-07-22 | Sony Corp | 記憶制御装置、記憶装置および記憶制御装置の制御方法 |
KR20130114354A (ko) | 2012-04-09 | 2013-10-18 | 삼성전자주식회사 | 메모리 시스템 및 컨트롤러의 동작 방법 |
KR101938210B1 (ko) | 2012-04-18 | 2019-01-15 | 삼성전자주식회사 | 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법 |
US9037587B2 (en) | 2012-05-10 | 2015-05-19 | International Business Machines Corporation | System and method for the classification of storage |
US9064603B1 (en) | 2012-11-28 | 2015-06-23 | Samsung Electronics Co., Ltd. | Semiconductor memory device and memory system including the same |
JP6098262B2 (ja) * | 2013-03-21 | 2017-03-22 | 日本電気株式会社 | 記憶装置および記憶方法 |
KR20150033859A (ko) | 2013-09-25 | 2015-04-02 | 삼성전자주식회사 | 반도체 메모리 장치 및 메모리 시스템 |
KR102289919B1 (ko) * | 2014-04-15 | 2021-08-12 | 삼성전자주식회사 | 스토리지 컨트롤러, 스토리지 장치, 스토리지 시스템 및 상기 스토리지 컨트롤러의 동작 방법 |
KR102397582B1 (ko) | 2015-06-22 | 2022-05-13 | 삼성전자주식회사 | 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 이의 작동 방법 |
US10318175B2 (en) * | 2017-03-07 | 2019-06-11 | Samsung Electronics Co., Ltd. | SSD with heterogeneous NVM types |
KR102686924B1 (ko) * | 2018-11-12 | 2024-07-19 | 삼성전자주식회사 | 스토리지 장치의 구동 방법, 이를 수행하는 스토리지 장치 및 이를 포함하는 스토리지 시스템 |
TWI716993B (zh) * | 2019-09-03 | 2021-01-21 | 宜鼎國際股份有限公司 | 雙通道資料儲存系統 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04263386A (ja) * | 1991-02-18 | 1992-09-18 | Fuji Photo Film Co Ltd | Icメモリカード |
JPH05313995A (ja) * | 1992-05-07 | 1993-11-26 | Nec Corp | メモリ制御方式 |
JPH06236316A (ja) * | 1992-12-18 | 1994-08-23 | Toshiba Corp | 情報伝送システム |
JPH07219720A (ja) * | 1993-10-01 | 1995-08-18 | Hitachi Maxell Ltd | 半導体メモリ装置ならびにその制御方法 |
JPH0822404A (ja) | 1994-07-08 | 1996-01-23 | Yaskawa Electric Corp | ファイル管理システム |
JPH09288895A (ja) * | 1996-04-19 | 1997-11-04 | Toshiba Corp | 3値記憶半導体記憶システム |
JPH1131102A (ja) | 1997-07-14 | 1999-02-02 | Toshiba Corp | データ記憶システム及び同システムに適用するアクセス制御方法 |
US5969997A (en) * | 1997-10-02 | 1999-10-19 | International Business Machines Corporation | Narrow data width DRAM with low latency page-hit operations |
KR100252057B1 (ko) * | 1997-12-30 | 2000-05-01 | 윤종용 | 단일 및 이중 데이터 율 겸용 반도체 메모리 장치 |
KR100278653B1 (ko) | 1998-01-23 | 2001-02-01 | 윤종용 | 이중 데이터율 모드 반도체 메모리 장치 |
US6292874B1 (en) * | 1999-10-19 | 2001-09-18 | Advanced Technology Materials, Inc. | Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges |
JP2002007200A (ja) * | 2000-06-16 | 2002-01-11 | Nec Corp | メモリ制御装置及び動作切替方法並びにインターフェース装置、半導体集積チップ、記録媒体 |
US20030005219A1 (en) * | 2001-06-29 | 2003-01-02 | Royer Robert J. | Partitioning cache metadata state |
WO2005029311A1 (ja) * | 2003-09-18 | 2005-03-31 | Matsushita Electric Industrial Co., Ltd. | 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法 |
US7502256B2 (en) * | 2004-11-30 | 2009-03-10 | Siliconsystems, Inc. | Systems and methods for reducing unauthorized data recovery from solid-state storage devices |
-
2005
- 2005-04-15 KR KR1020050031275A patent/KR100704037B1/ko active IP Right Grant
- 2005-12-29 US US11/319,363 patent/US7523274B2/en active Active
-
2006
- 2006-02-15 DE DE102006007201A patent/DE102006007201A1/de not_active Ceased
- 2006-02-17 JP JP2006041379A patent/JP5053552B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP5053552B2 (ja) | 2012-10-17 |
US20060248259A1 (en) | 2006-11-02 |
KR100704037B1 (ko) | 2007-04-04 |
US7523274B2 (en) | 2009-04-21 |
JP2006302255A (ja) | 2006-11-02 |
KR20060109042A (ko) | 2006-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102006007201A1 (de) | Vorrichtung und Verfahren zur Datenspeicherung mit nichtflüchtigen Speichern | |
DE60223394T2 (de) | Verfahren und vorrichtung zum einteilen von anforderungen für einen dynamischen direktzugriffsspeicherbaustein | |
DE69728212T2 (de) | Speichersteuerung und diese verwendendes Rechnersystem | |
DE2445617C2 (de) | Hierarchische Speicheranordnung | |
DE60000471T2 (de) | Intelligenter datenspeicher-verwalter | |
DE69031862T2 (de) | Verfahren zum Lastausgleich für Kanälen und Verwendung desselben in einem Datenverarbeitungssystem | |
DE69933328T2 (de) | Mehrweg-Cachespeichervorrichtung und Verfahren | |
DE60012081T2 (de) | Nichtflüchtige Halbleiterspeicheranordnung, die eine Datenleseoperation während einer Datenschreib/lösch-Operation erlaubt | |
DE112006003358T5 (de) | Verteilung von Speicherzugriffsanforderungen | |
DE10296959T5 (de) | System und Verfahren zum Steuern der Buszuteilung während Cache-Speicher-Burstzyklen | |
DE102019102883A1 (de) | Technologien zum Bewegen von Arbeitslasten zwischen Hardwarewarteschlangenmanagern | |
DE10219623A1 (de) | System und Verfahren zur Speicherentscheidung unter Verwendung von mehreren Warteschlangen | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE112010005609T5 (de) | Speichern von Daten in einem einer Mehrzahl von Puffern in einer Speichersteuerung | |
DE69025580T2 (de) | Auffrichungspuffer für Speicherkarte | |
DE69327391T2 (de) | Informationssystem und Verfahren zur Pufferspeicherverwaltung | |
DE102016007651B4 (de) | Numerische Steuerung mit Funktion zur automatischen Auswahl eines Speicherungsziels für ein Bearbeitungsprogramm | |
EP1352318B1 (de) | Mikroprozessorschaltung für tragbare datenträger | |
DE112015003568T5 (de) | Auswirkung ungleichmässiger kanalauslastung auf die leistungsreduktion in festkörperlaufwerken | |
DE102004013635A1 (de) | Verfahren und Vorrichtung zur Vergabe von Buszugriffsrechten in Multimaster-Bussystemen | |
EP0134822B1 (de) | Digitalspeicher | |
CH495584A (de) | Datenverarbeitungsanlage | |
EP0012207B1 (de) | Speicherhierarchie mit Ladungsverschiebungsspeicher | |
DE69835787T2 (de) | Microcontroller mit internem und externem Speicher | |
DE102018123563B4 (de) | Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R016 | Response to examination communication | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |