DE10338038B4 - Vorrichtung zum Sparen einer Leistung, die durch ein System verbraucht wird, das eine integrierte Prozessorschaltung aufweist - Google Patents

Vorrichtung zum Sparen einer Leistung, die durch ein System verbraucht wird, das eine integrierte Prozessorschaltung aufweist Download PDF

Info

Publication number
DE10338038B4
DE10338038B4 DE10338038A DE10338038A DE10338038B4 DE 10338038 B4 DE10338038 B4 DE 10338038B4 DE 10338038 A DE10338038 A DE 10338038A DE 10338038 A DE10338038 A DE 10338038A DE 10338038 B4 DE10338038 B4 DE 10338038B4
Authority
DE
Germany
Prior art keywords
processor
cache memory
power
level
cache
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.)
Expired - Fee Related
Application number
DE10338038A
Other languages
English (en)
Other versions
DE10338038A1 (de
Inventor
Donald C. Collins Soltis jun.
Samuel Fort Collins Naffziger
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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
Priority claimed from US10/319,667 external-priority patent/US7028196B2/en
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10338038A1 publication Critical patent/DE10338038A1/de
Application granted granted Critical
Publication of DE10338038B4 publication Critical patent/DE10338038B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Power Sources (AREA)

Abstract

Integrierte Prozessorschaltung (100) mit folgenden Merkmalen:
zumindest einem Prozessor (104), der zumindest eine Leistungsverbindung (110) aufweist;
einem Cache-Speicher (106) einer ersten Ebene, der gekoppelt ist, um Instruktionen an den zumindest einen Prozessor zu liefern;
einem Cache-Speicher (120) einer zweiten Ebene, der gekoppelt ist, um auf einen Fehlschlag in dem Cache-Speicher (106) der ersten Ebene hin Instruktionen an den Cache-Speicher (106) der ersten Ebene zu liefern, wobei der Cache-Speicher (120) der zweiten Ebene zumindest eine Leistungsverbindung (150) aufweist, die separat von der zumindest einen Leistungsverbindung (110) des zumindest einen Prozessors (104) ist; und
einer Taktgeneratorschaltung (156) zum Bereitstellen eines Taktsignals, das eine Taktrate aufweist, wobei der Cache-Speicher (120) der zweiten Ebene bei einer vorgegebenen Taktgenerator-Taktrate auf zumindest eine erste Latenzzeit und auf eine zweite Latenzzeit anpaßbar ist.

Description

  • Die Erfindung bezieht sich auf das Gebiet einer Leistungsverwaltung in Computersystemen des Typs, der zumindest einen Prozessor und einen Cache-Speicher aufweist.
  • Integrierte Schaltungen, die zumindest einen Hochleistungsprozessor mit einem chipinternen Cache-Speicher kombinieren, sind in der Technik üblich geworden. Integrierte Schaltungen, die mehr als einen Hochleistungsprozessor mit einem chipinternen Cache-Speicher kombinieren, sind ebenso verfügbar.
  • Speicherreferenzen von einem Prozessor, die in einem Cache-Speicher zu finden sind, sind als Cache-„Treffer" bekannt. Speicherreferenzen, die keinen „Treffer" in einem Cache-Speicher landen, sind Cache-„Fehlschläge". Speicherlesereferenzen, die einen „Treffer" in einem Cache-Speicher landen, geben Instruktionen oder Daten an den Prozessor in einer kürzeren Zeit als der zurück, die benötigt wird, um Instruktionen oder Daten von höheren Ebenen des Speichers zu holen.
  • Viele integrierte Hochleistungsprozessorschaltungen weisen zwei Leistungsbereiche bzw. -domänen auf, nämlich einen ersten Leistungsbereich, der bei einer relativ niedrigen Kernspannung arbeitet, und einen zweiten Leistungsbereich, der bei einer höheren I/O- (Eingangs/Ausgangs-) Spannung arbeitet. Dies ermöglicht üblicherweise einen Entwurf eines Prozessors und eines Cache-Schaltungsaufbaus mit Transistoren kleinerer Abmessungen, einschließlich einer Oxiddicke, als denjenigen, die bei dem I/O-Anschlußflächenring verwendet werden. Typische Prozessoren, einschließlich der Penti um-3-Prozessoren (Marke der Intel Corporation) machen es erforderlich, daß sowohl der Kern- als auch der I/O-Leistungsbereich für einen korrekten Betrieb Leistung aufnehmen.
  • Standard-Echtzeittaktschaltungen weisen üblicherweise ebenso zwei Leistungsbereiche auf. Ein erster Leistungsbereich betreibt den I/O-Anschlußflächenring und die meiste andere Logik der Schaltung. Ein zweiter Leistungsbereich liefert eine Leistung an den Taktschaltungsaufbau und oft an einen Speicherschaltungsaufbau auf der gleichen integrierten Schaltung. Diese Schaltungen werden üblicherweise während eines Normalbetriebs eines Systems bei sowohl dem I/O- als auch dem Takt-Leistungsbereich mit Leistung versorgt und werden bei dem Takt-Leistungsbereich durch eine Batterie mit Leistung versorgt, wenn das System in einem Niedrigleistungszustand ist. Es hat sich herausgestellt, daß eine Schnittstellenlogik zwischen den Leistungsbereichen sorgfältig entworfen werden muß, um eine übermäßige Last auf die beigefügte Batterie zu vermeiden, und um eine Korruption eines Taktbereichs-Speichers und einer -Logik während Leistungsübergängen des I/O-Leistungsbereichs zu vermeiden.
  • Es ist in der Technik integrierter CMOS-Schaltungen bekannt, daß die Schaltungsgeschwindigkeit eine Funktion der Leistungsversorgungsspannung ist. Es ist ebenso bekannt, daß die Schaltungsgeschwindigkeit ebenso eine Funktion der Temperatur ist.
  • Es ist bekannt, daß integrierte Hochleistungsprozessor-Schaltungen umfassende Mengen an Leistung verbrauchen; Leistungsanforderungen können 125 Watt überschreiten. Integrierte Mehrprozessorschaltungen können sogar noch höhere Leistungsanforderungen aufweisen, wie potentiell z. B. ganze 150 Watt.
  • Ein Hochleistungsverbrauch kann in tragbaren Systemen zu einer unerwünscht kurzen Batterie-Lebensdauer führen. Ein Hochleistungsverbrauch ist die Umwelt betreffend unerwünscht, macht es erforderlich, daß eine Kühlvorrichtung bereitgestellt wird, und kann zu einer kritischen Überhitzung eines Schaltungsaufbaus führen. Zusätzlich erfordern Hochleistungsprozessoren eine große und teure Infrastruktur hinsichtlich einer Leistungslieferung und Wärmeableitung. Diese Infrastruktur senkt die Dichte von Prozessoren, die innerhalb eines bestimmten Volumens erzielt werden kann. Diese Dichte ist ein zunehmend wichtiges Maß.
  • Ein Hochleistungsverbrauch kann außerdem Temperaturen integrierter Schaltungen, einschließlich integrierter Prozessorschaltungen, ausreichend erhöhen, daß eine Schaltungsgeschwindigkeit sich bis zu dem Punkt verlangsamt, an dem Prozessorfehler auftreten. Diese Fehler sind unerwünscht. Ein weiterer Anstieg von Prozessortemperaturen kann einen dauerhaften Schaden an den Schaltungen bewirken.
  • Es ist bekannt, daß Lastanforderungen auf Computersysteme mit der Zeit variieren. Ein Computersystem-Verhalten kann zum Einsparen von Leistung während Zeiten einer geringen Last gesenkt werden und während Zeiten einer hohen Last zu voller Leistung zurückgebracht werden. Es ist ebenso bekannt, daß die Cache-Verwendung, einschließlich einer Trefferrate, mit der Zeit variieren kann.
  • Eine Prozessorleistung für jeden Leistungsbereich weist üblicherweise zwei Komponenten auf, nämlich eine statische Leistung, die konstant mit der Betriebsfrequenz ist, und eine dynamische Leistung, die eine Funktion der Betriebsfrequenz ist. Viele Notebook-Computer sind mit einstellbaren Taktschaltungen ausgerüstet, durch die die Prozessorbetriebsfrequenz reduziert werden kann, wodurch ein Leistungsverbrauch während Zeiten einer geringen Last reduziert wird.
  • Es ist wünschenswert, über zusätzliche Arten eines Einstellens eines Leistungsverbrauchs und eines Verhaltens gegenüber einer Systemlast zu verfügen. Es ist ebenso wünschenswert, eine Prozessortemperatur zu überwachen und einen Leistungsverbrauch und ein Verhalten einzustellen, um Prozessorfehler zu vermeiden und einen dauerhaften Schaden an den integrierten Schaltungen zu verhindern.
  • Die US-Patentanmeldung US 2001/0032298 A1 beschreibt eine Datenverarbeitungsschaltung mit einem Cache-Speicher und eine Vorrichtung, die eine solche Schaltung enthält. Die Datenverarbeitungsschaltung kann dabei zwischen einem Betrieb in einem Modus, in dem der Cache-Speicher aktiv ist, und einem Betrieb in einem Modus, in dem der Cache-Speicher umgangen wird, umgeschaltet werden. In dem Betriebszustand, in dem der Cache-Speicher umgangen wird, wird die Leistungsversorgung zu dem Cache-Speicher abgeschaltet, um die Leistungsaufnahme zu verringern. Dieses Ziel wird erreicht, indem verhindert wird, dass ein Unterschwellenstrom in der Schaltung des Cache-Speichers fließen kann.
  • Die europäische Patentschrift EP 0 543 582 B1 , die in einer deutschen Übersetzung als DE 692 04 143 T2 vorliegt, zeigt eine Datenverarbeitungsanordnung mit Speicheranordnungen, die eine Einrichtung zur Vermeidung von Datenverlust enthalten. Die Vermeidung eines Datenverlusts erfolgt insbesondere durch die Bereitstellung eines Sicherheitsspeichermittels mit einer externen Stromquelle. Die entsprechende Druckschrift lehrt, zum Schutz einer Information vor Datenverlust im Falle eines Ausfalls einer Versorgungsspannung die Information in mehreren getrennten Speichermodulen abzulegen. Daher umfasst jedes Modul einen ersten Bereich, der einen Cache-Speicher umfasst und einen zweiten Bereich, der einen nicht-flüchtigen Speicher umfasst. Weiterhin ist eine entsprechende Anordnung so ausgelegt, dass zu speichernde Daten gleichzeitig in dem ersten Bereich eines ersten Speichermoduls und in dem zweiten Bereich eines anderen Speichermoduls abgelegt werden.
  • Das US-Patent 6,347,379 B1 beschreibt ein Verfahren zum Verringern eines Leistungsverbrauchs aufgrund von Leckströmen in Computereinrichtungen und anderen Geräten. Um die entsprechende Leistungseinsparung zu erzielen, wird ein Zustand hergestellt, in dem Taktsignale ausgeschaltet sind und in dem eine niedere Versorgungsspannung an einen Prozessor geliefert wird. Diese niedere Versorgungsspannung kann ausreichend nieder sein, um negative Konsequenzen zu vermeiden, während Leckströme dramatisch verringert werden. Zusätzlich werden Cache-Speicher vor einem Übergang in einen Ruhezustand geleert, um die Anzahl von „Soft-Errors", die durch die Umgebungsstrahlung entstehen können, zu verringern.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine integrierte Prozessorschaltung zu schaffen, mit deren Hilfe Leistungseinsparungen bei integrierten Schaltungen realisiert werden können.
  • Diese Aufgabe wird durch eine integrierte Prozessorschaltung gemäß Anspruch 1 gelöst.
  • Eine integrierte Prozessorschaltung weist zumindest einen Prozessor und zwei oder mehr Ebenen eines Cache-Speichers auf. Eine erste Leistungsverbindung liefert eine Leistung an den Prozessor und einen Cache-Speicher einer niedrigeren Ebene, was einen ersten Leistungsbereich bildet. Die integrierte Schaltung weist eine zweite Leistungsverbindung auf, die eine Leistung an einen Cache-Speicher einer höheren Ebene der Schaltung liefert, was einen zweiten Leistungsbereich bildet. Es kann zusätzliche Leistungsverbindungen zu der integrierten Schaltung geben, was zusätzliche Leistungsbereiche bildet, wie z. B. eine Peripherie- oder eine Speicher-Schnittstellenleistung.
  • Bei bestimmten Ausführungsbeispielen weist die integrierte Schaltung einen Schnittstellenschaltungsaufbau zwischen den Leistungsbereichen auf. Dieser Schnittstellenschaltungsaufbau puffert und steuert Signale, die Bereichsgrenzen überschreiten, um einen nicht ordnungsgemäßen Betrieb der Schaltung zu verhindern, wenn Spannungsdifferenzen auftreten.
  • Ein System, das die integrierte Prozessorschaltung ausführt, weist zumindest zwei unabhängige Leistungsversorgungsteilsysteme auf, wobei jedes derselben mit einer der Leistungsverbindungen der integrierten Prozessorschaltung verbunden ist. Jedes Leistungsversorgungsteilsystem ist unabhängig durch einen I/O-Schaltungsaufbau des Systems steuerbar; der I/O-Schaltungsaufbau kann einen Systemverwaltungsprozessor beinhalten. Das System ist in der Lage, einen Systemleistungsverbrauch und ein Verhalten gegenüber einer Systemlast durch ein unabhängiges Steuern der Leistungsversorgungsteilsysteme und ein Verändern des Verhaltens des Prozessors und des Cache-Speichers einzustellen.
  • Ein bestimmtes Ausführungsbeispiel stellt das Verhalten eines Cache-Speichers höherer Ebene durch ein Einstellen einer Cache-Latenz bezüglich Prozessorzyklen ein. Der Cache-Speicher höherer Ebene dieses Ausführungsbeispiels ist auf eine Latenz zwischen zwei und fünf Zyklen einstellbar. Das Leistungsversorgungsteilsystem, das gekoppelt ist, um eine Leistung an den Cache-Speicher höherer Ebene dieses Ausführungsbeispiels zu liefern, ist zu einer Einstellung auf eine erste niedrigere Betriebsspannung, wenn eine Latenz auf eine hohe Anzahl von Zyklen eingestellt ist oder eine Taktfrequenz niedrig ist, und auf eine zweite, höhere Betriebsspannung in der Lage, wenn eine Latenz auf eine niedrige Anzahl von Zyklen eingestellt ist und eine Taktfrequenz hoch ist.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beigefügten Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockdiagramm eines Systems, das eine integrierte Prozessorschaltung ausführt;
  • 2 ein Flußdiagramm von Abschnitten eines periodisch aufgerufenen Prozesses zum Einstellen und Steuern eines Leistungsverbrauchs in einem Computersystem; und
  • 3 ein Flußdiagramm einer Aufgabe zum Konfigurieren einer Prozessorschaltung, um einen Kompromiß zwischen Verhalten und Leistungsverbrauch zu finden.
  • Eine integrierte Prozessorschaltung 100 (1) weist einen ersten Prozessor 104 mit einem Cache-Speicher 106 auf. Der Prozessor 104 weist eine Leistungsverbindung 110 auf, die in einem System 130 durch eine chipexterne, steuerbare Leistungsversorgung 112 getrieben wird. Cache-Fehlschläge von dem Cache-Speicher 106 und I/O-Referenzen von dem ersten Prozessor 104 werden durch eine Schnittstelle 113 zu gemeinsamen Schaltungselementen 118 geleitet, die einen Cache-Speicher höherer Ebene 120 umfassen. In einem Computersystem 130, das den Prozessorchip 100 verwendet, werden Fehlschläge von dem Cache-Speicher höherer Ebene 120 durch eine Speicherbusschnittstelle 122 zu einer chipexternen Systemsteuerung 140 geleitet, wo dieselben decodiert und an einen Hauptspeicher 142, einen Anzeige-Adapter 144 und I/O- Vorrichtungen 146 geleitet werden.
  • Der Cache-Speicher höherer Ebene 120 weist eine Leistungsverbindung 150, die durch eine steuerbare Leistungsversorgung 152 des Systems 130 getrieben wird, und eine Speicherbusschnittstelle 122, die durch eine Leistungsversorgung 154 des Systems 130 getrieben wird, auf, die auf eine Spannung eingestellt ist, die für ein gutes Speicher-Schnittstellenbusverhalten erforderlich ist.
  • Die gemeinsamen Schaltungselemente 118 umfassen Taktschaltungen 156. Ein Temperatursensor 158 ist zum Überwachen einer Temperatur der integrierten Prozessorschaltung 100 vorgesehen.
  • Bei einem bestimmten Ausführungsbeispiel umfassen I/O-Vorrichtungen 146 einen Systemverwaltungsprozessor 160, der gekoppelt ist, um eine Temperatur von einem Temperatursensor 158 zu lesen und steuerbare Leistungsversorgungen 112 und 152 zu steuern und mit dem Prozessorchip 100 zu kommunizieren.
  • Bei einem bestimmten Ausführungsbeispiel weist der Prozessorchip 100 außerdem einen zweiten Prozessor 170, einen Cache-Speicher niedrigerer Ebene 172 und eine Schnittstelle 174 zu dem Cache-Speicher höherer Ebene auf. Der zweite Prozessor 170 weist eine Leistungsversorgungsverbindung 176 auf, die durch eine zusätzliche steuerbare Leistungsversorgung 178 getrieben wird.
  • Der erste Prozessor 104 und der Cache-Speicher 106 der Schaltung bilden gemeinsam einen ersten CPU-Leistungsbereich. Der Cache-Speicher höherer Ebene 120 bildet einen zweiten Leistungsbereich. Die Speicherbusschnittstelle 122 bildet einen dritten Leistungsbereich. Bei Ausführungsbeispielen, die den zweiten Prozessor 170 aufweisen, bilden der zweite Prozessor 170 und der Cache-Speicher 172 einen Leistungsbereich der zweiten CPU oder des vierten Chips. Jeder Cache-Speicher 106 und 172 kann ein Einebenen-Cache-Speicher sein oder bei einem bestimmten Ausführungsbeispiel ist jeder Cache-Speicher 106 und 172 ein Mehrebenen-Cache-System mit zwei oder mehr Ebenen.
  • Bei einem alternativen Ausführungsbeispiel (nicht gezeigt) gibt es vier Prozessoren, wobei jeder seinen eigenen Erstebenen-Cache-Speicher aufweist, wobei jeder derselben unabhängige Leistungsverbindungen aufweist, die vier CPU-Leistungsbereiche bilden. Es ist zu erwarten, daß andere Ausführungsbeispiele zusätzliche Leistungsverbindungen zu der integrierten Schaltung aufweisen können, was zusätzliche Leistungsbereiche bildet.
  • Bei bestimmten Ausführungsbeispielen weist die integrierte Schaltung einen Schnittstellenschaltungsaufbau zwischen jedem Paar kommunizierender Leistungsbereiche auf. Dieser Schnittstellenschaltungsaufbau steuert Signale, die Bereichsgrenzen überschreiten, um einen nicht ordnungsgemäßen Betrieb oder eine Zerstörung der Schaltung zu verhindern, wenn Leistungsversorgungen eine Spannung ändern. Bei einem bestimmten Ausführungsbeispiel integrierter Mehrprozessorschaltungen, die bei P-Wanne- oder Doppelwannen-CMOS-Prozessen hergestellt werden, kann dieser Schnittstellenschaltungsaufbau gemäß den folgenden Regeln entworfen sein:
    • 1. Um ein Vorwärts-Vorspannen von Übergängen zu verhindern, werden Signale, die durch Gatter getrieben werden, die durch einen Leistungsbereich mit Leistung versorgt werden, nie mit einer P-Diffusion verbunden, die in einer Wanne angeordnet ist, die elektrisch mit einer Leistungsversorgung eines anderen Leistungsbereichs verbunden ist.
    • 2. Um einen korrupten Betrieb zu verhindern, wird ein Schaltungsaufbau in dem dritten Leistungsbereich entworfen, um alle Übergänge in dem ersten Leistungsbereich zu ignorieren, wenn eine Leistung, die an den ersten Leistungsbereich geliefert wird, kleiner als die für einen Normalbetrieb erforderliche Leistung ist.
    • 3. Um einen korrupten Betrieb zu verhindern, wird ein Schaltungsaufbau in jedem Leistungsbereich entworfen, um alle Signalübergänge zu ignorieren, die aus anderen Leistungsbereichen stammen, wenn eine Spannung, die an die anderen Leistungsbereiche geliefert wird, kleiner als die für einen korrekten Betrieb erforderliche Spannung ist.
    • 4. Um Spannungsdifferenzen zwischen Bereichen zu ermöglichen, werden Gatter-Schwellen eines Schnittstellenschaltungsaufbaus entworfen, um breitere Signalspielräume aufzuweisen, als für einen Großteil des Schaltungsaufbaus des Chips erforderlich ist.
  • Ein System 130, das die integrierte Mehrprozessorschaltung 100 ausführt, weist mehrere unabhängig steuerbare Leistungsversorgungsteilsysteme 112, 152, 154 und 178 auf, wobei jedes derselben mit einer Leistungsverbindung 110, 150, 155, 176 der integrierten Mehrprozessorschaltung 100 verbunden ist.
  • Bei einem bestimmten Ausführungsbeispiel werden die Systemsteuerung 140, der Speicher 142, der Anzeige-Adapter 144 und die I/O-Vorrichtungen 146 mit einer Leistung von einer Quelle versorgt, die separat von den steuerbaren Cache-Speicher- und Prozessorkernleistungsversorgungen 112, 152 und 178 ist.
  • Die Prozessorleistungsversorgungsteilsysteme 112 und 178 sind unabhängig durch die I/O-Vorrichtungen 146 des Systems steuerbar. Das System 130 ist in der Lage, einen Systemleistungsverbrauch und ein Verhalten gegenüber einer Systemlast durch ein unabhängiges Steuern der Leistungsversorgungsteilsysteme 112, 178 und 152 in Verbindung mit Einstellungen einzustellen, die an Taktraten an dem Taktgenerator 156 und einer Latenz des Cache-Speichers 120 vorgenommen werden. Bei einem bestimmten Ausführungsbeispiel ist das System in der Lage, eine Leistung zu dem zweiten oder einem anderen Prozessor 170 durch ein Ausschalten seiner Leistungsversorgung 178 auszustellen, während eine Leistung an den ersten Prozessor 104 durch die Leistungsversorgung 112 geliefert und derselbe so betrieben wird.
  • Es ist bekannt, daß integrierte Prozessorschaltungen maximale Betriebsfrequenzen aufweisen, die mit einer Leistungsversorgungsspannung variieren. Eine Darstellung der Betriebsfrequenz gegenüber der Spannung ist als eine „Schmoo-Darstellung" bzw. Funktionsfähigkeitsbereich-Darstellung bekannt. Insbesondere ist bekannt, daß eine maximale Betriebsfrequenz eines Prozessors üblicherweise mit zunehmender Prozessorspannung ansteigt. Es ist ebenso bekannt, daß ein Leistungsverbrauch eines Cache-Speichers üblicherweise proportional zu dem Quadrat der Prozessorspannung ansteigt.
  • Es ist deshalb möglich, einen ersten Betriebspunkt von Spannung und Zugriffszeit mit hohem Verhalten für einen Cache-Speicher, wie z. B. den Cache-Speicher höherer Ebene 120, auszuwählen. Der Betriebspunkt mit hohem Verhalten ist zu einem höherfrequenten Betrieb in der Lage, erfordert jedoch eine höhere Betriebsspannung und führt üblicherweise zu einem wesentlich höheren Leistungsverbrauch als bei einem Betriebspunkt mit niedrigem Verhalten.
  • Der Betriebspunkt von Spannung und Zugriffszeit mit niedrigem Verhalten ist eine Kombination einer niedrigeren Betriebsspannung und einer längeren Zugriffszeit als bei dem Betriebspunkt mit hohem Verhalten.
  • Da der Betriebspunkt mit niedrigem Verhalten eine längere Zugriffszeit als der Betriebspunkt mit hohem Verhalten aufweist, erfordert dieser Betriebspunkt zusätzliche Latenzverzögerungstaktzyklen, wenn derselbe bei einem Betriebspunkt des Prozessors mit hohem Verhalten verwendet werden soll. Bei einem bestimmten Ausführungsbeispiel ist der Cache-Speicher höherer Ebene 120 deshalb mit einer programmierbaren Latenz entworfen. Bei einem bestimmten Ausführungsbeispiel ist die Latenz, die einem Cache-Speicherzugriff zuteilbar ist, auf eine Anzahl von Taktzyklen zwischen zwei und sechs programmierbar.
  • Bei einem System 130, das die Prozessorschaltung 100 ausführt, wird eine Systemleistungssteuerungsaufgabe (2) periodisch aufgerufen. Diese Aufgabe weist Abschnitte, die auf einem Prozessor der Schaltung 100 ausgeführt werden, und Abschnitte auf, die auf dem Systemverwaltungsprozessor 160 ausgeführt werden. Die Leistungssteuerungsaufgabe beginnt mit einem Lesen einer Temperatur der Prozessorschaltung 100 von dem Temperatursensor 158. Diese Temperatur wird mit einer ersten Leistungsreduzierungsschwelle verglichen 202. Wenn die Temperatur unterhalb der Reduzierungsschwelle ist, wird die Systemlast geprüft 204. Wenn die Systemlast hoch ist, wird das System für ein maximales Verhalten durch ein Einstellen der Betriebsspannung des Cache-Speichers 120 auf Hoch, der Betriebsspannung des Prozessors 104 auf Hoch und der Taktrate auf Hoch konfiguriert 206.
  • Wenn die Systemlast niedrig ist, oder wenn die Temperatur oberhalb der Reduzierungsschwelle, jedoch unterhalb einer drastischen Sparschwelle war, wird das System intelligent für ein moderates Leistungssparen konfiguriert 210.
  • Wenn die Systemtemperatur die drastische Sparschwelle überschreitet, jedoch niedriger als eine Notfallherunterfahrschwelle ist 212, wird das System für eine minimale Leistungsdissipierung und maximale Leistungseinsparung konfiguriert 214. Dies wird durch ein Einstellen der Latenz des Cache-Speichers höherer Ebene 120 auf einen hohen Wert, ein Reduzieren der Cache-Leistung 152 auf den niedrigen Betriebspunkt, ein Einstellen der Taktrate zu dem Prozessor 104 und dem Cache-Speicher niedrigerer Ebene 106 auf einen niedrigen Wert und ein Reduzieren der Prozessorleistung 112 auf einen niedrigen Wert durchgeführt. Bei einem Ausführungsbeispiel, das mehrere Prozessoren auf der Schaltung 100 aufweist, werden die zusätzlichen Prozessoren 170 ausgeschaltet. Während ein Systemverhalten bei diesem maximalen Sparmodus niedrig ist, kann dasselbe ein ordnungsgemäßes Herunterfahren des Betriebssystems durchführen, um eine Datenkorruption zu verhindern.
  • Sollte die Temperatur die Notfallherunterfahrschwelle überschreiten 212, wird ein Notfallherunterfahren 216 durchgeführt, bei dem der Systembetrieb gestoppt wird, wobei die gesamte oder ein Großteil der Leistung von der Schaltung 100 entfernt wird.
  • Eine intelligente Konfiguration 210 des Systems 130 zur moderaten Leistungseinsparung wird durch ein Prüfen jüngerer Betriebssystemaufzeichnungen einer Prozessorverwendung durchgeführt 302 (3).
  • Wenn, 304, die Prozessorverwendung zeigt, daß Prozessoren des Systems sehr beschäftigt sind, werden die CPU-Taktraten stufenförmig erhöht und CPU-Leistungsversorgungsspannungen erhöht 306, wenn dieselben nicht bereits bei ihrem Maximum sind. Wenn der CPU-Takt bereits bei einem Maximum ist, werden untätige Prozessoren wie benötigt reaktiviert 306.
  • Wenn, 304, die Prozessorverwendung zeigt, daß Prozessoren des Systems zum großen Teil untätig sind, wird die Anzahl aktiver Prozessoren des Systems mit einer minimalen Anzahl von Prozessoren, die in dem System erlaubt ist, verglichen 310. Wenn die Anzahl aktiver Prozessoren das Minimum überschreitet, wird ein Prozessor 170 heruntergefahren 312. Ein Herunterfahren eines Prozessors 170 umfaßt ein Ausschalten eines Taktes an diesen Prozessor und kann ein Ausschalten seiner zugeordneten Leistungsversorgung 178 umfassen, wobei dies zum Ergebnis hat, daß ein Leistungsverbrauch durch diesen Prozessor 170 stark reduziert oder beseitigt wird. Wenn die Anzahl von Prozessoren nicht größer als das Minimum war, wird die gegenwärtige CPU-Takteinstellung geprüft 314, um zu bestimmen, ob dieselbe größer als ein Minimum ist, wobei, falls dies der Fall ist, die Taktrate reduziert wird 316.
  • Sobald die Aktivprozessorzahl und Taktrate wie benötigt eingestellt wurden, wird die Last auf den Cache-Speicher höherer Ebene 120 bestimmt 320.
  • Wenn, 322, die Last in dem Cache-Speicher höherer Ebene 120 hoch ist, wird die Latenz des Cache-Speichers höherer Ebene gesenkt und die Spannung seiner Leistungsversorgung 152 wird erhöht, derart, daß die Latenz und Spannung in Regionen sind, in denen der Cache-Speicher arbeitet, wenn die Leistungsversorgungsspannung des Zweitebenen-Cache-Speichers nicht bereits bei ihrem Maximum ist. Wenn, 322, die Last des Cache-Speichers höherer Ebene 120 niedrig ist und die Cache-Latenz größer als ein Minimum ist, 326, wird der Cache-Speicher höherer Ebene für eine lange Latenz 328 konfiguriert und die Spannung seiner Leistungsversorgung 152 wird gesenkt 330.
  • Auf diese Art werden die Latenz und Betriebsspannung des Cache-Speichers höherer Ebene abgestimmt, um einen Leistungsverbrauch der integrierten Schaltung zu optimieren.

Claims (4)

  1. Integrierte Prozessorschaltung (100) mit folgenden Merkmalen: zumindest einem Prozessor (104), der zumindest eine Leistungsverbindung (110) aufweist; einem Cache-Speicher (106) einer ersten Ebene, der gekoppelt ist, um Instruktionen an den zumindest einen Prozessor zu liefern; einem Cache-Speicher (120) einer zweiten Ebene, der gekoppelt ist, um auf einen Fehlschlag in dem Cache-Speicher (106) der ersten Ebene hin Instruktionen an den Cache-Speicher (106) der ersten Ebene zu liefern, wobei der Cache-Speicher (120) der zweiten Ebene zumindest eine Leistungsverbindung (150) aufweist, die separat von der zumindest einen Leistungsverbindung (110) des zumindest einen Prozessors (104) ist; und einer Taktgeneratorschaltung (156) zum Bereitstellen eines Taktsignals, das eine Taktrate aufweist, wobei der Cache-Speicher (120) der zweiten Ebene bei einer vorgegebenen Taktgenerator-Taktrate auf zumindest eine erste Latenzzeit und auf eine zweite Latenzzeit anpaßbar ist.
  2. Integrierte Prozessorschaltung gemäß Anspruch 1, bei der die erste Latenzzeit des Cache-Speichers (120) der zweiten Ebene zur Verwendung mit einer ersten Spannung in der Lage ist, die an die zumindest eine Leistungsversorgungsverbindung des Cache-Speichers (120) der zweiten Ebene angelegt wird, und die zweite Latenzzeit des Cache-Speichers (120) der zweiten Ebene zur Verwendung mit einer zweiten Spannung in der Lage ist, die an die zumindest eine Leistungsversorgungs verbindung des Cache-Speichers der zweiten Ebene angelegt wird.
  3. Integrierte Prozessorschaltung gemäß Anspruch 1 oder 2, die ferner einen Cache-Speicher einer dritten Ebene aufweist, der gekoppelt ist, um Instruktionen an den zumindest einen Prozessor (104) zu liefern, und bei der der Cache-Speicher (104) der ersten Ebene auf einen Fehlschlag in dem Cache-Speicher der dritten Ebene hin Instruktionen an den zumindest einen Prozessor (104) liefert.
  4. Integrierte Prozessorschaltung gemäß Anspruch 3, bei der der zumindest eine Prozessor (104) eine Vielzahl von Prozessoren (104, 170) aufweist.
DE10338038A 2002-12-13 2003-08-19 Vorrichtung zum Sparen einer Leistung, die durch ein System verbraucht wird, das eine integrierte Prozessorschaltung aufweist Expired - Fee Related DE10338038B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/319667 2002-12-13
US10/319,667 US7028196B2 (en) 2002-12-13 2002-12-13 System, method and apparatus for conserving power consumed by a system having a processor integrated circuit
DE10362079 2003-08-19

Publications (2)

Publication Number Publication Date
DE10338038A1 DE10338038A1 (de) 2004-07-08
DE10338038B4 true DE10338038B4 (de) 2005-11-17

Family

ID=35169920

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10338038A Expired - Fee Related DE10338038B4 (de) 2002-12-13 2003-08-19 Vorrichtung zum Sparen einer Leistung, die durch ein System verbraucht wird, das eine integrierte Prozessorschaltung aufweist

Country Status (1)

Country Link
DE (1) DE10338038B4 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69204143T2 (de) * 1991-11-20 1996-05-02 Ibm Datenverarbeitungsanordnung mit Speicheranordnung.
US20010032298A1 (en) * 2000-04-12 2001-10-18 Emons Martijn Johannes Lambertus Data processing circuit with a cache memory and apparatus containing such a circuit
US6347379B1 (en) * 1998-09-25 2002-02-12 Intel Corporation Reducing power consumption of an electronic device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69204143T2 (de) * 1991-11-20 1996-05-02 Ibm Datenverarbeitungsanordnung mit Speicheranordnung.
US6347379B1 (en) * 1998-09-25 2002-02-12 Intel Corporation Reducing power consumption of an electronic device
US20010032298A1 (en) * 2000-04-12 2001-10-18 Emons Martijn Johannes Lambertus Data processing circuit with a cache memory and apparatus containing such a circuit

Also Published As

Publication number Publication date
DE10338038A1 (de) 2004-07-08

Similar Documents

Publication Publication Date Title
DE102013011698B4 (de) Taktausblendauffangregister, verfahren für dessen betrieb und integrierte schaltung, in der dieses angewendet ist
DE4404132C2 (de) Abschaltbare Vollausschlag-Pufferschaltung mit einer Isolierung bei mehrfacher Leistungsversorgung
EP0090255B1 (de) Tristate-Treiberschaltung
DE19849949C2 (de) Integrierte Schaltung mit für eine Abschaltung auf Ruhezustandsleistung geeignete CMOS-Dreistufen-Ansteuerungsvorrichtung
DE60307293T2 (de) Verfahren zur verringerung der stromaufnahme in einer zustandshalteschaltung, zustandshalteschaltung und elektronische einrichtung
DE112005002672B4 (de) Dynamische Neukonfiguration eines Cache-Speichers
DE19631911C2 (de) Logikschaltung
DE112005001698B4 (de) Leistungszufuhr-Clamp-Schaltung, integrierte Schaltungsanordnung und Verfahren zum Bereitstellen eines elektrostatischen Entladungsschutzes
DE69533329T2 (de) Verwendung von auf dem halbleiterträger angeordneten temperaturfühlern und fehlersignalen des kühlventilators zum kontrollieren der verlustleistung
DE102011102152B4 (de) Schema für verteilte Leistungsabgabe zur On-Die-Spannungsskalierung
DE19615413A1 (de) Integrierte Halbleiterschaltung
DE60031214T2 (de) Spannungsschutzschaltung und -Verfahren für einen Eingangs/Ausgangsanschluss
DE60007218T2 (de) Flip-flop-schaltkreis
DE19900859B4 (de) CMOS-Schaltung geringer Leistung
DE102005049232A1 (de) Integrierter Schaltkreis und Verfahren zum Betreiben eines integrierten Schaltkreises
DE4334263B4 (de) Generatorschaltung für eine negative Vorspannung für ein Halbleiterspeicherbauelement
DE102007025775A1 (de) Elektrostatische Mehrmodus-Entladeschaltung und Verfahren zur Eingangskapazitätsreduzierung
DE602005006023T2 (de) Dual-mode Mobilendgerät mit Modusschaltkreis
DE19925374A1 (de) Schaltungen und Verfahren zum Einstellen eines digitalen Potentials
DE112011105644T5 (de) Ladungssparende Power-Gate-Vorrichtung und Verfahren
DE102017205781B4 (de) Schaltung und Verfahren für einen Pegelumsetzer ohne statischen Strom
DE3739993C2 (de)
DE60037948T2 (de) Ausgangspuffer für differenzielle Niederspannugssignale
DE112012002672B4 (de) Schaltkreise und Verfahren für Speicher
DE112018000425T5 (de) Schaltungen zur ableitung von versorgungsspannung von einer anordnung in einem abgeschaltetem zustand

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8172 Supplementary division/partition in:

Ref document number: 10362079

Country of ref document: DE

Kind code of ref document: P

Q171 Divided out to:

Ref document number: 10362079

Country of ref document: DE

Kind code of ref document: P

8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130301