DE10330493A1 - Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table - Google Patents
Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table Download PDFInfo
- Publication number
- DE10330493A1 DE10330493A1 DE2003130493 DE10330493A DE10330493A1 DE 10330493 A1 DE10330493 A1 DE 10330493A1 DE 2003130493 DE2003130493 DE 2003130493 DE 10330493 A DE10330493 A DE 10330493A DE 10330493 A1 DE10330493 A1 DE 10330493A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- entry
- information
- reconstruction table
- memory information
- 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/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1433—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Die Erfindung betrifft ein Verfahren zur Verwaltung von charakterisierenden Speicherinformationen in einem sektorweise beschreibbaren und blockweise löschbaren nichtflüchtigen Speicher, der zur Reorganisation eine Rekonstruktionstabelle enthält, die zyklisch neu geschrieben wird.The The invention relates to a method for the management of characterizing Memory information in a sector-wise recordable and block by block erasable nonvolatile Memory that contains a reconstruction table for reorganization, the is written cyclically.
Die weit verbreiteten nichtflüchtigen Halbleiterspeicher (Flashspeicher) sind in Blöcken und in Sektoren organisiert, wobei ein Block z.B. aus 32 Sektoren mit je 512 Bytes besteht. Die Speicher besitzen die Eigenschaft, dass neue Informationen sektorweise geschrieben werden und nur vorher gelöschte Sektoren geschrieben werden können. Das Löschen erfolgt jeweils für einen Block für alle Sektoren gemeinsam. Das Schreiben eines Sektors in den Speicher dauert länger als das Lesen und eine Löschoperation eines Blockes erfordert eine lange Zeit, z.B. mehrere Millisekunden.The widely used nonvolatile Semiconductor memories (flash memories) are organized in blocks and in sectors, where a block is e.g. consists of 32 sectors with 512 bytes each. The Memory own the property that new information sector by sector written and written only previously deleted sectors can be. The deleting takes place for each a block for all sectors together. Writing a sector in the store takes longer as the read and a delete operation of a block requires a long time, e.g. several milliseconds.
Ein Verfahren zur Reorganisation eines nichtflüchtigen Speichers mittels einer Rekonstruktionstabelle ist aus der unveröffentlichten deutschen Patentanmeldung 10227255.7 bekannt.One Method for reorganizing a nonvolatile memory by means of a Reconstruction table is from the unpublished German patent application 10227255.7 known.
Im nichtflüchtigen Speicher werden ein oder mehrere Datenblöcke reserviert, in die eine Rekonstruktionstabelle geschrieben wird. Diese Rekonstruktionstabelle besitzt eine definierte Länge von z.B. 128 Sektoren. In einem flüchtigen Merkspeicher werden für die Speicherblöcke, die beschrieben werden, Verwaltungsdatensätze erstellt, in denen unter anderem die logischen und physikalischen Blockadressen vermerkt sind, sowie die Adressen der Ausweichblöcke, in die aktuell geschrieben wird. Werden nun neue Speicherblöcke beschrieben oder neue Ausweichblöcke bereitgestellt und veraltete Zuordnungen von logischen zu physikalischen Blockadressen aufgelöst, wird fortlaufend je ein Eintrag in die Rekonstruktionstabelle geschrieben. Der jeweilige Eintrag in der Rekonstruktionstabelle enthält mindestens die logische Blockadresse, die physikalische Blockadresse des originären Speicherblocks sowie die Adresse des eventuell benutzten Ausweichblocks.in the nonvolatile Memory is reserved one or more blocks of data into which one Reconstruction table is written. This reconstruction table has a defined length from e.g. 128 sectors. In a volatile memory memory for the memory blocks, the administrative records are created in which noted the logical and physical block addresses are, as well as the addresses of the alternative blocks, in the currently written becomes. Now become new memory blocks described or new alternative blocks provided and obsolete assignments from logical to physical Block addresses resolved, an entry is written continuously in the reconstruction table. The respective entry in the reconstruction table contains at least the logical block address, the physical block address of the original memory block as well as the address of the possibly used alternative block.
Wenn nun nach einem Stromausfall ein Wiederanlauf des Speichersystems stattfindet, werden vom Programm des Speichercontrollers die Verwaltungsdatensätze im flüchtigen Merkspeicher leer initialisiert und dann die Rekonstruktionstabelle vom Anfang an durchgegangen und die Zuordnungen entsprechend jedes Eintrags in der Rekonstruktionstabelle in die Verwaltungsdatensätze eingetragen. Dies wird für jeden Eintrag in der Rekonstruktionstabelle wiederholt, bis, das Ende dieser Tabelle erreicht ist. Dabei ist es durchaus möglich, dass einige Zuordnungen mehrfach überschrieben werden, da sie auch im Laufe der ursprünglichen Speicherungen aktualisiert wurden. Es wird aber am Ende des Wiederanlaufs der aktuelle Stand der Adresszuordnungen in den Verwaltungsdatensätzen wieder hergestellt, wie er vor dem Stromausfall bestanden hat.If now after a power failure a restart of the storage system From the program of the storage controller, the administrative records are volatile Memory memory is initialized empty and then the reconstruction table gone through from the beginning and assignments according to each Entry in the reconstruction table entered into the administrative records. This will be for repeats each entry in the reconstruction table until that End of this table is reached. It is quite possible that Overwritten several assignments several times as they are also updated in the course of the original saves were. But it will be at the end of the restart of the current state the address mappings in the administrative records restored as he before the power failure.
In der beschriebenen Ausführung der Rekonstruktionstabelle ist diese so aufgebaut, dass jeder Eintrag in der Tabelle genau einen Sektor lang ist, auch wenn nicht alle Bytes des Sektors gefüllt sind. Da der Speicher immer sektorweise geschrieben wird, ist kein Zusatzaufwand für eine Datenaufbereitung erforderlich. Auch wenn einiger Speicherplatz auf diese Weise nicht genutzt wird, fällt dies bei der Größe des gesamten Speichers nicht ins Gewicht. Da auch alle Sektoren ab dem aktuellen Eintrag in der Tabelle gelöscht sind, wird ohne weiteren Aufwand der nächste Eintrag direkt in die Tabelle geschrieben.In the described embodiment the reconstruction table is this constructed so that every entry in the table is exactly one sector long, even if not all Bytes of the sector filled are. Since the memory is always written sector by sector, is not Additional expenses for a data preparation required. Even if some space on not used this way, this is due to the size of the whole Memory does not matter. Since all sectors from the current Entry in the table deleted are, without further effort, the next entry directly into the Table written.
Da die Rekonstruktionstabelle eine definierte Länge besitzt, z.B. 128 Einträge, wird sie im normalen Speicherbetrieb bis fast an das Ende gefüllt. Vorteilhafterweise wird, wenn der vorletzte Eintrag geschrieben wurde, eine Reorganisation gestartet. Dazu wird ein Vermerk über die Reorganisation als letzter Eintrag in die Rekonstruktionstabelle geschrieben. Dann werden alle Adresszuordnungen, wie sie in den Verwaltungsdatensätzen aktuell aufgeführt sind, aufgelöst und damit ein definierter Grundzustand in den Verwaltungsdatensätzen hergestellt, wie er auch bei einem Wiederanlauf des Systems als erstes initialisiert würde.There the reconstruction table has a defined length, e.g. 128 entries, will they filled in normal storage mode until almost the end. advantageously, is, if the penultimate entry was written, a reorganization started. This is a note about the reorganization last Entry written in the reconstruction table. Then everyone will Address mappings, as current in the administrative records listed are dissolved and thus a defined ground state established in the administrative records, such as it also initializes at a restart of the system first would.
Nach einer erfolgreichen Reorganisation wird ein Fertig-Eintrag in die Rekonstruktionstabelle geschrieben. Dieser Fertig-Eintrag wird vorteilhafterweise mit einem Zählwert versehen, der bei jeder Reorganisation hochgezählt wird und damit die Gesamtanzahl der Reorganisationen des Speichers seit Fertigung anzeigt.To a successful reorganization will be a done entry in the Reconstruction table written. This finished entry is advantageously with a count which is incremented during each reorganization and thus the total number the reorganizations of the store since manufacturing indicates.
Bei jeder Reorganisation wird eine neue Rekonstruktionstabelle in anderen Speicherblöcken angelegt. Diese werden aus dem Vorrat an gelöschten Speicherblöcken genommen, die entweder noch ursprünglich gelöscht sind oder von einem Hintergrundprogramm gelöscht wurden. Der Fertig-Eintrag wird als erster Eintrag in die neue Rekonstruktionstabelle geschrieben. Die bisherigen Blöcke für die Rekonstruktionstabelle werden dann freigegeben und damit so gekennzeichnet, dass sie von dem Hintergrundprogramm für das Löschen bearbeitet werden.at every reorganization becomes a new reconstruction table in others memory blocks created. These are taken from the store of deleted memory blocks, either originally deleted or deleted from a background program. The finished entry is written as the first entry in the new reconstruction table. The previous blocks for the Reconstruction table are then released and thus marked, that they are edited by the background program for deletion.
Falls bei dem Vorgang der Reorganisation der Strom ausfällt und noch kein neuer Fertig-Eintrag geschrieben wurde, wird beim Wiederanlauf des Systems die Reorganisation neu gestartet. Die Reorganisation ist beliebig oft wiederholbar.If in the process of reorganization the power fails and yet no new finished entry has been written, it will be restarted the system reboots the reorganization. The reorganization is repeatable as often as you like.
Falls der Fertig-Eintrag schon geschrieben wurde, aber die bisherige Rekonstruktionstabelle noch nicht freigegeben wurde, kann es vorkommen, dass bei dem Wiederanlauf des Systems zwei Reorganisationstabellen, die bisherige und die neue, gefunden werden. Dann wird anhand des Zählwertes im Fertig-Eintrag der Rekonstruktionstabelle festgestellt, welches die neuere Tabelle ist, und der Reorganisationsvorgang wird entsprechend fortgesetzt. Somit wird auch in solchen Fällen das korrekte Weiterarbeiten des Speichersystems sichergestellt.If the finished entry has already been written, but the previous reconstruction table still has not been released, it can happen that during the restart of the system two reorganization tables, the previous and the new, to be found. Then, based on the count in the finished entry the reconstruction table found which is the newer table is, and the reorganization process is continued accordingly. Thus, even in such cases to ensure the correct further operation of the storage system.
In dem beschriebenen Verfahren sind aber keine Vorkehrungen getroffen, charakterisierende Speicherinformationen, wie Konfigurationsdaten über die Speicheraufteilung und/oder Chiffre-Schlüssel, effizient zu speichern. Das sichere Führen solcher Informationen ist besonders mit dem Aufkommen von sogenannten Secure Digital Cards wichtig geworden, die in geschützte und ungeschützte Bereiche geteilt sind.In the described method, however, no provision is made characterizing storage information, such as configuration data about the Memory allocation and / or cipher keys to store efficiently. Safe guiding such information is especially with the emergence of so-called Secure digital cards have become important in protected and unprotected Areas are shared.
Es ist Aufgabe der Erfindung, das bekannte Verfahren der Reorganisation von nichtflüchtigen Speichern so zu erweitern, dass die charakterisierenden Speicherinformationen effizient gehalten werden und zu beliebigen Zeitpunkten geändert werden können.It Object of the invention, the known method of reorganization from nonvolatile memories to expand so that the characterizing memory information be kept efficient and changed at any time can.
Gelöst wird diese Aufgabe dadurch, dass die charakterisierenden Speicherinformation in einem vorbestimmten Eintrag der Rekonstruktionstabelle gehalten sind.Is solved this task in that the characterizing memory information held in a predetermined entry of the reconstruction table are.
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben.advantageous Embodiments of the invention are specified in the subclaims.
Die Rekonstruktionstabelle wird im nichtflüchtigen Speicher gehalten und sektorweise beschrieben. Ein Eintrag in einem Sektor enthält eine Kennung für die Art des Eintrags und Informationen über die geschriebenen und gelöschten Speicherblöcke, aus denen bei einem Wiederanlauf des Speichers der aktuelle Zustand rekonstruiert wird. Eine Kennung für einen Eintrag stellt der Fertig-Eintrag dar. Er wird bei jeder Reorganisation des Speichers an den Anfang einer neuen Reorganisationstabelle geschrieben. Er enthält neben anderen Daten Platz für Verwaltungsdaten, der für die charakterisierenden Speicherinformationen genutzt wird.The Reconstruction table is kept in nonvolatile memory and described sectorally. An entry in a sector contains an identifier for the Type of entry and information about the written and deleted memory blocks, off those at a restart of the memory of the current state is reconstructed. An identifier for an entry represents the Done entry. It is used at every reorganization of the storage written the beginning of a new reorganization table. He contains beside Space for Administrative data for the characterizing memory information is used.
Die charakterisierenden Speicherinformationen sind verschiedene permanente Daten, welche die Aufteilung und die Nutzung des Speichers beschreiben. Eine Aufteilung schafft z.B. eine variable Grenze zwischen einem geschützten und einem ungeschützten Speicherbereich. Auch das Abbild von Konfigurationsregistern können in diesen Informationen enthalten sein. Weitere Nutzerdaten darin können auch Chiffrierschlüssel sein, die zur Ver- und Entschlüsselung von Speicherbereichen dienen.The characterizing memory information is various permanent Data describing the distribution and use of the storage. A division creates e.g. a variable border between one protected and an unprotected one Storage area. The image of configuration registers can also be stored in be included in this information. More user data in it can also encryption be for encryption and decryption serve storage areas.
Falls diese charakterisierenden Speicherinformationen geändert werden, werden die neuen Informationen durch ein übergeordnetes Betriebs system in einem entsprechend gekennzeichneten Eintrag in der Rekonstruktionstabelle vermerkt.If this characterizing memory information will be changed The new information is provided by a higher-level operating system in a correspondingly marked entry in the reconstruction table noted.
Beim Anlauf des Speichersystems werden die Daten aus dem aktuellen Fertig-Eintrag gelesen und eventuell durch in der Rekonstruktionstabelle nachfolgende, entsprechend gekennzeichnete Einträge aktualisiert.At the Startup of the storage system will be the data from the current finished entry read and possibly followed by in the reconstruction table, Updated corresponding entries.
Bei einer Reorganisation des Speichers wird die aktualisierte Fassung der charakterisierenden Speicherinformationen in den neuen Fertig-Eintrag geschrieben.at a reorganization of the memory is the updated version the characterizing memory information written in the new finished entry.
Eine
vorteilhafte Ausführung
der Erfindung ist in der
Die normalen Rekonstruktionseinträge sind mit RE gekennzeichnet und enthalten die logischen Blockadressen LBA und die Speicherblockadressen SBA sowie die Ausweichblockadressen ABA von Schreibvorgängen in den Speicher. Auch dort ist Platz für allgemeine Verwaltungsdaten vorgesehen.The normal reconstruction entries are marked with RE and contain the logical block addresses LBA and the memory block addresses SBA and the alternative block addresses ABA of writes in the store. There is also room for general administrative data intended.
Ein Eintrag mit geänderten charakterisierenden Speicherinformationen CSI ist mit dem Kennzeichen SD versehen. Auch in diesem Eintrag ist Platz für allgemeine Verwaltungsdaten VD geschaffen.One Entry with changed characterizing memory information CSI is marked with SD provided. Also in this entry is space for general administrative data VD created.
Das Ende einer Rekonstruktionstabelle RKT ist durch den Eintrag OE gekennzeichnet, der auch weitere Verwaltungsdaten enthalten kann.The End of a reconstruction table RKT is identified by the entry OE, which may also contain further administrative data.
Claims (7)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2003130493 DE10330493A1 (en) | 2003-07-05 | 2003-07-05 | Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table |
TW93126296A TWI262386B (en) | 2003-07-05 | 2004-09-01 | Method for managing information in memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2003130493 DE10330493A1 (en) | 2003-07-05 | 2003-07-05 | Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10330493A1 true DE10330493A1 (en) | 2005-02-10 |
Family
ID=34041654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2003130493 Withdrawn DE10330493A1 (en) | 2003-07-05 | 2003-07-05 | Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE10330493A1 (en) |
TW (1) | TWI262386B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2299100A1 (en) | 2009-09-04 | 2011-03-23 | Mark IV Systèmes Moteurs | Intake manifold with integrated crankase ventialtion and vehicle comprising such an intake manifold |
-
2003
- 2003-07-05 DE DE2003130493 patent/DE10330493A1/en not_active Withdrawn
-
2004
- 2004-09-01 TW TW93126296A patent/TWI262386B/en active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2299100A1 (en) | 2009-09-04 | 2011-03-23 | Mark IV Systèmes Moteurs | Intake manifold with integrated crankase ventialtion and vehicle comprising such an intake manifold |
Also Published As
Publication number | Publication date |
---|---|
TWI262386B (en) | 2006-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102009034651A1 (en) | Process and method for mapping logical addresses to physical addresses in solid state disks | |
DE60317551T2 (en) | MAINTAINING EQUALITY OF EXHAUST FREQUENCY IN A NON-VOLATILE STORAGE SYSTEM | |
DE69034191T2 (en) | EEPROM system with multi-chip block erasure | |
DE60030876T2 (en) | Scope management of a high-capacity non-volatile memory | |
DE19600081C2 (en) | Ensuring data integrity for data carrier cards | |
DE60319563T2 (en) | MANAGEMENT OF THE NUMBER OF DELETIONS IN A NON-FLUID MEMORY | |
DE112013000900B4 (en) | Preserving Redundancy in Data Deduplication Systems Using a Scoreboard | |
EP2923261B1 (en) | Method for controlling a flash memory for mass storage, which is comprised by a communications device that can be connected to a host, and computer program product for carrying out said method | |
DE112017005868T5 (en) | MANAGING I / O FLOWS FOR DATA OBJECTS IN A STORAGE SYSTEM | |
DE102017112489B4 (en) | JOURNALIZED MULTIPLE STREAM REPLAY | |
DE10227255B4 (en) | Method for recovering management records of a block-erasable memory | |
WO2005026963A1 (en) | Management of erased blocks in flash memories | |
EP1676203B1 (en) | Method for writing memory sectors in a memory deletable by blocks | |
DE10330493A1 (en) | Management of characteristic memory information, especially in flash memory, whereby the characteristic memory information is stored in a defined entry in the memory reconstruction table | |
EP2948894B1 (en) | Method for securely erasing a non-volatile semiconductor mass memory, computer system, and computer program product | |
WO2006024328A1 (en) | Method for managing memory data | |
DE10321104B4 (en) | Method for filing variable data | |
DE112021005198T5 (en) | High-resolution tape directory for tape-based storage | |
DE10257861A1 (en) | Storage system with a non-volatile storage element that overwrites directly without redundancy, and the associated writing method | |
EP1625592A1 (en) | Device and method for treating a state of a memory | |
DE102012006457A1 (en) | Method for encrypting data on a storage medium | |
EP1999731B1 (en) | Memory management of chip cards | |
DE102009036095A1 (en) | Method for managing storage resources in a portable volume | |
DE102007044199A1 (en) | A mass storage controller and method for providing data for booting a computer | |
WO2006074869A1 (en) | Data storage system and method for operation thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8127 | New person/name/address of the applicant |
Owner name: HYPERSTONE GMBH, 78467 KONSTANZ, DE |
|
8130 | Withdrawal |