Warum RAM-IC über EEPROM-IC verwenden?

Ich habe mir verschiedene externe Speicher-ICs angesehen, die mit einem Arduino funktionieren würden. Als ich mir die Spezifikationen einiger EEPROM-Chips ansah und sie mit den Spezifikationen anderer RAM-Chips verglich, bemerkte ich, dass sie relativ ähnliche Spezifikationen in Bezug auf die Lese-/Schreibfrequenz und die Speicherkapazität hatten. Wenn sie also ähnliche Eigenschaften haben, warum sollten Sie dann einen RAM-Chip anstelle eines EEPROM-Chips verwenden? Wäre ein EEPROM-Chip nicht viel nützlicher, da er nicht flüchtig ist?

Antworten (3)

Die beiden sind für unterschiedliche Zwecke bestimmt. EEPROM (Electrically Erasable Programmed Read Only Memory) ist nicht flüchtig und dient der Langzeitspeicherung ebenso wie Konfigurationsparameter, die vom Benutzer geändert werden können; Ergebnisse einer später vorzulesenden Berechnung; und etwas, das aus dem Internet heruntergeladen wurde, wie z. B. ein MP3-Song oder ein E-Book. Sie können jetzt ein 256-MB-EEPROM (ohne Bit) für 3 US-Dollar erhalten .

EEPROM ist nicht als Ersatz (oder Erweiterung) des internen RAM eines Computers geeignet, da das Schreiben viel länger dauert als das Lesen, und Sie können es schließlich verschleißen.

Externes RAM (Random Access Memory) ist wie das RAM in Ihrem Computerchip, außer dass es schwerer zugänglich ist. RAM ist flüchtig; es verliert seine Zustimmung, wenn der Strom ausfällt. Dies ist manchmal kein Problem in eingebetteten Systemen, da einige so konzipiert sind, dass sie nie vollständig ausgeschaltet werden – der externe RAM kann eingeschaltet bleiben, selbst wenn die Stromversorgung des Mikrocontrollers ausgeschaltet ist. Dies wird als batteriegepufferter RAM bezeichnet.

Der Zugriff auf externes RAM ist schwieriger als das RAM Ihrer CPU, da es über eine serielle Verbindung, entweder SPI oder I2C, verbunden ist, da alle außer den High-End-Mikrocontrollern keinen externen Adress- oder Datenbus haben. Das externe RAM erscheint also nicht in der Adresskarte Ihres Mikrocontrollers; Vielmehr müssen Sie über ein Unterprogramm darauf zugreifen, um zuerst die Adresse zu senden, auf die zugegriffen werden soll, und dann die Daten, die entweder geschrieben oder zurückgelesen werden sollen. Dies ist viel langsamer als der Zugriff auf den RAM in Ihrem Mikrocontroller.

Diese Einschränkung ist auch dem Zugriff auf EEPROMs inhärent.

Externes RAM kann verwendet werden, um große Zwischenergebnisse einer Berechnung, Daten, die protokolliert werden (hier möchten Sie batteriegepuffertes RAM verwenden), und vorübergehend aus dem Internet heruntergeladenes Material (z. B. eine Webseite oder ein MP3-Song) zu speichern Sie müssen nicht in der Nähe bleiben).

Statisches RAM ist mindestens eine Größenordnung teurer als EEPROMs gleicher Größe. Sie können dynamischen RAM (der billiger ist) nicht ohne spezielle Aktualisierungsschaltungen verwenden.

Folgefrage: Warum hat NVRAM die EEPROM-ICs nicht ersetzt? Die Verwendung von NVRAM hätte alle Vorteile eines normalen RAM ohne die langsamen Lese-/Schreibzeiten eines EEPROM.
Kosten. Ein 256K-EEPROM kostet etwa 2 US-Dollar. Ein 256K NVRAM kann bis zu 60 US-Dollar kosten. Warum? Es hat DRAM, Flash, Speichercontroller und Batterie (oder SuperCap) in einem Paket.

EEPROMs schreiben langsam (Millisekunden) und nutzen sich nach einer bestimmten Anzahl von Schreibvorgängen ab (Lesevorgänge sind im Allgemeinen unbegrenzt, mit Ausnahmen). Sie können ein EEPROM in sehr kurzer Zeit verschleißen, wenn Sie kontinuierlich an bestimmte Stellen schreiben.

Beispielsweise hat dieser 1 Mbit 24C1024 eine Schreibzeit von bis zu 5 ms und eine „typische“ Lebensdauer von 10 ^ 6 Zyklen.

Wenn Sie alle 10 ms an dieselbe Stelle schreiben, wird es in 2-3 Stunden abgenutzt sein.

Typisch gesprochen:

DRAM/SRAM

  • viel schneller (besonders beim Schreiben)
  • viel haltbarer
  • flüchtig - behält den Inhalt nicht bei, wenn es ausgeschaltet ist
  • weniger teuer, weil es weniger Transistoren und definitiv billigere Transistoren pro Speicherbit geben kann

EEPROM

  • Im Allgemeinen das Gegenteil