(57)【特許請求の範囲】
【請求項１】
複数のレーンのそれぞれに接続される複数の双方向ＩＯ回路と、
上位レイヤ処理部と前記複数の双方向ＩＯ回路との間に設けられる物理層処理回路と、
前記複数の双方向ＩＯ回路及び前記物理層処理回路の動作を制御するレーン割当制御回路と
を備え、
前記複数の双方向ＩＯ回路の各々は、送信レーンにデータを送信する送信ＩＯ回路、あるいは、受信レーンからデータを受信する受信ＩＯ回路のいずれとしても動作可能なように構成され、
前記物理層処理回路は、前記上位レイヤ処理部から受け取る送信パケットを前記送信ＩＯ回路を介して前記送信レーンに送信し、且つ、前記受信レーンから前記受信ＩＯ回路を介して受け取る受信パケットを前記上位レイヤ処理部に出力するように、物理層処理を行い、
前記複数のレーンの各々は、前記送信レーンあるいは前記受信レーンのいずれとしても使用可能であり、
前記複数のレーンのうち前記送信レーンに割り当てられるレーンの数は、送信レーン数であり、
前記複数のレーンのうち前記受信レーンに割り当てられるレーンの数は、受信レーン数であり、
前記送信レーン数及び前記受信レーン数は、可変であり、
前記レーン割当制御回路は、指定された前記送信レーン数及び前記受信レーン数での前記物理層処理が実現されるように、前記物理層処理回路及び前記複数の双方向ＩＯ回路を通信中に動的に制御し、
前記各々の双方向ＩＯ回路は、切り替え信号に従って、前記送信ＩＯ回路あるいは前記受信ＩＯ回路として動作し、
前記物理層処理回路は、レーン割当制御信号に従って、前記物理層処理を行い、
前記送信レーン数及び前記受信レーン数は、レーン割当変更要求によって任意に指定され、
前記レーン割当制御回路は、
前記レーン割当変更要求を受け取ってデコードするデコーダと、
前記デコードの結果に基づいて、前記指定された送信レーン数及び受信レーン数での前記物理層処理が実現されるように、前記切り替え信号及び前記レーン割当制御信号を生成する制御回路と
を具備する
シリアルインタフェース回路。
【請求項２】
請求項１に記載のシリアルインタフェース回路であって、
前記上位レイヤ処理部に含まれるソフトウェアが、前記レーン割当変更要求を生成し、
前記レーン割当制御回路は、前記上位レイヤ処理部から前記レーン割当変更要求を受け取る
シリアルインタフェース回路。
【請求項３】
請求項２に記載のシリアルインタフェース回路であって、
前記物理層処理回路は、前記上位レイヤ処理部から前記レーン割当変更要求を受け取り、前記レーン割当変更要求を通信相手に向けて送信し、
前記通信相手から、前記レーン割当変更要求のパケットに応答する確認応答パケットが返送され、
前記物理層処理回路は、前記確認応答パケットの受信に応答して、前記通信相手との間で再リンク確立処理を行う
シリアルインタフェース回路。
【請求項４】
第１通信装置と、
複数のレーンを介して前記第１通信装置と接続された第２通信装置と
を具備し、
前記第１通信装置及び前記第２通信装置の各々は、
前記複数のレーンのそれぞれに接続される複数の双方向ＩＯ回路と、
上位レイヤ処理部と前記複数の双方向ＩＯ回路との間に設けられる物理層処理回路と、
前記複数の双方向ＩＯ回路及び前記物理層処理回路の動作を制御するレーン割当制御回路と
を備え、
前記複数の双方向ＩＯ回路の各々は、送信レーンにデータを送信する送信ＩＯ回路、あるいは、受信レーンからデータを受信する受信ＩＯ回路のいずれとしても動作可能なように構成され、
前記物理層処理回路は、前記上位レイヤ処理部から受け取る送信パケットを前記送信ＩＯ回路を介して前記送信レーンに送信し、且つ、前記受信レーンから前記受信ＩＯ回路を介して受け取る受信パケットを前記上位レイヤ処理部に出力するように、物理層処理を行い、
前記複数のレーンの各々は、前記送信レーンあるいは前記受信レーンのいずれとしても使用可能であり、
前記複数のレーンのうち前記送信レーンに割り当てられるレーンの数は、送信レーン数であり、
前記複数のレーンのうち前記受信レーンに割り当てられるレーンの数は、受信レーン数であり、
前記送信レーン数及び前記受信レーン数は、可変であり、
前記レーン割当制御回路は、指定された前記送信レーン数及び前記受信レーン数での前記物理層処理が実現されるように、前記物理層処理回路及び前記複数の双方向ＩＯ回路を通信中に動的に制御し、
前記各々の双方向ＩＯ回路は、切り替え信号に従って、前記送信ＩＯ回路あるいは前記受信ＩＯ回路として動作し、
前記物理層処理回路は、レーン割当制御信号に従って、前記物理層処理を行い、
前記送信レーン数及び前記受信レーン数は、レーン割当変更要求によって任意に指定され、
前記レーン割当制御回路は、
前記レーン割当変更要求を受け取ってデコードするデコーダと、
前記デコードの結果に基づいて、前記指定された送信レーン数及び受信レーン数での前記物理層処理が実現されるように、前記切り替え信号及び前記レーン割当制御信号を生成する制御回路と
を具備する
シリアル通信システム。
【請求項５】
請求項４に記載のシリアル通信システムであって、
前記第１通信装置において、前記上位レイヤ処理部に含まれるソフトウェアが前記レーン割当変更要求を生成し、前記レーン割当制御回路及び前記物理層処理回路は前記上位レイヤ処理部から前記レーン割当変更要求を受け取り、前記物理層処理回路は前記レーン割当変更要求を前記第２通信装置に向けて送信し、
前記第２通信装置の前記レーン割当制御回路は、前記第１通信装置から送信された前記レーン割当変更要求を受け取る
シリアル通信システム。
【請求項６】
請求項５に記載のシリアル通信システムであって、
前記第２通信装置は、前記受け取ったレーン割当変更要求のパケットに応答する確認応答パケットを、前記第１通信装置に返送し、
前記第１通信装置の前記物理層処理回路は、前記確認応答パケットの受信に応答して、前記第２通信装置との間で再リンク確立処理を行う
シリアル通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアルインタフェース回路及びシリアル通信システムに関する。特に、本発明は、複数のレーンを用いてシリアル通信を行うシリアルインタフェース回路及びシリアル通信システムに関する。
【背景技術】
【０００２】
従来、高速シリアルインタフェースとして、ＰＣＩ  Ｅｘｐｒｅｓｓ（登録商標）やＦＢＤが知られている。このような高速シリアルインタフェースにおいて、データ伝送を行う通信デバイス間を接続する一対（１ポート）のシリアルリンク（シリアル伝送路）は、「レーン（ｌａｎｅ）」と呼ばれている。高いデータ帯域幅が要求される場合には、複数のレーンが並列的に設けられる。つまり、レーンの並列化により、データ伝送の高速化が可能である。
【０００３】
複数のレーンを用いたシリアルインタフェースに関連する技術として、次のものが知られている。
【０００４】
特許文献１（特開２００７−１２２７１４号公報）に記載された技術によれば、電力供給モードの変化に応答して、レーン幅（レーン数）が削減される。例えば、交流（ＡＣ）電力から直流（ＤＣ）電力への変化に応答して、レーン幅が所定のレベルにまで削減される。これにより、電力消費が削減される。
【０００５】
特許文献２（特開２００７−２２６４９４号公報）に記載された技術によれば、スイッチから木構造の上位側に位置するノードに至るデータ転送経路を形成する高速シリアルバスのリンクのレーン数を、エンドポイントからスイッチに至る各データ転送経路を送信される各データ転送量の最大値を満たすレーン数をそれぞれ加算したレーン数とする。これにより、一のスイッチに対する複数のエンドポイントからのトランザクション（データ転送）が同時に発生するような場合であっても、同時動作によるボトルネックを解消することができる。
【０００６】
特許文献３（特開２０１０−１４７７０２号公報）に記載された技術によれば、レーン数切替パケット生成部は、複数のレーンの動作状態（有効状態あるいは休止状態）の切り替えを指示するレーン数切替パケットを生成する。バイト・ストライピングは、レーン数切替パケットにおいて有効状態とされた有効レーンに伝送対象情報を振り分けて送信する。バイト・アンストライピングは、レーン数切替パケットにおいて有効状態された有効レーンに伝送される情報に基づいて伝送対象情報を復元する。これにより、伝送路の動作状態を移行させる際の移行時間が短縮される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−１２２７１４号公報
【特許文献２】特開２００７−２２６４９４号公報
【特許文献３】特開２０１０−１４７７０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述の関連技術では、送信レーンは送信レーンとしてしか使用されず、予め決められた数の送信レーンの中で使用するものの数を変えることはできるが、送信レーンを受信レーンに切り替えることはできない。同様に、受信レーンは受信レーンとしてしか使用されず、予め決められた数の受信レーンの中で使用するものの数を変えることはできるが、受信レーンを送信レーンに切り替えることはできない。つまり、上述の関連技術では、使用するレーン数（有効レーン数）を切り替えることは可能であるが、単一のレーンを状況に応じて送信レーンあるいは受信レーンに動的に切り替えて使用することはできない。
【０００９】
従って、上述の関連技術では、次のような問題点が生じる。例えば、ソフトウェア処理の過程で、送信及び受信のそれぞれで必要なデータ転送量に偏りが生じる場合を考える。この場合、一方のレーン（例えば送信レーン）がフルに使用されているにも拘わらず、他方のレーン（例えば受信レーン）が使用されずアイドル状態となる状況が発生し得る。つまり、空きレーンが存在するにも拘わらず、その空きレーンが有効に活用されないという状況が発生し得る。これは、通信効率の観点から無駄である。
【００１０】
本発明の１つの目的は、複数のレーンを用いるシリアルインタフェース回路及びシリアル通信システムにおいて、通信効率を向上させることができる技術を提供することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの観点において、シリアルインタフェース回路が提供される。そのシリアルインタフェース回路は、複数のレーンのそれぞれに接続される複数の双方向ＩＯ回路と、上位レイヤ処理部と複数の双方向ＩＯ回路との間に設けられる物理層処理回路と、複数の双方向ＩＯ回路及び物理層処理回路の動作を制御するレーン割当制御回路と、を備える。複数の双方向ＩＯ回路の各々は、送信レーンにデータを送信する送信ＩＯ回路、あるいは、受信レーンからデータを受信する受信ＩＯ回路のいずれとしても動作可能なように構成される。物理層処理回路は、上位レイヤ処理部から受け取る送信パケットを送信ＩＯ回路を介して送信レーンに送信し、且つ、受信レーンから受信ＩＯ回路を介して受け取る受信パケットを上位レイヤ処理部に出力するように、物理層処理を行う。複数のレーンの各々は、送信レーンあるいは受信レーンのいずれとしても使用可能である。複数のレーンのうち送信レーンに割り当てられるレーンの数は、送信レーン数であり、複数のレーンのうち受信レーンに割り当てられるレーンの数は、受信レーン数であり、送信レーン数及び受信レーン数は、可変である。レーン割当制御回路は、指定された送信レーン数及び受信レーン数での物理層処理が実現されるように、物理層処理回路及び複数の双方向ＩＯ回路を動的に制御する。
【００１２】
本発明の他の観点において、シリアル通信システムが提供される。そのシリアル通信システムは、第１通信装置と、複数のレーンを介して第１通信装置と接続された第２通信装置と、を備える。第１通信装置及び第２通信装置の各々は、複数のレーンのそれぞれに接続される複数の双方向ＩＯ回路と、上位レイヤ処理部と複数の双方向ＩＯ回路との間に設けられる物理層処理回路と、複数の双方向ＩＯ回路及び物理層処理回路の動作を制御するレーン割当制御回路と、を備える。複数の双方向ＩＯ回路の各々は、送信レーンにデータを送信する送信ＩＯ回路、あるいは、受信レーンからデータを受信する受信ＩＯ回路のいずれとしても動作可能なように構成される。物理層処理回路は、上位レイヤ処理部から受け取る送信パケットを送信ＩＯ回路を介して送信レーンに送信し、且つ、受信レーンから受信ＩＯ回路を介して受け取る受信パケットを上位レイヤ処理部に出力するように、物理層処理を行う。複数のレーンの各々は、送信レーンあるいは受信レーンのいずれとしても使用可能である。複数のレーンのうち送信レーンに割り当てられるレーンの数は、送信レーン数であり、複数のレーンのうち受信レーンに割り当てられるレーンの数は、受信レーン数であり、送信レーン数及び受信レーン数は、可変である。レーン割当制御回路は、指定された送信レーン数及び受信レーン数での物理層処理が実現されるように、物理層処理回路及び複数の双方向ＩＯ回路を制御する。
【発明の効果】
【００１３】
本発明によれば、複数のレーンを用いるシリアルインタフェース回路及びシリアル通信システムにおいて、通信効率を向上させることが可能となる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態に係るシリアル通信システムの構成を概略的に示すブロック図である。
【図２】図２は、本発明の実施の形態におけるレーン割り当ての切り替えを説明するための概念図である。
【図３】図３は、本発明の実施の形態におけるレーン割り当ての切り替えを説明するための概念図である。
【図４】図４は、本発明の実施の形態におけるレーン割り当ての切り替えを説明するための概念図である。
【図５】図５は、本発明の実施の形態に係るシリアルインタフェース回路の構成例を示すブロック図である。
【図６】図６は、本発明の実施の形態における物理層処理回路の構成例を示すブロック図である。
【図７】図７は、シンボルパタンを示す概念図である。
【図８】図８は、物理層処理回路におけるレーン−シンボルマッピング処理の一例を示す概念図である。
【図９】図９は、物理層処理回路におけるレーン−シンボルマッピング処理の他の例を示す概念図である。
【図１０】図１０は、本発明の実施の形態に係るシリアル通信システムの動作例を示すタイミングチャートである。
【発明を実施するための形態】
【００１５】
添付図面を参照して、本発明の実施の形態を説明する。
【００１６】
１．概要
図１は、本発明の実施の形態に係るシリアル通信システム１の構成を概略的に示すブロック図である。シリアル通信システム１は、第１通信装置１００Ａ（第１通信コンポーネント）と第２通信装置１００Ｂ（第２通信コンポーネント）を備えている。第１通信装置１００Ａと第２通信装置１００Ｂは、複数のレーンＬＮを介して互いに接続されており、互いにシリアルデータ伝送を行う。図１では、Ｎ本（Ｎは２以上の整数）のレーンＬＮ［０］〜ＬＮ［Ｎ−１］が示されている。尚、単一のレーンＬＮは、第１通信装置１００Ａと第２通信装置１００Ｂとの間を接続する一対（１ポート）のシリアルリンクと定義される。
【００１７】
図１に示されるように、各々の通信装置１００は、上位レイヤ処理部２００とシリアルインタフェース回路３００を備えている。
【００１８】
上位レイヤ処理部２００は、少なくとも、上位層のソフトウェア処理を行う。具体的には、上位レイヤ処理部２００は、アプリケーション部２１０とＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）部２２０を備えている。アプリケーション部２１０及びＯＳ部２２０は、演算処理装置がソフトウェアを実行することにより実現され、それぞれアプリケーション機能及びＯＳ機能を提供する。尚、上位レイヤ処理部２００は、更に、データリンク層の処理を行ってもよい。上位レイヤ処理部２００は、シリアルインタフェース回路３００に送信パケットを出力し、また、シリアルインタフェース回路３００から受信パケットを受け取る。
【００１９】
シリアルインタフェース回路３００は、ハードウェアにより実現され、少なくとも物理層の処理を行う。第１通信装置１００Ａと第２通信装置１００Ｂのそれぞれのシリアルインタフェース回路３００は、複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］に共通に接続されており、それら複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］を用いてデータ送受信を行う。ここで、データ送信に用いられるレーンＬＮは「送信レーン」と参照され、データ受信に用いられるレーンＬＮは「受信レーン」と参照される。物理層の処理において、シリアルインタフェース回路３００は、上位レイヤ処理部２００から受け取る送信パケットを送信レーンに送信し、また、受信レーンから受け取る受信パケットを上位レイヤ処理部２００に出力する。
【００２０】
本実施の形態によれば、各々のレーンＬＮは、送信レーンあるいは受信レーンのいずれか一方に固定されるわけではなく、送信レーンあるいは受信レーンのいずれとしても使用可能である。すなわち、単一のレーンＬＮを、状況に応じて、送信レーンあるいは受信レーンに動的に切り替えることが可能である。複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］をどのように送信レーンと受信レーンとに割り当てるかは、以下「レーン割り当て」と参照される。本実施の形態によれば、このレーン割り当てを動的に変更することが可能である。
【００２１】
より詳細には、本実施の形態では、送信レーン数（送信レーン幅）及び受信レーン数（受信レーン幅）が可変である。ここで、送信レーン数とは、複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］のうち送信レーンに割り当てられるレーンＬＮの数であり、受信レーン数とは、複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］のうち受信レーンに割り当てられるレーンＬＮの数である。これら送信レーン数及び受信レーン数を、状況に応じて動的に変更することができる。好適には、送信レーン数及び受信レーン数は、上位レイヤ処理部２００のソフトウェアによって決定され、指定される。例えば、アプリケーション部２１０が、アプリケーション特性に応じた最適な送信レーン数及び受信レーン数を決定し、それら送信レーン数及び受信レーン数をシリアルインタフェース回路３００に通知する。シリアルインタフェース回路３００は、指定された送信レーン数及び受信レーン数での物理層処理が実現されるように、レーン割り当て制御を行う。
【００２２】
図２〜図４を参照して、レーン割り当ての切り替えを説明する。ここでは、例として、８本のレーンＬＮ［０］〜ＬＮ［７］を考える。
【００２３】
図２で示される例では、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送量と、第２通信装置１００Ｂから第２通信装置１００Ａへのデータ転送量とが等しい。従って、４本のレーンＬＮ［０］〜ＬＮ［３］が、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送に割り当てられ、４本のレーンＬＮ［４］〜ＬＮ［７］が、第２通信装置１００Ｂから第１通信装置１００Ａへのデータ転送に割り当てられている。
【００２４】
図３で示される例では、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送量が、第２通信装置１００Ｂから第２通信装置１００Ａへのデータ転送量よりも多い。従って、７本のレーンＬＮ［０］〜ＬＮ［６］が、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送に割り当てられ、１本のレーンＬＮ［７］が、第２通信装置１００Ｂから第１通信装置１００Ａへのデータ転送に割り当てられている。
【００２５】
図４で示される例では、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送量が、第２通信装置１００Ｂから第２通信装置１００Ａへのデータ転送量よりも少ない。従って、２本のレーンＬＮ［０］〜ＬＮ［１］が、第１通信装置１００Ａから第２通信装置１００Ｂへのデータ転送に割り当てられ、６本のレーンＬＮ［２］〜ＬＮ［７］が、第２通信装置１００Ｂから第１通信装置１００Ａへのデータ転送に割り当てられている。
【００２６】
このように、本実施の形態によれば、単一のレーンＬＮを、状況に応じて、送信レーンあるいは受信レーンに動的に切り替えることが可能である。従って、有限本数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］であっても、送信レーン数と受信レーン数の比を状況に応じて最適化することによって、状況に応じた最適な通信効率及び通信スループットを実現することが可能となる。上述の関連技術の場合のような、空きレーンが存在するにも拘わらずその空きレーンが有効に活用されない、といった無駄が省かれる。本実施の形態によれば、複数のレーンを用いるシリアルインタフェースにおいて、通信効率、通信スループット、処理性能を向上させることが可能である。
【００２７】
２．構成
図５は、本実施の形態に係るシリアルインタフェース回路３００の構成例を示している。シリアルインタフェース回路３００は、複数の双方向ＩＯ回路３１０［０］〜３１０［Ｎ−１］、物理層処理回路３２０、及びレーン割当制御回路３３０を備えている。
【００２８】
複数の双方向ＩＯ回路３１０［０］〜３１０［Ｎ−１］は、それぞれ、複数のレーンＬＮ［０］〜ＬＮ［Ｎ−１］に接続される。各々の双方向ＩＯ回路３１０は、送信レーンにデータを送信する送信ＩＯ回路、あるいは、受信レーンからデータを受信する受信ＩＯ回路のいずれとしても動作可能なように構成されている。送信ＩＯ回路あるいは受信ＩＯ回路への切り替えを指示する信号が、切り替え信号ＳＷである。つまり、双方向ＩＯ回路３１０は、切り替え信号ＳＷを受け取り、その切り替え信号ＳＷによる指示に従って、送信ＩＯ回路あるいは受信ＩＯ回路として動作する。
【００２９】
より詳細には、図５に示されるように、双方向ＩＯ回路３１０は、送信バッファ３１１と受信バッファ３１２を備えている。送信バッファ３１１は、物理層処理回路３２０から受け取った送信データを、接続された一本のレーンＬＮ（送信レーン）に送出する。一方、受信バッファ３１２は、接続された一本のレーンＬＮ（受信レーン）から受け取った受信データを、物理層処理回路３２０に出力する。これら送信バッファ３１１及び受信バッファ３１２が、切り替え信号ＳＷに応じて活性化／非活性化される。具体的には、双方向ＩＯ回路３１０が送信ＩＯ回路として使用される場合、切り替え信号ＳＷによって、送信バッファ３１１が活性化され、受信バッファ３１２が非活性化される。また、双方向ＩＯ回路３１０が受信ＩＯ回路として使用される場合、切り替え信号ＳＷによって、送信バッファ３１１が非活性化され、受信バッファ３１２が活性化される。
【００３０】
物理層処理回路３２０は、物理層処理を行う回路であり、上位レイヤ処理部２００と複数の双方向ＩＯ回路３１０［０］〜３１０［Ｎ−１］との間に設けられている。物理層処理において、物理層処理回路３２０は、上位レイヤ処理部２００から受け取る送信パケットを送信ＩＯ回路を介して送信レーンに送信し、また、受信レーンから受信ＩＯ回路を介して受け取る受信パケットを上位レイヤ処理部２００に出力する。上述の通り、本実施の形態によれば、レーン割り当て（レーン・マッピング）は動的に変更可能である。そのレーン割り当てを指定する信号が、レーン割当制御信号ＣＯＮである。物理層処理回路３２０は、レーン割当制御信号ＣＯＮを受け取り、そのレーン割当制御信号ＣＯＮによる指示に従って、レーン割り当ての変更を行い、上記物理層処理を行う。
【００３１】
レーン割当制御回路３３０は、上述の双方向ＩＯ回路３１０及び物理層処理回路３２０の動作を制御することによって、所望のレーン割り当てを実現する。具体的には、所望のレーン割り当て（送信レーン数、受信レーン数）は、レーン割当変更要求ＲＥＱによって指定される。このレーン割当変更要求ＲＥＱは、上位レイヤ処理部２００に含まれるソフトウェアによって作成される特殊なパケットである。レーン割当制御回路３３０は、レーン割当変更要求ＲＥＱを受け取ると、そのレーン割当変更要求ＲＥＱによって指定されたレーン割り当てでの物理層処理が実現されるように、上述の切り替え信号ＳＷ及びレーン割当制御信号ＣＯＮを生成する。そして、レーン割当制御回路３３０は、それら切り替え信号ＳＷ及びレーン割当制御信号ＣＯＮを、それぞれ、双方向ＩＯ回路３１０及び物理層処理回路３２０に出力する。これにより、レーン割当変更要求ＲＥＱに応じて、双方向ＩＯ回路３１０及び物理層処理回路３２０を動的に制御することが可能である。
【００３２】
より詳細には、図５に示されるように、レーン割当制御回路３３０は、デコーダ３３１及び制御回路３３２を備えている。デコーダ３３１は、レーン割当変更要求ＲＥＱ（レーン割当変更コマンド）をデコードする。制御回路３３２は、レーン割当変更要求ＲＥＱのデコード結果に基づいて、切り替え信号ＳＷ及びレーン割当制御信号ＣＯＮを生成する。ここで、レーン割当制御信号ＣＯＮは、送信レーン数を示す情報、受信レーン数を示す情報、及び再リンク確立指示を含んでいる。
【００３３】
レーン割当制御回路３３０は、レーン割当制御信号ＣＯＮを物理層処理回路３２０に送出する。物理層処理回路３２０は、そのレーン割当制御信号ＣＯＮによって指定される送信レーン数及び受信レーン数での物理層処理が実現されるように、「レーン−シンボルマッピング処理」を行う。レーン−シンボルマッピング処理については後述する。また、物理層処理回路３２０は、再リンク確立指示に応答して、通信相手との間で物理層のリンクを新たに確立する「再リンク確立処理」を行う。更に、レーン割当制御回路３３０は、再リンク確立処理時に、切り替え信号ＳＷを各双方向ＩＯ回路３１０に送出する。各双方向ＩＯ回路３１０は、その切り替え信号ＳＷに従って、送信ＩＯ回路あるいは受信ＩＯ回路に設定される。このようにして、レーン割り当ての動的制御が可能となる。
【００３４】
尚、第１通信装置１００Ａと第２通信装置１００Ｂの一方においてレーン割当変更要求ＲＥＱが生成されると、そのレーン割当変更要求ＲＥＱが、第１通信装置１００Ａと第２通信装置１００Ｂの他方に転送される。例えば、第１通信装置１００Ａの上位レイヤ処理部２００に含まれるソフトウェアが、レーン割当変更要求ＲＥＱを生成した場合を考える。この場合、第１通信装置１００Ａの物理層処理回路３２０及びレーン割当制御回路３３０は、上位レイヤ処理部２００からレーン割当変更要求ＲＥＱを受け取る。第１通信装置１００Ａの物理層処理回路３２０は、受け取ったレーン割当変更要求ＲＥＱを、第２通信装置１００Ｂ（通信相手）に向けて送信する。第２通信装置１００Ｂにおいて、物理層処理回路３２０は、第１通信装置１００Ａから送信されたレーン割当変更要求ＲＥＱを受け取り、レーン割当制御回路３３０は、物理層処理回路３２０からそのレーン割当変更要求ＲＥＱを受け取る。第１通信装置１００Ａ及び第２通信装置１００Ｂのレーン割当制御回路３３０は、それぞれ受け取ったレーン割当変更要求ＲＥＱに基づいて、上述のレーン割当制御を行う。ここで、第１通信装置１００Ａに関する送信レーン数が第２通信装置１００Ｂに関する受信レーン数に一致し、且つ、第１通信装置１００Ａに関する受信レーン数が第２通信装置１００Ｂに関する送信レーン数に一致するように、レーン割当制御が行われる。
【００３５】
尚、第２通信装置１００Ｂは、第１通信装置１００Ａから受け取ったレーン割当変更要求ＲＥＱに応答する確認応答パケット（ＡＣＫパケット）を、第１通信装置１００Ａに返送する。好適には、第１通信装置１００Ａの物理層処理回路３２０は、そのＡＣＫパケットの受信に応答して、第２通信装置１００Ｂとの間の再リンク確立処理を開始し、それに追随して、第２通信装置１００Ｂの物理層処理回路３２０は、第１通信装置１００Ａとの間の再リンク確立処理を開始する。
【００３６】
図６は、本実施の形態における物理層処理回路３２０の構成例を示している。物理層処理回路３２０は、送信ＳｅｒＤｅｓ回路３２１、受信ＳｅｒＤｅｓ回路３２２及びトレーニング回路３２３を備えている。レーン割当制御回路３３０によって生成されるレーン割当制御信号ＣＯＮは、所望の送信レーン数を示す送信レーン数情報ＣＯＮ１、所望の受信レーン数を示す受信レーン数情報ＣＯＮ２、及び再リンク確立指示ＣＯＮ３を含んでいる。レーン割当制御回路３３０は、それら送信レーン数情報ＣＯＮ１、受信レーン数情報ＣＯＮ２及び再リンク確立指示ＣＯＮ３を、それぞれ、送信ＳｅｒＤｅｓ回路３２１、受信ＳｅｒＤｅｓ回路３２２及びトレーニング回路３２３に出力する。
【００３７】
送信ＳｅｒＤｅｓ回路３２１は、データリンク層から送信パケットを受け取り、その送信パケットのシンボルコードをパラレル−シリアル変換した後、それぞれのシンボルコードを送信ＩＯ回路３１０を通して対応する送信レーンに送出する。ここで、それぞれのシンボルコードと送信レーンとの間の対応関係（マッピング）は、可変である。送信ＳｅｒＤｅｓ回路３２１は、レーン割当制御回路３３０から送信レーン数情報ＣＯＮ１を受け取り、その送信レーン数情報ＣＯＮ１によって指定される送信レーン数が実現されるようにレーン−シンボルマッピング処理（Ｌａｎｅ−Ｓｙｍｂｏｌ  Ｍａｐｐｉｎｇ）を行う。
【００３８】
図７、図８及び図９を参照して、レーン−シンボルマッピング処理を説明する。図７は、伝送されるシンボルパタンを概念的に示している。シンボルとは、伝送データの最小単位であり、例えば１バイトのデータである。例として、８個のシンボルバイト（Ｓｙｍｂｏｌ  Ｂｙｔｅ０〜Ｓｙｍｂｏｌ  Ｂｙｔｅ７）からなるシンボルパタンの伝送を考える。図８は、４本のレーンＬａｎｅ０〜Ｌａｎｅ３が割り当てられた場合を示している。この場合、Ｓｙｍｂｏｌ  Ｂｙｔｅ０，Ｂｙｔｅ４がＬａｎｅ０にマッピングされ、Ｓｙｍｂｏｌ  Ｂｙｔｅ１，Ｂｙｔｅ５がＬａｎｅ１にマッピングされ、Ｓｙｍｂｏｌ  Ｂｙｔｅ２，Ｂｙｔｅ６がＬａｎｅ２にマッピングされ、Ｓｙｍｂｏｌ  Ｂｙｔｅ３，Ｂｙｔｅ７がＬａｎｅ３にマッピングされる。図９は、３本のレーンＬａｎｅ０〜Ｌａｎｅ２が割り当てられた場合を示している。この場合、Ｓｙｍｂｏｌ  Ｂｙｔｅ０，Ｂｙｔｅ３，Ｂｙｔｅ６がＬａｎｅ０にマッピングされ、Ｓｙｍｂｏｌ  Ｂｙｔｅ１，Ｂｙｔｅ４，Ｂｙｔｅ７がＬａｎｅ１にマッピングされ、Ｓｙｍｂｏｌ  Ｂｙｔｅ２，Ｂｙｔｅ５がＬａｎｅ２にマッピングされる。
【００３９】
受信ＳｅｒＤｅｓ回路３２２は、受信パケットのそれぞれのシンボルコードを、対応する受信レーンから受信ＩＯ回路３１０を通して受け取り、受け取ったシンボルコードをシリアル−パラレル変換した後、受信パケットをデータリンク層及びトレーニング回路３２３に送出する。ここで、それぞれのシンボルコードと受信レーンとの間の対応関係（マッピング）は、可変である。受信ＳｅｒＤｅｓ回路３２２は、レーン割当制御回路３３０から受信レーン数情報ＣＯＮ２を受け取り、その受信レーン数情報ＣＯＮ２によって指定される受信レーン数が実現されるようにレーン−シンボルマッピング処理を行う。そのレーン−シンボルマッピング処理は、上記と同様である。
【００４０】
トレーニング回路３２３は、レーン割当制御回路３３０から再リンク確立指示ＣＯＮ３を受け取ると、再リンク確立処理（リンクトレーニング）を実行する。具体的には、トレーニング回路３２３は、再リンク確立に必要なトレーニング用送信パケットを生成、送信し、また、通信相手からトレーニング用受信パケットを受け取る。これらトレーニング用送信パケット及びトレーニング用受信パケットに基いて、トレーニング回路３２３は同期制御を行い、リンクトレーニングを行う。
【００４１】
３．動作例
図１０は、本実施の形態に係るシリアル通信システム１の動作例を示すタイミングチャートである。本例では、第１通信装置１００Ａによってレーン割当変更要求ＲＥＱが生成されるとする。
【００４２】
まず、第１通信装置１００Ａから通常パケット（Ｎｏｒｍａｌ  Ｐａｃｋｅｔ）が２回出力される。その後に、特殊パケット（Ｓｐｅｃｉａｌ  Ｐａｃｋｅｔ）としてレーン割当変更要求ＲＥＱが生成、出力される。第２通信装置１００Ｂは、第１通信装置１００Ａから、２個の通常パケットを受信した後、レーン割当変更要求ＲＥＱを受信する。そして、第２通信装置１００Ｂは、受け取ったレーン割当変更要求ＲＥＱに応答する確認応答パケット（ＡＣＫパケット）を、第１通信装置１００Ａに返送する。第１通信装置１００Ａは、そのＡＣＫパケットの受信を契機として、再リンク確立処理を開始する。第１通信装置１００Ａでの再リンク確立処理の開始を受けて、リンクステータスが、リンク確立状態から未確立状態に変わる。従って、第２通信装置１００Ｂにおいても、再リンク確立処理が開始される。第１通信装置１００Ａと第２通信装置１００Ｂのそれぞれにおいて、レーン割当変更要求ＲＥＱに応じたレーン割り当ての変更が行われる。再リンク確立処理が完了すると、再び、通常パケットの送受信が開始される。
【００４３】
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
【符号の説明】
【００４４】
１    シリアル通信システム
１００    通信装置
１００Ａ  第１通信装置
１００Ｂ  第２通信装置
２００    上位レイヤ処理部
２１０    アプリケーション部
２２０    ＯＳ部
３００    シリアルインタフェース回路
３１０    双方向ＩＯ回路
３１１    送信バッファ
３１２    受信バッファ
３２０    物理層処理回路
３２１    送信ＳｅｒＤｅｓ回路
３２２    受信ＳｅｒＤｅｓ回路
３２３    トレーニング回路
３３０    レーン割当制御回路
３３１    デコーダ
３３２    制御回路
ＬＮ    レーン
ＳＷ    切り替え信号
ＲＥＱ    レーン割当変更要求
ＣＯＮ    レーン割当制御信号
【図１】
0005743186.tif 000002
【図２】
0005743186.tif 000003
【図３】
0005743186.tif 000004
【図４】
0005743186.tif 000005
【図５】
0005743186.tif 000006
【図６】
0005743186.tif 000007
【図７】
0005743186.tif 000008
【図８】
0005743186.tif 000009
【図９】
0005743186.tif 000010
【図１０】
0005743186.tif 000011