Was ist der Unterschied zwischen Flash-Speicher und EEPROM?

Antworten:

68

In den ersten ROM-Geräten mussten Informationen auf mechanischem, photolithographischem oder anderem Wege gespeichert werden (vor integrierten Schaltkreisen war es üblich, ein Gitter zu verwenden, in dem Dioden selektiv installiert oder weggelassen werden konnten). Die erste wesentliche Verbesserung war ein "Fuse-PROM" - ein Chip, der ein Gitter aus Schmelzdioden und Zeilentreibertransistoren enthielt, die so stark waren, dass durch Auswahl einer Zeile und Erzwingen des Ausgangszustands die Sicherungen aller Dioden durchgebrannt werden konnten man wollte nicht. Obwohl solche Chips elektrisch beschreibbar waren, verfügten die meisten Geräte, in denen sie verwendet wurden, nicht über die leistungsfähige Treiberschaltung, die zum Beschreiben erforderlich war. Stattdessen wurden sie mit einem Gerät geschrieben, das als "Programmierer" bezeichnet wurde, und dann in die Ausrüstung eingebaut, die sie lesen musste.

Die nächste Verbesserung war eine implantierte Ladungsspeichervorrichtung, mit der Ladungen elektrisch implantiert, aber nicht entfernt werden konnten. Wenn solche Vorrichtungen in UV-transparenten Gehäusen (EPROM) verpackt wären, könnten sie mit einer Exposition von etwa 5 bis 30 Minuten gegenüber ultraviolettem Licht gelöscht werden. Dies ermöglichte die Wiederverwendung von Geräten, deren Inhalt als nicht wertvoll befunden wurde (z. B. fehlerhafte oder unfertige Versionen von Software). Indem dieselben Chips in eine undurchsichtige Verpackung gepackt wurden, konnten sie für Endanwenderanwendungen, bei denen es unwahrscheinlich war, dass jemand sie löschen und wiederverwenden wollte (OTPROM), kostengünstiger verkauft werden. Eine erfolgreiche Verbesserung ermöglichte das elektrische Löschen der Geräte ohne UV-Licht (früher EEPROM).

Frühe EEPROM-Geräte konnten nur massenhaft gelöscht werden, und für die Programmierung waren andere Bedingungen erforderlich als für den normalen Betrieb. Folglich wurden sie, wie bei PROM / EPROM-Bauelementen, im Allgemeinen in Schaltkreisen verwendet, die sie lesen, aber nicht schreiben konnten. Spätere Verbesserungen am EEPROM ermöglichten das Löschen kleinerer Bereiche, wenn nicht einzelner Bytes, und erlaubten es ihnen auch, von derselben Schaltung geschrieben zu werden, die sie verwendete. Der Name änderte sich jedoch nicht.

Als eine Technologie namens "Flash ROM" auf den Markt kam, war es für EEPROM-Geräte ganz normal, dass einzelne Bytes innerhalb einer Anwendungsschaltung gelöscht und neu geschrieben werden konnten. Das Flash-ROM war in gewisser Weise ein funktioneller Rückschritt, da das Löschen nur in großen Stücken stattfinden konnte. Die Beschränkung des Löschens auf große Blöcke ermöglichte es jedoch, Informationen viel kompakter zu speichern, als dies mit dem EEPROM möglich war. Ferner haben viele Flash-Geräte schnellere Schreibzyklen, aber langsamere Löschzyklen als dies für EEPROM-Geräte typisch ist (viele EEPROM-Geräte benötigen 1-10 ms zum Schreiben eines Bytes und 5-50 ms zum Löschen; Flash-Geräte benötigen im Allgemeinen weniger als 100 us.) schreiben, aber einige benötigten Hunderte von Millisekunden zum Löschen).

Ich weiß nicht, dass es eine klare Trennlinie zwischen Flash und EEPROM gibt, da einige Geräte, die sich selbst "Flash" nannten, auf Byte-Basis gelöscht werden könnten. Der heutige Trend scheint jedoch darin zu bestehen, den Begriff "EEPROM" für Geräte mit Per-Byte-Löschfunktionen und "Flash" für Geräte zu verwenden, die nur das Löschen großer Blöcke unterstützen.

Superkatze
quelle
Was verstehen Sie unter "Flash-Speicherinformationen viel kompakter als mit EEPROM möglich" und warum können die Löschzyklen im Flash-Speicher länger sein als der Schreibzyklus?
Das Biest
1
@Frankenstein: EEPROM-Schaltungsentwürfe erforderten im Allgemeinen viel Platz, um Schaltungen in denselben Schichten des Chips wie Programmier- und Leseschaltungen zu löschen. Obwohl es eine Vielzahl von Flash-Schaltungsentwürfen gibt, vermeiden sie im Allgemeinen eine solche Anforderung.
Supercat
danke +1 aber warum das sould egal ist! ist es aus diesem Grund FLASH-Speicher ist schneller als EEPROM
The Beast
1
@Frankenstein: EEPROM-Programmier- und Löschzyklen finden auf ähnliche Weise statt. Die meisten Flash-Geräte verwenden völlig unterschiedliche Mechanismen zum Programmieren und Löschen. Mindestens ein Gerät, mit dem ich auf einer sehr niedrigen Ebene gearbeitet habe, war der Mikrocontroller TI 320F206, mit dem die Anwendersoftware für die Steuerung des Timings der Programmierung und der Löschzyklen verantwortlich ist. Auf diesem Chip könnte man sich das Gedächtnis als eine Ansammlung von Eimern mit Ventilen vorstellen, die sie selektiv entleeren und unter einer Ansammlung von Sprinklern sitzen, die sie füllen können. Seltsame Dinge können passieren, wenn die Eimer ...
Supercat
1
... zu voll werden. Um das Array zu löschen, müssen Sie alle Eimer entleeren, die Sprinkler für eine Weile einschalten, prüfen, ob alle Eimer noch voll sind, und die Sprinkler noch ein wenig einschalten, wenn Wenn die Sprinkler zu lange eingeschaltet sind, muss ein spezieller Vorgang durchgeführt werden, um die Probleme zu beheben (ich kann mich nicht genau erinnern, wie das funktioniert hat). Alles wesentlich komplizierter als ein EEPROM, das direkt gelöscht werden könnte.
Supercat
29

Spoiler: EEPROM ist eigentlich Flash.

Wie die Antwort von supercat brillant hervorhob, ist EEPROM eine Weiterentwicklung der älteren UV-löschbaren EPROMs (EEPROM steht für "Electrically Eraseable"). Obwohl es sich um eine Verbesserung gegenüber dem alten Freund handelt, entspricht die Art und Weise, wie das heutige EEPROM Informationen speichert, genau der des Flash-Speichers.



Der EINZIGE Hauptunterschied zwischen den beiden ist die Lese- / Schreib- / Löschlogik.


  • NAND Flash (regulärer Blitz):

    Kann nur in Seiten aka gelöscht werden. Byteblöcke. Sie können einzelne Bytes lesen und schreiben (über sie hinaus). Zum Löschen müssen jedoch viele andere Bytes gelöscht werden.

    In Mikrocontrollern wird es im Allgemeinen zur Speicherung von Firmware verwendet. Einige Implementierungen unterstützen die Flash-Verarbeitung aus der Firmware heraus. In diesem Fall können Sie den Flash-Speicher verwenden, um Informationen zu speichern, solange Sie nicht mit den verwendeten Seiten herumspielen (andernfalls wird Ihre Firmware gelöscht).

  • NOR Flash (auch bekannt als EEPROM):

    Kann einzelne Bytes lesen, schreiben und löschen. Seine Steuerlogik ist so angelegt, dass alle Bytes einzeln zugänglich sind. Obwohl es langsamer als normales Blitzlicht ist, kommt diese Funktion kleineren / älteren elektronischen Geräten zugute. Beispielsweise verwendeten ältere Röhrenfernseher und Monitore EEPROMs, um Benutzerkonfigurationen wie Helligkeit, Kontrast usw. zu speichern.

    In Mikrocontrollern verwenden Sie dies im Allgemeinen zum Speichern von Konfigurationen, Zuständen oder Kalibrierungsdaten. Dafür ist es besser als Flash, da Sie sich zum Löschen eines einzelnen Bytes nicht den Inhalt der Seite merken müssen (RAM), um sie neu zu schreiben.



Fun Fact
Es ist ein verbreiteter Irrtum , dass NOR - Flash verwendet NOR - Gatter , während NAND - Flash verwendet NAND - Gatter (und in der Tat scheint es offensichtlich). Das ist jedoch nicht wahr. Der Grund für die Benennung ist die Ähnlichkeit der Steuerlogik jedes Speichertyps mit den schematischen Symbolen des NAND- und NOR-Gatters.

Filipe Nicoli
quelle
22

Flash ist eine Art EEPROM (elektrisch löschbarer programmierbarer Nur-Lese-Speicher). "Flash" ist eher ein Marketingbegriff als eine bestimmte Technologie. Diese Begriffe haben sich jedoch so zusammengefasst, dass sie eine Art EEPROM bedeuten, die für große Größe und Dichte optimiert ist, normalerweise auf Kosten von großen Lösch- und Schreibblöcken und geringerer Lebensdauer.

