Seit den ersten Low-Power-Mikrocontrollern, beispielsweise der MSP430-Serie, ist die Zahl der Anwendungen, die eine geringe Stromaufnahme verlangen, erheblich gewachsen. Gab man die Stromaufnahme einst in Milliampere pro Megahertz an, sind es jetzt µA/MHz. Zudem beträgt die früher im Milliampere-Bereich liegende Standby-Stromaufnahme inzwischen nur noch einige Nanoampere. Mit solchen Mikrocontrollern sind Produkte machbar, die zehn Jahre oder mehr mit einer Knopfzelle auskommen.

Auf einen Blick

Speicherfrage: Texas Instruments bietet seine MSP430-Mikrocontroller sowohl in Flash-, als auch in FRAM-Technologie an. Damit gibt es eine wunderbare Basis, um beide Speicher-Varianten zu vergleichen und die Vorteile von ferroelektrischem RAM aufzuzeigen.

Maßgeblichen Anteil an der Stromaufnahme hat der Speicher, bei dem jedoch in der Vergangenheit nur kleine Fortschritte erzielt wurden. Lange Zeit gliederte sich die bevorzugte Struktur in Flash oder ROM als Codespeicher und RAM als Datenspeicher. Inzwischen aber ist das FRAM (Ferroelectric RAM) auf den Markt gekommen. Es kombiniert die Nichtflüchtigkeit des Flash-Speichers mit der Geschwindigkeit, der geringen Leistungsaufnahme und der einfachen Anwendung des RAM. Noch wichtiger aber ist die Tatsache, dass sich mit FRAM ein durchgehender Speicherbereich einrichten lässt.

Es gibt viele Argumente, die für FRAM-Mikrocontroller sprechen. Der nachfolgende Überblick zeigt, welchen Nutzen ein solcher Mikrocontroller in stromsparenden Embedded-Processing-Systemen gegenüber Flash-basierten Bausteinen bietet.

Schreiben mit wenig Energie

Bild 1: Ein FRAM-basierter Mikrocontroller kann mit der im gleichen Kondensator gespeicherten Energie bedeutend mehr Schreibzyklen ausführen als sein Flash-Pendant.

Bild 1: Ein FRAM-basierter Mikrocontroller kann mit der im gleichen Kondensator gespeicherten Energie bedeutend mehr Schreibzyklen ausführen als sein Flash-Pendant.Texas Instruments

Schreibzugriffe auf ein FRAM benötigen deutlich weniger Energie als bei Flash. Das liegt vor allem an den Löschzyklen, die Flash-Speicher beim Schreiben und Löschen einsetzen. Der FRAM-Controller kann die Zugriffe in weniger als ein Prozent der Zeit abwickeln, so dass der Baustein verglichen mit der Flash-Version deutlich länger im Standby-Modus bleiben kann.

Viele Systeme erfordern bei einem Stromausfall eine Datensicherungs-Prozedur. Eingebaute Schaltungen im Embedded-FRAM stellen sicher, dass ein gerade laufender Schreibzugriff auch bei einem Ausfall der Versorgungsspannung geordnet beendet wird. Die Sicherung im integrierten FRAM läuft außerdem 1000-mal schneller ab als mit einem EEPROM. Bild 1 zeigt exemplarisch, dass das FRAM bei gleicher Energieentnahme aus einem Kondensator 50.000-mal mehr Daten schreiben kann als ein EEPROM. Da kein vorheriger Löschzyklus erforderlich ist, gestalten sich Schreibzugriffe auf ein FRAM überdies deutlich einfacher. Dank der bitweisen Adressierbarkeit des FRAMs entfallen zudem viele unnötige Schreibvorgänge.

Bild 2a: Beim Flash-basierten MSP430F2274 steigt beim Löschen der Strombedarf auf 7000 µA und beim eigentlichen Schreiben auf 5000 µA.

Bild 2a: Beim Flash-basierten MSP430F2274 steigt beim Löschen der Strombedarf auf 7000 µA und beim eigentlichen Schreiben auf 5000 µA.Texas Instruments

Schreiben mit kleinen Strömen

Beim Auslegen der Stromversorgung ist der Worst-Case-Fall entscheidend. Es gilt also, jede Stromaufnahme zu berücksichtigen, die größer ist als im regulären Betrieb. Flash-MCUs schwanken hier deutlich (Bild 2a), vor allem die Löschzyklen brauchen 7000 µA. Beim FRAM entfallen die Löschzyklen vor dem Schreiben und der Strom sinkt auf 115 µA (Bild 2b). Da die Stromaufnahme FRAM-basierter Mikrocontroller deutlich geringere Spitzen aufweist, wird das Stromversorgungs-Design deutlich vereinfacht.

Der mit der höheren Stromaufnahme einhergehende Spannungsabfall kann außerdem die Energieeffizienz und dadurch die Gesamtlebensdauer schmälern. Der zusätzliche Spannungsabfall erfordert eine höhere minimale Batteriespannung bis zu der das System funktionsfähig bleibt.

Bild 2b: Beim FRAM-basierten MSP430FR5739 entfällt das unnötige Löschen und beim Schreiben sind auch nur 115 µA nötig.

Bild 2b: Beim FRAM-basierten MSP430FR5739 entfällt das unnötige Löschen und beim Schreiben sind auch nur 115 µA nötig.Texas Instruments

Schnell schreiben

Ein FRAM unterbietet den Flash-Speicher hinsichtlich des Zeitaufwands zum Schreiben von Daten in einen nichtflüchtigen Speicher um den Faktor 100. Flash-Schreibzugriffe erreichen maximal 13 KByte/s, denn neben dem eigentlichen Schreibvorgang muss zunächst ein Löschzyklus erfolgen. Dies ist bei FRAMs anders, die ähnlich wie SRAMs direkt beschreibbar sind. Ihre hohe Schreibgeschwindigkeit bietet insbesondere bei Code-Downloads Vorteile, gleich ob diese während der Produktion oder bei Updates während des Einsatzes erfolgen. Bei schnellen Updates müssen die drahtlosen Übertragungsschaltungen, die deutlich mehr Strom aufnehmen als das übrige System, deshalb wesentlich kürzer in Betrieb sein.

Länger haltbar

Charakteristisch für die FRAM-Technologie ist ihre enorme Beständigkeit bei Schreibzyklen. Jedes einzelne Bit, Byte oder Wort eines FRAM verkraftet bis zu 1015 Schreibvorgänge, während ein Byte eines Flash-Speichers typisch nur für 104 Schreib-Lösch-Zyklen ausgelegt ist. Man kann bei FRAMs deshalb von einer praktisch unbegrenzten Schreib-Endurance sprechen.

Spezielle EEPROMs, die sich für 106 Schreib-Lösch-Zyklen eignen, oder eine komplette Flash-Emulation sind obsolet, sobald man FRAMs als Datenspeicher nutzt. Würde man zum Beispiel für den Kilometerzähler eines Autos jeden zurückgelegten Meter in einem nichtflüchtigen Speicher registrieren, so würde eine Gesamtwegstrecke von einer Million Kilometern eine Milliarde Schreibzyklen produzieren, also 109, und damit Flash oder EEPROM lange zerstören. Dennoch entspräche dies nur 1 ppm der von einem FRAM gebotenen Schreib-Endurance.

Durchgängiger Adressraum

Mit FRAM ist ein durchgängiger Speicher (Unified Memory) realisierbar, der die traditionelle Aufteilung in Programm‑ und Datenspeicher aufhebt. Wie viel Speicher für Code und wie viel für Daten genutzt wird, gibt jetzt nicht mehr der Hardwarehersteller vor, sondern entscheidet der Anwender. Für Applikationen, die wesentlich mehr Daten‑ als Codespeicher benötigen, muss der Anwender nicht mehr zwingend zu einem Mikrocontroller mit großer Speicherkapazität greifen, nur weil das Verhältnis zwischen RAM‑ und Flash-Kapazität fest vorgegeben ist.

Bild 3a: Ein Schreibvorgang im Flash benötigt 280 Byte Code, 50 CPU-Zyklen und einen erhöhte Spannung.

Bild 3a: Ein Schreibvorgang im Flash benötigt 280 Byte Code, 50 CPU-Zyklen und einen erhöhte Spannung.Texas Instruments

Einfache Schreibzugriffe

FRAM-Schreibzyklen unterscheiden sich grundlegend von Schreibzugriffen auf Flash-Speicher. Ein Flash-Bit kann nur auf einen logischen Zustand (zum Beispiel 0) programmiert werden. Um den entgegengesetzten Zustand (1) herzustellen, ist stattdessen ein Löschzyklus erforderlich. Hinzu kommt, dass Flash-Speicher in recht große Segmente von beispielsweise einigen hundert oder tausend Bytes aufgeteilt sind. Für die effiziente Nutzung stellt diese Segmentierung ein erhebliches Hindernis dar. Zu berücksichtigen ist überdies die begrenzte Zahl der Schreibvorgänge, bevor ein erneuter Löschzyklus ausgelöst werden muss. Meist steht zwar EEPROM-Emulationssoftware zur Verfügung, die den Großteil des komplexen Mechanismus übernimmt (Bild 3a). Doch mit FRAMs geht es insgesamt wesentlich einfacher (Bild 3b).

Bild 3b: Beim FRAM genügen 2 Byte Code und die normale Versorgungsspannung für einen Schreibvorgang.

Bild 3b: Beim FRAM genügen 2 Byte Code und die normale Versorgungsspannung für einen Schreibvorgang.Texas Instruments

Bei einem FRAM-Speicher sind die Verhältnisse grundlegend anders. Hier sind beliebige Abfolgen von ausführbarem Code sowie Daten-Lese‑ und ‑Schreibzugriffen ohne besondere vorbereitende Maßnahmen möglich. Lediglich bei Schreibzugriffen auf einen geschützten Bereich ist zuvor der Schutzmechanismus aufzuheben.

