JP3630971B2 - データ通信方法、装置、システム、及び記憶媒体 - Google Patents

データ通信方法、装置、システム、及び記憶媒体 Download PDF

Info

Publication number
JP3630971B2
JP3630971B2 JP03341498A JP3341498A JP3630971B2 JP 3630971 B2 JP3630971 B2 JP 3630971B2 JP 03341498 A JP03341498 A JP 03341498A JP 3341498 A JP3341498 A JP 3341498A JP 3630971 B2 JP3630971 B2 JP 3630971B2
Authority
JP
Japan
Prior art keywords
serial bus
data communication
data
protocol
address space
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.)
Expired - Fee Related
Application number
JP03341498A
Other languages
English (en)
Other versions
JPH10290247A (ja
Inventor
二郎 立山
耕司 福長
清 片野
真琴 小林
敦 中村
尚久 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP03341498A priority Critical patent/JP3630971B2/ja
Publication of JPH10290247A publication Critical patent/JPH10290247A/ja
Application granted granted Critical
Publication of JP3630971B2 publication Critical patent/JP3630971B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ通信方法、データ通信装置、データ通信システム、及びそれらを実施するための処理ステップをコンピュータが読出可能に格納した記憶媒体に関し、特に、ホストデバイスとターゲットデバイス間でデータ通信を行う際の通信プロトコルが、そのターゲットデバイスによって限定されることがないデータ通信方法、データ通信装置、データ通信システム、及び記憶媒体に関するものである。
【0002】
【従来の技術】
従来より、汎用インターフェースを介してプリンタにデータを送出するシステムとして、様々な種類のシステムが知られている。
例えば、SCSI(Small Computer System Interface )、セントロニクス等、一般に広く用いられるようになったデファクトスタンダードのインターフェースを用いて、コンピュータからプリンタにデータを出力する技術が知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、これらのインターフェースを用いて、あるプリンタにプリントデータを転送するためのプリンタプロトコルは、そのプリンタのメーカ固有のものに限られ、拡張性に欠ける、という問題が生じている。
特に、様々な種類の機器を接続するインターフェース、例えば、IEEE1394のようなシリアルインターフェースを用いてプリントデータを転送する場合には、かかる拡張性に欠けるという問題点は解決すべき大きな課題である。
また、かかるプリントデータの転送の際に用いるプロトコルをいかに、すみやかに設定するかということは、大きな課題である。
【0004】
そこで、本発明は、上記の欠点を除去するために成されたもので、ホストデバイスとターゲットデバイス間でデータ通信を行う際の通信プロトコルが、そのターゲットデバイスによって限定されることがないデータ通信方法、データ通信装置、データ通信システム、及び記憶媒体を提供することを目的とする。
また、本発明は、IEEE1394規格のようなシリアルインターフェースを用いた好適なデータ通信方法、データ通信装置、データ通信システム、及び記憶媒体を提供することを目的とする。
また、本発明は、ホストコンピュータを介することなく、ホストデバイスからターゲットデバイスへ直接、画像データを転送するのに好適なデータ通信方法、データ通信装置、データ通信システム、及び記憶媒体を提供することを目的とする。
【0005】
【課題を解決するための手段】
斯かる目的下において、第1の発明は、第1及び第2のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むデータ通信システムであって、上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を格納する第1のプロトコルケーパビリティ記憶手段を含み、上記第2のデバイスは、上記第1のプロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する第2の確認手段と、上記第1のプロトコルケーパビリティ記憶手段の内容に基づいてデータトランスポートプロトコルを決定する第2の決定手段とを含み、上記第2の確認手段は、上記第2の決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とする。
【0019】
第2の発明は、上記第1の発明において、上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、リソースの専有状態を示す情報を格納するロック記憶手段を更に含むことを特徴とする。
【0020】
第3の発明は、上記第1の発明において、上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、リソースの専有状態を示す情報を格納するロック記憶手段を更に含み、上記第2のデバイスは、上記ロック記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定するリード又はロックトランズアクションによって確認するロック内容確認手段と、上記ロック内容確認手段の確認結果によって上記第1のデバイスが専有されているかを判定する判定手段とを更に含むことを特徴とする。
【0021】
第4の発明は、上記第1の発明において、上記データトランスポートプロトコルは、プリンタプロトコルを含むことを特徴とする。
【0022】
第5の発明は、上記第4の発明において、上記プリンタプロトコルは、プリントすべきデータを転送するためのプロトコルを含むことを特徴とする。
【0023】
第6の発明は、上記第1の発明において、上記第2のデバイスは、画像データを出力するデバイスを含むことを特徴とする。
【0024】
第7の発明は、上記第6の発明において、上記第2のデバイスは、コンピュータ、ディジタルカメラ、スキャナ、DVD、Set−top−Box、ディジタルテレビ、コンファレンスカメラ、ディジタルビデオ、及びこれらを含む複合機の少なくとも何れかを含むデバイスであることを特徴とする。
【0025】
第8の発明は、上記第1の発明において、上記第1のデバイスは、上記第2の決定手段で決定されたデータトランスポートプロトコルを格納するプロトコル記憶手段を更に含むことを特徴とする。
【0026】
第9の発明は、上記第1の発明において、上記シリアルバスは、IEEE1394規格に適合又は準拠するバスを含むことを特徴とする。
【0027】
第10の発明は、上記第1の発明において、上記シリアルバスは、DS−link方式によってデータを変調し転送するバスを含むことを特徴とする。
【0028】
第11の発明は、上記第1の発明において、上記第2の確認手段は、上記第1のプロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定するリードトランズアクションによって確認することを特徴とする。
【0029】
第12の発明は、上記第11の発明において、上記リードトランズアクションは、上記シリアルバスのトランスポートプロトコル層よりも下位の層にて実行されることを特徴とする。
【0030】
第13の発明は、上記第1の発明において、上記第1のデバイスは、画像データが入力されるデバイスを含むことを特徴とする。
【0031】
第14の発明は、上記第13の発明において、上記第1のデバイスは、モニタ、コンピュータ、外部記憶装置、Set−top−Box、プリンタ及びこれらを含む複合機の少なくとも何れかを含むデバイスであることを特徴とする。
【0032】
第15の発明は、上記第1の発明において、上記第2のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を格納する第2のプロトコルケーパビリティ記憶手段を更に含むことを特徴とする。
【0033】
第16の発明は、上記第1の発明において、上記第1のデバイスは、上記プロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する第1の確認手段と、上記プロトコルケーパビリティ記憶手段の内容に基づいてデータトランスポートプロトコルを決定する第1の決定手段とを更に含み、上記第1の確認手段は、上記第1の決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とする。
【0034】
第17の発明は、複数のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むデータ通信システムを構成するための、上記複数のデバイスの少なくとも1つのデバイスであるデータ通信装置であって、上記シリアルバスにより定義されたアドレス空間上に記憶された対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認手段と、上記確認手段での確認結果に基づいてデータトランスポートプロトコルを決定する決定手段とを含み、上記確認手段は、上記決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とする。
【0035】
第18の発明は、請求項4〜16の何れか1項に記載のデータ通信システムを構成するための第1のデバイスであることを特徴とする。
【0036】
第19の発明は、請求項4〜16の何れか1項に記載のデータ通信システムを構成するための第2のデバイスであることを特徴とする。
【0037】
第20の発明は、第1のデバイスと第2のデバイス間のでデータ通信を、該デバイス毎に所定のアドレス空間を定義するシリアルバスを介して行うデータ通信方法であって、対応可能なデータトランスポートプロトコルを示す情報が格納される、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタの記憶内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする。
【0038】
第21の発明は、各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信方法であって、対応可能なデータトランスポートプロトコルを示す情報を、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタから読み出すステップを含むことを特徴とする。
【0039】
第22の発明は、各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信方法であって、上記シリアルバスに接続された他のデバイスのプロトコルケーパビリティレジスタに格納された内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする。
【0040】
第23の発明は、第1のデバイスと、第2のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むシステムでのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、該処理ステップは、対応可能なデータトランスポートプロトコルを示す情報が格納される、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタの記憶内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする。
【0041】
第24の発明は、各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、該処理ステップは、対応可能なデータトランスポートプロトコルを示す情報を、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタから読み出すステップを含むことを特徴とする。
【0042】
第25の発明は、各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、該処理ステップは、上記シリアルバスに接続された他のデバイスのプロトコルケーパビリティレジスタに格納された内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする。
【0043】
第26の発明は、シリアルバスを用いてデータ通信を行うための処理ステップをコンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、上記処理ステップは、請求項20〜22の何れか1項に記載のデータ通信方法の処理ステップを含むことを特徴とする。
【0048】
【発明の実施の形態】
【0049】
以下、本発明の実施の形態について図面を用いて説明する。
【0050】
以下に説明する第1及び第2の実施の形態では、各機器間を接続するディジタルインターフェースとして、例えば、IEEE1394−1995(High Performance Serial Bus 、以下、単に「1394シリアルバス」と言う)を用いているため、まず、1394シリアルバスについて、その概要を説明する。
【0051】
[1394シリアルバスの概要]
【0052】
民生用デジタルビデオカムレコーダ(VCR)やディジタルビデオディスク(DVD)プレーヤの登場に伴なって、ビデオデータやオーディオデータ(以下、これらをまとめて「AVデータ」と言う)等のリアルタイムで、かつ高情報量の多いデータを転送する必要が生じている。AVデータをリアルタイムでパソコン(PC)やその他のデジタル機器に転送し取り込ませるには、高速データ転送が可能なインタフェースが必要になる。そういった観点から開発されたインタフェースが、この1394シリアルバスである。
【0053】
図1に1394シリアルバスを用いて構成されるネットワーク・システムの例を示す。
【0054】
このシステムは、機器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の一例としては、パソコン等のホストコンピュータ装置、及び、コンピュータ周辺機器である。
コンピュータ周辺機器としては、デジタルVCR、DVDプレーヤ、デジタルスチルカメラ、ハードディスクや光ディスク等のメディアを用いる記憶装置、CRTやLCDのモニタ、チューナ、イメージスキャナ、フィルムスキャナ、プリンタ、MODEM、ターミナルアダプタ(TA)等、コンピュータ周辺機器の全てが対象になる。
【0055】
各機器間の接続は、ディジーチェーン方式とノード分岐方式との混在が可能であり、自由度の高い接続を行うことができる。
また、各機器は、各々IDを有し、互いにIDを認識し合うことによって、1394シリアルバスで接続された範囲において、1つのネットワークを構成している。
例えば、機器間を各々1本の1394シリアルバス用ケーブルでディジーチェーン接続するだけで、各々の機器が中継の役割を担うので、全体として1つのネットワークを構成することができる。
【0056】
また、1394シリアルバスは、Plug and Play 機能に対応し、ケーブルを機器に接続するだけで自動的に機器を認識し、接続状況を認識する機能を有している。
【0057】
また、上記図1に示すシステムにおいて、ネットワークからある機器が外されたり、又は、新たに加えられたとき等、自動的にバスをリセット(それまでのナットワークの構成情報をリセット)して、新たなネットワークを再構築する。この機能によって、その時々のネットワークの構成を常時設定、認識することができる。
【0058】
また、1394シリアルバスのデータ転送速度は、100/200/400Mbpsが定義されており、上位の転送速度を持つ機器が下位の転送速度をサポートすることで、互換性が保たれている。
【0059】
データ転送モードとしては、コントロール信号等の非同期データを転送するAsynchronous転送モード(ATM)と、リアルタイムなAVデータの同期データを転送するIsochronous 転送モードがある。
この非同期データと同期データは、各サイクル(通常125μS /サイクル)の中で、サイクル開始を示すサイクル・スタート・パケット(CSP)の転送に続き、同期データの転送を優先しつつ、サイクル内で混在して転送される。
【0060】
図2は、1394シリアルバスの構成要素を示す図である。
【0061】
1394シリアルバスは、レイヤ構造で構成されている。上記図2に示すように、1394シリアルバス用のケーブル813の先端のコネクタが接続されるコネクタポート810がある。コネクタポート810の上位には、ハードウェア部800で構成されるフィジカル・レイヤ811とリンク・レイヤ812がある。
【0062】
ハードウェア部800は、インターフェース用チップで構成され、そのうちのフィジカル・レイヤ811は、符号化やコネクション関連の制御等を行い、リンク・レイヤ812は、パケット転送やサイクルタイムの制御等を行なう。
【0063】
ファームウェア部801のトランザクション・レイヤ814は、転送(トランザクション)すべきデータの管理を行ない、Read、Write、Lockの命令を出す。ファームウェア部801のマネージメント・レイヤ815は、1394シリアルバスに接続されている各機器の接続状況やIDの管理を行ない、ネットワークの構成を管理する。
【0064】
上述のハードウェアとファームウェアまでが、1394シリアルバスの実質的な構成である。
【0065】
また、ソフトウェア部802のアプリケーション・レイヤ816は、利用されるソフトによって異なり、インタフェース上でどのようにしてデータを転送するかは、プリンタやAV/Cプロトコル等のプロトコルによって定義されている。
【0066】
図3は、1394シリアルバスにおけるアドレス空間の図を示す図である。
【0067】
1394シリアルバスに接続された各機器(ノード)には、必ずノードに固有の64ビットアドレスを持たせる。そして、このアドレスは、機器のメモリに格納されていて、自分や相手のノードアドレスを常時認識することで、通信相手を指定したデータ通信を行うことができる。
【0068】
1394シリアルバスのアドレッシングは、IEEE1212規格に準じた方式であり、アドレス設定は、最初の10ビットがバスの番号の指定用に、次の6ビットがノードIDの指定用に使われる。残りの48ビットが機器に与えられたアドレス幅になり、それぞれ固有のアドレス空間として使用できる。最後の28ビットは、機器に固有のデータの領域であり、各機器の識別や使用条件の指定情報等が格納される。
【0069】
以上が、1394シリアルバスの概要である。
つぎに、1394シリアルバスの特徴をより詳細に説明する。
【0070】
[1394シリアルバスの電気的仕様]
【0071】
図4は、1394シリアルバス用のケーブルの断面を示す図である。
1394シリアルバス用ケーブルには、2組のツイストペア信号線の他に、電源ラインが設けられている。これによって、電源を持たない機器や、故障等により電圧が低下した機器等にも電力の供給が可能になる。
電源線により供給される直流電力の電圧は、8〜40V、その電流は、最大電流1.5Aに規定されている。
【0072】
尚、DVケーブルと呼ばれる規格では、電源ラインを省いた四線で構成される。
【0073】
[DS−Link方式]
【0074】
図5は、1394シリアルバスで採用されている、データ転送方式のDS−Link(Data/Strobe Link)方式を説明するための図である。
DS−Link方式は、高速なシリアルデータ通信に適し、2組の信号線を必要とする。つまり、2組の対線のうち1組でデータ信号を送り、もう1組でストローブ信号を送る構成になっている。受信側では、このデータ信号と、ストローブ信号との排他的論理和をとることによってクロックを生成することができるという特徴がある。
このため、DS−Link方式を用いるデータ信号中にクロック信号を混入させる必要がないので、他のシリアルデータ転送方式に比べ転送効率が高い、クロック信号を生成できるので位相ロックドループ(PLL)回路が不要になり、その分コントローラLSIの回路規模を小さくすることができる、さらに、転送すべきデータが無いときにアイドル状態であることを示す情報を送る必要が無いので、各機器のトランシーバ回路をスリープ状態にすることができ、消費電力の低減が図れる。
【0075】
[バスリセットのシーケンス]
【0076】
1394シリアルバスに接続されている各機器(ノード)には、ノードIDが与えられ、ネットワークを構成するノードとして認識される。
例えば、ネットワーク機器の接続分離や、電源のON/OFF等によるノード数の増減、つまりネットワーク構成に変化があり、新たなネットワーク構成を認識する必要があるとき、その変化を検知した各ノードはバス上にバスリセット信号を送信して、新たなネットワーク構成を認識するモードに入る。
このネットワーク構成の変化の検知は、コネクタポート810において、バイアス電圧の変化を検知することによって行われる。
あるノードからバスリセット信号が送信されると、各ノードのフィジカルレイヤ811は、このバスリセット信号を受けると同時にリンクレイヤ812にバスリセットの発生を伝達し、かつ他のノードにバスリセット信号を伝達する。最終的に全てのノードがバスリセット信号を受信した後、バスリセットのシーケンスが起動される。
【0077】
尚、バスリセットのシーケンスは、ケーブルが抜き挿しされた場合や、ネットワークの異常等をハードウェアが検出した場合に起動されると共に、プロトコルによるホスト制御等、フィジカルレイヤ811に直接命令を与えることによっても起動される。また、バスリセットのシーケンスが起動されると、データ転送は、一時中断され、バスリセットの間は待たされ、バスリセット終了後、新しいネットワーク構成のもとで再開される。
【0078】
[ノードID決定のシーケンス]
【0079】
バスリセットの後、各ノードは新しいネットワーク構成を構築するために、各ノードにIDを与える動作に入る。このときの、バスリセットからノードID決定までの一般的なシーケンスを、図6〜図8に示すフローチャートを用いて説明する。
【0080】
上記図6は、バスリセット信号の発生から、ノードIDが決定し、データ転送が行えるようになるまでの一連のシーケンスを示すフローチャートである。
【0081】
各ノードは、ステップS101でバスリセット信号を常時監視し、バスリセット信号が発生すると、ステップS102に移り、ネットワーク構成がリセットされた状態において新たなネットワーク構成を得るために、互いに直結されている各ノード間で親子関係が宣言される。
そして、ステップS103の判定により、全てのノード間で親子関係が決ったと判定されるまで、ステップS102が繰り返される。
親子関係が決定すると、ステップS104へ進み、ルートが決定する。
【0082】
ステップS105で、各ノードにIDを与えるノードIDの設定作業が行われる。ルートから所定のノード順にノードIDの設定が行われ、ステップS106の判定により、全てのノードにIDが与えられたと判定されるで、ステップS105が繰り返される。
ノードIDの設定が終了すると、新しいネットワーク構成が全てのノードにおいて認識されたことになるので、ノード間のデータ転送が行える状態となり、ステップS107でデータ転送が開始されると共に、シーケンスはステップS101へと戻り、再びバスリセット信号の発生が監視される。
【0083】
上記図7は、バスリセット信号の監視(ステップS101)からルート決定(ステップS104)までの詳細を示すフローチャートであり、上記図8は、ID設定(ステップS105、S106)の詳細を示すフローチャートである。
【0084】
上記図7において、ステップS201でバスリセット信号の発生が監視され、バスリセット信号が発生すると、ネットワーク構成は一旦リセットされる。
【0085】
ステップS202で、リセットされたネットワーク構成を再認識する作業の第一段階として、各機器は、フラグFLをリーフ(ノード)であることを示すデータでリセットする。そして、ステップS203で各機器は、ポート数、つまり自分に接続されている他ノードの数を調べ、ステップS204で、ステップS203の結果に応じて、これから親子関係の宣言を始めるために、未定義(親子関係が決定されていない)ポートの数を調べる。
ここで、未定義ポート数は、バスリセットの直後はポート数に等しいが、親子関係が決定されていくに従って、ステップS204で検知される未定義ポート数は減少する。
【0086】
バスリセットの直後、親子関係の宣言を行えるのは、実際のリーフに限られている。リーフであるか否かは、ステップS203のポート数の確認結果から知ることができ、つまりポート数が「1」であればリーフである。リーフは、ステップS205で、接続相手のノードに対して親子関係の宣言「自分は子、相手は親」を行い、動作を終了する。
【0087】
一方、ステップS203でポート数が「2」以上であったノード、つまりブランチは、バスリセットの直後は「未定義ポート数>1」であるから、ステップS206へ進み、フラグFLにブランチを示すデータをセットし、ステップS207で、他ノードから親子関係が宣言されるのを待つ。
【0088】
他ノードから親子関係が宣言され、それを受けたブランチは、ステップS204に戻って未定義ポート数を確認するが、もし未定義ポート数が「1」になっていれば、残ポートに接続されてた他ノードに対して、ステップS205で「自分は子、相手は親」の親子関係を宣言することができる。また、未だ未定義ポート数が「2」以上あるブランチは、再度ステップS207で、再び他ノードから「親子関係」が宣言されるのを待つことになる。
【0089】
何れか1つのブランチ(又は例外的に、子宣言を行えるのにもかかわらず、すばやく動作しなかったリーフ)の未定義ポート数が「0」になると、ネットワーク全体の親子関係の宣言が終了したことになり、未定義ポート数が「0」になった唯一のノード、つまり全てノードの親に決まったノードは、ステップS208で、フラグFLにルートを示すデータをセットし、ステップS209で、ルートとして認識される。
【0090】
このようにして、バスリセットから、ネットワーク内のノード間における親子関係の宣言までの手順が終了する。
【0091】
つぎに、各ノードにIDを与える手順を説明するが、最初にIDの設定を行うことができるのは、リーフである。そして、リーフ→ブランチ→ルートの順に若い番号(ノード番号:0)からIDを設定する。
【0092】
上記図8において、ステップS301で、フラグFLに設定されたデータを基に、ノードの種類、つまりリーフ、ブランチ、及びルートに応じた処理に分岐する。
【0093】
まず、リーフの場合は、ステップS302で、ネットワーク内に存在するリーフの数(自然数)を変数Nに設定した後、ステップS303で、リーフがルートに対してノード番号を要求する。この要求が複数ある場合、ルートは、ステップS304でアービトレーションを行い、ステップS305で、ある1つのノードにノード番号を与え、他のノードには、ノード番号の取得失敗を示す結果を通知する。
【0094】
ステップS306の判断により、ノード番号を取得できなかったリーフは、再びステップS303でノード番号の要求を繰り返す。
【0095】
一方、ノード番号を取得できたリーフは、ステップS307で、取得したノード番号を含むID情報をブロードキャストすることで、全ノードに通知する。ID情報のブロードキャストが終わると、ステップS308で、リーフの数を表す変数Nがデクリメントされる。そして、ステップS309の判定により、変数Nが「0」になるまで、ステップS303からステップS308の手順が繰り返され、全てのリーフのID情報がブロードキャストされた後、ステップS310へ進み、ブランチのID設定に移る。
【0096】
ブランチのID設定もリーフと略同様に行われる。
【0097】
先ず、ステップS310で、ネットワーク内に存在するブランチの数(自然数)を変数Mに設定した後、ステップS311で、ブランチがルートに対してノード番号を要求する。この要求に対してルートは、ステップS312でアービトレーションを行い、ステップS313で、ある1つのブランチにリーフに続く若い番号を与え、ノード番号を取得できなかったブランチには、取得失敗を示す結果を通知する。
【0098】
ステップS314の判定により、ノード番号の取得に失敗したことを知ったブランチは、再びステップS311でノード番号の要求を繰り返す。
【0099】
一方、ノード番号を取得できたブランチは、ステップS315で、取得したノード番号を含むID情報をブロードキャストすることで、全ノードに通知する。
【0100】
ID情報のブロードキャストが終わると、ステップS316で、ブランチ数を示す変数Mがでデクリメントされる。
そして、ステップS317の判定により、変数Mが「0」になるまで、ステップS311からステップS316の手順が繰り返され、全てのブランチのID情報がブロードキャストされた後、ステップS318へ進み、ルートのID設定に移る。
【0101】
ここまで終了すると、最終的にID情報を取得していないノードはルートのみなので、ステップS318では、他のノードに与えていない最も若い番号を自分のノード番号に設定し、ステップS319で、ルートのID情報をブロードキャストする。
【0102】
以上で、全てのノードのIDが設定されるまでの手順が終了する。
【0103】
つぎに、図9に示すネットワーク例を用いて、ノードID決定のシーケンスの具体的な手順を説明する。
【0104】
上記図9に示すネットワークは、ルートであるノードBの下位にはノードAとノードCが直結され、ノードCの下位にはノードDが直結され、ノードDの下位にはノードEとノードFが直結された階層構造を有する。この、階層構造やルートノード、ノードIDを決定する手順は、以下のようになる。
【0105】
バスリセットが発生した後各ノードの接続状況を認識するために、各ノードの直接接続されているポート間において親子関係の宣言がなされる。
ここでいう親子とは、階層構造の上位が「親」、下位が「子」という意味である。
上記図9では、バスリセットの後最初に親子関係を宣言したのは、ノードAである。上述したように、1つのポートだけが接続されたノード(リーフ)から親子関係の宣言を開始することができる。これは、ポート数が「1」であれば、ネットワークの末端、つまりリーフであることが認識され、それらリーフ中で最も早く動作を行なったノードから親子関係が決定されていくことになる。こうして親子関係の宣言を行なったノードのポートが、互いに接続された2つのノードの「子」と設定され、相手ノードのノードが「親」と設定される。こうして、ノードA−B間、ノードE−D間、ノードF−D間で「子−親」と設定される。
【0106】
さらに、階層が1つ上がって、複数のポートを持つノード、つまりブランチのうち、他ノードから親子関係の宣言を受けたノードから順次、上位のノードに対して親子関係を宣言する。
上記図9では、先ず、ノードD−E間、D−F間の親子関係が決定された後、ノードDがノードCに対して親子関係を宣言し、その結果、ノードD−C間で「子−親」の関係が設定される。
ノードDからの親子関係の宣言を受けたノードCは、もう一つのポートに接続されているノードBに対して親子関係を宣言し、これによってノードC−B間で「子−親」の関係が設定される。
【0107】
このようにして、上記図9に示すような階層構造が構成され、最終的に接続されているすべてのポートにおいて親となったノードBが、ルートと決定される。尚、ルートは1つのネットワーク構成中に一つしか存在しない。また、ノードAから親子関係を宣言されたノードBが速やかに他のノードに対して親子関係を宣言した場合は、例えば、ノードC等の他のノードがルートになる可能性もあり得る。すなわち、親子関係の宣言が伝達されるタイミングによっては、どのノードもルートとなる可能性があり、ネットワーク構成が同一であっても、特定のノードがルートになるとは限らない。
【0108】
ルートが決定されると、各ノードIDの決定モードに入る。全てのノードは、決定した自分のID情報を、他の全てのノードに通知するブロードキャスト機能を持っている。
尚、ID情報は、ノード番号、接続されている位置の情報、持っているポートの数、接続のあるポートの数、各ポートの親子関係の情報等を含むID情報として、ブロードキャストされる。
【0109】
ノード番号の割当としては、上述したようにリーフから開始され、順に、ノード番号=0、1、2、・・・が割り当てられる。そして、ID情報のブロードキャストによって、そのノード番号は、割り当て済みであることが認識される。
全てのリーフがノード番号を取得し終ると、次はブランチへ移り、リーフに続くノード番号が割り当てられる。リーフと同様に、ノード番号が割り当てられたブランチから順にID情報がブロードキャストされ、最後にルートが自己のID情報をブロードキャストする。したがって、ルートは常に最大のノード番号を所有することになる。
【0110】
以上のようにして、階層構造全体のID設定が終わり、ネットワーク構成が再構築され、バスの初期化作業が完了する。
【0111】
[バスアービトレーション]
【0112】
1394シリアルバスは、データ転送に先立って必ずバス使用権のアービトレーションを行なう。1394シリアルバスに接続された各機器は、ネットワーク上を転送される信号を各々中継することによって、ネットワーク内すべての機器に同信号を伝える論理的なバス型ネットワークを構成するので、パケットの衝突を防ぐ意味でバスアービトレーションが必要である。これによって、ある時間には、1つのノードだけが転送を行なうことができる。
【0113】
図10(a)及び(b)は、アービトレーションを説明するための図であり、上記図10(a)は、バスの使用権を要求する動作を示し、上記図10(b)は、バスの使用を許可する動作を示している。
【0114】
バスアービトレーションが始まると、1つ若しくは複数のノードが親ノードに向かって、それぞれバスの使用権を要求する。上記図10(a)においては、ノードCとノードFがバス使用権を要求している。
この要求を受けた親ノード(上記図10(a)ではノードA)は、更に親ノードに向かって、バスの使用権を要求することで、ノードFによるバスの使用権の要求を中継する。この要求は最終的に調停を行なうルートに届けられる。
【0115】
バスの使用権の要求を受けたルートは、どのノードにバスの使用権を与えるかを決める。この調停作業はルートのみが行なえるものであり、調停に勝ったノードには、バスの使用許可が与えられる。上記図10(b)では、ノードCにバスの使用許可が与えられ、ノードFのバスの使用権の要求は拒否された状態を示している。
【0116】
ルートは、バスアービトレーションに負けたノードに対してはDP(data prefix )パケットを送り、そのバスの使用権の要求が拒否されたことを知らせる。バスアービトレーションに負けたノードのバスの使用権の要求は、次回のバスアービトレーションまで待たされることになる。
【0117】
以上のようにして、バスアービトレーションに勝ってバスの使用許可を得たノードは、以降、データの転送を開始することができる。
【0118】
ここで、バスアービトレーションの一連の流れのフローチャートを、図11に示して説明する。
【0119】
ノードがデータ転送を開始できる為には、バスがアイドル状態であることが必要である。先に行われていたデータ転送が終了して、現在、バスがアイドル状態にあることを認識するためには、各転送モードで個別に設定されている所定のアイドル時間のギャップ長(例えば、サブアクション・ギャップ)の経過を検出することによって、各ノードは、バスがアイドル状態になったと判断する。
【0120】
各ノードは、ステップS401で、転送する非同期データ又は同期データに応じた所定のギャップ長が得られたか判断する。所定のギャップ長が得られない限り、ノードは、転送を開始するために必要なバスの使用権を要求することはできないので、所定のギャップ長が得られるまで待つ。
【0121】
各ノードは、ステップS401で所定のギャップ長が得られたら、ステップS402で転送すべきデータがあるか判断し、ある場合はステップS403でバスの使用権を要求する信号をルートに対して発信する。このバスの使用権の要求を示す信号は、上記図10(a)に示したように、ネットワーク内の各機器に中継されながら、最終的にルートに届けられる。ステップS402で転送するデータがないと判断した場合は、ステップS401に戻る。
【0122】
ルートは、ステップS404でバスの使用権を要求する信号を1つ以上受信したら、ステップS405で使用権を要求したノードの数を調べる。
ステップS405の判定により、使用権を要求したノードが1つだったら、そのノードに、直後のバス使用許可が与えられることとなる。
また、使用権を要求したノードが複数だったら、ステップS406で、直後のバスの使用許可を与えるノードを1つに絞る調停作業が行われる。この調停作業は、毎回同じノードばかりにバスの使用許可を与える様なことはなく、平等にバスの使用権を与えるようになっている(フェア・アービトレーション)。
【0123】
ルートの処理は、ステップS407で、ステップS406の調停に勝った1つのノードと、敗れたその他のノードとに応じて分岐する。調停に勝った1つのノード、又は、バスの使用権を要求したノードが1つの場合は、ステップS408で、そのノードに対してバスの使用許可を示す許可信号が送られる。
【0124】
この許可信号を受信したノードは、ステップS410で直後に転送すべきデータ(パケット)の転送を開始する。また、調停に敗れたノードには、ステップS409で、バスの使用権の要求が拒否されたことを示すDP(data prefix )パケットが送られる。DPパケットを受け取ったノードの処理は、再度、バスの使用権を要求するために、ステップS401まで戻る。ステップS410におけるデータの転送が完了したノードの処理も、ステップS401まで戻る。
【0125】
[Asynchronous転送]
【0126】
図12にアシンクロナス転送における時間的な遷移状態を示す。
上記図12に示す最初のサブアクション・ギャップは、バスのアイドル状態を示すものである。このアイドル時間が所定値になった時点で、データ転送を希望するノードがバスの使用権を要求できると判断して、バスアービトレーションが実行される。
バスアービトレーションによりバスの使用が許可されると、次に、データ転送がパケットされ、このデータを受信したノードは、ack gapという短いギャップの後、受信確認用の返送コードを返して応答するか、応答パケットを送ることによってデータ転送が完了する。ackは、4ビットの情報と4ビットのチェックサムからなり、成功、ビジー状態、又は、ペンディング状態を示す情報を含み、すぐにデータ送信元のノードに返される。
【0127】
図13は、アシンクロナス転送用のパケットフォーマットを示す図である。
パケットには、データ部及び誤り訂正用のデータCRCの他にヘッダ部があり、そのヘッダ部には、目的ノードID、ソースノードID、転送データ長さや各種コードなどが書き込まれている。
また、アシンクロナス転送は自己ノードから相手ノードへの1対1の通信である。転送元ノードから送り出されたパケットは、ネットワーク中の各ノードに行き渡るが、各ノードは自分宛てのパケット以外は無視するので、宛先に指定されたノードのみがそのパケットを受け取ることになる。
【0128】
[Isochronous 転送]
【0129】
1394シリアルバスの最大の特徴であるともいえるこのアイソクロナス転送は、特に、AVデータ等のリアルタイム転送を必要とするマルチメディアデータの転送に適している。
また、アシンクロナス転送が1対1の転送であるのに対し、このアイソクロナス転送はブロードキャスト機能によって、1つの転送元ノードから他のすべてのノードへ一様にデータを転送することができる。
【0130】
図14は、アイソクロナス転送における時間的な遷移状態を示す図である。
【0131】
アイソクロナス転送は、バス上で一定時間毎に実行され、この時間間隔をアイソクロナスサイクルと呼ぶ。アイソクロナスサイクル時間は125μS である。この同期各サイクルの開始を示し、各ノードの動作を同期させる役割を担っているのがサイクル・スタート・パケット(CSP)である。CSPを送信するのは、サイクル・マスタと呼ばれるノードであり、1つ前のサイクル内の転送が終了し、所定のアイドル期間(サブアクションギャップ)を経た後、本サイクルの開始を告げるCSPを送信する。つまり、CSPの送信される時間間隔が125μS になる。
【0132】
また、上記図14にチャネルA、チャネルB、及びチャネルCと示すように、1つの同期サイクル内において複数種のパケットにチャネルIDを各々与えることによって、それらのパケットを区別して転送することができる。これによって、複数ノード間で、略同時に、リアルタイム転送が可能であり、また受信ノードは、自分が望むチャネルIDのデータのみを受信すればよい。このチャネルIDは、受信ノードのアドレス等を表すものではなく、データに対する論理的な番号に過ぎない。よって、送信されたパケットは、1つの送信元ノードから他のすべてのノードに行き渡る、つまりブロードキャストされることになる。
【0133】
アイソクロナス転送のパケット送信に先立って、アシンクロナス転送と同様に、バスアービトレーションが行われる。しかし、アシンクロナス転送のように1対1の通信ではないので、アイソクロナス転送には、受信確認用の返送コードのackは存在しない。
【0134】
また、上記図14に示したiso gapアイソクロナスギャップ)は、アイソクロナス転送を行なう前にバスがアイドル状態であることを認識するために必要なアイドル期間を表している。この所定のアイドル期間を経過すると、アイソクロナス転送を行ないたいノードに対するバスのアービトレーションが行われる。
【0135】
図15は、アイソクロナス転送用のパケットフォーマットを示す図である。
各チャネルに分けられた各種のパケットには、各々データ部及び誤り訂正用のデータCRCの他にヘッダ部があり、そのヘッダ部には、上記図15に示すような、転送データ長やチャネルNo.、その他各種コード及び誤り訂正用のヘッダCRC等が書き込まれている。
【0136】
[バス・サイクル]
【0137】
実際に、1394シリアルバスにおいては、アイソクロナス転送とアシンクロナス転送が混在でき、その時のバス上の転送状態の時間的な遷移の様子を表すのが図16である。
【0138】
ここで、アイソクロナス転送はアシンクロナス転送より優先して実行される。その理由は、CSPの後、アシンクロナス転送を起動するために必要なアイドル期間のギャップ長(サブアクションギャップ)よりも短いギャップ長(アイソクロナスギャップ)で、アイソクロナス転送を起動できるからである。したがって、アシンクロナス転送より、アイソクロナス転送は優先して実行されることとなる。
【0139】
上記図16に示す一般的なバスサイクルにおいて、サイクル#mのスタート時にCSPがサイクル・マスタから各ノードに転送される。CSPによって、各ノードの動作が同期され、所定のアイドル期間(アイソクロナスギャップ)を待ってからアイソクロナス転送を行おうとするノードはバスアービトレーションに参加し、パケット転送に入る。上記図16では、チャネルe、チャネルs、及びチャネルkが順にアイソクロナス転送されている。
このバスアービトレーションからパケット転送までの動作を、与えられているチャネル分繰り返し行なった後、サイクル#mにおけるアイソクロナス転送がすべて終了すると、アシンクロナス転送を行うことができるようになる。
【0140】
つまり、アイドル時間が、アシンクロナス転送が可能なサブアクションギャップに達することによって、アシンクロナス転送を行いたいノードはバスアービトレーションに参加する。
【0141】
ただし、アシンクロナス転送が行えるのは、アイソクロナス転送終了後から、次のCSPを転送すべき時間(cycle synch )までの間に、アシンクロナス転送を起動するためのサブアクションギャップが得られた場合に限られる。
【0142】
上記図16に示すサイクル#mでは、3つのチャネル分のアイソクロナス転送の後、アシンクロナス転送により、ackを含む2パケット(パケット1、パケット2)が転送されている。このアシンクロナスパケット2の後、サイクルm+1をスタートすべき時間(cycle synch )にいたるので、サイクル#mにおける転送はこれで終わる。
【0143】
ただし、非同期又は同期転送中に次のCSPを送信すべき時間(cycle synch )に至ったら、転送を無理に中断せず、その転送が終了した後にアイドル期間を経て次サイクルのCSPを送信する。すなわち、1つのサイクルが125μS 以上続いたときは、その延長分、次サイクルは基準の125μS より短縮される。このようにアイソクロナス・サイクルは125μS を基準に超過、短縮し得るものである。
【0144】
しかし、アイソクロナス転送はリアルタイム転送を維持するために、必要であれば、毎サイクル実行され、アシンクロナス転送はサイクル時間が短縮されたことによって次以降のサイクルに延期されることもある。
サイクル・マスタは、こういった遅延情報も管理される。
【0145】
(第1の実施の形態)
【0146】
図17は、1394シリアルバスのインターフェースをLANでよく用いられるOSIモデルの各層と対比させた図である。
OSIモデルの物理層1とデータリンク層2が、1394シリアルバスのインターフェースの下位層4であるフィジカル層811及びリンク層812に該当する。下位層4の上に存在する1394シリアルバスのインターフェースにおけるトランスポートプロトコル層5とプレゼンテーション層6は、OSIモデルのネットワーク層、トランスポート層、セッション層、及びプレゼンテーション層を含む上位層3に該当する。また、本発明の特徴であるLOGINプロトコル7は、1394シリアルバスのインターフェースの下位層4とトランスポートプロトコル層5との間で動作するものである。
【0147】
上記図17に示す例1(Example 1 )では、プリンタ等の周辺機器用のシリアルバスプロトコル(SBP−2)8に準拠したデバイスにLOGINプロトコル7を持たせることによって、相手のデバイスに対してSBP−2に準拠したプロトコルを使って、データのやり取りを行いたいことを通知させることができる。また、上記図17に示す例2(Example 2 )では、1394シリアルバスのインターフェース上で特化されたデバイスプロトコル9についても、LOGINプロトコル7を持たせることで、デバイスが互いに、互いのプロトコルをサポートしているかを判別させることができる。
【0148】
図18は、LOGINプロトコルの基本動作を示す図で、プリンタデバイスは、ホストデバイスからの印字タスク10を実行する際に、先ず、プリンタに用意されているプリンタプロトコルA、B、及びCのうち、どれを選択して印字データをやり取りするかをLOGINプロトコル7による通信に基づき決定し、その後は、決定したプリンタプロトコルに従って印字データのやり取りを行う。
すなわち、いくつかのプリンタプロトコルをサポートしているプリンタデバイスは、ホストデバイスと接続する際に、先ず、ホストデバイスに用意されているのトランスポートプロトコル5をLOGINプロトコル7によって判別し、ホストデバイスのトランスポートプロトコル5に合ったプリンタプロトコルを選択し、選んだプリンタプロトコルに従って印字データやコマンドのやり取りを行うことで、印字タスク10の処理を行う。
【0149】
図19は、1394シリアルバスにおける接続形態を示す図で、複数のプリンタプロトコルに対応したプリンタ11に対してLOGINプロトコル7を実装したデバイス(PC12、スキャナ13、VCR14等)が接続された状態を示している。
プリンタ11は、LOGINプロトコル7により判別した、接続を要求する相手デバイスのトランスポートプロトコル5に応じてプリンタプロトコルを切り替えることにより、各デバイスからの印字タスクを問題なく処理することが可能となる。
【0150】
図20は、ログイン動作の流れを示す図である。
第1ステップにおいて、
・ホストデバイスは、ターゲットデバイス(この場合マルチプロトコルプリンタ)をロックする。
・ターゲットデバイスは、ホストデバイスのケーパビリティ(トランスポートプロトコル等を含む)を調べ、かかるケーパビリティは、後述するレジスタ503に格納される。
・ターゲットデバイスは、ホストデバイスのケーパビリティ(トランスポートプロトコル等を含む)をセットする。
第2ステップにおいて、
・第1ステップで決定されたプロトコルで、プリントデータを通信する。
第3ステップにおいて、
・ホストデバイスは、ターゲットデバイスとのコネクションを切断する。
【0151】
図21は、LOGINプロトコルのためにターゲットデバイスであるプリンタが備える1394シリアルバスのCSRを示し、ロックレジスタ501、プロトコルレジスタ502、及びケーパビリティレジスタ503を示す。
【0152】
尚、上記図21のケーパビリティレジスタ503には、各々のデバイスが対応可能なプロトコルを示す情報が格納され、各ビットの各々が独立に対応可能なデータトランスポートプロトコルを示している。また、プロトコルレジスタ502には、実際に通信に使用するプロトコルが書き込まれる。
【0153】
これらのレジスタは1394シリアルバスのアドレス空間における初期ユニット空間の定められたアドレスに配置される。
つまり、上記図3に示したように、機器に与えられたアドレス幅48ビットのうち、最初の20ビットにおける0xFFFFF がレジスタ空間と呼ばれ、その最初の512バイトにCSRアーキテクチャのコアになるレジスタ(CSRコア)が配置されている。
【0154】
尚、このレジスタ空間には、バスに接続された機器間で共通な情報が置かれる。また、0 〜0xFFFFD はメモリ空間、0xFFFFE はプライベート空間と、各々呼ばれ、プライベート空間は、機器内で自由に利用できるアドレスであり、各機器間のコミュニケーションに使われる。
【0155】
ロックレジスタ501は、リソースのロック状態(専有状態)を示し、値「0」はログイン可能な状態をあらわし、「0」以外はロック状態ですでにログインされていることをあらわす。
ケーパビリティレジスタ503は、複数ビットを有し、そのビット毎に設定可能なデータトランスポートプロトコルを各々独立に示す。すなわち、値「1」はビットに対応するプロトコルは設定可能であることを表し、「0」に対応するプロトコルは設定不可能であることを表す。
プロトコルレジスタ502は、現在設定されているプロトコルを示し、設定されたプロトコルに対応するケーパビリティレジスタ503のビットに相当するビットの値が「1」になる。
【0156】
図22は、ホストデバイスにおけるログイン処理を示すフローチャートである。
【0157】
ログインを開始するためには、先ず、ログインしようとするターゲットデバイス、例えば、プリンタのロックレジスタ501、プロトコルレジスタ502、及びケーパビリティレジスタ503のデータをリードトランザクション、すなわち上記シリアルバスにより定義されたアドレス空間を指定して読み出すことにより確認する。
ここで、ケーパビリティレジスタ503のビット毎のデータから、ホストデバイスが通信に用いようとしているプロトコルをターゲットデバイスがサポートしているかどうか確認する(ステップS601)。もし、ホストデバイスのプロトコルがターゲットデバイスのサポート外ならば、次のステップS602でログインを中止する。
すなわち、本実施の形態では、ホストデバイスがプリンタのケーパビリティレジスタの複数ビットを調べることによって、簡単に、プリンタをサポートしている複数のプロトコルを同時に判定することができる。したがって、高速にプロトコルを決定することができる。具体的には、ホストデバイスは、プリンタが対応可能なプロトコルを順次問い合わせる方法に比べて、簡単に、しかも高速に対応可能なプロトコルを認識することができる。
【0158】
また、ロックレジスタ501のデータが「0」以外であれば、他のデバイスがログイン中であるとみなしログインを中止する。ログインレジスタ501のデータが「0」であれば、現在ログイン可能とみなす(ステップS602)。かかるロックレジスタ501の内容については、上述したのと同様に、リード又はロックトランザクションによって内容を読み出すことで確認できる。
【0159】
ログイン可能の場合、リソースロック処理に移り、プリンタのロックレジスタ501にロックトランザクションを用いて「1」を書き込み、ログインを設定する(ステップS603)。この状態でターゲットデバイスはロックされたことになり、他のデバイスからの制御は不可能、また、レジスタの変更も不可能となる。
【0160】
上述のように、ターゲットデバイスのリソースがロックされた状態で、次にプロトコルの設定を行なう。このため、上述したように、複数のデータトランスポートの各々について、確認されている。
ターゲットデバイスである本実施の形態におけるプリンタは、複数のプリンタプロトコルをサポートするため、プリントデータを受け取る前に、ホストデバイスが使用できるプロトコルを知らねばならない。本実施の形態においては、ホストデバイスのライトトランザクションにより、プリンタのプロトコルレジスタ502の相当するビットを設定することで、これから使用するプロトコルをプリンタに通知する(ステップS604)。
【0161】
この時点で、ホストデバイスが通信に用いるプロトコルがターゲットデバイスに通知され、かつターゲットデバイスがロック状態なので、現在、ターゲットでバスにログインしているホストデバイスがデータ、この場合はプリントデータの送信を行なう(ステップS605)。
【0162】
データの送信が終了したら、ホストデバイスは、ターゲットデバイスのロックレジスタ501、及びケーパビリティレジスタ503をクリアすることにより、プリンタからログアウトする(ステップS606)。
【0163】
図23は、ターゲットデバイスであるプリンタのログイン処理を示す図である。
【0164】
プリンタは、通常、ホストデバイスからログインされるのを待つ状態にあるホストデバイスからのプリントリクエストは、プリンタのロックレジスタ501、プロトコルレジスタ502、及びケーパビリティレジスタ503の読み取りにより開始されるので、上記レジスタは、常に他のデバイスから読み出し可能の状態にしておく必要がある。今、プリントアウトを実行しようとするホストデバイスにより、プリンタがロックされたとする(ステップS701)。
【0165】
プリンタは、次にホストデバイスから使用プロトコルが通知されるのを待つ(ステップS702)。プリンタがロック状態になってから使用プロトコルの通知を待つのは、ログインの途中で、他のデバイスからのリクエストにより、プロトコルレジスタ502を書き換えられないようにするためである。
【0166】
使用プロトコルの通知があったら(ステップS703)、プリンタは、通知された使用プロトコルに自分のプロトコルをスイッチして(ステップS704、S706、S708)、ホストデバイスのプロトコルに合わせて通信を行なう(ステップS705、S707、S709)。
【0167】
通信が終了したら、プリンタは、ロックレジスタ501及びケーパビリティレジスタ503がクリアされたのを確認し(ステップS710)、ログインを待つ状態(ステップS701)に戻る。
【0168】
(第2の実施の形態)
【0169】
図24は、第2の実施の形態における動作を示した図であり、上記図18に示した第1の実施の形態と比較すると、LOGINプロトコル7を実装していないプロトコルDを持つデバイスについても対応している点が特徴である。
すなわち、LOGINプロトコル7を持つデバイスだけでなく、既存のプロトコルD(例えばAV/Cプロトコル)にのみ対応しているデバイスに対しても印字動作を保証する為に、プリンタ側に、LOGINプロトコル7を持たないデバイスに対応するプリンタプロトコルを追加したものである。
【0170】
この動作について説明すると、接続の初めに行われるプリントリクエストによってホストデバイスがLOGINプロトコル7に対応していないことをプリンタが認識した場合、プリンタは、プロトコルDを使ってホストデバイスとの通信を試み、通信が成立した場合は、そのプロトコルDに従って印字タスク10を実行する。
【0171】
図25は、第2の実施の形態と、OSIモデルとを対比させた図であり、例3(Example 3 )では、LOGINプロトコル7が実装されていない現行のAV/Cプロトコルに準拠したAVデバイス15をモデルとしている。例4(Example 4 )では、LOGINプロトコル7が実装されていないスキャナ用の非標準プロトコルが実装されているスキャナ16をモデルとしている。
すなわち、LOGINプロトコル7を実装していないプロトコルを持つデバイスについても、そのデバイスが持つプロトコルにプリンタが対応することができれば、そのプリンタを利用することができるデバイスの種類を広げることができる。
【0172】
尚、上述した各実施の形態においては、IEEE1934シリアルバスを用いてネットワークを構成するものとしたが、本発明はこれに限定されるものではなく、例えば、Universal Serial Bus(USB)と呼ばれるシリアルインターフェース等、任意のシリアルインターフェースを用いて構成されるネットワークにも適用することができる。
【0173】
また、上述した各実施の形態におけるホストデバイスとしては、例えば、コンピュータ、ディジタルカメラ、スキャナ、DVD、Set−top−Box、ディジタルテレビ、コンファレンスカメラ、ディジタルビデオ、及びこれらを含む複合機等を用いることができる。一方、ターゲットデバイスとしては、モニタ、コンピュータ、外部記憶装置、Set−top−Box、プリンタ及びこれらを含む複合機等を用いることができる。
【0174】
また、本発明は、図19に示すような、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置内のデータ処理方法に適用してもよい。
【0175】
また、本発明の目的は、上述した各実施の形態のホスト及び端末の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読みだして実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した各実施の形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することとなる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが読みだしたプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行い、その処理によって実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された拡張機能ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0176】
【発明の効果】
以上説明したように本発明によれば、ホストデバイスとターゲットデバイス間でデータ通信を行う際の通信プロトコルが、そのターゲットデバイスによって限定されることがない、拡張性の高いデータ通信装置及びシステムを提供することができる。特に、複数種類のデバイス(プリンタ等)のプロトコルに対応可能であるので、拡張性が極めて高い。また、IEEE1394規格のようなシリアルインターフェースを用いたデータ通信装置やシステムにて、このような効果を得ることができる。さらに、ホストコンピュータを介することなく、ホストデバイスからターゲットデバイスへ直接データ(画像データ等)を転送することができる。
【0177】
また、本発明によれば、予めデバイス側で対応可能なデータトランスポートプロトコルを複数通り確認し、その後、何れのデータトランスポートを用いるかを決定するようにしたため、高速に対応可能なプロトコルを決定することができる。
【図面の簡単な説明】
【図1】IEEE1394シリアルインターフェースを用いて構成されるネットワークシステムの一例を示すブロック図である。
【図2】IEEE1394シリアルインターフェースの構成を説明するための図である。
【図3】IEEE1394シリアルインターフェースにおけるアドレス空間を説明するための図である。
【図4】IEEE1394シリアルインターフェース用のケーブルの断面を説明するための図である。
【図5】DS−Link方式を説明するための図である。
【図6】IEEE1394シリアルインターフェースにおけるネットワーク構築手順を説明するためのフローチャートである。
【図7】ルートの決定方法を説明するためのフローチャートである。
【図8】親子関係決定からすべてのノードIDの設定までの手順を説明するためのフローチャートである。
【図9】ネットワークの一例を説明するための図である。
【図10】バスアービトレーションを説明するための図である。
【図11】アービトレーションの手順を説明するためのフローチャートである。
【図12】アシンクロナス転送における時間的な遷移状態を説明するための図である。
【図13】アシンクロナス転送用のパケットフォーマットを説明するための図である。
【図14】アイソクロナス転送における時間的な遷移状態を説明するための図である。
【図15】アイソクロナス転送用のパケットフォーマットを説明するための図である。
【図16】アシンクロナス転送とアイソクロナス転送が混在する場合のバス上の転送状態の時間的な遷移の様子を説明するための図である。
【図17】IEEE1394シリアルインターフェースとOSIモデルの対比を説明するための図である。
【図18】LOGINプロトコルの基本動作を説明するための図である。
【図19】第1の実施の形態において、IEEE1394シリアルインターフェースにおける接続形態を説明するための図である。
【図20】ログイン動作の流れを説明するための図である。
【図21】LOGINプロトコルのためにプリンタが備えるCSRを説明するための図である。
【図22】ホストデバイスにおけるLOGIN処理を説明するためのフローチャートである。
【図23】ターゲットデバイスにおけるLOGIN処理を説明するためのフローチャートである。
【図24】第2の実施の形態における動作を説明するための図である。
【図25】OSIモデルとの対比を説明するための図である。
【符号の説明】
1 OSIモデルの物理層
2 データリンク層
3 上位層
4 上位層
5 トランスポートプロトコル層
6 プレゼンテーション層
7 LOGINプロトコル
8 シリアルバスプロトコル(SBP−2)
9 デバイスプロトコル

Claims (26)

  1. 第1及び第2のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むデータ通信システムであって、
    上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を格納する第1のプロトコルケーパビリティ記憶手段を含み、
    上記第2のデバイスは、上記第1のプロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する第2の確認手段と、上記第1のプロトコルケーパビリティ記憶手段の内容に基づいてデータトランスポートプロトコルを決定する第2の決定手段とを含み、
    上記第2の確認手段は、上記第2の決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とするデータ通信システム。
  2. 上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、リソースの専有状態を示す情報を格納するロック記憶手段を更に含むことを特徴とする請求項1記載のデータ通信システム。
  3. 上記第1のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、リソースの専有状態を示す情報を格納するロック記憶手段を更に含み、
    上記第2のデバイスは、上記ロック記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定するリード又はロックトランズアクションによって確認するロック内容確認手段と、上記ロック内容確認手段の確認結果によって上記第1のデバイスが専有されているかを判定する判定手段とを更に含むことを特徴とする請求項1記載のデータ通信システム。
  4. 上記データトランスポートプロトコルは、プリンタプロトコルを含むことを特徴とする請求項1記載のデータ通信システム。
  5. 上記プリンタプロトコルは、プリントすべきデータを転送するためのプロトコルを含むことを特徴とする請求項4記載のデータ通信システム。
  6. 上記第2のデバイスは、画像データを出力するデバイスを含むことを特徴とする請求項1記載のデータ通信システム。
  7. 上記第2のデバイスは、コンピュータ、ディジタルカメラ、スキャナ、DVD、Set−top−Box、ディジタルテレビ、コンファレンスカメラ、ディジタルビデオ、及びこれらを含む複合機の少なくとも何れかを含むデバイスであることを特徴とする請求項6記載のデータ通信システム。
  8. 上記第1のデバイスは、上記第2の決定手段で決定されたデータトランスポートプロトコルを格納するプロトコル記憶手段を更に含むことを特徴とする請求項1記載のデータ通信システム。
  9. 上記シリアルバスは、IEEE1394規格に適合又は準拠するバスを含むことを特徴とする請求項1記載のデータ通信システム。
  10. 上記シリアルバスは、DS−link方式によってデータを変調し転送するバスを含むことを特徴とする請求項1記載のデータ通信システム。
  11. 上記第2の確認手段は、上記第1のプロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定するリードトランズアクションによって確認することを特徴とする請求項1記載のデータ通信システム。
  12. 上記リードトランズアクションは、上記シリアルバスのトランスポートプロトコル層よりも下位の層にて実行されることを特徴とする請求項11記載のデータ通信システム。
  13. 上記第1のデバイスは、画像データが入力されるデバイスを含むことを特徴とする請求項1記載のデータ通信システム。
  14. 上記第1のデバイスは、モニタ、コンピュータ、外部記憶装置、Set−top−Box、プリンタ及びこれらを含む複合機の少なくとも何れかを含むデバイスであることを特徴とする請求項13記載のデータ通信システム。
  15. 上記第2のデバイスは、上記シリアルバスにより定義されたアドレス空間上に存在し、対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を格納する第2のプロトコルケーパビリティ記憶手段を更に含むことを特徴とする請求項1記載のデータ通信システム。
  16. 上記第1のデバイスは、上記プロトコルケーパビリティ記憶手段の内容を上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する第1の確認手段と、上記プロトコルケーパビリティ記憶手段の内容に基づいてデータトランスポートプロトコルを決定する第1の決定手段とを更に含み、
    上記第1の確認手段は、上記第1の決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とする請求項1記載のデータ通信システム。
  17. 複数のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むデータ通信システムを構成するための、上記複数のデバイスの少なくとも1つのデバイスであるデータ通信装置であって、
    上記シリアルバスにより定義されたアドレス空間上に記憶された対応可能な複数のデータトランスポートプロトコルを各々独立して示す情報を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認手段と、
    上記確認手段での確認結果に基づいてデータトランスポートプロトコルを決定する決定手段とを含み、
    上記確認手段は、上記決定手段での決定に先立って複数の対応可能なデータトランスポートプロトコルを確認することを特徴とするデータ通信装置。
  18. 請求項4〜16の何れか1項に記載のデータ通信システムを構成するための第1のデバイスであることを特徴とするデータ通信装置。
  19. 請求項4〜16の何れか1項に記載のデータ通信システムを構成するための第2のデバイスであることを特徴とするデータ通信装置。
  20. 第1のデバイスと第2のデバイス間のでデータ通信を、該デバイス毎に所定のアドレス空間を定義するシリアルバスを介して行うデータ通信方法であって、
    対応可能なデータトランスポートプロトコルを示す情報が格納される、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタの記憶内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、
    上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、
    上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とするデータ通信方法。
  21. 各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信方法であって、
    対応可能なデータトランスポートプロトコルを示す情報を、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタから読み出すステップを含むことを特徴とするデータ通信方法。
  22. 各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信方法であって、
    上記シリアルバスに接続された他のデバイスのプロトコルケーパビリティレジスタに格納された内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、
    上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、
    上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とするデータ通信方法。
  23. 第1のデバイスと、第2のデバイスと、該デバイス毎に所定のアドレス空間を定義するシリアルバスとを含むシステムでのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、
    該処理ステップは、
    対応可能なデータトランスポートプロトコルを示す情報が格納される、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタの記憶内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、
    上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、
    上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする記憶媒体。
  24. 各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、
    該処理ステップは、
    対応可能なデータトランスポートプロトコルを示す情報を、上記シリアルバスにより定義されたアドレス空間上に存在するプロトコルケーパビリティレジスタから読み出すステップを含むことを特徴とする記憶媒体。
  25. 各デバイス毎に所定のアドレス空間を定義するシリアルバスに接続されたデバイスのデータ通信を実施するための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、
    該処理ステップは、
    上記シリアルバスに接続された他のデバイスのプロトコルケーパビリティレジスタに格納された内容を、上記シリアルバスにより定義されたアドレス空間を指定して読み出すことによって確認する確認ステップと、
    上記確認ステップでの確認結果に基づいてデータトランスポートプロトコルを決定する決定ステップとを含み、
    上記確認ステップは、上記決定ステップによる決定に先立って、複数の対応可能なデータトランスポートプロトコルを確認するステップを含むことを特徴とする記憶媒体。
  26. シリアルバスを用いてデータ通信を行うための処理ステップを、コンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記憶媒体であって、
    上記処理ステップは、請求項20〜22の何れか1項に記載のデータ通信方法の処理ステップを含むことを特徴とする記憶媒体。
