JP2000299710A - データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体 - Google Patents

データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体

Info

Publication number
JP2000299710A
JP2000299710A JP2000028327A JP2000028327A JP2000299710A JP 2000299710 A JP2000299710 A JP 2000299710A JP 2000028327 A JP2000028327 A JP 2000028327A JP 2000028327 A JP2000028327 A JP 2000028327A JP 2000299710 A JP2000299710 A JP 2000299710A
Authority
JP
Japan
Prior art keywords
file
unit
field
data communication
data
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
JP2000028327A
Other languages
English (en)
Inventor
Mitsuhisa Araida
光央 新井田
Shinji Onishi
慎二 大西
Tachio Ono
太刀雄 小野
Shinichi Hatae
真一 波多江
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2000028327A priority Critical patent/JP2000299710A/ja
Publication of JP2000299710A publication Critical patent/JP2000299710A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 ファイルシステムやファイル転送方法が異な
る機能ユニット間であっても、各機能ユニットの管理す
るデータファイルを簡単に扱うことのできるようにす
る。 【解決手段】 所定の機能を制御する第1のユニットを
有する第1の機器と、前記第1の機器を制御する第2の
機器とからなり、前記第1のユニットが扱うファイルを
管理するファイル管理手段を前記第1の機器が有すると
ともに、前記ファイル管理手段を制御する第1の制御信
号と第2の制御信号とを伝送する通信手段を前記第2の
機器が有し、前記ファイル管理手段は、前記第1の制御
信号に基づいて、前記第1のユニットが扱うファイルの
付加情報を伝送するように制御し、前記第2の制御信号
に基づいて、前記第1のユニットが扱うファイルを伝送
するように制御するように構成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ通信システ
ム、データ通信装置、ファイル管理方法及び記憶媒体、
に関し、特に、画像データを含む情報データとコマンド
データとを高速に通信するネットワークにおいて、デー
タファイルを管理するために用いて好適なものである。
【0002】
【従来の技術】従来、パーソナルコンピュータ(以下、
PC)の周辺機器は、ハードディスクやプリンタであっ
た。これらの周辺機器は、専用の入出力インタフェー
ス、或いはSCSI(small computer system interfac
e)インタフェース等の汎用性のあるデジタルインタフ
ェースによってPCと接続されていた。
【0003】一方、近年、デジタルカメラ、デジタルビ
デオカメラ等のAV(Audio/Visual)機器もPCの周辺
装置の1つとして注目を浴びている。これらのAV(Au
dio/Visual)機器も専用インタフェースを介してPCと
接続されていた。
【0004】しかしながら、従来の専用インタフェース
やSCSIインタフェースでは、特にAV機器の有する
静止画像や動画像のような大容量のデータを扱う場合に
おいて、データ転送レートが低い、パラレル通信のため
通信ケーブルが太い、接続できる周辺機器の数と種類が
少ない、接続方式に制限がある、リアルタイムなデータ
転送が行えない等の多くの問題があった。
【0005】このような問題点を解決する次世代の高
速、高性能デジタルインタフェースの一つとして、IE
EE(The Institute of Electrical and Electronics
Engineers,Inc.)1394−1995規格がある。
【0006】IEEE1394−1995規格に準拠し
たデジタルインタフェース(以下、1394インタフェ
ース)には、次のような特徴がある。 (1)データ転送速度が高速である。 (2)リアルタイムなデータ転送を実現するIsochronou
s転送モードと確実なデータ転送を実現するAsynchronou
s転送モードをサポートしている。 (3)自由度の高い接続構成(トポロジ)を構築でき
る。 (4)プラグ・アンド・プレイ機能と活線挿抜機能をサ
ポートしている。
【0007】しかしながら、IEEE1394−199
5規格では、コネクタの物理的、電気的な構成、2つの
データ転送モードの最も基本的な手順については定義し
ているが、どのような種類のデータを、どのようなデー
タ・フォーマットに従って送受信するのか、どのような
通信プロトコルに従って送受信するのかについて具体的
に定義されていなかった。
【0008】
【発明が解決しようとする課題】現在、1394インタ
フェースを有する機器(以下、ノードともいう)に論理
的な機能ユニット(以下、サブユニットと称する)を定
義し、各機能ユニット毎に、1394インタフェースを
介した遠隔操作を実現するための通信プロトコルやコマ
ンドセットを定義することが提案されている。
【0009】このようなサブユニットには現在、VCR
(video cassette recorder)サブユニット、チューナ
ーサブユニット等が提案されている。尚、1つのノード
は、1つ以上のサブユニットから構成することができ
る。
【0010】ところで、あるノードが他のノードのサブ
ユニットとデータファイルの転送を行う場合、あるノー
ドは、相手ノードのサブユニットのもつファイルシステ
ムとそのサブユニットのファイル転送方法に対応しなけ
ればならない。これは、各サブユニット毎に、データフ
ァイルとデータファイルに関する付加情報(以下、ファ
イル属性情報という)の管理方法が異なり、更に、デー
タファイルやファイル属性情報を転送する方法も異なる
ためである。
【0011】このため、異なるサブユニット間でデータ
ファイル及びファイル属性情報をやり取りする場合に
は、互いに相手のサブユニットのもつファイルシステム
とファイル転送方法に対応しなければならず、1つのノ
ードにかかる負担は大きくなり、コストが増大するとい
う問題があった。また、あるノードが、複数のサブユニ
ットとデータファイルの転送を行いたい場合にも、全て
のサブユニットのもつファイルシステムとファイル転送
方法に対応しなければならないという問題があった。
【0012】本発明は上述の問題点にかんがみてなされ
たもので、ファイルシステムやファイル転送方法が異な
る機能ユニット間であっても、各機能ユニットの管理す
るデータファイルを簡単に扱うことのできるデータ通信
システムを提供できるようにすることを第1の目的とす
る。又、1つ以上の機能ユニットの夫々が管理するデー
タファイルを一括して管理することのできるようにする
ことを第2の目的とする。
【0013】
【課題を解決するための手段】本発明のデータ通信シス
テムは、所定の機能を制御する第1のユニットが扱うフ
ァイルを、前記第1のユニットの有する管理方法とは別
の管理方法で管理するファイル管理手段を有する第1の
機器と、前記第1のユニットとは異なる第2のユニット
を有し、前記ファイル管理手段を制御する第1の制御信
号と第2の制御信号とを伝送する第2の機器とを有し、
前記ファイル管理手段は、前記第1の制御信号を受信し
た場合には、前記第2のユニットが要求するファイルの
付加情報を前記第2の機器に伝送するように制御し、前
記第2の制御信号を受信した場合には、前記第2のユニ
ットが要求するファイルを前記第2の機器に伝送するよ
うに制御することを特徴としている。また、本発明の他
の特徴とするところは、前記ファイル管理手段は、前記
ファイルを階層的に管理することを特徴としている。ま
た、本発明のその他の特徴とするところは、前記ファイ
ル管理手段は、前記ファイルの付加情報を所定のデータ
構造に基づいて管理することを特徴としている。また、
本発明のその他の特徴とするところは、前記ファイル管
理手段は、前記第1の制御信号に基づいて、所定の種類
のファイルの付加情報を伝送するように制御することを
特徴としている。また、本発明のその他の特徴とすると
ころは、前記ファイル管理手段は、前記第1のユニット
とは異なる機能を管理する第3のユニットが扱うファイ
ルを、前記第1のユニットが扱うファイルとともに管理
することを特徴としている。また、本発明のその他の特
徴とするところは、前記第1の機器は、前記ファイルの
付加情報又は前記ファイルから少なくともフレームを一
つ生成し、前記フレームを順次Asynchronous転送するこ
とを特徴としている。また、本発明のその他の特徴とす
るところは、前記第2のユニットは、前記第1のユニッ
トとは異なる機能を管理することを特徴としている。ま
た、本発明のその他の特徴とするところは、前記第1の
ユニットは、画像ファイルを扱うことを特徴としてい
る。また、本発明のその他の特徴とするところは、前記
第1のユニットは、撮像機能を制御するユニットである
ことを特徴としている。また、本発明のその他の特徴と
するところは、前記第1のユニットは、画像ファイルの
記録再生を制御するユニットであることを特徴としてい
る。また、本発明のその他の特徴とするところは、バス
型ネットワーク上に設定された論理的な接続関係を介し
てファイルの転送を行うソースノードと、前記ソースノ
ードから転送されたファイルを前記論理的な接続関係を
介して受信するデスティネーションノードとを有し、前
記ソースノードは、複数のファイルを一括して管理する
ファイル管理手段を有し、前記デスティネーションノー
ドは、該ファイル管理手段を遠隔操作して所望のファイ
ルの転送を要求することを特徴としている。また、本発
明のその他の特徴とするところは、前記ファイル管理手
段は、前記ファイルと共に、該ファイルの属性情報を管
理することを特徴としている。また、本発明のその他の
特徴とするところは、前記ファイルの属性情報は、ファ
イル番号、ファイルの種類、ファイルの作成日時、ファ
イルの最終アクセス日時、ファイルのデータサイズ、フ
ァイルの名前の少なくとも1つを含むことを特徴として
いる。また、本発明のその他の特徴とするところは、前
記ファイル管理手段は、前記ファイルを階層的に管理す
ることを特徴としている。また、本発明のその他の特徴
とするところは、前記ファイルは、画像ファイル、音声
ファイル、動画像ファイル、テキストファイル、各種の
アプリケーションに依存するデータファイルの少なくと
も1つを含むことを特徴としている。また、本発明のそ
の他の特徴とするところは、前記ファイルは、一つ以上
のセグメントに分割され、少なくとも1回の非同期転送
により順次転送されることを特徴としている。また、本
発明のその他の特徴とするところは、前記デスティネー
ションノードは、前記ファイル管理手段を遠隔操作し
て、所定の階層にある全てのファイルの属性情報の転送
を要求することを特徴としている。また、本発明のその
他の特徴とするところは、前記デスティネーションノー
ドは、前記ファイル管理手段を遠隔操作して特定種類の
ファイルの属性情報の転送を要求することを特徴として
いる。また、本発明のその他の特徴とするところは、前
記ファイルの属性情報は、一つ以上のセグメントに分割
され、少なくとも1回の非同期転送により順次転送され
ることを特徴としている。また、本発明のその他の特徴
とするところは、前記バス型ネットワークは、IEEE
1394−1995規格に準拠したネットワークである
ことを特徴としている。また、本発明のその他の特徴と
するところは、前記ファイル又はファイルの属性情報
は、Asynchronous Connectionに準拠した通信プロトコ
ルに基づいて転送されることを特徴としている。また、
本発明のその他の特徴とするところは、バス型ネットワ
ークを介してファイルの転送を行うソースノードと、前
記ソースノードから転送されたファイルを前記バス型ネ
ットワークを介して受信するデスティネーションノード
と、前記ソースノードと前記デスティネーションノード
との間に論理的な接続関係を設定するコントローラとを
有し、前記ソースノードは、複数のファイルを階層的に
管理するファイル管理手段を有し、前記デスティネーシ
ョンノードは、該ファイル管理手段を遠隔操作して所望
のファイルの転送を要求する通信手段を有することを特
徴としている。また、本発明のその他の特徴とするとこ
ろは、複数種類の機能ユニットからなるソースノード
と、前記複数種類の機能ユニットの一つを扱うファイル
情報を要求するデスティネーションノードとを有し、前
記ソースノードは、各機能ユニットが扱うファイル情報
を一括して管理する機能ユニットを用いて前記デスティ
ネーションノードの要求するファイル情報を提供するこ
とを特徴としている。また、本発明のその他の特徴とす
るところは、複数種類の機能ユニットと、各機能ユニッ
トが扱うファイル情報を一括して管理するファイルユニ
ットとを有するソースノードと、前記複数種類の機能ユ
ニットの一つが扱うファイル情報を要求するデスティネ
ーションノードと、前記ソースノードと前記デスティネ
ーションノードとの間に論理的な接続関係を設定するコ
ントローラとを有し、前記ソースノードのファイルユニ
ットは、前記論理的な接続関係を介し、前記デスティネ
ーションノードの要求するファイル情報を提供すること
を特徴としている。
【0014】本発明のデータ通信装置は、所定の機能を
制御する第1のユニットが扱うファイルを、前記第1の
ユニットの有する管理方法とは別の管理方法で管理する
ファイル管理手段と、前記第1のユニットとは異なる第
2のユニットを有する外部機器から伝送された第1の制
御信号と第2の制御信号とを受信する受信手段とを有
し、前記ファイル管理手段は、前記第1の制御信号を受
信した場合には、前記第2のユニットが要求するファイ
ルの付加情報を前記第2の機器に伝送するように制御
し、前記第2の制御信号を受信した場合には、前記第2
のユニットが要求するファイルを前記外部機器に伝送す
るように制御することを特徴としている。また、本発明
の他の特徴とするところは、前記ファイル管理手段は、
前記ファイルを階層的に管理することを特徴としてい
る。また、本発明のその他の特徴とするところは、前記
ファイル管理手段は、前記ファイルの付加情報を所定の
データ構造に基づいて管理することを特徴としている。
また、本発明のその他の特徴とするところは、前記ファ
イル管理手段は、前記第1の制御信号に基づいて、所定
の種類のファイルの付加情報を伝送するように制御する
ことを特徴としている。また、本発明のその他の特徴と
するところは、前記ファイル管理手段は、前記第1のユ
ニットとは異なる機能を管理する第3のユニットが扱う
ファイルを、前記第1のユニットが扱うファイルととも
に管理することを特徴としている。また、本発明のその
他の特徴とするところは、前記ファイルの付加情報又は
前記ファイルから少なくともフレームを一つ生成し、前
記フレームを順次Asynchronous転送することを特徴とし
ている。また、本発明のその他の特徴とするところは、
前記第2のユニットは、前記第1のユニットとは異なる
機能を管理することを特徴としている。また、本発明の
その他の特徴とするところは、前記第1のユニットは、
画像ファイルを扱うことを特徴としている。また、本発
明のその他の特徴とするところは、前記第1のユニット
は、撮像機能を制御するユニットであることを特徴とし
ている。また、本発明のその他の特徴とするところは、
前記第1のユニットは、画像ファイルの記録再生を制御
するユニットであることを特徴としている。また、本発
明のその他の特徴とするところは、バス型ネットワーク
上に設定された論理的な接続関係を介してファイルの転
送を行う通信手段と、複数のファイルを一括して管理す
るファイル管理手段とを有し、前記ファイル管理手段
は、デスティネーションノードの遠隔操作に応じて該デ
スティネーションノードの要求するファイルを転送する
ことを特徴としている。また、本発明のその他の特徴と
するところは、複数種類の機能ユニットと、前記複数種
類の機能ユニットが扱うファイル情報を一括して管理す
るファイル管理ユニットとを有し、前記ファイル管理ユ
ニットは、デスティネーションノードの要求するファイ
ル情報を提供することを特徴としている。また、本発明
のその他の特徴とするところは、前記ファイル管理ユニ
ットは、前記デスティネーションノードとの間に設定さ
れた論理的な接続関係を介して該デスティネーションノ
ードの要求するファイル情報を提供することを特徴とし
ている。
【0015】本発明のファイル管理方法は、所定の機能
を制御する第1のユニットが扱うファイルを、前記第1
のユニットの有する管理方法とは別の管理方法で管理す
る処理と、前記第1のユニットとは異なる第2のユニッ
トを有する外部機器から伝送された第1の制御信号と第
2の制御信号とを受信する処理と、前記第1の制御信号
を受信した場合には、前記第2のユニットが要求するフ
ァイルの付加情報を前記外部機器に伝送するように制御
する処理と、前記第2の制御信号を受信した場合には、
前記第2のユニットが要求するファイルを前記外部機器
に伝送するように制御する処理とを行うことを特徴とし
ている。また、本発明の他の特徴とするところは、更
に、前記ファイルを階層的に管理する処理を行うことを
特徴としている。また、本発明のその他の特徴とすると
ころは、更に、前記ファイルの付加情報を所定のデータ
構造に基づいて管理する処理を行うことを特徴としてい
る。また、本発明のその他の特徴とするところは、前記
第1の制御信号に基づいて、所定の種類のファイルの付
加情報を伝送するように制御することを特徴としてい
る。また、本発明のその他の特徴とするところは、更
に、前記第1のユニットとは異なる機能を管理する第3
のユニットが扱うファイルを、第1のユニットが扱うフ
ァイルとともに管理する処理を行うことを特徴としてい
る。また、本発明のその他の特徴とするところは、前記
ファイルの付加情報又は前記ファイルから少なくともフ
レームを一つ生成し、前記フレームを順次Asynchronous
転送することを特徴としている。また、本発明のその他
の特徴とするところは、前記第2のユニットは、前記第
1のユニットとは異なる機能を管理することを特徴とし
ている。また、本発明のその他の特徴とするところは、
前記第1のユニットは、画像ファイルを扱うことを特徴
としている。また、本発明のその他の特徴とするところ
は、前記第1のユニットは、撮像機能を制御するユニッ
トであることを特徴としている。また、本発明のその他
の特徴とするところは、前記第1のユニットは、画像フ
ァイルの記録再生を制御するユニットであることを特徴
としている。また、本発明のその他の特徴とするところ
は、複数種類の機能ユニットからなるソースノードと、
前記複数種類の機能ユニットの一つが扱うファイル情報
を要求するデスティネーションノードとからなるシステ
ムにおけるファイル管理方法であって、前記ソースノー
ドは、各機能ユニットが扱うファイル情報を一括して管
理する機能ユニットと用いて、前記デスティネーション
ノードの要求するファイル情報を提供することを特徴と
している。また、本発明のその他の特徴とするところ
は、複数種類の機能ユニットと、各機能ユニットが扱う
ファイル情報を一括して管理するファイルユニットとを
有するソースノードと、前記複数種類の機能ユニットの
一つが扱うファイル情報を要求するデスティネーション
ノードと、前記ソースノードと前記デスティネーション
ノードとの間に論理的な接続関係を設定するコントロー
ラとからなるシステムにおけるファイル管理方法であっ
て、前記ソースノードのファイルユニットは、前記論理
的な接続関係を介し、前記デスティネーションノードの
要求するファイル情報を提供することを特徴としてい
る。
【0016】本発明の記憶媒体は、所定の機能を制御す
る第1のユニットが扱うファイルを、前記第1のユニッ
トの有する管理方法とは別の管理方法で管理するステッ
プと、前記第1のユニットとは異なる第2のユニットを
有する外部機器から伝送された第1の制御信号と第2の
制御信号とを受信するステップと、前記第1の制御信号
を受信した場合には、前記第2のユニットが要求するフ
ァイルの付加情報を前記外部機器に伝送するように制御
するステップと、前記第2の制御信号を受信した場合に
は、前記第2のユニットが要求するファイルを前記外部
機器に伝送するように制御するステップとからなるプロ
グラムをコンピュータ読み出し可能に記録したことを特
徴としている。
【0017】
【発明の実施の形態】次に、添付図面を参照しながら本
発明のデータ通信システム、データ通信装置、ファイル
管理方法及び記憶媒体の実施の形態について説明する。
図1は、本発明に係る第1の実施の形態を示すブロック
図である。図1に示すように、図1は、本実施例のデー
タ通信システムの一例を示す図である。
【0018】図1において、100はプリンタの電気的
接続構成を示すブロック図である。200はカメラ一体
型デジタルビデオレコーダ(以下、DVCR)の電気的
構成を示すブロック図である。これらはIEEE139
4−1995規格に準拠したデジタルインタフェースを
具備し、各1394インタフェースはデジタルシリアル
バス10に接続されている。又、図1のデジタルシリア
ルバス10には、PC20、電子スチルカメラ30もデ
ジタルインタフェースを介して接続されている。
【0019】次に、各機器(以下、ノードともいう)の
構成について説明する。図1のプリンタ100におい
て、通信部101は、1394シリアルバス10を介し
て外部のノードと通信するデジタルインタフェースを含
む。通信部101は、後述する通信手順に従って、プリ
ンタ100内部のデータファイルを転送したり、他のノ
ードのデータファイルを受信したりする。
【0020】ファイル管理部102は、後述するProxy
subunit(プロキシサブユニット)に必要な機能(特
に、ファイルシステム)を提供する。画像処理部103
は、1394シリアルバス10を介して転送されたデー
タファイル(画像ファイル、グラフィックスファイル、
テキストファイル等)や記録部104が着脱可能な記録
媒体から読み出したデータファイルに対して、印刷出力
するために必要な画像処理を行う。記録部104に接続
される記録媒体は、着脱可能であり、別の機器に接続
し、その機器のデータファイルを記録或いは読み出しす
ることも可能である。
【0021】又、図1のプリンタ100において、表示
部105は、ユーザの操作を補助するために必要な情報
を提示する。制御部106は、マイクロコンピュータを
含みプリンタ100全体の動作を制御する。操作部10
7は、ユーザの操作を制御部106に通知する。
【0022】メモリ108は、印刷出力用に画像処理さ
れたデータを一時的に記録する。印刷出力部109は、
印刷出力用に画像処理されたデータファイルを印刷出力
する。コントロールバス110は、各処理ブロックを制
御するための信号を伝送し、データバス111は、各処
理ブロックが処理するデータを伝送する。
【0023】ここで、本実施例のプリンタ100は、論
理的な機能ユニットを2つ有している。一つは、様々な
種類のデータファイルを印刷する機能と、1394シリ
アルバス10を介してデータファイルを入力する機能と
を制御するプリンタサブユニットである。もう一つは、
プリンタサブユニットのファイルシステムが管理するデ
ータファイルとファイル属性情報を、本実施例で定義す
る共通のファイルシステムで管理し、それらをプリンタ
サブユニットの代わりに他のノードに提供する機能を有
するProxy subunit(プロキシサブユニット)である。
これらのサブユニットは、他のノードからのコマンドに
応じて遠隔制御することができる。
【0024】図2のDVCR200は、通信部201
は、1394シリアルバス10を介して外部のノードと
通信するデジタルインタフェースを含む。通信部201
は、後述する通信手順に従って、DVCR200内部の
データファイルを転送したり、他のノードのデータファ
イルを受信したりする。
【0025】ファイル管理部202は、後述するProxy
subunitに必要な機能(特に、ファイルシステム)を提
供する。画像処理部203は、1394シリアルバス1
0を介して転送されたデータファイル(静止画像ファイ
ル、動画像ファイル、グラフィックスファイル、テキス
トファイル等)、記録部204が着脱可能な記録媒体か
ら読み出したデータファイル、撮像部209にて撮像さ
れた画像データ(動画像、静止画像)に対して、表示出
力するために必要な画像処理を行う。
【0026】記録部204に接続される記録媒体は、着
脱可能であり、別の機器に接続し、その機器のデータフ
ァイルを記録或いは読み出しすることも可能である。表
示部205は、ユーザの操作を補助するための情報、記
録部204から再生された画像データ、撮像部209に
て撮像された画像データを表示する。制御部206は、
マイクロコンピュータを含みDVCR200全体の動作
を制御する。操作部207は、ユーザの操作を制御部2
06に通知する。
【0027】メモリ208は、表示用に画像処理された
データを一時的に記録する。撮像部209は、被写体の
光学像から電気信号を生成し、その電気信号を所定フォ
ーマットの画像信号に変換する。ここで、撮像部209
は、動画像、静止画像を撮像することができる。コント
ロールバス210は、各処理ブロックを制御するための
信号を伝送し、データバス211は、各処理ブロックが
処理するデータを伝送する。
【0028】ここで、本実施例のDVCR200は、論
理的な機能ユニットを3つ有している。一つは、静止画
像や動画像を撮像し、所定のデータファイルの画像ファ
イルに変換する機能と、1394シリアルバス10を介
してその画像ファイルを出力する機能とを制御するカメ
ラサブユニットである。一つは、静止画像ファイルや動
画像ファイルをを記録/再生する機能と、1394シリ
アルバス10を介して画像ファイルを入出力する機能を
制御するVCRサブユニットである。
【0029】もう一つは、カメラサブユニット及びVC
Rサブユニットのファイルシステムが管理するデータフ
ァイル及びファイル属性情報を、本実施例で定義する共
通のファイルシステムで管理し、それらカメラサブユニ
ット或いはVCRサブユニットの代わりに他のノードに
提供する機能Proxy subunitである。これらのサブユニ
ットは、他のノードからのコマンドに応じて遠隔制御さ
れる。
【0030】又、電子スチルカメラ30は、論理的な機
能ユニットを2つ有している。一つは、上述のカメラサ
ブユニットであり、もう一つは、本実施例のProxy subu
nitである。PC20は、論理的な機能ユニットを2つ
有している。一つは、様々な種類のデータファイルを記
録/再生する機能と、1394シリアルバス10を介し
てデータファイルを入出力する機能とを制御するサブユ
ニットである。もう一つは、本実施例のProxy subunit
である。これらのサブユニットは、他のノードからのコ
マンドに応じて遠隔制御される。
【0031】(1)Proxy subunitについての説明 図2は、DVCR200の有するサブユニットとプリン
タ100の有するサブユニットを説明する図である。
【0032】図2において、DVCR200のカメラサ
ブユニット231は、撮像部209から出力された画像
信号から、記録形式A(例えば、JPEG方式)或いは
記録形式B(例えば、EXIF方式)に準拠した画像フ
ァイル及びファイル属性情報を生成し、それらを記録部
204に記録する機能を管理する。このとき、カメラサ
ブユニット231は、カメラサブユニット用のファイル
システムに基づいて、各画像ファイルのファイル属性情
報を管理する。
【0033】DVCR200のVCRサブユニット23
2は、撮像部209から出力された画像信号或いは外部
入力された画像信号から、記録形式C(例えば、DV方
式)或いは記録形式D(例えば、MPEG方式)に準拠
した生成し、それらを記録部204に記録したり、再生
したりする機能を管理する。このとき、VCRサブユニ
ット232は、VCRサブユニット用のファイルシステ
ムに基づいて、各画像ファイルのファイル属性情報を管
理する。
【0034】DVCR200のProxy subunit230
は、各サブユニット231,232のファイルシステム
が管理するファイル属性情報を、各Proxy subunit間で
共通のファイルシステムに変換する。このファイルシス
テムは、内部メモリ226に格納される。
【0035】プリンタ100のProxy subunit233
は、プリンタサブユニット234のファイルシステムが
管理するファイル属性情報を、各Proxy subunit間で共
通のファイルシステムに変換する。このファイルシステ
ムは、内部メモリ227に格納される。
【0036】Proxy subunit230,233は、他のノ
ードのProxy subunitが管理するファイルシステムを、
各サブユニット231,232のファイルシステムに変
換して提供することも可能である。この場合、各サブユ
ニット231,232は、様々なサブユニットが管理す
るデータファイルを簡単に扱うことができる。
【0037】本実施例において、Proxy subunit23
0,233のファイルシステムは、各データファイルと
それらのファイル属性情報とを階層的に管理する。ファ
イルシステムの構成の一例を図2の225に示す。ファ
イルシステムは、階層的に構成され、各階層はディレク
トリによって表現される。各ディレクトリには、各デー
タファイルのファイル属性情報が後述するデータ構造に
従って格納される。図2の225では、各記録形式毎に
異なるディレクトリを構成する例を示す。尚、各ディレ
クトリは、サブユニット単位に構成してもよい。
【0038】このように、本実施例のProxy subunit2
30,233は、各機能ユニットで異なるファイルシス
テムを、Proxy subunit用のファイルシステムに共通化
することができる。このような機能により、各ノード
は、Proxy subunitを実装するだけで、1394シリア
ルバス10に接続されたノードに対して、各機能ユニッ
トとは独立した共通のファイルシステムを提供すること
ができる。
【0039】図3は、プリンタ100のProxy subunit
233が、ユーザの操作に従って、DVCR200のPr
oxy subunit230にアクセスする手順を説明する図で
ある。まず、プリンタ100のProxy subunit233
は、DVCR200のProxy subunit230にアクセス
し、後述するCURRENT DIRコマンドを用いて、現在のデ
ィレクトリを問合せる(S31)。
【0040】次に、プリンタ100のProxy subunit2
33は、ファイル属性情報を要求するデータファイルの
種類(タイプともいう)を指定する(S32)。データ
ファイルの種類には、テキスト、画像、音声、動画像等
があるが、この場合は、記録形式A,Bの静止画像ファ
イルと記録形式C,Dの動画像ファイルの何れかであ
る。
【0041】全てのデータファイルを指定した場合、プ
リンタ100のProxy subunit233は、後述するSEND
ASYNCH FILEコマンドを用いて、現在のディレクトリに
存在する全てのデータファイルのファイル属性情報を要
求する(S33)。一方、所定の種類のデータファイル
を指定した場合、プリンタ100のProxysubunit233
は、後述するSEND ASYNCH FILEコマンドを用いて、現在
のディレクトリに存在する所定の種類のデータファイル
のファイル属性情報を要求する(S34)。
【0042】このSEND ASYNCH FILEコマンドを受信した
後、DVCR200のProxy subunit230は、ファイ
ル管理部202を制御して、要求されたファイル属性情
報からなるファイルリストを生成する。このファイルリ
ストは、後述するAsynchronous Connectionに従って、
DVCR200からプリンタ100へ転送される(S3
5)。
【0043】プリンタ100のProxy subunit233
は、受信したファイルリストをファイル管理部102の
内部メモリに保持するとともに、それらを表示部105
に表示する。ユーザは、この表示結果に基づき、印刷し
たいデータファイルはあるか否か、別のディレクトリを
見るか否かを判断する(S36)。
【0044】別のディレクトリを見る場合、プリンタ1
00のProxy subunit233は、後述するCHANGE DIRコ
マンドを用いて、ユーザの指示するディレクトリに移動
する(S37)。その後、Proxy subunit230は、S
32以下の処理を実行する。
【0045】一方、印刷したいデータファイルはある場
合、プリンタ100のProxy subunit233は、後述す
るSEND ASYNCH FILEコマンドを用いて、ユーザの指示す
るデータファイルを要求する(S38)。これと同時
に、プリンタ100は、印刷のための動作状態になる。
【0046】このSEND ASYNCH FILEコマンドを受信した
後、DVCR200のProxy subunit230は、記録部
209を制御して、要求されたデータファイルを読み出
す。このデータファイルは、後述するAsynchronous Con
nectionに従って、DVCR200からプリンタ100
へ転送される(S39)。
【0047】プリンタ100のProxy subunit233
は、受信したデータファイルをプリンタサブユニットに
供給する。プリンタサブユニットは、画像処理部10
3、印刷出力部109を制御して、このデータファイル
を印刷する(S40)。
【0048】その後ユーザは、表示部105に表示情報
に基づき、別のデータファイルを印刷するか否かを指示
する(S41)。別のデータファイルを印刷したい場
合、Proxy subunit230は、S36に戻って前述した
処理を再び実行する。
【0049】以上の手順により、本実施例のProxy subu
nitは、各サブユニットで異なるファイル転送方法を共
通化することができる。このような機能により、各ノー
ドは、Proxy subunitを実装するだけで、様々なサブユ
ニットと簡単且つ効率的にデータファイルをやり取りす
ることができる。
【0050】尚、図3に示す手順は、DVCR200の
Proxy subunit230が管理する画像ファイルをプリン
タ100で印刷する処理に限らず、電子スチルカメラ3
0の画像ファイルをプリンタ100で印刷する処理、P
C20の画像ファイル、テキストファイル等をプリンタ
100で印刷する処理、電子スチルカメラ30又はDV
CR200の画像ファイルをPC20に保存する処理、
電子スチルカメラ30の画像ファイルをDVCR200
に保存する処理等にも同様に適用される。
【0051】(2)Proxy subunitのファイルシステム
についての説明 次に、Proxy subunitのファイルシステムが管理するデ
ータ構造について詳細に説明する。
【0052】本実施例のProxy subunitのファイルシス
テムでは、各サブユニットのもつファイルシステムを共
通のファイルシステムに変換する機能と、各サブユニッ
トが扱う各種のデータファイル及びそれらのファイル属
性情報を、階層的に管理する機能とを有している。
【0053】図4(a)は、各データファイルのファイ
ル属性情報を管理するための基本的なデータ構造を示
す。ここで、このデータ構造は、階層的に構成されてい
る。尚、図4(a)において、左側に示す16進数は、
該データ構造をバイト単位で表現するための番号であ
る。
【0054】図4(a)において、フィールド301
(8bytes)は、IDフィールドであり、このフィ
ールドにはファイルを識別するためのID番号を格納す
る。但し、IDフィールド301の全てのビットが
「0」である場合には、現在のディレクトリを表す。ま
た、IDフィールド301の全てのビットが「1」であ
る場合には、現在のディレクトリの親ディレクトリを表
す。
【0055】フィールド302(2bytes)は、TY
PEフィールドである。後述するように、該TYPEフィール
ド302は、データファイルの種類を示す。図10は、
TYPEフィールド302に格納される値の一例を示す図で
ある。図10において、「000016」は、例えば、テ
キストファイルであることを示す。
【0056】又、「000116」は、例えば、画像ファ
イルであることを示す。又、「000216」は、例え
ば、音声ファイルであることを示す。又、「000
16」は、例えば、動画像ファイルであることを示す。
又、「000516」は、例えば、アプリケーションに固
有のデータファイルであることを示す。又、「0005
16」〜「FFFE16」は、将来の拡張のために予約され
ている。又、「FFFF16」は、ディレクトリであるこ
とを示す。
【0057】フィールド303(1byte)は、OPTI
ONAL_FLAGSフィールドである。このフィールドは、後
述する様々なファイル属性情報を記述するフィールドの
存在を示すと共に、各種の付加情報を格納する。このフ
ィールドを調べることにより、各種のファイル属性情報
の詳細な説明の有無を簡単に確認することができる。
【0058】フィールド304は、可変長のフィールド
である。フィールド304は、OPTIONAL_FIELDであ
り、上記OPTIONAL_FLAGSフィールド303によってそ
の有無が決定される。
【0059】次に、図4(b)を用いて、OPTIONAL_FL
AGSフィールド303の構造の一例を説明する。図4
(b)において、最上位ビット(most significant bi
t, 以下msbと称する)はdataフラグ401であり、
後述するCREATE_DATEフィールド(図5参照)の有無を
示す。
【0060】このフィールドには、データファイルの作
成日時に関する情報が格納される。該dataフラグ4
01の値が「1」のとき、上記CREATE_DATEフィールド
は、上記OPTIONAL_FIELD304内に存在し、該dat
aフラグ401の値が「0」のとき、上記CREATE_DATE
フィールドは存在しない。
【0061】第2ビット目はatimeフラグ402であ
り、後述するACCESS_TIMEフィールド(図6参照)の有
無を示す。このフィールドには、データファイルの最終
アクセス日時を示す情報が格納される。該atimeフ
ラグ402の値が「1」のとき、上記ACCESS_TIMEフィ
ールドは上記OPTIONAL_FIELD304内に存在し、該a
timeフラグの値が「0」のとき、上記ACCESS_TIME
フィールドは存在しない。
【0062】第3ビット目はsizeフラグ403であ
り、後述するSIZEフィールド(図7参照)の有無を示
す。このフィールドには、データファイルのデータサイ
ズをバイト単位で示す情報が格納される。該sizeフ
ラグ403の値が「1」のとき、上記SIZEフィールドは
上記OPTIONAL_FIELD304内に存在し、該sizeフ
ラグ403の値が「0」のとき、上記SIZEフィールドは
存在しない。
【0063】第4ビット目はnameフラグ404であ
り、後述するNAMEフィールド(図8参照)の有無を示
す。このフィールドには、ファイル名或いはディレクト
リ名を示す情報が格納される。該nameフラグ404
の値が「1」のとき、上記NAMEフィールドは上記OPTION
AL_FIELD304内に存在し、該nameフラグ404
の値が「0」のとき、上記NAMEフィールドは存在しな
い。
【0064】第5ビット目はreservedビット4
05であり、将来の拡張ために予約されている。該re
servedビット405の値は、必ず「0」となる。
【0065】第6ビット目はhiddenフラグ406
であり、データファイルの読み出しが可能か否かを示す
フラグである。該hiddenフラグ406の値が
「1」のとき、データファイルの読み出しが不可能であ
ることを示す。また、該hidden406フラグの値
が「0」のとき、データファイルの読み出しが可能であ
る。
【0066】第7ビット目はlockフラグ407であ
り、データファイルへの書き込みが可能か否かを示すフ
ラグである。該lockフラグ407の値が「1」のと
き、他のノードは、データファイルへのアクセスが不可
能となる。該lockフラグ407の値が「0」の時、
データファイルへのアクセスは可能となる。
【0067】最下位ビット(least significant bit,以
下lsbと称する)は、reservedビット408で
あり、将来の拡張ために予約されている。該reser
vedビット408の値は、読み出すと必ず「0」とな
る。
【0068】次に、図5を用いて、上述したCREATE_DA
TEフィールドの構成の一例について詳細に説明する。図
5の左側に示す16進数は、該フィールドをバイト単位
に表現するオフセットである。図5に示すCREATE_DATE
フィールドは、例えば64ビットのデータからなり、こ
の値がデータファイルの生成日時を示す。該フィールド
には、例えば、1970年01月01日00時00分0
0秒を基準とする時間情報を秒単位に格納する。
【0069】次に、図6を用いて、上述したACCESS_TI
MEフィールドの構成の一例について詳細に説明する。図
6の左側に示す16進数は、該フィールドをバイト単位
に表現するオフセットである。ACCESS_TIMEフィールド
は、例えば64ビットのデータからなり、この値がファ
イルの最終アクセス日時を示す。該フィールドの値は、
上記CREATE_DATEフィールドの値と同様に、例えば、1
970年01月01日00時00分00秒を基準とする
時間が秒単位に格納される。
【0070】次に、図7を用いて、上述したSIZEフィー
ルドの構成の一例を詳細に説明する。図7の左側に示す
16進数は、該フィールドをバイト単位に表現するオフ
セットである。図7に示すSIZEフィールドは、例えば3
2ビットのフィールドであり、このフィールドの値がフ
ァイルのサイズをバイト単位に示す。
【0071】次に、図8を用いて、上述したNAMEフィー
ルドの構成の一例を詳細に説明する。図8の左側に示す
16進数は、該フィールドをバイト単位に表現するオフ
セットである。図8に示すNAMEフィールドは、例えば可
変長のフィールドである。最初はencodingフィールド
(2bytes)801であり、file_nameフィールド
803に施された文字符号化方式を示す値が格納され
る。ここで、文字符号化方式の一例を図9に示す。図9
に示す値は、例えば、RFC1700規格などによって
定義された値を利用する。
【0072】次は、lengthフィールド(1byte)8
02であり、file_nameフィールド803の長さをバイ
ト単位で示す値が格納される。最後はfile_nameフィー
ルド(可変長)803で、ファイル名が格納される。こ
のフィールド803により、ファイル名が示される。
【0073】以上説明したCREATE_DATEフィールド、AC
CESS_TIMEフィールド、SIZEフィールド、及び、NAMEフ
ィールドは、上記の順番で上記OPTIONAL_FIELD304
に階層的に格納されている。又、これらのフィールドの
存在は、上述のOPTIONAL_FLAGSフィールド303によ
って確認することができる。これにより、各種のファイ
ル属性情報の詳細な説明の有無を容易に検出することが
できる。
【0074】次に、上述のデータ構造で記述されている
内容を更に詳細に説明する。Proxysubunitのファイルシ
ステムでは、TYPEフィールド302に示すファイルタイ
プ毎に、更に詳細な情報を記述するためのデータ構造を
別の階層に有する。
【0075】以下、図11を用いて、ファイルタイプ別
に構成されるデータ構造の一例について説明する。図1
1において、左側に示される16進数は、該データ構造
を表すバイト単位の番号を示す。
【0076】図11において、フィールド1101(1
byte)は、IMAGE_SUBTYPEフィールドである。IMAG
E_SUBTYPEフィールド1101は、画像ファイルの形式
を示す。
【0077】IMAGE_SUBTYPEフィールド1101に格納
される値の一例を図17に示す。図17において、「0
16」は、例えば、JPEG(Joint Photographic Expert G
roup)形式の画像ファイルであることを示す。また、
「0116」は、例えば、GIF(Graphics Interchange For
mat)形式の画像ファイルであることを示す。また、「0
16」は、例えば、IEF(Image Exchange Format)形式の
画像ファイルであることを示す。
【0078】また、「0316」は、例えば、G3ファク
シミリ形式の画像ファイルであることを示す。また、
「0416」は、例えば、TIFF(Tag Image File Format)
形式の画像ファイルであることを示す。また、「0
16」〜「FF16」は、将来の拡張のために予約されて
いる。
【0079】フィールド1102(1byte)は、IM
AGE_FLAGSフィールドである。IMAGE_FLAGSフィールド
1102には、画像ファイルの様々な属性情報を記述す
るフィールドの存在を示すと共に、各種の付加情報を格
納する。このフィールドを調べることにより、各種の属
性情報の詳細な説明を簡単に確認することができる。
【0080】フィールド1103(可変長)は、IMAGE
_OPTION_FIELDであり、上記IMAGE_FLAGSフィールド
1102によってその有無が定まるフィールドである。
図12は、上記IMAGE_FLAGSフィールド1102の構造
の一例を示す図である。
【0081】図12において、msb はwidthフラグ
1201であり、後述するIMAGE_WIDTHフィールドの有
無を示す。このフィールドには、画素単位の画像幅を示
す情報が格納される。該widthフラグ1201の値
が「1」のとき、上記IMAGE_WIDTHフィールドがIMAGE
_OPTION_FIELD1103内に存在し、該widthフ
ラグ1201の値が「0」のとき、上記IMAGE_WIDTHフ
ィールドは存在しない。
【0082】第2ビット目はhightフラグ1202
であり、後述するIMAGE_HIGHTフィールドの有無を示
す。このフィールドには、ライン単位の画像の高さを示
す情報が格納される。該hightフラグ1202の値
が「1」のとき、上記IMAGE_HIGHTフィールドがIMAGE
_OPTION_FIELD1103内に存在し、該hightフ
ラグ1202の値が「0」のとき、上記IMAGE_HIGHTフ
ィールドは存在しない。
【0083】第3ビット目はdepthフラグ1203
であり、後述するIMAGE_DEPTHフィールドの有無を示
す。このフィールドには、一画素あたりのビット数を示
す情報が格納される。該depthフラグ1203の値
が「1」のとき、上記IMAGE_DEPTHフィールドがIMAGE
_OPTION_FIELD1103内に存在し、該depthフ
ラグ1203の値が「0」のとき、上記IMAGE_DEPTHフ
ィールドは存在しない。
【0084】第4ビット目はgroupidフラグ12
04であり、後述するGROUP_IDフィールドの有無を
示す。このフィールドには、画像の属性情報が複数のフ
ァイルによって構成されている場合、該複数のファイル
をグループ化して取り扱うためのグループ識別番号が格
納される。該groupidフラグ1204の値が
「1」のとき、上記GROUP_IDフィールドがIMAGE_OP
TION_FIELD1103内に存在し、該groupidフ
ラグ1204の値が「0」のとき、上記GROUP_IDフ
ィールドは存在しない。
【0085】第5ビット目は、reservedビット1205
であり、将来の拡張ために予約されている。該reserved
ビットの値は、必ず「0」となる。第6ビット目はcmap
フラグ1206であり、画像ファイルがカラーマップ或
いはカラーインデックスを有しているか否かを示す。画
像ファイルがカラーマップ或いはカラーインデックスを
有している場合、cmapフラグ1206の値は「1」であ
り、有していない場合、cmapフラグ1206は「0」で
ある。尚。cmapフラグ1206の値が「1」のとき、カ
ラーマップ或いはカラーインデックスは、画像ファイル
内に存在しても良く、また、他のファイルによって保持
するようになっていても良い。
【0086】第7ビット目及び第8ビット目(lsb)
の2ビットは、reservedフィールド1207であり、将
来の拡張ために予約されている。該reservedフィールド
1207の値は、必ず「0」となる。
【0087】次に、図13を用いて、上述したIMAGE_W
IDTHフィールドの構成の一例について詳細に説明する。
図13の左側に示す16進数は、該フィールドをバイト
単位に表現するオフセットである。図13に示すIMAGE
_WIDTHフィールドは、例えば16ビットのデータから
なり、この値が、画素単位の画像の幅を示す。
【0088】次に、図14を用いて、上述したIMAGE_H
IGHTフィールドの構成の一例について詳細に説明する。
図14の左側に示す16進数は、該フィールドをバイト
単位に表現するオフセットである。図14に示すIMAGE
_HIGHTフィールドは、例えば16ビットのデータから
なり、この値が、ライン単位の画像の高さを示す。
【0089】次に、図15を用いて、上述したIMAGE_D
EPTHフィールドの構成の一例について詳細に説明する。
図15の左側に示す16進数は、該フィールドをバイト
単位に表現するオフセットである。図15に示すIMAGE
_DEPTHフィールドは、例えば8ビットのデータからな
り、この値が、一画素あたりのビット数を示す。
【0090】次に、図16を用いて、上述したGROUP_
IDフィールドの構成の一例について詳細に説明する。
図16の左側に示す16進数は、該フィールドをバイト
単位に表現するオフセットである。図16に示すGROUP
_IDフィールドは、例えば8ビットのデータからな
り、この値が、上述のグループ識別番号を示す。ここ
で、グループ識別番号とは、画像の属性情報が複数のフ
ァイルによって構成されている場合に、該複数のファイ
ルをグループ化して扱うための情報である。
【0091】以上説明したIMAGE_WIDTHフィールド、IM
AGE_HIGHTフィールド、IMAGE_DEPTHフィールド、及び
GROUP_IDフィールドは、上記の順番で上記IMAGE_OP
TION_FIELD1103フィールドに格納されている。
又、これらのフィールドの存在は、上述のIMAGE_FLAGS
フィールド1102によって確認することができる。こ
れにより、画像ファイルの各種の属性情報の詳細な説明
の有無を容易に検出することができる。
【0092】上述のように、本実施例のProxy subunit
は、各サブユニット間で異なるファイルシステムを共通
のファイルシステムに変換する機能と、各サブユニット
で扱う各種のデータファイル及びそれらのファイル属性
情報を、各サブユニット毎に、階層的に管理する機能と
を有している。
【0093】1394シリアルバス10に接続された各
ノード100、200、20、30は、上述のProxy su
bunitに対して後述する制御コマンドを発行することに
より、あるサブユニットが管理するデータファイル及び
ファイル属性情報を後述する通信プロトコル(後述する
Asynchronous Connection)に従って簡単且つ効率良く
取得することができる。
【0094】(3)Proxy subunitを遠隔制御するため
のコマンドについての説明 次に、本実施例のProxy subunitを遠隔操作するための
通信手順と各種の制御コマンドとについて説明する。1
394シリアルバス10上の各ノードは、各種の制御コ
マンドを後述する通信手順に従って発行することによ
り、Proxy subunitのファイルシステムを介して、各機
能ユニットが管理するデータファイルやファイル属性情
報を簡単に取得、確認することができる。又、これに限
らず、Proxy subunitの提供する各種の機能によって、
所望のデータファイルを遠隔制御することも可能であ
る。
【0095】本実施例のProxy subunitを遠隔操作する
ために必要な各種のコマンド及びレスポンスは、Functi
on Control Protocol(以下、FCPと称する)に基づ
いて1394シリアルバス10上に転送される。
【0096】以下、図18を用いてFCPについて説明
する。FCPは、1394シリアルバス10上に接続さ
れた各ノードをコントロールするために設計されたプロ
トコルである。FCPでは、予め設定された種々のコマ
ンドセットとコマンドトランザクションとの利用が可能
である。FCPに基づいて送受信されるコマンド及びレ
スポンスデータは、IEEE1394−1995規格で
規定されているAsynchronous(非同期)転送方式用の通
信パケット(以下、Asynchronousパケットと称する)に
パケッタイズされる。
【0097】FCPにおいて、1つ以上のノードの動作
をコントロールするノードを「コントローラ」と呼び、
コントロールされるノードを「ターゲット」と呼ぶ。図
18において、1800はコントローラ(ノードA)、
1802はターゲット(ノードB)として動作する。
【0098】本実施例では、FCPに基づいて生成され
るAsynchronousパケットのペイロード部分を「FCPフ
レーム」と呼ぶ。又、本実施例において、コントローラ
1800からターゲット1802に送信されるFCPフ
レーム(後述する各種のコマンドを含む)を「コマンド
フレーム(command frame)」と呼び、ターゲット18
02からコントローラ1800に送信されるFCPフレ
ーム(後述する各種のレスポンスデータを含む)を「レ
スポンスフレーム(response frame)」と呼ぶ。又、コ
マンドフレームを受信する準備をしたレジスタを「コマ
ンドレジスタ(command register)」と呼び、レスポン
スフレームを受信する準備をしたレジスタを「レスポン
スレジスタ(response register)」と呼ぶ。
【0099】図18において、1804はコントローラ
1800のもつコマンドレジスタ、1806はコントロ
ーラ1800のもつレスポンスレジスタ、1808はタ
ーゲット1802のもつコマンドレジスタ、1810は
ターゲット1802のもつレスポンスレジスタである。
各レジスタは、各ノードで共通のアドレス空間上の離れ
た位置に割り当てられている。
【0100】又、図18において、1812はコントロ
ーラ1800からターゲット1802にAsynchronous転
送されるコマンドフレーム、1814はターゲット18
02からコントローラ1800にAsynchronous転送され
るレスポンスフレームである。
【0101】コマンドフレーム1812は、ライトトラ
ンザクションを指定したAsynchronous転送に基づき、タ
ーゲット1802のもつコマンドレジスタ1808に書
き込まれる。又、レスポンスフレーム1814は、ライ
トトランザクションを指定したAsynchronous転送に基づ
き、コントローラ1800のもつレスポンスレジスタ1
806に書き込まれる。
【0102】ここで、上述の各レジスタは、デスティネ
ーションオフセットアドレスにより指定される。FCP
では、デスティネーションオフセットアドレスを指定し
たライトトランザクションを実行することにより、上述
のコマンドフレーム1812やレスポンスフレーム18
14を各レジスタに書き込むことができる。図18にお
いて、"Initial register space"の先頭アドレスは「F
FFFF000000016」、command resisterの先頭
アドレスは「FFFFF0000B0016」、response
resisterの先頭アドレスは「FFFFF0000D0
16」である。
【0103】次に、図19を用いてFCPに基づいて生
成されるAsynchronousパケットの構成を説明する。図1
9において、1950はデスティネーションのノードI
D(DESTINATION_ID)、1952はトランザクション
ラベル(Tl)、1954はリトライコード(Rt)、19
56はトランザクションコード(tcode)、1958は
プライオリティ(Pri)、1960はソースのノードI
D(SOURCE_ID)、1962はデスティネーションオフ
セットアドレス(DESTINATION_offset)、1964は
ペイロード(データフィールド)のデータ長(Data_Le
ngth)、1966は拡張トランザクションコード(Exte
nded_tcode )、1968はヘッダCRC(Header_CR
C)、1970はデータフィールド(FCPフレームを
含む)、1972はデータCRC(Data_CRC)を示
す。
【0104】図19に示す非同期パケットは、例えば、
4bytes(32ビット、以下クアッドレット)を単
位として構成されている。図19において、フィールド
1950(16ビット)ではデスティネーションノード
(受信先)のノードIDを指定する。フィールド195
2(6ビット)では各トランザクション固有のタグが指
定される。フィールド1954(2ビット)ではパケッ
トがリトライを試みるかどうかを指定する。
【0105】フィールド1956(4ビット)ではパケ
ットのフォーマット、実行しなければならないトランザ
クションのタイプを指定する。例えば、データブロック
の書き込みリクエストのトランザクションを指定する場
合、フィールド1956の値は00012となる。フィ
ールド1958(4ビット)では優先順位を指定する。
FCPの場合、フィールド1958の値は、例えば00
002である。
【0106】フィールド1960(16ビット)ではソ
ースノード(送信元)のノードIDを指定する。フィー
ルド1962(48ビット)にはデスティネーションノ
ードのもつメモリ空間内の所定のレジスタを指定するア
ドレス(即ち、上述のデスティネーションオフセットア
ドレス)が格納される。フィールド1964(16ビッ
ト)ではデータフィールド1970の長さをバイト単位
で示す。
【0107】フィールド1966(16ビット)では拡
張トランザクションコードを指定する。例えば、データ
ブロックの書き込みリクエストのトランザクションを指
定する場合、フィールド1966の値は000016と
なる。フィールド1968(32ビット)はパケットヘ
ッダのエラー検出のために使用される。ここで、パケッ
トヘッダは、フィールド1950〜1966にて構成さ
れる。
【0108】データフィールド1970(可変長)に
は、後述するコマンドフレームやレスポンスフレームが
格納される。ここで、データフィールド1970はペイ
ロードとも呼ばれる。尚、データフィールド1970に
格納されるデータがクアッドレット(4bytes)の
倍数に満たない場合には、「0」が詰められる。
【0109】つまり、フィールド1964に格納される
データ長がバイト(8ビット)単位で示される場合にお
いて、フィールド1964の値が4の倍数でない場合、
1クアッドレットを満たすまで「0016」の値のデー
タによって埋められる。フィールド1972(32ビッ
ト)はデータフィールド1970のエラー検出のために
使用される。
【0110】次に、FCPのコンポーネントの一つであ
るCTS(Command/Transaction Set)について説明す
る。CTSとは、コマンドセット、後述するFCPフレ
ームのコマンドフィールド及びレスポンスフィールドの
構造、制御コマンドとレスポンスデータとを送出する際
のトランザクションの規則を指定するものである。
【0111】図20(a)は、CTSで用いられるFC
Pフレームの構造を示す図である。図20(a)におい
て、フィールド2000(4ビット)はCTSの種類を
示す。CTSの種類の一例を図20(b)に示す。
【0112】以下、本実施例では、CTSの値を「00
002」とし、AV/C Digital Interface Command Set Ge
neral Specification規格(以下、AV/C Command Set規
格と称する)準拠したFCPフレームを用いた例につい
て説明する。
【0113】図21は、AV/C Command Set規格に基づく
コマンドフレーム、レスポンスフレームの構造を示す図
である。図21(a)がコマンドフレームの構造を示
し、図21(b)がレスポンスフレームの構造を示す。
【0114】図21(a)において、フィールド213
0(4ビット)はコマンドタイプ(以下、ctypeと称す
る)、フィールド2132(5ビット)はサブユニット
タイプ(以下、subunit_typeと称する)、フィールド
2134(3ビット)はサブユニットID(以下、subu
nit_IDと称する)、フィールド2136はオペコード
(以下、opcodeと称する)を示す。
【0115】又、フィールド2136以降のフィールド
には、1バイト毎にoperand[0]、operand[1]、…、op
erand[n]が格納される。
【0116】まず、フィールド2130のctypeについ
て説明する。図22は、フィールド2130の値とコマ
ンドタイプ(ctype)との関係の一例を示す図である。
コントローラ1800が、ターゲット1802の有する
ある対象を制御したい場合、ctypeは図22の「CONTRO
L」を示す。ここで、ある対象は、後述するopcodeとope
rand[0]〜[n]によって指定される。以下、ctypeが「C
ONTROL」を示すコマンドフレームをCONTROLコマンドと
呼ぶ。
【0117】又、コントローラ1800が、ターゲット
1802の有するある対象の現在の状態を問合わせたい
場合、ctypeは図22の「STATUS」を示す。ここで、あ
る制御対象は、後述するopcodeとoperand[0]〜[n]に
よって指定される。以下、ctypeが「STATUS」を示すコ
マンドフレームをSTATUSコマンドと呼ぶ。
【0118】又、コントローラ1800が、ターゲット
1802の有するある対象の状態が変化したことをター
ゲット1802により知らせて欲しい場合、ctypeは図
22の「NOTIFY」を示す。ここで、対象となる状態は、
後述するopcodeとoperand[0]〜[n]によって指定され
る。以下、ctypeが「NOTIFY」を示すコマンドフレーム
をNOTIFYコマンドと呼ぶ。
【0119】又、コントローラ1800が、同じopcode
をもつCONTROLコマンドをターゲットが実装しているか
否かを確認するしたい場合、ctypeは図22の「SPECIFI
C INQUIRY」或いは「GENERAL INQUIRY」を示す。以下、
ctypeが「SPECIFIC INQUIRY」を示すコマンドフレーム
をSPECIFIC INQUIRYコマンドと呼び、ctypeが「GENERAL
INQUIRY」を示すコマンドフレームをGENERAL INQUIRY
コマンドと呼ぶ。
【0120】ここで、SPECIFIC INQUIRYコマンドは、op
codeと全てのoperand[0]〜[n]とを指定しなければな
らない。又、GENERAL INQUIRYコマンドは、opcodeのみ
を指定する。
【0121】次に、フィールド2132のsubunit_typ
eとフィールド2134のsubunit_IDとについて説明す
る。コマンドフレームの送信先となるサブユニットは、
subunit_typeとsubunit_IDとにより識別される。
【0122】ここで、サブユニット(以下、subunitと
称する)とは、AV/C Digital Interface Command Set G
eneral Specification (March 1998, 1394 Trade Assoc
iation)規格(以下、AV/C Command Set規格と称する)等
で定義されている。AV/C Command Set規格においてsubu
nitとは、ある1つのユニット(以下、unitと称する)
の中で、首尾一貫した機能のセットを提供することので
きる仮想的なエントリーのことである。尚、unitとは、
IEEE1394規格に準拠したデジタルインタフェー
スを有する電子機器のことである。
【0123】AV/C Command Set規格によれば、1つのun
itは複数のsubunitを持つことができる。従って、コマ
ンドフレームのsubunit_type2132とsubunit_ID2
134とは、あるunit内に存在するsubunitを指定する
ためのアドレスを示している。ここで、上述のsubunit
_type2132とsubunit _ID2134とは、「subuni
tアドレス(又は、AV/Cアドレス)」と総称される。
【0124】図23は、フィールド2132に格納され
る値の一例を示す図である。例えば、subunit_type2
132の値が「1F16」、subunit_ID2134の値が
「316」となる場合、subunitアドレスは特定のsubunit
ではなく、unit自体を示す。
【0125】また、コンピュータ10(コントローラ)
が、本実施例のDVCR200(ターゲット)の具備す
るカメラサブユニットに対してコマンドフレームを送信
する場合、subunit_type2132の値は「0011
2」、subunit_ID2134の値は「0002」とな
る。
【0126】また、同様に、コンピュータ10(コント
ローラ)が、本実施例のDVCR200(ターゲット)
の具備するVCRsubunitに対してコマンドフレームを
送信する場合、subunit_type2132の値は「001
002」、subunit _ID2134の値は「0002」とな
る。
【0127】また、DVCR200(コントローラ)
が、プリンタ100(ターゲット)の有するプリンタサ
ブユニットに対して上述のコマンドフレームを送信する
場合、例えば、subunit_type2132の値は「000
102」、subunit_ID2134の値は「0002」とな
る。
【0128】また、プリンタ100(コントローラ)
が、DVCR200(ターゲット)の有するカメラサブ
ユニットに対して上述のコマンドフレームを送る場合、
例えば、subunit_type2132の値は「0011
2」、subunit_ID2134の値は「0002」とな
る。
【0129】更に、プリンタ100(コントローラ)
が、DVCR200(ターゲット)の有するProxy subu
nitに対して上述のコマンドフレームを送る場合、例え
ば、例えば、subunit_type2132の値は「0101
2」、subunit _ID2134の値は「0002」とな
る。
【0130】続いて、図21(a)に示すopcodeフィー
ルド2136とそれに続くoperand[0]〜[n]フィール
ドについて説明する。opcodeは、実行される制御内容、
後述するレスポンスフレームによって返信される状態等
を定義する。又、operand[0]〜[n]の数と内容とは、
上述のctype、subunit_type、opcodeの内容によって異
なる。
【0131】次に、図21(b)を用いてレスポンスフ
レームの構造と機能とを説明する。ここで、図21
(a)のコマンドフレームと同一の機能をもつフィール
ドについては同一の符号を付し、その詳細な説明を省略
する。図21(b)において、フィールド2138(4
ビット)はレスポンスタイプ(以下、responseと称す
る)を示す。図24にフィールド2138の値とrespon
seとの関係の一例を示す。
【0132】ターゲット1802のサブユニットは、コ
ントローラ1800から送信されたコマンドフレームに
対応する適切なレスポンスフレームを生成し、それをコ
ントローラ1800に返信する。ここで、レスポンスフ
レームに含まれるopcodeの内容、operand[0]〜[n]の
数と内容とは、subunit_typeの内容によって異なる。
【0133】次に、本実施例のProxy subunitを遠隔制
御するためのコマンドを、図25を用いて具体的に説明
する。 (3−1)CHANGE DIRコマンド 図25において、CHANGE DIRコマンドは、Proxy subuni
tに対し、現在のディレクトリを変更するように要求す
るためのコマンド(以下、CHANGE DIR CONTROLコマンド
と称する)である。CHNAGE DIRコマンドを指定するopco
deは「4016」である。
【0134】CHANGE DIR CONTROLコマンドのフォーマッ
トの一例を図26に示す。図26において、opcodeフィ
ールドには、CHANGE DIRコマンドを示す値、即ち、「4
16」が格納される。又、operand[0]〜[7]フィール
ドは、File_ID フィールドであり、上述のIDフィー
ルド301で管理されている値(8bytes)を指定
する。
【0135】ここで、File_ID フィールドが指定する
データファイルのTYPEフィールド302が「FFF
16」の場合(即ち、ディレクトリを示す場合)、Prox
y subunitは、ACCEPTEDレスポンスを返し、現在のディ
レクトリをFile_ID フィールドが指定するディレクト
リに変更する。一方、TYPEフィールド302が「FFF
16」でない場合、Proxy subunitは、REJECTEDレスポ
ンスを返す。この場合、REJECTEDレスポンス中のFile_
ID フィールドには、上記CHANGE DIR CONTROLコマンド
によって指定された値と同じ値が格納される。
【0136】(3−2)CURRENT DIRコマンド 図25において、CURRENT DIR コマンドは、Proxy subu
nitに対し、の現在のディレクトリ位置を問い合わせる
ためのSTATUSコマンドである。CURRENT DIR コマンドを
指定するopcodeは「4216」である。
【0137】本実施例のProxy subunitでは、基準とな
るディレクトリ(ルートディレクトリ)から現在のディ
レクトリまでの絶対位置を記憶するように動作する。従
って、Proxy subunitは、上記CURRENT DIRコマンドに対
して、現在記憶しているディレクトリ位置をパス名とし
て返す。
【0138】(3−3)FILE NUMBERコマンド 図25において、FILE NUMBERコマンドは、Proxy subun
itに対し、現在のディレクトリにおけるデータファイル
の数を問い合わせるためのSTATUSコマンド(以下、FILE
NUMBER STATUSコマンドと称する)である。FILE NUMBE
Rコマンドを指定するopcodeは「4416」である。
【0139】FILE NUMBER STATUSコマンドのフォーマッ
トの一例を図27に示す。図27において、opcodeフィ
ールドには、FILE NUMBER STATUSコマンドを示す値、即
ち、「4416」が格納される。又、operand[0]〜[1]
フィールドは、typeフィールドであり、上述のTYPEフィ
ールド302で管理されている値を指定する。これによ
り、現在のディレクトリに存在する所定のタイプのデー
タファイル数を問い合わせることができる。
【0140】また、現在のディレクトリにある全てのタ
イプのデータファイル数を問い合わせる場合には、該ty
peフィールドに「FFFF16」を指定して問い合わせを
行なう。又、operand[2]〜[9]フィールドには、ダミ
ーデータを示す値「FF16」が格納される。
【0141】次に、FILE NUMBER STATUSコマンドに対す
るレスポンスのフォーマットの一例を図28を用いて説
明する。図28において、opcodeフィールドには、FILE
NUMBER STATUSコマンドを示す値、即ち、「4416」が
格納される。又、typeフィールドには、FILE NUMBER ST
ATUSコマンドが指定したTYPEフィールド値と同じ値を格
納する。又、operand[2]〜[9]フィールドは、number
フィールドであり、FILE NUMBER STATUSコマンドが指定
したタイプのデータファイル数を格納する。
【0142】(3−4)SEND ASYNCH FILEコマンド 図25において、SEND ASYNCH FILEコマンドは、Proxy
subunitに対し、現在のディレクトリに存在するデータ
ファイル或いはファイル属性情報の転送を要求するため
のCONTROLコマンドである。SEND ASYNCH FILEコマンド
のオペコードは「5016」である。
【0143】以下の実施例では、このSEND ASYNCH FILE
コマンドとAsynchronous Connectionとを用いて、デー
タファイルやファイル属性情報を転送する手順について
説明する。
【0144】本実施例のProxy subunitが、単一のコネ
クションを用いて、上述のファイルシステムで管理して
いるファイルリスト(各種のデータファイルのファイル
属性情報からなる)やデータファイルを転送する手順に
ついて説明する。ここで、コネクションとは、2つ以上
のノード間に設定された論理的な接続関係を示す。
【0145】ここで、コネクションの設定方法及びデー
タ転送方法については、Asynchronous Connectionに準
拠した手順によって実現する。Asynchronous Connectio
nとは、IEEE1394−1995規格のAsynchronou
s転送モードを用いて、所定単位のデータを効率良く連
続的に転送する通信プロトコルである。尚、Asynchrono
us Connectionについては、AV/C Compatible Asynchron
ous Serial Bus Connections(1394 Trade Association
発行)及びAV/C commands for management of Asynchro
nous Serial Bus Connections(1394 Trade Associatio
n発行)に詳細に説明されている。
【0146】以下、Proxy subunitを介してファイルリ
ストやデータファイルを伝送するノードをSOURCEと称
し、Proxy subunitを介してファイルリストやデータフ
ァイルを要求するノードをDESTINATIONと称し、139
4シリアルバス10に接続されたSOURCEとDESTINATION
との間にコネクションを設定するノードをCONTROLLERと
称する。CONTROLLERは、SOURCEとなるノードがなって
も、DESTINATIONとなるノードがなっても、それ以外の
ノードがなってもよい。
【0147】SOURCEとDESTINATIONとの間でファイルリ
スト或いはデータファイルの転送を行う前に、CONTROLL
ERは、ALLOCATE、ALLOCATE_ATTACH 、ATTACHコマンド
を順次発行し、所定の手順に従ってSOURCEとDESTINATIO
Nとの間にコネクションを設定する(図40(a)参
照)。
【0148】コネクションの設定後、DESTINATIONは、
まずSOURCEに対してファイルリストの送信要求を行う
(図3のS33,S34参照)。このファイルリストに
基づき、DESTINATIONは、SOURCEの持つ複数のデータフ
ァイルの中から特定のデータファイルを選択する(図3
のS38参照)。この送信要求は、上記SEND ASYNCH FI
LEコマンドを発行することにより実行される。
【0149】SEND ASYNCH FILEコマンドのフォーマット
の一例を図29に示す。図29において、opcodeフィー
ルド2901には、SEND ASYNCH FILEコマンドを示すコ
ード(即ち、「5016」)がセットされる。又、Subfun
ctionフィールド2902には、このコマンドのコマン
ドフレームの内容を示すコードがセットされる。
【0150】Subfunctionフィールド2902にセット
されるコードの一例を図30に示す。図30において、
ファイルリストの転送を要求する場合、このフィールド
にはSEND_FILE_LISTを示すコード(「0x00」)が
セットされる。又、特定のデータファイルの転送を要求
する場合、このフィールドにはSEND_FILE_DATAを示す
コード(「0x01」)がセットされる。
【0151】又、Plug_IDフィールド2903には、
このコマンドの実行結果の出力に使用されるPlug_ID
を指定するコードがセットされる。Port_IDフィール
ド2904には、このコマンドの実行結果の出力に使用
するPort_ID を指定する値がセットされる。
【0152】上記コネクションは、このPlug_IDとPort
_IDの組み合せにより判別される。Attributeフィール
ド2905は、送信を要求するファイルリストの内容を
詳細に指定する場合に使用される。
【0153】Attributeフィールド2905に格納され
る値の一例を図31に示す。図31において、Attribut
eフィールド2905にセットされたコードが「0
16」の場合、通常のファイルリストが要求される。即
ち、現在のディレクトリに存在する1つ以上のデータフ
ァイルのIDフィールド301及びTYPEフィールド302
からなるファイルリストが転送される。尚、このファイ
ルリストは、AsynchronousConnectionに従って転送され
る。
【0154】又、Attributeフィールド2905にセッ
トされたコードが「0116」の場合、OPTIONAL_FIELD
304を含めたファイルリストの転送が行なわれる。即
ち、現在のディレクトリに存在する1つ以上のファイル
のIDフィールド301及びTYPEフィールド302に加
え、図5のCREATE_DATE フィールド、図6のACCESS_T
IME フィールド、図7のSIZEフィールド、及び図8のNA
MEフィールドからなるファイルリストが転送される。
尚、このファイルリストは、Asynchronous Connection
に従って転送される。
【0155】ここで、Attributeフィールド2905に
セットされたコードが「0016」または「0116」の場
合、図4に示すhiddenフラグ406或いはlockフラグ4
07の値が「1」となるファイルのファイル属性情報は
転送されないようになっている。しかしながら、Attrib
uteフィールドにセットされたコードが、「0216」の
場合には、hiddenフラグ406或いはlockフラグ407
の値が「1」となるファイルのファイル属性情報も転送
される。
【0156】更に、Attributeフィールド2905にセ
ットされたコードが「0316」の場合、指定されたファ
イルタイプのファイルリストが要求される。この場合、
ファイルタイプの指定は、File_type フィールド29
06にて定義される。本実施例のProxy subunitは、こ
のFile_type フィールド2906が指定するタイプの
データファイルのファイル属性情報からなるファイルリ
ストを転送する。尚、このファイルリストは、Asynchro
nous Connectionに従って転送される。
【0157】図29において、File_type フィールド
2906は、特定タイプのファイルのファイルリストを
要求する場合に使用される。このフィールドに格納され
る値の一例を図10に示す。File_ID フィールド29
07は、特定タイプのファイルのファイルリストを要求
する場合、または特定のデータファイルを要求する場合
に使用される。このフィールドには、上述のIDフィール
ド301で管理されている値が格納される。
【0158】図32は、図29に示したSEND ASYNCH FI
LEコマンドに対応するレスポンスのフォーマット例であ
る。Statusフィールド3201以外は、図29のCTS
コマンドと同じ値がセットされる。Statusフィールド3
201には、このCTSコマンドに対応する実行ステー
タスを示す値がセットされる。このフィールドに格納さ
れる値の一例を図33に示す。
【0159】又、このCTSレスポンスでは、実行結果
によってresponseフィールドにACCEPTEDまたはREJECTED
がセットされ、Statusフィールド3201には図33に
示すステータスコードの何れかがセットされる。その他
のフィールドには、コマンドフレームと同一値がセット
される。
【0160】図32に示すCTSレスポンスを返信した
後、SOURCE(本実施例のProxy subunit)は、上述のSEN
D ASYNCH FILEコマンドによって要求されたファイルリ
ストを、Asynchronous Connectionにより設定されたコ
ネクションを使用してDESTINATIONのSegment_Bufferに
書き込む。
【0161】このとき、SOURCEは、このファイルリスト
を必要に応じて1つ以上のセグメントに分割した後、1
つ以上のセグメントからなるフレームを少なくとも1つ
生成し、各フレームを上述のSEND ASYNCH FILEコマンド
のPlug_ID フィールド2903、Port_ID フィールド
2904によって指定されたSegment_Bufferに対して
順次書き込む。
【0162】各フレームは、SubFrameと実際のデータ
(1つ以上のセグメント)とから構成される。このフレ
ームは、図19に示すAsynchronousパケットのdata fie
ld1970にセットされ、本実施例のProxy subunitが
使用するSegment_Bufferに、writeトランザクションに
よって書き込まれる。
【0163】又、sub_typeフィールドは、frame_type
フィールドがFile Dataを示す場合に有効となるフィー
ルドで、File Dataの内容を示す。このフィールドにセ
ットされるコードの一例を図36に示す。更に、reserv
edフィールドは将来の拡張用フィールドである。
【0164】SubFrameのフォーマットの一例を図34に
示す。SubFrameは32ビットで構成され、frame_typ
e、sub _type、Reservedフィールドからなる。frame_
typeフィールドには、このフレームにセットされたデー
タの種類を示すコードをセットする。このフィールドに
セットされるコードの一例を図35に示す。
【0165】図35において、Directionは、SOURCE、D
ESTINATIONのどちらから送信されたフレームであるかを
示す。Control Command(「0x00」)、Status Comm
and(「0x81」)は、DESTINATIONからSOURCEのSegm
ent_Bufferに書き込まれるフレームに対してセットさ
れ、File List(「0x80」)、Status Data(「0
x81」)、File Data(「0x82」)は、SOURCEか
らDESTINATIONのSegment_Bufferに書き込まれるフレー
ムに対してセットされる。
【0166】ファイルリストからなるフレームの一例を
図37に示す。図37において、先頭の4バイトは、上
述のSubFrameをセットするフィールドである。このフィ
ールドのframe_typeフィールドには、ファイルリスト
であることを示すコード(即ち、図35に示す「0x8
0」)がセットされる。
【0167】次のsub_typeフィールドには、要求され
たファイルリストのファイルタイプを示す値(図36参
照)がセットされる。画像ファイルを指定する場合に
は、「000016」がセットされ、何も指定していない
場合には、「FFFF16」がセットされる。8バイト目
以降は、ファイルリスト自体を格納する可変長のデータ
フィールドである。
【0168】次に、本実施例のProxy subunitがDESTINA
TIONの要求するデータファイルを転送する手順について
図39を用いて説明する(図3のS39参照)。
【0169】まず、DESTINATIONは、SOURCEのProxy sub
unitに対して、SEND_FILE_DATAコードをセットしたSE
ND ASYNCH FILEコマンドを送信する(図39の390
1)。このSEND ASYNCH FILEコマンドには、SOURCEとDE
STINATIONとの間のコネクションを示すPlug_ID及びPor
t_IDと、SOURCEに送信を要求するデータファイルを示
すFile_IDとが含まれる。
【0170】送信が可能な場合、SOURCEは、DESTINATIO
Nに対してAcceptedレスポンスを送信した後(図39の
3902)、DESTINATIONの要求するデータファイルを
1つ以上のセグメントに分割し、1つ以上のセグメント
を含むフレームを少なくも1つ生成する。そして、各フ
レームをAsynchronous Writeトランザクションを用いて
DESTINATIONのSegment_Bufferに順次書き込む(図39
の3903)。
【0171】このとき、SOURCEからDESTINATIONに送信
されるフレームのフォーマット例を図38に示す。図3
8において、先頭の4バイトには図34に示すSubFrame
がセットされる。SubFrameの第1バイト目にはデータフ
ァイルであることを示すコード(図35に示す「0x8
2」)がセットされる。2バイト目と3バイト目には、
送信するファイルのファイルタイプがセットされる。例
えば、所定の画像ファイルを要求した場合、Image Data
を示すコード(図36に示す「0x0000」)がセッ
トされる。8バイト目以降には、送信するファイル自体
がセットされる。
【0172】DESTINATIONが、他のデータファイル或い
は他のディレクトリのファイルリストを要求する場合に
は、SOURCEとDESTINATIONとは上述の手順に従って通信
し、上記コネクションを介してそれらを転送する。
【0173】(3−5)SEND ASYNCH FILEコマンドの他
の例 SEND ASYNCH FILEコマンドの他の例を図43及び図44
に示す。図43及び図44に示すSEND ASYNCH FILEコマ
ンドは、上述のCTSコマンドとは異なるデータ構成を
もつコマンドである。
【0174】図43は、ファイルリストを要求するため
のSEND ASYNCH FILEコマンドである。図43において、
SubFrameの1バイト目には、コントロールコマンドであ
ることを示すコードがセットされる。5バイト目である
functionフィールドには、ファイルリストを要求するこ
とを示すコード(SEND_FILE_LIST)がセットされる。
Plug_ID及びPort_IDフィールドには、後述する第1の
コネクションを指定するコードがセットされる。
【0175】又、Attributeフィールドには、送信され
るファイルリストの内容を詳細に指定するためのコード
(図31参照)がセットされる。File_type フィール
ドには、特定タイプのデータファイル(例えば、画像フ
ァイル)のファイルリストを要求するためのコード(図
10参照)がセットされる。
【0176】図44は、データファイルを要求するため
のSEND ASYNCH FILEコマンドである。図44において、
SubFrameの1バイト目には、コントロールコマンドであ
ることを示すコードがセットされる。5バイト目である
functionフィールドには、データファイルを要求するこ
とを示すコード(SEND_FILE_DATA)がセットされる。
Plug_ID及びPort_IDフィールドには、後述する第1の
コネクションを指定するコードがセットされる。File_
IDフィールドには、DESTINATIONの要求するデータファ
イルのFile_ID(即ち、図3のIDフィールド301で
管理されている値)がセットされる。
【0177】図43及び図44に示すSEND ASYNCH FILE
コマンドは、図19に示すAsynchronousパケットのデー
タフィールド1970にセットされ、Proxy subunitが
使用するSegment_Bufferにwriteトランザクションされ
る。
【0178】以下の実施例では、このSEND ASYNCH FILE
コマンドとAsynchronous Connectionとを用いて、デー
タファイルやファイルリストを転送する手順について説
明する。本実施例のProxy subunitが、2つのコネクシ
ョンを用いて、上述のファイルシステムで管理している
ファイルリストやデータファイルを転送する手順につい
て説明する。2つのコネクションの設定方法及びデータ
転送方法については、Asynchronous Connectionに準拠
した手順によって実現する。
【0179】まず、図40を用いて、2つのコネクショ
ンを設定するまでの手順を説明する。図40(a)にお
いて、CONTROLLERはまず、SOURCEに対して後述のALLOCA
TEコマンドを送信してそのレスポンスを待つ。SOURCEか
らALLOCATEレスポンスを受け取ると、次にCONTROLLER
は、DESTINATIONに対して後述のALLOCATE_ATTACHコマ
ンドを送信してレスポンスを待つ。DESTINATIONからALL
OCATE_ATTACH レスポンスを受け取った後、CONTROLLER
は、SOURCEに後述のATTACHコマンドを送信し、そのレス
ポンスを待つ。
【0180】以上の手順により、CONTROLLERは、SOURCE
とDESTINATIONとの間に第1のコネクションを設定する
ことができる。DESTINATIONは、この第1のコネクショ
ンを用いて、SOURCEを遠隔操作するためのコマンド、所
望のデータファイルやファイルリストを要求するための
コマンドなどを送信する。
【0181】次に、図40(b)において、CONTROLLER
は、DESTINATIONに対してALLOCATEコマンドを送信して
そのレスポンスを待つ。DESTINATIONからALLOCATEレス
ポンスを受け取ると、次にCONTROLLERは、SOURCEに対し
てALLOCATE_ATTACHコマンドを送信し、そのレスポンス
を待つ。SOURCEからALLOCATE_ATTACH レスポンスを受
け取った後、CONTROLLERは、DESTINATIONにATTACHコマ
ンドを送信し、そのレスポンスを待つ。
【0182】以上の手順により、CONTROLLERは、SOURCE
とDESTINATIONとの間に第2のコネクションを設定する
ことができる。SOURCEは、この第2のコネクションを用
いて、DESTINATIONからのコマンドに対応するレスポン
スデータ、DESTINATIONが要求するファイルリストやデ
ータファイル(画像データを含む)などを送信する。
【0183】図40に示した手順によって、SOURCEとDE
STINATIONとの間に双方向のコネクションが設定された
後、DESTINATIONは、第1のコネクションを介し、SOURC
EのSegment_Bufferに対して図43に示すSEND ASYNCH
FILEコマンドを送信する。
【0184】図43に示すSEND ASYNCH FILEコマンドを
受信した後、SOURCEは、このフレームの内容を確認す
る。そして、SOURCEは、第2のコネクションを介して、
DESTINATIONの要求するタイプのファイルリストをDESTI
NATIONのSegment_Bufferに順次転送する。
【0185】次に、SOURCEのファイルシステムが管理す
る特定のデータファイルの転送を要求する場合、DESTIN
ATIONは、第1のコネクションを介して、図44に示すS
ENDASYNCH FILEコマンドをSOURCEに送信する(図45の
4501)。
【0186】図44に示すSEND ASYNCH FILEコマンドを
送信した後、DESTINATIONは、第1のコネクションを介
して、SOURCEのiAPR(後述する)をアップデートする
(図45の4502)。iAPRをアップデートされたSOUR
CEは、Segment_Bufferに書かれたデータをチェックし
て送信するデータファイルのIDを取得した後にDESTINAT
IONのoAPRをアップデートする(図45の4503)。
【0187】次に、SOURCEは、上述の第2のコネクショ
ンを介して、DESTINATIONの要求するデータファイルをD
ESTINATIONに順次転送する(図45の4503)。具体
的にSOURCEは、DESTINATIONの要求するデータファイル
を1つ以上のセグメントに分割し、1つ以上のセグメン
トを含むフレームを少なくも1つ生成する。そして、各
フレームをAsynchronous Writeトランザクションを用い
てDESTINATIONのSegment_Bufferに順次書き込む(図4
5の4504)。
【0188】以上説明したように本実施例によれば、1
つ以上の機能ユニットからなるノードにおいて、各機能
ユニットが扱う各種のデータファイルを一括して管理す
ることのできる仮想的な機能ユニットを提供することが
できる。これにより、制御ノードは、非制御ノードの有
する各機能ユニットを直接操作することなく、必要なデ
ータファイルやファイルリストを選択するコマンドを送
信するだけで、所望のデータファイルやファイルリスト
を受け取ることが可能となる。
【0189】又、本実施例によれば、1つ以上の機能ユ
ニットからなるノードにおいて、各機能ユニットのファ
イルシステムを共通化する仮想的な機能ユニットを提供
することができる。これにより、制御ノードは、被制御
ノードの有する各機能ユニットのファイルシステムの全
てに対応することなく、上記仮想的な機能ユニットの提
供するファイルシステムに対応するだけでよい。
【0190】又、本実施例によれば、バス型ネットワー
クに接続された制御ノードと被制御ノードとの間に1つ
以上の論理的な接続関係を設定し、該接続関係を介し
て、制御ノードの要求するデータファイルやファイルリ
ストを高速且つ確実に転送することができる。
【0191】(4)Asynchronous Connectionの説明 次に、本実施例において使用する通信プロトコル(即
ち、Asynchronous Connection)について詳細に説明す
る。尚、Asynchronous Connectionについては、AV/C Co
mpatible Asynchronous Serial Bus Connections(1394
Trade Association発行)及びAV/C commands formanag
ement of Asynchronous Serial Bus Connections(1394
Trade Association発行)に詳細に説明されている。
【0192】上述したように、本実施例のProxy subuni
tは、Asynchronous Connectionに従って、他のノードの
要求するファイルリスト、データファイル等を転送す
る。尚、以下で説明するAsynchronous Connectionは、
図1の通信部101、201及び1394シリアルバス
10に接続されている他のノードによって処理される。
【0193】図46を用いてAsynchronous Connection
の基本構成について説明する。図46において、データ
を転送する機能を有する送信側のノードをPRODUCERノー
ド(以下、PRODUCER4602)、そのデータを受信する機
能を有する受信側のノードをCONSUMERノード(以下、CON
SUMER4603)、PRODUCER4602とCONSUMER4603
との間に設定される論理的な接続関係(即ち、コネクシ
ョン)を管理する機能を有するノードをCONTROLLERノー
ド(以下、CONTROLLER4601)と呼ぶ。Asynchronous C
onnectionでは、CONTROLLER4601、PRODUCER460
2、CONSUMER4603の三者によってデータ転送を制御
する。
【0194】PRODUCER4602、CONSUMER4603は、
データを送受信のためのAsynchronous plugをそれぞれ
所有する。図47にAsynchronous plugの構成を示す。A
synchronous plugは、ひとつのiAPR(input Asynchronou
s Port Register)、複数のoAPR(output Asynchronous P
ort Register)、データ受信用のSegment_Bufferで構成
され、IEEE13934−1995規格に準拠したア
ドレススペースに割り当てられる。
【0195】ここで、このAsynchronous plugは、1つ
のコネクションを設定する毎に必要となる。複数のAsyn
chronous plugを有する場合、各Asynchronous plug
は、Plug IDで識別される。
【0196】PRODUCER4602の機能のみを有するノー
ドは、図48(a)のようにoAPRだけからなるAsynchro
nous plugを有する。また、CONSUMER4603の機能の
みを有するノードは、図48(b)のようにiAPRとデー
タ受信用のSegment_BufferとからなるAsynchronous pl
ugを有する。また、PRODUCER4602、CONSUMER460
3の両方の機能を有するノードは、図48(c)のよう
にiAPR、oAPR、Segment_BufferからなるAsynchronous
plugを有する。
【0197】ここで、oAPRの数は、PRODUCER4602の
能力に応じて異なる。例えば、1つのコネクションを用
いてN(N≧1)個のCONSUMER4603に対してデータ
を送信することができる場合、PRODUCER4602はN個
以上のoAPRを有する。また、1つのCONSUMER4603に
しかデータを送信できない場合、PRODUCER4602はoA
PRを1つだけ有する。また、複数のコネクションを同時
に張ることができる場合、PRODUCER4602は、図47
に示すAsynchronous plugを複数有する。
【0198】次に、図49を用いてAsynchronous Conne
ctionを制御するために必要なCTSコマンドとそれに
対応するレスポンスのフォーマットについて説明する。
Asynchronous Connectionにおいて、CONTROLLER460
1からPRODUCER4602或いはCONSUMER4603に送信
されるコマンドフレームのopcode、operandフィールド
と、PRODUCER4602或いはCONSUMER4603からCONT
ROLLER4601に送信されるレスポンスフレームのopco
de、operandフィールドとは同じフォーマットである。
【0199】図49において、opcodeフィールドは、C
TSコマンドの種類を示し、Asynchronous Connections
用のコマンドであることを示すコードがセットされる。
subfunctionフィールド(operand[0])は、PRODUCER4
602或いはCONSUMER4603が行う動作を指定するコ
ードがセットされる。例えば、プラグリソースの確保、
コネクションの設定/解除等を指定する。
【0200】statusフィールド(operand[1])は、コマ
ンド実行結果の状態を表すフィールドで、レスポンスフ
レームにおいて所定のコードがセットされ、CONTROLLER
4601に状態が通知される。plugidフィールド(op
erand[2])は、コネクションで使用するAsynchronous p
lugの番号を指定する。plugidフィールドにセットさ
れるコードの一例を図50に示す。
【0201】plug offsetフィールド(operand[3]〜
[8])は、42ビットのフィールドで、Asynchronous pl
ugの先頭アドレス(即ち、図47に示すiAPRを指定する
アドレス)がセットされる。portidフィールド(oper
and[8])は、Asynchronous plug内のどのポートが選択
されているかを示すフィールドである。portidフィー
ルドにセットされるコードの一例を図51に示す。図5
1において、CONSUMER portは、図47に示すiAPRに対
応し、PRODUCER port[1]〜PRODUCER port[14]は、図4
7に示すoAPR[1]〜oAPR[14]に対応する。
【0202】port ビットフィールド(operand[8])
は、選択されているポートの能力を示す。port ビット
フィールドにセットされるコードの一例を図52に示
す。connected node idフィールド(operand[9]〜[1
0])は、コネクションを設定する相手(即ち、接続ノー
ド)である。
【0203】PRODUCER4602の場合はCONSUMER460
3を、CONSUMER4603の場合はproducer4602を示
す。)のノードIDを示す。CONSUMER4603に対して
は、producer4602のノードIDを、PRODUCER460
2に対してはCONSUMER4603のノードIDをCONTROLL
ER4601がセットし、通知する。
【0204】connected plug offsetフィールド(opera
nd[11]〜[16])には、接続ノードが持つAsynchronous p
lugを指定するオフセットアドレスがセットされる。con
nected port idフィールド(operand[16])には、コネ
クションに使用する接続ノードのポート番号がセットさ
れる。
【0205】connected port ビットフィールド(opera
nd[16])には、接続ノードのポートの能力を示すコード
がセットされる。connected plug idフィールド(opera
nd[17])には、コネクションに使用される接続ノードの
プラグ番号を示すコードがセットされる。
【0206】ex(exclusive)ビット(operand[18])は、
コネクションに使用するポートを他のCONTROLLER460
1がアクセスできるかどうかを指定するためのビットで
ある。例えば、このビットを「1」にセットしたコマン
ドフレームを受信した場合、PRODUCER4603、CONSUM
ER4603は、そのポートへアクセスするコマンドフレ
ームを受信すると、コマンド送信元のノードIDを調べ
て、コネクションを設定したCONTROLLER4601のノー
ドIDと異なる場合、そのコマンドに対してRejectedを
指定したレスポンスフレームを送信する。
【0207】connection countフィールド(operand[1
8])は、CONSUMER portがいくつのproducer portに接続
されているかを示す。write intervalフィールド(oper
and[19])には、PRODUCER4602がCONSUMER4603
のセグメントバッファに対して順次writeトランザクシ
ョンを行う際の最小間隔を示すコードがセットされる。
retry countフィールド(operand[19])には、シリアル
バストランザクションに失敗したときに必要となるretr
y count値がセットされる。これは、CONSUMER4603
からのレスポンスフレームでセットされる。
【0208】次に、図53を用いて、CONTROLLER460
1がPRODUCER4602、CONSUMER4603の持つ0番目
のAsynchronous plug間に、1つのコネクションを設定
するまでの手順について説明する。
【0209】ここで、CONSUMER4603、PRODUCER46
02共に0番目のAsynchronous plugを指定するオフセ
ットアドレスは、「FFFFF0001800」であ
り、producer4602は、CONSUMER4603が持つSegm
ent_Bufferの先頭アドレスから転送データを順次書き
込む機能を有し、マルチキャストコネクション機能をサ
ポートしていないものとする。
【0210】また、PRODUCER4602は、CONSUMER46
03のSegment_Bufferが固定サイズで変化しないもの
にしか対応していないとする。ここでは、それぞれのノ
ードIDが、CONTROLLER=0、PRODUCER=1、CONSUMER
=2になっているとする。
【0211】図53において、実線で示す矢印は、コマ
ンドフレーム1a,2a,3aの流れを示し、波線で示
す矢印は、レスポンスフレーム1b,2b,3bの流れ
を示す。ここで、コマンドフレーム1a,2a,3aと
レスポンスフレーム1b,2b,3bの構成は、図21
に示すFCPフレームと同様に構成され、図19に示す
Asynchronousパケットのdata field1970にセットさ
れる。
【0212】コマンドフレーム1a,2a,3aを含む
Asynchronousパケットは、CONTROLLER4601からCONS
UMER4603或いはPRODUCER4602へwriteトランザ
クションされ、レスポンスフレーム1b,2b,3bを
含むパケットは、CONSUMER4603或いはPRODUCER46
02からCONTROLLER4601へwriteトランザクション
される。
【0213】コマンドフレーム1a,2a,3aのctyp
eフィールドには、「Control」を示すコードがセットさ
れ、subunit_type、subunit_IDフィールドには、ター
ゲットであるCONSUMER4603或いはPRODUCER4602
内の所定のサブユニットを指定するコードをセットす
る。
【0214】又、レスポンスフレーム1b,2b,3b
のresponseフィールドには、コマンドを受け付けたかど
うかを示すコードがセットされる。ここでは、受け付け
られたものとして「Accepted」がセットされる場合につ
いて説明を行う。レスポンスフレーム1b,2b,3b
のsubunit_type、subunit _IDフィールドには、コマ
ンドフレームのsubunit_type、subunit_IDフィールド
と同一のコードがセットされる。
【0215】図53において、CONTROLLER4601はま
ず、CONSUMER4603に対して、ALLOCATEコマンドを送
信する(図53の1a)。このALLOCATEコマンドに含ま
れるコマンドフレームのopcode、operandフィールドに
セットされるコードの一例を図54(1a)に示す。
【0216】図54(1a)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドである
ことを示すコード「2616」がセットされる。subfunct
ionフィールド(operand[0])には、リソースの確保を
指示するためのALLOCATEコマンドのコード「0116」が
セットされる。
【0217】plug idフィールド(operand[2])には、
0番目のAsynchronous plugを確保することを示すコー
ド「A016」がセットされる。port idフィールド(ope
rand[8])には、iAPRを示すポート番号「0」がセット
される。ex(exclusive)フィールド(operand[18])に
は、他のCONTROLLER4601からのアクセスも許可する
ことを示すコード「0」がセットされる。そのほかのフ
ィールドには、ダミーデータとして全てのビットに
「1」がセットされる。
【0218】図54(1a)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONTROLLER4601からCONSUMER
4603のコマンドレジスタ(図18を参照)にwrite
トランザクションで書き込まれる。これにより、ALLOCA
TEコマンドの発行が行われる。
【0219】前記ALLOCATEコマンドを受信したCONSUMER
4603は、CONTROLLER4601に対して、このコマン
ドを受け付けたことを示すAcceptedレスポンスを送信す
る(図53の1b)。このAcceptedレスポンスに含まれ
るレスポンスフレームのopcode、operandフィールドに
セットされるコードの一例を図54(1b)に示す。
【0220】図54(1b)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドに対応
するレスポンスであることを示すコード「2616」がセ
ットされる。subfunctionフィールドには(operand
[0])、ALLOCATEコマンドに対応するレスポンスである
ことを示すコード「0116」がセットされる。
【0221】statusフィールド(operand[1])には、リ
ソースの確保ができた状態であることを示すFIXEDのコ
ード「0216」がセットされる。plug idフィールド(o
perand[2])には、0番目のAsynchronous plugが確保さ
れたことを示すコード「A01 6」がセットされる。plug
offsetフィールド(operand[3]〜[8])には、CONSUMER
4603が持つ0番目のAsynchronous plugのオフセッ
トアドレスを示すコードがセットされる。port idフィ
ールド(operand[8])には、iAPRを示すポート番号
「0」がセットされる。
【0222】port ビットフィールド(operand[8])に
は、CONSUMER4603が持つSegment_Bufferに対して
先頭アドレスからの順次書き込みにしか対応しておら
ず、マルチキャストコネクションがサポートされていな
いことを示すコード「0016」がセットされる。connec
tion countフィールド(operand[18])には、まだprodu
cer portに接続されていないことを示すコード「0
16」がセットされる。
【0223】write interval、retry countフィールド
(operand[19])には、共にダミーデータの「F16」が
セットされる。そのほかのフィールドには、ALLOCATEコ
マンドのコマンドフレームと同一の値がセットされる。
【0224】図54(1b)に示すレスポンスフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONSUMER4603からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、ALLOC
ATEコマンドに対応するレスポンスの発行が行われる。
【0225】CONSUMER4603からALLOCATEコマンドに
対するAcceptedレスポンスを受け取ると、CONTROLLER4
601は、PRODUCER4602に対して、ALLOCATE_ATTA
CHコマンドを送信する(図53の2a)。このALLOCATE
_ATTACHコマンドに含まれるコマンドフレームのopcod
e、operandフィールドにセットされるコードの一例を図
55(2a)に示す。
【0226】図55(2a)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドである
ことを示すコード「2616」がセットされる。subfunct
ionフィールド(operand[0])には、リソースの確保とC
ONSUMERへの接続を指示するためのALLOCATE_ATTACHコ
マンドのコード「0316」がセットされる。
【0227】plug idフィールド(operand[2])には、
0番目のAsynchronous plugを確保することを示すコー
ド「A016」がセットされる。port idフィールド(ope
rand[8])には、oAPR[1]を示すポート番号「1」がセッ
トされる。
【0228】connected node idフィールドには(opera
nd[9],[10])、CONSUMER4603のノードIDである
「000216」がセットされる。connected plug offse
tフィールド(operand[11]〜[16])には、CONSUMER46
03から通知されたCONSUMERが持つ0番目のplugのオフ
セットアドレスを示すコードがセットされる。
【0229】connected port idフィールド(operand[1
6])には、iAPRを示すポート番号「0」がセットされ
る。connected port ビットフィールド(operand[16])
には、CONSUMER4603から通知された受信能力を示す
コード「0016」がセットされる。
【0230】connected plug idフィールド(operand[1
7])には、CONSUMERの0番目のAsynchronous plugと接
続することを示すコード「A016」がセットされる。ex
(exclusive)フィールドには、他のCONTROLLERからのア
クセスも許可することを示すコード「0」がセットされ
る。そのほかのフィールドには、ダミーデータとして全
てのビットに「1」がセットされる。
【0231】図55(2a)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONTROLLER4601からPRODUCER
4602のコマンドレジスタ(図18を参照)にwrite
トランザクションで書き込まれる。これにより、ALLOCA
TE_ATTACHコマンドの発行が行われる。
【0232】前記ALLOCATE_ATTACHコマンドを受信した
PRODUCER4602は、CONTROLLER4601に対して、こ
のコマンドを受け付けたことを示すAcceptedレスポンス
を送信する(図53の2b)。このAcceptedレスポンス
に含まれるレスポンスフレームのopcode、operandフィ
ールドにセットされるコードの一例を図54(2b)に
示す。
【0233】図54(2b)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドに対応
するレスポンスであることを示すコード「2616」がセ
ットされる。subfunctionフィールド(operand[0])に
は、ALLOCATE_ATTACHコマンドに対応するレスポンスで
あることを示すコード「0316」がセットされる。
【0234】statusフィールド(operand[1])には、指
定されたポートが使用可能状態であることを示すACTIVE
のコード「0316」がセットされる。plug idフィール
ド(operand[2])には、0番目のAsynchronous plugが
確保されたことを示すコード「A016」がセットされ
る。
【0235】plug offsetフィールド(operand[0]〜
[8])には、PRODUCER4602が持つ0番目のAsynchron
ous plugのオフセットアドレスを示すコードがセットさ
れる。port idフィールド(operand[8])には、oAPR[1]
を示すポート番号「1」がセットされる。
【0236】port ビットフィールド(operand[8])に
は、指定されたPRODUCER4602のportは固定サイズの
Segment_Bufferに対するデータ転送にしか対応してい
ないことを示すコード「00(2進数)」がセットされ
る。そのほかのフィールドには、ALLOCATE_ATTACHコマ
ンドのコマンドフレームと同一の値がセットされる。
【0237】図55(2b)に示すレスポンスフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、PRODUCER4602からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、ALLOC
ATE_ATTACHコマンドに対応するレスポンスの発行が行
われる。
【0238】PRODUCER4602からALLOCATE_ATTACHコ
マンドに対するAcceptedレスポンスを受け取ると、CONT
ROLLER4601は、CONSUMER4603に対して、ATTACH
コマンドを送信する(図53の3a)。このATTACHコマ
ンドに含まれるコマンドフレームのopcode、operandフ
ィールドにセットされるコードの一例を図56(3a)
に示す。
【0239】図56(3a)において、opcodeフィール
ドにはAsynchronous Connection用のコマンドであるこ
とを示すコード「2616」がセットされる。subfunctio
nフィールド(operand[0])にはPRODUCER4602への
接続を指示するためのATTACHコマンドのコード「0
16」がセットされる。plug idフィールド(operand
[2])には、ALLOCATEコマンドの発行時と同じ0番目のA
synchronous plugを示すコード「A016」がセットされ
る。plug offsetフィールド(operand[3]〜[8])には、
ALLOCATEコマンドのレスポンスで通知された、CONSUMER
のplug offsetを示すコードがセットされる。
【0240】port idフィールド(operand[8])には、A
LLOCATEコマンドの発行時と同じiAPRを示すポート番号
「0」がセットされる。port ビットフィールド(opera
nd[8])には、ALLOCATEコマンドのレスポンスで通知さ
れた、CONSUMER4602の送信能力を示すコード「00
(2進数)」がセットされる。
【0241】connected node idフィールド(operand
[9],[10])には、PRODUCER4602のノードIDである
「000116」がセットされる。connected plug offse
tフィールド(operand[11]〜[16])には、PRODUCER46
02から通知されたPRODUCERが持つ0番目のAsynchrono
us plugのオフセットアドレスを示すコードがセットさ
れる。
【0242】connected port idフィールド(operand[1
6])には、oAPR[1]を示すポート番号「1」がセットさ
れる。connected port ビットフィールド(operand[1
6])には、PRODUCER4602から通知された送信能力を
示すコード「0016」がセットされる。connected plug
idフィールド(operand[17])には、PRODUCER4602
の0番目のAsynchronous plugと接続することを示すコ
ード「A016」がセットされる。
【0243】ex(exclusive)フィールド(operand[18])
には、他のCONTROLLER4601からのアクセスも許可す
ることを示すコード「0」がセットされる。そのほかの
フィールドには、ダミーデータとして全てのビットに
「1」がセットされる。
【0244】図56(3a)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONTROLLER4601からCONSUMER
4603のコマンドレジスタ(図18を参照)にwrite
トランザクションで書き込まれる。これにより、ATTACH
コマンドの発行が行われる。
【0245】前記ATTACHコマンドを受信したCONSUMER4
603は、CONTROLLER4601に対して、このコマンド
を受け付けたことを示すAcceptedレスポンスを送信する
(図53の3b)。このAcceptedレスポンスに含まれる
レスポンスフレームのopcode、operandフィールドにセ
ットされるコードの一例を図56(3b)に示す。
【0246】図56(3b)において、opcodeフィール
ドには、Asynchronous Connectionコマンドに対応する
レスポンスであることを示すコード「2616」がセット
される。subfunctionフィールド(operand[0])には、A
TTACHコマンドに対応するレスポンスであることを示す
コード「0216」がセットされる。
【0247】statusフィールド(operand[1])には、指
定されたポートが使用可能状態であることを示すACTIVE
のコード「0316」がセットされる。plug id、plug of
fset、port id、port ビットフィールド(operand[2]〜
[8])は、ATTACHコマンド内の各フィールド値が、先のA
LLOCATEレスポンスでCONTROLLER4601に通知した値
と一致していることを確認した後、ATTACHコマンドと同
じ値がセットされる。そのほかのフィールドには、ATTA
CHコマンドのコマンドフレームと同一の値がセットされ
る。
【0248】図56(3b)に示すレスポンスフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONSUMER4603からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、ATTAC
Hコマンドに対応するレスポンスの発行が行われる。
【0249】以上、図54〜図56に示すコマンドフレ
ーム、レスポンスフレームをCONSUMER4603或いはPR
ODUCER4602に送信することによって、consumer46
03、PRODUCER4602それぞれに接続ノードのnode i
d、plug id、plug offset、port idが通知され、CONSUM
ERとPRODUCERの間に1つのコネクションが設定される。
【0250】次に、コネクションが設定された後のPROD
UCER4602とCONSUMER4603との間のデータ転送手
順について説明する。上述の手順によりコネクションが
設定されると、CONSUMER4603は、Lockトランザクシ
ョンを用いて、PRODUCER4602が持つoAPRに対してCO
NSUMER4603が持つSegment_Bufferのサイズを通知
し、データ転送の開始を指示する。
【0251】転送開始を指示されたPRODUCER4602
は、PRODUCER4602が保持するフレーム(例えば、所
定のデータファイル或いはファイルリストからなる)を
CONSUMER4603が持つSegment_Bufferにwriteトラン
ザクションで書き込んでいく。フレームのデータサイズ
がSegment_Bufferのサイズよりも大きい場合、フレー
ムはSegment_Bufferのサイズのセグメントに分割され
て転送される。
【0252】フレームの最終データ、又はセグメントの
最終データを転送すると、PRODUCER4602は、Lockト
ランザクションを用いて、CONSUMER4603の持つiAPR
に対して転送したデータのサイズと次のセグメントデー
タが存在するか否か、或いはフレームの転送が終了した
か否かを通知する。
【0253】PRODUCER4602からの通知を受けたCONS
UMER4603は、Segment_Bufferに書き込まれたデー
タの処理を開始し、処理が終了するとPRODUCER4602
のoAPRに最初と同様、Segment_Bufferのサイズを通知
して、次のセグメントデータの送信開始を指示する。こ
れを1つのフレームの転送が終了するまで繰り返し実行
する。
【0254】図57は、consumer4603が持つiAPRの
フォーマットである。PRODUCER4602は、セグメント
データの送信後、送信終了を通知するためにLockトラン
ザクションを用いてこのレジスタを更新する。
【0255】図57において、r(reserved)フィールド
は、将来の拡張用のフィールドである。hb(heartbeat)
フィールドは、規定時間以上データ通信が行われない場
合にタイムアウトを起こさないためにハンドシェイクを
行うためのフィールドである。modeフィールドは、送信
したデータの状態やコネクションの状態を通知するため
のフィールドである。
【0256】このフィールドにセットされるコードの一
例を図58に示す。sc(segment count)フィールドは、
データ転送を正しく行うためのチェック用フィールドで
ある。countフィールドは、送信したセグメントデータ
のバイトサイズを通知するためのフィールドである。
【0257】図59は、PRODUCER4602が持つoAPRの
フォーマットである。CONSUMER4603は、データ受信
用のSegment_Bufferの準備が終了すると、Lockトラン
ザクションを用いてこのレジスタを更新して、セグメン
トデータの送信要求を行う。
【0258】図59において、r(reserved)フィールド
は、将来の拡張用のフィールドである。hb(heartbeat)
フィールドは、規定時間以上データ通信が行われない場
合にタイムアウトを起こさないためにハンドシェイクを
行うためのフィールドである。modeフィールドは、送信
要求やコネクションの状態を通知するためのフィールド
である。このフィールドに格納されるコードの一例を図
60に示す。
【0259】sc(segment count)フィールドは、データ
転送が正確に行われたかどうかをチェックするためのフ
ィールドである。sc(segment count)フィールドは、デ
ータ転送を正しく行うためのチェック用フィールドであ
る。countHiフィールドは、Segment_Bufferのバイトサ
イズを通知するためのフィールドである。この18ビッ
トのフィールド値の下位に6ビットの0を付加した24
ビットの値が実際のSegment_Bufferのサイズである。
【0260】runフィールドはPRODUCER4602からのC
ONSUMER4603に対するアクセスを制御するためのフ
ィールドである。この値が「0」の場合、PRODUCER46
02は、CONSUMER4602の持つiAPRへのLockトランザ
クション及びSegment_BufferへのWriteトランザクショ
ンを行うことができない。maxLoadフィールドは、CONSU
MERが1回のWriteトランザクションで受信できる最大の
ペイロードサイズを示すフィールドである。そのバイト
サイズは、以下の式によって求められる。
【0261】payloadSize = 2(maxLoad+1)
【0262】次に、図61を用いて、PRODUCER4602
とCONSUMER4603との間のデータ転送の手順について
詳細に説明する。図61において、CONSUMER4603
は、32kbのSegment_Bufferを持ち、受信できる最
大のペイロードサイズは1kbとする。又、PRODUCER4
602は、50kbのフレーム(例えば、所定のデータ
ファイル或いはファイルリストからなる)をCONSUMER4
603に転送する。ここで、上述のiAPRもoAPRも初期値
は全てのビットが「0」となっている。
【0263】まずCONSUMER4603が、PRODUCER460
2のoAPRを、Lockトランザクションを用いて更新する
(図61のUpdate oAPR)。このとき、oAPRのmodeを「S
END」にセットすることによって、PRODUCER4602に
対しての転送開始要求となる。
【0264】図61において、countHiは、CONSUMER4
603のセグメントバッファが32kbのサイズを持つ
ことを示し、maxLoadは、最大ペイロードサイズが1k
bであることを示している。又、runは1に更新され、P
RODUCER4602は、CONSUMER4603に対してトラン
ザクションを行うことが許可される。
【0265】oAPRを更新されたPRODUCER4602は、CO
NSUMER4603のSegment_Bufferに対して、writeトラ
ンザクションを用いてセグメントデータの送信を開始す
る。producer4602は、保有する50kbのフレーム
を、writeトランザクションを用いてCONSUMER4603
のSegment_Bufferの先頭アドレスから順番に1kbず
つ書き込みを行っていく(図61のWrite1〜32)。w
riteパケットを送信する毎に、writeトランザクション
に使用されるオフセットアドレスは1kbずつインクリ
メントされる。32kbのセグメントデータを送信した
後、PRODUCER4602は、CONSUMER4603のiAPRを更
新してセグメントデータの転送が終了したことを通知す
る(図61のUpdate iAPR)。
【0266】このとき、iAPRのmodeを「MORE」にセット
することによって、このセグメントデータに続いて次の
セグメントデータが送信されることを通知する。又、sc
には、CONSUMER4603によって更新されたoAPRのscと
同一の値がセットされる。countには、32kbのデー
タを送信したことを通知するデータがセットされる。
【0267】iAPRの更新が行われるとCONSUMER4603
は、前回更新したoAPRのscの値と更新されたiAPRのscの
値を比較する。この結果、同一の値である場合、正しく
データが送信されたとみなしてセグメントデータの処理
を開始する。セグメントデータの処理が終わり、Segmen
t_Bufferが使用可能な状態になった後、CONSUMER46
03は、再びPRODUCER4602のoAPRを更新する(図6
1のUpdate oAPR)。このときscの値を反転させること
によって、新しいセグメントの送信要求となる。その他
のフィールドは先にセットされた値と同様である。
【0268】oAPRを更新されたPRODUCER4602は、CO
NSUMER4603のSegment_Bufferに対して、writeトラ
ンザクションを用いて次のセグメントデータの送信を開
始する。PRODUCER4602は、送信済みの32kb以降
のデータから開始し、writeトランザクションを用いてC
ONSUMER4603のSegment_Bufferの先頭アドレスから
順番に1kbずつ書き込みを行う(図61のWrite33
〜50)。
【0269】writeパケットを送信する毎に、writeトラ
ンザクションに使用されるオフセットアドレスは1kb
ずつインクリメントされる。18kb(=50kb−3
2kb)のセグメントデータを送信した後、PRODUCER4
602は、CONSUMER4603のiAPRを更新してセグメン
トデータの送信が終了したことを通知する(図61のUp
date iAPR)。
【0270】このとき、iAPRのmodeを「LAST」にセット
することによって、このフレームの全データの送信が終
了したことを通知する。又、scには、CONSUMER4603
によって更新されたoAPRのscと同一の値がセットされ
る。countには、18kbのデータを送信したことを通
知するデータがセットされる。
【0271】iAPRを更新されたCONSUMER4603は、前
回と同様、scの値を調べた後にセグメントデータの処理
を行い、処理が終了するとPRODUCER4602のoAPRを更
新する(図61のUpdate oAPR)。
【0272】以上のシーケンスによってPRODUCER460
2からCONSUMER4603に1フレーム分のデータが転送
される。尚、PRODUCER4602が、他にも転送するフレ
ームを持っていれば、同様の手順で転送を繰り返し行
う。全てのフレームの転送が終了すると、CONTROLLER4
601は、必要に応じてPRODUCER4602とCONSUMER4
603の間に設定されたコネクションを切断する。
【0273】次に図62を用いて、コネクションを切断
するまでの処理について説明する。図62において、実
線で示す矢印は、コマンドフレーム1a,2a,3aの
流れを示し、波線で示す矢印は、レスポンスフレーム1
b,2b,3bの流れを示す。
【0274】図62において、CONTROLLER4601はま
ず、CONSUMER4603に対して、DETACHコマンドを送信
する(図62の1a)。このDETACHコマンドに含まれる
コマンドフレームのopcode、operandフィールドにセッ
トされるコードの一例を図63(1a)に示す。
【0275】図63(1a)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドである
ことを示すコード「2616」がセットされる。subfunct
ionフィールド(operand[0])には、コネクションの切
断を指示するためのDETACHコマンドのコード「0616
がセットされる。plug idフィールド(operand[2])に
は、ATTACHコマンドの発行時と同じ0番目のAsynchrono
us plugを示すコード「A016」がセットされる。
【0276】port idフィールド(operand[8])には、A
TTACHコマンドの発行時と同じiAPRを示すポート番号
「0」がセットされる。ex(exclusive)フィールド(ope
rand[18])には、他のCONTROLLERからのアクセスも許可
することを示すコード「0」がセットされる。そのほか
のフィールドには、ダミーデータとして全てのビットに
「1」がセットされる。
【0277】図63(1a)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONTROLLER4601からCONSUMER
4603のコマンドレジスタ(図18を参照)にwrite
トランザクションで書き込まれる。これにより、DETACH
コマンドの発行が行われる。
【0278】前記DETACHコマンドを受信したCONSUMER4
603は、CONTROLLER4601に対して、このコマンド
を受け付けたことを示すAcceptedレスポンスを送信する
(図62の1b)。このAcceptedレスポンスに含まれる
レスポンスフレームのopcode、operandフィールドにセ
ットされるコードの一例を図63(1b)に示す。
【0279】図63(1b)において、opcodeフィール
ドには、Asynchronous Connectionコマンドに対応する
レスポンスであることを示すコード「2616」がセット
される。subfunctionフィールド(operand[0])には、D
ETACHコマンドに対応するレスポンスであることを示す
コード「0616」がセットされる。
【0280】statusフィールド(operand[1])には、指
定されたポートが停止状態(即ち、INACTIVE)であるこ
とを示すコード「0416」がセットされる。plug idフ
ィールド(operand[2])には、コマンドフレームで指定
されたplug番号がセットされる。plug offsetフィール
ド(operand[2]〜[8])には、コマンドフレームで指定
されたAsynchronous plugのオフセットアドレスを示す
コードがセットされる。
【0281】port idフィールド(operand[8])には、
コマンドフレームで指定されたport番号がセットされ
る。port ビットフィールド(operand[8])には、コマ
ンドフレームで指定されたportの能力を示すコードがセ
ットされる。connected node id、connected plug offs
et、connected port id、connected port ビット、conn
ected plug idフィールド(operand[9]〜[17])には、
コネクションを設定していたPRODUCER4602のノード
ID、Asynchronous plugのオフセットアドレス、port
番号、portの能力、plug番号がセットされる。
【0282】connection countフィールド(operand[1
8])には、DETACHコマンドを受け取る前のconnection c
ountの値から「1」を引いた値である「0」がセットさ
れる。そのほかのフィールドには、DETACHコマンドのコ
マンドフレームと同一の値がセットされる。
【0283】図63(1b)に示すレスポンスフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONSUMER4603からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、DETAC
Hコマンドに対するレスポンスの発行が行われる。
【0284】CONSUMER4603からDETACHコマンドのレ
スポンスを受信したCONTROLLER4601は、PRODUCER4
602に対して、DETACH_RELEASE コマンドを送信する
(図63の2a)。このDETACH_RELEASE コマンドに含
まれるコマンドフレームのopcode、operandフィールド
にセットされるコードの一例を図64(2a)に示す。
【0285】図64(2a)において、opcodeフィール
ドには、Asynchronous Connectionのコマンドであるこ
とを示すコード「2616」がセットされる。subfunctio
nフィールド(operand[0])には、コネクションの切断
とリソースの解放を指示するためのDETACH_RELEASE コ
マンドのコード「0716」がセットされる。plug idフ
ィールド(operand[2])には、ALLOCATE_ATTACHコマン
ドの発行時と同じ0番目のAsynchronous plugを示すコ
ード「A016」がセットされる。
【0286】前記DETACH_RELEASE コマンドを受信した
PRODUCER4602は、CONTROLLER4601に対して、こ
のコマンドを受け付けたことを示すAcceptedレスポンス
を送信する(図62の2b)。このAcceptedレスポンス
に含まれるレスポンスフレームのopcode、operandフィ
ールドにセットされるコードの一例を図64(2b)に
示す。
【0287】図64(2b)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドに対応
するレスポンスであることを示すコード「2616」がセ
ットされる。subfunctionフィールド(operand[0])に
は、DETACH_RELEASE コマンドに対応するレスポンスで
あることを示すコード「0716」がセットされる。
【0288】statusフィールド(operand[1])には、指
定されたポートが使用されていない状態であることを示
すFREEのコード「0116」がセットされる。そのほかの
フィールドには、DETACH_RELEASE コマンドのコマンド
フレームと同一の値がセットされる。
【0289】図64(2b)に示すレスポンスフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、PRODUCER4602からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、DETAC
H_RELEASE コマンドに対するレスポンスの発行が行わ
れる。
【0290】PRODUCER4602からDETACH_RELEASE コ
マンドのレスポンスを受信したCONTROLLER4601は、
CONSUMER4603に対して、RELEASEコマンドを送信す
る(図62の3a)。このRELEASEコマンドに含まれる
コマンドフレームのopcode、operandフィールドにセッ
トされるコードの一例を図65(3a)に示す。
【0291】図65(3a)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドである
ことを示すコード「2616」がセットされる。subfunct
ionフィールド(operand[0])には、リソースの解放を
指示するためのRELEASEコマンドのコード「0516」が
セットされる。plug idフィールド(operand[2])に
は、ALLOCATEコマンドの発行時と同じ0番目のAsynchro
nous plugを示すコード「A016」がセットされる。
【0292】port idフィールド(operand[8])には、A
LLOCATEコマンドの発行時と同じiAPRを示すポート番号
「0」がセットされる。ex(exclusive)フィールド(ope
rand[18])には、他のCONTROLLERからのアクセスも許可
することを示すコード「0」がセットされる。そのほか
のフィールドには、ダミーデータとして全てのビットに
「1」がセットされる。
【0293】図65(3a)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONTROLLER4601からCONSUMER
4603のコマンドレジスタ(図18を参照)にwrite
トランザクションで書き込まれる。これにより、RELEAS
Eコマンドの発行が行われる。
【0294】前記RELEASEコマンドを受信したCONSUMER
4603は、CONTROLLER4601に対して、このコマン
ドを受け付けたことを示すAcceptedレスポンスを送信す
る(図62の3b)。このAcceptedレスポンスに含まれ
るレスポンスフレームのopcode、operandフィールドに
セットされるコードの一例を図65(3b)に示す。
【0295】図65(3b)において、opcodeフィール
ドには、Asynchronous Connection用のコマンドに対応
するレスポンスであることを示すコード「2616」がセ
ットされる。subfunctionフィールド(operand[0])に
は、RELEASEコマンドに対応するレスポンスであること
を示すコード「0516」がセットされる。
【0296】statusフィールド(operand[1])には、指
定されたポートが使用されていない状態(FREE)である
ことを示すコード「0116」がセットされる。そのほか
のフィールドには、RELEASEコマンドのコマンドフレー
ムと同一の値がセットされる。
【0297】図65(3b)に示すコマンドフレーム
は、図19に示すAsynchronousパケットのdata field1
970にセットされ、CONSUMER4603からCONTROLLER
4601のレスポンスレジスタ(図18を参照)にwrit
eトランザクションで書き込まれる。これにより、RELEA
SEコマンドに対応するレスポンスの発行が行われる。
【0298】以上、図63〜図65に示すコマンドフレ
ーム、レスポンスフレームをCONSUMER4603、或いは
PRODUCER4602に送信することによって、CONSUMER4
603とPRODUCER4602の間に設定されたコネクショ
ンの一つを解除することができる。
【0299】(他の実施例)本発明は、単一の機器から
なる装置にも適用可能であるとともに、例えば、ホスト
コンピュータ、インターフェイス機器、リーダ、プリン
タなどの複数の機器から構成されるシステムにも適用可
能である。
【0300】また、本発明は、上述した実施形態の機能
を実現するように各種のデバイスを動作させるように、
上記各種デバイスと接続された装置、或いはシステム内
のコンピュータに対し、上記実施形態の機能を実現する
ためのソフトウェアのプログラムコードを供給し、該シ
ステム、或いは装置のコンピュータ(CPUあるいはM
PU)に格納されたプログラムに従って上記各デバイス
を動作させることによって実施することもできる。
【0301】上記のごとく構成した場合、上記ソフトウ
ェアのプログラムコード自体が、上述した実施形態の機
能を実現することになり、そのプログラムコード自体、
及びそのプログラムコードをコンピュータに供給するた
めの手段は本発明を構成することになる。
【0302】例えば、上述した実施形態の機能を実現す
るプログラムコードを格納した記憶媒体は、本発明を構
成する。すなわち、フロッピーディスクやハードディス
クなどの磁気ディスク媒体、光磁気ディスクやCD―R
OMなどの光ディスク媒体、磁気テープなどのテープ媒
体、フラッシュメモリなどの不揮発性のメモリ、プログ
ラムROM、EPROM、EEPROMなどの各種RO
M、その他様々なメモリなど、上述した実施形態の機能
を実現するプログラムコードを格納した記憶媒体ならば
何でも本発明に適用できる。
【0303】また、コンピュータが供給されたプログラ
ムコードを実行することにより、上述の実施形態の機能
が実現するだけでなく、そのプログラムコードがコンピ
ュータにおいて稼働しているオペレーティングシステム
(OS)、あるいは、他のアプリケーションと共同して上
述の実施形態の機能が実現できる場合にも、係るプログ
ラムコードが本実施の形態の実施形態に含まれることは
いうまでもない。
【0304】上述の実施形態の機能が実現できる場合に
も、係るプログラムコードが本発明の実施形態に含まれ
ることはいうまでもない。さらに、供給されたプログラ
ムコードが、コンピュータの機能拡張ボードやコンピュ
ータに接続された機能拡張ユニットに備わるメモリに格
納された後に、そのプログラムコードの指示に基づい
て、その機能拡張ボードや機能拡張ユニットに備わるC
PU等が、実際の処理の一部、又は全部を行ない、その
処理によって上述した実施形態の機能が実現される場合
にも本発明の実施形態に含まれることはいうまでもな
い。尚、本発明はその精神、又は主要な特徴から逸脱す
ることなく、他の様々な形で実施することができる。
【0305】例えば、本実施例をProxy subunitは、カ
メラサブユニットやVCRサブユニットのファイルシス
テムを変換する例について説明したが、他の機能ユニッ
トに対しても適用することができる。従って、前述の各
実施例ではあらゆる点で単なる例示に過ぎず、限定的に
解釈してはならない。本発明の範囲は特許請求の範囲に
よって示すものであって、明細書本文には何等拘束され
ない。更に、特許請求の範囲の均等範囲に属する変形や
変更はすべて本発明の範囲のものである。
【0306】
【発明の効果】本発明は上述したように、ファイルシス
テムやファイル転送方法が異なる機能ユニット間であっ
ても、各機能ユニットの管理するデータファイルを簡単
に扱うことのできるデータ通信システムを提供するがで
きる。又、1つ以上の機能ユニットの夫々が管理するデ
ータファイルを一括して管理することのできるデータ通
信システムを提供することができる。
【図面の簡単な説明】
【図1】本実施例のデータ通信システムの一例を示すブ
ロック図である。
【図2】本実施例のProxy subunitの構成を説明する概
念図である。
【図3】本実施例のファイル管理方法の一例を示すブロ
ック図である。
【図4】Proxy subunitがもつファイルシステムの基本
的なデータ構造を説明する図である。
【図5】CREATE_DATEフィールドの構成例を示す図であ
る。
【図6】ACCESS_TIMEフィールドの構成例を示す図であ
る。
【図7】SIZEフィールドの構成例を示す図である。
【図8】NAMEフィールドの構成例を示す図である。
【図9】encodingフィールドにセットされるコードの一
例を示す図である。
【図10】TYPEフィールドにセットされるコードの一例
を示す図である。
【図11】IMAGE_FLAGSフィールドの構成例を示す図で
ある。
【図12】IMAGE_FLAGSフィールドの構成例を示す図で
ある。
【図13】IMAGE_WIDTHフィールドの構成例を示す図で
ある。
【図14】IMAGE_HIGHTフィールドの構成例を示す図で
ある。
【図15】IMAGE_DEPTHフィールドの構成例を示す図で
ある。
【図16】GROUP_IDフィールドの構成例を示す図で
ある。
【図17】図11に示すIMAGE_SUBTYPEフィールドにセ
ットされるコードの一例を示す図である。
【図18】Function Control Protocol(FCP)につ
いて説明する概念図である。
【図19】FCPに基づくAsynchronousパケットの構成
を示す図である。
【図20】本実施例で用いられるFCPフレームの構造
とCTSの種類を示す図である。
【図21】本実施例で用いられるコマンドフレーム、レ
スポンスフレームの構造を示す図である。
【図22】図21に示すコマンドタイプ(ctype)にセ
ットされるコードの一例を示す図である。
【図23】図21に示すサブユニットタイプ(subunit
_type)にセットされるコードの一例を示す図である。
【図24】図21に示すレスポンスタイプ(response)
にセットされるコードの一例を示す図である。
【図25】本実施例のProxy subunitを遠隔制御するた
めのコマンドの一例を示す図である。
【図26】CHANGE DIRコントロールコマンドの構成を示
す図である。
【図27】FILE NUMBERステータスコマンドの構成を示
す図である。
【図28】FILE NUMBERステータスコマンドに対するレ
スポンスの構成を示す図である。
【図29】SEND ASYNCH FILEコマンドの構成を示す図で
ある。
【図30】Subfunctionフィールドにセットされるコー
ドの一例を示す図である。
【図31】Attributeフィールドにセットされるコード
の一例を示す図である。
【図32】SEND ASYNCH FILEコマンドに対するレスポン
スの構成を示す図である。
【図33】Statusフィールドにセットされるコードの一
例を示す図である。
【図34】SubFrameデータのフォーマット例を示す図で
ある。
【図35】frame_typeフィールドにセットされるコー
ドの一例を示す図である。
【図36】sub_typeフィールドにセットされるコード
の一例を示す図である。
【図37】本実施例のProxy subunitから転送されるフ
ァイルリストのフォーマット例を示す図である。
【図38】本実施例のProxy subunitから転送されるデ
ータファイルのフォーマット例を示す図である。
【図39】本実施例のProxy subunitによるデータファ
イルの転送手順について説明する図である。
【図40】本実施例におけるコネクションの設定手順を
示す図である。
【図41】本実施例のProxy subunitが使用するSegment
_Bufferに書き込まれる制御コマンドのフォーマットを
示す図である。
【図42】図41に示すfunctionフィールドにセットさ
れるコードの一例を示す図である。
【図43】図41のfunctionフィールドがSEND_FILE_
LISTとなるフレームのフォーマット例を示す図である。
【図44】図41のfunctionフィールドがSEND_FILE_
DATAとなるフレームのフォーマット例を示す図である。
【図45】本実施例のProxy subunitによるデータファ
イルの転送手順について説明する図である。
【図46】Asynchronous Connectionの基本構成を説明
する図である。
【図47】Asynchronous Port Registerの構成を示す図
である。
【図48】各ノードの有するAsynchronous Port Regist
erの一例を示す図である。
【図49】Asynchronous Connectionにおいて用いられ
るコマンドフレームとそれに対応するレスポンスフレー
ムの構成を説明する図である。
【図50】図49に示すplug idフィールド、connected
plug idフィールドにセットされるコードの一例を示す
図である。
【図51】port idフィールド、connected port idフィ
ールドにセットされるコードの一例を示す図である。
【図52】port ビットフィールド、connected port ビ
ットフィールドにセットされるコードの一例を示す図で
ある。
【図53】コネクションの設定手順を説明する図であ
る。
【図54】ALLOCATEコマンドのコマンドフレームとそれ
に対応するレスポンスフレームにセットされるコードの
一例を示す図である。
【図55】ALLOCATE_ATTACHコマンドのコマンドフレー
ムとそれに対応するレスポンスフレームにセットされる
コードの一例を示す図である。
【図56】ATTACHコマンドのコマンドフレームとそれに
対応するレスポンスフレームにセットされるコードの一
例を示す図である。
【図57】CONSUMERの有するiAPRの構成を説明する図で
ある。
【図58】iAPRのmodeフィールドにセットされるコード
の一例を示す図である。
【図59】PRODUCERの有するoAPRの構成を説明する図で
ある。
【図60】oAPRのmodeフィールドにセットされるコード
の一例を示す図である。
【図61】PRODUCERとCONSUMERとの間におけるデータ転
送手順を説明する図である。
【図62】コネクションの解除手順を説明する図であ
る。
【図63】DETACHコマンドのコマンドフレームとそれに
対応するレスポンスフレームにセットされるコードの一
例を示す図である。
【図64】DETACH_RELEASEコマンドのコマンドフレー
ムとそれに対応するレスポンスフレームにセットされる
コードの一例を示す図である。
【図65】RELEASEコマンドのコマンドフレームとそれ
に対応するレスポンスフレームにセットされるコードの
一例を示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小野 太刀雄 東京都大田区下丸子3丁目30番2号 キヤ ノン株式会社内 (72)発明者 波多江 真一 東京都大田区下丸子3丁目30番2号 キヤ ノン株式会社内

Claims (50)

    【特許請求の範囲】
  1. 【請求項1】 所定の機能を制御する第1のユニットが
    扱うファイルを、前記第1のユニットの有する管理方法
    とは別の管理方法で管理するファイル管理手段を有する
    第1の機器と、 前記第1のユニットとは異なる第2のユニットを有し、
    前記ファイル管理手段を制御する第1の制御信号と第2
    の制御信号とを伝送する第2の機器とを有し、 前記ファイル管理手段は、前記第1の制御信号を受信し
    た場合には、前記第2のユニットが要求するファイルの
    付加情報を前記第2の機器に伝送するように制御し、前
    記第2の制御信号を受信した場合には、前記第2のユニ
    ットが要求するファイルを前記第2の機器に伝送するよ
    うに制御することを特徴とするデータ通信システム。
  2. 【請求項2】 前記ファイル管理手段は、前記ファイル
    を階層的に管理することを特徴とする請求項1に記載の
    データ通信システム。
  3. 【請求項3】 前記ファイル管理手段は、前記ファイル
    の付加情報を所定のデータ構造に基づいて管理すること
    を特徴とする請求項1または2に記載のデータ通信シス
    テム。
  4. 【請求項4】 前記ファイル管理手段は、前記第1の制
    御信号に基づいて、所定の種類のファイルの付加情報を
    伝送するように制御することを特徴とする請求項1〜3
    の何れか1項に記載のデータ通信システム。
  5. 【請求項5】 前記ファイル管理手段は、前記第1のユ
    ニットとは異なる機能を管理する第3のユニットが扱う
    ファイルを、前記第1のユニットが扱うファイルととも
    に管理することを特徴とする請求項1〜4の何れか1項
    に記載のデータ通信システム。
  6. 【請求項6】 前記第1の機器は、前記ファイルの付加
    情報又は前記ファイルから少なくともフレームを一つ生
    成し、前記フレームを順次Asynchronous転送することを
    特徴とする請求項1〜5の何れか1項に記載のデータ通
    信システム。
  7. 【請求項7】 前記第2のユニットは、前記第1のユニ
    ットとは異なる機能を管理することを特徴とする請求項
    1〜6の何れか1項に記載のデータ通信システム。
  8. 【請求項8】 前記第1のユニットは、画像ファイルを
    扱うことを特徴とする請求項1〜7の何れか1項に記載
    のデータ通信システム。
  9. 【請求項9】 前記第1のユニットは、撮像機能を制御
    するユニットであることを特徴とする請求項1〜8の何
    れか1項に記載のデータ通信システム。
  10. 【請求項10】 前記第1のユニットは、画像ファイル
    の記録再生を制御するユニットであることを特徴とする
    請求項1〜9の何れか1項に記載のデータ通信システ
    ム。
  11. 【請求項11】 所定の機能を制御する第1のユニット
    が扱うファイルを、前記第1のユニットの有する管理方
    法とは別の管理方法で管理するファイル管理手段と、 前記第1のユニットとは異なる第2のユニットを有する
    外部機器から伝送された第1の制御信号と第2の制御信
    号とを受信する受信手段とを有し、 前記ファイル管理手段は、前記第1の制御信号を受信し
    た場合には、前記第2のユニットが要求するファイルの
    付加情報を前記第2の機器に伝送するように制御し、前
    記第2の制御信号を受信した場合には、前記第2のユニ
    ットが要求するファイルを前記外部機器に伝送するよう
    に制御することを特徴とするデータ通信装置。
  12. 【請求項12】 前記ファイル管理手段は、前記ファイ
    ルを階層的に管理することを特徴とする請求項11に記
    載のデータ通信装置。
  13. 【請求項13】 前記ファイル管理手段は、前記ファイ
    ルの付加情報を所定のデータ構造に基づいて管理するこ
    とを特徴とする請求項11または12に記載のデータ通
    信装置。
  14. 【請求項14】 前記ファイル管理手段は、前記第1の
    制御信号に基づいて、所定の種類のファイルの付加情報
    を伝送するように制御することを特徴とする請求項11
    〜13の何れか1項に記載のデータ通信装置。
  15. 【請求項15】 前記ファイル管理手段は、前記第1の
    ユニットとは異なる機能を管理する第3のユニットが扱
    うファイルを、前記第1のユニットが扱うファイルとと
    もに管理することを特徴とする請求項11〜14の何れ
    か1項に記載のデータ通信装置。
  16. 【請求項16】 前記ファイルの付加情報又は前記ファ
    イルから少なくともフレームを一つ生成し、前記フレー
    ムを順次Asynchronous転送することを特徴とする請求項
    11〜15の何れか1項に記載のデータ通信装置。
  17. 【請求項17】 前記第2のユニットは、前記第1のユ
    ニットとは異なる機能を管理することを特徴とする請求
    項11〜16の何れか1項に記載のデータ通信装置。
  18. 【請求項18】 前記第1のユニットは、画像ファイル
    を扱うことを特徴とする請求項11〜17の何れか1項
    に記載のデータ通信装置。
  19. 【請求項19】 前記第1のユニットは、撮像機能を制
    御するユニットであることを特徴とする請求項11〜1
    8の何れか1項に記載のデータ通信装置。
  20. 【請求項20】 前記第1のユニットは、画像ファイル
    の記録再生を制御するユニットであることを特徴とする
    請求項11〜19の何れか1項に記載のデータ通信装
    置。
  21. 【請求項21】 所定の機能を制御する第1のユニット
    が扱うファイルを、前記第1のユニットの有する管理方
    法とは別の管理方法で管理する処理と、 前記第1のユニットとは異なる第2のユニットを有する
    外部機器から伝送された第1の制御信号と第2の制御信
    号とを受信する処理と、 前記第1の制御信号を受信した場合には、前記第2のユ
    ニットが要求するファイルの付加情報を前記外部機器に
    伝送するように制御する処理と、 前記第2の制御信号を受信した場合には、前記第2のユ
    ニットが要求するファイルを前記外部機器に伝送するよ
    うに制御する処理とを行うことを特徴とするファイル管
    理方法。
  22. 【請求項22】 更に、前記ファイルを階層的に管理す
    る処理を行うことを特徴とする請求項21に記載のファ
    イル管理方法。
  23. 【請求項23】 更に、前記ファイルの付加情報を所定
    のデータ構造に基づいて管理する処理を行うことを特徴
    とする請求項21または22に記載のファイル管理方
    法。
  24. 【請求項24】 前記第1の制御信号に基づいて、所定
    の種類のファイルの付加情報を伝送するように制御する
    ことを特徴とする請求項21〜23の何れか1項に記載
    のファイル管理方法。
  25. 【請求項25】 更に、前記第1のユニットとは異なる
    機能を管理する第3のユニットが扱うファイルを、第1
    のユニットが扱うファイルとともに管理する処理を行う
    ことを特徴とする請求項21〜24の何れか1項に記載
    のファイル管理方法。
  26. 【請求項26】 前記ファイルの付加情報又は前記ファ
    イルから少なくともフレームを一つ生成し、前記フレー
    ムを順次Asynchronous転送することを特徴とする請求項
    21〜25の何れか1項に記載のファイル管理方法。
  27. 【請求項27】 前記第2のユニットは、前記第1のユ
    ニットとは異なる機能を管理することを特徴とする請求
    項21〜26の何れか1項に記載のファイル管理方法。
  28. 【請求項28】 前記第1のユニットは、画像ファイル
    を扱うことを特徴とする請求項21〜27の何れか1項
    に記載のファイル管理方法。
  29. 【請求項29】 前記第1のユニットは、撮像機能を制
    御するユニットであることを特徴とする請求項21〜2
    8の何れか1項に記載のファイル管理方法。
  30. 【請求項30】 前記第1のユニットは、画像ファイル
    の記録再生を制御するユニットであることを特徴とする
    請求項21〜29の何れか1項に記載のファイル管理方
    法。
  31. 【請求項31】 バス型ネットワーク上に設定された論
    理的な接続関係を介してファイルの転送を行うソースノ
    ードと、 前記ソースノードから転送されたファイルを前記論理的
    な接続関係を介して受信するデスティネーションノード
    とを有し、 前記ソースノードは、複数のファイルを一括して管理す
    るファイル管理手段を有し、前記デスティネーションノ
    ードは、該ファイル管理手段を遠隔操作して所望のファ
    イルの転送を要求することを特徴とするデータ通信シス
    テム。
  32. 【請求項32】 前記ファイル管理手段は、前記ファイ
    ルと共に、該ファイルの属性情報を管理することを特徴
    とする請求項31に記載のデータ通信システム。
  33. 【請求項33】 前記ファイルの属性情報は、ファイル
    番号、ファイルの種類、ファイルの作成日時、ファイル
    の最終アクセス日時、ファイルのデータサイズ、ファイ
    ルの名前の少なくとも1つを含むことを特徴とする請求
    項32に記載のデータ通信システム。
  34. 【請求項34】 前記ファイル管理手段は、前記ファイ
    ルを階層的に管理することを特徴とする請求項31〜3
    3の何れか1項に記載のデータ通信システム。
  35. 【請求項35】 前記ファイルは、画像ファイル、音声
    ファイル、動画像ファイル、テキストファイル、各種の
    アプリケーションに依存するデータファイルの少なくと
    も1つを含むことを特徴とする請求項31〜34の何れ
    か1項に記載のデータ通信システム。
  36. 【請求項36】 前記ファイルは、一つ以上のセグメン
    トに分割され、少なくとも1回の非同期転送により順次
    転送されることを特徴とする請求項31〜35の何れか
    1項に記載のデータ通信システム。
  37. 【請求項37】 前記デスティネーションノードは、前
    記ファイル管理手段を遠隔操作して、所定の階層にある
    全てのファイルの属性情報の転送を要求することを特徴
    とする請求項31〜36の何れか1項に記載のデータ通
    信システム。
  38. 【請求項38】 前記デスティネーションノードは、前
    記ファイル管理手段を遠隔操作して特定種類のファイル
    の属性情報の転送を要求することを特徴とする請求項3
    1〜36の何れか1項に記載のデータ通信システム。
  39. 【請求項39】 前記ファイルの属性情報は、一つ以上
    のセグメントに分割され、少なくとも1回の非同期転送
    により順次転送されることを特徴とする請求項37また
    は38に記載のデータ通信システム。
  40. 【請求項40】 前記バス型ネットワークは、IEEE
    1394−1995規格に準拠したネットワークである
    ことを特徴とする請求項31〜39の何れか1項に記載
    のデータ通信システム。
  41. 【請求項41】 前記ファイル又はファイルの属性情報
    は、AsynchronousConnectionに準拠した通信プロトコル
    に基づいて転送されることを特徴とする請求項31〜4
    0の何れか1項に記載のデータ通信システム。
  42. 【請求項42】 バス型ネットワークを介してファイル
    の転送を行うソースノードと、 前記ソースノードから転送されたファイルを前記バス型
    ネットワークを介して受信するデスティネーションノー
    ドと、 前記ソースノードと前記デスティネーションノードとの
    間に論理的な接続関係を設定するコントローラとを有
    し、 前記ソースノードは、複数のファイルを階層的に管理す
    るファイル管理手段を有し、前記デスティネーションノ
    ードは、該ファイル管理手段を遠隔操作して所望のファ
    イルの転送を要求する通信手段を有することを特徴とす
    るデータ通信システム。
  43. 【請求項43】 複数種類の機能ユニットからなるソー
    スノードと、 前記複数種類の機能ユニットの一つを扱うファイル情報
    を要求するデスティネーションノードとを有し、 前記ソースノードは、各機能ユニットが扱うファイル情
    報を一括して管理する機能ユニットを用いて前記デステ
    ィネーションノードの要求するファイル情報を提供する
    ことを特徴とするデータ通信システム。
  44. 【請求項44】 複数種類の機能ユニットと、各機能ユ
    ニットが扱うファイル情報を一括して管理するファイル
    ユニットとを有するソースノードと、 前記複数種類の機能ユニットの一つが扱うファイル情報
    を要求するデスティネーションノードと、 前記ソースノードと前記デスティネーションノードとの
    間に論理的な接続関係を設定するコントローラとを有
    し、 前記ソースノードのファイルユニットは、前記論理的な
    接続関係を介し、前記デスティネーションノードの要求
    するファイル情報を提供することを特徴とするデータ通
    信システム。
  45. 【請求項45】 バス型ネットワーク上に設定された論
    理的な接続関係を介してファイルの転送を行う通信手段
    と、複数のファイルを一括して管理するファイル管理手
    段とを有し、 前記ファイル管理手段は、デスティネーションノードの
    遠隔操作に応じて該デスティネーションノードの要求す
    るファイルを転送することを特徴とするデータ通信装
    置。
  46. 【請求項46】 複数種類の機能ユニットと、 前記複数種類の機能ユニットが扱うファイル情報を一括
    して管理するファイル管理ユニットとを有し、 前記ファイル管理ユニットは、デスティネーションノー
    ドの要求するファイル情報を提供することを特徴とする
    データ通信装置。
  47. 【請求項47】 前記ファイル管理ユニットは、前記デ
    スティネーションノードとの間に設定された論理的な接
    続関係を介して該デスティネーションノードの要求する
    ファイル情報を提供することを特徴とする請求項46に
    記載のデータ通信装置。
  48. 【請求項48】 複数種類の機能ユニットからなるソー
    スノードと、前記複数種類の機能ユニットの一つが扱う
    ファイル情報を要求するデスティネーションノードとか
    らなるシステムにおけるファイル管理方法であって、 前記ソースノードは、各機能ユニットが扱うファイル情
    報を一括して管理する機能ユニットと用いて、前記デス
    ティネーションノードの要求するファイル情報を提供す
    ることを特徴とするファイル管理方法。
  49. 【請求項49】 複数種類の機能ユニットと、各機能ユ
    ニットが扱うファイル情報を一括して管理するファイル
    ユニットとを有するソースノードと、 前記複数種類の機能ユニットの一つが扱うファイル情報
    を要求するデスティネーションノードと、前記ソースノ
    ードと前記デスティネーションノードとの間に論理的な
    接続関係を設定するコントローラとからなるシステムに
    おけるファイル管理方法であって、 前記ソースノードのファイルユニットは、前記論理的な
    接続関係を介し、前記デスティネーションノードの要求
    するファイル情報を提供することを特徴とするファイル
    管理方法。
  50. 【請求項50】 所定の機能を制御する第1のユニット
    が扱うファイルを、前記第1のユニットの有する管理方
    法とは別の管理方法で管理するステップと、 前記第1のユニットとは異なる第2のユニットを有する
    外部機器から伝送された第1の制御信号と第2の制御信
    号とを受信するステップと、 前記第1の制御信号を受信した場合には、前記第2のユ
    ニットが要求するファイルの付加情報を前記外部機器に
    伝送するように制御するステップと、 前記第2の制御信号を受信した場合には、前記第2のユ
    ニットが要求するファイルを前記外部機器に伝送するよ
    うに制御するステップとからなるプログラムをコンピュ
    ータ読み出し可能に記録したことを特徴とする記憶媒
    体。
JP2000028327A 1999-02-09 2000-02-04 データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体 Pending JP2000299710A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000028327A JP2000299710A (ja) 1999-02-09 2000-02-04 データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3204899 1999-02-09
JP11-32048 1999-02-09
JP2000028327A JP2000299710A (ja) 1999-02-09 2000-02-04 データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2000299710A true JP2000299710A (ja) 2000-10-24

Family

ID=26370570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000028327A Pending JP2000299710A (ja) 1999-02-09 2000-02-04 データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2000299710A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199615A (ja) * 2009-04-28 2009-09-03 Canon Inc データ保管システムへのデータアップロード方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199615A (ja) * 2009-04-28 2009-09-03 Canon Inc データ保管システムへのデータアップロード方法

Similar Documents

Publication Publication Date Title
KR100294960B1 (ko) 데이타 통신 시스템, 데이타 통신 방법, 및 데이타 통신 장치
KR100570326B1 (ko) 전자 통신을 위한 방법 및 시스템
US6334161B1 (en) System for reverse data transmission flow control wherein command is transferred by asynchronous transfer mode while data is transferred by isochronous transfer mode
US6711637B2 (en) Communication apparatus, image processing apparatus, communication system, communication method, image processing method and storage medium
US6282597B1 (en) Information processing apparatus, control method, and transmission medium using thin protocol that responds to A/V control commands
US20040186928A1 (en) Data transmission apparatus, system and method, and image processing apparatus
EP0939529B1 (en) Destination node, data communication system, method of controlling a destination node and method of operating a data communication system
TW498207B (en) Data transfer control device and electronic apparatus
US7616839B2 (en) Image data transfer system, method of generating image data file, and computer program
JP3780776B2 (ja) データ転送制御装置及び電子機器
JP4181688B2 (ja) データ通信システム及びデータ通信装置
US6678769B1 (en) Control apparatus and method for managing a logical connection between source and destination nodes
EP1033658B1 (en) Communication apparatus with means for allocating alternate designation information to each function unit, and communication system with two such communication apparatus
JP2003140630A (ja) 表示装置及び表示システム
JP2000299710A (ja) データ通信システム、データ通信装置、ファイル管理方法及び記憶媒体
JP2000253463A (ja) ネットワーク制御システム及びこのネットワーク制御システムに用いるターゲット、コントローラ、並びにコンシューマ
JP4046846B2 (ja) データ通信システム及びデータ通信装置
EP1028383A2 (en) Data communication system, device, method and storage medium
JP2001136185A (ja) 伝送方法、伝送システム及び伝送制御装置
JPH11252153A (ja) データ通信システム、データ通信装置及びデータ通信方法
JP4143205B2 (ja) データ通信システム
JP3977051B2 (ja) 通信装置及び制御方法
JP2005123739A (ja) 通信システム、端末装置、通信システムの制御方法、記録媒体およびプログラム
JPH11313091A (ja) データ通信システム、装置及び方法並びに記憶媒体
JPH11261608A (ja) データ通信システム、データ通信装置、データ通信方法及び記憶媒体