DE69217865T2 - Paralleldatenschieber von Teil- zu Gesamtwort - Google Patents

Paralleldatenschieber von Teil- zu Gesamtwort

Info

Publication number
DE69217865T2
DE69217865T2 DE69217865T DE69217865T DE69217865T2 DE 69217865 T2 DE69217865 T2 DE 69217865T2 DE 69217865 T DE69217865 T DE 69217865T DE 69217865 T DE69217865 T DE 69217865T DE 69217865 T2 DE69217865 T2 DE 69217865T2
Authority
DE
Germany
Prior art keywords
bits
data
parallel data
output
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69217865T
Other languages
English (en)
Other versions
DE69217865D1 (de
Inventor
William Hermas Stephenson
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.)
Alcatel Lucent NV
Original Assignee
Alcatel NV
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 Alcatel NV filed Critical Alcatel NV
Publication of DE69217865D1 publication Critical patent/DE69217865D1/de
Application granted granted Critical
Publication of DE69217865T2 publication Critical patent/DE69217865T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Communication Control (AREA)
  • Image Processing (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Description

    Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der digitalen Datenübertragungseinrichtungen und im besonderen eine Übertragungseinrichtung, welche die Schnittstelle zwischen zwei unterschiedlichen Übertragungsprotokollen bildet, einschließlich Protokollen, die mit unterschiedlichen Geschwindigkeiten und mit unterschiedlichen Formaten arbeiten.
  • Beschreibung des Standes der Technik
  • Eine konventionelle Art und Weise, Teil-Datenworte in Voll-Datenworte neu auszurichten, besteht darin, die Teilworte in sequentielle serielle Daten zu wandeln, und die Daten dann zu speichern, bis in den seriellen Registern N oder mehr Bits gespeichert sind, wobei N der Wortlänge entspricht. An diesem Punkt können die Daten in parallele Datenworte zurückgewandelt werden. Ein zweites Verfahren zum Neuausrichten von Teildatenworten in Voll-Datenworte besteht darin, einen elastischen Speicher zwischen den beiden parallelen Datenströmen mit einer asynchronen Schnittstelle zwischen den beiden Anschlußseiten zu verwenden, um so die Rahmen- und Datenausrichtungsinformation an die Gegenseite weiterzuleiten.
  • Der Mangel des ersten Verfahrens besteht darin, daß ein Hochgeschwindigkeitstakt erforderlich ist, um die Serienumsetzung auszuführen. Ein solcher Hochgeschwindigkeitstakt erfordert generell den Einsatz eines anderen Logiktyps, wie beispielsweise der emittergekoppelten Logik (ECL) anstatt der eher wünschenswerten komplementären Metalloxidlogik (CMOS), welche jedoch bei Geschwindigkeiten von weit über 50 Megabits pro Sekunde nicht arbeiten kann.
  • Aufgrund der Tatsache, daß möglicherweise eine andere Logikfamilie benötigt wird, um die Serienumsetzung des ersten Verfahrens durchzuführen, führt dies zu einer erhöhten Verlustleistung, weil die ECL-Logik typischerweise weit mehr Strom verbraucht als die CMOS-Logik.
  • Bezüglich des Einsatzes eines elastischen Speichers zum Speichern der separaten Bits immer dann, wenn ein Teilbyte empfangen wird, ist anzumerken, daß ein solcher elastischer Speicher im allgemeinen nicht verwendet wird, um die Füll oder Steuerbits zu speichern, welche in einem solchen Teil-Datenwort enthalten sein können. Anderenfalls würden die Füll- oder Steuerbits einen Teil des parallelen Vollwortes bilden, das an die Gegegenseite übertragen wird. Um ein solches Entfernen dieser unerwünschten Bits bezüglich der Daten, die in dem vollen parallelen Wort enthalten sein sollen, auszuführen, ist eine zusätzliche Schaltungsanordnung erforderlich.
  • Im besonderen erfordert jedes digitale System, worin eine langsame kontinuierliche Datenfolge auf ein schnellere Signal abgebildet wird, zusätzliche Füllbits und Steuerbits, um das Empfangsgerät zu informieren, wie die Nutzinformation im Empfangsgerät gewonnen werden soll. Im besonderen verwenden Ausrüstungen, die dem Standard des Synchronen Optischen Netzwerkes (SO- NET) entsprechen, eine feste Nutzinformationsgröße in Verbindung mit einer veränderlichen Datenrate, die auf die Nutzinformation abgebildet werden kann. Folglich werden Füllbits und Steuerbits verwendet, um die Nutzinformation aufzufüllen, und müssen von dieser wieder getrennt werden.
  • Zusammenfassend kann gesagt werden, daß nach dem Stand der Technik bezüglich der Neuausrichtung von Teil-Datenworten in Voll- Datenworte und im besonderen von Teil-Datenbytes in Voll-Datenbytes die folgenden Mängel bestehen:
  • 1. Beide dem Stand der Technik entsprechenden Verfahren beinhalten Verfolgeschaltungen auf beiden Seiten der Datenübertragungseinrichtung, welche die Komplexität der elektronische Schaltung erhöhten.
  • 2. Das serielle Verfahren erfordert einen besonders schnellen Takt, was nachfolgend eine spezielle logische Schaltung mit erhöhter Verlustleistung sowie einen separaten Registersatz zur Verarbeitung der seriellen Daten erforderlich machen kann.
  • 3. Das Verfahren mit elastischem Speicher erfordert spezielle Zwischenspeicher, um die asynchrone Steuersignalübertragung auszuführen, sowie ein Speicherelement für die separaten Bits, was alles den Umfang der erforderlichen Logik erhöht.
  • Zusammenfassung der Erfindung
  • Gemäß der vorliegenden Erfindung, wie sie in den unabhängigen Ansprüchen 1 und 9 dargelegt wird, dient ein paralleler Datenschieber von Teil-Datenworten in Voll-Datenworte zur Ausführung der sequentiellen Datenübertragung von Teil-Datenworten in Voll- Datenworte unter Verwendung eines einzigen Taktes und einer einzigen logischen Steuerschaltung. Die Daten werden in einen Satz Zwischenspeicher übertragen, welcher die Daten in einem Schritt neu ausrichtet. Durch Eliminieren der Steuerbits vor der Eingabe in den Datenschieber sowie durch einen Quittungsbetrieb zwischen den beiden Seiten einer asynchronen Schnittstelle wird der gesamte Betrieb der vorliegenden Erfindung vereinfacht.
  • In einer bevorzugten Ausführungsform der vorliegenden Erfindung wird diese als paralleler Datenschieber von Teil-Datenbytes in Voll-Datenbytes verwendet. Sie beinhaltet im speziellen 2N-1 N- bit Eingangsmultiplexer und 2N-1 Zwischenspeicher, wobei N der Breite der durch den parallelen Datenschieber auszugebenden parallelen Daten (acht Bits) entspricht, um es zu ermöglichen, daß ein volles N-bit-Wort zu einem Rest von N-1 hinzugefügt wird, um ein N-bit-Ausgabewort mit einem N-1-Rest zu erzeugen. Eine Additionsschaltung wird verwendet, um das Umlaufen und die Ausgabe der Daten zu steuern, während die 2N-1 Multiplexer selektiv angesteuert werden, um die N-1 Restbits zu speichern und auf die 2N-1 Zwischenspeicher zurückzugeben, um so den Rest mit den eingehenden Daten zu versehen, um ein Ausgabewort mit der korrekten Datenbeziehung zwischen dessen höchstwertigem Bit und dem niedrigstwertigen Bit zu erzeugen.
  • Es wird ein N-bit-Addierer verwendet, um die Bits jedes Teilwortes zu zählen und um nur dann ein freigegebenes NOCARRY-Signal auszugeben, wenn die Summe der Restbits einer vorhergehenden Addition und eines neuen Teilbytes kleiner als N ist. In dieser Situationbewirkt das freigegebene NOCARRY-Signal, daß das Teil-Datenwort in den Zwischenspeichern umläuft, weil kein vollständiges N-bit-Wort vorhanden ist.
  • Weitere Ausführungsformen der Erfindung werden in den abhängigen Ansprüchen dargelegt.
  • Aufgaben der Erfindung
  • Es ist deshalb eine Hauptaufgabe der vorliegenden Erfindung, einen parallelen Datenschieber von Teilworten in Vollworte bereitzustellen, wöbei die eingehenden Daten mittels einer Steuerung auf eine Vielzahl Multiplexer übertragen werden, wobei diese Daten auf einen Satz Zwischenspeicher ausgegeben werden, welcher nachfolgend ein Voll-Datenwort ausgibt und welcher ebenfalls die Restbits hinter dem Voll-Datenwort in einem Umlaufregime auf die Multiplexer zurückgibt, um so zu bewirken, daß das Teil-Datenwort in einem einzigen Schritt neu ausgerichtet wird.
  • Eine andere Aufgabe der vorliegenden Erfindung ist es, einen parallelen Datenschieber von Teil-Datenworten in Voll-Datenworte bereitzustellen, welcher einen Addierer benutzt, um das Umlaufen und die Ausgabe des parallelen Datenwortes zu steuern.
  • Noch eine weitere Aufgabe der vorliegenden Erfindung ist es, einen parallelen Datenschieber von Teilworten in Vollworte bereitzustellen, bei dem der Addierer eine NOCARRY-Anzeige erzeugt, wenn die Summe des Restes der vorhergehenden Addition mit einem neuen Teilwort kleiner ist als die Wortlänge N, und wenn dem so ist, das freigegebene NOCARRY-Signal bewirkt, daß das Teilwort in den Zwischenspeicher umläuft, weil kein vollständiges N-bit-Wort vorhanden ist.
  • Weitere Aufgaben der vorliegenden Erfindung werden teilweise ersichtlich werden und werden zum Teil im nachfolgenden erscheinen.
  • Kurze Beschreibung der Zeichnungen
  • Zum vollständigeren Verständnis der Natur und der Aufgaben der vorliegenden Erfindung sollte auf die folgende detaillierte Beschreibung in Verbindung mit den begleitenden Zeichnungen Bezug genommen werden, in welchen:
  • Figur 1 A bis D den parallelen Datenschieber von Teilworten in Vollworte zeigt, der in Verbindung mit einer parallelen DS3- Telephonie-Standardübertragung verwendet wird, und im besonderen einen DS3 Alarmhinweissignal- (AIS)/Unbelegt-Code-Generator zur Verwendung bei der Erzeugung von parallelen Ausgabedaten, die in einem standardmäßigen parallelen SONET-Datenwort ausgegeben werden.
  • Figur 2 A bis D ist ein detailliertes Blockschaltbild der Multiplexer und Zwischenspeicher sowie der logischen Steuerschaltung, die verwendet werden, um die vorliegende Erfindung zu realisieren.
  • Figur 3 A bis C ist ein detailliertes Blockschaltbild des Addierers, wie er in der in Figur 1 dargestellten spezifischen Realisierung verwendet wird.
  • Bevorzugte Ausführungsform
  • Wie in Figur 1 ersichtlich ist, umfaßt ein paralleler Datenschieber (20) von Teilworten in Vollworte ein Steuerlogik- und Speichermodul 22 und einen Addierer 24, welcher verwendet wird, um Steuersignale zu erzeugen, die bewirken, daß das Steuerlogikund Speichermodul ein volles Datenwort an den parallelen Ausgangsbus 26 ausgibt. Die in Figur 1 dargestellte Realisierung der Erfindung wird in Verbindung mit einem DS3 Alarmhinweissignal- (AIS)/Unbelegt-Code-Generator eingesetzt. Details des DS3 Alarmhinweissignal- (AIS)/Unbelegt-Code-Generator sind in der Offenlegungsschrift EP-A-0 548 649 zu finden. Das zweite Steuerlogik- und Speichermodul 22' führt die gleichen Funktionen wie das Modul 22 aus und wird für die Arbeit des parallelen Datenschiebers nicht benötigt. Die in den Figuren 1, 2 und 3 dargestellte Realisierung ist speziell für ein acht Bits (N = 8) umfassendes Ausgabewort.
  • Wie in Figur 2 ersichtlich ist, werden die eingehenden Daten, die volle oder Teil-Datenbytes umfassen können, über den Eingangsbus 28 empfangen und steuerbar an die 2N-1 Multiplexer 30 angelegt. Die speziell eingehenden Daten werden mit der Schreibweise PD< 0> bis PD< 7> bezeichnet. Die Multiplexer werden der Reihe nach mit den Nummern #1 bis #15 bezeichnet.
  • Die 2N-1 Eingangszwischenspeicher (Flip-Flops) sind in Figur 2 ebenfalls dargestellt, wobei das Zwischenspeichermodul 32 acht Flip-Flops und das Zwischenspeichermodul 34 sieben Flip-Flops umfaßt. Das Modul 32 erzeugt die Ausgabe des vollen parallelen Datenwortes auf den parallelen Bus 26, während das Modul 34 die Restdaten bereitstellt, die auf dem Rest-Ausgangsbus 36 erzeugt werden, um an die Multiplexer #8 bis #15 angelegt zu werden. Die Multiplexer haben jeweils eine Einzelbit-Ausgangsleitung 38, die mit der Bezeichnung MO< X> gekennzeichnet wird, wobei X die Multiplexernummer ist. Die Ausgänge MO< 15 .. 8> werden an das Zwischenspeichermodul 32 angelegt, während die Ausgänge MO< 7 .. 1> an das Zwischenspeichermodul 34 angelegt werden. Der Additionsausgang des Addierers 24 umfaßt drei Ausgangsleitungen, COUT 40, BOUT 42 beziehungsweise AOUT44, die die Additionsausgabe vom höchstwertigen Bit bis zum niedrigstwertigen Bit darstellen. Diese Leitungen werden ebenfalls entsprechend als CIN 40, BIN 42 und AIN 44 bezeichnet. Diese drei Addierer-Ausgangsleitungen bestimmen, welches Bit entweder vom Eingangsbus 28 oder vom Restbus 36 zum Anlegen an die Multiplex-Ausgangsleitung 38 MO< X> für jeden der fünfzehn Multiplexer ausgewählt wird.
  • Somit sind, um ein N-bit breites Wort zu erzeugen, 2N-1 Eingangszwischenspeicher 32 und 34 erforderlich (das Zwischenspeichermodul 32 umfaßt im gegebenen Beispiel acht Bits und das Zwischenspeichermodul 34 umfaßt sieben Bits) . Diese Technik gestattet es, ein volles N-bit-Wort zu einem N-1-Rest hinzuzufügen, was ein N-bit-Ausgabewort mit einem N-1-Rest erzeugt. Zusätzlich zur Steuerung, welche Eingangsleitung durch die Endmultiplexer ausgewählt wird, wird der N-bit-Addierer auch dazu verwendet, die Bits jedes Teilwortes zu zählen und ein NOCARRY-Freigabesignal auf der Ausgangsleitung 46 zu erzeugen, wenn die Summe des Restes auf dem Rest-Ausgangsbus 36 und einem neuen Teilbyte, das auf dem Eingangsbus 28 empfangen wird, kleiner als N ist. Wenn das NOCARRY-Signal freigegeben wird, bewirkt es, daß das Teilwort in den Zwischenspeichermodulen 32 und 34 umläuft, weil kein vollständig N-bit-Wort vorhanden ist. Die Daten von den Zwischenspeichern 32 werden dann als die Restbits an den Multiplexer 30 gesendet, und die Ausgänge PD< 7 .. 1> werden in dem Taktzyklus nachfolgend nicht verwendet. Wenn jedoch die Summe größer als N ist, wird das NOCARRY-Signal gesperrt, und ein vollständiges N-bit-Wort wird auf dem Bus 28 ausgegeben, und ein neuer Rest, der gleich SUM - N ist, wird auf dem Restbus 36 ausgegeben, während mit dem nächsten Wort eine neue Multiplexeradresse benutzt wird.
  • Arbeitsweise des parallelen Datenschiebers
  • Die Arbeitsweise des parallelen Datenschiebers kann unter Bezugnahme auf Figur 2 am besten verstanden werden. Wie oben erklärt worden ist, ist der parallele Datenschieber dafür verantwortlich, gültige Teil-Datenworte an das höchstwertige Bit (MSB) einzulesen und ein vollständiges N-bit-Datenwort auszugeben. In dem in den Figuren 1 bis 3 dargestellten Beispiel ist N = 8. Somit bilden fünfzehn Flip-Flops die Zwischenspeichermodule 32 und 34 und sind als fünfzehn bit breites paralleles Register ängeordnet. Die acht MSBs enthalten die abgehenden Daten für den Bus 28, und die siebenniedrigstwertigen Bits (LSBs) speichern die Restbits für die Ausgabe auf dem Restbus 36. Die Ausgänge der Zwischenspeicher 32 und 34 gehen auf einen Multiplexer mit zwei Eingängen 48, der durch das NOCARRY-Signal gesteuert wird, welches vom Addierer 24 auf Leitung 46 empfangen wird. Die Multiplexer 30 steuern die Datenausrichtung der Daten, die in den Zwischenspeichern 32 und 34 zwischengespeichert werden. Die Ausgangssignale des Addierers 24 werden zur Auswahl des speziellen Eingangsbits, das an die jeweilige Ausgangsleitung 38 MO< X> angelegt werden soll, über die Ausgangsleitungen 40, 42 und 44 (CIN, BIN und AIN) an jeden Multiplexer übertragen.
  • Wenn zum Beispiel die Adreßverschiebung 0 ist (CIN = BIN = AIN = 0), schaltet der Multiplexer #15 das höchstwertige Bit der eingehenden Daten PDIN7 über die Ausgangsleitung MO< 15> auf das höchstwertige Bit-Flip-Flop der Zwischenspeicher 32, während der Multiplexer #14 das nächste Bit (PDIN6) über seinen Ausgang MO< 14> auf das in der Wertigkeit folgende Bit des Zwischenspeichermoduls 32 schaltet usw. Somit gibt der Multiplexer #8 das niedrigstwertige Bit (PDIN0) über seinen Ausgang MO< 8> an die niedrigstwertige Stelle der Bitzwischenspeicher 32 aus.
  • Wenn die Verschiebung gleich 2 ist (CIN = 0, BIN = 1, AIN = 0), wird das höchstwertige Bit (PDIN7) in den Multiplexer #13 eingegeben, welcher dieses Bit über seine Ausgangsleitung MO< 13> an das dritte Bit des Zwischenspeichermoduls 32 ausgibt. In diesem Beispiel gehen die zwei LSBs der eingehenden Daten (PDIN1 und PDIN0) über die Multiplexer #7 beziehungsweise #6 auf die Bits 7 und 6 des Zwischenspeichermoduls 34. Diese zwei Bits sind die zwei MSBs des nächsten Wortes.
  • Während des nächsten Taktzyklusses des Taktes 31 werden die Bits 7 und 6 (jetzt DD< 7> und DD< 6> der auf dem Bus 52 umlaufenden Daten vom Q-Ausgang der Flip-Flop-Zwischenspeicher 34) über den Multiplexer mit zwei Eingängen 48 weitergeleitet und durch die D2 Eingänge der Multiplexer #15 beziehungsweise #14 (Multiplexerausgänge MO< 15> und MO< 14> ) ausgewählt. Deshalb werden die zwei LSBs des vorhergehenden Wortes zu den sechs MSBs des aktuellen Wortes (vom Bus 28) hinzugefügt, während die zwei Restbits des aktuellen Wortes gespeichert werden, bis der nächste Rahmen (das nächste Wort) empfangen wird.
  • Wenn jedoch als aktuelles Wort ein Fünf-bit-Byte empfangen wird, werden die fünf Bits zu diesen zwei Restbits hinzugefügt. In dieser Situation wird ein weiteres Bit benötigt, um ein volles Wort (in diesem Beispiel ein Byte) zu vervollständigen, und somit wird das NOCARRY-Signal 46 freigegeben, um diese Situation widerzuspiegeln. Wenn während des nächsten Taktzyklusses das NOCARRY-Signal freigegeben ist, wird der Multiplexer mit zwei Eingängen 48 so angesteuert, daß die Datenbits DD15 .. DD9 auf Bus 50 ausgewählt werden und daß diese Daten als Rest-Datenbits DO< 7 .. 1> auf dem Restbus 36 an die Multiplexer #15 bis #9 entsprechend ausgegeben werden, so daß sie an den entsprechenden Multiplexerausgängen MO< 15> bis MO< 9> ausgegeben werden. Die Daten PDO< 7 .. 1> auf dem Ausgangsbus 26 werden in den nachfolgenden Einheiten ignoriert, weil durch das freigegebene NOCARRY- Signal das WRESEN-Signal 56 gesperrt wird. Natürlich könnte das NOCARRY-Signal verwendet werden, um direkt die Zwischenspeicher 32 oder die Treiber 33 daran zu hindern, die Ausgangsdaten PDO< 7 .. 0> zu senden, wenn während des aktuellen Taktzyklusses weniger als ein volles Datenwort angelegen hat. In dem oben dargestellten Beispiel wird die Adressenverschiebung vom Addierer 24 jetzt sieben (CIN = BIN = AIN = 1), und das MSB des nächsten Wortes wird zu den vorhergehenden sieben Bits hinzugefügt, um für die Ausgabe als PDO< 7 .. 0> auf dem Ausgangsdatenbus 26 ein vollständiges Wort zu bilden. Das NOCARRY-Signal wird mit dem eingehenden HOLD-Signal (CTRINC) ODER-verknüpft und neu synchronisiert, um durch das NOR-Gatter 58 und das Flip-Flop 60 das oben erwähnte Freigabesignal (WRESEN) 56 für den elastischen Speicher zu erzeugen. Dieses Signal ist immer dann aktiv HIGH, wenn an PDO< 7 .. 0> gültige Daten anliegen.
  • Aus den oben erwähnten Beispielen wird ersichtlich, daß die Addierer-Ausgangsleitungen 40, 42 und 44 bestimmen, welcher Eingang für jeden Multiplexer für dessen entsprechenden Ausgang MO< x> ausgewählt wird. Bezugnehmend auf Figur 2 wird der DO Eingang jedes Multiplexers ausgewählt, wenn CIN = BIN = AIN = 0 ist (hiernach als 0, 0, 0 dargestellt), D1, wenn dieser Wert (0, 0, 1) ist, und in gleicher Weise fortsetzend bis zum Eingang D7 für den Wert (1, 1, 1).
  • Der in den Figuren 1 und 3 dargestellte Addierer 24 ist eine spezielle Version eines N-bit-Addierers, der verwendet wird, um die Bits jedes Teilwortes zu zählen. Sein spezieller Aufbau beruht auf seiner Verwendung in einer DS3-SONET-Übertragungsschaltung und im besonderen auf der Natur des DS3-Rahmens (vergleiche die ebenfalls anhängige Patentanmeldung mit dem Titel AIS/Idle code generator von William H. Stephenson Jr. vom selben Tag wie die vorliegende Patentanmeldung und demselben Anmelder übertragen). Somit zählt dieser Addierer, wie aus Figur 3 ersichtlich wird, tatsächlich über einen Plus-1-Eingang 62 und einen Plus-5- Eingang 64. Der Addierer wird verwendet, um die Wortausrichtung des parallelen Datenschiebermoduls 22 zu steuern. Die Plus-1- und Plus-5-Eingänge werden verwendet, um zu bewirken, daß der Zähler um eins beziehungsweise um fünf weiterzählt. Der Addierer 24 ist ein 3-bit-Addierer mit Übertrag (carry). Jede Stufe umfaßt ein XOR-Gatter 66, welche ein D-Flip-Flop 68 ansteuert. Die Eingaben in die XOR-Gatter bestehen aus den Überträgen der vorhergehenden Stufen und dem Q-Ausgang seines Flip-Flops. Das Flip-Flop wird auf null zurückgesetzt, wenn das RESET*-Signal 70 am 'TE'-Eingang aktiv (freigegeben) ist, welches eine Null in den 'TI'-Eingang lädt. Die LSB-Stufe 72 bildet eine ODER-Verknüpfung des Plus-1- und des Plus-5-Eingangs und speist mit ihrem Ausgangssignal, ADLSB, das XOR-Gatter 66* und das UND-Gatter 74. Dieses UND-Gatter erzeugt immer dann einen Übertrag, CARA, wenn die Aüsgänge ADLSB und Q HIGH sind. Das CARA-Signal wird in das XOR-Gatter der zweiten Stufe und in ein UND-Gatter 76 eingegeben. Das zweite UND-Gatter verknüpft CARA und den Q-Ausgang des zweiten Flip-Flops, um einen Übertrag, CARB, zu erzeugen. Die MSB-Stufe 80 verwendet ein XOR-Gatter mit den Eingängen 66', um den Plus-5-Eingang, CARB und den Q-Ausgang ihres eigenen Flip-Flops zu prüfen. Eine Kombination aus drei NAND-Gattern 82 wird benutzt, um die Werte 3 bis 7 und Plus 4 und den Wert 7 und Plus 1 zu decodieren, um somit einen Übertrag (CARRY*) zu erzeugen. Die Signale CARRY und ADLSB werden durch das Gatter 84 UNDverknüpft, um ein freigegebenes NOCARRY-Signal (in den Figuren als NOCARY dargestellt) zu erzeugen, das für das Steuerlogikund Speichermodul 22 (siehe Figur 1) benötigt wird. Der HOLD- Eingang bewirkt, daß dieser Wert umläuft, wenn in dem Datenstrom eine Lücke auftritt. Um den Wert des Addierer auszugeben, werden Treiberpuffer 86 mit hoher Ausgangsleistung verwendet. Der COUT- Ausgang 40 ist das MSB, BOUT ist daßs mittlere Bit, und AOUT ist das LSB. Diese Ausgänge sind die entsprechenden CIN-, BIN-, AIN- Eingänge, die in den Figuren 1 und 2 dargestellt sind.
  • Natürlich könnte jeder beliebige N-bit-Addierer verwendet werden, um die Bits jedes Teilwortes zu zählen und um ein geeignetes Ausgangssignal auf binären Ausgangsleitungen zu erzeugen, deren Anzahl so festgelegt wird, daß N Permutationen erzeugt werden können. Dieser Addierer würde ebenfalls ein NOCARRY-Ausgangssignal immer dann erzeugen, wenn die Anzahl der Restbits aus dem vorhergehenden Zyklus plus der Anzahl der Bits für ein aktuelles Teil-Datenwort kleiner als N ist.

Claims (10)

1. Paralleler Datenschieber (20) von Teilworten in Vollworte zur Wandlung eingehender paralleler Daten (28), die null bis N Datenbits enthalten, in eine Ausgabe aus N Datenbits, umfassend:
A) Mittel (30), zum selektiven Empfangen von Bits der eingehenden parallelen Daten und zum selektiven Empfangen von Restbits der Daten und zur Ausgabe der selektiv empfangenen 2N-1 parallelen Bits (MO < 1> bis MO < 15> unter Steuerung eines Auswahlsignals (40, 42, 44);
B) Mittel (32, 33, 34, 48) zum Empfangen der 2N-1 Bits von dem selektiven Empfangsmittel, um an das selektive Empfangsmittel N parallele Datenbits (26) und bis zu N-1 Restbits (36) auszugeben, wobei das Mittel ein Mittel enthält, um zu bewirken, daß die Ausgabebits als Restbits umlaufen, wenn ein NOCARRY-Signal (46) freigegeben wird; und
C) ein Mittel (24) zur Addition der Anzahl Restbits zur Anzahl Datenbits der aktuell eingehenden parallelen Daten, um so ein freigegebenes NOCARRY-Signal zu erzeugen, wenn diese Addition ein Ergebnis kleiner N hat, und um auf der Grundlage dieser Addition ein Auswahlsignal zu erzeugen, um die empfangenen Bits des selektiven Empfangsmittels zu steuern.
2. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 1, wobei das Mittel zum selektiven Empfangen von Bits der eingehenden parallelen Daten- und Restbits von Daten 2N-1 Multiplexer umfaßt.
3. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 2, wobei das Additionsmittel das Auswahlsignal auf X Ausgangsleitungen erzeugt, wobei X durch die Gleichung 2x = N definiert ist.
Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 3, wobei mindestens einige der 2N-1 Multiplexer bis zu N Eingänge besitzen, die durch das Auswahlsignal ausgewählt werden können.
5. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 4, wobei das Mittel zum Empfangen der 2N-1 Bits von dem selektiven Empfangsmittel 2N-1 Bitzwischenspeicher (32, 34) umfaßt, wobei die Ausgänge von N der Zwischenspeicher die N parallelen Datenbits ausgeben und wobei die verbleibenden N-1 Zwischenspeicher bis zu N-1 Restbits ausgeben.
6. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 5, wobei das Mittel, das bewirkt, daß Ausgabebits als Restbits umlaufen, wenn ein NOCARRY-Signal freigegeben wird, einen Multiplexer mit zwei Eingängen (48) umfaßt, der einen ersten Satz N-1 Eingänge besitzt, die mit den Ausgängen der N-1 Bits der ersten N Zwischenspeicher verbunden sind, sowie einen weiteren Eingang, der mit dem NOCARRY- Signal verbunden ist, um die Ausgänge von N-1 Bits der ersten N Zwischenspeicher auszuwählen, wenn das NOCARRY- Signal freigegeben wird, und um anderenfalls die Ausgänge der N-1 Restbits auszuwählen.
7. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 6, wobei N = 8 ist.
8. Paralleler Datenschieber von Teilworten in Vollworte gemäß Anspruch 1, des weiteren Mittel (58, 60) zum Erzeugen eines Signals (156) umfassend, das verhindert, daß das Mittel zum Ausgeben von N parallelen Datenbits die parallel Datenbits verwendet, wenn das NOCARRY-Signal freigegeben wird.
9. Verfahren zum Wandeln eingehender paralleler Daten, welche null bis N Datenbits umfassen können, in ein abgehendes paralleles Wort, das N Datenbits enthält, die folgenden Schritte umfassend:
1) selektives Empfangen von Bits der eingehenden parallelen Daten sowie von Restbits der Daten und zum Ausgeben der selektiv empfangenen Daten als 2N-1 parallele Bits unter Steuerung eines Auswahlsignals;
2) - Empfangen der 2N-1 parallelen Bits, um N parallele Datenbits und bis zu N-1 Restbits von Daten auszugeben, die in Schritt 1 empfangen wurden, wobei der Empfangsschritt einen Unter-Schritt enthält, um zu bewirken, daß die Äusgabebits als Restbits umlaufen, wenn ein freigegebenes NOCARRY-Signal erkannt wird; und
3) Addieren der Anzahl Restbits zur Anzahl Datenbits der aktuell eingehenden parallelen Daten, um so ein freigegebenes NOCARRY-Signal zu erzeugen, wenn die Addition ein Ergebnis kleiner N hat, und um auf der Grundlage dieser Addition ein Auswahlsignal zu erzeugen, um die empfangenen Bits des selektiven Empfangsschrittes zu steuern.
10. Verfahren zum Wandeln eingehender paralleler Daten gemäß Anspruch 9, wobei ein freigegebenes NOCARRY-Signal die Ausgabe der N parallelen Datenbits verhindert.
DE69217865T 1991-12-16 1992-12-05 Paralleldatenschieber von Teil- zu Gesamtwort Expired - Fee Related DE69217865T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/808,533 US5192950A (en) 1991-12-16 1991-12-16 Partial word to full word parallel data shifter

Publications (2)

Publication Number Publication Date
DE69217865D1 DE69217865D1 (de) 1997-04-10
DE69217865T2 true DE69217865T2 (de) 1997-07-03

Family

ID=25199057

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69217865T Expired - Fee Related DE69217865T2 (de) 1991-12-16 1992-12-05 Paralleldatenschieber von Teil- zu Gesamtwort

Country Status (6)

Country Link
US (1) US5192950A (de)
EP (1) EP0547459B1 (de)
AT (1) ATE149715T1 (de)
AU (1) AU662187B2 (de)
DE (1) DE69217865T2 (de)
ES (1) ES2101010T3 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321400A (en) * 1992-03-13 1994-06-14 Nec Corporation Serial data interface circuit dealing with a plurality of receiving modes
AU664097B2 (en) * 1992-06-26 1995-11-02 Hewlett-Packard Australia Limited A justifier and de-justifier
US5327126A (en) * 1992-06-26 1994-07-05 Hewlett-Packard Company Apparatus for and method of parallel justifying and dejustifying data in accordance with a predetermined mapping
US5285206A (en) * 1992-08-25 1994-02-08 Alcatel Network Systems, Inc. Phase detector for elastic store
US5942996A (en) * 1996-10-07 1999-08-24 Ascom Timeplex Trading Ag Apparatus and method enabling unimpeded communication between different classes of equipment utilizing different byte protocols
US7434040B2 (en) * 2005-07-25 2008-10-07 Hewlett-Packard Development Company, L.P. Copying of unaligned data in a pipelined operation
TWI299133B (en) 2006-01-23 2008-07-21 Realtek Semiconductor Corp Webcasting system and audio regulating methods therefor

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4675652A (en) * 1986-04-11 1987-06-23 Quantum Corporation Integrated encoder decoder for variable length, zero run length limited codes
EP0290172A3 (de) * 1987-04-30 1991-01-16 Advanced Micro Devices, Inc. Zweirichtungsfifo mit variabler Byte-Begrenzung und Datenpfadbreitenänderung
US5081654A (en) * 1989-05-12 1992-01-14 Alcatel Na Network Systems Corp. Parallel bit detection circuit for detecting frame synchronization information imbedded within a serial bit stream and method for carrying out same

