DE602005006422T2 - Strom-management - Google Patents

Strom-management Download PDF

Info

Publication number
DE602005006422T2
DE602005006422T2 DE602005006422T DE602005006422T DE602005006422T2 DE 602005006422 T2 DE602005006422 T2 DE 602005006422T2 DE 602005006422 T DE602005006422 T DE 602005006422T DE 602005006422 T DE602005006422 T DE 602005006422T DE 602005006422 T2 DE602005006422 T2 DE 602005006422T2
Authority
DE
Germany
Prior art keywords
processor
simd
frequency
processor architecture
architecture
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
DE602005006422T
Other languages
English (en)
Other versions
DE602005006422D1 (de
Inventor
Anteneh A. c/o Philips Redhill ABBO
V. c/o Philips Redhill CHOUDHARY
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of DE602005006422D1 publication Critical patent/DE602005006422D1/de
Application granted granted Critical
Publication of DE602005006422T2 publication Critical patent/DE602005006422T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • 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
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • 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
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

  • Die vorliegende Erfindung bezieht sich auf das Gebiet der elektronischen Schaltungen und insbesondere auf ein Verfahren und Gerät zur Verwaltung des Energieverbrauchs in einer elektronischen Schaltung.
  • Da bei einem tragbaren System der Energieverbrauch entscheidend für die Batterielebensdauer ist und diese ein ausschlaggebendes Leistungsmaß für den Erfolg eines jeden Produkts auf dem Verbrauchermarkt ist, ist der energieeffiziente Systementwurf von tragbaren, batteriebetriebenen elektronischen Vorrichtungen immer wichtiger geworden. Das Energiemanagement wird daher zu einem unverzichtbaren Bestandteil der Systeminfrastruktur.
  • Das dynamische Energiemanagement (engl. Dynamic Power Management, DPM) ist eine Entwurfsmethode, die eine dynamische Konfiguration oder Neukonfiguration eines Systems hinsichtlich einer Energie- oder Stromeffizienz-Berechnung ermöglicht. In der Abhandlung „A Survey of Design Techniques for System-Level Dynamic Power Management" von L. Benini, A. Bogliolo und G. de Micheli, erschienen in IEEE Transactions an VLSI Systems, Band 8, Nr. 3, Juni 2000, werden verschiedene DPM-Verfahren erörtert. Diese Verfahren umfassen das Ausschalten oder „Verlangsamen" von im Leerlauf befindlichen Teilen des Systems und das Schaffen eines dynamischen Ausgleichs zwischen Leistungsvermögen des Systems und Energieeffizienz. DPM-Verfahren bieten Möglichkeiten zum Optimieren und Steuern der Systemleistung durch Abstimmen des Leistungsvermögens der einzelnen Systemkomponenten auf die unterschiedliche Auslastung.
  • Bei Systemen mit dynamisch variierender Auslastung, das heißt, bei Systemen, die nicht ständig eine Spitzen- oder Maximalleistung erbringen müssen, können Spannung und Taktfrequenz so gesteuert werden, dass der Energieverbrauch des Systems optimiert wird. Diese Vorgehensweise ist als dynamische Spannungs- und Frequenzskalierung (engl. Dynamic voltage and frequency scaling, DVFS) bekannt.
  • In der Literatur sind zahlreiche Verfahren für derartige Systeme vorgeschlagen worden, wobei die meisten Spannung und Frequenz in Abhängigkeit von den Anforderungen an das Leistungsvermögen skalieren. In "Dynamic Voltage Scaling an MPEG De coding" von D. Son, C. Yu und H. Kim wird ein anwendungsbasierendes Verfahren vorgeschlagen, bei dem Spannung und Frequenz in Abhängigkeit von der Decodierleistung der Anwendung angepasst werden.
  • In dem Dokument US 2004/0098631 werden ein System und ein Verfahren zur Steuerung der Frequenz eines mehreren Verarbeitungselementen gemeinsamen Taktes beschrieben. Die Nutzung des gemeinsamen Taktes durch jedes der Vielzahl von Verarbeitungselementen wird gemessen, und der gemeinsame Takt wird so gesteuert, dass seine Frequenz als Funktion der gemessenen Nutzung des Gemeinschaftstakts durch die Vielzahl von Verarbeitungselementen bestimmt wird.
  • Wenn das System zur Verarbeitung eines Datenstroms mit weitgehender Parallelität genutzt wird, zum Beispiel eines Stroms von Bilddaten, wird ein auf einer SIMD-Anwendung (Single-Instruction Multiple-Data) Anwendung basierendes Verfahren vorgeschlagen, bei dem Spannung und Frequenz in Abhängigkeit von der Decodierleistung der Anwendung angepasst werden.
  • Wenn das System zur Verarbeitung eines Datenstroms mit weitgehender Parallelität genutzt wird, zum Beispiel eines Stroms von Bilddaten, können SIMD-Prozessoren eingesetzt werden. Der SIMD-Prozessor nutzt die Parallelität im Datenstrom, um eine niedrigere Betriebsfrequenz und Speicherlokalisierung zu ermöglichen, die in einer geringeren Verlustleistung im Vergleich zu einem SISD-Prozessor (Single-Instruction Single-Data) zum Ausdruck kommt, der den gleichen Datenstrom verarbeitet.
  • Zusammenfassung der Erfindung
  • Obwohl SIMD-Prozessoren weniger Energie benötigen als SISD-Prozessoren, sind weiteren Energieeinsparungen wünschenswert.
  • Die vorliegende Erfindung hat daher zur Aufgabe, ein Energiemanagement-Verfahren für SIMD-Prozessorarchitekturen zu schaffen, das den Energieverbrauch weiter reduziert.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine SIMD-Prozessorarchitektur zur Verarbeitung eines Stroms von Datenvektoren geschaffen, wobei die Architektur Folgendes umfasst: ein Prozessorarray mit einer Vielzahl von Prozessoren, wobei jeder Prozessor dafür eingerichtet ist, ein Datenelement in jedem Vektor zu verarbeiten, wobei der Betrieb des Prozessorarrays durch ein lokales Taktsignal mit einer ersten Frequenz gesteuert wird; einen Steuerungsprozessor, der dafür eingerichtet ist, den Betrieb der SIMD-Prozessorarchitektur zu steuern und Synchronisierungssignale zu erzeugen, um den Betrieb des Prozessorarrays mit dem Strom von Datenvektoren zu synchronisieren, wobei der Betrieb des Steuerungsprozessors durch ein lokales Taktsignal mit einer zweiten Frequenz gesteuert wird; und Energiemanagement-Mittel zum Anpassen der Frequenzen der lokalen Taktsignale in Reaktion auf die durch den Steuerungsprozessor erzeugten Synchronisierungssignale, wodurch der Energieverbrauch der SIMD-Prozessorarchitektur minimiert wird.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Verfahren zur Minimierung des Energieverbrauchs einer SIMD-Prozessorarchitektur geschaffen, wobei die SIMD-Prozessorarchitektur zur Verarbeitung eines Stroms von Datenvektoren geeignet ist und Folgendes umfasst: ein Prozessorarray mit einer Vielzahl von Prozessoren, wobei jeder Prozessor dafür eingerichtet ist, ein Datenelement in jedem Datenvektor zu verarbeiten, wobei der Betrieb des Prozessorarrays durch ein lokales Taktsignal mit einer ersten Frequenz gesteuert wird; und einen Steuerungsprozessor, der dafür eingerichtet ist, den Betrieb der SIMD-Prozessorarchitektur zu steuern und Synchronisierungssignale zu erzeugen, um den Betrieb des Prozessorarrays mit dem Strom von Datenvektoren zu synchronisieren, wobei der Betrieb des Steuerungsprozessors durch ein lokales Taktsignal mit einer zweiten Frequenz gesteuert wird; wobei das Verfahren das Anpassen der Frequenzen der lokalen Taktsignale in Reaktion auf die durch den Steuerungsprozessor erzeugten Synchronisierungssignale umfasst.
  • Kurze Beschreibung der Zeichnungen
  • Für ein besseres Verständnis der vorliegenden Erfindung und um klarer zu zeigen, wie sie umgesetzt werden kann, wird auf die in den folgenden Zeichnungen beispielhaft dargestellten Ausführungsformen Bezug genommen. Es zeigen:
  • 1 ein Blockschaltbild einer erfindungsgemäßen SIMD-Prozessorarchitektur;
  • 2 ein Timing-Diagramm, das die Beziehung zwischen aktiven und Leerlauf-Verarbeitungsperioden zeigt;
  • 3 ein Funktionsdiagramm eines erfindungsgemäßen Prozessor-Energiemanagement-Blocks;
  • 4 ein Funktionsdiagramm eines Blocks zum Detektieren der Änderung einer Vektorrate;
  • 5 ein Funktionsdiagramm eines Blocks zum Detektieren einer Aufgabenänderung;
  • 6 ein Blockschaltbild einer erfindungsgemäßen Schaltung zum Anpassen von Spannung und Frequenz in jedem der Cluster;
  • 7 eine Implementierung eines Frequenzsynthesizers zur Verwendung in der erfindungsgemäßen Prozessorarchitektur;
  • 8 eine alternative Implementierung eines Frequenzsynthesizers zur Verwendung in der erfindungsgemäßen Prozessorarchitektur.
  • Ausführliche Beschreibung der bevorzugten Ausführungsformen
  • Wie oben erwähnt ist eine Einsatzmöglichkeit von SIMD-Prozessoren die vektorbasierende Signalverarbeitung (zum Beispiel die Verarbeitung von Videoströmen). SIMD-Prozessorarchitekturen sind bekanntermaßen für die Pixelverarbeitung auf niedriger Ebene effizient. Obwohl SIMD-Prozessoren aufgrund des Takt-Gating und der inhärenten Vorteile der Parallelverarbeitung gute Werte hinsichtlich der Verlustleistung aufweisen, können weiterhin erhebliche Energieeinsparungen erreicht werden, indem Spannung und Frequenz in der Prozessorarchitektur intelligent gesteuert werden.
  • 1 zeigt eine erfindungsgemäße SIMD-Prozessorarchitektur 2. Die Prozessorarchitektur 2 umfasst ein lineares Prozessorarray 4 mit N + 1 Verarbeitungselementen (PEs). Ein der Prozessorarchitektur 2 zugeführte Datenstrom wird durch einen Eingangs-Preprozessor 6 geführt, der die Daten sammelt, zu einem geeigneten Vektorformat vorverarbeitet und dieses in einen Eingangs-Vektorzwischenspeicher 8 lädt. Der im Zwischenspeicher 8 gespeicherte Vektor wird parallel zum Prozessorarray 4 hin ausgelesen.
  • Nachdem der Vektor durch das Prozessorarray 4 verarbeitet worden ist, wird der Vektor an einen Arbeitsvektorspeicher 10 weitergeleitet. Wenn der Verarbeitungsalgorithmus dies erfordert, kann der Arbeitsvektorspeicher 10 die Vektordaten zur weiteren Verarbeitung zurück an das Array 4 leiten.
  • Nachdem der Vektor durch das Array 4 vollständig verarbeitet worden ist, wird der Vektor parallel in einen Ausgangs-Vektorzwischenspeicher 12 geladen. Ein Ausgangs-Postprozessor 14 liest die verarbeiteten Vektordaten und verarbeitet die Vektordaten zu einem für die Ausgabe aus der Architektur 2 geeigneten Datenstrom.
  • Die Berechung im SIMD-Prozessor erfolgt typischerweise im Pipeline-Verfahren auf Vektor(linien)ebene, d. h. während der Eingangs-Preprozessor 6 Dateneinhei ten des „nächsten" Vektors sammelt und vorverarbeitet, befasst sich das lineare Prozessorarray 4 mit dem „aktuellen" Vektor. In der Zwischenzeit verarbeitet der Ausgangs-Postprozessor 14 Dateneinheiten des „vorhergehenden" Vektors, um sie herauszusenden.
  • Es ist ein globaler Steuerungsprozessor 16 vorgesehen, um die Synchronisierung zwischen den Blöcken in der Prozessorarchitektur 2 zu steuern. Der Eingangs-Preprozessor 6 hat den globalen Steuerungsprozessor 16 über die Ankunft eines neuen Vektors zu informieren, und der globale Steuerungsprozessor 16 informiert den Ausgangs-Postprozessor 14 über die Beendigung der Verarbeitung eines Vektors.
  • In 2 ist ein Timing-Diagramm dargestellt, das das Timing einer typischen Signalverarbeitungsaufgabe zeigt. Die Ankunft eines Eingangsvektors (in_read/new_vector) signalisiert den Beginn der Algorithmus-Ausführung. Mit der Beendigung der Verarbeitung (out_ready) wird der Ausgangs-Nachprozessor 14 aufgefordert, das Ausgabe-Streaming fortzusetzen. Das wait-Signal zeigt die Perioden, während der sich das lineare Prozessorarray 4 im Leerlauf befindet.
  • Wie bei einem herkömmlichen SIMD-Prozessor ist der globale Steuerungsprozessor 16 dafür zuständig, eine Anweisung oder ein Programm aus einem Programmspeicher 18 abzurufen, zu decodieren und die Anweisung an das lineare Prozessorarray 4 abzusenden. Der globale Steuerungsprozessor 16 umfasst einen Synchronisierungsblock 20, der für die Synchronisierung der Aufgabenverarbeitung im linearen Prozessorarray 4 zuständig ist.
  • Es ist zu beachten, dass der übersichtlichen Darstellung halber die Verbindungen zwischen dem globalen Steuerungsprozessor 16 und dem Eingangs-Preprozessor 6, dem linearen Prozessorarray 4 und dem Ausgangs-Postprozessor 14 weggelassen wurden.
  • Erfindungsgemäß werden Energieeinsparungen erreicht, indem die Komponenten der Prozessorarchitektur 2 in Cluster gruppiert werden und die Spannung sowie die Taktfrequenz jedes Clusters separat in Reaktion auf Synchronisierungssignale gesteuert werden, die innerhalb der Prozessorarchitektur erzeugt wurden.
  • In 1 sind vier Cluster dargestellt. Es ist zu beachten, dass die Prozessorarchitektur 2 in mehr oder weniger als vier Cluster gruppiert werden kann und dass in jedem Cluster verschiedene Komponenten der Architektur 2 enthalten sein können.
  • Das erste Cluster 22 umfasst den Eingangs-Preprozessor 6 und den Eingangs-Vektorzwischenspeicher 8. Da dieses Cluster mit der Umgebung außerhalb der Prozessorarchitektur 2 verbunden ist, diktiert die Umgebung die Taktfrequenz des Clusters und damit die Spannung.
  • Das zweite Cluster 24 umfasst den Ausgangs-Postprozessor 14 und Ausgangs-Vektorzwischenspeicher 12. Da dieses Cluster ebenfalls mit der Umgebung außerhalb der Prozessorarchitektur 2 verbunden ist, diktiert wiederum die Umgebung die Taktfrequenz und damit die Spannung.
  • Das dritte Cluster 26 umfasst das lineare Prozessorarray 4 und den Arbeitsvektorspeicher 10, und das vierte Cluster 28 umfasst den globalen Steuerungsprozessor 16 und den Programmspeicher 18.
  • Alternativ können das lineare Prozessorarray 4, der Arbeitsvektorspeicher 10, der globale Steuerungsprozessor 16 und der Programmspeicher 18 in separaten Cluster angeordnet werden.
  • Da die SIMD-Verarbeitungsmaschine (lineares Prozessorarray 4) jetzt von der Umgebung außerhalb der Prozessorarchitektur 2 abgekoppelt ist, kann das lineare Prozessorarray 4 gesteuert werden, um das Energiemanagement zu vereinfachen. Insbesondere können die Komponenten in dem dritten und vierten Cluster 26, 28 bei anderen Taktfrequenzen als die Umgebung und bei unterschiedlichen Taktfrequenzen zueinander betrieben werden, um eine energieoptimierte Ausführung zu erreichen.
  • In dem globalen Steuerungsprozessor 16 ist eine Energiemanagement-Schaltung 30 vorgesehen, um eine geeignete Taktfrequenz für jedes der steuerbaren Cluster zu bestimmen (d. h. in diesem abgebildeten Ausführungsbeispiel das dritte und das vierte Cluster 26, 28) und ihre jeweilige Taktfrequenz und Spannung entsprechend anzupassen.
  • Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung und um die zur Implementierung einer Energiemanagement-Lösung in eine SIMD-Prozessorarchitektur benötigte zusätzliche Hardware zu reduzieren, wird die dem globalen Steuerungsprozessor 16 inhärente Aufgabensynchronisierung genutzt, um die von der Energiemanagement-Schaltung 30 benötigten Informationen zu erzeugen.
  • Die Synchronisierungsschaltung 20 vereinfacht den unabhängigen Betrieb der vier Cluster 22, 24, 26 und 28, indem sie es möglich macht, die Dynamik des Anwendungscodes in Bezug auf die Vektortransferrate zu identifizieren und damit ein Maß für die dynamische Spannungs- und Frequenzskalierung (engl. Dynamic Voltage and Frequency Scaling, DVFS) abzuleiten.
  • Die erfindungsgemäße dynamische Spannungs- und Frequenzskalierung (DVFS) ermöglicht im Grunde die Verteilung der Anwendungslast über die Zeit, wobei das Leistungsvermögen der Prozessorarchitektur 2 nicht beeinträchtigt wird, jedoch die Verlustleistung verringert wird.
  • Die DVFS-Lösung gemäß der vorliegenden Erfindung kann die Leerlaufzeit in den in 2 dargestellten Verarbeitungszyklen reduzieren.
  • In 3 ist ein Funktionsdiagramm einer erfindungsgemäßen Prozessor-Energiemanagement-Schaltung 30 dargestellt.
  • Der Energiemanagement-Block 30 umfasst einen Berechnungsblock 32 zur Berechnung der mittleren Länge der Leerlaufphasen des Verarbeitungszyklus, einen Detektionsblock 34 zum Detektieren einer Veränderung der Rate, mit der die Vektoren der Prozessorarchitektur 2 zugeführt werden, und einen zweiten Berechnungsblock 36 zum Berechnen der neuen Spannungs- und Frequenzeinstellungen für ein bestimmtes Cluster.
  • Der erste Berechnungsblock 32 empfängt das wait-Signal (wie in 2 dargestellt) und ein Signal, das auf die Eingabe eines neuen Vektors in die Prozessorarchitektur 2 hinweist. Der Block 32 berechnet dann die mittlere Länge der Leerlaufphase über N Vektorperioden. Mathematisch kann dies folgendermaßen ausgedrückt werden: tavidle = Σtidle/N
  • Die Ausgabe von Block 32, die mittlere Länge der Leerlaufphasen über N Vektorperioden, wird dem zweiten Berechnungsblock 36 zugeführt.
  • Der Detektionsblock 34 empfangt ebenfalls ein Signal, das auf die Eingabe eines neuen Vektors in die Prozessorarchitektur 2 hinweist, und ermittelt, ob die Vektorrate zugenommen oder abgenommen hat. Das Ausgangssignal des Detektionsblocks 34 gibt an, in welchem Maße die Vektorrate zugenommen oder abgenommen hat, und dieses Signal wird dem zweiten Berechnungsblock 36 zugeführt.
  • Der zweite Berechnungsblock 36 empfangt die Ausgabe vom ersten Berechnungsblock 32, die Ausgabe vom Detektionsblock 34, ein auf die Veränderung in der durch die Prozessorarchitektur 2 ausgeführten Aufgabe hinweisendes Signal und die Standardeinstellungen für das Cluster.
  • Bei dieser abgebildeten Ausführungsform gilt die Spannung als eine Funktion der Taktfrequenz. Es ist zu beachten, dass die Spannung bei einem echten System durch andere Faktor bestimmt werden kann.
  • Im vorliegenden Beispiel ist die Standardeinstellung für das Cluster, wenn die Taktfrequenz ihren Maximalwert hat: f0 = fmax; V0 = g(f0) = g(fmax) wobei g() eine Funktion ist.
  • Der zweite Berechnungsblock 36 berechnet dann eine neue Betriebsbedingung ausgehend von tavidle und von der Länge einer Vektorperiode, tvectorperiod, wie nachstehend dargelegt: fi = h(tavidle, tvectorperiod); Vi = g(fi)wobei h() eine Funktion ist.
  • Die neue Arbeitstaktfrequenz und Arbeitsspannung werden durch Block 36 ausgegeben.
  • Wenn das Signal task_change angibt, dass eine Änderung bei der durch die Prozessorarchitektur 2 ausgeführten Aufgabe stattgefunden hat, muss der zweite Berechnungsblock die Betriebsbedingungen auf die Standardwerte zurückstellen: fi = fmax; Vi = g(fmax)
  • Wenn die Ausgabe des Detektionsblocks 34 darauf hinweist, dass sich die Rate, mit der die Vektoren durch das System verarbeitet werden, geändert hat, muss die Taktfrequenz des Clusters entsprechend angepasst werden: fi = fi-1 + Δ; Vi = g(fi) wenn die Vektorrate zunimmt fi = fi-1 – Δ; Vi = g(fi) wenn die Vektorrate abnimmtwobei Δ die Größe der Vektorratenänderung angibt.
  • 4 zeigt ein Funktionsdiagramm eines Blocks zum Detektieren der Vektorratenänderung 34. Der Block 34 umfasst eine Einheit 38 zum Messen des Intervalls zwischen aufeinander folgenden in_ready/new_vector Ereignissen, wobei dieses Intervall mit B bezeichnet wird, eine Verzögerungseinheit 40, einen Latch 42 zum Speichern des vorhergehenden Vektorintervalls, wobei dieses Intervall mit A bezeichnet wird, und eine Einheit 44 zum Vergleichen von A und B, um zu ermitteln, ob eine Änderung in der Vektorrate stattgefunden hat.
  • Wenn B < A, hat die Vektorrate zugenommen, und der Merker C im Signal rate_change gibt dies an. Wenn B > A, hat die Vektorrate abgenommen und der Merker D im Signal rate_change gibt dies an.
  • Die Aufgabenänderung kann automatisch detektiert werden, indem überwacht wird, warm die Ausführung des Algorithmus pro Vektor beendet ist, da die Zykluszählung zwischen aufeinanderfolgenden in_ready/new_vector- und wait vector-Ereignissen in direktem Zusammenhang mit der Komplexität des Algorithmus steht. Durch den Ver gleich der Zykluszählung mit einem vorhergehenden Mittelwert wird festgestellt, ob eine Aufgabenänderung stattgefunden hat.
  • 5 zeigt ein Funktionsdiagramm eines Blocks zur Detektion einer Aufgabenänderung. Der Block umfasst eine Einheit 46 zum Messen der für die Beendigung einer Aufgabe benötigten Zeit oder Anzahl Zyklen, was der Zeit oder Anzahl Zyklen zwischen dem Empfangen eines wait_vector-Signals und des nächsten new_vector-Signals entspricht. Diese Zeit wird mit F bezeichnet. Der Block umfasst weiterhin einen Latch 48 zum Speichern der vorhergehenden Aufgabenzeit, bezeichnet mit E. Eine Einheit 50 vergleicht die Größe der Differenz zwischen E und F (bezeichnet mit G) mit einem Schwellenwert T. Wenn die Größe der Differenz zwischen E und F den Schwellenwert T überschreitet, d. h. wenn eine der Aufgaben ausreichend mehr Zeit zur Vollendung benötigt als die andere Aufgabe, so wird das Auftreten einer Aufgabenänderung festgestellt und mit dem Signal G (task_change) darauf hingewiesen.
  • Die oben beschriebenen Ausnahmen (d. h. die Aufgaben- und Vektorratenänderungen) treten typischerweise auf, wenn die Anwendung auf Ereignisse reagiert, z. B. wenn eine Kamera, die eine einfache Aufgabe mit einer niedrigen Datenrate während eines Halb-Leerlaufbetriebs ausführt, auf eine komplexe Aufgabe mit einer höheren Datenrate umschaltet, sobald ein interessierendes Objekt in das Sichtfeld gerät. Die Komplexität der Aufgabe kann mit der Art und der Anzahl der Objekte variieren.
  • Das hier vorgeschlagene Energiemanagement-Verfahren kann in energiekritischen Anwendungen verwendet werden, zum Beispiel bei mobilen Video-, Audio- oder Grafikverarbeitungsplattformen. Der gleiche SIMD-Prozessor kann in einer mobilen Vorrichtung Videophon-Funktionalität bieten, z. B. Frontend-Sensordatenverarbeitung und anzeigebezogene Verarbeitung, oder Spielfunktionalität, z. B. Grafikverarbeitung.
  • Die für die Videophon- und Spielfunktionalitäten tatsächlich ausgeführten Algorithmen können in Abhängigkeit von den Umgebungsbedingungen und den gewählten Funktionalitäten dynamisch variieren. Durch Anpassen der Betriebsbedingungen (d. h. Spannung und Taktfrequenz) des Prozessors an die Anforderungen der Anwendung kann eine effizientere Batterienutzung erreicht werden.
  • 6 zeigt ein Blockschaltbild der erfindungsgemäßen Schaltung zur Anpassung von Spannung und Frequenz in jedem der Cluster.
  • Die Schaltung umfasst einen Frequenzsynthesizer 52, dem ein Referenztaktsignal [fr], die Frequenzeinstellungen N, M und die Versorgungsspannung Vs zugeführt werden. Unter Verwendung der Frequenzeinstellungen N, M erzeugt der Frequenzsynthesizer 52 aus dem Referenztaktsignal [fr] das Taktsignal für das Cluster [fc].
  • Die Schaltung umfasst auch einen Spannungsregler 54, der die Versorgungsspannung Vs und die Spannungseinstellung empfängt. Dieser Spannungsregler 54 (bei dem es sich um einen Gleichstromrichter handelt) erzeugt Spannungen in dem zulässigen Bereich, wobei die untere Grenze durch den akzeptablen Störabstand vorgegeben wird und die obere Grenze durch den gewählten IC-Prozess. Die Ausgabe des Spannungsreglers 54 ist die Spannung für das Cluster Vc.
  • 7 zeigt eine Implementierung eines steuerbaren Frequenzsynthesizers 52 zur Verwendung in der erfindungsgemäßen Prozessorarchitektur. Dieser steuerbare Frequenzsynthesizer basiert auf einem traditionellen Phasen-/Frequenzregelkreis (engl. phase/frequency locked loop, PLL/FLL). Der Synthesizer umfasst einen ersten und einen zweiten Frequenzteiler 56 und 58, einen Phasen-/Frequenzdetektor 60, einen Tiefpassfilter 62 und einen spannungsgesteuerten Oszillator 64.
  • Der erste Frequenzteiler 56 teilt das Taktreferenzsignal [fr] durch die Frequenzeinstellung M und führt sein Ausgangssignal dem Phasen-/Frequenzdetektor 60 zu. Der zweite Frequenzteiler 58 teilt das Cluster-Taktsignal [fc] durch die Frequenzeinstellung N und führt sein Ausgangssignal dem Phasen-/Frequenzdetektor 60 zu.
  • Der Phasen-/Frequenzdetektor 60, der Tiefpassfilter 62 und der spannungsgesteuerte Oszillator 64 wind wie in einem herkömmlichen Phasenregelkreis miteinander verbunden. Das Ausgangssignal des spannungsgesteuerten Oszillators 64 ist das Cluster-Taktsignal [fc].
  • Im Prinzip kann diese Vorgehensweise zur Erzeugung des Cluster-Taktsignals [fc] eine feine Frequenzauflösung liefern, wenn der Tiefpassfilter 62 und der spannungsgesteuerte Oszillator 64 mit analogen Schaltungen realisiert werden. Die Notwendigkeit von außerhalb des Chips befindlichen Komponenten und die Dynamik des Phasenregelkreises machen diese Vorgehensweise jedoch zu einer weniger attraktiven Lösung.
  • 8 zeigt eine alternative Implementierung eines Frequenzsynthesizers zur Verwendung in der Prozessorarchitektur gemäß der vorliegenden Erfindung. Dieser Synthesizer nutzt das Open-Loop-Frequenzsynthese-Verfahren (OLFS), das viele der mit dem Frequenzsynthesizer aus 7 verbundenen Nachteile überwindet.
  • Dieser Synthesizer umfasst einen Ringoszillator 66, der mit einem Periodenzähler 68 und einem Impulsgenerator 70 verbunden ist. Der Periodenzähler 68 empfängt das Taktreferenzsignal [fr] und eine durch den Ringoszillator 66 erzeugte Frequenz [fo], um ein Periodensignal P zu erzeugen. Der Impulsgenerator 68 empfängt [fo], P und die Frequenzeinstellungen M und N und erzeugt ein Signal mit dem Doppelten der gewünschten Clusterfrequenz [fc]. Eine Tastverhältnis-Korrektureinheit 72 korrigiert das durch den Impulsgenerator 70 erzeugte Signal, um die Clusterfrequenz [fc] zu liefern.
  • Dieser Frequenzsynthesizer verwendet die folgenden Annahmen in Bezug auf den Betrieb der Prozessorarchitektur 2: erstens braucht die Frequenzanpassung für ein dynamisches Energiemanagement keine hohe Auflösung zu haben, es reicht aus, dass die Verarbeitungsmaschine so gesteuert wird, dass sie ein Taktsignal erhält, welches die rechtzeitige Beendigung der Aufgabe ermöglicht, die durch die Optimierung auf den letzten MHz/kHz-Bereich erreichten zusätzlichen Energieeinsparungen werden nicht benötigt, und zweitens, da die Verarbeitungsmaschine mit einem bekannten maximalen Leistungsvermögen entworfen wurde, kann die Ringoszillatorfrequenz auf dieses Maximum eingestellt werden und man braucht während des Energiemanagements nicht mehr als einen Frequenzteiler, um einen Clustertakt mit niedrigerer Frequenz zu erzeugen.
  • Der Periodenzähler 68 hilft bei der Schaffung einer Beziehung zwischen dem Referenztaktsignal [fr] und dem Cluster-Taktsignal [fc]. Bei der SIMD-Architektur kann das Referenztaktsignal [fr] das Eingangs-/Ausgangstaktsignal sein, das mit der äußeren Umgebung verknüpft ist.
  • Es wird daher ein Energiemanagement-Verfahren für SIMD-Prozessorarchitekturen geschaffen, das den Energieverbrauch im Vergleich zu Prozessorarchitekturen nach dem Stand der Technik reduziert.
  • Es ist anzumerken, dass die oben erwähnten Ausführungsbeispiele die Erfindung erläutern und sie nicht einschränken, und der Fachkundige in der Lage sein wird, viele alternative Ausführungsbeispiele zu konstruieren, ohne vom Rahmen der in den anhängenden Ansprüchen definierten Erfindung abzuweichen. In den Ansprüchen sind in Klammern gesetzte Bezugszeichen nicht als den Anspruch einschränkend anzusehen. Die Verwendung des Verbs „umfassen" (englisch: „comprise") und seine Konjugationen schließt das Vorhandensein von anderen als den in einem Anspruch oder der Spezifikation insgesamt erwähnten Elementen oder Schritten nicht aus. Die Verwendung einer Bezeichnung eines Elements im Singular schließt das Vorhandensein mehrerer derartiger Elemente nicht aus und umgekehrt. Die Erfindung kann mittels Hardware ausgeführt werden, die mehrere verschiedene Elemente umfasst, und mittels eines in geeigneter Weise program mierten Computers. In einem Anspruch, in dem mehrere Mittel aufgezählt werden, können mehrere dieser Mittel in einem und demselben Hardwareteil ausgeführt werden. Die alleinige Tatsache, dass gewisse Maßnahmen in verschiedenen abhängigen Ansprüchen aufgeführt sind, bedeutet nicht, dass eine Kombination dieser Maßnahmen nicht vorteilhaft eingesetzt werden kann.
  • Text in der Zeichnung
  • 1
    • Status – Status
    • Program – Programm
  • 2
    • Activ – aktiv
    • Idle – Leerlauf
  • 3
    • DS – Standardeinstellungen
    • Rate_change – Änderung der Rate
    • Task_change – Änderung der Aufgabe
    • New_vector – Neuer Vektor
  • 4
    • Clck – Takt
    • New_vector – Neuer Vektor
    • Rate_change – Änderung der Rate
  • 5
    • Clck – Takt
    • New_vector – Neuer Vektor
    • Wait_vector – Warte-Vektor
    • Task_change – Änderung der Aufgabe

Claims (19)

  1. SIMD-(Single-Instruction Multiple-Data-)Prozessorarchitektur zur Verarbeitung eines Stroms von Datenvektoren, wobei die Architektur Folgendes umfasst: ein Prozessorarray mit einer Vielzahl von Prozessoren, wobei jeder Prozessor dafür eingerichtet ist, ein Datenelement in jedem Vektor zu verarbeiten, wobei der Betrieb des Prozessorarrays durch ein lokales Taktsignal mit einer ersten Frequenz gesteuert wird; gekennzeichnet durch einen Steuerungsprozessor, der dafür eingerichtet ist, den Betrieb der SIMD-Prozessorarchitektur zu steuern und Synchronisierungssignale zu erzeugen, um den Betrieb des Prozessorarrays mit dem Strom von Datenvektoren zu synchronisieren, wobei der Betrieb des Steuerungsprozessors durch ein lokales Taktsignal mit einer zweiten Frequenz gesteuert wird; und Energiemanagement-Mittel zum Anpassen der Frequenzen der lokalen Taktsignale in Reaktion auf die durch den Steuerungsprozessor erzeugten Synchronisierungssignale, wodurch der Energieverbrauch der SIMD-Prozessorarchitektur minimiert wird.
  2. SIMD-Prozessorarchitektur nach Anspruch 1, wobei die durch das Prozessorarray und den Steuerungsprozessor benötigte Spannung von der Frequenz der jeweiligen lokalen Taktsignale abhängt.
  3. SIMD-Prozessorarchitektur nach Anspruch 1 oder 2, wobei das Energiemanagement-Mittel dafür eingerichtet ist, die erste und die zweite Frequenz der lokalen Taktsignale separat anzupassen.
  4. SIMD-Prozessorarchitektur nach einem der vorhergehenden Ansprüche, die weiterhin Folgendes umfasst: eine Vielzahl von elektronischen Komponenten, wobei mindestens eine aus der Vielzahl der elektronischen Komponenten mit dem Prozessorarray oder dem Steuerungsprozessor in einem Cluster zusammengefasst ist, so dass der Betrieb von der mindestens einen Komponente durch die jeweilige lokale Taktfrequenz des Prozes sorarrays oder des Steuerungsprozessors gesteuert wird, mit dem sie in einem Cluster zusammengefasst ist.
  5. SIMD-Prozessorarchitektur nach Anspruch 4, wobei eine aus der Vielzahl der elektronischen Komponenten ein Arbeitsvektorspeicher ist und der Arbeitsvektorspeicher mit dem Prozessorarray in einem Cluster zusammengefasst ist.
  6. SIMD-Prozessorarchitektur nach Anspruch 4 oder 5, wobei eine aus der Vielzahl der elektronischen Komponenten ein Programmspeicher ist und der Programmspeicher mit dem Steuerungsprozessor in einem Cluster zusammengefasst ist.
  7. SIMD-Prozessorarchitektur nach Anspruch 4, 5 oder 6, wobei mindestens eine andere elektronische Komponente aus der Vielzahl der elektronischen Komponenten durch ein Taktsignal mit einer dritten Frequenz gesteuert wird.
  8. SIMD-Prozessorarchitektur nach Anspruch 7, wobei die dritte Frequenz der Frequenz des Taktsignals in der Umgebung entspricht, mit der die SIMD-Prozessorarchitektur verbunden ist.
  9. SIMD-Prozessorarchitektur nach Anspruch 8, wobei die mindestens eine andere Komponente ein Eingangs-Preprozessor zum Empfangen der Datenvektoren aus der Umgebung oder ein Ausgangs-Postprozessor zum Liefern der Ausgangs-Datenvektoren an die Umgebung ist.
  10. SIMD-Prozessorarchitektur nach Anspruch 7, wobei die dritte Frequenz in Reaktion auf die durch den Steuerungsprozessor erzeugten Synchronisierungssignale angepasst wird.
  11. SIMD-Prozessorarchitektur nach Anspruch 10, wobei die mindestens eine andere elektronische Komponente mit einer weiteren mindestens einen anderen elektronischen Komponente in einem Cluster zusammengefasst ist.
  12. SIMD-Prozessorarchitektur nach einem der vorhergehenden Ansprüche, wobei die Rate, mit der Datenvektoren bei der SIMD-Prozessorarchitetur eintreffen, über die Zeit variiert.
  13. SIMD-Prozessorarchitektur nach Anspruch 12, wobei die Frequenzen der Taktsignale angepasst werden, um die Zeit, während der sich das Prozessorarray im Leerlauf befindet, zu reduzieren.
  14. SIMD-Prozessorarchitektur nach Anspruch 13, wobei das Energiemanagement-Mittel dafür eingerichtet ist, anhand der Synchronisierungssignale die mittlere Dauer zu berechnen, während der sich das Prozessorarray während jedes Verarbeitungszyklus im Leerlauf befindet.
  15. SIMD-Prozessorarchitektur nach Anspruch 14, wobei das Energiemanagement-Mittel weiterhin dafür eingerichtet ist, anhand der Synchronisierungssignale eine Änderung in der Rate zu detektieren, mit der Datenvektoren aus der Umgebung empfangen werden.
  16. SIMD-Prozessorarchitektur nach Anspruch 15, wobei das Energiemanagement-Mittel weiterhin dafür eingerichtet ist, die Werte der Frequenzen der Taktsignale anhand der berechneten mittleren Dauer zu berechnen, während der sich das Prozessorarray während jedes Verarbeitungszyklus im Leerlauf befindet und/oder die detektierte Veränderung in der Rate, mit der Datenvektoren aus der Umgebung empfangen werden.
  17. Verfahren zur Minimierung des Energieverbrauchs einer SIMD-(Single-Instruction Multiple-Data-)Prozessorarchitektur, wobei die SIMD-Prozessorarchitektur zur Verarbeitung eines Stroms von Datenvektoren geeignet ist und Folgendes umfasst: ein Prozessorarray mit einer Vielzahl von Prozessoren, wobei jeder Prozessor dafür eingerichtet ist, ein Datenelement in jedem Datenvektor zu verarbeiten, wobei der Betrieb des Prozessorarrays durch ein lokales Taktsignal mit einer ersten Frequenz gesteuert wird; und gekennzeichnet ist durch einen Steuerungsprozessor, der dafür eingerichtet ist, den Betrieb der SIMD-Prozessorarchitektur zu steuern und Synchronisierungssignale zu erzeugen, um den Betrieb des Prozessorarrays mit dem Strom von Datenvektoren zu synchronisieren, wobei der Betrieb des Steuerungsprozessors durch ein lokales Taktsignal mit einer zweiten Frequenz gesteuert wird; wobei das Verfahren das Anpassen der Frequenzen der lokalen Taktsignale in Reaktion auf die durch den Steuerungsprozessor erzeugten Synchronisierungssignale umfasst.
  18. Verfahren nach Anspruch 17, das weiterhin den folgenden Schritt umfasst: anhand der Synchronisierungssignale Berechnen der mittleren Dauer, während der sich das Prozessorarray während jedes Verarbeitungszyklus im Leerlauf befindet.
  19. Verfahren nach Anspruch 17 oder 18, das weiterhin den folgenden Schritt umfasst: anhand der Synchronisierungssignale Detektieren einer Änderung in der Rate, mit der Datenvektoren aus einer Umgebung empfangen werden, mit der die SIMD-Prozessorarchitektur verbunden ist.
