-
Die
Erfindung betrifft ein Verfahren zur Übertragung von digitalen Daten,
wie Videodaten und Audiodaten, unter Verwendung eines Kommunikations-Steuerbusses,
z.B. eines IEEE-P1394-konformen
seriellen Busses (im folgenden kurz als "serieller P1394-Bus" bezeichnet), sowie ein Verfahren für die erfolgreiche
Ausführung
des frühesten
von mehreren Befehlen, die von mehreren Geräten im wesentlichen gleichzeitig
an ein gewünschtes
Gerät gesendet
werden, in einem System zum Verbinden mehrerer elektronischer Geräte über einen
Kommunikations-Steuerbus, auf dem Steuerbefehle und Daten koexistieren
können,
um die Datenübertragung
zwischen diesen elektronischen Geräten zu ermöglichen.
-
Es
wurden Systeme vorgeschlagen, in denen mehrere elektronische Geräte über einen
Kommunikations-Steuerbus, z.B. einen seriellen P1394-Bus, miteinander
verbunden sind, auf dem Steuersignale und Informationssignale koexistieren können, um
zwischen diesen die Übertragung
der Informations- und Kommunikationssignale Geräten zu ermöglichen.
-
5 zeigt
ein Beispiel für
ein solches System. Das System umfaßt vier digitale Videorekorder (im
folgenden als "VTRs" bezeichnet), einen
Camcorder (im folgenden als "CAM" bezeichnet), einen
Editor und einen Computer. Diese Geräte sind durch verdrillte Leitungspaare
miteinander verbunden, die einen seriellen P1394-Bus bilden. Da
solche Geräte eine
Repeaterfunktion für
die über
das gedrillte Leiterpaar ankommenden Informationssignale und Steuersignale
haben, ist dieses Kommunikationssystem einem Kommunikationssystem äquivalent,
in dem Geräte über einen
gemeinsamen seriellen P1394-Bus verbunden sind.
-
Die
Einzelheiten eines solchen seriellen P1394-Busses, einschließlich einer
Prozedur für
die Zuordnung von Knoten-IDs sind in "IEEE Specification for P1394 Serial
Bus" (veröffentlicht
am 14. Oktober 1993) beschrieben.
-
Die
Literaturstelle "1394:
High performance Serial Bus for Desktop and Portable Computers" Computer Technology
Review, T. W. Martin et al. gibt einen generellen Überblick über die
Funktion des IEEE-1394-Sendebusses. Sie beschreibt die Prozesse
der Bus-Initialisierung, -Konfiguration und -Rücksetzung. Der Rücksetzprozeß wird in
Form einer Definition der Bus-Topologie
und der Zuordnung von IDs zu den betreffenden Knoten beschrieben.
-
Der
Datentransfer zwischen Geräten,
die sich einen Bus teilen, erfolgt auf einer Zeitmultiplexbasis
in vorgegebenen Kommunikationszyklen (z.B. von jeweils 125 μs), wie dies
in 6 dargestellt ist. Der Datentransfer in einem
Kommunikationszyklus wird gestartet, wenn ein bestimmtes Gerät, z.B.
ein Editor, das als "Zyklus-Master" bezeichnet wird,
ein isochrones Paket (Zyklus-Startpaket, das im folgenden als "CSP" bezeichnet wird)
sendet, das anderen Geräten
an dem Bus den Beginn des Kommunikationszyklus anzeigt.
-
Die
Form der in einem Kommunikationszyklus übertragenen Daten wird in zwei
Typen klassifiziert, nämlich
in isochrone Daten, wie Video- und Audiodaten, und asynchrone Daten,
wie Verbindungssteuerbefehle (im folgenden als "asynchrone Daten" bezeichnet). Die Übertragung eines isochronen
Datenpakets geht der Übertragung
eines asynchronen Datenpakets voraus. Mehrere isochrone Datenpakete
können
voneinander unterschieden werden, indem man den betreffenden isochronen
Paketen Kanalnummern 1, 2, 3, ..., N zuordnet. Die Zeitspanne zwischen
der Beendigung der Übertragung
der isochronen Datenpakete für
alle Kanäle
und dem nächsten CSP
wird für
die Übertragung
von asynchronen Datenpaketen benutzt.
-
Wenn
ein Gerät
im Begriffe ist, ein isochrones Datenpaket auf dem Bus zu senden,
reserviert es zunächst
einen Kanal und ein Band, die für
die Übertragung
der Daten benötigt
werden. Zu diesem Zweck fordert das Gerät von einem bestimmten Gerät für die Verwaltung
der Kanäle
und Bänder
des Busses (Bus-Manager, der im folgenden als "BM" bezeichnet
wird), z.B. einem Computer, den Kanal und das Band an, die es benötigt.
-
Wie 7 zeigt,
besitzt der BM ein Register REG1 für die Anzeige des Belegungszustands
der einzelnen Kanäle
des Busses und ein Register REG2 für die Anzeige der restlichen
Kapazität
des Busses. Das Gerät,
das im Begriffe ist, ein isochrones Paket zu übertragen, sendet mittels eines
asynchronen Datenpakets einen Lesebefehl an die Register REG1 und
REG2, um die Inhalte der Register REG1 und REG2 auszulesen. Falls
ein freier Kanal und freie Kapazität zur Verfügung stehen, sendet das Gerät mittels
eines asynchronen Datenpakets einen Schreibbefehl an den BM, um
den Kanal und das Band, die es benutzen wird, in die Register REG1
und REG2 einzuschreiben. Wenn das Einschreiben in die Register REG1
und REG2 erfolgreich ist, darf das Gerät sein Ausgangssignal an den
Bus senden.
-
8 zeigt
die Grundkonfiguration eines VTR, der ein Gerät in dem Kommunikationssystem von 5 bildet.
Dieser VTR besitzt einen Laufwerkteil 11 und einen Tunerteil 12,
die wesentliche Funktionseinheiten eines VTR sind, und darüber hinaus ein
digitales Interface 13 für einen seriellen P1394-Bus,
eine Schaltbox 14 zum Umschalten des digitalen Interfaces 13 zwischen
dem Laufwerkteil 11 und dem Tunerteil 12 sowie
einen Mikrocomputer 15 für die Kommunikationssteuerung.
Wenn das Gerät ein
CAM ist, besitzt es anstelle des Laufwerkteils 11 und des
Tunerteils 12 einen Kamerateil. Wenn das Gerät ein Editor
oder ein Computer ist, enthält
es eine Einrichtung für
die Verarbeitung von Videodaten oder Computerdaten.
-
In
einer solchen Konfiguration wird die Verbindung zwischen elektronischen
Geräten
von dem Mikrocomputer 15 für die Kommunikationssteuerung vorgenommen. 9 zeigt
die Schichtanordnung für den
Transfer von Prozessen zwischen einer Anwendung 1, einer
Befehlsverarbeitungseinrichtung 2 und einer Geräteverbindungs-Verarbeitungseinrichtung 3 in
dem Mikrocomputer 15 für
die Kommunikationssteuerung sowie die Struktur einer Tabelle für die Verwaltung
der Geräteverbindungsinformationen
(Konstruktionsverwaltungstabelle, die im folgenden als "CMT" bezeichnet wird).
-
Die
Anwendung 1 erzeugt Befehle, die Parameter wie kommunizierende
Teilnehmer und Bänder enthalten,
und sendet sie an die Befehlsverarbeitungseinrichtung 2.
Wenn das Kommunikationssystem ein repräsentatives Gerät besitzt,
das die Verbindung zwischen den Geräten über das ganze Kommunikationssystem
verwaltet (im folgenden als Audio-Video-Manager bezeichnet und als "AVM" abgekürzt), übergibt
die Befehlsverarbeitungseinrichtung 2 die Geräteverbindungsprozesse
an den AVM. Wenn hingegen kein AVM vorhanden ist, übergibt
die Befehlsverarbeitungseinrichtung 2 die Parameter an seine
eigene Geräteverbindungs-Verarbeitungseinrichtung 3.
Die Geräteverbindungs-Verarbeitungseinrichtung 3 führt den
Geräteverbindungsprozeß auf der
Basis der Parameter aus und registriert die Parameter in der CMT 4.
-
Der
AVM ist ein Gerät,
z.B. ein Computer, das in der Lage ist, das Kommunikationssystem
als Ganzes zu verwalten. Damit ein Gerät ein AVM sein kann, muß es seine
Knoten-ID in (nicht dargestellte) AVM-Register aller Geräte des Systems
einschreiben. Ein Gerät,
das bei einem solchen Einschreiben erfolgreich war, dient als AVM.
Jedes Gerät
in dem System kann feststellen, ob es einen AVM in dem System gibt,
von dem eine solche Knoten-ID in sein AVM-Register eingeschrieben
ist.
-
Kommunikationssysteme,
die einen seriellen P1394-Bus benutzen, wurden als Kommunikationssysteme
vorgeschlagen, um elektronische Geräte, z.B. einen Videorekorder,
einen Fernsehempfänger (im
folgenden als "TV" bezeichnet), einen
mit einer Kamera kombinierten Videorekorder (im folgenden als "CAM" bezeichnet) und
einen Computer über
einen Kommunikationssteuerbus, auf dem Steuersignale und Daten koexistieren
können,
miteinander zu verbinden und das Senden und Empfangen von Steuersignalen
und Daten zwischen diesen elektronischen Geräten zu ermöglichen.
-
Zunächst wird
anhand von 14 ein Beispiel für ein derartiges
Kommunikationssystem beschrieben. Dieses Kommunikationssystem enthält als elektronische
Geräte
VTRs A, B und C und einen Editor. Die Verbindung wird mit Hilfe
von seriellen P1394-Bussen hergestellt, die eine Mischung von Steuersignalen
und Daten zwischen dem VTR A und dem Editor, zwischen dem Editor
und dem VTR B und zwischen dem VTR B und dem VTR C übertragen
können.
Da jedes dieser elektronischen Geräte eine Repeaterfunktion für Steuersignale
und Daten auf einem seriellen Bus besitzt, ist das System einem Kommunikationssystem äquivalent,
in dem elektronische Geräte
an einen gemeinsamen seriellen P1394-Bus angeschlossen sind.
-
In
dem in 14 dargestellten Kommunikationssystem
erfolgt die Kommunikation in vorbestimmten Kommunikationszyklen
(z.B. 125 μs),
wie dies in 6 dargestellt ist. Das System
erlaubt sowohl isochrone Kommunikation, bei der Daten, wie digitale
AV-Signale, kontinuierlich mit einer konstanten Datenrate übertragen
werden, und asynchrone Kommunikation, bei der Steuersignale, wie
Verbindungssteuerbefehle unregelmäßig nach Bedarf übertragen
werden.
-
Am
Anfang eines Kommunikationszyklus befindet sich ein Zyklusstartpaket
CSP, auf das eine Zeitspanne für
die Übertragung
von isochronen Kommunikationspaketen folgt. Durch die Zuteilung
von Kanalnummern 1, 2, 3, ..., N an die isochronen Kommunikationspakete
ist es möglich,
mehrere isochrone Kommunikationspakete zu senden. Nachdem die Übertragung
der zu sendenden isochronen Kommunikationspakete über alle
Kanäle
abgeschlossen ist, wird die Zeitspanne vor dem nächsten Zyklusstartpaket CSP
für die Übertragung
von asynchronen Kommunikationspaketen benutzt.
-
Ein
Gerät,
das im Begriffe ist, ein isochrones Paket an den Bus zu senden,
reserviert zuerst den zu benutzenden Kanal und das Band, die für die Übertragung
der Daten benötigt
werden. Zu diesem Zweck fordert das Gerät den benötigten Kanal und das benötigte Band
von einem (im folgenden als "BM" bezeichneten) Busmanager
an, der ein Gerät zur
Verwaltung der Kanäle
und Bänder
des Busses ist. Wie 7 zeigt, besitzt der BM ein
Register REG1 für
die Anzeige des Belegungszustands der einzelnen Kanäle des Busses
und ein Register REG2 für
die Anzeige der restlichen Kapazität des Busses. Das Gerät, das darangeht,
ein isochrones Paket zu übertragen,
sendet mittels eines asynchronen Datenpakets einen Lesebefehl an
die Register REG1 und REG2, um die Inhalte der Register REG1 und
REG2 auszulesen. Wenn ein freier Kanal und freie Kapazität zur Verfügung stehen,
sendet das Gerät
mittels eines asynchronen Datenpakets einen Schreibbefehl, um den
Kanal und das Band, die es benutzen wird, in die Register REG1 und
REG2 einzuschreiben. Wenn das Einschreiben in die Register REG1
und REG2 erfolgreich ist, darf das Gerät ein Ausgangssignal an den
Bus senden. Der BM wird automatisch nach Maßgabe eines in IEEE-P1394 spezifizierten
Prozesses festlegt, wenn das Kommunikationssystem durch den Anschluß mehrerer
Geräte
an einen seriellen P1394-Bus konfiguriert wird.
-
Die über die
Datenkommunikation erfolgende Verbindungssteuerung in einem Kommunikationssystem,
in dem mehrere elektronische Geräte über einen
seriellen P1394-Bus miteinander verbunden sind, erfolgt durch die
Benutzung von virtuellen digitalen Steckern an den elektronischen
Geräten.
Beispiele von virtuellen Eingangs- und Ausgangssteckern sind in 15 dargestellt.
Jeder dieser digitalen Stecker ist ein 4-Byte-Register, das in einem
Mikrocomputer eines elektronischen Geräts für die Kommunikationssteuerung
angeordnet ist.
-
Wenn
ein Stecker-Aktivierungsfeld in dem digitalen Eingangsstecker, der
in Teil (a) von 15 dargestellt ist, auf 1 gesetzt
wird, wird von dem Kanal, dessen Kanalnummer gesetzt ist, ein isochrones Kommunikationspaket
empfangen. Wenn das Stecker-Aktivierungsfeld des Eingangssteckers
auf 0 gelöscht
wird, wird der Empfang gestoppt. Zu dieser Zeit sind die anderen
Felder des Steckers ebenfalls auf 0 gelöscht. Das LSB eines Schutzzählers (PC) des
Eingangssteckers wird auf 1 gesetzt, um die Signalverbindung von
dem sendenden Gerät
zu schützen,
und ist auf 0 gelöscht,
um den Schutz aufzuheben.
-
Wenn
ein Stecker-Aktivierungsfeld in dem digitalen Ausgangsstecker, der
in Teil (b) von 15 dargestellt ist, auf 1 gesetzt
wird, wird ein isochrones Kommunikationspaket an den Kanal gesendet,
dessen Kanalnummer auf die in einem Datenraten-(DR)-Feld spezifizierte Übertragungsrate
gesetzt ist, wobei das Band benutzt wird, das mittels eines Bandbreiten-Felds angezeigt wird.
Wenn das Stecker-Aktivierungsfeld des Ausgangssteckers auf 0 gelöscht wird,
wird die Übertragung
gestoppt. Zu dieser Zeit sind andere Felder des Steckers ebenfalls auf
0 gelöscht.
Die Nummer der Geräte,
die Schutz anfordern, wird durch Inkrementieren eines Schutzzählers des
Ausgangssteckers um 1 gezählt,
wenn die Signalverbindung zu einem Empfangsgerät geschützt werden soll, und durch
Dekrementieren um 1, wenn der Schutz aufgehoben wird.
-
Die
Stecker können
entweder von dem Gerät,
zu dem die Stecker gehören,
oder von anderen Geräte,
die eine P1394-Transaktion benutzen, überschrieben werden. Es ist
zu beachten, daß ein
solches Überschreiben
nur dann durchgeführt
werden darf, wenn die Werte in den Schutzzählern gleich 0 sind, um die
Verbindung zu schützen.
Die Marken "-", "--" und "---" in den einzelnen
Steckern repräsentieren
Reservierungsbits.
-
Es
sei angenommen, daß in
dem Kommunikationssystem mit der oben beschriebenen Konfiguration
die VTRs B und C im wesentlichen gleichzeitig Befehle aussenden,
um den VTR A aufzufordern, isochrone Kommunikationspakete auszugeben,
während
keine isochrone Kommunikation zwischen den Geräten stattfindet. Um den Befehl,
der den VTR A früher
erreicht hat, erfolgreich auszuführen,
kann ein Verfahren angewendet werden, bei dem jedes der Geräte mit den
digitalen Steckern durch P1394-Lese- und -Schreib-Transaktionen
kommuniziert.
-
Es
sei angenommen, daß der
VTR B den Befehl geringfügig
früher
gesendet hat, wie dies in 16 dargestellt
ist. Wenn dann der VTR B die Inhalte des digitalen Ausgangssteckers
des VTR A zuerst ausliest, gibt der VTR A an dem Ausgangsstecker
als Antwort darauf die Information α zurück, die besagt, ob der VTR
A ausgibt und ob er geschützt
ist. Wenn der VTR B aus der ausgelesenen Information α erkennt,
daß der
VTR A weder ausgibt noch geschützt
ist, schreibt der VTR B die Information β, z.B. die Nummer des Ausgangskanals,
in den digitalen Stecker des VTR A ein, um die Einstellung für die Ausgabe
zu vervollständigen.
Falls der VTR C den gleichen Befehl mit einer geringen Verzögerung an den
VTR A sendet, empfängt
der VTR C, wenn er die Inhalte des digitalen Ausgangssteckers des
VTR A ausliest, eine Antwort β mit
der Information, die anzeigt, daß der VTR A bereits ausgibt.
Auf diese Weise erkennt der VTR C, daß die Ausführung des Befehls gescheitert
ist, und der Prozeß endet
ohne Schreibvorgang.
-
Wenn
jedoch ein Prozeß unter
Verwendung von P1394-Schreib- und -Lese-Transaktionen durchgeführt wird,
um den Befehl auszuführen,
der, wie oben beschrieben, früher
eingetroffen ist, ist die Kommunikation während der Zeitspanne zwischen den
Lese- und Schreiboperationen nicht geschützt. Deshalb kann während der
Zeitspanne zwischen den Lese- und
Schreiboperationen ein anderes Gerät eine Kommunikation durchführen.
-
Es
sei z.B. angenommen, daß der
VTR B die Inhalte des digitalen Ausgangssteckers des VTR A ausliest
und anschließend
der VTR C die Inhalte des digitalen Ausgangssteckers des VTR A ausliest
und aus der Antwort α erkennt,
daß kein
Schutz vorhanden ist, wie dies in 17 dargestellt
ist. Der VTR C kann dann die Information γ einschreiben. Wenn in diesem
Fall das Schreiben durch den VTR C, wie dargestellt, früher stattfindet
als das Schreiben durch den VTR B, veranlaßt der VTR C zunächst den
VTR A die Einstellung für
die Ausgabe zu beenden. Da dem VTR B die Unterbrechung nicht bewußt ist, überschreibt
er die Information β in
dem digitalen Ausgangsstecker des VTR A, um den VTR A zu veranlassen,
die Einstellung für
die Ausgabe abzuschließen.
-
In
diesem Fall ist der VTR B, der die Schreib-Transaktion später gesendet
hat, mit der Ausführung
des Befehls erfolgreich, während
der VTR C, der die Schreib-Transaktion früher gesendet hat, scheitert.
Beide VTRs B und C nehmen jedoch an, daß sie erfolgreich sind. Wenn
die VTRs B und C die Ausgabe über
unterschiedliche Kanäle
angefordert haben, kann der VTR C, bei dem die Ausführung des
Befehls gescheitert ist, über
den Empfangskanal entweder nichts empfangen oder aber Daten empfangen,
die von einem anderen Gerät
gesendet werden.
-
In
der Darstellung von 18 liest der VTR B in ähnlicher
Weise die Inhalte des digitalen Ausgangssteckers des VTR A aus und
empfängt
die Antwort α.
Danach liest der VTR C die Inhalte des digitalen Ausgangssteckers
des VTR A aus. Anschließend schreibt
der VTR B die Information β ein,
weil er aus dem Ergebnis des Auslesens erkennt, daß es keinen Schutz
gibt. Der VTR C schreibt die Information γ ein, weil es keinen Schutz
gab, als er den Lesevorgang durchführte. Dies hat zur Folge, daß der VTR
B in dem digitalen Ausgangsstecker des VTR A die Einstellung für die Ausgabe
vervollständigt,
indem er den Lesevorgang durchführt,
und daß anschließend der
VTR C die Einstellung für
die Ausgabe vervollständigt,
indem er einen Überschreibvorgang
ausführt.
-
Auch
in diesem Fall ist der VTR C, der die Schreib-Transaktion später gesendet
hat, in der Ausführung
des Befehls erfolgreich, während
der VTR B, der die Schreib-Transaktion früher gesendet hat, scheitert,
wobei sowohl der VTR B als auch der VTR C annehmen, daß sie erfolgreich
sind. Falls die VTRs B und C die Ausgabe über unterschiedliche Kanäle angefordert
haben, kann der VTR B, bei dem die Ausführung des Befehls gescheitert
ist, über
den Empfangskanal entweder nichts empfangen oder aber Daten empfangen,
die von einem anderen Gerät gesendet
werden.
-
Die
vorliegende Erfindung wurde konzipiert, um diese Probleme zu reduzieren,
und es ist ein Ziel der Erfindung, ein Verfahren zur Kommunikationssteuerung
sowie ein elektronisches Gerät
zur Verfügung
zu stellen, bei denen ein Befehl, der früher gesendet wurde, zuverlässig ausgeführt wird,
und bei denen geprüft
werden kann, ob die Ausführung
eines Befehls erfolgreich war oder nicht.
-
Zur
Reduzierung der oben beschriebenen Probleme ist gemäß vorliegender
Erfindung ein Kommunikationsverfahren vorgesehen zum Verbinden einer
Mehrzahl von elektronischen Geräten
durch einen Kommunikations-Steuerbus und zur Durchführung einer
Datenkommunikation zwischen den elektronischen Geräten, gekennzeichnet
durch die Verfahrensschritte:
Ausführen eines Verbindungssteuerbefehls
während der
Verbindungssteuerung durch jedes der elektronischen Geräte durch
das Einschreiben einer Verbindungssteuerinformation in eine eigene
Speichereinrichtung oder in eine Speichereinrichtung eines anderen
elektronischen Geräts
und
Senden von Schreibbefehlen aus den elektronischen Geräten, die
im Begriffe sind, die genannte Verbindungssteuerinformation in die
genannte Speichereinrichtung zu schreiben,
Ausführen ausschließlich des
frühesten
Schreibbefehls in der Speichereinrichtung, die die Schreibbefehle
empfangen hat, und
Senden von Antworten aus der Speichereinrichtung, die
angeben, ob die Ausführung
der Schreibbefehle erfolgreich war oder nicht.
-
Elektronische
Geräte,
die z.B. im Begriffe sind, Verbindungssteuerinformationen zu schreiben, senden
Schreibbefehle, die eine erste Information und eine zweite Information
enthalten, die eingeschrieben werden sollen, und die Speichereinrichtung
schreibt eine darin gespeicherte dritte Information nur dann neu
in die erste Information ein, wenn die dritte Information mit der
ersten Information übereinstimmt,
und sendet die dritte Information. Die erste Information ist vorzugsweise
eine Information, die aus einer Speichereinrichtung ausgelesen wird.
-
Gemäß vorliegender
Erfindung ist ein elektronisches Gerät vorgesehen, das in einem
Kommunikationssystem für
die Verbindung eine Mehrzahl von elektronischen Geräten über einen
Kommunikations-Steuerbus benutzt wird und die Datenkommunikation
zwischen den elektronischen Geräten
ermöglicht,
wobei das Gerät
gekennzeichnet ist durch
eine Speichereinrichtung, in die eine
Verbindungssteuerinformation für
die Ausführung
eines Verbindungssteuerbefehls eingeschrieben ist, und
eine
Steuereinrichtung zur Ausführung
der Steuerung in der Weise, daß die
Speichereinrichtung nur die dem frühesten Schreibbefehl entsprechende
Verbindungssteuerinformation speichert und Antworten sendet, die
angeben, ob die Ausführung
der Schreibbefehle erfolgreich war oder nicht.
-
Es
ist vorzugsweise die Möglichkeit
vorgesehen, die Verbindung zwischen Geräten in einem Kommunikationssystem
vor und nach einem Bus-Reset unabhängig davon aufrechtzuerhalten,
ob ein elektronisches Gerät
vorhanden ist, das die Verbindung zwischen den Geräten über das
ganze System verwaltet.
-
Der
neue Audio-Video-Manager, der nach einem Bus-Reset eingerichtet
wird, benötigt
vorzugsweise nicht eine Verbindungsinformation aus jedem Gerät. Da der
Prozeß bei
einem Bus-Reset automatisch durchgeführt wird, braucht sich der
Benutzer um Bus-Resets nicht zu kümmern.
-
Wie
oben im Detail beschrieben wurde, macht es die vorliegende Erfindung
möglich,
Verbindungssteuerbefehlen in der Reihenfolge ihres Eintreffens einfach
und zuverlässig
auszuführen
und zu bestätigen,
ob die Ausführung
der einzelnen Befehle erfolgreich ist oder nicht. Dies erleichtert
die Implementierung einer Geräteverbindungs-Verarbeitungseinrichtung
in Hardware und führt
zu einer Erhöhung der
Verarbeitungsgeschwindigkeit und zu einer Kostenverringerung der
Verarbeitungseinrichtung.
-
1 zeigt
die Schichtanordnung für
den Transfer von Prozessen zwischen einer Anwendung, einer Befehlsverarbeitungseinrichtung
und einer Geräteverbindungs-Verarbeitungseinrichtung 3 eines Mikrocomputers
für die
Kommunikationssteuerung und die Struktur einer CMT nach einem Ausführungsbeispiel
der vorliegenden Erfindung,
-
2 zeigt
die Inhalte einer CMT eines CAM nach einem Ausführungsbeispiel der Erfindung,
-
3 zeigt
die Inhalte einer CMT eines VTR 1 nach dem Ausführungsbeispiel der Erfindung,
-
4 zeigt
die Inhalte einer CMT eines Editors nach dem Ausführungsbeispiel
der Erfindung,
-
5 zeigt
das Beispiel eines Kommunikationssystems, das einen seriellen P1394-Bus
benutzt,
-
6 zeigt
ein Beispiel für
die Datenstruktur auf dem Bus eines Kommunikationssystems, das einen
seriellen P1394-Bus benutzt,
-
7 zeigt
die Art und Weise der Reservierung eines Kanals und eines Bandes
in einem Kommunikationssystem, das einen seriellen P1394-Bus benutzt,
-
8 zeigt
die Basiskonfiguration eines VTR in dem Kommunikationssystem von 5,
-
9 zeigt
die Schichtanordnung für
den Transfer von Prozessen zwischen einer Anwendung, einer Befehlsverarbeitungseinrichtung
und einer Geräteverbindungs-Verarbeitungseinrichtung 3 eines Mikrocomputer
für die
Kommunikationssteuerung und die Struktur einer CMT in einem in 5 dargestellten
VTR,
-
10 zeigt
ein Beispiel eines Befehlsverarbeitungsschritts gemäß der Erfindung,
-
11 zeigt
ein Beispiel für
einen Verarbeitungsschritt, der gemäß vorliegender Erfindung ausgeführt wird,
wenn mehrere Geräte
im wesentlichen gleichzeitig Befehle gesendet haben,
-
12 zeigt
ein weiteres Beispiel eines Verarbeitungsschritts gemäß der Erfindung,
der ausgeführt
wird, wenn mehrere Geräte
im wesentlichen gleichzeitig Befehle gesendet haben,
-
13 zeigt
ein Flußdiagramm
eines Prozesses, der von einem VTR A ausgeführt wird, wenn er ein Broadcast
ausgibt,
-
14 zeigt
ein Beispiel für
ein Kommunikationssystem, an das mehrere Geräte über serielle P1394-Busse angeschlossen
sind,
-
15 zeigt
Beispiele für
digitale Stecker,
-
16 zeigt
ein Beispiel für
einen Befehlsverarbeitungsschritt,
-
17 zeigt
ein Beispiel für
einen herkömmlichen
Befehlsverarbeitungsschritt, der ausgeführt wird, wenn mehrere Geräte im wesentlichen
gleichzeitig Befehle gesendet haben,
-
18 zeigt
ein weiteres Beispiel für
einen herkömmlichen
Befehlsverarbeitungsschritt, der ausgeführt wird, wenn mehrere Geräte im wesentlichen gleichzeitig
Befehle ausgesendet haben.
-
Im
folgenden werden unter Bezugnahme auf die Zeichnungen bevorzugte
Ausführungsbeispiele beschrieben.
Die Beschreibung befaßt
sich mit folgenden Punkten.
- [1] Registrierung
in einer und Löschen
aus einer CMT in einem Ausführungsbeispiel
der Erfindung
- [2] Prozesse bei einem Bus-Reset
- (2-1) Prozeß,
der durchgeführt
wird, wenn es sowohl vor als auch nach einem Bus-Reset keinen AVM gibt
- (2-2) Prozeß,
der durchgeführt
wird, wenn vor einem Bus-Reset kein AVM existiert und nach dem Reset
ein AVM eingerichtet wird
- (2-3) Prozeß,
der durchgeführt
wird, wenn vor einem Bus-Reset ein AVM existiert und nach dem Reset
nicht
-
[1] Registrierung in einer
und Löschen
aus einer CMT in einem Ausführungsbeispiel
der Erfindung
-
1 zeigt
die Schichtanordnung für
den Transfer von Prozessen zwischen einer Anwendung 1,
einer Befehlsverarbeitungseinrichtung 2 und einer Geräteverbindungs-Verarbeitungseinrichtung 3 in
einem Mikrocomputer für
die Kommunikationssteuerung und die Struktur einer CMT nach einem
Ausführungsbeispiel
der vorliegenden Erfindung.
-
Wenn
in dem vorliegenden Ausführungsbeispiel
die Anwendung 1 als Reaktion auf eine von dem Benutzer
durchgeführte
Operation einen Befehl erzeugt, der Verbindungsparameter enthält, ordnet
die Befehlsverarbeitungseinrichtung 2 jeder Verbindung eine
Verbindungs-ID zu, die unter den Geräten eindeutig definiert ist,
und registriert sie zusammen mit den von der Anwendung 1 übergebenen
Parametern in der CMT 4. Die Befehlsverarbeitungseinrichtung liefert
diese Verbindungs-ID als Antwort an die Anwendung 1. Anschließend werden
die Verbindungsparameter ausschließlich durch die Übertragung
eines Befehls eindeutig bestimmt, der eine von der Anwendung 1 ausgeführte Verbindungs-ID
aufweist.
-
Wenn
in dem Kommunikationssystem kein AVM vorhanden ist, sendet die Befehlsverarbeitungseinrichtung 2 den
Befehl, der die in der CMT 4 registrierten Verbindungsparameter
enthält,
an seine eigene Geräteverbindungs-Verarbeitungseinrichtung 3.
Die Geräteverbindungs-Verarbeitungseinrichtung 3 führt eine
Geräteverbindung
nach Maßgabe
der Parameter durch. Falls hingegen ein AVM vorhanden ist, sendet
die Befehlsverarbeitungseinrich tung 2 den Befehl, der die
in der CMT 4 registrierten Verbindungsparameter enthält, an den
AVM, damit dieser die Geräteverbindung
vornimmt.
-
Wenn
die Befehlsverarbeitungseinrichtung 2 aus der Anwendung 1 einen
Gerätetrennbefehl
empfängt,
prüft er,
ob es in dem Kommunikationssystem einen AVM gibt. Wie oben beschrieben
wurde, ist der Trennbefehl ein Befehl, der eine Verbindungs-ID benutzt.
Wenn kein AVM vorhanden ist, sendet die Befehlsverarbeitungseinrichtung 2 den
Trennbefehl an seinen eigene Geräteverbindungs-Verarbeitungseinrichtung 3.
Wenn ein AVM vorhanden ist, sendet er den Trennbefehl an den AVM.
Nachdem ein Gerätetrennprozeß von der
Geräteverbindungs-Verarbeitungseinrichtung 3 oder
dem AVM durchgeführt
wurde, löscht
die Befehlsverarbeitungseinrichtung 2 die Verbindungs-ID
und die Parameter aus der CMT 4.
-
Der
Teil jedes Geräts,
der die Geräteverbindung
durchführt,
wurde beschrieben. Ein AVM hat grundsätzlich die gleiche Konfiguration
mit dem Unterschied, daß er
Geräteverbindungsinformationen zu
jedem anderen Gerät
sendet und von ihm empfängt.
-
Es
wird nun der Fall diskutiert, daß in dem Kommunikationssystem
von 5 der CAM im Wiedergabemodus arbeitet. Der VTR
1 zeichnet auf, und der Editor steuert den VTR 2 und den VTR 3.
-
2 zeigt
die CMT, die von dem CAM gehalten wird. In 2 ist die
den Parametern zugeordnete Ausgangsknoten-ID die ID des Geräts, das
Informationssignale ausgibt (im vorliegenden Fall die Knoten-ID
des CAM). Die Nummer des Ausgangssteckers ist die Nummer, die dem
Stecker zugeordnet ist, der die Informationssignale ausgibt (in
diesem Fall der Stecker 0). Die Eingangsknoten-ID ist die ID des
Geräts,
dem die Informationssignale zugeführt werden. Da der CAM in diesem
Fall im Wiedergabemodus arbeitet, in dem er die Informationssignale
an den Bus ausgibt, lautet die ID "Broadcast". Die Nummer des Eingangssteckers ist
die Nummer, die dem Stecker zugeordnet ist, dem die Informationssignale zugeführt werden.
Da in diesem Fall ein Broadcast ausgegeben wird, ist die Nummer
des Eingangssteckers mit "gleichgültig" markiert. Der Parameter
BW (Bandbreite) repräsentiert
das für
die Übertragung der
Informationssignale benötigte
Band. Der Parameter PB (Schutz-Bit) zeigt an, ob die Verbindung des
Geräts
geschützt
ist. Da es im vorliegenden Fall auf 0 gesetzt ist, gibt es keinen
Schutz. Der Geräteverbindung,
die solche Parameter aufweist, ist eine Verbindungs-ID = 1 zugeordnet.
-
3 zeigt
in ähnlicher
Darstellung die CMT des VTR 1. Der Parameter "Broadcast" der Ausgangsknoten-ID zeigt einen Zustand
an, in dem das Eingangssignal aus einem Vorgabe-Kanal (festen Kanal) kommt.
-
Die
CMT des Editors ist in 4 dargestellt. Wenn die Verbindung
zwischen Geräten
von einem Gerät,
wie einem Editor, durchgeführt
wird, der andere Geräte
verwalten kann, wird diese Verbindung als Eins-zu-Eins-Verbindung
bezeichnet. Im Fall einer Eins-zu-Eins-Verbindung ist der Parameter
PB auf 1 gesetzt, weil die Verbindung zwischen den Geräten geschützt ist.
-
Wenn
die Verbindung für
ein Broadcast eingerichtet wird, obwohl die Verbindung zwischen
Geräten
normalerweise nicht geschützt
ist, kann eine Konfiguration benutzt werden, bei der der Schutz
der Verbindung zwischen den Geräten
von dem Benutzer eingestellt werden kann. In diesem Fall empfängt die
Befehlsverarbeitungseinrichtung 2 aus der Anwendung 1 eine
Anforderung für
einen Schutzprozeß.
Wenn die Befehlsverarbeitungseinrichtung 2 den Schutzprozeß ausgeführt hat,
wird der Parameter PB der entsprechenden Verbindungs-ID in der CMT 4 auf
1 gesetzt. Wenn ein Prozeß zum
Löschen des
Schutzes durchgeführt
wurde, wird der Parameter PB auf 0 gesetzt. Im Fall der Eins-zu-Eins-Verbindung
wird der Parameter PB bei der Registrierung auf 1 gesetzt, da eine
solche Verbindung immer geschützt
ist.
-
[2] Prozesse bei einem
Bus-Reset
-
Im
folgenden werden die Prozesse bei einem Bus-Reset beschrieben.
-
(2-1) Prozeß, der durchgeführt wird,
wenn sowohl vor als auch nach einem Bus-Reset kein AVM vorhanden ist
-
Wenn
sowohl vor als auch nach einem Bus-Rest kein AVM vorhanden ist, übergibt
die Befehlsverarbeitungseinrichtung 2 des CAM, der mit
der Ausgabe eines Broadcast befaßt war, den Verbindungsprozeß in der
CMT 4 an seiner eigenen Geräteverbindungs-Verarbeitungseinrichtung 3 weiter. Ähnlich gibt
der Editor den Eins-zu-Eins-Verbindungsprozeß zwischen dem VTR 2 und dem
VTR 3, der in der CMT 4 registriert ist, an seine eigene
Geräteverbindungs-Verarbeitungseinrichtung 3 weiter.
Die Verbindung zwischen den Geräten
wird aufrechterhalten, wenn die Geräteverbindungsprozesse tatsächlich ausgeführt werden.
Der VTR 1, dem der Broadcast zugeführt wurde, kann dann mit dem
Empfang des Eingangssignals über
einen Vorgabe-Kanal fortfahren.
-
Ein
Beispiel dafür,
daß weder
vor noch nach einem Bus-Reset ein AVM existiert, wird anhand eines
Falls beschrieben, bei dem die Aufzeichnungsoperation zwischen dem
CAM und dem VTR 1 gestoppt und die Stromversorgung des CAM ausgeschaltet
wird.
-
Wenn
die Aufzeichnungsoperation des VTR 1 und die Wiedergabeoperation
des CAM gestoppt werden, übergibt
die Anwendung 1 des CAM an den Befehlsverarbeitungseinrich tung 2 einen
Befehl zur Unterbrechung der Broadcast-Ausgabe. Da in dem System
kein AVM existiert, gibt die Befehlsverarbeitungseinrichtung 2 diesen
Befehl an seinen eigenen an den Befehlsverarbeitungseinrichtung 2 weiter. Wenn
der Prozeß zum
Trennen der Geräte
abgeschlossen ist, löscht
die Befehlsverarbeitungseinrichtung 2 den Verbindungsprozeß, der der
Verbindungs-ID des Trennbefehls entspricht, der von der Anwendung 1 aus
der CMT 4 gemeldet wird. Anschließend findet ein Bus-Reset statt,
wenn die Stromversorgung des CAM ausgeschaltet wird. Da es in dem
System keinen AVM gibt, fordert der Editor nach dem Bus-Reset aus
seiner eigenen Geräteverbindungs-Verarbeitungseinrichtung 3 einen Eins-zu-Eins-Verbindungsprozeß an. Die
Geräteverbindungs-Verarbeitungseinrichtung 3 akquiriert
das Band und den Kanal von neuem, um die Verbindung zwischen den
Geräten
neu einzurichten. Auf diese Weise wird der Editiervorgang aufrechterhalten,
die der Editor zwischen den VTRs 2 und 3 durchführt.
-
(2-2) Prozeß, der durchgeführt wird,
wenn weder vor noch nach einem Bus-Reset ein AVM existiert
-
Als
Nächstes
wird ein Fall beschrieben, bei dem weder vor noch nach einem Bus-Reset
ein AVM existiert. Es wird hier angenommen, daß ein Computer der AVM wird
und das System als Ganzes versteht.
-
Da
es nach dem Bus-Reset in dem System einen AVM gibt, übergibt
die Befehlsverarbeitungseinrichtung 2 des Editors an den
AVM einen Befehl für
eine Eins-zu-Eins-Verbindung. Der AVM gibt den von der Befehlsverarbeitungseinrichtung 2 des
Editors empfangenen Geräteverbindungsprozeß an seine
eigene Geräteverbindungs-Verarbeitungseinrichtung 3 weiter,
um die Akquisition des Bandes und des Kanals vorzunehmen und führt den
Verbindungsprozeß durch.
Es sei angenommen, daß die
Operation zwischen den VTRs 1 und 4 anschließend durch eine Operation auf
dem Computer ausgeführt
wird. Der Computer erkennt das Band und den Kanal, die von dem Editor
benutzt werden, und führt
seine eigenen Operationen, wie das Editieren, unter Benutzung anderer
Kanäle
durch. Ein AVM kann die Verbindung zwischen anderen Geräten zwangsweise
trennen, wenn dies für
die effektive Benutzung des Busses als Ganzes erforderlich ist.
-
(2-3) Prozeß, der durchgeführt wird,
wenn vor dem Bus-Reset ein AVM existiert und nach dem Reset nicht
-
Es
wird nun ein Fall beschrieben, bei dem vor dem Bus-Reset ein AVM
existiert und nach dem Reset nicht. Wenn der Computer nach Abschluß der auf
ihm laufenden Editieroperation aufhört, das System als AVM zu verwalten,
und ein Bus-Reset bewirkt, erkennt der Editor nun, daß es keinen
AVM gibt, und sendet an seine eigene Geräteverbindungs-Verarbei tungseinrichtung 3 einen
Eins-zu-Eins-Verbindungsbefehl. Da die Geräteverbindungs-Verarbeitungseinrichtung 3 des
Editors einen diesem Befehl entsprechenden Eins-zu-Eins-Verbindungsprozeß durchführt, wird
die Editieroperation zwischen den VTRs 2 und 3 fortgesetzt. Da der
Computer auf der anderen Seite aufgehört hat, das System als AVM
zu verwalten und die CMT 4 gelöscht wurde, wird die Verbindung
zwischen den VTRs 1 und 4 nicht wieder eingerichtet, und die Verbindung
zwischen den VTRs 1 und 4, die von dem Computer gesteuert wurde, bleibt
unterbrochen.
-
Wie
oben beschrieben wurde, verwaltet die Befehlsverarbeitungseinrichtung 2,
die die obere Schicht bildet, die CMT 4 und überträgt den Prozeß auf der
CMT 4 an den AVM oder an die eigene Geräteverbindungs-Verarbeitungseinrichtung 3,
nachdem das Vorhandensein des AVM überprüft wurde. Deshalb kann die
Verarbeitung zwischen den Geräten
in dem System unabhängig
von dem Vorhandensein und von Änderungen
des AVM vor und nach einem Bus-Reset aufrechterhalten werden. Darüber hinaus muß ein neuer
AVM keine Verbindungsinformation auf der CMT 4 aus jedem
Gerät anfordern.
-
Wenn
einige Editoren oder dgl. während
der Ausführung
mehrerer Editierfunktionen entfernt oder hinzugefügt werden,
werden auf diese Weise andere Eins-zu-Eins-Verbindungen aufrechterhalten,
obwohl die Geräte,
die mit den relevanten Editieroperationen befaßt waren, abgetrennt sind.
Dies entspricht der dem IEEE-P1394-Standard zugrundeliegenden Philosophie,
daß das
Entfernen oder Hinzufügen
von Geräten
in einem System andere Geräte
nicht störend
beeinflussen darf.
-
Gemäß vorliegender
Erfindung wird jeder Verbindung eine eindeutig definierte Verbindungs-ID zugeteilt und
in der CMT 4 zusammen mit Parametern registriert, die von
der Anwendung 1 übergeben wurden.
Anschließend
kann die Anwendung 1 den Befehlsverarbeitungseinrichtung 2 veranlassen,
die Verbindungsparameter eindeutig zu bestimmen und unter Verwendung
der der Verbindungs-ID entsprechenden Parameter einen Befehl zu
erzeugen, indem ihm mittels der Verbindungs-ID einfach ein Befehl
zugesendet wird.
-
Obwohl
in dem oben beschriebenen Ausführungsbeispiel
zwischen der Befehlsverarbeitungseinrichtung der einzelnen Geräte und der
Befehlsverarbeitungseinrichtung des AVM Befehle unter Verwendung
von Verbindungsparametern übertragen
werden, kann auch eine Konfiguration benutzt werden, bei der der
AVM zusätzlich
die Fähigkeit
aufweist, die für
die einzelnen Geräte
definierten Verbindungs-IDs zu verwalten. Ein Befehl, der eine Verbindungs-ID und
Parameter enthält,
wird temporär
gesendet, und nachdem der Befehl in der CMT des AVM registriert ist,
werden mit Hilfe der Verbindungs-ID Befehle ausgetauscht.
-
Im
folgenden wird nun ein weiteres Ausführungsbeispiel der Erfindung
detailliert beschrieben.
-
Gemäß vorliegender
Erfindung wird in dem in 14 dargestellten
Kommunikationssystem ein Geräteverbindungsprozeß durchgeführt. Wie
oben beschrieben wurde, muß zur
Durchführung
eines Geräteverbindungsprozesses
in die digitalen Stecker eine Geräteverbindungsinformation eingeschrieben werden.
In dem vorliegenden Ausführungsbeispiel wird
zum Einschreiben der Geräteverbindungsinformation
eine Compare-and-Swap-(C&S)-Transaktion benutzt,
die eine der P1394-Sperrtransaktionen darstellt.
-
Bei
der C&S-Transaktion
wird eine Schreibanweisung gesendet, die eine Kombination darstellt aus
ersten Daten, die aus einem Register ausgelesen werden, und zweiten
Daten, die neu in das Register einzuschreiben sind. Das Register
vergleicht dritte Daten, die laufend eingeschrieben werden, mit den
ersten Daten, und nur wenn sie miteinander übereinstimmen, schreibt es
die dritten Daten in die zweiten Daten ein. Die dritten Daten werden
dann zu dem Gerät übertragen,
das die Schreibanweisung gesendet hat.
-
Es
sei auf 10 Bezug genommen. Wenn der
schreibende Teilnehmer zuerst die Inhalte des Registers ausliest,
gibt das Register eine Information α über die Inhalte des Registers
als Antwort zurück (Leseantwort).
Der Prozeß ist
insoweit der gleiche wie beim Stand der Technik. Als Nächstes sendet
der schreibende Teilnehmer an das Register eine Schreibanweisung
(Sperranforderung), die eine Kombination aus der Inhaltsinformation α und einer Information β ist, die
neu in das Register eingeschrieben werden soll. Nur wenn die von
dem schreibenden Teilnehmer gesendete Inhaltsinformation α mit der
Inhaltsinformation α', die laufend in
das Register eingeschrieben wird, übereinstimmt, schreibt das
Register die Information über
seine Inhalte in die Information β ein
und sendet außerdem
die Inhaltsinformation α' an den schreibenden
Teilnehmer (Sperrantwort). Falls nicht während der Zeitspanne zwischen der
Antwort aus dem Register (Leseantwort) und der Schreibanweisung
eine Schreibanweisung von einem anderen Gerät erfolgreich ausgeführt wird,
ist α gleich α'. Dies bedeutet,
daß das
Schreiben erfolgreich war, und ermöglicht es dem schreibenden
Teilnehmer, das erfolgreiche Schreiben zu bestätigen.
-
11 und 12 zeigen
Fälle,
die den in 17 und 18 dargestellten
Fällen
entsprechen. Wenn der VTR C in der Darstellung von 11 eine
Schreibanweisung früher
sendet, schreibt der VTR A die Information auf dem digitalen Ausgangsstecker
in die Information γ neu
ein und sendet die Information α auf
den digitalen Ausgangsstecker vor dem Wiedereinschreiben an den
VTR C. Auf diese Weise kann der VTR C bestätigen, daß das Schreiben erfolgreich
war. Wenn der VTR B eine Schreibanweisung sendet, haben sich die
Inhalte des digitalen Ausgangssteckers jedoch in die Information γ geändert, die
nicht mit der ausgele senen Information α übereinstimmt. Deshalb findet
kein Einschreiben statt, und die Information α, die die Inhalte des digitalen
Ausgangssteckers darstellt, wird zu dem VTR B gesendet. Der VTR
B kann bestätigen,
daß das
Einschreiben nicht erfolgreich war, weil γ ≠ α. Wie 12 zeigt,
ist der VTR B, der eine Schreibanweisung früher gesendet hat, mit dem Schreiben ähnlich erfolgreich,
während
der VTR C, der die Schreibanweisung später gesendet hat, scheitert.
-
Wie
oben beschrieben wurde, ist gemäß vorliegender
Erfindung immer dasjenige Gerät
mit dem Schreiben erfolgreich, das eine Schreibanweisung früher gesendet
hat. Darüber
hinaus können
sowohl das erfolgreiche Gerät
als auch das scheiternde Gerät
bestätigen,
ob das Schreiben erfolgreich war oder nicht.
-
Als
Nächstes
wird anhand des Flußdiagramms
von 13 als Beispiel für eine Verbindungssteuerung
der Fall beschrieben, daß der
VTR A ein Broadcast ausgibt. Zunächst
wird in dem Schritt S1 ein Prozeß zum Akquirieren eines Broadcast-Kanals
durchgeführt.
Wenn die Akquisition erfolgreich ist, geht der Prozeß weiter
zu dem Schritt S2, und wenn die Akquisition erfolglos ist, endet
der Prozeß. In
dem Schritt S2 wird ein Prozeß zum
Akquirieren eines Bandes für
den Broadcast durchgeführt.
Wenn die Akquisition erfolgreich ist, geht der Prozeß weiter zu
dem Schritt S3, und wenn die Akquisition erfolglos ist, geht der
Prozeß weiter
zu dem Schritt S5.
-
Das
Verfahren zum Akquirieren des Bandes und des Kanals gemäß vorliegender
Erfindung wird näher
erläutert.
Wie oben beschrieben wurde, muß in einem
Kommunikationssystem, das einen seriellen P1394-Bus verwendet, ein
Gerät,
das versucht, ein isochrones Kommunikationspaket zu senden, den
zu benutzenden Kanal und das benötigte
Band in die Register REG1 und REG2 des BM einschreiben. Wenn dieses
Einschreiben erfolgreich ist, wird die Übertragung des isochronen Kommunikationspakets aktiviert.
Gemäß vorliegender
Erfindung wird eine P1394-C&S-Transaktion
benutzt, um den Kanal und das zu benutzende Band einzuschreiben.
-
In
dem Schritt S1 wird eine Transaktion (Lesen) gesendet, um das Register
REG1 des BM auszulesen, und aus der Antwort darauf (Leseantwort) werden
freie Kanäle
geprüft.
Falls der Broadcast-Kanal (ein vorbestimmter Kanal, der die für ein Broadcast
zu benutzende Vorgabe bildet) belegt ist, war die Akquisition des
Kanals erfolgreich.
-
Falls
der Broadcast-Kanal frei ist, wird eine Schreibanweisung (Sperranforderung)
gesendet, die ein Kombination darstellt aus dem ausgelesenen Wert
des Registers REG1 und einem Wert, bei dem das dem Broadcast-Kanal
entsprechende Bit auf 1 gesetzt ist. Falls der in der Schreibanweisung
enthaltene Wert des Registers REG1 als Antwort von dem BM zurück gegeben
wird (Sperrantwort), war die Akquisition des Broadcast-Kanals erfolgreich.
Falls ein anderer Wert zurückgegeben
wird, war die Akquisition des Kanals erfolglos. Nachdem der zurückgegebene
Wert geprüft
ist, wird der Prozeß dann
wiederholt, beginnend mit dem Schritt, in dem geprüft wird, ob
der Broadcast-Kanal besetzt ist.
-
In ähnlicher
Weise wird in dem Schritt S2 in dem Register REG2 ein Prozeß zum Akquirieren
des Bandes durchgeführt.
Es wird eine Transaktion (Lesen) zum Auslesen des Registers REG2
des BM gesendet, um aus der Antwort (Leseantwort) hierauf das aktuelle
restliche Band zu prüfen.
Falls das verbleibende Band kleiner ist als das für die Ausgabe der
Daten benötigte
Band, schlägt
der Prozeß fehl. Wenn
hingegen das verbleibende Band größer ist als das für die Ausgabe
der Daten benötigte
Band, wird eine Schreibanweisung (Sperranforderung) gesendet. Diese
Schreibanweisung enthält
eine Kombination aus dem aus dem Register REG2 ausgelesenen Wert
und einem Wert, der gewonnen wird, indem das für die Ausgabe der Daten benötigte Band
von dem aus dem Register REG2 ausgelesenen Band subtrahiert wird.
Wenn der BM den gleichen Wert zurückgibt wie den in der Schreibanweisung
eingestellten Wert in REG2 (Sperrantwort), ist die Akquisition des Bandes
erfolgreich. Falls ein anderer Wert zurückgegeben wird, ist der Prozeß gescheitert.
Nachdem der zurückgegebene
Wert geprüft
ist, wird der Prozeß dann
wiederholt, beginnend mit dem Schritt, in dem die Beziehung zwischen
der Größe des aktuell
verbleibenden Bandes und der Größe des für die Ausgabe
der Daten benötigten
Bandes geprüft
wird.
-
Als
Nächstes
wird in dem Schritt S3 der eigene digitale Ausgangsstecker 0 in
den EIN-Zustand gesetzt. Der digitale Ausgangsstecker 0 ist die
Vorgabe für
die Ausgabe eines Broadcast. Wenn das Setzen erfolgreich ist, wird
der Prozeß beendet
(Erfolg), und wenn es fehlschlägt,
geht der Prozeß weiter
zu dem Schritt S4. Die Inhalte des digitalen Ausgangssteckers werden
ausgelesen, und der Prozeß scheitert,
wenn die Antwort (Leseantwort) anzeigt, daß Schutz gegeben ist. Wenn
der Stecker nicht geschützt
ist, wird er durch die C&S-Transaktion
eingeschaltet.
-
Es
wird eine Schreibanweisung (Sperranforderung) gesendet, in welcher
der Wert der aus dem digitalen Ausgangsstecker ausgelesenen Antwort und
die Werte der Steckeraktivierung = 1, BCN (Broadcast-Kanalnummer),
DR und BW des digitalen Ausgangssteckers gesetzt sind, und der Prozeß ist erfolgreich,
wenn als Antwort hierauf der in der Schreibanweisung enthaltene
Wert des digitalen Ausgangssteckers 0 zurückgegeben wird (Sperrantwort).
Falls ein anderer Wert zurückgegeben
wird, ist der Prozeß gescheitert.
Nachdem der Wert geprüft ist,
wird der Prozeß von
dem Schritt an wiederholt, in dem geprüft wird, ob Schutz gegeben
ist.
-
Als
Nächstes
wird in dem Schritt S4 das in dem Schritt S2 akquirierte Band freigegeben,
und in dem Schritt S5 wird der in dem Schritt S3 akquirierte Broadcast-Kanal
freigegeben. Diese Freigabeprozesse benutzen ebenfalls die C&S-Transaktion.
Und zwar werden in dem Schritt S4 die Inhalte des Registers REG2
des BM ausgelesen. Es wird ein Schreibbefehl erzeugt, der eine Kombination
darstellt aus diesem ausgelesenen Wert und einem Wert, der durch
Addieren des in dem Schritt S2 akquirierten Bandes zu diesem Wert
gewonnen wird. Die Freigabe des Kanals wird beendet, falls die Antwort
aus dem BM dieselbe ist, wie der in der Schreibanweisung enthaltene
Wert des Registers REG2. Falls ein anderer Wert zurückgegeben
wird, wird der Prozeß wiederholt,
beginnend mit dem Schritt, in dem eine Schreibanweisung gesendet
wird, die eine Kombination darstellt aus dem zurückgegebenen Wert und einem
Wert, der durch Addieren des in dem Schritt S2 akquirierten Bandes
zu diesem Wert gewonnen wird. In dem Schritt S5 wird ähnlich vorgegangen.
-
Die
vorliegende Erfindung ist nicht auf die oben beschriebenen Ausführungsbeispiele
beschränkt.
Auf der Basis der Prinzipien der Erfindung sind vielmehr zahlreiche
Modifizierungen möglich.
So ist z.B. eine Anordnung möglich,
bei der der in 10 dargestellte Wechsel der
Schreibanweisung (Lesen) und die Antwort hierauf (Leseantwort) weggelassen
ist und nur die C&S-Transaktion
benutzt wird. Dadurch kann die Zahl der Übertragungen reduziert werden.
Dies ist dann effektiv, wenn die Registerinformation, wie in dem
Anfangszustand, abgeschätzt
werden kann.
-
Obwohl
die oben beschriebenen Ausführungsbeispiele
einen seriellen P1394-Bus als Kommunikationssteuerbus verwenden,
kann die Erfindung auch mit Hilfe anderer Kommunikationssteuerbusse
implementiert werden, solange es möglich ist, eine Mischung aus
Steuersignalen und Daten zu übertragen.
-
Da
der einschlägige
Fachmann ohne weiteres zahlreiche Modifizierungen und Änderungen
vornehmen kann, soll die Erfindung nicht genau auf die dargestellten
und beschriebenen Konstruktionen und Operationen beschränkt sein.
Daher sollen alle geeigneten Modifizierungen und Äquivalente
in den Rahmen der Erfindung fallen.