DE69637462T2 - ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen - Google Patents

ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen Download PDF

Info

Publication number
DE69637462T2
DE69637462T2 DE1996637462 DE69637462T DE69637462T2 DE 69637462 T2 DE69637462 T2 DE 69637462T2 DE 1996637462 DE1996637462 DE 1996637462 DE 69637462 T DE69637462 T DE 69637462T DE 69637462 T2 DE69637462 T2 DE 69637462T2
Authority
DE
Germany
Prior art keywords
address
cell
buffer
multicast
output
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
DE1996637462
Other languages
English (en)
Other versions
DE69637462D1 (de
Inventor
Nobuyoki Minato-ku Mizukoshi
Ruixue Minato-ku Fan
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.)
Renesas Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Publication of DE69637462D1 publication Critical patent/DE69637462D1/de
Application granted granted Critical
Publication of DE69637462T2 publication Critical patent/DE69637462T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/104Asynchronous transfer mode [ATM] switching fabrics
    • H04L49/105ATM switching elements
    • H04L49/108ATM switching elements using shared central buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • H04L49/203ATM switching fabrics with multicast or broadcast capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management
    • H04L2012/5683Buffer or queue management for avoiding head of line blocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ATM-Schalter mit Eingangsports und Ausgangsports und Verfahren zum Steuern derselben und insbesondere ATM-Schalter mit einem gemeinsam genutzten Puffer und Verfahren zum Steuern derselben.
  • Der ATM-Schalter von diesem Typ hat eine Vielzahl von Eingangsports und eine Vielzahl von Ausgangsports und transferiert ATM-Zellen von bestimmten Eingangsports zu bestimmten Ausgangsports. Die ATM-Zelle, wie sie im Stand der Technik wohlbekannt ist, hat eine feste Läge von 53 Bytes. Von diesen Bytes bilden 5 Bytes einen Anfangsblock VCI-, VPI-, etc. Identifizierer und bilden die übrigen 48 Bytes eine Nutzlast mit darin vorgesehenen Daten, etc.
  • Bei einem Typ eines ATM-Schalters wird ein gemeinsamer Speicher mit einer Vielzahl von Adressen gemeinsam für eine Vielzahl von Ausgangsports verwendet. Bei diesem ATM-Schalter werden von Eingangsports gelieferte ATM-Zellen aufeinanderfolgend im gemeinsamen Speicher gespeichert, während Speicheradressen der gespeicherten ATM-Zellen im gemeinsamen Speicher unter einer Steuerung einer Schreibsteuerung aufeinanderfolgend in entsprechende Adressenpuffer geschrieben werden, die für die jeweiligen Ausgangsports vorgesehen sind. Für die zu den Ausgangsports zu transferierenden gespeicherten ATM-Zellen werden ihre Adressenpuffer aufeinanderfolgend durch eine Lesesteuerung bestimmt und wird jede gespeicherte ATM-Zelle aus der aus ihrem bestimmten Adressenpuffer ausgelesenen gemeinsamen Speicheradresse ausgelesen und zum entsprechenden Ausgangsport transferiert.
  • Bei einem solchen ATM-Schalter kann eine allgemein als Mehrpunktverbindungszelle bzw. Multicast-Zelle bezeichnete Zelle, die auf eine Multicast-Weise zu einer Vielzahl von Ausgangsports zu transferieren ist, als eine ATM-Zelle von einem einzelnen Eingangsport geliefert werden. Es wird angenommen, dass sich die Forderung nach einem Transferieren von solchen Multicast-Zellen in Zukunft erhöhen wird.
  • Ein ATM-Schalter zum Verarbeiten von solchen Multicast-Zellen ist in der japanischen offengelegten Patentveröffentlichung Nr. 6-62041 offenbart. Dieser ATM-Schalter hat eine Leeradressen-Managementeinrichtung zum Managen der leeren Adressen in einem gemeinsamen Speicher. Bei diesem ATM-Schalter wird die Adresse einer eingegebenen Multicast-Zelle im gemeinsamen Speicher in Adressenpuffern entsprechend den Ausgangsports, zu welchen die Multicast-Zelle zu senden ist, unter einer Steuerung einer Schreibsteuerung gleichzeitig gespeichert. Die Leeradressen-Managementeinrichtung bestimmt die Multicast-Zellenspeicheradresse im gemeinsamen Speicher derart, dass sie leer ist, durch derartiges Unterscheiden der Multicast-Zellenadresse, dass sie im Adressenpuffer als letzte ausgegeben wird.
  • Der offenbarte ATM-Schalter hat Adressenpuffer, die hardwaremäßig jeweils unabhängig entsprechend jedem Ausgangsport vorgesehen sind. Jeder Adressenpuffer enthält einen Zähler, der die Menge an Inhalt in jedem Adressenpuffer zum Unterscheiden der letzten ausgegebenen Multicast-Zellenadresse anzeigt.
  • Bei diesem ATM-Schalter muss auf eine Ankunft einer Multicast-Zelle hin die Adresse des Multicast-Zellenspeicherbereichs im gemeinsamen Speicher gleichzeitig in Adressenpuffern entsprechend den Ausgangsports gespeichert werden, zu welchen das Senden durchzuführen ist.
  • Dies bedeutet, dass die Adresse der angekommenen Multicast-Zelle im gemeinsamen Speicher kopiert und gleichzeitig als Adressenzeiger in den entsprechenden Adressenpuffern gespeichert werden muss.
  • Das Kopieren der angekommenen Multicast-Zellenadresse und ihr Speichern als Adressenzeiger in den entsprechenden Adressenpuffern zur gleichen Zeit macht es schwierig, die Vielzahl von Adressenpuffern als einzelnen RAM oder als einen ähnlichen Speicher aufzubauen. Anders ausgedrückt ist es mit einem einzelnen Speicher mit einer kleinen Dateneingangsbitbreite unmöglich, eine Vielzahl von Adressenpufferbereichen zur Verfügung zu stellen und zuzulassen, dass eine Adresse in einer Vielzahl von Adressenbereichen gleichzeitig geschrieben wird. Es ist weiterhin unmöglich, eine Vielzahl von Adressen zu einem einzelnen Speicher gleichzeitig zu bestimmen. Anders ausgedrückt hat der oben angegebene ATM-Schalter einen Bereich, der nicht durch eine integrierte Halbleiterschaltung implementiert werden kann, was angesichts der Größenreduzierung unerwünscht ist.
  • Lee, L-H, et al: "Multicasting in a shared buffer memory switch", IEEE Tencon '93, Beijing, Vol. 1 von 5, 19. Oktober 1993, Seiten 209 bis 212, XP 000463266 offenbart einen modifizierten gemeinsam genutzten Multicast-Pufferspeicherschalter, wobei eine Multicast-Zelle zu ihren Zielorten in unterschiedlichen Schlitzen geliefert werden kann, garantiert aber, dass Zellen durch die Art "wer zuerst kommt, mahlt zuerst" in einer Sequenz geliefert werden.
  • In EP-A-0 363 053 ist eine Anordnung für ein asynchrones Zeitmultiplexschaltens offenbart, die einen Seriell/Parallel-Wandler aufweist, der eingerichtet ist, um Eingangspakete von Daten, die Führungsinformation enthalten, in serieller Form zu empfangen und die Pakete von Daten in eine parallele Form umzuwandeln. Ein Direktzugriffsspeicher ist vorgesehen, in welchem jedes Paket von Daten bei einer adressierten Stelle in den Speicher eingegeben wird, und die Adresse wird in eine jeweilige First-in-Firt-out-Ausgangswarteschlange am Ende eingegeben.
  • Endo, N., et al: "Shared buffer memory switch for an ATM exchange", IEEE Transactions an Communications, Vol. 41, No. 1, 1. Januar 1993, Seiten 237 bis 245, XP 000367768 schlägt eine ATM-Schalterarchitektur vor, die gemeinsam genutzter Pufferspeicherschalter genannt wird, deren Ausgangszellenpuffer zwischen allen Ausgangsports des Schalters gemeinsam genutzt werden. Die gemeinsame Nutzung des Puffers kann das Ausmaß an Hardware im Vergleich mit demjenigen eines separaten Pufferspeicherschalters reduzieren. Darüber hinaus macht ein Modifizieren der Speichersteuerschaltungen des Schalters den Speicherschalter flexibel genug, um Funktionen wie beispielsweise eine Prioritätssteuerung und einen Gruppenruf bzw. ein Multicasting durchzuführen.
  • In EP-A-0 336 373 , ist ein Zellenschaltsystem von ATM offenbart, wobei Pakete fester Länge, die jeweils aus einem Anfangsblockbereich und einem Datenbereich aufgebaut sind, von einer Vielzahl von Eingangsleitungen empfangen werden und die empfangenen Pakete nach einer Umwandlung der Anfangsblockbereiche auf ausgewählte von Ausgangsleitungen gesendet werden, die durch ihre Anfangsblockbereiche bestimmt sind. Das System enthält weiterhin einen Pufferspeicher mit einem ersten Pufferbereich, der aus einer Vielzahl von untergeordneten Bereichen zum Akkumulieren von Zellen entsprechend den Ausgangsleitungen aufgebaut ist, und einem zweiten Pufferbereich zum Akkumulieren von Rundruf- bzw.
  • Broadcast-Zellen, um zu ausgewählten der Vielzahl von Ausgangsleitungen gesendet zu werden.
  • Saito, H., et al.: "Mulicast function and its LSI implementation in a shared multibuffer ATM switch", proceedings of INFOCOM, Toronto, 12. Juni 1994, Seiten 315 bis 322, XP000496482 offenbart, eine Adressenkopierschaltung in der Steuerung eines gemeinsam genutzten Pufferschalters einzuführen. Wenn eine Multicast-Zelle in den gemeinsam genutzten Pufferspeicher gespeichert wird, wird eine gespeicherte Adresse kopiert und in mehrere Ausgangsadressenwarteschlangen in eine Warteschlange gebracht, um einem Multicasting unterzogen zu werden.
  • Eine Aufgabe der vorliegenden Erfindung besteht daher im Bereitstellen eines äußerst ökonomischen ATM-Schalters, der einen gemeinsamen Puffer enthält, welcher eine ruhige Verarbeitung von Multicast-Zellen und ein Reduzieren nachteiliger Effekte einer HOL-Blockierung zulässt.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht im Bereitstellen eines ATM-Schalters, der Multicast-Zellen effizient und mit einem einfachen Schema verarbeiten kann.
  • Eine andere Aufgabe der vorliegenden Erfindung besteht im Bereitstellen eines ATM-Schalters, der die Belastung eines Kopierens von gemeinsam genutzten Pufferadressen abmildern kann, die in einer Multicast-Zellenverarbeitung enthalten sind.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht im Bereitstellen eines ATM-Schalters, der für eine Größenreduzierung als integrierte Halbleiterschaltung implementiert sein kann.
  • Eine noch weitere Aufgabe der vorliegenden Erfindung besteht im Bereitstellen eines ATM-Schalters, der nachteilige Effekte einer Blockierung eines Anfangseiner-Leitung (HOL = head-of-line) abmildern oder eliminieren kann.
  • Eine noch weitere Aufgabe der vorliegenden Erfindung besteht im Bereitstellen eines ATM-Schalters, der keinen separaten Speicherbereich aus den Zellenspeicherbereichen zum Zählen der Male eines Sendens von Multicast-Zellen zur Verfügung stellen muss.
  • Gemäß der vorliegenden Erfindung wird ein ATM-Schalter zur Verfügung gestellt, wie er im unabhängigen Anspruch 1 definiert ist.
  • Gemäß einem Aspekt in Bezug auf die vorliegende Erfindung wird ein gemeinsam genutzter Puffer zur Verfügung gestellt und hat jede Multicast-Zelle eine einzige Adresse im gemeinsam genutzten Puffer. Es kann sein, dass die Multicast-Zelle selbst nicht zu allen Ausgangsports gleichzeitig ausgegeben wird. Die Zeit, die für ein gesamtes Speichern jeder Zelle im gemeinsam genutzten Puffer erforderlich ist, ist im Vergleich mit der Zeit lang, die zum Speichern der Adresse vom gemeinsam genutzten Puffer in jedem Adressenpuffer erforderlich ist. Die Adresse kann somit in einer Vielzahl von Adressenpuffern unter Nutzung der Zeit gespeichert werden, die während einer Speicherung einer Multicast-Zelle im gemeinsam genutzten Puffer verstrichen ist. Dies bedeutet, dass es möglich ist, die Belastung im Fall eines Kopierens der Adresse und eines Speicherns derselben in einer Vielzahl von Adressenpuffern zu reduzieren.
  • Spezifischer wird gemäß einem Aspekt in Bezug auf die vorliegende Erfindung ein ATM-Schalter zur Verfügung gestellt, der eine Vielzahl von Eingangsports zum Empfangen von Eingangszellen, eine Vielzahl von Ausgangsports zum Ausgeben von Ausgangszellen und einen gemeinsamen Puffer aufweist, der eine Vielzahl von Adressen hat und Multicast-Zellen verarbeiten kann, die jeweils zu einer Vielzahl von Ausgangsports auszugeben sind, wobei der ATM-Schalter weiterhin einen Multicast-Zellenpuffer aufweist, um auf eine Ankunft einer Multicast-Zelle hin den Inhalt eines Adressenzeigers, der eine Adresse im gemeinsam genutzten Puffer anzeigt, in welchem die Multicast-Zelle zusammen mit Multicast-Führungsdaten (Information) darüber zu speichern ist, zu speichern, und Adressenpuffer, die für die jeweiligen Ausgangsports vorgesehen sind, wobei der Adressenzeigerinhalt in den Adressenzeigern während einer freien Zeit darin gespeichert werden und zum Zugreifen auf den gemeinsam genutzten Puffer gemäß den Inhalten jedes Adressenpuffers verwendet wird.
  • Gemäß einem weiteren Aspekt in Bezug auf die vorliegende Erfindung wird ein ATM-Schalter zur Verfügung gestellt, der eine Vielzahl von Eingangsports zum Empfangen von Eingangszellen, eine Vielzahl von Ausgangsports zum Ausgeben von Ausgangszellen und einen gemeinsamen Puffer aufweist, der eine Vielzahl von Adressen hat und Multicast-Zellen verarbeiten kann, die jeweils zu einer Vielzahl von Ausgangsports auszugeben sind, wobei der ATM-Schalter weiterhin Voradressenpuffer entsprechend den jeweiligen Ausgangsports, zum versuchsweisen Speichern einer Adresse im gemeinsam genutzten Puffer, in welchem die Multicast-Zelle zu speichern ist, auf eine Ankunft der Multicast-Zelle hin und Adressenpuffer entsprechend den jeweiligen Ausgangsports aufweist, wobei die Inhalte in den Voradressenpuffern aufeinanderfolgend zu den jeweiligen Adressenpuffern transferiert werden, wobei die Kapazität der Voradressenpuffer kleiner als die Kapazität der Adressenpuffer ist.
  • Gemäß einem anderen Aspekt in Bezug auf die vorliegende Erfindung wird ein Verfahren zum Steuern eines ATM-Schalters zur Verfügung gestellt, der eine Vielzahl von Eingangsports zum Empfangen von Eingangszellen, eine Vielzahl von Ausgangsports zum Ausgeben von Ausgangszellen und einen gemeinsam genutzten Puffer mit einer Vielzahl von Adressen aufweist, wobei das Verfahren die Schritte zum Erzeugen einer jeweiligen von Zellen mit einem Adressenzeiger, der eine Adresse im gemeinsamen Puffer anzeigt, auf die als nächstes zuzugreifen ist, und von Adressenzellen mit einem Adressenzeiger, der eine Speicherposition im gemeinsam genutzten Puffer anzeigt, bei welcher die relevante bzw. zugehörige Zelle zu speichern ist, zum Ausbilden einer Zellenkette durch Verbinden der Zellen über die Adressenzellen und zum Zugreifen auf den gemeinsam genutzten Puffer gemäß der Zellenkette aufweist.
  • Andere Aufgaben und Merkmale werden aus der folgenden Beschreibung unter Bezugnahme auf die beigefügten Zeichnungen erklärt werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt das Hauptschema des ATM-Schalters als ein Ausführungsbeispiel der vorliegenden Erfindung;
  • 2 zeigt ein spezifisches Beispiel des ATM-Schalters mit dem in 1 gezeigten Grundschema;
  • 3 zeigt ein Beispiel der Konfiguration der ATM-Zelle, die im gemeinsam genutzten Puffer 11 gespeichert ist;
  • 4 zeigt ein anderes Ausführungsbeispiel des ATM-Schalters mit dem Grundschema, wie es in 1 gezeigt ist;
  • 5 zeigt das Hauptschema eines ATM-Schalters als zweites Ausführungsbeispiel, das nützlich zum Verstehen der vorliegenden Erfindung ist;
  • 6 zeigt ein spezifisches Beispiel des in 5 gezeigten Grundschemas;
  • 7 zeigt ein anderes Beispiel des in 6 gezeigten Grundschemas;
  • 8 zeigt ein weiteres Ausführungsbeispiel eines ATM-Schalters, das nützlich zum Verstehen der vorliegenden Erfindung ist;
  • 9(A) bis 9(C) zeigen die Einzelruf- bzw. Unicast-Zelle, die Multicast-Zelle und die Adressenzelle, die in dem in 8 gezeigten Schema behandelt sind;
  • 10 zeigt ein Blockdiagramm des Anfangsblockumsetzers für eine Anfangsblockumsetzung der zum ATM-Schalter in 8 eingegebenen Zelle; und
  • 11 zeigt eine Zeichnung zum Erklären des Betriebs des ATM-Schalters in 8.
  • BEVORZUGTE AUSFÜHRUNGSBEISPIELE DER ERFINDUNG
  • 1 zeigt das Hauptschema des ATM-Schalters als ein Ausführungsbeispiel der vorliegenden Erfindung. Dieser ATM-Schalter umfasst einen gemeinsam genutzten Puffer 11, einen Multiplexer 12, der ATM-Zellen von Eingangsleitungen (oder Eingangsports) 1 bis N zur Speicherung im gemeinsamen genutzten Puffer 11 multiplext, und einen Demultiplexer 13, der die aus dem gemeinsam genutzten Puffer 11 ausgelesenen Daten demultiplext, um die ATM-Zellen zu trennen und zu Ausgangsleitungen (oder Ausgangsports) 1 bis N auszugeben. Wie es oben beschrieben ist, besteht die ATM-Zelle aus 53 Bytes, wobei 5 Bytes davon den Anfangsblock bilden und die übrigen 48 Bytes die Nutzlast bilden.
  • Wie es in 10 gezeigt ist, ist ein Anfangsblockumsetzer 61 mit Eingangsschnittstellen 1 bis N, die individuell den jeweiligen Eingangsports entsprechen, als eine vorangehende Stufe mit dem Multiplexer 12 verbunden. Vor einem Beschreiben des internen Schemas des ATM-Schalters werden das Schema und der Betrieb des Eingangsschnittstellen 1 bis N beschrieben werden. Die Eingangsschnittstellen 1 bis N enthalten jeweils einen Leitungsabschluss 611, eine Anfangsblockumsetzungstabelle 612 und eine Anfangsblock-Hinzufügeeinheit 613.
  • Eine Eingangszelle, die durch den Leitungsabschluss 611 gekoppelt ist, wird versuchsweise in einem Puffer in der Anfangsblock-Hinzufügeeinheit gespeichert und nur ein Anfangsblockteil wird herausgenommen, gemäß welchem auf die Anfangsblockumsetzungstabelle 612 zugegriffen wird. Die Anfangsblockumsetzungstabelle 612 gibt einen Anfangsblock, der durch eine Umsetzung eines Bereichs entsprechend dem Anfangsblockteil erhalten wird, zur Anfangsblock-Hinzufügeeinheit 613 aus. Die Anfangsblock-Hinzufügeeinheit 613 fügt den durch die Umsetzung erhaltenen Anfangsblock zur Nutzlast in der Eingangszelle hinzu und sendet das Ergebnis zum Multiplexer 12 aus. Als Ergebnis gibt der Multiplexer 12 eine Zelle mit einem Anfangsblockteil aus, der einer Unicast-Zelle oder einer Multicast-Zelle entspricht. Beim dargestellten Beispiel hat der umgesetzte Zellenanfangsblockteil die Anfangsblockumsetzungsdaten zusätzlich zu Führungsdaten und hat im Fall einer Multicast-Zelle auch eine Sendezeitenzahl bzw. Sendezahl (CC).
  • Geht man zurück zur 1, ist eine Adressenpuffereinheit 15, die von einem 1-ten bis zu einem N-ten Adressenpuffer 151 bis 15N entsprechend den jeweiligen Ausgangsports 1 bis N enthält, mit dem gemeinsam genutzten Puffer 15 verbunden.
  • Der ATM-Schalter umfasst weiterhin einen Multicast-Zellenadressenpuffer 16 und einen Leeradressenpuffer 17. Der Multicast-Zellenadressenpuffer 16 speichert aufeinanderfolgend eine gemeinsame Adresse und Multicast-Führungsdaten, die zu den zu entsprechenden der Ausgangsports 1 bis N auszusendenden Eingangs-Multicast-Zellen zugeordnet sind. Der Leeradressenpuffer 17 speichert Leeradressen im gemeinsam genutzten Puffer 11.
  • ATM-Zellenadressen im gemeinsam genutzten Puffer 11 werden als jeweilige Adressenzeiger im 1-ten bis N-ten Adressenpuffer 151 bis 15N gespeichert. In jedem der Adressenpuffer 151 bis 15N bilden die gespeicherten Adressenzeiger eine Ad ressenwarteschlange. Wie es oben beschrieben ist, werden Multicast-Adressen im gemeinsam genutzten Puffer 11 als jeweilige Multicast-Adressenzeiger zusammen mit den Multicast-Führungsdaten in den Multicast-Zellenadressenpuffer 16 gespeichert. Im Multicast-Zellenadressenpuffer 16 bilden die gespeicherten Multicast-Adressenzeiger zusammen mit den gespeicherten Multicast-Führungsdaten eine Multicast-Datenwarteschlange. Gleichermaßen bilden im Leeradressenpuffer 17 die gespeicherten Leeradressen eine Leeradressenzeiger-Warteschlange.
  • Wie es gezeigt ist, wird jeder vom Leeradressenpuffer 17 ausgegebene Leeradressenzeiger zum gemeinsam genutzten Puffer 11 zugeführt und bestimmt eine Leeradresse und eine ATM-Zellenspeicherposition im gemeinsam genutzten Puffer 11. Der Leeradressenzeiger wird auch über jeweilige vorangehende Selektoren 18 zu den Adressenpuffern 151 bis 15N zugeführt und wird auch zum Multicast-Zellenadressenpuffer 16 zugeführt. Zu den Selektoren 18 wird auch ein Multicast-Zellenadressenzeiger vom Multicast-Zellenadressenpuffer 16 gesendet.
  • Eine Unicast-Zelle, die als ATM-Zelle zu dem ATM-Schalter mit dem Schema, wie es in 1 gezeigt ist, eingegeben wird, wird in einer Leeradresse gespeichert, wie sie durch den Leeradressenpuffer 17 bestimmt ist. Zu dieser Zeit wird diese Leeradresse als Unicast-Zellenspeicherposition zu einem der Adressenpuffer 151 bis 15N, der dem Ausgangsport entspricht, zu welchem die Zelle auszugeben ist, gespeichert.
  • Eine als ATM-Zelle eingegebene Multicast-Zelle wird auch in der durch den Leeradressenpuffer 17 bestimmten Leeradresse gespeichert.
  • Während die Multicast-Zelle im gemeinsam genutzten Puffer 11 gespeichert wird, wird ihre Adresse, die ihre Speicherposition anzeigt, zusammen mit ihren Multicast-Führungsdaten im Multicast-Zellenadressenpuffer 16 gespeichert und somit zu denjenigen der Adressenpuffer 151 bis 15N ausgesendet, die den Ausgangsports entsprechen, zu welchen die Multicast-Zelle zu transferieren ist, und zwar gemäß den Multicast-Bestimmungsdaten entweder aufeinanderfolgend oder gleichzeitig. Der Betrieb eines Aussendens der Multicast-Zellenadresse zu relevanten bzw. zugehörigen der Adressenpuffer 151 bis 15N wird hierin nachfolgend als Bilden einer neuen Warteschlange bezeichnet.
  • Es wird gesehen werden, dass bei diesem Ausführungsbeispiel die Multicast-Zellenadresse, während sie versuchsweise im exklusiv vorgesehenen Multicast-Zellenadressenpuffer gespeichert wird, in den relevanten der Adressenpuffer 151 bis 15N gespeichert wird, indem effektiv eine freie Zeit wie eine solche verwendet wird, während welcher die Multicast-Zelle im gemeinsam genutzten Puffer 11 gespeichert wird.
  • Mit dem momentanen Schema können die Adressenpuffer 151 bis 15N, der Multicast-Zellenadressenpuffer 16 und der Leeradressenpuffer 17 zusammen durch einen einzigen RAM implementiert werden. Das Eingabe- und Ausgabemanagement der Adressenpuffer kann durch Verwenden von Lesezeigern und Schreibzeigern oder durch Verwenden eines Speicherverfahrens, bei welchem gespeicherte Daten aufeinanderfolgend unter Bezugnahme auf nachfolgende Speicherpufferadressendaten, die zusammen mit ihnen gespeichert sind, ausgelesen werden können, durchgeführt werden.
  • 2 zeigt ein spezifisches Beispiel des ATM-Schalters mit dem in 1 gezeigten Grundschema. Teile wie diejenigen in 1 sind mit gleichen Bezugszeichen bezeichnet. Dieses Beispiel umfasst zusätzlich zu der Adressenpuffereinheit 15, dem Multicast-Zellenadressenpuffer 16 und dem Leeradressenpuffer 17 Steuerungen zum Steuern von diesen Puffern, wie es hierin nachfolgend beschrieben werden wird.
  • Nimmt man Bezug auf 2, werden von den Eingangsports 1 bis N eingegebene ATM-Zellen im Multiplexer 12 multiplext und dann zum gemeinsam genutzten Puffer 11 zugeführt. Ihre Speicheradressen werden durch Adressenzeiger bestimmt, die aus dem Leeradressenpuffer 17 herausgenommen sind. Der Leeradressenpuffer 17 gibt als Speicheradressen Leeradressenzeiger aus, die von ihrer Zeigerwarteschlange in Reaktion auf Anweisungen von einer Adressenzeiger-Schreibsteuerung 21 oder einer Multicast-Steuerung 22 herausgenommen sind, wobei die ausgegebenen Speicheradressen zum gemeinsam genutzten Puffer 11 zugeführt werden.
  • Wie es zuvor in Verbindung mit 1 beschrieben ist, werden Leeradressenzeiger auch zu der Adressenpuffereinheit 15 und dem Multicast-Zellenadressenpuffer 16 zugeführt.
  • 3 zeigt ein Beispiel der Konfiguration der ATM-Zelle, die im gemeinsam genutzten Puffer 11 gespeichert ist. Die dargestellte ATM-Zelle umfasst einen Anfangsblock und eine Nutzlast, wobei der Anfangsblock einen Sendezahlbereich, einen Anfangsblockumsetzungsdatenbereich und einen Führungsdatenbereich enthält. Der Sendezahlbereich enthält ein Zählen eines Sendens (CC), was die Anzahl von Ausgangsports darstellt, zu welchen ein Senden durchzuführen ist. Dies bedeutet, dass die Sendezahl (CC) bei einer Multicast-Zelle eine ganze Zahl annimmt, die größer als "1" ist, während sie bei einer Unicast-Zelle "1" ist.
  • Im Anfangsblockumsetzungsdatenbereich ist normalerweise ein Ausgangszellenanfangsblock vorgesehen. Wenn die Anfangsblockumsetzung wieder zu der Zeit der Zellenausgabe durchgeführt wird, werden Zwischendaten einer Zellenumsetzung zur Verfügung gestellt. Im Führungsdatenbereich werden die Führungsdaten zur Verfügung gestellt, die durch die Adressenzeiger-Schreibsteuerung 21 und die Multicast-Steuerung 22 verarbeitet werden, die in 2 gezeigt sind. Beim dargestellten Beispiel werden die im Anfangsblockumsetzungsdatenbereich vorgesehenen Anfangsblockumsetzungsdaten und die im Sendezahlbereich vorgesehene Sendezahl zusammen mit Zellendaten, die in der Nutzlast vorgesehen sind, im gemeinsam genutzten Puffer 11 gespeichert (2).
  • Der Betrieb bei einer Unicast-Zelle mit der ATM-Zellenkonfiguration, wie sie in 3 gezeigt ist, wird nun unter Bezugnahme auf 2 beschrieben werden. Die Adressenzeiger-Schreibsteuerung 21 bestimmt auf einen Empfang der Führungsdaten hin, dass die Eingangszelle eine Unicast-Zelle ist, und weist den Leeradressenpuffer 17 an, einen Leeradressenzeiger auszugeben. Der somit aus dem Leeradressenpuffer 17 ausgelesene Leeradressenzeiger wird als Eingangszellen-Schreibadressenzeiger zum gemeinsam genutzten Puffer 11 gesendet.
  • Ein Unicast-Zellenadressenzeiger, der für die Eingangszellenspeicherung verwendet wird, wird in einen der Adressenpuffer 151 bis 15N entsprechend den Ausgangsports der Adressenpuffereinheit durch einen entsprechenden Selektor 15 unter einer Steuerung der Adressenzeiger-Schreibsteuerung 21 geschrieben.
  • Die Multicast-Steuerung 22 bestimmt auf eine Eingabe einer Multicast-Zelle als die Eingangszelle hin aus den Führungsdaten der Eingangszelle, dass die Eingangszelle eine Multicast-Zelle ist. Die Multicast-Steuerung 22 weist somit den Leeradressenpuffer 17 an, den Leeradressenzeiger auszugeben. Gemäß dieser Anwei sung sendet der Leeradressenpuffer 17 eine Leeradresse als die Eingangszellen-Schreibadresse zum gemeinsam genutzten Puffer 11 aus. Der gemeinsam genutzte Puffer 11 startet somit die Speicherung der Multicast-Zelle.
  • Die Multicast-Steuerung 22 greift dann auf eine Multicast-Führungsdatentabelle 23 gemäß den empfangenen Führungsdaten zu. In der Multicast-Führungsdatentabelle 23 sind Multicast-Führungsdaten über die Ausgangsports, zu welchen die Multicast-Zellen auszugeben sind, gespeichert, und wenn auf diese Tabelle von der Multicast-Steuerung 22 zugegriffen wird, sendet sie Multicast-Führungsdaten zum Multicast-Zellenadressenpuffer 16 aus. Jeweilige Multicast-Führungsdaten bestimmen die Ausgangsports, zu welchen die relevante bzw. zugehörige Multicast-Zelle auszugeben ist, und bestimmen auch die entsprechenden Adressenpuffer in der Adressenpuffereinheit 15 (1).
  • Wie es oben beschrieben ist, werden im Multicast-Zellenadressenpuffer 16 zusätzlich zu den Multicast-Führungsdaten die Leeradressen im gemeinsam genutzten Puffer 11, in welchem die Multicast-Zellen als die Adressenzeiger zu speichern sind, gespeichert. Die obigen Multicast-Bestimmungsdaten und der zugehörige Adressenzeiger werden somit als eine Gruppe und zu einer Zeit bzw. gleichzeitig im Multicast-Zellenadressenpuffer 16 gespeichert. Jeweilige Gruppen aus Multicast-Führungsdaten und einem Adressenzeiger werden jeweils gespeichert, wann immer eine Multicast-Zelle ankommt, und solche Gruppen werden aufeinanderfolgend gespeichert, um eine Warteschlange im Multicast-Puffer 16 zu bilden.
  • Die Multicast-Führungsdaten und Adressendaten, die im Multicast-Zellenadressenpuffer 16 gespeichert worden sind, werden aufeinanderfolgend vom vorderen Ende der Warteschlange herausgenommen. Die Multicast-Führungsdaten werden zur Multicast-Steuerung 22 gesendet, während die Adressenzeiger zu einem separat vorgesehenen Multicast-Adressenregister 25 gesendet werden.
  • Die Eingangszelle hat eine derartige Länge, dass ihr Schreiben in den gemeinsam genutzten Puffer 11 mehrere Taktpulse erfordert, während ein Taktpuls für das Schreiben des Adressenzeigers und ähnlicher Daten in das Multicast-Register 16 ausreichend ist. In der Multicast-Steuerung 22 können Operationen, die zum Verarbeiten einer Multicast-Zelle nötig sind, innerhalb der Zeit eines Schreibens einer Eingangszelle in den gemeinsam genutzten Puffer 11 durchgeführt werden.
  • Gemäß den Multicast-Führungsdaten liefert die Multicast-Steuerung 22 aufeinanderfolgende Anweisungen zur Adressenzeiger-Schreibsteuerung 21, um die aus den Multicast-Zellenadressenpuffer 16 ausgelesenen Multicast-Adressenzeiger in die entsprechenden Adressenpuffer in der Adressenpuffereinheit 15 zu schreiben. Die Adressenzeiger, die die Multicast-Zellenspeicheradressen im gemeinsam genutzten Puffer 11 anzeigen, werden somit in allen entsprechenden Adressenpuffern in der Adressenpuffereinheit 15 gespeichert. Diese Operation kann durch Verwenden einer freien Zeit ausgeführt werden, die verfügbar gemacht wird, wenn die Zeit, die zum Verarbeiten von einem Adressenzeiger nötig ist, kürzer als die Zeit ist, die zum Schreiben oder Auslesen einer Eingangszelle in den oder aus dem gemeinsam genutzten Puffer 11 nötig ist, und auch einer freien Zeit, die verfügbar ist, wenn keine ATM-Zelle eingegeben oder ausgegeben wird. Diese freien Zeiten werden hierin nachfolgend verarbeitungsfreie Zeiten genannt, die im gemeinsam genutzten Puffer 11 auftreten.
  • Nun wird der Betrieb eines Ausgebens von ATM-Zellen, die im gemeinsam genutzten Puffer 11 gespeichert sind, als die Ausgangszellen beschrieben werden. Wenn eine Lesesteuerung 31 den Adressenpuffer oder die Warteschlange in der Adressenpuffereinheit 15 entsprechend einer auszugebenden Zelle bestimmt, wird ein Adressenzeiger vom vorderen Ende der Warteschlange herausgenommen und als Ausgangszellen-Leseadressenzeiger zum gemeinsam genutzten Puffer 11 und auch zum Leeradressenpuffer 17 ausgesendet.
  • Gemäß dem Ausgangszellen-Leseadressenzeiger wird eine Ausgangszelle aus dem gemeinsam genutzten Puffer 11 ausgelesen und durch den Demultiplexer 13 zu dem entsprechenden Ausgangsport oder den entsprechenden Ausgangsports ausgegeben.
  • Die Sendezahl (CC) der aus dem gemeinsam genutzten Puffer 11 ausgelesenen Ausgangszelle wird zu einer Adressenzeiger-Freigabesteuerung 32 ausgesendet.
  • Wenn die Sendezahl (CC) "1" ist, weist die Adressenzeiger-Freigabesteuerung 32 den Leeradressenpuffer 17 an, den Adressenzeiger entsprechend der Ausgangszelle als einen Leeradressenzeiger in den Leeradressenpuffer 17 zu schreiben. Auf diese Weise wird eine Vielzahl von Adressenzeigern aufeinanderfolgend in dem Leeradressenpuffer 17 gespeichert.
  • Wenn die Sendezahl (CC) "2" oder darüber ist, dekrementiert die Adressenzeiger-Freigabesteuerung 32 die Sendezahl (CC) um Eins und schreibt den resultierenden Wert (CC-1) in einen Sendezahlteil des Bereichs des Leeradressenpuffers 17, in welchem die relevante Ausgangszelle gespeichert ist. Die Adressenzeiger-Freigabesteuerung 32 weist dann den Leeradressenpuffer 17 an, den relevanten Adressenzeiger nicht als den Leeradressenzeiger zu schreiben.
  • Wie es oben gezeigt ist, werden bei dem Ausführungsbeispiel der vorliegenden Erfindung, das in den 1 bis 3 gezeigt ist, nachdem die Adressenzeiger für Multicast-Zellen in den Mehrfachpuffer 16 geschrieben worden sind, sie während der verarbeitungsfreien Zeiten ausgesendet und in die Adressenpuffereinheit 15 gespeichert, das heißt sie werden als Adressenwarteschlangen in den Adressenpuffern in der Adressenpuffereinheit 15 neu geschrieben. Anders ausgedrückt werden die Multicast-Zellenadressenzeiger aufeinanderfolgend auf eine Art für eine neue Warteschlange in die Adressenpuffereinheit 15 während der verarbeitungsfreien Zeit gespeichert. Dieselbe Multicast-Adresse kann somit aufeinanderfolgend auf einer Zeitmultiplexbasis in einer Vielzahl von Adressenpuffern entsprechend vorbestimmten Sendezielorten geschrieben werden.
  • Ungleich dem Stand der Technik ist es somit nicht nötig, eine Vielzahl von Adressenzeiger-Warteschlangen gleichzeitig zu schreiben, und es ist möglich, zur Zeit der Eingabe eine Vielzahl von Adressenzeiger-Warteschlangen in einen gewöhnlichen RAM zu speichern, der eine geringe Datenbitbreite zur Verfügung stellt. Zusätzlich kann deshalb, weil die Warteschlangen gemeinsam in einem einzigen RAM gespeichert werden können, ein kompaktes System durch Verwenden eines RAMs großer Kapazität realisiert werden. Darüber hinaus ist es, wie es in 4 gezeigt ist, möglich, die Hardware zu reduzieren, die zur Verarbeitung von Multicast-Zellenadressenzeigern erforderlich ist, und die Adressenpuffereinheit 15, die Multicast-Zellenadressenpuffer 16 und die Multicast-Datentabelle 23 mit einem gewöhnlichen RAM zu implementieren, der auf einer Zeitmultiplexbasis verwendet wird.
  • 4 zeigt ein anderes Ausführungsbeispiel des ATM-Schalters mit dem Grundschema, wie es in 1 gezeigt ist. Dieser ATM-Schalter ist diesbezüglich unterschiedlich vom in 2 gezeigten ATM-Schalter, dass er einen Adressenzeigerspeicher 35 aufweist, der die Adressenpuffereinheit 15, den Multicast- Zellenadressenpuffer 16 und den Leeradressenpuffer 17 bildet. Der Adressenzeigerspeicher 35 ist ein Speicher mit einem einzigen Port, der ein einmaliges Lesen oder Schreiben in einem Zyklus zulässt.
  • Im in 2 gezeigten Fall können die Adressenpuffereinheit, der Multicast-Adressenpuffer 16 und der Leeradressenpuffer 17 unabhängig schreiben und lesen. Im Fall der 4, in welchem die Operationen der obigen drei unterschiedlichen Puffer im einzigen Adressenzeigerspeicher 35 durchgeführt werden, kann jedoch auf die einzelnen Puffer nicht unabhängig zugegriffen werden. Demgemäß ist bei diesem Ausführungsbeispiel eine Zeitmultiplex-Zugriffssteuerung 36 vorgesehen, um auf den Adressenzeigerspeicher 35 auf einer Zeitmultiplexbasis zuzugreifen. Die Adressenzeigerschreibsteuerung 21, die Multicast-Steuerung 22, die Lesesteuerung 31 und die Multicast-Zeiger-Freigabesteuerung 32, wobei diese Steuerungen auch in 2 gezeigt sind, sind mit der Zeitmultiplex-Zugriffssteuerung 36 verbunden.
  • Dieses Ausführungsbeispiel des ATM-Schalters weist weiterhin ein Leeradressenzeigerregister 38 und ein Ausgangszellenadressenregister 39 auf, die zusammen mit dem Multicast-Zellenadressenregister 25 über einen Bus 40 mit dem Adressenzeigerspeicher 35 und dem gemeinsam genutzten Puffer 11 verbunden sind. Das Leeradressenzeigerregister 38 speichert versuchsweise die aus dem Adressenzeigerspeicher 35 ausgelesenen Leeradressenzeiger. Das Ausgangszellenadressenregister 39 speichert versuchsweise Ausgangszellenadressenzeiger.
  • Das Leeradressenzeigerregister 38 ist vorgesehen, um auf eine Zelleneingabe hin einen aus einer Leeradressenzeiger-Warteschlange herausgenommenen Leeradressenzeiger in ihm in der Adressenpuffereinheit versuchsweise zu speichern, weil der Adressenzeigerspeicher 35 unfähig zum gleichzeitigen Lesen und Schreiben ist. Gleichermaßen ist das Ausgangszellenadressenregister 39 vorgesehen, weil es nötig ist, für eine Zellenausgabe den Adressenzeiger der Ausgangszelle in ihm versuchsweise zu speichern, um aus der Adressenpuffereinheit herausgenommene Adressenzeiger als eine Adressenzeigerwarteschlange zu schreiben.
  • Der in 4 zeigte ATM-Schalter arbeitet auf dieselbe Weise wie der in 2 gezeigte ATM-Schalter, außer dass auf den Adressenzeigerspeicher 35 auf einer Zeitmultiplexbasis zugegriffen wird und dass Zeiger auf einer Zeitmultiplexbasis geschrieben und ausgelesen werden.
  • Bei der in 4 gezeigten Anordnung, bei welcher der einzige Adressenzeigerspeicher 35 als die Adressenpuffereinheit, der Multicast-Adressenpuffer und der Leeradressenpuffer auf einer Zeitmultiplexbasis verwendet wird, kann ein kompakterer ATM-Schalter im Vergleich mit dem Fall eines unabhängigen Bereitstellens der einzelnen Puffer erhalten werden. Als weiterer Vorteil kann der Adressenzeigerspeicher 35 durch einen normalen RAM implementiert werden.
  • 5 zeigt das Hauptschema des ATM-Schalters gemäß dem zweiten Ausführungsbeispiel. Dieser ATM-Schalter ist derselbe wie der in 1 gezeigte ATM-Schalter insoweit wie er Adressenpuffer 151 bis 15N (die hierin nachfolgend Hauptadressenpuffer genannt werden), die für die jeweiligen Ausgangsports vorgesehen sind, und eine Leeradressenpuffer 17 aufweist. Bei diesem Ausführungsbeispiel sind die Adressenpuffer 151 bis 15N und der Leeradressenpuffer 17 durch einen RAM implementiert, der mit einem Bus 45 verbunden ist. Der RAM erfordert eine große Speicherkapazität, und er ist somit wünschenswerterweise als LSI ausgebildet, die verschiedene Steuerungen zum Steuern des gemeinsam genutzten Puffers 11 enthält. Der bei diesem Ausführungsbeispiel verwendete Bus 45 kann einen Adressenzeiger in einem Zeitschlitz transferieren.
  • In der Steuerungs-LSI können Puffer und Speicher kleiner Kapazität ausgebildet sein. Spezifisch hat die LSI Pufferspeicher mit kleiner Speicherkapazität (die hierin nachfolgend Ausgangszellenadressen-Vorpuffer genannt werden) 471 bis 47N, die wie die Hauptadressenpuffer 151 bis 15N für die jeweiligen Ausgangsports vorgesehen sind.
  • Anders ausgedrückt sind die Ausgangszellenadressen-Vorpuffer 471 bis 47N mit dem Bus 45 verbunden, so dass sie in einer Eins-zu-Eins-Entsprechung mit den Hauptadressenpuffern 151 bis 15N sind. Der Multicast-Zellenadressenzeiger einer Multicast-Zelle, die als Eingangszelle erscheint, wird in einer Nummer entsprechend der Sendezahl in relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gespeichert, die dem Ausgangsport entsprechen, zu welchen die Zelle auszugeben ist.
  • Nun wird der Betrieb des obigen ATM-Schalters beschrieben werden. Wenn eine Eingangszelle durch den Multiplexer 12 in einem Zustand empfangen wird, in welchem der Leeradressenzeiger in der Vorstufe einer Warteschlange im Leeradres senpuffer 17 gespeichert ist, in welchem der Leeradressenzeiger, der die Speicherposition im gemeinsam genutzten Puffer 11 bestimmt, bei welcher die Eingangszelle zu speichern ist, aus dem Leeradressenpuffer 17 unter einer Steuerung einer Schreibsteuerung ausgelesen wird und zu dem relevanten oder den relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N sowie zu dem gemeinsam genutzten Puffer 17 gesendet wird, wird somit die Eingangszelle bei der Speicherposition in dem gemeinsam genutzten Puffer 11 geschrieben, die durch den Leeradressenzeiger bestimmt ist, während der Leeradressenzeiger versuchsweise als Eingangszellen-Speicheradressenzeiger in den relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gehalten wird.
  • Wenn eine Unicast-Zelle als Eingangszelle geliefert wird, wird der Eingangszellen-Speicheradressenzeiger in der Form einer Warteschlange im relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gespeichert, der dem Ausgangsport entspricht, zu welchem die Eingangszelle auszugeben ist.
  • Wenn eine Multicast-Zelle als die Eingangszelle geliefert wird, wird der im Leeradressenpuffer 17 gespeicherte Eingangszellen-Speicheradressenzeiger gleichzeitig oder aufeinanderfolgend in relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N entsprechend einer Nummer der Sendezahl, d. h. entsprechend den Ausgangsports, zu welchen die Zelle auszugeben ist, gespeichert.
  • Aus den relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N wird der Adressenzeiger aufeinanderfolgend zu dem Bus 45 ausgesendet und als Ausgangsadressenzeiger auf einer Zeitmultiplexbasis in denjenigen der Adressenpuffer 151 bis 15N entsprechend den relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gespeichert. Diese Operation kann in den oben angegebenen verarbeitungsfreien Zeiten durchgeführt werden.
  • Wenn die Ausgangszelle ausgegeben wird, wird ein Ausgangszellenadressenspeicher im RAM unter einer Anweisung durch eine Lesesteuerung ausgelesen und als Leeradressenzeiger über den Bus 45 ausgesendet, um im gemeinsam genutzten Puffer 11 gespeichert zu werden.
  • Bei diesem Ausführungsbeispiel wird ein Multicast-Zellenadressenzeiger, der versuchsweise in relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N, die im RAM ausgebildet sind, gespeichert ist, über den Bus 45 zu den entsprechenden der Adressenpuffer 151 bis 15N gesendet.
  • Unter der Annahme, dass die Zugriffsgeschwindigkeit der LSI mit den Puffern kleiner Speicherkapazität 471 bis 47N und dem gemeinsam genutzten Puffer 11 und die Zugriffsgeschwindigkeit der LSI und des RAM gleich sind, ist es deshalb, weil der Adressenzeiger aus etwa 2 Bytes besteht, während die ATM-Zelle aus 53 Bytes besteht, möglich, etwa das 26-fache eines Adressenzeigertransfers durch den Bus während des Betriebs der Eingabe oder der Ausgabe einer einzelnen Zelle zu erhalten. Somit interferiert der Adressenzeigertransfer über den Bus 46 im Fall einer Unicast-Zelle nicht mit einer Operation. Im Fall einer Multicast-Zelle interferiert der Zeitmultiplex nicht mit einer Operation, solange die Sendezahl nicht größer als die Anzahl von Adressenzeigertransferzeiten ist. Selbst in dem Fall, in welchem die Sendezahl größer als die Adressenzeigertransferzeitenanzahl ist, ist es durch Versehen der in der LSI ausgebildeten Warteschlange mit adäquaten Tiefen möglich, die Belastung aufgrund des Transfers im Vergleich mit dem Fall eines Speicherns eines Adressenzeigers abzumildern, der auf eine Eingabe einer Multicast-Zelle hin direkt in Adressenpuffern erzeugt wird.
  • Darüber hinaus ist es durch Aufteilen des Adressenzeiger-Speicherbereichs in zwei Teile, von denen einer in der LSI und einer in einem RAM getrennt von der LSI ausgebildet ist, möglich, einen Bereich zur Verfügung zu stellen, der eine große Menge von Adressenzeigern im externen RAM speichern kann, während die Verarbeitung auf ein Auftreten einer Multicast-Zelle mit dem Vorsehen eines Adressenzeiger-Speicherbereichs in der LSI erleichtert wird.
  • 6 zeigt ein spezifisches Beispiel des in 5 gezeigten Grundschemas. Gleiche Teile sind mit gleichen Bezugszeichen bezeichnet. Bei diesem Beispiel hat der Leeradressenpuffer 17 seine Eingangsseite mit der Ausgangsseite der Adressenpuffereinheit 15, dem gemeinsam genutzten Puffer 11 und einer Adressenzeiger-Freigabesteuerung 32 verbunden und seine Ausgangsseite mit dem gemeinsam genutzten Puffer 11 und der Eingangsseite der Ausgangszellenadressen-Vorpuffer 471 bis 47N verbunden. Eine Eingangszellenadressen-Schreibsteuerung 51 ist mit dem Multiplexer 12, den Ausgangszellenadressen-Vorpuffern 471 bis 47N und einer Multicast-Datentabelle 23 verbunden. Eine Ausgangszellen-Lesesteuerung 31 ist mit der Adressenpuffereinheit 15 verbunden. Die Eingangszellenadressen-Schreibsteuerung 51 und die Ausgangszellen-Lesesteuerung 31 sind zusammen mit den Ausgangszellenadressen-Vorpuffern 471 bis 47N mit einer LSI implementiert.
  • Eine Hauptadressen-Schreibsteuerung 52 ist zwischen den Ausgangszellenadressen-Vorpuffern 471 bis 47N und der Adressenpuffereinheit 15 vorgesehen. In ausgewählten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gespeicherte Adressenzeiger können über den Bus 45 zu entsprechenden der Adressenpuffer in der Adressenpuffereinheit 15 transferiert werden.
  • Bei diesem Schema trifft die Eingangszellenadressen-Schreibsteuerung 51 dann, wenn sich die Führungsdaten einer Eingangszelle, gekoppelt durch den Multiplexer 12, empfängt, eine Entscheidung diesbezüglich, ob die Eingangszelle eine Unicast-Zelle oder eine Multicast-Zelle ist, und liefert auch eine Anweisung zum Leeradressenpuffer 17, um den Leeradressenzeiger daraus auszulesen. Der ausgelesene Leeradressenzeiger wird als Eingangszellen-Schreibadressenzeiger zum gemeinsam genutzten Puffer 11 gesendet, um die Eingangszelle in der Adresse des gemeinsam genutzten Puffers 11 zu speichern, die durch den Eingangszellen-Schreibadressenzeiger bestimmt ist.
  • Wenn eine Unicast-Zelle als Eingangszelle geliefert wird, speichert die Eingangszellenadressen-Schreibsteuerung 51 einen Eingangszellen-Schreibadressenzeiger in einen der Ausgangszellenadressen-Vorpuffer 471 bis 47N. Wenn eine Multicast-Zelle als Eingangszelle gegeben ist, greift die Eingangszellen-Schreibsteuerung 51 auf die Multicast-Datentabelle 23 zu, um die Multicast-Führungsdaten aus der Tabelle 23 zu erhalten, die die Ausgangsports anzeigen, zu welchen diese Multicast-Zelle auszugeben ist, und gemäß den Multicast-Führungsdaten speichert sie den Adressenzeiger im gemeinsamen Adressenpuffer 11 gleichzeitig mit denjenigen der Ausgangszellenadressen-Vorpuffer 471 bis 47N entsprechend den Ausgangsports, die für das Senden relevant sind. Die Operation eines Speichers des Adressenzeigers in den angezeigten der Ausgangszellenadressen-Vorpuffer 471 bis 47N kann auf einer Zeitmultiplexbasis während der Speicherung der Eingangszelle im gemeinsam genutzten Puffer 11 durchgeführt werden. In jedem Fall wird im Fall der Eingabe einer Multicast-Zelle als Eingangszelle der Adressenzeiger in der Form einer Warteschlange in demjenigen der Ausgangszellenadressen-Vorpuffer 471 bis 47N entsprechend den Ausgangsports gespeichert, die für das Senden relevant sind.
  • Wie es oben beschrieben ist, dauert, während das Schreiben einer Eingangszelle in den gemeinsam genutzten Puffer 11 mehrere Taktpulse erfordert, das Schreiben eines Adressenzeigers in einen oder mehrere der Ausgangszellenadressen-Vorpuffer 471 bis 47N normalerweise nur einen einzigen Taktpuls. Wenn das Schreiben der Eingangszelle und das Schreiben des Adressenzeigers gleichzeitig durchgeführt werden, wie es oben beschrieben ist, wird eine freie Zeit entsprechend mehrerer Taktpulse auf der Seite des Schreibens des Adressenzeigers erzeugt.
  • Durch Nutzen dieser freien Zeit wird der Adressenzeiger aufeinanderfolgend unter einer Steuerung der Hauptadressen-Schreibsteuerung 52 von dem einen oder den mehreren der Ausgangszellenadressen-Puffer 471 bis 47N zu dem entsprechenden oder den entsprechenden der Adressenpuffer (1) transferiert, die für jedes Ausgangsport vorgesehen sind.
  • Der Adressenzeiger, der auf die obige Weise in der Adressenpuffereinheit 15 gespeichert worden ist, wird in Reaktion auf Anweisungen von der Lesesteuerung 31 aufeinanderfolgend ausgelesen, um als Ausgangszellen-Leseadressenzeiger im gemeinsam genutzten Puffer 11 gespeichert zu werden. Auf den Multicast-Zellenspeicherbereich im gemeinsam genutzten Puffer 11, in welchem die Multicast-Zelle gespeichert worden ist, wird somit für eine Vielzahl von Malen entsprechend der Sendezahl, d. h. der Nummer von Ausgangsports, zu welchen die Multicast-Zelle auszugeben ist, zugegriffen.
  • Die aus dem gemeinsam genutzten Puffer 11 ausgelesene Multicast-Zelle wird aufeinanderfolgend durch einen Demultiplexer 13 als Ausgangszellen jeweils zu einem jeweiligen relevanten Ausgangsport ausgesendet. Jedes Mal wenn eine Zelle ausgesendet wird, dekrementiert die Adressenzeiger-Freigabesteuerung 32 die Sendezahl (CC) um Eins. Auf diese Weise wird eine Steuerung gleich derjenigen im in 2 gezeigten Fall durchgeführt.
  • Dieses Schema lässt ein Implementieren der Adressenpuffereinheit 15 und des Leeradressenpuffers 17, die große Speicherkapazitäten erfordern, mit einem normalen RAM zu, während die Ausgangszellenadressen-Vorpuffer 471 bis 47N und andere Steuerungen kleiner Speicherkapazitäten mit einer LSI implementiert werden.
  • Wiederum werden beim in 6 gezeigten ATM-Schalter Adressenzeiger, die Multicast-Zellenspeicherpositionen im gemeinsam genutzten Puffer 11 bestimmen, versuchsweise in relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N gespeichert und dann in der Adressenpuffereinheit 15 neu angeordnet. Bei diesem Ausführungsbeispiel ist es auch möglich, jeden Adressenzeiger durch effektives Nutzen der verarbeitungsfreien Zeiten zu transferieren, die im gemeinsam genutzten Puffer 11 auftreten.
  • 7 zeigt ein anderes Beispiel des in 6 gezeigten Grundschemas. Dieser ATM-Schalter weist einen einzigen Hauptadressenspeicher 55 anstelle der Adressenpuffereinheit 15 und des Leeradressenpuffers 17, die in 6 gezeigt sind, auf. Der Hauptadressenspeicher 55 wird auf einer Zeitmultiplexbasis verwendet, so dass er als die Adressenpuffereinheit 15 und auch als der Leeradressenpuffer 17 dienen kann. Für den Zeitmultiplexbasis-Betrieb des Hauptadressenspeichers 55 ist eine Steuerung für einen Zugriff auf Zeitmultiplexbasis 56 mit ihm verbunden. Eine Eingangszellenadressen-Schreibsteuerung 51, eine Ausgangszellenadressen-Lesesteuerung 35 und eine Hauptspeicheradressen-Schreibsteuerung 52 sind mit der Steuerung für einen Zugriff auf Zeitmultiplexbasis 56 verbunden. Von diesen Steuerungen werden Adressendaten auf einer Zeitmultiplexbasis zum Hauptadressenspeicher 55 zugeführt. Jeder von einer Adresse des Hauptadressenspeichers 55 gelesene Adressenzeiger wird als ein Eingangszellen-Schreibadressenzeiger über den Bus 45 zu dem gemeinsam genutzten Puffer 11 und einem oder mehreren relevanten der Ausgangszellenadressen-Vorpuffer 471 bis 47N zugeführt und er wird weiterhin in einem Ausgangszellen-Speicheradressenzeiger 57 gespeichert und dann als Ausgangszellen-Leseadressenzeiger zum gemeinsam genutzten Puffer 11 ausgesendet.
  • In Reaktion auf Anweisungen von der Ausgangszellen-Lesesteuerung 35 werden Leeradressenzeiger im Hauptadressenspeicher 55 gespeichert.
  • Der Betrieb des in 7 gezeigten ATM-Schalters ist derselbe wie der zuvor in Verbindung mit 6 beschriebene Betrieb, außer dass er auf einer Zeitmultiplexbasis durchgeführt wird. Daher wird er hier nicht beschrieben.
  • 8 zeigt ein weiteres Ausführungsbeispiel des ATM-Schalters. Bei diesem Ausführungsbeispiel kann ungleich den vorherigen Ausführungsbeispielen ein Bilden einer erneuten Warteschlange im gemeinsam genutzten Puffer 11 durchgeführt werden. In 8 sind Adressenzeiger-Sendewege durch fette Linie gezeigt.
  • Bei diesem Ausführungsbeispiel werden Unicast-Zellen, Multicast-Zellen und Adressenzellen in den gemeinsam genutzten Puffer 11 geschrieben, wie es später detailliert beschrieben werden wird. Wie es in 8 gezeigt ist, sind Daten, die für diese drei unterschiedlichen Arten von Zellen nötig sind, eine Sendezahl (CC) (1), Anfangsblockumsetzungsdaten (2), Nutzlast (3), Zellenartidentifizierer (4), Multicast-Zellenadressenzeiger (5), nächster Adressenzeiger (6) und Multicast-Führungsdaten (oder Sende-Führungsdaten) (7). Der gemeinsam genutzte Puffer 11 hat Bereiche zum Speichern der obigen Daten, wie es gezeigt ist.
  • Eine zum Multiplexer 12 zuzuführende Eingangszelle hat ihren Anfangsblock in einer Anfangsblockumsetzungseinheit 61 einer Anfangsblockumsetzung unterzogen, wie es in 10 gezeigt ist. Die Anfangsblockumsetzung enthält somit Führungsdaten. Bei diesem Ausführungsbeispiel hat der Anfangsblock der Unicast-Zelle den Zellenartidentifizierer (4) zusätzlich zu den Anfangsblockumsetzungsdaten (2). Andererseits hat der Anfangsblock der Multicast-Zelle, wie beim früher beschriebenen Fall, die Sendezahl (1) und die Anfangsblockumsetzungsdaten (2).
  • Die 9(A) bis 9(C) zeigen die Unicast-Zelle, die Multicast-Zelle und die Adressenzelle, die in dem in 8 gezeigten Schema behandelt werden.
  • Die Unicast-Zelle besteht, wie es in 9(A) gezeigt ist, aus den Anfangsblockumsetzungsdaten (2), dem Zellenartidentifizierer (4), der Nutzlast (3) und dem nächsten Adressenzeiger (6). Die Multicast-Zelle besteht, wie es in 9(B) gezeigt ist, aus der Sendezahl (1), den Anfangsblockumsetzungsdaten (2), der Nutzlast (3), dem nächsten Adressenzeiger (6) und den Multicast-Führungsdaten (7). Die Adressenzelle wird im ATM-Schalter erzeugt, wie es gezeigt ist, und sie besteht, wie es in 9(C) gezeigt ist, aus dem Zellenartidentifizierer (4), dem Multicast-Zellen-Adressenzeiger (5) und dem nächsten Adressenzeiger (6). Der Zellenartidentifizierer (4) dient zum Identifizieren der Unicast-Zelle und der Adressenzelle. Bei diesem Ausführungsbeispiel ist er logisch "0" bei der Unicast-Zelle und logisch "1" bei der Adressenzelle.
  • Geht man zurück zur 8, werden die Führungsdaten im Anfangsblock einer Zelle, die durch die Anfangsblockumsetzungseinheit 61 und den Multiplexer 12 einge geben wird (die hierin nachfolgend gegenwärtige Eingangszelle genannt wird), zu einer Schreibsteuerung 71 oder einer Multicast-Schreibsteuerung 72 gesendet, während das übrige der gegenwärtigen Eingangszelle zum gemeinsam genutzten Puffer 11 gesendet wird. Die Speicheradresse zu dieser Zeit wird durch einen von der Schreibsteuerung 71 oder der Multicast-Schreibsteuerung 72 ausgegebenen Adressenzeiger bestimmt. Zu der Zeit, zu welcher die Speicherung der gegenwärtigen Eingangszelle begonnen wird, sind der Multicast-Adressenzeiger (5), der nächste Adressenzeiger (6) und die Multicast-Führungsdaten (7) noch nicht bestimmt worden.
  • Die Schreibsteuerung 71 hat Ausgangspuffer, die jeweils jedem Ausgangsport entsprechen. In jedem Puffer wird ein Adressenzeiger gespeichert, der die Speicheradresse bestimmt, in welcher eine zu dem entsprechenden Ausgangsport zu sendende Zelle zu speichern ist. In der Multicast-Schreibsteuerung 72 wird ein Adressenzeiger gespeichert, der eine Multicast-Zellen-Speicheradresse bestimmt. Der in der Schreibsteuerung 71 oder der Multicast-Schreibsteuerung 72 gespeicherte Adressenzeiger wird als nächster Adressenzeiger ausgesendet, wie es später beschrieben werden wird.
  • Wenn die gegenwärtige Eingangszelle eine Unicast-Zelle ist, sendet die Schreibsteuerung 71 einen relevanten von Adressenzeigern, die für die jeweiligen Ausgangsports gehalten sind, als einen Adressenzeiger, der die Speicheradresse der gegenwärtigen Eingangszelle bestimmt, zum gemeinsam genutzten Puffer 11 gemäß den Führungsdaten. Als Ergebnis wird die gegenwärtige Eingangszelle zu diesem Zeitpunkt, außer ihrer Führungsdaten, in der Adresse des gemeinsam genutzten Puffers 11 gespeichert, die durch den Adressenzeiger von der Schreibsteuerung 71 bestimmt ist.
  • Zu dieser Zeit nimmt die Schreibsteuerung 71 einen Adressenzeiger aus dem Leeradressenpuffer 73 heraus und hält diesen Adressenzeiger als den neuen nächsten Adressenzeiger. Dieser aus dem Leeradressenpuffer 73 herausgenommene Adressenzeiger wird als der nächste Adressenzeiger (6) zusammen mit der gegenwärtigen Eingangszelle zu diesem Zeitpunkt im gemeinsam genutzten Puffer 11 gespeichert.
  • Wenn die gegenwärtige Eingangszelle eine Multicast-Zelle ist, sendet die Multicast-Schreibsteuerung 72 einen in ihr gehaltenen Adressenzeiger als den Speicherad ressenzeiger für eine gegenwärtige Eingangszelle zum gemeinsam genutzten Puffer 11. In diesem Fall sind die Operation der Multicast-Schreibsteuerung 72, um den neuen nächsten Adressenzeiger zu erhalten, und die Operation einer Verarbeitung dieses nächsten Adressenzeigers dieselben wie im Fall einer Unicast-Zelle.
  • Wenn eine Multicast-Zelle eingegeben wird, greift jedoch, ungleich dem Fall der Unicast-Zelle, die Multicast-Schreibsteuerung 72 auf die Multicast-Zielorttabelle 80 gemäß den Führungsdaten zu und werden die Multicast-Führungsdaten (7) von der Tabelle 80 zusammen mit der gegenwärtige Eingangszelle im gemeinsam genutzten Puffer 11 gespeichert.
  • Durch die obigen Operationen wird eine Warteschlange für die Unicast-Zellen im gemeinsam genutzten Puffer 11 in der Form einer Kette in Bezug auf die entsprechenden Ausgangsports ausgebildet, während für Multicast-Zellen eine separate Warteschlange in der Form einer Kette ausschließlich dieser Zellen ausgebildet wird. Das gegenwärtige Schema ist dasselbe wie das in 1 gezeigte Schema, solange die Warteschlange für Unicast-Zellen und die Warteschlange für Multicast-Zellen separat ausgebildet sind, aber es ist von dem in 1 gezeigten Fall diesbezüglich unterschiedlich, dass diese Warteschlangen im gemeinsam genutzten Puffer 11 ausgebildet werden.
  • Mit den Warteschlangen für Unicast-Zellen und für Multicast-Zellen im gemeinsam genutzten Puffer 11 ausgebildet, führt die Multicast-Lesesteuerung 75 die Operation für ein Bilden von neuen Warteschlangen, die oben beschrieben ist, in einer freien Zeit im gemeinsam genutzten Puffer 11 durch.
  • Zu dieser Zeit ist ein Adressenzeiger, der eine Speicherposition im gemeinsam genutzten Puffer 11 bei der Vorstufe der Warteschlange für Multicast-Zellen bestimmt, in einer Multicast-Lesesteuerung 75 gespeichert worden. In diesem Zustand sendet die Multicast-Leseteuerung 75 den Adressenzeiger für eine Vorstufe für eine Warteschlange für Multicast-Zellen, der in ihr gehalten ist, zu einem Multicast-Zellenadressenzeigerregister 83 sowie zum gemeinsam genutzten Puffer 11.
  • Als Ergebnis werden nur der nächste Adressenzeiger (6) und die Multicast-Bestimmungsdaten (7), die zusammen mit den Zellendaten in der durch diesen Adressenzeiger bestimmten Speicherposition gespeichert sind, unter einer Steuerung der Multicast-Lesesteuerung 75 aus dem gemeinsam genutzten Puffer 11 ausgelesen. Der somit ausgelesene nächste Adressenzeiger (6) wird zur Multicast-Lesesteuerung 75 gesendet, während die Multicast-Führungsdaten (7) zu einer Steuerung für ein erneutes Bilden einer Warteschlange 85 gesendet werden.
  • Diese Operationen werden in freien Zeiten durchgeführt, die im gemeinsam genutzten Puffer 11 auftreten. In jedem Fall sind die Zeiten, die für das Lesen des nächsten Adressenzeigers und der Multicast-Führungsdaten und das Verarbeiten der Mehrfachadressenzelle erforderlich sind, kürzer als die Zeiten für ein Schreiben und Lesen der Gesamtheit der Zelle in den und aus dem gemeinsam genutzten Puffer 11. Daher ist es möglich, das Lesen des Multicast-Adressenzeigers und der Multicast-Führungsdaten und die Verarbeitung der Adressenzelle für eine Vielzahl von Malen in freien Zeiten bei der Verarbeitung von einer Zelle durchzuführen.
  • Der in der obigen Operation ausgelesene nächste Adressenzeiger (6) wird als der Adressenzeiger, der die nächste Vorstufen-Multicast-Zelle in der Multicast-Lesesteuerung 75 bestimmt, gehalten.
  • In der Steuerung für ein erneutes Bilden einer Warteschlange 85 wird eine Adressenzelle, wie es in 9(C) gezeigt ist, in der oben angegebenen freien Zeit gemäß den ausgelesenen Multicast-Führungsdaten ausgebildet. Die relevante Ausgabe zu dieser Zeit wird aufeinanderfolgend zur Schreibsteuerung 71 gesendet. Zu dieser Zeit liefert die Steuerung für ein erneutes Bilden einer Warteschlange 85 eine Anweisung zur Schreibsteuerung 71, um die Adressenzelle zu dem Ende der Warteschlange hinzuzufügen, die in der Form der Ausgangsportkette ausgebildet ist. Die Operation eines Hinzufügens der Adressenzelle zum Ende der Warteschlange wird auf dieselbe Weise wie dann durchgeführt, wenn eine Unicast-Zelle eingegeben wird. Als Ergebnis dieser Operation hat die durch die Steuerung für ein erneutes Bilden einer Warteschlange 85 erzeugte Adressenzelle einen Adressenzeiger, der logisch "1" hat, wie es durch die Steuerung für ein erneutes Bilden einer Warteschlange 85 angewiesen ist, als den Zellenartidentifizierer (4), und wird als der Multicast-Adressenzeiger (5) im Multicast-Zellenadressenzeigerregister 83 gespeichert. Gleich dem Fall einer Unicast-Zelle enthält die Adressenzelle einen Adressenzeiger, der vom Leeradressenpuffer 73 als der nächste Adressenzeiger (6) zur Verfügung gestellt wird.
  • Ein Bilden einer Warteschlange für eine Multicast-Zelle wird somit durch Hinzufügen einer solchen Adressenzelle zum Ende der Warteschlange von Unicast-Zellen entsprechend jeweiligen Ausgangsports erhalten.
  • Durch die Operation eines erneuten Bildens einer Warteschlange wird die Multicast-Zelle auf derartige Weise zu einer Ausgangsport-Warteschlange gebracht, dass sie durch den Adressenzeiger (5) in einer Adressenzelle A1 verbunden ist, wie es in 11 gezeigt ist. Nimmt man Bezug auf 11, die das Konzept der obigen Operation für ein erneutes Bilden einer Warteschlange zeigt, wird dann, wenn der nächste Adressenzeiger (6) einer Unicast-Zelle S1 die Adresse der Adressenzelle A1 bestimmt, eine Multicast-Zelle M1 aus einer Adresse ausgelesen, die durch den Multicast-Adressenzeiger (5) in der Adressenzelle A1 bestimmt ist. Diese Operation wird für jede Warteschlange entsprechend jedem Ausgangsport durchgeführt.
  • Nun wird die Zellenausgabeoperation beschrieben werden. Zuerst sendet die Ausgangszellen-Lesesteuerung 74 einen relevanten von Adressenzeigern, die Speicherpositionen im gemeinsam genutzten Puffer 11 der Vorstufenzellen in den Zellen-Warteschlangen für jeweilige Ausgangsports bestimmen, zum gemeinsam genutzten Puffer 11. Der gemeinsam genutzte Puffer 11 liest nur den nächsten Adressenzeiger (6) und den Zellenartidentifizierer (4) aus, die zusammen mit Daten gespeichert sind, die bei der Position gespeichert sind, die durch den Adressenzeiger bestimmt ist, und sendet den ausgelesenen nächsten Adressenzeiger (6) zu der Ausgangszellen-Lesesteuerung 74, während er den ausgelesenen Zellenartidentifizierer (4) zu einer Steuerung für ein erneutes Lesen einer Ausgangszelle 76 sendet.
  • Der ausgelesene nächste Adressenzeiger (6) wird in der Ausgangszellen-Lesesteuerung 74 als Adressenzeiger gehalten, der die nächste Vorstufenzelle des relevanten Ausgangsports bestimmt.
  • Wenn die Steuerung für ein erneutes Lesen einer Ausgangszelle 76 zu dieser Zeit bestimmt, dass der Zellenartidentifizierer (4) logisch "0" ist, was eine Unicast-Zelle anzeigt, werden die Anfangsblockumsetzungsdaten (2) und die Nutzlast (3) dieser Unicast-Zelle kontinuierlich ausgelesen und als Ausgangszelle zum relevanten Ausgangsport gesendet.
  • Wenn bestimmt wird, dass der Zellenartidentifizierer (4) logisch "1" ist, was eine Adressenzelle anzeigt, wird der Multicast-Zellenadressenzeiger (5) darin ausgelesen und zur Steuerung für ein erneutes Lesen einer Ausgangszelle 76 gesendet. Die Steuerung für ein erneutes Lesen einer Ausgangszelle 76 weist somit wieder den gemeinsam genutzten Puffer 11 an, die relevante Multicast-Zelle gemäß dem Multicast-Zellen-Adressenzeiger (5) auszulesen. Die so ausgelesene Multicast-Zelle wird als Ausgangszelle zu den relevanten Ausgangsports gesendet.
  • Um die Anzahl von Malen für ein Zugreifen auf den gemeinsam genutzten Puffer 11 zu reduzieren, kann die Operation eines Auslesens des Multicast-Zellenadressenzeigers (5) gleichzeitig mit dem Lesen des nächsten Adressenzeigers (6) und des Zellenartidentifizierers (4) unter einer Steuerung der Ausgangszellen-Lesesteuerung 74 durchgeführt werden.
  • Wenn die Ausgangszelle aus den Ausgangsports ausgegeben wird, wird der Adressenzeiger, der verwendet worden ist, um die Unicast-Zelle oder die Adressenzelle auszulesen, als Leeradressenzeiger im Leeradressenpuffer 73 gespeichert.
  • Wenn eine Adressenzeiger-Freigabesteuerung 81 zu dieser Zeit detektiert, dass die Sendezahl, die zusammen mit der Multicast-Zelle gespeichert ist, "1" ist, speichert sie den Multicast-Adressenzeiger (5) in der Steuerung für ein erneutes Lesen einer Ausgangszelle 76 als Leeradressenzeiger im Leeradressenpuffer 73 und gibt die relevante Speicherposition frei.
  • Wenn die Sendezahl "2" oder darüber ist, wird sie um Eins dekrementiert und dann zurück in den Bereich geschrieben, in welchem sie zusammen mit der Multicast-Zelle im gemeinsam genutzten Puffer 11 gespeichert worden ist. Zu dieser Zeit wird der Multicast-Adressenzeiger (5) nicht im Leeradressenpuffer 73 gespeichert. Ein solcher Prozess in Bezug auf die Sendezahl wird in der Adressenzeiger-Freigabesteuerung 81 ausgeführt.
  • Während das obige Ausführungsbeispiel den Leeradressenpuffer 73 zum Speichern von Leeradressenzeigern verwendet, ist es auch möglich, die nicht verwendeten Bereiche im gemeinsam genutzten Puffer 11 bezüglich einer Warteschlange mit einer nächsten Adressenzeigerkettenkonfiguration zu managen.
  • Während das in 8 gezeigte Schema so beschrieben wurde, dass Multicast-Zellen im gemeinsamen genutzten Puffer 11 gespeichert sind, ist es offensichtlich ebenso möglich, einen ausschließlichen Multicast-Zellenpuffer zu verwenden.
  • In dem System, wie es in der japanischen offengelegten Patentveröffentlichung Nr. 5-276189 beschrieben ist, in welcher Warteschlangen für alle möglichen Multicast-Zellen vorbereitet werden und nach einem Senden einer Multicast-Zelle zu allen bestimmten Ausgangsports die nächste Multicast-Zelle verarbeitet wird, wird auf die Ausgabe der nächsten Multicast-Zelle gewartet, bis die gegenwärtige Multicast-Zelle verarbeitet worden ist.
  • Beim ATM-Schalter gemäß der vorliegenden Erfindung wird die Adresse im gemeinsam genutzten Puffer, in welchem eine Multicast-Zelle gespeichert ist, oder die Zelle selbst, erneut in eine Warteschlange gebracht, d. h. zu den relevanten der Warteschlangen für Unicast-Zellen hinzugefügt, die für die jeweiligen Ausgangsports vorgesehen sind, indem freie Zeiten im gemeinsam genutzten Puffer verwendet werden. Die Zelle kann somit als Ausgangszelle verarbeitet werden, um zu unterschiedlichen Ausgangsports gesendet zu werden. Es ist somit möglich, die nachteiligen Effekte der HOL-Blockierung, d. h. ein Warten auf eine Multicast-Zelle, in einem solchen Fall zu eliminieren, wie dann, wenn die Multicast-Zelle als Ausgangszelle verarbeitet wird, die zu einer Zeit bzw. gleichzeitig zu unterschiedlichen Ausgangsports auszusenden ist. Dies lässt ein extremes Erhöhen der Multicast-Zellen-Sendeeffizienz zu.
  • Änderungen bezüglich des Aufbaus werden Fachleuten auf dem Gebiet einfallen, und verschiedene offensichtlich unterschiedliche Modifikationen und Ausführungsbeispiele können durchgeführt werden, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen, wie er in den beigefügten Ansprüchen definiert ist. Die in der vorangehenden Beschreibung und den beigefügten Zeichnungen aufgezeigte Sache ist nur anhand einer Illustration angeboten. Es ist daher beabsichtigt, dass die vorangehende Beschreibung eher als illustrativ als als beschränkend angesehen wird.

