Leistungsaufnahme von Mikrocontrollern
Einleitung
Bei der Auswahl eines Mikrocontrollers für eine bestimmte Aufgabe steht man vor dem Problem, die Leistungsaufnahme verschiedener Typen zu vergleichen. Allerdings ist das nicht ganz so einfach. Unzählige Betriebszustände z.B. Sleep Mode, Betriebsspannungen, Familien und Unterfamilien, neue Revisionen etc. machen einen Vergleich schwierig.
Dennoch ist es möglich, eine gute Orientierung zu liefern, wenn man sich auf einheitliche, praxistaugliches Vergleichsbedingungen einigt. Das soll in diesem Artikel versucht werden.
Vergleichskriterien und Vergleichsbedingungen
So ziemlich alle Mikrocontroller von heute basieren auf CMOS-Technik. Diese hat im statischen Fall (keine Takte und Signaländerungen) nahezu Null Strombedarf. Nur wenn Signale ihren Zustand wechseln müssen parasitäre Kapazitäten umgeladen werden und es wird Strom benötigt. Der Zusammenhang zwischen Taktfrequenz und Stromaufnahme ist fast immer linear. Weiterhin ist die Ladungsmenge/Zeit (=Strom) von der Höhe der Betriebsspannung abhängig, was auch einleuchtet. Denn es ist ein Unterschied, ob man einen Kondensator auf 1,8 oder 5V aufladen muss. Dies läßt sich mit der lang bekannten Formel darstellen.
[math]\displaystyle{ P=V_{CC}^2 \cdot C_P \cdot f_T }[/math]
- P : Verlustleistung
- Vcc: Betriebsspannung
- Cp : Parasitäre Kapazität
- fT : Taktfrequenz
Daraus lassen sich folgende Vergleichskriterien aufstellen, nach denen die Mikrokontroller in die untenstehende Tabelle eingeordnet werden sollen.
- Stromaufnahme in aktiven Modus bei 1 MHz und 1,8/3,3V/5V (Aktiv); möglichst alle Komponenten aktiv
- Stromaufnahme im Schlafmodus mit laufender Echtzeituhr und 1,8/3,3V/5V (RTC); weitestgehend alle Komponenten inaktiv
- Stromaufnahme im tiefsten Schlafmodus bei 1,8/3,3V/5V (OFF); alle Komponenten inaktiv
Mit diesen Angaben kann man recht leicht den Stromverbrauch bei anderen Taktfrequenzen un Betriebsspannungen berechnen. Alle Angaben sollten den typischen Stromverbrauch bei 25C darstellen. Sollte es notwenig sein, von diesen Angaben abzuweichen, so muss das in der Spalte Bemerkungen erklärt werden. Um den Stromverbrauch spezieller Komponenten zu vergleichen wird eine zweite Tabelle benutzt.
Vergleichstabelle der Betriebsmodi
Familie | Controller | Modus | 1,8V | 3,3V | 5V | Bemerkung |
---|---|---|---|---|---|---|
AVR | ATmega88 | Aktiv | 0,25 | 0,5 | 0,9 | - |
AVR | ATmega88 | RTC | 0,004 | 0,007 | 0,009 | - |
AVR | ATmega88 | OFF | 0,0001 | 0,0003 | 0,0007 | - |
AVR | ATmega8 | Aktiv | - | 1,8 | 2,3 | - |
AVR | ATmega8 | RTC | - | 0,010 | 0,015 | - |
AVR | ATmega8 | OFF | - | 0,0004 | 0,001 | - |
AVR | ATmega324P | Aktiv | 0,5 | 0,6 | 1,1 | @2V, 3V, 5V |
AVR | ATmega324P | RTC | 0,0005 | 0,0006 | - | @2V, 3V |
AVR | ATmega324P | OFF | - | 0,0002 | - | @3V, no WDT |
AVR | AT90S2313 | Aktiv | - | 2 | 5 | AVR der klassischen Baureihe |
AVR | AT90S2313 | OFF | - | 0,0001 | 0,0001 | AVR der klassischen Baureihe |
Vergleichstabelle der Module
Familie | Controller | Modul | 1,8V | 3,3V | 5V | Bemerkung |
---|---|---|---|---|---|---|
AVR | ATmega88 | Brown Out | 22 | 23 | 26 | - |
AVR | ATmega88 | ADC | 220 | 280 | 370 | - |
AVR | ATmega88 | Analog Comparator | 65 | 75 | 90 | - |
AVR | ATmega8 | Brown Out | - | 15 | 17 | - |
AVR | ATmega8 | ADC | - | 270 | 360 | - |
AVR | ATmega8 | Analog Comparator | - | 60 | 75 | - |