DE69432841T2 - Verfahren und Vorrichtung für digitale Datenübertragung in einem Nachrichtennetz - Google Patents

Verfahren und Vorrichtung für digitale Datenübertragung in einem Nachrichtennetz Download PDF

Info

Publication number
DE69432841T2
DE69432841T2 DE69432841T DE69432841T DE69432841T2 DE 69432841 T2 DE69432841 T2 DE 69432841T2 DE 69432841 T DE69432841 T DE 69432841T DE 69432841 T DE69432841 T DE 69432841T DE 69432841 T2 DE69432841 T2 DE 69432841T2
Authority
DE
Germany
Prior art keywords
data
signal
delimiter
node
binary 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 - Lifetime
Application number
DE69432841T
Other languages
English (en)
Other versions
DE69432841D1 (de
Inventor
Jonathan R. Engdahl
Michael A. Bush
Lawrence W. Esker
Mark A. Lucak
David J. Gee
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.)
Allen Bradley Co LLC
Original Assignee
Allen Bradley Co LLC
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 Allen Bradley Co LLC filed Critical Allen Bradley Co LLC
Application granted granted Critical
Publication of DE69432841D1 publication Critical patent/DE69432841D1/de
Publication of DE69432841T2 publication Critical patent/DE69432841T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • H04L12/4035Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/417Bus networks with decentralised control with deterministic access, e.g. token passing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4904Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using self-synchronising codes, e.g. split-phase codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Small-Scale Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

  • Hintergrund der Erfindung
  • Die vorliegende Erfindung betrifft Kommunikationsnetze und insbesondere die Kommunikation digitaler Daten über serielle Kommunikationsverbindungen in einer Industrieumgebung.
  • Fabriken werden mit Steuerungen automatisiert, die so programmiert oder konfiguriert sind, dass sie bestimmte Maschinen oder Geräte betreiben. Diese Steuerungen können Universalsteuerungen sein, wie z. B. Computer, numerische Steuerungen oder programmierbare Steuerungen; oder sie können Spezialsteuerungen sein, wie z. B. Robotersteuerungen, Schweißsteuerungen oder Motorantriebe.
  • Jede Steuerung ist mit den verschiedenen Sensorgeräten und Betriebsgeräten der Anlage verbunden, die sie steuert, und automatisiert den Betrieb der Anlage, indem sie Daten von den Sensorgeräten eingibt und die entsprechenden Daten an die Betriebsgeräte ausgibt. Dieser Austausch von Ein- und Ausgabe-("E/A")-Daten zwischen der Steuerung und den Geräten an der gesteuerten Anlage erfolgt häufig durch direkte Verbindungen zwischen Ports an der Steuerung und jedem separaten E/A-Gerät. Wenn E/A-Geräte jedoch physikalisch über einen großen Bereich verteilt sind, dann kann die Verdrahtung in Verbindung mit solchen separaten Verbindungen zu teuer werden.
  • Eine Möglichkeit, die Verdrahtung in solchen Anwendungen zu reduzieren, besteht darin, E/A-Daten durch eine serielle Kommunikationsverbindung zu multiplexieren. Solche seriellen E/A-Verbindungen werden gewöhnlich eingesetzt, um die zentral positionierte Steuerung mit separaten ortsfernen Gestellen oder Baugruppenträgern zu verbinden, die sich in der Nähe der E/A-Geräte befinden. Solche "Fern-E/A-Systeme" sind beispielsweise in den US-Patenten Nr. 4,404,651; 4,413,319; 4,809,217 und 4,750,150 offenbart, wo die Steuerung eine kontinuierliche Hochgeschwindigkeitsabtastung der E/A-Daten in Verbindung mit jedem Ferngestell durchführt, und diese Daten werden über die serielle Kommunikationsverbindung übertragen. Es ist verständlich, dass solche seriellen E/A-Links rechtzeitig und zuverlässig die E/A-Daten übertragen müssen, da diese Daten Betriebsgeräte an einer in Echtzeit arbeitenden Maschine direkt steuern.
  • Eine einzige Steuerung kann zwar eine Maschine oder eine kleine Gruppe von Maschinen automatisieren, aber um ein ganzes Werk wirklich zu automatisieren, müssen solche "Automationsinseln" miteinander verbunden werden. Diese letzteren Verbindungen werden durch industrielle LRNs bereitgestellt, die es jeder Steuerung erlauben, Meldungen über serielle Datenverbindungen zu anderen ähnlichen. Steuerungen im Werk zusenden. Es gibt eine große Zahl solcher "Peer-to-Peer" Kommunikationsnetze, die in der Technik bekannt sind, von denen einige von Normenausschüssen wie IEEE 802.3, IEEE 802.4, IEEE 802.5 und MAP entwickelt werden; andere werden von Herstellern der Steuerung wie z. B. diejenigen entwickelt, die in den US-Patenten Nr. 4,319,338, 4,567,323 und 4,747,100 offenbart sind. Es ist verständlich, dass die Art der Peer-to-Peer-Daten, die über LANs übertragen werden, die Steuerungen miteinander verbinden, sich von E/A-Daten unterscheiden, die über serielle E/A-Verbindungen übertragen werden. Während einige der Daten möglicherweise den Zustand der gesteuerten Maschinen anzeigen, besteht ein großer Teil des Datenverkehrs aus großen Datenblöcken. So kann beispielsweise eine "Zellensteuerung" Steuerprogramme für programmierbare Logiksteuerungen oder Teilprogramme für numerische Steuerungen herunterladen, und programmierbare Logiksteuerungen können Blöcke von statistischen Daten über Produktion und Qualitätskontrolle heraufladen. Während E/A-Daten gewöhnlich zeitkritisch sind und innerhalb von Millisekunden des Events, das sie erzeugt hat, zuverlässig übertragen werden müssen, ist das Herauf- und Herunterladen von großen Datenblöcken gewöhnlich nicht so zeitkritisch.
  • Serielle Fern-E/A-Kommunikationsnetze und Peer-to-Peer-Netze koexistieren zwar schon seit vielen Jahren in Werken miteinander, aber eine Reihe von Faktoren lässt die Unterschiede zwischen ihnen verschwimmen und verlangen, dass ein einzelnes Netz mit den Attributen von beiden erstellt wird. Einer dieser Faktoren ist technisch – die zunehmende Verwendung kleinerer Steuerungen in einer so genannten "verteilten Verarbeitung". Zum Beispiel, anstatt einer einzigen großen Steuerung zu verwenden, die mit einem Satz von Fern-E/A-Gestellen verbunden ist, ist eine alternative Architektur ein Satz von miteinander verbundenen kleinen Steuerungen, die anstelle jedes einzelnen Fern-E/A-Gestells im Werk verteilt sind. Die resultierende Kommunikationsverbindung, die diese kleinen, verteilten Steuerungen verbindet, muss sowohl zeitkritische E/A-Daten als auch Peer-to-Peer-Meldungen übertragen. Ein weiterer Faktor ist der Wunsch von Werksbesitzern, die Zahl der verwendeten verschiedenen Kommunikationsnetze zu verringern, um Personalausbildung und Wartungsbedarf zu vereinfachen und um das Ersatzteilinventar zu reduzieren.
  • Das zum Übertragen der Daten auf einer seriellen Kommunikationsverbindung verwendete Medium richtet sich hauptsächlich nach Kosten und der Geschwindigkeit, mit der die Daten übertragen werden müssen. Das kostenärmste Medium, das in Werksanlagen eingesetzt wird, sind verdrillte Paare mit einer sehr niedrigen Bandbreite, und das teuerste Medium ist faseroptisches Kabel, das eine enorme Bandbreite bereitstellt. Das üblichste im Werk eingesetzte Medium ist jedoch ein abgeschirmtes Kabel wie z. B. Koaxialkabel, das einen guten Kosten-Leistungs-Kompromiss bietet.
  • Das gewählte Medium kann die Steuerungen und Ferngestelle auf unterschiedliche Weisen verbinden, die gewöhnlich als "Netzwerktopologie" bezeichnet werden. Man findet im Werk zwar so genannte "Stern"- und "Ring"-Topologien, aber die "Bus"-Topologie ist bei weitem am meisten verbreitet. Bei der Bustopologie verläuft ein Kabel um das Werk von einer Station zur nächsten, und eine kurze Anschlussleitung wird an diesen Bus angeschlossen und mit der Steuerung an dieser Station verbunden. Die Bustopologie ist am wirksamsten und lässt sich am leichtesten installieren.
  • Der Zugang zum Kommunikationsnetz wird durch das am Netz verwendete "Medienzugangssteuer"-(Media Access Control – MAC)-Protokoll bestimmt. In frühen LANs, und in vielen Fern-E/A-Netzen, wurde der Zugang zum Medium durch eine einzelne "Master"-Station gesteuert. So dient beispielsweise in dem in den oben angeführten Patenten beschriebenen Fern-E/A-Netz die programmierbare Steuerung als Master des Netzwerkes und teilt den Fern-E/A-Gestellen mit, wann sie auf das Medium zugreifen können. Dieses Einzel-Master-Protokoll ist für Fern-E/A-Netze zufriedenstellend, wo der Verlust des programmierbaren Controller-Masters zu einem Abschalten des gesamten Netzes führt, ist aber in einem Peer-to-Peer-Kommunikationsnetz nicht zufriedenstellend. In einem Peer-to-Peer-Netz müssen die Kommunikationen zwischen den Steuerungen auf dem Netz selbst dann fortlaufen, wenn eine Steuerung abgetrennt ist oder nicht funktioniert. In der Tat muss die Tatsache, dass eine Steuerung nicht mehr funktioniert, an sich über das Netz zu anderen Steuerungen im Werk kommuniziert werden, damit die entsprechenden Maßnahmen ergriffen werden können.
  • Es gibt eine Reihe von Medienzugangssteuerprotokollen, die in Werken häufig eingesetzt werden, die sich nicht auf einen einzigen Master verlassen. Dazu gehören physikalische Ring-Token-Passing-Netze wie die, die in der Norm IEEE 802.5 definiert sind, die logischen Ring-Token-Passing-Netze, die in der Norm IEEE 802.5 definiert sind, und Trägererfassungs-Mehrfachzugriffsnetze mit Kollisionserkennung (CSMA/CD) wie die, die in der Norm IEEE 802.3 definiert sind. Diese Protokolle sind zwar für Peer-to-Peer-Kommunikationen geeignet, wo eine Meldung oder ein Datenblock mit jedem Zugriff auf das Medium gesendet wird, aber sie eignen sich nicht zum Übertragen großer Mengen von Echtzeit-E/A-Daten.
  • Ein weiteres Medienzugangssteuerprotokoll, das in Werksanwendungen eingesetzt werden kann, wird als dynamisches Zeitschlitzzuweisungsnetz (Dynamic Time Slot Allocation – DTSA) oder dynamisches Zeitmehrfachzugriffsnetz (Dynamic Time Division Multiple Access – DTDMA) bezeichnet. Ein DTDMA-Netz, das zum Übertragen von Echtzeit-E/A-Daten geeignet ist, ist beispielsweise im US-Patent Nr. 4,897,834 offenbart, und ein Zeitmultiplexiernetz (TDM), das für die Übertragung von Echtzeit-E/A-Daten und Meldungsdaten geeignet ist, ist im US-Patent Nr. 4,663,704 offenbart.
  • Viele dieser Protokolle erfordern es, dass Informationen in gut definierten Blöcken, die Meldungsframes genannt werden, über das Netz gesendet werden. Das Format des Meldungsframe ist so ausgelegt, dass eine Station einen Meldungsframe von einem anderen unterscheiden kann. Im Allgemeinen werden Meldungsframes in Sektionen unterteilt, die Präambel, Anfangsbegrenzer, Datenfeld und Endebegrenzer genannt werden. Die Präambel besteht aus einem Bitmuster, das es zulässt, dass jede Station ein Taktsignal erhält und auf die Datenbitsequenz synchronisiert wird, wie in der EP-A2-0 381,387 beschrieben ist. Der Anfangsbegrenzer gibt eine Timing-Referenz, die die Stationen zum Suchen des Anfangs des Datenfelds benutzen. Dies ist wichtig, damit jedes Datenbit ordnungsgemäß erkannt werden kann. Der Endebegrenzer ist ein Bitmuster, das anzeigt, wenn ein Meldungsframe endet. Die beiden Begrenzer-Bitmuster müssen eindeutig sein, damit andere über das Netz gesendete Bitsequenzen eine Station nicht dazu verleiten zu glauben, dass ein Begrenzer gefunden wurde.
  • Zusammenfassung der Erfindung
  • Ein Kommunikationsnetz führt in Meldungsframes gesendete Daten über ein Übertragungsmedium zwischen Stationen, die mit dem Medium verbunden sind. Jede Station hat eine Knotenschaltung, deren Aufgabe es ist, die Daten zwischen dem Übertragungsmedium und einem assoziierten elektrischen Gerät zu koppeln. Die Knotenschaltung beinhaltet eine erste Komponente, die eine Meldungsframe-Präambel erkennt, die von einem Muster von abwechselnden Binärsignalpegeln gebildet wird. Die Präambel ermöglicht die Synchronisation einer Signaldecodierung auf die Daten im Meldungsframe.
  • Eine zweite Komponente erkennt einen Anfangsbegrenzer des Meldungsframe. Der Anfangsbegrenzer hat ein definiertes Muster aus einer Mehrzahl von Binärsignalpegeln, die die folgenden Kriterien erfüllen:
    • (1) der Anfangsbegrenzer beginnt mit einem Binärsignalpegel, der einem letzten Binärsignalpegel der Präambel entgegengesetzt ist,
    • (2) die maximale Anzahl konsekutiver identischer Binärsignalpegel ist zwei,
    • (3) die digitale Summenvarianz fällt in einen Bereich von –1 bis 2,
    • (4) unter der Voraussetzung einer ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in das Anfangsbegrenzermuster wenigstens vier Binärsignalpegel fehlerhaft sein,
    • (5) unter der Voraussetzung einer nicht ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in das Anfangsbegrenzermuster wenigstens zwei Binärsignalpegel fehlerhaft sein,
    • (6) der Anfangsbegrenzer endet mit zwei Binärsignalpegeln, die unterschiedliche Binärsignalpegel sind.
  • In der bevorzugten Ausgestaltung hat der Anfangsbegrenzer das binäre Signalpegelmuster "1101001100100110" (in der Reihenfolge von links nach rechts wie übertragen).
  • Ein Datendecoder reagiert auf die zweite Komponente zum Erkennen eines gültigen Anfangsbegrenzers durch Codieren von
  • Daten in dem Meldungsframe, die über einen Signalpfad zu dem assoziierten elektrischen Gerät gesendet werden.
  • Es ist eine Aufgabe der Erfindung, ein Kommunikationssystem bereitzustellen, bei dem Meldungsframes von Daten zuverlässig zwischen Stationen auf dem Netz ausgetauscht werden können.
  • Es ist eine weitere Aufgabe, ein eindeutiges Anfangsbegrenzermuster bereitzustellen, das den Beginn von Daten in dem Meldungsframe anzeigt, und einen Mechanismus, um den Anfangsbegrenzer zuverlässig zu identifizieren. Dabei muss der für den Gebrauch gewählte Anfangsbegrenzer einen definierten Satz von Kriterien erfüllen, um die Wahrscheinlichkeit zu optimieren, dass das Muster erkannt wird, während die Wahrscheinlichkeit minimiert wird, dass es zu einem Aliasing gültiger Zufallsdaten in das Anfangsbegrenzermuster kommt. Es ist auch wichtig, dass die elektrische Wirkung des Anfangsbegrenzers auf das Medium und den Empfangsschaltkomplex die Fähigkeit des Empfängers nicht beeinflusst, den Rest des Meldungsframe zuverlässig zu decodieren.
  • Es ist eine. weitere Aufgabe der vorliegenden Erfindung, einen eindeutigen Endebegrenzer bereitzustellen, der die Meldungsframes auf eine Weise beendet, die zuverlässig erkannt werden kann. Der Endebegrenzer muss also einen definierten Satz von Kriterien erfüllen, um die Wahrscheinlichkeit zu optimieren, dass das Muster erkannt wird, während die Wahrscheinlichkeit minimiert wird, dass es zu einem Aliasing der gültigen Zufallsdaten zu dem Endebegrenzermuster kommt.
  • Kurze Beschreibung der Zeichnungen
  • A. Kommunikationssystem
  • 1 ist eine Darstellung eines Kommunikationsnetzes gemäß der vorliegenden Erfindung;
  • 2A und 2B illustrieren die Unterteilungen eines von einer Station gesendeten Meldungsframe;
  • 3 illustriert die Sequenz, in der Meldungen über das Kommunikationsnetz ausgetauscht werden;
  • 4A beschreibt die Reihenfolge, in der verschiedene Stationen auf dem Netz Meldungen während der geplanten Phase jedes periodischen Intervalls senden; und
  • 4B beschreibt die Reihenfolge, in der verschiedene Stationen auf dem Netz Meldungen während der ungeplanten Phase jedes periodischen Intervalls senden.
  • B. Kommunikationssteuerung
  • 5A zeigt, wie eine beispielhafte Station durch eine S-Link Medienzugangssteuerung (Media Access Controller – SMAC) mit dem Netz verbunden ist;
  • 5B ist eine schematische Blockdiagrammdarstellung des S-Link Media Access Controllers von 5A; und
  • 6 ist ein Wellenformdiagramm von Signalen an mehreren Stellen in dem SMAC.
  • 1. SMAC-Modem
  • 7 ist eine schematische Blockdiagrammdarstellung der Modemschaltung im SMAC;
  • 8 ist eine schematische Blockdiagrammdarstellung des Begrenzerdetektors indem Modem; und
  • 9 ist ein Zustandsmaschinendiagramm für den Begrenzerdetektor.
  • 2. SMAC-Zugangssteuerschaltung
  • 10 ist ein schematisches Blockdiagramm der Zugangssteuerschaltung im SMAC;
  • 11 ist eine schematische Darstellung des Sperrzeitmonitors in der Zugangssteuerschaltung;
  • 12 ist eine schematische Blockdiagrammdarstellung des geplanten Phasenregisters in der Zugangssteuerschaltung; und
  • 13 ist eine schematische Darstellung des Periodisches-Intervall-Timers in der Zugangssteuerschaltung.
  • 3. Sende- und Empfangsprozessoren
  • 14 ist eine schematische Diagrammdarstellung der Sendeverarbeitungsschaltung im SMAC;
  • 15 ist eine schematische Blockdiagrammdarstellung der Empfangsverarbeitungsschaltung im SMRC von 5B; und
  • 16 ist ein schematisches Blockdiagramm der Daten- und Steuer-Pipeline in der Empfangsverarbeitungsschaltung.
  • 4. Host-Schnittstelle
  • 17 ist ein schematisches Blockdiagramm der Host-Schnittstelle im SMAC.
  • Beschreibung einer bevorzugten Ausgestaltung
  • Zunächst mit Bezugnahme auf 1, ein industrielles Steuerkommunikationsnetz 10 umfasst ein Medium, mit dem N Stationen 1216 zum Senden und Empfangen von Daten verbunden sind. Das Netz 10 kann ein beliebiges geeignetes Medium wie z. B. Koaxial- oder Faseroptikabel verwenden und kann auf einer beliebigen geeigneten Topologie wie z. B. Bus-, Stern- oder Ringtopologie basieren. In dem hier beschriebenen Ausgestaltungsbeispiel erfolgen die Verbindungen des Netzes 10 über ein Koaxialkabel 11, das in einer Bustopologie geschaltet ist. Wenn das Kabel relativ lang ist, dann müssen möglicherweise ein oder mehrere Repeater 17 verwendet werden, damit der Signalpegel an allen Stationen ausreicht. Das illustrierte Netz 10 hat mehrere Ein-/Ausgabe-(E/A)-Schnittstellenschaltungen 1516 und X Prozessoren 1214, die z. B. programmierbare Steuerungen, Zellensteuerungen oder Minicomputer sein können. Der Prozessor oder die Schnittstellenschaltung an jeder Netzstation 1216 ist über einen Knoten 20 mit einer eindeutigen Adresse, die zum Identifizieren von zu und von der assoziierten Station gesendeten Meldungen verwendet wird, mit dem Koaxialkabel 11 verbunden. Ein Programmierterminal 18 kann über einen beliebigen Knoten 20 angeschlossen werden, um direkt über das Netz zu kommunizieren, aber dem Terminal wird eine separate Netzwerkadresse von den Knoten zugewiesen. Der Prozessor, die Schnittstellenschaltungen und das Programmierterminal, die Meldungen vom Netz durch einen Knoten empfangen, werden als Verbrauchergeräte bezeichnet.
  • Das Netz 10 wird hierin als CTDMA-(Concurrent Time Division Multiple Access)-Netz bezeichnet, da sowohl von den Prozessoren 1214 beim Betreiben der Maschinen verwendete Ein-/Ausgabedaten sowie Steuerbefehle, Systemmanagement- und andere Meldungen verzahnt über dasselbe Medium 11 ausgetauscht werden, wobei jedem Knoten 20 zeitmultiplexiert Zugang zum Senden von Meldungen gewährt wird. Das CTDMA-Netz 10 verwendet ein Protokoll des Token-Bus-Typs, in dem ein "impliziter Token" in einer vorbeschriebenen Reihenfolge von Knoten zu Knoten gereicht wird, und der Knoten 20, der den impliziten Token gerade hat, seine Meldungen senden kann. Das im implizite Token wird jedoch nicht physikalisch zwischen den Knoten herumgereicht, sondern jede Station überwacht die Netzwerkaktivität und hat ein Register, in dem sie verfolgt, welcher Knoten gerade den Token hat.
  • Netzkommunikationsprotokoll
  • Gemäß 2A werden alle Meldungen unabhängig vom Typ der gesendeten Daten als Media Access Control (MAC) Frame 21 mit einer maximalen Länge von 517 Byte formatiert. Jedes Mal, wenn einer Station Zugang zum Senden von Informationen über das Netz gewährt wird, kann sie einen MAC-Frame senden. Die bevorzugte Netzdatenmodulationstechnik ist herkömmliche Manchester-Codierung, in der jedes "Bit" von Manchestercodierten Informationen zwei physikalische Symbole oder Halbbits umfasst. Die Manchester-Halbbits werden hierin gemäß der "Physical Symbol" Terminologie "Phy-Symbole" genannt. So wird z. B. ein "0" Datenbit mit einer Phy-Symbolsequenz "01" codiert, während ein "1" Datenbit mit einer Phy-Symbolsequenz "10" codiert wird.
  • Der MAC-Frame 21 beginnt mit einer 32-Phy-Symbol-Präambel 22 und einem 16-Phy-Symbol-Anfangsbegrenzer 23. Die Phy-Symbole in der Präambel wechseln zwischen binären Einsen und Nullen ab und bestehen aus dem Muster 101010...1010.
  • Ein eindeutiger Anfangsbegrenzer 23 dient zum Erstellen eines präzisen Synchronisationspunktes in den eingehenden Daten, damit der Empfänger jedes Phy-Symbol genau erkennt und die Grenzen zwischen Paaren von aufeinander folgenden Phy-Symbolen ermittelt, die ein Datenbit codieren. Das für den Anfangsbegrenzer bevorzugte eindeutige Phy-Symbol-Muster ist hexadezimal "D326" oder ein binäres Muster von "1101001100100110" (in der Reihenfolge von links nach rechts wie übertragen). Zusätzlich zum Anfangsbegrenzer endet der MAC-Frame 21 mit einem Endebegrenzer, der das Ende des Frame designiert. Die bevorzugte Endebegrenzer-Sequenz von Phy-Symbolen ist hexadezimal "96CC" oder ein Binärmuster von "1001011011001100" (in der Reihenfolge von links nach rechts wie übertragen).
  • Anfangs- und Endebegrenzer 23 und 28 enthalten Muster von ungültigen Manchester-codierten Daten, so dass Daten, die im Meldungsframe gesendet werden, nicht fälschlicherweise als eines der Begrenzermuster interpretiert werden können. Ferner mussten die beiden Begrenzer mehrere weitere Kriterien erfüllen, damit sie mit höherer Wahrscheinlichkeit von den Netzwerkknoten erkannt werden und um die Gefahr eines falschen Änderns oder Aliasing zulässiger Daten zu einem der Begrenzermuster zu verringern. Unter der Annahme, dass Stille auf dem Netz dasselbe ist wie ein "0" Phy-Symbol, lauten die Kriterien wie folgt:
    • 1. Der Signalpegel des ersten Anfangsbegrenzer-Phy-Symbols muss dem des letzten Symbols der Präambel entgegengesetzt sein, um eine Demarkation des Begrenzers zu bilden.
    • 2. Das letzte Phy-Symbol des Endebegrenzers muss "0" oder äquivalent mit dem Zustand sein, den der Empfänger als Stille interpretiert, um das Medium in einem stabilen Zustand zu lassen.
    • 3. Die maximale Anzahl an aufeinander folgenden identischen Phy-Symbolen ist zwei. Dies wird auch als "Lauflänge" von zwei bezeichnet.
    • 4. Die digitale Summenvarianz des Anfangsbegrenzers muss in den Bereich –1 bis 2 fallen, wie erläutert wird.
    • 5. Unter der Voraussetzung einer ordnungsgemäßen Taktausrichtung müssen für ein Aliasing von 16 gültigen Zufallsdatenbits in ein Begrenzermuster wenigstens vier Phy-Symbole fehlerhaft sein.
    • 6. Unter der Voraussetzung einer nicht ordnungsgemäßen Taktausrichtung müssen für ein Aliasing von 16 gültigen Zufallsdatenbits in ein Begrenzermuster wenigstens zwei Phy-Symbole fehlerhaft sein.
    • 7. Die letzten zwei Phy-Symbole des Anfangsbegrenzers müssen unterschiedliche Signalpegel sein (d. h. gültige Manchester-Codierung).
    • 8. Die ersten beiden Phy-Symbole des Endebegrenzers müssen unterschiedliche Signalpegel sein (d. h. gültige Manchester-Codierung).
  • Die Begründung hinter einigen der Kriterien bedarf einer näheren Erläuterung. Das dritte und das vierte Kriterium beziehen sich auf die physikalische Charakteristik des Netzwerkmediums, dass sich das Kabel 11 auflädt, wenn aufeinander folgende Phy-Symbole denselben Signalpegel (alle 0 oder alle 1) haben. So bleibt z. B. bei einer Reihe von aufeinander folgenden hohen Phy-Symbolen eine positive Ladung auf dem Netzwerkkabel 11. Eine solche Ladung kann dazu führen, dass eine Station ein nachfolgendes "0" Phy-Symbol, das durch einen tiefen Signalpegel repräsentiert wird, nicht umsetzen kann. Ein ähnlicher Effekt tritt in Bezug auf das Magnetfeld in einem Transformator auf, der den Knoten 20 mit dem Kabel 11 verbindet. Wenn "Einsen" im Phy-Symbol, d. h. hohe Signalpegel, überwiegen, wird das Netz von dem Spannungsbereich, den ein Empfänger. als "0" Phy-Symbol interpretiert, weg vorgespannt. Wenn dieser Vorspannungsversatz zu groß wird, dann kein ein "0" Phy-Symbol am Empfänger fälschlicherweise für ein "1" Phy-Symbol gehalten werden. Derselbe Effekt tritt in Bezug auf die Fähigkeit auf, ein "1" Phy-Symbol nach einer Reihe von aufeinander folgenden "0" Phy-Symbolen ordnungsgemäß zu erkennen.
  • Ein kurzfristiger Signalmittelwertbildungseffekt wird durch die "Lauflänge" angegeben, die die maximale Anzahl von aufeinander folgenden identischen Phy-Symbolen ist, die über das Medium übertragen werden können, bevor es zu potenziellen Signalfehlern kommt. So hat z. B. das Muster 01110 eine Lauflänge von drei. Relativ große Lauflängen erzeugen Jitter, bei dem die Vorderflanke eines "0" Phy-Symbols, das auf einen Strom von aufeinander folgenden "1" Symbolen folgt, zeitlich verschoben ist, so dass es zu einer potenziellen Fehlinterpretation der "0" als "1" Phy-Symbol kommt. Da dieser kurzfristige Signalmittelwertbildungseffekt zur Folge haben kann, dass Anfangs- und Endebegrenzer nicht mehr so gut erkannt werden können wie Daten, werden Phy-Symbol-Muster mit Lauflängen von mehr als zwei überall im MRC-Frame verhütet.
  • Ein langfristiger Signalmittelwertbildungseffekt wird durch die "digitale Summenvarianz" des Phy-Symbol-Musters angegeben. Der Sofortwert der Summe vom Anfang einer Gruppe von Symbolen bis zum Punkt von Interesse wird wie folgt ausgedrückt:
    Figure 00130001
    wobei x der auf Null basierte Versatz vom Anfang der Gruppe bis zum Punkt von Interesse und v der Wert (0 oder 1) eines Phy-Symbols ist. Selbst wenn keine lange Gruppe von aufeinander folgenden identischen Phy-Symbol-"Einsen" auftritt, dann kann selbst dann, wenn im Durchschnitt eine höhere Zahl von "1" als von "0" Phy-Symbolen über das Kabel gesendet wird, noch ein Vorspannungsversatz auftreten. Daher fallen, damit Anfangs- und Endebegrenzer garantiert optimal erkannt werden können, die Werte ihrer digitalen Summenvarianz in den Bereich –1 bis 2.
  • Wie erwähnt, beinhalten die Anfangs- und Endebegrenzer Phy-Symbol-Muster, die die Manchester-Code-Regeln verletzen, da Phy-Symbole in derselben Datenbitperiode identische Signalpegel haben. Daher müssen sich für ein Aliasing gültiger Daten in einen Begrenzer einige der Phy-Symbole der gültigen Daten ändern oder fehlerhaft sein, damit es zu einer Manchester-Code-Verletzung kommt. Je mehr Phy-Symbole sich ändern müssen, damit ein Begrenzermuster entsteht, desto geringer die Wahrscheinlichkeit, dass das Muster entsteht. Ein Begrenzermuster, bei dem sich wenigstens vier Phy-Symbole ändern müssen, bevor es zu einem Aliasing gültiger Manchester-Daten in ein Begrenzermuster kommt, bietet eine ausreichende Unwahrscheinlichkeit, dass es zu einem solchen Fehler kommt. Diese Charakteristik wird als eine Hamming-Datendistanz von vier bezeichnet. Es muss also wenigstens vier Manchester-Code-Verletzungen in den Anfangs- und Endebegrenzern geben.
  • Es ist jedoch möglich, dass ein Fehler im Anfangsbegrenzer verursacht, dass ein Knoten seinen. Empfängertakt nicht an einer Grenze zwischen Datenbits ausrichtet, sondern auf den Signalpegelübergang, der. zwischen Phy-Symbolen desselben Datenbits entsteht. In diesem Fall müssen sich wenigstens zwei Phy-Symbole gültiger Manchester-DAten ändern, damit eines der Begrenzermuster entsteht. Somit muss eine Hamming-Distanz von zwei von verschobenen Phy-Symbolen vorliegen. Eine Phy-Symbol-Änderung ist in diesem Fall akzeptabel, da der Anfangsbegrenzer ebenfalls fehlerhaft werden muss, damit die Taktfehlausrichtung entstehen kann, und die Möglichkeit, dass beide Fehler zusammen auftreten, ist relativ unwahrscheinlich.
  • Ein Begrenzer kann durch 16 Phy-Symbole gebildet werden, was 65.000 mögliche Symbolmuster ergibt. Es wurde gefunden, dass nur das eine Anfangsbegrenzermuster und das eine Endebegrenzermuster gemäß obigen Angaben diesen Satz von Kriterien erfüllen.
  • Hinter dem Anfangsbegrenzer 23 im MAC-Frame 21 kommt die Netzwerkadresse 24 des Quellknotens der Meldung. Der MAC-Frame 21 hat auch ein Datenfeld 25, das eine Länge von bis zu 510 Byte hat und das in Grundmeldungseinheiten unterteilt ist, die als LPakete 26, d. h. "Link-Layer-Pakete", bezeichnet werden. Jedes LPaket 26 repräsentiert eine separate Meldung oder Gruppe von Daten und beinhaltet ein eindeutiges Kennetikett, anhand dessen jeder Knoten 20 ermittelt, ob er die Information in diesem LPaket benötigt. Wenn ein bestimmter Knoten mehrere LPakete zu senden hat, dann werden die LPakete in eine Warteschlange eingereiht und in der eingereihten Folge übertragen. Wenn mehr LPakete 26 in der Warteschlange sind, als in einen MRC-Frame passen, dann müssen die übrigen warten, bis dem Knoten wieder Zugang zum Netz gewährt wird.
  • Jedes LPaket 26 ist in eine Reihe von Feldern wie in 2B gezeigt unterteilt. Das erste Feld 31 ist ein Byte, das die Größe oder Länge des LPakets 26 angibt. Das zweite Feld 32 enthält acht Steuerbits, wie in der Vergrößerung dieses Feldes in der Zeichnung angedeutet ist. Das erste Steuerbit 38 bezeichnet eine von zwei Formen einer Meldungsadressierung, fest oder allgemein, die im Etikettfeld 34 des LPakets verwendet werden. Die feste Form beinhaltet einen Funktionscode, darauf folgt eine Zieladresse. Wie beschrieben wird, wird eine feste Modusmeldung in jedem Knoten 20 von einer Schaltung inspiziert, die als "fixed Screener" bezeichnet wird, um zu ermitteln, ob der Knoten an diesem LPaket interessiert ist. So wird der feste Modus z. B. zum Rundsenden von Netzmanagementmeldungen zu allen Knoten verwendet. Die Universalform der Adressierung ermöglicht es dem Benutzer, die Bedeutung des Etiketts gemäß einem Satz von Regeln zu definieren, die für das jeweilige Netz aufgestellt wurden. So kann beispielsweise eine eindeutige Etikettnummer einen bestimmten Ursprungstyp von E/A-Daten bezeichnen, die für mehrere Knoten von Interesse sein können. Ein "Universal-Screener" in jedem Knoten inspiziert diese letztere Etikettform, um zu ermitteln, ob das LPaket für den Knoten von Interesse ist, wie beschrieben wird.
  • Das dritte und vierte Steuerbit 40 und 42 werden als "Etikettfüller" und "Datenfüller" bezeichnet und geben die Ausrichtung der Etikett- und Datenfelder 34 und 36 im LPaket an. Wie beschrieben wird, haben die Etikett- und Datenfelder veränderliche Längen und beginnen möglicherweise mit einer 16-Bit-Wortgrenze im LPaket 26 oder auch nicht. Die Etikettfüller- und Daten-füller-Steuerbits 40 und 42 geben diese Ausrichtung an und werden von einem Empfängerknoten zum Trennen der LPaket-Felder verwendet. Das dritte und vierte Steuerbit 40 und 42 definieren die Anzahl der Füllbytes, die der Empfängerknoten in das LPaketsetzt, um die Etikett- und Datenfelder 34 und 36 auf Datenwortgrenzen des MAC-Frame 21 auszurichten. Diese Neuausrichtung erleichtert die Erkennung der Etikett- und Datenfelder 34 und 36 durch Screener-Schaltungen im Empfängerknoten 20, wie nachfolgend beschrieben wird. Das nächste Steuerbit 44 gibt an, ob die in dem LPaket enthaltenen Daten in Bytegröße oder in 16-Bit-Wortgröße vorliegen. Das Steuerbit 45 ist als "immer akzeptieren" Bit designiert, das, wenn es gesetzt ist, bewirkt, dass ... [sic] Der letzte Teil 46 umfasst drei Steuerbits, die eine Generationszahl angeben. In einigen Implementationen des CTDMA-Protokolls kann ein Quellknoten mehrere Kopien desselben LPakets senden, um zu gewährleisten, dass wenigstens eines von ihnen die beabsichtigten Empfänger erreicht. Die Generationszahl bleibt für jedes duplizierte LPaket dieselbe und ermöglicht es einem Empfängerknoten, die Duplikate zu ignorieren, wenn ein Paket erfolgreich empfangen wurde. Wenn sich die Generationszahl ändert, wissen die Netzknoten 20, dass sich der Meldungsinhalt ebenfalls geändert hat. Wenn das "immer akzeptieren" Bit gesetzt ist, ignorieren die Empfängerknoten die Generationszahl bei der Ermittlung, ob sie das LPaket zu Verarbeitung akzeptieren sollen.
  • Nach den Steuerbits 32 im LPaket 26 kommt das Etikett 34, das eine veränderliche Zahl von Bytes hat. Das Etikett identifiziert den Typ von LPaket, der es einem Empfängerknoten ermöglicht, die LPakete, an denen er nicht interessiert ist, zu ignorieren oder auszufiltern und nur die zu behalten, die für ihn von Interesse sind. Wie nachfolgend ausführlicher erläutert wird, akzeptieren "Screener" in jedem Knoten 20 nur die LPakete mit selektierten Etiketten. Um eine Grenze zwischen dem Etikett-Feld 34 und dem Link-Daten-Feld 36 an einer geradzahligen Wortnummer nach dem Anfang des Datenfeldes 25 zu behalten, muss das Etikett-Feld 34 eine gerade Zahl von Bytes im MAC-Frame gemäß Austausch mit Host-Geräten 12, 13, 14, 15, 16 usw. enthalten. Ein Etikett mit einer ungeraden Zahl von Bytes wird durch das Etikettfüller-Steuerbit 40 angezeigt, das einen Schaltkomplex im sendenden Knoten anweist, ein Füllbyte aus dem Etikett-Feld zu löschen, bevor er das LPaket überträgt, und einen Empfängerknoten anweist, ein Füllbyte zum Etikett-Feld hinzuzufügen, bevor er das LPaket zum Host-Prozessor 102 überträgt.
  • Das letzte Feld 36 des LPakets 26 enthält die ausgetauschten Daten, die als "Link-Daten" bezeichnet werden. Die Anzahl der Bytes im Feld 36 variiert je nach der Menge von Daten, die der Quellknoten senden muss. Da die Daten in Byte- oder Wortgröße vorliegen, müssen Empfängerschaltungen in den Empfängerknoten beide Formate handhaben können. Wie nachfolgend beschrieben wird, sind die Empfängerschaltungen so ausgelegt, dass sie Wortgrößeninkremente handhaben können. Wenn die Link-Daten 36 eine ungerade Zahl von Bytes haben, wie durch das Datenfüll-Steuerbit 42 angegeben, muss der Empfängerknoten ein Füllbyte zum Datenfeld hinzugeben, bevor er das LPaket im Speicher speichert.
  • Wieder bezugnehmend auf 2A, auf das LPaket-Datenfeld 25 im MAC-Frame 21 folgt ein CRC-Wort (zyklischer Redundanzcode) 27, den ein Empfängerknoten verwendet, um zu erkennen, wann der Frame während der Übertragung beschädigt wird. Der letzte Teil 28 des MAC-Frame 21 ist der zuvor beschriebene eindeutige Endebegrenzer, an dem die anderen Stationen erkennen können, wann der Frame geendet hat. Der Endebegrenzer 28 beinhaltet auch mehrere explizite Manchester-Code-Verletzungen in seiner Phy-Symbol-Sequenz.
  • Ein Knoten kann einen MAC-Frame nur zu vorbestimmten Zeiten über das Netz 10 übertragen, um zu verhindern, dass Frames von verschiedenen Knoten miteinander kollidieren. Die Übertragung von Meldungen erfolgt während einer Reihe von sich wiederholenden periodischen Intervallen 50, wie in 3 gezeigt ist. Die Länge des periodischen Intervalls kann vom Benutzer definiert werden, wie beschrieben wird. Jedes periodische Intervall 50 ist in drei Segmente unterteilt: die geplante Phase 52 für E/A-Daten, die ungeplante Phase 54 für andere Typen von Meldungen, und ein Sperrband 56 für die Meldungskoordination.
  • Während der geplanten Phase 52 erhält jeder Knoten 20 die Gelegenheit, E/A-Daten über das Netz zu übertragen. Wie in 4A gezeigt, ist die geplante Phase 52 in Zeitschlitze 60 für jeden der N Knoten 20 auf dem Netz 10 unterteilt. Wie beschrieben wird, kann die geplante Phase so konfiguriert werden, dass nicht alle N Knoten Zugang in Situationen haben, in denen nicht jeder Knoten E/A-Daten übermittelt, wie z. B. der Programmierterminal 18. Jeder Zeitschlitz 60 kann so lang sein wie die Zeit, die zum Senden eines MAC-Frame 21 der maximalen Länge notwendig ist, die das Netzwerkprotokoll zulässt (z. B. 510 Bytes). So muss das periodische Intervall 50 eine definierte Dauer haben, die wenigstens lang genug ist, damit jeder Knoten 20 einen MAC-Frame 21 maximaler Dauer senden kann.
  • Am Ende jedes periodischen Intervalls 50 befindet sich ein Sperrband 56. Wenn das Sperrband endet, wird ein "Ton"-Signal 53 in jedem Knoten 20 erzeugt, um die zeitliche Grenze zwischen zwei periodischen Intervallen 50 anzuzeigen. Das Signal wird zwar nicht über das Netzwerk gesendet, aber es lässt es zu, dass jeder Knoten Zeit synchron zählt. Nach dem Erzeugen des Tonsignals überträgt der Netzknoten mit der ersten Adresse einen MAC-Frame von E/A-Daten im geplanten Schlitz 1. Wenn dieser Knoten 20 keine E/A-Daten hat, dann überträgt er einen leeren MAC-Frame, d. h. einen ohne LPakete. Wenn ein Knoten mehr E/A-Daten hat, als in einem einzigen MAC-Frame 21 übertragen werden können, dann können die übrigen Daten während der ungeplanten Phase 54 gesendet werden, wenn dieser Knoten eine Gelegenheit erhält, in dieser Phase zu senden.
  • Am Ende des geplanten Schlitzes 1 für den ersten Knoten überträgt der Knoten 20 mit der nächsten sequentiellen Netzwerkadresse seine E/A-Daten während des geplanten Schlitzes 2. Man beachte, dass in diesem Beispiel einem Knoten entweder keine Adresse 3 zugewiesen wurde oder dass der zugewiesene Knoten derzeit inaktiv ist. Somit wird der geplante Schlitz 3, der sonst durch E/A-Daten vom dritten Knoten belegt wird, durch eine kurze "tote" Periode 62 ersetzt. Der vierte Netzknoten horcht in dieser toten Periode, ob der dritte Knoten sendet. Diese Horch- oder Warteperiode muss wenigstens so lang sein wie die längste Zeit, die ein Signal für die Fortpflanzung zwischen beliebigen zwei Stationen benötigt. Wenn während der Horchperiode keine Übertragung erfasst wird, dann kommt es zu einem "Schlitz-Timeout", und der vierte Knoten folgert, dass der dritte Knoten nicht existiert, und beginnt mit dem Senden von E/A-Daten über das Netzkabel 11.
  • Diese Sequenz wird so lange fortgesetzt, bis alle N Knoten 20 auf dem Netz 10, die für eine geplante Phasenübertragung konfiguriert sind, die Gelegenheit erhalten haben, ihre E/A-Daten zu senden, d. h. bis der implizierte Token einmal um das Netz gereicht wurde. Die tatsächliche Dauer der geplanten Phase 52 variiert je nach dem, wie viele Netzknoten 20 E/A-Daten zum Senden haben, sowie je nach der Menge von E/A-Daten, die jede Station sendet. Je nach diesen Faktoren ist es denkbar, dass das gesamte periodische Intervall 50 mit einer geplanten Phase 52 und einem Sperrband 56 verbraucht werden kann. Es ist jedoch häufiger der Fall, dass nach der geplanten Phase 52 noch Zeit für eine ungeplante Phase 54 bleibt.
  • Während der so genannten ungeplanten Phase 54 erhalten die Netzwerkknoten 20 die Gelegenheit, eventuell verbleibende E/A-Daten sowie andere Meldungstypen zu senden, wie z. B. solche, die Steuerbefehle und Herstellungsinformationen enthalten. Jegliche nach der geplanten Phase 52 im periodischen Intervall 50 verbleibende Zeit wird der ungeplanten Phase 54 gegeben. Somit erhält nicht jeder Knoten 20 während der ungeplanten Phase 54 unbedingt garantiert Zeit, um Meldungen zu senden, aber das ist akzeptabel, da die ungeplanten Phasenmeldungen definitionsgemäß weniger zeitkritisch sind als die E/A-Daten.
  • Wenn genügend Zeit verbleibt, dann können die Knoten 20 MAC-Frame während der. ungeplanten Phase 54 wie in 4B veranschaulicht senden. Eine weitere Unterscheidung zwischen den beiden Phasen 52 und 54 ist die, dass der erste Knoten, der während der ungeplanten Phase senden darf, in jedem periodischen Intervall wechselt. Der erste Knoten wird von einer Netzwerkadresse angegeben, die durch die Variable START designiert wird, die von jedem Knoten in einem internen Register gespeichert wird. Am Ende der ungeplanten Phase 54 wird der wert von START inkrementiert, so dass der Knoten mit der nächsten numerischen Netzwerkadresse als erster die Gelegenheit erhält, einen Meldungsframe während der ungeplanten Phase des nächsten periodischen Intervalls zu senden. Wenn der Wert von START die höchste für die ungeplante Phase designierte Adresse erreicht, dann wird er auf die niedrigste Adresse zurückgestellt. Der implizite Token wird zwar nur einmal in der geplanten Phase 52 herumgereicht, aber in der ungeplanten Phase wird er so oft herumgereicht, wie es die Zeit zulässt.
  • Somit sendet zu Beginn der ungeplanten Phase der Knoten mit einer Adresse gemäß START einen Meldungsframe. Wenn ein Knoten diesen Meldungstyp nicht zu senden hat, dann wird ein leerer Meldungsframe gesendet, d. h. einer ohne LPakete. Dann erhält der Knoten mit der nächsten Netzwerkadresse (START + 1) die Genehmigung, einen Meldungsframe zu senden, usw., bis die in der ungeplanten Phase verbleibende Zeit verbraucht ist. In der in 4B veranschaulichten beispielhaften ungeplanten Phase besteht eine Lücke 68 hinter dem Schlitz 66 für den START-Knoten, die. anzeigt, dass Adresse START + 1 entweder unzugewiesen oder der zugewiesene Knoten derzeit inaktiv ist, so dass eine Totzeit auf dem Netz entsteht. Wie bei der geplanten Phase 52, wenn ein Knoten in diesem Schlitz nicht mit dem Senden einer Meldung beginnt, dann beginnt der nächste Knoten in der Adresssequenz (z. B. START + 2) nach einer Horchperiode mit dem Senden.
  • Man sollte auch bemerken, dass eine geringe Menge Zeit 69 verbleibt, nachdem der mit (START + M) designierte Knoten gegen Ende der ungeplanten Phase 54 mit dem Senden aufhört.
  • Da diese Menge Zeit 69 für einen weiteren MAC-Frame zu kurz ist, kommt es zu keiner Übertragung. Zu diesem Zweck verfolgt jeder Knoten die Zeit, die in dem periodischen Intervall verbleibt. Die Anzahl der Knoten M, die die Gelegenheit erhalten, einen MAC-Frame 21 während einer bestimmten ungeplanten Phase 54 zu senden, ist von der Zeitmenge abhängig, die in dem periodischen Intervall 50 nach der geplanten Phase 52 verbleibt, und der Länge der Frames, die jeder Knoten zu senden hat.
  • Eine Zeitperiode, die als Sperrband 56 bezeichnet wird, wird am Ende des periodischen Intervalls 50 reserviert. In dem Sperrband sendet einer der Knoten 20, der als "Moderator" designiert ist, einen MAC-Frame mit einem einzelnen LPaket, das Netzsteuerinformationen enthält, zu allen anderen Knoten rund. Der Moderator ist der aktive Knoten mit der niedrigsten Netzwerkadresse, und über seine Funktion wie jeder andere Knoten hinaus sendet er auch Netzsteuerinformationen während des Moderatorschlitzes jedes Sperrbandes 56. Das LPaket für den Moderator-Meldungsframe hat dasselbe Format wie in 2B illustriert, sein Fixed-Screen-Select-Bit ist gesetzt und er hat ein Etikett, das ein Moderator-LPaket anzeigt. 2C zeigt das Link-Datenfeld 36 dieses speziellen LPakets. Der erste Block 71 von Daten enthält die hexadezimale Zahl FF, die die Rundsendadresse angibt. Der nächste Datenblock 72 enthält die periodische Intervallzeit (PIT) in Inkrementen von jeweils zehn Mikrosekunden, die jeden Knoten über die Dauer jedes periodischen Intervalls informiert. Der dritte und der vierte Datenblock 73 und 74 geben die Knoten mit den höchsten Netzwerkadressen an, denen der Zugang zum Netzwerk jeweils in der geplanten und der ungeplanten Phase gewährt wird. Während der ungeplanten Phase erhalten gewöhnlich mehr Knoten Zugang, da einige Knoten niemals E/A-Daten zusenden haben. So sendet beispielsweise der Programmierterminal 18 nur Daten während der ungeplanten Phase, und es sollte ihm keine Netzwerkadresse gegeben werden, die in beiden Phasen abgefragt wird, da dies die geplante Phase nur verlangsamt.
  • Der fünfte Block von Daten 75 im Moderator-LPaket definiert die Horchzeit (in Mikrosekunden), während der eine Station auf ein Senden der vorherigen Station warten muss, bis sie davon ausgehen kann, dass die andere Station dies nicht tut. So wird beispielsweise die Wartezeit auf einen Betrag von wenigstens gleich dem Zweifachen der längsten Netzwerkfortpflanzungszeit plus der Reaktionszeit eines Knotens plus der Menge an Zeit eingestellt, die ein Knoten braucht, um die Übertragung eines anderen Knotens zu erkennen.
  • Sehr häufig hört ein Knoten ein Echo seiner eigenen Übertragung. Wenn nicht auf andere Weise gesperrt, kann der Knoten den Empfang des MAC-Frame-Echos so verarbeiten, als wenn es von einem anderen Knoten käme. Der sechste Datenblock 76 enthält eine Definition einer Leerzeit, während der eine Station nach ihrer Übertragung taub ist, so dass sie ihre eigenen Meldungen nicht empfangen kann. Die Leerzeit dient auch zum Ermitteln einer Menge an Zeit, die ein Knoten nach dem Übertragen oder Empfangen eines Meldungsframe verzögern muss, bevor er über das Netz senden kann. Somit gibt es eine kurze Ruhezeit zwischen Meldungsframes.
  • Weiter bezugnehmend auf 2C, die nächsten beiden Datenfeldblöcke 77 und 78 definieren die Länge des Sperrbandes 56 und den Punkt innerhalb des Sperrbandes, an dem der Moderator mit dem Übertragen des Steuer-MAC-Frame beginnen soll. Der Inhalt des Sperrbandzeitblocks 77 wird von jedem Knoten verwendet, um zu ermitteln, wann ein Sperrband 56 auftritt. In einen Timer in dem Knoten wird die periodische Intervallzeit (PIT) geladen, wenn der Ton 53 auftritt. Dieser Timer wird alle zehn Mikrosekunden dekrementiert, und wenn die im periodischen Intervall verbleibende Zeit gleich der Sperrbandzeit aus Datenblock 77 ist, dann weiß der Knoten, dass ein Sperrband beginnt. Da sich jeder Knoten auf seinen eigenen internen Timer verlässt, um Events wie z. B. das Sperrband zu erkennen, wird, wenn der Timer eines bestimmten Knotens vor- oder nachgeht, der Betrieb dieses Knotens nicht präzise auf die anderen Knoten synchronisiert. Daher beginnt der Moderator nicht mit dem Senden des MAC-Frame von Netzsteuerinformationen ganz am Anfang des Sperrbandes 56. Stattdessen wartet der Moderator bis zu einem späteren Zeitpunkt, GBAND CENTER genannt, der im Datenblock 78 angegeben ist. Der interne Timer im Moderator-Knoten dient zum Ermitteln des Auftretens dieses Zeitpunkts.
  • Der nächste Datenblock 79 des Moderator-LPakets identifiziert die Adresse des Knotens, der die erste Gelegenheit erhält, während der ungeplanten Phase des nächsten periodischen Intervalls zu senden. Jedes periodische Intervall ist nummeriert, und Block 80 enthält die Nummer, oder PIT COUNT, des aktuellen Intervalls. Die Numerierung der periodische Intervalle arbeitet mit modularer Arithmetik, und Datenblock 81 enthält den Modulus. Dieses Nummernschema lässt es zu, dass bestimmte Knoten so konfiguriert werden, dass sie Daten nur während periodischer Intervalle mit einer bestimmten Nummer übertragen. So kann beispielsweise ein bestimmter Knoten E/A-Daten verarbeiten, die nicht so zeitkritisch sind, dass die Daten während jedes periodischen Intervalls gesendet werden müssten. Daher kann dieser Knoten mittels der periodischen Intervallnummer so konfiguriert werden, dass er Daten nur in jedem X-ten periodischen Intervall sendet.
  • Zu verschiedenen Zeiten wird es notwendig, die im Moderator-LPaket gegebenen Parameter zu ändern. Wenn es beispielsweise keine freie Adresse unterhalb der geplanten oder ungeplanten Maxima in den Blöcken 73 und 74 gibt, wenn ein neuer Knoten zum Netz hinzugefügt wird, dann muss der Wert in einem oder in beiden diesen Blöcken erhöht werden. Dies erfolgt durch einen Operator, der den entsprechenden Befehl in den Programmierterminal 18 oder in eine andere Steuerstation eingibt. Eine Meldung mit dem Befehl wird dann während einer ungeplanten Phase zu jedem Knoten auf dem Netz übertragen.
  • Um zu gewährleisten, dass alle Netzwerkknoten 20 gleichzeitig beginnen, die neuen Konfigurationsdaten zu benutzen, enthält das Moderator-LPaket eine Nummer, die in Block 82 mit TMINUS bezeichnet ist. TMINUS hat gewöhnlich einen Wert von null. Nach dem Verteilen eines revidierten Satzes von Konfigurationsparametern durch eine Netzmanagementstation zum Moderatorknoten erhält der Moderator jedoch einen Befehl von der Netzmanagementstation. Der Moderator reagiert auf diesen Befehl dadurch, dass er das TMINUS-Feld 82 im nächsten Moderator-LPaket auf einen anderen Wert als null (z. B. zunächst ein Wert von fünf) einstellt. Der Wert von TMINUS wird beim Senden jedes nachfolgenden Moderator-LPakets dekrementiert. Wenn TMINUS null erreicht, dann übertragen alle Knoten die Informationen in ihrem Satz von Halteregistern in den Satz von aktiven Registern, aus dem die Parameter gelesen werden, um Aktivität auf dem Netz 11 zu koordinieren. Dieser Prozess verzögert die Verwendung der neuen Netzkonfigurationsinformationen für mehrere periodische Intervalle 50, so dass alle Knoten die Informationen mit hoher Wahrscheinlichkeit zufriedenstellend empfangen, bevor die Änderung implementiert wird.
  • Der MAC-Frame im Sperrband 56 bewirkt auch die Synchronisation der Takte. in jedem Knoten 20. Das Ende dieses MAC-Frame ergibt einen Bezugspunkt, von dem jeder Knoten das Intervall misst, bis das Tonsignal im Knoten erzeugt wird. Somit wird jedes Mal, wenn ein Knoten den Moderator-Meldungsframe zufriedenstellend empfängt, sein Taktgeber auf die Taktgeber in allen anderen Knoten neu synchronisiert. Die Genauigkeit dieser Taktgeber ist derart, dass ein Knoten auf dem Netz noch mehrere periodische Intervalle lang funktionieren kann, ohne den Moderator-Meldungsframe zufriedenstellend zu empfangen, bevor der Takt erheblich abweicht. Unter normalen Bedingungen wird der Knoten einen Moderator-Meldungsframe zufriedenstellend empfangen und synchronisiert werden, bevor es zu einer zu starken Abweichung kommt.
  • Ein Knoten, der zum Netzwerk hinzukommt, horcht mehrere Sekunden lang auf den Datenverkehr, um zu ermitteln, ob ein weiterer Knoten mit derselben Adresse existiert. Wenn nicht, dann überträgt der neue Knoten Meldungen, wenn er in der geplanten und der ungeplanten Phase an der Reihe ist. Wenn ein anderer Knoten dieselbe Adresse hat, dann wird der neue Knoten als "Duplikat" angesehen und kann nicht senden. Das Duplikat bleibt in einem Schlummerzustand, bis das Problem der im Konflikt stehenden Adressen korrigiert ist (z. B. bis seine Adresse geändert wurde oder der im Konflikt stehende Knoten vom Netzwerk abgetrennt wurde).
  • Somit lässt das aktuelle CTDMR-Netzkommunikationsprotokoll das Senden von Ein-/Ausgabedaten und anderen Meldungsinformationen über dasselbe Netzwerkmedium in designierten Abschnitten der periodischen Intervalle 50 zu. In jedem periodischen Intervall 50 enthalten die E/A-Daten Priorität, die zum Steuern der Maschinen verwendet werden, die von den Prozessoren 1315 auf dem Netz 10 betrieben werden. Wenn jeder Knoten 20 auf dem Netz die Gelegenheit erhalten hat, seine E/A-Daten zu senden, dann wird der übrige Teil des periodischen Intervalls der Übertragung anderer Formen von Informationen während einer ungeplanten Phase gewidmet. Es erhält zwar nicht jeder Netzwerkknoten 20 die Gelegenheit, eine Meldung während der ungeplanten Phase 54 zu senden, aber im Laufe der mehreren periodischen Intervalle wird jeder Knoten eine Gelegenheit erhalten. Wenn solche Gelegenheiten nicht oft genug auftreten, dann muss der Netzbetreiber das periodische Intervall möglicherweise verlängern.
  • Kommunikationssteuerung
  • Gemäß 5A ist das CTDMA-Protokoll vorzugsweise auf einer einzigen größtintegrierten Schaltung (VLSI) mit der Bezeichnung "S-Link Media Access Controller" (SMAC) 100 ausgeführt. Der SMAC 100 hat über einen konventionellen Bus 101 Verbindung mit dem Host-Prozessor 102. Der Bus 100 beinhaltet eine Standardadresse, Daten- und Steuersignale, wie in der Technik für Prozessorschnittstellen bekannt ist. Der Host-Prozessor 102 kann ein konventionelles Mikroprozessorsystem sein. Der SMAC 100 kann vorzugsweise so programmiert werden, dass er an eine Reihe verschiedener Host-Prozessorbuskonfigurationen und -protokolle angepasst werden kann. So können beispielsweise Daten selektiv als Daten mit 8 oder 16 Bit Breite übertragen werden. Ebenso können "Handshaking"-Signale für Datenübertragungen für bekannte Schnittstellenprotokolle angepasst werden, mit denen handelsübliche Mikroprozessoren arbeiten. Der SMAC 100 bietet vorzugsweise eine Funktion für einen "Byte-Tausch" von Datenbytes gemäß der vom angeschlossenen Host 102 verwendeten Hoch/Tief-Byte-Priorität. Solche Schnittstellenfunktionen sind ausführlicher im mitanhängigen US-Patent Nr. 5,153,884 mit dem Titel "Intelligent Network Interface Circuit" beschrieben.
  • Jeder Knoten 20 hat über einen mit einem Transformator 104 gekoppelten Abgriff 103 Verbindung mit dem Koaxialkabel 11. Sekundärwicklungen 104a des Transformators 104 sind mit beiden Eingängen eines Empfangsverstärkers/Detektors 105 und den Ausgängen von zwei Biphasen-Antriebsverstärkern 106a und 106b verbunden. Der Ausgang des Empfangsverstärkers/Detektors 105 ist als NET IN Signal 107 mit dem SMRC 100 verbunden. Die Eingänge der Treiberverstärker 106a und 106b sind jeweils mit einem NET OUT Signal 108 und einem NET OUT INV Signal 109, vom SMAC 100 erzeugt, verbunden. Die Treiberverstärker 106a und 106b sind vom "Ausgangssenken"-Typ, so dass dann, wenn die NET OUT und NET OUT INV Signale 108 und 109 beide tief sind, beide Sekundärwicklungen 104a hoch oder offen sind. In diesem Zustand koppeln die Sekundärwicklungen 104a vom Netz 10 empfangene Signale mit dem Empfangsverstärker/Detektor 105. Zur Übertragung werden die Treiberverstärker 106a und 106b jeweils von den NET OUT und NET OUT INV Signalen 108 und 109 phasenverschoben (hoch/tief oder tief/hoch), wobei ein Sendesignal auf die Sekundärwicklungen 104 des Transformators 104 aufgedrückt wird. Der Transformator 104 koppelt dann das gesendete Signal mit dem Netz 10.
  • Der Knoten 20 beinhaltet auch einen Verbinder 110, um einen Programmierterminal 18 über einen passenden Stecker 111 mit dem Knoten 20 zu verbinden. Es wird bevorzugt, dass alle Knoten 20 auf dem Netz 10 einen solchen Verbinder 110 für einen selektiven temporären Anschluss des Programmierterminals 18 nach Bedarf haben. So kann z. B. der Programmierterminal ein Handgerät sein, das beim Durchführen von Einstell- oder Diagnosevorgängen von Knoten zu Knoten getragen wird. Der Programmierterminal-Verbinder 110 ermöglicht bidirektionale serielle Kommunikation zwischen dem Programmierterminal 18 (wenn angeschlossen) und dem SMAC 100.
  • In dieser besonderen Ausgestaltung ist das Format für den seriellen Datenaustausch zwischen dem Programmierterminal 18 und dem SMAC 100 die EIA-Norm RS-422. Ein Satz von. RS-422 Transceivern 112 ist an jeweiligen Ports PTC IN 113 und PTC OUT 114 auf dem SMAC 100 für den Austausch serieller Daten angeschlossen. Wie nachfolgend ausführlich beschrieben wird, stellt der SMAC 100, zusätzlich zu anderen Diensten, eine "Repeater"-Fähigkeit zwischen dem Netz 10 und dem Programmierterminal-Verbinder 110 bereit. Diese Repeater- Fähigkeit ist besonders vorteilhaft, weil sie einen vollfunktionellen Netzwerkport am Programmierterminal-Verbinder 110 bereitstellt, ohne die Kosten oder das Overhead eines weiteren expliziten Satzes von Netzschnittstellen-Hardware. Der vom SMAC 100 für den Host-Prozessor 102 bereitgestellte normale Netzwerkzugang ist völlig mit der Repeating-Fähigkeit zwischen dem Programmierterminal-Verbinder 110 und dem Netz 10 integriert, so dass der SMAC als Netzwerk-Repeater 17 in 1 fungieren kann. Infolgedessen wird die volle Matrix von Kommunikationspfaden implementiert. Insbesondere sind die verfügbaren Übertragungspfade: (1) Daten, die vom Programmierterminal-Verbinder 110 empfangen werden, sind mit dem Netz 10 und dem Host 102 gekoppelt; (2) vom Host 102 empfangene Daten sind sowohl mit dem Programmierterminal-Verbinder 110 als auch mit dem Netz 10 gekoppelt; und (3) vom Netz 10 empfangene Daten sind sowohl mit dem Programmierterminal-Verbinder 110 als auch mit dem Host-Prozessor 102 gekoppelt.
  • Aufgrund der auf dem Netz 10 verwendeten hohen Datenrate bietet der SMAC 100 eine "Screening"-Fähigkeit, um nur bestimmte Daten von Interesse auszuwählen, die schließlich zum Host 102 weitergeleitet werden. Wie oben beschrieben, beinhaltet jeder MAC-Frame ein oder mehrere LPakete 26, und jedes LPaket beinhaltet ein eindeutiges Kennetikett. Eine begrenzte interne Screening-Fähigkeit ist im SMAC 100 gegeben, um bestimmte LPakete herauszupicken, die zum Host 102 übertragen werden sollen. Über die interne Screening-Fähigkeit hinaus bietet der SMAC 100 auch einen Screener-Bus 115 für den Anschluss an eine fakultative externe Screen-Schaltung 116. Die externe Screen-Schaltung 116 kann so ausgelegt sein, dass sie eine im Wesentlichen unbegrenzte Zahl von LPaketen 26 für die Übertragung zum Host 102 erkennt. Sowohl die interne als auch die externe Screening-Fähigkeit werden nachfolgend ausführlich beschrieben.
  • Der SMAC 100 erzeugt auch ein SYNC OUT Signal 120, das die Fähigkeit für eine Echtzeitsynchronisierung zwischen verschiedenen am Netz 10 angeschlossenen Knoten 20 bietet. Aufgrund der einzigartigen Qualitäten des CTDMA-Protokolls kann jeder einzelne Knoten 20 Aktivitäten am lokalen Knoten zu globalen Echtzeit-synchronisierten Events synchronisieren, die auf dem Netz 10 auftreten. Das SYNC OUT Signal 120 kann so konfiguriert werden, dass es eine von mehreren möglichen Synchronisationsquellen im SMAC 100 wählt. Auf der Basis der gewählten Synchronisationsquelle bietet das Sync-Ausgabesignal 120 die Fähigkeit, Prozesse am lokalen Knoten 20 in Bezug auf eine absolute oder "universelle" Zeitreferenz zu synchronisieren, die allen Knoten auf dem Netz zur Verfügung steht. Dies erlaubt die Echtzeitsynchronisation von Events und Systemen, auch wenn diese Events und Systeme vielleicht auf unterschiedlichen Netzknoten 20 sind. Der zu synchronisierende lokale Prozess kann eine separate Schaltung oder ein separates Subsystem sein, wie durch die gestrichelten Linien 121 angedeutet ist, oder kann alternativ ein Prozess sein, der den Host-Prozessor 102 selbst betreibt. Im letzteren Fall kann das SYNC OUT Signal 120 bei Bedarf als diskretes Eingangssignal in den Host-Prozessor 102 geschaltet werden. Es ist zwar ein einziges SYNC OUT Signal 120 zu sehen, aber es können bei Bedarf mehrere SYNC OUT Signale verwendet werden, um gleichzeitig andere der wählbaren "Sync Event" Quellen bereitzustellen.
  • Der SMAC
  • Gemäß 5B sind die Hauptfunktionsblöcke im SMAC 100 eine Modemschaltung 140, eine Empfangsverarbeitungsschaltung 142, eine Sendeverarbeitungsschaltung 141, eine Host-Schnittstellenschaltung 143, eine Zugangssteuerschaltung 144 und eine Sync-Auswahlschaltung 145.
  • Das Modem 140 hat Verbindung mit dem NET IN Signal 107, dem NET OUT Signal 108, dem NET OUT INV Signal 109, dem PTC IN Signal 113 und dem PTC OUT Signal 114. Eine Grundfunktion des Modems 140 ist es, die Manchester-codierten Signale zu und von dem Netz 10 und dem Programmierterminal-Verbinder 110 zu modulieren und zu demodulieren. Eine weitere Grundfunktion des Modems 140 ist es, die im SMAC 100 verwendeten Taktsignale für Timing-Zwecke zu erzeugen. Ein PHY CLOCK Signal 150 wird vom Modem 140 mit der physikalischen Symbolrate oder dem Zweifachen der Bitrate erzeugt. Die bevorzugte Bitrate in dieser Ausgestaltung ist fünf Megabit pro Sekunde, und das PHY CLOCK Signal 150 hat somit eine Frequenz von zehn Megahertz. Das Modem 140 erzeugt auch ein BYTE PULSE Signal 151, das auf eine nachfolgend ausführlich beschriebene neuartige Weise auf die "Byte"-Grenze der Manchester-Daten ausgerichtet ist. Nach dem Ausrichten wird das BYTE PULSE Signal 151 für eine aktive Periode des PHY CLOCK Signals 150 auf "wahr" gesetzt, um das Ende eines empfangenen oder gesendeten Bytes (acht Bit) zu markieren. In diesem Sinne ist das BYTE PULSE Signal 151 kein Taktsignal an sich, sondern eher ein Torsteuersignal, das unmittelbar vor einer aktiven Flanke des PHY CLOCK Signals 150 auf "wahr" gesetzt wird. Das Modem 140 erzeugt auch andere Taktsignale, die nachfolgend wo zutreffend erörtert werden.
  • Eine dritte Funktion des Modems 140 ist es, vom Host-Prozessor 102 zur Übertragung bereitgestellte Daten zu akzeptieren und ebenso die empfangenen Daten zum Host 102 weiterzuleiten. Die Sendeverarbeitungsschaltung 141 sendet Host-Sendedaten und andere Steuersignale über einen dedizierten Ausgangsbus 161 zum Modem 140. Die Empfangsverarbeitungsschaltung 142 akzeptiert die empfangenen Daten und entsprechenden Steuersignale vom Modem 140 über einen dedizierten Eingangsbus 162. Der jeweilige Betrieb der Schaltungen 141 und 142 beim Verarbeiten der jeweiligen Sende- und Empfangsdaten wird nachfolgend ausführlich beschrieben.
  • Viertens implementiert das Modem 140 eine Auswahlmatrix zum Durchführen der Repeater-Funktion zwischen HostßProzessor 102, Programmierterminal-Verbinder 110 sowie dem Netz 10. Von der Sendeverarbeitungsschaltung 141 empfangene Host-Sendedaten werden im Modem 140 "zurückgeschleift" (Loopback), um den Datenauswahl- und -Repeating-Prozess zu integrieren. Auf dem NET IN Eingang 107 empfangene Daten werden sowohl mit der Leitung für das PTC OUT Signal 114 als auch mit der Empfangsverarbeitungsschaltung 142 gekoppelt. Ruf der Leitung für das PTC IN Signal 113 empfangene Daten werden zur Empfangsverarbeitungsschaltung 142 gesendet und auch jeweils über die NET OUT und NET OUT INV Signalleitung 108 und 109 zum Netz 10 weitergeleitet. Schließlich werden Host-Sendedaten von der Sendeverarbeitungsschaltung 141 zu allen drei Zielorten gesendet: der Leitung für das PTC OUT Signal 114, der Leitung jeweils für die NET OUT und NET OUT INV Signale 108 und 109 sowie zur Empfangsverarbeitungsschaltung 142. Das "Loopback" von Host-Sendedaten zur Empfangsverarbeitungsschaltung 142 erlaubt es dem Host-Prozessor 102, "Meldungen" zum SMAC 100 zu senden. Dieses Meldungsloopback ist die bevorzugte Methode für die Übertragung bestimmter Informationen zwischen dem Host-Prozessor 102 und dem SMAC 100, weil sie die inhärenten Meldungsverarbeitungsfähigkeiten des SMAC 100 nutzt. So werden z. B. spezielle Stationsmanagement-"Meldungen" für eine Direktverarbeitung durch den SMAC 100 ohne Aktion durch den Host-Prozessor 102 bereitgestellt. Diese "Meldungen" können entweder vom Netz 10 oder vom Host-Prozessor 102 empfangen werden, aber in beiden Fällen wird die "Meldung" durch die Empfangsverarbeitungsschaltung 142 verarbeitet. Füllbytes werden an das Ende jeder Stationsmanagementmeldung angehängt, um zu gewährleisten, dass der SMAC 100 genügend Zeit hat, um die Meldung zu verarbeiten.
  • Schließlich hat das Modem 140 die Funktion, Signale zu erzeugen, die für den CTDMA-Zugangsprozess verwendet werden, insbesondere ein FRAME ESTIMATE Signal 165 und ein RX READY Signal 166. Mit kurzer Bezugnahme auf 6, das FRAME ESTIMATE Signal 165 bedeutet, dass "geschätzt" wird, dass ein MAC-Frame 21 unterwegs ist (Sendung oder Empfang). Bei einem empfangenen Frame erfolgt diese "Schätzung" auf eine Weise, die eine qualitative Schätzung der MAC-Frame-Präambel 22 als eine frühe, aber nicht unfehlbare Anzeige durchführt, dass ein MAC-Frame 21 unterwegs ist. Das andere Steuersignal, RX READY 166, wird erst nach dem Empfang einer vorbestimmten Anfangsbegrenzersequenz, genau und fehlerlos, wahr. Der Anfangsbegrenzer 23 ist dahingehend eindeutig, dass er aus einzelnen Phy-Symbolen anstatt aus konventionellen Manchester-codierten Datenbits besteht. In der Tat beinhaltet der bevorzugte Anfangsbegrenzer 23 absichtlich mehrere explizite Manchester-Code-Verletzungen in der Phy-Symbol-Sequenz. Ein ebenso eindeutiger Endebegrenzer 28 wird mit einer anderen Phy-Symbol-Sequenz bereitgestellt, die ebenfalls Manchester-Code-Verletzungen beinhaltet, um das Ende eines MAC-Frame 21 zu erkennen. Nach einem erfolgreichen Erkennen der Anfangsbegrenzersequenz wird das RX READY Signal 166 wahr. Das RX READY Signal 166 bleibt dann so lange wahr, bis eine andere Manchester-Code-Verletzung erkannt wird. Normalerweise würde ein empfangener MAC-Frame keine
  • Manchester-Code-Verletzungen zwischen Anfangs- und
  • Endebegrenzern enthalten. In diesem Fall würde das RX READY Signal 166 wahr bleiben, bis die erste absichtliche Manchester-Code-Verletzung im Endebegrenzer erkannt wird.
  • Wieder zurück zu 5B, die Empfangsverarbeitungsschaltung 142 nimmt serielle Daten- und andere Statusanzeigen vom Modem 140 und wandelt die seriellen Daten in ein acht Bit breites "Byte"-Format um. Die Empfangsverarbeitungsschaltung 142 leitet die Byte-Daten über einen RX-Byte-Bus 170 zur Host-Schnittstellenschaltung 143 weiter. Steuersignale für die Übertragung kommen auf einem RX FIFO Steuerbus 171. Die Empfangsverarbeitungsschaltung 142 ist auch vornehmlich für Screening-Operationen verantwortlich und beinhaltet eine universelle User-Screen-Schaltung 172, die so programmiert werden kann, dass sie eine begrenzte Anzahl von LPaket-Etiketten von Interesse "erkennt". Die Empfangsverarbeitungsschaltung 142 ist auch mit dem externen Screener-Bus 115 für externe Screening-Vorgänge verbunden.
  • Die Zugangssteuerschaltung 144 hat in Verbindung mit der Empfangsverarbeitungsschaltung 142 die Funktion, eine "feste" Screener-Funktion zu implementieren. Dieser feste Screener dient zum Erkennen von vorbestimmten festen LPaket-Etiketten, die Stationsmanagementinformationen führen.
  • Darüber hinaus führt die Empfangsverarbeitungsschaltung 142 eine "Intervallnummer"-Zahl. Wie oben erörtert, wird jedes periodische Intervall in aufsteigender Reihenfolge gemäß einem konfigurierbaren Modulus numeriert. Die Empfangsverarbeitungsschaltung 142 führt die "Intervallnummer" des aktuellen periodischen Intervalls für die Verwendung in einigen Screening-Funktionsarten. Die Intervallnummer wird auch über den Bus 174 direkt zur Host-Schnittstelle 143 gesendet.
  • Die Empfangsverarbeitungsschaltung 142 erzeugt ein LPACKET BOUNDARY Signal 175 am Anfang jedes LPakets 26 und am Ende des letzten LPakets in einem MAC-Frame 21. Das LPACKET BOUNDARY Signal 175 ist mit der Zugangssteuerschaltung 144 gekoppelt, um eine Benachrichtigung der LPaket-Grenze bereitzustellen, so dass die entsprechende Verarbeitung eingeleitet werden kann.
  • Die Zugangssteuerschaltung 144 koordiniert alle Funktionen auf dem SMAC 100, einschließlich Implementation des CTDMA-Protokolls, Datenübertragung, Datenempfang, Datenaustausch mit dem Host-Prozessor 102 und Erzeugung des Sync-Ausgangssignals 120. Die Zugangssteuerschaltung 144 beinhaltet einen Reduzierter-Instruktionssatz-Computer, der nachflgend als RISC-Prozessor 400 bezeichnet wird (10), zusätzlich zu mehreren dedizierten Logikschaltungen. Der RISC-Prozessor 400 wird mit einem RISC-Bus 180 verbunden, der die Zugangssteuerschaltung 144 mit anderen Verarbeitungsschaltungen auf dem SMAC 100 verbindet. Der RISC-Bus 180 beinhaltet Adress-, Daten- und Steuerleitungen und ermöglicht die Kommunikation von Befehls- und Statusinformationen zwischen dem RISC-Prozessor 400 und den angeschlossenen Schaltungen. Insbesondere verwendet der RISC-Prozessor 400 den RISC-Bus 180 zum Erzeugen von Befehls-Strobe-Signalen, zum Testen einzelner Statusbits und sogar zum parallelen Lesen von "Byte"-Daten von selektierten Stellen in SMAC 100. Während die meisten E/A-Operationen zur Zugangssteuerschaltung 144 über den RISC-Bus 180 erfolgen, werden auch einige diskrete Ein- und Ausgänge verwendet, und diese Signale werden ggf. nachfolgend beschrieben.
  • Die Zugangssteuerschaltung 144 erzeugt auch mehrere Signale, die für den Betrieb des CTDMA-Protokolls relevant sind, und diese Signale werden in einem Bus mit der Bezeichnung "Sync"-Bus 176 miteinander gruppiert. Der Sync-Bus 176 hat Verbindung mit der Sync-Auswahlschaltung 145, um die Quellsignale bereitzustellen, von denen die Sync-Auswahlschaltung 145 das SYNC OUT Signal 120 erzeugen kann. Der Sync-Bus 176 hat auch Verbindung mit der Empfangsverarbeitungsschaltung 142 und der Host-Schnittstelle 143.
  • Weiterhin mit Bezug auf 5B, die Sendeverarbeitungsschaltung 141 erzeugt einen seriellen Strom von Phy-Symbolen für die Ausgabe vom SMAC 100. Der serielle Phy-Symbolstrom sowie andere assoziierte Steuersignale sind über den Ausgangsbus 161 mit der Modemschaltung 140 verbunden. Die Sendeverarbeitungsschaltung 141 führt die Funktionen des Erzeugens der Präambel 22, des Anfangsbegrenzers 23, des Datenfeldes 25 und des Endebegrenzers 28 für einen abgehenden MAC-Frame 21 durch. Präambel, Anfangs- und Endebegrenzer sind im Format festgelegt und werden intern von der Sendeverarbeitungsschaltung 141 erzeugt. Die Daten für die Übertragung im Datenfeld 25 des MAC-Frame werden entweder direkt von der Host-Schnittstellenschaltung 143 oder von der Zugangssteuerschaltung 144 über den RISC-Bus 180 zur Sendeverarbeitungsschaltung 141 gesendet. Für "normale" Ausgabedaten (d. h. vom Host 102) wird der Datenfeldinhalt zur Sendeverarbeitungsschaltung 141 direkt durch die Host-Schnittstellenschaltung 143 geliefert. Ein weiteres wichtiges Konzept ist jedoch die Fähigkeit des SMAC 100, automatisch auf bestimmte Stationsmanagementbefehle zu reagieren, in einigen Fällen damit, dass tatsächlich eine geeignete Stationsmanagement-Antwortmeldung gesendet wird. Bei Bedarf wird die Stationsmanagement-Antwortmeldung ohne Anweisung vom oder Unterbrechung des Host-Prozessors) 102 gesendet. Die Stationsmanagement-Antwortmeldung wird automatisch vom RISC-Prozessor in der Zugangssteuerschaltung 144 erzeugt, und die entsprechenden Daten zur Übertragung werden über den RISC-Bus 180 zur Sendeverarbeitungsschaltung 141 gesendet.
  • Die Sendeverarbeitungsschaltung 141 erzeugt ein TX READY Signal 181, um anzuzeigen, dass der Hauptteil eines MAC-Frame 21 gerade gesendet wird. Das heißt, das TX READY Signal 181 wird nach dem Senden des Anfangsbegrenzers 23 aktiviert und nach dem Senden des Endebegrenzers 28 deaktiviert. Das TX READY Signal 181 ist somit grob analog zu dem beim Empfang verwendeten RX READY Signal 166. Das TX READY Signal 181 ist mit der Host-Schnittstellenschaltung 143, der Zugangssteuerschaltung 144 und der Sync-Auswahlschaltung 145 für die Verwendung wie nachfolgend separat beschrieben verbunden. Ein weiterer von der Sendeverarbeitungsschaltung 141 erzeugte Sendeindikator ist ein TX BUSY Signal 182, das an die Zugangssteuerschaltung 144 angelegt wird. Ein wahres TX BUSY Signal gibt an, dass die Sendeverarbeitungsschaltung 141 gerade dabei ist, ein LPaket von der Host-Schnittstelle 143 zu erwerben. Insbesondere ist das TX BUSY Signal 182 während der Übertragung einer Kopfzeile (Felder 2224) oder eines Dateiende-Etiketts (Felder 2728) eines MAC-Frame 21 und auch nicht wahr, während die Zugangssteuerung 144 eine Antwort sendet. Mit dem TX BUSY Signal 182 wird die Zugangssteuerung 144 informiert, wenn die Sendeverarbeitungsschaltung 141 die Übertragung eines LPakets abgeschlossen hat. Wenn das TX BUSY Signal falsch wird, kann die Zugangssteuerschaltung 144 entweder eine andere LPaket-Übertragung einleiten oder den MAC-Frame 21 beenden.
  • Die Host-Schnittstellenschaltung 143 ist eine "strom"-(Stream)-orientierte Schnittstelle für den Host-Prozessor 102. Jeder Strom ist eine logische Gruppierung von Speicherstellen, die auf FIFO-Weise in der Host-Schnittstellenschaltung 143 organisiert ist. Es werden vorzugsweise insgesamt fünf Ströme implementiert, d. h. drei Ausgangs-(Sende)-Ströme und zwei Eingangs-(Empfangs)-Ströme. Die drei Ausgangsströme werden mit TX A, TX B und TX C bezeichnet. Auf eine Übertragung wartende Daten werden vom Host-Prozessor 102 über den Host-Bus 101 in die Ströme TX A bis TX C gesetzt. Der Host-Prozessor 102 hat auch die Fähigkeit, die Ausgangsströme als "sendebereit" zu "markieren". Ein STREAM STATUS Bus 185 wird von der Host-Schnittstellenschaltung 143 bereitgestellt, um anzuzeigen, welche der drei Ausgangsströme als "sendebereit" markiert sind. Die Zugangssteuerschaltung 144 wird auch über den RISC-Bus 180 über den "Sendebereit"-Status unterrichtet. Wenn der Knoten 20 gemäß CTDMA-Protokoll eine Sendeerlaubnis erhalten hat, dann gibt die Zugangssteuerschaltung 144 entsprechende Anweisungen über den RISC-Bus 180 aus, um die Sendeverarbeitungsschaltung 141 anzuweisen, mit dem Senden zu beginnen. Gleichzeitig wird der RISC-Bus 180 auch verwendet, um einen der "Bereit"-Ströme in der Host-Schnittstelle 143 für die tatsächliche Übertragung zu designieren. Die Information, welcher Strom übertragen werden soll, wird von der Host-Schnittstelle 143 zwischengespeichert und über einen. "Framestart"-Bus 186 an die Sendeverarbeitungsschaltung 141 angelegt. Die Host-Schnittstellenschaltung 143 setzt dann das erste oder oberste Datenwort für den gewählten Strom auf den "TX Word" Bus 187. Der TX-Word-Bus 187 überträgt das aktuelle Wort zur Sendeverarbeitungsschaltung 141. Der TX-Word-Bus 187 hat eine Breite von 16 Bit, so dass jeweils zwei Bytes gleichzeitig übertragen werden. Wenn die Sendeverarbeitungsschaltung 141 das aktuelle Wort auf dem TX-Word-Bus 187 zwischengespeichert hat, dann wird ein TAKE WORD Signal 188 aktiviert. Das TAKE WORD Signal 188 weist die Host-Schnittstelle 143 an, den gerade gewählten Strom zum nächsten Datenwort für die Übertragung weiterzuleiten.
  • Während der Übertragung von der Host-Schnittstelle 143 aktiviert die Sendeverarbeitungsschaltung 141 ein TX BUSY Signal 182. Das TX BUSY Signal 182 ist mit der Zugangssteuerschaltung 144 verbunden und wird für die Dauer jedes LPakets aktiviert, das von der Host-Schnittstelle gesendet wird. Ein TX READY Signal 181 wird nach dem Übertragen des Anfangsbegrenzers 23 wahr und bleibt für die Dauer der Übertragung wahr. Das TX READY Signal 181 ist mit der Zugangssteuerschaltung 144, der Host-Schnittstelle 143 und als Eingang zur Sync-Auswahlschaltung 145 geschaltet.
  • Die Sync-Auswahlschaltung 145 hat die Funktion, eine von mehreren Signalquellen für die Verwendung beim Erzeugen des SYNC OUT Signals 120 zu wählen. Der RISC-Bus 180 hat Verbindung mit der Sync-Auswahlschaltung 145 und dient zum Steuern der Auswahl der Signalquelle.
  • Im Hinblick auf diese Übersicht über den SMAC 100 wird eine ausführlichere Beschreibung seiner Subsysteme verständlich.
  • SMAC-Modem
  • Gemäß 7 verarbeite t. das Modem 140 das PTC IN Signal 113 und das NET IN Signal 107 in einer RX-Decodierschaltung 250. Die RX-Decodierschaltung 250 überwacht jedes der Signale 113 und 107, um zu ermitteln, welches der beiden für eine nachfolgende Verarbeitung ausgewählt werden soll. Beim normalen Betrieb ist jeweils immer nur eines der Signale 113 und 107 aktiv. Die eingehenden Daten von der gewählten Quelle werden mit dem PHY CLOCK Signal 150 synchronisiert und als RX PHY SYMBOLS Signal 251 ausgegeben. Ein weiterer Ausgang von der RX-Decodierschaltung 250 ist als RX FRAME Signal 252 designiert. Das RX FRAME Signal 252 wird aktiviert, wenn die selektierten Eingangsdaten am RX PHY SYMBOLS Signal 251 als gültige Präambel 22 erkannt sind (siehe 6). Ein PTC ACTIVE Signal 253 wird ebenfalls von der RX-Decodierschaltung 250 erzeugt, um anzuzeigen, wenn das PTC IN Signal 113 als aktiver Kanal gewählt ist. Das PTC ACTIVE Signal 253 ist sowohl mit einer TX-Steuerschaltung 255 im Modem 140 als auch extern über den Eingangsbus 162 mit der Empfangsverarbeitungsschaltung 142 gekoppelt. Das PTC ACTIVE Signal 253 wird von diesen jeweiligen Schaltungen 255 und 142 als Anzeige dafür verwendet, dass der Programmierterminal 25 aktiv ist, was wiederum spezielle Verarbeitungsaktionendiktiert, die nachfolgend beschrieben werden.
  • Die Sendeverarbeitungsschaltung 141 empfängt auf dem Ausgangsbus 161 ein TX ENABLE Signal 256 und ein END BLANKING Signal 257. Das TX ENABLE Signal 256 und das END BLANKING Signal 257 sind mit der RX-Decodierschaltung 250 und der TX-Steuerschaltung 255 gekoppelt. In der RX-Decodierschaltung 250 werden die Signale 256 und 257 beim Wählen des aktiven Kanals wie nachfolgend näher beschrieben verwendet. Für die TX-Steuerschaltung 255 werden die Signale 256 und 257 zum Steuern des Sendeprozesses verwendet, ebenfalls wie nachfolgend beschrieben wird.
  • Die Modem-Schaltung 140 beinhaltet eine Taktgeneratorschaltung 260, die Datentakte und andere Synchronisationssignale erzeugt, die im SMAC 100 verwendet werden. Über das oben erörterte PHY CLOCK Signal 150 und BYTE PULSE Signal 151. hinaus erzeugt die Taktgeneratorschaltung 260 auch ein BIT CLOCK Signal 261 und ein BYTE CLOCK Signal 262. Das BIT CLOCK und das BYTE CLOCK Signal 261 und 262 sind über den Eingangsbus 162 jeweils extern mit der Empfangsverarbeitungsschaltung 142 gekoppelt und werden auch lokal im Modem 140 verwendet. Das BIT CLOCK Signal 261 hat eine Frequenz von fünf Megahertz oder der Hälfte der Phy-Symbolrate, da es zwei Phy-Symbole pro Manchester-Datenbit gibt. Ferner wird das BIT CLOCK Signal 261 zeitlich so gesteuert, dass seine aktive Flanke dem "wahren" Phy-Symbolteil jedes Manchester-Bits entspricht. Wie in der Technik bekannt ist, umfasst jedes Manchester-Bit zwei Phy-Symbole, die binäre Komplemente voneinander sein müssen, damit sie als gültiger Manchester-Code angesehen werden. Das heißt, ein Phy-Symbol oder Manchester-Halbbit bedeutet "wahre" Daten, während die andere Hälfte des Manchester-Bits Umkehr- oder Komplementdaten sind. Somit werden durch Abtasten des Phy-Symbolstroms mit der aktiven Flanke des BIT CLOCK Signals 261 die tatsächlichen (d. h. "wahren") Manchester-Daten zurückgewonnen. Das BYTE CLOCK Signal 262 ist dem Bittakt frequenzmäßig durch acht dividiert gleich, so dass die aktive Flanke einmal alle acht Bit auftritt.
  • Eine ordnungsgemäße Ausrichtung der BIT CLOCK, BYTE CLOCK und BYTE PULSE Signale 261, 262 und 151 ist eine wichtige Funktion des SMAC 100. Eine Begrenzererkennungsschaltung 265 dient zum Erkennen einer exakten Sequenz von Phy-Symbolen, die einen "Anfangsbegrenzer" 23 und einen "Endebegrenzer" 28 bildet. Die Anfangs- und Endebegrenzer an sich sind dahingehend neu, dass sie auf Mustern von Phy-Symbolen anstatt von Manchester-Datenbits basieren. Wie oben erwähnt, werden die bevorzugten Anfangs- und Endebegrenzer-Phy-Symbolmuster so konstruiert, dass sie absichtlich ungültige Manchester-Codes beinhalten und demzufolge von früheren Manchester-Verarbeitungsschaltungen (nicht dargestellt) einfach als "falsche" Daten zurückgewiesen würden. Eine ausführliche Beschreibung von Aufbau und Verwendung des Anfangs- und Endebegrenzers werden nachfolgend ausführlich beschrieben. Im Allgemeinen wird der Anfangsbegrenzer 23 verwendet, um einen präzisen "Synchronisier"-Punkt für die eingehenden Daten festzulegen. Vorübergehend auf 6 bezugnehmend, wenn ein Anfangsbegrenzer 23 erfolgreich erkannt wird, dann aktiviert die Begrenzererkennungsschaltung 265 ein ALIGN BYTE Signal 266, um anzuzeigen, dass die eingehenden Phy-Symbole an einer exakten Byte- und Bit-Grenze sind. Und genau in diesem Moment wurde das letzte Phy-Symbol des Anfangsbegrenzers gerade empfangen, und das erste Phy-Symbol des ersten Bits und das erste Byte der Quelladresse 24 sind das nächste empfangene Signal. Das ALIGN BYTE Signal 266 veranlasst die Taktgeneratorschaltung 260, alle Taktsignale BIT CLOCK 261, BYTE CLOCK 262 und BYTE PULSE 151 jeweils auf diese präzise Bit/Byte-Grenze zu synchronisieren.
  • Das Modem 140 verwendet eine Loopback-Konfiguration, um zwischen empfangenen Daten oder abgehenden Sendedaten für eine nachfolgende Verarbeitung durch die Empfangsverarbeitungsschaltung 142 auszuwählen. Insbesondere wird ein Paar Multiplexer 267 und 268 mit jeweils zwei Eingängen verwendet. Serielle Phy-Symbole für die Übertragung werden von der Sendeverarbeitungsschaltung 141 auf einer TX PHY SYMBOLS Leitung 269 über den Ausgangsbus 161 bereitgestellt. Ein Multiplexer 267 wird zum Auswählen zwischen entweder den RX PHY SYMBOLS 251 oder den TX PHY SYMBOLS 269 verwendet. Der Ausgang des Multiplexers 267 wird als PHY DATA Signal 270 bezeichnet und ist mit dem Eingangsbus 162 und anderen Schaltungen im Modem 140 wie nachfolgend ausführlich beschrieben gekoppelt. Das PHY DATA Signal 270 kann somit Phy-Symbole entweder senden oder empfangen, je nach der Auswahl des Multiplexers 267. Der andere Multiplexer 268 dient zum Auswählen zwischen dem RX FRAME Signal 252 oder dem TX ENABLE Signal 256. In diesem Zusammenhang wird das TX ENABLE Signal 256 als "Frame"-Signal verwendet, da die TX PHY SYMBOLS 269 immer als "in Frame" angesehen werden, wenn das TX ENABLE Signal 256 wahr ist. Das RX FRAME Signal 252 wird von der RX DECODE Schaltung 250 als "Schätzung" erzeugt, dass ein eingehender MAC-Frame unterwegs ist. Daher wird der Ausgang des Multiplexers 268 als FRAME ESTIMATE Signal 165 bezeichnet und reflektiert den "in Frame" Status des gewählten RX PHY SYMBOLS Signals 251 oder TX PHY SYMBOLS Signals 269. Ein TX RESERVE Signal 271 wird an den Ausgangsbus 161 von der Sendeverarbeitungsschaltung 141 angelegt und ist mit einem Select-Eingang an jedem der Multiplexer 267 und 268 verbunden, um zwischen den jeweiligen RX- und TX-Signalen auszuwählen. Das TX RESERVE Signal 271 wird zu Beginn einer Sendesequenz "wahr" und bleibt für die Dauer der Übertragung plus einer zusätzlichen oder "Reserve"-Zeit nach dem Ende der Übertragung "wahr". Die zusätzliche "Reserve"-Zeit ergibt eine "Ruhe"-Periode ohne Netzaktivität nach dem Ende der Übertragung. Die "Reserve"-Zeit nach dem Ende der Übertragung wird hierin auch als Ausblendintervall bezeichnet. Das END BLANKING Signal 257 wird von anderen nachfolgend beschriebenen Schaltungen verwendet und bedeutet, dass das Ausblend-(Blanking)-Interval abgelaufen ist.
  • Weiter mit Bezug auf 7, das PHY DATA Signal 270 ist sowohl mit einem AND-Gate 274 als auch mit einer zweiphasigen TX-Vortreiberschaltung 275 gekoppelt. Das AND-Gate 274 und die zweiphasige TX-Vortreiberschaltung 275 empfangen beide jeweils separate "Enable"- (Freigabe) Eingänge 276 und 277 von der TX-Steuerschaltung 255. Der zweiphasige TX-Vortreiber 275 legt jeweils die NET OUT und NET OUT INV Ausgänge 108 und 109 an. Wenn das Freigabesignal 277 in den zweiphasigen TX-Vortreiber 275 "falsch" ist, dann sind jeweils beide NET OUT und NET OUT INV Ausgänge 108 und 109 gleich, d. h. auf einem logisch tiefen Pegel, so dass keine Nettospannung an den Transformator 104 angelegt wird. Wenn das Freigabesignal 277 in die zweiphasige TX-Vortreiberschaltung 275 "wahr" ist, dann werden die jeweiligen NET OUT und NET OUT INV Ausgänge 108 und 109 komplementär zueinander gemacht und ändern ihren Zustand je nach dem angeschlossenen PHY DATA Signal 270. Wenn also der zweiphasige TX-Vortreiber 275 freigegeben ist, dann erzeugen die NET OUT und NET OUT INV Ausgänge 108 und 109 jeweils ein anderes Signal, um PHY DATA 270 über den Transformator 104 auf das Netz 10 zu treiben.
  • In Verbindung mit der oben beschriebenen Loopback-Fähigkeit implementiert die TX-Steuerschaltung 255 die oben beschriebene Repeater-Fähigkeit zwischen Programmierterminal-Verbinder 110, Host 102 und Netz 10. Im ersten Fall ist, wenn eingehende Daten auf der PTC IN Leitung 113. empfangen werden, das PTC ACTIVE Signal 253 "wahr". In diesem Fall wird das Freigabesignal 276 zum AND-Gate 274 von der TX-Steuerschaltung 255 auf "falsch" gesetzt, um zu verhindern, dass das PHY DATA Signal 270 auf der PTC OUT Leitung 114 zurückgeführt wird. Stattdessen wird das Freigabesignal 277 für den zweiphasigen TX-Vortreiber 275 auf "wahr" gesetzt, und die PTC IN Daten 113, jetzt auf der PHY DATA Leitung 270, werden durch den zweiphasigen TX-Vortreiber 275 auf das Netz 10 geschaltet.
  • In einem zweiten Fall wird, wenn die Netzeingangsdaten am NET IN Signal 107 empfangen werden, das PTC IN Signal 113 zunächst bei normalem Betrieb ruhig sein, und das PTC ACTIVe Signal 253 ist "falsch". In diesem Fall werden die NET IN Daten 107 als PHY DATA Signal 270 gewählt. In diesem Fall aktiviert die TX-Steuerschaltung 255 die Freigabeleitung 276 zum AND-Gate 274. Die NET IN Daten auf der PHY DATA Leitung 270 werden somit zum PTC OUT Signal 114 und weiter zum Programmierterminal-Verbinder 110 durchgeleitet. Auf diese Weise werden eingehende Daten vom Netz 10 automatisch zum Programmierterminal-Verbinder 110 und zum Programmierterminal 18 (falls angeschlossen) weitergeleitet. Beim Empfangen von Daten auf dem NET IN Signal 107 (d. h. PTC ACTIVE 253 und TX ENABLE 256 sind beide "falsch") deaktiviert die TX-Steuerschaltung 255 die Leitung mit dem zweiphasigen TX-Vortreiberfreigabesignal 277, um zu verhindern, dass die eingehenden Daten auf die eingehenden Netzwerkdaten zurückgetrieben werden und diese stören. Nach dem Empfang des NET IN Signals 107 oder des PTC IN Signals 113 wird das andere Signal ausgeblendet, da abgehende Daten aufgrund der Repeating-Funktion dort bald erscheinen werden.
  • In einem dritten Fall wird der Knoten 20 für die Übertragung (TX ENABLE Signal 256 ist "wahr") freigegeben, und beide PTC IN und NET IN Signale 113 und 107 sind jeweils normalerweise ruhig. Die TX ENABLE und END BLANKING Signale 256 und 257 sind jeweils zum Ermitteln des Sendestatus des Knotens 20 mit der TX-Steuerschaltung 255 gekoppelt. Wenn die Übertragung freigegeben ist, werden die TX PHY SYMBOLS 269 über die PHY DATA Leitung 270 gekoppelt, und die TX-Steuerschaltung 255 gibt beide Leitungen 276 und 277 jeweils zum AND-Gate 274 und zur zweiphasigen TX-Vortreiberschaltung 275 frei. Auf diese Weise werden die Sendedaten mit dem Programmierterminal-Verbinder 110 und dem Netz 10 gekoppelt.
  • Das PHY DATA Signal 270 ist auch mit der Begrenzererkennungsschaltung 265 gekoppelt, die Anfangs- und Endebegrenzer 23 und 28 erkennt und mehrere Signale erzeugt, die in der nachfolgenden Verarbeitung des Meldungsframe verwendet werden. Der Betrieb der Begrenzererkennungsschaltung 265 wird nachfolgend umfassend beschrieben. Im Allgemeinen tastet die Begrenzererkennungsschaltung 265 das PHY DATA Signal 270 kontinuierlich in einem Versuch ab, die genaue Sequenz von Phy-Symbolen zu erkennen, die einen gültigen Anfangsbegrenzer 23 bildet. Wie zuvor beschrieben, müssen, da der Anfangsbegrenzer 23 absichtlich Phy-Symbolsequenzen beinhaltet, die Manchester-Code-Verletzungen sind, alle Phy-Symbole betrachtet werden, und somit wird das PHY CLOCK Signal 150 mit der Begrenzererkennungsschaltung 265 verbunden. Nach dem Erkennen eines gültigen Anfangsbegrenzers 23 aktiviert die Begrenzererkennungsschaltung 265 das RX READY Signal 166, das den genauen Startpunkt des ersten Datenbits und des ersten Datenbytes des Meldungsframe anzeigt (siehe auch Timing-Diagramm von 6). Nach dem Anfangsbegrenzer 23 werden weitere Manchester-Verletzungen bis zu den bekannten Manchester-Verletzungen im Endebegrenzer 28 weder erwartet noch zugelassen. Die Begrenzererkennungsschaltung 265 prüft auch jedes Datenbit einzeln auf eine Manchester-Code-Verletzung und aktiviert ein VIOLATION-Ausgangssignal 280, um eine solche Verletzung anzuzeigen. Das VIOLATION-Signal 280 ist über den Eingangsbus 162 mit der Empfangsverarbeitungsschaltung 142 gekoppelt. Nach dem Empfang eines gültigen Anfangsbegrenzers wird, wenn keine weitere. Manchester-Verletzung vor dem Empfang eines gültigen Endebegrenzers erkannt wird, ein BAD FRAME Signal 281 aktiviert und über den Eingangsbus 162 mit der Empfangsverarbeitungsschaltung 142 gekoppelt.
  • Darüber hinaus ermöglicht das CTDMA-Protokoll einen absichtlichen Abbruch eines Meldungsframe 21. Ein absichtlicher Abbruch wird durch den Empfang eines zweiten Anfangsbegrenzers nach dem ersten Anfangsbegrenzer angezeigt, der den MAC-Frame gestartet hat. Wenn eine zweite Anfangsbegrenzersequenz erkannt wird, dann wird ein RX ABORT Signal 282 von der Begrenzererkennungsschaltung 265 aktiviert und über den Eingangsbus 162 mit der Empfangsverarbeitungsschaltung 142 gekoppelt.
  • Eine CRC-Prüfschaltung 285 ist für die Verwendung in Verbindung mit der Begrenzererkennungsschaltung 265 vorgesehen, um zu überprüfen, ob ein eingehender Meldungsframe einen gültigen CRC 27 beinhaltet. Die CRC-Prüfschaltung 285 empfängt das PHY DATA Signal 270 und wird vom BIT CLOCK Signal 261 so getaktet, dass. nur das "Daten"-Halbbit des PHY DATA Signals 270 zum Errechnen des CRC abgetastet wird. Vor dem Empfang eines gültigen Anfangsbegrenzers wird die CRC-Prüfschaltung 285 durch ein RESET CRC Signal 286 zurückgestellt gehalten, das von der Begrenzererkennungsschaltung 265 angelegt wird. Nach dem Empfang eines gültigen Anfangsbegrenzers 23 wird das RESET CRC Signal 286 freigegeben, und die CRC-Prüfschaltung 285 beginnt mit der Berechnung. Die CRC-Prüfschaltung 285 sendet einen CRC OK Ausgang 287 zur Begrenzererkennungsschaltung 265, um eine erfolgreiche CRC-Berechnung anzuzeigen. Die Begrenzererkennungsschaltung 265 tastet das CRC OK Signal 287 zum geeigneten Zeitpunkt nach Meldungsabschluss wie nachfolgend beschrieben ab. Die CRC-Prüfschaltung 285 arbeitet auf konventionelle Weise, wie der Fachperson bekannt ist, um eine wortweise 16-Bit-Prüfsumme der eingehenden Daten zu erzeugen. Das CRC OK Signal 287 wird immer dann aktiviert, wenn die errechnete Prüfsumme gleich einem festen, vorbestimmten 16-Bit-Wert ist.
  • Normalerweise erfolgt nach dem Empfang eines gültigen Anfangsbegrenzers 23 die Verarbeitung des Meldungsframe 21 ohne Aktivierung der jeweiligen Signale VIOLATION, BAD FRAME bzw. RX ABORT 280282. Am Ende des Meldungsframe wird ein Endebegrenzer 28 empfangen, der wiederum absichtliche Manchester-Code-Verletzungen beinhaltet. In diesem Fall ist es normal und wird erwartet, dass eine Anzeige des VIOLATION Signals 280 an irgendeiner Stelle vor der vollständigen Erkennung des Endebegrenzers 28 empfangen wird. Sobald die erste Manchester-Code-Verletzung im Endebegrenzer erkannt wird, wird das RX READY Signal 166 auf "falsch" gesetzt, und die Begrenzererkennungsschaltung 265 tastet weiter auf Erkennung des vollen Endebegrenzers ab. Wenn der volle Endebegrenzer 28 von der Begrenzererkennungsschaltung 265 genau empfangen und erkannt ist, wird das CRC OK Signal 287 abgetastet. Je nach dem Zustand des CRC OK Signals wird entweder ein CRC GOOD Signal 290 oder ein CRC BAD PULSE Signal 291 von der Begrenzererkennungsschaltung 265 aktiviert. Beide CRC-Statussignale 290 und 291 werden über den Eingangsbus 162 mit der Empfangsverarbeitungsschaltung 142 gekoppelt.
  • Die Begrenzererkennungsschaltung 265 ist auch mit dem RISC-Bus 180 verbunden. Bestimmte der von der Begrenzererkennungsschaltung 265 erzeugten Statusanzeigen stehen daher für den Eingang in den RISC-Prozessor 400 durch eine entsprechende Decodierung wie nachfolgend ausführlich beschrieben zur Verfügung.
  • Gemäß 8 beinhaltet die Begrenzererkennungsschaltung 265 im Modem 140 ein fünfzehnstufiges Schieberegister 340, das vom PHY CLOCK Signal 150 mit der Phy-Symbolrate getaktet wird. Das PHY DATA Signal 270 ist als serielle Dateneingabe in das Schieberegister 340 geschaltet und bewirkt, dass der binäre Zustand jedes sequentiellen Phy-Symbols in das Schieberegister 340 verschoben wird. Das Schieberegister 340 erzeugt einen parallelen Ausgang aller fünfzehn Stufen. Die fünfzehn parallelen Ausgangsleitungen des Schieberegisters 340 sind mit fünfzehn Leitungen eines parallelen Busses 341 verbunden. Der Bus 341 beinhaltet insgesamt sechzehn Leitungen, wobei die sechzehnte Leitung (nicht die fünfzehn Leitungen vom Register 340) mit dem PHY DATA Signal 270 verbunden ist. Auf diese Weise enthält der Bus 341 einen Sechzehn-Phy-Symbol-"Schnappschuss", der aus dem letzten oder aktuellen empfangenen Phy-Symbol (PHY DATA Signal 270) plus den fünfzehn vorherigen Phy-Symbolen (von Register 340) besteht. Es ist wichtig zu bemerken, dass der Bus 341 rohe Phy-Symbole, keine Datenbits enthält. Die sechzehn Phy- Symbole belegen den Platz von "acht Datenbits", werden aber in separater Phy-Symbolform gehalten, ohne Rücksicht auf eine mögliche Dateninterpretation. Die Sechzehn-Phy-Symbolsequenz auf dem Bus 341 ist mit einer Anfangsbegrenzer-Erkennungslogikschaltung 342 und mit einer Endebegrenzer-Erkennungslogikschaltung 343 verbunden. Die Anfangsbegrenzer-Erkennungslogikschaltung 342 beinhaltet geeignete Logikgatter, um ein bestimmtes Phy-Symbolmuster (d. h. den "Anfangsbegrenzer") auf dem Bus 341 zu erkennen.
  • Das für den Anfangsbegrenzer bevorzugte Phy-Symbol-Muster ist hexadezimales "D326" oder ein Binärmuster von "1101001100100110" (in der Reihenfolge von links nach rechts wie übertragen), das ungültige Manchester-codierte Daten enthält. Wie oben beschrieben, ist dieses Phy-Symbol-Muster des Anfangsbegrenzers keinesfalls arbiträr, sondern klug ausgedacht, um Leistungscharakteristiken zu erzielen, die die jedes anderen möglichen Musters von 16-Phy-Symbolen übertreffen. Dieses besondere Muster erhöht die Wahrscheinlichkeit, von einem Knoten erkannt zu werden, und minimiert die Wahrscheinlichkeit, dass Zufallsfehler in den über das Netz gesendeten Daten als Begrenzer fehlinterpretiert werden.
  • Wenn das Phy-Symbolmuster des Busses 341 genau mit dem hexadezimalen "D326" Anfangsbegrenzermuster übereinstimmt, dann aktiviert die Anfangsbegrenzererkennungslogik 342 ein START DELIM DETECTED Signal 345. Genau in diesem Moment wurde der Anfangsbegrenzer 23 gerade empfangen, und es ist dann bekannt, dass das eingehende PHY DATA Signal 270 an einer Bit- und Byte-Grenze ist. Das START DELIM DETECTED Signal 345 ist mit einer Begrenzererkennungszustandsmaschine 346 verbunden, um den Moment anzuzeigen, an dem der Anfangsbegrenzer 23 erkannt wird.
  • Auf ähnliche Weise tastet die Endebegrenzer-Erkennungslogik 343 den Bus 341 kontinuierlich auf das Auftreten einer gültigen Endebegrenzersequenz 28 ab. Die bevorzugte Endebegrenzer-Sequenz von Phy-Symbolen ist hexadezimal "96CC" oder ein Binärmuster von "1001011011001100" (in der Reihenfolge von links nach rechts wie übertragen). Wenn ein Endebegrenzer 28 erkannt wird, dann aktiviert die Endebegrenzer-Erkennungslogik 343 ein END DELIM DETECTED Signal 347, um es der Begrenzererkennungszustandsmaschine 346 anzuzeigen.
  • Die Begrenzererkennungsschaltung 265 beinhaltet eine Statuslogikschaltung 350 zum Erzeugen der Statussignale RX ABORT 282, CRC GOOD 290 und CRC BAD PULSE 291. Die Statuslogikschaltung 350 wird durch das PHY CLOCK Signal 150 getaktet und empfängt das CRC OK Signal 287 als Eingang. Drei weitere Eingänge in die Statuslogikschaltung 350 werden von der Begrenzererkennungszustandsmaschine 346 angelegt, nämlich ein ABORT Signal 351, ein CHECK CRC Signal 352 und ein HOLD STATUS Signal 353. Die Statuslogikschaltung 350 beinhaltet Register, die vom PHY CLOCK Signal 150 zum Halten der jeweiligen Zustände der RX ABORT und CRC GOOD Signale 282 bzw. 290 getaktet werden. Die Begrenzererkennungszustandsmaschine 346 aktiviert das ABORT "Signal 351, wenn ein Abbruchzustand erkannt wird, wie nachfolgend beschrieben wird. Das CRC GOOD Signal 290 wird durch AND-Verknüpfen des CHECK CRC Signals 352 mit dem CRC OK Signal 287 und Zwischenspeichern des Ergebnisses erzeugt. Die Begrenzererkennungszustandsmaschine 346 aktiviert das CHECK CRC Signal 352 nur dann, wenn der CRC getestet werden soll. Wenn das HOLD STATUS Signal 353 von der Statuslogikschaltung 350 empfangen wird, wird der Zustand seiner Ausgangssignale trotz Änderungen der Eingangssignale gehalten, die sonst die Ausgangssignale beeinflussen würden.
  • Die Begrenzererkennungsschaltung 265 beinhaltet auch eine Verletzungserkennungsschaltung 360, die die eingehenden Phy-Symbole auf Manchester-Code-Verletzungen prüft und das VIOLATION Signal 280 aktiviert, wenn eine Verletzung während des Empfangs eines Meldungsframe 21 erkannt wird.
  • Weiter mit Bezug auf 8, zusätzlich zu den oben beschriebenen Ein- und Ausgangssignalen empfängt die Begrenzererkennungszustandsmaschine 346 auch als Eingänge das BYTE PULSE Signal 151, das PHY CLOCK Signal 150 und ein SHUTDOWN Signal 369. Das PHY CLOCK Signal 150 wird als Grundtakt zum Betreiben der Zustandsmaschine verwendet, während das BYTE PULSE Signal 151 von der Zustandsmaschine in Fällen verwendet wird, in denen Zustandsübergänge an "Byte"-Grenzen erfolgen. Das SHUTDOWN Signal 369 wird von einer Decodierbefehl-Instruktionsschaltung 368 erzeugt. Die Decodierbefehl-Instruktionsschaltung 368 ist mit dem RISC-Bus 180 verbunden und beinhaltet geeignete Logikgatter zum Decodieren der Adress- und Befehlsleitungen auf dem RISC-Bus 180, um ein vorbestimmtes Muster zu erkennen, das die Ausgabe des "Shutdown"-Befehls vom RISC-Prozessor repräsentiert. Auf diese Weise kann der RISC-Prozessor in der Tat ein "Software-Reset" an die Begrenzererkennungszustandsmaschine 346 ausgeben, wenn anomale Zustände erkannt werden. Die von der Begrenzererkennungszustandsmaschine 346 erzeugten Ausgänge beinhalten das oben beschriebene VALID FRAME Signal 365 plus dem ALIGN BYTE Signal 266, dem RX READY Signal 166 und dem BAD FRAME Signal 281.
  • Die Begrenzererkennungszustandsmaschine 346 wird als herkömmliche Zustandsmaschine mit Eingängen und Ausgängen wie oben beschrieben implementiert. 9 zeigt ein Zustandsübergangsdiagramm, in dem jede rechteckige Box einen "Zustand" repräsentiert und mit einem assoziierten Zustandsnamen beschriftet ist. Wenn einem der Ausgänge ein neuer Wert in einem Zustand zugewiesen wird, dann kommt eine gestrichelte Linie unter dem Zustandsnamen hinzu, und die neuen Ausgangszuweisungen sind unter der gestrichelten Linie aufgeführt. Die für Zustandsübergänge notwendigen Eingangsbedingungen sind außerhalb der "Zustands"-Boxen neben einem Pfeil dargestellt, der den nächsten Zustand für diesen Übergang anzeigt. In den Übergangsbedingungen wurde die Bedingung "PHY CLOCK" der Einfachheit halber weggelassen, da verstanden wird, dass alle Zustandsübergänge durch die aktive Flanke des PHY CLOCK Signals 150 getaktet werden.
  • Die Begrenzererkennungszustandsmaschine 346 wird nach einer Aktivierung eines konventionellen Hardware-Reset (nicht dargestellt) zurückgestellt. Der "Reset"-Eintrittszustand ist durch ein Oval 370 dargestellt. Vom Reset 370 tritt sie unbedingt in einen ersten "Ruhe"-Zustand 371 ein. Im "Ruhe"-Zustand 371 werden die Ausgangssignale wie angegeben initialisiert. Die Begrenzererkennungszustandsmaschine 346 bleibt im "Ruhe"-Zustand 371, bis das START DELIM DETECTED Signal 345 aktiviert wird. Zu diesem Zeitpunkt erfolgt ein Übergang in einen "Start"-Zustand 372, und gleichzeitig wird ein aktiver Impuls auf dem ALIGN BYTE Signal 266 ausgegeben. Wie oben beschrieben, bewirkt das ALIGN BYTE Signal 266, dass die Bit- und Byte-Takte auf der Bit- und Byte-Grenze hinter dem Anfangsbegrenzer 23 ausgerichtet werden. Im "Start"-Zustand 372 werden das RX READY Signal 166 und das VALID FRAME Signal 365 auf "wahr" gesetzt, um den Start eines MAC-Frame 21 anzuzeigen. Vorausgesetzt, dass nach dem Anfangsbegrenzer 23 keine Manchester-Verletzungen erkannt werden, bleibt der "Start"-Zustand 372 für eine Zeit von einem "Byte" aktiv, d. h. bis zur nächsten Aktivierung des BYTE PULSE Signals 151. An dieser Stelle erfolgt ein Übergang zu einem "zweites Byte" Zustand 373. Im "zweites Byte" Zustand 373 wird das RESET CRC Signal 286 freigegeben, damit die CRC-Prüfschaltung 285 mit dem Akkumulieren der CRC-Prüfsumme beginnen kann. Auch hier wird wieder, unter der Voraussetzung, dass keine weiteren Manchester-Verletzungen vorliegen, der "zweites Byte" Zustand 373 nach einer Zeit von einem "Byte" verlassen, und es erfolgt ein Übergang in einen "drittes Byte" Zustand 374. Ebenso geht der "drittes Byte" Zustand 374 nach einer Zeit von einem "Byte" in einen "4+ Byte" Zustand 375 über. Vor dem Empfang von vier vollständigen Bytes wird keine eingehende Meldung akzeptiert, da die Mindestlänge für jeden MRC-Frame vier Bytes beträgt. Nach dem Erreichen des "4+ Bytes" Zustands 375 wird jedoch erwartet, dass eine Meldung unterwegs ist. Der "4+ Bytes" Zustand 375 bleibt dann für die Dauer des MAC-Frame aktiv. Der Austritt aus dem "4+ Bytes" Zustand 375 erfolgt nur nach dem Auftreten einer Manchester-Verletzung, wie durch das VIOLATION Signal 280 angezeigt wird. Zu diesem Zeitpunkt erfolgt ein Übergang in einen "Verletzungsprüf"-Zustand 376. Es wird unter normalen Bedingungen davon ausgegangen, dass die erkannte Verletzung die absichtliche Manchester-Verletzung im Endebegrenzer 28 ist, aber dies ist nicht unbedingt. der Fall. Eine Manchester-Verletzung kann stattdessen entweder ein zweiter Anfangsbegrenzer oder ein tatsächlicher Manchester-Fehler sein. Egal wie die "Verletzung" aufgetreten ist, das RX READY Signal 166 wird aus gezwungen, da der aktuelle MAC-Frame jetzt enden muss, entweder normal oder fehlerbedingt.
  • Im "Verletzungsprüf"-Zustand 376 erfolgt eine Wartezeit, bis das Byte, in dem die Verletzung aufgetreten ist, komplett ist. Zu diesem Zeitpunkt kann ein Test durchgeführt werden, ob die "Verletzung" tatsächlich ein gültiger Endebegrenzer 28 war oder ob die "Verletzung" auf einen anderen Zustand zurückzuführen ist. Nach dem Ende des fraglichen Byte (BYTE PULSE Signal 151 ist "wahr") und wenn das END DELIM DETECTED Signal 347 aktiviert ist, erfolgt ein Übergang in einen "normale Terminierung" Zustand 377. Im "normale Terminierung" Zustand 377 fällt das HOLD STATUS Signal 353 ab, so dass neue Statusbedingungen von der Statuslogikschaltung 350 eingegeben werden können. Gleichzeitig wird das CHECK CRC Signal 352 aktiviert, um anzuzeigen, dass der CRC geprüft werden muss. Der "normale Terminierung" Zustand 377 wird unbedingt nach einer Dauer des PHY CLOCK Signals 150 zurück in den "Ruhe"-Zustand 371 verlassen.
  • Wenn gefunden wird, dass die "Verletzung" im "Verletzungsprüf"-Zustand 376 kein gültiger Endebegrenzer war, dann ist keine weitere Maßnahme notwendig. Eine Möglichkeit ist die, dass die "Verletzung" auf den Empfang eines zweiten Anfangsbegrenzers zurückzuführen ist. Wie zuvor erörtert, ist ein zweiter nachfolgender Anfangsbegrenzer eine absichtliche Abbruchanforderung, und wenn gefunden wird, dass dies der Fall ist, dann erfolgt ein Übergang in einen "Abbruch"-Zustand 378. Im "Abbruch"-Zustand wird das HOLD STATUS Signal 353 auf "falsch" gesetzt, um den vorherigen Status zu löschen, und das ABORT Signal 351 wird aktiviert, um zu bewirken, dass das RX ABORT Signal 282 auf "wahr" zwischengespeichert wird. Der "Abbruch"-Zustand 378 geht nach einem PHY CLOCK Zyklus unbedingt zurück in den "Ruhe"-Zustand 371.
  • Ein weiterer möglicher Grund für das Auftreten einer "Verletzung" im "Verletzungsprüf"-Zustand 376 ist der, dass im Hauptteil eines MAC-Frame 21 tatsächlich ein Manchester-Fehler aufgetreten ist, d. h. aufgrund eines Anfangs- oder Endebegrenzers 23 oder 28. In diesem Fall erfolgt ein Übergang in einen "schlechte Terminierung" Zustand 379. Im "schlechte Terminierung" Zustand 379 fällt die HOLD STATUS Leitung 353 wieder ab, um einen von der Statuslogik 350 evtl. gehaltenen Status zu löschen. Das BAD FRAME Ausgangssignal 281 wird ebenfalls aktiviert und dient als direkter Ausgabeimpuls, der den "schlechte Terminierung" Zustand anzeigt. Der "schlechte Terminierung" Zustand 379 geht ebenfalls nach einem Phy-Taktzyklus zurück in den "Ruhe"-Zustand 371.
  • Wieder in einem der Zustände 372374, es wurden nicht genügend Bytes empfangen, um einen vollständigen MAC-Frame 21 zu bilden. Es ist jedoch weiterhin möglich, die Abbruchsequenz aufzurufen (d. h. einen zweiten Anfangsbegrenzer). Wenn eine Verletzung in einem der Zustände 372374 auftritt, dann wird in einen "vorzeitige Verletzung" Zustand 380 eingetreten. Wenn die "Verletzung" sich als ein zweiter Anfangsbegrenzer herausstellt, dann wird wie zuvor in den "Abbruch"-Zustand 378 eingetreten. Ebenso wird, wenn die "Verletzung" auf etwas anderes als einen zweiten Anfangsbegrenzer zurückzuführen ist, der "schlechte Terminierung" Zustand 379 aufgerufen.
  • Schließlich erfolgt, wenn das SHUTDOWN Signal 369 zu irgendeinem Zeitpunkt aktiviert wird, ein sofortiger Übergang in den "schlechte Terminierung" Zustand 379. Dadurch wird ein eventueller vorheriger Status beseitigt und die Begrenzererkennungszustandsmaschine 346 wird zurück in den "Ruhe"-Zustand 371 gesetzt.
  • SMAC-Zugangssteuerschaltung
  • Die Zugangssteuerschaltung 144 im SMAC 100 von 5B beinhaltet einen RISC-Prozessor 400 sowie weitere spezielle Unterstützungsschaltungen zum Implementieren des CTDMA-Protokolls. Wie 10 ausführlich zeigt, beinhalten die Zugangssteuerunterstützungsschaltungen 401407 eine Event-Logikschaltung 401, einen "durch zehn dividieren" Impulsgenerator 402, einen MAC-Frameslot-Timer 403, einen Periodisches-Intervall-Timer 404, einen Sperrzeitmonitor 405, ein Geplante-Phase-Register 406 und eine Decodierschaltung 407.
  • Der RISC-Prozessor 400 hat einen der Fachperson bekannten konventionellen Aufbau. Der RISC-Prozessor 400 beinhaltet einen internen Arbeitsspeicher (RAM) 410 und einen Festwertspeicher (ROM) 411 sowie weitere bekannte Schaltungen (nicht dargestellt, z. B. Register, Arithmetik/Logikeinheit, Programmzähler, Opcode-Decoder usw.) zum Ausführen eines Programms von im ROM 411 gespeicherten Anweisungen. Der RAM 410 enthält einen ersten Satz von Speicherstellen, in denen die im Sperrband 56 empfangenen aktiven Netzprotokollparameter gemäß Illustration in 2C und obiger Beschreibung gespeichert sind. Diese Parameter werden von anderen Komponenten der Zugangssteuerschaltung 144 verwendet, wie nachfolgend beschrieben wird. Ein zweiter Satz Speicherstellen im RAM 410 ist als "Halteregister" designiert, um neue Netzprotokollparameter vorübergehend zu speichern, bis ein neuer synchronisierter Wechsel erfolgt.
  • Der RISC-Prozessor 400 implementiert einen typischen Prozessoranweisungssatz einschließlich Logik-, Arithmetik- und Datenmanipulationsanweisungen. Mehrere Spezialanweisungen werden ebenfalls implementiert, die die Adress-, Daten- und Steuerleitungen auf dem RISC-Bus 180 nutzen, um die Ein- und Ausgangsoperationen zu den anderen am RISC-Bus 180 angeschlossenen Schaltungen auszuführen, wie in den jeweiligen Abschnitten der vorliegenden Spezifikation beschrieben ist. Wie zuvor angegeben, wird der im RISC-Prozessor 400 verwendete interne Bus (d. h. der RISC-Bus 180) extern über verschiedene Treiber und Decoder (nicht dargestellt) erweitert, damit der RISC-Prozessor auf Fernein- und -ausgänge in anderen Schaltungen des SMAC 100 durch Ausführen entsprechender E/A-Anweisungen zugreifen kann. Ein im ROM 411 gespeichertes Steuerprogramm 412 wird vom RISC-Prozessor 400 ausgeführt. Ein im ROM 411 gespeichertes Steuerprogramm 412 wird vom RISC-Prozessor 400 ausgeführt, um die Steuerfunktionen der Zugangssteuerschaltung 144 zu implementieren.
  • Der RISC-Prozessor 400 implementiert einen typischen Prozessoranweisungssatz einschließlich Logik-, Arithmetik- und Datenmanipulationsanweisungen. Mehrere Spezialanweisungen werden ebenfalls implementiert, die die Adress-, Daten- und Steuerleitungen auf dem RISC-Bus 180 nutzen, um die Ein- und Ausgangsoperationen zu den anderen am RISC-Bus 180 angeschlossenen Schaltungen auszuführen, wie in den jeweiligen Abschnitten der vorliegenden Spezifikation beschrieben ist.
  • Der Anweisungssatz für den RISC-Prozessor 400 beinhaltet eine "Warte"-Anweisung. "Warte"-Anweisungen sind in der Technik allgemein bekannt, um Prozessoraktivität bis zur Aktivierung eines Hardware-Eingangssignals zu suspendieren, das das Ende des "Warte"-Zustands anzeigt. Der RISC-Prozessor 400 implementiert eine spezielle "Warte"-Anweisung unter Verwendung der Event-Logikschaltung 401. Wenn der RISC-Prozessor 400 in den "Warte"-Zustand geht (d. h. nach Ausführung einer "Warte"-Anweisung), decodiert die Event-Logikschaltung 400 Steuer- und Adressleitungen auf dem RISC-Bus 180, um eine der mehreren möglichen Bedingungen auszuwählen, die von Eingangssignalen 408 als das "Event" angezeigt werden, das zum Auslösen des Endes des Wartezustands und zur Wiederaufnahme der Verarbeitung durch den RISC-Prozessor 400 verwendet wird. Wenn die gewählte Event-Bedingung "wahr" wird, dann wird ein END WAIT Signal 415 von der Event-Logikschaltung 401 aktiviert. Das END WAIT Signal 415 ist als Eingang zum RISC-Prozessor 400 geschaltet und veranlasst – wenn aktiviert – den RISC-Prozessor, die Verarbeitung an der auf die "Warte"-Anweisung folgenden Anweisung wieder aufzunehmen.
  • Der "durch zehn dividieren" Impulsgenerator 402 empfängt das PHY CLOCK Signal 150 als Eingang und erzeugt ein Ausgangssignal, das als MEGA PULSE Signal 416 bezeichnet wird. Das MEGA PULSE Signal 416 ist mit der Event-Logikschaltung 401, dem Slot-Timer 403 und dem Periodisches-Intervall-Timer 404 für diese Intervalle des MRC-Frame verbunden. Wie der Name impliziert, hat das MEGA PULSE Signal 416 eine Frequenz von einem Megahertz, was der der Zehn-Megahertz-Frequenz des PHY CLOCK Eingangssignals 150 dividiert durch zehn entspricht. Der Ausgangsimpuls des MEGA PULSE Signals 416 hat eine Dauer, die einem Zyklus des PHY CLOCK Signals 150 entspricht, d. h. das MEGA PULSE Signal 416 ist für jede zehnte aktive Periode des PHY CLOCK Signals 150 wahr". Das MEGA PULSE Signal 416 dient somit als Eine-Mikrosekunde-Zeitbasis für die angeschlossenen Schaltungen 401, 403 und 404.
  • Der Slot-Timer 403 erzeugt ein SLOT TIMEOUT Signal 417, das bei jedem Auftreten eines Slot-Timeout pulsiert wird. Wie zuvor erörtert, tritt ein Slot-Timeout immer dann auf, wenn ein Knoten 20 während seines zugewiesenen Zeitschlitzes nicht sendet. Die Menge an Zeit, die verstreichen muss, bevor ein Timeout auftritt, wird zum SMAC im Moderator-LPaket (2C) gesendet, im RAM 410 gespeichert und über den RISC-Bus 180 zum Slot-Timer 403 kommuniziert. Der RISC-Bus 180 dient auch für die Kommunikation anderer Status- und Steuerinformationen zwischen dem RISC-Prozessor 400 und dem Slot-Timer 403. Der Slot-Timer 403 empfängt auch das PHY CLOCK Signal 150 als Grundbetriebstakt, während das MEGA PULSE Signal 416, wie soeben erwähnt, als Eine-Mikrosekunde-Zeitbasis verwendet wird. Das SLOT TIMEOUT Signal 417 ist als ein Eingang zur Event-Logikschaltung 401 für die Verwendung beim Ermitteln einiger der "Warte"-Bedingungen verbunden.
  • Weiter mit Bezug auf 10, der Periodisches-Intervall-Timer 404 wird in Verbindung mit dem RISC-Prozessor 400 verwendet, um die Zeit anzugeben, die während jedes periodischen Intervalls 50 verstreicht. Insgesamt wird die in jedem periodischen Intervall 50 abgelaufene Zeit als 16-Bit-Zahl (zwei Bytes) gemessen, die hierin als Periodic-Interval-Time-(PIT)-Zahl bezeichnet wird. Die PIT-Zahl hat eine Auflösung von zehn Mikrosekunden pro Bit, so dass ein maximales periodisches Intervall von 655,35 Millisekunden möglich ist. Der untere (niedrigstwertige) 8-Bit-Teil der PIT-Zahl wird im Periodisches-Intervall-Timer 404 selbst gehalten, während der obere (höchstwertige) 8-Bit-Teil vom RISC-Prozessor 400 im RAM 410 gehalten wird. Zu Beginn eines periodischen Intervalls 50 wird jeder Teil mit einem wert vom RAM 410 geladen, den er vom Netzmoderator im PIT-Block 72 des Moderator-LPakets empfangen hat. Die untere 8-Bit-Zahl, als Bus PIT LO BYTE 418 bezeichnet, wird vom Periodisches-Intervall-Timer 404 zum Sperrzeitmonitor 405 gesendet. Es werden auch Schaltungen im Periodisches-Intervall-Timer 404 vorgesehen, damit der Wert des PIT LO BYTE Busses 418 direkt vom RISC-Prozessor 400 über den RISC-Bus 180 gelesen werden kann. Die Zahl auf dem PIT LO BYTE Bus 418 wird automatisch alle zehn Mikrosekunden dekrementiert, bis die Zahl null erreicht ist. Es ist im Periodisches-Intervall-Timer 404 eine Funktion vorgesehen, um es dem RISC-Prozessor 400 zu ermöglichen, eine Null-Zahl auf dem PIT LO BYTE Bus 418 über den RISC-Bus 180 zu erkennen. Wenn dies auftritt, dann dekrementiert der RISC-Prozessor 400 den Wert der PIT-Hoch-Byte-Zahl (im RAM 410) um eins. Dieser Vorgang wird so lange wiederholt, bis das hohe PIT-Byte auf null dekrementiert ist. Zu diesem Zeitpunkt gibt der RISC-Prozessor 400 entsprechende Befehle über den RISC-Bus 180 zum Aktivieren eines PIT HI BYTE ZERO Signals 419 im Periodisches-Intervall-Timer 404 aus. Das PIT HI BYTE ZERO Signal zeigt so an, dass das hohe PIT-Byte jetzt null ist, und die einzige im aktuellen periodischen Intervall verbleibende Zeit ist die Zeit, die der tiefe Byte-Wert auf dem PIT LO BYTE Bus 418 repräsentiert. Das PIT HI BYTE ZERO Signal 419 wird auch zum Sperrzeitmonitor 405 ausgegeben.
  • Eine zusätzliche Funktion des periodischen Intervall-Timers 404 ist die Erzeugung eines TONE COMMAND Signals 420. Das TONE COMMAND Signal 420 wird vom Periodisches-Intervall-Timer 404 nach dem Eingang entsprechender Befehle vom RISC-Prozessor 400 über den RISC-Bus 180 aktiviert. Wie oben mit Bezug auf 3 erörtert wurde, ist der "Ton" 53 das interne SMAC-Referenzsignal, das den Beginn eines neuen periodischen Intervalls 50 markiert und im Wesentlichen zur selben absoluten oder "universellen" Zeit in allen Knoten 20 auf dem Netz 10 auftritt, innerhalb eines geringen Fehlerspielraums aufgrund von Fortpflanzungsverzögerungen von Zeitreferenz-Events. Das TONE COMMAND Signal 420 wird intern im Periodisches-Intervall-Timer 404 verwendet und ist auch mit dem Sperrzeitmonitor 405, dem Geplante-Phase-Register 406 und dem Sync-Bus 176 verbunden.
  • Die in 10 und 11 gezeigte Sperrbandzeit-Überwachungsschaltung 405 ermittelt die Zeit, zu der der Sperrbandteil 56 jedes periodischen Intervalls beginnt. Der Start des Sperrbandes basiert auf der PIT-Zahl auf dem PIT LO BYTE Bus 418 und der PIT HI BYTE ZERO Leitung 419. Der "Sperrbandzeit"-Wert vom Datenblock 77 des vom Netzwerkmoderator empfangenen Moderator-LPakets wird in einem Register 421 der Sperrbandzeit-Überwachungsschaltung vom RISC-Prozessor 400 über den RISC-Bus 180 gespeichert. Dieser Wert gibt die PIT-Zahl an, bei der das Sperrband 56 starten soll. Mit anderen Worten, das Sperrband 56 soll dann beginnen, wenn die PIT-Zahl auf den "Sperrbandzeit"-Wert zurückgegangen ist.
  • Das Sperrbandzeitregister 421 kann vom RISC-Prozessor 400 über den RISC-Bus 180 gelesen und beschrieben werden. Eine Decodierschaltung 423 ist mit dem RISC-Bus 180 verbunden, um die Ausführung eines "Schreibsperrbandzeit"-Befehls durch den RISC-Prozessor 400 zu erkennen. Wenn der "Schreibsperrbandzeit"-Befehl erkannt ist, erzeugt die Decodierschaltung 423 ein Strobe-Signal auf der Leitung 424. Das Strobe-Signal 424 veranlasst wiederum das Sperrzeitregister 421, die Daten auf den acht Datenleitungen des RISC-Busses 180, durch das Bussegment 425 repräsentiert, zwischenzuspeichern. Ebenso kann der RISC-Prozessor 400 den Inhalt des Sperrbandzeitregisters 421 über eine Byte-Auswahlschaltung 426 zurücklesen. Die Byte-Auswahlschaltung 426 ist zwischen dem "Sperrbandzeit"-Bus 422 und dem RISC-Bus 180 geschaltet und decodiert entsprechende Steuersignale auf dem RISC-Bus 180, um die Ausführung einer "Sperrbandzeitwert lesen"-Anweisung durch den RISC-Prozessor 400 zu erkennen. Nach dem Erkennen der "Sperrbandzeitwert lesen"-Anweisung wird der "Sperrbandzeit"-Wert auf dem Bus 422 durch die Datenleitungen des RISC-Busses 180 gekoppelt.
  • Der "Sperrbandzeit"-Wert im Register 421 und auf dem Bus 422 hat eine Länge von einem Byte, und daher kann der Sperrbandteil 56 des periodischen Intervalls 50 erst nach Aktivierung des PIT HI BYTE ZERO Signals 419 beginnen. Um den Start des Sperrbandes zu ermitteln, wird der 8-Bit-Wert des PIT LO BYTE Signals 418 mit dem "Sperrbandzeit"-Wert auf dem Bus 422 im Komparator 427 verglichen. Ein Ausgang 428 vom Komparator 427 ist dann "wahr", wenn die jeweiligen Eingänge 418 und 422 gleich sind. Der Ausgang 428 ist als ein Eingang mit einem AND-Gate 429 verbunden, der andere Eingang des AND-Gates 429 ist mit dem PIT HI BYTE ZERO Signal 419 verbunden. Der Ausgang 430 des AND-Gates 429 ist daher. dann "wahr", wenn die Bedingungen zum Starten des Sperrbandes erfüllt sind.
  • Der Sperrbandzeitmonitor 405 erzeugt drei Sperrbandsteuersignale: ein GENERAL GUARD BAND Signal 431, ein SCREENER GUARD BAND Signal 432 und ein MODERATOR GUARD BAND Signal 433. Jedes der Signale 431433 wird während spezifischer Zeiten im Sperrbandteil 56 des periodischen Intervalls 50 aktiviert, um verschiedene "Sperrband"-Aktivitäten zu steuern. Die GENERAL GUARD BAND und SCREENER GUARD BAND Signale 431 und 432 werden jeweils durch zwei Flipflops 435 und 436 geführt. Jeder Flipflop 435 und 436 hat einen synchronen "Set"-Eingang, der mit dem Ausgang 430 des AND-Gates 429 verbunden ist, und beide Flipflops 435 und 436 werden vom PHY CLOCK Signal 150 getaktet. Die Folge ist, dass beide Flipflops 435 und 436 zu Beginn des Sperrbandes 56 des periodischen Intervalls gesetzt werden, wodurch die jeweiligen GENERAL GUARD BAND und SCREENER GUARD BAND Signale 431 und 432 aktiviert werden.
  • Der Flipflop 435 wird direkt vom TONE COMMAND Signal 420 zurückgesetzt. Das GENERAL GUARD BAND Signal 431 ist daher für die gesamte Dauer des Sperrbandes 56 "wahr", d. h. von dem Zeitpunkt an, an dem die PIT-Zahl den "Sperrbandzeit"-Wert erreicht, bis zum "Ton" 53. Das SCREENER GUARD BAND Signal 432 wird jedoch durch einen vom RISC-Prozessor 400 gesendeten expliziten Befehl zurückgesetzt. Eine Decodierschaltung 437 ist mit dem RISC-Bus 180 verbunden und erkennt die Ausführung einer "Screener-Sperrband zurücksetzen"-Anweisung durch den RISC-Prozessor 400. Nach dem Erkennen der "Screener-Sperrband zurücksetzen" Anweisung wird ein Strobe-Signal auf der Ausgangsleitung 438 erzeugt. Die Ausgangsleitung 438 wird wiederum mit einem Reset-Eingang am Flipflop 436 verbunden, der, wenn aktiviert, den Flipflop 436 zu einem Reset an der nächsten aktiven Flanke des PHY CLOCK Signals 150 veranlasst. Dies ermöglicht es dem RISC-Prozessor 400, das SCREENER GUARD BAND Signal 432 zu einem anderen Zeitpunkt als bei "Ton" 53 für die Ausführung der Screening-Funktion wie nachfolgend beschrieben zu deaktivieren.
  • Das dritte Sperrbandsteuersignal, nämlich das MODERATOR GUARD BAND Signal 433, ist als Ausgang eines AND-Gates 440 geschaltet. Ein Eingang des AND-Gates 440 ist mit dem GENERAL GUARD BAND Signal 431 verbunden. Der andere Eingang des AND-Gates 440 ist mit einem Ausgang 441 eines Flipflop 442 verbunden. Der Flipflop 442 wird direkt vom RISC-Prozessor 400 gesteuert und dient zum Speichern des "Moderator"-Status für den Knoten 20. Wenn der RISC-Prozessor 400 ermittelt hat, dass sein eigener Knoten 20 der Moderator-Knoten für das Netz 10 ist, dann wird der Flipflop 442 in den "Set"-Zustand befohlen. In diesem Fall ist das AND-Gate 440 freigegeben, und das MODERATOR GUARD BAND Signal 433 folgt dem GENERAL GUARD BAND Signal 431 (d. h. die beiden sind äquivalent). Alternativ wird, wenn der RISC-Prozessor 400 ermittelt, dass sein eigener Knoten nicht der Moderator-Knoten ist, der Flipflop 442 zurückgesetzt, und das MODERATOR GUARD BAND Signal 433 wird niemals aktiviert.
  • Die Steuerung des Fhipflops 442 erfolgt durch eine Decodierschaltung 443. Die Decodierschaltung 443 ist mit dem. RISC-Bus 180 verbunden und decodiert separate "Set" und Reset" Befehle für den "Moderator"-Status des Knotens 20. Nach dem Erkennen der Ausführung des "Set" oder des "Reset" Befehls wird ein Ausgangs-Strobe-Signal auf einer der beiden Rusgangsleitungen 444 bzw. 445 erzeugt. Die Ausgangsleitungen 444 und 445 sind wiederum mit jeweiligen synchronen "Set" und "Reset" Eingängen am Flipflop 442 verbunden.
  • Der Sperrbandzeitmonitor 405 beinhaltet auch eine Bittest-Auswahlschaltung 446, damit der RISC-Prozessor 400 die aktuellen Zustände des GENERAL GUARD BAND Signals 431 und des MODERATOR GUARD BAND Signals 433 lesen kann. Die Bittest-Auswahlschaltung 446 ist mit dem RISC-Bus 180 verbunden und beinhaltet einen Decodierschaltkomplex, um die Ausführung einer "Lese"-Anweisung durch den RISC-Prozessor 400 zu erkennen, der die angeschlossenen Signale 431 und 432 adressiert. Wenn eine entsprechend adressierte "Lese"-Anweisung erkannt wird, wird das gewählte Signal 431 und 432 mit einer der Datenleitungen auf dem RISC-Bus 180 gekoppelt.
  • Einmal kurz mit Bezug auf die 5B und 10, die Sperrbandsteuersignale 431433 werden wie folgt geleitet. Das GENERAL GUARD BAND Signal 431 und das SCREENER GUARD BAND Signal 432 sind mit dem Sync-Bus 176 verbunden. Das MODERATOR GUARD BAND Signal 433 ist in der Zugangssteuerschaltung 144 mit der Event-Logikschaltung 401 verbünden und wird auch aus der Zugangssteuerschaltung 144 hinaus zur Sendeverarbeitungsschaltung 141 geleitet.
  • Nun mit Bezug auf die 10 und 12, die Geplante-Phase-Registerschaltung 406 der Zugangssteuerung 144 beinhaltet einen Flipflop 448, dessen Ausgang als SCHEDULED PHASE Signal 450 bezeichnet wird. Ein "wahres" SCHEDULED PHASE Signal 450 zeigt an, dass sich das periodische Intervall 50 derzeit in. der geplanten Phase 52 befindet. Der Flipflop 448 hat synchrone Set- und Reset-Eingänge und wird vom PHY CLOCK Signal 150 getaktet. Das TONE COMMAND Signal 420 ist mit dem. Set-Eingang des Flipflops 448 verbunden. Somit wird das SCHEDULED PHASE Signal 450 automatisch nach Aktivierung des TONE COMMAND Signals 420 auf "wahr" gesetzt. So wird die geplante Phase gezwungen, gemäß dem CTDMA-Protokoll immer am "Ton" 53 zu beginnen (siehe 3). Der Flipflop 448 wird von einem entsprechenden Befehl vom RISC-Prozessor 400 zurückgesetzt. Insbesondere beinhaltet die Geplante-Phase-Registerschaltung 406 eine mit dem RISC-Bus 180 verbundene Decodierschaltung 451. Die Decodierschaltung 451 decodiert entsprechende Adress- und Steuerleitungen auf dem RISC-Bus 180, um die Ausführung einer "geplante Phase zurücksetzen" Ausgangsanweisung vom RISC-Prozessor 400 zu erkennen. Nach dem Erkennen der "geplante Phase zurücksetzen" Anweisung wird eine mit dem Reset-Eingang des Flipflop 448 verbundene Ausgangsleitung 452 aktiviert, die den Flipflop 448 zurücksetzt. Nach dem Zurücksetzen des Flipflop 448 (SCHEDULED PHASE Signal 450 ist "falsch"), wird das periodische Intervall 50 bis zum Start des "Sperrbandes" wie oben definiert als in der "ungeplanten Phase" 54 angesehen. Das SCHEDULED PHASE Signal 450 bleibt auch während des gesamten Sperrbandes 56 "falsch", bis es durch die nächste Aktivierung des TONE COMMAND Signals 420 wieder auf "wahr" gesetzt wird.
  • Der RISC-Bus 180 ist auch mit einer Bittest-Auswahlschaltung 453 verbunden, damit der RISC-Prozessor 400 den aktuellen Wert des SCHEDULED PHASE Signals 450 lesen kann. Die Bittest-Auswahlschaltung 453 beinhaltet einen Decodierschaltkomplex, um auf die Ausführung einer "Geplante-Phase-Bit lesen" Anweisung durch den RISC-Prozessor 400 zu. reagieren. Nach dem Erkennen der "Geplante-Phase-Bit lesen" Anweisung koppelt die Bittest-Auswahlschaltung 453 den Wert des SCHEDULED-PHASE Signals 450 auf den RISC-Bus 180 für die Eingabe durch den RISC-Prozessor 400.
  • Es folgt eine ausführliche Beschreibung der Periodisches-Intervall-Timer-Schaltung 404 in der Zugangssteuerung 144 mit Bezug auf 13. Der PIT LO BYTE Bus 418 ist als paralleler Ausgang eines Abwärtszählers 500 geschaltet. Eine Byte-Auswahlschaltung 501 ist zwischen dem PIT LO BYTE Bus 418 und dem RISC-Bus 180 geschaltet, damit der RISC-Prozessor 400 den aktuellen Inhalt des PIT LO BYTE Busses durch Ausführen einer geeigneten "Byte lesen" Anweisung direkt lesen kann. Der Abwärtszähler 500 wird synchron vom PHY CLOCK Signal 150 getaktet und hat separate Eingänge "Parallellast freigeben" und "Zahl freigeben", um jeweilige Parallellast- und Zählvorgänge zu steuern. Der "Zahl freigeben" Eingang ist mit einem Ausgang 502 von einer "durch zehn dividieren" Vorskalierschaltung 503 verbunden, die vom PHY CLOCK Signal 150 getaktet wird und das MEGA PULSE Signal 416 als "Freigabe"-Eingang empfängt. Für jede zehnte Aktivierung des MEGA PULSE Signals 416 erzeugt die Vorskalierschaltung 503 einen Impuls auf der Ausgangsleitung 502. Der Abwärtszähler 500 wird dadurch veranlasst, einmal alle zehn Mikrosekunden herunterzuzählen. Mit anderen Worten, jeder "Tick" des Abwärtszählers 500 ist ein Inkrement von zehn Mikrosekunden.
  • Der Abwärtszähler 500 kann auch parallel vom RISC-Prozessors 400 gesteuert mit dem vom SMAC 100 im Moderator-LPaket empfangenen PIT-Wert geladen werden (2C). Eine Decodierschaltung 504 ist mit dem RISC-Bus 180 verbunden und erkennt die Ausführung einer "periodische Intervallzeit schreiben" (PIT schreiben) Anweisung. Nach dem Erkennen der Schreib-PIT-Anweisung wird eine Ausgangsleitung 505 aktiviert. Die Ausgangsleitung 505 hat Verbindung mit dem "Parallellast freigeben" Eingang des Abwärtszählers 500 und einem Reset-Eingang der Vorskalierschaltung 503. Eine Aktivierung der Ausgangsleitung 505 bewirkt, dass der Abwärtszähler 500 die parallelen Daten von den Datenleitungen des RISC-Busses 180, repräsentiert durch das Bussegment 506, lädt. Gleichzeitig erzwingt die Aktivierung des Reset-Eingangs auf der Vorskalierschaltung 503 einen Neustart des Vorskaliervorgangs mit einer vollen Zahl von zehn. Dies garantiert eine volle Zehn-Mikrosekunden-Periode vor der Aktivierung des Vorskalierschaltungsausgangs 502 nach dem Laden des Abwärtszählers 500 unabhängig von einer eventuellen Restzahl, die vielleicht in der Vorskalierschaltung 503 übrig geblieben ist.
  • Zusätzlich zum PIT LO BYTE Bus 418 gibt der Abwärtszähler 500 auch ein PIT COUNT ZERO Signal 507 aus. Der Abwärtszähler 500 ist so konstruiert, dass er automatisch zwischen null und der maximalen 8-Bit-Zahl (hexadezimal "FF") umläuft. Das PIT COUNT ZERO Signal 507 wird immer aktiviert, wenn die im Abwärtszähler 500 enthaltene Zahl gleich null ist, d. h. so, dass die nächste Aktivierung des PHY CLOCK Signals 150 ein Umlaufen veranlasst. In diesem Sinne zeigt das PIT COUNT ZERO Signal 507 an, dass die nächste Zahl einen Übertrag von der PIT-Low-Byte-Zahl im Abwärtszähler 500 erzeugt. Das PIT COUNT ZERO Signal 507 ist als Eingang zu einem zweistufigen PIT-Übertragsschieberegister 510 geschaltet, das die "Übertrags"-Anzeige vom Abwärtszähler in einer zweistufigen Weise zwischenspeichert, so dass der RISC-Prozessor 400 genügend Zeit hat, um jeden "Übertrag" zu verarbeiten. Die PIT-Übertragsschieberegisterschaltung 510 wird vom PHY CLOCK Signal getaktet.
  • Weiter mit Bezug auf 13, das TONE COMMAND Signal 420 wird von einer mit dem RISC-Bus 180 verbundenen Decodierschaltung 525 erzeugt. Diese Schaltung 525 decodiert die Ausführung einer "Ton generieren" Anweisung durch den RISC-Prozessor 400 und gibt das TONE COMMAND Signal 420 aus, wenn die "Ton generieren" Anweisung erkannt wird. Das PIT HI BYTE ZERO Signal 419 wird von einem PIT-Hi-Byte-Null-Flipflop 530 geführt, der vom PHY CLOCK Signal 150 getaktet wird. Der Flipflop 530 kann vom RISC-Prozessor 400 gesteuert gesetzt werden. Wie zuvor erwähnt, führt der RISC-Prozessor das hohe PIT-Byte intern, d. h. im RAM 410. Der RISC-Prozessor 400 übernimmt auch das Dekrementieren des hohen PIT-Byte jedes Mal, wenn der Abwärtszähler 500 einen "Übertrag" produziert. Jedes Mal, wenn der RISC-Prozessor 400 das hohe PIT-Byte dekrementiert, wird das Ergebnis des Dekrementiervorgangs (d. h. der "Null" oder "Nicht-Null"-Status des Ergebnisses) über eine "PIT-Hi-Byte-Ergebnis schreiben" Anweisung auf dem RISC-Bus 180 auf die PIT-Hi-Byte-Zero-Flipflopschaltung 530 geschrieben. Wenn das TONE COMMAND Signal 420 "wahr" wird, dann werden der Flipflop 530 und das entsprechende PIT HI BYTE ZERO Signal 419 in einen Reset-Zustand gezwungen.
  • MAC-Sendeprozessor
  • Die in 5B gezeigte Zugangssteuerschaltung 144 steuert auch die Sendeverarbeitungsschaltung 141 im SMAC 100. Die Sendeverarbeitungsschaltung 141 wählt Daten aus einem der Sende-FIFO-Speicher (TX A, TX B und TX C) in der Host-Schnittstelle 143 und formatiert die Daten ordnungsgemäß zum Senden durch das Modem 140. Die Details der Sendeverarbeitungsschaltung 141 sind in 14 gezeigt. Ein Sende-Mover 600 verarbeitet automatisch 16-Bit-Wörter von den Sende-FIFOs, indem er sie in 8-Bit-Bytes aufteilt. Die aufgeteilten Datenbytes werden dann über den TX BYTE Bus 602 an einen Sende-Assembler 604 angelegt. Der Sende-Mover 600 reagiert auf die von der Host-Schnittstelle 143 über den TX STREAM STATUS Bus 185 empfangenen Steuersignale, die anzeigen, welcher der drei Sende-FIFOs als zum Senden "bereit" markiert wurde. Wenn es für den Knoten 20 Zeit ist, über das Netz zu senden, gibt die Zugangssteuerschaltung 144 entsprechende Anweisungen über den RISC-Bus 180, um die Sendeverarbeitungsschaltung 141 zum Sendebeginn anzuweisen. Gleichzeitig empfängt der Sende-Mover 600 ein Signal über den RISC-Bus 180, das einen der "bereiten" FIFOs in der Host-Schnittstelle 143 designiert. Der Sende-Mover 600 sendet die Identifikation des gewählten Sende-FIFO über den SELECT TX STREAM Bus 186 zur Host-Schnittstelle.
  • Die Host-Schnittstellenschaltung 143 reagiert durch sequentielles Platzieren jedes 16-Bit-Wortes von Daten von diesem FIFO auf den TX WORD Bus 187, der als Eingang zum Sende-Mover 600 geschaltet ist. Jedes von der Host-Schnittstelle 143 empfangene Datenwort wird in einem Register im Sende-Mover 600 zwischengespeichert und dann in zwei Bytes unterteilt. Die beiden Bytes werden nacheinander an den TX BYTE Bus 602 angelegt und zum Sende-Assembler 604 gesendet.
  • Der Sende-Assembler 604 konvertiert das Byte von Daten in das Manchester-codierte Serienformat und reagiert auch auf Steuersignale über den RISC-Bus 180, indem er die Manchester- Phy-Symbole für die Präambel und Begrenzer des abgehenden MAC-Frame 21 generiert. Das generierte TX PHY SYMBOLS Signal 269 wird an eine Leitung des Ausgangsbusses 161 angelegt, die mit dem Sendeeingang des Modems 140 verbunden ist. Die oben mit Bezug auf das Modem 140 beschriebenen Signale END BLANKING 257, TX ENABLE 256 und TX RESERVE 271 werden ebenfalls vom Sende-Assembler 604 erzeugt und an den Ausgangsbus 161 angelegt.
  • Der RISC-Bus 180 ist ebenfalls direkt mit dem Sende-Assembler 604 verbunden, damit der RISC-Prozessor 400 Daten über das Netz sendet. Zum Beispiel, der RISC-Prozessor 400 verwendet diesen Datenpfad im Moderatorknoten zum Senden von MAC-Frames in dem Sperrband 56, das ein LPaket von Stationsmanagementinformationen wie zuvor beschrieben enthält. Wenn das MODERATOR GUARD BAND Signal 433 aktiv ist, werden Daten vom RISC-Bus 180 vom Sende-Assembler 604 in ein Manchester-formatiertes Seriensignal umgewandelt und über den Bus 161 zum Modem 140 gesendet.
  • während der Sende-Mover 600 aktiv Daten handhabt, erzeugt er ein aktives TX BUSY Signal 182, um der Zugangssteuerung 144 anzuzeigen, dass ein Sendevorgang läuft. Ein TX ERROR Signal 606 wird ebenfalls vom Sende-Mover 600 als Anzeige dafür erzeugt, dass ein Sendeunterlauf aufgetreten ist. Die Sende-FIFOs in der Host-Schnittstelle 143 haben eine Länge von nur 32 Byte. Da die Daten für die meisten Meldungen viel länger sein werden, verlässt sich die Host-Schnittstelle darauf, dass der Host-Prozessor 102 verhindert, dass den FIFOs die Daten ausgehen, bevor der Meldungsframe gebildet ist. Wenn der Host-Prozessor jedoch Daten nicht schnell genug liefert, dann kommt es zu einem Datenunterlauf. Der Sende-Mover 600 erkennt dieses Event und sendet ein TX ERROR Signal 606 zu einem Satz von Sendestatusregistern 608. Diese Fehleranzeige kann vom RISC-Prozessor 400 über den Bus 180 von den Sendestatusregistern 608 abgelesen werden.
  • Der RISC-Prozessor 400 speichert auch Steuerinformationen in den Sendestatusregistern 608. Ein solches Steuerbit mit der Bezeichnung TX REQUEST 612 dient zum Einleiten des Meldungsübertragungsprozesses. Wenn ein Fehlerzustand auftritt, kann der RISC-Prozessor 400 reagieren, indem er ein TX ABORT Bit 610 im Sendestatusregister 608 speichert, um eine beliebige ablaufende Übertragung zu terminieren.
  • Ein Framewort-Countdown-Zähler 614 in der Sendeverarbeitungsschaltung 141 führt eine Zahl für die Anzahl von Datenworten, die im Datenfeld 25 des aktuellen MAC-Frame 21 zur Verfügung stehen. Während des Sendens der einzelnen Datenwörter durch die Schaltung 141 wird die Zahl im Framewort-Countdown-Zähler 614 dekrementiert. Diese Zahl wird periodisch vom RISC-Prozessor 400 gelesen, um zu ermitteln, ob ein anderes Daten-LPaket von der Host-Schnittstelle 142 innerhalb des aktuellen MAC-Frame 21 gesendet werden kann oder ob CRC 27 und Endebegrenzer 28 gesendet werden sollen.
  • Die Sendeverarbeitungsschaltung 141 kümmert sich um das Senden von Meldungsdaten durch den Knoten, und eine andere Schaltung verarbeitet die vom Netz empfangenen Meldungen. SMAC-Empfangsprozessor Der in 5B gezeigte SMAC 100 verwendet eine Empfangsverarbeitungsschaltung 142 für die Handhabung eingehender Daten vom Modem 140 und für deren Formatierung für die Host-Schnittstelle 143. Die Details der Empfangsverarbeitungsschaltung 142 sind in 15 zu sehen. Das vom Eingangsbus 162 geführte eingehende PHY DATA Signal 270 wird von einer Daten- und Steuer-Pipeline 8OO in der Empfangsverarbeitungsschaltung 142 empfangen. Die Pipeline 800 ist mit dem Datentaktbus gekoppelt und empfängt die vom Modem erzeugten Signale BYTE CLOCK 262, BYTE PULSE 151 und BIT CLOCK 261.
  • Die Einzelheiten der Daten- und Steuer-Pipeline 800 sind in 16 dargestellt. Das PHY DATA Signal 270 wird in einem Serienein-/Parallelausgangsschieberegister 801 empfangen, das vom BIT CLOCK Signal 261 getaktet wird. Das Schieberegister 801 konvertiert das serielle PHY DATA Signal 270 in ein PARALLEL RX DATA Signal 802. Das PARALLEL RX DATA Signal 802 wird als Eingang in einen LPaket-Byte-Zähler 803 und ein dreistufiges Pipeline-Register 804 angelegt.
  • Die Daten- und Steuer-Pipeline 800 "verfolgt" den Fortschritt des eingehenden MAC-Frame 21, während dieser empfangen wird. Der Frame beginnt mit einer Aktivierung des RX READY Signals 166 durch das Modem 140. Danach wird jedes LPaket durch Zwischenspeichern des Größenfeldes des LPakets im LPaket-Byte-Zähler 803 als Reaktion auf das ENABLE SIZE LOAD Signal von einer Pipeline-Steuerzustandsmaschine 806 verfolgt. Die Pipeline-Steuerzustandsmaschine 806 empfängt das RX READY Signal 166, das BIT CLOCK Signal 261 und das BYTE PULSE Signal 151 vom Modem 140. Die Pipeline-Steuerzustandsmaschine 806 verwendet diese Eingangssignale zum Zeitsteuern des Auftretens verschiedener Felder im eingehenden PHY DATA Signal 270 und zum Ausgeben der entsprechenden Steuersignale an den LPaket-Byte-Zähler 803 und die Pipeline-Register 804. Der LPaket-Byte-Zähler 803 legt ein Signal 807 an, das der Pipeline-Steuerzustandsmaschine 806 sagt, wenn die Zahl der eingehenden Bytes des PHY DATA Signals 207 anzeigt, dass ein LPaket vollständig empfangen wurde. Dieses LPaket-Vollständigkeitssignal 807 veranlasst die Pipeline-Steuerzustandsmaschine 806, das entsprechende END LPACKET Signal an das Pipeline-Register 804 auszugeben.
  • Gemäß den 15 und 16 ist das Pipeline-Register 804 ein dreistufiges Schieberegister, das die eingehenden Daten- und Steuersignale parallel verarbeitet und die Daten als Reaktion auf das BYTE CLOCK Signal 262 durch jede Stufe verschiebt. Während des Verschiebens der eingehenden Daten durch das Register 804 wird der Inhalt jeder Stufe anderen Komponenten des SMAC-Systems zur Verfügung gestellt. Der Ausgang der ersten Stufe des Pipeline-Registers 804 ist mit einem Satz von Datengattern zum RISC-Bus 180 verbunden, um vom RISC-Prozessor 400 gelesen zu werden. Der Ausgang der zweiten Stufe des Pipeline-Registers, Level "B" genannt, wird über den Bus 808 an einen ersten Dateneingang einer Empfangs-Screening-Schaltung 810 angelegt. Der Level "B" Bus 808 führt auch das END LPACKET Signal, das durch die ersten beiden Stufen des Pipeline-Registers getaktet wurde, und Signale, die durch eine individuelle AND-Verknüpfung des RX READY Signals mit dem START FRAME Signal und dem START LPACKET Signal abgeleitet wurden, die durch die ersten beiden Stufen des Pipeline-Registers 804 getaktet wurden. Diese drei Level "B" Steuersignale werden auch durch die dritte Stufe des Pipeline-Registers 804 zusammen mit dem TX BUSY Signal 182 aus der zweiten Stufe getaktet. Das END FRAME Signal von der Pipeline-Steuerzustandsmaschine 806 wird direkt an einen Eingang der dritten Stufe der Pipeline-Register 804 angelegt. Der Inhalt der dritten Stufe des Pipeline-Registers 804 wird an einen Level "C" Bus 809 angelegt, der mit einem zweiten Eingang der Empfangs-Screening-Schaltung 810 und mit einem Eingang der RX-Router-Schaltung 812 verbunden ist. Das Pipeline-Register 804 ermöglicht es, dass der RISC-Prozessor 400 die eingehenden Daten über den RISC-Bus 180 empfängt, bevor die Daten an den Eingängen der Empfangs-Screening-Schaltung 810 und dem RX-Router 812 verfügbar werden. So ergibt sich ein Startvorsprung von einem Byte gegenüber dem Betrieb des RISC-Prozessors in Bezug auf den Betrieb dieser letzteren beiden Komponenten 810 und 812.
  • Gemäß 15 ist der RX-Router 812 in der Empfangsverarbeitungsschaltung 142 für das Speisen der eingehenden Daten- und relevanten Steuersignale in die Empfangs-FIFO-Speicher der Host-Schnittstelle 143 (siehe Fig. 5B) verantwortlich. Die empfangenen Daten werden vom RX-Router 812 über den RX-Byte-Ausgangsbus 170 zusammen mit den Steuersignalen über den RX FIFQ Steuerbus 171 zur Host-Schnittstelle 143 gesendet.
  • Der RX-Router 812 verarbeitet zwar alle vom SMAC 100 von dem Netz 10 empfangenen LPakete, aber über die Verbindung 813 von der Empfangs-Screening-Schaltung 810 empfangene Steuersignale ermöglichen die Auswahl nur derjenigen LPakete, die für den Host-Prozessor 102 von Interesse sind (5A). Die Annahme von LPaketen wird von drei Quellen gesteuert: einem Universal-Screener, einem festen Screener und einem externen Screener. Der Universal-Screener wird praktisch ausschließlich von einem Schaltkomplex in der Empfangs-Screening-Schaltung 810 mit minimaler Beteiligung des RISC-Prozessors 400 implementiert. Zu diesem Zweck führt die Empfangs-Screening-Schaltung 810 eine Tabelle der zu akzeptierenden LPaket-Etiketten. Der feste Screener dient zum Identifizieren spezifischer LPakete, wie z. B. das Moderator-LPaket, die Netz- oder Stationsmanagementinformationen enthalten. In einem großen Ausmaß erfolgt das feste Screening durch den RISC-Prozessor 400 als Reaktion auf Daten- und Steuersignale, die von der Empfangs-Screening-Schaltung 810 erzeugt werden, und das externe Screening erfolgt außerhalb des SMAC 100. Der feste Screener ist zwar mit Etiketten von Interesse vorprogrammiert, aber die Etiketten, nach denen die Universal- und externen Screener suchen, werden vom Benutzer definiert.
  • Beim Empfangen eines LPakets wartet ein Screener-Koordinator in der Empfangs-Screening-Schaltung 810 auf eine Antwort von den drei Screening-Quellen und antwortet damit, dass er eine Entscheidung darüber trifft, ob er das LPaket akzeptiert. Ein ACCEPT LPACKET Signal wird vom Screener-Koordinator über den Bus 810 an den RX-Router 812 angelegt, wenn das LPaket für den Host-Prozessor 102 von Interesse ist. Die Empfangs-Screening-Schaltung 810 analysiert auch die eingehenden Daten- und Steuersignale, um entweder ein SELECT MAIN oder ein SELECT AUX Signal zu erzeugen. Diese letzteren Signale werden vom RX-Router zur Host-Schnittstelle 143 geleitet, um auszuwählen, welcher Empfangs-FIFO (RX MAIN oder RX AUX) in der Host-Schnittstelle die Daten empfangen wird. Zu Beginn jedes LPakets werden die SELECT MAIN und SELEC AUX Signale aktiv und beide Empfangs-FIFOs beginnen, die LPaket-Daten zu speichern, bis einer der Screener das LPaket akzeptiert. Wenn eine Entscheidung getröffen wird, welcher Empfangs-FIFO die Daten speichert, dann wird der andere Empfangs-FIFO von einem Signal auf dem RX FIFO Steuerbus 171 deaktiviert. Wenn das LPaket endet, ohne akzeptiert zu werden, dann wird vorgabemäßig ein NO ACCEPTANCE Signal zur Host-Schnittstelle 143 gesendet, die damit reagiert, dass sie den FIFO-Inhalt verwirft. Auf diese Weise wählt die Empfangs-Screening-Schaltung 810 diejenigen LPakete mit Etiketten aus, die die Screener programmgemäß erkennen sollen. MAC-Host-Schittstelle Gemäß den 5A und 5B verbindet die SMRC-Host-Schnittstelle 143 die Sende- und Empfangsverarbeitungsschaltung 141 und 142 mit dem Host-Prozessor 102. Die Host-Schnittstelle 143 wird vom Host-Prozessor 102 benachrichtigt, wenn dieses Gerät Daten für die Übertragung über das Netz 10 hat. Der SMAC 100 empfängt die Daten über den Host-Bus 101, und die Daten werden in einen der Sende-FIFOs TX A, TX B oder TX C gemäß Designation durch Steuersignale gesetzt, die den Daten vorangehen. Die Sende-FIFOs fungieren als Datenpuffer und sind nicht groß genug, um ein typisches LPaket zu speichern. Die Host-Schnittstelle 143 ist so konfiguriert, dass sie auf die im Host-Prozessorspeicher gespeicherten Übertragungsdaten entweder durch einen Direktspeicherzugriff-(DMA)-Controller im Host-Prozessor 102 oder dadurch zugreift, dass sie fordert, dass der Host-Prozessor die Zufuhr von Daten in dem Maße steuert, in dem die Sende-FIFOs leer werden. Wenn der SMAC 100 Zugang zum Netzwerk 10 erhält, dann erhält die Sendeverarbeitungsschaltung 141 Datenworte von dem entsprechenden Sende-FIFO wie oben beschrieben.
  • Wenn der SMAC 100 einen Meldungsframe vom Netz empfängt, dann setzt die Empfangsverarbeitungsschaltung 142 jedes eingehende LPaket in die Empfangs-FIFOs (RX MAIN und RX AUX). Wenn ein Screener ein bestimmtes LPaket als von Interesse identifiziert, dann überträgt die Host-Schnittstelle 143 den FIFO-Inhalt zum Host-Prozessor 102. Wenn keiner der Screener an einem bestimmten LPaket interessiert ist, dann werden die Daten aus den Empfangs-FIFOs geleert.
  • Gemäß 17 empfängt die Host-Schnittstelle 143 Signale vom Host-Prozessor 102 über den Host-Bus 101, der Adress-, Daten- und Steuersignalleitungen umfasst. Der Host-Bus 101 ist über einen Satz von Tristate-Datengattern 870 mit dem gepufferten Host-Bus 174 gekoppelt. Der Host-Prozessor 102 speichert Konfigurations- und andere Betriebsinformationen in einem Satz Steuerregister 868. Zum Beispiel, vor dem Senden der Daten der Host-Schnittstelle 143 zur Übertragung speichert der Host-Prozessor 102 Informationen in den Steuerregistern 868, um die Charakteristiken jedes der drei Sendeströme zu konfigurieren (in den FIFOs TX A, TX B oder TX C gespeichert). Eine Charakteristik ist die, ob ein Strom geplante oder ungeplante Daten für die Übertragung während der geplanten Phase 52 bzw. der ungeplanten Phase 54 enthalten soll. Diese Information wird von der Host-TX-FIFO-Logikschaltung 854 zum Decodierschaltkomplex 840 übertragen. Der Host-Prozessor 102 speichert auch Steuerinformationen in einer Host-TX-Logikschaltung 854, um der Sendeverarbeitungsschaltung 141 über den TX STREAM STATUS Bus 185 zu signalisieren, dass Daten auf die Übertragung warten.
  • Die Daten vom Host-Bus 101 werden durch einen Cache-Speicher 845 in den Decodierschaltkomplex 840 gesendet, der auf die Steuerinformationen dadurch reagiert, dass er die Daten zum bezeichneten Sende-FIFO (TX A, TX B oder TX C) leitet. In der Praxis wird das Trio aus Sende-FIFOs 841, 842 und 843 mit konventionellen Techniken in einem Arbeitsspeicher (RAM) 844 ausgeführt. Insbesondere wird eine Gruppe von Speicherstellen im RAM 844 für jeden FIFO abgestellt, und ein weiterer Satz Speicherstellen enthält Zeiger auf Speicherstellen, die die Anfangs- und Endobjekte von Daten in diesem FIFO enthalten. Der Ausgang jedes Sende-FIFO 841843 ist über den Bus 850 mit der Stream-Auswahlsteuerschaltung 853 verbunden.
  • Wie zuvor beschrieben, wählt die Sendeverarbeitungsschaltung 141, wenn sie verlangt, dass ein Datenwort über. das Netz gesendet wird, einen der Sende-FIFOs 841843 durch Anlegen von Steuersignalen an den Auswahl-TX-Stream-Bus 186 aus. Diese Auswahlsignale werden an die Stream-Ruswahlsteuerschaltung 853 in der Host-Schnittstelle 143 angelegt, und die Stream-Auswahlsteuerschaltung 853 reagiert durch Ausgeben von Signalen an den entsprechenden Sende-FIFO 841, 842 oder 843, um das nächste Datenwort zu erhalten. Nach dem Empfang des TAKE WORD Signals 188 von der Sendeverarbeitungsschaltung 141 leitet die Select-Stream-Steuerschaltung 853 den Zeiger des jeweiligen Sende-FIFO 841843 zum nächsten Datenwort.
  • Wenn Daten vom SMAC 100 vom Netzwerk 10 empfangen wurden, dann sendet die Empfangsverarbeitungsschaltung 142 die zuvor beschriebenen Steuersignale über den RX FIFO Steuerbus 171. Wie in 17 gezeigt, ist der RX FIFO Steuerbus 171 mit einer Verteiler- und Steuerschaltung 860 verbunden, die auch die empfangenen Daten über den RX BYTE Bus 170 empfängt. Die Verteiler- und Steuerschaltung 860 reagiert auf die eingehenden Signale dadurch, dass sie beide Empfangs-FIFOs (MAIN und AUX) 863 und 864 zum Senden von Steuersignalen über einen FIFO-Bus 862 freigibt. Jedes der Bytes des eingehenden LPakets wird zu diesem Zeitpunkt in beiden Empfangs-FIFOs 863 und 864 gespeichert. Die Empfangs-FIFOs 863 und 864 werden im RAM 844 auf dieselbe Weise implementiert wie die Sende-FIFOs.
  • Danach kann die Verteiler- und Steuerschaltung 860 ein Signal auf dem RX FIFO Steuerbus 171 empfangen, das anzeigt, dass ein Screener ermittelt hat, dass das LPaket für diesen Knoten 20 von Interesse ist. In diesem Fall zeigt das Screener-Signal an, welcher der beiden Empfangs-FIFOs 863 oder 864 die Daten aufnehmen soll, und die Verteiler- und Steuerschaltung 860 reagiert dadurch, dass sie das Ende des Datenzeigers für den nicht selektierten Empfangs-FIFO zurücksetzt, wodurch diese Daten verworfen werden. Die Steuerschaltung 860 reagiert auch dadurch, dass sie einen Interrupt-Generator 866 freigibt, der ein Interrupt-Signal über den Host-Bus 101 sendet, der dem Host-Prozessor 102 anzeigt, dass interessante Daten empfangen wurden, und der anzeigt, welcher. der beiden Empfangs-FIFOs 863 oder 864 die Daten enthält.
  • Der Host-Prozessor 102 reagiert auf das Interrupt-Signal dadurch, dass er die Daten von dem vorgegebenen Empfangs-FIFO 863 oder 864 erhält. Ein Paar Cache-Speicher 871 und 872 verbinden die Empfangs-FIFOs mit dem Host-Bus 101 und ermöglichen es so, dass Daten von einem FIFO abgerufen werden, während zusätzliche empfangene Daten von der Verteiler- und Steuerschaltung 860 gespeichert werden.
  • Andererseits, wenn keiner der Screener anzeigt, dass das derzeitige LPaket von Interesse ist, dann setzt die Verteiler- und Steuerschaltung 860 das Ende von Datenzeigern für beide Empfangs-FIFOs 863 und 864 zurück, so dass sie mit ihrer Anfangsdatenstelle übereinstimmen, wodurch die zuvor empfangenen Daten aus den FIFOs effektiv entleert werden.

Claims (18)

  1. Kommunikationsnetz (10), das Folgendes umfasst: ein Übertragungsmedium (11); und eine Mehrzahl von Knotenschaltungen (20), die mit dem genannten Übertragungsmedium verbunden sind, wobei jede Knotenschaltung die Aufgabe hat, in einem Meldungsframe über das Übertragungsmedium gesandte Daten zu einem assoziierten Verbrauchergerät zu übertragen, und wobei jede Knotenschaltung Folgendes beinhaltet: (a) einen ersten Detektor, der die Aufgabe hat, einen Anfangshinweiscode (22) eines Meldungsframe zu erfassen, in dem der Anfangshinweiscode ein definiertes Muster von Binärsignalpegeln hat; gekennzeichnet durch: (b) einen zweiten Detektor (265), der die Aufgabe hat, einen Anfangsbegrenzer (23) des Meldungsframe zu erkennen, in dem der Anfangsbegrenzer ein bestimmtes Muster aus einer Mehrzahl von Binärsignalpegeln hat, das die folgenden Kriterien erfüllt: (1) der Anfangsbegrenzer beginnt mit einem Binärsignalpegel, der einem letzten Binärsignalpegel des Anfangshinweiscodes entgegengesetzt ist, (2) der Anfangsbegrenzer endet mit zwei verschiedenen Binärsignalpegeln, (3) eine maximale Anzahl konsekutiver identischer Binärsignalpegel ist zwei, (4) eine digitale Summenvarianz fällt in einen Bereich von –1 bis 2, (5) unter der Voraussetzung einer ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in das vorgegebene Muster eines Begrenzers wenigstens vier Binärsignalpegel fehlerhaft sein, (6) unter der Voraussetzung einer nicht ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in die vorgegebenen Muster eines Begrenzers wenigstens zwei Binärsignalpegel fehlerhaft sein, (c) einen Datendecoder (250), der darauf, dass der genannte zweite Detektor einen Anfangsbegrenzer erfasst, damit reagiert, dass er Daten im Meldungsframe decodiert; und (d) einen Signalpfad zum Führen decodierter Daten von dem genannten Datendecoder zu dem assoziierten Verbrauchergerät.
  2. Kommunikationsnetz nach Anspruch 1, dadurch gekennzeichnet, dass der genannte erste Detektor in jeder Knotenschaltung die Aufgabe hat, einen Anfangshinweiscode mit einem Muster von abwechselnd hohen und tiefen Logikpegelimpulsen von im Wesentlichen gleicher Dauer zu erfassen.
  3. Kommunikationsnetz nach Anspruch 1, dadurch gekennzeichnet, dass der genannte zweite Detektor (265) in jeder Knotenschaltung die Aufgabe hat, einen Anfangsbegrenzer mit Binärsignalpegeln in einem Muster von 1101001100100110 in der Reihenfolge von links nach rechts gemäß Übertragung über das Medium zu erfassen, wobei 1 ein hoher Signalpegel und 0 ein tiefer Signalpegel ist.
  4. Kommunikationsnetz nach Anspruch 1, dadurch gekennzeichnet, dass jede Knotenschaltung ferner einen dritten Detektor beinhaltet, der die Aufgabe hat, einen Meldungsframe-Endebegrenzer mit einem bestimmten Muster aus einer Mehrzahl von Binärsignalpegeln zu erfassen, das die Kriterien (3) bis (6) für den Anfangsbegrenzer erfüllt, und der Endebegrenzer ferner mit einem Paar verschiedener Binärsignalpegel beginnt und mit einem Binärsignalpegel endet, der im Wesentlichen einem Pegel entspricht, der bei Stille auf dem Netz anliegt.
  5. Kommunikationsnetz nach Anspruch 1, dadurch gekennzeichnet, dass jede Knotenschaltung ferner einen dritten Detektor beinhaltet, der die Aufgabe hat, einen Meldungsframe-Endebegrenzer mit einer Mehrzahl von Binärsignalpegeln in einem Muster von 1001011011001100 in der Reihenfolge von links nach rechts gemäß Übertragung über das Medium zu erfassen, wobei eine 1 ein hoher Signalpegel und eine 0 ein tiefer Signalpegel ist.
  6. Kommunikationsnetz nach Anspruch 1, dadurch gekennzeichnet, dass der genannte Datendecoder die Aufgabe hat, ein von dem genannten Übertragungsmedium empfangenes Manchester-codiertes Datensignal in binäre Daten umzuwandeln.
  7. Knotenschaltung (20) für den Anschluss an ein Übertragungsmedium (11) und mit der Aufgabe, codierte Daten zwischen dem Übertragungsmedium und einem assoziierten Verbrauchergerät zu koppeln, wobei die genannten Daten in einem Meldungsframe über das Übertragungsmedium gesendet werden; wobei die Knotenschaltung Folgendes umfasst: einen ersten Detektor, der die Aufgabe hat, einen Anfangshinweiscode eines Meldungsframe zu erfassen, in dem der Anfangshinweiscode eine Mehrzahl von abwechselnd hohen und tiefen Signalpegelimpulsen hat; gekennzeichnet durch einen zweiten Detektor (245), der die Aufgabe hat, einen Anfangsbegrenzer des Meldungsframe zu erfassen, in dem der Anfangsbegrenzer eine Mehrzahl von Binärsignalpegeln in einem Muster von 1101001100100110 in der Reihenfolge von links nach rechts gemäß Übertragung über das Medium hat, wobei eine 1 ein hoher Signalpegel und eine 0 ein tiefer Signalpegel ist; einen Datendecoder (260), der darauf, dass der genannte zweite Detektor einen Anfangsbegrenzer erfasst, damit reagiert, dass er Daten in dem Meldungsframe decodiert; und einen Signalpfad zum Führen decodierter Daten von dem genannten Datendecoder zu dem assoziierten Verbrauchergerät.
  8. Knotenschaltung nach Anspruch 1, ferner gekennzeichnet durch einen dritten Detektor, der die Aufgabe hat, einen Meldungsframe-Endebegrenzer mit einer Mehrzahl von binären Signalpegeln in einem Muster von 1001011011001100 in der Reihenfolge von links nach rechts gemäß Übertragung über das Medium zu erfassen, wobei eine 1 ein hoher Signalpegel und eine 0 ein tiefer Signalpegel ist.
  9. Knotenschaltung nach Anspruch 1, ferner gekennzeichnet durch eine Schaltung, die die Aufgabe hat, die Integrität des Meldungsframe mit zyklischen Redundanzprüfdaten zu überprüfen, die in einem Meldungsframe empfangen werden.
  10. Verfahren zum Übertragen von digitalen Daten über ein Kommunikationsnetz von einem Ursprungsknoten zu einem Empfängerknoten mit Manchester-Datencodierung, wobei die digitalen Daten als eine Serie von Binärsignalpegeln gesendet werden, wobei jeder Pegel in einer anderen Symbolperiode auftritt, wobei das genannte Verfahren die folgenden Schritte umfasst: Übertragen eines Anfangshinweiscode mit einem definierten Muster von abwechselnd hohen und tiefen Logikpegelimpulsen von im Wesentlichen gleicher Dauer; und gekennzeichnet durch die folgenden Schritte: Übertragen eines Anfangsbegrenzers, der Verletzungen der Manchester-Datencodierung enthält und die folgenden Kriterien erfüllt (a) der Anfangsbegrenzer beginnt mit einem Binärsignalpegel, der einem letzten Binärsignalpegel des Anfangshinweiscodes entgegengesetzt ist, (b) der Anfangsbegrenzer endet mit einem Paar verschiedener Binärsignalpegel, (c) eine maximale Anzahl konsekutiver Symbolperioden mit identischen Binärsignalpegeln ist zwei, (d) eine digitale Summenvarianz des Anfangsbegrenzers fällt in einen Bereich von –1 bis 2, (e) unter der Voraussetzung einer ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in das Anfangsbegrenzermuster wenigstens vier Binärsignalpegel fehlerhaft sein, (f) unter der Voraussetzung einer nicht ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in das Anfangsbegrenzermuster wenigstens zwei Binärsignalpegel fehlerhaft sein, und Übertragen der digitalen Daten; Übertragen eines zyklischen Redundanzcode, der von den digitalen Daten abgeleitet wurde; und Übertragen eines Endebegrenzers.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass in dem Schritt des Übertragens eines Anfangsbegrenzers Binärsignalpegel in einem Muster von 1101001100100110 in der Reihenfolge von links nach rechts wie übertragen gesendet werden, wobei eine 1 ein hoher Signalpegel und eine 0 ein tiefer Signalpegel ist.
  12. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass in dem genannten Schritt des Übertragens eines Endebegrenzers ein Endebegrenzer gesendet wird, der die folgenden Kriterien erfüllt: (a) der Endebegrenzer beginnt mit einem Paar " Symbolperioden, die verschiedene Binärsignalpegel enthalten, (b) eine maximale Anzahl konsekutiver Symbolperioden mit identischen Binärsignalpegeln ist zwei, (c) eine digitale Summenvarianz des Endebegrenzers fällt in einen Bereich von –1 bis 2, (d) unter der Voraussetzung einer ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in den Endebegrenzer wenigstens vier Binärsignalpegel fehlerhaft sein, (e) unter der Voraussetzung einer nicht ordnungsgemäßen Synchronisation der Signaldecodierung müssen für ein Aliasing gültiger Zufallsdaten in den Endebegrenzer wenigstens zwei Binärsignalpegel fehlerhaft sein, und (f) der Endebegrenzer endet mit einem Binärsignalpegel, der im Wesentlichen gleich einem Pegel ist, der bei Stille auf dem Netz anliegt.
  13. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass in dem genannten Schritt des Übertragens eines Endebegrenzers Binärsignalpegel in einem Muster von 1001011011001100 in der Reihenfolge von links nach rechts wie übertragen gesendet werden, wobei eine 1 ein hoher Signalpegel und eine 0 ein tiefer Signalpegel ist.
  14. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass der genannte Schritt des Übertragens der digitalen Daten das Übertragen einer Mehrzahl von Datenpaketen umfasst, wobei jedes Paket einen Tag enthält, der einen Datentyp innerhalb dieses Pakets identifiziert.
  15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass in dem genannten Übertragungsschritt Pakete übertragen werden, die ferner Informationen über eine Anzahl von Auffüllbytes enthalten, die der Empfangsknoten einfügen muss, um den Tag auf eine Datenwortgrenze des Pakets zu setzen.
  16. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass in dem genannten Übertragungsschritt Pakete übertragen werden, die ferner eine Bezeichnung von einer von mehreren Komponenten enthält, die den Tag innerhalb des Empfängerknotens verarbeiten soll.
  17. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass in dem genannten Übertragungsschritt ein Paket übertragen wird, das ferner eine Bezeichnung für eine Größe des Pakets enthält.
  18. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass in dem genannten Übertragungsschritt ein Paket übertragen wird, das ferner einen Indikator enthält, der vom Empfängerknoten zum Identifizieren von Paketduplikaten verwendet werden kann, die zu verschiedenen Zeiten übertragen werden.
DE69432841T 1993-04-28 1994-04-28 Verfahren und Vorrichtung für digitale Datenübertragung in einem Nachrichtennetz Expired - Lifetime DE69432841T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/054,400 US5493571A (en) 1993-04-28 1993-04-28 Apparatus and method for digital communications with improved delimiter detection
US54400 1993-04-28

Publications (2)

Publication Number Publication Date
DE69432841D1 DE69432841D1 (de) 2003-07-31
DE69432841T2 true DE69432841T2 (de) 2004-05-06

Family

ID=21990816

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69432841T Expired - Lifetime DE69432841T2 (de) 1993-04-28 1994-04-28 Verfahren und Vorrichtung für digitale Datenübertragung in einem Nachrichtennetz

Country Status (3)

Country Link
US (1) US5493571A (de)
EP (1) EP0622711B1 (de)
DE (1) DE69432841T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014203428A1 (de) * 2014-02-26 2015-08-27 Robert Bosch Gmbh Verfahren zum Betreiben einer Industriemaschine

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694428A (en) * 1992-03-12 1997-12-02 Ntp Incorporated Transmitting circuitry for serial transmission of encoded information
JPH0898284A (ja) * 1994-07-25 1996-04-12 Nippondenso Co Ltd データ受信装置,送信装置および通信装置
JP2713197B2 (ja) * 1994-12-22 1998-02-16 日本電気株式会社 無線データ通信装置
US6112324A (en) * 1996-02-02 2000-08-29 The Arizona Board Of Regents Acting On Behalf Of The University Of Arizona Direct access compact disc, writing and reading method and device for same
JPH09226482A (ja) * 1996-02-28 1997-09-02 Toyota Motor Corp 車両用通信制御装置
US5905733A (en) * 1996-12-03 1999-05-18 Ericsson Inc. Method and apparatus for distinguishing in-band signaling from user data
US6771655B1 (en) * 1998-05-29 2004-08-03 Alcatel Canada Inc. Method and apparatus for managing data transportation
DE19848211B4 (de) * 1998-10-20 2004-02-05 Honeywell Ag Datenübertragungsverfahren
US6718417B1 (en) 1999-12-23 2004-04-06 Intel Corporation Physical layer and data link interface with flexible bus width
US6782001B1 (en) 1999-12-23 2004-08-24 Intel Corporation Physical layer and data link interface with reset/sync sharing
US7257079B1 (en) 1999-12-23 2007-08-14 Intel Corporation Physical layer and data link interface with adaptive speed
US6795881B1 (en) * 1999-12-23 2004-09-21 Intel Corporation Physical layer and data link interface with ethernet pre-negotiation
DE60114999T2 (de) * 2000-03-14 2006-09-07 Speed-Trap.Com Ltd., Newbury Überwachung von und interaktion mit netzwerkdiensten
JP3983447B2 (ja) * 2000-03-24 2007-09-26 シャープ株式会社 データ駆動型情報処理装置
US6925077B1 (en) * 2000-06-14 2005-08-02 Advanced Micro Devices, Inc. System and method for interfacing between a media access controller and a number of physical layer devices using time division multiplexing
US7136441B2 (en) * 2001-01-24 2006-11-14 Matsushita Electric Industrial Co., Ltd. Clock recovery circuit
US7286903B2 (en) * 2004-04-09 2007-10-23 Storage Technology Corporation Robotic library communication protocol
US8538258B2 (en) * 2008-05-08 2013-09-17 Alcatel Lucent Burst-mode data recovery for multi-gigabit passive optical networks
US9182874B2 (en) * 2011-01-31 2015-11-10 Dell Products, Lp System and method for out-of-band communication between a remote user and a local user of a server
EP2695079A4 (de) * 2011-04-01 2015-01-28 Siemens Ag Verfahren und vorrichtung für ein dateisystem auf einer speicherprogrammierbaren steuerung
EP2819340A1 (de) 2013-06-26 2014-12-31 Profil Met Sp. J. Jasinski, Leiter Verfahren zum Empfangen eines Signals mit Rahmen, Signalempfänger und Signal mit Rahmen
RU2642803C1 (ru) * 2017-01-18 2018-01-26 Евгений Тимофеевич Дюндиков Способ повышения достоверности передачи цифрового сообщения
RU2737194C1 (ru) * 2017-09-08 2020-11-25 Телефонактиеболагет Лм Эрикссон (Пабл) Передача сигнала пробуждения
US20230046788A1 (en) * 2021-08-16 2023-02-16 Capital One Services, Llc Systems and methods for resetting an authentication counter
CN114221738B (zh) * 2021-11-10 2023-07-21 北京智芯微电子科技有限公司 基于直接序列扩频的帧头检测方法、装置及存储介质

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4017841A (en) * 1973-11-23 1977-04-12 Honeywell Inc. Bus allocation control apparatus
US4229792A (en) * 1979-04-09 1980-10-21 Honeywell Inc. Bus allocation synchronization system
US4319338A (en) * 1979-12-12 1982-03-09 Allen-Bradley Company Industrial communications network with mastership determined by need
US4413319A (en) * 1981-03-09 1983-11-01 Allen-Bradley Company Programmable controller for executing block transfer with remote I/O interface racks
US4404651A (en) * 1981-03-09 1983-09-13 Allen-Bradley Company Programmable controller for using coded I/O data technique
FR2502430B1 (fr) * 1981-03-19 1986-10-24 Telediffusion Fse Reseau a systeme amrt et notamment partie reception d'un coupleur d'acces a un tel reseau
US4628504A (en) * 1983-01-31 1986-12-09 Honeywell Inc. Distributed bus control communication protocol
EP0132069A3 (de) * 1983-06-29 1987-11-11 Westinghouse Electric Corporation Verteiltes Prozesssteuersystem mit Mittel und Verfahren für automatisches Datenbank-Management von Rundfunkinformationen
US4750150A (en) * 1984-06-25 1988-06-07 Allen-Bradley Company, Inc. I/O scanner for an industrial control
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
DE3572430D1 (en) * 1985-04-02 1989-09-21 Ibm Infrared communication system
GB8518133D0 (en) * 1985-07-18 1985-08-21 British Telecomm Communications network
US4667323A (en) * 1985-09-03 1987-05-19 Allen-Bradley Company, Inc. Industrialized token passing network
US4809217A (en) * 1985-10-31 1989-02-28 Allen-Bradley Company, Inc. Remote I/O port for transfer of I/O data in a programmable controller
US4747100A (en) * 1986-08-11 1988-05-24 Allen-Bradley Company, Inc. Token passing network utilizing active node table
US4918652A (en) * 1987-02-05 1990-04-17 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Real-time simulation clock
US4780869A (en) * 1987-05-20 1988-10-25 Allen-Bradley Company, Inc. Local area network redundancy system
US4897834A (en) * 1987-08-18 1990-01-30 Allen-Bradley Company, Inc. Bit oriented communications network
US4858232A (en) * 1988-05-20 1989-08-15 Dsc Communications Corporation Distributed switching system
US5142623A (en) * 1988-06-10 1992-08-25 Westinghouse Electric Corp. High performance memory imaging network for a real time process control system
US4894826A (en) * 1989-01-30 1990-01-16 Honeywell, Inc. Message generating communication apparatus having a message preamble format allowing parts of certain messages to be ignored
US5018171A (en) * 1989-08-09 1991-05-21 National Semiconductor Corp. Smoothing filter
US5153884A (en) * 1990-08-15 1992-10-06 Allen-Bradley Company, Inc. Intelligent network interface circuit
GB2264845B (en) * 1992-02-28 1995-09-20 Texas Instruments Ltd Local area network adaptive circuit for multiple network types

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014203428A1 (de) * 2014-02-26 2015-08-27 Robert Bosch Gmbh Verfahren zum Betreiben einer Industriemaschine

Also Published As

Publication number Publication date
EP0622711A3 (de) 1995-03-08
EP0622711A2 (de) 1994-11-02
DE69432841D1 (de) 2003-07-31
US5493571A (en) 1996-02-20
EP0622711B1 (de) 2003-06-25

Similar Documents

Publication Publication Date Title
DE69432841T2 (de) Verfahren und Vorrichtung für digitale Datenübertragung in einem Nachrichtennetz
DE69432842T2 (de) Nachrichtennetz mit zeitkoordinierter Stationsaktivität
DE69433858T2 (de) Methode und Vorrichtung zum Austausch unterschiedlicher Arten von Daten während verschiedener Zeitintervallen
DE3506118C2 (de)
DE69433232T2 (de) Digitales Nachrichtennetz mit Auswahlprozess einer Moderatorstation
DE69221338T2 (de) Steuervorrichtung für Wiederholerschnittstelle
DE3689635T2 (de) Netzwerk mit Tokenübergabe für industrielle Zwecke.
DE3626033C2 (de) Transformator-Überbrückungs/Repeaterschaltung für ein Neztleitungs-Trägerfrequenz-Nachrichtensystem
DE112015004473T5 (de) Bestätigen der datengenauigkeit in einem verteilten steuerungssystem
DE3588171T2 (de) Optisches Übertragungssystem
DE3855590T2 (de) Bitorganisiertes Nachrichtennetzwerk
DE3586872T2 (de) Verfahren zur gleichzeitigen uebertragung isochroner und nichtisochroner daten auf einem lokalen netz.
DE3809129C2 (de) Verfahren und Vorrichtung zur Steuerung von videotechnischen Geräten
EP2961106B1 (de) Netzwerk, kopf-teilnehmer und datenübertragungsverfahren
EP3977682B1 (de) Fehlererkennung-testeinrichtung für eine teilnehmerstation eines seriellen bussystems und verfahren zum testen von mechanismen zur fehlererkennung bei einer kommunikation in einem seriellen bussystem
DE2647241A1 (de) Anordnung fuer eine digitale datenuebertragung
DE3882192T2 (de) Schnittstelleanordnung für die Verbindung zwischen einerseits getrennten Stationen und andererseits einem für den Nachrichtenverkehr zwischen diesen Stationen benutzten physikalischen Mittel.
DE3280423T2 (de) Datenuebertragungssystem.
DE19906867C1 (de) Verfahren und Vorrichtung zur seriellen Datenübertragung
EP0150540B1 (de) Verfahren zur Datenübertragung, sowie Station zur Durchführung des Verfahrens
DE69627148T2 (de) Ringbusdatenübertragungssystem
EP3725042B1 (de) Teilnehmer eines bussystems, verfahren zum betrieb und ein bussystem
DE69628841T2 (de) Übertragungsverfahren über einen optischen bus mit gleichzeitig verschiedenen datenraten
WO2003036832A2 (de) Verfahren zum betrieb eines endteilnehmers eines isochronen, zyklischen kommunikationssystems
EP1121785B1 (de) Netzwerk sowie koppelgerät zur verbindung zweier segmente in einem derartigen netzwerk

Legal Events

Date Code Title Description
8364 No opposition during term of opposition