DE602005006422T 2004-06-21 2005-06-08 Strom-management Active DE602005006422T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP04102845 2004-06-21
EP04102845 2004-06-21
PCT/IB2005/051875 WO2006000929A2 (en) 2004-06-21 2005-06-08 Power management

Publications (2)

Publication Number Publication Date
DE602005006422D1 DE602005006422D1 (de) 2008-06-12
DE602005006422T2 true DE602005006422T2 (de) 2009-06-18

Family

ID=34970743

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005006422T Active DE602005006422T2 (de) 2004-06-21 2005-06-08 Strom-management

Country Status (8)

Country Link
US (1) US7689848B2 (de)
EP (1) EP1779219B1 (de)
JP (1) JP4579979B2 (de)
KR (1) KR20070027598A (de)
CN (1) CN100524168C (de)
AT (1) ATE393928T1 (de)
DE (1) DE602005006422T2 (de)
WO (1) WO2006000929A2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7474488B2 (en) * 2005-08-30 2009-01-06 International Business Machines Corporation Magnetic head, tape drive system, and method
US20070136615A1 (en) * 2005-12-08 2007-06-14 Electronics And Telecommunications Research Institute System and method for reducing power used to execute application program
US7622364B2 (en) 2006-08-18 2009-11-24 International Business Machines Corporation Bond pad for wafer and package for CMOS imager
US7899434B2 (en) * 2006-12-15 2011-03-01 Broadcom Corporation Power management for a mobile communication device and method for use therewith
JP4753895B2 (ja) * 2007-02-20 2011-08-24 ルネサスエレクトロニクス株式会社 遅延調整回路を有するアレイ型プロセッサ
US8161314B2 (en) 2007-04-12 2012-04-17 International Business Machines Corporation Method and system for analog frequency clocking in processor cores
GB2476606B (en) 2008-09-08 2012-08-08 Virginia Tech Intell Prop Systems, devices, and methods for managing energy usage
US20110022870A1 (en) * 2009-07-21 2011-01-27 Microsoft Corporation Component power monitoring and workload optimization
US8631256B2 (en) * 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
JP5674613B2 (ja) 2011-09-22 2015-02-25 株式会社東芝 制御システム、制御方法およびプログラム
US8650423B2 (en) * 2011-10-12 2014-02-11 Qualcomm Incorporated Dynamic voltage and clock scaling control based on running average, variant and trend
WO2013095436A1 (en) * 2011-12-21 2013-06-27 Intel Corporation Method and apparatus for setting an i/o bandwidth-based processor frequency floor
US9910473B2 (en) * 2013-03-14 2018-03-06 Silicon Storage Technology, Inc. Power management for a memory device
CN103218029B (zh) * 2013-04-09 2015-06-17 电子科技大学 一种超低功耗处理器流水线结构
KR102099914B1 (ko) * 2013-10-29 2020-05-15 삼성전자주식회사 영상 처리 장치 및 영상 처리 방법
US9798376B2 (en) * 2015-08-03 2017-10-24 Qualcomm Incorporated Power distribution network (PDN) droop/overshoot mitigation
DE102016106547A1 (de) * 2016-04-11 2017-10-12 Robert Bosch Gmbh Schaltereinrichtung für einen elektromotor, steuereinrichtung, lenksystem

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
JP2000047872A (ja) * 1998-08-03 2000-02-18 Hitachi Ltd 低消費電力動作機能を備えたマイクロプロセッサ
JP2000122747A (ja) * 1998-10-12 2000-04-28 Nec Corp ディジタル信号演算処理部の制御装置および方法
US6275969B1 (en) 1999-06-09 2001-08-14 Nec Usa, Inc. Common case optimized circuit structure for high-performance and low-power VLSI designs
US6647502B1 (en) 1999-07-13 2003-11-11 Sony Corporation Method and apparatus for providing power based on the amount of data stored in buffers
JP3887134B2 (ja) * 1999-12-27 2007-02-28 株式会社リコー 画像処理装置
JP3940542B2 (ja) * 2000-03-13 2007-07-04 株式会社ルネサステクノロジ データプロセッサ及びデータ処理システム
TW593567B (en) * 2000-07-31 2004-06-21 Ciba Sc Holding Ag Dispersant compositions improving the heat stability of transparent pigments
JP3971559B2 (ja) * 2000-10-02 2007-09-05 株式会社リコー 並列プロセッサ及びそれを用いた画像処理装置
US6990598B2 (en) * 2001-03-21 2006-01-24 Gallitzin Allegheny Llc Low power reconfigurable systems and methods
JP2003099148A (ja) * 2001-09-19 2003-04-04 Sanyo Electric Co Ltd データ処理装置とこれに利用可能なシステム制御装置およびデータ変換方法
US6785831B2 (en) * 2001-12-06 2004-08-31 Matsushita Electric Industrial Co., Ltd. Power consumption management apparatus
JP2003233434A (ja) * 2001-12-06 2003-08-22 Matsushita Electric Ind Co Ltd 消費電力管理装置
KR100539490B1 (ko) * 2002-01-28 2005-12-29 쿄세라 코포레이션 유전체 자기 조성물 및 유전체 자기
US7149909B2 (en) * 2002-05-09 2006-12-12 Intel Corporation Power management for an integrated graphics device
US7076681B2 (en) * 2002-07-02 2006-07-11 International Business Machines Corporation Processor with demand-driven clock throttling power reduction
US7043649B2 (en) * 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules

Also Published As

Publication number Publication date
JP4579979B2 (ja) 2010-11-10
ATE393928T1 (de) 2008-05-15
CN100524168C (zh) 2009-08-05
JP2008503822A (ja) 2008-02-07
US20070266268A1 (en) 2007-11-15
US7689848B2 (en) 2010-03-30
CN1973254A (zh) 2007-05-30
EP1779219B1 (de) 2008-04-30
WO2006000929A3 (en) 2006-03-30
WO2006000929A2 (en) 2006-01-05
EP1779219A2 (de) 2007-05-02
KR20070027598A (ko) 2007-03-09
DE602005006422D1 (de) 2008-06-12

Similar Documents

Publication Publication Date Title
DE602005006422T2 (de) Strom-management
DE102014014301B4 (de) Verfahren und Einrichtung zum Verwalten globaler Chip-Energie auf einem Chip-internen Mehrkernsystem
DE102004062911B4 (de) Verfahren zum Betrieb eines Prozessors und zugehöriges Prozessorsystem
DE69727355T2 (de) Anordnung und Verfahren zur Taktsequenzierung in einem Datenverarbeitungssystem
DE69633544T2 (de) Erfassungs- und Verfolgungsfilter für Spreizspektrumsignale
DE102019009216B3 (de) System und Verfahren zum Steuern einer Ladungspumpe
DE102006048390B4 (de) Taktschaltung für Halbleiterspeicher
DE19983138B4 (de) Verfahren und Vorrichtung zum Verändern einer Taktfrequenz auf einer Phase-zu-Phase-Basis
DE112016001481T5 (de) Unterspannungserkennung und leistungsdrosselung
DE112006002337T5 (de) Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge
DE19924048A1 (de) Taktphasen-Berichtigungsschaltkreis
DE102005044084A1 (de) Zufallsbitgenerator und Zufallszahlengenerator
DE19852457C2 (de) Verfahren und Vorrichtung zur Phasendrehung in einem Phasenregelkreis
DE112006000386B4 (de) Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche
DE112019002299T5 (de) Variabel adaptiver integrierter computational digital low-dropout-regler
DE112015004626T5 (de) Konfigurierbares Vorverarbeitungs-Array
DE112020003722T5 (de) Digital-linearer hybrid-schaltkondensator-spannungsregler
DE102015109812A1 (de) Einstellen einer Taktfrequenz
DE10337541A1 (de) Integrierter Schaltungsbaustein und zugehöriges Optimierungsverfahren
DE102021121216A1 (de) Einrichtung und Verfahren zum Steuern eines Prozessorspitzensttroms
DE102006016308A1 (de) Signalverarbeitungsschaltung für eine analoge Eingabe
DE112018007177T5 (de) Steuerung einer verarbeitungsleistungsstufe abhängig vom energieverbrauch
DE69938019T2 (de) Anordnung zur Steuerung von Spannungsgeneratoren in Multispannungschips wie DRAMs
DE112019004474T5 (de) Adaptiv umkonfigurierbares system mit ultraniedriger leistung
DE102015216809A1 (de) Digitale Temperaturregelung für Energieversorgungsvorrichtungen

Legal Events

Date Code Title Description
8320 Willingness to grant licences declared (paragraph 23)
8364 No opposition during term of opposition