DE69826863T2 - Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet - Google Patents

Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet Download PDF

Info

Publication number
DE69826863T2
DE69826863T2 DE69826863T DE69826863T DE69826863T2 DE 69826863 T2 DE69826863 T2 DE 69826863T2 DE 69826863 T DE69826863 T DE 69826863T DE 69826863 T DE69826863 T DE 69826863T DE 69826863 T2 DE69826863 T2 DE 69826863T2
Authority
DE
Germany
Prior art keywords
signal
signals
phase
circuit
clock signal
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.)
Expired - Lifetime
Application number
DE69826863T
Other languages
English (en)
Other versions
DE69826863D1 (de
Inventor
Jacob Russel BAKER
A. Troy MANNING
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.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Application granted granted Critical
Publication of DE69826863D1 publication Critical patent/DE69826863D1/de
Publication of DE69826863T2 publication Critical patent/DE69826863T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 

Description

  • Technisches Gebiet
  • Die Erfindung betrifft integrierte Schaltungsbauelemente, insbesondere betrifft sie das Einstellen der zeitlichen Lage eines internen Taktsignals, welches von einem externen Taktsignal abgeleitet ist, so dass das interne Taktsignal zum Zwischenspeichern eines externen digitalen Signals zum optimalen Zeitpunkt benutzt werden kann. Insbesondere betrifft die Erfindung ein Verfahren gemäß Oberbegriff des Anspruchs 1 und ein System gemäß Oberbegriff des Anspruchs 8.
  • Hintergrund der Erfindung
  • Herkömmliche Computersysteme enthalten einen Prozessor, der mit einer Vielfalt von Speicherbauelementen gekoppelt ist, darunter Festspeicher ("ROMs"), die in traditioneller Weise Befehle für den Prozessor speichern, außerdem einen Systemspeicher, in den der Prozessor Daten einschreiben und aus dem er Daten lesen kann. Der Prozessor kann außerdem mit einem externen CACHE-Speicher kommunizieren, bei dem es sich im Allgemeinen um einen statischen Lese-/Schreiber-Speicher ("SRAM") handelt. Ferner kommuniziert der Prozessor mit Eingabegeräten, Ausgabegeräten und Datenspeichergeräten.
  • Prozessoren arbeiten im Allgemeinen bei einer relativ hohen Geschwindigkeit. Prozessoren wie der PentiumR und der Pentium Pro" sind als Mikroprozessoren derzeit für Betriebsgeschwindigkeiten mit Arbeitstakten von mindestens 200 MHz verfügbar. Die übrigen Komponenten des Computersystems jedoch sind mit Ausnahme des SRAM-CACHE-Speichers nicht in der Lage, mit der Geschwindigkeit des Prozessors zu arbeiten. Aus diesem Grund werden die Systemspeicherelemente sowie die Eingabegeräte, die Ausgabegeräte und die Datenspeichergeräte, nicht direkt an den Prozessorbus gekoppelt. Statt dessen werden die Systemspeicher im Allgemeinen mit dem Prozessorbus über eine Speichersteuerung gekoppelt, und die Eingabegeräte, Ausgabegeräte und Datenspeichergeräte werden mit dem Prozessorbus über eine sogenannte Busbrücke gekoppelt. Die Speichersteuerung ermöglicht es den Systemspeichergeräten, bei einer Taktfrequenz betrieben zu werden, die wesentlich geringer ist als die Taktfrequenz des Prozessors. In ähnlicher Weise ermöglicht es die Busbrücke den Eingabegeräten, Ausgabegeräten und Datenspeichergeräten, bei einer Frequenz zu arbeiten, die wesentlich niedriger ist als die Taktfrequenz des Prozessors. Derzeit lässt sich beispielsweise ein Prozessor mit einer Taktfrequenz von 200 MHz auf einer Mutterplatine anbringen, die mit einer Taktfrequenz von 66 MHz zum Steuern der Systemspeichergeräte sowie anderen Komponenten arbeitet.
  • Zugriff zu dem Systemspeicher ist ein häufiger Arbeitsvorgang für den Prozessor. Die für den Prozessor, der zum Beispiel mit 200 MHz arbeitet, aufzubringende Zeit zum Lesen von Daten aus oder zum Schreiben von Daten in ein Systemspeicherbauelement, das zum Beispiel bei 66 MHz arbeitet, verlangsamt beträchtlich die Geschwindigkeit, mit der der Prozessor seine Operationen ausführen kann. Fraglich wurden beträchtliche Anstrengungen unternommen, um die Arbeitsgeschwindigkeit der Systemspeicherbauelemente zu steigern.
  • Systemspeicherbauelemente sind im Allgemeinen dynamische Schreib-/ Lese-Speicher ("DRAMs"). Am Anfang waren DRAMs asynchron und arbeiteten folglich nicht mit der gleichen Taktgeschwindigkeit wie die Mutterplatine. Tatsächlich erforderte ein Zugriff auf asynchrone DRAMs häufig Wartezustände, um den Prozessor solange anzuhalten, bis der DRAM einen Speichertransfer abgeschlossen hatte. Allerdings wurde die Arbeitsgeschwindigkeit von asynchronen DRAMs erfolgreich gesteigert durch Innovationen wie zum Beispiel den Burst- und Page- Modus von DRAMs, die es nicht erforderlich machten, für jeden Speicherzugriff dem DRAM eine Adresse anzubieten. In jüngerer Zeit wurden synchrone dynamische Schreib-/ Lese-Speicher ("SDRAMs") entwickelt, die den Datentransfer bei der Taktgeschwindigkeit der Mutterplatine im Pipeline-Betrieb ermöglichen. Allerdings sind sogar SDRAMs typischerweise nicht im Stande, bei der Taktgeschwindigkeit der derzeit verfügbaren Prozessoren zu arbeiten. Damit können SDRAMs nicht direkt an den Prozessorbus gekoppelt werden, sie müssen vielmehr eine Schnittstelle mit dem Prozes sorbus über eine Speichersteuerung, eine Busbrücke oder eine ähnliche Einrichtung aufweisen. Die Diskrepanz zwischen der Betriebsgeschwindigkeit des Prozessors und derjenigen der SDRAMs ist immer noch eine Begrenzung für die Geschwindigkeit, mit der Prozessoren Operationen abschließen können, die einen Zugriff zum Systemspeicher erfordern.
  • Eine Lösung dieser Betriebsgeschwindigkeit-Diskrepanz wurde in Form einer Computerarchitektur vorgeschlagen, die unter der Bezeichnung "SyncLink" bekannt ist. Bei der SyncLink-Architektur kann der Systemspeicher direkt über den Prozessorbus mit dem Prozessor gekoppelt werden. Anstatt dass es erforderlich ist, getrennte Adressen- und Steuersignale an den Systemspeicher zu geben, empfangen SyncLink-Speicherbauelemente Befehlspakete, die sowohl Steuer- als auch Adresseninformation enthalten. Das SyncLink-Speicherbauelement gibt dann Daten auf den Datenbus oder empfängt Daten vom Datenbus, der direkt mit den Datenbusabschnitt des Prozessorbusses gekoppelt ist.
  • Ein Beispiel für ein Computersystem 10 mit einer SyncLink-Architektur ist in 1 gezeigt. Das Computersystem 10 enthält einen Prozessor 12 mit einem Prozessorbus 14, an den drei paketierte Schreib-/ Lese-Speicher oder SyncLink-DRAMs ("SLDRAM") – Bauelemente 16a–c gekoppelt sind. Das Computersystem 10 enthält weiterhin ein oder mehrere Eingabegeräte 20, zum Beispiel eine Tastatur oder eine Maus, an den Prozessor 12 über eine Busbrücke 22 und einen Erweiterungsbus 24 gekoppelt, beispielsweise in Form eines Industrienormarchitektur-Busses ("ISA") oder eines Peripheriekomponenten-Verbindungsbusses ("PCI"). Die Eingabegeräte 20 ermöglichen einem Bediener oder einem elektronischen Gerät, Daten in das Computersystem 10 einzugeben. Ein oder mehrere Ausgabegeräte 30 sind mit dem Prozessor 12 gekoppelt, um von dem Prozessor 12 generierte Ausgabedaten anzuzeigen oder anderweitig auszugeben. Die Ausgabegeräte 30 sind mit dem Prozessor 12 über den Erweiterungsbus 24, die Busbrücke 22 und den Prozessorbus 14 gekoppelt. Beispiele für Ausgabegeräte 24 sind Drucker und Videoanzeigeeinheiten. Ein oder mehrere Datenspeichergeräte 38 sind mit dem Prozessor 12 über den Prozessorbus 14, die Busbrücke 22 und den Erweiterungsbus 24 gekoppelt, um Daten in ein (nicht dargestelltem) Speichermedium zu speichern oder Daten aus ihm zu holen. Beispiele für Speichergeräte oder- Bauelemente 38 sowie Speichermedien enthalten Festplattenlaufwerke, Floppy-Disc-Laufwerke, Bandkassetten und CD-ROM-Laufwerke.
  • In Betrieb kommuniziert der Prozessor 12 mit den Speichergeräten 16a–c über den Prozessorbus 14, indem er den Speichergeräten 16a–c Befehlspakete sendet, die sowohl Steuer- als auch Adresseninformation enthalten. Daten werden zwischen dem Prozessor 12 und den Speichergeräten 16a–c über einen Datenbusteil des Prozessorbusses 14 übermittelt. Obschon sämtliche Speichergeräte 16a–c an die gleichen Leiter des Prozessorbusses 14 gekoppelt sind, führt nur ein Speichergerät 16a–c zu gegebener Zeit das Lesen oder das Schreiben von Daten aus und vermeidet damit einen Streit um den Prozessorbus 14. Ein Streit um den Bus wird dadurch vermieden, dass jedes Speichergerät 16a–c an der Busbrücke 22 eine eindeutige Kennung besitzt und das Befehlspaket einen Erkennungscode beinhaltet, der nur eine dieser Komponenten auswählt.
  • Das Computersystem 10 enthält ferner eine Anzahl weiterer Komponenten und Signalleitungen, die in 1 aus Gründen der Knappheit weggelassen sind. Wie unten erläutert werden wird, empfangen beispielsweise die Speicherbauelemente 16a–c ein externes Taktsignal CKEXT, um interne Zeitsteuersignale bereitzustellen, ein Datentaktsignal DCLK, welches Daten in die Speicherbauelemente 16a–c hinein oder aus ihnen heraus taktet, und ein Signal FLAG, welches den Beginn eines Befehlspaketes signalisiert.
  • Eines der Speicherbauelemente 16a ist in 2 in Form eines Blockdiagramms dargestellt. Das Speicherbauelement 16a enthält eine Taktgeneratorschaltung 40, die ein Mastertaktsignal CKEXT empfängt und ein internes Taktsignal CKINT sowie eine große Anzahl weiterer Takt- und Zeitsteuersignale zum Steuern des zeitlichen Ablaufs verschiedener Operationen innerhalb des Speicherbauelements 16 erzeugt. Das Speicherbauelement 16 enthält außerdem einen Befehlspuffer 46 und eine Adresseneingangsschaltung 48, die ein internes Taktsignal CKINT, ein Befehlspaket beziehungsweise CA0–CA9 auf einem 10-Bit-Befehlsbus 50 und ein Signal FLAG auf der Leitung 52 empfangen. Die (nicht dargestellte) Speichersteuerung oder eine andere Einrichtung sendet normalerweise das Befehlspaket CA0–CA9 synchron mit dem externen Taktsignal CKEXT an das Speicherbauelement 16a. Wie oben ausgeführt, enthält das Befehlspaket Steuer- und Adresseninformation für jeden Speichertransfer, und das Signal FLAG kennzeichnet den Start eines Befehlspakets, welches mehr als ein 10 Bits umfassendes Paketwort beinhalten kann. Tatsächlich wird ein Befehlspaket im Allgemeinen in der Form einer Folge von 10-Bit-Paketwörtern auf dem 10-Bit-Befehlsbus 50 gebildet. Der Befehlspuffer 46 empfängt das Befehlspaket von dem Bus 50 und vergleicht zumindest einen Teil des Befehlspakets mit Kennungsdaten von einem ID-Register 56, um festzustellen, ob das Befehlspaket an das Speicherbauelement 16a oder ein anderes Speicherbauelement 16b, c gerichtet ist. Wenn der Befehlspuffer 46 feststellt, dass das Befehlspaket an das Speicherbauelement 16a gerichtet ist, gibt er ein Befehlswort an eine Befehlsdekodier- und Ablaufsteuerung 60. Die Befehlsdekodier- und Ablaufsteuerung 60 generiert eine große Anzahl interner Steuersignale zum Steuern des Betriebs des Speicherbauelements 16a während eines Speichertransfers.
  • Die Adresseneingangsschaltung 48 empfängt außerdem die Befehlswörter von dem Befehlsbus 50 und gibt eine 20 Bits umfassende Adresse aus, die der Adresseninformation in dem Befehlspaket entspricht. Die Adresse wird an eine Adressenablaufsteuerung 64 gegeben, die eine entsprechende 3 Bits umfassende Bankadresse auf einen Bus 66, eine 10 Bits umfassende Reihenadresse auf einen Bus 48 und eine 7 Bits umfassende Spaltenadresse auf einen Bus 70 gibt. Die Spaltenadresse und die Reihenadresse werden von Spalten- und Reihenadresspfaden 73, 75 in der unten beschriebenen Weise verarbeitet.
  • Eines der Probleme bei herkömmlichen DRAMs ist deren relativ geringe Geschwindigkeit, bedingt durch die Zeit, die zum Voraufladen und Ausgleichen der Schaltung innerhalb des DRAM-Arrays benötigt wird. Der in 2 dargestellte paketierte DRAM 16a vermeidet dieses Problem in starkem Maß durch Verwendung mehrerer Speicherbänke 80, im vorliegenden Fall von acht Speicherbänken 80a–h. Nachdem ein Speicher-Lesevorgang aus einer Bank 80a stattgefunden hat, kann diese Bank 80a voraufgeladen werden, während ein Zugriff auf die übrigen Bänke 80b–h erfolgt. Jede der Speicherbänke 80a–h empfängt eine Reihenadresse von einem zugehörigen Reihen-Zwischenspeicher/ Dekodieren/ Treiber 80a–h. Sämtliche Reihen-Zwischenspeicher/ Dekodierer/ Treiber 80a–h empfangen von einem Vordekodierer 84 die gleiche Reihenadresse, wobei der Vordekodierer seinerseits eine Reihenadresse von entweder einem Reihenadressenregister 86, einer Redundanzreihenschaltung 87 oder einem Auffrischungszähler 88 empfängt, was durch einen Multiplexer 90 festgelegt wird. Allerdings ist zu jeweils einem Zeitpunkt nur eine der Reihen-Zwischenspeicher/ Dekodierer / Treiber 80a–h aktiv, was durch eine Banksteuerlogik 94 als Funktion einer von einem Bankadressenregister 96 kommenden Bankadresse festgelegt wird.
  • Die Spaltenadresse auf dem Bus 70 wird über einen Spaltenadressenpfad 75 auf eine Redundanzspaltenschaltung 71 gegeben, die feststellt, ob die Spaltenadresse einer defekten Adresse entspricht. Die Redundanzspaltenschaltung 71 gibt entweder die Spaltenadresse oder eine redundante Spaltenadresse an einen Spalten-Zwischenspeicher/ Dekodierer 100, der an eine E/A-Verknüpfungsschaltung 102 E/A-Gattersignale liefert. Die E/A-Verknüpfungsschaltung 102 bildet eine Schnittstelle bezüglich der Spalten der Speicherbänke 80a–h über Leseverstärker 104. Daten werden in die und aus den Speicherbänken 80a–h über die Leseverstärker 104 und die E/A-Verknüpfungsschaltung 102 zu ein Datenpfad-Subsystem 108 gekoppelt, welches einen Lesedatenpfad 110 und einen Schreibdatenpfad 112 enthält. Der Lesedatenpfad 110 enthält eine Bank von Gleichstrom-Leseverstärkern 103 und einen Lesezwischenspeicher 120, die Daten von der E/A-Verknüpfungsschaltung 102 empfangen und speichern. In dem in 2 gezeigten Speicherbordelement 16a werden 64 Datenbits in dem Lesezwischenspeicher 120 gespeichert. Der Lesezwischenspeicher liefert dann vier 16-Bit-Datenwörter an einen Ausgangsmultiplexer 122, der sequentiell jedes der 16-Bit-Datenwörter an einen Lese-FIFO-Puffer 124 liefert. Aufeinanderfolgende 16-Bit-Datenwörter werden von einem Taktsignal RCLK, welches aus dem internen Takt CKINT mit Hilfe einer programmierbaren Verzögerungsschaltung 126 erzeugt wird, durch den Lese-FIFO-Puffer 124 getaktet. Der Lese-FIFO-Puffer 124 legt sequentiell die 16- Bit-Datenwörter an eine Treiberschaltung 128, die ihrerseits die 16-Bit-Datenwörter an einen Datenbus 130 legt, der Bestandteil des Prozessorbusses 14 ist.
  • Der Schreibdatenpfad 112 enthält einen Empfangspuffer 140, der an den Datenbus 130 gekoppelt ist. Der Empfangspuffer 140 legt sequentiell 16-Bit-Wörter von dem Datenbus 130 an vier Eingangsregister 142, von denen jedes selektiv durch ein Signal von einer Taktgeneratorschaltung 144 freigegeben wird, ansprechend auf den Datentakt DCLK, der über die Leitung 132 an das Speicherbauelement 16a gegeben wird. Wie bei dem externen Taktsignal CKEXT und dem Befehlspaket CA0–CA9 sendet die Speichersteuerung oder ein anderes Bauteil (nicht dargestellt) normalerweise die Daten synchron mit dem Datentaktsignal DCLK an das Speicherbauelement 16a. Auf diese Weise speichern die Eingangsregister 142 sequentiell vier 16-Bit-Datenwörter und kombinieren sie zu einem 64-Bit-Datenwort, das an ein Schreib-FIFO-Puffer 148 gelegt wird. Der Schreib-FIFO-Puffer 148 wird von einem Signal aus dem Taktgenerator 144 und einem internen Schreibtakt WCLK getaktet, um 64-Bit-Schreibdaten in einen Schreibzwischenspeicher und -Treiber 150 zu bringen. Der Schreibzwischenspeicher und -Treiber 150 legt die 64-Bit-Schreibdaten an eine der Speicherbänke 80a–h, und zwar über die E/A-Verknüpfungsschaltung 102 und die Leseverstärker 104.
  • Wie oben ausgeführt, besteht ein wichtiges Ziel in der SyncLink-Architektur darin, einen Datentransfer zwischen einem Prozessor und einem Speicherbauelement mit einer deutlich höheren Geschwindigkeit abzuwickeln. Wenn allerdings die Rate des Datentransfers größer wird, wird es auch schwieriger, die Synchronisation zwischen Signalen, die an das Speicherbauelement 16a gesendet werden, aufrecht zu erhalten. Beispielsweise wird, wie oben ausgeführt wurde, das Befehlspaket CA0–CA9 normalerweise synchron mit dem externen Taktsignal CKEXT an das Speicherbauelement 16a gesendet, und normalerweise werden die Daten zu dem Speicherbauelement 16a synchron mit dem Datentaktsignal DCLK gesendet. Aufgrund der ungleichen Signalverzögerungen und weiterer Faktoren kann allerdings das Befehlspaket CA0–CA9 nicht synchron mit dem externen Taktsignal CKEXT an dem Speicherbauele ment 16a ankommen, und möglicherweise kommen die Daten am Speicherbauelement 16a synchron mit dem Datensignal DCLK an. Selbst dann, wenn diese Signale tatsächlich synchron zueinander an das Speicherbauelement 16a gekoppelt werden, verlieren sie möglicherweise ihre Synchronisation, nachdem sie an Schaltungsteile innerhalb des Speicherbauelements gekoppelt sind. Beispielsweise erfordern interne Signale Zeit, um zu verschiedenen Schaltungsteilen innerhalb des Speicherbauelements 16a zu gelangen. Unterschiedliche Längen des Signalverlaufs können zu Differenzen in den Zeiten führen, innerhalb derer Signale die jeweilige Schaltung erreichen. Unterschiede in der kapazitiven Aufladung von Signalleitungen können ebenfalls Differenzen in den Zeiten hervorrufen, zu denen Signale die Schaltungsteile erreichen. Diese Unterschiede in den Ankunftszeiten können bei höheren Betriebsgeschwindigkeiten noch deutlicher werden und letztlich die Betriebsgeschwindigkeit von Speicherbauelementen begrenzen.
  • Wie oben ausgeführt, werden die oben angesprochenen Problem noch verschärft, wenn Zeitsteuertoleranzen bei höheren Datentransferraten noch gravierender werden. Wenn z. B. der von dem externen Takt CKEXT abgeleitete interne Takt CKINT das Befehlspaket CA0–C9 nicht zur richtigen Zeit zwischenspeichert, kann dies zu Fehlern beim Betrieb des Speicherbauelements führen. Ähnlich gilt: wenn der Datentakt DCLK die an das Speicherbauelement angelegten Daten nicht zur passenden Zeit eintaktet, kann es zu Datenfehlern kommen.
  • Unglücklicherweise gibt es bislang kein geeignetes Mittel, um sicherzustellen, dass digitale Signale, beispielsweise die Befehlspakete CA0–CA9 und digitale Signale, in Speicherbauelementen wie beispielsweise dem in 2 gezeigten DRAM, auch bei sehr hohen Datentransfergeschwindigkeiten zur richtigen Zeit zwischengespeichert werden.
  • Obschon die obige Diskussion das Erfordernis schnellerer Befehlspuffer in paketierten DRAMs betrifft, gibt es ähnliche Probleme bei anderen Speicherbauelementen, beispielsweise asynchronen DRAMs und synchronen DRAMs, die Steuer- und andere Signale bei hoher Verarbeitungsgeschwindigkeit verarbeiten müssen.
  • Die US-A-3 633 174 offenbart ein Verfahren und ein System gemäß dem Oberbegriff des Anspruchs 1 bzw. des Anspruchs 8. Die vorliegende Erfindung schafft ein Verfahren und ein System gemäß den unabhängigen Patentansprüchen. Bevorzugte Ausführungsformen sind durch die abhängigen Ansprüche definiert.
  • Obschon das erfindungsgemäße System zum adaptiven Einstellen der zeitlichen Lage eines internen Taktsignals von jeder integrierten Schaltung genutzt werden kann, ist es besonders gut angepasst zur Verwendung in einem Speicherbauelement, beispielsweise einem paketierten dynamischen Schreib-/Lesespeicher, um das Eintakten von an das Speicherbauelement gelegten Befehlen zu steuern. Die Erfindung kann in einer Vielfalt von Systemen verwirklicht werden, die in adaptiver Weise die Phase eines internen Taktsignals in Relation zu einem externen Taktsignal einstellen. Die Systeme können durch wiederholtes Empfangen eines digitalen Signals arbeiten, von denen jedes ansprechend auf einzelne Phasen des internen Taktsignals zwischengespeichert wird. Die zwischengespeicherten digitalen Signale werden dann darauf überprüft, ob sie den empfangenen digitalen Signalen entsprechen. Dann wird eine Phase des internen Taktsignals aus dem Bereich von Phasen des internen Taktsignals ausgewählt, der exakt die jeweiligen digitalen Signale eingetaktet hat. Vorzugsweise enthält das System eine Taktgeneratorschaltung, die das interne Taktsignal generiert. Das interne Taktsignal besitzt eine Phasenrelation zu dem externen Taktsignal, die durch ein Phasenbefehlssignal bestimmt wird. Das interne Taktsignal triggert eine Zwischenspeicherschaltung, beispielsweise ein Schieberegister. Die Zwischenspeicherschaltung ist mit einem der Eingangsanschlüsse der integrierten Schaltung gekoppelt, so dass der Zwischenspeicher ein an den Eingangsanschluss angelegtes Eingangssignal ansprechend auf einen Übergang des internen Taktsignals speichert. Das Zeitsteuersystem enthält außerdem eine Ladesteuerschaltung, die mehrere Phasenbefehlssignale ansprechend auf das Speichern mehrerer Eingangssignale in dem Zwischenspeicher generiert. Jedes der Phasenbefehlssignale entspricht einer anderen Phase des internen Taktsignals. Eine Auswerteschaltung, die an den Zwischenspeicher gekoppelt ist, empfängt eine Mehrzahl von zwischengespeicherten Signalen und stellt fest, ob jedes dieser Signale von dem Zwischenspeicher exakt aufgenommen wurde. Die Auswerteschaltung generiert mehrere Ergebnissignale, kennzeichnend dafür, ob jedes der zwischengespeicherten Signale von dem Zwischenspeicher exakt aufgenommen wurde. Die Ergebnissignale werden dann in einem Register gespeichert, welches an die Auswerteschaltung und die Laststeuerschaltung gekoppelt ist. Eine Analyseschaltung, die mit dem Register gekoppelt ist, untersucht die in dem Register gespeicherten Ergebnissignale, und aufgrund der Untersuchung der gespeicherten Ergebnissignale erzeugt sie das Phasenbefehlssignal und legt es kontinuierlich an die Taktgeneratorschaltung an.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm eines herkömmlichen Computersystems, welches von mehreren paketierten SynkLink-Speicherbauelementen Gebrauch macht.
  • 2 ist ein Blockdiagramm eines herkömmlichen paketierten DRAMs, das in dem in 1 gezeigten Computersystem eingesetzt ist.
  • 3 ist ein Blockdiagramm einer bevorzugten Ausführungsform eines Teils einer Befehlspuffer- und Taktgeneratorschaltung gemäß der Erfindung, die in dem in 2 gezeigten paketierten DRAM einsetzbar ist.
  • 4 ist ein detaillierteres Blockdiagramm des Teils der in 3 dargestellten Befehlspuffer- und Taktgeneratorschaltung.
  • 5 ist ein Logikdiagramm und ein Blockdiagramm der Taktsteuerschaltung, die in der in 4 gezeigten Taktgeneratorschaltung eingesetzt wird.
  • 6 ist ein Impulsdiagramm, welches verschiedene Signale veranschaulicht, die in der in 5 gezeigten Taktsteuerschaltung auftreten.
  • 7A und 7B bilden ein Blockdiagramm einer Ausführungsform einer in der Taktsteuerschaltung nach 5 verwendeten Phasensteuerschaltung.
  • 8 ist ein Logikdiagramm und eine schematische Darstellung einer Auswerteschaltung, die in der in den 7A und 7B dargestellten Phasensteuerschaltung eingesetzt wird.
  • 9 ist ein Logikdiagramm und eine schematische Darstellung eines Registers sowie eines Signalwählers, die in der in 7A und 7B dargestellten Phasensteuerschaltung verwendet werden.
  • 10 ist ein Logikdiagramm einer Betriebsabschaltung einer Selektorsteuerschaltung, die in der in den 7A und 7B dargestellten Phasensteuerschaltung eingesetzt werden.
  • 11 ist ein Logikdiagramm einer Nulldetektorschaltung, die in der in den 7A und 7B gezeigten Phasensteuerschaltung eingesetzt wird.
  • 12 ist ein Logikdiagramm einer Zähler- und Vordekodiererschaltung, die in der in den 7A und 7B gezeigten Phasensteuerschaltung verwendet wird.
  • 13 ist ein Logikdiagramm einer Dekodierschaltung, die in der Phasensteuerschaltung nach den 7A und 7B eingesetzt wird.
  • 14 ist ein Logikdiagramm sowie eine schematische Darstellung eines Ergebnisauswahlkodierers, der in der Phasensteuerschaltung nach den 7A und 7B eingesetzt wird.
  • 15 ist ein Logikdiagramm einer Multiplexerschaltung, die in der Phasensteuerschaltung der 7A und 7B verwendet wird.
  • 16 ist ein Logikdiagramm einer Zwischenspeicherschaltung, die in der Phasensteuerschaltung nach den 7A und 7B verwendet wird.
  • Detaillierte Beschreibung der Erfindung
  • Eine Ausführungsform einer Befehlspuffer- und Taktsteuerschaltung 200 gemäß der Erfindung ist in 3 dargestellt. Die Befehlspuffer- und Taktsteuerschaltung 200 kann anstelle des in 2 dargestellten Befehlspuffers 46 und Taktgenerators 40 verwendet werden, und das dadurch erhaltene Speicherbauelement kann in dem in 1 dargestellten Computersystem eingesetzt werden. Gemäß 3 wird ein aus mehreren Paketwörtern bestehendes Befehlspaket CA über einen Befehlsbus 204 an ein Schieberegister 202 gelegt. Die Breite des Busses 204 entspricht der Größe des Schieberegisters 202, und die Anzahl von Paketwörtern in dem Befehlspaket entspricht der Anzahl von Stufen des Schieberegisters 202. Bei der in 3 gezeigten Ausführungsform besitzt das Schieberegister 202 vier Stufen, von denen jede eine Breite von 10 Bits hat. Damit empfängt das Schieberegister 202 sequenziell vier 10-Bit-Paketwörter CA<0:9>. Jedes der vier Paketwörter wird ansprechend auf jeden von mehreren Impulsen SCHIEBEN in das Schieberegister 202 und dann von einer Registerstufe zur nächsten geschoben.
  • Übereinstimmend mit dem Beginn eines vier Paketwörter umfassenden Befehlspakets wird an eine Zeitsteuerschaltung 206 ein Signal FLAG gelegt. Das Signal FLAG gibt die Zeitsteuerschaltung 206 frei zum Erzeugen der Impulse SCHIEBEN ansprechend auf dem internen Taktsignal ICLK. Nachdem vier Paketwörter in das Schieberegister 202 geschoben sind, erzeugt die Steuerschaltung 206 ein Signal LADEN, welches an ein Speicherregister 208 gelegt wird. Das Speicherregister 208 wird dann mit sämtlichen in dem Schieberegister 202 gespeicherten Daten geladen. Bei der in 3 gezeigten Ausführungsform, bei der vier 10-Bit-Paketwörter in das Schieberegister 202 geschoben werden, empfängt das Speicherregister 208 ein 40 Bits umfassendes Befehlswort und speichert es. Allgemeiner gesprochen besitzt aber das Schieberegister 202 N-Stufen mit jeweils einer Breite von M-Bits, und das Speicherregister 208 lädt ein M*N-Bit-Befehlswort. Nach dem Laden des Speicherregister 208 gibt dieses kontinuierlich das M*N-Bit-Befehlswort Y<0:39> aus.
  • Wie oben erläutert, ist es bei hohen Betriebsgeschwindigkeiten von Bedeutung, dass das Signal SCHIEBEN zur richtigen Zeit an das Schieberegister 202 gelegt wird, damit es die Signale auf dem Befehlsbus 204 korrekt dann eintaktet, wenn zulässige Paketwörter am Befehlsbus 204 anstehen. Wenn beispielsweise das Schieberegister 202 von Impulsen SCHIEBEN während eines Übergangs von einem Paketwort zum nächsten getaktet wird, werden verfälschte Daten in das Schieberegister 202 geschoben. Besonders schwierig ist es, sicherzustellen, dass die Impulse SCHIEBEN zur richtigen Zeit erzeugt werden, weil die Ausbreitungsverzögerung sowohl des externen Taktsignals CKEXT als auch des Befehlspakets CA entweder schwer vorherzusagen oder schwer zu steuern ist. Selbst wenn die Ausbreitungsverzögerung sowohl des externen Taktsignals CKEXT als auch des Befehlspakets CA präzise steuerbar wäre, wäre es schwierig, die Ausbreitungsverzögerung dieser Signale innerhalb des Speicherelements unter Verwendung der Befehlspuffer- und Taktgeneratorschaltung 200 präzise zu steuern oder vorherzusagen.
  • Die Befehlspuffer- und Taktgeneratorschaltung 200 nach 3 kann die zeitliche Lage der Impulse SCHIEBEN mit Hilfe einer Taktsteuerschaltung 210, die das interne Taktsignal ICLK aus dem externen Taktsignal CKEXT generiert, exakt steuern. Insbesondere steuert die Taktsteuerschaltung 210 adaptiv das externe Taktsignal CKEXT und erzeugt das interne Taktsignal ICLK derart, dass die Impulse SCHIEBEN zur richtigen Zeit an das Schieberegister 202 gelangen. Wie im Folgenden näher erläutert werden wird, wird während der Initialisierung eines Speicherbauelements mit Hilfe der Befehlspuffer- und Taktgeneratorschaltung 200 ein Initialisierungspaket mit einem bekannten Datenmuster zusammen mit dem externen Taktsignal CKEXT und dem Signal FLAG an das Schieberegister 202 gelegt. Nachdem die vier Paketwörter jedes Initialisierungspaket in das Schieberegister 202 geschoben und im Speicherregister 208 gespeichert sind, werden die Bits jedes Paketworts an die Taktsteuerschaltung 210 gelegt. Die Taktsteuerschaltung 210 ermittelt dann, ob das Schieberegister erfolgreich war beim Einfangen des Initialisierungspakets. Nachdem bestimmt wurde, ob jedes Initialisierungspaket erfolgreich vom Schieberegister 202 eingefangen wurde oder nicht, ändert die Taktsteuerschaltung die Verzögerung zwischen dem Empfang des externen Taktsignals CKEXT und der Erzeugung des internen Taktsignals ICLK. Dann stellt die Taktsteuerschaltung 210 erneut fest, ob die Paketwörter des Initialisierungspakets erfolgreich abgefangen wurden. Nach mehrmaliger Wiederholung dieser Prozedur stellt die Taktsteuerschaltung fest, welche Verzögerungswerte zwischen CKEXT und ICLK beim Abfangen des Initialisierungspakets erfolgreich sind. Dann verwendet die Taktsteuerschaltung einen dieser Verzögerungswerte als Verzögerung zwischen CKEXT und ICLK beim Normalbetrieb des Speicherbauelements unter Verwendung der Befehlspuffer-Kontaktgeneratorschaltung 200. Auf diese Weise adaptiert die Taktsteuerschaltung 210 mögliche externe oder interne Verzögerungen, die in der Kopplung des Befehlspaketes CA und des externen Takts CKEXT existieren, um so zu ermöglichen, dass die Befehlspuffer-Taktgeneratorschaltung 200 bei optimaler Geschwindigkeit arbeitet. Ein ähnliches System kann man dazu verwenden, sicherzustellen, dass die in das Speicherbauelement 16a ansprechend auf den Datentakt DCLK eingetakteten Daten korrekt sind (2).
  • Es versteht sich, dass notwendige Bestandteile der Befehlspuffer- und Taktgeneratorschaltung 200 im Interesse der Knappheit aus 3 weggelassen sind, da sie bezüglich der beanspruchten Erfindung von peripherer Bedeutung sind. Beispielsweise enthält die Befehlspuffer- und Taktgeneratorschaltung 200 Schaltungselemente, die es dem Befehlspuffer ermöglichen, festzustellen, ob ein Befehlspaket an ihn gerichtet ist, ferner Schaltungselemente zur Pipelineverarbeitung von Befehlswörtern, die von dem Speicherregister 208 ausgegeben werden, Schaltungselemente zum Erzeugen von Befehlssignalen geringeren Pegels aus dem Befehlswort etc.
  • Die relevanten Teile der Befehlspuffer- und Taktgeneratorschaltung 200 sind in größerer Einzelheit in dem in 4 dargestellten Blockdiagramm gezeigt. Wie in 4 zu sehen ist, enthält die Zeitsteuerschaltung 206 eine Taktschaltung 230, die ein Taktsignal CLK und dessen Quadraturelement CLK 90 von einer herkömmlichen Quadraturschaltung 222 ansprechend auf das interne Taktsignal ICLK empfängt. Dieses interne Taktsignal ICLK wird von der Taktsteuerschaltung 210 aus dem externen Taktsignal CKEXT generiert, wie oben in Verbindung mit 3 erläutert wurde. Aufbau und Arbeitsweise der Taktsteuerschaltung 210 werden anhand der 5 und 6 im einzelnen erläutert. Die Signale CLK und CLK 90 werden an ein NOR-Gatter 232 gelegt, das immer dann einen hohen Pegel ausgibt, wenn ICLK und ICLK 90 beide niedrigen Wert haben. Das Ausgangssignal des NOR-Gatters 232 wird über einen ersten Negator 234 zum Erzeugen eines Signals CLK1 und dann über einen zweiten Negator 236 zum Erzeugen eines Signals CLK1* geleitet (das Symbol "*" hinter der Signalbezeichnung dient hier durchwegs zur Bezeichnung des Signal-Komplements).
  • Die Signale CLK90 und CLK werden auch an ein NAND-Gatter 240 gelegt, welches immer dann einen niedrigen Pegel abgibt, wenn beide Signale CLK und CLK90 hohen Wert haben. Das Ausgangssignal vom NAND-Gatter wird über einen Negator 242 zum Erzeugen eines Signals CLK0 und dann über einen zweiten Negator 244 zum Erzeugen eines Signals CLK0* geleitet. Diese Signale CLK0, CLK0*, CLK1 und CLK1* entsprechen den in Verbindung mit 3 beschriebenen Impulsen SCHIEBEN.
  • Die Taktgeneratorschaltung 230 enthält ferner ein Paar Schieberegisterschaltungen 246, 248, die miteinander in Reihe geschaltet sind, um ein achtstufiges Schieberegister zu bilden. Die Schieberegisterschaltung 246 empfängt das Signal FLAG, welches dann sequenziell durch die vier Stufen des Schieberegisters 246 und durch die vier Stufen der Schieberegisterschaltung 248 geschoben wird, ansprechend auf die Signale CLK0, CLK0*, CLK1, CLK1 *. Das Signal FLAG wird bei jedem Zyklus der CLK-Signale durch die beiden Stufen der Schieberegisterschaltungen 246, 248 geschoben. Wenn das Signal FLAG hohen Pegel annimmt, gehen zwei aufeinander folgende Ausgänge F<0:7> der Schieberegisterschaltung 246, 248 sequenziell bei jedem Taktzyklus auf hohen Pegel.
  • Das in 4 dargestellte Schieberegister 202 enthält zehn getrennte Schieberegisterschaltungen 250a–j, von denen jede ein zugehöriges Bit CA0–CA9 des ankommenden Zehn-Paketworts empfängt, welches über die einzelnen Puffer 251a–j geleitet wird. Jede der Schieberegisterschaltungen 250a–j enthält vier Schieberegisterstufen. Nach vier Taktzyklen sind vier Paketwortbits CA in jede Schieberegisterschaltung 250 geschoben, und sämtliche vier Bits stehen als ein 4-Bit-Wort P<0:3> zur Verfügung. Dann speichern die zehn Schieberegisterschaltungen 251a–j kollektiv ein 40-Bit-Befehlswort C<0:39> und geben dieses aus.
  • Das Speicherregister 208 empfängt außerdem die Signale CLK und CLK90. Allerdings werden die Bits B<0:3> für die vier Paketwörter, die in dem Schieberegister 202 gespeichert sind, nicht eher in das Speicherregister 208 eingetaktet, als bis das Signal F<3> erzeugt wird. Die Taktschaltung 230 erzeugt das Signal F<3> vier Übergänge des Signals CLK später, als das Signal FLAG empfangen wird, d. h., nach dem Schieben von vier Befehlspaketen in das Schieberegister 202. Dann speichert das Speicherregister das 40 Bits umfassende Befehlswort Y<39> und gibt es kontinuierlich aus. Das Befehlswort Y<0:39> dient dann zum Steuern des Betriebs eines Speicherbauelements, welches die Befehlspuffer- und Taktgeneratorschaltung 200 enthält. Wie oben ausgeführt, dient das Befehlswort Y<39> auch der Taktsteuerschaltung 210 zum Auswählen der optimalen Verzögerung zwischen dem Empfang des externen Taktsignals CKEXT und dem Erzeugen des internen Taktsignals ICLK.
  • Eine Ausführungsform der Taktsteuerschaltung 210 gemäß der Erfindung ist in 5 gezeigt. Wie oben erläutert wurde, ist es äußerst schwierig, das Schieberegister 202 (3 und 4) zur richtigen Zeit bei maximaler Geschwindigkeit des Befehlsdekodierers 200 zu takten. Die Funktion der Taktsteuerschaltung 210 besteht darin, ein internes Taktsignal ICLK am Eingang der Quadraturschaltung 222 zur richtigen Zeit derart bereitzustellen, dass die Zeitsteuerschaltung 206 das Schieberegister 202 sogar bei der schnellsten Betriebsgeschwindigkeit des Befehlsdekodierers 200 takten kann. Es versteht sich allerdings, dass die Taktsteuerschaltung 210 auch für andere Zwecke sowohl in dynamischen Schreib-/Lesespeichern als auch in anderen Schaltungen eingesetzt werden kann. Beispielsweise kann sie dazu verwendet werden, das Datentaktsignal DCLK zum exakten Takten von Daten in das Speicherbauelement 16a zu erzeugen, wie oben erläutert wurde.
  • Gemäß 5 wird der externe Takt CKEXT von der Leitung 42 über einen Empfangspuffer 250 auf eine herkömmliche, spannungsgesteuerte Verzögerungsschaltung 252 und auf einen Eingang eines Phasendetektors 254 gegeben. Die spannungsgesteuerte Verzögerungsschaltung 252 koppelt den Ausgang des Empfangspuffers 250 mit einer Ausgangsleitung 256 mit einer Verzögerung, die eine Funktion eines über eine Leitung 258 an die Verzögerungsschaltung 252 gelegten Steuersignals ist. Obschon das Steuersignal auf der Leitung 258 eine Analogspannung ist, versteht sich, dass auch andere Arten von Steuersignalen alternativ möglich sind, darunter auch digitale Werte. Das Ausgangssignal der spannungsgesteuerten Verzögerungsschaltung 252 wird an eine spannungsgesteuerte Verzögerungsleitung 260 mit mehreren Anzapfungen belegt.
  • Die mehrere Anzapfungen aufweisende, spannungsgesteuerte Verzögerungsleitung 260 koppelt das an seinen Eingang über die Leitung 256 gelegte Taktsignal auf mehrere Ausgangsleitungen 264a264n. Das ankommende Taktsignal wird auf die Ausgangsleitung 264 mit einer zunehmenden Verzögerung von der ersten Leitung 264a aus bis hin zur letzten Leitung 264n gekoppelt. Bei der in 3 dargestellten Ausführungsform gibt es siebzehn Ausgangsleitungen 264, allerdings kann die Verzögerungsleitung 260 auch eine größere oder geringere Anzahl von Ausgangsleitungen 264 aufweisen. Wenn eine Verzögerungsregelschleife, welche die Verzögerungsleitung 260 beinhaltet, in der unten erläuterten Weise einrastet, sind die Signale an der ersten Ausgangsleitung 264a und der letzten oder siebzehnten Ausgangsleitung 264n einander entgegengesetzt, d. h., sie weisen eine Phasenverschiebung von 180° auf. Die Signale an den siebzehn Leitungen sind daher um 11,25° stärker verzögert als das an die vorausgehende Leitung 264 gekoppelte Signal. Damit besitzt die erste Leitung 264a eine relative Phase von 0°, die sechzehnte Leitung 264n – 1 besitzt eine Phase von 168,75°, und die letzte Leitung 264n besitzt eine Phase von 180°. Insbesondere wird eine an die Verzögerungsleitung 260 über die Leitung 270 angelegte Steuerspannung so eingestellt, dass die Phase des Signals auf der letzten Leitung 264n gegenüber der Phase auf der ersten Leitung 284a um 180° verschoben ist. Erreicht wird dies dadurch, dass die erste Leitung 264a und die letzte Leitung 264n an Eingänge eines Phasendetektors 272 gelegt werden.
  • Wie oben ausgeführt, implementieren die Verzögerungsleitung 260 und der Phasendetektor 272 eine erste Verzögerungsregelschleife. Wenn die erste Verzögerungsregelschleife einrastet, besitzt das Signal auf der Leitung 264n gegenüber der Phase des Signals auf der Leitung 284a einen Phasenunterschied von 180°. Daher nimmt, wie oben ausgeführt wurde, das Signal auf jeder der Ausgangsleitungen 264a264n sequentiell ausgehend von 0° auf 180° zu. Obschon die Signale auf den Leitungen 264a264n gleichen Phasenabstand voneinander besitzen können, versteht sich, dass gleiche Phasen nicht erforderlich sind.
  • Die Taktsteuerschaltung 210 enthält ferner eine zweite Verzögerungsregelschleife, die gebildet wird durch den Phasendetektor 254, die spannungsgesteuerte Verzögerungsschaltung 252 und die spannungsgesteuerte Verzögerungsleitung 260. Insbesondere wird die letzte Ausgangsleitung 264n der Verzögerungsleitung 260 über eine simulierte Multiplexerschaltung 290 und einen Takttreiber 292 an einen Eingang des Phasendetektors 254 gelegt. Es sei daran erinnert, dass der andere Eingang des Phasendetektors 254 das Ausgangssignal von dem Empfangspuffer 250 empfängt. Ähnlich wie der Phasendetektor 272 werden, wenn die zweite Verzögerungsregelschleife verrastet ist, die an den Phasendetektor 254 gelegten Signale einander entgegengesetzt. Wenn daher die zweite Schleife verrastet ist, hat die Phase des Signals am Ausgang des Takttreibers 292 eine Verschiebung von 540° (effektiv 180°) gegenüber der Phase des Signals am Ausgang des Empfangspuffers 250.
  • Die übrigen Ausgangsleitungen 264a264n – 1 der Verzögerungsleitung 260 werden an einen Multiplexer 310 gegeben, dessen Ausgangsleitung mit einem Takttreiber 312 gekoppelt ist. Der Multiplexer 310 koppelt den Eingang des Takttreibers 312 mit irgendeiner der Ausgangsleitungen 264a264n – 1, was durch das jeweilige vier Bits umfassende Phasenbefehlswort CMDPH<0:3> festgelegt wird. Dieses vier Bits umfassende Phasenbefehlswort CMDPH<0:3> wird von einer Phasensteuerschaltung 314 auf der Grundlage des Befehlswort Y <0:39> während einer Initialisierungsprozedur gebildet. Aufbauende Arbeitsweisen der Phasensteuerschaltung 314 werden anhand der übrigen Figuren im Einzelnen beschrieben. Der Takttreiber 312 dient zum Erzeugen des internen Taktsignals ICLK, welches zum Ableiten der Taktsignale dient, die an die Takteingänge des Schieberegisters 202 (3 und 4) gelegt werden.
  • Die Phasendetektoren 254, 272 werden jeweils mit Hilfe einer Phasendetektorschaltung 330, einer Ladungspumpe 332 und eines Kondensators 334 implementiert. Allerdings sind andere Varianten von Phasendetektoren alternativ möglich.
  • Die Phasendetektorschaltung 330 legt entweder ein Erhöhungssignal auf der Leitung 336 oder ein Verminderungssignal auf der Leitung 338 an die einzelnen Eingänge der Ladungspumpe 332. Die Phasendetektorschaltung 330 erzeugt das Erhöhungssignal auf der Leitung 336 immer dann, wenn die Phase eines ersten Signals an einem ihrer Eingänge gegenüber einem zweiten Signal am anderen ihrer Eingänge weniger als 180° beträgt. Wie unten erläutert wird, verursacht das Erhöhungssignal auf der Leitung 336, dass die Ladungspumpe 332 die Steuerspannung so einrichtet, dass die Verzögerung des ersten Signals derart erhöht wird, dass die Phase des ersten Signals relativ zur Phase des zweiten Signals sich einem Wert von 180° annähert. Die Phasendetektorschaltung 330 erzeugt das Verminderungssignal auf der Leitung 338 im entgegengesetzten Sinn, d. h., wenn die Phase des zweiten Signals gegenüber der des ersten Signals mehr als 180° beträgt. Das Verminderungssignal auf der Leitung 338 bewirkt, dass die Leitungspumpe 332 die Steuerspannung so einstellt, dass die Verzögerung des zweiten Signals in Richtung 180° vermindert wird.
  • Wenngleich die Phasendetektorschaltung 330 auf verschiedene Weise implementiert werden kann, kann sie schlicht zwei (nicht gezeigte) RS-Flip-Flops verwenden, um das Erhöhungs- beziehungsweise das Verminderungssignal zu erzeugen. Das Erhöhungs-Flip-Flop wird gesetzt durch die Anstiegsflanke des ersten Signals an einem der Eingänge, und wird zurückgesetzt durch die Hinterflanke des zweiten Signals an dem anderen Eingang. Damit wird die Dauer des Flip-Flops eingestellt und folglich die Dauer des Erhöhungssignals auf der Leitung 336 entsprechend der Zeitspanne, um die das zweite Signal zusätzlich verzögert werden muss, damit es gegenüber der Phase des ersten Signals einen Abstand von 180° hat. In ähnlicher Weise wird das das Änderungssignal auf der Leitung 338 erzeugende Flip-Flop gesetzt durch die Hinterflanke des zweiten Signals, und wird zurückgesetzt durch die Anstiegsflanke des ersten Signals, demzufolge die Dauer des Verminderungssignals aus der Leitung 338 derjenigen Zeit entspricht, um die das zweite Signal über die Zeit hinaus verzögert werden muss, zu der es in Bezug auf die Phase des ersten Signals einen Phasenwinkel von 180° hätte.
  • Außerdem gibt es eine Vielfalt von Möglichkeiten zum Implementieren der Ladungspumpe 332. Allerdings lässt die Ladungspumpe 332 sich in einfacher Weise dadurch implementieren, dass man in den Kondensator 334 für die Dauer jedes Erhöhungssignals auf der Leitung 336 einen konstanten Strom einspeist und von dem Kondensator 334 für die Dauer jedes Verminderungssignals auf der Leitung 338 einen konstanten Strom abzieht. Eine passende Schaltung kann entweder in der Phasendetektorschaltung 330 oder der Ladungspumpe 332 vorhanden sein, um eine Hysterese in einem Band zu bilden, wenn das erste und das zweite Signal eine relative Phasenversetzung von etwa 180° haben, die für den Fachmann ersichtlich ist.
  • Die Arbeitsweise der Taktsteuerschaltung 210 nach Figur innerhalb des in 4 gezeigten Befehlsdekodierers lässt sich am besten anhand des in 6 gezeigten Impulsdiagramms erläutern. Wie in 6 gezeigt ist, wird das externe Taktsignal CKEXT auf der Leitung 42 beim Durchlauf durch den Empfangspuffer 250 zum Knoten A (5) um etwa 70° verzögert. Unter der Annahme, dass beide Verzögerungsregelschleifen verrastet sind, wird das Signal am Ausgang des Empfangspuffers 250 beim Durchlauf durch die spannungsgesteuerte Verzögerungsschaltung 252 zum Knoten B um 120° verzögert. Dann wird das Signal am Knoten B mit einer Verzögerung von weiteren 120° auf den Knoten C gegeben, und mit einer Verzögerung von 300° auf den Knoten D gegeben, so dass die Signale auf den Knoten C und D einen Phasenabstand von 180° haben. Da die Signale an den Knoten C und D miteinander durch den Phasendetektor 272 verglichen werden, stellt der Phasendetektor 272 die Steuerspannung auf der Leitung 270 so ein, dass sichergestellt ist, dass die Signale alle auf den Knoten C und D in ihrer Phase um 180° verschoben sind. Die übrigen Ausgangssignale der Verzögerungsleitung 260 haben Phasen gegenüber derjenigen des Signals auf dem Knoten C, die um 11,25° an jedem Ausgang in der Folge von der ersten Leitung 264a bis zu der letzten Leitung 264n zunehmen.
  • Wie oben ausgeführt, wird eine von den ersten sechzehn Ausgangsleitungen 264a bis 264n – 1 der Verzögerungsleitung 260 über den Multiplexer 310 gekoppelt, und der Takttreiber 312 und liefert am Knoten E das interne Taktsignal ICLK. Beim Durchgang durch den Multiplexer 310 und den Takttreiber 312a wird das ausgewählte Ausgangssignal der Verzögerungsleitung um weitere 120° verzögert. Damit ist das Signal Eo, welches von der ersten Ausgangsleitung der Verzögerungsleitung 260 gekoppelt wird, um 120° verzögert, das Signal E4 von dem fünften Ausgang wird um 165° verzögert, das Signal E8 vom neunten Ausgang wird um 210° verzögert, das Signal E12 vom dreizehnten Ausgang wird um 255° verzögert, und das Signal E15 vom sechzehnten Ausgang wird um 288,75° verzögert. Obschon die Ausgangssignale von der Verzögerungsleitung 260 über den Multiplexer 310 und den Takttreiber 312a mit einer Verzögerung geleitet werden, ist diese Verzögerung angepasst durch die Kopplung des Signals von der Leitung 264n über den simulierten Multiplexer 290 und den Takttreiber 292, der die gleiche Schaltung für den simulierten Multiplexer 290 wie für den Multiplexer 310 verwendet wird und der Takttreiber 292 identisch ist mit dem Takttreiber 312a. Aus diesem Grund und weil die Phase des Signals auf der Leitung 264n eine Verschiebung von 180° gegenüber der Phase des Signals auf der Leitung 264a hat, besitzt das Signal am Ausgang des Takttreibers 292 am Knoten G gegenüber der Phase des Signals Eo am Ausgang des Takttreibers 312a eine Verschiebung von 180°. Da die auf die Eingänge des Phasendetektors 254 gegebenen Signale einander entgegengesetzt sind, wenn die Verzögerungsregelschleife verrastet ist, besitzt das Signal Eo im Wesentlichen die gleiche Phase wie das Signal am Ausgang des Empfangspuffers 250. Außerdem wird die Verzögerung der spannungsgesteuerten Verzögerungsschaltung 252 derart eingestellt, dass das Signal Eo immer die gleiche Phase hat wie der Befehlstakt, der an den Ausgang des Empfangspuffers 250 bei A gekoppelt wird. Angenommen, jedes Paketwort innerhalb des Befehlspakets sei gültig bei der Anstiegsflanke des externen Taktsignals CKEXT, so ist das auf das Schieberegister 202 (4) gekoppelte Paketwort gültig bei der Anstiegsflanke von ICLK, weil ICLK die richtige Phasenbeziehung zu dem Signal am Knoten A hat und die Verzögerung im Empfangspuffer 250 im Wesentlichen die gleiche ist wie die Verzögerungen durch die Puffer 251a–j. Im Betrieb wählt der Multiplexer 310 einen der Ausgänge von der Verzögerungsleitung 260 ab, wie dies bestimmt wird durch das Phasenbefehlswort CMDPH <0:3>, so dass das optimale Taktsignal zwischen EO und E15 (6) als interner Takt ICLK verwendet wird.
  • Zusammengefasst: Die "innere" Verzögerungsregelschleife, die durch den Phasendetektor 272 und die spannungsgesteuerte Verzögerungsschaltung 260 gebildet wird, erzeugt eine Folge von Signalen mit von 0° bis 180° zunehmenden Phasen. Die "äußere" Verzögerungsregelschleife, die gebildet wird durch den Phasendetektor 254, die spannungsgesteuerte Verzögerungsschaltung 252 und die Verzögerungsleitung 260, richten eines der Taktsignale innerhalb der Folge mit dem Befehlstakt aus. Im Ergebnis besitzen sämtliche Taktsignale am Ausgang der Verzögerungsleitung 240 einzelne vorbestimmte Phasen gegenüber der Phase des Befehlstakts am Knoten A.
  • Obschon die Ausführungsform des Taktgenerators 210 nach 5 von Verzögerungsregelschleifen Gebrauch macht, versteht sich, dass auch andere verrastete Regelschleifen ebenso wie Schaltungen ohne Regelschleife innerhalb der Taktsteuerschaltung 210 verwendet werden können.
  • Grundsätzlich bestimmt die Phasensteuerschaltung 214 den optimalen Phasenbefehl CMDPH <0:3> nach Abschluss von zwei Betriebsarten, nämlich einen Lademodus und einen Analysemodus. Im Lademodus implementiert die Phasensteuerschaltung 314 sequentiell den Phasenbefehl CMDPH <0:3>, um sequentiell jede Anzapfung der Verzögerungsleitung 310 (5) auf den ICLK-Treiber 312 zu koppeln, während der Befehlsdekodierer 200 wiederholt Initialisierungspakete empfängt. Auf diese Weise versucht der Befehlsdekodierer 200, jedes Initialisierungspaket innerhalb des Schieberegisters 202 exakt einzufangen (4), ansprechend auf einzelne interne Taktsignale ICLK, die sequentiell in ihrer zeitlichen Lage gegenüber den Initialisierungspaketen variieren. Während des Lademodus bestimmt die Phasensteuerschaltung 314, welche Initialisierungspakete erfolgreich im Schieberegister 202 aufgefangen wurden. Dann erfolgt eine Aufzeichnung, welche angibt, welche Phasenbefehle CMDPH <0:3> (d. h. welche Anzapfung der Verzögerungsleitung 260) den Takt ICLK dazu gebracht haben, das Schieberegister 202 zur richtigen Zeit zu takten, um diese Initialisierungspakete erfolgreich einzufangen.
  • Im Analysemodus werden die Phasenbefehle in der Befehlsaufzeichung ausgewertet. Insbesondere wird ein einzelner Phasenbefehl CMDPH <0:3>, der mit höchster Wahrscheinlichkeit in der Lage ist, erfolgreich Paketwörter in einem Befehlspaket einzufangen, aus den Phasenbefehlen ausgewählt, die erfolgreich ein Initialisierungspaket eingefangen haben. Dieser ausgewählte Phasenbefehl CMDPH <0:3> ist der Befehl, der dazu dient, das ICLK-Signal im Normalbetrieb zu generieren. In den 7a und 7b ist eine Blockdiagramm der Phasensteuerschaltung 314 zum Generieren des Phasenbefehls CMDPH <0:3> dargestellt.
  • Gemäß 7A empfängt eine Auswerteschaltung 59 ein Initialisierungswort Y<0:39>, ein Signal F<4> und einen Initialisierungsbefehl CMDINIT. Das Signal F<4> wird erzeugt durch das Schieberegister (4) in der Taktschaltung 220 eine halbe Taktperiode nach vier Initialisierungspaketwörtern, d. h. dem gesamten Initialisierungspaket, gespeichert im Schieberegister 202 und transferiert in das Speicherregister 208. Das Initialisierungswort Y<0:39> wird am Ausgang des Speicherregisters 208 erzeugt und entspricht den vier Paketwörtern innerhalb jedes Initialisierungspakets. Der Initialisierungsbefehl CMDINIT wird von einer anderen (nicht gezeigten) Schaltung in dem Befehlsdekodierer 200 während der Initialisierungsprozedur erzeugt.
  • Im Betrieb analysiert, wenn der Initialisierungsbefehl CMDINIT aktiv hoch ist, die Auswerteschaltung 350, das Initialisierungswort Y<0:39>, um festzustellen, ob das Initialisierungspaket exakt von dem Schieberegister 202 (4) eingefangen wurde. Wenn das eingefangene Initialisierungswort Y<0:39> mit dem Initialisierungspaket übereinstimmt, gibt die Auswerteschaltung 350 ein aktiv hohes Initialisierungs-Ergebnissignals INITRES aus. Die Auswerteschaltung gibt außerdem ein Zwischenspeicherergebnissignal LATRES ansprechend auf jeden Impuls F<4> aus, solange das Signal CMDINIT hohen Wert hat, ungeachtet des Zustands des Initialisierungsergebnissignals INITRES. Wie oben ausgeführt, wertet im Lademodus der Initialisierungsprozedur die Auswerteschaltung 350 sechzehn Initialisierungspakete aus, die an den Befehlsdekodierer 200 gelegt werden, und zwar in ihrer zeitlichen Relation zu dem internen Taktsignal ICLK. Damit gibt im Lademodus die Auswerteschaltung sechzehn Impulse LATRES und zwischen 0 und 16 Signale INITRES aus, abhängig von der Anzahl vom Schieberegister 202 erfolgreich eingefangener Initialisierungspakete.
  • Wenn mehrere Speicherbauelemente, die von der Phasensteuerschaltung 314 Gebrauch machen, in einem Computersystem enthalten sind, beispielsweise in dem in 1 gezeigten Computersystem, so kann die Auswerteschaltung 350 (nicht gezeigte) Mittel aufweisen zum Verhindern, dass mehr als eine Phasensteuerschaltung 314 auf die gleichen Initialisierungspakete anspricht, beispielsweise könnte ein Speicherbauelement als das erste Speicherbauelement für die Initialisierung ausgewählt werden. Nach der Initialisierung würden das erste Speicherbauelement und alle nachfolgenden Speicherbauelemente das nächste Speicherbauelement für die Initialisierung freigeben. Alternativ könnten die Taktsteuerschaltungen 210 sämtlicher Speicherbauelemente in dem Computersystem gleichzeitig auf die gleichen 16 Initialisierungspakete hin initialisiert werden.
  • Weiterhin auf 7A Bezug nehmend, wird das Initialisierungsergebnis (INTERES) von jeder von sechzehn Auswertungen an eine Selektorschaltung 354 gegeben, zusammen mit zwei komprimierten Ergebniswörtern COMPRESA<0:15> und COMPRESB<15>. Die Selektorschaltung 354 koppelt eines dieser drei Signale ansprechend auf Signale von einer Selektorsteuerschaltung 364 auf ein 16-Bit-Register 360. Die Selektorsteuerschaltung 354 wiederum wird von einer Modusschaltung 366 gesteuert. Diese Modusschaltung empfängt ein aktiv niedriges Signal RESET*, um die Phasensteuerschaltung 314 in den Lademodus zu versetzen, sie empfängt ein aktiv hohes Signal LDINITERES<15> (Lade-Initialisierungsantwort) und bringt die Phasensteuerschaltung 314 in den Analysiermodus.
  • Im Lademodus steuert die Modusschaltung 366 die Selektorsteuerschaltung 364 derart, dass diese die Selektorschaltung 354 veranlasst, das Signal INITERES von der Auswerteschaltung 350 auf das 16-Bit-Register 316 zu schalten. Außerdem wird während des Lademodus die Bitstelle, an der das Signal INITERES gespeichert ist, von dem zugehörigen Signal LDINTERES<0:15> gesteuert. Wenn also beispielsweise das Signal INITERES (welches angibt, ob das Initialisierungspaket erfolgreich eingefangen wurde) für eine erste Phase von ICLK entsprechend der ersten Anzapfung der Verzögerungsleitung 260 an das Register 360 gelegt wird, bewirkt ein Signal LD INITERES<0>, dass das Signal INITERES in der ersten Bitstelle des Registers 360 gespeichert wird. In ähnlicher Weise wird für eine zweite Phase von ICLK gehaltene Signal INITERES entsprechend der zweiten Anzapfung der Verzögerungsleitung 69 in der zweiten Bitstelle des Registers 360 ansprechend auf ein Signal LD INITERES<1> gespeichert, etc. Schließlich wird das der sechzehnten Phase von ICLK entsprechende Signal INITERES für die letzte Anzapfung der Verzögerungsleitung 260 in der letzten Bitstelle des Registers 360 ansprechend auf ein Signal LDINITERES<15> gespeichert. Zu diesem Zeitpunkt speichert das Register 316 16 Informationsbits, welche kennzeichnend sind für die sechzehn Phasen des Signals ICLK entsprechend den 16 Anzapfpunkten der Verzögerungsleitung 260, was besagt, dass diese Phasen erfolgreich beim Einfangen von 16 Initialisierungspaketen an dem Befehlsdekodierer 200 im Lastmodus waren. Die gespeicherte Information wird von dem Register 360 als RES<0:5> ausgegeben. Wie oben ausgeführt, schaltet dann das Signal LDINITERES<15> die Modusschaltung 366 in den Analysemodus, da sämtliche Information über das Einfangen der Initialisierungspakete in das Register 360 geladen ist.
  • Um ein Beispiel zu geben: das Register 360 kann nach Beendigung des Lademodus als RES<0:15> "0000110011111000" ausgeben. Die logischen Werte "1" von RES<3–7, 10 und 22> bedeuten also, dass das Signal ICLK, die von der vierten bis achten, der elften und der zwölften Anzapfung der Verzögerungsleitung 260 abgenommen wurde, erfolgreich beim Einfangen von Initialisierungspaketen war.
  • Schaltet das Signal LDINITERES<15> die Modusschaltung 360 in den Analysiermodus, so steuert die Modusschaltung 360 die Selektorsteuerschaltung 364 derart, dass diese die Selektorschaltung 354 veranlasst, an das 16-Bit-Register 360 abwechselnd COMPRESA<0:15> und COMPRESB<0:15> zu legen. Die 16 Ausgänge des Registers 360 werden auf 16 NAND-Gitter 374a–p gegeben, die ihrerseits mit zugehörigen Negatoren 378a–p gekoppelt sind, so dass die NAND-Gatter 374 und die Negatoren 378 UND-Funktionen erfüllen. Die Eingänge jedes NAND-Gatters 374 empfangen ein zugehöriges Bit des Registers 360 und ein benachbartes Bit des Registers 360, ausgenommen das erste NAND-Gatter 364a, welches das Ausgangssignal von dem Bit 16 des Registers 360 empfängt. Die Ausgänge der Negatoren sind bezeichnet als COMP<0:15>, wobei COMP<N>=RES(N)*RES (N–1) (ausgenommen für COMP<0>, welches RES<15>*RES<0> gleicht). Die Signale COMP<N> werden zu einem zugehörigen Eingang des Registers 360 zurückgeführt. Allerdings werden die Ausgänge der Negatoren 378 unterschiedlich für die Signale COMPRESA<0:15> und die Signale COMPRESB<0:15> zurückgeführt. Für COMPRESA<0:15> wird jedes Signal COMPRESA<N>*COMP<N–1> gesetzt. Für COMPRESB<0:15> ist COMPRESB<N> gleich COMP<N>*COMP<N+1>. Im Analysemodus wird das Register 360 von dem Signal LDCOMPRES derart gesteuert, dass die 16 Bits, die zum Register 360 zurückgeleitet sind, parallel in das Register 360 geladen werden.
  • Der Betrieb der Selektorschaltung 354, des Registers 360, der NAND-Gatter 374 und der Negatoren 378 im Analysemodus versteht sich am besten anhand des obigen Beispiels "0000110011111000" für den Anfangswert RES<0:15>. Nachdem diese Werte für RES<0:15> über die NAND-Gatter 374 und Negatoren 378 geleitet sind, hat COMP<0:15> den Wert "0000010001111000". Durch Vergleichen mit RES<0:15> mit COMP<0:15> erkennt man, dass COMP<0:15> das gleiche ist wie RES<0:15>, nur das jede "1" rechts von einer "0" in eine "0" umgewandelt wurde. Wenn also die Signale COMP<0:15> zum Register 360 als COMPRESA<0:15> zurückgeführt werden, so ist jede "1" rechts von einer "0" in eine "0" geändert. Im Ergebnis werden die neuen Werte von RES<0:15> die früheren Werte von COMPRESA<0:15>, d. h., 0000010001111000. Nachdem diese Werte für RES<0:15> über die NAND-Gatter 374 und die Negatoren 378 gelaufen sind, wird COMP<0:15> zu "0000000000111000". Weil allerdings COMPRESB<N>= COMP<N>*COMP<N+1>, wird COMP<0:15> zu dem Register 360 in der Form "0000000001110000" zurückgekoppelt. Wenn also die Signale COMP<0:15> zu dem Register 360 als COMPRESB<0:15> zurückgeleitet werden, ist jede "1" links von einer "0" in eine "0" umgewandelt. Nachdem RES<0:15> erneut als COMPRESA<0:15> zurückgekoppelt ist, lautet der neue Wert von RES<0:15> "0000000000110000", d. h., die "1" rechts von einer "0" ist in eine "0" umgewandelt. Wenn schließlich der letzte Wert RES<0:15> wiederum als COMPRES<0:15> zu dem Register zurückgekoppelt ist, lautet das neue RES<0:15> "0000000000100000", d. h., die "1" links von einer "0" ist in eine "0" geändert. Wenn dieser abschließende Wert RES<0:15> über die NAND-Gatter 374 und die Negatoren 378 geleitet wird, lautet der neue Wert COMP<0:15> "0000000000000000".
  • Gemäß 7B wird ein nur aus Nullen bestehender Wert COMP<0:15> von einer Nulldetektorschaltung 380 festgestellt, der dann ein Phasenauswahlsignal PHSELECTED erzeugt, weiterhin ein Phasenauswahl-Fertigsignal PHSELDONE und ein Fertigsignal DONE, von denen jedes signalisiert, dass die optimale Phase des internen Taktsignals ICLK ermittelt wurde. Zu diesem Zeitpunkt stellt ein Ergebnisauswahlcodierer 386 anhand des endgültigen Werts RES<0:15> von "1111111111100000" fest, dass das sechste Bit des Registers, nämlich RES<5> diejenige Stelle im Register 360 ist, die eine "1" enthält. Der Ergebnisauswahlcodierer 386 gibt dann einen entsprechenden Binärwert P<0:3> in der Form "0101" aus. Der Ergebnisauswahlcodierer 386 entscheidet auch zwischen einem Ergebnis, in welchem zwei oder mehr Einsen im endgültigen Wert von RES<0:15> enthalten sind. Ein Anfangswert RES<0:15> von "0111001110011100" wird einen endgültigen Wert RES0:15> von "0010000100001000" erzeugen und damit angeben, dass drei Phasen von ICLK mit gleicher Wahrscheinlichkeit ein Befehlspaket einfangen. Der Ergebnisauswahlcodierer wählt die "1" niedrigster Wertigkeit als Endergebnis aus, so dass ein endgültiger Wert RES<0:15> der Form "0010000100001000" interpretiert würde als "0000000000001000".
  • Wie oben ausgeführt, gibt, wenn der endgültige Wert RES<0:15> erhalten wurde, die Nulldetektorschaltung 380 die Signale PHSELECTED, PHSELDONE und DONE aus. Das Signal PHSELECTED veranlasst einen Multiplexer, das Wort P<0:3> von dem Ergebnisauswahlcodierer 386 auf ein Wort PHASEOUT<0:3> zu koppeln, welches ansprechend auf das Signal PHSELDONE in einem Zwischenspeicher 394 gespeichert wird. Der Zwischenspeicher 394 gibt das Wort P<0:3> entsprechend dem Endwert RES<0:15> als Phasenbefehl CMDPH<0:3> aus. Wie oben ausgeführt wurde, wird der Phasenbefehl CMDPH<0:3> von dem Multiplexer 310 (5) dazu benutzt, eine der Anzapfungen der Verzögerungsleitung 360 zum Erzeugen des internen Taktsignals ICLK auszuwählen. Bei dem oben gewählten Beispiel mit P<0:3> in der Form "0101" würde der Multiplexer 310 die sechste Anzapfung der Verzögerungsleitung 360 zum Erzeugen von ICLK auswählen.
  • Der Multiplexer 390 und der Zwischenspeicher 394 werden außerdem im Lademodus dazu verwendet, den Multiplexer 310 zu veranlassen, sequenziell jede der Anzapfungen der Verzögerungsleitung 360 auszuwählen. Da das Signal PHSELECTED vor dem Ende des Analysiermodus inaktiv niedrigen Pegel hat, koppelt der Multiplexer 390 das Wort E<0:3> von einem vier-Bit-Zähler 400 auf den Eingang des Zwischenspeichers 394. Das inaktiv niedrige Signal PHSELDONE, welches vor dem Ende des Analysiermodus erzeugt wird, veranlasst den Zwischenspeicher 394, das Signal PHASEOUT<0:3> (entsprechend E<0:3> über den Zwischenspeicher 394 als CMDPH<0:3> zu koppeln. Dieses Wort CMDPH<0:3> legt fest, welche Anzapfung der Verzögerungsleitung 360 zum Erzeugen von ICLK auszuwählen ist.
  • Das aktiv niedrige Signal RESET*, das, wie oben ausgeführt, im Lademodus erscheint, gibt den 4-Bit-Zähler 404 frei. Der Zähler 400 wird von dem Impuls LATRES inkrementiert, der, wie oben ausgeführt wurde, von der Auswerteschaltung 350 (7A) bei jedem Empfang eines Initialisierungspakets erzeugt wird. Damit wird bei jedem Empfang eines Initialisierungspakets im Lademodus der Zähler 400 um 1 erhöht. Der Zählerstand des Zählers 400 wird über den Multiplexer 390 an den Zwischenspeicher 394 gegeben. Die Signale CMDPH<0:3> am Ausgang des Zwischenspeichers 394 wählen dann sequenziell jede Anzapfung der Verzögerungsleitung 360, wenn der Zähler 400 erhöht wird. Der Zählerstand des Zählers 400, d. h., E<0:3> wird außerdem an einen Vordekodierer 410 und einen Dekodieren 412 gelegt, um entsprechende Lade-Anfangsergebnissignale LDINITRES<0:15> zu erzeugen. Wie oben erläutert, werden diese Signale LDINITRES<0:15> von dem Register 360 dazu benutzt, dasjenige Bit im Register 360 zu ermitteln, in welchem ein von der Auswerteschaltung 350 kommendes Signal INITRES gespeichert ist. Damit lautet das Zählerausgangssignal E<0:3> am Anfang "0000", damit das Signal LDINITRES<0> eine "1" ist und die Signale LDINITRES<1:15> den Wert "0" haben, wodurch bewirkt wird, dass das Auswerteergebnis INITRES aufgrund des Empfangs des ersten Initialisierungspakets als Null-Bit im Register 360 gespeichert wird. Gleichzeitig wird der Zählerausgang E<0:3> mit dem Wert "0000" über den Multiplexer 390 und den Zwischenspeicher 394 geleitet, demzufolge der Phasenbefehl CMDPH<0:3> den Wert "0000" hat. Der Wert "0000" von CMDPH<0:3> bewirkt, dass der Multiplexer 310 die erste Anzapfung der Verzögerungsleitung 260 zum Generieren von ICLK auswählt. Nachdem der Zähler 400 auf 15 erhöht ist, d. h., auf den Wert "1111", wird auch CMDPH<0:3> zu "1111" und veranlasst damit den Multiplexer 310, die letzte Anzapfung der Verzögerungsleitung 260 zum Generieren von ICLK auszuwählen. Gleichzeitig bewirkt der Inhalt "1111" von E<0:3>, dass der Dekodieren 412 ein aktiv hohes Signal LDINITRES<15> ausgibt, damit der Wert INITRES von der Auswerteschaltung im Bit 15 des Registers 360 gespeichert wird. Wie oben ausgeführt, bewirkt der aktive hohe Zustand von LDINITRES<15> außerdem, dass die Modusschaltung 366 (7) in den Analysiermodus übergeht, da die im Lademodus erhaltenen Anfangsergebnisse nun in das Register geladen wurden. Die in 7A und 7B gezeigten Phasensteuerschaltung 314 passt sich folglich selbst an zur Verwendung der ICLK-Phase, die mit größter Wahrscheinlichkeit erfolgreich ist beim Einfangen eines Befehlspakets im Normalbetrieb.
  • Die im Blockdiagramm der 7A und 7B verwendete Schaltung ist in den 8 bis 16 in größerer Einzelheit dargestellt. Gemäß 8 ist die Auswerteschaltung 350 speziell ausgebildet zum Nachweisen eines vorbestimmten Initialisierungspakets. Bei der Ausführungsform nach 8 hat das Initialisierungspaket, für dessen Erfassen die Auswerteschaltung 350 ausgelegt ist, die in Tabelle 1 dargestellten Inhalte:
  • TABELLE 1
    Figure 00300001
  • Wie oben in Verbindung mit 7 beschrieben wurde, wird der Zählerstand des Zählers 400 über den Multiplexer 390 und den Zwischenspeicher 394 geleitet, um sequenziell jeden Anzapfpunkt der Verzögerungsleitung 260 auszuwählen, wenn der Zähler 400 gewählt wird. Der Zählerstand des Zählers 400 wird auch an den Vordekoder 410 und den Dekoder 412 gelegt, um ein entsprechendes Lade-Anfangsergebnissignal LDINITRES<0:15> zu erzeugen, um dasjenige Bit des Register 360 zu spezifizieren, in welchem jedes Signal LDINITRES von der Auswerteschaltung 350 gespeichert ist.
  • Der Zähler 400 ist in üblicher Weise durch vier Register 500506 ausgebildet, von denen jedes einen Eingang RESET* besitzt, ferner einen zu seinem Eingang über einen zugehörigen Negator 500 zurückgeführten Ausgang sowie ein Paar Takteingänge CLK und CLK*. Das erste Register 500 wird von einem Impulsgenerator 510 über ein Paar Negatoren 512, 514 getaktet, die auf jedes Zwischenspeicherergebnissignal LATRES ansprechen. Damit kippt das erste Register 500 jeden Impuls LATRES. Es sei daran erinnert, dass das Signal LATRES von der Auswerteschaltung 350 (8) jedes Mal dann erzeugt, wenn ein Ini tialisierungspaket empfangen wird. Die übrigen Register 502506 werden vom Ausgang des vorhergehenden Registers 500506 getaktet, so dass ihre jeweiligen Ausgänge jedesmal dann den Zustand wechseln (kippen), wenn das Ausgangssignal eines vorhergehenden Registers einen Übergang von hohen auf niedrigen Wert ausführt. Damit wird der Wert der Ausgangssignale E<0:3> des Zählers 400 einmal bei jedem Impuls LATRES inkrementiert, d. h., jedes Mal, wenn ein Initialisierungspaket empfangen wurde.
  • Der Ausgang des Zählers 400 ist auf den Vordekodierer 410 geführt, der auch in 12 dargestellt ist. Der Vordekodierer 412 verwendet ein NOR-Gatter 522, welches nur dann auf Null geht, wenn E<0> oder E<1> jeweils Null ist. Damit ist der Wert ZERO nur dann auf hohem Pegel, wenn der Zählerstand des Zählers 0, 4, 8, 12 beträgt. Der Ausgang ONE wird von einem NOR-Gatter 522 erzeugt, welches über einen Negator 524 das Signal E<1> und das invertierte Signal E<0> empfängt. Der Ausgang des NOR-Gatters 522 ist nur dann hoch, wenn E<1> niedrig und E<0>hoch ist. Damit ist das Signal ONE nur dann auf hohem Wert, wenn der Zählerstand des Zählers 1, 5, 9 oder 13 beträgt. Der Ausgang TWO eines NOR-Gatters 528 geht nur dann auf hohen Pegel, wenn E<0> niedrig ist und das über einen Negator 510 an das NOR-Gatter 528 gelegte Signal E<1> hohen Wert hat. Damit ist das Signal TWO nur dann hoch, wenn der Zählerstand des Zähler 2, 6, 10 oder 14 ist. Schließlich ist das Signal THREE am Ausgang eines Negators 532 nur dann hoch, wenn die Signale E<0> und E<1> an den Eingängen eines NAND-Gatters 534 beide hoch sind. Damit ist das Signal THREE nur dann hoch, wenn der Zählerstand des Zählers 3, 7, 11 oder 15 beträgt.
  • Die Signale FOUR, FIVE, SIX und SEVEN werden durch Dekodieren von E<2> und E<3> mit Hilfe der gleichen Schaltung erzeugt, wie sie auch zum Dekodieren von E<0> und E< 1> verwendet wird, um die Signale ZERO, ONE, TWO und THREE zu erhalten. Damit soll sich im Interesse der Kürze die Erläuterung des Dekodierens von E<2> und E<3> erübrigen. Allerdings sind in der folgenden Tabelle 2 die Ausgänge des Vordekodierers 510 angegeben.
  • TABELLE 2
    Figure 00320001
  • Die Ausgangssignale von dem Vordekodierer 410 werden von dem Dekodieren 412 (7) weiter dekodiert, um jedes der Lade-Anfangsergebnissignale LDINITRES*<0:15> zu erzeugen. Wie oben in 7B erläutert wurde, lädt jedes Signal LDINITRES*<N> das Anfangsergebnis INITRES aus der Auswerteschaltung 350 in die N Bits des Registers 360. Wie in 13 gezeigt ist, enthält der Dekodierer 412 insgesamt 16 NAND-Gatter, kollektiv mit dem Bezugszeichen 540 bezeichnet. Jedes der NAND-Gatter 540 empfängt eine einzigartige Kombination aus zwei Eingangssignalen von dem Vordekodierer 410, und sämtliche NAND-Gatter 514 empfangen das Signal LATRES. Es sei daran erinnert, dass das Signal LATRES von der Auswerteschaltung 350 (8) jedesmal dann erzeugt wird, wenn ein Initialisierungspaket empfangen wird. Allerdings geben nur die NAND-Gatter 540 ein aktives niedriges Signal LDINITRES* aus, da nur ein NAND-Gatter 540 von den beiden hohen Eingangssignalen des Vordekodierers 410 freigegeben werden. Das aktiv niedrige Signal LDINITRES* lädt dann das Signal INITRES in dasjenige Bit des Registers, welches dem durch die Ausgangssignale des Vordekodierers 410 gekennzeichneten Zählerstand entspricht. Die Art und Weise, in der die NAND-Gatter 540 diese Funktion übernehmen, ergibt sich für den Fachmann aus 13 und der Tabelle 2.
  • Wie oben in Verbindung mit 7B erläutert wurde, besteht die Funktion des Ergebnisauswahlkodierers 386 darin, zu unterscheiden zwischen einer Situation, in der zwei oder mehr Werte "1" sich in dem endgültigen Signal RES<0:15> befinden. Darin befindet sich nur eine "1", wenn es nur einen Satz von Einsen im Anfangswert RES>0:15> maximaler Länge gibt. Gibt es allerdings zwei oder mehr Sätze im Anfangswert RES<0:15>, die die gleiche Anzahl von Einsen haben, so enthält der endgültige Wert RES<0:15> mehr als eine "1". Der Ergebnisauswahlkodierer 386 wählt den niedrigsten Wert "1" im endgültigen Wert RES<0:15> und bringt die anderen Einsen zwangsweise auf "0". Der Ergebnisauswahlkodierer 386 ist in 14 in größerer Einzelheit dargestellt.
  • Gemäß 14 enthält der Ergebnisauswahlkodierer 386 einen Negator 550 sowie einen Satz von NAND-Gattern 552 bis 578, die jeweils ein Bit aus RES<0:14> und ein oder mehrere Signale vom Ausgang des Negators 550 empfangen, oder von NAND-Gattern 552578 empfangen, die ihrerseits RES-Bits niedrigerer Ordnung empfangen. Der Negator 550 gibt bei hohem RES<0> einen niedrigen Wert aus. Allerdings können die NAND-Gatter 572578 ansprechend auf hohe Eingangssignale RES nur dann einen niedrigen Wert ausgeben, wenn sie nicht von einem oder mehreren Signalen aus dem Negator 550 oder von den NAND-Gatter 552578 gesperrt werden, die RES-Bits geringerer Ordnung empfangen. Wenn der Negator 550 oder irgendeines von den NAND-Gattern 552578 einen niedrigen Wert ausgibt, sperrt dies sämtliche NAND-Gatter 552578, die RES-Bits höherer Ordnung empfangen. Wenn beispielsweise RES<0> den Wert "1" hat, sperrt der niedrige Wert am Ausgang des Negators 550 die NAND-Gatter 552554. Der niedrige Wert am Ausgang des Negators 550 wird auch an ein NAND-Gatter 590 gelegt, demzufolge ein niedriger Wert am Ausgang des Negators 592 entsteht. Der Negator 592 gibt ebenfalls einen niedrigen Wert ab, wenn die Ausgänge entweder vom NAND-Gatter 552 oder vom NAND-Gatter 554 ansprechend auf hohe Signale RES<1> oder RES<2> niedrigen Wert annehmen. Der niedrige Wert am Ausgang des Negators 552 sperrt die NAND-Gatter 556, 558 und wird außerdem an ein NAND-Gatter 594 gelegt, damit ein Negator 596 einen niedrigen Wert ausgibt. Dieser wiederum sperrt NAND-Gatter 560, 562 und wird an ein NAND-Gatter 502 gelegt, damit ein Negator 604 einen niedrigen Wert ausgibt. Der niedrige Wert am Ausgang des Negators 604 wiederum sperrt NAND-Gatter 564, 566 und wird an ein NAND-Gatter 606 gelegt, damit ein Negator 608 einen niedrigen Wert ausgibt, der wiederum NAND-Gatter 568, 570 sperrt und an ein NAND-Gatter 610 gelegt wird, damit ein Negator 612 einen niedrigen Wert ausgibt. Der niedrige Wert am Ausgang des Negators 612 sperrt NAND-Gatter 572, 574 und wird an ein NAND-Gatter 614 gelegt, damit ein Negator 616 einen niedrigen Wert ausgibt. Schließlich sperrt der niedrige Wert am Ausgang des Negators 616 NAND-Gatter 576, 578. Damit ist nur der Ausgang des Negators 550 auf niedrigem Wert, unabhängig davon, wie viele RES-Bits zusätzlich zu RES<0> einen hohen Wert haben.
  • Die Ausgänge des Negators 550 und der NAND-Gatter 552578 werden auf einen Satz von NAND-Gattern 620634 gegeben, die ihrerseits vier NOR-Gatter 670678 treiben. Die Funktion dieser NAND-Gatter 620632 sowie NOR-Gatter 670678 besteht darin, eine binäre Zahl P<0:3> zu erzeugen, entsprechend dem Komplement desjenigen Negators 550 oder NAND-Gatters 552578, welches einen niedrigen Wert abgibt. Der Negator 550 oder das NAND-Gatter 552578 wiederum ist kennzeichnend für das RES-Bit geringster Ordnung, welches eine "1" ist. Beispielsweise dekodieren die NAND-Gatter 620, 622 gemeinsam RES<0, 2, 4, 6, 8, 10, 12, 14>. Die NAND-Gatter 632, 634 dekodieren gemeinsam RES<8:15>.
  • Die Signale P<0:3> oder E<0:3> vom Zähler 400 werden von dem Multiplexer 390 (7B) auf den Zwischenspeicher 394 gekoppelt. Der Multiplexer 390 ist in 15 dargestellt. Die Signale P<0:3> werden über einzelne Negatoren 700 an Durchlassgatter 702 gegeben, die zu den Eingängen einzelner Negatoren 704 geleitet werden. In ähnlicher Weise werden die Signale E<0:3> über zugehörige Negatoren 706 an zugehörige Durchlassgatter 708 gelegt, die ebenfalls an Negatoren 704 gekoppelt. Die Durchlassgatter 702 werden direkt und über einen Negator 710 durch aktiv hohes Signal PHSELECTED freigegeben.
  • Wenn die Durchlassgatter 702 freigegeben sind, werden die Signale P<0:3> an die Negatoren 704 gegeben. Wenn das Signal PHSELECTED inaktiv niedrig ist, werden die Durchlassgatter 708 freigegeben, um das Signal E<0:3> an die Negatoren 704 zu geben. Diese geben folglich abhängig vom Zustand des Signals PHSELECTED als PHASEOUT<0:3> entweder P<0:3> oder E<0:3> aus. Wie oben erläutert, ist während der Initialisierungsprozedur das Signal PHSELECTED niedrig, so dass die Signale E<0:3> vom Zähler 400 die Anzapfung der Verzögerungsleitung 260 auswählen und dasjenige Bit des Registers 360 auswählen, in welchem jeder Wert INITRES gespeichert ist. Nachdem aber erst einmal die optimale Anzapfung der Verzögerungsleitung im Analysemodus ausgewählt wurde, geht PHSELECTED auf hohen Wert, um entsprechend dem endgültigen Wert RES<0:15> P<0:3> auszuwählen und so die Anzapfung der Verzögerungsleitung 260 zu kennzeichnen.
  • Der Multiplexer 390 enthält außerdem eine Verzögerungsschaltung 720, die das Signal PHSELECTED empfängt und ein Paar Negatoren 722, 724 treibt, um eine kurze Zeitspanne nach der Erzeugung des Signals PHSELECTED das Signal PHASEDONE zu erzeugen.
  • Die Signale PHASEOUT<0:3> vom Multiplexer 390 werden an den Zwischenspeicher 394 (7B) gelegt, der in 16 in größerer Einzelheit dargestellt ist. Die Signale PHASEOUT<0:3> werden an einzelne Zwischenspeicherschaltungen 730736 gelegt. Deren Ausgänge werden an zugehörige Durchlassgatter 740746 gegeben, die auf zugehörige Negatorenpaare 750756 gekoppelt werden. Die Zwischenspeicherschaltungen 730736 können selektiv von zugehörigen Durchlassgattern 760766 umgangen werden. Die Durchlassgatter 740746 und die Durchlassgatter 760766 sind derart miteinander verschaltet, dass die Durchlassgatter 740746 abwechselnd freigegeben werden mit den Durchlassgattern 760766.
  • Wie bereits früher erläutert wurde, ist im Lademodus der Einleitungsbefehl CMDINIT hoch und gibt damit die Durchlassgatter 760766 entweder direkt oder über einen Negator 770 frei. Im Ergebnis werden die Zwischenspeicher 730-736 im Lademodus umgangen, so dass der Phasenbefehl CMDPH<0:3> am Multiplexer 310 (5) zum Auswählen der Anzapfung der Verzögerungsleitung 260 stets dem Signal PHASEOUT<0:3> entspricht. Wenn allerdings der endgültige Wert RES<0:15> gewonnen wurde, wird das Signal PHASEDONE hoch und triggert damit über den Negator 776 den Impulsgenerator 774, und der von diesem erzeugte Impuls wird an die S-Gänge der Zwischenspeicherschaltung 730736 gelegt, das Komplement wird über einen Negator 778 an die Eingänge S* der Zwischenspeicherschaltung 730736 gegeben. Die Zwischenspeicher 730736 speichern dann die Signale PHASEOUT <0:3> entsprechend den vom Multiplexer 390 ausgewählten Signalen P<0:3>. Die Signale P<0:2> wiederum entsprechen den Werten niedrigster Ordnung des endgültigen Ergebnissignals RES<0:15>, welche eine "1" enthalten. Die in den Zwischenspeicherschaltungen 730736 gespeicherten Signalen PHASE-OUT<0:3> werden dann auf die Negatorenpaare 750756 mit Hilfe der Durchlassgatter 740746 gekoppelt, da zu diesem Zeitpunkt das Signal CMDINIT auf niedrigen Wert gegangen ist. Die Zwischenspeicher 730736 speichern die Signale PHASEOUT<0:3> solange, bis entweder in den Zwischenspeichern 730736 neue Signale PHASEOUT <0:3> gespeichert wurden, oder ein Rücksetzen der Signale durch Anlegen des Signals RESET* über ein Paar von Negatoren 780782 erfolgt ist. Dann bewirkt CMDPH<0:3>, dass der Multiplexer 310 (5) die Anzapfung der Verzögerungsleitung 260 auswählt, die zum Erzeugen des Signals ICLK während des Normalbetriebs verwendet wird.
  • Wenngleich die bevorzugte Ausführungsform der Erfindung in der Weise beschrieben wurde, dass sie hauptsächlich dazu dient, die Phase eines internen Taktsignals so einzustellen, dass sie exakt ein von außen angelegtes Befehlspaket übernehmen kann, versteht sich, dass die Erfindung auch für ähnliche Zwecke in Speicherbauelementen und anderen Typen integrierter Schaltungen eingesetzt werden kann. Beispielsweise kann, wie oben ausgeführt, das gleiche System dazu benutzt werden, die Phase eines internen Datentakts einzustellen in Relation zu dem externen Datentakts DCLK, der über die Leitung 132 (2) empfangen wurde, um Daten auf dem Datenbus 130 exakt zu übernehmen. Tatsächlich kann das System dazu eingesetzt werden, die zeitliche Lage von Taktsignalen so einzustellen, dass in exakter Weise jede Art von Eingangssig nalen übernommen wird, die an irgendeinen Typ einer integrierten Schaltung angelegt werden. Tatsächlich kann das System mit geringfügigen zusätzlichen Schaltungsmaßnahmen dazu benutzt werden, eine jeweilige Taktphase auszuwählen, die am besten mit jedem Eingangssignal übereinstimmt, welche an eine integrierte Schaltung angelegt wird. In einem solchen Fall würde das System sequenziell jeden Eingangsanschluss der integrierten Schaltung in der gleichen Weise auswerten, wie der Befehlsbus zu dem Zweck ausgewertet wurde, die optimale Taktphase zum Abfangen von Befehlspaketen vom Befehlsbus festzulegen.

Claims (23)

  1. Verfahren zum adaptiven Abstimmen der Phase eines internen Taktsignals (ICLK) relativ zu einem externen Taktsignal (CKEXT), umfassend die Schritte: wiederholtes Empfangen eines digitalen Signals mit einem vorbestimmten Wert; Zwischenspeichern mehrerer der empfangenen digitalen Signale ansprechend auf zugehörige Phasen des internen Taktsignals (ICLK); Untersuchen jedes der zwischengespeicherten digitalen Signale, um festzustellen, ob das zwischengespeicherte digitale Signal exakt zwischengespeichert wurde; Speichern eines Indikators ansprechend auf die Untersuchung jedes zwischengespeicherten digitalen Signals, wobei jeder Indikatorwert zu einer speziellen Phase des internen Taktsignals gehört und angibt, ob das zwischengespeicherte digitale Signal exakt zwischengespeichert wurde; gekennzeichnet durch Auswählen einer Phase des internen Taktsignals aus den Indikatorwerten, die angeben, dass das zugehörige zwischengespeicherte digitale Signal exakt zwischengespeichert wurde.
  2. Verfahren nach Anspruch 1, bei dem die Schritte des Untersuchens bis zum Auswählen umfassen: Bezeichnen jeder der Phasen des internen Taktsignals (ICLK), die die betreffenden digitalen Signale exakt zwischengespeichert haben, mit einem zugehörigen ersten logischen Wert; Bezeichnen jeder der Phasen des internen Taktsignals, die die betreffenden digitalen Signale ungenau zwischengespeichert haben, mit einem zugehörigen zweiten logischen Wert; Anordnen sämtlicher logischer Werte in einer Folge, in welcher jeder der logischen Werte eine Position einnimmt, die den Phasen des internen Taktsignals entspricht, welche die betreffenden digitalen Signale zwischengespeichert haben; wiederholtes Ändern der Folge jedes ersten logischen Werts, der sich rechts von einem zweiten logischen Wert befindet, in den zweiten logischen Wert, und jedes ersten logischen Werts links von einem zweiten logischen Wert in den zweiten logischen Wert solange, bis jeder der verbliebenen ersten logischen Werte von den zweiten logischen Werten umgeben ist; und Auswählen der Phase des internen Taktsignals (ICLK) in der Weise, dass sie der Position eines verbliebenen ersten logischen Werts entspricht.
  3. Verfahren nach Anspruch 2, bei dem der erste logische Wert eine logische "1" und der zweite eine logische "0" ist.
  4. Verfahren nach Anspruch 2, bei dem der Schritt des Auswählens der Phase des internen Taktsignals, in der Weise, dass sie der Position eines verbliebenen ersten logischen Werts entspricht, aufweist: Untersuchen der Folge logischer Werte, in welcher jeder der verbliebenen ersten logischen Werte von den zweiten logischen Werten umgeben ist; Ändern sämtlicher erster logischer Werte in der Folge, die sich auf der einen Seite eines ersten logischen Werts befinden, in den zweiten logischen Wert; und Auswählen der Phase des internen Taktsignals in der Weise, dass sie der Position des ungeänderten ersten logischen Werts entspricht.
  5. Verfahren nach Anspruch 1, bei der Schritt des wiederholten Empfangens eines digitalen Signals aufweist: wiederholtes Empfangen eines eine Mehrzahl in Initialisierungspaketwörtern enthaltenden Initialisierungspakets und Speichern jedes der Initialisierungspakete in einem Zwischenspeicher, ansprechend auf unterschiedliche Übergänge des internen Taktsignals (ICLK).
  6. Verfahren nach Anspruch 1, bei dem die Schritte des Untersuchens des Auswählens aufweisen: Paaren jedes exakt zwischengespeicherten digitalen Signals mit einer zugehörigen Phase des internen Taktsignals, die das digitale Signal dazu gebracht hat, exakt zwischengespeichert zu werden; und Auswählen aus den Phasen des internen Taktsignals derjenigen Phase, die in einer Paarung eines exakt zwischengespeicherten digitalen Signals mit einer Phase des internen Taktsignals enthalten ist.
  7. Verfahren nach Anspruch 1, bei dem der Schritt des Auswählens einer Phase des internen Taktsignals, die ein digitales Signal exakt zwischengespeichert hat, das Auswählen aus mehreren Phasen des internen Taktsignals beinhaltet, die einzelne digitale Signale exakt zwischengespeichert haben.
  8. System zum adaptiven Abstimmen der Phase eines internen Taktsignals (ICLK), die einen Zwischenspeicher (202, 208) dazu gebracht hat, ein digitales Signal (CA) ansprechend auf das interne Taktsignal (ICLK) zu speichern, umfassend: eine Taststeuerschaltung (210; 5), die die Phase des internen Taktsignals relativ zu einem externen Taktsignal (CKEXT) ansprechend auf ein Phasenbefehlssignal (CMDPH) steuert; eine Ladesteuerschaltung (314; 7A, 7B), die an ihrem Ausgang eine Mehrzahl der Phasenbefehlssignale (CMDPH) ansprechend auf den Empfang zwischengespeicherter digitaler Signale vom Ausgang des Zwischenspeichers (202, 208) erzeugt, wobei die Phasenbefehlssignale (CMDPH) an die Taktsteuerschaltung (210) geliefert werden und verschiedenen Phasen des internen Taktsignals (ICLK) entsprechen; wobei die Laststeuerschaltung (314) aufweist: eine Auswerteschaltung (350), die die zwischengespeicherten digitalen Signale vom Ausgang des Zwischenspeichers (202, 208) empfängt und bestimmt, ob jedes der zwischengespeicherten digitalen Signale einen vorbestimmten Wert hat, wobei die Auswerteschaltung (350) eine Mehrzahl von Ergebnissignalen erzeugt, die angeben, ob jedes der zwischengespeicherten digitalen Signale den vorbestimmten Wert hat; ein an die Auswerteschaltung (350) gekoppeltes Register (360), welches die Ergebnisssignale speichert; und eine Analyseschaltung (386, 390, 394), die an das Register (260) gekoppelt ist und die Ergebnissignale untersucht, um ein End-Phasenbefehlssignal (CMDPH) zu erzeugen, dadurch gekennzeichnet, dass die Analyseschaltung (386, 390, 394) die in dem Register (360) gespeicherten Ergebnisssignale untersucht, wobei das End-Phasenbefehlssignal kontinuierlich über den Ausgang der Ladesteuerschaltung (314) an die Taktsteuerschaltung (210) gelegt wird, um dadurch kontinuierlich die Phase des internen Taktsignals (ICLK) in Bezug auf das externe Taktsignal (CKEXT) zu halten.
  9. System nach Anspruch 8, bei dem die Analyseschaltung aufweist: eine Mehrzahl von logischen Elementen (374a–p), die in der Anzahl der Anzahl der Speicherstellen in dem Register (360) entsprechen, und von denen jedes logische Element (374a–p) ein in einer zugehörigen Stelle des Registers (360) gespeichertes Ergebnissignal und ein in einer benachbarten Stelle in dem Register (360) gespeichertes Ergebnissignal empfängt, wobei jedes der logischen Elemente (374a–p) ein Vergleichssignal erzeugt, welches sich durch den Vergleich der Ergebnissignale ergibt, die von dem logischen Element (374a–p) empfangen werden; eine Rückkopplungsschaltung, die die Vergleichssignale zu dem Register (260) zur dortigen Speicherung zurückkoppelt, wobei die Rückkopplungsschaltung alternativ die Stelle ändert, in welcher jedes Vergleichssignal zwischen zwei benachbarten Speicherstellen gespeichert wird; ein Endergebnisdetektor (386, 390), welcher ermittelt, wann die Vergleichssignale eine vorbestimmte Charakteristik haben; und eine Phasenbefehlsausgabeschaltung (394), die an den Endergebnisdetektor (390) gekoppelt ist, um aus den in dem Register (360) gespeicherten Signalen ein End-Phasenbefehlssignal abzuleiten, wenn der Endergebnisdetektor (386, 390) feststellt, dass die Vergleichssignale die vorbestimmte Charakteristik aufweisen.
  10. System nach Anspruch 8, bei dem die Analyseschaltung einen an das Register (260) gekoppelten Logikschaltkreis aufweisen, welcher eine Menge Phasenbefehlssignale entsprechend einer zusammenhängende Menge von Taktphasen kennzeichnet, welche den Zwischenspeicher (202, 208) dazu gebracht haben, digitale Signale mit dem vorbestimmten Wert zu speichern, wobei der Logikschaltkreis als das End-Phasenbefehlssignal ein Phasenbefehlssignal (CMDPH) erzeugt, welches innerhalb des Bereichs von Taktphasen einer Taktphase entspricht, die den Zwischenspeicher dazu gebracht hat, Digitalsignale mit dem vorbestimmten Wert zu speichern.
  11. System nach Anspruch 10, bei der Logikschaltkreis als End-Phasenbefehlssignal ein solches Phasenbefehlssignal (CMDPH) erzeugt, welches einer Taktphase etwa in der Mitte eines Bereichs von Taktphasen entspricht, die den Zwischenspeicher dazu gebracht haben, digitale Signale mit dem vorbestimmten Wert zu speichern.
  12. System nach Anspruch 10, bei dem die logische Schaltung die interne Taktphase etwa in der Mitte jedes aus einer Mehrzahl identisch bemessener Bereiche der hinteren Taktphasen kennzeichnet, die den Zwischenspeicher (202, 208) dazu gebracht haben, digitale Signale mit dem vorbestimmten Wert zu speichern, und als End-Phasen-Befehlssignal ein Phasenbefehlssignal (CMDPH) erzeugt, welches einer gekennzeichneten internen Taktphase an einer Stelle innerhalb des Bereichs relativ zu den Stellen sämtlicher übriger gekennzeichneter interner Taktphasen in dem Bereich entspricht.
  13. System nach Anspruch 8, bei dem die Analyseschaltung aufweist: eine Mehrzahl logischer Gatter (374a–p), in ihrer Anzahl entsprechend der Anzahl von Ergebnissignalen, die in einzelnen Bits des Register (360) gespeichert sind, wobei jedes der logischen Gatter (374a–p) einen ersten Eingang aufweist, der mit dem zugehörigen Bit des Registers (360) gekoppelt ist, und einen zweiten Eingang aufweist, der mit einem Bit des Registers (360) benachbart zu dem zugehörigen Bit des Registers (360) gekoppelt ist, wobei das erste und das letzte Bit des Registers (360) als einander benachbarte Bits angesehen werden; ein Rückkopplungsschaltung, die abwechselnd den Ausgang jedes der logischen Gatter mit dem Eingang eines zugehörigen Bits des Registers oder mit dem Eingang eines Bits des Registers (360) koppelt, welches dem zugehörigen Bit des Registers (360) benachbart ist; und ein Endergebnisdetektor (386, 389), der an die Ausgänge der logischen Gatter (374a–p) gekoppelt ist und feststellt, wann sämtliche Ausgänge der logischen Gatter (374a–p) den gleichen logischen Pegel aufweisen.
  14. System nach Anspruch 8, bei dem die Analyseschaltung eine Menge logischer Gatter (374a–p) aufweist, deren Anzahl der Anzahl von in einzelnen Bits des Registers (360) gespeicherten Ergebnissignalen entspricht, wobei jedes der logischen Gatter (374a–p) mit einem ersten Eingang an ein zugehöriges Bit des Registers (360) und mit einem zweiten Eingang an die Ausgänge logischer Gatter gekoppelt ist, deren Eingänge an Bits des Registers (360) angeschlossen sind, die sich auf einer Seite desjenigen Bits befinden, an welches das logische Gatter gekoppelt ist, wobei jedes der logischen Gatter (374a–p) von einem an den zweiten Eingang des Gatters angelegten Signal gesperrt wird, so dass nur ein logisches Gatter ein Ausgangssignal mit einem ersten logischen Pegel ansprechend auf von den zugehörigen Bits des Registers (360) empfangene Signale erzeugt.
  15. System nach Anspruch 8, bei dem die Laststeuerschaltung (314) aufweist: einen Zähler (400), der jedesmal erhöht wird, wenn eines der digitalen Signale (CA) in dem Zwischenspeicher (202, 208) gespeichert wird, wobei der Zähler (400) Zählsignale erzeugt, die kennzeichnend sind für den Zählerstand des Zählers (400); und einen Dekodieren, der die Zählsignale empfängt und ansprechend auf die Zählsignale die Phasenbefehlssignale erzeugt, wobei die Phase des internen Taktsignals bestimmt durch jedes dem Zählerstand des Zählers (400) entsprechende Befehlssignal.
  16. System nach Anspruch 8, bei dem das Register (360) außerdem eine Adressenschaltung aufweist, um jedes der Ergebnissignale jedes in dem Register (360) an einer Stelle zu speichern, die einer Registeradresse entspricht, wobei die Ladesteuerschaltung weiterhin eine Adressenerzeugungsschaltung aufweist, die mit dem Register (360) gekoppelt ist und die Registeradresse entsprechend dem Zählerstand des Zählers erzeugt.
  17. Paketierter dynamischer Schreib-/Lesespeicher (16a), umfassend: eine Takterzeugerschaltung, die ein internes Taktsignal (ICLK) mit einer Phase relativ zu einem externen Taktsignal (CKEXT) erzeugt, die von einem Phasenbefehlssignal bestimmt wird; mindestens ein Speicherzellenarray zum Speichern von Daten an einer Stelle, die durch eine Reihenadresse und eine Spaltenadresse festgelegt wird; eine Reihenadressenschaltung (82a82h) ausgebildet für den Empfang und die Dekodierung der Reihenadresse sowie zum Auswählen einer Reihe von Speicherzellen entsprechend der Reihenadresse, ansprechend auf eine erste Menge von Befehlssignalen; eine Spaltenadressenschaltung (100, 102), ausgebildet für den Empfang und das Anlegen von Daten an eine der Speicherzellen in der ausgewählten Reihe entsprechend der Spaltenadresse, ansprechend auf eine zweite Menge von Befehlssignalen; und eine Datenwegschaltung (108), ausgebildet zum Koppeln von Daten zwischen einem externen Anschluss und der Spaltenadressenschaltung, ansprechend auf eine dritte Menge von Befehlssignalen; dadurch gekennzeichnet, dass die Takterzeugerschaltung ein System nach einem der Ansprüche 8 bis 16 aufweist.
  18. Speicherbauelement, ausgebildet zum Empfangen einer Mehrzahl von Eingangssignalen und zum Erzeugen mehrerer Ausgangssignale an zugehörigen, von außen her zugänglichen Anschlüssen, umfassend: eine Takterzeugerschaltung, die ein an einem der Anschlüsse angelegtes externes Taktsignal empfängt und ein internes Taktsignal mit einer durch ein Phasenbefehlssignal bestimmten Phase in Bezug auf das externe Taktsignal erzeugt; mindestens ein Speicherzellenarray, ausgebildet zum Speichern von Daten an einer Stelle, die durch eine Reihenadresse und eine Spaltenadresse bestimmt wird, die an zugehörige andere Anschlüsse angelegt werden; eine Reihenadressenschaltung, ausgebildet zum Empfangen und zum Dekodieren einer Reihenadresse, außerdem zum Auswählen einer Reihe von Speicherzellen entsprechend der Reihenadresse, ansprechend auf eine erste Menge von Befehlssignalen; eine Spaltenadressenschaltung, ausgebildet zum Empfangen oder zum Anlegen von Daten an eine der Speicherzellen in einer ausgewählten Reihe entsprechend der Spaltenadresse, ansprechend auf eine zweite Menge von Befehlssignalen; eine Datenwegschaltung, ausgebildet zum Koppeln von Daten zwischen anderen der Anschlüsse und der Spaltenadressenschaltung, ansprechend auf eine dritte Menge von Befehlssignalen; und einen Befehlspuffer, der Speicherbefehle an anderen der Anschlüsse empfängt, wobei die Speicherbefehle den Betrieb des Speicherbauelements steuern, dadurch gekennzeichnet, dass die Takterzeugerschaltung ein System nach einem der Ansprüche 8 bis 16 aufweist.
  19. Speicherbauelement nach Anspruch 18, bei der Eingang des Zwischenspeichers (202, 208) an den Anschluss gekoppelt ist, der die Speicherbefehle empfängt, und der Ausgang des Zwischenspeichers (202, 208) an den Befehlspuffer gekoppelt ist.
  20. Integrierte Schaltung, ausgebildet zum Empfangen einer Mehrzahl von Eingangssignalen und zum Erzeugen einer Mehrzahl von Ausgangssignalen auf zugehörigen, von außen her zugänglichen Anschlüssen, umfassend: eine Takterzeugerschaltung, die ein externes Taktsignal (CKEXT) empfängt, welches an einem der Anschlüsse angelegt wird, und zum Erzeugen eines internen Taktsignals (ICLK) mit einer Phase bezüglich des externen Taktsignals, die von einem Phasenbefehlssignal bestimmt wird; eine Schaltung zum Empfangen einer Mehrzahl von Eingangssignalen, die an andere Anschlüsse angelegt werden, und zum Erzeugen einer Mehrzahl von Ausgangssignalen an weiteren Anschlüssen; dadurch gekennzeichnet, dass die Takterzeugerschaltung ein System nach einem der Ansprüche 8 bis 16 aufweist.
  21. Integrierte Schaltung nach Anspruch 20, umfassend ein Speicherbauelement (16a) mit einem Befehlspuffer, der Speicherbefehle auf zugehörigen Anschlüssen des Speicherbauelements empfängt, wobei die Speicherbefehle den Betrieb des Speicherbauelement steuern.
  22. Integrierte Schaltung nach Anspruch 21, bei der der Eingang des Zwischenspeichers (202, 208) mit dem Anschluss gekoppelt ist, der die Speicherbefehle empfängt, und der Ausgang des Zwischenspeichers mit dem Befehlspuffer gekoppelt ist.
  23. Computersystem, umfassend: einen Prozessor mit einem Prozessorbus; eine Eingabeeinrichtung, die mit dem Prozessor über den Prozessorbus gekoppelt ist und dazu ausgebildet ist, Daten in das Computersystem einzugeben; eine Ausgangseinrichtung, die mit dem Prozessor über den Prozessorbus gekoppelt ist und dazu dient, Daten aus dem Computersystem auszugeben; und einen dynamischen Schreib-/Lesespeicher, der mit dem Prozessorbus gekoppelt ist und dazu ausgebildet ist, Daten zu speichern, wobei der Speicher die Merkmale des Anspruchs 18 oder 19 aufweist.
DE69826863T 1997-07-09 1998-07-02 Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet Expired - Lifetime DE69826863T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US890055 1992-05-28
US08/890,055 US5953284A (en) 1997-07-09 1997-07-09 Method and apparatus for adaptively adjusting the timing of a clock signal used to latch digital signals, and memory device using same
PCT/US1998/012656 WO1999003106A1 (en) 1997-07-09 1998-07-02 Method and apparatus for adaptively adjusting the timing of a clock signal used to latch digital signals, and memory device using same

Publications (2)

Publication Number Publication Date
DE69826863D1 DE69826863D1 (de) 2004-11-11
DE69826863T2 true DE69826863T2 (de) 2005-10-20

Family

ID=25396185

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69826863T Expired - Lifetime DE69826863T2 (de) 1997-07-09 1998-07-02 Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet

Country Status (7)

Country Link
US (2) US5953284A (de)
EP (1) EP0995196B1 (de)
AT (1) ATE279007T1 (de)
AU (1) AU8373898A (de)
DE (1) DE69826863T2 (de)
TW (1) TW452682B (de)
WO (1) WO1999003106A1 (de)

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940608A (en) 1997-02-11 1999-08-17 Micron Technology, Inc. Method and apparatus for generating an internal clock signal that is synchronized to an external clock signal
US5946244A (en) 1997-03-05 1999-08-31 Micron Technology, Inc. Delay-locked loop with binary-coupled capacitor
US6173432B1 (en) * 1997-06-20 2001-01-09 Micron Technology, Inc. Method and apparatus for generating a sequence of clock signals
US5926047A (en) * 1997-08-29 1999-07-20 Micron Technology, Inc. Synchronous clock generator including a delay-locked loop signal loss detector
US6000022A (en) 1997-10-10 1999-12-07 Micron Technology, Inc. Method and apparatus for coupling signals between two circuits operating in different clock domains
US5982213A (en) * 1997-11-14 1999-11-09 Texas Instruments Incorporated Digital phase lock loop
US6487647B1 (en) * 1997-12-29 2002-11-26 Intel Corporation Adaptive memory interface timing generation
US6269451B1 (en) 1998-02-27 2001-07-31 Micron Technology, Inc. Method and apparatus for adjusting data timing by delaying clock signal
US6253333B1 (en) * 1998-03-23 2001-06-26 International Business Machines Corporation Apparatus and method for testing programmable delays
JP2000036192A (ja) * 1998-07-17 2000-02-02 Fujitsu Ltd 半導体集積回路
US6338127B1 (en) 1998-08-28 2002-01-08 Micron Technology, Inc. Method and apparatus for resynchronizing a plurality of clock signals used to latch respective digital signals, and memory device using same
US6434684B1 (en) * 1998-09-03 2002-08-13 Micron Technology, Inc. Method and apparatus for coupling signals across different clock domains, and memory device and computer system using same
US6279090B1 (en) 1998-09-03 2001-08-21 Micron Technology, Inc. Method and apparatus for resynchronizing a plurality of clock signals used in latching respective digital signals applied to a packetized memory device
US6349399B1 (en) * 1998-09-03 2002-02-19 Micron Technology, Inc. Method and apparatus for generating expect data from a captured bit pattern, and memory device using same
US6128749A (en) * 1998-11-03 2000-10-03 Intel Corporation Cross-clock domain data transfer method and apparatus
US6430696B1 (en) 1998-11-30 2002-08-06 Micron Technology, Inc. Method and apparatus for high speed data capture utilizing bit-to-bit timing correction, and memory device using same
US6374360B1 (en) 1998-12-11 2002-04-16 Micron Technology, Inc. Method and apparatus for bit-to-bit timing correction of a high speed memory bus
KR100359157B1 (ko) * 1998-12-30 2003-01-24 주식회사 하이닉스반도체 라이트 명령어 레이턴시회로 및 그 제어방법
KR100295056B1 (ko) * 1999-01-27 2001-07-12 윤종용 지연동기루프 및 방법
US6470060B1 (en) 1999-03-01 2002-10-22 Micron Technology, Inc. Method and apparatus for generating a phase dependent control signal
JP2001068650A (ja) * 1999-08-30 2001-03-16 Hitachi Ltd 半導体集積回路装置
US7051130B1 (en) 1999-10-19 2006-05-23 Rambus Inc. Integrated circuit device that stores a value representative of a drive strength setting
US6321282B1 (en) 1999-10-19 2001-11-20 Rambus Inc. Apparatus and method for topography dependent signaling
US6643787B1 (en) * 1999-10-19 2003-11-04 Rambus Inc. Bus system optimization
US6646953B1 (en) * 2000-07-06 2003-11-11 Rambus Inc. Single-clock, strobeless signaling system
US6333893B1 (en) * 2000-08-21 2001-12-25 Micron Technology, Inc. Method and apparatus for crossing clock domain boundaries
US6704828B1 (en) * 2000-08-31 2004-03-09 Micron Technology, Inc. System and method for implementing data pre-fetch having reduced data lines and/or higher data rates
WO2002030036A1 (en) * 2000-10-06 2002-04-11 Flextronics Semiconductor Design, Inc. Coherent expandable high speed interface
GB2370450B (en) * 2000-12-19 2004-07-07 Voxsurf Ltd Messaging protocol
FR2818424B1 (fr) * 2000-12-20 2003-02-28 St Microelectronics Sa Procede et systeme d'ajustement d'une temporisation interne ou d'une reference associee dans un circuit integre et circuit integre correspondant
US7079775B2 (en) * 2001-02-05 2006-07-18 Finisar Corporation Integrated memory mapped controller circuit for fiber optics transceiver
US6535038B2 (en) 2001-03-09 2003-03-18 Micron Technology, Inc. Reduced jitter clock generator circuit and method for applying properly phased clock signals to clocked devices
US6763444B2 (en) 2001-05-08 2004-07-13 Micron Technology, Inc. Read/write timing calibration of a memory array using a row or a redundant row
US6801989B2 (en) 2001-06-28 2004-10-05 Micron Technology, Inc. Method and system for adjusting the timing offset between a clock signal and respective digital signals transmitted along with that clock signal, and memory device and computer system using same
US6618283B2 (en) 2001-08-29 2003-09-09 Micron Technology, Inc. System and method for skew compensating a clock signal and for capturing a digital signal using the skew compensated clock signal
US6779096B1 (en) * 2001-09-29 2004-08-17 Apple Computer, Inc. Method and apparatus for a calibrated variable phase offset timing between synchronous clock subdomains
DE10149192B4 (de) * 2001-10-05 2005-07-14 Infineon Technologies Ag Vorrichtung zum Erzeugen von Speicher-internen Befehlssignalen aus einem Speicheroperationsbefehl
WO2003036850A1 (en) * 2001-10-22 2003-05-01 Rambus Inc. Phase adjustment apparatus and method for a memory device signaling system
US6911853B2 (en) * 2002-03-22 2005-06-28 Rambus Inc. Locked loop with dual rail regulation
US6759881B2 (en) * 2002-03-22 2004-07-06 Rambus Inc. System with phase jumping locked loop circuit
US6922091B2 (en) 2002-09-03 2005-07-26 Rambus Inc. Locked loop circuit with clock hold function
US6952123B2 (en) 2002-03-22 2005-10-04 Rambus Inc. System with dual rail regulated locked loop
US7135903B2 (en) * 2002-09-03 2006-11-14 Rambus Inc. Phase jumping locked loop circuit
KR100510063B1 (ko) * 2002-12-24 2005-08-26 주식회사 하이닉스반도체 레지스터 제어 지연고정루프
KR100495908B1 (ko) * 2003-04-29 2005-06-17 주식회사 하이닉스반도체 개선된 출력제어신호를 생성할 수 있는 반도체 집적회로및 개선된 출력제어신호발생방법
US7168027B2 (en) 2003-06-12 2007-01-23 Micron Technology, Inc. Dynamic synchronization of data capture on an optical or other high speed communications link
KR20050022798A (ko) * 2003-08-30 2005-03-08 주식회사 이즈텍 유전자 어휘 분류체계를 이용하여 바이오 칩을 분석하기위한 시스템 및 그 방법
US7234070B2 (en) * 2003-10-27 2007-06-19 Micron Technology, Inc. System and method for using a learning sequence to establish communications on a high-speed nonsynchronous interface in the absence of clock forwarding
US7065666B2 (en) * 2003-11-13 2006-06-20 Micron Technology, Inc. Apparatus and method for generating a delayed clock signal
US7119583B2 (en) * 2004-03-31 2006-10-10 Micron Technology, Inc. Phase detector and method having hysteresis characteristics
JP4732709B2 (ja) * 2004-05-20 2011-07-27 株式会社半導体エネルギー研究所 シフトレジスタ及びそれを用いた電子機器
US7142477B1 (en) * 2004-06-18 2006-11-28 Cypress Semiconductor Corp. Memory interface system and method for reducing cycle time of sequential read and write accesses using separate address and data buses
US7072378B2 (en) * 2004-08-25 2006-07-04 Battelle Energy Alliance, Llc Induction heating apparatus and methods for selectively energizing an inductor in response to a measured electrical characteristic that is at least partially a function of a temperature of a material being heated
US7085305B2 (en) * 2004-08-25 2006-08-01 Battelle Energy Alliance, Llc Induction heating apparatus and methods of operation thereof
US7126874B2 (en) * 2004-08-31 2006-10-24 Micron Technology, Inc. Memory system and method for strobing data, command and address signals
KR100604904B1 (ko) * 2004-10-02 2006-07-28 삼성전자주식회사 스캔 입력을 갖는 플립 플롭 회로
US7417907B1 (en) 2004-12-23 2008-08-26 Sun Microsystems, Inc. Systems and methods for resolving memory address collisions
US7752410B1 (en) * 2005-01-14 2010-07-06 Oracle America, Inc. System and method for accessing data in a multicycle operations cache
US7493461B1 (en) * 2005-01-20 2009-02-17 Altera Corporation Dynamic phase alignment for resynchronization of captured data
US7496167B2 (en) * 2005-01-20 2009-02-24 Marvell World Trade Ltd. Storage efficient sliding window sum
US8081474B1 (en) 2007-12-18 2011-12-20 Google Inc. Embossed heat spreader
US8060774B2 (en) 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
US8796830B1 (en) 2006-09-01 2014-08-05 Google Inc. Stackable low-profile lead frame package
US8130560B1 (en) 2006-11-13 2012-03-06 Google Inc. Multi-rank partial width memory modules
US7392338B2 (en) 2006-07-31 2008-06-24 Metaram, Inc. Interface circuit system and method for autonomously performing power management operations in conjunction with a plurality of memory circuits
US8335894B1 (en) 2008-07-25 2012-12-18 Google Inc. Configurable memory system with interface circuit
US9542352B2 (en) * 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US8090897B2 (en) * 2006-07-31 2012-01-03 Google Inc. System and method for simulating an aspect of a memory circuit
US8438328B2 (en) 2008-02-21 2013-05-07 Google Inc. Emulation of abstracted DIMMs using abstracted DRAMs
US7590796B2 (en) * 2006-07-31 2009-09-15 Metaram, Inc. System and method for power management in memory systems
US8386722B1 (en) 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
US9507739B2 (en) 2005-06-24 2016-11-29 Google Inc. Configurable memory circuit system and method
US8089795B2 (en) * 2006-02-09 2012-01-03 Google Inc. Memory module with memory stack and interface with enhanced capabilities
US20080082763A1 (en) 2006-10-02 2008-04-03 Metaram, Inc. Apparatus and method for power management of memory circuits by a system or component thereof
US8077535B2 (en) 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US8397013B1 (en) 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
US8359187B2 (en) * 2005-06-24 2013-01-22 Google Inc. Simulating a different number of memory circuit devices
US7386656B2 (en) * 2006-07-31 2008-06-10 Metaram, Inc. Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit
US8055833B2 (en) 2006-10-05 2011-11-08 Google Inc. System and method for increasing capacity, performance, and flexibility of flash storage
US8041881B2 (en) 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US8111566B1 (en) 2007-11-16 2012-02-07 Google, Inc. Optimal channel design for memory devices for providing a high-speed memory interface
US20080028136A1 (en) * 2006-07-31 2008-01-31 Schakel Keith R Method and apparatus for refresh management of memory modules
US8244971B2 (en) 2006-07-31 2012-08-14 Google Inc. Memory circuit system and method
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US7609567B2 (en) * 2005-06-24 2009-10-27 Metaram, Inc. System and method for simulating an aspect of a memory circuit
US10013371B2 (en) 2005-06-24 2018-07-03 Google Llc Configurable memory circuit system and method
US8327104B2 (en) 2006-07-31 2012-12-04 Google Inc. Adjusting the timing of signals associated with a memory system
US7236028B1 (en) * 2005-07-22 2007-06-26 National Semiconductor Corporation Adaptive frequency variable delay-locked loop
WO2007028109A2 (en) * 2005-09-02 2007-03-08 Metaram, Inc. Methods and apparatus of stacking drams
US7549092B2 (en) * 2005-09-29 2009-06-16 Hynix Semiconductor, Inc. Output controller with test unit
US9632929B2 (en) 2006-02-09 2017-04-25 Google Inc. Translating an address associated with a command communicated between a system and memory circuits
US7509223B2 (en) * 2006-04-21 2009-03-24 Altera Corporation Read-side calibration for data interface
US7706996B2 (en) * 2006-04-21 2010-04-27 Altera Corporation Write-side calibration for data interface
US7724589B2 (en) * 2006-07-31 2010-05-25 Google Inc. System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits
US20080028137A1 (en) * 2006-07-31 2008-01-31 Schakel Keith R Method and Apparatus For Refresh Management of Memory Modules
US7688928B2 (en) * 2006-09-05 2010-03-30 Lsi Corporation Duty cycle counting phase calibration scheme of an input/output (I/O) interface
US7928770B1 (en) 2006-11-06 2011-04-19 Altera Corporation I/O block for high performance memory interfaces
US7423456B2 (en) * 2006-12-01 2008-09-09 Micron Technology, Inc. Fast response time, low power phase detector circuits, devices and systems incorporating the same, and associated methods
WO2008098342A1 (en) * 2007-02-16 2008-08-21 Mosaid Technologies Incorporated Semiconductor device and method for reducing power consumption in a system having interconnected devices
US8209479B2 (en) 2007-07-18 2012-06-26 Google Inc. Memory circuit system and method
US7816960B2 (en) * 2007-08-09 2010-10-19 Qualcomm Incorporated Circuit device and method of measuring clock jitter
US8080874B1 (en) 2007-09-14 2011-12-20 Google Inc. Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween
US8204166B2 (en) 2007-10-08 2012-06-19 Freescale Semiconductor, Inc. Clock circuit with clock transfer capability and method
US8239715B2 (en) * 2008-06-24 2012-08-07 International Business Machines Corporation Method and apparatus for a robust embedded interface
US7937632B2 (en) * 2008-06-24 2011-05-03 International Business Machines Corporation Design structure and apparatus for a robust embedded interface
US8074040B2 (en) * 2008-09-23 2011-12-06 Mediatek Inc. Flash device and method for improving performance of flash device
US8149643B2 (en) * 2008-10-23 2012-04-03 Cypress Semiconductor Corporation Memory device and method
EP2441007A1 (de) * 2009-06-09 2012-04-18 Google, Inc. Programmierung von dimm-abschlusswiderstandswerten
WO2011130007A1 (en) * 2010-04-14 2011-10-20 Rambus Inc. Levelization of memory interface for communicating with multiple memory devices
KR101930779B1 (ko) * 2012-04-04 2018-12-20 에스케이하이닉스 주식회사 반도체 메모리 회로 및 이를 이용한 데이터 처리 시스템
US10944387B2 (en) 2019-06-14 2021-03-09 Stmicroelectronics International N.V. Programmable delay circuit
CN113808634B (zh) * 2020-06-11 2024-02-27 华邦电子股份有限公司 延迟锁相回路装置及其更新方法

Family Cites Families (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3633174A (en) * 1970-04-14 1972-01-04 Us Navy Memory system having self-adjusting strobe timing
US4096402A (en) * 1975-12-29 1978-06-20 Mostek Corporation MOSFET buffer for TTL logic input and method of operation
US4096403A (en) * 1976-06-28 1978-06-20 Electric Power Research Institute, Inc. Superconducting hybrid magnetic flux pump
US4077016A (en) * 1977-02-22 1978-02-28 Ncr Corporation Apparatus and method for inhibiting false locking of a phase-locked loop
US4404474A (en) * 1981-02-06 1983-09-13 Rca Corporation Active load pulse generating circuit
US4481625A (en) * 1981-10-21 1984-11-06 Elxsi High speed data bus system
US4511846A (en) * 1982-05-24 1985-04-16 Fairchild Camera And Instrument Corporation Deskewing time-critical signals in automatic test equipment
US4514647A (en) * 1983-08-01 1985-04-30 At&T Bell Laboratories Chipset synchronization arrangement
US4687951A (en) * 1984-10-29 1987-08-18 Texas Instruments Incorporated Fuse link for varying chip operating parameters
US4600895A (en) * 1985-04-26 1986-07-15 Minnesota Mining And Manufacturing Company Precision phase synchronization of free-running oscillator output signal to reference signal
US4638187A (en) * 1985-10-01 1987-01-20 Vtc Incorporated CMOS output buffer providing high drive current with minimum output signal distortion
GB2184622B (en) * 1985-12-23 1989-10-18 Philips Nv Outputbuffer and control circuit providing limited current rate at the output
JPS6337894A (ja) * 1986-07-30 1988-02-18 Mitsubishi Electric Corp ランダムアクセスメモリ
US4773085A (en) * 1987-06-12 1988-09-20 Bell Communications Research, Inc. Phase and frequency detector circuits
US5086500A (en) * 1987-08-07 1992-02-04 Tektronix, Inc. Synchronized system by adjusting independently clock signals arriving at a plurality of integrated circuits
US4893087A (en) * 1988-01-07 1990-01-09 Motorola, Inc. Low voltage and low power frequency synthesizer
KR0141494B1 (ko) * 1988-01-28 1998-07-15 미다 가쓰시게 레벨시프트회로를 사용한 고속센스 방식의 반도체장치
US4902986B1 (en) * 1989-01-30 1998-09-01 Credence Systems Corp Phased locked loop to provide precise frequency and phase tracking of two signals
US5020023A (en) * 1989-02-23 1991-05-28 International Business Machines Corporation Automatic vernier synchronization of skewed data streams
US4958088A (en) * 1989-06-19 1990-09-18 Micron Technology, Inc. Low power three-stage CMOS input buffer with controlled switching
US5165046A (en) * 1989-11-06 1992-11-17 Micron Technology, Inc. High speed CMOS driver circuit
JP2671538B2 (ja) * 1990-01-17 1997-10-29 松下電器産業株式会社 入力バッファ回路
JP2787725B2 (ja) * 1990-02-14 1998-08-20 第一電子工業株式会社 データ・クロックのタイミング合わせ回路
US5408640A (en) * 1990-02-21 1995-04-18 Digital Equipment Corporation Phase delay compensator using gating signal generated by a synchronizer for loading and shifting of bit pattern to produce clock phases corresponding to frequency changes
US5239206A (en) * 1990-03-06 1993-08-24 Advanced Micro Devices, Inc. Synchronous circuit with clock skew compensating function and circuits utilizing same
US5165049A (en) * 1990-04-02 1992-11-17 Inductotherm Corp. Phase difference control circuit for induction furnace power supply
US5243703A (en) * 1990-04-18 1993-09-07 Rambus, Inc. Apparatus for synchronously generating clock signals in a data processing system
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5038115A (en) * 1990-05-29 1991-08-06 Myers Glen A Method and apparatus for frequency independent phase tracking of input signals in receiving systems and the like
US5134311A (en) * 1990-06-07 1992-07-28 International Business Machines Corporation Self-adjusting impedance matching driver
JP2740063B2 (ja) 1990-10-15 1998-04-15 株式会社東芝 半導体記憶装置
US5122690A (en) * 1990-10-16 1992-06-16 General Electric Company Interface circuits including driver circuits with switching noise reduction
US5257294A (en) * 1990-11-13 1993-10-26 National Semiconductor Corporation Phase-locked loop circuit and method
TW198135B (de) * 1990-11-20 1993-01-11 Oki Electric Ind Co Ltd
US5128563A (en) * 1990-11-28 1992-07-07 Micron Technology, Inc. CMOS bootstrapped output driver method and circuit
US5281865A (en) * 1990-11-28 1994-01-25 Hitachi, Ltd. Flip-flop circuit
US5150186A (en) * 1991-03-06 1992-09-22 Micron Technology, Inc. CMOS output pull-up driver
US5128560A (en) * 1991-03-22 1992-07-07 Micron Technology, Inc. Boosted supply output driver circuit for driving an all N-channel output stage
US5220208A (en) * 1991-04-29 1993-06-15 Texas Instruments Incorporated Circuitry and method for controlling current in an electronic circuit
US5256989A (en) * 1991-05-03 1993-10-26 Motorola, Inc. Lock detection for a phase lock loop
US5212601A (en) * 1991-05-03 1993-05-18 Western Digital Corporation Disk drive data synchronizer with window shift synthesis
US5194765A (en) * 1991-06-28 1993-03-16 At&T Bell Laboratories Digitally controlled element sizing
US5276642A (en) * 1991-07-15 1994-01-04 Micron Technology, Inc. Method for performing a split read/write operation in a dynamic random access memory
KR970005124B1 (ko) * 1991-08-14 1997-04-12 가부시끼가이샤 아드반테스트 가변지연회로
US5465076A (en) * 1991-10-04 1995-11-07 Nippondenso Co., Ltd. Programmable delay line programmable delay circuit and digital controlled oscillator
US5283631A (en) * 1991-11-01 1994-02-01 Hewlett-Packard Co. Programmable capacitance delay element having inverters controlled by adjustable voltage to offset temperature and voltage supply variations
US5498990A (en) * 1991-11-05 1996-03-12 Monolithic System Technology, Inc. Reduced CMOS-swing clamping circuit for bus lines
US5295164A (en) * 1991-12-23 1994-03-15 Apple Computer, Inc. Apparatus for providing a system clock locked to an external clock over a wide range of frequencies
DE4206082C1 (de) * 1992-02-27 1993-04-08 Siemens Ag, 8000 Muenchen, De
DE4345604B3 (de) * 1992-03-06 2012-07-12 Rambus Inc. Vorrichtung zur Kommunikation mit einem DRAM
US5355391A (en) * 1992-03-06 1994-10-11 Rambus, Inc. High speed bus system
US5278460A (en) * 1992-04-07 1994-01-11 Micron Technology, Inc. Voltage compensating CMOS input buffer
US5390308A (en) * 1992-04-15 1995-02-14 Rambus, Inc. Method and apparatus for address mapping of dynamic random access memory
US5254883A (en) * 1992-04-22 1993-10-19 Rambus, Inc. Electrical current source circuitry for a bus
US5485490A (en) * 1992-05-28 1996-01-16 Rambus, Inc. Method and circuitry for clock synchronization
US5317202A (en) * 1992-05-28 1994-05-31 Intel Corporation Delay line loop for 1X on-chip clock generation with zero skew and 50% duty cycle
US5268639A (en) * 1992-06-05 1993-12-07 Rambus, Inc. Testing timing parameters of high speed integrated circuit devices
US5274276A (en) * 1992-06-26 1993-12-28 Micron Technology, Inc. Output driver circuit comprising a programmable circuit for determining the potential at the output node and the method of implementing the circuit
US5473274A (en) * 1992-09-14 1995-12-05 Nec America, Inc. Local clock generator
FR2696061B1 (fr) * 1992-09-22 1994-12-02 Rainard Jean Luc Procédé pour retarder temporellement un signal et circuit à retard correspondant.
EP0596657A3 (de) * 1992-11-05 1994-12-07 American Telephone & Telegraph Normalisierung der sichtbaren Fortpflanzungsverzögerung.
US5311481A (en) * 1992-12-17 1994-05-10 Micron Technology, Inc. Wordline driver circuit having a directly gated pull-down device
JP2792801B2 (ja) * 1992-12-28 1998-09-03 三菱電機株式会社 半導体集積回路並びにその設計方法及び製造方法
US5347559A (en) * 1992-12-30 1994-09-13 Digital Equipment Corporation Apparatus and method of data transfer between systems using different clocks
US5347177A (en) * 1993-01-14 1994-09-13 Lipp Robert J System for interconnecting VLSI circuits with transmission line characteristics
US5544203A (en) * 1993-02-17 1996-08-06 Texas Instruments Incorporated Fine resolution digital delay line with coarse and fine adjustment stages
US5488321A (en) * 1993-04-07 1996-01-30 Rambus, Inc. Static high speed comparator
US5347179A (en) * 1993-04-15 1994-09-13 Micron Semiconductor, Inc. Inverting output driver circuit for reducing electron injection into the substrate
US5337285A (en) * 1993-05-21 1994-08-09 Rambus, Inc. Method and apparatus for power control in devices
AU6988494A (en) * 1993-05-28 1994-12-20 Rambus Inc. Method and apparatus for implementing refresh in a synchronous dram system
US5506814A (en) * 1993-05-28 1996-04-09 Micron Technology, Inc. Video random access memory device and method implementing independent two WE nibble control
US5511024A (en) * 1993-06-02 1996-04-23 Rambus, Inc. Dynamic random access memory system
JP2636677B2 (ja) * 1993-06-02 1997-07-30 日本電気株式会社 半導体集積回路
US5428311A (en) * 1993-06-30 1995-06-27 Sgs-Thomson Microelectronics, Inc. Fuse circuitry to control the propagation delay of an IC
US5473639A (en) * 1993-07-26 1995-12-05 Hewlett-Packard Company Clock recovery apparatus with means for sensing an out of lock condition
JP3232351B2 (ja) * 1993-10-06 2001-11-26 三菱電機株式会社 デジタル回路装置
US5451898A (en) * 1993-11-12 1995-09-19 Rambus, Inc. Bias circuit and differential amplifier having stabilized output swing
JPH07153286A (ja) * 1993-11-30 1995-06-16 Sony Corp 半導体不揮発性記憶装置
US5400283A (en) * 1993-12-13 1995-03-21 Micron Semiconductor, Inc. RAM row decode circuitry that utilizes a precharge circuit that is deactivated by a feedback from an activated word line driver
KR0132504B1 (ko) * 1993-12-21 1998-10-01 문정환 데이타 출력버퍼
US5579326A (en) * 1994-01-31 1996-11-26 Sgs-Thomson Microelectronics, Inc. Method and apparatus for programming signal timing
WO1995022206A1 (en) * 1994-02-15 1995-08-17 Rambus, Inc. Delay-locked loop
US5424672A (en) * 1994-02-24 1995-06-13 Micron Semiconductor, Inc. Low current redundancy fuse assembly
US5440514A (en) * 1994-03-08 1995-08-08 Motorola Inc. Write control for a memory using a delay locked loop
US5554946A (en) * 1994-04-08 1996-09-10 International Business Machines Corporation Timing signal generator
JP3553639B2 (ja) * 1994-05-12 2004-08-11 アジレント・テクノロジーズ・インク タイミング調整回路
JP2541504B2 (ja) * 1994-05-27 1996-10-09 日本電気株式会社 クロック位相自動調整方式およびクロック位相自動調整機能付二重化デ―タ処理装置
US5457407A (en) * 1994-07-06 1995-10-10 Sony Electronics Inc. Binary weighted reference circuit for a variable impedance output buffer
JP3537500B2 (ja) 1994-08-16 2004-06-14 バー−ブラウン・コーポレーション インバータ装置
JP3176228B2 (ja) * 1994-08-23 2001-06-11 シャープ株式会社 半導体記憶装置
GB9417266D0 (en) * 1994-08-26 1994-10-19 Inmos Ltd Testing a non-volatile memory
JPH08139572A (ja) * 1994-11-07 1996-05-31 Mitsubishi Electric Corp ラッチ回路
US5497127A (en) * 1994-12-14 1996-03-05 David Sarnoff Research Center, Inc. Wide frequency range CMOS relaxation oscillator with variable hysteresis
US5577236A (en) * 1994-12-30 1996-11-19 International Business Machines Corporation Memory controller for reading data from synchronous RAM
US5489864A (en) * 1995-02-24 1996-02-06 Intel Corporation Delay interpolation circuitry
US5578940A (en) * 1995-04-04 1996-11-26 Rambus, Inc. Modular bus with single or double parallel termination
US5621690A (en) * 1995-04-28 1997-04-15 Intel Corporation Nonvolatile memory blocking architecture and redundancy
JP3386924B2 (ja) * 1995-05-22 2003-03-17 株式会社日立製作所 半導体装置
US5581197A (en) * 1995-05-31 1996-12-03 Hewlett-Packard Co. Method of programming a desired source resistance for a driver stage
US5576645A (en) * 1995-06-05 1996-11-19 Hughes Aircraft Company Sample and hold flip-flop for CMOS logic
US5636173A (en) * 1995-06-07 1997-06-03 Micron Technology, Inc. Auto-precharge during bank selection
JP3403551B2 (ja) 1995-07-14 2003-05-06 沖電気工業株式会社 クロック分配回路
US5621340A (en) * 1995-08-02 1997-04-15 Rambus Inc. Differential comparator for amplifying small swing signals to a full swing output
JP3252666B2 (ja) * 1995-08-14 2002-02-04 日本電気株式会社 半導体記憶装置
US5578941A (en) * 1995-08-23 1996-11-26 Micron Technology, Inc. Voltage compensating CMOS input buffer circuit
US5692165A (en) * 1995-09-12 1997-11-25 Micron Electronics Inc. Memory controller with low skew control signal
JP3408030B2 (ja) 1995-09-21 2003-05-19 日本プレシジョン・サーキッツ株式会社 位相比較器
US5767715A (en) 1995-09-29 1998-06-16 Siemens Medical Systems, Inc. Method and apparatus for generating timing pulses accurately skewed relative to clock
JP3183321B2 (ja) 1995-11-10 2001-07-09 日本電気株式会社 半導体記憶装置
US5594690A (en) * 1995-12-15 1997-01-14 Unisys Corporation Integrated circuit memory having high speed and low power by selectively coupling compensation components to a pulse generator
US5636174A (en) * 1996-01-11 1997-06-03 Cirrus Logic, Inc. Fast cycle time-low latency dynamic random access memories and systems and methods using the same
US5719508A (en) 1996-02-01 1998-02-17 Northern Telecom, Ltd. Loss of lock detector for master timing generator
US5712580A (en) 1996-02-14 1998-01-27 International Business Machines Corporation Linear phase detector for half-speed quadrature clocking architecture
US5627791A (en) * 1996-02-16 1997-05-06 Micron Technology, Inc. Multiple bank memory with auto refresh to specified bank
US5668763A (en) * 1996-02-26 1997-09-16 Fujitsu Limited Semiconductor memory for increasing the number of half good memories by selecting and using good memory blocks
US5621739A (en) * 1996-05-07 1997-04-15 Intel Corporation Method and apparatus for buffer self-test and characterization
JPH1069769A (ja) 1996-08-29 1998-03-10 Fujitsu Ltd 半導体集積回路

Also Published As

Publication number Publication date
US6026050A (en) 2000-02-15
EP0995196B1 (de) 2004-10-06
DE69826863D1 (de) 2004-11-11
ATE279007T1 (de) 2004-10-15
US5953284A (en) 1999-09-14
EP0995196A1 (de) 2000-04-26
AU8373898A (en) 1999-02-08
WO1999003106A1 (en) 1999-01-21
TW452682B (en) 2001-09-01

Similar Documents

Publication Publication Date Title
DE69826863T2 (de) Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet
DE3909896C2 (de)
DE69906793T2 (de) Verfahren und anordnung für hochgeschwindigkeitsdatenerfassung mit korrektur der bit-zu-bit-zeitgebung und speicheranordnung unter verwendung derselben
DE3742487C2 (de)
DE69838852T2 (de) Verfahren und vorrichtung zur kopplung von signalen zwischen zwei schaltungen, in verschiedenen taktbereichen arbeitend
DE19882486B4 (de) Synchroner, nicht-flüchtiger Seitenmodus-Speicher
DE102004021694B4 (de) Verfahren und Schaltungsanordnung zum Steuern eines Schreibzugriffs auf einen Halbleiterspeicher
DE60034788T2 (de) Verfahren und schaltung zur zeitlichen anpassung der steuersignale in einem speicherbaustein
DE10212642B4 (de) Empfängerschaltungsanordnung für eine Speichersteuerung und Verfahren zum Empfangen von Daten in einer Speichersteuerung
DE102005011386B4 (de) Schaltungseinheit zur Datenbitinvertierung
DE19914986B4 (de) Vorrichtung zum Verzögern eines Taktsignals
DE10003465A1 (de) Halbleiterspeichervorrichtung mit Mehrfachanschluß (Multiple-Port Semiconductor Memory Device)
DE10220559A1 (de) Datenempfangs- und Dateneingabeschaltkreis, Dateneingabeverfahren und Halbleiterspeicherbauelement
DE10010440A1 (de) Synchrones dynamisches Speicherbauelement mit wahlfreiem Zugriff und Verfahren zur CAS-Latenzsteuerung
DE19941196A1 (de) Zweikanal-FIFO mit synchronisierten Lese- und Schreibzeigern
DE69829039T2 (de) Signalverzögerungsvorrichtung zur Verwendung in Halbleiterspeichervorrichtung für verbesserte Operation in Burst-Betriebsart
DE102004025900A1 (de) Leselatenz-Steuerschaltung
DE102007016309A1 (de) Verfahren zur DDR-Empfängerleseresynchronisation
DE4317926C2 (de) Speichervorrichtung mit Testfunktion
DE10393657T5 (de) Verfahren und Vorrichtung zur Datenabfrage
DE10208715A1 (de) Latenz-Zeitschalter für ein S-DRAM
DE10346559A1 (de) Dateninvertierungsschaltung und Halbleitervorrichtung
DE19738893A1 (de) Schaltsignalgenerator und diesen verwendendes, synchrones SRAM
DE19954564A1 (de) Steuerungsschaltung für die CAS-Verzögerung
DE19923249A1 (de) Synchrones Transferprotokoll für eine Übertragung mit direktem Speicherzugriff (DMA)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition