JP3814407B2 - データ通信システム、データ通信装置及びデータ通信方法 - Google Patents

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

Info

Publication number
JP3814407B2
JP3814407B2 JP6621698A JP6621698A JP3814407B2 JP 3814407 B2 JP3814407 B2 JP 3814407B2 JP 6621698 A JP6621698 A JP 6621698A JP 6621698 A JP6621698 A JP 6621698A JP 3814407 B2 JP3814407 B2 JP 3814407B2
Authority
JP
Japan
Prior art keywords
data
connection
node
data communication
packet
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
JP6621698A
Other languages
English (en)
Other versions
JPH11252153A (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 JP6621698A priority Critical patent/JP3814407B2/ja
Priority to US09/252,922 priority patent/US6678769B1/en
Priority to EP99301317A priority patent/EP0984602A3/en
Priority to CNB991031547A priority patent/CN1161940C/zh
Priority to MYPI99000644A priority patent/MY123326A/en
Priority to KR1019990006177A priority patent/KR100311707B1/ko
Publication of JPH11252153A publication Critical patent/JPH11252153A/ja
Application granted granted Critical
Publication of JP3814407B2 publication Critical patent/JP3814407B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Facsimiles In General (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ通信システム、データ通信装置及びデータ通信方法に関し、特に、制御信号とデータを混在させて通信することが可能なデータ通信バスを用いて複数電子機器(以下、機器)間を接続して、各機器間でデータ通信を行うシステムに関するものである。
【0002】
【従来の技術】
パソコン周辺機器の中で、最も利用頻度が高いのはハードディスクやプリンタであり、これらの周辺装置は小型コンピュータ用汎用型インターフェイスで代表的なデジタルインターフェイス( 以下、デジタルI/F)であるSCSI等をもってパソコン間との接続がなされ、データ通信が行われている。
【0003】
また、デジタルカメラやデジタルビデオカメラといった記録再生装置もパソコン( 以下、PC) への入力手段として、周辺装置の1つであり、近年、デジタルカメラやビデオカメラで撮影した静止画や動画といった映像をPCへ取り込み、ハードディスクに記憶したり、またはPCで編集した後、プリンタでカラープリントするといった分野の技術が進んでおり、ユーザーも増えている。
【0004】
取り込んだ画像データをPCからプリンタやハードディスクへ出力する際などに、前記のSCSI等を経由してデータ通信がされるものであり、そのようなとき画像データのようにデータ量の多い情報を送るためにも、こういったデジタルI/F には転送データレートの高い、かつ汎用性のあるものが必要とされる。
【0005】
図6に、従来の例としてデジタルカメラ、PC及びプリンタを接続したときのブロック図を示す。
図6において、101 はデジタルカメラ、102 はパソコン(PC)、103 はプリンタである。
【0006】
さらに、104 はデジタルカメラ101 の記録部であるメモリ、105 は画像データの復号化回路、106 は画像処理部、107 はD/A コンバータ、108 は表示部であるEVF 、109 はデジタルカメラ101 のデジタルI/O 部、110 はPCのデジタルI/O 部、111 はキーボードやマウスなどの操作部、112 は画像データの復号化回路、113 はディスプレイである。114 はハードディスク装置、115 はRAM 等のメモリ、116 は演算処理部である。
【0007】
MPU117はPCI バス、118 はPC102 のSCSIインタフェース、119 はPC102 とSCSIケーブルで繋がったプリンタ103 のSCSIインターフェイス、120 はメモリ、121 はプリンタヘッド、122 はプリンタ103 を制御するプリンタコントローラ、123 はドライバである。
【0008】
デジタルカメラ101 で撮像した画像をPC102 に取り込み、またPC102 からプリンタ103 へ出力するときの手順の説明を行う。デジタルカメラ101 のメモリ104 に記憶されている画像データが読みだされると、読み出された画像データのうち一方は復号化回路105 で復号化され、画像処理回路106 で表示するための画像処理がなされ、D/A コンバータ107 を経て、EVF108で表示される。また一方では、外部出力するためにデジタルI/O 部109 から、ケーブルを伝わってPC 102のデジタルI/O 部110 へ至る。
【0009】
PC 102内では、PCI バス117 を相互伝送のバスとして、デジタルI/O 部110 から入力した画像データは、記憶する場合はハードディスク114 で記憶され、表示する場合は復号化回路112 で復号化された後、メモリ115 で表示画像としてメモリされて、ディスプレイ113 でアナログ信号に変換されてから表示される。PC 102での編集時等の操作入力は操作部111 から行い、PC102 全体の処理はMPU 116 で行う。
【0010】
また、画像をプリント出力する際は、PC 102内のSCSIインターフェイスボード118 から画像データをSCSIケーブルにのせて伝送し、プリンタ103 側のSCS I インターフェイス119 で受信し、メモリ120 でプリント画像として形成され、プリンタコントローラ122 の制御でプリンタヘッド121 とドライバ123 が動作して、メモリ120 から読み出したプリント画像データをプリントする。
【0011】
以上が、従来の画像データをPC取り込み、またはプリントするまでの手順である。このように、従来はホストであるPCにそれぞれの機器が接続され、PCを介してから、記録再生装置で撮像した画像データをプリントしている。
【0012】
また、ディジタルVTR 、TV、チューナなどのAV機器や、パーソナルコンピュータ(以下、PCと称する)等をIEEE1394 -1995規格(以下、IEEE1394規格と称する)に準拠したデジタルインターフェイスを用いて相互に接続し、これらの間においてディジタルビデオ信号、ディジタルオーディオ信号などを送受信する通信システムが提案されている。
【0013】
このシステムにおいては、リアルタイムにデータ転送することが重要となるため、いわゆる同期通信( 以下、Isochronous 通信と称する) によって、データ通信を行なっている。
【0014】
この場合には、データ転送のリアルタイム性は保証されるが、通信が確実に行なわれるかは保証されない。しかしながら、前記従来例で挙げたデジタルインターフェイスの問題点として、SCSIには転送データレートの低いものや、パラレル通信のためケーブルが太いもの、接続される周辺機器の種類や数、接続方式などにも制限があり、多くの面での不便利性も指摘されている。
【0015】
また、IEEE1394規格のIsochronus通信では、同期通信を行なうため、通信が確実に行なわれるかは保証されない。したがって、確実にデータ転送を行ないたい場合には、Isochronous 通信を使用することは好ましくない。
【0016】
また、IEEE1394規格のIsochronous 通信では、通信帯域に空きがある場合にも、通信の総数が64に制限される。このため、通信帯域をあまり要求しないような通信を多数行ないたい場合には、Isochronous 通信を使用することはできないといった問題点があった。
【0017】
また、IEEE1394規格の通信方式では、データ転送の間に、バスリセットやエラーによる、データ転送の中断が生じることが考えられる。この場合、IEEE1394規格の通信方式では、どのようなデータ内容が失われたのかを知ることができない。また、IEEE1394規格の通信方式では、該データ転送中断からの復帰を行なうためには、非常に繁雑な通信手順を踏むことを要求されるという問題点があった。
【0018】
前記問題点を解決するために、シリアルバス上に接続された、任意のデータを送信するためのソースノードと、該データを受信するデスティネーションノードとの間を、論理的な接続をあらわすコネクションID番号で論理的に接続するプロトコルが提案されている。
【0019】
【発明が解決しようとする課題】
しかしながら、前記コネクションIDを用いるプロトコルにおいては、任意のデータを送信するためのソースノードが、データの授受に先立ち、該データを受信するためのデスティネーションノードへ、問い合わせパケットを発行して、前記デスティネーションノードのノードオフセットを取得している。
【0020】
また、ソースノードは、該パケットの送信をブロードキャストを用いて行っている。このため、前記従来例においては、前記デスティネーションノードのノードオフセットの授受のための、転送オーバーヘッドがかかり、転送開始までの遅延時間の増大を招く問題があった。
【0021】
本発明は前記問題点を解決するためになされたもので、データ転送中断により失われたデータを容易に検出することが可能で、該データ転送の中断からの復帰を、確実に、かつ簡単に行うことができるとともに、前記デスティネーションノードのノードオフセットの授受のための、転送オーバーヘッドをなくし、転送開始までの遅延を軽減することを目的とする。
【0022】
【課題を解決するための手段】
本発明のデータ通信システムは、データを送信する送信装置と該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムであって、前記データは、前記コネクションIDを用いて設定されるメモリ空間の所定の領域に格納されることを特徴とする。
また、本発明のデータ通信システムの他の特徴とするところは、データを送信する送信装置と、該データを受信する受信装置と、該データの通信を管理する管理装置とを含むデータ通信システムであって、前記送信装置と前記受信装置と前記管理装置とが、前記送信装置と前記受信装置との間の論理的な接続を設定した後、前記管理装置が、前記データを格納するメモリ空間の領域を設定することを特徴とする。
【0023】
本発明のデータ通信装置は、データを送信する送信装置と、該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムに接続可能なデータ通信装置であって、前記データを送受信する通信手段と、前記データを前記コネクションIDを用いて設定されるメモリ空間の所定の領域に格納するように制御する制御手段とを有することを特徴とする。
また、本発明のデータ通信装置の他の特徴とするところは、複数の機器により構成されたデータ通信システムに接続可能なデータ通信装置であって、データを送受信する通信手段と、
各機器問の論理的な接続を示すID情報と、該ID情報を用いて通信されるデータを格納するメモリ空間の領域とを設定する設定手段とを有することを特徴とする。
【0024】
本発明のデータ通信方法は、データを送信する送信装置と、該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムに適用可能なデータ通信方法であって、前記コネクションIDを用いて設定されるメモリ空間の所定の記領域に、前記データを格納することを特徴とする。
また、本発明のデータ通信方法の他の特徴とするところは、データを送信する送信装置と、該データを受信する受信装置と、該データの通信を管理する管理装置とを含むデータ通信システムに適用可能なデータ通信方法であって、前記送信装置と前記受信装置との間の論理的な接続を設定するように前記送信装置と前記受信装置と前記管理装置とを制御した後、前記データを格納するメモリ空間の領域を設定するように前記管理装置を制御することを特徴とする。
【0025】
【作用】
本発明は前記技術手段を有するので、全ての前記コネクションID番号に対して、同一のノードオフセットを設定するか、または、データ転送に先立ち、前記コネクションID番号に対するノードオフセットを設定する。前記動作により、前記ソースノードと前記デスティネーションノードとの接続に際し、ノードオフセットの転送オーバーヘッドをなくし、転送までの遅延を軽減するように作用する。
【0026】
【発明の実施の形態】
図1を用いて、本発明の実施例について説明する。図1の通信システムを構成する各機器は、IEEE1394規格に準拠した通信インターフェイス(以下、1394インターフェイス)を具備している。以下、本実施の形態においてIEEE1394規格に準拠した通信システムを1394シリアルバスと称する。
図1において、10はcomputerであり、12は演算処理装置 (MPU)、14は第一の1394インターフェイス、16はキーボードなど第一の操作部、18は第一のデコーダ、20はCRT ディスプレイなどの表示装置、22はハードディスク、24は第一のメモリであり本発明に係るcomputer 10 の内部メモリ、26はPCI バスなどのコンピュータ内部バスである。
【0027】
また、28はVCR であり、30は撮像光学系、32はアナログ- デジタル(A/D) 変換器、34はビデオ処理部、36は圧縮伸長回路、38は第一のメモリ、40は第二のメモリ、42は第一のデータセレクタ、44は第二の1394インターフェイス、46は第一のメモリ制御回路、48は第二のメモリ制御回路、50はシステムコントローラ、52は第二の操作部、54はファインダ、56はD/A 変換器、58は記録部である。
【0028】
さらに、60はプリンタであり、62は第三の1394インターフェイス、64は第二のデータセレクタ、66は第三の操作部、68はプリンタコントローラ、70は第二のデコーダ、72は第三のメモリ、74は画像処理部、76はドライバ、78はプリンタヘッドである。
【0029】
computer 10と、VCR 28、及び、プリンタ 60 とは、第一から第三の1394インターフェイス14, 44, 62によって1394シリアルバスのノードを構成するとともに、該第一から第三の1394インターフェイス 14, 44, 62 を介して相互に接続されており、データの授受や、コマンドによるコントロール等が可能になっている。
【0030】
本実施の形態では、例えば、computer 10 は、1394シリアルバス上における、画像信号送受信のコントローラとして動作する。
【0031】
本実施の形態に係るcomputer 10 においては、例えば、PCI バスなどのコンピュータ内部バス26によって、MPU 12と、1394インターフェイス14、キーボード16、デコーダ18、CRT ディスプレイ20、ハードディスク22、内部メモリ24などの、内部の各デバイスとが相互に接続されている。
【0032】
MPU12 は、ハードディスク22に記録されているソフトウェアを実行するとともに、様々なデータを内部メモリ24に移動させる。
また、MPU 12は、PCI バス26によって接続されている各デバイスの、調停動作なども合わせて行なう。
【0033】
1394インターフェイス 14 は、1394シリアルバス上に転送される画像信号を受信するとともに、ハードディスク 22 に記録されている画像信号や、内部メモリ
24 に記憶される画像信号を送信する。
【0034】
また、1394インターフェイス 14 は、1394シリアルバス上に接続された他の機器に対するコマンドデータを送信する。
また、1394インターフェイス 14 は、1394シリアルバス上に転送される信号を他の1394ノードに転送する。
【0035】
操作者は、キーボード 16 などの操作部を通じて、MPU 12 に、ハードディスク 22 に記録されているソフトウェアを実行させる。該ソフトウェア等の情報は、CRT ディスプレイなどの表示装置 20 によって、操作者に提示される。デコーダ 18 は、前記のソフトウェアを通じて、1394シリアルバス上から受信した画像信号をデコードする。
【0036】
デコードされた画像信号も、また、CRT ディスプレイなどの表示装置 20 によって、操作者に提示される。本実施の形態では、例えば、VCR 28は、画像信号の入力装置として動作する。撮像光学系 30 から入力された映像の輝度信号(Y )と色差信号(C )は各々A/D 変換器 32 にてディジタルデータに変換される。
【0037】
前記ディジタルデータは、ビデオ処理部 34 にて多重化される。その後、圧縮伸長回路 36 にて該画像情報のデータ量を圧縮する。一般に、YC独立に該圧縮処理回路を備えているが、ここでは説明の簡略化の為にYC時間分割での圧縮処理の例を示す。
【0038】
次に、前記画像データを伝送路誤りに強くする目的でシャフリング処理を施す。この処理の目的は連続的な符号誤りであるところのバーストエラーを修整や補間の行いやすい離散的な誤りであるところのランダムエラーに変換する事である。
【0039】
加えて、画像の画面内の粗密による情報量の発生の偏りを均一化する目的を重視する場合には前記圧縮処理の前に本処理工程を持ってくると、ランレングス等の可変長符号を用いた場合の都合が良い。
【0040】
これを受けて、データ・シャフリングの復元の為のデータ識別(ID)情報を付加する。このID付加動作にて付加されたIDは、同時に記録しておいた前記システムのモード情報等と共に再生時の逆圧縮処理(情報量伸張処理)の際に補助情報として利用する。これらのデータの再生時の誤りを低減する為にエラー訂正(ECC )情報を付加する。この様な冗長信号の付加までを、映像と音声等の情報毎に対応する独立の記録エリア毎に処理する。
【0041】
前記のように、ID情報やECC 情報が付加された画像信号は、記録部 58 により、磁気テープ等の記録媒体に記録されるとともに、後述する第一のメモリ 38 に一時的に記憶される。
【0042】
一方、ビデオ処理部 34 にて多重化された画像データは、D/A 変換器 56 によって、ディジタル- アナログ変換され、電子ビューファインダ 54 で操作者により観察される。
【0043】
また、操作者は第二の操作部 52 を介して、様々な操作情報をシステムコントローラ 50 に送信し、システムコントローラ 50 は、該操作情報によって、VCR 全体を制御するようになっている。
【0044】
また、ビデオ処理部 34 にて多重化された画像データは、第二のメモリ 40 に出力され、一時的に記憶される。
前述した第一のメモリ 38 と、二のメモリ 40 とは、それぞれ、第一のメモリ制御回路 46 と、第二のメモリ制御回路 48 とを介し、システムコントローラ 50 により動作制御されている。
【0045】
第一のデータセレクタ 42 は、前述した第一のメモリ 38 と、二のメモリ 40 からのデータを選択して、第二の1394インターフェイス 44 に受け渡す、あるいは、第二の1394インターフェイス 44 からのデータを選択して、第一のメモリ 38 と、二のメモリ 40 とのどちらかに受け渡す。
【0046】
前記動作により、VCR 28における第二の1394インターフェイス 44 からは、圧縮された画像データと非圧縮の画像データとが、操作者により選択されて出力できるようになっている。
【0047】
第二の1394インターフェイス 44 は、1394シリアルバスを通じて、VCR 28を制御するためのコマンドデータを受信する。受信されたコマンドデータは、第一のデータセレクタ 42 を通じて、システムコントローラ 50 に入力される。システムコントローラ 50 は、前記のコマンドデータに対するレスポンスデータを作成して、第一のデータセレクタ 42 、及び、第二の1394インターフェイス 44 を通じ、1394シリアルバスに該データを送出する。
【0048】
本実施の形態では、例えば、プリンタ 60 は、画像の印刷出力装置として動作する。第三の1394インターフェイス 62 は、1394シリアルバス上に転送される画像信号と、1394シリアルバスを通じて該プリンタ 60 を制御するためのコマンドデータとを受信する。
【0049】
また、第三の1394インターフェイス 62 は、該コマンドに対するレスポンスデータを送信する。受信された画像データは、第二のデータセレクタ64を通じて、第二のデコーダ70に入力される。第二のデコーダ70は、該画像データをデコードして、画像処理部74に出力する。画像処理部74は、デコードされた画像データを第三のメモリ72に一時的に記憶する。
【0050】
一方、受信されたコマンドデータは、第二のデータセレクタ64を通じて、プリンタコントローラ68に入力される。プリンタコントローラ68は、該コマンドデータによりドライバ76による紙送り制御や、プリンタヘッド78の位置制御など、様々な印刷に関する制御を行なう。
【0051】
また、プリンタコントローラ68は、第三のメモリ 72 に一時的に記憶された画像データを、印刷データとして、プリンタヘッド78に送信し、印刷動作を行わせる。
【0052】
前述したように、本実施の形態に係る、第一から第三の1394インターフェイス 14, 44, 62 は、それぞれ、1394シリアルバスのノードを構成する。第一1394インターフェイス14は、コントロールノード、または、コントローラとして動作し、第二1394インターフェイス44は、画像データのソースノードとして動作し、第三1394インターフェイス44は、デスティネーションノードとして動作する。
【0053】
以下に、図2を用いて、本実施の形態に係る各ノードの動作を示す。図2において、 200はコントローラ、 202はソースノード、204 はデスティネーションノード、206 はソースノード内部のサブユニット、208 は画像データ等のobject、210 はデスティネーションノード内部の第一のメモリ空間、212 は第一のコネクション、214 はデスティネーションの第n のメモリ空間、216 は第n のコネクションである。
【0054】
コントローラ 200は、データ転送を行うソースノード 202とデスティネーションノード 204とのコネクションを確立するためのコネクションID、及び、後述するメモリ空間のアドレスを管理するノードである。なお、コントローラ 200は、ソースノード 202、及び、デスティネーションノード 204と独立したノードであってもよいし、ソースノード、または、デスティネーションノードとコントローラとが同じであってもかまわない。後者の場合、コントローラと同じノードである、ソースノード、または、デスティネーションノードと、コントローラとの間のトランザクションは、不要である。
【0055】
本実施の形態では、コントローラ 200がソースノード 202、及び、デスティネーションノード 204とは別のノードに存在する場合の例を示す。
【0056】
デスティネーションノード内部のメモリ空間、 210から 214は、コネクション 212から 216によって定められる。該デスティネーションノード内部のメモリ空間を示したのが、図3である。図3(a)は、デスティネーションノード内部の論理的なメモリ空間全体を示しており、図3(b) は、該メモリ空間中の本実施の形態で用いるメモリ空間を示している。
【0057】
図3(a)で示されるメモリ空間は64bitsのアドレス空間である。また、図3(b)で示されるメモリ空間は、例えば図3(a)で示されるメモリ空間において、アドレスの上位16bitsがFFFF16である。該48bitsのアドレスは、後述するdestnation offset の値によって指定される。
【0058】
また、図3(b)で示されるメモリ空間において、例えば、00000000000016〜0000000003FF16は予約された領域であり、実際に書き込まれる領域はアドレスの下位48bitsがFFFFF000040016からのメモリ空間となる。本実施の形態においては、例えば、ノードオフセットをVFFFFF000040016 以降のアドレスに設定するようになっている。ここで、ノードオフセットとは、図5に示すdestination offsetである。
【0059】
本実施の形態の通信装置においては、複数のコネクションを確立することが可能である。ソースノード 202は、内部のサブユニット206 から画像データ等のobject208 を、例えば、第一のコネクション 212を通じて、デスティネーションノード内部の第一のメモリ空間 210に書き込む。また、前述のコネクションによるデータの授受は、例えば、Asynchronousパケットを用いて行なわれる。
【0060】
次に、図4(a) を用いて、上述した、コントローラ 200、ソースノード 202、デスティネーションノード 204の、各ノードの動作について説明する。
コントローラは、ユーザが選択したソースノードと、デスティネーションノードとの間の接続を行うために、ネゴシエーションを行う。
【0061】
ネゴシエーションには、接続を行うためのパケットを用いる。該パケットは、例えば、asynchronousブロードキャストパケットであり、パケット内のペイロードには、接続の番号を示すコネクションIDと、デスティネーションノードのノードオフセットとが書き込まれている。
【0062】
上記コネクションIDによって、それぞれのノードは、コネクションを識別する。また、ソースノードは、データの送信の際に、上記ノードオフセットに対して、書き込みを行う。
【0063】
上記ノードオフセットは、例えば、次のように設定される。既存のコネクションIDがない場合には、上述の図3(b) で示されるメモリ空間が、全て使用できることになる。上述のように、ノードオフセットは、FFFFF000040016(16 進数) 以降のアドレスに設定される。
【0064】
コントローラは、既存のコネクションが無い場合、コネクションIDを000016(16 進数) に設定し、該コネクションIDに対してはノードオフセットFFFFF000040016(16 進数) が割り当てられる。本実施の形態では、ソースノードが書き込みを行なう最大容量が、あらかじめ定められている。
【0065】
この値は、例えば、512 bytes に設定される。次のコネクションが発生した場合、コネクションIDは000116(16 進数) に設定される。該コネクションIDに対してはノードオフセットFFFFF000060016(16 進数) が割り当てられる。
【0066】
すなわち、ノードオフセットは、次式で示される。
node offset = NC B C +FFFFF000040016 (1式)
上式において、Anode offset はノードオフセット、 NC はコネクションIDの値、B C はソースノードが書き込みを行なう最大容量である。
【0067】
上記のように構成することにより、コントローラがソースノードに対して、ノードオフセットが事前に通知できるので、ソースノードとデスティネーションノードとの接続に際し、ノードオフセットの転送オーバヘッドをなくし、転送までの遅延を軽減する効果がある。
【0068】
本実施の形態では、コントローラが上式によって、ノードオフセットを設定するようにしているが、例えば、読みとり専用メモリ(ROM) などに、予め、コネクションIDとノードオフセットとの関係を記憶しておき、それを読み出すように構成しても良い。
【0069】
また、上記の構成に限らず、コネクションIDとノードオフセットとの関連付けを行なうような構成ならば、どのような構成でも良いことはいうまでもない。さらに、送信されたパケットが自ノードへのパケットかどうかは、コネクションIDによって検出できるので、コネクションIDにより、ノードオフセットを変化させる必要すらない。
【0070】
すなわち、全てのコネクションIDに対して、同一のノードオフセットを割り当てても、同様の効果が得られることはいうまでもない。該構成の場合には、コントローラのハードウェアがさらに簡略化できる効果がある。
【0071】
コントローラから、上記のネゴシエーションパケットを受け取ったソースノードは、コントローラからの送信コマンドパケットを待機する。一方、上記ネゴシエーションパケットを受け取ったデスティネーションノードは、ソースノードからの上記問い合わせのasynchronousブロードキャストパケットを待機する。
【0072】
上述のネゴシエーションが終わると、コントローラは、ソースノードに、データ送信のためのコマンドパケットを送信する。上記コマンドパケットを受信したソースノードは、デスティネーションノードに対して、問い合わせのasynchronousブロードキャストパケットを送信する。該問い合わせパケットには、前述のコネクションIDが書き込まれている。
【0073】
上記問い合わせパケットを受信すると、デスティネーションノードは、上記問い合わせパケットに書かれているコネクションIDと、上述のネゴシエーションによるコネクションIDとを照合して、該問い合わせパケットが同じコネクションのソースノードからのパケットであるかどうかを判別する。
【0074】
上記問い合わせパケットが同じコネクションの場合、デスティネーションノードは、上記問い合わせパケットと同一のコネクションIDと、データ受信用のバッファの容量とを書き込んだレスポンスパケットを、asynchronousブロードキャストで送出する。
【0075】
上述したように、データ転送の際に、ソースノードは、コントローラから指示された、デスティネーションノードのノードオフセットに対してライトトランザクションを行なう。該ライトトランザクションは、asynchronousブロードキャストパケットを使用して行われる。
【0076】
ソースノードは、送信が行なわれる全データ(例えば、N画面分の静止画像、所定区間分の動画像)を分割(segmentation)してデータを送信する。分割されたN個のデータを、segment dataと称する。segment dataの送信は、一度のブロードキャストトランザクションにて行なわれる。該segment dataのデータ量は、例えば、データを受信するノードの( 不図示の)FIFO メモリの容量によって定まるようになっている。
【0077】
ソースノードは、上記segment dataを、asynchronousブロードキャストパケットを使用して送信する。一つのsegment dataを含むasynchronousブロードキャストパケットを、segment パケットと称する。
【0078】
segment パケットには、前述のコネクションIDと、上記segment dataの順番を示すシークエンス番号とが書かれている。該パケットを受信したデスティネーションノードは、segment パケット内に書かれているコネクションIDと、事前にコントローラによって通知されているコネクションIDとの照合を行なう。
【0079】
segment パケット内に書かれているコネクションIDと、事前にコントローラによって通知されているコネクションIDとが一致した場合、デスティネーションノードは、該パケットを受け取り、該パケットと同一のコネクションIDと受信データ中のシークエンス番号とを書き込んだレスポンスパケットを、asynchronousブロードキャストを用いて送信する。ソースノードは、受信したパケットのコネクションIDによって、自ノードへのパケットを識別する。上述のレスポンス動作は、一つのsegment dataの授受に伴い生ずることになる。
【0080】
上述したように、データ授受に先立って、ソースノードからデスティネーションノードへ問い合わせパケットが送信される。デスティネーションノードは、該問い合わせに対するレスポンスパケットを用いて、デスティネーションノード自身が有しているバッファのバッファサイズを通知する。
【0081】
上述した例では、一度のsegment dataの送信に伴って、レスポンスパケットの送信が発生しているが、デスティネーションノードが有する前述のバッファがsegment dataによって満たされた後に、デスティネーションノードがレスポンスパケットの送信を行なうように構成しても良い。該構成の場合には、デスティネーションノードの行なうレスポンス動作の回数が削減できるので、デスティネーションノードを簡略化できる効果がある。
【0082】
i 番目に受信したsegment パケットのシークエンス番号と、(i+1) 番目に受信したsegment パケットのシークエンス番号とを比較して、データの不整合を監視する。デスティネーションノードは、シークエンス番号に不整合が検出された場合には、再送要求を示すレスポンスパケットを送出することにより、ソースノードに再度segment dataを要求することができる。また、再送要求を示すレスポンスパケットは、再送要求の生じたシークエンス番号を指定できるようになっている。
【0083】
一方、ソースノードは、segment パケットを送信した後、デスティネーションノードからのレスポンスを待機する。上述したように、デスティネーションノードからはコネクションIDと、シークエンス番号とが書かれたレスポンスパケットが、Asynchronousブロードキャストパケットで送信される。
【0084】
ブロードキャストパケットで送信されるレスポンスパケットには、前記コネクションIDが書き込まれている。この値が、目的のデスティネーションノードとのコネクションを示すコネクションIDと一致した場合、該パケットはレスポンスパケットである。該レスポンスパケットを受信するとソースノードは、シークエンス番号をインクリメントし、次のsegment パケットを同様に送信する。
【0085】
上述の手順を繰り返すことにより、ソースノードは、データ転送を行なう。ソースノードが、デスティネーションノードからのレスポンスを待機する時間は、あらかじめ定められており、この周期をレスポンス周期と称する。
【0086】
i 番目のsegment パケットを送信した後、レスポンス周期を越えてもレスポンスが受信できない場合、ソースノードは、上記i 番目のsegment パケットと同一のsegment パケットを再送する。
【0087】
また、上述したような、デスティネーションノードからの再送要求レスポンスを受信した場合、ソースノードは、該レスポンスパケットにて指定されたシークエンス番号のsegment パケットを送信する。
【0088】
本実施の形態では、上記手順により、バスリセットの発生や何らかのエラーの発生により、データ転送中が中断した場合にも、データ転送の復帰が容易に行なえるといった効果がある。
【0089】
全てのsegment パケットを送信することによって、データ転送が終了すると、ソースノードは、segment end を示すブロードキャストパケットを送出する。
このパケットを受け取ったコントローラは、コネクションIDを解放して、データ転送が終了する。
【0090】
本実施の形態では、segment end を受信したコントローラが、明示的にコネクションID、解放している。しかしながら、segment end を示すパケットがブロードキャストパケットであることから、該segment end パケットにより、デスティネーションノードが、データ転送の終了を検知することが可能である。このため、コネクションID、解放をデスティネーションノードが行なっても良い。
【0091】
確実にデータを転送するためには、バスリセットの発生や何らかのエラーの発生により、データ転送中が中断した場合にも、速やかに該データ転送が再開されることが望ましい。上述したように、本実施の形態では、再送要求の手順を設けることで該問題点を解決している。
【0092】
次に、該再送要求の手順を図4(b) を用いて説明する。
例えば、シークエンス番号がi であった時に、データ転送が中断した場合、まず、各ノードは規格で定められた手順でバスの再構築を行う。バスの再構築が完了した後、デスティネーションノードは、destination#offset、コネクションID、及び、シークエンス番号i を書き込んだ再送要求パケット(resend request)を、ブロードキャストパケットで送信する。
【0093】
データ転送の再開が可能な場合には、ソースノードは、ack レスポンスを返す。その後、ソースノードは受信したパケットのコネクションIDを照合し、要求されたシークエンス番号の以降、すなわち、シークエンス番号(i+1) で始まるデータ列のデータを順次ブロードキャストパケットで送信する。
【0094】
前述の手順により、ソースノード、デスティネーションノード、コントローラノードはそれぞれノードIDを考慮することなく、データ転送が中断しても、その後のデータ転送を容易に、かつ、確実に再開することができる。また、前述のように、本実施の形態では、データ転送が中断した場合にも、コントローラの制御手順が簡略化できる効果がある。
【0095】
次に、図5を用いて、前述のAsynchronousパケットについて説明する。
本実施の形態に係るAsynchronousパケットは、例えば、4 byte (32 bits 、以下クアッドレットと称する) を単位とするデータパケットである。
【0096】
Asynchronousパケットにおいて、最初の16 bits はdestination#IDフィールドであり、該フィールドは受信先のノードIDを示す。本実施の形態のように、ブロードキャストを行なう場合には、このフィールドの値はFFFF16(16 進数) である。
【0097】
次の6 bitsのフィールドは、トランザクション・ラベル(tl)フィールドであり、各トランザクション固有のタグである。
次の2 bitsのフィールドは、リトライ(rt)コードであり、パケットがリトライを試みるかどうかを指定する。
【0098】
次の4 bitsのフィールドは、トランザクションコード(tcode) である。tcode は、パケットのフォーマットや、実行しなければならないトランザクションのタイプを指定する。本実施の形態においては、例えば、この値が00012 (2進数) である、データブロックの書き込みリクエストのトランザクションを用いる。
【0099】
次の4 bitsのフィールドは、プライオリティ(pri) フィールドであり、優先順位を指定する。本実施の形態においては、Asynchronousパケットを用いているので、このフィールドの値は00002(2 進数) である。
【0100】
次の16 bits はsource#ID フィールドであり、送信側のノードIDを示す。
次の48 bitsはdestination #offsetフィールドであり、パケットの受信先ノードアドレスの、下位48 bits がこのフィールドによって指定される。本実施の形態においては、例えば、該destination #offsetの値は、後述するconnection#ID フィールドの値によって定められる。
【0101】
次の16 bits はdata#length フィールドであり、後述するデータフィールドの長さを、バイト単位で示している。
次の16 bits はextended#tcode フィールドであり、本実施の形態に用いられるデータブロックの書き込みリクエストトランザクションにおいては、この値は000016(16 進数) である。
【0102】
次の32 bits はheader#CRC フィールドであり、上述したdestination #IDフィールドからextended#tcode フィールドまでを、パケットヘッダと称し、該パケットヘッダのエラー検出に用いられる。
【0103】
次の16 bits は、上述したコネクションID(connection #ID) フィールドであり、該データによってコネクションを識別する。該コネクションIDによって、216 × (ノード数) のコネクションを確立することが可能である。
【0104】
よって、本実施の形態では、各コネクションの使用する帯域の総量が、バスの容量に達するまで、コネクション数を増すことができる。
次の8 bitsは、プロトコルタイプ(protocol #type) フィールドであり、該ヘッダ・インフォメーションを用いたデータ授受の手順を示す。
【0105】
本実施の形態の授受手順には、例えば、0116(16 進数) の値が用いられる。次の8 bitsは、コントールフラグ(control#flags) フィールドであり、制御データが書かれる。
【0106】
コントールフラグフィールドの最上位ビットは、例えば、再送要求(resend #request)フラグであり、このビットの値が1の時、データの再送要求が生じていることを示す。
【0107】
次の16 bits は、シークエンス番号(sequence #number) フィールドである。上述したように、該シークエンス番号フィールドは、特定のコネクションIDにて送受信されるデータパケットに対し、連続的な値が使用される。
【0108】
デスティネーションノードは、該シークエンス番号フィールドによって、有意なデータの連続性を監視し、不一致が生じた場合には、ソースノードに対して再送要求を行なう。
次の16 bits は、確認応答番号(reconfirmation #number) フィールドである。このフィールドは、上述の再送要求フラグの値が1 の時のみ、意味を持つフィールドである。上述の再送要求フラグの値が1の時、このフィールドは、再送要求が生じている開始パケットのシークエンス番号を示す。
【0109】
次の16 bits は、バッファサイズ(buffer #size) フィールドである。このフィールドには、デスティネーションノードのバッファサイズが書かれる。
次の16 bits は、reservedフィールドであり、将来のために予約されている。次のフィールドは可変長のデータフィールドであり、該データフィールドをパケットのペイロードと称する。
【0110】
本実施の形態においては、該データフィールドがクアッドレットの倍数でない場合、クアッドレットに満たないビットには0 が詰められる。
次の32 bits のフィールドはdata#CRC フィールドであり、上述のheader#CRC フィールドと同様に、前述のヘッダインフォメーションと該データフィールドとのエラー検出に用いられる。なお、data#CRC フィールドは、データフィールドのみに付けられても良いことはいうまでもない。
【0111】
上記動作により、本実施の形態においては、ソースノードに対して、ノードオフセットが事前に通知できるので、ソースノードとデスティネーションノードとの接続に際し、ノードオフセットの転送オーバヘッドをなくし、転送までの遅延を軽減する効果がある。
【0112】
(本発明の他の実施形態)
本実施の形態は複数の機器(例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても1つの機器(例えば、複写機、ファクシミリ装置)からなる装置に適用しても良い。
【0113】
また、前述した実施形態の機能を実現するように各種のデバイスを動作させるように、前記各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【0114】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。かかるプログラムコードを記憶する記憶媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0115】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等の共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【0116】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【0117】
【発明の効果】
前記説明したように、本発明においては、ノードオフセットの授受のための、転送オーバーヘッドをなくして、転送開始までの遅延を軽減することができる効果がある。
また、本発明の他の特徴によれば、通信帯域をあまり使用しない場合に、多数の通信を同時に行なうことができるとともに、データ転送中断により失われたデータを容易に検出することが可能であり、該データ転送の中断からの復帰を、確実に、かつ、簡単に行なうことができる効果がある。
【図面の簡単な説明】
【図1】本発明の実施の形態を表すブロック図である。
【図2】本発明の実施の形態に係る各ノードの動作を示すブロック図である。
【図3】本発明の実施の形態に係るデスティネーションノードのメモリ空間を示す図である。
【図4】本発明に係る各ノード間のコマンドやデータの授受を示すダイアグラムである。
【図5】本実施の形態にかかるAsynchronousパケットを示す図である。
【図6】従来例を示す図である。
【符号の説明】
10 computer
12 演算処理装置 (MPU)
14 第一の1394インターフェイス
16 キーボードなど第一の操作部
18 第一のデコーダ
20 CRTディスプレイなどの表示装置
22 ハードディスク
24 第一のメモリ
26 PCIバスなどのコンピュータ内部バス
28 VCR
30 撮像光学系
32 A/D変換器
34 ビデオ処理部
36 圧縮伸長回路
38 第一のメモリ
40 第二のメモリ
42 第一のデータセレクタ
44 第二の1394インターフェイス
46 第一のメモリ制御回路
48 第二のメモリ制御回路
50 システムコントローラ
52 第二の操作部
54 電子ビューファインダ
56 D/A変換器
58 記録部
60 プリンタ
62 第三の1394インターフェイス
64 第二のデータセレクタ
66 第三の操作部
68 プリンタコントローラ
70 第二のデコーダ
72 第三のメモリ
74 画像処理部
76 ドライバ
78 プリンタヘッド
200 コントロールノード
202 ソースノード
204 デスティネーションノード
206 ソースノード内部のサブユニット
208 画像データ等のobject
210 デスティネーションノード内部の第一のメモリ空間
212 第一のコ ネクション
214 デスティネーションノード内部の第n のメモリ空間
216 第n のコネクション

Claims (6)

  1. データを送信する送信装置と該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムであって、
    前記データは、前記コネクションIDを用いて設定されるメモリ空間の所定の領域に格納されることを特徴とするデータ通信システム。
  2. データを送信する送信装置と、該データを受信する受信装置と、該データの通信を管理する管理装置とを含むデータ通信システムであって、
    前記送信装置と前記受信装置と前記管理装置とが、前記送信装置と前記受信装置との間の論理的な接続を設定した後、前記管理装置が、前記データを格納するメモリ空間の領域を設定することを特徴とするデータ通信システム。
  3. データを送信する送信装置と、該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムに接続可能なデータ通信装置であって、
    前記データを送受信する通信手段と、
    前記データを前記コネクションIDを用いて設定されるメモリ空間の所定の領域に格納するように制御する制御手段とを有することを特徴とするデータ通信装置。
  4. 複数の機器により構成されたデータ通信システムに接続可能なデータ通信装置であって、
    データを送受信する通信手段と、
    各機器問の論理的な接続を示すID情報と、該ID情報を用いて通信されるデータを格納するメモリ空間の領域とを設定する設定手段とを有することを特徴とするデータ通信装置。
  5. データを送信する送信装置と、該データを受信する受信装置との間の論理的な接続を示すコネクションIDを用いて通信を行うデータ通信システムに適用可能なデータ通信方法であって、
    前記コネクションIDを用いて設定されるメモリ空間の所定の記領域に、前記データを格納することを特徴とするデータ通信方法。
  6. データを送信する送信装置と、該データを受信する受信装置と、該データの通信を管理する管理装置とを含むデータ通信システムに適用可能なデータ通信方法であって、
    前記送信装置と前記受信装置との間の論理的な接続を設定するように前記送信装置と前記受信装置と前記管理装置とを制御した後、前記データを格納するメモリ空間の領域を設定するように前記管理装置を制御することを特徴とするデータ通信方法。
JP6621698A 1998-02-24 1998-03-02 データ通信システム、データ通信装置及びデータ通信方法 Expired - Fee Related JP3814407B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP6621698A JP3814407B2 (ja) 1998-03-02 1998-03-02 データ通信システム、データ通信装置及びデータ通信方法
US09/252,922 US6678769B1 (en) 1998-02-24 1999-02-19 Control apparatus and method for managing a logical connection between source and destination nodes
EP99301317A EP0984602A3 (en) 1998-02-24 1999-02-23 Data communication method and system for connection establishment
CNB991031547A CN1161940C (zh) 1998-02-24 1999-02-24 数据通信系统、方法、设备和数字接口
MYPI99000644A MY123326A (en) 1998-02-24 1999-02-24 Controller and method for managing a logical connection between a source node and one or more destination nodes.
KR1019990006177A KR100311707B1 (ko) 1998-02-24 1999-02-24 데이타 통신 시스템, 데이타 통신 방법, 데이타 통신 장치 및 디지탈 인터페이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6621698A JP3814407B2 (ja) 1998-03-02 1998-03-02 データ通信システム、データ通信装置及びデータ通信方法

Publications (2)

Publication Number Publication Date
JPH11252153A JPH11252153A (ja) 1999-09-17
JP3814407B2 true JP3814407B2 (ja) 2006-08-30

Family

ID=13309424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6621698A Expired - Fee Related JP3814407B2 (ja) 1998-02-24 1998-03-02 データ通信システム、データ通信装置及びデータ通信方法

Country Status (1)

Country Link
JP (1) JP3814407B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4192372B2 (ja) * 1999-12-03 2008-12-10 ソニー株式会社 印刷装置、印刷制御装置、印刷システム及び印刷方法
JP3598923B2 (ja) 1999-12-20 2004-12-08 セイコーエプソン株式会社 データ転送制御装置、情報記憶媒体及び電子機器
JP2008009803A (ja) 2006-06-30 2008-01-17 Sony Corp 情報記憶装置、および、情報転送方法、情報転送システム、プログラム、並びに、記録媒体
JP2011008824A (ja) * 2010-09-29 2011-01-13 Sony Corp 情報記憶装置、情報転送方法、情報転送システム、情報処理装置、並びに、プログラム

Also Published As

Publication number Publication date
JPH11252153A (ja) 1999-09-17

Similar Documents

Publication Publication Date Title
KR100311706B1 (ko) 데이터 통신 시스템, 데이터 통신 방법,데이터 통신 장치 및 디지털 인터페이스
KR100294960B1 (ko) 데이타 통신 시스템, 데이타 통신 방법, 및 데이타 통신 장치
US7062579B2 (en) Data transmission apparatus, system and method, and image processing apparatus
KR100664634B1 (ko) 전송 장치 및 전송 장치에서의 처리 방법
JP4181688B2 (ja) データ通信システム及びデータ通信装置
KR100312276B1 (ko) 데이터 통신 시스템, 데이터 통신 방법, 데이터 통신 장치 및디지털 인터페이스
US6678769B1 (en) Control apparatus and method for managing a logical connection between source and destination nodes
WO2001019081A1 (en) A method and apparatus for utilizing extended av/c command and response frames
JP3814407B2 (ja) データ通信システム、データ通信装置及びデータ通信方法
JP3943697B2 (ja) データ通信システム、データ通信装置及びデータ通信方法
JP3943698B2 (ja) データ通信システム及びデータ通信装置
JP3862403B2 (ja) データ通信システムおよびデータ通信装置
JPH11261608A (ja) データ通信システム、データ通信装置、データ通信方法及び記憶媒体
JP4143205B2 (ja) データ通信システム
JPH11313091A (ja) データ通信システム、装置及び方法並びに記憶媒体
JP4065466B2 (ja) データ通信システム
JPH11298509A (ja) データ通信システム、データ通信方法、データ通信装置及び記憶媒体
JP2006311614A (ja) データ通信システム
JPH11317755A (ja) デ―タ通信システム、デ―タ通信方法、デ―タ通信装置及びディジタルインタ―フェイス
JPH11308255A (ja) データ通信システム、方法及び装置並びに記憶媒体
JP2002064511A (ja) データ通信システム、電子機器及びそれらの制御方法
JPH11355319A (ja) デ―タ通信システム、デ―タ通信方法、デ―タ通信装置及びディジタルインタフェ―ス
JPH10290245A (ja) 通信方法および通信装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050302

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050302

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060605

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100609

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110609

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120609

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130609

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees