-
ALLGEMEINES ZUR ERFINDUNG
-
1. Technisches Gebiet
-
Die
vorliegende Erfindung bezieht sich auf ein Kommunikationssystem
und insbesondere auf Kanäle,
die innerhalb einer Busleitung adressierbar sind, in welche sich
eine Gruppe von Multimedia-Geräten
teilt, die lokal mit der Busleitung verbunden und an ein bezüglich der
lokalen Busleitung externes Netzwerk kommunizierbar sind. Jedem
Kanal sind ein Quellengerät
und ein Zielgerät
zugeordnet, wobei die Kanallänge
nach Eintreffen einer anschließenden Adresse
eingestellt wird. Die Art der durch jeden Kanal übertragenen Daten wird dabei
durch ein Befehlssignal spezifiziert, das gleichzeitig mit den Daten
und synchron zu den Daten übermittelt,
aber dennoch auf einem von den über
einen oder mehrere Datenleiter getrennten Leitern gesendet wird.
Entsprechend einem alternativen Kommunikationssystem kann die Busleitung
unter Verwendung von Kanälen
kommunizieren, die innerhalb einer Gruppe von Multimedia-Geräten im Teilnehmerbetrieb
genutzt werden, welche lokal mit der Busleitung verbunden und an
ein mittels einer Netzwerkschnittstellen-Einheit mit der lokalen
Busleitung gekoppeltes Netzwerk kommunizierbar sind.
-
2. Beschreibung des Standes
der Technik
-
Es
ist allgemein bekannt, dass Kommunikationssysteme mindestens zwei
Knoten enthalten, welche mittels einer Übertragungsleitung mit einander verbunden
werden (vgl. WO 02/13461). Ein Knoten kann dabei als Datenquelle
oder als Datenziel fungieren. Wenn der Knoten Daten empfangen und übertragen
soll, stellt der Knoten eine Kombination aus Quelle und Ziel dar
und ist gelegentlich unter dem Begriff "Sende-/Empfangsgerät" bekannt. Die Datenquelle kann Daten
in verschiedenen Formen übertragen.
Zum Beispiel kann die Quelle in Analogtechnik oder Digitaltechnik übertragen.
Im typischen Fall wird jedoch ein analoges Signal vor seiner Übermittlung über die Übertragungsleitung
zum Datenziel in ein digitales Format umgewandelt.
-
Es
ist allgemein wünschenswert,
dass die Übertragungsleitung
nicht nur digitale oder analoge Daten aufnimmt, sondern auch Daten,
die in unterschiedlichen Formen ankommen und die nachstehend als "Datentypen" bezeichnet werden.
Zum Beispiel können
hoch entwickelte Übertragungsprotokolle
Streaming-Daten, paketierte Daten und Steuerdaten aufnehmen. Streaming-Daten
werden im Allgemeinen als Daten erkannt, die eine zeitliche Beziehung
zwischen den von einem Knoten gewonnenen Abtastwerten herstellen.
Die Beziehung zwischen diesen Abtastwerten muss über die Übertragungsleitung aufrechterhalten
werden, um wahrnehmbare Fehler wie zum Beispiel Lücken oder
geänderte
Frequenzen zu verhindern. Ein Verlust in der zeitlichen Beziehung
kann einen Empfänger
dazu veranlassen, Zittern, Echo oder im schlimmsten Fall periodische Leerstellen
in einem Sprachdatenstrom oder Bilddatenstrom zu entwickeln. Im
Unterschied zu Streaming-Daten handelt es sich bei paketierten Daten
um Daten, welche die Abtastgeschwindigkeit oder die zeitliche Beziehung
dieser Daten nicht aufrechterhalten müssen und stattdessen als unzusammenhängende Bursts über eine Übertragungsleitung
gesendet werden können.
Die Datenpakete können über die Übertragungsleitung
mit praktisch jeder Geschwindigkeit gesendet werden, mit welcher
diese Übertragungsleitung
Daten überträgt, und
sind in keiner Weise von der Abtastfrequenz abhängig, da paketierte Daten im
Allgemeinen als nicht abgetastete Daten erkannt werden.
-
Neben
Streaming-Daten und paketierten Daten kann es sich bei einem weiteren
Datentyp um Steuerdaten handeln. Je nachdem, wie die Steuerdaten
verwendet werden (entweder in einem Streaming- oder einem Paketierungs-Umfeld)
können Steuerdaten
zeitabhängig
oder zeitunabhängig
von den Daten oder dem Knoten sein, in dem sie steuern. Darüber hinaus
können
Streaming-Daten als synchrone Daten oder als isochrone Daten betrachtet werden.
Synchrone Formen von Streaming-Daten werden über die Übertragungsleitung synchronisiert zu
der Geschwindigkeit übermittelt,
mit welcher die Streaming-Daten abgetastet werden. Es kann jedoch sein,
dass die Übertragungsleitung
Daten mit einer anderen Geschwindigkeit als jener überträgt, mit
welcher der Knoten Daten im Strom fließen lässt oder „Werte abtastet". Um eine zeitliche
Beziehung zwischen den Abtastwerten der Streaming-Daten aufrecht
zu erhalten, werden isochrone Übertragungsprotokolle
benötigt,
um diese Unterschiede aufzufangen, damit die isochronen Daten am
Ziel ohne wahrnehmbare Lücken,
Fehler, Zittern oder Echo wiedergegeben werden können.
-
Eine
optimale Übertragungsleitung
kann unterschiedliche Typen von Daten übertragen. Mit der Übertragungsleitung,
bei der es sich um Kupferdraht oder Glasfaser handeln kann oder
die kabellos sein können,
sind mehrere Knoten gekoppelt. Jeder Knoten kann mindestens ein
Multimedia-Gerät
unterbringen. Zum Beispiel kann ein Telefon-Multimedia-Gerät zum Senden
und Empfangen von Sprachinformationen eingesetzt werden und je nach
den Unterschieden in der Abtastgeschwindigkeit (d.h. "fs") am Telefon und
der Seiten-Übertragungsgeschwindigkeit (d.h. "FSY") in der Übertragungsleitung
können
die Sprachinformationen als isochrone Daten oder als synchrone Daten
gesendet werden. Je nach der Beziehung zwischen der Seiten-Synchronisiergeschwindigkeit
(FSY) und der Abtastgeschwindigkeit (fs) können Streaming-Daten der Übertragungsleitung
entweder als synchrone Daten oder als isochrone Daten zugeleitet
werden. In jedem Fall können Steuerinformationen
an das Multimedia-Gerät
gesendet werden, um die Übertragung
aufzubauen, oder um den Empfang der isochronen oder synchronen Streaming-Daten
zu steuern. Neben der Übertragung
von Streaming-Daten
und Steuerdaten sollte die Übertragungsleitung
auch in der Lage sein, Informationspakete zwischen Computern zu übermitteln. Paketierte
Daten umfassen ausführbare
Programme und/oder Dateien, die als Bursts digitaler Daten über die Übertragungsleitung
gesendet werden.
-
Multimedia-Geräte, die
als Quelle arbeiten, können
deshalb nicht nur unterschiedliche Typen von Daten in unterschiedlichen
Formen erzeugen, sondern auch Daten, die mit unterschiedlichen Geschwindigkeiten
an der Übertragungsleitung
ankommen. Zum Beispiel handelt es sich bei einer von einem Telefonhörer kommenden
Stimme um einen kontinuierlichen Datenstrom mit einer im Wesentlichen
konstanten durchschnittlichen Datenrate und mit einer zeitlichen
Beziehung zwischen den erzeugten Abtastwerten. Die isochronen oder
synchronen Formen der Streaming-Daten können deshalb Töne (bei
dem Beispiel eines Telefons oder eines CD-Spielers) oder Bilder
(bei dem Beispiel eines DVD-Spielers) repräsentieren. Während Telefone,
CD-Spieler und DVD-Spieler isochrone oder synchrone Streaming-Daten über ein
Netzwerk senden, sendet ein Computer Bursts von Paketen, beispielsweise
in der Form TCP/IP, über
das Netzwerk.
-
Ein
Kommunikationssystem wird benötigt, das
die Übertragung
sowohl von Streaming-Daten als auch anderen Daten zwischen Knoten
des Kommunikationssystems aufnehmen kann. Mit noch größerer Wichtigkeit
ist es wünschenswert,
dass alle Arten von Streaming-Daten, darunter synchrone Streaming-Daten
und isochrone Streaming-Daten, aufgenommen werden können. Deshalb
sollte das gewünschte Übertragungsprotokoll
speziell auf die Kommunikation zwischen Multimedia-Geräten abgestimmt
sein, welche Daten in jeder beliebigen Form senden und empfangen,
die zur Übermittlung
von Informationen benötigt
werden. Es ist des Weiteren wünschenswert,
dass das Kommunikationssystem intelligente Knoten aufweist. Dies
bedeutet, dass jeder Knoten so eingerichtet wird, dass er eines
oder mehrere Multimedia-Geräten
unterbringt, in denen die Kommunikation über das Netzwerk innerhalb
der Intelligenz einer Steuerung aufgebaut wird, welche unter Umständen in
jedem Knoten enthalten ist. Auf diese Weise macht es das gewünschte Kommunikationssystem
für die
intelligente Steuerung möglich, einen
erheblichen Teil aller Übertragungsprotokoll-Operationen über das
Netzwerk und auch zwischen Multimedia-Geräten innerhalb eines über die Steuerung
bzw. eine Netzwerk-Schnittstelle mit dem Netzwerk verbundenen Knotens
abzuwickeln. Auf diese Weise kann eine Verbesserung vorliegen, mit der
es möglich
ist, dass herkömmliche
Multimedia-Geräte
problemlos zugeschaltet werden und das Netzwerk problemlos an die
zugeschalteten Geräte skaliert
wird, ohne dass Änderungen
oder Modifizierungen beim Netzwerk oder den Geräten nötig sind.
-
KURZBESCHREIBUNG
DER ERFINDUNG
-
Die
vorstehend umrissenen Probleme werden zu einem großen Teil
mit einem erfindungsgemäßen verbesserten
Kommunikationssystem gelöst. Das
Kommunikationssystem umfasst nicht nur das Netzwerk, das sich zwischen
den Knoten spannt, sondern kann auch eine lokale Busleitung innerhalb eines
Knotens umfassen. Die lokale Busleitung kann ein oder mehrere Multimedia-Geräte an eine
Steuerung innerhalb eines Knotens anschließen. Die Steuerung arbeitet
dabei vorzugsweise als Netzwerk-Schnittstelle und verbindet das
Netzwerk mit der lokalen Busleitung, um so eine Kommunikation zwischen
jedem dieser an die lokale Busleitung angeschlossenen Geräte nicht
nur untereinander sondern auch mit anderen Multimedia-Geräten zu ermöglichen,
die in anderen Knoten enthalten sind.
-
Ein
Merkmal der lokalen Busleitung ist die Netzwerk-Schnittstelle, welche
eine Steuerung umfasst. Die Steuerung dient für viele Funktionen, unter anderem
für die
Funktion, eine Adresse und ein Datenübertragungsprotokoll einzurichten.
Dabei werden Kanäle
adressiert und Daten innerhalb entsprechender Kanäle gesendet.
Befehle werden zur Bezeichnung des Typs der Daten verwendet, die
innerhalb jedes Kanals gesendet werden, sowie zur Datentaktung.
Wenn zahlreiche Datentypen benötigt
werden und es sich bei dem Datentyp um Streaming-Daten handelt,
dann werden während
jeder Seite vorzugsweise Streaming-Daten gesendet. Die Adresse gibt die
Quelle und das Ziel für
einen entsprechenden Kanal an und die Dauer zwischen anschließenden Adressenpaaren
bezeichnet die Anzahl der Bytes, die für diesen Kanal zur Verfügung stehen.
Die Adressen werden von der Steuerung gesendet und das Übertragungsquellengerät (welches
die Steuerung umfassen kann) sendet sowohl Befehle als auch Daten.
Wenn mehr als ein Gerät
mit der Steuerung über
den lokalen Bus verbunden ist, stellt der lokale Bus eine Bus-Topologie
dar, dann müssen
die Signalausgangs-Kontaktstifte und die Datenausgangs-Kontaktstifte
am Ende ihrer Übertragung
drei Zustände aufweisen.
-
Um
unterschiedliche Datentypen aufzunehmen, richtet die Netzwerk-Schnittstelle oder,
genauer gesagt, eine Steuerung innerhalb der Netzwerk-Schnittstelle, das
Adressierprotokoll ein und richtet das Quellgerät eine Übertragung der unterschiedlichen
Arten von Daten ein, die von der Quelle ausgesendet werden. Damit
baut die Steuerung Kanäle
auf, über
welche unterschiedliche Arten von Daten gesendet werden können. Die
Steuerung bietet nicht nur verschiedene Typen von Daten innerhalb
einer einzigen Seite dem Netzwerk an und verteilt diese Daten an
entsprechende Geräte,
die an eine lokale Busleitung angeschlossen sind. Wenn man weiß, wann
Daten zu senden und zu empfangen sind, und wenn man die Daten koordiniert,
läuft das Übertragungsprotokoll
in erster Linie innerhalb der Steuerung der Netzwerk-Schnittstelle
ab. Damit ist sichergestellt, dass die Streaming-Daten innerhalb
einer Seite gesendet und deshalb als kontinuierliche und im Wesentlichen
regelmäßige Daten
am Zielort mit einer Geschwindigkeit zusammengesetzt werden, die
im Wesentlichen gleich der Geschwindigkeit ist, mit der sie an der
Quelle abgetastet wurden, und gleichzeitig werden bis zu vier Datentypen
an die entsprechenden Geräte
sichergestellt, welche solche Daten empfangen.
-
Die
Steuerung sendet vorzugsweise mehrere Adressen innerhalb einer einzigen
Seite, wenn sie zur Verbreitung von Daten über die vom Netzwerk ausgehende
lokale Busleitung oder umgekehrt aufgefordert wird. Daten, die einer
ersten Adresse zugewiesen werden, werden gesendet, wenn ein Befehlssignal
gesendet wird, und die Dauer dieser Datenübertragung wird von der Dauer
zwischen den Adressen in einem nachfolgenden Adressenpaar diktiert. Das
Steuersignal ist vorzugsweise ein Byte, welches den Typ der Daten
bezeichnet, der von der vorhergehenden Adresse festgelegt wird.
Somit bedeutet die erste Adresse, die einem Befehl zuzuordnen ist
(d.h. die erste Adresse gibt eine Adresse an, die dem anschließenden Adressenpaar
vorangeht), dass durch Adressieren einer Quelle und eines Ziels
aus einer Vielzahl von Multimedia-Geräten (einschließlich der Steuerung),
welche an die lokale Busleitung angeschlossen sind, ein Kanal gebildet wird.
Sobald die erste Adresse von der Steuerung geliefert und an jedes
der Multimedia-Geräte
ausgesendet wird, bereitet sich das Quell-Multimedia-Gerät auf die Übertragung
von Daten vor, wenn es seine Adresse eines Übertragungskanals erscheinen
sieht. Das Quell-Gerät
sendet ebenfalls einen Befehl, welcher den Typ der gerade übertragenen
Daten anzeigt. Vorzugsweise ist der Betrag der Kanalverzögerung bekannt
und gleich der kleinsten Kanallänge
oder einem Mehrfachen der kleinsten Kanallänge, sofern der vorhergehende
Kanal länger
als andere Kanäle
ist.
-
Entsprechend
einem ersten Ausführungsbeispiel
ist ein Kommunikationsanschluss vorgesehen. Darüber hinaus ist auch ein Kommunikationssystem vorgesehen.
Der Kommunikationsanschluss ist innerhalb der Netzwerk-Schnittstelle
und/oder auf oder in einem oder mehreren Multimedia-Geräten zu finden
und umfasst einen Daten-Kontaktstift und einen Signal-Kontaktstift.
Entsprechend dem von dem Anschluss aufgebauten Datenübertragungsprotokoll wird
eine Vielzahl von Adressen ermittelt, von denen jede einzelne einen
einzigen bestimmten Kanal bezeichnet. Der Kanal ist insofern einzig,
als für
diesen Kanal ein Quell-Gerät
und ein Ziel-Gerät
bezeichnet werden, um Daten über
diesen Kanal von einem Gerät
zu einem anderen, an die lokale Busleitung angeschlossenen Gerät zu übertragen.
Die Anzahl von Bytes zwischen den Adressen in einem Paar Adressen
gibt die Bytelänge
für die
Datenübertragung
beziehungsweise die Kanallänge
für einen
zuvor adressierten Kanal an. Somit wird der Kanal adressiert und liegt
danach auf einem einzelnen Signalleiter ein weiteres Paar Adressen
vor. Die erste Adresse wird vorzugsweise einem Kanal zugewiesen,
der von dem zweiten Paar Adressen getrennt ist und zusätzlich zu diesem
vorgesehen ist, von denen jede ein anderes Paar Kanäle adressiert.
Wenn die kleinstmögliche Kanallänge 2 Byte
beträgt,
dann liegt die erste Adresse, die dem Paar Adressen vorangeht, um
2 Byte vor dem ersten Paar Adressen. In vielen Fällen ist die kleinstmögliche Kanallänge größer als
2 Byte und kann auch 4 Byte oder mehr betragen. Die Netzwerk-Schnittstelle umfasst
einen Takt-Kontaktstift, einen Signal-Kontaktstift und einen Daten-Kontaktstift. Der
Signal-Kontaktstift ist so ausgelegt, dass er eine erste Adresse
mit nachfolgender zweiter Adresse sendet, an die sich eine dritte
Adresse anschließt. Der
Daten-Kontaktstift ist so ausgelegt, dass er über eine Zeitdauer zwischen
den Zeitpunkten, zu denen der Signal-Kontaktstift die zweite Adresse
und die dritte Adresse sendet, Daten von einer Quelle zu einem Ziel
sendet, das von der ersten Adresse bezeichnet wird. Vorzugsweise
tritt die Zeitdauer nach dem Ende der zweiten Adresse und vor dem
Anfang der dritten Adresse ein. Der Takt-Kontaktstift kann den Takt
in der Weise senden, dass die erste Adresse, die zweite Adresse,
die dritte Adresse und Daten mit dem Takt synchronisiert werden.
Somit kann die Zeitdauer mit einem Taktzyklus unmittelbar nach dem Ende
der zweiten Adresse und bei einem Taktzyklus unmittelbar vor dem
Anfang der dritten Adresse beginnen. Das Verfahren zum Senden von
Daten über Kanäle umfasst
die Übermittlung
von Informationen, beginnend mit der Übertragung einer ersten Adresse, an
die sich die Übertragung
einer zweiten Adresse anschließt.
Danach werden Daten von einer Quelle zu einem Ziel übertragen,
das durch die erste Adresse bezeichnet wird. Anschließend wird
eine dritte Adresse übertragen,
woraufhin die Übertragung
der Daten beendet wird.
-
Gemäß einem
alternativen Kommunikationssystem kann die Steuerung Zeitschlitze
einrichten, die nur dazu bestimmt sind, mehrere Informationskanäle über die
lokale Busleitung zu senden. Mehrere Zeitschlitze entsprechen vorzugsweise
jeder Daten-Seite. Somit wird jede Daten-Seite, die über das Netzwerk
gesendet wird, vorzugsweise in Zeitschlitze unterteilt, die von
der Steuerung dekodiert und an das entsprechende Multimedia-Gerät übermittelt werden.
Auf diese Weise kann ein Kanal mit Zeitmultiplex isochronen Daten
zugewiesen werden, während
ein anderer Kanal für
synchrone Daten reserviert ist und ein noch weiterer Kanal für paketierte
Daten und ein anderer Kanal für
Steuerdaten vorbehalten sind. Dabei können beispielsweise bis zu
vier Zeitschlitze mit getrennter Zeitlage für jede Seite in der Weise geschaffen
werden, dass alle vier Datentypen innerhalb einer Seite nicht nur über das
Netzwerk sondern auch über
die lokale Busleitung gesendet werden können.
-
Je
nachdem, wie jedes Multimedia-Gerät an der lokalen Busleitung
konfiguriert ist, können
entsprechend dem alternativen Kommunikationssystem verschiedene
Zeitschlitze auf entsprechende Multimedia-Geräte innerhalb jedes Knotens verteilt
werden. Zum Beispiel kann während
der Initialisierung das erste Gerät so eingerichtet werden, dass
es den ersten Zeitschlitz überträgt/empfängt, während das zweite
Gerät zum Übertragen/Empfangen
des zweiten Zeitschlitzes eingerichtet werden kann, und so weiter.
Das erste Gerät
kann deshalb ein Gerät
sein, das mit isochronen Daten arbeitet, während es sich bei dem zweiten
Gerät um
eine Vorrichtung handelt, das mit synchronen Daten arbeitet, und
so weiter für alle
verschiedenen Datentypen, die innerhalb einer Seite gesendet werden
können.
-
Die
intelligente Steuerung innerhalb der Netzwerk-Schnittstelle sendet
gemäß dem alternativen
Kommunikationssystem ein Synchronisiersignal zu Anfang jeder Seite
aus. Das Synchronisiersignal kann entweder ein Einzelimpuls oder
eine Gruppe mehrerer Impulse sein, die ein Byte bilden. Das Synchronisiersignal
unterteilt jede Seite und synchronisiert dabei die verschiedenen
Zeitschlitze, die jeder Seite zuzuordnen sind. Das Synchronisiersignal identifiziert
auch Bytegrenzen auf der Signalleitung und den Datenleitungen. Das
Synchronisiersignal wird als einzelner Befehl kodiert, der auf der
Signalleitung von der Steuerung an jedes der Multimedia-Geräte gesendet
wird, die an die lokale Busleitung angeschlossen sind. Wenn die
Topologie der lokalen Busleitung ein Ring ist, kann das Synchronisiersignal
von jedem Gerät
erneut übertragen
werden, um die Synchronisierung von Kanälen aufrecht zu erhalten (d.h.
die Synchronisierung der Seiten und der Bytes), die um den Ring
gesendet werden.
-
Wenn
in jeder Seite synchrone oder isochrone Daten gesendet werden, setzt
jede nachfolgende Seite bekanntlich dort ein, wo die vorhergehende
Seite aufgehört
hat. Somit setzt ein Zeitschlitz, der für isochrone Daten innerhalb
der Seite N + 1 reserviert ist, wieder dort ein, wo der gleiche
Zeitschlitz, welcher isochronen Daten innerhalb der Seite N vorbehalten
ist, endete. Paketierte Daten tragen diese inhärente Form eines Lesezeichens
nicht in sich, da die Pakete keine zeitliche Beziehung zu einander aufweisen.
Somit muss auf der Signalleitung im Anschluss an jedes Synchronisierbyte
ein Befehlssignal gesendet werden, um zu bezeichnen, wo innerhalb eines
gerade gesendeten Datenpakets der aktuelle Zeitschlitz innerhalb
dieses Pakets liegt. Das Befehlssignal bezeichnet entweder den Anfang
eines Pakets anderer Daten als Streaming-Daten oder eine Fortführung des
in einer vorherigen Seite gesendeten aktuellen Pakets.
-
Das
Synchronisiersignal und das auf einer einzelnen Signalleitung gesendete
Befehlssignal stellen vorzugsweise Bytes dar, die sich getrennt
von einander in der Weise problemlos dekodieren lassen, dass sogar
dann, wenn das Synchronisierbyte unmittelbar vor einem Befehlsbyte
gesendet wird, die Kodierung des Synchronisierbytes rasch separat
und von dem Befehlsbyte getrennt dekodiert wird. Vorteilhafterweise
kann es sich bei dem Synchronisierbyte um einen hexadezimalen FF-Kode
handeln und kann das Befehlsbyte ein binärer Kode in der Form OXXX XXXX
(oder ein 0x-Hexadezimalkode) sein. Deshalb stellt das Befehlsbyte
jedes Byte auf der Signalleitung mit einem führenden Byte 0 dar. Das führende Byte
0 stellt sicher, dass nur während
einer Synchronisierung auf das spezielle Muster aus acht Einsern eine
Null folgt. Somit kann jedes Synchronisierbyte rasch so dekodiert
werden, dass es den Anfang einer Seite bezeichnet, sobald auf achte
logische Einser-Werte ein logischer Spannungswert 0 folgt.
-
Entsprechend
dem zweiten Ausführungsbeispiel
für die
Verwendung speziell reservierter Zeitschlitze kann innerhalb der
Netzwerk-Schnittstelle und/oder auf oder in einem oder mehreren
Multimedia-Geräten
ein Anschluss gefunden werden, der einen Daten-Kontaktstift aufweist,
der zum Senden und/oder Empfangen einer Seite ausgelegt ist, die
einen ersten Satz Bytes enthält,
welche zeitmultiplexiert sind und in einem anderen Byte-Feld liegen
als ein zweiter Satz Bytes, und bei welchem der erste Satz Bytes
Paketdaten enthält.
Der Anschluss bzw. die Netzwerk-Schnittstelle weist außerdem einen
Signal-Kontaktstift auf, der dazu ausgelegt ist, ein Synchronisiersignal,
auf das ein Befehlssignal folgt, zu senden und/oder zu empfangen,
wobei das Synchronisiersignal eine Grenze für Bytes und Seiten anzeigt und
das Befehlssignal etwa zum gleichen Zeitpunkt wie die erste Gruppe
von Bytes zur Angabe des Beginns der Paketdaten vorliegt. Der Anfang
der Paketdaten gibt an, dass die Gruppe mehrfacher Bytes innerhalb
eines Pakets über
mehrere Seiten gesendet werden kann, und deshalb bezeichnet das
Befehlssignal, wo sich das Paket innerhalb der gerade übertragenen
Reihe von Paketen befindet. Das Kommunikationssystem weist eine
Netzwerk-Schnitt stelle und ein Multimedia-Gerät auf. Die Netzwerk-Schnittstelle besitzt
einen Daten-Kontaktstift und einen Signal-Kontaktstift. Der Daten-Kontaktstift
ist so ausgelegt, dass er eine Seite mit Daten sendet, die entsprechend
den Zeitschlitzen unterteilt sind, und der Signal-Kontaktstift ist
so ausgelegt, dass er ein Synchronisiersignal mit nachfolgendem
Befehlssignal sendet. Das Synchronisiersignal und die Befehlssignale
können
jeweils eine Länge
von einem Byte besitzen und sind kodiert. Das Multimedia-Gerät weist
außerdem einen
Daten-Kontaktstift und einen Signal-Kontaktstift auf. Der Daten-Kontaktstift
an dem Multimedia-Gerät
ist zum Empfangen der Seite mit Daten ausgelegt und der Signal-Kontaktstift
ist an einen Decoder angekoppelt, um den Synchronisiercode und den
Befehlscode zu empfangen. Der Decoder des Multimedia-Geräts dekodiert
den Synchronisiercode, um so den Anfang der Seite zu bezeichnen,
und dekodiert außerdem
den Befehlscode, um den Beginn des Datentyps innerhalb einer der
Datenpartitionen zu markieren, der sich von einem Datentyp innerhalb einer
anderen Datenpartition unterscheidet. Vorzugsweise dekodiert der
Decoder den Befehlscode, um anzugeben, wo sich innerhalb eines Pakets
das entsprechende Paket befindet (d.h. ob das Paket am Anfang oder
zum Ende hin in einer speziellen Seite befindet). Es ist ein Verfahren
zur Datenkommunikation vorgesehen, wobei das Verfahren das Empfangen
einer Seite mit Daten umfasst, die von einem Netzwerk miteinander
verbundener Multimedia-Geräte
gesendet werden, sowie die anschließende Aufteilung bzw. Partitionierung
der Seite mit Daten in Zeitschlitze. Die partitionierten Zeitschlitze
mit Daten werden dann in eine jeweilige Vielzahl von Kanälen geleitet,
die entsprechend dem Zeitmultiplex ausgewählt wurden. Der Beginn des
ersten Kanals wird innerhalb der Vielzahl von Kanälen mit
einem Anfangs-Bytepaket signalisiert, um so den Beginn eines Datenpakets
anzuzeigen, das in dem Kanal platziert wird und, was wichtig ist,
um die Position eines Datenpakets zu bezeichnen, das innerhalb eines
speziellen Zeitschlitzes eines speziellen Bytes platziert wurde.
Wenn der Befehl den Beginn eines Pakets anzeigt, hat die nachfolgende
Seite einen Zeitschlitz, der für
die Übertragung
des nächsten
Teils des Pakets reserviert ist, und so weiter, bis das gesamte
Paket übertragen
wurde.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere
Ziele und Vorteile der Erfindung ergeben sich aus der nachfolgenden
ausführlichen
Beschreibung unter Heranziehung der beiliegenden Zeichnungen, in
denen:
-
1 ein
Blockschaltbild eines Kommunikationssystems mit untereinander verbundenen
Knoten (Netzwerk) ist, in dem einer oder mehrere der Knoten eine
Steuerung aufnehmen können
und ein oder mehrere Multimedia-Geräte, die mittels einer lokalen Busleitung
untereinander verbunden sind, welche mit einem Taktsignal synchronisiert
ist, das beispielsweise von dem Netzwerk gesendet wird;
-
2 ein
Blockschaltbild der Steuerung und der Multimedia-Geräte zeigt,
die in einer Ringtopologie verbunden sind, wobei die Steuerung und
jedes Gerät
eine Mindestzahl von fünf
Kontaktstiften besitzt und wobei die Steuerung und jedes Gerät zur bidirektionalen
Kommunikation auf einem einzigen Kanal in der Lage ist;
-
3 ein
Blockschaltbild der Steuerung und der Multimedia-Geräte zeigt,
die in einer Bustopologie angeschlossen sind, wobei die Steuerung
und jedes der Geräte
eine Mindestzahl von fünf
Kontaktstiften besitzt und wobei die Steuerung zur bidirektionalen
Kommunikation auf einem einzigen Kanal zu jedem Gerät in der
Lage ist und jedes Gerät
zur unidirektionalen Kommunikation auf einem einzigen Kanal zu einem
anderen Gerät
ausgelegt ist;
-
4 ein
Blockschaltbild der Steuerung und von Multimedia-Geräten ist,
die in einer Bustopologie angeschlossen sind, wobei die Steuerung
und jedes Gerät
eine Mindestzahl von drei Kontaktstiften besitzt und wobei die Steuerung
und jedes Gerät
zur unidirektionalen Kommunikation auf einem einzigen Kanal ausgelegt
sind;
-
5 ein
Taktungsschema eines Taktsignals zeigt, das von einem Haupttaktgeber
(wie zum Beispiel der Steuerung eines anderen Knotens innerhalb des
Netzwerks) zum Synchronisieren der Übertragungssteue rung, der Adressen-
und der Datenbits innerhalb entsprechender Bytes ausgesendet wird, welche über die
lokale Busleitung übermittelt
werden;
-
6 ein
Taktungsschema einer Gruppe von Kanälen im Zeitmultiplex über eine
Seite zeigt, wobei einer der Kanäle
Daten aufweist, die mit einem Befehlsbyte bezeichnet sind;
-
7 ein
Taktungsschema einer Gruppe von Kanälen ist, die zu, durch und
von entsprechenden Geräten
weitergeleitet werden, welche über
eine Ringtopologie der lokalen Busleitung mit einander verbunden
sind;
-
8 ein
Blockschaltbild der Kanäle
zeigt, welche zwischen einem Gerät
und der Steuerung gebildet werden, sowie der zeitlichen Abfolge,
mit der beim Aufbau der Kanäle
zur Kommunikation zwischen den Geräten und der Steuerung gearbeitet wird,
wodurch ein Kanal einen jeweiligen Typ von Daten leiten kann, der
sich von einem oder mehreren der anderen Kanäle gemäß dem Beispiel aus 6 unterscheidet;
-
9 ein
Taktungsschema mit der Darstellung mehrerer Typen von Daten ist,
welche gegebenenfalls über
vier Kanäle
innerhalb einer Seite gesendet werden, wobei die Seite jedes Synchronisiersignal
wiederholt, das über
den Signalleiter zugeleitet wird;
-
10 ein
Taktungsschema für
die Platzierung eines Kodes auf der Datenleitung ist, die mit einem
Synchronisierimpuls synchronisiert ist, um so den Anfang einer Kanaladresse
oder einer Seiteneinleitung zu bezeichnen und nicht die Platzierung
des Kodes auf der Signalleitung als ganzes Byte, um die Anforderungen
hinsichtlich der Bandbreite auf der Signalleitung zu senken;
-
11 ein
Taktungsschema von Kanälen zeigt,
die auf der lokalen Busleitung aufgebaut sind, wobei jeder Kanal
mittels eines Adressiersignals aufgebaut wird, das auf einem Signalleiter
gesendet wird; dabei kann mittels eines Befehlssignals, das ebenfalls
auf dem Signalleiter gesendet wird, ein spezifischer Datentyp eingerichtet
werden;
-
12 ein
Blockschaltbild der Kanäle
zeigt, die zwischen der Steuerung und einem Multimedia-Gerät sowie
zwischen Multimedia-Geräten
gebildet werden, sowie die Taktung der Daten, die anschließend entsprechend
dem in 11 dargestellten Beispiel für ein Adressen-
und Steuerungsprotokoll über
diese Kanäle
gesendet werden;
-
13 eine
Tabelle von Kanaladressen und entsprechender Quellen und Zielpunkte
für jede
Kanaladresse bei dem in 11 und 12 dargestellten
Beispiel ist;
-
14 eine
Tabelle mit einer Vielzahl von Kanaladressen ist, die beiseite gesetzt
und von der Steuerung zu dem Zweck verwendbar sind, spezifische
Kanäle über die
lokale Busleitung und eine Vielzahl von Befehlen aufzubauen, die
von der Steuerung oder einem Gerät
gesendet werden können,
die dazu einsetzbar sind, die Adressierung einzuleiten, das Zielgerät über einen Übertragungsfehler
zu informieren, dem Zielgerät
bekannt zu geben, dass sich in einem Kanal keine Daten befinden,
und/oder das Zielgerät
darüber
zu informieren, dass die gerade über
einen Kanal übertragenen
Daten einem bestimmten Typus angehören.
-
Auch
wenn an der Erfindung verschiedene Modifizierungen und alternative
Formen realisiert werden können,
werden in den Zeichnungen spezielle Ausführungsbeispiele derselben dargestellt
und nachstehend ausführlich
beschrieben. Dabei versteht sich jedoch von selbst, dass die Zeichnungen und
die zugehörige
ausführliche
Beschreibung nicht zur Einschränkung
der Erfindung auf die besondere dargestellte Form gedacht ist, sondern
dass eher daran gedacht ist, dass alle Modifizierungen, Äquivalente
und Alternativen erfasst werden sollen, die in den Rahmen des Erfindungsgedankens
und des Umfangs der vorliegenden Erfindung fallen, wie er durch die
beiliegenden Ansprüche
definiert ist.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
-
Es
wird nun auf 1 in der Zeichnung verwiesen,
welche ein Kommunikationssystem 10 mit einer Gruppe von
Knoten 12 zeigt, die in einem Netzwerk untereinander verbunden
sind. Dabei wird jeder Knoten 12 durch eine Kommunikationsleitung 14 unter
Bildung eines Rings geschaltet. Signale, die über die Kommunikationsleitung 14 weitergeleitet
werden, sind vorzugsweise so synchronisiert, dass ein Netzwerk mit
synchronisierter Ringtopologie aus untereinander verbundenen Knoten
gebildet wird. Somit sind alle Knoten funktionsmäßig mit einem Bezugstakt in
einem Hauptteil des Netzwerks synchronisiert. Eine geeignete Kommunikationsleitung
weist dabei eine Glasfaser auf.
-
Jeder
Knoten 12 arbeitet entweder als übergeordnetes System (Master)
oder als untergeordnetes System (Slave), die zu einem Kommunikationssystem 10 zusammengeschaltet
sind. Ein Knoten des Kommunikationssystems ist als Master ausgelegt,
welcher das Kommunikationssystem 10 in Gang setzt, und
liefert einen Bezugstakt für
das Netzwerk. Der Master kann auch ein Register enthalten, in das die
dem Master zugeordnete Software schreibt. Die Software setzt das
Register in der Weise, dass der diesem Register zugeordnete Knoten
als Master bezeichnet wird, separat von anderen Registern anderer
Knoten, die als Slaves bezeichnet werden.
-
Zwischen
das Netzwerk aus untereinander verbundenen Knoten und die lokale
Busleitung 17 eines speziellen Knotens ist eine Netzwerk-Schnittstelle 20 geschaltet.
Die Schnittstelle 20 umfasst einen Kommunikationsanschluss
zur Übermittlung
von Meldungen zwischen den Übertragungsleitungen 14 und
der lokalen Busleitung 17. Der Kommunikationsanschluss
ist auch in jedem der Multimedia-Geräte 16 zu finden und
weist je nach seiner Konfiguration einen Takt-Kontaktstift, einen oder zwei Signal-Kontaktstifte
und mindestens einen Daten-Kontaktstift (oder
zumindest ein Paar solcher Kontaktstifte) auf. Wie sich aus dem
nachstehenden Text ergibt, kann die Funktion der Netzwerk-Schnittstelle
innerhalb eines oder mehrerer Multimedia-Geräte untergebracht werden, oder
die Netzwerk-Schnittstelle kann getrennt von den Multimedia-Geräten ausgeführt sein. Ein
Multimedia-Gerät 16 kann
sich auf einem einzigen monolithischen Substrat befinden oder die
Netzwerk-Schnittstelle kann auch selbst ein einzelnes monolithisches
Substrat sein. Somit ist der Kommunikationsanschluss beispielsweise
auf einem monolithischen Substrat einer Netzwerk-Schnittstelle oder auf
einem monolithischen Substrat eines Multimedia-Geräts zu finden,
das gegebenenfalls die Netzwerk-Schnittstelle enthält oder
auch nicht.
-
Vorzugsweise
umfasst die Netzwerk-Schnittstelle 20 einen digitalen Signal-Prozessor bzw. eine Steuerung,
die sich programmieren lässt,
und kann ein Speichermedium umfassen, das betrieblich mit der Ausführungseinheit
des Prozessors verknüpft
ist. Bei dem Multimedia-Gerät 16,
das sich in einfacher oder mehrfacher Ausführung in einem Knoten finden lässt, handelt
es sich um jedes Gerät,
das Multimedia-Signale senden und/oder empfangen kann. Solche Signale
umfassen Sprachsignale, Tonsignale, Bildsignale, Datendateien oder
ausführbare
Datenprogramme. Zu den Beispielen für derartige Geräte gehören u.a.
Telefone, Sensoren, CD-Spieler, DVD-Spieler, Videokameras, Lautsprecher,
Monitore, Computer, so genannte Persönliche Digitale Assistenten
(PDAs), frequenzmodulierte Stereoanlagen, Navigationssystemen, usw.
-
Entsprechend
einem Beispiel können
die Multimedia-Geräte
in einem Kraftfahrzeug angeordnet sein und wird das Kommunikationssystem
in dem Kraftfahrzeug zur Verbindung der Multimedia-Geräte in einem
Knoten 12 mit einander oder mit anderen Multimedia-Geräten in einem
anderen Kraftfahrzeug, einem Satellit oder einer stationären Basisstation
eingesetzt. Je nachdem, ob die Daten an dem Multimedia-Gerät verschlüsselt oder
kodiert werden, ermöglicht
das Kommunikationssystem 10 die Übertragung derartiger Informationen
zum Zielpunkt entweder in Form von (synchronen oder isochronen)
Streaming-Daten, Steuerdaten oder asynchronen (paketierten) Daten.
Außerdem
kann das Kommunikationssystem 10 die Übertragung aller vier Typen
von Daten über
einen oder mehrere Kanäle
ermöglichen, die
innerhalb der Kommunikationsleitung 14 oder über eine
lokale Busleitung 17 aufgebaut werden. Das Kommunikationssystem
bringt somit die verschiedenen Datentypen unter, um so die verschiedenen
Arten von Multimedia-Geräten,
die hier verwendet werden können,
noch vielseitiger zu machen.
-
Dabei
ist zu erkennen, dass eines oder mehrere der Multimedia-Geräte Daten
mit einer Abtastgeschwindigkeit (fs) abtasten kann, die höher als
die Seiten-Synchronisiergeschwindigkeit (FSY) der Übertragungsleitung 14.
Zum Beispiel kann ein Multimedia-Gerät 16 ein CD-Spieler
sein, der mit etwa 44,1 KHz abtastet. Der CD-Spieler kann Daten
in einem Strom von beispielsweise 16 Bit pro Audiokanal (32 Bit
pro Stereokanal) pro Abtast-Taktperiode abgeben, was zu einer Baud-Rate über die Übertragungsleitung
(in bps) von 32 Bit/Stereoabtastung × 44,1 k Abtastungen/Sekunde
= 1,4112 Mbps führt. Die
nicht auf Null rückstellbaren
Daten (NRZ) können auf
unterschiedliche Weise kodiert werden. Daten können auch beispielsweise unter
Heranziehung der allgemein bekannten Kodiertechnik nach Miller kodiert
werden. Zur alternativen Kodierung gehören u.a. die doppelphasige
Kodierung oder eine Kodierung in der Form, dass der kodierte Bitstrom
keinen akkumulierten Gleichstromwert hervorruft. Die zuletzt genannte
Kodierungsform wird häufig
als DC-adaptive Kodierung bezeichnet und wird in einer parallel anhängigen und
gemeinsam mit dieser Anmeldung übertragenen
Anmeldung mit der Anmeldenummer 09/710.220 und mit dem Titel "Kodierer in einem Kommunikationssystem,
bei dem eine kodierte DC-Akkumulierung vermieden wird und Kodierungsverletzungen
zur Synchronisierung eines Dekodierers und zur Erfassung von Übertragungsfehlern
einsetzbar sind" beschrieben.
-
Wenn
die Seiten-Synchronisierungsgeschwindigkeit (FSR) über die Übertragungsleitung 14 kleiner
als 48 KHz ist (z.B. könnte
man FSR so wählen,
dass sie zu einer CD-Abtastgeschwindigkeit von 44,1 KHz passt),
dann können
die von einem mit 48 KHz abgetasteten DVD-Spieler strömenden Daten nicht
synchron über
die Übertragungsleitung 14 zu
einem anderen Knoten (d.h. einem Lautsprecher) übertragen werden. Stattdessen
müssen
die im Strom fließenden
Daten als isochrone Streaming-Daten übertragen werden, im Unterschied
zu synchronen Streaming-Daten.
-
Neben
den Streaming-Daten, die zur Übertragungsgeschwindigkeit
auf der Übertragungsleitung 14 asynchron
sind, können
auch andere Typen von Daten asynchron sein, zum Beispiel paketierte Daten
oder Steuerdaten. In jedem Fall werden jedoch die verschiedenen
Datentypen über
die Übertragungsleitung 14 synchron
zugeleitet. Bei dem Kommunikationssystem 10 handelt es
sich deshalb um ein synchrones Übertragungssystem,
das mit unterschiedlichen Datentypen arbeitet, die mit unterschiedlichen
Frequenzen abgetastet werden, oder mit Datentypen, die in unregelmäßiger, nicht
zeitlicher Beziehung zu einander stehen.
-
Es
wird nun auf 2 verwiesen, die eine Ringtopologie
für den
Knoten 12d zeigt. Im Gegensatz zu der Ringtopologie gemäß 2 stellt 3 einen
Knoten 12d mit einer Bustopologie dar. 2 und 3 stellen
eine physikalische Schichtspezifikation für die lokale Busleitung dar,
welche die Netzwerk-Schnittstelle 20 mit Multimedia-Geräten 16 verbindet.
Bei der Ringtopologie werden die Geräte mittels unidirektionaler Übertragungsleitungen
mit einander verbunden, wobei eine einzelne geschlossene Schleife
gebildet wird. Beispielsweise wird mit der Token-Ring-Technik und
FDDI-Netzwerken eine Ringtopologie realisiert. Bei der Bustopologie
handelt es sich um eine lineare Architektur, bei welcher die Übertragung
von Geräten über die
Länge des
Mediums stattfindet und von allen anderen Geräten empfangen wird. Eine populäre Bustopologie
umfasst das Ethernet oder Netzwerke nach dem Standard IEEE 802.3.
-
2 und 3 stellen
die vergleichsweise wenigen Kontaktstifte dar, die an jedem Gerät bzw. an
jeder Steuerung benötigt
werden, um die Datenübertragung
vorzunehmen – sei
es in einer Ringtopologie oder einer Bustopologie. Wenn nur ein
einziger Datenleiter eingesetzt wird, dann werden an jedem Gerät bzw. jeder
Steuerung nur fünf
Kontaktstifte benötigt:
D_IN (Dateneingang), D_OUT (Datenausgang), SIG_IN (Signaleingang),
SIG_OUT (Signalausgang) und CLK (Takt). Jedes der Geräte kann
dabei als Taktgeber für
das Taktsignal (CLK) dienen; vorzugsweise wird es jedoch von der
Netzwerk-Schnittstelle bzw. der Steuerung 20 vorgegeben.
Somit kann auch der Takt der Steuerung 20 gegenüber einem
eventuellen anderen Haupttaktgeber in einem der anderen Knoten des
Kommunikationssystems nachgeführt
sein. Die Steuerung 20 kann deshalb mit einer Schaltung
zur Taktwiederherstellung arbeiten, um Daten zu erhalten, die von
einem anderen Knoten über
das Netzwerk gesendet werden, und um den wiederhergestellten Takt
verschiedenen Geräten
innerhalb des lokalen Knotens anzubieten, wie dies hier zu erkennen
ist. Alternativ kann die Steuerung 20 mit einem Kristall-Oszillator
arbeiten, der nicht nur einen Haupttakt für andere Geräte innerhalb
des Knotens liefert, liefert, sondern möglicherweise auch für andere
Knoten innerhalb des Kommunikationssystems.
-
2 stellt
eine bidirektionale Kommunikation dar, die auf einem einzelnen Kanal
zwischen der Steuerung 20 und einem der Geräte 16 sowie
einem beliebigen Paar Geräte 16 vorliegen
kann. Entsprechend der Darstellung kann der Kanal A ("CH A") von der Steuerung 20 zu
einem ersten Gerät 16a gesendet
werden, und über
das Gerät 16a zum
Zielgerät (z.B.
Gerät 16b)
umgeleitet werden. Die Ausgangssignale aus dem Gerät 16b werden
einfach während ihres
Durchgangs durch das Gerät 16b vom
Kontaktstift D_IN zum Kontaktstift D_OUT verzögert. Der Kanal A kann sich
um die Schleife so lange fortsetzen, bis er am Ziel empfangen wird – entweder
in der Steuerung oder in einem anderen Gerät. Somit gestattet eine Ringtopologie
eine bidirektionale Kanalübertragung
zwischen der Steuerung und jedem Gerät sowie zwischen jedem Gerät in einem
Gerätepaar.
-
Die
Bustopologie gemäß 3 kann
für eine bidirektionale
Kommunikation auf einem einzelnen Kanal zwischen der Steuerung 20 und
jedem Gerät 16 sorgen;
die Bustopologie sorgt jedoch nur für eine unidirektionale Kommunikation
auf einem einzelnen Kanal zwischen den Geräten in jedem Gerätepaar 16.
Während
der Kanal A bei einer bidirektionalen Kommunikation vom Kontaktstift
D_OUT der Steuerung 20 zum Zielgerät und über den Kontaktstift D_IN wieder
zurück
zur Steuerung gesendet werden kann, wird ein Paar Kanäle benötigt, wenn
zwischen den Geräten
in einem Gerätepaar
Kommunikation abläuft.
Während
das Gerät 16b den
vom Kontaktstift D_OUT kommenden Kanal A an die Steuerung 20 senden
kann, muss der Ausgang D_OUT von der Steuerung 20 einen
anderen Kanal – den
Kanal B ("CH B") an den D_IN-Eingang
des Geräts 16a senden;
somit kann zwischen den Geräten
in einem Gerätepaar
(16a und 16b) nur eine unidirektionale Kommunikation
vorliegen.
-
4 stellt
eine alternative Konfiguration für die
lokale Busleitung des Knotens 12d dar. Im Unterschied zu
den unidirektionalen Daten- und Signalleitern aus 3 weist
die in 4 dargestellte Bustopologie bidirektionale Daten-
und Signalleiter auf. Dabei benötigt
jedes Gerät
bzw. jede Steuerung nur mindestens drei Kontaktstifte: D (Daten),
SIG (Signale) und CLK (Takt). Wenn für eine bessere Bandbreite mehr
als ein Datenleiter benötigt
wird, sind mehr als drei Kontaktstifte nötig, um die zusätzlichen
Datenleiter unterzubringen.
-
Eine
Zielsetzung beim Einsatz einer Netzwerk-Schnittstelle besteht darin,
die Intelligenz der Übertragung
auf der lokalen Busleitung in die Schnittstelle zu verlagern, im
Unterschied zur Einbeziehung dieser Intelligenz in die Multimedia-Geräte oder
in das Netzwerk. Dies macht eine Verkapselung des Netzwerk-Protokolls
innerhalb der Netzwerk-Schnittstelleneinheit möglich, wobei mit einer geringeren Anzahl
von Kontaktstiften und der Möglichkeit
zur erneuten Verwendung von schon vorhandenen Multimedia-Geräten gearbeitet
wird. Dabei ergibt sich insgesamt eine Verkürzung der Zeitdauer von der
Entwicklung bis zur Marktreife, mit dem zusätzlichen Vorteil der Kompatibilität in der
Geräteauslegung nach
vorn und nach hinten. Die Netzwerk-Schnittstelle ermöglicht es
der lokalen Busleitung, eine Standardschnittstelle zwischen der
Netzwerk-Schnittstelle und mehreren Geräten zu definieren, und unterstützt die
Kommunikation zwischen den Geräten
untereinander innerhalb des Knotens, ohne die Einwirkung durch die
Netzwerk-Schnittstelle
vorauszusetzen. Unabhängig
davon, ob es sich bei dem Datentyp um Streaming-Daten (isochron
oder synchron), paketierte Daten oder Steuerdaten handelt, nimmt
die Netzwerk-Schnittstelle alle verschiedenen Datentypen auf, die
auf ein synchrones Netz gegeben werden, und arbeitet dennoch mit
einer Seiten-Synchronisiergeschwindigkeit,
die sich von der Abtastgeschwindigkeit der Streaming-Daten unterscheidet. Die
Netzwerk-Schnittstelle verfolgt außerdem, wo in einem Datenpaket
die aktuelle Datenseite vorhanden ist. Es kann sichergestellt werden,
dass mehrere Datenseiten nicht nur die vollständigen Informationen der Streaming-Daten übertragen
können,
sondern auch die vollständigen
Informationen der paketierten Daten.
-
Unabhängig davon,
ob die Signalleitungen (SIG) und die Datenleitungen (D) unidirektional (2 und 3)
oder bidirektional (4) sind, zeigt 5,
dass Signale, die auf die Signalleitung und die Datenleitung gegeben
werden, mit dem Taktsignal synchronisiert sind und im typischen
Fall mit dem Netzwerk Synchronisiert werden. Wenn die Taktgeschwindigkeit
der lokalen Busleitung sich von dem Takt auf dem Netzwerk unterscheidet,
müssen unter
Umständen
Streaming-Daten in isochrone Daten umgewandelt werden, und umgekehrt.
Die Signalkodes und die Datenkodes gehen dabei synchron zu den Übergängen des
Taktsignals über.
Wie vorstehend ausgeführt,
kommt das Taktsignal von einem Netzwerk oder von einem Kristall-Oszillator
innerhalb eines Knotens des Netzwerks und deshalb kann es sich bei
der Netzwerk-Schnittstelle vorzugsweise um eine voll synchrone Schnittstelle
handeln – d.h.
um eine mit dem Netzwerk und der lokalen Busleitung synchronisierte
Schnittstelle.
-
Die
Taktrate ist vorzugsweise gleich der Baud-Rate des Netzwerks. Wenn
zum Beispiel das Netzwerk eine Seitensynchronisierungsgeschwindigkeit
von 48 KHz aufweist, kann die Taktrate 1024 × 48 KHz bzw. 49,152 MHz betragen.
Dies gilt natürlich bei
Annahme von 65 Bytes pro Seite bei Zwei-Bit-Kodierung.
-
Während bei
den hier beschriebenen Beispiel die Taktfrequenz für die Synchronisierung
innerhalb des Netzwerks und der lokalen Busleitung etwa 1024 fs
betragen kann, nicht aber unbedingt betragen muss, ist die Frequenz
des seriellen Takts, der zur Übertragung
serieller Informationen für
Multimedia-Geräte
eingesetzt wird, wesentlich geringer (z.B. 128 fs). Dies lässt zum
Beispiel Streaming-Daten
von einem Gerät
zu, das unter aufeinander folgenden Seiten, die über die lokale Busleitung sowie über das Netzwerk
gesendet werden, partitioniert werden soll. Zum Beispiel können 8 Bytes
aus einer 64-Byte-Seite für
einen Kanal A reserviert werden, und zwar separat und getrennt von
eventuellen weiteren 8 Bytes dieser Seite, die dem Kanal B zugewiesen
sind, und so fort. Der Kanal kann dazu verwendet werden, beispielsweise
isochrone Daten zu senden, während der
Kanal B zum Beispiel zum Senden paketierter Daten eingesetzt werden
kann. Somit können
innerhalb jeder Seite Zeitschlitze bzw. Zeitfenster verwendet und
zum Senden unterschiedlicher Datentypen zugewiesen werden.
-
Gemäß der Darstellung
in 5 wird ein Synchronisierungs-Byte ("SYC") dazu verwendet, Bytes
und Datenseiten abzugrenzen. Das Synchronisierungsbyte steht am
Anfang jeder Seite. Der erste Zeitschlitz innerhalb einer Seite,
die auf ein Synchronisierungsbyte folgt, kann zum Senden eines bestimmten
Datentyps separat und getrennt von einem anschließenden Zeitschlitz
zugewiesen werden, der für
einen anderen Datentyp reserviert ist, und so fort für jeden
Zeitschlitz jeder entsprechenden Seite.
-
Auf
jedes Synchronisierungsbyte kann ein Befehlsbyte ("CMD") folgen. Im Unterschied
zu Streaming-Daten, die dort aufgreifen, wo die letzten Streaming-Daten auf der vorherigen
Seite eingestellt wurden, weisen paketierte Daten keine zeitliche
Beziehung auf und deshalb ist nicht bekannt, wo innerhalb eines
Pakets die vorhergehende Seite aufgehört hat. Das Befehlsbyte signalisiert
als solches, dass das vorherige Paket wieder aufgenommen werden muss
oder dass dann, wenn ein neues Paket zur Übertragung bereit steht, der
Start eines neuen Pakets ansteht. Deshalb wird das Befehlsbyte dazu
verwendet, den Anfang eines Pakets innerhalb eines speziellen Zeitschlitzes
gesendeter Daten oder eine Fortsetzung eines vorherigen Datenpakets
in diesem Zeitschlitz anzuzeigen. Weitere Einzelheiten zum Befehlsbyte
werden nachstehend besprochen.
-
6 stellt
ein Beispiel dar, bei dem vier Zeitschlitze TS1, TS2, TS3 und TS4
jedem Rahmen zuzuweisen sind. Die Einleitung der Zeitschlitz-Partitionen
innerhalb einer Seite wird durch einen speziellen Kode des Synchronisiersignals
signalisiert. Das Synchronisierungssignal kann ein vollständiges Byte sein
und wenn dies der Fall ist, dann handelt es sich um einen kodierten
hexadezimalen Wert FF, der in einen binären Wert 11111111 umgesetzt
wird. Ein Befehlsbyte kann zwischen aufeinander folgende Synchronisierungsbytes
zu Anfang eines speziellen Zeitschlitzes gesetzt sein. Bei dem dargestellten
Beispiel wird der Befehl A ("CMD
A") an den Anfang
des Zeitschlitzes 1 gesetzt, der dem ersten Byte der Daten A entspricht.
Bei Bedarf kann der Befehl A an den Anfang des ersten Zeitschlitzes
oder an den Anfang des zweiten Zeitschlitzes, des dritten Zeitschlitzes,
usw. gesetzt sein. Ist er an den Anfang des ersten Zeitschlitzes
gesetzt, dann wird festgestellt, dass ein binärer Kode OXXX XXXX eine einfache
Dekodierung eines Synchronisierungsbytes mit acht Einsern zulässt, auf
die eine 0 folgt, wobei es sich bei 0 um das links stehende bzw.
führende
Bit des Befehlsbytes handelt. Verwendet man acht Einser für ein Synchronisierungsbyte
und eine 0 an den links stehenden bzw. führenden Stellen eines Befehlsbytes,
so erbringt dies eine rasche Dekodierung des Synchronisierungsbytes,
um anzuzeigen, dass unmittelbar nach dem Empfang der letzten 1 an
der rechts stehenden Position von der Steuerung Daten A von dem Quellgerät gesendet
werden müssen.
Die Verwendung eines speziellen Bitmusters für das Synchronisierungsbyte
ermöglicht
eine rasche Erfassung und Abgrenzung an den Seitengrenzen durch
das Quellgerät.
-
Gemäß dem Taktungsschema 30 weisen
die TS1-4 (d.h. Kanal A bis Kanal D) zugewiesenen Daten eine Mindestlänge von
4 Bytes für
jeden Zeitschlitz bzw. Kanal auf. Natürlich kann jedoch die Mindestkanallänge nur
1 Byte lang sein und kann eine Seite weniger als 16 Bytes lang sein
(wie dargestellt) oder eine Länge
von mehr als 16 Bytes besitzen. Nur zur einfacheren und kürzeren Darstellung
zeigt das Taktungsschema 30 eine Seite mit 16 Byte mit
Zeitschlitzen (bzw. Kanälen),
die jeweils 4 Bytes lang sind.
-
Das
Taktungsschema 32 zeigt, dass das Befehlssignal (bzw. Byte)
nicht innerhalb der ersten Bytestelle des ersten Zeitschlitzes vorkommen
muss. Stattdessen kann das Befehlssignal auf der Signalleitung in Übereinstimmung
mit der ersten Bytestelle des zweiten Zeitschlitzes oder auch an
der ersten Bytestelle des dritten, vierten, etc. Zeitschlitzes gesendet
werden. Mindestens ein Befehlssignal wird pro Seite gesendet, wenn
zur Aussendung paketierter Daten ein Zeitschlitz reserviert werden
muss. Das Taktungsschema 32 ist nur ein Beispiel zur Darstellung,
dass der Befehl für
den Anfang eines Pakets oder die Fortführung eines Pakets am Anfang
des zweiten Zeitschlitzes stehen kann, anstelle des ersten Zeitschlitzes
wie bei dem Taktungsschema 30.
-
Das
Datenübertragungsprotokoll
aus 6 ist bei unidirektionalen oder bidirektionalen
Daten-/Signalleitungen einsetzbar. Somit gilt das Übertragungsprotokoll
für ein
Gerät mit
mindestens drei Kontaktstiften oder ein Gerät mit mindestens fünf Kontaktstiften
(vgl. 2 bis 4). Bei einer Bustopologie muss
jedoch nach Übertragung
eines speziellen Kanals durch ein Quellgerät das Quellgerät an seinem
Ausgang drei Zustände
aufweisen. Die Ausgänge
besitzen drei Zustände,
um so die Übertragung
eines anderen Geräts
nicht vorzunehmen.
-
Eine
Meldung kann aus dem Netzwerk oder nicht aus dem Netzwerk (d.h.
von einem Gerät
auf der lokalen Busleitung, die nicht die Steuerung ist) abgeleitet
werden. Unabhängig
davon überträgt die Steuerung
das Synchronisierungssignal auf der Signalleitung, um so die Zeitschlitze
und Kanäle
für jede Seite
einzurichten. Wenn ein Gerät
die Meldung überträgt, dann überträgt das Gerät das Befehlsbyte, das
andere Daten als Streaming-Daten bezeichnet, innerhalb eines Zeitschlitzes,
welcher das Befehlsbyte besitzt. Das Quellgerät sendet auch die Datenbytes
in diesem Zeitschlitz. Wenn eine unidirektionale Busleitung verwendet
wird, dann sendet das Quellgerät
Befehle und Daten auf den Kontaktstiften SIG_OUT und DATA_OUT des
Geräts
an die entsprechenden Kontaktstifte SIG_IN und DATA_IN der Steuerung
mit einer festgelegten Verzögerung
nach der Weiterleitungs-Verzögerung
auf der lokalen Busleitung. Wenn die Daten- und Signalleitungen
bidirektional sind, dann sendet das Quellgerät nur die Befehle und Daten
auf den Kontaktstiften SIG und D an die Kontaktstifte SIG und D
der Steuerung.
-
7 stellt
das Datenübertragungsprotokoll in
einer Ringtopologie dar. Insbesondere veranschaulicht 7 ein
Taktungsschema einer Ringtopologie, bei der unidirektionale Busleitungen
verwendet werden, die entsprechend der in 2 dargestellten
Topologie angeordnet sind. Die Daten werden über einen einzigen Kanal zwischen
einer Steuerung 20 und einem der Geräte 16 sowie auch zwischen
den Geräten
in einem Gerätepaar 16 um
den Ring gesendet. Somit kann die Steuerung 20 ein Synchronisierungsbyte
an der Bytestelle BYTE0 senden, und nach einer Weiterleitungs-Verzögerung sendet
das Quellgerät
(d.h. die Steuerung bei diesem Beispiel) einen ersten Zeitschlitz
mit Daten, bei dem es sich um einen Kanal A handeln könnte, an
den sich ein Kanal B anschließt,
usw.; die Weiterleitungs-Verzögerung
könnte
dabei eine Länge
von 4 Bytes aufweisen, wie dies bei dem mit 34 bezeichneten
Beispiel eines Taktungsschemas dargestellt ist. Die Weiterleitung
könnte
jedoch mehr oder weniger 4 Bytes betragen. Zusammen mit SIG_OUT,
das von der Steuerungsquelle gesendet wird, wird in Entsprechung
zu den verschiedenen Zeitschlitzen innerhalb der Seite, die an der
Bytestelle BYTE0 initialisiert wird, DATA_OUT gesendet.
-
Nach
einer gewissen zeitlichen Verzögerung innerhalb
des Geräts
0, die mit M bezeichnet ist, wird das Synchronisierungsbyte vom
Gerät 0
erneut übertragen.
Der Vorgang der Weiterleitung eines Kanals um den Ring setzt sich
fort, wobei verschiedene Verzögerungen
innerhalb bestimmter Geräte
berücksichtigt
werden. Es wird festgestellt, dass das Taktungsschema für die Kontaktstifte
SIG_OUT und DATA_OUT des Geräts
0, bezeichnet mit 36, Daten aufnehmen kann, die völlig anders
als die von der Steuerung ausgesendeten Daten sind, wie dies in dem
Taktungsschema 36 dargestellt ist. Somit kann die Steuerung
von ihrem Kontaktstift DATA_OUT aus mehreren Kanäle senden und kann auch jedes
Gerät mehrere
Kanäle
mit anderen Daten als von den Kontaktstiften DATA_OUT senden. Die
Kanäle
sind einfach Leitungen, über
welche spezielle Datentypen gesendet werden.
-
Das
Taktungsschema 38 zeigt, dass die Daten des Kanals A für das Gerät 1 bestimmt
sein können,
und doch sendet das Gerät
1 innerhalb des ersten Zeitschlitzes neue Daten, die anders als
die Daten des Kanals A sind – d.h.
die neuen Daten sind dabei DATA D. Somit zeigt das Diagramm 38 eine
andere Verzögerung
N. Das Gerät
1 erzeugt tatsächlich
einen Kanal D und E mit anderen Daten in den Zeitschlitzen 0 und
1. Deshalb stellt das Taktungsschema 34 die Kommunikation
von der Steuerung aus dar; das Taktungsschema 36 zeigt
die Kommunikation vom Gerät
1 aus, und das Taktungsschema 38 zeigt die Kommunikation
vom Gerät
2 aus. Während
der Befehl A gegebenenfalls einen Anfang eines Paketbefehls anzeigt,
kann der Befehl D eine Fortführung des
Paketbefehls anzeigen. Somit könnten
die Daten A paketierte Daten sein uns insbesondere der Anfang der
paketierten Daten, während
die Daten D auch paketierte Daten sein können.
-
Bei
dem in 7 dargestellten Beispiel handelt es sich bei den
Daten A um andere Daten als Streaming-Daten, die von der Steuerung
an das erste Gerät
in nerhalb des Rings übertragen
werden. Nach genauem Studium der Taktungsschemata 34, 36 und 38 wird
deutlich, dass bei einer unidirektionalen lokalen Busarchitektur
die Ausgänge
aus den Kontaktstiften SIG_OUT und DATA_OUT eines bestimmten Geräts bzw.
einer bestimmten Steuerung entsprechend den Zeitschlitzen in Kanäle zugewiesen
werden, wobei ein spezieller Datentyp für jeden Zeitschlitz innerhalb
jeder Seite gilt. Daten innerhalb eines Kanals eines speziellen
Zeitschlitzes, die von einem Gerät nicht
benötigt
werden, können
an das anschließende Gerät auf dem
Ring weiter übermittelt
werden.
-
Während der
Initialisierung müssen
die Steuerung und die Geräte
entweder in der Firmware wissen, welche Zeitschlitze an die Steuerkanäle, isochronen
Kanäle,
synchronen Kanäle
zugewiesen werden müssen
und welche paketierten Kanäle
von den verschiedenen Geräten
oder von der Steuerung ausgesendet werden müssen, oder muss die Steuerung
diese Informationen in jedes Gerät
unter Verwendung der Synchronisierungs- und Sendekanäle schreiben.
Als Reaktion auf Sendemeldungen weiß die Steuerung dann, wie viele
Geräte
anschlossen sind, und kennt die Adresse jedes Kanals. Die Steuerung
kann dann Meldungen senden, bei welchen jede Kanaladresse in die
Meldung an jedes bestimmte Gerät
eingebettet ist, um anzugeben, welche Zeitschlitze verwendet werden
sollen. Sobald diese Informationen in jedes Gerät geladen sind, kann die Steuerung
dann aus jedem Gerät
auslesen. Wenn mit einer Ringtopologie gearbeitet wird, kann das
letzte Gerät
im Ring von der Steuerung aus zurück zur Steuerung auf den Synchronisier-
und Sendekanälen kommunizieren.
-
8 stellt
das Kommunikationssystem 10 dar und insbesondere die Netzwerk-Schnittstelle 20, die
zwischen ein Netzwerk mit einem Knoten 12 und eine lokale
Busleitung mit einem Multimedia-Gerät 16 geschaltet ist.
Die Zeitschlitze 1 bis 4 illustrieren Kanäle A bis D, die von der Netzwerk-Schnittstelle
an das Gerät 16 gesendet
werden. Dementsprechend kann die Steuerung 20 ein Quellgerät sein und
kann das Gerät 16 ein
Zielgerät
sein. Umgekehrt kann das Gerät 16 ein
Quellegerät
darstellen und kann die Netzwerk-Steuerung 20 ein Zielgerät sein,
wenn die Kanäle
I bis L gemäß der Darstellung
weitergeleitet werden.
-
Das
Netzwerk und die lokale Busleitung werden mit einem Takt synchronisiert,
der entweder von der Steuerung 20 oder dem Gerät 16 erzeugt
wird. Das Synchronisierbyte wird von der Steuerung 20 generiert
und die Befehlsbytes können
von dem Quellgerät
aus, zum Beispiel einer Steuerung 20 oder einem Gerät 16,
gesendet werden. Es ist wichtig, dass das Zielgerät (gleich
ob es sich bei dem Zielgerät
um ein Gerät 16 oder
eine Steuerung 20 handelt) das Synchronisierbyte und das
Befehlsbyte empfängt und
dekodiert, um zu wissen, wo die Bytes und die Seiten beginnen. Da
jeder Zeitschlitz vordefiniert wurde, funktioniert das Synchronisierungsbyte
im Wesentlichen als Synchronisierer, der byteweise arbeitet. Das
Befehlsbyte wird auch mit den Synchronisierungsbyte synchronisiert.
-
9 stellt
die verschiedenen Datentypen dar, die innerhalb der Seite gesendet
und verschiedenen Zeitschlitzen zugewiesen werden können, nämlich TS1
bis TS4. Auch wenn das Beispiel hier vier Zeitschlitze darstellt,
ist die Feststellung wichtig, dass jede Seite in mehr als vier Zeitschlitze
oder weniger als vier Zeitschlitze aufgeteilt werden kann, je nach Anzahl
der gerade gesendeten Datentypen innerhalb der Seite, der Seitengröße, der
Kanallänge,
und so weiter. Beispielsweise können
synchronen Daten zwei Zeitschlitze zugewiesen werden und kann paketierten
Daten weniger als ein Zeitschlitz zugewiesen werden, sofern die
TCP/IP-Daten nicht für
die lokale Busleitung bestimmt sind und mehr Streaming-Daten vorhanden sind.
-
10 stellt
eine Option dar, mit welcher das Synchronisierbyte bzw. das Befehlsbyte
als einzelner Bitimpuls dargestellt werden kann. Wenn die Anzahl der
Daten-Kontaktstifte gleich 8 ist, dann können 8 Bits zur gleichen Zeit,
in der ein einzelner Signalimpuls gesendet wird, ausgesendet werden.
Die 8 Datenleitungen können
in jeder Weise kodiert werden, um Seitengrenzen zu bezeichnen. Der
einzelne Synchronisierimpuls wird dabei zur Bezeichnung der Byte-Grenzen
verwendet. Die acht Datenleitungen müssen deshalb nicht als FF hexadezimal
kodiert werden, wobei das nächste
Bit eine 0 ist. Dies macht es möglich,
dass die Daten-Kontaktstifte
das Synchronisierbyte und/oder das Befehlsbyte bezeichnen, das mit
einem einzelnen Signalimpuls synchronisiert ist, wobei alle innerhalb
eines einzigen Taktzyklus in der lokalen Busleitung erreichbar sind.
-
Wenn
die Daten-Kontaktstifte gleich 4 sind und nicht 8, dann wird ein
Impuls mit einer Breite von zwei Takten benötigt, um die kodierten Synchronisier- und Befehlsbytes
weiterzuleiten, und wenn die Anzahl der Daten-Kontaktstifte 2 beträgt, wird
ein Impuls mit einer Breite von 4 Takten benötigt. Dieses Verfahren ermöglicht die
Verwendung kleinerer Kanäle
als beim normalen Ansatz. Bei acht Datenleitungen und 2 Bytes auf
der Signalleitung für
die Adresse und den Befehl entspricht der kleinste adressierbare Kanal
16 Bytes beim normalen Ansatz. Bei diesem alternativen Ansatz entspricht
bei einer beliebigen Anzahl von Datenleitungen der kleinste Kanal
2 Bytes.
-
Die
Spezifikation der physikalischen Schicht für die lokale Busleitung ist
hier so dargestellt, dass sie als bidirektionale und unidirektionale
Leiter realisiert ist. Im optimalen Fall wird mit einer bidirektionalen
Busleitung gearbeitet, um die Anzahl der Kontaktstifte für jedes
Gerät und
die Steuerung auf ein Mindestmaß zu
verringern. Während
herkömmliche
serielle Busleitungen zur Unterstützung mehrerer Datenstromtypen
oder Datentypen verwendet werden können, setzen der von Phillips
Corporation definierte Bus I2S und der von
Intel Corporation definierte Audio-Codec-Bus einen zusätzlichen
Anschluss an der Steuerung zur Aufnahme weiterer Geräte voraus. Dadurch
verbessert sich die Anzahl der Kontaktstifte an der Steuerung erheblich
und wird die Komplexität der
Bus- und Ringtopologie insgesamt besser. Verwendet man Zeitschlitze
und eine lokale Busleitung mit kleinstmöglicher Anzahl Kontaktstifte
pro Gerät und
Steuerung ist deshalb von Vorteil, weil viele digitale Signalprozessoren
tatsächlich
in der Lage sind, eine Kommunikation im Ring auf einem Chip zu realisieren.
-
Auch
wenn die lokale Busleitung die Übertragung
von Befehlen, von Synchronisierung und Daten über die lokale Busleitung synchronisiert,
ist doch deutlich, dass der lokale Takt variabel sein kann. Darüber hinaus
kann der lokale Takt mit dem Netzwerktakt synchronisiert werden,
was auch vorzugsweise geschieht. Der Datendurchsatz der lokalen
Busleitung lässt
sich jedoch je nach der Anzahl der verwendeten Datenleitungen skalieren.
Wenn nur eine einzelne Datenleitung verwendet wird, dann kann der Datendurchsatz
beispielsweise 1024 fs (d.h. 49,152 MHz bei einer Netzwerkfrequenz
von 48 KHz) betragen, wenn ein Taktge ber mit 1024 fs eingesetzt
wird. Wenn jedoch 8 Kontaktstifte eingesetzt werden, dann kann der
Datendurchsatz beispielsweise statt 49,152 Mbps auf dem lokalen
Bus 49,152 Mbps × 8
bzw. 393,216 Mbps betragen.
-
Die
Verzögerung
in der Weiterleitung entspricht mindestens einer Kanallänge und
kann ein Mehrfaches einer Kanallänge
betragen, wobei die kleinste Kanallänge 2 Byte beträgt. Die
reservierte Kanaladresse von hexadezimal FF wird von der Steuerung
als Sendekanal dazu verwendet, um die Zeitschlitze periodisch zu
synchronisieren. Es ist wünschenswert,
dass der Sendekanal einmal pro Seite vorkommt.
-
11–13 stellen
ein alternatives Ausführungsbeispiel
zu den in 6 bis 10 beschriebenen
dar. Bei Einsatz des zweiten Ausführungsbeispiels müssen eingeteilte
Zeitschlitze nicht herangezogen werden und anstelle von Zeitschlitzen kann
ein Adressierprotokoll zur Bildung der entsprechenden Kanäle eingerichtet
werden. Somit stellen 11 bis 13 den
Vorteil dar, dass das Ausführungsbeispiel
nicht an die Aussendung eines speziellen Datentyps in einem ersten
Zeitschlitz und eines anderen Datentyps in einem zweiten Zeitschlitz über mehrere
gerade übermittelte
Seiten gebunden ist. Die zusätzliche
Flexibilität
insofern, als die Möglichkeit
besteht, einen speziellen Datentyp auf der Grundlage eines Adressierprotokolls
zu bezeichnen und nicht in einem feststehenden Zeitschlitzprotokoll, macht
es möglich,
dass Daten möglicherweise
effizienter übertragen
werden können,
sofern natürlich
ein Kanal eingerichtet wird, um Streaming-Daten für jede Seite
während
Zeiten zu senden, in denen die Streaming-Daten in Echtzeit abgetastet
werden. Andere als Streaming-Daten wie beispielsweise paketierte Daten
oder Steuerdaten müssen
dabei nicht in jeder Seite gesendet werden. Damit ist es möglich, Übertragungen
bei Multimedia-Geräten
vorzunehmen, die vorwiegend mit Streaming-Daten arbeiten, um innerhalb
einer Seite mehr Kanäle
für das
Senden solcher Daten zuzuweisen, ohne dass Belastung durch Zuweisung
von Zeitschlitzen für
paketierte Daten, wenn keine Pakete zur Übermittlung zur Verfügung stehen.
-
Die
Verwendung eines Adressierprotokolls, die nachstehend beschrieben
wird, sorgt für
die beste Leistung in der Datenübertragung
und die günstigste Zuweisung
von Bandbreiten. Das in 11 bis 13 dargestellte
Protokoll zur Kanaladressierung und für die Datenübertragung lässt sich
mit bidirektionalen Leitern oder unidirektionalen Leitern auf der lokalen
Busleitung, in einer Bustopologie oder einer Ringtopologie in ähnlicher
Weise wie bei der Zuweisung von Zeitschlitzen realisieren. Mit Ausnahme
der Flexibilität
bei der kanalweisen Übertragung
eines Datentyps sind alle anderen Merkmale der Zuweisung von Zeitschlitzen
auch bei dem Ausführungsbeispiel
mit Kanaladressierung ebenfalls vorhanden.
-
Es
wird nun auf 11 verwiesen, welche ein Taktungsschema 50 zeigt,
das das die dynamische Kanalzuweisung und die Reservierung von Ressourcen
veranschaulicht. Dabei wird im Beispiel gemäß 11 über den
Signalleiter von der Steuerung aus ein Synchronisiersignal als Sendeadresse A
weitergeleitet. Die Adresse A ist so dargestellt, dass sie von der
Steuerung aus als Sendekanal weitergeleitet wird. Geht man davon
aus, dass das Taktungsschema 50 keine Initialisierung abbildet,
dann sind Daten aus dem zuvor adressierten auf den Datenleitern
vorhanden. Diese Daten sind als Pipeline- bzw. Fließband-Kanal
bekannt und werden mit einer Anzahl "X" Bytes
angegeben. Die Pipeline-Dauer besitzt eine Länge von einem Kanal und kann
von Seite zu Seite variieren. In dem Beispiel gemäß dem Taktungsschema 50 beträgt die Pipeline-Bytebreite
4 Bytes.
-
Sobald
die Steuerung die nächste
Adresse feststellt (d.h. die Adresse B), weiß das Quellgerät, dass
es seinen Übertragungsbetrieb
beendet, und sendet das zuvor adressierte Quellgerät ein Befehlssignal
(d.h. den Befehl A). Das Befehlssignal gibt den gerade gesendeten
Datentyp innerhalb eines Kanals an, der durch die vorhergehende
Adresse A (d.h. den Sendekanal A) festgelegt wird. Kanal A besteht über eine
Zeitdauer fort, die durch die nächste
Adresse bestimmt wird, welche die Steuerung (d.h. Adresse C) festlegt.
In ähnlicher
Weise wie Adresse B wird die Adresse C von der Steuerung an jedes
der Geräte gesendet
und weiß das
Quellgerät,
welches den Kanal A überträgt, dass
es seinen Übertragungsbetrieb beendet
und für
den nächsten
Kanal in Bereitschaft geht, den die vorhergehende Adresse B (d.h.
Kanal B) festlegt.
-
Das
Verfahren, nach welchem Adressen und Befehle auf einer Signalleitung
und Daten auf einer oder mehreren Datenleitungen gesendet werden, wird
durch die intelligente Steuerung koordiniert. Dies bedeutet, dass
die Steuerung über
die Adresse das Quellgerät
und das Zielgerät
(das auch die Steuerung selbst umfassen kann) festlegt. Die Steuerung legt
auch die Dauer eines Kanals in Form einer Anzahl von Bytes zwischen
den Adressen in einem nachfolgenden Adressenpaar fest. Eine Steuerung kann
beispielsweise eine kleinstmögliche
Kanallänge zwischen
den Geräten
in einem Gerätepaar
dadurch senden, dass die nächste
Adresse frühzeitig
ermittelt wird oder dass die nächste
Adresse verzögert
wird, um so möglicherweise
eine Kanallänge
zu senden, die ein Mehrfaches der kleinstmöglichen Kanallänge darstellt.
Die zusätzliche
Flexibilität
mit Aussendung von mehr Daten eines speziellen Typs wird vorrangig, sofern
allerdings auf dem Netzwerk eine lange Dauer der Streaming-Daten
vorliegt, welche über
eine Steuerung auf einer lokalen Busleitung zu ihrem Zielpunkt weiterzuleiten
sind. Das gleiche kann festgestellt werden, wenn eine lange Dauer
bei paketierten Daten in einem recht langen Burst vorliegt. Sofern
allerdings die Zuweisung in einer Seite vorhanden ist, Streaming-Daten
zu übertragen
(sofern solche vorhanden sind), könnten die paketierten Daten
sich über
Mehrfache der kleinstmöglichen
Kanallänge
erstrecken.
-
Die
Steuerung besitzt eine ausreichende Intelligenz, damit sie weiß, wann
verschiedene Datentypen vorhanden sind und übertragen werden müssen. Insbesondere
weiß die
Steuerung, dass Streaming-Daten in Echtzeit zu übertragen sind, und reserviert
dabei einen oder mehrere Kanäle
in jeder Seite für
das Senden isochroner Streaming-Daten und/oder synchroner Streaming-Daten.
-
11 stellt
eine Seitenbreite von 16 Byte dar. Der erste Kanal erstreckt sich
von der vorhergehenden Seite als Pipeline-Daten, auf welche der
Kanal A mit einer Breite von 4 Bytes folgt, an den sich Kanal B
mit einer Breite von 8 Bytes anschließt. Die Seite kann man sich
auch so vorstellen, dass sie bei Byte 4 beginnt und bei Byte 20
endet, wodurch der erste Kanal, der in dieser Seite festgelegt wird,
Kanal A ist, an den sich Kanal B und schließlich Kanal C anschließen. Die
kleinstmögliche
Kanallänge
beträgt mindestens
2 (d.h. N stellt die Kanallänge dar
und N gleich 4 ist in 1 dargestellt). Wenn jedoch
Adresse C und Befehl B um 2 Bytelängen nach oben bewegt werden,
hätte Kanal
A nur eine Länge
von 2 Bytes, ehe Adresse C auftritt und Befehl B eingeleitet wird.
Das Bezugszeichen 52 stellt die Bildung einer kleinstmöglichen
Kanallänge
von N = 2 dar und nicht mit N = 4.
-
11 zeigt
auch, dass die verschiedenen Kanäle
zur Übertragung
einer bestimmten Datenlänge
von einer einzigen Quelle zu einem einzigen Ziel aufgebaut werden.
Zum Beispiel können
die Daten in Kanal A von einer Steuerungsquelle zu einem Gerät 0 übertragen
werden, wohingegen Daten im Kanal B vom Gerät 1 zum Gerät 2 gesendet werden und Daten
im Kanal C so dargestellt werden, dass sie vom Gerät 0 zur
Steuerung gesendet werden. Weitere Einzelheiten dazu, wie Kanäle festgelegt
werden, und zu der Auswirkung dieser Kanäle als Übertragungswege sind in 12 dargestellt.
-
12 zeigt
Kommunikationswege 54 und 56, die innerhalb einer
lokalen Busleitung festgelegt sind. Die Wege werden über die
Kommunikationsanschlüsse 60 festgelegt,
die man an der Netzwerk-Schnittstelle und/oder einem oder mehreren Multimedia-Geräten findet.
Der Kommunikationsanschluss an der Steuerung überträgt Synchronisierungs- und Adressiersignale
und der Kommunikationsanschluss an den Geräten (ohne Steuerung) überträgt in erster
Linie Befehlssignale. Die lokale Busleitung kann von jeder beliebigen
Topologie sein, einschließlich
einer Bustopologie oder einer Ringtopologie. Kanal A wird dadurch
festgelegt, dass eine Adresse ("ADR
A") von der Steuerung 20 aus
zu jedem der an die lokale Busleitung angeschlossenen Geräte gesendet
wird. Nach einer Pipeline-Verzögerung übermittelt
die Steuerung 20 dann die Adresse B ("ADR B") an jedes der Geräte. Die Übertragung der Adresse B ist
ein Hinweis darauf, dass die vorhergehende Datenübertragung beendet werden muss und
das Quellgerät
für die
Adresse A seinen Sendebetrieb aufnehmen muss, indem es den Befehl
A an das Zielgerät übermittelt.
In diesem Fall handelt es sich bei dem Quellgerät um die Steuerung 20,
welche den Befehl A und die nachfolgenden Daten auf dem Kanal A
zu dem adressierten Zielgerät
0 sendet. Der Kanal A wird so lange aufrechterhalten, bis die Steuerung 20 die
nächste
Adresse sendet, bei welcher es sich bei diesem Beispiel um die Adresse
C handelt, das an jedes der Geräte
gesendet wird. Nach Empfang der Adresse C sendet das Quellgerät, das die Adresse
B empfangen hat, sein Befehlssignal, um den Kanal B von dem Quellgerät 1 zum
Zielgerät
2 einzuleiten. Der Kanal B wird bei der Aussendung der nächsten Adresse
unterbrochen, wobei diese die Adresse A ist, die von der Steuerung 20 gesendet wird
und an die sich der Befehl C des Quellegeräts dieser Adresse anschließt. Bei
diesem Beispiel handelt es sich bei dem Quellgerät um Gerät 0, welches Daten auf dem
Kanal C zur Steuerung 20 sendet.
-
Das
vorstehende Beispiel, welches das Datenübertragungsprotokoll darstellen
soll, ist einfach ein Beispiel für
eventuell zahlreiche Abwandlungen in Abhängigkeit von zahlreichen Faktoren.
Es könnten beispielsweise
mehr als drei Geräte
vorgesehen sein und sicher auch mehr als oder weniger als drei Kanäle mit einer
kleinstmöglichen
Kanallänge
von 2 Bytes, 4 Bytes, wobei jeder Kanal eine Dauer besitzt, die zum
Beispiel eine kleinstmögliche
Kanallänge übersteigt.
-
13 stellt
unter Verweis auf das Beispiel gemäß 11 bis 12 Adressen
für die
Kanaladressen A, B und C dar. Somit kann die Adresse A die Steuerung
als Quelle und das Gerät
0 als Ziel bezeichnen, wohingegen Adresse B das Gerät 1 als Quelle
und das Gerät
2 als Ziel bezeichnen kann, und so fort. Jede Adresse definiert
ein einziges Paar aus Quelle und Ziel, wobei die Dauer der Datenübertragung
der zeitliche Unterschied zwischen den Adressen ist. Außerdem wird
der gerade übertragene
Datentyp durch den Befehl bezeichnet.
-
14 stellt
ein Beispiel für
Tabellen zur Beschreibung von Adressen und Befehlen dar. Die Kanaladressen
sind dabei 8-Bit-Adressen mit dem Wert hexadezimal FF, der als Synchronisiermuster
und Sendeadresse reserviert ist. Um sicherzustellen, dass das Synchronisiermuster
nicht auftritt, werden die Adressen hexadezimal 80 bis hexadezimal
FE ebenfalls reserviert. Deshalb stehen 127 spezielle Kanaladressen
zur Verwendung durch eine Anwendung auf der lokalen Busleitung zur
Verfügung.
Ein Befehl ist ebenfalls ein Byte, wobei die Werte hexadezimal 80
bis hexadezimal FF reserviert sind, um sicherzustellen, dass kein
Synchronisiermuster auftritt. Außerdem ist das führende bzw.
links stehende Bit im Befehl immer 0 und kann als Schema zur Fehlererfassung
verwendet werden. Die Befehlsstruktur macht es möglich, dass die Geräte auf der
lokalen Busleitung den Datentyp bezeichnen, der gerade auf die lokale
Busleitung platziert wird. Alle verschiedenen Datentypen werden
von dezimal 1 bis 9 unterstützt,
um anzumerken, dass Steuerdaten, Paketdaten, isochrone Daten und
synchrone Daten als Anfangs- oder Fortsetzungsbefehl markiert werden
können,
je nachdem, ob der aktuelle Kanal das erste Byte dieser Datentypen
sendet oder ein Byte zur Fortsetzung dieser Datentypen.
-
Somit
handelt es sich bei Adressen um Sendeberechtigungen, welche die
Steuerung auf der Signalleitung anbietet, um so dem Übertragungsgerät mitzuteilen,
dass die lokale Busleitung frei und für den adressierten Kanal bereit
ist. Bei einem Kanal handelt es sich um eine Reaktion im Token-Ring durch
das Quellgerät,
mit welcher dem Zielgerät
der Datentyp und andere Steuerinformationen bekannt gegeben werden,
zum Beispiel Fehler-, Rücksetz-, Echo-
und keine Daten. Sowohl die Steuerung als auch das Zielgerät müssen den
vom Quellgerät
gesendeten Befehl prüfen.
Die Steuerung prüft
den Befehl zur Überwachung
auf einen Fehlercode oder einen Code NO DATA (keine Daten). Nach
Empfang des Fehlercodes oder des Codes NO DATA beendet die Steuerung
die Übertragung
und es wird keine weitere Bandbreite verschwendet. Nach Empfang des
Fehlercodes (ERROR) oder des Codes NO DATA ignoriert das Zielgerät die empfangenen
Daten. Zu dem Zeitpunkt, zu dem das Quellgerät auf das Adressenbyte auf
der Signalleitung reagiert, steuert das Quellgerät auch die Daten auf der Datenleitung
synchron zum Takt auf der lokalen Busleitung an. Das Zielgerät taktet
die Daten synchron auf die Datenleitung im lokalen Bus. Die Meldung
wird dadurch komplett, dass die Steuerung die nächste Kanaladresse auf der
Signalleitung sendet. Das Quellgerät stellt die Übertragung
ein und schaltet unmittelbar nach Erfassung der Änderung der Kanaladresse (bei
einer Bustopologie) die Datenleitung in drei Zustände, während das
Zielgerät
die Eintaktung der Daten gleichzeitig abbricht.
-
Das
Synchronisiermuster des Wertes hexadezimal FF kann nicht nur zur
Synchronisierung von Seitengrenzen verwendet werden, sondern auch
von Bytegrenzen, und wird als Sendekanal für die Steuerung verwendet,
so dass Informa tionen wie die Kanaladressen-Tabelle oder Zeitschlitze
durch periodische Verwendung des Sendekanals aktualisiert werden
können.
-
Für den Fachmann
ergeben sich aus der vollständigen
Beschreibung zahlreiche Veränderungen
und Modifizierungen. Es ist vorgesehen, dass die nachfolgenden Ansprüche in der
Weise zu interpretieren sind, dass sie alle diese Veränderungen
und Modifizierungen umfassen.