ARM Call for Papers

Konferenz für ARM-Systementwicklung
Konferenz für ARM-Systementwicklung

Die große Konferenz für ARM-Systementwicklung am 11. und 12. Juli 2012 in München bietet Entwicklern die Gelegenheit, sich detailliertes Wissen über die aktuellen Cortex-Architekturen anzueignen, die mittlerweile zum Industriestandard avanciert sind.

Ausführliche Informationen:
www.arm-entwicklerkonferenz.de

iPad 3 Teardown & Light+Building

Intel-Prozessor im Smartphone
Intel-Prozessor im Smartphone

Mit dem Lava Xolo X900 gibt es erstmals ein Smartphone, das auf einem Atom-Prozessor von Intel basiert. Kann das mit ARM mithalten? Wir haben das untersucht.

Der kleinste 32-bit-Core der Welt
Der kleinste 32-bit-Core der Welt

Mit dem Cortex-M0+ hat ARM im März den kleinsten 32-bit-Core der Welt vorgestellt. Wir haben ihn uns einmal genauer angeschaut.

Was bringen Quad-Cores in Smartphones?
Was bringen Quad-Cores in Smartphones?

Der Tegra-3 von Nvidia ist der erste Quad-Core-Prozessor für Smartphones und Handys - ganz aktuell im neuen Galaxy S3. Doch bringen vier Kerne im Smartphone überhaupt etwas?

Reingeschaut: Das Galaxy Nexus
Reingeschaut: Das Galaxy Nexus

Ein Blick in dass Innenleben des gemeinsam von Google und Samsung entwickelten Smartphones.

Entwicklungstools zum Download
Entwicklungstools zum Download

Zahlreiche Hersteller bieten im Netz Online-Tools, zeitlich begrenzte Testversionen oder ganze Programmme zum Download an. Wir haben eine kleine Auswahl davon zusammengestellt.

Produkte des Jahres 2012

Events

Marktübersichten Bauelemente

Bauelemente-Marktübersichten

Electronic WebLessons

Electronic WebLessons
Electronic WebLessons

Die Electronic WebLessons vermitteln multimedial aufbereitet Basiswissen zum Thema Elektronik. Hier können Sie ihr Praxiswissen auffrischen oder sich die Grundlagen der Elektronik neu aneignen.

14. Juli 2011
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.

Graeme Clark

Anzeige

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: Vergleich der Struktur einer NOR-Flash-Zelle mit ihrem Floating-Gate (links) und einer MONOS-Flash-Zelle (rechts); dabei steht »CG« für »Control Gate«, »MG« für »Memory Gate
 
zoom
Bild 1: Vergleich der Struktur einer NOR-Flash-Zelle mit ihrem Floating-Gate (links) und einer MONOS-Flash-Zelle (rechts); dabei steht »CG« für »Control Gate«, »MG« für »Memory Gate«.

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«

Bild 2: Übersicht über die Core-Architektur des »RX«-Mikrocontrollers
 
zoom
Bild 2: Übersicht über die Core-Architektur des »RX«-Mikrocontrollers

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