JP2000049834A - デ―タ通信システム、装置及び方法並びに記憶媒体 - Google Patents
デ―タ通信システム、装置及び方法並びに記憶媒体Info
- Publication number
- JP2000049834A JP2000049834A JP9816399A JP9816399A JP2000049834A JP 2000049834 A JP2000049834 A JP 2000049834A JP 9816399 A JP9816399 A JP 9816399A JP 9816399 A JP9816399 A JP 9816399A JP 2000049834 A JP2000049834 A JP 2000049834A
- Authority
- JP
- Japan
- Prior art keywords
- data
- communication
- source node
- node
- communication system
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Systems (AREA)
Abstract
でも、システム全体の操作性を著しく損なうことなく、
利用可能な通信プロトコルに適応的に選択することがで
きるようにすることである。 【解決手段】 少なくとも1回の非同期通信を用いて1
つ以上のセグメントからなるオブジェクトデータを転送
するソース・ノードと、前記ソース・ノードから転送さ
れたオブジェクトデータを受信する1つ以上のデスティ
ネーション・ノードと、前記ソース・ノードと前記1つ
以上のデスティネーション・ノードとの間に論理的な接
続関係を設定するコントローラとを備え、前記コントロ
ーラは、複数の異なる通信プロトコルの中から、前記ソ
ース・ノードと前記デスティネーション・ノードとの間
で使用される通信プロトコルを選択する。
Description
ム、装置及び方法並びに記憶媒体に関し、特に、情報デ
ータ(画像データを含む)とコマンドデータとを混在さ
せて高速に通信するネットワークとそのネットワークに
適用可能な通信プロトコルに関するものである。
PC)の周辺機器の中で、最も利用頻度が高かったのは
ハードディスクやプリンタであった。これらの周辺機器
は、専用の入出力インタフェース或いはSCSI(smal
l computer system interface)インタフェース等の汎
用性のあるデジタルインタフェースによってPCと接続
されていた。
デオカメラ等のAV(Audio/Visual)機器もPCの周辺
装置の1つとして注目を浴びている。これらのAV(Au
dio/Visual)機器も専用インタフェースを介してPCと
接続されていた。
ルインタフェースとAV機器の有するデジタルインタフ
ェースとは互換性がなく、それらを直接接続することは
できなかった。そのため、例えば、AV機器が周辺機器
に、例えば、静止画像を通信したい場合、必ずPCを介
す必要があった。
インタフェースでは、特にAV機器の有する静止画像や
動画像のような大容量のデータを扱う場合において、デ
ータ転送レートが低い、パラレル通信のため通信ケーブ
ルが太い、接続できる周辺機器の数と種類が少ない、接
続方式に制限がある、リアルタイムなデータ転送が行え
ない等の多くの問題があった。
速、高性能デジタルインタフェースの1つとして、IE
EE(The Institute of Electrical and Electronics
Engineers,Inc.)1394−1995規格が知られて
いる。
たデジタルインタフェース(以下、1394インタフェ
ース)には、次のような特徴がある。 (1)データ転送速度が高速である。 (2)リアルタイムなデータ転送方式(即ち、Isoc
hronous転送方式)とAsynchronous
転送方式をサポートしている。 (3)自由度の高い接続構成(トポロジ)を構築でき
る。 (4)プラグ・アンド・プレイ機能と活線挿抜機能をサ
ポートしている。
E1394−1995規格では、コネクタの物理的、電
気的な構成、最も基本的な2つのデータ転送方式等につ
いては定義しているが、どのような種類のデータを、ど
のようなデータ・フォーマットで、どのような通信プロ
トコルに基づいて送受信するのかについては定義してい
なかった。
sochronous転送方式では、送出パケットに対
する応答が規定されていないため、各Isochron
ousパケットが確実に受信されたかは保証されない。
従って、連続性のある複数のデータを確実に転送したい
場合、或いは1つのファイルデータを複数のデータに分
割して確実に転送したい場合、Isochronous
転送方式を使用することはできなかった。
sochronous転送方式では、転送帯域に空きが
ある場合でも、通信の総数が64個に制限される。この
ため、少ない転送帯域で数多くの通信を行いたい場合、
Isochronous転送方式を使用することはでき
なかった。
は、ノードの電源のON/OFF、ノードの接続/切り
離し等に応じてバスリセットが生じた場合、データの転
送を中断しなければならない。ところが、IEEE13
94−1995規格では、バスリセットや伝送時のエラ
ーによってデータ転送が中断した場合、どのような内容
のデータを失ったのかについては知ることができなかっ
た。更に、一度中断した転送を復帰するためには、非常
に煩雑な通信手順を踏む必要があった。ここで、バスリ
セットとは、新たなトポロジの認識と各ノードに割り当
てられるアドレス(ノードID)の設定とを自動的に行
う機能である。この機能により、IEEE1394−1
995規格では、プラグ・アンド・プレイ機能と活線挿
抜機能とを提供することができる。
拠した通信システムにおいて、リアルタイム性は必要と
されないが、信頼性が要求される比較的データ量の多い
オブジェクトデータ(例えば、静止画像データ、グラフ
ィックスデータ、テキストデータ、ファイルデータ、プ
ログラムデータ等)を、1以上のセグメントに分割し、
各セグメントを1つ以上のAsynchronous転
送を用いて順次転送するための通信プロトコルは具体的
に提案されていなかった。
準拠した通信システムにおいて、複数の機器間のデータ
通信を、Asynchronous転送方式によるブロ
ードキャスト通信を用いて実現するための通信プロトコ
ルも具体的に提案されていなかった。
案された場合、通信相手の使用する通信プロトコルを自
動的に判別し、使い分けるようにできることが望まし
い。しかしながら、複数の異なる通信プロトコルを使い
分けるための仕組みについても具体的には何も提案され
ていなかった。
目的とする。本発明の他の目的データ通信システム、装
置及び方法並びに記憶媒体において、リアルタイム性の
必要としないオブジェクトデータを確実に転送すること
のできる技術を提供する。又、本発明の他の目的は、デ
ータ通信システム、装置及び方法並びに記憶媒体におい
て、複数の異なる通信プロトコルが存在する場合でも、
使用可能な通信プロトコルを適応的に選択することので
きる技術を提供する。
テムは、少なくとも1回の非同期通信を用いて1つ以上
のセグメントからなるオブジェクトデータを転送するソ
ース・ノードと、前記ソース・ノードから転送されたオ
ブジェクトデータを受信する1つ以上のデスティネーシ
ョン・ノードと、前記ソース・ノードと前記1つ以上の
デスティネーション・ノードとの間に論理的な接続関係
を設定するコントローラとを備え、前記コントローラ
は、複数の異なる通信プロトコルの中から、前記ソース
・ノードと前記デスティネーション・ノードとの間で使
用される通信プロトコルを選択することを特徴とする。
ドと1つ以上のデスティネーション・ノードとの間に論
理的な接続関係を設定するステップと、複数の異なる通
信プロトコルの中から、前記ソース・ノードと前記デス
ティネーション・ノードとの間で使用される通信プロト
コルを選択するステップと、1つ以上のセグメントから
なるオブジェクトデータを少なくとも1回の非同期通信
を用いて前記デスティネーション・ノードに転送するス
テップとを有することを特徴とする。
グメントからなるオブジェクトデータを少なくとも1つ
の通信パケットにパケッタイズする手段と、1つ以上の
デスティネーション・ノードとの間に設定された論理的
な接続関係と複数の異なる通信プロトコルの1つとを用
いて、前記通信パケットを非同期転送する手段とを備え
ることを特徴とする。
グメントからなるオブジェクトデータを少なくとも1つ
の通信パケットにパケッタイズするステップと、1つ以
上のデスティネーション・ノードとの間に設定された論
理的な接続関係と複数の異なる通信プロトコルの1つと
を用いて、前記通信パケットを非同期転送するステップ
とを有することを特徴とする。
ドとの間に設定された論理的な接続関係と複数の異なる
通信プロトコルの1つとを用いて非同期転送された少な
くとも1つの通信パケットを受信する手段と、前記通信
パケットに含まれるデータを該通信パケットの指定する
メモリ空間に書き込む手段とを備えることを特徴とす
る。
ドとの間に設定された論理的な接続関係と複数の異なる
通信プロトコルの1つとを用いて非同期転送された少な
くとも1つの通信パケットを受信するステップと、前記
通信パケットに含まれるデータを該通信パケットの指定
するメモリ空間に書き込むステップとを有することを特
徴とする。
ドと1つ以上のデスティネーション・ノードとの間に論
理的な接続関係を設定する手段と、前記論理的な接続関
係において使用可能な通信プロトコルを、複数の異なる
通信プロトコルの中から選択する手段とを備えることを
特徴とする。
ドと1つ以上のデスティネーション・ノードとの間に論
理的な接続関係を設定するステップと、前記論理的な接
続関係において使用可能な通信プロトコルを、複数の異
なる通信プロトコルの中から選択するステップとを有す
ることを特徴とする。
タを送信するソース・ノードと、該情報データを受信す
るデスティネーション・ノードとを含むデータ通信シス
テムにおいて、1つ以上の特定された転送先或いは不特
定多数の転送先に応じて異なる複数の通信プロトコルの
何れかを選択し、上記情報データを転送することを特徴
とする。
タを送信するソース・ノードと、該情報データを受信す
るデスティネーション・ノードとを含むデータ通信シス
テムにおいて、上記ソース・ノードと上記デスティネー
ション・ノードとの間の接続を設定する迄の動作を共用
する複数の通信プロトコルの何れかを選択し、前記情報
データを転送することを特徴とする。
送信するソース・ノードと、該情報データを受信するデ
スティネーション・ノードとを含むデータ通信システム
に適用可能なデータ通信方法において、1つ以上の特定
された転送先或いは不特定多数の転送先に応じて異なる
複数の通信プロトコルの何れかを選択し、上記情報デー
タを転送することを特徴とする。
送信するソース・ノードと、該情報データを受信するデ
スティネーション・ノードとを含むデータ通信方法にお
いて、 上記ソース・ノードと上記デスティネーション
・ノードとの間の接続を設定する迄の動作を共用する複
数の通信プロトコルの何れかを選択し、前記情報データ
を転送することを特徴とする。
ータを送信するソース・ノードと、該情報データを受信
するデスティネーション・ノードとを含むデータ通信シ
ステムに適用可能なデータ通信装置において、1つ以上
の特定された転送先或いは不特定多数の転送先に応じて
異なる複数の通信プロトコルの何れかを選択する選択手
段と、上記選択手段により選択された通信プロトコルに
基づいて情報データの転送を行う転送手段とを具備する
ことを特徴とする。
いて図面を参照して詳細に説明する。図1は、データ通
信システムの構成の一例を示す図である。本実施例のデ
ータ通信システムは、図1に示すように、コンピュータ
10、カメラ一体型デジタルビデオレコーダ28、プリ
ンタ60により構成されている。
明する。12はコンピュータ10の動作を制御する演算
処理装置(MPU)である。14はIEEE1394−
1995規格に準拠した機能と本実施例において規定す
る通信プロトコルに関する機能とを有する1394イン
タフェースである。16はキーボード、マウスなどから
なる操作部である。18は圧縮符号化されたディジタル
データ(動画像データ、静止画像データ、音声データ
等)を復号するデコーダである。20はCRTディスプ
レイや液晶パネルなどの表示装置からなる表示部(ディ
スプレイ)である。22は各種のディジタルデータ(動
画像データ、静止画像データ、音声データ、グラフィッ
クスデータ、テキストデータ、プログラムデータ等)を
記録するハードディスク(HD)である。24は内部メ
モリである。26はPCIバスなどのコンピュータ10
内部の各処理部を相互に接続する内部バスである。
ダ(以下、DVCRと称する)28の構成について説明
する。30は被写体の光学像を電気信号に変換し、その
電気信号をに変換する撮像部(opt)である。32は
アナログ-デジタル(A/D)変換器である。34はデ
ィジタル化された動画像、静止画像を所定のフォーマッ
トのディジタル画像データに変換する画像処理部であ
る。36は圧縮/伸長処理部であり、圧縮符号化された
ディジタルデータ(動画像データ、静止画像データ、音
声データ等)を復号する機能と、デジタル画像データを
高能率符号化する(例えば、MPEG方式やDV方式の
ように、所定の画像単位に直交変換後、量子化し、可変
長符号化する)機能とを有する。38は高能率符号化さ
れたディジタル画像データを一時的に格納するメモリで
ある。40は高能率符号化されていないディジタル画像
データを一時的に格納するメモリである。42はデータ
セレクタである。44はIEEE1394−1995規
格に準拠した機能と本実施例において規定する通信プロ
トコルに関する機能とを有する1394インタフェース
である。46、48はメモリ38とメモリ40の書き込
みと読み出しとを制御するメモリ制御部である。50は
DVCR28の動作を制御する制御部(システムコント
ローラ)であり、マイクロコンピュータを有する。52
はリモコンや操作パネル等からなる操作部である。54
は電子ビューファインダ(EVF)である。56はD/
A変換器である。58は磁気テープ、磁気ディスク、光
磁気ディスク等の記録媒体からなる記録再生部で、各種
のディジタルデータ(動画像データ、静止画像データ、
音声データ等)を記録再生する。
る。62はIEEE1394−1995規格に準拠した
機能と本実施例において規定する通信プロトコルに関す
る機能とを有する1394インタフェースである。64
はデータセレクタである。66は操作ボタンやタッチパ
ネル等からなる操作部である。68はプリンタ60の動
作を制御するプリンタコントローラである。70はデコ
ーダである。72は内部メモリである。74は1394
インタフェースを介して受信された静止画像データ、テ
キストデータ、グラフィックスデータ等を処理する画像
処理部である。76はドライバである。78はプリンタ
ヘッドである。
VCR28及びプリンタ60の各通信装置(以下、ノー
ドと称する)は、1394インタフェース14、44、
62を介して相互に接続されている(以下、1394イ
ンタフェースによって構成されたネットワークを139
4シリアルバスと称する)。各ノードは、所定の通信プ
ロトコルを定義することによって、各種のオブジェクト
データ(例えば、動画像データ、静止画像データ、音声
データ、グラフィックスデータ、テキストデータ、プロ
グラムデータ等)の授受、コマンドデータによる遠隔操
作が可能となる。
ムを構成する各ノードの動作について説明する。まず、
コンピュータ10を構成する各処理部の機能と動作につ
いて説明する。本実施例においてコンピュータ10は、
例えば、DVCR28とプリンタ60との間における画
像データの送受信を制御するコントローラ、或いはDV
CR28やプリンタ60を遠隔操作するコントローラと
して動作する。
されているソフトウェアを実行するとともに、様々なデ
ータを内部メモリ24に移動させる。又、MPU12
は、内部バス26によって接続されている各処理部の調
停動作なども合わせて行なう。
シリアルバス上に転送された画像データを受信するとと
もに、ハードディスク22や内部メモリ24に記録され
ている画像データを1394シリアルバス上に送信する
ことができる。又、1394インタフェース14は、1
394シリアルバス上の他のノードを遠隔操作するため
のコマンドデータを送信することも可能である。更に、
1394インタフェース14は、1394シリアルバス
を介して転送された信号を他のノードに転送する機能も
有している。
トウェアを選択し、MPU12にハードディスク22に
記録されているソフトウェアを実行させる。ここで、こ
のソフトウェアに関する情報は、表示部20によってユ
ーザに提示される。デコーダ18は、このソフトウェア
に基づいて、1394シリアルバス上から受信した画像
データをデコードする。デコードされた画像データは、
表示部20によってユーザに提示される。
機能と動作について説明する。本実施例においてDVC
R28は、本実施例の通信プロトコルに基づいて画像デ
ータを転送する画像送信装置(ソース・ノード)として
動作する。
(Y)と色差信号(C)とからなる電気信号に変換し、
その電気信号をA/D変換器60に供給する。A/D変
換器32は、その電気信号をディジタル化する。
度信号と色差信号とに対して所定の画像処理を施すと共
に、それらを多重化する。圧縮/伸長処理部36は、デ
ィジタル化された輝度信号と色差信号のデータ量を圧縮
する。ここで、圧縮/伸長処理部36は、独立した圧縮
処理回路を用いて輝度信号と色差信号と並列に処理して
もよい。又、共通の圧縮処理回路を用いてそれらを時分
割に処理してもよい。又、圧縮/伸長処理部36では、
伝送路誤りに強くするために、圧縮画像データに対して
シャフリング処理を施す。これにより、連続的な符号誤
り(即ち、バーストエラー)を、修整や補間の行いやす
い離散的な誤り(即ち、ランダムエラー)に変換するこ
とができる。ここで、画像の画面内の粗密による情報量
の偏りを均一化したい場合、圧縮処理の前に本処理工程
を持ってくると、ランレングス等の可変長符号化を用い
た場合の都合が良い。
タに対して、シャフリングを復元するためのデータ識別
情報(ID)を付加する。圧縮/伸長処理部36は、記
録再生時の誤りを低減する為に、圧縮画像データに対し
てエラー訂正符号(ECC)を付加する。
データは、メモリ38と記録再生部58とに供給され
る。記録再生部58は、IDやECCの付加された圧縮
画像データを磁気テープ等の記録媒体に記録する。ここ
で、圧縮画像データは、音声データとは異なる独立の記
録エリアに記録される。
6へ供給された画像データは、D/A変換される。EV
F54は、D/A変換器56から供給されたアナログ画
像信号を表示する。又、画像処理部34にて処理された
画像データは、メモリ40にも供給される。ここで、メ
モリ40には、非圧縮の画像データが格納される。
づいてメモリ38或いはメモリ40を選択し、圧縮画像
データ或いは非圧縮画像データを1394インタフェー
ス44に供給する。又、データセレクタ42は、139
4インタフェース44から供給された画像データをメモ
リ38或いはメモリ40に供給する。
本実施例の通信プロトコルに基づいて、圧縮画像データ
或いは非圧縮画像データを転送する。又、1394イン
タフェース44は、1394シリアルバスを介して、D
VCR28を制御するための制御コマンドを受信する。
受信された制御コマンドは、データセレクタ42を介し
て、制御部50に供給される。1394インタフェース
44は、上記の制御コマンドに対するレスポンスを返送
する。
機能と動作について説明する。本実施例においてプリン
タ60は、本実施例の通信プロトコルに基づいて転送さ
れた画像データを受信して印刷する画像受信装置(デス
ティネーション・ノード)として動作する。
シリアルバスを介して転送された画像データや制御コマ
ンドを受信する。又、1394インタフェース62は、
制御コマンドに対するレスポンスを送信する。
64を介して、デコーダ70に供給される。デコーダ7
0は、該画像データをデコードし、その結果を画像処理
部74に出力する。画像処理部74は、デコードされた
画像データをメモリ72に一時的に記憶する。
的に記憶された画像データを印刷用のデータに変換し、
それをプリンタヘッド78に供給する。プリンタヘッド
78は、プリンタコントローラ68の制御に基づき、印
刷を実行する。
セレクタ64を介して、プリンタコントローラ68に入
力される。プリンタコントローラ68は、該制御データ
に基づいて印刷に関する様々な制御を行なう。例えば、
ドライバ76による紙送り、プリンタヘッド78の位置
等を制御する。
ンタフェース14、44、62の構成について詳細に説
明する。1394インタフェースは、機能的に複数のレ
イヤ(階層)から構成されている。図2において、13
94インタフェースは、IEEE1394−1995規
格に準拠した通信ケーブル201を介して他のノードの
1394インタフェースと接続される。又、1394イ
ンタフェースは、1つ以上の通信ポート202を有し、
各通信ポート802はハードウェア部に含まれるフィジ
カル・レイヤ203と接続される。
カル・レイヤ203とリンク・レイヤ204とから構成
されている。フィジカル・レイヤ203は、他のノード
との物理的、電気的なインタフェース、バスリセットの
検出とそれに伴う処理、入出力信号の符号化/復号化、
バス使用権の調停等を行う。又、リンク・レイヤ204
は、通信パケットの生成、各種の通信パケットの送受
信、サイクルタイマの制御等を行なう。更に、リンク・
レイヤ204は、後述する第1、第2の通信プロトコル
で使用するデータパケットの生成及び送受信の機能を提
供する。
トランザクション・レイヤ205とシリアル・バス・マ
ネージメント206とを含んでいる。トランザクション
・レイヤ205は、Asynchronous転送方式
を管理し、各種のトランザクション(リード、ライト、
ロック)を提供する。更に、トランザクション・レイヤ
205は、後述する第1、第2の通信プロトコルの機能
を提供する。シリアル・バス・マネージメント206
は、後述するIEEE1212CSR規格に基づいて、
自ノードの制御、自ノードの接続状態の管理、自ノード
のID情報の管理、シリアルバスネットワークの資源管
理を行う機能を提供する。
ェア部が実質的に1394インタフェースを構成するも
のであり、それらの基本構成はIEEE1394−19
95規格により規定されている。
ション・レイヤ207は、使用するアプリケーションソ
フトによって異なり、どのようなオブジェクトデータを
第1、第2の通信プロトコルを用いてどのように転送す
るかを制御する。
トコルは、1394インタフェースを構成するハードウ
ェア部及びファームウェア部の機能を拡張するものであ
り、ソフトウェア部に対して新規な転送手順を提供する
ものである。
2の通信プロトコルの基本構成について説明する。本実
施例において、第1の通信プロトコルは、マルチキャス
ト通信を実現する通信プロトコルである。又、第2の通
信プロトコルは、ユニキャスト通信を実現する通信プロ
トコルである。
02はソース・ノード、304はn(n≧1)個のデス
ティネーション・ノード、306はソース・ノードの有
するサブユニット(subunit)、308は動画像
データ、静止画像データ、グラフィックスデータ、テキ
ストデータ、ファイルデータ、プログラムデータ等のオ
ブジェクトデータ(object)である。
4内部にある第1のメモリ空間であり、所定のデスティ
ネーション・オフセット(destination_o
ffset_0)により指定される。312はソース・
ノード302とデスティネーション・ノード304との
間の論理的な接続関係(以下、コネクションと称する)
を示す第1のコネクションである。ここで、デスティネ
ーション・オフセットとは、n個のデスティネーション
・ノード304の有するメモリ空間を共通に指定するア
ドレスである。
4内部にある第nのメモリ空間であり、所定のデスティ
ネーション・オフセット(destination_o
ffset_n)により指定される。316はソース・
ノード302とデスティネーション・ノード304との
間のコネクションを示す第nのコネクションである。
モリ空間310〜第nのメモリ空間314を、IEEE
1212 CSR(ControlandStatus
RegisterArchitecture)規格(又
は、ISO/IEC 13213:1994規格)に準
拠した64ビットのアドレス空間により管理している。
IEEE1212 CSR規格とは、シリアルバス向け
の制御、管理、アドレス割り振りを規定した規格であ
る。
ついて説明する図である。図4(a)は、各ノードのメ
モリ空間をアドレッシングする64ビットのアドレス空
間である。64ビットアドレスの上位16ビットは、あ
るバス内のあるノードを指定するために使用される。
又、図4(b)は、図4(a)に示すアドレス空間の一
部であり、例えば、上位16ビットで指定されたノード
のもつあるアドレス空間を指定するために使用される。
のメモリ空間314は、図4(b)に示す48ビットの
アドレス(以下、デスティネーション・オフセットと称
する)により指定される。図4(b)において、例え
ば、000000000000 16〜000000000
3FF16は予約された領域であり、実際にオブジェクト
データ308の書き込まれる領域は、アドレスの下位4
8ビットがFFFFF000040016以降となる領域
である。
は、第1或いは第2の通信プロトコルに従ってオブジェ
クトデータ308を転送する機能をもつノードであり、
デスティネーション・ノード304とは、ソース・ノー
ド302から転送されたオブジェクトデータ308を受
信する機能をもつノードである。又、コントローラ30
0とは、ソース・ノード302と1つ或いは複数のデス
ティネーション・ノード304との間のコネクション
(即ち、論理的な接続関係)を設定、管理する機能と、
そのコネクションにて使用される通信プロトコルを選択
する機能をもつノードである。
ード302、デスティネーション・ノード304は、夫
々独立した別々のノードにおいて機能してもよい。又、
コントローラ300とソース・ノード302とが、1つ
の同じノードにおいて機能してもよい。又、コントロー
ラ300とデスティネーション・ノード304とが、1
つの同じノードにおいて機能してもよい。この場合、コ
ントローラ300とソース・ノード302或いはデステ
ィネーション・ノード304との間のトランザクション
が不要となり、通信手順が簡略化される。
ス・ノード302、デスティネーション・ノード304
の夫々が、独立した別々のノードにおいて機能する場合
について説明する。例えば、1394インタフェース1
4を具備するコンピュータ10が、コントローラ300
として機能する。又、1394インタフェース44を具
備するDVCR28がソース・ノード302、1394
インタフェース62を具備するプリンタ60がデスティ
ネーション・ノード304として機能する。
・ノード302と1つ以上のデスティネーション・ノー
ド304との間に、1つ以上のコネクションを設定する
ことができる。各コネクションは、あるオブジェクトデ
ータの転送要求が生じた場合に、後述するソース・ノー
ド302の出力レジスタ(図5参照)、デスティネーシ
ョン・ノード304の入力レジスタ(図6参照)に基づ
いてコントローラ300が設定する。
0であるコンピュータ10は、デスティネーション・ノ
ード304として動作してもよい。この場合、1つのソ
ース・ノード302と2つのデスティネーション・ノー
ド304との間にコネクションが設定され、オブジェク
トデータ308の転送が行われることになる。
がコントローラ300として動作する場合について説明
したが、コンピュータ10が必ずコントローラ300に
なる必要はない。DVCR28或いはプリンタ60がコ
ントローラ300として動作してもよい。
ス・ノード302の有するレジスタ空間とデスティネー
ション・ノード304の有するレジスタ空間とについて
説明する。図5は、ソース・ノード302の有する出力
レジスタの構成を説明する図である。又、図6は、デス
ティネーション・ノード304の有する入力レジスタの
構成を説明する図である。
間上の所定の領域に用意されており、コントローラ30
0がソース・ノード302とデスティネーション・ノー
ド304との間にコネクションを設定する場合、該コネ
クションに第1、第2の通信プロトコルの何れを割り当
てるかを選択する場合に使用される。
レジスタ(以下、oMCR)である。OMCRは、主に、ソース
・ノード302の有する通信能力について記述している
レジスタ空間(または、メモリ空間)である。
ト)は、max data rateフィールドであり、ソース・ノ
ード302の最大の出力ビットレートを示す。該max da
ta rateフィールドにセットされる値の一例を「表1」
に示す。
ow control flagであり、本実施例の第1の通信プロト
コル(即ち、ブロードキャスト送信を用いたプロトコ
ル)が使用可能か否かを示す。例えば、該フィールドの
値が「1」のとき、第1の通信プロトコルが使用可能で
あることを示す。「0」のときは、第2の通信プロトコ
ルが使用可能である。次のフィールド503(5ビッ
ト)は、reservedフィールドであり、将来のために予約
されている。
tension fieldであり、後述するoutput FIFO sizeフィ
ールドを将来拡張する場合に用いる。次のフィールド5
05(10ビット)は、output FIFO sizeフィールドで
あり、データ出力に用いられる先入れ先出し型のバッフ
ァメモリ(以下、FIFOメモリ)の容量を示す。
servedフィールドであり、将来のために予約されてい
る。最下位フィールド507(5ビット)は、number o
f CCRsフィールドであり、後述する出力コネクションコ
ントロールレジスタ(図5(b)参照)の数、即ち、ソ
ース・ノード302に設定することのできるコネクショ
ンの数を示す。
ールレジスタ(以下、oCCR)である。oCCRは、ソース・
ノード302に設定されたコネクションの1つについて
記述するレジスタ空間(又は、メモリ空間)である。ソ
ース・ノード302は、上記oCCRを、唯一つだけ有して
いても良いし、複数有していても良い。
ト)は、data rateフィールドであり、該oCCRに設定さ
れたコネクションにて用いられる出力ビットレートを示
す。「表2」に該data rateフィールドにセットされる
値の一例を示す。
oadcast flagフィールドであり、該oCCRに設定されたコ
ネクションにてどの通信プロトコルが使用されているか
を示すフラグである。該broadcast flagフィールドの値
が「1」のとき、例えば、第1の通信プロトコルが用い
られていることを示す。
-lineフィールドであり、該oCCRが使用されているか否
かを示す。該on-lineフィールドの値が「1」のとき、
該oCCRは使用されていることを示す。
reservedフィールドであり、将来のために予約されてい
る。次のフィールド514(10ビット)は、payload
sizeフィールドであり、一回のデータ転送で転送される
データパケットのデータ量を示す。該データ量はデータ
パケットのペイロードサイズを示し、パケットヘッダな
どの付加データは含まれていない。
connection IDフィールドであり、該oCCRに設定された
コネクションを一意に識別するための識別情報、即ちコ
ネクションIDが格納される。最後のフィールド516
(48ビット)は、offset addressフィールドであり、
デスティネーション・ノード304に確保した所定のメ
モリ空間の先頭アドレスを示す。
レジスタ(以下、iMCR)である。iMCRは、主に、デステ
ィネーション・ノード304の有する通信能力について
記述しているレジスタ空間(又は、メモリ空間)であ
る。
ト)は、max data rateフィールドであり、デスティネ
ーション・ノード304の最大の入力ビットレートを示
す。該max data rateフィールドにセットされる値は、
例えば、上記「表1」と同じで良い。
ow control flagフィールドであり、本実施例の第1の
通信プロトコル(即ち、ブロードキャスト送信を用いた
プロトコル)が使用可能か否かを示す。例えば、該フィ
ールドの値が「1」のとき、第1の通信プロトコルが使
用可能であり、「0」のときは、第2の通信プロトコル
が使用可能であることを示す。次のフィールド603
(5ビット)は、reservedフィールドであり、将来のた
めに予約されている。
tension fieldであり、後述するmaximum receive buffe
r sizeフィールドを将来拡張する場合に用いる。次のフ
ィールド605(10ビット)は、maximum receive bu
ffer sizeフィールドであり、データ入力に用いられる
受信バッファの最大メモリを示す。ここで、maximumrec
eive buffer sizeフィールドは、1セグメントの最大デ
ータ量を示す。
servedフィールドであり、将来のために予約されてい
る。最下位フィールド607(5ビット)は、number o
f CCRsフィールドであり、後述する入力コネクションコ
ントロールレジスタ(図6(b)参照)の数、すなわ
ち、デスティネーション・ノード304に設定すること
のできるコネクションの数を示す。
ーラレジスタ(以下、iCCR)である。iCCRは、デスティ
ネーション・ノード304に設定されたコネクションの
1つについて記述するレジスタ空間(又は、メモリ空
間)である。デスティネーション・ノード304は、上
記iCCRを、唯一つだけ有していても良いし、複数有して
いても良い。
ト)は、data rateフィールドであり、該iCCRに設定さ
れたコネクションにて用いられる入力ビットレートを示
す。該data rateフィールドにセットされる値は、例え
ば、「表2」と同じでよい。
oadcast flagフィールドであり、該iCCRに設定されたコ
ネクションにてどの通信プロトコルが使用されているか
を示すフラグである。該broadcast flagフィールドの値
が「1」のとき、例えば、第1の通信プロトコルが用い
られていることを示す。
-lineフィールドであり、該iCCRが使用されているか否
かを示す。該on-lineフィールドの値が「1」のとき、
該iCCRは使用されていることを示す。次のフィールド6
13(18ビット)は、reservedフィールドであり、将
来のために予約されている。
receive buffer sizeフィールドであり、デスティネー
ション・ノード304に確保したメモリ空間のサイズ、
即ち、1セグメントのデータ量を示す。次のフィールド
615(16ビット)は、connection IDフィールドで
あり、該iCCRに設定されたコネクションを一意に識別す
るための識別情報、即ちコネクションIDが格納される。
は、offset addressフィールドであり、デスティネーシ
ョン・ノード304に確保した所定のメモリ空間の先頭
アドレスを示す。
を読み出すためのコマンドと、各レジスタに所定の値を
書き込むコマンドについて説明する。各コマンドは、I
EEE1394−1995規格のAsynchrono
us転送方式に準拠するAsynchronousパケ
ットにパケッタイズされ、指定されたノードに転送され
る。ここで、Asynchronousパケットは、図
7に示すように、1Quadlet(4bytes=3
2bits)を単位とするデータパケットである。
示すREAD MCR status commandを用いて、図5(a)のo
MCR或いは図6(a)のiMCRの値を読み出すことができ
る。図7において、フィールド701(16bits)
は、destination_IDフィールドであり、通信相手のノー
ドIDを指定する。フィールド702(6bits)
は、トランザクション・ラベル(tl)フィールドであり、
各トランザクション固有のタグを指定する。
ライ(rt)コードであり、パケットがリトライを試みるか
どうかを指定する。フィールド704(4bits)
は、トランザクションコード(tcode)を示す。tcodeは、
パケットのフォーマットや、実行しなければならないト
ランザクションのタイプを指定する。本実施例では、こ
のフィールドの値を例えば「00012」とし、このパ
ケットのデータ・フィールドをdestination_offsetフィ
ールド707の示すメモリ空間に書き込む処理(即ち、
ライト・トランザクション)をリクエストする。また、
「00052」とした場合は、読み出し処理(即ち、リ
ード・トランザクション)をリクエストする。
イオリティ(pri)を示し、優先順位を指定する。本実施
例では、このフィールドの値は「00002」とする。
フィールド706(16bits)は、source_IDフィ
ールドであり、送信元のノードIDを指定する。
stination_offsetを示し、destination_IDフィールド7
01で指定されたノードのアドレス空間を指定する。フ
ィールド708(16bits)は、data_lengthを示
し、後述するデータフィールドの長さをバイト単位で示
す。
tended_tcodeを示す。本実施例では、このフィールドの
値を「00002」とする。フィールド710(32b
its)は、header_CRCであり、上述したフィールド7
01〜709のエラーを検出するためのエラー検出コー
ドを格納する。
の構成を説明する。本実施例において、データ・フィー
ルドに格納されるデータ量がQuadletの倍数に満
たない場合、Quadletの倍数となるまで「0」が
セットされる。
and/Transaction Set(以下、CTSと称する)フィー
ルドである。本実施例では、AV/C Digital Interface C
ommand Set General Specification規格(以下、AV/C C
ommand Set規格と称する)において定義されているCT
Sを使用するため、このフィールドには「016」がセッ
トされる。
e/responseフィールドであり、各種のコマンドやそのコ
マンドに対するレスポンスを指定する。例えば、status
commandを指定する場合、このフィールドには「116」
がセットされる。又、このstatus commandに対応するレ
スポンス(即ち、status response)を指定する場合、
このフィールドには「C16」がセットされる。
nit_typeフィールドであり、あるノードの有する仮想的
な機能単位(即ち、subunit)を指定する。ここでsubun
itとは、AV/C Command Set規格において規定されてお
り、例えば、VTRサブユニット、プリンタサブユニッ
ト等がある。
nit_IDフィールドであり、subunit_typeフィールド71
3で指定された機能単位が1つ以上ある場合に、それら
を識別するためのID番号を指定する。
deフィールドであり、コマンドの種類を指定する。本実
施例のREAD MCR commandを指定する場合、このフィール
ドには、例えば「0616」がセットされる。
(8bits)は、operand[0]〜operand[3]フィール
ドであり、その内容は、ctype/responceフィールド71
2、opcodeフィールド715の内容によって異なる。例
えば、READ MCR status commandの場合、各フィールド
には、「FF16」がセットされる。又、READ MCR statu
s responseの場合、各フィールドには、図5(a)のoM
CRの値、或いは図6(b)のiMCRの値がセットされる。
「0」がセットされる。フィールド721(32bit
s)は、data_CRCであり、上記のheader_CRCと同様に、
フィールド711〜720のエラーを検出するためのエ
ラー検出コードを格納する。
8に示すSET CCR control commandを用いて、図5
(b)のoCCR或いは図6(b)のiCCRに所定の値を書き
込むことができる。図8において、パケット・ヘッダ
(packet header)に含まれるフィールド701〜71
0は、図7と同様に構成される。従って、以下、SET CC
R control commandのデータ・フィールド(data fiel
d)の構成について説明する。
Sフィールドであり、図7のREAD MCR status command
と同様に、「016」がセットされる。
e/responseフィールドであり、各種のコマンドやそのコ
マンドに対するレスポンスを指定する。例えば、contro
l commandを指定する場合、このフィールドには
「016」がセットされる。このcontrol commandが受け
付けられたことを示すレスポンスを返す場合、このフィ
ールドにはACCEPTED responseを示す「916」がセット
される。又、このcontrol commandが受け付けられなか
ったことを示すレスポンスを返す場合、このフィールド
にはREJECTED responseを示す「A16」がセットされ
る。
nit_typeフィールドであり、図7のREAD MCR status co
mmandと同様に、所定のsubunitを指定する。フィールド
804(3bits)は、subunit_IDフィールドであ
り、図7のREAD MCR status commandと同様に、所定のs
ubunitを識別するためのID番号を指定する。
deフィールドであり、コマンドの種類を指定する。本実
施例のSET CCR commandを指定する場合、このフィール
ドには、例えば「0716」がセットされる。
_rateフィールドであり、所望のoCCR(或いはiCCR)に
設定されたコネクションが用いる入力ビットレートを示
す。該data_rateフィールドにセットされる値は、例え
ば、「表2」と同じである。フィールド807(1bi
ts)は、broadcast_flagフィールドであり、所望のoC
CR(或いはiCCR)に設定されたコネクションが、どの通
信プロトコルを使用するかを示すフラグである。該broa
dcast_flagフィールドが「1」のとき、例えば、第1の
通信プロトコルが設定される。
ineフィールドであり、所望のoCCR(或いはiCCR)の使
用を要求するために「1」をセットする。ここで、所望
のoCCR(或いはiCCR)のon_lineフィールド512(6
12)が「1」であれば、該oCCR(或いはiCCR)は既に
使用されているため、このSET CCR control commandを
受信したノードはREJECTED responseを返す。
ば、固定値「F16」を設定する。フィールド810(8
bits)は、例えば、固定値「FF16」を設定する。
フィールド811(6bits)は、例えば、固定値
「3F16」を設定する。
CRをセットする場合、payload_sizeフィールドであり、
iCCRをセットする場合は、receive_buffer_sizeフィー
ルドである。payload_sizeフィールドには、一回のデー
タパケットで転送可能なデータ量が設定される。又、re
ceive_buffer_sizeフィールドには、1セグメントのデ
ータ量が設定される。
(b)、図6(b)に示すconnection_IDフィールドの
上位8ビットを指定するフィールド、フィールド814
(8bits)は、connection_IDフィールドの下位8
ビットを指定するフィールドである。コントローラ30
0は、この2つのフィールドにより、所定のconnection
_IDを所望のoCCR(或いはiCCR)にセットすることがで
きる。
fset_addressフィールドであり、デスティネーション・
ノード304に確保した所定のメモリ空間の先頭アドレ
スを設定する。フィールド816(8bits)は、CC
R_numberフィールドであり、1つ又は複数個あるoCCR
(或いはiCCR)から、所望のoCCR(或いはiCCR)を指定
するための番号を設定する。
ta_CRCであり、フィールド801〜816のエラーを検
出するためのエラー検出コードを格納する。
が、ソース・ノード302とデスティネーション・ノー
ド304との間に論理的な接続関係を設定し、各ノード
間で使用する通信プロトコルを設定するまでの手順につ
いて説明する。図9において、コントローラ300、ソ
ース・ノード302、デスティネーション・ノード30
4の三者は、以下に示すネゴシエーションを行う。
READ MCR status commandパケットを、ソース・ノード
302に対して発行する(901)。ソース・ノード3
02は、該ノードが有しているoMCRの各フィールド50
1〜507の値をセットしたresponseパケットを、コン
トローラ300に返す(901)。
AD MCR status commandパケットを、デスティネーショ
ン・ノード304に対して発行する(902)。デステ
ィネーション・ノード304は、該ノードが有している
iMCRの各フィールド601〜607の値をセットしたre
sponseパケットを、コントローラ300に返す(90
2)。
oMCRとデスティネーション・ノード304のiMCRとを読
み出したコントローラ300は、各レジスタの内容から
各ノードの主要な通信能力を判断し、使用可能な通信プ
ロトコルを選択する。
とiMCRのflow control flag602の夫々が「1」であ
った場合、コントローラ300は、ソース・ノード30
2とデスティネーション・ノード304の夫々が後述す
る第1の通信プロトコル(即ち、ブロードキャストによ
るデータ転送を行うプロトコル)に対応可能であると判
断する。その場合、コントローラ300は、第1の通信
プロトコルの使用を選択する。
ーラ300は、ソース・ノード302とデスティネーシ
ョン・ノード304との間に論理的な接続関係を設定す
るために、図8に示すSET CCR control commandを生成
する。
スティネーション・ノード304のiCCR)をセットする
SET CCR control commandにおいて、コントローラ30
0は、broadcast_flagフィールド807に「1」を、on
_lineフィールド808に「1」を、connection_IDフィ
ールド812、813にコントローラ300が管理する
使用可能なコネクションIDを、offset_addressフィー
ルド814にデスティネーション・ノード304の使用
可能なデスティネーション・オフセットを、CCR_number
フィールド815に未使用のoCCR(又は、iCCR)を指定
するCCR番号を夫々設定する。
Rのflow control flag602のどちらか一方、或いは両
方が「0」であった場合、コントローラ300は、ソー
ス・ノード302とデスティネーション・ノード304
の夫々が後述する第1の通信プロトコル(即ち、ブロー
ドキャストによるデータ転送を行うプロトコル)に対応
できないと判断する。その場合、コントローラ300
は、後述する第2の通信プロトコルの使用を選択する。
ーラ300は、ソース・ノード302とデスティネーシ
ョン・ノード304との間に論理的な接続関係を設定す
るために、図8に示すSET CCR control commandを生成
する。
SET CCR control commandにおいて、コントローラ30
0は、SET CCR control commandにおいて、broadcast_f
lagフィールド807に「0」を、on_lineフィールド8
08に「1」を、payload_sizeフィールド811に一回
のデータパケットで転送可能なデータ量を設定する。
又、デスティネーション・ノード304のiCCRをセット
するSET CCR controlcommandにおいて、receive_buffer
_sizeフィールド811に1セグメントのデータ量を設
定する。
は、iCCR)をセットするSET CCR control commandにお
いて、offset_addressフィールド814にデスティネー
ション・ノード304の使用可能なデスティネーション
・オフセットを、CCR_numberフィールド815に未使用
のoCCR(又は、iCCR)を指定するCCR番号を夫々設定す
る。
は、receive_buffer_sizeフィールドに設定する値を、p
ayload_sizeフィールドに設定する値の整数倍とする。
このように構成することにより、データ転送の効率を向
上させることができる。
するために、ソース・ノード302に対して、上述のSE
T CCR control commandを発行する(903)。該SET C
CR control commandには、コントローラ300にて選択
された通信プロトコルを示す値や、通信プロトコルに必
要な値が含まれている。
CCR control commandに対応可能であった場合には、ソ
ース・ノード302は、コントローラ300に対してAC
CEPTED responseを返す(903)。その後、ソース・
ノード302は、選択された通信プロトコルに基づき、
データ転送を開始する。
記SET CCR control commandに対応できない場合には、
ソース・ノード302は、コントローラ300に対して
REJECTED responseを返す。この場合、データ転送は開
始されず、論理的な接続も開放され、各ノードは始めか
ら再びネゴシエーションを開始する。
するために、デスティネーション・ノード304に対し
て、上述のSET CCR control commandを発行する(90
4)。該SET CCR control commandには、コントローラ
300にて選択された通信プロトコルを示す値や、通信
プロトコルに必要な値が含まれている。
が、上記SET CCR control commandに対応可能であった
場合には、デスティネーション・ノード304は、コン
トローラ300に対してACCEPTED responseを返す(9
04)。その後、デスティネーション・ノード304
は、選択された通信プロトコルに基づき、データ転送を
開始する。
の状態が、上記SET CCR control commandに対応できな
い場合には、デスティネーション・ノード304は、コ
ントローラ300に対してREJECTED responseを返す。
この場合、データ転送は開始されず、論理的な接続も開
放され、各ノードは始めから再びネゴシエーションを開
始する。
り、コントローラ300は、ソース・ノード302とデ
スティネーション・ノード304との間のコネクション
と、該コネクションが使用する通信プロトコルとを設定
することができる。尚、図9では、デスティネーション
・ノードが1つの場合について説明したが、デスティネ
ーション・ノードが複数個の場合には、上述の処理を各
デスティネーション・ノードに対して行えばよい。この
場合、コントローラ300は、対象となる全てのノード
の通信能力に応じて使用可能な通信プロトコルを選択す
る。
基づくデータ転送について説明する。第1の通信プロト
コルは、ブロードキャスト通信を利用し、マルチキャス
ト通信を実現する通信プロトコルである。
ブジェクトデータは1つ以上のセグメントに分割され、
各セグメントは1つ以上の「Asynchronous broadcast p
acket」にパケッタイズされ、各Asynchronous broadcas
t packetは「Asynchronous broadcast transaction」に
よりブロードキャスト転送される。ここで、Asynchrono
us broadcast packetとAsynchronous broadcast transa
ctionとは、本実施例の第1の通信プロトコルにおいて
規定する全く新規なパケット・フォーマットであり、転
送方法である。
プロトコルに基づく転送手順について詳細に説明する。
図10は、1つのソース・ノードと1つのデスティネー
ション・ノードとの間の転送手順を説明するシーケンス
チャートである。又、図12は、1つのソース・ノード
と3つのデスティネーション・ノード304との間の転
送手順を説明するシーケンスチャートである。
ローラ300は、ソース・ノード302に対してオブジ
ェクトデータ308の転送を開始するように指示する
(図10、12の1001)。転送開始の指示を受けた
後、ソース・ノード302は、1つ以上のデスティネー
ション・ノード304に対して、send request packet
をAsynchronous broadcast transactionにより転送する
(図10、12の1002)。このsend request packe
tには、コントローラ300によりセットされたコネク
ションIDが格納されている。
ネーション・ノード304は、そのsend request packe
tのもつコネクションIDを、先のネゴシエーションに
おいてiCCRにセットされたコネクションIDと比較す
る。両者が一致する場合、デスティネーション・ノード
304はそのsend request packetを受信し、それに対
応するack response packetをAsynchronous broadcast
transactionにより転送する(図10、12の100
3)。ここで、このack response packetには、各デス
ティネーション・ノード304の確保できる内部バッフ
ァのサイズが格納されている。
ノード302は、Asynchronous broadcast transaction
を実行し、1つ以上のセグメントからなるオブジェクト
データ308を順次ブロードキャストする(図10、1
2の1004〜1007)。
ータ308の転送手順の一例を説明する。図13におい
て、オブジェクトデータ308は、例えばデータサイズ
が128Kbyteとなる静止画像データである。
acketを用いて認識した各デスティネーション・ノード
304の受信能力に応じてオブジェクトデータ308を
1つ以上のセグメントに分割する。ここで、1セグメン
トのデータサイズは、各デスティネーション・ノード3
04の有する内部バッファのサイズによりソース・ノー
ド302が可変的に設定する。例えば、図13のよう
に、オブジェクトデータ308と同じサイズの内部バッ
ファを各デスティネーション・ノードに確保できた場
合、ソース・ノード302は、オブジェクトデータ30
8を1つのセグメントに分割する。
ントを1つ以上のセグメントデータに分割する。図13
には、1セグメントを例えば500個のセグメントデー
タ(1セグメントデータは256byte)に分割する
例を示す。
少なくとも一回のAsynchronous broadcast transaction
を用いて順次ブロードキャストする。図13には、1セ
グメントデータを一回のAsynchronous broadcast trans
actionを用いて転送する例を示す。
グメントがあれば、ソース・ノード302はそのセグメ
ントの転送を準備し、なければ各デスティネーション3
04とのデータ通信を終了する(図10、12の100
8、1009)。
ラ300の動作について詳細に説明する。コントローラ
300は、ソース・ノード302に対して送信コマンド
パケット(transaction command packet)をAsync
hronous転送する(図10、12の1001)。
ノード302は、コントローラ300から通知されたコ
ネクションIDを用いて初期設定を行い(図10、12
の1002、1003)、Asynchronous broadcast tra
nsactionを実行する(図10、12の1004〜100
7)。このAsynchronous broadcast transactionによ
り、ソース・ノード302は、1つ以上のセグメントか
らなるオブジェクトデータ308を順次転送することが
できる。
いて、コントローラ300は、コネクションの接続、非
接続を管理する機能を提供するものである。従って、コ
ネクション設定後におけるオブジェクトデータ308の
転送は、ソース・ノード302とデスティネーション・
ノード304との間のネゴシエーションにより実行され
る。
onが終了した後、ソース・ノード302は、segment en
dを示すAsynchronous broadcast packet(以下、segmen
t end packet)をブロードキャストする(図10、12
の1008)。
02からのsegment end packetを受け取った後、コネク
ションを解放してデータ転送を終了する。ここで、segm
ent end packetは、ブロードキャストされるため、その
パケットの内容はデスティネーション・ノード304に
おいても検出することができる。従って、コントローラ
300ではなく、デスティネーション・ノード304自
体が、ソース・ノード302とのコネクションを解放す
るように構成してもよい。
ード302の動作について詳細に説明する。コントロー
ラ300からのtransaction command packetを受け取っ
たソース・ノード302は、各デスティネーション・ノ
ード304に対して上述のsend request packetを送出
する(図10、12の1002)。
ェクトデータ308のAsynchronousbroadcast transact
ionを開始する前に必要な初期情報を得るためのリクエ
ストパケットである。このパケットには、コントローラ
300によって指定されたコネクションIDが書き込ま
れている。
nd request packetに対応するレスポンスであるack res
ponse packetをブロードキャストする(図10、12の
1003)。ここで、ack response packetには、send
request packetと同じコネクションIDが格納されてい
る。従って、ソース・ノード302は、受信パケットの
コネクションIDを確認することによって、どのコネク
ションを介して転送されたack response packetである
かを識別することができる。
スティネーション・ノード304に確保されている内部
バッファのサイズが格納されている。ack response pac
ketの受信後、ソース・ノード302は、各デスティネ
ーション・ノード304のメモリ空間を共通に指定する
デスティネーション・オフセットを用いて、Asynchrono
us broadcast transactionを開始する。ここで、このデ
スティネーション・オフセットは、上述のネゴシエーシ
ョン時に、コントローラ300から指示されたアドレス
である。
chronous broadcast packetを、上述のデスティネーシ
ョン・オフセットが示すメモリ空間に対して書き込む
(図10、12の1004)。このパケットには、コネ
クションID、セグメントデータのシークエンス番号が
格納されている。
送信した後、ソース・ノード302は、デスティネーシ
ョン・ノード304からのレスポンス・パケットを待機
する。デスティネーション・ノード304からは、コネ
クションIDとシークエンス番号とを格納したレスポン
ス・パケットがAsynchronous broadcast packetの形式
で送出される。このレスポンス・パケットを受け取った
後、ソース・ノード302は、シークエンス番号をイン
クリメントし、次のセグメントデータを含むAsynchrono
us broadcast packetを転送する(図10、12の10
05)。
02は順次Asynchronous broadcasttransactionを行う
(図10、12の1006〜1007)。デスティネー
ション・ノード304からのレスポンスを待機する最大
の時間はあらかじめ決められており、その時間を過ぎて
もレスポンスが帰ってこない場合は、同一シークエンス
番号を用いて、同一データを再送する。
ら再送を要求するレスポンス・パケットが転送された場
合、ソース・ノード302は、指定されたシークエンス
番号のデータを再度ブロードキャストすることもでき
る。
ronous broadcast transactionを用いて転送した後、ソ
ース・ノード302は、segment end packetをブロード
キャストし、データ転送を終了する(図10、12の1
008)。
タのAsynchronous broadcast transactionに伴って必ず
レスポンス・パケットを送出するように規定している
が、それに限るものではない。デスティネーション・ノ
ード304の有するデータバッファが、複数の連続する
セグメントデータによって満たされた後に、デスティネ
ーション・ノード304がレスポンス・パケットの送信
を行うように構成してもよい。
ーション・ノード304の動作について詳細に説明す
る。上述のネゴシエーション後、デスティネーション・
ノード304は、ソース・ノード302からのsend req
uest packetを待機する(図10、12の1002)。
ィネーション・ノード304は、そのパケットに書かれ
ているコネクションIDとコントローラから通知された
コネクションIDを確認し、このパケットがソース・ノー
ド302からのパケットであるかどうかを判別する。
packetを受信した後、各デスティネーション・ノード
304は、コネクションID、確保できる内部バッファ
のサイズを書き込んだack response packetをブロード
キャストする(図10、12の1003)。
chronous broadcast packetをメモリ空間に書き込んだ
後、デスティネーション・ノード304は、そのパケッ
トのコネクションIDを確認する。そのパケットに含ま
れるコネクションIDが自己のコネクションIDと一致
する場合、コネクションIDとそのパケットに含まれる
シークエンス番号とを格納したレスポンス・パケットを
ブロードキャストする(図10、12の1004〜10
07)。この場合、受信パケットに含まれるセグメント
データは、内部バッファに格納される。ここで、受信パ
ケットに含まれるコネクションIDが自己のコネクショ
ンIDと異なる場合、デスティネーション・ノード30
4は、その受信パケットを廃棄する。
は、受信パケットのシークエンス番号の不整合を検出し
た場合に、再送要求を示すレスポンス・パケットを送出
することもできる。その場合、デスティネーション・ノ
ード304は、再送を要求するシークエンス番号をソー
ス・ノード302に通知する。
onを終了すると、ソース・ノード302からsegment en
d packetがブロードキャストされる。このパケットを受
信すると、デスティネーション・ノード304はデータ
転送プロセスを終了する(図10、12の1008)。
ィネーション・ノード304は、segment end packetを
正常に受信したことを示すレスポンス・パケットをブロ
ードキャストする(図10、12の1009)。
ムは、従来の通信方式の不便利性を解決することができ
る。又、リアルタイム性を必要としないデータ転送にお
いても、簡便に高速にデータを転送することができる。
コネクションを設定した後、オブジェクトデータの転送
処理は、コントローラ300に制御されることなくソー
ス・ノード300と各デスティネーション・ノード30
4との間において実行される。これにより、コントロー
ラ300の負荷を減らし、複雑な通信手順を踏むことの
ない簡単な通信プロトコルを提供することができる。
ノード304は、各Asynchronous broadcast transacti
onに対して必ずレスポンスを返すように構成されてい
る。これにより、リアルタイム性の必要としないデータ
を確実に転送することのできる通信プロトコルを提供す
ることができる。
は、バスリセットや何らかの伝送エラーの発生によって
データ転送が中断した場合において、データを欠落させ
ることなく速やかにデータ転送を再開させることが必要
である。以下、図11を用いて、本実施例の通信プロト
コルで規定する再開手順について説明する。
s broadcast packetを受信した後にバスリセットが発生
した場合、各ノードは転送処理を中断し、IEEE13
94−1995規格で定められた手順に従ってバスの初
期化、接続構成の認識、ノードIDの設定等を実行する
(図11の1010、1011)。
ーション・ノード304は、コネクションIDとシーク
エンス番号iとを格納した再開要求パケット(resend r
equest packet)をブロードキャストする(図11の1
012)。
開が可能な場合、ソース・ノード302は、受信したre
send request packetのコネクションIDを確認し、こ
のコネクションIDを格納したack response packetを
ブロードキャストする(図11の1013)。
たresend request packetにより要求されたシークエン
ス番号以降のセグメントデータ、すなわち、シークエン
ス番号(i+1)で始まるセグメントデータを順次ブロード
キャストする(図11の1014)。
ソース・ノード302、デスティネーション・ノード3
04は、それぞれのノードIDを考慮することなく、デ
ータ転送が中断しても、その後のデータ転送を容易に、
かつ、確実に再開することができる。
転送が中断した場合にも、コントローラ300の制御手
順が簡略化できる効果がある。
ルで使用するAsynchronous broadcast packetの構成に
ついて説明する。Asynchronous broadcast packetは、
例えば、1Quadlet(4bytes=32bit
s)を単位とするデータパケットである。
eader)1219の構成を説明する。図14におい
て、フィールド1201(16bits)は、destinat
ion_IDを示し、受信先(即ち、デスティネーション・ノ
ード304)のノードIDを示す。本実施例の通信プロ
トコルでは、オブジェクトデータ308のAsynchronous
broadcast transactionを実現するため、このフィール
ドの値をブロードキャスト用ID(即ち、「FFF
F16」)とする。
ランザクション・ラベル(tl)フィールドを示し、各トラ
ンザクション固有のタグである。フィールド1203
(2bits)は、リトライ(rt)コードを示し、パケッ
トがリトライを試みるかどうかを指定する。
ランザクションコード(tcode)を示す。tcodeは、パケッ
トのフォーマットや、実行しなければならないトランザ
クションのタイプを指定する。本実施例では、このフィ
ールドの値を例えば「00012」とし、このパケット
のデータ・ブロック522をdestination_offsetフィー
ルド1207の示すメモリ空間に書き込む処理(即ち、
ライト・トランザクション)をリクエストする。
ライオリティ(pri)を示し、優先順位を指定する。本実
施例では、このフィールドの値は「00002」とす
る。フィールド1206(16bits)は、source_I
Dを示し、送信側(即ち、ソース・ノード302)のノ
ードIDを示す。
destination_offsetを示し、各デスティネーション・ノ
ード304の有するアドレス空間の下位48bitsを
共通に指定する。フィールド1208(16bits)
は、data_lengthを示し、後述するデータフィールドの
長さをバイト単位で示す。
extended_tcodeを示す。本実施例では、このフィールド
の値を「00002」とする。フィールド1210(3
2bits)は、header_CRCを示し、上述したフィール
ド1201〜1209のエラーを検出するためのエラー
検出コードが格納される。
ck)1220の構成を説明する。データ・ブロック1
220は、ヘッダ・インフォメーション(packet
information)1221とデータ・フィール
ド(datafield)1222とにより構成され
る。
は、各ノード間の論理的な接続関係(即ち、コネクショ
ン)を識別するためのコネクションIDなどが格納され
る。尚、ヘッダ・インフォメーション1221の構成
は、使用目的に応じて異なる。
なフィールドであり、上述のセグメントデータが格納さ
れる。ここで、データ・フィールド1222に格納され
るセグメントデータがクアッドレットの倍数でない場
合、クアッドレットに満たない分には「0」が詰められ
る。
connection_IDを示し、本実施例のコネクションIDを
格納する。本実施例の1394インタフェースは、この
フィールドに格納されたコネクションIDに基づいてソ
ース・ノード302と1つ以上のデスティネーション・
ノード304との間に設定されたコネクションを識別す
る。本実施例では、216×(ノード数)のコネクション
を確立することが可能となる。これにより、各コネクシ
ョンの使用する通信帯域の総量が伝送路の容量に達する
まで、複数のコネクションを設定することが可能とな
る。
otocol_typeを示し、ヘッダ・インフォメーション12
21に基づく通信手順(即ち、通信プロトコルの種類)
を示す。本実施例の通信プロトコルを示す場合、このフ
ィールドの値は例えば「01 16」となる。
ntrol_flagsを示し、本実施例の通信プロトコルの通信
手順等を制御する所定の制御データが設定される。本実
施例では、このフィールドの最上位ビットを、例えば、
再送要求(resend_request)フラグとする。従って、この
フィールドの最上位ビットの値が「1」となる場合、本
実施例の通信プロトコルに基づく再送要求が生じている
ことを示す。
sequence_numberを示し、特定のコネクションID(フ
ィールド511で指定されたコネクションID)に基づ
いて転送されるパケットに対して連続的な値(即ち、シ
ークエンス番号)を設定する。このシークエンス番号に
よって、デスティネーション・ノード304は、順次As
ynchronous broadcast transactionされるセグメントデ
ータの連続性を監視することができる。不一致が生じた
場合、デスティネーション・ノード304は、このシー
クエンス番号に基づいて再送を要求することもできる。
reconfirmation_numberを示す。本実施例においてこの
フィールドは、上述の再送要求フラグの値が1である場
合にのみ意味を持つ。例えば、上述の再送要求フラグの
値が1である場合、このフィールドには、再送を要求す
るパケットのシークエンス番号が設定される。
buffer_sizeを示す。このフィールドには、デスティネ
ーション・ノード304のバッファ・サイズが設定され
る。フィールド1217(16bits)は、reserved
フィールドである。このフィールドは、将来のために予
約されている。
data_CRCを示し、上記のheader_CRCと同様に、フィール
ド1211〜1217のエラーを検出するためのエラー
検出コードが格納される。
は、図14に示すAsynchronous broadcast packetを用
いて、上述のAsynchronous broadcast transactionを実
現したがそれに限るものではない。例えば、図15に示
すAsynchronous stream packetを用いて実現することも
可能である。この場合、上述のオブジェクトデータは、
1つ以上のセグメントに分割され、各セグメントは1つ
以上のAsynchronous stream packetにパケッタイズされ
る。そして、ソース・ノード302は、各Asynchronous
stream packetを、Asynchronous転送期間内において順
次ブロードキャスト転送する。ここで、Asynchronous s
tream packetのフォーマットと転送方法とは、IEEE
1394−1995規格の拡張規格であるIEEE13
94.a規格において規定されている。
6bits)は、data_lengthフィールドである。この
フィールドには、後述するデータ・フィールド1246
の長さをバイト単位にデータが格納される。フィールド
1241(2bits)は、tagフィールドである。こ
のフィールドには、「002」が格納される。
annelフィールドである。このフィールドには、このパ
ケットを含む一連のAsynchronous stream packetに割り
当てられたチャネル番号がセットされる。フィールド1
243(4bits)は、トランザクション・コード
(tcode)フィールドであり、Asynchronous stream pac
ketであることを示す「A16」を指定する。
nchronization code(sy)フィールドである。このフィ
ールドには、使用するアプリケーションによって決定さ
れた制御コードが格納される。フィールド1245(3
2bits)は、header_CRCである。このフィールドに
は、上述したフィールド1241〜1244のエラーを
検出するためのエラー検出コードが格納される。
・フィールドである。このフィールドには、図14に示
すフィールド1211〜1217の値とセグメントデー
タとが格納される。ここで、フィールド1246に格納
されるセグメントデータがクアッドレットの倍数でない
場合、クアッドレットに満たない分には「0」が詰めら
れる。フィールド1247(32bits)は、data_C
RCである。このフィールドには、上記のheader_CRCと同
様に、フィールド1246のエラーを検出するためのエ
ラー検出コードが格納される。
ついて説明する。第2の通信プロトコルは、通信相手を
特定した通信方式を利用し、ユニキャスト通信を実現す
る通信プロトコルである。第2の通信プロトコルにおい
て、1つのオブジェクトデータは1つ以上のセグメント
に分割され、各セグメントは1つ以上の「Asynchronous
write request packet」にパケッタイズされ、各Async
hronous write request packetは「Asynchronous write
transaction」により転送される。ここで、Asynchrono
us write request packetとAsynchronous write transa
ctionとは、IEEE1394−1995規格において
規定するパケット・フォーマットであり、転送方法であ
る。
コルに基づく転送手順について詳細に説明する。上記ネ
ゴシエーション(図9参照)が終わると、最初に、コン
トローラ300は、デスティネーション・ノード304
に、Receive Segment commandを発行する(130
1)。受信準備ができ次第、デスティネーション・ノー
ド304は、コントローラ300に、INTERIM response
を発行して待機状態に入る(1302)。
ード302に、Send Segment commandを発行する(13
03)。ソース・ノード302は、コントローラ300
に、INTERIM responseを発行してデータ送信状態に入る
(1304)。
ド302は、Asynchronous write transactionを用い
て、所望のオブジェクトデータ308をデスティネーシ
ョン・ノード304に送信する(1305〜130
8)。
ータ308の転送手順の一例を説明する。図13におい
て、オブジェクトデータ308は、例えばデータサイズ
が128Kbyteとなる静止画像データである。
ータ308を1つ以上のセグメントに分割する。例え
ば、オブジェクトデータ308と同じサイズの内部バッ
ファをデスティネーション・ノード304に確保できた
場合、ソース・ノード302は、オブジェクトデータ3
08を1つのセグメントに分割する。
ーラ300から指示されたoCCRのpayload_sizeフィール
ド514の内容を検出し、各セグメントを1つ以上のセ
グメントデータに分割する。図13には、1セグメント
を500個のセグメントデータ(1セグメントデータは
256byte)に分割する例を示す。ここで、payloa
d_sizeフィールド514の内容は、コントローラ300
によりセットされる。
ントを少なくとも一回のAsynchronous write transacti
onを用いて順次転送する。図13には、1セグメントデ
ータを一回のAsynchronous write transactionを用いて
転送する例を示す。
onにより順次転送されたデータの総量が、receive_buff
er_sizeフィールド614に設定された値(即ち、内部
バッファの容量)に達した場合、ソース・ノード302
は、上記Send Segment commandに対するACCEPTED respo
nseをコントローラ300に対して発行する(130
9)。
は、上記Receive Segment commandに対するACCEPTED re
sponseをコントローラ300に対して発行し、1セグメ
ント分のデータ転送が完了したことを通知する(131
0)。次のセグメントがある場合、コントローラ30
0、ソース・ノード302、及びデスティネーション・
ノード304は、上述の手順を繰り返し行う。
ynchronous write transactionを用いて、所望のオブジ
ェクトデータ308をデスティネーション・ノード30
4に対して確実に送信することができる。
物理的な接続形態に依存しない論理的な接続関係をIE
EE1394−1995規格のようなバス型ネットワー
ク内に構築することができる。
995規格に準拠した通信システムにおいて、リアルタ
イム性は必要とされないが、信頼性が要求される比較的
データ量の多いオブジェクトデータ(例えば、静止画像
データ、グラフィックスデータ、テキストデータ、ファ
イルデータ、プログラムデータ等)を、1以上のセグメ
ントに分割し、各セグメントを1つ以上のAsynch
ronous転送を用いて順次転送する全く新規な通信
プロトコルを提供することができる。
995規格に準拠した通信システムにおいて、複数の機
器間のデータ通信を、Asynchronous転送方
式によるブロードキャスト通信を用いて実現する全く新
規な通信プロトコルを提供することもできる。
995規格に準拠した通信システムにおいて、複数の異
なる通信プロトコルが存在した場合でも、使用可能な通
信プロトコルを自動的に判別し、使い分けることができ
る。
信プロトコル及びそれを実現するために必要な各種の処
理動作は、ソフトウェアによって実現することも可能で
ある。例えば、上述の実施例の機能を実現するためのプ
ログラムコードを記憶した記憶媒体を、各実施例の通信
システムを構成する機器の制御部(例えば、図1のMP
U12、システムコントローラ50、プリンタコントロ
ーラ68)に供給するように構成する。そして、その制
御部が、該記憶媒体に格納されたプログラムコードを読
み出し、そのプログラムコードに従って各実施例の機能
を実現するように通信システム或いは機器自体の動作を
制御するように構成しても、上述の実施例を実現するこ
とができる。
プログラムコードを記憶した記憶媒体を、各機器の具備
する1394インタフェース14、44、62に供給
し、該1394インタフェース14、44、62の動作
を制御する制御部(例えば、図2のシリアル・バス・マ
ネージメント206)が、該記憶媒体に記憶されたプロ
グラムコードに従って各実施例の機能を実現するように
処理動作を制御するように構成してもよい。
たプログラムコード自体が各実施例の機能を実現するこ
とになり、そのプログラムコード自体及びそのプログラ
ムコードを制御部に供給するための手段(例えば、記憶
媒体自体)は本発明を構成する。
体としては、例えば、フロッピディスク、ハードディス
ク、光ディスク、光磁気ディスク、CD−ROM、磁気
テープ、不揮発性のメモリカード、ROMなどを用いる
ことができる。
グラムコードが、上述の制御部上で稼動しているOS
(オペレーティングシステム)或いは各種のアプリケー
ションソフト等と共同して、各実施例の機能を実現する
場合も本発明に含まれることは言うまでもない。
ログラムコードを、上述の制御部に接続された機能拡張
ユニットに備わるメモリに格納した後、その機能拡張ユ
ニットに備わる制御部が、該メモリに格納したプログラ
ムコードに従って実際の処理の一部或いは全てを行い、
その処理によって各実施例の機能を実現する場合も本発
明に含まれることは言うまでもない。
ら逸脱することなく、他の様々な形で実施することがで
きる。例えば、本実施例のコントローラ300は、ソー
ス・ノード302のoMCRとデスティネーション・ノード
304のiMCRとを読み出す際、図7に示すREAD MCR sta
tus commandを各ノードに発行するように構成したがそ
れに限るものではない。oMCR、iMCRのアドレスを予め特
定のアドレスとなるように構成しておけば、コントロー
ラ300は、各レジスタの内容を、IEEE1394−
1995規格のAsynchronousリード・トランザクション
を用いて読み出すこともできる。
94インタフェースは、図9に示すネゴシエーションの
処理の一部を、図2に示すトランザクション・レイヤよ
りも上位のレイヤに影響を与えることなく実現すること
ができる。これにより、本実施例の1394インタフェ
ースは、アプリケーション・レイヤに対する負荷を少な
くすることができ、ハードウェア化が容易になる。
ース・ノード302のoCCRとデスティネーション・ノー
ド304のiCCRに所定の値を書き込む際、図8に示すSE
T CCR control commandを各ノードに発行するように構
成したがそれに限るものではない。oCCR、iCCRのアドレ
スを予め特定のアドレスとなるように構成しておけば、
コントローラ300は、各レジスタの内容を、IEEE
1394−1995規格のAsynchronousリード・ライト
・コンペア・スワップ・ロック・トランザクションを用
いて書き込むこともできる。
94インタフェースは、ロック・トランザクションに対
する応答により、図9に示すネゴシエーションの処理の
一部を実現することができる。これにより、本実施例の
1394インタフェースは、トランザクション・レイヤ
における応答により上述の処理を実現できるため、処理
速度をより一層向上されることができる。又、アプリケ
ーション・レイヤに対する負荷を少なくすることがで
き、ハードウェア化が容易になる。
2種類の異なる通信プロトコルを選択する構成及び手順
について説明したが、2種類以上の通信プロトコルの中
から選択するように構成してもよい。この場合、各ノー
ドは、oMCRのreservedフィールド503或いはiMCRのre
servedフィールド506を用いて各通信プロトコルのサ
ポート状態を示すことができる。
1995規格に準拠したネットワークに適用可能な通信
プロトコルについて説明したがそれに限るものではな
い。本実施例の通信プロトコルは、IEEE1394−
1995規格のようなバス型ネットワークやバス型ネッ
トワークを仮想的に構成できるネットワークに適用する
こともできる。
単なる例示に過ぎず、限定的に解釈してはならない。本
発明の範囲は特許請求の範囲によって示すものであっ
て、明細書本文には何等拘束されない。更に、特許請求
の範囲の均等範囲に属する変形や変更はすべて本発明の
範囲のものである。
トコルが混在する場合でも、システム全体の操作性を著
しく損なうことなく、利用可能な通信プロトコルに適応
的に選択することができる。
ク図である。
説明する図である。
構成を説明する概念図である。
ある。
タ(oMCRとoCCR)の構成を説明する図である。
る入力レジスタ(iMCRとiCCR)の構成を説明する図であ
る。
構成を示す図である。
ドの構成を示す図である。
との間で使用する通信プロトコルを設定するまでの手順
について説明するシーケンスチャートである。
明するシーケンスチャートで、1つのソース・ノードと
1つのデスティネーション・ノードとの間の転送手順を
説明する図である。
明するシーケンスチャートで、通信プロトコルで規定す
る再開手順について説明する図である。
明するシーケンスチャートで、1つのソース・ノードと
3つのデスティネーション・ノード304との間の転送
手順を説明する図である。
トデータの転送手順を説明する図である。
パケットの構成を示す図である。
パケットの構成を示す図である。
明するシーケンスチャートである。
Claims (37)
- 【請求項1】 少なくとも1回の非同期通信を用いて1
つ以上のセグメントからなるオブジェクトデータを転送
するソース・ノードと、 前記ソース・ノードから転送されたオブジェクトデータ
を受信する1つ以上のデスティネーション・ノードと、 前記ソース・ノードと前記1つ以上のデスティネーショ
ン・ノードとの間に論理的な接続関係を設定するコント
ローラとを備え、 前記コントローラは、複数の異なる通信プロトコルの中
から、前記ソース・ノードと前記デスティネーション・
ノードとの間で使用される通信プロトコルを選択するこ
とを特徴とするデータ通信システム。 - 【請求項2】 前記通信プロトコルの1つは、ブロード
キャスト通信を用いて前記オブジェクトデータを転送す
る通信プロトコルであることを特徴とする請求項1記載
のデータ通信システム。 - 【請求項3】 前記通信プロトコルの1つは、マルチキ
ャスト通信の可能な通信プロトコルであることを特徴と
する請求項1記載のデータ通信システム。 - 【請求項4】 前記通信プロトコルは、Asynchronousブ
ロードキャストトランザクションを用いた通信プロトコ
ルであることを特徴とする請求項2又は3記載のデータ
通信システム。 - 【請求項5】 前記通信プロトコルの1つは、通信相手
を特定する通信方式を用いて前記オブジェクトデータを
転送する通信プロトコルであることを特徴とする請求項
1記載のデータ通信システム。 - 【請求項6】 前記通信プロトコルの1つは、ユニキャ
スト通信の可能な通信プロトコルであることを特徴とす
る請求項1記載のデータ通信システム。 - 【請求項7】 前記通信プロトコルは、Asynchronousラ
イトトランザクションを用いた通信プロトコルであるこ
とを特徴とする請求項5又は6記載のデータ通信システ
ム。 - 【請求項8】 前記ソース・ノードとデスティネーショ
ン・ノードとは、自己の通信能力を記述するレジスタ空
間を有することを特徴とする請求項1〜7のいずれか1
項に記載のデータ通信システム。 - 【請求項9】 前記コントローラは、前記レジスタ空間
の内容により前記通信プロトコルを選択することを特徴
とする請求項8記載のデータ通信システム。 - 【請求項10】 前記ソース・ノードとデスティネーシ
ョン・ノードとは、前記論理的な接続関係に関する情報
を記述するレジスタ空間を有することを特徴とする請求
項1〜9のいずれか1項に記載のデータ通信システム。 - 【請求項11】 前記コントローラは、前記論理的な接
続関係を設定する毎に、前記通信プロトコルを選択する
ことを特徴とする請求項1〜10のいずれか1項に記載
のデータ通信システム。 - 【請求項12】 前記ソース・ノードは、1セグメント
分のデータを少なくとも1回の非同期通信を用いて順次
転送することを特徴とする請求項1〜11のいずれか1
項に記載のデータ通信システム。 - 【請求項13】 前記1つ以上のデスティネーション・
ノードは、前記非同期通信を用いて転送されたデータに
対してレスポンスを返すことを特徴とする請求項1〜1
2のいずれか1項に記載のデータ通信システム。 - 【請求項14】 前記コントローラは、前記ソース・ノ
ードと前記1つ以上のデスティネーション・ノードとの
間に1つ以上の論理的な接続関係を設定可能であること
を特徴とする請求項1〜13のいずれか1項に記載のデ
ータ通信システム。 - 【請求項15】 前記ソース・ノードは、前記1つ以上
のデスティネーション・ノードのメモリ空間を共通に指
定するアドレスを用いて前記オブジェクトデータを書き
込むことを特徴とする請求項1〜14のいずれか1項に
記載のデータ通信システム。 - 【請求項16】 前記通信プロトコルは、Asynchronous
Stream packetを用いた通信プロトコルであることを
特徴とする請求項2又は3記載のデータ通信システム。 - 【請求項17】 前記データ通信システムは、バス型ネ
ットワークであることを特徴とする請求項1〜16のい
ずれか1項に記載のデータ通信システム。 - 【請求項18】 前記データ通信システムは、IEEE
1394−1995規格に準拠したネットワークである
ことを特徴とする請求項1〜17のいずれか1項に記載
のデータ通信システム。 - 【請求項19】 前記オブジェクトデータは、静止画像
データ、グラフィックスデータ、テキストデータ、ファ
イルデータ、プログラムデータの少なくとも1つである
ことを特徴とする請求項1〜18のいずれか1項に記載
のデータ通信システム。 - 【請求項20】 ソース・ノードと1つ以上のデスティ
ネーション・ノードとの間に論理的な接続関係を設定す
るステップと、 複数の異なる通信プロトコルの中から、前記ソース・ノ
ードと前記デスティネーション・ノードとの間で使用さ
れる通信プロトコルを選択するステップと、 1つ以上のセグメントからなるオブジェクトデータを少
なくとも1回の非同期通信を用いて前記デスティネーシ
ョン・ノードに転送するステップとを有することを特徴
とするデータ通信方法。 - 【請求項21】 1つ以上のセグメントからなるオブジ
ェクトデータを少なくとも1つの通信パケットにパケッ
タイズする手段と、 1つ以上のデスティネーション・ノードとの間に設定さ
れた論理的な接続関係と複数の異なる通信プロトコルの
1つとを用いて、前記通信パケットを非同期転送する手
段とを備えることを特徴とするデータ通信装置。 - 【請求項22】 1つ以上のセグメントからなるオブジ
ェクトデータを少なくとも1つの通信パケットにパケッ
タイズするステップと、 1つ以上のデスティネーション・ノードとの間に設定さ
れた論理的な接続関係と複数の異なる通信プロトコルの
1つとを用いて、前記通信パケットを非同期転送するス
テップとを有することを特徴とするデータ通信方法。 - 【請求項23】 ソース・ノードとの間に設定された論
理的な接続関係と複数の異なる通信プロトコルの1つと
を用いて非同期転送された少なくとも1つの通信パケッ
トを受信する手段と、 前記通信パケットに含まれるデータを該通信パケットの
指定するメモリ空間に書き込む手段とを備えることを特
徴とするデータ通信装置。 - 【請求項24】 ソース・ノードとの間に設定された論
理的な接続関係と複数の異なる通信プロトコルの1つと
を用いて非同期転送された少なくとも1つの通信パケッ
トを受信するステップと、 前記通信パケットに含まれるデータを該通信パケットの
指定するメモリ空間に書き込むステップとを有すること
を特徴とするデータ通信方法。 - 【請求項25】 ソース・ノードと1つ以上のデスティ
ネーション・ノードとの間に論理的な接続関係を設定す
る手段と、 前記論理的な接続関係において使用可能な通信プロトコ
ルを、複数の異なる通信プロトコルの中から選択する手
段とを備えることを特徴とするデータ通信装置。 - 【請求項26】 ソース・ノードと1つ以上のデスティ
ネーション・ノードとの間に論理的な接続関係を設定す
るステップと、 前記論理的な接続関係において使用可能な通信プロトコ
ルを、複数の異なる通信プロトコルの中から選択するス
テップとを有することを特徴とするデータ通信方法。 - 【請求項27】 情報データを送信するソース・ノード
と、該情報データを受信するデスティネーション・ノー
ドとを含むデータ通信システムにおいて、 1つ以上の特定された転送先或いは不特定多数の転送先
に応じて異なる複数の通信プロトコルの何れかを選択
し、上記情報データを転送することを特徴とするデータ
通信システム。 - 【請求項28】 上記異なる複数の通信プロトコルの夫
々に関する情報は、上記ソース・ノード及び上記デステ
ィネーション・ノードの具備する記憶手段に記憶されて
いることを特徴とする請求項27記載のデータ通信シス
テム。 - 【請求項29】 上記異なる複数の通信プロトコルの1
つは、IEEE1394−1995規格に準拠したAs
ynchronousライトトランザクションを用いた
通信プロトコルであることを特徴とする請求項27又は
28記載のデータ通信システム。 - 【請求項30】 上記異なる複数の通信プロトコルの1
つは、IEEE1394−1995規格に準拠したAs
ynchronousブロードキャストトランザクショ
ンを用いた通信プロトコルであることを特徴とする請求
項27〜29のいずれか1項に記載のデータ通信システ
ム。 - 【請求項31】 上記異なる複数の通信プロトコルの1
つは、IEEE1394−1995規格に準拠したAs
ynchronous Streamsを用いた通信プ
ロトコルであることを特徴とする請求項27〜29のい
ずれか1項に記載のデータ通信システム。 - 【請求項32】 情報データを送信するソース・ノード
と、該情報データを受信するデスティネーション・ノー
ドとを含むデータ通信システムにおいて、 上記ソース・ノードと上記デスティネーション・ノード
との間の接続を設定する迄の動作を共用する複数の通信
プロトコルの何れかを選択し、前記情報データを転送す
ることを特徴とするデータ通信システム。 - 【請求項33】 情報データを送信するソース・ノード
と、該情報データを受信するデスティネーション・ノー
ドとを含むデータ通信システムに適用可能なデータ通信
方法において、 1つ以上の特定された転送先或いは不特定多数の転送先
に応じて異なる複数の通信プロトコルの何れかを選択
し、上記情報データを転送することを特徴とするデータ
通信方法。 - 【請求項34】 情報データを送信するソース・ノード
と、該情報データを受信するデスティネーション・ノー
ドとを含むデータ通信方法において、 上記ソース・ノードと上記デスティネーション・ノード
との間の接続を設定する迄の動作を共用する複数の通信
プロトコルの何れかを選択し、前記情報データを転送す
ることを特徴とするデータ通信方法。 - 【請求項35】 情報データを送信するソース・ノード
と、該情報データを受信するデスティネーション・ノー
ドとを含むデータ通信システムに適用可能なデータ通信
装置において、 1つ以上の特定された転送先或いは不特定多数の転送先
に応じて異なる複数の通信プロトコルの何れかを選択す
る選択手段と、 上記選択手段により選択された通信プロトコルに基づい
て情報データの転送を行う転送手段とを具備することを
特徴とするデータ通信装置。 - 【請求項36】 請求項20、22、24、26、3
3、34のいずれか1項に記載のデータ通信方法の手順
をコンピュータに実行させるためのプログラムを格納し
たことを特徴とする記憶媒体。 - 【請求項37】 請求項21、23、25、35のいず
れか1項に記載の各手段としてコンピュータを機能させ
るためのプログラムを格納したことを特徴とする記憶媒
体。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09816399A JP4181688B2 (ja) | 1998-04-09 | 1999-04-05 | データ通信システム及びデータ通信装置 |
MYPI99001360A MY126621A (en) | 1998-04-09 | 1999-04-08 | Communication system, controller and method therefor |
US09/288,038 US7123621B1 (en) | 1998-04-09 | 1999-04-08 | Data communication system, data communication method and data communication apparatus |
CN99107676A CN1132395C (zh) | 1998-04-09 | 1999-04-09 | 数据通信系统和数据通信方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9798998 | 1998-04-09 | ||
JP10-97989 | 1998-04-09 | ||
JP09816399A JP4181688B2 (ja) | 1998-04-09 | 1999-04-05 | データ通信システム及びデータ通信装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000049834A true JP2000049834A (ja) | 2000-02-18 |
JP2000049834A5 JP2000049834A5 (ja) | 2006-06-08 |
JP4181688B2 JP4181688B2 (ja) | 2008-11-19 |
Family
ID=26439105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP09816399A Expired - Fee Related JP4181688B2 (ja) | 1998-04-09 | 1999-04-05 | データ通信システム及びデータ通信装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7123621B1 (ja) |
JP (1) | JP4181688B2 (ja) |
CN (1) | CN1132395C (ja) |
MY (1) | MY126621A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002009110A1 (fr) * | 2000-07-21 | 2002-01-31 | Sony Corporation | Dispositif d'enregistrement, dispositif de lecture, et systeme d'enregistrement/lecture |
US7388864B2 (en) | 2002-10-11 | 2008-06-17 | Ricoh Company, Ltd. | Data communication apparatus, data communication system, data communication method, data communication program and information recording medium |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068674B1 (en) * | 1999-08-23 | 2006-06-27 | Lg Electronics Inc. | Method of controlling connection between nodes in digital interface |
US7346582B2 (en) * | 1999-12-21 | 2008-03-18 | Sony Corporation | Electronic money, electronic use right, charging system, information processing apparatus, and reproducing method and reproduction control method of contents data |
US20030128686A1 (en) * | 2001-12-06 | 2003-07-10 | Hur Nam Chun | Variable delay buffer |
US7188182B2 (en) * | 2002-03-20 | 2007-03-06 | Microsoft Corporation | Selecting an appropriate transfer mechanism for transferring an object |
KR100547849B1 (ko) * | 2003-12-05 | 2006-01-31 | 삼성전자주식회사 | 고속 개인용 무선 네트워크에서의 브릿지 디바이스를선정하기 위한 프레임 구조와 그에 따른 선정 방법 |
US8325768B2 (en) * | 2005-08-24 | 2012-12-04 | Intel Corporation | Interleaving data packets in a packet-based communication system |
US7849243B2 (en) * | 2008-01-23 | 2010-12-07 | Intel Corporation | Enabling flexibility of packet length in a communication protocol |
JP2010109530A (ja) * | 2008-10-29 | 2010-05-13 | Sony Corp | 無線通信装置および無線通信方法 |
US20100323725A1 (en) * | 2009-06-18 | 2010-12-23 | Yigang Cai | Individualized retry configurations for messages having failed delivery |
KR101667020B1 (ko) * | 2011-08-03 | 2016-10-17 | 에스케이텔레콤 주식회사 | 관리장치 및 관리장치의 동작 방법 |
CN104331028B (zh) * | 2013-07-22 | 2017-11-28 | 上海联影医疗科技有限公司 | 控制装置和总线系统 |
WO2016018262A1 (en) * | 2014-07-29 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Storage transactions |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04154242A (ja) * | 1990-10-17 | 1992-05-27 | Nec Corp | ネットワーク障害回復方式 |
US5222125A (en) * | 1991-09-03 | 1993-06-22 | At&T Bell Laboratories | System for providing personalized telephone calling features |
JPH0698041A (ja) | 1992-09-14 | 1994-04-08 | Ricoh Co Ltd | ファクシミリ通信システム |
US5586117A (en) * | 1992-11-02 | 1996-12-17 | National Semiconductor Corporation | Method and apparatus which allows devices with multiple protocol capabilities to configure to a common protocol configuration |
US5440613A (en) * | 1992-12-30 | 1995-08-08 | At&T Corp. | Architecture for a cellular wireless telecommunication system |
CA2159383C (en) * | 1994-12-22 | 1999-01-12 | Bruce Merrill Bales | Automatic call back under control of a telephone terminal |
US5541930A (en) | 1995-01-10 | 1996-07-30 | Klingman; Edwin E. | Byte aligned communication system for transferring data from one memory to another memory over an ISDN |
US5680589A (en) | 1995-06-08 | 1997-10-21 | Klingman; Edwin E. | Ring communication system using ISDN |
US5802057A (en) * | 1995-12-01 | 1998-09-01 | Apple Computer, Inc. | Fly-by serial bus arbitration |
US6006286A (en) * | 1996-04-26 | 1999-12-21 | Texas Instruments Incorporated | System for controlling data packet transfers by associating plurality of data packet transfer control instructions in packet control list including plurality of related logical functions |
US6058433A (en) * | 1996-07-23 | 2000-05-02 | Gateway 2000, Inc. | System and method for providing increased throughput through a computer serial port to a modem communications port |
US6233017B1 (en) * | 1996-09-16 | 2001-05-15 | Microsoft Corporation | Multimedia compression system with adaptive block sizes |
US6246759B1 (en) * | 1996-09-26 | 2001-06-12 | Rockwell International Corporation | Call overflow system and method for overflowing telephone calls between telephonic switches |
US5999525A (en) * | 1996-11-18 | 1999-12-07 | Mci Communications Corporation | Method for video telephony over a hybrid network |
KR100194813B1 (ko) * | 1996-12-05 | 1999-06-15 | 정선종 | 멀티채널/멀티캐스트 스위칭 기능을 갖는 패킷 스위칭장치 및 이를 이용한 패킷 스위칭 시스템 |
DE69837356T2 (de) * | 1997-02-14 | 2007-11-29 | Canon K.K. | Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung |
US5907678A (en) * | 1997-05-07 | 1999-05-25 | International Business Machines Corporation | Client/server system in which protocol caches for multiple sessions are selectively copied into a common checkpoint cache upon receiving a checkpoint request |
US6058115A (en) * | 1997-08-04 | 2000-05-02 | Motorola, Inc. | Communication method and apparatus utilizing protocol options |
JPH1188355A (ja) * | 1997-09-09 | 1999-03-30 | Fujitsu Ltd | 伝送セルの通過制御方法および装置 |
USH1917H (en) * | 1997-09-26 | 2000-11-07 | Dsc/Celcore, Inc. | Signal-processing module for a telecommunications switching platform |
US5938735A (en) * | 1997-10-21 | 1999-08-17 | Ricoh Company, Ltd. | System for establishing optimized ISDN communication by identifying common communication attributes of destination and source terminals prior to establishing communication link therebetween |
US6134628A (en) * | 1998-01-30 | 2000-10-17 | Ricoh Company, Ltd. | Method and computer-based system for rewriting a nonvolatile rewritable memory |
US6690648B2 (en) | 1998-02-24 | 2004-02-10 | Canon Kabushiki Kaisha | Data communication apparatus, method, and system utilizing reception capability information of a destination node |
US20030179719A1 (en) | 1998-05-22 | 2003-09-25 | Takashi Kobayashi | Method and apparatus for transmitting packets at a transfer rate that depends on a response from a destination |
-
1999
- 1999-04-05 JP JP09816399A patent/JP4181688B2/ja not_active Expired - Fee Related
- 1999-04-08 US US09/288,038 patent/US7123621B1/en not_active Expired - Fee Related
- 1999-04-08 MY MYPI99001360A patent/MY126621A/en unknown
- 1999-04-09 CN CN99107676A patent/CN1132395C/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002009110A1 (fr) * | 2000-07-21 | 2002-01-31 | Sony Corporation | Dispositif d'enregistrement, dispositif de lecture, et systeme d'enregistrement/lecture |
US7388864B2 (en) | 2002-10-11 | 2008-06-17 | Ricoh Company, Ltd. | Data communication apparatus, data communication system, data communication method, data communication program and information recording medium |
Also Published As
Publication number | Publication date |
---|---|
CN1132395C (zh) | 2003-12-24 |
JP4181688B2 (ja) | 2008-11-19 |
MY126621A (en) | 2006-10-31 |
CN1238625A (zh) | 1999-12-15 |
US7123621B1 (en) | 2006-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7590133B2 (en) | Data communication system, data communication method, and data communication apparatus | |
EP0938218B1 (en) | Data communication system, method of communicating data and data communication apparatus | |
EP0939529B1 (en) | Destination node, data communication system, method of controlling a destination node and method of operating a data communication system | |
JP2000049834A (ja) | デ―タ通信システム、装置及び方法並びに記憶媒体 | |
US6363428B1 (en) | Apparatus for and method of separating header information from data in an IEEE 1394-1995 serial bus network | |
KR100312276B1 (ko) | 데이터 통신 시스템, 데이터 통신 방법, 데이터 통신 장치 및디지털 인터페이스 | |
JPH10229410A (ja) | データ処理装置、電子機器および通信システム | |
US6678769B1 (en) | Control apparatus and method for managing a logical connection between source and destination nodes | |
JP3862371B2 (ja) | 電子機器及び制御方法 | |
JP3814407B2 (ja) | データ通信システム、データ通信装置及びデータ通信方法 | |
JP3862403B2 (ja) | データ通信システムおよびデータ通信装置 | |
JP3943698B2 (ja) | データ通信システム及びデータ通信装置 | |
JP4143205B2 (ja) | データ通信システム | |
JP3943697B2 (ja) | データ通信システム、データ通信装置及びデータ通信方法 | |
JP2000253463A (ja) | ネットワーク制御システム及びこのネットワーク制御システムに用いるターゲット、コントローラ、並びにコンシューマ | |
JPH11317755A (ja) | デ―タ通信システム、デ―タ通信方法、デ―タ通信装置及びディジタルインタ―フェイス | |
JPH11261608A (ja) | データ通信システム、データ通信装置、データ通信方法及び記憶媒体 | |
JP2000032005A (ja) | デ―タ通信システム、デ―タ通信方法、デ―タ通信装置、デジタルインタフェ―ス及び記憶媒体 | |
JPH11313091A (ja) | データ通信システム、装置及び方法並びに記憶媒体 | |
JPH11355319A (ja) | デ―タ通信システム、デ―タ通信方法、デ―タ通信装置及びディジタルインタフェ―ス | |
JP4065466B2 (ja) | データ通信システム | |
JPH11298509A (ja) | データ通信システム、データ通信方法、データ通信装置及び記憶媒体 | |
JP2000032010A (ja) | デ―タ通信システム、デ―タ通信方法、デ―タ通信装置、デジタルインタフェ―ス及び記憶媒体 | |
JPH11308255A (ja) | データ通信システム、方法及び装置並びに記憶媒体 | |
JP2006311614A (ja) | データ通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060405 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060405 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080603 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080804 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080826 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080901 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110905 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110905 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120905 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120905 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130905 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |