Die dynamische Anpassung der Stromaufnahme, ob durch Senken von Spannung/ Frequenz oder durch energiesparende Betriebsmodi, erfordert die Einbeziehung des Echtzeit-Betriebssystems (RTOS) des DSP. Ein Power-Management-Modul (PM) im RTOS implementiert die Energieeinsparungen zum Boot-Zeitpunkt und koordiniert die verschiedenen energiesparenden Betriebsarten. Da das Senken der Kernfrequenz das Zeitverhalten von Subsystem-Operationen beeinflussen kann, kann das PM den Takt verringern, nachdem die Frequenz gesenkt wurde. Falls die Genauigkeit des Systemtakts für die Applikation unwichtig ist oder wenn der Entwickler Speicher für den Code sparen möchte, kann diese PM-Funktion deaktiviert werden. Ferner hat der Entwickler die Möglichkeit, die PM-Funktion, die bei Thread-Blockierungen den Taktgeber automatisch in den Leerlauf versetzt, zu aktivieren oder zu deaktivieren. Als Koordinationsinstanz stellt das PM ein Register für Benachrichtigungen von Energieereignissen für die Clients bereit. Wegen der Komplexität des Betriebssystems unterstützt das PM mehrere Client-Instanzen und bietet Clients auch die Möglichkeit, Ereignisse verzögert abzuschließen.
Das PM exportiert auch eine Bibliothek von Programmierschnittstellen (API, Application Programming Interface), mit der sich die Energiesparverfahren des DSP per Software steuern lassen. Mittels der APIs lassen sich Taktgeber einschalten, Energiesparmodi aktivieren und die Übergänge zwischen Umschaltpunkten für die Senkung von Spannung und Frequenz handhaben. Die Umschaltpunkte sind Parameter, mit denen die Spannung und die Frequenz in der richtigen Reihenfolge und mit den erforderlichen Einstellzeiten für den ordnungsgemäßen Betrieb gesenkt und angehoben werden können. Bild 2 zeigt, wie Umschaltpunkte das Timing der Spannungs-Frequenz-Senkung steuern. Da die Implementierung der Spannungs- und Frequenzsenkung für den im Entwurf verwendeten DSP und Spannungsregler spezifisch ist, unterstützen die APIs des Power-Management-Moduls nicht nur Abfragen und Konfigurationen der Umschaltpunkt-Latenz, sondern auch das Neuerstellen der PM-Bibliothek.
Entwicklungsunterstützung durch Tools
Ein effektiver Einsatz aller dieser Verfahren erfordert spezielle Software-Werkzeuge, die für das Power-Management konzipiert wurden. Parallel zu anderen Bereichen der DSP-Toolentwicklung versuchen auch die Tools zur Stromverbrauchs-Optimierung durch Transparenz und leichte Handhabung, die Entwicklung zu vereinfachen und zu beschleunigen. Die Tools arbeiten mit den im DSP eingebetteten und im RTOS vorhandenen Power-Management-Verfahren. Ferner bieten sie Testfunktionen und unter anderem Messwerte, Scope-Wellenformen, Kanalkalibrierung, Testcode sowie Ereignis-Auslösung. Mit diesen Möglichkeiten erhalten Entwickler einen Rückmeldemechanismus, mit dem sie bewerten können, wie sich alternative Implementierungen auf den Stromverbrauch auswirken. Bild 3 zeigt die Einbettung von Energieverbrauchsoptimierungs-Tools in den Code-Entwicklungszyklus.