DE69838387T2 - Verfahren und vorrichtung in einem paketenleitweglenkungsschalter um den zugriff zu einem gemeinsamen speicher auf verschiedenen datenraten zu steuern - Google Patents

Verfahren und vorrichtung in einem paketenleitweglenkungsschalter um den zugriff zu einem gemeinsamen speicher auf verschiedenen datenraten zu steuern Download PDF

Info

Publication number
DE69838387T2
DE69838387T2 DE69838387T DE69838387T DE69838387T2 DE 69838387 T2 DE69838387 T2 DE 69838387T2 DE 69838387 T DE69838387 T DE 69838387T DE 69838387 T DE69838387 T DE 69838387T DE 69838387 T2 DE69838387 T2 DE 69838387T2
Authority
DE
Germany
Prior art keywords
data
interface
fast
address
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69838387T
Other languages
English (en)
Other versions
DE69838387D1 (de
Inventor
Shimon Sunnyvale Muller
Binh Castro Valley Pham
Curt Los Altos BERG
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Application granted granted Critical
Publication of DE69838387D1 publication Critical patent/DE69838387D1/de
Publication of DE69838387T2 publication Critical patent/DE69838387T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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
    • G06F13/1689Synchronisation and timing concerns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • GEBIET DER ERFINDUNG
  • Die Erfindung bezieht sich auf das Gebiet von Paketleitweglenkungsschaltern in vernetzten EDV-Umgebungen.
  • HINTERGRUND DER ERFINDUNG
  • Computernetzwerke erlauben, Mehrfachprozessoren miteinander zu kommunizieren. Ein Computernetzwerk könnte verschiedene Arten von Computer und Speicherbausteinen verbinden. Daten werden typisch in Paketen zwischen Komponenten auf einem Netzwerk transferiert. Pakete sind gewöhnlich Datenwortgruppen jeweils einer bestimmten Länge. Sowie Netzwerke größer und komplexer werden, wird es zunehmend wichtig, Pakete effizient routen und speichern zu können. Pakete werden häufig, während des Routingprozesses von einer Netzwerkkomponente zu einer anderen Netzwerkkomponente, vorübergehend gespeichert. Dies ist teilweise auf die zufällige Natur der Verkehrsverteilung des Eingangs- und Ausgangsports, sowie die Anpassungsrate zwischen Ports zurückzuführen, die Daten mit verschiedenen Raten transferieren. Daher ist Paketspeicherung oder Puffer ein integraler Teil der Schaltfunktion. Puffern könnte in einem Speicher, der Teil eines Schaltkreises (auf demselben Chip wie der Schaltkreis) ist oder auf einem Speicher auftreten, der vom Schaltkreis getrennt ist. Ein Pufferspeicher könnte mit einem Port assoziiert sein oder zwischen mehreren Ports gemeinsam benutzt werden.
  • Wenn Datenpakete während Routing gespeichert werden, ist es wichtig schnellen und effizienten Zugriff auf die Speichereinrichtung, oder den Speicher, bereitzustellen, sodass Speicherzugriff nicht zu einer Quelle von Verzögerung und daher von Netzwerk-Leistungsdegradation wird. Die US A 5179667 offenbart eine an ein Netzwerk angeschlossene Zugriffssteuerungsvorrichtung.
  • Netzwerkschalter sind Einrichtungen, die Routing und Speicherung von Paketen zwischen Netzwerkkomponenten handhaben. Netzwerkschalter umfassen Eingangsports und Ausgangsports zum Anschluss an mehrfache Netzwerkkomponenten, die Daten zum Schalter senden und von diesem empfangen. Die den Schalter benutzenden Netzwerkkomponenten sind als Clients des Schalten bekannt. Ein Einzelner Schalter könnte einen einzelnen Speicher verwenden, um Daten von mehrfachen Clients zu speichern, die Daten mit unterschiedlichen Raten übertragen. Für einen Netzwerkschalter ist es wichtig Speicherzugriff von mehrfachen Clients verschiedener Datenratenfähigkeiten so zu handhaben, dass Speicherbandbreite maximiert wird. Die Notwendigkeit Speicherbandbreite zu maximieren, muss aber mit anderen Besorgnissen beim Entwerfen einer Netzwerkschalterarchitektur konkurrieren. Beispielsweise würde Bereitstellen eines breiteren Datenwegs von Clients zum Pufferspeicher die Speicherbandbreite verbessern, aber nur auf Kosten von extra Hardware und zusätzlicher Zusammenschaltung. Daher müssen beim Konstruieren einer Schalterarchitektur Kompromisse gemacht werden, sodass sie sowohl effizient als auch wirtschaftlich funktioniert.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es werden ein Verfahren und eine Vorrichtung zum Steuer des Zugriffs zu einem gemeinsamen Speicher in einem Netzwerksystem beschrieben. Die Vorrichtung weist mindestens einen schnellen Port-Schnittstellenstromkreis auf, wobei jeder eine schnelle Eingangsportschnittstelle umfasst, die konfiguriert ist, sequenziell Daten-, Adressen- und Befehlsinformation von einem Netzwerk-Client mit einer ersten Datenrate in Segmenten einer ersten Breite zu empfangen. Jede schnelle Eingangsportschnittstelle umfasst ein schnelles Schnittstellenregister, das konfiguriert ist, Daten- und Adresseninformation vorübergehend zu speichern. Jede schnelle Eingangsportschnittstelle umfasst weiter einen Befehlsdecodierstromkreis, der konfiguriert ist, die Befehlsinformation zu empfangen und, als Reaktion darauf, die Segmente von Daten- und Adresseninformation im schnellen Schnittstellenregister sequenziell zu speichern, bis das schnelle Schnittstellenregister voll ist, wobei das schnelle Schnittstellenregister weiter zum Auslesen parallel zum gemeinsamen Speicher konfiguriert ist. Die Vorrichtung weist außerdem mindestens einen langsamen Port-Schnittstellenstromkreis auf, wobei jeder konfiguriert ist, Daten-, Adressen- und Befehlsinformation von einem Netzwerk-Client mit einer zweiten Datenrate in Segmenten der ersten Breite zu empfangen und die Daten-, Adressen- und Befehlsinformation zu einem Speicherstromkreis zu senden, der den langsamen Port-Schnittstellenstromkreisen gemeinsam ist. Der gemeinsame Speicherstromkreis umfasst eine Mehrheit von langsamen Schnittstellenregistern, wobei die Datensegmente sequenziell in einem der langsamen Schnittstellenregister zur gleichen Zeit gespeichert werden wie die Inhalte eines anderen langsamen Schnittstellenregisters parallel zum gemeinsamen Speicher ausgelesen werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm eines Netzwerkschalterelements, das gemäß einer Ausführungsform der vorliegenden Erfindung einen Speicher-Controller aufweist.
  • 2 ist ein Blockdiagramm eines gemeinsamen Pufferspeicher-Controllers gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 3 ist ein Blockdiagramm einer schnellen, konfigurierbaren Portschnittstelle gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 4 ist ein Blockdiagramm einer langsamen Portschnittstelle gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 5 ist ein Blockdiagramm eines Schreibteils eines Zuteilen erster Ebene gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 6 ist ein Blockdiagramm eines Leseteils eines Zuteilen erster Ebene gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 7 ist ein Blockdiagramm eines Zuteilers/Schedulers zweiter Ebene gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Die 8 ist ein Diagramm mehrstufiger Arbitrierung gemäß einer Ausführungsform der Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Es wird ein Speicher-Controller beschrieben, der Zugriff auf einen gemeinsamen Pufferspeicher durch Netzwerk-Clients erlaubt. In einer Ausführungsform befindet sich ein Pufferspeicher-Controller (BMC) auf einem Schalterelementchip und maximiert Bandbreite eines gemeinsamen Speichers, teilweise durch Bereitstellen separater Schnittstellen für Ports, die Daten mit verschiedenen Datenraten übertragen. Speicherbandbreite wird weiter durch Pipeline-Betrieb von Datenhandhabung innerhalb des Pufferspeicher-Controllers und durch effizientes Planen von Lese- und Schreiboperationen zum gemeinsamen Pufferspeicher optimiert.
  • Die 1 ist ein vereinfachtes Blockdiagramm, das eine Architektur eines Schalterelements gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. Das Schalterelement 100 umfasst eine Schnittstelle 102 der zentralen Verarbeitungseinheit (CPU), eine Netzwerkschnittstelle 106, eine kaskadierende Schnittstelle 108 und einen Verwalter 110 für den gemeinsamen Speicher. Der Verwalter 110 für den gemeinsamen Speicher umfasst den gemeinsamen Pufferspeicher-Controller (BMC) 112.
  • Pakete könnten durch eine beliebige der drei Schnittstellen 106, 102 oder 108 in das Schalterelement 100 eintreten oder dieses verlassen. Kurz gesagt operiert die Netzwerkschnittstelle 106, gemäß dieser Ausführungsform, in Übereinstimmung mit dem Ethernet-Protokoll, um Ethernet-Pakete von einem Netzwerk (nicht gezeigt) zu empfangen und Ethernet-Pakete via einen oder mehrere externe Ports (nicht gezeigt) auf das Netzwerk zu übertragen. Eine optionale kaskadierende Schnittstelle 108 könnte eine oder mehrere interne Verbindungen (nicht gezeigt) zum Zusammenschalten von Schaltelementen umfassen, um größere Schalter zu schaffen.
  • Die CPU könnte Befehle oder Pakete via die CPU-Schnittstelle 102 an das Schalterelement 100 senden. Auf diese Weise könnten einer oder mehrere auf der CPU laufende Softwareprozesse, Einträge in eine externe Weiterleitungs- und Filterungsdatenbank (nicht gezeigt), wie Hinzufügen neuer Einträge und Annullieren unerwünschter Einträge, managen. In alternativen Ausführungsformen könnte die CPU aber mit direktem Zugriff auf eine Weiterleitungs- und Filterungsdatenbank versehen werden. Jedenfalls ähnelt der CPU-Port der CPU-Schnittstelle 102, für Paketweiterleitungszwecke, einem generischen Eingangsport in das Schalterelement 100 und könnte behandelt werden, als ob er einfach ein weiterer externer Netzwerkschnittstellenport wäre.
  • Die Netzwerkschnittstelle 106, die CPU-Schnittstelle 102 und die kaskadierende Schnittstelle 108 sind an den Verwalter 110 des gemeinsamen Speichers gekoppelt. Der Verwalter 110 des gemeinsamen Speichers stellt eine effiziente zentralisierte Schnittstelle zum externen gemeinsamen Speicher zum Puffer ankommender Pakete bereit.
  • In der vorliegenden Ausführungsform werden Pakete zentral gepuffert und vom Manager 110 für den gemeinsamen Speicher gemanagt. Der Manager 110 für den gemeinsamen Speicher verbindet jeden Eingangsport und Ausgangsport und führt für sie dynamische Speicherzuteilung bzw. -freigabe aus. Während Eingangspaketverarbeitung werden im externen gemeinsamen Speicher einer oder mehrere Puffer zugeteilt und ein ankommendes Paket wird vom Manager 110 für den gemeinsamen Speicher als Reaktion, beispielsweise, auf Befehle gespeichert, die von der Netzwerkschnittstelle 106 empfangen wurden. Anschließend wiedergewinnt der Manager 110 für den gemeinsamen Speicher, während Ausgangspaketverarbeitung, das Paket aus dem externen gemeinsamen Speicher und gibt Puffer frei, die nicht länger in Gebrauch sind. Um sicherzustellen, dass keine Puffer freigegeben werden, bis alle Ausgangsports die Übertragung der darin gespeicherten Daten beendet haben, verfolgt der Manager 110 für den gemeinsamen Speicher außerdem wem der Puffer gehört.
  • Die vorliegende Erfindung könnte in einem Schalterelement, wie Schalterelement 100 inbegriffen sein, das Drahtgeschwindigkeits-Routing und Weiterleitung von „Fast Ethernet" und „Gigabit Ethernet" Paketen bereitstellt. Es wird aber in Erwägung gezogen, dass die Schnittstellen vielleicht konfiguriert werden, um auch anderen Netzwerkprotokollen zu entsprechen. Außerdem wird erkannt, dass Funktionen möglicherweise anders als oben beschrieben aufgeteilt werden. Zum Beispiel könnten mehrfache Einheiten die dynamische Zuteilung, Freigabe und Verfolgung ausführen, die mit dem Manager für den gemeinsamen Speicher in der gezeigten Ausführungsform verbunden sind. Weiter können, obwohl das Schalterelement vorzugsweise hochintegriert ist und einen einzigen anwendungsspezifischen integrierten Stromkreis (ASIC), der leistungskritische Funktionen in Hardware umfasst, alternative Ausführungsformen einen Chipsatz einschließen, der zwei oder mehrere ASICs oder andere Typen logischer Bausteine oder Untersysteme umfasst. Abschließend wird erkannt, dass die Aufteilung von Funktionalität zwischen Hardware und Software ebenso modifiziert werden könnte.
  • Die 2 ist ein Blockdiagramm des Pufferspeicher-Controllers (BMC) 112 gemäß einer Ausführungsform. Im vorliegenden Ausführungsbeispiel steuert der BMC 112 Zugriff auf einen gemeinsamen SRAM-Speicher (nicht gezeigt) für eine Vielfalt von Ports in einem Netzwerkcomputersystem. Der BMC 112 steuert Zugriff auf einen gemeinsamen Speicher für langsame Ports 202, die mit einer relativ langsamen Datenrate im Vergleich zu anderen Ports, hierin als schnelle Ports bezeichnet, im Netzwerk arbeiten. Host-Bauelemente greifen ebenso auf den gemeinsamen Speicher durch den Host-Port 204 des BMC 112, gewöhnlich über einen lokalen Bus wie einem peripheren Komponentenschnittstellenbus (PCI) zu. Schnelle Ports 222 greifen ebenso durch den BCM 112 auf den gemeinsamen Speicher zu. Schnelle Ports 222 arbeiten mit einer relativ schnellen Datenrate im Vergleich zu den langsamen Ports 202. Konfigurierbare Ports 220 greifen durch den BMC 112 auf den gemeinsamen Speicher zu. Die konfigurierbaren Ports 220 sind Port, die sich konfigurieren lassen, um mit der Datenrate der langsamen Ports 202 oder mit der Datenrate der schnellen Ports 222 zu arbeiten. Einer Ausführungsform der vorliegenden Erfindung gemäß arbeiten die langsamen Ports 202 in Übereinstimmung mit dem Ethernet-Protokoll oder dem „Fast Ethernet"-Protokoll. In einer Ausführungsform befolgt der Host-Port 204 das PCI-Busprotokoll. Dieser Ausführungsform gemäß arbeiten die schnellen Ports 222 in Übereinstimmung mit einem „Gigabit Ethernet" Protokoll. Die „Fast Ethernet" Rate der langsamen Ports 202 beträgt 100 Mbps. In einer Ausführungsform wird eine Bandbreite von 100 Mbps für den Host-Port 204 zugeteilt. Die Datenrate der schnellen Gigabit-Ports 222 ist das Zehnfache der Datenrate der langsamen „Fast Ethernet" Ports 202 und des Host-Ports 204. In einer Ausführungsform der vorliegenden Erfindung ist der BMC 112 an drei schnelle (Gigabit) Ports, fünf programmierbare Ports, elf langsame (Fast Ethernet) Ports und einen Host-Port angeschlossen.
  • Der BMC 112 umfasst langsame Port-Schnittstellen 206 und schnelle/konfigurierbare Port-Schnittstellen 208. Wie nachstehend eingehender erörtert werden wird, handhabt der BMC 112 Transaktionen zwischen Ports, die mit unterschiedlichen Datenraten (in dieser Ausführungsform, Gigabit-Ports und "Fast Ethernet"Ports) arbeiten, verschieden, um die Bandbreite des gemeinsamen Speichers zu maximieren. Ein Aspekt dieser Bandbreitenmaximierung ist, wie in der 2 gezeigt, zweistufige Arbitrierung. Spezifisch können die langsamen Port-Schnittstellen 206 auf den gemeinsamen Speicher nur zugreifen, nach dem eine Zugriffsanforderung den Zuteiler 210 erster Ebene und den Zuteiler/Scheduler 214 zweiter Ebene passiert. Port-Schnittstellen, die fähig sind mit der Gigabitrate, wie schnelle/konfigurierbare Port-Schnittstellen 208, zu arbeiten, greifen auf den gemeinsamen Speicher durch den Zuteiler/Scheduler 214 zweiter Ebene zu. Der Zuteiler/Scheduler 214 zweiter Ebene entscheidet unter Anforderungen auf Zugriff auf den gemeinsamen Speicher und leitet Steuersignale an den SRAM-Controller 216 weiter. Wenn einem Schnittstellenport Zugriff auf einen gemeinsamen Speicher gewährt wird, sendet der Zuteiler/Scheduler 214 zweiter Ebene SRAM-Adressen-, Schreibdaten- (WDATA) und Schreib-Tag-Information (WTAG) zur Speicherung im gemeinsamen Speicherbaustein. Die Lese-Pipe 218 erleichtert Lesevorgänge vom gemeinsamen Speicher durch temporäres Speichern einer Portidentifizierung, die dem richtigen Port erlaubt, Lesedaten- (rd_data) und Lese-Taginformation (rd_tag) vom gemeinsamen Speicher zu empfangen.
  • Die 3 ist ein Blockdiagramm, das einen schnellen Port 222 zeigt, der mit einer schnellen/konfigurierbaren Portschnittstelle 208 verbunden ist. Die schnelle/konfigurierbare Portschnittstelle 208 ist ihrerseits mit der Lese-Pipe 218 und dem Zuteiler/Scheduler 214 zweiter Ebene gekoppelt. Der schnelle Port umfasst den schnellen Ausgangsport 222a und den schnellen Eingangsport 222b. Der Ausgangsport 222a ist, wie gezeigt, mit der Ausgangsschnittstellenschaltung 342 gekoppelt und der schnelle Eingangsport 222b ist mit der schnellen Eingangsschnittstellenschaltung 344 gekoppelt. Der schnelle Eingangsport 222b und der schnelle Ausgangsport 222a kommunizieren mit der schnellen/konfigurierbaren Portschnittstelle 208 des BMC 112 via ihre eigenen Befehls-, Adressen- und Datenbusse. Die schnelle Eingangsschnittstellenschaltung 344 führt nur Schreiboperationen zum gemeinsamen Speicher durch und die Ausgangsschnittstellenschaltung 342 führt nur Leseoperationen zum gemeinsamen Speicher durch.
  • Wenn ein mit dem schnellen Eingangsport 222b verbundener Netzwerk-Client eine Schreiboperation zum gemeinsamen Speicher anfordert, transferiert der Eingangsport 222b Daten-, Adressen- und Tag-Information in 16-Bit-Segmenten über Datenleitungen zum Register 330 wie gezeigt. In dieser Ausführungsform werden außerdem drei Befehlsbits zum Register 328 gesendet. Die Register 328 und 330 befinden sich in der schnellen Eingangsschnittstellenschaltung 344 für Synchronisationszwecke gesendet. In dieser Ausführungsform werden Daten in 128-Bit-Worten in den gemeinsamen Speicher geschrieben und gespeichert. Durch die Verwendung von Befehlsbits wird, gemäß der vorliegenden Erfindung, eine viel schmälere physikalische Schnittstelle zwischen Clients und dem gemeinsamen Speicher, in dieser Ausführungsform, 16-Bit statt 128-Bit, erzielt. Dies berücksichtigt viel weniger Verbindungs-Hardware, während effizienter Speicherzugriff beibehalten wird. Drei Befehlsbits lenken 16-Bit-Segmente von Daten, die in die schnelle Eingangsschnittstellenschaltung 344 eintreten, zu dem Datenhalteregister 334, Adressenhalteregister 338 und Tag-Halteregister 340. Drei Befehlsbits werden im schnellen Eingangsport 222b codiert und in der Befehlsdecodiermaschine finiten Status (fsm) 332 decodiert. Einer Ausführungsform gemäß können die Befehlsbits decodiert werden, um keine Operation, Schreiben der ersten Adresse, Schreiben der zweiten Adresse, Schreiben ersten Daten, wr_data, Schreiben des letzten Wortes eines Pakets oder Schreibstatus anzuzeigen. Dieser Ausführungsform gemäß sendet der schnelle Eingangsport 222b zwei „wr_addr" Befehle an den BMC 112, um eine 19-Bit-Adresse zu bilden. Der schnelle Eingangsport 222b sendet dann einen ersten Schreibdatenbefehl, um das erste 16-Bit-Datensegment auf dem Datenbus zur schnellen Eingangsschnittstellenschaltung 344 zu senden. Diese Daten werden im Datenhalteregister 334 gespeichert, das ein 16-Byte-Register ist. Der schnelle Eingangsport 222b fährt fort sieben zusätzliche „wr_cmd" Datensignale zu senden, bis das Halteregister 334 voll ist. Ein „wr_req" Signal wird dann generiert und an den Zuteiler/Scheduler zweiter Ebene 214 gesendet. Gleichzeitig wird ein Schreibwartesignal (wr_wait) an den schnellen Schnittstellenport 222b gesendet, was anzeigt, dass das Halterregister belegt ist und keine weiteren Daten annehmen kann. Das Signal „wr_wait" wird generiert durch Entladen der fsm 336 von einem „voll" Signal, das vom Befehlsdecodierer fsm 332 und einem Schreibbewilligungssignal (wr_gnt) vom Zuteiler 214 zweiter Ebene empfangen wurde.
  • Der Zuteiler/Scheduler 214 zweiter Ebene verwendet, in dieser Ausführungsform, einen Round-Robin-Arbitrierungsplan, um Zugriff zum schnellen Eingangsport 222b zu bewilligen. Der Zuteiler/Scheduler 214 zweiter Ebene steuert außerdem planmäßig die Adresse, die Daten und den Tag, die in den gemeinsamen Speicher zu schreiben sind. Adresse und Daten werden dann im folgenden Taktzyklus in den Speicher geschrieben. In der bevorzugten Ausführungsform wird SRAM-Technologie verwendet. Da die verwendete SRAM-Technologie voll nach dem Pipeline-Verfahren arbeitet, kann der Zuteiler/Scheduler 214 Rücken-an-Rücken-Schreiboperationen planmäßig steuern. Bei Erreichen des Endes eines Datenpakets sendet der schnelle Eingangsport 222b einen Schreibstatusbefehl zusammen mit der Statusinformation an die schnelle Eingangsschnittstellenschaltung 344. Die letzten Daten und der in den Paketspeicher zu schreibende Status wird dann von der schnellen Eingangsschnittstellenschaltung 344 planmäßig gesteuert.
  • Die Ausgangsschnittstellenschaltung 342 steuert Zugriff auf den gemeinsamen Speicher durch den schnellen Ausgangsport 222a für Leseoperationen aus dem gemeinsamen Speicher. Wenn ein mit dem schnellen Ausgangsport 222a verbundener Netzwerk-Client Zugriff auf den gemeinsamen Speicher erfordert, formuliert der schnelle Ausgangsport 222a Befehls- und Adressenbits, die zu den Register 302 bzw. 304 zu senden sind. Die Register 302 und 304 werden für den Zweck der Synchronisation verwendet. Drei Befehlsbits gelangen in den Befehlsdecodierer fsm 306 und werden decodiert. Abhängig von der Bedeutung der decodierten Befehlsbits werden in die Ausgangsportschnittstellenschaltung 342 eintretende 16-Bit-Adressensegmente in die Register 310 oder 312 geladen. Eines der Register 310 oder 312 hält eine aktuelle Adresse und das andere der zwei Register hält eine Adresse eines nächsten Pakets. Das die aktuelle Adresse haltende Register wird für jede Adresse des aktuellen Pakets inkrementiert, das zum Speicher geschrieben wird. Die erste Adresse des nächsten Pakets wird im anderen Register verfügbar gehalten, sodass keine Latenzzeit, während der Periode zwischen Schreiben des letzten Worts des aktuellen Pakets und dem ersten Wort des nächsten Pakets auftritt. Der Multiplexer 314 selektiert die aktuelle 19-Bit-Adresse, die im entsprechenden Register 310 oder 312 gespeichert ist, die, als nächste Leseadresse (rd_addr), an den Zuteiler/Scheduler 214 gesendet werden soll. Der Befehlsdecodierer fsm 306 sendet ein aktuelles voll (cfull) oder nächstes voll (nfull) Signal, wie jeweils anwendbar, um fsm 308 zu laden, wenn die aktuelle Adresse oder die nächste Adresse die Register 310 oder 312 füllt. Der Logikbaustein 324 empfängt einen „rd_tag" vom Speicher via Register 326 der Lese-Pipe 218, das den „rd_tag" für Synchronisationszwecke hält. Der Logikbaustein 324 verwendet den „rd_tag" um ein Paketende-Signal (eop) zum Laden der fsm 308 zu generieren. Laden der fsm 308 generiert ein Leseanforderungssignal (rd_req) zum Zuteiler/Scheduler 214 zweiter Ebene. Wenn die Arbitrierung für Zugriff auf den gemeinsamen Speicher beendet ist, sendet der Zuteiler/Scheduler 214 zweiter Ebene eine Lesebewilligung (rdgnt), um fsm 308 zu laden. Entladen der fsm 322 koordiniert das Entladen von Daten aus dem gemeinsamen Speicher durch die Lese-Pipe 218 zum schnellen Ausgangsport 222a. Lesedaten aus dem Speicher werden in 128-Bit-Worten zu einem der Register 318 oder 320 parallel geschaltet transferiert. Eines der Register 318 oder 320 wird, nach parallel geschaltetem Laden vom Speicher, in 16-Bit-Segmenten durch den Multiplexer 316 entladen. Wie durch Information von der Entlade fsm 322 und dem „rd_tag" gesteuert, handhabt die Ausgangsschnittstellenschaltung 342 effizient Doppelpuffern von Daten aus der Lese-Pipe 218, sodass die Bandbreite des gemeinsamen Speichers optimiert werden kann und gleichzeitig eine schmale Datenschnittstelle (16-Bits) zum schnellen Ausgangsport 222a beibehalten wird. Entladen der fsm 332 generiert außerdem Befehle und „rd_wait" Signale zum schnellen Ausgangsport 222a. Das „rd_wait" Signal funktioniert als ein Flusssteuersignal, das den schnellen Ausgangsport 222a informiert, dass er warten muss weitere „rd_reqs" zu senden, bis das „rd_wait" Signal aufgehoben ist.
  • Die 4 ist ein Blockdiagramm der langsamen Portschnittstelle 206. Die 4 zeigt den Anschluss der langsamen Portschnittstelle 206 an einen der langsamen Ports 202. Jeder langsame Port 202 weist einen langsamen Ausgangsport 202a und einen langsamen Eingangsport 202b, wie gezeigt, auf. Die langsame Portschnittstelle 206 kommuniziert außerdem mit der Lese-Pipe 218 und dem Zuteiler 210 erster Ebene. Gemäß der vorliegenden Erfindung wird Netzwerk-Clients effizienter Zugriff auf einen gemeinsamen Speicher bewilligt, die mit verschiedenen Datenraten arbeiten, teilweise, weil sich Daten, die zum gemeinsamen Speicher, von langsamen Clients durch einen langsamen Eingangsport geschrieben werden, physikalische Ressourcen teilen, während sich „wr_data" durch schnelle Eingangsports keine physikalischen Ressourcen teilen. In der beschriebenen Ausführungsform repräsentiert diese Anordnung eine Designwahl, die die Tatsache nutzt, dass sich die langsamen Daten ebenso effizient mit weniger dedizierten Hardware-Ressourcen handhaben lassen. Wie in der 4 gezeigt, enthält die langsame Portschnittstelle 206 keine Puffer- oder Steuerschaltung für „wr_data", die durch den langsamen Eingangsport 202b kommen. Das heißt, die langsame Portschnittstelle 206 besitzt keine zur schnellen Eingangsschnittstellenschaltung 344 der 3 analoge Schaltung. Stattdessen werden langsame Client-Eingangsport "rd_req" Befehls- und Datensignale direkt an den Zuteiler 210 erster Ebene gesendet und „wr_gnt" Signale werden direkt vom Zuteiler 210 erster Ebene zum langsamen Eingangsport 202b gesendet.
  • Die Ausgangsschnittstellenschaltung 442 arbeitet genauso, wie in Bezug auf die Ausgangsschnittstellenschaltung 342, mit einer Ausnahme, beschrieben. Die Ausgangsschnittstellenschaltung 442 der langsamen Portschnittstelle 206 muss Zugriff auf den gemeinsamen Speicher durch zwei Arbitrierungsebenen anstatt einer gewinnen. Im Besonderen werden die „rd_req" und „rd_addr" Signale zum Zuteiler 210 erster Ebene gesendet. Die „rdgnt" Signale werden vom Zuteiler/Scheduler 214 zweiter Ebene empfangen, wenn die Arbitrierung beendet ist.
  • Die 5 ist ein Diagramm, das Details des Teils des Zuteilen 210 erster Ebene zeigt, der Schreiboperationen zum gemeinsamen Speicher verarbeitet. Der Zuteiler 210a erster Ebene umfasst den Arbitrierungsstromkreis 510 sowie Befehls- und Datenmultiplexer 512 bzw. 514. Der Arbitrierungsstromkreis 510 empfängt, in dieser Ausführungsform, „wr_reqs" von elf Ports, die mit 100 Mbps arbeiten. In dieser Ausführungsform umfasst der Arbitrierungsstromkreis 510 außerdem „wr_reqs" von einem Host-Port, der mit der Datenrate der 100 Mbps-Ports arbeitet. In anderen Ausführungsformen bedient der Arbitrierungsstromkreis 510 unterschiedliche Zahlen verschiedener Porttypen, die mit unterschiedlichen Datenraten und in Übereinstimmung mit anderen Protokollen, als in den Ausführungen beschrieben, arbeiten. Der Arbitrierungsstromkreis 510 verwendet einen Round-Robin-Arbitrierungsplan, um einen speziellen Port auszuwählen, dem als nächstem Zugriff bewilligt wird. Bewilligungssignale 504 sind individuelle „wr_gnt" Signale, die vom Zuteiler/Scheduler 214 zweiter Ebene durch den Schreibzuteiler 210a erster Ebene an individuelle anfordernde Ports gesendet werden. Die Befehlsleitungen 506 haben jeweils ihren Ursprung in einem langsamen Eingangsport und transferieren Befehlsinformation in drei Bitsegmenten zum Multiplexer 512. Nach Beendigung der Arbitrierung bewirkt ein Selektier-Signal vom Arbitrierungsstromkreis 510, dass Befehlsinformation von einem der anfordernden langsamen Ports zum Laden der Statusmaschine 516 transferiert wird. Die Datenleitungen 508 haben jeweils ihren Ursprung in einem langsamen Eingangsport. Die Datenleitungen 508 transferieren jeweils Dateninformation in 16-Bit-Segmenten zum Multiplexer 514. Nach Beendigung der Arbitrierung wird die Befehlsinformation von einem der Ports vom Multiplexer 514, durch ein Auswahlsignal vom Arbitrierungsstromkreis 510, transferiert. Daten werden in 16-Bit-Segmenten vom Multiplexer 514 zu einem der „wr_data" Registers 520 oder 522 oder zu Registern 526 und 528, wie von den in der Ladestatusmaschine 516 decodierten Befehlsbits angeordnet, transferiert. Die Register 520 und 522 werden verwendet um Schreibdaten (fe_wr_data) in 128-Bit-Worte zu assemblieren. Die Register 528 werden verwendet um einen 16-Bit-Schreibtag (fe_wr_tag) zu assemblieren. Die Register 526 werden verwendet eine 19-Bit-Schreibadresse (fe_wr_addr) zu assemblieren. Unter der Kontrolle der Entladestatusmaschine 518 überträgt der Multiplexer 524 ein 128-Bit-Datenwort von einem der Register 520 oder 522, das an den gemeinsamen Speicher geschrieben werden soll. Die Entladestatusmaschine 518 überträgt eine Schreibanforderung (fe_wr_req) an den Zuteiler/Scheduler 214 zweiter Ebene und empfängt ein Schreibbewillingungssignal (fe_wr_gnt) vom Zuteiler/Scheduler 214 zweiter Ebene.
  • Die 6 ist ein Blockdiagramm eines Lesezuteilerteils 210b des Zuteilen 210 erster Ebene. Der Lesezuteiler 210b erster Ebene umfasst den Arbitrierungsstromkreis 608 und den Multiplexer 610. Die Leseanforderungsleitungen (rd_req) 602 tragen Anforderungssignale von elf langsamen (in dieser Ausführungsform, schnellen Ethernet) Ausgangsports und einem Host-Ausgangsport. Die Lesebewilligungsleitungen (rd_gnt) 604 tragen „rd_gnt" Signale vom Arbitrierungsstromkreis 608 zu individuellen Ports, die eine Leseoperation anfordern. Leseadressenleitungen (rd_addr) 606 tragen Leseadressen von 19 Bits von Anforderungsports. Eine 19-Bit-Leseadresse (fe_rd_addr) wird an den Zuteiler/Scheduler 214 zweiter Ebene durch ein Auswahlsignal vom Arbitrierungsstromkreis 608 zum Multiplexer 610 transferiert. Der Arbitrierungsstromkreis 608 transferiert eine einzige Leseanforderung (fe_rd_req) von einem der anfordernden Ports nach Beendigung der Round-Robin-Arbitrierung. Der Arbitrierungsstromkreis 608 empfängt ein Lesebewilligungssignal (fe_rd_gnt) vom Zuteiler/Scheduler 214 zweiter Ebene.
  • Die 7 ist ein Blockdiagramm des Zuteilers/Schedulers 214. Die 7 zeigt außerdem den SRAM-Controller 216, der an den Zuteiler/Scheduler 214 zweiter Ebene gekoppelt ist. Der Zuteiler/Scheduler 214 zweiter Ebene umfasst den Arbitrierungsstromkreis 702 sowie die Multiplexer 704, 706, 708 und 710 zum Empfangen von beziehungsweise „wr_addrs", „rd_addrs", „wr_data" bzw. „wr_tags". Die Anforderungsleitungen 728 übertragen „rd_reqs" und „wr_reqs" an den Arbitrierungsstromkreis 702. Es werden acht „wr_req" Signale zum Arbitrierungsstromkreis 702 gesendet. In dieser Ausführungsform repräsentieren die acht „wr_req" Signale Anforderungen von acht schnellen (Gigabit Ethernet) Ports oder drei Gigabit-Ports und fünf konfigurierbaren Ports, die als Gigabit-Ports konfiguriert sind. Ein „fe_wr_req" Signal gelangt vom Zuteiler 210 erster Ebene in den Arbitrierungsstromkreis 702. Der Arbitrierungsstromkreis 702 empfängt außerdem acht Leseanforderungssignale (rd_req), die den vorher beschriebenen acht „wr_req" Signalen entsprechen.
  • Abschließend empfängt der Arbitrierungsstromkreis 702 eine „fe_rd_req" vom Zuteiler 210 erster Ebene. Der Arbitrierungsstromkreis 702 führt, in dieser Ausführungsform, Round-Robin-Arbitrierung durch und gibt ein „fe_rd_gnt" Signal, ein „rd_gnt" Signal, ein „fe_wr_gnt" Signal und ein „a wr_gnt" Signal entsprechend aus. Der Arbitrierungsstromkreis 702 überträgt weiter ein Schreibbefehlssignal (wr_cmd) und ein Lesebefehlssignal (rd_cmd) wie entsprechend an den SRAM-Controller 216. Nach beendeter Arbitrierung überträgt der Arbitrierungsstromkreis 702 ein Schreibwählsignal (wr_sel) oder Lesewählsignal (rd_sel), wie von der aktuellen Operation benötigt, an die Multiplexer 704, 706, 708 und 710 wie gezeigt. Die „wr_addr" Leitungen 730 übertragen „wr_addr" Signale und ein „fe_wr_addr" Signal an den Multiplexer 704.
  • Wie in Bezug auf die Anforderungssignale 728 erläutert, werden in den gezeigten Ausführungsformen „wr_addr" Signale von acht Gigabit-Ports (direkt übertragen) und ein „fe_ar_addr" Signal vom Zuteiler 210 erster Ebene vom Multiplexer 704 empfangen. Ebenso werden „rd_addr" und "fe_rd_addr" Signale auf „rd_addr" Leitungen 732 zum Multiplexer 706 gesendet. Die „wr_data" Signale und „fe_wr_data" Signale werden auf den „wr_addr" Leitungen 734 zum Multiplexer 708 gesendet. Die „wr_tag" Signale und ein „fe_wr_tag" Signal werden auf den „wr_tag" Leitungen 736 zum Multiplexer 710 gesendet. Nach beendeter Arbitrierung selektiert der Multiplexer 712 eine einer 19-Bit-„wr_addr” oder einer 19-Bit-„rd_addr” zur Übertragung an das Register 714 und den SRAM-Controller 216. Außerdem wird, nach beendeter Arbitrierung, "wr_data" auf einer der Leitungen 734 durch die Synchronisationsregister 716, 718 und 722 auf den gemeinsamen Speicher übertragen. 16-Bits von "wr_tag" Information werden von einer der Leitungen 736 selektiert, die als SRAM-Tag-Information durch die Synchronisationsregister 722, 724 und 726 übertragen werden soll.
  • In der bevorzugten Ausführungsform wird ein gänzlich nach dem Pipeline-Verfahren arbeitender SRAM-Speicher, der Null-Busumkehrung unterstützt, als gemeinsamer Speicher benutzt. Deshalb wird keine Latenz auftreten, wenn ein Lesezyklus einem Schreibzyklus folgt. Dies erlaubt dem Zuteiler/Scheduler 214 zweiter Ebene, Anforderungen in beliebiger Reihenfolge zu planen. In einer Ausführungsform plant der Zuteiler/Scheduler 214 zweiter Ebene Leseanforderungen zusammen, gefolgt von Schreibanforderungen. In dieser Ausführungsform wird, bei Verwendung eines Speichers, der Leistungsdegradation beim Wechseln zwischen Lese- und Schreibtransaktionen erleidet, diese Degradation minimiert.
  • Die 8 ist ein vereinfachtes Diagramm zweistufiger Arbitrierung für Zugriff auf den gemeinsamen Speicher gemäß einer Ausführungsform. In dieser Ausführungsform werden Leseanforderungen und Schreibanforderungen von den folgenden Ports unterstützt: Drei schnellen Ports 222; fünf konfigurierbaren Ports 220; elf langsamen Ports 202 und einem Host-Port 204. Wie in der 8 gezeigt, handhaben der Zuteiler 210 erster Ebene und der Zuteiler/Scheduler 214 zweiter Ebene Leseanforderungen und Schreibanforderungen von schnellen und langsamen Ports, die in dieser Figur als Gigabit Ethernet (GE) und Fast Ethernet (FE) bezeichnet sind. Die FE-Leseanforderungssignale (FErd) 806 und das Host-Leseprozessanforderungssignal (HRP) 808 werden vom Lesezuteiler 210b erster Ebene auf eine Round-Robin-Weise arbitriert. Infolge dieser Arbitrierung wird eine einzelne Ferd-Anforderung zum Zuteiler/Scheduler 214 zweiter Ebene gespeist. Der Zuteiler/Scheduler 214 zweiter Ebene arbitriert zwischen den Ergebnissen der Arbitrierung, die vom Zuteiler 210b erster Ebene durchgeführt wurde, drei GE-Leseanforderungen (GErd) 802 und fünf konfigurierbaren GE/FE-Leseanforderungen (GE/FErd) 804. Die zweistufige Arbitrierung für Schreibanforderungen wird auf ähnliche Weise gehandhabt. Wie gezeigt, arbitriert der Schreibzuteiler 210a zwischen FE-Schreibanforderungen (FEwr) 814 und einer Host-Sendeprozessanforderung (HTP) 816. Der Zuteiler/Scheduler 214 zweiter Ebene arbitriert zwischen den Ergebnissen der Arbitrierung, die vom Zuteiler 210a erster Ebene durchgeführt wurde und GE-Schreibanforderungen (GEwr) 810 und GE/FE-Schreibanforderungen (GE/FEwr) 812. Auf diese Weise wird Speicherbandbreite optimiert und Ressourcen werden konserviert.
  • In der, in der 8 gezeigten Ausführungsform werden Zugriffanforderungen auf den gemeinsamen Speicher in der Reihenfolge, wie von links nach rechts gezeigt, mit Leseanforderungen zeitmäßig zuerst, gefolgt von Schreibanforderungen geplant. Diese Anordnung minimiert Wartezustände für Speicher, die Wartezuständen erleiden, wenn zwischen Lese- und Schreibzugriffen gewechselt wird. Andere Ausführungsformen arrangieren die Reihenfolge von Lese- und Schreiboperationen auf andere Art und ziehen immer noch Nutzen aus der Effizienz des Plans der zweistufigen Arbitrierung.
  • Die vorliegende Erfindung wurde in Bezug auf spezifische beispielhafte Ausführungen beschrieben. Verschiedene Modifikationen und Änderungen könnten aber von Fachleuten vorgenommen werden ohne vom Umfang der Erfindung, wie in den folgenden Patentansprüchen dargelegt, abzuweichen. Die vorliegende Erfindung ist, beispielsweise, nicht auf die Verwendung mit zwei Porttypen, die auf einen gemeinsamen Speicher mit unterschiedlichen Datenraten zugreifen oder auf zwei unterschiedliche Datenraten oder auf die speziellen Datenraten der beschriebenen Ausführungsformen begrenzt. Die vorliegende Erfindung ist nicht auf Verwendung mit einem Ethernet-Netzwerkprotokoll begrenzt. Die vorliegende Erfindung sollte deshalb durch die folgenden Patentansprüche definiert werden.

Claims (15)

  1. Vorrichtung zum Steuern des Zugriffs zu einem gemeinsamen Speicher in einem Netzwerksystem, umfassend: Mindestens einen schnellen Portschnittstellenstromkreis, wobei jeder eine schnelle Eingabeportschnittstelle umfasst, die konfiguriert ist, sequenziell Daten-, Adressen- und Befehlsinformation von einem Netzwerk-Client mit einer ersten Datenrate in Segmenten einer ersten Breite zu empfangen, wobei jede schnelle Eingabeportschnittstelle umfasst: ein schnelles Schnittstellenregister, das konfiguriert ist, die Daten- und Adresseninformation vorübergehend zu speichern; und einen Befehlsdecodierstromkreis, der konfiguriert ist, die Befehlsinformation zu empfangen und, als Reaktion darauf, die Segmente von Daten- und Adresseninformation im schnellen Schnittstellenregister sequenziell zu speichern, bis das schnelle Schnittstellenregister voll ist, wobei das schnelle Schnittstellenregister weiter zum Auslesen parallel zum gemeinsamen Speicher konfiguriert ist; und mindestens einen langsamen Portschnittstellenstromkreis, wobei jeder konfiguriert ist, Daten-, Adressen- und Befehlsinformation von einem Netzwerk-Client mit einer zweiten Datenrate in Segmenten der ersten Breite zu empfangen und die Daten-, Adressen- und Befehlsinformation zu einem Speicherstromkreis zu senden, der den langsamen Portschnittstellenstromkreisen gemeinsam ist, wobei der gemeinsame Speicherstromkreis eine Mehrheit von langsamen Schnittstellenregistern umfasst, wobei die Datensegmente sequenziell in einem der langsamen Schnittstellenregister zur gleichen Zeit gespeichert werden, zu der die Inhalte eines anderen langsamen Schnittstellenregisters parallel zum gemeinsamen Speicher ausgelesen werden.
  2. Vorrichtung nach Anspruch 1, wobei der langsame Portschnittstellenstromkreis weiter eine Ausgabeportschnittstelle einschließlich einer Mehrheit von Ausgabeschrittstellenregistern umfasst, wobei eines der Ausgabeschnittstellenregister konfiguriert ist, Daten parallel vom gemeinsamen Speicher zur gleichen Zeit zu empfangen, zu der die Inhalte eines weiteren der Ausgabeschnittstellenregister in sequenziellen Segmenten der ersten Breite an einen Ausgabeport ausgegeben werden.
  3. Vorrichtung nach Anspruch 2, wobei der schnelle Portschnittstellenstromkreis weiter die Ausgabeportschnittstelle umfasst.
  4. Vorrichtung nach Anspruch 3, die weiter einen Ablaufplanungsstromkreis umfasst, der an den schnellen Portschnittstellenstromkreis und an den gemeinsamen Speicherstromkreis gekoppelt ist, der Anforderungen für Lese- und Schreiboperationen an den gemeinsamen Speicher empfängt, wobei der Ablaufplanungsstromkreis konfiguriert ist, die Operationen so zu planen, dass alle Leseoperationen beendet sind, bevor Schreiboperationen beendet werden.
  5. Vorrichtung nach Anspruch 4, die weiter ein Speichersteuergerät umfasst, das an den Ablaufplanungsstromkreis und an den gemeinsamen Speicher gekoppelt ist, wobei das Speichersteuergerät konfiguriert ist, eine Speicheradresse vom Ablaufplanungsstromkreis zu empfangen und Befehle an den gemeinsamen Speicher auszugeben.
  6. Vorrichtung nach Anspruch 3, wobei die Ausgabeportschnittstelle weiter einen Befehlsdecodierstromkreis umfasst, der konfiguriert ist, die Befehlsinformation zu empfangen und zu decodieren und, als Reaktion darauf, eine Leseadresse in einem Leseadressenregister zu assemblieren und eine Leseanforderung an den gemeinsamen Speicher zu generieren.
  7. Vorrichtung nach Anspruch 6, wobei die Ausgabeportschnittstelle weiter Ausgabedatenregister umfasst, die an den gemeinsamen Speicher und einen Flusssteuerungsstromkreis gekoppelt sind, wobei die Ausgabedatenregister Daten vom gemeinsamen Speicher empfangen und die Daten von einem der Ausgabedatenregister an einen Ausgabeport in Segmenten der ersten Breite ausgegeben werden und der Flusssteuerstromkreis gibt ein Lesewartesignal an den Ausgabeport aus, wenn Daten in einem Ausgabedatenregister nicht fertig sind.
  8. Vorrichtung nach Anspruch 7, die weiter eine Lese-Pipe umfasst, die eine Port-Identifikation von einem Ausgabeport empfängt, der ein Lesen anfordert, und gibt ein Lese-Tag an den Flusssteuerstromkreis aus, das einen Port anzeigt, an den Daten aus den Ausgabedatenregistern gesendet werden.
  9. Vorrichtung nach Anspruch 1, wobei die erste Breite sechzehn Bits ist und wobei eine Breite des schnellen Schnittstellenregisters und eine Breite jedes langsamen Schnittstellenregisters einer zweiten Breite von achtmal der ersten Breite sind.
  10. Vorrichtung nach Anspruch 6, wobei die Ausgabeportschnittstelle mehrfache Leseadressenregister umfasst, die ein aktuelles Adressenregister, das konfiguriert ist, eine aktuelle Leseadresse zu speichern und ein nächstes Adressenregister, das konfiguriert ist, eine nächste Paketadresse zu speichern, einschließt.
  11. Vorrichtung nach Anspruch 10, wobei das aktuelle Adressenregister weiter konfiguriert ist, für jedes Schreiben von Daten von einem aktuell auftretenden Paket zum gemeinsamen Speicher, inkrementiert zu werden.
  12. Vorrichtung nach Anspruch 11, die weiter einen Multiplexer umfasst, der konfiguriert ist, eine Adresse aus einem der mehrfachen Leseregister zu selektieren, die an den gemeinsamen Speicher gesendet werden soll.
  13. Vorrichtung nach Anspruch 10, wobei die erste Breite sechzehn Bits ist, die Datenpufferregister 128 Bits umfassen und eine Leseadresse ein Paket adressiert, das mehrfache 128-Bit-Datenwörter umfasst.
  14. Vorrichtung nach Anspruch 1, wobei die schnelle Eingabeportschnittstelle weiter einen, an den gemeinsamen Speicher gekoppelten, Flusssteuerstromkreis umfasst, der konfiguriert ist, ein „Voll"-Signal vom Befehlsdecodierstromkreis zu empfangen, wenn das schnelle Schnittstellenregister voll ist und, als Reaktion darauf, ein Schreib-Wartesignal an einen Port zu senden, der eine Schreiboperation anfordert.
  15. Vorrichtung nach Anspruch 14, wobei die schnelle Eingabeportschnittstelle weiter ein Adressenregister und ein Tag-Register umfasst, die konfiguriert sind eine Adresse und ein Tag zu speichern, die mit Daten im schnellen Schnittstellenregister assoziiert und konfiguriert sind, entsprechend einem Signal vom Befehlsdecodierstromkreis in sequenzielle Segmente der ersten Breite geladen zu werden.
DE69838387T 1997-06-30 1998-06-24 Verfahren und vorrichtung in einem paketenleitweglenkungsschalter um den zugriff zu einem gemeinsamen speicher auf verschiedenen datenraten zu steuern Expired - Lifetime DE69838387T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US885154 1992-05-18
US08/885,154 US6052738A (en) 1997-06-30 1997-06-30 Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory
PCT/US1998/013176 WO1999000819A2 (en) 1997-06-30 1998-06-24 Packet routing switch for controlling access at different data rates to a shared memory

Publications (2)

Publication Number Publication Date
DE69838387D1 DE69838387D1 (de) 2007-10-18
DE69838387T2 true DE69838387T2 (de) 2008-05-29

Family

ID=25386275

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69838387T Expired - Lifetime DE69838387T2 (de) 1997-06-30 1998-06-24 Verfahren und vorrichtung in einem paketenleitweglenkungsschalter um den zugriff zu einem gemeinsamen speicher auf verschiedenen datenraten zu steuern

Country Status (6)

Country Link
US (1) US6052738A (de)
EP (1) EP0993680B1 (de)
JP (1) JP4124491B2 (de)
AT (1) ATE372585T1 (de)
DE (1) DE69838387T2 (de)
WO (1) WO1999000819A2 (de)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256716B1 (en) * 1998-12-10 2001-07-03 Sun Microsystems, Inc. Apparatus, system and method for reducing bus contention during consecutive read-write operations
US6334159B1 (en) * 1998-12-22 2001-12-25 Unisys Corporation Method and apparatus for scheduling requests within a data processing system
US6611502B1 (en) 1999-01-15 2003-08-26 3Com Corportion Spanning tree with rapid propagation of topology changes
US6771610B1 (en) 1999-01-19 2004-08-03 3Com Corporation Spanning tree with protocol for bypassing port state transition timers
US6535490B1 (en) 1999-03-04 2003-03-18 3Com Corporation High availability spanning tree with rapid reconfiguration with alternate port selection
US7643481B2 (en) 1999-03-17 2010-01-05 Broadcom Corporation Network switch having a programmable counter
US6850521B1 (en) * 1999-03-17 2005-02-01 Broadcom Corporation Network switch
US6442137B1 (en) * 1999-05-24 2002-08-27 Advanced Micro Devices, Inc. Apparatus and method in a network switch for swapping memory access slots between gigabit port and expansion port
US6501734B1 (en) * 1999-05-24 2002-12-31 Advanced Micro Devices, Inc. Apparatus and method in a network switch for dynamically assigning memory interface slots between gigabit port and expansion port
US7552440B1 (en) * 1999-09-28 2009-06-23 Rockwell Automation Technologies, Inc. Process communication multiplexer
US6601105B1 (en) 1999-11-09 2003-07-29 International Business Machines Corporation Method and system for controlling information flow between a producer and multiple buffers in a high frequency digital system
US6604145B1 (en) * 1999-11-09 2003-08-05 International Business Machines Corporation Method and system for controlling information flow in a high frequency digital system from a producer to a buffering consumer via an intermediate buffer and a shared data path
US6598086B1 (en) * 1999-11-09 2003-07-22 International Business Machines Corporation Method and system for controlling information flow in a high frequency digital system from a producer to a buffering consumer via an intermediate buffer
US6606666B1 (en) 1999-11-09 2003-08-12 International Business Machines Corporation Method and system for controlling information flow between a producer and a buffer in a high frequency digital system
US7061907B1 (en) 2000-09-26 2006-06-13 Dell Products L.P. System and method for field upgradeable switches built from routing components
US6963569B1 (en) 2000-12-29 2005-11-08 Cisco Technology, Inc. Device for interworking asynchronous transfer mode cells
US7330892B2 (en) * 2001-09-07 2008-02-12 Network Appliance, Inc. High-speed data transfer in a storage virtualization controller
US7472231B1 (en) 2001-09-07 2008-12-30 Netapp, Inc. Storage area network data cache
DE10208129B4 (de) * 2002-02-26 2005-02-24 Infineon Technologies Ag Schaltung und Verfahren zur Datenratenanpassung bei variablem Ratenverhältnis mit einstellbarer Pufferspeicherpartitionierung
US7243134B2 (en) * 2002-06-25 2007-07-10 Motorola, Inc. Server-based navigation system having dynamic transmittal of route information
US6895481B1 (en) 2002-07-03 2005-05-17 Cisco Technology, Inc. System and method for decrementing a reference count in a multicast environment
US20040027989A1 (en) * 2002-07-29 2004-02-12 Brocade Communications Systems, Inc. Cascade credit sharing for fibre channel links
US20040230860A1 (en) * 2003-04-30 2004-11-18 Brocade Communications Systems, Inc. Method and devices using path numbering in a fibre channel network
US20050066097A1 (en) * 2003-09-04 2005-03-24 Matsushita Electric Industrial Co., Ltd. Resource management apparatus
US8769164B2 (en) * 2003-09-18 2014-07-01 International Business Machines Corporation Methods and apparatus for allocating bandwidth for a network processor
JP4778199B2 (ja) * 2004-02-26 2011-09-21 富士通株式会社 データ転送装置及びデータ転送方法
JP4360300B2 (ja) * 2004-08-10 2009-11-11 富士通株式会社 記憶制御装置及び制御方法
KR100712511B1 (ko) * 2005-05-27 2007-04-27 삼성전자주식회사 호스트와 적어도 2개의 서로 다른 속도의 데이터 통신이가능한 메모리 장치 및 이를 이용하는 데이터 통신 시스템
US20080059674A1 (en) * 2006-09-01 2008-03-06 Jiaxiang Shi Apparatus and method for chained arbitration of a plurality of inputs
US7624244B2 (en) * 2007-06-22 2009-11-24 International Business Machines Corporation System for providing a slow command decode over an untrained high-speed interface
US7979616B2 (en) * 2007-06-22 2011-07-12 International Business Machines Corporation System and method for providing a configurable command sequence for a memory interface device
US8194548B2 (en) * 2007-12-17 2012-06-05 Broadcom Corporation Method and system for duty cycling portions of a network device based on aggregate throughput of the device
US8984198B2 (en) * 2009-07-21 2015-03-17 Microchip Technology Incorporated Data space arbiter
US9875211B2 (en) * 2015-06-04 2018-01-23 Synaptics Incorporated Signal conditioner for high-speed data communications
US10922258B2 (en) * 2017-12-22 2021-02-16 Alibaba Group Holding Limited Centralized-distributed mixed organization of shared memory for neural network processing
CN110825312B (zh) * 2018-08-10 2023-06-23 昆仑芯(北京)科技有限公司 数据处理装置、人工智能芯片及电子设备
US11606587B2 (en) * 2020-09-04 2023-03-14 Dish Network Technologies India Private Limited Embeddable media playback interaction sharing
CN112558979A (zh) * 2020-12-09 2021-03-26 深圳国人无线通信有限公司 实现不同层面之间数据交互的方法

Family Cites Families (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4262357A (en) * 1979-07-09 1981-04-14 Burroughs Corporation Data processing system incorporating arbiters and selectors to allocate transmissions by multiple devices on a bus
GB8407102D0 (en) * 1984-03-19 1984-04-26 Int Computers Ltd Interconnection of communications networks
US4652874A (en) * 1984-12-24 1987-03-24 Motorola, Inc. Serial communication interface for a local network controller
JPS62243057A (ja) * 1986-04-16 1987-10-23 Hitachi Ltd フアイル転送管理方式
US4737953A (en) * 1986-08-04 1988-04-12 General Electric Company Local area network bridge
US4850042A (en) * 1987-04-14 1989-07-18 Westinghouse Electric Corp. Dual media local area network interfacing
US4807111A (en) * 1987-06-19 1989-02-21 International Business Machines Corporation Dynamic queueing method
US4811337A (en) * 1988-01-15 1989-03-07 Vitalink Communications Corporation Distributed load sharing
US4899333A (en) * 1988-03-31 1990-02-06 American Telephone And Telegraph Company At&T Bell Laboratories Architecture of the control of a high performance packet switching distribution network
US5179667A (en) * 1988-09-14 1993-01-12 Silicon Graphics, Inc. Synchronized DRAM control apparatus using two different clock rates
US4922503A (en) * 1988-10-28 1990-05-01 Infotron Systems Corporation Local area network bridge
US4933938A (en) * 1989-03-22 1990-06-12 Hewlett-Packard Company Group address translation through a network bridge
US5220562A (en) * 1989-05-12 1993-06-15 Hitachi, Ltd. Bridge apparatus and a communication system between networks using the bridge apparatus
US5179557A (en) * 1989-07-04 1993-01-12 Kabushiki Kaisha Toshiba Data packet communication system in which data packet transmittal is prioritized with queues having respective assigned priorities and frequency weighted counting of queue wait time
US5210746A (en) * 1990-04-16 1993-05-11 Motorola, Inc. Communication system network having communication system fallback operation
US5301333A (en) * 1990-06-14 1994-04-05 Bell Communications Research, Inc. Tree structured variable priority arbitration implementing a round-robin scheduling policy
US5309437A (en) * 1990-06-29 1994-05-03 Digital Equipment Corporation Bridge-like internet protocol router
US5231633A (en) * 1990-07-11 1993-07-27 Codex Corporation Method for prioritizing, selectively discarding, and multiplexing differing traffic type fast packets
US5150358A (en) * 1990-08-23 1992-09-22 At&T Bell Laboratories Serving constant bit rate traffic in a broadband data switch
US5481540A (en) * 1990-08-24 1996-01-02 At&T Corp. FDDI bridge frame learning and filtering apparatus and method
US5251205A (en) * 1990-09-04 1993-10-05 Digital Equipment Corporation Multiple protocol routing
US5353412A (en) * 1990-10-03 1994-10-04 Thinking Machines Corporation Partition control circuit for separately controlling message sending of nodes of tree-shaped routing network to divide the network into a number of partitions
CA2065578C (en) * 1991-04-22 1999-02-23 David W. Carr Packet-based data compression method
US5500860A (en) * 1991-06-14 1996-03-19 Digital Equipment Corporation Router using multiple hop redirect messages to enable bridge like data forwarding
US5420862A (en) * 1991-06-14 1995-05-30 Digital Equipment Corporation Router using remote address resolution to enable bridge like data forwarding
US5392432A (en) * 1991-08-27 1995-02-21 At&T Corp. Method for automatic system resource reclamation for object-oriented systems with real-time constraints
CA2092134C (en) * 1992-03-24 1998-07-21 Anthony J. Mazzola Distributed routing network element
US5313454A (en) * 1992-04-01 1994-05-17 Stratacom, Inc. Congestion control for cell networks
US5343471A (en) * 1992-05-11 1994-08-30 Hughes Aircraft Company Address filter for a transparent bridge interconnecting local area networks
US5742760A (en) * 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
US5432907A (en) * 1992-05-12 1995-07-11 Network Resources Corporation Network hub with integrated bridge
US5457681A (en) * 1992-06-05 1995-10-10 Washington University ATM-Ethernet portal/concentrator
US5425028A (en) * 1992-07-16 1995-06-13 International Business Machines Corporation Protocol selection and address resolution for programs running in heterogeneous networks
US5291482A (en) * 1992-07-24 1994-03-01 At&T Bell Laboratories High bandwidth packet switch
US5490252A (en) * 1992-09-30 1996-02-06 Bay Networks Group, Inc. System having central processor for transmitting generic packets to another processor to be altered and transmitting altered packets back to central processor for routing
JP3104429B2 (ja) * 1992-10-08 2000-10-30 株式会社日立製作所 コピー機能を有する共通バッファ形atmスイッチ及びそのコピー方法
US5649109A (en) * 1992-10-22 1997-07-15 Digital Equipment Corporation Apparatus and method for maintaining forwarding information in a bridge or router using multiple free queues having associated free space sizes
US5404538A (en) * 1992-10-28 1995-04-04 International Business Machines Corporation Method and apparatus for multilevel bus arbitration
US5410722A (en) * 1993-01-21 1995-04-25 Conner Peripherals, Inc. Queue system for dynamically allocating and moving memory registers between a plurality of pseudo queues
US5459714A (en) * 1993-02-22 1995-10-17 Advanced Micro Devices, Inc. Enhanced port activity monitor for an integrated multiport repeater
US5485578A (en) * 1993-03-08 1996-01-16 Apple Computer, Inc. Topology discovery in a multiple-ring network
US5386413A (en) * 1993-03-19 1995-01-31 Bell Communications Research, Inc. Fast multilevel hierarchical routing table lookup using content addressable memory
JPH077524A (ja) * 1993-04-06 1995-01-10 Siemens Ag 通信加入者のアドレス識別子へのアクセス方法
AU675302B2 (en) * 1993-05-20 1997-01-30 Nec Corporation Output-buffer switch for asynchronous transfer mode
US5426736A (en) * 1993-05-26 1995-06-20 Digital Equipment Corporation Method and apparatus for processing input/output commands in a storage system having a command queue
US5396602A (en) * 1993-05-28 1995-03-07 International Business Machines Corp. Arbitration logic for multiple bus computer system
US5394402A (en) * 1993-06-17 1995-02-28 Ascom Timeplex Trading Ag Hub for segmented virtual local area network with shared media access
JP2546505B2 (ja) * 1993-06-23 1996-10-23 日本電気株式会社 Cladにおけるアドレス学習装置
US5555405A (en) * 1993-07-06 1996-09-10 Digital Equipment Corporation Method and apparatus for free space management in a forwarding database having forwarding entry sets and multiple free space segment queues
US5515376A (en) * 1993-07-19 1996-05-07 Alantec, Inc. Communication apparatus and methods
US5473607A (en) * 1993-08-09 1995-12-05 Grand Junction Networks, Inc. Packet filtering for data networks
US5422838A (en) * 1993-10-25 1995-06-06 At&T Corp. Content-addressable memory with programmable field masking
US5485455A (en) * 1994-01-28 1996-01-16 Cabletron Systems, Inc. Network having secure fast packet switching and guaranteed quality of service
JP2713153B2 (ja) * 1994-03-09 1998-02-16 日本電気株式会社 ブリッジ装置
JPH07254906A (ja) * 1994-03-16 1995-10-03 Mitsubishi Electric Corp 優先処理機能を有するシフトレジスタ、それを用いたパケット通信用スイッチング装置及びそれを用いたatmネットワーク並びに優先処理を伴うパケット通信方式及び優先処理を伴うatm通信方式
JP3542159B2 (ja) * 1994-03-17 2004-07-14 株式会社日立製作所 マルチプロセッサ構造のブリッジ
US5509123A (en) * 1994-03-22 1996-04-16 Cabletron Systems, Inc. Distributed autonomous object architectures for network layer routing
US5459717A (en) * 1994-03-25 1995-10-17 Sprint International Communications Corporation Method and apparatus for routing messagers in an electronic messaging system
EP0676878A1 (de) * 1994-04-07 1995-10-11 International Business Machines Corporation Effizientes Punkt zu Punkt und Punkt zu Mehrpunkt Weglenkungsverfahren für programmierbare Vermittlungsknoten in Hochgeschwindigkeits-Datenübertragungsnetzen
EP0680179B1 (de) * 1994-04-28 2001-09-05 Hewlett-Packard Company, A Delaware Corporation Mehrfachsendeeinrichtung
EP0680173B1 (de) * 1994-04-28 2003-09-03 Hewlett-Packard Company, A Delaware Corporation Mehrfachsendeeinrichtung
EP0684716B1 (de) * 1994-05-25 2002-02-27 International Business Machines Corporation Datenübertragungsnetz und Verfahren zum Betreiben des Netzes
US5461611A (en) * 1994-06-07 1995-10-24 International Business Machines Corporation Quality of service management for source routing multimedia packet networks
US5617421A (en) * 1994-06-17 1997-04-01 Cisco Systems, Inc. Extended domain computer network using standard links
US5583981A (en) * 1994-06-28 1996-12-10 Microsoft Corporation Method and system for changing the size of edit controls on a graphical user interface
EP0691769A1 (de) * 1994-07-07 1996-01-10 International Business Machines Corporation System zur Emulation geschalteter Sprachverbindungen in einem Paketvermittlungsnetz
US5751967A (en) * 1994-07-25 1998-05-12 Bay Networks Group, Inc. Method and apparatus for automatically configuring a network device to support a virtual network
US5640605A (en) * 1994-08-26 1997-06-17 3Com Corporation Method and apparatus for synchronized transmission of data between a network adaptor and multiple transmission channels using a shared clocking frequency and multilevel data encoding
US5619500A (en) * 1994-09-01 1997-04-08 Digital Link Corporation ATM network interface
US5594727A (en) * 1994-09-19 1997-01-14 Summa Four, Inc. Telephone switch providing dynamic allocation of time division multiplex resources
US5490139A (en) * 1994-09-28 1996-02-06 International Business Machines Corporation Mobility enabling access point architecture for wireless attachment to source routing networks
US5675741A (en) * 1994-10-25 1997-10-07 Cabletron Systems, Inc. Method and apparatus for determining a communications path between two nodes in an Internet Protocol (IP) network
US5784573A (en) * 1994-11-04 1998-07-21 Texas Instruments Incorporated Multi-protocol local area network controller
KR0132960B1 (ko) * 1994-12-22 1998-04-21 양승택 망 노드 폭주상태 결정장치 및 방법
JP3099663B2 (ja) * 1995-02-09 2000-10-16 株式会社デンソー 通信システム
US5706472A (en) * 1995-02-23 1998-01-06 Powerquest Corporation Method for manipulating disk partitions
US5561666A (en) * 1995-03-06 1996-10-01 International Business Machines Corporation Apparatus and method for determining operational mode for a station entering a network
US5633865A (en) * 1995-03-31 1997-05-27 Netvantage Apparatus for selectively transferring data packets between local area networks
US5561791A (en) * 1995-04-10 1996-10-01 Digital Equipment Corporation Method and apparatus for conditioning timed program independent of transport timing
US5608726A (en) * 1995-04-25 1997-03-04 Cabletron Systems, Inc. Network bridge with multicast forwarding table
JP2770782B2 (ja) 1995-05-31 1998-07-02 日本電気株式会社 Lan間接続装置
US5619661A (en) * 1995-06-05 1997-04-08 Vlsi Technology, Inc. Dynamic arbitration system and method
US5734865A (en) * 1995-06-07 1998-03-31 Bull Hn Information Systems Inc. Virtual local area network well-known port routing mechanism for mult--emulators in an open system environment
US5636371A (en) * 1995-06-07 1997-06-03 Bull Hn Information Systems Inc. Virtual network mechanism to access well known port application programs running on a single host system
US5790808A (en) 1995-07-06 1998-08-04 3 Com Active topology maintenance in reconfiguring bridged local area networks with state transition with forgetting interval
US5651002A (en) * 1995-07-12 1997-07-22 3Com Corporation Internetworking device with enhanced packet header translation and memory
US5754540A (en) * 1995-07-18 1998-05-19 Macronix International Co., Ltd. Expandable integrated circuit multiport repeater controller with multiple media independent interfaces and mixed media connections
US5691984A (en) * 1995-08-15 1997-11-25 Honeywell Inc. Compact, adaptable brouting switch
US5740175A (en) * 1995-10-03 1998-04-14 National Semiconductor Corporation Forwarding database cache for integrated switch controller
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
US5684800A (en) * 1995-11-15 1997-11-04 Cabletron Systems, Inc. Method for establishing restricted broadcast groups in a switched network
US5754801A (en) * 1995-11-20 1998-05-19 Advanced Micro Devices, Inc. Computer system having a multimedia bus and comprising a centralized I/O processor which performs intelligent data transfers
US5740375A (en) * 1996-02-15 1998-04-14 Bay Networks, Inc. Forwarding internetwork packets by replacing the destination address
US5781549A (en) * 1996-02-23 1998-07-14 Allied Telesyn International Corp. Method and apparatus for switching data packets in a data network
US5724358A (en) * 1996-02-23 1998-03-03 Zeitnet, Inc. High speed packet-switched digital switch and method
US5764634A (en) * 1996-03-13 1998-06-09 International Business Machines Corporation Lan switch with zero latency
US5740171A (en) * 1996-03-28 1998-04-14 Cisco Systems, Inc. Address translation mechanism for a high-performance network switch
US5742604A (en) * 1996-03-28 1998-04-21 Cisco Systems, Inc. Interswitch link mechanism for connecting high-performance network switches
US5764636A (en) * 1996-03-28 1998-06-09 Cisco Technology, Inc. Color blocking logic mechanism for a high-performance network switch
US5923654A (en) * 1996-04-25 1999-07-13 Compaq Computer Corp. Network switch that includes a plurality of shared packet buffers
US5802052A (en) 1996-06-26 1998-09-01 Level One Communication, Inc. Scalable high performance switch element for a shared memory packet or ATM cell switch fabric
US5748905A (en) * 1996-08-30 1998-05-05 Fujitsu Network Communications, Inc. Frame classification using classification keys
US5832278A (en) 1997-02-26 1998-11-03 Advanced Micro Devices, Inc. Cascaded round robin request selection method and apparatus

Also Published As

Publication number Publication date
EP0993680A4 (de) 2006-03-15
WO1999000819A3 (en) 1999-04-22
EP0993680B1 (de) 2007-09-05
WO1999000819A2 (en) 1999-01-07
JP2002508100A (ja) 2002-03-12
EP0993680A2 (de) 2000-04-19
DE69838387D1 (de) 2007-10-18
JP4124491B2 (ja) 2008-07-23
US6052738A (en) 2000-04-18
ATE372585T1 (de) 2007-09-15

Similar Documents

Publication Publication Date Title
DE69838387T2 (de) Verfahren und vorrichtung in einem paketenleitweglenkungsschalter um den zugriff zu einem gemeinsamen speicher auf verschiedenen datenraten zu steuern
DE19983737B3 (de) System zum Neuordnen von Befehlen, die von einer Speichersteuerung zu Speichervorrichtungen ausgegeben werden, unter Verhinderung von Kollision
US6119196A (en) System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
DE112011103916B4 (de) Speicherzugriffseinheit für gemeinsame Speichernutzung zwischen mehreren Prozessoren
DE60217221T2 (de) Ein-Chip System zur Paketverarbeitung
DE69834739T2 (de) Ausgleichen von daten die zwischen verschiedenen leitern fliessen die auf unterschiedlichen frequenzen operieren
DE102014225253B4 (de) Reallokation für eine Systembustransaktionswarteschlange
DE112012004551T5 (de) Mehrkernverknüpfung in einem Netzprozessor
DE10219623A1 (de) System und Verfahren zur Speicherentscheidung unter Verwendung von mehreren Warteschlangen
DE60034998T2 (de) Verbesserungen in oder bezüglich von Mikroprozessoren
DE10045915A1 (de) Verfahren und System zum Steuern von Datenübertragungen mit physikalischer Trennung der Datenfunktionalität von der Adressen- und Steuerfunktionalität in einem verteilten Multi-Bus-Mehrprozessorsystem
DE112010005609T5 (de) Speichern von Daten in einem einer Mehrzahl von Puffern in einer Speichersteuerung
DE112004002043B4 (de) Verfahren, System und Programm zum Aufbau eines Pakets
DE19908618A1 (de) Gemeinsam genutzter Hochleistungscachespeicher
DE69726400T2 (de) Festkörper-datenprozessor mit vielseitiger mehrquellen-unterbrechungsorganisation
DE102004013635A1 (de) Verfahren und Vorrichtung zur Vergabe von Buszugriffsrechten in Multimaster-Bussystemen
DE102006009034B3 (de) Verfahren zum Betreiben eines Bussystems sowie Halbleiter-Bauelement, insbesondere Mikroprozessor- bzw. Mikrocontroller
DE102016206109A1 (de) Speicherdirektzugriffssteuereinrichtung für mindestens eine einen Arbeitsspeicher aufweisende Recheneinheit
DE602005002533T2 (de) Dmac-ausgabemechanismus über ein steaming-id-verfahren
DE10306285A1 (de) Mikrocomputersystem
DE3247083A1 (de) Mehrprozessorsystem
DE102019103722A1 (de) Eine Hub-Schaltung für einen Dimm mit mehreren Komponenten, die mit einem Host kommunizieren
EP1308846B1 (de) Datenübertragungseinrichtung
DE102005040109A1 (de) Halbleiterspeichersystem und Halbleiterspeicherchip
DE112013003924B4 (de) Nichttransitorisches computerlesbares Medium, Verfahren und prozessorbasiertes System zur Verarbeitung von Nachrichtenkanal-Transaktionen in einem Prozessorbasiertem System ohne Durchführung von Blockierungsoperationen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition