(57)【要約】【課題】スレーヴ間通信において転送効率が低減しないデータ転送システムを提供する。【解決手段】カメラ１は、バスラインＢで接続されたマスタモジュール２、カメラモジュール３および表示モジュール４を含んでいる。マスタとしてのマスタモジュール２が、スレーヴとしてのカメラモジュール３および表示モジュール４を制御する。マスタおよびスレーヴの生成するパケットは、全てマスタによって制御されるので、パケットの衝突を生じない。マスタモジュール２からスレーヴへのパケットのヘッダに、スレーヴから送信するパケットの送信先を指定した送信先情報を含めるので、この送信先を他のスレーヴに設定することによって、転送効率を低減させずにスレーヴ間通信が可能となる。【選択図】図１
2005094649.tif 000002
【特許請求の範囲】
【請求項１】
信号線にて接続された複数のデバイスを有し、上記デバイスに含まれる通信制御部が生成する、少なくとも送信先の情報を含むヘッダを有するパケットによって、上記信号線を介したデバイス間通信を行うデータ転送システムにおいて、
上記デバイスのうちの特定の一つが、残りの他のデバイスである少なくとも一つのスレーヴに上記パケットを送信するマスタであり、
上記デバイスの上記通信制御部による全てのパケットの生成を、上記マスタが管理することを特徴とするデータ転送システム。
【請求項２】
上記マスタからの上記パケットの上記ヘッダに含まれる上記送信先に指定された上記スレーヴの通信制御部は、上記マスタからの上記パケットに応答するときにのみ、新たな上記パケットを送信することを特徴とする請求項１に記載のデータ転送システム。
【請求項３】
上記マスタからの上記パケットの上記ヘッダに含まれる、応答パケットの送信可否を決める項目に応じて、上記項目が許可であった場合にのみ、上記スレーヴの通信制御部が上記新たなパケットを送信することを特徴とする請求項２に記載のデータ転送システム。
【請求項４】
上記デバイスの生成するパケットの上記送信先の情報を、全て上記マスタが設定することを特徴とする請求項１に記載のデータ転送システム。
【請求項５】
上記デバイスのうちの上記スレーヴの通信制御部が生成するパケットの上記送信先の情報は、上記マスタの通信制御部が上記スレーヴにパケットを送信することによって設定し、
上記スレーヴの上記通信制御部は、設定された上記送信先の情報に応じて上記パケットを生成して送信することを特徴とする請求項４に記載のデータ転送システム。
【請求項６】
デバイスを内部に備えて配置するための筐体を含み、
請求項１ないし５のいずれか１項に記載のデータ転送システムにおけるデバイスを上記筐体内に備えたことを特徴とする電子装置。
【請求項７】
請求項６に記載の電子装置に上記信号線を介して着脱可能な、上記デバイスとしての携帯モジュール。
【請求項８】
信号線にて接続された複数のデバイス間の通信を、少なくとも送信先情報を含むヘッダを有するパケットにて行うデータ転送方法において、
上記デバイスのうちの特定の一つが、上記デバイスにおける全てのパケットの生成を管理することを特徴とするデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ・スレーヴ型の通信を行うデータ転送システム、電子装置、携帯モジュール、およびデータ転送方法に関するものである。
【背景技術】
【０００２】
パーソナルコンピュータにおけるデバイス間のデータ転送規格の一例として、ＡＮＳＩ(American National Standards Institute)で規定されたＳＣＳＩ(Small Computer System Interface)が知られている。このＳＣＳＩは、「マスタ・スレーヴ型」の通信を行う通信システムの一例である。ここで、マスタ・スレーヴ型の通信においては、互いに接続される各デバイスをノードと呼ぶ。そして、マスタノードとスレーヴノードとがハードウェア的に決定されている。マスタが通信の調停を行い、スレーヴはマスタのリクエストに応答する形で通信を行う。
【０００３】
なお、日本国の公開特許公報「特開2001-166912号公報」、「特開特開2001-228841号公報」には、デバイス間のデータ転送をパケット通信によって行う構成が開示されている。
【特許文献１】特開２００１−１６６９１２号（公開日：２００１年６月２２日）
【特許文献２】特開２００１−２２８８４１号（公開日：２００１年８月２４日）
【非特許文献１】“トランジスタ技術SPECIAL No.67 （パソコン周辺機器インタフェースII）”、第９９頁ないし第１５５頁、ＣＱ出版社、１９９９年７月１日発行
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の従来の構成では、十分な通信効率を得ることができない虞がある。
【０００５】
すなわち、上述の構成においては、スレーヴ間でのデータ転送が必要となった場合には、スレーヴからマスタ、マスタからスレーヴのように、マスタを介してデータ転送する必要がある。このため、必要のない場合であってもデータがマスタを介することになり、マスタに余分な負荷がかかることになる。また、マスタを介して伝送されるデータは、伝送すべきデータを全て含んだものであるので、スレーヴ間で直接データをやりとりする場合と比較して、インタフェース上に流れるパケットデータ量が倍になってしまい、ネットワーク上での通信効率が低下してしまう。
【０００６】
また、ＳＣＳＩでは、通信に先立ってマスタとスレーヴとの間でネゴシエーションを行い、通信対象となるスレーヴを決定する。このネゴシエーションと、その後の実際のデータの通信とは、独立したフェーズになっている。ＳＣＳＩでは、このネゴシエーションの際に、パケットの衝突が生じ得る。このようにパケットの衝突が生じれば、通信効率が低下してしまうという問題がある。
【０００７】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、通信効率を低下させないデータ転送システム、電子装置、携帯モジュール、およびデータ転送方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明に係るデータ転送システムは、上記課題を解決するために、信号線にて接続された複数のデバイスを有し、上記デバイスに含まれる通信制御部が生成する、少なくとも送信先の情報を含むヘッダを有するパケットによって、上記信号線を介したデバイス間通信を行うデータ転送システムにおいて、上記デバイスのうちの特定の一つが、残りの他のデバイスである少なくとも一つのスレーヴに上記パケットを送信するマスタであり、上記デバイスの上記通信制御部による全てのパケットの生成を、上記マスタが管理することを特徴としている。
【０００９】
本発明に係るデータ転送システムは、上記課題を解決するために、上記構成において、上記マスタからの上記パケットの上記ヘッダに含まれる上記送信先に指定された上記スレーヴの通信制御部は、上記マスタからの上記パケットに応答するときにのみ、新たな上記パケットを送信することを特徴としている。
【００１０】
本発明に係るデータ転送システムは、上記課題を解決するために、上記構成において、上記マスタからの上記パケットの上記ヘッダに含まれる、応答パケットの送信可否を決める項目に応じて、上記項目が許可であった場合にのみ、上記スレーヴの通信制御部が上記新たなパケットを送信することを特徴としている。
【００１１】
本発明に係るデータ転送システムは、上記課題を解決するために、上記構成において、上記デバイスの生成するパケットの上記送信先の情報を、全て上記マスタが設定することを特徴としている。
【００１２】
本発明に係るデータ転送システムは、上記課題を解決するために、上記構成において、上記デバイスのうちの上記スレーヴの通信制御部が生成するパケットの上記送信先の情報は、上記マスタの通信制御部が上記スレーヴにパケットを送信することによって設定し、上記スレーヴの上記通信制御部は、設定された上記送信先の情報に応じて上記パケットを生成して送信することを特徴としている。
【００１３】
本発明に係る電子装置は、上記課題を解決するため、デバイスを内部に備えて配置するための筐体を含み、上述のいずれかに記載のデータ転送システムにおけるデバイスを上記筐体内に備えたことを特徴としている。
【００１４】
本発明に係る携帯モジュールは、上記課題を解決するため、上述の電子装置に上記信号線を介して着脱可能な、上記デバイスとしての携帯モジュールであることを特徴としている。
【００１５】
本発明に係るデータ転送方法は、上記課題を解決するために、信号線にて接続された複数のデバイス間の通信を、少なくとも送信先情報を含むヘッダを有するパケットにて行うデータ転送方法において、上記デバイスのうちの特定の一つが、上記デバイスにおける全てのパケットの生成を管理することを特徴としている。
【発明の効果】
【００１６】
本発明に係るデータ転送システムは、以上のように、信号線にて接続された複数のデバイスを有し、上記デバイスに含まれる通信制御部が生成する、少なくとも送信先の情報を含むヘッダを有するパケットによって、上記信号線を介したデバイス間通信を行うデータ転送システムにおいて、上記デバイスのうちの特定の一つが、残りの他のデバイスである少なくとも一つのスレーヴに上記パケットを送信するマスタであり、上記デバイスの上記通信制御部による全てのパケットの生成を、上記マスタが管理する構成である。
【００１７】
上記データ転送システムは、複数のデバイスを有している。デバイスは、互いに信号線にて接続されている。この信号線は、例えばパラレル通信のための信号線群であってもよいし、またはシリアル通信のための信号線であってもよい。信号線の物理的な形態は限定されない。また、各デバイスを経由する信号線の接続形式は、例えば直線状のバス接続であってもよいし、またはデバイスで分岐するツリー状であってもよい。
【００１８】
デバイスは、信号線を介して、他のデバイスとパケットによってデバイス間通信を行う。ここで、パケットは、少なくとも送信先情報を含むヘッダを有しており、通常はさらに通信のためのデータを含んでいる。送信先の情報とは、各デバイスを特定することができるものであればよく、例えばデバイスごとに一意的に設定された固有の番号であってもよい。また、ここでヘッダは、いわゆるヘッダのように情報列の先頭に付加される構成に限るものではなく、受信側で抽出可能となるものであればどのような形式であってもよい。このように、ここでは、少なくとも送信先情報を含むヘッダと通信データとからなる形式の情報列をパケットと呼ぶ。または、パケットは、通信データにヘッダを付加する構成である、と表現することもできる。なお、パケットには、例えばパケットの末端に、データ列の妥当性を示すための、何らかのフォーマットで規定されたＳＵＭデータが付加されていてもよい。本発明においては、このようなＳＵＭデータの有無は規定しない。
【００１９】
パケットを用いた通信を行うために、各デバイスは、パケットの生成、分解を行う通信制御部を備えている。パケットの生成とは、送信するためのデータに、上述のヘッダを付加することを意味する。通信制御部は、デバイスにおいてパケット生成のために呼び出された命令に応じて、ヘッダを作成してデータに付加する。データが所定のサイズ以上である場合には、データを分割してからそれぞれヘッダを付加してもよい。パケットの分解とは、パケットをヘッダとデータとに分解することを意味するものとする。通信制御部は、ヘッダを解析して、ヘッダに含まれる項目に応じて所定の処理を行う。
【００２０】
上記データ転送システムの各デバイスのうちの特定の一つが、他のデバイスであるスレーヴ（スレーブ）を制御するマスタとして動作する。ここで、マスタ以外のデバイスをスレーヴと称するが、単にスレーヴといった場合にはこのうちの一つのデバイスを意味するものとする。マスタは、スレーヴにパケットを送信する。なお、どのデバイスがマスタであるかは、例えばハードウェア的に決定される。また、デバイスを一意的に特定するための送信先の情報は、例えばデバイスごとにハードウェア的に設定されていてもよいし、またはハードウェア的に決定されるマスタが各スレーヴを検出して割り当てるものであってもよい。例えば、データ転送システムとしてのパーソナルコンピュータにおいて、互いにバス接続されたＣＰＵ，メモリなどのうち、ＣＰＵがマスタとして動作する場合が考えられる。このように、上記データ転送システムは、マスタ権の移譲がない通信システムである。
【００２１】
上記データ転送システムにおいては、マスタである一つのデバイスのみがパケット生成を管理するので、パケットの新規生成（パケットシーケンスの開始）がマスタに限定される。このため、マスタのパケット生成動作に非同期なイベントが発生した場合、マスタからそのイベントに応答するスレーヴにパケットを送信し、応答を得るまでの時間、すなわちそのイベントに関するコールを発生させるまでの時間の最大値を見積もることができる。例えば、そのイベントに関するコールを発生させるまでの時間は、その最大値が「１コールに必要な時間＋１アンサーに必要な時間」となる。
【００２２】
したがって、その最大値以内、すなわち一定の時間内に確実に伝送するという意味でのリアルタイム通信が可能となる。
【００２３】
また、マスタが、各デバイスにおけるパケット生成を管理するので、マスタが他のデバイス（スレーヴ）を制御でき、さらにマスタ自身をも制御できるので、信号線上を流れるパケットの衝突を回避することができる。したがって、パケットの衝突を回避することによって、通信効率を低下させないデータ転送方法を提供できる。
【００２４】
また、マスタが、パケット生成の管理として、各デバイスにおいて生成するパケットの送信先情報を設定して、例えばスレーヴからスレーヴへのようなスレーヴ間通信を実現できる。このため、スレーヴ間通信において不要なマスタを介在させないので、通信効率を減少させない。
【００２５】
なお、上記データ転送システムを、通信データをパケット化することと、パケットの新規生成をマスタに限定することで一定時間以内に通信回線の使用権を得ることができるシステムである、と表現することもできる。
【００２６】
本発明に係るデータ転送システムは、以上のように、上記構成において、マスタからのパケットのヘッダに含まれる送信先に指定されたスレーヴの通信制御部は、上記マスタからの上記パケットに応答するときにのみ、新たなパケットを送信する構成である。
【００２７】
マスタからパケットの送信先に指定されたスレーヴは、マスタからのパケットに応答するときにのみ、新たにパケットを生成して送信することができる。言い換えると、上記のシステムにおいて、スレーヴは、マスタからのパケットに対する応答でない場合にパケットを送信することはない。このため、上記データ転送システムにおいて、パケット送受信のシーケンスは、マスタのパケット送信から始まるようになっている。
【００２８】
このようにして、マスタは、自身の送信するパケットおよびスレーヴの送信するパケットを制御するので、結局、インタフェースとしての信号線を流れる全てのパケットを制御する。このため、パケットの衝突を回避するように制御することが可能であり、特別な機構を必要としない。
【００２９】
よって、マスタ・スレーヴ型の通信を行う際に、パケットの衝突を回避することによって、通信効率を低下させないデータ転送システムを提供することができる。
【００３０】
なお、上記データ転送システムを、インタフェース内には１つのマスタと複数のスレーヴの存在するシステムにおいて、マスタが全てのスレーヴの送信の許可を与えることで通信データの衝突を回避するシステムである、と表現することもできる。
【００３１】
本発明に係るデータ転送システムは、以上のように、上記構成において、マスタからのパケットのヘッダに含まれる、応答パケットの送信可否を決める項目に応じて、上記項目が許可であった場合にのみ、スレーヴの通信制御部が新たなパケットを送信する構成である。
【００３２】
マスタからスレーヴへ送信するパケットのヘッダに、スレーヴからマスタを含む他のデバイスへの応答パケットの送信可否を決める項目を含めるようにする。これによって、マスタが、全てのスレーヴにおける送受信の許可を与える。より詳細には、例えば、マスタからスレーヴへのパケットのＡＤ(Attribute Data)フィールドに応じて、スレーヴが、他のデバイスへの応答パケットの送信可否を決定し、これに応じてパケットを送信する。
【００３３】
このようにして、マスタは、自身の送信するパケットおよびスレーヴの送信するパケットを制御するので、結局、インタフェースとしての信号線を流れる全てのパケットを制御する。したがって、この構成によって、パケットの衝突を確実に回避するように制御できる。
【００３４】
本発明に係るデータ転送システムは、以上のように、上記構成において、デバイスの生成するパケットの送信先の情報を、全てマスタが設定する構成である。
【００３５】
上記データ転送システムにおいては、マスタが、マスタ自身およびスレーヴのような他のデバイスを含む、全てのデバイスの発生するパケットの送信先（ターゲット）の情報を設定する。すなわち、マスタは、他のデバイスの発生するパケットについても、ターゲットを指定（宛先制御）することによって、全てのスレーヴの送信の許可を与える。このため、上記データ転送システムにおいて、パケット送受信のシーケンスは、マスタのパケット送信から始まるようになっている。
【００３６】
したがって、マスタが、一つのデバイス（スレーヴ）の発生するパケットのターゲットとして他のデバイス（スレーヴ）を指定することによって、スレーヴ間通信を実現できる。このため、マスタを介さないスレーヴ間通信を実現できるので、スレーヴ間通信において通信効率を減少させない。よって、マスタ・スレーヴ型の通信を行う際に、スレーヴ間通信において通信効率を低下させないデータ転送システムを提供することができる。
【００３７】
なお、上記データ転送システムを、インタフェース内には１つのマスタと複数のスレーヴの存在するシステムにおいて、スレーヴが発生するパケットのＴＵＡ（Target Unit Address：受け取りノードのUnit Address）を任意に設定することでスレーヴ間の通信を行うシステムである、と表現することもできる。
【００３８】
本発明に係るデータ転送システムは、以上のように、上記構成において、デバイスのうちのスレーヴの通信制御部が生成するパケットの送信先の情報は、マスタの通信制御部が上記スレーヴにパケットを送信することによって設定し、上記スレーヴの上記通信制御部は、設定された上記送信先の情報に応じて上記パケットを生成して送信する構成である。
【００３９】
このように、マスタが、他のデバイスの発生するパケットの送信先を設定して宛先制御する際には、例えば上記他のデバイスに、予め上記他のデバイスから送信するパケットの宛先（ターゲット）を設定するための設定命令に応じたパケットを送信する。すなわち、スレーヴの通信制御部が生成するパケットの送信先の情報は、マスタの通信制御部がスレーヴにパケットを送信することによって設定する。上記パケットを受信した上記他のデバイスは、パケットを解析することによって、自身から送信するパケットの宛先を設定する。その後に、上記他のデバイスが上記マスタからのパケットを受信すると、これに応じて応答パケットが予め設定された宛先へと送信される。
【００４０】
したがって、この構成において、マスタが、スレーヴの発生するパケットのターゲットとして他のスレーヴを指定することにより、上述のスレーヴ間通信を確実に実現できる。
【００４１】
本発明に係る電子装置は、以上のように、デバイスを内部に備えて配置するための筐体を含み、上述のいずれかのデータ転送システムにおけるデバイスを上記筐体内に備えた構成である。
【００４２】
上述のようなデータ転送システムを、筐体内にデバイスを備えた電子装置として実現すれば、例えば携帯型の電子装置において、各デバイス間のデータ転送の際にパケットの衝突を生じさせず、また各デバイス間のデータ転送効率を低下させず、またイベントが生じた場合に一定時間内でのデータ転送を可能にできる。
【００４３】
本発明に係る携帯モジュールは、以上のように、上述の電子装置に上記信号線を介して着脱可能な、上記デバイスとしての携帯モジュールである。
【００４４】
このように、上述のデータ転送システムが、筐体内にデバイスを備えた電子装置と、この電子装置に装着可能なデバイスとしての携帯モジュールとによって実現されてもよい。例えば上述の電子装置として、表示モジュールを有する携帯電話を考えた場合に、携帯モジュールは、携帯電話に対して着脱可能なカメラモジュールであってもよい。
【００４５】
本発明に係るデータ転送方法は、以上のように、信号線にて接続された複数のデバイス間の通信を、少なくとも送信先情報を含むヘッダを有するパケットにて行うデータ転送方法において、上記デバイスのうちの特定の一つが、上記デバイスにおける全てのパケットの生成を管理する構成である。
【００４６】
デバイスのうちの特定の一つであるマスタが、全てのパケットの生成を管理するので、パケットの新規生成がマスタに限定される。このため、マスタのパケット生成動作に非同期なイベントが発生した場合、マスタからそのイベントに応答するスレーヴにパケットを送信し、応答を得るまでの時間、すなわちそのイベントに関するコールを発生させるまでの時間の最大値を見積もることができる。したがって、その最大値以内、すなわち一定の時間内に確実に伝送するという意味でのリアルタイム通信が可能となる。
【００４７】
また、マスタが、各デバイスにおける全てのパケットの生成を管理する。これによって、マスタが他のデバイス（スレーヴ）を制御でき、さらにマスタ自身をも制御できるので、信号線上を流れるパケットの衝突を回避することができる。したがって、パケットの衝突を回避することによって、通信効率を低下させないデータ転送方法を提供できる。
【００４８】
また、マスタが、パケット生成の管理として、各デバイスにおいて生成するパケットの送信先情報を設定して、例えばスレーヴからスレーヴへのようなスレーヴ間通信を実現できる。このため、スレーヴ間通信において不要なマスタを介在させないので、通信効率を低下させない。
【発明を実施するための最良の形態】
【００４９】
本発明の一実施形態について図１ないし図１１に基づいて説明すると以下の通りである。
【００５０】
本実施形態のカメラ（データ転送システム、電子装置）１は、図１に示すように、マスタモジュール（デバイス、マスタ）２、カメラモジュール（デバイス、スレーヴ）３、表示モジュール（デバイス、スレーヴ）４、操作部５およひ通信部６を含んでいる。
【００５１】
このカメラ１は、いわゆる組み込みシステムのような小規模なシステムであり、デバイスとしてのマスタモジュール２、カメラモジュール３、表示モジュール４を接続する信号線としてのバスラインＢを含んでいる。カメラ１の図示しない筐体内において、近距離のインタフェースとしてのバスラインＢによって、マスタモジュール２、カメラモジュール３・表示モジュール４が互いに接続されている。マスタモジュール２、カメラモジュール３・表示モジュール４は、バスラインＢを介してパケット通信を行う。なお、各デバイスを接続する信号線はバスラインＢに限るものではなく、他の型の信号線であってもよく、特に規定しない。
【００５２】
マスタモジュール２は、通信制御部２ａ、ＣＰＵ(Central Processing Unit)２ｂおよびメモリ２ｃを含んでいる。
【００５３】
通信制御部２ａは、パケットの生成、分解を行う。パケットの生成とは、送信するためのデータに、パケットヘッダ（ヘッダ）を付加することを意味する。通信制御部２ａは、デバイスにおいてパケット生成のために呼び出された命令に応じて、ヘッダを作成してデータに付加する。パケットの分解とは、パケットをヘッダとデータとに分解することを意味する。通信制御部２ａは、ヘッダを解析して、ヘッダに含まれる項目に応じて所定の処理を行う。なお、本実施形態の通信制御部２ａは、高速処理が必要なため、半導体装置のようなハードウェアによって実現した。ＣＰＵ２ｂは、カメラ１を制御する制御部として機能する。また、メモリ２ｃは、カメラ１の記憶部である。
【００５４】
カメラモジュール(Camera Module)３は、カメラ１の撮像部である。カメラモジュール３は、静止画像および動画像を撮像することができ、得たデータを画像データとして他のデバイスへと出力する。カメラモジュール３は、図２に示すように、光学部材３ａ、ＣＣＤ(Charge Coupled Device)回路３ｂ、画像処理部３ｃ、および通信制御部３ｄを含んでいる。
【００５５】
光学部材３ａは、レンズ、ミラーなどからなり、所定のイメージをＣＣＤ回路３ｂへと結像する。ＣＣＤ回路３ｂは、受光像に応じて生成する電気信号を画像処理部３ｃへ出力する。画像処理部３ｃは、ＣＣＤ回路３ｂからの電気信号を、画像データとして画像処理して、通信制御部３ｄへと出力する。通信制御部３ｄは、上述の通信制御部２ａと同様の機能を備えた部材である。通信制御部３ｄは、画像処理部３ｃからの画像データを、バスラインＢを介して、パケット通信によって他のデバイスへと出力する。通信制御部３ｄによるパケット通信については後述する。また、通信制御部３ｄは、例えばマスタモジュール２からのバスラインＢを介した制御命令に応じて、画像処理部３ｃにおける画像処理のパラメータを変更したり、または光学部材３ａのレンズの位置を調節したりする。
【００５６】
表示モジュール(Display Module)４は、図３に示すように、タイミングコントローラ４ａ、ゲートドライバ４ｂ、ソースドライバ４ｃ、表示パネル４ｄおよび通信制御部４ｅを含んでおり、通信制御部４ｅを介して入力される画像データに応じた画像を表示パネル４ｄに表示する。
【００５７】
タイミングコントローラ４ａは、入力される画像データを所定のタイミングにてゲートドライバ４ｂ、ソースドライバ４ｃに出力する。ゲートドライバ４ｂ、ソースドライバ４ｃにてそれぞれ表示パネル４ｄの駆動電圧へと画像データを変換して、表示パネル４ｄへと駆動電圧を出力する。表示パネル４ｄは、アクティブマトリクス型の表示パネルであり、図示しないソースバスライン、ゲートバスライン、ガラス基板、トランジスタ（画素トランジスタ）、および画素を含んでいる。表示パネル４ｄにおいては、ガラス基板によって画素としての液晶層を挟持し、ガラス基板に形成された電極から液晶に電圧を印加して表示を行う。通信制御部４ｅは、上述の通信制御部２ａと同様の機能を備えた部材である。通信制御部４ｅは、バスラインＢを介してパケット通信によって他のデバイスから送信された画像データを、タイミングコントローラ４ａへと出力する。通信制御部４ｅによるパケット通信については後述する。また、通信制御部４ｅは、例えばマスタモジュール２からのバスラインＢを介した制御命令に応じて、表示パネル４ｄにおける表示状態を変更する。
【００５８】
操作部５は、カメラ１のユーザインタフェースである。通信部６は、カメラ１とカメラ１の外部とを接続するインタフェース装置である。例えば、操作部５にて検出したユーザの指示に応じて、マスタモジュール２は、カメラモジュール３にて撮像した画像データを、通信部６を介して外部の装置へと出力する。
【００５９】
ここで、カメラ１の構成についてより詳細に説明すると、以下のようである。カメラ１のマスタモジュール２、カメラモジュール３、表示モジュール４は、それぞれ、バスラインＢを共用して接続され、かつこのバスラインＢを用いてデータ及び制御情報等を相互に伝達し合う「ノード」に相当する。各ノードには、ノード間で重複しない、ノード毎に固有の番号であるUnit Address（ユニットアドレス。以下、ＵＡと略する。）が割り振られる。この番号は、インタフェースが動作中は変化しない。本実施形態においては、マスタノードのマスタモジュール２は、ＵＡ＝０とする。スレーヴＳ１のカメラモジュール３は、ＵＡ＝２とする。スレーヴＳ２の表示モジュール４は、ＵＡ＝１とする。
【００６０】
各ノード間の通信は、パケット通信によって行われる。以下では、少なくとも送信先情報を含むヘッダと通信データとからなる形式の情報列を、パケットと呼ぶものとする。送信先情報は、送信先のＵＡを指定したものである。
【００６１】
また、接続されたノードの組は、少なくとも１つのマスタと、少なくとも１つ以上のスレーヴとを含んでいる。本実施形態においては、マスタおよびスレーヴはその呼称に呼応するハードウェアを持ち、一義的に定義される。本実施形態においては、マスタモジュール２がマスタに対応し、カメラモジュール３（スレーヴＳ１）・表示モジュール４（スレーヴＳ２）がスレーヴに対応する。また、以下では、マスタからスレーヴへの情報の伝達を「コール」と呼ぶ。また、スレーヴからマスタへの情報の伝達を「アンサー」と呼ぶ。
【００６２】
本実施形態のカメラ１においては、マスタ・スレーヴ間通信、スレーヴ・スレーヴ間通信を行うために、マスタ・スレーヴ間が双方向に通信でき、またスレーヴ・スレーヴ間が双方向に通信できるようになっている。
【００６３】
次に、各ノード間でのデータ転送の詳細について説明する。上述のように、ノード間のデータ転送は、データ列をインタフェース上において一定量の塊として伝送処理するパケット通信によって行われる。
【００６４】
ここで、本実施形態において送受信するパケットの構成の一例を図４に示す。パケットは、データ列の先頭にパケットヘッダ（Packet Header、ヘッダ）を含み、その後にパケット本体(Packet Body, Data)を付加した構成である。本実施形態のパケットヘッダは、ＳＵＡ、ＴＵＡ（送信先情報）、ＩＤ、ＰＮ、ＰＳ、ＡＤの各項目を含む。なお、図４に示すパケットの一例に加えて、パケットデータ列の終端に、データ列の妥当性を示すための、何らかのフォーマットで規定したＳＵＭデータを付加してもよい。また、パケット本体のない、ヘッダのみのパケットがあってもよい。ここで、図４に示すパケットヘッダの各項目の内容について、表１を参照して説明する。
【００６５】
【表１】
2005094649.tif 000003
【００６６】
ＳＵＡはSelf Unit Addressの略であり、パケットの発行ノードのＵＡが設定されている。ＴＵＡはTarget Unit Addressの略であり、パケットの受け取りを期待する、送信先ノードのＵＡが設定されている。ＩＤはIdentificationの略であり、ＴＵＡ内のサブUnit Addressが設定されている。このＩＤフィールドは、パケットを受け取ったノードが自らの処理において使用することができる。より詳細には、ＩＤは、マスタおよびスレーヴのサポートする機能ごとに割り当てられた副番号である。このＩＤを指定することによって、１つのノードに対して複数の指示を行うことができる。ＰＮはPacket Numberの略であり、分割データを伝送するときのパケット番号が設定されている。ＰＳはPacket Sizeの略であり、パケットの全サイズが設定されている。ＡＤはAttribute Dataの略であり、通信制御のためのデータが設定されている。
【００６７】
上述のような構成のパケットを送受信する際の経過について、図５〜７に基づいて説明する。パケットの送受信の際には、パケットを発行するノードが、パケットヘッダを作成し、データをパケット化して送出する。ここで、より詳細には、デバイスにおいてパケット生成命令が呼び出されると、そのノードの通信制御部、すなわち例えば上述の通信制御部２ａ・３ｄ・４ｅが、その命令に応じてパケットヘッダの各項目を作成し、データにパケットヘッダを付してパケット化してバスラインＢに送出する。また、後述するようにデータのサイズが所定サイズよりも大きい場合には、通信制御部は、データを分割して、それぞれにパケットヘッダを付して、複数のパケットとして送出する。
【００６８】
また、全ノードはインタフェースとしてのバスラインＢを常に監視し、バスラインＢ上に流れるパケットヘッダを解析する。もし、ＴＵＡが自ノードのＵＡに等しい場合には、そのパケットを取り込み、処理を行う。すなわち、より詳細には、各ノードの通信制御部が、バスラインＢを監視し、パケットからパケットヘッダを抽出して解析する。また、各ノードの通信制御部は、解析に応じてパケットを取り込み、各ノードの内部にて処理させる。
【００６９】
ここで、本実施形態においては、パケットの発行は常にマスタが行うようになっている。このため、パケットの発行シーケンスの開始は、常にマスタからのパケット送出となる。スレーヴは、マスタから送出されたパケットに対する応答としてのみ、パケットを発行することができる。一例として、図６には、マスタがパケットを発行し、スレーヴからの応答が有る場合を示す。また、他の一例として、図５には、マスタがパケットを発行し、スレーヴの応答がない場合を示す。
【００７０】
ここで、スレーヴがマスタに対して応答するか否か、すなわちアンサーを返すかどうかは、マスタからスレーヴへのパケット、すなわちコールの、ＡＤ(Attribute Data)フィールドの状態による。すなわち、本実施形態においては、マスタである１つのノード（マスタモジュール２）が、発信するパケットのＡＤフィールドを適切に設定して、インタフェースに流れる全てのパケットを制御する。このため、特別な機構を必要とせずに、パケットの衝突を制御することが可能となる。
【００７１】
また、本実施形態においては、マスタからのコールに応じてスレーヴがアンサーする相手は、必ずしもマスタに限らない。すなわち、アンサーに関して、必ずしもマスタに対して返信しなくてよい。したがって、本実施形態においては、アンサーのパケットヘッダのＴＵＡが、全てのノード、または存在しないノードとなっていてもよい。この場合には、あるスレーヴが、他のスレーヴの発生させたアンサーパケットを受け取ることがありうる。
【００７２】
したがって、スレーヴ間通信の一例として図７に示すように、マスタからスレーヴＳ１に対するコールの発生、スレーヴＳ１がスレーヴＳ２に対してアンサーを発行、スレーヴＳ２がアンサーを受領するという内容の通信シーケンスが実現できる。すなわち、マスタを介さないスレーヴ間通信が可能となる。
【００７３】
なお、このようなスレーヴ間通信は、より詳細には、以下の手順（１）〜（５）に従って行われる。
（１）マスタが送信を行う予定のスレーヴＳ１に対して、スレーヴＳ１が送信可能かどうかの判断情報を含むStatus情報を読み出すためのリクエストを送る。
（２）スレーヴＳ１は、リクエストに応じて、マスタにStatusを送信する。
（３）マスタは、受信したStatusの内容をチェックする。スレーヴＳ１が送信可能であれば次の（４）に進む。スレーヴＳ１が送信可能でなければ（１）に戻る。
（４）マスタは、スレーヴＳ１に対して、送信の許可に相当する（ＡＤフィールドを設定した）パケットを送信する。
（５）スレーヴＳ１は、マスタからの送信に応じて、パケットの受け取り先（ＴＵＡ）を送信したいスレーヴ（例えばスレーヴＳ２）に設定して、パケットを送信する。
【００７４】
ここで、デバイス間の接続について同様のトポロジーを持つ、例えばＳＣＳＩなどの従来のインタフェースを用いる場合について説明する。ＳＣＳＩの場合には、上述したスレーヴＳ１・スレーヴＳ２間の通信は、以下の通信シーケンスで行うことになる。すなわち、マスタからスレーヴＳ１に対するコールの発生、スレーヴ１がマスタに対してアンサーを発行、マスタがスレーヴＳ２に対してコールを発行するという通信シーケンスになる。このため、パケットがマスタを介在する回数が増加し、マスタの負荷が増加する。
【００７５】
また、上述のＳＣＳＩの通信シーケンスにおいては、スレーヴＳ１が発行するアンサーには、スレーヴＳ２に伝達するための情報が全て含まれる。ここで、上述の通信シーケンスにおいては、スレーヴＳ１からのアンサーをマスタが全て受信してから、改めてスレーヴＳ２に送信するので、インタフェース（バスラインＢ）上を流れるパケットデータ量は、単にスレーヴＳ１からスレーヴＳ２という通信が認められている本実施形態のようなインタフェースに比べて、２倍となる。
【００７６】
以上のように、本実施形態のカメラ１におけるデータ転送は、マスタ（マスタモジュール２）が、スレーヴＳ１（カメラモジュール３）に対してスレーヴＳ２（表示モジュール４）にデータを送信する契機を与えるだけである。スレーヴＳ１へのコール自体に大量のデータが含まれている必要はない。したがって、カメラ１におけるデータ転送（スレーヴ間通信）は、ＳＣＳＩなどのインタフェースに比べて高効率が期待できる。
【００７７】
次に、本実施形態のカメラ１による「リアルタイム通信」について説明する。ここで、「リアルタイム通信」とは、イベントが発生したら一定の時間内に確実に伝送することを意味するものとする。すなわち、カメラ１は下記の動作を行い、リアルタイム性のある情報を効率よく伝達する。
【００７８】
カメラ１においては、バスラインＢ上を流れるパケットは、コールパケットとアンサーパケットのみである。アンサーパケットがコールに従って生成されることから、バスラインＢ上を流通するパケットは、全てマスタの制御下にあるといえる。
【００７９】
ここで、マスタのパケット生成動作に非同期なイベントが発生した場合、そのイベントに関するコールを発生させるまでの時間の最大値は、１コールに必要な時間と１アンサーに必要な時間との和で与えられる。したがって、この最大値の時間内に、マスタからスレーヴへのコールを発生させることができ、イベントが発生したら一定の時間内に確実に伝送するという意味でリアルタイム通信が可能となる。
【００８０】
このリアルタイム通信は、上述のように、マスタからスレーヴへのコールに適用できる。ここで、後述するように、アンサーのパケットサイズを制限すれば、１アンサーに必要な時間を確実に見積もることができる。そこで、リアルタイム通信で許容できる時間以内となるように、パケットサイズを所定のサイズに制限すれば、アンサーを利用したスレーヴ間通信においても、上述の意味でのリアルタイム通信を実現できる。
【００８１】
次に、アンサーのパケットサイズを制限する構成について説明する。上述のように、カメラ１においては、無条件にパケットを生成できるのはマスタ（ホスト）のみである。スレーヴがマスタ以外に対してパケットを生成するには、マスタの許可が必要になる。マスタの許可を得るために、パケットを発行しようとするスレーヴは、マスタからのポーリングに応答して、マスタからパケットの発行権を得なければならない。この一連のシーケンスを、ここではハンドシェイクと呼ぶことにする。
【００８２】
上述のリアルタイム通信は、スレーヴとマスタとの間で、ハンドシェイクなしにスレーヴがパケットの発行権を得ることで実現する。リアルタイム通信をマスタが認識すると、マスタは一定時間間隔で特定のスレーヴに対してパケットを発行し、そのスレーヴにパケットの発行権を渡す。
【００８３】
リアルタイム通信が正常に行われるためには、マスタが規定する一定時間間隔内に、スレーヴのパケット発行が完了しなければならない。この制約のため、スレーヴが発行するアンサーのパケットサイズは、この時間内に収まるように制限する必要がある。
【００８４】
パケットサイズの制限を行うために、例えばスレーヴの発行できるパケットサイズは、そのスレーヴのサポートするいずれかのＩＤに対してマスタが指定できるように設計してもよい。ただし、パケットサイズの制限に特定のプロトコルを定めるものではない。
【００８５】
より詳細には、例えばスレーヴのＩＤ＝８０番に、パケットサイズを指定する２バイトのレジスタを用意する。マスタは、このスレーヴからリアルタイム通信の要求があった場合に、伝送経路のデータ伝送レートと通信時間間隔から、リアルタイム通信で破綻を生じないパケットサイズを計算する。マスタは、書き込みのためのパケットを送出することによって、このスレーヴのＩＤ＝８０にそのパケットサイズを書き込む。以後、リアルタイム通信を許可し、一定時間間隔でこのスレーヴに対して送信許可を与える。これによって、パケットサイズの制限されたアンサーを実現できる。なお、スレーヴについての設定を、上述と同様にマスタからスレーヴに書き込みのためのパケットを送出することによって行うことができる。
【００８６】
次に、本実施形態のカメラ１における「定時通信」について説明する。カメラ１の「定時通信」は、スレーヴ間通信について適用可能である。スレーヴ間通信における定時通信は、一定時間間隔でスレーヴ同士が通信する機能である。
【００８７】
この定時通信は、上述したスレーヴ間通信の手順（１）〜（５）のうち、（１）〜（３）の手順を省き、一定時間ごとに（４）の「マスタは、スレーヴＳ１に対して、送信の許可に相当するデータを送信する」を行い、その結果（５）の「スレーヴＳ１は、パケットの受け取り先を送信したいスレーヴ（例えばスレーヴＳ２）に設定して、パケットを送信する」を行うというものである。定時通信によれば、スレーヴＳ１において一定の間隔で発生するイベントを、マスタにそれほど負荷をかけないでスレーヴＳ２に伝達することができる。例えば、カメラからの画像データを毎秒１５フレームで単に表示するだけなどの場合に、この定時通信を使用することも好ましい。
【００８８】
以上のように、本実施形態に係るカメラ１は、以下の特徴を有している。カメラ１の有するデバイス間の通信をパケット通信によるものとし、通信するべきデータをパケットボディと呼ばれる特定のサイズに分割して伝送する。また、パケットボディにはその内容を示すデータを付加し、ヘッダとして、発信元と受信先を示すデータを付加する。
【００８９】
カメラ１のバスラインＢには、複数のデバイスが接続され、そのデバイスをノードと称する。また、バスラインＢによるインタフェース上には、任意にパケットを発生することのできる一つのノードが含まれ、そのノードをマスタと呼ぶ。また、バスラインＢによるインタフェース上には、マスタ以外のノードとして、マスタからの指示によりパケットを発生できる、スレーヴと呼ばれるノードが少なくとも１つ含まれる。マスタおよびスレーヴには、ノード毎に固有のＵＡと呼ばれる番号が割り当てられる。マスタの制御によって、スレーヴ相互の通信が許容される。
【実施例１】
【００９０】
上述のカメラ１におけるデバイス間通信のより詳細な一例について、以下で説明する。
【００９１】
カメラ１においては、カメラモジュール３で撮影した画像を表示モジュール４に表示することができる。このため、表示モジュール４には、メニュー選択、画像選択のための画面などが表示されるようになっている。
【００９２】
ここで、本実施例においては、パケットヘッダの項目のうちのＩＤについて、以下のような設定がなされているものとする。なお、ＩＤは、上述のように、ノードの有する機能ごとに割り当てられた副番号に相当する。
【００９３】
まず、表示モジュール４（ＵＡ＝１）の動作を規定するレジスタ群に対しては、ＩＤ＝０でアクセスできるものとする。また、レジスタ群の一部は、表示モジュール４の表示パネル４ｄ上に表示される「窓（Window）」へのアクセスのため、また、この「窓」を定義するために使用される。ここで、「窓（Window）」とは、表示パネル４ｄ上でまとまって意味をもつ領域であり、例えば所定のピクセルからなる矩形領域に相当する。これら窓ごとに、それぞれＩＤが割り当てられる。また、受信パケットのＩＤによって、それぞれの窓に表示が行われるように制御される。
【００９４】
表示モジュール４のＩＤ割り当ての詳細は以下の通りである。まず、ＩＤ＝０は、動作規定用レジスタへのアクセスに割り当てられる。そして、ＩＤ＝１ないしＩＤ＝４については、以下のように窓へのアクセスが割り当てられる。ＩＤ＝１はTop Window（画面上部のアンテナエリア表示用）、ＩＤ＝２はMid Window（中央部のメニュー表示用）、ＩＤ＝３はBottom Window（画面下部の時計表示用）、ＩＤ＝４はMovie Window（動画表示用）に割り当てられる。
【００９５】
一方、カメラモジュール３（ＵＡ＝２）においては、モジュールの動作を規定するレジスタ群に対して、ＩＤ＝０でアクセスできるものとする。ここで、カメラモジュール３は、カメラ（ＣＣＤ回路３ｂ）からの画像を複数の異なるサイズに縮小してアクセスすることができる。パケットのＩＤによって、この縮小サイズを指定することができる。
【００９６】
カメラモジュール３のＩＤ割り当ての詳細は以下の通りである。まず、ＩＤ＝０は、動作規定用レジスタへのアクセスに割り当てられる。また、ＩＤ＝１ないしＩＤ＝３は、縮小サイズを指定した以下のような窓へのアクセスが割り当てられる。すなわち、ＩＤ＝１はFull Size（カメラの持つ最大サイズの画像データ読み出し用）、ＩＤ＝２はWindow Size（表示ウィンドウサイズに従った画像データ読み出し用）、ＩＤ＝３はIcon Size（アイコンサイズの画像データ読み出し用）に割り当てられる。以上のようにＩＤの割り当てを行った場合の通信シーケンスのより詳細な例を以下で説明する。
【００９７】
〔初期化シーケンス〕
システムを駆動するための初期化を行うシーケンスについて説明する。ここでは初期化シーケンスとして、システムを起動する際に必要となるものに限定して説明する。なお、実際には、表示モジュール４やカメラモジュール３の各種機能を使用する際には、使用する機能に応じて、さらにそれぞれ初期シーケンスが必要となる。
【００９８】
このシーケンスでは、表示モジュールの初期化設定を行い、表示可能な状態にして、ＩＤ＝１にアクセスしてアンテナイラストを表示し、ＩＤ＝２にアクセスして初期メニューを表示し、ＩＤ＝３にアクセスしてバッテリーイラストを表示する。また、カメラモジュールの初期化設定を行い、その後にＩＤ＝１で表示枠サイズ縮小動画を、ＩＤ＝２でフルサイズ動画データを読み出せるようにする。また、ＩＤ＝１を読み出す場合のターゲットＵＡをＵＡ＝１（表示モジュール）に設定する。
【００９９】
上述のシーケンスの一部について、より詳細に説明する。図８に示すように、マスタモジュール２において、表示モジュール４へのデータ初期化命令が選択されると（Ｑ１）、表示モジュール４のＩＤ＝０へのパケットが出力される（Ｐ１）。ここで、例えば図８に示す「０→１．２」との記述は、ＵＡ＝０のノード（本例ではマスタモジュール２）からＵＡ＝１のノード（本例では表示モジュール４）のＩＤ＝２に対してデータを送ることを意味する。
【０１００】
次に、マスタモジュール２において、カメラモジュール３へのデータ初期化命令が選択されると（Ｑ２）、カメラモジュール３のＩＤ＝０へのパケットが出力される（Ｐ２）。また、マスタモジュール２において、表示モジュール４のアンテナエリア表示用窓の出力命令が選択されると（Ｑ３）、表示モジュール４のＩＤ＝１へのパケットが出力される（Ｐ３）。また、マスタモジュール２において、表示モジュール４の時計表示用窓の出力命令が選択されると（Ｑ４）、表示モジュール４のＩＤ＝３へのパケットが出力される（Ｐ４）。また、マスタモジュール２において、表示モジュール４のメニュー表示用窓の出力命令が選択されると（Ｑ５）、表示モジュール４のＩＤ＝２へのパケットが出力される（Ｐ５）。
【０１０１】
以上のように、各スレーヴノードに相当するモジュールの動作を規定するレジスタへアクセスするために、ＩＤ＝０と設定したパケットを各スレーヴに出力することによって、初期化を行うことができる。
【０１０２】
〔通常静止画表示シーケンス〕
ここでは、表示モジュール４の画面に対応するＩＤに対して表示データを送る通信シーケンスについて説明する。表示モジュール４のＩＤ＝２（メニュー表示用）に画像データを送るシーケンスの一例として図９に示すように、送出するデータがパケットのDataBodyサイズより大きい場合には、複数のパケットに分割してデータを転送する。
【０１０３】
すなわち、マスタモジュール２においては、表示モジュール４のメニュー表示用窓への描画命令が順次選択される（Ｑ６、Ｑ７、Ｑ８）。各描画命令に応じて、分割したデータのうちの一番目のデータがＰＮ＝１のパケットとして出力され（Ｐ６）、二番目のデータがＰＮ＝２のパケットとして出力され（Ｐ７）、Ｎ番目のデータがＰＮ＝Ｎのパケットとして出力される（Ｐ８）。なお、三番目からＮ−１番目のデータについては省略した。また、上述した初期化シーケンスにおいても、送出するデータがパケットのDataBodyサイズより大きい場合には、複数のパケットに分割して伝送される。
【０１０４】
このように、カメラ１におけるパケット通信では、パケットサイズによって許容されるサイズ以上のデータは、複数のパケットに分割して転送される。したがって、パケットを受領するノードでは、これらの分割されたデータから元のデータを再現する必要がある。このように、分割されたデータから元のデータを再現する工程を再組立と呼ぶ。再組立を行うために、パケットヘッダにはＰＮフィールドが用意されている。通常、分割されたデータを伝送する際に、ＰＮフィールドには連続した番号が割り振られる。受信側ノードでは、ＰＮフィールドの値を監視することにより、データ抜けを検出できる。
【０１０５】
すなわち、分割したデータ伝送を実施する場合、ＰＮフィールドに「１」から始まる連続した番号を割り当てる。もし、このような状況下で、ＰＮフィールドの連続していないパケットを受領した場合には、データ受け取り側のノードは、パケット抜けが発生したものとして、エラー処理を行う。この処理に対して本発明は特に規定しない。また、このような状況下において、ＰＮフィールドが０のパケットを受け取ったとき、データ受け取り側のノードは、分割されたデータ伝送がキャンセルされたものとして扱い、それに対応した処理を行う。この処理に対しても本発明は特に規定しない。
【０１０６】
図９に示すシーケンスの後には、分割データを受信した表示モジュール４の通信制御部４ｅがパケットの再組立を行って、メニュー表示ウィンドウ（ＩＤ＝２）に静止画を表示する。
【０１０７】
〔動画表示シーケンス（カメラモジュール３→表示モジュール４）〕
カメラモジュール３の縮小画像（ＩＤ＝２：表示ウィンドウサイズに従った画像データ）を、表示モジュール４の動画表示ウィンドウ（ＩＤ＝４）に表示する。このとき、本実施例のカメラ１は、以下のようにスレーヴ間通信を行って、マスタ（マスタモジュール２）の負荷を減らす。
【０１０８】
すなわち、カメラモジュール３から表示モジュール４（ＵＡ＝１）への送信を行うためには、図１０に示すように、まずカメラモジュール３にＴＵＡ＝１と設定する設定命令がマスタモジュール２において選択され（Ｑ１０）、カメラモジュール３へのパケット送信がなされる（Ｐ１０）。
【０１０９】
次に、マスタモジュール２において、カメラモジュール３へのアンサー要求命令が選択され（Ｑ１１）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ１１）。カメラモジュール３においては、受信した（Ｐ１１）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１０）パケットによって設定されたようにＴＵＡ＝１として生成され（Ａ１）、ＵＡ＝１の表示モジュール４の動画表示ウィンドウ（ＩＤ＝４）へと出力される（Ｐ１２）。なお、カメラモジュール３から表示モジュール４へ転送するデータは、サイズが大きいため、分割して送信を行う。上述のＱ１１、Ｐ１１、Ａ１、Ｐ１２におけるデータ転送は、一番目の分割データのためのものである。
【０１１０】
また、二番目の分割データの転送のためには、マスタモジュール２においてカメラモジュール３へのアンサー要求命令が選択され（Ｑ１２）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ１３）。カメラモジュール３においては、受信した（Ｐ１３）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１０）パケットによって設定されたようにＴＵＡ＝１として生成され（Ａ２）、二番目の分割データとして、ＵＡ＝１の表示モジュール４の動画表示ウィンドウ（ＩＤ＝４）へと出力される（Ｐ１４）。
【０１１１】
同様に、Ｎ番目の分割データの転送のためには、マスタモジュール２においてカメラモジュール３へのアンサー要求命令が選択され（Ｑ１３）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ１５）。カメラモジュール３においては、受信した（Ｐ１５）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１０）パケットによって設定されたようにＴＵＡ＝１として生成され（Ａ３）、Ｎ番目の分割データとして、ＵＡ＝１の表示モジュール４の動画表示ウィンドウ（ＩＤ＝４）へと出力される（Ｐ１６）。なお、三番目からＮ−１番目のデータについては省略した。
【０１１２】
分割データを受信した表示モジュール４の通信制御部４ｅがパケットの再組立を行って、動画表示ウィンドウ（ＩＤ＝４）に動画を表示する。
【０１１３】
〔動画サンプリングシーケンス（カメラモジュール３→マスタモジュール２）〕
カメラモジュール３からマスタモジュール２に画像データを転送する場合について説明する。ここでは、カメラモジュール３の縮小画像（ＩＤ＝２：表示ウィンドウサイズに従った画像データ）のデータを、マスタであるマスタモジュール２に転送する場合を例にして説明する。
【０１１４】
図１１に示すように、まずカメラモジュール３にＴＵＡ＝０と設定する設定命令がマスタモジュール２において選択され（Ｑ１５）、カメラモジュール３へのパケット送信がなされる（Ｐ１７）。
【０１１５】
次に、マスタモジュール２において、カメラモジュール３へのアンサー要求命令が選択され（Ｑ１６）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ１８）。カメラモジュール３においては、受信した（Ｐ１８）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１７）パケットによって設定されたようにＴＵＡ＝０として生成され（Ａ５）、ＵＡ＝０のマスタモジュール２へと出力される（Ｐ１９）。なお、カメラモジュール３からマスタモジュール２へ転送するデータは、サイズが大きいため、分割して送信を行う。上述のＱ１６、Ｐ１８、Ａ５、Ｐ１９におけるデータ転送は、一番目の分割データのためのものである。
【０１１６】
また、二番目の分割データの転送のためには、マスタモジュール２においてカメラモジュール３へのアンサー要求命令が選択され（Ｑ１７）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ２０）。カメラモジュール３においては、受信した（Ｐ２０）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１７）パケットによって設定されたようにＴＵＡ＝０として生成され（Ａ６）、二番目の分割データとして、ＵＡ＝０のマスタモジュール２へと出力される（Ｐ２１）。
【０１１７】
同様に、Ｎ番目の分割データの転送のためには、マスタモジュール２においてカメラモジュール３へのアンサー要求命令が選択され（Ｑ１８）、カメラモジュール３のＩＤ＝２へのパケットが出力される（Ｐ２２）。カメラモジュール３においては、受信した（Ｐ２２）パケットに応じたアンサーパケットが、以前に受信した（Ｐ１７）パケットによって設定されたようにＴＵＡ＝０として生成され（Ａ７）、Ｎ番目の分割データとして、ＵＡ＝０のマスタモジュール２へと出力される（Ｐ２３）。なお、三番目からＮ−１番目のデータについては省略した。
【０１１８】
このように、マスタモジュール２において画像データを得て、サンプリング処理することもできる。サンプリング処理の際には、マスタモジュール２の通信制御部２ａがパケットの再組立を行って、画像データをメモリ２ｃに記憶させる。マスタモジュール２のＣＰＵ２ｂが、メモリ２ｃの画像データにアクセスして所望のサンプリング処理を行う。ＣＰＵ２ｂは、サンプリング処理などの処理のために、図示しない記録装置に記録されたプログラムを予め読み込んで実行する。
【０１１９】
以上のように、本発明は、パケット通信を利用したデバイス間双方向インタフェースに関するものである。また、本発明は、好ましくは、同一筐体内のデバイス接続で活用される、マスタ・スレーヴ型の通信を行う通信システムに関するものである。また、本発明の装置は、表示コントローラと表示器を接続するような近距離のインタフェースを含んでいる。本発明は、組み込みシステムのような小規模なシステムで、近距離のインタフェースにおいて、リアルタイム性のある情報を効率よく伝達することを目的とする。
【０１２０】
本発明の一実施形態のカメラ１は、上述したように携帯型の表示装置である。また、上述のカメラ１は、携帯型の撮像装置である。
【０１２１】
なお、上述の実施の形態、実施例においては、マスタモジュール２をマスタとし、カメラモジュール３・表示モジュール４をスレーヴとして説明したが、本発明はこれに限るものではない。例えば、バスラインＢに接続された図示しないポインティングデバイスがスレーヴであってもよい。そして、スレーヴ間通信として、ポインティングデバイスから表示器への通信を行ってもよい。また、表示モジュール（表示器）を二つ備え、スレーヴ間通信の例として、表示器１から表示器２への通信を行ってもよい。また、デバイス間の接続構成は、バスラインのような構成に限るものではなく、例えばノードにて分岐をするツリー状の構成であってもよい。
【０１２２】
また、本実施形態に係るマスタモジュール２の通信制御部２ａ、カメラモジュール３の通信制御部３ｄ、表示モジュール４の通信制御部４ｅを、以下のように表現することもできる。すなわち、通信制御部２ａ・３ｄ・４ｅは、所望の通信データをパケットデータに変換して信号線に出力し、または信号線からパケットデータを得て、そのパケットデータから所望の通信データおよびパケットヘッダを抽出し、パケットヘッダに応じたコマンドを実行する、電子装置に含まれるデバイスの有するインタフェース装置であって、マスタによってパケットヘッダに指定された送信先情報に応じた送信先にのみパケットを生成して出力するパケット生成出力コマンドを実行するインタフェース装置である、と表現することもできる。このインタフェース装置は、高速な処理速度を得るためにハードウェアとして構成することが好ましいが、十分な処理速度を得ることができるならば、制御プロセッサ（ハードウェア）にプログラムを読み込んで実行することによって実現してもよい。
【０１２３】
また、上述の実施の形態においては、例えばカメラモジュール３がカメラ１の筐体内に備えられている構成について説明したが、本発明はこれに限るものではなく、例えばカメラモジュール３が上記の筐体のバスラインＢに対して着脱自在の構成となっていてもよい。
【０１２４】
また、上述の実施の形態においては、例えばカメラモジュール３のように、デバイスとしてのカメラモジュール３が通信制御部３ｄ以外の光学部材３ａ・ＣＣＤ回路３ｂ・画像処理部３ｃを有している構成について説明したが、本発明はこれに限るものではない。本発明のデバイスとは、少なくとも上述のような通信制御部を含むものであればよい。例えば、デバイスとしての通信制御部に対して、光学部材３ａ・ＣＣＤ回路３ｂ・画像処理部３ｃからなるサブデバイスが着脱自在となる構成であってもよい。また、マスタモジュール２、表示モジュール４についても同様であり、デバイスは少なくとも上述のような通信制御部を含むものであればよい。
【０１２５】
なお、上述の実施の形態において説明したカメラ１においては、同一筐体内のデバイス接続で活用できるように、発明の実装に必要なリソースや回路規模を削減するため、リカバリの手段を規定していない。
【０１２６】
ここで、データ通信の形態として、一般に、「ピアtoピア」、「マスタ・スレーヴでマスタ権の移譲が可能なもの」、「マスタ・スレーヴでマスタ権の移譲が不可能なもの」などが知られている。上述のデータ転送システムの一例としてのカメラ１は、「マスタ・スレーヴでマスタ権の移譲が不可能なもの」のカテゴリに属する。
【０１２７】
カメラ１のように、「マスタ・スレーヴ型」であれば、送信権の調停が容易である。また、カメラ１のように「マスタ・スレーヴでマスタ権の移譲が不可能なもの」であれば、「マスタ・スレーヴでマスタ権の移譲が可能なもの」を採用する場合に比べて、「マスタ権の移譲手続き」と「マスタが指定されていないときのマスタ選定手続き」とを省略することが可能となる。ここで、元来、本発明が適用されるような環境においては、マスタやスレーヴはハードウェア的に決定されている場合がほとんどであると想定されるので、マスタを固定したトポロジーでも特に問題はない。一方、もし上記の２つの手続きを実装する場合には、発明の内容をより複雑にし、発明が適用されるデバイスの回路規模を増大させてしまう。
【０１２８】
また、スレーヴノードは基本的にプロセッサシステムの周辺デバイスであり、プロセッサからの指示やデータを受けて動作するので、このようなシステムではプロセッサをマスタとし、周辺デバイスをスレーヴとして動作させることが自然である。このため、上述のように、カメラ１において「マスタ・スレーヴ型」を採用した。
【０１２９】
なお、上述のカメラ１の構成においては、スレーヴノードはマスタノードの許可がないとパケットを送信することができない。マスタはどのスレーヴが伝送路としてのバスラインＢを使用しているかを常に把握しているので、スレーヴ間での送信権の調停の必要がない。したがって、このような手法を使うことにより、伝送経路の使用効率を向上させることができる。
【０１３０】
一方、他のプロトコルとして、例えば「ピアtoピア」のようなトポロジーを採用すると、「送信権の調停手続き」が複雑になってしまう。このため、他のプロトコルは用いなかった。
【０１３１】
例えば、EtherNet（登録商標）の下位プロトコルであるCSMA/CDは「ピアtoピア」のトポロジーを採用したLANで使用されている。しかしながら、調停のために通信データの衝突を許容しているので、ワーストケースでは１１％しか有効な通信ができないというシミュレーション結果がある。このように、「ピアtoピア」で制御を単純化したが故に通信効率が犠牲にされてしまう。
【０１３２】
また、本実施形態のカメラ１におけるデータ転送と、従来の例えばＳＣＳＩにおけるデータ転送とは、以下のような点が異なっている。
【０１３３】
すなわち、ＳＣＳＩでは、通信に先立ってスレーヴとの間でネゴシエーションを行い、通信対象となるスレーヴを決定する。このように、ネゴシエーションと通信の本体とは独立したフェーズになっている。ここで、ＳＣＳＩのようにフェーズをもつ場合には、ネゴシエーションの際にパケットの衝突が生じ得る。
【０１３４】
一方、本発明は、通信データにヘッダ情報を付加する事で通信先を決定しており、ＳＣＳＩのようなフェーズを持たない。また、通信先の決定はマスタのみが行うので、パケットの衝突を生じさせない。
【０１３５】
また、ＳＣＳＩではハードウェア的にスレーヴを指定する。ＳＣＳＩの信号線には、この目的のためにアドレス信号線が用意されている。本発明では、パケットのヘッダで通信先が規定されるので、本発明を実装するカメラ１のようなハードウェアでは、ＳＣＳＩのようなアドレス信号線は不要である。
【０１３６】
また、ＳＣＳＩでは、スレーヴ間でデータの授受を行う方法が認められていない。これはアドレス信号線の制御を行えるのがマスタノードだけであるためで、スレーヴが他のスレーヴノードを物理的に指定できないためである。
【０１３７】
一方、本発明では、上述のようにスレーヴ間でのデータ転送が可能である。
【０１３８】
このように、本発明は、「マスタ・スレーヴ型」という点ではＳＣＳＩと類似性を持つが、決してＳＣＳＩを単に改良したものではない。本発明は、バス接続型のＬＡＮの利点とＳＣＳＩの利点とを、共に持ち合わせている。
【０１３９】
本発明は上述した実施の形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、実施の形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施の形態についても、本発明の技術的範囲に含まれる。
【０１４０】
上述の具体的な実施形態または実施例は、あくまでも、本発明の技術内容を明らかにするものであって、本発明はそのような具体例にのみ限定して狭義に解釈されるべきものではなく、特許請求の範囲に示した範囲で種々の変更が可能であり、変更した形態も本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１４１】
本発明に係るデータ転送システムは、データの転送効率を低下させないので、これに応じた余分の電力消費を生ずることがない。このため、データ転送システムとしての上述の表示装置を、消費電力を低減した携帯型の表示装置に適用することができる。
【図面の簡単な説明】
【０１４２】
【図１】本発明に係るデータ転送システム、電子装置の一実施の形態を示す概略のブロック図である。
【図２】上記データ転送システムの一部を示すブロック図である。
【図３】上記データ転送システムの他の一部を示すブロック図である。
【図４】上記データ転送システムにおいて送受信されるパケットの概略構成を示す図である。
【図５】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過の一例を示す図である。
【図６】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過の他の一例を示す図である。
【図７】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過のさらに他の一例を示す図である。
【図８】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過についての詳細な一例を示す図である。
【図９】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過についての他の詳細な一例を示す図である。
【図１０】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過についてのさらに他の詳細な一例を示す図である。
【図１１】上記データ転送システムのマスタ、スレーヴ間でのパケット送受信の経過についてのさらに他の詳細な一例を示す図である。
【符号の説明】
【０１４３】
１                    カメラ（データ転送システム、電子装置）
２                    マスタモジュール（デバイス、マスタ）
３                    カメラモジュール（デバイス、スレーヴ）
４                    表示モジュール（デバイス、スレーヴ）
２ａ、３ｄ、４ｅ      通信制御部
Ｂ                    バスライン（信号線）
Ｓ１、Ｓ２            スレーヴ
ＴＵＡ                Target Unit Address（送信先情報）
【図１】
2005094649.tif 000004
【図２】
2005094649.tif 000005
【図３】
2005094649.tif 000006
【図４】
2005094649.tif 000007
【図５】
2005094649.tif 000008
【図６】
2005094649.tif 000009
【図７】
2005094649.tif 000010
【図８】
2005094649.tif 000011
【図９】
2005094649.tif 000012
【図１０】
2005094649.tif 000013
【図１１】
2005094649.tif 000014