[go: up one dir, main page]

DE60301420T2 - Prüfer für verteilte 4-bits diagonal verschachtelte Parität (DIP4) - Google Patents

Prüfer für verteilte 4-bits diagonal verschachtelte Parität (DIP4) Download PDF

Info

Publication number
DE60301420T2
DE60301420T2 DE60301420T DE60301420T DE60301420T2 DE 60301420 T2 DE60301420 T2 DE 60301420T2 DE 60301420 T DE60301420 T DE 60301420T DE 60301420 T DE60301420 T DE 60301420T DE 60301420 T2 DE60301420 T2 DE 60301420T2
Authority
DE
Germany
Prior art keywords
xor
data
bit
data stream
input
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
DE60301420T
Other languages
English (en)
Other versions
DE60301420D1 (de
Inventor
Ngok Ying 95131 San Jose Chu
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.)
Broadcom Corp
Original Assignee
Broadcom 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 Broadcom Corp filed Critical Broadcom Corp
Application granted granted Critical
Publication of DE60301420D1 publication Critical patent/DE60301420D1/de
Publication of DE60301420T2 publication Critical patent/DE60301420T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/33Synchronisation based on error coding or decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0079Formats for control data
    • H04L1/008Formats for control data where the control data relates to payload of a different packet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Dc Digital Transmission (AREA)

Description

  • BEZUGNAHME AUF VERWANDTE ANMELDUNG:
  • Die vorliegende Anmeldung beansprucht die Priorität der am 15.03.2002 hinterlegten vorläufigen US-Patentanmeldung mit dem amtlichen Aktenzeichen 60/364,051.
  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung:
  • Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zum Erfassen von Fehlern. Insbesondere ist die Erfindung auf ein Verfahren und eine Vorrichtung zum Erfassen von Fehlern gerichtet, die während einer Übertragung von Daten an eine elektronische Vorrichtung auftreten können.
  • Beschreibung des einschlägigen Standes der Technik:
  • In digitalen elektronischen Systemen werden Informationen im binären Format als "Einsen" und "Nullen" dargestellt. Wenn binäre Informationen von einer elektronischen Vorrichtung an eine andere Vorrichtung übertragen werden, besteht die Möglichkeit, dass die Bits der binären Informationen verfälscht werden. Eine Verfälschung der binären Informationen kann durch elektronisches Rauschen, schlechte Kabelverbindungen, Mediendefekte, einen Ausfall von Bauteilen, sowie andere Faktoren verursacht werden. Beispielsweise können Haushalts- oder Bürogeräte mit Motoren wie etwa Ventilatoren, Abfallzerkleinerer, Mixer und andere Vorrichtungen diese Art von Rauschen erzeugen, die sich abträglich auf den Empfang eines eintreffenden digitalen Signals auswirkt. Wenn Rauschen oder jegliche andere Verfälschung ein eintreffendes digitales Signal wie etwa ein Paket beeinträchtigt, wird das verfälschte Paket typischerweise fallengelassen und muss möglicherweise erneut durch die Quellen-Netzvorrichtung übertragen werden. Wenn eine Verfälschung innerhalb eines digitalen Signals entsteht, ist ein Bitfehler aufgetreten. Eine Fehlererfassung ist der Vorgang des Erfassens von Bitfehlern innerhalb eines Signals.
  • Im Allgemeinen wird an einer Übertragungsvorrichtung ein Paritätsbit an einen Block von Daten angehängt, um festzustellen, ob die Bits erfolgreich an der Bestimmungsvorrichtung angekommen sind. Beispielsweise werden die Bits im Falle eines Paritätsprüfers vor dem Senden der Bits gezählt, und falls die Gesamtheit der Datenbits eine gerade Zahl ist, kann das Paritätsbit etwa auf "Eins" gesetzt werden, so dass die Gesamtanzahl von übertragenen Bits eine ungerade Zahl darstellt. Falls die Gesamtzahl von Datenbits bereits eine ungerade Zahl ist, bleibt das Paritätsbit "Null" oder wird auf "Null" gesetzt. An der Bestimmungsvorrichtung kann jede Gruppe von eintreffenden Bits überprüft werden, um zu bestimmen, ob die Gruppe insgesamt eine ungerade Zahl ergibt. Falls die Gesamtzahl eine gerade Zahl ist, ist ein Übertragungsfehler aufgetreten, und die Übertragung wird typischerweise erneut versucht.
  • In den letzten Jahren ist es aufgrund der technologischen Fortschritte für einige herkömmliche Vorrichtungen immer schwieriger geworden, solche Fehlererfassungsvorgänge durchzuführen. Der beispiellos große Bedarf nach schneller arbeitenden elektronischen Vorrichtungen führt zu höheren Anforderungen an die Betriebskomponenten von derzeitigen elektronischen Vorrichtungen. Unglücklicherweise können einige langsamere Vorrichtungen, die mit den gegenwärtigen elektronischen modernen Vorrichtungen gekoppelt sind, nicht mit der gleichen Übertragungsrate arbeiten. Infolge der Fehlabstimmung der Geschwindigkeit kann sich eine Taktdifferenz zwischen den Schnittstellen von zwei solchen elektronischen Vorrichtungen entwickeln. Diese Taktdifferenz zwischen dem logischen Aufbau der schneller arbeitenden Vorrichtungen und der langsameren Vorrichtungen macht es für die empfangende elektrische Vorrichtung schwieriger zu erfassen, ob in einem eintreffenden Datenstrom ein Fehler aufgetreten ist.
  • Infolge dessen werden neue und verbesserte Systeme und Verfahren zum Erfassen von Fehlern benötigt, die in einer Übertragung von binären Informationen auftreten können.
  • Aus der Schrift "POS-PHY Level 4, A Saturn Packet and Cell Interface Specification for OC192 Sonet/SOH and 10 Gigabit Ethernet", INTERFACE SPECIFICATION PMC-SIERRA, Nr. 6, S. 1–49, XP00247175, ist eine Saturn Packet and Cell-Schnittstelle bekannt, welche eine Diagonal Interleaves Parity (DIP-4)-Codierung/Decodierung anwendet.
  • Die Schrift US-A-5636208 beschreibt ein Burst-Datenübertragungssystem, das eine Fehlererfassung in empfangenen Burst-Daten unter Verwendung von CRC-Prüfbits, die durch rekursives polynomisches Dividieren erzeugt werden, und Syndromen für das Auffinden von Fehlern durchführt.
  • Aus der Schrift US-A-5479416 ist ein Kommunikations-Fehlererfassungssystem bekannt, das eine Blockfehlercodierung mit Hilfe von Galoisschen Feldern und Paritätsmatrizen anwendet.
  • Die Schrift US-A-5923653 lehrt eine Kreuzverbindungsschnittstelle, die es einem Empfängerprozessor in einem SONET/SOH-Netzwerk ermöglicht, Bursts eines eintreffenden Datenstroms, der eine erste Übertragungsrate besitzt, unter Verwendung von Multiplexern an einen ausgewählten ausgehenden Burst-Datenstrom zu legen, der eine zweite Übertragungsrate besitzt, wodurch eine Fehlerüberwachung unter Verwendung einer rekursiven Paritätsberechnung durchgeführt wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG:
  • Gemäß einem ersten Aspekt der Erfindung, der in dem beigefügten Patentanspruch 3 im Detail definiert ist, wird eine Logikschaltung zur Verfügung gestellt, die eine Schnittstelle und eine Fehlererfassungseinheit aufweist. Die Schnittstelle ist so konfiguriert, dass sie einen Datenstrom empfängt und überträgt, wobei der Datenstrom mindestens einen Burst mit einer variablen Länge und/oder einen Burst mit einer festen Länge aufweist. Die Fehlererfassungseinheit ist so konfiguriert, dass sie mittels der Berechnung von rekursiven Termen einen Fehlererfassungscode erfasst, wenn eine Fehlabstimmung in dem Datenstrom auftritt.
  • Gemäß einem zweiten Aspekt der Erfindung, der in dem beigefügten Patentanspruch 1 im Detail definiert ist, wird ein Verfahren zum Erfassen von Fehlern in einer Logikschaltung zur Verfügung gestellt. Das Verfahren umfasst einen Schritt des Interfacing einer ersten Vorrichtung, die eine erste Übertragungsrate besitzt, mit einer zweiten Vorrichtung, die eine zweite Übertragungsrate besitzt. Das Verfahren beinhaltet ferner die Schritte des Empfangens eines Datenstroms, des Erfassens eines Fehlererfassungs-Code zum Erfassen eines Fehlers in dem Datenstrom; und das Berechnen von rekursiven Termen.
  • KURZE BESCHREIBUNG DER ZEICHNUNG:
  • Ein leichteres Verständnis der Aufgaben und Merkmale der Erfindung ergibt sich unter Bezugnahme auf die nachfolgende Beschreibung und die angehängte Zeichnung.
  • Es zeigt:
  • 1 ein Blockdiagramm einer Netzwerkvorrichtung gemäß einer Ausführungsform der Erfindung;
  • 2 ein Blockdiagramm einer Chip-Boundary gemäß einer Ausführungsform der Erfindung;
  • 3A3B das Taktverhältnis zwischen einem internen Bus und einem externen Bus gemäß einer Ausführungsform der Erfindung;
  • 4 die Kanalführung gemäß einer Ausführungsform der Erfindung;
  • 5A5B Beispiele für Datenströme, die an eine erfindungsgemäße Logikvorrichtung übertragen werden können;
  • 6A6C Beispiele für Steuerwörter, die in einen Datenstrom gemäß einer Ausführungsform der Erfindung eingesetzt werden können;
  • 7 einen beispielhaften Bereich, in dem Paritätsbits in einem Datenstrom gemäß einer Ausführungsform der Erfindung berechnet werden können;
  • 8 ein Blockdiagramm der Fehlererfassung gemäß einer Ausführungsform der Erfindung;
  • 9A9B die Erfassung eines Paritäts-DIP4-Codewortes gemäß einer Ausführungsform der Erfindung;
  • 10 einen Bitmap-Generator gemäß einer Ausführungsform der Erfindung; und
  • 11 ein Beispiel für eine Anwendung einer Bitmap gemäß einer Ausführungsform der Erfindung.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN:
  • Die Erfindung ist auf ein Verfahren und eine Vorrichtung für einen verteilten Paritätsbit-Prüfer und -Generator gerichtet. Die Erfindung ist auch auf ein Bitfehler-Erfassungsverfahren und eine Vorrichtung zum Erfassen von Fehlern in einem fehlabgestimmten Datenstrom und zum Lokalisieren eines Paritäts-DIP4-Codewortes für einen fehlabgestimmten Datenstrom gerichtet.
  • Gemäß der vorausgegangenen Erläuterung sind in elektronischen Vorrichtungen, die mit anderen Vorrichtungen verbunden sind, viele Chips vorhanden, die möglicherweise mit verschiedenen Taktgeschwindigkeiten arbeiten. Beispielsweise kann ein externer Chip mit der doppelten, dreifachen oder vierfachen Geschwindigkeit eines internen Chip arbeiten, mit dem der externe Chip verbunden ist und kommuniziert. So kann etwa gemäß der Darstellung in 1 das System 100 eine Schnittstelle zwischen einer externen Vorrichtung 102 und einer internen Vorrichtung 105 aufweisen, bei der es sich um eine SPI-4-Schnittstelle (System Packet Interface Level 4 Phase 2: OC-192 System Interface für physikalische Schicht- und Sicherungsschicht-Vorrichtungen) handeln kann. SPI-4 kann eine Schnittstelle für einen Paket- und Zellentransfer zwischen einer physikalischen Schicht (PHY)-Vorrichtung und einer Sicherungsschicht ("Zink layer")-Vorrichtung, für zusammengesetzte Bandbreiten von OC-192 ATM und Packet Over SONET/SDH (POS), sowie 10 Gb/s-Ethernet-Anwendungen sein. Die SPI-4 Schnittstelle kann mit einer Geschwindigkeit in einem Bereich von 622 MHz bis 800 MHz arbeiten. Die Taktfrequenz kann daher die Hälfte der Übertragungsgeschwindigkeit (311 MHz–400 MHz) betragen, wie in 1 gezeigt ist. Möglicherweise kann jedoch die Taktgeschwindigkeit in der internen Vorrichtung 105 die Taktgeschwindigkeit der externen Vorrichtung nicht erreichen. Die Bauteile der internen Vorrichtung 105 können eine ASIC (Application-Specific Integrated Circuit) sein. Somit kann ein Schaltungs-Designer die Breite des internen Datenbusses, der als gemeinsamer Pfad oder Kanal zwischen der internen und der externen Vorrichtung dient, vergrößern, um die Taktgeschwindigkeit zu kompensieren. Gemäß der in 1 gezeigten Ausführungsform kann die Breite des internen Busses auf die vierfache Breite der Größe des externen Busses erweitert werden.
  • Gemäß der Darstellung in 1 stellt die Erfindung ein Verfahren und eine Vorrichtung für eine Schnittstellenverbindung der externen Vorrichtung 102 mit der internen Vorrichtung 105 zur Verfügung, so dass beide Vorrichtungen in der Lage sind, auf eine synchronisierte und koordinierte Weise zu arbeiten. Um diese Kompatibilität zwischen der externen und der internen Vorrichtung zu erzielen, kann die interne Vorrichtung 105 eine Analogschaltung 105 zum Synchronisieren der internen und der externen Vorrichtung beinhalten.
  • 1 zeigt die Schnittstellensignale auf der Empfangsseite der internen Vorrichtung 105. Die Empfangsdatenpfade für die interne Vorrichtung 105 können ein Taktsignal (RCLK), ein Steuersignal (RCTL) und ein Datensignal (RDAT) beinhalten. RCLK kann ein Taktsignal sein, das mit dem Übertragen von Datensignalen und Steuersignalen zwischen einer PHY-Vorrichtung und einer Sicherungsschicht-Vorrichtung im Zusammenhang steht. Die Daten- und Steuerleitungen können von den ansteigenden und abfallenden Flanken des Taktsignals betrieben werden. RDAT kann die Nutzlastdaten und das Steuerwort von der PHY-Vorrichtung an die Sicherungsschicht-Vorrichtung führen. Beim Mappen der eintreffenden Signale kann RCTL so konfiguriert sein, dass es sich in einer hohen Position befindet, wenn in RDAT ein Steuerwort vorhanden ist. Ansonsten kann RCTL auf eine niedrige Position gesetzt werden.
  • 2 stellt eine weitere detaillierte Darstellung der Schnittstelle an der internen Vorrichtung 105 zur Verfügung, bei der es sich um einen Chip handeln kann. Die Analogschaltung 110 kann eine Phasenregelschleife (PLL) 125 und ein Schieberegister 130 beinhalten. An der Chip-Boundary kann RCLK Gemäß der Darstellung in 2 beim Eintreffen des Datenstroms in die PLL gelegt werden. RDAT, das ein 16Bit-Datensignal beinhaltet, und RCTL, das ein 4Bit-Steuersignal beinhaltet, können in das Schieberegister 130 der Analogschaltung 110 übertragen werden.
  • Die 23 stellen dar, wie der im Chip 110 eintreffende externe 16Bit-Datenbus in einen 64Bit-Datenbus konvertiert werden kann. Die PLL 125 oder eine andere Frequenzmultiplikationsschaltung kann dazu verwendet werden, den schnelleren Frequenztakt für den langsameren Systemtakt der internen Vorrichtung 105 zu erzeugen. Damit die interne und die externe Vorrichtung synchron miteinander kommunizieren, müssen sie das Zykluszeitverhältnis zwischen ihren jeweiligen Zeitgebern und den Zeitgebern in den Vorrichtungen, mit denen sie kommunizieren, kennen. Die 3A3B zeigen das Taktverhältnis zwischen der internen und der externen Vorrichtung. In 3A kann die Analogschaltung 110 einen Demultiplexer 145 aufweisen, der die von der externen Vorrichtung eintreffenden Bits des Datenstroms an eines von mehreren Registern 130a–d richtet. In 3A richtet beispielsweise der Demultiplexer 145 die eintreffenden Datensignal und Steuersignale so, dass 16 Bits eines Datensignals von RDAT und ein 1Bit-Steuersignal für jeden Taktzyklus an ein jeweiliges Schieberegister 130a–d gerichtet werden. Die PLL 125 kann sich auf das externe Taktsignal RCLK aufsynchronisieren und ein Taktsignal für die Schieberegister 130a–d und den Signalspeicher 135 erzeugen, welches dann die interne und die externe Vorrichtung miteinander synchronisiert. Die Schieberegister 130a–d können einen Eingang empfangen, der an ihre Signalleitung von der PLL 125 gekoppelt ist, so dass die Schieberegister 130a–d durch ein von der PLL 125 übertragenes 2XCLK-Taktsignal getaktet werden. Das 2XCLK-Taktsignal verschiebt jeden Satz aus 16Bit-Datensignalen und 1Bit-Steuerwort in die, sowie aus den Schieberegistern 130a–d. Das von der PLL 125 übertragene Taktsignal 2XCLK kann auf mindestens das Zweifache der Frequenz des Taktes RCLK der externen Vorrichtung 102 gesetzt werden.
  • Jeder Satz von 17 Bits (mit einem 16Bit-Datensignal und einem 1Bit-Steuersignal) von den Schieberegistern 130a–d wird daraufhin an eine Signalspeicherschaltung 135 übertragen. Ein anderes Taktsignal RXCLK kann von der PLL 125 an die Signalspeicherschaltung 135 übertragen werden, um eine Synchronisierung der Taktsignale der externen und der internen Vorrichtung zu erzielen. RXCLK kann auf gleich der halben Geschwindigkeit des externen Taktes RCLK gesetzt werden. Der Ausgang des Signalspeichers 135 kann ein 4Bit-Steuersignal und ein 64Bit- Datensignal sein, die mit den Eingangsdaten von der externen Vorrichtung 102 synchronisiert sind.
  • 3B stellt ein Ablaufdiagramm zum Mappen der 16 Bits der externen Vorrichtung auf die 64 Bits der internen Vorrichtung dar. Das Ablaufdiagramm 170 für die externe Vorrichtung zeigt den Empfang der 16Bit-Daten an der internen Vorrichtung 105. Zum Mappen der 16 Bits auf 64 Bits kann die Erfindung zu Beginn des c4-Zyklus des Ablaufdiagramms 175 für die interne Vorrichtung die Daten (D0, D1, D2, D3) aus den vorherigen vier Zyklen (c0, c1, c2, c3) akkumulieren und diese Gruppierung von Daten als das 64Bit-Datensignal RXDAT (63:0) aus dem Signalspeicher 135 für die c4-Taktperiode ausgeben, wie in 3A gezeigt ist. Auf ähnliche Weise kann die Erfindung für den c8-Zyklus in dem internen Ablaufdiagramm 175 die Daten (D4, D5, D6, D7) akkumulieren und diese Gruppierung von 64Bit-Daten als RXDAT für den c8-Zyklus im Ablaufdiagramm 175 der internen Vorrichtung ausgeben.
  • Die Erfindung kann auch das Steuersignal von der externen Vorrichtung 102 an die interne Vorrichtung 105 mappen. Das Mappen des Steuersignals RXCTL, das der c4 Taktperiode entspricht, kann durch den Term 'b0011 bezeichnet werden, der eine Syntax für eine Binärzahl darstellt, welche vier Datenfelder beinhaltet. Die vier Datendateien geben die Position des Steuersignals RCTL während der Zyklen c1, c2, c3 und c4 im Ablaufdiagramm 170 für die externe Vorrichtung an. Die Datenfelder des Terms 'b0011 werden durch Verweis auf die RCTL-Referenzleitung im Ablaufdiagramm 170 der externen Vorrichtung erzeugt. Wie vorausgehend erläutert wurde, kann RCTL beim Mappen der eintreffenden Signale auf eine hohe Position gemappt werden, wenn ein Steuerwort vorliegt, und ansonsten kann RCTL auf eine niedrige Position gemappt werden. Beispielsweise in 3A ist RCTL für die Zyklen c0 und c1 "0", wie durch die niedrige Position angegeben ist, und die RCTL für die Zyklen c2 und c3 sind "1", wie durch die hohe Position angegeben ist. Daher wird das Steuersignal von der externen Vorrichtung an die interne Vorrichtung auf eine Binärzahl 'b0011 gemappt, wie in dem Ablaufdiagramm 175 für die interne Vorrichtung angezeigt ist. Somit veranschaulicht das Ablaufdiagramm, wie die Erfindung den 16Bit-Dateneingang und das 1Bit-Steuersignal in einen Ausgang aus 64Bit-Datensignal und 4Bit-Steuersignal konvertieren kann.
  • Als nächstes werden das 4Bit-Steuersignal und das 64Bit-Datensignal in ein Digitalsignal konvertiert unter Verwendung eines Analog-/Digitalumsetzers (nicht gezeigt), bei dem es sich um eine Komponente der Analogschaltung 110 handeln kann. Nach dem Konvertieren der Analogsignale in ein Digitalsignal wird das Digitalsignal an die Eingangsregister 700 gelegt, wie in 1 gezeigt ist.
  • Das Konvertieren der 16 Bits zu 64 Bits kann das Problem einer Datenfehlabstimmung erzeugen. In dem 16Bit-Datenbusbereich der externen Vorrichtung 102 ist eine Datenfehlabstimmung typischerweise kein Thema, weil die 16Bit-Daten nur einem Kanal zugeordnet werden. Wenn jedoch die 16 Bits in der internen Vorrichtung 105 in 64 Bits konvertiert werden, akkumuliert die interne Vorrichtung 105 vier Gruppen von 16 Bits und kombiniert die vier Gruppen zu 64 Bits, wie vorausgehend erläutert wurde. Beim Akkumulieren der vier Gruppen von 16 Bits 110 kann die Analogvorrichtung 110 eine oder mehr Gruppen von Daten aus einem oder mehreren Eingangskanälen (nicht gezeigt) der internen Vorrichtung 105 auswählen und die ausgewählten Gruppen auslesen und in eine 64Bit-Gruppierung verschachteln. Eine Kanalführung tritt ein, wenn Daten, die zu verschiedenen Kanälen gehören, auf eine verschachtelnde Weise übertragen werden. Eine Kanalführung kann in einer Ausführungsform der Erfindung unterstützt werden, die eine SPI-4-Schnittstelle anwendet. Ein Beispiel für eine Kanalführung, das im nachfolgenden erläutert wird, ist in 4 gezeigt.
  • An den Eingangskanälen (nicht dargestellt) der internen Vorrichtung 105 kann die Erfindung dazu ausgelegt sein, mehrere Eingangstypen zu empfangen, wie beispielsweise in TABELLE I gezeigt ist. TABELLE I
    CW Steuerwort
    PCLW Nutzlast-Steuerwort
    IC Leerlauf-Steuerwort
    TCW Training-Steuerwort
    Data word Steuerbit deaktiviert
    TDW Training-Datenwort
    Data Nutzlastdaten
  • Gemäß der Darstellung in 5A können die binären Informationen in die interne Vorrichtung 105 als ein Datenstrom 200 mit einer minimalen und maximalen Länge, die von einer bestimmten Anwendung bestimmt werden, übertragen werden. 5A stellt eine Veranschaulichung von Zellen und Paketen mit variabler Länge zur Verfügung, die auf den Datenstrom gemappt werden können. Somit können vollständige Pakete oder kürzere Bursts in dem Datenstrom 200 übertragen werden. Zwischen die Burstübertragungen können Steuerwörter eingesetzt werden. Diese Steuerwörter enthalten die Fehlerkontrolle-Codierung, die auch als Paritätsbits bezeichnet wird. Die Paritätsbits können die interne Vorrichtung 105 informieren, falls während der Übermittlung von der Quellvorrichtung an die Bestimmungsvorrichtung ein Fehler in dem Burst aufgetreten ist. Sobald ein Fehler erfasst wird, kann die Bestimmungsvorrichtung eine erneute Übertragung der verfälschten Daten von der Quellvorrichtung anfordern.
  • Das Steuerwort kann ein Leerlauf-Steuerwort, ein Nutzlast-Steuerwort und/oder Training-Steuerwort sein. Die Steuerwörter in 5A sind als Nutzlast-Steuerwörter gezeigt, die zwei benachbarte Burstübertragungen voneinander trennen können, und die Steuerwörter können die Zustandsinformationen beinhalten, die sich auf den früheren Transfer und den darauf folgenden Transfer beziehen. Sobald ein Transfer begonnen hat, können Datenwörter ununterbrochen gesendet werden, bis das Paketende, End-of-Packet (EOP), oder ein Mehrfaches einer vorgegebenen Anzahl von 16 Byte erreicht ist. Die interne Vorrichtung 105 kann so entworfen sein, dass der maximal konfigurierte Nutzlastdatentransfer ein Mehrfaches von 16 Byte sein kann. Der Zwischenraum zwischen dem Ende eines gegebenen Transfers und dem nächsten Nutzlast-Steuerwort, das den Beginn eines weiteren Transfers oder Start-of-Packet (SOP) markieren kann, kann aus Null oder Leerlauf-Steuerwörtern und/oder Trai ningsmustern bestehen. Insbesondere kann die Lücke zwischen kürzeren Paketen mit Leerlauf-Steuerwörtern ausgefüllt werden. Gemäß der Darstellung in 5B kann das Steuerwort an das Ende eines Burst angehängt werden. Falls die Informationen als Pakete übertragen werden, kann jedes Paket mit Ausnahme des Paketendes in Mehrfache von 16 Byte unterteilt werden. Das Paketende kann eine beliebige Länge besitzen, wie in 5B gezeigt ist. Somit kann das Paketende ein Paket mit einer variablen Länge sein.
  • 6A beschreibt einige der Felder, die in dem Steuerwort enthalten sein können. 6B zeigt eine Liste von beispielhaften Steuerwort-Typen. 6C zeigt Beispiele für gültige Steuerwörter.
  • Wie eingangs erläutert wurde, kann eine Datenfehlabstimmung in einer elektronischen Vorrichtung infolge einer Kanalführung auftreten. In 4 sind Taktzyklen c1, c2, c3, c4, c5, c6, c7, c8 und c9 gezeigt. Die Analogvorrichtung 110 kann den Eingang des von den Eingangskanälen (nicht gezeigt) eintreffenden Datenstroms so auswählen, dass der Eingang Gemäß der Darstellung in 4 in der Pipeline angeordnet werden kann. Beim Mappen des Dateneingangs Gemäß der Darstellung in 4 kann der Term "dij" verwendet werden, wobei das Symbol "d" für einen "Daten"-Eingang steht, das Symbol "i" für die Kanalnummer steht, und das Symbol "j" für die "j-ten" 16Bit-Daten steht, die zu dem Kanal "i" gehören. Beispielsweise kann "d15" in der Spalte des Zyklus c2 als das fünfte Datenbit gelesen werden, das vom Kanal 1 übertragen wird. Demzufolge werden in den Spalten der Zyklen c1 und c3 des in 4 gezeigten Beispiels ein Nutzlast-Steuerwort PC und Kanal 1-Daten übertragen. In Zyklus c2 werden nur Kanal 1-Daten übertragen. In Zyklus c4 werden nur Kanal 2-Daten übertragen. In Zyklus c5 werden Kanal 1-Daten (d1a), Kanal 2-Daten (d24), und zwei Nutzlast-Steuerwörter (PC) übertragen. In Zyklus c5 ist dies das Ende des Pakets für Kanal 1-Daten, und es wird mit der Übertragung von Kanal 2-Daten begonnen. In Zyklus c6 werden Kanal 2-Daten, ein Leerlauf-Steuerwort (IC) und ein Nutzlast-Steuerwort (PC) übertragen. In Zyklus 6 ist dies das Ende des Pakets für Kanal 2-Daten, und in Zyklus c7 wird mit der Übertragung von Kanal 3-Daten begonnen. In den Zyklen c7 und c8 werden nur Kanal 3-Daten übertragen. In Zyklus c9 werden nur Leerlauf-Steuerwörter (IC) übertragen.
  • In Zyklus c5, in dem Daten übertragen werden, welche sowohl zu Kanal 1 als auch zu Kanal 2 gehören, besteht die Möglichkeit, dass eine Datenfehlabstimmung auftre ten kann infolge der Tatsache, dass der Zyklus c5 das Ende des Pakets für Kanal 1 beinhaltet, bei dem es sich um ein Paket mit einer variablen Länge handeln kann, und auf das Ende des Pakets für Kanal 1 folgt ein Nutzlast-Steuerwort PC. Infolge der Datenfehlabstimmung, die von den Paketen mit einer variablen Länge verursacht werden kann, kann auch ein Problem auftreten beim Lokalisieren der Paritätsbits und beim Erfassen, ob ein Fehler in dem Datenstrom aufgetreten ist.
  • Die Erfindung stellt ein Verfahren und eine Vorrichtung zur Verfügung zum Erzeugen eines Paritäts-DIP4-Codewortes und zum Erfassen, ob ein Fehler während der Übertragung eines Datenstroms an eine Bestimmungsvorrichtung aufgetreten ist, obgleich eine Datenfehlabstimmung in dem Datenstrom aufgetreten sein kann. 7 zeigt ein Beispiel für den Bereich, in dem die DIP4-Paritätsbits in dem Datenstrom 200 berechnet werden können. Die Erfindung kann dazu verwendet werden, DIP4-Paritätsbits zu lokalisieren, die in der Lage sind, bis zu maximal vier Fehler innerhalb eines internen Taktzyklus zu erfassen.
  • 8 stellt ein Blockdiagramm eines Systems und eines Verfahrens zum Erfassen von Fehlern in einem Datenstrom gemäß einer Ausführungsform der Erfindung dar. Wie obenstehend erläutert wurde und in den 13 gezeigt ist, werden das 4Bit-Steuersignal RXCTL und das 64Bit-Datensignal RXDAT an Eingangsregister 700 gelegt. Die Eingangsregister 700 speichern die 4Bit-Steuersignale und die 64Bit-Datensignale in dem eintreffenden Datenstrom. Die Eingangsregister 700 können die 64 Bits des Datensignals beispielsweise in vier Gruppierungen als a, b, c und d unterteilen. Jeder der Ausgänge a, b, c und d stellt eine 16Bit-Gruppierung mit einer Beziehung Gemäß der Definition in der nachfolgenden TABELLE II dar:
  • TABELLE II
    • a = RXDAT(63:48)
    • b = RXDAT(47:32)
    • c = RXDAT(31:16)
    • d = RXDAT(15:0)
  • Anfangs können die Eingänge a, b, c und d von den Eingangsregistern 700 empfangen und daraufhin an das Logikoperationen-Modul 710 übertragen werden. Das Logikoperationen-Modul 710 kann mehrere logische Operationen an den eintreffenden 64 Bits vornehmen, um die 64 Bits auf eine kleinere, leichter handhabbare Anord nung von logischen Gleichungen zu reduzieren, die weniger mathematische Berechnungen als der ursprüngliche 64Bit-Eingang erfordert. Die von dem Logikoperationen-Modul 710 durchgeführten logischen Operationen können an einem Datenstrom mit einer beliebigen Größe vorgenommen werden. Somit können die Anzahl und Zeilen, die von dem Logikoperationen-Modul 710 berechnet und angeordnet werden, auf der Grundlage der Erfassungsfähigkeit der jeweiligen Anwendung bestimmt werden. Die Erfindung kann eine zentrale Verarbeitungseinheit oder einen Prozessor (beide nicht gezeigt) zum Durchführen der mathematischen Berechnungen, Steueranweisungen und Liefern von Taktsignalen, sowie zum Implementieren von anderen Operationen aufweisen.
  • Das Logikoperationen-Modul 710 kann eine oder mehr EXKLUSIV-ODER (XOR)-Logikschaltungen 712 aufweisen. Die XOR-Schaltung 712 kann die Eingänge a, b, c und d zum Berechnen eines rekursiven Terms unter Verwendung eines (DIP4)-Verfahrens ("Diagonal Interleaved Parity") Gemäß der Darstellung in den 9A9B verwenden. In 9A kann beispielsweise die Erzeugung eines Imparitäts-DIP4 Codewortes unter Verwendung des (DIP4)-Verfahrens berechnet werden. Die 64 Bits des eintreffenden Datenstroms, die als a, b, c und d gruppiert wurden, können so angeordnet werden, dass das erste empfangene Wort des Eingangs "d" in der untersten Zeile der Matrix angeordnet wird, und das letzte Wort des Eingangs "a" an der Spitze der Matrix. Der DIP4-Code kann durch diagonales Summieren entlang der gestrichelten Linien erzeugt werden, um eine 16Bit-Paritätssumme zu erzeugen. Somit ist jedes Bit der 16Bit-Parität das Ergebnis einer XOR-Operation entlang der entsprechenden gestrichelten Linien. Die XOR-Operation ist in den Tabellen der vorliegenden Erörterung durch ein "^"-Symbol angegeben. In 9A kann die 16Bit-Paritätssumme als r-Vektor r(15:0) angegeben sein. Das 64Bit-Datensignal kann Gemäß r(15:0) wie in der Darstellung in der nachfolgenden TABELLE III definiert sein. TABELLE III
    Figure 00120001
    Figure 00130001
  • Gemäß der Darstellung in 9A kann die erste 16Bit-Prüfsumme in zwei Bytes zerlegt werden, die jedem weiteren modulo-2 hinzugefügt werden, um eine 8Bit-Prüfsumme zu erzeugen. Der Ausdruck "modulo" drückt die maximale Anzahl von Zuständen für den Zähler aus, der die Addition der 8Bit-Prüfsumme durchführt. Die 8Bit-Prüfsumme kann daraufhin in zwei 4Bit-Tetraden ("nibbles") geteilt werden. Eine Tetrade ist eine Sequenz von 4 Bits, die als eine Einheit behandelt wird. Die zwei 4Bit-Tetraden werden zu jedem modulo-2 addiert, um den DIP4-Code zu erzeugen, wie in der nachfolgenden TABELLE IV definiert und in 9A gezeigt ist. TABELLE IV
    Figure 00130002
  • Das Logikoperationen-Modul 710 kann jedes DIP4(i) berechnen, indem es XOR-Operationen unter Verwendung der XOR-Schaltungen 712 durchführt. Beispielsweise kann DIP4(3) Gemäß der Darstellung in TABELLE IV bestimmt werden, indem eine XOR-Operation an den Vektoren der r(15), r(11), r(7) und r(3) durchgeführt wird. Die jeweiligen Terme für r(15), r(11), r(7) und r(3) können aus der TABELLE III ausgewählt werden. Beispielsweise ist r(15) in TABELLE III gleich der XOR-Operation von d(15), c(0), b(1) und a(2). In TABELLE I ist r(11) gleich der XOR-Operation von d(11), c(12), b(13) und a(14). Die Terme für r(7) und r(3) können auf ähnliche Weise ausgewählt und XOR-verarbeitet werden.
  • Gemäß einer Ausführungsform der Erfindung, kann die Erfindung, wenn der eintreffende Datenstrom 200 ein Datenburst ist, den Zustand der vorausgehend berechneten Paritätsbits (PDIP) speichern oder beibehalten, um die Berechnung der nächsten Paritätsbits (NDIP) zu unterstützen. Insbesondere ist die Berechnung der NDIP-Bits ein iterativer Vorgang. Somit kann die Berechnung einer jeden Paritätsbit-Operation als iterative Routine in die nachfolgende Berechnung des nächsten Paritätsbit rückgeführt werden. Dazwischenliegende Paritätsbit-Terme können als Flag erzeugt werden, um zu bestimmen, ob die PDIP beim Durchführen der Berechnung der darauf folgenden NDIP verwendet werden, wie nachfolgend mit Bezug auf das Logikoperationen-Modul 740 erörtert wird. Um den reiterativen Vorgang der Berechnung von NDIP zu unterstützen, kann die Erfindung einen Matrixschlüssel erzeugen.
  • Wie in TABELLE IV gezeigt ist, wurde der ursprüngliche 64Bit-Eingang auf 4 Bits mit DIP4(3), DIP4(2), DIP4(1), DIP4(0) reduziert. Somit können die DIP4(i)-Terme als vier Bits, die vier Spalten zugeordnet sind, auf eine 4 × 4-Matrix gemappt werden. Das Logikoperationenmodul 710 kann somit einen entsprechenden Matrixschlüssel erzeugen, der vier Zeilen von Bits (als 0, 1, 2, 3 etikettiert) und vier Spalten aufweist, wie in der TABELLE V(a) gezeigt ist. Beim Erzeugen des Matrixschlüssels der TABELLE V(a) können die vier Zeilen von Bits in Spalte 1 als 3, 2, 1, 0 nummeriert werden, wobei 3 in der linken Spalte ganz oben und 0 in der letzten Zeile der ersten Spalte angeordnet ist. In der zweiten Spalte können die vier Zeilen von Bits so angeordnet sein, dass die Zahlen im Vergleich mit den Bits in Spalte 1 in Vertikalrichtung um 1-Bits verschoben sind. Somit sind die Zeilen von Bits in Spalte 2 vertikal als 0, 3, 2 und 1 angeordnet. TABELLE V(a)
    Figure 00140001
  • Im nächsten Schritt des Erzeugens des Matrixschlüssels kann das Logikoperationen-Modul 710 daraufhin die Spalten in TABELLE V(a) so umbenennen, dass die Vektoren A, B, C und D mit einbezogen sind, wie in TABELLE V(b) gezeigt ist. Beispielsweise kann die Spalte 1, welche die in TABELLE V(a) als 3, 2, 1, 0 angeordneten Bits enthält, zu Spalte D umbenannt werden, die D3, D2, D1 und D0 enthält. Die übrigen Spalten können zu Spalte C, Spalte B bzw. Spalte A umbenannt werden. TABELLE V(b)
    Figure 00150001
  • Das Logikoperationen-Modul 710 kann nun die in TABELLE V(b) gezeigten Spaltengruppierungen "D", "C", "B" und "A" dazu verwenden, die DIP(i)-Terme in TABELLE IV weiter zu manipulieren. Beispielsweise kann Zeile 1 von TABELLE VI mit DIP4(3) gleich gesetzt werden. Somit kann die erste Zeile der TABELLE VI so zugewiesen werden, dass DIP4(3) nun gleich der XOR-Operation D3^C0^B1^A2 ist. DIP4(2), DIP4(1) und DIP4(0) können auf ähnliche Weise durch das Logikoperationen-Modul 710 zugewiesen werden. TABELLE VI
    Figure 00150002
  • Das Logikoperationen-Modul 710 kann daraufhin die Terme von TABELLE III, IV, und VI ersetzen und kombinieren, um den in TABELLE VII gezeigten Matrixschlüssel zu erzeugen. Zum Durchführen einer DIP4(i)-Berechnung kann das System den Matrixschlüssel in TABELLE VII verwenden, um die relevanten Bits für jeden DIP4(i)-Term auszuwählen. Somit kann der DIP4(i)-Code für das ursprüngliche 64Bit-Datensignal gemäß den nachstehend in TABELLE VIII gezeigten Gleichungen ausgedrückt werden. So ist etwa der Term D3 von DIP4(3) in TABELLE VII gleich der XOR-Operation von d(15), d(11), d(7) und d(3) Gemäß der Darstellung in TABELLE VIII. Als ein weiteres Beispiel ist der Term A1 von DIP4(2) gleich der XOR-Operation von a(1), a(3), a(9) und a(5) Gemäß der Darstellung in TABELLE VIII.
  • TABELLE VII
  • Figure 00160001
  • TABELLE VII zeigt, dass der ursprüngliche 64Bit-Dateneingang auf eine kleinere, leichter handhabbare Anordnung mit sechzehn Indices reduziert wurde. Die in der TABELLE VII aufgeführten P-Terme können als die PDIP zugewiesen werden bei der Bestimmung, ob die gegenwärtigen DIP4-Terme bei der Durchführung der Berechnung der darauf folgenden NDIP verwendet werden. Die DIP4(i)-Berechnung, die von den XOR-Schaltungen 712 erzeugt wird, ergibt sechzehn Variable A0, A1, A2, A3, B0, B1, B2, B3, C0, C1, C2, C3, D0, D1, D2 und D3. TABELLE VIII
    Figure 00160002
    Figure 00170001
  • Gemäß der Darstellung in 8 werden, nachdem jedes DIP4(i) von dem Logikoperationen-Modul 710 berechnet worden ist, die Werte A3, A2, A1, A0, B3, B2, B1, B0, C3, C2, C1, C0, D3, D2, D1 und D0 an ein D-Flop 715 übertragen. Das D-Flop 715 enthält auch ein PDIP-Register (nicht gezeigt), das die PDIP-Informationen enthält, wie nachfolgend erörtert wird.
  • 9B zeigt ein weiteres Beispiel für eine Ausführungsform der Erfindung, bei der die interne Vorrichtung 105 zwei 64-Bit-Eingangsdaten empfängt, die als (a, b, c, d) und (a', b', c', d') bezeichnet werden können. Die beiden 64Bit-Eingänge in 9B können unter Verwendung der gleichen Vorgänge erzeugt werden, die im Hinblick auf 9A erörtert wurden. Somit können das Logikoperationen-Modul 710 und die XOR-Schaltung 712 die TABELLE IX erzeugen, die der TABELLE III entspricht. TABELLE X kann unter Verwendung der Vorgänge erzeugt werden, die im Hinblick auf die TABELLE IV erörtert wurden, und die TABELLE XI kann unter Verwendung der Vorgänge erzeugt werden, die im Hinblick auf die TABELLE VII erörtert wurden. TABELLE IX
    Figure 00170002
    Figure 00180001
    TABELLE X
    Figure 00180002
    Figure 00190001
    TABELLE XI
    Figure 00190002
  • Ein Unterschied, der bei einem Vergleich der Berechnungen zwischen 9A und 9B auffällt, ist, dass P(3), P(2), P(1), P(0), die in TABELLE XII gezeigt sind, als ein rekursiver Term des DIP4-Codewortes P(3:0) der früheren 64Bit-Eingangsdaten gesetzt werden können, die in TABELLE VII bestimmt sind. TABELLE XII
    Figure 00190003
  • Wie vorausgehend erörtert wurde und in 8 gezeigt ist, gibt das Eingangsregister 700 (13 und 8) Bits des 64Bit-Datensignals RXDAT(63:0) und das 4Bit-Steuersignal RXCTL(3:0) an einen Decoder 720 aus. Der Decoder 720 kann dazu verwendet werden, den Typ von Informationen zu bestimmen, die in dem Datenstrom übertragen werden. Ein Grund, warum die Erfindung eine Überprüfung durchführt, um die Klassifizierung des Typs von Informationen zu bestimmen, die in der internen Vorrichtung 105 empfangen werden, ist es, weil die Erfindung auf der Grundlage der Bestimmung davon, ob es sich bei der eintreffenden Information um entweder Daten oder ein Steuerwort handelt, dann weiß, ob dieser Abschnitt des Datenstroms überprüft werden soll, um die DIP4-Paritätsbits in dem Datenstrom zu lokalisieren. Beispielsweise wird angemerkt, dass 10 angibt, dass wenn es sich bei der gegenwärtigen Eingabe um Daten handelt, die Erfindung so konfiguriert werden kann, dass dieser Abschnitt des Datenstroms nicht auf DIP4-Paritätsbits untersucht wird, da die Paritätsbits in den Steuerwörtern und nicht im Dateneingang enthalten sind.
  • Um die Informationen in dem Datenstrom zu klassifizieren, kann die Erfindung beispielsweise den Abschnitt des 4Bit-Steuersignals transferieren, nachdem das Steuersignal durch das Eingangsregister 700 transferiert wurde. Nach dem Durchgang des Steuersignals durch das Eingangsregister 700 kann das Steuersignal als der gespeicherte Abschnitt q(3:0) bezeichnet werden.
  • Die Eingangsregister 700 speichern das 64Bit-Datensignal und das 4Bit-Steuersignal Gemäß der nachfolgenden Darstellung in TABELLE XIII:
  • TABELLE XIII
    • a = RXDAT(63:48)
    • b = RXDAT(47:32)
    • c = RXDAT(31:16)
    • d = RXDAT(15:0)
    • q(3:0) = RXCTL(3:0)
  • Ein Verfahren, das zum Bestimmen das Typs von in dem eintreffenden Datenstrom enthaltenen Informationen verwendet werden kann, besteht darin, dass der Decoder 720 den gespeicherten Abschnitt q(3:0) und jedes 16. Bit des 64Bit-Datensignals Gemäß der Darstellung in der nachfolgenden TABELLE XIV decodieren kann. Die vorliegende Erfindung ist nicht auf nur dieses Bit-Identifizierungsverfahren beschränkt. Andere Bit-Identifizierungsverfahren können von der Erfindung eingesetzt werden.
  • Der Decoder 720 untersucht das im Ablaufdiagramm 175 der internen Vorrichtung erzeugte RXCTL (3B), um den Typ der in dem eintreffenden Datenstrom enthaltenen Informationen zu bestimmen.
  • TABELLE XIV
    • Decode (3) = f(RXCTL (3), a(15))
    • Decode (2) = f(RXCTL (2), b(15))
    • Decode (1) = f(RXCTL (1), c(15))
    • Decode (0) = f(RXCTL (0), d(15))
  • Der Decoder 720 decodiert RXCTLW und RDAT(15), um zu bestimmen, ob es sich bei den Informationen, die in jeder 16Bit-Gruppierung von a, b, c, d übertragen werden, um Daten, ein Leerlauf-Steuerwort (IC), ein Training-Steuerwort (TCW), oder ein Nutzlast-Steuerwort (PLCW) handelt. TABELLE XV
    Figure 00210001
  • Der Decoder 720 kann die TABELLE XIV verwenden, um den Typ der in dem Datenstrom übertragenen Informationen zu bestimmen. Wenn z.B. die Binärzahl im Steuerwort RXCTL Datenfeld gleich "0" gesetzt ist, und das 16. Bit RXDAT(15) auf "1" gesetzt ist, bestimmt der Decoder 720, dass es sich bei den Informationen um "Daten" handelt. Als ein weiteres Beispiel, wenn die Binärzahl in dem Steuerwort RXCTL Datenfeld gleich "1" gesetzt ist und RXDAT ebenfalls auf der Grundlage der vorausgegangenen TABELLE XV gleich "1" gesetzt ist, bestimmt der Decoder 720, dass es sich bei den Informationen um ein "PLCW" handelt.
  • Für jeden 64Bit-Eingang kann das System diese Operation an jeder 16Bit-Gruppe vornehmen. Somit kann die Erfindung diese Operation beispielsweise viermal durchführen, um einen decode(i)-Ausgang zu erzeugen, der vom Decoder 720 an einen Bitmap-Generator 730 übertragen wird. Die in der obenstehenden TABELLE XIV gezeigten decode(i)-Informationen können als Eingang zum Generieren einer Bitmap 730 verwendet werden, wie in 8 gezeigt ist. Der Bitmap-Generator 730 kann zwei Terme, ein Prüfungsfreigabe-Bit und ein Maskenbit enthalten. Der Prüfungsfreigabe-Term kann von dem System verwendet werden, um anzugeben, in welcher Position des Datenstroms das System die Überprüfung auf die Paritätsbits DIP4(i) durchführen wird. So kann das Prüfungsfreigabe-Bit etwa dem System anzeigen, das DIP4(i) an einer 16Bit-Stelle innerhalb des 64Bit-Datensignals zu überprüfen. Die Maske der Bitmap hilft dem System bei der Bestimmung, ob das frühere Paritätsbit PDIP verwendet wird, um das nächste Paritätsbit NDIP zu berechnen. Wenn der Maskenterm gleich "1" gesetzt ist, kann dies anzeigen, dass der eintreffende Datenstrom der Beginn eines neuen Datenburst ist. Falls der Maskenterm gleich "0" gesetzt ist, kann dies anzeigen, dass der Datenstrom immer noch in einer Datenburst-Phase überträgt.
  • In 8 kann das Logikoperationen-Modul 740 den Maskenterm und die vom D-Flop 715 übertragenen 16 Variablen verwenden, um einen Zwischenterm DIP4_ERR(i) zu berechnen und zu bestimmen, welche Terme für die Berechnung von NPID verwendet werden. Letztlich ist es möglich, den Zwischenterm DIP4_ERR bei der Berechnung von NPID zu verwenden oder auch nicht. Die Bestimmung, ob entweder die Zwischenterme DIP4_ERR(i) oder der 16-Variablen-Eingang verwendet werden, um NDIP zu berechnen, kann von einer Bitmap-Entscheidungsberechnung abhängen, die vom Logikoperationen-Modul 740 durchgeführt wird.
  • Zum Berechnen der Zwischenterme DIP4_ERR(i) führt das Logikoperationen-Modul 740 eine Bitmap-Entscheidung Gemäß der Darstellung in 11 durch. In SCHRITT 1 von 11 führt das Logikoperationen-Modul 740 eine Bitmap-Entscheidung an a(15:0) durch. Bei der Verarbeitung der Bitmap-Entscheidung bestimmt das Logikoperationen-Modul 740, ob die Maske für a(15:0) gleich "0" ist. Wenn die Maske gleich "0" ist, kann das NDIP4 unter Verwendung von PDIP4 berechnet werden. Wenn die Maske gleich "1" ist, kann es sein, dass das Logikoperationen-Modul 740 PDIP4 nicht bei der Berechnung von NDIP4 verwendet. Genauer gesagt, wenn die vom Bitmap-Generator 730 bestimmte Maske gleich "0" ist, kann die Berechnung DIP4_ERR(0) unter Verwendung der Logikoperation (P3, P2, P1, P0)^(A3, A2, A1, A0) durchgeführt werden. Die Operation (P3, P2, P1, P0)^(A3, A2, A1, A0) ist als XOR-Verknüpfung der Bits von P3, P2, P1, und P0 mit den Bits von A3, A2, A1, A0 zu verstehen. Falls der eintreffende Verkehr a, b, c und d der erste Zyklus ist, kann PDIP gleich "0" gesetzt werden. Wenn andererseits die Maske gleich "1" ist, wird die DIP4_ERR(0)-Berechnung unter Verwendung der Terme (A3, A2, A1, A0) durchgeführt.
  • Da bei diesem Beispiel die 16 Bits von a(15:0) "Daten" enthalten, kann das Prüfungs-Freigabebit als "0" gesetzt werden, und die Maske kann gleich "0" gesetzt werden, wie in 10 gezeigt ist. Da die Maske gleich "0" ist, kann dann die Logikoperation (P3, P2, P1, P0)^(A3, A2, A1, A0) verwendet werden, um einen Ausgang (PA3, PA2, PA1, PA0) zu erzeugen. Eine NAND-Operation kann an (PA3, PA2, PA1, PA0) vorgenommen werden, und das Ergebnis wird in einem Register (nicht gezeigt) als DIP4_ERR(0) gespeichert. Da a(15:0) "Daten" enthält, können der Maskenterm und der Prüfungs-Freigabeterm so eingestellt werden, dass sie anzeigen, dass an diesem 16Bit-Abschnitt des Datenstroms keine DIP4 Paritätsbit-Überprüfung vorgenommen wird.
  • Es ist zu beachten, dass je nach der Maske die in SCHRITT 1 bestimmte Berechnung von (PA0, PA3, PA2, PA1) zum Berechnen des darauf folgenden DIP4_ERR(1) in SCHRITT 2 verwendet werden kann. In SCHRITT 2 kann das Logikoperationen-Modul 740 die 16 Bits von b(15:0) überprüfen, die "Daten" enthalten. Daher kann die Prüfungsfreigabe gleich "0" gesetzt werden, und das Masken-Datenfeld von b(15:0) kann gleich "0" gesetzt werden. Da die Maske gleich "0" ist, kann das Logikoperationen-Modul 740 die Logikoperation (PA0, PA3, PA2, PA1)^(B3, B2, B1, B0) wählen. Die Logikoperation (PA0, PA3, PA2, PA)^(B3, B2, B1, B0) kann einen Ausgang (PB3, PB2, PB1, PB0) erzeugen. Eine NAND-Operation wird an (PB3, PB2, PB1, PB0) vorgenommen, und der Ausgang wird als DIP4_ERR(1) in ein Register (nicht gezeigt) gespeichert.
  • In SCHRITT 3 von 9 enthält c(15:0) ein "Steuerwort." Daher können die Bitmap-Regeln von 10 auf c(15:0) angewendet werden. Gemäß der Bitmap-Regel in 10 kann der Decoder 720 den Typ der Informationen bestimmen, die in den früheren 16 Bits gespeichert waren. In diesem Beispiel waren die früheren 16 Bits b(15:0), die "Daten" enthielten. Da die früheren 16 Bits b(15:0) "Daten" enthielten, und die gegenwärtige Eingabe ein "Steuerwort" ist, weisen die Bitmap-Regeln von 10 das Logikoperationen-Modul 740 an, die Bitmap als "chk_en = 0, mask = 0" einzustellen. Da der Maskenterm für c(15:0) gleich "0" ist, kann das Logikoperationen-Modul 740 (PB0, PB3, PB2, PB)^(C3, C2, C1, C0) wählen, um die DIP4_ERR(2)-Berechnung zu erzeugen. Die Logikoperation (PB0, PB3, PB2, PB1)^(C3, C2, C1, C0) erzeugt einen Ausgang (PC3, PC2, PC1, PC0). Das Logikoperationen-Modul 740 nimmt daraufhin eine NAND-Operation an (PC3, PC2, PC1, PC0) vor und speichert den Ausgang in DIP4_ERR(2).
  • In SCHRITT 4 enthält d(15:0) ein Steuerwort. Als Ergebnis kann das System die Bitmap-Regeln von 10 anwenden. Daher kann das Logikoperationen-Modul 740 die früheren 16 Bits untersuchen, um den Typ des Eingangs zu bestimmen. Bei diesem Beispiel waren die früheren 16 Bits c(15:0), die ein "Steuerwort" enthalten. Die Regeln von 10 dienen als Schlüssel zum Anweisen des Programms, die Prüfungsfreigabe gleich "1" und den Maskenterm gleich "1" zu setzen, da die frühere Eingabe "nicht Daten" ist, und die gegenwärtige Eingabe ein "Steuerwort" beinhaltet. Auf der Grundlage des Maskenterms der Bitmap kann das Programm daraufhin die Bitmap-Entscheidung vornehmen. Da die Maske für d(15:0) gleich "1" ist, kann das System (D3, D2, D1, D0) wählen, um DIP4_ERR3 zu erzeugen. Die Terme (D3, D2, D1, D0) können ebenfalls als NDIP4 (P3, P2, P1, P0) gesetzt werden. Durch die Wahl von (D3, D2, D1, D0) bedeutet dies in dem vorliegenden Beispiel, dass die Berechnung der Zwischenterme DIP4_ERR anzeigt, dass vorausgehend berechnete Paritätsbits bei der Berechnung von NDIP nicht berechnet werden. Insbesondere kann NDIP in diesem Beispiel unter Verwendung der neuen Eingabeterme D3, D2, D1 und D0 aus den 16 Variablen berechnet werden, die vom D-Flop 715 übertragen wurden. Das Logikoperationen-Modul 740 setzt daraufhin (D3, D2, D1, D0) gleich (P3, P2, P1, P0). Das Logikoperationen-Modul 740 gibt (P3, P2, P1, P0) als Feedback in den D-Flop 715 ein, wie in 8 gezeigt ist. Daraufhin kann der reiterative Vorgang des Berechnens von NDIP erneut beginnen.
  • Das DIP4_ERR(i) vom Logikoperationen-Modul 740 kann über einen D-Flop 750 an einen DIP4-Fehlerprüfer 760 übertragen werden. Falls die von dem Logikoperationen-Modul 740 durchgeführte DIP4_ERR Berechnung anzeigt, dass eines der 16Bit-Daten einen DIP4-Fehler enthält, kann der DIP4 Fehlerprüfer 760 ein endgültiges DIP4_ERR erzeugen. Die Erfindung kann so konfiguriert sein, dass der DIP4-Fehlerprüfer 760 nur am Ende eines Nutzlastdaten-Burst oder eines individuellen Steu erwortes (Leerlauf-Steuerwort oder Training-Steuerwort) auf einen Fehler überprüft. Das vom Bitmap-Generator 730 an den DIP4 Fehlerprüfer 760 übertragene chk_en(i) kann dazu dienen, die 16Bit-Gruppierung in dem Datenstrom anzuzeigen, die auf einen Fehler überprüft werden soll. Die folgende logische Gleichung (Gl. 1) kann dazu verwendet werden, das endgültige DIP4_ERR zu erzeugen. Final DIP4_ERR = DIP4_ERR(i)^chk_en(i) "Gl. 1"
  • Das endgültige DIP4_ERR kann folgendermaßen überprüft werden: Beispielsweise kann in 4 in dem Zyklus c1 nur ein DIP-4-Codewort überprüft werden, da nur ein Nutzlast-Steuerwort (PC) in Zyklus c1 vorhanden ist. Der DIP4 Fehlerprüfer 760 kann in den Zyklen c2, c4, c7 und c8 keine DIP4-Fehlerüberprüfung durchführen, da diese Zyklen nur Daten enthalten. In Zyklus c3 kann der DIP4-Fehlerprüfer 760 auf ein DIP-4-Codewort überprüfen, weil nur ein Nutzlast-Steuerwort (PC) in Zyklus c3 enthalten ist. In Zyklus c5 kann der DIP4-Fehlerprüfer 760 auf zwei DIP-4-Codewörter überprüfen, da Zyklus c5 zwei Nutzlast-Steuerwörter (PC) enthält. Der DIP4-Fehlerprüfer 760 überprüft auch in Zyklus c6 auf zwei Steuerwörter, da Zyklus c6 ein Leerlauf-Steuerwort (IC) und ein Nutzlast-Steuerwort (PC) beinhaltet. In Zyklus c9 überprüft der DIP4 Fehlerprüfer 760 auf vier DIP-4-Codewörter, da Zyklus c9 vier Leerlauf-Steuerwörter (IC) enthält.
  • Allgemein gesprochen stellt die Erfindung ein Verfahren und eine Vorrichtung für das Auffinden von Paritätsbits und die Bestimmung, ob ein Fehler innerhalb eines fehlabgestimmten Datenstroms aufgetreten ist, zur Verfügung. Somit kann der erfindungsgemäße Paritätsprüfer in dem 16Bit-Datenpfad einer Schnittstelle eines SPI-4-Chip verwendet werden.
  • Für den Durchschnittsfachmann ist es leicht einzusehen, dass die Schritte des Verfahrens in einer anderen Reihenfolge oder mit mehreren Schritten parallel zueinander durchgeführt werden können. Des Weiteren wird der Durchschnittsfachmann verstehen, dass eine Netzwerkvorrichtung für die Durchführung des obenstehend beschriebenen Verfahrens entweder in Silizium oder Software konfiguriert sein kann. Es dürfte daher verständlich sein, dass die vorliegend beschriebenen Schaltkonfigurationen rein beispielhaft sind. Für eine Bestimmung des Schutzbereichs der Erfindung sollte daher Bezug auf die beigefügten Patentansprüche genommen werden.

Claims (4)

  1. Verfahren zum Erfassen von Fehlern in Datenübertragungen aufgrund von Datenfehlabstimmungen, wobei das Verfahren umfasst: a) Interfacing einer ersten Vorrichtung (102), die eine erste Übertragungsrate besitzt, mit einer zweiten Vorrichtung (105), die eine zweite Übertragungsrate besitzt; b) Empfangen eines Datenstroms (200); e) Überprüfen eines Fehlererfassungscodes zum Erfassen eines Fehlers in dem Datenstrom (200), und Berechnen von rekursiven Termen (r15:0) aus den übertragenen Daten; d) Erzeugen einer Paritätsmatrix und Berechnen eines Paritätsbits (DIP0:3) in dem Datenstrom (200), wodurch die rekursiven Terme (r15:0) gemäss den Gleichungen berechnet werden: P(3) = D(3) XOR C(0) XOR B(1) XOR A(2) P(2) = D(2) XOR C(3) XOR B(0) XOR A(1) P(1) = D(1) XOR C(2) XOR B(3) XOR A(0) P(0) = D(0) XOR C(1) XOR B(2) XOR A(3); wobei die "P-Terme" die rekursiven Terme (r15:0) mit einer 4Bit-Ausgabe sind, und wobei "A", "B", "C" und "D" variable Terme für eine 16Bit-Eingabe sind; e) Berechnen eines Zwischenterms zum Bestimmen einer Rückkopplungsschleife, welche zum Bestimmen eines nächsten Paritätsbits verwendet wird; f) Verwenden des Zwischenterms zum Bestimmen der rekursiven Terme, die in die Rückkopplungsschleife eingegeben werden, um das nächste Paritätsbit (DIP0:3) zu berechnen; g) Verwenden eines früheren Paritätsbits (DIP0:3) als Rückkopplungsschleife, um ein nächstes Zwischenterm-Paritätsbit zu bestimmen; gekennzeichnet durch h) Erzeugen einer Bitmap mit mindestens zwei Datenfeldern, wobei die Bitmap so konfiguriert ist, dass sie einen Ort in dem Datenstrom für die Überprüfung auf das Paritätsbit (DIP0:3) angibt, und i) wobei die Bitmap eine Maske aufweist, die so konfiguriert ist, dass eine Klassifizierung einer gegenwärtigen Eingabe des Datenstroms und eine frühere Eingabe des Datenstroms erfasst wird, und Bestimmen des nächsten Zwischenterm-Paritätsbits anhand der Bitmap auf der Grundlage der Klassifizierung der gegenwärtigen Eingabe und einer früheren Eingabe.
  2. Verfahren nach Anspruch 1, welches den Schritt des Verwendens des früheren Paritätsbits und der gegenwärtigen Eingabe zum Bestimmen des nächsten Zwischenterm-Paritätsbits auf der Grundlage einer ersten Datenklassifizierung und einer zweiten Datenklassifizierung aufweist.
  3. Logikschaltung (100) zum Erfassen von Fehlern in Datenübertragungen aufgrund von Datenfehlabstimmungen, welche aufweist: a) eine Schnittstelle zum Empfangen eines Datenstroms (200), wobei der Datenstrom (200) mindestens einen Burst mit einer variablen Länge und/oder einen Bunt mit einer festen Länge aufweist; b) eine Fehlererfassungseinheit, die so konfiguriert ist, dass sie einen Fehlererfassungscode erfasst, wenn die Fehlabstimmung infolge der Berechnung von rekursiven Termen (r15:0) aus den übertragenen Daten auftritt; e) wobei die Fehlererfassungseinheit so konfiguriert ist, dass sie den Datenstrom (200) Spalten und Zeilen in einer Paritätsmatrix zuordnet, wobei die Paritätsmatrix so konfiguriert ist, dass sie mindestens ein Paritätsbit (r15:0) in dem Datenstrom (200) bestimmt, und wobei das Paritätsbit (r15:0) so konfiguriert ist, dass ein Fehler in dem Datenstrom (200) erfasst wird; d) wodurch die rekursiven Tenne (DIP0:3) gemäss den Gleichungen berechnet werden: P(3) = D(3) XOR C(0) XOR B(1) XOR A(2) P(2) = D(2) XOR C(3) XOR B(0) XOR A(1) P(1) = D(1) XOR C(2) XOR B(3) XOR A(0) P(0) = D(0) XOR C(1) XOR B(2) XOR A(3) wobei die "P-Terme" die rekursiven Terme (DIP0:3) mit einer 4Bit-Ausgabe sind, und "A", "B", "C" und "D" variable Terme für eine 16Bit-Eingabe sind; e) die Fehlererfassungseinheit einen Zwischenterm berechnet, um eine Rückkopplungsschleife zu bestimmen, welche zum Bestimmen eines nächsten Paritätsbits verwendet wird; f) den Zwischenterm zum Bestimmen der rekursiven Terme verwendet, die in die Rückkopplungsschleife eingegeben werden, um das nächste Paritätsbit zu berechnen; g) ein früheres Paritätsbit als Rückkopplungsschleife zum Bestimmen eines nächsten Zwischenterm-Paritätsbits verwendet; dadurch gekennzeichnet, dass h) die Fehlererfassungseinheit so konfiguriert ist, dass sie eine Bitmap (730) mit mindestens zwei Datenfelder erzeugt, wobei die Bitmap so konfiguriert ist, dass sie einen Ort in dem Datenstrom für die Überprüfung auf das Paritätsbit (r15:0) angibt, und i) wobei die Bitmap (730) eine Maske aufweist, die so konfiguriert ist, dass eine Klassifizierung einer gegenwärtigen Eingabe des Datenstroms und eine frühere Eingabe des Datenstroms (200) erfasst wird, und Bestimmen des nächsten Zwischenterm-Paritätsbits anhand der Bitmap auf der Grundlage der Klassifizierung der gegenwärtigen Eingabe und einer früheren Eingabe.
  4. Logikschaltung nach Anspruch 3, wobei die Fehlererfassungseinheit so konfiguriert ist, dass sie das frühere Paritätsbit und die gegenwärtige Eingabe zum Bestimmen des nächsten Zwischenterm Paritätsbits auf der Grundlage einer ersten Datenklassifizierung und einer zweiten Datenklassifizierung verwendet.
DE60301420T 2002-03-15 2003-03-17 Prüfer für verteilte 4-bits diagonal verschachtelte Parität (DIP4) Expired - Lifetime DE60301420T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US36405102P 2002-03-15 2002-03-15
US364051P 2002-03-15
US234165 2002-09-05
US10/234,165 US7058881B2 (en) 2002-03-15 2002-09-05 Distributed 4-bits diagonal interleaved parity (DIP4) checker

Publications (2)

Publication Number Publication Date
DE60301420D1 DE60301420D1 (de) 2005-10-06
DE60301420T2 true DE60301420T2 (de) 2006-06-29

Family

ID=27767492

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60301420T Expired - Lifetime DE60301420T2 (de) 2002-03-15 2003-03-17 Prüfer für verteilte 4-bits diagonal verschachtelte Parität (DIP4)

Country Status (3)

Country Link
US (1) US7058881B2 (de)
EP (1) EP1345122B1 (de)
DE (1) DE60301420T2 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954466B1 (en) * 2002-03-05 2005-10-11 Modelware, Inc. Link-layer receiver
US7191388B1 (en) 2004-03-01 2007-03-13 Lattice Semiconductor Corporation Fast diagonal interleaved parity (DIP) calculator
AU2005237615B2 (en) * 2004-04-28 2009-08-27 Electrolux Home Products, Inc. Wireless appliance communication with detection and capture algorithm
US7533286B2 (en) * 2005-06-29 2009-05-12 Intel Corporation Regulating application of clock to control current rush (DI/DT)
KR100833604B1 (ko) 2007-01-09 2008-05-30 삼성전자주식회사 패리티 에러 검출 회로
US9559882B2 (en) * 2014-04-01 2017-01-31 Apple Inc. Apparatus and methods for flexible provision of control data in large data structures

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367544A (en) * 1989-05-04 1994-11-22 Northern Telecom Limited Data stream frame synchronisation
US5479416A (en) * 1993-09-30 1995-12-26 Micron Technology, Inc. Apparatus and method for error detection and correction in radio frequency identification device
US5771249A (en) * 1994-09-02 1998-06-23 Toyo Communication Equipment Co., Ltd. ATM cell synchronous system
US5923653A (en) * 1995-04-21 1999-07-13 Tektronix, Inc. SONET/SDH receiver processor
US5691996A (en) * 1995-12-11 1997-11-25 International Business Machines Corporation Memory implemented error detection and correction code with address parity bits
US5636208A (en) * 1996-04-12 1997-06-03 Bell Communications Research, Inc. Technique for jointly performing bit synchronization and error detection in a TDM/TDMA system
JP3671595B2 (ja) * 1997-04-01 2005-07-13 株式会社日立製作所 複合計算機システムおよび複合i/oシステム
US6247103B1 (en) * 1998-01-06 2001-06-12 International Business Machines Corporation Host storage management control of outboard data movement using push-pull operations
US6173374B1 (en) * 1998-02-11 2001-01-09 Lsi Logic Corporation System and method for peer-to-peer accelerated I/O shipping between host bus adapters in clustered computer network
US6697367B1 (en) * 2000-06-12 2004-02-24 Emc Corporation Multihop system calls

Also Published As

Publication number Publication date
US7058881B2 (en) 2006-06-06
EP1345122A2 (de) 2003-09-17
EP1345122B1 (de) 2005-08-31
US20030182613A1 (en) 2003-09-25
DE60301420D1 (de) 2005-10-06
EP1345122A3 (de) 2004-03-10

Similar Documents

Publication Publication Date Title
DE69733767T2 (de) Sekundäre kanäle unter verwendung von kodeverletzungen
DE69731074T2 (de) Anordnung und Verfahren zur Übertragung von Daten über eine Vielzahl von Kanälen
DE69324050T2 (de) Modifizierung eines CRC Prüffeldes bei der Weiterleitung von Datenpaketen
DE69936697T2 (de) Verkettung von Containern in einem SDH-Netzwerk
DE69128633T2 (de) Sequenzsynchronisation
DE60107800T2 (de) Vorrichtung und verfahren zur tfci-kodierung und dekodierung in einem mobilen kommunikationssystem
DE3586708T2 (de) Verfahren zur fehlererkennung und -korrektur durch mehrheitsentscheidung.
DE69320321T2 (de) Verfahren und Gerät zum Nachprüfen von CRC-Koden, wobei CRC Teilkode kombiniert werden
DE69529125T2 (de) Verfahren zur Verschachtelung und Entschachtelung von SDH Rahmen und entsprechende Vorrichtung
DE2942825A1 (de) Verfahren und vorrichtung zur verarbeitung sequentiell uebertragender digitaler informationsworte
DE112019007412T5 (de) Verfahren zum bereitstellen von pfadsignal-overhead im 64b/66b-zeichenstrom eines itu-t-metro-transportnetzwerks
DE19736434A1 (de) Verfahren und Vorrichtungen zur Erkennung der Position von in einem seriellen Datenempfangsstrom liegenden Datenpaketen
DE4409644C2 (de) Tandemverbindungs-Wartungssystem
DE10230942A1 (de) Vorrichtung und Verfahren für die Symbolabbildung von TFCI-Bits für einen Hard Split-Modus in einem CDMA-Mobilkommunikationssystem
DE2320422A1 (de) Verfahren zur fehlererkennung
DE69728255T2 (de) Datenübertragungsverfahren und vorrichtung zur kodierung eines signals
DE69324208T2 (de) Geteiltkanaldatenübertragung
DE69217931T2 (de) Fehlererkennungs- und Fehlerkorrektureinrichtung
DE60001878T2 (de) System zur Trelliscodierten Modulation
DE60301420T2 (de) Prüfer für verteilte 4-bits diagonal verschachtelte Parität (DIP4)
DE602005003728T2 (de) Korrektur von durch Scrambling bedingter Fehlerfortpflanzung mit anschliessender Vorwärtsfehlerkorrektur
WO2004107653A1 (de) Verfahren und testgerät zum ermitteln einer fehlerrate
WO2002001831A1 (de) Verfahren und anordnung zur gesicherten paketorientierten informationsübermittlung
DE60306709T2 (de) Vorrichtung und Verfahren zur Erzeugung von zyklischen Codes für die Fehlerkorrektur in digitaler Kommunikation
DE19607710A1 (de) Verfahren und Vorrichtung zur Korrektur von Fehlern unter Verwendung mehrfacher Schätzungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M