(57)【要約】【課題】  上位ノードから下位ノードへの中継伝送における遅延を低減すること。【解決手段】  複数のタイムスロットを含む通信フレームを用いて通信を行う通信装置は、通信フレームを第１の他の通信装置から受信し、複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、通信装置のデータの送信のために割り当てられた第１のタイムスロットの開始時点の通信フレームにおける符号化の状態について、その状態で符号化された場合のデータシンボルを出力し、通信フレームにおける第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを第２の他の通信装置へ送信する。【選択図】  図７
2014220577.tif 000002
【特許請求の範囲】
【請求項１】
複数のタイムスロットを含む通信フレームを用いて通信を行う通信装置であって、
前記通信フレームを第１の他の通信装置から受信する受信手段と、
複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記通信装置のデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力手段と、
前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを第２の他の通信装置へ送信する送信手段と、
を有することを特徴とする通信装置。
【請求項２】
前記出力手段は、前記複数の状態のそれぞれに応じて符号化されたデータシンボルを予め生成し、前記第１のタイムスロットの開始時点の符号化の状態に対応するデータシンボルを選択して出力する、
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記送信手段は、前記通信フレームの前記第１のタイムスロットのデータシンボルを、前記出力手段により出力されたデータシンボルに書き換え、前記通信フレームの前記第１のタイムスロットの後のタイムスロットのデータシンボルを、当該出力されたデータシンボルにおける符号化の状態に対応して符号化されたデータシンボルに書き換えて、書き換え後の通信フレームを送信する、
ことを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記送信手段は、前記通信フレームの前記第２のタイムスロットのデータシンボルを、当該第２のタイムスロットの開始時点における符号化の状態と前記所定の状態とに基づいて定まるデータシンボルに書き換えて、書き換え後の通信フレームを送信する、
ことを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記送信手段は、前記通信フレームの前記第１のタイムスロットのデータを前記出力手段により出力されたデータシンボルに書き換え、当該出力されたデータシンボルにおける符号化の状態に応じて、前記第１のタイムスロットの後のタイムスロットのデータシンボルを書き換えるかを決定する、
ことを特徴とする請求項１又は２に記載の通信装置。
【請求項６】
前記通信フレームにおいて、前記通信フレームが送信される方向において下流のノードが送信する第３のタイムスロットの後に、前記通信フレームが送信される方向において当該下流のノードより上流のノードが送信する第４のタイムスロットが配置される場合、前記第３のタイムスロットと前記第４のタイムスロットとの間に、前記第２のタイムスロットが配置される、
ことを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記通信フレームにおいて、前記通信フレームが送信される方向において下流のノードが送信する第３のタイムスロットの後に、前記通信フレームが送信される方向において当該下流のノードより上流のノードが送信する第４のタイムスロットが配置される場合、前記第３のタイムスロットと前記第４のタイムスロットとの間に、前記第２のタイムスロットを挿入する挿入手段をさらに有する、
ことを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項８】
前記挿入手段は、前記第３のタイムスロットの一部を前記第２のタイムスロットとして使用することにより、当該第２のタイムスロットを挿入する、
ことを特徴とする請求項７に記載の通信装置。
【請求項９】
複数のタイムスロットを含む通信フレームを用いて、前記複数のタイムスロットを複数のノードに割り当て、当該通信フレームが送信される方向において上流のノードから下流のノードへ送信することにより通信を行う通信システムであって、
前記複数のノードの少なくとも１つが、
前記通信フレームを上流のノードから受信する受信手段と、
複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記複数のノードの少なくとも１つのデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力手段と、
前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを下流のノードへ送信する送信手段と、
を有することを特徴とする通信システム。
【請求項１０】
複数のタイムスロットを含む通信フレームを用いて通信を行う通信装置の通信方法であって、
受信手段が、前記通信フレームを第１の他の通信装置から受信する受信工程と、
出力手段が、複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記通信装置のデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力工程と、
送信手段が、前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを第２の他の通信装置へ送信する送信工程と、
を有することを特徴とする通信方法。
【請求項１１】
複数のタイムスロットを含む通信フレームを用いて、前記複数のタイムスロットを複数のノードに割り当て、当該通信フレームが送信される方向において上流のノードから下流のノードへ送信することにより通信を行う通信システムの通信方法であって、
前記複数のノードの少なくとも１つにおいて、
受信手段が、前記通信フレームを上流のノードから受信する受信工程と、
出力手段が、複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記複数のノードの少なくとも１つのデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力工程と、
送信手段が、前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを下流のノードへ送信する送信工程と、
を有することを特徴とする通信方法。
【請求項１２】
複数のタイムスロットを含む通信フレームを用いて通信を行う通信装置が有するコンピュータに、
前記通信フレームを第１の他の通信装置から受信する受信工程と、
複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記通信装置のデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力工程と、
前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを第２の他の通信装置へ送信する送信工程と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は時分割通信に関する。
【背景技術】
【０００２】
近年、機器の高性能化・高機能化に伴い、機器内部の制御信号線数が増大してきている。これに伴い、制御信号線を省配線化するための通信が採用されることが多くなりつつある。このような機器内部の制御信号を少ない配線でやり取りするための通信は、制御に影響を与えないよう低遅延であることが要求される。また、省配線化のため、クロック信号とデータ信号を別線で伝送することなく、クロック信号とデータ信号を同一の信号線で伝送することが考えられる。さらに、通信信号の品質を考慮すると、通信ノード間の接続をデイジーチェーン接続とし、通信ノード毎に電気信号を終端処理することが考えられる。各通信ノードをデイジーチェーン接続する場合には、各ノードは、上位ノードから受信した信号に対して、必要に応じて自ノードの送信データを書き込んで下位ノードに送信する中継伝送方式を採用することが一般的である。
【０００３】
データ信号にクロック信号を埋め込む符号化技術として、８Ｂ１０Ｂ符号化が広く用いられている。８Ｂ１０Ｂ符号化は、規定の変換表に従い、８ビットの入力シンボルを、高いデータ遷移密度が確保された１０ビットの出力シンボルに変換するものである。また、この８Ｂ１０Ｂ符号化では、ランニングディスパリティ（Ｒｕｎｎｉｎｇ  Ｄｉｓｐａｒｉｔｙ：ＲＤ）値に基づいた制御により、出力シンボル列のＤＣバランスが維持される。すなわち、この制御により、出力シンボル列（ビット列）に現れる「０」の数と「１」の数とが一致又はほぼ一致する。
【０００４】
ここで、ディスパリティとは「１」の個数と「０」の個数の差分値であり、ＲＤ値とは出力シンボル列（ビット列）に現れる「１」の数と「０」の数の累計差分値である。入力シンボルに対応する出力シンボルは、「ＲＤ−」と「ＲＤ＋」の２つの状態のそれぞれに対して個別に規定される。ここで、状態ＲＤ−に対する出力シンボル列は、「１」の個数が「０」の個数と等しい（中立のディスパリティを持つ）か、または「１」の個数が「０」の個数より多い（正のディスパリティを持つ）シンボル列である。一方、状態ＲＤ＋に対する出力シンボル列は、中立のディスパリティを持つか、または「１」の個数が「０」の個数より少ない（負のディスパリティを持つ）シンボル列である。そして、例えば、状態ＲＤ−において正のディスパリティを有するシンボル列を出力した場合は、次の出力シンボル列を状態ＲＤ＋に対するものとすることにより、少なくとも次の出力シンボル列では正のディスパリティが生じないようにする。同様に、状態ＲＤ＋において負のディスパリティを有するシンボル列を出力した場合は、次の出力シンボル列を状態ＲＤ−に対するものとすることにより、少なくとも次の出力シンボル列では負のディスパリティが生じないようにする。このように、直前までのＲＤ値に応じて、出力シンボルをＲＤ−に対応するものとするかＲＤ＋に対応するものとするかを選択する符号化規則を用いることで、出力シンボル列の「０」と「１」の数が等しく、又はほぼ等しくなるように制御することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００１−５２３８６２号公報
【特許文献２】特開２００７−１１０４５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１には、ノードが、この８Ｂ１０Ｂ符号化された信号を上位ノードから受信し、自ノードの送信データを書き込んで下位ノードに送信する技術が記載されている。しかしながら、特許文献１に記載の方法では、上位ノードから受信する８Ｂ１０Ｂ符号化された信号を１０Ｂ８Ｂ変換した後に、自ノードの送信データを書き込み、それを８Ｂ１０Ｂ変換して下位ノードへ送信する。この場合、上位ノードから下位ノードへの中継毎に１０Ｂ８Ｂ変換処理と８Ｂ１０Ｂ変換処理とによる遅延が累積されるため、中継伝送の遅延が増大してしまうという課題があった。
【０００７】
本発明は、上述の課題に鑑みてなされたものであり、上位ノードから下位ノードへの中継伝送における遅延を低減することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明による通信装置は、複数のタイムスロットを含む通信フレームを用いて通信を行う通信装置であって、前記通信フレームを第１の他の通信装置から受信する受信手段と、複数の符号化の状態に対して、状態ごとに、異なるデータシンボルにデータを符号化する符号化方法に基づいて、前記通信装置のデータの送信のために割り当てられた第１のタイムスロットの開始時点の前記通信フレームにおける符号化の状態について、当該状態で符号化された場合のデータシンボルを出力する出力手段と、前記通信フレームにおける前記第１のタイムスロットから、符号化の状態を所定の状態とするために割り当てられた第２のタイムスロットまでのデータシンボルの少なくとも一部を、出力されたデータシンボルを含むシンボル列に書き換えて、書き換え後の通信フレームを第２の他の通信装置へ送信する送信手段と、を有する。
【発明の効果】
【０００９】
本発明によれば、上位ノードから下位ノードへの中継伝送における遅延を低減することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】通信システムの構成例を示すブロック図。
【図２】通信フレームと第１のスロット割り当ての例を示す図。
【図３】第１のスロット割り当ての例におけるノード間の信号を示す図。
【図４】マスタノードの構成例を示すブロック図。
【図５】送信シンボル生成部の構成例を示すブロック図。
【図６】マスタノードの動作例を示すフローチャート。
【図７】スレーブノードの構成例を示すブロック図。
【図８】書き込みシンボル生成部の構成例を示すブロック図。
【図９】スレーブノードの動作例を示すフローチャート。
【図１０】通信フレームと第２のスロット割り当ての例を示す図。
【図１１】第２のスロット割り当ての例におけるノード間の信号を示す図。
【図１２】実施形態２における通信フレームとスロット割り当ての例を示す図。
【図１３】実施形態２におけるマスタノードの構成例を示すブロック図。
【図１４】実施形態２におけるスレーブノードの構成例を示すブロック図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【００１２】
＜＜実施形態１＞＞
（システム構成）
図１は、本実施形態で説明する通信システムの構成例を示すブロック図である。本通信システムは、マスタノード１０１と、複数のスレーブノード１０２〜１０４と、それらを接続する信号線１１１〜１１４とを含む。マスタノード１０１及びスレーブノード１０２〜１０４は、複数のタイムスロットを含む通信フレームを用いて互いに通信する通信装置である。また、スレーブノード１０２〜１０４のそれぞれには、モータ１０５〜１０７とセンサ１０８〜１１０とが接続されている。本通信システムにおいては、マスタノード１０１は、例えば、スレーブノード１０２〜１０４にモータ制御情報を送信する。そして、スレーブノード１０２〜１０４は、受信したモータ制御情報に基づいてモータ１０５〜１０７を制御するとともに、センサ１０８〜１１０からフィードバック情報を取得して、そのフィードバック情報をマスタノード１０１に送信する。マスタノード１０１は、スレーブノード１０２〜１０４から受信したフィードバック情報に基づいて、次に送信するモータ制御情報を生成する。これらの動作により、モータ１０５〜１０７のフィードバック制御がなされる。なお、本実施形態では、スレーブノードの台数を３として説明するが、これに限定されるものでなく、スレーブノードの台数は任意に増減されてもよい。
【００１３】
この通信システムにおいて、ノードが、８Ｂ１０Ｂ符号化された信号を上位ノードから受信し、自ノードの送信データを書き込んで下位ノードに送信することを考える。ここで、以下の説明では、８Ｂ１０Ｂ符号化した場合について説明するが、複数の状態間で状態遷移しながら、状態ごとにデータを異なる符号語に符号化する符号化方法であれば、どのようなものが用いられてもよい。すなわち、状態に応じて、同じデータを符号化しても異なるデータシンボルが生成されうると共に、同じデータシンボルを復号しても別のデータが取得されうる、符号化方法及び復号化方法であれば、８Ｂ１０Ｂ符号化でなくとも、以下の議論を適用できる。
【００１４】
なお、以下では、「上位ノード」とは、マスタノード１０１を起点として信号の流れる方向において上流に存在するノードであり、例えば、スレーブノード１０３の上位ノードは、マスタノード１０１及びスレーブノード１０２である。同様に、「下位ノード」とは、マスタノード１０１を起点として信号の流れる方向において、下流に存在するノードであり、例えば、スレーブノード１０３の下位ノードはスレーブノード１０４である。
【００１５】
このとき、特許文献１に記載の技術では、上述の通り、上位ノードから受信したデータを１０Ｂ８Ｂ変換して、自ノードの送信データを書き込んで８Ｂ１０Ｂ符号化を行って、その符号化されたデータを下位ノードへ送信するため、遅延が増大する。これに対して、上位ノードから受信する８Ｂ１０Ｂ符号化された信号に対して、送信データを８Ｂ１０Ｂ符号化したシンボル（１０ビットのビット列）を直接書き込むことにより、低遅延化を図ることができる。
【００１６】
しかしながら、この場合、任意の送信データを書き込むと、８Ｂ１０Ｂ符号化の符号化規則に違反する場合が生じてしまう。すなわち、例えば、任意の送信データを書き込むことにより、その送信データの前後のＲＤ値との整合性がとれなくなる場合がある。特許文献２には、８Ｂ１０Ｂ符号化された信号に対して、符号化規則に違反することなく、例えばＲＤ値を反転させない特定の出力シンボルを追加・削除する技術が記載されている。しかしながら、特許文献２の技術は、８Ｂ１０Ｂ符号化された受信信号に対して、ＲＤ値の変動の仕方が分かっている特定のシンボルを追加・削除するのであって、ＲＤ値が任意に変動しうる任意の送信データを書き込むことについては想定されていない。
【００１７】
これに対して、本実施形態では、以下に詳述する方法により、スレーブノードが、上位ノードから受信する符号化された信号に対して、符号化規則に違反することなく、任意の送信データを符号化したシンボルを直接書き込むことを可能とする。この結果、中継伝送の遅延を低減することができ、システムの制御に対する遅延の影響を低くすることができるようになる。以下、具体的な処理について説明する。
【００１８】
（通信フレームとスロット割り当て）
図２は、マスタノード１０１とスレーブノード１０２〜１０４との間で送受信される通信フレームとタイムスロットの割り当ての例を説明する図である。通信フレームは、複数のタイムスロットに時分割され、それぞれのタイムスロットは、例えば、同期スロットとデータ伝送スロットとＲＤ調整スロットとのいずれかに割り当てられる。各タイムスロットは、８Ｂ１０Ｂ符号のシンボル長の任意の整数倍の長さを有する。各タイムスロットの長さは固定長としてもよいし、タイムスロット毎に異なる長さとしてもよい。ここで、同期スロットとデータ伝送スロットは、その用途と送受信ノードが定められるタイムスロットであり、ＲＤ調整スロットは、その用途のみが定められ、送受信ノードは定められないタイムスロットである。
【００１９】
図２において、フレームの先頭には、同期スロットが割り当てられる。同期スロットでは、送信ノードとしてマスタノード１０１、受信ノードとして全ノードが割り当てられる。同期スロットでは、マスタノード１０１が同期シンボルを送信し、各ノードはこの同期シンボルを検出することでフレーム同期とシンボル同期といった同期処理を行う。同期シンボルとして、例えば８Ｂ１０Ｂ符号のＫコードが用いられる。本実施形態では、同期シンボルに中立のディスパリティを持つＫコードを用いるものとする。
【００２０】
同期スロット以降、いずれかのノードが送信ノード又は受信ノードとして割り当てられたデータ伝送スロット＃１〜＃６が配置されている。図２の例では、データ伝送スロット＃１〜＃３は、マスタノード１０１が、スレーブノード１０２〜１０４にモータ制御情報を送信するために割り当てられている。また、データ伝送スロット＃４〜＃６は、スレーブノード１０２〜１０４が、マスタノード１０１にフィードバック情報を送信するために割り当てられている。
【００２１】
また、図２において、データ伝送スロット＃６の後に、ＲＤ調整スロットが配置されている。ＲＤ調整スロットでは、ＲＤ調整シンボルが送信される。ＲＤ調整シンボルの詳細については後述するが、本実施形態では、ＲＤ調整シンボルは、次のシンボルをＲＤ−とするためのシンボルである。すなわち、ＲＤ調整スロットの次のタイムスロットの開始シンボルは必ずＲＤ−となる。ただし、次のタイムスロットの開始シンボルがＲＤ＋である場合は、ＲＤ調整シンボルは次のシンボルをＲＤ＋とするためのシンボルとなる。
【００２２】
本実施形態では、マスタノード１０１を最上位ノード、スレーブノード１０４を最下位ノードとし、隣り合うタイムスロットに割り当てられた送信ノードが下位ノードから上位ノードに切り替わる場合、そのタイムスロットの間にＲＤ調整スロットを配置する。図２の例では、データ伝送スロット＃６の送信ノードがスレーブノード１０４であり、隣り合うタイムスロットとなる次のフレームの同期スロットの送信ノードがマスタノード１０１である。したがって、送信ノードが下位側ノードから上位側ノードに切り替わるデータ伝送スロット＃６と同期スロットの間にＲＤ調整スロットを配置する。
【００２３】
本実施形態によれば、スレーブノード１０２〜１０４は、上位ノードから受信する８Ｂ１０Ｂ符号化された通信フレームに対して、自ノードの送信に割り当てられたタイムスロットからＲＤ調整スロットまでのタイムスロットに対する書き込み処理を行う。そして、スレーブノード１０２〜１０４は、その書き込み処理後の通信フレームを下位ノードに送信する。
【００２４】
より具体的には、スレーブノード１０２〜１０４は、通信フレームの先頭から自ノードの送信に割り当てられたタイムスロットの前のタイムスロットまでの信号に対しては書き込み処理を行わずに、受信した信号をそのまま送信する。自ノードの送信に割り当てられたタイムスロットに対しては、スレーブノード１０２〜１０４は、送信データに対してＲＤ−で符号化を開始した場合とＲＤ＋で符号化を開始した場合のそれぞれのデータシンボルを用意しておく。そして、スレーブノード１０２〜１０４は、自ノードの送信に割り当てられたタイムスロットに、直前までのＲＤ値に応じて用意したデータシンボルのいずれか一方を書き込み、データシンボルを書き込んだ信号を下位ノードへ送信する。すなわち、スレーブノード１０２〜１０４は、予め複数の状態のそれぞれに対して用意しておいたデータシンボルから、自ノードの送信に割り当てられたタイムスロットの開始時点における８Ｂ１０Ｂ符号化の状態（ＲＤ値）に対応するデータシンボルを選択する。そして、スレーブノード１０２〜１０４は、自ノードの送信に割り当てられたタイムスロットの次のタイムスロットからＲＤ調整スロットまでのデータ伝送スロットに対して、符号化規則に基づいて生成するアイドルシンボルを書き込み、下位ノードへ送信する。そして、スレーブノード１０２〜１０４は、ＲＤ調整スロットではＲＤ調整シンボルを書き込み、下位ノードに送信する。この動作により、上位ノードから受信する８Ｂ１０Ｂ符号化された通信フレームに対して、符号化規則に違反することなく、送信データを符号化したシンボルを含むシンボル列を直接書き込みながら、下位ノードに中継伝送処理することが可能となる。すなわち、中継伝送処理に際して、１０Ｂ８Ｂ変換処理を行うことがないため、低遅延の中継伝送が可能となる。
【００２５】
図３は、図２に示す第１のスロット割り当ての例において、図１の信号線１１１〜１１４上を通信フレームが流れる様子を示す図である。図３において、斜線で塗られたタイムスロットは各信号線に接続された上位側ノード（例えば、信号線１１１の場合、マスタノード１０１）が書き込みを行うタイムスロットである。信号線１１１〜１１４を流れる通信信号は、上流側の信号線を流れる通信信号に対してΔＴｎだけ遅れている。ΔＴｎは、各ノードの中継処理遅延と通信信号の伝搬遅延により発生する遅延である。
【００２６】
まず、信号線１１１上を流れる通信フレームの図を参照して、マスタノード１０１の動作を説明する。
【００２７】
マスタノード１０１は、全タイムスロットに対して、符号化規則に基づいて書き込みを行い、スレーブノード１０２に送信する。本実施形態では、ＲＤ調整スロットで送信されるＲＤ調整シンボルは、次のシンボルを所定の状態、すなわち、ＲＤ−とするためのシンボルである。このため、本実施形態では、ＲＤ調整スロットの直後のタイムスロットを送信ノードとして割り当てられたノードは、割り当てられたタイムスロットの最初のシンボルをＲＤ−として送信することとなる。
【００２８】
したがって、マスタノード１０１は、ＲＤ調整スロットの直後のタイムスロットである同期スロットの最初のシンボルでは、ＲＤ−の同期シンボルを送信する。なお、同期シンボルは中立のディスパリティを持つため、マスタノード１０１は、同期スロットではＲＤ−の同期シンボルのみを送信することとなる。
【００２９】
同期スロットに続くデータ伝送スロット＃１〜＃３では、スレーブノード１０２〜１０４宛ての送信データを８Ｂ１０Ｂ変換したデータシンボルを書き込んで送信する。同期スロットで送信される同期シンボルはＲＤ−で中立のディスパリティを持つため、データ伝送スロット＃１の最初のシンボルはＲＤ−のデータシンボルとなる。そして、以後のデータシンボルは、送信データに応じてＲＤ−とＲＤ＋のいずれかのデータシンボルとなる。
【００３０】
マスタノード１０１は、データ伝送スロット＃４〜＃６では、アイドルシンボルを書き込み、送信する。アイドルシンボルは、自ノードが送信ノードとして割り当てられていないデータ伝送スロットで送信するシンボルである。アイドルシンボルとしては、８Ｂ１０Ｂ符号の任意のＫコードまたはＤコードを用いる。ただし、８Ｂ１０Ｂ符号化規則に違反しないように、データ伝送スロット＃４の直前までの、すなわちスロットの開始時点のＲＤ値に応じて、ＲＤ−のアイドルシンボル（アイドル−）とＲＤ＋のアイドルシンボル（アイドル＋）のいずれかを選択して送信する。より詳細には、データ伝送スロット＃４の開始時点のＲＤ値が−の場合には、マスタノード１０１は、アイドル−を選択して送信する。また、データ伝送スロット＃４の開始時点のＲＤ値が＋の場合には、マスタノード１０１は、アイドル＋を選択して送信する。
【００３１】
マスタノード１０１は、ＲＤ調整スロットで、ＲＤ調整シンボルを書き込み、送信する。本実施形態では、ＲＤ調整スロットの直後のシンボルは、ＲＤ−のシンボルとなるため、その前後で８Ｂ１０Ｂ符号化規則の違反が生じないＲＤ調整シンボルを選択して送信する。具体的には、ＲＤ調整シンボルとして、ＲＤ−において中立のディスパリティを持つシンボル（調整−）と、ＲＤ＋において負のディスパリティを持つシンボル（調整＋）の２つのシンボルを用いる。いずれのシンボルを用いた場合でも、直後のシンボルをＲＤ−にすることにより、８Ｂ１０Ｂ符号化規則の違反が生じることはなくなる。ＲＤ調整スロットでは、直前まで、すなわち、ＲＤ調整スロットの開始時点のＲＤ値に応じて、いずれかのシンボルを選択して送信する。なお、ＲＤ調整シンボルとしては、上記のような条件を満たす限り、ＫコードとＤコードのいずれのシンボルを使用してもよい。
【００３２】
以上の動作により、信号線１１１上を流れる通信フレームは、符号化規則に則ったものとなる。したがって、下位ノードとなるスレーブノード１０２でクロック信号の抽出が容易であり、かつＤＣバランスが保たれるため高い信号品質でデータ伝送を行うことが可能となる。
【００３３】
続いて、信号線１１２上を流れる通信フレームの図を参照して、スレーブノード１０２の動作を説明する。
【００３４】
スレーブノード１０２は、通信フレームの先頭から自ノードの送信に割り当てられたタイムスロットの前のタイムスロットについては書き込み処理を行わない。すなわち、スレーブノード１０２は、同期スロットからデータ伝送スロット＃３までのタイムスロットでは、書き込み処理は行わず、マスタノード１０１から受信した信号をそのままスレーブノード１０３に送信する。そして、自ノードが受信ノードとして割り当てられているデータ伝送スロット＃１でマスタノード１０１からのモータ制御情報を受信する。
【００３５】
そして、スレーブノード１０２は、自ノードが送信ノードとして割り当てられているデータ伝送スロット＃４からＲＤ調整スロットまでのタイムスロットにおいて書き込み処理を行って、書き込み処理後の信号をスレーブノード１０３に送信する。具体的には、まず、スレーブノード１０２は、データ伝送スロット＃４において、マスタノード１０１宛ての送信データを８Ｂ１０Ｂ変換したデータシンボルを書き込み、スレーブノード１０３に送信する。ここで、スレーブノード１０２は、予め、データシンボルとして、データ伝送スロット＃４の直前まで、すなわち、データ伝送スロット＃４の開始時点のＲＤ値がＲＤ−である場合のデータシンボルと、ＲＤ＋である場合のデータシンボルの２つを生成しておく。そして、データ伝送スロット＃４の直前までのＲＤ値に応じて、いずれか一方を選択してデータ伝送スロット＃４で書き込むよう動作する。この動作により、書き込みを行うタイムスロットとその直前のタイムスロットとの間で符号化規則の違反が生じることなく、書き込み処理が開始される。
【００３６】
スレーブノード１０２は、続いて、データ伝送スロット＃５及び＃６において、アイドルシンボルを書き込み、スレーブノード１０３に送信する。ここで、アイドルシンボルは、マスタノード１０１の動作で説明したものと同様である。すなわち、スレーブノード１０２は、データ伝送スロット＃５の直前まで、すなわち、データ伝送スロット＃４の開始時点のＲＤ値に応じて、アイドル−とアイドル＋のいずれかを選択してデータ伝送スロット＃５及び＃６において書き込み処理を行う。そして、スレーブノード１０２は、処理後の信号をスレーブノード１０３に送信する。
【００３７】
スレーブノード１０２は、最後に、ＲＤ調整スロットにおいて、ＲＤ調整シンボルの書き込み処理を実行し、処理後の信号をスレーブノード１０３に送信する。ＲＤ調整シンボルも、マスタノード１０１の動作で説明したものと同様である。すなわち、スレーブノード１０２は、直前のＲＤ値に応じて、調整−と調整＋のいずれかを選択してＲＤ調整スロットにおいて書き込み処理を実行する。その後、ＲＤ調整スロットでの送信処理が終わると、スレーブノード１０２は、次フレームの同期スロットでの送信処理を開始し、マスタノードから受信するＲＤ−の同期シンボルをスレーブノード１０３に送信することとなる。ここで、ＲＤ調整シンボルは次シンボルをＲＤ−とするシンボルであるため、ＲＤ調整スロットと同期スロットとの間で符号化規則の違反が生じることはない。したがって、この動作により、書き込みを行うタイムスロットとその直後のタイムスロットとの間で符号化規則の違反が生じることなく、書き込み処理が終了される。
【００３８】
なお、上述の説明では、データ伝送スロット＃５及び＃６及びＲＤ調整スロットについて、それぞれアイドルシンボル及びＲＤ調整シンボルを書き込むとしたが、これらについては、ＲＤ値の不整合が起こらない場合は書き換えを行わなくてもよい。すなわち、データ転送スロット＃４におけるデータシンボルの書き込みによってもＲＤ値の不整合が起こるか否かによって、スレーブノード１０２は、他のタイムスロットのデータを書き換えるかを決定してもよい。具体的には、スレーブノード１０２は、予め用意したＲＤ−及びＲＤ＋で符号化を開始したデータシンボルについて、その最後におけるＲＤ値を予め記憶しておく。そして、スレーブノード１０２は、データ伝送スロット＃４の開始時点のＲＤ値に応じたデータシンボルでデータ伝送スロット＃４の内容を書き換えながら、書き換え前のデータ伝送スロット＃４の内容を読み込み、そのスロットの最後におけるＲＤ値を特定する。スレーブノード１０２は、書き換え後のデータシンボルを使用した場合の最後におけるＲＤ値（記憶しておいたＲＤ値）と、受信した通信フレームから特定したＲＤ値とを比較する。そして、スレーブノード１０２は、比較の結果、特定したＲＤ値と記憶していたＲＤ値とが同じであれば、以後のスロットの内容を書き換えない。したがって、スレーブノード１０２〜１０４は、受信した通信フレーム中、自ノードの送信に割り当てられたタイムスロットからＲＤ調整スロットまでのタイムスロットの少なくとも一部を、符号化された送信データを含むシンボル列で書き換えることとなる。
【００３９】
以上の動作により、信号線１１２上を流れる通信フレームは、符号化規則の違反が生じることなく、かつスレーブノード１０２の送信データを符号化したデータシンボルがデータ伝送スロット＃４で書き込まれたものとなる。そして、この書き込み動作は、１０Ｂ８Ｂ変換処理を行うことなく、マスタノード１０１から受信する８Ｂ１０Ｂ符号列に対して、データシンボルを直接書き込むものであるため、低遅延での中継伝送が可能となる。なお、スレーブノード１０３、１０４の動作は、スレーブノード１０２と同様であるため、その説明を省略する。
【００４０】
（マスタノードの構成）
図４に、上述の動作を行うマスタノード１０１の構成例を示す。マスタノード１０１は、例えば、スロット割り当て記憶部４０１、送受信制御部４０２、送受信データ処理部４０３、送信シンボル生成部４０４、ＣＤＲ部４０５、同期部４０６、及び１０Ｂ８Ｂ変換部４０７を有する。
【００４１】
スロット割り当て記憶部４０１は、上述のスロット割り当て情報を記憶する。このスロット割り当て情報は、システム設計者により設定されてもよいし、マスタノード１０１が所定の方法でスレーブノード１０２〜１０４からスロット割り当て要求を受信し、それに応じて生成してもよい。送受信制御部４０２は、スロット割り当て記憶部４０１の出力するスロット割り当て情報に基づいて各部の動作を制御する。送受信データ処理部４０３は、スレーブノード１０２〜１０４から受信するフィードバック情報に基づき、モータ制御情報を生成する。
【００４２】
送信シンボル生成部４０４は、送受信制御部４０２の制御に基づいて、上述の通信フレームを生成する。図５に、送信シンボル生成部４０４の詳細な構成例を示す。送信シンボル生成部４０４は、例えば、８Ｂ１０Ｂ変換部５０１、同期シンボル生成部５０２、アイドルシンボル生成部５０３、ＲＤ調整シンボル生成部５０４、ＲＤ制御部５０５及び出力シンボル選択部５０６を有する。
【００４３】
８Ｂ１０Ｂ変換部５０１は、送受信データ処理部４０３の出力するモータ制御情報を、ＲＤ制御部５０５の制御に基づいて、８Ｂ１０Ｂ変換してＲＤ−とＲＤ＋のいずれかの状態に対応するデータシンボルを生成する。そして、生成したシンボルのディスパリティ情報をＲＤ制御部５０５に出力する。
【００４４】
同期シンボル生成部５０２は、ＲＤ制御部５０５の制御に基づき、ＲＤ−とＲＤ＋のいずれかの同期シンボルを生成し、生成した同期シンボルのディスパリティ情報をＲＤ制御部５０５に出力する。本実施形態では、ＲＤ調整スロットの直後に同期スロットが配置されており、かつ同期シンボルのディスパリティが中立であるため、同期スロットではＲＤ−の同期シンボルが生成される。本実施形態のように、同期シンボルの直前のシンボルにおいて、すなわち同期スロットの開始時点での状態がＲＤ−となっていることが明らかである場合は、同期シンボル生成部５０２は、ＲＤ制御部５０５の制御を受けずに独立して動作してもよい。
【００４５】
アイドルシンボル生成部５０３は、ＲＤ制御部５０５の制御に基づき、ＲＤ−とＲＤ＋のいずれかのアイドルシンボルを生成し、生成したアイドルシンボルのディスパリティ情報をＲＤ制御部５０５に出力する。本実施形態では、データ伝送スロット＃３終了時のＲＤ値に応じたアイドルシンボルが生成される。ＲＤ調整シンボル生成部５０４は、ＲＤ制御部５０５の制御に基づいたＲＤ調整シンボルを生成し、生成したＲＤ調整シンボルのディスパリティ情報をＲＤ制御部５０５に出力する。本実施形態では、データ伝送スロット＃６終了時のＲＤ値に応じたＲＤ調整シンボルが生成される。
【００４６】
ＲＤ制御部５０５は、８Ｂ１０Ｂ変換部５０１と同期シンボル生成部５０２とアイドルシンボル生成部５０３とＲＤ調整シンボル生成部５０４の出力するディスパリティ情報に基づきＲＤ値を求め、各部のＲＤ制御を行う。出力シンボル選択部５０６は、送受信制御部４０２の制御に基づいて、データシンボル、同期シンボル、アイドルシンボル及びＲＤ調整シンボルから、いずれか一つを選択して出力する。
【００４７】
図４に戻り、送信シンボル生成部４０４から出力されるシンボルは、スレーブノード１０２に送信される。
【００４８】
ＣＤＲ部４０５は、スレーブノード１０４から受信される信号からクロック信号を再生し、再生したクロック信号に基づいてデータ信号を出力する。なお、ＣＤＲとは、Ｃｌｏｃｋ  Ｄａｔａ  Ｒｅｃｏｖｅｒｙのことである。同期部４０６は、受信信号内の同期シンボルを検出する。同期シンボルの検出タイミングは送受信制御部４０２に出力され、送受信制御部４０２は、検出結果に基づいて各部の制御タイミングを決定する。１０Ｂ８Ｂ変換部４０７は、送受信制御部４０２の制御に基づいて動作し、マスタノード１０１が受信ノードとして割り当てられたタイムスロットで受信した１０ビットのビット列を１０Ｂ８Ｂ変換処理する。そして、１０Ｂ８Ｂ変換部４０７は、スレーブノード１０２〜１０４から送信されるフィードバック情報を送受信データ処理部に出力する。
【００４９】
（マスタノードの動作）
続いて、マスタノード１０１の動作について説明する。図６は、マスタノード１０１の送信処理の動作の流れを示すフローチャートである。
【００５０】
マスタノード１０１は、通信フレームが開始すると、ＲＤ制御部５０５の初期状態をＲＤ−に設定し（Ｓ６０１）、同期スロットに同期シンボルを書き込み、スレーブノード１０２に送信する（Ｓ６０２）。このとき、ＲＤ値が、送信されたシンボルに基づいて更新される（Ｓ６０３）。ここで、通信フレームが終了する場合（Ｓ６０４でＹＥＳ）、この通信フレームでの送信処理は終了する。通信フレームが終了しない場合（Ｓ６０４でＮＯ）、処理はＳ６０５に進む。
【００５１】
Ｓ６０５において、現在のタイムスロットが自ノードの送信に割り当てられたタイムスロットであるかを判定する。マスタノード１０１は、現在のタイムスロットが自ノードの送信に割り当てられたタイムスロットであると判定した場合（Ｓ６０５でＹＥＳ）、直前のＲＤ値に基づき送信データを８Ｂ１０Ｂ変換し、データシンボルを生成する。そして、マスタノード１０１は、生成したデータシンボルを送信割当スロットに書き込んでスレーブノード１０２に送信し、処理をＳ６０３へ戻す。
【００５２】
一方、マスタノード１０１は、現在のタイムスロットが自ノードの送信に割り当てられたタイムスロットでないと判定した場合（Ｓ６０５でＮＯ）、続いて、現在のタイムスロットがＲＤ調整スロットであるかを判定する（Ｓ６０７）。そして、現在のタイムスロットがＲＤ調整スロットである場合、マスタノード１０１は、直前のＲＤ値に基づきＲＤ調整シンボルを生成し、生成したＲＤ調整シンボルをＲＤ調整スロットに書き込んでスレーブノード１０２に送信する（Ｓ６０８）。その後、処理はＳ６０３に戻る。
【００５３】
Ｓ６０７において、現在のタイムスロットがＲＤ調整スロットでない場合、すなわち現在のタイムスロットが下位側ノードの送信に割り当てられたタイムスロットである場合、直前のＲＤ値に基づきアイドルシンボルを生成する（Ｓ６０９）。そして、生成したアイドルシンボルを下位側ノードの送信に割り当てられたタイムスロットに書きこんで、スレーブノード１０２に送信し、処理をＳ６０３へ戻す。以上の動作により、マスタノード１０１は、前述した信号線１１１上を流れる通信フレーム生成し、スレーブノード１０２に送信する。
【００５４】
（スレーブノードの構成）
続いて、スレーブノード１０２〜１０４の構成例と動作例について説明する。図７に、スレーブノード１０２〜１０４の構成例を示す。
【００５５】
スレーブノード１０２〜１０４は、図７に示すように、例えば、送受信データ処理部７０１、書き込みシンボル生成部７０２、送信シンボル選択部７０３、ＲＤ値算出部７０４、送受信制御部７０５を有する。また、スレーブノード１０２〜１０４は、例えば、スロット割り当て記憶部４０１、ＣＤＲ部４０５、同期部４０６、及び１０Ｂ８Ｂ変換部４０７を有するが、これらの機能部はマスタノード１０１の対応する機能部と同様に動作するため説明を省略する。なお、スレーブノード１０２〜１０４のスロット割り当て記憶部４０１のスロット割り当て情報は、ユーザが設定してもよいし、所定の方法でマスタノード１０１が決定したものを受信して設定してもよい。また、本実施形態では、スロット割り当て記憶部４０１に、通信フレーム全体のスロット割り当て情報を記憶されるものとして説明を行う。
【００５６】
送受信データ処理部７０１は、マスタノード１０１から受信するモータ制御情報に基づきモータを制御する。そして、センサからデータを取得し、マスタノード１０１へのフィードバック情報を生成する。書き込みシンボル生成部７０２は、上述の通信フレームにおいて、自ノードの送信に割り当てられたタイムスロットに書き込むシンボルを、ＲＤ値の複数の状態のそれぞれについて、生成する。
【００５７】
書き込みシンボル生成部７０２の構成について、図８を用いて詳述する。書き込みシンボル生成部７０２は、第１の８Ｂ１０Ｂ変換部８０１、第２の８Ｂ１０Ｂ変換部８０２、アイドルシンボル生成部５０３、ＲＤ調整シンボル生成部５０４及びＲＤ制御部８０３を有する。なお、以下では、アイドルシンボル生成部５０３及びＲＤ調整シンボル生成部５０４については、送信シンボル生成部４０４のアイドルシンボル生成部５０３及びＲＤ調整シンボル生成部５０４と同様に動作するため説明を省略する。
【００５８】
第１の８Ｂ１０Ｂ変換部８０１及び第２の８Ｂ１０Ｂ変換部８０２は、ＲＤ制御部８０３の制御に基づき、送信データを８Ｂ１０Ｂ符号化し、データシンボルを生成し、生成したシンボルのディスパリティ情報をＲＤ制御部８０３に出力する。ＲＤ制御部８０３は、第１の８Ｂ１０Ｂ変換部８０１をＲＤ−で符号化を開始するよう設定し、第２の８Ｂ１０Ｂ変換部８０２をＲＤ＋で符号化を開始するよう設定する。したがって、第１の８Ｂ１０Ｂ変換部８０１は、開始シンボルがＲＤ−のデータシンボルを出力し、第２の８Ｂ１０Ｂ変換部８０２は開始シンボルがＲＤ＋のデータシンボルを出力する。すなわち、書き込みシンボル生成部７０２は、符号化の複数の状態のそれぞれに応じて送信データを符号化した場合のデータシンボルをそれぞれ生成する。
【００５９】
ＲＤ制御部８０３は、送受信制御部７０５の制御に基づいて動作し、上述のように第１の８Ｂ１０Ｂ変換部８０１と第２の８Ｂ１０Ｂ変換部８０２の動作を制御する。また、第１の８Ｂ１０Ｂ変換部８０１と第２の８Ｂ１０Ｂ変換部８０２の出力するディスパリティ情報に基づき、それぞれのＲＤ値を第１のＲＤ値、第２のＲＤ値として求め、第１の８Ｂ１０Ｂ変換部８０１と第２の８Ｂ１０Ｂ変換部８０２のＲＤ制御を行う。そして、ＲＤ制御部８０３は、後述の送信シンボル選択部７０３を介して第１の８Ｂ１０Ｂ変換部８０１の出力シンボルが下位ノードに送信される場合、第１のＲＤ値を有効としてアイドルシンボル生成部５０３とＲＤ調整シンボル生成部５０４のＲＤ制御を行う。一方、第２の８Ｂ１０Ｂ変換部８０２の出力シンボルが下位ノードに送信される場合、ＲＤ制御部８０３は、第２のＲＤ値を有効としてアイドルシンボル生成部５０３とＲＤ調整シンボル生成部５０４のＲＤ制御を行う。
【００６０】
図７に戻り、送信シンボル選択部７０３は、送受信制御部７０５の制御に基づいて動作し、書き込みシンボル生成部７０２とＣＤＲ部４０５の出力するシンボルのうち、いずれか一方を下位ノードに送信する。ＲＤ値算出部７０４は、上位ノードから受信する信号のＲＤ値を求め、送受信制御部７０５に出力する。送受信制御部７０５は、スロット割り当て記憶部４０１から出力されるスロット割り当て情報と、ＲＤ値算出部７０４から出力されるＲＤ値に基づき、送信シンボル選択部７０３をはじめとする各動作ブロックを制御する。なお、送受信制御部７０５には、同期部４０６の出力する同期検出結果が入力されており、この同期検出タイミングに基づいて各タイムスロットで所定の送受信動作が行われるように、各動作ブロックを制御する。
【００６１】
本実施形態のスレーブノード１０２を例に、送受信制御部７０５の動作を説明する。スレーブノード１０２の送受信制御部７０５は、同期スロットとデータ伝送スロット＃１〜＃３では、ＣＤＲ部４０５の出力を下位ノードであるスレーブノード１０３に送信するよう送信シンボル選択部７０３を制御する。すなわち、送受信制御部７０５は、上位ノードから受信したデータがそのまま下位ノードへ送信されるように、送信シンボル選択部７０３を制御する。
【００６２】
そして、データ伝送スロット＃４の開始までにデータシンボル生成処理が完了するように、第１の８Ｂ１０Ｂ変換部８０１と第２の８Ｂ１０Ｂ変換部８０２の動作を開始する。送受信制御部７０５は、データ伝送スロット＃４の直前のＲＤ値が−の場合、開始シンボルがＲＤ−である第１の８Ｂ１０Ｂ変換部８０１の出力が、データ伝送スロット＃４で下位ノードに送信されるよう制御する。また、送受信制御部７０５は、データ伝送スロット＃４の直前のＲＤ値が＋の場合、開始シンボルがＲＤ＋である第２の８Ｂ１０Ｂ変換部８０２の出力がデータ伝送スロット＃４で下位ノードに送信されるよう制御する。そして、送受信制御部７０５は、いずれの出力がデータ伝送スロット＃４で送信されたかをＲＤ制御部８０３に通知する。さらに、データ伝送スロット＃５及び＃６でアイドルシンボルが、ＲＤ調整スロットでＲＤ調整シンボルが、それぞれ下位ノードに送信されるように、アイドルシンボル生成部５０３、ＲＤ調整シンボル生成部５０４及び送信シンボル選択部７０３が制御される。
【００６３】
なお、本実施形態のスレーブノード１０２〜１０４は、第１の８Ｂ１０Ｂ変換部８０１と第２の８Ｂ１０Ｂ変換部８０２とを備え、それぞれが異なるＲＤで動作を開始するよう制御する構成とした。これを単一の８Ｂ１０Ｂ変換部のみを備える構成とし、事前にＲＤ＋の場合とＲＤ−の場合の２つのシンボルを生成するようにしてもよい。すなわち、第１の８Ｂ１０Ｂ変換部８０１及び第２の８Ｂ１０Ｂ変換部８０２は、２つの機能部として備えられてもよいし、１つの機能部として備えられてもよい。
【００６４】
（スレーブノードの動作）
次に、スレーブノード１０２〜１０４の動作について説明する。図９は、スレーブノード１０２〜１０４の中継処理に関する動作の流れを示すフローチャートである。
【００６５】
スレーブノード１０２〜１０４は、処理を開始すると、書き込みシンボル生成部７０２において、開始ＲＤがＲＤ−とＲＤ＋の両方のデータシンボルを生成する（Ｓ９０２）。そして、スレーブノード１０２〜１０４は、現在のタイムスロットが自ノードの送信に割り当てられたタイムスロットであるかを判定する（Ｓ９０３）。自ノードの送信に割り当てられていないタイムスロットである場合（Ｓ９０３でＮＯ）、スレーブノード１０２〜１０４は、上位ノードから受信したデータ（ＣＤＲ部４０５の出力）をそのまま下位ノードに送信し、処理をＳ９０１へ戻す。
【００６６】
一方、スレーブノード１０２〜１０４は、現在のタイムスロットが自ノードの送信に割り当てられたタイムスロットである場合（Ｓ９０３でＹＥＳ）に、そのタイムスロットでの開始シンボルをＲＤ−とすべきかを判定する（Ｓ９０５）。すなわち、スレーブノード１０２〜１０４は、自ノードの送信に割り当てられたタイムスロットの直前のＲＤ値が−であるかを判定する。自ノードの送信に割り当てられたタイムスロットの直前のＲＤ値が−である場合（Ｓ９０５でＹＥＳ）、スレーブノード１０２〜１０４は、開始シンボルがＲＤ−であるデータシンボルを下位ノードに送信する（Ｓ９０６）。一方、自ノードの送信に割り当てられたタイムスロットの直前のＲＤ値が＋である場合（Ｓ９０５でＮＯ）、スレーブノード１０２〜１０４は、開始シンボルがＲＤ＋であるデータシンボルを下位ノードに送信する（Ｓ９０７）。そして、スレーブノード１０２〜１０４は、送信したシンボルに基づいてＲＤ値を更新する（Ｓ９０８）。
【００６７】
次に、スレーブノード１０２〜１０４は、送信後のタイムスロットがＲＤ調整スロットであるかを判定する（Ｓ９０９）。送信後のタイムスロットがＲＤ調整スロットでない場合（Ｓ９０９）、スレーブノード１０２〜１０４は、直前のＲＤ値に基づきアイドルシンボルを生成する。そして、スレーブノード１０２〜１０４は、下位側ノードの送信に割り当てられたタイムスロットで、生成したアイドルシンボルを下位ノードへ送信する。スレーブノード１０２〜１０４は、現在のタイムスロットがＲＤ調整スロットとなるまでこれを繰り返し、下位ノードの送信に割り当てられたタイムスロットにアイドルシンボルを書き込む。そして、スレーブノード１０２〜１０４は、現在のタイムスロットがＲＤ調整スロットとなった場合（Ｓ９０９でＹＥＳ）、その直前のＲＤ値に基づきＲＤ調整シンボルを生成し、生成したＲＤ調整シンボルを下位ノードに送信し、処理をＳ９０１へ戻す。
【００６８】
以上により、スレーブノード１０２〜１０４では、上位ノードから受信する信号に対して、自ノードの送信割当スロットからＲＤ調整スロットまでのタイムスロットに書き込み処理が行われ、上述の信号線１１２〜１１４を流れる通信フレームが送信される。
【００６９】
なお、上述のマスタノード１０１、スレーブノード１０２〜１０４のブロック図及び動作フロー図は、いかなるスロット割り当てにおいても同様に動作する。例えば、図１０に示すような、図２とは異なる第２のスロット割り当ての例を用いる場合について説明する。
【００７０】
図１０のスロット割り当て例では、データ伝送スロット＃４及び＃５にスレーブノード１０３及び１０４を送信ノードとして割り当て、データ伝送スロット＃６にスレーブノード１０２を送信ノードとして割り当てている。これに伴い、データ伝送スロット＃５と＃６の間、及びデータ伝送スロット＃６と同期スロットの間にＲＤ調整スロットが割り当てられている。図１１は、図１０に示す第２のスロット割り当て例において、図１の信号線１１１〜１１４上を通信フレームが流れる様子を示す図である。図１１において、斜線で塗られたタイムスロットは、各信号線に接続された上位側ノードが書き込みを行うタイムスロットである。
【００７１】
この場合、スレーブノード１０２は、自ノードの送信に割り当てられたタイムスロットがデータ伝送スロット＃６である。このため、スレーブノード１０２は、同期スロットから、データ伝送スロット＃５の直後のＲＤ調整スロットまでの間は、受信信号をそのまま送信する（Ｓ９０３、Ｓ９０４）。そして、スレーブノード１０２は、自ノードの送信に割り当てられたデータ伝送スロット＃６に送信データを８Ｂ１０Ｂ符号化したシンボルを書き込む。ここで、データ伝送スロット＃６の直前にＲＤ調整スロットが配置されているため、データ伝送スロット＃６では、符号化がＲＤ−で開始されたシンボルが送信される（Ｓ９０５でＹＥＳ、Ｓ９０６）。その後、データ伝送スロット＃６で送信したシンボルに応じてＲＤ値を更新し（Ｓ９０８）、続くタイムスロットがＲＤ調整スロットであるため（Ｓ９０９でＹＥＳ）、そのタイムスロットにおいてＲＤ調整シンボルを送信する（Ｓ９１０）。このスロット割り当ての例では、このＲＤ調整スロットでフレームが終了するため（Ｓ９０１でＹＥＳ）、スレーブノード１０２は、このフレームの中継処理を終了する。
【００７２】
スレーブノード１０３は、自ノードの送信に割り当てられたタイムスロットがデータ伝送スロット＃４であるため、同期スロットから、データ伝送スロット＃３までの間は、受信信号をそのまま送信する（Ｓ９０３、Ｓ９０４）。そして、スレーブノード１０３は、自ノードの送信に割り当てられたデータ伝送スロット＃４に送信データを８Ｂ１０Ｂ符号化したシンボルを書き込む。このとき、直前のシンボルにおけるＲＤ値はマスタノード１０１が送信したシンボルに応じて定まるため、スレーブノード１０３は、直前のＲＤ値に応じて、送信するデータシンボルを決定する（Ｓ９０５〜Ｓ９０７）。続いて、スレーブノード１０３は、続くデータ伝送スロット＃５がＲＤ調整スロットではないため（Ｓ９０９でＮＯ）、データ伝送スロット＃５においてアイドルシンボルを送信する（Ｓ９１１）。そして、その次のＲＤ調整スロットにおいて（Ｓ９０９でＹＥＳ）、ＲＤ調整シンボルを送信する（Ｓ９１０）。なお、この場合、ＲＤ調整スロットの後にデータ伝送スロット＃６が存在する。すなわち、この時点においてフレームは終了していない（Ｓ９０１でＮＯ）。ただし、データ伝送スロット＃６及びその後のＲＤ調整スロットは、スレーブノード１０３の送信に割り当てられたタイムスロットではない（Ｓ９０３でＮＯ）。このため、これらのタイムスロットにおいては、スレーブノード１０３は、スレーブノード１０２から受信した信号をそのままスレーブノード１０４へ送信する（Ｓ９０４）。そして、最後のＲＤ調整スロットを送信することでフレームが終了する（Ｓ９０１でＹＥＳ）ため、スレーブノード１０３は、このフレームの中継処理を終了する。
【００７３】
スレーブノード１０４の動作は、スレーブノード１０３の動作と同様であるため、説明を省略する。
【００７４】
なお、タイムスロットの割り当てが図１０のような場合で、その順序が変わらない場合は、例えば、スレーブノード１０２に割り当てられたデータ伝送スロット＃６の開始時点の符号化の状態（ＲＤ値）は常にＲＤ−となる。したがって、図１０のようなタイムスロット割り当てが永続的に用いられる場合は、スレーブノード１０２は、ＲＤ＋で８Ｂ１０Ｂ符号化を開始することはない。このため、このような場合には、スレーブノード１０２は、予めＲＤ＋で開始するデータシンボルを用意しておく必要はなく、ＲＤ−で開始するデータシンボルのみを用意しておいてもよい。すなわち、スレーブノード１０２は、例えば、第２の８Ｂ１０Ｂ変換部８０２を備えていなくてもよい。
【００７５】
このように、本実施形態では、隣り合うタイムスロットに割り当てられた送信ノードが下位側ノードから上位側ノードに切り替わる場合、そのタイムスロットの間にＲＤ調整スロットを配置する。そして、各スレーブノードは自ノードの送信に割り当てられたタイムスロットからＲＤ調整スロットまでのタイムスロットに対して書き込み処理を行いながら、上位ノードから受信する信号を下位ノードに送信する。これにより、上位ノードから受信する８Ｂ１０Ｂ符号化された通信フレームに対して、符号化規則に違反することなく、送信データを符号化したシンボルを含むシンボル列を直接書き込み、下位ノードに中継伝送することが可能となる。すなわち、中継伝送処理に際して、１０Ｂ８Ｂ変換を行う必要がないため、低遅延の中継伝送が可能となる。
【００７６】
なお、本実施形態では、ＲＤ調整シンボルが次シンボルをＲＤ−とするシンボルとして説明したが、これに限られず、次シンボルをＲＤ＋とするシンボルとしてもよい。なお、この場合、マスタノード１０１のフレーム開始時のＲＤを設定する動作Ｓ６０１は、ＲＤ＋に設定することとなる。
【００７７】
また、本実施形態では、スレーブノード１０２〜１０４のスロット割り当て記憶部４０１に、通信フレーム全体のスロット割り当て情報が記憶されるものとして説明を行った。しかしながら、自ノードの送信に割り当てられたタイムスロットと、自ノードの送信に割り当てられたタイムスロット以降の最初のＲＤ調整スロットの配置に関するスロット割り当て情報のみを記憶するようにしてもよい。
【００７８】
＜＜実施形態２＞＞
本実施形態では、実施形態１のように明示的にＲＤ調整スロットを配置するのではなく、各ノードがスロット割り当て情報に基づいてＲＤ調整スロットを配置すべき位置を判断する場合について説明する。図１２に、本実施形態に係るスロット割り当ての例を示す。図１２のスロット割り当ての例では、通信フレームは同期スロットとデータ伝送スロットによって構成され、各タイムスロットに送信ノードと受信ノードとが割り当てられている。
【００７９】
本実施形態では、各ノードは、隣り合うタイムスロットの送信ノードが下位側ノードから上位側ノードに切り替わる場合、下位側ノードの送信に割り当てられたタイムスロットの後端にＲＤ調整スロットを挿入する。例えば、図１２のスロット割り当ての例では、各ノードは、データ伝送スロット＃６と同期スロットの間で送信ノードが下位側ノードから上位側ノードに切り替わるため、データ伝送スロット＃６の後端にＲＤ調整スロットを挿入する。なお、ＲＤ調整スロットの挿入は、例えば、データ伝送スロット＃６の一部をＲＤ調整スロットとして使用することにより行われる。
【００８０】
図１３及び図１４に、本実施形態におけるマスタノード１０１とスレーブノード１０２〜１０４の構成例を示す。実施形態１のマスタノード１０１とスレーブノード１０２〜１０４の内部構成を示す図４及び図７と同様の機能部については同一の符号を付与し、詳細な説明を省略する。
【００８１】
図１３のマスタノード１０１と図１４のスレーブノード１０２〜１０４は、実施形態１のマスタノード１０１及びスレーブノード１０２〜１０４の構成に、ＲＤ調整スロット配置判断部１３０１を追加したものである。
【００８２】
ＲＤ調整スロット配置判断部１３０１は、スロット割り当て記憶部４０１から出力されるスロット割り当て情報に基づき、ＲＤ調整スロットを配置すべきタイムスロットを判断する。そして、ＲＤ調整スロット配置判断部１３０１は、その判断結果に基づいて、スロット割り当て記憶部に記憶されているスロット割り当て情報を書き換える。すなわち、スロット割り当て記憶部４０１に記憶されているスロット割り当て情報の中で、送信ノードが下位ノードから上位ノードに切り替わるスロットの間にＲＤ調整スロットを挿入したスロット割り当て情報を、スロット割り当て記憶部４０１に出力する。なお、マスタノード１０１の送信処理、及びスレーブノード１０２〜１０４の中継処理は、実施形態１と同様であるため、その説明を省略する。
【００８３】
本実施形態では、明示的にＲＤ調整スロットを配置するのではなく、各ノードがスロット割り当て情報に基づいてＲＤ調整スロットを配置すべき位置を自律的に判断して動作する。したがって、実施形態１と比較した場合、システム設計者がＲＤ調整スロットを配置すべき位置を考慮したスロット割り当てを行う必要がなく、より可用性の高いシステムを実現できる。
【００８４】
＜＜その他の実施形態＞＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014220577.tif 000003
【図２】
2014220577.tif 000004
【図３】
2014220577.tif 000005
【図４】
2014220577.tif 000006
【図５】
2014220577.tif 000007
【図６】
2014220577.tif 000008
【図７】
2014220577.tif 000009
【図８】
2014220577.tif 000010
【図９】
2014220577.tif 000011
【図１０】
2014220577.tif 000012
【図１１】
2014220577.tif 000013
【図１２】
2014220577.tif 000014
【図１３】
2014220577.tif 000015
【図１４】
2014220577.tif 000016