-
VERWANDTE ANMELDUNG
-
Diese Anmeldung beansprucht die Vorteile der vorläufigen US-Anmeldung Nr.
63/195,202 , die am 1. Juni 2021 eingereicht wurde und hiermit durch Bezugnahme in vollem Umfang aufgenommen ist.
-
TECHNISCHES GEBIET
-
Die vorliegende Offenbarung bezieht sich allgemein auf die Stromverwaltung in integrierten Schaltungsvorrichtungen, und insbesondere bezieht sich die vorliegende Offenbarung in einer oder mehreren Ausführungsformen auf Verfahren und Geräte, die eine vorausschauende Spitzenstromüberwachung und mehrere Strombedarfsbudgets bei der Stromverwaltung nutzen.
-
STAND DER TECHNIK
-
Speicher (z. B. Speichervorrichtungen) werden typischerweise als interne, halbleitende, integrierte Schaltkreisvorrichtungen in Computern oder anderen elektronischen Vorrichtungen bereitgestellt. Es gibt viele verschiedene Arten von Speicher, darunter RAM (Random Access Memory), ROM (Read Only Memory), DRAM (Dynamic Random Access Memory), SDRAM (Synchronous Dynamic Random Access Memory) und Flash-Speicher.
-
Der Flash-Speicher hat sich zu einer beliebten Quelle von nichtflüchtigem Speicher für eine breite Palette elektronischer Anwendungen entwickelt. Flash-Speicher verwenden typischerweise eine Ein-Transistor-Speicherzelle, die hohe Speicherdichten, hohe Zuverlässigkeit und geringen Stromverbrauch ermöglicht. Änderungen der Schwellenspannung (Vt) der Speicherzellen durch Programmierung (die oft als Schreiben bezeichnet wird) von Ladungsspeicherstrukturen (z. B. Floating Gates oder Ladungsfallen) oder andere physikalische Phänomene (z. B. Phasenänderung oder Polarisation) bestimmen den Datenzustand (z. B. Datenwert) jeder Speicherzelle. Häufige Verwendungen für Flash-Speicher und andere nichtflüchtige Speicher sind PCs, Personal Digital Assistants (PDAs), Digitalkameras, digitale Mediaplayer, digitale Rekorder, Spiele, Geräte, Fahrzeuge, drahtlose Vorrichtungen, Mobiltelefone und Wechselspeichermodule, und die Verwendungsmöglichkeiten für nichtflüchtige Speicher werden weiter ausgebaut.
-
Ein NAND-Flash-Speicher ist ein gängiger Typ von Flash-Speichervorrichtung, die so wegen der logischen Form genannt wird, in der die grundlegende Speicherzellenkonfiguration angeordnet ist. Typischerweise ist das Array von Speicherzellen für NAND-Flash-Speicher so angeordnet, dass das Steuergate jeder Speicherzelle einer Zeile des Arrays miteinander verbunden ist, um eine Zugriffsleitung, wie etwa eine Wortleitung, zu bilden. Die Spalten des Arrays beinhalten Strings (häufig als NAND-Strings bezeichnet) von Speicherzellen, die zwischen einem Paar Auswahlgates, z. B. einem Source-Selektionstransistor und einem Drain-Selektionstransistor, in Reihe geschaltet sind. Jeder Source-Selektionstransistor könnte mit einer Source verbunden sein, während jeder Drain-Selektionstransistor mit einer Datenleitung, z. B. einer Spaltenbitleitung, verbunden sein könnte. Variationen, die mehr als ein Selektionsgate zwischen einem String von Speicherzellen und der Quelle und/oder zwischen dem String von Speicherzellen und der Datenleitung verwenden, sind bekannt.
-
Der Stromverbrauch ist oft ein wichtiger Faktor bei der Entwicklung und Nutzung von Speichervorrichtungen. Es könnten Probleme auftreten, wenn mehrere Speichervorrichtungen gleichzeitig betrieben werden. Solche Probleme könnten das Überschreiten der Stromverbrauchsspezifikationen beinhalten und/oder sich negativ auf die Servicequalität auswirken.
-
Figurenliste
-
- 1 ist ein vereinfachtes Blockdiagramm eines Speichers in Kommunikation mit einem Prozessor als Teil eines elektronischen Systems gemäß einer Ausführungsform.
- 2 ist ein vereinfachtes Blockdiagramm eines Speichermoduls in Kommunikation mit einem Host als Teil eines elektronischen Systems gemäß einer anderen Ausführungsform.
- 3A-3D sind Seitenansichten von Darstellungen von Mehrchip-Paketen gemäß verschiedenen Ausführungsformen.
- 4A-4D sind schematische Darstellungen von Mehrchip-Paketen gemäß verschiedenen Ausführungsformen.
- 5 ist ein konzeptionelles Zeitablaufdiagramm von Signalen und Registerinhalten gemäß einer Ausführungsform.
- 6 ist ein Zeitablaufdiagramm, das Takt- und andere Signale gemäß einer Ausführungsform zeigt.
- 7 ist ein Flussdiagramm eines Verfahrens zum Betrieb eines Chips gemäß einer Ausführungsform.
- 8 ist ein Flussdiagramm eines Verfahrens zum Betrieb einer Vielzahl von Chips gemäß einer Ausführungsform.
- 9A-9B sind Flussdiagramme von Abschnitten von Verfahren zum Betrieb eines Chips gemäß den Ausführungsformen.
- 10A-10C sind Flussdiagramme von Abschnitten von Verfahren zum Betrieb eines Chips in Übereinstimmung mit Ausführungsformen.
-
DETAILLIERTE BESCHREIBUNG
-
In der vorangehenden detaillierten Beschreibung wird auf die beigefügten Zeichnungen verwiesen, die einen Teil des Dokuments bilden und in denen zur Veranschaulichung spezifische Ausführungsformen dargestellt sind. In den Zeichnungen beschreiben gleiche Bezugsziffern im Wesentlichen ähnliche Komponenten in den verschiedenen Ansichten. Andere Ausführungsformen könnten verwendet werden, und strukturelle, logische und elektrische Änderungen könnten vorgenommen werden, ohne dass der Anwendungsbereich der vorliegenden Offenbarung verlassen wird. Die folgende detaillierte Beschreibung ist daher nicht in einem einschränkenden Sinne zu verstehen.
-
Der Begriff „leitfähig“, wie er in dieser Schrift verwendet wird, sowie seine verschiedenen verwandten Formen, z. B. leiten, leitend, Leitung, Leitfähigkeit usw., beziehen sich auf elektrisch leitfähig, sofern aus dem Kontext nichts anderes ersichtlich ist. In ähnlicher Weise bezieht sich der Begriff „verbindend“, wie er in dieser Schrift verwendet wird, sowie seine verschiedenen verwandten Formen, z. B. verbinden, verbunden, Verbindung usw., auf elektrisches Verbinden durch einen leitfähigen Pfad, sofern aus dem Kontext nichts anderes ersichtlich ist.
-
Wie hierin verwendet, bedeutet das gleichzeitige Ausführen mehrerer Handlungen, dass jede dieser Handlungen für einen jeweiligen Zeitraum durchgeführt wird und jeder dieser jeweiligen Zeiträume teilweise oder vollständig mit jedem der verbleibenden jeweiligen Zeiträume überlappt. Mit anderen Worten, diese Handlungen werden mindestens für einen gewissen Zeitraum gleichzeitig ausgeführt.
-
Es wird in dieser Schrift anerkannt, dass selbst bei beabsichtigter Gleichheit der Werte Schwankungen und Ungenauigkeiten bei der industriellen Verarbeitung und beim Betrieb zu Abweichungen von den beabsichtigten Werten führen könnten. Diese Schwankungen und Ungenauigkeiten hängen im Allgemeinen von der Technologie ab, die bei der Herstellung und dem Betrieb der integrierten Schaltungsvorrichtung verwendet wird. Wenn also Werte gleich sein sollen, werden diese Werte unabhängig von den daraus resultierenden Werten als gleich angesehen.
-
NAND-Speicher wird häufig in verwalteten NAND(MNAND)- und Solid-State Drive(SSD)-Systemen verwendet. Gängige Beispiele für MNAND könnten eingebettete MultiMediaCard (eMMC), wie sie in SSD-Systemen üblich sein könnten, eingebettete USB (eUSB), wie sie in industriellen Anwendungen üblich sein könnten, und Universal Flash Storage, wie sie in Digitalkameras, Mobiltelefonen und anderen Vorrichtungen der Unterhaltungselektronik üblich sein könnten, beinhalten. Die kapazitive Belastung von dreidimensionalem NAND ist im Allgemeinen groß und könnte mit fortschreitender Prozessskalierung weiter zunehmen. Verschiedene Zugriffsleitungen, Datenleitungen und Spannungsknoten müssen möglicherweise während Lese- (z. B. Lese- oder Verifizierungs-), Programmier- und Löschoperationen sehr schnell geladen oder entladen werden, damit die Zugriffsoperationen auf das Speicherarray die Leistungsspezifikationen erfüllen können, die häufig erforderlich sind, um die Ziele für den Datendurchsatz zu erreichen, wie sie durch Kundenanforderungen oder Industriestandards vorgegeben werden könnten. Für sequentielles Lesen oder Programmieren werden häufig Mehrebenenoperationen verwendet, um den Systemdurchsatz zu erhöhen. Infolgedessen kann ein typischer NAND-Speicher einen Spitzenstromverbrauch von fast 200 mA aufweisen, was das Vier- bis Fünffache der durchschnittlichen Stromamplitude sein könnte. Bei einer typischen Marktanforderung von 400-1000 mA an Gesamtstrombedarfsbudget für ein MNAND-System kann es schwierig werden, mehr als vier NAND-Speicher gleichzeitig zu betreiben.
-
Eine Vielzahl von Techniken wurde eingesetzt, um den Stromverbrauch von Speichersystemen, die mehrere Vorrichtungen enthalten, zu verwalten, von denen sich viele auf einen Speichercontroller stützen, um die Aktivität der Speichervorrichtungen gegeneinander zu versetzen und zu vermeiden, dass Abschnitte mit hohem Stromverbrauch von Zugriffsoperationen gleichzeitig in mehr als einer Speichervorrichtung ausgeführt werden. Verschiedene hierin beschriebene Ausführungsformen erleichtern die Stromverwaltung zwischen mehreren Chips (z. B. Speicher), indem ein bestimmter Chip auf seine erwartete Spitzenstromstärke achtet und eine Entscheidung darüber trifft, wie in Abhängigkeit von einem ersten Strombedarfsbudget (CBMain) für eine Hauptgruppierung von Chips, die den bestimmten Chip enthält, und von einem zweiten Strombedarfsbudget (CBSub), das geringer ist als das erste Strombedarfsbudget, für eine Teilmenge der Hauptgruppierung von Chips, die ebenfalls den bestimmten Chip enthält, zu verfahren ist. Die Gruppierung von Chips könnte eine Vielzahl von Teilsätzen von Chips enthalten. Jeder der Teilsätze von Chips könnte sich gegenseitig von jeder verbleibenden Teilmenge von Chips ausschließen, und eine Vereinigung der Teilsätze von Chips könnte alle Chips der Gruppierung von Chips beinhalten.
-
1 ist ein vereinfachtes Blockdiagramm eines ersten Geräts in Form eines Speichers (z. B. einer Speichervorrichtung) 100, das mit einem zweiten Gerät in Form eines Prozessors 130 als Teil eines dritten Geräts in Form eines elektronischen Systems kommuniziert, gemäß einer Ausführungsform. Einige Beispiele für elektronische Systeme umfassen Personalcomputer, Personal Digital Assistants (PDAs), Digitalkameras, digitale Mediaplayer, digitale Rekorder, Spiele, Geräte, Fahrzeuge, drahtlose Vorrichtungen, Mobiltelefone und dergleichen. Der Prozessor 130, z. B. ein Controller außerhalb der Speichervorrichtung 100, könnte ein Speicher-Controller oder eine andere externe Hostvorrichtung sein.
-
Die Speichervorrichtung 100 beinhaltet ein Array von Speicherzellen 104, die logisch in Zeilen und Spalten angeordnet sein könnten. Speicherzellen einer logischen Zeile sind typischerweise mit derselben Zugriffsleitung (üblicherweise als Wortleitung bezeichnet) verbunden, während Speicherzellen einer logischen Spalte typischerweise selektiv mit derselben Datenleitung (üblicherweise als Bitleitung bezeichnet) verbunden sind. Eine einzelne Zugriffsleitung könnte mehr als einer logischen Zeile von Speicherzellen zugeordnet sein und eine einzelne Datenleitung könnte mehr als einer logischen Spalte zugeordnet sein. Speicherzellen (in 1 nicht gezeigt) von mindestens einem Abschnitt des Arrays von Speicherzellen 104 können auf einen von mindestens zwei Zieldatenzuständen programmiert werden.
-
Eine Zeilendecodierungsschaltung 108 und eine Spaltendecodierungsschaltung 110 sind bereitgestellt, um Adressensignale zu decodieren. Adressensignale werden empfangen und decodiert, um auf das Array von Speicherzellen 104 zuzugreifen. Die Speichervorrichtung 100 beinhaltet auch eine Eingabe-/Ausgabe-(E/A)-Steuerschaltung 112, um die Eingabe von Befehlen, Adressen und Daten in die Speichervorrichtung 100 sowie die Ausgabe von Daten und Statusinformationen von der Speichervorrichtung 100 zu verwalten. Ein Adressregister 114 steht mit der E/A-Steuerschaltung 112 und der Zeilendecodierungsschaltung 108 und der Spaltendecodierungsschaltung 110 in Verbindung, um die Adressensignale vor dem Decodieren zwischenzuspeichern. Ein Befehlsregister 124 steht mit der E/A-Steuerschaltung 112 und der Steuerlogik 116 in Kommunikation, um eingehende Befehle zwischenzuspeichern.
-
Ein Controller (z.B. die Steuerlogik 116 innerhalb der Speichervorrichtung 100) steuert den Zugriff auf das Array von Speicherzellen 104 als Reaktion auf die Befehle und könnte Statusinformationen für den externen Prozessor 130 erzeugen, d. h. die Steuerlogik 116 ist so konfiguriert, dass sie Zugriffsvorgänge (z. B. Abtastvorgänge [die Lesevorgänge und Verifizierungsvorgänge beinhalten könnten], Programmiervorgänge und/oder Löschvorgänge) auf das Array von Speicherzellen 104 durchführt. Die Steuerlogik 116 steht in Kommunikation mit der Zeilendecodierungsschaltung 108 und der Spaltendecodierungsschaltung 110, um die Zeilendecodierungsschaltung 108 und die Spaltendecodierungsschaltung 110 in Abhängigkeit von den Adressen zu steuern. Die Steuerlogik 116 könnte Anweisungsregister 126 beinhalten, die einen computerverwendbaren Speicher zum Speichern computerlesbarer Befehle darstellen könnten. Bei einigen Ausführungsformen könnten die Anweisungsregister 126 Firmware darstellen. Alternativ dazu könnten die Anweisungsregister 126 eine Gruppierung von Speicherzellen, z. B. reservierte Blöcke von Speicherzellen, des Arrays von Speicherzellen 104 darstellen.
-
Die Steuerlogik 116 könnte auch mit einem Cache-Register 118 in Kommunikation stehen. Das Cache-Register 118 speichert eingehende bzw. ausgehende Daten gemäß den Anweisungen der Steuerlogik 116, um Daten vorübergehend zu speichern, während das Array von Speicherzellen 104 mit dem Schreiben bzw. Lesen anderer Daten beschäftigt ist. Während eines Programmiervorgangs (z. B. eines Schreibvorgangs) könnten Daten vom Cache-Register 118 an das Datenregister 120 zur Übertragung an das Array von Speicherzellen 104 weitergeleitet werden; dann könnten neue Daten im Cache-Register 118 von der E/A-Steuerschaltung 112 zwischengespeichert werden. Während eines Lesevorgangs könnten Daten aus dem Cache-Register 118 an die E/A-Steuerschaltung 112 zur Ausgabe an den externen Prozessor 130 weitergeleitet werden; dann könnten neue Daten aus dem Datenregister 120 an das Cache-Register 118 weitergeleitet werden. Das Cache-Register 118 und/oder das Datenregister 120 könnten einen Seitenpuffer der Speichervorrichtung 100 bilden (z. B. einen Teil davon bilden). Ein Seitenpuffer könnte ferner (in 1 nicht gezeigte) Abtastvorrichtungen umfassen, um einen Datenzustand einer Speicherzelle des Arrays von Speicherzellen 104 zu erfassen, z. B. durch Abtasten eines Zustands einer mit dieser Speicherzelle verbundenen Datenleitung. Ein Statusregister 122 könnte mit der E/A-Steuerschaltung 112 und der Steuerlogik 116 in Kommunikation stehen, um die Statusinformationen zur Ausgabe an den Prozessor 130 zu speichern.
-
Die Speichervorrichtung 100 empfängt Steuersignale an der Steuerlogik 116 vom Prozessor 130 über eine Steuerverbindung 132. Zu den Steuersignalen könnten eine Chipfreigabe CE#, eine Befehlszwischenspeicherfreigabe CLE, eine Adresszwischenspeicherfreigabe ALE, eine Schreibfreigabe WE#, eine Lesefreigabe RE# und ein Schreibschutz WP# gehören. Zusätzliche oder alternative Steuersignale (nicht gezeigt) könnten je nach Art der Speichervorrichtung 100 ferner über die Steuerverbindung 132 empfangen werden. Die Speichervorrichtung 100 empfängt Befehlssignale (die Befehle darstellen), Adressensignale (die Adressen darstellen) und Datensignale (die Daten darstellen) vom Prozessor 130 über einen gemultiplexten Eingabe/Ausgabe-(E/A)-Bus 134 und gibt Daten an den Prozessor 130' über den E/A-Bus 134 aus.
-
Die Befehle könnten beispielsweise über Ein-/Ausgabe(E/A)-Pins [7:0] des E/A-Busses 134 an der E/A-Steuerschaltung 112 empfangen und dann in das Befehlsregister 124 geschrieben werden. Die Adressen könnten über Ein-/Ausgabe(E/A)-Pins [7:0] des E/A-Busses 134 an der E/A-Steuerschaltung 112 empfangen und dann in das Adressregister 114 geschrieben werden. Die Daten könnten über die Eingabe/Ausgabe (E/A)-Pins [7:0] für eine 8-Bit-Vorrichtung oder die Eingabe/Ausgabe (E/A)-Pins [15:0] für eine 16-Bit-Vorrichtung an der E/A-Steuerschaltung 112 empfangen und dann in das Cache-Register 118 geschrieben werden. Die Daten könnten anschließend in das Datenregister 120 geschrieben werden, um das Array von Speicherzellen 104 zu programmieren. Bei einer anderen Ausführungsform könnte das Cache-Register 118 weggelassen werden und die Daten könnten direkt in das Datenregister 120 geschrieben werden. Daten könnten auch über Ein-/Ausgabe-(E/A)-Pins [7:0] für eine 8-Bit-Vorrichtung oder über Ein-/Ausgabe-(E/A)-Pins [15:0] für eine 16-Bit-Vorrichtung ausgegeben werden. Obwohl auf E/A-Pins Bezug genommen werden könnte, könnten sie alle leitfähigen Knoten beinhalten, die eine elektrische Verbindung mit der Speichervorrichtung 100 durch eine externe Vorrichtung (z. B. Prozessor 130) bereitstellen, wie etwa leitfähige Pads oder leitfähige Bumps, wie sie üblicherweise verwendet werden.
-
Die Speichervorrichtung 100 und/oder der Prozessor 130 könnten von einem Netzteil 136 mit Strom versorgt werden. Die Stromversorgung 136 könnte eine beliebige Kombination von Schaltungen zum Bereitstellen von Strom für die Speichervorrichtung 100 und/oder den Prozessor 130 darstellen. Zum Beispiel könnte die Stromversorgung 136 eine eigenständige Stromversorgung (z. B. eine Batterie), eine netzgebundene Stromversorgung (z. B. ein in Desktop-Computern und Servern gebräuchliches Schaltnetzteil oder ein für tragbare elektronische Vorrichtungen gebräuchliches Netzteil) oder eine Kombination aus beidem beinhalten. Strom wird typischerweise von der Stromversorgung 136 über zwei oder mehr Spannungsversorgungsknoten 137 bezogen, wie etwa einen Versorgungsspannungsknoten (z. B. Vcc oder Vccq) und einen Referenzspannungsknoten (z. B. Vss oder Vssq, wie Masse oder 0 V). Es ist nicht ungewöhnlich, dass eine Stromversorgung 136 mehr als zwei Spannungsversorgungsknoten 137 bereitstellt. Der Einfachheit halber ist die Energieverteilung von den Spannungsversorgungsknoten 137 zu Komponenten innerhalb der Speichervorrichtung 100 nicht dargestellt.
-
Dem Fachmann ist ersichtlich, dass zusätzliche Schaltungen und Signale bereitgestellt werden können und dass die Speichervorrichtung 100 der 1 vereinfacht wurde. Es sollte anerkannt werden, dass die Funktionalität der verschiedenen Blockkomponenten, die unter Bezugnahme auf 1 beschrieben werden, nicht notwendigerweise auf verschiedene Komponenten oder Abschnitte einer integrierten Schaltungsvorrichtung aufgeteilt werden können. Zum Beispiel könnte eine einzelne Komponente oder ein einzelner Komponentenabschnitt einer integrierten Schaltungsvorrichtung angepasst werden, um die Funktionalität von mehr als einer Blockkomponente aus 1 auszuführen. Alternativ könnten eine oder mehrere Komponenten oder Komponentenabschnitte einer integrierten Schaltungsvorrichtung kombiniert werden, um die Funktionalität einer einzelnen Blockkomponente aus 1 auszuführen.
-
Darüber hinaus wird, während die spezifischen E/A-Pins in Übereinstimmung mit den gängigen Konventionen für den Empfang und die Ausgabe der verschiedenen Signale beschrieben sind, darauf hingewiesen, dass andere Kombinationen oder Anzahlen von E/A-Pins (oder andere E/A-Knotenstrukturen) in den verschiedenen Ausführungsformen verwendet werden könnten.
-
Ein gegebener Prozessor 130 könnte mit einer oder mehreren Speichervorrichtungen 100, z. B. Chips, kommunizieren. 2 ist ein vereinfachtes Blockdiagramm eines Geräts in Form eines Speichermoduls 201 in Kommunikation mit einem Host 240 als Teil eines elektronischen Systems gemäß einer anderen Ausführungsform. Die Speichervorrichtungen 100 und der Prozessor 130 könnten unter Bezugnahme auf 1 beschrieben sein. Obwohl das Speichermodul (z. B. das Speicherpaket) 201 mit vier Speichervorrichtungen 100 (z. B. Chips) dargestellt ist, könnte das Speichermodul 201 weniger oder mehr Speichervorrichtungen 100 aufweisen. Wie hierin verwendet, bezieht sich ein Chip auf eine einzelne integrierte Schaltungsvorrichtung, die eine Speichervorrichtung 100 beinhalten könnte und andere integrierte Schaltungsvorrichtungen beinhalten könnte.
-
Da sich der Prozessor 130 (z. B. ein Speichercontroller) zwischen dem Host 240 und den Speichervorrichtungen 100 befindet, könnte die Kommunikation zwischen dem Host 240 und dem Prozessor 130 andere Kommunikationsverbindungen umfassen als diejenigen, die zwischen dem Prozessor 130 und den Speichervorrichtungen 100 verwendet werden. Zum Beispiel könnte das Speichermodul 201 eine Embedded MultiMediaCard (eMMC) eines Festkörperlaufwerks (solid state drive - SSD) sein. Gemäß bestehenden Standards könnte die Kommunikation mit einer eMMC eine Datenverbindung 242 zum Übertragen von Daten (z. B. eine 8-Bit-Verbindung), eine Befehlsverbindung 244 zum Übertragen von Befehlen und Vorrichtungsinitialisierung und eine Taktverbindung 246 beinhalten, die ein Taktsignal zum Synchronisieren der Übertragungen auf der Datenverbindung 242 und der Befehlsverbindung 244 bereitstellt. Der Prozessor 130 könnte viele Aktivitäten autonom handhaben, wie z. B. Fehlerkorrektur, Verwaltung defekter Blöcke, Wear-Leveling und Adressübersetzung.
-
3A ist eine Seitenansicht einer Darstellung eines Mehrchip-Pakets 300 gemäß einer Ausführungsformen. Das Mehrchip-Paket 300 von 3A ist so dargestellt, dass es vier Chips 100 (d. h. 1000-1003 entsprechend Chip0-Chip3) beinhaltet, die auf einer Leiterplatte 302 montiert sind, obwohl Mehrchip-Pakete weniger oder mehr solcher Chips aufweisen könnten. Jeder der Chips (z. B. Speichervorrichtungen) 100 könnte ein oder mehrere Bondpads 306 (z. B. Bondpads 3060-3063) zum Empfang einer Versorgungsspannung oder zur Eingabe und/oder Ausgabe von Datensignalen, Adresssignalen, Befehlssignalen, Taktsignalen, Statussignalen usw. beinhalten Das Mehrchip-Paket 300 könnte ein Bondpad 304 der Leiterplatte 302 beinhalten, das mit einem oder mehreren der Bondpads 306 und somit mit den Chips 100 verbunden ist. Beispielsweise ist in der Ausführungsform von 3A das Bondpad 304 mit den Bondpads 3060 und 3061 durch den Bonddraht 308overbunden und ferner mit den Bondpads 3062 und 3063 durch den Bonddraht 3081 verbunden. Das Bondpad 304 könnte ferner mit einem oder mehreren leitfähigen Knoten 310 der Leiterplatte 302 verbunden sein, wie etwa einem leitfähigen Bump oder einer anderen Art von leitfähigem Knoten zur Verbindung mit einer externen Vorrichtung. Die Verbindung des Bondpads 304 mit einem leitfähigen Knoten 310 ist in 3A nicht dargestellt. Obwohl 3A nur ein Bondpad 306 für jeden Chip 100 und ein Bondpad 304 für die Leiterplatte 302 darstellt, würden die Chips 100 und die Leiterplatte 302 im Allgemeinen viele solcher Bondpads 304/306 für die verschiedenen Spannungen und Signale, die zwischen ihnen verwendet werden, aufweisen.
-
Um die Stromzufuhr durch das Mehrchip-Paket 300 zu verbessern, wird eine Versorgungsspannung typischerweise gemeinsam mit mehr als einem Bondpad 304 und mit mehr als einem leitfähigen Knoten 310 verbunden. Beispielsweise könnte jedes für eine Versorgungsspannung verwendete Bondpad 304 mit mehr als einem leitfähigen Knoten 310 verbunden sein, der um das Mehrchip-Paket 300 herum beabstandet und konfiguriert ist, um die Versorgungsspannung zu empfangen, und jeder leitfähige Knoten 310, der dazu konfiguriert ist, die Versorgungsspannung zu empfangen, könnte mit mehr als einem Bondpad 304 verbunden sein. Auf diese Weise könnte jedes Bondpad 304, das dazu konfiguriert ist, die Versorgungsspannung zu empfangen, mit jedem verbleibenden Bondpad 304 verbunden sein, das dazu konfiguriert ist, die Versorgungsspannung durch eine gemeinsame Verbindung mit einem gleichen Satz von leitfähigen Knoten zu empfangen.
-
Das Mehrchip-Paket 300 von 3A könnte ferner zusätzliche Chips 100 in einer gespiegelten Konfiguration beinhalten. 3B ist eine Seitenansicht einer Darstellung eines Mehrchip-Pakets 300 gemäß einer Ausführungsform mit einer gespiegelten Konfiguration. Das Mehrchip-Paket 300 von 3B ist so dargestellt, dass es acht Chips 100 (d. h. 1000L-1003L und 1000R-1003R, entsprechend Chip0L-Chip3L bzw. Chip0R-Chip3R) beinhaltet, obwohl Mehrchip-Pakete weniger oder mehr solcher Chips aufweisen könnten. Jeder der Chips (z. B. Speichervorrichtungen) 100 könnte ein oder mehrere Bondpads 306 (z. B. Bondpads 3060L-3063L und 3060R-3063R) zum Empfang einer Versorgungsspannung oder zur Eingabe und/oder Ausgabe von Datensignalen, Adresssignalen, Befehlssignalen, Taktsignalen, Statussignalen usw. beinhalten. Das Mehrchip-Paket 300 könnte ein erstes Bondpad 304L der Leiterplatte 302 beinhalten, das mit einem oder mehreren der Bondpads 3060L-3063L verbunden ist. Beispielsweise ist in der Ausführungsform von 3B das Bondpad 304L mit den Bondpads 3060L und 3061L durch den Bonddraht 3080L verbunden und ferner mit den Bondpads 3062L und 3063L durch den Bonddraht 3081Lverbunden. Das Bondpad 304L könnte ferner mit einem oder mehreren leitfähigen Knoten 310 oder einem anderen leitfähigen Knoten zur Verbindung mit einer externen Vorrichtung verbunden sein. Die Verbindung des Bondpads 304L mit einem leitfähigen Knoten 310 ist in 3B nicht dargestellt.
-
Das Mehrchip-Paket 300 könnte ferner ein zweites Bondpad 304R der Leiterplatte 302 beinhalten, das mit einem oder mehreren der Bondpads 3060R 3063R verbunden ist. Beispielsweise ist in der Ausführungsform von 3B das Bondpad 304R mit den Bondpads 3060R und 3061R durch den Bonddraht 3080Rverbunden und ferner mit den Bondpads 3062R und 3063R durch den Bonddraht 3081Rverbunden. Das Bondpad 304R könnte ferner mit einem oder mehreren leitfähigen Knoten 310 oder einem anderen leitfähigen Knoten zur Verbindung mit einer externen Vorrichtung verbunden sein und könnte ferner mit dem Bondpad 304L verbunden sein, z. B. durch denselben Satz von leitfähigen Knoten. Die Verbindung des Bondpads 304R mit einem leitfähigen Knoten 310 und mit dem Bondpad 304L ist in 3B nicht dargestellt. Obwohl 3B nur ein Bondpad 306 für jeden Chip 100 und zwei Bondpads 304 für die Leiterplatte 302 darstellt, würden die Chips 100 und die Leiterplatte 302 im Allgemeinen viele solcher Bondpads 304/306 für die verschiedenen Spannungen und Signale, die zwischen ihnen verwendet werden, aufweisen.
-
3C ist eine Seitenansicht einer Darstellung eines Mehrchip-Pakets 300 gemäß einer weiteren Ausführungsform. Das Mehrchip-Paket 300 von 3C ist so dargestellt, dass es acht Chips 100 beinhaltet (d. h. 1000-1007 entsprechend Chip0-Chip7), obwohl Mehrchip-Pakete weniger oder mehr solcher Chips aufweisen könnten. Jeder der Chips (z. B. Speichervorrichtungen) 100 könnte ein oder mehrere Bondpads 306 (z. B. Bondpads 3060-3067) zum Empfang einer Versorgungsspannung oder zur Eingabe und/oder Ausgabe von Datensignalen, Adresssignalen, Befehlssignalen, Taktsignalen, Statussignalen usw. beinhalten. Das Mehrchip-Paket 300 könnte ein Bondpad 304 einer Leiterplatte 302 beinhalten, das mit einem oder mehreren der Bondpads 306 verbunden ist. Beispielsweise ist in der Ausführungsform von 3C das Bondpad 304 mit den Bondpads 3060-3063 durch den Bonddraht 308overbunden und ferner mit den Bondpads 3064-3067 durch den Bonddraht 3081verbunden. Das Bondpad 304 könnte ferner mit einem oder mehreren leitfähigen Knoten 310 oder einem anderen leitfähigen Knoten zur Verbindung mit einer externen Vorrichtung verbunden sein. Die Verbindung des Bondpads 304 mit einem leitfähigen Knoten 310 ist in 3C nicht dargestellt. Obwohl 3C nur ein Bondpad 306 für jeden Chip 100 und ein Bondpad 304 für die Leiterplatte 302 darstellt, würden die Chips 100 und die Leiterplatte 302 im Allgemeinen viele solcher Bondpads 304/306 für die verschiedenen Spannungen und Signale, die zwischen ihnen verwendet werden, aufweisen. Das Mehrchip-Paket 300 von 3C könnte ferner zusätzliche Chips 100 in einer gespiegelten Konfiguration beinhalten, z. B. in einer Weise ähnlich zu dem Unterschied, der zwischen 3A und 3B dargestellt ist.
-
3D ist eine Seitenansicht einer Darstellung eines Mehrchip-Pakets 300 gemäß noch einer weiteren Ausführungsform. Das Mehrchip-Paket 300 von 3D ist so dargestellt, dass es vier Chips 100 (d. h. 1000-1007 entsprechend Chip0-Chip7) beinhaltet, obwohl Mehrchip-Pakete weniger oder mehr solcher Chips aufweisen könnten. Jeder der Chips (z. B. Speichervorrichtungen) 100 könnte ein oder mehrere Bondpads 306 (z. B. Bondpads 3060-3067) zum Empfang einer Versorgungsspannung oder zur Eingabe und/oder Ausgabe von Datensignalen, Adresssignalen, Befehlssignalen, Taktsignalen, Statussignalen usw. beinhalten. Das Mehrchip-Paket 300 könnte ein Bondpad 304 einer Leiterplatte 302 beinhalten, das mit einem oder mehreren der Bondpads 306 verbunden ist. Beispielsweise ist in der Ausführungsform von 3D das Bondpad 304 mit den Bondpads 3060 und 3061 durch Bonddraht 3080 verbunden, mit den Bondpads 3062 und 3063 durch Bonddraht 3081 verbunden, mit den Bondpads 3064 und 3065 durch Bonddraht 3082 verbunden und mit den Bondpads 3066 und 3067 durch Bonddraht 3083 verbunden. Das Bondpad 304 könnte ferner mit einem oder mehreren leitfähigen Knoten 310 oder einem anderen leitfähigen Knoten zur Verbindung mit einer externen Vorrichtung verbunden sein. Die Verbindung des Bondpads 304 mit einem leitfähigen Knoten 310 ist in 3D nicht dargestellt. Obwohl 3D nur ein Bondpad 306 für jeden Chip 100 und ein Bondpad 304 für die Leiterplatte 302 darstellt, würden die Chips 100 und die Leiterplatte 302 im Allgemeinen viele solcher Bondpads 304/306 für die verschiedenen Spannungen und Signale, die zwischen ihnen verwendet werden, aufweisen. Das Mehrchip-Paket 300 der 3D könnte darüber hinaus zusätzliche Chips 100 in einer gespiegelten Konfiguration beinhalten, z. B. in ähnlicher Weise wie der Unterschied, der zwischen 3A und 3B dargestellt ist.
-
4A ist eine schematische Darstellung eines Mehrchip-Pakets 300 mit vier Chips 100 (z. B. 1000-1003) gemäß einer Ausfuhrungsform. 4A könnte eine schematische Darstellung einer Ausführungsform sein, wie sie in 3A dargestellt ist. Ein Signal HC# könnte von den Chips 100 über ein Bondpad 3045 gemeinsam genutzt werden. Das Bondpad 3045 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3080 verbunden sein und ferner mit den Chips 1002 und 1003 durch den Bonddraht 3085-1 verbunden sein. Das Signal HC# könnte mit der externen Vorrichtung über einen leitfähigen Knoten 3105 geteilt werden, der mit dem Bondpad 3045 über einen Widerstand 416 verbunden ist. Der leitfähige Knoten 3105 könnte dazu konfiguriert sein, eine Versorgungsspannung, z. B. die Versorgungsspannung Vcc, zu empfangen. Infolgedessen könnte das Signal HC# einen nominellen Zustand aufweisen, in dem es normalerweise in einen bestimmten Zustand gezogen, z. B. aufgezogen, wird. Eine solche Konfiguration des Widerstands 416 könnte als schwacher Pull-Up-Widerstand oder einfach als Pull-Up-Widerstand bezeichnet werden.
-
Ein Taktsignal ppmCLK könnte von den Chips 100 über ein Bondpad 304
4 gemeinsam genutzt werden. Das Bondpad 304
4 könnte mit den Chips 100
0 und 100
1 durch den Bonddraht 308
4-0 verbunden sein und ferner mit den Chips 100
2 und 100
3 durch den Bonddraht 308
4-1 verbunden sein. Der Klarheit halber ist die Verbindung der Bonddrähte 308 mit den Bondpads 306 der Chips 100 in
4A nicht dargestellt. Das Taktsignal ppmCLK könnte von einer externen Vorrichtung über einen leitfähigen Knoten 310
4 empfangen werden, der mit dem Bondpad 304
4 verbunden ist. Alternativ könnte das Taktsignal ppmCLK durch einen der Chips 100 erzeugt werden. Die Erzeugung eines solchen Taktsignals ist im
US-Patent Nr. 9,417,685 von Ha et al. beschrieben, das allgemein anerkannt ist.
-
Das Taktsignal ppmCLK und das Signal HC# könnten verwendet werden, um die erwartete Spitzenstromstärke jedes Chips 100 an jeden verbleibenden Chip 100 zu kommunizieren. Ein Verfahren zur Kommunikation der erwarteten Spitzenstromstärke zwischen den Chips 100 ist in der US-Patentanmeldung
2021/0055772 A1 von Guo beschrieben, die allgemein anerkannt ist. Ein solches Verfahren wird beim Beschreiben verschiedener Ausführungsformen hierin verwendet. Ein Verfahren zur Kommunikation der erwarteten Spitzenstromstärke zusammen mit zusätzlichen Informationen, z. B. Prioritätstoken, zwischen den Chips 100 ist in der vorläufigen US-Patentanmeldung mit der Seriennummer 63/182,015 von Yu et al. beschrieben, die allgemein anerkannt ist. Ein solches Verfahren ist auch zur Verwendung mit den Ausführungsformen geeignet. Im Allgemeinen wäre jedes Verfahren zum Kommunizieren des erwarteten Strombedarfs zwischen den Chips 100 zur Verwendung mit hierin beschriebenen Ausführungsformen geeignet.
-
Das Bereitschafts-/Belegt-Steuersignal RB# könnte von den Chips 100 über ein Bondpad 3043 gemeinsam genutzt werden. Das Bondpad 3043 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3083-0 verbunden sein und ferner mit den Chips 1002 und 1003 durch den Bonddraht 3083-1 verbunden sein. Das Bereitschafts-/Belegt-Steuersignal RB# könnte mit der externen Vorrichtung über einen leitfähigen Knoten 3103 geteilt werden, der mit dem Bondpad 3043 über einen Widerstand 420 verbunden ist. Der leitfähige Knoten 3103 könnte dazu konfiguriert sein, eine Versorgungsspannung, z. B. die Versorgungsspannung Vcc, zu empfangen. Infolgedessen könnte das Bereitschafts-/Belegt-Steuersignal RB# normalerweise in einen bestimmten Zustand gezogen, z. B. aufgezogen, werden.
-
Ein oder mehrere Steuersignale, wie z. B. die Steuersignale einer in 1 dargestellten Steuerverbindung 132, könnten von den Chips 100 gemeinsam genutzt werden. 4A zeigt ein beispielhaftes Steuersignal, das von den Chips 100 über ein Bondpad 3042 gemeinsam genutzt wird. Das Bondpad 3042 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3082-0 verbunden sein und ferner mit den Chips 1002 und 1003 durch den Bonddraht 3082-1 verbunden sein. Das Steuersignal könnte von einer externen Vorrichtung über einen leitfähigen Knoten 3102 empfangen werden, der mit dem Bondpad 3042 verbunden ist. Verbleibende Steuersignale könnten ähnlich verbunden sein.
-
Ein oder mehrere E/A-Signale, wie etwa E/A-Signale eines E/A-Busses 134, der in 1 dargestellt ist, könnten von den Chips 100 gemeinsam genutzt werden. 4A zeigt ein beispielhaftes E/A-Signal, das von den Chips 100 über ein Bondpad 3041 gemeinsam genutzt wird. Das Bondpad 3041 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3081-0verbunden sein und ferner mit den Chips 1002 und 1003 durch den Bonddraht 3081-1 verbunden sein. Das E/A-Signal könnte von einer externen Vorrichtung über einen leitfähigen Knoten 3101 empfangen werden, der mit dem Bondpad 3041 verbunden ist. Verbleibende E/A-Signale könnten ähnlich verbunden sein.
-
Eine oder mehrere Versorgungsspannungen, wie etwa die Versorgungsspannungen der in 1 dargestellten Spannungsversorgungsknoten 137, könnten von den Chips 100 gemeinsam genutzt werden. 4A zeigt ein Beispiel für eine Versorgungsspannung, z. B. Vcc, die von den Chips 100 über ein Bondpad 3040 gemeinsam genutzt wird. Das Bondpad 3040 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3080-0 verbunden sein und ferner mit den Chips 1002 und 1003 durch den Bonddraht 3080-1 verbunden sein. Die Versorgungsspannung Vcc könnte von einer externen Vorrichtung über einen leitfähigen Knoten 3100 empfangen werden, der mit dem Bondpad 3040 verbunden ist. Verbleibende Versorgungsspannungen könnten ähnlich verbunden sein.
-
4B ist eine schematische Darstellung eines Mehrchip-Pakets 300 mit acht Chips 100 (z. B. 1000L-1003L und 1000R-1003R) gemäß einer Ausführungsform. 4B könnte eine schematische Darstellung einer Ausführungsform sein, wie sie in 3B dargestellt ist. Eine oder mehrere Versorgungsspannungen, wie etwa die Versorgungsspannungen der in 1 dargestellten Spannungsversorgungsknoten 137, könnten von den Chips 100 gemeinsam genutzt werden. 4B zeigt eine beispielhafte Versorgungsspannung, z. B. Vcc, die von den Chips 100 über Bondpads 3040L und 3040R gemeinsam genutzt wird. Das Bondpad 3040L könnte mit den Chips 1000L und 1001L durch den Bonddraht 0L-0verbunden sein und ferner mit den Chips 1002L und 1003L durch den Bonddraht 0L-1 verbunden sein. Das Bondpad 3040R könnte mit den Chips 1000R und 1001R durch den Bonddraht 0R-0 verbunden sein und ferner mit den Chips 1002R und 1003R durch den Bonddraht 0R-1 verbunden sein. Die Versorgungsspannung Vcc könnte von einer externen Vorrichtung über einen leitfähigen Knoten 310-0, der mit dem Bondpad 3040L verbunden ist, und über einen leitfähigen Knoten 3100-1, der mit dem Bondpad 3040Rverbunden ist, empfangen werden. Der leitfähige Knoten 3100-0 könnte mit dem leitfähigen Knoten 3100-1 verbunden sein. Verbleibende Versorgungsspannungen könnten ähnlich verbunden sein. Der Klarheit halber sind die Verbindungen für das Taktsignal ppmCLK, das Signal HC#, das Bereitschafts-/Belegt-Steuersignal RB#, die Steuersignale und die E/A-Signale in 4B nicht dargestellt. Ihre Konnektivität könnte jedoch die gleiche Konfiguration von Bonddrähten 308 und Bondpads 304 beinhalten, wie in dem Schema für die Versorgungsspannung Vcc dargestellt.
-
4C ist eine schematische Darstellung eines Mehrchip-Pakets 300 mit acht Chips 100 (z. B. 1000-1007) gemäß einer Ausführungsform. 4C könnte eine schematische Darstellung einer Ausführungsform sein, wie sie in 3C dargestellt ist. Eine oder mehrere Versorgungsspannungen, wie etwa die Versorgungsspannungen der in 1 dargestellten Spannungsversorgungsknoten 137, könnten von den Chips 100 gemeinsam genutzt werden. 4C zeigt ein Beispiel für eine Versorgungsspannung, z. B. Vcc, die von den Chips 100 über ein Bondpad 3040 gemeinsam genutzt wird. Das Bondpad 3040 könnte mit den Chips 1000-1003 durch den Bonddraht 3080-0 verbunden sein und ferner mit den Chips 1004-1007 durch den Bonddraht 3080-1 verbunden sein. Die Versorgungsspannung Vcc könnte von einer externen Vorrichtung über einen leitfähigen Knoten 3100 empfangen werden, der mit dem Bondpad 3040 verbunden ist. Verbleibende Versorgungsspannungen könnten ähnlich verbunden sein. Der Klarheit halber sind die Verbindungen für das Taktsignal ppmCLK, das Signal HC#, das Bereitschafts-/Belegt-Steuersignal RB#, die Steuersignale und die E/A-Signale in 4C nicht dargestellt. Ihre Konnektivität könnte jedoch die gleiche Konfiguration von Bonddrähten 308 und Bondpads 304 beinhalten, wie in dem Schema für die Versorgungsspannung Vcc dargestellt.
-
4D ist eine schematische Darstellung eines Mehrchip-Pakets 300 mit acht Chips 100 (z. B. 1000-1007) gemäß einer Ausführungsform. 4D könnte eine schematische Darstellung einer Ausführungsform sein, wie sie in 3D dargestellt ist. Eine oder mehrere Versorgungsspannungen, wie etwa die Versorgungsspannungen der in 1 dargestellten Spannungsversorgungsknoten 137, könnten von den Chips 100 gemeinsam genutzt werden. 4D zeigt ein Beispiel für eine Versorgungsspannung, z. B. Vcc, die von den Chips 100 über ein Bondpad 3040 gemeinsam genutzt wird. Das Bondpad 3040 könnte mit den Chips 1000 und 1001 durch den Bonddraht 3080-0 verbunden, mit den Chips 1002 und 1003 durch den Bonddraht 3080-1 verbunden, mit den Chips 1004 und 1005 durch den Bonddraht 3080-2 verbunden und mit den Chips 1006 und 1007 durch den Bonddraht 3080-3 verbunden sein. Die Versorgungsspannung Vcc könnte von einer externen Vorrichtung über einen leitfähigen Knoten 3100 empfangen werden, der mit dem Bondpad 3040 verbunden ist. Verbleibende Versorgungsspannungen könnten ähnlich verbunden sein. Der Klarheit halber sind die Verbindungen für das Taktsignal ppmCLK, das Signal HC#, das Bereitschafts-/Belegt-Steuersignal RB#, die Steuersignale und die E/A-Signale in 4D nicht dargestellt. Ihre Konnektivität könnte jedoch die gleiche Konfiguration von Bonddrähten 308 und Bondpads 304 beinhalten, wie in dem Schema für die Versorgungsspannung Vcc dargestellt.
-
Bei der Stromverwaltung eines Mehrchip-Pakets könnte für einige Hauptgruppierungen von Chips des Mehrchip-Pakets ein Strombedarfsbudget gesetzt werden. Dies könnte alle oder einen Teil der Chips des Mehrchip-Pakets beinhalten, die eine Versorgungsspannung gemeinsam nutzen. Das Strombedarfsbudget könnte gesetzt werden, um das Erfüllen einer Stromspezifikation für das Mehrchip-Paket zu erleichtern. Beispielsweise könnte eine Hauptgruppierung von Chips des Mehrchip-Pakets von 4A Chips 1000-1003beinhalten; eine Hauptgruppierung von Chips des Mehrchip-Pakets von 4B könnte Chips 1000L-1003L beinhalten, die eine Verbindung zu Bondpad 3040L teilen, Chips 1000R-1003R, die eine Verbindung zu Bondpad 3040R teilen, oder Chips 1000L-1003L und 1000R-1003R; eine Hauptgruppierung von Chips des Mehrchip-Pakets von 4C könnte Chips 1000-1007 beinhalten, und eine Hauptgruppierung von Chips des Mehrchip-Pakets von 4D könnte Chips 1000-1007 beinhalten.
-
Es wurde jedoch bestimmt, dass ein geringerer Strombedarf durch Teilsätze der Hauptgruppierung von Chips, die sich eine Versorgungsspannung teilen, z. B. Teilsätze von Chips, die mit demselben Bonddraht verbunden sind, zu Spannungseinbrüchen bei der Versorgungsspannung führen können, selbst wenn der Gesamtstrombedarf der Hauptgruppierung von Chips geringer ist als die Spezifikation. Somit verwenden verschiedene Ausführungsformen hierin ein zweites Strombedarfsbudget für eine Teilmenge von Chips 100, das geringer ist als das Strombedarfsbudget für die Hauptgruppierung von Chips 100, die diese Teilmenge von Chips 100 enthält. Bei einigen Ausführungsformen, bei denen die Anzahl der Chips in einer Hauptgruppierung von Chips N und die Anzahl der Chips in einer Teilmenge der Hauptgruppierung von Chips M beträgt, könnte das zweite Strombedarfsbudget größer als das M/N-Fache des Strombedarfsbudgets der Hauptgruppierung von Chips sein. Zum Beispiel könnte bei einer Gruppierung von vier Chips mit einem ersten Strombedarfsbudget von 600 mA eine Teilmenge von zwei Chips einen zweiten Strom von mehr als 300 mA aufweisen.
-
Der Einfachheit halber könnte jede Teilmenge von Chips einer Hauptgruppierung von Chips ein gleiches zweites Strombedarfsbudget aufweisen. Aufgrund unterschiedlicher RC-Eigenschaften unterschiedlicher Bonddrähte, z. B. aufgrund unterschiedlicher Längen, könnten jedoch unterschiedliche Teilmengen von Chips unterschiedliche zweite Strombedarfsbudgets aufweisen.
-
Verschiedene Ausführungsformen werden unter Bezugnahme auf das Mehrchip-Paket 300 der 3 A und 4A erörtert. Es ist offensichtlich, dass solche Ausführungsformen weniger oder mehr Chips 100 als die in den 3A und 4A dargestellten verwenden könnten. Im Allgemeinen könnten Zugriffsoperationen der Chips 100 in eine Anzahl von Phasen unterteilt werden. Diese Phasen könnten so bestimmt werden, dass die Zugriffsoperation nach Abschluss einer Phase und vor Einleitung der nächsten Phase angehalten werden könnte, ohne dass die Vollendung der Zugriffsoperation unnötig behindert wird, außer dass eine Verzögerung verursacht wird. Beispielsweise könnte es unerwünscht sein, die Zugriffsoperation anzuhalten, wenn das Anhalten an diesem Punkt das Entladen eines Knotens erfordern würde und diese Ladung an dem Knoten wiederhergestellt werden müsste, bevor die nächste Phase eingeleitet wird. Ebenso könnte es unerwünscht sein, die Zugriffsoperation anzuhalten, wenn das Anhalten an diesem Punkt den Verlust oder die Beschädigung von Datenwerten riskieren würde.
-
Jede Phase könnte einer bestimmten Zeitspanne entsprechen, die vordefiniert (z. B. eine Phase, die jedes Mal, wenn sie ausgeführt wird, die gleichen oder ähnliche zeitliche Merkmale aufweist) oder variabel (z. B. eine Phase, deren zeitliche Merkmale basierend auf der Erkennung bestimmter analoger Merkmale variieren) sein könnte. Jede Phase könnte ferner einer jeweiligen erwarteten Spitzenstromstärke entsprechen. Tabelle 1 stellt ein Beispiel für Stärken von erwarteten Spitzenströmen bereit, die verschiedenen Phasen einer Zugriffsoperation zugeordnet werden könnten. Tabelle 1
| Pegel | Kodierter Wert | Erwartete Spitzenstromstärke |
| 0 | 000 | <= 25 mA |
| 1 | 001 | <= 50 mA |
| 2 | 010 | <= 75 mA |
| 3 | 011 | <= 100 mA |
| 4 | 100 | <= 125 mA |
| 5 | 101 | <= 150 mA |
| 6 | 110 | <= 175 mA |
| 7 | 111 | <= 200 mA |
-
Während das Beispiel in Tabelle 1 acht verschiedene Pegel der erwarteten Spitzenstromstärke zeigt, könnten bei bestimmten Ausführungsformen auch andere Pegel der erwarteten Spitzenstromstärke verwendet werden. Zum Beispiel könnten unter Verwendung eines vierstelligen kodierten Wertes (z. B. einer digitalen Darstellung) sechzehn Pegel der erwarteten Spitzenstromstärke definiert werden, was eine granulärere Steuerung des Gesamtstromverbrauchs eines Mehrchip-Systems bereitstellen könnte. Darüber hinaus zeigt das Beispiel in Tabelle 1 zwar Pegel der erwarteten Spitzenstromstärke, die sich von benachbarten Pegeln der erwarteten Spitzenstromstärke durch eine konstante Differenz unterscheiden, aber die Stromdifferenz zwischen benachbarten Pegel muss nicht konstant sein. Die erwartete Spitzenstromstärke muss nicht unbedingt der tatsächlichen Spitzenstromstärke entsprechen, sondern könnte stattdessen eine Spitzenstromstärke darstellen, die bestimmt, ob und wie mit der nächsten oder ersten Phase einer Zugriffsoperation verfahren werden soll. Zum Beispiel könnte die tatsächliche Spitzenstromstärke höher sein, aber auch von so kurzer Zeitspanne, dass sie als geringfügig anzusehen ist.
-
Verschiedene Ausführungsformen erleichtern die Stromverwaltung in einem Mehrchip-Paket, indem ein Chip des Pakets die erwarteten Spitzenstromstärken dieses Chips und jedes verbleibenden Chips einer Hauptgruppierung von Chips betrachtet und eine Entscheidung darüber trifft, wie in Abhängigkeit von einem Wert, der eine Summe der erwarteten Spitzenstromstärken für die Hauptgruppierung von Chips angibt, und einem Wert, der eine Summe der erwarteten Spitzenstromstärken für eine Teilmenge von Chips der Hauptgruppierung von Chips angibt, vorgegangen werden soll, wenn dieser Chip die nächste Phase seiner Zugriffsoperation einleiten soll. Jeder Chip kann seine erwartete Spitzenstromstärke an die übrigen Chips aussenden, und jeder Chip kann basierend auf der Summe der erwarteten Spitzenstromstärken fundierte Entscheidungen treffen. Zum Beispiel könnte ein Chip entscheiden, eine Zugriffsoperation nach Abschluss der gegenwärtigen Phase einer Zugriffsoperation anzuhalten oder die nächste Phase in einem anderen Betriebsmodus, z. B. einem Betriebsmodus mit niedrigerem Spitzenstrom, einzuleiten, wenn die Durchführung der nächsten Phase unter normalen Betriebsbedingungen ein erstes Strombedarfsbudget für eine Hauptgruppierung von Chips, die diesen Chip enthalten, und/oder ein zweites Strombedarfsbudget, das niedriger als das erste Strombedarfsbudget ist, für eine Teilmenge von Chips, die diesen Chip enthalten, überschreiten würde.
-
Im Hinblick auf das Aussenden erwarteter Spitzenstromstärken könnte ein Chip bestimmen, ob erwartet wird, dass er in eine nächste Phase einer Operation übergeht, die eine nächste Phase einer gegenwärtigen Operation oder eine Anfangsphase einer neuen Operation sein könnte. Wenn ein solcher Übergang erwartet wird, könnte er seine erwartete Spitzenstromstärke für die nächste Phase bestimmen. Wenn kein derartiger Übergang erwartet wird, könnte er seine erwartete Spitzenstromstärke als die erwartete Spitzenstromstärke seines gegenwärtigen Zustands (der Leerlauf beinhalten könnte) bestimmen. Es ist zu beachten, dass ein Chip, der sich im Leerlauf befindet, z. B. keine aktive Phase einer Zugriffsoperation ausführt, als Basisstärke der erwarteten Spitzenstromstärke angesehen werden könnte, die die niedrigste Stärke der definierten Vielzahl von erwarteten Spitzenstromstärken sein könnte. Ferner ist zu beachten, dass ein Chip im Leerlauf zwar eine erwartete Spitzenstromstärke aufweisen könnte, die der niedrigsten Stärke der Vielzahl erwarteter Spitzenstromstärken entspricht, die niedrigste Stärke der Vielzahl erwarteter Spitzenstromstärken jedoch ausreichen könnte, um bestimmten Phasen von Operationen zu entsprechen, die aktiv durch einen Chip ausgeführt werden.
-
Wenn die nächste Operationsphase in einem Niedrig-Spitzenstrom-Betriebsmodus (LPC) betrieben werden kann und eine solche Operation freigegeben ist, könnte der Chip alternativ die Summe der erwarteten Spitzenstromstärken unter Verwendung einer erwarteten Spitzenstromstärke des Niedrig-Spitzenstrom-Betriebsmodus der nächsten Phase neu berechnen. Als ein Beispiel könnte der Niedrig-Spitzenstrom-Betriebsmodus die Verlangsamung von Ladepumpen oder anderen spannungserzeugenden Vorrichtungen beinhalten, um die Stromverbrauchsrate zu reduzieren. Dadurch könnte sich die Zeitspanne der nächsten Phase verlängern, z. B. könnten die Knoten nicht so schnell die beabsichtigten Spannungspegel erreichen. Wenn mindestens eines der beiden Strombedarfsbudgets unter Verwendung der erwarteten Spitzenstromstärke der nächsten Phase unter normalen Betriebsbedingungen als überschritten gilt, aber keines der beiden Budgets unter Verwendung der erwarteten Spitzenstromstärke des Niedrig-Spitzenstrom-Betriebsmodus der nächsten Phase als überschritten gilt, könnte der Chip an die übrigen Chips aussenden, dass seine erwartete Spitzenstromstärke die Stärke hat, die dem Niedrig-Spitzenstrom-Betriebsmodus der nächsten Phase seiner Operation entspricht, und dazu übergehen, die nächste Phase im Niedrig-Spitzenstrom-Betriebsmodus auszuführen.
-
5 ist ein konzeptionelles Zeitdiagramm von Signalen und Registerinhalten für das Betreiben einer Hauptgruppierung von Chips gemäß einer Ausführungsform. 5 geht von einem Mehrchip-Paket aus, wie es in den 3A und 4A dargestellt ist und das vier Chips 100 aufweist. In dem Beispiel von 5 könnte das Strombedarfsbudget für die Hauptgruppierung von Chips, z. B. ein erstes Strombedarfsbudget für ChipO 1000, Chip1 1001, Chip2 1002 und Chip3 1003, 600 mA betragen. Das Strombedarfsbudget für jede Teilmenge von Chips, z. B. ein zweites Strombedarfsbudget für Chip0 1000 und Chip1 1001, oder ein zweites Strombedarfsbudget für Chip2 1002 und Chip3 1003, könnte jeweils 350 mA betragen. Jeder Chip 100 könnte vier Register 570, z. B. Chip0_ICC_reg 5700, Chip1_ICC_reg 5701, Chip2_ICC_reg 5702 und Chip3_ICC_reg 5703, zum Speichern von Informationen aufweisen, z. B. Strombedarfsinformationen bezüglich jeweiliger erwarteter Spitzenstromstärken für jeden der Chips 100.
-
Der Chipzeiger oder der Speichervorrichtungszeiger Dptr könnte einen Hinweis darauf geben, wann jeder Chip oder jede Speichervorrichtung 100 seine erwartete Spitzenstromstärke aussenden soll. Wie unter Bezugnahme auf
6 näher beschrieben wird, könnte dies ein einzelnes Taktsignal beinhalten, das jeder Chip 100 in einer sich wiederholenden Weise zählt und dann antwortet, wenn der Zählerstand diesem Chip 100 entspricht. Alternativ könnte der Chipzeiger Dptr ein entsprechendes Steuersignal, z. B. die Steuersignale C0-C3, für jeden der Chips 100 beinhalten, wobei jeder der Chips 100 antwortet, wenn sein Steuersignal einen vorgegebenen Logikpegel aufweist. Bevor ein Chip 100 seine Informationen über den Strombedarf aussendet, könnte er seine bevorstehende erwartete Spitzenstromstärke bestimmen. Wie in
6 näher beschrieben wird, könnte die Aussendung der Strombedarfsinformationen die Kodierung des gemeinsam genutzten Signals HC# beinhalten. Für das Beispiel der
5 könnten die verschiedenen Pegel der erwarteten Spitzenstromstärke den Pegeln der Tabelle 1 entsprechen. Die US-Patentanmeldung Nr.
2021/0055772 A1 von Guo, die als nicht wesentlich für die hierin offenbarten Ausführungsformen angesehen wird, offenbart Verfahren und Geräte zur Bestimmung der erwarteten Spitzenstromstärke sowie Verfahren und Geräte zur Erzeugung des Signals HC#.
-
Vor dem Zeitpunkt t0 der 5 könnte Chip0 im Leerlauf sein, z. B. mit einer erwarteten Spitzenstromstärke von 25 mA, z. B. weniger als oder gleich 25 mA. Chip 1 könnte eine Phase einer Zugriffsoperation ausführen, die eine erwartete Spitzenstromstärke von 100 mA, z. B. weniger als oder gleich 100 mA, aufweist. Chip2 könnte eine Phase einer Zugriffsoperation mit einer erwarteten Spitzenstromstärke von 50 mA ausführen, z. B. kleiner oder gleich 50 mA. Chip3 könnte eine Phase einer Zugriffsoperation mit einer erwarteten Spitzenstromstärke von 100 mA ausführen, z. B. weniger als oder gleich 100 mA. Chip 1, Chip2 und Chip3 könnten unterschiedliche Zugriffsoperationen ausführen oder dieselbe Zugriffsoperation ausführen, aber in unterschiedlichen Phasen dieser Zugriffsoperation.
-
Weiterhin könnte Chip0 vor dem Zeitpunkt t0 der 5 einen Befehl erhalten, der den Wunsch anzeigt, eine Zugriffsoperation einzuleiten. Die Anfangsphase der Zugriffsoperation für Chip0 könnte eine erwartete Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus aufweisen, und es ist möglicherweise kein Betriebsmodus mit niedriger Spitzenstromstärke verfügbar. Bei einem ersten Strombedarfsbudget von 600 mA für eine Hauptgruppierung von Chips, die Chip0, Chip1, Chip2 und Chip3 beinhaltet, und wenn Chip1, Chip2 und Chip3 erwartete Spitzenstromstärken von 100 mA, 50 mA bzw. 100 mA aufweisen, würde Chip0 somit bestimmen, dass ein ausreichendes erstes Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus mit 200 mA + 100 mA + 50 mA + 100 mA <= 600 mA einzuleiten. In ähnlicher Weise würde bei einem zweiten Strombedarfsbudget von 350 mA für eine Teilmenge von Chips, die Chip0 und Chip 1 beinhaltet, und bei einer erwarteten Spitzenstromstärke von 100 mA für Chip 1 Chip0 ebenfalls bestimmen, dass ein ausreichendes zweites Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus einzuleiten, da 200 mA + 100 mA <= 350 mA. Somit würde die erwartete Spitzenstromstärke 200 mA betragen, und Chip0 könnte seine Strombedarfsinformationen zwischen den Zeiten t0 und t1 als erwartete Spitzenstromstärke von 200 mA senden. Jeder der Chips könnte dann sein Register 5700 entsprechend aktualisieren. Ein erstes Strombedarfsbudget könnte ausreichend sein, wenn die Summe der erwarteten Spitzenstromstärken jedes anderen Chips einer Hauptgruppierung von Chips plus der erwarteten Spitzenstromstärke für den Chip, der die Bestimmung vornimmt, wenn er seine nächste Phase einleitet, kleiner ist als das erste Strombedarfsbudget (z. B. kleiner oder gleich). In ähnlicher Weise könnte ein zweites Strombedarfsbudget ausreichend sein, wenn die Summe der erwarteten Spitzenstromstärken jedes anderen Chips einer Teilmenge von Chips für den Chip, der die Bestimmung vornimmt, zuzüglich der erwarteten Spitzenstromstärke für den Chip, der die Bestimmung vornimmt, wenn er seine nächste Phase einleiten würde, kleiner ist als (z. B. kleiner oder gleich) das zweite Strombedarfsbudget. Ein Strombedarfsbudget könnte unzureichend sein, wenn die entsprechende Summe der erwarteten Spitzenstromstärken größer ist als dieses Strombedarfsbudget.
-
Vor dem Zeitpunkt t1 der 5 könnte Chip1 seine Phase der Zugriffsoperation abschließen und bestimmen, dass eine nachfolgende Phase seiner Zugriffsoperation eine erwartete Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus aufweist und dass kein Betriebsmodus mit niedrigem Spitzenstrom verfügbar ist. Somit würde Chip 1 bestimmen, dass das erste Strombedarfsbudget (z. B. 200 mA + 200 mA + 50 mA + 100 mA <= 600 mA) ausreicht, um die nächste Phase im normalen Betriebsmodus einzuleiten. Chip1 würde jedoch auch bestimmen, dass das zweite Strombedarfsbudget nicht ausreicht (z. B. 200 mA + 200 mA > 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten. Somit könnte er bestimmen, dass er anhalten, z. B. weiter anhalten, muss und seine erwartete Spitzenstromstärke würde voraussichtlich auf den Pegel eines Chips im Leerlauf, z. B. 25 mA, reduziert werden. Chip1 könnte somit seine Strombedarfsinformation zwischen den Zeiten t1 und t2 als erwartete Spitzenstromstärke von 25 mA aussenden. Jeder der Chips könnte dann sein Register 5701 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t2 der 5 könnte Chip2 seine Phase der Zugriffsoperation abschließen und bestimmen, dass eine nachfolgende Phase seiner Zugriffsoperation eine erwartete Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus aufweist und dass kein Betriebsmodus mit niedrigem Spitzenstrom verfügbar ist. Chip2 würde somit bestimmen, dass ein ausreichendes erstes Strombedarfsbudget (z. B. 200 mA + 25 mA + 200 mA + 100 mA <= 600 mA) sowie ein ausreichendes zweites Strombedarfsbudget (z. B. 200 mA + 100 mA <= 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, vorhanden sind. Somit würde die erwartete Spitzenstromstärke 200 mA betragen, und Chip2 könnte seine Strombedarfsinformationen zwischen den Zeiten t2 und t3 als erwartete Spitzenstromstärke von 200 mA aussenden. Jeder der Chips könnte dann sein Register 5702 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t3 der 5 könnte Chip3 seine Phase der Zugriffsoperation abschließen und könnte bestimmen, dass eine nachfolgende Phase seiner Zugriffsoperation eine erwartete Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus und eine erwartete Spitzenstromstärke von 75 mA in einem Niedrig-Spitzenstrom-Betriebsmodus aufweist. Chip3 würde somit bestimmen, dass ein unzureichendes erstes Strombedarfsbudget (z. B. 200 mA + 25 mA + 200 mA + 200 mA > 600 mA) und ein unzureichendes zweites Strombedarfsbudget (z. B. 200 mA + 200 mA > 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, vorhanden sind. Chip3 könnte ferner bestimmen (z. B. nachträglich bestimmen), dass ein ausreichendes erstes Strombedarfsbudget (z. B. 200 mA + 25 mA + 200 mA + 75 mA <= 600 mA) und ein ausreichendes zweites Strombedarfsbudget (z. B. 200 mA + 75 mA <= 350 mA), um die nächste Phase im Niedrig-Spitzenstrom-Betriebsmodus einzuleiten, vorhanden sind. Somit würde die erwartete Spitzenstromstärke 75 mA betragen, und Chip3 könnte seine Strombedarfsinformationen zwischen den Zeiten t3 und t4 als erwartete Spitzenstromstärke von 75 mA aussenden. Jeder der Chips könnte dann sein Register 5703 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t4 der 5 könnte Chip0 seine Phase der Zugriffsoperation abschließen und bestimmen, dass eine nachfolgende Phase seiner Zugriffsoperation eine erwartete Spitzenstromstärke von 100 mA in einem normalen Betriebsmodus aufweist und dass kein Betriebsmodus mit niedrigem Spitzenstrom verfügbar ist. Chip0 würde somit bestimmen, dass ein ausreichendes erstes Strombedarfsbudget (z. B. 100 mA + 25 mA + 200 mA + 75 mA <= 600 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, und ein ausreichendes zweites Strombedarfsbudget (z. B. 100 mA + 25 mA <= 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, vorhanden sind. Somit würde die erwartete Spitzenstromstärke 100 mA betragen, und Chip0 könnte seine Strombedarfsinformationen zwischen den Zeiten t4 und t5 als erwartete Spitzenstromstärke von 100 mA aussenden. Jeder der Chips könnte dann sein Register 5700 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t5 in 5 könnte Chip 1 noch darauf warten, die nächste Phase seiner Zugriffsoperation mit einer erwarteten Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus einzuleiten. Zu diesem Zeitpunkt würde Chip 1 bestimmen, dass ein ausreichendes erstes Strombedarfsbudget (z. B. 100 mA + 200 mA + 200 mA + 75 mA <= 600 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, und ein ausreichendes zweites Strombedarfebudget (z. B. 100 mA + 200 mA <= 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, vorhanden sind. Somit würde die erwartete Spitzenstromstärke 200 mA betragen, und Chip 1 könnte seine Strombedarfsinformationen zwischen den Zeiten t5 und t6 als erwartete Spitzenstromstärke von 200 mA aussenden. Jeder der Chips könnte dann sein Register 5701 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t6 der 5 könnte Chip2 bestimmen, dass er noch immer seine Phase der Zugriffsoperation ausführt. Somit würde seine erwartete Spitzenstromstärke voraussichtlich bei 200 mA bleiben, und Chip2 könnte seine Strombedarfsinformationen zwischen den Zeitpunkten t6 und t7 als erwartete Spitzenstromstärke von 200 mA aussenden. Jeder der Chips könnte dann sein Register 5702 entsprechend aktualisieren.
-
Vor dem Zeitpunkt t7 der 5 könnte Chip3 seine Phase der Zugriffsoperation abschließen und bestimmen, dass eine nachfolgende Phase seiner Zugriffsoperation eine erwartete Spitzenstromstärke von 200 mA in einem normalen Betriebsmodus und eine erwartete Spitzenstromstärke von 100 mA in einem Niedrig-Spitzenstrom-Betriebsmodus aufweist. Chip3 würde somit bestimmen, dass ein unzureichendes erstes Strombedarfsbudget (z. B. 100 mA + 200 mA + 200 mA + 200 mA > 600 mA) und ein unzureichendes zweites Strombedarfsbudget (z. B. 200 mA + 200 mA > 350 mA), um die nächste Phase im normalen Betriebsmodus einzuleiten, vorhanden sind. Chip3 könnte ferner bestimmen (z. B. nachträglich bestimmen), dass ein ausreichendes erstes Strombedarfsbudget (z. B. 100 mA + 200 mA + 200 mA + 100 mA <= 600 mA) und ein ausreichendes zweites Strombedarfsbudget (z. B. 200 mA + 100 mA <= 350 mA), um die nächste Phase im Niedrig-Spitzenstrom-Betriebsmodus einzuleiten, vorhanden sind. Somit würde die erwartete Spitzenstromstärke 100 mA betragen, und Chip3 könnte seine Strombedarfsinformationen zwischen den Zeiten t7 und t8 als erwartete Spitzenstromstärke von 100 mA aussenden. Jeder der Chips könnte dann sein Register 5703 entsprechend aktualisieren.
-
6 ist ein Beispiel eines Zeitablaufdiagramms, das Takt- und andere Signale gemäß einer Ausführungsform zeigt. 6 geht von einem Mehrchip-Paket aus, wie es in den 3A und 4A dargestellt ist, mit vier Chips 100 und entsprechend der in 5 dargestellten Strombedarfsinformation. Verschiedene Ausführungsformen stellen jedem Chip (z. B. in Sequenz) die Möglichkeit bereit, seine erwartete Spitzenstromstärke für einen bestimmten Zeitraum (z. B. einen zukünftigen Zeitraum) zu bewerten, um zu bestimmen, ob sein Betrieb fortgesetzt oder angehalten werden soll, und seine erwartete Spitzenstromstärke vor oder während dieses Zeitraums an die übrigen Chips auszusenden. In 6 könnte die Spur 650 das Taktsignal ppmCLK darstellen.
-
Bei einer Ausführungsform könnte Spur 652 einen Chipzeiger Dptr darstellen, der durch Teilung des Taktsignals ppmCLK erzeugt wird. Zum Beispiel könnte das Steuersignal der Spur 652 alle X Zyklen des Taktsignals ppmCLK einen Impuls aufweisen, wobei in diesem Beispiel X = 4 ist. Jeder der Chips 1000-1003 könnte wiederum die Impulse des Zeigers Dptr in einer sich wiederholenden Weise zählen, z. B. von 0 bis 3, und dann die Sequenz ab einem Zählwert von 0 als Reaktion auf einen nachfolgenden Impuls des Zeigers Dptr wiederholen. Jedem der Chips 1000-1003 könnte ein jeweiliger Zählwert zugewiesen werden. Auf diese Weise könnte Chip 1000 auf jede Zählung von 0 reagieren, Chip 1001 könnte auf jede Zählung von 1 reagieren, Chip 1002 könnte auf jede Zählung von 2 reagieren und Chip 1003 könnte auf jede Zählung von 3 reagieren. Der Wert von X könnte als Reaktion auf eine gewünschte Anzahl von Zyklen des Taktsignals ppmCLK zur Verwendung bei der Übertragung der erwarteten Stärke des Spitzenstroms an andere Chips ausgewählt werden, wie nachstehend ausführlicher beschrieben wird. Anhand des Beispiels der Tabelle 1, in der die verschiedenen erwarteten Spitzenstromstärken mit Hilfe von dreistelligen Daten dargestellt werden, könnten drei Taktzyklen für die Übertragung dieser digitalen Darstellung verwendet werden. Ein Wert von X könnte dann gleich oder größer sein als die Anzahl der für die Übertragung verwendeten Taktzyklen.
-
Alternativ könnte jeder Chip 100 auf ein separates Steuersignal ansprechen. Zum Beispiel könnten die Spuren 6540-6543 jeweils die Zählersignale C0-C3 darstellen. Die Steuersignale der Spuren 6540-6543 könnten alle D * X Zyklen des Taktsignals ppmCLK einen Impuls aufweisen, wobei in diesem Beispiel D = 4 und X = 4 sind. Der Wert von D könnte gleich einer Anzahl von Chips sein, die sich das Taktsignal ppmCLK teilen, und eine Anzahl von Zählersignalen könnte gleich D sein. Der Wert von X könnte als Reaktion auf eine gewünschte Anzahl von Zyklen des Taktsignals ppmCLK zur Verwendung bei der Aussendung der erwarteten Spitzenstromstärke an andere Chips ausgewählt werden, wie im Folgenden ausführlicher beschrieben wird, und die Impulse der Spuren 6540-6543 könnten um X Zyklen des Taktsignals ppmCLK gegeneinander versetzt sein. In dieser Ausführungsform könnte jeder Chip 1000-1003 auf ein entsprechenden Zählersignal C0-C3 ansprechen. Zum Beispiel könnte Chip 1000 auf das Zählersignal C0 der Spur 6540 reagieren, Chip 1001 könnte auf das Zählersignal C1 der Spur 6541 reagieren, Chip 1002 könnte auf das Zählersignal C2 der Spur 6542 reagieren und Chip 1003 könnte auf das Zählersignal C3 der Spur 6543 reagieren.
-
Darüber hinaus könnten die Zählersignale C0-C3 der Spuren 654
0-654
3 jedem Chip 100
0-100
3 als ein kombiniertes Steuersignal mit D Informationsstellen bereitgestellt werden. Jedem der Chips 100
0-100
3 könnte ein entsprechender Wert des kombinierten Steuersignals zugewiesen werden. Auf diese Weise könnte Chip 100
0 auf einen Wert (z. B. einen digitalen Wert) von 100
0 reagieren, Chip 100
1 könnte auf einen Wert von 0100 reagieren, Chip 100
2 könnte auf einen Wert von 0010 reagieren und Chip 100
3 könnte auf einen Wert von 0001 reagieren. Obgleich es für die hierin offengelegten Ausführungsformen nicht als wesentlich angesehen wird, beschreibt das allgemein zugewiesene US-Patent Nr.
9,417,685 von Ha et al. einen Schaltkreis eines Typs, der zur Erzeugung der Zählersignale C0-C3 verwendet werden könnte.
-
Das folgende Beispiel für die Aussendung von Strombedarfsinformationen verwendet die Zählersignale C0-C3, um zu bestimmen, welcher Chip 0-1003 für die Aussendung seiner Strombedarfsinformationen benannt ist. Es ist jedoch ersichtlich, dass jedes Verfahren zum sequenziellen Durchlaufen der Chips verwendet werden könnte. Verschiedene Ausführungsformen verwenden ein gemeinsam genutztes Signal, wie z. B. das Signal HC#, um einen codierten Wert (z. B. eine digitale Darstellung) der Strombedarfsinformationen durch einen Chip eines Mehrchip-Pakets für jeden verbleibenden Chip dieses Mehrchip-Pakets bereitzustellen, der das Signal HC# der Spur 656 teilt. Es ist zu beachten, dass, obwohl die Zählersignale C0-C3 der Spuren 6540-6543 der Einfachheit halber so dargestellt sind, dass sie mit dem Taktsignal ppmCLK der Spur 650 in 6 übereinstimmen, bei der Erzeugung der Zählersignale C0-C3 aus dem Taktsignal ppmCLK eine gewisse Verzögerung zu erwarten ist, sodass die Zeit t0 für die Zählersignale C0-C3 möglicherweise nicht mit der Zeit t0 für das Taktsignal ppmCLK übereinstimmt. In ähnlicher Weise könnte die Zeit t0 für das Signal HC# nicht mit der Zeit t0 für das Taktsignal ppmCLK übereinstimmen. Ein Übergang eines dieser Signale zu einem bestimmten Zeitpunkt könnte jedoch als Reaktion auf einen Übergang des Taktsignals ppmCLK angesehen werden, der diesem bestimmten Zeitpunkt entspricht. Jede Zeitspanne der 6, z. B. t0+t1, t1-t2, t3-t4 usw., könnte einem Taktzyklus des Taktsignals ppmCLK entsprechen.
-
Unter Bezugnahme auf 6 könnte die Spur 6540 zum Zeitpunkt t0 und zum Zeitpunkt t16 auf einen ersten Logikpegel übergehen, die Spur 6541 könnte zum Zeitpunkt t4 und zum Zeitpunkt t20 auf den ersten Logikpegel übergehen, die Spur 6542 könnte zum Zeitpunkt t8 und zum Zeitpunkt t24 auf den ersten Logikpegel übergehen, und die Spur 6543 könnte zum Zeitpunkt t12 und zum Zeitpunkt t28 auf den ersten Logikpegel übergehen, und dieses Muster könnte sich fortsetzen, solange die Chips 100 aktiv sind. Die Spuren 6540-6543 könnten ansonsten einen zweiten Logikpegel aufweisen, der sich von ihrem ersten Logikpegel unterscheidet. Für die Spuren 654 könnte zum Beispiel ihr erster Logikpegel ein logisches High-Pegel und ihr zweiter Logikpegel ein logisches Low-Pegel sein.
-
In diesem Beispiel könnte der Chip 100 0 zum Zeitpunkt t0, z. B. als Reaktion auf den Übergang der Spur 6540 auf den ersten Logikpegel, benannt werden. Der Chip 1000 könnte dann seine Strombedarfsinformation aussenden, indem er das Signal HC# der Spur 656 kodiert, um den dreistelligen Wert von 111 darzustellen, z. B. im Verlauf eines oder mehrerer aufeinanderfolgender Zyklen des Taktsignals ppmCLK der Spur 650. Zum Beispiel könnte der Chip 1000 bewirken, dass das Signal HC# seinen ersten Logikpegel während der Zeitspannen t1-t2, t2-t3 und t3-t4 aufweist, wodurch der digitale Wert 111 dargestellt wird.
-
Der Chip 1001 könnte zum Zeitpunkt t4, z. B. als Reaktion auf den Übergang der Spur 6541 auf den ersten Logikpegel, benannt werden. Der Chip 1001 könnte dann seine Strombedarfsinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 001 darzustellen. Zum Beispiel könnte der Chip 1001 bewirken, dass das Signal HC# während der Zeitspannen t5-t6 und t6-t7 seinen zweiten Logikpegel und während der Zeitspanne t7-t8 seinen ersten Logikpegel aufweist und damit den digitalen Wert 001 darstellt.
-
Der Chip 100 2 könnte zum Zeitpunkt t8, z. B. als Reaktion auf den Übergang der Spur 6542 auf den ersten Logikpegel, benannt werden. Der Chip 1002 könnte dann seine Strombedarfeinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 111 darzustellen. Zum Beispiel könnte der Chip 1002 bewirken, dass das Signal HC# seinen ersten Logikpegel während der Zeitspannen t9-t10, t10-t11 und t11-t12 aufweist, wodurch der digitale Wert 111 dargestellt wird.
-
Der Chip 100 3 könnte zum Zeitpunkt t12, z. B. als Reaktion auf den Übergang der Spur 6543 auf den ersten Logikpegel, benannt werden. Der Chip 1003 könnte dann seine Strombedarfsinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 010 darzustellen. Zum Beispiel könnte der Chip 1003 bewirken, dass das Signal HC# während der Zeitspanne t13-t14 seinen zweiten Logikpegel aufweist, während der Zeitspanne t14-t15 seinen ersten Logikpegel aufweist und während der Zeitspanne t15-t16 seinen zweiten Logikpegel aufweist, wodurch der digitale Wert 010 dargestellt wird.
-
Der Chip 100 0 könnte zum Zeitpunkt t16, z. B. als Reaktion auf den erneuten Übergang der Spur 6540 auf den ersten Logikpegel, erneut benannt werden. Der Chip 1000 könnte dann seine Strombedarfsinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 011 darzustellen. Zum Beispiel könnte der Chip 1000 bewirken, dass das Signal HC# während der Zeitspanne t17-t18 seinen zweiten Logikpegel und während der Zeitspannen t18-t19 und t19-t20 seinen ersten Logikpegel aufweist und damit den digitalen Wert 011 darstellt.
-
Der Chip 1001 könnte zum Zeitpunkt t20, z. B. als Reaktion auf den erneuten Übergang der Spur 6541 auf den ersten Logikpegel, erneut benannt werden. Der Chip 1001 könnte dann seine Strombedarfeinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 111 darzustellen. Zum Beispiel könnte der Chip 1001 bewirken, dass das Signal HC# seinen ersten Logikpegel während der Zeitspannen t21-t22, t22-t23 und t23-t24 aufweist, wodurch der digitale Wert 111 dargestellt wird.
-
Der Chip 1002 könnte zum Zeitpunkt t24, z. B. als Reaktion auf den erneuten Übergang der Spur 6542 auf den ersten Logikpegel, erneut benannt werden. Der Chip 1002 könnte dann seine Strombedarfsinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 111 darzustellen. Zum Beispiel könnte der Chip 1002 bewirken, dass das Signal HC# seinen ersten Logikpegel während der Zeitspannen t25-t26, t26-t27 und t27-t28 hat, wodurch der digitale Wert 111 dargestellt wird.
-
Der Chip 100 3 könnte zum Zeitpunkt t28, z. B. als Reaktion auf den erneuten Übergang der Spur 6543 auf den ersten Logikpegel, erneut benannt werden. Der Chip 1003 könnte dann seine Strombedarfeinformationen aussenden, indem er das Signal HC# kodiert, um den dreistelligen Wert von 010 darzustellen. Zum Beispiel könnte der Chip 1003 bewirken, dass das Signal HC# während der Zeitspanne t29-t30 seinen zweiten Logikpegel aufweist, während der Zeitspanne t30-t31 seinen ersten Logikpegel aufweist und während der Zeitspanne t31-t32 seinen zweiten Logikpegel aufweist, wodurch der digitale Wert 010 dargestellt wird.
-
In Anbetracht des vorstehenden Beispiels wird deutlich, dass verschiedene Ordnungen digitaler Darstellungen mit weniger oder mehr Taktzyklen des Taktsignals ppmCLK dargestellt werden könnten, um niedrigere bzw. höhere Granularitätsgrade der erwarteten Spitzenstromstärken darzustellen. Darüber hinaus könnten sich diese beiden Vorgänge überschneiden, auch wenn im vorangegangenen Beispiel die Aussendung der digitalen Darstellung für einen Chip abgeschlossen war, bevor ein nächster Chip benannt wurde. Zum Beispiel könnte das Zählersignal C0 zum Zeitpunkt t0 übergehen, und der Chip 1000 könnte seine digitale Darstellung vom Zeitpunkt t1 bis zum Zeitpunkt t4 aussenden, wie in 6 dargestellt. In diesem alternativen Beispiel könnte das Zählersignal C1 jedoch zum Zeitpunkt t3 übergehen, z. B. während der Chip 1000 eine letzte Stelle seiner digitalen Darstellung aussendet, und der Chip 1001 könnte zum Zeitpunkt t4 mit der Aussendung seiner digitalen Darstellung beginnen. In ähnlicher Weise könnte das Zählersignal C2 zum Zeitpunkt t6 übergehen, z. B. während der Chip 1001 eine letzte Stelle seiner digitalen Darstellung aussendet, und der Chip 1002 könnte zum Zeitpunkt t7 mit der Aussendung seiner digitalen Darstellung beginnen und so weiter.
-
7 zeigt ein Flussdiagramm eines Verfahrens zum Betreiben eines Chips, z. B. einer Speichervorrichtung oder einer anderen integrierten Schaltungsvorrichtung, gemäß einer Ausführungsform. Das Verfahren könnte in Form von computerlesbaren Anweisungen vorliegen, z. B. in den Anweisungsregistern 128 gespeichert sein. Solche computerlesbaren Anweisungen könnten durch einen Controller, z. B. die Steuerlogik 116, ausgeführt werden, um zu bewirken, dass der Chip (z. B. relevante Komponenten des Chips) das Verfahren durchführt.
-
Bei 703 könnte bestimmt werden, ob der Chip erwartet, eine nächste Phase einer Zugriffsoperation einzuleiten, die eine Anfangsphase einer Zugriffsoperation sein könnte. Wie hierin verwendet, beinhaltet ein Chip, der erwartet, eine nächste Phase einer Zugangsoperation einzuleiten, einen Chip, der eine frühere Phase der Zugangsoperation abgeschlossen hat, eine frühere Zugangsoperation abgeschlossen hat oder anderweitig angehalten hat und darauf wartet, die nächste Phase der Zugangsoperation einzuleiten, oder einen Chip, der eine frühere Phase der Zugangsoperation ausführt, die innerhalb eines vorbestimmten Zeitraums abgeschlossen sein würde, beispielsweise bevor er dazu benannt wird, seine Bestimmung erneut vorzunehmen. Als Reaktion auf das Bestimmen, dass der Chip nicht erwartet, dass eine nächste Phase einer Zugriffsoperation eingeleitet wird, könnte der Chip zu 705 übergehen und seinen gegenwärtigen Zustand fortsetzen. Der Chip könnte ferner die Strombedarfsinformationen für seinen gegenwärtigen Zustand senden. Der gegenwärtige Zustand des Chips könnte ein Leerlauf sein, selbst wenn er einen Befehl zum Ausführen der nächsten Zugriffsoperation erhalten hat, und der Chip könnte weiterhin im Leerlaufzustand bleiben. Alternativ könnte der gegenwärtige Zustand des Chips das aktive Ausführen einer Phase der Zugriffsoperation sein, und der Chip könnte diese Phase der Zugriffsoperation weiter ausführen. Bei einigen Ausführungsformen könnte die Information über den Strombedarf einen Indikator für eine erwartete Spitzenstromstärke umfassen.
-
Als Reaktion auf das Bestimmen, dass der Chip erwartet, eine nächste Phase einer Zugriffsoperation einzuleiten, z. B. eine vorangegangene Phase der Zugriffsoperation abgeschlossen hat oder eine vorangegangene Zugriffsoperation abgeschlossen hat, könnte er zu 711 übergehen und bestimmen, ob ein ausreichendes erstes Strombedarfsbudget (CBMain) für eine Hauptgruppierung von Chips, die den Chip enthält, vorhanden ist, und ob ein ausreichendes zweites Strombedarfsbudget (CBsub) für eine Teilmenge von Chips der Hauptgruppierung von Chips, die ebenfalls den Chip enthält, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um fortzufahren, könnte der Chip bei 713 die nächste Phase seiner Zugriffsoperation in dem ausgewählten Betriebsmodus einleiten. Der Chip könnte ferner die Strombedarfsinformationen für den ausgewählten Betriebsmodus dieser Phase seiner Zugriffsoperation aussenden. Der ausgewählte Betriebsmodus könnte ein normaler Betriebsmodus sein, unabhängig davon, ob ein Betriebsmodus mit niedrigem Spitzenstrom verfügbar ist. Alternativ könnte der ausgewählte Betriebsmodus der normale Betriebsmodus sein als Reaktion auf das Bestimmen, dass ausreichend betreibbares Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus einzuleiten, und könnte der Niedrig-Spitzenstrom-Betriebsmodus sein als Reaktion auf das Bestimmen, dass nicht genügend betreibbares Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus einzuleiten, aber ausreichend betreibbares Strombedarfsbudget, um die nächste Phase im Niedrig-Spitzenstrom-Betriebsmodus einzuleiten.
-
Als Reaktion auf das Bestimmen, dass das erste Strombedarfsbudget oder das zweite Strombedarfsbudget nicht ausreicht, um in dem ausgewählten Betriebsmodus fortzufahren, könnte der Chip zu 715 übergehen und seinen Betrieb in Erwartung eines ausreichenden Strombedarfsbudgets anhalten, z. B. die Einleitung der nächsten Phase der Zugriffsoperation verzögern. Der Chip könnte ferner die Informationen über den Strombedarf eines angehaltenen Chips aussenden, die mit den Informationen über den Strombedarf eines Chips im Leerlauf identisch sein könnten.
-
Der Prozess von 7 könnte für jeden Chip der Hauptgruppe von Chips in einer Sequenz wiederholt werden, während die Chips freigegeben werden, z. B. durch ein Chip-Freigabesignal. Bei einigen Ausführungsformen könnte der Vorgang der 7 für die freigegebenen Chips wiederholt werden, als Reaktion darauf, dass mindestens einer der Chips des Mehrchip-Pakets anzeigt, dass er ausgelastet ist, z. B. durch ein gemeinsames Bereitschafts-/Belegt-Signal.
-
8 zeigt ein Flussdiagramm eines Verfahrens zum Betreiben einer Vielzahl von Chips, z. B. Speichervorrichtungen oder anderen integrierten Schaltungsvorrichtungen, gemäß einer Ausführungsform. Das Verfahren könnte in Form von computerlesbaren Anweisungen vorliegen, z. B. in den Anweisungsregistern 128 gespeichert sein. Solche computerlesbaren Anweisungen könnten durch Controller, z.B. die Steuerlogik 116, ausgeführt werden, um zu bewirken, dass die Chips (z. B. relevante Komponenten des Chips) das Verfahren durchführen.
-
Bei 801 könnte eine Variable N auf einen Wert Ninit initialisiert werden. Der Wert der Variablen N könnte einen ganzzahligen Wert eines Zählers, z. B. eines Umschlagzählers, darstellen, um einen repräsentativen Wert für jeden Chip einer Vielzahl von Chips eines Mehrchip-Pakets zu zählen. Zum Beispiel könnte bei einer Ausführungsform mit D Chips der Wert von N mit Ninit initialisiert werden und könnte bis zu einem Wert von D + Ninit - 1 gezählt werden. Zum Beispiel könnte der Zähler, wenn D = 4 und Ninit = 0 sind, von 0 auf 3 weitergeschaltet, d. h. inkrementiert werden, bevor er wieder auf 0 initialisiert wird. Alternativ dazu könnte der Zähler in diesem Beispiel, wenn Ninit = 1 ist, von 1 auf 4 weitergeschaltet werden, bevor er wieder auf 1 initialisiert wird. Bei anderen Ausführungsformen könnte die Variable N ein entsprechendes Ziffernmuster von D-Ziffernmustem darstellen, z. B. ein Ziffernmuster der vier Steuersignale C0, C1, C2 und C3, wie unter Bezugnahme auf 6 beschrieben. Somit könnte der in 8 dargestellte Durchlauf der Variablen N durch D eindeutige Werte einen Zyklus der Ziffernmuster 1000, 0100, 0010 und 0001 darstellen, wie in 6 beschrieben. Obwohl die Ausführungsform von 8 unter Bezugnahme auf eine inkrementelle Sequenz erörtert wird, könnte darüber hinaus eine Sequenz der Werte von N stattdessen mit intuitiv offensichtlichen Änderungen im offenbaren Prozess dekrementiert werden, z. B. könnte der Wert von N bei Ninit initialisiert werden und könnte bis zu einem Wert von Ninit + 1 - D gezählt werden, bevor er erneut initialisiert wird. Zum Beispiel könnte, wenn D = 4 und Ninit = 3, der Zähler von 3 auf 0 vorgerückt, z. B. dekrementiert, werden, bevor er wieder auf 3 initialisiert wird. Andere Sequenzierungsschemata könnten verwendet werden, die eine Sequenz von D eindeutigen Werten haben, wobei jeder von D Chips Strombedarfsinformationen auf einem gemeinsamen Signal als Reaktion auf einen Wert von N, der einem jeweiligen der D eindeutigen Werte entspricht, aussendet.
-
Bei 803 könnte bestimmt werden, ob ein Chip, der dem gegenwärtigen Wert von N entspricht, z. B. Chip N, erwartet, eine nächste Phase einer Zugriffsoperation, die eine Anfangsphase einer Zugriffsoperation sein könnte, die sie erwartet auszuführen, oder eine nächste Phase einer Zugriffsoperation, die sie gegenwärtig ausführt, einzuleiten. Als Reaktion auf das Bestimmen, dass Chip N nicht erwartet, die nächste Phase seiner Zugriffsoperation einzuleiten, könnte der Prozess zu 805 übergehen, und der Chip könnte seinen gegenwärtigen Zustand beibehalten. Chip N könnte weiterhin die Informationen über den Strombedarf für den gegenwärtigen Zustand des Chips aussenden. Der gegenwärtige Zustand des Chips N könnte Leerlauf sein, und der Chip N könnte weiterhin in einem Leerlaufzustand bleiben. Alternativ könnte der gegenwärtige Zustand von Chip N das aktive Ausführen einer Phase einer Zugriffsoperation sein, und Chip N könnte diese Phase der Zugriffsoperation weiter ausführen. Bei einigen Ausführungsformen könnte die Information über den Strombedarf einen Indikator für eine erwartete Spitzenstromstärke umfassen.
-
Als Reaktion auf das Bestimmen, dass Chip N erwartet, eine nächste Phase einer Zugriffsoperation einzuleiten, z. B., eine vorangegangene Phase der Zugriffsoperation abgeschlossen hat oder eine vorangegangene Zugriffsoperation abgeschlossen hat, könnte er zu 811 übergehen und bestimmen, ob ein ausreichendes erstes Strombedarfsbudget (CBMain) für eine Hauptgruppierung von Chips, die den Chip enthält, vorhanden ist, und ob ein ausreichendes zweites Strombedarfsbudget (CBSubN) für eine Teilmenge von Chips der Hauptgruppierung von Chips, die ebenfalls den Chip N enthält, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudgets ausreichen, um fortzufahren, könnte der Chip bei 813 die nächste Phase seiner Zugriffsoperation in dem gewählten Betriebsmodus einleiten. Der Chip könnte ferner die Strombedarfsinformationen für den ausgewählten Betriebsmodus dieser Phase seiner Zugriffsoperation aussenden. Der ausgewählte Betriebsmodus könnte ein normaler Betriebsmodus sein, unabhängig davon, ob ein Betriebsmodus mit niedrigem Spitzenstrom verfügbar ist. Alternativ könnte der ausgewählte Betriebsmodus der normale Betriebsmodus sein als Reaktion auf das Bestimmen, dass ausreichend betreibbares Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus einzuleiten, und könnte der Niedrig-Spitzenstrom-Betriebsmodus sein als Reaktion auf das Bestimmen, dass nicht genügend betreibbares Strombedarfsbudget vorhanden ist, um die nächste Phase im normalen Betriebsmodus einzuleiten, aber ausreichend betreibbares Strombedarfsbudget, um die nächste Phase im Niedrig-Spitzenstrom-Betriebsmodus einzuleiten.
-
Als Reaktion auf das Bestimmen, dass das erste Strombedarfsbudget oder das zweite Strombedarfsbudget nicht ausreicht, um in dem ausgewählten Betriebsmodus fortzufahren, könnte der Chip zu 815 übergehen und seinen Betrieb in Erwartung eines ausreichenden Strombedarfsbudgets anhalten, z. B. die Einleitung der nächsten Phase der Zugriffsoperation verzögern. Der Chip könnte ferner die Informationen über den Strombedarf eines angehaltenen Chips aussenden, die mit den Informationen über den Strombedarf eines Chips im Leerlauf identisch sein könnten.
-
Von 805, 813 oder 815 aus könnte der Prozess zu 807 übergehen und bestimmen, ob der Wert von N der letzte Wert, z. B. einer Sequenz, ist. Als Reaktion auf das Bestimmen, dass der Wert von N nicht der letzte Wert der Sequenz ist, könnte der Wert von N bei 809 weitergeschaltet werden, z. B. inkrementiert für einen Inkrementalzähler, dekrementiert für einen Dekrementalzähler, geändert auf das nächste Ziffernmuster einer Sequenz aus einer Vielzahl von Ziffernmustern usw. Von 809 könnte der Prozess zu 803 zurückkehren. Als Reaktion auf das Bestimmen, dass der Wert von N der letzte Wert der Sequenz bei 807 ist, könnte der Prozess zu 801 zurückkehren, um den Wert von N zu initialisieren, z. B. erneut zu initialisieren, bevor er zu 803 übergeht.
-
Der Prozess von 8 könnte wiederholt werden, während die D Chips freigegeben werden, z. B. durch ein Chip-Freigabesignal. Bei einigen Ausführungsformen könnte der Prozess von 8 für die freigegebenen Chips wiederholt werden als Reaktion darauf dass mindestens einer der Chips anzeigt, dass er ausgelastet ist, z. B. wie durch ihr gemeinsames Bereitschafts-/Belegt-Steuersignal angezeigt.
-
9A ist ein Flussdiagramm eines Abschnitts eines Verfahrens zum Betreiben eines Chips, z. B. eines Speicherchips oder einer anderen integrierten Schaltungsvorrichtung, gemäß verschiedenen Ausführungsformen. 9A stellt zusätzliche Einzelheiten darüber bereit, wie bestimmt werden könnte, ob ein Chip über ausreichende erste und zweite Strombedarfsbudgets verfügt, um eine nächste Phase einer Zugriffsoperation in einem ausgewählten Betriebsmodus einzuleiten, z.B. bei 711 von 7 oder 811 von 8, und wie der ausgewählte Betriebsmodus aussehen könnte, z. B. bei 713 von 7 oder 813 von 8. Zum Beispiel könnte ein Chip bei 911-1 bestimmen, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um eine nächste Phase einer Zugriffsoperation für den Chip in einem normalen Betriebsmodus für diese Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um die nächste Phase der Zugriffsoperation in dem normalen Betriebsmodus einzuleiten, ist der normale Betriebsmodus der ausgewählte Betriebsmodus, und der Chip könnte die nächste Phase der Zugriffsoperation in dem normalen Betriebsmodus bei 913-1 einleiten. Als Reaktion auf das Bestimmen, dass das erste und/oder zweite Strombedarfsbudget nicht ausreicht, um die nächste Phase der Zugriffsoperation in dem normalen Betriebsmodus einzuleiten, könnte der Prozess zu 912-2 übergehen, wo bestimmt werden könnte, ob ein Niedrig-Spitzenstrom-Betriebsmodus (LPC) verfügbar ist. Als Reaktion auf das Bestimmen, dass bei 912-2 kein Niedrig-Spitzenstrom-Betriebsmodus verfügbar ist, könnte der Chip seinen Betrieb anhalten oder weiterhin anhalten und auf ein ausreichendes Strombedarfsbudget warten. Als Reaktion auf das Bestimmen, dass ein Niedrig-Spitzenstrom-Betriebsmodus verfügbar ist, könnte der Prozess zu 911-2 übergehen.
-
Bei 911-2 könnte der Chip bestimmen, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip im Niedrig-Spitzenstrom-Betriebsmodus für diese Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um die nächste Phase der Zugriffsoperation in dem Niedrig-Spitzenstrom-Betriebsmodus einzuleiten, ist der Niedrig-Spitzenstrom-Betriebsmodus der ausgewählte Betriebsmodus, und der Chip könnte die nächste Phase der Zugriffsoperation in dem Niedrig-Spitzenstrom-Betriebsmodus bei 913-2 einleiten. Als Reaktion auf das Bestimmen, dass das erste und/oder zweite Strombedarfsbudget nicht ausreicht, um die nächste Phase der Zugriffsoperation in dem Niedrig-Spitzenstrom-Betriebsmodus einzuleiten, könnte der Chip seinen Betrieb anhalten oder weiter anhalten und auf ein ausreichendes Strombedarfsbudget warten.
-
9B ist ein Flussdiagramm eines Abschnitts eines Verfahrens zum Betreiben eines Chips, z. B. eines Speicherchips oder einer anderen integrierten Schaltungsvorrichtung, gemäß verschiedenen Ausführungsformen. 9B stellt zusätzliche Einzelheiten darüber bereit, wie bestimmt werden könnte, ob ein Chip über ausreichende erste und zweite Strombedarfsbudgets verfügt, um eine nächste Phase einer Zugriffsoperation in einem ausgewählten Betriebsmodus einzuleiten, z. B. bei 711 in 7 oder 811 in 8, und wie der ausgewählte Betriebsmodus aussehen könnte, z. B. bei 713 in 7 oder 813 in 8. Zum Beispiel könnte ein Chip bei 911-1 bestimmen, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um eine nächste Phase einer Zugriffsoperation für den Chip in einem ersten Betriebsmodus, der ein normaler Betriebsmodus sein könnte, für diese Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um die nächste Phase der Zugriffsoperation in dem ersten Betriebsmodus einzuleiten, ist der erste Betriebsmodus der ausgewählte Betriebsmodus, und der Chip könnte die nächste Phase der Zugriffsoperation in dem ersten Betriebsmodus bei 913-1 einleiten. Als Reaktion auf das Bestimmen, dass das erste und/oder zweite Strombedarfsbudget nicht ausreicht, um die nächste Phase der Zugriffsoperation in dem ersten Betriebsmodus einzuleiten, könnte der Prozess zu 912-2 übergehen, wo bestimmt wird, ob ein zweiter Betriebsmodus verfügbar ist, der ein Niedrig-Spitzenstrom-Betriebsmodus sein könnte. Als Reaktion auf das Bestimmen, dass bei 912-2 kein zweiter Betriebsmodus verfügbar ist, könnte der Chip seinen Betrieb anhalten oder weiter anhalten und auf ein ausreichendes Strombedarfsbudget warten. Als Reaktion auf das Bestimmen, dass ein zweiter Betriebsmodus verfügbar ist, könnte der Prozess zu 911-2 übergehen.
-
Bei 911-2 könnte der Chip bestimmen, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in dem zweiten Betriebsmodus für diese Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um die nächste Phase der Zugriffsoperation in dem zweiten Betriebsmodus einzuleiten, ist der zweite Betriebsmodus der ausgewählte Betriebsmodus, und der Chip könnte die nächste Phase der Zugriffsoperation in dem zweiten Betriebsmodus bei 913-2 einleiten. Als Reaktion auf das Bestimmen, dass das erste und/oder zweite Strombedarfsbudget nicht ausreicht, um die nächste Phase der Zugriffsoperation in dem zweiten Betriebsmodus einzuleiten, könnte der Prozess fortfahren, um zu bestimmen, ob nachfolgende Betriebsmodi verfügbar sind und ob diese Betriebsmodi das erste und zweite Strombedarfsbudget befriedigen können, bis bestimmt wird, ob ein N-ter Betriebsmodus bei 912-N verfügbar ist. Als Reaktion auf das Bestimmen, dass ein N-ter Betriebsmodus verfügbar ist, könnte der Prozess zu 911-N übergehen.
-
Bei 911-N könnte der Chip bestimmen, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in dem zweiten Betriebsmodus für diese Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste und das zweite Strombedarfsbudget ausreichen, um die nächste Phase der Zugriffsoperation in dem N-ten Betriebsmodus einzuleiten, ist der N-te Betriebsmodus der ausgewählte Betriebsmodus, und der Chip könnte die nächste Phase der Zugriffsoperation in dem N-ten Betriebsmodus bei 913-N einleiten. Als Reaktion auf das Bestimmen, dass das erste und/oder zweite Strombedarfsbudget nicht ausreicht, um die nächste Phase der Zugriffsoperation in dem N-ten Betriebsmodus einzuleiten, könnte der Chip seinen Betrieb anhalten oder weiter anhalten und auf ein ausreichendes Strombedarfsbudget warten.
-
Der ausgewählte Betriebsmodus könnte ein bevorzugter Betriebsmodus unter den verfügbaren Betriebsmodi sein, für den ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist. Zum Beispiel könnte der Chip für eine Zugriffsoperation mit N Betriebsmodi, die in einer Reihenfolge von einem ersten Betriebsmodus, z. B. einem normalen Betriebsmodus, der als am meisten bevorzugt gilt, bis zu einem N-ten Betriebsmodus, der als am wenigsten bevorzugt gilt, angeordnet sind, die erwarteten Spitzenstromstärken jedes der N Betriebsmodi auswerten, bis er einen Modus bestimmt, der eine erwartete Spitzenstromstärke aufweist, die das erste und zweite Strombedarfsbudget erfüllt. Es ist zu beachten, dass die Betriebsmodi nicht in der Reihenfolge des abnehmenden erwarteten Spitzenstrombedarfs angeordnet sein müssen.
-
Die 10A-10C sind Flussdiagramme von Abschnitten von Verfahren zum Betreiben eines Chips gemäß Ausführungsformen. Insbesondere zeigen die 10A-10C, dass die Bestimmung, ob ein ausreichendes erstes und zweites Strombedarfsbudget vorhanden ist, um eine nächste Phase in einem ausgewählten Betriebsmodus einzuleiten, parallel, z. B. gleichzeitig, oder sequenziell ausgeführt werden kann. Zum Beispiel stellt 10A eine Paralleloperation dar, während die 10B und 10C sequenzielle Operationen zeigen. Die 10A-10C könnten jeweils den Block 711 der 7, den Block 811 der 8 oder einen beliebigen Block 911-X der 9B darstellen, wobei X einen beliebigen Wert von N für die N Betriebsmodi darstellt.
-
Unter Bezugnahme auf 10A könnte ein Chip bei 1021 bestimmen, ob ein ausreichendes erstes Strombedarfsbudget für eine Hauptgruppierung von Chips, die den Chip enthält, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Bei 1023 könnte der Chip bestimmen, ob ein ausreichendes zweites Strombedarfsbudget für eine Teilmenge von Chips der Hauptgruppierung von Chips, die ebenfalls den Chip enthalten, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Sowohl 1021 als auch 1023 könnten gleichzeitig ausgeführt werden und jeweils entweder WAHR oder FALSCH, z.B. 1 oder 0, ergeben, und diese Ausgaben könnten einem UND-Gatter 1025 als Eingaben bereitgestellt werden. Wenn die Ausgabe des UND-Gatters 1025 WAHR, z. B. 1, ist, könnte der Prozess zu 1027 mit 713/813/913-X übergehen, um die nächste Phase der Zugriffsoperation einzuleiten. Wenn die Ausgabe des UND-Gatters 1025 FALSCH, z. B. 0, ist, könnte der Prozess zu 715/815 übergehen, um den Chip anzuhalten. Es ist offensichtlich, dass andere Logikpegel und Schaltungen verwendet werden könnten, um zu bestimmen, ob sowohl 1021 als auch 1023 als WAHR bewertet werden.
-
Es ist zu beachten, dass, wenn der Chip zu 713/813/913-X übergeht, der ausgewählte Betriebsmodus derjenige mit der geringsten Spitzenstromstärke zwischen der Bestimmung bei 1021 und der Bestimmung bei 1023 sein könnte. Zum Beispiel wäre der ausgewählte Betriebsmodus der Betriebsmodus mit dem niedrigsten Spitzenstrom, wenn das erste Strombedarfsbudget bei 1021 im normalen Betriebsmodus ausreichend ist und das zweite Strombedarfsbudget bei 1023 nur im Betriebsmodus mit dem niedrigsten Spitzenstrom ausreichend ist.
-
Unter Bezugnahme auf 10B könnte ein Chip bei 1021 bestimmen, ob ein ausreichendes erstes Strombedarfsbudget für eine Hauptgruppierung von Chips, die den Chip enthält, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass bei 1021 ein erstes ausreichendes Strombedarfsbudget vorhanden ist, könnte der Prozess zu 1023 übergehen, und als Reaktion auf das Bestimmen, dass bei 1021 ein unzureichendes erstes Strombedarfsbudget vorhanden ist, könnte der Prozess zu 715/815 übergehen, um den Chip anzuhalten, was es ihm ermöglicht, zu vermeiden, dass bewertet wird, ob ein ausreichendes zweites Strombedarfsbudget vorhanden ist. Bei 1023 könnte der Chip bestimmen, ob es ein ausreichendes zweites Strombedarfsbudget für eine Teilmenge von Chips der Hauptgruppierung von Chips gibt, die ebenfalls den Chip enthalten, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus von dem einem oder mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass bei 1023 ein ausreichendes zweites Strombedarfsbudget vorhanden ist, könnte der Prozess zu 713/813/913-X übergehen, um die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das zweite Strombedarfsbudget bei 1023 nicht ausreicht, könnte der Prozess zu 715/815 übergehen, um den Chip anzuhalten.
-
Für die Auswertung mehrerer Betriebsmodi in 10B könnte der Chip die N Betriebsmodi in der Reihenfolge des abnehmenden Strombedarfs bei 1021 berücksichtigen. Bei 1023 könnte der Chip dann den Betriebsmodus berücksichtigen, für den bei 1021 ein ausreichendes erstes Strombedarfsbudget vorhanden war, und von dort aus in der Reihenfolge des abnehmenden Strombedarfs fortfahren. Wenn der Chip von 1023 zu 713/813/913-X übergeht, könnte der ausgewählte Betriebsmodus derjenige sein, der die Bestimmung bei 1023 erfüllt.
-
Unter Bezugnahme auf 10C könnte der Chip bei 1023 bestimmen, ob ein ausreichendes zweites Strombedarfsbudget für eine Teilmenge von Chips einer Hauptgruppierung von Chips, die den Chip enthält, vorhanden ist, um die nächste Phase der Zugriffsoperation für den Chip in einem ausgewählten Betriebsmodus des einen oder der mehreren Betriebsmodi des Chips für die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass bei 1023 ein zweites ausreichendes Strombedarfsbudget vorhanden ist, könnte der Prozess zu 1021 übergehen, und als Reaktion auf das Bestimmen, dass bei 1023 ein unzureichendes zweites Strombedarfsbudget vorhanden ist, könnte der Prozess zu 715/815 übergehen, um den Chip anzuhalten, was es ihm ermöglicht, zu vermeiden, dass bewertet wird, ob ein ausreichendes erstes Strombedarfsbudget vorhanden ist. Bei 1021 könnte der Chip bestimmen, ob das erste Strombedarfsbudget für die Hauptgruppierung der Chips ausreicht, um die nächste Phase der Zugriffsoperation für den Chip in dem ausgewählten Betriebsmodus einzuleiten. Als Reaktion auf das Bestimmen, dass bei 1021 ein ausreichendes erstes Strombedarfsbudget vorhanden ist, könnte der Prozess zu 713/813/913-X übergehen, um die nächste Phase der Zugriffsoperation einzuleiten. Als Reaktion auf das Bestimmen, dass das erste Strombedarfsbudget bei 1021 nicht ausreicht, könnte der Prozess zu 715/815 übergehen, um den Chip anzuhalten.
-
Für die Auswertung mehrerer Betriebsmodi in 10C könnte der Chip die N Betriebsmodi in der Reihenfolge des abnehmenden Strombedarfs bei 1023 berücksichtigen. Bei 1021 könnte der Chip dann den Betriebsmodus berücksichtigen, für den bei 1023 ein ausreichendes zweites Strombedarfsbudget vorhanden war, und von dort aus in der Reihenfolge des abnehmenden Strombedarfs fortfahren. Wenn der Chip von 1021 zu 713/813/913-X übergeht, könnte der ausgewählte Betriebsmodus derjenige sein, der die Bestimmung bei 1021 erfüllt.
-
Schlussfolgerung
-
Obwohl hierin spezifische Ausführungsformen veranschaulicht und beschrieben wurden, wird es Durchschnittsfachleuten offensichtlich sein, dass die gezeigten spezifischen Ausführungsformen durch jede beliebige Anordnung ersetzt werden könnten, mit der derselbe Zweck erreicht werden könnte. Viele Anpassungen der Ausführungsformen werden für den Durchschnittsfachmann offensichtlich sein. Dementsprechend soll diese Anmeldung alle Anpassungen oder Variationen der Ausführungsformen abdecken.
Patentansprüche:
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- US 63/195202 [0001]
- US 9417685 [0032, 0064]
- US 2021/0055772 A1 [0033, 0051]