DE102017123496A1 - Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis auf dem Chip - Google Patents

Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis auf dem Chip Download PDF

Info

Publication number
DE102017123496A1
DE102017123496A1 DE102017123496.9A DE102017123496A DE102017123496A1 DE 102017123496 A1 DE102017123496 A1 DE 102017123496A1 DE 102017123496 A DE102017123496 A DE 102017123496A DE 102017123496 A1 DE102017123496 A1 DE 102017123496A1
Authority
DE
Germany
Prior art keywords
voltage
requested
machine
machines
frequency
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.)
Pending
Application number
DE102017123496.9A
Other languages
English (en)
Inventor
Tezaswi Raja
Rohit Singhal
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.)
Nvidia Corp
Original Assignee
Nvidia 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 Nvidia Corp filed Critical Nvidia Corp
Publication of DE102017123496A1 publication Critical patent/DE102017123496A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Sources (AREA)

Abstract

Eine Vorrichtung zur dynamischen Spannungs- und Frequenz-Skalierung. Die Vorrichtung umfasst mehrere Spannungsschienen, welche mehrere Spannungen für ein System auf einem Chip bereitstellen. Die Vorrichtung umfasst mehrere Maschinen, welche in dem System auf dem Chip integriert sind. Die mehreren Maschinen sind mit den mehreren Spannungsschienen gekoppelt. Die Vorrichtung umfasst ein Modul zur dynamischen Spannungs- und Frequenz-Skalierung auf dem Chip, welches mit den mehreren Maschinen gekoppelt ist. Das Modul zum dynamischen Spannungs- und Frequenz-Skalieren ist ausgestaltet, um abhängig von einer entsprechenden Leistungsanforderung von mehreren Leistungsanforderungen von den mehreren Maschinen selektiv jede der mehreren Maschinen mit einer der mehreren Spannungsschienen zu koppeln.