Also Published As

Publication number Publication date
DE69217865D1 (de) 1997-04-10
ES2101010T3 (es) 1997-07-01
AU3010592A (en) 1993-06-17
US5192950A (en) 1993-03-09
EP0547459B1 (de) 1997-03-05
ATE149715T1 (de) 1997-03-15
EP0547459A1 (de) 1993-06-23
AU662187B2 (en) 1995-08-24

Similar Documents

Publication Publication Date Title
DE2457732C2 (de) Einrichtung zur Codierung und Decodierung von Information
EP0422443B1 (de) Multiplexer und Demultiplexer, insbesondere für Nachrichtenübertragungs-Netze mit einer synchronen Hierarchie der Digitalsignale
DE68914172T2 (de) Datenverarbeitungssystem und Videoverarbeitungssystem mit einem derartigen Datenverarbeitungssystem.
DE3855367T2 (de) Einheit zur wirkungsvollen stapeln von daten in einem puffer
DE69113836T2 (de) Integrierter Hochgeschwindigkeitssynchronzähler mit asynchroner Auslesung.
DE2727876B2 (de) Steuereinrichtung mit einem Mikroprozessor
DE3232600C2 (de)
DE2942067C2 (de)
DE2801611A1 (de) Verfahren und anordnung zum adressieren und speichern von daten in speichern mit wahlfreiem zugriff
DE69125424T2 (de) Vorrichtung zur variablen Längenkodierung und Vorrichtung zur variablen Längendekodierung
DE1296182B (de) Verfahren zur UEbertragung binaerkodierter Informationssignale sowie Kodierer zur Abgabe solcher Signale und mit diesem betreibbarer Dekodierer
DE68922930T2 (de) Impulseinblendungsanordnung.
EP0475498A2 (de) Schaltungsanordnung zur Bitratenanpassung zweier digitaler Signale
DE3340919A1 (de) Datenprozessor
DE69217865T2 (de) Paralleldatenschieber von Teil- zu Gesamtwort
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE69031238T2 (de) Datenentpacker
DE2512541A1 (de) Einfuegung zusaetzlicher informationselemente in nachrichten und herausnahme solcher informationselemente aus nachrichten
DE4122236C2 (de) Steuereinrichtung für direkten Speicherzugriff
DE68910419T2 (de) Statistische Kodierungsvorrichtung zur Erzeugung von Kodewörtern mit einer variablen Anzahl von Binärelementen.
EP0180793B1 (de) Anordnung zur Umsetzung von Codewörtern mit unterschiedlicher Länge in Datenwörter gleicher Länge
DE19800619A1 (de) Schaltungsanordnung zur Übertragung plesiochroner Signale in einem SDH-Übertagungssystem
DE69630764T2 (de) Dekodierer variabler Länge unter Verwendung eines Speichers
DE3884604T2 (de) System zur produktion von pixelbilddaten aus ccitt-kodierten pixeldaten.
DE3854314T2 (de) Schaltung zur Umsetzung eines m bit Kodes in einen n bit Kode.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee