DE102012022412B4 - Ablaufverfolgung eines eingebetteten Spannungsreglers - Google Patents

Ablaufverfolgung eines eingebetteten Spannungsreglers Download PDF

Info

Publication number
DE102012022412B4
DE102012022412B4 DE102012022412.5A DE102012022412A DE102012022412B4 DE 102012022412 B4 DE102012022412 B4 DE 102012022412B4 DE 102012022412 A DE102012022412 A DE 102012022412A DE 102012022412 B4 DE102012022412 B4 DE 102012022412B4
Authority
DE
Germany
Prior art keywords
power
voltage regulator
performance
profiles
profiler
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102012022412.5A
Other languages
English (en)
Other versions
DE102012022412A1 (de
Inventor
Albrecht Mayer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102012022412A1 publication Critical patent/DE102012022412A1/de
Application granted granted Critical
Publication of DE102012022412B4 publication Critical patent/DE102012022412B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R21/00Arrangements for measuring electric power or power factor
    • G01R21/133Arrangements for measuring electric power or power factor by using digital technique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Power Sources (AREA)
  • Measurement Of Current Or Voltage (AREA)

Abstract

Leistungs- und Ablaufverfolgungs-Profilierungssystem mit: einer mikrocontrollerbasierten Vorrichtung, die einen ersten Spannungsregler, einen zweiten Spannungsregler, und eine chipinterne Ablaufverfolgungseinheit aufweist, wobei die mikrocontrollerbasierte Vorrichtung so konfiguriert ist, dass sie eine Versorgungsleistung empfängt, und die chipinterne Ablaufverfolgungseinheit so konfiguriert ist, dass sie Programmablaufverfolgungen bereitstellt, wobei der erste Spannungsregler eine erste Leistung an eine erste Schaltung liefert, und der zweite Spannungsregler eine sich von der ersten Leistung unterscheidende Leistung an eine zweite Schaltung liefert; einem Leistungs-Profiler, der so konfiguriert ist, dass er Leistungsinformationen von dem ersten Spannungsregler, dem zweiten Spannungsregler, der ersten Schaltung, und der zweiten Schaltung empfängt; und einem System-Profiler, der so konfiguriert ist, dass er die Programmablaufverfolgungen einer Operation der mikrocontrollerbasierten Vorrichtung empfängt.

Description

  • Die zunehmende Geschwindigkeit und Komplexität von Schaltungen hat einen beträchtlichen Anstieg des Leistungsverbrauchs zur Folge. Des Weiteren kann der Leistungsverbrauch ein kritischer Faktor für einige Energiequellen sein, wie etwa batteriebetriebene Geräte, Kfz-Systeme und dergleichen. Es sind bis heute bereits verschiedene Techniken verwendet worden, um den Leistungsverbrauch zu reduzieren.
  • Eine Technik zur Reduzierung des Leistungsverbrauchs umfasst das manuelle Identifizieren und Ersetzen von Bauteilen durch weniger Bauteile, um den Leistungsverbrauch zu reduzieren. Diese Technik kann für relativ einfache Schaltungen und Systeme effektiv sein, wird aber für Systeme größeren Maßstabs teuer und zeitaufwändig. Außerdem kann das manuelle Ersetzen Fehler in das System einführen.
  • Eine andere Technik zur Reduzierung des Leistungsverbrauchs ist, verschiedene Designtechniken zu verwenden, um den Leistungsverbrauch zu mindern. Die Designtechniken können den Leistungsverbrauch reduzieren, indem Techniken für ein Design mit einem geringeren Leistungsverbrauch einbezogen werden. Aber diese Technik berücksichtigt keine Implementierungs- und Nutzungsmuster und kann die Leistung eventuell nicht ausreichend reduzieren.
  • In der Druckschrift US 2009/0327 784 A1 ist ein zu testendes System offenbart, und ein Daten-Beschaffungs-Modul, welches Daten-Ströme empfängt, sowie ein Verarbeitungs-Modul, welches ”System Traces” empfängt. Die Daten-Ströme enthalten auf eine – separate – Energie-Quelle bezogene Meß-Daten.
  • Eine weitere Technik zur Reduzierung des Leistungsverbrauchs umfasst das Durchführen von Software-System-Ablaufverfolgungen, während gleichzeitig eine externe Leistungszufuhr zu einem System überwacht wird. Mikrocontrollersysteme führen zusätzliche Komplexitäten und Leistungsnutzungsmuster ein. Der Strom bzw. die Leistung, der bzw. die dem System zugeführt wird, wird überwacht, während eine Softwareablaufverfolgung durchgeführt wird. Diese Technik kann Zeiträume identifizieren, in denen das gesamte System große Mengen an Leistung verbraucht, kann aber vielleicht nicht genügend Informationen bereitstellen, um Leistungsreduktionsgelegenheiten zu identifizieren. Außerdem werden die gemessenen Leistungswerte infolge des Vorhandenseins von Kondensatoren an den Stromanschlussstellen tiefpassgefiltert. Somit können kurze Perioden des Leistungsverbrauchs oder Spannungsspitzen übersehen werden.
  • Die Erfindung hat zur Aufgabe, ein neuartiges Leistungs- und Ablaufverfolgungs-Profilierungssystem zur Verfügung zu stellen, insbesondere ein Leistungs- und Ablaufverfolgungs-Profilierungssystem, mit dem die o. g. bzw. weitere Nachteile herkömmlicher Systeme überwunden werden können.
  • Sie erreicht dieses Ziel durch den Gegenstand des Anspruchs 1. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
  • Vorteilhaft weist das System des Weiteren einen System-Analysator auf, der so konfiguriert ist, dass er Leistungsprofile von dem Leistungs-Profiler und Ablaufverfolgungsprofile von dem System-Profiler empfängt.
  • Vorteilhaft ist der System-Analysator des Weiteren so konfiguriert, dass er Leistungsreduktionsmodifikationen auf der Grundlage der Leistungsprofile und der Ablaufverfolgungsprofile identifiziert.
  • Vorteilhaft umfassen die Leistungsreduktionsmodifikationen das Ändern eines Codes, der von der Mikrocontroller-Vorrichtung verwendet wird.
  • Vorteilhaft umfassen die Leistungsreduktionsmodifikationen das Ändern eines Betriebs des Spannungsreglers.
  • Vorteilhaft umfassen die Leistungsreduktionsmodifikationen das Steigern der Verwendung eines Leistungs- bzw. Stromsparmodus des Spannungsreglers.
  • Vorteilhaft stellt der Spannungsregler wenigstens einen Teil der Leistungsmessungen bereit.
  • Vorteilhaft weist das System des Weiteren eine logische Schaltung auf, die eine Ausgangsleistung des Spannungsreglers empfängt.
  • Vorteilhaft wird ein internes Steuersignal des Spannungsreglers als Information über den aktuellen Leistungsverbrauch verwendet.
  • Vorteilhaft weist die Mikrocontroller-Vorrichtung des Weiteren ein chipinternes Messbauteil zum Messen des Stroms des Eingangs oder der Ausgangsleistung des Spannungsreglers auf.
  • Vorteilhaft weist das System des Weiteren eine Leistungsversorgungseinheit auf, die ein Leistungsablaufverfolgungserzeugungs-Bauteil aufweist, wobei das Leistungsablaufverfolgungserzeugungs-Bauteil eine externe Sonde zum Messen des Versorgungsleistung und zum Bereitstellen von Versorgungsleistungsmessungen für den Leistungs-Profiler aufweist.
  • Vorteilhaft weist die Vorrichtung des Weiteren einen weiteren Spannungsregler auf, der so konfiguriert ist, dass er eine modifizierte Leistung bereitstellt, die eine Ausgangsspannung aufweist, die sich von einer Ausgangsleistung des Spannungsreglers unterscheidet.
  • Vorteilhaft stellt der weitere Spannungsregler zusätzliche Leistungsmessungen für den Leistungs-Profiler bereit.
  • Vorteilhaft ist der Spannungsregler ein eingebetteter Spannungsregler.
  • Vorteilhaft weist ein Leistungs- und Ablaufverfolgungs-Profilierungssystem auf:
    einen Leistungs-Profiler, der so konfiguriert ist, dass er Leistungsmessungen von wenigstens einem Spannungsregler einer mikroprozessorbasierten Vorrichtung empfängt;
    einen System-Profiler, der so konfiguriert ist, dass er Systemablaufverfolgungen einer Operation der mikrocontrollerbasierten Vorrichtung empfängt; und
    einen System-Analysator, der so konfiguriert ist, dass er Leistungsprofile von dem Leistungs-Profiler und Ablaufverfolgungsprofile von dem System-Profiler empfängt, und dass er Leistungsreduktionsmodifikationen auf der Grundlage der Leistungsprofile und Ablaufverfolgungsprofile identifiziert.
  • Vorteilhaft umfassen die Leistungsprofile den Leistungsverbrauch über den Lauf der Zeit.
  • Vorteilhaft umfassen die Leistungsprofile identifizierte Über- und Unterspannungsbedingungen.
  • Vorteilhaft umfassen die Ablaufverfolgungsprofile einen ausgeführten Code, Registerwerte und Speicheroperationen und sind die Ablaufverfolgungsprofile mit den Leistungsprofilen zeitkorreliert.
  • Vorteilhaft weist ein Verfahren zum Durchführen einer Leistungs- und Ablaufverfolgungs-Profilierung die folgenden Schritte auf:
    Messen einer Ausgangsleistung eines Spannungsreglers intern in einer mikroprozessorbasierten Vorrichtung, um Leistungsmessungen über den Lauf der Zeit zu erhalten;
    Erhalten von Systemablaufverfolgungen eines Mikroprozessors der mikroprozessorbasierten Vorrichtung;
    Erzeugen von Leistungsprofilen entsprechend den Leistungsmessungen;
    Erzeugen von Ablaufverfolgungsprofilen entsprechend den Systemablaufverfolgungen; und
    Vergleichen der Leistungsprofile mit den Ablaufverfolgungsprofilen.
  • Vorteilhaft umfasst das Verfahren des Weiteren das Identifizieren von Leistungsreduktionsmodifikationen entsprechend den Leistungsprofilen und den Ablaufverfolgungsprofilen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das ein System zur Überwachung eines Leistungsverbrauchs und zur Ablaufverfolgung einer Software veranschaulicht.
  • 2 ist ein Blockdiagramm, das ein Leistungs- und Ablaufverfolgungs-Profilierungssystem in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht.
  • 3 ist ein Blockdiagramm, das ein Leistungs- und Ablaufverfolgungs-Profilierungssystem in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht.
  • 4 ist ein Diagramm, das einen eingebetteten Spannungsregler in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht.
  • 5 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens zum Durchführen einer Leistungs- und Ablaufverfolgungs-Profilierung.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Die vorliegende Erfindung wird nun unter Bezugnahme auf die beigefügten Zeichnungsfiguren beschrieben, wobei durchwegs gleiche Bezugszeichen verwendet werden, um gleiche Elemente zu bezeichnen, und wobei die veranschaulichten Strukturen und Vorrichtungen nicht notwendigerweise maßstabsgetreu gezeichnet sind.
  • Die vorliegende Erfindung weist Systeme und Verfahren zum Mindern des Leistungsverbrauchs in Mikrocontrollersystemen auf. Systemablaufverfolgungen werden durchgeführt, während der Leistungsverbrauch von internen Systembauteilen, wie etwa eingebetteten Spannungsreglern, überwacht wird. Systemablaufverfolgungen umfassen im Allgemeinen das Protokollieren oder Aufzeichnen von Informationen über eine Ausführung eines Programms durch einen Mikrocontroller. Die Ablaufverfolgungen (traces) können Programmschleifen, Speicherzugriffe, Firmware-Updates und dergleichen verfolgen. Die Ablaufverfolgungen werden oftmals für Debugging- und Performanzzwecke benutzt. Aber die Ablaufverfolgungen können auch in Verbindung mit dem Überwachen des Leistungsverbrauchs der internen Systembauteile verwendet werden. Der Leistungsverbrauch und die Ablaufverfolgungen von internen Bauteilen werden analysiert, um den Leistungsverbrauch durch das System zu identifizieren und zu mindern.
  • Einige Aspekte oder Ausführungsformen der vorliegenden Offenbarung stellen ein Leistungs- und Ablaufverfolgungs-Profilierungssystem bereit. Das System weist eine mikrocontrollerbasierte Vorrichtung auf, die einen Spannungsregler hat. Außerdem ist die mikrocontrollerbasierte Vorrichtung so konfiguriert, dass sie eine Versorgungsleistung empfängt. Ein System-Analysator ist so konfiguriert, dass er Leistungsprofile von dem Leistungs-Profilersteller bzw. Leistungs-Profiler und Ablaufverfolgungsprofile von dem System-Profilersteller bzw. System-Profiler empfängt. Der System-Analysator ist so konfiguriert, dass er eine Identifizierung von Leistungsreduktionsmodifikationen auf der Grundlage der korrelierten Leistungsprofile und der Ablaufverfolgungsprofile erlaubt. Die Leistungsreduktionsmodifikationen umfassen Software- und Hardware-Modifikationen. Der Leistungs-Profiler kann Leistungsmessungen von anderen Bauteilen innerhalb der Vorrichtung empfangen. Das System kann weitere Bauteile wie etwa zusätzliche Spannungsregler, Prozessoren, Speicher, logische/digitale Schaltungen, analoge Schaltungen, Leistungsschaltkreise und dergleichen aufweisen. In einer alternativen Ausführungsform misst eine externe Sonde die Versorgungsleistung zu der Vorrichtung und stellt dem Leistungs-Profiler externe Messungen der Versorgungsleistung bereit.
  • In einer anderen Ausführungsform der Erfindung wird ein Leistungs- und Ablaufverfolgungs-Profilierungssystem offenbart. Das System weist einen Leistungs-Profiler, einen System-Profiler und einen System-Analysator auf. Der Leistungs-Profiler empfängt Leistungsmessungen von wenigstens einem Spannungsregler einer mikroprozessorbasierten Vorrichtung. Der Spannungsregler befindet sich intern in der Vorrichtung und kann ein eingebetteter Spannungsregler sein. Der System-Profiler empfängt System- oder Softwareablaufverfolgungen auf der Grundlage von Operationen der mikrocontrollerbasierten Vorrichtung. Die Ablaufverfolgungen können Informationen über verschiedene Operationen enthalten, die – ohne darauf beschränkt zu sein – Speichertransfers, Registerwerte, ausgeführte Befehle, Variable, Variablenwerte und dergleichen umfassen. Der System-Analysator empfängt die Leistungsprofile und die Ablaufverfolgungsprofile und korreliert diese. Diese Korrelation wird jeweils durch Zeitstempelinformationen für die Leistungsmessung und die Systemablaufverfolgung unterstützt. Dieser Lösungsweg funktioniert für unabhängige Übertragungspfade für jeden oder einen gemeinsamen Pfad. Typischerweise wird der Aufwand für die Zeitstempelung und die Übertragung durch die Verwendung eines gemeinsamen Pfades reduziert. Die Sequenz der Daten in diesem einzigen Pfad unterstützt die Korrelation und erlaubt eine Reduzierung des Aufwands für die Zeitstempelung. Als Folge davon ist der System-Analysator derart betriebsbereit, dass er Leistungsreduktionsmodifikationen auf der Grundlage der Leistungsprofile und der Ablaufverfolgungsprofile potentiell identifiziert.
  • Noch eine andere Ausführungsform der Erfindung umfasst ein Verfahren zum Durchführen einer Leistungs- und Ablaufverfolgungs-Profilierung. Eine Ausgangsleistung eines Spannungsreglers wird gemessen, um Leistungsmessungen über den Lauf der Zeit zu erhalten. Die Leistungsmessungen können den Strom, die Spannung, die Leistung und dergleichen umfassen. Der Spannungsregler befindet sich intern in einer mikroprozessorbasierten Vorrichtung. System- oder Softwareablaufverfolgungen eines ausgeführten Codes durch den Mikroprozessor werden parallel zu oder gleichzeitig mit den Leistungsmessungen gewonnen. Die Ablaufverfolgungen umfassen Codeanweisungen, Variable, Variablenwerte, Speicheroperationen, Registerwerte und dergleichen. Leistungsprofile werden entsprechend den Leistungsmessungen erzeugt. Die Leistungsprofile können mehrere Leistungsmessungen enthalten und sind zeitgestempelt. Es wird auch klar sein, dass die Leistungsmessungen Informationen von anderen Bauteilen als den Spannungsreglern enthalten können, wie etwa von Prozessoren, digitalen Schaltungen, analogen Schaltungen und dergleichen. Ablaufverfolgungsprofile werden entsprechend den Systemablaufverfolgungen erzeugt. Die Ablaufverfolgungsprofile umfassen eine oder mehrere Software- oder Systemablaufverfolgungen. Außerdem werden die Ablaufverfolgungsprofile zeitgestempelt oder zeitkorreliert, um die Analyse zu vereinfachen. Die Ablaufverfolgungsprofile und die Leistungsprofile werden bei einem Block verglichen, um Leistungsreduktionsmodifikationen entsprechend den Leistungsprofilen und den Ablaufverfolgungsprofilen zu identifizieren. Die Leistungsreduktionsmodifikationen können Hardware- und/oder Softwaremodifikationen umfassen. Zum Beispiel können die Hardware-Bauteile für die Modifikation oder das Ersetzen anvisiert werden. Als ein anderes Beispiel kann eine Software, die von der Vorrichtung ausgeführt wird, modifiziert werden, um den Leistungsverbrauch zu mindern.
  • 1 ist ein Blockdiagramm, das ein herkömmliches System 100 für die Überwachung des Leistungsverbrauchs und für die Ablaufverfolgung von Software veranschaulicht. Das System 100 weist eine mikrocontrollerbasierte Vorrichtung 102, eine Leistungssonde 104 und ein Systemablaufverfolgungs-Bauteil 106 auf.
  • Die mikrocontrollerbasierte Vorrichtung 102 weist einen Leistungsschaltkreis 110, einen Prozessor 112 und eine logische Schaltung 114 auf. Der Leistungsschaltkreis 110 modifiziert die Versorgungsleistung VDD und stellt anderen Bauteilen, die den Prozessor 112 und die logische Schaltung 114 umfassen, eine interne Leistung bereit. Der Prozessor 112 führt einen Code aus, um verschiedene Aufgaben oder Funktionen durchzuführen. Die logische Schaltung 114 wird von dem Prozessor 112 gesteuert, um verschiedene logische Operationen durchzuführen.
  • Die Leistungssonde 104 ist mit einer externen Leistungsversorgung VDD und mit der Erde gekoppelt. Die Sonde 104 ist quer über einen Shunt-Widerstand 108 angeschlossen, um Strommessungen zu erhalten. Ein Versorgungskondensator 109 ist zwischen der externen Leistungsversorgung VDD und der Erde GND angeschlossen, was zu einem Tiefpassfilter-Effekt für die Leistungssonde 104 führt.
  • Die Leistungssonde 104 misst den Strom quer über den Shunt-Widerstand 108, um den Leistungsverbrauch zu verschiedenen Zeitpunkten zu bestimmen. Infolge des Filterungseffekts ist der ermittelte Leistungsverbrauch ein durchschnittlicher Leistungsverbrauchswert.
  • Das Systemablaufverfolgungs-Bauteil 106 ist mit einem Port an der mikrocontrollerbasierten Vorrichtung 102 gekoppelt. Das Systemablaufverfolgungs-Bauteil 106 erhält Ablaufverfolgungen oder Protokolle auf der Grundlage des Codes, der von dem Prozessor 112 ausgeführt wird. Die Ablaufverfolgungen können verschiedene Ereignisse oder Funktionen identifizieren.
  • Die Systemablaufverfolgungen und der durchschnittliche Leistungsverbrauch können analysiert werden, um leistungsreduzierende Operationen zu identifizieren. Aber die Erfinder der vorliegenden Erfindung sind sich bewusst, dass der durchschnittliche Leistungsverbrauch nicht ausreichend sein kann, um Bauteile innerhalb der Vorrichtung 102 zu identifizieren, die geändert werden sollten.
  • 2 ist ein Blockdiagramm, das ein Leistungs- und Ablaufverfolgungs-Profilierungssystem 200 in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht.
  • Das System 200 weist eine mikrocontrollerbasierte Vorrichtung 202, einen System-Profiler 212, einen Leistungs-Profiler 214 und einen System-Analysator 216 auf.
  • Die mikrocontrollerbasierte Vorrichtung 202 weist einen oder mehrere Spannungsregler 204 und eine Vorrichtungsschaltung 206 auf. In einem Beispiel umfassen die Spannungsregler eingebettete Spannungsregler (EVR; embedded voltage regulators). Die Spannungsregler 204 empfangen eine Versorgungsleistung (VDD) und liefern eine modifizierte Leistung oder mehrere modifizierte Leistungen (MOD POWER) zu der Schaltung 206. In einem Beispiel liegt die Versorgungsleistung bei 12 Volt und liegt die modifizierte Leistung bei 5 Volt. In einem anderen Beispiel liegt die Versorgungsleistung bei 10 Volt und liegen die modifizierten Leistungen bei 5 Volt und 3,3 Volt. In einem weiteren Beispiel werden die modifizierten Leistungen mit 5 Volt, 3,3 Volt und 1–3 Volt zugeführt.
  • Die Spannungsregler 204 stellen auch Leistungsmessungen auf der Ausgangsseite jedes Reglers bereit. Die Messungen können den Strom, die Leistung, einen Widerstand, eine Spannung, repräsentative Signale und dergleichen umfassen. In einem Beispiel umfassen die Leistungsmessungen nur Strominformationen und benötigen Leistungsberechnungen auf der Grundlage von angenommenen Spannungen. In anderen Beispielen umfassen die Leistungsmessungen Strom- und Spannungsinformationen. In noch anderen Beispielen stellen die Leistungsmessungen nur Leistungsinformationen bereit.
  • Die Leistungsmessungen können direkt von dem Regler oder über eine Sonde (nicht gezeigt) bereitgestellt werden. Die Spannungsregler 204 können Signale bereitstellen, die zur verwendeten Leistung korrelieren. Zum Beispiel können Widerstands- oder Pulsbreitenmodulations-Steuersignale für die Spannungsregler 204 mit Leistungsverbrauchswerten für die Spannungsregler 204 korreliert sein. Außerdem können die Spannungsregler 204 Ausgangssignale umfassen, die den verwendeten Strom oder die verwendeten Leistung angeben oder diesen entsprechen. Sonden können zusätzlich zu oder an Stelle von integrierten Messungen verwendet werden, die von den Reglern 204 bereitgestellt werden. Die Sonden können Strom- oder Leistungsüberwachungsschaltungen, Shunt-Widerstände und dergleichen aufweisen. Wenn die Sonden zusätzlich zu integrierten Messungslieferanten vorgesehen sind, können die von der Sonde gewonnenen Messungen verwendet werden, um Vergleiche mit den von dem Regler bereitgestellten Messungen durchzuführen.
  • Die Vorrichtungsschaltung 206 kann zusätzlich zu den Spannungsreglern 204 optional Leistungsmessungen bereitstellen. Die Vorrichtungsschaltung 206 kann eine Vielfalt von Bauteilen aufweisen, die Leistungsverstärker, logische Schaltungen, Speichervorrichtungen, Prozessoren und dergleichen umfassen, ohne darauf beschränkt zu sein.
  • Der System-Profiler 212 erhält Software- oder Systemablaufverfolgungen einer Operation der Vorrichtung 202. Die Systemablaufverfolgungen umfassen im Allgemeinen das Protokollieren oder das Aufzeichnen von Informationen über eine Ausführung durch einen Mikrocontroller oder einen Prozessor. Die Ablaufverfolgungen können Programmschleifen, Speicherzugriffe, Ausnahmen, Firmware-Updates und dergleichen verfolgen. Der System-Profiler 212 erzeugt Ablaufverfolgungsprofile auf der Grundlage der Systemablaufverfolgungen. Die Ablaufverfolgungsprofile umfassen Zeitsteuerungs- oder Zeitstempelungsinformationen zusammen mit den Ablaufverfolgungen. Die Ablaufverfolgungsprofile können eine zusätzliche Analyse oder zusätzliche Informationen wie etwa Cache-Treffer/Fehltreffer, Buskonflikte, Signalwerte, etc. umfassen.
  • Der Leistungs-Profiler 214 empfängt Leistungsmessungen und erzeugt Leistungsprofile. Die Leistungsmessungen umfassen leistungsbezogene Messungen für ein oder mehrere interne Bauteile, die die Spannungsregler 204 und die Vorrichtungsschaltung 206 umfassen. Die Leistungsmessungen werden gesammelt und als die Leistungsprofile bereitgestellt. Die Leistungsprofile umfassen die Leistungsinformationen zusammen mit den Zeitsteuerungs- oder Zeitstempelungsinformationen, um eine Korrelation und Analyse mit den Systemablaufverfolgungen zu ermöglichen. Es sei angemerkt, dass die Systemablaufverfolgungen und die Leistungsmessungen typischerweise gleichzeitig erhalten und bereitgestellt werden und als ein gemeinsamer Ablaufverfolgungsnachrichtenstrom gespeichert und/oder ausgegeben werden.
  • Der System-Analysator 216 empfängt die Ablaufverfolgungsprofile und die Leistungsprofile jeweils von dem System-Profiler 212 und dem Leistungs-Profiler 214. Die Kombination aus den Ablaufverfolgungsprofilen und den Leistungsprofilen gestattet eine Korrelation von Software-Operationen und Hardware-Operationen, weil die Ablaufverfolgungs- und Leistungsprofile über im Wesentlichen den gleichen Zeitraum auftreten. Diese Korrelation gestattet eine Analyse und Identifikation von Software-Ausführungen, die in einem beträchtlichen Maße Leistung entziehen. Des Weiteren gestattet die Korrelation die Analyse einer Hardware-Operation während Software-Sequenzen oder -Segmenten und unterstützt diese.
  • Als Resultat aus dem Obigen ist der System-Analysator 216 betriebsbereit, um einen Energieverbrauch durch das Analysieren der Leistungs- und Ablaufverfolgungsprofile und von Zeitbetrachtungen zu bestimmen. Außerdem ist der System-Analysator 216 betriebsbereit, um Leistungsreduktionsmodifikationen auf der Grundlage der Ablaufverfolgungsprofile, der Leistungsprofile und/oder des Energieverbrauchs zu identifizieren. Die Leistungsreduktionsmodifikationen umfassen den Bauteilaustausch, vorgeschlagene Neugestaltungen und Softwareprogrammmodifikationen, die dazu führen, dass weniger Leistung verwendet wird. Außerdem können, weil die Leistungsprofile Informationen über interne Bauteile anstelle von einer externen Leistungsquelle umfassen, mehr Leistungsreduktionen identifiziert werden als mit herkömmlichen Systemen. Zum Beispiel könnte eine Leistungsreduktionsmodifikation das Setzen eines Bauteils in einen Leistungs- bzw. Stromsparmodus während bestimmter Operationen oder Funktionen umfassen. Der System-Analysator 216 ist funktionsbereit, um Leistungsinformationen bei einer hohen Auflösung, wie etwa in μs, zu analysieren, weil die Leistungsmessungen von internen Bauteilen der Vorrichtung 202 bereitgestellt werden.
  • 3 ist ein Blockdiagramm, das ein Leistungs- und Ablaufverfolgungs-Profilierungssystem 300 in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht. Das System analysiert Ablaufverfolgungsprofile und Leistungsmessungsprofile, um Leistungsreduktionsmodifikationen zu identifizieren. Es wird klar sein, dass Daten und andere Verbindungen zwischen Bauteilen nicht gezeigt und/oder vereinfacht sind, um die Leistungsverbindungen zwischen Bauteilen zu veranschaulichen.
  • Das System 300 weist eine mikrocontrollerbasierte Vorrichtung 302, einen System-Profiler 312, einen Leistungs-Profiler 314 und einen System-Analysator 316 auf.
  • Die Vorrichtung 302 ist mit bestimmten Bauteilen gezeigt und beschrieben, um ein Verständnis der Erfindung zu erleichtern. Aber es wird klar sein, dass andere Bauteile hinzugefügt werden können und dass einige oder alle der enthaltenen Bauteile aus den Systemen weggelassen werden können und dies immer noch in Übereinstimmung mit der Erfindung ist.
  • Die Vorrichtung 302 weist einen ersten eingebetteten Spannungsregler 304, einen zweiten eingebetteten Spannungsregler 305, einen Prozessor 308, eine 3,3 V Schaltung 320, eine 1,3 V Schaltung 322, eine 5 V Schaltung 324 und einen Flash-Speicher 326 auf.
  • Der erste eingebettete Spannungsregler (EVR) 304 empfängt eine Versorgungsspannung und stellt eine Ausgangsspannung V3 und ein Messsignal M3 bereit. Die Ausgangsspannung für diesen Regler 304 ist 3,3 Volt. Das Messsignal M3 stellt eine Leistungsmessung für den Regler 304 bereit.
  • Bei dem ersten eingebetteten Spannungsregler 304 kann eine Auswahl dahingehend vorgenommen werden, dass er in einem von mehreren Modi und unter einer von mehreren Ausgangsbedingungen arbeitet. Einige beispielhafte Modi und Ausgangsbedingungen umfassen einen 3,3 V erzeugten Ausgangsmodus, einen 5 V erzeugten Ausgangsmodus, einen Leistungs- bzw. Stromsparmodus, einen linearen Modus, einen Schaltreglermodus, einen Low-Dropout-Modus und dergleichen. In einem Beispiel wird ausgewählt, dass der Regler in einem linearen Modus arbeitet. In einem anderen Beispiel wird ausgewählt, dass der Regler 304 in einem Schaltreglermodus arbeitet. Der Schaltreglermodus tendiert dazu, effizienter zu sein, da die Leistung schnell ein- und ausgeschaltet wird, um die erzeugte Spannung zu liefern. Der Arbeitszyklus (duty cycle) von Aus im Verhältnis zu Ein oder ein Pulsbreitenmodulationssignal bestimmt die Ausgangsspannung für die erzeugte Spannung. Das Pulsbreitenmodulationssignal (PWM; pulse width modulation) kann mit Leistungsverbrauchswerten für den Regler 304 korreliert werden. Die Korrelation kann verbessert werden, indem für Chiptemperaturen und dergleichen kalibriert wird. Der lineare Modus benutzt typischerweise ein Widerstandsnetzwerk, um die Ausgangsspannung für die erzeugte Spannung auszuwählen, und leitet die nicht genutzte Leistung über Widerstände an.
  • Der Regler 304 überwacht auch zugeführte und erzeugte Spannungen auf Überspannungsbedingungen, Unterspannungsbedingungen, zugeführten Strom, erzeugten Strom und dergleichen. Der Regler 304 ist auch betriebsbereit, um Informationen über den aktuellen Betriebsmodus, Rücksetzbedingungen und dergleichen bereitzustellen.
  • Des Weiteren weist der Regler 304 einen Eingang oder mehrere Eingänge zum Setzen der Modi und der Ausgangsbedingungen auf. In einem Beispiel kann ein Reglereingang verwendet werden, um die Ausgangsspannung durch ein Signal oder einen Widerstandswert zu setzen.
  • Der zweite eingebettete Spannungsregler (EVR) 305 empfängt eine Versorgungsspannung und stellt eine Ausgangsspannung V1 und ein Messsignal M1 bereit. Der zweite Regler 305 kann in einer ähnlichen Art und Weise wie der erste Regler 304 arbeiten. Aber die Ausgangsspannung V1 und das Messsignal M1 können sich von V3 und M3 unterscheiden. Die Ausgangsspannung für diesen Regler 305 ist in einem Beispiel 1,3 V. Das Messsignal M3 stellt eine Leistungsmessung für den Regler 305 bereit.
  • Bei dem zweiten eingebetteten Spannungsregler 305 kann eine Auswahl so vorgenommen werden, dass er in einem von mehreren Modi und unter einer von mehreren Ausgangsbedingungen arbeitet. Die Modi und Bedingungen können sich von den Modi und Bedingungen unterscheiden, die für den ersten Regler 304 ausgewählt worden sind. Einige beispielhafte Modi und Ausgangsbedingungen umfassen einen 3,3 V erzeugten Ausgangsmodus, einen 1,3 V erzeugten Ausgangsmodus, einen Leistungs- bzw. Stromsparmodus, einen linearen Modus, einen Schaltreglermodus, einen Low-Dropout-Modus und dergleichen. In einem Beispiel wird ausgewählt, dass der Regler in einem linearen Modus arbeitet. In einem anderen Beispiel wird ausgewählt, das der Regler 305 in einem Schaltreglermodus arbeitet. Der Schaltreglermodus tendiert dazu, effizienter zu sein, da die Leistung schnell ein- und ausgeschaltet wird, um die erzeugte Spannung zu liefern. Der Arbeitszyklus von Aus im Verhältnis zu Ein bestimmt die Ausgangsspannung für die erzeugte Spannung. Der lineare Modus verwendet typischerweise ein Widerstandsnetzwerk zum Auswählen der Ausgangsspannung für die erzeugte Spannung und leitet eine nicht genutzte Leistung über Widerstände ab.
  • Der Regler 305 überwacht auch zugeführte und erzeugte Spannungen in Bezug auf Überspannungsbedingungen, Unterspannungsbedingungen, zugeführten Strom, erzeugten Strom und dergleichen. Der Regler 305 ist auch betriebsbereit, um Informationen über den aktuellen Betriebsmodus, Rücksetzbedingungen und dergleichen bereitzustellen.
  • Des Weiteren weist der Regler 305 einen Eingang oder mehrere Eingänge zum Setzen der Modi und Ausgangsbedingungen auf. In einem Beispiel kann ein Reglereingang benutzt werden, um die Ausgangsspannung durch ein Signal oder einen Widerstandswert zu setzen.
  • Der Prozessor 308 ist so gezeigt, dass er eine Versorgungsspannung VDD empfängt, aber es wird klar sein, dass andere Ausführungsformen einen oder mehrere Prozessoren aufweisen können, die Versorgungsspannungen VDD und/oder eine Leistung von Reglern, wie etwa V3 oder V1, verwenden. Der Prozessor 308 führt einen Programmcode und andere Arten von Code aus, um verschiedene Funktionen und Operationen der Vorrichtung 302 durchzuführen. Der Code für die Ausführung kann in einer Speichervorrichtung, wie etwa dem Flash-Speicher 326, gespeichert werden.
  • Die 3,3 V Schaltung 320 arbeitet im Allgemeinen bei 3,3 V und empfängt die Leistung V3, um zu arbeiten. Die 3,3 V Schaltung 320 kann logische Schaltungen, analoge Vorrichtungen, Prozessoren und/oder andere Arten von Schaltungen aufweisen, um verschiedene Funktionen für die Vorrichtung 302 durchzuführen. Die 3,3 V Schaltung 320 kann in einigen Beispielen Leistungsmessungen für den Leistungsmessungs-Profiler 314 bereitstellen. Einige Beispiele der 3,3 V Schaltung 320 umfassen schnelle E/A-Ports, Sensor-I/Fs (Sensor-Schnittstellen), etc.
  • Die 1,3 V Schaltung 322 arbeitet typischerweise bei 1,3 V und empfängt die Leistung V1, um zu arbeiten. Die 1,3 V Schaltung 322 kann eine Logik, analoge Vorrichtungen, Speichervorrichtungen, Prozessoren und/oder andere Arten von Schaltungen aufweisen. Des Weiteren kann die 1,3 V Schaltung eine Sonde oder andere Mechanismen aufweisen, um Leistungsmessungen für den Leistungsmessungs-Profiler 314 bereitzustellen. Einige Beispiele der 1,3 V Schaltung 322 weisen die Logik und die RAM-Teile eines typischen Mikrocontrollers in einer 130 nm-Technologie auf.
  • Die 5 V Schaltung 324 arbeitet im Allgemeinen bei etwa 5 V und empfängt eine Versorgungsleistung Vdd. Die 5 V Schaltung 324 kann logische Vorrichtungen, analoge Vorrichtungen, Speichervorrichtungen, Prozessoren und/oder andere Arten von Schaltungen aufweisen. Außerdem kann die 5 V Schaltung eine Sonde oder andere Mechanismen zum Beschaffen und Bereitstellen von Leistungsmessungen für den Leistungsmessungs-Profiler 314 aufweisen. Einige Beispiele der 5 V Schaltung 324 umfassen GPIO-(General Purpose IO/Universal-E/A)-Ports, Analog-Digital-Wandler (ADW), Sensor-I/Fs und dergleichen.
  • Der Flash-Speicher 326 ist so gezeigt, dass er mit der Versorgungsleistung V3 arbeitet. Der Flash-Speicher 326 kann intern Ladungspumpen enthalten, um Spannungen für das Programmieren, Löschen und das Lesen von Operationen bereitzustellen. Alternativ dazu kann der Flash-Speicher 326 eine Leistung von anderen Spannungsreglern wie etwa dem Regler 305 und die Versorgungsleistung VDD empfangen. Der Flash-Speicher 326 ist betriebsbereit, um Leistungsmessungen für den Leistungsmessungs-Profiler 314 bereitzustellen. Die Leistungsmessungen umfassen den Leistungsverbrauch für verschiedene Operationen, die das Programmieren, Lesen und Löschen einschließen, ohne darauf beschränkt zu sein. Die Leistungsmessungen können verwendet werden, um den Leistungsverbrauch durch den Flash-Speicher 326 zu mindern.
  • Der System-Profiler 312 erhält Software- oder Systemablaufverfolgungen einer Operation der Vorrichtung 302. Die Systemablaufverfolgungen umfassen im Allgemeinen das Protokollieren oder Aufzeichnen von Informationen über die Ausführung durch den Prozessor 308. Die Ablaufverfolgungen können Programmschleifen, Speicherzugriffe, Ausnahmen, Firmware-Updates und dergleichen verfolgen. Der System-Profiler 312 erzeugt Ablaufverfolgungsprofile auf der Grundlage der Systemablaufverfolgungen. Die Ablaufverfolgungsprofile umfassen Zeitsteuerungs- oder Zeitstempelungsinformationen zusammen mit den Ablaufverfolgungen.
  • Der Leistungs-Profiler 314 empfängt Leistungsmessungen und erzeugt Leistungsprofile. Die Leistungsmessungen umfassen leistungsbezogene Messungen für ein oder mehrere interne Bauteile, die den ersten Regler 304, den zweiten Regler 305, die Schaltungen 320, 322, 325, den Flash-Speicher 326 und den Prozessor 308 umfassen. Die Leistungsmessungen werden gesammelt und als die Leistungsprofile bereitgestellt. Die Leistungsprofile umfassen die Leistungsinformationen zusammen mit den Zeitsteuerungs- oder Zeitstempelungsinformationen, um eine Korrelation und Analyse mit den Systemablaufverfolgungen zu ermöglichen. In einer alternativen Ausführungsform erhält oder berechnet der Leistungs-Profiler 314 auch einen absoluten Leistungsverbrauchswert für die Vorrichtung 302. In einem Beispiel wird die absolute Leistung durch eine Sonde gemessen, die mit einer externen Leistungsversorgung gekoppelt ist, wie dies in 1 gezeigt ist.
  • Der System-Analysator 316 empfängt die Ablaufverfolgungsprofile und die Leistungsprofile jeweils von dem System-Profiler 312 und dem Leistungs-Profiler 314. Der System-Analysator 316 analysiert sowohl die Ablaufverfolgungsprofile als auch die Leistungsprofile, um den Leistungsverbrauch für Hardware-Bauteile, den Leistungsverbrauch für Software-Bauteile und -Operationen, die ungeeignete Verwendung von Leistungs- bzw. Stromsparmodi, Unterspannungsstörungen, Überspannungsstörungen, einen unerwarteten Leistungsverbrauch und dergleichen zu identifizieren. Aus diesen kann der System-Analysator 316 Leistungsreduktionsmodifikationen auf der Grundlage der Ablaufverfolgungsprofile und der Leistungsprofile identifizieren. Die Leistungsreduktionsmodifikationen umfassen den Bauteilaustausch, vorgeschlagene Neugestaltungen und Softwareprogrammmodifikationen, die zur Verwendung von weniger Leistung führen. Des Weiteren können, weil die Leistungsprofile Informationen über interne Bauteile an Stelle von einer externen Leistungsquelle enthalten, mehr Leistungsreduktionen als mit herkömmlichen Systemen identifiziert werden. So könnte eine Leistungsreduktionsmodifikation zum Beispiel das Setzen eines Bauteils auf einen Leistungs- bzw. Stromsparmodus während bestimmter Operationen oder Funktionen umfassen. Der System-Analysator 316 ist des Weiteren betriebsbereit, um Bauteilausfälle und dergleichen zu identifizieren.
  • 4 ist ein Diagramm, das einen eingebetteten Spannungsregler 402 in Übereinstimmung mit einer Ausführungsform der Erfindung veranschaulicht. Der Regler 402 kann in dem System 300 für die Regler 304 und 305 von 3 und im System 200 als die Regler 204 von 2 und mit alternativen Ausführungsformen der Erfindung verwendet werden. Der Regler 402 stellt zweifache Leistungsausgänge mit ersten und zweiten Spannungen bereit. Der erste Leistungsausgang 412 liegt bei 3,3 V und der zweite Leistungsausgang 414 liegt bei 1,3 V. Aber es wird klar sein, dass alternative Ausführungsformen variierte Anzahlen an Ausgängen und Spannungen umfassen können.
  • Der eingebettete Spannungsregler 402 weist einen ersten internen eingebetteten Spannungsregler 404, einen zweiten internen eingebetteten Spannungsregler 405, Leistungseingänge 418, Konfigurationsports 416, Leistungsmessungsports 420, einen Temperatursensor 422, den ersten Leistungsausgang 412 und den zweiten Leistungsausgang 414 auf.
  • Die Leistungseingänge 418 empfangen eine externe Versorgung VDD, eine Referenzspannung VREF und eine Erdverbindung VGND. Die externe Versorgung VDD liegt bei einer geeigneten Spannung, wie z. B. 3,3 V, und wird den internen Reglern 404 und 405 zugeführt. Der erste interne Regler 404 stellt eine Ausgangsleistung mit einer ersten Spannung bereit. In diesem Beispiel liegt die erste Spannung bei 3,3 V. Der zweite interne Regler 405 stellt eine Ausgangsleistung mit einer zweiten Spannung bereit. In diesem Beispiel liegt die zweite Spannung bei 1,3 V.
  • Der Analog-Digital-Wandler (ADW) 410 misst die ersten und zweiten Ausgangsleistungen 412 und 414 und stellt den Leistungsmessungsports 420 Messinformationen bereit. Der ADW 410 kann auch die Leistung messen, die an den Leistungseingängen 418 erhalten wird, und kann die Messinformationen den Leistungsmessungsports 420 bereitstellen. In einem Beispiel misst der ADW 410 unter Verwendung von 4 Bits synchron zu einer Pulsbreitenmodulation (PWM). Die Messungen des ADW 410 werden auch verwendet, um Arbeitszyklen zu ändern und um die ersten und zweiten Ausgangsleistungen 412 und 414 einzustellen oder zu regeln.
  • Die Konfigurationsports 416 werden verwendet, um verschiedene Betriebsmodi einzustellen und um den Regler 402 zu steuern. Die Konfigurationsports 416 können Leistungs- bzw. Stromsparmodi, Schaltregulationsmodi, lineare Modi, LDO-Modi und dergleichen setzen bzw. festlegen und freigeben bzw. deaktivieren. Die Konfigurationsports 416 können auch dazu verwendet werden, Leistungsmessungen entsprechend einer Temperatur zu kalibrieren, die über den Temperatursensor 422 erhalten wird. Des Weiteren können die Konfigurationsports 416 verwendet werden, um Ausgangsspannungen und/oder andere Parameter für die ersten und zweiten Ausgangsleistungen 412 und 414 festzulegen oder einzustellen.
  • Die Leistungsmessungsports 420 stellen Leistungsmessungen und leistungsbezogene Messungen bereit. Die Ports 420 stellen Leistungsmessungen für die ersten und zweiten Ausgänge 412 und 414, die Versorgungsleistung VDD, die Leistung an Eingängen 418 und dergleichen bereit. Diese Messungen können Spannungs-, Strom- und Leistungsmessungen umfassen. Sie können optional auch Unterspannungsangaben, Überspannungsangaben, Modusstatusangaben und dergleichen bereitstellen.
  • Der Regler 420 ist lediglich als ein nicht einschränkendes Beispiel für Regler bereitgestellt, die mit der vorliegenden Erfindung verwendet werden können. Es ist klar, dass andere Arten von Reglernverwendet werden können.
  • 5 veranschaulicht ein Ablaufdiagramm eines beispielhaften Verfahrens 500 zum Durchführen der Leistungs- und Ablaufverfolgungs-Profilierung. Obwohl das Verfahren 500 unten als eine Reihe von Vorgängen oder Ereignissen veranschaulicht und beschrieben ist, wird es klar sein, dass die veranschaulichte Anordnung solcher Vorgänge oder Ereignisse nicht in einem beschränkenden Sinne zu interpretieren ist. So können zum Beispiel einige Vorgänge in anderen Reihenfolgen und/oder zeitgleich mit anderen Vorgängen oder Ereignissen als den hier veranschaulichten und/oder beschriebenen stattfinden. Außerdem kann es sein, dass nicht alle veranschaulichten Vorgänge benötigt werden, um einen oder mehrere Aspekte oder Ausführungsformen der hier genannten Offenbarung zu implementieren. Auch kann einer oder können mehrere der hier dargestellten Vorgänge in einem oder mehreren separaten Vorgängen und/oder Phasen ausgeführt werden.
  • Das Verfahren 500 beginnt beim Block 502, an dem eine Ausgangsleistung eines Spannungsreglers gemessen wird, um Leistungsmessungen über den Lauf der Zeit zu erhalten. Der Spannungsregler kann in einem Beispiel ein eingebetteter Spannungsregler sein. Der Spannungsregler stellt eine geregelte Ausgangsleistung auf einem ausgewählten oder geplanten Spannungspegel bereit. In einem Beispiel liegt die Ausgangsleistung bei 3,3 V. In einem anderen Beispiel liegt die Ausgangsleistung bei 1,3 V. In noch einem anderen Beispiel stellt der Spannungsregler mehrere Ausgangsleistungen mit variierten Spannungen bereit. Der Spannungsregler empfängt eine Versorgungsleistung, die auch als VDD bezeichnet wird, und erzeugt die geregelte Ausgangsleistung über einen geeigneten Mechanismus, der lineare Operations-, Schaltregulierungs- und Low-Dropout-Modi umfasst, ohne darauf beschränkt zu sein.
  • Die Leistungsmessungen können kontinuierlich oder periodisch aufrecht erhalten werden. Des Weiteren können die Leistungsmessungen in Reaktion auf ein Ereignis oder eine Anforderung getätigt werden. Die Leistungsmessungen umfassen, ohne darauf beschränkt zu sein, leistungsbezogene Informationen. Die Leistungsmessungen können zum Beispiel Strom-, Spannungs- und ähnliche Messungen umfassen.
  • Systemablaufverfolgungen eines Prozessors oder Mikroprozessors werden beim Block 504 erhalten. Die Systemablaufverfolgungen erläutern oder protokollieren Programm- oder Codeausführungen durch einen oder mehrere Prozessoren. Die Ablaufverfolgungen können Registerwerte, Variable, Variablenwerte, Speicheroperationen und dergleichen umfassen.
  • Leistungsprofile werden entsprechend den Leistungsmessungen beim Block 506 erzeugt. Die Leistungsprofile können mehrere Leistungsmessungen und Korrelationen mit der Zeit umfassen. Es wird auch klar sein, dass die Leistungsmessungen Informationen von anderen Bauteilen als den Spannungsreglern umfassen können, wie etwa von Prozessoren, digitalen Schaltungen, analogen Schaltungen und dergleichen.
  • Ablaufverfolgungsprofile werden entsprechend den Systemablaufverfolgungen beim Block 508 erzeugt. Die Ablaufverfolgungsprofile umfassen eine oder mehrere Software- oder Systemablaufverfolgungen. Außerdem sind die Ablaufverfolgungsprofile zeitgestempelt oder korreliert, um die Analyse zu erleichtern.
  • Die Ablaufverfolgungsprofile und die Leistungsprofile werden beim Block 510 verglichen, um Leistungsreduktionsmodifikationen entsprechend den Leistungsprofilen und den Ablaufverfolgungsprofilen zu identifizieren. Die Leistungsreduktionsmodifikationen können Hardware- und/oder Software-Modifikationen umfassen. So kann zum Beispiel auf Hardware-Bauteile für eine Modifikation oder einen Austausch abgezielt werden. Als ein anderes Beispiel kann eine Software, die von der Vorrichtung ausgeführt wird, modifiziert werden, um den Leistungsverbrauch zu mindern.
  • Des Weiteren kann der beanspruchte Gegenstand der Erfindung als ein Verfahren, eine Vorrichtung oder ein Erzeugnis unter Verwendung von standardmäßigen Programmierungs- und/oder Konstruktionstechniken implementiert werden, um eine Software, eine Firmware, eine Hardware oder irgendeine Kombination davon herzustellen, um einen Computer so zu steuern, dass er den offenbarten Gegenstand implementiert (z. B. sind die Schaltungen oder Systeme, die in 1, 2, etc. gezeigt sind, nicht-einschränkende Beispiele von Schaltungen, die verwendet werden können, um das Verfahren 500 zu implementieren). Der Begriff „Erzeugnis”, wie er hier verwendet wird, soll ein Computerprogramm umfassen, auf das von einer computerlesbaren Vorrichtung, einem Träger oder von Medien zugegriffen werden kann. Natürlich werden die Fachleute auf dem Gebiet erkennen, dass viele Modifikationen an dieser Konfiguration vorgenommen werden können, ohne dass von dem Schutzumfang oder dem Erfindungsgedanken des beanspruchten Gegenstands abgewichen wird.

Claims (10)

  1. Leistungs- und Ablaufverfolgungs-Profilierungssystem mit: einer mikrocontrollerbasierten Vorrichtung, die einen ersten Spannungsregler, einen zweiten Spannungsregler, und eine chipinterne Ablaufverfolgungseinheit aufweist, wobei die mikrocontrollerbasierte Vorrichtung so konfiguriert ist, dass sie eine Versorgungsleistung empfängt, und die chipinterne Ablaufverfolgungseinheit so konfiguriert ist, dass sie Programmablaufverfolgungen bereitstellt, wobei der erste Spannungsregler eine erste Leistung an eine erste Schaltung liefert, und der zweite Spannungsregler eine sich von der ersten Leistung unterscheidende Leistung an eine zweite Schaltung liefert; einem Leistungs-Profiler, der so konfiguriert ist, dass er Leistungsinformationen von dem ersten Spannungsregler, dem zweiten Spannungsregler, der ersten Schaltung, und der zweiten Schaltung empfängt; und einem System-Profiler, der so konfiguriert ist, dass er die Programmablaufverfolgungen einer Operation der mikrocontrollerbasierten Vorrichtung empfängt.
  2. System nach Anspruch 1, das des Weiteren einen System-Analysator aufweist, der so konfiguriert ist, dass er Leistungsprofile von dem Leistungs-Profiler und Ablaufverfolgungsprofile von dem System-Profiler empfängt.
  3. System nach Anspruch 2, wobei der System-Analysator des Weiteren so konfiguriert ist, dass er Leistungsreduktionsmodifikationen auf der Grundlage der Leistungsprofile und der Ablaufverfolgungsprofile identifiziert.
  4. System nach Anspruch 3, wobei die Leistungsreduktionsmodifikationen das Ändern eines Codes, der von der Mikrocontroller-Vorrichtung verwendet wird, umfassen.
  5. System nach Anspruch 3, wobei die Leistungsreduktionsmodifikationen das Ändern eines Betriebs des ersten Spannungsreglers umfassen.
  6. System nach Anspruch 3, wobei die Leistungsreduktionsmodifikationen das Steigern der Verwendung eines Leistungs- bzw. Stromsparmodus des ersten Spannungsreglers umfassen.
  7. System nach Anspruch 1, wobei der erste Spannungsregler wenigstens einen Teil der Leistungsmessungen bereitstellt.
  8. System nach Anspruch 1, das des Weiteren eine logische Schaltung aufweist, die eine Ausgangsleistung des ersten Spannungsreglers empfängt.
  9. System nach Anspruch 1, bei welchem ein internes Steuersignal des ersten Spannungsreglers als Information über den aktuellen Leistungsverbrauch verwendet wird.
  10. System nach Anspruch 1, wobei die Mikrocontroller-Vorrichtung des Weiteren ein chipinternes Messbauteil zum Messen des Stroms des Eingangs oder der Ausgangsleistung des ersten Spannungsreglers aufweist.
DE102012022412.5A 2011-11-16 2012-11-15 Ablaufverfolgung eines eingebetteten Spannungsreglers Active DE102012022412B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/297,364 US9009517B2 (en) 2011-11-16 2011-11-16 Embedded voltage regulator trace
US13/297,364 2011-11-16

Publications (2)

Publication Number Publication Date
DE102012022412A1 DE102012022412A1 (de) 2013-05-23
DE102012022412B4 true DE102012022412B4 (de) 2014-11-27

Family

ID=48222125

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012022412.5A Active DE102012022412B4 (de) 2011-11-16 2012-11-15 Ablaufverfolgung eines eingebetteten Spannungsreglers

Country Status (3)

Country Link
US (1) US9009517B2 (de)
CN (1) CN103116382B (de)
DE (1) DE102012022412B4 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140229754A1 (en) * 2013-02-11 2014-08-14 Nvidia Corporation Power telemetry remote monitoring
DE102013214398A1 (de) * 2013-07-23 2015-01-29 Siemens Aktiengesellschaft Überwachung von redundanten Komponenten
US9449702B1 (en) * 2014-07-08 2016-09-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Power management
US10025363B2 (en) * 2014-12-12 2018-07-17 Intel Corporation Device agnostic power monitoring and profiling system
US20160299038A1 (en) * 2015-04-09 2016-10-13 Palo Alto Research Center Incorporated System and method for remotely inferring characteristics of thermostat-controlled appliances
US10078364B2 (en) * 2016-01-14 2018-09-18 Hcl Technologies Limited System and method for optimizing power consumption of one or more devices
US9898059B2 (en) * 2016-03-13 2018-02-20 Apple Inc. Dynamic control of power consumption based on memory device activity
US10732864B2 (en) * 2017-08-02 2020-08-04 Western Digital Technologies, Inc. Internal power analyzer for data storage device
US10963328B2 (en) * 2018-09-05 2021-03-30 Mikroelektronika D.O.O. WiFi programmer and debugger for microcontroller and method thereof
US20210311540A1 (en) * 2020-04-06 2021-10-07 Silicon Laboratories Inc. Power-saving power architecture for integrated circuits such as microcontrollers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327784A1 (en) * 2008-06-29 2009-12-31 Microsoft Corporation Energy measurement techniques for computing systems

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4553082A (en) * 1984-05-25 1985-11-12 Hughes Aircraft Company Transformerless drive circuit for field-effect transistors
DE3534979A1 (de) * 1985-07-25 1987-01-29 Licentia Gmbh Netzgeraet
US4792899A (en) * 1987-01-02 1988-12-20 Motorola, Inc. Microprocessor support integrated circuit
US4734771A (en) * 1987-04-24 1988-03-29 Rca Corporation Start-up control circuitry for a television apparatus
US5247581A (en) * 1991-09-27 1993-09-21 Exar Corporation Class-d bicmos hearing aid output amplifier
US5557557A (en) * 1994-10-04 1996-09-17 Texas Instruments Incorporated Processor power profiler
US5721485A (en) * 1996-01-04 1998-02-24 Ibm Corporation High performance on-chip voltage regulator designs
US5812860A (en) * 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
US5978902A (en) * 1997-04-08 1999-11-02 Advanced Micro Devices, Inc. Debug interface including operating system access of a serial/parallel debug port
US5864225A (en) * 1997-06-04 1999-01-26 Fairchild Semiconductor Corporation Dual adjustable voltage regulators
JP3508489B2 (ja) * 1997-07-29 2004-03-22 安藤電気株式会社 プログラマブル比較器のキャリブレーション装置
US6191644B1 (en) * 1998-12-10 2001-02-20 Texas Instruments Incorporated Startup circuit for bandgap reference circuit
US6801759B1 (en) * 2000-09-25 2004-10-05 Qualcomm, Incorporated Method and apparatus for power control in a wireless communication system
US7290246B2 (en) * 2002-04-04 2007-10-30 Texas Instruments Incorporated Power profiling system and method for correlating runtime information
US6940233B2 (en) * 2002-10-03 2005-09-06 Analog Microelectronics, Inc. Method and system of driving a CCFL
US7877235B2 (en) 2003-01-31 2011-01-25 Verisae, Inc. Method and system for tracking and managing various operating parameters of enterprise assets
US7171159B2 (en) * 2003-06-24 2007-01-30 Northrop Grumman Corporation Transmission power control in a satellite communication system
US20040268159A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation Power profiling
JP3711559B2 (ja) * 2003-08-08 2005-11-02 オムロン株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP4469576B2 (ja) * 2003-08-19 2010-05-26 株式会社東芝 トレースデータ処理装置、トレースデータ処理方法およびトレースデータ処理プログラム
US7064529B2 (en) * 2003-09-17 2006-06-20 Atmel Corporation Dual stage voltage regulation circuit
US7105950B2 (en) * 2003-09-26 2006-09-12 Hewlett-Packard Development Company, L.P. Power management in a system having a plurality of power supplies
US7506216B2 (en) * 2004-04-21 2009-03-17 International Business Machines Corporation System and method of workload-dependent reliability projection and monitoring for microprocessor chips and systems
US7802241B2 (en) 2005-12-12 2010-09-21 Freescale Semiconductor, Inc. Method for estimating processor energy usage
US7549069B2 (en) 2006-03-15 2009-06-16 Fujitsu Limited Estimating software power consumption
US7555666B2 (en) * 2006-05-04 2009-06-30 Dell Products L.P. Power profiling application for managing power allocation in an information handling system
US9431828B2 (en) * 2006-11-27 2016-08-30 Xslent Energy Technologies Multi-source, multi-load systems with a power extractor
US7825642B1 (en) * 2007-05-09 2010-11-02 Zilker Labs, Inc. Control system optimization via independent parameter adjustment
US7886150B2 (en) * 2007-05-11 2011-02-08 Mips Technologies, Inc. System debug and trace system and method, and applications thereof
US8258872B1 (en) * 2007-06-11 2012-09-04 Sonos, Inc. Multi-tier power supply for audio amplifiers
US7847436B2 (en) * 2007-10-17 2010-12-07 Edwin Arthur Blackmond Modular power supply
US8964779B2 (en) * 2007-11-30 2015-02-24 Infineon Technologies Ag Device and method for electronic controlling
US7692912B2 (en) * 2008-04-03 2010-04-06 Dell Products L.P. System and method for information handling system display backlight protection and monitoring
CN101593015A (zh) * 2008-05-29 2009-12-02 华硕科技(苏州)有限公司 管理功率消耗的计算机系统及其相关方法
US20120084028A1 (en) * 2010-09-30 2012-04-05 Ibm Corporation Framework and Methodology for a Real-Time Fine-Grained Power Profiling with Integrated Modeling
CN101965039B (zh) * 2010-10-17 2013-02-06 中南大学 无线传感器网络节点超低功耗设计方法
US9043002B2 (en) * 2011-01-31 2015-05-26 Myoonet, Inc. Adaptive control of electrical devices to achieve desired power use characteristics

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327784A1 (en) * 2008-06-29 2009-12-31 Microsoft Corporation Energy measurement techniques for computing systems

Also Published As

Publication number Publication date
US20130124901A1 (en) 2013-05-16
US9009517B2 (en) 2015-04-14
CN103116382A (zh) 2013-05-22
CN103116382B (zh) 2017-03-01
DE102012022412A1 (de) 2013-05-23

Similar Documents

Publication Publication Date Title
DE102012022412B4 (de) Ablaufverfolgung eines eingebetteten Spannungsreglers
DE69233248T2 (de) Programmierbarer Elektrizitätszähler
EP3126181B1 (de) Verfahren zur überprüfung einer verbindung zwischen einem niedrigspannungsnetz und einer batterie und kraftfahrzeug
DE112012005453B4 (de) Controller und Steuerverfahren für elektronischen Schalter, elektronischer Schalter und elektronisches Gerät
EP2526431B1 (de) Verfahren und vorrichtung zur überwachung eines frequenzsignals
DE112008004030B4 (de) Leistungsverwaltung in einem System mit einem Prozessor und einem Spannungswandler, der eine Leistungsspannung zu dem Prozessor liefert
DE10333817A1 (de) Emulationsschnittstellensystem
DE102011005270A1 (de) Verfahren und Vorrichtung zum Kalibrieren von Leistungswandlern
DE102015211561A1 (de) Leistungsverfolgungsanschluss zum Verfolgen von Zuständen von Leistungsdomänen
DE112013006005T5 (de) Verfahren und Vorrichtung zum Verwalten der Datenverarbeitungssystemleistung
DE102019112166A1 (de) Verfahren und system zum überwachen einer maschinengesundheit zum verbessern einer auswirkung der maschinenzykluszeit
EP4128539A1 (de) Verfahren zur zeitlich synchronisierten eingabe und/oder ausgabe von signalen mit wählbarer abtastrate
DE102013000857A1 (de) Kompakte Funktionsablaufprotokollierung
DE112017005778T5 (de) Mikrocontroller-energie-profiler
DE102017221657A1 (de) Verfahren zum Durchführen eines Selbsttests einer elektrischen Wandlerschaltung sowie Wandlerschaltung und Fahrzeugleuchte
DE102011086991A1 (de) Mikrocomputer
DE102019101910B4 (de) Wärmeversatzkorrekturvorrichtung
DE102015102854B4 (de) Selbsteinstellung einer Versorgung für Systeme und Verfahren mit einer Stromschnittstelle
DE102009029073B4 (de) Verfahren zur Durchführung eines Selbsttests für eine mikromechanische Sensorvorrichtung und entsprechende mikromechanische Sensorvorrichtung
DE102013114884A1 (de) Einrichtung zum Testen einer Grafikkarte
DE112014003069T5 (de) Funktionseinheit, Analogeingabeeinheit und programmierbares Steuerungssystem
DE102009031001B4 (de) System-Profiling
DE60215934T2 (de) Verfahren und vorrichtung zum sammeln von warteschlangenleistungsdaten
DE10235461A1 (de) Burn-in-Vorrichtung mit Durchschnittsspannungs-Berechnungsschaltung
DE102011110366A1 (de) Verfahren, elektronische Vorrichtung und Austesteinheit zum Schätzen eines Leistungsverbrauchs einer Anwendung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R082 Change of representative