JP03341498A 1997-02-14 1998-02-16 データ通信方法、装置、システム、及び記憶媒体 Expired - Fee Related JP3630971B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03341498A JP3630971B2 (ja) 1997-02-14 1998-02-16 データ通信方法、装置、システム、及び記憶媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP9-30982 1997-02-14
JP3098297 1997-02-14
JP03341498A JP3630971B2 (ja) 1997-02-14 1998-02-16 データ通信方法、装置、システム、及び記憶媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004130400A Division JP3897773B2 (ja) 1997-02-14 2004-04-26 通信方法及び通信装置

Publications (2)

Publication Number Publication Date
JPH10290247A JPH10290247A (ja) 1998-10-27
JP3630971B2 true JP3630971B2 (ja) 2005-03-23

Family

ID=26369438

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03341498A Expired - Fee Related JP3630971B2 (ja) 1997-02-14 1998-02-16 データ通信方法、装置、システム、及び記憶媒体

Country Status (1)

Country Link
JP (1) JP3630971B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3671738B2 (ja) * 1999-05-12 2005-07-13 松下電器産業株式会社 伝送管理方法
JP3472498B2 (ja) 1999-01-27 2003-12-02 シャープ株式会社 データ転送装置、データ転送方法およびデータ転送プログラムを記録した媒体
JP4481401B2 (ja) * 1999-10-08 2010-06-16 富士通マイクロエレクトロニクス株式会社 ネットワーク制御方法及びその装置
JP2003198568A (ja) 2001-10-16 2003-07-11 Sony Corp 送受信装置、送受信方法および送受信システム
WO2003038630A1 (fr) * 2001-10-30 2003-05-08 Sony Corporation Procede de controle d'un dispositif electronique, dispositif electronique, ordinateur, et programme associe
CN1758718B (zh) * 2002-08-05 2010-09-08 佳能株式会社 数字照相机及其控制方法
JP4092692B2 (ja) 2003-06-06 2008-05-28 ソニー株式会社 通信システム、通信装置および通信方法、並びにプログラム
JP4726239B2 (ja) 2004-08-25 2011-07-20 キヤノン株式会社 印刷システム、画像供給デバイス及び印刷装置とその制御方法
JP4356997B2 (ja) 2005-03-15 2009-11-04 キヤノン株式会社 通信装置及びその通信方法
JP4548171B2 (ja) 2005-03-24 2010-09-22 ソニー株式会社 圧電共振素子およびその製造方法
JP4706702B2 (ja) * 2007-12-28 2011-06-22 ソニー株式会社 通信システム、通信装置および通信方法、並びにプログラム
JP4482049B2 (ja) * 2008-08-11 2010-06-16 富士通マイクロエレクトロニクス株式会社 ネットワーク制御方法及びその装置
CN119937944A (zh) * 2024-12-06 2025-05-06 得实打印机(江门)有限公司 一种用于打印机的控制方法、打印机及存储介质

