Ein Angebot von

Entwicklung von Power-Management-Software für Embedded-Systeme

| Autor / Redakteur: Colin Walls * / Sebastian Gerstl

Ebenen einer klassischen Entwicklungpyramide: Früher hingen reine Systemleistung und Energieeffizienz nahezu ausschließlich von der zu Grunde liegenden Hardware ab. Gerade in Bezug auf Power Management kann eine elegante Softwarelösung hier allerdings eine Menge bewerkstelligen.
Ebenen einer klassischen Entwicklungpyramide: Früher hingen reine Systemleistung und Energieeffizienz nahezu ausschließlich von der zu Grunde liegenden Hardware ab. Gerade in Bezug auf Power Management kann eine elegante Softwarelösung hier allerdings eine Menge bewerkstelligen. (Bild: Mentor)

Power Management wird bei der Entwicklung von Embedded-Software immer wichtiger. Historisch gesehen war dies ein reines Hardwareproblem. Das hat sich in den letzten Jahren allerdings geändert. Software kann dieses Thema immer effizienter adressieren.

Sobald Software die Faktoren kontrollieren kann, die die Leistungsaufnahme eines Systems beeinflussen, ist es logisch, dass sie diese Kontrolle auf effiziente Weise ausüben sollte. Vieles wird über die Implementierung von Power-Management-Software gesagt, aber weniger über ihr Design.

Begrifflichkeiten für Power-Management-Software

Es gibt einige Schlüsselbegriffe, die man verstehen muss, wenn man über Power-Management-Software diskutiert.

Der erste ist die Idee eines Anwendungsfalls (Use-Case). Dies ist ein Szenario für den Betrieb des Geräts. Es kann die Durchführung einer bestimmten Operation sein – wie die Darstellung einiger Daten oder das Senden von Daten über ein Netzwerk. Es könnte auch ein Leerlaufzustand sein, bei dem das Gerät nur darauf wartet, dass etwas passiert. Ein Anwendungsfall kann von einem menschlichen Benutzer initiiert, aber auch durch ein externes Ereignis oder einen Timer ausgelöst werden.

Jeder Anwendungsfall stellt an das System eine Reihe von Anforderungen. Um diese zu erfüllen, wird eine bestimmte CPU-Leistung benötigt. Durch die Verwendung von DVFS (Dynamic Frequency and Voltage Scaling) kann die Power-Management-Software eine Spannungs-/Frequenzkombination wählen, die genau die benötigte Rechenleistung zur Verfügung stellt und somit die Leistungsaufnahme minimiert. Diese Parameter werden als Betriebspunkte bezeichnet. Darüber hinaus erfordert jeder Anwendungsfall den Zugriff auf verschiedene Ressourcen wie Peripheriegeräte etc., die je nach Bedarf von der Power-Management-Software ausgewählt (eingeschaltet) werden können.

Power-Management-Software als State Machine

Die Implementierung einer Applikation mit Power-Management ist also eine Frage des Übergangs zwischen den einzelnen Anwendungsfällen. Die Power-Management-Software wählt die Betriebspunkte und verfügbaren Ressourcen aus.

Mir ist diese Art von Struktur sehr vertraut. Sie erinnert mich an eine Zustandsmaschine. Es muss also sinnvoll sein, einen Design-Ansatz zu verwenden – UML kommt mir in den Sinn –, bei dem eine Zustandsmaschine ein mögliches Paradigma ist.

Der Autor

Colin Walls, Embedded-Software-Technologist bei Mentor, a Siemens business.
Colin Walls, Embedded-Software-Technologist bei Mentor, a Siemens business. (Bild: Caroline Mann)

* Colin Walls verfügt über fast 40 Jahre Erfahrung in der Elektronikindustrie, hauptsächlich im Bereich Embedded Software. Er ist Embedded-Software-Technologist bei Mentor, a Siemens business, mit Sitz in Großbritannien. Walls hält regelmäßig Vorträge auf Konferenzen und Seminaren. Zudem ist er Autor zahlreicher Fachartikel sowie zweier Bücher über Embedded Software und betreibt ein Blog auf http://blogs.mentor.com/colinwalls.

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45229446 / Implementierung)