DE112018003087B4 - On-chip-rauschunterdrückung oder -minderung der versorgungsspannung unter verwendung von lokalen detektionsschleifen in einem prozessorkern - Google Patents

On-chip-rauschunterdrückung oder -minderung der versorgungsspannung unter verwendung von lokalen detektionsschleifen in einem prozessorkern Download PDF

Info

Publication number
DE112018003087B4
DE112018003087B4 DE112018003087.3T DE112018003087T DE112018003087B4 DE 112018003087 B4 DE112018003087 B4 DE 112018003087B4 DE 112018003087 T DE112018003087 T DE 112018003087T DE 112018003087 B4 DE112018003087 B4 DE 112018003087B4
Authority
DE
Germany
Prior art keywords
unit
processor core
voltage
global
noise
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
DE112018003087.3T
Other languages
English (en)
Other versions
DE112018003087T5 (de
Inventor
Christos VEZYRTZIS
Pierce I-Jen Chuang
Alper Buyuktosunoglu
Phillip John Restle
Pradip Bose
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112018003087T5 publication Critical patent/DE112018003087T5/de
Application granted granted Critical
Publication of DE112018003087B4 publication Critical patent/DE112018003087B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00346Modifications for eliminating interference or parasitic voltages or currents
    • H03K19/00361Modifications for eliminating interference or parasitic voltages or currents in field effect transistor circuits
    • 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/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • G06F1/305Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations in the event of power-supply fluctuations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/16Modifications for eliminating interference voltages or currents
    • H03K17/161Modifications for eliminating interference voltages or currents in field-effect transistor switches
    • H03K17/162Modifications for eliminating interference voltages or currents in field-effect transistor switches without feedback from the output circuit to the control circuit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00369Modifications for compensating variations of temperature, supply voltage or other physical parameters
    • H03K19/00384Modifications for compensating variations of temperature, supply voltage or other physical parameters in field effect transistor circuits
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

Einheit (300) zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens, aufweisend:einen ersten Sensor (108) für Spannungsrauschen, der sich auf einer ersten Einheit (104) eines Prozessorkerns (102) befindet, wobei der erste Sensor für Spannungsrauschen einen ersten Spannungseinbruch auf der ersten Einheit erkennt, und wobei der Prozessorkern in die erste Einheit und eine zweite Einheit (106) geteilt ist;eine globale Rauschverwaltungskomponente (116), die sich in dem Prozessorkern befindet, und die von dem ersten Sensor für Spannungsrauschen eine Angabe des ersten Spannungseinbruchs empfängt und ein globales Rauschminderungsverfahren in dem Prozessorkern einschließlich der ersten und der zweiten Einheit umsetzt; undeine erste lokale Rauschverwaltungskomponente (110), die sich in der ersten Einheit befindet und sich von der globalen Rauschverwaltungskomponente unterscheidet, betriebsfähig für:ein Empfangen, von dem ersten Sensor für Spannungsrauschen, der Angabe des ersten Spannungseinbruchs; undein Umsetzen eines ersten Rauschminderungsverfahrens auf der ersten Einheit.

Description

  • TECHNISCHES GEBIET
  • Die Offenbarung des Erfindungsgegenstands betrifft eine Reduzierung oder Minderung von On-Chip-Versorgungsrauschspannung und insbesondere eine Reduzierung oder Minderung von On-Chip-Versorgungsrauschspannung unter Verwendung von lokalen Detektionsschleifen in einem Prozessorkern.
  • HINTERGRUND
  • Integrierte Schaltungen (z.B. Prozessoren) können Leistung von einer Energiequelle wie beispielsweise einer Stromquelle erhalten, um eine Quellenspannung für die zugehörige Schaltungsanordnung bereitzustellen. Die Strommenge und die Menge der Schaltungsbelastung können von einer Betriebsgeschwindigkeit der zugehörigen Schaltungsanordnung und der Versorgungspannung abhängen. Aufgrund der aktiven Natur der Schaltungsanordnungen kann die Schaltungsbelastung unterschiedlich sein, was dazu führen kann, dass ein Versorgungsspannungspegel abfällt oder unter einen definierten Spannungspegel fällt. Der Spannungsabfall von dem definierten Spannungspegel wird als „Spannungseinbruch“ bezeichnet. Zum Beispiel kann Versorgungsspannungsrauschen von der Energiequelle generiert werden und kann ferner zu der zugehörigen Schaltungsanordnung übertragen werden, was Spannungseinbrüche in verschiedenen Pfaden oder Einheiten eines Prozessor verursachen kann. Der Spannungseinbruch (oder mehr als ein Spannungseinbruch) kann sich auf die Geschwindigkeit auswirken, mit der der Prozessor arbeitet.
  • Daher besteht im Stand der Technik ein Bedarf, sich mit dem vorgenannten Problem zu befassen.
  • Die US 2013 / 0 049 828 A1 betrifft eine Wechselstromversorgungsrauschunterdrückung für einen 3D-Chipstapel mit zwei oder mehr Schichten. Auf jeder der Schichten ist jeweils eine aus einer Vielzahl von Stromverteilungsschaltungen und eine aus einer Vielzahl von Taktverteilungsschaltungen angeordnet. Der Wechselstromversorgungsrauschunterdrückung umfasst eine Vielzahl von Spannungseinbruch-Sensoren und eine Vielzahl von Schrägsteller. Die mehreren Spannungseinbruch-Sensoren dienen zur Erfassung von Wechselstromversorgungsrauschen in den mehreren Stromverteilungsschaltungen. Ein oder mehrere Spannungseinbruch-Sensoren sind jeweils auf mindestens einigen der Schichten angeordnet. Die mehreren Schrägsteller dienen zur Verzögerung eines oder mehrerer Taktsignale, die von den mehreren Taktverteilungsschaltungen bereitgestellt werden, in Abhängigkeit von der Stärke des Wechselstromversorgungsrauschens. Jeder Schrägsteller ist jeweils auf mindestens einigen der Schichten angeordnet.
  • Die US 2007 / 0 283 172 A1 betrifft ein System zur Abschwächung des Rauschverhaltens von Stromversorgungs- und Stromverteilungssystemen durch Drosselung von Ausführungseinheiten auf der Grundlage der Spannungserfassung in einer Schaltung. Eine Erfassungseinheit erfasst die Spannung einer Schaltung. Die Erfassungseinheit bestimmt, ob die Ausführung einer anderen Ausführungseinheit dazu führt, dass die Schaltungsspannung unter einen Schwellenwert fällt. Wenn festgestellt wird, dass die Ausführung einer anderen Ausführungseinheit dazu führt, dass die Schaltungsspannung unter den Schwellenwert fällt, wird die Ausführungseinheit gedrosselt.
  • Die US 6 842 027 B2 betrifft eine On-Die-Rauscherkennungsschaltung, die einen oder mehrere Spannungsrauschsensoren und einen oder mehrere zugehörige Komparatoren umfasst. Der Spannungsrauschsensor umfasst eine Schaltung mit Bauelementen, die so aufgebaut sind, dass sie einen anfänglichen Spannungspegel von Knoten zwischen den Bauelementen auf bestimmte Pegel einstellen. Die Knoten sind gepaart, wobei der Anfangspegel des einen Knotens über dem Anfangspegel des anderen Knotens im Paar liegt. Die Vorrichtungen sind so aufgebaut, dass sie die Anfangsspannungspegel der Knoten jedes Paares so positionieren, dass das Auftreten von Rauschen oberhalb einer vordefinierten Schwellenspannung bewirkt, dass sich mindestens einer der Spannungspegel an dem Knotenpaar dem anderen annähert und ihn übersteigt. Der Komparator überwacht die Spannungspegel jedes Knotenpaares und erzeugt ein Auslösesignal, wenn er feststellt, dass die Spannungspegel an einem Knotenpaar einander übersteigen.
  • Die US 9 164 563 B2 betrifft einen Ansatz zur Minderung des Stromversorgungsrauschens in einem Prozessor. In einem Aspekt umfasst der Ansatz eine zentrale Recheneinheit, die operativ mit dem Prozessor verbunden ist, um Programmoperationen auszuführen. Der Ansatz umfasst ferner eine Kalibrierungsschaltung, die geeignet ist, einen ersten Schwellenwert auf dem Prozessor zu bestimmen, der für einen dynamisch durchgeführten Vergleich unter Verwendung einer Erfassungsschaltung verwendet wird. Eine Erfassungsschaltung, die geeignet ist, den Systembetrieb des Prozessors dynamisch zu überwachen und anzuzeigen, wenn der erste Schwellenwert verletzt wird, und eine Zählschaltung, die geeignet ist, ein Einbrechen der Spannung zu verhindern, wenn eine oder mehrere Spannungserfassungsmessungen den ersten Schwellenwert verletzen, sind ebenfalls vorgesehen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Der Erfindung liegt die Aufgabe zugrunde eine Einheit, ein Verfahren, ein Computerprogrammprodukt und ein Computerprogramm zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens mit verbesserter Zuverlässigkeit zu schaffen. Diese Aufgabe wurde durch die Merkmale der unabhängigen Ansprüche gelöst. Ausführungsformen sind in den abhängigen Ansprüchen angegeben.
  • In einem ersten Beispiel wird eine Einheit zum Ermöglichen einer Reduzierung von On-Chip-Versorgungsspannungsrauschen bereitgestellt, aufweisend: einen ersten Sensor für Spannungsrauschen, der sich auf einer ersten Einheit eines Prozessorkerns befindet, wobei der erste Sensor für Spannungsrauschen einen ersten Spannungseinbruch auf der ersten Einheit erkennt, und wobei der Prozessorkern in die erste Einheit und eine zweite Einheit geteilt ist; eine globale Rauschverwaltungskomponente, die sich in dem Prozessorkern befindet und die von dem ersten Sensor für Spannungsrauschen eine Angabe des ersten Spannungseinbruchs empfängt; und eine erste lokale Rauschverwaltungskomponente, die sich in der ersten Einheit befindet, betriebsfähig für: ein Empfangen, von dem ersten Sensor für Spannungsrauschen, der Angabe des ersten Spannungseinbruchs; und ein Umsetzen eines ersten Rauschminderungsverfahrens auf der ersten Einheit.
  • In einem weiteren Beispiel wird ein durch einen Computer umgesetztes Verfahren zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens bereitgestellt, aufweisend: ein Erkennen, durch einen Prozessorkern, eines Spannungseinbruchs auf einem ersten Bereich des Prozessorkerns; ein Übertragen, durch den Prozessorkern, von Spannungseinbruchinformationen zu einem lokalen Controller, der sich in dem ersten Bereich befindet, und zu einem globalen Controller, der sich in dem Prozessorkern befindet; und ein Anwenden, durch den Prozessorkern, einer ersten Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns in Reaktion auf eine lokale Anweisung, die von dem lokalen Controller empfangen wurde, wobei die lokale Anweisung eine Angabe der ersten Minderungsgegenmaßnahme aufweist.
  • In einem Beispiel kann ein durch einen Computer umgesetztes Verfahren ein Erkennen, durch einen Prozessorkern, eines Spannungseinbruchs auf einem ersten Bereich des Prozessorkerns aufweisen. Das durch einen Computer umgesetzte Verfahren kann auch ein Übertragen, durch den Prozessorkern, von Spannungseinbruchinformationen zu einem lokalen Controller, der sich in dem ersten Bereich befindet, und zu einem globalen Controller, der sich in dem Prozessorkern befindet, aufweisen. Ferner kann das durch einen Computer umgesetzte Verfahren ein Anwenden, durch den Prozessorkern, einer ersten Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns in Reaktion auf eine lokale Anweisung aufweisen, die von dem lokalen Controller empfangen wurde. Die lokale Anweisung kann eine Angabe der ersten Minderungsgegenmaßnahme aufweisen.
  • In einem weiteren Beispiel kann eine Einheit einen ersten Sensor für Spannungsrauschen aufweisen, der sich auf einer ersten Einheit eines Prozessorkerns befindet. Der erste Sensor für Spannungsrauschen kann einen ersten Spannungseinbruch auf der ersten Einheit erkennen. Ferner kann der Prozessorkern in die erste Einheit und eine zweite Einheit geteilt werden. Die Einheit kann auch eine globale Rauschverwaltungskomponente aufweisen, die sich in dem Prozessorkern befindet und die von dem ersten Sensor für Spannungsrauschen eine Angabe des ersten Spannungseinbruchs empfängt. Ferner kann die Einheit eine erste lokale Rauschverwaltungskomponente aufweisen, die sich in der ersten Einheit befindet, und die von dem ersten Sensor für Spannungsrauschen die Angabe des ersten Spannungseinbruchs empfängt und ein erstes Rauschminderungsverfahren auf der ersten Einheit umsetzt.
  • In einem weiteren Beispiel kann ein Computerprogrammprodukt, das eine Reduzierung von On-Chip-Versorgungsspannungsrauschen ermöglicht, ein durch einen Computer lesbares Speichermedium aufweisen, auf dem Programmanweisungen verkörpert sind. Die Programmanweisungen können durch einen Prozessorkern ausführbar sein. Die Programmanweisungen können den Prozessorkern veranlassen, einen ersten Spannungseinbruch auf einem ersten Segment des Prozessorkerns zu erkennen. Die Programmanweisungen können den Prozessorkern auch veranlassen, eine erste Angabe des ersten Spannungseinbruchs zu einer lokalen Rauschverwaltungseinheit und einer allgemeinen Rauschverwaltungseinheit zu übertragen. Die lokale Rauschverwaltungseinheit kann dem ersten Segment des Prozessorkerns zugehörig sein. Ferner können die Programmanweisungen den Prozessorkern veranlassen, eine erste Sequenz von Anweisungen auf Grundlage der ersten Angabe des ersten Spannungseinbruchs auszuführen. Die erste Sequenz von Anweisungen kann von der lokalen Rauschverwaltungseinheit empfangen werden und kann sich auf eine Minderungsgegenmaßnahme beziehen, die dem ersten Spannungseinbruch zugehörig ist.
  • Figurenliste
  • Im Folgenden werden Ausführungsformen der vorliegenden Erfindung allein zu Beispielzwecken unter Bezugnahme auf die begleitenden Zeichnungen beschrieben, wobei:
    • 1 ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems veranschaulicht, das eine On-Chip-Rauschreduzierung und/oder -minderung der Versorgungsspannung gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht.
    • 2 eine beispielhafte, nicht einschränkende Darstellung einer Spannungseinbrucherkennung und -minderung veranschaulicht, die eine Verzögerung oder einen zeitlichen Abstand zwischen einem Erkennen des Spannungseinbruchs und einer Umsetzung von Minderungsverfahren für eine globale Steuerschleife aufweist.
    • 3 ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems veranschaulicht, das eine Umsetzung von einem oder mehreren korrigierenden Verfahren in Reaktion auf einen oder mehrere Spannungseinbrüche, die in einem Prozessorkern erkannt werden, gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht.
    • 4 einen Ablaufplan eines beispielhaften, nicht einschränkenden Systems veranschaulicht, das eine On-Chip-Rauschreduzierung und/oder -minderung der Versorgungsspannung unter Verwendung von mehreren Detektions-/Minderungsschleifen pro Kern gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht.
    • 5 ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems veranschaulicht, das zur Erkennung und Minderung von Spannungseinbruch gemäß einer oder mehreren hierin beschriebenen Ausführungsformen verwendet wird.
    • 6 einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens veranschaulicht, das eine On-Chip-Rauschreduzierung und/oder - minderung der Versorgungsspannung unter Verwendung von lokalen Detektionsschleifen gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht.
    • 7 einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens gemäß einer oder mehreren hierin beschriebenen Ausführungsformen veranschaulicht, das eine globale Anweisung auf Grundlage einer Angabe umsetzt, dass eine lokale Anweisung einen Spannungseinbruch nicht beseitigt hat.
    • 8 einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens gemäß einer oder mehreren hierin beschriebenen Ausführungsformen veranschaulicht, das mehrere Minderungsgegenmaßnahmen zum Reduzieren/Mindern von On-Chip-Versorgungsspannungsrauschen umsetzt.
    • 9 einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens gemäß einer oder mehreren hierin beschriebenen Ausführungsformen veranschaulicht, das ein On-Chip-Versorgungsspannungsrauschen reduziert/mindert.
    • 10 ein Blockschaubild einer beispielhaften, nicht einschränkenden Betriebsumgebung veranschaulicht, in der eine oder mehrere hierin beschriebene Ausführungsformen ermöglicht werden können.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende ausführliche Beschreibung dient nur zur Veranschaulichung und soll keinesfalls Ausführungsformen und/oder eine Anwendung oder Verwendungen von Ausführungsformen einschränken. Ferner ist keine Einschränkung durch ausdrückliche oder implizierte Informationen beabsichtigt, die in den vorhergehenden Abschnitten zu Hintergrund oder Kurzdarstellung und/oder im folgenden Abschnitt „Ausführliche Beschreibung“ dargelegt werden.
  • Im Folgenden werden eine oder mehrere Ausführungsformen unter Bezugnahme auf die Zeichnungen beschrieben, wobei durchgehend gleiche Bezugszeichen verwendet werden, um auf gleiche Elemente zu verweisen. In der folgenden Beschreibung werden zu Erläuterungszwecken zahlreiche spezifische Details dargelegt, um ein gründlicheres Verständnis der einen oder der mehreren Ausführungsformen bereitzustellen. Es ist in verschiedenen Fällen jedoch offensichtlich, dass die eine oder die mehreren Ausführungsformen ohne diese spezifischen Details ausgeübt werden können.
  • Integrierte Schaltungen (z.B. Prozessoren) können Energie von einer Energiequelle wie beispielsweise einer Stromquelle erhalten, um eine Quellenspannung für die zugehörige Schaltungsanordnung bereitzustellen. Die Strommenge und die Menge der Schaltungsbelastung können von einer Arbeitsgeschwindigkeit der zugehörigen Schaltungsanordnung und der Versorgungspannung abhängen. Aufgrund der aktiven Natur der Schaltungsanordnungen kann die Schaltungsbelastung unterschiedlich sein, was dazu führen kann, dass ein Versorgungsspannungspegel abfällt oder unter einen definierten Spannungspegel fällt. Der Spannungsabfall von dem definierten Spannungspegel wird als „Spannungseinbruch“ bezeichnet. Zum Beispiel kann Versorgungsspannungsrauschen von der Energiequelle generiert werden und kann ferner zu der zugehörigen Schaltungsanordnung verbreitet werden, was Spannungseinbrüche in verschiedenen Pfaden oder Einheiten eines Prozessors verursachen kann. Der Spannungseinbruch (oder mehr als ein Spannungseinbruch) kann sich auf die Geschwindigkeit auswirken, mit der der Prozessor arbeitet.
  • Die verschiedenen hierin erörterten Aspekte betreffen ein Ermöglichen einer Reduzierung und/oder Minderung der Auswirkung eines On-Chip-Versorgungsspannungsrauschens, indem Zeitablauffehler im Fall von großen und plötzlichen Anstiegen von Versorgungsstrom verhindert werden. Die Zeitablauffehler können aufgrund einer Verzögerungszeit zwischen einem Erkennen eines Spannungseinbruchs und dem Zeitpunkt eines Anwendens einer Minderungsgegenmaßnahme zum Ausgleichen des Spannungseinbruchs auftreten. Somit können die offenbarten Aspekte für einen Prozessorkern eine oder mehrere innere oder lokale (z.B. schnelle) Steuerschleifen in einem ersten Abschnitt der ersten Einheit des Prozessorkerns und eine oder mehrere äußere oder globale (z.B. langsame) Steuerschleifen in dem Prozessorkern bereitstellen. Die lokale(n) Steuerschleife(n) und/oder globale(n) Steuerschleife(n) können verwendet werden, um verschiedene gefährliche Ereignisse auf der Spannungsschiene der Stromversorgung zu erkennen. Ferner können die eine oder die mehreren Steuerschleifen (lokal und/oder global) auf eine andere Weise wie andere Steuerschleifen reagieren (oder auf dieselbe Weise wie andere Schleifen in einigen Umsetzungen), um eine Auswirkung auf die Leistung durch eine Reduzierung/Minderung eines Spannungseinbruchs zu unterdrücken oder zu mindern. Dementsprechend können die eine oder die mehreren hierin bereitgestellten Ausführungsformen eine Reduzierung oder Minderung einer Leistungsaufnahme eines Prozessor-Chips ermöglichen, indem die angewendete Spannungsmarge verringert wird.
  • 1 veranschaulicht ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems 100, das eine On-Chip-Rauschreduzierung und/oder -minderung der Versorgungsspannung gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht. Aspekte der Systeme (z.B. das System 100 und dergleichen), Vorrichtungen oder Prozesse, die in dieser Offenbarung erklärt werden, können eine oder mehrere durch eine Maschine ausführbare Komponenten bilden, die in der oder den Maschinen verkörpert sind, die z.B. in einem oder mehreren durch einen Computer lesbaren Medium bzw. Medien verkörpert sind, die einer oder mehreren Maschinen zugehörig sind. Wenn eine bzw. mehrere derartige Komponenten durch die eine oder die mehreren Maschinen, z.B. Computer, Datenverarbeitungseinheit(en), virtuelle(n) Maschine(n) usw. ausgeführt wird bzw. werden, kann bzw. können sie die Maschine bzw. Maschinen veranlassen, die beschriebenen Arbeitsvorgänge auszuführen.
  • In verschiedenen Ausführungsformen kann das System 100 in jedem Typ von Komponente, Machine, Einheit, Einrichtung, Vorrichtung und/oder Gerät eingesetzt werden, die bzw. das zu einem effektiven und/oder operativen Datenaustausch mit einem drahtgebundenen und/oder drahtlosen Netzwerk fähig ist. Komponenten, Maschinen, Vorrichtungen, Einheiten, Einrichtungen und/oder Geräte, die das System 100 aufweisen kann, können Tablet-Datenverarbeitungseinheiten, Handheld-Einheiten, Datenverarbeitungsmaschinen und/oder Datenbanken der Serverklasse, Laptop-Computer, Notebook-Computer, Desktop-Computer, Mobiltelefone, Smartphones, Haushaltsgeräte und/oder Ausstattung, industrielle und/oder gewerbliche Einheiten, Handheld-Einheiten, digitale Assistenten, Multimedia-/Internet-fähige Telefone, Multimedia-Player und dergleichen umfassen.
  • Wie veranschaulicht, kann das System 100 einen Prozessorkern 102 aufweisen, der in eine oder mehrere Einheiten geteilt werden kann, die als eine erste Einheit 104 und eine zweite Einheit 106 veranschaulicht werden. Die erste Einheit 104 kann einen ersten Sensor für Spannungsrauschen 108 und einen ersten lokalen Controller 110 aufweisen. Die zweite Einheit 106 kann einen zweiten Sensor für Spannungsrauschen 112 und einen zweiten lokalen Controller 114 aufweisen. Ferner kann der Prozessorkern 102 einen globalen Controller 116 und mindestens einen Arbeitsspeicher 118 aufweisen. Der globale Controller 116 kann sich an einer zentralen Stelle in dem Prozessorkern 102 befinden. Der globale Controller 116 kann sich zum Beispiel an einem Rand des Prozessorkerns 102 befinden.
  • Der erste Sensor für Spannungsrauschen 108 kann einen ersten Spannungseinbruch auf der ersten Einheit 104 erkennen. Auf Grundlage der Erkennung des ersten Spannungseinbruchs kann der erste Sensor für Spannungsrauschen 108 Informationen, die den ersten Spannungseinbruch betreffen, zu dem ersten lokalen Controller 110 und zu dem globalen Controller 116 übertragen. Zum Beispiel kann der erste Sensor für Spannungsrauschen 108 bei oder nach einem Erkennen des ersten Spannungseinbruchs ein erstes Signal über eine lokale Steuerschleife zu dem ersten lokalen Controller 100 senden. Ferner kann der erste Sensor für Spannungsrauschen 108 über eine globale Steuerschleife ein zweites Signal zu dem globalen Controller 116 senden. Die lokale Steuerschleife bleibt für die erste Einheit 104 intern (z.B. muss sie keine Schnittstelle mit anderen Einheiten des Prozessorkerns bilden). Aufgrund der lokalen Natur der lokalen Steuerschleife kann der erste lokale Controller 110 die Informationen von dem ersten lokalen Controller 110 in einem kürzeren Zeitraum empfangen als Informationen brauchen würden, um von dem globalen Controller 116 empfangen zu werden. Auf Grundlage dieses kürzeren Zeitraums kann der erste lokale Controller 110 ein erstes Rauschminderungsverfahren umsetzen, das die Zeit eines zeitlichen Abstands zwischen einem Erkennen des ersten Spannungseinbruchs und einem Umsetzen eines Rauschminderungsverfahrens verringern kann. Das erste Rauschminderungsverfahren, das durch den ersten lokalen Controller 110 umgesetzt wird, kann auf den zweiten lokalen Controller 114 und den globalen Controller 116 übertragen werden.
  • Der globale Controller 116 kann bei oder nach Empfangen der Angabe von dem ersten Sensor für Spannungsrauschen 108 bestimmen, ob ein globales Gegenmaßnahmeverfahren in dem Prozessorkern 102 umgesetzt werden sollte. Zum Beispiel kann die Bestimmung auf Grundlage dessen erfolgen, ob das durch den ersten lokalen Controller 110 umgesetzte lokale Minderungsverfahren den erkannten Spannungseinbruch gelöst hat. Falls gelöst, kann der globale Controller 116 die empfangene Angabe wahlweise ignorieren. Wurde der Spannungseinbruch jedoch nicht gelöst, kann der globale Controller 116 wahlweise ein globales Verfahren für eine Reduzierungs-/Minderungsgegenmaßnahme auf der ersten Einheit 104, auf der zweiten Einheit 106, auf anderen Abschnitten des Prozessorkerns oder Kombinationen davon umsetzen. Gemäß einigen Umsetzungen kann das globale Verfahren für eine Reduzierungs-/Minderungsgegenmaßnahme allgemein für die Einheiten in dem Prozessorkern 102 gelten. Wenn die Taktfrequenz zum Beispiel um 50% sinkt, kann das globale Verfahren für eine Reduzierungs-/Minderungsgegenmaßnahme eine Anweisung sein, die Aktivität des Kerns auf 25% zu drosseln. Gemäß einigen Umsetzungen kann das globale Verfahren für eine Reduzierungs-/Minderungsgegenmaßnahme jedoch für die verschiedenen Einheiten in dem Prozessorkern 102 unterschiedlich sein. Zum Beispiel kann eine erste Gruppe von Anweisungen, die dem ersten lokalen Controller 110 bereitgestellt werden, sich von einer zweiten Gruppe von Anweisungen unterscheiden, die dem zweiten lokalen Controller 114 bereitgestellt werden.
  • Die Bestimmung, ob der Spannungseinbruch gelöst worden ist, kann auf einer weiteren Angabe beruhen, die von dem ersten Sensor für Spannungsrauschen 108 empfangen wird. Wenn zum Beispiel Spannungsrauschen durch den ersten Sensor für Spannungsrauschen 108 erkannt wird, können die Informationen zu dem ersten lokalen Controller 110 und dem globalen Controller 116 übertragen werden. In einigen Fällen können die Informationen angeben, dass die erkannte Spannung über dem definierten Spannungspegel liegt (z.B. es wird kein Spannungseinbruch erkannt). Wenn der globale Controller 116 eine Angabe eines Spannungseinbruchs auf der ersten Einheit 104 empfängt und anschließend eine weitere Angabe empfängt, dass auf der ersten Einheit 104 kein Spannungseinbruch vorliegt, kann der globale Controller 116 bestimmen, dass keine weitere Maßnahme erforderlich ist.
  • Die durch den globalen Controller 116 umgesetzten globalen Verfahren zur Reduzierung/Minderung können verschiedene Verfahren sein. Zum Beispiel kann ein erstes globales Verfahren zur Reduzierung/Minderung auf der ersten Einheit 104 umgesetzt werden, ein zweites Verfahren zur Reduzierung/Minderung kann auf der zweiten Einheit 106 umgesetzt werden, und ein drittes Verfahren zur Reduzierung/Minderung kann auf einem anderen Abschnitt des Prozessorkerns 102 umgesetzt werden. Das erste Verfahren zur Reduzierung/Minderung und das zweite Verfahren zur Reduzierung/Minderung können dasselbe Verfahren zur Reduzierung/Minderung oder verschiedene Verfahren zur Reduzierung/Minderung sein. Ferner kann das dritte Verfahren zur Reduzierung/Minderung dasselbe wie das erste Verfahren zur Reduzierung/Minderung oder das zweite Verfahren zur Reduzierung/Minderung sein, oder es kann von dem ersten Verfahren zur Reduzierung/Minderung und dem zweiten Verfahren zur Reduzierung/Minderung verschieden sein.
  • Gemäß einigen Umsetzungen kann der zweite Sensor für Spannungsrauschen 112 einen zweiten Spannungseinbruch auf der zweiten 106 Einheit erkennen. Somit kann der zweite Sensor für Spannungsrauschen 112 Informationen in Bezug auf den zweiten Spannungseinbruch über eine lokale Steuerschleife zu dem zweiten lokalen Controller 114 (z.B. lokal für die zweite Einheit 106) und über die globale Steuerschleife zu dem globalen Controller 116 senden. Dementsprechend kann der zweite lokale Controller 114 ein zweites Rauschminderungsverfahren auf der zweiten Einheit 106 umsetzen. Informationen in Bezug auf das zweite Rauschminderungsverfahren können auf den ersten lokalen Controller 110 und den globalen Controller 116 übertragen werden. Es wird angemerkt, dass der erste Spannungseinbruch (durch den ersten Sensor für Spannungsrauschen 108 erkannt) und der zweite Spannungseinbruch (durch den zweiten Sensor für Spannungsrauschen 112 erkannt) gleichzeitig oder zu verschiedenen Zeitpunkten erkannt werden können. Ferner können das erste Rauschminderungsverfahren und das zweite Rauschminderungsverfahren ähnliche Verfahren oder verschiedene Verfahren sein.
  • Wenn das zweite Rauschminderungsverfahren den Spannungseinbruch auf der zweiten Einheit 106 löst, kann der globale Controller 116 wahlweise die Angabe ignorieren, die von dem zweiten Sensor für Spannungsrauschen 112 empfangen wurde. Wenn der Spannungseinbruch jedoch nicht gelöst wurde, kann der globale Controller 116 ein oder mehrere globale Verfahren zur Reduzierung/Minderung global oder auf einem oder mehreren Abschnitten des Prozessorkerns 192 umsetzen (z.B. der ersten Einheit 10, der zweiten Einheit 10, einer anderen Einheit oder einem anderen Abschnitt des Prozessorkerns 102).
  • Der mindestens eine Arbeitsspeicher 118 kann durch einen Computer ausführbare Komponenten und/oder durch einen Computer ausführbare Anweisungen speichern, die durch den Prozessorkern 102 umgesetzt werden können. Der mindestens eine Arbeitsspeicher 118 kann Protokolle speichern, die einem Umsetzen einer On-Chip-Rauschreduzierung/-minderung der Versorgungsspannung zugehörig sind, wie hierin erörtert. Ferner kann der mindestens eine Arbeitsspeicher 118 eine Aktion zum Steuern eines Datenaustauschs zwischen der ersten Einheit 104, der zweiten Einheit 106 und dem globalen Controller 116 ermöglichen, sodass das System 100 gespeicherte Protokolle und/oder Algorithmen zum Erzielen einer On-Chip-Rauschreduzierung/-minderung der Versorgungsspannung verwenden kann, wie hierin beschrieben.
  • Wie oben erörtert, können der erste lokale Controller 110 in der ersten Einheit 104 und/oder der zweite lokale Controller 114 in der zweiten Einheit 106 eine Verzögerung oder einen zeitlichen Abstand zwischen einem Erkennen des jeweiligen Spannungseinbruchs und einer Umsetzung eines jeweiligen lokalen Rauschminderungsverfahrens verringern. 2 veranschaulicht zum Beispiel eine beispielhafte, nicht einschränkende Darstellung 200 einer Spannungseinbrucherkennung und -minderung, die eine Verzögerung oder einen zeitlichen Abstand zwischen einem Erkennen des Spannungseinbruchs und einer Umsetzung von Minderungsverfahren für eine globale Steuerschleife aufweist. Wenn der von einem Prozessor in Anspruch genommene Versorgungsstrom plötzlich ansteigt, kann auf der Spannungsversorgung ein großer Abfall erzeugt werden. Wenn die Spannungsversorgung unter einen bestimmten Spannungswert sinkt, kann die Funktionalität des Prozessors beeinträchtigt werden.
  • Wie hierin erörtert, kann es im Fall einer Verwendung einer globalen Steuerschleife zum Informieren des globalen Controllers (z.B. des globalen Controllers 116 von 1) über den erkannten Spannungseinbruch (relativ) lange dauern, bis die Informationen die große Entfernung über den Prozessorkern überquert haben. Ferner kann ein globales Gegenmaßnahmeverfahren über einen langen Zeitraum angewendet werden, wodurch ein hohes Maß an Leistungsbeeinträchtigung verursacht werden kann.
  • Ein Versorgungsspannungspegel 202 wird auf der vertikalen Achse der Darstellung 200 veranschaulicht, und die Zeit 204 wird auf der horizontalen Achse veranschaulicht. Die geplottete Linie 206 veranschaulicht einen Versorgungsspannungswert für einen Prozessorkern (oder einen Abschnitt des Prozessorkerns). Da der Versorgungsspannungswert überwacht wird, kann ein Spannungseinbruch erkannt werden, wie bei 208 angegeben. Auf Grundlage des Erkennens kann eine Angabe des Spannungseinbruchs über eine globale Schleife zu dem globalen Controller übertragen werden, der Anweisungen für eine Reduzierung/Minderung des Spannungseinbruchs bereitstellen kann. Das Reduzierungs-/Minderungsverfahren kann wie bei 210 angegeben nach einer Zeitverzögerung umgesetzt werden. Dementsprechend ist ein zeitlicher Abstand 212 zwischen dem Erkennen eines Spannungseinbruchs (bei 208) und Zeitpunkt eines Anwendens der Reduzierung/Minderung (bei 210) vorhanden. Der zeitliche Abstand 212 (bzw. die Zeitverzögerung) kann eine Dauer aufweisen, die lang genug ist, um den Prozessor zu verlangsamen, was an der Einheit bemerkbar sein kann. Der zeitliche Abstand 212 kann in Abhängigkeit von der Zeit eingeführt werden, die die Spannungsschleifenangabe zum Durchqueren des Sensors bis zum globalen Controller braucht. Der zeitliche Abstand 212 enthält auch die Zeit, die die Anweisungen für ein Durchqueren des globalen Controllers und ein Anwenden auf die jeweilige Einheit benötigen. Ferner kann der zeitliche Abstand 212 auf die Signale, die übergroße Entfernungen übertragen werden, und die Verarbeitungszeit zurückzuführen sein, die zum Kombinieren vieler Signale aufgewendet wird, die von mehreren Sensoren kommen (z.B. dem ersten Sensor für Spannungsrauschen 108, dem zweiten Sensor für Spannungsrauschen 112 usw.). Während dieser Verzögerung fällt die Versorgungsspannung weiter ab, und die Funktionalität von empfindlichen Strukturen, wie beispielsweise Arrays, könnte beeinträchtigt werden. Die verschiedenen hierin bereitgestellten Aspekte verringern die Verzögerung durch die Umsetzung von lokalen Controllern und lokalen Steuerschleifen, um ein oder mehrere lokale Rauschminderungsverfahren umzusetzen.
  • 3 veranschaulicht ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems 300, das eine Umsetzung von einer oder mehreren korrigierenden Verfahren in Reaktion auf einen oder mehrere Spannungseinbrüche, die in einem Prozessorkern erkannt werden, gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Das System 300 kann eine oder mehrere der Komponenten und/oder Funktionalität des Systems 100 aufweisen und umgekehrt. Der erste Sensor für Spannungsrauschen 108 kann eine Senderkomponente 302 aufweisen, die eine oder mehrere Angaben eines erkannten Spannungseinbruchs über eine lokale Steuerschleife 304 und über eine globale Steuerschleife 306 senden kann. Die eine bzw. die mehreren Angaben können von der Senderkomponente 302 gleichzeitig gesendet werden. Zum Beispiel kann die Senderkomponente 302 bei oder nach einem Senden der Angabe durch die Senderkomponente 302 über die lokale Steuerschleife 304 die Angabe über die globale Steuerschleife 306 senden.
  • Der erste lokale Controller 110 kann die Angabe über eine Datenaustauschkomponente 308 empfangen. Der Empfang durch die Datenaustauschkomponente 308 über die lokale Steuerschleife 304 kann schneller als ein Empfang der Angabe durch den globalen Controller 116 über die globale Steuerschleife 306 über ein Datenaustauschmodul 310 sein. Da die Angabe, die über die lokale Steuerschleife 304 übermittelt wird, zum Beispiel in der ersten Einheit 104 verbleibt, kann die Angabe aufgrund der unmittelbaren Nähe zwischen dem ersten Sensor für Spannungsrauschen 108 und dem ersten lokalen Controller 110 schneller empfangen werden. Andererseits muss die Angabe über die globale Steuerschleife 306 die erste Einheit 104 zu einem anderen Abschnitt des Prozessorkerns 102 (z.B. zu einem Speicherort des globalen Controllers 116) durchqueren. Daher kann die Angabe zu dem globalen Controller 116 länger brauchen, und eine weitere Verzögerung kann auf Grundlage der Zeitspanne eingebracht werden, die die Anweisung braucht, um von dem globalen Controller 116 auf der ersten Einheit 104 empfangen zu werden.
  • Zumindest teilweise auf Grundlage der auf der Datenaustauschkomponente 308 empfangenen Angabe kann eine Umsetzungskomponente 312 wahlweise eine oder mehrere lokale Reduzierungs-/Minderungsgegenmaßnahmen auf die erste Einheit 104 anwenden. Der erste Sensor für Spannungsrauschen 108 kann den Spannungspegel in der ersten Einheit während und nach einer Umsetzung der einen oder der mehreren lokalen Reduzierungs-/Minderungsgegenmaßnahmen weiterhin überwachen. Den überwachten weiteren Spannungspegeln zugehörige Informationen können durch die Senderkomponente 302 über die lokale Steuerschleife 304 (z.B. zu dem ersten Controller 110) und über die globale Steuerschleife 306 (z.B. zu dem globalen Controller 116) gesendet werden.
  • Wenn die eine oder die mehreren lokalen Reduzierungs-/Minderungsgegenmaßnahmen, die wahlweise durch die Umsetzungskomponente 312 angewendet werden, den ursprünglich erkannten Spannungseinbruch gelöst haben und kein anschließende Spannungseinbruch erkannt wird, kann eine Bestimmungskomponente 314 auf dem globalen Controller 116 bestimmen, dass keine weitere Maßnahme erforderlich ist. Wenn die eine oder die mehreren Reduzierungs-/Minderungsgegenmaßnahmen den ursprünglich erkannten Spannungseinbruch nicht gelöst haben, oder wenn auf der ersten Einheit ein weiterer Spannungseinbruch erkannt wird (z.B. durch den ersten Sensor für Spannungsrauschen 108 oder durch einen anderen Sensor für Spannungsrauschen in der ersten Einheit 104), kann der globale Controller 116 eine oder mehrere globale Prozeduren umsetzen.
  • Gemäß einer Umsetzung kann der globale Controller 116 eine Anweisungskomponente 316 enthalten, die eine oder mehrere globale Reduzierungs-/Minderungsgegenmaßnahmen bestimmen kann, die in einem oder mehreren Abschnitten des Prozessorkerns 102 umgesetzt werden sollten. Zum Beispiel kann die Anweisungskomponente 316 eine erste globale Reduzierungs-/Minderungsgegenmaßnahme auswählen, die auf die erste Einheit 104 angewendet werden soll. Zusätzlich oder alternativ kann die Anweisungskomponente 316 eine zweite globale Reduzierungs-/Minderungsgegenmaßnahme auswählen, die auf die zweite Einheit 106 angewendet werden soll. Zusätzlich oder alternativ kann die Anweisungskomponente 316 eine anschließende globale Reduzierungs-/Minderungsgegenmaßnahme auswählen, die auf eine anschließende Einheit (nicht gezeigt) angewendet werden soll. Gemäß einigen Umsetzungen kann die Anweisungskomponente 316 bestimmen, dass eine globale Reduzierungs-/Minderungsgegenmaßnahme global, übergreifend über alle Einheiten des Prozessorkerns 102, ausgeführt werden sollte.
  • In einigen Umsetzungen können zwei oder mehrere der ersten globalen Reduzierungs-/Minderungsgegenmaßnahme, der zweiten globalen Reduzierungs-/Minderungsgegenmaßnahme und der anschließenden globalen Reduzierungs-/Minderungsgegenmaßnahme dieselbe globale Reduzierungs-/Minderungsgegenmaßnahme sein. In einigen Umsetzungen können die erste globale Reduzierungs-/Minderungsgegenmaßnahme, die zweite globale Reduzierungs-/Minderungsgegenmaßnahme und die anschließende globale Reduzierungs-/Minderungsgegenmaßnahme jedoch verschiedene globale Reduzierungs-/Minderungsgegenmaßnahmen sein.
  • Die globalen Reduzierungs-/Minderungsgegenmaßnahmen, die durch die Anweisungskomponente 316 bereitgestellt werden, überschreiben eine oder mehrere lokale Reduzierungs-/Minderungsgegenmaßnahmen, die lokal auf die verschiedenen Einheiten (z.B. der ersten Einheit 104, der zweiten Einheit 106, der anschließenden Einheit) des Prozessorkerns 102 angewendet werden. Zum Beispiel wird eine erste lokale Reduzierungs-/Minderungsgegenmaßnahme durch die Umsetzungskomponente 312 angewendet, und eine globale Reduzierungs-/Minderungsgegenmaßnahme wird von der Anweisungskomponente 318 empfangen. In dieser Situation bricht die Umsetzungskomponente 312 die Anwendung der ersten lokalen Reduzierungs-/Minderungsgegenmaßnahme ab und wendet die globale Reduzierungs-/Minderungsgegenmaßnahme an.
  • Es wird angemerkt, obwohl nicht ausdrücklich angegeben, dass die zweite Einheit 106 und anschließende Einheiten (nicht gezeigt) die eine oder mehrere der Komponenten und/oder Funktionalität der ersten Einheit 104 enthalten können. Zum Beispiel kann die zweite Einheit 106 und/oder eine anschließende Einheit jeweilige Senderkomponenten, jeweilige Datenaustauschkomponenten und jeweilige Umsetzungskomponenten enthalten. Ferner können andere Prozessorkerne eines Prozessors eine oder mehrere der Komponenten und/oder Funktionalität des Prozessorkerns 102 enthalten.
  • 4 veranschaulicht einen Ablaufplan eines beispielhaften, nicht einschränkenden Systems 400, das eine On-Chip-Rauschreduzierung und/oder -minderung der Versorgungsspannung unter Verwendung von mehreren Detektions-/Minderungsschleifen pro Kern gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Das System 400 kann eine oder mehrere der Komponenten und/oder Funktionalität des Systems 100, des Systems 300 und umgekehrt aufweisen. Wie veranschaulicht, kann der Prozessorkern 102 zwei oder mehre Einheiten enthalten, veranschaulicht als die erste Einheit 104, die zweite Einheit und eine N-te Einheit 402, wobei N eine Ganzzahl ist. Zum Beispiel kann der Prozessorkern 102 gemäß einigen Umsetzungen drei oder mehr Einheiten aufweisen.
  • Die N-te Einheit 402 kann einen N-ten Sensor für Spannungsrauschen 404 und einen N-ten Controller 406 aufweisen. Wie oben erörtert, kann die N-te Einheit 402 eine oder mehrere der Komponenten und/oder Funktionalität der ersten Einheit 104 enthalten, wie unter Bezugnahme auf 3 veranschaulicht und beschrieben.
  • Die erste Einheit 104 kann eine oder mehrere lokale Steuerschleifen aufweisen (z.B. die lokale Steuerschleife 304). Die zweite Einheit 106 kann eine oder mehrere lokale Steuerschleifen aufweisen, veranschaulicht als eine lokale Steuerschleife 408. Ferner kann die N-te Einheit 402 eine oder mehrere lokale Steuerschleifen aufweisen, veranschaulicht als eine lokale Steuerschleife 410. Außerdem kann die erste Einheit 104 mit dem globalen Controller 116 über die globale Steuerschleife 306 Daten austauschen. Ferner kann die zweite Einheit 106 mit dem globalen Controller 116 über eine globale Steuerschleife 412 Daten austauschen, und die N-te Einheit 402 kann mit dem globalen Controller 116 über eine globale Steuerschleife 414 Daten austauschen.
  • Wie hierin erörtert, können die verschiedenen Aspekte durch ein Integrieren von mehreren inneren (schnellen) Steuerschleifen und äußeren (langsamen) Steuerschleifen von Spannungserkennung/-minderung Abfälle der Versorgungsspannung unterdrücken/mindern und können Zeitablauffehler in einem Prozessorkern (z.B. dem Prozessorkern 102) verhindern/verringern. Zum Beispiel können die mehreren inneren (schnellen) Steuerschleifen die lokale Steuerschleife 304 der ersten Einheit 104, die lokale Steuerschleife 408 der zweiten Einheit 106 und die lokale Steuerschleife 410 der N-ten Einheit 402 enthalten. Wie oben angegeben, können die Einheiten mehr als eine lokale Steuerschleife aufweisen (wie unter Bezugnahme auf 5 im Folgenden ausführlich erörtert wird). Die äußeren (langsamen) Schleifen können die globale Steuerschleife 306, die globale Steuerschleife 412 und die globale Steuerschleife 414 enthalten.
  • Die mehreren inneren (schnellen) Steuerschleifen und die äußeren (langsamen) Steuerschleifen können unabhängige Schleifen sein. Ferner können Schleifen von der einen oder den mehreren Schleifen (lokal und global) konfiguriert sein, um einen oder mehreren Typen von Spannungseinbruchereignissen zu verarbeiten und eine andere Minderungsgegenmaßnahme auszuführen. Unter Verwendung dieser unabhängigen Schleifen können die verschiedenen Aspekte den Leistungsverlust durch die Minderungsgegenmaßnahme von der Erfassung der Spannungseinbrucherkennung entkoppeln. Dies kann eine schnellere und effizientere Erkennung von Spannungseinbruch ermöglichen. Da mehrere Schleifen vorhanden sind, können zum Beispiel verschiedene Typen von Spannungseinbrüchen identifiziert werden, und verschiedene (und potenziell weniger leistungsschädigende) Gegenmaßnahmen können angewendet werden. Ferner kann die Verwendung von unabhängigen lokalen Schleifen, wie hierin erörtert, Effizienzsteigerungen ermöglichen, die zu minimalen Leistungsbeeinträchtigungen führen können.
  • 5 veranschaulicht ein Blockschaubild eines beispielhaften, nicht einschränkenden Systems 500, das zur Erkennung und Minderung von Spannungseinbruch gemäß einer oder mehreren hierin beschriebenen Ausführungsformen verwendet wird. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Das System 500 kann eine oder mehrere der Komponenten und/oder Funktionalität des Systems 100, des Systems 300, des Systems 400 aufweisen und umgekehrt. Wie veranschaulicht, kann der Prozessorkern 102 eine globale Rauschverwaltungskomponente 504 aufweisen (z.B. den globalen Controller 116 von 1). Ferner kann der Prozessorkern 102 in eine oder mehrere Einheiten geteilt werden, wie beispielsweise die erste Einheit 104 (Einheit 1), die zweite Einheit 106 (Einheit 2) und eine dritte Einheit 502 (Einheit 3).
  • In diesem Beispiel können verschiedene Rauschsensor/-schätzfunktionseinheiten in dem Prozessorkern 102 enthalten sein. Sensoren für Versorgungsspannungseinbruch werden in 5 durch die nicht ausgefüllten kleinen Quadrate dargestellt. Zum Beispiel weist die erste Einheit 104 einen Sensor für Versorgungsspannungseinbruch auf (z.B. den ersten Sensor für Spannungsrauschen 108), die zweite Einheit 106 weist einen Sensor für Versorgungsspannungseinbruch auf (z.B. den zweiten Sensor für Spannungsrauschen 112), und die dritte Einheit 502 weist einen Sensor für Versorgungsspannungseinbruch auf (nicht bezeichnet).
  • Im Prozessorkern 102 können auch weitere Rauschsensoren/-schätzfunktionen enthalten sein, die durch die ausgefüllten kleinen Quadrate dargestellt werden. In dem veranschaulichten Beispiel kann die erste Einheit 104 einen weiteren Rauschsensor/eine weitere -schätzfunktion aufweisen, die dritte Einheit 502 weist einen weiteren Rauschsensor/eine weitere -schätzfunktion auf, und der Prozessorkern 102 (der keiner Einheit zugehörig ist) weist einen weiteren Rauschsensor/eine weitere -schätzfunktion auf.
  • Der Prozessorkern 102 kann auch eine globale Rauschverwaltungskomponente 504 aufweisen (z.B. den globalen Controller 116). Ferner kann die erste Einheit 104 eine lokale Rauschverwaltungskomponente 506 (z.B. den ersten lokalen Controller 110) aufweisen, die zweite Einheit 106 kann eine lokale Rauschverwaltungskomponente 508 (z.B. den zweiten lokalen Controller 110) aufweisen, und die dritte Einheit 502 kann eine lokale Rauschverwaltungskomponente 510 aufweisen.
  • Wenn die Rauschsensoren Rauschen oder einen Spannungseinbruch erkennen, können jeweilige Signale zu den lokalen Rauschverwaltungseinheiten und der globalen Rauschverwaltungskomponente 504 übertragen werden. Zum Beispiel weist die zweite Einheit 106 einen Sensor für Versorgungsspannungseinbruch auf. Bei oder nach einem Erkennen eines Spannungseinbruchs kann der Sensor für Versorgungsspannungseinbruch ein erstes Signal zu der lokalen Rauschverwaltungskomponente 508 (z.B. über eine lokale Steuerschleife) und zu der globalen Rauschverwaltungskomponente 504 (z.B. über eine globale Steuerschleife) übertragen, wie durch die von dem Sensor für Versorgungsspannungseinbruch ausgehenden Linien dargestellt. Die lokale Rauschverwaltungskomponente 508 kann ein Signal 512 übertragen, um eine Anweisung für eine Drosselung zu starten. Die globale Rauschverwaltungskomponente 504 kann außerdem ein weiteres Signal 514 übertragen, um eine Anweisung für eine Drosselung zu starten. Das Signal von der lokalen Rauschverwaltungskomponente 508 kann aufgrund des zeitlichen Ablaufs der lokalen Steuerschleife im Vergleich mit der globalen Steuerschleife früher als das Signal von der globalen Rauschverwaltungskomponente 504 bereitgestellt werden, wie hierin erörtert.
  • Ferner kann, wie durch den Sensor für Versorgungspannungseinbruch 516 in der dritten Einheit 502 angegeben, die Signalübertragung 518 von dem Sensor für Versorgungsspannungseinbruch 516 zu der globalen Rauschverwaltungskomponente 504 und nicht zu der lokalen Rauschverwaltungseinheit 510 erfolgen. Zum Beispiel könnte bestimmt werden (was vordefiniert werden kann), dass Geschwindigkeits-Effizienzsteigerungen erzielt werden können, indem das Signal von dem Sensor für Versorgungsspannungseinbruch 516 direkt zu der globalen Rauschverwaltungskomponente 504 statt zu der lokalen Rauschverwaltungseinheit 510 gesendet wird.
  • Wie hierin erörtert, können zusätzlich zu einer langsamen Schleife auf der Kernebene (z.B. die globale Steuerschleife) weitere schnellere Schleifen (z.B. lokale Steuerschleifen) auf einer granularen Ebene, auf verschiedenen Anteilen oder Einheiten des Prozessorkerns 102 vorhanden sein. Die lokalen Steuerschleifen können verschiedene Erkennungs-/Erfassungsverfahren (z.B. kritische Pfadüberwachung (CPM) mit/ohne Flanke, Leistungs-Proxy) und Gegenmaßnahmenziel und -stärke aufweisen.
  • Zum Beispiel und keinesfalls einschränkend können in einem Prozessorkern, der in drei Einheiten geteilt werden kann, drei lokale Schleifen vorhanden sein. Eine erste lokale Schleife kann einer ersten Einheit zugehörig sein, eine zweite lokale Schleife kann einer zweiten Einheit zugehörig sein, und eine dritte lokale Schleife kann einer dritten Einheit zugehörig sein. Für den gesamten Prozessorkern kann auch eine globale Schleife vorhanden sein.
  • Das Signal (oder die Anweisung) auf der ersten lokalen Schleife kann zu einem Drosseln einer Verzweigungsvorhersage auf 25% dienen, indem ein CPM mit Flanke verwendet wird. Das Signal (oder die Anweisung) auf der zweiten lokalen Schleife kann zu einem Drosseln einer Weiterleitungseinheit auf 25% dienen, indem ein CPM mit Flanke verwendet wird. Das Signal (oder die Anweisung) auf der dritten lokalen Schleife kann zu einem Drosseln einer Ausgabe auf 25% dienen, indem ein CPM mit Flanke verwendet wird. Ferner können die lokalen Schleifen die Signale (Anweisungen) zu den anderen lokalen Schleifen und zu der globalen Schleife rundsenden. In Ergänzung zu diesem Beispiel kann die Anweisung auf der globalen Schleife ein Drosseln des gesamten Kerns sein, wenn die der Spannungseinbruch zum Beispiel länger als eine definierte Anzahl von Zyklen bestehen bleibt, wie beispielsweise zwanzig Zyklen (z.B. Low-f-Einbrüche). Die globale Schleife kann lokale Schleifen überschreiben (da die globale Schleife zusätzlich zu der durch den bzw. die Sensoren erkannten Spannungseinbruch durch andere Effekte gesteuert werden kann).
  • Wenn gemäß einigen Umsetzungen ein Spannungseinbruch vorliegt, der nur durch die weniger konservative (aggressivere) Erkennung gekennzeichnet ist, wird nur 1/6 der Kernaktivität gedrosselt. Selbst wenn der Spannungseinbruch ein falsches Positivum ist, kann mit dem weniger konservativen Ansatz ein minimaler Leistungsverluste vorhanden sein.
  • 6 veranschaulicht einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens 600, das eine On-Chip-Rauschreduzierung und/oder -minderung der Versorgungsspannung unter Verwendung von lokalen Detektionsschleifen gemäß einer oder mehreren hierin beschriebenen Ausführungsformen ermöglicht. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Bei Schritt 602 des durch einen Computer umgesetzten Verfahrens 600 kann ein Spannungseinbruch auf einem ersten Bereich eines Prozessorkerns erkannt werden (z.B. über einen ersten Sensor für Spannungsrauschen 108). Zum Beispiel kann ein Prozessor in zwei oder mehr verschiedene Bereiche oder Einheiten geteilt werden. Jeweilige Sensorkomponenten für Spannungsrauschen können in den zwei oder mehr verschiedenen Bereichen enthalten sein. Zum Beispiel kann sich eine erste Sensorkomponente für Spannungsrauschen in einem ersten Bereich befinden, eine zweite Sensorkomponente für Spannungsrauschen kann sich in einem zweiten Bereich befinden, und eine anschließende Sensorkomponente für Spannungsrauschen kann sich in einem anschließenden Bereich befinden. Gemäß einigen Umsetzungen können ein oder mehrere Bereiche zwei oder mehrere Sensorkomponenten für Spannungsrauschen aufweisen. Ferner können Bereiche der zwei oder mehreren Bereiche eine unterschiedliche Menge von Sensorkomponenten für Spannungsrauschen aufweisen. Zum Beispiel kann ein erster Bereich eine Sensorkomponente für Spannungsrauschen aufweisen, und ein zweiter Bereich kann drei Sensorkomponenten für Spannungsrauschen aufweisen. In einem weiteren Beispiel kann ein erster Bereich zwei Sensorkomponenten für Spannungsrauschen aufweisen, ein zweiter Bereich kann drei Sensorkomponenten für Spannungsrauschen aufweisen, und ein dritter Bereich kann zwei Sensorkomponenten für Spannungsrauschen aufweisen.
  • Bei Schritt 604 des durch einen Computer umgesetzten Verfahrens 600 können Spannungseinbruchinformationen zu einem lokalen Controller, der sich in dem ersten Bereich befindet, und zu einem globalen Controller, der sich in dem Prozessorkern befindet, übertragen werden (z.B. über die Datenaustauschkomponente 308). Zum Beispiel kann ein erstes Signal, das die Spannungseinbruchinformationen transportiert, über eine lokale Steuerschleife (oder innere Steuerschleife) zu dem lokalen Controller übertragen werden. Zusätzlich zu diesem Beispiel kann ein zweites Signal, das die Spannungseinbruchinformationen transportiert, über eine globale Steuerschleife (oder äußere Steuerschleife) zu dem globalen Controller übertragen werden. Der lokale Controller kann sich in demselben Bereich der Prozessorsteuerung wie die Sensorkomponente für Spannungsrauschen befinden, die das Signal übertragen hat, und der globale Controller kann sich in einem anderen Bereich des Prozessorkerns befinden. Dementsprechend kann die lokale Steuerschleife eine erste Reaktionszeit haben, die schneller als eine zweite Reaktionszeit der globalen Steuerschleife ist.
  • Ferner kann bei Schritt 606 des durch einen Computer umgesetzten Verfahrens 600 eine erste Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns in Reaktion auf eine lokale Anweisung angewendet werden, die von dem lokalen Controller empfangen wurde (z.B. über die Umsetzungskomponente 312). Die Anweisung von dem lokalen Controller kann auch für andere lokale Controller und für den globalen Controller bereitgestellt werden. Da die lokale Steuerschleife die Informationen schneller als die globale Steuerschleife übertragen kann, kann der lokaler Controller zum Beispiel die Informationen schneller verarbeiten und eine Reduzierungs-/Minderungsanweisung bereitstellen als der globale Controller die Informationen verarbeiten kann. Daher kann die von dem lokalen Controller empfangene Anweisung in dem lokalen Bereich des Prozessorkerns angewendet werden, wodurch sich eine Verarbeitungseffizienz des Prozessors steigern lässt. In einigen Umsetzungen kann die Anweisung vom lokalen Controller das Rauschspannungsproblem lösen. In dieser Situation könnte eine weitere Maßnahme erst ergriffen werden, wenn eine weitere Rauschspannung erkannt wird und/oder wenn eine weitere Reduzierungs-/Minderungsmaßnahme durch eine oder mehrere weitere Rauschspannungen erforderlich wird, die auf anderen Bereichen des Prozessorkerns erkannt werden.
  • 7 veranschaulicht einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens 700, das eine globale Anweisung auf Grundlage einer Angabe umsetzt, dass eine lokale Anweisung einen Spannungseinbruch gemäß einer oder mehreren hierin beschriebenen Ausführungsformen nicht gelöst hat. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Bei Schritt 702 des durch einen Computer umgesetzten Verfahrens 700 kann ein Spannungseinbruch auf einem ersten Bereich eines Prozessorkerns erkannt werden (z.B. über einen ersten Sensor für Spannungsrauschen 108). Gemäß einigen Umsetzungen kann ein Erkennen des Spannungseinbruchs ein digitales Messen von mindestens einem Versorgungsspannungs-Rauschwert oder einer Flanke bei einem definierten Spannungswert aufweisen. Der Versorgungsspannungs-Rauschwert und die Flanke können dem ersten Bereich des Prozessorkerns zugehörig sein.
  • Spannungseinbruchinformationen können bei Schritt 704 des durch einen Computer umgesetzten Verfahrens 700 zu einem lokalen Controller, der sich in dem ersten Bereich befindet, und zu einem globalen Controller, der sich in dem Prozessorkern befindet, übertragen werden (z.B. über die Datenaustauschkomponente 308). In einem Beispiel kann ein Übertragen der Spannungseinbruchinformationen zu dem lokalen Controller eine der Erkennung und Minderung des Spannungseinbruchs zugehörige Leistungsbeeinträchtigung vermindern (z.B. kann eine lokale Steuerschleife verwendet werden, um Informationen schneller zu verarbeiten als Informationen unter Verwendung einer globalen Steuerschleife verarbeitet werden können).
  • Ferner kann bei Schritt 706 des durch einen Computer umgesetzten Verfahrens 700 eine erste Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns in Reaktion auf eine lokale Anweisung angewendet werden, die von dem lokalen Controller empfangen wurde, wobei die lokale Anweisung eine Angabe der ersten Minderungsgegenmaßnahme (z.B. über die Umsetzungskomponente 312) aufweist.
  • Bei Schritt 708 des durch einen Computer umgesetzten Verfahrens 700 kann eine Bestimmung erfolgen, ob die Minderungsgegenmaßnahme den Spannungseinbruch auf dem ersten Bereich gelöst hat (z.B. über den ersten Sensor für Spannungsrauschen 108). Wenn der Spannungseinbruch gelöst worden ist („JA“), kann das durch einen Computer umgesetzte Verfahren 700 stoppen oder zu Schritt 702 zurückkehren und auf ein Erkennen eines weiteren Spannungseinbruchs warten. Wenn die Bestimmung alternativ lautet, dass die Minderungsgegenmaßnahme den Spannungseinbruch auf dem ersten Bereich nicht gelöst hat („NEIN“), kann bei Schritt 710 des durch einen Computer umgesetzten Verfahrens 700 eine zweite Minderungsgegenmaßnahme in dem Prozessorkern in Reaktion auf eine globale Anweisung angewendet werden, die von dem globalen Controller empfangen wird.
  • Gemäß einigen Umsetzungen kann die zweite Minderungsgegenmaßnahme auf die erste Einheit oder eine andere Einheit in dem Prozessorkern angewendet werden. Zum Beispiel kann ein Anwenden der zweiten Minderungsgegenmaßnahme ein Anwenden der zweiten Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns aufweisen. Zusätzlich zu dieser Umsetzung kann eine dritte Minderungsgegenmaßnahme auf einen zweiten Bereich des Prozessorkerns angewendet werden. Die zweite Minderungsgegenmaßnahme und die dritte Minderungsgegenmaßnahme können auf jeweiligen Anweisungen beruhen, die von dem globalen Controller empfangen wurden. In einer Umsetzung kann die lokale Anweisung, die von dem lokalen Controller empfangen wurde, durch die jeweiligen Anweisungen überschrieben werden, die vom globalen Controller empfangen werden.
  • 8 veranschaulicht einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens 800, das mehrere Minderungsgegenmaßnahmen zum Unterdrücken/Mindern von On-Chip-Versorgungsspannungsrauschen gemäß einer oder mehreren hierin beschriebenen Ausführungsformen umsetzt. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Bei Schritt 802 des durch einen Computer umgesetzten Verfahrens 800 wird ein erster Spannungseinbruch auf einem ersten Segment des Prozessorkerns erkannt (z.B. über einen ersten Sensor für Spannungsrauschen 108). Bei Schritt 804 des durch einen Computer umgesetzten Verfahrens 800 kann eine erste Angabe den ersten Spannungseinbruch zu einer lokalen Rauschverwaltungseinheit und einer allgemeinen Rauschverwaltungseinheit übertragen werden (z.B. über die Datenaustauschkomponente 308). Die lokale Rauschverwaltungseinheit kann dem ersten Segment des Prozessorkerns zugehörig sein. Ferner kann bei Schritt 806 des durch einen Computer umgesetzten Verfahrens 800 eine erste Sequenz von Anweisungen auf Grundlage der ersten Angabe des ersten Spannungseinbruchs ausgeführt werden (z.B. über die Umsetzungskomponente 312). Die erste Sequenz von Anweisungen kann von der lokalen Rauschverwaltungseinheit empfangen werden und kann sich auf eine Minderungsgegenmaßnahme beziehen, die dem ersten Spannungseinbruch zugehörig ist.
  • Bei Schritt 806 des durch einen Computer umgesetzten Verfahrens 800 kann der erste Spannungseinbruch oder ein zweiter Spannungseinbruch auf dem ersten Segment nach einer Anwendung der ersten Sequenz von Anweisungen auf das erste Segment erkannt werden (z.B. über den ersten Sensor für Spannungsrauschen 108). Bei Schritt 810 des durch einen Computer umgesetzten Verfahrens 800 kann eine zweite Angabe des ersten Spannungseinbruchs oder des zweiten Spannungseinbruchs zu der lokalen Rauschverwaltungseinheit und der allgemeinen Rauschverwaltungseinheit übertragen werden (z.B. über die Datenaustauschkomponente 308). Ferner kann bei Schritt 812 des durch einen Computer umgesetzten Verfahrens 800 eine zweite Sequenz von Anweisungen auf dem ersten Segment auf Grundlage der zweiten Angabe des ersten Spannungseinbruchs oder des zweiten Spannungseinbruchs ausgeführt werden (z.B. über die Umsetzungskomponente 312). Die zweite Sequenz von Anweisungen kann von der allgemeinen Rauschverwaltungseinheit empfangen werden.
  • Gemäß einigen Umsetzungen kann die zweite Sequenz von Anweisungen die erste Sequenz von Anweisungen auf dem ersten Segment überschreiben.
  • 9 veranschaulicht einen Ablaufplan eines beispielhaften, nicht einschränkenden, durch einen Computer umgesetzten Verfahrens 900, das ein On-Chip-Versorgungsspannungsrauschen gemäß einer oder mehreren hierin beschriebenen Ausführungsformen reduziert/mindert. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen.
  • Bei Schritt 902 des durch einen Computer umgesetzten Verfahrens 900 kann eine Mehrzahl von Sensoren für Spannungsrauschen in einem Prozessorkern bereitgestellt werden (z.B. über den ersten Sensor für Spannungsrauschen 108, den zweiten Sensor für Spannungsrauschen 112 oder den N-ten Sensor für Spannungsrauschen 404). Die Sensoren für Spannungsrauschen von der Mehrzahl von Sensoren für Spannungsrauschen können einen Versorgungsspannungs-Rauschwert und/oder eine Flanke (an bekannten oder angenäherten Spannungswerten) digital messen.
  • Ferner kann bei Schritt 904 des durch einen Computer umgesetzten Verfahrens 900 eine Verwaltungsarchitektur für Spannungsrauschen bereitgestellt werden. Die Spannungsrauschen-Architektur kann globale Steuerschleifen (z.B. mit langsamer Reaktion) und lokale Steuerschleifen (z.B. mit schnellerer Reaktion) aufweisen.
  • Bei Schritt 904 des durch einen Computer umgesetzten Verfahrens 900 kann ein Rauschminderungsverfahren auf einem kleinen Block mit einer schnellen Reaktion durch Verwendung einer lokalen Steuerschleife der Mehrzahl von lokalen Steuerschleifen umgesetzt werden (z.B. über die lokale Steuerschleife 304, die lokale Steuerschleife 408 oder die lokale Steuerschleife 410). Die „schnelle Reaktion“ ist bezogen auf eine andere Reaktion, die durch die globale Steuerschleife bereitgestellt wird.
  • Außerdem kann bei Schritt 908 des durch einen Computer umgesetzten Verfahrens ein Rauschminderungsverfahren auf einem größeren Block mit einer langsameren Reaktion unter Verwendung einer globalen Steuerschleife umgesetzt werden (z.B. über die globale Steuerschleife 306, die globale Steuerschleife 412 und die globale Steuerschleife 414). Die globale Schleife kann eine größere Anzahl (oder Menge) von Sensoren für Versorgungsspannungsrauschen verwenden als die von den lokalen Schleifen genutzte Anzahl. Ferner kann die Reaktionszeit der globalen Schleife im Vergleich mit Reaktionszeiten der lokalen Schleifen langsamer sein.
  • Der einfacheren Erklärung halber wurden die durch einen Computer umgesetzten Methoden als eine Reihe von Tätigkeiten dargestellt und beschrieben. Es sollte verstanden werden und klar sein, dass die Innovation des Erfindungsgegenstands nicht durch die veranschaulichten Tätigkeiten und/oder die Reihenfolge der Tätigkeiten eingeschränkt wird, so können zum Beispiel Tätigkeiten in verschiedenen Reihenfolgen und/oder gleichzeitig und mit anderen Tätigkeiten auftreten, die hierin nicht dargestellt und beschrieben werden. Ferner können nicht alle veranschaulichten Tätigkeiten erforderlich sein, um die von einem Computer umgesetzten Methoden gemäß dem offenbarten Erfindungsgegenstand umzusetzen. Außerdem versteht der Fachmann und weiß zu würdigen, dass die von einem Computer umgesetzten Methoden alternativ als eine Reihe von in Wechselbeziehung zueinander stehenden Zuständen über ein Zustandsdiagramm oder Ereignisse dargestellt werden könnten. Außerdem sollte ferner klar sein, dass die hierin im Folgenden und durchgehend hierin offenbarten, von einem Computer umgesetzten Methoden in der Lage sind, auf einem Fertigungsartikel gespeichert zu werden, um Transport und Übertragung derartiger, von einem Computer umgesetzten Methoden auf Computern zu ermöglichen. Der Begriff „Fertigungsartikel“, wie hierin verwendet, soll ein Computerprogramm umfassen, auf das von jeder durch einen Computer lesbaren Einheit oder jedem durch einen Computer lesbaren Medium aus zugegriffen werden kann.
  • Um einen Kontext für die verschiedenen Aspekte des offenbarten Erfindungsgegenstands bereitzustellen, sollen 10 sowie die nachfolgende Erörterung eine allgemeine Beschreibung einer geeigneten Umgebung bereitstellen, in der die verschiedenen Aspekte des offenbarten Erfindungsgegenstands umgesetzt werden können. 10 veranschaulicht ein Blockschaubild einer beispielhaften, nicht-einschränkenden Betriebsumgebung, in der eine oder mehrere hierin beschriebene Ausführungsformen ermöglicht werden können. Eine wiederholte Beschreibung von ähnlichen Elementen, die in anderen hierin beschriebenen Ausführungsformen verwendet werden, wird der Kürze halber weggelassen. Unter Bezugnahme auf 10 kann eine geeignete Betriebsumgebung 1000 zum Umsetzen von verschiedenen Aspekte dieser Offenbarung auch einen Computer 1012 enthalten. Der Computer 1012 kann auch eine Verarbeitungseinheit 1014, einen Systemarbeitsspeicher 1016 und einen Systembus 1018 enthalten. Der Systembus 1018 verbindet Systemkomponenten, unter anderem den Systemarbeitsspeicher 1016 mit der Verarbeitungseinheit 1014, er ist aber nicht darauf beschränkt. Die Verarbeitungseinheit 1014 kann jeder von verschiedenen verfügbaren Prozessoren sein. Duale Mikroprozessoren und andere Mehrfachprozessor-Architekturen können ebenfalls als die Verarbeitungseinheit 1014 verwendet werden. Der Systembus 1018 kann jeder von mehreren Typen von einer oder mehreren Busstrukturen sein, einschließlich der Arbeitsspeicherbus oder Arbeitsspeicher-Controller, ein Peripheriebus oder externer Bus und/oder ein lokaler Bus unter Verwendung einer Vielfalt von verfügbaren Busarchitekturen, einschließlich Industrial Standard Architecture (ISA), Micro-Channel Architecture (MSA), Extended ISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), Card Bus, Universal Serial Bus (USB), Advanced Graphics Port (AGP), Firewire (IEEE 1394) und Small Computer Systems Interface (SCSI), er ist aber nicht darauf beschränkt. Der Systemspeicher 1016 kann auch flüchtigen Arbeitsspeicher 1020 und nicht flüchtigen Arbeitsspeicher 1022 enthalten. Das Basic Input/Output System (BIOS), das die grundlegenden Routinen zum Übertragen von Informationen zwischen Elementen in dem Computer 1012 enthält, wie beispielsweise während des Hochfahrens, ist im nicht flüchtigen Arbeitsspeicher 1022 gespeichert. Zur Veranschaulichung und nicht einschränkend kann nicht flüchtiger Arbeitsspeicher 1022 Nur-Lese-Speicher (ROM), programmierbaren ROM (PROM), elektrisch programmierbaren ROM (EPROM), elektrisch löschbaren programmierbaren ROM (EEPROM), Flash-Speicher oder nicht flüchtigen Direktzugriffspeicher (RAM) (z.B. ferroelektrischen RAM (FeRAM)) enthalten. Der flüchtige Arbeitsspeicher 1020 kann auch einen Direktzugriffsspeicher (RAM) enthalten, der als externer Cachespeicher wirkt. Zur Veranschaulichung und nicht einschränkend steht RAM in vielen Formen zur Verfügung, wie beispielsweise als statischer RAM (SRAM), dynamischer RAM (DRAM), synchroner DRAM (SDRAM), Doppeldatenrate-DSDRM (DDR SDRAM), erweiterter SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), direkter Rambus RAM (DRRAM) direkter Rambus dynamischer RAM (DRDRAM) und Rambus dynamischer RAM.
  • Der Computer 1012 kann auch entfernbare/nicht entfernbare, flüchtige/nicht flüchtige Computerspeichermedien enthalten. 10 veranschaulicht zum Beispiel einen Plattenspeicher 1024. Der Plattenspeicher 1024 kann auch Einheiten wie ein Magnetplattenlaufwerk, Diskettenlaufwerk, Bandlaufwerk, Jaz-Laufwerk, Zip-Laufwerk, LS-100-Laufwerk, eine Flash-Speicherkarte oder einen Speicher-Stick enthalten, er ist aber nicht darauf beschränkt. Der Plattenspeicher 1024 kann auch Speichermedien getrennt oder in Kombination mit anderen Speichermedien enthalten, einschließlich, jedoch nicht darauf beschränkt, ein optisches Plattenlaufwerk, wie beispielsweise eine CD-ROM-Einheit (CD-ROM), ein Laufwerk für CD-Aufzeichnung (CD-R Drive), ein Laufwerk für wiederbeschreibbare CD (CD-RW Drive) oder ein DVD-ROM-Laufwerk (DVD-ROM). Um eine Verbindung des Plattenspeichers 1024 mit dem Systembus 1018 zu ermöglichen, wird normalerweise eine entfernbare oder nicht entfernbare Schnittstelle verwendet, wie beispielsweise eine Schnittstelle 1026. 10 stellt auch Software dar, die als Vermittler zwischen Benutzern und den grundlegenden Computerressourcen wirkt, die in der entsprechenden Betriebsumgebung 1000 beschrieben werden. Derartige Software kann zum Beispiel auch ein Betriebssystem 1028 enthalten. Das Betriebssystem 1028, das auf dem Plattenspeicher 1024 gespeichert werden kann, wirkt zum Steuern und Zuweisen von Ressourcen des Computers 1012. Systemanwendungen 1030 können die Ressourcenverwaltung durch das Betriebssystem 1028 über Programmmodule 1032 und Programmdaten 1034 nutzen, die z.B. entweder im Systemspeicher 1016 oder auf dem Plattenspeicher 1024 gespeichert sind. Es sollte klar sein, dass diese Offenbarung mit verschiedenen Betriebssystemen oder Kombinationen von Betriebssystemen umgesetzt werden kann. Ein Benutzer gibt Befehle oder Informationen über eine bzw. mehrere Eingabeeinheiten 1036 in den Computer 1012 ein. Die Eingabeeinheiten 1036 enthalten unter anderem eine Zeigeeinheit wie eine Maus, einen Trackball, einen Stift, ein Touch-Pad, eine Tastatur, ein Mikrofon, einen Joystick, ein Game-Pad, eine Satellitenschüssel, einen Scanner, eine TV-Tunerkarte, eine Digitalkamera, eine digitale Videokamera, eine Web-Kamera und dergleichen, sie sind aber nicht darauf beschränkt. Diese und andere Eingabeeinheiten werden mit der Verarbeitungseinheit 1014 durch den Systembus 1018 über den Schnittstellenanschluss bzw. die -anschlüsse 1038 verbunden. Der Schnittstellenanschluss bzw. die Schnittstellenanschlüsse 1038 enthalten zum Beispiel einen seriellen Anschluss, einen Parallelanschluss, einen Spiele-Anschluss und einen Universal Serial Bus (USB). Ausgabeeinheit(en) 1040 verwenden einige Anschlüsse desselben Typs wie Eingabeeinheit(en) 1036. Somit kann zum Beispiel ein USB-Anschluss zum Bereitstellen einer Eingabe in den Computer 1012 und zum Ausgeben von Informationen von dem Computer 1012 an eine Ausgabeeinheit 1040 verwendet werden. Ein Ausgabeadapter 1042 wird bereitgestellt, um zu veranschaulichen, dass einige Ausgabeeinheiten 1040 neben anderen Ausgabeeinheiten 1040 wie Monitore, Lautsprecher und Drucker vorhanden sind, für die spezielle Adapter erforderlich sind. Zu Veranschaulichungszwecken und nicht zur Einschränkung enthalten die Ausgabeadapter 1042 Video- und Sound-Karten, die ein Verbindungsmittel zwischen der Ausgabeeinheit 1040 und dem Systembus 1018 bereitstellen. Es ist anzumerken, dass andere Einheiten und/oder Systeme von Einheiten sowohl Eingabe- als auch Ausgabefähigkeiten bereitstellen, wie beispielsweise einen bzw. mehrere entfernt angeordnete Computer 1044.
  • Der Computer 1012 kann in einer vernetzten Umgebung unter Verwendung von logischen Verbindungen mit einem oder mehreren entfernt angeordneten Computern arbeiten, wie beispielsweise einem bzw. mehreren entfernt angeordneten Computern 1044. Der bzw. die entfernt angeordneten Computer 1044 können ein Computer, ein Server, ein Router, ein Netzwerk-PC, eine Workstation, eine Einrichtung auf Grundlage eines Mikroprozessors, eine gleichgeordnete Einheit oder ein anderer gemeinsamer Netzwerkknoten und dergleichen sein, und typischerweise können sie viele oder alle der in Bezug auf den Computer 1012 beschriebenen Elemente sein. Der Kürze halber ist nur eine Arbeitsspeichereinheit 1046 mit einem bzw. mehreren Computern 1044 veranschaulicht. Der bzw. die entfernt angeordneten Computer 1044 sind über eine Netzwerkschnittstelle 1048 logisch mit dem Computer 1012 verbunden und sind anschließend über eine Datenaustauschverbindung 1050 physisch verbunden. Die Netzwerkschnittstelle 1048 umfasst drahtgebundene und/oder drahtlose Datenübertragungsnetzwerke wie lokale Netzwerke (LAN), Weitverkehrsnetzwerke (WAN), Mobilfunknetzwerke usw. Zu LAN-Technologien zählen Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet, Token Ring und dergleichen. Zu WAN-Technologien zählen unter anderen Punkt-zu-Punkt-Verbindungen, Leitungsvermittlungsnetze wie Integrated Services Digital Networks (ISDN) und Variationen davon, Paketvermittlungsnetzwerke und Digital Subscriber Lines (DSL). Datenaustauschverbindung(en) 1050 beziehen sich auf die Hardware/Software, die zum Verbinden der Netzwerkschnittstelle 1048 mit dem Systembus 1018 verwendet wird. Zwar ist die Datenaustauschverbindung 1050 zur deutlicheren Veranschaulichung in dem Computer 1012 gezeigt, sie kann sich aber auch außerhalb des Computers 1012 befinden. Die Hardware/Software zur Verbindung mit der Netzwerkschnittstelle 1048 kann, nur zu Beispielzwecken, auch interne und externe Technologien enthalten wie beispielsweise Modems, einschließlich normale Telefonmodems, Kabelmodems und DSL-Modems, ISDN-Adapter und Ethernet-Karten.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren, eine Vorrichtung und/oder ein Computerprogrammprodukt auf jeder möglichen technischen Detailintegrationsebene handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) enthalten, auf dem durch einen Computer lesbare Programmanweisungen gespeichert sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen. Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen beibehalten und speichern kann. Das durch einen Computer lesbare Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination aus dem Vorgenannten sein, es ist aber nicht darauf beschränkt. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums können die Folgenden gehören: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flashspeicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD, ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination des Vorgenannten. Ein durch einen Computer lesbares Speichermedium soll, wie hierin verwendet, nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. durch ein Glasfaserkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter. Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten, Konfigurationsdaten für integrierte Schaltungen oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über jeden Typ von Netzwerk verbunden werden, einschließlich ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Nutzung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, feldprogrammierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es sollte klar sein, dass jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaubilder und Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen umgesetzt werden können. Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. eine andere programmierbare Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Verfahren zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, die Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen. Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von betrieblichen Maßnahmen auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungsformen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Umsetzen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungsformen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die angegebenen Funktionen oder Handlungen durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Obwohl der Erfindungsgegenstand oben im allgemeinen Kontext von durch einen Computer ausführbaren Anweisungen eines Computerprogrammprodukts beschrieben wurde, das auf einem Computer und/oder Computern ausgeführt wird, wird der Fachmann erkennen, dass diese Offenbarung auch mit anderen oder in Kombination mit anderen Programmmodulen umgesetzt werden kann. Im Allgemeinen können Programmmodule Routinen, Programme, Komponenten, Datenstrukturen usw. enthalten, die bestimmte Aufgaben ausführen und/oder bestimmte abstrakte Datentypen umsetzen. Des Weiteren wird dem Fachmann klar sein, dass die erfinderischen, durch einen Computer umgesetzten Verfahren mit anderen Computersystem-Konfigurationen ausgeübt werden können, einschließlich Einzelprozessor- oder Multiprozessor-Computersystemen, Mini-Datenverarbeitungseinheiten, Mainframe-Computer sowie Computer, Handheld-Datenverarbeitungseinheiten (z.B. PDA, Telefon), Unterhaltungs- oder Industrieelektronik auf Mikroprozessor-Grundlage oder programmierbar und dergleichen. Die veranschaulichten Aspekte können auch in verteilten Datenverarbeitungsumgebungen ausgeübt werden, wobei Aufgaben von entfernt angeordneten Verarbeitungseinheiten ausgeführt werden, die über ein Datenübertragungsnetzwerk verbunden sind. Einige, wenn nicht sogar alle Aspekte dieser Offenbarung können jedoch auf eigenständigen Computern ausgeübt werden. In einer verteilten Datenverarbeitungsumgebung können Programmmodule sich sowohl in lokalen als auch entfernt angeordneten Arbeitsspeicher-Speichereinheiten befinden.
  • Wie in dieser Anmeldung verwendet, können die Begriffe „Komponente“, „System“, „Plattform“, „Schnittstelle“ und dergleichen eine computerbezogene Entität enthalten oder sich auf eine solche beziehen, oder auf eine Entität, die in Bezug zu einer operationellen Maschine mit einer oder mehreren spezifischen Funktionalitäten steht. Die hierin offenbarten Entitäten können entweder Hardware, eine Kombination von Hardware und Software, Software oder Software in Ausführung sein. Zum Beispiel kann eine Komponente ein Prozess, der auf einem Prozessor ausgeführt wird, ein Prozessor, ein Objekt, eine ausführbare Funktion/Datei, ein Ausführungs-Thread, ein Programm und/oder ein Computer sein. Zur Veranschaulichung können sowohl eine Anwendung, die auf einem Server ausgeführt wird, und der Server eine Komponente sein. Eine oder mehrere Komponenten können sich in einem Prozess und/oder einem Ausführungs-Thread befinden, und eine Komponente kann sich auf einem Computer und/oder verteilt auf zwei oder mehr Computern befinden. In einem anderen Beispiel können jeweilige Komponenten von verschiedenen durch einen Computer lesbaren Medien aus ausgeführt werden, auf denen verschiedene Datenstrukturen gespeichert sind. Die Komponenten können über lokale und/oder entfernt angeordnete Prozesse Daten austauschen wie beispielsweise in Übereinstimmung mit einem Signal mit einem oder mehreren Datenpaketen (z.B. Daten von einer Komponente, die mit einer anderen Komponente in einem lokalen System, einem verteilten System und/oder über ein Netzwerk über das Signal interagieren, wie beispielsweise das Internet mit anderen System). In einem anderen Beispiel kann eine Komponente eine Vorrichtung mit spezifischer Funktionalität sein, die durch mechanische Teile bereitgestellt wird, die über elektrische oder elektronische Schaltungen betrieben werden, welche durch eine Software- oder Firmware-Anwendung betrieben werden, die von einem Prozessor ausgeführt wird. In einem derartigen Fall kann sich der Prozessor innerhalb oder außerhalb der Vorrichtung befinden und mindestens einen Teil der Software- oder Firmware-Anwendung ausführen. Als noch weiteres Beispiel kann eine Komponente eine Vorrichtung sein, die eine spezifische Funktionalität durch elektronische Komponenten ohne mechanische Teile bereitstellt, wobei die elektronischen Komponenten einen Prozessor oder ein anderes Mittel zum Ausführen von Software oder Firmware enthalten kann, der bzw. das zumindest teilweise die Funktionalität der elektronischen Komponenten übertragen kann. In einem Aspekt kann eine Komponente eine elektronische Komponente über eine virtuelle Maschine emulieren, z.B. in einem Cloud-Computing-System.
  • Außerdem soll der Begriff „oder“ ein einschließendes „oder“ statt eines ausschließenden „oder“ bedeuten. Dabei gilt, sofern nichts anderes angegeben wird oder aus dem Kontext klar ist, dass „X verwendet A oder B“ jede der natürlichen einschließenden Umsetzungen bedeutet. Das heißt, wenn X A verwendet; X B verwendet; oder X A und B verwendet, dass „X verwendet A oder B“ unter jedem der vorgenannten Beispiele erfüllt wird. Des Weiteren sollen die Artikel „ein/eine“, wie in der Spezifikation des Erfindungsgegenstands und den Zeichnungen im Anhang verwendet, allgemein so konstruiert sein, dass sie „ein oder mehrere“ bedeuten, sofern nicht anderes angegeben ist oder aus dem Kontext klar ist, dass sie sich auf eine Singularform beziehen. Wie hierin verwendet, werden die Begriffe „Beispiel“ und/oder „beispielhaft“ verwendet mit der Bedeutung, dass sie als Beispiel, Fall oder Veranschaulichung dienen. Um jeden Zweifel auszuschließen, ist der hierin offenbarte Gegenstand nicht durch solche Beispiele eingeschränkt. Außerdem ist jeder Aspekt oder jede Auslegung, die hierin als „Beispiel“ und/oder „beispielhaft“ beschrieben wird, nicht notwendigerweise als gegenüber anderen Aspekten oder Auslegungen bevorzugt oder vorteilhaft auszulegen, noch ist damit beabsichtigt, gleichwertige beispielhafte Strukturen und Techniken, die dem Fachmann bekannt sind, auszuschließen.
  • Wie hierin verwendet, kann sich der Begriff „Prozessor“ im Wesentlichen auf jede Datenverarbeitungseinheit oder Einheit beziehen, die Einzelkernprozessoren; Einzelprozessoren mit Software-Multithread-Ausführungsfunktion; Mehrkernprozessoren; Mehrkernprozessoren mit Software-Multithread-Ausführungsfunktion; Mehrkernprozessoren mit Hardware-Multithread-Technologie; parallele Plattformen; und parallel Plattformen mit verteiltem gemeinsam genutzten Arbeitsspeicher aufweist, er ist aber nicht darauf beschränkt. Außerdem kann sich ein Prozessor auf eine integrierte Schaltung, eine anwendungsspezifische integrierte Schaltung (ASIC), einen digitalen Signalprozessor (DSP), ein feldprogrammierbares Gate-Array (FPGA), eine speicherprogrammierbare Steuerung (SPS), einen komplexen programmierbaren Logikbaustein (CPLD), ein diskretes Gate oder Transistorlogik, diskrete Hardware-Komponenten oder jede Kombination davon beziehen, die dafür ausgelegt ist, um die hierin beschriebenen Funktionen auszuführen. Ferner können Prozessoren Architekturen im Nanomaßstab nutzen, wie zum Beispiel Transistoren, Schalter und Gates auf molekularer oder Quantenpunkt-Grundlage, um die Raumnutzung zu optimieren oder die Leistung von Benutzerausrüstung zu erhöhen. Ein Prozessor kann auch als Kombination von Datenverarbeitungseinheiten umgesetzt werden. In dieser Offenbarung werden Begriffe wie „Speicher“, „Speicherung“, „Datenspeicher“, „Datenspeicherung“ und „Datenbank“ und im Wesentlichen jede andere Informationspeicherkomponente, die für Betrieb und Funktionalität einer Komponente relevant ist, dazu verwendet, um auf „Arbeitsspeicherkomponenten“, in einem „Arbeitsspeicher“ verkörperte Entitäten oder Komponenten zu verweisen, die einen Arbeitsspeicher aufweisen. Es sollte klar sein, dass hierin beschriebener Arbeitsspeicher und/oder Arbeitsspeicherkomponenten entweder flüchtiger Arbeitsspeicher oder nicht flüchtiger Arbeitsspeicher sein können oder sowohl flüchtigen als auch nicht flüchtigen Arbeitsspeicher enthalten können. Zur Veranschaulichung und nicht einschränkend kann nicht flüchtiger Arbeitsspeicher Nur-Lese-Speicher (ROM), programmierbaren ROM (PROM), elektrisch programmierbaren ROM (EPROM), elektrisch löschbaren ROM (EEPROM), Flash-Speicher oder nicht flüchtigen Direktzugriffspeicher (RAM) (z.B. ferroelektrischen RAM (FeRAM)) enthalten. Flüchtiger Speicher kann RAM enthalten, der zum Beispiel als externer Cachespeicher wirken kann. Zur Veranschaulichung und nicht einschränkend steht RAM in vielen Formen zur Verfügung, wie beispielsweise als synchroner RAM (SRAM), dynamischer RAM (DRAM), synchroner DRAM (SDRAM), Doppeldatenrate-SDRAM (DDR SDRAM), erweiterter SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), Direct Rambus RAM (DRRAM), direkter RAMBUS dynamischer RAM (DRDRAM) und Rambus dynamischer RAM (RDRAM). Außerdem sollen die hierin offenbarten Arbeitsspeicherkomponenten von Systemen oder durch einen Computer umgesetzten Verfahren diese und andere geeignete Typen von Arbeitsspeicher enthalten, wobei sie nicht darauf beschränkt sein sollen.
  • Die obige Beschreibung enthält nur Beispiele für Systeme und durch einen Computer umgesetzte Verfahren. Es ist selbstverständlich nicht möglich, jede vorstellbare Kombination von Komponenten oder von einem Computer umgesetzten Verfahren zum Zweck der Beschreibung dieser Offenbarung zu beschreiben, aber der Fachmann kann erkennen, dass viele weitere Kombinationen und Umsetzungen dieser Offenbarung möglich sind. Ferner sollen solche Begriffe in dem Ausmaß, in dem die Begriffe „enthält“, „hat“, „besitzt“ und dergleichen in der ausführlichen Beschreibung, den Ansprüchen, Anhängen und Zeichnungen verwendet werden, auf eine ähnliche Weise einschließend sein wie der Begriff „aufweisend“, wie „aufweisend“ interpretiert wird, wenn es als Übergangswort in einem Anspruch verwendet wird. Die Beschreibungen der verschiedenen Ausführungsformen wurden zum Zweck der Veranschaulichung erstellt, sie sollen aber keineswegs erschöpfend oder auf die offenbarten Ausführungsformen eingeschränkt sein. Für Fachleute sind viele Modifizierungen und Variationen offenkundig, die nicht von dem Schutzumfang der beschriebenen Ausführungsformen abweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, der praktischen Anwendung oder technischen Verbesserung gegenüber auf dem Markt gefundenen Technologien bestmöglich zu erklären oder anderen Fachleuten das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.

Claims (18)

  1. Einheit (300) zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens, aufweisend: einen ersten Sensor (108) für Spannungsrauschen, der sich auf einer ersten Einheit (104) eines Prozessorkerns (102) befindet, wobei der erste Sensor für Spannungsrauschen einen ersten Spannungseinbruch auf der ersten Einheit erkennt, und wobei der Prozessorkern in die erste Einheit und eine zweite Einheit (106) geteilt ist; eine globale Rauschverwaltungskomponente (116), die sich in dem Prozessorkern befindet, und die von dem ersten Sensor für Spannungsrauschen eine Angabe des ersten Spannungseinbruchs empfängt und ein globales Rauschminderungsverfahren in dem Prozessorkern einschließlich der ersten und der zweiten Einheit umsetzt; und eine erste lokale Rauschverwaltungskomponente (110), die sich in der ersten Einheit befindet und sich von der globalen Rauschverwaltungskomponente unterscheidet, betriebsfähig für: ein Empfangen, von dem ersten Sensor für Spannungsrauschen, der Angabe des ersten Spannungseinbruchs; und ein Umsetzen eines ersten Rauschminderungsverfahrens auf der ersten Einheit.
  2. Einheit nach Anspruch 1, wobei der erste Sensor für Spannungsrauschen betriebsfähig ist, um mindestens einen Versorgungsspannungs-Rauschwert oder eine Flanke bei einem bestimmten Spannungswert digital zu messen.
  3. Einheit nach einem der vorhergehenden Ansprüche, wobei die erste lokale Rauschverwaltungskomponente ferner betriebsfähig ist, um das erste Rauschminderungsverfahren über eine erste lokale Steuerschleife (304) in der ersten Einheit umzusetzen, und wobei die erste lokale Rauschverwaltungskomponente ferner betriebsfähig ist, um Informationen, die sich auf die erste lokale Steuerschleife beziehen, zu der globalen Rauschverwaltungskomponente und zu mindestens einer zweiten lokalen Rauschverwaltungskomponente rundzusenden, die sich in der zweiten Einheit des Prozessorkerns befindet.
  4. Einheit nach Anspruch 3, wobei die globale Rauschverwaltungskomponente ferner betriebsfähig ist, um das globale Rauschminderungsverfahren über eine globale Steuerschleife (306) in dem Prozessorkern umzusetzen, und wobei die erste lokale Steuerschleife und die globale Steuerschleife unabhängige Schleifen sind.
  5. Einheit nach Anspruch 4, wobei die erste lokale Steuerschleife eine erste Reaktionszeit hat, die schneller als eine zweite Reaktionszeit der globalen Steuerschleife ist.
  6. Einheit nach einem der vorhergehenden Ansprüche, wobei die globale Rauschverwaltungskomponente ferner betriebsfähig ist, um ein globales Rauschminderungsverfahren auf Grundlage einer Bestimmung umzusetzen, dass der erste Spannungseinbruch über mehr als eine definierte Anzahl von Zyklen fortgesetzt worden ist, und wobei das globale Rauschminderungsverfahren auf die erste Einheit und auf die zweite Einheit des Prozessorkerns angewendet wird.
  7. Einheit nach Anspruch 6, wobei das globale Rauschminderungsverfahren ferner betriebsfähig ist, das erste Rauschminderungsverfahren zu überschreiben.
  8. Einheit nach einem der vorhergehenden Ansprüche, ferner aufweisend: einen zweiten Sensor (112) für Spannungsrauschen, der sich auf der zweiten Einheit des Prozessorkerns befindet, zum Erkennen eines zweiten Spannungseinbruchs auf der zweiten Einheit; und eine zweite lokale Rauschverwaltungskomponente (114), die sich in der zweiten Einheit befindet, betriebsfähig für: ein Empfangen, von dem zweiten Sensor für Spannungsrauschen, einer zweiten Angabe des zweiten Spannungseinbruchs; und ein Umsetzen eines zweiten Rauschminderungsverfahrens auf der zweiten Einheit.
  9. Einheit nach Anspruch 8, wobei die zweite lokale Rauschverwaltungskomponente ferner betriebsfähig ist, um das zweite Rauschminderungsverfahren über eine zweite lokale Steuerschleife (408) in der zweiten Einheit umzusetzen, und wobei die zweite lokale Rauschverwaltungskomponente ferner betriebsfähig ist, um Informationen, die sich auf die zweite lokale Steuerschleife beziehen, zu der globalen Rauschverwaltungskomponente und zu der ersten lokalen Rauschverwaltungskomponente rundzusenden.
  10. Einheit nach einem der vorhergehenden Ansprüche, wobei das erste Rauschminderungsverfahren, das auf der ersten Einheit umgesetzt wird, eine Verarbeitungseffizienz des Prozessorkerns erhöht.
  11. Verfahren (600; 700; 800) zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens, aufweisend: ein Erkennen (602; 702), durch einen Prozessorkern (102), eines Spannungseinbruchs auf einem ersten Bereich (104) des Prozessorkerns, wobei der Prozessorkern in den ersten Bereich und einen zweiten Bereich (106) geteilt ist; ein Übertragen (604; 704), durch den Prozessorkern, von Spannungseinbruchinformationen zu einem lokalen Controller (110), der sich in dem ersten Bereich befindet, und zu einem globalen Controller (116), der sich in dem Prozessorkern befindet und sich von dem lokalen Controller unterscheidet, wobei der Prozessorkern betriebsfähig ist, in Reaktion auf globale Anweisungen von dem globalen Controller Minderungsgegenmaßnahmen sowohl auf den ersten als auch auf den zweiten Bereich anzuwenden; und ein Anwenden (606; 706; 806), durch den Prozessorkern, einer ersten Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns in Reaktion auf eine lokale Anweisung, die von dem lokalen Controller empfangen wurde, wobei die lokale Anweisung eine Angabe der ersten Minderungsgegenmaßnahme aufweist.
  12. Verfahren nach Anspruch 11, ferner aufweisend: ein Bestimmen (708), durch den Prozessorkern, dass die erste Minderungsgegenmaßnahme den Spannungseinbruch auf dem ersten Bereich nicht gelöst hat; und ein Anwenden (710), durch den Prozessorkern, einer zweiten Minderungsgegenmaßnahme in dem Prozessorkern in Reaktion auf eine globale Anweisung, die von dem globalen Controller empfangen wurde.
  13. Verfahren nach Anspruch 12, wobei das Anwenden der zweiten Minderungsgegenmaßnahme aufweist: ein Anwenden, durch den Prozessorkern, der zweiten Minderungsgegenmaßnahme auf den ersten Bereich des Prozessorkerns; und ein Anwenden, durch den Prozessorkern, einer dritten Minderungsgegenmaßnahme auf den zweiten Bereich des Prozessorkerns, und wobei die zweite Minderungsgegenmaßnahme und die dritte Minderungsgegenmaßnahme auf jeweiligen Anweisungen beruhen, die von dem globalen Controller empfangen wurden.
  14. Verfahren nach Anspruch 13, ferner aufweisend ein Überschreiben, durch den Prozessorkern, der lokalen Anweisung, die von dem lokalen Controller empfangen wurde, mit den jeweiligen Anweisungen, die von dem globalen Controller empfangen wurden.
  15. Verfahren nach einem der Ansprüche 11 bis 14, wobei das Erkennen des Spannungseinbruchs ein digitales Messen, durch den Prozessorkern, von mindestens einem Versorgungsspannungs-Rauschwert oder einer Flanke bei einem bestimmten Spannungswert aufweist, und wobei der Versorgungsspannungs-Rauschwert und die Flanke dem ersten Bereich des Prozessorkern zugehörig sind.
  16. Verfahren nach einem der Ansprüche 11 bis 15, wobei das Übertragen von Spannungseinbruchinformationen zu dem lokalen Controller eine Leistungsbeeinträchtigung verringert, die einer Erkennung und Minderung des Spannungseinbruchs zugehörig ist.
  17. Computerprogrammprodukt zum Ermöglichen einer Reduzierung eines On-Chip-Versorgungsspannungsrauschens, wobei das Computerprogrammprodukt aufweist: ein durch einen Computer lesbares Speichermedium, das durch eine Verarbeitungsschaltung lesbar ist und Anweisungen für ein Ausführen durch die Verarbeitungsschaltung speichert, um ein Verfahren gemäß einem der Ansprüche 11 bis 16 auszuführen.
  18. Computerprogramm, das auf einem durch einen Computer lesbaren Medium gespeichert ist und in den internen Arbeitsspeicher eines digitalen Computers ladbar ist, wobei es Abschnitte von Softwarecode aufweist, wenn das Programm auf einem Computer ausgeführt wird, um das Verfahren nach einem der Ansprüche 11 bis 16 auszuführen.
DE112018003087.3T 2017-07-28 2018-07-27 On-chip-rauschunterdrückung oder -minderung der versorgungsspannung unter verwendung von lokalen detektionsschleifen in einem prozessorkern Active DE112018003087B4 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/663,033 US10171081B1 (en) 2017-07-28 2017-07-28 On-chip supply noise voltage reduction or mitigation using local detection loops in a processor core
US15/663,033 2017-07-28
US15/842,482 US10333520B2 (en) 2017-07-28 2017-12-14 On-chip supply noise voltage reduction or mitigation using local detection loops in a processor core
US15/842,482 2017-12-14
PCT/IB2018/055630 WO2019021249A1 (en) 2017-07-28 2018-07-27 CHIP POWER NOISE VOLTAGE REDUCTION OR MITIGATION USING LOCAL DETECTION BUCKLES IN A PROCESSOR CORE

Publications (2)

Publication Number Publication Date
DE112018003087T5 DE112018003087T5 (de) 2020-03-05
DE112018003087B4 true DE112018003087B4 (de) 2021-12-23

Family

ID=64739873

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018003087.3T Active DE112018003087B4 (de) 2017-07-28 2018-07-27 On-chip-rauschunterdrückung oder -minderung der versorgungsspannung unter verwendung von lokalen detektionsschleifen in einem prozessorkern

Country Status (6)

Country Link
US (2) US10171081B1 (de)
JP (1) JP7279013B2 (de)
CN (1) CN110959257B (de)
DE (1) DE112018003087B4 (de)
GB (1) GB2579316B (de)
WO (1) WO2019021249A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10642336B2 (en) * 2016-07-12 2020-05-05 Advanced Micro Devices, Inc. Clock adjustment for voltage droop
US11073884B2 (en) 2017-11-15 2021-07-27 International Business Machines Corporation On-chip supply noise voltage reduction or mitigation using local detection loops
US11029742B2 (en) 2019-04-01 2021-06-08 International Business Machines Corporation Mitigating voltage droop
US11150716B2 (en) 2020-02-05 2021-10-19 International Business Machines Corporation Dynamically optimizing margins of a processor
US11385698B1 (en) * 2020-12-30 2022-07-12 Innogrit Technologies Co., Ltd. Voltage drop management for VLSI and SoC
US11586265B2 (en) 2021-06-16 2023-02-21 International Business Machines Corporation Voltage droop management through microarchitectural stall events

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040066208A1 (en) 2002-10-07 2004-04-08 Liu Jonathan H. Method and apparatus for detection and quantification of on-die voltage noise in microcircuits
US20070283172A1 (en) 2006-05-30 2007-12-06 Daniel Douriet Mitigate Power Supply Noise Response by Throttling Execution Units Based Upon Voltage Sensing
US20130049828A1 (en) 2011-08-25 2013-02-28 International Business Machines Corporation Ac supply noise reduction in a 3d stack with voltage sensing and clock shifting
US9164563B2 (en) 2012-05-24 2015-10-20 International Business Machines Corporation Processor noise mitigation using differential critical path monitoring
US20160098070A1 (en) 2014-10-02 2016-04-07 International Business Machines Corporation Voltage droop reduction in a processor
US20160342185A1 (en) 2015-05-22 2016-11-24 Advanced Micro Devices, Inc. Droop detection and regulation for processor tiles
US20170038814A1 (en) 2015-08-03 2017-02-09 Qualcomm Incorporated Power distribution network (pdn) droop/overshoot mitigation

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219910A (ja) * 1994-01-28 1995-08-18 Hitachi Ltd マルチプロセッサの早期異常検出方法及びマルチプロセッサシステム
US5565816A (en) 1995-08-18 1996-10-15 International Business Machines Corporation Clock distribution network
JPH09116098A (ja) 1995-10-17 1997-05-02 Sony Corp クロック配給装置
JP4209377B2 (ja) * 2004-10-20 2009-01-14 株式会社ルネサステクノロジ 半導体装置
JP5176231B2 (ja) * 2008-03-10 2013-04-03 株式会社日立製作所 計算機システム、計算機制御方法及び計算機制御プログラム
US8269544B2 (en) 2010-10-01 2012-09-18 Oracle America, Inc. Power-supply noise suppression using a frequency-locked loop
US20120187991A1 (en) 2011-01-25 2012-07-26 Advanced Micro Devices, Inc. Clock stretcher for voltage droop mitigation
US9092210B2 (en) * 2011-11-30 2015-07-28 Intel Corporation Controlling current transients in a processor
US9057761B2 (en) * 2011-12-30 2015-06-16 Arm Limited Sensing supply voltage swings within an integrated circuit
JP2015526920A (ja) * 2012-05-07 2015-09-10 アダプティブ スペクトラム アンド シグナル アラインメント インコーポレイテッド インパルスノイズを検出および緩和するための装置、システムおよび方法
US9276460B2 (en) 2012-05-25 2016-03-01 Flextronics Ap, Llc Power converter with noise immunity
US8604852B1 (en) 2012-09-11 2013-12-10 Oracle International Corporation Noise suppression using an asymmetric frequency-locked loop
US10698432B2 (en) 2013-03-13 2020-06-30 Intel Corporation Dual loop digital low drop regulator and current sharing control apparatus for distributable voltage regulators
CN110109736B (zh) * 2013-12-09 2023-03-07 超威半导体公司 3d芯片系统中的电压下降缓解
US9689917B2 (en) * 2014-08-01 2017-06-27 Oracle International Corporation Digital voltage droop monitor with clock jitter adjustment
JP6533135B2 (ja) * 2015-09-16 2019-06-19 ルネサスエレクトロニクス株式会社 半導体装置
US10261561B2 (en) 2016-09-06 2019-04-16 International Business Machines Corporation Mitigation of on-chip supply voltage based on local and non-local (neighboring) cores' supply voltage information and decision
US10437311B2 (en) 2016-09-06 2019-10-08 International Business Machines Corporation Mitigation of on-chip supply voltage noise by monitoring slope of supply voltage based on time-based sensors

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040066208A1 (en) 2002-10-07 2004-04-08 Liu Jonathan H. Method and apparatus for detection and quantification of on-die voltage noise in microcircuits
US6842027B2 (en) 2002-10-07 2005-01-11 Intel Corporation Method and apparatus for detection and quantification of on-die voltage noise in microcircuits
US20070283172A1 (en) 2006-05-30 2007-12-06 Daniel Douriet Mitigate Power Supply Noise Response by Throttling Execution Units Based Upon Voltage Sensing
US20130049828A1 (en) 2011-08-25 2013-02-28 International Business Machines Corporation Ac supply noise reduction in a 3d stack with voltage sensing and clock shifting
US9164563B2 (en) 2012-05-24 2015-10-20 International Business Machines Corporation Processor noise mitigation using differential critical path monitoring
US20160098070A1 (en) 2014-10-02 2016-04-07 International Business Machines Corporation Voltage droop reduction in a processor
US20160342185A1 (en) 2015-05-22 2016-11-24 Advanced Micro Devices, Inc. Droop detection and regulation for processor tiles
US20170038814A1 (en) 2015-08-03 2017-02-09 Qualcomm Incorporated Power distribution network (pdn) droop/overshoot mitigation

Also Published As

Publication number Publication date
US10171081B1 (en) 2019-01-01
GB2579316B (en) 2021-09-29
DE112018003087T5 (de) 2020-03-05
CN110959257B (zh) 2023-11-28
GB202002342D0 (en) 2020-04-08
JP7279013B2 (ja) 2023-05-22
JP2020529072A (ja) 2020-10-01
WO2019021249A1 (en) 2019-01-31
CN110959257A (zh) 2020-04-03
GB2579316A (en) 2020-06-17
US20190036530A1 (en) 2019-01-31
US10333520B2 (en) 2019-06-25

Similar Documents

Publication Publication Date Title
DE112018003087B4 (de) On-chip-rauschunterdrückung oder -minderung der versorgungsspannung unter verwendung von lokalen detektionsschleifen in einem prozessorkern
Chen et al. Delay-independent minimum dwell time for exponential stability of uncertain switched delay systems
DE102016221813B4 (de) Datenreplikation auf der Grundlage des Verlaufs des Komprimierungsverhältnisses
DE102016103733B4 (de) Kanaleigentum in einem Veröffentlichungs-/Abonnier-System
DE102011102871B4 (de) Adaptive Skalierung der Speicherfrequenz
DE112019004076T5 (de) Dezentralisiertes verteiltes deep learning
DE112017007772T5 (de) Job-verarbeitung in cloud-umgebungen mit quanten-computing-fähigkeit
DE112016004368T5 (de) Verwaltung eines Fehlerzustands in einem Datenverarbeitungssystem
DE102016116721A1 (de) Reduzieren der Ethernet-Latenz in einem Multi-Server Chassis
DE112012002631T5 (de) Stream-Verarbeitung unter Verwendung einer Client-Server-Architektur
DE112011106075T5 (de) Redundantes Serversystem mit einer optimierten Ausfallssicherungseinrichtung
DE102013216556B4 (de) Empfangsschaltung
DE112017001376T5 (de) Erkennen und Vorhersagen von Engpässen in komplexen Systemen
DE112018004220T5 (de) Speicherzugriffs-Vermittlersystem mit anwendungsgesteuerter Unterstützung für frühzeitige Schreibbestätigung
DE102016118534A1 (de) Schaltung und Verfahren zum Prüfen der Integrität eines Steuersignals
DE102012219705A1 (de) Datenpaketverarbeitung im netzwerk
EP3291094A1 (de) Prozessorsystem und verfahren zur überwachung von prozessoren
DE112016005989T5 (de) Zuverlässiges, ausserhalb der reihenfolge liegendes end-to-end-protokoll mit robustem fensterstatusüberlaufmanagement und einem mehrknotensystem durch verwenden desselben
DE102021125847A1 (de) Auf blockchain beruhende reservierung und delegierung von diensten
DE10227618B4 (de) Logikschaltung
DE112019000303T5 (de) Datenspeichersystem, das die datenverlagerung auf grundlage von zeitlicher nähe von zugriffen durchführt
DE102012204064A1 (de) Automatisches Zugriffsteuersystem zum Steuern des Zugriffs auf ein physikalisches Objekt oder des Zugangs zu einem physikalischen Objekt und Verfahren
DE102016105381A1 (de) Gemeinsames Nutzen von Arbeitsspeicher durch Gäste
Uzam et al. The computation of liveness enforcing supervisors from submodels of a Petri net model of FMSs
DE102015116036A1 (de) Dezentrale Realzeitrechenstruktur, die eine speicherinterne Verarbeitung verwendet

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
R084 Declaration of willingness to licence
R020 Patent grant now final