DE112006000386B4 - Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche - Google Patents

Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche Download PDF

Info

Publication number
DE112006000386B4
DE112006000386B4 DE112006000386T DE112006000386T DE112006000386B4 DE 112006000386 B4 DE112006000386 B4 DE 112006000386B4 DE 112006000386 T DE112006000386 T DE 112006000386T DE 112006000386 T DE112006000386 T DE 112006000386T DE 112006000386 B4 DE112006000386 B4 DE 112006000386B4
Authority
DE
Germany
Prior art keywords
clock
ckdoms
sequence
circuit
clock distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112006000386T
Other languages
English (en)
Other versions
DE112006000386T5 (de
Inventor
Michael Portland Rifani
Vaughn Beaverton Grossnickle
Keng Portland Wong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112006000386T5 publication Critical patent/DE112006000386T5/de
Application granted granted Critical
Publication of DE112006000386B4 publication Critical patent/DE112006000386B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Power Sources (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

Vorrichtung, umfassend:
einen Einteiler zum Einteilen einer Sequenz einer Taktverteilung von Taktsignalen an eine Mehrzahl von Taktverteilungsbereichen (CKDOMs) in einer Schaltung gemäß einem Zustandsstatus der Schaltung, der einen Übergang von einem aktiven Zustand in einen inaktiven Zustand oder von einem inaktiven Zustand in einen aktiven Zustand anzeigt; und
eine Steuerung, die an den Einteiler gekoppelt ist und die Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz steuert.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • ERFINDUNGSGEBIET
  • Ausführungsformen der vorliegenden Erfindung betreffen das Gebiet von Mikroprozessoren und insbesondere die Taktverteilung. Insbesondere betrifft die Erfindung eine Vorrichtung und ein Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche sowie die Verwendung in einem System.
  • BESCHREIBUNG DES VERWANDTEN STANDS DER TECHNIK
  • Mit immer weiter zunehmender Geschwindigkeit von Hochleistungs-Mikroprozessoren ist es vorteilhaft, über eine zuverlässige Takterzeugung zu verfügen. Taktsignale werden typischerweise an verschiedene Schaltungselemente im Kern eines Prozessors geleitet. Wenn sich der Leistungszustand des Prozessors ändert, kann das Taktverteilungsnetzwerk Übergänge von einem aktiven Zustand in einen inaktiven Zustand oder umgekehrt durchlaufen. Diese Übergänge können zu großen systemischen Störungen der Leistungszufuhr führen, wodurch empfindliche Schaltungen oder Schaltungen mit gemischten Signalen in dem Prozessor negativ beeinflußt werden können.
  • Bestehende Techniken, die sich auf das Problem der Übergänge der Taktverteilung richten, weisen eine Reihe von Nachteilen auf. Eine Technik besteht darin, spezielle Schaltungen aufzubauen, um den Zuführungsstörungen zu widerstehen. Diese Technik ist kostspielig und beansprucht zusätzliche Silikonflächen. Sie ist möglicherweise auch nicht flexibel genug, um eine Vielzahl von Störungsphänomenen zu handhaben.
  • KURZE BESCHREIBUNG DER ERFINDUNG
  • Es ist somit Aufgabe der Erfindung, eine günstige Vorrichtung und ein Verfahren zum Verringern der systemischen Störungen der Leistungszufuhr während einer Zustandsänderung der Schaltung bereitzustellen.
  • Die Aufgabe wird durch eine Vorrichtung gemäß dem Patentanspruch 1 und ein Verfahren gemäß dem Patentanspruch 11 gelöst. Weiterbildungen sind in den abhängigen Patentansprüchen angegeben.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der Erfindung können am besten durch Bezugnahme auf die folgende Beschreibung und die beigefügten Zeichnungen verstanden werden, welche zur Veranschaulichung von Ausführungsformen der Erfindung verwendet werden. In den Zeichnungen sind:
  • 1A ein Schaubild, welches ein System zeigt, in dem eine Ausführungsform der Erfindung ausgeübt werden kann,
  • 1B ein Schaubild, welches einen Prozessorkern gemäß einer Ausführungsform der Erfindung zeigt,
  • 2 ein Schaubild, welches einen Taktverteilungssequenzer gemäß einer Ausführungsform der Erfindung zeigt,
  • 3 ein Zeitgebungsdiagramm, welches eine Sequenz der Taktverteilung von einem inaktiven Zustand in einen aktiven Zustand gemäß einer Ausführungsform der Erfindung zeigt,
  • 4 ein Zeitgebungsdiagramm, welches eine Sequenz der Taktverteilung von einem aktiven Zustand in einen inaktiven Zustand gemäß einer Ausführungsform der Erfindung zeigt,
  • 5 ein Flußdiagramm, welches einen Prozeß zur Steuerung einer Sequenz der Taktverteilung gemäß einer Ausführungsform der Erfindung zeigt.
  • BESCHREIBUNG
  • Eine Ausführungsform der vorliegenden Erfindung ist eine Technik zur Steuerung einer Taktverteilung an eine Schaltung. Ein Einteiler teilt eine Sequenz einer Taktverteilung von Taktsignalen an eine Mehrzahl von Taktverteilungsbereichen (CKDOMs) in der Schaltung gemäß einem Zustandsstatus der Schaltung ein. Eine Steuerung steuert die Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz.
  • In der folgenden Beschreibung werden zahlreiche spezifische Einzelheiten dargelegt. Es versteht sich jedoch, daß Ausführungsformen der Erfindung ohne diese spezifischen Einzelheiten ausgeführt werden können. In anderen Fällen wurden wohlbekannte Schaltungen, Strukturen und Techniken nicht gezeigt, um das Verständnis dieser Beschreibung nicht zu erschweren.
  • Eine Ausführungsform der Erfindung kann als ein Prozeß beschrieben werden, der in der Regel als Ablaufdiagramm, als Flußdiagramm, als Strukturdiagramm oder Blockdiagramm gezeigt wird. Obwohl ein Ablaufdiagramm die Vorgänge als sequentielle Prozesse beschreiben kann, können viele der Vorgänge parallel oder gleichzeitig ausgeführt werden. Außerdem kann die Reihenfolge der Vorgänge neu geordnet werden. Ein Prozeß ist abgeschlossen, wenn seine Vorgänge vollständig sind. Ein Prozeß kann einem Verfahren, einem Programm, einer Prozedur einem Herstellungs- oder Fertigungsverfahren usw. entsprechen.
  • Eine Ausführungsform der Erfindung ist eine Technik zum Steuern der Taktverteilung an eine Schaltung. Die Schaltung enthält eine Mehrzahl von Taktverteilungsbereichen (CKDOMs). Jeder der CKDOMs verwendet ein von einem Taktgenerator bereitgestelltes Taktsignal. Ein Taktsequenzer steuert eine Sequenz einer Taktverteilung an die CKDOMs, so daß jeder der CKDOMs ein Freigabe- oder Verriegelungssteuersignal empfängt, um je ein Taktsignal zu einer Zeit freizugeben oder zu verriegeln, wenn die Schaltung ihren Zustandsstatus ändert. Durch Verteilung der Taktsignale gemäß einer eingeteilten Sequenz werden die in der Leitung vorliegenden Leistungsstörungen, Überspannungen oder Rauschen verringert, wodurch ein zuverlässiger Betrieb während einer Zustandsänderung der Schaltung bereitgestellt wird.
  • 1A ist ein Diagramm, welches ein System 10 zeigt, in dem eine Ausführungsform der vorliegenden Erfindung ausgeübt werden kann. Das System 10 enthält einen Prozessor 20, ein Chipset 30 und einen Hauptspeicher 40. Das System 10 kann andere Elemente, wie eine Massenspeichervorrichtung (z. B. Compact-Disk-Nur-Lese-Speicher, Hard Drive), Eingabe/Ausgabe-Vorrichtungen (z. B. Maus, Tastatur, Anzeigemonitor) und andere Chipsets enthalten.
  • Der Prozessor 20 stellt jede integrierte Schaltung mit einer Taktverteilung dar. Dazu können große, dichte oder Hochleistungs-Vorrichtungen gehören. Zu Beispielen dieser Vorrichtungen gehören Mikroprozessoren, Medienprozessoren, Netzwerkvorrichtungen, Chipsets, Graphikprozessoren usw. Wenn es sich um einen Mikroprozessor handelt, kann der Prozessor 20 eine zentrale Verarbeitungseinheit jeder Art von Architektur sein, wie beispielsweise Prozessoren, die Hyper-Threading-, Sicherheits- oder Virtualisierungstechniken verwenden, Einfach-Kern-Prozessoren, Mehrfach-Kern-Prozessoren, eingebettete Prozessoren, mobile Prozessoren, Netzwerk-Prozessoren, Mikrosteuerungen, Digitalsignalprozessoren, Superskalarcomputer, Vektorprozessoren, SIMD-(Single Instruction Multiple Data)-Computer, CISC-(Complex Instruction Set)-Computer, RISC-(Reduced Instruction Set)-Computer, VLIW-(Very Long Instruction Word)- oder Hybridarchitektur. Er enthält einen Prozessorkern 25 und eine Bezugstaktquelle 28. Der Prozessor 25 enthält Schaltungen mit sequentiellen Taktverteilungssteuerungsfunktionalitäten. Die Bezugstaktquelle 28 stellt dem Prozessorkern 25 ein stabiles Taktsignal bereit. Beispiele der Bezugstaktquelle 28 können Schaltungen zur Schnittstellenbildung mit externen Kristallosziallatoren oder jede andere Taktquelle sein.
  • Das Chipset 30 ist jedes Chipset, welches integrierte Funktionalitäten bereitstellt, wie Speichersteuerung, Graphikverarbeitung und Eingabe/Ausgabe-Schnittstellen. Beispiele des Chipsets 30 können ein Speichersteuerhub (MCH), ein Eingabe/Ausgabesteuerhub (ICH) und ein Graphik- und Speichersteuerhub (GMCH) umfassen. Der Speicher 40 enthält Anweisungen oder Daten für den Prozessor. Er kann ein Nurlesespeicher (ROM) und ein Direktzugriffsspeicher (RAM), ein Flashspeicher oder jeder andere geeignete Speicher sein, auf den durch den Prozessor zugegriffen werden kann. Das Chipset 30 kann zu dem Prozessor 20 extern oder intern sein. Eine Speichersteuerung kann beispielsweise auf demselben Chip sein wie der Prozessor. Bei Mehrfachkern-Prozessoren kann das Chipset 30 für alle Kerne oder Prozessoren auf dem Chip arbeiten oder verschiedene Abschnitte enthalten, die für verschiedene Kerne oder Prozessoren in dem Chip separat arbeiten.
  • 1B ist ein Diagramm, welches einen Prozessorkern 25 zeigt, in dem eine Ausführungsform der Erfindung ausgeübt werden kann. Der Prozessorkern 25 enthält eine Schaltung 110, einen Taktgenerator 120 und einen Taktverteilungssequenzer 130.
  • Die Schaltung 110 ist jede Schaltung, die Taktsignale von dem Taktverteilungssequenzer 130 empfängt. In einer Ausführungsform weist die Schaltung 110 einen Zustandsstatus auf, der den Status der Betriebszustände der Schaltung angibt. Der Zustandsstatus kann einen Übergang von einem inaktiven Zustand in einen aktiven Zustand oder von einem aktiven Zustand in einen inaktiven Zustand anzeigen. Ein aktiver Zustand ist ein Zustand, in dem die Schaltung 110 normal oder in einem Energie-Ein-Zustand (Power-up) betrieben wird. In dem aktiven Zustand empfängt die Schaltung 110 Taktsignale, um verschiedene Schaltungselemente zu takten. Der inaktive Zustand ist ein Zustand, in dem der Prozessor untätig ist, sich in einem Bereitschaftsmodus oder einem Energie-Aus-Zustand (Power down) befindet. In dem inaktiven Zustand empfängt die Schaltung 110 keine Taktsignale. In der Regel entspricht der aktive Zustand einem vollkommen funktionalen Modus mit hohem Energieverbrauch und der inaktive Zustand entspricht einem Modus mit geringem Energieverbrauch oder einem Bereitschaftsmodus.
  • Die Schaltung 110 enthält N Taktverteilungsbereiche (CKDOMs) 1201 bis 120N . Ein CKCOM umfaßt Schaltungselemente an dem Prozessor 100, der mit einem gemeinsamen Taktsignal arbeitet. Die Schaltungselemente in jedem der CKDOMs können digitale Komponenten, analoge Komponenten oder Komponenten mit gemischtem Modus umfassen. Die Schaltungselemente werden basierend auf einigen Kriterien in CKDOM gruppiert. Zu Beispielen dieser Kriterien gehören Ladungsverteilung von Taktsignalen, Nebensprechstörungen, physische Stelle usw. Die Anzahl der CKDOMs hängt von der Komplexität oder der Taktlast der Schaltung 110 ab. Sie hängt auch von der Einwirkung der gleichzeitigen kapazitiven Schaltlast der Schaltung 110 an dem Taktgenerator 120 ab. In einer Ausführungsform sind die CKDOMs so geformt, daß die Schaltungselemente über das physikalische Layout der Schaltung verteilt oder verstreut sind. Ein Vorteil dieses Gruppierungsschemas besteht darin, daß wenn die CKDOMs sequentiell mit Energie versorgt oder heruntergefahren sind, die Energiesequenz die Versorgungsbelastung gleichmäßig über die gesamte Schaltung verteilt und nicht auf ein kleines Gebiet konzentriert ist.
  • Der Taktgenerator 120 empfängt ein Bezugstaktsignal, wie einen Bustakt, und erzeugt mehrere Taktsignale zu den CKDOMs. Die Frequenz der Ausgabe von dem Taktgenerator 120 kann ein Produkt eines Faktors alpha und der Frequenz der Eingabe an den Taktgenerator 120 sein, wobei alpha jede positive reelle oder ganze Zahl ungleich null sein kann. In der Regel hat das Bussignal die Größenordnung von Megahertz (MHz), während die durch den Taktgenerator 120 erzeugten Taktsignale die Größenordnung Gigahertz (GHz) aufweisen. In einer Ausführungsform umaßt der Taktgenerator 120 eine phasenverriegelte (PLL) Schaltung. Die PLL-Schaltung erzeugt Taktsignale aus dem Bustakt unter Verwendung von im Stand der Technik wohlbekannten Techniken. Die PLL-Schaltung weist in der Regel eine Verriegelungsakquisitionszeit auf, in der die Schaltung versucht, auf ein Taktsignal zu verriegeln. Während dieser Verriegelungsakquisitionszeit wird bevorzugt, daß die Schaltungsumgebung ruhig oder frei von Rauschen ist, so daß die Verriegelung zuverlässig ausgeführt werden kann.
  • Der Taktverteilungssequenzer 130 steuert die Sequenz einer Taktverteilung an die CKDOM in der Schaltung 110. Während des Zustandsübergangs des Systems, ist der Taktverteilungssequenzer 130 der erste, der ein Taktsignal empfängt, so daß er Steueraktionen an die CKDOM bereitstellen kann. Der Taktverteilungssequenzer 130 gibt die Taktverteilung der Taktsignale von dem Taktgenerator 120 an die CKDOMs in der Schaltung 110 sequentiell oder je einen zu einer Zeit frei oder aktiviert sie. Die Aktivierung der Taktverteilung ist über die Zeit verteilt, um die Änderung des Energieverbrauchs zu verteilen. Diese sequentielle Taktverteilung liefert eine graduelle Änderung des Energieverbrauchs. Der Effekt dieser graduellen Änderung während eines Zustandsübergangs besteht darin, einen glatten Übergang des Energieverbrauchs bereitzustellen, was zu einer ruhigen oder weniger rauschbehafteten Umgebung für den Taktgenerator 120 führt.
  • Während des inaktiven Zustands empfangen die CDKOM keine Taktsignale. Für CKDOM mit dynamischen Elementen, die zur Verhinderung von Datenverlust Taktung benötigen, ist der inaktive Zustand in der Regel der Energie-Aus-Zustand, in dem die CKDOM keine Nutzinformationen halten müssen. In diesem Szenario ist die durch den Sequenzer 130 bereitgestellte sequentielle Taktverteilung während des Energie-Ein-Zustands am nützlichsten. Wenn die CKDOMS jedoch statische Elemente enthalten, bei denen während des Bereitschaftsmodus keine Taktung erforderlich ist, kann die sequentielle Taktverteilung entweder während des Energie-Ein-Zustands oder zu jeder anderen Zeitperiode verwendet werden, zu der ein statischer Bereitschaftsmodus annehmbar ist. Der Taktverteilungssequenzer 130 kann daher in allen Anwendungen verwendet werden, in denen ein Änderungszustand, in dem Taktung der Schaltungselemente in den CKDOMs während des inaktiven Zustands nicht erforderlich ist.
  • 2 ist ein Diagramm, das einen Taktverteilungssequenzer 130 gemäß einer Ausführungsform der Erfindung zeigt. Der Taktverteilungssequenzer enthält einen Einteiler 210 und eine Steuerung 250.
  • Der Einteiler 210 teilt eine Sequenz einer Taktverteilung von Taktsignalen an die CKDOMs in der Schaltung 110 gemäß einem Zustandsstatus der Schaltung 110 ein. Die Sequenz der Taktverteilung entspricht einer Sequenz ruhiger Intervalle während der Verriegelungsakquisitionszeit der PLL-Schaltung in dem Taktgenerator 120. Dies hilft bei der Verringerung nachteiliger Effekte von Überspannung oder Energiestörungen, die durch den Übergang des Systemzustands bewirkt werden. Der Einteiler 210 enthält einen Timer 220 und Speicherelemente 2401 bis 240N . Der Timer 220 wird durch den Bustakt getaktet, um Zeitgebungssignale für die Sequenz zu erzeugen. In einer Ausführungsform enthält der Timer 220 N Zähler 2301 bis 230N entsprechend den CKDOMs in der Schaltung 110. Jeder der N Zähler 2301 bis 230N weist ein Zählintervall auf, das einer Warteperiode in der eingeteilten Sequenz für jeden der CKDOMs entspricht. Die Zählintervalle für die N Zähler 2301 bis 230N können abhängig von der Organisation und/oder der Sequenzierungsstrategie der CKDOMs gleich oder verschieden sein. Das Zählintervall des Zählers 230k entspricht der Warteperiode eines CKDOM k nach Freigabe von CKDOM (k – 1). Die Speicherelemente 2401 bis 240N speichern vorprogrammierte Werte, die dem Zählintervall entsprechen. Die vorprogrammierten Werte können fest oder gemäß der Systemkonfiguration oder des Energieverbrauchprofils dynamisch programmierbar sein.
  • Die Steuerung 250 steuert die Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz. Die Steuerung 250 enthält eine Mehrzahl von Taktschaltern 2701 bis 270N und einen Taktfreigeber 260. Die Taktschalter 2701 bis 270N aktivieren oder deaktivieren die Taktverteilung der Taktsignale an die CKDOMs. Die Taktschalter 2701 bis 270N können als einfache Logikgates (UND, ODER) und/oder als Puffer implementiert sein. Der Taktfreigeber 260 gibt die Taktschalter 2701 bis 270N in Reaktion auf die Zeitgebungssignale von dem Einteiler 210 frei oder aktiviert sie. Der Taktfreigeber 260 kann als Decoder oder Schieberegister implementiert sein. Der Taktfreigeber 260 aktiviert die Taktverteilung an die CKDOMs durch Freigabe der Taktschalter 2701 bis 270N , so daß jeder der CKDOMs je ein zugeordnetes Taktsignal zu einer Zeit gemäß der eingeteilten Sequenz empfängt. Der Taktfreigeber 260 deaktiviert die Taktverteilung an die CKDOM durch Deaktivierung der Taktschalter 2701 bis 270N , so daß jeder der CKDOM mit dem Empfang je eines zugeordneten Taktsignals zu einer Zeit gemäß der eingeteilten Sequenz aufhört.
  • 3 ist ein Zeitgebungsdiagramm, das eine Sequenz der Taktverteilung von einem inaktiven Zustand in einen aktiven Zustand gemäß einer Ausführungsform der Erfindung zeigt.
  • Während des inaktiven Zustands werden alle Taktfreigabesignale negiert (z. B. LOW), wodurch angezeigt wird, daß die Taktsignale nicht an die CKDOMs verteilt sind. Wenn der Energiestatus einer Schaltung anzeigt, daß eine Zustandsänderung vorliegt, tritt an Leitung A ein Übergang von dem inaktiven Zustand in den aktiven Zustand auf. An diesem Übergang beginnt die Freigabe einer Sequenz der Taktverteilung mit dem ersten CKDOM. Das Taktfreigabe-1-(CLKEN1)-Signal wird bestätigt (asserted) (z. B. HIGH), was anzeigt, daß das dem ersten CKDOM zugeordnete Taktsignal freigegeben ist. Das CLKEN1-Signal bleibt bestätigt, bis die nächste Zustandsänderung auftritt, wie beispielsweise, wenn es eine Energie-Aus-Sequenz gibt. Die Sequenz der Verteilung dauert bis zum nächsten CKDOM fort. Das Takt-Freigabe-k-(CLKENK)-Signal ist bestätigt (z. B. HIGH), was anzeigt, daß das dem kten CKDOM zugeordnete Taktsignal freigegeben ist. Das Zeitintervall k ist das Zählintervall zwischen den Freigabezeiten von CKDOM (k – 1) und CKDOM k. Es ist die Warteperiode des CKDOM k nach Freigabe von CKDOM (k – 1). Die Sequenz dauert an, bis das letzte CKDOM erreicht ist. Das Zeitintervall N ist das Zählintervall zwischen den Freigabezeiten von CKDOM (N – 1) und CKDOM N. Die Zeitintervalle zwischen aufeinanderfolgenden Freigabezeiten des Taktsignals können abhängig von der Konfiguration der CKDOMs und/oder der Sequenzierungsstrategie dieselben oder unterschiedlich sein.
  • Während der Zeit, zu der die Taktfreigabesignale bestätigt sind, sind die den aktivierten CKDOMs zugeordneten Taktsignale freigegeben. Wie in dem Zeitgebungsdiagramm gezeigt, sind diese Taktsignale (CKDOM1CLK, CKDOMkCLK usw.) gemäß der eingeteilten Sequenz je eines zu einer Zeit aktiviert oder freigegeben.
  • 4 ist ein Zeitgebungsdiagramm, das eine Sequenz der Taktverteilung von einem aktiven Zustand zu einem inaktiven Zustand gemäß einer Ausführungsform der Erfindung zeigt.
  • Während des aktiven Zustands sind alle Taktfreigabesignale (z. B. HIGH) bestätigt, wodurch angezeigt wird, daß die Taktsignale an die CKDOMs verteilt sind. Wenn der Zustandsstatus der Schaltung anzeigt, daß es eine Statusänderung gibt, kommt es an Leitung A zu einem Übergang von dem aktiven Zustand zu dem inaktiven Zustand. An diesem Übergang beginnt die Verriegelung einer Sequenz der Taktverteilung mit dem ersten CKDOM. Das Taktfreigabe-1-(CLLKEN1)-Signal ist negiert (z. B. LOW), was anzeigt, daß das dem ersten CKDOM zugeordnete Taktsignal gesperrt ist. Das CLKEN1-Signal bleibt negiert, bis eine Zustandsänderung auftritt, wie beispielsweise, wenn es eine Energie-Ein-Sequenz gibt. Die Sequenz der Verteilung dauert bis zum nächsten CKDOM an. Das Taktfreigabe-k-(CLKENK)-Signal wird an Leitung B negiert (z. B. LOW), was anzeigt, daß das dem kten CKDOM zugeordnete Taktsignal verriegelt ist. Die Sequenz hält an, bis das letzte CKDOM erreicht wird. Wie in 4 können die Zeitintervalle zwischen aufeinanderfolgenden Verriegelungszeiten der Taktsignale gleich oder unterschiedlich sein.
  • Während der Zeit, wenn die Taktfreigabesignale negiert sind, sind die den aktivierten CKDOMs zugeordneten Taktsignale gesperrt. Wie in dem Zeitgebungsdiagramm gezeigt, sind diese Signale (CKDOM1CLK, CKDOMkCLK usw.) gemäß der eingeteilten Sequenz jeweils eines zu einer Zeit deaktiviert oder gesperrt.
  • 5 ist ein Ablaufdiagramm, das einen Prozeß 500 zur Steuerung einer Taktverteilungssequenz gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • Bei START erzeugt der Prozeß 500 Taktsignale aus einer stabilen Taktquelle, wie ein Bustakt von einem Taktgenerator (Block 510). Als nächstes bestimmt der Prozeß 500, ob es zu einer Zustandsänderung kommt (Block 520). Die Zustandsänderung kann jede geeignete Zustandsänderung auf Systemebene sein, wie beispielsweise Energie-Ein, Energie-Aus, Bereitschaft usw.
  • Dann teilt der Prozeß 500 eine Taktverteilungssequenz der Taktsignale zu den CKDOMs gemäß dem Zustandsstatus der Schaltung ein (Block 530). Dazu erzeugt der Prozeß 500 Zeitgebungssignale aus einer stabilen Taktquelle, wie dem Bustakt für die Sequenz (Block 540). Dies kann durch Erzeugen eines Zählintervalls für jeden CKDOM unter Verwendung eines Zählers erzielt werden (Block 550). Das Zählintervall kann in ein Speicherelement gespeichert werden, wie es in den Zähler eingegeben wird.
  • Danach steuert der Prozeß 500 die Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz (Block 560). Dazu steuert der Prozeß 500 die Taktschalter zur Aktivierung oder Deaktivierung der Taktverteilung in Reaktion auf die Zeitgebungssignale (Block 570). Der Prozeß 500 aktiviert oder deaktiviert die Taktverteilung, so daß jeder der CKDOMs das zugeordnete Taktsignal jeweils zu einer Zeit gemäß der eingeteilten Sequenz empfängt oder anhält (Block 580). Der Prozeß 500 ist dann abgeschlossen.
  • Während die Erfindung hinsichtlich verschiedener Ausführungsformen beschrieben worden ist, wird Durchschnittsfachleuten ersichtlich sein, daß die Erfindung nicht auf die beschriebenen Ausführungsformen beschränkt ist, sondern mit Modifikationen und Abänderungen innerhalb des Schutzumfangs der beigefügten Ansprüche ausgeübt werden kann. Die Beschreibung ist somit als veranschaulichend statt als einschränkend anzusehen.

Claims (21)

  1. Vorrichtung, umfassend: einen Einteiler zum Einteilen einer Sequenz einer Taktverteilung von Taktsignalen an eine Mehrzahl von Taktverteilungsbereichen (CKDOMs) in einer Schaltung gemäß einem Zustandsstatus der Schaltung, der einen Übergang von einem aktiven Zustand in einen inaktiven Zustand oder von einem inaktiven Zustand in einen aktiven Zustand anzeigt; und eine Steuerung, die an den Einteiler gekoppelt ist und die Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz steuert.
  2. Vorrichtung nach Anspruch 1, wobei der Einteiler folgendes umfaßt: einen Timer, der durch einen Bustakt getaktet wird, um Zeitgebungssignale für die Sequenz zu erzeugen.
  3. Vorrichtung nach Anspruch 2, wobei der Timer folgendes umfaßt: eine Mehrzahl von Zählern, jeweils mit einem Zählintervall, das einer Warteperiode in der eingeteilten Sequenz für jeden der CKDOMs entspricht.
  4. Vorrichtung nach Anspruch 2, wobei die Steuerung folgendes umfaßt: eine Mehrzahl von Taktschaltern zur Aktivierung oder Deaktivierung der Taktverteilung der Taktsignale an die CKDOMs; und einen Taktfreigeber zur Freigabe oder Verriegelung der Taktschalter in Reaktion auf die Zeitgebungssignale.
  5. Vorrichtung nach Anspruch 4, wobei der Taktfreigeber die Taktverteilung an die CKDOMs so aktiviert, daß jeder der CKDOMs je ein zugeordnetes Taktsignal zu einer Zeit gemäß der eingeteilten Sequenz empfängt.
  6. Vorrichtung nach Anspruch 4, wobei der Taktfreigeber die Taktverteilung an die CKDOM so deaktiviert, daß jeder der CKDOMs mit dem Empfang je eines zugeordneten Taktsignals zu einer Zeit gemäß der eingeteilten Sequenz aufhört.
  7. Vorrichtung nach Anspruch 1, wobei die Taktverteilung durch einen Taktgenerator bereitgestellt wird, der die Taktsignale an die CKDOMs von einem Bustakt erzeugt.
  8. Vorrichtung nach Anspruch 7, wobei der Taktgenerator eine Phasenverriegelungs-(PLL)-Schaltung mit einer Verriegelungsakquisitionszeit umfaßt.
  9. Vorrichtung nach Anspruch 8, wobei die Sequenz der Taktverteilung einer Sequenz ruhiger Intervalle während der Verriegelungsakquisitionszeit entspricht.
  10. Vorrichtung nach Anspruch 1, wobei der aktive Zustand einem Modus mit hohem Energieverbrauch entspricht und der inaktive Zustand einem Modus mit geringerem Energieverbrauch entspricht.
  11. Verfahren, umfassend: Einteilen einer Sequenz der Taktverteilung von Taktsignalen an eine Mehrzahl von Taktverteilungsbereiche (CKDOMs) in einer Schaltung gemäß einem Zustandsstatus der Schaltung, der einen Übergang von einem aktiven Zustand in einen inaktiven Zustand oder von einem inaktiven Zustand in einen aktiven Zustand anzeigt; und Steuern der Freigabe der Taktverteilung an die CKDOMs gemäß der eingeteilten Sequenz.
  12. Verfahren nach Anspruch 11, wobei die Einteilungssequenz folgendes umfaßt: Erzeugen von Zeitgebungssignalen aus einem Bustakt für die Sequenz.
  13. Verfahren nach Anspruch 12, wobei das Erzeugen der Zeitgebungssignale folgendes umfaßt: Erzeugen eines Zählintervalls entsprechend einer Warteperiode in der eingeteilten Sequenz für jeden der CKDOMs.
  14. Verfahren nach Anspruch 12, wobei das Steuern folgendes umfaßt: Steuern von Taktschaltern zur Aktivierung oder Deaktivierung der Taktverteilung an die CKDOMs in Reaktion auf die Zeitgebungssignale.
  15. Verfahren nach Anspruch 14, wobei das Steuern der Taktschalter das Aktivieren der Taktverteilung an die CKDOMs umfaßt, so daß jeder der CKDOMs je ein zugeordnetes Taktsignal zu einer Zeit gemäß der eingeteilten Sequenz empfangt.
  16. Verfahren nach Anspruch 14, wobei das Steuern der Taktschalter das Deaktivieren der Taktverteilung an die CKDOMs umfaßt, so daß jeder der CKDOMs mit dem Empfang je eines zugeordneten Taktsignals zu einer Zeit gemäß der eingeteilten Sequenz aufhört.
  17. Verfahren nach Anspruch 11, ferner umfassend das Erzeugen der Taktsignale an die CKDOMs aus einem Bustakt durch einen Taktgenerator.
  18. Verfahren nach Anspruch 17, wobei das Erzeugen der Taktsignale das Erzeugen der Taktsignale durch eine Phasenverriegelungs-(PLL)-Schaltung mit einer Verriegelungsakquisitionszeit umfaßt.
  19. Verfahren nach Anspruch 18, wobei das Einteilen das Einteilen der Sequenz der Taktverteilung, so daß sie einer Sequenz von ruhigen Intervallen während der Verriegelungsakquisitionszeit entspricht, umfaßt.
  20. Verfahren nach Anspruch 11, wobei der aktive Zustand einem Modus mit hohem Energieverbrauch entspricht und der inaktive Zustand einem Modus mit geringerem Energieverbrauch entspricht.
  21. System, umfassend: eine Schaltung mit einer Mehrzahl von Taktverteilungsbereichen (CKDOMs); einen Taktgenerator, der mit der Schaltung gekoppelt ist, um den CKDOMs Taktsignale bereitzustellen; und einen Taktsequenzer, der mit dem Taktgenerator und der Schaltung gekoppelt ist, wobei der Taktsequenzer die Vorrichtung nach einem der Ansprüche 1 bis 10 umfaßt.
DE112006000386T 2005-03-04 2006-02-13 Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche Active DE112006000386B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/073,294 2005-03-04
US11/073,294 US7386749B2 (en) 2005-03-04 2005-03-04 Controlling sequence of clock distribution to clock distribution domains
PCT/US2006/005323 WO2006096294A1 (en) 2005-03-04 2006-02-13 Controlling sequence of clock distribution to clock distribution domains

Publications (2)

Publication Number Publication Date
DE112006000386T5 DE112006000386T5 (de) 2008-02-28
DE112006000386B4 true DE112006000386B4 (de) 2009-05-07

Family

ID=36406525

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006000386T Active DE112006000386B4 (de) 2005-03-04 2006-02-13 Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche

Country Status (8)

Country Link
US (1) US7386749B2 (de)
JP (1) JP2008536201A (de)
KR (1) KR100958966B1 (de)
CN (1) CN101133375B (de)
DE (1) DE112006000386B4 (de)
GB (1) GB2436260B (de)
TW (1) TWI324715B (de)
WO (1) WO2006096294A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080155296A1 (en) * 2006-12-22 2008-06-26 Fujitsu Limited Apparatus for controlling clock signals to processor circuit
US7954000B2 (en) * 2008-01-14 2011-05-31 International Business Machines Corporation Power supply current spike reduction techniques for an integrated circuit
US10521265B2 (en) * 2008-09-19 2019-12-31 Microsoft Technology Licensing, Llc Coalescing periodic timer expiration in guest operating systems in a virtualized environment
JP2010176158A (ja) * 2009-01-27 2010-08-12 Hitachi Ltd 情報処理システムおよびそのcpuクロック周波数制御管理方法
US9405347B2 (en) 2009-02-26 2016-08-02 Microsoft Technology Licensing, Llc Power-saving operating system for virtual environment
US8412967B2 (en) * 2009-07-28 2013-04-02 Stmicroelectronics S.R.L. Method of enhancing power saving in an integrated electronic system with distinctly powered islands of functional circuitries and related device architecture
US8713348B2 (en) 2010-08-30 2014-04-29 Mediatek Inc. Apparatus for performing timer management regarding a system timer scheduler service, and associated method
US8909849B2 (en) * 2010-11-15 2014-12-09 Intel Corporation Pipeline architecture for scalable performance on memory
TWI474673B (zh) * 2012-12-06 2015-02-21 Inst Information Industry 工作負載分配裝置及其工作負載分配方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5586307A (en) * 1993-06-30 1996-12-17 Intel Corporation Method and apparatus supplying synchronous clock signals to circuit components

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778993B2 (ja) * 1985-11-05 1995-08-23 株式会社日立製作所 半導体メモリ
JPH04302014A (ja) * 1991-03-28 1992-10-26 Tokyo Electric Co Ltd 論理回路駆動装置
JPH05150870A (ja) * 1991-05-20 1993-06-18 Fujitsu Ltd 演算回路の消費電力低減方式
JPH04349515A (ja) * 1991-05-28 1992-12-04 Nec Corp データ処理装置
US5623647A (en) * 1995-03-07 1997-04-22 Intel Corporation Application specific clock throttling
JPH09237131A (ja) * 1996-03-04 1997-09-09 Fujitsu Ltd 半導体集積回路装置
US6611920B1 (en) * 2000-01-21 2003-08-26 Intel Corporation Clock distribution system for selectively enabling clock signals to portions of a pipelined circuit
JP2001243065A (ja) * 2000-02-28 2001-09-07 Mitsubishi Electric Corp プロセッサ
US6782486B1 (en) 2000-08-11 2004-08-24 Advanced Micro Devices, Inc. Apparatus for stopping and starting a clock in a clock forwarded I/O system depending on the presence of valid data in a receive buffer
DE10041688B4 (de) 2000-08-24 2008-03-27 Infineon Technologies Ag Integrierter Speicher mit Speicherzellen in mehreren Speicherzellenblöcken und Verfahren zum Betrieb eines solchen Speichers
US6779122B2 (en) * 2000-12-26 2004-08-17 Intel Corporation Method and apparatus for executing a long latency instruction to delay the restarting of an instruction fetch unit
US6647540B2 (en) * 2001-11-08 2003-11-11 Telefonaktiebolaget Lm Ericsson(Publ) Method for reducing EMI and IR-drop in digital synchronous circuits
JP2003256066A (ja) * 2002-02-28 2003-09-10 Matsushita Electric Ind Co Ltd クロック供給制御装置
JP2004110718A (ja) * 2002-09-20 2004-04-08 Matsushita Electric Ind Co Ltd 半導体集積回路装置のリセット方法及び半導体集積回路装置
JP2004199115A (ja) * 2002-12-16 2004-07-15 Renesas Technology Corp 半導体集積回路

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5586307A (en) * 1993-06-30 1996-12-17 Intel Corporation Method and apparatus supplying synchronous clock signals to circuit components

Also Published As

Publication number Publication date
US20060200694A1 (en) 2006-09-07
KR20070110400A (ko) 2007-11-16
TWI324715B (en) 2010-05-11
DE112006000386T5 (de) 2008-02-28
TW200705154A (en) 2007-02-01
GB2436260B (en) 2008-09-10
WO2006096294A1 (en) 2006-09-14
KR100958966B1 (ko) 2010-05-20
US7386749B2 (en) 2008-06-10
CN101133375B (zh) 2011-11-23
CN101133375A (zh) 2008-02-27
JP2008536201A (ja) 2008-09-04
GB2436260A (en) 2007-09-19
GB0713059D0 (en) 2007-08-15

Similar Documents

Publication Publication Date Title
DE112006000386B4 (de) Vorrichtung und Verfahren zur Steuerung der Sequenz der Taktverteilung an Taktverteilungsbereiche
DE69532226T2 (de) Taktssteuerungseinheit
DE112004001320B3 (de) Verfahren, System und Vorrichtung zur Verbesserung der Leistung von Mehrkernprozessoren
DE102004012487B4 (de) Strom sparende Steuerschaltung einer elektronischen Vorrichtung und Betriebsverfahren davon
DE102013214907B4 (de) Training, power-gating und dynamische Frequenzänderung eines Speichercontrollers
DE60116650T2 (de) Strommodus-übergang für einen prozessor
DE112007001987B4 (de) Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung
DE102009041723B4 (de) Prozessor-Leistungsverbrauchsteuerung und Spannungsabsenkung über eine Mikroarchitektur-Bandbreitenbegrenzung
DE102020120019A1 (de) Proaktive di/dt-spannungs-dachabfall-abschwächung
DE102010045743B4 (de) Verfahren und Vorrichtung, um Turboleistung für das Event-Handling zu verbessern
DE102013224175B4 (de) Niedrig-Leistungs-Zustände für ein Computer-System mit integriertem Basis-Band
DE102004062911A1 (de) Verfahren zum Betrieb eines Prozessors und zugehöriges Prozessorsystem
DE102012212441B4 (de) Verfahren zum Eintreten in und Verlassen eines Schlafmodus in einer Graphikverarbeitungseinheit
DE102012213635B4 (de) Ereignistriggerungsverfahren während Ruhemodus und verwandte Mobilgeräte
DE102014219905B4 (de) Konfiguration von Leistungsdomänen eines Mikrocontroller-Systems
DE112004000497B4 (de) Reduzierung der CPU- und Bus-Leistung beim Betrieb im Energiesparmodus
DE102009015495A1 (de) Energieverwaltung bei einer Plattform basierend auf der Lenkung über die Wartezeit
DE102014114681A1 (de) Energieverwaltung für eine Bitübertragungsschicht-Schnittstelle Anschliessen eines Bildschirms an ein Anzeige-Übertragungssystem
DE112016001481T5 (de) Unterspannungserkennung und leistungsdrosselung
DE102010053298A1 (de) Synchronisierte Medienverarbeitung
DE112005003133T5 (de) Verminderung hörbarer Geräusche bei Leitungszustandsübergängen
DE112017004361T5 (de) Steuern eines leistungszustands eines prozessors unter verwendung einer kombination von package- und thread-hinweis-informationen
DE102018129330A1 (de) System, Vorrichtung und Verfahren zur prozessorexternen Überschreibung der Hardwareleistungszustandssteuerung eines Prozessors
DE102020131690A1 (de) Energieverwaltung für usb-typ-c-subsysteme
DE112018005673T5 (de) Konfigurierbares leeren von daten aus einem flüchtigen speicher in einen nicht flüchtigen speicher

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition