-
HINTERGRUND
-
TECHNISCHES GEBIET
-
Diese Offenbarung betrifft integrierte Schaltungen und insbesondere das Steuern logischer Signale während eines sequenziellen Einschaltens eines elektronischen Systems mit mehreren Stromdomänen.
-
STAND DER TECHNIK
-
Moderne elektronische Systeme (z. B. Computersysteme, drahtlose Vorrichtungen usw.) und darin implementierte integrierte Schaltungen verwenden oftmals mehrere Stromquellen, um unterschiedlichen Stromdomänen Strom bereitzustellen. Insbesondere können bestimmte Schaltkreistypen unterschiedliche Spannungs- und/oder Stromstärkeanforderungen aufweisen als andere Schaltungen. Zum Beispiel können Eingabe/Ausgabe-(E/A-)Schaltungen eine erste Betriebsspannung erfordern, ein Speicher-Subsystem kann eine zweite Betriebsspannung erfordern, während eine Schaltung in einem Prozessorkern eine dritte Betriebsspannung erfordern kann. Die erste, zweite und dritte Betriebsspannung können sich jeweils voneinander unterscheiden.
-
In Systemen und/oder integrierten Schaltkreisen mit mehreren Stromdomänen können die entsprechenden Stromzufuhren in einer vorher bestimmten Reihenfolge eingeschaltet werden. Bei dem vorstehenden Beispiel könnten die E/A-Schaltkreise zuerst eingeschaltet werden, gefolgt von der Schaltung in einem oder mehreren Prozessorkernen und letztlich gefolgt vom Speicher-Subsystem. Nach dem Einschalten aller Subsysteme können Kommunikationen dazwischen beginnen.
-
ZUSAMMENFASSUNG DER OFFENBARUNG
-
Ein Verfahren und eine Vorrichtung zur Vermeidung von Konflikten durch domänenübergreifende Signale während des sequenziellen Einschaltens eines elektronischen Systems werden offenbart. In einer Ausführungsform weist eine Vorrichtung eine erste Stromdomäne, die so angeschlossen ist, dass sie Strom von einer ersten Stromquelle erhält, und eine zweite Stromdomäne auf, die so angeschlossen ist, dass sie Strom von einer zweiten Stromquelle erhält. Während einer Einschaltsequenz ist die erste Stromquelle so konfiguriert, dass sie Strom vor der zweiten Stromquelle bereitstellt. Eine Stromerkennungsschaltung ist so konfiguriert, dass sie das Vorhandensein von Strom von sowohl der ersten als auch der zweiten Stromquelle erkennt. Wenn kein Strom von der zweiten Stromquelle erkannt wurde, kann die Stromerkennungsschaltung ein Anzeigesignal an eine Klemmschaltung, wie einen Klemmpegelumsetzer, senden. Die Klemmschaltung kann so konfiguriert sein, dass sie ein Steuersignal von der zweiten Stromdomäne empfängt und ein Pegelumsetzungs-Steuersignal an einen Leistungsschalter in der ersten Stromdomäne bereitstellt. Wenn die Stromerkennungsschaltung das Anzeigesignal sendet, kann der Pegelumsetzer verhindern, dass das Steuersignal an den Leistungsschalter bereitgestellt wird.
-
Die hierin beschriebene Vorrichtung kann einen ersten Leistungsschalter, der zwischen der ersten Stromquelle und einem ersten virtuellen Spannungsknoten angeschlossen ist, und einen zweiten Leistungsschalter, der zwischen der zweiten Stromquelle und einem zweiten virtuellen Spannungsknoten angeschlossen ist, aufweisen. Zudem kann die Schaltung in der zweiten Stromdomäne so konfiguriert sein, dass sie Signale an die Schaltung in der ersten Stromdomäne überträgt. Zu den Signalen, die von der zweiten Stromdomäne in die erste übertragen werden, gehört ein Steuersignal, das dem Pegelumsetzer bereitgestellt wird, der eine im Pegel umgesetzte Version davon an den ersten Leistungsschalter ausgibt. Wenn das Steuersignal aktiv ist, kann es den ersten Leistungsschalter betätigen und dabei den ersten virtuellen Spannungsknoten elektrisch mit der ersten Stromquelle koppeln. Wenn die zweite Stromquelle noch keinen Strom an die zweite Stromdomäne bereitgestellt hat (während der Einschaltsequenz, wenn schon Leistung an die erste Stromdomäne bereitgestellt wurde), kann das Steuersignal jedoch in einem unbestimmten Zustand sein. Der Pegelumsetzer, der das Steuersignal empfängt, kann ein Klemmpegelumsetzer sein, der einen gesonderten Eingang aufweist, der gekoppelt ist, um das Anzeigesignal von der Stromerkennungsschaltung zu empfangen. Wenn das Anzeigesignal gesendet wird, kann der Pegelumsetzer seine Ausgabe auf einen vorher bestimmten Pegel bringen, der wiederum verhindert, dass der erste Leistungsschalter aktiviert wird. Wiederum kann die Schaltung in der ersten Stromdomäne, die so gekoppelt ist, dass sie Strom über den ersten virtuellen Spannungsknoten empfängt, zumindest so lange ausgeschaltet bleiben, bis die zweite Stromquelle Strom bereitstellt. Dementsprechend wird verhindert, dass unbestimmte Signale, die von der ersten Stromdomäne an die zweite Stromdomäne übertragen werden, Probleme wie Überspannungsschutzströme oder Konflikte verursachen.
-
Sobald Strom von der zweiten Stromquelle bereitgestellt wird, kann die Stromerkennungsschaltung das Anzeigesignal aufheben. Der Pegelumsetzer kann dann das Steuersignal in einem Zustand, der dem Zustand entspricht, in dem es von der ersten Stromdomäne empfangen wurde, an den ersten Leistungsschalter bereitstellen. Wenn das Steuersignal für einen aktiven Zustand gesendet wird, kann der erste Leistungsschalter aktiviert werden. Wenn Strom von der zweiten Stromquelle bereitgestellt wird, kann auch der zweite Leistungsschalter aktiviert werden, wodurch ermöglicht wird, dass Strom an die Schaltung in der zweiten Stromdomäne bereitgestellt wird, die so gekoppelt ist, dass sie Strom über den zweiten virtuellen Spannungsknoten empfängt. Danach können Signale, die zwischen den Stromdomänen übertragen werden, in deterministischen Zuständen übertragen werden.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Andere Gesichtspunkte der Offenbarung werden beim Lesen der folgenden detaillierten Beschreibung und unter Bezugnahme auf die beiliegenden Zeichnungen, die nun nachfolgend beschrieben werden, offensichtlich.
-
1 ist ein Blockdiagramm einer Ausführungsform einer integrierten Schaltung (IC) mit mehreren Stromdomänen.
-
2 ist eine Prinzipskizze einer Ausführungsform einer Klemmpegelumsetzerschaltung.
-
3 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens zur Vermeidung von Konflikten während eines sequenziellen Einschaltens mehrerer Stromdomänen.
-
4 ist ein Blockdiagramm einer Ausführungsform eines beispielhaften Systems.
-
Obwohl der hierin offenbarte Gegenstand für verschiedene Modifikationen und alternative Formen geeignet ist, sind konkrete Ausführungsformen davon beispielhaft in den Zeichnungen dargestellt und werden hier ausführlich beschrieben. Es sollte sich jedoch verstehen, dass die Zeichnungen und die Beschreibung dazu nicht auf die bestimmte offenbarte Form beschränkt sein sollen, sondern im Gegensatz dazu alle Modifikationen, Äquivalente und Alternativen, die innerhalb des Geistes und Umfangs der vorliegenden Offenbarung, wie von den beiliegenden Ansprüchen definiert, abdecken sollen. Die hier verwendeten Überschriften dienen nur organisatorischen Zwecken und sollen nicht verwendet werden, um den Umfang der Beschreibung zu beschränken. Wie in dieser Anmeldung verwendet, wird das Wort „können” im ermöglichenden Sinn (d. h. das Potential aufweisend) und nicht im zwingenden Sinn (d. h. im Sinne von müssen) verwendet. Ähnlich bedeuten die Wörter „aufweisen”, „enthalten”, „einschließen” einschließlich, jedoch nicht darauf beschränkt.
-
Verschiedene Einheiten, Schaltungen oder andere Komponenten können so beschrieben sein, dass sie zum Durchführen einer oder mehrerer Aufgaben bzw. Tasks „konfiguriert” sind. In solchen Kontexten ist „konfiguriert” eine breite Darstellung von Struktur, die generell bedeutet, „eine Schaltung aufweisend, die” den Task oder die Tasks während des Betriebs durchführt. Somit kann die Einheit/Schaltung/Komponente so konfiguriert sein, dass sie den Task durchführt, auch wenn die Einheit/Schaltung/Komponente derzeit nicht eingeschaltet ist. Im Allgemeinen kann die Schaltung, die die Struktur bildet, die „konfiguriert” entspricht, Hardware-Schaltungen einschließen. Ähnlich können verschiedene Einheiten/Schaltungen/Komponenten aus praktischen Gründen in der Beschreibung so beschrieben sein, dass sie einen Task oder Tasks durchführen. Solche Beschreibungen sollten so ausgelegt werden, als würden sie die Wendung „konfiguriert” enthalten. Das Nennen einer Einheit/Schaltung/Komponente, die zum Durchführen eines oder mehrerer Tasks konfiguriert ist, soll ausdrücklich nicht nach 35 USC 112, Paragraph 6 für die Einheit/Schaltung/Komponente gedeutet werden.
-
DETAILLIERTE BESCHREIBUNG
-
Bezugnehmend auf 1 wird nun ein Blockdiagramm einer Ausführungsform einer integrierten Schaltung (IC) dargestellt. In der gezeigten Ausführungsform ist IC 10 zum Empfangen von Strom von mindestens zwei unterschiedlichen Stromquellen, die hier dargestellt sind, konfiguriert. Es sei erwähnt, dass das in 1 dargestellte System in einigen Ausführungsformen unter Verwendung von mindestens einigen separaten Komponenten anstelle von einer IC implementiert werden kann. Zum Beispiel ist ein Computersystem möglich und vorgesehen, das mehrere der unterschiedlichen in 1 dargestellten Komponenten an unterschiedlichen ICs oder anderen Schaltungen implementiert.
-
In der gezeigten Ausführungsform kann Strom an verschiedene Schaltungen in der IC 10 über die Stromquelle Nr. 1 und Stromquelle Nr. 2 bereitgestellt werden. In dieser speziellen Ausführungsform kann Stromquelle Nr. 1 Strom an eine erste Stromdomäne, VDD_SRAM, bereitstellen, während Stromquelle Nr. 2 Strom an eine zweite Stromdomäne, VDD_CPU, bereitstellen kann.
-
Wie hier definiert, kann der Begriff „Stromquelle” jeder Typ von Stromzufuhr oder Leistungsschaltkreis sein, der zum Liefern von Strom an andere Schaltungen verwendet wird. Zum Beispiel können die Stromquellen Nr. 1 und Nr. 2 in der gezeigten Ausführungsform als Spannungsregler implementiert sein, die so gekoppelt sind, dass sie Strom von einer oder mehreren externen Quellen, wie einer Batterie, eine anderen Stromzufuhr, einer Wandsteckdose usw., empfangen. Es sei erwähnt, dass die Stromquellen Nr. 1 und Nr. 2 in einigen Ausführungsformen außerhalb des Chips implementiert werden können. Im Allgemeinen kann der Begriff Stromquelle, wie hier verwendet, als jede Vorrichtung definiert sein, die einer Stromdomäne eines Systems oder einer integrierten Schaltung, wie hier erörtert, Strom bereitstellt.
-
In der gezeigten Ausführungsform sind VDD_SRAM und VDD_CPU globale Spannungsknoten. Ein erster Leistungsschalter S1 ist zwischen VDD_SRAM(Global) und einem virtuellen Spannungsknoten, VDD_SRAM(Virtual), gekoppelt. Ein zweiter Leistungsschalter S2 ist zwischen VDD_CPU(Global) und VDD_CPU(Virtual) gekoppelt. Es sei erwähnt, dass für beide globalen Spannungsknoten zusätzliche virtuelle Spannungsknoten implementiert werden können, wobei entsprechende Leistungschalter dazwischen gekoppelt sind.
-
Wie hier verwendet, kann der Begriff „globaler Spannungsknoten” als ein Spannungsknoten definiert sein, der zum Verteilen von Leistung an eine Reihe unterschiedlicher Schaltungen verwendet wird und auch Strom über Leistungschalter an einen oder mehrere virtuelle Spannungsknoten verteilen kann. Allgemein ausgedrückt kann ein globaler Spannungsknoten immer eingeschaltet bleiben, wenn das System, in dem er implementiert ist, aktiv ist, auch wenn einige Schaltungen, die Strom über den globalen Spannungsknoten empfangen können, im Leerlauf sein können. Ein virtueller Spannungsknoten, wie hier definiert, kann ein Spannungsknoten sein, der mit einem globalen Spannungsknoten verbunden ist und Strom davon empfangen kann, wenn ein oder mehrere Leistungschalter, die zwischen den beiden gekoppelt sind, aktiv sind. Die Schaltung, die mit dem virtuellen Spannungsknoten gekoppelt ist, kann durch Power-Gate angesteuert (d. h. ausgeschaltet) werden, wenn sie in Leerlauf ist. Obwohl in 1 nicht dargestellt, kann die IC 10 (oder ein äquivalentes System) eine Stromverwaltungseinheit aufweisen, die so konfiguriert ist, dass sie bestimmt, wann die Schaltung, die mit einem virtuellen Spannungsknoten gekoppelt ist, im Leerlauf ist. Bei einer solchen Bestimmung können der bzw. die Leistungsschalter, die zwischen einem virtuellen Spannungsknoten und seinem entsprechenden globalen Spannungsknoten gekoppelt sind, geöffnet werden, wodurch Strom vom virtuellen Spannungsknoten und dem damit verbundenen Schaltkreis entfernt wird. Dies kann verwendet werden, um Strom in der IC 10 (oder einem äquivalenten System) zu sparen, während auch eine größere Genauigkeit in der Fähigkeit zum Stromsparen bereitgestellt wird.
-
Der virtuelle Spannungsknoten VDD_SRAM(Virtual) in der gezeigten Ausführungsform ist angeschlossen, um der virtuellen VDD_SRAM-Domäne 15 (wobei SRAM ein statischer Direktzugriffsspeicher ist) Strom bereitzustellen. Die virtuelle VDD_SRAM-Domäne 15 ist eine Stromdomäne, die einen SRAM 21 aufweist, der zum Speichern von Daten konfiguriert ist. Die virtuelle VDD_SRAM-Domäne 15 weist auch einen Pegelumsetzer 14 auf, der nachstehend ausführlicher erläutert wird, zusammen mit Pegelumsetzern 13.
-
Der virtuelle Spannungsknoten VDD_CPU(Virtual) in der gezeigten Ausführungsform ist angeschlossen, um der virtuellen VDD-CPU-Domäne 17 Strom bereitzustellen. Die virtuelle VDD-CPU-Domäne 17 ist eine Stromdomäne, die in dieser speziellen Ausführungsform zwei Instanzen der CPU (Hauptprozessor) 25 aufweist. Obwohl es nicht dargestellt ist, kann die virtuelle VDD-CPU-Domäne 17 andere Schaltungen aufweisen, einschließlich einer Schaltung, die Kommunikationen zwischen beiden Instanzen der CPU 25 erleichtert.
-
Die Schaltung in der virtuellen VDD-CPU-Domäne 17 in der gezeigten Ausführungsform ist so angeschlossen, dass sie Signale an die Schaltung in der virtuellen VDD-SRAM-Domäne 15 sendet. Zu diesen Signalen können Steuersignale gehören, die von einer der CPUs 25 an den SRAM 21 übertragen werden. Da die Betriebsspannungen der zwei Stromdomänen unterschiedlich sind, sind Pegelumsetzer 13 an der Grenze implementiert. Hier sind drei beispielhafte Instanzen von Pegelumsetzern 13 dargestellt, obwohl die genaue Anzahl von einer Ausführungsform zur nächsten variieren kann. Von der virtuellen VDD-CPU-Domäne 17 übertragene Signale können zum Empfangen durch die Schaltung in der virtuellen VDD-SRAM-Domäne 15 auf geeignete Pegel umgesetzt werden.
-
Pegelumsetzer 13 in der gezeigten Ausführungsform sind Klemmpegelumsetzer. Zusätzlich zu einem Eingang zum Empfangen des Signals, dessen Pegel umgesetzt werden soll, weist jeder Pegelumsetzer 13 auch einen Isolierungseingang auf. Ein Signal, das über den Isolierungseingang bereitgestellt wird, kann verwendet werden, um eine Instanz des Pegelumsetzers 13 zu veranlassen, ein deterministisches Ausgabesignal bereitzustellen, wenn dessen entsprechendes Eingabesignal unbestimmt ist (z. B. während des Einschaltens der Domäne, von der das Eingabesignal empfangen wird). In diesem Beispiel sind verschiedene der Pegelumsetzer 13 gekoppelt, um ein Isolierungssignal, ISO' in der VDD_SRAM-Domäne vom Pegelumsetzer 14 zu empfangen (der ein entsprechendes ISO-Signal in einer globalen Spannungsdomäne empängt). Es sei erwähnt, dass in dieser speziellen Ausführungsform der Pegelumsetzer 14 als Standard-Pegelumsetzer implementiert ist und somit keinen Isolierungseingang aufweist.
-
Obwohl es hier nicht ausdrücklich dargestellt ist, ist die Schaltung (z. B. SRAM 21) in der virtuellen VDD-SRAM-Domäne 15 auch so konfiguriert, dass sie Signale an den Schaltkreis (z. B. der CPU 25) in der virtuellen VDD-CPU-Domäne 17 überträgt. Dementsprechend können zusätzliche Pegelumsetzer implementiert werden, um das Übertragen von Signalen von der virtuellen VDD-SRAM-Domäne 15 an die virtuelle VDD-CPU-Domäne 17 zu erleichtern. Diese zusätzlichen Pegelumsetzer können als Klemm- oder Standard-Pegelumsetzer implementiert werden, wie gewünscht.
-
Der Leistungsschalter S1 kann durch ein Steuersignal, ControlS_, aktiviert werden, das von dem Pegelumsetzer 13A empfangen werden kann, der eine andere Instanz des Pegelumsetzers 13 ist und somit ähnlich (oder identisch) konfiguriert sein kann. Die Eingabeversion dieses Signals für diese Instanz des Pegelumsetzers 13 wird von der Schaltung in der globalen VDD_CPU-Domäne empfangen, während das Ausgabesignal an S1 in der globalen VDD_SRAM-Domäne bereitgestellt wird. Das Isolierungssignal Off_L, das am I-Eingang empfangen wird, empfängt der Pegelumsetzer 13 von der Stromerkennungsschaltung 12.
-
Die Stromerkennungsschaltung 12 in der gezeigten Ausführungsform ist so gekoppelt, dass sie Strom von der Stromquelle Nr. 1 und der Stromquelle Nr. 2 empfängt und erkennt. Während einer Einschaltsequenz für die in 1 dargestellte Ausführungsform der IC 10 kann die Stromquelle Nr. 1 vor der Stromquelle Nr. 2 eingeschaltet werden. Die Stromerkennungsschaltung 12 in der gezeigten Ausführungsform ist so konfiguriert, dass sie das Off_L-Signal sendet, wenn kein Strom von der Stromquelle Nr. 2 erkannt wurde. Da die Eingabeversion von ControlS_ von der globalen CPU-Domäne empfangen wird, kann dieses Signal unbestimmt sein, wenn die Stromquelle Nr. 2 noch nicht vollständig eingeschaltet ist. Ähnlich können auch Signale, die von der virtuellen VDD_CPU-Domäne an die virtuelle VDD_SRAM-Domäne gesendet werden, unbestimmt sein. Diese unbestimmten Signale können zu unerwünschten Vorgängen führen, wie Problemen mit Überspannungsschutzströmen und/oder Konflikten. Dementsprechend kann es wünschenswert sein zu verhindern, dass unbestimmte Signale von einer Stromdomäne in eine andere übergreifen. In der hier dargestellten Ausführungsform der IC 10 können unbestimmte Signale von der virtuellen VDD_CPU-Domäne, die den Betrieb der Schaltung der virtuellen VDD_SRAM-Domäne beeinträchtigen, mithilfe des Pegelumsetzers 13A verhindert werden.
-
Wenn das Aus-Signal gesendet wird, kann das ControlS_-Signal in der globalen VDD_SRAM-Domäne hochgefahren werden, wodurch veranlasst wird, dass S1 in einem inaktiven Zustand (d. h. ausgeschaltet) gehalten wird. Wenn S1 aus ist, empfängt die virtuelle VDD_SRAM-Domäne keinen Strom. Dementsprechend können SRAM 21 und der Pegelumsetzer 14 beide ausgeschaltet sein. Wenn Strom von der Stromquelle Nr. 2 erkannt wird, kann die Stromerkennungsschaltung 12 das Aus-Signal aufheben. Danach kann die Ausgabe des Pegelumsetzers 13A der Eingabeversion von ControlS_ folgen. Wenn die Ausgabeversion von ControlS_ umgesetzt wird (niedrig in dieser Ausführungsform), kann der Leistungsschalter S1 aktiviert werden, wodurch der Schaltung in der virtuellen VDD_SRAM-Domäne, einschließlich des Pegelumsetzers 14, der Ausgabeseite der Pegelumsetzer 13 und dem SRAM 21 Strom bereitgestellt wird. Wenn das ISO-Signal nach dem Einschalten der Stromquelle Nr. 2 aufgehoben wird, können Signale von der virtuellen VDD_CPU-Domäne an die virtuelle VDD_SRAM-Domäne über die Pegelumsetzer 13 übertragen werden. Anderenfalls werden die Ausgaben der Pegelumsetzer 13 unabhängig vom Zustand ihrer jeweiligen empfangenen Eingabesignale in einem vorgegebenen Zustand gehalten.
-
Dementsprechend können die Verwendung des Pegelumsetzers 13A und insbesondere das Bereitstellen des Off_L-Signals an den Pegelumsetzer 13A den vorstehend erwähnten unerwünschten Vorgang während einer Einschaltsequenz, wobei die Stromquelle Nr. 1 vor der Stromquelle Nr. 2 eingeschaltet wird, verhindern. Der unerwünschte Vorgang kann auch verhindert werden, wenn die Schaltung, die mit den virtuellen Spannungsknoten gekoppelt ist, erneut eingeschaltet wird, nachdem sie durch Power-Gate gesteuert wurde (d. h. in einen Schlafmodus versetzt wurde).
-
Alternative Ausführungsformen der IC 10 sind möglich und vorgesehen, wobei das OFF-Signal (Aus) zu den Isolierungseingängen der Pegelumsetzer 13 geleitet werden kann, wenn kein Pegelumsetzer 13A vorhanden ist. In der gezeigten Ausführungsform muss das Off_L-Signal jedoch nur an einen einzigen Pegelumsetzer, den Pegelumsetzer 13A, geleitet werden, was einfacher sein kann.
-
Bezugnehmend auf 2 wird nun eine Prinzipskizze einer Ausführungsform eines Pegelumsetzers 13 dargestellt. Die in 2 dargestellte Ausführungsform kann für jeden der in 1 dargestellten Pegelumsetzer 13 sowie insbesondere für den Pegelumsetzer 13A gelten. Die Besprechung konzentriert sich hier auf den Betrieb des Pegelumsetzers 13A, wie er in der IC 10 von 1 angeordnet ist, obwohl ein ähnlicher Vorgang für die anderen Instanzen des in 1 dargestellten Pegelumsetzers 13 sowie für andere Klemmpegelumsetzer im Allgemeinen, die in der IC 10 implementiert sind, beschrieben werden kann.
-
Es sei erwähnt, dass Transistoren, die hier mit einem P gekennzeichnet sind, (z. B. P1, P2 usw.) PMOS-(p-Kanal-Metalloxidhalbleiter-)-Transistoren sind. Transistoren, die hier mit einem N gekennzeichnet sind, (z. B. N1, N2) sind NMOS-(n-Kanal-Metalloxidhalbleiter-)-Transistoren. Die Transistoren P1, P2, P3 und P4 in der gezeigten Ausführungsform umfassen jeweils einen Drain-Anschluss, der mit dem VDD_SRAM gekoppelt ist, und bezieht sich dies auf den Ausgangsknoten ControlS_ des Pegelumsetzers 13. Der Eingangsknoten Control_S bezieht sich auf die VDD_CPU-Domäne. In den Ausführungsformen von 1 und 2 ist die Betriebsspannung der VDD_SRAM-Domäne (und somit der globalen und virtuellen Knoten, die damit verbunden sind) größer als die Betriebsspannung der VDD_CPU-Domäne.
-
In dem dargestellten Beispiel kann das Eingabesignal ControlS_ (von der VDD_CPU-Domäne) an den jeweiligen Gate-Anschlüssen der Transistoren P5, P6, N1 und N2 empfangen werden. Der Schaltkreis weist auch die Transistoren P2 und P3, die in einer miteinander gekoppelten Konfiguration angeordnet sind, und die Transistoren P1 und P4 auf. Das Isolierungssignal, Off_L, kann an den Eingängen der Transistoren P1 und P4 sowie am Transistor N3 empfangen werden. Das Isolierungssignal, Off_L, ist in dieser Ausführungsform ein aktives niedriges Signal. Wenn das Off_L-Signal niedrig gesendet wird, werden die Transistoren P1 und P4 aktiviert. Wenn P4 aktiviert ist, wird der Ausgangsknoten ControlS_ an die VDD_SRAM-Domäne hoch gehalten. Außerdem wird der Transistor P2 in einem ausgeschalteten Zustand gehalten, wenn P4 aktiv ist. P3 wird in einem ausgeschalteten Zustand gehalten, wenn P1 aktiv ist. Außerdem bleibt N3 aus, wenn das Off_L-Signal niedrig gesendet wird, wodurch jeglicher Pulldown-Pfad zwischen dem ControlS_-Ausgangsknoten und Masse beseitigt wird.
-
Wenn das Off_L-Signal aufgehoben wird (d. h. hoch in dieser Ausführungsform), werden die Transistoren P1 und P4 ausgeschaltet, während der Transistor N3 eingeschaltet wird. Dementsprechend folgt der Zustand des Ausgangsknotens ControlS_ dem Zustand des entsprechenden Eingangsknotens Control_S. Wenn der Eingangsknoten ControlS_ hoch ist, ist der Transistor N1 aktiviert, während der Transistor P5 inaktiv gehalten wird. Der Transistor P6, der mit dem Ausgang des Wechselrichters I1 gekoppelt ist, ist infolge eines hohen Werts des Eingangs ControlS_ auch aktiviert. Wenn der Transistor N1 zusammen mit N3 aktiv ist, wird der mit dem Gate-Anschluss von P3 gekoppelte Knoten niedrig gestellt. Dementsprechend wird auch P3 aktiviert. Wenn sowohl P3 als auch P6 aktiv sind, wird der Ausgangsknoten ControlS_ hoch gestellt. Nochmals bezugnehmend auf 1 bleibt, wenn der Ausgangsknoten ControlS_ hoch ist, der Leistungsschalter S1 aus.
-
Wenn der Eingangsknoten ControlS_ niedrig ist, ist der Transistor P5 aktiviert, während der Transistor N1 deaktiviert ist. Der Komplementär des ControlS_-Eingangsknotens, der vom Ausgangsknoten des Wechselrichters I1 bereitgestellt wird, veranlasst die Aktivierung des Transistors N2, während der Transistor P6 inaktiv gehalten wird. Wenn N2 gleichzeitig wie N3 aktiv ist, wird der Ausgangsknoten ControlS_ niedrig gestellt. Außerdem wird P2 aktiviert, wenn der ControlS_-Ausgangsknoten niedrig ist, da sein Gate-Anschluss damit gekoppelt ist. Da P5 und P2 an diesem Punkt aktiv sind, ist der mit dem Gate-Anschluss von P3 gekoppelte Knoten hoch, und somit ist P3 ausgeschaltet. Wiederum bezugnehmend auf 1, kann, wenn die ControlS_-Ausgabe niedrig ist, der Leistungsschalter S1 aktiviert sein, und somit kann Strom vom globalen VDD_SRAM-Spannungsknoten an den virtuellen VDD_SRAM-Spannungsknoten bereitgestellt werden.
-
3 ist ein Flussdiagramm, das eine Ausführungsform eines Verfahrens zur Vermeidung von Konflikten während eines sequenziellen Einschaltens mehrerer Stromdomänen darstellt. Verfahren 300 kann mit den verschiedenen hier erörterten Vorrichtungsausführungsformen durchgeführt werden, einschließlich Variationen davon, die nicht speziell erwähnt werden. Außerdem ist es möglich und vorgesehen, dass das Verfahren 300 mit anderen Vorrichtungsausführungsformen, die hier nicht erörtert sind, durchgeführt werden kann.
-
Verfahren 300 beginnt mit dem Einschalten einer ersten Stromquelle vor dem Einschalten einer zweiten Stromquelle (Block 305). In der Vorrichtungsausführungsform von 1 kann dies ein Einschalten der Stromquelle Nr. 1 vor dem Einschalten der Stromquelle Nr. 2 nach sich ziehen. Wenn kein Strom von der zweiten Stromquelle (z. B. Stromquelle Nr. 2) erkannt wurde (Block 310, Nein), dann wird ein Anzeigesignal (z. B., Off_L') an einen Pegelumsetzer bereitgestellt (Block 315). Das gesendete Anzeichen veranlasst, dass der Pegelumsetzer einen vorgegebenen Zustand ausgibt, unabhängig vom Zustand des Eingabesignals (das unbestimmt sein kann). Das Verfahren wiederholt dann ein periodisches Durchlaufen zwischen den Blöcken 310 und 315, bis Strom von der zweiten Stromquelle erkannt wird. Wenn Strom von der zweiten Quelle erkannt wird (Block 310, Ja), hebt die Stromerkennungsschaltung das Anzeigesignal auf (Block 320). Im Anschluss an die Aufhebung des Anzeigesignals kann der Pegelumsetzer ein Signal gemäß seinem Eingabesignal ausgeben. Nach dem Aufheben des Anzeigesignals können sowohl der erste als auch der zweite Leistungschalter (z. B. S1 und S2 von 1) aktiviert werden, wodurch beiden virtuellen Spannungsdomänen Strom bereitgestellt wird.
-
Als Nächstes bezugnehmend auf 4 ist ein Blockdiagramm einer Ausführungsform eines Systems 150 dargestellt. In der dargestellten Ausführungsform weist das System 150 mindestens eine Instanz der integrierten Schaltung 10 auf, die mit dem externen Speicher 158 gekoppelt ist. Die integrierte Schaltung 10 ist mit dem einen oder den mehreren Peripheriegeräten 154 und dem externen Speicher 158 gekoppelt. Es ist ebenfalls eine Stromzufuhr 156 bereitgestellt, die der integrierten Schaltung 10 die Versorgungsspannungen sowie dem Speicher 158 und/oder den Peripheriegeräten 154 eine oder mehrere Versorgungsspannungen zuführt. In einigen Ausführungsformen kann mehr als eine Instanz der integrierten Schaltung 10 eingeschlossen sein (und auch mehr als ein externer Speicher 158 kann eingeschlossen sein).
-
Die Peripheriegeräte 154 können jede gewünschte Schaltung aufweisen, abhängig vom Typ des Systems 150. Zum Beispiel kann in einer Ausführungsform das System 150 eine mobile Vorrichtung (z. B. ein persönlicher digitaler Assistent (PDA), ein Smartphone usw.) sein, und die Peripheriegeräte 154 können Vorrichtungen für verschiedene Typen von drahtloser Kommunikation einschließen, wie Wi-Fi, Bluetooth, Mobilfunk, globales Positionsbestimmungssystem usw. Die Peripheriegeräte 154 können auch zusätzlichen Speicher aufweisen, einschließlich RAM-Speicher, Festspeicher oder Plattenspeicher. Die Peripheriegeräte 154 können Benutzerschnittstellen-Vorrichtungen, wie einen Anzeigebildschirm, einschließlich Touchscreens oder Multitouchscreens, Tastatur- oder anderen Eingabevorrichtungen, Mikrofonen, Lautsprechern usw., einschließen. In anderen Ausführungsformen kann das System 150 irgendein Typ von Computersystem sein (z. B. Desktop-Personal-Computer, Laptop, Workstation, Tablet usw.).
-
Der externe Speicher 158 kann jeden Speichertyp einschließen. Zum Beispiel kann der externe Speicher 158 SRAM, dynamischer RAM (DRAM), wie synchroner DRAM (SDRAM), mit doppelter Datenübertragungsrate (DDR, DDR2, DDR3, LPDDR1, LPDDR2 usw.) SDRAM, RAMBUS DRAM usw. sein. Der externe Speicher 158 kann ein oder mehrere Speichermodule einschließen, an denen die Speichervorrichtungen montiert sind, wie einzelne Inline-Speichermodule (SIMMs), duale Inline-Speichermodule (DIMMs) usw.
-
Zahlreiche Variationen und Modifikationen werden Fachleuten bei vollständigem Verständnis der vorstehenden Offenbarung offensichtlich. Die folgenden Ansprüche sollen alle derartigen Variationen und Modifikationen umfassen.