Description

  • QUERBEZUG ZU VERWANDTEN ANMELDUNGEN
  • Diese Anmeldung ist mit der US-Patentanmeldung Nr. 13/947,999 , welche am 22. Juli 2013 eingereicht wurde und den Titel „Closed Loop Dynamic Voltage and Frequency Scaling“ trägt, verwandt, deren Offenbarung hier vollständig durch Referenz aufgenommen wird. Diese Anmeldung ist auch mit der US-Patentanmeldung Nr. 14/876,332 , welche am 6. Oktober 2015 eingereicht wurde und den Titel „Voltage Optimization Circuit and managing Voltage Margins of an Integrated Circuit“ trägt, verwandt, deren Offenbarung hier vollständig durch Referenz aufgenommen wird. Diese Anmeldung ist auch mit der US-Patentanmeldung Nr. 14/323 , 787 , welche den Titel „CLOCK GENERATION CICRUIT THAT TRACKS CRITCIAL PATH ACROSS PROCESS, VOLTAGE AND TEMPERATURE VARIATION“ trägt verwandt, deren Offenbarung hier durch Referenz aufgenommen wird.
  • HINTERGRUND
  • Ein System auf einem Chip (SoC („System on Chip“) weist viele Maschinen auf, welche eine Spannung erfordern. Zur Veranschaulichung können Maschinen („Engines“) Prozessoreinheiten, Kernprozessoreinheiten, Encoder, Decoder, eine Anzeigeeinheit, usw. umfassen. Jede der Maschinen weist eine entsprechende Spannungs-/Frequenz-Kurve auf, welche eine optimale Beziehung zwischen den zwei Variablen definiert. Das heißt, dass für eine Maschine, welche eine bestimmte Taktfrequenz zum Betrieb benötigt, die entsprechende Spannung (Vdd), welche zugeführt werden kann, von der entsprechenden Spannungs-/Frequenz-Kurve bestimmt wird. In ähnlicher Weise kann eine Frequenz bestimmt werden, wenn eine Maschine eine bestimmte Spannung benötigt, wobei dieselbe Spannungs-/Frequenz-Kurve verwendet wird. Daher stellt die Spannungs-/Frequenz-Kurve mehrere Spannungs-/Frequenz-Punkte bereit, welche einen optimalen Betrieb für diese Maschine definieren.
  • Zum Beispiel kann eine Browser-Anwendung, welche durch eine Maschine ausgeführt wird, für ein optimales Leistungsverhalten eine sehr hohe Frequenz benötigen, wenn eine Webseite heruntergeladen wird. Die entsprechende Spannung, welche zugeführt werden kann, um die Frequenz aufrechtzuerhalten, wird von einer entsprechenden Spannungs-/Frequenz-Kurve bestimmt. Nachdem die Webseite heruntergeladen worden ist, kann es sein, dass die Maschine nicht länger eine so hohe Frequenz benötigt, da ihre Anforderungen geringer sind (z.B. Scrollen durch die heruntergeladene Webseite), und daher kann die zugeführte Spannung gemäß der entsprechenden Spannungs-/Frequenz-Kurve eingestellt werden, um der geringeren Betriebsfrequenz zu entsprechen.
  • Die mehreren Maschinen sind typischerweise mit einer gemeinsamen Spannungsschiene gekoppelt, welche eine Spannung, wie z.B. Vdd, zuführt. Die Spannungsschiene wird durch eine integrierte Spannungsverwaltungsschaltung (PMIC („Power Management Integrated Circuit“)) gesteuert, welche sich außerhalb des Chips (off-chip, d.h. abgesetzt vom SoC) befindet. Die Spannungs-/Frequenz-Kurve kann für jede der mehreren Maschinen unterschiedlich sein. Daher können für irgendeinen bestimmten Zeitpunkt die mehreren Maschinen eine beliebige Anzahl von Frequenzen erfordern, wobei jede von ihnen eine andere Spannung gemäß ihrer entsprechenden Spannungs-/Frequenz-Kurven erfordern kann. Um all den Maschinen Rechnung zu tragen, erhöht die PMIC die zugeführte Vdd auf die höchste angeforderte Spannung für alle anfordernden Maschinen, welche mit der Spannungsschiene gekoppelt sind. Auf diese Weise fällt keine der Maschinen dadurch aus, dass sie mit einer zu geringeren Frequenz läuft.
  • Indem jedoch alle Maschinen mit der höchsten angeforderten Spannung laufen, ist das SoC ineffizient, da alle bis auf eine dieser Maschinen nicht an ihren optimalen Frequenz-/Spannungs-Punkten laufen. Energie wird bei den Maschinen vergeudet, welche nicht bei ihrer optimalen Spannung gemäß ihrer Spannungs/Frequenz-Kurve laufen, da die aktuelle Spannung aufgrund anderer Maschinen höher ist. Die verschwendete Energie steht mit der Differenz der zwei Spannungen in Beziehung. Die Energieverschwendung wird durch jede zusätzliche Maschine, welche unter nicht optimalen Bedingungen läuft, vergrößert.
  • Da die PMIC außerhalb des Chips angeordnet ist, kann darüber hinaus die Zeitspanne, welche erforderlich ist, um die geeignete höchste angeforderte Spannung zu jedem Zeitpunkt zu bestimmen, lang sein oder in der Größenordnung von zig Mikrosekunden liegen. Dies liegt daran, dass die angeforderten Frequenzen gesammelt werden müssen, wobei dann die höchste angeforderte Spannung von den mehreren Spannungs-/Frequenz-Kurven bestimmt wird, wobei dann eine Anforderung an die PMIC abgegeben wird, um die Spannung anzufordern, und wobei dann schließlich die PMIC die angeforderte Spannung abgibt. Zumindest einige dieser Verarbeitungen und Kommunikationen erfolgen außerhalb des Chips, wodurch eine zusätzliche Verzögerung eingeführt wird. Je länger diese Verzögerung ist, desto mehr Energie wird verschwendet, insbesondere wenn das SoC auf eine geringere Spannung herunter geregelt wird.
  • Es ist daher wünschenswert, ein Spannungsabgabesystem zu haben, welches in der Lage ist, verschiedene Spannungen zu mehreren Maschinen eines SoC zuzuführen.
  • ZUSAMMENFASSUNG
  • Eine Spannungsverwaltung für ein Bauelement einer integrierten Schaltung (IC) wird hier beschrieben. Insbesondere wird eine beispielhafte Ausführungsform der vorliegenden Erfindung im Zusammenhang mit einer dynamischen Spannungs- und Frequenz-Skalierung mit einer geschlossenen Regelschleife für eine Spannungsverwaltung in einem SoC beschrieben.
  • Bei erfindungsgemäßen Ausführungsformen wird ein Verfahren zur Spannungsverwaltung offenbart. Das Verfahren weist ein Erfassen einer ersten Leistungsanforderung von einer ersten Maschine eines SoC auf. Das Verfahren weist ein Bestimmen eines ersten Spannungs- und Frequenz-Punktes abhängig von der ersten Leistungsanforderung auf. Der erste Spannungs- und Frequenz-Punkt umfasst eine erste angeforderte Spannung. Das Verfahren weist ein Bestimmen einer ersten Spannungsschiene von mehreren Spannungsschienen auf, welche eine erste Spannung aufweist, die am dichtesten an der ersten angeforderten Spannung liegt, wobei die erste Spannung gleich oder größer als die erste angeforderte Spannung ist. Das Verfahren weist ein Koppeln der ersten Maschine mit der ersten Spannungsschiene unabhängig von anderen Maschinen in dem SoC auf.
  • Bei anderen erfindungsgemäßen Ausführungsformen wird ein anderes Verfahren zur Spannungsverwaltung offenbart. Das Verfahren weist ein selektives Koppeln von jeder von mehreren Maschinen eines SoC mit einer von mehreren Spannungsschienen auf. Das Koppeln einer Maschine mit einer Spannungsschiene ist abhängig von einer entsprechenden Leistungsanforderung der Maschine. Die Leistungsanforderung ist eine von mehreren Leistungsanforderungen, welche von den mehreren Maschinen erfasst werden. Das Verfahren weist für eine bestimmte Maschine ein Einstellen einer Spannung, welche von einer entsprechenden Spannungsschiene aufgenommen wird, auf, um an eine angeforderte Spannung angepasst zu werden, welche von einer entsprechenden Leistungsanforderung abhängt. Das Spannungs-Einstellen kann mittels eines entsprechenden Low-Dropout-Reglers (LDO-Reglers oder Spannungsreglers) bewerkstelligt werden, welcher zwischen die entsprechende Maschine und die entsprechende Spannungsschiene gekoppelt ist. Darüber hinaus wird die angeforderte Spannung von einem entsprechenden Spannungs-und Frequenz-Punkt abhängig von der entsprechenden Leistungsanforderung bestimmt. Der Spannungs- und Frequenz-Punkt umfasst die entsprechende angeforderte Spannung. Darüber hinaus wird der Spannung- und Frequenz-Punkt von einer entsprechenden Frequenz- vs. Versorgungsspannungs-Kurve oder Kurve der Frequenz gegenüber bzw. vs. der Versorgungsspannung, welche der entsprechenden Maschine zugeordnet ist, bestimmt.
  • Bei noch einer anderen Ausführungsform wird eine Vorrichtung, welche zur Spannungsverwaltung ausgestaltet ist, offenbart. Die Vorrichtung weist mehrere Spannungsschienen auf, welche mehrere Spannungen zu einem SoC zuführen. Die Spannungsschienen werden durch eine PMIC gesteuert, welche außerhalb des Chips aus Sicht eines SoC angeordnet ist. Die Vorrichtung weist mehrere Maschinen auf, welche in dem SoC integriert sind. Die mehreren Maschinen sind mit den mehreren Spannungsschienen gekoppelt. Die Vorrichtung weist ein Modul zur dynamischen Spannungs- und Frequenz-Skalierung (DVFS („Dynamic Voltage and Frequency Scaling“)) auf, welches mit den mehreren Maschinen gekoppelt ist. Das DVFS-Modul ist ausgestaltet, um selektiv jede der mehreren Maschinen mit einer der mehreren Spannungsschienen abhängig von einer entsprechenden Leistungsanforderung von mehreren Leistungsanforderungen von den mehreren Maschinen zu koppeln.
  • Diese und andere Aufgaben und Vorteile der verschiedenen Ausführungsformen der vorliegenden Offenbarung erkennt der Fachmann nach dem Lesen der folgenden detaillierten Beschreibung der Ausführungsformen, welche in den verschiedenen Figuren dargestellt sind.
  • Figurenliste
    • Die beigefügten Zeichnungen, welche hier aufgenommen sind und einen Teil dieser Spezifikation bilden und in welchen ähnliche Bezugszeichen ähnliche Elemente bezeichnen, stellen Ausführungsformen der vorliegenden Offenbarung dar und dienen, zusammen mit der Beschreibung, dazu, die Prinzipien der Offenbarung zu erläutern.
    • 1 stellt ein Blockdiagramm eines beispielhaften Computersystems dar, welches geeignet ist, um Ausführungsformen gemäß der vorliegenden Offenbarung zu implementieren.
    • 2A ist gemäß einer erfindungsgemäßen Ausführungsform ein Blockdiagramm, welches die Implementierung einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis zum Zweck einer Spannungsverwaltung darstellt, was ein grobes Einstellen einer Spannung umfasst.
    • 2B ist gemäß einer erfindungsgemäßen Ausführungsform ein Blockdiagramm, welches eine andere Implementierung einer dynamischen Spannungs- und Frequenz-Skalierung mit einem geschlossenen Regelkreis darstellt, was ein feines Einstellen einer Spannung umfasst.
    • 3 ist gemäß einer erfindungsgemäßen Ausführungsform ein Flussplan, welcher ein Verfahren zum Durchführen einer dynamischen Spannungs- und Frequenz-Skalierung mit einer geschlossenen Regelschleife für eine Spannungsverwaltung darstellt.
    • 4 ist gemäß einer erfindungsgemäßen Ausführungsform ein Flussplan, welcher ein anderes Verfahren zum Durchführen einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossener Regelschleife für eine Spannungsverwaltung darstellt.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Nun wird im Detail Bezug auf verschiedene erfindungsgemäße Ausführungsformen genommen, wobei Beispiele davon in den beigefügten Figuren dargestellt sind. Während diese im Zusammenhang mit diesen Ausführungsformen beschrieben werden, sollte klar sein, dass diese nicht dazu ausgelegt sind, um die Offenbarung dieser Ausführungsformen zu beschränken. Stattdessen beabsichtigt diese Offenbarung Alternativen, Modifikationen und Äquivalente abzudecken, welche in dem Geist und in dem Umfang der Offenbarung, wie er durch die beigefügten Ansprüche definiert ist, enthalten sind. Darüber hinaus werden in der folgenden detaillierten Beschreibung der vorliegenden Erfindung zahlreiche spezifische Details dargelegt, um ein vollständiges Verständnis der vorliegenden Erfindung bereitzustellen. Es ist jedoch klar, dass die vorliegende Erfindung auch ohne diese bestimmten Details ausgeführt werden kann. In anderen Fällen sind gut bekannte Verfahren, Prozeduren, Komponenten und Schaltungen nicht im Detail beschrieben worden, um die Aspekte der vorliegenden Erfindung nicht unnötigerweise zu verschleiern.
  • Dementsprechend stellen erfindungsgemäße Ausführungsformen einen schnellen und effizienten dynamischen Spannungs- und Frequenz-Skalierungsmechanismus bereit. Ausführungsformen der vorliegenden Erfindung stellen einen Steuerregelkreis bereit, welcher in Hardware oder Software oder einer Kombination dieser beiden implementiert ist, wobei der Steuerregelkreis vollständig auf dem Chip enthalten ist, um eine Operationsgeschwindigkeit zu erhöhen. Insbesondere weist der Steuerregelkreis eine dynamische Taktquelle und eine dynamische Spannungsquelle auf, welche in einigen Nanosekunden eingestellt werden, was wesentlich schneller als bei herkömmlichen Steuerregelkreismechanismen der Fall ist, welche Regelkreiszeiten in der Größenordnung von Mikrosekunden aufweisen. Daher ist der Steuerregelkreis der Ausführungsformen der vorliegenden Erfindung schnell und effizient und ermöglicht eine sehr aggressive und effiziente DVFS-Vorgehensweise.
  • Überall in dieser Anmeldung kann der Begriff „SoC“ analog zu dem Begriff „Chip“ verstanden werden, wobei beide eine integrierte Schaltung definieren, welche auf einem einzigen Chipsubstrat implementiert ist. Sie kann Komponenten eines Computersystems oder eines anderen elektronischen Systems enthalten. Darüber hinaus definiert der Begriff „Logikblock“ einen spezialisierten Schaltungsentwurf, welcher eine oder mehrere spezielle Funktionen ausführt. Der Logikblock kann teilweise mit anderen Logikblöcken integriert sein, um ein SoC auszubilden. Darüber hinaus kann der Begriff „Logikblock“ analog zu dem Begriff „Chiplet“ oder „Designmodul“ verstanden werden.
  • Einige Abschnitte der detaillierten Beschreibungen, welche folgen, werden bezüglich Prozeduren, Logikblöcken, Verarbeitungen und anderen symbolischen Darstellungen von Operationen auf Datenbits in einem Computerspeicher dargestellt. Diese Beschreibungen und Darstellungen sind die Mittel, welche der Fachmann in der Datenverarbeitung verwendet, um die Substanz seiner Arbeit anderen Fachleuten auf die effizienteste Weise zu übermitteln. In der vorliegenden Anmeldung ist eine Prozedur, ein Logikblock, ein Prozess oder Ähnliches als eine in sich stimmige Folge von Schritten oder Anweisungen zu verstehen, welche zu einem erwünschten Ergebnis führt. Die Schritte setzen somit physikalische Manipulationen von physikalischen Größen ein. Gewöhnlicherweise nehmen diese Größen, obwohl es nicht notwendig ist, die Form von elektrischen oder magnetischen Signalen an, welche gespeichert, übertragen, kombiniert, verglichen oder anderweitig in einem Computersystem manipuliert werden können. Es hat sich bisweilen bewährt, prinzipiell als gemeinsame Grundlage, diese Signale als Transaktionen, Bits, Werte, Elemente, Symbole, Zeichen, Muster, Pixel oder Ähnliches zu bezeichnen.
  • Es sollte jedoch im Hinterkopf behalten werden, dass all diese und ähnliche Begriffe den geeigneten physikalischen Größen zuzuordnen sind und nur bequeme Bezeichnungen sind, welche auf diese Größen angewendet werden. Wenn es nicht speziell in den folgenden Diskussionen offensichtlich ausgeführt ist, sollen sich überall in der vorliegenden Offenbarung Diskussionen, welche Begriffe, wie z.B. „Starten“, „Ausführen“, „Zugreifen“, „Einstellen“, „Herstellen“ oder Ähnliches einsetzen, auf Aktionen und Prozesse (z.B. in Flussplänen 4A-D der vorliegenden Anmeldung) eines Computersystems oder einer ähnlichen Computervorrichtung oder eines Prozessors (z.B. dem Computersystem 100 und der Client-Vorrichtung 200) beziehen. Das Computersystem oder eine ähnliche elektronische Computervorrichtung manipuliert und transformiert Daten, welche als physikalische (elektronische) Größen in den Computersystem-Speichern, Registern oder anderen solchen Informationsspeicher-, Übertragungs oder Anzeige-Vorrichtungen verkörpert sind.
  • Überall in der Beschreibung sind gemäß erfindungsgemäßen Ausführungsformen Flusspläne von Beispielen eines computerimplementierten Verfahrens für die dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis beschrieben, welche zur Spannungsverwaltung eingesetzt werden. Obwohl bestimmte Schritte in den Flussplänen offenbart sind, sind solche Schritte beispielhaft zu verstehen. Das heißt, Ausführungsformen der vorliegenden Erfindung sind gut geeignet, verschiedene andere Schritte oder Variationen der in den Flussplänen dargestellten Schritte auszuführen.
  • Andere Ausführungsformen, welche hier beschrieben sind, werden in dem allgemeinen Kontext von von einem Computer ausführbaren Anweisungen, welche sich in irgendeiner Form eines von einem Computer lesbaren Speichermediums befinden, wie z.B. Programmmodule, welche durch ein oder mehrere Computer oder andere Vorrichtungen ausgeführt werden, diskutiert. Beispielsweise, was nicht einschränkend zu verstehen ist, können von einem Computer lesbare Speichermedien nicht flüchtige Computer-Speichermedien und -Kommunikationsmedien umfassen. Im Allgemeinen umfassen Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen, usw., welche bestimmte Aufgaben und bestimmte abstrakte Datentypen implementieren. Die Funktionalität der Programmmodule können kombiniert oder verteilt werden, wie es bei verschiedenen Ausführungsformen erwünscht ist.
  • Computer-Speichermedien umfassen flüchtige und nicht flüchtige, entfernbare und nicht-entfernbare Medien, welche auf irgendeine Weise oder Technologie zum Speichern von Informationen, wie beispielsweise von einem Computer lesbaren Anweisungen, Datenstrukturen, Programmmodulen oder anderen Daten, implementiert sind. Computerspeichermedien umfassen, was nicht einschränkend zu verstehen ist, Direktzugriffspeicher (RAM), Festwertspeicher (ROM), elektrisch löschbare programmierbare ROM (EEPROM), Flash-Speicher oder andere Speichertechnologien, eine CD-Platte (CD-ROM), digital versatile Disks (DVDs) oder andere optische Speicher, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder irgendein anderes Medium, welches eingesetzt werden kann, um die erwünschte Information zu speichern und dann darauf zugegriffen werden kann, um diese Information zu lesen.
  • Kommunikationsmedien können computerausführbare Anweisungen, Datenstrukturen und Programmmodule enthalten und schließen alle Informationsträger ein. Als Kommunikationsmedien gelten beispielsweise drahtgebundene Medien, wie ein drahtgebundenes Netzwerk oder eine Direktverbindung, sowie drahtlose Medien, wie Akustik-, Radiofrequenz- (RF-), Infrarot- und andere drahtlose Medien. Kombinationen der oben genannten Elemente können auch in den Anwendungsbereich computerlesbarer Medien aufgenommen werden.
  • 1 ist ein Blockschaltbild eines Beispiels eines Computersystems 100, das in der Lage ist, Ausführungsformen der vorliegenden Erfindung zu implementieren. Das Computersystem 100 stellt im Großen und Ganzen ein einen einzelnen oder mehrere Prozessoren umfassendes Rechengerät oder System dar, das in der Lage ist, computerlesbare Anweisungen auszuführen. Beispiele für das Computersystem 100 sind, ohne Einschränkung, Workstations, Laptops, Client-seitige Terminals, Server, verteilte Computersysteme, Handheld-Geräte, Spielsysteme, Spielkontroller oder andere Computersysteme oder -geräte. In seiner grundlegendsten Konfiguration kann das Computersystem 100 mindestens einen Prozessor 105 und einen Systemspeicher 110 enthalten.
  • Es ist klar, dass das hier beschriebene Computersystem 100 eine beispielhafte Konfiguration einer Betriebsplattform darstellt, auf der Ausführungsformen vorteilhaft implementiert werden können. Dennoch können im Rahmen der vorliegenden Erfindung anstelle des Computersystems 100 auch andere Computersysteme mit unterschiedlichen Konfigurationen verwendet werden. Das heißt, das Computersystem 100 kann andere Elemente als die in Verbindung mit 1 beschriebenen enthalten. Darüber hinaus können Ausführungsformen auf jedem System ausgebildet sein, das so konfiguriert werden kann, um es zu ermöglichen, nicht nur auf Computersystemen wie dem Computersystem 100. Es wird davon ausgegangen, dass Ausführungsformen auf vielen verschiedenen Arten von Computersystemen 100 praktiziert werden können. Das System 100 kann z.B. als Desktop-Computersystem oder Server-Computersystem implementiert werden, das über eine leistungsfähige Universal-CPU verfügt, die mit einer dedizierten Grafik-Rendering-GPU gekoppelt ist. Bei einer solchen Ausführungsform können Komponenten enthalten sein, die Peripheriebusse, spezialisierte Audio-A/ideokomponenten, I/O-Geräte und dergleichen hinzufügen. Ebenso kann das System 100 als Handheld-Gerät (z.B. Handy, etc.) oder als Set-Top-Videospielkonsole implementiert werden, wie z.B. Xbox®, erhältlich bei der Microsoft Corporation in Redmond, Washington, oder die PlayStation3®, erhältlich bei der Sony Computer Entertainment Corporation in Tokio, Japan, oder die SHIELD Portable-Geräte (z.B. tragbare Spielkonsole, Tablet-Computer, Fernseh-Set-Top-Box, usw.) erhältlich bei Nvidia Corp. Das System 100 kann auch als „System auf einem Chip“ realisiert werden, bei dem die Elektronik (z.B. die Komponenten 105, 110, 115, 120, 125, 130, 150, usw.) eines Rechengeräts vollständig in einem einzigen integrierten Schaltkreis enthalten sind. Beispiele hierfür sind ein tragbares Gerät mit Display, ein Auto-Navigationssystem, ein tragbares Unterhaltungssystem und Ähnliches.
  • Im Beispiel von 1 enthält das Computersystem 100 eine Zentraleinheit (CPU) 105 zur Ausführung von Softwareanwendungen und optional ein Betriebssystem. Im Speicher 110 werden Anwendungen und Daten für die Verwendung durch die CPU 105 gespeichert. Ein Speicher 115 bietet nichtflüchtigen Speicher für Anwendungen und Daten und kann Festplattenlaufwerke, Wechseldatenträger, Flash-Speichergeräte und CD-ROM, DVD-ROM oder andere optische Speichergeräte umfassen. Die optionale Benutzereingabe 120 umfasst Geräte, die Benutzereingaben von einem oder mehreren Benutzern an das Computersystem 100 übermitteln, und kann Tastaturen, Mäuse, Joysticks, Touchscreens und/oder Mikrofone umfassen.
  • Die Kommunikations- oder Netzwerkschnittstelle 125 ermöglicht es dem Computersystem 100, mit anderen Computersystemen über ein elektronisches Kommunikationsnetz, einschließlich drahtgebundener und/oder drahtloser Kommunikation und einschließlich des Internets, zu kommunizieren. Das optionale Anzeigegerät 150 kann jedes Gerät sein, das in der Lage ist, visuelle Informationen als Reaktion auf ein Signal des Computersystems 100 anzuzeigen. Die Komponenten des Computersystems 100, einschließlich CPU 105, Speicher 110, Datenspeicher 115, Benutzereingabegeräte 120, Kommunikationsschnittstelle 125 und Anzeigegerät 150, können über einen oder mehrere Datenbusse 160 gekoppelt werden.
  • Bei der Ausführungsform von 1 kann ein Grafiksystem 130 mit dem Datenbus 160 und den Komponenten des Rechnersystems 100 gekoppelt werden. Das Grafiksystem 130 kann eine physikalische Grafikverarbeitungseinheit (GPU) 135 und einen Grafikspeicher enthalten. Die GPU 135 generiert aus Renderbefehlen Pixeldaten für Ausgabebilder. Die physische GPU 135 kann als mehrere virtuelle GPUs konfiguriert sein, die parallel (gleichzeitig) von mehreren parallel ausgeführten Anwendungen genutzt werden können.
  • Der Grafikspeicher kann einen Anzeigespeicher 140 (z.B. einen Framebuffer) enthalten, der für die Speicherung von Pixeldaten für jedes Pixel eines Ausgabebildes verwendet wird. In einer anderen Ausführungsform kann der Anzeigespeicher 140 und/oder ein zusätzlicher Speicher 145 Teil des Speichers 110 sein und mit der CPU 105 gemeinsam benutzt werden. Alternativ können der Anzeigespeicher 140 und/oder der Zusatzspeicher 145 ein oder mehrere separate Speicher sein, die ausschließlich für die Verwendung des Grafiksystems 130 vorgesehen sind.
  • Bei einer anderen Ausführungsform enthält das Grafikverarbeitungssystem 130 einen oder mehrere zusätzliche physikalische GPUs 155, ähnlich der GPU 135. Jede weitere GPU 155 kann so angepasst sein, dass sie parallel zur GPU 135 betrieben werden kann. Jede weitere GPU 155 generiert aus Rendering-Befehlen Pixeldaten für Ausgabebilder. Jede weitere physikalische GPU 155 kann als mehrere virtuelle GPUs konfiguriert sein, die parallel (gleichzeitig) von mehreren parallel ausgeführten Anwendungen genutzt werden können. Jede weitere GPU 155 kann in Verbindung mit der GPU 135 betrieben werden, um gleichzeitig Pixeldaten für verschiedene Teile eines Ausgabebildes zu erzeugen oder um gleichzeitig Pixeldaten für verschiedene Ausgabebilder zu erzeugen.
  • Jede weitere GPU 155 kann sich auf derselben Platine wie die GPU 135 befinden und eine Verbindung mit der GPU 135 zum Datenbus 160 gemeinsam nutzen, oder jede weitere GPU 155 kann sich auf einer anderen Platine befinden, die separat mit dem Datenbus 160 gekoppelt ist. Jede weitere GPU 155 kann auch in dem gleichen Modul oder Chip-Gehäuse wie die GPU 135 integriert sein. Jede weitere GPU 155 kann über zusätzlichen Speicher verfügen, ähnlich dem Display-Speicher 140 und dem zusätzlichen Speicher 145, oder die Speicher 140 und 145 mit der GPU 135 gemeinsam nutzen.
  • Zusätzlich kann ein DVFS-Modul 170 in einer Ausführungsform in das Grafiksystem 130 eingebunden sein. In einer anderen Ausführungsform befindet sich das DVFS-Modul 170 auf einem SoC, das vom Grafiksystem 130 getrennt ist. Das DVFS-Modul 170 ist so konfiguriert, dass es eine schnelle und effiziente dynamische Spannungs- und Frequenz-Skalierung durchführt. Die Lösung implementiert einen Regelkreis, der vollständig auf dem Chip (z.B. dem SoC) enthalten ist, und ist damit deutlich schneller als eine Lösung mit einem off-chip PMIC oder PMIC außerhalb des Chips.
  • 2A ist gemäß einer erfindungsgemäßen Ausführungsform ein Blockdiagramm eines Systems 290, welches die Implementierung einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis zum Zwecke einer Spannungsverwaltung darstellt, um eine grobe Einstellung der Spannung zu realisieren. Insbesondere ist die Spannungsverwaltung für ein SoC 200A der 2A im Zusammenhang mit einer dynamischen Spannungs- und Frequenz-Skalierung für die Spannungsverwaltung beschrieben. Insbesondere stellen Ausführungsformen der vorliegenden Erfindung eine unabhängige Programmierung von erwünschten (z.B. angeforderten) Sollbetriebsfrequenzen von einer oder von mehreren Maschinen des SoC 200A bereit. Der Betrieb des SoC 200A bei seinen Solltaktfrequenzen bestimmt auch ein Niveau zum Einstellen der Kernversorgungsspannung (Vdd) abhängig von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung für eine entsprechende Maschine. Daher läuft die entsprechende Maschine für eine vorgegebene Frequenz mit ihrer optimalen Spannung, was Energie spart und einen Stromfluss minimiert.
  • Wie in 2A dargestellt ist, ist ein SoC 200A links einer Linie A--A in dem System 290 dargestellt und weist mehrere Maschinen 210 (z.B. die Maschinen A-N) auf. Zum Beispiel umfasst das SoC 200A eine integrierte Schaltung, welche eine oder mehrere Komponenten eines elektronischen Systems umfasst und typischerweise auf einem einzigen Chipsubstrat ausgestaltet ist. Nur zum Zwecke einer Darstellung kann bei dem SoC 200A eine Maschine als Verarbeitungseinheiten, Kernverarbeitungseinheiten, Encoder, Decoder, Anzeigeeinheit, usw. ausgestaltet sein. Jede der Maschinen weist eine entsprechende Kurve der Frequenz vs. der Versorgungsspannung auf, welche eine optimale Beziehung zwischen den zwei Variablen definiert. Daher kann jede der Maschinen ein anderes und/oder einzigartiges Spannungsniveau bezüglich der entsprechenden angeforderten Betriebsfrequenzen erfordern, um ein optimales Leistungsverhalten zu einem bestimmten Zeitpunkt zu erreichen.
  • Um die Effizienz zu verbessern, kann bei einer Ausführungsform ein ideales Spannungsverteilungsnetz ausgestaltet sein, so dass jede Maschine ihre eigene separate variable Spannungsschiene besitzt, welche direkt von der PMIC 250 versorgt wird. Die PMIC 250 kann unabhängig von dem SoC 200A sein und kann ausgestaltet sein, um die Spannungsniveaus, welche über die mehreren Spannungsschienen 240 versorgt werden, zu regeln und/oder zu steuern. Bei einer Ausführungsform sind über eine Zeitperiode die Spannungen, welche über die Spannungsschienen 240 versorgt werden, konstant, so dass ein Einstellen der Spannungen, welche durch die mehreren Maschinen 210 erhalten werden, auf dem Chip durch das SoC 200A durchgeführt wird. Wie in 2A dargestellt ist, kann die PMIC 250 auf einer PCB angeordnet (z.B. auf dieser montiert und elektrisch und kommunikationstechnisch mit dieser gekoppelt) sein, welche das SoC 200A aufweist und auf welcher das SoC 200A auch angeordnet ist.
  • Ein Versorgen von N Schienen für N Maschinen kann jedoch praktisch schwierig und/oder teuer zu implementieren sein. Darüber hinaus kann eine Spannungsverwaltung durch die PMIC Verzögerungen einführen, wenn sich Spannungsniveaus auf einer Spannungsschiene ändern, da Kommunikationen außerhalb des Chips betroffen sind. Andere Ausführungsformen der vorliegenden Erfindung stellen eine dynamische Spannungs- und Frequenz-Skalierung für eine Spannungsverwaltung bereit, welche auf dem Chip implementiert ist. Insbesondere können bei anderen Ausführungsformen der vorliegenden Erfindung mehrere Spannungsschienen 240 für eine Auswahl durch jede der Maschinen bereitgestellt werden, wobei die Anzahl der Spannungsschienen geringer als die Anzahl der Maschinen ist. Wie in 2A dargestellt ist, umfasst, nur zu darstellerischen Zwecken, die Mehrzahl 240 der Spannungsschienen die Spannungsschienen 241, 242 und 243. Andere Ausführungsformen können mehr als drei Spannungsschienen oder weniger als drei Spannungsschienen aufweisen. Die Mehrzahl der Maschinen 210 ist mit den mehreren Spannungsschienen 240 gekoppelt. Das heißt, anstelle einer 1-zu-1-Beziehung zwischen den Maschinen und den Spannungsschienen kann eine geringere Anzahl von Spannungsschienen konfigurierbar sein, um eine größere Anzahl von Maschinen zu versorgen.
  • Darüber hinaus umfasst das SoC 200A ein Modul 205 zur dynamischen Spannungs- und Frequenz-Skalierung (DVFS („Dynamic Voltage and Frequency Scaling“)). Das CL-DVFS-Modul 205 ist mit den mehreren Maschinen 210 gekoppelt und ausgestaltet, um die Versorgungsspannung (z.B. Vdd) zu steuern oder zu regeln, welche jeder der Schienen (z.B. 241, 242 und 243) zugeführt ist. Da das DVFS-Modul 205 auf dem Chip (d.h. auf dem SoC 200A) angeordnet ist, ist eine Steuerung der Versorgungsspannungsniveaus ohne die Verwendung der außerhalb des Chips befindlichen PMIC 250 implementiert. Insbesondere ist das DVFS-Modul 205 ausgestaltet, um selektiv jede der mehreren Maschinen 210 mit einer aus der Mehrzahl der Spannungsschienen 240 abhängig von einer entsprechenden Leistungsanforderung zu koppeln. Für eine bestimmte Maschine wird eine entsprechende Leistungsanforderung erfasst und/oder bestimmt. Bei einer Ausführungsform wird die Leistungsanforderung durch die entsprechende Maschine bestimmt. Zum Beispiel kann zu einem bestimmten Moment eine Taktfrequenz durch die Maschine unter Berücksichtigung der Aufgabe, welche auszuführen ist, für ein optimales Leistungsverhalten bestimmt und angefordert werden.
  • Andere Maschinen können andere optimale Leistungsmerkmale (z.B. Taktfrequenzen) anfordern. Wie in 2A dargestellt ist, hat die Maschine A ihre Leistungsanforderungen bestimmt und sendet eine Leistungsanforderung A an das CL-DVFS-Modul 205. Zum Beispiel kann die Leistungsanforderung eine bestimmte Taktfrequenz sein. Auch die Maschine B hat ihre Leistungsanforderungen bestimmt und sendet eine Leistungsanforderung B an das CL-DVFS-Modul 205. Darüber hinaus hat die Maschine C ihre Leistungsanforderungen bestimmt und sendet eine Leistungsanforderung C an das CL-DVFS-Modul 205.
  • Bei einer Ausführungsform führt das CL-DVFS-Modul 205 eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossener Regelschleife aus. Das heißt, die CL-DVFS 205 ist ausgestaltet, um abhängig von der entsprechenden erfassten Leistungsanforderung die Versorgungsspannung (Vdd) zu steuern oder zu regeln, welche jeder der mehreren Maschinen 210 zugeführt wird. Wie in 2A dargestellt ist, ist die CL-DVFS 205 zum Zweck einer groben Einstellung ausgestaltet, um die geeignete Spannungsschiene für eine entsprechende Maschine und ihre Leistungsanforderung auszuwählen. Insbesondere wählt die CL-DVFS 205 die Spannungsschiene aus, welche abhängig von der Leistungsanforderung am dichtesten an der angeforderten Spannung liegt, wobei die Spannung, welche durch die ausgewählte Spannungsschiene zugeführt wird, am dichtesten an der angeforderten Spannung liegt, wenn sie mit allen Spannungen verglichen wird, welche durch die mehreren Spannungsschienen zugeführt werden, und wobei die zugeführte Spannung gleich oder größer als die angeforderte Spannung ist. Insbesondere ist die CL-DVFS 205 in der Lage, um zum Beispiel mehrere Schalter 220 zu steuern, welche ausgestaltet sind, um die geeignete Spannungsschiene mit der entsprechenden Maschine zu koppeln. Wie vorab beschrieben ist, wird die angeforderte Spannung abhängig von der Leistungsanforderung (z.B. einer Frequenzanforderung) der anfordernden Maschine von einer Kurve der Frequenz vs. der Versorgungsspannung bestimmt.
  • Zum Beispiel ist die CL-DVFS 205 ausgestaltet, um die geeignete Spannungsschiene für eine Maschine A und ihre entsprechende Leistungsanforderung auszuwählen. Die Leistungsanforderung ist einer angeforderten Frequenz und/oder angeforderten Spannung abhängig von der entsprechenden Kurve der Frequenz vs. der Versorgungsspannung zugeordnet. Für eine grobe Einstellung ist die CL-DVFS 205 ausgestaltet, um zwischen den Spannungsschienen 241, 242 und 243 mittels des geeigneten Schalters aus der Gruppe von Schaltern 220A auszuwählen. In ähnlicher Weise ist die CL-DVFS 205 für die Maschine B und ihre entsprechende Leistungsanforderung ausgestaltet, um zwischen den Spannungsschienen 241, 242 und 243 mittels des geeigneten Schalters aus der Gruppe von Schaltern 220B auszuwählen. Darüber hinaus ist die CL-DVFS 205 für eine Maschine C und ihre entsprechende Leistungsanforderung ausgestaltet, um zwischen den Spannungsschienen 241, 242 und 243 mittels des geeigneten Schalters aus der Gruppe von Schaltern 220C auszuwählen.
  • Bei einem Betrieb mit geschlossener Regelschleife umfasst die Steuerschleife eine dynamische Taktquelle und eine dynamische Spannungsquelle, welche rasch (z.B. innerhalb einiger Nanosekunden) eingestellt werden können. Bei einer Ausführungsform werden die Taktquelle und die Spannungsquelle unabhängig voneinander eingestellt. Bei anderen Ausführungsformen werden die Taktquelle und die Spannungsquelle zusammen eingestellt, so dass die Frequenz und die Spannung als Eingaben für das System mit dem geschlossenen Regelkreis eingesetzt werden.
  • Zum Beispiel stellt die Ausgabe zu einem digital parametrisierbaren spannungsgesteuerten Oszillator („Digitally parameterizable Voltage Controlled Oscillator“ (DVCO)) (nicht dargestellt) eine dynamische Taktquelle bereit. Der DVCO ist in den Referenzen der US-Patentanmeldung Nr. 13/947,999 mit dem Titel „Closed Loop Dynamic Voltage and Frequency Scaling“ und/oder der US-Patentanmeldung Nr. 14/876,332 mit dem Titel „Voltage Optimization Circuit and managing Voltage Margins of an Integrated Circuit“, und der US-Patentanmeldung Nr. 14/323,787 mit dem Titel „CLOCK GENERATION CIRCUIT THAT TRACKS CRITICAL PATH ACROSS PROCESS, VOLTAGE AND TEMPERATURE VARIATION“ beschrieben. Bei einer Ausführungsform ermöglicht die Betriebsart mit geschlossener Regelschleife der CL-DVFS 205, die Sollausgangsfrequenz des DVCO bei einem erwünschten Wert für ein optimales Leistungsverhalten der entsprechenden Maschine des SoC 200A zu halten. Als Beispiel hält das CL-DVFS-Modul 205 die Sollfrequenz, indem Einstellungen an der Spannung, welche der entsprechenden Maschine zugeführt wird, ständig aktualisiert werden. Bei einer Ausführungsform wird die Spannung mittels eines Low-Dropout- (LDO-) Reglers eingestellt, bis der Frequenzfehler zwischen der erwünschten Frequenz und der Frequenzausgabe, welche durch den DVCO erzielt wird, einen Wert von Null erreicht, wie es im Folgenden in 2B beschrieben wird.
  • 2B ist gemäß einer Ausführungsform der vorliegenden Erfindung ein Blockdiagramm eines Systems 295, wobei eine andere Ausführungsform einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossener Regelschleife zum Zwecke einer Spannungsverwaltung dargestellt ist, welche sowohl eine grobe Einstellung als auch eine feine Einstellung von Spannungen umfasst, die der Mehrzahl 210 der Maschinen des SoC 200B zugeführt werden. Das SoC 200B ist auf der linken Seite der Linie B--B dargestellt. Das SoC 200B der 2B ist ähnlich ausgestaltet, wie das SoC 200A der 2A, umfasst aber zusätzliche Komponenten, um eine Feineinstellung der Spannungen zu bewirken, welche der Mehrzahl 210 der Maschinen zugeführt wird. Zum Beispiel umfassen die gleichen Komponenten zwischen SoC 200A und SoC 200B teilweise eine Mehrzahl von Schaltern 220, eine Mehrzahl 210 von Maschinen und ein CL-DVFS-Modul 205. Sowohl bei dem System 290 der 2A als auch 295 der 2B ist eine PMIC 250 ausgestaltet, um Kernversorgungsspannungen über die Mehrzahl 240 der Spannungsschienen bereitzustellen.
  • Insbesondere ist eine Spannungsverwaltung für ein SoC 200B der 2B auch im Zusammenhang mit einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossener Regelschleife für eine Spannungsverwaltung beschrieben. Insbesondere stellen Ausführungsformen der vorliegenden Erfindung ein unabhängiges Programmieren erwünschter (z.B. angeforderter) Sollbetriebsfrequenzen von einer oder von mehreren Maschinen des SoC 200B bereit. Ein Betrieb des SoC 200B mit einer seiner Solltaktfrequenzen bestimmt auch ein Niveau, um die Kernversorgungsspannung (Vdd) abhängig von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung für eine entsprechende Maschine einzustellen. Daher läuft die entsprechende Maschine mit ihrer optimalen Spannung für eine bestimmte Frequenz, was Energie spart und einen Stromfluss minimiert.
  • Darüber hinaus ist das CL-DVFS-Modul 205 mit der Mehrzahl der Maschinen 210 gekoppelt und ausgestaltet, um die Versorgungsspannung (z.B. Vdd) zu steuern oder zu regeln, welche jede der Maschinen (z.B. 241, 242 und 243) versorgt. Beim groben Einstellen ist das CL-DVFS-Modul 205 ausgestaltet, um selektiv jede der mehreren Maschinen 210 mit einer aus der Mehrzahl der Spannungsschienen 240 abhängig von einer entsprechenden Leistungsanforderung zu koppeln, wie es vorab beschrieben ist. Ein feines Einstellen der grob zugeführten Spannungen kann durch den Einsatz einer Mehrzahl von LDOs 260 implementiert werden, so dass für eine bestimmte Maschine das CL-DVFS-Modul 205 ein Steuersignal einem entsprechenden LDO bereitstellt, um die grob ausgewählte Spannung, welche über eine entsprechende Spannungsschiene zugeführt wird, entsprechend der Leistungsanforderung auf die angeforderte Spannung einzustellen. Die Ausgabe, das Steuersignal der CL-DVFS 205, entspricht dem bestimmten Niveau, um die Kernversorgungsspannung, welche über eine entsprechende Spannungsschiene zugeführt wird, einzustellen, so dass die entsprechende Maschine bei ihrer optimalen SollFrequenz und -Spannung arbeitet.
  • Ein LDO ist ausgestaltet, um eine Ausgangsspannung, welche von einer höheren Versorgungsspannung versorgt wird, einzustellen und/oder zu regeln. Insbesondere wird für eine entsprechende Maschine eine höhere Spannung, welche von einer entsprechenden Spannungsschiene erhalten wird, eingestellt, um sie abhängig von einer entsprechenden Leistungsanforderung mittels eines entsprechenden LDO-Reglers, welcher zwischen die entsprechende Maschine und die entsprechende Spannungsschiene gekoppelt ist, auf eine niedrigere, angeforderte Spannung anzupassen. Im Allgemeinen arbeitet ein LDO effektiv mit einer Rückkopplung (z.B. der Ausgangsspannung), welche die optimale Spannung automatisch für eine angeforderte Sollfrequenz bestimmt. Wie vorab beschrieben ist, wird die angeforderte Spannung von einem entsprechenden Spannungs- und Frequenz-Punkt abhängig von der Leistungsanforderung für eine entsprechende Maschine bestimmt. Der Spannungs- und Frequenz-Punkt umfasst die entsprechende angeforderte Spannung und/oder angeforderte Frequenz. Darüber hinaus wird der Spannungs- und Frequenz-Punkt von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung bestimmt, welche der entsprechenden Maschine zugeordnet ist.
  • Wie in 2 B dargestellt ist, ist jede der mehreren Maschinen 210 mit einem oder mit mehreren LDOs gekoppelt. Das heißt, die mehreren LDO-Regler 260 sind zwischen die mehreren Maschinen 210 und die mehreren Spannungsschienen 240 gekoppelt, so dass jede der Maschinen selektiv mit einer entsprechenden Spannungsschiene mittels eines entsprechenden LDOs gekoppelt ist. Zum Beispiel ist ein oder sind mehrere LDOs 260A zwischen die Maschine A und die mehreren Spannungsschienen 240 gekoppelt. Auch eine oder mehrere LDOs 260B ist oder sind zwischen die Maschine B und die Mehrzahl der Spannungsschienen 240 gekoppelt. Darüber hinaus ist eine oder sind mehrere LDOs 260C zwischen die Maschine C und die mehreren Spannungsschienen 240 gekoppelt. Bei einer Ausführungsform können die Ausgänge der LDOs für eine bestimmte Maschine kurzgeschlossen werden. Daher kann die Spannungsquelle einer Maschine übergangslos und störungsfrei von einer Spannungsschiene auf eine andere (z.B. durch eine Registereinstellung) geschaltet werden.
  • Bei einer Ausführungsform stellt die 2B einen LDO dar, welcher in einer 1-zu-1-Beziehung für jede der Maschinen mit einer entsprechenden Spannungsschiene gekoppelt ist. Zum Beispiel ist die Maschine A mit drei LDOs gekoppelt, welche jeweils mit einer der drei Spannungsschienen 241, 242 und 243 gekoppelt sind. Jedoch werden bei anderen Ausführungsformen der vorliegenden Erfindung andere Konfigurationen von LDOs unterstützt. Zum Beispiel kann ein einziger LDO mit einer entsprechenden Maschine gekoppelt sein, wobei der LDO selektiv mit jeder der mehreren Spannungsschienen während einer groben Einstellung, beispielsweise über einen Multiplexer, gekoppelt ist. Auf diese Weise ist der LDO in der Lage, die grob ausgewählte Spannung, welche von einer ausgewählten Spannungsschiene zugeführt wird, abhängig von Steuersignalen, welche von dem CL-DVFS-Modul 205 erfasst werden, fein einzustellen.
  • Bei einer Ausführungsform können individuelle Spannungsinseln mittels einer Hardware, welche sich in jeder Maschine befindet, gesteuert werden. Das heißt, die Funktionen, welche durch das CL-DVFS-Modul 205 bereitgestellt werden, werden mittels einer Hardware bereitgestellt, welche die Auswahl der entsprechenden Spannungsschiene und des entsprechenden LDOs umfasst. Eine Implementierung in Hardware erhöht die Geschwindigkeit des Betriebs gegenüber einer zusammen integrierten Bus- (I2C („Inter-Integrated Bus“)/PMIC-Kommunikationsschleife.
  • Darüber hinaus programmiert gemäß einer Ausführungsform der vorliegenden Erfindung eine Softwareimplementierung der Funktionen, welche durch das CL-DVFS-Modul 205 bereitgestellt wird, die Frequenz des DVCO um die Feineinstellung der Spannungsausgabe von dem LDO einzustellen. Bei einer Ausführungsform wird ein Phasenregelkreis (PLL) anstelle des DVCO für Maschinen eingesetzt, welche den Jitter des DVCO nicht tolerieren können.
  • 3 ist ein Flussplan 300, welcher ein Verfahren zur Ausführung einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Bei noch einer anderen Ausführungsform stellt der Flussplan 300 ein von einem Computer implementiertes Verfahren dar, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei einer anderen Ausführungsform ist der Flussplan 300 in einem Computersystem implementiert, welches einen Prozessor und einen Speicher, welcher mit dem Prozessor gekoppelt ist und in welchem Anweisungen gespeichert sind, umfasst, die, wenn sie durch das Computersystem ausgeführt werden, bewirken, dass das System ein Verfahren ausführt, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei noch einer anderen Ausführungsform sind Anweisungen zur Durchführung eines Verfahrens, wie sie in dem Flussplan 300 ausgeführt sind, in einem nicht flüchtigen von einem Computer lesbaren Speichermedium gespeichert, welche von einem Computer ausführbare Anweisungen umfassen, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei Ausführungsformen ist das Verfahren des Flussplans 300 durch eine oder durch mehrere Komponenten des Computersystems 100 und der Systeme 200A-B der 1 bzw. 2A und 2B implementierbar. Insbesondere ist das Verfahren des Flussplans 300 in dem DVFS-Modul 170 der 1 und in den CL-DVFS-Modulen 205 der 2A, 2B implementierbar.
  • Bei 310 umfasst das Verfahren ein Erfassen einer ersten Leistungsanforderung von einer ersten Maschine eines SoC. Wie vorab im Zusammenhang mit den 2A, 2B beschrieben ist, umfasst ein SoC eine oder mehrere Komponenten eines elektronischen Systems, welches typischerweise auf einem einzigen Chipsubstrat ausgestaltet ist. Das SoC umfasst mehrere Maschinen, welchen jeweils eine entsprechende Kurve der Frequenz vs. der Versorgungsspannung zugeordnet ist, welche eine optimale Leistungsbeziehung zwischen den zwei Variablen definiert.
  • Die Leistungsanforderung der Maschine wird zu einem bestimmten Zeitmoment abhängig von der Last, welche auf die Maschine ausgeübt wird oder von der Maschine antizipiert wird, bestimmt. Gemäß einem vorab beschriebenen Beispiel kann die Maschine die Aufgabe haben, einen Browser für den Zweck eines Ladens einer Webseite über ein Netz zu betreiben. Während eines Herunterladens kann die Maschine hohe Leistungsniveaus (z.B. hinsichtlich Frequenz und/oder zugeführter Spannung) anfordern, um ein rasches Herunterladen der Webseite zu garantieren. Später, nachdem die Seite heruntergeladen worden ist, kann die Maschine ihre Leistungsanforderung auf ein geringeres Leistungsniveau ändern, mit welchem sie in der Lage ist, das Durchsuchen der heruntergeladenen Webseite zu ermöglichen. Zum Beispiel kann die Maschine gemäß einer Ausführungsform zu irgendeinem Zeitpunkt eine Taktfrequenz unter Berücksichtigung der aktuellen Aufgabe, welche ausgeführt wird, anfordern.
  • Bei 320 umfasst das Verfahren ein Bestimmen eines ersten Spannungs- und Frequenz-Punktes abhängig von der ersten Leistungsanforderung. Bei einer Ausführungsform umfasst die Leistungsanforderung eine erste Solltaktfrequenz. Wie vorab beschrieben ist, weist die Maschine eine entsprechende Kurve der Frequenz vs. der Versorgungsspannung auf, welche ihre optimalen Leistungsanforderungen definiert, vorausgesetzt eine angeforderte Taktfrequenz oder eine angeforderte Spannung werden der Maschine zugeführt. Das heißt, die Kurve der Frequenz vs. der Versorgungsspannung definiert mehrere Spannungs- und Frequenz-Punkte, welche bei einem optimalen Leistungsverhalten der Maschine gelten. Für eine bestimmte Solltaktfrequenz (z.B. eine angeforderte Taktfrequenz) kann eine entsprechende Sollversorgungsspannung (z.B. eine angeforderte Versorgungsspannung) bestimmt werden. Die angeforderte Versorgungsspannung kann der Maschine für ein optimales Leistungsverhalten zugeführt werden, wenn sie mit der angeforderten Taktfrequenz läuft. In ähnlicher Weise kann auch für eine bestimmte angeforderte Versorgungsspannung eine entsprechende angeforderte Taktfrequenz bestimmt werden. Wenn die Maschine eine erste angeforderte Taktfrequenz anfordert, wird daher abhängig von der Kurve der Frequenz vs. der Versorgungsspannung anhand des ersten Spannungs- und Frequenz-Punktes eine erste angeforderte Spannung abgeleitet. Wenn die Maschine die erste angeforderte Spannung anfordert, kann darüber hinaus die erste angeforderte Taktfrequenz auch abhängig von der Kurve bestimmt werden.
  • Bei 330 umfasst das Verfahren ein Bestimmen einer ersten Spannungsschiene von mehreren Spannungsschienen, welche eine erste Versorgungsspannung aufweist, die am dichtesten an der ersten angeforderten Spannung liegt. Insbesondere führt eine PMIC sich ändernde Niveaus von Versorgungsspannungen (z.B. ein oder mehrere Vdd-Niveaus) über mehrere Spannungsschienen zu. Die PMIC ist bei einer Ausführungsform unabhängig von dem SoC und ist ausgestaltet, um die Spannungsniveaus, welche den Spannungsschienen zugeführt werden, zu regeln und/oder zu steuern. Das heißt, das Verfahren, welches in dem Flussplan 300 ausgeführt ist, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen, ist ohne eine Kommunikation mit der PMIC implementiert. Daher wird die Spannungsverwaltung für eine Maschine des SOC auf dem Chip ausgeführt, ohne die PMIC außerhalb des Chips einzubeziehen. Insbesondere stellen Ausführungsformen der vorliegenden Erfindung ein Steuern und Regeln der zugeführten Spannungen zu jeder der mehreren Maschinen in dem SoC bereit, ohne mit der PMIC zu kommunizieren. Die PMIC wird eingesetzt, um Versorgungsspannungen dem SoC zuzuführen, welche weiter gesteuert und geregelt werden. Zum Beispiel sind die Spannungen, welche durch die PMIC den Spannungsschienen zugeführt werden, für eine Zeitperiode konstant.
  • Bei einer Ausführungsform ist die erste Versorgungsspannung gleich oder größer als die erste angeforderte Spannung. Darüber hinaus ist die erste Versorgungsspannung am dichtesten an der angeforderten Spannung, wenn diese mit allen Spannungen verglichen wird, welche durch die mehreren Spannungsschienen zugeführt werden. Das heißt, eine grobe Anpassung wird zwischen der Spannung, welche der Maschine von den Spannungsschienen zugeführt wird, und der angeforderten Spannung, welche abhängig von der Leistungsanforderung und der Kurve der Frequenz vs. der Versorgungsspannung bestimmt wird, vorgenommen. Wenn die erste Versorgungsspannung geringer als die erste angeforderte Spannung ist, kann es in vielen Fällen dann zu einer Störung während des Betriebs bei der Maschine kommen. Wenn die erste Versorgungsspannung größer als die erste angeforderte Spannung ist, kann die Maschine jedoch fortgesetzt arbeiten (z.B. mit einer vorgegebenen angeforderten Taktfrequenz), aber kann ineffizient sein.
  • Bei 340 umfasst das Verfahren ein Koppeln der ersten Maschine mit der ersten Spannungsschiene. Insbesondere wird das Koppeln unabhängig von den anderen Maschinen in dem SoC durchgeführt. Das heißt, eine Anpassung von Spannung und Frequenz für ein optimales Leistungsverhalten einer Maschine kann unabhängig von Anpassungsanforderungen bezüglich Spannung und Frequenz der anderen Maschinen, welche sich auf dem SoC befinden, bestimmt und ausgeführt werden. Noch wichtiger ist, dass das Verfahren, welches in 3 aufgelistet ist, für jede der Maschinen in dem SoC unabhängig ausgeführt werden kann, ohne Leistungsanforderungen der anderen Maschinen zu berücksichtigen. Während die erste Maschine mit der ersten Spannungsschiene gekoppelt ist, um eine erste angeforderte Spannung zu erhalten, kann insbesondere gemäß einer Ausführungsform eine zweite Leistungsanforderung von einer zweiten Maschine des SoC empfangen werden. Ein zweiter Spannungs- und Frequenz-Punkt kann gemäß einer Ausführungsform abhängig von der zweiten Leistungsanforderung bestimmt werden, wobei der zweite Spannungs- und Frequenz-Punkt eine zweite angeforderte Spannung umfasst und/oder auf diese verweist. Eine zweite Spannungsschiene mit einer zweiten Versorgungsspannung, welche am dichtesten an der zweiten angeforderten Spannung liegt, wird bestimmt, wobei die zweite Spannung gleich oder größer als die zweite angeforderte Spannung ist. Darüber hinaus wird die zweite Maschine mit der zweiten Spannungsschiene unabhängig von anderen Maschinen in dem SoC gekoppelt.
  • Bei einer anderen Ausführungsform wird eine weitere Einstellung der ersten Versorgungsspannung durchgeführt, um die Spannung fein abzustimmen, welche der Maschine zugeführt wird. Insbesondere wird die erste Versorgungsspannung (z.B. ausgehend von der groben Spannungsauswahl) von der ersten Spannungsschiene eingestellt, um mit der angeforderten Spannung, welche der Leistungsanforderung entspricht, übereinzustimmen, wobei ein LDO-Regler eingesetzt wird. Der LDO-Regler ist zwischen die Maschine und die erste Spannungsschiene gekoppelt. Darüber hinaus sind mehrere LDO-Regler zwischen die mehreren Maschinen und die mehreren Spannungsschienen gekoppelt, so dass jede der Maschinen mit einer entsprechenden Spannungsschiene über einen entsprechenden LDO-Regler gekoppelt werden kann. Auf diese Weise ist eine entsprechende Maschine ausgestaltet, um abhängig von ihrer Kurve der Frequenz vs. der Versorgungsspannung bei ihrer optimalen Sollfrequenz und Sollversorgungsspannung zu arbeiten. Da die grob ausgewählte erste Spannung von der ersten Spannungsschiene höher als die erste angeforderte Spannung ist, ist für die aktuelle Maschine der LDO in der Lage, eine Ausgangsspannung einzustellen und/oder zu regeln, welche mit der niedrigeren ersten angeforderten Spannung übereinstimmt.
  • 4 ist gemäß einer Ausführungsform der vorliegenden Erfindung ein Flussplan 400, welcher ein Verfahren darstellt, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei noch einer anderen Ausführungsform stellt der Flussplan 400 ein von einem Computer implementiertes Verfahren dar, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei einer anderen Ausführungsform ist der Flussplan 400 in einem Computersystem implementiert, welches einen Prozessor und einen Speicher umfasst, welcher mit dem Prozessor gekoppelt ist und welcher darin Anweisungen speichert, welche, wenn sie durch das Computersystem ausgeführt werden, dafür sorgen, dass das System ein Verfahren ausführt, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei noch einer anderen Ausführungsform sind Anweisungen, um ein Verfahren auszuführen, wie es in dem Flussplan 400 aufgeführt ist, in einem nicht flüchtigen von einem Computer lesbaren Speichermedium gespeichert, welche von einem Computer ausführbare Anweisungen umfassen, um eine dynamische Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung eines SoC auszuführen. Bei Ausführungsformen ist das Verfahren des Flussplans 400 durch eine oder durch mehrere Komponenten des Computersystems 100 und durch die Systeme 200A-B der 1 bzw. 2A-B implementierbar. Insbesondere ist das Verfahren des Flussplans 400 durch das DVFS-Modul 170 der 1 und durch die CL-DVFS-Module 205 der 2A-B implementierbar.
  • Bei 410 umfasst das Verfahren ein selektives Koppeln von jeder der mehreren Maschinen eines SoC mit einer von mehreren Spannungsschienen abhängig von einer entsprechenden Leistungsanforderung aus mehreren Leistungsanforderungen von den mehreren Maschinen. Wie vorab im Zusammenhang mit den 2A-B beschrieben ist, umfasst ein SoC eine oder mehrere Komponenten eines elektronischen Systems, welches typischerweise auf einem einzigen Chip ausgestaltet ist. Das SoC umfasst mehrere Maschinen, welchen jeweils eine entsprechende Kurve der Frequenz vs. der Versorgungsspannung zugeordnet ist, welche eine optimale Leistungsbeziehung zwischen den zwei Variablen definiert. Darüber hinaus wird, wie es vorab beschrieben ist, für jede Maschine eine Leistungsanforderung zu einem bestimmten Zeitpunkt unter Berücksichtigung der Aufgabe, welche aktuell durch die Maschine ausgeführt wird, bestimmt.
  • Insbesondere wird das selektive Koppeln einer Spannungsschiene mit einer entsprechenden Maschine abhängig von dem Spannungs- und Frequenz-Punkt einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung und einer entsprechenden Leistungsanforderung durchgeführt. Daher kann für eine gegebene Solltaktfrequenz (z.B. die angeforderte Frequenz) eine entsprechende Sollversorgungsspannung (z.B. die angeforderte Spannung) bestimmt werden. Das heißt, wenn die entsprechende Maschine eine Taktfrequenz anfordert, leitet abhängig von der Kurve der Frequenz vs. der Versorgungsspannung der Spannungs- und Frequenz-Punkt auch die entsprechende angeforderte Spannung ab. Wie es in dem Flussplan 400 ausgeführt ist, wird abhängig von der bestimmten angeforderten Spannung für eine entsprechende Maschine eine Spannungsschiene, welche eine Versorgungsspannung bereitstellt, ausgewählt. Insbesondere ist die Versorgungsspannung, welche ausgewählt ist, diejenige, welche am dichtesten unter all den Versorgungsspannungen von den Spannungsschienen an der angeforderten Spannung liegt, wobei die ausgewählte Versorgungsspannung gleich oder größer als die angeforderte Spannung ist.
  • Bei einer Ausführungsform kann die Spannungs- und Frequenz-Anpassung für ein optimales Leistungsverhalten einer entsprechenden Maschine unabhängig von den Spannungs- und Frequenz-Anpassungsanforderungen der anderen Maschinen, welche sich auf dem SoC befinden, bestimmt und ausgeführt werden. Das heißt, ein grobes Anpassen der Versorgungsspannung und weiter ein feines Anpassen der Versorgungsspannung wird durch das Verfahren implementiert, welches in dem Flussplan 400 gelistet ist.
  • Bei 420 umfasst das Verfahren für eine entsprechende Maschine ein Anpassen einer Versorgungsspannung, welche von einer entsprechenden Spannungsschiene erhalten wird, um abhängig von der entsprechenden Leistungsanforderung mit einer angeforderten Spannung übereinzustimmen. Mehrere LDO-Regler sind zwischen die mehreren Maschinen und die mehreren Spannungsschienen gekoppelt, so dass jede der Maschinen über einen entsprechenden LDO-Regler mit einer entsprechenden Spannungsschiene gekoppelt werden kann. Für eine entsprechende Maschine wird eine Versorgungsspannung mit Hilfe eines entsprechenden LDO-Reglers eingestellt, welcher zwischen die entsprechende Maschine und die entsprechende Spannungsschiene, die die grob ausgewählte Versorgungsspannung zuführt, gekoppelt ist. Das heißt, eine weitere Anpassung der Versorgungsspannung wird ausgeführt, um die Versorgungsspannung fein abzustimmen. Da für die aktuelle Maschine die grob ausgewählte Spannung von der Spannungsschiene höher als die entsprechende angeforderte Spannung ist, ist der LDO in der Lage, eine Ausgangsspannung einzustellen und/oder zu regeln, welche mit der geringeren, entsprechend angeforderten Spannung übereinstimmt.
  • Daher werden gemäß den Ausführungsformen der vorliegenden Erfindung Systeme und Verfahren beschrieben, welche ein Ausführen einer dynamischen Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis für eine Spannungsverwaltung bereitstellen.
  • Während die vorstehende Offenlegung verschiedene Ausführungsformen mit spezifischen Blockdiagrammen, Flussdiagrammen und Beispielen darlegt, kann jede Blockdiagrammkomponente, jeder Flussdiagrammschritt, jede Operation und/oder jede Komponente, die hierin beschrieben und/oder illustriert wird, einzeln und/oder gemeinsam unter Verwendung einer breiten Palette von Hardware-, Software- oder Firmware-Konfigurationen (oder einer beliebigen Kombination davon) implementiert werden. Darüber hinaus ist jede Offenlegung von Komponenten, die in anderen Komponenten enthalten sind, als Beispiel zu betrachten, da viele Architekturvarianten implementiert werden können, um die gleiche Funktionalität zu erzielen.
  • Die hier beschriebenen und dargestellten Prozessparameter und Schrittfolgen sind nur beispielhaft und können beliebig variiert werden. Zum Beispiel, während die hier dargestellten und/oder beschriebenen Schritte in einer bestimmten Reihenfolge gezeigt oder besprochen werden, müssen diese Schritte nicht unbedingt in der dargestellten oder besprochenen Reihenfolge ausgeführt werden. Die verschiedenen hier beschriebenen und/oder dargestellten Beispielmethoden können auch einen oder mehrere der hier beschriebenen oder dargestellten Schritte auslassen oder zusätzliche Schritte zusätzlich zu den hier dargestellten enthalten.
  • Obwohl verschiedene Ausführungsformen im Zusammenhang mit voll funktionsfähigen Computersystemen beschrieben und/oder illustriert wurden, können eine oder mehrere dieser Beispielausführungen als Programmprodukt in einer Vielzahl von Formen vertrieben werden, unabhängig davon, welche Art von computerlesbaren Medien für die tatsächliche Durchführung der Verteilung verwendet wird. Die hier offen gelegten Ausführungsformen können auch mit Softwaremodulen realisiert werden, die bestimmte Aufgaben erfüllen. Diese Softwaremodule können Skript-, Batch- oder andere ausführbare Dateien enthalten, die auf einem computerlesbaren Speichermedium oder in einem Computersystem gespeichert werden können. Diese Softwaremodule können ein Computersystem so konfigurieren, dass es eine oder mehrere der hier aufgeführten Beispielvarianten ausführt. Eines oder mehrere der hier offengelegten Softwaremodule können in einer Cloud Computing-Umgebung implementiert werden. Cloud Computing-Umgebungen können verschiedene Dienste und Anwendungen über das Internet bereitstellen. Diese Cloud-basierten Dienste (z.B. Software as a Service, Platform as a Service, Infrastructure as a Service, etc.) können über einen Webbrowser oder eine andere Remote-Schnittstelle zugänglich sein. Verschiedene Funktionen, die hierin beschrieben werden, können über eine Remote-Desktop-Umgebung oder eine andere Cloud-basierte Computing-Umgebung bereitgestellt werden.
  • Die vorstehende Beschreibung wurde aus Gründen der Erläuterung unter Bezugnahme auf bestimmte Ausführungsformen beschrieben. Die vorstehenden Ausführungen sollen jedoch nicht erschöpfend sein und die Erfindung nicht auf die genauen Formen beschränken. Viele Modifikationen und Variationen sind im Hinblick auf die oben genannten Lehren möglich. Die Ausführungsformen wurden ausgewählt und beschrieben, um die Prinzipien der Erfindung und ihre praktische Anwendung bestmöglich zu erläutern und damit anderen Fachleuten die Möglichkeit zu geben, die Erfindung und verschiedene Ausführungsformen mit verschiedenen Modifikationen, die für den jeweiligen Verwendungszweck geeignet sind, bestmöglich zu nutzen.
  • Die Ausführungsformen gemäß der vorliegenden Erfindung sind damit beschrieben. Obwohl die vorliegende Erfindung insbesondere in Ausführungsformen beschrieben wurde, sollte man sich darüber im Klaren sein, dass die Erfindung nicht als durch solche Ausführungsformen begrenzt ausgelegt werden sollte, sondern vielmehr gemäß den nachstehenden Ansprüchen ausgelegt werden sollte.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 13947999 [0001, 0040]
    • US 14876332 [0001, 0040]
    • US 14323 [0001]
    • US 787 [0001]
    • US 14323787 [0040]

Claims (20)

  1. Verfahren zur Spannungsverwaltung, umfassend: Erfassen einer ersten Leistungsanforderung von einer ersten Maschine eines Systems auf einem Chip; Bestimmen eines ersten Spannungs- und Frequenz-Punktes abhängig von der ersten Leistungsanforderung, wobei der erste Spannungs- und Frequenz-Punkt eine erste angeforderte Spannung umfasst; Bestimmen einer ersten Spannungsschiene von mehreren Spannungsschienen, welche eine erste Versorgungsspannung aufweist, die am dichtesten an der ersten angeforderten Spannung liegt, wobei die erste Versorgungsspannung gleich oder größer als die erste angeforderte Spannung ist; und Koppeln der ersten Maschine mit der ersten Spannungsschiene unabhängig von anderen Maschinen in dem System auf dem Chip.
  2. Verfahren nach Anspruch 1, darüber hinaus umfassend: Einstellen der ersten Versorgungsspannung von der ersten Spannungsschiene, um mit der ersten angeforderten Spannung übereinzustimmen, wobei ein Low Dropout-Regler eingesetzt wird, welcher zwischen die Maschine und die erste Spannungsschiene gekoppelt ist.
  3. Verfahren nach Anspruch 1 oder 2, wobei die erste Leistungsanforderung eine angeforderte Frequenz umfasst.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Spannungs- und Frequenz-Punkt von einer Kurve der Frequenz vs. der Versorgungsspannung bestimmt wird, welche der Maschine zugeordnet ist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend: während die erste Maschine mit der ersten Spannungsschiene gekoppelt wird, um eine angeforderte Spannung zu erhalten und zu erzeugen, Empfangen einer zweiten Leistungsanforderung von einer zweiten Maschine des Systems auf dem Chip; Bestimmen eines zweiten Spannungs- und Frequenz-Punktes abhängig von der zweiten Leistungsanforderung, wobei der zweite Spannungs- und Frequenz-Punkt eine zweite angeforderte Spannung umfasst; Bestimmen einer zweiten Spannungsschiene der mehreren Spannungsschienen, welche eine zweite Versorgungsspannung aufweist, die am dichtesten an der zweiten angeforderten Spannung liegt, wobei die zweite Versorgungsspannung gleich oder größer als die zweite angeforderte Spannung ist; und Koppeln der zweiten Maschine mit der zweiten Spannungsschiene unabhängig von anderen Maschinen in dem System auf dem Chip.
  6. Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend: selektives Koppeln jeder von mehreren Maschinen mit einer von mehreren Spannungsschienen abhängig von einer entsprechenden Leistungsanforderung von mehreren Leistungsanforderungen von den mehreren Maschinen; und für eine erste Maschine Einstellen einer Versorgungsspannung, welche von einer entsprechenden Spannungsschiene erhalten wird, um mit einer angeforderten Spannung übereinzustimmen, abhängig von einer entsprechenden Leistungsanforderung von der ersten Maschine, wobei ein Low-Dropout-Regler eingesetzt wird, welcher zwischen die erste Maschine und die entsprechende Spannungsschiene gekoppelt ist, wobei die angeforderte Spannung von einem entsprechenden Spannungs- und Frequenz-Punkt abhängig von der entsprechenden Leistungsanforderung bestimmt wird, und wobei der Spannungs- und Frequenz-Punkt die entsprechende angeforderte Spannung umfasst, wobei der Spannungs- und Frequenz-Punkt von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung bestimmt wird, welche der ersten Maschine zugeordnet ist.
  7. Verfahren nach Anspruch 6, darüber hinaus umfassend: Koppeln von mehreren Low-Dropout-Reglern zwischen die mehreren Maschinen und die mehreren Spannungsschienen, so dass jede der mehreren Maschinen mittels eines entsprechenden Low-Dropout-Reglers mit einer entsprechenden Spannungsschiene gekoppelt ist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, darüber hinaus umfassend: Ausführen des Verfahrens zum Skalieren auf dem System auf dem Chip, ohne mit einer integrierten Spannungsverwaltungsschaltung zu kommunizieren.
  9. Verfahren zur Spannungsverwaltung, umfassend: selektives Koppeln jeder von mehreren Maschinen eines Systems auf einem Chip mit einer von mehreren Spannungsschienen abhängig von einer entsprechenden Leistungsanforderung von mehreren Leistungsanforderungen von den mehreren Maschinen; und für eine entsprechende Maschine Einstellen einer Versorgungsspannung, welche von einer entsprechenden Spannungsschiene erhalten wird, um mit einer angeforderten Spannung übereinzustimmen, abhängig von einer entsprechenden Leistungsanforderung, wobei ein entsprechender Low-Dropout-Regler eingesetzt wird, welcher zwischen die entsprechende Maschine und die entsprechende Spannungsschiene gekoppelt ist, wobei die angeforderte Spannung von einem entsprechenden Spannungs- und Frequenz-Punkt abhängig von der entsprechenden Leistungsanforderung bestimmt wird und wobei der Spannung- und Frequenz-Punkt die entsprechende angeforderte Spannung umfasst, wobei der Spannung- und Frequenz-Punkt von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung, welche der entsprechenden Maschine zugeordnet ist, bestimmt wird.
  10. Verfahren nach Anspruch 9, wobei das selektive Koppeln umfasst: Erfassen einer ersten Leistungsanforderung von einer ersten Maschine des Systems auf dem Chip; Bestimmen eines ersten Spannungs- und Frequenz-Punktes abhängig von der ersten Leistungsanforderung, wobei der erste Spannungs- und Frequenz-Punkt eine erste angeforderte Spannung umfasst; Bestimmen einer ersten Spannungsschiene von mehreren Spannungsschienen, welche eine erste Versorgungsspannung aufweist, die am dichtesten an der ersten angeforderten Spannung liegt, wobei die erste Versorgungsspannung gleich oder größer als die erste angeforderte Spannung ist; und Koppeln der ersten Maschine mit der ersten Spannungsschiene unabhängig von anderen Maschinen in dem System auf dem Chip.
  11. Verfahren nach Anspruch 10, wobei das Einstellen einer Spannung umfasst: Einstellen der ersten Versorgungsspannung von der ersten Spannungsschiene, um mit der angeforderten Spannung übereinzustimmen, wobei ein erster Low-Dropout-Regler, welcher zwischen die Maschine und die erste Spannungsschiene gekoppelt ist, eingesetzt wird.
  12. Verfahren nach Anspruch 10 oder 11, wobei die erste Leistungsanforderung eine angeforderte Frequenz umfasst.
  13. Verfahren nach einem der Ansprüche 9 bis 12, wobei Spannungen auf den mehreren Spannungsschienen konstant sind.
  14. Vorrichtung umfassend: mehrere Spannungsschienen; ein System auf einem Chip; mehrere Maschinen, welche in dem System auf dem Chip integriert sind, wobei die mehreren Maschinen mit den mehreren Spannungsschienen gekoppelt sind; ein Modul zum dynamischen Spannungs- und Frequenz-Skalieren, welches mit den mehreren Maschinen gekoppelt ist, wobei das Modul zum dynamischen Spannungs- und Frequenz-Skalieren ausgestaltet ist, um selektiv jede der mehreren Maschinen mit einer der mehreren Spannungsschienen abhängig von einer entsprechenden Leistungsanforderung von mehreren Leistungsanforderungen von den mehreren Maschinen zu koppeln.
  15. Vorrichtung nach Anspruch 14, darüber hinaus umfassend: mehrere Low-Dropout-Regler, welche zwischen die mehreren Maschinen und die mehreren Spannungsschienen gekoppelt sind, so dass jede der mehreren Maschinen mittels eines entsprechenden Low-Dropout-Reglers selektiv mit einer entsprechenden Spannungsschiene gekoppelt ist.
  16. Vorrichtung nach Anspruch 15, wobei für eine entsprechende Maschine abhängig von einer entsprechenden Leistungsanforderung eine Spannung, welche von einer entsprechenden Spannungsschiene erhalten wird, eingestellt wird, um mit einer angeforderten Spannung übereinzustimmen, wobei ein entsprechender Low-Dropout-Regler eingesetzt wird, welcher zwischen die entsprechende Maschine und die entsprechende Spannungsschiene gekoppelt ist.
  17. Vorrichtung nach Anspruch 16, wobei die angeforderte Spannung von einem entsprechenden Spannungs- und Frequenz-Punkt abhängig von der entsprechenden Leistungsanforderung bestimmt wird und wobei der Spannungs- und Frequenz-Punkt die entsprechende angeforderte Spannung umfasst, und wobei der Spannungs- und Frequenz-Punkt von einer entsprechenden Kurve der Frequenz vs. der Versorgungsspannung bestimmt wird, welche der entsprechenden Maschine zugeordnet ist.
  18. Vorrichtung nach einem der Ansprüche 14 bis 17, wobei die mehreren Spannungsschienen von einer integrierten Spannungsverwaltungsschaltung verwaltet werden, welche abgesetzt von dem System auf dem Chip angeordnet ist.
  19. Vorrichtung nach Anspruch 18, wobei die mehreren Spannungsschienen mehrere konstante Versorgungsspannungen über eine Zeitperiode bereitstellen.
  20. Vorrichtung nach einem der Ansprüche 14 bis 19, wobei die entsprechende Leistungsanforderung eine entsprechende angeforderte Frequenz umfasst.
DE102017123496.9A 2016-10-24 2017-10-10 Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis auf dem Chip Pending DE102017123496A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/333,047 2016-10-24
US15/333,047 US20180113502A1 (en) 2016-10-24 2016-10-24 On-chip closed loop dynamic voltage and frequency scaling

Publications (1)

Publication Number Publication Date
DE102017123496A1 true DE102017123496A1 (de) 2018-04-26

Family

ID=61865854

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017123496.9A Pending DE102017123496A1 (de) 2016-10-24 2017-10-10 Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis auf dem Chip

Country Status (3)

Country Link
US (1) US20180113502A1 (de)
DE (1) DE102017123496A1 (de)
TW (1) TWI695259B (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11656676B2 (en) * 2018-12-12 2023-05-23 Intel Corporation System, apparatus and method for dynamic thermal distribution of a system on chip
US11758302B2 (en) * 2021-09-03 2023-09-12 Sony Semiconductor Solutions Corporation Imaging device, imaging method, and electronic apparatus
CN114527819A (zh) * 2022-02-10 2022-05-24 Oppo广东移动通信有限公司 基带芯片、电压调整方法及终端设备
US20240094793A1 (en) * 2022-06-23 2024-03-21 Nvidia Corporation Techniques to modify processor performance
US20240201762A1 (en) * 2022-12-15 2024-06-20 Qualcomm Incorporated Ruler-follower dynamic voltage and frequency scaling schemes for integrated circuit components

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US787A (en) 1838-06-19 James mcclory
US14323A (en) 1856-02-26 Improved mode of constructing walls and floors of cellars

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070079294A1 (en) * 2005-09-30 2007-04-05 Robert Knight Profiling using a user-level control mechanism
US8694811B2 (en) * 2010-10-29 2014-04-08 Texas Instruments Incorporated Power management for digital devices
US9823719B2 (en) * 2013-05-31 2017-11-21 Intel Corporation Controlling power delivery to a processor via a bypass
US9477243B2 (en) * 2014-12-22 2016-10-25 Intel Corporation System maximum current protection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US787A (en) 1838-06-19 James mcclory
US14323A (en) 1856-02-26 Improved mode of constructing walls and floors of cellars

Also Published As

Publication number Publication date
US20180113502A1 (en) 2018-04-26
TW201830196A (zh) 2018-08-16
TWI695259B (zh) 2020-06-01

Similar Documents

Publication Publication Date Title
DE102017123496A1 (de) Spannungs- und Frequenz-Skalierung mit geschlossenem Regelkreis auf dem Chip
DE102013217804B4 (de) System und Verfahren zur Berücksichtigung von Alterungswirkungen in einer Computervorrichtung
DE10296285T5 (de) Verfahren und System zur Erzeugung und Verteilung von Versorgungsspannungen in Speichersystemen
DE112008000758B4 (de) Dynamische Stromreduzierung
DE112013007290T5 (de) Mit digitalem Leistungsgatter-Treiber integrierter Low-Dropout-Spannungsregler
DE102012100146A1 (de) Spannungsregler
DE102013213094B4 (de) System, Verfahren und Computer-Programm-Produkt zum Berechnen von Einstellungen für ein Gerät, unter Benutzung von einer oder mehreren Einschränkungen
DE102010054067A1 (de) Power-Management-System und Verfahren
DE69227885T2 (de) Integrierte Schaltung und elektronisches Gerät
DE112016003814B4 (de) Leistungsverteilung für Gleichstrom-Mikronetze
DE102010056095A1 (de) Schneller Regler für wiederkehrende Spannungen
DE112011103777T5 (de) Verwendung einer diskreten Eingabe zur Steuerung einer steuerbaren Vorrichtung
DE102014209469A1 (de) Regelungsanordnung, Regelsystem und Hochfrequenzleistungserzeugungsvorrichtung
DE112010005872T5 (de) Stromschienen-Regelsystem
DE102013213048B4 (de) System, Verfahren und Computerprogrammprodukt zum Bestimmen von Einstellungen für eine Vorrichtung
DE112015000530T5 (de) Master-Slave-Digitalspannungsregler
DE112019002321T5 (de) Vollständig digitaler spannungsgenerator mit geschlossenem regelkreis
DE102008032997B9 (de) Energieversorgungssystem für einen verringerten Energieverbrauch
DE102013114252A1 (de) Systeme und Verfahren zur effizienten Spannungserfassung
DE112013000770B4 (de) Höhere Auslagerungseffizienz
DE112017002723T5 (de) Modulare Leistungsliefertechniken für elektrische Geräte
DE112016006015T5 (de) Maximieren der Netzwerk-Fabric-Leistung durch feingranulares Router-Link-Strommanagement
DE102021124620B4 (de) Proaktives auswählen von virtual-reality-inhaltskontexten
DE102005008778B4 (de) System und Verfahren zum Verändern einer Buskonfiguration
DE112019002378T5 (de) Sender mit rückkopplungssteuerung

Legal Events

Date Code Title Description
R012 Request for examination validly filed