-
Hintergrund der Erfindung
-
Technisches Gebiet
-
Diese Erfindung betrifft das Gebiet der Prozessoren und Computersysteme mit Prozessoren und betrifft die Steuerung des Leistungsverbrauchs in derartigen Systemen.
-
Hintergrund der Erfindung
-
Es sind diverse Arten von mobilen Recheneinrichtungen sehr populär geworden, wodurch es möglich ist, unabhängig von stationären Recheneinrichtungen zu arbeiten. Zu mobilen Computereinrichtungen gehören tragbare Computer (die auch als Laptops bezeichnet werden), persönliche digitale Assistenten (PDA), wie sie auf der Grundlage von Palm-Betriebssystemen betrieben werden (beispielsweise der Palm-Pilot-Familie) sowie auf der Grundlage von Plattformen mit Windwos CE, mobile Kommunikationseinrichtungen, die Produktlinie „Blackberry” von Research in Motion, wodurch kabelloser E-Mail-Zugriff möglich ist und diverse kabellose Telefoneinrichtungen, etwa Mobiltelefone, Kombinationen aus PDA's oder tragbaren E-Mail-Einrichtungen bzw. Black-Berry-Einrichtungen und Mobiltelefonen, etc.
-
Die
US 6 040 845 A beschreibt eine Bus-Schnittstellen-Einheit mit einem Accelerated Graphics Port (AGP) konformen Zielobjekt, das heruntergefahren werden kann, wenn ein AGP-Master keine Master-Funktionen ausführt.
-
Die
US 5 991 883 A beschreibt Energiemanagement für tragbare Computer und insbesondere Energiemanagement für energiesparende Bildschirmsysteme.
-
Ein gemeinsames Problem für alle mobile Rechnereinrichtungen ist die Batterielebensdauer. Je länger die Batterie (oder eine vorgegebene Ladung der Batterie) für die Bearbeitung ausreicht, desto zufriedener ist der Anwender mit Produkt und um so wahrscheinlicher wird es, dass der Anwender das nächste Produkt von dem gleichen Hersteller erwirbt. Viele tragbare Rechnereinrichtungen, insbesondere Laptops, können mit einer externen Energiequelle (beispielsweise einem Wechselstromanschluss) zusätzlich zur Bereitstellung einer inneren Batterieenergiequelle verbunden werden. Wenn eine externe Energiequelle verwendet wird, wird die Batterie nicht verwendet (und kann ggf. durch die externe Energiequelle aufgeladen werden). Somit ist ein höherer Leistungsverbrauch zulässig, wenn die externe Energiequelle verwendet wird. In diversen Rechnereinrichtungen (beispielsweise wird die fortschrittliche Konfigurier- und Leistungsschnittstelle (ACP) in tragbaren Rechner häufig verwendet) sind zahlreiche leistungssparende Mechanismen eingebaut. Jedoch ist der Versuch, die Batterielebensdauer zu verbessern, wenn die tragbare Recheneinheit nicht mit einer externen Energiequelle verbunden ist, weiterhin von großem Interesse und das Ziel ständiger Neuerungen.
-
Überblick über die Erfindung
-
Die Erfindung umfasst eine Prozessoreinheit mit: mindestens einem Prozessorkern; einer Anzeigesteuerung, die ausgebildet ist, eine Verbindung zu einer Anzeige herzustellen; und einer Brücke, die mit dem Prozessorkern und der Anzeigesteuerung verbunden ist, wobei die Brücke ferner ausgebildet ist, eine Verbindung zu einer ersten Schnittstelle zur Kommunikation mit wenigstens (i) einer Graphikverarbeitungseinheit herzustellen, die ausgebildet ist, Daten in einem Bildblockpuffer, der ein auf der Anzeige anzuzeigendes Bild repräsentiert, zu erzeugen; und (ii) einer zweiten Brücke, die an eine periphere Schnittstelle koppelt; und wobei die Brücke ausgebildet ist, an eine Speicherschnittstelle zu koppeln, um mit einem Speicher, in dem der Bildblockpuffer gespeichert ist, zu kommunizieren, wobei die Brückeneinheit ausgebildet ist, die erste Schnittstelle zu deaktivieren, wenn die Graphikverarbeitungseinheit keine Bilddatenerzeugung ausführt und keine Aktivität an der peripheren Schnittstelle vorliegt, und wobei die Anzeigesteuerung ausgebildet ist, die Bildblockpufferdaten aus dem Speicher zur Anzeige auszulesen, selbst wenn die erste Schnittstelle deaktiviert ist.
-
Die Erfindung umfasst ferner eine integrierte Schaltung mit der Prozessoreinheit, wobei die integrierte Schaltung die Graphikverarbeitungseinheit nicht aufweist, die das Bild in dem Bildblockpuffer erzeugt. In der integrierten Schaltung kann die Brücke ferner ausgebildet sein, eine Verbindung mit einer Speicherschnittstelle zur Kommunikation mit einem Speicher herzustellen.
-
Die Erfindung umfasst ferner ein System mit: einem Speicher; einer Speicherschnittstelle, die mit dem Speicher verbunden ist; der Prozessoreinheit wie oben beschrieben, die mit der Speicherschnittstelle verbunden ist; der ersten Schnittstelle, die mit der Prozessoreinheit verbunden ist; und der Graphikverarbeitungseinheit. Die Graphikverarbeitungseinheit kann ausgebildet sein, auf den Speicher zuzugreifen, indem Befehle über die erste Schnittstelle zu der Prozessoreinheit übermittelt werden, die ausgebildet ist, auf den Speicher über die Speicherschnittstelle zuzugreifen. Die Graphikverarbeitungseinheit kann ausgebildet sein, Daten, die ein zu erzeugendes Objekt beschreiben, aus dem Speicher auszulesen, und wobei die Graphikverarbeitungseinheit ausgebildet ist, das Bild in den Bildblockpuffer zu schreiben. Das System kann ferner eine zweite Anzeigesteuerung aufweisen, die ausgebildet ist, eine Verbindung zu einer zweiten Anzeige herzustellen, wobei die zweite Anzeigesteuerung ausgebildet ist, über die erste Schnittstelle zu kommunizieren. Die Graphikverarbeitungseinheit kann in einer zweiten Brücke enthalten sein, die mit der ersten Schnittstelle verbunden ist und ferner mit einer peripheren Schnittstelle gekoppelt Ist.
-
Die Erfindung umfasst ferner ein Verfahren zur Ausführung in einer Vorrichtung mit mindestens einem Prozessorkern; einer Anzeigesteuerung, die zur Verbindung mit einer Anzeige ausgebildet ist; und einer Brücke, die mit dem Prozessorkern und der Anzeigesteuerung verbunden ist, wobei die Brücke ferner ausgebildet ist, eine Verbindung mit einer ersten Schnittstelle zur Kommunikation mit wenigstens (i) einer Graphikverarbeitungseinheit herzustellen, die ausgebildet ist, Daten in einem Bildblockpuffer, der ein auf der Anzeige darzustellendes Bild repräsentiert, zu erzeugen, und (ii) einer zweiten Brücke, die an eine periphere Schnittstelle koppelt; und wobei die Brücke ausgebildet ist, an eine Speicherschnittstelle zu koppeln, um mit einem Speicher, in dem der Bildblockpuffer gespeichert ist, zu kommunizieren, wobei das Verfahren umfasst: Deaktivieren der ersten Schnittstelle durch die Brücke, wenn die Graphikverarbeitungseinheit keine Bilddatenerzeugung durchführt und keine Aktivität an der peripheren Schnittstelle vorliegt; und Auslesen der Bildblockpufferdaten aus dem Speicher zum Anzeigen durch die Anzeigesteuerung, selbst wenn die zweite Schnittstelle deaktiviert ist. In dem Verfahren kann ferner die Graphikverarbeitungseinheit über die erste Schnittstelle Befehle an die Prozessoreinheit übermitteln, um auf den Speicher zuzugreifen; und in Antwort auf die Befehle kann die Prozessoreinheit auf den Speicher über die Speicherschnittstelle zugreifen. In dem Verfahren kann ferner die Graphikverarbeitungseinheit unter Verwendung der Befehle Daten aus dem Speicher lesen, die zu erzeugende Objekte beschreiben; und die Graphikverarbeitungseinheit kann unter Verwendung der Befehle das Bild in den Bildblockpuffer schreibt. In dem Verfahren kann das System eine zweite Anzeigesteuerung aufweisen, die ausgebildet ist, eine Verbindung zu einer zweiten Anzeige herzustellen, und das Verfahren kann ferner umfassen, dass die zweite Anzeigesteuerung über die erste Schnittstelle kommuniziert.
-
Kurze Beschreibung der Zeichnungen
-
In der folgenden detaillierten Beschreibung wird auf die begleitenden Zeichnungen Bezug genommen, die nunmehr kurz beschrieben werden.
-
1 ist eine Blockansicht einer Ausführungsform eines Computersystems.
-
2 ist eine Blockansicht, in der der Datenfluss in dem Computersystem für eine Ausführungsform dargestellt ist.
-
3 ist ein Zustandsdiagramm, in welchem diverse Energiezustände einer Prozessoreinheit dargestellt ist, die in dem 1 und 2 gezeigt ist.
-
4 ist eine Blockansicht einer weiteren Ausführungsform eines Computersystems.
-
Obwohl die Erfindung diversen Modifizierungen und alternativen Formen unterliegen kann, sind dennoch spezielle Ausführungsformen beispielhaft in den Zeichnungen gezeigt und hierin detailliert beschrieben. Es sollte jedoch beachtet werden, dass die Zeichnungen und die detaillierte Beschreibung nicht beabsichtigen, die Erfindung auf die spezielle offenbarte Form einzuschränken, sondern die Erfindung soll vielmehr alle Modifizierungen, Äquivalente und Alternativen abdecken, die innerhalb des Grundgedankens und Schutzbereichs der vorliegenden Erfindung liegen, wie sie durch die angefügten Patentansprüche definiert ist.
-
Art bzw. Arten zum Ausführen der Erfindung
-
1 zeigt eine Blockansicht eines Teils eines Computersystems 10. In der dargestellten Ausführungsform enthält das System 10 einen Systemspeicher 12, eine Prozessoreinheit 14, eine Nordbrücke 16, eine Flüssigkristallanzeige (LCD) 18, eine optionale Anzeige 20 und einen Eingabe/Ausgabe-(I/O)Knoten 22. Die Prozessoreinheit 14 umfasst mindestens einen Prozessorkern (beispielsweise einen Prozessorkern 24a und einen optionales Prozessorkern 24b in der gezeigten Ausführungsform), eine Brücke 26 und eine Anzeigesteuerung 28. Die Nordbrücke 16 enthält eine Graphikverarbeitungseinheit 30 und eine optionale Anzeigesteuerung 32. Die Prozessoreinheit 14 (und insbesondere die Brücke 26 in der dargestellten Ausführungsform) ist mit einer Speicherschnittstelle verbunden, um mit dem Systemspeicher 12 zu kommunizieren. Die Anzeigesteuerung 28 ist über eine Schnittstelle (beispielsweise in der gezeigten Ausführungsform eine Niederspannungs-Differenzsignal-(LVDS)Schnittstelle) mit der Anzeige 18 verbunden und ist ferner mit der Brücke 26 verbunden. Die Brücke 26 ist ferner mit den Prozessorkernen 24a bis 24b und über einer Brückenschnittstelle mit der Nordbrücke 16 verbunden. Die Anzeigesteuerung 32 ist über eine Schnittstelle (beispielsweise die hoch auflösende Multimediaschnittstelle (HDMI)) mit der Anzeige 20 verbunden. Die Nordbrücke 16 ist ferner über eine periphere Schnittstelle mit dem I/O-Knoten 22 verbunden.
-
Das Computersystem 10 kann Teil einer mobilen Rechnereinrichtung (beispielsweise ein Laptop, PDA, etc.) sein. Die Anzeige 18 kann die Anzeige sein, die in der mobilen Recheneinrichtung integriert ist. Beispielsweise umfasst die mobile Recheneinrichtung ein Gehäuse, in der die Anzeige und das Computersystem 10 integriert sind. In einem Laptop kann die Anzeige in dem „Deckel” enthalten sein, der zur Freilegung der Tastatur geöffnet werden kann. In PDAs ist die Anzeige häufig an der Vorderseite der mobilen Recheneinrichtung angebracht.
-
Die Anzeige 18 kann eine Anzeige mit relativ geringer Leistungsaufnahme in einigen Ausführungsformen umfassen, die gestaltet ist, die Batterielebensdauer zu optimieren. Wie beispielsweise in 1 gezeigt ist, kann die Anzeige 18 eine LCD sein. In anderen Ausführungsformen ist eine Dünnschichttransistor-(TFT)Anzeige vorgesehen oder eine beliebige andere Anzeige, die in dem Gerät integriert sein kann. Andererseits kann die Anzeige 20 eine Anzeige mit relativ hoher Leistungsaufnahme sein, etwa eine Kathodenstrahlröhre (CRT), eine LCD- oder TFT-Anzeige, oder eine Plasmaanzeige oder andere Anzeigearten in einer separaten Einheit, die von dem Laptop getrennt ist und über eine externe Steckverbindung, etwa Video out, TV out oder eine Andockverbindung verbunden ist. Die Anzeige 20 kann im Allgemeinen verwendet werden, wenn die mobile Recheneinrichtung mit externer Energie versorgt wird und somit ist die Batterielebensdauer nicht problematisch.
-
Die GPU 30 und die Anzeigesteuerung 28 (und die Anzeigesteuerung 32, wenn diese enthalten ist) können zusammenwirken, um Objekte darzustellen, die durch diverse Softwareprogramme (beispielsweise Software, die auf den Prozessorkernen 24a bis 24b ausgeführt wird) auf der Anzeige 18 (und der Anzeige 20) anzuzeigen. Im Allgemeinen erzeugt die Software Datenstrukturen in dem Systemspeicher 12, die die anzuzeigenden Objekte repräsentieren. Die Datenstrukturen sind durch Bezugszeichen 34 bezeichnet. Die GPU 30 kann die Datenstrukturen auslesen und diese verarbeiten und dabei Pixeldaten erzeugen, die jedes Pixel auf der Anzeige repräsentieren. Die Verarbeitung der Datenstrukturen, die anzuzeigende Objekte repräsentieren, und das Erzeugen von Bilddaten (beispielsweise Pixeldaten) wird als Erzeugen des Bildes bezeichnet. Die Pixeldaten können beispielsweise die Farbe des entsprechenden Pixels auf der Anzeige bezeichnen. Die GPU 30 kann die Pixeldaten in einen Block- bzw. Bildblockpuffer (Bezugszeichen 36) in dem Systemspeicher 12 schreiben. Somit umfasst der Bildblockpuffer 36 Daten, die auf der Anzeige 18 oder 20 darzustellende Bilder repräsentieren. Die Anzeigesteuerungen 28 oder 32 lesen den Bildblockpuffer 36 aus dem Systemspeicher 12 aus und erzeugen Steuersignale für die Anzeigen 18 oder 20, um das in dem Bildblockpuffer 36 geschriebene Bild anzuzeigen. In der Ausführungsform aus 1 greift die GPU 30 auf den Speicher zu, indem Lese-Schreib-Befehle erzeugt werden, die über die Brückenschnittstelle übermittelt werden. Die Befehle werden von der Brücke 26 empfangen, die wiederum die entsprechenden Befehle an den Systemspeicher 12 weitergibt. In ähnlicher Weise kann die Anzeigesteuerung 32 Lesebefehle erzeugen, um den Bildblockpuffer 36 auszulesen, die auf der Brückschnittstelle zu der Brücke 26 übermittelt werden, die dann die entsprechenden Befehle an den Systemspeicher 12 weitergibt. Andererseits kann die Anzeigesteuerung 28 den Bildblockpuffer 36 auslesen, indem Befehle für den Systemspeicher 12 erzeugt werden, die über die Brück 26 übermittelt werden.
-
Die Anzeigen 18 oder 20 enthalten im Allgemeinen keine Speicher, um das anzuzeigende Bild zu speichern, und werden daher wiederholt aufgefrischt, um das Anzeigen des Bildes fortzusetzen, selbst wenn das Bild statisch ist, d. h. sich nicht ändert. Die Rate, mit der das Bild zur Anzeige wiederholt übermittelt wird, wird als Auffrischrate bzw. Wiederholrate bezeichnet. Die Auffrischrate kann ggf. durch den Anwender einstellbar sein und kann variieren, beispielsweise von 60 bis 120 Hertz (Hz), wenn typische Anzeigen betrachtet werden. Somit lesen die Anzeigesteuerung 28 oder 32 die Bildblockpufferdaten wiederholt aus, um diese an die Anzeigen 18 oder 20 wiederholt zu übermitteln (beispielsweise 60 bis 120 mal pro Sekunde bei typischen Anzeigen).
-
In vielen Fällen ist die GPU 30 über einen relativ großen Anteil der Zeit hinweg unbeschäftigt, in welchem das System 10 eingeschaltet ist (beispielsweise in der Größenordnung von 90%). D. h., das anzuzeigende Bild ist über einen weiten Teil der Betriebszeit statisch, und die GPU 30 erzeugt während derartiger Phasen keine Bilddaten. Jedoch sind die Anzeigesteuerungen 28 und 32 nicht während dieser Phasen untätig, da diese die Anzeigen 18 und 20 entsprechend dem Bild wiederholt ansteuern.
-
Da die Anzeige 18 ein Teil der mobilen Rechnereinrichtungen in der vorliegenden Ausführungsform ist, kann die Anzeige 18 während den Zeiten, in denen das Gerät mit Batterieleistung gespeist wird, verwendet werden. Folglich kann durch das Integrieren der Anzeigesteuerung 28 in die Prozessoreinheit 14 das Wiederauffrischen der Anzeige 18 durch die Anzeigesteuerung 28 über die Speicherschnittstelle und die LVDS-Schnittstelle ausgeführt werden. Insbesondere das Auffrischen der Anzeige 18 kann ohne Transaktionen über die Brückenschnittstelle zu der Nordbrücke 16 ausgeführt werden.
-
Somit kann während Zeitphasen, in denen keine Bilderzeugung stattfindet, das System 10 die Brückenschnittstelle deaktivieren. Genauer gesagt, die Prozessoreinheit 14 (beispielsweise die Brücke 26) kann die Brückenschnittstelle deaktivieren. Energie, die ansonsten für den Betrieb der Brückenschnittstelle aufzubringen wäre, kann somit eingespart werden, wodurch die Batterielebensdauer in einigen Ausführungsformen verlängert wird. Die Art und Weise, in der die Schnittstelle deaktiviert wird, kann sich von Ausführungsform zu Ausführungsform in Abhängigkeit der Art der Schnittstelle ändern. Im Allgemeinen bedeutet das Deaktivieren der Schnittstelle, dass Übertragungen über die Schnittstelle beendet werden.
-
In einer Ausführungsform ist die Brückenschnittstelle mit der HypertTransport-(HT)Schnittstelle kompatibel. Die HT-Schnittstelle ist ein taktsignalgesteuerte Hochgeschwindigkeitsschnittstelle. Selbst wenn somit keine Transaktionen über die HT-Schnittstelle übermittelt werden, werden dennoch Ruhedatenmuster und Taktsignale übertragen. Das Deaktivieren der HT-Schnittstelle kann das Ausführen einer Verbindungsunterbrechung beinhalten (wodurch ein normales Abschalten der HT-Schnittstelle an beiden Enden der Schnittstelle erreicht wird). Nach der Unterbrechung kann das Taktsignal für die HT-Schnittstelle gestoppt werden. Nachfolgend kann die Schnittstelle wieder erneut verbunden werden, um eine Kommunikation zwischen dem Prozessor 14 und der Nordbrücke 16 zu ermöglichen.
-
Andere Schnittstellen können zum Zwecke der Verringerung der Leistungsaufnahme auf andere Weisen deaktiviert werden. Beispielsweise kann eine gemeinsam benutzte Busschnittstelle einfach deaktiviert werden, indem das Taktsignal ausgeblendet wird, das der Busschnittstelle entspricht. Alternativ können die Signale einer Schnittstelle auf einen nicht aktiven Pegel (nicht gesetzten Pegel) gesteuert werden. Es kann ein beliebiger Mechanismus zum Beenden der Übertragung auf der Schnittstelle eingesetzt werden.
-
Des weiteren kann die GPU 30 ein leistungsstarker Prozessor sein, der durch eine relativ große Anzahl an Transistoren eingerichtet ist (beispielsweise in ähnlicher Größenordnung wie die Transistoranzahl in den Prozessorkernen 24a bis 24b). Dadurch, dass die GPU 30 in der Nordbrücke 30 bleibt und die Anzeigesteuerung 28 in die Prozessoreinheit 14 integriert ist, kann eine Leistungseinsparung erreicht werden, wobei dennoch Flexibilität für die GPU 30 erreicht wird, ohne eine Einschränkung durch Energieaspekte/Flächeneinschränkungen in der Prozessoreinheit 14 zu erleiden, ohne dass die Prozessorkerne 24a bis 24b in einigen Ausführungsformen entsprechend beschränkt werden. In noch diversen anderen Ausführungsformen des Systems 10 werden unterschiedliche GPU 30 zusammen mit der gleichen Prozessoreinheit 14 verwendet. In anderen Ausführungsformen ist die GPU 30 eine festgelegte Funktionslogik, eine programmierbare Logikeinrichtung, oder eine Kombination von einem oder beiden und dem zuvor beschriebenen Prozessor.
-
Wenn die Anzeigesteuerung 32 arbeitet (und somit eine Anzeige 20 vorhanden ist, die mit dem System 10 verbunden), ist die Brückenschnittstelle möglicherweise nicht aktiviert, da die Anzeigesteuerung 32 sonst nicht auf den Systemspeicher 12 zugreifen könnte. Wenn jedoch die Anzeigesteuerung 32 verwendet wird, wird das System 10 typischerweise von einer externen Quelle versorgt und somit ist die Batterielebensdauer kein Problem. Zu beispielhaften Zeitenphasen, in denen die Anzeigesteuerung 32 in Verwendung ist, gehört die Zeit, wenn ein Laptop mit einer Andockstation verbunden ist oder in der ein Laptop in einer Präsentation verwendet wird, in der ein Projektor mit dem VGA-Ausgang des Rechners verbunden ist.
-
Die Datenstrukturen 34 können auf beliebiger Weise definiert werden, und können sich je nach Ausführungsform der GPU 30 unterscheiden. Die Datenstrukturen können in einer gewissen Weise eine Anzeigeliste der darzustellenden Objekte enthalten. Beispielsweise enthält in einigen Ausführungsformen die Anzeigeliste Dreiecke, die in dem Bild zu zeichnen sind. Die Tiefe jedes Objekts in dem Bild kann ebenfalls angegeben sein, so dass die GPU 30 bestimmen kann, wann Objekte überlappen, welche Objekte vor anderen Objekten sind (beispielsweise zBuff in 1). Ferner können die Datenstrukturen Oberflächenstrukturen spezifizieren, die auf die Objekte in den diversen Oberflächentexturordnungen anzuwenden sind. Es können viele andere Arten und Weisen zum Beschreiben der Objekte verwendet werden, wozu diverse Ebenen an Komplexität und ein gewünschtes Format in den diversen Ausführungsformen gehören.
-
Die Nordbrücke 16 kann ferner mit einem I/O-Knoten 22 oder I/O-Geräten über eine periphere Schnittstelle verbunden sein. In einer Ausführungsform ist die periphere Schnittstelle ebenfalls eine HT-Schnittstelle. Alternativ kann die periphere Schnittstelle eine beliebige andere Kommunikationsschnittstelle sein, beispielsweise eine periphere Komponentenverbindungsschnittstelle (PCI) in den diversen Formen, eine universelle serielle Busschnittstelle (USB), IEEE 1394 „Firewire”, eine serielle Schnittstelle oder eine parallele Schnittstelle, etc.. Der I/O-Knoten 22 kann mit I/O-Geräten verbunden sein, oder kann eine Brücke zu einer anderen peripheren Schnittstelle bilden, mit der I/O-Geräte verbunden sind. Alternativ können ein oder mehrere I/O-Geräte mit der Nordbrücke 16 über die periphere Schnittstelle verbunden sein.
-
Folglich kann in der Ausführungsform der 1 die Brückenschnittstelle erneut aktiviert werden, wenn entweder eine Bilddatenerzeugung durch die GPU 30 zu erfolgen hat, oder wenn eine I/O-Aktivität auf der peripheren Schnittstelle erfolgt und eine entsprechende Aktivität an die periphere Schnittstelle gerichtet ist. Die periphere Schnittstelle kann in einigen Ausführungsformen auch deaktiviert werden, wenn die Brückschnittstelle deaktiviert wird.
-
Die Prozessorkerne 24a bis 24b können in einer beliebigen Befehlssatzarchitektur eingerichtet sein. Beispielsweise kann in den Prozessorkernen 24a bis 24b die x86-Befehlssatzarchitektur (ebenfalls als IA-32 bezeichnet) eingerichtet sein. Die Prozessorkerne 24a bis 24b können auch die AMD64-Befehlssatzarchitektur enthalten. Zu anderen beispielhaften Befehlssatzarchitekturen gehören die PowerPC-Befehlssatzarchitektur, die ARM-Befehlssatzarchitektur, die SPARC-Befehlssatzarchitektur, die MIPS-Befehlssatzarchitektur, etc. In einigen anschaulichen Ausführungsformen ist lediglich ein Prozessorkern vorgesehen. In anderen Ausführungsformen sind zwei oder mehr Prozessorkerne in einer Mehrfachkern-Konfiguration vorgesehen. Die Brücke 26 ist im Allgemeinen für die Kommunikation zwischen der Brückenschnittstelle, der Anzeigesteuerung 28, den Prozessorkernen 24a bis 24b und dem Systemspeicher 12 verantwortlich. Somit enthält die Brücke 26 Speichersteuerungsfunktionen, um den Systemspeicher 12 zu steuern. Die Speicherschnittstelle kann eine beliebige standardmäßige Speicherschnittstelle enthalten (beispielsweise kann der Systemspeicher 12 synchrone dynamische Speichermodule mit wahlfreiem Zugriff (SDRAM) enthalten und die Speicherschnittstelle kann eine SDRAM-Schnittstelle sein). Es kann eine beliebige Art von SDRAM-Speicher verwendet werden (beispielsweise mit Einzeldatenrate, doppelter Datenrate (DDR), DDR2, etc.). Im Allgemeinen kann eine beliebige Art an Halbleiterspeicher als Systemspeicher 12 in den diversen Ausführungsformen verwendet werden. Beispielsweise können RAMBUS DRAM (RDRAM), statische RAM, etc. eingesetzt werden.
-
In der dargestellten Ausführungsform ist der Systemspeicher 12 eine vereinigte Speicherkonfiguration, in der der Systemspeicher 12 von beiden Graphikeinheiten (beispielsweise die Datenstrukturen 34 und der Bildblockpuffer 36) und von den Prozessorkernen 24a bis 24b gemeinsam benutzt wird. Beispielsweise sind die Prozessorcodierung 38, die von den Prozessorkernen 24a bis 24b ausgeführt wird und die Daten 40, auf die von den Prozessorkernen 24a bis 24b in Reaktion auf das Ausführen der Codierung 38 zugegriffen wird bzw. die durch die Prozessorkerne 24a bis 24b aktualisiert werden, in dem Systemspeicher 12 ebenfalls gespeichert. In einigen Ausführungsformen kann das Integrieren der Anzeigesteuerung 28 in der Prozessoreinheit 14 und das Deaktivieren der Brückenschnittstelle zur Einsparung von Energie die Batteriekosten vermeiden oder deutlich reduzieren, die in einer einheitlichen Speicherstruktur auftreten, wobei dennoch die Verbindung des Systemspeichers 12 zu der Prozessoreinheit 14 beibehalten wird, wodurch Leistungsvorteile für die Prozessorkerne 24a bis 24b erreicht werden.
-
Die Prozessoreinheit 14 umfasst im Allgemeinen eine beliebige Einrichtung, in der zumindest ein Prozessorkern und andere Komponenten enthalten sind. In einer Ausführungsform umfasst die Prozessoreinheit 14 einen einzelnen integrierten Schaltungschip. In anderen Ausführungsformen umfasst die Prozessoreinheit 14 zwei oder mehr Chips in einem Mehrchipmodul, zwei oder mehr diskrete integrierte Schaltungen, die auf einer Leiterplatte verbunden sind, etc. In ähnlicher Weise kann die Nordbrücke 16 eine Brückeneinheit aufweisen, die ein einzelner integrierter Schaltungschip, zwei oder mehr Chips in einem Mehrfachchipmodul, zwei oder mehr diskrete integrierte Schaltungen, die auf einer Leiterplatte verbunden sind, etc. ist.
-
2 ist eine Blockansicht diverser Komponenten in des in 1 gezeigten Systems 10, wobei ein gewisser Datenfluss zwischen den Komponenten für eine Ausführungsform dargestellt ist. Die Prozessorkerne 24a bis 24b lesen die Prozessorcodierung 38 aus dem Systemspeicher 12 aus (Pfeil 50) und lesen und schreiben Daten 40 (Pfeil 52). Des weiteren können die Prozessorkerne 24a bis 24b die Datenstruktur 34 lesen und schreiben, um anzuzeigende Objekte hinzuzufügen/zu löschen. Die GPU 30 kann die Datenstrukturen 34 lesen (Pfeil 54) und die erzeugten Bilddaten in den Bildblockpuffer 36 schreiben (Pfeil 56). Die Anzeigesteuerungen 28 und 32 können den Bildblockpuffer 36 auslesen (Pfeil 58 bis 60). Wie in 2 gezeigt ist, kann die Schnittstelle zu der Nordbrücke 16 deaktiviert werden, wobei dennoch die lokale Anzeige über die Anzeigesteuerung 28 wieder aufgefrischt wird, wenn die Anzeigesteuerung 32 inaktiv ist (was der Fall sein kann für ein mobiles Computersystem, wenn es durch die Batterie gespeist wird) und wenn die GPU 30 keine Bilddaten erzeugt (wie dies während eines großen Teils der Zeit der Fall ist).
-
3 zeigt eine Zustandsmaschine bzw. Automaten mit diversen Zuständen, die im Hinblick auf das in 1 gezeigte System gemäß einer Ausführungsform eingerichtet werden können. Die Zustände sind vertikal angeordnet, wobei im Allgemeinen eine zunehmende Leistungsaufnahme in Richtung nach oben in 3 (Pfeil 76) auftritt. D. h., die Leistungsaufnahme in dem Zustand 70 für eine aktive periphere Schnittstelle ist höher als die Leistungsaufnahme in dem Zustand 72 für eine aktive Brückenschnittstelle, wobei die Leistungsaufnahme höher ist als die Leistungsaufnahme in dem Zustand 74 mit inaktiver Brückenschnittstelle. In einigen Ausführungsformen bleibt die Zustandsmaschine in dem Zustand 70 mit aktiver peripher Schnittstelle, wenn das System 10 Energie von einer externen Quelle erhält.
-
In Zustand 70 mit aktiver peripher Schnittstelle sind sowohl die periphere Schnittstelle als auch die Brückenschnittstelle aktiv. In dem Zustand mit aktiver peripher Schnittstelle 70 kann eine beliebige I/O-Aktivität und/oder eine Bilderzeugungsaktivität auftreten. Wenn keine aktuelle I/O-Aktivität ansteht (mit Ausnahme von Graphikaktivitäten-Bogen 78), geht die Zustandsmaschine in den Zustand 72 mit aktiver Brückschnittstelle über, und das System kann die periphere Schnittstelle deaktivieren. Eine Wiederaufnahme an I/O-Aktivitäten (Bogen 80) kann einen Übergang zurück zu dem Zustand mit peripher Schnittstelle 70 und eine Reaktivierung der Schnittstelle bewirken.
-
Im Zustand 72 mit aktiver Brückschnittstelle kann das System in den Zustand 74 mit inaktiver Brückschnittstelle übergehen und das System kann die Brückenschnittstelle deaktivieren (Bogen 82), wenn die HDMI-Anzeige inaktiv ist (d. h. die Anzeigesteuerung 32 ist inaktiv) und wenn keine Bilddatenerzeugung von der GPU 30 ausgeführt wird. Die Anzeigesteuerung 32 kann ein Freigabebit oder andere Freigabesteuersignale aufweisen, die angeben, ob die Anzeigesteuerung 32 aktiv ist oder nicht. Das System kann erkennen, dass eine Bilddatenerzeugung nicht ausgeführt wird, wenn die GPU 30 untätig ist.
-
In dem Zustand 74 mit inaktiver Brückenschnittstelle kann das System die Brückenschnittstelle reaktivieren und in den Zustand 72 mit aktiver Brückenschnittstelle übergehen, wenn eine Bilddatenerzeugung ausgeführt wird oder die HDMI-Anzeige (Anzeigesteuerung 32) aktiviert wird. Das System kann erkennen, dass eine Bilddatenerzeugung auszuführen ist, wenn die Datenstruktur 34 geändert wird, wenn ein Schreibbefehl für ein gegebenes Register in der Brücke 26 erkannt wird, wenn ein Befehl erkannt wird, der der GPU 30 anzeigt, das Bilddatenerzeugen zu beginnen, etc. Wenn andere (keine Graphikaktivitäten) I/O-Aktivitäten erkannt werden (Bogen 86), können beide Schnittstellen reaktiviert werden und die Zustandsmaschine kann in den Zustand 70 mit aktiver peripher Schnittstelle übergehen.
-
In anderen Ausführungsformen der Zustandsmaschine ist der Zustand 70 mit aktiver peripher Schnittstelle nicht vorhanden. In einigen Ausführungsformen kann die in 3 gezeigte Zustandsmaschine in ein größeres Leistungsverwaltungsschema eingebettet sein (beispielsweise ACPI). In einer Ausführungsform entspricht beispielsweise der Zustand mit inaktiver Brückenschnittstelle 74 einem Untätigkeitszustand in dem ACPI.
-
4 zeigt eine Blockansicht einer weiteren Ausführungsform des Computersystems 10. Das Computersystem 10 in 4 ist ähnlich zu dem in 1 gezeigten Computersystem und ähnliche Elemente sind in 4 und 1 in gleicher Weise bezeichnet. In der Ausführungsform der 4 enthält die Prozessoreinheit 14 ebenfalls einen Speicher 90, der den Bildblockpuffer 36 enthält (anstelle des Systemspeichers 12). In der Ausführungsform aus 4 kann sogar die Speicherschnittstelle deaktiviert werden und die Anzeigesteuerung 28 kann die Anzeige 18 aus dem Speicher 90 auffrischen (beispielsweise in dem in 3 gezeigten Zustand 74). In einigen Ausführungsformen kann eine noch weitergehende Energieeinsparung erreicht werden.
-
Der Speicher 90 kann eine beliebige Art an Halbleiterspeicher aufweisen. Beispielsweise kann der Speicher 90 einen eingebetteten DRAM aufweisen, wenn die Prozessoreinheit 14 eine einzelne integrierte Schaltung ist, oder es kann ein lokaler DRAM in der Prozessoreinheit 14 in anderen Ausführungsformen vorgesehen sein. Der Speicher 90 kann auch ein SRAM sein.
-
In einer Ausführungsform wird der Speicher 90 auf den gleichen Adressenraum wie der Systemspeicher 12 abgebildet. In einer derartigen Ausführungsform kann der Speicher 90 automatisch beschrieben werden, wenn die GPU 30 Schreibaktivitäten zu den Adressen erzeugt, die dem Bildblockpuffer 36 zugeordnet sind. In anderen Ausführungsformen kann der Speicher 90 als ein Cache-Speicher betrieben werden. Der Bildblockpuffer 36 kann ebenfalls in dem Systemspeicher 12 gespeichert sein und der Speicher 90 kann in kohärenter Weise mit dem Systemspeicher 12 beibehalten werden oder kann periodisch aus dem Systemspeicher 12 eingeladen werden, wenn die Bilddatenerzeugung aktiv ausgeführt wird.
-
Industrielle Anwendbarkeit
-
Diese Erfindung ist auf Computersysteme anwendbar.