(57)【要約】マスタ装置と１以上のスレーブ装置からなる通信システムにおいて、スレーブ装置のパラメータ設定を効率化する。マスタ装置（２）は、パラメータ設定コマンドをブロードキャストコマンドとして発行し、スレーブ装置（１）は、パラメータ設定コマンドを受信すると、パラメータ表示部に保持するパラメータと比較し、比較結果をパラメータ設定コマンドに付加して送信する。マスタ装置（２）は、スレーブ装置（１）が送信した設定コマンドを受信することで、パラメータ設定の完了を確認する。
2011064998.tif 000002
【特許請求の範囲】
【請求項１】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムのスレーブ装置であって、
前記マスタ装置と通信を行うためのマスタ装置ＩＦ部を備え、
前記マスタ装置ＩＦ部は、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する、
スレーブ装置。
【請求項２】
前記マスタ装置ＩＦ部は、受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータを前記パラメータ設定部に設定する、
請求項１に記載のスレーブ装置。
【請求項３】
前記マスタ装置ＩＦ部は、パラメータ取得コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
請求項１または２に記載のスレーブ装置。
【請求項４】
前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、値の小さい方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項３に記載のスレーブ装置。
【請求項５】
前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、時間の長い方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項３に記載のスレーブ装置。
【請求項６】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答を用いて通信を行う通信システムのマスタ装置であって、
前記１以上のスレーブ装置にコマンドを送信し、前記１以上のスレーブ装置からのコマンドまたは応答を受信して通信を行うスレーブ装置ＩＦ部を備え、
前記スレーブ装置ＩＦ部は、
マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信する、
マスタ装置。
【請求項７】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、
マスタ装置と、
１以上のスレーブ装置と、
を備え、
前記マスタ装置は、
前記マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信し、
前記１以上のスレーブ装置は、それぞれ、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する、
通信システム。
【請求項８】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む、
請求項７に記載の通信システム。
【請求項９】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置および前記１以上のスレーブ装置が共に満たすパラメータを含む、
請求項７に記載の通信システム。
【請求項１０】
前記スレーブ装置は、受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、前記パラメータ設定部の前記通信設定パラメータのパラメータ値を設定する、
請求項７に記載の通信システム。
【請求項１１】
前記マスタ装置は、前記パラメータ設定コマンドを発行するより前に、前記１以上のスレーブ装置のパラメータ表示部に保持される前記通信能力パラメータを取得するためのパラメータ取得コマンドを前記ブロードキャストコマンドとして送信する、
請求項７から１０のいずれかに記載の通信システム。
【請求項１２】
前記パラメータ取得コマンドに付加されるペイロードは、前記マスタ装置のパラメータ表示部に保持される前記通信能力パラメータの少なくとも一部を含む、
請求項１１に記載の通信システム。
【請求項１３】
前記パラメータ設定コマンドに付加されるペイロードは、前記パラメータ取得コマンドで取得したパラメータ値を含む、
請求項１１に記載の通信システム。
【請求項１４】
前記スレーブ装置は、パラメータ取得コマンドを、前記ブロードキャストコマンドとして受信した場合、受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
請求項１１に記載の通信システム。
【請求項１５】
前記スレーブ装置の前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、値の小さい方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１４に記載の通信システム。
【請求項１６】
前記スレーブ装置の前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、時間の長い方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１４に記載の通信システム。
【請求項１７】
前記マスタ装置と前記１以上のスレーブ装置とは、リング接続により接続されている、
請求項７から１６のいずれかに記載の通信システム。
【請求項１８】
前記マスタ装置と前記１以上のスレーブ装置は、ハブ接続により接続されている、
請求項７から１６のいずれかに記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ装置と１以上のスレーブ装置で構成され、マスタ装置の発行するコマンドにスレーブ装置が応答して各種情報の転送を行う通信システムに関する。
【背景技術】
【０００２】
従来から、マスタ装置と１以上のスレーブ装置とを接続し、マスタ装置の発行するコマンドにスレーブ装置が応答して各種通信を行う通信システムが知られている。このような通信システムにおいては、システム起動時に、マスタ装置は、システムに接続されたスレーブ装置と通信を行うために、各スレーブ装置の物理層やデータリンク層のパラメータ設定を行うコンフィギュレーション処理を実行する必要がある。
例えば、特許文献１では、複数のスレーブ装置がチェーン接続されたシステムにおいて、スレーブ装置が、初期状態においてコマンドをマスタ装置へ送り返すモードで起動し、そして、スレーブ装置が、マスタ装置からのコマンドを受信してマスタ装置へ送り返すと、スルーモードへ変わる技術が開示されている。
また、特許文献２では、複数のデバイスに対して、マスタ装置が接続要求を送り、要求に応答したデバイスに対して、個別に初期化を行い、その後、マスタ装置は、そのデバイスをスリープモードに入れ（設定し）、そのデバイスに対して、再び接続要求を送り、そのデバイスからの応答の確認を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−１３６２４４号公報
【特許文献２】特開２００３-１４３１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１や特許文献２に開示された従来技術では、マスタ装置は、複数のスレーブ装置に対して、個別にパラメータを設定する必要がある。従って、接続されるスレーブ装置の数に比例してコンフィギュレーション処理の時間が増大する。これは、通信システムが動作し始めるためのスレーブ装置の初期化時間の増大につながる。
本発明は、以上の問題点を解決し、マスタ装置と１以上のスレーブ装置からなる通信システムであって、マスタ装置がスレーブ装置のパラメータを設定する処理を効率よく行うことが可能な通信システム、並びに、その通信システムを構成するマスタ装置およびスレーブ装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
第１の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムのスレーブ装置であって、マスタ装置ＩＦ部を備える。
マスタ装置ＩＦ部は、パラメータ表示部と、パラメータ設定部と、を備える。
パラメータ表示部は、スレーブ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、マスタ装置と通信を行うために使用する通信設定パラメータを保持する。
そして、マスタ装置ＩＦ部は、パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
（１）受信したパラメータ設定コマンドに付加されたペイロードの値に基づいて、パラメータ設定部に通信設定パラメータを設定し、
（２）パラメータ設定部に設定した通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する。【０００６】
これにより、このスレーブ装置を含む通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、このマスタ装置を含む通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、このスレーブ装置を含む通信システムでは、スレーブ装置の初期化時間を短縮することができる。
第２の発明は、第１の発明であって、マスタ装置ＩＦ部は、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータをパラメータ設定部に設定する。
第３の発明は、第１または第２のいずれかの発明であって、マスタ装置ＩＦ部は、パラメータ取得コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、受信したパラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する。【０００７】
これにより、このスレーブ装置では、受信したパラメータ取得コマンドに付加されたペイロードに基づいた値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。
第４の発明は、第３の発明であって、マスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、値の小さい方をパラメータ取得コマンドに付加するペイロードに設定して、パラメータ取得コマンドを送信する。
これにより、このスレーブ装置では、通信能力のより低い値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。【０００８】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
第５の発明は、第３の発明であって、マスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、時間の長い方をパラメータ取得コマンドに付加するペイロードに設定して、パラメータ取得コマンドを送信する。
これにより、このスレーブ装置では、通信能力のより低い値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。【０００９】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
第６の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答を用いて通信を行う通信システムのマスタ装置であって、１以上のスレーブ装置にコマンドを送信し、１以上のスレーブ装置からのコマンドまたは応答を受信して通信を行うスレーブ装置ＩＦ部を備える。
スレーブ装置ＩＦ部は、パラメータ表示部と、パラメータ設定部と、を備える。【００１０】
パラメータ表示部は、マスタ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持する。
そして、スレーブ装置ＩＦ部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。
このマスタ装置では、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。このマスタ装置を含む通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、このマスタ装置を含む通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、このマスタ装置を含む通信システムでは、スレーブ装置の初期化時間を短縮することができる。
（１）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドに、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含むペイロードを付加して、パラメータ設定コマンドを送信するようにしてもよい。【００１１】
これにより、このマスタ装置を含む通信システムでは、通信能力パラメータの所定のパラメータ値について、確実に、コンフィギュレーション処理を実行することができる。
（２）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドに、マスタ装置および１以上のスレーブ装置が共に満たすパラメータを含むペイロードを付加して、パラメータ設定コマンドを送信するようにしてもよい。
これにより、このマスタ装置を含む通信システムでは、マスタ装置および１以上のスレーブ装置の中の最低の通信能力を示すパラメータを、各スレーブ装置に知らせることができる。
（３）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドを発行するより前に、１以上のスレーブ装置のパラメータ表示部に保持される通信能力パラメータを取得するためのパラメータ取得コマンドをブロードキャストコマンドとして送信するようにしてもよい。【００１２】
このマスタ装置を含む通信システムでは、パラメータ取得コマンドをブロードキャストコマンドとして送信し、各スレーブ装置の通信能力を把握した上で、マスタ装置が、パラメータ設定コマンドを発行する。したがって、このマスタ装置を含む通信システムでは、マスタ装置がパラメータ設定コマンドを発行し、そのパラメータ設定コマンドに基づいて、各スレーブ装置が、マスタ装置および各スレーブ装置が満たす通信能力に相当するパラメータ値に、自装置を設定することができる。つまり、このマスタ装置を含む通信システムでは、少ない回数のコマンド発行（パラメータ取得コマンドおよびパラメータ設定コマンドの発行）により、コンフィギュレーション処理を実行することができる。
（４）また、パラメータ取得コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含むようにしてもよい。【００１３】
これにより、マスタ装置は、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部について、各スレーブ装置に設定されている通信能力パラメータのパラメータ値を把握（取得）することができる。
（５）また、パラメータ設定コマンドに付加されるペイロードは、パラメータ取得コマンドで取得したパラメータ値を含むようにしてもよい。
これにより、マスタ装置は、パラメータ取得コマンドを発行することで把握（取得）した各スレーブ装置の通信能力を考慮したパラメータ値を含むパラメータ設定コマンドを、スレーブ装置に対して、送信することができる。
第７の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、マスタ装置と、１以上のスレーブ装置と、を備える。【００１４】
マスタ装置は、パラメータ表示部と、パラメータ設定部と、を備える。
パラメータ表示部は、マスタ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持する。
そして、マスタ装置は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。
１以上のスレーブ装置は、それぞれ、パラメータ表示部と、パラメータ設定部と、を備える。【００１５】
パラメータ表示部は、スレーブ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、マスタ装置と通信を行うために使用する通信設定パラメータを保持する。
そして、スレーブ装置は、パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
（１）受信したパラメータ設定コマンドに付加されたペイロードの値に基づいて、パラメータ設定部に通信設定パラメータを設定し、
（２）パラメータ設定部に設定した通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する。【００１６】
この通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、この通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、この通信システムでは、スレーブ装置の初期化時間を短縮することができる。
第８の発明は、第７の発明であって、パラメータ設定コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む。
第９の発明は、第７の発明であって、パラメータ設定コマンドに付加されるペイロードは、マスタ装置および１以上のスレーブ装置が共に満たすパラメータを含む。【００１７】
第１０の発明は、第７の発明であって、スレーブ装置は、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、パラメータ設定部の通信設定パラメータのパラメータ値を設定する。
なお、「受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、パラメータ設定部の通信設定パラメータのパラメータ値を設定する」とは、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータの値そのものに、パラメータ設定部の通信設定パラメータのパラメータ値を設定する場合や、受信したパラメータ設定コマンドに付加されたペイロード値をそのまま、パラメータ設定部の通信設定パラメータに設定する場合を含む概念である。
第１１の発明は、第７から第１０のいずれかの発明であって、マスタ装置は、パラメータ設定コマンドを発行するより前に、１以上のスレーブ装置のパラメータ表示部に保持される通信能力パラメータを取得するためのパラメータ取得コマンドをブロードキャストコマンドとして送信する。【００１８】
第１２の発明は、第１１の発明であって、パラメータ取得コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む。
第１３の発明は、第１１の発明であって、パラメータ設定コマンドに付加されるペイロードは、パラメータ取得コマンドで取得したパラメータ値を含む。
第１４の発明は、第１１の発明であって、スレーブ装置は、パラメータ取得コマンドを、ブロードキャストコマンドとして受信した場合、受信したパラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する。
第１５の発明は、第１４の発明であって、スレーブ装置のマスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、値の小さい方を、パラメータ取得コマンドのペイロードに設定して、パラメータ取得コマンドを送信する。【００１９】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
第１６の発明は、第１４の発明であって、スレーブ装置のマスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、時間の長い方を、パラメータ取得コマンドのペイロードに設定して、パラメータ取得コマンドを送信する。
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。【００２０】
第１７の発明は、第７から第１６のいずれかの発明であって、マスタ装置と１以上のスレーブ装置とは、リング接続により接続されている。
第１８の発明は、第７から第１６のいずれかの発明であって、マスタ装置と１以上のスレーブ装置は、ハブ接続により接続されている。
【発明の効果】
【００２１】
本発明によれば、マスタ装置は複数のスレーブ装置のパラメータ設定を少ないコマンド数で効率よく行うことが可能な通信システム、並びに、その通信システムを構成するマスタ装置およびスレーブ装置を実現することができる。
【図面の簡単な説明】
【００２２】
【図１】第１実施形態に係る通信システム１０００の概略構成図
【図２】マスタ装置とスレーブ装置との接続形態を説明するための図
【図３Ａ】コマンド・応答フォーマットを説明するための図
【図３Ｂ】コマンド・応答フォーマットの一例を示す図
【図３Ｃ】コンフィギュレーション用レジスタマップ（第１例）を説明するための図
【図３Ｄ】コンフィギュレーション用レジスタマップ（第２例）を説明するための図
【図４】１対１接続でのコマンド・応答送受信処理を説明するための図
【図５】リング接続でのコマンド・応答送受信処理を説明するための図
【図６】チェーン接続でのコマンド・応答送受信処理を説明するための図
【図７】ハブ接続でのコマンド・応答送受信処理を説明するための図
【図８】パラメータ表示部、パラメータ設定部の構成を説明するための図
【図９】１対１接続でのコンフィギュレーション処理を説明するための図
【図１０Ａ】（ａ）リング接続でマスタ装置が初期値をブロードキャスト送信した図（ｂ）リング接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図
【図１０Ｂ】（ｃ）リング接続でマスタ装置が初期値をブロードキャスト送信した図（ｄ）リング接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図
【図１０Ｃ】（ｃ）マスタ装置のコンフィギュレーションを示すフローチャート（ｄ）スレーブ装置のコンフィギュレーションを示すフローチャート
【図１０Ｄ】（ｅ）リング接続でマスタ装置が、マスタ装置の設定値をブロードキャスト送信した図
【図１１Ａ】（ａ）リング接続でマスタ装置が任意の初期値をＰａｙｌｏａｄに設定してブロードキャスト送信した図
【図１１Ｂ】マスタ装置が送信したパラメータと受信したパラメータが異なる、又は、同一場合の図
【図１１Ｃ】（ｃ）マスタ装置のコンフィギュレーションを示すフローチャート（ｄ）スレーブ装置のコンフィギュレーションを示すフローチャート
【図１２】チェーン接続での第１のコンフィギュレーション処理を説明するための図
【図１３】チェーン接続での第２のコンフィギュレーション処理を説明するための図
【図１４Ａ】（ａ）ハブ接続でマスタ装置が初期値を送信した図（ｂ）ハブ接続でマスタ装置がパラメータ設定値を送信した図
【図１４Ｂ】（ｃ）ハブ接続において、マスタ装置が、マスタ装置の設定値を送信した図
【図１４Ｃ】（ａ）ハブ接続でマスタ装置が初期値をブロードキャスト送信した図（リング接続と等価の場合）（ｂ）ハブ接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図（リング接続と等価の場合）
【図１５Ａ】（ａ）ハブ接続においてマスタ装置が任意の初期値をＰａｙｌｏａｄに設定して送信した図
【図１５Ｂ】ハブ接続においてマスタ装置が送信したパラメータと受信したパラメータが異なる場合、又は、同一の場合の図
【図１５Ｃ】ハブ接続においてマスタ装置が送信したパラメータと受信したパラメータが異なる場合、又は、同一の場合の図（リング接続と等価の場合）
【発明を実施するための形態】
【００２３】
以下、本発明の実施形態について、図面を参照しながら説明する。なお、説明中で同じ符号、記号、数字は、特に説明が無い限り、同じ構成要素を示すものとする。
［第１実施形態］
＜１．１：通信システムの構成＞
図１は、第1実施形態に係る通信システム１０００の構成を示すブロック図である。
図１に示すように、本実施形態に係る通信システム１０００は、マスタ装置２とスレーブ装置１とを含んで構成される。マスタ装置２とスレーブ装置１とは、クロック線ＣＬＫ、マスタ装置２からスレーブ装置１へデータを送る信号線ＤＡＴ０、スレーブ装置１からマスタ装置２へデータを送る信号線ＤＡＴ１により接続されている。クロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１を用いて、マスタ装置２とスレーブ装置１との間で、コマンドや応答、データの送受信が実行される。なお、本発明の説明に不要な要素は図示していない。
【００２４】
ＣＬＫ、ＤＡＴ０、ＤＡＴ１は、例えば、差動シリアル方式またはシングルエンド方式で信号を伝送するための伝送路である。通信システム１０００の伝送路（ＣＬＫ、ＤＡＴ０、ＤＡＴ１）において、データを送る信号線の数は、２本（ＤＡＴ０およびＤＡＴ１の２本）に限定されず、より多くの信号線（例えば、ＤＡＴ０〜ＤＡＴＡ３の４本の信号線やＤＡＴ０〜ＤＡＴ７の信号線）を用いてもよい。より多くの信号線を用いることで、通信システム１０００では、より高速な通信が可能となる。また、マスタ装置２からスレーブ装置１へ送るデータの信号線の数とスレーブ装置１からマスタ装置へ送るデータの信号線の数は、同じであってもよいし、異なっていてもよい。
なお、通信システム１０００の接続形態は、（１）１つのマスタ装置と１つのスレーブ装置とを接続した１対１接続、（２）１つのマスタ装置と複数のスレーブ装置とを接続した１対多接続がある。さらに、１対多接続の場合において、通信システム１０００がとりうるトポロジーとして、例えば、（１）リング接続、（２）チェーン接続（デイジーチェーン接続）、（３）ハブ接続がある。
【００２５】
（１．１．１：マスタ装置の構成）
マスタ装置２は、図１に示すように、全体を制御するＣＰＵ２２と、ＲＯＭ２６と、ＲＡＭ２５と、主記憶部２３と、周辺回路２４と、スレーブ装置ＩＦ部２１とを含んで構成される。マスタ装置２の機能部は、図１に示すように、バスＢ２により接続されるものであってもよいし、マスタ装置２の機能部の全部または一部が、直接接続されるものであってもよい。
また、マスタ装置２の機能部は、同じ半導体ＬＳＩとして実現されるものであってもよいし、その全部または一部が異なる半導体ＬＳＩで実現されるものであってもよいし、さらに、ハードウェアとソフトウェアを組み合わせて実現されるものであってもよい。
スレーブ装置ＩＦ部２１は、クロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１を用いて、スレーブ装置１と通信を行う機能を有する。また、スレーブ装置ＩＦ部２１は、マスタ装置２の識別子であるＩＤ、マスタ装置２の通信能力パラメータＣＰＢＬを保持するパラメータ表示部２１１Ｍと、スレーブ装置１との通信に使用するパラメータＳＥＴＴＩＮＧを保持するパラメータ設定部２１２Ｍと、を有する。
【００２６】
通信設定パラメータＳＥＴＴＩＮＧは、スレーブ装置１とのネゴシエーションにより決定される更新可能な情報であり、その値は、レジスタやメモリで保持される。
マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、ＲＯＭ２６等で固定値として保持されるものであってもよいし、あるいは、ＣＰＵ２２により設定可能なレジスタやメモリに、その値が保持されるものであってもよい。さらに、マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、外部端子などの手段で設定されるものであってもよい。以下では、マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、何らかの手段で設定済みであるとして、説明する。
（１．１．２：スレーブ装置の構成）
スレーブ装置１は、図１に示すように、マスタ装置ＩＦ部１１と、制御部１２と、を含んで構成される。
【００２７】
制御部１２は、ＣＰＵ１２１と、ＲＯＭ１２５と、ＲＡＭ１２４と、不揮発性メモリおよびメモリ制御部を含むメモリ部１２２と、ＩＯ機能およびＩＯ制御部を含むＩＯ部１２３と、を含んで構成される。
スレーブ装置１の制御部１２の機能部は、図１に示すように、バスＢ１により接続されるものであってもよい。また、スレーブ装置１の機能部の全部または一部が、直接接続されるものであってもよい。
また、スレーブ装置１の制御部１２の機能部および／またはマスタ装置ＩＦ部１１は、同じ半導体ＬＳＩとして実現されるものであってもよいし、その全部または一部が異なる半導体ＬＳＩで実現されるものであってもよいし、さらに、ハードウェアとソフトウェアを組み合わせて実現されるものであってもよい。
【００２８】
また、スレーブ装置１は、メモリ部１２２およびＩＯ部１２３のいずれか、あるいは両方を含まない構成であってもよい。
マスタ装置ＩＦ部１１は、マスタ装置２とクロック線ＣＬＫ，信号線ＤＡＴ０、信号線ＤＡＴ１を用いて、マスタ装置２と通信を行う機能を有する。また、マスタ装置ＩＦ部１１は、スレーブ装置１の識別子であるＩＤ、スレーブ装置１の通信能力パラメータＣＰＢＬを保持するパラメータ表示部１１１Ｓと、マスタ装置２との通信に使用するパラメータであるＳＥＴＴＩＮＧを保持するパラメータ設定部１１２Ｓと、を有する。
通信設定パラメータＳＥＴＴＩＮＧは、マスタ装置２とのネゴシエーションにより決定される更新可能な情報であり、その値は、レジスタやメモリで保持される。スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、ＲＯＭ１２５等で固定値として保持されるものであってもよいし、あるいは、ＣＰＵ１２１が設定可能なレジスタやメモリに、その値が保持されるものであってもよい。さらに、スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、外部端子などの手段で設定されるものであってもよい。以下では、スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、何らかの手段で設定済みであるとして、説明する。
【００２９】
スレーブ装置１は、１組のクロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１に接続される構造（つまり、３本の伝送路に接続される構造）を有するものであってもよいし、あるいは、スレーブ装置１が後述するチェーン接続を実現可能な場合には、スレーブ装置１は、２組のクロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１に接続される構造（つまり、６本（＝３×２）の伝送路に接続される構造）を有するものであってもよい。
なお、通信システム１０００では、図１に示すように、クロック線ＣＬＫが、信号線ＤＡＴ０、信号線ＤＡＴ１とは異なる端子によりされる構成となっているが、これに限定されることはなく、例えば、通信システム１０００において、信号線にクロックを重畳するエンベデッドクロックを用いることもできる。その場合、通信システム１０００において、スレーブ装置１のＣＬＫ端子、マスタ装置２のＣＬＫ端子、および、クロック線ＣＬＫは、不要である。
【００３０】
（１．１．３：マスタ装置とスレーブ装置の接続形態）
図２は、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１の接続形態を説明するための図である。本実施形態に係る通信システム１０００は、１つのマスタ装置と、１以上のスレーブ装置を含んで構成され、様々な接続形態が可能である。
図２（ａ）〜（ｄ）は、マスタ装置２と、スレーブ装置１との接続形態を示している。具体的には、図２（ａ）は、マスタ装置２と１つのスレーブ装置１とが接続される１対１接続についての接続形態を示している。図２（ｂ）〜（ｄ）は、マスタ装置２と複数のスレーブ装置１ａ〜１ｃが接続される構成（接続形態）を示している。図２（ｂ）は、リング接続の場合の接続形態を示している。図２（ｃ）は、チェーン接続の場合の接続形態を示している。図２（ｄ）は、ハブ接続の場合の接続形態を示している。
【００３１】
いずれの場合も、マスタ装置２では、ＤＡＴ０が出力され、ＤＡＴ１が入力される。また、スレーブ装置１では、ＤＡＴ０が入力されＤＡＴ１が出力される。図２（ｃ）のチェーン接続の場合のみ、後段のスレーブ装置との間で信号の伝送をするため、ＤＡＴ０を出力する信号線、ＤＡＴ１を入力する信号線がスレーブ装置に存在する。なお、図２において、クロック線ＣＬＫは、図示されていないが、前述したとおり、通信システムにおいて、独立した端子としてマスタ装置と各スレーブ装置とを接続する構成としてもよいし、また、エンベデッドクロックを使用し、クロック線ＣＬＫを省略した構成としてもよい。
＜１．２：通信システムの動作＞
以上のように構成された通信システム１０００の動作について、以下、説明する。
（１．２．１：コマンド・応答のフォーマット）
図３Ａは、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１が通信に用いるコマンドおよび応答のフォーマットの一例を示す図である。
【００３２】
図３Ａ（ａ）に示すように、コマンドおよび応答は、
（１）送信元の装置のＩＤを示すｓｒｃＩＤ、
（２）送信先の装置のＩＤを示すｄｓｔＩＤ、
（３）コマンドや応答の種別を示すＩｎｄｅｘ、
（４）コマンドや応答の各種引数を示すＡｒｇ
を含む。
また、コマンドや応答によっては付随するデータＰａｙｌｏａｄが付加されることもある。なお、コマンドと応答とは、それぞれ、ｓｒｃＩＤ、ｄｓｔＩＤ、Ｉｎｄｅｘ、ＡｒｇとＰａｙｌｏａｄの一部を含んで構成されるものであってもよく、あるいは、その他の情報が付加されて構成されるものであってもよい。
【００３３】
また、コマンドと応答とは、全く同じフォーマットでもよく、あるいは、異なるフォーマットでもよい。
なお、実際には、通信プロトコルに従った開始・終了シンボルやエラー検出・訂正コードが付加されてパケットが構成されるが、これらは本発明とは直接関係ないため、図示していない。
図３Ａ（ｂ）は、マスタ装置２が特定のスレーブ装置１へコマンドを送るための個別コマンドのフォーマットの一例を示している。図３Ａ（ｂ）に示すコマンド（または応答）は、ｓｒｃＩＤが０ｘ０であり、ｄｓｔＩＤが０ｘ１であるので、このコマンド（または応答）は、ＩＤが０ｘ０の装置からＩＤが０ｘ１の装置へ送られるコマンド（または応答）である。
【００３４】
また、マスタ装置２とスレーブ装置１とは、図３Ａ（ｃ−１）、（ｃ−２）に示すような、全ての装置が同じコマンドを受信するブロードキャストコマンドを発行可能である。ブロードキャストコマンドの設定方法（定義方法）は、例えば、以下（１）〜（３）のようにすればよい。
（１）ｄｓｔＩＤに特定の値（図３Ａ（ｃ−１）の場合、「０ｘｆｆ」）を設定することで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
図３Ａ（ｃ−１）の例では、ｄｓｔＩＤが「０ｘｆｆ」であるコマンドを、ブロードキャストコマンドと設定（定義）している。つまり、図３Ａ（ｃ−１）の例では、ｄｓｔＩＤが「０ｘｆｆ」であるので、図３Ａ（ｃ−１）に示したコマンドは、ブロードキャストコマンドであることが分かる。
（２）ｓｒｃＩＤおよびｄｓｔＩＤに等しい値を設定することで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
【００３５】
図３Ａ（ｃ−２）の例では、ｓｒｃＩＤとｄｓｔＩＤとが等しい値（０ｘ０）であるコマンドを、ブロードキャストコマンドと設定（定義）している。
（３）ＩｎｄｅｘやＡｒｇにブロードキャストコマンドであることを示す識別子やフラグを設け、その識別子やフラグを所定の値とすることで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
ここで、上記（２）の場合のコマンドフォーマットの具体例（一例）を図３Ｂに示す。
図３Ｂに示したコマンドフォーマットでは、先頭の２バイト（バイト０およびバイト１）がヘッダであり、それに続く２バイト（バイト２およびバイト３）が引数（Ａｒｇｕｍｅｎｔ）であり、それに続くバイトがペイロードである。
ヘッダの中で、ｓｒｃＩＤとｄｓｔＩＤとが等しい値（０ｘ０）に設定されることで、当該コマンドがブロードキャストコマンドに設定される。
【００３６】
「Ｒ／Ｗ」（バイト２のビット７）は、コマンドが、データを書き込むコマンドであるか、それとも、データを読み取るコマンドであるかの種別を示す。例えば、Ｒ／Ｗ＝０であれば、当該コマンドは、データを読み取るコマンドであり、Ｒ／Ｗ＝１であれば、当該コマンドは、データを書き込むコマンドである。
「ＩＯＡＤＲ」は、読み出しまたは書き込みを行なうレジスタ空間やメモリ空間のアドレスである。なお、ＩＯＡＤＲで指定するアドレスは、絶対アドレスではなく、相対アドレスであってもよい。また、ＩＯＡＤＲで指定するアドレスは、バイトアドレスでもよいし、あるいはワード（２バイト）単位のアドレス、ダブルワード（４バイト）単位アドレスであってもよく、さらに、例えば、５１２バイトのブロック単位のアドレスであってもよい。
【００３７】
なお、ここで、コンフィギュレーション用レジスタについて、説明する。
「コンフィギュレーション用レジスタ」とは、スレーブ装置１が持つレジスタであり、このコンフィギュレーション用レジスタは、コンフィギュレーション処理で使用される。コンフィギュレーション用レジスタは、２つのカテゴリーのレジスタ、すなわち、（１）ケイパビリティ・レジスタと、（２）ステータス／セッティング・レジスタ（これを、単に「セッティング・レジスタ」ということもある。）から構成される。
ケイパビリティ・レジスタは、コンフィギュレーション処理において設定、あるいは、参照されるスレーブ装置１の通信能力や通信性能に関する情報を保持するためのレジスタである。
ステータス／セッティング・レジスタは、コンフィギュレーション処理の結果、スレーブ装置１に割り当てられた値や、スレーブ装置１の現状（現在の通信状態等）に基づく値（当該レジスタに保持されている現在値）を設定し、保持するためのレジスタである。
【００３８】
なお、スレーブ装置１の持つコンフィギュレーション用レジスタの全部あるいは一部を、マスタ装置２が備えるようにしてもよい。以降の説明では、マスタ装置２はスレーブ装置１と同じコンフィギュレーションレジスタを備えるものとする。
コンフィギュレーション用レジスタのアドレスは、マスタ装置およびスレーブ装置が共通に持つアドレス空間において、連続的に配置されているものとする。
図３Ｃに、コンフィギュレーション用レジスタのアドレス空間マップ（コンフィギュレーション用レジスタ・マップ）の一例（第１例）を示す。そして、図３Ｃのコンフィギュレーション用レジスタ・マップにおいて、各レジスタは、４バイトからなるものとする。例えば、図３Ｃに示すアドレス空間において、アドレスＡ０から４バイト分に「物理層ケイパビリティ・レジスタ」が配置され、続く４バイト分に「リンク層／トランザクション層ケイパビリティ・レジスタ」が配置され、続く４バイト分に「共通ケイパビリティ・レジスタ」が配置され、続く４バイト分に「その他」（例えば、リザーブ）が配置されている。そして、図３Ｃに示すアドレス空間において、アドレスＢ０から４バイト分に「物理層ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「リンク層／トランザクション層ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「共通ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「その他」（例えば、リザーブ）が配置されている。
【００３９】
「ＰＬＥＮ」（バイト２のビット４〜６（「ＰＬＥＮ」をバイト２のビット４および５の２ビットのデータで表すようにしてもよい。））は、ペイロードの長さを示す。例えば、以下のように設定する。
ＰＬＥＮ＝０であれば、ペイロードの長さは０バイト。
ＰＬＥＮ＝１であれば、ペイロードの長さは４バイト。
（これにより、１つのレジスタ（４バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝２であれば、ペイロードの長さは８バイト。
（これにより、２つのレジスタに対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝３であれば、ペイロードの長さは１６バイト。
（これにより、４つのレジスタに対して、データの読み取り／書き込みができる。）
上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝０とし、「ＩＯＡＤＲ」を図３ＣのアドレスＡ０に相当する値に設定し、ＰＬＥＮ＝１とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）を読み取る（取得する）パラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝２とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）を読み取る（取得する）ブロードキャストコマンドであるパラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。
【００４０】
また、上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝１とし、「ＩＯＡＤＲ」を図３ＣのアドレスＡ０に相当する値に設定し、ＰＬＥＮ＝１とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝２とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。
また、図３Ｄに、コンフィギュレーション用レジスタのアドレス空間マップ（コンフィギュレーション用レジスタ・マップ）の別の一例（第２例）を示す。そして、図３Ｄのコンフィギュレーション用レジスタ・マップにおいて、各レジスタは、８バイトからなるものとする。例えば、図３Ｄに示すアドレス空間において、アドレスＡＡ０から８バイト分に「一般ケイパビリティ・レジスタ」が配置され、続く８バイト分に「物理層ケイパビリティ・レジスタ」が配置され、続く８バイト分に「リンク層／トランザクション層ケイパビリティ・レジスタ」が配置され、続く８バイト分に「その他」（例えば、リザーブ）が配置されている。そして、図３Ｄに示すアドレス空間において、アドレスＢＢ０から８バイト分に「一般セッティング・レジスタ」が配置され、続く８バイト分に「物理層セッティング・レジスタ」が配置され、続く８バイト分に「物理層セッティング・レジスタ」が配置され、続く８バイト分に「その他」（例えば、リザーブ）が配置されている。
【００４１】
「ＰＬＥＮ」（バイト２のビット４〜６（「ＰＬＥＮ」をバイト２のビット４および５の２ビットのデータで表すようにしてもよい。））は、ペイロードの長さを示す。例えば、以下のように設定する。
ＰＬＥＮ＝０であれば、ペイロードの長さは０バイト。
ＰＬＥＮ＝１であれば、ペイロードの長さは４バイト。
ＰＬＥＮ＝２であれば、ペイロードの長さは８バイト。
（これにより、１つのレジスタ（８バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝３であれば、ペイロードの長さは１６バイト。
（これにより、２つのレジスタ（２つの８バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝０とし、「ＩＯＡＤＲ」を図３ＤのアドレスＡＡ１に相当する値に設定し、ＰＬＥＮ＝２とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）を読み取る（取得する）パラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝３とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）を読み取る（取得する）ブロードキャストコマンドであるパラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。
【００４２】
また、上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝１とし、「ＩＯＡＤＲ」を図３ＤのアドレスＡＡ１に相当する値に設定し、ＰＬＥＮ＝２とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝３とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。
なお、以降の説明および説明で使用する図では、特に説明が無い限り、「ＩＤ」と記されている場合は、「ｄｓｔＩＤ」を示すものとする。また、ブロードキャストコマンドの場合も、ｓｒｃＩＤ、ｄｓｔＩＤとも適切な値に設定されているものとして、特に詳述しない。その他パラメータについても本発明の本質に関係しない箇所は詳述しないが、適切に設定されているものとして扱う。
【００４３】
（１．２．２：コマンド・応答の送受信処理）
図４は、本実施形態に係る通信システムにおける、マスタ装置２とスレーブ装置１とが１対１接続されている場合のコマンド・応答の送受信についての説明図である。
図４（ａ）は、個別コマンドの場合の説明図である。図４（ａ）に示すように、マスタ装置２は、個別のスレーブ装置１のＩＤをｄｓｔＩＤとして設定したコマンドＣＭＤ  ＩＤをスレーブ装置１へ発行する。コマンドの種類によっては、Ｐａｙｌｏａｄが付加される。スレーブ装置１は、マスタ装置２からのコマンドを受信すると、受信したコマンドの内容に応じた応答ＲＥＳをマスタ装置２に送信し、コマンドの処理を行う。応答ＲＥＳには、マスタ装置２のＩＤが含まれる。なお、コマンド処理を完了してから応答を返してもよい。また、図示していないが、スレーブ装置１が受信したコマンドによっては、スレーブ装置１は、Ｐａｙｌｏａｄを応答ＲＥＳに付加し、Ｐａｙｌｏａｄを付加した応答ＲＥＳを、マスタ装置２に送信するようにしてもよい。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＩＤに対する応答ＲＥＳを、スレーブ装置１から受信すると、個別コマンドをスレーブ装置１が受信したと判断する。
【００４４】
図４（ｂ）は、ブロードキャストコマンドの場合の説明図である。
図４（ｂ）に示すように、マスタ装置２は、ブロードキャストコマンドＣＭＤ  ＢＲをスレーブ装置１へ発行する。コマンドの種類によっては、Ｐａｙｌｏａｄが付加される。スレーブ装置１は、マスタ装置２からコマンドを受信すると、受信したコマンドと同じコマンドをマスタ装置２に送信する。このとき、スレーブ装置１は、受信したコマンドおよびＰａｙｌｏａｄに基づく処理を実行し、その実行結果をＰａｙｌｏａｄ’として付加してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま出力してもよい。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１が受信したと判断し、マスタ装置２が受信したコマンドにＰａｙｌｏａｄ’が付加されていれば、その内容に基づいて処理を行う。
【００４５】
図５〜７は、本実施形態に係る通信システム１０００において、マスタ装置２と複数のスレーブ装置１ａ〜１ｃとが接続された場合の、マスタ装置２とスレーブ装置１ａ〜１ｃとの間のコマンド・応答の送受信を説明するための図である。図５は、リング接続の場合の説明図である。図６は、チェーン接続の場合の説明図である。図７は、ハブ接続の場合の説明図である。図５〜７において、マスタ装置２は、ＩＤ＝０に設定されており、スレーブ装置１ａはＩＤ＝１に、スレーブ装置１ｂはＩＤ＝２に、スレーブ装置１ｃはＩＤ＝３に、それぞれ、設定されている。
（１．２．３：リング接続）
図５は、本実施形態に係る通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがリング接続されている場合のコマンド・応答の送受信を説明するための図である。
【００４６】
図５（ａ）は、マスタ装置２がスレーブ装置１ｂに対して個別コマンドを発行した場合を示している。図５（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。スレーブ装置１ａは、コマンドを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該コマンドをそのままスレーブ装置１ｂへ送信する。スレーブ装置１ａが送信したコマンドをスレーブ装置１ｂが受信すると、スレーブ装置１ｂは、当該コマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。スレーブ装置１ｃは、スレーブ装置１ｂから送信された応答ＲＥＳを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該応答ＲＥＳをそのまま送信する。マスタ装置２は、スレーブ装置１ｃが送信した応答ＲＥＳを受信する。そして、マスタ装置２は、受信した応答ＲＥＳにＩＤ＝０が設定されているので、個別コマンドをスレーブ装置１ｂが受信したと判断する。
【００４７】
図５（ｂ）は、マスタ装置２がスレーブ装置１ａ〜１ｃに対してブロードキャストコマンドを発行した場合を示している。
図５（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。スレーブ装置１ａは、コマンドを受信すると、受信した当該コマンドがブロードキャストコマンドであることを検出して、同じコマンドをスレーブ装置１ｂへ送信する。このとき、スレーブ装置１ａは、受信したコマンドおよびＰａｙｌｏａｄ（図５中に「ＰＬＤ」で示した部分がＰａｙｌｏａｄ（ペイロード）である。他の図においても、同様。）に基づく処理を実行し、その実行結果をＰａｙｌｏａｄ１として付加し、Ｐａｙｌｏａｄ１を付加したコマンドを送信してもよい。あるいは、スレーブ装置１ａは、受信したＰａｙｌｏａｄをそのまま出力してもよい（受信したＰａｙｌｏａｄをそのまま付加したコマンドを送信してもよい）。
【００４８】
以降、スレーブ装置１ｂ、１ｃも同様に受信したコマンドをＰａｙｌｏａｄとともに出力する。図５では、スレーブ装置１ｂ、１ｃが送信するコマンドに付加したＰａｙｌｏａｄは、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３で表されており、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３は、受信したＰａｙｌｏａｄと同じものである、あるいは、受信したコマンドおよびＰａｙｌｏａｄに基づく処理の実行結果を示す（含む）ものである、のいずれかである。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断し、受信したコマンドにＰａｙｌｏａｄが付加されていれば、その内容に基づいて処理を行う。
なお、Ｐａｙｌｏａｄは、コマンドの内容によって異なり、例えば、スレーブ装置１ｂが、Ｐａｙｌｏａｄ１（ＰＬＤ１）が付加されたブロードキャストコマンドを受信した場合、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよく、あるいは、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよい。また、スレーブ装置１ａ、１ｃでの処理も上記スレーブ装置１ｂの処理と同様にしてもよい。
【００４９】
（１．２．４：チェーン接続）
図６は、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１ａ〜１ｃとがチェーン接続されている場合のコマンド・応答の送受信を説明するための図である。
図６（ａ）は、マスタ装置２が、スレーブ装置１ｂに対して、個別コマンドを発行した場合を示している。図６（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。スレーブ装置１ａは、マスタ装置２からのコマンドを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該コマンドをそのままスレーブ装置１ｂへ送信する。スレーブ装置１ａが送信したコマンドをスレーブ装置１ｂが受信すると、スレーブ装置１ｂは、当該コマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、応答ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。なお、このとき、スレーブ装置１ｂは、スレーブ装置１ｃへはコマンドを送信しない。
【００５０】
スレーブ装置１ａは、スレーブ装置１ｂからの応答ＲＥＳを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該応答ＲＥＳをそのままマスタ装置２に送信する。マスタ装置２は、スレーブ装置１ａが送信した応答ＲＥＳ（ＩＤ＝０に設定されている応答ＲＥＳ）を受信すると、個別コマンドをスレーブ装置１ｂが受信したと判断する。
図６（ｂ）は、マスタ装置２が、スレーブ装置１ａ〜１ｃに対して、ブロードキャストコマンドを発行した場合を示している。
図６（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。スレーブ装置１ａは、マスタ装置２からのコマンドを受信すると、受信した当該コマンドがブロードキャストコマンドであることを検出して、受信したのと同じコマンド（ブロードキャストコマンド）をスレーブ装置１ｂへ送信する。このとき、スレーブ装置１ａは、受信したコマンドおよび付加されたＰａｙｌｏａｄに基づく処理を実行し、その実行結果をＰａｙｌｏａｄ１として付加して、ブロードキャストコマンドを送信してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま付加したブロードキャストコマンドを出力（送信）してもよい。
【００５１】
以降、スレーブ装置１ｂ、１ｃも同様に受信したコマンド（ブロードキャストコマンド）をＰａｙｌｏａｄとともに出力する。図６において、スレーブ装置１ｂ、１ｃが送信するコマンドに付加されたＰａｙｌｏａｄは、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３で表されており、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３は、受信したＰａｙｌｏａｄと同じものである、あるいは、受信したコマンドおよびＰａｙｌｏａｄに基づく処理の実行結果を示す（含む）ものである、のいずれかである。
なお、Ｐａｙｌｏａｄは、コマンドの内容によって異なり、例えば、スレーブ装置１ｂが、Ｐａｙｌｏａｄ１（ＰＬＤ１）が付加されたブロードキャストコマンドを受信した場合、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよく、あるいは、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよい。また、スレーブ装置１ａ、１ｃでの処理も上記スレーブ装置１ｂの処理と同様にしてもよい。
【００５２】
スレーブ装置１ｂは、スレーブ装置１ｃからのコマンドを受信すると、受信したコマンドをそのままスレーブ装置１ａへ送信する。同様に、スレーブ装置１ａは、受信したコマンドをそのままマスタ装置２へ送信する。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断し、受信したコマンドにＰａｙｌｏａｄが付加されていれば、その内容に基づいて処理を行う。
（１．２．５：ハブ接続）
図７は、本実施形態に係る通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがハブ接続されている場合のコマンド・応答の送受信を説明するための図である。
【００５３】
図７（ａ）は、マスタ装置２が、スレーブ装置１ｂに対して、個別コマンドを発行した場合を示している。図７（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。ハブ３は、ＩＤ＝２であることを検出して、当該コマンドをスレーブ装置１ｂへ送信する。スレーブ装置１ｂは、受信したコマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、応答ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。ハブ３は、スレーブ装置１ｂからの応答ＲＥＳを受信すると、当該応答ＲＥＳをそのままマスタ装置２へ送信する。マスタ装置２は、当該応答ＲＥＳを受信することで、スレーブ装置１ｂが個別コマンドを受信したと判断する。
図７（ｂ）は、マスタ装置２が、スレーブ装置１ａ〜１ｃに対して、ブロードキャストコマンドを発行した場合を示している。
【００５４】
図７（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。ハブ３は、当該コマンドがブロードキャストコマンドであることを検出して、同じコマンドをスレーブ装置１ａ〜１ｃへそのまま送信する。スレーブ装置１ａ〜１ｃは、受信した当該コマンドがブロードキャストコマンドであることを検出して、受信したコマンドと同じコマンドを送信する。このとき、スレーブ装置１ａ〜１ｃは、それぞれ、受信したコマンドおよび付加されたＰａｙｌｏａｄに基づく処理を実行し、その実行結果を、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３として付加して出力してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま出力してもよい。
ハブ３は、（１）スレーブ装置１ａの送信したコマンドおよびデータＰａｙｌｏａｄ０１と、（２）スレーブ装置１ｂの送信したコマンドおよびＰａｙｌｏａｄ０２と、（３）スレーブ装置１ｃの送信したコマンドおよびＰａｙｌｏａｄ０３と、を受信する。そして、ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンドとデータを処理し、処理した結果をＰａｙｌｏａｄ４としてマスタ装置２へ送信する。Ｐａｙｌｏａｄ４は、コマンドの内容によって異なり、例えば、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３のいずれかを選択したものを、Ｐａｙｌｏａｄ４としてもよく、あるいは、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３の全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ４としてもよく、あるいは、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３の全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ４としてもよい。
【００５５】
マスタ装置２は、自身が発行したコマンドと同一のコマンドＣＭＤ  ＢＲを受信すると、マスタ装置２が発行したブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断する。そして、マスタ装置２は、受信したコマンドにＰａｙｌｏａｄ付加されていれば、その内容に基づいて処理を行う。
以上説明したように、通信システム１０００における接続形態が、（Ａ）マスタ装置１とスレーブ装置との１対１接続、および、（Ｂ）マスタ装置と複数のスレーブ装置との接続、のいずれの場合であっても、スレーブ装置１および１ａ〜１ｃは、以下の処理を行う。
（１）スレーブ装置は、受信した当該コマンドが個別コマンドであるかブロードキャストコマンドであるかを検出する。
（２）受信したコマンドが個別コマンドの場合、スレーブ装置は、コマンドに含まれるＩＤが自身のＩＤと一致すれば応答を返すとともに、コマンドに指示された内容の処理を実行し、一致しない場合、受信した当該コマンドをそのまま送信する。
（３）受信したコマンドがブロードキャストコマンドの場合、スレーブ装置は、受信した当該コマンドの処理を行い、処理結果を新たなＰａｙｌｏａｄとして同じコマンドを送信する（受信したコマンドと同じ内容のコマンド（ブロードキャストコマンド）に、処理結果を含む新たなＰａｙｌｏａｄを付加したデータを送信する）。
【００５６】
マスタ装置２は、個別コマンドを発行した場合、その個別コマンドに対応する応答を受信すると、送信先のスレーブ装置が当該個別コマンドを受信したと判断する。一方、マスタ装置２は、ブロードキャストコマンドを発行した場合、マスタ装置２が送信したコマンドを受信すると、接続された全てのスレーブ装置（通信システム１０００において、マスタ装置２と通信可能な状態で接続されている全てのスレーブ装置）がコマンドを受信したと判断する。
このようにして、通信システム１０００において、マスタ装置２とスレーブ装置１、１ａ〜１ｃとは、コマンドと応答を用いた通信処理を行うことができる。
＜１．３：第１のコンフィギュレーション処理＞
次に、本実施形態に係る通信システム１０００における、マスタ装置とスレーブ装置との間の第１のコンフィギュレーション処理の動作について、図面を参照しながら、説明する。
【００５７】
（１．３．１：パラメータ表示部、パラメータ設定部の構成）
図８は、通信システム１０００におけるマスタ装置２およびスレーブ装置１、１ａ〜１ｃの備えるパラメータ表示部２１１Ｍに含まれる通信能力パラメータＣＰＢＬ、パラメータ設定部２１２Ｍに含まれる通信設定パラメータＳＥＴＴＩＮＧを示している。
通信能力パラメータＣＰＢＬは、当該マスタ装置またはスレーブ装置のサポートする機能・性能や所要処理時間を示すパラメータを含む。
通信設定パラメータＳＥＴＴＩＮＧは、マスタ装置とスレーブ装置との間の通信で実際に使用するパラメータであり、通信設定パラメータＳＥＴＴＩＮＧにより保持されるパラメータは、通信能力パラメータＣＰＢＬに含まれる全てのパラメータあるいは一部のパラメータである。
【００５８】
図８では、パラメータとして、「インタフェース性能」「データブロック長」「転送単位ブロック数」「省電力モード移行時間」「省電力モード復帰時間」「同期シンボル数」「ブロック間隔」が設定されており、これらの設定パラメータが通信能力パラメータＣＰＢＬとして保持される。また、上記設定パラメータは、通信設定パラメータＳＥＴＴＩＮＧとして設定可能である（通信設定パラメータＳＥＴＴＩＮＧに、上記設定パラメータを含めることができる）。
なお、パラメータ（設定パラメータ）は、上記に限定されるものではなく、必要に応じて、その他のパラメータを設定してもよいし、不要なパラメータを削除してもよい。また、複数のパラメータが１つのレジスタに含まれるものであってもよく、また、パラメータは、パラメータの内容（物理層かリンク層か、など）によって異なるレジスタに含まれるものであってもよい。さらに、パラメータ毎に別のレジスタとして、パラメータが設定（保持）されるものであってもよい。
【００５９】
図８においては、「インタフェース性能」は、インタフェースの転送性能を示すパラメータであり、そのパラメータ値は、例えば、１００ＭＢ／ｓや１Ｇｂｐｓのような数値や、ｍｏｄｅやＬｅｖｅｌ、Ｇｅｎｅｒａｔｉｏｎなどを示す値により設定される。
「データブロック長」は、データを送受信する際のデータブロックのサイズ、または、サポートするブロック長の最大値（最大ブロックサイズ）を示すパラメータであり、そのパラメータ値は、例えば、５１２バイトや１Ｋバイトのような数値（バイト数）により設定される。
「転送単位ブロック数」は、データを送受信する際にバースト転送するブロックの数を示すパラメータであり、そのパラメータ値は、例えば、４ブロックや１６ブロックのような数値（ブロック数）により設定される。なお、「転送単位ブロック数」は、固定値（転送ブロック数が当該値に限定される。）を指定されるものであってもよいし、あるいは、転送単位ブロック数の最大値が指定されるものであってもよい。
【００６０】
「省電力モード移行時間」「省電力モード復帰時間」は、マスタ装置、スレーブ装置が動作中の状態から省電力モードへ遷移する時間および省電力モードから動作可能な状態へ復帰する時間を示すパラメータであり、そのパラメータ値は、例えば、１００ｍｓのような絶対時間や１０００サイクルのようなクロックサイクル数、あるいは、１００シンボルのような移行・復帰の際に送受信されるシンボル数などにより設定される。なお、「省電力モード移行時間」、「省電力モード復帰時間」は、一例であり、これらの全部または一部は、設定されなくてもよい。
「同期シンボル数」は、マスタ装置および／またはスレーブ装置がクロックとデータの位相合わせを行うのに必要な同期用のシンボル数を示すパラメータであり、そのパラメータ値は、例えば、３２シンボル、６４シンボルのようなシンボル数を表す値（この値はシンボル数を示す値であればよく、シンボル数の値そのものでなくてもよい。）が設定される。
【００６１】
「ブロック間隔」は、転送するデータブロックとデータブロックの最小間隔を示すパラメータであり、そのパラメータは、例えば、１０ナノ秒のような絶対時間や、１０サイクルのようなクロックサイクル数、あるいは、データブロックとデータブロックの間に所定のシンボルを送る場合は２０シンボルのようなシンボル数を表す値（この値はシンボル数を示す値であればよく、シンボル数の値そのものでなくてもよい。）等により設定される。
マスタ装置２は、後述するコンフィギュレーション処理において、スレーブ装置１、１ａ〜１ｃの通信能力パラメータＣＰＢＬを取得し、取得したスレーブ装置の通信能力パラメータＣＰＢＬとマスタ装置自身の通信能力パラメータＣＰＢＬと比較し、マスタ装置とスレーブ装置の双方が満たすパラメータを決定する（マスタ装置とスレーブ装置の双方が満たす各パラメータ値を決定する）。そして、決定したパラメータを通信設定パラメータＳＥＴＴＩＮＧとして、スレーブ装置のパラメータ設定部２１２Ｍに設定する。例えば、通信設定パラメータＳＥＴＴＩＮＧの各パラメータの設定は、以下のようにして行う。
（１）「インタフェース性能」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち低いインタフェース性能を示す値を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「インタフェース性能」の値として設定する。例えば、マスタ装置のパラメータが１Ｇｂｐｓ、スレーブ装置のパラメータが５００Ｍｂｐｓである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「インタフェース性能」の値は、「５００Ｍｂｐｓ」に設定され、マスタ装置とスレーブ装置とは、５００Ｍｂｐｓ以下で通信を行う。
（２）「データブロック長」の設定
マスタ装置およびスレーブ装置が通信能力パラメータＣＰＢＬに保持する値のうち小さいブロック長を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値として設定する。例えば、マスタ装置のパラメータが５１２バイト、スレーブ装置のパラメータが５１２バイトまたは１Ｋバイトである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値は、「５１２バイト」に設定され、マスタ装置とスレーブ装置とは、ブロック長５１２バイト以下で通信を行う。また、例えば、「データブロック長」が最大ブロック長により設定される場合であって、マスタ装置のパラメータが５１２バイト（最大５１２バイト）、スレーブ装置のパラメータが１Ｋバイト（最大１Ｋバイト）である場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値は、「５１２バイト（最大５１２バイト）」に設定され、マスタ装置とスレーブ装置とは、ブロック長５１２バイト以下のブロック長のデータブロックにより通信を行う。
（３）「省電力モード移行時間」「省電力モード復帰時間」の設定
マスタ装置・スレーブ装置が通信能力パラメータＣＰＢＬに保持する値のうち長い時間を、それぞれ、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「省電力移行時間」、「省電力モード復帰時間」の値として設定する。例えば、マスタ装置のパラメータ「省電力移行時間」（「省電力復帰時間」）の値が１００ｍｓであり、スレーブ装置のパラメータ「省電力移行時間」（「省電力復帰時間」）の値が１５０ｍｓである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「省電力モード移行時間」（「省電力復帰時間」）の値は、「１５０ｍｓ」に設定され、マスタ装置とスレーブ装置とは、省電力モードの移行・復帰を１５０ｍｓ以上として通信を行う。
（４）「同期シンボル数」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち大きい方の値（同期シンボル数が多い方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「同期シンボル数」の値として設定する。なお、同期シンボル数は、データ受信端子が同期トリガーとして認識することができるシンボル数である。
（５）「ブロック間隔」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち大きい方の値（ブロック間隔が長い方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「ブロック間隔」の値として設定する。なお、ブロック間隔は、データパケット間の間隔を示すものであり、例えば、アイドルシンボルの数により表される。
（６）「転送単位ブロック数」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち小さい方の値（転送単位ブロック数が少ない方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「転送単位ブロック数」の値として設定する。なお、転送単位ブロック数は、フロー制御の１単位（Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）において、転送されるブロック数である。
【００６２】
なお、上記パラメータの設定は、一例であり、これらに限定されないことは言うまでもない。
このように、各パラメータによって、比較方法（大小比較、長短の比較）は、異なるが、通信システム１０００において、通信設定パラメータＳＥＴＴＩＮＧには、マスタ装置およびスレーブ装置の双方が満たすパラメータ値が設定される。つまり、通信システム１０００において、通信設定パラメータＳＥＴＴＩＮＧの各パラメータには、マスタ装置およびスレーブ装置のうち、性能の低いほうに合わせた値またはそれ以下の値が設定される。
以降の説明において、「パラメータの比較」として説明する処理は、ここで述べたように２つのパラメータのうち、性能の低いほうに合わせた値、または、それ以下の値を選ぶことを意味する。
【００６３】
なお、マスタ装置２は、通信設定パラメータＳＥＴＴＩＮＧに含まれるパラメータのうちの一部あるいは全部のパラメータについて、スレーブ装置１、１ａ〜１ｃが満たすパラメータを、マスタ装置２自身の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部１１２Ｓに設定し、マスタ装置２が満たすパラメータをスレーブ装置１、１ａ〜１ｃの通信設定パラメータＳＥＴＴＩＮＧとして、スレーブ装置１ａ〜１ｃのパラメータ設定部１１２Ｓに設定してもよい。このようにしても、マスタ装置２とスレーブ装置１、１ａ〜１ｃとは、お互いに相手が満たすパラメータで通信を行うことができる。
（１．３．２：１対１接続でのコンフィギュレーション処理）
図９は、マスタ装置２とスレーブ装置１とが１対１接続された場合のコンフィギュレーション処理を説明するための図である。
【００６４】
図９（ａ）において、マスタ装置２は、スレーブ装置１に対して、スレーブ装置１のパラメータ表示部の通信能力パラメータＣＰＢＬ１を読み出すためのパラメータ取得コマンド９１（Ｉｎｑ）を、スレーブ装置１のＩＤ＝１を指定して発行する。
スレーブ装置１は、マスタ装置２からのコマンド９１を受信すると、パラメータ表示部のパラメータＣＰＢＬ１を含む応答９２をマスタ装置２へ送信する。
図９（ｂ）において、マスタ装置２は、応答９２に含まれるＣＰＢＬ１をマスタ装置２自身のパラメータ設定部に設定し、マスタ装置２自身のパラメータ表示部に保持したパラメータＣＰＢＬ０をスレーブ装置１へ設定するため、パラメータ設定コマンド９３（Ｓｅｔ）をスレーブ装置１へ送信する。
スレーブ装置１は、コマンド９３に含まれるＣＰＢＬ０を自身のパラメータ設定部に設定し、マスタ装置２に対して応答９４を送信する。
【００６５】
１対１接続の通信システム１０００において、以上の処理が実行されることで、図９（ｃ）の状態になる。つまり、マスタ装置２とスレーブ装置１とは、それぞれ、自身のパラメータ設定部に、送信相手のパラメータ表示部に保持されているパラメータを設定し、以降設定したパラメータを用いて通信を行う。これにより、マスタ装置２とスレーブ装置１とは、それぞれ、通信相手の通信能力を知ることができ、１対１接続の通信システム１０００において、効率の良い通信を行うことができる。
なお、以下のようにして、１対１接続の通信システム１０００において、コンフィギュレーション処理を実行してもよい。すなわち、図９（ｄ）に示すように、マスタ装置２は、図９（ｂ）で取得したスレーブ装置１の通信能力パラメータＣＰＢＬ１と自身の通信能力パラメータＣＰＢＬ０とを比較して、マスタ装置２およびスレーブ装置１の両方が満たす共通のパラメータＰａｒａｍ０１を、マスタ装置２自身のパラメータ設定部に設定する。そして、マスタ装置２は、スレーブ装置１に対して、パラメータ設定コマンド９５を発行し、スレーブ装置１のパラメータ設定部に、共通のパラメータＰａｒａｍ０１を設定する。この場合、図９（ｅ）に示すように、マスタ装置２およびスレーブ装置１では、通信設定パラメータＳＥＴＴＩＮＧにおいて、共通のパラメータＰａｒａｍ０１が設定され、以降設定されたパラメータＰａｒａｍ０１を用いて通信が行なわれる。
【００６６】
（１．３．３：リング接続での第１のコンフィギュレーション処理）
図１０は、通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがリング接続された場合の第１のコンフィギュレーション処理を説明するための図である。
図１０（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加してパラメータ取得コマンド１０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【００６７】
スレーブ装置１ａは、パラメータ取得コマンド１０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部の通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果Ｃｏｍｐ１を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０２を次のスレーブ装置１ｂへ送信する。なお、Ｃｏｍｐ１は、比較対象を初期値Ｉｎｉｔとスレーブ装置１ａのパラメータ表示部の通信能力パラメータＣＰＢＬとし、初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成するパラメータごとに比較された結果に基づいて設定されたパラメータ値から構成される。
ここで「比較」とは、前述したとおり、２つのパラメータの値のうち、性能の低い方の値またはその値以下の任意の値を選ぶことを意味する。
【００６８】
スレーブ装置１ｂもパラメータ取得コマンド１０２を受信すると、Ｃｏｍｐ１とＣＰＢＬ２とを比較し、その比較結果Ｃｏｍｐ２を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０３を次のスレーブ装置１ｃへ送信する。
スレーブ装置１ｃも同様に、Ｃｏｍｐ２とＣＰＢＬ３とを比較し、その比較結果Ｃｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０４を送信する。
そして、マスタ装置２は、パラメータ取得コマンド１０４を受信する。このパラメータ取得コマンド１０４に付加されているペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃのそれぞれが有する通信能力のうち、最も低い値に設定されている。すなわち、ペイロードＣｏｍｐ３の各パラメータの値（Ｐａｒａ＿ｃｏｍｐ３［ｉ］）は、スレーブ装置１ａ〜１ｃの通信能力パラメータＣＰＢＬとして保持されているパラメータ値（Ｐａｒａ＿Ｓ１ａ［ｉ］、Ｐａｒａ＿Ｓ１ｂ［ｉ］、Ｐａｒａ＿Ｓ１ｃ［ｉ］）の最低値（通信能力が最も低い値）に設定されている。
【００６９】
すなわち、最低値（通信能力が最も低い値）が最小値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍｉｎ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
であり、
最低値（通信能力が最も低い値）が最大値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍａｘ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
である。
【００７０】
なお、Ｍｉｎ（）は、要素の最小値を取得する関数であり、Ｍａｘ（）は、要素の最大値を取得する関数である。
また、Ｐａｒａ＿Ｓ１ａ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ａの通信能力パラメータＣＰＢＬに保持されているパラメータ値である
Ｐａｒａ＿Ｓ１ｂ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｂの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
Ｐａｒａ＿Ｓ１ｃ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｃの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
マスタ装置２は、パラメータ取得コマンド１０４を受信すると、受信した値（ペイロードＣｏｍｐ３に設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。つまり、
（１）パラメータ取得コマンド１０１に初期値Ｉｎｉｔとして、マスタ装置２の通信能力パラメータＣＰＢＬ０を設定した場合、マスタ装置２は、Ｐａｒａｍ０１２３＝Ｃｏｍｐ３として、Ｐａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。
（２）一方、パラメータ取得コマンド１０１に初期値Ｉｎｉｔとして、マスタ装置２の通信能力パラメータＣＰＢＬ０を設定しなかった場合は、マスタ装置２が受信した値Ｃｏｍｐ３と、マスタ装置２の通信能力パラメータＣＰＢＬ０とのうちの通信能力が低い値にパラメータを設定することでＰａｒａｍ０１２３を取得し、取得したＰａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。
【００７１】
そして、図１０Ａ（ｂ）に示すように、マスタ装置２は、設定した値（Ｐａｒａｍ０１２３）をパラメータ設定コマンド１０５のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１０５を受信すると、Ｐａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３をスレーブ装置自身のパラメータ設定部に設定し、受信したコマンド１０５をそのまま送信する。
このようにして、マスタ装置２がコマンド１０５を受信すると、リング接続の通信システム１０００において、コンフィギュレーション処理が完了する。
ここで、図１０Ｂ（ｃ）、（ｄ）を用いて、通信システム１０００において、図８に示したパラメータ「ブロック間隔」を設定する例について、説明する。
【００７２】
図１０Ｂ（ｃ）に示すように、マスタ装置２の通信能力パラメータのパラメータ「ブロック間隔」は「４」であり、スレーブ装置１ａのパラメータ「ブロック間隔」は「０」であり、スレーブ装置１ｂのパラメータ「ブロック間隔」は「４」であり、スレーブ装置１ｃのパラメータ「ブロック間隔」は「２」であるものとする。
図１０Ｂ（ｃ）に示すように、マスタ装置２は、パラメータ「ブロック間隔」の初期値「２」をＰａｙｌｏａｄとして付加してパラメータ取得コマンド１０１をブロードキャストコマンドとして送信する。
スレーブ装置１ａは、パラメータ取得コマンド１０１を受信すると、当該コマンドに付加された初期値「２」と自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「０」とを比較する。ブロック間隔の場合、パラメータ「ブロック間隔」の値が大きい方が通信能力が低いので、Ｍａｘ（）関数を用いて、比較する。つまり、
Ｍａｘ（２，０）＝２
により、スレーブ装置１ｂは、比較結果「２」を取得する。そして、スレーブ装置１ｂは、その比較結果「２」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０２を次のスレーブ装置１ｂへ送信する。
【００７３】
スレーブ装置１ｂは、パラメータ取得コマンド１０２を受信すると、同様に、受信したコマンドのＰａｙｌｏａｄのパラメータ「ブロック間隔」の値「２」と、自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「４」とを比較する。つまり、
Ｍａｘ（２，４）＝４
により、スレーブ装置１ｂは、比較結果「４」を取得する。そして、スレーブ装置１ｂは、その比較結果「４」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０３を次のスレーブ装置１ｂへ送信する。
スレーブ装置１ｃは、パラメータ取得コマンド１０３を受信すると、同様に、受信したコマンドのＰａｙｌｏａｄのパラメータ「ブロック間隔」の値「４」と、自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「２」とを比較する。つまり、
Ｍａｘ（４，２）＝４
により、スレーブ装置１ｃは、比較結果「４」を取得する。そして、スレーブ装置１ｃは、その比較結果「４」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０４をマスタ装置２へ送信する。
【００７４】
そして、マスタ装置２は、パラメータ取得コマンド１０４を受信する。このパラメータ取得コマンド１０４に付加されているペイロードのパラメータ「ブロック間隔」の値「４」は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、マスタ装置２およびスレーブ装置１ａ〜１ｃのそれぞれが有する通信能力（ブロック間隔についての通信能力）の下限値「４」（この場合は最大値「４」）に設定されている。
マスタ装置２は、パラメータ取得コマンド１０４を受信すると、受信した値（ペイロードに設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータ「ブロック間隔」の値「４」をマスタ装置２自身のパラメータ設定部に設定する。そして、図１０Ｂ（ｄ）に示すように、マスタ装置２は、設定した値をパラメータ設定コマンド１０５のＰａｙｌｏａｄにパラメータ「ブロック間隔」の値「４」を付加して、ブロードキャストコマンドとして送信する。
【００７５】
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１０５を受信すると、Ｐａｙｌｏａｄに含まれるパラメータ「ブロック間隔」の値「４」をスレーブ装置自身のパラメータ設定部に設定し、受信したコマンド１０５をそのまま送信する。
このようにして、マスタ装置２がコマンド１０５を受信すると、リング接続の通信システム１０００において、コンフィギュレーション処理が完了する。つまり、この場合、マスタ装置およびスレーブ装置１ａ〜１ｃの通信設定パラメータのパラメータ「ブロック間隔」の値は「４」に設定されて、コンフィギュレーション処理が完了する。
図１０Ｃ（ｅ）、（ｆ）は、通信システム１０００において、マスタ装置２およびスレーブ装置１ａ〜１ｃにより実行される第１のコンフィギュレーション処理におけるフローチャートである。
【００７６】
≪マスタ装置側の処理≫
（Ｓ１００１）：
図１０Ｃ（ｅ）に示すように、マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定する（Ｓ１００１）。
（Ｓ１００２）：
マスタ装置２は、Ｐａｙｌｏａｄに初期値が設定されたパラメータ取得コマンドをブロードキャストコマンドとして発行する(Ｓ１００２)。
（Ｓ１００３）：
マスタ装置２は、マスタ装置２が発行したコマンドを受信するまで（発行したコマンドが返信されるまで）待つ（Ｓ１００３）。なお、ここでは、初期値はマスタ装置２が満たすパラメータを含むものとするが、先に述べたようにこれ以外の値を初期値としてもよい。
（Ｓ１００４）：
マスタ装置２は、コマンドを受信すると、Ｐａｙｌｏａｄに含まれる値をＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１００４）。
（Ｓ１００５）：
マスタ装置２は、さらに、受信したＰａｙｌｏａｄを新たに送信Ｐａｙｌｏａｄとしてする（Ｓ１００５）。
（Ｓ１００６）：
マスタ装置２は、さらに、受信したＰａｙｌｏａｄを新たな送信Ｐａｙｌｏａｄとしたパラメータ設定コマンドをブロードキャストコマンドとして発行する（Ｓ１００６）。
（Ｓ１００７）：
そして、マスタ装置２は、発行したコマンドを受信する（Ｓ１００７）。
【００７７】
以上により、通信システム１０００において、コンフィギュレーション処理が終了する。
≪スレーブ装置側の処理≫
（Ｓ１００８）：
また、図１０Ｃ（ｆ）に示すように、スレーブ装置１ａ〜１ｃは、コマンドを受信する（Ｓ１００８）。
（Ｓ１００９）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドであるかを判定する（Ｓ１００９）。
（Ｓ１０１０）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドであった場合、受信コマンドに付加されたＰａｙｌｏａｄと自身のパラメータ表示部に保持するパラメータを比較する（Ｓ１０１０）。
（Ｓ１０１１）：
スレーブ装置１ａ〜１ｃは、比較結果を新たなＰａｙｌｏａｄとする（Ｓ１０１１）。
（Ｓ１０１２）：
スレーブ装置１ａ〜１ｃは、Ｓ１０１１で生成した新たなＰａｙｌｏａｄを付加したパラメータ取得コマンドを発行する（Ｓ１０１２）。
（Ｓ１０１３）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドでない場合、受信したコマンドがパラメータ設定コマンドであるかを判定する（Ｓ１０１３）。
（Ｓ１０１４）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ設定コマンドであった場合、受信コマンドに付加されたＰａｙｌｏａｄを自身のＳＥＴＴＩＮＧとしてパラメータ設定部に設定する（Ｓ０１１４）。
（Ｓ１０１５）：
スレーブ装置１ａ〜１ｃは、受信したパラメータ設定コマンドをそのまま送信する（Ｓ１０１５）。
（Ｓ１０１６）：
スレーブ装置１ａ〜１ｃは、受信したコマンドが、パラメータ取得コマンド、パラメータ設定コマンドのいずれでもない場合、受信したコマンドの種別に応じた処理を行う（Ｓ１０１６）。
【００７８】
このようにして、通信システム１０００では、マスタ装置２とスレーブ装置１ａ〜１ｃが、パラメータ取得および設定コマンドにより、コンフィギュレーション処理を行うことができる。
なお、図１０Ｄ（ｇ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃは、マスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することになる。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常に、マスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【００７９】
さらに、マスタ装置２とスレーブ装置１ａ〜１ｃとが、同一基板上に実装されたようなエンベデッドシステムでは、予め設定するパラメータをマスタ装置の持つＲＯＭやフラッシュメモリなどの不揮発性メモリに保持しておき、当該システムの初期化時にパラメータ設定コマンドで、ＲＯＭや不揮発性メモリ等に保持されているパラメータを設定することも可能である。この場合、予め設定されたパラメータを用いて、スレーブ装置１ａ〜１ｃのパラメータを設定することができるため、パラメータ取得コマンドは、不要となる。したがって、この場合、通信システム１０００において、初期化時間を短縮することが可能である。
（１．３．４：チェーン接続での第１のコンフィギュレーション処理）
図１２は、通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃがチェーン接続された場合の第１のコンフィギュレーション処理を説明するための図である。
【００８０】
図１２（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加してパラメータ取得コマンド１２０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
スレーブ装置１ａは、パラメータ取得コマンド１２０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部の通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果Ｃｏｍｐ１をＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０２を次のスレーブ装置１ｂへ送信する。なお、Ｃｏｍｐ１は、比較対象を初期値Ｉｎｉｔとスレーブ装置１ａのパラメータ表示部の通信能力パラメータＣＰＢＬとし、初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成するパラメータごとに比較された結果に基づいて設定されたパラメータ値から構成される。
【００８１】
スレーブ装置１ｂもパラメータ取得コマンド１２０２を受信すると、Ｃｏｍｐ１とＣＰＢＬ２とを比較し、その比較結果Ｃｏｍｐ２をＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０３を次のスレーブ装置１ｃへ送信する。
スレーブ装置１ｃも同様に、Ｃｏｍｐ２とＣＰＢＬ３とを比較し、その比較結果Ｃｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０４を送信する。
スレーブ装置１ｂ、１ａは、図１２（ａ）に示すように、スレーブ装置１ｃから送信されたパラメータ取得コマンド１２０４を受信すると、その受信したパラメータ取得コマンド１２０４をそのまま送信する。
そして、マスタ装置２は、スレーブ装置１ａが送信したパラメータ取得コマンド１２０４を受信する。このパラメータ取得コマンド１２０４に付加されているペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たす通信パラメータとなっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値（Ｐａｒａ＿ｃｏｍｐ３［ｉ］）は、スレーブ装置１ａ〜１ｃの通信能力パラメータＣＰＢＬとして保持されているパラメータ値（Ｐａｒａ＿Ｓ１ａ［ｉ］、Ｐａｒａ＿Ｓ１ｂ［ｉ］、Ｐａｒａ＿Ｓ１ｃ［ｉ］）の最低値（通信能力が最も低い値）に設定されている。
【００８２】
すなわち、最低値（通信能力が最も低い値）が最小値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍｉｎ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
であり、
最低値（通信能力が最も低い値）が最大値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍａｘ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
である。
【００８３】
なお、Ｍｉｎ（）は、要素の最小値を取得する関数であり、Ｍａｘ（）は、要素の最大値を取得する関数である。
また、Ｐａｒａ＿Ｓ１ａ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ａの通信能力パラメータＣＰＢＬに保持されているパラメータ値である
Ｐａｒａ＿Ｓ１ｂ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｂの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
Ｐａｒａ＿Ｓ１ｃ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｃの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
マスタ装置２は、パラメータ取得コマンド１２０４を受信すると、受信した値（ペイロードＣｏｍｐ３に設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３をＳＥＴＴＩＮＧとしてマスタ装置２自身のパラメータ設定部に設定する。そして、図１２（ｂ）に示すように、マスタ装置２は、設定した値をパラメータ設定コマンド１２０５のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
【００８４】
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１２０５を受信すると、当該コマンドのＰａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３を自身のパラメータ設定部に設定すると共に、受信したコマンド１０５をそのまま送信する。
このようにして、パラメータ設定コマンド１２０５は、スレーブ装置１ａ〜１ｃの間で転送され、マスタ装置２がパラメータ設定コマンド１２０５を受信すると、通信システム１０００において、コンフィギュレーション処理が完了する（図１２（ｂ））。
なお、図１２（ｃ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃはマスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することにある。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常にマスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【００８５】
（１．３．５：ハブ接続での第１のコンフィギュレーション処理）
図１４Ａは、マスタ装置２とスレーブ装置１ａ〜１ｃとがチェーン接続された場合の第１のコンフィギュレーション処理を説明するための図である。
図１４Ａ（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加したパラメータ取得コマンド１４０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【００８６】
図１４Ａ（ａ）の場合、ハブ３は、スレーブ装置１ａ〜１ｃに対して、パラメータ取得コマンド１４０１を送信する。
スレーブ装置１ａ〜１ｃは、ハブ３からのパラメータ取得コマンド１４０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果を、それぞれＣｏｍｐ０１、Ｃｏｍｐ０２、Ｃｏｍｐ０３として、Ｐａｙｌｏａｄに付加したパラメータ取得コマンド１４０２、１４０３、１４０４をハブへ送信する。
ハブ３は、スレーブ装置１ａ〜１ｃからコマンド１４０２〜１４０４を受信すると、以下の（１）〜（３）の処理を行う。
（１）ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンド１４０２〜１４０４に付加されているペイロードＣｏｍｐ０１、Ｃｏｍｐ０２、Ｃｏｍｐ０３から、スレーブ装置１ａ〜１ｃの通信能力を示すパラメータ値を取得する。
（２）ハブ３は、取得したスレーブ装置１ａ〜１ｃの通信能力を示すパラメータ値から、パラメータ値ごとに、最低値（通信能力が最低である値）を検出し（比較処理を実行し）、検出した値を、Ｃｏｍｐ３の対応するパラメータ値に設定する。このようにして、ハブ３は、比較結果Ｃｏｍｐ３を生成する。
（３）ハブ３は、Ｐａｙｌｏａｄを比較した結果であるＣｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１４０５を、マスタ装置へ送信する。
【００８７】
そして、マスタ装置２は、ハブ３が送信したパラメータ取得コマンド１０４を受信すると、コマンド１０４に付加されているペイロードの値Ｃｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃのそれぞれが有する通信能力の下限値に設定されている。
そして、マスタ装置２は、図１４Ａ（ｂ）に示すように、パラメータ取得コマンド１４０５を受信すると、当該コマンドのペイロードに設定されている値に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１４０６のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
【００８８】
ハブ３は、スレーブ装置１ａ〜１ｃに対して、マスタ装置２から受信したブロードキャストコマンド１４０６を送信する。
スレーブ装置１ａ〜１ｃは、ハブ３からのブロードキャストコマンド１４０６を受信すると、当該コマンドのＰａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定すると共に、受信したコマンド１０５をそのまま送信する。
ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンド１４０６を、そのままマスタ装置２へ送信する。
このようにして、通信システム１０００において、ブロードキャストコマンド１４０６は、スレーブ装置１ａ〜１ｃへ転送され、マスタ装置２が受信するとコンフィギュレーション処理が完了する。
【００８９】
なお、図１４Ｂ（ｃ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃは、マスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することになる。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常にマスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【００９０】
なお、図１４Ｃに示すように、通信システム１０００において、ハブ３により、コマンド（データ）が、（１）マスタ装置２、（２）スレーブ装置１ａ、（３）スレーブ装置１ｂ、（４）スレーブ装置１ｃという順番で送信されるようにハブ３を構成すれば、上記リング接続と等価であるとみなすことができる。したがって、この場合、通信システム１０００において、上記で説明したリング接続でのコンフィギュレーション処理と同様の処理により、コンフィギュレーション処理を実行することができる。なお、図１４Ｃ（ａ）に示した状態は、図１０Ａ（ａ）に示した状態と同様であり、また、図１４Ｃ（ｂ）に示した状態は、図１０Ａ（ｂ）に示した状態と同様である。
以上、図面を用いて説明したとおり、第１実施形態に係る通信システム１０００では、マスタ装置と複数のスレーブ装置とが接続された通信システムにおいて、マスタ装置がパラメータ取得コマンドおよびパラメータ設定コマンドをブロードキャストコマンドで発行し、コンフィギュレーション処理を行う。このとき、通信システム１０００において、発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、通信システム１０００では、少ないコマンド数で全てのスレーブ装置のコンフィギュレーションを行うことができる。このため、通信システム１０００では、スレーブ装置の初期化時間を短縮することができる。
【００９１】
また、通信システム１０００において、マスタ装置およびスレーブ装置の動作および処理中に送受信されるパラメータ取得コマンドおよびパラメータ設定コマンドは、マスタ装置とスレーブ装置の接続形態によらず同じであり、マスタ装置とスレーブ装置が、１対１接続の場合であっても、１対多接続の場合であっても、通信システム１０００では、同じパラメータ取得コマンドおよびパラメータ設定コマンドをブロードキャストコマンドとして発行してコンフィギュレーションを行うことも可能である。これによって、同じマスタ装置、スレーブ装置を用いて様々な接続形態で通信システムを柔軟に構成することができる。
［第２実施形態］
次に、本発明の第２実施形態について、説明する。
【００９２】
なお、本実施形態の通信システムは、第１実施形態の通信システム１０００と同様の構成を有している。ただし、通信システムでの処理の方法が異なる。
＜２．１：第２のコンフィギュレーション処理＞
以下、図面を用いて、第２実施形態に係る通信システムにおける、第２のコンフィギュレーション処理を説明する。なお、特に明記しない限り、用いられる記号、番号等は、第１実施形態と同じものとする。
（２．１．１：リング接続での第２のコンフィギュレーション処理）
まず、リング接続での第２のコンフィギュレーション処理について、説明する。
図１１Ａ、Ｂは、本実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがリング接続された場合の第２のコンフィギュレーション処理を説明するための図である。
【００９３】
図１１Ａ（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
スレーブ装置１ａは、パラメータ設定コマンド１１１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部の通信能力パラメータＣＰＢＬ１とを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬ１を構成する各パラメータごとに比較し）、その比較結果Ｐａｒａｍ０１を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する。そして、スレーブ装置１ａは、比較結果Ｐａｒａｍ０１を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１２を次のスレーブ装置１ｂへ送信する。
【００９４】
スレーブ装置１ｂも、スレーブ装置１ａからのパラメータ設定コマンド１１２を受信すると、Ｐａｒａｍ０１とＣＰＢＬ２とを比較し、その比較結果Ｐａｒａｍ０１２を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、比較結果Ｐａｒａｍ０１２を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１３を次のスレーブ装置１ｃへ送信する。
スレーブ装置１ｃも、同様に、Ｐａｒａｍ０１２とＣＰＢＬ３とを比較し、その比較結果Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、比較結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１４をマスタ装置２に送信する。
そして、マスタ装置２は、パラメータ設定コマンド１１４を受信する。このパラメータ設定コマンド１１４に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
【００９５】
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１１Ｂ（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１１４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明する図である。
図１１Ｂ（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１１５を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１１５を受信し、当該コマンドに付加されているＰａｒａｍ０１２３と自身のパラメータ表示部の通信能力パラメータＣＰＢＬ１〜３とを比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１１５を送信するように動作する。
【００９６】
そして、マスタ装置２が、パラメータ設定コマンド１１５を受信すると、コンフィギュレーション処理が完了する。
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１１Ｂ（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１１４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【００９７】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
次に、フローチャートを用いて、本実施形態の第２のコンフィギュレーション処理について、説明する。
図１１Ｃ（ｃ）、（ｄ）は、マスタ装置２およびスレーブ装置１ａ〜１ｃの第２のコンフィギュレーション処理におけるフローチャートである。
≪マスタ装置側の処理≫
（Ｓ１１０１）：
図１１Ｃ（ｃ）に示すように、マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定する（Ｓ１１０１）。
（Ｓ１１０２）：
マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定したパラメータ取得コマンドをブロードキャストコマンドとして発行する(Ｓ１１０２)。
（Ｓ１１０３）：
マスタ装置２は、マスタ装置２が発行したコマンドを受信するまで（発行したコマンドが返信されるまで）待つ（Ｓ１１０３）。なお、ここでは、初期値は、マスタ装置２が満たすパラメータを含むものとするが、先に述べたようにこれ以外の値を初期値としてもよく、例えば、マスタ装置２のパラメータ表示部に保持するパラメータＣＰＢＬ０を初期値に設定してもよい。
（Ｓ１１０４）：
マスタ装置２は、コマンドを受信すると、受信コマンドに付加されたＰａｙｌｏａｄをＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１１０４）。
（Ｓ１１０５）：
そして、マスタ装置２は、受信したＰａｙｌｏａｄと送信したＰａｙｌｏａｄとが一致するかどうかを検出する（Ｓ１１０５）。一致する場合には、コンフィギュレーション処理を完了する。
（Ｓ１１０６）：
マスタ装置２は、上記の検出の結果、受信したＰａｙｌｏａｄと送信したＰａｙｌｏａｄとが一致しない場合、受信したＰａｙｌｏａｄを送信Ｐａｙｌｏａｄとする（Ｓ１１０６）。
（Ｓ１１０７）：
マスタ装置２は、受信したＰａｙｌｏａｄを送信Ｐａｙｌｏａｄとしたパラメータ設定コマンドをブロードキャストコマンドとして発行する（Ｓ１１０７）。
（Ｓ１１０８）：
そして、マスタ装置２は、マスタ装置２が発行したコマンドを受信する（Ｓ１００８）。これで、コンフィギュレーション処理は終了する。
【００９８】
≪スレーブ装置側の処理≫
図１１Ｃ（ｄ）は、スレーブ装置１ａ〜１ｃの処理を示したものである。
（Ｓ１１０９）：
スレーブ装置１ａ〜１ｃは、コマンドを受信する（Ｓ１１０９）。
（Ｓ１１１０）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ設定コマンドであるか否かを判定する（Ｓ１１１０）。
（Ｓ１１１１）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１０での判定の結果、受信したコマンドがパラメータ設定コマンドであった場合、当該受信コマンドに付加されているＰａｙｌｏａｄと自身のパラメータ表示部に保持するパラメータ（通信能力パラメータＣＰＢＬ）とを比較する（Ｓ１１１１）。
（Ｓ１１１２）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１１での比較結果を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１１１２）。
（Ｓ１１１３）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１１での比較結果をＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定したものを、新たなＰａｙｌｏａｄとする（Ｓ１１１３）。
（Ｓ１１１４）：
スレーブ装置１ａ〜１ｃは、上記の新たなＰａｙｌｏａｄを付加したパラメータ取得コマンドを発行する（Ｓ１１１４）。
【００９９】
このようにして、本実施形態の通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃとは、パラメータ設定コマンドによりコンフィギュレーション処理を行うことができる。
（２．１．２：チェーン接続での第２のコンフィギュレーション処理）
次に、チェーン接続での第２のコンフィギュレーション処理について、説明する。
図１３は、第２実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがチェーン接続された場合の第２のコンフィギュレーション処理を説明するための図である。
図１３（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０１００】
スレーブ装置１ａは、パラメータ設定コマンド１３０１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ１とを比較し、その比較結果パラメータＰａｒａｍ０１を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定するとともに、その比較結果パラメータＰａｒａｍ０１を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０２を次のスレーブ装置１ｂへ送信する。
スレーブ装置１ｂも、パラメータ設定コマンド１３０２を受信すると、Ｐａｒａｍ０１とＣＰＢＬ２とを比較し、その比較結果Ｐａｒａｍ０１２を、通信設定パラメータＳＥＴＴＩＮＧとしてパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１２を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０３を次のスレーブ装置１ｃへ送信する。
【０１０１】
スレーブ装置１ｃも、同様に、Ｐａｒａｍ０１２とＣＰＢＬ３とを比較し、その比較結果Ｐａｒａｍ０１２３を、通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したコマンド１３０４を送信する。
スレーブ装置１ｂ，１ａは、受信したコマンド１３０４をそのまま送信する。
そして、マスタ装置２は、パラメータ設定コマンド１３０４を受信する。このパラメータ設定コマンド１３０４に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
【０１０２】
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１３（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１３０４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１３０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明するための図である。
図１３（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１３０５を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１３０５を受信し、当該コマンドに付加されているＰａｒａｍ０１２３と自身のパラメータ表示部の保持する通信能力パラメータＣＰＢＬ１〜３とを比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１３０５を送信するように動作する。
【０１０３】
そして、マスタ装置２が、コマンド１３０５を受信すると、コンフィギュレーション処理が完了する。
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１３（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１３０４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【０１０４】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
（２．１．３：ハブ接続での第２のコンフィギュレーション処理）
次に、ハブ接続での第２のコンフィギュレーション処理について、説明する。
図１５Ａ、Ｂは、第２実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがハブ接続された場合の第２のコンフィギュレーション処理を説明するための図である。
【０１０５】
図１５Ａ（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１５０１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
ハブ３は、マスタ装置２からのパラメータ設定コマンド１５０１を受信すると、受信したコマンドをスレーブ装置１ａ〜１ｃへ送信する。
スレーブ装置１ａ〜１ｃは、ハブ３からのパラメータ設定コマンド１５０１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部の保持されている通信能力パラメータＣＰＢＬ１〜３とを比較し、その比較結果Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を、それぞれ、自身の通信設定パラメータＳＥＴＴＩＮＧとしてパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を、新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１５０２、１５０３、１５０４を、それぞれ、ハブ３へ送信する。
【０１０６】
ハブ３は、受信したコマンド１５０２〜１５０４のＰａｙｌｏａｄの値Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を比較し、その結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したにコマンド１５０５をマスタ装置２へ送信する。
そして、マスタ装置２がパラメータ設定コマンド１５０５を受信する。このパラメータ設定コマンドコマンド１５０５に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
【０１０７】
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１５Ｂ（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１５０５のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１５０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明するための図である。
図１５Ｂ（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１５０６を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、ハブ３経由で、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１５０６を受信し、コマンドに付加されたＰａｒａｍ０１２３と自身のパラメータ表示部の保持する通信能力パラメータＣＰＢＬ１〜３とを、それぞれ、比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１５０６を送信するように動作する。
【０１０８】
そして、マスタ装置２が、コマンド１５０６を受信すると、コンフィギュレーション処理が完了する。
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１５Ｂ（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１５０５のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１５０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【０１０９】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
なお、図１５Ｃに示すように、通信システム１０００において、ハブ３により、コマンド（データ）が、（１）マスタ装置２、（２）スレーブ装置１ａ、（３）スレーブ装置１ｂ、（４）スレーブ装置１ｃという順番で送信されるようにハブ３を構成すれば、上記リング接続と等価であるとみなすことができる。したがって、この場合、通信システム１０００において、上記で説明したリング接続でのコンフィギュレーション処理と同様の処理により、コンフィギュレーション処理を実行することができる。なお、図１５Ｃ（ａ）に示した状態は、図１１Ｂ（ｂ−１）に示した状態と同様であり、また、図１５Ｃ（ｂ）に示した状態は、図１１Ｂ（ｂ−２）に示した状態と同様である。
【０１１０】
以上、図面を用いて説明したとおり、本実施形態に係る通信システムにおいて、マスタ装置２は、最大２回のパラメータ設定コマンドを送信するとコンフィギュレーションを完了することができる。
さらに、マスタ装置２とスレーブ装置１ａ〜１ｃとが、同一基板上に実装されたようなエンベデッドシステムでは、予め設定するパラメータをマスタ装置の持つＲＯＭやフラッシュメモリなどの不揮発性メモリに保持しておき、当該システムの初期化時にパラメータ設定コマンドで、ＲＯＭや不揮発性メモリ等に保持されているパラメータを設定することも可能である。この場合、予め設定されたパラメータを用いて、スレーブ装置１ａ〜１ｃのパラメータを設定することができるため（上記で説明したＰａｒａｍ０１２３＝Ｐａｒａｍ０の場合に相当する状態を保証するように、予めパラメータを設定しておくことで）、常に、パラメータ設定コマンドを一度発行するとコンフィギュレーション処理を完了させることができる。
【０１１１】
［他の実施形態］
以上、図面を用いて本発明の実施形態を説明したが、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。例えば、スレーブ装置の数は、１以上の任意の数が可能であり、１対１接続の場合でもブロードキャストコマンドを用いてコンフィギュレーション処理を行うことが可能である。
また、本発明の通信システムにおいて、マスタ装置が、複数のスレーブ装置に対してブロードキャストコマンドを用いてパラメータを取得した後、個別コマンドを用いてスレーブ装置毎にパラメータを設定してもよく、あるいは、接続するスレーブ装置の種類や数によっては、全て個別コマンドでコンフィギュレーション処理が実行されるものであってもよい。
【０１１２】
さらには、本発明の通信システムにおいて、マスタ装置が、個別コマンドを用いてスレーブ装置のパラメータを取得した後、ブロードキャストコマンドを用いて一括してパラメータを設定することも可能である。
なお、上記実施形態で説明した通信システム、マスタ装置、スレーブ装置において、各ブロックは、ＬＳＩなどの半導体装置により個別に１チップ化されても良いし、一部又は全部を含むように１チップ化されても良い。
なお、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【０１１３】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
また、上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェア（ＯＳ（オペレーティングシステム）、ミドルウェア、あるいは、所定のライブラリとともに実現される場合を含む。）により実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。なお、上記実施形態に係る通信システム、マスタ装置、スレーブ装置をハードウェアにより実現する場合、各処理を行うためのタイミング調整を行う必要があるのは言うまでもない。上記実施形態においては、説明便宜のため、実際のハードウェア設計で生じる各種信号のタイミング調整の詳細については省略している。
【０１１４】
また、上記実施形態における処理方法の実行順序は、必ずしも、上記実施形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えることができるものである。
なお、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。
【産業上の利用可能性】
【０１１５】
本発明によると、マスタ装置と複数のスレーブ装置とで構成される通信システムにおいて、マスタ装置が複数のスレーブ装置のパラメータ設定を少ないコマンド数で効率よく行うことが可能なマスタ装置、スレーブ装置および通信システムを提供することができ、例えばマスタ装置としてシステムＬＳＩ、スレーブ装置としてＩＯデバイスやメモリ装置を複数接続して構成する通信システムにおいて、初期化を高速化して応答性のよいシステムを実現することができるため好適である。
【符号の説明】
【０１１６】
１０００  通信システム
１,１ａ,１ｂ,１ｃ    スレーブ装置
２    マスタ装置
３    ハブ
１１    マスタ装置ＩＦ部
２１    スレーブ装置ＩＦ部
２２    ＣＰＵ
２３    主記憶
２４    周辺回路
８１    パラメータ表示部
８２    パラメータ設定部
１２２    メモリ部
１２３    ＩＯ部
１１１Ｓ  パラメータ表示部（スレーブ装置）
１１２Ｓ  パラメータ設定部（スレーブ装置）
２１１Ｍ  パラメータ表示部（マスタ装置）
２１２Ｍ  パラメータ設定部（マスタ装置）
【図１】
2011064998.tif 000003
【図２】
2011064998.tif 000004
【図３Ａ】
2011064998.tif 000005
【図３Ｂ】
2011064998.tif 000006
【図３Ｃ】
2011064998.tif 000007
【図３Ｄ】
2011064998.tif 000008
【図４】
2011064998.tif 000009
【図５】
2011064998.tif 000010
【図６】
2011064998.tif 000011
【図７】
2011064998.tif 000012
【図８】
2011064998.tif 000013
【図９】
2011064998.tif 000014
【図１０Ａ】
2011064998.tif 000015
【図１０Ｂ】
2011064998.tif 000016
【図１０Ｃ】
2011064998.tif 000017
【図１０Ｄ】
2011064998.tif 000018
【図１１Ａ】
2011064998.tif 000019
【図１１Ｂ】
2011064998.tif 000020
【図１１Ｃ】
2011064998.tif 000021
【図１２】
2011064998.tif 000022
【図１３】
2011064998.tif 000023
【図１４Ａ】
2011064998.tif 000024
【図１４Ｂ】
2011064998.tif 000025
【図１４Ｃ】
2011064998.tif 000026
【図１５Ａ】
2011064998.tif 000027
【図１５Ｂ】
2011064998.tif 000028
【図１５Ｃ】
2011064998.tif 000029
【手続補正書】
【提出日】平成23年7月12日(2011.7.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムのスレーブ装置であって、
前記マスタ装置と通信を行うためのマスタ装置ＩＦ部を備え、
前記マスタ装置ＩＦ部は、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する、
スレーブ装置。
【請求項２】
前記マスタ装置ＩＦ部は、受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータを前記パラメータ設定部に設定する、
請求項１に記載のスレーブ装置。
【請求項３】
前記マスタ装置ＩＦ部は、パラメータ取得コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
請求項１または２に記載のスレーブ装置。
【請求項４】
前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、値の小さい方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項３に記載のスレーブ装置。
【請求項５】
前記マスタ装置ＩＦ部は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、時間の長い方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項３に記載のスレーブ装置。
【請求項６】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答を用いて通信を行う通信システムのマスタ装置であって、
前記１以上のスレーブ装置にコマンドを送信し、前記１以上のスレーブ装置からのコマンドまたは応答を受信して通信を行うスレーブ装置ＩＦ部を備え、
前記スレーブ装置ＩＦ部は、
マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信する、
マスタ装置。
【請求項７】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、
マスタ装置と、
１以上のスレーブ装置と、
を備え、
前記マスタ装置は、
前記マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信し、
前記１以上のスレーブ装置は、それぞれ、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する、
通信システム。
【請求項８】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む、
請求項７に記載の通信システム。
【請求項９】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置および前記１以上のスレーブ装置が共に満たすパラメータを含む、
請求項７に記載の通信システム。
【請求項１０】
前記スレーブ装置は、受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、前記パラメータ設定部の前記通信設定パラメータのパラメータ値を設定する、
請求項７に記載の通信システム。
【請求項１１】
前記マスタ装置は、前記パラメータ設定コマンドを発行するより前に、前記１以上のスレーブ装置のパラメータ表示部に保持される前記通信能力パラメータを取得するためのパラメータ取得コマンドを前記ブロードキャストコマンドとして送信する、
請求項７から１０のいずれかに記載の通信システム。
【請求項１２】
前記パラメータ取得コマンドに付加されるペイロードは、前記マスタ装置のパラメータ表示部に保持される前記通信能力パラメータの少なくとも一部を含む、
請求項１１に記載の通信システム。
【請求項１３】
前記パラメータ設定コマンドに付加されるペイロードは、前記パラメータ取得コマンドで取得したパラメータ値を含む、
請求項１１に記載の通信システム。
【請求項１４】
前記スレーブ装置は、パラメータ取得コマンドを、前記ブロードキャストコマンドとして受信した場合、受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
請求項１１に記載の通信システム。
【請求項１５】
前記スレーブ装置は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、値の小さい方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１４に記載の通信システム。
【請求項１６】
前記スレーブ装置は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、時間の長い方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１４に記載の通信システム。
【請求項１７】
前記マスタ装置と前記１以上のスレーブ装置とは、リング接続により接続されている、
請求項７から１６のいずれかに記載の通信システム。
【請求項１８】
前記マスタ装置と前記１以上のスレーブ装置は、ハブ接続により接続されている、
請求項７から１６のいずれかに記載の通信システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ装置と１以上のスレーブ装置で構成され、マスタ装置の発行するコマンドにスレーブ装置が応答して各種情報の転送を行う通信システムに関する。
【背景技術】
【０００２】
従来から、マスタ装置と１以上のスレーブ装置とを接続し、マスタ装置の発行するコマンドにスレーブ装置が応答して各種通信を行う通信システムが知られている。このような通信システムにおいては、システム起動時に、マスタ装置は、システムに接続されたスレーブ装置と通信を行うために、各スレーブ装置の物理層やデータリンク層のパラメータ設定を行うコンフィギュレーション処理を実行する必要がある。
【０００３】
例えば、特許文献１では、複数のスレーブ装置がチェーン接続されたシステムにおいて、スレーブ装置が、初期状態においてコマンドをマスタ装置へ送り返すモードで起動し、そして、スレーブ装置が、マスタ装置からのコマンドを受信してマスタ装置へ送り返すと、スルーモードへ変わる技術が開示されている。
【０００４】
また、特許文献２では、複数のデバイスに対して、マスタ装置が接続要求を送り、要求に応答したデバイスに対して、個別に初期化を行い、その後、マスタ装置は、そのデバイスをスリープモードに入れ（設定し）、そのデバイスに対して、再び接続要求を送り、そのデバイスからの応答の確認を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１３６２４４号公報
【特許文献２】特開２００３-１４３１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１や特許文献２に開示された従来技術では、マスタ装置は、複数のスレーブ装置に対して、個別にパラメータを設定する必要がある。従って、接続されるスレーブ装置の数に比例してコンフィギュレーション処理の時間が増大する。これは、通信システムが動作し始めるためのスレーブ装置の初期化時間の増大につながる。
【０００７】
本発明は、以上の問題点を解決し、マスタ装置と１以上のスレーブ装置からなる通信システムであって、マスタ装置がスレーブ装置のパラメータを設定する処理を効率よく行うことが可能な通信システム、並びに、その通信システムを構成するマスタ装置およびスレーブ装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムのスレーブ装置であって、マスタ装置ＩＦ部を備える。
【０００９】
マスタ装置ＩＦ部は、パラメータ表示部と、パラメータ設定部と、を備える。
【００１０】
パラメータ表示部は、スレーブ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、マスタ装置と通信を行うために使用する通信設定パラメータを保持する。
【００１１】
そして、マスタ装置ＩＦ部は、パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
（１）受信したパラメータ設定コマンドに付加されたペイロードの値に基づいて、パラメータ設定部に通信設定パラメータを設定し、
（２）パラメータ設定部に設定した通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する。
【００１２】
これにより、このスレーブ装置を含む通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、このマスタ装置を含む通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、このスレーブ装置を含む通信システムでは、スレーブ装置の初期化時間を短縮することができる。
【００１３】
第２の発明は、第１の発明であって、マスタ装置ＩＦ部は、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータをパラメータ設定部に設定する。
【００１４】
第３の発明は、第１または第２のいずれかの発明であって、マスタ装置ＩＦ部は、パラメータ取得コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、受信したパラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する。
【００１５】
これにより、このスレーブ装置では、受信したパラメータ取得コマンドに付加されたペイロードに基づいた値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。
【００１６】
第４の発明は、第３の発明であって、マスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、値の小さい方をパラメータ取得コマンドに付加するペイロードに設定して、パラメータ取得コマンドを送信する。
【００１７】
これにより、このスレーブ装置では、通信能力のより低い値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。
【００１８】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
【００１９】
第５の発明は、第３の発明であって、マスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、時間の長い方をパラメータ取得コマンドに付加するペイロードに設定して、パラメータ取得コマンドを送信する。
【００２０】
これにより、このスレーブ装置では、通信能力のより低い値に、パラメータ設定部の通信設定パラメータのパラメータ値し、その設定値を含むペイロードを付加したコマンド（パラメータ取得コマンド）を送信することができる。
【００２１】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
【００２２】
第６の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答を用いて通信を行う通信システムのマスタ装置であって、１以上のスレーブ装置にコマンドを送信し、１以上のスレーブ装置からのコマンドまたは応答を受信して通信を行うスレーブ装置ＩＦ部を備える。
【００２３】
スレーブ装置ＩＦ部は、パラメータ表示部と、パラメータ設定部と、を備える。
【００２４】
パラメータ表示部は、マスタ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持する。
【００２５】
そして、スレーブ装置ＩＦ部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。
【００２６】
このマスタ装置では、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。このマスタ装置を含む通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、このマスタ装置を含む通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、このマスタ装置を含む通信システムでは、スレーブ装置の初期化時間を短縮することができる。
（１）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドに、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含むペイロードを付加して、パラメータ設定コマンドを送信するようにしてもよい。
【００２７】
これにより、このマスタ装置を含む通信システムでは、通信能力パラメータの所定のパラメータ値について、確実に、コンフィギュレーション処理を実行することができる。
（２）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドに、マスタ装置および１以上のスレーブ装置が共に満たすパラメータを含むペイロードを付加して、パラメータ設定コマンドを送信するようにしてもよい。
【００２８】
これにより、このマスタ装置を含む通信システムでは、マスタ装置および１以上のスレーブ装置の中の最低の通信能力を示すパラメータを、各スレーブ装置に知らせることができる。
（３）また、スレーブ装置ＩＦ部は、パラメータ設定コマンドを発行するより前に、１以上のスレーブ装置のパラメータ表示部に保持される通信能力パラメータを取得するためのパラメータ取得コマンドをブロードキャストコマンドとして送信するようにしてもよい。
【００２９】
このマスタ装置を含む通信システムでは、パラメータ取得コマンドをブロードキャストコマンドとして送信し、各スレーブ装置の通信能力を把握した上で、マスタ装置が、パラメータ設定コマンドを発行する。したがって、このマスタ装置を含む通信システムでは、マスタ装置がパラメータ設定コマンドを発行し、そのパラメータ設定コマンドに基づいて、各スレーブ装置が、マスタ装置および各スレーブ装置が満たす通信能力に相当するパラメータ値に、自装置を設定することができる。つまり、このマスタ装置を含む通信システムでは、少ない回数のコマンド発行（パラメータ取得コマンドおよびパラメータ設定コマンドの発行）により、コンフィギュレーション処理を実行することができる。
（４）また、パラメータ取得コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含むようにしてもよい。
【００３０】
これにより、マスタ装置は、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部について、各スレーブ装置に設定されている通信能力パラメータのパラメータ値を把握（取得）することができる。
（５）また、パラメータ設定コマンドに付加されるペイロードは、パラメータ取得コマンドで取得したパラメータ値を含むようにしてもよい。
【００３１】
これにより、マスタ装置は、パラメータ取得コマンドを発行することで把握（取得）した各スレーブ装置の通信能力を考慮したパラメータ値を含むパラメータ設定コマンドを、スレーブ装置に対して、送信することができる。
【００３２】
第７の発明は、マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、マスタ装置と、１以上のスレーブ装置と、を備える。
【００３３】
マスタ装置は、パラメータ表示部と、パラメータ設定部と、を備える。
【００３４】
パラメータ表示部は、マスタ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持する。
【００３５】
そして、マスタ装置は、１以上のスレーブ装置と通信を行うために使用する通信設定パラメータをスレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして送信する。
【００３６】
１以上のスレーブ装置は、それぞれ、パラメータ表示部と、パラメータ設定部と、を備える。
【００３７】
パラメータ表示部は、スレーブ装置の通信能力を示す通信能力パラメータを保持する。パラメータ設定部は、マスタ装置と通信を行うために使用する通信設定パラメータを保持する。
【００３８】
そして、スレーブ装置は、パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、通信システムに通信可能な状態で接続されている全てのスレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
（１）受信したパラメータ設定コマンドに付加されたペイロードの値に基づいて、パラメータ設定部に通信設定パラメータを設定し、
（２）パラメータ設定部に設定した通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信する。
【００３９】
この通信システムでは、ブロードキャストコマンドによりコンフィギュレーション処理を行うことができるため、コンフィギュレーション処理を実行するために、マスタ装置が発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、この通信システムでは、少ないコマンド数で全てのスレーブ装置のコンフィギュレーション処理を行うことができる。このため、この通信システムでは、スレーブ装置の初期化時間を短縮することができる。
【００４０】
第８の発明は、第７の発明であって、パラメータ設定コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む。
【００４１】
第９の発明は、第７の発明であって、パラメータ設定コマンドに付加されるペイロードは、マスタ装置および１以上のスレーブ装置が共に満たすパラメータを含む。
【００４２】
第１０の発明は、第７の発明であって、スレーブ装置は、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、パラメータ設定部の通信設定パラメータのパラメータ値を設定する。
【００４３】
なお、「受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、パラメータ設定部の通信設定パラメータのパラメータ値を設定する」とは、受信したパラメータ設定コマンドに付加されたペイロードに含まれるパラメータの値そのものに、パラメータ設定部の通信設定パラメータのパラメータ値を設定する場合や、受信したパラメータ設定コマンドに付加されたペイロード値をそのまま、パラメータ設定部の通信設定パラメータに設定する場合を含む概念である。
【００４４】
第１１の発明は、第７から第１０のいずれかの発明であって、マスタ装置は、パラメータ設定コマンドを発行するより前に、１以上のスレーブ装置のパラメータ表示部に保持される通信能力パラメータを取得するためのパラメータ取得コマンドをブロードキャストコマンドとして送信する。
【００４５】
第１２の発明は、第１１の発明であって、パラメータ取得コマンドに付加されるペイロードは、マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む。
【００４６】
第１３の発明は、第１１の発明であって、パラメータ設定コマンドに付加されるペイロードは、パラメータ取得コマンドで取得したパラメータ値を含む。
【００４７】
第１４の発明は、第１１の発明であって、スレーブ装置は、パラメータ取得コマンドを、ブロードキャストコマンドとして受信した場合、受信したパラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する。
【００４８】
第１５の発明は、第１４の発明であって、スレーブ装置のマスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、値の小さい方を、パラメータ取得コマンドのペイロードに設定して、パラメータ取得コマンドを送信する。
【００４９】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
【００５０】
第１６の発明は、第１４の発明であって、スレーブ装置のマスタ装置ＩＦ部は、受信したパラメータ取得コマンドに付加されたペイロードのパラメータ値とパラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、時間の長い方を、パラメータ取得コマンドのペイロードに設定して、パラメータ取得コマンドを送信する。
【００５１】
なお、パラメータ取得コマンドに付加されたペイロード中のパラメータ値と通信能力パラメータのパラメータ値との比較とは、（１）当該ペイロード中の全部のパラメータ値と、それに対応する通信能力パラメータの全部のパラメータ値とを比較すること、および、（２）当該ペイロード中の一部のパラメータ値と、それに対応する通信能力パラメータの一部のパラメータ値とを比較すること、を含む概念である。
【００５２】
第１７の発明は、第７から第１６のいずれかの発明であって、マスタ装置と１以上のスレーブ装置とは、リング接続により接続されている。
【００５３】
第１８の発明は、第７から第１６のいずれかの発明であって、マスタ装置と１以上のスレーブ装置は、ハブ接続により接続されている。
【発明の効果】
【００５４】
本発明によれば、マスタ装置は複数のスレーブ装置のパラメータ設定を少ないコマンド数で効率よく行うことが可能な通信システム、並びに、その通信システムを構成するマスタ装置およびスレーブ装置を実現することができる。
【図面の簡単な説明】
【００５５】
【図１】第１実施形態に係る通信システム１０００の概略構成図
【図２】マスタ装置とスレーブ装置との接続形態を説明するための図
【図３Ａ】コマンド・応答フォーマットを説明するための図
【図３Ｂ】コマンド・応答フォーマットの一例を示す図
【図３Ｃ】コンフィギュレーション用レジスタマップ（第１例）を説明するための図
【図３Ｄ】コンフィギュレーション用レジスタマップ（第２例）を説明するための図
【図４】１対１接続でのコマンド・応答送受信処理を説明するための図
【図５】リング接続でのコマンド・応答送受信処理を説明するための図
【図６】チェーン接続でのコマンド・応答送受信処理を説明するための図
【図７】ハブ接続でのコマンド・応答送受信処理を説明するための図
【図８】パラメータ表示部、パラメータ設定部の構成を説明するための図
【図９】１対１接続でのコンフィギュレーション処理を説明するための図
【図１０Ａ】（ａ）リング接続でマスタ装置が初期値をブロードキャスト送信した図（ｂ）リング接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図
【図１０Ｂ】（ｃ）リング接続でマスタ装置が初期値をブロードキャスト送信した図（ｄ）リング接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図
【図１０Ｃ】（ｅ）マスタ装置のコンフィギュレーションを示すフローチャート（ｆ）スレーブ装置のコンフィギュレーションを示すフローチャート
【図１０Ｄ】（ｇ）リング接続でマスタ装置が、マスタ装置の設定値をブロードキャスト送信した図
【図１１Ａ】（ａ）リング接続でマスタ装置が任意の初期値をＰａｙｌｏａｄに設定してブロードキャスト送信した図
【図１１Ｂ】マスタ装置が送信したパラメータと受信したパラメータが異なる、又は、同一場合の図
【図１１Ｃ】（ｃ）マスタ装置のコンフィギュレーションを示すフローチャート（ｄ）スレーブ装置のコンフィギュレーションを示すフローチャート
【図１２】チェーン接続での第１のコンフィギュレーション処理を説明するための図
【図１３】チェーン接続での第２のコンフィギュレーション処理を説明するための図
【図１４Ａ】（ａ）ハブ接続でマスタ装置が初期値を送信した図（ｂ）ハブ接続でマスタ装置がパラメータ設定値を送信した図
【図１４Ｂ】（ｃ）ハブ接続において、マスタ装置が、マスタ装置の設定値を送信した図
【図１４Ｃ】（ａ）ハブ接続でマスタ装置が初期値をブロードキャスト送信した図（リング接続と等価の場合）（ｂ）ハブ接続でマスタ装置がパラメータ設定値をブロードキャスト送信した図（リング接続と等価の場合）
【図１５Ａ】（ａ）ハブ接続においてマスタ装置が任意の初期値をＰａｙｌｏａｄに設定して送信した図
【図１５Ｂ】ハブ接続においてマスタ装置が送信したパラメータと受信したパラメータが異なる場合、又は、同一の場合の図
【図１５Ｃ】ハブ接続においてマスタ装置が送信したパラメータと受信したパラメータが異なる場合、又は、同一の場合の図（リング接続と等価の場合）
【発明を実施するための形態】
【００５６】
以下、本発明の実施形態について、図面を参照しながら説明する。なお、説明中で同じ符号、記号、数字は、特に説明が無い限り、同じ構成要素を示すものとする。
【００５７】
［第１実施形態］
＜１．１：通信システムの構成＞
図１は、第1実施形態に係る通信システム１０００の構成を示すブロック図である。
【００５８】
図１に示すように、本実施形態に係る通信システム１０００は、マスタ装置２とスレーブ装置１とを含んで構成される。マスタ装置２とスレーブ装置１とは、クロック線ＣＬＫ、マスタ装置２からスレーブ装置１へデータを送る信号線ＤＡＴ０、スレーブ装置１からマスタ装置２へデータを送る信号線ＤＡＴ１により接続されている。クロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１を用いて、マスタ装置２とスレーブ装置１との間で、コマンドや応答、データの送受信が実行される。なお、本発明の説明に不要な要素は図示していない。
【００５９】
ＣＬＫ、ＤＡＴ０、ＤＡＴ１は、例えば、差動シリアル方式またはシングルエンド方式で信号を伝送するための伝送路である。通信システム１０００の伝送路（ＣＬＫ、ＤＡＴ０、ＤＡＴ１）において、データを送る信号線の数は、２本（ＤＡＴ０およびＤＡＴ１の２本）に限定されず、より多くの信号線（例えば、ＤＡＴ０〜ＤＡＴ３の４本の信号線やＤＡＴ０〜ＤＡＴ７の信号線）を用いてもよい。より多くの信号線を用いることで、通信システム１０００では、より高速な通信が可能となる。また、マスタ装置２からスレーブ装置１へ送るデータの信号線の数とスレーブ装置１からマスタ装置へ送るデータの信号線の数は、同じであってもよいし、異なっていてもよい。
【００６０】
なお、通信システム１０００の接続形態は、（１）１つのマスタ装置と１つのスレーブ装置とを接続した１対１接続、（２）１つのマスタ装置と複数のスレーブ装置とを接続した１対多接続がある。さらに、１対多接続の場合において、通信システム１０００がとりうるトポロジーとして、例えば、（１）リング接続、（２）チェーン接続（デイジーチェーン接続）、（３）ハブ接続がある。
【００６１】
（１．１．１：マスタ装置の構成）
マスタ装置２は、図１に示すように、全体を制御するＣＰＵ２２と、ＲＯＭ２６と、ＲＡＭ２５と、主記憶部２３と、周辺回路２４と、スレーブ装置ＩＦ部２１とを含んで構成される。マスタ装置２の機能部は、図１に示すように、バスＢ２により接続されるものであってもよいし、マスタ装置２の機能部の全部または一部が、直接接続されるものであってもよい。
【００６２】
また、マスタ装置２の機能部は、同じ半導体ＬＳＩとして実現されるものであってもよいし、その全部または一部が異なる半導体ＬＳＩで実現されるものであってもよいし、さらに、ハードウェアとソフトウェアを組み合わせて実現されるものであってもよい。
【００６３】
スレーブ装置ＩＦ部２１は、クロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１を用いて、スレーブ装置１と通信を行う機能を有する。また、スレーブ装置ＩＦ部２１は、マスタ装置２の識別子であるＩＤ、マスタ装置２の通信能力パラメータＣＰＢＬを保持するパラメータ表示部２１１Ｍと、スレーブ装置１との通信に使用するパラメータＳＥＴＴＩＮＧを保持するパラメータ設定部２１２Ｍと、を有する。
【００６４】
通信設定パラメータＳＥＴＴＩＮＧは、スレーブ装置１とのネゴシエーションにより決定される更新可能な情報であり、その値は、レジスタやメモリで保持される。
【００６５】
マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、ＲＯＭ２６等で固定値として保持されるものであってもよいし、あるいは、ＣＰＵ２２により設定可能なレジスタやメモリに、その値が保持されるものであってもよい。さらに、マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、外部端子などの手段で設定されるものであってもよい。以下では、マスタ装置２の識別子ＩＤおよびマスタ装置２の通信能力パラメータＣＰＢＬは、何らかの手段で設定済みであるとして、説明する。
【００６６】
（１．１．２：スレーブ装置の構成）
スレーブ装置１は、図１に示すように、マスタ装置ＩＦ部１１と、制御部１２と、を含んで構成される。
【００６７】
制御部１２は、ＣＰＵ１２１と、ＲＯＭ１２５と、ＲＡＭ１２４と、不揮発性メモリおよびメモリ制御部を含むメモリ部１２２と、ＩＯ機能およびＩＯ制御部を含むＩＯ部１２３と、を含んで構成される。
【００６８】
スレーブ装置１の制御部１２の機能部は、図１に示すように、バスＢ１により接続されるものであってもよい。また、スレーブ装置１の機能部の全部または一部が、直接接続されるものであってもよい。
【００６９】
また、スレーブ装置１の制御部１２の機能部および／またはマスタ装置ＩＦ部１１は、同じ半導体ＬＳＩとして実現されるものであってもよいし、その全部または一部が異なる半導体ＬＳＩで実現されるものであってもよいし、さらに、ハードウェアとソフトウェアを組み合わせて実現されるものであってもよい。
【００７０】
また、スレーブ装置１は、メモリ部１２２およびＩＯ部１２３のいずれか、あるいは両方を含まない構成であってもよい。
【００７１】
マスタ装置ＩＦ部１１は、マスタ装置２とクロック線ＣＬＫ，信号線ＤＡＴ０、信号線ＤＡＴ１を用いて、マスタ装置２と通信を行う機能を有する。また、マスタ装置ＩＦ部１１は、スレーブ装置１の識別子であるＩＤ、スレーブ装置１の通信能力パラメータＣＰＢＬを保持するパラメータ表示部１１１Ｓと、マスタ装置２との通信に使用するパラメータであるＳＥＴＴＩＮＧを保持するパラメータ設定部１１２Ｓと、を有する。
【００７２】
通信設定パラメータＳＥＴＴＩＮＧは、マスタ装置２とのネゴシエーションにより決定される更新可能な情報であり、その値は、レジスタやメモリで保持される。スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、ＲＯＭ１２５等で固定値として保持されるものであってもよいし、あるいは、ＣＰＵ１２１が設定可能なレジスタやメモリに、その値が保持されるものであってもよい。さらに、スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、外部端子などの手段で設定されるものであってもよい。以下では、スレーブ装置１の識別子ＩＤおよびスレーブ装置１の通信能力パラメータＣＰＢＬは、何らかの手段で設定済みであるとして、説明する。
【００７３】
スレーブ装置１は、１組のクロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１に接続される構造（つまり、３本の伝送路に接続される構造）を有するものであってもよいし、あるいは、スレーブ装置１が後述するチェーン接続を実現可能な場合には、スレーブ装置１は、２組のクロック線ＣＬＫ、信号線ＤＡＴ０、および、信号線ＤＡＴ１に接続される構造（つまり、６本（＝３×２）の伝送路に接続される構造）を有するものであってもよい。
【００７４】
なお、通信システム１０００では、図１に示すように、クロック線ＣＬＫが、信号線ＤＡＴ０、信号線ＤＡＴ１とは異なる端子によりされる構成となっているが、これに限定されることはなく、例えば、通信システム１０００において、信号線にクロックを重畳するエンベデッドクロックを用いることもできる。その場合、通信システム１０００において、スレーブ装置１のＣＬＫ端子、マスタ装置２のＣＬＫ端子、および、クロック線ＣＬＫは、不要である。
【００７５】
（１．１．３：マスタ装置とスレーブ装置の接続形態）
図２は、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１の接続形態を説明するための図である。本実施形態に係る通信システム１０００は、１つのマスタ装置と、１以上のスレーブ装置を含んで構成され、様々な接続形態が可能である。
【００７６】
図２（ａ）〜（ｄ）は、マスタ装置２と、スレーブ装置１との接続形態を示している。具体的には、図２（ａ）は、マスタ装置２と１つのスレーブ装置１とが接続される１対１接続についての接続形態を示している。図２（ｂ）〜（ｄ）は、マスタ装置２と複数のスレーブ装置１ａ〜１ｃが接続される構成（接続形態）を示している。図２（ｂ）は、リング接続の場合の接続形態を示している。図２（ｃ）は、チェーン接続の場合の接続形態を示している。図２（ｄ）は、ハブ接続の場合の接続形態を示している。
【００７７】
いずれの場合も、マスタ装置２では、ＤＡＴ０が出力され、ＤＡＴ１が入力される。また、スレーブ装置１では、ＤＡＴ０が入力されＤＡＴ１が出力される。図２（ｃ）のチェーン接続の場合のみ、後段のスレーブ装置との間で信号の伝送をするため、ＤＡＴ０を出力する信号線、ＤＡＴ１を入力する信号線がスレーブ装置に存在する。なお、図２において、クロック線ＣＬＫは、図示されていないが、前述したとおり、通信システムにおいて、独立した端子としてマスタ装置と各スレーブ装置とを接続する構成としてもよいし、また、エンベデッドクロックを使用し、クロック線ＣＬＫを省略した構成としてもよい。
【００７８】
＜１．２：通信システムの動作＞
以上のように構成された通信システム１０００の動作について、以下、説明する。
【００７９】
（１．２．１：コマンド・応答のフォーマット）
図３Ａは、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１が通信に用いるコマンドおよび応答のフォーマットの一例を示す図である。
【００８０】
図３Ａ（ａ）に示すように、コマンドおよび応答は、
（１）送信元の装置のＩＤを示すｓｒｃＩＤ、
（２）送信先の装置のＩＤを示すｄｓｔＩＤ、
（３）コマンドや応答の種別を示すＩｎｄｅｘ、
（４）コマンドや応答の各種引数を示すＡｒｇ
を含む。
【００８１】
また、コマンドや応答によっては付随するデータＰａｙｌｏａｄが付加されることもある。なお、コマンドと応答とは、それぞれ、ｓｒｃＩＤ、ｄｓｔＩＤ、Ｉｎｄｅｘ、ＡｒｇとＰａｙｌｏａｄの一部を含んで構成されるものであってもよく、あるいは、その他の情報が付加されて構成されるものであってもよい。
【００８２】
また、コマンドと応答とは、全く同じフォーマットでもよく、あるいは、異なるフォーマットでもよい。
【００８３】
なお、実際には、通信プロトコルに従った開始・終了シンボルやエラー検出・訂正コードが付加されてパケットが構成されるが、これらは本発明とは直接関係ないため、図示していない。
【００８４】
図３Ａ（ｂ）は、マスタ装置２が特定のスレーブ装置１へコマンドを送るための個別コマンドのフォーマットの一例を示している。図３Ａ（ｂ）に示すコマンド（または応答）は、ｓｒｃＩＤが０ｘ０であり、ｄｓｔＩＤが０ｘ１であるので、このコマンド（または応答）は、ＩＤが０ｘ０の装置からＩＤが０ｘ１の装置へ送られるコマンド（または応答）である。
【００８５】
また、マスタ装置２とスレーブ装置１とは、図３Ａ（ｃ−１）、（ｃ−２）に示すような、全ての装置が同じコマンドを受信するブロードキャストコマンドを発行可能である。ブロードキャストコマンドの設定方法（定義方法）は、例えば、以下（１）〜（３）のようにすればよい。
（１）ｄｓｔＩＤに特定の値（図３Ａ（ｃ−１）の場合、「０ｘｆｆ」）を設定することで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
【００８６】
図３Ａ（ｃ−１）の例では、ｄｓｔＩＤが「０ｘｆｆ」であるコマンドを、ブロードキャストコマンドと設定（定義）している。つまり、図３Ａ（ｃ−１）の例では、ｄｓｔＩＤが「０ｘｆｆ」であるので、図３Ａ（ｃ−１）に示したコマンドは、ブロードキャストコマンドであることが分かる。
（２）ｓｒｃＩＤおよびｄｓｔＩＤに等しい値を設定することで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
【００８７】
図３Ａ（ｃ−２）の例では、ｓｒｃＩＤとｄｓｔＩＤとが等しい値（０ｘ０）であるコマンドを、ブロードキャストコマンドと設定（定義）している。
（３）ＩｎｄｅｘやＡｒｇにブロードキャストコマンドであることを示す識別子やフラグを設け、その識別子やフラグを所定の値とすることで、当該コマンドがブロードキャストコマンドであると設定（定義）する。
【００８８】
ここで、上記（２）の場合のコマンドフォーマットの具体例（一例）を図３Ｂに示す。
【００８９】
図３Ｂに示したコマンドフォーマットでは、先頭の２バイト（バイト０およびバイト１）がヘッダであり、それに続く２バイト（バイト２およびバイト３）が引数（Ａｒｇｕｍｅｎｔ）であり、それに続くバイトがペイロードである。
【００９０】
ヘッダの中で、ｓｒｃＩＤとｄｓｔＩＤとが等しい値（０ｘ０）に設定されることで、当該コマンドがブロードキャストコマンドに設定される。
【００９１】
「Ｒ／Ｗ」（バイト２のビット７）は、コマンドが、データを書き込むコマンドであるか、それとも、データを読み取るコマンドであるかの種別を示す。例えば、Ｒ／Ｗ＝０であれば、当該コマンドは、データを読み取るコマンドであり、Ｒ／Ｗ＝１であれば、当該コマンドは、データを書き込むコマンドである。
【００９２】
「ＩＯＡＤＲ」は、読み出しまたは書き込みを行なうレジスタ空間やメモリ空間のアドレスである。なお、ＩＯＡＤＲで指定するアドレスは、絶対アドレスではなく、相対アドレスであってもよい。また、ＩＯＡＤＲで指定するアドレスは、バイトアドレスでもよいし、あるいはワード（２バイト）単位のアドレス、ダブルワード（４バイト）単位アドレスであってもよく、さらに、例えば、５１２バイトのブロック単位のアドレスであってもよい。
【００９３】
なお、ここで、コンフィギュレーション用レジスタについて、説明する。
【００９４】
「コンフィギュレーション用レジスタ」とは、スレーブ装置１が持つレジスタであり、このコンフィギュレーション用レジスタは、コンフィギュレーション処理で使用される。コンフィギュレーション用レジスタは、２つのカテゴリーのレジスタ、すなわち、（１）ケイパビリティ・レジスタと、（２）ステータス／セッティング・レジスタ（これを、単に「セッティング・レジスタ」ということもある。）から構成される。
【００９５】
ケイパビリティ・レジスタは、コンフィギュレーション処理において設定、あるいは、参照されるスレーブ装置１の通信能力や通信性能に関する情報を保持するためのレジスタである。
【００９６】
ステータス／セッティング・レジスタは、コンフィギュレーション処理の結果、スレーブ装置１に割り当てられた値や、スレーブ装置１の現状（現在の通信状態等）に基づく値（当該レジスタに保持されている現在値）を設定し、保持するためのレジスタである。
【００９７】
なお、スレーブ装置１の持つコンフィギュレーション用レジスタの全部あるいは一部を、マスタ装置２が備えるようにしてもよい。以降の説明では、マスタ装置２はスレーブ装置１と同じコンフィギュレーションレジスタを備えるものとする。
【００９８】
コンフィギュレーション用レジスタのアドレスは、マスタ装置およびスレーブ装置が共通に持つアドレス空間において、連続的に配置されているものとする。
【００９９】
図３Ｃに、コンフィギュレーション用レジスタのアドレス空間マップ（コンフィギュレーション用レジスタ・マップ）の一例（第１例）を示す。そして、図３Ｃのコンフィギュレーション用レジスタ・マップにおいて、各レジスタは、４バイトからなるものとする。例えば、図３Ｃに示すアドレス空間において、アドレスＡ０から４バイト分に「物理層ケイパビリティ・レジスタ」が配置され、続く４バイト分に「リンク層／トランザクション層ケイパビリティ・レジスタ」が配置され、続く４バイト分に「共通ケイパビリティ・レジスタ」が配置され、続く４バイト分に「その他」（例えば、リザーブ）が配置されている。そして、図３Ｃに示すアドレス空間において、アドレスＢ０から４バイト分に「物理層ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「リンク層／トランザクション層ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「共通ステータス／セッティング・レジスタ」が配置され、続く４バイト分に「その他」（例えば、リザーブ）が配置されている。
【０１００】
「ＰＬＥＮ」（バイト２のビット４〜６（「ＰＬＥＮ」をバイト２のビット４および５の２ビットのデータで表すようにしてもよい。））は、ペイロードの長さを示す。例えば、以下のように設定する。
【０１０１】
ＰＬＥＮ＝０であれば、ペイロードの長さは０バイト。
【０１０２】
ＰＬＥＮ＝１であれば、ペイロードの長さは４バイト。
（これにより、１つのレジスタ（４バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝２であれば、ペイロードの長さは８バイト。
（これにより、２つのレジスタに対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝３であれば、ペイロードの長さは１６バイト。
（これにより、４つのレジスタに対して、データの読み取り／書き込みができる。）
上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝０とし、「ＩＯＡＤＲ」を図３ＣのアドレスＡ０に相当する値に設定し、ＰＬＥＮ＝１とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）を読み取る（取得する）パラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝２とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）を読み取る（取得する）ブロードキャストコマンドであるパラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。
【０１０３】
また、上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝１とし、「ＩＯＡＤＲ」を図３ＣのアドレスＡ０に相当する値に設定し、ＰＬＥＮ＝１とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝２とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。
【０１０４】
また、図３Ｄに、コンフィギュレーション用レジスタのアドレス空間マップ（コンフィギュレーション用レジスタ・マップ）の別の一例（第２例）を示す。そして、図３Ｄのコンフィギュレーション用レジスタ・マップにおいて、各レジスタは、８バイトからなるものとする。例えば、図３Ｄに示すアドレス空間において、アドレスＡＡ０から８バイト分に「一般ケイパビリティ・レジスタ」が配置され、続く８バイト分に「物理層ケイパビリティ・レジスタ」が配置され、続く８バイト分に「リンク層／トランザクション層ケイパビリティ・レジスタ」が配置され、続く８バイト分に「その他」（例えば、リザーブ）が配置されている。そして、図３Ｄに示すアドレス空間において、アドレスＢＢ０から８バイト分に「一般セッティング・レジスタ」が配置され、続く８バイト分に「物理層セッティング・レジスタ」が配置され、続く８バイト分に「物理層セッティング・レジスタ」が配置され、続く８バイト分に「その他」（例えば、リザーブ）が配置されている。
【０１０５】
「ＰＬＥＮ」（バイト２のビット４〜６（「ＰＬＥＮ」をバイト２のビット４および５の２ビットのデータで表すようにしてもよい。））は、ペイロードの長さを示す。例えば、以下のように設定する。
【０１０６】
ＰＬＥＮ＝０であれば、ペイロードの長さは０バイト。
【０１０７】
ＰＬＥＮ＝１であれば、ペイロードの長さは４バイト。
【０１０８】
ＰＬＥＮ＝２であれば、ペイロードの長さは８バイト。
（これにより、１つのレジスタ（８バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
ＰＬＥＮ＝３であれば、ペイロードの長さは１６バイト。
（これにより、２つのレジスタ（２つの８バイトのレジスタ）に対して、データの読み取り／書き込みができる。）
上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝０とし、「ＩＯＡＤＲ」を図３ＤのアドレスＡＡ１に相当する値に設定し、ＰＬＥＮ＝２とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）を読み取る（取得する）パラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝３とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）を読み取る（取得する）ブロードキャストコマンドであるパラメータ取得コマンド（Ｉｎｑ  ＢＲ）を設定することができる。
【０１０９】
また、上記コマンドフォーマットにより、例えば、Ｒ／Ｗ＝１とし、「ＩＯＡＤＲ」を図３ＤのアドレスＡＡ１に相当する値に設定し、ＰＬＥＮ＝２とすることで、１つのレジスタ（物理層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。また、ＰＬＥＮ＝３とすることで、２つのレジスタ（物理層ケイパビリティ・レジスタ、および、リンク層／トランザクション層ケイパビリティ・レジスタ）にデータ（ペイロードのデータ）を書き込む（設定する）パラメータ設定コマンド（Ｓｅｔ  ＢＲ）を設定することができる。
【０１１０】
なお、以降の説明および説明で使用する図では、特に説明が無い限り、「ＩＤ」と記されている場合は、「ｄｓｔＩＤ」を示すものとする。また、ブロードキャストコマンドの場合も、ｓｒｃＩＤ、ｄｓｔＩＤとも適切な値に設定されているものとして、特に詳述しない。その他パラメータについても本発明の本質に関係しない箇所は詳述しないが、適切に設定されているものとして扱う。
【０１１１】
（１．２．２：コマンド・応答の送受信処理）
図４は、本実施形態に係る通信システムにおける、マスタ装置２とスレーブ装置１とが１対１接続されている場合のコマンド・応答の送受信についての説明図である。
【０１１２】
図４（ａ）は、個別コマンドの場合の説明図である。図４（ａ）に示すように、マスタ装置２は、個別のスレーブ装置１のＩＤをｄｓｔＩＤとして設定したコマンドＣＭＤ  ＩＤをスレーブ装置１へ発行する。コマンドの種類によっては、Ｐａｙｌｏａｄが付加される。スレーブ装置１は、マスタ装置２からのコマンドを受信すると、受信したコマンドの内容に応じた応答ＲＥＳをマスタ装置２に送信し、コマンドの処理を行う。応答ＲＥＳには、マスタ装置２のＩＤが含まれる。なお、コマンド処理を完了してから応答を返してもよい。また、図示していないが、スレーブ装置１が受信したコマンドによっては、スレーブ装置１は、Ｐａｙｌｏａｄを応答ＲＥＳに付加し、Ｐａｙｌｏａｄを付加した応答ＲＥＳを、マスタ装置２に送信するようにしてもよい。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＩＤに対する応答ＲＥＳを、スレーブ装置１から受信すると、個別コマンドをスレーブ装置１が受信したと判断する。
【０１１３】
図４（ｂ）は、ブロードキャストコマンドの場合の説明図である。
【０１１４】
図４（ｂ）に示すように、マスタ装置２は、ブロードキャストコマンドＣＭＤ  ＢＲをスレーブ装置１へ発行する。コマンドの種類によっては、Ｐａｙｌｏａｄが付加される。スレーブ装置１は、マスタ装置２からコマンドを受信すると、受信したコマンドと同じコマンドをマスタ装置２に送信する。このとき、スレーブ装置１は、受信したコマンドおよびＰａｙｌｏａｄに基づく処理を実行し、その実行結果をＰａｙｌｏａｄ’として付加してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま出力してもよい。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１が受信したと判断し、マスタ装置２が受信したコマンドにＰａｙｌｏａｄ’が付加されていれば、その内容に基づいて処理を行う。
【０１１５】
図５〜７は、本実施形態に係る通信システム１０００において、マスタ装置２と複数のスレーブ装置１ａ〜１ｃとが接続された場合の、マスタ装置２とスレーブ装置１ａ〜１ｃとの間のコマンド・応答の送受信を説明するための図である。図５は、リング接続の場合の説明図である。図６は、チェーン接続の場合の説明図である。図７は、ハブ接続の場合の説明図である。図５〜７において、マスタ装置２は、ＩＤ＝０に設定されており、スレーブ装置１ａはＩＤ＝１に、スレーブ装置１ｂはＩＤ＝２に、スレーブ装置１ｃはＩＤ＝３に、それぞれ、設定されている。
【０１１６】
（１．２．３：リング接続）
図５は、本実施形態に係る通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがリング接続されている場合のコマンド・応答の送受信を説明するための図である。
【０１１７】
図５（ａ）は、マスタ装置２がスレーブ装置１ｂに対して個別コマンドを発行した場合を示している。図５（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。スレーブ装置１ａは、コマンドを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該コマンドをそのままスレーブ装置１ｂへ送信する。スレーブ装置１ａが送信したコマンドをスレーブ装置１ｂが受信すると、スレーブ装置１ｂは、当該コマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。スレーブ装置１ｃは、スレーブ装置１ｂから送信された応答ＲＥＳを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該応答ＲＥＳをそのまま送信する。マスタ装置２は、スレーブ装置１ｃが送信した応答ＲＥＳを受信する。そして、マスタ装置２は、受信した応答ＲＥＳにＩＤ＝０が設定されているので、個別コマンドをスレーブ装置１ｂが受信したと判断する。
【０１１８】
図５（ｂ）は、マスタ装置２がスレーブ装置１ａ〜１ｃに対してブロードキャストコマンドを発行した場合を示している。
【０１１９】
図５（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。スレーブ装置１ａは、コマンドを受信すると、受信した当該コマンドがブロードキャストコマンドであることを検出して、同じコマンドをスレーブ装置１ｂへ送信する。このとき、スレーブ装置１ａは、受信したコマンドおよびＰａｙｌｏａｄ（図５中に「ＰＬＤ」で示した部分がＰａｙｌｏａｄ（ペイロード）である。他の図においても、同様。）に基づく処理を実行し、その実行結果をＰａｙｌｏａｄ１として付加し、Ｐａｙｌｏａｄ１を付加したコマンドを送信してもよい。あるいは、スレーブ装置１ａは、受信したＰａｙｌｏａｄをそのまま出力してもよい（受信したＰａｙｌｏａｄをそのまま付加したコマンドを送信してもよい）。
【０１２０】
以降、スレーブ装置１ｂ、１ｃも同様に受信したコマンドをＰａｙｌｏａｄとともに出力する。図５では、スレーブ装置１ｂ、１ｃが送信するコマンドに付加したＰａｙｌｏａｄは、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３で表されており、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３は、受信したＰａｙｌｏａｄと同じものである、あるいは、受信したコマンドおよびＰａｙｌｏａｄに基づく処理の実行結果を示す（含む）ものである、のいずれかである。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断し、受信したコマンドにＰａｙｌｏａｄが付加されていれば、その内容に基づいて処理を行う。
【０１２１】
なお、Ｐａｙｌｏａｄは、コマンドの内容によって異なり、例えば、スレーブ装置１ｂが、Ｐａｙｌｏａｄ１（ＰＬＤ１）が付加されたブロードキャストコマンドを受信した場合、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよく、あるいは、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよい。また、スレーブ装置１ａ、１ｃでの処理も上記スレーブ装置１ｂの処理と同様にしてもよい。
【０１２２】
（１．２．４：チェーン接続）
図６は、本実施形態に係る通信システム１０００における、マスタ装置２とスレーブ装置１ａ〜１ｃとがチェーン接続されている場合のコマンド・応答の送受信を説明するための図である。
【０１２３】
図６（ａ）は、マスタ装置２が、スレーブ装置１ｂに対して、個別コマンドを発行した場合を示している。図６（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。スレーブ装置１ａは、マスタ装置２からのコマンドを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該コマンドをそのままスレーブ装置１ｂへ送信する。スレーブ装置１ａが送信したコマンドをスレーブ装置１ｂが受信すると、スレーブ装置１ｂは、当該コマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、応答ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。なお、このとき、スレーブ装置１ｂは、スレーブ装置１ｃへはコマンドを送信しない。
【０１２４】
スレーブ装置１ａは、スレーブ装置１ｂからの応答ＲＥＳを受信すると、ＩＤが自身のＩＤと異なることを検出して、当該応答ＲＥＳをそのままマスタ装置２に送信する。マスタ装置２は、スレーブ装置１ａが送信した応答ＲＥＳ（ＩＤ＝０に設定されている応答ＲＥＳ）を受信すると、個別コマンドをスレーブ装置１ｂが受信したと判断する。
【０１２５】
図６（ｂ）は、マスタ装置２が、スレーブ装置１ａ〜１ｃに対して、ブロードキャストコマンドを発行した場合を示している。
【０１２６】
図６（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。スレーブ装置１ａは、マスタ装置２からのコマンドを受信すると、受信した当該コマンドがブロードキャストコマンドであることを検出して、受信したのと同じコマンド（ブロードキャストコマンド）をスレーブ装置１ｂへ送信する。このとき、スレーブ装置１ａは、受信したコマンドおよび付加されたＰａｙｌｏａｄに基づく処理を実行し、その実行結果をＰａｙｌｏａｄ１として付加して、ブロードキャストコマンドを送信してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま付加したブロードキャストコマンドを出力（送信）してもよい。
【０１２７】
以降、スレーブ装置１ｂ、１ｃも同様に受信したコマンド（ブロードキャストコマンド）をＰａｙｌｏａｄとともに出力する。図６において、スレーブ装置１ｂ、１ｃが送信するコマンドに付加されたＰａｙｌｏａｄは、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３で表されており、Ｐａｙｌｏａｄ２、Ｐａｙｌｏａｄ３は、受信したＰａｙｌｏａｄと同じものである、あるいは、受信したコマンドおよびＰａｙｌｏａｄに基づく処理の実行結果を示す（含む）ものである、のいずれかである。
【０１２８】
なお、Ｐａｙｌｏａｄは、コマンドの内容によって異なり、例えば、スレーブ装置１ｂが、Ｐａｙｌｏａｄ１（ＰＬＤ１）が付加されたブロードキャストコマンドを受信した場合、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよく、あるいは、比較対象であるＰａｙｌｏａｄ１（ＰＬＤ１）とスレーブ装置１ｂの通信能力パラメータＣＰＢＬとの全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ２（ＰＬＤ２）としてもよい。また、スレーブ装置１ａ、１ｃでの処理も上記スレーブ装置１ｂの処理と同様にしてもよい。
【０１２９】
スレーブ装置１ｂは、スレーブ装置１ｃからのコマンドを受信すると、受信したコマンドをそのままスレーブ装置１ａへ送信する。同様に、スレーブ装置１ａは、受信したコマンドをそのままマスタ装置２へ送信する。マスタ装置２は、自身が発行したコマンドＣＭＤ  ＢＲを受信すると、ブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断し、受信したコマンドにＰａｙｌｏａｄが付加されていれば、その内容に基づいて処理を行う。
【０１３０】
（１．２．５：ハブ接続）
図７は、本実施形態に係る通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがハブ接続されている場合のコマンド・応答の送受信を説明するための図である。
【０１３１】
図７（ａ）は、マスタ装置２が、スレーブ装置１ｂに対して、個別コマンドを発行した場合を示している。図７（ａ）において、マスタ装置２がＩＤ＝２のスレーブ装置１ｂへコマンドを発行する。ハブ３は、ＩＤ＝２であることを検出して、当該コマンドをスレーブ装置１ｂへ送信する。スレーブ装置１ｂは、受信したコマンドのＩＤが自身のＩＤと一致することを検出し、受信したコマンドの内容に応じた応答ＲＥＳを送信する。このとき、応答ＲＥＳには、マスタ装置２のＩＤ＝０が設定される。ハブ３は、スレーブ装置１ｂからの応答ＲＥＳを受信すると、当該応答ＲＥＳをそのままマスタ装置２へ送信する。マスタ装置２は、当該応答ＲＥＳを受信することで、スレーブ装置１ｂが個別コマンドを受信したと判断する。
【０１３２】
図７（ｂ）は、マスタ装置２が、スレーブ装置１ａ〜１ｃに対して、ブロードキャストコマンドを発行した場合を示している。
【０１３３】
図７（ｂ）において、マスタ装置２がブロードキャストコマンドＣＭＤ  ＢＲを発行する。ハブ３は、当該コマンドがブロードキャストコマンドであることを検出して、同じコマンドをスレーブ装置１ａ〜１ｃへそのまま送信する。スレーブ装置１ａ〜１ｃは、受信した当該コマンドがブロードキャストコマンドであることを検出して、受信したコマンドと同じコマンドを送信する。このとき、スレーブ装置１ａ〜１ｃは、それぞれ、受信したコマンドおよび付加されたＰａｙｌｏａｄに基づく処理を実行し、その実行結果を、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３として付加して出力してもよく、あるいは、受信したＰａｙｌｏａｄをそのまま出力してもよい。
【０１３４】
ハブ３は、（１）スレーブ装置１ａの送信したコマンドおよびデータＰａｙｌｏａｄ０１と、（２）スレーブ装置１ｂの送信したコマンドおよびＰａｙｌｏａｄ０２と、（３）スレーブ装置１ｃの送信したコマンドおよびＰａｙｌｏａｄ０３と、を受信する。そして、ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンドとデータを処理し、処理した結果をＰａｙｌｏａｄ４としてマスタ装置２へ送信する。Ｐａｙｌｏａｄ４は、コマンドの内容によって異なり、例えば、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３のいずれかを選択したものを、Ｐａｙｌｏａｄ４としてもよく、あるいは、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３の全部または一部のデータのＯＲやＡＮＤ（ビットのＯＲやＡＮＤ）、その他処理により取得した結果を、Ｐａｙｌｏａｄ４としてもよく、あるいは、Ｐａｙｌｏａｄ０１、Ｐａｙｌｏａｄ０２、Ｐａｙｌｏａｄ０３の全体または一部を大小比較し、その比較結果を、Ｐａｙｌｏａｄ４としてもよい。
【０１３５】
マスタ装置２は、自身が発行したコマンドと同一のコマンドＣＭＤ  ＢＲを受信すると、マスタ装置２が発行したブロードキャストコマンドをスレーブ装置１ａ〜１ｃが受信したと判断する。そして、マスタ装置２は、受信したコマンドにＰａｙｌｏａｄ付加されていれば、その内容に基づいて処理を行う。
【０１３６】
以上説明したように、通信システム１０００における接続形態が、（Ａ）マスタ装置１とスレーブ装置との１対１接続、および、（Ｂ）マスタ装置と複数のスレーブ装置との接続、のいずれの場合であっても、スレーブ装置１および１ａ〜１ｃは、以下の処理を行う。
（１）スレーブ装置は、受信した当該コマンドが個別コマンドであるかブロードキャストコマンドであるかを検出する。
（２）受信したコマンドが個別コマンドの場合、スレーブ装置は、コマンドに含まれるＩＤが自身のＩＤと一致すれば応答を返すとともに、コマンドに指示された内容の処理を実行し、一致しない場合、受信した当該コマンドをそのまま送信する。
（３）受信したコマンドがブロードキャストコマンドの場合、スレーブ装置は、受信した当該コマンドの処理を行い、処理結果を新たなＰａｙｌｏａｄとして同じコマンドを送信する（受信したコマンドと同じ内容のコマンド（ブロードキャストコマンド）に、処理結果を含む新たなＰａｙｌｏａｄを付加したデータを送信する）。
【０１３７】
マスタ装置２は、個別コマンドを発行した場合、その個別コマンドに対応する応答を受信すると、送信先のスレーブ装置が当該個別コマンドを受信したと判断する。一方、マスタ装置２は、ブロードキャストコマンドを発行した場合、マスタ装置２が送信したコマンドを受信すると、接続された全てのスレーブ装置（通信システム１０００において、マスタ装置２と通信可能な状態で接続されている全てのスレーブ装置）がコマンドを受信したと判断する。
【０１３８】
このようにして、通信システム１０００において、マスタ装置２とスレーブ装置１、１ａ〜１ｃとは、コマンドと応答を用いた通信処理を行うことができる。
【０１３９】
＜１．３：第１のコンフィギュレーション処理＞
次に、本実施形態に係る通信システム１０００における、マスタ装置とスレーブ装置との間の第１のコンフィギュレーション処理の動作について、図面を参照しながら、説明する。
【０１４０】
（１．３．１：パラメータ表示部、パラメータ設定部の構成）
図８は、通信システム１０００におけるマスタ装置２およびスレーブ装置１、１ａ〜１ｃの備えるパラメータ表示部２１１Ｍに含まれる通信能力パラメータＣＰＢＬ、パラメータ設定部２１２Ｍに含まれる通信設定パラメータＳＥＴＴＩＮＧを示している。
【０１４１】
通信能力パラメータＣＰＢＬは、当該マスタ装置またはスレーブ装置のサポートする機能・性能や所要処理時間を示すパラメータを含む。
【０１４２】
通信設定パラメータＳＥＴＴＩＮＧは、マスタ装置とスレーブ装置との間の通信で実際に使用するパラメータであり、通信設定パラメータＳＥＴＴＩＮＧにより保持されるパラメータは、通信能力パラメータＣＰＢＬに含まれる全てのパラメータあるいは一部のパラメータである。
【０１４３】
図８では、パラメータとして、「インタフェース性能」「データブロック長」「転送単位ブロック数」「省電力モード移行時間」「省電力モード復帰時間」「同期シンボル数」「ブロック間隔」が設定されており、これらの設定パラメータが通信能力パラメータＣＰＢＬとして保持される。また、上記設定パラメータは、通信設定パラメータＳＥＴＴＩＮＧとして設定可能である（通信設定パラメータＳＥＴＴＩＮＧに、上記設定パラメータを含めることができる）。
【０１４４】
なお、パラメータ（設定パラメータ）は、上記に限定されるものではなく、必要に応じて、その他のパラメータを設定してもよいし、不要なパラメータを削除してもよい。また、複数のパラメータが１つのレジスタに含まれるものであってもよく、また、パラメータは、パラメータの内容（物理層かリンク層か、など）によって異なるレジスタに含まれるものであってもよい。さらに、パラメータ毎に別のレジスタとして、パラメータが設定（保持）されるものであってもよい。
【０１４５】
図８においては、「インタフェース性能」は、インタフェースの転送性能を示すパラメータであり、そのパラメータ値は、例えば、１００ＭＢ／ｓや１Ｇｂｐｓのような数値や、ｍｏｄｅやＬｅｖｅｌ、Ｇｅｎｅｒａｔｉｏｎなどを示す値により設定される。
【０１４６】
「データブロック長」は、データを送受信する際のデータブロックのサイズ、または、サポートするブロック長の最大値（最大ブロックサイズ）を示すパラメータであり、そのパラメータ値は、例えば、５１２バイトや１Ｋバイトのような数値（バイト数）により設定される。
【０１４７】
「転送単位ブロック数」は、データを送受信する際にバースト転送するブロックの数を示すパラメータであり、そのパラメータ値は、例えば、４ブロックや１６ブロックのような数値（ブロック数）により設定される。なお、「転送単位ブロック数」は、固定値（転送ブロック数が当該値に限定される。）を指定されるものであってもよいし、あるいは、転送単位ブロック数の最大値が指定されるものであってもよい。
【０１４８】
「省電力モード移行時間」「省電力モード復帰時間」は、マスタ装置、スレーブ装置が動作中の状態から省電力モードへ遷移する時間および省電力モードから動作可能な状態へ復帰する時間を示すパラメータであり、そのパラメータ値は、例えば、１００ｍｓのような絶対時間や１０００サイクルのようなクロックサイクル数、あるいは、１００シンボルのような移行・復帰の際に送受信されるシンボル数などにより設定される。なお、「省電力モード移行時間」、「省電力モード復帰時間」は、一例であり、これらの全部または一部は、設定されなくてもよい。
【０１４９】
「同期シンボル数」は、マスタ装置および／またはスレーブ装置がクロックとデータの位相合わせを行うのに必要な同期用のシンボル数を示すパラメータであり、そのパラメータ値は、例えば、３２シンボル、６４シンボルのようなシンボル数を表す値（この値はシンボル数を示す値であればよく、シンボル数の値そのものでなくてもよい。）が設定される。
【０１５０】
「ブロック間隔」は、転送するデータブロックとデータブロックの最小間隔を示すパラメータであり、そのパラメータは、例えば、１０ナノ秒のような絶対時間や、１０サイクルのようなクロックサイクル数、あるいは、データブロックとデータブロックの間に所定のシンボルを送る場合は２０シンボルのようなシンボル数を表す値（この値はシンボル数を示す値であればよく、シンボル数の値そのものでなくてもよい。）等により設定される。
【０１５１】
マスタ装置２は、後述するコンフィギュレーション処理において、スレーブ装置１、１ａ〜１ｃの通信能力パラメータＣＰＢＬを取得し、取得したスレーブ装置の通信能力パラメータＣＰＢＬとマスタ装置自身の通信能力パラメータＣＰＢＬと比較し、マスタ装置とスレーブ装置の双方が満たすパラメータを決定する（マスタ装置とスレーブ装置の双方が満たす各パラメータ値を決定する）。そして、決定したパラメータを通信設定パラメータＳＥＴＴＩＮＧとして、スレーブ装置のパラメータ設定部２１２Ｍに設定する。例えば、通信設定パラメータＳＥＴＴＩＮＧの各パラメータの設定は、以下のようにして行う。
（１）「インタフェース性能」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち低いインタフェース性能を示す値を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「インタフェース性能」の値として設定する。例えば、マスタ装置のパラメータが１Ｇｂｐｓ、スレーブ装置のパラメータが５００Ｍｂｐｓである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「インタフェース性能」の値は、「５００Ｍｂｐｓ」に設定され、マスタ装置とスレーブ装置とは、５００Ｍｂｐｓ以下で通信を行う。
（２）「データブロック長」の設定
マスタ装置およびスレーブ装置が通信能力パラメータＣＰＢＬに保持する値のうち小さいブロック長を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値として設定する。例えば、マスタ装置のパラメータが５１２バイト、スレーブ装置のパラメータが５１２バイトまたは１Ｋバイトである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値は、「５１２バイト」に設定され、マスタ装置とスレーブ装置とは、ブロック長５１２バイト以下で通信を行う。また、例えば、「データブロック長」が最大ブロック長により設定される場合であって、マスタ装置のパラメータが５１２バイト（最大５１２バイト）、スレーブ装置のパラメータが１Ｋバイト（最大１Ｋバイト）である場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「データブロック長」の値は、「５１２バイト（最大５１２バイト）」に設定され、マスタ装置とスレーブ装置とは、ブロック長５１２バイト以下のブロック長のデータブロックにより通信を行う。
（３）「省電力モード移行時間」「省電力モード復帰時間」の設定
マスタ装置・スレーブ装置が通信能力パラメータＣＰＢＬに保持する値のうち長い時間を、それぞれ、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「省電力移行時間」、「省電力モード復帰時間」の値として設定する。例えば、マスタ装置のパラメータ「省電力移行時間」（「省電力復帰時間」）の値が１００ｍｓであり、スレーブ装置のパラメータ「省電力移行時間」（「省電力復帰時間」）の値が１５０ｍｓである場合には、通信システム１０００では、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「省電力モード移行時間」（「省電力復帰時間」）の値は、「１５０ｍｓ」に設定され、マスタ装置とスレーブ装置とは、省電力モードの移行・復帰を１５０ｍｓ以上として通信を行う。
（４）「同期シンボル数」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち大きい方の値（同期シンボル数が多い方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「同期シンボル数」の値として設定する。なお、同期シンボル数は、データ受信端子が同期トリガーとして認識することができるシンボル数である。
（５）「ブロック間隔」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち大きい方の値（ブロック間隔が長い方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「ブロック間隔」の値として設定する。なお、ブロック間隔は、データパケット間の間隔を示すものであり、例えば、アイドルシンボルの数により表される。
（６）「転送単位ブロック数」の設定
マスタ装置およびスレーブ装置が、それぞれ、パラメータ表示部２１１Ｍおよび１１１Ｓに保持する値のうち小さい方の値（転送単位ブロック数が少ない方の値）を、通信設定パラメータＳＥＴＴＩＮＧのパラメータ「転送単位ブロック数」の値として設定する。なお、転送単位ブロック数は、フロー制御の１単位（Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）において、転送されるブロック数である。
【０１５２】
なお、上記パラメータの設定は、一例であり、これらに限定されないことは言うまでもない。
【０１５３】
このように、各パラメータによって、比較方法（大小比較、長短の比較）は、異なるが、通信システム１０００において、通信設定パラメータＳＥＴＴＩＮＧには、マスタ装置およびスレーブ装置の双方が満たすパラメータ値が設定される。つまり、通信システム１０００において、通信設定パラメータＳＥＴＴＩＮＧの各パラメータには、マスタ装置およびスレーブ装置のうち、性能の低いほうに合わせた値またはそれ以下の値が設定される。
【０１５４】
以降の説明において、「パラメータの比較」として説明する処理は、ここで述べたように２つのパラメータのうち、性能の低いほうに合わせた値、または、それ以下の値を選ぶことを意味する。
【０１５５】
なお、マスタ装置２は、通信設定パラメータＳＥＴＴＩＮＧに含まれるパラメータのうちの一部あるいは全部のパラメータについて、スレーブ装置１、１ａ〜１ｃが満たすパラメータを、マスタ装置２自身の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部１１２Ｓに設定し、マスタ装置２が満たすパラメータをスレーブ装置１、１ａ〜１ｃの通信設定パラメータＳＥＴＴＩＮＧとして、スレーブ装置１ａ〜１ｃのパラメータ設定部１１２Ｓに設定してもよい。このようにしても、マスタ装置２とスレーブ装置１、１ａ〜１ｃとは、お互いに相手が満たすパラメータで通信を行うことができる。
【０１５６】
（１．３．２：１対１接続でのコンフィギュレーション処理）
図９は、マスタ装置２とスレーブ装置１とが１対１接続された場合のコンフィギュレーション処理を説明するための図である。
【０１５７】
図９（ａ）において、マスタ装置２は、スレーブ装置１に対して、スレーブ装置１のパラメータ表示部の通信能力パラメータＣＰＢＬ１を読み出すためのパラメータ取得コマンド９１（Ｉｎｑ）を、スレーブ装置１のＩＤ＝１を指定して発行する。
【０１５８】
スレーブ装置１は、マスタ装置２からのコマンド９１を受信すると、パラメータ表示部のパラメータＣＰＢＬ１を含む応答９２をマスタ装置２へ送信する。
【０１５９】
図９（ｂ）において、マスタ装置２は、応答９２に含まれるＣＰＢＬ１をマスタ装置２自身のパラメータ設定部に設定し、マスタ装置２自身のパラメータ表示部に保持したパラメータＣＰＢＬ０をスレーブ装置１へ設定するため、パラメータ設定コマンド９３（Ｓｅｔ）をスレーブ装置１へ送信する。
【０１６０】
スレーブ装置１は、コマンド９３に含まれるＣＰＢＬ０を自身のパラメータ設定部に設定し、マスタ装置２に対して応答９４を送信する。
【０１６１】
１対１接続の通信システム１０００において、以上の処理が実行されることで、図９（ｃ）の状態になる。つまり、マスタ装置２とスレーブ装置１とは、それぞれ、自身のパラメータ設定部に、送信相手のパラメータ表示部に保持されているパラメータを設定し、以降設定したパラメータを用いて通信を行う。これにより、マスタ装置２とスレーブ装置１とは、それぞれ、通信相手の通信能力を知ることができ、１対１接続の通信システム１０００において、効率の良い通信を行うことができる。
【０１６２】
なお、以下のようにして、１対１接続の通信システム１０００において、コンフィギュレーション処理を実行してもよい。すなわち、図９（ｄ）に示すように、マスタ装置２は、図９（ｂ）で取得したスレーブ装置１の通信能力パラメータＣＰＢＬ１と自身の通信能力パラメータＣＰＢＬ０とを比較して、マスタ装置２およびスレーブ装置１の両方が満たす共通のパラメータＰａｒａｍ０１を、マスタ装置２自身のパラメータ設定部に設定する。そして、マスタ装置２は、スレーブ装置１に対して、パラメータ設定コマンド９５を発行し、スレーブ装置１のパラメータ設定部に、共通のパラメータＰａｒａｍ０１を設定する。この場合、図９（ｅ）に示すように、マスタ装置２およびスレーブ装置１では、通信設定パラメータＳＥＴＴＩＮＧにおいて、共通のパラメータＰａｒａｍ０１が設定され、以降設定されたパラメータＰａｒａｍ０１を用いて通信が行なわれる。
【０１６３】
（１．３．３：リング接続での第１のコンフィギュレーション処理）
図１０は、通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃとがリング接続された場合の第１のコンフィギュレーション処理を説明するための図である。
【０１６４】
図１０（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加してパラメータ取得コマンド１０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０１６５】
スレーブ装置１ａは、パラメータ取得コマンド１０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部の通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果Ｃｏｍｐ１を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０２を次のスレーブ装置１ｂへ送信する。なお、Ｃｏｍｐ１は、比較対象を初期値Ｉｎｉｔとスレーブ装置１ａのパラメータ表示部の通信能力パラメータＣＰＢＬとし、初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成するパラメータごとに比較された結果に基づいて設定されたパラメータ値から構成される。
【０１６６】
ここで「比較」とは、前述したとおり、２つのパラメータの値のうち、性能の低い方の値またはその値以下の任意の値を選ぶことを意味する。
【０１６７】
スレーブ装置１ｂもパラメータ取得コマンド１０２を受信すると、Ｃｏｍｐ１とＣＰＢＬ２とを比較し、その比較結果Ｃｏｍｐ２を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０３を次のスレーブ装置１ｃへ送信する。
【０１６８】
スレーブ装置１ｃも同様に、Ｃｏｍｐ２とＣＰＢＬ３とを比較し、その比較結果Ｃｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０４を送信する。
【０１６９】
そして、マスタ装置２は、パラメータ取得コマンド１０４を受信する。このパラメータ取得コマンド１０４に付加されているペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃのそれぞれが有する通信能力のうち、最も低い値に設定されている。すなわち、ペイロードＣｏｍｐ３の各パラメータの値（Ｐａｒａ＿ｃｏｍｐ３［ｉ］）は、スレーブ装置１ａ〜１ｃの通信能力パラメータＣＰＢＬとして保持されているパラメータ値（Ｐａｒａ＿Ｓ１ａ［ｉ］、Ｐａｒａ＿Ｓ１ｂ［ｉ］、Ｐａｒａ＿Ｓ１ｃ［ｉ］）の最低値（通信能力が最も低い値）に設定されている。
【０１７０】
すなわち、最低値（通信能力が最も低い値）が最小値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍｉｎ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
であり、
最低値（通信能力が最も低い値）が最大値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍａｘ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
である。
【０１７１】
なお、Ｍｉｎ（）は、要素の最小値を取得する関数であり、Ｍａｘ（）は、要素の最大値を取得する関数である。
【０１７２】
また、Ｐａｒａ＿Ｓ１ａ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ａの通信能力パラメータＣＰＢＬに保持されているパラメータ値である
Ｐａｒａ＿Ｓ１ｂ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｂの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
【０１７３】
Ｐａｒａ＿Ｓ１ｃ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｃの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
【０１７４】
マスタ装置２は、パラメータ取得コマンド１０４を受信すると、受信した値（ペイロードＣｏｍｐ３に設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。つまり、
（１）パラメータ取得コマンド１０１に初期値Ｉｎｉｔとして、マスタ装置２の通信能力パラメータＣＰＢＬ０を設定した場合、マスタ装置２は、Ｐａｒａｍ０１２３＝Ｃｏｍｐ３として、Ｐａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。
（２）一方、パラメータ取得コマンド１０１に初期値Ｉｎｉｔとして、マスタ装置２の通信能力パラメータＣＰＢＬ０を設定しなかった場合は、マスタ装置２が受信した値Ｃｏｍｐ３と、マスタ装置２の通信能力パラメータＣＰＢＬ０とのうちの通信能力が低い値にパラメータを設定することでＰａｒａｍ０１２３を取得し、取得したＰａｒａｍ０１２３をマスタ装置２自身のパラメータ設定部に設定する。
【０１７５】
そして、図１０Ａ（ｂ）に示すように、マスタ装置２は、設定した値（Ｐａｒａｍ０１２３）をパラメータ設定コマンド１０５のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
【０１７６】
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１０５を受信すると、Ｐａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３をスレーブ装置自身のパラメータ設定部に設定し、受信したコマンド１０５をそのまま送信する。
【０１７７】
このようにして、マスタ装置２がコマンド１０５を受信すると、リング接続の通信システム１０００において、コンフィギュレーション処理が完了する。
【０１７８】
ここで、図１０Ｂ（ｃ）、（ｄ）を用いて、通信システム１０００において、図８に示したパラメータ「ブロック間隔」を設定する例について、説明する。
【０１７９】
図１０Ｂ（ｃ）に示すように、マスタ装置２の通信能力パラメータのパラメータ「ブロック間隔」は「２」であり、スレーブ装置１ａのパラメータ「ブロック間隔」は「０」であり、スレーブ装置１ｂのパラメータ「ブロック間隔」は「４」であり、スレーブ装置１ｃのパラメータ「ブロック間隔」は「２」であるものとする。
【０１８０】
図１０Ｂ（ｃ）に示すように、マスタ装置２は、パラメータ「ブロック間隔」の初期値「２」をＰａｙｌｏａｄとして付加してパラメータ取得コマンド１０１をブロードキャストコマンドとして送信する。
【０１８１】
スレーブ装置１ａは、パラメータ取得コマンド１０１を受信すると、当該コマンドに付加された初期値「２」と自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「０」とを比較する。ブロック間隔の場合、パラメータ「ブロック間隔」の値が大きい方が通信能力が低いので、Ｍａｘ（）関数を用いて、比較する。つまり、
Ｍａｘ（２，０）＝２
により、スレーブ装置１ａは、比較結果「２」を取得する。そして、スレーブ装置１ａは、その比較結果「２」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０２を次のスレーブ装置１ｂへ送信する。
【０１８２】
スレーブ装置１ｂは、パラメータ取得コマンド１０２を受信すると、同様に、受信したコマンドのＰａｙｌｏａｄのパラメータ「ブロック間隔」の値「２」と、自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「４」とを比較する。つまり、
Ｍａｘ（２，４）＝４
により、スレーブ装置１ｂは、比較結果「４」を取得する。そして、スレーブ装置１ｂは、その比較結果「４」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０３を次のスレーブ装置１ｃへ送信する。
【０１８３】
スレーブ装置１ｃは、パラメータ取得コマンド１０３を受信すると、同様に、受信したコマンドのＰａｙｌｏａｄのパラメータ「ブロック間隔」の値「４」と、自身のパラメータ表示部の通信能力パラメータＣＰＢＬのパラメータ「ブロック間隔」の値「２」とを比較する。つまり、
Ｍａｘ（４，２）＝４
により、スレーブ装置１ｃは、比較結果「４」を取得する。そして、スレーブ装置１ｃは、その比較結果「４」を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１０４をマスタ装置２へ送信する。
【０１８４】
そして、マスタ装置２は、パラメータ取得コマンド１０４を受信する。このパラメータ取得コマンド１０４に付加されているペイロードのパラメータ「ブロック間隔」の値「４」は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、マスタ装置２およびスレーブ装置１ａ〜１ｃのそれぞれが有する通信能力（ブロック間隔についての通信能力）の下限値「４」（この場合は最大値「４」）に設定されている。
【０１８５】
マスタ装置２は、パラメータ取得コマンド１０４を受信すると、受信した値（ペイロードに設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータ「ブロック間隔」の値「４」をマスタ装置２自身のパラメータ設定部に設定する。そして、図１０Ｂ（ｄ）に示すように、マスタ装置２は、設定した値をパラメータ設定コマンド１０５のＰａｙｌｏａｄにパラメータ「ブロック間隔」の値「４」を付加して、ブロードキャストコマンドとして送信する。
【０１８６】
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１０５を受信すると、Ｐａｙｌｏａｄに含まれるパラメータ「ブロック間隔」の値「４」をスレーブ装置自身のパラメータ設定部に設定し、受信したコマンド１０５をそのまま送信する。
【０１８７】
このようにして、マスタ装置２がコマンド１０５を受信すると、リング接続の通信システム１０００において、コンフィギュレーション処理が完了する。つまり、この場合、マスタ装置およびスレーブ装置１ａ〜１ｃの通信設定パラメータのパラメータ「ブロック間隔」の値は「４」に設定されて、コンフィギュレーション処理が完了する。
【０１８８】
図１０Ｃ（ｅ）、（ｆ）は、通信システム１０００において、マスタ装置２およびスレーブ装置１ａ〜１ｃにより実行される第１のコンフィギュレーション処理におけるフローチャートである。
【０１８９】
≪マスタ装置側の処理≫
（Ｓ１００１）：
図１０Ｃ（ｅ）に示すように、マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定する（Ｓ１００１）。
（Ｓ１００２）：
マスタ装置２は、Ｐａｙｌｏａｄに初期値が設定されたパラメータ取得コマンドをブロードキャストコマンドとして発行する(Ｓ１００２)。
（Ｓ１００３）：
マスタ装置２は、マスタ装置２が発行したコマンドを受信するまで（発行したコマンドが返信されるまで）待つ（Ｓ１００３）。なお、ここでは、初期値はマスタ装置２が満たすパラメータを含むものとするが、先に述べたようにこれ以外の値を初期値としてもよい。
（Ｓ１００４）：
マスタ装置２は、コマンドを受信すると、Ｐａｙｌｏａｄに含まれる値をＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１００４）。
（Ｓ１００５）：
マスタ装置２は、さらに、受信したＰａｙｌｏａｄを新たに送信Ｐａｙｌｏａｄとしてする（Ｓ１００５）。
（Ｓ１００６）：
マスタ装置２は、さらに、受信したＰａｙｌｏａｄを新たな送信Ｐａｙｌｏａｄとしたパラメータ設定コマンドをブロードキャストコマンドとして発行する（Ｓ１００６）。
（Ｓ１００７）：
そして、マスタ装置２は、発行したコマンドを受信する（Ｓ１００７）。
【０１９０】
以上により、通信システム１０００において、コンフィギュレーション処理が終了する。
【０１９１】
≪スレーブ装置側の処理≫
（Ｓ１００８）：
また、図１０Ｃ（ｆ）に示すように、スレーブ装置１ａ〜１ｃは、コマンドを受信する（Ｓ１００８）。
（Ｓ１００９）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドであるかを判定する（Ｓ１００９）。
（Ｓ１０１０）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドであった場合、受信コマンドに付加されたＰａｙｌｏａｄと自身のパラメータ表示部に保持するパラメータを比較する（Ｓ１０１０）。
（Ｓ１０１１）：
スレーブ装置１ａ〜１ｃは、比較結果を新たなＰａｙｌｏａｄとする（Ｓ１０１１）。
（Ｓ１０１２）：
スレーブ装置１ａ〜１ｃは、Ｓ１０１１で生成した新たなＰａｙｌｏａｄを付加したパラメータ取得コマンドを発行する（Ｓ１０１２）。
（Ｓ１０１３）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ取得コマンドでない場合、受信したコマンドがパラメータ設定コマンドであるかを判定する（Ｓ１０１３）。
（Ｓ１０１４）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ設定コマンドであった場合、受信コマンドに付加されたＰａｙｌｏａｄを自身のＳＥＴＴＩＮＧとしてパラメータ設定部に設定する（Ｓ１０１４）。
（Ｓ１０１５）：
スレーブ装置１ａ〜１ｃは、受信したパラメータ設定コマンドをそのまま送信する（Ｓ１０１５）。
（Ｓ１０１６）：
スレーブ装置１ａ〜１ｃは、受信したコマンドが、パラメータ取得コマンド、パラメータ設定コマンドのいずれでもない場合、受信したコマンドの種別に応じた処理を行う（Ｓ１０１６）。
【０１９２】
このようにして、通信システム１０００では、マスタ装置２とスレーブ装置１ａ〜１ｃが、パラメータ取得および設定コマンドにより、コンフィギュレーション処理を行うことができる。
【０１９３】
なお、図１０Ｄ（ｇ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃは、マスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することになる。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常に、マスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【０１９４】
さらに、マスタ装置２とスレーブ装置１ａ〜１ｃとが、同一基板上に実装されたようなエンベデッドシステムでは、予め設定するパラメータをマスタ装置の持つＲＯＭやフラッシュメモリなどの不揮発性メモリに保持しておき、当該システムの初期化時にパラメータ設定コマンドで、ＲＯＭや不揮発性メモリ等に保持されているパラメータを設定することも可能である。この場合、予め設定されたパラメータを用いて、スレーブ装置１ａ〜１ｃのパラメータを設定することができるため、パラメータ取得コマンドは、不要となる。したがって、この場合、通信システム１０００において、初期化時間を短縮することが可能である。
【０１９５】
（１．３．４：チェーン接続での第１のコンフィギュレーション処理）
図１２は、通信システム１０００において、マスタ装置２とスレーブ装置１ａ〜１ｃがチェーン接続された場合の第１のコンフィギュレーション処理を説明するための図である。
【０１９６】
図１２（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加してパラメータ取得コマンド１２０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０１９７】
スレーブ装置１ａは、パラメータ取得コマンド１２０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部の通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果Ｃｏｍｐ１をＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０２を次のスレーブ装置１ｂへ送信する。なお、Ｃｏｍｐ１は、比較対象を初期値Ｉｎｉｔとスレーブ装置１ａのパラメータ表示部の通信能力パラメータＣＰＢＬとし、初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成するパラメータごとに比較された結果に基づいて設定されたパラメータ値から構成される。
【０１９８】
スレーブ装置１ｂもパラメータ取得コマンド１２０２を受信すると、Ｃｏｍｐ１とＣＰＢＬ２とを比較し、その比較結果Ｃｏｍｐ２をＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０３を次のスレーブ装置１ｃへ送信する。
【０１９９】
スレーブ装置１ｃも同様に、Ｃｏｍｐ２とＣＰＢＬ３とを比較し、その比較結果Ｃｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１２０４を送信する。
【０２００】
スレーブ装置１ｂ、１ａは、図１２（ａ）に示すように、スレーブ装置１ｃから送信されたパラメータ取得コマンド１２０４を受信すると、その受信したパラメータ取得コマンド１２０４をそのまま送信する。
【０２０１】
そして、マスタ装置２は、スレーブ装置１ａが送信したパラメータ取得コマンド１２０４を受信する。このパラメータ取得コマンド１２０４に付加されているペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たす通信パラメータとなっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値（Ｐａｒａ＿ｃｏｍｐ３［ｉ］）は、スレーブ装置１ａ〜１ｃの通信能力パラメータＣＰＢＬとして保持されているパラメータ値（Ｐａｒａ＿Ｓ１ａ［ｉ］、Ｐａｒａ＿Ｓ１ｂ［ｉ］、Ｐａｒａ＿Ｓ１ｃ［ｉ］）の最低値（通信能力が最も低い値）に設定されている。
【０２０２】
すなわち、最低値（通信能力が最も低い値）が最小値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍｉｎ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
であり、
最低値（通信能力が最も低い値）が最大値となる場合、
Ｐａｒａ＿ｃｏｍｐ３［ｉ］＝Ｍａｘ（Ｐａｒａ＿Ｓ１ａ［ｉ］，Ｐａｒａ＿Ｓ１ｂ［ｉ］，Ｐａｒａ＿Ｓ１ｃ［ｉ］）
（ｉ＝１〜Ｎ、Ｎはパラメータの数）
である。
【０２０３】
なお、Ｍｉｎ（）は、要素の最小値を取得する関数であり、Ｍａｘ（）は、要素の最大値を取得する関数である。
【０２０４】
また、Ｐａｒａ＿Ｓ１ａ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ａの通信能力パラメータＣＰＢＬに保持されているパラメータ値である
Ｐａｒａ＿Ｓ１ｂ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｂの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
【０２０５】
Ｐａｒａ＿Ｓ１ｃ［ｉ］（ｉ＝１〜Ｎ）は、スレーブ装置１ｃの通信能力パラメータＣＰＢＬに保持されているパラメータ値である。
【０２０６】
マスタ装置２は、パラメータ取得コマンド１２０４を受信すると、受信した値（ペイロードＣｏｍｐ３に設定されている値）に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３をＳＥＴＴＩＮＧとしてマスタ装置２自身のパラメータ設定部に設定する。そして、図１２（ｂ）に示すように、マスタ装置２は、設定した値をパラメータ設定コマンド１２０５のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
【０２０７】
スレーブ装置１ａ〜１ｃは、マスタ装置２から発行されたパラメータ設定コマンド１２０５を受信すると、当該コマンドのＰａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３を自身のパラメータ設定部に設定すると共に、受信したコマンド１２０５をそのまま送信する。
【０２０８】
このようにして、パラメータ設定コマンド１２０５は、スレーブ装置１ａ〜１ｃの間で転送され、マスタ装置２がパラメータ設定コマンド１２０５を受信すると、通信システム１０００において、コンフィギュレーション処理が完了する（図１２（ｂ））。
【０２０９】
なお、図１２（ｃ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃはマスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することにある。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常にマスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【０２１０】
（１．３．５：ハブ接続での第１のコンフィギュレーション処理）
図１４Ａは、マスタ装置２とスレーブ装置１ａ〜１ｃとがハブ接続された場合の第１のコンフィギュレーション処理を説明するための図である。
【０２１１】
図１４Ａ（ａ）に示すように、マスタ装置２は、初期値ＩｎｉｔをＰａｙｌｏａｄとして付加したパラメータ取得コマンド１４０１をブロードキャストコマンドとして送信する。初期値Ｉｎｉｔは、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０の値を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０２１２】
図１４Ａ（ａ）の場合、ハブ３は、スレーブ装置１ａ〜１ｃに対して、パラメータ取得コマンド１４０１を送信する。
【０２１３】
スレーブ装置１ａ〜１ｃは、ハブ３からのパラメータ取得コマンド１４０１を受信すると、当該コマンドに付加された初期値Ｉｎｉｔと自身のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬとを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬを構成する各パラメータごとに比較し）、その比較結果を、それぞれＣｏｍｐ０１、Ｃｏｍｐ０２、Ｃｏｍｐ０３として、Ｐａｙｌｏａｄに付加したパラメータ取得コマンド１４０２、１４０３、１４０４をハブへ送信する。
【０２１４】
ハブ３は、スレーブ装置１ａ〜１ｃからコマンド１４０２〜１４０４を受信すると、以下の（１）〜（３）の処理を行う。
（１）ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンド１４０２〜１４０４に付加されているペイロードＣｏｍｐ０１、Ｃｏｍｐ０２、Ｃｏｍｐ０３から、スレーブ装置１ａ〜１ｃの通信能力を示すパラメータ値を取得する。
（２）ハブ３は、取得したスレーブ装置１ａ〜１ｃの通信能力を示すパラメータ値から、パラメータ値ごとに、最低値（通信能力が最低である値）を検出し（比較処理を実行し）、検出した値を、Ｃｏｍｐ３の対応するパラメータ値に設定する。このようにして、ハブ３は、比較結果Ｃｏｍｐ３を生成する。
（３）ハブ３は、Ｐａｙｌｏａｄを比較した結果であるＣｏｍｐ３を新たなＰａｙｌｏａｄとして付加したパラメータ取得コマンド１４０５を、マスタ装置へ送信する。
【０２１５】
そして、マスタ装置２は、ハブ３が送信したパラメータ取得コマンド１０４を受信すると、コマンド１０４に付加されているペイロードの値Ｃｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。つまり、ペイロードＣｏｍｐ３の各パラメータの値は、スレーブ装置１ａ〜１ｃのそれぞれが有する通信能力の下限値に設定されている。
【０２１６】
そして、マスタ装置２は、図１４Ａ（ｂ）に示すように、パラメータ取得コマンド１４０５を受信すると、当該コマンドのペイロードに設定されている値に基づいて、マスタ装置２およびスレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ０１２３を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１４０６のＰａｙｌｏａｄに付加して、ブロードキャストコマンドとして送信する。
【０２１７】
ハブ３は、スレーブ装置１ａ〜１ｃに対して、マスタ装置２から受信したブロードキャストコマンド１４０６を送信する。
【０２１８】
スレーブ装置１ａ〜１ｃは、ハブ３からのブロードキャストコマンド１４０６を受信すると、当該コマンドのＰａｙｌｏａｄに含まれるパラメータＰａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定すると共に、受信したコマンド１４０６をそのまま送信する。
【０２１９】
ハブ３は、スレーブ装置１ａ〜１ｃから受信したコマンド１４０６を、そのままマスタ装置２へ送信する。
【０２２０】
このようにして、通信システム１０００において、ブロードキャストコマンド１４０６は、スレーブ装置１ａ〜１ｃへ転送され、マスタ装置２が受信するとコンフィギュレーション処理が完了する。
【０２２１】
なお、図１４Ｂ（ｃ）に示すように、以下のように、パラメータ設定することも可能である。すなわち、マスタ装置２は、パラメータ取得コマンドで取得したパラメータを、スレーブ装置１ａ〜１ｃが満たすパラメータＰａｒａｍ１２３としてマスタ装置２のパラメータ設定部に設定する。そして、スレーブ装置１ａ〜１ｃに設定するパラメータは、マスタ装置２のパラメータ表示部の保持するパラメータＣＰＢＬ０とする。このようにパラメータを設定した場合、マスタ装置２は、スレーブ装置１ａ〜１ｃが共通で満たすパラメータをＳＥＴＴＩＮＧとして保持し、かつ、スレーブ装置１ａ〜１ｃは、マスタ装置２が満たすパラメータＣＰＢＬ０をＳＥＴＴＩＮＧとして保持することになる。したがって、通信システム１０００において、スレーブ装置間での通信を行うことがなく、常にマスタ装置とスレーブ装置との間で通信が行われる場合には、上記のようなパラメータ設定を行うことで、通信システム１０００において、（マスタ装置とスレーブ装置との間の）通信を行うことができる。
【０２２２】
なお、図１４Ｃに示すように、通信システム１０００において、ハブ３により、コマンド（データ）が、マスタ装置２から、（１）スレーブ装置１ａ、（２）スレーブ装置１ｂ、（３）スレーブ装置１ｃという順番で送信されるようにハブ３を構成すれば、上記リング接続と等価であるとみなすことができる。したがって、この場合、通信システム１０００において、上記で説明したリング接続でのコンフィギュレーション処理と同様の処理により、コンフィギュレーション処理を実行することができる。なお、図１４Ｃ（ａ）に示した状態は、図１０Ａ（ａ）に示した状態と同様であり、また、図１４Ｃ（ｂ）に示した状態は、図１０Ａ（ｂ）に示した状態と同様である。
【０２２３】
以上、図面を用いて説明したとおり、第１実施形態に係る通信システム１０００では、マスタ装置と複数のスレーブ装置とが接続された通信システムにおいて、マスタ装置がパラメータ取得コマンドおよびパラメータ設定コマンドをブロードキャストコマンドで発行し、コンフィギュレーション処理を行う。このとき、通信システム１０００において、発行するコマンド数は、接続されるスレーブ装置の数によらず、一定である。したがって、通信システム１０００では、少ないコマンド数で全てのスレーブ装置のコンフィギュレーションを行うことができる。このため、通信システム１０００では、スレーブ装置の初期化時間を短縮することができる。
【０２２４】
また、通信システム１０００において、マスタ装置およびスレーブ装置の動作および処理中に送受信されるパラメータ取得コマンドおよびパラメータ設定コマンドは、マスタ装置とスレーブ装置の接続形態によらず同じであり、マスタ装置とスレーブ装置が、１対１接続の場合であっても、１対多接続の場合であっても、通信システム１０００では、同じパラメータ取得コマンドおよびパラメータ設定コマンドをブロードキャストコマンドとして発行してコンフィギュレーションを行うことも可能である。これによって、同じマスタ装置、スレーブ装置を用いて様々な接続形態で通信システムを柔軟に構成することができる。
【０２２５】
［第２実施形態］
次に、本発明の第２実施形態について、説明する。
【０２２６】
なお、本実施形態の通信システムは、第１実施形態の通信システム１０００と同様の構成を有している。ただし、通信システムでの処理の方法が異なる。
【０２２７】
＜２．１：第２のコンフィギュレーション処理＞
以下、図面を用いて、第２実施形態に係る通信システムにおける、第２のコンフィギュレーション処理を説明する。なお、特に明記しない限り、用いられる記号、番号等は、第１実施形態と同じものとする。
【０２２８】
（２．１．１：リング接続での第２のコンフィギュレーション処理）
まず、リング接続での第２のコンフィギュレーション処理について、説明する。
【０２２９】
図１１Ａ、Ｂは、本実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがリング接続された場合の第２のコンフィギュレーション処理を説明するための図である。
【０２３０】
図１１Ａ（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０２３１】
スレーブ装置１ａは、パラメータ設定コマンド１１１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部の通信能力パラメータＣＰＢＬ１とを比較し（初期値Ｉｎｉｔおよび通信能力パラメータＣＰＢＬ１を構成する各パラメータごとに比較し）、その比較結果Ｐａｒａｍ０１を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する。そして、スレーブ装置１ａは、比較結果Ｐａｒａｍ０１を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１２を次のスレーブ装置１ｂへ送信する。
【０２３２】
スレーブ装置１ｂも、スレーブ装置１ａからのパラメータ設定コマンド１１２を受信すると、Ｐａｒａｍ０１とＣＰＢＬ２とを比較し、その比較結果Ｐａｒａｍ０１２を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、比較結果Ｐａｒａｍ０１２を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１３を次のスレーブ装置１ｃへ送信する。
【０２３３】
スレーブ装置１ｃも、同様に、Ｐａｒａｍ０１２とＣＰＢＬ３とを比較し、その比較結果Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、比較結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１１４をマスタ装置２に送信する。
【０２３４】
そして、マスタ装置２は、パラメータ設定コマンド１１４を受信する。このパラメータ設定コマンド１１４に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
【０２３５】
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
【０２３６】
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１１Ｂ（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１１４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明する図である。
【０２３７】
図１１Ｂ（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１１５を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１１５を受信し、当該コマンドに付加されているＰａｒａｍ０１２３と自身のパラメータ表示部の通信能力パラメータＣＰＢＬ１〜３とを比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１１５を送信するように動作する。
【０２３８】
そして、マスタ装置２が、パラメータ設定コマンド１１５を受信すると、コンフィギュレーション処理が完了する。
【０２３９】
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１１Ｂ（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１１４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【０２４０】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
【０２４１】
次に、フローチャートを用いて、本実施形態の第２のコンフィギュレーション処理について、説明する。
【０２４２】
図１１Ｃ（ｃ）、（ｄ）は、マスタ装置２およびスレーブ装置１ａ〜１ｃの第２のコンフィギュレーション処理におけるフローチャートである。
【０２４３】
≪マスタ装置側の処理≫
（Ｓ１１０１）：
図１１Ｃ（ｃ）に示すように、マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定する（Ｓ１１０１）。
（Ｓ１１０２）：
マスタ装置２は、Ｐａｙｌｏａｄに初期値を設定したパラメータ取得コマンドをブロードキャストコマンドとして発行する(Ｓ１１０２)。
（Ｓ１１０３）：
マスタ装置２は、マスタ装置２が発行したコマンドを受信するまで（発行したコマンドが返信されるまで）待つ（Ｓ１１０３）。なお、ここでは、初期値は、マスタ装置２が満たすパラメータを含むものとするが、先に述べたようにこれ以外の値を初期値としてもよく、例えば、マスタ装置２のパラメータ表示部に保持するパラメータＣＰＢＬ０を初期値に設定してもよい。
（Ｓ１１０４）：
マスタ装置２は、コマンドを受信すると、受信コマンドに付加されたＰａｙｌｏａｄをＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１１０４）。
（Ｓ１１０５）：
そして、マスタ装置２は、受信したＰａｙｌｏａｄと送信したＰａｙｌｏａｄとが一致するかどうかを検出する（Ｓ１１０５）。一致する場合には、コンフィギュレーション処理を完了する。
（Ｓ１１０６）：
マスタ装置２は、上記の検出の結果、受信したＰａｙｌｏａｄと送信したＰａｙｌｏａｄとが一致しない場合、受信したＰａｙｌｏａｄを送信Ｐａｙｌｏａｄとする（Ｓ１１０６）。
（Ｓ１１０７）：
マスタ装置２は、受信したＰａｙｌｏａｄを送信Ｐａｙｌｏａｄとしたパラメータ設定コマンドをブロードキャストコマンドとして発行する（Ｓ１１０７）。
（Ｓ１１０８）：
そして、マスタ装置２は、マスタ装置２が発行したコマンドを受信する（Ｓ１１０８）。これで、コンフィギュレーション処理は終了する。
【０２４４】
≪スレーブ装置側の処理≫
図１１Ｃ（ｄ）は、スレーブ装置１ａ〜１ｃの処理を示したものである。
（Ｓ１１０９）：
スレーブ装置１ａ〜１ｃは、コマンドを受信する（Ｓ１１０９）。
（Ｓ１１１０）：
スレーブ装置１ａ〜１ｃは、受信したコマンドがパラメータ設定コマンドであるか否かを判定する（Ｓ１１１０）。
（Ｓ１１１１）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１０での判定の結果、受信したコマンドがパラメータ設定コマンドであった場合、当該受信コマンドに付加されているＰａｙｌｏａｄと自身のパラメータ表示部に保持するパラメータ（通信能力パラメータＣＰＢＬ）とを比較する（Ｓ１１１１）。
（Ｓ１１１２）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１１での比較結果を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定する（Ｓ１１１２）。
（Ｓ１１１３）：
スレーブ装置１ａ〜１ｃは、Ｓ１１１１での比較結果をＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定したものを、新たなＰａｙｌｏａｄとする（Ｓ１１１３）。
（Ｓ１１１４）：
スレーブ装置１ａ〜１ｃは、上記の新たなＰａｙｌｏａｄを付加したパラメータ取得コマンドを発行する（Ｓ１１１４）。
【０２４５】
このようにして、本実施形態の通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃとは、パラメータ設定コマンドによりコンフィギュレーション処理を行うことができる。
【０２４６】
（２．１．２：チェーン接続での第２のコンフィギュレーション処理）
次に、チェーン接続での第２のコンフィギュレーション処理について、説明する。
【０２４７】
図１３は、第２実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがチェーン接続された場合の第２のコンフィギュレーション処理を説明するための図である。
【０２４８】
図１３（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０２４９】
スレーブ装置１ａは、パラメータ設定コマンド１３０１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ１とを比較し、その比較結果パラメータＰａｒａｍ０１を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定するとともに、その比較結果パラメータＰａｒａｍ０１を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０２を次のスレーブ装置１ｂへ送信する。
【０２５０】
スレーブ装置１ｂも、パラメータ設定コマンド１３０２を受信すると、Ｐａｒａｍ０１とＣＰＢＬ２とを比較し、その比較結果Ｐａｒａｍ０１２を、通信設定パラメータＳＥＴＴＩＮＧとしてパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１２を新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１３０３を次のスレーブ装置１ｃへ送信する。
【０２５１】
スレーブ装置１ｃも、同様に、Ｐａｒａｍ０１２とＣＰＢＬ３とを比較し、その比較結果Ｐａｒａｍ０１２３を、通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したコマンド１３０４を送信する。
【０２５２】
スレーブ装置１ｂ，１ａは、受信したコマンド１３０４をそのまま送信する。
【０２５３】
そして、マスタ装置２は、パラメータ設定コマンド１３０４を受信する。このパラメータ設定コマンド１３０４に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
【０２５４】
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
【０２５５】
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１３（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１３０４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１３０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明するための図である。
【０２５６】
図１３（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１３０５を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１３０５を受信し、当該コマンドに付加されているＰａｒａｍ０１２３と自身のパラメータ表示部の保持する通信能力パラメータＣＰＢＬ１〜３とを比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１３０５を送信するように動作する。
【０２５７】
そして、マスタ装置２が、コマンド１３０５を受信すると、コンフィギュレーション処理が完了する。
【０２５８】
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１３（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１３０４のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１１１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【０２５９】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
【０２６０】
（２．１．３：ハブ接続での第２のコンフィギュレーション処理）
次に、ハブ接続での第２のコンフィギュレーション処理について、説明する。
【０２６１】
図１５Ａ、Ｂは、第２実施形態に係る通信システムにおいて、マスタ装置２とスレーブ装置１ａ〜１ｃがハブ接続された場合の第２のコンフィギュレーション処理を説明するための図である。
【０２６２】
図１５Ａ（ａ）に示すように、マスタ装置２は、初期値Ｐａｒａｍ０をＰａｙｌｏａｄとして付加したパラメータ設定コマンド１５０１をブロードキャストコマンドとして送信する。Ｐａｒａｍ０は、任意の値としてもよく、あるいは、マスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を用いてもよく、あるいは、その双方（初期値として設定される任意の値とマスタ装置２のパラメータ表示部に保持されている通信能力パラメータＣＰＢＬ０を構成する各パラメータの値）がパラメータ毎に混在されたものを用いてもよい。
【０２６３】
ハブ３は、マスタ装置２からのパラメータ設定コマンド１５０１を受信すると、受信したコマンドをスレーブ装置１ａ〜１ｃへ送信する。
【０２６４】
スレーブ装置１ａ〜１ｃは、ハブ３からのパラメータ設定コマンド１５０１を受信すると、当該コマンドに付加されたＰａｒａｍ０と自身のパラメータ表示部の保持されている通信能力パラメータＣＰＢＬ１〜３とを比較し、その比較結果Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を、それぞれ、自身の通信設定パラメータＳＥＴＴＩＮＧとしてパラメータ設定部に設定するとともに、その比較結果Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を、新たなＰａｙｌｏａｄとして付加したパラメータ設定コマンド１５０２、１５０３、１５０４を、それぞれ、ハブ３へ送信する。
【０２６５】
ハブ３は、受信したコマンド１５０２〜１５０４のＰａｙｌｏａｄの値Ｐａｒａｍ０１、Ｐａｒａｍ０２、Ｐａｒａｍ０３を比較し、その結果Ｐａｒａｍ０１２３を新たなＰａｙｌｏａｄとして付加したにコマンド１５０５をマスタ装置２へ送信する。
【０２６６】
そして、マスタ装置２がパラメータ設定コマンド１５０５を受信する。このパラメータ設定コマンド１５０５に付加されているペイロードＰａｒａｍ０１２３の各パラメータ値は、Ｐａｒａｍ０を初期値として、スレーブ装置１ａ〜１ｃの全てが満たすパラメータ値となっている。
【０２６７】
ここで、ペイロードＰａｒａｍ０１２３は、初期値Ｐａｒａｍ０（マスタ装置２が発行したコマンドに付加されていたペイロードＰａｒａｍ０）と異なる場合と、同じ場合とがある。そこで、以下では、（１）Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合と、（２）Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合とに分けて、説明する。
【０２６８】
≪Ｐａｒａｍ０１２３≠Ｐａｒａｍ０の場合≫
図１５Ｂ（ｂ−１）は、マスタ装置２が受信したパラメータ設定コマンド１５０５のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１５０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と異なっていた場合のマスタ装置２の処理を説明するための図である。
【０２６９】
図１５Ｂ（ｂ−１）に示すように、マスタ装置２は、送信したＰａｒａｍ０および受信したＰａｒａｍ０１２３が異なっていることを検知すると、受信したＰａｒａｍ０１２３をＰａｙｌｏａｄとして、再び、パラメータ設定コマンド１５０６を送信する。この場合、Ｐａｒａｍ０１２３は、全てのスレーブ装置１ａ〜１ｃが満たすパラメータであるため、ハブ３経由で、スレーブ装置１ａ〜１ｃがパラメータ設定コマンド１５０６を受信し、コマンドに付加されたＰａｒａｍ０１２３と自身のパラメータ表示部の保持する通信能力パラメータＣＰＢＬ１〜３とを、それぞれ、比較した結果は、必ず、Ｐａｒａｍ０１２３になる。したがって、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０１２３を通信設定パラメータＳＥＴＴＩＮＧとして自身のパラメータ設定部に設定すると共に、パラメータ設定コマンド１５０６を送信するように動作する。
【０２７０】
そして、マスタ装置２が、コマンド１５０６を受信すると、コンフィギュレーション処理が完了する。
【０２７１】
≪Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合≫
一方、図１５Ｂ（ｂ−２）は、マスタ装置２が受信したパラメータ設定コマンド１５０５のＰａｙｌｏａｄに含まれるＰａｒａｍ０１２３が、マスタ装置２の送信したパラメータ設定コマンド１５０１のＰａｙｌｏａｄに含まれるＰａｒａｍ０と同じであった場合を示している。この場合、マスタ装置２が送信したＰａｒａｍ０は、スレーブ装置１ａ〜１ｃでの比較結果であり、各スレーブ装置の通信設定パラメータＳＥＴＴＩＮＧとして、パラメータ設定部に設定されているパラメータ値は、Ｐａｒａｍ０に含まれる各パラメータ値と同一であることになる。このため、マスタ装置２は、受信したＰａｒａｍ０１２３、すなわち送信したＰａｒａｍ０を、通信設定パラメータＳＥＴＴＩＮＧとして、自身のパラメータ設定部に設定して、コンフィギュレーション処理が完了する。
【０２７２】
つまり、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、スレーブ装置１ａ〜１ｃは、Ｐａｒａｍ０で設定されている各パラメータ値以上の通信能力を有することが保証されることになる。このため、Ｐａｒａｍ０１２３＝Ｐａｒａｍ０の場合、本実施形態の通信システムでは、マスタ装置２がコマンド発行を１回行うことで、コンフィギュレーション処理を完了させることができる。
【０２７３】
なお、図１５Ｃに示すように、通信システム１０００において、ハブ３により、コマンド（データ）が、マスタ装置２から、（１）スレーブ装置１ａ、（２）スレーブ装置１ｂ、（３）スレーブ装置１ｃという順番で送信されるようにハブ３を構成すれば、上記リング接続と等価であるとみなすことができる。したがって、この場合、通信システム１０００において、上記で説明したリング接続でのコンフィギュレーション処理と同様の処理により、コンフィギュレーション処理を実行することができる。なお、図１５Ｃ（ａ）に示した状態は、図１１Ｂ（ｂ−１）に示した状態と同様であり、また、図１５Ｃ（ｂ）に示した状態は、図１１Ｂ（ｂ−２）に示した状態と同様である。
【０２７４】
以上、図面を用いて説明したとおり、本実施形態に係る通信システムにおいて、マスタ装置２は、最大２回のパラメータ設定コマンドを送信するとコンフィギュレーションを完了することができる。
【０２７５】
さらに、マスタ装置２とスレーブ装置１ａ〜１ｃとが、同一基板上に実装されたようなエンベデッドシステムでは、予め設定するパラメータをマスタ装置の持つＲＯＭやフラッシュメモリなどの不揮発性メモリに保持しておき、当該システムの初期化時にパラメータ設定コマンドで、ＲＯＭや不揮発性メモリ等に保持されているパラメータを設定することも可能である。この場合、予め設定されたパラメータを用いて、スレーブ装置１ａ〜１ｃのパラメータを設定することができるため（上記で説明したＰａｒａｍ０１２３＝Ｐａｒａｍ０の場合に相当する状態を保証するように、予めパラメータを設定しておくことで）、常に、パラメータ設定コマンドを一度発行するとコンフィギュレーション処理を完了させることができる。
【０２７６】
［他の実施形態］
以上、図面を用いて本発明の実施形態を説明したが、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。例えば、スレーブ装置の数は、１以上の任意の数が可能であり、１対１接続の場合でもブロードキャストコマンドを用いてコンフィギュレーション処理を行うことが可能である。
【０２７７】
また、本発明の通信システムにおいて、マスタ装置が、複数のスレーブ装置に対してブロードキャストコマンドを用いてパラメータを取得した後、個別コマンドを用いてスレーブ装置毎にパラメータを設定してもよく、あるいは、接続するスレーブ装置の種類や数によっては、全て個別コマンドでコンフィギュレーション処理が実行されるものであってもよい。
【０２７８】
さらには、本発明の通信システムにおいて、マスタ装置が、個別コマンドを用いてスレーブ装置のパラメータを取得した後、ブロードキャストコマンドを用いて一括してパラメータを設定することも可能である。
【０２７９】
なお、上記実施形態で説明した通信システム、マスタ装置、スレーブ装置において、各ブロックは、ＬＳＩなどの半導体装置により個別に１チップ化されても良いし、一部又は全部を含むように１チップ化されても良い。
【０２８０】
なお、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０２８１】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【０２８２】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
【０２８３】
また、上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェア（ＯＳ（オペレーティングシステム）、ミドルウェア、あるいは、所定のライブラリとともに実現される場合を含む。）により実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。なお、上記実施形態に係る通信システム、マスタ装置、スレーブ装置をハードウェアにより実現する場合、各処理を行うためのタイミング調整を行う必要があるのは言うまでもない。上記実施形態においては、説明便宜のため、実際のハードウェア設計で生じる各種信号のタイミング調整の詳細については省略している。
【０２８４】
また、上記実施形態における処理方法の実行順序は、必ずしも、上記実施形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えることができるものである。
【０２８５】
なお、本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。
【産業上の利用可能性】
【０２８６】
本発明によると、マスタ装置と複数のスレーブ装置とで構成される通信システムにおいて、マスタ装置が複数のスレーブ装置のパラメータ設定を少ないコマンド数で効率よく行うことが可能なマスタ装置、スレーブ装置および通信システムを提供することができ、例えばマスタ装置としてシステムＬＳＩ、スレーブ装置としてＩＯデバイスやメモリ装置を複数接続して構成する通信システムにおいて、初期化を高速化して応答性のよいシステムを実現することができるため好適である。
【符号の説明】
【０２８７】
１０００  通信システム
１,１ａ,１ｂ,１ｃ    スレーブ装置
２    マスタ装置
３    ハブ
１１    マスタ装置ＩＦ部
２１    スレーブ装置ＩＦ部
２２    ＣＰＵ
２３    主記憶
２４    周辺回路
８１    パラメータ表示部
８２    パラメータ設定部
１２２    メモリ部
１２３    ＩＯ部
１１１Ｓ  パラメータ表示部（スレーブ装置）
１１２Ｓ  パラメータ設定部（スレーブ装置）
２１１Ｍ  パラメータ表示部（マスタ装置）
２１２Ｍ  パラメータ設定部（マスタ装置）
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2011064998.tif 000030
【図２】
2011064998.tif 000031
【図３Ａ】
2011064998.tif 000032
【図３Ｃ】
2011064998.tif 000033
【図３Ｄ】
2011064998.tif 000034
【図４】
2011064998.tif 000035
【図５】
2011064998.tif 000036
【図６】
2011064998.tif 000037
【図７】
2011064998.tif 000038
【図８】
2011064998.tif 000039
【図９】
2011064998.tif 000040
【図１０Ａ】
2011064998.tif 000041
【図１０Ｃ】
2011064998.tif 000042
【図１０Ｄ】
2011064998.tif 000043
【図１１Ａ】
2011064998.tif 000044
【図１１Ｂ】
2011064998.tif 000045
【図１１Ｃ】
2011064998.tif 000046
【図１２】
2011064998.tif 000047
【図１３】
2011064998.tif 000048
【図１４Ａ】
2011064998.tif 000049
【図１４Ｂ】
2011064998.tif 000050
【図１４Ｃ】
2011064998.tif 000051
【図１５Ａ】
2011064998.tif 000052
【図１５Ｂ】
2011064998.tif 000053
【図１５Ｃ】
2011064998.tif 000054
【図３Ｂ】
2011064998.tif 000055
【図１０Ｂ】
2011064998.tif 000056
【手続補正書】
【提出日】平成24年9月28日(2012.9.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムのスレーブ装置であって、
前記マスタ装置と通信を行うためのマスタ装置ＩＦ部と、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信し、
パラメータ取得コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
スレーブ装置。
【請求項２】
受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータを前記パラメータ設定部に設定する、
請求項１に記載のスレーブ装置。
【請求項３】
受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、値の小さい方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１に記載のスレーブ装置。
【請求項４】
受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持する通信能力パラメータのパラメータ値とを比較し、時間の長い方を前記パラメータ取得コマンドに付加するペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項１に記載のスレーブ装置。
【請求項５】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、
マスタ装置と、
１以上のスレーブ装置と、
を備え、
前記マスタ装置は、
前記マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信し、
前記１以上のスレーブ装置は、それぞれ、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信し、
前記パラメータ取得コマンドを、前記ブロードキャストコマンドとして受信した場合、受信した前記パラメータ取得コマンドに付加されたペイロードに基づいて生成したペイロードを付加してパラメータ取得コマンドを送信する、
通信システム。
【請求項６】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置のパラメータ表示部に保持される通信能力パラメータの少なくとも一部を含む、
請求項５に記載の通信システム。
【請求項７】
前記パラメータ設定コマンドに付加されるペイロードは、前記マスタ装置および前記１以上のスレーブ装置が共に満たすパラメータを含む、
請求項５に記載の通信システム。
【請求項８】
前記スレーブ装置は、受信した前記パラメータ設定コマンドに付加されたペイロードに含まれるパラメータに基づいて、前記パラメータ設定部の前記通信設定パラメータのパラメータ値を設定する、
請求項５に記載の通信システム。
【請求項９】
前記スレーブ装置は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、値の小さい方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項５に記載の通信システム。
【請求項１０】
前記スレーブ装置は、受信した前記パラメータ取得コマンドに付加されたペイロードのパラメータ値と前記パラメータ表示部に保持される通信能力パラメータのパラメータ値とを比較し、時間の長い方を、前記パラメータ取得コマンドのペイロードに設定して、前記パラメータ取得コマンドを送信する、
請求項５に記載の通信システム。
【請求項１１】
前記マスタ装置と前記１以上のスレーブ装置とは、リング接続により接続されている、
請求項５に記載の通信システム。
【請求項１２】
マスタ装置と１以上のスレーブ装置との間でコマンド、応答およびコマンド・応答に付加したペイロードの送受信により通信を行う通信システムであって、
マスタ装置と、
１以上のスレーブ装置と、
を備え、
前記マスタ装置は、
前記マスタ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記１以上のスレーブ装置と通信を行うために使用する通信設定パラメータを前記スレーブ装置のパラメータ設定部に設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして送信し、
前記１以上のスレーブ装置は、それぞれ、
前記スレーブ装置の通信能力を示す通信能力パラメータを保持するパラメータ表示部と、
前記マスタ装置と通信を行うために使用する通信設定パラメータを保持するパラメータ設定部と、
を備え、
前記パラメータ設定部にパラメータを設定するパラメータ設定コマンドを、前記通信システムに通信可能な状態で接続されている全ての前記スレーブ装置が受信対象となるブロードキャストコマンドとして受信した場合、
受信した前記パラメータ設定コマンドに付加されたペイロードの値に基づいて、前記パラメータ設定部に前記通信設定パラメータを設定し、
前記パラメータ設定部に設定した前記通信設定パラメータの値をペイロードとして付加したパラメータ設定コマンドを送信し、
前記マスタ装置と前記１以上のスレーブ装置は、ハブ接続により接続されている、
通信システム。
【国際調査報告】
2011064998.tif 000057
2011064998.tif 000058