DE102007057518B4 - Vorrichtung und Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung - Google Patents

Vorrichtung und Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung Download PDF

Info

Publication number
DE102007057518B4
DE102007057518B4 DE102007057518A DE102007057518A DE102007057518B4 DE 102007057518 B4 DE102007057518 B4 DE 102007057518B4 DE 102007057518 A DE102007057518 A DE 102007057518A DE 102007057518 A DE102007057518 A DE 102007057518A DE 102007057518 B4 DE102007057518 B4 DE 102007057518B4
Authority
DE
Germany
Prior art keywords
signal
signal line
line
state
lines
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 - Fee Related
Application number
DE102007057518A
Other languages
English (en)
Other versions
DE102007057518A1 (de
Inventor
Georg Braun
Hannes Luyken
Edoardo Prete
Anthony Sanders
Dirk Scheideler
Hans-Peter Trost
Steve Wood
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.)
Polaris Innovations Ltd
Original Assignee
Qimonda AG
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 Qimonda AG filed Critical Qimonda AG
Publication of DE102007057518A1 publication Critical patent/DE102007057518A1/de
Application granted granted Critical
Publication of DE102007057518B4 publication Critical patent/DE102007057518B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Dc Digital Transmission (AREA)

Abstract

Vorrichtung (100) zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung (110), die folgende Merkmale aufweist: eine Steuerungsschaltung (140), die einen Ausgang für ein Signal aufweist, das anzeigt, ob die Signalleitung in einem inaktiven Zustand ist oder sein wird; und eine Umschaltschaltung (130), die mit der Steuerungsschaltung gekoppelt ist und einen Ausgang aufweist, der mit der Signalleitung (110) gekoppelt ist, wobei der Ausgang zwischen unterschiedlichen Signalpegeln umgeschaltet wird, wenn das Signal anzeigt, dass die Signalleitung in einem inaktiven Zustand ist oder sein wird.

Description

  • Die vorliegende Erfindung bezieht sich auf eine Vorrichtung und ein Verfahren zum Bereitstellen eines Signals zur Übertragung uber eine Signalleitung, z. B. an einen Sender für einen Fly-By-Bus mit niedriger Leistung mit einem RC-Abschluss.
  • Hochgeschwindigkeits-Fly-By-Bus-Strukturen benötigen, insbesondere auf dem Gebiet von Speichersystemen, einen Signalabschluss an dem Ende des Busses, um Reflexionen zu vermeiden. Dieser Abschluss erhöht sowohl die AC-Verlustleistung (AC = alternating current = Wechselstrom) als auch die DC-Verlustleistung (DC = direct current = Gleichstrom) an beiden Enden der Busstruktur, an dem Sender wie auch an der Abschlusseinheit.
  • Zum Reduzieren der DC-Verlustleistung kann ein RC-Abschluss, der auch als sogenannter AC-gekoppelter Abschluss bezeichnet wird, verwendet werden. Dieser Ansatz wird z. B. in Hochgeschwindigkeits-Vernetzungsanwendungen eingesetzt, in denen ein Kondensator (C) in Serie mit einem Abschlusswiderstand (R) verwendet wird. Folglich ist der AC-Abschnitt des über die entsprechende Signalleitung ubertragenen Signals noch mehr oder weniger mit einem Impedanzwert des Abschlusswiderstands abgeschlossen. Der DC-Abschnitt des Signals jedoch erfährt im Grunde eine unendliche Impedanz, so dass in einer guten Annäherung keine DC-Leistung verloren geht.
  • Der Serienkondensator führt zusätzliche Störungen in die Signalleitung ein, z. B. in der Form einer zusätzlichen Intersymbolstörung (ISI; ISI = inter symbol interference), die üblicherweise durch Abgleichverfahren (Equalization) auf der Senderseite der Signalleitung des Busses in der Form eines abgeglichenen Treibers angegangen wird. Genauer gesagt werden üblicherweise Abgleicher zu den Sendern hinzugefügt, um die zusätzliche ISI auf dem Kanal, die durch den RC-Abschluss eingeführt wird, auszugleichen. Abhängig von der Implementierung jedoch verbrauchen die Schaltungen, die zum Abgleichen an dem Sender erforderlich sind, eine beträchtliche Menge an Chipgröße.
  • Ferner könnte der Bus während langer Zeiträume einer Inaktivität wegdriften, was es unmöglich macht, den Bus bei Bedarf sofort zu verwenden. Dies wird hauptsächlich durch den Kondensator bewirkt, der in die Signalleitung des Busses in dem Rahmen des RC-Abschlusses eingeführt wird, da eine endliche Spannung über den Kondensator erzeugt werden kann, bewirkt durch Leckströme, und endliche Spannungen, die an die Signalleitungen angelegt werden, was zu einer endlichen Ladung und so zu einer endlichen Spannung an dem Kondensator führt.
  • Aus der DE 102 51 459 B4 ist eine Vorrichtung und ein Verfahren zum Übertragen eines Signals über eine drahtlose Verbindung bekannt, bei der im Fall eines inaktiven Signals das Signal seinen Pegel im Takt einer Trägerschwingung periodisch ändert.
  • Die Aufgabe der vorliegenden Erfindung besteht darin, eine Vorrichtung, ein Verfahren, ein Computerprogramm oder ein Speichersystem mit verbesserten Charakteristika bereitzustellen.
  • Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1, ein Verfahren gemäß Anspruch 13, ein Computerprogramm gemäß Anspruch 20 oder ein Speichersystem gemäß Anspruch 21 gelöst. Bevorzugte Weiterbildungen sind in den abhängigen Ansprüchen angegeben.
  • Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung weist eine Vorrichtung zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung eine Steuerungsschaltung, die einen Ausgang für ein Signal aufweist, das anzeigt, ob die Signalleitung in einem inaktiven Zustand ist, und eine Umschaltschaltung, die mit der Steuerungsschaltung gekoppelt ist und einen Ausgang aufweist, der mit der Signalleitung gekoppelt ist, wobei der Ausgang zwischen unterschiedlichen Signalpegeln umgeschaltet wird, wenn das Signal anzeigt, dass die Signalleitung in einem inaktiven Zustand ist, auf.
  • Gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung weist eine Vorrichtung zum Bereitstellen eines Signals zur Übertragung uber eine Signalleitung eines Datenbusses oder eines Befehls-/Adressbusses eines Speichersystems eine Steuerungsschaltung zum Bestimmen, ob die Signalleitung in einem inaktiven Zustand ist, durch Erkennen eines Single Bank Precharge- bzw. Eine-Bank-Vorladen-Zustands, eines Precharge All Banks- bzw. Vorladen-Aller-Bänke-Zustands, eines No Operations- bzw. Keine-Operationen-Zustands oder eines Device Deselect- bzw. Vorrichtung-Deaktivieren-Zustands basierend auf den Signalzustanden von zumindest einer der Befehlsleitungen und Adressleitungen des Befehls-/Adressbusses und eine Umschaltschaltung zum Umschalten des Signals auf der Signalleitung zwischen unterschiedlichen Signalpegeln, wenn die Steuerungsschaltung zum Bestimmen eines inaktiven Zustands bestimmt, dass die Signalleitung in einem inaktiven Zustand ist, auf.
  • Kurze Beschreibung der Zeichnungen
  • Ausführungsbeispiele der vorliegenden Erfindung sind im Folgenden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Es zeigen:
  • 1 ein Blockdiagramm eines ersten Ausführungsbeispiels einer Vorrichtung zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung;
  • 2 eine Liste von Befehlen eines DDR2-SDRAM;
  • 3 ein Blockdiagramm eines Ausführungsbeispiels einer Vorrichtung zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung in der Form eines Senders;
  • 4 eine Verhaltensbeschreibung eines Steuerblocks des Ausführungsbeispiels aus 3;
  • 5 eine Verhaltensbeschreibung eines Zustandszählerblocks des in 3 gezeigten Ausfuhrungsbeispiels;
  • 6 die Verhaltensbeschreibung eines Zustandseinfugungsblocks des in 3 gezeigten Ausführungsbeispiels;
  • 7 ein Blockdiagramm eines Befehlszustandszahlers und -einfügers des in 3 gezeigten Ausführungsbeispiels;
  • 8 einen ersten Teil einer Verhaltensbeschreibung eines Befehlszustandszählerblocks des in 3 gezeigten Ausfuhrungsbeispiels;
  • 9 einen zweiten Teil der Verhaltensbeschreibung des Befehlszustandszählerblocks des in 3 gezeigten Ausführungsbeispiels;
  • 10 einen dritten Teil der Verhaltensbeschreibung des Befehlszustandszählerblocks des in 3 gezeigten Ausführungsbeispiels;
  • 11 ein Diagramm für ein Signal A[0] zusammen mit Zeitdiagrammen für andere Signale in dem Fall des in 3 gezeigten Ausführungsbeispiels; und
  • 12 ein Zeitdiagramm für ein Befehlssignal in dem Fall des in 3 gezeigten Ausführungsbeispiels.
  • Detaillierte Beschreibung der Ausführungsbeispiele
  • Die 1 bis 12 zeigen Blockdiagramme, eine Befehlstabelle eines DDR2-SRAM, Verhaltensbeschreibungen und Zeitdiagramme für Signale von Ausführungsbeispielen einer Vorrichtung zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung gemäß der vorliegenden Erfindung. Bevor ein zweites Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf die 2 bis 12 beschrieben wird, wird ein erstes Ausführungsbeispiel einer Vorrichtung zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung in Bezug auf das in 1 gezeigte Blockdiagramm erläutert.
  • 1 zeigt ein erstes Ausführungsbeispiel einer erfindungsgemaßen Vorrichtung 100 zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung 110. Die Signalleitung 110 ist über einen Ausgang 120 der Vorrichtung 100 mit einer Umschaltschaltung 130 verbunden. Die Umschaltschaltung 130 ist mit einer Steuerungsschaltung 140 über eine interne Signalleitung 150 und einen Ausgang der Steuerungsschaltung 140 verbunden.
  • Als eine optionale Komponente ist die Steuerungsschaltung 140 in dem ersten in 1 gezeigten Ausführungsbeispiel mit einem Bus oder einer Signalleitung 160 verbunden, der/die der Steuerungsschaltung 140 Informationen liefert, um es der Steuerungsschaltung 140 zu ermöglichen zu bestimmen, ob die Signalleitung 110 in einem aktiven oder einem inaktiven Zustand ist oder sein wird. Der Bus 160 kann z. B. ein Befehls-/Adressbus oder ein Befehls-/Adress-/Steuerbus eines Speichersystems sein, der anzeigt, ob die Signalleitung 110 in einem aktiven oder einem inaktiven Zustand ist oder sein wird, wie im Zusammenhang von 2 noch detaillierter herausgestellt werden wird.
  • Der Bus oder die Signalleitung 160 kann jedoch prinzipiell eine beliebige Signalleitung sein, die Zustande oder Symbole trägt, auf Basis derer die Steuerungsschaltung 140 in der Lage ist, zu unterscheiden, ob die Signalleitung 110 in einem aktiven oder inaktiven Zustand ist oder sein wird. Als Beispiel kann der Bus oder die Signalleitung 160 auch eine Signalleitung sein, die von einer externen Komponente zu der Steuerungsschaltung 140 geliefert wird, die ein Signal trägt, das es der Steuerungsschaltung ermöglicht, den Zustand zu bestimmen, in dem die Signalleitung 110 ist oder sein wird.
  • Basierend auf den Informationen, die über den Bus oder die Signalleitung 160 bereitgestellt werden, gibt die Steuerungsschaltung ein Signal oder ein Schaltsignal (Umschaltsignal) über ihren Ausgang und die interne Signalleitung 150 aus, das anzeigt, ob die Signalleitung 110 in einem inaktiven oder einem aktiven Zustand ist oder sein wird. Basierend auf dem Signal oder dem Schaltsignal schaltet die Umschaltschaltung 130 die Signalleitung 110 zwischen unterschiedlichen Signalpegeln um, wenn das Signal, das uber die interne Signalleitung 150 bereitgestellt wird, anzeigt, dass die Signalleitung 110 in einem inaktiven Zustand ist oder sein wird.
  • Wenn jedoch das Schaltsignal, das über die interne Signalleitung 150 bereitgestellt wird, anzeigt, dass die Signalleitung 110 in einem aktiven Zustand ist oder sein wird, sind die Signalpegel, die an die Signalleitung 110 geliefert werden, eng verwandt mit den Signalen, die über die Signalleitung 110 gesendet werden sollen.
  • Bei dem in 1 gezeigten Ausführungsbeispiel ist die Umschaltschaltung 130 ferner mit einer eingehenden Signalleitung 170 verbunden, die der Umschaltschaltung 130 das Signal liefert, das in einem aktiven Zustand über die Signalleitung 110 übertragen werden soll. In anderen Worten, bei dem in 1 gezeigten Ausführungsbeispiel ist die Umschaltschaltung 130 nicht nur in der Lage, die Signalleitung zwischen unterschiedlichen Signalpegeln umzuschalten, wenn das durch die Steuerungsschaltung 140 bereitgestellte Signal anzeigt, dass die Signalleitung in einem aktiven Zustand ist oder sein wird, sondern ist außerdem in der Lage, ein Signal, das durch die eingehende Signalleitung an die Umschaltschaltung 130 geliefert wird, in dem Fall eines aktiven Zustands der Signalleitung 110 an die Signalleitung zu übertragen.
  • Da die eingehende Signalleitung 170 jedoch bei einem Ausführungsbeispiel einer Vorrichtung 100 nur eine Option ist, kann das an die Signalleitung 110 zu liefernde Signal auch über einen zusätzlichen Schalter mit der Signalleitung 110 gekoppelt sein, der die Signalleitung, die das durch die Signalleitung 110 zu transportierende Signal bereitstellt, mit der Signalleitung 110 verbindet, und zwar in dem Fall, dass die Steuerungsschaltung 140 bestimmt, dass die Signalleitung 110 in einem aktiven Zustand ist oder sein wird, sowie die Signalleitung 110 anderweitig mit der Umschaltschaltung 130 verbindet.
  • Wann immer die Steuerungsschaltung 140 der Vorrichtung 100 basierend auf dem Signal, das durch den Bus oder die Signalleitung 160 an die Steuerungsschaltung 140 geliefert wird, bestimmt, dass die Signalleitung 110 in einem inaktiven Zustand ist oder sein wird, stellt die Steuerungsschaltung 140 an ihrem Ausgang ein Signal oder ein Schaltsignal für die interne Signalleitung 150, die die Steuerungsschaltung 140 und die Umschaltschaltung 130 verbindet, bereit. Die Umschaltschaltung 130 schaltet dann zwischen unterschiedlichen Signalpegeln um, wenn das Signal, das von der Steuerungsschaltung 140 empfangen wird, anzeigt, dass die Signalleitung 110 in einem inaktiven Zustand ist oder sein wird. Bei einigen Ausführungsbeispielen ist das Umschalten zwischen den unterschiedlichen Signalpegeln derart, dass die Zeit, während der die Signalleitung 110 auf einem spezifischen Signalpegel ist, an ein Verhältnis der Zeiten angepasst ist, während derer die Signalleitungen auf den jeweiligen Signalpegeln sind.
  • In dem Fall eines digitalen oder binären Signals, das über die Signalleitung 110 übertragen wird, zeigt ein einzelnes Verhältnis ein erwünschtes Verhältnis der Zeit, die die Signalleitung 110 auf einem ersten Signalpegel verbringen soll, und der Zeit, die die Signalleitung 110 auf einem zweiten Signalpegel verbringen soll, an.
  • Das Verhältnis kann im Prinzip eine beliebige (nicht negative oder positive) reellwertige Zahl in dem Bereich zwischen Null und unendlich sein. Wenn als ein Beispiel die Signalleitung 110 ein Viertel der Zeit auf dem ersten Signalpegel (z. B. 0) verbringen soll, verglichen mit drei Vierteln auf dem zweiten Signalpegel (z. B. 1), dann beträgt das Verhältnis: t(1):t(0) = 3:1 = 3 (1)
  • Wenn z. B. angenommen wird, dass die Signalleitung 110 die doppelte Zeit auf dem ersten Signalpegel (z. B. 0) verglichen mit der Zeit verbringt, die sie auf dem zweiten Signalpegel (z. B. 1) verbringt, dann beträgt das Verhältnis: t(1):t(0) = 1:2 = 0,5 (2)
  • Wenn als letztes Beispiel die Zeiten, die die Signalleitung 110 auf dem ersten Signalpegel sowie auf dem zweiten Signalpegel verbringt, gleich sind, dann betragt das Verhältnis: t(1):t(0) = 1:1 = 1 (3)
  • In diesem Zusammenhang ist es wichtig anzumerken, dass das Verhältnis mit einem spezifischen Wert fest sein kann, bei einem Ausführungsbeispiel einer Vorrichtung 100 implementiert in der Form eines fest verdrahteten Schaltungsaufbaus, einer festen Programmierung (z. B. gespeichert in einem Nur-Lese-Speicher oder ROM) oder einer anderen nicht veränderbaren Programmierung einer Implementierung. Bei weiteren Ausführungsbeispielen einer Vorrichtung 100 jedoch ist das Verhältnis während eines Betriebs der Vorrichtung 100 anpassbar, so dass der Wert des Verhältnisses im Vorübergehen bzw. on-the-fly angepasst werden kann. Dies kann z. B. in der Form einer veränderbaren Programmierung oder einer Implementierung des Schaltungsaufbaus, die einen Speicher zum Speichern des Werts des Verhältnisses aufweist, erzielt werden. Als ein weiteres Beispiel kann der Wert des Verhältnisses auch implementiert sein, um in dem Sinn programmierbar zu sein, dass es über einen Programmcode oder Instruktionen veränderbar ist, die von einem Prozessor, einer CPU (central processing unit = zentrale Verarbeitungseinheit), GPU (graphics processing unit = Graphikverarbeitungseinheit) oder anderen integrierten Schaltungsaufbauten empfangen werden. Ein Implementieren von anpassbaren oder programmierbaren Verhaltnissen bietet z. B. die Möglichkeit eines Implementierens einer Hysterese oder eines Hystereseverhaltens, was bei einigen Implementierungen von Vorteil ist.
  • Genauer gesagt kann, wann immer ein bestimmtes Ereignis erreicht wird, z. B. eine Einfügungsgrenze erreicht, uberschritten oder unterschritten ist, eine Neubewertung der geeigneten Grenze, eines Satzes von Grenzen oder aller Grenzen ausgelost werden, was zu einer Anpassung der Werte gemaß den Anforderungen der Implementierung des Ausführungsbeispiels und/oder der momentanen Betriebssituation führt. Abhängig von der tatsächlichen Modifizierung der geeigneten Grenzen kann ein Hystereseverhalten in Bezug auf den durchschnittlichen Signalpegel auf einer, einem Satz von oder allen Signalleitungen implementiert werden. Folglich kann der Aufbau von Ladung auf der Kapazität der Signalleitungen und/oder deren Abschluss positiv beeinflusst oder sogar noch besser unterdrückt werden. Durch Modifizieren der geeigneten Grenzen jedoch kann auch eine Oszillation des Durchschnitts der Signalpegel implementiert werden.
  • In dem Fall, dass die Signalleitung 110 ein Mehrpegelsignal als ein diskretes Signal mit mehr als zwei Signalpegeln transportiert, könnte ein Implementieren von mehr als einem Verhaltnis ratsam sein, das Beziehungen von Zeiten anzeigt, die die Signalleitung 110 auf jeweiligen Signalpegeln verbringen soll. In dem Fall einer Mehrpegelsignalleitung 110 jedoch könnte es auch ratsam sein, die Beziehungen überzubestimmen, z. B. durch Implementieren der erwünschten Verhältnisse in der Form einer Matrix, die die erwünschten Verhältnisse jedes Signalpegelwerts in Bezug auf jeden anderen Signalpegelwert, der auf der Signalleitung 110 zulässig ist, anzeigt. Das Einführen einer Matrix kann ratsam sein, da dies die Möglichkeit bieten könnte, die Recheneffizienz der Umschaltschaltung 130 oder eines geeigneten Schaltungsaufbaus oder einer geeigneten Komponente zu erhohen, da eine Verifizierung dessen, wie gut die tatsächlichen Zeiten zweier unterschiedlicher Signalpegel dem geeigneten Verhältnis entsprechen, nicht notwendigerweise ein Kombinieren von mehr als einem Verhältnis beinhaltet, um den erwünschten Wert zu erhalten.
  • In dem Fall einer Mehrpegelsignalleitung 110 jedoch können die unterschiedlichen Verhältnisse oder die Matrix, die die Verhaltnisse aufweist, als ein fester Satz von Verhältnissen oder eine feste Matrix, ein anpassbarer Satz von Verhältnissen oder als eine anpassbare Matrix oder als ein programmierbarer Satz von Verhältnissen oder als eine programmierbare Matrix implementiert sein. In dem Fall eines anpassbaren oder programmierbaren Satzes von Verhältnissen oder einer anpassbaren Matrix konnte es ratsam sein, eine Prüfung auf Übereinstimmung bzw. Cross Check zu implementieren, um zu verifizieren, dass die Verhältnisse des Satzes von Verhältnissen oder die Verhältnisse in der Matrix einander nicht widersprechen. Dies könnte insbesondere auf dem Gebiet eines Implementierens der Verhältnisse in der Form einer Matrix wichtig sein, da die Matrix einen überbestimmten Satz von Verhältnissen darstellt.
  • Ferner ist es wichtig anzumerken, dass die Signalleitung 110 eine Eintakt-Signalleitung oder eine differenzielle Signalleitung sein kann, wie sie z. B. in dem Zusammenhang von LVDS (low voltage differential signaling = Niederspannungs-Differenzialsignalisierung) verwendet wird. Ferner kann die Signalleitung zum Transportieren von sowohl Signalen mit vollem Ausschlag als auch Signalen mit reduzierter Signalamplitude verglichen mit deren absoluten Werten verwendet werden. Ferner können die über die Signalleitung 110 übertragenen Signale hauptsächlich durch Spannungspegel, die an die Signalleitung 110 angelegt werden, oder Ströme, die durch die Signalleitung 110 fließen, gekennzeichnet sein.
  • Bei Ausfuhrungsbeispielen der vorliegenden Erfindung kann die Zeit, die die Signalleitung 110 auf einem jeweiligen Signalpegel verbringt, durch die Umschaltschaltung 130 durch Verwenden eines Zahlers, eines Taktes oder eines Zeitgebers zum Bestimmen der Zeit, während der die Signalleitung 110 auf dem jeweiligen Signalpegel ist, bestimmt werden. In diesem Zusammenhang ist es wichtig anzumerken, dass der Zähler, Takt oder Zeitgeber z. B. von einem internen Taktsignal, einem externen Taktsignal oder einem anderen Signal abhängen kann, das ein kurzes verstrichenes Zeitintervall anzeigt, auf dem der Zähler, der Takt oder der Zeitgeber basiert. Folglich kann der Zähler, der Takt oder Zeitgeber auf einem Taktsignal einer Busstruktur basieren, z. B. auf dem Gebiet von Speichersystemen.
  • Die Vorrichtung 100 kann z. B. Teil eines Senders einer Komponente, wie z. B. eines AMB (advanced memory buffer = hoch entwickelter Speicherpuffer) eines FB-DIMM, eines AMB2 oder von Registern für RDIMMs oder anderer Sender für Niedrigleistungs-Fly-By-Busse mit einem RC-Abschluss sein, z. B. auf dem Gebiet von FBDIMM-Projekten.
  • Wie in dem einleitenden Teil der vorliegenden Patentanmeldung herausgestellt wurde, erfordern Hochgeschwindigkeits-Fly-By-Bus-Strukturen oft einen Signalabschluss an dem Ende des Busses, um Reflexionen zu vermeiden, obwohl dieser Abschluss sowohl die AC- als auch die DC-Dissipation an beiden Enden des Busses erhöht. Um die DC-Verlustleistung zu reduzieren, wird ein sogenannter RC-Abschluss, der auch als AC-gekoppelter Abschluss oder AC-Kopplung bezeichnet wird, eingesetzt. Ein RC-Abschluss weist eine Serie eines Kondensators (C) und eines Abschlusswiderstands (R) auf, was dazu führt, dass der AC-Teil des Signals mehr oder weniger mit der Impedanz des Abschlusswiderstands abgeschlossen wird, während der DC-Teil des Signals im Wesentlichen unendliche Impedanzen erfährt. Außer der zusätzlichen ISI, die durch den Serienkondensator eingeführt wird, die üblicherweise durch Abgleicher bzw. Equalizer auf den Senderseiten in der Form von abgeglichenen Treibern angegangen wird, führt die Verwendung von Kondensatoren jedoch sehr oft während langer Inaktivitätsperioden, in denen der Bus zumindest in einem zeitweilig inaktiven Zustand ist, zu dem Wegdriften des Busses, da der Kondensator eine Ladung und so eine endliche Spannung aufbaut. Als eine Folge dieser Ladung und der zugeordneten Spannung ist es mehr oder weniger unmöglich, den Bus bei Bedarf sofort zu verwenden.
  • Als ein Vorteil der Ausführungsbeispiele der vorliegenden Erfindung jedoch kann eine Drift einer Signalleitung 110, die einen RC-Abschluss aufweist, durch Bestimmen, ob die Signalleitung in einem inaktiven oder zeitweilig inaktiven Zustand ist oder sein wird, und durch Umschalten der Signalleitung 110 zwischen unterschiedlichen Signalpegeln, wenn die Signalleitung 110 in einem inaktiven Zustand ist, verhindert werden. Dadurch ist es moglich zu verhindern, dass sich Ladung an dem Kondensator des Abschlusses ansammelt, was zu einer endlichen Spannung über den Kondensator führt, was wiederum verhindert, dass die Signalleitung sofort wieder verwendbar ist, wenn die Signalleitung zurück in einen aktiven Zustand umschaltet.
  • Ein Ausführungsbeispiel der vorliegenden Erfindung bietet so die Möglichkeit eines Reduzierens der Zeit, die die Signalleitung 110 benötigt, um einen Zustand zu erreichen, in dem wieder Signale übertragen werden können. Ferner wird, da der Aufbau von Ladung auf dem Kondensator des RC-Abschlusses wesentlich reduziert oder sogar verhindert wird, die Gefahr von gestörten Signalen, die dazu führen, dass Daten, Befehle, Adressen oder andere Informationen fehlerhaft sind, wesentlich reduziert.
  • In anderen Worten, ein Ausführungsbeispiel der vorliegenden Erfindung basiert auf der Erkenntnis, dass die Zeit, die eine Signalleitung 110 benötigt, bevor sie Signale übertragen kann, nachdem sie in einem inaktiven Zustand war, wesentlich reduziert werden kann, indem eine Umschaltschaltung 130 eingefuhrt wird, die mit der Signalleitung 110 gekoppelt ist und die Signalleitung 110 zwischen unterschiedlichen Signalpegeln umschaltet, wenn die Signalleitung 110 in einen inaktiven Zustand ist. Zum Bestimmen, ob die Signalleitung in einem inaktiven Zustand ist, weisen Ausführungsbeispiele der vorliegenden Erfindung ferner eine Steuerungsschaltung 140 auf, die einen Ausgang für ein Signal aufweist, das anzeigt, ob die Signalleitung in einem inaktiven Zustand ist oder sein wird.
  • Ausführungsbeispiele der vorliegenden Erfindung konnen z. B. auf dem Gebiet von Sendern für Niedrigleistungs-Fly-By-Bus-Strukturen mit einem RC-Abschluss eingesetzt werden.
  • In anderen Worten, Ausführungsbeispiele der vorliegenden Erfindung basieren auf einem Erfassen inaktiver Zustände einer einzelnen Signalleitung 110 oder unterschiedlicher Signalleitungen 110 auf dem Bus und einem Verwenden dieser Zustände zum Einführen von Daten, die benötigt werden, um eine DC-Drift auf dem Bus zu vermeiden, die durch den RC-Abschluss bewirkt wird. Die entsprechenden Daten können durch Anvisieren eines bestimmten Verhältnisses von Nullen und Einsen, die auf jeder Signalleitung auf dem Bus übertragen werden, berechnet werden. Wie zuvor herausgestellt wurde, kann das Verhältnis z. B. 50%:50% = 1 oder eine beliebige andere nicht negative oder reellwertige Zahl sein.
  • Ferner soll jedoch angemerkt werden, dass abhängig von der Gesamtverzögerung, die durch ein Ausführungsbeispiel einer Vorrichtung eingeführt wird, die Steuerungsschaltung 140 in der Lage ist zu erfassen, ob die Signalleitung in einem inaktiven oder einem aktiven Zustand ist, oder ob die Signalleitung in einem aktiven oder inaktiven Zustand sein wird. Abhängig von bestimmten Implementierungsanforderungen könnte es ratsam sein, zusätzliche Verzögerungsschaltungen oder Latche zu implementieren, um eine geeignete Synchronisation der Signale, die über die Signalleitungen übertragen werden, sicherzustellen. Hier bestimmt in einer derartigen Situation ein Ausführungsbeispiel einer Vorrichtung den Zustand der Signalleitung vor den entsprechenden Signalen, die über die Signalleitung gesendet werden. Folglich bestimmt in einem derartigen Fall das Ausführungsbeispiel den Zustand, in dem die Signalleitung nach einer bestimmten Verzögerung sein wird, was z. B. durch Verzögerungen bewirkt werden kann, die durch die konkrete Implementierung eingeführt werden.
  • Bei einigen Ausführungsbeispielen jedoch kann die Verzögerung so minimal sein, dass es angebracht ist, von einer sofortigen Übertragung der Signale zu sprechen. In einem derartigen Fall bestimmt das Ausführungsbeispiel der Vorrichtung den Zustand, in dem sich die Signalleitung (fast) sofort befindet, so dass – in praktischer Hinsicht – die Steuerschaltung 140 den Zustand bestimmt, in dem sich die Signalleitung befindet.
  • Bevor ein zweites Ausführungsbeispiel der vorliegenden Erfindung detaillierter beschrieben werden wird, soll angemerkt werden, dass Objekte und Strukturen mit den gleichen oder ähnlichen Funktionseigenschaften mit den gleichen Bezugszeichen bezeichnet sind. Es sei denn, dies ist explizit anderweitig angemerkt, kann die Beschreibung in Bezug auf Gegenstande mit ahnlichen oder gleichen Funktionseigenschaften untereinander ausgetauscht werden.
  • Im Folgenden werden Ausfuhrungsbeispiele der vorliegenden Erfindung detaillierter beschrieben, die aus dem Gebiet von Busstrukturen im Bereich von Speicherbauelementen kommen. Aus einer Protokollperspektive können die einzelnen Signale auf einem Bus aktiv oder inaktiv sein. Aktive Zustände sind typischerweise durch ein Übertragen von Befehlen gekennzeichnet, die Aktionen auf dem Bus auslösen, während inaktive Zustände typischerweise durch ein Ubertragen von Befehlen gekennzeichnet sind, die keine Aktionen auf dem Bus auslösen. Typische Befehle in dem Fall von DDR-Speicherbussen sind ein Übertragen von NOP-Befehlen (NOP = no operation = keine Operation) oder DES-Befehlen (DES = device deselect = Vorrichtungsdeaktivierung). Auf vielen Bussystemen und insbesondere auf dem so genannten Befehls-/Adress-/Steuer-Bus (CAS-Bus; CAS = command/address/control) von Speichern ist die Busnutzung durchschnittlich deutlich unter 50%. Typische Werte betragen etwa 10% bis 30%. Dies bedeutet, dass die einzelnen Signale auf dem Bus für eine wesentliche Zeitmenge inaktiv sind.
  • Diese Zeit der Inaktivität wird verwendet, um Daten einzuführen, um eine mögliche DC-Drift der Signalpegel auf dem RC-abgeschlossenen Bus, die durch den Kondensator des Abschlusses bewirkt wird, zu vermeiden oder zu kompensieren. Während dies getan wird, wird Sorge getragen, dass die inaktive Natur der einzelnen Signale des Busses aufrechterhalten wird.
  • Die eingeführten Daten werden bei einigen Ausführungsbeispielen der vorliegenden Erfindung wie folgt bestimmt:
    Zuerst wird die Zahl übertragener Nullen und Einsen auf jeder einzelnen Leitung bestimmt oder gezählt. Dies wird entweder durch Zählen der übertragenen Nullen und Einsen über ein sich verschiebendes (rolling) Zeitfenster und Bereitstellen der Differenz dieser beiden Zahlen (von Nullen bzw. Einsen) oder durch Einsetzen eines Zahlers, der verwendet wird, um das Delta oder die Differenz zwischen den ubertragenen Nullen und Einsen fortwährend zu überwachen, durchgeführt. Dies kann z. B. durch Inkrementieren eines Zahlers fur jede Eins, die über die Signalleitung übertragen wird, und durch Dekrementieren des Zählers für jede ubertragene Null implementiert werden.
  • In dem Fall eines sich verschiebenden Zeitfensters ist die Zahl von Symbolen (oder einzelnen Signalen), die über die Signalleitung übertragen werden, die zum Bestimmen, ob eine Null oder eine Eins in eine Signalleitung im inaktiven Zustand eingeführt werden soll, eingeschränkt. Üblicherweise kann dies dadurch geschehen, dass nur eine feste, vorbestimmte, anpassbare oder programmierbare Zahl von Symbolen, die über die Signalleitung übertragen werden, berücksichtigt wird, beginnend bei dem letzten Symbol, das über die Signalleitung übertragen wird. Dies kann z. B. durch Verwenden von einem oder zwei linearen Schieberegistern (LSR; LSR = linear shift register) basierend auf Latchen oder Flip-Flops gemeinsam mit einem oder zwei parallelen Addierern in Hardware implementiert sein. In dem Fall eines einzelnen LSR speichert das LSR die letzten Symbole, die über die Signalleitung übertragen wurden, wobei der Inhalt des LSR basierend auf einem Taktsignal des Busses, zu dem die Signalleitung gehört, oder einem anderen Takt oder Referenzsignal bewegt wird. In dem Fall von nur einem einzelnen LSR werden die nicht invertierenden Ausgaben der Latche oder Flip-Flops des LSR an einen parallelen Addierer geliefert, während die invertierenden Ausgaben der Latche oder der Flip-Flops an einen zweiten parallelen Addierer geliefert werden. Durch ein Vergleichen der Ausgabe der beiden parallelen Addierer kann die Differenz zwischen den ubertragenen Nullen und Einsen basierend auf dem sich verschiebenden Zeitfenster, das durch die Länge des LSR dargestellt ist, und basierend auf dem Taktsignal, das im Zusammenhang mit dem LSR verwendet wird, bestimmt werden.
  • In dem Fall von zwei LSRs speichert ein LSR basierend auf z. B. dem Taktsignal des zugrunde liegenden Busses die über die Signalleitung übertragenen Daten, während das zweite LSR die invertierten Signale, die über die Signalleitung übertragen werden, speichert. Wieder kann durch Einsetzen zweier paralleler Addierer und durch Vergleichen ihrer Ausgaben die Differenz zwischen übertragenen Nullen und Einsen über das sich verschiebende Zeitfenster, das durch die Länge der LSRs und des Taktsignals definiert ist, bestimmt werden.
  • In dem Fall einer anpassbaren oder programmierbaren Länge oder Zahl ubertragener Signale oder Symbole des sich verschiebenden Zeitfensters wird eine Implementierung veränderbarer Frequenzen für eine Oszillation des durchschnittlichen Signalpegels auf der geeigneten Signalleitung oder Signalleitungen ermöglicht. In anderen Worten, durch Anpassen oder Programmieren unterschiedlichen Längen des sich verschiebenden Zeitfensters kann eine typische Oszillationsfrequenz des durchschnittlichen Wertes oder Signalpegels von einer, einem Satz von oder allen Signalleitungen während des Betriebs angepasst werden.
  • Als Zweites wird basierend auf dem resultierenden Delta oder der Differenz übertragener Nullen und Einsen entschieden, ob eine Null oder eine Eins an dem nächstmöglichen Einfügungsschlitz eingefugt werden soll. Diese Entscheidung kann einfach durch Bewerten des Vorzeichenbits der Differenz oder der Deltazahl geschehen. Ein alternativer Ansatz ist ein Verwenden einzelner Schwellenwerte für Null-Einfügungen und Eins-Einfügungen. Wenn z. B.: Anzahl_von_Einsen – Anzahl_von_Nullen > Einfugungs_Grenze_für_Nullen, (4) dann wird eine 0 an dem nachstmöglichen Einfügungsschlitz eingeführt. Ähnlich wird, wenn: Anzahl_von_Einsen – Anzahl_von_Nullen < Einfügungs_Grenze_für_Einsen, (5) eine Eins an dem nächstmöglichen Einfügungsschlitz eingeführt, wobei Anzahl_von_Einsen, Anzahl_von_Nullen, Einfügungs_Grenze_für_Nullen und Einfügungs_Grenze_für_Einsen die geeigneten Zahlen der Anzahl von Einsen, die über die Signalleitung ubertragen werden, der Anzahl von Nullen, die uber die Signalleitung übertragen werden, der Einfügungsgrenze zum Einfügen der Nullen bzw. der Einfugungsgrenze zum Einfügen von Einsen darstellen.
  • Wie oben beschrieben wurde, kann die Einfügungsentscheidung für jedes Signal einzeln durchgeführt werden. Es ist jedoch auch möglich, die Einfügungsentscheidung für eine Gruppe von Signalen durchzuführen. Wenn z. B. die Gruppe von Signalen oder Signalleitungen, die physisch getrennte Signalleitungen sein könnten, die Befehlsinformationen auf dem Bus codiert, kann die Entscheidung, ob und was einzufügen ist, auf einer Prioritätsentscheidung beruhen. Insbesondere wird für jede Signalleitung die absolute Abweichung von der Einfügungsgrenze von Nullen (Einfügungs_Grenze_für_Nullen) und/oder der Einfügungsgrenze für Einsen (Einfügungs_Grenze_für_Einsen), wie im Zusammenhang der Gleichungen (4) und (5) definiert ist, berechnet. Das Signal, das die höchste absolute Abweichung besitzt, erhält Priorität und gibt den Signalpegel an dem nächstmöglichen Einfugungsschlitz vor. Basierend auf diesem einzugebenden Signal oder Daten sind die verbleibenden Signale entweder ebenso frei für eine Einfugung oder müssen gemäß einem speziellen Muster zum Einfügen eines bestimmten Zustands ausgewählt werden, um die inaktive Natur der Gruppe von Signalen aus einer Protokollperspektive aufrechtzuerhalten. Details und Beispiele z. B. für ein DDR2-Speichersystem werden im Zusammenhang von 2 herausgestellt.
  • Die Einfügungsgrenzen, Einfügungs_Grenze_fur_Nullen und Einfügungs_Grenze_für_Einsen, können auf einen festen Wert gesetzt werden. Alternativ können einer oder beide dieser Werte in einem Register gespeichert werden, um eine flexible Einstellung für jede Anwendung zu ermöglichen. In anderen Worten, auch die Einfügungsgrenzen (Einfügungs_Grenze_für_Nullen und Einfügungs_Grenze_für_Einsen) können als feste Werte, anpassbare oder programmierbare Werte implementiert sein. Ferner können die Einfugungsgrenzen während eines Betriebs verändert oder abgeändert werden, um hoch entwickeltere Grenzen zu implementieren, z. B. ein Hystereseverhalten oder eine Hysterese, was ein Kompensieren oder Verändern der Ladung auf dem Kondensator des RC-Abschlusses des Busses, zu dem die Signalleitung 110 gehort, ermöglicht.
  • Außerdem, und wie oben beschrieben wurde, können der eingefügte Signalpegel oder Daten für jeden einzelnen Einfügungsschlitz ausgewertet werden. Dies konnte zu einem Betriebsmodus führen, in dem abwechselnd Nullen und Einsen eingefügt werden, während das Delta oder die Differenz ubertragener Nullen und Einsen um die Einfügungsgrenze herum umschaltet. Alternativ kann eine Einfügungsentscheidung für mehr als einen Einfügungsschlitz eingesetzt werden. Durch einen derartigen Ansatz kann erzielt werden, dass die Differenz zwischen den übertragenen Nullen und Einsen sich abhängig von einer konkreten Implementierung sofort zurück zu Null oder einem anderen Zielwert bewegt, sobald eine bestimmte Grenze erreicht ist.
  • Der nächstmogliche Einfügungsschlitz selbst wird durch ein Decodieren einzelner Signale oder einer Gruppe von Signalen oder aller Signale auf dem Bus bestimmt. Abhängig von der Codierung des Protokolls zeigen bestimmte Befehle oder bestimmte Zustände einen inaktiven Zustand oder einen zeitweilig inaktiven Zustand auf einzelnen Signalleitungen, Gruppen von Signalleitungen oder allen Signalleitungen an. Sobald ein derartiger inaktiver Zustand durch die Steuerungsschaltung 140 erfasst wird, werden die entsprechenden Signale oder Signalleitungen als „bereit zur Einfügung” markiert, indem das Signal oder das Schaltsignal an die interne Signalleitung 150 ausgegeben wird, die das Signal an die Umschaltschaltung 130 liefert. Sobald decodiert ist, dass der Zustand aktiv ist, werden die entsprechenden Signale als „keine Einfügung erlaubt” markiert, was z. B. durch Verändern des Signals, das an den Ausgang der Steuerungsschaltung 140 geliefert wird, erzielt werden kann.
  • Wenn die Markierung auf dem Signal „keine Einfügung erlaubt” ist, werden die ursprünglichen Daten, die durch die (optionale) eingehende Signalleitung 170 bereitgestellt werden, an den Kanal heraus getrieben oder an diesen geliefert, um den ursprünglichen codierten Befehl aufrechtzuerhalten. In anderen Worten, wenn die Signale von der Steuerungsschaltung 140 anzeigen, dass keine Einfügung erlaubt ist, wird das Signal von der eingehenden Signalleitung 170 durch die Umschaltschaltung 130 bei dem in 1 gezeigten Ausfuhrungsbeispiel über den Ausgang 120 der Vorrichtung an die Signalleitung 110 geliefert.
  • Wenn jedoch die Markierung auf dem Signal „bereit zur Einfügung” ist, was durch das Signal auf der internen Signalleitung 150 angezeigt wird, wird eine Null oder eine Eins abhängig von dem oben beschriebenen Algorithmus eingefügt. In dem Zusammenhang der 2 bis 12 wird ein weiteres Ausführungsbeispiel in dem Kontext eines Senders für einen hoch entwickelten Speicherpuffer (AMB) für ein Speichermodul FBDIMM detaillierter erläutert.
  • Wie bereits angemerkt wurde, können bei der in dem Ausführungsbeispiel von 1 gezeigten Vorrichtung 100 die Nullen und Einsen in einer beliebigen Form auf den Signalleitungen oder Signalen dargestellt werden. So können insbesondere die Signale, die auf der Signalleitung 110 getragen werden, hauptsächlich durch einen Spannungspegel oder einen Strom, der an die Signalleitung 110 geliefert wird, gekennzeichnet sein. Außerdem können Eintakt- oder Differenzial-Signalisierungstechniken fur die Signalleitungen und die Signale verwendet werden, wie auch entweder Signale mit vollem Ausschlag oder Signale mit reduziertem Ausschlag eingesetzt werden konnen. Schließlich sind, wie oben erlautert wurde, Ausfuhrungsbeispiele der vorliegenden Erfindung auch auf dem Gebiet von Mehrpegelsignalen anwendbar.
  • Ausführungsbeispiele der vorliegenden Erfindung ermöglichen so die Verwendung eines RC-Abschlusses selbst während langer Perioden einer Inaktivität, indem eine in etwa gleiche Anzahl von Nullen und Einsen im Durchschnitt auf allen Signalen des Busses sichergestellt wird, einschließlich der Chipauswahlleitungen in dem Fall von Speichersystemen. Hierdurch kann der RC-Abschluss verwendet werden, um die DC-Verlustleistung in Hochgeschwindigkeits-Fly-By-Bus-Strukturen zu beseitigen. Im Folgenden wird ein zweites Ausführungsbeispiel der Vorrichtung 100 beschrieben, das ein Ausführungsbeispiel eines Verfahrens zum Reduzieren der Leistung eines Standard-FBDIMM durch einen RC-Abschluss des Befehls-/Adress-Busses (CA-Busses) und Kompensieren der induzierten Intersignalstörung (ISI) durch Vorladen mit abgeglichenem Treiber/Hin- und Herschalten und selektives Umschalten zwischen Keine-Operation-Befehlen (NOP) und Vorrichtung Deaktivieren (DES) implementiert.
  • Unter Bezugnahme auf die 2 bis 12 wird ein Implementierungsbeispiel als ein Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung 100, das für einen DDR2-SDRAM-Bus geeignet ist, beschrieben. Wie bereits dargelegt wurde, soll angemerkt werden, dass Gegenstände und Strukturen mit den gleichen oder ähnlichen Funktionseigenschaften mit den gleichen Bezugszeichen bezeichnet sind. Es sei denn, dies ist explizit anderweitig angemerkt, kann die Beschreibung in Bezug auf Gegenstände mit ähnlichen oder gleichen Funktionseigenschaften untereinander ausgetauscht werden.
  • 2 zeigt eine Übersicht der Befehle von DDR2-SDRAM, die durch unterschiedliche Signalpegel auf den Signalleitungen des Befehlsbusses und des Adressbusses gekennzeichnet sind.
  • Insbesondere stellt die in 2 gezeigte Tabelle eine Wahrheitstabelle einer DDR2-SDRAM-Vorrichtung dar, die nicht nur anhand ihrer Funktion erläutert wird, sondern auch anhand ihres Taktfreigabesignals CKE (CKE = clock enabling), des Chipauswahlsignals CS (CS = chip select), des Zeilenadressübernahmesignals RAS (RAS = row address strobe), des Spaltenadressübernahmesignals CAS (CAS = column address strobe), des Schreibfreigabesignals WE (WE = write enable), des Bankadresssignals BAn (BA = bank address), wobei n eine Ganzzahl in dem Bereich von 0 bis zu einem maximalen Wert ist (in 2 als x bezeichnet), und der Adressleitungen Axx bis A11, A10 und A9 bis A0. Die Tabelle aus 2 ist aus der DDR2-SDRAM-Spezifizierung JEDEC (JESD79-2C) genommen. Die letzte Spalte der in 2 gezeigten Tabelle bezieht sich auf Anmerkungen, die in der erwähnten Spezifizierung erläutert sind.
  • Es soll angemerkt werden, dass das Taktfreigabesignal CKE in Bezug auf sowohl den vorherigen Zyklus als auch den aktuellen Zyklus definiert ist. Ferner definiert die in 2 gezeigte Tabelle das Chipauswahlsignal CS, das Zeilenadressübernahmesignal RAS, das Spaltenadressübernahmesignal CAS und das Schreibfreigabesignal WE in Bezug auf deren binären komplementären Wert, der in der in 2 gezeigten Tabelle durch eine horizontale Linie über der Signalabkürzung angezeigt ist. Im Folgenden werden die einer Signalleitung entsprechenden Signalwerte durch eine Raute angezeigt, die nach der Abkürzung für die Signalleitung platziert ist (z. B. CS#). Ferner zeigt bei der in 2 gezeigten Tabelle das „H” den hohen Signalpegel oder eine 1 an, während ein „L” einen niedrigen Signalpegel oder eine 0 anzeigt. Ein „X” zeigt einen willkürlichen Wert an, der entweder hoch „H” (1) oder niedrige „L” (0) sein kann.
  • Der Befehl eines DDR2-SDRAM, der eine Zustandseinfügung erlaubt, ist in der Funktionsspalte hervorgehoben. Die Signale oder Signalleitungen eines Befehls-/Adress-/Steuerbusses, die als „bereit zur Einfügung” markiert sind, sind in den verbleibenden Spalten der Tabelle hervorgehoben.
  • Genauer gesagt ermöglichen der Eine-Bank-Vorladen-Befehl 200, der Vorladen-Aller-Bänke-Befehl 210, der Keine-Operation-Befehl 230 und der Vorrichtung-Deaktivieren-Befehl 240 eine Zustandseinfügung und so ein Umschalten zwischen Signalpegeln auf zumindest einigen der Signalleitungen.
  • Noch genauer gesagt erlaubt der Eine-Bank-Vorladen-Befehl 200 ein Umschalten der Signalpegel von Adressleitungen (Axx-A11 und A9-A0) des Adressbusses. Der Vorladen-Aller-Bänke-Befehl 210 ermöglicht eine Zustandseinfügung auf den Bankadressleitungen BA0-BAx, den Adressleitungen Axx-A11 und A9-A0. Der Keine-Operation-Befehl 230 erlaubt einen willkurlichen Signalpegel auf den Bankadressleitungen BA0-BAx, den Adressleitungen A0-Axx. In dem Rahmen eines Keine-Operation-Befehls 230 jedoch sind das Chipauswahlsignal CS, das Zeilenadressübernahmesignal RAS, das Spaltenadressübernahmesignal CAS und das Schreibfreigabesignal WE (bzw. das Inverse derer) vordefiniert. Der Vorrichtung-Deaktivieren-Befehl 240 benötigt nur einen hohen Pegel auf der (invertierten) Chipauswahlleitung CS, während die anderen Signalleitungen (RAS, CAS, WE, BA0-BAx, A0-Axx) willkürliche Werte annehmen können. So sind in dem folgenden Ausführungsbeispiel Befehle des DDR2-SDRAM, die Zustandseinfügungen erlauben, hervorgehoben.
  • 3 zeigt ein Blockdiagramm für ein Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung 100 für einen Sender, was auch als Zustandsabgleicher (State Equalizer) bezeichnet wird. Genauer gesagt weist der Zustandsabgleicher 100 einen Steuerblock 140 als Steuerschaltung gemeinsam mit drei Umschaltschaltungen 130a, 130b und 130c auf. Das in 3 gezeigte Ausführungsbeispiel zeigt neben dem regulären Schaltungsaufbau für einen Sender den Steuerblock 140 und mehrere Umschaltschaltungen 130a bis 130c, die jeweils einen Zustandszähler 250 und einen Zustandseinfuger 260 aufweisen, die in 3 nur für die Umschaltschaltung 130a gezeigt sind. Das Ausführungsbeispiel der Vorrichtung 100 weist jedoch mehrere Zustandszähler und Zustandseinfüger für die Adresssignale A[14:0] und die Bankadresssignale BA[2:0] und einen Befehlszustandszähler und Befehlszustandseinfüger für die Befehlssignale (CS#, RAS#, CAS# und WE#) auf. In diesem Zusammenhang soll angemerkt werden, dass „#” das Inverse oder Komplementäre des entsprechenden Signals auf der Signalleitung darstellt, obwohl aus Vereinfachungsgründen die Signalleitungen nach beiden Bezugnahmen (Signal und komplementäres Signal) bezeichnet werden können.
  • Die Umschaltschaltung 130b, die den vorstehend erwähnten CMD-Zustandszähler und den CMD-Zustandseinfuger aufweist, ist im Zusammenhang von 7 detaillierter erläutert. Die Umschaltschaltung für die Bankadressleitungen und die Adressleitungen ist durch die Umschaltschaltungen 130a und 130c gebildet. Genauer gesagt wurde als ein Beispiel nur zu Darstellungszwecken die Umschaltschaltung 130a für die Adressleitung A[0] schematisch aus der Umschaltschaltung für die Adressleitungen und die Bankadressleitungen herausgenommen. So werden die Umschaltschaltung 130a für die Adressleitung A[0], die Umschaltschaltung 130c für die anderen Adressleitungen A[14:1] und die Bankadressleitungen BA[2:0] durch die Umschaltschaltung 130c gehandhabt.
  • Bei diesem bestimmten Ausführungsbeispiel werden die ursprünglichen Signale CK (Taktsignale), CS#, RAS#, CAS#, WE#, BA[2:0] und die Adressleitung A[14:0] synchron unter Verwendung des Taktsignals CK in den Steuerblock 140 getaktet. Der Steuerblock 140 weist ferner eine geeignete Anzahl von Ausgangen auf, die die erwähnten Signale zu den Umschaltschaltungen 130a, 130b und 130c weiterleiten.
  • Da 3 ein Blockdiagramm eines Ausführungsbeispiels einer Vorrichtung 100 zeigt, wie es in einem Sender einer Busstruktur eines Speichersystems beinhaltet ist, ist der reguläre Schaltungsaufbau für einen Sender in 3 lediglich zur Vereinfachung nicht gezeigt. Die Vorrichtung 100 für den Sender liefert den Befehls-/Adress-Bus (CS#, RAS#, CAS#, WE#, BA[2:0] und A[14:0]) oder, wie in dem Kontext von 2 beschrieben ist, komplementäre Signalleitungen gemeinsam mit einer Taktsignalleitung CK an den Steuerblock 140. In diesem Zusammenhang soll angemerkt werden, dass zur Vereinfachung die Adressleitung A10/AP in 3 als „A[10]” gezeigt ist. Der Steuerblock 140 weist für jede Signalleitung des Befehls-/Adress-Busses einen Ausgang auf, der ein Signal bereitstellt, das in 3 und in dem Rest der Figuren der vorliegenden Anmeldung durch die zusätzliche Ergänzung „_1” angezeigt ist. Folglich wird das Taktsignal CK, das an den Steuerblock 140 geliefert wird, durch den Steuerblock 140 als das Taktsignal CK_1 ausgegeben. Entsprechend werden die Signale der Signalleitungen des Adressbusses A[14:0] durch den Steuerblock 140 als die Signalleitungen oder vielmehr Signale A_1[14:0] ausgegeben. Außerdem werden die anderen Signalleitungen eines Befehls-/Adress-Busses, die an den Steuerblock 140 geliefert werden, durch den Steuerblock 140 entsprechend ausgegeben.
  • Ferner weist der Steuerblock 140 vier zusätzliche Ausgänge EQU_CMD, EQU_BA, EQU_A und EQU_A10 auf, die Schaltsignale oder vielmehr Signale bereitstellen, die gemäß den Ausgängen bezeichnet sind und an einen Satz von vier internen Signalleitungen 150 geliefert werden. Die in 3 gezeigte Vorrichtung 100 weist ferner mehrere Zustandszahler und Zustandseinfüger auf, die in einem Satz von Umschaltschaltungen 130 für die Adresssignale A[14:0] und Bankadresssignale BA[2:0] beinhaltet sind, sowie einen Befehlszustandszähler oder CMD-Zustandszähler und einen Befehlszustandseinfüger für die Befehlssignale (CS#, RAS#, CAS# und WE#). Lediglich zu Darstellungszwecken jedoch zeigt 3 drei unterschiedliche Umschaltschaltungen 130a, 130b und 130c, wobei nur in dem Fall der Umschaltschaltung 130a die interne Struktur mit einem Zustandszähler 250 und einem Zustandseinfüger 260 in 3 dargestellt ist.
  • Genauer gesagt zeigt die Umschaltschaltung 130a die Umschaltschaltung für die Adressleitung A[0] (als Instanz für A[0] gezeigt). Die Umschaltschaltung 130b weist ahnliche Zustandszähler und Zustandseinfüger für den Rest der Signalleitungen des Adressbusses A[14:1], BA[2:0] auf, während die Umschaltschaltung 130c einen Zustandszähler und einen Zustandseinfüger für die Signalleitungen des Befehlsbusses aufweist, die in dem Zusammenhang von 7 detaillierter beschrieben werden und die ebenso als CMD-Zustandszahler und -Einfüger bezeichnet sind.
  • Bezug nehmend auf die Umschaltschaltung 130a für die Signalleitung des Adressbusses A[0] ist die Umschaltschaltung 130a mit der Taktsignalleitung CK_1, der Signalleitung des Adressbusses A_1[0] und dem Schaltsignal EQU_A, das durch den Steuerblock 140 ausgegeben wird, verbunden. Entsprechend ist die Umschaltschaltung 130b fur den Rest der Signalleitungen des Adressbusses mit den Ausgängen des Steuerungsblocks 140 verbunden, was die geeigneten Signale bereitstellt, sowie mit den Ausgängen für die Schaltsignale die Signalleitungen des Adressbusses und die Taktsignalleitung betreffend. Genauer gesagt ist die Umschaltschaltung 130b mit den Signalleitungen A_1[14:1], BA_1[2:0], mit der Taktsignalleitung CK_1 und den beiden internen Signalleitungen 150 verbunden, die die Schaltsignale EQU_BA und EQU_A befördern. Ähnlich ist die Umschaltschaltung 130c auch mit der Taktsignalleitung CK_1, den Signalleitungen des Befehlsbusses als Ausgang durch den Steuerblock 140, CS_1#, RAS_1#, CAS_1#, WE_1# und dem Schaltsignal EQU_CMD, das an die interne Signalleitung 150 geliefert wird, verbunden. Wie bereits angemerkt wurde, ist die Umschaltschaltung 130c jedoch im Zusammenhang von 7 detaillierter beschrieben.
  • Die Taktsignalleitung CK_1, wie sie durch den Steuerblock ausgegeben wird, ist ferner direkt mit einer der Signalleitungen 110 verbunden, die durch die Vorrichtung 100 ausgegeben werden. Genauer gesagt ist die Taktsignalleitung, die den Takt CK_1 befördert, mit der Signalleitung CK_EQ verbunden. Entsprechend sind die Signalleitungen, die durch die Umschaltschaltungen 130a, 130b und 130c ausgegeben werden, mit einem Satz jeweiliger Signalleitungen 110 verbunden, die in 3 und dem Rest der Anmeldung durch die zusätzliche Ergänzung „EQ” bezeichnet sind. Ferner wird z. B. das Chipauswahlsignal CS# oder vielmehr das inverse Signal durch den Steuerblock 140 verzögert, der das verzögerte Chipauswahlsignal CS_1# an die Umschaltschaltung 130c liefert. Die Umschaltschaltung 130c gibt dann ein „abgeglichenes” Chipauswahlsignal aus, das mit CS_EQ# bezeichnet ist. Entsprechend wird auch der Rest der Signalleitungen des Befehls-/Adress-Busses durch die jeweiligen Umschaltschaltungen 130a, 130b, 130c als eine abgeglichene Version ausgegeben, die durch das „_EQ” angezeigt ist (z. B. RAS_EQ# als die abgeglichene Version des Zeilenadressübernahmesignals RAS#).
  • Zusammenfassend bezieht sich der zusätzliche Anhang „_1” auf ein verzögertes Signal oder eine Signalleitung, die das entsprechende verzögerte Signal, wie es durch den Steuerblock 140 verzögert wird, befördert, während der Anhang „_EQ” eine abgeglichene Version anzeigt, die ein Verhältnis aufweist, das „idealerweise” identisch zu oder so nahe wie möglich an dem Zielverhältnis ist, wie in dem Zusammenhang des in 1 gezeigten Ausführungsbeispiels bezüglich der Zeit erläutert wurde, die die Signalleitung auf den jeweiligen Signalpegeln verbringt. Das Präfix „EQU_” beschreibt, wie oben definiert wurde, die Schaltsignale oder Signale, die durch den Steuerblock 140 an den Satz interner Signalleitungen 150 geliefert werden, die einen inaktiven Zustand anzeigen.
  • Unter Bezugnahme auf die Umschaltschaltung 130a, die den Zustandszähler 250 und den Zustandseinfüger 260 aufweist, sind sowohl der Zustandszähler 250 als auch der Zustandseinfuger 260 mit der Taktsignalleitung CK_1 verbunden. Die Eingaben von sowohl dem Zustandszahler 250 als auch dem Zustandseinfüger 260 sind mit CK bezeichnet. Bei dem in 3 gezeigten Ausführungsbeispiel weist der Zustandszahler 250 ferner zwei Register auf, die als „Limit_Ins_0” und „Limit_Ins_1” bezeichnet sind, und die die Einfügungsgrenzen, die oben beschrieben wurden, für eine 0 und 1 beinhalten. Der Zustandszähler 250 weist ferner zwei Eingänge INS_0 und INS_1 auf, die mit geeigneten Eingängen des Zustandseinfügers 260 verbunden sind, die ebenso als INS_0 und INS_1 bezeichnet sind. Über die Signalleitungen, die die jeweiligen Eingänge des Zustandseinfügers 260 und Ausgänge des Zustandszählers 250 verbinden, werden Signale an den Zustandseinfüger 260 geliefert, die anzeigen, ob in dem nächsten untätigen Zustand oder inaktiven Zustand eine 0 oder eine 1 durch die Umschaltschaltung 130 in 3 in die Signalleitung 110 eingefügt werden soll, die das Signal A_EQ[0] befordert. Um dies zu erzielen, ist die Umschaltschaltung 130a mit einem Ausgang DOUT des Zustandseinfügers 260 verbunden, der nicht nur mit der Signalleitung 110 verbunden ist, sondern auch zu einem Eingang DIN des Zustandszählers 250 rückkoppelt, auf Basis dessen der Zustandszähler 250 die Anzahl von Nullen und Einsen zählt, entscheidet, was in dem nächsten „Bereit zur Einfügung”-Schlitz ausgegeben werden soll, und dem Zustandseinfuger 260 die geeigneten Signale liefert, die das Ergebnis der Entscheidung in der Form der Signale an dem Ausgang INS_0 und INS_1 anzeigen.
  • Der Zustandseinfüger 260 weist ferner einen Eingang DIN, mit dem die Signalleitung des geeigneten Busses verbunden ist, und einen Eingang EQU auf, der mit der geeigneten internen Signalleitung 150 verbunden ist, die das Schaltsignal oder Signal von dem Steuerblock 140 befördert. In dem Fall eines Schaltsignals 130a für die Signalleitung A[0] des Adressbusses ist der Zustandseinfüger 260 mit dem Ausgang der Signalleitung A_1[0] des Steuerblocks 140 verbunden und der Eingang EQU des Zustandseinfügers 260 ist mit dem Ausgang EQU_A des Steuerblocks 140 uber eine der internen Signalleitungen 150 verbunden. Folglich wird jedes Mal, wenn der Steuerblock 140 über den Ausgang EQU_A anzeigt, dass der Bus oder vielmehr die Signalleitung des Busses in einem aktiven Zustand ist oder sein wird, der Zustand oder vielmehr das Signal der Signalleitung A[0] in seiner verzögerten Form durch den Zustandseinfüger 260 an seinem Ausgang DOUT ausgegeben und so an die Signalleitung 110 geliefert.
  • Wie bereits angemerkt wurde, weist insbesondere die Umschaltschaltung 130b für jede Signalleitung, die mit der Umschaltschaltung 130b des Steuer-/Adress-Busses verbunden ist, auch einen geeigneten Zustandszähler und einen geeigneten Zustandseinfüger auf. Außerdem weist die Umschaltschaltung 130c für den Befehlsbus einen Zustandszähler und einen Zustandseinfüger auf, die im Zusammenhang von 7 detailliert erläutert werden.
  • Eine letzte Anmerkung soll in Bezug auf die Signalleitung für das Taktsignal CK gemacht werden. Das Taktsignal CK_1 in seiner verzögerten Form, das durch den Steuerblock 140 ausgegeben wird, wird direkt an die Signalleitung für das Taktsignal CK_EQ geliefert, was erlaubt ist, da das Taktsignal zwischen den Zuständen der Signalpegel 0 und 1 umschaltet, um den Takt anzuzeigen. So ist ein Bezeichnen des Taktsignals in seiner verzögerten Form CK_1 als ein abgeglichenes Taktsignal CK_EQ ebenso erlaubt. Falls nötig, könnten jedoch bei einer konkreten Implementierung zusatzliche Verzögerungen, die in 3 nicht gezeigt sind, ratsam sein, um eine weitere Verzögerung oder eine zusätzliche Phasenverschiebung fur die Taktsignalleitung einzufuhren, um die Verzögerung, die durch die Umschaltschaltung 130 eingeführt wird, zu kompensieren. In diesem Zusammenhang soll angemerkt werden, dass zusätzliche Signale (z. B. Rücksetzsignale) und ein zusätzlicher Schaltungsaufbau zur Initialisierung der Blöcke verwendet werden oder ratsam sein könnten, insbesondere der Steuerblock 140, die Umschaltschaltungen 130a, 130b und 130c, der Zustandszähler 250 und der Zustandseinfüger 260. Ferner soll angemerkt werden, dass zusatzliche Signale und zusätzlicher Schaltungsaufbau ebenso zur Synchronisierung der erwähnten Blöcke verwendet werden oder ratsam sein könnten.
  • Trotzdem werden bei dem spezifischen in den 3 bis 12 gezeigten Ausführungsbeispiel die ursprünglichen Signale synchron unter Verwendung des Taktsignals CK in den Steuerblock 140 getaktet sind. Außerdem werden die Ausgangssignale der Vorrichtung 100 (CS_EQ#, RAS_EQ#, CAS_EQ#, WE_EQ#, BA_EQ[2:0] und A_EQ[14:0]) synchron an den Ausgangstakt CK_EQ geliefert. Es ist jedoch klar, dass alternative Ausführungsbeispiele auf dem Gebiet asynchroner oder anderer synchroner Verfahren zum Übertragen von Signalen ebenso angewendet werden konnen. So können weitere asynchrone oder andere synchrone Verfahren für eine Implementierung eines Ausführungsbeispiels der Erfindung verwendet werden.
  • Zusammenfassend werden auf dem Sender eines Fly-By-Busses neben den regulären Senderblöcken drei zusätzliche Schaltungsblöcke verwendet: ein Zustandszähler (vergleiche Zustandszähler 250 einer Umschaltschaltung 130a in 3), ein Zustandseinfüger (vergleiche Zustandseinfüger 260 in 3) und ein Steuerblock 140. Wie unten detaillierter herausgestellt werden wird, wird ein Zustandszähler in dem Rahmen des Ausführungsbeispiels, wie unten beschrieben, für jedes Signal auf dem Fly-By-Bus verwendet. Dieser Zahler zahlt die Anzahl übertragener Nullen und Einsen über ein sich verschiebendes Zeitfenster, oder durch Verwenden eines Zählers zum fortwährenden Überwachen der Differenz zwischen übertragenen Nullen und Einsen. Ferner wird ein Zustandseinfuger, wie der Zustandseinfüger 260 für die Signalleitung des Adressbusses A[0] für jedes Signal auf dem Fly-By-Bus verwendet. Auf eine Anforderung der Steuerblöcke hin fügt der Zustandseinfüger 260 Zustände auf jeder Signalleitung ein, derart, dass die Anzahl übertragener Nullen und Einsen sich einem festen, anpassbaren oder programmierbaren Verhältnis annähert, das z. B. 1 sein kann, so dass die Anzahl übertragener Nullen und Einsen sich einem Gleichgewicht annähert. Die eingefügten Zustände konnen auch durch externe Blöcke durchgesetzt werden, z. B. weitere Steuerblöcke 140 und/oder weitere Einfügungsblöcke.
  • Der Steuerblock 140 erfasst in dem Fall eines DDR-Speicherbusses, ob der Bus aktiv ist oder sein wird, d. h. Befehle überträgt, die Aktionen auf dem Bus auslösen, oder inaktiv, d. h. NOP-Befehle oder DES-Befehle überträgt. Wie später detaillierter herausgestellt werden wird, werden, wenn der Bus inaktiv ist, die folgenden Aktionen unternommen:
    Die Zustandseinfüger für Adressleitungen, wie der Zustandseinfüger 260 für die Adressleitung A[0], werden ausgelöst, um Zustände einzufügen, die erforderlich sind, um ein anpassbares oder programmierbares Verhältnis zu erzielen, z. B. ein Gleichgewicht übertragener Nullen und Einsen. Als Nächstes werden die Zustandseinfüger für Befehls- und Steuerleitungen in einer Weise gesteuert, dass diese zwischen einem NOP-Befehl und einem DES-Befehl hin- und herschalten, wie in dem Zusammenhang der 7, 8, 9 und 10 beschrieben werden wird, wenn die Chipauswahlleitung (CS) auf aktiv getrieben wird, werden die aktiven Befehlsleitungen in einer Weise getrieben, um einen NOP-Befehl anzulegen. In anderen Worten müssen, wie auch 2 zeigt, oder der NOP-Befehl 230, wenn die Chipauswahlleitung (CS) auf aktiv (H oder 1) getrieben wird, so dass das Inverse L ist, die anderen Signalleitungen des Befehls-/Steuerbusses RAS, CAS, WE auf L oder 0 getrieben werden, so dass die inversen Signale H oder 1 sind, um einen NOP-Befehl 230 über den Befehls-/Steuerbus zu befördern.
  • Wenn jedoch die Chipauswahlleitung CS auf inaktiv getrieben wird, so dass das Inverse der Chipauswahlleitung CS in einem hohen Zustand ist (H oder 1), werden die anderen Befehlsleitungen in einer Weise getrieben, um ein Gleichgewicht oder ein anderes festes, anpassbares oder programmierbares Verhältnis zwischen den übertragenen Nullen und Einsen zu erzielen, wie in Tabelle 2 gezeigt ist. Genauer gesagt wird in diesem Fall ein Vorrichtung-Deaktivieren-Befehl oder DES-Befehl 240 an den Befehls-/Steuerbus geliefert. Wie auch die Tabelle in 2 zeigt, können in diesem Kontext die Signale der Signalleitungen RAS#, CAS# und WE# in einem beliebigen Zustand getrieben werden.
  • Anstelle eines Zeigens von Flussdiagrammen, die das Verhalten der Umschaltschaltungen 130 beschreiben, zeigen der Zustandszähler 250 und der Zustandseinfüger 260, wie auch der Steuerblock 240, 4 bis 6 und 8 bis 10, eine Verhaltensbeschreibung der zuvor erwähnten Blöcke, Schaltungen und Komponenten gemäß einer Verhaltensbeschreibungssprache gemäß dem Verilog-Standard. Genauer gesagt ist die Verhaltensbeschreibung der Blöcke des in 3 gezeigten Ausführungsbeispiels gemäß dem Verilog-Standard IEEE-Standard 1364-1995 gegeben. Die neuere Version des Standards jedoch, der IEEE-Standard 1364-2001, kann ebenso verwendet werden, da der IEEE-Standard 1364-2001 eine Obermenge des IEEE-Standards 1364-1995 darstellt.
  • 4 zeigt eine Verhaltensbeschreibung des Steuerblocks 140 des in 3 gezeigten Ausführungsbeispiels der Vorrichtung. Die Signale „equ_cmd”, „equ_ba”, „equ_a” und equ_a10” sind hervorgehoben oder zeigen die entsprechenden Signale oder Gruppen von Signalen „CS#, RAS#, CAS#, WE#” und „BA[2:0] und A[14:11,9,0)” und „A[10]” entweder als „bereit zur Einfügung” bzw. als „keine Einfügung erlaubt” an. Die Decodierung der jeweiligen Befehle und das Hervorheben oder die Anzeige der Ausgangssignale wird gemäß der in 2 gezeigten Tabelle durchgeführt.
  • In diesem Zusammenhang soll angemerkt werden, dass bei der in 4 gezeigten Verhaltensbeschreibungssprache sowie den anderen Verhaltensbeschreibungen, die in den 5, 6, 8, 9 und 10 gezeigt sind, die Signale, die Signalleitungen, die Signalwerte oder die Signalpegel durch Kleinbuchstaben verglichen mit den 1, 2, 3, 7, 11 und 12 angezeigt sind, in denen Großbuchstaben verwendet werden.
  • Obwohl die in 4 erfolgende Verhaltensbeschreibung den Verilog-Standard IEEE-Standard 1364-1995 erfüllt, erfolgt eine kurze Einführung basierend auf dem in 4 gezeigten Code, um ein besseres Verständnis des Verhaltens der Zustandszähler, der Zustandseinfüger und der Steuerblöcke zu ermöglichen. Die folgende kurze Einführung kann eine tiefer gehende Einführung in den Verilog-Standard IEEE 1364-1995 oder den IEEE-Standard 1364-2001 nicht ersetzen.
  • Der in 4 gezeigte Code ist gemäß den Zeilennummern 300, gefolgt durch Instruktionen 310 für jede Zeile angeordnet. In diesem Zusammenhang soll angemerkt werden, dass Anmerkungen und Kommentare, die keine ausführbaren Instruktionen aufweisen, mit „//” beginnen, wie gezeigt ist, z. B. in der Zeile 34. Ferner zeigt ein Apostroph ein Begrenzungszeichen an. Benutzerdefinierte Funktionen sind nur durch Großbuchstaben angezeigt. Ein Beispiel stellt die Funktion CTRLBLKDLYCK, die in der Zeile 32 gezeigt ist, dar, die eine Verzögerung (DLV) des Steuerblocks 140 (CTRLBLK) bezüglich des Taktsignals (CK) darstellt. Genauer gesagt definiert die Zeile 32 der Variablen oder dem Signal CK_1 eine verzögerte Version des Taktsignals CK durch die Anwendung der benutzerdefinierten Funktion CTRLBLKDLYCK oder weist dies zu. Weitere Beispiele von benutzerdefinierten Funktionen werden z. B. in Zeilen 36 bis 38 verwendet, wobei die benutzerdefinierte Funktion CTRLBLKDLY eine weitere Verzögerung in dem Rahmen des Steuerblocks 140 darstellt.
  • Zahlen sind durch einen Ausdruck dargestellt, der zuerst die Anzahl von Bits anzeigt, gefolgt durch einen Apostroph, gefolgt durch „b” für eine binare Darstellung der Zahl und der tatsachlichen Zahl, in dem Fall einer Binärzahl gegeben durch Nullen und Einsen. In diesem Zusammenhang soll angemerkt werden, dass „_” ignoriert wird, und dass ein Fragezeichen „?” eine beliebige Zahl darstellt. So stellt folglich der Ausdruck „5'b = 1111_?” eine fünfstellige Binärzahl dar, wobei die ersten vier Bits durch die Bits 1111 dargestellt werden, wobei das fünfte Bit entweder eine 0 oder eine 1 ist.
  • Wie zuvor erwähnt wurde, ist in der Zeile 32 der Verhaltensbeschreibung von 4 durch Anwendung der benutzerdefinierten Funktion CTRLBLKDLYCK das Taktsignal CK der Signalleitung CK_1 an dem Ausgang des Steuerblocks 140 in einer verzögerten Form zugewiesen. Die Routine, die in der Zeile 35 beginnt, wird immer ausgeführt, wenn das Taktsignal CK eine positive Flanke (POSEDGE) zeigt. In der Zeile 36 werden die Signale CS#, RAS#, CAS#, WE#, die durch die Variablen cs_n, ras_n, cas_n bzw. we_n dargestellt sind, den Variablen oder Signalleitungen an dem Ausgang des Steuerblocks 140, cs_1_n, ras_1_n, cas_1_n, we_1_n, in einer verzögerten Form durch Anwendung der benutzerdefinierten Funktion CTRLBLKDLY zugewiesen, wobei die Ergänzung „_n” den komplementären oder negativen Wert der jeweiligen Variable anzeigt, wie dies „#” in Bezug auf die Signale tut. Entsprechend werden in den Zeilen 37 und 38 Bankadressleitungen und die Adressleitungen, die durch die Variablen BA bzw. A dargestellt sind, den Signalleitungen der Variablen ba_1, a_1 durch Anwendung der benutzerdefinierten Funktion CTRLBLKDLY in einer verzögerten Form zugeschrieben.
  • Die Zeilen 40 bis 56 weisen eine Fallunterscheidung in Bezug auf das Signal der Signalleitungen des Befehls-/Steuerbusses mit den Signalleitungen CS#, RAS#, CAS#, WE#, A[10] auf. In diesem Zusammenhang soll ferner angemerkt werden, dass die zusätzliche Ergänzung „_n” den komplementären Wert des jeweiligen Werts anzeigt. Folglich weist z. B. die Variable cs_n das komplementäre Signal des Chipauswahlsignals CS auf, das auch als CS# bezeichnet wird. In anderen Worten, die Variable der Signalleitung cs_n ist mehr oder weniger gleich dem Komplementären des Signals CS oder des Signals CS mit einer horizontalen Linie darüber, wie in der Tabelle in 2 angezeigt ist.
  • Als ein Beispiel befördert, wenn das inverse oder negative CS-Signal auf einem hohen Pegel (= H oder 1) ist, in dem Fall einer positiven Flanke des Taktsignals (vgl. Zeile 35), der Befehls-/Steuerbus einen DES-Befehl, wie durch den Kommentar in der Zeile 41 angezeigt ist. In diesem Fall können der gesamte Rest der Signalleitungen des Befehls-/Steuerbusses, sowie die Signalleitungen des Adressbusses gemäß dem Bedarf nach Abgleich auf einen willkürlichen Signalpegel umgeschaltet werden. Folglich werden alle Schaltsignale oder Signale durch die Steuerungsschaltung 140 zu den internen Signalleitungen 150 gegeben und können ebenfalls auf Hoch (= H oder 1) gesetzt werden. So werden alle Signale oder Variablen, die anzeigen, dass eine Einfügung erlaubt ist, auf 1 gesetzt. Entsprechend werden in der Zeile 42 die Variablen equ_cmd, equ_ba, equ_a und equ_a10 auf Hoch gesetzt, wie durch die Zahl angezeigt ist, die durch „4'b1111” definiert ist. Dies wird jedoch auch mit einer Verzögerung getan, die durch die benutzerdefinierte Funktion CTRLBLKDLY definiert ist.
  • Alle benutzerdefinierten Verzögerungsfunktionen (z. B. CTRLBLKDLY und CTRLBLKDLYCK) werden in die Verhaltensbeschreibung eingeführt, um Verzögerungen unterzubringen, die durch konkrete Implementierungen eines Ausführungsbeispiels einer Vorrichtung 100 eingeführt werden. Wie im Zusammenhang der 11 und 12 erläutert werden wird, sind die benutzerdefinierten Verzögerungsfunktionen in der Verhaltensbeschreibung, die in den 4 bis 6 und 8 bis 10 gezeigt ist, um eine Gesamtverzögerung von einem Zyklus unterzubringen. Dies jedoch ist nur eine exemplarische Gesamtverzögerung, die in die Verhaltensbeschreibung implementiert wurde, um die Signale in den 11 und 12 darzustellen, wie im Zusammenhang dieser Figuren erläutert werden wird. Bei konkreten Implementierungen eines Ausführungsbeispiels jedoch können zusätzliche Signale und zusätzlicher Schaltungsaufbau zum Synchronisieren der Blöcke verwendet werden, wie bereits erwähnt wurde. Ein zweites Beispiel stellt den Eine-Bank-Vorladen-Befehl 200 dar, der durch die Tatsache gekennzeichnet ist, dass nur das Inverse des Spaltenadressübernahmesignals (CAS) auf einem hohen Signalpegel (= H oder 1) ist, während der Rest der Signalleitungen des Befehls-/Steuerbusses auf einem niedrigen Signalpegel (= L oder 0) ist. So wird die Verhaltensbeschreibung der Zeilen 47 bis 49 entsprechend ausgeführt. Wie die in 2 gezeigte Tabelle anzeigt, kann nur die Signalleitung des Adressbusses, ohne die Signalleitung A10, willkürliche Werte aufweisen, und so die Verwendung zum Signalabgleich. Folglich ist in der Zeile 48 nur das Ausgangssignal EQU_A zu der Variablen equ_a auf 1 gesetzt, während der Rest der Umschaltsignale oder Schaltsignale oder Signale auf Null gesetzt wird.
  • Wenn jedoch keiner der in 2 gezeigten Befehle zutrifft, befördert der Befehls-/Steuerbus einen Zustand, der einen Befehl anzeigt, der transportiert werden soll. Folglich definieren die Zeilen 53 bis 55 einen so genannten Vorgabefall, in dem alle Schaltsignale des Steuerblocks 140 auf Null gesetzt sind. Wie bereits zu sehen war, war hier die Signalleitung A0 dem Befehls-/Steuerbus zugeordnet, obwohl dies typischerweise als Teil des Adressbusses betrachtet wird.
  • 5 zeigt eine weitere Verhaltensbeschreibung, gemäß dem oben erwähnten Verilog-Standard, des Zustandszählerblocks 250 des in 3 gezeigten Ausführungsbeispiels. Wieder wird bei jeder ansteigenden Taktflanke (vgl. Zeile 27 und die entsprechende Endinstruktion in Zeile 65) ein Zähler ctr_1m0, der die Differenz oder das Delta zwischen übertragenen Einsen und Nullen zählt, inkrementiert oder dekrementiert. Das Etikett ctr_1m0 zeigt einen Zähler an, der jedes Mal inkrementiert wird, wenn an dem Eingang din oder DIN eines Zustandszählers 250 ein hoher Signalpegel (= H oder 1) vorhanden ist, während der Zähler jedes Mal um 1 dekrementiert wird, wenn eine Null oder ein niedriger Signalpegel an dem Eingang din oder DIN vorhanden ist. So kann das Etikett „ctr_1m0” als Zähler für „Einsen-Nullen” gelesen werden.
  • In diesem Zusammenhang soll angemerkt werden, dass in dem oben erwähnten Verilog-Standard ein Vergleich durch drei aufeinander folgende Istgleichzeichen („===”) angezeigt ist. Folglich stellt die Zeile 29 die Fallunterscheidung dar, die anzeigt, ob eine Eins („1'b1”) an dem Eingang din oder DIN vorhanden ist, dargestellt durch die Variable din des Zustandszählers 250. Wieder wird eine weitere benutzerdefinierte Verzögerungsfunktion in den Zeilen 30, 32 und 34 angewendet, die das entsprechende Signal um z. B. die Hälfte eines Zyklus verzögert, deshalb die Etikettierung als CTRDLYHALF.
  • Ferner zeigen die Zeilen 28 bis 34, die den Zähler darstellen, klar, dass der Zähler auf dem Taktsignal CK basiert, da die Zeilen 28 bis 34 nur ausgeführt werden, wenn eine positive Flanke des Taktsignals auftritt (vgl. Zeile 27). So basiert der Zähler oder der Zustandszähler 250 des in 3 gezeigten Ausführungsbeispiels der Vorrichtung auf dem Taktsignal. Im Prinzip jedoch kann ein beliebiges Taktsignal verwendet werden, das in der Lage ist, ein kleines, jedoch endliches Zeitintervall anzuzeigen. Alternativ kann ein beliebiger anderer Takt oder Zeitgeber verwendet werden, um die Zeit zu messen, während der die Signalleitung 110 auf dem jeweiligen Signalpegel ist.
  • In den Zeilen 36 bis 37 zeigt das zweite Auftreten einer benutzerdefinierten Verzögerungsfunktion CTRDLYHALF eine weitere Verzögerung der Verarbeitung um in etwa die Hälfte eines Zyklus, bewirkt durch die Verzögerung einer konkreten Implementierung eines Ausführungsbeispiels eines Zustandszahlers, an.
  • Außer den Zeilen 38 bis 42, die den Fall bewerten, in dem die Differenz der Anzahl übertragener Nullen und Einsen gleich Null ist, so dass nichts eingefügt werden soll, stellen die Zeilen 43 bis 64 das Zählerergebnis dar, das mit den Einfügungsgrenze für Nullen (limit_ins_0) und der Einfügungsgrenze für Einsen (limit_ins_1) verglichen wird. Das Ergebnis dieses Vergleichs bestimmt oder bewirkt dann, ob eine Einfügung überhaupt empfohlen wird, und falls dies der Fall ist, ob es eine 0 oder eine 1 ist, die eingefügt werden soll. Genauer gesagt werden die beiden Signalleitungen, die die beiden Ausgange des Zustandszählers 250 und die beiden Eingänge des Zustandseinfügers 260 verbinden, die ins_0 bzw. ins_1 bezeichnet sind (in 3 als „INS_0” bzw. „INS_1” bezeichnet), sobald sie durch die benutzerdefinierte Verzögerungsfunktion CTRDLYHALF wieder verzögert werden, basierend auf den erläuterten Grenzen auf 1, wenn der geeignete Signalpegel eingefügt werden soll, oder auf 0 gesetzt, wenn der geeignete oder jeweilige Signalpegel nicht eingefügt werden muss. Wieder werden die Variablen, die den Signalen zugeordnet sind, die zwischen dem Zustandszähler 250 und dem Zustandseinfüger 260 ausgetauscht werden, mit Kleinbuchstaben, in Verglich zu den Signalen, Signalleitungen, Eingängen oder Ausgängen, wie z. B. im Rahmen von 3 beschrieben ist, bezeichnet.
  • Zusammenfassend wird, wenn die Anzahl übertragener Einsen die Summe der Anzahl übertragener Nullen und die Grenze zur Einfügung von Einsen überschreitet, das Signal ins_0 auf 1 gesetzt (vgl. Zeile 47 mit der Zahl „1'b1”), während das Signal ins_1 auf 0 gesetzt wird (vgl. Zeile 48 mit der Zahl „1'b0”). Entsprechend wird, wenn die Anzahl übertragener Nullen die Summe der Anzahl übertragener Einsen und die Einfugungsgrenze für Einsen überschreitet, das Signal ins_1 auf 1 gesetzt (vgl. Zeile 58, Zahl „1'b1”) und das Signal ins_0 auf 0 gesetzt (vgl. Zeile 59, Zahl „1'b0”).
  • 6 zeigt eine Verhaltensbeschreibung eines Zustandseinfügungsblocks, z. B. des Zustandseinfügers 260 des in 3 gezeigten Ausführungsbeispiels der Vorrichtung. Wieder wird ansprechend auf eine positive Flanke eines Taktsignals CK (vgl. Zeile 17) der Zustandseinfüger 260 aktiv. Allerdings wird, nur wenn der Steuerblock 140 überhaupt eine Einfügung erlaubt, über das Signal EQU, das durch die Variable equ dargestellt ist, bestimmt, ob eine 0 oder eine 1 oder die ursprünglichen Daten, die an den Eingang din des Zustandseinfügers 260 geliefert werden, übertragen werden soll.
  • Wenn der Zustandseinfüger 260 bezüglich seines Verhaltens durch die in 6 gezeigten Instruktionen beschrieben wird, wird die Variable des Signals equ mit dem Signal, der Signalleitung oder der Variable equ_a beliefert, wie in 3 gezeigt ist. Die Entscheidung, ob eine 0, eine 1 oder die ursprünglichen Daten, die an dem Eingang din bereitgestellt werden, übertragen werden sollen, hängt von der Empfehlung des Zustandszählerblocks 250 ab, wie in dem Zusammenhang seines Verhaltens, das in 5 bereitgestellt wird, beschrieben ist. Genauer gesagt, der Zustandseinfüger 260 gibt die Daten, die an seinen Eingang din geliefert werden, aus, wenn die Signale an dem Eingang ins_0 und ins_1 beide gleich 0 sind. Außerdem werden, wenn keine Einfügung erlaubt ist, was durch den Steuerblock 140 angezeigt wird, indem das geeignete Schaltsignal oder Signal bereitgestellt wird, das dadurch dargestellt ist, dass die Variable equ gleich 0 ist, die ursprünglichen Daten, die an den Eingang din geliefert werden, übertragen und so den Ausgang dout an dem Ausgang DOUT (entsprechend der Variable dout) des Zustandseinfügers 260. Ferner führt die in 6 gezeigte Instruktion eine neue benutzerdefinierte Verzögerungsfunktion des Einfügungsblocks, des Einfügers oder Zustandseinfügers ein, die INSERTERDLY genannt wird.
  • 7 zeigt ein Blockdiagramm der Umschaltschaltung 130c, die einen Befehlszustandszähler 250' (CMD-Zustandszähler) und vier Zustandseinfüger 260 aufweist. Genauer gesagt zeigt 7 die Umschaltschaltung 130c für den Befehls-/Steuerbus des Ausführungsbeispiels der Vorrichtung 100, das in 3 im Detail gezeigt ist. Wie im Zusammenhang von 3 erwähnt wurde, konnen zusätzliche Signale (z. B. ein Rücksetzsignal oder Rücksetzsignale) und zusätzlicher Schaltungsaufbau zur Initialisierung der Blocke, z. B. des Zustandseinfügers 260 oder des CMD-Zustandszählers 250', verwendet werden oder ratsam sein. Ferner soll angemerkt werden, dass zusätzliche Signale und zusätzlicher Schaltungsaufbau auch zur Synchronisation der erwähnten Blöcke verwendet werden oder ratsam sein können. In anderen Worten, 7 zeigt die Umschaltschaltung 130c, die auch als ein Zustandsabgleicher bezeichnet wird.
  • Die Umschaltschaltung 130c, oder vielmehr das Blockdiagramm des Zustandsabgleichers für die Befehlssignale CS#, RAS#, CAS# und WE# wird mit dem verzögerten Taktsignal CK_1, dem Schaltsignal oder Signal EQU_CMD von dem Steuerblock 140 beliefert, das anzeigt, ob der Befehls-/Steuerbus in einem inaktiven Zustand ist oder sein wird, sowie den vier Signalleitungen, die zuvor erwähnt wurden, des Befehls-/Steuerbusses in ihrer verzögerten Form, wie durch die zusätzlichen Ausdrücke „_1” angezeigt wird.
  • Die vier Zustandseinfuger 260, die in der Umschaltschaltung 130c beinhaltet sind, entsprechen dem Zustandseinfüger 260, der in 3 gezeigt ist, wie in dem Zusammenhang der Umschaltschaltung 130a für die Adresssignalleitung A0 erläutert wurde. Ferner wird das Verhalten der vier Zustandseinfüger 260 durch die in 6 gegebene Verhaltensbeschreibung beschrieben.
  • Genauer gesagt wird jeder der Zustandseinfüger 260 mit dem verzögerten Taktsignal CK_1 an den Eingängen CK jedes der Zustandseinfüger 260 beliefert. Ferner ist jeder der Zustandseinfüger 260 über seinen Eingang EQU mit dem Schaltsignal oder Signal EQU_CMD verbunden. Da jedoch jeder der Zustandseinfüger 260 mit seinen jeweiligen Ausgangen DOUT mit einer unterschiedlichen Signalleitung 110 verbunden ist, ist jeder der Eingänge DIN mit einer der Signalleitungen verbunden, die das jeweilige Befehlssignal oder Steuersignal in ihren verzögerten Formen befördern. Als ein Beispiel ist der oberste Zustandseinfüger 260, der in 7 gezeigt ist, mit der Chipauswahlsignalleitung CS_1# über den Eingang DIN des Zustandseinfügers 260 verbunden, wie durch den Steuerblock 140 bereitgestellt wird. In anderen Worten, der oberste Zustandseinfüger 260 wird mit dem verzögerten Chipauswahlsignal CS_1 beliefert. Entsprechend stellt der Eingang des obersten Chipzustandseinfügers 260 das Chipauswahlsignal in seiner abgeglichenen Form an die jeweilige Signalleitung 110 in ihrer abgeglichenen Form bereit, wie durch das Etikett CS_EQ# angezeigt ist.
  • Ferner ist jeder der Zustandseinfüger 260 über seine Eingänge INS_0 und INS_1 mit einem passenden Satz von Ausgängen des Befehlszustandszählers 250' verbunden. Der Befehlszustandszähler 250' weist für jede der vier Signalleitungen des Befehlsbusses (CS, RAS, CAS, WE) einen Ausgang auf, der anzeigt, dass in dem nächsten „Bereit zur Einfügung”-Schlitz eine 0 eingefügt werden soll, und einen Ausgang für ein Signal, das anzeigt, dass in dem nächsten „Bereit zur Einfügung”-Schlitz eine 1 eingefügt werden soll. Folglich weist der Befehlszustandszähler 250' acht Ausgänge INS_CS_0, INS_CS_1, INS_RAS_0, INS_RAS_1, INS_CAS_0, INS_CAS_1, INS_WE_0 und INS_WE_1 auf.
  • Der Befehlszustandszähler 250' weist ferner einen Eingang CK für das Taktsignal in seiner verzögerten Form CK_1 auf, wie auch vier Eingänge IN_CS, IN_RAS, IN_CAS und IN_WE, für jedes der vier Signale, die durch die vier Zustandseinfuger 260 an die jeweiligen Signalleitungen 110 geliefert werden, mit denen die zuvor erwähnten Eingänge ebenso verbunden sind. Diese Rückkopplung schafft für den Befehlszustandszähler 250' die Möglichkeit eines Zählens der übertragenen Nullen und Einsen, die über die vier Signalleitungen 110 CS_EQ#, RAS_EQ#, CAS_EQ# und WE_EQ# gesendet werden, mit denen die vier Zustandseinfüger 260 verbunden sind. Ferner weist der Zustandszähler 250' acht Register für Einfügungsgrenzen für jede der vier Signalleitungen des Befehlsbusses und für sowohl einen Signalpegel, der einer 0 entspricht, als auch einen Signalpegel, der einer 1 entspricht, auf.
  • Der Grund für eine Verwendung eines unterschiedlichen, komplizierteren Zustandszählers 250' verglichen mit dem Zustandszähler 250 für die Adressleitung A0, wie in 3 gezeigt ist, ist die Befehlscodierung des DDR2-Busses, wie in 2 gezeigt ist. Diese Signale müssen als eine Gruppe behandelt werden. Deshalb wird die Einfügungsempfehlung in dem Befehlszustandszähler 250' für alle vier Signale gleichzeitig durchgeführt, was in den 8 bis 10 weiter beschrieben und dargestellt ist. Wie oben erwähnt wurde, sind die Zustandseinfüger 260 selbst die gleichen wie derjenige, der in 3 dargestellt und in 6 erläutert ist.
  • 8 zeigt einen ersten Teil einer Verhaltensbeschreibung des Befehlszustandszählerblocks 250' des in den 3 und 7 gezeigten Ausführungsbeispiels. Für jede der vier Signalleitungen des Befehlsbusses gibt es einen Differenz- oder Deltazähler, der um 1 inkrementiert wird, wenn eine 1 über die entsprechende oder jeweilige Signalleitung 110 übertragen wird, und der um 1 dekrementiert wird, wenn ein 0 über die entsprechende Signalleitung übertragen wird. Entsprechend werden die vier Zähler „ctr_1m0_cs” für die CS-Signalleitung, „ctr_1m0_ras” für die RAS-Signalleitung, „ctr_1m0_cas” für die CAS-Signalleitung und „ctr_1m0_we” für die WE-Signalleitung genannt. Wieder zeigt, wie in dem Zusammenhang des Zählers, der in dem Zusammenhang des Zustandszählers 250 eingeführt wurde, der in 5 in Bezug auf sein Verhalten beschrieben wurde, das Etikett „1m0” das Inkrementieren und Dekrementieren gemäß den übertragenen Signalen an, wie oben erlautert wurde.
  • Die vier Deltazähler, einer für jedes CS#-, RAS#-, CAS#- und WE#-Signal, werden bei jeder ansteigenden Taktflanke (vgl. Zeile 49) abhängig von dem Inhalt der jeweiligen übertragenen Signale inkrementiert oder dekrementiert.
  • 9 zeigt einen zweiten Teil der Verhaltensbeschreibung eines Befehlszustandszählerblocks 250' oder des CMD-Zustandszählerblocks 250' des in den 3 und 7 gezeigten Ausführungsbeispiels der Vorrichtung. Die in 9 gezeigten Instruktionen führen zu einer Berechnung einer absoluten Abweichung für jeden Differenzzähler der vier Signalleitungen aus den entsprechenden Grenzen (limit_ins_cs_0, limit_ins_cs_1, limit_ins_ras_0, limit_ins_ras_1, limit_ins_cas_0, limit_ins_cas_1, limit_ins_we_0 und limit_ins_we_1), nachdem die vier Zähler aktualisiert werden. Wenn jedoch ein Zähler innerhalb der spezifizierten Grenzen ist, ist die absolute Abweichung auf 0 gesetzt. Die absoluten Abweichungen werden in den vier jeweiligen Variablen oder abs_dev_cs, abs_dev_ras, abs_dev_cas und abs_dev_we gespeichert.
  • Genauer gesagt weisen die Zeilen 68 bis 78 die Berechnung der absoluten Abweichung für das Chipauswahlsignal (CS#) auf. Entsprechend entsprechen die Zeilen 80 bis 90 der RAS#-Signalleitung, die Zeilen 92 bis 102 der CAS#-Signalleitung und die Zeilen 104 bis 114 der WE#-Signalleitung. In den Zeilen 116 bis 117 wird ferner eine benutzerdefinierte Verzögerungsfunktion CMDCTRDLYHALF verwendet.
  • 10 zeigt einen dritten Teil einer Verhaltensbeschreibung des Befehlszustandszahlerblocks 250' des in den 3 und 7 gezeigten Ausführungsbeispiels der Vorrichtung 100. Die zuvor berechneten absoluten Abweichungen werden überprüft, wenn überhaupt eine Einfügung nötig ist. Dies wird in den Zeilen 119 bis 121 eingeleitet, falls nicht werden die entsprechenden Ausgangssignale in den Zeilen 169 bis 171 auf Null gesetzt.
  • Wenn jedoch eine Einfügung nötig ist, ist es in dem Zusammenhang des Befehlsbusses wichtig, wie in dem Rahmen von 2 erläutert wurde, herauszufinden, welches Signal der vier Signale die größte Abweichung besitzt, und so Prioritat fur eine bevorstehende Einfügung erhält. In dem Fall, dass das Chipauswahlsignal (CS#) die großte Abweichung besitzt und eine 1 eingefugt werden muss, muss ein NOP-Befehl oder ein Keine-Operation-Befehl 230 auf dem Befehlsbus eingefügt werden. Die Zeilen 122 bis 132 zeigen die entsprechenden Instruktionen.
  • Falls dies nicht der Fall ist, muss ein DES-Befehl oder der Vorrichtung-Deaktivieren-Befehl 240 auf dem Befehlsbus eingeführt werden, was in den Zeilen 133 bis 135 durchgeführt wird. Während in dem Fall eines NOP CS# auf Niedrig getrieben werden muss (= L oder 0), müssen RAS#, CAS# und WE# auf Hoch getrieben werden (= H oder 1). In dem Fall eines DES-Befehls muss die CS#-Signalleitung auf Hoch getrieben werden (= H oder 1). Basierend auf der in 2 gezeigten Befehlscodierung können die verbleibenden Signale RAS#, CAS# und WE# in diesem Fall entweder hoch oder niedrig sein. Deshalb wird abhängig von dem Delta des Differenzzählers für übertragene Nullen und Einsen für jedes einzelne dieser Drei geprüft, ob eine 0 oder eine 1 eingefügt werden soll. Dies wird für die RAS#-Signalleitung in den Zeilen 137 bis 145 durchgeführt, für das CAS#-Signal in den Zeilen 147 bis 155 und für die WE#-Signalleitung in den Zeilen 157 bis 165. Die entsprechenden Ausgangssignale werden dann gemäß diesem Algorithmus gesetzt.
  • Wieder jedoch wird die letztendliche Entscheidung, ob eine Einfügung überhaupt durchgefuhrt wird oder nicht, innerhalb der vier Einfügungsblöcke für CS#, RAS#, CAS# und WE# durchgefuhrt, die in dem Blockdiagramm in 7 gezeigt und im Zusammenhang von 6 beschrieben sind.
  • Die 11 und 12 zeigen ein Beispiel von zwei Zeitdiagrammen innerhalb des Rahmens des Ausführungsbeispiels der vorliegenden Erfindung, wie in den 3 und 7 gezeigt ist. Genauer gesagt zeigt 11 ein Beispiel eines Zeitdiagramms für das Signal A[0] mit und ohne Anwendung eines Ausführungsbeispiels der Vorrichtung 100. 12 zeigt ein Beispiel eines Zeitdiagramms für Befehlssignale mit und ohne Anwendung eines Ausführungsbeispiels der Vorrichtung 100, wie in den 3 und 7 gezeigt ist. In beiden 11 und 12 jedoch sind alle Einfügungsgrenzen auf 1 gesetzt. Dies führt, wie erläutert werden wird, zu viel erwünschtem Umschalten der entsprechenden Signale, falls dies durch die übertragenen Befehle auf dem Befehlsbus erlaubt wird.
  • In dem Fall der AC-Leistung jedoch, die sich bildet, wenn all das Umschalten zu viel wird, kann die Menge an Schalten einfach um ein bestimmtes Maß reduziert werden, entweder durch Anwenden größerer Einfügungsgrenzen und/oder durch dynamisches Einstellen der Einfügungsgrenzen während des Betriebs. Hierbei ist es möglich, eine Hysterese oder ein Hystereseverhalten zu erzielen.
  • Ferner ist es zusätzlich oder alternativ möglich, die Entscheidung zur Einfügung der 0 oder der 1 für mehr als einen Zyklus anzuwenden. So ist es möglich, die Entscheidung einer 0-x-Einfügung oder einer 1-x-Einfügung für eine feste, anpassbare oder programmierbare Anzahl von Taktzyklen anzuwenden, wobei die Anzahl von Taktzyklen nicht nur für jedes Taktsignal einzeln ausgewählt werden kann, sondern auch während des Betriebs oder im Vorübergehen verändert werden kann. Die Entscheidung darüber, wie alle erwähnten Parameter über den zeitlichen Verlauf angepasst werden konnen, kann bei einigen Ausführungsbeispielen z. B. basierend auf dem Verlauf der Zähler über die Zeit sein. Durch Anpassen der geeigneten Parameter ist es möglich, sich dem Zielverhältnis von Nullen und Einsen schnell anzunähern.
  • Wieder Bezug nehmend auf 11 zeigt diese Figur ein Beispiel eines Zeitdiagramms für die Signalleitung A[0], wobei eine Einfügungsgrenze auf 1 gesetzt ist. Ferner ist in den Verhaltensbeschreibungen die Summe aller Verzögerungen, die durch benutzerdefinierte Verzögerungsfunktionen eingeführt werden, auf einen Zyklus gesetzt. Beide Parameter sind kein Erfordernis, sondern dienen nur dem Zweck einer einfacheren und umfassenderen Erläuterung der Wirkung eines Ausführungsbeispiels der Vorrichtung 100. Bei einer konkreten Implementierung jedoch kann sich die Verzogerung wesentlich unterscheiden, variierend von weniger als einem Zyklus bis zu wesentlich mehr als einem Zyklus, obwohl aufgrund der in dem Zusammenhang der 3 und 7 beschriebenen Rückkopplung eine Verzogerung von weniger als einem Zyklus weniger wahrscheinlich ist. Ferner basieren, wie aus der in beiden 11 und 12 gezeigten Zeitskala zu sehen ist, die in beiden Figuren gegebenen Beispiele auf einer 400-MHz-Busstruktur.
  • 11 Zeigt einen Vergleich des Taktsignals CK (Signal 400, zusammen mit dem inversen Taktsignal), eine Sequenz von Befehlen 410, die über den Befehlsbus CMD[7:0] bereitgestellt werden, gemeinsam mit einem Signal 420 über die Signalleitung A[0]. Sowohl die Befehlssequenz 410 als auch das Signal 420 bilden die Eingangssignale 490 des Ausführungsbeispiels aus. 11 zeigt ferner den Ausgang des abgeglichenen Taktsignals CK_EQ, in 11 durch das Bezugszeichen 500 bezeichnet, sowie die abgeglichene Sequenz von Befehlen 510 auf dem Befehlsbus CMD_EQ[7:0] und den Ausgang oder den abgeglichenen Ausgang der Adressleitung A_EQ[0], durch das Bezugszeichen 520 bezeichnet. Die drei erwähnten Signale bilden die Ausgangssignale 590.
  • Das in 11 gezeigte Zeitdiagramm ist aus einer Simulation basierend auf der Implementierung, wie oben beschrieben, hergeleitet. Der Fokus bei diesem Diagramm ist, wie erläutert wurde, auf das Adresssignal A0, A[0] an dem Eingang und A_EQ[0] an dem Ausgang des Ausführungsbeispiels der Vorrichtung 100 gelegt. Es ist klar zu sehen, dass in dem Fall eines „A0-Aktiv”-Befehls, wie z. B. eines ACT- oder eines WR-Befehls, das Ausgangssignal A_EQ[0] auf den gleichen Wert gesetzt ist wie das Eingangssignal A[0]. Beim Vergleichen des Ausgangssignals mit dem Eingangssignal jedoch muss die Verzögerung von einem Zyklus berücksichtigt werden. Während die Eingangsbefehlsleitungen z. B. einen ACT-Befehl zu der Zeit T1 zeigen, wobei ein Signalpegel von A[0] niedrig ist, liefert das Ausgangssignal den gleichen Befehl mit dem gleichen Signalpegel auf der A0_EQ(0)-Signalleitung einen Zyklus später, zu der Zeit T2. Ein weiteres Beispiel ist der WR-Befehl mit einem hohen Pegel der A0-Signalpegelleitung zu der Zeit T7, dem der Ausgang der Zeit T8 entspricht. Während anderer „A0-Inaktiv”-Befehle jedoch ist ein A_EQ[0] frei für Zustandseinfügungen, was zu einer wesentlich höheren Menge an Hin- und Herschalten führt, wie das Signal 520 zeigt, was zu einem wesentlich besseren Gleichgewicht von Nullen und Einsen führt, da das Zielverhältnis für dieses Beispiel 1 ist (= 50%:50%).
  • 12 zeigt ein weiteres Zeitdiagramm einer Simulation basierend auf der oben beschriebenen Implementierung. Genauer gesagt zeigt 12 wieder das Taktsignal CK (Signal 400 zusammen mit dem Inversen des Taktsignals), zusammen mit einem Satz von Eingangssignalen 490 und einem Satz von Ausgangssignalen 590. Der Satz von Eingangssignalen 490 weist eine Sequenz von Eingangsbefehlen 410, ein CS#- oder Chipauswahlsignal 430, ein RAS#-Eingangssignal 440, ein CAS#-Eingangssignal 450 und ein WE#-Eingangssignal 460 auf. Der Satz von Ausgangssignalen 590 weist außer den abgeglichenen Taktsignalen 500 eine abgeglichene Version der Sequenz von Mengen 510 auf, sowie abgeglichene Versionen des CS#-Signals, des RAS#-Signals 540, des CAS#-Signals 550 und des WE#-Signals 560.
  • Der Fokus bei diesem Diagramm ist auf den Befehlsbus (CMD[7:0] an dem Eingang) und den abgeglichenen Befehlsbusausgang (CMS_EQ[7:0] an dem Ausgang) gelegt. Die aktiven Befehle ACT, WR und PRE zu den Zeiten T1, T7 und T19, die an dem Eingang des Schaltungsaufbaus eines Ausfuhrungsbeispiels der Vorrichtung 100 bereitgestellt werden, in der Sequenz des Befehlssignals 410 (CMD[7:0]) werden aufgrund der beschriebenen Verzögerung (vgl. Signal CMS_EQ[7:0], Signal 510) ohne Veränderungen einen Taktzyklus später zu den Zeiten T2, T8 und T20 durchgeführt und zu dem Bus heraus getrieben. Die einzelnen Signale, die diese Befehle codieren, sind CS# (430), RAS# (440), CAS# (450) und WE# (460) an dem Eingang und CS_EQ# (530), RAS_EQ# (540), CAS_EQ# (550) und WE_EQ# (560) an dem Ausgang. Unter Betrachtung der Ausgangssignale 530, 540, 550 und 560 ist ohne weiteres zu sehen, dass die Ausgangssignale viel mehr Hin- und Herschalten zeigen als die Eingangssignale, was zu einem besseren Gleichgewicht übertragener Nullen und Einsen auf dem Befehlsbus führt.
  • Wie bereits erläutert wurde, könnte es jedoch ratsam sein, unterschiedliche Parameter für die Einfugungsgrenzen und die anderen erwähnten Parameter zu verwenden, um die Menge an Hin- und Herschalten verglichen mit den in den 11 und 12 gezeigten Beispielen zu reduzieren, um die AC-Verlustleistung verglichen mit der dissipierten DC-Leistung des Eingangssignals zu reduzieren. In anderen Worten, es könnte ratsam sein, die Menge an Hin- und Herschalten zu reduzieren, um den AC-Leistungsverbrauch zu reduzieren, der sich in etwa maßstäblich mit der Anzahl von Signalflanken über die Zeit verändert.
  • Bei einigen Ausführungsbeispielen der vorliegenden Erfindung sind die Schwellenwerte derart angepasst, anpassbar, programmiert oder programmierbar, dass das Verhältnis der ersten Zeit, wahrend der die Signalleitung auf dem ersten Wert ist, und der zweiten Zeit, während der die Signalleitung auf dem zweiten Wert ist, ein Hystereseverhalten zeigt. Ferner ist bei einigen Ausführungsbeispielen der vorliegenden Erfindung die Länge des Zeitfensters derart angepasst, anpassbar, programmiert oder programmierbar, dass eine typische Frequenz eines Umschaltens veränderbar ist.
  • Ferner sind Ausführungsbeispiele der vorliegenden Erfindung nicht auf das Gebiet von DDR2-Speichersystemen eingeschränkt. Ferner können Ausführungsbeispiele der vorliegenden Erfindung immer auf einer beliebigen Signalleitung implementiert sein, bei der ein Gesamtauftreten eines Signalpegels reduziert werden muss. Wie oben erläutert wurde, kann ein Grund das Vorhandensein eines RC-Abschlusses oder eines anderen Kondensators oder einer Kapazität, die auf der Signalleitung vorliegt, sein. Ferner kommen die Vorteile der Ausführungsbeispiele der vorliegenden Erfindung besonders zum Tragen, wenn die Signalleitung ausreichend Zeit bietet, um ein Hin- und Herschalten der Signalpegel oder Umschalten zwischen unterschiedlichen Signalpegeln zu erlauben. Unterschiedliche Szenarien sind jedoch möglich, bei denen Ausführungsbeispiele der vorliegenden Erfindung ebenso mit Vorteil implementiert werden können.
  • Abhängig von bestimmten Implementierungsanforderungen der Ausführungsbeispiele der erfindungsgemäßen Verfahren können Ausführungsbeispiele der erfindungsgemäßen Verfahren in Hardware oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums durchgeführt werden, insbesondere einer Diskette, einer CD oder einer DVD, auf der ein elektronisch lesbares Steuersignal gespeichert ist, das mit einem programmierbaren Computersystem derart zusammenarbeitet, dass ein Ausführungsbeispiel der erfindungsgemäßen Verfahren durchgeführt wird. Allgemein ist ein Ausführungsbeispiel der vorliegenden Erfindung deshalb ein Computerprogrammprodukt mit einem Programmcode, der auf einem maschinenlesbaren Träger gespeichert ist, wobei der Programmcode zum Durchführen eines Ausführungsbeispiels der erfindungsgemäßen Verfahren wirksam ist, wenn das Computerprogramm auf dem Computer, einem Prozessor oder einer anderen integrierten Schaltung läuft. In anderen Worten, Ausführungsbeispiele der erfindungsgemäßen Verfahren sind deshalb ein Computerprogramm mit einem Programmcode zum Durchführen zumindest eines der erfindungsgemäßen Verfahren, wenn das Computerprogramm auf einem Computer, Prozessor oder einer anderen integrierten Schaltung läuft.

Claims (21)

  1. Vorrichtung (100) zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung (110), die folgende Merkmale aufweist: eine Steuerungsschaltung (140), die einen Ausgang für ein Signal aufweist, das anzeigt, ob die Signalleitung in einem inaktiven Zustand ist oder sein wird; und eine Umschaltschaltung (130), die mit der Steuerungsschaltung gekoppelt ist und einen Ausgang aufweist, der mit der Signalleitung (110) gekoppelt ist, wobei der Ausgang zwischen unterschiedlichen Signalpegeln umgeschaltet wird, wenn das Signal anzeigt, dass die Signalleitung in einem inaktiven Zustand ist oder sein wird.
  2. Vorrichtung gemäß Anspruch 1, bei der das Umschalten zwischen den unterschiedlichen Signalpegeln derart ist, dass eine erste Zeit, während der die Signalleitung (110) auf einem ersten Signalpegel ist, an ein Verhältnis der ersten Zeit und einer zweiten Zeit angepasst ist, während der die Signalleitung auf einem zweiten Signalpegel ist.
  3. Vorrichtung gemäß Anspruch 2, die ferner einen Zähler aufweist, der die Zeit bestimmt, während der die Signalleitung (110) auf dem jeweiligen Signalpegel ist.
  4. Vorrichtung gemäß Anspruch 2 oder 3, bei der der Signalpegel, in den die Signalleitung durch die Umschaltschaltung (130) geschaltet wird, basierend auf einer Differenz der ersten Zeit und der zweiten Zeit bestimmt ist.
  5. Vorrichtung gemäß einem der Ansprüche 2 bis 4, bei der die Zeit, während der die Signalleitung (110) auf einem jeweiligen Signalpegel ist, basierend auf den Signalpegeln der Signalleitung (110) während eines Zeitfensters mit einer festen, anpassbaren oder programmierbaren Länge bestimmt ist.
  6. Vorrichtung gemäß Anspruch 4, bei der der Signalpegel der Signalleitung (110) nur umgeschaltet wird, wenn die Differenz der Zeit einen festen, anpassbaren oder programmierbaren Schwellenwert überschreitet.
  7. Vorrichtung gemäß einem der Ansprüche 3 bis 6, die ferner einen Zähler für jede weitere Signalleitung einer Mehrzahl weiterer Signalleitungen aufweist, der eine Zeit bestimmt, während der jede weitere Signalleitung auf einem jeweiligen Signalpegel ist, und bei der der Signalpegel, in den die Signalleitung durch die Umschaltschaltung (130) geschaltet wird, basierend auf einer maximalen Differenz einer jeweiligen ersten Zeit, während der jede weitere Signalleitung und die Signalleitung auf einem ersten Signalpegel ist, verglichen mit einer jeweiligen zweiten Zeit, während der jede der weiteren Signalleitungen und die Signalleitung auf einem zweiten Signalpegel ist, bestimmt ist.
  8. Vorrichtung gemäß einem der Ansprüche 1 bis 7, bei der das Signal basierend auf Signalleitungszuständen von zumindest einer anderen Signalleitung anzeigt, ob die Signalleitung (110) in einem inaktiven Zustand ist oder sein wird.
  9. Vorrichtung gemäß einem der Ansprüche 1 bis 8, bei der die Signalleitung (110) eine Leitung eines Datenbusses oder eines Befehls-/Adressbusses eines Speichersystems ist.
  10. Vorrichtung gemäß Anspruch 9, bei der das Signal einen inaktiven Zustand anzeigt, wenn basierend auf den Signalzuständen von zumindest einer der Befehlsleitungen und der Adressleitungen des Befehls-/Adressbusses ein Eine-Bank-Vorladen-Zustand, ein Vorladen-Aller-Bänke-Zustand, ein Keine-Operation-Zustand oder ein Vorrichtung-Deaktivieren-Zustand erkannt wird.
  11. Vorrichtung gemäß einem der Ansprüche 1 bis 10, die ferner eine Mehrzahl von Signalleitungen, einen Zähler, der eine Zeit bestimmt, während der jede Signalleitung der Mehrzahl von Signalleitungen auf einem jeweiligen Signalpegel ist, und einen Auswähler, der eine Signalleitung bestimmt, deren Signalpegel umgeschaltet werden soll, basierend auf der Zeit, während der jede Signalleitung auf einem jeweiligen Signalpegel ist, aufweist.
  12. Vorrichtung gemäß Anspruch 11, bei der der Auswähler die Signalleitung basierend auf einer maximalen Differenz einer jeweiligen ersten Zeit, während der jede Signalleitung auf einem ersten Signalpegel ist, verglichen mit einer jeweiligen zweiten Zeit, während der jede der Signalleitungen auf einem zweiten Signalpegel ist, bestimmt.
  13. Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung (110), das folgende Schritte aufweist: Bestimmen, ob die Signalleitung in einem inaktiven Zustand ist oder sein wird; und Umschalten des Signals auf der Signalleitung zwischen unterschiedlichen Signalpegeln, wenn die Signalleitung in einem inaktiven Zustand ist.
  14. Verfahren gemäß Anspruch 13, bei dem das Umschalten zwischen den unterschiedlichen Signalpegeln derart ist, dass eine erste Zeit, während der die Signalleitung (110) auf einem ersten Signalpegel ist, an eine zweite Zeit, während der die Signalleitung auf einem zweiten Signalpegel ist, angepasst wird.
  15. Verfahren gemäß Anspruch 14, bei dem der Signalpegel, in den die Signalleitung (110) umgeschaltet wird, basierend auf einer Differenz der ersten Zeit und der zweiten Zeit bestimmt wird.
  16. Verfahren gemäß Anspruch 14 oder 15, bei dem die Zeit, während der die Signalleitung auf einem jeweiligen Signalpegel ist, basierend auf den Signalpegeln der Signalleitung während eines Zeitfensters mit einer festen, anpassbaren oder programmierbaren Länge bestimmt wird.
  17. Verfahren gemäß einem der Ansprüche 14 bis 16, bei dem der Signalpegel der Signalleitung (110) nur umgeschaltet wird, wenn die Differenz der Zeiten einen festen, anpassbaren oder programmierbaren Schwellenwert überschreitet.
  18. Verfahren gemäß einem der Ansprüche 13 bis 17, das ferner folgende Schritte aufweist: Bestimmen einer Zeit, während der jede Signalleitung einer Mehrzahl von Signalleitungen auf einem jeweiligen Signalpegel ist; und Auswählen einer Signalleitung, deren Signalpegel umgeschaltet werden soll, basierend auf der Zeit, während der jede Signalleitung auf einem jeweiligen Signalpegel ist.
  19. Verfahren gemäß Anspruch 18, bei dem das Auswählen ein Bestimmen der Signalleitung (110) basierend auf einer maximalen Differenz einer jeweiligen ersten Zeit, während der jede Signalleitung auf einem ersten Signalpegel ist, verglichen mit einer jeweiligen zweiten Zeit, während der jede der Signalleitungen auf einem zweiten Signalpegel ist, aufweist.
  20. Computerprogramm zum Durchführen, wenn dasselbe auf einem Computer läuft, eines Verfahrens zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung (110), das folgende Schritte aufweist: Bestimmen, ob die Signalleitung (110) in einem inaktiven Zustand ist oder sein wird; und Umschalten des Signals auf der Signalleitung (110) zwischen unterschiedlichen Signalpegeln, wenn die Signalleitung in einem inaktiven Zustand ist.
  21. Speichersystem, das folgende Merkmale aufweist: eine Speichersteuerung; eine Speichervorrichtung; und eine Signalleitung (110), die die Speichersteuerung und die Speichervorrichtung verbindet, wobei die Speichersteuerung folgende Merkmale aufweist: eine Steuerungsschaltung (140), die einen Ausgang für ein Signal aufweist, das anzeigt, ob die Signalleitung in einem inaktiven Zustand ist oder sein wird; und eine Umschaltschaltung (130), die mit der Steuerungsschaltung gekoppelt ist und einen Ausgang aufweist, der mit der Signalleitung (110) gekoppelt ist, wobei der Ausgang zwischen unterschiedlichen Signalpegeln geschaltet wird, wenn das Signal anzeigt, dass die Signalleitung in einem inaktiven Zustand ist.
DE102007057518A 2006-12-22 2007-11-29 Vorrichtung und Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung Expired - Fee Related DE102007057518B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/644,998 2006-12-22
US11/644,998 US7936201B2 (en) 2006-12-22 2006-12-22 Apparatus and method for providing a signal for transmission via a signal line

Publications (2)

Publication Number Publication Date
DE102007057518A1 DE102007057518A1 (de) 2008-06-26
DE102007057518B4 true DE102007057518B4 (de) 2012-08-23

Family

ID=39432007

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007057518A Expired - Fee Related DE102007057518B4 (de) 2006-12-22 2007-11-29 Vorrichtung und Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung

Country Status (2)

Country Link
US (1) US7936201B2 (de)
DE (1) DE102007057518B4 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7746710B2 (en) 2008-01-10 2010-06-29 Micron Technology, Inc. Data bus power-reduced semiconductor storage apparatus
CN113704147B (zh) * 2021-10-28 2022-02-18 苏州浪潮智能科技有限公司 多控制器通信方法、装置、计算机设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10251459B4 (de) * 2002-08-22 2005-06-09 Infineon Technologies Ag Verfahren zum Regeln des Eingangssignals eines Kontaktlos-Transponders

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2615088B2 (ja) * 1987-11-06 1997-05-28 株式会社日立製作所 半導体記憶装置
US5831467A (en) * 1991-11-05 1998-11-03 Monolithic System Technology, Inc. Termination circuit with power-down mode for use in circuit module architecture
JP3476231B2 (ja) * 1993-01-29 2003-12-10 三菱電機エンジニアリング株式会社 同期型半導体記憶装置および半導体記憶装置
JPH0729373A (ja) * 1993-07-08 1995-01-31 Mitsubishi Electric Corp 半導体記憶装置
US6172935B1 (en) * 1997-04-25 2001-01-09 Micron Technology, Inc. Synchronous dynamic random access memory device
JP3161384B2 (ja) * 1997-09-16 2001-04-25 日本電気株式会社 半導体記憶装置とそのアクセス方法
JP3178423B2 (ja) * 1998-07-03 2001-06-18 日本電気株式会社 バーチャルチャネルsdram
JP2001084768A (ja) * 1999-09-10 2001-03-30 Mitsubishi Electric Corp 半導体装置
JP4822604B2 (ja) * 2001-04-10 2011-11-24 富士通セミコンダクター株式会社 半導体集積回路装置
JP2004127147A (ja) * 2002-10-07 2004-04-22 Hitachi Ltd デスキュー回路およびそれを用いたディスクアレイ制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10251459B4 (de) * 2002-08-22 2005-06-09 Infineon Technologies Ag Verfahren zum Regeln des Eingangssignals eines Kontaktlos-Transponders

Also Published As

Publication number Publication date
US20080155150A1 (en) 2008-06-26
US7936201B2 (en) 2011-05-03
DE102007057518A1 (de) 2008-06-26

Similar Documents

Publication Publication Date Title
DE102015117019B4 (de) Serielle Peripherieschnittstellen-Kettenkommunikation mit rahmengebundener Antwort
DE19882418B4 (de) System einer quellensynchronen Schnittstelle zwischen Master- und Slave-Einrichtungen und zugehöriges Verfahren
DE69826863T2 (de) Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet
DE102005051478B4 (de) Flashdatenspeichervorrichtung
DE60002567T2 (de) Dynamische wellenpipelineschnittstellenanordnung und verfahren dafür
DE102017118657A1 (de) Anzeigefeld, Schieberegisterschaltung und Ansteuerverfahren dafür
DE102019108205B4 (de) Unentspannte 433-kodierung zur verringerung der kopplung und des leistungsrauschens auf pam-4-datenbussen
DE102005009086A1 (de) Verfahren und System für einen Schalter mit hoher Frequenz für eine Leistungsdrossel in einer integrierten Vorrichtung
DE102004021694A1 (de) Verfahren und Schaltungsanordnung zum Steuern eines Schreibzugriffs auf einen Halbleiterspeicher
DE102013224101A1 (de) Verbinden mehrerer Slave-Vorrichtungen mit einem einzigen Master
DE112006001132B4 (de) Regulieren der Taktung zwischen einem Abtastsignal und einem Datensignal
DE102007060805A1 (de) Modulare Speichersteuerungstaktungsarchitektur
DE102005011386A1 (de) Schaltungseinheit zur Datenbitinvertierung
DE102007060782A1 (de) Kompensierung für Data Strobe-Zeitgebung
DE19831350B4 (de) Halbleiterschaltungsvorrichtung, die synchron mit einem Taktsignal arbeitet, und Verfahren der Verwendung einer Halbleiterschaltungsvorrichtung, die synchron mit einem Taktsignal arbeitet
DE102014103347A1 (de) Bedingte Verkettungsglieder für Direct-Memory-Access-Controller
DE60122025T2 (de) Halbleiterspeicheranordnung und Datenverarbeitungseinheit
DE102007057518B4 (de) Vorrichtung und Verfahren zum Bereitstellen eines Signals zur Übertragung über eine Signalleitung
DE19741915A1 (de) Zwischenspeicheroptimierung in Hardware-Logikemulations-Systemen
DE102004011452A1 (de) System und Verfahren zum Auswerten der Geschwindigkeit einer Schaltung
DE102008006671A1 (de) Asynchrone Datenübertragung
DE102006002735B3 (de) Vorrichtung zur Korrektur des Tastverhältnisses in einem Taktsignal
DE10227618B4 (de) Logikschaltung
DE10056152B4 (de) Verfahren zur Durchführung von Busarbitration zwischen Steuerchips eines Chipsatzes mit preemptiver Fähigkeit
EP1189142A2 (de) Verfahren und Vorrichtung zum Datenaustausch zwischen Speicher- und Logikbausteinen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20121124

R081 Change of applicant/patentee

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

R082 Change of representative
R081 Change of applicant/patentee

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee