JPH11261613A - データ転送方法 - Google Patents

データ転送方法

Info

Publication number
JPH11261613A
JPH11261613A JP10062788A JP6278898A JPH11261613A JP H11261613 A JPH11261613 A JP H11261613A JP 10062788 A JP10062788 A JP 10062788A JP 6278898 A JP6278898 A JP 6278898A JP H11261613 A JPH11261613 A JP H11261613A
Authority
JP
Japan
Prior art keywords
node
data
data block
transfer
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10062788A
Other languages
English (en)
Inventor
Takahiko Nanko
孝彦 南光
Hiroyuki Iizuka
飯塚  裕之
Yasuo Nishiwaki
保夫 西脇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10062788A priority Critical patent/JPH11261613A/ja
Publication of JPH11261613A publication Critical patent/JPH11261613A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 様々なシステム構成に柔軟に対応可能で、処
理の効率が良く、エラー処理が簡単なデータ転送方法を
提供する。 【解決手段】 各ノードに対してノード識別子が割り当
てられるバスシステム上の第1のノード1から第2のノ
ード2にデータを複数のデータブロックに分割して転送
するに際し、1個のデータブロック転送に先立って、制
御ノード3は第2のノード2に対してデータブロック受
信命令4を発行し、次に第1のノード1に対して、第2
のノード2のノード識別子を含むデータ送信命令5を発
行することで、第1のノード1から第2のノード2への
データブロック転送が実行され、データブロック転送が
終了した後に、第1のノード1はデータブロック送信処
理の実行結果を制御ノード3に対して通知し、第2のノ
ード2はデータブロック受信処理の実行結果を制御ノー
ド3に対して通知する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、静止画像データや
文書データ等のリアルタイム処理を必要としないデータ
を複数の機器間で転送する際に用いられるデータ転送方
法に関する。
【0002】
【従来の技術】近年、デジタルスチルカメラやプリンタ
など静止画像を取り扱う機器の市場拡大が進んでいる。
これらの機器は従来パーソナルコンピュータの存在する
環境で使用されていたが、近年、これらの機器をコンピ
ュータのない環境で簡単に取り扱いたいというニーズが
高まっている。
【0003】従来では、このような静止画や文書データ
に代表される、リアルタイム処理を必要としないデータ
の送受信を2個の機器間で行う場合には、一方の機器が
もう一方の機器に対してコマンドを発行することで、デ
ータの送信または受信を行うのが一般的であった。図8
は、従来のデータ転送方法による静止画データシステム
の第1の例をあらわすブロック図である。図8におい
て、100は画像入力機器であるデジタルスチルカメ
ラ、101は画像出力機器であるプリンタである。ユー
ザはデジタルスチルカメラ100の操作ボタンにより、
内部の画像を選択し、これをプリンタ101に出力する
よう指示を行う。するとデジタルスチルカメラ100が
プリンタ101に対して、データ受信コマンド102を
発行することでプリンタ101を受信可能状態とし、続
いてデータ103の転送を行う。
【0004】次に、従来のデータ転送方法による静止画
データシステムの第2の例を図9に示す。図9において
は、プリンタ101の操作パネルをユーザが操作するこ
とで、デジタルスチルカメラ100の画像を出力する場
合を説明する。ユーザはプリンタ101の操作ボタンに
より、デジタルスチルカメラ100上の画像データの出
力する指示を行う。するとプリンタ101はデジタルス
チルカメラ100に対してデータ送信コマンド104を
出力し、このデータ送信コマンド104を受信したデジ
タルスチルカメラ100はプリンタ101に対してデー
タ103の転送処理を行う。
【0005】さらに、従来のデータ転送方法による静止
画データシステムの第3の例を図10に示す。図10に
おいては、パーソナルコンピュータやデジタルテレビ用
セットトップボックスなど、第3の機器の命令によって
画像データをデジタルスチルカメラ100からプリンタ
101に転送する場合を説明する。図10において、1
05はパーソナルコンピュータを現している。まず、パ
ーソナルコンピュータ105がデジタルスチルカメラ1
00に対してデータ入力用コマンド104を発行するこ
とで、データ103が一旦パーソナルコンピュータ10
5内に格納される。次に、パーソナルコンピュータ10
5はプリンタ101に対してデータ出力コマンドを発行
し、先ほどデジタルスチルカメラ100から受信、格納
しておいたデータ103をプリンタに送信する処理を行
う。すなわち、同じデータ103を(1)デジタルスチ
ルカメラ100からパーソナルコンピュータ105に転
送、(2)パーソナルコンピュータ105からプリンタ
101に転送、という2段階の処理が必要であり、また
同じデータを2回転送する必要が生じるため処理時間が
かかる上に、パーソナルコンピュータ105にデータ1
03を格納するだけの格納領域が必要となり、効率が悪
いシステムとなってしまう。
【0006】そこで、この従来の一般的なデータ転送方
法の効率向上を目的としたデータ転送方法として、ANSI
X3.131-1986, Small Computer System Interface記載
の「COPY コマンド」が提案されている。図11
は、この従来の改良されたデータ転送方法を用いた静止
画データシステムの例の動作を説明するものである。
【0007】図11において、106はパーソナルコン
ピュータがデジタルスチルカメラ100に対して画像デ
ータの転送を支持するCOPYコマンド、107はプリ
ンタ101で発生したエラーをデジタルカメラ100に
転送する第1のエラー通知、108はデジタルスチルカ
メラ100がパーソナルコンピュータ105に、プリン
タ101のエラーを転送する第2のエラー通知を表して
いる。
【0008】まず、パーソナルコンピュータ105はデ
ジタルスチルカメラ100に対して、「プリンタ101
に対して画像を転送せよ」という指示を含むCOPYコ
マンド106を発行する。このCOPYコマンド106
には、図8で説明したデータ受信コマンド102の内容
が含まれており、同時にプリンタ101の識別子(SC
SI ID)も含んでいる。
【0009】デジタルスチルカメラ100はCOPYコ
マンド106を受信すると、その中に含まれているプリ
ンタ101の識別子とデータ受信コマンド102の内容
を解釈し、プリンタ101に対してデータ受信コマンド
102を発行し、それに続いてデータ103をプリンタ
101に対して送信する。このように改良されたデータ
転送方法によれば、第3の制御機器がデータ転送を支持
しているにもかかわらず、データ103の転送は、デジ
タルスチルカメラ100からプリンタ101への1回だ
けであるので、処理の効率が確かに向上している。
【0010】しかしながら、プリンタ101においてデ
ータ転送中に、用紙切れや紙詰まりなどのエラーが発生
し、データ受信を継続することができなくなったとき
は、図11の第1のエラー通信107に示すように、プ
リンタ101は、これらのエラー状態をデジタルスチル
カメラ100に対して通知する。次に、プリンタ101
からのエラー状態の通知を受けたデジタルスチルカメラ
100は、図11の第2のエラー通信108に示すよう
に、次は、パーソナルコンピュータ105に対してプリ
ンタ101でのエラーの発生を通知することで、初めて
パーソナルコンピュータ105はプリンタ101でのエ
ラー発生を知ることができることになる。
【0011】すなわち、前記したようなエラー状況にお
いて、エラーの発生した機器から直接エラー発生の通知
を受けることができず、システム内でエラー通知の伝播
を行わなければならないという非効率性を有していた。
さらには、パーソナルコンピュータ105はデジタルス
チルカメラ100から通知されるエラーが、デジタルス
チルカメラ100で発生したものなのか、プリンタ10
1で発生したものなのかを必ず識別しなければならず、
処理内容が複雑であるという課題を有していた。
【0012】さらに、このようなCOPYコマンド10
6は、先に説明したデータ受信コマンド102やデータ
送信コマンド104などとは異なり、第3の制御機器が
存在するときのみに利用されるものであるため、さまざ
まな機器接続環境あるいはシステム構成に対応するため
には、それぞれの機器がこれらの異なる2つの処理体系
のコマンドをサポートする必要があった。
【0013】
【発明が解決しようとする課題】以上説明した通り、従
来から一般的である、「一方の機器がもう一方の機器に
対してコマンドを発行することでデータの送信または受
信を行う」転送方法を用いて、静止画データの転送を行
うシステムを考えると、第3の制御機器の介在する環境
においては、効率が悪く処理時間が必要以上にかかるシ
ステムとなるという課題を有していた。
【0014】また、従来の改良されたデータ転送方法を
用いた場合でも、エラーが発生したときの処理が非効率
的であり、さらには1対1の接続の時に用いられる処理
体系と異なるコマンド処理体系の2つの体系をサポート
する必要があり、機器に搭載されるソフトウエアの容量
が不必要に大きくなり、複雑化するという課題を有して
いた。
【0015】本発明は、これらの点に鑑みて、様々なシ
ステム構成に柔軟に対応可能で、処理の効率が良く、エ
ラー処理が簡単なデータ転送方法を提供することを第1
の目的とする。さらに本発明は、データ転送の終了判断
を簡単に行え、データ転送開始時にデータ長が分からな
いデータを転送可能なデータ転送方法を提供することを
第2の目的とする。
【0016】さらに本発明は、制御機器が転送すべきデ
ータのデータ長を計算することなく、簡単な制御でデー
タを転送可能なデータ転送方法を提供することを第3の
目的とする。さらに本発明は、エラー発生時のデータ再
送を簡単に処理可能なデータ転送方法を提供することを
第4の目的とする。
【0017】さらに本発明は、同一のデータを複数の機
器に対して効率良く転送するデータ転送方法を提供する
ことを第5の目的とする。さらに本発明は、同一のデー
タを複数の機器に送信する時にもデータ送信側の機器の
処理が簡単かつ高速に行えるデータ転送方法を提供する
ことを第6の目的とする。
【0018】
【課題を解決するための手段】本発明は上記の問題点を
解決するために、各ノードに対してノード識別子が割り
当てられるバスシステム上の第1のノードから第2のノ
ードにデータを複数個のデータブロックに分割して転送
するに際し、1個のデータブロック転送に先立って、制
御ノードは第2のノードに対してデータブロック受信命
令を発行し、次に第1のノードに対して、第2のノード
のノード識別子を含むデータブロック送信命令を発行す
ることで、第1のノードから第2のノードへのデータブ
ロック転送が実行され、データブロック転送が終了した
後に、第1のノードはデータブロック送信処理の実行結
果を制御ノードに対して通知し、第2のノードはデータ
ブロック受信処理の実行結果を制御ノードに対して通知
するようにしたものである。
【0019】これにより、様々なシステム構成に柔軟に
対応可能で、処理の効率が良く、エラー処理が簡単なデ
ータ転送方法を得ることができる。
【0020】
【発明の実施の形態】本発明の第1の発明は、各ノード
に対してノード識別子が割り当てられるバスシステム上
の第1のノードから第2のノードにデータをN個(Nは
自然数)のデータブロックに分割して転送するに際し、
1個のデータブロック転送に先立って、制御ノードは第
2のノードに対してデータブロック受信命令を発行し、
次に第1のノードに対して、第2のノードのノード識別
子を含むデータブロック送信命令を発行することで、第
1のノードから第2のノードへのデータブロック転送が
実行され、前記データブロック転送が終了した後に、第
1のノードは前記データブロック送信処理の実行結果を
制御ノードに対して通知し、第2のノードは前記データ
ブロック受信処理の実行結果を制御ノードに対して通知
するものである。これにより、第1のノードから第2の
ノードのデータ転送を制御する制御ノードを定義し、デ
ータを送出する第1のノードに対してデータ送出先のノ
ードの識別子を含む命令を発行することにより、機器の
1対1接続の場合だけでなく、第3の制御機器が存在し
た場合のどちらでも、同一のコマンド体系で、高効率の
データ転送を可能とするものである。さらに、データ転
送終了後それぞれのノードから制御ノードに対してデー
タ送受信処理の実行結果を通知することで、効率よく機
器で発生したエラー条件を検出することを可能とする。
【0021】また、本発明の第2の発明は、1回のデー
タブロック転送が終了した後、第1のノードが、制御ノ
ードにデータブロック送信処理の実行結果とともに次に
転送すべきデータブロックのデータ長を通知するもので
ある。これにより、第1のノードが、制御ノードに次に
転送すべきデータブロックのデータ長を通知することに
より、制御機器が転送すべきデータのデータ長を計算す
ることなく、簡単な制御でのデータ転送を可能とする。
【0022】また、本発明の第3の発明は、第1のノー
ドが、データブロック転送の際にエラーを検出したとき
に、制御ノードにデータブロック送信処理の実行結果と
ともに、エラーの発生したデータブロックの再送要求を
通知するものである。これにより、第1のノードが、デ
ータブロック転送の際にエラーを検出したときに、制御
ノードにデータブロック送信処理の実行結果とともに、
エラーの発生したデータブロックの再送要求を通知する
ことにより、エラー発生時のデータ再送を簡単に処理可
能とする。
【0023】また、本発明の第4の発明は、制御ノード
が第1のノードにデータブロック送信指示命令を発行し
たのち、データブロック転送に先立って、前記第1のノ
ードが前記第2のノードに対して、転送が行われるデー
タブロックのデータ長を通知するものである。これによ
り、制御ノードが第1のノードにデータブロック送信指
示命令を発行したのち、データブロック転送に先立っ
て、前記第1のノードが前記第2のノードに対して、転
送が行われるデータブロックのデータ長を通知すること
により、制御機器がそれぞれのデータ長を知らなくとも
データ転送制御が行えるため、制御機器の転送処理の簡
略化が可能である。
【0024】また、本発明の第5の発明は、第1のノー
ドからM個(Mは自然数)のノードに対して同一のデー
タを転送するにあたり、制御ノードは、前記第1のノー
ドに対して、同一のデータブロックの送信指示命令を、
データブロックを受信するノードの識別子を変化させな
がらM回発行し、これらの処理を前記データブロックの
数N回(Nは自然数)繰り返す制御を行うものである。
これにより、制御ノードが第1のノードに対して、同一
のデータブロックの送信指示命令を、データブロックを
受信するノードの識別子を変化させながらM回発行し、
これらの処理を前記データブロックの数N回(Nは自然
数)繰り返す制御を行うことにより、1台から複数台の
機器にほぼ同時に同一のデータを配送するシステムを容
易に実現可能とする。
【0025】また、本発明の第6の発明は、前記制御ノ
ードが前記第1のノードに対してデータブロック送信指
示命令を発行する際に、その次に発行する予定のデータ
ブロック送信指示命令が、(a)同一のデータブロック
を指示するのか、(b)その次のデータブロックを指示
するのか、のどちらであるかをあらわすフラグを含むも
のである。これにより、制御ノードが前記第1のノード
に対してデータブロック送信指示命令を発行する際に、
その次に発行する予定のデータブロック送信指示命令
が、(a)同一のデータブロックを指示するのか、
(b)その次のデータブロックを指示するのか、のどち
らであるかをあらわすフラグを含むことにより、第1の
ノードが同じデータブロックを保持した状態でとどまる
のか、次のデータブロックを準備する必要があるのかを
あらかじめ検出できるため、第1のノードにおける内部
処理の効率化が可能である。
【0026】また、本発明の第7の発明は、1回のデー
タブロック転送が終了した後、第1のノードは、制御ノ
ードに発行するデータブロック送信処理の実行結果とと
もに次に転送すべきデータブロックが最後のデータブロ
ックであることを通知するものである。これにより、1
回のデータブロック転送が終了した後、第1のノード
は、制御ノードに発行するデータブロック送信処理の実
行結果とともに次に転送すべきデータブロックが最後の
データブロックであることを通知することにより、デー
タ転送開始時には、全データ長が不明な不定長データの
転送を可能とする。
【0027】以下、本発明の実施の形態について実施例
として、図面を参照し説明する。
【0028】
【実施例】(第1の実施例)図1は、本発明のデータ転
送方法の第1の実施例であるシステムのブロック図であ
る。図1において、1はデジタルスチルカメラなどの画
像を送出する機器であるデータ送信ノード(第1のノー
ド)、2はプリンタなど画像を受信する機器であるデー
タ受信ノード(第2のノード)、3はパーソナルコンピ
ュータやセットトップボックスなどの制御ノードであ
り、これらの機器は同一のバスシステムに接続されてい
る。
【0029】本実施例ではバスシステムとしてIEEE Std
1394-1995, Standard for a HighPerformance Serial
Bus(以下、IEEE 1394-1995と記述する)を用い、これ
に接続された機器間でデータ転送を行う場合を例にとっ
て説明する。また、4は制御ノード3がデータ受信ノー
ド2に対して発行するデータ受信命令、5は制御ノード
がデータ送信ノード1に対して発行するデータ送信命令
であり、6はデータ送信ノード1からデータ受信ノード
2に転送されるデータを表している。また、7はデータ
送信ノード1がデータ送信命令5の実行結果を制御ノー
ド3に報告するものであるデータ送信命令応答、8はデ
ータ受信ノード2がデータ受信命令4の実行結果を制御
ノード3に報告するデータ受信命令応答を表している。
【0030】ここで、これらのデータ受信命令4、デー
タ送信命令5、データ送信命令応答7、データ受信命令
応答8は、IEC-61883, Proposed standard for Digital
Interface for Consumer Electronic Audio/Video Equ
ipmentで定義されているFunction Control Protocol
(以下、FCPと記述する)を用いてコマンドとレスポン
スの伝送を行うものであり、AV/C Digital Interface C
ommand Set(以下、AV/Cコマンドと記述する)の規約に
従って実行される。
【0031】図2は、前記データ送信命令5およびデー
タ送信命令応答7のデータフォーマットを示すものであ
る。図2において、10はパケットヘッダ部、11はデ
ータブロック(コマンドフレーム)部、12はCRC部で
あり、これらの10、11、12によりIEEE 1394-1995
で定義される非同期ライトパケットを構成する。また、
13は16ビットのパケット送出先ノード識別子、14
はパケット送出先ノード識別子であり、これらについて
もIEEE 1394-1995で定義されているものである。
【0032】AV/Cコマンドでは、データブロック部11
にノードへの命令または命令応答のデータが含まれる。
ここで、データ送信命令5とデータ送信命令応答7は、
共通のデータ形式を有するもので、データ送信ノード1
はデータ送信命令5を受信し、処理を実行した後で、先
に受け取っていたデータブロック送信命令5の特定フィ
ールドの値を必要に応じて書き換えた後、このパケット
をデータ送信命令応答7として制御ノード3に転送する
処理を行うものである。
【0033】ここで、15はデータ送信指示コマンド、
16はデータブロック再送要求ビット、17はエラーコ
ード格納領域、18は最終データブロック通知ビット、
19はデータ送信先ノード識別子、20はデータブロッ
ク番号、21はデータブロックデータ長をそれぞれ表し
ている。また、図3は、前記データ受信命令4およびデ
ータ受信命令応答8のデータフォーマットを示すもので
ある。図3の構成要素は、図2のデータ形式と共通部分
が多いので、同様の意味を持つデータフィールドの説明
は省略する。図3において、22はデータブロック受信
を指示するデータブロック受信コマンドコード、23は
データ送信元ノード識別子である。
【0034】以下、制御ノード3の制御のもとでデータ
をデータ送信ノード1からデータ受信ノード2に転送す
る際の動作について説明する。なお、本実施例では、一
枚の静止画データを複数のデータブロックに分割して、
それぞれを順次転送する場合を例にとって説明する。図
4は、静止画データの分割方法を表すものである。図4
において、24は送信ノード1の内部に記憶されてい
る、容量が150kBの静止画データであり、この静止画
データ24は最大容量が32kBである5個のデータブロ
ックに分割される。図4において、25は0番のデータ
ブロック、26は1番のデータブロック、27は2番の
データブロック、28は3番のデータブロックであり、
これらデータブロック25〜28のデータ長は、32kB
である。また、29は最後のデータブロックに相当する
4番のデータブロックであり、データブロック29のデ
ータ長は22kBとなる。
【0035】次に、図1を用いて、0番のデータブロッ
ク25を送信ノード1から受信ノード2に転送する処理
を例にとってその動作を説明する。まず、制御ノード3
は受信ノード2に対して、図3のパケット形式を持つ、
データ受信命令4を発行する。このときに発行されるパ
ケットの各データフィールドの値を(表1)に示す。こ
こでは、データブロック番号20に0を設定し、0番デ
ータブロック25の転送を命令していることを表してお
り、そのデータブロックデータ長21は32kBと設定さ
れている。また、エラーコード格納領域17について
は、データ受信ノード2が制御ノード3にデータ受信命
令応答8を発行するときに、このフィールドに発生した
エラーを表すエラーコードを設定するために設けられて
いる。したがって、データ受信命令4においては、この
フィールドの値が無効であることを表す、16進数のF
Fが格納される。
【0036】
【表1】
【0037】データ受信命令4を受信したデータ受信ノ
ード2は、制御ノード3に対してデータ受信命令4の発
行が成功したことを通知した後、データ送信ノード1か
らのデータ送信待ち状態になる。次に、制御ノード3
は、データ受信命令4の発行が成功したことを確認した
後、データ送信ノード1に対して、図2のパケット形式
を持つ、データ送信命令5を発行する。このときに発行
されるパケットの各データフィールドの値を(表2)に
示す。ここでデータ受信命令4と同様の意味を持つフィ
ールドについては説明を省略する。
【0038】
【表2】
【0039】ここで、データブロック再送要求ビット1
6は0に設定されており、このデータブロックの転送が
正常終了したら、次のデータブロック(この場合は1番
のデータブロック26)の転送が行われる予定であるこ
とを表している。また、最終データブロック通知ビット
18は、指示されたデータブロックの転送が終了した
後、データ送信ノード1が制御ノード3にデータ送信命
令応答8を発行するときに、次の処理で転送する予定の
データブロックが最後のデータブロックであったときに
1にセットされ、そうでなければ0にセットされるもの
であるので、データ送信命令5においては、このフィー
ルドの値が無効であることを表すため、ビットを1にセ
ットしておく。
【0040】データ送信命令5を受信したデータ送信ノ
ード1は、制御ノード3に対してデータ送信命令5の発
行が成功したことを通知した後、データ受信ノード2に
対して、0番データブロック25の転送を開始する。こ
こでのデータブロックの転送は、連続して発行される1
個以上の、IEEE 1394-1995の非同期ライトパケットに分
割されて送信される。
【0041】なお、IEEE 1394-1995では、非同期ライ
トパケットに対して、ACKパケットが受信側から返され
るので、非同期ライトパケットが受信側に正しく送信で
きたかどうかを送信側が確認することが可能であり、正
しく送信できていなかった場合には、前記パケットの再
送処理を行うことが可能である。さらに、IEEE 1394-1
995の非同期ライトパケットは、パケット送信ノードの
ノード識別子をそのパケットヘッダ部に含むので、ここ
でデータ受信ノード2に対して、データ送信ノード1以
外の他のノードからのデータ転送が行われても、データ
受信ノード2はこれらのデータを無視する処理を行う。
【0042】次に、0番のデータブロック25の転送を
成功裏に終了したデータ送信ノード1は、すでに受信し
ているデータ送信命令5のデータブロック再送要求ビッ
ト16が0に設定されていたことを確認し、次回に要求
されるデータブロックは、0番のデータブロック25
の、次のデータブロックにあたる、1番のデータブロッ
ク26であることを認識する。そこで1番のデータブロ
ック26のデータブロックデータ長が32kBであり、こ
れが最後のデータブロックではないことも認識する。
【0043】そこで、データ送信ノード1はこれらの情
報を含む、データ送信命令応答7を制御ノード3に対し
て発行する。ここで、データ送信命令応答は、図2のパ
ケット形式からなり、その主要なデータフィールドの値
を(表3)に示す。これらの値の内容については、基本
的には(表2)の値がそのまま返されるが、パケット送
信ノード識別子とパケット受信ノード識別子が入れ替わ
っており、データ送信ノード1から制御ノード3へのパ
ケットであることを表している。また、データ転送中に
エラーが発生していなかったので、エラーコード格納領
域17にはエラーなしのコードが設定されている。ま
た、次に送るべきデータブロックは、32kBのデータブ
ロック長を持つ、1番データブロック26であるので、
データブロック番号20には1が、データブロックデー
タ長21には32kBがそれぞれ設定されている。
【0044】
【表3】
【0045】一方で、0番のデータブロック25を成功
裏に受信完了したデータ受信ノード2は、受信した0番
のデータブロック25の処理を開始する。たとえば、デ
ータ受信ノード2がプリンタ機器であった場合は、受信
ブロックデータを内部のプリンタエンジンに転送し、印
刷処理を開始する。0番のデータブロック25の処理を
完了した時点で、データ受信ノード2はデータ受信命令
応答87を制御ノード3に対して発行する。
【0046】ここで、データ受信命令応答8は図3のパ
ケット形式からなり、その主要なデータフィールドの値
を(表4)に示す。これらの値の内容については、基本
的には(表1)の値がそのまま返されるが、パケット送
信ノード識別子とパケット受信ノード識別子が入れ替わ
っており、データ受信ノード2から制御ノード3へのパ
ケットであることを表している。また、データ転送中に
エラーが発生していなかったので、エラーコード格納領
域17にはエラーなしのコードが設定されている。
【0047】
【表4】
【0048】なお、データ送信ノード1から制御ノード
3に返されるデータ送信命令応答7と、データ受信ノー
ド2から制御ノード3に返されるデータ受信命令応答8
は、どちらが先に発行されるかは、データ送信ノード1
とデータ受信ノード2の処理速度に応じて変化するた
め、制御ノード3は、これら2つのノードからの応答を
待つ必要がある。
【0049】制御ノード3が、双方のノードから応答を
受信した時点で、0番のデータブロック25の転送が完
了する。次に、制御ノード3は、次のデータブロックで
ある、1番データブロック26の転送処理を開始する
が、先にデータ送信ノード1から受信しているデータ送
信命令応答7のデータブロック番号20に、次に送るべ
きデータブロック番号である1が、データブロックデー
タ長21には1番データブロック26のデータブロック
長である32kBの値がそれぞれ格納されているので、こ
れらの値を用いて、1番データブロック26の転送処理
を開始することができる。
【0050】このように、毎回データ送信ノード1に対
して次のデータブロックの長さを確認する必要がないの
で、制御ノード3がデータ転送処理を簡単に行うことが
できる。次に、図1を用いて、データブロックの転送中
に、データ受信ノード2でエラーが発生した場合の処理
について説明する。ここでは、プリンタ機器であるデー
タ受信ノード2で紙詰まりが発生した場合を例として説
明する。
【0051】0番データブロック25を転送中に、デー
タ受信ノード2で紙詰まりが発生したため、データ受信
ノード2がデータの受信を継続できなくなったと判断し
た。すると、データ受信ノード2は、制御ノード3に対
して、エラーが発生したことを通知するデータ受信命令
応答8を発行する。そのパケット形式は図3の形式をと
るが、エラーコード格納領域17に紙詰まりエラーのエ
ラーコードが設定される。
【0052】一方、データ送信ノード1は、突然データ
受信ノード2がデータ受信を行わなくなったことを検出
し、データブロックの送信を中止して、制御ノード3に
対して、エラーが発生したことを通知するデータ送信命
令応答7を発行する。そのパケット形式は図2の形式を
とり、図2の各データフィールドに設定される値を(表
5)に示す。
【0053】
【表5】
【0054】エラーコード格納領域17には、伝送タイ
ムアウトエラーのエラーコードが設定される。さらに、
エラーが発生したため0番データブロック25の転送が
失敗したため、図2のデータブロック番号20のフィー
ルドには0が、データブロックデータ長21のフィール
ドには32kBがそれぞれ設定され、次の転送は0番デー
タブロック25を行うよう、制御ノード3に要求してい
ることを意味している。
【0055】そこで、制御ノード3が、データ受信ノー
ド2での紙詰まりエラーの解除を検出したあと、先にデ
ータ送信ノード1から送られたデータブロック番号20
とデータブロックデータ長21の値を用いて転送を再開
する。このように、データの送受信を行っているノード
で何らかのエラーが発生した場合でも、これらのエラー
の通知は、直接制御ノード3に発行される。
【0056】また、エラーが発生したときに、データ送
信ノード1がエラーの発生したデータブロックの番号と
そのデータブロック長を制御ノード3に通知するため、
制御ノード3はこれらの情報を元にデータブロックの転
送のやり直しを簡単な処理で行うことができる。以上説
明した手順を繰り返すことで、データブロックをデータ
送信ノード1からデータ受信ノード2に順次転送してい
く。
【0057】次に、データ転送の終了時の動作について
説明する。データ送信ノード1が、3番のデータブロッ
ク28の送信を成功裏に終了した時点で、データ送信ノ
ード1は、すでに受信しているデータ送信命令5のデー
タブロック再送要求ビット16が0に設定されていたこ
とを確認し、次回に要求されるデータブロックは、3番
のデータブロック28の、次のデータブロックにあた
る、4番のデータブロック29であることを認識する。
さらに、4番のデータブロック29のデータブロックデ
ータ長が22kBであり、これが最後のデータブロックで
あることも認識する。
【0058】そこで、データ送信ノード1は、これらの
情報を含む、データ送信命令応答7を制御ノード3に対
して発行する。ここで、データ送信命令応答は、図2の
パケット形式からなり、その主要なデータフィールドの
値を(表6)に示す。これらの値の内容については、基
本的には(表2)の値がそのまま返されるが、次に送る
べきデータブロックは、22kBのデータブロック長を持
つ、4番データブロック29であるので、データブロッ
ク番号20には4が、データブロックデータ長21には
22kBがそれぞれ設定されている。さらに、次に転送す
る予定のデータブロックである、4番のデータブロック
29は最後のデータブロックであるので、最終データブ
ロック通知ビット18が1にセットされる。
【0059】
【表6】
【0060】前記データ送信命令応答7を受信した制御
ノード3は、次のデータブロックの転送が最後の転送処
理であることを、最終データブロック通知ビット18の
ビットが1にセットされていることから検出し、次の4
番のデータブロック29の転送処理を行った後、全体の
処理を終了する。ここで、制御ノード3は、全体のデー
タ転送の回数を意識することなく、データ送信ノード1
から発行されるデータ送信命令応答7の最終データブロ
ック通知ビット18が0であれば次々とデータブロック
転送処理を行い、1であればその次のデータブロック転
送処理で処理を終了すれば良いため、制御ノード3があ
らかじめデータブロックの数を計算しておく必要がない
ため、制御処理が非常に簡単である。さらには、データ
の転送開始時にはそのデータ長がわからないような不定
長データの転送も容易に実現可能である。
【0061】(第2の実施例)次に、本発明の第2の実
施例について説明する。図5は本発明のデータ転送方法
の第2の実施例であるシステムのブロック図である。な
お、本実施例は、図1に示した第1の実施例と基本的に
は同等であるので、システムの構成要素およびその動作
に関する詳細な説明は省略する。
【0062】図5に示した第2の実施例が、先に説明し
た第1の実施例と異なる点は、制御ノード3がデータ送
信ノード1と同一のノードである点である。図5におい
ては、図1で図示されていた、データ送信命令5および
データ送信命令応答7については、内部的に処理される
ため、バス上にこれらのパケットデータは送信されな
い。
【0063】一方で、データ受信ノード2に対して発行
されるデータ受信命令4は、図3で説明した第1の実施
例の場合のパケット形式とまったく同じ形式をとる。こ
こで第1の実施例と本実施例の相違点は、パケット送出
元ノード識別子13の値とデータ送信元ノード識別子2
3の値が同じ値となる点のみである。この点を除けば、
この第2の実施例の動作およびデータ受信ノード2の制
御方法に関しては、先に説明した第1の実施例とまった
く同じ処理でデータ転送処理を行うことが可能である。
【0064】(第3の実施例)次に、本発明の第3の実
施例について説明する。図6は本発明のデータ転送方法
の第3の実施例であるシステムのブロック図である。な
お、本実施例は、図1に示した第1の実施例と基本的に
は同等であるので、システムの構成要素およびその動作
に関する詳細な説明は省略する。
【0065】図6に示した第3の実施例が、先に説明し
た第1の実施例と異なる点は、制御ノード3がデータ受
信ノード2と同一のノードである点である。図6におい
ては、図1で図示されていた、データ受信命令4および
データ受信命令応答8については、内部的に処理される
ため、バス上にこれらのパケットデータは送信されな
い。
【0066】一方で、データ送信ノード1に対して発行
されるデータ受信命令5は、図2で説明した第1の実施
例の場合のパケット形式とまったく同じ形式をとる。こ
こで第1の実施例と本実施例の相違点は、パケット送出
元ノード識別子13の値とデータ受信先ノード識別子1
9の値が同じ値となる点のみである。この点を除けば、
この第3の実施例の動作およびデータ送信ノード1の制
御方法に関しては、先に説明した第1の実施例とまった
く同じ処理でデータ転送処理を行うことが可能である。
【0067】以上、本発明の第1〜第3の実施例を比較
することで、制御ノード3の制御の元で、データ送信ノ
ード1からデータ送信ノード2へデータを転送するデー
タ転送方法を定義することで、様々なシステム構成に柔
軟に対応可能で、かつ処理効率の良いシステムを構築す
ることが可能となることがわかる。 (第4の実施例)次に、本発明の第4の実施例について
説明する。図7は、本発明の第4の実施例を説明するブ
ロック図であり、1つのデータを複数のノードに並列に
転送するシステムを表している。図7において、1はデ
ータ送信ノード、3は制御ノード、5はデータ送信命
令、7はデータ送信命令応答、200は第1のデータ受
信ノード、201は第2のデータ受信ノード、202は
第3のデータ受信ノードである。また、300は第1の
データ受信ノードに転送されるデータブロック、301
は第2のデータ受信ノードに転送されるデータブロッ
ク、302は第3のデータ受信ノードに転送されるデー
タブロックである。
【0068】次に、図7を用いて、本発明の第4の実施
例の動作について説明する。なお、図7では説明を簡単
にするために、制御ノード3からデータ受信ノードに発
行されるデータ受信指示命令およびデータ受信ノードか
ら制御ノード3に発行されるデータ受信指示命令応答を
省略している。ここでは、データ送信ノード1に存在す
る3番のデータブロック28を200から202までの
3つのデータ受信ノードへ転送する処理を表している。
まず、制御ノード3はデータ送信ノード1に3番目のデ
ータブロックを第1のデータ受信ノード200に送信す
るデータ送信命令5を発行する。第1のデータ受信ノー
ド200へのデータブロックの転送が完了したら、次に
制御ノード3は送信ノード1に同じ3番目のデータブロ
ックを第2のデータ受信ノード201に送信するデータ
送信命令5を発行する。第2のデータ受信ノード201
へのデータブロックの転送が完了したら、最後に制御ノ
ード3は送信ノード1に同じ3番目のデータブロックを
第3のデータ受信ノード202に送信するデータ送信命
令5を発行する。第3のデータ受信ノード202へのデ
ータブロックの転送が完了したら、次は第4のデータブ
ロックについて、転送命令を順次発行する処理を行う。
【0069】このような制御ノード3の動作により、単
一のデータを並列に複数のデータ受信ノードに転送する
ことが可能であり、データ送信ノード1がテープ機器の
ような、送信用データブロックを準備するのに長い時間
がかかる機器や、データ転送速度の遅い機器である場合
には、データブロックを準備する回数が直列処理を行う
場合に比べて少なくなるため、トータルの処理時間が少
なくなるという利点がある。
【0070】また、図7で制御ノード3がデータ送信ノ
ード1に発行するデータ送信命令のパケットのデータフ
ィールドの値を(表7)に示す。(表7)には第1のデ
ータ受信ノード200へのデータ送信命令と、第2のデ
ータ受信ノード201へのデータ送信命令と、第3のデ
ータ受信ノード202へのデータ送信命令のそれぞれの
データフィールドの値を説明している。ここでデータブ
ロック再送要求ビット16の値が第1のデータ送信命令
と第2のデータ送信命令では1にセットされており、第
3のデータ送信命令では0が設定されている。(表8)
にこれらのデータ送信命令に対するデータ送信指示命令
応答のパケットのデータフィールドの値を示す。(表
8)において、データブロック再送要求ビット16が1
の状態でデータ送信指示命令が発行されていたため、第
1のデータ受信ノードおよび第2のデータ受信ノードの
場合はデータブロック番号は命令と同じ3が返ってお
り、データブロックデータ長は32kBがかえっている。
一方、第3のデータ受信ノードではデータブロック再送
要求ビット16が0の状態でデータ送信指示命令が発行
されていたため、データブロック番号は4が返ってお
り、データブロックデータ長は22kBがかえっている。
また、最終データブロック通知ビットに1がセットさ
れ、次が最後のデータブロックであることを示してい
る。
【0071】
【表7】
【0072】
【表8】
【0073】ここで、データ送信ノード1は、データブ
ロック再送要求ビット16に1がセットされているとき
は、次のデータブロックの転送準備を行わず、直前に転
送したデータブロックを保持し、データブロック再送要
求ビット16に0がセットされているときは、次のデー
タブロックの転送準備を行う動作をする。すなわち、デ
ータブロック再送要求ビット16を設けることにより、
本実施例のように同一のデータを複数のデータ受信ノー
ドに送信する時にもデータ送信ノードの処理を簡単かつ
高速に行うことができる。
【0074】なお、以上の実施例では、AV/Cコマンドを
用いて命令および応答の伝送を行う場合を例にとって説
明したが、これ以外のコマンド伝送方式を用いても良
い。また、ノードが接続されるバスとして、IEEE 1394-
1995を用いた場合を例にとって説明したが、これに限定
されるものではなく、複数の機器が同時に接続可能なバ
スであれば良い。
【0075】また、データブロック長が、最後のデータ
ブロックを除いて同じになる場合を例にとって説明した
が、必ずしもこれに限定されるものではなく、たとえば
すべてのデータブロックのデータ長が異なっても良い。
また、制御ノードが、データ送受信を行うノードと独立
して存在する場合と、データ送信ノードに含まれる場合
と、データ受信ノードに含まれる場合について説明した
が、実際のシステム構成では、独立した制御ノードと、
制御ノードを含むデータ送信ノードと、制御ノードを含
むデータ受信ノードの3つの機器でシステムを構成する
ことも可能である。このような場合では、ユーザがボタ
ンを操作するなどのオペレーションを行った機器が制御
ノードの機能を果たす。
【0076】また、データ送信ノードとデータ受信ノー
ドは、必ずしもそれぞれがデータの送信と受信という固
定された機能を持つことを表しているのではなく、制御
ノードにより発行されるコマンドの種類によって、ある
ノードがデータ送信ノードになったり、データ受信ノー
ドになったりする構成も可能である。たとえば2台のデ
ジタルスチルカメラを接続し、相互にデータを交換する
ようなシステムが実現可能可能であることはいうまでも
ない。
【0077】
【発明の効果】本発明のデータ転送方法を用いることに
より、様々なシステム構成に柔軟に対応可能で、処理の
効率が良く、エラー処理が簡単なシステムを実現するこ
とが可能である。
【図面の簡単な説明】
【図1】本発明の第1の実施例によるデータ転送方法を
用いたシステムのブロック図
【図2】同実施例によるデータ送信命令およびデータ送
信命令応答のデータフォーマットを示す図
【図3】同実施例によるデータ受信命令およびデータ受
信命令応答のデータフォーマットを示す図
【図4】同実施例による静止画データの分割方法を表す
【図5】本発明の第2の実施例によるデータ転送方法を
用いたシステムのブロック図
【図6】同第3の実施例によるデータ転送方法を用いた
システムのブロック図
【図7】同第4の実施例によるデータ転送方法を用いた
システムのブロック図
【図8】従来のデータ転送方法による静止画データシス
テムの第1の例を表すブロック図
【図9】従来のデータ転送方法による静止画データシス
テムの第2の例を表すブロック図
【図10】従来のデータ転送方法による静止画データシ
ステムの第3の例を表すブロック図
【図11】従来の改良されたデータ転送方法を用いた静
止画データシステムの例を表すブロック図
【符号の説明】
1 データ送信ノード 2 データ受信ノード 3 制御ノード 4 データ受信命令 5 データ送信命令 6 データ 7 データ送信命令応答 8 データ受信命令応答

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 各ノードに対してノード識別子が割り当
    てられるバスシステム上の第1のノードから第2のノー
    ドにデータをN個(Nは自然数)のデータブロックに分
    割して転送するに際し、1個のデータブロック転送に先
    立って、制御ノードは前記第2のノードに対してデータ
    ブロック受信命令を発行し、次に前記第1のノードに対
    して、前記第2のノードのノード識別子を含むデータブ
    ロック送信命令を発行することで、前記第1のノードか
    ら前記第2のノードへのデータブロック転送が実行さ
    れ、前記データブロック転送が終了した後に、前記第1
    のノードは前記データブロック送信処理の実行結果を前
    記制御ノードに対して通知し、前記第2のノードは前記
    データブロック受信処理の実行結果を前記制御ノードに
    対して通知することを特徴とするデータ転送方法。
  2. 【請求項2】 制御ノードと第1のノードが同一のノー
    ドである場合は、前記第1のノードに対するデータブロ
    ック送信命令および前記第1のノードから前記制御ノー
    ドへの実行結果の通知がバス上に発行されないことを特
    徴とする請求項1記載のデータ転送方法。
  3. 【請求項3】 制御ノードと第2のノードが同一のノー
    ドである場合は、前記第2のノードに対するデータブロ
    ック受信命令および前記第2のノードから前記制御ノー
    ドへの実行結果の通知がバス上に発行されないことを特
    徴とする請求項1記載のデータ転送方法。
  4. 【請求項4】 制御ノードが第2のノードに対して発行
    するデータブロック受信命令が、第1のノードのノード
    識別子を含むものであり、前記第2のノードは前記デー
    タブロック受信命令に含まれているノード識別子と異な
    る識別子を持つノードから送信されたデータを無視する
    ことを特徴とする請求項1記載のデータ転送方法。
  5. 【請求項5】 1回のデータブロック転送が終了した
    後、第1のノードは、制御ノードに発行するデータブロ
    ック送信処理の実行結果とともに次に転送すべきデータ
    ブロックが最後のデータブロックであることを通知する
    ことを特徴とする請求項1記載のデータ転送方法。
  6. 【請求項6】 制御ノードが第1のノードに発行するデ
    ータブロック送信命令が、送信データブロックのデータ
    長を含み、かつ前記制御ノードが第2のノードに発行す
    るデータブロック受信命令が、前記受信データブロック
    のデータ長を含むことを特徴とする請求項1記載のデー
    タ転送方法。
  7. 【請求項7】 1回のデータブロック転送が終了した
    後、第1のノードは、制御ノードにデータブロック送信
    処理の実行結果とともに次に転送すべきデータブロック
    のデータ長を通知することを特徴とする請求項6記載の
    データ転送方法。
  8. 【請求項8】 第1のノードが、データブロック転送の
    際にエラーを検出したときは、制御ノードにデータブロ
    ック送信処理の実行結果とともに、データ再送の要求を
    通知することを特徴とする請求項1または7記載のデー
    タ転送方法。
  9. 【請求項9】 第1のノードからM個(Mは自然数)の
    ノードに対して同一のデータを転送するにあたり、制御
    ノードは、前記第1のノードに対して、同一のデータブ
    ロックの送信指示命令を、データブロックを受信するノ
    ードの識別子を変化させながらM回発行し、これらの処
    理を前記データブロックの数N回(Nは自然数)繰り返
    す制御を行うことを特徴とする請求項1記載のデータ転
    送方法。
  10. 【請求項10】 制御ノードが第1のノードに対してデ
    ータブロック送信指示命令を発行する際に、その次に発
    行する予定のデータブロック送信指示命令が、(a)同
    一のデータブロックを指示するのか、(b)その次のデ
    ータブロックを指示するのか、のどちらであるかを表す
    フラグを含むことを特徴とする請求項9記載のデータ転
    送方法。
JP10062788A 1998-03-13 1998-03-13 データ転送方法 Pending JPH11261613A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10062788A JPH11261613A (ja) 1998-03-13 1998-03-13 データ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10062788A JPH11261613A (ja) 1998-03-13 1998-03-13 データ転送方法

Publications (1)

Publication Number Publication Date
JPH11261613A true JPH11261613A (ja) 1999-09-24

Family

ID=13210448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10062788A Pending JPH11261613A (ja) 1998-03-13 1998-03-13 データ転送方法

Country Status (1)

Country Link
JP (1) JPH11261613A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001326662A (ja) * 1999-11-18 2001-11-22 Sony Corp 通信方法及び通信装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001326662A (ja) * 1999-11-18 2001-11-22 Sony Corp 通信方法及び通信装置

Similar Documents

Publication Publication Date Title
TW384611B (en) Data communication apparatus and method
US6717694B1 (en) Data transmission apparatus, system and method, and recording medium
JP2001249802A (ja) 伝送方法、伝送システム、伝送制御装置及び入力装置
KR19990072918A (ko) 데이타통신시스템,데이타통신방법,및데이타통신장치
KR19990072861A (ko) 데이터통신시스템,데이터통신방법,데이터통신장치및디지털인터페이스
JP3460579B2 (ja) データ転送方法
US6678769B1 (en) Control apparatus and method for managing a logical connection between source and destination nodes
WO2000021248A1 (fr) Procede de transfert de donnees et systeme de transfert de donnees
JP4481401B2 (ja) ネットワーク制御方法及びその装置
JPH11261613A (ja) データ転送方法
JP3678238B2 (ja) データ転送方法
JP3719253B2 (ja) データ受信ノード
JP3714341B2 (ja) データ転送方法
JP3767578B2 (ja) データ送信ノード
JP2003244277A (ja) プロトコル変換によるデータ転送方法とシステムならびにプログラム
JP3148733B2 (ja) 信号処理装置及び信号処理システム
JP3943698B2 (ja) データ通信システム及びデータ通信装置
JP2658931B2 (ja) プリンタコントローラ
JP3606145B2 (ja) データ転送制御装置及び電子機器
US7388864B2 (en) Data communication apparatus, data communication system, data communication method, data communication program and information recording medium
JP4067199B2 (ja) データ処理装置
JP2002281034A (ja) 情報転送装置
JPH11261608A (ja) データ通信システム、データ通信装置、データ通信方法及び記憶媒体
JP4065466B2 (ja) データ通信システム
JPH10307691A (ja) データ通信方法と装置及び印刷装置と前記装置を含む印刷システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees