-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft
ein System zum Übertragen
von Audiosignalen und/oder Videosignalen als ein Digitalsignal in
solchen Anwendungen wie einem digitalen Video-Kassettenrecorder (VCR),
wobei Audiosignale und/oder Videosignale als digitale Signale aufgezeichnet
und wiedergegeben werden, und ebenfalls ein Verfahren dafür.
-
2. Beschreibung des Standes
der Technik
-
Geräte zum Übertragen von Audiosignalen und/oder
Videosignalen durch einen Digitalsignal-Übertragungsweg werden fortlaufend
entwickelt. Das Übertragen
von Audiosignalen und/oder Videosignalen als ein Digitalsignal erfordert
jedoch, das Senden und Empfangen mit der Bearbeitungsgeschwindigkeit
der Vorrichtung synchronisiert sind, und erfordert daher einen zur
isochronen Übertragung
fähigen Übertragungsweg.
Eine Busverbindung wird mehr bevorzugt hinsichtlich des für eine Zweiwege-Kommunikation auf
einem einzelnen Übertragungsweg erforderliche
Potentiales, wobei mehrere Geräte
ein von einem einzelnen Gerät
gesendetes Signal empfangen können.
-
Das Institute of Electrical and Electronic
Engineers, Inc. (IEEE) untersucht gegenwärtig ein serielles Hochgeschwindigkeits-Busprotokoll
der nächsten
Generation unter dem Titel P1394 (siehe "High Performance Serial Bus"). Unter dem vorgeschlagenen
IEEE P1394-Standard können
isochrone Übertragungsdaten
einschließlich
Audiosignalen, Videosignalen und anderen Echtzeitdaten durch isochrone Übertragung
unter Verwendung isochroner Pakete übertragen werden, welche alle
125 μs (=
1 Zyklus) gesendet und empfangen werden, um eine isochrone Übertragung
zu verwirklichen, siehe Teener M: "A Bus on a diet – the serial bus alternative – an introduction
to the P1394 high performance serial bus" intellectual leverage, San Francisco,
24.–28.
-
Feb. 1992, Konferenz Nr. 37, 24.
Februar 1992, Seite 316–321,
XP000340753 Institute of Electrical and Electronic Engineers.
-
Das isochrone Übertragungs-Steuerungsverfahren
der IEEE P1394 wird als Nächstes
beschrieben. Wenn der Bus gemäß IEEE P1394
initialisiert ist, wird automatisch ein Knoten-Identifizierer zu jedem
an den Bus angeschlossenen Gerät
zugeordnet (jedem "Knoten") als eine Einrichtung
zum Identifizieren jedes Knotens. Ein Maximum von 64 isochronen
Paketen pro Zyklus kann ebenfalls über den Bus gesendet werden.
Als ein Ergebnis ist jedem isochronen Paket ebenfalls eine Kanalnummer
zugeordnet, die im Wert von 0 bis 63 reicht, um jedes isochrone Paket
zu identifizieren. Um eine isochrone Übertragung auf mehreren Kanälen zu verwirklichen,
wird einer der mehreren an den Bus angeschlossenen Knoten zur Verwaltung
der isochronen Übertragung
verwendet; dieser Knoten wird nachfolgend als "Bus-Manager" bezeichnet.
-
Der Bus-Manager verwaltet die zur
isochronen Übertragung
verwendeten Kanalnummern und die in jedem Zyklus zur isochronen Übertragung
verwendbare, verbleibende Zeit. Die Zeitteilungsrate, oder die Zeitschlitzbreite,
die für
jeden Knoten erforderlich ist, um ein isochrones Paket in einen
Zyklus zu übertragen,
wird unten als eine Bandbreite bezeichnet. Um eine isochrone Übertragung
zu verwirklichen, muss der Bus-Manager die Kanalnummer und die Bandbreite,
die zu verwenden sind, reservieren. Es ist anzumerken, dass Kommunikation,
die für
isochrone Übertragung
nicht wesentlich ist, und Information, die nicht isochrone Übertragung
erfordert, durch asynchrone Übertragung
unter Verwendung asynchroner Pakete übertragen werden. Eine asynchrone
Kommunikation wird verwirklicht unter Verwendung von Zykluszeiten,
die nicht für
isochrone Übertragung
verwendet werden.
-
Der Bus wird ebenfalls sofort reinitialisiert, wenn
ein Knoten an den Bus angeschlossen oder davon getrennt wird, oder
wenn ein Knoten auf dem Bus ausgeschaltet wird, um eine aktive Buskonfiguration zu
ermöglichen.
-
Das erste von der vorliegenden Erfindung angesprochene
Problem wird als Nächstes
beschrieben.
-
Wenn der IEEE P1394 serielle Hochleistungsbus
auf eine isochrone Übertragung
zwischen Verbraucher-Ton-Bild-(A/V)-Geräten unter Verwendung des oben
beschriebenen, konventionellen, isochronen Paketes angewendet wird,
ist es für
den das isochrone Paket empfangenden Knoten nicht möglich, den
das isochrone Paket sendenden Knoten zu identifizieren.
-
Wegen dieses Knoten-Identifizierungsproblems
kann der das isochrone Paket empfangende Knoten den das isochrone
Paket sendende Knoten nicht auffordern, die Übertragung isochroner Pakete fortzusetzen,
wenn es erforderlich ist, um eine Unterbrechung der isochronen Übertragung
infolge einer unerwarteten Benutzer-Handlung zu verhindern, und daher
ist es nicht möglich,
den Sendeknoten in einen Schutzzustand zu versetzen.
-
Dies wird unten anhand eines Systems
mit Knoten A, B und C beschrieben, wobei der Knoten B als die von
Knoten A gesendeten isochronen Pakete empfangend und aufzeichnend
angenommen wird. Wenn ein Benutzer dann einen Vorgang ausführt, der bewirkt,
dass der Knoten C ein isochrones Paket sendet, muss der Knoten C
von dem Knoten A fordern, die Übertragung
des isochronen Paketes anzuhalten. Wenn der Knoten A durch Anhalten
der Übertragung auf
diese Anforderung reagiert, wird der Aufzeichnungsvorgang von Knoten
Bunterbrochen. Daher ist es bei diesem konventionellen Datenübertragungsverfahrer
möglich,
die Übertragung
isochroner Pakete zwischen kommunizierenden Knoten zu unterbrechen,
wenn ein nicht an der Übertragung
der isochronen Pakete beteiligter Knoten irrtümlich oder fälschlicherweise
betrieben wird.
-
Das zweite Problem wird als nächstes beschrieben.
Wie oben beschrieben, ermöglicht
das IEEE P1394 Protokoll, mehrere Kanäle von Echtzeitdaten während eines
Zyklus auszugeben. Es ist deshalb für den bzw. die Empfängerknoten
erforderlich, die Kanalnummern der Echtzeitdaten zu bestimmen, die
von diesem Knoten empfangen werden sollen. Ein Verfahren, um derr
Empfängerknoten
zu ermöglichen,
die zu empfangenden Kanalnummern zu bestimmen, besteht für den Benutzer
darin, den Empfängerknoten über die
zu empfangenden Kanalnummern zu informieren. Dazu muss der Benutzer
jedoch die Kanalnummern der zu empfangenden Echtzeitdaten bestimmen
und den Empfängerknoten
darüber informieren,
und dies erhöht
die Belastung des Benutzers.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Um das obige Problem zu lösen, gibt
die Erfindung eine Datenübertragungseinrichtung
an zum Übertragen
von Echtzeitdaten über
einen Bus von der Datenübertragungseinrichtung,
mit wenigstens einem ersten Knoten, zu wenigstens einem zweiten Knoten
aus einer Mehrzahl von Knoten, bei welcher die Echtzeitdaten zusammengefasst
sind mit einem Kanalidentifizierer, wobei die Datenübertragungseinrichtung
umfasst:
eine Einrichtung zum Reservieren eines vorausgewählten Kanals
aus einer Mehrzahl von Kanälen;
eine
Einrichtung zum Setzen einer benötigten
Bandbreite für
den vorausgewählten
Kanal;
eine Einrichtung zum Bestätigen, dass der vorausgewählte Kanal
mit der benötigten
Bandbreite reserviert wurde;
eine Einrichtung zum Übertragen
von Daten von dem ersten Knoten unter Verwendung des vorausgewählten Kanals
mit der benötigten
Bandbreite zum Ausführen
eines vorbestimmten Vorganges;
eine Einrichtung zum Empfang
eines durch den zweiten Knoten erzeugten Aufwärts-Befehls, welcher zu dem ersten Knoten übertragen
wird, wenn die Übertragung
der Daten von dem ersten Knoten zu dem zweiten Knoten erforderlich
ist, und zum Empfang eines durch den zweiten Knoten erzeugten Abwärts-Befehls,
welcher zu dem ersten Knoten übertragen
wird, wenn die Übertragung
der Daten von dem ersten Knoten zu dem zweiten Knoten nicht länger erforderlich
ist;
eine Zähleinrichtung
zum Aufwärtszählen einer
Zahl nach Empfang des Aufwärts-Befehls und zum Herunterzählen der
Zahl nach Empfang des Abwärts-Befehls;
eine Einrichtung zum Setzen des ersten Knotens in einen Schutzzustand,
wenn die Zähleinrichtung
zu einer Zahl zählt,
die größer als
Null ist, um den vorbestimmten Vorgang vor einer Unterbrechung zu
schützen,
und zum Freigeben des Schutzzustandes, wenn die Zähleinrichtung
auf Null herunterzählt.
-
Daher wird bei einer Datenübertragungseinrichtung
zum Lösen
des oben beschriebenen ersten Problems ein den das isochrone Paket
sendenden Knoten identifizierender Knotenidentifizierer zu jedem
isochronen Paket hinzugefügt.
-
Um Anforderungen zum Fortsetzen der Übertragung
von einer Mehrzahl von Empfängerknoten
zu handhaben, tritt der Sendeknoten in einen Schutzzustand ein,
wenn eine oder mehrere Fortsetzungsanforderungen von einem oder
mehreren Empfängerknoten
empfangen werden, und hebt diesen Schutzzustand auf, wenn die Anzahl
empfangener „Stop
Enable"-Flags wenigstens
gleich der Anzahl von empfangenen Fortsetzungs-Anforderungen ist.
-
Durch eine solche Datenübertragungseinrichtung
kann der Empfängerknoten
sofort den isochrone Pakete sendenden Knoten identifizieren durch
einfaches Lesen des Knoten-Identifizierers des Sendeknotens, der
in jedem empfangenen, isochronen Paket enthalten ist.
-
Zusätzlich kann durch Identifizieren
des Sendeknotens der Empfängerknoten
eine Fortsetzungs-Anforderung zu dem Sendeknoten senden, wenn dies
erforderlich ist, und kann ein Stop-Enable-Flag senden, wenn es
nicht länger
erforderlich ist, die Übertragung
fortzusetzen. Jedes Mal, wenn der Sendeknoten eine Fortsetzungs-Anforderung empfängt, erhöht der Sendeknoten
einen Schutzzähler und
verringert den Schutzzähler
jedes Mal, wenn ein Stop-Enable-Flag empfangen wird. Wenn der Wert des
Schutzzählers
nicht Null ist, kann der Sendeknoten die Unterbrechung der isochronen
Sendung infolge eines unerwarteten Benutzer-Vorgangs durch Zurückweisen
jeder von einem anderen Knoten empfangenen Übertragungs-Anhalte-Anforderung verhindern.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die vorliegende Erfindung ist besser
zu verstehen aus der nachfolgend gegebenen detaillierten Beschreibung
und den beigefügten
Zeichnungen. Dabei zeigen:
-
1 ein
Blockschaltbild mehrerer Ton/Bild-Geräte, die gemäß dem IEEE P1394-Protokoll an einen
Bus angeschlossen sind;
-
2 ein
Blockschaltbild des internen Aufbaus jedes in 1 gezeigten Ton/Bild-Gerätes;
-
3 das
durch IEEE P1394 definierte Format des isochronen Paketes;
-
4 das
Format des durch IEEE P1394 definierten Paket-Headers des isochronen
Paketes;
-
5 das
durch IEEE P1394 definierte Format des asynchronen Paketes;
-
6 das
Format des durch IEEE P1394 definierte Format des Paket-Headers
des asynchronen Paketes;
-
7 das
Format des asynchronen Paketes gemäß der ersten Ausführungsform
der vorliegenden Erfindung;
-
8 ein
Blockschaltbild eines VCR-Anschlusses gemäß der zweiten Ausführungsform
der vorliegenden Erfindung;
-
9 ein
Flussdiagramm des Wiedergabevorganges eines VCR gemäß der zweiten
Ausführungsform
der vorliegenden Erfindung;
-
10 ein
Flussdiagramm des Aufzeichnungsvorganges eines VCR gemäß der zweiten
Ausführungsform
der vorliegenden Erfindung;
-
11 ein
Blockschaltbild des Steuerungsblockes in der zweiten, dritten und
vierten Ausführungsform
der vorliegenden Erfindung;
-
12 ein
Flussdiagramm des Kommunikations-Verwaltungsblockes, wenn eine Übertragung durch
die zweite Ausführungsform
der Erfindung beginnt;
-
13 ein
Flussdiagramm des Kommunikations-Verwaltungsblockes, wenn der Empfang
durch die zweite Ausführungsform
der vorliegenden Erfindung beginnt.
-
BESCHREIBUNG BEVORZUGTER
AUSFÜHRUNGSFORMEN
-
Die vorliegende Erfindung betrifft
ein Übertragungsverfahren
zum Übertragen
von Echtzeitdaten wie Ton/Bild-Daten unter Verwendung des P1394-Protokolls,
welches gegenwärtig
durch das Institute of Electrical and Electronic Engineers, Inc. beraten
wird. 1 zeigt eine Mehrzahl
von gemäß dem IEEE
P1394-Protokoll an einen Bus angeschlossenen Ton/Bild-Geräten. In
diesem Beispiel sind vier Ton/Bild-Geräte an einen gemeinsamen Bus angeschlossen
und die Geräte
werden als Knoten bezeichnet. A/V-Geräte 101, 102, 103 und 104 sind durch
ein Kabel 105 verbunden, welches als eine Bus-Struktur
dient.
-
Die A/V-Geräte 101–104 weisen
eine vergleichbare Steuerungsanordnung auf, welche in 2 beispielhaft für das A/V-Gerät 102 gezeigt
ist. Jedes A/V-Gerät
umfasst einen Schnittstellenblock 201, einen A/V-Signal-Verarbeitungsblock 202 und einen
Steuerungsblock 203. Signale von den anderen Knoten werden
durch den Schnittstellenblock 201 in ein A/V-Gerät 102 eingegeben.
In dem Schnittstellenblock 201 wird die Wellenform des
Eingangssignals ausgebildet und die wellenform-ausgebildeten Signale
werden zu dem nächsten
A/V-Gerät 103 ausgegeben.
Der Schnittstellenblock 201 ist in der Lage, die Ausgangssignale
von jedem anderen A/V-Gerät zu übertra gen,
das heißt,
jedem anderen Knoten, wenn er gemäß dem IEEE P1394-Protokoll
angeschlossen ist, wie in 1 gezeigt,
zu allen anderen A/V-Geräten
(Knoten).
-
In dem IEEE P1394-Protokoll werden
Echtzeitdaten unter Verwendung isochroner Pakete übertragen,
deren Format in 3 gezeigt
ist, wie durch IEEE P1394 definiert.
-
Jedes isochrone Paket umfasst einen 4-Byte-Paket-Header 301;
eine 4-Byte-Header CRC 302 zum Prüfen von Übertragungsfehlern in dem Paket-Header 301;
einen Datenblock 303; und eine 4-Byte-Daten-CRC 304 zum
Prüfen
von Übertragungsfehlern
in den Echtzeitdaten.
-
Das Format des Paket-Headers 301 ist
in 4 gezeigt. Wie in 4 gezeigt, beinhaltet der Paket-Header 301 die
Kanalnummer 401. Gemäß dem IEEE
P1394-Protokoll
können
mehrere A/V-Geräte
(Knoten) mehrere isochrone Pakete auf einer zeitteiligen Basis etwa
alle 125 μs
(= ein Zyklus) übertragen.
Die Kanalnummer 401 wird zum Identifizieren jedes Paketes,
das während
des gleichen Zyklus übertragen
wird, zu den isochronen Paketen hinzugefügt.
-
Beim Übertragen von Echtzeitdaten
weist der Steuerungsblock 203 den A/V-Signalverarbeitungsblock 202 an,
die Echtzeitdaten auszugeben, einschließlich der Ton/Bild-Daten. Basierend
auf den Anweisungen von dem Steuerungsblock 203 gibt daher
der A/V-Signalverarbeitungsblock 202 die Echtzeitdaten
aus. Der Steuerungsblock 203 fügt ebenfalls die verwendete
Kanalnummer und weitere Information hinzu und steuert die Ausgabe
des isochronen Paketes zu dem Schnittstellenblock 201.
-
Basierend auf den Anweisungen von
dem Steuerungsblock 203 paketiert der Schnittstellenblock 201 die
Echtzeitdaten von dem A/V-Signalverarbeitungsblock 202 als
der in 3 gezeigte Datenblock 303 gemäß dem ebenfalls
in 3 gezeigten Paketformat.
Der Schnittstellenblock 201 gibt dann das isochrone Paket
zu den anderen Knoten (A/V-Geräten)
aus.
-
Beim Empfangen von Echtzeitdaten
teilt der Steuerungsblock 203 dem Schnittstellenblock 201 die
Kanalnummer des zu empfangenden isochronen Paketes mit. Der Schnittstellenblock 201 erfasst dann
die Kanalnummer jedes isochronen Paketes aus dem Paket-Header. Wenn
die erfasste Kanalnummer die angegebene Kanalnummer ist, gibt der Schnittstellenblock 201 die
in dem Datenblock 303 des in 3 gezeigten
isochronen Paketes enthaltenen Echtzeitdaten zu dem A/V-Signalverarbeitungsblock 202 aus.
Der Steuerungsblock 203 steuert ebenfalls die Eingabe der
Echtzeitdaten in den A/V-Signalverarbeitungsblock 202,
welcher die eingegebenen Daten signalverarbeitet.
-
Daher ist es für mehrere Knoten durch das IEEE
P1394-Protokoll möglich,
mehrere isochrone Pakete während
des gleichen Zyklus zu übertragen, wie
oben beschrieben, das heißt,
mehrere isochrone Übertragungen
zwischen mehreren Knoten können in
einer anscheinend gleichzeitigen Weise verwirklicht werden. Es ist
jedoch erforderlich, ausreichende Bandbreite für die interne Verarbeitungsgeschwindigkeit
jedes Knotens bei jeder isochronen Übertragung bereitzustellen.
Bandbreite bedeutet hier eine Breite eines reservierten Zeitschlitzes
in jedem Zyklus von 125 μs
und verschiedene Zeitschlitze in jedem Zyklus werden durch unterschiedliche
Kanalnummern unterschieden. Gemäß dem IEEE
P1394-Protokoll ist es möglich,
maximal 64 verschiedene Kanalnummern, von 0 bis 63, zu verwenden.
Da die maximal übertragbare
Bandbreite begrenzt ist (offensichtlich weniger als 125 μs), ist es
erforderlich, die von jedem Knoten verwendete Bandbreite zu verwalten.
Zusätzlich wird
eine Kanalnummer zu jedem isochronen Paket hinzugefügt, um jedes
isochrone Paket zu identifizieren und dadurch eine isochrone Übertragung
von Daten auf mehreren Kanälen
zu ermöglichen.
Eine Verwaltung der von jedem Knoten verwendeten Kanalnummern ist
erforderlich; um zu verhindern, dass die gleiche Kanalnummer Paketen
unterschiedlicher Kanäle
zugeordnet wird, wenn mehrere Knoten gleichzeitig isochrone Pakete
ausgeben. Diese Kanalnummern-Duplizierung wird in dem IEEE P1394-Protokoll verhindert
durch Reservieren eines Knotens als Bus-Manager zur zentralen Steuerung
von Bandbreite und Kanalnummern. A/V-Geräte oder andere Knoten-Geräte, welche
eine isochrone Übertragung
ausführen,
müssen
von dem Bus-Manager die bestimmte Bandbreite und die Kanalnummer
empfangen, die von dem Knoten zur isochronen Übertragung verwendet werden.
Es ist anzumerken, dass "verwendete
Bandbreite" den
Zeitbetrag in jedem Zyklus bestimmt, für den der das isochrone Paket
ausgebende Knoten den Bus zum Senden des isochronen Paketes monopolisieren
kann.
-
Andere Kommunikation als die oben
beschriebene isochrone Übertragung,
zum Beispiel die Kommunikation zum Erhalten der verwendeten Bandbreite
und Kanalnum mer, werden durch asynchrone Übertragung unter Verwendung
asynchroner Pakete ausgeführt.
Eine asynchrone Übertragung wird
verwirklicht unter Verwendung der Zykluszeit, die übrig bleibt,
nachdem die isochrone Übertragung in
jedem Zyklus beendet ist. 5 zeigt
das durch IEEE P1394 definierte, asynchrone Paketformat.
-
Jedes asynchrone Paket umfasst einen 16-Byte-Paket-Header 501;
eine 4-Byte-Header-CRC 502 zum
Prüfen
auf Übertragungsfehler
in dem Paket-Header 501; einen asynchronen Datenkörper 503;
und eine 4-Byte-Daten-CRC 504 zum Prüfen auf Datenfehler in den
asynchronen Übertragungsdaten.
Der Paket-Header 501 umfasst einen Empfängerknotenidentifizierer 601,
welcher der Identifizierer des Knotens ist, an welchen das gesendete, asynchrone
Paket adressiert ist, und einen Sendeknotenidentifizierer 602,
welcher der Identifizierer des das Paket sendenden Knotens ist.
Der Empfängerknotenidentifizierer 601 und
der Sendeknotenidentifizierer 602 in dem Paket-Header sind
jeder zwei Byte lang. Der Empfängerknoten
empfängt
sämtliche asynchronen
Pakete, in welchen der Wert des Empfängerknotenidentifizierers 601 gleich
dem Knotenidentifizierer des Empfängerknotens ist. Der Empfängerknoten
kann ebenfalls durch den Sendeknotenidentifizierer 602 in
den empfangenen asynchronen Paketen durch Lesen des Sendeknotenidentifizierer 602 bestimmen,
welcher Knoten die asynchronen Pakete sendet.
-
Das Verfahren zur asynchronen Übertragung wird
als Nächstes
beschrieben. Um ein asynchrones Paket zu senden, weist der Steuerungsblock 203 den Schnittstellenblock 201 an,
die asynchronen Übertragungsdaten
nach Anfügen
des Empfängerknotenidentifizierers,
welcher den angesprochenen Knoten identifiziert, asynchron zu übertragen.
Der Schnittstellenblock 201 erzeugt die asynchronen Pakete aus
den asynchronen Daten, Empfängerknotenidentifizierer
und anderen von dem Steuerungsblock 203 eingegebenen Informationen
und gibt sie aus. Wenn ein asynchrones Paket empfangen wird, identifiziert der
Schnittstellenblock 201 das an diesen Knoten adressierte
asynchrone Paket durch Bewerten des Empfängerknotenidentifizierers 601,
der in dem Paket-Header 501 enthalten ist, und gibt die
asynchronen Daten 503 und den Sendeknotenidentifizierer 602 von
dem empfangenen asynchronen Paket zu dem Steuerungsblock 203 aus.
Der Steuerungsblock 203 führt dann die erforderliche
Verarbeitung basierend auf den darin eingegebenen asynchronen Daten
aus.
-
Anhand der 7 bis 10 wird
nachfolgend die erste Ausführungsform
der vorliegenden Erfindung beschrieben. Es ist anzumerken, dass
die erste Ausführungsform
mit der besonderen Anwendung bei einem Videokassettenrecorder (VCR)
als ein A/V-Gerät beschrieben
wird.
-
7 zeigt
das Format eines isochronen Paketes, das während einer isochronen Übertragung durch
die erste Ausführungsform
der Erfindung übertragen
wird.
-
In 7 wird
ein Datenblock 303 verwendet, um Daten zu kommunizieren,
die der Benutzer kommunizieren möchte,
und umfasst einen Daten-Header 702, welcher die Art der
in dem isochronen Paket übertragenen
Daten bezeichnet, und die A/V-Daten 703 werden tatsächlich übertragen.
Der Daten-Header 702 umfasst den Knotenidentifizierer 1101,
welcher den Knoten identifiziert, der das isochrone Paket sendet,
und andere Header-Daten. Somit ist es durch Erfassen und Lesen des
Knotenidentifizierers 1101 an dem Empfängerknoten möglich, zu
erfassen, welcher der Sendeknoten ist.
-
Wenn ein neuer Knoten angeschlossen
ist und ein Bus-Zurücksetzen
gemäß dem IEEE P1394-Protokoll
ausgelöst
ist, wird ein neuer Knotenidentifizierer automatisch dem neu angeschlossenen
Knoten zugeordnet. Als Ergebnis schreibt der das isochrone Paket übertragende
Knoten den zugeordneten Knotenidentifizierer in den Daten-Header 702 entsprechend
dem in 7 gezeigten Format und überträgt dann
das isochrone Paket.
-
8 zeigt,
wie fünf
VCR zum Synchronisieren von A/V-Daten verbunden sein können. Die
Wirkungsweise von jedem der fünf
VCR 1201–1205 wird gesteuert
durch den Steuerungsblock 203, der in jedem VCR eingebaut
ist. Es ist anzumerken, dass der Steuerungsblock 203 der
vorliegenden Erfindung durch einen Mikrocomputer verwirklicht wird.
Die VCR 1201–1205 sind
durch Verbindungskabel 1205 verbunden. Jedes Mal, wenn
ein Kabel angeschlossen wird, wird ein "Bus-Zurücksetzen"-Befehl erzeugt, um die Knotenidentifizierer
zu den VCR 1201–1205 zuzuordnen.
Knotenidentifizierer (NODE_ID) 0–4 werden den VCR 1201–1205 entsprechend
wie beispielhaft in der folgenden Beschreibung zugeordnet.
-
Wie oben angemerkt, wird ein Paket
senden und empfangen in einem 125 μs- Zyklus gemäß dem IEEE
P1394-Protokoll ausgeführt
und die erste Hälfte jedes
Zyklus kann einem Prioritäts-Zeitband
zur isochronen Übertragung
zugeordnet sein. Daher ist es erforderlich, die innerhalb des endlichen
Prioritätszeitbandes
für die
isochrone Übertragung
erforderliche Bandbreite zu reservieren. Insbesondere ist es erforderlich,
zuerst zu bestimmen, welcher Kommunikationskanal für welche
Zeitdauer für
eine isochrone Paketübertragung
zu verwenden ist. Ein Verwalten dieses Prioritätszeitbandes wird ebenso durch den
Knoten gehandhabt, der als der Bus-Manager-Knoten 1204 verwendet
wird.
-
In der folgenden Beschreibung wird
angenommen, dass durch den ersten VCR 1201 wiedergegebene
A/V-Daten durch die VCR 1202 und 1203 synchronisiert
werden und dass der VCR 1204 der Bus-Manager-Knoten ist,
welcher das Prioritätszeitband
verwaltet (der VCR 1205 wird für die Beschreibung der zweiten
Ausführungsform
verwendet). Die Ausführung
dieser vorliegenden Ausführungsform wird
unten durch diese drei Funktionsblöcke beschrieben. Andere Daten
als die in der folgenden Beschreibung verwendeten A/V-Daten, zum
Beispiel Fortsetzungsanforderungen und Anhalte-Freigabe-Flags, die
von dem Empfängerknoten
zu dem Sendeknoten gesendet werden, werden unter Verwendung asynchroner
Pakete kommuniziert. In dem Steuerungsblock 203 des als
Wiedergabegerät
dienenden VCR 1201 ist ein Zähler 1201a vorgesehen. In
dem Steuerungsblock 203 der VCR 1202 und 1203,
die jeder als Aufzeichnungsgerät
dienen, sind Aufwärts/Abwärts-Befehlsgeneratoren 1202a und 1203a vorgesehen.
Der Aufwärts/Abwärts-Befehlsgenerator 1202a oder 1203a erzeugt
einen Aufwärtsbefehl,
das heißt,
dass der VCR 1202 oder 1203 in dem Aufzeichnungsmodus
bleibt, und wenn er einen Abwärtsbefehl
erzeugt, bedeutet das, dass der VCR 1202 oder 1203 aus
dem Aufzeichnungsmodus freigegeben wird. Wenn zum Beispiel der Aufwärts/Abwärts-Befehlsgenerator 1202a einen
Aufwärtsbefehl erzeugt,
wird der Zähler 1201a,
welcher vorher in einem Aufwärtszustand
war, von "0" auf "1" inkrementiert und gibt an, dass ein
VCR vorhanden ist, welcher die Aufzeichnung der von diesem Wiedergabegerät 1201 gesendeten
Daten fortsetzt. Danach, wenn der Aufwärts/Abwärts-Befehlsgenerator 1203a einen Aufwärtsbefehl
erzeugt, wird der Zähler 1201a,
der jetzt eine "1" enthält, auf "2" inkrementiert, und gibt an, dass zwei
VCR die Aufzeichnung der von diesem Wiedergabegerät 1201 gesendeten
Daten fortsetzen werden. Danach, wenn der Aufwärts/Abwärts-Befehlsgenerator 1203a einen
Abwärtsbefehl
erzeugt, wird der jetzt " 2" enthaltende Zähler 1201a auf "1" dekrementiert, um anzugeben, dass ein
VCR vorhanden ist, welcher die Aufzeichnung der von diesem Wiedergabegerät 1201 gesendeten
Daten fortsetzen wird. Wenn der Zähler 1201a eine andere
Zahl als "0", wie "1" oder "2" enthält, tritt
das Wiedergabegerät in
einen geschützten
Modus, so dass der Wiedergabemodus nicht durch einen inneren Anhaltebefehl angehalten
wird, sondern nur durch einen externen Anhaltebefehl anhält. Der
interne Anhaltebefehl ist hier ein Befehl, der von einem anderen
VCR entlang des Busses gesendet wird; und der externe Anhaltebefehl
ist ein direkt per Hand in den VCR eingegebener Befehl, wie durch
Drücken
einer Stop-Taste (nicht dargestellt), oder durch das Abschalten
der Energie. Der Aufwärtsbefehl
kann betrachtet werden als eine Fortsetzungsanforderung zum Fortsetzen
des Wiedergabemodus des Wiedergabegerätes, oder eine Schutz-Übertragungsanforderung zum
Schützen
der Übertragung
der Wiedergabe, bis sämtliche
aufzeichnenden VCR die Aufzeichnung anhalten.
-
9 ist
ein Flussdiagramm des durch den Steuerungsblock 203 in
dem ersten Wiedergabe-VCR 1201 während des Wiedergabevorganges ausgeführten Ablaufes,
wobei der VCR 1201: die A/V-Daten wiedergibt; von dem Bus-Manager 1204 die
zur isochronen Übertragung
erforderliche Bandbreite anfordert; eine Erlaubnis zur Übertragung empfängt; und
dann schließlich
das isochrone Paket überträgt. Es ist
ebenfalls anzumerken, dass der wiedergebende VCR 1201,
der als Sendeknoten dient, zuerst den zugeordneten Knotenidentifizierer "0" in den Knotenidentifizierer 1101 des
Daten-Headers 702 entsprechend dem in 7 gezeigten Format des isochronen Paketes
schreibt, vor dem Beginn der isochronen Paketübertragung.
-
In dem ersten Schritt 1301 bestimmt
der Knoten, der zu senden versucht, ob ein Aufwärtsbefehl (eine Fortsetzungs-Anforderung)
von einem der anderen Knoten empfangen wurde. Wenn ein Aufwärtsbefehl
empfangen wurde, wird der Schutz-Zähler 1201a, welcher
ein in dem Speicher gesetzter 6-Bit-Zähler ist, inkrementiert (Schritt 1302);
wenn ein Aufwärtsbefehl
nicht empfangen wurde, geht die Steuerung über zu dem Schritt 1303.
-
Es ist anzumerken, dass der Schutz-Zähler 1201a auf "0" zurückgesetzt
wird, unmittelbar bevor die isochrone Paketübertragung beginnt. Als Ergebnis
hat der Schutz-Zähler 1201a in
dem ersten VCR 1201 einen Wert von "2",
wenn ein Aufwärtsbefehl von
jedem der anderen zwei VCR 1202 und 1203 empfangen
wird, nachdem der erste VCR 1201 mit der Übertragung
des isochronen Paketes beginnt.
-
In Schritt 1303 wird bestimmt,
ob ein Abwärtsbefehl
(ein Anhalte-Freigabe-Flag) von einem der anderen Knoten empfangen
wurde. Wenn ein Abwärtsbefehl
empfangen wurde, wird der Schutz-Zähler 1201a dekrementiert
(Schritt 1304); wird er nicht empfangen, geht die Steuerung über zu dem
nächsten
Schritt 1305.
-
Wenn zum Beispiel ein Aufwärtsbefehl
von den anderen beiden VCR 1202 und 1203 empfangen wurde,
und der Schutz-Zähler 1201a in
dem sendenden VCR 1201 "2" ist, wird der Schutz-Zähler nicht erneut
auf "0" zurückgesetzt,
bis die beiden anderen VCR 1202 und 1203 einen
Abwärtsbefehl
für den sendenden
VCR 1201 erzeugen.
-
Es ist ebenfalls anzumerken, dass
der Schutz-Zähler
in Schritt 1304 nicht dekrementiert wird, auch wenn ein
Abwärtsbefehl
empfangen wird, wenn der Wert des Schutz-Zählers
bereits "0" ist.
-
In Schritt 1305 wird bestimmt,
ob ein Bus-Zurücksetzen
erzeugt wurde; wenn dies der Fall ist, wird der Schutz-Zähler auf "0" zurückgesetzt
(Schritt 1306), und die Steuerung geht zurück zu Schritt 1301.
Wenn ein Bus-Zurücksetzen
nicht erzeugt wurde, geht die Steuerung über zu Schritt 1307.
-
Die isochrone Paketübertragung
wird vorübergehend
unterbrochen, wenn ein Bus-Zurücksetzen
auftritt, aber der sendende VCR 1201 nimmt die isochrone
Paketausgabe sofort nach der Wiederherstellung von dem Bus-Rücksetzvorgang
wieder auf.
-
Bus-Zurücksetzen kann auftreten, wenn
ein Anschlussstecker angeschlossen oder gelöst wird, oder wenn die Stromversorgung
für eines
der Busgeräte
unterbrochen wird. Als Ergebnis wird jeder Knoten, der einen Aufwärtsbefehl
sendete, bevor das Bus-Zurücksetzen
auftrat, für
das Senden des Abwärtsbefehles
gesperrt, sobald ein Bus-Zurücksetzen
auftritt. In diesem Fall kann der sendende VCR 1201 den
geschützten
Zustand nicht wieder herstellen. Daher ist es erforderlich, den
Schutz-Zähler zurückzusetzen,
wann immer ein Bus-Zurücksetzen auftritt.
-
In Schritt 1307 wird bestimmt,
ob eine asynchrone Paketübertragung
mit einem inneren Anhaltebefehl von einem Knoten, zum Beispiel dem
Bus-Manager-Knoten 1204, empfangen wurde. Wenn dies der
Fall ist, wird bestimmt, ob der Schutz-Zähler 1201a" 0" ist (Schritt 1308).
-
Wenn der Schutz-Zähler zu diesem Zeitpunkt jeden
anderen Wert als "0" hat, ist die Übertragung
geschützt,
der interne Anhaltebefehl wird daher nicht angenommen (Schritt 1309),
eine interne Anhaltebefehls-Zurückweisungs-Mitteilung
wird zu dem Knoten 1204 ausgegeben, der den internen Anhaltebefehl
gesendet hat, und die Steuerung geht zurück zu Schritt 1301.
-
Wenn der Schutz-Zähler-Wert "0" ist,
ist die Übertragung
nicht geschützt,
der interne Anhaltebefehl wird akzeptiert, die isochrone Paketübertragung wird
angehalten (Schritt 1310) und die Verarbeitung endet.
-
Wenn eine asynchrone Paketverarbeitung mit
einem internen Anhaltebefehl in Schritt 1307 nicht empfangen
wurde, wird bestimmt, ob ein externer Anhaltebefehl direkt von einer
externen Quelle empfangen wurde (Schritt 1311), ohne Kommunikation über den
Bus. Beispiele des direkt von einer externen Quelle empfangenen,
externen Anhaltebefehls beinhalten die Benutzer-Betätigung eines
auf dem VCR 1201 vorgesehenen STOP SENDE-Funktionsknopfes,
und Drücken
eines Einschalters zum Ausschalten des Gerätes.
-
Wenn ein externer Anhaltebefehl in
Schritt 1311 empfangen wird, wird der Schutz-Zähler 1201a ungeachtet
des gegenwärtigen
Zähler-Wertes
sofort auf 0 zurückgesetzt
(Schritt 1312) und die isochrone Paketübertragung wird angehalten
(Schritt 1310). Mit anderen Worten, einer direkten Benutzer-Betätigung des
Gerätes
wird Priorität
gegeben.
-
Bei einer Übertragungsvorrichtung mit
einem digitalen Ausgabe-Knopf, welcher Freigabe und Blockade der
Ausgabe von Daten an den Bus steuert, kann ein direkter externer
Anhaltebefehl ebenfalls erzeugt werden, indem der Benutzer den digitalen
Ausgabe-Knopf während
der isochronen Paketübertragung
betätigt,
um die Datenausgabe zu blockieren.
-
Bei einem reservierten Wiedergabegerät, bei welchem
eine Digitalsignalausgabe anhält,
wenn die Wiedergabe anhält,
da kein eingebauter Fernseh-Tuner vorhanden ist, kann ein direkter,
externer Anhaltebefehl ebenso erzeugt werden durch Drücken der Anhalte-Taste
zum Anhalten der Wiedergabe und Eintreten in den Anhalte-Modus.
-
Wenn ein direkter externer Anhaltebefehl
in Schritt 1311 nicht empfangen wird, geht die Steuerung zurück zu dem
Schritt 1301 und der ganze Vorgang wird wiederholt.
-
10 ist
ein Flussdiagramm des durch den Steuerungsblock 203 der
empfangenden VCR 1202 und 1203 ausgeführten Vorganges,
nachdem das Aufzeichnen der isochronen A/V-Paketdaten, die tatsächlich von
dem sendenden VCR 1201 empfangen werden, beginnt.
-
Es wird in der Beschreibung der vorliegenden
Erfindung unten angenommen, dass der Bus-Manager-Knoten 1204 während der
Synchronisierung durch die empfangenden VCR 1202 und 1203 der
durch den ersten VCR 1201 wiedergegebenen A/V-Daten durch einen
Benutzervorgang irrtümlich
in den Wiedergabemodus versetzt wird. In diesem Fall, wenn der Bus-Manager-Knoten 1204 das isochrone
Paket nicht ausgeben kann, sendet er einen internen Anhaltebefehl
und fordert den sendenden VCR 1201 auf, die Ausgabe der
isochronen Pakete anzuhalten.
-
Auch in einer solchen Bedingung,
wie oben erläutert,
setzen die A/V-Daten aufzeichnenden VCR 1202 und 1203 entsprechend
der ersten Ausführungsform
die korrekte Synchronisierung der empfangenen A/V-Daten fort, ohne
dass deren Übertragung
von dem ersten VCR 1201 unterbrochen wird. Mit anderen
Worten, als Reaktion auf den Empfang des isochronen Paketes von
dem sendenden VCR 1201 senden die aufzeichnenden VCR 1202 und 1203 einen
Aufwärtsbefehl
zu dem VCR 1201 zum Erhöhen
des Zählers
und schließlich
Beginnen des Unterbrechungs-Schutz-Zustandes. Zusätzlich ist anzumerken, dass
die aufzeichnenden VCR 1202 und 1203 den gleichen
Vorgang in dieser Ausführungsform
ausführen,
und nur der durch einen VCR 1202 ausgeführte Vorgang wird unten beschrieben.
-
In 10 wird
der Knotenidentifizierer "0" des Sendeknotens 1201,
welcher in den Daten-Header 702 des empfangenen isochronen
Paketes geschrieben wird, wie oben beschrieben, in Schritt 1401 gelesen
und ein Aufwärtsbefehl
wird zu dem durch den Knotenidentifizierer "0" identifizierten
Knoten gesendet, das heißt,
zu dem Sendeknoten 1201. Die Steuerung geht dann weiter
zu dem Schritt 1402.
-
In dem Schritt 1402 wird
bestimmt, ob ein Bus-Zurücksetzen
erzeugt wurde; wenn dies der Fall ist, geht die Steuerung zurück zu dem
Schritt 1401 zum Neu-Anfordern eines Übertragungs-Schutzes.
-
Wenn ein Bus-Zurücksetzen nicht aufgetreten
ist, wird bestimmt, ob der isochrone Paketempfang normal ist (Schritt 1403).
Da der wiedergebende VCR 1201 in den Übertragungs-Anhalte-Zustand
gesetzt ist (Schritt 1310), kann zum Beispiel bestimmt werden,
ob der isochrone Paketempfang unterbrochen ist.
-
Wenn der isochrone Paketempfang normal ist,
geht die Steuerung über
zu dem nächsten
Schritt 1404, wenn aber der Empfang nicht normal ist, wird der
Vorgang beendet.
-
In dem Schritt 1404 wird
bestimmt, ob eine "Aufzeichnung
anhalten"-Anweisung
empfangen wurde; wenn dies nicht der Fall ist, geht die Steuerung
zurück
zu dem Schritt 1402 und die Schleife wird wiederholt, um
alle Bus-Zurücksetz-Anweisungen
zu überwachen,
bis eine "Aufzeichnung
anhalten"-Anweisung
empfangen wird.
-
Wenn die "Aufzeichnung anhalten"-Anweisung empfangen
wird, wird der in den Daten-Header 702 des empfangenen
isochronen Paketes wie oben beschrieben geschriebene Knoten-Identifizierer 1101 des
Sendeknotens 1201 erneut gelesen und ein Abwärtsbefehl
wird zu dem durch den Knoten-Identifizierer 1101 identifizierten
Sendeknoten in Schritt 1405 gesendet, um den Vorgang zu
beenden.
-
Wie bei der ersten Ausführungsform
oben beschrieben, schreibt und überträgt der Sendeknoten 1201 den
ihm selbst zugeordneten Knoten-Identifizierer in dem Daten-Header 702 des
gesendeten isochronen Paketes, um dadurch dem dieses isochrone Paket
empfangenden Knoten 1202 und 1203 zu ermöglichen,
den Knoten 1201, der das Paket sendet, sofort zu identifizieren.
-
Weiterhin inkrementiert der Sendeknoten 1201 den
Schutz-Zähler
an dem Punkt, an dem ein Aufwärtsbefehl
zum Beispiel von dem Empfängerknoten 1202 oder 1203 empfangen
wird; dekrementiert den Schutz-Zähler,
wenn ein Abwärtsbefehl empfangen
wird; und befindet sich in einem Schutz-Zustand, wenn dieser Schutz-Zähler jeden anderen
Wert als "0" aufweist. Wenn der
Sendeknoten 1201 geschützt
ist, weist er alle von anderen Knoten empfangenen Übertragungs-Anhalte-Anforderungen
zurück,
zum Beispiel von dem Bus-Manager-Knoten 1204, und setzt
die Übertragung
fort. Als Ergebnis wird, auch wenn der Bus-Manager-Knoten 1204 während einer
Synchronisierung der durch den ersten VCR 1201 wiedergegebenen
A/V-Daten durch die empfangenden VCR 1202 und 1203 durch
einen Benutzervorgang irrtümlich
in den Wiedergabemodus gesetzt wird, die Synchronisierung normal
fortgesetzt, ohne dass die Übertragung
der isochronen Pakete von dem ersten VCR 1201 zu den A/V-Daten aufzeichnenden
VCR 1202 und 1203 unterbrochen wird.
-
Zusätzlich ist es durch Zurücksetzen
des Schutz-Zählers,
wenn ein Bus-Zurücksetzen
auftritt, möglich,
auch wenn ein Bus-Zurücksetzen
auftritt, den Sendeknoten 1201 davor zu schützen, nicht
in der Lage zu sein, den Schutz-Zustand wieder herzustellen, eine
Situation, welche anderenfalls auftreten kann, da jeder Knoten,
der eine Fortsetzungs-Anforderung überträgt, bevor das Bus-Zurücksetzen
auftritt, durch das Bus-Zurücksetzen
an der Ausgabe des Anhalte-Freigabe-Flags gehindert wird.
-
Es ist anzumerken, dass der einen
Aufwärtsbefehl
zu dem Sendeknoten in der oben beschriebenen Ausführungsform
sendende Empfängerknoten nicht
der Knoten sein muss, welcher die isochronen Pakete von dem Sendeknoten
aufzeichnet. Zum Beispiel können
ein Fernseh-Monitor ("TV" nachfolgend) und
ein Laserdisc-Wiedergabegerät ("LD-Spieler" nachfolgend) an
den Bus angeschlossen sein, wobei das wiedergegebene Bild von dem
LD-Spieler auf dem TV betrachtet wird. In diesem Fall kann der Benutzer
den Knopf/Knöpfe
an dem TV betätigen,
welche(r) bei dieser Anwendung der Empfängerknoten ist, um einen Aufwärtsbefehl
zu dem LD-Spieler zu senden, welcher in dieser Anwendung der Sendeknoten
ist, um die Wiedergabe-Bild-Übertragung
von dem LD-Spieler zu dem TV beizubehalten und zu verhindern, dass
Wiedergabebilder von anderen an den gleichen Bus angeschlossenen
Geräten
irrtümlich
auf dem TV angezeigt werden.
-
In der obigen Ausführungsform
wird der Sendeknoten ebenfalls in einen Schutz-Zustand versetzt, wenn ein Aufwärtsbefehl
von einem Empfängerknoten
empfangen wird, es ist aber anzumerken, dass dieser Schutz-Zustand
ebenfalls gesetzt werden kann durch Eingeben einer "Übertragungs-Fortsetzungs"-Anweisung direkt
von einem externen Gerät statt
durch das Bus-System. In dem obigen TV- und LD-Spieler-Beispiel kann zum
Beispiel ein SCHUTZ-Funktions-Knopf an den LD-Spieler (Sendeknoten)
vorgesehen sein zum Versetzen des LD-Spielers in den Schutz-Zustand
durch einfaches Betätigen
dieses SCHUTZ-Knopfes.
-
Zusätzlich wird ein im Speicher
vorgesehener Zähler
als Einrichtung zum Bestimmen verwendet, ob der Sendeknoten in dem
geschützten
oder Schutz-aufgehobenen Zustand ist, aber jede andere Einrichtung
zum Bestimmen, ob der Sendeknoten in dem geschützten oder Schutz-aufgehobenen
Zustand ist, kann alternativ verwendet werden. Zum Beispiel ist
es alternativ möglich,
ein Register zu verwenden, das nur so viele Bits hat wie die Anzahl
anschließbarer
Knoten.
-
Durch das Datenübertragungsverfahren der vorliegenden
Erfindung, wie oben beschrieben, wenn A/V-Daten, welche eine Echtzeitverarbeitung
erfordern, durch isochrone Pakete unter Verwendung eines Bus-Systems überfragen
werden, wobei ein Knoten-Identifizierer automatisch zu jedem an
dem Bus angeschlossenen Knoten zugeordnet wird, jedes Mal, wenn
ein Bus-Zurücksetzen
auftritt, ist es durch Hinzufügen
des Knoten-Identifizierers des Sendeknotens zu den isochronen Paketen
vor der Übertragung
für den
Empfängerknoten
möglich,
sofort zu bestimmen, welcher Knoten die empfangenen isochronen Pakete
sendet; dies kann verwirklicht werden durch einfaches Lesen des
in den empfangenen isochronen Paketen enthaltenen Sendeknoten-Identifizierers.
-
Weiterhin kann durch Identifizieren
des Sendeknotens der Empfängerknoten
aufgefordert werden, einen die Übertragung
der isochronen Pakete beizubehalten anfordernden Aufwärtsbefehl
zu dem Sendeknoten zu senden; und einen die Aufhebung des Aufwärtsbefehls
anfordernden Abwärtsbefehl
zu senden, wenn es nicht länger
erforderlich ist, die Übertragung
fortzusetzen. Der die isochronen Pakete sendende Knoten wird somit
in einen Schutz-Zustand versetzt, wenn ein oder mehrere Aufwärtsbefehle
empfangen werden, und hebt den Schutz-Zustand auf, wenn die Anzahl
der durch den Sendeknoten empfangenen Abwärtsbefehle die Anzahl der empfangenen
Aufwärtsbefehle überschreitet.
-
Wenn der Sendeknoten in dem Schutz-Zustand
ist, werden von jedem anderen Knoten empfangene interne Anhaltebefehle
zurückgewiesen
und die Übertragung
isochroner Pakete wird nicht angehalten (wird fortgesetzt). Als
Ergebnis kann eine Unterbrechung der isochronen Übertragung infolge einer irrtümlichen
oder fehlerhaften Bedienung durch den Benutzer verhindert werden.
-
Insbesondere ist es möglich, eine
Unterbrechung einer isochronen Paketübertragung zwischen gegebenen
Knoten als Ergebnis einer Fehlbedienung jedes Knotens, der nicht
direkt an dem isochronen Paketübertragungsvorgang
beteiligt ist, zu verhindern. Dies ist insbesondere wirksam während der Synchronisierung
und anderer isochroner Übertragungsvorgänge, während welcher
eine Kommunikation für
einen relativ langen Zeitabschnitt beibehalten werden kann.
-
Zusätzlich ist es durch automatisches
Zurücksetzen
jedes Schutz-Zustand-Sendeknotens
in den Schutz-aufgehobenen Zustand, wenn ein Bus-Zurücksetzen
auftritt, möglich,
auch wenn ein Bus-Zurücksetzen
auftritt, den Sendeknoten davor zu schützen, nicht in der Lage zu
sein, den Schutz-Zustand wieder herzustellen; eine Situation, welche
anderenfalls auftreten kann, da jeder Knoten, der einen Aufwärtsbefehl überträgt, bevor
das Bus-Zurücksetzen
auftritt, durch das Bus-Zurücksetzen
daran gehindert wird, den Abwärtsbefehl
auszugeben.
-
Die zweite Ausführungsform eines endungsgemäßen Datenübertragungsverfahrens
wird unten beschrieben.
-
Bei konventionellen Datenübertragungsverfahren
für isochrone Übertragung
unter Verwendung des IEEE P1394-Protokolls wählt der Sendeknoten eine ungenutzte
Kanalnummer in dem Bereich von 0–63 einschließlich, und
fügt die
ausgewählte
Kanalnummer zu dem Paket-Header in dem isochronen Paket vor der Übertragung
hinzu. Der Sendeknoten muss ebenfalls gleichzeitig den Benutzer über die
zur Übertragung
verwendete Kanalnummer informieren. Da mehrere isochrone Pakete
auf unterschiedlichen Kanälen übertragen
werden können,
muss der Benutzer den Empfängerknoten über die
Kanalnummer der zu empfangenden isochronen Pakete informieren. Isochrone
Paketübertragungen
nach dem bekannten Verfahren erfordern somit Benutzereingriffe zum
Anpassen der durch die Sende- und Empfängerknoten verwendeten Kanalnummer
und erhöhen
beträchtlich
die Benutzer-Belastung.
-
Die Aufgabe der zweiten Ausführungsform der
vorliegenden Erfindung ist es, eine Paketübertragung unter Verwendung
eines Mitteilungs-Kanals zu ermöglichen,
das heißt,
eines vorausgewählten
Kanals mit einer vorbestimmten Kanalnummer N (N ist eine ganze Zahl
zwischen 0 und 63 einschließlich), sofern
der Sendeknoten nicht die Verwendung einer anderen Kanalnummer angibt.
Der Mitteilungs-Kanal wird ebenfalls als Vorgabe-Kanal bezeichnet.
-
Ein Blockschaltbild des in dieser
Ausführungsform
verwendeten Steuerungsblockes 203 ist in 11 gezeigt. Der Befehls-Interpreter 1501 interpretiert
empfangene Betriebs-Befehle als Ergebnis der direkten Benutzer-Steuerung
oder asynchroner Übertragung
von anderen Knoten und weist den Kommunikations-Manager 1502 an,
isochrone und asynchrone Übertragung
zu beginnen und zu beenden.
-
Die Eingabe in den Kommunikations-Manager 1502 beinhaltet
Anweisungen von dem Befehls-Interpreter 1501 und Informationseingabe durch
asynchrone Übertragung
von anderen Knoten und ist zur Kommunikations-Verwaltung erforderlich. Basierend
auf der eingegebenen Information weist der Kommunikations-Manager 1502 den
Schnittstellenblock 201 und den A/V-Signalverarbeitungsblock 202 an,
wann die isochrone Übertragung
beginnt und endet; gibt die zur Kommunikations-Verwaltung der anderen
Knoten benötigte
Information als asynchrone Daten zu dem Schnittstellenblock 201 aus;
und weist gleichzeitig den Schnittstellenblock 201 an,
diese Information durch asynchrone Übertragung auszugeben.
-
Der Vorgang, durch welchen der Sendeknoten
mit der isochronen Paketübertragung
durch das erfindungsgemäße Übertragungsverfahren
gemäß dieser
zweiten Ausführungsform
beginnt, wird als Nächstes
beschrieben.
-
Der Benutzer weist zuerst das A/V-Gerät durch
den Benutzer-Vorgang an, das der Sendeknoten ist, die A/V-Daten
auszugeben. Diese Anweisung wird in den Befehls-Interpreter 1501 des Steuerungsblockes 203 eingegeben;
die die Ausgabe von Echtzeitdaten auf dem Mitteilungskanal anweisende
Information wird durch den Befehls-Interpreter 1501 aus der eingegebenen
Anweisung extrahiert; und die extrahierte Information wird in den
Kommunikations-Manager 1502 eingegeben. Der Kommunikations-Manager 1502 führt dann
die Steuerung zum Beginn der Ausgabe der Echtzeitdaten unter Verwendung
des Mitteilungskanals aus.
-
12 ist
ein Flussdiagramm des Vorganges des Kommunikations-Manager-Blockes
in dem Sendeknoten. Der Kommunikations-Manager 1502 führt den
Schritt 1601 aus, wenn eine Echtzeitdaten-Ausgabe unter
Verwendung des Mitteilungskanals durch den Befehls-Interpreter 1501 angewiesen ist.
In dem Schritt 1601 weist der Kommunikations-Manager 1502 den
Schnittstellen-Block 201 an, von dem Bus-Manager den Mitteilungskanal
und dessen nutzbare Bandbreite zu erhalten oder zu reservieren.
Basierend auf dieser Anweisung verhandelt der Schnittstellen-Block 201 mit
dem Bus-Manager 1204 unter Verwendung asynchroner Übertragung
zum Erhalten einer Zustimmung für
die Reservierung dir erforderlichen Bandbreite und des Mitteilungskanals.
Der Schnittstellen-Block 201 teilt dem Kommunikations-Manager 1502 in
dem Steuerungs-Block 203 mit, ob der Mitteilungskanal und
die angeforderte Bandbreite erhalten wurden.
-
Nach der Ausführung von Schritt 1601 geht der
Kommunikations-Manager 1502 zu Schritt 1602 über, um
aus der von dem Schnittstellen-Block 201 eingegebenen Information
zu bestimmen, ob der Mitteilungskanal und die angeforderte Bandbreite
reserwiert wurden. Wenn die Reservierungen von dem Bus-Manager 1204 akzeptiert
wurden, geht die Steuerung über
zu dem Schritt 4603; wenn nicht, kehrt die Steuerung zurück vor Schritt 1601 und
der Kommunikations-Manager 1502 versucht erneut, den Mitteilungskanal
und die benötigte
Bandbreite zu reservieren.
-
In Schritt 1603 weist der
Kommunikations-Manager 1502 den A/V-Signalverarbeitungsblock 202 an,
die A/V-Daten und andere Echtzeitdaten zu dem Schnittstellen-Block 201 auszugeben. Der
A/V-Signalverarbeitungsblock 202 gibt dann diese Echtzeitdaten
zu dem Schnittstellenblock 201 aus. Der Kommunikations-Manager 1502 weist
den Schnittstellenblock 201 ebenfalls an, die von dem A/V-Signalverarbeitungsblock 202 eingegebenen Echtzeitdaten
durch isochrone Pakete unter Verwendung des Mitteilungskanals auszugeben.
Der Schnittstellenblock 201 gibt somit die isochronen Pakete
aus, wie durch die Kommunikationsverwaltung 1502 angewiesen.
-
Das Verfahren, durch welches der
Empfängerknoten
das Empfangen isochroner Pakete durch das Datenübertragungsverfahren gemäß dieser
dritten Ausführungsform
beginnt, wird als Nächstes
beschrieben.
-
Der Benutzer weist zuerst das A/V-Gerät an, das
der Empfängerknoten
ist, die A/V-Daten
zu empfangen. Diese Anweisung wird in den Befehls-Interpreter 1501 des
Steuerungsblockes 203 eingegeben, die Information; welche
die Eingabe der Echtzeitdaten auf dem Mitteilungskanal anweist,
wird durch den Befehls-Interpreter 1501 von der Eingabe-Anweisung
extrahiert und die extrahierte Information wird in den Kommunikations-Manager 1502 eingegeben. Der
Kommunikations-Manager 1502 führt dann Steuerungen zum Empfangen
der Echtzeitdaten unter Verwendung des Mitteilungskanals aus.
-
13 ist
ein Flussdiagramm des Betriebes des Kommunikations-Manager-Blockes
in dem Empfängerknoten.
Der Kommunikations-Manager 1502 führt den Schritt 1701 aus,
wenn ein Echtzeitdaten-Empfang unter Verwendung des Mitteilungskanals
durch den Befehls-Interpreter 1501 angewiesen wird. In
dem Schritt 1701 weist der Kommunikations-Manager 1502 den
Schnittstellenblock 201 an, die isochronen Pakete aus dem
Mitteilungskanal zu empfangen.
-
Basierend auf diesen Anweisungen
empfängt
der Schnittstellenblock 201 die isochronen Pakete, welchen
der Mitteilungskanal zugeordnet wurde, und gibt die Echtzeitdaten
zu dem A/V-Signalverarbeitungsblock 202 aus. In dem Schritt 1701 weist der
Kommunikations-Manager 1502 ebenfalls den A/V-Signalverarbeitungsblock 202 an,
die Echtzeitdaten von dem Schnittstellenblock 201 zu empfangen
und die geeignete Signalverarbeitung auszuführen. Der A/V-Signalverarbeitungsblock 202 empfängt daher
die Echtzeitdaten von dem Schnittstellenblock 201 und führt die
Signalverarbeitung aus, wie durch den Kommunikations-Manager 1502 angewiesen.
-
Daher ist es durch diese zweite Ausführungsform
eines erfindungsgemäßen Datenübertragungsvertahrens
möglich,
eine isochrone Übertragung
zu verwirklichen, wobei der Benutzer einfach den Sendeknoten und
den Empfängerknoten
anweist, auszugeben und einzugeben. Daher ist es für den Benutzer
nicht erforderlich, den Empfängerknoten über die
verwendete Kanalnummer zu informieren und ein benutzerfreundlicheres
System, das die Belastungen für
den Benutzer verringert, kann verwirklicht werden.