(57)【要約】【課題】データの送受信をできるだけ圧縮でータで行なう。【解決手段】送信元１０１では、送信先１０２の符号化方式が、送信元の符号化方式と一致しているかデータの送信前に調べ、一致していれば圧縮データを送り、一致していなければ復号してからデータを送信する。あるいは、送信先１０２がプログラムに応じて復号方式が変えられるものであれば、送信元１０１では、データ送信に先立って復号プログラムを送信先１０２におくり、その後圧縮データを送信する。【選択図】図１
2006050653.tif 000002
【特許請求の範囲】
【請求項１】
所定の方式でデータを符号化する符号化手段と、
符号化されたままの状態でデータを送信する第１のモードと、符号化前のデータ又は符号化後のデータを混在した通信形態で送信する第２のモードとのいずれかによりデータを通信先のノードに送信する、アイソクロナス転送及びアシンクロナス転送とが可能な送信手段と、
前記符号化手段による符号化方式が通信先のノードが備える復号手段に対応する符号化方式である場合には第１のモードで、対応しない場合には第２のモードでデータを送信するように前記送信手段を制御する制御手段と
を備えることを特徴とするデータ通信装置。
【請求項２】
前記送信手段は、アイソクロナス転送により前記データを送信する手段であることを特徴とする請求項１に記載のデータ通信装置。
【請求項３】
前記データは画像データであることを特徴とする請求項１に記載のデータ通信装置。
【請求項４】
前記制御手段は、アイソクロナス転送による通信によって前記通信先のノードが前記符号化手段による符号化方式に対応しているかを判定することを特徴とする請求項１に記載のデータ通信装置。
【請求項５】
前記送信手段は、ＩＥＥＥ１３９４規格に適合した送信を行なう手段であることを特徴とする請求項１に記載のデータ通信装置。
【請求項６】
前記制御手段は、シンクロナス転送による通信による適正な応答がない場合には、前記通信先のノードが前記符号化手段による符号化方式に対応していると判定することを特徴とする請求項４に記載のデータ通信装置。
【請求項７】
前記適正な返答は、所定期間内の返答であることを特徴とする請求項６に記載のデータ通信装置。
【請求項８】
前記送信手段は、通信先のノードが復号手段を備えていない場合には、第２のモードでデータを送信することを特徴とする請求項１に記載のデータ通信装置。
【請求項９】
通信先のノードから、該ノードが備える復号手段の有無と、復号手段がある場合には、その構成や圧縮方式などの情報を受信する受信手段を更に備え、
前記第１のモードと第２のモードといずれで送信するかは、前記受信手段により受信した情報に基づくことを特徴とする請求項１または２に記載のデータ通信装置。
【請求項１０】
所定の方式でデータを符号化する符号化手段と、
該符号化手段により符号化されたデータを復号する復号手順を含むプログラム情報を送信する第１送信手段と、
前記符号化手段により符号化されたデータを送信する、アイソクロナス転送とアシンクロナス転送とが可能な第２の送信手段と
を備えることを特徴とするデータ通信装置。
【請求項１１】
通信先のノードから、該ノードが備える復号手段についての、構成や圧縮方式などを示す情報を受信する受信手段を更に備え、
前記第１の送信手段は、前記受信手段により受信した情報に基づいてプログラム情報を送信することを特徴とする請求項１０に記載のデータ通信装置。
【請求項１２】
符号化された映像データを復号してから送信する第３の送信手段を更に備え、
通信先のノードが、前記符号化手段により符号化されたデータを復号する復号手段を備えている場合には前記第２の送信手段により符号化データを送信し、
通信先のノードが、プログラム情報を受信すれば前記符号化手段により符号化されたデータを復号できる場合には、前記送信手段によりプログラム情報を送信するとともに前記第２の送信手段により符号化データを送信し、
通信先のノードが、前記符号化手段により符号化されたデータを復号できない場合には、前記第３の送信手段によりデータを送信することを特徴とする請求項１０に記載のデータ通信装置。
【請求項１３】
映像データを撮影する撮像手段を更に備えることを特徴とする請求項１乃至１２のいずれかに記載のデータ通信装置。
【請求項１４】
符号化手段を備えた第１のノードと、第２のノードを接続してなるデータ通信システムであって、
前記第１のノードは、所定の方式でデータを符号化する符号化手段と、
符号化されたままの状態でデータを送信する第１のモードと、符号化前のデータ又は符号化後のデータを混在した通信形態で送信する第２のモードとのいずれかによりデータを第２のノードに送信する、アイソクロナス転送及びアシンクロナス転送とが可能な送信手段と、
前記符号化手段による符号化方式が第２のノードが備える復号手段に対応する符号化方式である場合には第１のモードで、対応しない場合には第２のモードでデータを第２のモードに送信するように前記送信手段を制御する制御手段と
を備えることを特徴とするデータ通信システム。
【請求項１５】
前記送信手段は、アイソクロナス転送により前記データを送信する手段であることを特徴とする請求項１４に記載のデータ通信システム。
【請求項１６】
前記データは画像データであることを特徴とする請求項１４に記載のデータ通信システム。
【請求項１７】
前記制御手段は、アイソクロナス転送による通信によって前記通信先のノードが前記符号化手段による符号化方式に対応しているかを判定することを特徴とする請求項１４に記載のデータ通信システム。
【請求項１８】
前記送信手段は、ＩＥＥＥ１３９４規格に適合した送信を行なう手段であることを特徴とする請求項１４に記載のデータ通信システム。
【請求項１９】
前記制御手段は、シンクロナス転送による通信による適正な応答がない場合には、前記通信先のノードが前記符号化手段による符号化方式に対応していると判定することを特徴とする請求項１７に記載のデータ通信システム。
【請求項２０】
前記適正な返答は、所定期間内の返答であることを特徴とする請求項１９に記載のデータ通信システム。
【請求項２１】
前記第１のノードは、第２のノードにデータを送信する前に、第２のノードに対して、前記符号化手段により符号化されたデータを復号する手段を備えているか問い合わせ、前記第２のノードからの応答に基づいて、データを符号化したまま送信するか、復号して送信するかを決定することを特徴とする請求項１４に記載にデータ通信システム。
【請求項２２】
符号化手段と該符号化手段で符号化されたデータを復号するためのプログラム情報を記憶する記憶手段とを備えた第１のノードと、プログラム情報に基づいて符号化データを復号する第２のノードとを接続してなるデータ通信システムであって、
前記第１のノードは、所定の方式でデータを符号化する符号化手段と、
符号化されたままの状態でデータを送信する第１のモードと、符号化前のデータ又は符号化後のデータを混在した通信形態で送信する第２のモードとのいずれかによりデータを第２のノードに送信する、アイソクロナス転送及びアシンクロナス転送とが可能な送信手段と、
前記符号化手段による符号化方式が第２のノードが備える復号手段に対応する符号化方式である場合には第１のモードで、対応しない場合には第２のモードでデータを第２のモードに送信するように前記送信手段を制御する制御手段と
を備えることを特徴とするデータ通信システム。
【請求項２３】
前記第１のノードは、第２のノードにデータを送信する前に、第２のノードに対して、前記符号化手段により符号化されたデータを復号するための往路グラム情報を有しているか問い合わせ、前記第２のノードからの応答に基づいて、前記プログラム情報をデータとともに送信するか否かを決定することを特徴とする請求項２２に記載にデータ通信システム。
【請求項２４】
前記第１のノードは画像を撮影する撮像手段を更に備え、
前記第２のノードは受信したデータを印刷出力する出力手段を更に備えることを特徴とする請求項２２乃至２３のいずれかに記載のデータ通信システム。
【請求項２５】
所定の方式で符号化されたデータを送信するデータ通信方法であって、
符号化されたデータを復号する復号手順を含むプログラム情報を送信する第１の送信工程と、
符号化されたデータを送信する、アイソクロナス転送とアシンクロナス転送とが可能な第２の送信工程と
を備えることを特徴とするデータ通信方法。
【請求項２６】
所定の方式で符号化されたデータを送信するデータ通信プログラムを記憶する記憶媒体であって、
前記プログラムは、符号化されたデータを復号する復号手順を含むプログラム情報を送信する第１の送信工程のコードと、
符号化されたデータを送信する、アイソクロナス転送とアシンクロナス転送とが可能な第２の送信工程のコードと
を備えることを特徴とする記憶媒体。
【請求項２７】
所定の方式で符号化されたデータを送信するデータ通信プログラムを記憶する記憶媒体であって、
前記プログラムは、通信先ノードから、該ノードが、前記所定方式で符号化されたデータを復号するためのプログラム情報を有しているか否かを示す情報を獲得し、有している場合には、符号化されたデータをそのまま送信し、有していない場合には、符号化されたデータと、符号化されたデータを復号するためのプログラム情報とを送信するコードを含むことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば制御信号とデータとを混在させて通信することが可能なデータ通信バス等を用いて他の電子機器（以下、機器）間と接続され、機器間でデータ通信を行うデータ通信装置及び方法、データ通信システム及び記憶媒体に関する。
【背景技術】
【０００２】
パーソナルコンピュータ周辺機器の中で、最も利用頻度が高いのはハードディスクやプリンタであり、これらの周辺装置は小型コンピュータ用汎用型インターフェイスで代表的なデジタルインターフェイス（以下、デジタルＩ／Ｆ）であるＳＣＳＩ等をもってパーソナルコンピュータ間との接続がなされ、データ通信が行われている。
【０００３】
また、デジタルカメラやデジタルビデオカメラといった記録再生装置も、パーソナルコンピュータ（以下、ＰＣ）への画像入力に用いられる周辺装置の１つである。近年、デジタルカメラやビデオカメラで撮影した静止画や動画といった映像をＰＣへ取り込み、ハードディスクに記憶したり、またはＰＣで編集した後、プリンタでカラープリントするといった分野の技術が進んでおり、ユーザーも増えている。
【０００４】
取り込んだ画像データをＰＣからプリンタやハードディスクへ出力する際などに、上記のＳＣＳＩ等を経由してデータ通信がされる。そのようなとき画像データのようにデータ量の多い情報を送るためにも、こういったデジタルＩ／Ｆには転送データレートの高い、かつ汎用性のあるものが必要とされる。
【０００５】
図３に、従来の例としてデジタルカメラ、ＰＣ及びプリンタを接続したときのブロック図を示す。
【０００６】
図３において、31はデジタルカメラ、32はパーソナルコンピュータ（ＰＣ）、33はプリンタである。さらに、34はデジタルカメラの記録部であるメモリ、35は画像データの復号化回路、36は画像処理部、37はＤ／Ａコンバータ、38は表示部であるビューファインダ（ＥＶＦ）、39はデジタルカメラのデジタルＩ／Ｏ部、40はＰＣのデジタルカメラとのデジタルＩ／Ｏ部、41はキーボードやマウスなどの操作部、42は画像データの復号化回路、43はディスプレイ、44はハードディスク装置、45はＲＡＭ等のメモリ、46は演算処理部のＭＰＵ、47はＰＣＩバス、48はデジタルＩ／ＦのＳＣＳＩインタフェース（ボード）、49はＰＣ32とＳＣＳＩケーブルで繋がったプリンタ33のＳＣＳＩインターフェイス、50はメモリ、51はプリンタヘッド、52はプリンタ制御部のプリンタコントローラ、53はドライバである。
【０００７】
デジタルカメラ 31で撮像した画像をＰＣ32に取り込み、またＰＣ32からプリンタ33へ出力するときの手順の説明を行う。デジタルカメラ31のメモリ34に記憶されている画像データが読みだされると、読み出された画像データのうち一方は復号化回路35で復号化され、画像処理回路36で表示するための画像処理がなされ、Ｄ／Ａコンバータ37を経て、ＥＶＦ38で表示される。また一方では、外部出力するためにデジタルＩ／Ｏ部39から、ケーブルを伝わってＰＣ32のデジタルＩ／Ｏ部40へ至る。
【０００８】
ＰＣ32内では、ＰＣＩバス47を相互伝送のバスとして、デジタルＩ／Ｏ部40から入力した画像データは、記憶する場合はハードディスク44で記憶され、表示する場合は復号化回路42で復号化された後、メモリ45で表示画像としてメモリされて、ディスプレイ43 でアナログ信号に変換されてから表示される。ＰＣ32での編集時等の操作入力は操作部41から行い、ＰＣ32全体の処理はＭＰＵ46で行う。
【０００９】
また、画像をプリント出力する際は、ＰＣ32内のＳＣＳＩインターフェイスボード48から画像データをＳＣＳＩケーブルにのせて伝送し、プリンタ33側のＳＣＳＩインターフェイス49で受信し、メモリ50でプリント画像として形成され、プリンタコントローラ52の制御でプリンタヘッド51とドライバ53が動作して、メモリ50から読み出したプリント画像データをプリントする。
【００１０】
以上が、従来の画像データをＰＣ取り込み、またはプリントするまでの手順である。
【００１１】
このように、従来はホストであるＰＣにそれぞれの機器が接続され、ＰＣを介してから、記録再生装置で撮像した画像データをプリントしている。
【００１２】
また、映像データを圧縮する方式も多様化している。静止画を圧縮する方式としてＪＰＥＧ、動画を圧縮する方式としてＭＰＥＧなどが知られており、その他には家庭用デジタルＶＴＲ（ＤＶＣ）ではＶＬＣとＤＣＴを組み合わせた独自の圧縮方式を用いている。このように、機器毎またはデータの種類毎などに分類してさまざまな圧縮方式が考えられている。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記従来例で挙げたデジタルインターフェイスの問題点として、ＳＣＳＩには転送データレートの低いものや、パラレル通信のためケーブルが太いもの、接続される周辺機器の種類や数、接続方式などにも制限があり、多くの面での不便利性も指摘されている。
【００１４】
また、一般的な家庭用ＰＣの多くは、ＰＣの背面にＳＣＳＩやその他のケーブルを接続するためのコネクタを設けているものが多く、またコネクタの形状も大きく、抜き差しに煩わしさがある。デジタルカメラやビデオカメラ等の移動式や携帯式で、通常は据え置きしない装置を接続するときにも、ＰＣの背面コネクタに接続しなければならず、非常に煩わしい。
【００１５】
また、通常パーソナルコンピュータには多くの周辺機器が接続されており、今後は更に周辺装置の種類も増え、さらにはＩ／Ｆの改良などによって、ＰＣ周辺装置に限らず多くのデジタル機器間をネットワーク接続した通信が可能になると予想される。こうなると非常に便利になる反面、機器間によってはデータ量の非常に多い通信も頻繁に行われるようになるので、ネットワークを混雑させてしまい、ネットワーク内での他の機器間における通信に影響をもたらすことも考えられる。例えばユーザーが、画像のプリントを続けてまたは迅速に行いたいときなど、ＰＣ−プリンタ間のデータ通信が、ユーザーの意識していない機器間同士の通信がネットワーク全体、またはホスト役のＰＣ等に影響を及ぼすことでうまくいかず、画像のプリントが正常に実行されなかったり、遅れたりすることも考えられる。このように、ネットワークの混雑によるＰＣに対しての負荷や、ＰＣの動作状況によってのデータ通信等の不具合も存在する。
【００１６】
また、複数機器間をネットワーク接続すると、ある機器間のデータ転送においてそれぞれが用いているデータ圧縮方式の違いから、伸張できない圧縮データを誤って転送してしまったり、または転送先で伸張できるのに非圧縮データで転送してしまったりと、転送動作、効率における不具合も存在する。
【００１７】
本発明は上述した従来抱えている問題を解決するためになされたもので、従来からあるデジタルＩ／Ｆの問題点を極力解消した、各デジタル機器に統一されて搭載されるような汎用型デジタルＩ／Ｆ（例えばIEEE1394−1995ハイパフォーマンス・シリアルバス）を用いて、ＰＣやプリンタ、その他周辺装置、またデジタルカメラやデジタルＶＴＲの記録再生装置等をネットワーク構成で接続したときの機器間データ通信を実現し、記録再生装置からビデオデータ等のＰＣへの取り込み、また、映像データをプリンタへ直接転送しプリントする、所謂ダイレクトプリントを実現することを目的とする。
【００１８】
より詳しくは、転送先の機器が復号手段を具備しているか、また具備している復号手段の種類や構成等の情報に基づいて、転送するデータとして圧縮されたままの符号化データを送信するか、または、符号化データを復号化した後のデータを送信するか、選択してデータを送信することで、転送先の構成に応じたデータ転送を行なうことを目的とする。
【００１９】
さらに、転送先の機器にデータを復号するためのプログラム情報を転送してやることによって、転送先の機器がデータの復号に適した復号手段を具備していないときでも、転送される符号化データの復号が転送先の機器で可能とすることを目的とする。
【課題を解決するための手段】
【００２０】
上記目的を達成するために本発明は次のような構成からなる。すなわち、所定の方式でデータを符号化する符号化手段と、符号化されたままの状態でデータを送信する第１のモードと、符号化されたデータを復号してから送信する第２のモードとのいずれかによりデータを通信先のノードに送信する送信手段とを備え、前記符号化手段による符号化方式が通信先のノードが備える復号手段に対応する符号化方式である場合には第１のモードで、対応しない場合には第２のモードでデータを送信する。
【００２１】
また、所定の方式でデータを符号化する符号化手段と、該符号化手段により符号化されたデータを復号する復号手順を含むプログラム情報を送信する送信手段と、前記符号化手段により符号化されたデータを送信する第２の送信手段とを備える。
【００２２】
また、符号化手段を備えた第１のノードと第２のノードを接続してなるデータ通信システムであって、第２のノードが、第１のノードで符号化されたデータを復号する手段を備えている場合には、第１のノードは前記符号化手段により符号化されたデータを第２のノードに送信し、第２のノードが、第１のノードで符号化されたデータを復号する手段を備えていない場合には、第１のノードは符号化されたデータを復号してそのデータを第２のノードに送信する。
【００２３】
また、符号化手段と該符号化手段で符号化されたデータを復号するためのプログラム情報を記憶する記憶手段とを備えた第１のノードと、プログラム情報に基づいて符号化データを復号する第２のノードとを接続してなるデータ通信システムであって、第２のノードが、第１のノードで符号化されたデータを復号するプログラム情報を有していない場合には、第１のノードは、前記符号化手段により符号化されたデータとともに前記記憶手段に記憶されたプログラム情報を第２のノードに送信し、第２のノードが、第１のノードで符号化されたデータを復号するためのプログラム情報を有している場合には、第１のノードは前記符号化手段により符号化されたデータを第２のノードに送信する。
【００２４】
また、所定の方式で符号化されたデータを送信するデータ通信方法であって、通信先ノードから、該ノードが、前記所定方式で符号化されたデータを復号できるか否かを示す情報を獲得し、復号できる場合には、符号化されたデータをそのまま送信し、復号できない場合には、符号化されたデータを復号してから送信する。
【００２５】
また、所定の方式で符号化されたデータを送信するデータ通信方法であって、通信先ノードから、該ノードが、前記所定方式で符号化されたデータを復号するためのプログラム情報を有しているか否かを示す情報を獲得し、有している場合には、符号化されたデータをそのまま送信し、有していない場合には、符号化されたデータと、符号化されたデータを復号するためのプログラム情報とを送信する。
【００２６】
また、所定の方式で符号化されたデータを送信するデータ通信プログラムを記憶する記憶媒体であって、前記プログラムは、通信先ノードから、該ノードが、前記所定方式で符号化されたデータを復号できるか否かを示す情報を獲得し、復号できる場合には、符号化されたデータをそのまま送信し、復号できない場合には、符号化されたデータを復号してから送信するコードを含む。
【００２７】
また、所定の方式で符号化されたデータを送信するデータ通信方法であって、プログラムを記憶する記憶媒体であって、前記プログラムは、通信先ノードから、該ノードが、前記所定方式で符号化されたデータを復号するためのプログラム情報を有しているか否かを示す情報を獲得し、有している場合には、符号化されたデータをそのまま送信し、有していない場合には、符号化されたデータと、符号化されたデータを復号するためのプログラム情報とを送信するコードを含む。
【発明の効果】
【００２８】
本発明によれば、データ転送を行う場合に、転送先ノードが具備する復号機能に応じて、転送元ノードは符号化データまたは非符号化データを選択して転送するため、ノード間の転送効率が向上する。
【００２９】
また、転送先ノードで、転送元ノードより転送される符号化データを復号できないときは非符号化データを転送することによって転送先ノードの復号機能に関らずデータ転送することができる。
【００３０】
また、転送先ノードに復号するためのプログラム情報を転送することで、転送元ノードの符号化方式が如何なるものであっても、転送先ノードでそれを復号することができる。
【００３１】
このため、符号化データでデータ転送が行われる機会が増大し、データ転送に要する時間の短縮や、受信したデータの記憶に要する容量の縮減ができる。
【発明を実施するための最良の形態】
【００３２】
［第１の実施の形態］
以下、本発明の第１の実施の形態について図面を参照しながら説明する。図１に本発明を実施するときの、ネットワーク構成の一例を示す。ここで、本発明では、各機器間を接続するデジタルＩ／ＦをIEEE1394シリアルバスを用いるので、IEEE1394シリアルバスについてあらかじめ説明する。
【００３３】
《IEEE１３９４の技術の概要》
家庭用デジタルＶＴＲやＤＶＤの登場も伴なって、ビデオデータやオーディオデータなどのリアルタイムでかつ高情報量のデータ転送のサポートが必要になっている。こういったビデオデータやオーディオデータをリアルタイムで転送し、パーソナルコンピュータ（ＰＣ）に取り込んだり、またはその他のデジタル機器に転送を行なうには、必要な転送機能を備えた高速データ転送可能なインタフェースが必要になってくるものであり、そういった観点から開発されたインタフェースがIEEE1394−1995（High Performance Serial Bus）（以下1394シリアルバス）である。
【００３４】
図７に 1394シリアルバスを用いて構成されるネットワーク・システムの例を示す。このシステムは機器A,B,C,D,E,F,G,Hを備えており、A-B間、 A-C間、B-D間、D-E間、C-F間、C-G間、及びC-H間をそれぞれ1394シリアルバスのツイスト・ペア・ケーブルで接続されている。この機器 A〜Hは例としてPC、デジタルVTR、DVD、デジタルカメラ、ハードディスク、モニタ等である。各機器間の接続方式は、ディジーチェーン方式とノード分岐方式とを混在可能としたものであり、自由度の高い接続が可能である。
【００３５】
また、各機器は各自固有のＩＤを有し、それぞれが認識し合うことによって1394シリアルバスで接続された範囲において、１つのネットワークを構成している。各デジタル機器間をそれぞれ1本の1394シリアルバスケーブルで順次接続するだけで、それぞれの機器が中継の役割を行い、全体として１つのネットワークを構成するものである。また、1394シリアルバスの特徴でもある、Plug & Play機能でケーブルを機器に接続した時点で自動で機器の認識や接続状況などを認識する機能を有している。
【００３６】
また、図７に示したようなシステムにおいて、ネットワークからある機器が削除されたり、または新たに追加されたときなど、自動的にバスリセットを行い、それまでのネットワーク構成をリセットしてから、新たなネットワークの再構築を行なう。この機能によって、その時々のネットワークの構成を常時設定、認識することができる。
【００３７】
またデータ転送速度は、100／200／400Mbpsと備えており、上位の転送速度を持つ機器が下位の転送速度をサポートし、互換をとるようになっている。データ転送モードとしては、コントロール信号などの非同期データ（Asynchronousデータ：以下Asyncデータ）を転送する Asynchronous転送モード、リアルタイムなビデオデータやオーディオデータ等の同期データ（Isochronousデータ：以下Isoデータ）を転送するIsochronous転送モードがある。このAsyncデータとIsoデータは各サイクル（通常1サイクル125μS）の中において、サイクル開始を示すサイクル・スタート・パケット（CSP）の転送に続き、Isoデータの転送を優先しつつサイクル内で混在して転送される。
【００３８】
次に、図８に1394シリアルバスの構成要素を示す。1394シリアルバスは全体としてレイヤ（階層）構造で構成されている。図８に示したように、最もハード的なのが1394シリアルバスのケーブルであり、そのケーブルのコネクタが接続されるコネクタポートがあり、その上にハードウェアとしてフィジカル・レイヤとリンク・レイヤがある。
【００３９】
ハードウェア部は実質的なインターフェイスチップの部分であり、そのうちフィジカル・レイヤは符号化やコネクタ関連の制御等を行い、リンク・レイヤはパケット転送やサイクルタイムの制御等を行なう。
【００４０】
ファームウェア部のトランザクション・レイヤは、転送（トランザクション）すべきデータの管理を行ない、ReadやWriteといった命令を出す。シリアルバスマネージメントは、接続されている各機器の接続状況やＩＤの管理を行ない、ネットワークの構成を管理する部分である。
【００４１】
このハードウェアとファームウェアまでが実質上の1394シリアルバスの構成である。またソフトウェア部のアプリケーション・レイヤは使うソフトによって異なり、インタフェース上にどのようにデータをのせるか規定する部分であり、AVプロトコルなどのプロトコルによって規定されている。以上が1394シリアルバスの構成である。
【００４２】
次に、図９に1394シリアルバスにおけるアドレス空間の図を示す。1394シリアルバスに接続された各機器（ノード）には必ず各ノード固有の、64ビットアドレスを持たせておく。そしてこのアドレスをROMに格納しておくことで、自分や相手のノードアドレスを常時認識でき、相手を指定した通信も行なえる。
【００４３】
1394シリアルバスのアドレッシングは、IEEE1212規格に準じた方式であり、アドレス設定は、最初の10bitがバスの番号の指定用に、次の６bitがノードID番号の指定用に使われる。残りの48bitが機器に与えられたアドレス幅になり、それぞれ固有のアドレス空間として使用できる。最後の28bitは固有データの領域として、各機器の識別や使用条件の指定の情報などを格納する。以上が1394シリアルバスの技術の概要である。次に、1394シリアルバスの特徴といえる技術の部分を、より詳細に説明する。
【００４４】
《1394シリアルバスの電気的仕様》
図10に1394シリアルバス・ケーブルの断面図を示す。1394シリアルバスでは接続ケーブル内に、２組のツイストペア信号線の他に、電源ラインを設けている。これによって、電源を持たない機器や、故障により電圧低下した機器等にも電力の供給が可能になっている。電源線内を流れる電源の電圧は８〜40V、電流は最大電流DC1.5Aと規定されている。
【００４５】
《DS−Link符号化》
1394シリアルバスで採用されている、データ転送フォーマットのDS−Link符号化方式を説明するための図を図11に示す。
【００４６】
1394シリアルバスでは、DS−Link（Data／Strobe Link）符号化方式が採用されている。このDS−Link符号化方式は、高速なシリアルデータ通信に適しており、その構成は、2本の信号線を必要とする。より対線のうち1本に主となるデータを送り、他方のより対線にはストローブ信号を送る構成になっている。受信側では、この通信されるデータと、ストローブとの排他的論理和をとることによってクロックを再現できる。
【００４７】
このDS−Link符号化方式を用いるメリットとして、他のシリアルデータ転送方式に比べて転送効率が高いこと、PLL回路が不要となるのでコントローラ LSIの回路規模を小さくできること、更には、転送すべきデータが無いときにアイドル状態であることを示す情報を送る必要が無いので、各機器のトランシーバ回路をスリープ状態にすることができることによって、消費電力の低減が図れる、などが挙げられる。
【００４８】
《バスリセットのシーケンス》
1394シリアルバスでは、接続されている各機器（ノード）にはノードIDが与えられ、ネットワーク構成として認識されている。このネットワーク構成に変化があったとき、例えばノードの挿抜や電源のON／OFFなどによるノード数の増減などによって変化が生じて、新たなネットワーク構成を認識する必要があるとき、変化を検知した各ノードはバス上にバスリセット信号を送信して、新たなネットワーク構成を認識するモードに入る。このときの変化の検知方法は、1394ポート基盤上でのバイアス電圧の変化を検知することによって行われる。
【００４９】
あるノードからバスリセット信号が伝達されて、各ノードのフィジカルレイヤはこのバスリセット信号を受けると同時にリンクレイヤにバスリセットの発生を伝達し、かつ他のノードにバスリセット信号を伝達する。最終的にすべてのノードがバスリセット信号を検知した後、バスリセットが起動となる。バスリセットは、先に述べたようなケーブル抜挿や、ネットワーク異常等によるハード検出による起動と、プロトコルからのホスト制御などによってフィジカルレイヤに直接命令を出すことによっても起動する。また、バスリセットが起動するとデータ転送は一時中断され、この間のデータ転送は待たされ、終了後、新しいネットワーク構成のもとで再開される。以上がバスリセットのシーケンスである。
【００５０】
《ノードID決定のシーケンス》
バスリセットの後、各ノードは新しいネットワーク構成を構築するために、各ノードにＩＤを与える動作に入る。このときの、バスリセットからノードＩＤ決定までの一般的なシーケンスを図19、20、21のフローチャートを用いて説明する。図19のフローチャートは、バスリセットの発生からノードＩＤが決定し、データ転送が行えるようになるまでの、一連のバスの作業を示してある。
【００５１】
まず、ステップＳ101として、ネットワーク内にバスリセットが発生することを常時監視していて、ここでノードの電源ＯＮ／ＯＦＦなどでバスリセットが発生するとステップＳ102に移る。
【００５２】
ステップＳ102では、ネットワークがリセットされた状態から、新たなネットワークの接続状況を知るために、直接接続されている各ノード間において親子関係の宣言がなされる。ステップＳ103として、すべてのノード間で親子関係が決定すると、ステップＳ104として一つのルートが決定する。すべてのノード間で親子関係が決定するまで、ステップＳ102の親子関係の宣言をおこない、またルートも決定されない。
【００５３】
ステップＳ104でルートが決定されると、次はステップＳ105として、各ノードにＩＤを与えるノードＩＤの設定作業が行われる。所定のノード順序で、ノードＩＤの設定が行われ、すべてのノードにＩＤが与えられるまで繰り返し設定作業が行われ、最終的にステップＳ106としてすべてのノードにＩＤを設定し終えたら、新しいネットワーク構成がすべてのノードにおいて認識されたので、ステップＳ107としてノード間のデータ転送が行える状態となり、データ転送が開始される。
【００５４】
このステップＳ107の状態になると、再びバスリセットが発生するのを監視するモードに入り、バスリセットが発生したらステップＳ101からステップＳ106までの設定作業が繰り返し行われる。
【００５５】
以上が、図19のフローチャートの説明であるが、図19のフローチャートのバスリセットからルート決定までの部分と、ルート決定後からＩＤ設定終了までの手順をより詳しくフローチャート図に表したものをそれぞれ、図20、図21に示す。
【００５６】
まず、図20のフローチャートの説明を行う。ステップＳ201としてバスリセットが発生すると、ネットワーク構成は一旦リセットされる。なお、ステップＳ201としてバスリセットが発生するのを常に監視している。次に、ステップＳ202として、リセットされたネットワークの接続状況を再認識する作業の第一歩として、各機器にリーフ（ノード）であることを示すフラグを立てておく。さらに、ステップＳ203として各機器が自分の持つポートがいくつ他ノードと接続されているのかを調べる。ステップＳ204 のポート数の結果に応じて、これから親子関係の宣言を始めていくために、未定義（親子関係が決定されてない）ポートの数を調べる。バスリセットの直後はポート数＝未定義ポート数であるが、親子関係が決定されていくにしたがって、ステップＳ204で検知する未定義ポートの数は変化していくものである。
【００５７】
まず、バスリセットの直後、はじめに親子関係の宣言を行えるのはリーフに限られている。リーフであるというのはステップＳ203のポート数の確認で知ることができる。リーフは、ステップＳ205として、自分に接続されているノードに対して、「自分は子、相手は親」と宣言し動作を終了する。
【００５８】
ステップＳ203でポート数が複数ありブランチと認識したノードは、バスリセットの直後はステップＳ204で未定義ポート数＞１ということなので、ステップＳ206へと移り、まずブランチというフラグが立てられ、ステップＳ207でリーフからの親子関係宣言で「親」の受付をするために待つ。
【００５９】
リーフが親子関係の宣言を行い、ステップＳ207でそれを受けたブランチは適宜ステップＳ204の未定義ポート数の確認を行い、未定義ポート数が１になっていれば残っているポートに接続されているノードに対して、ステップＳ205の「自分が子」の宣言をすることが可能になる。２度目以降、ステップＳ204 で未定義ポート数を確認しても２以上あるブランチに対しては、再度ステップＳ207でリーフ又は他のブランチからの「親」の受付をするために待つ。
【００６０】
最終的に、いずれか１つのブランチ、又は例外的にリーフ（子宣言を行えるのにすばやく動作しなかった為）がステップＳ204の未定義ポート数の結果としてゼロになったら、これにてネットワーク全体の親子関係の宣言が終了したものであり、未定義ポート数がゼロ（すべて親のポートとして決定）になった唯一のノードはステップＳ208としてルートのフラグが立てられ、ステップＳ209としてルートとしての認識がなされる。
【００６１】
このようにして、図20に示したバスリセットから、ネットワーク内すべてのノード間における親子関係の宣言までが終了する。
つぎに、図21のフローチャートについて説明する。まず、図20までのシーケンスでリーフ、ブランチ、ルートという各ノードのフラグの情報が設定されているので、これを元にして、ステップＳ301でそれぞれ分類する。
【００６２】
各ノードにＩＤを与える作業として、最初にＩＤの設定を行うことができるのはリーフからである。リーフ→ブランチ→ルートの順で若い番号（ノード番号＝０〜）からＩＤの設定がなされていく。
【００６３】
ステップＳ302としてネットワーク内に存在するリーフの数Ｎ（Ｎは自然数）を設定する。この後、ステップＳ303として各自リーフがルートに対して、ＩＤを与えるように要求する。この要求が複数ある場合には、ルートはステップＳ304としてアービトレーション（１つに調停する作業）を行い、ステップＳ305として勝ったノード１つにＩＤ番号を与え、負けたノードには失敗の結果通知を行う。ステップＳ306としてＩＤ取得が失敗に終わったリーフは、再度ＩＤ要求を出し、同様の作業を繰り返す。ＩＤを取得できたリーフからステップＳ307として、そのノードのＩＤ情報をブロードキャストで全ノードに転送する。１ノードＩＤ情報のブロードキャストが終わると、ステップＳ308として残りのリーフの数が1つ減らされる。ここで、ステップＳ309として、この残りのリーフの数が１以上ある時はステップＳ303のＩＤ要求の作業からを繰り返し行い、最終的にすべてのリーフがＩＤ情報をブロードキャストすると、ステップＳ309がＮ＝０となり、次はブランチのＩＤ設定に移る。
【００６４】
ブランチのＩＤ設定もリーフの時と同様に行われる。まず、ステップＳ310としてネットワーク内に存在するブランチの数Ｍ（Ｍは自然数）を設定する。この後、ステップＳ311として各自ブランチがルートに対して、ＩＤを与えるように要求する。これに対してルートは、ステップＳ312としてアービトレーションを行い、勝ったブランチから順にリーフに与え終った次の若い番号から与えていく。ステップＳ313として、ルートは要求を出したブランチにＩＤ情報又は失敗結果を通知し、ステップＳ314としてＩＤ取得が失敗に終わったブランチは、再度ＩＤ要求を出し、同様の作業を繰り返す。ＩＤを取得できたブランチからステップＳ315として、そのノードのＩＤ情報をブロードキャストで全ノードに転送する。１ノードＩＤ情報のブロードキャストが終わると、ステップＳ316として残りのブランチの数が1つ減らされる。ここで、ステップＳ317として、この残りのブランチの数が１以上ある時はステップＳ311のＩＤ要求の作業からを繰り返し、最終的にすべてのブランチがＩＤ情報をブロードキャストするまで行われる。すべてのブランチがノードＩＤを取得すると、ステップＳ317はＭ＝０となり、ブランチのＩＤ取得モードも終了する。
【００６５】
ここまで終了すると、最終的にＩＤ情報を取得していないノードはルートのみなので、ステップＳ318として与えていない番号で最も若い番号を自分のＩＤ番号と設定し、ステップＳ319としてルートのＩＤ情報をブロードキャストする。
【００６６】
以上で、図21に示したように、親子関係が決定した後から、すべてのノードのＩＤが設定されるまでの手順が終了する。
【００６７】
次に、一例として図12に示した実際のネットワークにおける動作を図12を参照しながら説明する。図12の説明として、（ルート）ノードＢの下位にはノードＡとノードＣが直接接続されており、更にノードＣの下位にはノードＤが直接接続されており、更にノードＤの下位にはノードＥとノードＦが直接接続された階層構造になっている。この、階層構造やルートノード、ノードIDを決定する手順を以下で説明する。
【００６８】
バスリセットがされた後、まず各ノードの接続状況を認識するために、各ノードの直接接続されているポート間において、親子関係の宣言がなされる。この親子とは親側が階層構造で上位となり、子側が下位となると言うことができる。
【００６９】
図12ではバスリセットの後、最初に親子関係の宣言を行なったのはノードＡである。基本的にノードの1つのポートにのみ接続があるノード（リーフと呼ぶ）から親子関係の宣言を行なうことができる。これは自分には1ポートの接続のみということをまず知ることができるので、これによってネットワークの端であることを認識し、その中で早く動作を行なったノードから親子関係が決定されていく。こうして親子関係の宣言を行なった側（Ａ-Ｂ間ではノードＡ）のポートが子と設定され、相手側（ノードＢ）のポートが親と設定される。こうして、ノードA−B間では子−親、ノードＥ−D間で子−親、ノードF−D間で子−親と決定される。
【００７０】
さらに1階層あがって、今度は複数個接続ポートを持つノード（ブランチと呼ぶ）のうち、他ノードからの親子関係の宣言を受けたものから順次、更に上位に親子関係の宣言を行なっていく。図12ではまずノードＤがD−E 間、D−F間と親子関係が決定した後、ノードＣに対する親子関係の宣言を行っており、その結果ノードD−C間で子−親と決定している。
【００７１】
ノードＤからの親子関係の宣言を受けたノードCは、もう一つのポートに接続されているノードBに対して親子関係の宣言を行なっている。これによってノードC−B間で子−親と決定している。
【００７２】
このようにして、図12のような階層構造が構成され、最終的に接続されているすべてのポートにおいて親となったノードBが、ルートノードと決定された。ルートは1つのネットワーク構成中に一つしか存在しないものである。
【００７３】
なお、この図12においてノードBがルートノードと決定されたが、これはノードAから親子関係宣言を受けたノードBが、他のノードに対して親子関係宣言を早いタイミングで行なっていれば、ルートノードは他ノードに移っていたこともあり得る。すなわち、伝達されるタイミングによってはどのノードもルートノードとなる可能性があり、同じネットワーク構成でもルートノードは一定とは限らない。
【００７４】
ルートノードが決定すると、次は各ノードIDを決定するモードに入る。ここではすべてのノードが、決定した自分のノードIDを他のすべてのノードに通知する（ブロードキャスト機能）。自己ID情報は、自分のノード番号、接続されている位置の情報、持っているポートの数、接続のあるポートの数、各ポートの親子関係の情報等を含んでいる。ノードID番号の割り振りの手順としては、まず1つのポートにのみ接続があるノード（リーフ）から起動することができ、この中から順にノード番号=０、１、２…と割り当てられる。
【００７５】
ノードIDを手にしたノードは、ノード番号を含む情報をブロードキャストで各ノードに送信する。これによって、そのID番号は『割り当て済み』であることが認識される。すべてのリーフが自己ノードIDを取得し終ると、次はブランチへ移りリーフに引き続いたノードID番号が各ノードに割り当てられる。リーフと同様に、ノードID番号が割り当てられたブランチから順次ノードID情報をブロードキャストし、最後にルートノードが自己ID情報をブロードキャストする。すなわち、常にルートは最大のノードID番号を所有するものである。
【００７６】
以上のようにして、階層構造全体のノードIDの割り当てが終わり、ネットワーク構成が再構築され、バスの初期化作業が完了する。
【００７７】
《アービトレーション》
1394シリアルバスでは、データ転送に先立って必ずバス使用権のアービトレーション（調停）を行なう。1394シリアルバスは個別に接続された各機器が、転送された信号をそれぞれ中継することによって、ネットワーク内すべての機器に同信号を伝えるように、論理的なバス型ネットワークであるので、パケットの衝突を防ぐ意味でアービトレーションは必要である。これによってある時間には、たった一つのノードのみ転送を行なうことができる。
【００７８】
アービトレーションを説明するための図として図13（ａ）にバス使用要求の図（ｂ）にバス使用許可の図を示し、以下これを用いて説明する。
【００７９】
アービトレーションが始まると、1つもしくは複数のノードが親ノードに向かって、それぞれバス使用権の要求を発する。図13（a）のノードCとノードFがバス使用権の要求を発しているノードである。これを受けた親ノード（図13ではノードＡ）は更に親ノードに向かって、バス使用権の要求を発する（中継する）。この要求は最終的に調停を行なうルートに届けられる。
【００８０】
バス使用要求を受けたルートノードは、どのノードにバスを使用させるかを決める。この調停作業はルートノードのみが行なえるものであり、調停によって勝ったノードにはバスの使用許可を与える。図13（ｂ）ではノードCに使用許可が与えられ、ノードFの使用は拒否された図である。アービトレーションに負けたノードに対してはDP（data prefix）パケットを送り、拒否されたことを知らせる。拒否されたノードのバス使用要求は次回のアービトレーションまで待たされる。
【００８１】
以上のようにして、アービトレーションに勝ってバスの使用許可を得たノードは、以降データの転送を開始できる。ここで、アービトレーションの一連の流れをフローチャート図22に示して、説明する。
【００８２】
ノードがデータ転送を開始できる為には、バスがアイドル状態であることが必要である。先に行われていたデータ転送が終了して、現在バスが空き状態であることを認識するためには、各転送モードで個別に設定されている所定のアイドル時間ギャップ長（例．サブアクション・ギャップ）を経過する事によって、各ノードは自分の転送が開始できると判断する。
【００８３】
ステップＳ401として、Asyncデータ、Isoデータ等それぞれ転送するデータに応じた所定のギャップ長が得られたか判断する。所定のギャップ長が得られない限り、転送を開始するために必要なバス使用権の要求はできないので、所定のギャップ長が得られるまで待つ。
【００８４】
ステップＳ401 で所定のギャップ長が得られたら、ステップＳ402として転送すべきデータがあるか判断し、ある場合はステップＳ403として転送するためにバスを確保するよう、バス使用権の要求をルートに対して発する。このときの、バス使用権の要求を表す信号の伝達は、図13に示したように、ネットワーク内各機器を中継しながら、最終的にルートに届けられる。ステップＳ402で転送するデータがない場合は、そのまま待機する。
【００８５】
次に、ステップＳ404 として、ステップＳ403のバス使用要求を１つ以上ルートが受信したら、ルートはステップＳ405として使用要求を出したノードの数を調べる。ステップＳ405での選択値がノード数＝１（使用権要求を出したノードは１つ）だったら、そのノードに直後のバス使用許可が与えられることとなる。ステップＳ405での選択値がノード数＞１（使用要求を出したノードは複数）だったら、ルートはステップＳ406として使用許可を与えるノードを１つに決定する調停作業を行う。この調停作業は公平なものであり、毎回同じノードばかりが許可を得る様なことはなく、平等に権利を与えていくような構成となっている。
【００８６】
ステップＳ407として、ステップＳ406で使用要求を出した複数ノードの中からルートが調停して使用許可を得た１つのノードと、敗れたその他のノードに分ける選択を行う。ここで、調停されて使用許可を得た１つのノード、またはステップＳ405の選択値から使用要求ノード数＝１で調停無しに使用許可を得たノードには、ステップＳ408として、ルートはそのノードに対して許可信号を送る。許可信号を得たノードは、受け取った直後に転送すべきデータ（パケット）を転送開始する。また、ステップＳ406の調停で敗れて、バス使用が許可されなかったノードにはステップＳ409としてルートから、アービトレーション失敗を示すＤＰ（data prefix）パケットを送られ、これを受け取ったノードは再度転送を行うためのバス使用要求を出すため、ステップＳ401まで戻り、所定ギャップ長が得られるまで待機する以上がアービトレーションの流れを説明した、フローチャート図22の説明である。
【００８７】
《Asynchronous（非同期）転送》
アシンクロナス転送は、非同期転送である。図14にアシンクロナス転送における時間的な遷移状態を示す。図14の最初のサブアクション・ギャップは、バスのアイドル状態を示すものである。このアイドル時間が一定値になった時点で，転送を希望するノードはバスが使用できると判断して、バス獲得のためのアービトレーションを実行する。
【００８８】
アービトレーションでバスの使用許可を得ると、次にデータの転送がパケット形式で実行される。データ転送後、受信したノードは転送されたデータに対しての受信結果のack（受信確認用返送コード）をack gapという短いギャップの後、返送して応答するか、応答パケットを送ることによって転送が完了する。ackは4ビットの情報と4ビットのチェックサムからなり、成功か、ビジー状態か、ペンディング状態であるかといった情報を含み、すぐに送信元ノードに返送される。
【００８９】
次に、図15にアシンクロナス転送のパケットフォーマットの例を示す。パケットには、データ部及び誤り訂正用のデータCRCの他にはヘッダ部があり、そのヘッダ部には図15に示したような、目的ノードＩＤ、ソースノードＩＤ、転送データ長さや各種コードなどが書き込まれ、転送が行なわれる。また、アシンクロナス転送は自己ノードから相手ノードへの1対１の通信である。転送元ノードから転送されたパケットは、ネットワーク中の各ノードに行き渡るが、自分宛てのアドレス以外のものは無視されるので、宛先の1つのノードのみが読込むことになる。以上がアシンクロナス転送の説明である。
【００９０】
《Isochronous （同期）転送》
アイソクロナス転送は同期転送である。1394シリアルバスの最大の特徴であるともいえるこのアイソクロナス転送は、特にVIDEO映像データや音声データといったマルチメディアデータなど、リアルタイムな転送を必要とするデータの転送に適した転送モードである。また、アシンクロナス転送（非同期）が1対１の転送であったのに対し、このアイソクロナス転送はブロードキャスト機能によって、転送元の1つのノードから他のすべてのノードへ一様に転送される。
【００９１】
図16はアイソクロナス転送における、時間的な遷移状態を示す図である。アイソクロナス転送は、バス上一定時間毎に実行される。この時間間隔をアイソクロナスサイクルと呼ぶ。アイソクロナスサイクル時間は、125μSである。この各サイクルの開始時間を示し、各ノードの時間調整を行なう役割を担っているのがサイクル・スタート・パケットである。サイクル・スタート・パケットを送信するのは、サイクル・マスタと呼ばれるノードであり、1つ前のサイクル内の転送終了後、所定のアイドル期間（サブアクションギャップ）を経た後、本サイクルの開始を告げるサイクル・スタート・パケットを送信する。このサイクル・スタート・パケットの送信される時間間隔が125μSとなる。
【００９２】
また、図16にチャネルＡ、チャネルＢ、チャネルＣと示したように、1サイクル内において複数種のパケットがチャネルIDをそれぞれ与えられることによって、区別して転送できる。これによって同時に複数ノード間でのリアルタイムな転送が可能であり、また受信するノードでは自分が欲しいチャネルIDのデータのみを取り込む。このチャネルIDは送信先のアドレスを表すものではなく、データに対する論理的な番号を与えているに過ぎない。よって、あるパケットの送信は1つの送信元ノードから他のすべてのノードに行き渡る、ブロードキャストで転送されることになる。
【００９３】
アイソクロナス転送のパケット送信に先立って、アシンクロナス転送同様アービトレーションが行われる。しかし、アシンクロナス転送のように1対1の通信ではないので、アイソクロナス転送にはack（受信確認用返信コード）は存在しない。
【００９４】
また、図16に示したiso gap（アイソクロナスギャップ）とは、アイソクロナス転送を行なう前にバスが空き状態であると認識するために必要なアイドル期間を表している。この所定のアイドル期間を経過すると、アイソクロナス転送を行ないたいノードはバスが空いていると判断し、転送前のアービトレーションを行なうことができる。つぎに、図17にアイソクロナス転送のパケットフォーマットの例を示し、説明する。
【００９５】
各チャネルに分かれた、各種のパケットにはそれぞれデータ部及び誤り訂正用のデータCRCの他にヘッダ部があり、そのヘッダ部には図17に示したような、転送データ長やチャネルNO、その他各種コード及び誤り訂正用のヘッダCRCなどが書き込まれ、転送が行なわれる。以上がアイソクロナス転送の説明である。
【００９６】
《バス・サイクル》
実際の1394シリアルバス上の転送では、アイソクロナス転送と、アシンクロナス転送は混在できる。その時の、アイソクロナス転送とアシンクロナス転送が混在した、バス上の転送状態の時間的な遷移の様子を表した図を図18に示す。アイソクロナス転送はアシンクロナス転送より優先して実行される。その理由は、サイクル・スタート・パケットの後、アシンクロナス転送を起動するために必要なアイドル期間のギャップ長（サブアクションギャップ）よりも短いギャップ長（アイソクロナスギャップ）で、アイソクロナス転送を起動できるからである。したがって、アシンクロナス転送より、アイソクロナス転送は優先して実行されることとなる。
【００９７】
図18に示した、一般的なバスサイクルにおいて、サイクル＃mのスタート時にサイクル・スタート・パケットがサイクル・マスタから各ノードに転送される。これによって、各ノードで時刻調整を行ない、所定のアイドル期間（アイソクロナスギャップ）を待ってからアイソクロナス転送を行なうべきノードはアービトレーションを行い、パケット転送に入る。図18ではチャネルｅとチャネルｓとチャネルｋが順にアイソクロナス転送されている。
【００９８】
このアービトレーションからパケット転送までの動作を、与えられているチャネル分繰り返し行なった後、サイクル＃ｍにおけるアイソクロナス転送がすべて終了したら、アシンクロナス転送を行うことができるようになる。
【００９９】
アイドル時間がアシンクロナス転送が可能なサブアクションギャップに達する事によって、アシンクロナス転送を行いたいノードはアービトレーションの実行に移れると判断する。
【０１００】
ただし、アシンクロナス転送が行える期間は、アイソクロナス転送終了後から、次のサイクル・スタート・パケットを転送すべき時間（cycle synch）までの間にアシンクロナス転送を起動するためのサブアクションギャップが得られた場合に限っている。
【０１０１】
図18のサイクル＃mでは3つのチャネル分のアイソクロナス転送と、その後アシンクロナス転送（含むack）が２パケット（パケット１、パケット２）転送されている。このアシンクロナスパケット2の後は、サイクルm＋1をスタートすべき時間（cycle synch）にいたるので、サイクル＃mでの転送はここまでで終わる。
【０１０２】
ただし、非同期または同期転送動作中に次のサイクル・スタート・パケットを送信すべき時間（cycle synch）に至ったとしたら、無理に中断せず、その転送が終了した後のアイドル期間を待ってから次サイクルのサイクル・スタート・パケットを送信する。すなわち、1つのサイクルが125μS以上続いたときは、その分次サイクルは基準の125μSより短縮されたとする。このようにアイソクロナス・サイクルは125μSを基準に超過、短縮し得るものである。しかし、アイソクロナス転送はリアルタイム転送を維持するために毎サイクル必要であれば必ず実行され、アシンクロナス転送はサイクル時間が短縮されたことによって次以降のサイクルにまわされることもある。こういった遅延情報も含めて、サイクル・マスタによって管理される。以上が、IEEE1394シリアルバスの説明である。
【０１０３】
＜IEEE1394シリアルバスを用いたダイレクトプリントシステム＞
ここから、図１のように1394シリアルバスケーブルで各機器が接続されたシステムの説明を行なう。図１でのバス構成は、実線で描いた1394シリアルバスで接続された、記録再生装置101、プリンタ装置102、パーソナルコンピュータ（ＰＣ）103をノードとして構成されており、各機器がそれぞれ1394シリアルバスの仕様に基づいたデータ転送が行なえる。ここで、記録再生装置101とは、動画又は静止画を記録再生する、デジタルカメラやカメラ一体型デジタルＶＴＲ等である。また、記録再生装置101で出力する映像データを、プリンタ102に直接転送すればダイレクトプリントが可能である。また、1394シリアルバスの接続方法は、図１のような接続に限ったものではなく、任意の機器間での接続でバスを構成しても可能であり、また図１に示した機器のほかにもデータ通信機器が接続された構成であってもよい。なお、この図１のネットワークは一例とした機器群であって、接続されている機器は、ハードディスクなどの外部記憶装置や、ＣＤＲ、ＤＶＤ等の1394シリアルバスでネットワークが構成できる機器なら何であってもよい。
【０１０４】
図１のようなバス構成を背景として、本実施の形態の動作に関する説明を、図２を用いて行なう。記録再生装置101において、４は撮像系、５はＡ／Ｄコンバータ、６は映像信号処理回路、７は所定のアルゴリズムで記録時に圧縮、再生時に伸張を行なう圧縮／伸張回路、８は磁気テープや固体メモリ等とその記録再生ヘッド等も含めた記録再生系、９はシステムコントローラ、10は指示入力を行なう操作部、11 はＤ／Ａコンバータ、12は表示部であるＥＶＦ、13は非圧縮で転送する映像データを記憶するフレームメモリ、14はメモリ13の読み出し等を制御するメモリ制御部、15は圧縮されて転送する映像データを記憶するためのフレームメモリ、16はメモリ15の読み出し等を制御するメモリ制御部、17はデータセレクタ、18は1394シリアルバスのＩ／Ｆ部である。
【０１０５】
また、プリンタ102においては、19はプリンタにおける1394Ｉ／Ｆ部、 20はデータセレクタ、21は所定のアルゴリズムで圧縮された映像データを復号化するための復号化回路、22はプリント画像の画像処理回路、23はプリント画像を形成する為のメモリ、24はプリンタヘッド、25はプリンタヘッドや紙送り等を行なうドライバ、26はプリンタの制御部であるプリンタコントローラ、27はプリンタ操作部である。
【０１０６】
また、ＰＣ103においては、61はＰＣに搭載された1394Ｉ／Ｆ部、62はＰＣＩバス、63はＭＰＵ、64は所定のアルゴリズムで圧縮された映像データを復号化するための復号化回路、65はＤ／Ａコンバータも内蔵しているディスプレイ、66はＨＤＤ、67はメモリ、68はキーボードやマウスといった操作部である。次に、このブロック図２の動作を順を追って説明する。
【０１０７】
＜記録再生装置の動作＞
まず、記録再生装置101の記録時、撮像系４で撮影されたアナログ映像信号は、Ａ／Ｄコンバータ５でデジタル化された後、映像信号処理回路６で映像処理がなされる。映像信号処理回路６の出力の一方は撮影中の映像としてＤ／Ａコンバータ11でアナログ信号に戻され、ＥＶＦ12で表示される。その他の出力は、圧縮回路７で所定のアルゴリズムで圧縮（符号化）処理され、記録再生系８で記録媒体に記録される。ここで、所定の圧縮処理とは、デジタルカメラでは代表的なものとしてＪＰＥＧ方式、家庭用デジタルＶＴＲでは帯域圧縮方法としてのＤＣＴ（離散コサイン変換）及びＶＬＣ（可変長符号化）に基づいた圧縮方式、その他としてＭＰＥＧ方式などである。
【０１０８】
再生時は、記録再生系８が記録媒体から所望の映像を再生する。この時、所望の映像の選択は、操作部10から入力された指示入力を元にして選択され、システムコントローラ９が制御して再生する。記録媒体から再生された映像データのうち、圧縮状態のまま転送されるデータはフレームメモリ15に出力する。非圧縮のデータで転送するため再生データを伸張（復号）するときは、伸張回路７で伸張されメモリ13に出力される。また、再生した映像データをＥＶＦ12で表示するときは、伸張回路７で伸張し、Ｄ／Ａコンバータ11でアナログ信号に戻された後ＥＶＦ12に出力され、表示される。
【０１０９】
フレームメモリ13、およびフレームメモリ15は、それぞれシステムコントローラにて制御されたメモリ制御部14、16で書き込み／読み出しの制御がなされて、読み出された映像データはデータセレクタ17へと出力される。このとき、フレームメモリ13、及び15の出力は、同時間にはどちらか一方がデータセレクタ17に出力されるように制御される。
【０１１０】
システムコントローラ９は記録再生装置101内の各部の動作を制御するものであるが、プリンタ102やＰＣ103といった外部に接続された機器に対する制御コマンドデータを出力して、データセレクタ17から1394シリアルバスを転送されて外部の装置にコマンドをAsync転送することもできる。また、プリンタ102やＰＣ103から転送されてきた各種コマンドデータは、データセレクタ17からシステムコントローラ９に入力され、記録再生装置101の各部の制御に用いることができる。このうち、プリンタ102、ＰＣ103からAsync転送されたデコーダの有無またはデコーダの種類等を示すコマンドデータは、要求コマンドとしてシステムコントローラ９に入力される。その後、そのコマンドデータを基にして、記録再生装置101より映像データを転送する際、それぞれ圧縮、非圧縮どちらの映像データを転送するか判断し、それに応じてメモリ制御部14、及び16にコマンド伝達して、フレームメモリ13、または15から適した一方の映像データを読み出して転送するように制御する。
【０１１１】
圧縮、非圧縮の映像データのうちどちらを転送するかという判断は、プリンタ102またはＰＣ103よりコマンド転送された、それぞれの機器が具備するデコーダの情報に基づいてなされる。その情報により、記録再生装置101での映像データ圧縮方式がデコード可能であると判断されたときは、圧縮された映像データを転送すべく、メモリ15から読み出したデータを出力し、デコードできないと判断されたときは、非圧縮の映像データを転送すべくメモリ13から読み出したデータを出力するよう制御する。
【０１１２】
データセレクタ17に入力した映像データ及びコマンドデータは、1394Ｉ／Ｆ18で1394シリアルバスの仕様に基づいてケーブル上をデータ転送され、プリント用映像データならばプリンタ102が、ＰＣに取り込む映像データならばＰＣ103が受信する。コマンドデータも適宜対象ノードに対してAsync転送される。各データの転送方式については、主に動画や静止画、または音声といったデータはIsoデータとしてアイソクロナス転送方式で転送し、コマンドデータはAsyncデータとしてアシンクロナス転送方式で転送する。ただし、通常Isoデータで転送するデータのうち、転送状況等に応じて場合によってはAsyncデータとして転送した方が都合がいいときはアシンクロナス転送で送ってもよい。
【０１１３】
＜プリンタの動作＞
一方、プリンタ102においては、1394Ｉ／Ｆ部19に入力されたデータは、データセレクタ20で各データの種類毎に分類され、映像データ等プリントすべきデータは、圧縮されている場合復号化回路21でデータの伸張がなされた後、画像処理回路22に出力される。上述の通り、記録再生装置101は、予め送られているデコーダの有無または種類等の情報を元にして、最適な転送が行なえるよう圧縮または非圧縮を選びデータ転送している。そのため、転送データが圧縮されていたとしても、プリンタが具備する復号化回路21における所定のアルゴリズムの伸張方式で、受信したデータは伸張（復号）可能である。転送されてきた映像データが非圧縮のものである場合は、プリンタ１０２に復号化回路21が存在しないか、または、記録再生装置101の圧縮方式に対応不可能な復号化回路21をプリンタ１０２が具備している場合である。この場合は復号化回路21をスルーして直接プリント画像処理回路22に受信したデータを入力する。また、映像データでないプリント用データなどが入力されたときで、伸張する必要がないデータのときにも復号化回路21はスルーされる。
【０１１４】
画像処理回路22に入力されたプリント用のデータは、ここでプリントに適した画像処理が施され、プリンタコントローラ26によって記憶や読み出しが制御されるメモリ23にプリント画像として展開される。このプリント画像はプリンタヘッド24に送られプリントされる。プリンタのヘッド駆動や紙送り等の駆動はドライバ25で行なわれ、ドライバ25やプリンタヘッド24の動作制御、およびその他各部の制御はプリンタコントローラ23によって行われる。
【０１１５】
プリンタ操作部27は紙送りや、リセット、インクチェック、プリンタ動作のスタンバイ／開始／停止等の動作を指示入力するためのものであり、その指示入力に応じてプリンタコントローラ26によって各部の制御がされる。
【０１１６】
次に、1394Ｉ／Ｆ部19に入力したデータが、プリンタ102に対するコマンドデータであったときは、データセレクタ20からプリンタコントローラ26 に制御コマンドとして伝達され、プリンタコントローラ26によって情報に対応したプリンタ102各部の制御がなされる。
【０１１７】
また、プリンタコントローラ26はプリンタ102内の復号回路21の具備するデコーダの種類、または復号化回路21の有無等の情報を出力して、記録再生装置101にコマンドデータとしてAsync転送することができる。
【０１１８】
ここで、復号化回路21について、プリンタに設けるデコーダの一例として、ＪＰＥＧ方式が考えられる。ＪＰＥＧ復号化はソフトウェア的に可能であるので、復号化回路21では、回路内に持つＲＯＭにＪＰＥＧ復号化プログラムファイルを保持しているもの、あるいは他のノードから復号化プログラムを転送してもらったものなどを用いて、ソフト的に処理されて、復号化処理される構成でよい。記録再生装置からＪＰＥＧ方式で圧縮された画像データをプリンタに転送し、プリンタ内で復号化処理するようにしたならば、非圧縮データに変換してから転送するより転送効率が良く、また、ソフトウェアでのデコード処理を用いることで、プリンタ自体にデコーダを設けることにもコスト的にも支障はなく都合が良い。また、復号化回路21ではハード的な復号化として、ＪＰＥＧデコード回路（ボード）を設ける構成でも可能である。
【０１１９】
このように、記録再生装置101からプリンタ102に映像データが転送されプリントするときは、所謂ダイレクトプリントであり、ＰＣでの処理を用いずにプリント処理が可能である。
【０１２０】
＜パーソナルコンピュータの動作＞
次に、ＰＣ103での処理について説明する。記録再生装置101から、ＰＣの1394Ｉ／Ｆ部61に転送された映像データは、ＰＣ103内で、ＰＣＩバス62をデータ相互伝送のバスとして用いて、各部へ転送される。また、ＰＣ103内の各種コマンドデータ等もこのＰＣＩバスを用いて各部へ転送される。
【０１２１】
ＰＣ103では、操作部68からの指示入力と、ＯＳ（オペレーティングシステム）やアプリケーションソフトにしたがって、メモリ67を用いながら、ＭＰＵ63によって処理がなされる。転送された映像データを記録するときはハードディスク66に記録される。
【０１２２】
転送される映像データは、プリンタと同様、記録再生装置101が予め受信したデコーダの有無またはデコーダ種類等の情報を元にして最適な転送が行なえるよう、圧縮または非圧縮を選びデータ転送されたデータである。そこで、受信した映像データは、たとえ圧縮データであっても、ＰＣ103が具備する復号化回路 64で所持する所定のアルゴリズムの伸張方式でデータ伸張可能である。
【０１２３】
映像データをディスプレイ65で表示するときは、圧縮された映像データであったときは復号化回路64で復号化された後、非圧縮の映像データであったときは直接ディスプレイ65に入力され、Ｄ／Ａ変換された後、映像表示される。
【０１２４】
ＰＣ103に設けられた各種復号化回路64とは、一例としてＭＰＥＧ方式等のデコーダをボードとしてスロットに差し込んだものや、もしくはハード的に本体に組み込まれたもの、または、ＭＰＥＧ方式やＪＰＥＧ方式、その他のソフトデコーダをＲＯＭ等によって所有しているものであり、これらデコーダの種類や有無を情報としてコマンドを記録再生装置101に転送することができる。
【０１２５】
このようにして、転送された映像データはＰＣ103内に取り込まれ、記録、編集、ＰＣから他機器に転送等がなされる。
【０１２６】
本実施形態のシステムは、図２のように構成されることにより、記録再生装置101からプリンタ102またはＰＣ103に映像データを転送する前に、転送先のプリンタ102またはＰＣ103からデコーダの情報をコマンドに含めAsync転送することで、記録再生装置101は転送先装置がデコードできるときは圧縮したままの映像データを転送し、デコードできないときは非圧縮のデータにした後の映像データを転送するように選択することができる。
【０１２７】
＜映像データ転送手順＞
次に、映像データ転送時の記録再生装置101による動作をフローチャートにして図４に示す。記録再生装置101における、映像データを1394シリアルバスで接続された他の機器に転送するモードにおいて、まずステップＳ１として、ユーザーによる指定に基づいて、転送先の機器に対するデータ転送の設定を行う。これによって、ステップＳ２として記録再生装置101は、これから転送を行うことを告げる所定の情報及び転送先機器内に具備するデコーダの有無、種類等の情報を転送するように促す為の情報を含んだコマンドを転送先機器に1394バスを用いて Async転送する。ステップＳ２のコマンドを受けて、転送先の機器からはデコーダ情報を含んだ所定の転送確認用コマンドデータが記録再生装置101に Async転送され、記録再生装置101はそれを受信する。
【０１２８】
ステップＳ３として、記録再生装置101のシステムコントローラ９では、デコーダ情報が受信できたか判断し、デコーダ情報が受信されてデコーダの存在とその種類が判別できたときはステップＳ４へ移る。デコーダ情報をコマンド送信できない機器であったなどの理由により受信したコマンド内にデコーダ情報が含まれてなかったとき、またはデコーダが存在しないという情報がコマンドに含まれていたとき、または、転送先機器からのコマンドが返信されないか、バス上転送エラーやAsync転送の遅延等によって所定期間を過ぎてもコマンド Async転送が受信されなかったときにはステップＳ６に移る。
【０１２９】
ここで、転送先の機器から転送元である記録再生装置101に転送されたコマンドデータの内、デコーダ情報については、この後圧縮して記録した映像データの転送を行う際、圧縮したまま転送するか、または非圧縮に戻してから転送するかの判断の材料となるデータである。すなわちこのデータは、転送先の機器からすれば圧縮データの転送を希望するか、または非圧縮データの転送を希望するかの要求データとしての役割も持つことになる。そこで、あらかじめ転送元の記録再生装置101が用いている圧縮方法の情報を、転送先の機器例えばＰＣ103が事前に知っていれば、記録再生装置からステップＳ２で送られてきたコマンドに対する応答を、単にＰＣ103内のデコーダ情報を含む応答ではなく、映像データの転送を、圧縮データで転送するか、それとも非圧縮データで転送するかを指定する要求コマンドとして利用することもできる。
【０１３０】
次にステップＳ４として、受信したデコーダ情報から判別したデコーダの種類が、記録再生装置101の圧縮伸張回路７で用いている映像データの所定のアルゴリズムの圧縮方式に対応できるデコーダであったならば、転送先機器内でのデコード可能ということで、ステップＳ５としてデコーダ有りの設定、すなわち圧縮したままの映像データを1394バス上にISO転送するために、映像データの転送実行時メモリ15からの出力を転送するように制御する。ステップＳ４で判別したデコーダの種類が、記録再生装置101での圧縮方式に対応できないものであったときと、ステップＳ３でデコーダ情報が受信されなかったとき、すなわち転送先機器内にデコーダが何ら存在しないと判断されたときは、ステップＳ６としてデコーダ無しの設定、すなわち記録再生装置101内でISO転送する映像データの伸張処理を行ってから非圧縮の映像データを1394バス上にISO転送するために、映像データの転送実行時メモリ13からの出力を転送するように制御する。
【０１３１】
このように転送先の機器に応じた映像データ転送時の出力形式の設定を行った上で、次にステップＳ７としてユーザはプリントまたはＰＣ取り込み等の為、転送したい映像データを記録媒体に記録されている映像中から選択する。記録再生装置101はその選択された映像の読み出し動作を行なう。映像選択動作を行った上で、ステップＳ８としてユーザが所望の映像に対して転送指令を行なう。
【０１３２】
次にステップＳ５及びＳ６での設定に基づき、ステップＳ９で転送先機器に対応可能なデコーダがあるか否かによって、ある場合はステップＳ10で記録媒体から再生した圧縮したままの映像データをISO転送するため、ステップＳ８転送指令に応じてメモリ15から読み出した映像データを出力、転送するようにシステムコントローラ９及びメモリ制御16が制御する。ない場合はステップＳ11で、伸張回路７で伸張した後の非圧縮の映像データをISO転送するため、ステップＳ８の転送指令に応じてメモリ13から読み出した映像データを出力、転送するようにシステムコントローラ９及びメモリ制御14が制御する。基本的には、映像データの転送は1394シリアルバスを用いて、アイソクロナス転送方式でパケット転送されるが、アシンクロナス転送で送っても良い。
【０１３３】
ステップＳ12として所望の映像データについて転送が終了すると、ステップＳ13として他の映像データの転送を行いたいかユーザにより選択されているか判定し、他の映像が選択されているときはステップＳ７に戻り映像選択から繰り返し、他の映像が選択されていないときはステップＳ14に移る。ステップＳ14 では、転送先機器を変更して映像データ転送モードを続行するか判断し、転送先を他の機器に変更して映像データ転送を行うときはステップＳ１の転送先指定から繰り返し、ステップＳ14で転送先を変更してモード続行する必要が無いときは、これにて本フローを終了するものとする。常時、指示された映像データ転送モード実行に伴なってステップＳ１にリターンし、本フローは繰り返される。
【０１３４】
以上のようにして、本実施形態の記録再生装置は、映像データを送信する送信先から、送信先の備えている復号手順が何であるかを示す情報を獲得し、獲得した情報から、送信先の備える復号順に対応する手順で符号化を行っているならば符号化された映像データを送信し、そうでない場合には符号化データを復号して、それを送信する。これにより、通信により接続されている機器がどのような符号化手順・復号手順を備えていようとも、データの送受を確実に行なうことができる。更に、通信を行なう機器が互いに同じ符号化手順・復号手順を備えている場合には、符号化データを送受信することになるため、通信が迅速に行え、また、送受信に要するメモリの容量も復号されたデータでデータ通信を行なう場合に比べて少なくて済む。
【０１３５】
［第２の実施の形態］
次に第２の実施の形態について説明する。
【０１３６】
＜システムの構成＞
第２の実施形態では、図５に示したような記録再生装置201とプリンタ202とをノードとし、1394シリアルバスケーブルで接続したバス構成で実施する。このとき、記録再生装置201からの映像データをプリンタ202でプリントする、ダイレクトプリントが実現される。
【０１３７】
このときのブロック図は図６に示す。ブロック図６の構成は、基本的にはブロック図２に示した第１の実施の形態の構成からＰＣを取り除いた、記録再生装置とプリンタの1394Ｉ／Ｆ間をpeer-to-peer接続した構成である。ブロック図２と異なる部分は、記録再生装置201の圧縮回路７で行われているＭＰＥＧやＪＰＥＧ、ＤＶ方式などの映像データ圧縮方法で圧縮されたデータを伸張するための、主としてソフトデコード用プログラムで形成されるデコードプログラム情報をＲＯＭ74に保有しており、このプログラム情報を必要に応じてシステムコントローラ９および読み出し制御部73の制御に基づきＲＯＭ74から読み出し、データセレクタ17から1394Ｉ／Ｆ部18を経て他ノードに転送するという点である。
【０１３８】
デコードプログラム情報の転送形態としては、主としてアシンクロナス転送方式で転送、場合によってはISO転送するものとし、映像データの転送実行前、または映像データパケットの転送と並行してその隙間に混在させて転送する。また、ブロック図６では記録再生装置201内に非圧縮データを転送するためのメモリ13及びそのメモリ制御部14は有していない。
【０１３９】
一方、プリンタ202では映像データを復号化するために、映像データの受信前、あるいは映像データと並行して記録再生装置201から前記したデコードプログラム情報を受信し、それを全部または一部書き換え可能なメモリ71に記憶する。受信された圧縮映像データは、復号処理回路72により、メモリ72に記憶されたデコードプログラム情報を用いてデコードされる。
【０１４０】
メモリ71は、圧縮されたデータの転送を行う接続機器に応じてデコードプログラムを書き換えて記憶可能であり、復号処理回路72とともに用いて複数種類のデコーダとして機能できるような構成を持つ。メモリ71にデコードプログラムを他の機器から得なければデコーダとして全く動作できない構成であってよいが、所定のデコードプログラムだけはメモリ71の一部にあらかじめ備えた構成であってもよい。
【０１４１】
なお、記録再生装置201とプリンタ202との間では、送受信されるデコードプログラム情報の互換性が保証されなければならない。そのためには、復号処理回路72を予め規格化しておき、その規格にあわせて記述されたデコードプログラム情報をＲＯＭ74に格納しておけばよい。あるいは、デコードプログラム情報の記述の仕方のみを規格化しておき、復号処理回路72は、その規格化されたプログラム情報を解釈・実行するよう構成しておいてもよい。
【０１４２】
ブロック図6のその他の回路要素とその動作は第１の実施の形態で説明したものと同じであるので省略する。
【０１４３】
記録再生装置201からプリンタ202への圧縮されたプリント映像データの転送に際しては、まず、映像データの転送に先立って、記録再生装置201で用いている映像データの圧縮方式に対応したデコードプログラムをＲＯＭ74より読み出し、プリンタ202にAsync転送する。プリンタ202は受信したデコードプログラムをメモリ71に記憶して、転送される圧縮映像データのデコードに利用する。記録再生装置201では記録するすべての映像データに統一された１つの圧縮／伸張方式を用いるが、また任意の映像データ量又は時間毎に圧縮方式が複数種混在した記録状態であってもよい。
【０１４４】
このように構成することによって、プリンタにデコーダ情報を持っていなくても、圧縮されたままの映像データを転送可能であるので、非圧縮映像データの転送より転送効率がよい。次に、第２の実施の形態の動作をフローチャート図にして図24に示し、これを用いて説明する。
【０１４５】
＜データ転送の手順＞
まずステップＳ21として、ユーザーに転送先の機器を指定させる。本実施形態ではプリンタと指定されることになる。その指示に基づいて転送設定を行う。次にユーザーは、プリントしたい映像データを、記録媒体に記録されている映像中から選択する。ステップＳ22では、記録再生装置201は選択された映像の読み出し動作を行なう。映像選択動作を行うと、ステップＳ23としてユーザーに所望の映像に対する転送指令を行わせる。
【０１４６】
ステップＳ24では、転送指令が行われた映像データをデコードするために必要なデコードプログラムを、転送先の機器、ここではプリンタ202に転送する必要があるか判断する。必要がある場合、すなわち、プリンタ内にデコード処理のための必要な復号処理回路72などの手段を備えており、デコードプログラムを転送することで圧縮映像データのデコードが可能となると判断されたときは、ステップＳ25として必要なデコードプログラムをＲＯＭ74から読み出し、これをプリンタ202に転送する。プリンタ202では、受信したデコードプログラム情報をメモリ71に格納する。
【０１４７】
一方、ステップＳ24で転送が不要と判断された場合、すなわち、転送先のプリンタ202が、あらかじめ必要なデコードプログラム情報を有しているか、または過去に同じデコードプログラム情報を転送済であって既に今回必要とするデコード情報がメモリ71に記憶されているときなどには、デコードプログラム情報の転送は行わず、映像データの転送に移る。
【０１４８】
なお、このプリンタ202に対してデコードプログラム情報の転送が不要か否かを判断するための情報は、ステップＳ23において記録再生装置201からプリンタ202へとその情報を要求し、プリンタ202から、それが有するデコードプログラム情報が何であるかを示す情報を応答することによって得ることができる。
【０１４９】
つづいて、ステップＳ26として転送指令した圧縮映像データを、記録媒体から読み出してメモリ15から出力して、プリンタ202へ転送する。
【０１５０】
プリンタ202では、圧縮映像データを受信すると、すでに記憶されているデコードプログラム情報に基づいて映像データのデコード処理を行い、映像データのプリント処理を開始する。Async転送のためデコードプログラムの転送が終了していないときは、デコードプログラム転送完了を待って、映像データデコード処理を開始する。
【０１５１】
ステップＳ27では、所望の映像データについて転送が終了すると転送終了に伴う所定の処理を行ない、ステップＳ28では、他の映像データの転送を行う選択がされたか判定し、他の映像が選択されているときは、ステップＳ22に戻り映像選択から繰り返す。他の映像が選択されていないときは本フローを終了する。また、映像データ転送モード実行の指示に伴なって、随時ステップＳ21から本フローは繰り返される。
【０１５２】
以上のように、本実施の形態のシステムでは、記録再生装置による映像圧縮方法に応じた伸長方法のデコードプログラム情報が、記録再生装置からプリンタに提供されるため、機器間で転送される映像データは常に圧縮データである。このために、データ量が小さくなり、転送前に予め伸長処理する必要が無くなり、データの転送が迅速に行える。しかもデータの受信側ではデータを格納するためのメモリが、圧縮されていないデータを受信する場合に比べて非常に少なくて済む。
【０１５３】
［第３の実施の形態］
次に第３の実施の形態について説明する。第３の実施形態でも第２の実施形態と同様、図５に示したような記録再生装置201とプリンタ202とをノードとし、1394シリアルバスケーブルでpeer-to-peer接続したバス構成、ダイレクトプリント可能な構成で実施する。
【０１５４】
＜システムの構成＞
第３の実施の形態を説明するためのブロック図を図23に示す。ブロック図23の構成は、第２の実施の形態で用いたブロック図６の記録再生装置201に、非圧縮の映像データも転送できる構成とするために、ブロック図２で用いたフレームメモリ13とそのメモリ制御部14を加えた構成である。
【０１５５】
第３の実施の形態では、ＲＯＭ74からのデコードプログラム情報の転送、及びフレームメモリ15からの圧縮映像データの転送、フレームメモリ13からの非圧縮映像データの転送を、プリンタ202より転送されるデコーダの有無、種類や構成の情報を含んだコマンドデータ（デコーダ情報）をもとにして、システムコントローラ９によって、圧縮映像データのみを転送するべきか、圧縮映像データとデコードプログラム情報を転送するべきか、非圧縮映像データを転送するべきか判断されて各部を制御し、必要に応じたデータ転送を行う。
【０１５６】
詳しく説明すると、あらかじめ転送されたプリンタ内のデコーダ情報より、プリンタ202内メモリ71の一部または全部に記録再生装置201で用いている圧縮方式をデコードするための情報があり、圧縮映像データの復号処理が可能であると判断された場合（ハード的な復号手段でもよい）には、システムコントローラ９はメモリ制御部16を介してメモリ15を制御し、ユーザの指示に応じて圧縮されたままの映像データを読み出し、ISO転送開始する。
【０１５７】
プリンタからのデコーダ情報より、現状ではデコードプログラムの欠如等により圧縮映像データのデコードはできないが、復号回路系の一部であるメモリ71にデコードプログラム情報を与えてやることでプリンタ内の復号処理回路72が使え、プリンタにおいてデコードが可能であると判断されたときには、ＲＯＭ読み出し制御部73を制御し、ＲＯＭ74より必要なデコードプログラム情報をメモリ71にAsync転送した上で、メモリ制御部16を介してメモリ15から圧縮されたままの映像データを読み出し、これを転送するように制御する。
【０１５８】
一方、プリンタからのデコーダ情報よりプリンタ内のメモリ71と復号手段72とを含む復号回路系が存在しない、または利用できないと判断された場合、またはデコード情報を含むコマンドが受信されなかったときには、プリンタにおける圧縮映像データの復号は不可能であるので、メモリ制御部14を介してメモリ13から非圧縮な映像データを読み出し転送するように制御する。
【０１５９】
ブロック図23の各部とその動作は第１の実施の形態または第２の実施の形態で説明したものと同じであるので省略する。
【０１６０】
このように構成することによって、極力圧縮されたままの映像データを転送可能であるので非圧縮映像データの転送より転送効率がよく、圧縮映像データを転送できなくても非圧縮映像データを転送できるので都合が良い。
【０１６１】
次に、第３の実施の形態の動作をフローチャート図にして図25に示し、これを用いて説明する。まずステップＳ31として、ユーザーにより転送先の機器をプリンタと指定されると、指示に基づいた転送設定を行う。これによって、記録再生装置201からはステップＳ32としてプリンタ202に対して、これから転送を行うことを告げる所定の情報及び転送先機器内に具備するデコーダの有無、種類、構成等の情報を転送するように促す為の情報を含んだコマンドを1394バスを用いてAsync転送する。ステップＳ32のコマンドを受けて、プリンタ202からはデコーダ情報を含んだ所定の転送確認用コマンドデータが記録再生装置201にAsync転送される。
【０１６２】
ここで、記録再生装置201のシステムコントローラ９では、ステップＳ33においてデコーダ情報の受信が確認できたか判断し、デコーダ情報が受信されたときはステップＳ34へ移り、プリンタ202にデコーダ機能が存在しない為、またはデコーダ情報をコマンド送信できない機器であった為等の理由によりデコーダ情報が受信されなかったとき、または、デコード情報を含むコマンドが返送されないか、バス上の転送エラーやAsync転送の遅延などによって所定期間を過ぎてもコマンドAsync転送が受信されなかったときは、記録再生装置201は非圧縮の映像データのみを転送するモードへ移行してステップＳ40に移る。
【０１６３】
次にステップＳ34として、デコーダ情報からプリンタのデコーダ機能を調べ、記録再生装置201で用いられるすべての圧縮方式に対応可能であると判断されたらステップＳ35へ、所定のデコードプログラムを転送することによって圧縮映像データのデコードが可能と判断されたらステップＳ45へ、プリンタ202内に設けられたデコード手段ではデコードプログラムを転送する方法にも対応せず、具備しているデコーダでは対応できず、またはデコードの為の手段自体が存在しない等の理由から転送する映像データのデコードが不可能である時にはステップＳ40へとすすみ、それぞれモード移行する。
【０１６４】
ここで、プリンタ202から転送元である記録再生装置201に転送されたコマンドデータの内、デコーダ情報については、この後圧縮して記録された映像データの転送を行う際圧縮したまま転送するか、または非圧縮に戻してから転送するか、またはデコードプログラムと共に圧縮データを転送するかのモードを選択する判断の材料となるデータであり、かつプリンタ 202からの転送モードに関する要求データとしての役割も持つことになる。また、ノード間で所定情報の事前通知がなされていれば、ステップＳ32に対しての転送確認用コマンドデータを返送するときにデコーダ情報という形でなく、直接映像データ転送に関する、圧縮データの転送指令、非圧縮データの転送指令、デコードプログラム転送指令を意味する要求コマンドとして用いることも可能になる。
【０１６５】
次に、プリンタ202内のデコード手段で、記録再生装置201で施される、如何なる圧縮方式による圧縮映像データをもデコード可能であるときは、圧縮映像データを転送可能なので圧縮映像データを転送するモードとして、ステップＳ35以下のフローに入る。
【０１６６】
ステップＳ35として、ユーザーに選択された映像データを、記録媒体に記録されている映像から選択し、記録再生装置201はその読み出し動作を行なう。映像選択動作を行った上で、ステップＳ36では、ユーザーに所望の映像に対して転送指令を行なわせる。ステップＳ37では、転送指令された映像データを、圧縮したまま転送するため記録媒体から再生し、フレームメモリ15から出力して、プリンタへISO転送する。プリンタでは所定の動作手順に基づき、映像データのデコード処理が行われ、映像データのプリント処理を開始する。
【０１６７】
ステップＳ38として所望の映像データについて転送が終了すると、ステップＳ39として他の映像データの転送を行う選択を行わせ、他の映像が選択されるとステップＳ35に戻って映像選択から繰り返し、他の映像を選択しないときはここで終了する。
【０１６８】
一方、プリンタ202において、本システムを用いて圧縮映像データを転送してもプリンタ202の構成などからデコードが不可能なときは、常に非圧縮映像データを転送することでプリントする映像データの転送を行うことができる。このときの非圧縮映像データを転送するモードとしてはステップＳ40以下のフローに入る。
【０１６９】
ステップＳ40として、ユーザーはプリントしたい映像データを、記録媒体に記録されている映像から選択させる。記録再生装置201は選択された映像データの読み出し動作を行なう。映像選択動作を行った上で、ステップＳ41としてユーザーが所望の映像に対して転送指令を行なう。ステップＳ42として転送指令した映像データを、伸張回路７でデコードして非圧縮の状態にし、フレームメモリ13から出力して、プリンタへISO転送する。プリンタでは所定の動作手順に基づき、映像データのプリント処理を開始する。
【０１７０】
ステップＳ43として、所望の映像データについて転送が終了すると、ステップＳ44として他の映像データの転送を行う選択を行い、他の映像を選択するときはステップＳ40に戻り映像選択から繰り返し、他の映像を選択しないときはここで終了するものとする。
【０１７１】
次に、プリンタ202が具備するデコーダ手段に所定のデコードプログラムを与えることによって、転送する圧縮映像データのデコードが可能になるときには、デコードプログラムと圧縮映像データを転送するモードとしてステップＳ45以下のフローに入る。
【０１７２】
ステップＳ45として、ユーザーにプリントしたい映像データを、記録媒体に記録されている映像中から選択させる。記録再生装置201は選択された映像データの読み出し動作を行なう。映像選択動作を行った上で、ステップＳ46としてユーザーに所望の映像に対して転送指令を行なわせる。
【０１７３】
ステップＳ47では、転送指令を行った映像データに対して転送先のプリンタ202内でこの映像データをデコードするために必要な、所定のデコードプログラムを転送する必要があるか判断し、必要である時はステップＳ48として必要なデコードプログラムをＲＯＭ74から読み出しこれをプリンタ202にAsync （またはISO）転送する。プリンタ202では受信したデコードプログラム情報をメモリ71に記憶して、復号処理回路72と共にデコード処理を行なう。
【０１７４】
また、ステップＳ47として、あらかじめハードまたはソフト的なデコード手段を具備しているか、または過去に同じデコードプログラムを転送済であって既に今回必要とするデコード情報がメモリ71に記憶されているときなど、デコードプログラムの転送が必要でないと判断されたときはデコードプログラムの転送は行わず、映像データの転送に移る。
【０１７５】
つづいて、ステップＳ49として転送指令した映像データを、記録媒体から読み出して圧縮された状態のままメモリ15から出力して、プリンタへISO転送する。プリンタでは所定の動作手順に基づき、既存の、または転送済みのデコードプログラムを用いて転送された映像データのデコード処理が行われ、映像データのプリント処理を開始する。
【０１７６】
ステップＳ50として、所望の映像データについて転送が終了すると、ステップＳ51として他の映像データの転送を行う選択を行い、他の映像を選択するときはステップＳ45に戻り映像選択から繰り返し、他の映像を選択しないときはこれにてこれで終了するものとする。
【０１７７】
常時、指示された映像データ転送モード実行に伴なってステップＳ31にリターンし、本フローは繰り返される。
【０１７８】
以上のようにして、第１の実施の形態のシステムと、第２の実施の形態のシステムとを組み合わせることができる。このシステムでは、デコードプログラム情報を受信してそれにしたがって符号化データを復号する機器と、様々な方式の復号手順を実行する回路を内蔵した機器とに対しては符号化データを送信し、復号する機能を有していない機器に対しては符号化されていないデータを送信する。このため、データ送信にようする時間が短縮され、また、記憶領域の利用効率が高まる。
【０１７９】
なお、本実施形態では、記録媒体に圧縮記録した映像データを用いて説明しているが、記録した映像に限らず、撮像装置より入力した映像データであって記録処理が行わなれていない圧縮映像データを用いたものであってもよい。
【０１８０】
また、実施の形態における記録再生装置は主として動画及び静止画の映像データに関したものであり、カメラ一体型ＶＴＲやデジタルカメラを意識したものであるが、他の記録または再生装置であるのＤＶＤやＭＤ、ＣＤ、ＰＣなどのデジタル機器であってもよく、扱うデータも映像データに限らず音声データや各種ファイルデータなどであっても構わない。
【０１８１】
［他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【０１８２】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１８３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１８４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１８５】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【０１８６】
【図１】第１の実施の形態のネットワーク一例を示した図である。
【図２】第１の実施の形態を適用した記録再生装置、プリンタ装置、ＰＣのブロック図である。
【図３】従来例で、デジタルカメラ、ＰＣ、プリンタをＰＣを中心に接続したときの構成を示すブロック図である。
【図４】本発明における第１の実施の形態の記録再生装置での動作の流れを示すフローチャート。
【図５】本発明の第２，第３のの実施の形態のネットワーク一例を示した図である。
【図６】第２の実施の形態を適用した記録再生装置とプリンタ装置のブロック図である。
【図７】1394シリアルバスを用いて接続されたネットワーク構成の一例を示す図である。
【図８】1394シリアルバスの構成要素を表す図である。
【図９】1394シリアルバスのアドレスマップを示す図である。
【図１０】1394シリアルバスケーブルの断面図である。
【図１１】ＤＳ−Ｌｉｎｋ符号化方式を説明するための図である。
【図１２】1394シリアルバスで各ノードのＩＤを決定する為のトポロジ設定を説明するための図である。
【図１３】1394シリアルバスでのアービトレーションを説明するための図である。
【図１４】アシンクロナス転送の時間的な状態遷移を表す基本的な構成図である。
【図１５】アシンクロナス転送のパケットのフォーマットの一例の図である。
【図１６】アイソクロナス転送の時間的な状態遷移を表す基本的な構成図である。
【図１７】アイソクロナス転送のパケットのフォーマットの一例の図である。
【図１８】1394シリアルバスで実際のバス上を転送されるパケットの様子を示したバスサイクルの一例の図である。
【図１９】バスリセットからノードＩＤの決定までの流れを示すフローチャート図である。
【図２０】バスリセットにおける親子関係決定の流れを示すフローチャート図である。
【図２１】バスリセットにおける親子関係決定後から、ノードＩＤ決定までの流れを示すフローチャート図である。
【図２２】アービトレーションを説明するためのフローチャート図である。
【図２３】第３の実施の形態を適用した記録再生装置とプリンタ装置のブロック図である。
【図２４】第２の実施の形態の動作を示すフローチャートである。
【図２５】第３の実施の形態の動作を示すフローチャートである。
【図１】
2006050653.tif 000003
【図２】
2006050653.tif 000004
【図３】
2006050653.tif 000005
【図４】
2006050653.tif 000006
【図５】
2006050653.tif 000007
【図６】
2006050653.tif 000008
【図７】
2006050653.tif 000009
【図８】
2006050653.tif 000010
【図９】
2006050653.tif 000011
【図１０】
2006050653.tif 000012
【図１１】
2006050653.tif 000013
【図１２】
2006050653.tif 000014
【図１３】
2006050653.tif 000015
【図１４】
2006050653.tif 000016
【図１５】
2006050653.tif 000017
【図１６】
2006050653.tif 000018
【図１７】
2006050653.tif 000019
【図１８】
2006050653.tif 000020
【図１９】
2006050653.tif 000021
【図２０】
2006050653.tif 000022
【図２１】
2006050653.tif 000023
【図２２】
2006050653.tif 000024
【図２３】
2006050653.tif 000025
【図２４】
2006050653.tif 000026
【図２５】
2006050653.tif 000027