-
Gebiet der Erfindung
-
Das Gebiet der Erfindung betrifft die Elektronik und insbesondere periodische Kalibrationen während der Selbstauffrischung einer Speichereinrichtung.
-
Hintergrund
-
Rechensysteme beinhalten typischerweise Speichereinrichtungen, die während Perioden, wenn die Speichereinrichtungen nicht aktiv Lese- und Schreiboperationen durchführen, in einen Selbstauffrischungsmodus gesetzt werden können. Wenn die Speichereinrichtungen vom Selbstauffrischungsmodus zurück in einen aktiven Modus übergehen müssen, können sie dies idealerweise schnell durchführen, sodass das Rechensystem nicht für längere Zeiträume warten muss, bevor Lese- und Schreibbefehle zu den Speichereinrichtungen gesendet werden können.
-
Figurenliste
-
Ein besseres Verständnis der vorliegenden Erfindung kann aus der folgenden ausführlichen Beschreibung in Verbindung mit den folgenden Zeichnungen erhalten werden, in denen gilt:
- 1 stellt eine Speichersteuerung und Speichereinrichtung des Stands der Technik dar;
- 2 stellt eine verbesserte Selbstauffrischungssequenz einer Speichereinrichtung dar;
- 3 stellt eine verbesserte Speichersteuerung und Speichereinrichtung zum Implementieren der verbesserten Selbstauffrischungssequenz der Speichereinrichtung von 2 dar;
- 4 stellt ein Selbstauffrischungsverfahren einer Speichereinrichtung dar;
- 5 stellt ein Rechensystem dar.
-
Ausführliche Beschreibung
-
1 stellt ein Speicheruntersystem des Stands der Technik dar, das eine hostseitige Speichersteuerung 101 und eine Speichereinrichtung 102 beinhaltet. Die Speichereinrichtung 102 kann einer einer Anzahl von Speicherchips sein, die auf einem DIMM (Dual In-line Memory Module) (das zur Vereinfachung der Veranschaulichung in 1 nicht dargestellt ist) angeordnet sind. Das DIMM kann an einem Speicherkanal angeschlossen sein, der mit der Speichersteuerung 101 gekoppelt ist. Der Speicherkanal kann ein Doppeldatenraten(DDR)-Speicherkanal mit Charakteristiken, die durch einen JEDEC(Joint Electron Device Engineering Council)-Industriestandard definiert werden, sein (z. B. ein JEDEC-DDR4-Speicherkanal).
-
Die Speichereinrichtung 102 ist durch einen DQ-Draht 106 mit der Speichersteuerung 101 gekoppelt. Der DQ-Draht 106 ist ein bidirektionaler Datendraht, der Schreibinformationen während einer Schreiboperation von der Speichersteuerung 101 zu der Speichereinrichtung 102 transferiert und Leseinformationen während einer Leseoperation von der Speichereinrichtung 102 zu der Speichersteuerung 101 transferiert. Zur Vereinfachung ist nur der einzelne DQ-Draht 106 zwischen der Speichersteuerung 101 und der Speichereinrichtung 102 abgebildet. In der Praxis sind jedoch mehrere DQ-Drähte zwischen der Speichersteuerung 101 und der Speichereinrichtung vorhanden, um einen Datenbus mit einer Bitbreite zu bewirken (z. B. bilden vierundsechzig DQ-Drähte einen 64-Bit-Datenbus zwischen der Speichersteuerung 101 und der Speichereinrichtung 102). Zusätzliche Befehls- und/oder Adressierungssignaldrähte (z. B. ein Befehlsadressen(CA: Command Address)-Bus) sind auch zwischen der Speichersteuerung 101 und der Speichereinrichtung 102 vorhanden, sodass die Speichersteuerung Befehle und Adressen zu der Speichereinrichtung 102 senden kann.
-
Der Endpunkt des DQ-Drahtes 106 in der Speichereinrichtung 102 beinhaltet ein Abschlusswiderstandsnetzwerk 104 und einen Datentreiber 105. Das Widerstandsnetzwerk 104 stellt einen Abschlusswiderstand am Ende des DQ-Drahtes 106 für Schreibdatensignale bereit, die von der Speichersteuerung 101 während einer Schreiboperation zu der Speichereinrichtung 102 gesendet werden. Der Widerstand des Abschlussnetzwerks 105 verhindert oder verringert anderenfalls idealerweise Reflexionen der Schreibdatensignale an der DQ-Draht/Speichereinrichtungs-Schnittstelle. Der Treiber 105 weist eine Quellimpedanz und/oder Ansteuerungsstromstärke auf, die idealerweise Lesedaten von der Speichereinrichtung 102 auf den DQ-Draht ansteuert, die zweckmäßig durch die Speichersteuerung 101 während einer Leseoperation empfangen werden.
-
Sowohl der Widerstand des Abschlussnetzwerks 104 als auch die Quellenimpedanz und/ oder Stromansteuerungsstärke des Treibers 105 sind dazu ausgerichtet, variabel zu sein, sodass sie während des Betriebs der Speichereinrichtung durch eine Kalibrationssteuerung 103 kalibriert werden können (z. B. eine JEDEC-spezifizierte „ZQ“-Kalibration). Hier können der korrekte Widerstand des Abschlussnetzwerks 104 und die korrekte Quellenimpedanz und/oder Stromansteuerungsstärke des Treibers 105 eine Funktion der Temperatur und/oder Versorgungsspannung sein. Es ist wichtig, dass sich diese Parameter im Verlauf des Betriebs der Speichereinrichtung 102 ändern können. Demnach können sich die korrekten Einstellungen für das Abschlussnetzwerk 104 und den Treiber 105 gleichermaßen im Verlauf des Betriebs der Speichereinrichtung 102 ändern.
-
Wenn die Speichersteuerung 101 bestimmt, dass es für die Speichereinrichtung angebracht ist, ihre DQ-Abschlusswiderstandsnetzwerke und/oder ihre DQ-Treiber zu kalibrieren, sendet sie einen Befehl zu der Speichereinrichtung 102 zum Durchführen der Kalibration. Der Befehl wird letztlich durch eine Kalibrationssteuerung 103 in der Speichereinrichtung 102 empfangen, die für die Ausführung der Kalibrationsroutinen verantwortlich ist, die die korrekten Abschlussnetzwerk- und Treibereinstellungen bestimmen. Unglücklicherweise verbraucht die Ausführung der Kalibrationsroutinen jedoch eine nicht unerhebliche Menge an Zeit, die sich auf die Leistungsfähigkeit des Speicheruntersystems auswirkt.
-
Der Einsatz 107 zeigt eine spezielle Einwirkung auf die Speicheruntersystemleistungsfähigkeit. In dem Fall, bei dem die Speichereinrichtung 102 eine DRAM-Speichereinrichtung (DRAM Dynamic Random Access Memory - dynamischer Direktzugriffsspeicher) ist, müssen die Speicherungszellen der Speichereinrichtung 102 periodisch aufgefrischt werden, um ihre Daten zu bewahren. Falls die Speichersteuerung 101 erkennt, dass die Speichereinrichtung 102 (oder das DIMM der Speichereinrichtung oder der Kanal, an den das DIMM der Speichereinrichtung angeschlossen ist) einen längeren inaktiven Zeitraum (ohne Lese- oder Schreibbefehle) durchläuft und/oder im Begriff ist, diesen zu durchlaufen, befiehlt die Speichersteuerung 101 der Speichereinrichtung 102, in einen Selbstauffrischungsmodus einzutreten.
-
Als Reaktion darauf legt die Speichereinrichtung 102 Auffrischungssignale an ihre internen Speicherungszellen an, sodass sie ihre Daten bewahren. Wie in dem Timing-Diagramm des Einsatzes 107 abgebildet, ist die Speichereinrichtung bis zu der Zeit TX aktiv, zu der sie für einen künftigen längeren Zeitraum nicht verwendet werden wird und durch die Speichersteuerung 101 in einen Selbstauffrischungsmodus gesetzt wird. Zu der Zeit TY muss die Speichereinrichtung wieder verwendet werden.
-
Die Speichersteuerung 101 befiehlt daher der Speichereinrichtung 102, aus dem Selbstauffrischungsmodus auszutreten und eine Kalibration ihrer DQ-Widerstandsabschlussnetzwerke und -Treiber durchzuführen (da sich die Temperatur und die Versorgungsspannungen seit der früheren Zeit (bei TX), bei der die Speichereinrichtung 102 ursprünglich in den Selbstauffrischungsmodus eintrat, möglicherweise geändert haben). Nachdem die Speichereinrichtung 102 bestätigt, dass die Kalibration erfolgreich durchgeführt wurde (indem ein Flag in ihrem Modusregisterraum gesetzt wird, das die Speichersteuerung 101 anschließend liest), befiehlt die Speichersteuerung 101 der Speichereinrichtung 102, die neu bestimmten Kalibrationseinstellungen als die formalen Abschlussnetzwerk- und Treibereinstellungen der Speichereinrichtung zu übernehmen. Unglücklicherweise verzögert die langwierige Menge an Zeit, die zur Durchführung der Kalibration verbraucht wird (z. B. 1-6 µs), drastisch die Zeit, zu der die Speichereinrichtung 102 in der Lage ist, von dem Zeitpunkt, zu dem die Entscheidung getroffen wird (TY), dass die Einrichtung 102 vom Selbstauffrischungsmodus zum aktiven Modus übergehen soll, in einen aktiven Modus (TZ) einzutreten.
-
Diese extensive Verzögerung (TZ-TY) beeinträchtigt negativ die Leistungsfähigkeit des gesamten Speicheruntersystems aus Sicht der verschiedenen Systemkomponenten, die sie verwenden (z. B. CPU-Kerne, GPU-Kerne, Anzeigetreiber, Vernetzungsschnittstelle, nichtflüchtige Massenspeicherung usw.). Insbesondere wird der Vorteil stark verringert, dass die Speichersteuerung 101 in der Lage ist, opportunistisch zu veranlassen, dass die Speichereinrichtung 102 z. B. für geringe Zeiträume zwischen aktiven Zeiträumen (z. B. dutzende oder hunderte von Mikrosekunden) in den Selbstauffrischungsmodus eintritt (falls die Speichersteuerung 101 z. B. einen anstehenden Zeitraum einer Lese-/Schreibinaktivität der Speichereinrichtung 102 erkennt), falls zu viel Zeit bei der Durchführung der Kalibration beim Übergang zurück in den aktiven Modus verbraucht wird.
-
2 stellt eine Lösung dar, bei der die Speichereinrichtung 202, anstatt zu warten, bis eine bestätigende Entscheidung getroffen wird, dass der Speicher 202 aus dem Selbstauffrischungsmodus in den aktiven Modus übergeht, bevor die DQ-Drähte neu kalibriert werden, die DQ-Widerstandsnetzwerk- und -Treibereinstellungen während ihres Selbstauffrischungsmodus periodisch neu kalibriert. Wie in 2 zu sehen ist, ist die Speichereinrichtung 202 dazu ausgelegt, die Widerstandsnetzwerkabschluss- und Treibereinstellungen aller TD neu zu kalibrieren. Das heißt, wie in 2 zu sehen ist, findet eine erste Kalibration 1 TD nach dem erstmaligen Eintritt der Speichereinrichtung in eine Selbstauffrischung zu der Zeit TX statt. Eine zweite Kalibration 2 findet TD nach der ersten Kalibration 1 statt, eine dritte Kalibration 3 findet TD nach der zweiten Kalibration 2 statt, eine vierte Kalibration 4 findet TD nach der dritten Kalibration statt usw.
-
Die periodischen Kalibrationen werden fortgesetzt, bis die Speichereinrichtung einen Befehl von der Speichersteuerung empfängt, aus dem Selbstauffrischungsmodus auszutreten (TZ). Insbesondere wurden N Kalibrationen über die Zeitdauer des Selbstauffrischungsmodus durchgeführt. Hier wird angenommen, dass sich die Temperatur und die Versorgungsspannungen des Speicheruntersystems nicht viel geändert haben, seit die N-te Kalibrationen beendet wurde (TQ). Demnach wird angenommen, dass die Widerstandsabschlussnetzwerk- und Treibereinstellungen, die bei der N-ten Kalibration ermittelt wurden, für die Temperatur- und Versorgungsspannungsbedingungen ausreichend sind, die bestehen, wenn der Befehl zum Austreten aus dem Selbstauffrischungsmodus zu der Zeit TZ empfangen wird.
-
Wie weiter unten ausführlicher beschrieben wird, bestätigt die Speichersteuerung 201 bei verschiedenen Ausführungsformen auch, dass die letzte Kalibrationssequenz (die N-te Sequenz) erfolgreich war (z. B. durch Lesen des Zustands eines Flags, das im Modusregisterraum der Speichereinrichtung gesetzt ist), und falls dem so ist, befiehlt sie der Speichereinrichtung, die Einstellungen von der N-ten Kalibrationssequenz als die formalen Widerstandsnetzwerkabschluss- und Treibereinstellungen der Speichereinrichtung zu übernehmen. Nachdem die Einstellungen übernommen worden sind, tritt die Speichereinrichtung in den aktiven Modus ein und kann Lese-/Schreibbefehle von der Speichersteuerung empfangen. Demnach ist die Speichereinrichtung 202 in der Lage, ungefähr zu der Zeit TZ vom Selbstauffrischungsmodus in den aktiven Modus überzugehen, ohne eine Kalibration durchzuführen.
-
3 stellt eine verbesserte Speichersteuerung 301 und Speichereinrichtung 302 dar, die zusammen den verbesserten Ansatz von 2 implementieren können. Wie in 3 zu sehen ist, weist die Speichersteuerung 302 einen Verbesserte-Selbstauffrischung-Steuerlogikschaltkreis 309 auf, der in der Lage ist, einen Selbstauffrischungsbefehl für die Speichereinrichtung 302 zu erzeugen, der auch spezifiziert, dass die Speichereinrichtung periodische Kalibrationen durchführen soll, während sich die Speichereinrichtung im Selbstauffrischungsmodus befindet (Selbstauffrischung mit On-The-Fly-Kalibration). Bei einer Ausführungsform enthält mehr Registerraum der Speichereinrichtung ein Aktivieren/Deaktivieren-Feld für periodische Kalibrationen während des Selbstauffrischungsmodus. Falls das Feld gesetzt ist, wenn die Speichereinrichtung 302 einen Selbstauffrischungsbefehl empfängt, führt die Speichereinrichtung die periodischen Kalibrationen während der anschließenden Selbstauffrischung durch. Wenn die Speichersteuerung 301 der Speichereinrichtung 302 befiehlt, periodische Kalibrationen durchzuführen, wenn sie sich im Selbstauffrischungsmodus befindet, erkennt die Speichersteuerung 301, dass sie der Speichereinrichtung 302 nicht befehlen muss, eine Kalibration als Teil des Übergangs aus der Selbstauffrischung durchzuführen.
-
Die Speichersteuerung 302 befiehlt beispielsweise der Speichereinrichtung 302, aus der Selbstauffrischung auszutreten, bestätigt die durch die letzte Kalibration der Speichereinrichtung erzeugten gültigen Einstellungen (durch Lesen eines Modusregisters der Speichereinrichtung) und befiehlt bei einer derartigen Bestätigung der Speichereinrichtung, die Einstellungen als die Einstellungen zu übernehmen, die während des anstehenden aktiven Modus der Speichereinrichtung zu verwenden sind. Insbesondere befiehlt der Kalibrationssteuerlogikschaltkreis 308 der Speichersteuerung der Speichereinrichtung 302 nicht, eine Kalibration als Teil des Übergangs aus dem Selbstauffrischungsmodus in den aktiven Modus mit periodischer Kalibration durchzuführen.
-
Wie auch in 3 zu sehen ist, beinhaltet die Speichereinrichtung 302 einen Selbstauffrischungssteuerschaltkreis 306 mit einem assoziierten Timer-Schaltkreis 307, der zum periodischen Auslösen der Aktivierung der Kalibrationssteuerung 303 während der Selbstauffrischung verantwortlich ist, sodass die Speichereinrichtung 302 ihre Abschlussnetzwerk- und Treibereinstellungen periodisch neu kalibrieren wird. Der Timer-Schaltkreis 307 kann auf verschiedene Weisen implementiert werden. Gemäß einer ersten Ausführungsform ist der Timer-Schaltkreis 307 mit einem Phasenregelkreis(PLL)-Schaltkreis (PLL: Phase Locked Loop) oder einem Verzögerungsregelkreis(DLL)-Schaltkreis (DLL: Delay Locked Loop) der Speichereinrichtung 302 gekoppelt, der einen internen Takt (z. B. einen Selbstauffrischungstakt) der Speichereinrichtung 302 bestimmt. Ein Zähler ist mit dem PLL-/DLL-Schaltkreis gekoppelt, um die Taktzyklen zu zählen (der Zähler wird z. B. mit jedem Taktzyklus inkrementiert). Jedes Mal, wenn der Zähler einen spezifischen Wert erreicht, wird eine Neukalibration ausgelöst und der Zählerwert wird zurückgesetzt.
-
Gemäß einer zweiten Ausführungsform wird ein mit der Selbstauffrischungssteuerung 306 assoziierter Zähler verwendet, um jede Neukalibrationshandlung auszulösen. Die Selbstauffrischungssteuerung 306 beinhaltet hier zum Beispiel einen oder mehrere Zähler zum Zählen von Auffrischungen (z. B. Pro-Bank-Auffrischungszähler, die jeweils getrennt die Auffrischung einer speziellen Speicherbank zählen, einen globalen Auffrischungszähler, der inkrementiert wird, nachdem jede Speicherbank aufgefrischt worden ist usw.). Der Timer-Schaltkreis 307 ist mit dem einen oder den mehreren Zählern gekoppelt und löst eine Neukalibrationsaktivität aus, wenn der eine oder die mehreren Zähler einen oder mehrere spezifische Werte erreichen. Gemäß einer Ausführungsform wird die Kalibration zwischen internen Auffrischungen ausgelöst und jegliche Auffrischungen, die nach der Kalibration durchgeführt werden, beginnen erst, nachdem die Kalibration beendet ist. Gemäß einer anderen Ausführungsform wird die Kalibration zwischen internen Auffrischungen ausgelöst und wird dann gleichzeitig mit Auffrischungen ausgeführt, die nach dem Auslösen der Kalibration durchgeführt werden.
-
Gemäß weiteren Ausführungsformen werden die Abschlussnetzwerk- und Treibereinstellungen, die während jeder Selbstauffrischungskalibrationssequenz bestimmt werden, intern durch den Selbstauffrischungssteuerschaltkreis 306 gehalten. Demnach werden diese Register mit jeder neuen Kalibration aktualisiert, die während der Selbstauffrischung durchgeführt wird. Nach dem Übergang vom Selbstauffrischungsmodus zu aktiv werden die Einstellungen, die sich in den Registern des Steuerschaltkreises befinden, in den formalen Netzwerk-und-Treibereinstellungs-Steuerregisterraum der Speichereinrichtung als Reaktion auf einen bestätigenden Befehl durch die Speichersteuerung 301, dies durchzuführen, übernommen und werden danach durch die Speichereinrichtung 302 im aktiven Modus verwendet.
-
Bei einer weiteren Ausführungsform dieses Ansatzes setzt die Speichereinrichtung jedes Mal, wenn sie eine Kalibration erfolgreich durchführt, ein Flag in ihrem Modusregisterraum. Die Speichersteuerung ist dann in der Lage, den Zustand des Flags zu prüfen, um zu bestätigen, dass die letzte Kalibration erfolgreich war. Falls dem so ist, erkennt die Speichersteuerung 301, dass sie aus dem Selbstauffrischungsmodus austreten kann, ohne einen Kalibrationsbefehl für die Speichereinrichtung 302 zu erstellen. Falls die Speichereinrichtung nicht sieht, dass das Flag als bestätigend gesetzt ist, erkennt die Speichersteuerung 301, dass sie einen Kalibrationsbefehl als Teil des Übergangs aus dem Selbstauffrischungsmodus in den aktiven Modus erstellen sollte. Dieses letztgenannte Szenario ist möglich, falls der gesamte Selbstauffrischungszeitraum geringer als TD ist.
-
Bei weiteren Ausführungsformen kann der TD-Zeitraum in der Speichereinrichtung konfigurierbar sein. Modusregistereinstellungen der Speichereinrichtung können zum Beispiel unterschiedliche TD-Einstellungen in der Speichereinrichtung gestatten. Alternativ dazu kann der TD-Parameter fest in der Speichereinrichtung 302 konzipiert sein.
-
Bei verschiedenen Ausführungsformen kann die Speichereinrichtung ferner autonomer als oben beschrieben konzipiert sein und muss nicht bestätigend durch die Speichersteuerung befehligt werden, um in den Selbstauffrischungsmodus einzutreten. Das heißt, die Speichereinrichtung kann ihre eigene interne Logik aufweisen, die die Speichereinrichtung in den Selbstauffrischungsmodus setzt, ohne, dass ihr durch die Speichersteuerung bestätigend gesagt wird, dies zu tun. In diesem Fall kann ein Modusregister der Speichereinrichtung durch die Speichersteuerung gesetzt werden, dass die Speichereinrichtung Kalibrationen während eines Selbstauffrischungsmodus, in den sie selbständig eintritt, periodisch durchführen soll, wie oben beschrieben.
-
Es ist anzumerken, dass der Steuerschaltkreis 303, 306, 308, 309 mit verschiedenen Formen von Logikschaltkreisen implementiert werden kann, wie etwa einem benutzerspezifischen festverdrahteten Logikschaltkreis (z. B. festverdrahteten Zustandsmaschinen usw.), einem programmierbaren Logikschaltkreis (z. B. einem feldprogrammierbaren Gate-Array (FPGA), einem programmierbaren Logik-Array (PLA) usw.), einem Logikschaltkreis, der eine Form von Programmcode ausführt (z. B. einem eingebetteten Prozessor, einer eingebetteten Steuerung usw.) oder einer beliebigen Kombination von diesen.
-
4 stellt ein oben beschriebenes Verfahren dar. Das Verfahren beinhaltet Senden eines Befehls zu einer Speichereinrichtung, in einen Selbstauffrischungsmodus mit periodischen Kalibrationen einzutreten 401. Die Speichereinrichtung frischt sich dann selbst mit periodischen Selbstauffrischungen auf, die während der Selbstauffrischung durchgeführt werden 402. Nachdem die Speichereinrichtung aus der Selbstauffrischung in einen aktiven Modus übergeht 403, tritt die Speichereinrichtung in den aktiven Modus ein, ohne eine Kalibration durchzuführen 404.
-
Es ist vorstellbar, dass andere Ausführungsformen/Implementierungen bestehen können, bei denen mehrere Kalibrationen durch die Speichereinrichtung durchgeführt werden, während sich die Speichereinrichtung im Selbstauffrischungsmodus befindet, aber die Kalibrationen werden nicht periodisch durchgeführt (z. B. werden sie mit zufälligeren Intervallen durchgeführt).
-
Die oben beschriebenen Ansätze können durch einen Industriestandard spezifiziert werden, wie etwa eine JEDEC-Industriestandardspezifikation (z. B. eine DDR5-JEDEC-Industri estandardspezifikation).
-
5 stellt eine beispielhafte Abbildung eines Rechensystems 500 bereit (z. B. eines Smartphones, eines Tablet-Computers, eines Laptop-Computers, eines Desktop-Computers, eines Servercomputers usw.). Wie in 5 zu sehen ist, kann das grundlegende Rechensystem 500 eine Zentralverarbeitungseinheit 501 (die z. B. mehrere Allgemeinzweck-Verarbeitungskerne 515_1 bis 515_X beinhalten kann) und eine Hauptspeichersteuerung 517, die auf einem Mehrkernprozessor oder Anwendungsprozessor angeordnet ist, einen Systemspeicher 502, eine Anzeige 503 (z. B. einen Touchscreen, einen Flachbildschirm), eine lokale verdrahtete Punkt-zu-Punkt-Verbindungs(z. B. USB)-Schnittstelle 504, verschiedene Netzwerk-E/A-Funktionen 505 (wie etwa eine Ethernet-Schnittstelle und/oder ein Mobilfunkmodemuntersystem), eine drahtlose Lokalnetz(z. B. WiFi)-Schnittstelle 506, eine drahtlose Punkt-zu-Punkt-Verbindungs(z. B. Bluetooth)-Schnittstelle 507 und eine Schnittstelle 508 für ein globales Positionierungssystem, verschiedene Sensoren 509_1 bis 509_Y, eine oder mehrere Kameras 510, eine Batterie 511, eine Leistungsverwaltungssteuereinheit 512, einen Lautsprecher und ein Mikrofon 513 und einen Audiocodierer/-decodierer 514 beinhalten.
-
Ein Anwendungsprozessor oder Mehrkernprozessor 550 kann einen oder mehrere Allgemeinzweck-Verarbeitungskerne 515 in seiner CPU 501, eine oder mehrere graphische Verarbeitungseinheiten 516, eine Speicherverwaltungsfunktion 517 (z. B. eine Speichersteuerung) und eine E/A-Steuerfunktion 518 beinhalten. Die Allgemeinzweck-Verarbeitungskerne 515 führen typischerweise das Betriebssystem und die Anwendungssoftware des Rechensystems aus. Die Grafikverarbeitungseinheit 516 führt typischerweise grafikintensive Funktionen aus, um z. B. Grafikinformationen zu erzeugen, die auf der Anzeige 503 dargestellt werden. Die Speichersteuerfunktion 517 bildet eine Schnittstelle mit dem Systemspeicher 502, um Daten in den/aus dem Systemspeicher 502 zu schreiben/zu lesen. Die Speichersteuerung 517 und der Systemspeicher (oder eine andere Speichersteuerung und ein anderer Speicher) können periodische Auffrischungen der Widerstandsnetzwerkabschluss- und Treibereinstellungen der Speichereinrichtung während einer Selbstauffrischung implementieren, wie oben beschrieben. Die Leistungsverwaltungssteuereinheit 512 steuert im Allgemeinen den Leistungsverbrauch des Systems 500.
-
Sowohl die Touchscreen-Anzeige 503, die Kommunikationsschnittstellen 504-507, die GPS-Schnittstelle 508, die Sensoren 509, die Kamera(s) 510 als auch der Lautsprecher-/Mikrofon-Codec 513, 514 können als verschiedene Formen von E/A (Eingabe und/oder Ausgabe) bezüglich des gesamten Rechensystems angesehen werden, einschließlich, wenn zweckmäßig, auch als eine integrierte Peripherieeinrichtung (z. B. die eine oder die mehreren Kameras 510). In Abhängigkeit von der Implementierung können verschiedene dieser E/A-Komponenten auf dem Anwendungsprozessor/Mehrkernprozessor 550 integriert sein oder können sich außerhalb des Dies oder außerhalb des Gehäuses des Anwendungsprozessors/Mehrkernprozessors 550 befinden. Das Rechensystem beinhaltet auch eine nichtflüchtige Speicherung 520, die die Massenspeicherungskomponente des Systems sein kann (z. B. eine Festplatte, ein Halbleiterlaufwerk usw.).
-
Ausführungsformen der Erfindung können verschiedene Prozesse beinhalten, wie oben dargelegt. Die Prozesse können in maschinenausführbaren Anweisungen umgesetzt sein. Die Anweisungen können verwendet werden, um zu bewirken, dass ein Allgemeinzweck- oder Spezialzweckprozessor gewisse Prozesse durchführt. Alternativ dazu können diese Prozesse durch spezifische/benutzerspezifische Hardwarekomponenten, die einen festverdrahteten Logikschaltkreis oder programmierbaren Logikschaltkreis (z. B. ein feldprogrammierbares Gate-Array (FPGA), eine programmierbare Logikeinrichtung (PLD: Programmable Logic Device)) zum Durchführen der Prozesse enthalten, oder durch eine beliebige Kombination programmierter Computerkomponenten und benutzerspezifischer Hardwarekomponenten durchgeführt werden.
-
Elemente der vorliegenden Erfindung können auch als ein maschinenlesbares Medium zum Speichern der maschinenausführbaren Anweisungen bereitgestellt sein. Das maschinenlesbare Medium kann unter anderem Disketten, optische Platten, CD-ROMs und magnetooptische Platten, FLASH-Speicher, ROMs, RAMs, EPROMs, EEPROMs, magnetische oder optische Karten, Ausbreitungsmedien oder einen anderen Typ von Medien/maschinenlesbarem Medium beinhalten, die sich zum Speichern von elektronischen Anweisungen eignen. Die vorliegende Erfindung kann zum Beispiel als ein Computerprogramm heruntergeladen werden, das von einem Ferncomputer (z. B. einem Server) zu einem anfordernden Computer (z. B. einem Client) mittels Datensignalen, die in einer Trägerwelle oder einem anderen Ausbreitungsmedium umgesetzt sind, über eine Kommunikationsverbindung (z. B. ein Modem oder eine Netzwerkverbindung) transferiert werden.
-
In der vorstehenden Spezifikation ist die Erfindung unter Bezugnahme auf spezifische Ausführungsbeispiele davon beschrieben worden. Es wird jedoch ersichtlich werden, dass verschiedene Modifikationen und Änderungen daran vorgenommen werden können, ohne vom weiteren Gedanken und Schutzumfang der Erfindung abzuweichen, wie in den angehängten Ansprüchen dargelegt. Die Spezifikation und die Zeichnungen sind dementsprechend im veranschaulichenden anstatt beschränkendem Sinne anzusehen.