DE19960258A1 - Flash-Speicher-Einheit und Verfahren zur Steuerung des Flash-Speichers - Google Patents
Flash-Speicher-Einheit und Verfahren zur Steuerung des Flash-SpeichersInfo
- Publication number
- DE19960258A1 DE19960258A1 DE19960258A DE19960258A DE19960258A1 DE 19960258 A1 DE19960258 A1 DE 19960258A1 DE 19960258 A DE19960258 A DE 19960258A DE 19960258 A DE19960258 A DE 19960258A DE 19960258 A1 DE19960258 A1 DE 19960258A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- cluster
- flash memory
- address information
- memory unit
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Microcomputers (AREA)
- Memory System (AREA)
Abstract
Eine Flash-Speichereinheit enthält einen Adressinformationsspeicher und eine Datenschreibeinheit. Der Adressinformationsspeicher registriert eine Adressinformation über leere Bereiche in einem Cluster, bestehend aus einer Mehrzahl von Sektoren, und die Datenschreibeinheit schreibt im Ansprechen auf eine Datenschreibanforderung die Daten in wenigstens einen der leeren Bereiche entsprechend der Adressinformation über die leeren Bereiche. Dadurch wird es ermöglicht, eine Schwierigkeit eines herkömmlichen Flash-Speichers dahingehend zu lösen, dass die Anzahl von Takten bzw. das Zeitmaß beim Löschen des herkömmlichen Flash-Speichers auf etwa ein Zehntel der der Größe eines EEPROM beschränkt ist und daher nicht häufig Daten überschrieben bzw. umgeschrieben werden können.
Description
Die vorliegende Erfindung bezieht sich auf eine Flash-
Speicher-Einheit bzw. Flash-Memory-Einheit einschließlich
eines Flash-Speichers bzw. Flash-Memorys wie eines Flash-
EEPROM's (electrically erasable programmable read only
memory, elektrisch löschbarer Festwertspeicher) zur Auf
zeichnung von nichtflüchtigen Daten. Die vorliegende Erfin
dung bezieht sich ebenfalls auf ein Verfahren zur Steuerung
des Flash-Speichers.
Ein eingebautes System wie ein mobiles Telefonsystem
verwendet heutzutage ein Flash-Speicher mit Direktzugriff
zur Speicherung von Programmen des Systems, ein EEPROM zur
Aufzeichnung von häufig überschriebenen Daten und eher ei
nes kleinen Betrags nichtflüchtiger Daten und einen Flash-
Speicher zum seriellen Schreiben oder ein SRAM (static
random acces memory, statischer Speicher mit Direktzugriff)
mit einer Sicherheitsspannungsversorgung für die Aufzeich
nung eines großen Betrags von Daten.
Das EEPROM, welches eine größere Anzahl von Speicher
elementen pro Bit als der Flash-Speicher benötigt, erfor
dert höhere Kosten pro Bit. Das SRAM mit einer Sicherheits
spannungsversorgung erhöht ebenfalls wegen der Sicherheits
spannungsversorgung die Kosten. Somit besitzt das Aufzeich
nen von getrennt in diesen Speichern gespeicherten Daten in
dem Flash-Speicher den Vorteil einer Reduzierung des Unter
bringungs- bzw. Anordnungsbereichs und der Kosten der An
ordnung.
Ein derartiger herkömmlicher Flash-Speicher in einem
eingebauten System kann nicht ein Systemprogramm lesen,
während ein anderes Systemprogramm geschrieben wird, und
darüber hinaus schreibt es das Systemprogramm unter Verwen
dung einer speziellen Verarbeitung. Vor kurzem ist jedoch
ein Flash-Speicher (hiernach als BGO-Flash-Speicher (BGO,
background operation, Hintergrundbetrieb) bezeichnet) in
Erscheinung getreten, welcher Daten aus einem Bereich des
Speichers lesen kann, während Daten in einen anderen Be
reich geschrieben werden. Dadurch wird es ermöglicht den
Flash-Speicher zur Speicherung von Daten in den Flash-Spei
cher zur Speicherung des Programms zu integrieren.
Als Beispiel, bei welchem Daten in einem Flash-Speicher
gespeichert werden, offenbart die japanische Patentveröf
fentlichungsschrift Nr. 7-50558/1995 eine in Fig. 14 darge
stellte Halbleiterdisk.
Dieses System verwendet einen Flash-Speicher 4 als
Halbleiterdisk und besitzt einen Kontroller 1, ein RAM 2,
einen Buskontroller 3 und einen internen Bus 5 zur Steue
rung der Halbleiterdisk. Der Flash-Speicher 4 besitzt je
doch eine Beschränkung, welche das EEPROM oder das SRAM
nicht aufweist.
Die Beschränkung besteht darin, dass der Flash-Speicher
4 lediglich Daten unidirektional entweder von 0 auf 1 oder
1 auf 0 schreiben kann. Um somit einen beschriebenen Be
reich zu überschreiben, muss der gesamte Block einschließ
lich des Bereichs vor dem Schreiben der Daten gelöscht wer
den, so dass 0-en oder 1-en in dem Block geschrieben wer
den. Dies erschwert dem herkömmlichen Flash-Speicher ein
Schreiben (und Löschen) auf einer Basis Byte um Byte wie
bei dem EEPROM oder dem SRAM.
Mit der oben beschriebenen Struktur kann der herkömmli
che Flash-Speicher Daten in einem einmal beschriebenen Be
reich überschreiben, wenn der gesamte Block einschließlich
dieses Bereiches gelöscht wird. Die Anzahl von Takten bzw.
das Zeitmaß beim Löchen des Flash-Speichers beträgt jedoch
etwa ein Zehntel der Größe des EEPROM's, was eine Schwie
rigkeit bei der Aufzeichnung von häufig überschriebenen Da
ten darstellt.
Aufgabe der vorliegenden Erfindung ist es die oben be
schriebenen Schwierigkeiten zu überwinden. Insbesondere ist
es Aufgabe der vorliegenden Erfindung eine Flash-Speicher
einheit bereitzustellen, welche zur Handhabung häufig über
schriebener Daten geeignet ist.
Die Lösung der Aufgabe erfolgt durch die Merkmale der
nebengeordneten unabhängigen Ansprüche.
Entsprechend der vorliegenden Erfindung enthält eine
Flash-Speichereinheit: eine Adressinformationsspeicherein
richtung zur Speicherung einer Adressinformation über leere
Bereichen in einem Cluster bestehend aus einer Mehrzahl von
Sektoren; eine Datenschreibeinrichtung zum Schreiben der
Daten im Ansprechen auf eine Datenschreibanforderung in we
nigstens einen der leeren Bereiche entsprechend der Adress
information über die leeren Bereiche; und eine Adressinfor
mationaktualisierungseinrichtung zur Aktualisierung der
Adressinformation, die wenigstens einem der leeren Bereiche
zugeordnet ist, in welche die Daten geschrieben werden,
nachdem die Datenschreibeinrichtung das Schreiben der Daten
vollendet hat.
Wenn der Cluster keinen leeren Bereich enthält, kann
dabei die Datenschreibeinrichtung die Daten in einen ande
ren nicht verwendeten Cluster schreiben und kann ein Flash-
Löschen (flash erasing) des Clusters ohne einen leeren Be
reich durchführen.
Die Datenschreibeinrichtung kann ein Kopierflag des
Clusters ohne einen leeren Bereich beim Schreiben der Daten
in dem anderen nicht verwendeten Cluster gültig machen.
Die Flash-Speichereinheit kann des weiteren wenigstens
einem nicht verwendeten Cluster neben Clustern aufweisen,
die bei einer Anwendung (application) verwendet werden kön
nen.
Wenn ein Schreibfehler während des Schreibens von Daten
in den leeren Bereich des Clusters oder in den anderen
nicht verwendeten Clustern auftritt, kann die Datenschreib
einrichtung Daten in noch einen anderen Cluster schreiben
und kann ein Flash-Löschen des Clusters durchführen, in dem
der Schreibfehler auftritt.
Die Flash-Speichereinheit kann des weiteren zwei oder
mehrere nicht verwendete Cluster neben Clustern aufweisen,
die bei einer Anwendung verwendet werden können.
Die Flash-Speichereinheit kann des weiteren eine ID-Ma
nagementeinrichtung zur Registrierung einer einzigen ID
bzw. Kennzeichnung für jeden Cluster, der bei einer Anwen
dung verwendet wird, und für die Registrierung von IDs für
nicht verwendete Cluster aufweisen, die anzeigen, dass die
nicht verwendeten Cluster verfügbar sind.
Wenn ein Schreibfehler von Daten auftritt, kann die ID-
Managementeinrichtung eine ID anzeigen, die anzeigt, dass
der Cluster, in welchem der Schreibfehler auftritt, nicht
beschreibbar ist.
Die Flash-Speichereinheit kann des weiteren zwei oder
mehrere ID-Aufzeichnungsbereiche zur Aufzeichnung einer
selben ID in einem Vorsatz jedes Clusters aufweisen.
Die Adressinformationsspeichereinrichtung kann in einem
Vorsatz jedes Clusters eine Bittabelle zur Anzeige eines
verwendeten Zustands eines Speichers wie der Adressinforma
tion über die leeren Bereiche aufweisen.
Die Datenschreibeinrichtung kann die Daten unmittelbar
nach den vorausgehenden Daten ohne Zwischenraum schreiben.
Jeder der Sektoren kann eine Vielzahl von Datenblöcken
enthalten, und die Datenschreibeinrichtung kann die Daten
in einem leeren Bereich eines der Datenblöcke entsprechend
einem Flag eines verwendeten Zustands schreiben, welches in
einem Vorsatz von jedem der Sektoren zur Anzeige eines ver
wendeten Zustands der Datenblöcke aufgezeichnet wurde.
Wenn der eine der Datenblöcke keinen leeren Bereich
enthält, kann die Datenschreibeinrichtung die Daten in ei
nen leeren Bereich eines anderen Datenblocks schreiben.
Die Flash-Speichereinheit kann des weiteren eine Zei
ger- bzw Pointerbildungseinrichtung zur Bildung von flüch
tigen Speicherzeigern bzw. -pointern zur Anzeige von Orten
der Datenblöcke aufweisen, welche die Daten speichern.
Entsprechend der vorliegenden Erfindung wird des weite
ren ein Verfahren zur Steuerung- eines Flash-Speichers be
reitgestellt, mit den Schritten: Speichern von Adressinfor
mation über leere Bereiche in einem Cluster eines Flash-
Speichers, welcher aus einer Mehrzahl von Sektoren besteht;
Schreiben im Ansprechen auf eine Datenschreibanforderung
der Daten in wenigstens einen der leeren Bereiche entspre
chend der Adressinformation über leere Bereiche; und Aktua
lisieren der Adressinformation, welche wenigstens einem der
leeren Bereiche zugeordnet ist, in welche die Daten ge
schrieben werden.
Die vorliegende Erfindung wird in nachfolgenden Be
schreibung unter Bezugnahme auf die Zeichnung erläutert.
Fig. 1 zeigt ein Blockdiagramm, welches eine erste Aus
führungsform einer Flash-Speichereinheit der vorliegenden
Erfindung darstellt;
Fig. 2 zeigt ein Diagramm, welches eine innere Struktur
und einen Cluster-Managementbereich eines BGO-Flash-Spei
chers darstellt;
Fig. 3 zeigt ein Flussdiagramm, welches ein Datenwie
dergewinnungsverfahren bzw. -regenerierungsverfahren veran
schaulicht;
Fig. 4 zeigt ein Diagramm, welches die Zuweisung von
Cluster-ID's während der Datenregenerierung veranschau
licht;
Fig. 5 zeigt ein Diagramm, welches eine innere Daten
struktur in einer Anwendung veranschaulicht;
Fig. 6 zeigt ein Diagramm, welches Datenlese- und Da
tenschreibverfahren veranschaulicht;
Fig. 7 zeigt ein Diagramm, welches Beziehungen zwischen
Speicherortoffsetinformation und Daten darstellt;
Fig. 8 zeigt ein Flussdiagramm, welches ein Daten
schreibverfahren veranschaulicht;
Fig. 9 zeigt ein Diagramm, welches eine innere Daten
struktur in einer Anwendung veranschaulicht;
Fig. 10 zeigt ein Diagramm, welches Beziehungen zwi
schen Datenblöcken und Flags eines aktiven Blocks einer in
neren Seite und Flags eines verbrauchten bzw. erschöpften
Blocks einer inneren Seite veranschaulicht;
Fig. 11 zeigt ein Diagramm, welches Beziehungen zwi
schen einem verwendeten Zustand eines Datenbereichs und Da
tenbereichen veranschaulicht;
Fig. 12 zeigt ein Flussdiagramm, welches ein Anfangs
programm des Erzeugens eines Datenwiedererlangungszeigers
veranschaulicht;
Fig. 13 zeigt ein Flussdiagramm, welches ein Daten
schreibverfahren veranschaulicht; und
Fig. 14 zeigt ein Flussdiagramm, welches eine herkömm
liche Halbleiterdisk darstellt, die Daten in einem Flash-
Speicher speichert.
Die vorliegende Erfindung wird unter Bezugnahme auf die
zugehörigen Figuren beschrieben.
Fig. 1 zeigt ein Blockdiagramm, welches eine erste Aus
führungsform einer Flash-Speichereinheit der vorliegenden
Erfindung darstellt. Entsprechend Fig. 1 bezeichnet Bezugs
zeichen 11 einen BGO-Flash-Speicher (BGO: background
operation, Hintergrundbetrieb), welcher aus Clustern be
steht, von denen jeder eine Mehrzahl von Sektoren aufweist,
und in einem ersten Sektor eine Adressinformation über
leere Bereiche speichert. Wie oben beschrieben kann der
BGO-Flash-Speicher 11 Daten aus einem Bereich des Speichers
lesen, während Daten in einen anderen Bereich geschrieben
werden. Bezugszeichen 12 bezeichnet einen Mikrocomputer zur
Steuerung des BGO-Flash-Speichers 11; Bezugszeichen 13 be
zeichnet ein RAM des Mikrocomputers 12; und Bezugszeichen
14 bezeichnet eine CPU des Mikrocomputers 12. Die CPU 14
dient als Adressinformationsspeichereinrichtung zur Spei
cherung der Adressinformation über die leeren Bereiche in
dem ersten Sektor jedes Clusters; als Datenschreibeinrich
tung zum Schreiben von Daten in den leeren Bereich entspre
chend der Adressinformation über die leeren Bereiche in dem
Cluster im Ansprechen auf eine Schreibanforderung; als
Adressinformationsaktualisierungseinrichtung zum Aktuali
sieren der Adressinformation über den leeren Bereich; als
ID-Managementeinrichtung zur Registrierung einer ID in je
dem Cluster; und als Zeigerbildungseinrichtung.
Eine Anordnung wie ein Mobiltelefon wird an das System
von Fig. 1 als periphere Anordnung angeschlossen.
Als nächstes wird der Betrieb der ersten Ausführungs
form beschrieben.
Zuerst werden physikalische Adressen, Clustermanage
mentbereiche und Anwendungsbereiche des BGO-Flash-Speichers
11 unter Bezugnahme auf Fig. 2 beschrieben. Es wird dabei
angenommen, dass der BGO-Flash-Speicher 11 bis zu FFh ge
löscht ist bzw. wird und die Daten lediglich in Richtung
von 1 auf 0 geschrieben werden.
Entsprechend Fig. 2 besteht jeder Cluster, d. h. ein
Löschblock (erasure block), aus n Seiten, und es ist ein
Vier-Byte-Cluster-Managementbereich an der Spitze der Seite
0 jedes Clusters vorgesehen. Der Cluster-Managementbereich
besteht aus drei Cluster-ID's und einem Kopierflag. Die
drei Cluster-ID's speichern denselben Wert und werden gül
tig, wenn zwei oder mehrere Cluster-ID's miteinander über
einstimmen. Da die Cluster-ID's in einem Cluster-Manage
mentbereich jeweils aus einem Byte bestehen, können sie 254
Cluster außer für 00h und FFh darstellen. Jedes Cluster
wird einer einzigen Cluster-ID bestehend aus denselben drei
Cluster-ID's zugewiesen, und ein oder mehrere Cluster (d. h.
ihre Cluster-ID's) werden einer Anwendung zugewiesen.
Da der Wert FFh einen Anfangszustand darstellt, dient
er als leere Cluster-ID, welche auf einen beschreibbaren
Cluster zeigt, und der Wert 00h dient als ungültige Clu
ster-ID, da er einen nicht beschreibbaren Cluster anzeigt.
Auf die drei Cluster-ID's folgend ist das 1-Byte-Ko
pierflag reserviert, und der verbleibende Bereich jedes
Clusters (Löschblock) bildet einen Anwendungsbereich, der
zum freien Gebrauch der Anwendung reserviert ist, die dem
Cluster zugewiesen ist.
Jede Anwendung ist ihrer eigenen Anwendungs-ID anstelle
von physikalischen Adressen zugewiesen, in denen ihre Daten
unter der Beschränkung gespeichert sind, dass jede Anwen
dungs-ID einzig einer einzigen durch das System verwendeten
Anwendung zugewiesen ist.
Beim Zugreifen auf den BGO-Flash-Speicher 11 sucht die
Anwendung nach einer der Cluster-ID's, die mit ihrer eige
nen Anwendungs-ID übereinstimmt, sucht nach der physikali
schen Adresse entsprechend dem Cluster und berechnet die
Schreib- oder Leseadresse ihrer Daten.
Da der BGO-Flash-Speicher 11 seine Daten auf einer Ba
sis Block um Block löschen muss (d. h. auf der Basis Cluster
um Cluster), muss eine Durchführung vorgenommen werden, so
gar wenn lediglich ein bestimmter Bereich des Blocks ge
löscht werden muss, und es müssen die benötigten Daten vor
dem Löschen des Blocks gesichert werden.
Jedoch wird es unter Berücksichtigung der Kosten, des
Zwecks der Verwendung des BGO-Flash-Speichers 11 und der
Zuverlässigkeit der Daten nicht bevorzugt, die benötigten
Daten in dem RAM 13 zu sichern. Somit müssen die Daten in
dem BGO-Flash-Speicher 11 eher als in dem RAM 13 gesichert
werden, was einen leeren Bereich (nämlich einen leeren Clu
ster) bezüglich des BGO-Flash-Speichers 11 erfordert, in
welchen keine Daten geschrieben sind. Dieser Prozess des
Erlangens eines leeren Clusters zur Sicherung der benötig
ten Daten und des darauffolgenden Löschens des ursprüngli
chen Blocks wird Datenwiedergewinnung bzw. -regenerierung
(data reclaim) genannt, was in dem BGO-Flash-Speicher 11
unvermeidbar ist.
Das Datenregenerierungsverfahren wird nun unter Bezug
nahme auf Fig. 3 und 4 beschrieben.
Wenn die Datenregenerierung eines Clusters A in dem
Schritt ST1 beispielsweise nötig wird, durchsucht die An
wendung des Clusters A den BGO-Flash-Speicher 11 nach einem
leeren Cluster in dem Schritt ST2. Wenn der Cluster D ein
leerer Cluster wie in Fig. 4(a) veranschaulicht ist, er
langt die Anwendung die Adresse des leeren Clusters
(Cluster D) in dem Schritt ST4 entsprechend ihrer Cluster-
ID.
Wenn kein leerer Cluster vorhanden ist, löscht die An
wendung einen ungültigen Cluster, um in dem Schritt ST3 ei
nen leeren Cluster zu bilden, und erlangt die Adresse des
leeren Clusters in dem Schritt ST4.
Auf das Erhalten der Adresse des leeren Clusters ändert
die Anwendung des Clusters A das Kopierflag des derzeitigen
Clusters A auf 01h in dem Schritt ST5 und registriert seine
eigene Anwendungs-ID (01h) in dem leeren Cluster (Cluster
D) in dem Schritt ST6 wie in Fig. 4(b) veranschaulicht.
Auf die Registrierung der eigenen Anwendungs-ID in dem
leeren Cluster (Cluster D) kopiert die Anwendung des Clu
sters A ihre benötigten Daten auf den leeren Cluster in dem
Schritt ST7 und vollendet in den Schritten ST8 und ST9 das
Datenregenerierungsverfahren durch Löschen oder Ungültigma
chen des alten Clusters, des Clusters A, nach Vollendung
des Kopierens wie in Fig. 4(c) dargestellt.
In einem Fall, bei welchem ein Fehler wie ein Span
nungsausfall während der Datenregenerierung stattfindet,
ist es wahrscheinlich, dass zwei oder mehrere Cluster mit
derselben Cluster-ID erscheinen. In einem derartigen Fall
müssen die duplizierten Cluster beim Hochfahren der System
energie bzw. -spannung wegen der Beschränkung entfernt wer
den, dass die Duplizierung derselben Cluster-ID außer für
FFh und OOh aufgehoben werden muss.
Somit werden die duplizierten Cluster beim Start des
Systems überprüft, so dass das duplizierte Cluster mit dem
Kopierflag FFh zerstört wird. Dies geschieht aus dem Grund,
dass dann, wenn der Systemfehler vor der Löschung oder der
Ungültigkeit der Daten auftritt, es schwierig ist den Punkt
des Erreichens der Datenregenerierung zu bestimmen. Somit
wird das Kopierziel, dessen Flag bei FFh aufrechterhalten
wird, nach der Bestimmung der Kopierquelle zerstört, deren
Kopierflag verändert worden ist (siehe Schritt ST5 von Fig.
3). Dies liegt daran, dass ein Aufrechterhalten der Kopier
quelle es ermöglicht die Schwierigkeiten einer Datenverfäl
schung zu vermeiden, welche das Schreiben unmöglich macht.
Wenn bei der Anordnung ein Fehler (Schreibfehler) wäh
rend des Schreibens von Daten auftritt, ist es nötig, die
Daten zu überschreiben. Um dies zu erreichen, werden zwei
oder mehrere leere Cluster aufbereitet.
In diesem Fall wird die Idee des Clusters, in welchem
der Schreibfehler auftritt, in eine ungültige Cluster-ID
geändert, und es wird das Regenerierungsverfahren durch Er
langen eines leeren Clusters durchgeführt. Da ein Flash-Lö
schen des ungültigen Clusters manchmal dessen ursprüngli
chen normalen Zustand wiederherstellen kann, wird der un
gültige Cluster flash-gelöscht, wenn die Spannung einge
schaltet wird oder das System nicht beschäftigt ist. Dies
ist bei einem unerwarteten Fehler der Anordnung effektiv.
Fig. 5 zeigt ein Diagramm, welches eine Struktur von
inneren Daten einer Anwendung veranschaulicht.
Der Cluster besteht aus n-Sektoren (n-Seiten). Die
Seite 0 enthält einen Vorsatz, und die Seite 1 und die dar
auffolgenden Seiten enthalten Datenbereiche. Die ersten
vier Bytes der Seite 0 sind den Cluster-ID's und dem Ko
pierflag zugewiesen, und die darauffolgenden 32 Bytes wer
den zur Aufzeichnung einer Speicherseiteninformation ver
wendet. Die Längen der zu schreibenden Daten sind durch das
System vorherbestimmt und in dem System invariabel.
Fig. 6(a) veranschaulicht ein Verfahren zum Datenlesen.
Die Anwendung liest entsprechend der Cluster-ID die Spei
cherseiteninformation und erlangt die Seitennummer, d. h.
den Sektor, in welchem die Daten gespeichert sind. Auf ein
Erkennen, dass die Daten beispielsweise auf Seite x gespei
chert sind, bezieht sich die Anwendung auf die Speicherort
offsetinformation, die an der Anfangsposition der Seite x
aufgezeichnet ist, um den Ort der Daten auf dieser Seite zu
erfahren.
Dabei werden die Speicherseiteninformation und die
Speicherortoffsetinformation unter Verwendung einer Bitta
belle von 256 Bits oder 32 Bytes dargestellt. Die Bitwerte
werden von 1 auf 0 jedesmal geändert, wenn der Sektor sei
nen verwendeten Zustand ändert.
Was die Speicherseiteninformation anbelangt, so werden
dann, wenn die Daten von Seite 1 bis Seite x beispielsweise
gespeichert werden, die Bitwerte der Speicherseiteninforma
tion von 1 auf 0 von dem LSB bis zu dem Bit x geändert, so
dass die Gesamtzahl von 0-en den gespeicherten Seiten ent
spricht.
Was demgegenüber die Speicherortoffsetinformation anbe
langt, so entspricht jedes Byte in dem Datenbereich einem
Bit der Speicherortoffsetinformation wie in Fig. 7 darge
stellt. Somit wird jedesmal, wenn die Daten sequentiell von
dem ersten Byte des Datenbereichs gespeichert werden, ein
Bit der Speicherortoffsetinformation sequentiell von 1 auf
0 beginnend mit dem LSB geändert.
Mit einer derartigen Struktur kann die Anwendung aus
der Gesamtzahl von 0 Bits in der Speicherseiteninformation
die Seitenzahl erkennen, auf welcher die Daten gespeichert
sind, und danach den Ort, auf den die Daten in dem Datenbe
reich von der Anfangsposition an gespeichert worden sind,
durch sequentielles Überprüfen der Bitwerte von dem LSB der
Speicherortoffsetinformation erlangen. Wenn beispielsweise
die Bitwerte von dem LSB bis zu dem 24. Bit der
Speicherortoffsetinformation den Wert 0 besitzen, erkennt
die Anwendung, dass die Daten von der Anfangsposition bis
zu dem 24. Byte des Datenbereichs gespeichert worden sind.
Auf das Erkennen des endgültigen Orts der Daten liest
die Anwendung die Daten von der ersten Adresse bis zu dem
letzten Ort.
Fig. 8 zeigt ein Flussdiagramm, welches ein Daten
schreibverfahren veranschaulicht. Auf das Erkennen des
letzten Orts der Daten durch dasselbe Verfahren wie bei dem
Datenlesen überprüft die Anwendung in dem Schritt ST11, ob
irgendein leerer Bereich (nicht verwendeter Bereich) auf
der Seite vorhanden ist oder nicht. Wenn ein leerer Bereich
vorhanden ist, führt die Anwendung das Schreiben der ver
langten Daten von dem Ort, welcher der letzten Position der
vorausgehend gespeicherten Daten am nächsten ist, durch und
aktualisiert die Speicherortoffsetinformation in dem
Schritt ST12. Danach werden das Bit, welches dem Ort am
nächsten zu der letzten Position der vorausgehend gespei
cherten Daten entspricht, und die darauffolgenden Bits von
1 auf 0 geändert.
Wenn demgegenüber ein leerer Bereich nicht auf der der
zeitigen Seite vorhanden ist, prüft die Anwendung in dem
Schritt ST13, ob die nächste Seite in dem Cluster vorhanden
ist. Wenn die nächste Seite vorhanden ist, prüft die Anwen
dung entsprechend der Speicherortoffsetinformation der
nächsten Seite in dem Schritt ST14, ob die nächste Seite
leer ist oder nicht. Dies wird wegen unvollständiger Daten
infolge eines Spannungsausfalls oder dergleichen durchge
führt, der auftritt, während das Schreiben von Daten auf
der nächsten Seite aufrechterhalten werden kann, und derar
tige unvollständige Daten stellen eine Schwierigkeit dar zu
verhindern, dass neue Daten geschrieben werden.
Wenn die nächste Seite leer ist, führt die Anwendung
das Schreiben der geforderten Daten von der Anfangsposition
des Datenbereichs an durch und aktualisiert die
Speicherortoffsetinformation in dem Schritt ST15. Danach
aktualisiert sie die Speicherseiteninformation in dem
Schritt ST16, d. h. es wird das Bit entsprechend der näch
sten Seite von 1 auf 0 geändert. Wenn die nächste Seite
nicht leer ist, überprüft die Anwendung, ob die übernächste
Seite leer ist oder nicht. Wenn die nächste Seite nicht
vorhanden ist, führt die Anwendung die oben beschriebene
Datenregenerierung in dem Schritt ST17 durch und führt das
Schreiben der verlangten Daten von der Anfangsposition des
Datenbereichs auf der ersten Seite des durch die Datenrege
nerierung wiedererlangten nicht verwendeten Clusters durch.
Wie oben beschrieben ist die erste Ausführungsform der
art gestaltet, dass dann, wenn die Anwendung die Daten
schreibanforderung empfängt, ein Hinweis auf die Adressin
formation eines leeren Bereichs erfolgt und die Daten in
den leeren Bereich geschrieben werden. Dadurch wird es der
Anwendung ermöglicht die Daten ohne ein Flash-Löschen des
Clusters einschließlich eines leeren Bereichs zu schreiben,
wodurch ein Vorteil dahingehend geboten wird, dass die An
zahl von Überschreiboperationen des BGO-Flash-Speichers 11
erhöht wird.
Bei der ersten Ausführungsform werden die letzten Daten
unmittelbar nach den vorausgehend geschriebenen Daten ge
schrieben, wenn irgendein leerer Bereich in der derzeitigen
Seite vorhanden ist. Mit anderen Worten, bei der ersten
Ausführungsform ist auf der laufenden Seite ein Bereich zur
Speicherung einer Mehrzahl von Daten reserviert, und es
werden lediglich die letzten Daten gültig gemacht, welche
zuletzt gespeichert worden sind. Dies ist jedoch nicht wei
ter bemerkenswert. Beispielsweise kann wie in Fig. 9 darge
stellt jeder Sektor (Seite) eine Mehrzahl von Datenblöcken
enthalten, so dass die Anwendung Daten in die leeren Daten
blöcke entsprechend den verwendeten Zustandsflags schreiben
kann (Flag des aktiven Blocks der inneren Seite und Flag
des verbrauchten Blocks der inneren Seite), welche in dem
Vorsatz des Sektors (Seite) aufgezeichnet sind, um den ver
wendeten Zustand der Datenblöcke anzuzeigen.
Fig. 9 zeigt ein Diagramm, welches eine Struktur der
inneren Daten bei der Anwendung veranschaulicht.
Jede Seite des Clusters enthält einen Seitenvorsatz und
eine Mehrzahl von Datenblöcken. Der Seitenvorsatz enthält
eine Cluster-ID und ein Kopierflag an seiner Anfangspositi
on, worauf ein aktives Flag einer inneren Seite von 3-Byte
und ein "verbraucht"-Flag einer inneren Seite von 3-Byte
folgen. Jeder Datenblock enthält eine Datenzahl von 1-Byte,
eine Information des verwendeten Zustands des Datenbereichs
von 1-Byte und einen Datenbereich von 8-Byte.
Fig. 10 zeigt ein Diagramm, welches Beziehungen zwi
schen den Datenlücken und dem Flag des aktiven Blocks der
inneren Seite und dem "verbraucht"-Flag der inneren Seite
veranschaulicht. Der aktive Block kann durch die exlusive
ODER-Operation zwischen den Flag des aktiven Blocks der in
neren Seite und dem "verbraucht"-Flag der inneren Seite ge
folgt von einem Suchen nach dem Datenblock erlangt werden,
welcher dem resultierenden Wert 1 zugeordnet ist
(Datenblock P in dem Beispiel von Fig. 10).
Das Datenlesen oder -schreiben wird unter Bestimmung
einer der Daten-ID's durchgeführt, wobei 00h für eine ver
brauchte Daten-ID und FFh für eine leere ID steht. Die ver
bleibenden 254 Daten-ID's sind verfügbar, und die diesen
ID's zugewiesenen Datenlängen können zwischen einem und
acht Bytes liegen. Die Datenlänge kann in dem Programm
nicht variiert werden.
Eine Zeigerbildungseinrichtung der Anwendung errichtet
in dem RAM 13 einen Datenwiedererlangungszeiger, welcher
den Ort eines Datenblocks zeigt, welcher die Daten spei
chert. Der Zeiger hat die Seitennummer und die Blocknummer
des Datenbereichs registriert. Wenn deren Inhalt aus dem
RAM 13 wegen eines Abschaltens der Spannung oder derglei
chen eliminiert worden ist, erfolgt eine Wiederherstellung in
dem RAM 13 durch Suchen aller Datenbereiche beim Spannungs
aufbau oder dergleichen.
Beim Lesen der Daten sucht die Anwendung den durch die
Daten-ID gezeigten Datenblock und führt das Datenlesen ent
sprechend dem verwendeten Zustand des Datenbereichs durch
(vgl. Fig. 11).
Die acht Bits des verwendeten Zustands des Datenbe
reichs, welche den acht Bytes des Datenbereichs entspre
chen, zeigen einen verbrauchten Ort durch das Bit 0 an.
Fig. 12 zeigt ein Flussdiagramm, welches ein Anfangs
programm zur Wiederherstellung der Datensuchzeiger auf den
RAM 13 veranschaulicht.
Bei dem Anfangsprogramm bei dem Aufbauen der Spannung
oder dergleichen sucht die Anwendung nach der Adresse eines
verwendeten Clusters, und wenn auf jeder Seite ein Datenbe
reich vorhanden ist, aktualisiert sie die Daten in dem Zei
ger in den Schritten ST21-23.
Die derzeit auf der Seite verwendeten Daten werden
durch Verweis auf die Flags des aktiven Blocks der inneren
Seite und die Flags des verbrauchten Blocks der inneren
Seite in den Vorsätzen der Seite wie bei dem Datenlesen er
langt, da in den Blöcken zuviele Daten vorhanden sind.
Auf ein Wiederholen des obigen Verfahrens mit den
Schritten ST24 und ST25 bis zur letzten Seite ist die Zei
gerkonstruktion vollendet.
Fig. 13 zeigt ein Flussdiagramm, welches das Daten
schreibverfahren der zweiten Ausführungsform veranschau
licht.
Zuerst sucht die Anwendung einen Datenblock, in welchem
deren Daten gespeichert sind, für einen leeren Bereich, und
wenn irgendein leerer Bereich in dem Datenblock vorhanden
ist, schreibt sie Daten in den leeren Bereich in den
Schritten ST31 und ST32.
Wenn demgegenüber kein leerer Bereich in dem Datenblock
vorhanden ist, erhebt die Anwendung in dem Schritt ST33 ei
ne Entscheidung, ob sie einen neuen Datenblock erlangen
kann oder nicht. Wenn die Anwendung einen neuen Datenblock
erlangen kann, schreibt sie in dem Schritt ST34 ihre Daten-
ID und Daten in den neuen Datenblock und schreibt in dem
Schritt ST35 das Flag des aktiven Blocks der inneren Seite.
Darüber hinaus schreibt die Anwendung das Flag des ver
brauchten Blocks der inneren Seite der vorausgehenden Daten
in dem Schritt ST36 und macht danach die Datenblock-ID der
vorausgehenden Daten in dem Schritt ST37 ungültig. Wenn die
Anwendung keinen neuen Datenblock erlangen kann, führt sie
die Datenregenerierung und das Datenschreiben in dem
Schritt ST38 durch.
Wie oben beschrieben ist die zweite Ausführungsform
derart gestaltet, dass Daten in die leeren Bereiche des Da
tenblocks unter Bezugnahme auf die Flags des verwendeten
Zustands wie das Flag des aktiven Blocks der inneren Seite
und das "verbraucht"-Flag der inneren Seite, welches den
verwendeten Zustand der Datenblocks in dem Vorsatz jedes
Sektors anzeigt, der eine Mehrzahl von Datenblöcken ent
hält, in die leeren Bereiche geschrieben werden. Dies bie
tet den Vorteil das Maximum von 254 Typen von Daten auf der
Basis von einem Byte bis acht Bytes umzuschreiben.
Obwohl bei der ersten und zweiten Ausführungsform Daten
in den BGO-Flash-Speicher 11 geschrieben werden, ist die
vorliegende Erfindung nicht darauf beschränkt. Die vorlie
gende Erfindung kann ebenfalls auf irgendeinen Typ eines
Flash-Speichers angewandt werden.
Vorstehend wurde eine Flash-Speichereinheit offenbart.
Die Flash-Speichereinheit enthält einen Adressinformations
speicher (11) und eine Datenschreibeinheit (14). Der
Adressinformationsspeicher (11) registriert eine Adressin
formation über leere Bereiche in einem Cluster bestehend
aus einer Mehrzahl von Sektoren, und die Datenschreibein
heit (14) schreibt im Ansprechen auf eine Datenschreiban
forderung die Daten in wenigstens einen der leeren Bereiche
entsprechend der Adressinformation über die leeren Berei
che. Dadurch wird es ermöglicht eine Schwierigkeit eines
herkömmlichen Flash-Speichers dahingehend zu lösen, dass
die Anzahl von Takten bzw. das Zeitmaß beim Löschen des
herkömmlichen Flash-Speichers auf etwa ein Zehntel der der
Größe eines EEPROM beschränkt ist und daher nicht häufig
Daten überschrieben bzw. umgeschrieben werden können.
Claims (15)
1. Flash-Speichereinheit mit:
einer Adressinformationsspeichereinrichtung (11) zur Speicherung einer Adressinformation über leere Bereiche in einem Cluster, welcher aus einer Mehrzahl von Sektoren be steht;
einer Datenschreibeinrichtung (14) zum Schreiben von Daten in wenigstens einen der leeren Bereiche entsprechend der Adressinformation über die leeren Bereiche im Anspre chen auf eine Datenschreibanforderung; und
einer Adressinformationsaktualisierungseinrichtung (14) zum Aktualisieren der Adressinformation, welche dem wenigstens einen leeren Bereich zugeordnet ist, in welchen die Daten geschrieben werden, nachdem die Datenschreibein richtung das Schreiben der Daten vollendet hat.
einer Adressinformationsspeichereinrichtung (11) zur Speicherung einer Adressinformation über leere Bereiche in einem Cluster, welcher aus einer Mehrzahl von Sektoren be steht;
einer Datenschreibeinrichtung (14) zum Schreiben von Daten in wenigstens einen der leeren Bereiche entsprechend der Adressinformation über die leeren Bereiche im Anspre chen auf eine Datenschreibanforderung; und
einer Adressinformationsaktualisierungseinrichtung (14) zum Aktualisieren der Adressinformation, welche dem wenigstens einen leeren Bereich zugeordnet ist, in welchen die Daten geschrieben werden, nachdem die Datenschreibein richtung das Schreiben der Daten vollendet hat.
2. Flash-Speichereinheit nach Anspruch 1, dadurch gekenn
zeichnet, dass die Datenschreibeinrichtung (14) dann, wenn
der Cluster keinen leeren Bereich enthält, die Daten in ei
nen anderen nicht verwendeten Cluster schreibt und ein
Flash-Löschen des Clusters ohne einen leeren Bereich durch
führt.
3. Flash-Speichereinheit nach Anspruch 2, dadurch gekenn
zeichnet, dass die Datenschreibeinrichtung (14) ein Kopier
flag des Clusters ohne einen leeren Bereich gültig macht,
wenn die Daten in die anderen nicht verwendeten Cluster ge
schrieben werden.
4. Flash-Speichereinheit nach Anspruch 2, gekennzeichnet
durch wenigstens einen nicht verwendeten Cluster neben
Clustern, welche eine Anwendung verwenden kann.
5. Flash-Speichereinheit nach Anspruch 2, dadurch gekenn
zeichnet, dass die Datenschreibeinrichtung (14) dann, wenn
ein Schreibfehler während des Schreibens von Daten in den
leeren Bereich des Clusters oder in die anderen nicht ver
wendeten Cluster auftritt, Daten in einen anderen Cluster
schreibt und ein Flash-Löschen des Clusters durchführt, in
dem der Schreibfehler auftritt.
6. Flash-Speichereinheit nach Anspruch 5, gekennzeichnet
durch zwei oder mehr nicht verwendete Cluster neben
Clustern, welche eine Anwendung verwenden kann.
7. Flash-Speichereinheit nach Anspruch 2, gekennzeichnet
durch eine ID-Managementeinrichtung (14) zur Registrierung
einer einzigen ID für jeden der Cluster, welche eine Anwen
dung verwendet, und zur Registrierung von ID's für nicht
verwendete Cluster, welche anzeigen, dass die nicht verwen
deten Cluster verfügbar sind.
8. Flash-Speichereinheit nach Anspruch 7, dadurch gekenn
zeichnet, dass die ID-Managementeinrichtung (14) dann, wenn
ein Schreibfehler der Daten auftritt, eine ID registriert,
welche anzeigt, dass der Cluster, in dem der Schreibfehler
auftritt, unbeschreibbar ist.
9. Flash-Speichereinheit nach Anspruch 8, gekennzeichnet
durch drei oder mehr ID-Registrierungsbereiche zur Regi
strierung derselben ID in einem Vorsatz jedes Clusters.
10. Flash-Speichereinheit nach Anspruch 2, dadurch gekenn
zeichnet, dass die Adressinformationsspeichereinrichtung
(11) in einem Vorsatz jedes Clusters eine Bittabelle zum
Anzeigen eines verwendeten Zustands eines Speichers wie die
Adressinformation über die leeren Bereiche aufweist.
11. Flash-Speichereinheit nach Anspruch 10, dadurch ge
kennzeichnet, dass die Datenschreibeinrichtung (14) die Da
ten unmittelbar nach den vorausgehenden Daten ohne Zwi
schenraum schreibt.
12. Flash-Speichereinheit nach Anspruch 1, dadurch gekenn
zeichnet, dass jeder der Sektoren eine Mehrzahl von Daten
blöcken enthält und die Datenschreibeinrichtung (14) die
Daten in einen leeren Bereich eines der Datenblöcke ent
sprechend einem Flag des verwendeten Zustands schreibt, der
in einem Vorsatz jedes der Sektoren zur Anzeige eines ver
wendeten Zustands der Datenblöcke registriert ist.
13. Flash-Speichereinheit nach Anspruch 12, dadurch ge
kennzeichnet, dass die Datenschreibeinrichtung (14) dann,
wenn einer der Datenblöcke keinen leeren Bereich enthält,
die Daten in einen leeren Bereich eines anderen Datenblocks
schreibt.
14. Datenspeichereinheit nach Anspruch 13, gekennzeichnet
durch eine Zeigerbildungseinrichtung (14) zur Bildung von
Zeigern in einem flüchtigen Speicher zur Anzeige von Orten
der Datenblöcke, welche die Daten speichern.
15. Verfahren zur Steuerung eines Flash-Speichers, mit den
Schritten:
Speichern einer Adressinformation über leere Bereiche in einem Cluster eines Flash-Speichers, der aus einer Mehr zahl von Sektoren besteht;
Schreiben der Daten in wenigstens einen der leeren Be reiche entsprechend der Adressinformation über leere Berei che im Ansprechen auf eine Datenschreibanforderung; und
Aktualisieren der Adressinformation, die dem wenig stens einen Bereich zugeordnet ist, in welchen die Daten geschrieben werden.
Speichern einer Adressinformation über leere Bereiche in einem Cluster eines Flash-Speichers, der aus einer Mehr zahl von Sektoren besteht;
Schreiben der Daten in wenigstens einen der leeren Be reiche entsprechend der Adressinformation über leere Berei che im Ansprechen auf eine Datenschreibanforderung; und
Aktualisieren der Adressinformation, die dem wenig stens einen Bereich zugeordnet ist, in welchen die Daten geschrieben werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35503598A JP4046877B2 (ja) | 1998-12-14 | 1998-12-14 | 一括消去型不揮発性メモリおよび携帯電話 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19960258A1 true DE19960258A1 (de) | 2000-06-21 |
Family
ID=18441548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19960258A Ceased DE19960258A1 (de) | 1998-12-14 | 1999-12-14 | Flash-Speicher-Einheit und Verfahren zur Steuerung des Flash-Speichers |
Country Status (6)
Country | Link |
---|---|
US (1) | US6839798B1 (de) |
JP (1) | JP4046877B2 (de) |
KR (1) | KR100370893B1 (de) |
CN (1) | CN1149487C (de) |
DE (1) | DE19960258A1 (de) |
TW (1) | TW454119B (de) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1150453B1 (de) * | 2000-04-26 | 2006-02-15 | Semiconductor Energy Laboratory Co., Ltd. | Kommunikationssystem und -verfahren zur Identifikation einer Person mittels biologischer Information |
JP2002035381A (ja) * | 2000-07-28 | 2002-02-05 | Shinobu Hidaka | パチンコ出玉管理システム、パチンコ遊戯台およびパチンコカード |
CN1459112A (zh) * | 2001-07-17 | 2003-11-26 | 三菱电机株式会社 | 存储装置 |
US8504798B2 (en) * | 2003-12-30 | 2013-08-06 | Sandisk Technologies Inc. | Management of non-volatile memory systems having large erase blocks |
US7631138B2 (en) * | 2003-12-30 | 2009-12-08 | Sandisk Corporation | Adaptive mode switching of flash memory address mapping based on host usage characteristics |
TWI266291B (en) * | 2004-07-23 | 2006-11-11 | Mediatek Inc | Method and apparatus of blank detection for optical storage disk |
CN100442246C (zh) * | 2004-08-26 | 2008-12-10 | 旺玖科技股份有限公司 | 非易失性存储器的数据更新方法 |
JP4715155B2 (ja) * | 2004-10-08 | 2011-07-06 | ソニー株式会社 | 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム |
WO2007072317A2 (en) * | 2005-12-21 | 2007-06-28 | Nxp B.V. | Non-volatile memory with block erasable locations |
US7668018B2 (en) * | 2007-04-03 | 2010-02-23 | Freescale Semiconductor, Inc. | Electronic device including a nonvolatile memory array and methods of using the same |
US7877541B2 (en) * | 2007-12-22 | 2011-01-25 | Unity Semiconductor Corporation | Method and system for accessing non-volatile memory |
JP2009288963A (ja) * | 2008-05-28 | 2009-12-10 | Sanyo Electric Co Ltd | データ書き込み装置及びプログラム |
US7917803B2 (en) * | 2008-06-17 | 2011-03-29 | Seagate Technology Llc | Data conflict resolution for solid-state memory devices |
US8321764B2 (en) | 2008-12-11 | 2012-11-27 | Micron Technology, Inc. | Multilevel encoding with error correction |
JP5533141B2 (ja) * | 2010-03-31 | 2014-06-25 | アイシン・エィ・ダブリュ株式会社 | 書き込み装置、書き込み方法、及び書き込みプログラム |
FR2959586B1 (fr) * | 2010-04-30 | 2012-06-22 | Proton World Int Nv | Procede d'ecriture et de lecture dans une memoire d'atomicite |
US9116895B1 (en) | 2011-08-25 | 2015-08-25 | Infotech International Llc | Document processing system and method |
US9633012B1 (en) | 2011-08-25 | 2017-04-25 | Infotech International Llc | Construction permit processing system and method |
US9785638B1 (en) | 2011-08-25 | 2017-10-10 | Infotech International Llc | Document display system and method |
JP7112060B2 (ja) | 2018-12-26 | 2022-08-03 | ルネサスエレクトロニクス株式会社 | 半導体装置およびその電源制御方法 |
CN112181303B (zh) * | 2020-09-29 | 2024-08-16 | 广东艾科技术股份有限公司 | 数据存储方法、装置、计算机设备和存储介质 |
CN115686379B (zh) * | 2022-12-14 | 2024-02-20 | 江苏华存电子科技有限公司 | 一种优化闪存中空白数据区管理的方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5438573A (en) | 1991-09-13 | 1995-08-01 | Sundisk Corporation | Flash EEPROM array data and header file structure |
US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
JPH06332806A (ja) | 1993-05-25 | 1994-12-02 | Hitachi Ltd | フラッシュメモリを記憶媒体とする記憶システムおよびその制御方法 |
JPH0750558A (ja) | 1993-08-04 | 1995-02-21 | Seiko Epson Corp | 論理回路 |
JP3154892B2 (ja) * | 1994-05-10 | 2001-04-09 | 株式会社東芝 | Icメモリカードおよびそのicメモリカードの検査方法 |
JPH08137634A (ja) | 1994-11-09 | 1996-05-31 | Mitsubishi Electric Corp | フラッシュディスクカード |
GB2291991A (en) | 1995-09-27 | 1996-02-07 | Memory Corp Plc | Disk drive emulation with a block-erasable memory |
JP3615299B2 (ja) * | 1996-03-29 | 2005-02-02 | 三洋電機株式会社 | 書換え可能romの記憶方法及び記憶装置 |
US6038636A (en) * | 1998-04-27 | 2000-03-14 | Lexmark International, Inc. | Method and apparatus for reclaiming and defragmenting a flash memory device |
-
1998
- 1998-12-14 JP JP35503598A patent/JP4046877B2/ja not_active Expired - Fee Related
-
1999
- 1999-05-26 US US09/318,791 patent/US6839798B1/en not_active Expired - Fee Related
- 1999-11-19 TW TW088120207A patent/TW454119B/zh not_active IP Right Cessation
- 1999-12-14 DE DE19960258A patent/DE19960258A1/de not_active Ceased
- 1999-12-14 CN CNB991267354A patent/CN1149487C/zh not_active Expired - Fee Related
- 1999-12-14 KR KR10-1999-0057353A patent/KR100370893B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
US6839798B1 (en) | 2005-01-04 |
TW454119B (en) | 2001-09-11 |
JP2000182381A (ja) | 2000-06-30 |
KR20000048112A (ko) | 2000-07-25 |
CN1149487C (zh) | 2004-05-12 |
CN1258046A (zh) | 2000-06-28 |
JP4046877B2 (ja) | 2008-02-13 |
KR100370893B1 (ko) | 2003-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19960258A1 (de) | Flash-Speicher-Einheit und Verfahren zur Steuerung des Flash-Speichers | |
DE69839126T2 (de) | Verschiebung aufeinander folgender sektoren innerhalb eines datenblocks in einem flash-massenspeicher | |
DE69527594T2 (de) | Flashspeicherkarte | |
DE69226847T2 (de) | Datenverwaltungssystem für Halbleiterspeicher mit beschränkter Programmierung und I.C.-Speicherkarte mit solchem Datenverwaltungssystem | |
DE60030876T2 (de) | Bereichsverwaltung eines nichtflüchtigen Speichers mit hoher Kapazität | |
DE60217883T2 (de) | Verfahren zum schreiben von daten in einen nicht-flüchtigen speicher | |
DE69034227T2 (de) | EEprom-System mit Blocklöschung | |
DE69431795T2 (de) | Massenspeicherarchitektur mit flash-speicher | |
DE19740525C1 (de) | Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug | |
DE69726304T2 (de) | Nichtflüchtiger schreibbarer speicher mit programmierungsaufhebungsbefehl | |
DE69414556T2 (de) | Schnell loeschbare datei | |
DE69623720T2 (de) | Verfahren zum Aufräumen eines Flash-Speichers mit Übersetzungsschicht | |
DE69936246T2 (de) | Nichtflüchtiger Speicher, Aufzeichnungsgerät und -verfahren | |
DE4143072C2 (de) | Blockweise löschbarer nicht-flüchtiger Halbleiterspeicher | |
DE69111635T2 (de) | Gerät und Verfahren zur Background-Speicherprüfung während des Systemanlaufs. | |
DE69801112T2 (de) | Dateispeicherverwaltungssystem für schnappschusskopieroperationen | |
DE3856090T2 (de) | Aus Einheitsfunktionsgruppen aufgebaute Dateienspeicherungszuordnungstabellen für Dateienspeichereinheiten grosser Kapazität | |
DE69227499T2 (de) | Einen Flashspeicher verwendendes Speichergerät | |
DE19782041B4 (de) | Verfahren zum Durchführen eines kontinuierlichen Überschreibens einer Datei in einem nicht-flüchtigen Speicher | |
DE69726088T2 (de) | Methode und Apparat zur Speicherverwaltung | |
DE19615948A1 (de) | Flash-Festkörper-Plattenspeicher-Karte | |
DE10238566A1 (de) | Fenster-basierendes Flashspeicher-Speichersystem und Management und Zugriffsverfahren darauf | |
DE602005003778T2 (de) | Verfahren und Vorrichtung zum Wiederbeschreiben eines Sektors mit Bootloader-Software in einem sektor-löschbaren nichtflüchtigen Halbleiterspeicher | |
DE602004007925T2 (de) | Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen | |
DE102004014227A1 (de) | Steuervorrichtung für einen nicht flüchtigen Speicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G06F 12/00 |
|
8127 | New person/name/address of the applicant |
Owner name: MITSUBISHI DENKI K.K., TOKIO/TOKYO, JP Owner name: MITSUBISHI ELECTRIC SEMICINDUCTOR APPLICATION ENGI |
|
8131 | Rejection |