Power Management Debugging von Ultra-Low-Power-Applikationen leicht gemacht

Volker Rzehak *

Anbieter zum Thema

Die vielen Features moderner Mikrocontroller machen das Debugging von Ultra-Low-Power-Applikationen immer schwieriger. Die Lösung: Der MSP430-Mikrocontroller und die EnergyTrace++-Technologie.

Ultra-Low-Power-Applikationen: Der MSP430-Mikrocontroller und die EnergyTrace++-Technologie machen Entwicklung und Debugging zum Kinderspiel.
Ultra-Low-Power-Applikationen: Der MSP430-Mikrocontroller und die EnergyTrace++-Technologie machen Entwicklung und Debugging zum Kinderspiel.
(Bild: Texas Instruments)

Die Entwicklung und das Debugging von Ultra-Low-Power-Applikationen wird immer komplexer. Mikrocontroller, die in diesen Anwendungen zum Einsatz kommen, bieten immer mehr Features und Power-Modi, die der Anwender zu kontrollieren hat. Um sicherzustellen, dass eine Applikation mehr als zehn Jahre mit einer Batterie auskommt, müssen nicht nur die Algorithmen korrekt sein. Weitaus wichtiger ist, dass das System entsprechend dem beabsichtigten Power-Profil arbeitet. Die EnergyTrace++-Technologie bietet eine neue und einzigartige Möglichkeit, Embedded-Anwendungen zu debuggen und zu optimieren.

Bildergalerie

Präzise Energiemessung mit detaillierten Informationen

EnergyTrace++ kombiniert eine äußerst präzise Energiemessung mit detaillierten Informationen über den Zustand eines Mikrocontrollers. MSP430-Mikrocontroller mit Unterstützung für die EnergyTrace++-Technologie stellen nicht nur Informationen über den CPU-Status zur Verfügung, also beispielsweise über den Stand des Programmzählers, um anzuzeigen, welcher Code gerade ausgeführt wird, sondern sie informieren zusätzlich über die Low-Power-Modi und darüber, welche Takte und Module jeweils aktiv sind. Selbst in den stromsparendsten Betriebsarten LPM3.5 und LPM4.5 der MSP430-MCUs, in denen der Core vollständig abgeschaltet ist und nur noch eine Wake-up-Logik sowie möglicherweise eine Echtzeituhr aktiv ist, lassen sich die notwendigen Zustandsinformationen auslesen.

Die Energiemessung selbst wird als EnergyTrace-Technologie bezeichnet und kann mit jedem MSP430-Mikrocontroller verwendet werden. Diejenigen MSP430-Bausteine, die Logik zur Bereitstellung interner Informationen implementieren, geben zusätzlich Informationen über den Status von CPU und Peripherie aus: EnergyTrace + CPU-Status + Peripheriestatus = EnergyTrace++.

Die Implementierung der Energiemessung im Debugger erfolgt mit einem softwaregesteuerten Gleichspannungswandler, der die zu prüfende Anwendung mit Strom versorgt. Die zeitliche Dichte der Ladeimpulse im DC/DC-Wandler ist ein Maß für den Energieverbrauch der Ziel-Applikation: je größer die Zahl der Impulse pro Zeiteinheit ist, umso mehr Energie verbraucht die Applikation.

Die angewandte Methode deckt ohne Bereichsumschaltung einen weiten Dynamikbereich ab, der sich von weniger als einem Mikroampere bis in den zweistelligen Milliamperebereich erstreckt. Im Gegensatz dazu erfordert eine auf Shunts basierende Lösung meist eine Bereichsumschaltung und kann die Stromaufnahme nur zu diskreten Zeitpunkten messen. EnergyTrace dagegen misst die tatsächlich von der Applikation aufgenommene Energie und erfasst deshalb auch kurze Spitzen im Stromverbrauch, die bei einer auf Shunts beruhenden Strommessung möglicherweise unentdeckt bleiben würden.

Originalbeitrag als ePaper oder im pdf-Format lesen

Dieser Autorenbeitrag ist in der Printausgabe ELEKTRONIKPRAXIS 15/2015 erschienen. Diese ist auch als kostenloses ePaper oder als pdf abrufbar.

Debugger liest die Statusinformationen aus

Der Debugger liest in regelmäßigen Abständen die Statusinformationen der CPU und der Peripherie aus und bündelt diese Informationen mit den Energieinformationen zu einem statistischen Profil. Eine integrierte Entwicklungsumgebung (Integrated Development Environment – IDE) wie etwa Code Composer Studio (CCS) von Texas Instruments ergänzt die Hardware-Features durch Tools zum Analysieren der erfassten Daten. Die IDE stellt hierzu ein ‚klassisches’ Codeprofil bereit, aus dem hervorgeht, wie sich die Laufzeit prozentual auf die einzelnen Funktionen der Applikationssoftware verteilt.

Darüber hinaus informiert ein Profil über die prozentuale Verteilung des Energieverbrauchs auf die einzelnen Funktionen. Des Weiteren werden verschiedene Grafiken erstellt, die die Leistung, die Energie und die Aktivität des Bausteins über die Zeit visualisieren. Die erfassten Daten lassen sich abspeichern und zu einem späteren Zeitpunkt mit den Resultaten einer weiter optimierten Softwareversion vergleichen (Bild 1). Diese Vergleichsmöglichkeit erlaubt auch das Ausprobieren verschiedener automatischer und manueller Softwareoptimierungen, um aufgrund von Messungen des tatsächlichen Energieverbrauchs die beste Version auszuwählen.

Artikelfiles und Artikellinks

(ID:43467515)

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung