-
Die
vorliegende Erfindung betrifft allgemein ein elektronisches Gerät mit einer
CPU. Konkreter betrifft die vorliegende Erfindung einen Interrupt-Steuerungsmechanismus
für ein
derartiges Gerät
und ein entsprechendes Verfahren.
-
Anwendungen
bzw. Funktionalitäten
werden häufig
durch zentrale Prozessoren (CPUs) wie Mikrocontroller oder Mikroprozessoren
gesteuert. Viele Anwendungen erfordern die Ausführung einer bestimmten Funktionalität oder Steueraufgabe
lediglich für
eine kurze Zeit. Wenn die CPU nicht verwendet wird, schaltet sie
in einen Schlafstrombetrieb bzw. eine Inaktivitätsbetriebsart, wobei der Stromverbrauch
der CPU auf ein Minimum reduziert wird. Die CPU kann dann durch
ein Interrupt-Signal aufgeweckt werden, um eine Funktionsstufe,
die in funktioneller Hinsicht mit dem Interrupt-Signal verbunden ist,
zu steuern oder dieser zu dienen. Die Verbindung mit dem Interrupt-Signal
bedeutet, dass die Funktionsstufe das Interrupt-Signal selbst erzeugen
kann, oder sie kann zur Durchführung
der notwendigen Schritte verwendet werden, die benötigt werden, wenn
die CPU ein Interrupt-Signal empfängt. Allgemein betrifft ein
Interrupt-Signal
ein bestimmtes Ereignis, zum Beispiel, dass eine bestimmte Zeitdauer verstrichen
ist oder dass an einer Schnittstelle Daten angekommen sind oder
diverse andere Ereignisse. Somit werden typischerweise viele verschiedene
Interrupt-Signale für
auf Mikrocontrollern oder Mikroprozessoren basierende Anwendungen
verwendet. Die Interrupt-Signale (häufig auch lediglich „Interrupts" genannt) werden
durch eine Interrupt-Steuereinheit weitergeleitet, die eine Mehrzahl
von Interrupt-Signalen für
alle möglichen
Ereignisse verwaltet und organisiert, bevor sie an die CPU übertragen werden.
Sobald die CPU den Interrupt empfängt, beginnt die CPU mit der
Ausführung
eines bestimmten Unterprogramms (Softwareprogrammcode), dessen Startadresse
durch einen Adresszeiger oder eine Verweistabelle mit dem Interrupt-Signal
gekoppelt ist. Einige dieser Unterprogramme erfordern die Ausführung einer
bestimmten Funktionalität
durch Funktionsblöcke.
Nach einem empfangenen Interrupt-Signal kann es zum Beispiel sein,
dass die CPU einen Digitalwert von einem Analog-Digital-Wandler einlesen muss. Bevor
dies geschehen kann, muss der Analog-Digital-Wandler (ADC) eingeschaltet
werden. Dies kann das Einschalten mehrerer Referenzstufen oder das
Einschwingen anderer verwandter Stufen erfordern, bevor der ADC
verwendet werden kann. Des Weiteren kann es auch sein, dass der
ADC einige Zeit (Umwandlungszeit) benötigt, bevor ein digitales Ausgangssignal
bereitgestellt wird. Während
der gesamten für
das Einschwingen des ADC benötigten Zeit
ist die CPU jedoch aktiv und verbraucht Strom. Somit tragen sowohl
der zum Einschalten des ADC verbrauchte Strom als auch der von der
CPU verbrauchte Strom zu dem Gesamtstromverbrauch bei. In Lösungen nach
dem Stand der Technik muss die CPU jedoch aktiviert werden, um das
Interrupt-Signal zu qualifizieren und den ADC einzuschalten. Folglich kann
die CPU nicht ausgeschaltet werden. Einige Lösungen nach dem Stand der Technik
versuchen, die Einschwingzeit der Funktionsstufe zu minimieren,
indem das Einschwingverhalten beschleunigt wird, was jedoch ebenso
den Stromverbrauch erhöht.
-
Es
ist ein Ziel der vorliegenden Erfindung, ein elektronisches Gerät mit einer
CPU mit reduziertem Stromverbrauch bereitzustellen.
-
Dementsprechend
stellt die vorliegende Erfindung ein elektronisches Gerät bereit,
das eine CPU umfasst, die so konfiguriert ist, dass sie als Reaktion
auf ein von einer Interrupt-Erzeugungsstufe empfangenes Interrupt-Signal
von einer ersten Betriebsart in eine zweite Betriebsart umgeschaltet
werden kann. Ein Interrupt-Relais ist zwischen die Interrupt-Erzeugungsstufe
und die CPU gekoppelt, und eine Funktionsstufe ist mit dem Interrupt-Relais
gekoppelt und in funktioneller Hinsicht mit dem Interrupt-Signal
verbunden, damit sie während
der zweiten Betriebsart der CPU verwendet werden kann. Das Interrupt-Relais
ist so konfiguriert, dass es das empfangene Interrupt-Signal erst
nach einer Zeit, die die Funktionsstufe zum Einschwingen benötigt, an die
CPU weiterleitet. In dem vorliegenden Kontext bedeutet Einschwingen,
dass die Funktionsstufe eine bestimmte Funktionalität bereitstellt
oder in einen bestimmten internen Aktivierungszustand schaltet.
Allgemein verbraucht die CPU in der ersten Stufe (z. B. einem Schlafstrombetrieb
oder einer inaktiven Betriebsart) weniger Strom als in der zweiten
Betriebsart (z. B. einer aktiven Betriebsart). Das Interrupt-Signal
wird nicht sofort an die Interrupt-Steuereinheit geleitet, d. h.
der Interrupt wird logisch qualifiziert oder bewertet, bevor sie
weitergeleitet wird. Der Interrupt wird erst dann durch das Interrupt-Relais
an die CPU geleitet und wird gültig,
nachdem die Funktionsstufe verfügbar
geworden ist (d. h. die Funktionsstufe wird aktiviert, schwingt
ein oder schaltet in einen bestimmten Zustand). Auf diese Weise
muss die CPU keinen Strom verbrauchen, während sie darauf wartet, dass
die Funktionsstufe verfügbar
wird, wodurch der durch das Gerät
verbrauchte Strom reduziert wird.
-
Vorzugsweise
ist das Interrupt-Relais so eingerichtet, dass es nach Empfangen
des Interrupt-Signals ein Aufwecksignal an die Funktionsstufe sendet,
was bedeutet, dass nicht die CPU selbst aufgeweckt werden muss,
um die Funktionsstufe aufzuwecken. Die Funktionsstufe kann so eingerichtet
sein, dass sie ein Freigabesignal an das Interrupt-Relais sendet,
um anzuzeigen, dass sich die Funktionsstufe eingeschwungen hat (d.
h. verfügbar
ist), so dass das Interrupt-Relais so eingerichtet ist, dass es
das empfangene Interrupt-Signal erst nach Empfangen des Auslösesignals
weiterleitet. Folglich wird die CPU erst dann aufgeweckt, nachdem
die Funktionsstufe eine Anzeige bereitgestellt hat, dass sie sich
eingeschwungen hat, und während
der Einschwingzeit der Funktionsstufe kann Strom gespart werden.
Die Funktionsstufe kann ein analoges oder digitales Modul sein,
z. B. ein Referenzspannungsgenerator, ein Analog-Digital-Wandler
oder eine digitale Schnittstellensteuereinheit. Dieses Gerät kann für jede beliebige
komplexe analoge oder digitale Funktionalität verwendet werden, z. B. Datenübertragungsschnittstellen,
die regelmäßig Informationen
abrufen oder regelmäßig Daten
senden. In diesem Kontext wird 'regelmäßig' dazu verwendet,
eine bestimmte Verwendungsmöglichkeit
zu beschreiben, aber das Gerät kann
ebenso dort verwendet werden, wo einzelne oder mehrere (regelmäßige oder
unregelmäßige) Anforderungen
einer Funktionalität
erforderlich sind.
-
Die
vorliegende Erfindung stellt ebenfalls ein Verfahren zur Verwaltung
eines zur Umschaltung einer CPU von einer ersten Betriebsart in
eine zweite Betriebsart verwendeten Interrupt-Signals bereit. Das
Verfahren umfasst das Empfangen eines Interrupt-Signals bevor das
Interrupt-Signal an der CPU ankommt, das Aufwecken einer Funktionsstufe
als Reaktion auf das empfangene Interrupt-Signal, das Warten bis
sich die Funktionsstufe in einem vorbestimmten Zustand eingeschwungen
hat, und die Weiterleitung des Interrupt an die CPU nach dem Schritt des
Abwartens zur Umschaltung der CPU von der ersten Betriebsart in
die zweite Betriebsart. Wenn das Interrupt-Signal empfangen wird,
wird es nicht an die CPU geleitet, sondern stattdessen dazu verwendet,
die Funktionsstufe aufzuwecken. Nach einer Zeit, die die Funktionsstufe
für das
Einschwingen benötigt,
wird das Interrupt-Signal an die CPU geleitet. Somit wird die CPU
erst dann von der ersten Betriebsart in die zweite Betriebsart umgeschaltet, nachdem
sich die Funktionsstufe in ihrem vorbestimmten Zustand eingeschwungen
hat, was bedeutet, dass der Stromverbrauch bei Verwendung des Verfahrens
gemäß der vorliegenden
Erfindung im Vergleich zu Verfahren nach dem Stand der Technik erheblich
reduziert wird.
-
Das
Verfahren gemäß der vorliegenden
Erfindung kann für
einzelne oder mehrere Anforderungen einer Funktionalität verwendet
werden. Wenn zum Beispiel nur eine einzige Anforderung gestellt wird,
findet der Schritt der Erzeugung des Interrupt-Signals lediglich
einmal als Einzelereignis statt. Wenn die Funktionalität jedoch
mehrmals angefordert wird, wird das Interrupt-Signal mehrmals erzeugt.
Wenn das Signal mehrmals erzeugt wird, kann das Interrupt-Signal entweder periodisch
oder unregelmäßig erzeugt
werden. Es können
jedoch alle oder einige der Interrupt-Signale von der hierin beschriebenen
Interrupt-Relaisstufe bearbeitet werden.
-
Weitere
Vorteile und Merkmale der Erfindung ergeben sich aus der untenstehenden
Beschreibung einer bevorzugten Ausführungsform unter Bezugnahme
auf die beigefügten
Zeichnungen. Es zeigen:
-
1 ein
vereinfachtes schematisches Schaubild eines elektronischen Geräts gemäß der Erfindung;
-
2 eine
schematische Darstellung der EIN- und AUS-Zustände der CPU und der Funktionsstufe
in dem Gerät
gemäß einem
Gerät nach
dem Stand der Technik sowie des durch das Gerät gemäß der Erfindung verbrauchten
Stroms im Zeitverlauf; und
-
3 eine
schematische Darstellung der EIN- und AUS-Zustände der CPU und der Funktionsstufe
in dem Gerät
gemäß der Erfindung
sowie des durch das Gerät
gemäß der Erfindung
verbrauchten Stroms im Zeitverlauf.
-
4 zeigt
eine schematische Darstellung für
eine leicht unterschiedliche Konfiguration als die in 3 gezeigte.
-
1 zeigt
ein vereinfachtes schematisches Schaubild eines elektronischen Geräts gemäß der Erfindung.
Eine CPU 1 ist mit einer Interrupt-Steuereinheit 2 gekoppelt,
und kann so betrieben werden, dass sie von ihr ein Eingangssignal
empfängt.
Die Interrupt-Steuereinheit 2 ist mit einer Interrupt-Relaisstufe 3 gekoppelt,
und die Interrupt-Relaisstufe 3 ist ebenfalls mit einer
Funktionsstufe 4 gekoppelt. Ein Interrupt-Generator 5 kann
so betrieben werden, dass er ein Interrupt-Signal INT zur Eingabe
an die Interrupt-Relaisstufe 3, mit der er gekoppelt ist,
erzeugt. Der Interrupt-Generator 5 steht stellvertretend für alle beliebigen
Geräte,
Stufen oder Blöcke,
die ein Interrupt-Signal als Reaktion auf ein Ereignis erzeugen
können.
Die Funktionsstufe 4 ist in funktioneller Hinsicht mit
dem Interrupt-Signal INT verbunden, so dass sie während einer
aktiven Betriebsart der CPU 1 verwendet wird. Die Funktionsstufe 4 kann
eine analoge Spannungsreferenz, ein analoges Gerät, ein komplexes Digitalsystem
wie ein Datenübertragungssystem
oder ein weiterer Steuerkreis sein. Die CPU 1 kann ein
Standard-Mikrocontroller oder ein Mikroprozessor sein.
-
Wenn
der Interrupt-Generator 5 ein Interrupt-Signal INT erzeugt,
wird das Interrupt-Signal INT der Interrupt-Relaisstufe 3 zugeführt. Die
Interrupt-Relaisstufe 3 sendet
dann nach Empfangen des Interrupt-Signals ein Aufwecksignal WU an
die Funktionsstufe 4. Das Aufwecksignal WU schaltet die Funktionsstufe 4 ein,
aber die Funktionsstufe 4 schwingt sich nicht sofort in
ihrem vorbestimmten Funktionszustand ein, und es dauert eine Weile
bis zum Einschwingen, was als Referenzeinschwingzeit tref bekannt
ist. Nach der Zeit tref, der Referenzeinschwingzeit
der Funktionsstufe 4, stabilisiert sich die Funktionsstufe
in ihrem vorbestimmten Funktionszustand und sendet ein Auslösesignal
RL an das Interrupt-Relais 3, das anzeigt, dass sich die
Funktionsstufe 4 eingeschwungen hat. Das Interrupt-Relais 3 leitet
dann das Interrupt-Signal INT als Reaktion auf das Auslösesignal
RL an die Interrupt-Steuereinheit 2,
und die Interrupt-Steuereinheit 2 leitet das Interrupt-Signal
INT an die CPU1. Hierdurch wird die CPU 1 geschaltet, so
dass sie von einer inaktiven Betriebsart (oder einem „Schlafstrom"-Betrieb) in eine aktive
Betriebsart (oder eine „Wach"-Betriebsart) „aufgeweckt" wird. Das Interrupt-Signal
kann jedoch auch zur Umschaltung der CPU 1 zwischen zwei
beliebigen definierten Betriebsarten (d. h. einer ersten und einer
zweiten Betriebsart) verwendet werden, oder es kann sie dazu bringen,
zu einem bestimmten Punkt in einem Programm oder Unterprogramm zu „springen". So lange die CPU 1 in
der zweiten Betriebsart mehr Strom benötigt als in der ersten Betriebsart
wird mit der vorliegenden Erfindung eine Stromeinsparung erzielt.
Die Funktionsstufe 4 wird dann für eine Zeit tconv während der
aktiven Betriebsart der CPU 1 verwendet. Wenn die Funktionalität der Funktionsstufe 4 nach
der Zeitconv nicht mehr benötigt wird,
wird die Funktionsstufe 4 ausgeschaltet oder deaktiviert,
und die CPU 1 schaltet wieder in die inaktive Betriebsart.
Dieser Vorgang wird so oft wiederholt wie die Funktionalität benötigt wird,
entweder periodisch oder zufällig.
-
3 zeigt
schematisch (von oben nach unten) die relativen „EIN"- und „AUS"-Zustände der Funktionsstufe 4,
der CPU 1 und des Interrupt-Generators 5 im Zeitverlauf
sowie den Gesamtstromverbrauch des Geräts gemäß der vorliegenden Erfindung.
Es ist ersichtlich, dass der Interrupt-Generator 5 ein
beinahe unverzögertes
Signal erzeugt, dessen abfallende Flanke die Aktivierung der Funktionsstufe 4 auslöst, indem
bewirkt wird, dass die Interrupt-Relaisstufe 3 das Aufwecksignal
WU sendet, um die Funktionsstufe 4 aufzuwecken. Die Funktionsstufe 4 benötigt dann
nach der Aktivierung eine Zeit tref zum Einschwingen,
wonach sie das Interrupt-Signal zu der CPU 4 durchlässt, die
aktiviert wird und in die aktive Betriebsart schaltet, in der sie
den A/D-Wandler 3 so steuert, dass er die Analog-Digital-Wandlung während der
Zeit tconv durchführt.
-
Am
Ende der Zeit tconv, beendet die Funktionsstufe 4 die
Durchführung
ihrer Funktion, und zu derselben Zeit schaltet die CPU 1 wieder
in die inaktive Betriebsart um. Es ist ersichtlich, dass das System
erst ab dem Zeitpunkt Strom verbraucht, an dem die abfallende Flanke
des Interrupt-Signals auftritt; d. h. zu Beginn von tref.
Während
der Referenzeinschwingzeit tref, während der
die Funktionsstufe 4 sich noch immer einschwingt, verbraucht
lediglich die Funktionsstufe 4 Strom. Da die CPU 1 während tref in Schlafstrombetrieb ist, verbraucht
sie während
dieser Zeit gar keinen Strom. Die CPU 1 beginnt erst nach tref damit, während der Zeit tconv Strom
zu verbrauchen.
-
Somit
wird der Gesamtstromverbrauch des Systems in dem Gerät gemäß der vorliegenden
Erfindung drastisch reduziert. Tatsächlich wird er im Vergleich
zu dem von einem Gerät
nach dem Stand der Technik verbrauchten Strom mehr als halbiert,
das während
der Zeit tref sowie während der Zeit tconv ebenfalls
die maximale Strommenge verbrauchen würde, da die CPU zur selben
Zeit eingeschaltet wird, zu der die Funktionsstufe aktiviert wird,
und während der
Einschwingzeit tref der Funktionsstufe aktiv
bleibt. Dies ist schematisch in 2 gezeigt.
Der von der CPU in einem Gerät
nach dem Stand der Technik während
tref verbrauchte Strom wird genau genommen
verschwendet, da die Funktionsstufe während dieser Zeit, in der sie
sich noch einschwingt, keine nützliche
Funktion durchführen
kann, aber die CPU während
dieser Zeit noch immer Strom verbraucht, obwohl sie zu diesem Zeitpunkt
nicht wach sein müsste.
Des Weiteren wird das CPU-Rauschen in dem Gerät gemäß der vorliegenden Erfindung
im Vergleich zu Geräten
nach dem Stand der Technik erheblich reduziert, da die CPU länger in
einer inaktiven Betriebsart ist. Dies ergibt sich daraus, dass während der
Zeit, in der die CPU inaktiv ist, kein Schalten der internen Logik
durchgeführt
wird. Folglich treten an den Stromversorgungsschienen keine Stromspitzen
auf, und das Substratrauschen für
ein integriertes Gerät
wird minimiert.
-
4 zeigt
eine schematische Darstellung, die ähnlich wie 3 ist
und einen weiteren Aspekt der Erfindung veranschaulicht. In dieser
Konfiguration wird die CPU erst dann aktiviert, nachdem die Umwandlung
des ADC abgeschlossen wurde. Ein besonderer Vorteil der in 4 gezeigten
Taktung besteht darin, dass der maximale Stromverbrauch des Systems
(Spitzenstromverbrauch) geringer als der für die durch 3 dargestellte
Ausführungsform
ist. Folglich wird das Rauschen weiter verringert, und das maximale
Stromvermögen
der Stromversorgung ist niedriger.
-
Obwohl
die Erfindung obenstehend unter Bezugnahme auf eine bestimmte Ausführungsform beschrieben
wurde, ist diese nicht auf diese Ausführungsform beschränkt, und
dem Fachmann fallen zweifellos weitere Alternativen ein, die innerhalb
des beanspruchten Schutzumfangs der Erfindung liegen.