Also Published As

Publication number Publication date
JPH10290247A (ja) 1998-10-27

Similar Documents

Publication Publication Date Title
US6874082B2 (en) Data communication on a serial bus using a selected protocol based on an obtained device identifier
JP3884862B2 (ja) データ転送装置、データ転送装置の制御方法、記憶媒体
JP2001306428A (ja) ネットワーク機器、ネットワークシステム、通信方法及び記録媒体
JP3630971B2 (ja) データ通信方法、装置、システム、及び記憶媒体
JP3293779B2 (ja) 信号処理装置およびその制御方法
JP2000358033A (ja) データ通信システム及びデータ通信方法
US7203787B2 (en) Information processing apparatus and method that utilizes stored information about a mountable device
JP2001275066A (ja) 画像処理装置およびその方法、並びに、記憶媒体
JP4463952B2 (ja) 画像処理システム及びデジタルカメラと印刷装置及びその制御方法と記録媒体
JP3897773B2 (ja) 通信方法及び通信装置
JP3774542B2 (ja) データ処理方法、データ処理装置、プリンタ及び記憶媒体
JP3495879B2 (ja) データ処理方法、データ処理装置、及びコンピュータ読み取り可能な記録媒体
JP3943722B2 (ja) データ転送装置、データ転送システムおよびその方法、画像処理装置、並びに、記録媒体
JP2001075756A (ja) 情報処理装置及び情報処理システム及びそれらの方法
JP3495878B2 (ja) データ処理方法、データ処理装置及びプリンタ
JP4058156B2 (ja) データ処理方法、データ処理装置、プリンタ、及び記憶媒体
JP3647328B2 (ja) 画像処理装置及びその制御方法並びに画像処理システム
JP4463953B2 (ja) 画像処理システム及びデジタルカメラとその制御方法
JP2000196873A (ja) 情報処理装置及び情報処理システム及びそれらの方法と記憶媒体
AU762552B2 (en) Data communication apparatus and method
JPH11282641A (ja) 電子機器とその制御方法及びマルチファンクションシステム
JPH11177589A (ja) データ転送装置およびデータ転送装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JPH11284649A (ja) ネットワークシステム及びネットワーク管理装置及び方法
JPH11196099A (ja) データ通信方法及び装置
JP2005044078A (ja) 通信方法、印刷装置及びホスト装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040224

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040601

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040802

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: 20041130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041215

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: 20081224

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081224

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101224

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111224

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121224

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees