Fast die Hälfte der Entwickler in der deutschen Industrie, die derzeit mit 8-Bit-Mikrocontrollern arbeiten, planen auf 32-Bit-MCUs umzusteigen: Damit sehen Marktbeobachter einen generellen Trend bestätigt. Bisher verhindert vor allem das Preisniveau der 32-Bit-Varianten einen noch breiteren Erfolg. Das will Infineon mit der neuen XMC1000-Familie ändern: Durch 65-nm-Halbleiterprozesse auf 300-mm-Wafern sind die Chips sehr kosteneffizient. Sie ergänzen die Anfang 2012 eingeführte XMC4000-Familie und übernehmen einige der bekannten Peripheriefunktionen.

Die XMC1000-Derivate sollen gegenüber 8-Bit-Mikrocontrollern nicht nur mehr Leistung bringen, sondern weitere neue Merkmale aufweisen. Zum Beispiel gibt es die Bausteine mit Flashspeichergrößen von 8 bis hin zu 200 KByte. Spezielle Peripheriefunktionen sind zum Beispiel für LED-Beleuchtungs-Anwendungen oder energieeffiziente Motorregelungen ausgelegt. Mit einem Konzept zum IP-Schutz eingebetteter Software greift Infineon außerdem das heikle Plagiate-Thema auf. Dazu tragen die MCUs jeweils kunden- oder projektspezifischen 128-Bit-AES-Schlüssel und dechiffrieren den Programmcode erst beim Laden in den Flashspeicher. Ein Sperrschutz verhindert, dass Unbefugte den Code auslesen können. Das Feature ist allerdings optional, wer will, kann die Controller auch traditionell verwenden.

Bild 1: Die neuen XMC1000-Mikrocontroller mit ARM Cortex-M0-Kern stehen in drei Serien zur Verfügung, jede ist optimiert für unterschiedliche Anwendungsbereiche.

Bild 1: Die neuen XMC1000-Mikrocontroller mit ARM Cortex-M0-Kern stehen in drei Serien zur Verfügung, jede ist optimiert für unterschiedliche Anwendungsbereiche.Infineon

Ausgelegt für verschiedene Anwendungsbereiche

Zur XMC1000-Familie gehören derzeit 23 Produkte im TSSOP-Gehäuse mit 16, 28 und 38 Pins. Die Mikrocontroller erfüllen die Sicherheitsanforderungen der IEC60730 Class B, die für in Europa verkaufte Haushaltsgeräte vorgeschrieben sind, und bieten unter anderem Hardware-Fehlerkorrektur (ECC) und entsprechende Speichertests. Die Familie teilt sich in die drei Serien XMC1100 (Einstiegsserie), XMC1200 (Feature-Serie) und XMC1300 (Control-Serie), siehe Bild 1.

Die Einstiegsserie XMC1100 besitzt bis zu zwölf 12-Bit-AD-Wandler-Kanäle mit bis zu 1,88 MSample/s, vier 16-Bit-Timer der Capture/Compare-Unit 4 (CCU4) und eine breite Spannungstoleranz zwischen 1,8 und 5,5 V. Bei der XMC1200-Feature-Serie kommen applikationsspezifische Funktionsmerkmale hinzu, etwa eine Peripherieeinheit für kapazitive Touch-Anwendungen und für die Ansteuerung von LED-Displays (LEDTS) sowie die neuartige BCCU (Brightness and Color Control Unit). Die BCCU ermöglicht nahezu ohne Prozessorlast das flimmerfreie Dimmen und die Farbsteuerung von LEDs. Außerdem gibt es Versionen für den erweiterten Temperaturbereich von -40 bis +105 °C.

Die Control-Serie XMC1300 schließlich ist auf Motorsteuerung und digitale Leistungswandlung zugeschnitten. Dafür bietet sie neben einer besonders leistungsfähigen Capture/Compare-Unit 8 (CCU8) mit zwei Compare-Kanälen und asymmetrischer PWM-Funktionaliät sowie einem Position-Interface (POSIF) für die präzise Erfassung der Motorposition auch einen mathematischen Coprozessor. Letzterer entspricht der bekannten Vector-Engine und ermöglicht effiziente sensorlose FOC-Lösungen (feldorientierte Regelung) von Elektromotoren. Auch in der XMC1300-Serie gibt es Varianten für den Temperaturbereich bis zu 105 °C.

Bild 2: Infineon hat die XMC1000-Mikrocontroller mit umfangreicher Peripherie ausgestattet. Diese 32-Bit-Bausteine sind damit ihren 8-Bit-Mitbewerbern oft überlegen.

Bild 2: Infineon hat die XMC1000-Mikrocontroller mit umfangreicher Peripherie ausgestattet. Diese 32-Bit-Bausteine sind damit ihren 8-Bit-Mitbewerbern oft überlegen.Infineon

Flexible Timer

Ein wesentliches Funktionsmerkmal sind die Timer-Einheiten CCU4 und CCU8 (Bild 2). Die CCU4 ist wichtig für Systeme, die leistungsfähige Timer für das Signal-Monitoring und -Verarbeitung sowie PWM-Signalgenerierung benötigen. Damit lassen sich zum Beispiel Schaltnetzteile oder USVs einfach implementieren. Die 16-Bit-Timer-Module bestehen aus vier identischen, einfach kaskadierbaren Timer-Slices. Jeder CCU4-Timer-Slice kann im Compare-Modus (ein Compare-Kanal) oder im Capture-Modus (mit bis zu vier Capture-Registern) arbeiten. Außerdem wird die Erzeugung von bis zu vier unabhängigen PWM-Signalen unterstützt.

Die CCU8 unterstützt darüber hinaus eine komplexere PWM-Signalerzeugung mit komplementären Schaltern in Halbbrücken-Konfiguration, mehrphasiger Regelung und Parity-Check. Diese Funktionalität in Kombination mit einem sehr flexiblen und programmierbaren Schema für die Signal-Konditionierung prädestinieren die CCU8 für besonders leistungsfähige Motorsteuerungen, Mehrphasen- und Multi-Level-Systeme. Im Compare-Modus stehen für jeden Timer-Slice zwei Compare-Kanäle zur Verfügung. Damit können bis zu vier PWM-Signale per Timer-Slice (bis zu 16 je CCU8-Einheit) mit Totzeit generiert werden, um Kurzschlüsse in den Schaltern zu vermeiden. Der Timer kann auch als synchronisierter Trigger zwischen der PWM-Signalerzeugung und der AD-Wandlung fungieren.

Höhere Mathematik

Die Positionierungs-Interfacemodule des XMC1300 unterstützen Drehgeber, Hall-Sensoren sowie die mehrkanalige Positionserfassung. Zusammen mit CCU4 oder CCU8 kann eine Anwendung so die Position und Geschwindigkeit eines Motors ermitteln. Der Math-Coprozessor kann darüber hinaus Vektor-Rotation (PARK-Transformation) mit 24 Bit Auflösung ausführen, womit sich leistungsfähige Algorithmen für die feldorientierte Motorreglung implementieren lassen. Der 64-MHz-Math-Coprozessor besteht aus einem 32-Bit-Teiler und einem 24-Bit-Cordic für trigonometrische Berechnungen.

Auf einen Blick

32-Bit-Leistung zu 8-Bit-Preisen: Ein Jahr nach der XMC4000-Familie mit Cortex-M0-Kern bringt Infineon nun die XMC1000-Reihe auf den Markt. Dank des Cortex-M0 stößt der Hersteller damit in traditionelle 8-Bit-Applikationen vor, zum Beispiel LED-Controller. Dank der modernen Peripherie der Bausteine sind zum Beispiel natürlich wirkende Farbwechsel mit wenig Aufwand implementierbar.

Mit Hilfe des flexiblen USIC-Interface-Moduls lassen sich verschiedene serielle Kommunikationsprotokolle wie ASC, SSC, I2C oder I2S implementieren. Ein USIC-Modul bietet zwei unabhängige Kommunikationskanäle. Ein dediziertes FIFO ermöglicht die Pufferung bei langsameren Applikationen.

Das AD-Wandler-Modul besteht aus einem Kernel, der nach dem Prinzip der sukzessiven Approximation (SAR) arbeitet. Die Auflösung kann mit 8, 10 oder 12 Bit programmiert werden. Außerdem lässt sich die Verstärkung individuell für jeden Kanal einstellen. Ein FIFO-Speicher verhindert bei sehr schnellen Abtastraten einen Datenverlust. Bei den XMC1200 und XMC1300 sind außerdem noch zwei Sample&Hold-Stufen und schnelle Analog-Komparatoren integriert. CCU4 und CCU8 können Messungen mit den AD-Wandlern triggern.

Weitere hilfreiche Peripheriefunktionen sind ein PRNG (Pseudo Random Number Generator), eine Echtzeituhr (RTC) und ein Window Watchdog Timer (WDT).

Innovative LED-Ansteuerung

Mit den beiden LEDTS-Modulen der XMC1200-Familie lassen sich LEDs und Touch-Panels in HMI-Anwendungen ansteuern. Dabei können die LEDTS-Module die Kapazität von bis zu je acht Touch-Pads mit Hilfe einer RO-Topologie (Relaxation Oszillator) messen. Bis zu 64 LEDs (8 x 8) lassen sich in einer LED-Matrix gleichzeitig ansteuern. Die Module sind untereinander synchronisierbar, für optimierte Ergebnisse. Touch-Pads und LEDs können sich Anschlüsse teilen, was die benötigte Pin-Anzahl minimiert.

Bild 3: Für die Ansteuerung einer LED-Beleuchtung haben die neuen Mikrocontroller eine so genannte BCCU-Einheit (Brightness and Color Control Unit).

Bild 3: Für die Ansteuerung einer LED-Beleuchtung haben die neuen Mikrocontroller eine so genannte BCCU-Einheit (Brightness and Color Control Unit).Infineon

Die Serien XMC1200 und XMC1300 verfügen über die BCCU-Einheit (Bild 3): Sie stellt automatisch Dimmsignale an den Port-Anschlüssen für externe LED-Treiber zur Verfügung. Die BCCU ist – bei minimalem Code-Aufwand – für die automatische Steuerung der Dimmung und der Farben von mehrkanaligen LED-Lampen ausgelegt. Ein Entwicklungsziel war die flimmerfreie Darstellung. Da ein Betrachter nicht jede Änderung der Leuchtdichte als Flimmern wahrnimmt, hat Infineon diese frequenzabhängige Bemerkbarkeitsschwelle empirisch ermittelt.

Diese Erkenntnisse sind in das Design der BCCU eingeflossen. Ein wesentliches Merkmal ist die automatische hochfrequente Helligkeitsmodulation (PDM mit 12 Bit Auflösung). Damit wird für jeden der insgesamt neun Kanäle ein individueller Bitstrom erzeugt. Durch die hohe Frequenz erhält man eine hohe Auflösung für den Helligkeitswert beziehungsweise den Farbwert bei RGB-Anwendungen. Damit ist eine flimmerfreie Darstellung möglich, und zwar bei unterschiedlichsten LED-Treibern und Hochleistungs-LEDs.

Professionell dimmen

Die BCCU hat drei so genannte Dimming-Engines integriert. Diese sorgen für die exponenzielle Veränderung der Helligkeit. Die exponenzielle Dimmung und lineare Veränderung der Intensität lassen die Dimmungsschritte und Farbänderungen für das menschliche Auge ganz natürlich erscheinen. Die drei Dimming-Engines sind den neun Kanälen beliebig zuordenbar. So kann man zum Beispiel drei RGB-Leuchten oder eine Straßenleuchte mit bis zu neun LED-Strängen ansteuern. Die BCCU stellt darüber hinaus Trigger-Signale für den A/D-Wandler bereit. Damit kann dieser beispielsweise Ströme in mehreren LED-Strängen synchronisiert messen.

Bild 4: Der Linear Walker sorgt für einen natürlichen Übergang beim Farbwechsel in RGB-Anwendungen.

Bild 4: Der Linear Walker sorgt für einen natürlichen Übergang beim Farbwechsel in RGB-Anwendungen.Infineon

Für den Farbwechsel bei RGB-Lampen spielt das Linear-Walker-Modul eine wichtige Rolle (Bild 4). Dieser Hardware-Funktionsblock passt die Frequenz des Bitstroms für jeden Kanal so an, dass ausgehend von Farbe X der Zielpunkt von Farbe Y im Farbraum für jeden der drei Kanäle (Rot, Grün, Blau) zum gleichen Zeitpunkt erreicht wird und zwar innerhalb einer vorgegebenen Zeit. Der Farbübergang ist mit diesem Verfahren für das menschliche Auge wesentlich angenehmer und natürlicher. Außerdem sind keine komplexen Software-Algorithmen erforderlich.

Entwicklungsunterstützung und Verfügbarkeit

Für die effiziente Software-Entwicklung steht die von der XMC4000-Serie bekannte Entwicklungsumgebung Dave kostenlos zur Verfügung. Das Tool-Paket beinhaltet neben Dave dem GNU-Compiler und GNU-Debugger sowie einen Flash-Loader. Dave unterstützt automatische Code-Generierung mittels vordefinierter und getesteter Software-Komponenten, den so genannten Dave-Apps. Im Gegensatz zum herkömmlichen Ansatz mit Bibliotheken und Programmbeispielen sind die Dave-Apps abstrakter und erlauben die einfache grafische Konfiguration sowie die Kombination mehrerer Dave-Apps. Damit können die Hardware-Ressourcen automatisch und fehlerfrei auf dem Chip abgebildet werden.

Bild 5: Zur einfachen Evaluierung hat Infineon Boot-Kits für alle drei Serien der XMC1000-Familie entwickelt.

Bild 5: Zur einfachen Evaluierung hat Infineon Boot-Kits für alle drei Serien der XMC1000-Familie entwickelt.Infineon

Eine einfache Evaluierungsmöglichkeit für die XMC1000-Produkte bieten die Boot-Kits (Bild 5), die es für jede der drei Produktserien gibt. Für den applikationsorientierten Ansatz stellt Infineon zudem dedizierte Applikationskits zur Verfügung. Für XMC1000 wird es zunächst ein Kit für die Entwicklung von LED-Beleuchtungslösungen geben und ab Mai 2013 auch ein Kit für gängige und besonders effiziente Motorsteuerungen.

Erste Muster der neuen Familie und die Boot-Kits sind ab März 2013 verfügbar. Die Produkte werden bei großen Bestellmengen schon ab 0,25 und bis etwa 1,25 Euro bei vollem Funktionsumfang angeboten.