EP2281241A1 - Verfahren zum adressieren von seitenorientierten nichtflüchtigen speichern - Google Patents
Verfahren zum adressieren von seitenorientierten nichtflüchtigen speichernInfo
- Publication number
- EP2281241A1 EP2281241A1 EP08760120A EP08760120A EP2281241A1 EP 2281241 A1 EP2281241 A1 EP 2281241A1 EP 08760120 A EP08760120 A EP 08760120A EP 08760120 A EP08760120 A EP 08760120A EP 2281241 A1 EP2281241 A1 EP 2281241A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- memory
- logbook
- volatile memory
- address
- lbk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
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
- 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
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
Definitions
- the invention relates to a method for addressing memory pages of a nonvolatile memory in a memory system with a memory controller and a further volatile memory, wherein the nonvolatile memory is organized in erasable memory blocks with a plurality of memory pages, and each
- Memory page which contains a number of sectors, can be written individually, and in the volatile memory, an address translation table is maintained, in which an assignment of logical memory page addresses to physical memory page addresses is specified.
- SSD solid state disks
- the data sets in the storage system are addressed as logical sectors that can be read, written and deleted as required.
- Flash memory has the limitation that only written to deleted memory cells and only larger blocks of sectors can be deleted together. Now, if a sector is to be written changed within a block, this is written in the previous method in a deleted sector in an alternative block. If this sector is now to be changed again, it must be written in another alternative block and all other, unchanged sectors in the new alternative block copy. Since the memory blocks can contain a large number of sectors - currently blocks with a size of 256 kbytes - a great deal of work is required for copying unchanged sectors.
- Modern flash memories can be addressed on a page-oriented basis. Four or eight sectors are combined into a memory page and written together in a deleted area of the memory block.
- the aforementioned method with the escape blocks could also be applied to memory pages rather than sectors, but it retains its disadvantages.
- a large address translation table is maintained in the volatile memory of a memory system by the memory controller, which includes the current logical page address mappings to physical page addresses. This table is also used as a reconstruction table in the non-volatile
- the log is saved in non-volatile memory.
- Fig. 1 a typical memory system is shown.
- Fig. 2 shows the structure of the address allocation table in the RAM.
- Fig. 3 the structure of the log is shown in the RAM.
- FIG. 4 shows the structure of the reconstruction table in the flash memory.
- a memory system MS is shown, via a host bus HB with a
- the host bus can be implemented in various ways, such as Universal Serial Bus USB or SATA BUS.
- the memory commands with the associated logical addresses reach the host via the HB bus
- the data sets of the memory system are stored in the non-volatile memories, here as flash memory FM with multiple chips.
- a memory controller MC evaluates and executes the memory commands.
- the volatile memory RAM is the address assignment table
- the reconstruction table RT is stored. Newer address mappings from logical to physical
- Page addresses are noted in the logbook LBK in the RAM. Likewise the usage of the logbook is written in the usage table ULT.
- the logbook table LBK is saved in the flash memory FM.
- a battery BAT is available, which provides the necessary energy for the backup process.
- the battery BAT can also be designed as a rechargeable battery or as a capacitor.
- the address assignment table AT contains the physical page addresses PPA to all the logical addresses LA.
- the logical address LA is divided into the logical page address LPA and the sector address SA.
- the logical page address LPA serves as an index from 0 to n in the table.
- the physical address PA used is the current one physical page address PPA, here with the index A, and the sector address SA formed. If a new physical page address is needed to write a memory page, the entry is changed in the address mapping table.
- the reconstruction table RT is held in a nonvolatile memory FM. Its structure is shown in FIG. It contains a copy of the address assignment table at the time of the last save.
- the index in the table is the logical page address LPA and the entries indicate associated physical page addresses PPA. This mapping is not fully up to date because the address mapping table has changed since the last backup.
- the address assignment table AT When the address assignment table AT is reconstructed after a deliberate or unwanted power failure, it is currently created from the reconstruction table and the saved logbook by replacing the outdated entries, in this example PPAx and PPAy, with the current assignments from the logbook. For this purpose, the logbook is read out sequentially and the respective entries in the address assignment table AT are rewritten. In this case, entries are also replaced several times, here with the example PPAx. At the end of the readout, the address assignment table AT is up to date.
- the logbook list can be organized as a linear list or as a linked list.
- the logbook has a certain maximum length.
- the current address assignment table AT is newly stored as a reconstruction table RT in the non-volatile memory. Since the reconstruction table RT can be very long and thus extends over several memory blocks, only the memory block of the reconstruction table RT is rewritten, whose entries have undergone the most changes.
- a usage table ULT is included in the volatile memory, in which the number of changes per memory block is counted. It is now in this usage table ULT after the Memory block of the reconstruction table RT searched with most changes. This memory block is rewritten with the current address assignments and chained into the reconstruction table RT.
- the described steps allow memory operations in large flash memory systems, in particular solid state disks, to be carried out much faster than in the previously customary methods.
- the costly copying of unaltered sectors from one memory block to another is minimized, namely to the sectors of a memory page.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Die Erfindung beschreibt ein Verfahren zur Adressierung von Speicherseiten eines nichtflüchtigen Speichers in einem Speichersystem (MS) mit einem Speichercontroller (MC) und einem weiteren flüchtigen Speicher (RAM), bei dem der nichtflüchtige Speicher in löschbaren Speicherblöcken mit einer Vielzahl von Speicherseiten organisiert ist, und jede Speicherseite, die eine Anzahl von Sektoren enthält, einzeln geschrieben werden kann, und bei dem im flüchtigen Speicher eine Adressumsetzungstabelle (AT) gehalten ist, in der eine Zuordnung von logischen Speicherseitenadressen (LPA) zu physikalischen Speicherseitenadressen (PPA) angegeben ist, wobei durch den Speichercontroller (MC)- eine Rekonstruktionstabelle (RT) als Kopie der Adressumsetzungstabelle in einem oder mehreren Speicherblöcken im nichtflüchtigen Speicher (FM) abgespeichert wird, eine Logbuchtabelle (LBK) mit Datensätzen über geänderte Zuordnungen von logischen Speicherseitenadressen (LPA) zu physikalischen Speicherseitenadressen (PPA) im flüchtigen Speicher (RAM) mitgeführt wird, und wenn die Logbuchtabelle (LBK) eine vorbestimmte Größe überschreitet, eine geänderte Rekonstruktionstabelle (RT) im nichtflüchtigen Speicher abgespeichert wird.
Description
Unser Zeichen: H 159-33
Verfahren zum Adressieren von seitenorientierten nichtflüchtigen Speichern
Die Erfindung betrifft ein Verfahren zur Adressierung von Speicherseiten eines nichtflüchtigen Speichers in einem Speichersystem mit einem Speichercontroller und einem weiteren flüchtigen Speicher, bei dem der nichtflüchtige Speicher in löschbaren Speicherblöcken mit einer Vielzahl von Speicherseiten organisiert ist, und jede
Speicherseite, die eine Anzahl von Sektoren enthält, einzeln geschrieben werden kann, und bei dem im flüchtigen Speicher eine Adressumsetzungstabelle gehalten ist, in der eine Zuordnung von logischen Speicherseitenadressen zu physikalischen Speicherseitenadressen angegeben ist.
Mit der Einführung von Solid State Disks (SSD) werden große Sp eicher Systeme auf der Basis von Flashspeichern realisiert, die wie herkömmliche magnetische Speichersysteme betrieben werden können. Die Datensätze im Speichersystem werden als logische Sektoren angesprochen, die beliebig gelesen, geschrieben und gelöscht werden. Mit den Flashspeichern ist die Einschränkung verbunden, dass nur in gelöschte Speicherzellen geschrieben werden kann und nur größere Blöcke von Sektoren gemeinsam gelöscht werden können. Wenn nun ein Sektor innerhalb eines Blockes verändert geschrieben werden soll, wird dieser in den bisherigen Verfahren in einen gelöschten Sektor in einem Ausweichblock geschrieben. Soll nun dieser Sektor ein weiteres Mal geändert werden, ist er in einen weiteren Ausweichblock zu schreiben und alle sonstigen, unveränderten Sektoren in den neuen Ausweichblock zu kopieren. Da die Speicherblöcke sehr viele Sektoren enthalten können - aktuell sind Blöcke mit einer Größe von 256kByte - ist ein großer Aufwand für das Kopieren von unveränderten Sektoren erforderlich. Das Speichersystem wird dadurch langsam. Um dieses Problem zu entschärfen, sind einige Vorschläge gemacht worden. So ist in der Patentschrift DE 103 49 595 beschrieben, dass gleiche Sektoren, die mehrfach verändert werden, sequentiell in den gleichen Ausweichblock geschrieben werden können. Dazu ist aber eine weitere Tabelle erforderlich, die die Position des aktuellen
Sektors angibt und bei jeder Speicheroperation hinzugezogen werden muss. Dadurch wird die Geschwindigkeit des Speichersystems nur teilweise verbessert.
Moderne Flashspeicher sind seitenorientiert adressierbar. Es werden vier oder acht Sektoren zu einer Speicherseite zusammengefasst und gemeinsam in einen gelöschten Bereich des Speicherblocks geschrieben. Das zuvor genannte Verfahren mit den Ausweichblöcken könnte auch auf Speicherseiten statt auf Sektoren angewendet werden, es behielte aber seine Nachteile.
Es ist die Aufgabe der Erfindung ein Verfahren zum Beschreiben von seitenorientierten Speichern zu offenbaren, bei dem die Geschwindigkeit des Speichersystems bei beliebigen Speicheroperationen deutlich höher ist als bei den bisherigen Verfahren.
Diese Aufgabe wird durch die Merkmale des Anspruchs 1 gelöst. In Anspruch 7 ist ein Speichersystem beschrieben, mit dem das Verfahren durchgeführt wird. Die abhängigen Ansprüche beschreiben vorteilhafte Ausgestaltungen der Erfindung.
Um das Verfahren durchzuführen, wird im flüchtigen Speicher eines Speichersystems durch den Speichercontroller eine große Adressumsetzungstabelle geführt, die die aktuellen Zuordnungen von logischen Seitenadressen zu physikalischen Seitenadressen beinhaltet. Diese Tabelle wird auch als Rekonstruktionstabelle in den nichtflüchtigen
Speicher geschrieben.
Bei jedem erneuten Schreiben einer Speicherseite wird eine gelöschte Speicherseite zu dieser logischen Speicheradresse in der Adresszuordnungstabelle eingetragen und der veränderte Speicherseiteninhalt in diese geschrieben. Gleichzeitig wird diese neue
Zuordnung der Seitenadresse in einem Logbuch vermerkt.
Bei einem Stromausfall wird das Logbuch im nichtflüchtigen Speicher gesichert.
Bei einem Wiederanlauf des Speichersystems nach einem gewollten oder ungewollten Stromausfall wird die Adresszuordnungstabelle im flüchtigen Speicher aus der
Rekonstruktionstabelle und dem Logbuch neu aufgebaut.
Die Einzelheiten des Verfahrens und des Speichersystems werden anhand der Figuren näher erläutert.
In Fig. 1 ist ein typisches Speichersystem dargestellt. In Fig. 2 ist der Aufbau der Adresszuordnungstabelle im RAM gezeigt. In Fig. 3 ist der Aufbau des Logbuchs im RAM gezeigt.
In Fig. 4 ist der Aufbau der Rekonstruktionstabelle im Flashspeicher gezeigt.
In Fig. 1 ist ein Speichersystem MS dargestellt, das über einen Hostbus HB mit einem
Computersystem verbunden ist. Der Hostbus kann in verschiedener Art ausgeführt sein, etwa als Universal Serial Bus USB oder als SATA-BUS. Über den Hostbus HB gelangen die Speicherbefehle mit den zugehörigen logischen Adressen an das
Speichersystem.
Die Datensätze des Speichersystems sind in den nichtfiüchtigen Speichern gespeichert, hier als Flashspeicher FM mit mehreren Chips ausgeführt. In dem Speichersystem wertet ein Speichercontroller MC die Speicherbefehle aus und führt sie durch. Dazu wird im flüchtigen Speicher RAM die Adresszuordnungstabelle
AT geführt, die die logischen Adressen zu physikalische Adressen für den Zugriff auf den Flashspeicher FM zuordnet.
In einem nichtflüchtigen Flashspeicherchip wird die Rekonstruktionstabelle RT abgespeichert. Neuere Adresszuordnungen von logischen zu physikalischen
Seitenadressen werden im Logbuch LBK im RAM vermerkt. Ebenso wird die Nutzung des Logbuchs in der Nutzungstabelle ULT mitgeschrieben.
Bei einem Stromausfall wird die Logbuchtabelle LBK im Flashspeicher FM gesichert. Um dies zu gewährleisten ist eine Batterie BAT vorhanden, die die notwendige Energie für den Sicherungsvorgang bereitstellt. Die Batterie BAT kann auch als Akkumulator oder als Kondensator ausgeführt sein.
Wie in Fig. 2 dargestellt, enthält die Adresszuordnungstabelle AT die physikalischen Seitenadressen PPA zu allen Logischen Adressen LA. Die logische Adresse LA ist in die logische Seitenadresse LPA und die Sektoradresse SA geteilt. Die logische Seitenadresse LPA dient als Index von 0 bis n in die Tabelle. Bei Speicherbefehlen wie Schreiben oder Lesen wird die genutzte physikalische Adresse PA aus der aktuellen
physikalischen Seitenadresse PPA, hier mit dem Index A, und der Sektoradresse SA gebildet. Falls für das Schreiben einer Speicherseite eine neue physikalische Seitenadresse benötigt wird, wird in der Adresszuordnungstabelle der Eintrag geändert.
Diese Änderung wird auch im Logbuch LBK vermerkt, dessen wesentliche Struktur in Fig. 3 dargestellt ist. Es enthält Einträge zu den erfolgten Adresszuordnungen von logischen Seitenadressen, hier LPAx und LPAy, zu den jeweils geänderten physikalischen Seitenadressen, hier PPAxI bis PPAx3 und PPAyI.
Die Rekonstruktionstabelle RT ist einem nichtflüchtigen Speicher FM gehalten. Ihre Struktur ist in Fig. 4 gezeigt. Sie enthält eine Kopie der Adresszuordnungstabelle zum Zeitpunkt des letzten Sicherns. Der Index in die Tabelle ist die Logische Seitenadresse LPA und die Einträge geben zugeordnete physikalische Seitenadressen PPA an. Diese Zuordnung ist nicht vollständig aktuell, da sich die Adresszuordnungstabelle seit der letzten Sicherung geändert hat.
Bei einem erneuten Aufbau der Adresszuordnungstabelle AT nach einem gewollten oder ungewollten Stromausfall wird sie aus der Rekonstruktionstabelle und dem gesicherten Logbuch aktuell erstellt, indem die nicht mehr aktuellen Einträge, in diesem Beispiel PPAx und PPAy, durch die aktuellen Zuordnungen aus dem Logbuch ersetzt werden. Dazu wird das Logbuch sequentiell ausgelesen und die jeweiligen Einträge in der Adresszuordnungstabelle AT neu geschrieben. Dabei werden auch Einträge mehrfach ersetzt, hier bei dem Beispiel PPAx. Am Ende des Auslesens ist die Adresszuordnungstabelle AT auf dem aktuellen Stand. Die Logbuchliste kann dabei als lineare Liste oder als verkettete Liste organisiert sein.
Das Logbuch besitzt eine bestimmte maximale Länge. Wenn diese Länge erreicht wird, wird die aktuelle Adresszuordnungstabelle AT als Rekonstruktionstabelle RT neu in dem nichtflüchtigen Speicher abgespeichert. Da die Rekonstruktionsstabelle RT sehr lang sein kann und sich damit über mehrere Speicherblöcke erstreckt, wird auch nur der Speicherblock der Rekonstruktionstabelle RT neu geschrieben, dessen Einträge die meisten Änderungen erfahren haben. Dazu wird im flüchtigen Speicher eine Nutzungstabelle ULT mitgeführt, in der die Anzahl der Änderungen pro Speicherblock mitgezählt werden. Es wird nun in dieser Nutzungstabelle ULT nach dem
Speicherblock der Rekonstruktionstabelle RT mit den meisten Änderungen gesucht. Dieser Speicherblock wird mit den aktuellen Adresszuordnungen neu geschrieben und in die Rekonstruktionstabelle RT eingekettet. Danach werden die Einträge in dem Logbuch LBK und der Nutzungstabelle ULT gelöscht, die sich auf diesen aktualisierten Speicherblock der Rekonstruktionstabelle RT beziehen. Dadurch wird das Logbuch entsprechend gekürzt und kann wieder mit aktuellen Änderungen beschrieben werden. Der ersetzte Speicherblock der Rekonstruktionstabelle RT wird zum Löschen freigegeben.
Durch die beschriebenen Schritte können Speicheroperationen in großen Flashspeichersystemen, insbesondere bei Solid State Disks, sehr viel schneller durchgeführt werden als in den bisher üblichen Verfahren. Das aufwendige Kopieren von nicht geänderten Sektoren von einem Speicherblock zu einem andren wird auf ein Minimum reduziert, nämlich auf die Sektoren einer Speicherseite.
Bezugszeichen:
AT Adresszuordnungstabelle
BAT Batterie
FM Flashspeicher
HB Host Bus
LA Logische Adresse
LBK Logbuch
LPA Logische Seitenadresse
MB Memory Bus
MC Speichercontroller
MS Speichersystem
PA Physikalische Adresse
PPA Physikalische Seitenadresse
RAM Random Access Memory
RT Rekonstruktionstabelle
SA Sektor Adresse
SSD Solid State Disk
ULT Nutzungstabelle des Logbuchs
Claims
1. Verfahren zur Adressierung von Speicherseiten eines nichtflüchtigen Speichers in einem Speichersystem (MS) mit einem Speichercontroller (MC) und einem weiteren flüchtigen Speicher (RAM), bei dem der nichtflüchtige Speicher in löschbaren Speicherblöcken mit einer Vielzahl von Speicherseiten organisiert ist, und jede Speicherseite, die eine Anzahl von Sektoren enthält, einzeln geschrieben werden kann, und bei dem im flüchtigen Speicher eine Adressumsetzungstabelle (AT) gehalten ist, in der eine Zuordnung von logischen Speicherseitenadressen (LPA) zu physikalischen Speicherseitenadressen (PPA) angegeben ist dadurch gekennzeichnet, dass durch den Speichercontroller (MC)
- eine Rekonstruktionstabelle (RT) als Kopie der Adressumsetzungstabelle in einem oder mehreren Speicherblöcken im nichtflüchtigen Speicher (FM) abgespeichert wird,
- eine Logbuchtabelle (LBK) mit Datensätzen über geänderte Zuordnungen von logischen Speicherseitenadressen (LPA) zu physikalischen Speicherseitenadressen (PPA) im flüchtigen Speicher (RAM) mitgeführt wird, und
- wenn die Logbuchtabelle (LBK) eine vorbestimmte Größe überschreitet, eine geänderte Rekonstruktionstabelle (RT) im nichtflüchtigen Speicher abgespeichert wird und dann Datensätze in der Logbuchtabelle (LBK), die Adresszuordnungen beschreiben, die nicht mehr aktuell sind, aus der Logbuchtabelle gelöscht werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass bei einem Stromausfall des Speichersystems (MS) die Logbuchtabelle (LBK) in den nichtflüchtigen Speicher übertragen wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass beim Start des Speichersystems nach einem Stromausfall die Rekonstruktionstabelle (RT) in den flüchtigen Speicher (RAM) übertragen wird und anhand der gespeicherten Logbuchtabelle eine aktuelle Adresszuordnungstabelle (AT) gebildet wird.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Adresszuordnungstabelle (AT und die Rekonstruktionstabelle (RT) in der Reihenfolge der logischen Speicherseitenadressen (LPA) geordnet sind.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass in einer Nutzungstabelle (ULT) für die Speicherblöcke, in denen die Rekonstruktionstabelle (RT) gespeichert ist, ein Zähler für jeden Speicherblock über die Häufigkeit seiner Änderungen mitgeführt wird und bei der Größenüberschreitung der Logbuchtabelle (LBK) der Speicherblock der Rekonstruktionstabelle (RT) mit den meisten Änderungen der Adresszuordnungen mit den aktuellen Adresszuordnungen neu geschrieben wird.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass Speicherblöcke, die nicht mehr gültige Teile der Rekonstruktionstabelle (RT) enthalten, zum Löschen freigegeben werden.
7. Speichersystem mit einem nichtflüchtigen Speicher (FM), einem Speichercontroller (MC) und einem flüchtigen Speicher (RAM), das so eingerichtet ist, dass es ein Verfahren nach einem der vorstehenden Ansprüche ausführen kann.
8. Speichersystem nach Anspruch 7, dadurch gekennzeichnet, dass der nichtflüchtige Speicher (FM) ein Flashspeicher ist.
9. Speichersystem nach Anspruch 8, dadurch gekennzeichnet, dass eine Speicherseite vier oder acht Sektoren enthält und ein Speicherblock 64 oder 128 Seiten enthält.
10. Speichersystem nach Anspruch 7, dadurch gekennzeichnet, dass ein Energiespeicher (BAT) vorgesehen ist, dessen Kapazität ausreicht, um einen Schreib Vorgang der Logbuchtabelle (LBK) in den nichtflüchtigen Speicher (FM) bei einem Stromausfall zu gewährleisten.
11. Speichersystem nach Anspruch 10, dadurch gekennzeichnet, dass der Energiespeicher (BAT) eine Batterie, ein Akkumulator oder ein Kondensator ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2008/056524 WO2009143885A1 (de) | 2008-05-28 | 2008-05-28 | Verfahren zum adressieren von seitenorientierten nichtflüchtigen speichern |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2281241A1 true EP2281241A1 (de) | 2011-02-09 |
Family
ID=40280884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP08760120A Withdrawn EP2281241A1 (de) | 2008-05-28 | 2008-05-28 | Verfahren zum adressieren von seitenorientierten nichtflüchtigen speichern |
Country Status (3)
Country | Link |
---|---|
US (1) | US20100250837A1 (de) |
EP (1) | EP2281241A1 (de) |
WO (1) | WO2009143885A1 (de) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104614B2 (en) * | 2011-09-16 | 2015-08-11 | Apple Inc. | Handling unclean shutdowns for a system having non-volatile memory |
US10445229B1 (en) | 2013-01-28 | 2019-10-15 | Radian Memory Systems, Inc. | Memory controller with at least one address segment defined for which data is striped across flash memory dies, with a common address offset being used to obtain physical addresses for the data in each of the dies |
US9454474B2 (en) * | 2013-03-05 | 2016-09-27 | Western Digital Technologies, Inc. | Methods, devices and systems for two stage power-on map rebuild with free space accounting in a solid state drive |
KR102458312B1 (ko) * | 2017-06-09 | 2022-10-24 | 삼성전자주식회사 | 스토리지 장치 및 이의 동작 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1667014A1 (de) * | 2003-09-18 | 2006-06-07 | Matsushita Electric Industrial Co., Ltd. | Halbleiterspeicherkarte, halbleiterspeichersteuervorrichtung und halbleiterspeichersteuerverfahren |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100449708B1 (ko) * | 2001-11-16 | 2004-09-22 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
US6707748B2 (en) * | 2002-05-07 | 2004-03-16 | Ritek Corporation | Back up power embodied non-volatile memory device |
DE10227255B4 (de) * | 2002-06-19 | 2008-06-26 | Hyperstone Gmbh | Verfahren zur Wiederherstellung von Verwaltungsdatensätzen eines blockweise löschbaren Speichers |
US6831865B2 (en) * | 2002-10-28 | 2004-12-14 | Sandisk Corporation | Maintaining erase counts in non-volatile storage systems |
KR100457812B1 (ko) * | 2002-11-14 | 2004-11-18 | 삼성전자주식회사 | 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법 |
US8244958B2 (en) * | 2005-05-09 | 2012-08-14 | Sandisk Il Ltd. | Method and system for facilitating fast wake-up of a flash memory system |
-
2008
- 2008-05-28 WO PCT/EP2008/056524 patent/WO2009143885A1/de active Application Filing
- 2008-05-28 EP EP08760120A patent/EP2281241A1/de not_active Withdrawn
- 2008-05-28 US US12/742,033 patent/US20100250837A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1667014A1 (de) * | 2003-09-18 | 2006-06-07 | Matsushita Electric Industrial Co., Ltd. | Halbleiterspeicherkarte, halbleiterspeichersteuervorrichtung und halbleiterspeichersteuerverfahren |
Non-Patent Citations (1)
Title |
---|
See also references of WO2009143885A1 * |
Also Published As
Publication number | Publication date |
---|---|
US20100250837A1 (en) | 2010-09-30 |
WO2009143885A1 (de) | 2009-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60217883T2 (de) | Verfahren zum schreiben von daten in einen nicht-flüchtigen speicher | |
DE19782041B4 (de) | Verfahren zum Durchführen eines kontinuierlichen Überschreibens einer Datei in einem nicht-flüchtigen Speicher | |
DE69034227T2 (de) | EEprom-System mit Blocklöschung | |
DE102006003261A1 (de) | Speichersystem und Verfahren zur Datenzusammenführung | |
DE102008057219B4 (de) | Verfahren zum Betreiben eines Solid-State-Speichersystems, Solid-State-Speichersystem und Computersystem | |
DE102017104158A1 (de) | Gültigkeitsverfolgung für garbage collection | |
DE60030876T2 (de) | Bereichsverwaltung eines nichtflüchtigen Speichers mit hoher Kapazität | |
DE60035780T2 (de) | Schaltung für plattenantriebskontroller und verfahren zur überschlagung von defekten oder ungewünschten sektoren | |
DE102009034651A1 (de) | Prozess und Verfahren zur Abbildung von logischen Adressen auf physische Adressen in Festkörperplatten | |
DE102019132371A1 (de) | Zuordnungsverwaltung logisch zu physisch unter Verwendung von nichtflüchtigem Speicher | |
DE102008036822A1 (de) | Verfahren zum Speichern von Daten in einem Solid-State-Speicher, Solid-State-Speichersystem und Computersystem | |
DE112020000139T5 (de) | Nicht sequentiell in zonen aufgeteilte namensräume | |
DE202010017665U1 (de) | Datenverteilung bei einer Datenspeichervorrichtung mit Flash-Speicherchips | |
DE102005001038B3 (de) | Verfahren zur Umsetzung von logischen in reale Blockadressen in Flashspeichern | |
DE102005031525A1 (de) | Verfahren und System zur Steuerung eines Flashspeichers und Speichersystem | |
DE112008000180T5 (de) | Verfahren und System für die Umsetzung eines Fast-Wakeup eines Flashspeichersystems | |
DE19537305A1 (de) | Halbleiter-Platteneinrichtung und Speicherverwaltungsmethode | |
DE102009031923A1 (de) | Verfahren zum Verwalten von Datenobjekten | |
DE112020005787T5 (de) | Verbesserte dateisystem-unterstützung für zonen-namespace-speicher | |
DE112004001255T5 (de) | Speichervorrichtung und Speichersystem | |
DE112010004667T5 (de) | Speichervorrichtung und Speichersteuerung | |
DE202018102304U1 (de) | NAND-Flash-Speichervorrichtung mit NAND-Puffer | |
DE112022000468T5 (de) | Unterschiedliche schreibpriorisierung in zns-vorrichtungen | |
EP2281241A1 (de) | Verfahren zum adressieren von seitenorientierten nichtflüchtigen speichern | |
DE102012203713A1 (de) | Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20100309 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA MK RS |
|
DAX | Request for extension of the european patent (deleted) | ||
17Q | First examination report despatched |
Effective date: 20110803 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20131203 |