In einem Flash-Speicher muss zunächst ein Löschzyklus ausgeführt werden, bevor ein Schreibzugriff beginnen kann (Bild 3a). Je nach Größe und Blockstruktur kann dieser vorgeschaltete Löschzyklus zwischen 15 und 50 ms dauern. Nachteilig ist außerdem, dass aus den meisten Flash-Speichern kein Code ausgeführt werden kann, solange Lösch‑ oder Schreibzyklen erfolgen. Interruptvektoren und ‑routinen sind also während dieser Zeit blockiert und der gesamte Code muss stattdessen aus dem RAM heraus ablaufen. Befindet sich aber die Interruptvektortabelle im RAM, müssen die Vektoren abgeändert werden, damit sie auf die Interruptroutinen im RAM verweisen. Wird ein Echtzeit-Betriebssystem verwendet, verkompliziert sich die Situation zusätzlich.

Viel einfacher ist es der Ablauf einem FRAM-Speicher, der ebenso wie RAMs kein vorheriges Löschen erfordert, so dass sich Schreibzugriffe auf einen einzigen Zyklus beschränken (Bild 3b).

Simple Verwaltung

Wird ein Flash-Speicher als Datenspeicher genutzt, in den Bytes, Worte oder einzelne Bits geschrieben werden, muss aus Zuverlässigkeitsgründen über die insgesamt aufgelaufene Programmierzeit Buch geführt werden. Das Programmieren einzelner Bits ist deshalb bei Flash-Speichern unüblich, während FRAMs den uneingeschränkten Zugriff auf Bytes, Worte und einzelne Bits erlauben.

Ernste Konsequenzen hat dies etwa beim Einsatz von DMA-Controllern, die keine Information darüber haben, ob vor einem Schreibzugriff ein Löschzyklus erforderlich ist. Folglich müssen hier die Programmierer Vorkehrungen treffen, die sich als recht komplex erweisen können. In jedem Fall wird der Durchsatz des DMA-Controllers durch die Flash-bedingten Restriktionen entscheidend geschmälert.

Bild 4: Die Spannungs-Ladungs-Kurve beim Wechsel zwischen den Zuständen eines FRAM-Speichers ähnelt der Hysteresekurve ferromagnetischer Werkstoffe.

Bild 4: Die Spannungs-Ladungs-Kurve beim Wechsel zwischen den Zuständen eines FRAM-Speichers ähnelt der Hysteresekurve ferromagnetischer Werkstoffe.Texas Instruments

Strahlung und elektrische Felder

Da das Funktionsprinzip von Flash-Speicher auf Ladung beruht, die auf so genannten Floating Gates abgelegt wird, sind sie naturgemäß anfällig gegen Gamma‑ und Röntgenstrahlung. Dies ist in Raumfahrt‑ oder Medizintechnik-Anwendungen unbedingt zu bewerten. Anders sieht es bei FRAMs aus, deren Funktion nicht auf Ladung, sondern auf Kristallen beruht (Bild 5), was eine bedeutend größere Unempfindlichkeit gegen Strahlung und elektromagnetische Felder ergibt. Die terrestrische Soft-Error-Rate liegt unter der Messgrenze.

Der Buchstabe F in der Bezeichnung FRAM steht für ferroelektrisch und erklärt sich aus der Ähnlichkeit der Spannungs-Ladungs-Kurve mit der Hysteresekurve ferromagnetischer Werkstoffe. Bild 4 zeigt die Hysteresekurve beim Ändern des Logikzustands von 0 nach 1 und von 1 nach 0. Eine Anfälligkeit ferroelektrischer Materialien gegen Magnetfelder besteht jedoch nicht.

Bild 5: Die Funktion von FRAMs basiert auf Kristallen. Daher sind sie gegen Strahlung und elektromagnetische Felder sehr unempfindlich.

Bild 5: Die Funktion von FRAMs basiert auf Kristallen. Daher sind sie gegen Strahlung und elektromagnetische Felder sehr unempfindlich.Texas Instruments

Sparsamer Vielfraß

Die FRAM-Technologie wurde in den zurückliegenden zehn Jahren entscheidend verbessert und ist mittlerweile zu einer vielversprechenden nichtflüchtigen Speichertechnologie für Embedded-Systeme mit extrem geringer Stromaufnahme geworden. Die Technologieplattform Wolverine (deutsch: Vielfraß) von TI implementiert einerseits die FRAM-Technologie und profitiert andererseits von neuen sowie verbesserten analogen Komponenten. Sie kommt dank des nichtflüchtigen, durchgängigen Speichers auf eine geringe Standby-Leistungsaufnahme und benötigt auch im aktiven Zustand wenig Energie, da die Lese‑ und Schreibzugriffe wenig Leistung benötigen.