(57)【特許請求の範囲】
【請求項１】
２以上の第１の数の伝送路を介して他の通信部と接続する通信部と、
前記他の通信部との通信開始時に、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信部に通信させる制御部と、
を有し、
前記他の通信部との通信開始時において、
前記通信部は、前記第１の数の伝送路のそれぞれにおける信号送信特性の設定パラメータを、前記他の通信部とのネゴシエーションにより取得した、前記第１の数の伝送路のそれぞれを介して送信した信号についての前記他の通信部における受信時の評価結果に基づいて決定し、
前記制御部は、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定する、
ことを特徴とする電子機器。
【請求項２】
前記設定パラメータは、対応する伝送路を介して送信する信号の波形を補正するための補正量を示し、
前記制御部は、前記設定パラメータが示す前記補正量が小さいほど、対応する伝送路における前記通信品質が高いと判定する、
ことを特徴とする請求項１記載の電子機器。
【請求項３】
前記制御部は、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータと、前記第１の数の伝送路のそれぞれにおける、前記他の通信部における信号受信特性についての受信設定パラメータとに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定することを特徴とする請求項１または２記載の電子機器。
【請求項４】
前記制御部は、前記他の通信部との通信開始時において、前記第１の数の伝送路の中から、所定の速度以上で前記他の通信部と通信できなかった伝送路を除外し、残りの伝送路の中から、前記通信品質が高い順に前記第２の数の伝送路を選択することを特徴とする請求項１〜３のいずれか１項に記載の電子機器。
【請求項５】
前記制御部は、前記第１の数の伝送路のそれぞれについての前記通信品質の順位を示す順位情報を記憶部に記録し、選択した前記第２の数の伝送路を用いて前記通信部に通信を開始させた後、前記第２の数の伝送路のうちの第１の伝送路において通信の不調を検知した場合、前記第１の数の伝送路のうち前記第２の数の伝送路を除いた残りの伝送路の中から、前記順位情報に基づいて前記通信品質が最も高い第２の伝送路を選択し、前記第１の伝送路の代わりに前記第２の伝送路を用いて前記通信部に通信させることを特徴とする請求項１〜４のいずれか１項に記載の電子機器。
【請求項６】
２以上の第１の数の伝送路を介して他の通信制御回路と接続する通信部と、
前記他の通信制御回路との通信開始時に、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信部に通信させる制御部と、
を有し、
前記他の通信制御回路との通信開始時において、
前記通信部は、前記第１の数の伝送路のそれぞれにおける信号送信特性の設定パラメータを、前記他の通信制御回路とのネゴシエーションにより取得した、前記第１の数の伝送路のそれぞれを介して送信した信号についての前記他の通信制御回路における受信時の評価結果に基づいて決定し、
前記制御部は、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定する、
ことを特徴とする通信制御回路。
【請求項７】
２以上の第１の数の伝送路を介して他の通信部と接続する、電子機器が備える通信部が、前記他の通信部との通信開始時に、前記第１の数の伝送路のそれぞれにおける信号送信特性の設定パラメータを、前記他の通信部とのネゴシエーションにより取得した、前記第１の数の伝送路のそれぞれを介して送信した信号についての前記他の通信部における受信時の評価結果に基づいて決定し、
前記電子機器が備える制御部が、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータに基づいて、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、
前記制御部が、前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信部に通信させる、
ことを特徴とする通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、通信制御回路および通信制御方法に関する。
【背景技術】
【０００２】
情報処理装置等の電子機器の内部や電子機器間では、信号を高速に転送するためにシリアル伝送が行われることが多くなっている。このような高速シリアル伝送の代表的な規格としては、ＳＡＳ（Serial Attached ＳＣＳＩ，ＳＣＳＩ：Small Computer System Interface）、ＰＣＩ  Ｅｘｐｒｅｓｓ（Peripheral Component Interconnect Express。以下、“ＰＣＩｅ”と略称する）がある。
【０００３】
このような高速シリアル伝送のインタフェース回路の中には、複数の伝送速度での通信をサポートするものがある。また、複数の伝送速度での通信をサポートするインタフェース回路の中には、相手側回路との接続開始時に通信のトレーニングを行うことで、通信時の速度を決定するものもある。例えば、ＳＡＳ規格では、リンクアップ時に通信速度を決定するためのネゴシエーションシーケンスが規定されている。
【０００４】
なお、ＰＣＩｅリンクの再構成に関する技術として、複数のホストに複数のスロット部を、リンクコントローラおよびクロスポイントスイッチを介して、複数のホストと複数のスロットとの組み合わせ並びに接続経路の帯域幅を変更可能に接続するようにしたコンピュータシステムが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２８０２３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、製造コストの低減を目的として、高速シリアル伝送のインタフェース回路が実装されるプリント基板や、インタフェース回路間の伝送路が実装されるプリント基板として、安価で伝送品質の低いものが使用される場合がある。このような場合、インタフェース回路間で、所望する速度に満たない低い速度でしか通信できないことがあり得る。例えば、インタフェース回路は、接続開始時に上記のような伝送速度決定のためのトレーニングを行ったとき、自分も相手側もともにサポートしている最高の伝送速度でのリンクアップに失敗し、それより低い速度で通信を開始してしまうことがあり得る。
【０００７】
１つの側面では、本発明は、通信速度が低下する可能性を低減した電子機器、通信制御回路および通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
１つの案では、通信部と制御部とを有する電子機器が提供される。この電子機器において、通信部は、２以上の第１の数の伝送路を介して他の通信部と接続する。制御部は、他の通信部との通信開始時に、第１の数の伝送路のそれぞれにおける通信品質を判定し、第１の数の伝送路の中から、通信品質が高い順に第１の数より少ない第２の数の伝送路を選択し、第２の数の伝送路を用いて通信部に通信させる。
【０００９】
また、１つの案では、通信部と制御部とを有する通信制御回路が提供される。この通信制御回路において、通信部は、２以上の第１の数の伝送路を介して他の通信制御回路と接続する。制御部は、他の通信制御回路との通信開始時に、第１の数の伝送路のそれぞれにおける通信品質を判定し、第１の数の伝送路の中から、通信品質が高い順に第１の数より少ない第２の数の伝送路を選択し、第２の数の伝送路を用いて通信部に通信させる。
【００１０】
さらに、１つの案では、次のような通信制御方法が提供される。この通信制御方法では、電子機器は、２以上の第１の数の伝送路を介して他の通信回路と接続する、電子機器が備える通信回路に、他の通信回路との通信を開始させる際、第１の数の伝送路のそれぞれにおける通信品質を判定する。そして、電子機器は、第１の数の伝送路の中から、通信品質が高い順に第１の数より少ない第２の数の伝送路を選択し、第２の数の伝送路を用いて通信回路に通信させる。
【発明の効果】
【００１１】
１つの側面では、通信速度が低下する可能性を低減できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態に係る電子機器の構成例および処理例を示す図である。
【図２】第２の実施の形態に係るストレージシステムの構成例を示す図である。
【図３】ＣＭおよびＤＥのハードウェア構成例を示す図である。
【図４】エクスパンダチップのハードウェア構成例を示す図である。
【図５】エクスパンダチップ内の送受信回路のハードウェア構成例を示す図である。
【図６】Ｔｘイコライザの内部構成例を示す図である。
【図７】エクスパンダチップ間でのワイドポートを用いた接続形態の参考例を示す図である。
【図８】第２の実施の形態でのエクスパンダチップ間のワイドポートを用いた接続形態の例を示す図である。
【図９】ＩＯモジュールの機能の構成例を示すブロック図である。
【図１０】判定テーブルに登録される情報の例を示す図である。
【図１１】評価値の算出結果の例を示すグラフである。
【図１２】リンクアップ時の処理手順の例を示すフローチャートである。
【図１３】送受信回路によるリンクアップシーケンスの処理手順の例を示すフローチャートである。
【図１４】Ｔｘイコライザのパラメータ設定トレーニングの処理手順の例を示すフローチャートである。
【図１５】リンクアップ時の処理手順の変形例を示すフローチャートである。
【図１６】伝送路監視処理の手順の例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を参照して説明する。
〔第１の実施の形態〕
図１は、第１の実施の形態に係る電子機器の構成例および処理例を示す図である。図１に示す電子機器１は、通信部２と制御部３とを有する。通信部２は、通信相手である他の通信部４と、ｍ本の伝送路によって物理的に接続されている。図１では例としてｍ＝６となっており、通信部２と通信部４との間は６本の伝送路Ｌ１〜Ｌ６によって接続されている。なお、通信部４は、図１の例のように電子機器１の内部に設けられていてもよいし、電子機器１の外部に設けられていてもよい。
【００１４】
通信部２は、ｍ本の伝送路のそれぞれを介してデータを送受信できるが、実際に通信部４との間で通信が行われる際には、制御部３の制御の下で、ｍ本のうちｎ本（ｎ＜ｍ）の伝送路を用いて通信が行われる。例えば、ｎ本の伝送路をまとめて１つの論理的な通信ポートとして用いて通信が行われる形態が考えられる。ＳＡＳ規格では、このような論理的な通信ポートは“ワイドポート”と呼ばれる。
【００１５】
ここで、通信部２を実現する回路と通信部４を実現する回路の一方または両方が、安価で低品質なプリント基板上に実装されたとする。この場合、ｍ本の伝送路のそれぞれにおける伝送性能が悪化し、所望の速度以上での通信を安定的に行うことができなくなる可能性がある。また、通信部２と通信部４とを接続するｍ本の伝送路が、安価な基板上に実装された場合にも、同様の問題が発生する可能性がある。
【００１６】
そこで、電子機器１においては、通信部２と通信部４とがあらかじめｎより多いｍ本の伝送路によって接続される。そして、制御部３は、通信部４との通信開始時に、ｍ本の伝送路のそれぞれにおける通信品質を判定する。制御部３は、ｍ本の伝送路の中から、判定した通信品質が高い順にｎ本の伝送路を選択し、選択したｎ本の伝送路を用いて通信部２に通信させる。これにより、ｎ本の伝送路のそれぞれにおいて所望の速度以上で通信できる可能性が高まり、その結果、全体として、通信部２と通信部４との間の通信速度が低下する可能性を低減できる。
【００１７】
図１の例では、制御部３は、伝送路Ｌ１〜Ｌ６のそれぞれにおける通信品質を判定し、判定結果を判定テーブル５に記録する。判定テーブル５に記録された通信品質を示す指標は、値が高いほど通信品質が高いことを示すものとする。ｎ＝４とすると、図１の例では、制御部３は、通信品質が高い順に伝送路Ｌ２，Ｌ５，Ｌ４，Ｌ６を選択し、通信部２に、伝送路Ｌ２，Ｌ５，Ｌ４，Ｌ６を用いて通信部４との通信を開始させる。
【００１８】
以上の第１の実施の形態によれば、通信部２を実現する回路が実装されたプリント基板、通信部４を実現する回路が実装されたプリント基板、ｍ本の伝送路が実装された基板の少なくとも１つとして、安価で低品質なものが用いられた場合でも、ｎ本の伝送路を用いて所望の速度以上の高速で安定的な通信を実行できる可能性が高まる。したがって、電子機器１やその通信相手、電子機器１と通信相手との間の伝送路基板等の製造コストを抑制しつつ、通信速度が低下する可能性を低減することができる。
【００１９】
〔第２の実施の形態〕
第２の実施の形態では、第１の実施の形態の電子機器１を備えるシステムとして、ストレージシステムを例示する。
【００２０】
図２は、第２の実施の形態に係るストレージシステムの構成例を示す図である。図２に示すストレージシステムは、ストレージ装置１００とホスト装置１２０とを含む。ホスト装置１２０は、ストレージ装置１００に対して、ストレージ装置１００内のストレージ部に対するアクセスを要求する。ストレージ装置１００は、ＤＥ（Drive Enclosure）２００とＣＭ（Controller Module）３００ａ，３００ｂとを備える。
【００２１】
ＤＥ２００は、ホスト装置１２０からのアクセス対象となるストレージ部である。ＤＥ２００には、ストレージ部を構成するストレージデバイスとして、複数のＨＤＤが搭載されている。なお、ＤＥ２００は、例えば、ストレージ装置１００の外部に設けられていてもよい。また、ストレージデバイスとしては、ＨＤＤに限らず、例えばＳＳＤ（Solid State Drive）等の他の種類のストレージデバイスが使用されてもよい。
【００２２】
ＣＭ３００ａ，３００ｂは、それぞれ、ストレージ部に対するアクセスを制御するストレージ制御部である。すなわち、ＣＭ３００ａ，３００ｂは、それぞれ、ホスト装置１２０からのアクセス要求に応じてＤＥ２００内のＨＤＤへのアクセスを制御する。例えば、ＣＭ３００ａ，３００ｂは、それぞれ、ＤＥ２００内のＨＤＤに記憶されたデータの読み出し要求をホスト装置１２０から受け付けると、読み出しを要求されたデータをＤＥ２００内のＨＤＤから読み出し、ホスト装置１２０に送信する。また、ＣＭ３００ａ，３００ｂは、それぞれ、ＤＥ２００内のＨＤＤへのデータの書き込み要求をホスト装置１２０から受け付けると、書き込みを要求されたデータをＤＥ２００内のＨＤＤに書き込む。
【００２３】
また、ＣＭ３００ａとＣＭ３００ｂとは、通信経路を通じて通信可能になっている。例えば、ＣＭ３００ａ，３００ｂのうち一方のＣＭは、他方のＣＭにおいて発生した異常の内容を示す異常検出情報を、上記通信経路を通じて取得することができる。また、例えば、一方のＣＭは、このＣＭのＲＡＭ（Random Access Memory）に記憶されたＨＤＤのキャッシュデータを、上記通信経路を通じて他方のＣＭに送信し、他方のＣＭ内のＲＡＭにキャッシュデータをバックアップするように依頼することもできる。
【００２４】
図３は、ＣＭおよびＤＥのハードウェア構成例を示す図である。なお、ＣＭ３００ａ，３００ｂは同じハードウェア構成を有しているので、図３ではこれらを代表してＣＭ３００ａのみを示し、ＣＭ３００ｂのハードウェア構成の説明については省略する。
【００２５】
ＣＭ３００ａは、ＣＰＵ（Central Processing Unit）３０１、ＲＡＭ３０２、ＰＣＩｅスイッチ３０３、ＣＡ（Channel Adapter）３０４、ＩＯＣ（In/Out Controller）３０５、ＰＣＨ（Platform Controller Hub）３０６、ＳＳＤ３０７および読み取り装置３０８を有する。
【００２６】
ＣＰＵ３０１は、ＣＭ３００ａ全体を統括的に制御する。ＲＡＭ３０２は、ＣＭ３００ａの主記憶装置として使用され、ＣＰＵ３０１に実行させるプログラムの少なくとも一部や、このプログラムによる処理に必要な各種データを一時的に記憶する。また、ＲＡＭ３０２は、ＤＥ２００内のＨＤＤに記憶されたデータのキャッシュ領域としても使用される。
【００２７】
ＰＣＩｅスイッチ３０３は、ＰＣＩｅバスを介してＣＰＵ３０１と接続されている。また、ＰＣＩｅスイッチ３０３は、ＰＣＩｅケーブルを介して、他方のＣＭ３００ｂ内のＰＣＩｅスイッチ（図示せず）と接続されている。ＰＣＩｅスイッチ３０３は、ＣＭ３００ａのＣＰＵ３０１と、ＣＭ３００ｂとの間のデータ送受信を制御する。
【００２８】
ＣＡ３０４は、ＰＣＩｅバスを介してＣＰＵ３０１と接続されている。また、ＣＡ３０４は、例えばＦＣ（Fibre Channel）ケーブルを介して、ホスト装置１２０と接続されている。ＣＡ３０４は、ＣＰＵ３０１とホスト装置１２０との間でデータを送受信するインタフェース処理を実行する。
【００２９】
ＩＯＣ３０５は、ＰＣＩｅバスを介してＣＰＵ３０１と接続されている。また、ＩＯＣ３０５は、ＳＡＳケーブルを介してＤＥ２００と接続されている。ＩＯＣ３０５は、ＣＰＵ３０１と、ＳＡＳデバイスであるＤＥ２００内のＨＤＤとの間のインタフェース処理を実行する。すなわち、ＩＯＣ３０５は、ＰＣＩｅ規格に基づく通信を制御するＰＣＩｅコントローラと、ＳＡＳに基づく通信を制御するＳＡＳコントローラとを備える。
【００３０】
ＰＣＨ３０６は、ＣＰＵ３０１とＳＳＤ３０７および読み取り装置３０８との間で、データを送受信する。ＳＳＤ３０７は、ＣＭ３００ａの二次記憶装置として使用され、ＣＰＵ３０１により実行されるプログラムやその実行に必要な各種のデータ等を記憶する。なお、二次記憶装置としては、例えば、ＨＤＤ等の他の種類の不揮発性記憶装置が使用されてもよい。読み取り装置３０８には、可搬型の記録媒体３０９が脱着される。読み取り装置３０８は、記録媒体３０９に記録されたデータを読み取ってＣＰＵ３０１に送信する。記録媒体３０９としては、光ディスク、光磁気ディスク、半導体メモリ等がある。
【００３１】
一方、ＤＥ２００は、入出力モジュールであるＩＯ（In／Out）モジュール２０１、ＩＯ拡張モジュール２０２，２０３およびＨＤＤ２０４ａ〜２０４ｄを有する。ＩＯモジュール２０１は、ＩＯ拡張モジュール２０２，２０３と、ＣＭ３００ａのＩＯＣ３０５とに接続されている。ＩＯモジュール２０１は、ＩＯ拡張モジュール２０２，２０３と、ＣＭ３００ａのＩＯＣ３０５との間でＳＡＳ規格にしたがってデータを送受信するＳＡＳエクスパンダとしての機能を備える。
【００３２】
ＩＯ拡張モジュール２０２は、ＩＯモジュール２０１と、ＨＤＤ２０４ａ，２０４ｂとに接続されている。ＩＯ拡張モジュール２０２は、ＩＯモジュール２０１と、ＨＤＤ２０４ａ，２０４ｂとの間でＳＡＳ規格にしたがってデータを送受信するＳＡＳエクスパンダとしての機能を備える。ＩＯ拡張モジュール２０３は、ＩＯモジュール２０１と、ＨＤＤ２０４ｃ，２０４ｄとに接続されている。ＩＯ拡張モジュール２０３は、ＩＯモジュール２０１と、ＨＤＤ２０４ｃ，２０４ｄとの間でＳＡＳ規格にしたがってデータを送受信するＳＡＳエクスパンダとしての機能を備える。
【００３３】
なお、ＩＯモジュール２０１に接続されるＩＯ拡張モジュールの数は、図３の例のように２つに限らず、例えば、１つでもよいし、３以上の複数個でもよい。また、ＩＯ拡張モジュール２０２，２０３のそれぞれに接続されるＨＤＤの数も、図３の例のように２つに限らず、例えば、１つでもよいし、３以上の複数個でもよい。
【００３４】
次に、ＤＥ２００におけるＩＯモジュール２０１およびＩＯ拡張モジュール２０２，２０３がそれぞれ備えるＳＡＳエクスパンダ機能について説明する。ＳＡＳエクスパンダ機能は、例えば、次のようなエクスパンダチップによって実現される。
【００３５】
図４は、エクスパンダチップのハードウェア構成例を示す図である。図４では例として、ＩＯモジュール２０１が備えるエクスパンダチップ２０１ａについて示すが、ＩＯ拡張モジュール２０２，２０３が備えるエクスパンダチップも同様の内部構成によって実現される。
【００３６】
エクスパンダチップ２０１ａは、複数の送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・、クロスバー２４０、ＣＰＵ２４１およびメモリ２４２を有する。なお、送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・は、第１の実施の形態の通信部２の一例であり、ＣＰＵ２４１は、第１の実施の形態の制御部３の一例である。
【００３７】
送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・には、それぞれ個別の物理リンクＬＫ１，ＬＫ２，ＬＫ３，・・・が接続される。物理リンクとは、ＳＡＳにおけるデータ伝送路の最小単位であり、送信用の差動信号線ペアと受信用の差動信号線ペアの合計４本の信号線を有する。送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・は、それぞれ対応する物理リンクＬＫ１，ＬＫ２，ＬＫ３，・・・を介して、通信相手の他のエクスパンダチップ（またはＳＡＳコントローラ、いずれも図示せず）が備える対応する送受信回路との間でデータを送受信する。
【００３８】
なお、以下の説明では、物理リンクＬＫ１，ＬＫ２，ＬＫ３，・・・のそれぞれを「伝送路」と呼ぶ場合がある。
ここで、ＳＡＳの接続形態としては、ナローポートとワイドポートとがある。ナローポートは、１つのポートに１つの物理リンクを使用して通信する形態である。ワイドポートは、１つのポートに複数の物理リンクを使用して通信する形態である。ワイドポートでは、最大で８つの物理リンクをまとめて１つの論理的な通信ポートとして使用することができる。例えば、ＳＡＳ２．０規格の場合、１つの物理リンクでの最大伝送速度は６Ｇｂｐｓ（Gigabit Per Second）であるので、ワイドポートを適用することで最大４８Ｇｂｐｓでの通信が可能となる。
【００３９】
また、送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・はそれぞれ、リンクアップの際に所定のリンクアップシーケンスを実行する機能を備える。リンクアップアップシーケンスには、あらかじめ規定された複数の通信速度のうち、物理リンクを介してどの通信速度で通信可能かを決定するためのトレーニングと、送信側と受信側、あるいはそれらのいずれかにおけるイコライザの最適な設定値を決定するためのトレーニングとが含まれる。以下、前者を“速度設定トレーニング”と呼び、後者を“パラメータ設定トレーニング”と呼ぶ場合がある。
【００４０】
クロスバー２４０は、ＣＰＵ２４１の制御の下で、エクスパンダチップ２０１ａから他のエクスパンダチップ（またはＳＡＳコントローラチップ）に送信するデータを、送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・のいずれかに振り分ける。ＣＰＵ２４１は、クロスバー２４０での送信データの振り分け等、エクスパンダチップ２０１ａにおける各種の動作制御を行う。ナローポートとワイドポートのうちのどの形態で接続するか、いくつの物理ポートを用いてワイドポートを構成するかについても、ＣＰＵ２４１によって制御される。メモリ２４２には、ＣＰＵ２４１によって実行されるファームウェアプログラムや、ＣＰＵ２４１の処理で使用される各種のデータが格納される。メモリ２４２は、例えば、フラッシュメモリによって実現される。
【００４１】
図５は、エクスパンダチップ内の送受信回路のハードウェア構成例を示す図である。なお、送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・はそれぞれ同様のハードウェア構成を有するので、図５ではこれらを“送受信回路２１０”と表す。また、これ以降、送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・を区別せずに説明する場合には、“送受信回路２１０”という表記を使用する。
【００４２】
送受信回路２１０は、Ｔｘバッファ２１１、シリアライザ２１２、Ｔｘドライバ２１３、Ｔｘイコライザ２１４、Ｒｘイコライザ２１５、Ｒｘドライバ２１６、デシリアライザ２１７、Ｒｘバッファ２１８、パターンジェネレータ（ＰＧ）２１９、波形検出回路２２０および制御回路２２１を有する。
【００４３】
Ｔｘバッファ２１１は、クロスバー２４０から入力された送信データを一時的に記憶し、記憶した送信データをシリアライザ２１２に出力する。シリアライザ２１２は、Ｔｘバッファ２１１から入力された送信データを、パラレルデータからシリアルデータに変換して出力する。また、シリアライザ２１２は、パターンジェネレータ２１９から入力されたトレーニング用のテスト信号（テストパターン）を、Ｔｘドライバ２１３に出力することもできる。Ｔｘドライバ２１３は、シリアライザ２１２から入力された送信データまたはテスト信号を、差動信号に変換して出力する。
【００４４】
Ｔｘイコライザ２１４は、Ｔｘドライバ２１３から入力された差動信号の波形を整形し、整形後の差動信号を、図示しないコネクタを介して対応する物理リンクへ出力する。Ｔｘイコライザ２１４で行われる波形整形の種類としては、例えば、プリエンファシス調整、プリシュート調整、ゲイン調整等がある。Ｔｘイコライザ２１４での各波形調整量は、制御回路２２１から指定される。
【００４５】
Ｒｘイコライザ２１５は、対応する物理リンクから図示しないコネクタを介して入力された差動信号の波形を整形し、Ｒｘドライバ２１６に出力する。波形生成の方法としては、ＤＦＥ（Decision Feedback Equalization）やＦＦＥ（Feed-Forward Equalization）等の方法が用いられる。
【００４６】
Ｒｘドライバ２１６は、Ｒｘイコライザ２１５から出力された差動信号を所定形式のシリアル信号に変換し、デシリアライザ２１７に出力する。デシリアライザ２１７は、Ｒｘドライバ２１６から入力されたシリアル信号をパラレル信号に変換し、Ｒｘバッファ２１８に出力する。Ｒｘバッファ２１８は、デシリアライザ２１７から出力されたパラレル信号を一時的に記憶した後、クロスバー２４０に出力する。
【００４７】
パターンジェネレータ２１９は、送受信回路２１０自身を送信側とした速度設定トレーニングおよびパラメータ設定トレーニングの実行時において、制御回路２２１からの指示に応じて、シリアライザ２１２に対してトレーニング用のテスト信号を供給する。
【００４８】
波形検出回路２２０は、送受信回路２１０自身を受信側としたパラメータ設定トレーニングの実行時において、Ｒｘイコライザ２１５から出力されたテスト信号の波形を検出し、その波形の状態を示す情報を制御回路２２１に通知する。波形の状態を示す情報としては、例えば、アイパターンの開口状態を示す情報がある。
【００４９】
制御回路２２１は、送受信回路２１０における各種の処理を制御する。例えば、制御回路２２１は、リンクアップシーケンスの動作を制御する。リンクアップシーケンスのうち、速度設定トレーニングが行われると、制御回路２２１は、通信先との間で正しく通信できた通信速度をＣＰＵ２４１へ通知する。また、パラメータ設定トレーニングが行われると、制御回路２２１は、Ｒｘイコライザ２１５の設定パラメータの最適値、またはＴｘイコライザ２１４およびＲｘイコライザ２１５の設定パラメータの最適値を、ＣＰＵ２４１へ通知する。なお、Ｔｘイコライザ２１４の設定パラメータの最適値は、送信側の回路が受信側の回路とネゴシエーションすることにより決定される。
【００５０】
図６は、Ｔｘイコライザの内部構成例を示す図である。Ｔｘイコライザ２１４は、ディレイ部２３１，２３２、プリシュート調整部２３３、ゲイン調整部２３４、プリエンファシス調整部２３５および加算部２３６を備える。
【００５１】
Ｔｘドライバ２１３からの入力信号は、ディレイ部２３１およびプリシュート調整部２３３に入力される。ディレイ部２３１は、入力信号を１ＵＩ（Unit Interval）分だけ遅延させて、ディレイ部２３２およびゲイン調整部２３４に出力する。ＵＩとは、物理リンクを介して送受信されるデータの１ビットに対応する時間である。ディレイ部２３２は、ディレイ部２３１によって遅延された入力信号をさらに１ＵＩ分だけ遅延させて、プリエンファシス調整部２３５に出力する。
【００５２】
プリシュート調整部２３３、ゲイン調整部２３４およびプリエンファシス調整部２３５は、それぞれに入力される信号のレベルに対してゲインを与える。換言すると、プリシュート調整部２３３、ゲイン調整部２３４およびプリエンファシス調整部２３５は、それぞれに入力される信号のレベルを補正する。プリシュート調整部２３３、ゲイン調整部２３４およびプリエンファシス調整部２３５からの出力信号は、加算部２３６によって加算されて伝送路へ出力される。
【００５３】
このような構成により、次のような信号レベルの調整が行われる。プリシュート調整部２３３でのゲイン調整により、送信信号がローレベルからハイレベルに遷移する直前の信号レベルが高くなるように調整され、送信信号がハイレベルからローレベルに遷移する直前の信号レベルが低くなるように調整される。また、プリエンファシス調整部２３５でのゲイン調整により、送信信号がローレベルからハイレベルに遷移した直後の信号レベルが高くなるように調整され、送信信号がハイレベルからローレベルに遷移した直後の信号レベルが低くなるように調整される。また、ゲイン調整部２３４でのゲイン調整により、信号レベルの遷移に関係なく、送信信号の信号レベルが調整される。
【００５４】
ここで、プリシュート調整部２３３でのゲイン量は、制御回路２２１から設定されるパラメータＣ１により決定される。ゲイン調整部２３４でのゲイン量は、制御回路２２１から設定されるパラメータＣ２により決定される。プリエンファシス調整部２３５でのゲイン量は、制御回路２２１から設定されるパラメータＣ３により決定される。
【００５５】
プリシュート調整部２３３、ゲイン調整部２３４およびプリエンファシス調整部２３５のいずれにおいても、設定されるパラメータ（Ｃ１，Ｃ２，Ｃ３）の値が“０”のとき、ゲイン量は“０”となり、信号レベルは補正されない。また、パラメータの値が“０”より大きいとき、その数値に応じた量だけ信号レベルが補正される。すなわち、パラメータＣ１〜Ｃ３の数値が小さいほど、対応する調整部における信号レベルの補正量は小さくなる。
【００５６】
次に、ＤＥ２００におけるＩＯモジュール２０１とＩＯ拡張モジュール２０２，２０３との間の通信について説明する。ＤＥ２００においては、製造コストを削減するために、ＩＯモジュール２０１、ＩＯ拡張モジュール２０２，２０３の各エクスパンダチップが実装されるプリント基板として、安価で伝送品質が低いものが使用される場合がある。また、各エクスパンダチップ間を接続するプリント基板やフレキシブル基板として安価なものが使用される場合もある。このような場合に、エクスパンダチップ間での通信速度が低下してしまうことがある。
【００５７】
ここで、図７は、エクスパンダチップ間でのワイドポートを用いた接続形態の参考例を示す図である。図７において、ＩＯモジュール５０１は、本実施の形態のＩＯモジュール２０１に対応する参考例であり、ＩＯ拡張モジュール５０２は、本実施の形態のＩＯ拡張モジュール２０２またはＩＯ拡張モジュール２０３に対応する参考例である。
【００５８】
ＩＯモジュール５０１内のエクスパンダチップ５０１ａと、ＩＯ拡張モジュール５０２内のエクスパンダチップ５０２ａとの間は、例えばＮ本の伝送路（Ｎ個の物理リンク）を用いたワイドポートによって通信が行われる。例えばＳＡＳ３．０規格に準拠したエクスパンダチップの場合、伝送路１本当たり最高で１２Ｇｂｐｓでの通信が可能である。この場合に、例えばＮ＝４として４本の伝送路を用いたワイドポートによって通信が行われると、最高で４．８ＧＢｙｔｅ／ｓのスループットが得られる。
【００５９】
ところが、エクスパンダチップ５０１ａ，５０２ａの少なくとも一方が実装されたプリント基板として安価なものが使用された場合、Ｎ本の伝送路の少なくとも１本において通信品質が劣化し、１２Ｇｂｐｓでの接続が不可能になるケースがある。また、エクスパンダチップ５０１ａとエクスパンダチップ５０２ａとを接続する基板として安価なものが使用された場合にも、同様のケースがあり得る。
【００６０】
このようなケースでの対処方法の例としては、Ｎ本の伝送路のすべてにおいて伝送速度を落として通信を開始させる方法がある。これは、例えば、高速でリンクアップできた伝送路においても、通信が開始されてから伝送速度が不安定になる可能性を想定した対処方法である。この方法によれば、例えば、Ｎ＝４とし、各伝送路での伝送速度を６Ｇｂｐｓに落としたとすると、伝送路全体でのスループットは２．４ＧＢｙｔｅ／ｓにまで低下してしまう。
【００６１】
このような問題に対して、本実施の形態では、次の図８に示すように、エクスパンダチップ間を、あらかじめＮ本より多いＭ本の伝送路によって物理的に接続する構成とする。
図８は、第２の実施の形態でのエクスパンダチップ間のワイドポートを用いた接続形態の例を示す図である。図８では例として、ＩＯモジュール２０１のエクスパンダチップ２０１ａとＩＯ拡張モジュール２０２のエクスパンダチップ２０２ａとの間の接続形態を示す。
【００６２】
図８に示すように、エクスパンダチップ２０１ａとエクスパンダチップ２０２ａとの間は、Ｎ本より多いＭ本（ただし、Ｍ＝Ｎ＋Ａ）の伝送路によってあらかじめ接続される。エクスパンダチップ２０１ａは、リンクアップシーケンスの実行結果に基づいて、Ｍ本の伝送路のそれぞれにおける通信品質を判定する。そして、エクスパンダチップ２０１ａは、Ｍ本の伝送路の中から、通信品質が高い順にＮ本の伝送路を選択し、選択したＮ本の伝送路のみを用いてワイドポートを構成し、通信を行う。これにより、可能な限り高速で安定的に通信できるようになる。
【００６３】
なお、市販のＳＡＳエクスパンダチップの中には、例えば３６ポートといった多くの接続ポートを搭載するものが多い。そして、そのようなＳＡＳエクスパンダチップが装置内に実装された際、搭載されたすべての接続ポートが実際の通信に使用されるとは限らず、余剰の接続ポートが存在している場合が多い。図８のように、実際の通信時に使用される本数より多くの伝送路によって接続される形態は、このように従来は余剰となっていた接続ポートを使用して実現することができる。
【００６４】
図９は、ＩＯモジュールの機能の構成例を示すブロック図である。ＩＯモジュール２０１は、通信品質判定部２５１、接続設定部２５２および記憶部２６０を有する。通信品質判定部２５１および接続設定部２５２の処理は、例えば、ＩＯモジュール２０１内のエクスパンダチップ２０１ａのＣＰＵ２４１が所定のファームウェアプログラムを実行することにより実現される。また、記憶部２６０は、エクスパンダチップ２０１ａのメモリ２４２の記憶領域として実現される。
【００６５】
通信品質判定部２５１は、Ｍ本の伝送路をリンクアップする際に、各伝送路の通信品質を判定する。後述するように、通信品質判定部２５１は、エクスパンダチップ２０１ａ内の送受信回路２１０ａ，２１０ｂ，２１０ｃ，・・・のそれぞれから取得したパラメータＣ１，Ｃ３に基づいて、対応する各伝送路の通信品質を判定する。通信品質判定部２５１は、記憶部２６０に格納された判定テーブルに対して、各伝送路について判定した通信品質の判定値を登録する。
【００６６】
接続設定部２５２は、通信品質の判定値が登録された判定テーブルに基づいて、Ｍ本の伝送路の中から、通信品質が高い順にＮ本の伝送路を選択する。接続設定部２５２は、選択したＮ本の伝送路のみを有効にするとともに、残りのＡ本の伝送路を無効にして、選択したＮ本の伝送路を用いたワイドポートによる通信を、選択したＮ本の伝送路に対応する送受信回路に開始させる。
【００６７】
図１０は、判定テーブルに登録される情報の例を示す図である。図１０に示す判定テーブル２６１は、記憶部２６０に格納される。判定テーブル２６１は、回路番号、ＰＨＹ番号、速度、パラメータＣ１，Ｃ３にそれぞれ対応する設定値、ＥＮ（イネーブル）フラグの各項目を有する。
【００６８】
回路番号は、通信相手となるＩＯ拡張モジュール２０２のエクスパンダチップと物理的に接続されるＭ個の送受信回路２１０のそれぞれを識別するための識別番号である。回路番号は、実質的に伝送路（物理リンク）を識別するための識別番号にもなっている。図１０は例としてＭ＝１２の場合を示し、回路番号は“１”から“１２”までの値をとる。回路番号は、Ｍ個の送受信回路のそれぞれに対して固定的に割り当てられ、変更されない。
【００６９】
ＰＨＹ番号は、ＳＡＳプロトコル上でＭ個の送受信回路２１０のそれぞれを識別するための識別番号である。ＰＨＹ番号は、接続設定部２５２によって任意に設定される。ＳＡＳプロトコルでは、ワイドポートを構成する伝送路として、ＰＨＹ番号が大きい伝送路から優先的に選択される。そこで、接続設定部２５２は、通信品質が高いと判定された順にＰＨＹ番号を割り当てる。なお、所望の速度以上でリンクアップできなかった伝送路に対応する送受信回路２１０に対しては、ＰＨＹ番号は割り当てられないものとする。
【００７０】
速度は、対応する伝送路において通信可能と判定された最高の速度を示す。速度の項目には、１．５Ｇｂｐｓ、３Ｇｂｐｓ、６Ｇｂｐｓ、１２Ｇｂｐｓのいずれかの値が登録される。また、いずれの速度でもリンクアップできなかった場合には、“Ｆ”（Fault）が登録される。
【００７１】
パラメータＣ１に対応する設定値の項目には、対応する送受信回路２１０でのパラメータ設定トレーニングによって決定された、プリシュート調整についてのパラメータＣ１の値が登録される。パラメータＣ３に対応する設定値の項目には、対応する送受信回路２１０でのパラメータ設定トレーニングによって決定された、プリエンファシス調整についてのパラメータＣ３の値が登録される。なお、対応する伝送路において１２Ｇｂｐｓでリンクアップできなかった場合、パラメータＣ１，Ｃ３の設定のためのパラメータ設定トレーニングが行われないため、各設定値の項目には値が登録されない。
【００７２】
ＥＮフラグは、対応する送受信回路２１０が通信に用いられているか否かを示すフラグ情報である。対応する送受信回路２１０が通信に用いられている場合、ＥＮフラグは“１”とされ、通信に用いられていない場合、ＥＮフラグは“０”とされる。ＩＯ拡張モジュール２０２との通信に利用可能なすべての送受信回路２１０のうち、ＥＮフラグが“１”とされる送受信回路２１０はＮ個のみである。
【００７３】
ここで、通信品質判定部２５１は、Ｍ本の伝送路のそれぞれにおける通信品質を、対応する送受信回路２１０でのパラメータ設定トレーニングにより設定されたパラメータＣ１，Ｃ３に基づいて判定する。図６で説明したように、パラメータＣ１，Ｃ３は、送信信号の波形を補正するための補正量を決定するものであり、値が小さいほど補正量が小さい。
【００７４】
送信信号の波形を補正しなくても高速で安定した通信が可能であれば、その伝送路の伝送性能は良好であると考えられる。そこで、通信品質判定部２５１は、パラメータ設定トレーニングにより設定されたパラメータＣ１，Ｃ３の値が小さいほど、すなわち波形の補正量が小さいほど、通信品質が高いと判定する。
【００７５】
設定されたパラメータＣ１，Ｃ３の組み合わせをどのように用いて通信品質を判定するかについては、種々の方法が考えられる。本実施の形態では、例として、通信品質判定部２５１は、次の式（１）を用いて通信品質の評価値を算出するものとする。
ＹP＝α・Ｃ１P＋β・Ｃ３P（ただし、α＜β）      ・・・（１）
式（１）において、ＹPは、Ｐ番目の伝送路における通信品質の評価値を示し、Ｃ１P，Ｃ３Pは、それぞれＰ番目の伝送路に対応する送受信回路２１０におけるパラメータＣ１，Ｃ３の設定値を示す。また、α，βは、それぞれパラメータＣ１，Ｃ３に対する重み付け係数である。α＜βとする理由は、一般的にプリシュートの調整量よりプリエンファシスの調整量の方が通信品質との相関が強いためである。式（１）によれば、算出された評価値が小さいほど通信品質が高いと判定される。
【００７６】
このように、パラメータ設定トレーニングによりＴｘイコライザに設定されたパラメータＣ１，Ｃ３を用いることで、通信品質を精度よく判定することができる。また、通信品質の判定のために新たな機能を設けずに、各送受信回路２１０が備えているパラメータＣ１，Ｃ３の設定機能を用いて通信品質が判定される。このため、エクスパンダチップ２０１ａの開発・製造コストを抑制することができる。
【００７７】
なお、各伝送路の通信品質を判定するための他の方法としては、例えば、まずパラメータＣ３の設定値が最も小さい伝送路を選択し、そのような伝送路が複数選択された場合、その中でパラメータＣ１が最も小さい伝送路を最も通信品質が高いと判定する方法がある。また、パラメータＣ３のみを用いて通信品質が判定されてもよい。
【００７８】
図１１は、評価値の算出結果の例を示すグラフである。図１１の例は、図１０に示したパラメータＣ１，Ｃ３の値を基に、式（１）にしたがって送受信回路２１０ごとに評価値を算出した場合の例を示す。ただし、α＝０．５，β＝１とする。なお、識別番号“Ｘ”の送受信回路２１０を「回路番号＃Ｘ」と表記する。
【００７９】
図１１では、算出された評価値が小さい順に、回路番号と評価値の算出結果とを並び替えて示している。この例では、回路番号＃１１，＃１２，＃５，＃６，＃３，＃７，＃１，＃９，＃８の順に、評価値の値として小さい値が算出されるので、この順で対応する伝送路が順位付けされる。また、パラメータＣ１，Ｃ３が設定されていない回路番号＃２，＃４，＃１０については、最後尾に順位付けされる。ただし、６Ｇｂｐｓでのリンクアップに成功した回路番号＃２，＃１０に対応する伝送路の方が、いずれの速度でもリンクアップできなかった回路番号＃４に対応する伝送路よりも高い順位とされる。
【００８０】
図１１のようなケースでは、例えばＮ＝４とすると、接続設定部２５２は、先頭から順にＮ個の送受信回路２１０、すなわち回路番号＃１１，＃１２，＃５，＃６を選択し、これらに対応する伝送路を有効にする。また、接続設定部２５２は、残りの回路番号＃３，＃７，＃１，＃９，＃８，＃２，＃１０，＃４にそれぞれ対応する伝送路を無効にする。これにより、回路番号＃１１，＃１２，＃５，＃６に対応する４本の伝送路を用いたワイドポートによって通信が開始される。
【００８１】
以上の図１０，図１１の例では、回路番号＃２，＃４，＃１０に対応する伝送路では、リンクアップシーケンスにより所望する速度、すなわち１２Ｇｂｐｓでのリンクアップに失敗している。それにもかかわらず、ＩＯモジュール２０１は、１２Ｇｂｐｓでのリンクアップに成功した回路番号＃１１，＃１２，＃５，＃６にそれぞれ対応する伝送路を用いて、所望する速度でＩＯ拡張モジュール２０２と通信することが可能となる。
【００８２】
また、各伝送路についての通信品質の順位は、判定テーブル２６１に保持される。その保持方法の一例として、接続設定部２５２は、通信品質が高いと判定された順に、各送受信回路２１０に対して大きな値のＰＨＹ番号を付与し、付与したＰＨＹ番号を判定テーブル２６１に登録する。
【００８３】
各伝送路についての通信品質の順位が保持されることで、次のような処理を実現可能となる。例えば、接続設定部２５２は、通信に用いられている伝送路のうちの１つで、リンクダウンが発生したり、ＢＥＲ（Bit Error Rate）の低下等の通信品質の悪化が生じた場合に、その伝送路の代わりに、残りの伝送路のうち最も通信品質が高いと判定されたものを用いて、通信を継続できる。
【００８４】
次に、ＩＯモジュール２０１の処理についてフローチャートを用いて説明する。
図１２は、リンクアップ時の処理手順の例を示すフローチャートである。
［ステップＳ１１］接続設定部２５２は、ＩＯ拡張モジュール２０２と接続されているすべての伝送路に対応する送受信回路２１０をリセットすることで、これらの伝送路をリンクアップさせる。リセットのタイミングとしては、例えば、ＤＥ２００の電源が投入された場合や、ＤＥ２００がリセットされた場合等がある。
【００８５】
リセットされた各送受信回路２１０は、リンクアップシーケンスを開始する。リンクアップシーケンスの実行により、各送受信回路２１０は、少なくとも、対応する伝送路においてリンクアップできる通信速度を判定する。さらに、各送受信回路２１０は、Ｔｘイコライザ、Ｒｘイコライザの設定パラメータの最適値を判定する場合もある。リンクアップシーケンスの処理内容については図１３で詳述する。
【００８６】
［ステップＳ１２］通信品質判定部２５１は、リンクアップシーケンスの実行が終了した各送受信回路２１０から、リンクアップに成功した通信速度と、設定されたパラメータＣ１，Ｃ３とを取得する。通信品質判定部２５１は、取得した通信速度およびパラメータＣ１，Ｃ３の値を、判定テーブル２６１の速度および対応する設定値の欄にそれぞれ登録する。なお、パラメータＣ１，Ｃ３については、リンクアップできた通信速度によっては取得できない場合がある。
【００８７】
［ステップＳ１３］通信品質判定部２５１は、ステップＳ１２で判定テーブル２６１の速度の欄に登録した情報に基づいて、リンクアップに失敗した伝送路、および、１５Ｇｂｐｓでのリンクアップに失敗したがそれより低速でのリンクアップには成功した伝送路があるかを判定する。このような条件に合致する伝送路がある場合には、ステップＳ１４の処理が実行され、このような条件に合致する伝送路がない場合には、ステップＳ１５の処理が実行される。
【００８８】
［ステップＳ１４］通信品質判定部２５１は、リンクアップに失敗した伝送路、および、１５Ｇｂｐｓでのリンクアップに失敗したがそれより低速でのリンクアップには成功した伝送路に対応する、判定テーブル２６１のＥＮフラグの欄に“０”を登録して、これらの伝送路を無効化する。
【００８９】
なお、これ以後の図１２の説明では、ステップＳ１４で無効化された伝送路以外の伝送路を「無効化されなかった伝送路」と呼ぶ。
［ステップＳ１５］通信品質判定部２５１は、無効化されなかった伝送路のそれぞれについて、ステップＳ１２で取得したパラメータＣ１，Ｃ３に基づいて、通信品質の評価値を計算する。
【００９０】
［ステップＳ１６］通信品質判定部２５１は、無効化されなかった伝送路の中に、ステップＳ１５で算出された評価値が同じ値になったものがあるかを判定する。評価値が同じ値になった伝送路がある場合、ステップＳ１７の処理が実行され、評価値が同じ値になった伝送路がない場合、ステップＳ１８の処理が実行される。
【００９１】
［ステップＳ１７］通信品質判定部２５１は、評価値が同じ値になった伝送路のグループについて、次のような手順で評価値を補正する。通信品質判定部２５１は、グループ内の伝送路の中に、過去に通信に用いる伝送路として選択されたものがある場合、その伝送路に対応する評価値を所定ポイントだけ減らす。
【００９２】
過去に通信に用いる伝送路として選択されたものとしては、例えば、前回のリンクアップ時に通信に用いられた伝送路がある。通信品質判定部２５１は、例えば、判定テーブル２６１のＥＮフラグの欄に現時点で“１”が登録されている伝送路を、前回のリンクアップ時に通信に用いられた伝送路として判定できる。
【００９３】
また、別の方法として、通信に用いる伝送路として選択された伝送路の情報が記録されるログが用いられてもよい。このようなログが記憶部２６０に格納されている場合、通信品質判定部２５１は、ログを参照して、例えば、直近の一定期間内に通信に用いる伝送路として所定回数以上選択された伝送路を、評価値を減らす伝送路として選択してもよい。
【００９４】
［ステップＳ１８］通信品質判定部２５１は、無効化されなかった各伝送路に対して、評価値が小さい順に順位を付与する。なお、ステップＳ１７で評価値の補正が行われている場合には、補正後の評価値が用いられる。通信品質判定部２５１は、無効化されなかった各伝送路に対して、順位が高い順（すなわち、評価値が小さい順）に大きなＰＨＹ番号を付与し、付与したＰＨＹ番号によって、判定テーブル２６１における対応するＰＨＹ番号の欄を更新する。
【００９５】
なお、このステップＳ１８では、ステップＳ１４で無効化された伝送路についてはＰＨＹ番号が付与されない。ＰＨＹ番号が付与されない伝送路については、再度リンクアップされるまでの間に、接続設定部２５２によってワイドポートを構成する伝送路として選択されることはなく、通信に使用されない。すなわち、通信品質判定部２５１は、所望の通信速度以上でリンクアップできなかった伝送路については、ステップＳ１４であらかじめ無効化しておくことで、通信の開始後、所望の通信速度以上で通信可能な伝送路が必ず選択されるようにすることができる。
【００９６】
［ステップＳ１９］接続設定部２５２は、ステップＳ１８までの処理によって更新された判定テーブル２６１を参照し、ＰＨＹ番号が大きい順にＮ本の伝送路を選択する。接続設定部２５２は、選択した伝送路に対応するＥＮフラグを“１”にして、選択した伝送路を有効化する。また、接続設定部２５２は、それ以外の伝送路に対応するＥＮフラグを“０”にして、それらの伝送路を無効化する。
【００９７】
［ステップＳ２０］接続設定部２５２は、ステップＳ１９で有効化したＮ本の伝送路によるワイドポートを用いて、通信を開始する。すなわち、接続設定部２５２は、有効化したＮ本の伝送路のそれぞれに対応する送受信回路２１０を介して、データの送受信を実行する。
【００９８】
図１３は、送受信回路によるリンクアップシーケンスの処理手順の例を示すフローチャートである。図１３の処理は、図１２のステップＳ１１で接続設定部２５２によってリセットされた各送受信回路２１０において実行される。
【００９９】
［ステップＳ３１］送受信回路２１０において、制御回路２２１は、１．５Ｇｂｐｓでリンクアップできるかを確認する。例えば、制御回路２２１は、パターンジェネレータ２１９にテスト信号を出力させる。テスト信号は、１．５Ｇｂｐｓの速度でＩＯ拡張モジュール２０２の対応する送受信回路（以下、“相手側の送受信回路”と呼ぶ）へ送信され、この送受信回路で正常に受信できたかが判定される。また、制御回路２２１は、相手側の送受信回路から送信されたテスト信号を、デシリアライザ２１７を介して受信し、正常に受信できたかを判定する。
【０１００】
［ステップＳ３２］制御回路２２１は、３Ｇｂｐｓでリンクアップできるかを確認する。例えば、制御回路２２１は、パターンジェネレータ２１９にテスト信号を出力させる。テスト信号は、３Ｇｂｐｓの速度で相手側の送受信回路へ送信され、この送受信回路で正常に受信できたかが判定される。また、制御回路２２１は、相手側の送受信回路から送信されたテスト信号を、デシリアライザ２１７を介して受信し、正常に受信できたかを判定する。
【０１０１】
［ステップＳ３３］制御回路２２１は、ステップＳ３１，Ｓ３２でのリンクアップに成功したかを判定する。ここで、少なくともステップＳ３２での３Ｇｂｐｓでのリンクアップに成功した場合には、ステップＳ３４の処理が実行される。また、ステップＳ３２での３Ｇｂｐｓでのリンクアップに失敗した場合には、ステップＳ３８の処理が実行される。
【０１０２】
［ステップＳ３４］送受信回路２１０と、ＩＯ拡張モジュール２０２の対応する送受信回路との間で、６Ｇｂｐｓでの通信をサポートしているか、および、１２Ｇｂｐｓでの通信をサポートしているかについて、互いに確認される。この確認は、互いに相手側に送信されるCapability bitに基づいて行われる。
【０１０３】
制御回路２２１は、シリアライザ２１２に対して、１２Ｇｂｐｓでの通信をサポートすることを示すCapability bitの値を付加する。このようなテスト信号が相手側の送受信回路に受信され、相手側の送受信回路は、送受信回路２１０が１２Ｇｂｐｓでの通信をサポートしていることを認識する。また、制御回路２２１は、相手側の送受信回路から送信されたテスト信号をデシリアライザ２１７を介して受信し、受信したテスト信号に付加されたCapability bitに基づいて、相手側の送受信回路が６Ｇｂｐｓまたは１２Ｇｂｐｓでの通信をサポートしているかを判定する。
【０１０４】
相手側の送受信回路が１２Ｇｂｐｓでの通信をサポートしている場合、ステップＳ３６の処理が実行される。相手側の送受信回路が６Ｇｐｂｓでの通信をサポートしているものの、１２Ｇｂｐｓでの通信をサポートしていない場合、ステップＳ３５の処理が実行される。相手側の送受信回路が６Ｇｂｐｓ，１２Ｇｂｐｓのいずれの通信もサポートしていない場合、ステップＳ３８の処理が実行される。
【０１０５】
以上のステップＳ３１〜Ｓ３４の処理が、１．５Ｇｂｐｓおよび３Ｇｂｐｓについての速度設定トレーニングとなる。続いて、パラメータ設定トレーニングが実行される。パラメータ設定トレーニングは、６Ｇｂｐｓおよび１２Ｇｂｐｓについての速度設定トレーニングを兼ねる。
【０１０６】
［ステップＳ３５］Ｒｘイコライザのパラメータ設定トレーニングが実行される。例えば、制御回路２２１は、パターンジェネレータ２１９にテスト信号を出力させる。テスト信号は相手側の送受信回路に送信され、相手側の送受信回路は、受信信号の波形が所定の条件を満たすように自身が備えるＲｘイコライザのパラメータを調整する。パラメータの調整が終了した場合、相手側の送受信回路からは終了メッセージが送信される。また、相手側の送受信回路からテスト信号が送信されると、制御回路２２１は、波形検出回路２２０から波形の状態を示す情報を受信し、受信情報が所定の基準値を満たすように、Ｒｘイコライザ２１５に設定するパラメータを調整する。
【０１０７】
制御回路２２１は、ステップＳ３５のトレーニング開始から所定時間以内に、相手側の送受信回路から終了メッセージを受信し、かつ、送受信回路２１０のＲｘイコライザ２１５に設定するパラメータの調整が終了した場合に、６Ｇｂｐｓでリンクアップできたと判定する。
【０１０８】
［ステップＳ３６］Ｔｘイコライザのパラメータ設定トレーニングが実行される。このトレーニングでは、送受信回路２１０と相手側の送受信回路との間でネゴシエーションが行われることで、ＴｘイコライザのパラメータＣ１〜Ｃ３の最適値が決定される。Ｔｘイコライザのパラメータ設定トレーニングについては、図１４において詳述する。
【０１０９】
なお、ステップＳ３６でのトレーニングが所定時間以内に終了しなかった場合、制御回路２２１は、１２Ｇｂｐｓでリンクアップできなかったと判定する。この場合、ステップＳ３５に遷移し、６ＧｂｐｓでのＲｘイコライザのパラメータ設定トレーニングが行われて、６Ｇｂｐｓでリンクアップ可能かが判定される。
【０１１０】
［ステップＳ３７］Ｒｘイコライザのパラメータ設定トレーニングが実行される。この処理内容は、通信速度が１２Ｇｂｐｓであること以外は、ステップＳ３５と同様である。
制御回路２２１は、ステップＳ３７のトレーニング開始から所定時間以内に、相手側の送受信回路から終了メッセージを受信し、かつ、送受信回路２１０のＲｘイコライザ２１５に設定するパラメータの調整が終了した場合に、１２Ｇｂｐｓでリンクアップできたと判定する。一方、１２Ｇｂｐｓでリンクアップできなかったと判定された場合、ステップＳ３５に遷移し、６ＧｂｐｓでのＲｘイコライザのパラメータ設定トレーニングが行われて、６Ｇｂｐｓでリンクアップ可能かが判定される。
【０１１１】
［ステップＳ３８］制御回路２２１は、リンクアップできた最高の通信速度を通信品質判定部２５１へ通知する。また、制御回路２２１は、１２Ｇｂｐｓでリンクアップできた場合、パラメータ設定トレーニングにより決定されたＴｘイコライザ２１４のパラメータＣ１，Ｃ３を、通信品質判定部２５１へ通知する。
【０１１２】
図１４は、Ｔｘイコライザのパラメータ設定トレーニングの処理手順の例を示すフローチャートである。この図１４の処理は、図１３のステップＳ３６の処理に対応する。
［ステップＳ４１］制御回路２２１は、Ｔｘイコライザ２１４に対して、パラメータＣ１〜Ｃ３についての所定の初期値を設定する。
【０１１３】
［ステップＳ４２］制御回路２２１は、パターンジェネレータ２１９にテスト信号を出力させる。これにより、テスト信号が相手側の送受信回路へ送信される。
［ステップＳ４３］相手側の送受信回路においては、受信したテスト信号の波形が評価され、その評価結果に基づいてメッセージが返信される。メッセージとしては、パラメータＣ１〜Ｃ３のそれぞれについて、インクリメントするかデクリメントするかを示す調整要求メッセージと、トレーニングを終了するための終了要求メッセージとがある。
【０１１４】
制御回路２２１は、相手側の送受信回路から返信されたメッセージを、デシリアライザ２１７を介して受信する。
［ステップＳ４４］制御回路２２１は、ステップＳ４３で受信したメッセージの種類を判定する。受信したメッセージが調整要求メッセージの場合、ステップＳ４５の処理が実行される。受信したメッセージが終了要求メッセージの場合、図１４の処理は終了する。
【０１１５】
［ステップＳ４５］制御回路２２１は、受信した調整要求メッセージの内容に基づいて、Ｔｘイコライザ２１４に設定するパラメータを変更する。そして、ステップＳ４２からの処理が再度実行される。
【０１１６】
以上のように、送受信回路２１０と、相手側の送受信回路との間でネゴシエーションが行われることにより、Ｔｘイコライザ２１４に設定するパラメータＣ１〜Ｃ３の最適値が決定される。なお、トレーニング開始から所定時間以内に終了要求メッセージを受信しなかった場合、制御回路２２１は、１２Ｇｂｐｓでのリンクアップに失敗したと判定する。この場合、図１３のステップＳ３５に遷移し、６ＧｂｐｓでのＲｘイコライザのパラメータ設定トレーニングが行われる。
【０１１７】
また、図１４では、説明を簡単にするために、送受信回路２１０を送信側とした場合の処理についてのみ示した。しかし、実際には、送受信回路２１０と相手側の送受信回路との処理を入れ替えた処理も行われ、相手側の送受信回路におけるＴｘイコライザのパラメータ調整も行われる。この場合、制御回路２２１は、波形検出回路２２０から受信信号波形の評価結果を受信し、その評価結果に基づいて、相手側の送受信回路に対して調整要求メッセージまたは終了要求メッセージを送信する。また、所定時間以内に波形の評価結果が所定の条件を満たさず、終了要求メッセージを送信できない場合には、制御回路２２１は、１２Ｇｂｐｓでのリンクアップに失敗したと判定する。
【０１１８】
ところで、上記の図１２では、Ｔｘイコライザ２１４のパラメータＣ１，Ｃ３に基づいて通信品質を判定したが、通信品質の判定に用いる値としてはこれ以外の値を用いることもできる。例えば、Ｒｘイコライザのパラメータを用いることができる。次の図１５では、Ｔｘイコライザ２１４のパラメータＣ１，Ｃ３に加えて、相手側の送受信回路におけるＲｘイコライザのパラメータＣｒを用いて通信品質を判定するように図１２の処理を変形した例を示す。
【０１１９】
図１５は、リンクアップ時の処理手順の変形例を示すフローチャートである。この図１５では、図１２と同じ内容の処理ステップには同じ符号を付して示し、その説明を省略する。
【０１２０】
図１５の処理は、図１２におけるステップＳ１２，Ｓ１５を、それぞれステップＳ１２ａ，Ｓ１５ａに置き換えたものである。
［ステップＳ１２ａ］ＩＯモジュール２０１の各送受信回路２１０における制御回路２２１は、リンクアップシーケンスの実行により１２Ｇｂｐｓでのリンクアップに成功した場合、相手側の送受信回路のＲｘイコライザに設定されたパラメータＣｒを、相手側の送受信回路から取得する。
【０１２１】
通信品質判定部２５１は、各送受信回路２１０から、リンクアップに成功した通信速度を取得する。また、通信品質判定部２５１は、１２Ｇｂｐｓでのリンクアップに成功した送受信回路２１０から、対応する伝送路に対して設定されたパラメータＣ１，Ｃ３，Ｃｒを取得する。通信品質判定部２５１は、取得した通信速度およびパラメータＣ１，Ｃ３，Ｃｒの値を、判定テーブル２６１の速度および対応する設定値の欄にそれぞれ登録する。なお、図示しないが、本変形例の場合、判定テーブル２６１には、パラメータＣｒについての設定値の欄が追加される。
【０１２２】
［ステップＳ１５ａ］通信品質判定部２５１は、無効化されなかった伝送路のそれぞれについて、ステップＳ１２で取得したパラメータＣ１，Ｃ３，Ｃｒに基づいて、通信品質の評価値を計算する。Ｐ番目の伝送路における通信品質の評価値ＹPは、例えば、次の式（２）を用いて算出される。
ＹP＝α・Ｃ１P＋β・Ｃ３P＋γ・ＣｒP（ただし、α＜β，γ＜β）      ・・・（２）
式（２）において、ＣｒPは、Ｐ番目の伝送路に対応する送受信回路２１０に接続された相手側の送受信回路におけるパラメータＣｒの設定値を示す。また、γは、パラメータＣｒに対する重み付け係数である。γ＜βとする理由は、一般的にＲｘイコライザでの波形形状の調整量より送信側でのプリエンファシスの調整量の方が通信品質との相関が強いためである。式（２）によれば、式（１）と同様、算出された評価値が小さいほど通信品質が高いと判定される。
【０１２３】
なお、以上の図１５の例では、相手側の送受信回路におけるＲｘイコライザに設定されたパラメータＣｒが用いられたが、例えば、送受信回路２１０におけるＲｘイコライザに設定されたパラメータＣｒが用いられてもよい。これらのいずれの場合でも、ＴｘイコライザのパラメータＣ１，Ｃ３に加えてＲｘイコライザのパラメータＣｒを用いて伝送路の通信品質が判定されることで、通信品質の判定精度を向上させることができる。
【０１２４】
次に、図１６は、伝送路監視処理の手順の例を示すフローチャートである。この図１５の処理は、図１２または図１５のステップＳ２０で通信が開始された後に、ＩＯモジュール２０１のエクスパンダチップ２０１ａにおいて実行される。
【０１２５】
［ステップＳ６１］通信品質判定部２５１は、有効化されている各伝送路の伝送状態を監視する。通信品質判定部２５１により、例えば、ＢＥＲが所定値以下まで低下したことや、リンクダウンが発生したこと等によって、通信が不調の伝送路が検知されると、ステップＳ６２の処理が実行される。
【０１２６】
［ステップＳ６２］接続設定部２５２は、通信の不調が検知された伝送路に対応する判定テーブル２６１のＥＮフラグを“０”に更新することで、この伝送路を無効化する。
［ステップＳ６３］接続設定部２５２は、判定テーブル２６１を参照し、ステップＳ６２で無効化した伝送路以外の、ＥＮフラグが“０”の伝送路の中から、ＰＨＹ番号が最大の伝送路を選択する。接続設定部２５２は、選択した伝送路に対応するＥＮフラグを“１”に更新して有効化し、この伝送路と、すでに有効化されていた他の（Ｎ−１）本の伝送路とによってワイドポートを構成し、通信を継続させる。
【０１２７】
前述のように、各伝送路に対応する送受信回路２１０ａは、リンクアップの際に判定された通信品質の順にＰＨＹ番号が付与され、付与されたＰＨＹ番号が判定テーブル２６１に保持されている。このような構成により、図１６のように通信が開始されてから通信が不調の伝送路が検知された場合に、無効化されている余剰の伝送路の中から最も通信品質が高いと考えられる伝送路を簡単に選択することができる。そして、選択した伝送路を通信が不調の伝送路と入れ替えて短時間に通信を再開することができる。
【０１２８】
以上説明した第２の実施の形態では、ＩＯモジュール２０１とＩＯ拡張モジュール２０２の各エクスパンダチップ間が、ワイドポートを構成するＮ本より多いＭ本の伝送路によって物理的に接続される。そして、Ｍ本の伝送路の中から通信品質が高い順にＮ本の伝送路が選択され、選択されたＮ本の伝送路を用いて通信が開始される。これにより、各エクスパンダチップが実装されたプリント基板や、エクスパンダチップ間の伝送路が実装された基板として安価なものが使用された場合でも、各エクスパンダチップ間で所望の速度以上で安定的に通信できる確率が高くなる。すなわち、第２の実施の形態によれば、ＤＥ２００の製造コストを抑制しつつ、その内部における通信速度が低下する可能性を低減できる。
【０１２９】
なお、上記の第２の実施の形態では、ＩＯモジュール２０１とＩＯ拡張モジュール２０２との間の通信に関する構成について説明したが、ＩＯモジュール２０１とＩＯ拡張モジュール２０３との間の通信に関する構成としても上記と同様の構成を適用することができる。
【０１３０】
また、例えば、ＣＭ３００ａのＩＯＣ３０５が備えるＳＡＳコントローラチップと、ＤＥ２００のＩＯモジュール２０１が備えるエクスパンダチップ２０１ａとの間の通信に関しても、ＩＯモジュール２０１とＩＯ拡張モジュール２０２の各エクスパンダチップの間の通信と同様とすることができる。例えば、ＩＯＣ３０５のＳＡＳコントローラチップとＩＯモジュール２０１のエクスパンダチップ２０１ａの少なくとも一方が、安価なプリント基板に実装される場合がある。あるいは、ＩＯＣ３０５とＩＯモジュール２０１との間が“バックプレーン”と呼ばれるプリント基板によって接続される場合、このプリント基板として安価なものが使用される場合がある。これらの場合、ＩＯＣ３０５とＩＯモジュール２０１との間で所望の速度以上で通信できなくなる可能性がある。
【０１３１】
ここで、ＩＯＣ３０５のＳＡＳコントローラチップとＩＯモジュール２０１のエクスパンダチップとの間でＮ本の伝送路（物理リンク）を用いたワイドポートを構成するものとする。この場合に、ＩＯＣ３０５のＳＡＳコントローラチップとＩＯモジュール２０１のエクスパンダチップとの間を、Ｎより多い本数の伝送路によって物理的に接続する。また、上記の通信品質判定部２５１および接続設定部２５２に対応する機能を、ＩＯＣ３０５のＳＡＳコントローラチップ内のＣＰＵによって実現する。そして、ＩＯＣ３０５のＳＡＳコントローラチップは、リンクアップの際に、接続された伝送路の中から通信品質が高い順にＮ本の伝送路を選択し、選択したＮ本によってワイドポートを構成して、ＩＯモジュール２０１のエクスパンダチップ２０１ａとの通信を開始する。これにより、ＩＯＣ３０５のＳＡＳコントローラチップとＩＯモジュール２０１のエクスパンダチップとの間で所望の速度以上で安定的に通信できる可能性が高まる。
【０１３２】
また、上記の通信品質判定部２５１および接続設定部２５２に対応する機能を、ＩＯＣ３０５内のＣＰＵの代わりに、ＣＭ３００ａのＣＰＵ３０１によって実現してもよい。この場合、通信品質判定部２５１および接続設定部２５２に対応する処理は、ＣＰＵ３０１が所定のプログラムを実行することで実現される。
【０１３３】
さらに、第２の実施の形態に示したＳＡＳエクスパンダチップ間の通信に関する構成を、ＰＣＩｅバスを介して接続されるＰＣＩｅコントローラチップ間の通信に関する構成に適用することもできる。例えば、ＣＭ３００ａのＰＣＩｅスイッチ３０３と、他方のＣＭ３００ｂのＰＣＩｅスイッチがそれぞれ備えるＰＣＩｅコントローラチップに対して、第２の実施の形態の技術を適用することができる。
【０１３４】
ＰＣＩｅでは、上記の説明における物理リンクは“レーン”と呼ばれる。また、複数のレーンを１つの論理的な通信ポートとして用いて通信する方法も規定されている。したがって、上記の説明における物理リンク（伝送路）をレーンに対応させることで、ＰＣＩｅバスを介した通信においても、第２の実施の形態と同様の接続形態やレーンの選択処理が実現される。
【０１３５】
以上の各実施の形態に関し、さらに以下の付記を開示する。
（付記１）  ２以上の第１の数の伝送路を介して他の通信部と接続する通信部と、
前記他の通信部との通信開始時に、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信部に通信させる制御部と、
を有することを特徴とする電子機器。
【０１３６】
（付記２）  前記他の通信部との通信開始時において、
前記通信部は、前記第１の数の伝送路のそれぞれにおける信号送信特性の設定パラメータを、前記他の通信部とのネゴシエーションにより決定し、
前記制御部は、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定する、
ことを特徴とする付記１記載の電子機器。
【０１３７】
（付記３）  前記設定パラメータは、対応する伝送路を介して送信する信号の波形を補正するための補正量を示し、
前記制御部は、前記設定パラメータが示す前記補正量が小さいほど、対応する伝送路における前記通信品質が高いと判定する、
ことを特徴とする付記２記載の電子機器。
【０１３８】
（付記４）  前記制御部は、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータと、前記第１の数の伝送路のそれぞれにおける、前記他の通信部における信号受信特性についての受信設定パラメータとに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定することを特徴とする付記２または３記載の電子機器。
【０１３９】
（付記５）  前記制御部は、前記他の通信部との通信開始時において、前記第１の数の伝送路の中から、所定の速度以上で前記他の通信部と通信できなかった伝送路を除外し、残りの伝送路の中から、前記通信品質が高い順に前記第２の数の伝送路を選択することを特徴とする付記１〜５のいずれか１つに記載の電子機器。
【０１４０】
（付記６）  前記制御部は、前記第１の数の伝送路のそれぞれについての前記通信品質の順位を示す順位情報を記憶部に記録し、選択した前記第２の数の伝送路を用いて前記通信部に通信を開始させた後、前記第２の数の伝送路のうちの第１の伝送路において通信の不調を検知した場合、前記第１の数の伝送路のうち前記第２の数の伝送路を除いた残りの伝送路の中から、前記順位情報に基づいて前記通信品質が最も高い第２の伝送路を選択し、前記第１の伝送路の代わりに前記第２の伝送路を用いて前記通信部に通信させることを特徴とする付記１〜６のいずれか１つに記載の電子機器。
【０１４１】
（付記７）  ２以上の第１の数の伝送路を介して他の通信制御回路と接続する通信部と、
前記他の通信制御回路との通信開始時に、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信部に通信させる制御部と、
を有することを特徴とする通信制御回路。
【０１４２】
（付記８）  電子機器が、
２以上の第１の数の伝送路を介して他の通信回路と接続する、前記電子機器が備える通信回路に、他の通信部との通信を開始させる際、前記第１の数の伝送路のそれぞれにおける通信品質を判定し、
前記第１の数の伝送路の中から、前記通信品質が高い順に前記第１の数より少ない第２の数の伝送路を選択し、前記第２の数の伝送路を用いて前記通信回路に通信させる、
ことを特徴とする通信制御方法。
【０１４３】
（付記９）  前記判定では、前記第１の数の伝送路のそれぞれにおける信号送信特性の設定パラメータを、前記他の通信回路とのネゴシエーションにより決定し、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータに基づいて、前記第１の数の伝送路のそれぞれにおける前記通信品質を判定することを特徴とする付記８記載の通信制御方法。
【０１４４】
（付記１０）  前記設定パラメータは、対応する伝送路を介して送信する信号の波形を補正するための補正量を示し、
前記判定では、前記設定パラメータが示す前記補正量が小さいほど、対応する伝送路における通信品質が高いと判定する、
ことを特徴とする付記９記載の通信制御方法。
【０１４５】
（付記１１）  前記判定では、前記ネゴシエーションにより決定された前記第１の数の伝送路のそれぞれに対応する前記設定パラメータと、前記第１の数の伝送路のそれぞれにおける、前記他の通信回路における信号受信特性についての受信設定パラメータとに基づいて、前記第１の数の伝送路のそれぞれにおける通信品質を判定することを特徴とする付記９または１０記載の通信制御方法。
【０１４６】
（付記１２）  前記選択では、前記第１の数の伝送路の中から、所定の速度以上で前記他の通信回路と通信できなかった伝送路を除外し、残りの伝送路の中から、前記通信品質が高い順に前記第２の数の伝送路を選択することを特徴とする付記８〜１１のいずれか１つに記載の通信制御方法。
【０１４７】
（付記１３）  前記電子機器が、
前記第１の数の伝送路のそれぞれについての前記通信品質の順位を示す順位情報を記憶部に記録し、
選択した前記第２の数の伝送路を用いて前記通信回路に通信を開始させた後、前記第２の数の伝送路のうちの第１の伝送路において通信の不調を検知した場合、前記第１の数の伝送路のうち前記第２の数の伝送路を除いた残りの伝送路の中から、前記順位情報に基づいて前記通信品質が最も高い第２の伝送路を選択し、前記第１の伝送路の代わりに前記第２の伝送路を用いて前記通信回路に通信させる、
処理をさらに含むことを特徴とする付記８〜１２のいずれか１つに記載の通信制御方法。
【符号の説明】
【０１４８】
１  電子機器
２，４  通信部
３  制御部
５  判定テーブル
Ｌ１〜Ｌ６  伝送路
【図１】
0006409399.tif 000002
【図２】
0006409399.tif 000003
【図３】
0006409399.tif 000004
【図４】
0006409399.tif 000005
【図５】
0006409399.tif 000006
【図６】
0006409399.tif 000007
【図７】
0006409399.tif 000008
【図８】
0006409399.tif 000009
【図９】
0006409399.tif 000010
【図１０】
0006409399.tif 000011
【図１１】
0006409399.tif 000012
【図１２】
0006409399.tif 000013
【図１３】
0006409399.tif 000014
【図１４】
0006409399.tif 000015
【図１５】
0006409399.tif 000016
【図１６】
0006409399.tif 000017