Olin Lathrop
quelle
8
Warum nennen sie es immer noch "Nur-Lese-Speicher", ist es nicht so dumm, wenn es gelesen und geschrieben wird?
Skyler
4
@skyler: Es ist teilweise historisch und teilweise sinnvoll. Das ursprüngliche ROM (Nur-Lese-Speicher) war maskenprogrammiert, was bedeutete, dass es als ein Schritt in der Chipkonstruktion durchgeführt wurde. Dann gab es schmelzbare Verbindungen, die das P in den PROM steckten. Das heutige EEPROM ist immer noch ein meistens lesbarer Speicher. Der Schreibvorgang ist viel komplizierter und langsamer als das Lesen und verschleißt in diesem Fall den Chip. Diese Art von Floating-Gate-Speicherzellen kann nur so oft gelöscht und beschrieben werden, bevor sie physikalisch versagen.
Olin Lathrop
Können Sie eine magnetische Festplatte oder einen Floating-Gate-Transistor mehrmals beschreiben?
Skyler
@skyler: Wenn man einen Bereich einer Festplatte so schnell wie möglich beschreiben würde, könnte man sie wahrscheinlich jahrelang über eine Milliarde Mal pro Jahr schreiben, ohne dass sie abnutzt. Floating-Gate-Transistoren kommen ohne Verschleißausgleich nicht näher. Mit Wear Leveling ist die Datenmenge, die mit maximaler Geschwindigkeit auf ein Flash-Gerät geschrieben werden kann, bevor es abgenutzt ist, mit der einer Festplatte vergleichbar (einige Flash-Geräte wären wahrscheinlich besser, andere schlechter).
Supercat
2
@skyler: Viele frühe EEPROM-Chips könnten direkt an einen Mikroprozessorbus angeschlossen werden, um nur lesend darauf zuzugreifen, aber das Schreiben würde Bedingungen erfordern, die ein normaler Mikroprozessorbus nicht erzeugen könnte. Als solche wurden sie oft mit einem Gerät geschrieben, das als "Programmierer" bezeichnet wurde, und dann an ein Gerät angeschlossen, das Daten von ihnen las.
Supercat
4

Der Flash-Speicher ist eine Variante des EE-PROM, die immer beliebter wird. Der Hauptunterschied zwischen dem Flash-Speicher und dem EE-PROM besteht in der Löschprozedur. Der EE-PROM kann auf Registerebene gelöscht werden, der Flash-Speicher muss jedoch auch gelöscht werden in seiner Gesamtheit oder auf Sektorebene.

Siddharth Jain
quelle
Wie hat sich Ihre Antwort gegenüber der bereits akzeptierten verbessert? Es scheint mir nicht, dass Sie dem bereits Gesagten Informationen oder Perspektiven hinzugefügt haben.
Joe Hass
2

"Flash" -Speicher ist ein Sammelbegriff für die Speicherung in Speicherchips (nichtflüchtiger Speicher) und nicht für sich drehende Festplatten wie Disketten, CDs, DVDs, Festplatten usw.

NOR und NAND sind die originalen Flash-Speicherchips und wurden von Fujio Masuoka im Jahr 1980 bei Toshiba erfunden. "NOR" und "NAND" werden in den meisten USB-Sticks verwendet.

Der Flash-Speicher enthält auch EEP-ROM (elektrisch löschbarer programmierbarer Nur-Lese-Speicher) und NV-RAM (nichtflüchtiger Direktzugriffsspeicher). EEP-ROM ist billiger und wird für die Speicherung in den meisten System-on-Chips und Android-Geräten verwendet. NV-RAM ist teurer und wird für Solid-State-Laufwerke und die Speicherung in Apple-Geräten verwendet.

Die neuen NV-RAM-Chips sind viel schneller als EEP-ROM und andere Flash-Technologien.

Weitere Informationen finden Sie unter: http://www.crifan.com/___flash_memory_nand_eeprom_nvram_and_others_zt/

Neel
quelle
Sind MRAM , FeRAM und PCRAM auch in dem "catch-all" Begriff gefangen?
Uhoh
2
DIMMs sind DIMMs, unabhängig von Dynamic RAM oder Non-Volatile RAM. MRAM, FeRAM und PCRAM, die als Speicherlaufwerke verwendet werden, fallen unter den Sammelbegriff "Flash-Speicher"
Neel
1
Vielen Dank! Seit ich herausgefunden habe, dass Triple Level Cell NAND FLASH acht Ebenen hat und nicht drei, bin ich mir der Terminologie bewusster geworden.
Uhoh