Claims (6)

  1. ATM-Schalter mit einer Vielzahl von Eingangsports zum Empfangen von Eingangszellen, einer Vielzahl von Ausgangsports zum Ausgeben von Ausgangszellen und einem gemeinsam genutzten Puffer (11), der eine Vielzahl von Adressen hat und Mehrpunktverbindungszellen bzw. Multicast-Zellen verarbeiten kann, die jeweils zu einer Vielzahl von Ausgangsports auszugeben sind; wobei der ATM-Schalter weiterhin einen Multicast-Zellenpuffer (16) zum exklusiven und temporären Speichern des Inhalts eines Adressenzeigers zum Anzeigen einer Adresse im gemeinsam genutzten Puffer, in dem die Multicast-Zelle zu speichern ist, zusammen mit Multicast-Zielortdaten bei der Ankunftszeit der Multicast-Zelle und Adressenpuffer (151, ..., 15N), die jeweils für jeden der Ausgangsports vorgesehen sind, aufweist; und wobei der ATM-Schalter dazu geeignet ist, während freier Zeiten den Inhalt des aus dem Multicast-Zellenpuffer ausgelesenen Adressenzeigers zu relevanten der Adressenpuffer gemäß den Multicast-Zielortdaten zu senden und darin zu speichern, wobei auf den gemeinsam genutzten Puffer gemäß dem Inhalt in jedem der Adressenpuffer zum Ausgeben der Multicast-Zellen zu jeweiligen Ausgangsports zugegriffen wird und wobei die freien Zeiten durch die Differenz zwischen einer Zeit, die zum Speichern der Eingangszellen im gemeinsam genutzten Puffer erforderlich ist, und der Zugriffszeit der Adressenpuffer zur Verfügung gestellt sind.
  2. ATM-Schalter nach Anspruch 1, wobei die Multicast-Zelle einen Verbindungszahlbereich enthält, der eine Verbindungszahl anzeigt, wobei die Verbindungszahl um Eins dekrementiert wird, wann immer die Multicast-Zelle zum jeweiligen Ausgangsport ausgegeben wird.
  3. ATM-Schalter nach Anspruch 1, der weiterhin einen Leeradressenpuffer (17) zum Speichern von Leeradressen im gemeinsam genutzten Puffer als Leeradressenzeiger aufweist, wobei die Leeradressenzeiger zusammen mit entsprechenden Multicast-Führungsdaten im Multicast-Zellenadressenpuffer (16) gespeichert sind.
  4. ATM-Schalter nach Anspruch 3, wobei die Adressenpuffer (151, ..., 15N), der Multicast-Zellenadressenpuffer (16) und der Leeradressenpuffer (17) zusammen durch einen einzigen RAM gebildet sind, wobei der ATM-Schalter weiterhin eine Zeitgetrenntlage-Zugriffssteuerung (36) zum Zugreifen auf den RAM auf einer Zeitgetrenntlage-Basis aufweist.
  5. ATM-Schalter nach Anspruch 1, wobei der Multicast-Zellenpuffer ein für jeden der Ausgangsports vorgesehener Voradressenpuffer ist, der Inhalt im Voradressenpuffer aufeinanderfolgend zum jeweiligen Adressenpuffer transferiert wird und die Kapazität des Voradressenpuffers kleiner als die Kapazität des Adressenpuffers ist.
  6. ATM-Schalter nach Anspruch 5, wobei die Voradressenpuffer durch eine von den Adressenpuffern physikalisch unterschiedliche LSI gebildet sind.
DE1996637462 1995-12-06 1996-12-05 ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen Expired - Lifetime DE69637462T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP31833895A JP2842522B2 (ja) 1995-12-06 1995-12-06 Atmスイッチ及びその制御方法
JP31833895 1995-12-06

Publications (2)

Publication Number Publication Date
DE69637462D1 DE69637462D1 (de) 2008-04-24
DE69637462T2 true DE69637462T2 (de) 2009-03-19

Family

ID=18098057

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1996637462 Expired - Lifetime DE69637462T2 (de) 1995-12-06 1996-12-05 ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen

Country Status (4)

Country Link
US (1) US5825767A (de)
EP (1) EP0778686B1 (de)
JP (1) JP2842522B2 (de)
DE (1) DE69637462T2 (de)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0164106B1 (ko) * 1995-12-26 1998-12-01 양승택 에이티엠 가상 경로 교환 시스템에서 예약형 가상 경로 제어를 위한 발신 및 착신 처리 방법
JPH09326807A (ja) * 1996-06-06 1997-12-16 Nec Corp 共有セルメモリ型atm交換制御方法及び共有セルメモリ型atm交換スイッチ
GB2316572B (en) * 1996-08-14 2000-12-20 Fujitsu Ltd Multicasting in switching apparatus
JP2928165B2 (ja) * 1996-08-16 1999-08-03 日本電気マイコンテクノロジー株式会社 Atmスイッチ
GB9618131D0 (en) * 1996-08-30 1996-10-09 Sgs Thomson Microelectronics Improvements in or relating to an ATM switch
CA2218218A1 (en) * 1996-11-08 1998-05-08 At&T Corp. Promiscuous network monitoring utilizing multicasting within a switch
KR100467708B1 (ko) * 1996-12-21 2005-05-11 삼성전자주식회사 비동기전송모드교환시스템의셀처리장치및방법
US6088356A (en) 1997-06-30 2000-07-11 Sun Microsystems, Inc. System and method for a multi-layer network element
US6094435A (en) 1997-06-30 2000-07-25 Sun Microsystems, Inc. System and method for a quality of service in a multi-layer network element
US6081522A (en) 1997-06-30 2000-06-27 Sun Microsystems, Inc. System and method for a multi-layer network element
US6016310A (en) 1997-06-30 2000-01-18 Sun Microsystems, Inc. Trunking support in a high performance network device
US6246680B1 (en) 1997-06-30 2001-06-12 Sun Microsystems, Inc. Highly integrated multi-layer switch element architecture
US6049528A (en) 1997-06-30 2000-04-11 Sun Microsystems, Inc. Trunking ethernet-compatible networks
US6119196A (en) 1997-06-30 2000-09-12 Sun Microsystems, Inc. System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
US6115378A (en) * 1997-06-30 2000-09-05 Sun Microsystems, Inc. Multi-layer distributed network element
US6044418A (en) 1997-06-30 2000-03-28 Sun Microsystems, Inc. Method and apparatus for dynamically resizing queues utilizing programmable partition pointers
US6081512A (en) 1997-06-30 2000-06-27 Sun Microsystems, Inc. Spanning tree support in a high performance network device
US6044087A (en) 1997-06-30 2000-03-28 Sun Microsystems, Inc. Interface for a highly integrated ethernet network element
US6128295A (en) * 1997-07-11 2000-10-03 Telefonaktiebolaget Lm Ericsson Buffering of point-to-point and/or point-to-multipoint ATM cells
US6272134B1 (en) * 1997-11-20 2001-08-07 International Business Machines Corporation Multicast frame support in hardware routing assist
FR2771573B1 (fr) * 1997-11-27 2001-10-19 Alsthom Cge Alkatel Element de commutation de paquets a memoires tampons
US6137807A (en) * 1997-12-05 2000-10-24 Whittaker Corporation Dual bank queue memory and queue control system
JP3563257B2 (ja) * 1998-02-20 2004-09-08 Necエレクトロニクス株式会社 Atmスイッチ回路
US6310875B1 (en) * 1998-03-30 2001-10-30 Nortel Networks Limited Method and apparatus for port memory multicast common memory switches
JP3604282B2 (ja) * 1998-06-15 2004-12-22 富士通株式会社 アドレス開放方法及び、これを用いるatm交換システムの共通バッファ装置
JP2000013385A (ja) 1998-06-19 2000-01-14 Fujitsu Ltd セルブリッジ装置及びセルブリッジ方法並びにセルブリッジ装置を有する情報伝送システム
JP3518441B2 (ja) 1999-10-01 2004-04-12 日本電気株式会社 ユニキャスト/マルチキャスト方式
JP2002033749A (ja) * 2000-07-18 2002-01-31 Fujitsu Ltd バッファ装置およびスイッチング装置
EP1317825B1 (de) 2000-09-12 2008-08-06 International Business Machines Corporation System und verfahren zur steuerung des mehrfachdatenverkehrs einer datenvermittlungsstelle
US6822958B1 (en) * 2000-09-25 2004-11-23 Integrated Device Technology, Inc. Implementation of multicast in an ATM switch
JP4080888B2 (ja) 2001-02-28 2008-04-23 インターナショナル・ビジネス・マシーンズ・コーポレーション 別々の出力を有するスイッチング機構及び方法
US6836480B2 (en) * 2001-04-20 2004-12-28 International Business Machines Corporation Data structures for efficient processing of multicast transmissions
US7110405B2 (en) * 2001-09-18 2006-09-19 Integrated Device Technology, Inc. Multicast cell buffer for network switch
US7151777B2 (en) * 2002-04-04 2006-12-19 Fujitsu Limited Crosspoint switch having multicast functionality
US6859434B2 (en) * 2002-10-01 2005-02-22 Comsys Communication & Signal Processing Ltd. Data transfer scheme in a communications system incorporating multiple processing elements
JP4432388B2 (ja) 2003-08-12 2010-03-17 株式会社日立製作所 入出力制御装置
JP4394988B2 (ja) * 2004-03-19 2010-01-06 富士通株式会社 パケット読出し制御方法及び装置
JP5016880B2 (ja) * 2006-09-21 2012-09-05 富士通株式会社 優先クラスに応じたメモリ管理方法及び装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5365519A (en) * 1991-03-05 1994-11-15 Hitachi, Ltd. ATM switch1ng system connectable to I/O links having different transmission rates
JP2667868B2 (ja) * 1988-04-06 1997-10-27 株式会社日立製作所 セル・スイッチング・システム
ES2111520T3 (es) * 1988-10-06 1998-03-16 Plessey Telecomm Disposicion de conmutacion asincrona por division de tiempo y metodo de funcionamiento de la misma.
JP3064650B2 (ja) 1992-03-27 2000-07-12 株式会社日立製作所 同報通信装置
JP3080787B2 (ja) * 1992-08-11 2000-08-28 株式会社日立製作所 同報機能を有するatmスイッチ回路およびその同報出力方法
JP3104429B2 (ja) * 1992-10-08 2000-10-30 株式会社日立製作所 コピー機能を有する共通バッファ形atmスイッチ及びそのコピー方法
US5583861A (en) * 1994-04-28 1996-12-10 Integrated Telecom Technology ATM switching element and method having independently accessible cell memories

Also Published As

Publication number Publication date
EP0778686A3 (de) 1998-02-04
DE69637462D1 (de) 2008-04-24
EP0778686A2 (de) 1997-06-11
US5825767A (en) 1998-10-20
EP0778686B1 (de) 2008-03-12
JPH09162879A (ja) 1997-06-20
JP2842522B2 (ja) 1999-01-06

Similar Documents

Publication Publication Date Title
DE69637462T2 (de) ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen
EP0412343B1 (de) Koppelnetz und Koppelnetzmodul für ein ATM-System
DE69733703T2 (de) Puffer von Mehrfachsendezellen in Vermittlungsnetzen
EP0446589B1 (de) Kopierfähige ATM-Vermittlungsstelle
DE69434705T2 (de) Multiprozessorsystem und Verfahren zur Zusammensetzung von ATM Zellen
DE69634857T2 (de) Ablaufsteuerung für eine informationspaketvermittlung
DE69915704T2 (de) Ampic dram
DE3752370T2 (de) Vermittlungssystem
DE69820084T2 (de) Netzwerkvorrichtung und Verfahren zur Reduzierung der System-Latenz
EP0320772B1 (de) Verfahren zur hybriden Paketvermittlung und Einrichtungen hierzu
DE69333206T2 (de) Paketvermittlungssystem unter Verwendung des Belegstatus der Ausgangspuffer
DE69737361T2 (de) Schnelle vermittlungsvorrichtung
DE69726995T2 (de) Mehrfachsende-Leitweglenkung in mehrstufigen Netzen
DE60214341T2 (de) Vermittlungsanordnung und -verfahren mit getrennten ausgangspuffern
DE69631055T2 (de) Speicherschnittstelleneinheit, vermittlungssystem mit gemeinsamem speicher und verfahren dazu
DE69733355T2 (de) Skalierbares hochleistungsvermittlungselement für ein koppelfeld mit gemeinsamen speicher zur vermittlung von paketen oder atm-zellen
DE60203057T2 (de) Effizienter Optimierungsalgorithmus für Speichergebrauch in Netzwerkanwendungen
DE60130079T2 (de) Verfahren und vorrichtung zur paketvermittlung mittels eines geteilten pufferspeichers
DE69233588T2 (de) ATM-Vermittlungsanordnung
DE60031596T2 (de) Zeitmultiplex-Vermittlungssystem (TDM) mit sehr breitem Speicher
DE69631265T2 (de) Vermittlungssystem
DE69832149T2 (de) ATM-Zellenübermittlungssystem
DE19507570C2 (de) Verfahren und Schaltungsanordnung zum Weiterleiten von über eine ATM-Kommunikationseinrichtung übertragenen Nachrichtenzellen an eine Abnehmerleitung
DE19531749A1 (de) Verkehrsgestaltungseinrichtung und Paket-Kommunikationsgerät
EP0692893B1 (de) Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
R082 Change of representative

Ref document number: 778686

Country of ref document: EP

Representative=s name: BETTEN & RESCH, DE

R081 Change of applicant/patentee

Ref document number: 778686

Country of ref document: EP

Owner name: RENESAS ELECTRONICS CORPORATION, JP

Free format text: FORMER OWNER: NEC ELECTRONICS CORP., KANAGAWA, JP

Effective date: 20120828

R082 Change of representative

Ref document number: 778686

Country of ref document: EP

Representative=s name: PATENTANWAELTE BETTEN & RESCH, DE

Effective date: 20120828