Halbleiter-Prozesstechnik Optimierte Mikrocontroller

Moderne Mikrocontroller basieren heutzutage meist auf modularen Designkonzepten, sodass sich die gleichen CPU- und Peripheriedesigns in verschiedenen Halbleiterprozessen implementieren lassen. Dadurch ist es möglich, Software- und Hardware-kompatible MCUs mit unterschiedlichen elektrischen Kennwerten und Leistungsdaten herzustellen. Kommen mehrere Prozessknoten zur Veränderung des charakteristischen Leistungsbereichs von Mikrocontrollern zum Einsatz, lassen sich hoch optimierte Bauteile mit speziellen, auf bestimmte Anwendungsbereiche ausgerichteten Leistungsmerkmalen fertigen.

Ein Beispiel für einen in dieser Richtung optimierten Mikrocontroller-Core ist der »RX« von Renesas Electronics. Dieser 32-Bit-CISC-Rechenkern nutzt die Embedded-Flash-Technologie »MONOS« (Metal-Oxide-Nitride-Oxide-Silicon), die für eine Reihe unterschiedlicher Prozesstechnolo-gien von 180 nm bis 90 nm verfügbar ist, wobei sich alle diese Prozesse für eine Bandbreite unterschiedlicher charakteristischer Leistungsparameter optimieren lassen.

Wesentliches Merkmal von MONOS ist die Nutzung einer Elektronenfalle anstelle eines Floating-Gates zur Speicherung der Ladung, die definiert, ob der Inhalt einer logischen »Eins« oder »Null« entspricht.

Bild 1 zeigt die Struktur einer MONOS-Flash-Zelle im Vergleich zu herkömmlichem NOR-Flash einschließlich der entsprechenden Ersatzschaltbilder. In einer herkömmlichen Flash-Zelle ist das Floating-Gate leitend, sodass bei einem Leck in der Oxidschicht alle Ladungsträger abfließen können. MONOS hat dieses Problem nicht, denn sie enthält eine Ladungsspeicher-Schicht aus einem nichtleitenden Nitrid-Layer (Si3N4).

Damit kann sie auch eine sehr hohe Anzahl von Schreib-Lösch-Zyklen unterstützen; die neuesten Versionen bieten bis zu 100 000 solcher Zyklen. Da bei einem Defekt nicht mehr alle Ladungsträger des Gates abfließen, erhöht sich auch die Zuverlässigkeit erheblich. Bei herkömmlicher Flash-Technologie müssen manche Zellen-Dimensionen vergrößert werden, um eine höhere Zuverlässigkeit zu erzielen.

Bei MONOS-Flash lassen sich manche Dimensionen sogar verkleinern. Daher kann diese Speichertechnologie für die Herstellung kosteneffizienter Mikrocontroller mit sehr großem integriertem Flash-Speicher eingesetzt werden. Die Lese- und Schreibspannungen sowie vor allem die Schwellenspannung Uth der Flash-Zelle sind wichtige Technologieparameter. Dank der Struktur der MONOS-Flash-Zelle lässt sich diese bei den gleichen, niedrigen Spannungen wie bei der Core-Logik auslesen. Dementsprechend lassen sich die Zellen-Steuerlogik sowie die Wortleitungstreiber (WL) in schneller Core-MOS-Technologie ohne spezielle Hochspannungslogik fertigen.

Dies minimiert die Zahl der integrierten Ladungspumpen auf dem Chip, um hohe Spannungen für den Lesebetrieb zu erzeugen. Dies spart Platz und Kosten und ermöglicht äußerst schnelle Lesevorgänge (echte Zugriffszeiten von 10 ns oder weniger) sowie in manchen Fällen sogar einen Niederspannungsbetrieb. All dies trägt außerdem zur Verringerung des Stromverbrauchs des Bausteins bei.

Architektur des »RX«

Der CPU-Core des »RX« (Bild 2) nutzt 32-Bit-CISC-Technik mit einer fünfstufigen Pipeline, die für Hochleistungsanwendungen in C optimiert ist und integrierte Betriebssystemunterstützung bietet. Der RX-Core unterstützt eine Harvard-Busarchitektur mit simultanen Fetch-Abläufen für Befehle und Daten. Der Baustein enthält zusätzlich eine vollwertige IEEE-754-konforme Single-Precision/Floating-Point-Einheit sowie eine Reihe von Features zur Unterstützung grundlegender DSP-Funktionen, zum Beispiel einen Barrel-Shifter und eine Multiply-Accumulate-Funktion.

Erstmals wurde der RX-Kern in der Mikrocontrollerfamilie »RX600« implementiert. Diese Bausteine wurden für Anwendungen entwickelt, die einen leistungsfähigen 32-Bit-CISC-Kern mit hoher Rechen-leistung sowie ein hohes Maß an Integration für den On-Chip-Flash-Speicher und für komplexe Peripherieelemente benötigen. Auf-grund dieser Anforderungen war der 90-nm-MONOS-Flash-Prozess die am besten geeignete Technologie für den RX600. Dieser Prozess ermöglicht eine Flash-Zugriffszeit von 10 ns, was dem RX600 einen Single-Cycle-Flash-Betrieb bei 100 MHz ohne spezielle Logikunterstützung erlaubt. Zudem lassen sich bis zu 2 MByte On-Chip-Flash-Speicher und bis zu 256 KByte SRAM integrieren, wie auch zahlreiche Peripheriefunktionen, wie etwa Ethernet-, USB (Host/Device/OTG) und CAN-Schnittstellen, Timer für die Motorsteuerung und vieles mehr.

Während der Einsatz eines 90-nm-Prozesses die - Entwicklung von Hochleistungsprodukten ermöglicht, gibt es einen weiteren Typus von Anwendungen mit etwas geringeren Leistungsanforderungen. Diese Anwendungen stellen höhere Ansprüche an den Stromverbrauch und insbesondere die Betriebsspannung. Für diese Art von Anwendung bietet sich der 130-nm-MONOS-Flash-Prozess mit niedrigerem Stromverbrauch und geringerer Arbeitsspannung eine Plattform für eine neue Familie von Bausteinen mit den passenden charakteristischen Leistungsdaten.

Die Unterschiede zwischen diesen beiden Flash-Technologien zeigt Tabelle 1. Bausteine im 90-nm-Prozess bieten Zugriffszeiten auf sehr hohem Leistungsniveau sowie gute Stromverbrauchswerte und die Möglichkeit, großen Speicher auf dem Chip zu integrieren. Bausteine im 130-nm-Prozess dagegen sinken bei der Performance sowie bei der maximalen Speichergröße, allerdings liegt der Stromverbrauch im aktiven Betrieb und im RTC-Modus (Low-Power Modus mit Timer- und Kalender-Unterstützung per Echtzeit-Clock) signifikant niedriger.

Anpassungen an den Low-Power-Markt

Für eine Anpassung des RX-Kerns an die Anforderungen des Low-Power-Marktes mussten die Entwickler zudem die im CPU-Kern selbst implementierten Funktionen näher betrachten. Dies war erforderlich, um sowohl den Stromverbrauch zu minimieren, als auch gleichzeitig Kompatibilität zu den bestehenden RX-CPU-Core-Implementierungen zu gewährleisten. Zwei Bereiche im CPU-Core standen im Fokus: Der erste und wahrscheinlich wichtigste Bereich war die Implementierung der integrierten Fließkomma-Einheit (Floating Point Unit).

Bei Low-Power-Anwendungen ist der Einsatz von Fließkomma-Arithmetik recht ungewöhnlich. Weil diese Einheit nicht nur zusätzlichen Platz auf dem Chip sowie Leistung benötigt, entschied man sich dafür, diese Funktion bei der Low-Power-Implementierung wegzulassen. Der zweite Bereich betrifft die Busarchitektur selbst: Diese arbeitet beim RX600 mit 64 Bit Breite für Daten und Befehle extrem effizient. Die Ansteuerung von zwei 64-Bit-Bussen verbraucht jedoch viel Strom und belegt wertvollen Platz auf dem Chip.

Für die Low-Power-Implementierung entschieden sich die Entwickler daher, die Breite dieser Busse auf 32 Bit zu verringern. Dies hat nur geringe Auswirkungen auf die Rech

Tabelle 2 zeigt die Unterschiede zwischen dem RX600- und dem RX200-Kern. Der Einsatz mehrerer Prozesstechnologien zur Implementierung des gleichen, grundlegenden CPU-Kerns bietet für den Entwicklungsingenieur zahlreiche Vorteile. Durch den Einsatz mehrerer Prozesstechnologien können sich Anwender auf eine CPU-Kernarchitektur festlegen, um alle Anwendungsanforderungen zu erfüllen und die gleichen Design-regeln für jede Implementierung zu nutzen, sodass viele Peripherieelemente und Funktionen gleich bleiben.

Über den Autor:

Craeme Clark ist Product Marketing Specialist in der Industrial Business Group bei Renesas Electronics Europe

Parameter
90-nm-MONOS-Flash-Prozess
130-nm-MONOS-Flash-Prozess
CPU-Core
RX600
RX200
maximale Flash-Größe
2 MByte
1 MByte
Zugriffszeit
10 ns
20 ns
Versorgungsspannung
3 V oder 5 V
1,62 V bis 5,5 V
Stromaufnahme im aktiven Modus
500 µA/MHz
200 µA/MHz
Stromaufnahme im RTC-Modus
3 µA
1,3 µA
Tabelle 1: Unterschiede bei Mikrocontrollern bei verschiedenen Strukturbreiten des MONOS-Flash-Prozesses
Parameter
RX200
RX600
Betriebsfrequenz
500 MHz mit No-Wait-State-Memory-Access
100 MHz mit No-Wait-State-Memory-Access
Befehls-Queue
32 Byte x 4
64 Byte x 4
Single-Precision-FPU
nicht verfügbar
verfügbar
Rechenleistung
1,56 DMIPS/MHz
1,65 DMIPS/MHz
Tabelle 2: Unterschiede zwischen den Implementierungen des RX-Cores