DE19943176B4 - Speichersteuereinheit zum Steuern eines SDRAM in einem Netzwerkschalter - Google Patents

Speichersteuereinheit zum Steuern eines SDRAM in einem Netzwerkschalter Download PDF

Info

Publication number
DE19943176B4
DE19943176B4 DE19943176A DE19943176A DE19943176B4 DE 19943176 B4 DE19943176 B4 DE 19943176B4 DE 19943176 A DE19943176 A DE 19943176A DE 19943176 A DE19943176 A DE 19943176A DE 19943176 B4 DE19943176 B4 DE 19943176B4
Authority
DE
Germany
Prior art keywords
sdram
address
data
clock
memory
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
DE19943176A
Other languages
English (en)
Other versions
DE19943176A1 (de
Inventor
Sheung-Fan Wen
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.)
National Semiconductor Corp
Original Assignee
National Semiconductor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Semiconductor Corp filed Critical National Semiconductor Corp
Publication of DE19943176A1 publication Critical patent/DE19943176A1/de
Application granted granted Critical
Publication of DE19943176B4 publication Critical patent/DE19943176B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

Speichersteuereinheit (424) zum Steuern eines SDRAM (410), das eine Mehrzahl von Speicherbänken umfaßt, wobei jede der Speicherbänke eine Mehrzahl von Seiten umfaßt, zum Einsatz in einem das SDRAM (410) enthaltenden Netzwerkschalter (110), der für den Fluß von Paketdaten zwischen Eingang- und Ausgangsports in einer Netzwerkumgebung vorgesehen ist, wobei der Netzwerkschalter einen Puffermanager (426) enthält, der den Datenfluß in das SDRAM (410) verwaltet, wobei der Puffermanager (426) auf der Basis eines ersten Takts arbeitet, der asynchron zu einem zweiten Takt ist, auf dessen Basis das SDRAM arbeitet und der schneller als der erste Takt ist, und wobei die Speichersteuereinheit folgendes umfaßt: einen Adreßwandler (520), der mit dem Puffermanager (426) betrieblich gekoppelt ist, so daß er von dem Puffermanager empfangene Adreßinformation in einen SDRAM Adreßraum übersetzt, wobei die Adreßübersetzung so durchgeführt wird, dass Daten eines Datenpaketes, dessen Umfang den Umfang einer Seite des SDRAM (410) übersteigt, in Seiten gespeichert...

Description

  • Die Erfindung betrifft im allgemeinen den Zugriff auf ein SDRAM in einem Netzwerkschalter und insbesondere die Entkopplung von Adreß- und Datenwegen, die zu dem SDRAM führen.
  • Synchrone dynamische Direktzugriffsspeicher (SDRAM; Synchronous Dynamic Random Access Memory) sind eine Speicherart, die in einer Vielzahl von Anwendungen verwendet wird. Ein SDRAM kann in mehrere Bänke aufgeteilt werden. Jede Bank wird weiter in mehrere Seiten aufgeteilt. In einem üblichen SDRAM mit einem 48 Bit breiten Datenbus und einer 8 Bit breiten Spaltenadresse umfaßt eine Seite 1,5 KByte Speicher. Um auf eine Seite zuzugreifen, muß das SDRAM Vorlade- und Aktivierungsoperationen ausführen. Die Vorlade- und Aktivierungsoperationen bewirken eine gewisse Verzögerung beim Zugreifen auf eine Speicherstelle, nachfolgende Zugriffe auf dieselbe Seite erfordern jedoch keine weiteren Vorlade- und Aktivierungsoperationen mehr. Zum Zugreifen auf eine neue Seite muß das SDRAM jedoch die Vorlade- und Aktivierungsoperationen für die neue Seite ausführen. Diese Vorlade- und Aktivierungsoperationen verursachen auch eine gewisse Verzögerung beim Zugreifen auf die gewünschte Speicherstelle. Um den Zugriff auf in dem SDRAM gespeicherte Daten zu beschleunigen, werden Daten, auf die zusammenhängend zugegriffen wird, auf derselben Seite gespeichert sein. Dies dient dazu, die Anzahl der Vorlade- und Aktivierungsverzögerungen zu minimieren.
  • Da jede Bank mehrere Seiten umfaßt, kann der Zugriff auf eine Speicherstelle in einer neuen Seite in derselben oder in einer anderen Bank erfolgen. Wenn der Zugriff auf eine Speicherstelle die Grenze einer Bank und somit auch die Grenze einer Seite überschreitet, kann die Vorladeoperation beginnen, bevor der vorhergehende Zugriff beendet ist. Wenn jedoch der Zugriff auf eine Speicherstelle über eine Seitengrenze hinweg, jedoch nicht über eine Bankgrenze hinweg erfolgt, kann die Vorladeoperation nicht beginnen, bis nicht der vorhergehende Zugriff beendet ist.
  • Bei einigen Anwendungen arbeitet die Speicherverwaltung (oder der Steuerprozeß), die Daten in dem SDRAM speichert, auf der Basis eines Takts (d. h. in einem ersten Taktbereich), und das SDRAM arbeitet auf der Basis eines anderen Takts (d. h. in einem zweiten Taktbereich). Diese Takte können asynchron sein und mit verschiedenen Frequenzen arbeiten. Wenn die Speicherverwaltung versucht, auf das SDRAM zuzugreifen, müssen die Adreß- und die Dateninformationen die Taktbereichsgrenze überqueren. Mit anderen Worten, sowohl die Adreß- als auch die Dateninformation muß vom ersten Takt zum zweiten Takt synchronisiert werden. Die Synchronisierung der Adreß- und Dateninformation über die Taktbereichsgrenze hinweg verzögert den Speicherzugriff.
  • Eine Anwendung, die ein SDRAM in einem anderen Taktbereich einsetzt, verwendet Netzwerkschalter, die Datenpakete vorübergehend speichern. Netzwerkschalter werden z. B. häufig in Verbindung mit Ethernet-Netzen eingesetzt, um mehrere Unternetze zu verbinden. Ein Schalter empfängt Paketdaten von einem Unternetz und gibt diese Paketdaten an ein anderes Unternetz weiter. Bei Empfang eines Pakets kann der Netzwerkschalter die Paketdaten in mehrere Unterpakete oder Zellen aufteilen. Jede der Zellen umfaßt zusätzliche Kopfdaten. Wie im Stand der Technik bekannt ist, haben Ethernet-Paketdaten eine maximale Größe von ungefähr 1,5 kByte. Mit den zusätzlichen Kopfdaten, die den Zellen zugeordnet werden, hat ein Datenpaket eine maximale Größe unter 2 kByte.
  • Nach dem Aufteilen der Paketdaten in Zellen kann der Netzwerkschalter einen Speicherpuffer in dem SDRAM vorübergehend zuweisen, um ein Paket vor der Rückübertragung zu speichern. Die Adreß- und Paketdaten werden über die Taktbereichsgrenze zu dem SDRAM hinweg übersetzt. Dann werden die Paketdaten in dem Speicherpuffer gespeichert. Für die Rückübertragung greift der Schalter wieder auf das SDRAM zu, um die Paketdaten wiederzugewinnen. Sowohl die Speicherung als auch die Wiedergewinnung der Daten aus dem SDRAM bringt eine Zugriffsverzögerung mit sich.
  • Weiterhin ist bei einem 48 Bit breiten SDRAM mit einer 8 Bit breiten Spaltenadresse die Seitengröße gleich 1,5 kByte. Ein Ethernet-Paket von 2 kByte das Kopfdaten der Zellen enthält, geht daher immer über eine Seitengrenze. Dadurch ergeben sich weitere Zugriffsverzögerungen. In stark frequentierten Hochgeschwindigkeitsnetzen können solche Verzögerungen eine nachteilige Auswirkung auf die Netzleistung haben.
  • US 5,784,582 offenbart eine Speichersteuereinheit, die Befehle, Adreßinformationen und Daten von einem Puffermanager empfängt und über eine SDRAM-Kontrolllogik an ein SDRAM angeschlossen ist. Hier werden die Vorteile der Umschaltung zwischen zwei Speicherbänken bereit genutzt. Ein Prozessortaktgenerator erzeugt aus einem ersten Takt einen zweiten Takt, der dem Puffermanager zugeführt wird. Die beiden Taktsignale sind jedoch nicht asynchron zueinander, da sie durch den Prozessortaktgenerator verbunden sind.
  • US 5,784,705 offenbart ein Verfahren und eine Struktur zum Durchführen von parallelisierten Datenburst-Zugriffen in einem DRAM. Ein erstes Taktsignal CLK steuert die meisten Elemente des Speichersystems, wohingegen das DRAM selbst von Adreß- und Datensignalen getaktet wird, deren Flanken von dem ersten Takt CLK ausgelöst werden. Ferner weist die Speichervorrichtung eine Puffermanagerschnittstelle auf, die ein Adreß-Strobe-Signal und ein Signal empfängt, das verwendet wird, um die Sequenz der Datenwerte zu steuern. Die Puffermanagerschnittstelle empfängt jedoch keine Befehle oder Daten und keine Daten, die Adressen darstellen. Eine Ein-/Ausgabeschnittstelle stellt die Adreßinformationen lediglich einem Schreibpuffer und Adreß-Latches bereit, aber die Puffermanagerschnittstelle empfängt und synchronisiert keine Adreßinformationen.
  • Die WO 98/36538 offenbart einen Multiport-Switch mit einer Management-Informationsdatenbank. Für die Übertragungen an den Switch werden Berichte erstellt, die gepuffert werden. Der Puffer wird mit Hilfe eines Zeigerspeichers gemanagt, so daß der Puffer als FIFO-Zwischenspeicher dient. Ferner umfaßt der Switch ein SDRAM, das zur Speicherung von empfangenen Rahmendaten, Speicherstrukturen und Management-Informationsdatenbank-Zählerinformationen vorgesehen ist und mit einer Taktfrequenz arbeitet, die sich von der Frequenz unterscheidet, mit welcher an den Switch angeschlossene Busse betrieben werden. Das die Taktfrequenzen asynchron zueinander sein könnten, und nie dann eine Synchronisation erfolgt, ist jedoch nicht beschrieben.
  • Es wird daher ein SDRAM benötigt, das als ein Puffer zum Speichern von Ethernet-Paketdaten konfiguriert werden kann. Das SDRAM soll in einem anderen Taktbereich arbeiten können als ein Steuerprozeß. Gleichzeitig sollte das SDRAM so arbeiten, daß es Zugriffsverzögerungen minimiert. Diese Aufgabe wird durch eine Speichersteuereinheit nach Anspruch 1 gelöst. Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen angegeben.
  • Die Erfindung ist im folgenden anhand bevorzugter Ausführungsformen mit Bezug auf die Zeichnung näher erläutert. In den Figuren zeigt:
  • 1 ein Blockdiagramm eines Netzes mit einem Netzwerkschalter;
  • 2 ein Blockdiagramm eines Pakets aus Netzwerkdaten;
  • 3 ein Ablaufdiagramm des Betriebs des Netzwerkschalters der 1, der Paketdaten empfängt und sendet;
  • 4 ein Blockdiagramm einer bevorzugten Ausführungsform des Schalters der 1 mit einem SDRAM, einer Speichersteuereinheit und einem Puffermanager;
  • 5 ein Blockdiagramm des Schalters der 4 mit weiteren Einzelheiten einer bevorzugten Ausführungsform der Speichersteuereinheit;
  • 6 ein Flußdiagramm einer bevorzugten Schreiboperation unter Verwendung der Speichersteuereinheit der 5;
  • 7 ein Flußdiagramm einer bevorzugten Leseoperation unter Verwendung der Speichersteuereinheit der 5;
  • 8 eine Tabelle einer bevorzugten Adreßübersetzung aus einem flache Speicheradreßraum in einen SDRAM-Adreßraum;
  • 9 ein Blockdiagramm der Adreßübersetzung der 8;
  • 10 ein Blockdiagramm einer bevorzugten Ausführungsform einer SDRAM-Speicheradreßauswahlschaltung;
  • 11 ein Flußdiagramm eines bevorzugten Betriebsablaufs der Speichersteuereinheit der 4 zur Übersetzung einer Adresse aus einem flachen Speicheradreßraum in einen SDRAM-Adreßraum;
  • 12 ein Flußdiagramm eines bevorzugten Betriebsablaufs einer Speichersteuereinheit, die Daten in ein SDRAM schreibt; und
  • 13 ein Flußdiagramm eines bevorzugten Betriebsablaufs der Speichersteuereinheit, die Daten aus einem SDRAM liest.
  • Mit Bezug auf 1 ist im folgenden ein Ethernet-Netz 100 gemäß der Erfindung beschrieben. Das Ethernet-Netz umfaßt einen Schalter 110 mit mehreren Kanälen oder Ports 120125. Der Schalter umfaßt auch eine Steuereinheit (Controller) 112 und einen Speicher 114. Der Controller 112 leitet den Datenstrom zwischen den Kanälen 120125. Der Controller 112 verwendet den Speicher 114 als temporären Speicher, während Daten zwischen den Kanälen 120125 übertragen werden.
  • Jeder der Kanäle 120125 ist mit einem von mehreren Unternetzen 130135 verbunden. Die Unternetze können mehrere Netzwerkeinrichtungen oder nur eine einzige Netzwerkeinrichtung, wie einen Rechner, umfassen. Das Ethernet-Netz erlaubt es jedem der Unternetze 130135 mit jedem anderen Unternetz Daten auszutauschen.
  • Zum Beispiel kann das Unternetz 130 mit dem Unternetz 134 Daten austauschen, indem es ein Datenpaket 140a sendet. Das Datenpaket 140a wird über den Kanal 120 vom Schalter 110 empfangen. Der Controller 112 scant dann das Datenpaket 140a und speichert es im Speicher 114. Danach liest der Controller 112 das Datenpaket 140a aus dem Speicher 114 und leitet es an den richtigen Kanal weiter. Wie gezeigt, hat der Schalter 110 ermittelt, daß das Datenpaket 140a zu dem Netz 134 als Datenpaket 140b weitergeleitet werden sollte. Der Controller 112 trifft diese Leitentscheidung (Routing) auf der Basis von Information, die in dem Datenpaket 140a enthalten ist.
  • Mit Bezug auf 2 ist im folgenden ein Blockdiagramm eines Datenpakets 140 beschrieben. Das Datenpaket 140 umfaßt einen Blockanfang-Begrenzer (SOF; Start of Frame) 210. Der SOF 210 zeigt den Anfang eines Datenpakets an. Das Datenpaket 140 umfaßt auch ein Kopf (Header) 220, der Informationen, wie eine Ursprungsadresse, eine Zieladresse und die Paketlänge 222 umfaßt. Das Datenpaket 240 enthält auch ein Datenfeld 230. Dieses Feld wird zum Senden von Informationen zwischen Netzwerkeinrichtungen verwendet. Schließlich umfaßt das Datenpaket 140 ein Fehlerprüffeld 240. Dieses Feld wird dazu verwendet, zu ermitteln, ob das Paket während der Übertragung über das Netz beschädigt wurde.
  • Mit Bezug auf 3 ist im folgenden ein Flußdiagramm des Betriebs des Schalters 110 der 1 beschrieben. Der Schalter 110 beginnt beim Schritt 310, wo er ein Datenpaket über einen seiner Kanäle empfängt. Im Schritt 312 liest der Schalter 110 das Kopffeld, um die Länge und das Ziel der Pakete zu ermitteln. Im Schritt 314 speichert der Schalter 110 dann das Paket vorübergehend in einem Speicherpuffer. Im Schritt 316 verwendet der Schalter 110 die Zielinformation, um die richtige Weiterleitung des Pakets zu ermitteln. Insbesondere ermittelt der Schalter 110, welche Kanäle eine Netzwerkeinrichtung aufweisen, deren Netzwerkidentifikation (ID) mit der Zieladresse des Pakets übereinstimmt. Der Netzwerkschalter ermittelt auch, ob das zugehörige Netzwerk ausreichend Bandbreite aufweist, um das Paket zu senden. Wenn ja, liest der Schalter 110 das Paket aus dem Speicherpuffer.
  • Im Schritt 318 sendet der Schalter das Paket über den Kanal, der eine Netzwerkeinrichtung aufweist, deren Netzwerkidentifikation mit der der Zieladresse des Pakets übereinstimmt. Mehrfach gesendete und rundgesendete Pakete (Multicast- und Broadcast-Pakete) werden über mehrere Kanäle gesendet.
  • Mit Bezug auf 4 ist im folgenden ein Blockdiagramm einer bevorzugten Ausführungsform des Schalters 110 der 1 beschrieben. Der Schalter 110 umfaßt ein SDRAM 410, eine Speichersteuereinheit 424 und einen Puffermanager 426. Der Puffermanager 426 verwaltet den Strom der Datenpakete in das SDRAM 410. Insbesondere weist der Puffermanager 426 den eingehenden Paketen Puffer zu und überwacht die Zuweisung der Puffer, während Daten in das SDRAM 410 geschrieben und aus diesem gelesen werden.
  • Das SDRAM 410 besteht aus drei SDRAM-Chips 412416, von denen jeder einen 16-Bit-Datenbus (nicht gezeigt) aufweist. Jeder SDRAM-Chip umfaßt zwei Bänke mit jeweils 211 Zeilen und 28 Spalten. Zusammen sehen die SDRAM-Chips 412416 6 MByte Speicher vor. Auf die Speicherstellen wird über einen 20-Bit-Adreßbus zugegriffen.
  • Paketdaten und Adreßinformation werden von dem Puffermanager 426 zu der Speichersteuereinheit 424 weitergegeben. Die Speichersteuereinheit 424 verwendet die Adreßinformation zum Speichern der Paketdaten in dem SDRAM 410.
  • Die Speichersteuereinheit 424 stellt auch eine Verbindung zu einer Registerzugriffseinheit 420, einem Taktmultiplexer 422, einer Abtaststeuereinrichtung (Scancontroller) 430 und einem Rücksetzblock 428 her. Die Registerzugriffseinheit 420 wird zum Speichern von Fehlerinformationen verwendet, die an den Schalter 110 übertragen worden sein kann. Der Taktmultiplexer 422 sieht ein Taktsignal (clk_sdram_out_c) für das SDRAM 410 und ein anderes Taktsignal (clk50cgm_c) für die anderen getakteten Schaltkreise, einschließlich des Puffermanagers 426, vor. Diese beiden Taktsignale sind zueinander asynchron und können mit verschiedenen Frequenzen arbeiten. Die Speichersteuereinheit 424 dient also auch dazu, die Übertragung von Paketdaten und Adreßinformation zwischen diesen beiden Taktbereichen zu koordinieren.
  • Der Rücksetzblock 428 wird dazu verwendet, die Initialisierung des SDRAM 410 und der Speichersteuereinheit 424 zu koordinieren. Der Scancontroller 430 wird dazu verwendet, die Speichersteuereinheit 424 bei der Herstellung der integrierten Schaltung zu testen.
  • Die folgende Tabelle gibt eine kurze Beschreibung der Taktsignale clk50cgm_c und clk_sdram_out_c: Speichersteuereinheit – Taktsignale
    Signalname Typ Signal Polarität Signalbeschreibung
    clk50cgm_c I Impuls Positive Flanke 50 MHz Takt
    clk_sdram_out_c I Impuls Positive Flanke 50 MHz bis 100 MHz Takt
  • Die Typ-Spalte gibt an, daß die Signale in die Speichersteuereinheit 424 eingegeben (I) werden. Die Signal-Spalte gibt an, daß die Signale digitale Impulssignale (Impuls) sind. Die Polarität-Spalte gibt an, daß der Takt die Schaltkreiselemente bei einer positiven Flanke triggert. Die Signalbeschreibung gibt den annehmbaren Bereich der Taktsignalfrequenzen an.
  • Die folgende Tabelle gibt eine kurze Beschreibung der Signale zwischen der Registerzugriffseinheit 420, dem Rücksetzblock 428, dem Scancontroller 430 und der Speichersteuereinheit 424: Speichersteuereinheit – Schnittstellensignale
    Signalname I/F Typ Signalbeschreibung
    Reset_done RESET I CGM-Takt hat sich stabilisiert
    mcu_bypass (nicht gezeigt) RESET I Umgeht anfängliche Wartezeit von 200 μs auf das SDRAM beim Einschalten
    reg_init_done RESET I Register enthalten gültige Bits
    cas_lat[1:0] RAU I CAS-Latenz 00:4 01:1 10:2 (Voreinstellung) 11:3
    start_post (nicht gezeigt) RAU I SDRAM-Einschalt-Selbsttestoperation triggern
    mcu_done RESET O DRAM initialisiert und Selbsttest bestanden; MCU ist bereit für normalen Betrieb
    Dram_err RAU O DRAM hat Selbsttest nicht bestanden; jeder DRAM-Zugriff wird gesperrt
    rbus_dram_err4[15:0] RAU O [15:7] reserviert [6:6] post_done: aktiviert, wenn Post beendet ist. [5:4] DRAM-Prüfmuster. [3:0] DRAM-Adresse (hohe Bits).
    rbus_dram_err3[15:0] RAU O DRAM-Adresse (niedrige Bits)
    rbus_dram_err2[15:0] RAU O Fehlerdaten (hohe Bits)
    Reset_ios_enb (nicht gezeigt) RESET I E/A-Zellenausgang darf aktiviert werden
    scan_en SCAN I Enabled SCAN-Kettenschieberegister
    rbus_dram_err1[15:0] RAU O Fehlerdaten (mittlere Bits)
    rbus_dram_err0[15:0] RAU O Fehlerdaten (niedrige Bits)
  • Die I/F-Spalte gibt den Ursprung oder das Ziel des Signals an. Die Registerzugriffseinheit 420 ist mit RAU (register access unit) bezeichnet, der Rücksetzblock 428 ist mit RESET bezeichnet, und der Scancontroller 430 ist mit SCAN bezeichnet. Die Typ-Spalte gibt an, ob das Signal aus Sicht der Speichersteuereinheit 424 ein Eingangssignal (I; input) oder ein Ausgangssignal (O; output) ist. Die Spalte mit der Signalbeschreibung sieht eine kurze Beschreibung des Signals vor.
  • Eine kurze Beschreibung der Signale zwischen dem SDRAM 410 und der Speichersteuereinheit 424 ist in der folgenden Tabelle vorgesehen: Speichersteuereinheit – SDRAM-Signale
    Signalname I/F Typ Signalbeschreibung
    RAS SDRAM O Zeilenadreß-Strobe, abgetastet bei steigender Flanke von CLK, definiert SDRAM-Operation
    CAS SDRAM O Spaltenadreß-Strobe, abgetastet bei steigender Flanke von CLK, definiert SDRAM-Operation
    WE SDRAM O Schreib-Enable, abgetastet bei steigender Flanke von CLK, definiert SDRAM-Operation
    DQM SDRAM O DQM hoch setzt DQ-Puffer des SDRAM in hohen Z-Zustand; deaktiviert Lesen aus SDRAM-Operation und blockiert Schreiben in SDRAM-Operation. DQM niedrig aktiviert solche Lese- und Schreiboperationen
    A11 SDRAM O BS niedrig wählt Bank A; BS hoch wählt Bank B
    A10–A0 SDRAM O Adreßauswahlsignale in Bank A und Bank B
    DQ[47:0] SDRAM I/O Daten von SDRAM
  • Die I/F-Spalte gibt den Ursprung oder das Ziel des Signals ein. Das SDRAM 410 ist mit SDRAM bezeichnet. Die Typ-Spalte gibt an, ob das Signal aus Sicht der Speichersteuereinheit 424 ein Eingangssignal (I) oder ein Ausgangssignal (O) ist. Die Signalbeschreibungsschaltung sieht eine kurze Beschreibung des Signals vor.
  • Zusätzlich zu der obigen Tabelle wird das Signal clk_sdram_out_c durch die Speichersteuereinheit 424 geleitet. Die Speichersteuereinheit 424 liefert dieses Signal an das SDRAM 410 als SDRAM_CLOCK_OUT.
  • Während eines Bank-aktiv-Befehlszyklus definieren A0–A10 die Zeilenadressen (RA0–RA10), wenn mit der steigenden Flanke von SDRAM_CLK_OUT abgetastet wird. Während eines Lese- oder Schreib-Befehlszyklus definieren A0–A7 die Spaltenadressen (CA0–CA7), wenn mit der steigenden Flanke von SDRAM_CLK_OUT abgetastet wird. Ein hohes A10-Bit aktiviert (enabled) das automatische Vorladen der Bank, die von All ausgewählt wird. Ein niedriges A10-Bit deaktiviert (disabled) das automatische Vorladen. Während eines Vorlade-Befehlszyklus aktiviert ein hohes A10-Bit das Vorladen beider Bänke A und B. Das niedrige A10-Bit aktiviert das Vorladen der Bank, die durch das Bit A11 ausgewählt ist. Bei einer bevorzugten Ausführungsform wird das automatische Vorladen nicht verwendet, weil es variable Burstgrößen (Größen der Signalfolgen) nicht berücksichtigen kann.
  • In der folgenden Tabelle ist eine kurze Beschreibung der Signale zwischen dem Puffermanager 426 und der Speichersteuereinheit 424 vorgesehen: Speichersteuereinheit – Puffermanagersignale
    Signalname I/F Typ Signalbeschreibung
    cmd_valid BM I Ein gültiges Signal ist bei dram_wr, dram_rd vorhanden
    start_addr [19:0] BM I Die Adresse ist das erste Wort in einer Zelle
    burst_size [5:0] BM I Anzahl der Worte in der Zelle
    no_info_wd BM I Info-Wort vorhanden, wenn (~no_info_wd & bm_tag_req = 1) wahr ist
    dram_wr BM I Befehl ist ein Schreiben-auf-DRAM-Befehl
    dram_rd BM I Befehl ist ein Lesen-von-DRAM-Befehl
    bm_tag_req [3:0] BM I Eindeutige Marke (Tag) für diesen Schreib/Lese-Befehl
    cmd_ack BM O Lese/Schreib-Befehl und Tag werden quittiert; nur bis dahin sollten cmd_valid, start_addr, burst_size, dram_wr, dram_rd und BM_tag_req [3:0] deaktiviert sein; cmd_ack wird deaktiviert, wenn burst_wr oder burst_rd aktiviert werden (oder SM des BM abbricht)
    bm_tag_res [3:0] BM O Tag ist gleich BM_tag_req [3:0]; wird ausgegeben, wenn burst_wr oder burst_rd-Befehl aktiviert wird
    burst_wr BM O Wird am Anfang eines Zellen-Schreibbursts aktiviert und deaktiviert gleichzeitig cmd_ack, Daten können von BM bei nächsten Takt gesendet werden; wird beim Schreiben des Wortes in der Zelle in das MCU FIFO deaktiviert; dies ist ein Hüllsignal
    send_wr_data BM O Wortdaten sollten von BM bei nächstem einzelnen Takt gesendet werden und werden einen Takt später von MCU gehalten
    burst_rd BM O Wird am Anfang eines Zellen-Lesebursts aktiviert und deaktiviert gleichzeitig cmd_ack, Daten können bei demselben Takt zu BM gesendet werden; wird ein Takt nach dem Lesen des letzten Wortes in der Zelle aus dem MCU FIFO deaktiviert; dies ist ein Hüllsignal
    data_valid BM O Wortdaten werden bei demselben Takt zu BM gesendet und sollten bei dem nächsten Takt von BM gehalten werden
    mcu_bm_data [47:0] BM O Daten von MCU zu BM
  • Wiederum gibt die I/F-Spalte den Ursprung oder das Ziel des Signals an. Der Puffermanager 426 ist mit BM bezeichnet. Die Typ-Spalte gibt an, ob das Signal gesehen von der Speichersteuereinheit 424 ein Eingangssignal (I) oder ein Ausgangssignal (O) ist. Die rechte Spalte sieht eine kurze Beschreibung des Signals vor.
  • Mit Bezug auf 5 ist im folgenden ein Blockdiagramm des Schalters 110 mit weiteren Einzelheiten einer bevorzugten Ausführungsform der Speichersteuereinheit 424 beschrieben. Die Speichersteuereinheit 424 ist in zwei Taktbereiche (Taktdomänen) aufgeteilt: clk_sdram_out_c und clk50cgm_c. Die Signale in der Domäne clk_sdram_out_c sind nach einer positiven Flanke dieses Taktsignals gültig. Die Signale in der Domäne clk50cgm_c sind nach einer positiven Flanke dieses Taktsignals gültig.
  • Die Speichersteuereinheit 424 umfaßt einen SDRAM-Schnittstellencontroller 510, einen SDRAM-Befehlscontroller 522 und einen Puffermanager-Befehlscontroller 524. Der SDRAM-Befehlscontroller 522 empfängt Befehlsinformation von dem Puffermanager 426 über den Puffermanager-Befehlscontroller 524. Da der SDRAM-Befehlscontroller 522 und der Puffermanager 426 in verschiedenen Taktbereichen arbeiten, dient der Puffermanager-Befehlscontroller 524 dazu, die Übertragung von Befehlsinformation über die Taktbereiche hinweg zu koordinieren. Abhängig von Befehlen von dem Puffermanager 426 liefert der SDRAM-Controller 522 Steuersignale an den SDRAM-Schnittstellencontroller 510. Zusätzlich zu diesen Signalen empfängt der SDRAM-Schnittstellencontroller 510 Signale direkt von dem Puffermanager 426, den Multiplexern 512 und 514 und dem DPRAM-Controller 526. Abhängig von diesen Signalen liest und schreibt die SDRAM-Schnittstelle 510 Daten von dem und in das SDRAM 410.
  • Spezieller empfängt der SDRAM-Controller 510 Start- und Endadreßsignale von den Multiplexern 512 und 514. Diese Adreßsignale werden verwendet, um eine Start- und eine Endadreßstelle in dem SDRAM 410 zu wählen und basieren auf Signalen die vom Puffermanager 426 empfangen wurden. Insbesondere liefert der Puffermanager 426 eine Startadresse und eine Paketgröße an einen Adreßwandler 520. Abhängig von diesen Signalen wählt der Adreßwandler 520 eine Start- und eine Endadreßstelle in dem SDRAM 410. Die ausgewählten Adressen werden in Registern 516 und 518 gespeichert. Die Adreßumwandlung ist unten mit weiteren Einzelheiten beschrieben. Die Register 516 und 518 liefern ihrerseits die Adreßinformation an die Multiplexer 512 und 514. Der Multiplexer 512 liefert die Startadresse an den SDRAM-Controller 510; der Multiplexer 514 liefert die Endadreßinformation an den SDRAM-Controller 510.
  • Obwohl die Adreßumwandlung hier in bezug auf spezifische Schaltkreiselemente beschrieben wurde, kann dieselbe Funktion auch mit anderen Konfigurationen erreicht werden. Diese Funktion kann z. B. mittels Software umgesetzt werden.
  • Der SDRAM-Controller 510 liest und schreibt Daten von dem und in das SDRAM 410. Diese Daten werden über eine Synchronisierschaltung an den Puffermanager 426 geliefert und von diesem empfangen. Die Synchronisierschaltung umfaßt DPRAM-Controller 526 und 536, DRAMs 528 und 532 und Zeigercontroller 530 und 534. Die Synchronisierung dient dazu, Daten über die Taktgrenze von clk_sdram_out_c nach clk50cgm_c zu übersetzen.
  • Insbesondere arbeitet das DPRAM 528 als ein FIFO. Von dem DPRAM-Controller 536 empfangene Paketdaten werden in das DPRAM 528 geschrieben, und diese Paketdaten werden nachfolgend von dem DPRAM-Controller 526 aus dem DPRAM 528 ausgelesen. Die Schreib- und Leseoperationen werden von dem Zeigercontroller 530 koordiniert. Der Zeigercontroller 530 überwacht das DPRAM 528, damit nicht ungelesene Elemente überschrieben werden und damit die ältesten Paketdaten zuerst gelesen werden. Die DPRAM-Controller 536 und 526 überwachen jeweils einen Zeiger auf das DPRAM 528 zum Schreiben und Lesen von Daten in das und aus dem FIFO. Der Zeigercontroller 528 koordiniert diese Zeiger über die Taktbereiche hinweg.
  • Ähnlich arbeitet das DPRAM 532 wie ein FIFO, abgesehen davon, daß von dem DPRAM-Controller 526 empfangene Paketdaten in das DPRAM 532 geschrieben werden und diese Paketdaten nachfolgend von dem DPRAM-Controller 536 aus dem DPRAM 532 ausgelesen werden.
  • Ein Zweikanal-FIFO mit synchronisierten Lese- und Schreibzeigern ist mit weiteren Einzelheiten in der ebenfalls anhängigen deutschen Patentanmeldung „Zweikanal-FIFO mit synchronisierten Lese- und Schreibzeigern” vom 30.08.1999 derselben Anmelderin (Anwaltsaktenzeichen: NL 1699) beschrieben. Das Aktenzeichen der prioritätsbegründenden US-Ursprungsanmeldung ist 09/156,516. Auf diese Anmeldungen wird in ihrer Gesamtheit bezug genommen.
  • Mit Bezug auf 6 ist im folgenden ein Ablaufdiagramm einer bevorzugten Schreiboperation unter Verwendung der Speichersteuereinheit der 5 beschrieben. Beginnend beim Schritt 610 empfängt der Puffermanager 426 ein Datenpaket. Im Schritt 612 weist der Puffermanager 426 einen Puffer in dem SDRAM 410 zu. Der Puffermanager 426 gibt eine Startadresse und eine Burstgröße an die Speichersteuereinheit 424 weiter. Wie oben erwähnt, kann das Datenpaket in Zellen aufgeteilt sein. Die Burstlänge wird daher dazu verwendet, die Länge der Zelle anzugeben. Durch Aufteilen des Datenpakets in Zellen können Daten in das SDRAM 410 geschrieben werden, bevor das gesamte Paket empfangen worden ist.
  • Im Schritt 614 liefert die Speichersteuereinheit 424 die Startadresse und die Burstgröße an den Adreßwandler 520. Der Adreßwandler 520 konvertiert die Startadresse aus einem flachen Speicheradreßraum in einen SDRAM-Speicherraum. Diese Umwandlung ist unten mit weiteren Einzelheiten beschrieben. Der Adreßwandler 520 bestimmt auch eine Endadresse, indem er die Burstgröße zu der Startadresse addiert.
  • Im Schritt 616 empfängt die Speichersteuereinheit 424 Daten von dem Puffermanager 426. Diese Daten werden simultan mit der Adreßwandlung über die Taktbereiche hinweg übersetzt. Im einzelnen werden die Daten auf einen FIFO-Stapel geschoben (push), und die FIFO-Zeiger werden über die Taktbereiche hinweg synchronisiert. Dies erlaubt es, die Daten in dem anderen Taktbereich aus dem FIFO-Stapel zu holen (pop).
  • Im Schritt 618 ist die Adresse übersetzt, und die Daten sind zu dem Takt des SDRAM synchronisiert. Die Speichersteuereinheit 424 schreibt daher die synchronisierten Daten in das SDRAM 410. Im Schritt 620 bestimmt die Speichersteuereinheit 424, ob das letzte Datenwort in das SDRAM 410 geschrieben worden ist. Das SDRAM 410 schreibt Daten in aufeinanderfolgende Speicherstellen. Wenn das SDRAM die Endadresse erreicht, die im Schritt 614 berechnet wurde, geht das SDRAM zum Schritt 610 zurück, um auf weitere Paketdaten zu warten.
  • Mit Bezug auf 7 ist ein Flußdiagramm einer bevorzugten Leseoperation unter Verwendung der Speichersteuereinheit der 5 beschrieben. Beginnend beim Schritt 710 wählt der Puffermanager 426 einen Puffer aus, der Paketdaten enthält, und gibt eine Startadresse und eine Burstgröße an die Speichersteuereinheit 424 weiter. Im Schritt 712 liefert die Speichersteuereinheit 424 die Startadresse und die Burstgröße an den Adreßwandler 520. Der Adreßwandler 520 konvertiert die Startadresse aus einem flachen Speicheradreßraum in einen SDRAM-Speicherraum. Diese Umwandlung ist unten näher beschrieben. Der Adreßwandler 520 bestimmt auch eine Endadresse gestützt auf die Startadresse und die Burstgröße.
  • Im Schritt 714 gibt die Speichersteuereinheit 424 die Startadresse und die Endadresse an das SDRAM 410 weiter. Das SDRAM 410 beginnt seinerseits mit dem Lesen der Daten aus sequentiellen Adressen beginnend bei der Startadresse. Diese Daten werden über die Taktbereiche hinweg simultan mit der Adreßumwandlung übertragen. Im einzelnen werden die Daten auf einen FIFO-Stapel geschoben (push), und die FIFO-Zeiger werden über die Taktbereiche hinweg synchronisiert. Dies erlaubt es, die Daten in dem anderen Taktbereich von dem FIFO-Stapel zu holen (pop).
  • Im Schritt 716 bestimmt das SDRAM, ob die Endadresse erreicht wurde. Wenn nein, geht das SDRAM 410 zum Schritt 714 zurück, um Daten aus der nächsten, folgenden Adresse zu lesen. Ansonsten ist das Lesen der Daten beendet.
  • Im Schritt 718 sendet daher der Puffermanager die Paketdaten an die richtige Netzwerkeinrichtung und kehrt zum Schritt 710 zurück, um den nächsten Puffer auszuwählen.
  • 8 zeigt eine Tabelle einer bevorzugten Adreßübersetzung aus einem flachen Speicheradreßraum in einen SDRAM-Adreßraum. Diese Adreßübersetzung wird in dem Adreßwandler 520 der 5 ausgeführt. Der flache Speicheradreßraum ist in sechs Puffer (1–6) aufgeteilt, wie durch die erste Spalte angezeigt wird, die mit „relativer” Puffernummer überschrieben ist. Jedem der Puffer wird ein Bereich von Speicherstellen in dem flachen Speicheradreßraum zugewiesen. Diese Zuweisung wird durch die Spalte angezeigt, die mit „von flacher Adresse” überschrieben ist. Dem Puffer Nr. 1 wird z. B. der flache Speicheradreßraum 000-14F in hexadezimaler Schreibweise (aufgelistet als 000-0FF und 100-14F) zugewiesen. Die anderen Puffer entsprechen ähnlich zugewiesenem Speicher in dem flachen Speicheradreßraum.
  • Da jeder der Puffer größer als eine Seite ist, wird jeder Puffer auf zwei Bänke abgebildet. Ein Teil des Puffers Nr. 1 wird z. B. auf die Bank Nr. 1 abgebildet, und ein Teil des Puffers Nr. 1 wird auf die Bank Nr. 2 abgebildet. Spezieller werden die flachen Speicherstellen 000-0FF auf die Bank Nr. 1 abgebildet, und die flachen Speicherstellen 100-14F werden auf die Bank Nr. 2 abgebildet. Die physischen Speicherstellen in den Bänken werden durch die mit „zur physischen Adresse” bezeichnete Spalte angegeben.
  • Die mit „Bedingungen” bezeichnete Spalte gibt die Abbildungsbedingung an. Der erste Eintrag „0 ≤ [10:4] < 10” gibt z. B. an, daß dann, wenn der Wert der Adreßbits Nr. 10 bis 4 größer als oder gleich 0 und kleiner als 10 ist, die Adreßstellen auf die physischen Adreßstellen im Bereich von 000-0FF in der Bank Nr. 1 abgebildet werden. Da die flachen Speicheradreßstellen mit den physischen Speicheradreßstellen übereinstimmen, muß mit diesen Adressen keine Operation ausgeführt werden.
  • Wenn bei dem zweiten Eintrag die Bits Nr. 10 bis 4 die Bedingung 15 ≤ [10:4] < 25 erfüllen, wird der zweite physische Adreßraum ausgewählt. Die flachen Speicheradreßstellen 150-24F werden daher auf die physischen Speicheradreßstellen 100-1FF abgebildet. Diese Übersetzung wird abhängig von sowohl der mit „Operation” bezeichneten Spalte als auch von der mit „zusätzliche Operation” bezeichneten Spalte ausgeführt. Die mit „Operation” bezeichnete Spalte gibt insbesondere an, daß die Bits Nr. 10 bis 8 („[10:8]”) in binärer Notation auf 001 abgebildet werden. Die „zusätzliche Operation” gibt an, daß die Bits Nr. 7 bis 4 („[7:4]”) um 5 reduziert werden. Diese beiden Operationen werden mit jeder flachen Speicheradreßstelle ausgeführt, um die entsprechende physische Speicheradreßstelle zu erzeugen.
  • Die anderen Einträge funktionieren auf ähnliche Weise, so daß jede flache Speicheradreßstelle auf eine physische Speicheradreßstelle abgebildet wird. Die mit „Bedingung” bezeichnete Spalte wird auf die flache Speicheradreßstelle bezogen. Wenn die flache Speicheradreßstelle in dem ausgewählten Bereich liegt, werden die entsprechenden Operationen aus den mit „Operation” und „zusätzliche Operation” bezeichneten Spalten auf die flache Speicheradreßstelle angewendet. Diese Operationen erzeugen die physische Speicheradreßstelle.
  • Mit Bezug auf 9 ist ein Blockdiagramm der Adreßübersetzung der 8 beschrieben. Der flache Speicheradreßraum 902 ist in Blöcke 910920 aufgeteilt. Die Blöcke 910920 werden von dem Adreßwandler 520 (der in 5 gezeigt ist) jeweils auf den physischen Speicheradreßraum abgebildet. Die Abbildung des Speicherblocks 918 ist im einzelnen dargestellt. Die anderen Speicherblöcke werden ähnlich abgebildet.
  • Im einzelnen ist der Block 918 in sechs Puffer unterteilt. Diese Puffer belegen die Seiten 930944 des SDRAM 410. Die Seiten 930, 934, 938 und 942 liegen in der Bank A des SDRAM 410. Die Seiten 932, 936, 940 und 944 liegen in der Bank B des SDRAM 410. Die Seite 942 ist in einen ersten Teil 950, einen zweiten Teil 951 und einen dritten Teil 952 unterteilt. Die Seite 944 ist in einen ersten Teil 953, einen zweiten Teil 954 und einen dritten Teil 955 unterteilt.
  • Der Puffer Nr. 1 belegt die Seite 930 und den ersten Teil 953 der Seite 944. Der Puffer Nr. 2 belegt die Seite 932 und den zweiten Teil 951 der Seite 942. Der Puffer Nr. 3 belegt die Seite 934 und den dritten Teil 955 der Seite 944. Der Puffer Nr. 4 belegt die Seite 936 und den ersten Teil 950 der Seite 942. Der Puffer Nr. 5 belegt die Seite 938 und den zweiten Teil 954 der Seite 944. Der Puffer Nr. 6 belegt die Seite 940 und den dritten Teil 952 der Seite 942.
  • Wenn Paketdaten in einen Puffer geschrieben werden, greift die Speichersteuereinheit 424 zuerst auf die Seiten 930940 zu. Diese Seiten werden daher als Hauptseiten bezeichnet. Wenn eine Hauptseite kein gesamtes Paket fassen kann, greift die Speichersteuereinheit 424 auf einen Teil der Seiten 942944 zu. Diese Seiten werden daher als Zusatzseiten bezeichnet.
  • Die Speichersteuereinheit 424 kann z. B. versuchen, ein Datenpaket von 2 kByte in dem Puffer Nr. 1 zu speichern. Zunächst werden Daten in die Seite 930 geschrieben, diese Seite kann jedoch nur 1,5 kByte Daten fassen. Die verbleibenden Paketdaten werden daher in den ersten Teil 953 der Seite 944 geschrieben. Da die Seite 930 in der Bank A und die Seite 944 in der Bank B liegt, kann die Vorladeoperation der Seite 944 beginnen, bevor das Schreiben auf die Seite 930 abgeschlossen ist.
  • Mit Bezug auf 10 ist im folgenden ein Blockdiagramm einer bevorzugten Ausführungsform einer SDRAM-Speicheradreß-Auswahlschaltung 1000 beschrieben. Die SDRAM-Speicheradreß-Auswahlschaltung umfaßt Flach/SDRAM-Adreßübersetzungseinrichtungen 1010 und 1018 sowie eine Startadreß-Übersetzungseinrichtung 1016. Zusammen empfangen diese Übersetzungeinrichtungen Information über die Startadresse und die Burstgröße von einem Puffermanager und erzeugen Adreßstart- und Adreßend-Signale für ein SDRAM. Die SDRAM-Speicheradreß-Auswahlschaltung 1000 ermöglicht es dem Puffermanager, das SDRAM wie einen Speicher mit flacher Adressierung (flat memory) zu adressieren. Dies vereinfacht die Realisierung des Puffermanagers.
  • Die Startadreßinformation wird von dem Signal start_addr vorgesehen, und die Burstgrößeninformation wird von dem Signal burst_size vorgesehen. Ein Addierer 1012 addiert das Signal start_addr zu dem Signal burst_size. Das Ausgangssignal des Addierers 1012 wird an einen Subtrahierer 1014 übergeben, der dieses Ausgangssignal um 1 dekrementiert. Das Ausgangssignal des Subtrahierers 1014 ist die Endadreßstelle und wird als das Signal end_addr vorgesehen.
  • Das Signal start_addr wird auch an die Flach/SDRAM-Adreßübersetzungseinrichtung 1010 übergeben. Das Signal start_addr ist ein 20 Bit breites Signal. Die elf niedrigstwertigen Bits des Signals start_addr (d. h. [10:0]) werden gemäß der in 8 gezeigten Tabelle konvertiert. Die neun höchstwertigen Bits werden von der Flach/SDRAM-Adreßübersetzungseinrichtung 1010 nicht verändert.
  • Die elf niedrigstwertigen Bits sind ausreichend, um einen Puffer auf eine Hauptseite in einer Bank und eine Zusatzseite in einer anderen Bank abzubilden. Die Verwendung der neun höchstwertigen Bits würde zusätzliche Übersetzungsschaltungen und daher zusätzliche Logikgatter erfordern. Dies würde wiederum die Adreßwandlung verzögern.
  • Die elf niedrigstwertigen Bits, die gemäß der in 8 gezeigten Tabelle konvertiert wurden, werden mit den neun höchstwertigen Bits des Signals start_addr kombiniert, um das Signal addr0_start vorzusehen. Dieses Signal ist die Startadresse in dem SDRAM.
  • Zusätzlich sieht die Flach/SDRAM-Adreßübersetzungseinrichtung 1010 ein Hauptseitensignal (main_page) und ein Hauptseitenendeadreß-Signal (addr0_end) vor. Das Signal main_page gibt an, ob die übersetzte Startadresse auf eine Hauptseite abgebildet wird. Wenn ja, wird das Signal main_page aktiviert. Anderenfalls wird das Signal main_page deaktiviert. Das Signal addr0_end gibt die letzte verfügbare Adreßstelle auf der Hauptseite an. Wieder in 9 ist die letzte verfügbare Adresse auf der Hauptseite 930 gleich 255 (0FFh).
  • Die Startadreßübersetzungseinrichtung 1016 empfängt das Signal end_addr und das Signal main_page. Die Startadreßübersetzungseinrichtung 1016 gibt die erste verfügbare Adreßstelle in einer Zusatzseite an. Wieder in 9 ist die erste verfügbare Adreßstelle in der Zusatzseite 944 für den Puffer Nr. 1 gleich 1792 (700h).
  • Für Daten, die keine Paketdaten sind, kann von einer Zusatzseite auf einer Hauptseite gelesen und auf sie geschrieben werden. Dem Signal addr0_start kann z. B. 700h zugewiesen werden. Das Signal main_page wird daher deaktiviert, und dem Signal addr1_start würde 100h zugewiesen werden (d. h. der Anfang des Puffers Nr. 2).
  • Das Signal end_addr wird auch an die Flach/SDRAM-Adreßübersetzungseinrichtung 1018 übergeben. Das Signal end_addr ist ein 20 Bit breites Signal. Die elf niedrigstwertigen Bits des Signal end_addr (d. h. [10:0]) werden gemäß der in 8 gezeigten Tabelle konvertiert. Die neun höchstwertigen Bits werden von der Flach/SDRAM-Adreßübersetzungseinrichtung 1018 nicht verändert.
  • Die elf niedrigstwertigen Bits, die gemäß der in 8 gezeigten Tabelle konvertiert wurden, werden mit den neun höchstwertigen Bits des Signals end_addr kombiniert, um das Signal addr1_end vorzusehen. Dieses Signal ist die Endadresse in der Zusatzseite des SDRAM.
  • Um die Adreßübersetzungen zu beschleunigen, werden alle vier Adressen, nämlich addr0_start, addr0_end, addr1_start und addr1_end gleichzeitig erzeugt. Diese Adreßsignale werden üblicherweise abhängig davon, ob die betreffende Zelle in einer Seite enthalten ist, unterschiedlich verwendet.
  • Wenn eine Zelle in einer Seite enthalten ist, zeigt addr0_start auf die tatsächliche Startadresse des SDRAM, addr0_end zeigt auf die letzte Adresse auf derselben SDRAM-Seite, addr1_start zeigt auf die erste Adresse der nächsten SDRAM-Seite in Folge und addr1_end zeigt auf die tatsächliche Endadresse auf derselben SDRAM-Seite wie addr0_start. In diesem Fall werden daher nur addr0_start und addr1_end von dem SDRAM-Controller verwendet. Insbesondere verwendet der SDRAM-Controller addr0_start als die Startadresse und addr1_end als die Endadresse. Da alle Daten auf eine Seite geschrieben werden, kann der SDRAM-Controller die Grenzen der Seiten ignorieren.
  • Wenn eine Zelle in zwei SDRAM-Seiten enthalten ist, zeigt addr0_start auf die tatsächliche Startadresse des SDRAM, addr0_end zeigt auf die letzte Adresse auf derselben SDRAM-Seite, addr1_start zeigt auf die erste Adresse der nächsten SDRAM-Seite in Folge, und addr1_end zeigt auf die tatsächliche Endadresse auf derselben SDRAM-Seite wie addr1_start. In diesem Fall werden von dem SDRAM-Controller alle vier Adressen verwendet. Insbesondere verwendet der SDRAM-Controller zunächst addr0_start und addr0_end, um Daten auf der ersten Seite zu schreiben (oder zu lesen). Dann verwendet der SDRAM-Controller addr1_start und addr1_end, um Daten auf der zweiten Seite zu schreiben (oder zu lesen).
  • Mit Bezug auf 11 ist ein Ablaufdiagramm einer bevorzugten Operation der Speichersteuereinheit der 4 beschrieben, mit der eine Adresse aus einem flachen Speicheradreßraum in einen SDRAM-Adreßraum übersetzt wird. Im Schritt 1110 empfängt die Speichersteuereinheit ein flaches Speicheradreßsignal und eine Burstgröße. Im Schritt 1112 übersetzt die Speichersteuereinheit das flache Speicheradreßsignal in ein SDRAM-Adreßsignal. Die Übersetzung erfolgt gemäß der in 8 dargestellten Tabelle. Im Schritt 1114 addiert die Speichersteuereinheit die Burstgröße zu dem flachen Speicheradreßsignal, um ein flaches Speicher-Endadreßsignal vorzusehen. Im Schritt 1116 übersetzt die Speichersteuereinheit das flache Speicher-Endadreßsignal in ein SDRAM-Endadreßsignal.
  • Im Schritt 1118 ermittelt die Speichersteuereinheit, ob das SDRAM-Startadreßsignal auf einer Hauptseite liegt. Wenn nein, ist die Übersetzung abgeschlossen. Anderenfalls ermittelt die Speichersteuereinheit im Schritt 1120, ob das SDRAM-Endadreßsignal auf einer Hauptseite liegt. Wenn ja, ist die Übersetzung abgeschlosssen. Anderenfalls überqueren die Daten eine Seitengrenze. Im Schritt 1122 erzeugt die Speichersteuereinheit daher ein Seitengrenzen-Adreßsignal. Die Seitengrenzen-Adreßsignale zeigen die letzte verfügbare Speicherstelle auf der Hauptseite und die erste verfügbare Speicherstelle auf der Zusatzseite an. Damit ist die Übersetzung beendet.
  • Die oben beschriebene Abbildung dient zum Beschleunigen des Datenzugriffs. Insbesondere ordnet diese Abbildung Paketdaten, auf die zusammenhängend zugegriffen wird, die jedoch nicht auf derselben Seite gespeichert werden können, in verschiedenen Bänken an. Dies ermöglicht, daß die Vorlade- und Aktivierungsoperationen beginnen, bevor der vorhergehende Zugriff beendet ist, und somit die Datenzugriffszeit weiter reduziert wird.
  • Während des normalen Betriebs wird ferner auf den Puffer Nr. 1 als erstes zugegriffen. Wie in 9 gezeigt, liegt ein erster Teil des Puffers Nr. 1 (d. h. der Block 930) an der Bank A, und ein zweiter Teil des Puffers Nr. 1 (d. h. der Block 950) liegt in der Bank B. Üblicherweise belegt ein Datenpaket nicht eine gesamte Speicherseite. Es wird daher nur auf den Block 930 zugegriffen. Auf den Puffer Nr. 2 wird danach zugegriffen. Da der erste Teil dieses Puffers in der Bank B liegt (d. h. Seite 932), kann diese Seite vorgeladen und aktiviert werden, während noch Daten in die Bank A geschrieben werden. Die Hauptseiten der anderen, nachfolgenden Puffer werden ebenfalls in verschiedenen Bänken angeordnet. Diese Anordnung dient dazu, den Datenzugriff zu beschleunigen.
  • Obwohl die hier beschriebenen Ausführungsformen eine Adreßübersetzung realisieren, die Start- und Längen-Adreßinformation erhält, kann die Übersetzung auch mit Start- und End-Adreßinformationen arbeiten. Dieselbe Übersetzung kann auf diese Adreßinformation angewendet werden. Zusätzlich kann die Adreßübersetzung abhängig von den Anforderungen des SDRAM Informationen über Start, Länge oder Burstgröße erzeugen.
  • Insbesondere werden, wie oben beschrieben, start_addr und burst_size von einem Puffermanager vorgesehen und in addr0_start, addr0_end, addr1_start und addr1_end im SDRAM-Adreßraum konvertiert. Ebenso können start_addr und burst_size in die Signale addr0_start, addr0_size, addr1_start und addr1_size konvertiert werden. Mit anderen Worten ist es funktional äquivalent, anstatt die Start- und Endadressen zu erzeugen, die Startadressen und die Größen der Bursts (Signalfolgen) für diese Startadressen zu erzeugen.
  • Mit Bezug auf 12 wird ein Flußdiagramm einer bevorzugten Operation einer Speichersteuereinheit, die Daten in ein SDRAM schreibt, beschrieben. Die Speichersteuereinheit beginnt beim Schritt 1210, wo sie einen Schreibbefehl, Adreßinformation und Daten empfängt. Die Adreßinformation umfaßt eine Startadresse und eine Burstgröße. Die Speichersteuereinheit geht zum Block 1212 weiter. Hier übersetzt die Speichersteuereinheit die Adreßinformation in einen SDRAM-Adreßraum. Gleichzeitig synchronisiert die Speichersteuereinheit die Daten über eine Taktbereichsgrenze hinweg.
  • Im Schritt 1214 initiiert die Speichersteuereinheit Vorlade- und Aktivierungsoperationen auf einer Hauptseite in einer ersten Bank. Im Schritt 1216 schreibt die Speichersteuereinheit Daten in aufeinanderfolgende Adreßstellen in der Hauptseite.
  • Im Schritt 1218 bestimmt die Speichersteuereinheit, ob Daten auf eine Zusatzseite in einer zweiten Bank geschrieben werden sollen. Wenn nein, geht die Speichersteuereinheit zum Schritt 1210 zurück. Hier wartet die Speichersteuereinheit auf den Empfang des nächsten Befehls. Bei einem SDRAM-System mit zwei Bänken beträgt die Wahrscheinlichkeit, daß die nächste Schreiboperation auf eine Seite in der zweiten Bank zugreift, 50%. Im Schritt 1214 kann die Speichersteuereinheit die nächsten Vorlade- und Aktivierungsoperationen auslösen, bevor die vorhergehende Schreiboperation beendet ist.
  • Anderenfalls geht die Speichersteuereinheit zum Schritt 1220. Hier initiiert die Speichersteuereinheit die Vorlade- und Aktivierungsoperationen für die Zusatzseite in der zweiten Bank. Während dieser Operationen werden Daten gleichzeitig auf die Hauptseite in der ersten Bank geschrieben. Wenn die Speichersteuereinheit die Hauptseite mit Daten gefüllt hat, geht sie zum Schritt 1222 weiter. Hier schreibt die Speichersteuereinheit Daten in die Zusatzseite. Bei Beendigung der Schreiboperation geht die Speichersteuereinheit zum Schritt 1210 zurück.
  • Mit Bezug auf 13 ist ein Ablaufdiagramm einer bevorzugten Operation einer Speichersteuereinheit, die Daten von einem SDRAM liest, beschrieben. Die Speichersteuereinheit beginnt im Schritt 1310, wo sie einen Lesebefehl und Adreßinformationen empfängt. Die Adreßinformation umfaßt eine Startadresse und eine Burstgröße. Die Speichersteuereinheit geht zum Block 1312 weiter. Hier übersetzt die Speichersteuereinheit die Adreßinformation in einen SDRAM-Adreßraum.
  • Im Schritt 1314 initiiert die Speichersteuereinheit Vorlade- und Aktivierungsoperationen auf einer Hauptseite in einer ersten Bank. Im Schritt 1316 liest die Speichersteuereinheit Daten aus aufeinanderfolgenden Adreßstellen in der Hauptseite. Die Daten werden über eine Taktbereichsgrenze zum Puffermanager 426 hinweg synchronisiert.
  • Im Schritt 1318 bestimmt die Speichersteuereinheit, ob Daten von einer Zusatzseite in einer zweiten Bank gelesen werden sollen. Wenn nein, geht die Speichersteuereinheit zum Schritt 1310 zurück. Hier wartet die Speichersteuereinheit auf den Empfang des nächsten Befehls. Bei einem SDRAM-System mit zwei Bänken besteht eine Wahrscheinlichkeit von 50%, daß die nächste Leseoperation auf eine Seite in der zweiten Bank zugreift. Im Schritt 1314 kann die Speichersteuereinheit die nächsten Vorlade- und Aktivierungsoperationen auslösen, bevor die vorhergehende Leseoperation abgeschlossen ist.
  • Anderenfalls geht die Speichersteuereinheit zum Schritt 1320 weiter. Hier löst die Speichersteuereinheit die Vorlade- und Aktivierungsoperationen für die Zusatzseite in der zweiten Bank aus. Während dieser Operationen werden gleichzeitig Daten von der Hauptseite in der ersten Bank gelesen und synchronisiert. Wenn die Speichersteuereinheit alle Daten von der Hauptseite gelesen hat, geht sie zum Schritt 1322 weiter. Hier liest die Speichersteuereinheit Daten von der Zusatzseite. Bei Beendigung der Leseoperation kehrt die Speichersteuereinheit zum Schritt 1310 zurück.
  • Die oben beschriebene Operation beschleunigt den SDRAM-Zugriff, indem sie es ermöglicht, gleichzeitig Adreßinformationen zu übersetzen und Daten zu synchronisieren.
  • Obwohl die Ausführungsformen der Erfindung in bezug auf eine Netzwerkeinrichtung beschrieben wurden, ist die Erfindung auf jede andere Einrichtung anwendbar, die Speicheradressen aus einem flachen Speicheradreßraum übersetzt oder die Daten von einem Takt zu einem anderen synchronisiert. Obwohl die vorliegende Erfindung in bezug auf bestimmte Funktionsblöcke und Tabellen beschrieben wurde, können ferner andere Strukturen dieselben Funktionen ausführen oder dieselben Vorteile mit anderen Konfigurationen erreichen. Ein Fachmann wird aus den hier offenbarten Ausführungsformen sicher verstehen, daß zahlreiche Modifikationen möglich sind, ohne die Lehre der Erfindung zu verlassen. All diese Modifikationen sollen im Bereich der folgenden Ansprüche liegen.

Claims (5)

  1. Speichersteuereinheit (424) zum Steuern eines SDRAM (410), das eine Mehrzahl von Speicherbänken umfaßt, wobei jede der Speicherbänke eine Mehrzahl von Seiten umfaßt, zum Einsatz in einem das SDRAM (410) enthaltenden Netzwerkschalter (110), der für den Fluß von Paketdaten zwischen Eingang- und Ausgangsports in einer Netzwerkumgebung vorgesehen ist, wobei der Netzwerkschalter einen Puffermanager (426) enthält, der den Datenfluß in das SDRAM (410) verwaltet, wobei der Puffermanager (426) auf der Basis eines ersten Takts arbeitet, der asynchron zu einem zweiten Takt ist, auf dessen Basis das SDRAM arbeitet und der schneller als der erste Takt ist, und wobei die Speichersteuereinheit folgendes umfaßt: einen Adreßwandler (520), der mit dem Puffermanager (426) betrieblich gekoppelt ist, so daß er von dem Puffermanager empfangene Adreßinformation in einen SDRAM Adreßraum übersetzt, wobei die Adreßübersetzung so durchgeführt wird, dass Daten eines Datenpaketes, dessen Umfang den Umfang einer Seite des SDRAM (410) übersteigt, in Seiten gespeichert werden, die in unterschiedlichen Bänken liegen, wobei der Adreßwandler (520) auf den zweiten Takt gestützt arbeitet, eine Datensynchronisierschaltung (526536), die mit dem Puffermanager (426) betrieblich gekoppelt ist und von diesem Paketdaten empfängt, und dies so gesteuert ist, daß sie die Daten zu dem zweiten Takt synchronisiert, wobei die Datensynschronisierschaltung (526536) bereits Daten zur Synchronisierung empfängt während der Adreßwandler (520) die Adreßinformation in den SDRAM-Adreßraum übersetzt; und einen SDRAM-Controller (510), der mit dem Adreßwandler (520) und der Datensynchronisierschaltung (526536) betrieblich gekoppelt ist, so daß er gestützt auf die übersetzte Adreßinformation Daten in das SDRAM (410) schreibt und aus diesem liest, wobei der SDRAM-Controller (510) auf der Basis des zweiten Takts arbeitet.
  2. Speichersteuereinheit (424) nach Anspruch 1, wobei der Adreßwandler (520) eine erste Startadresse und eine Burstgröße empfängt und als Antwort darauf eine zweite Startadresse und eine Endadresse erzeugt.
  3. Speichersteuereinheit (424) nach Anspruch 2, wobei Signale, welche die erste Startadresse und die Burstgröße enthalten, auf der Basis des ersten Taktes arbeiten und Signale, welche die zweite Startadresse und die Endadresse enthalten, auf Basis des zweiten Taktes arbeiten.
  4. Speichersteuereinheit (424) nach einem der vorangehenden Ansprüche, wobei die Datensynchronisierschaltung (526536) einen ersten FIFO (528) und einen zweiten FIFO (532) umfaßt.
  5. Speichersteuereinheit (424) nach einem der vorangehenden Ansprüche, wobei die Daten Ethernet-Paketdaten umfassen.
DE19943176A 1998-09-18 1999-09-09 Speichersteuereinheit zum Steuern eines SDRAM in einem Netzwerkschalter Expired - Fee Related DE19943176B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/157,079 US6418518B1 (en) 1998-09-18 1998-09-18 Decoupled address and data access to an SDRAM
US157079 1998-09-18

Publications (2)

Publication Number Publication Date
DE19943176A1 DE19943176A1 (de) 2000-03-23
DE19943176B4 true DE19943176B4 (de) 2012-09-20

Family

ID=22562266

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19943176A Expired - Fee Related DE19943176B4 (de) 1998-09-18 1999-09-09 Speichersteuereinheit zum Steuern eines SDRAM in einem Netzwerkschalter

Country Status (3)

Country Link
US (2) US6418518B1 (de)
KR (1) KR100328101B1 (de)
DE (1) DE19943176B4 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330627B1 (en) * 1998-01-20 2001-12-11 Kabushiki Kaisha Toshiba System for fast data transfer between memory modules and controller using two clock lines each having a go line portion and a return line portion
US6418518B1 (en) * 1998-09-18 2002-07-09 National Semiconductor Corporation Decoupled address and data access to an SDRAM
US6801954B1 (en) * 2000-02-25 2004-10-05 Hewlett-Packard Development Company, L.P. Method and apparatus to concurrently operate on multiple data movement transactions in a disk array subsystem
US6928494B1 (en) * 2000-03-29 2005-08-09 Intel Corporation Method and apparatus for timing-dependant transfers using FIFOs
US6779061B1 (en) * 2000-05-09 2004-08-17 Cypress Semiconductor Corp. Method and apparatus implementing a FIFO with discrete blocks
US7161938B1 (en) * 2000-07-26 2007-01-09 Infineon Technologies North America Corp. Network switch
DE10354034B4 (de) * 2003-11-19 2005-12-08 Infineon Technologies Ag Verfahren zum Betreiben einer Halbleiterspeichervorrichtung und Halbleiterspeichervorrichtung
JP2007249837A (ja) * 2006-03-17 2007-09-27 Nec Electronics Corp メモリ制御装置、メモリ制御方法及び携帯機器
JP4267002B2 (ja) 2006-06-08 2009-05-27 エルピーダメモリ株式会社 コントローラ及びメモリを備えるシステム
US8001409B2 (en) * 2007-05-18 2011-08-16 Globalfoundries Inc. Synchronization device and methods thereof
US8219778B2 (en) * 2008-02-27 2012-07-10 Microchip Technology Incorporated Virtual memory interface
US7996649B1 (en) * 2008-04-29 2011-08-09 Xilinx, Inc. Translation look-aside buffer with look-up optimized for programmable logic resource utilization

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420236A2 (de) * 1989-09-28 1991-04-03 Nec Corporation Vorrichtung und Verfahren zur Steuerung von Speicherzugriffsanforderungen in einem digitalen Datenverarbeitungssystem
US5778419A (en) * 1995-08-16 1998-07-07 Microunity Systems Engineering, Inc. DRAM with high bandwidth interface that uses packets and arbitration
US5784705A (en) * 1996-07-15 1998-07-21 Mosys, Incorporated Method and structure for performing pipeline burst accesses in a semiconductor memory
US5784582A (en) * 1996-10-28 1998-07-21 3Com Corporation Data processing system having memory controller for supplying current request and next request for access to the shared memory pipeline
WO1998036538A1 (en) * 1997-02-14 1998-08-20 Advanced Micro Devices, Inc. Integrated multiport switch having management information base (mib) interface temporary storage

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960003526B1 (ko) * 1992-10-02 1996-03-14 삼성전자주식회사 반도체 메모리장치
US5142635A (en) * 1989-04-07 1992-08-25 Intel Corporation Method and circuitry for performing multiple stack operations in succession in a pipelined digital computer
US5426756A (en) 1992-08-11 1995-06-20 S3, Incorporated Memory controller and method determining empty/full status of a FIFO memory using gray code counters
US5896551A (en) * 1994-04-15 1999-04-20 Micron Technology, Inc. Initializing and reprogramming circuitry for state independent memory array burst operations control
US5555524A (en) 1995-02-13 1996-09-10 Standard Microsystems Corporation Semi-synchronous dual port FIFO
US5630096A (en) 1995-05-10 1997-05-13 Microunity Systems Engineering, Inc. Controller for a synchronous DRAM that maximizes throughput by allowing memory requests and commands to be issued out of order
US5946005A (en) * 1995-09-21 1999-08-31 Industrial Technology Research Institute Computer graphics memory architecture having a graphics processor and a buffer
US5761694A (en) * 1995-11-30 1998-06-02 Cirrus Logic, Inc. Multi-bank memory system and method having addresses switched between the row and column decoders in different banks
US5748551A (en) 1995-12-29 1998-05-05 Micron Technology, Inc. Memory device with multiple internal banks and staggered command execution
US5787457A (en) 1996-10-18 1998-07-28 International Business Machines Corporation Cached synchronous DRAM architecture allowing concurrent DRAM operations
US5987576A (en) * 1997-02-27 1999-11-16 Hewlett-Packard Company Method and apparatus for generating and distributing clock signals with minimal skew
US6134638A (en) * 1997-08-13 2000-10-17 Compaq Computer Corporation Memory controller supporting DRAM circuits with different operating speeds
US5948081A (en) * 1997-12-22 1999-09-07 Compaq Computer Corporation System for flushing queued memory write request corresponding to a queued read request and all prior write requests with counter indicating requests to be flushed
US6064407A (en) * 1998-04-30 2000-05-16 Ati Technologies, Inc. Method and apparatus for tiling a block of image data
US6202139B1 (en) * 1998-06-19 2001-03-13 Advanced Micro Devices, Inc. Pipelined data cache with multiple ports and processor with load/store unit selecting only load or store operations for concurrent processing
US6418518B1 (en) * 1998-09-18 2002-07-09 National Semiconductor Corporation Decoupled address and data access to an SDRAM

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420236A2 (de) * 1989-09-28 1991-04-03 Nec Corporation Vorrichtung und Verfahren zur Steuerung von Speicherzugriffsanforderungen in einem digitalen Datenverarbeitungssystem
US5778419A (en) * 1995-08-16 1998-07-07 Microunity Systems Engineering, Inc. DRAM with high bandwidth interface that uses packets and arbitration
US5784705A (en) * 1996-07-15 1998-07-21 Mosys, Incorporated Method and structure for performing pipeline burst accesses in a semiconductor memory
US5784582A (en) * 1996-10-28 1998-07-21 3Com Corporation Data processing system having memory controller for supplying current request and next request for access to the shared memory pipeline
WO1998036538A1 (en) * 1997-02-14 1998-08-20 Advanced Micro Devices, Inc. Integrated multiport switch having management information base (mib) interface temporary storage

Also Published As

Publication number Publication date
KR100328101B1 (ko) 2002-03-09
US6484248B1 (en) 2002-11-19
DE19943176A1 (de) 2000-03-23
US20020199055A1 (en) 2002-12-26
KR20000022787A (ko) 2000-04-25
US6418518B1 (en) 2002-07-09

Similar Documents

Publication Publication Date Title
DE19943176B4 (de) Speichersteuereinheit zum Steuern eines SDRAM in einem Netzwerkschalter
EP1291878B1 (de) Steuereinrichtung zur Steuerung von Burst-Zugriffen
DE69637187T2 (de) Methode und Apparat zur Manipulierung einer ATM-Zelle
DE69133565T3 (de) System mit einer Vielzahl von DRAMS und einem Bus
DE69630084T2 (de) Anlage und Verfahren zur Paketierung und Segmentierung von MPEG-Paketen
DE69637320T2 (de) Methode und Apparat für Vermittlung, Mehrfachsendeverfahren, Multiplexierung und Demultiplexierung einer ATM-Zelle
DE2230987C2 (de)
DE102005048581B4 (de) Teilnehmerschnittstelle zwischen einem FlexRay-Kommunikationsbaustein und einem FlexRay-Teilnehmer und Verfahren zur Übertragung von Botschaften über eine solche Schnittstelle
EP1846827A1 (de) Verfahren zum übertragen von daten in botschaften über eine kommunikationsverbindung eines kommunikationssystems, sowie kommunikationsbaustein, teilnehmer eines kommunikationssystems und kommunikationssystem zur realisierung dieses verfahrens
EP1787204A1 (de) Botschaftsverwalter und verfahren zur steuerung des zugriffs auf daten eines botschaftsspeichers eines kommunikationsbausteins
DE102020115958A1 (de) Serielle mehrfach-e/a-peripherieschnittstelle für präzisionsumsetzer
DE19943174B4 (de) SDRAM-Adreßübersetzer
DE3618136C2 (de)
EP1776808A1 (de) Verfahren zur speicherung von botschaften in einem botschaftsspeicher und botschaftsspeicher
EP0409330B1 (de) Schaltungsanordnung zum Steuern des Zugriffs auf einen Speicher
DE102008051657A1 (de) Speicherbaustein und Speichersystem mit einem Speicherbaustein und einem Speicherkontrollbaustein
DE602004008712T2 (de) Speicherbandbreiten-Steuereinrichtung
EP0283908A1 (de) Mehrstufige integrierte Dekodereinrichtung
DE10200685B4 (de) Verfahren zum Speichern von Daten und zum Zugreifen auf die gespeicherten Daten
DE102008001739B4 (de) Verfahren zum Steuern eines Zugriffs auf Bereiche eines Speichers aus mehreren Prozessen heraus und Kommunikations-Modul mit einem Nachrichten-Speicher zur Realisierung des Verfahrens
DE19933539B4 (de) Integrierter Speicher
EP3676995B1 (de) Master eines bussystems
DE10046578B4 (de) Integrierter Speicherbaustein und Speicheranordnung mit mehreren Speicherbausteinen sowie Verfahren zum Betrieb einer solchen Speicheranordnung
EP1419507B1 (de) Verfahren und vorrichtung zum prüfen von halbleiterspeichereinrichtungen
DE102006000632A1 (de) Speichervorrichtung mit Bauteilen zum synchronen Übertragen und Empfangen von Signalen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R019 Grant decision by federal patent court
R020 Patent grant now final

Effective date: 20121221

R082 Change of representative

Representative=s name: ,

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