(57)【要約】  シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置が備えるＰＨＹは、通常モードにて後段側のシリアルリンクに出力する送信指示に基づくアイドルフレームとループバックモードにて後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームとの間でシンボル同期が維持されるタイミングで通常モードからループバックモードに移行し、前記ループバックモードにて他装置宛のデータパケットの中継処理を行う。
2011148621.tif 000002
【特許請求の範囲】
【請求項１】
シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置において、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、
前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御部と、
を備え、
前記ＰＨＹは、
前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、
前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、
前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記ループバックモードにて他装置宛のデータパケットの中継処理を行う
ことを特徴とするノード装置。
【請求項２】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記通常モードにおける前記アイドルフレームの出力を、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって行い、
前記移行指示に基づく前記通常モードから前記ループバックモードへの移行を、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームとの間で、前記コンマシンボルの位置とランニング・ディスパリティとが一致するタイミングで行う
ことを特徴とする請求項１記載のノード装置。
【請求項３】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、所定のワード長に複数のアイドルシンボルを束ねたデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記通常モードにおける前記アイドルフレームの出力を、前記データ列を所定のスクランブル方式に基づいてスクランブル化し、前記所定のワード長毎の先頭にシンボル同期のための同期ヘッダを付加して符号化を行うことによって行い、
前記移行指示に基づく前記通常モードから前記ループバックモードへの移行を、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームとの間で、前記同期ヘッダの位置を合わせたタイミングで行う
ことを特徴とする請求項１記載のノード装置。
【請求項４】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって前記通常モードにて前記後段側のシリアルリンクに出力する前記アイドルフレームを生成して出力する符号化部と、
前記通常モードでは前記符号化部が出力するアイドルフレームを選択して前記後段側のシリアルリンクに出力し、前記ループバックモードでは前記前段のノード装置からのアイドルフレームを選択して前記後段側のシリアルリンクに出力するループバックセレクタと、
を備え、
前記アイドルフレームのコンマシンボルには、“０”と“１”の数が異なるシンボルタイプのみがあり、
前記アイドルフレームのアイドルシンボルには、“０”と“１”の数が異なるシンボルタイプと、“０”と“１”の数が同じシンボルタイプとがあり、
前記ループバックセレクタは、
前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致する場合には、ランニング・ディスパリティが一致するコンマシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行い、
前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致しない場合において、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルと入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルとのシンボルタイプが一致しないときは、シンボルタイプが一致しないアイドルシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行い、
前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致しない場合において、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルと入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルとのシンボルタイプが一致するときは、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルのランニング・ディスパリティをそのままでそのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するアイドルシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行う、
ことを特徴とする請求項１記載のノード装置。
【請求項５】
前記リンクコントローラは、更に、
初期化時に前記ＰＨＹに対する省電力制御の有無を設定し、
前記シンボル制御部は、
前記プレギャップ前のパケットギャップにおいて、
前記省電力制御が有効に設定された場合、後段側のシリアルリンクを電気的アイドル状態とするための送信ディセーブル指示を行い、
前記省電力制御が無効に設定された場合、シンボル同期を維持するための他のアイドルフレームの送信指示を行う
ことを特徴とする請求項１記載のノード装置。
【請求項６】
シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置において、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、
前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御部と、
を備え、
前記ＰＨＹは、
前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、
前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する、
ことを特徴とするノード装置。
【請求項７】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記通常モードにおける前記アイドルフレームの出力を、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって行い、
前記復旧指示に基づく前記ループバックモードから前記通常モードへの復旧を、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間で、前記コンマシンボルの位置とランニング・ディスパリティとが一致するタイミングで行う
ことを特徴とする請求項６記載のノード装置。
【請求項８】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、所定のワード長に複数のアイドルシンボルを束ねたデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記通常モードにおける前記アイドルフレームの出力を、前記データ列を所定のスクランブル方式に基づいてスクランブル化し、前記所定のワード長毎の先頭にシンボル同期のための同期ヘッダを付加して符号化を行うことによって行い、
前記復旧指示に基づく前記ループバックモードから前記通常モードへの復旧を、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間で、前記同期ヘッダの位置を合わせたタイミングで行う
ことを特徴とする請求項６記載のノード装置。
【請求項９】
前記リンクコントローラは、
前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、
前記ＰＨＹは、
前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって前記通常モードにて前記後段側のシリアルリンクに出力する前記アイドルフレームを生成して出力する符号化部と、
前記通常モードでは前記符号化部が出力するアイドルフレームを選択して前記後段側のシリアルリンクに出力し、前記ループバックモードでは前記前段のノード装置からのアイドルフレームを選択して前記後段側のシリアルリンクに出力するループバックセレクタと、
を備え、
前記アイドルフレームのコンマシンボルには、“０”と“１”の数が異なるシンボルタイプのみがあり、
前記アイドルフレームのアイドルシンボルには、“０”と“１”の数が異なるシンボルタイプと、“０”と“１”の数が同じシンボルタイプとがあり、
前記ループバックセレクタは、
入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致する場合には、ランニング・ディスパリティが一致するコンマシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行い、
入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致しない場合において、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルと、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルとのシンボルタイプが一致しないときは、シンボルタイプが一致しないアイドルシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行い、
入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致しない場合において、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルと、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルとのシンボルタイプが一致するときは、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルのランニング・ディスパリティをそのままでそのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するアイドルシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行う、
ことを特徴とする請求項６記載のノード装置。
【請求項１０】
前記リンクコントローラは、更に、
初期化時に前記ＰＨＹに対する省電力制御の有無を設定し、
前記シンボル制御部は、
前記ポストギャップ後のパケットギャップにおいて、
前記省電力制御が有効に設定された場合、後段側のシリアルリンクを電気的アイドル状態とするための送信ディセーブル指示を行い、
前記省電力制御が無効に設定された場合、シンボル同期を維持するための他のアイドルフレームの送信指示を行う
ことを特徴とする請求項６記載のノード装置。
【請求項１１】
前記リンクコントローラは、
前記ＰＨＹに対して、前段側のシリアルリンクの電気的アイドル状態又は他のアイドルフレームを検出するまで、前記アイドルフレームの送信指示に基づく前記アイドルフレームの前記後段側のシリアルリンクへの出力を継続して行わせる
ことを特徴とする請求項１０記載のノード装置。
【請求項１２】
前記リンクコントローラは、
前記ループバックモードにて他装置宛のデータパケットの折り返し出力しているときに、当該データパケットの終端シンボルを検出すると前記復旧指示を行い、当該終端シンボルを検出する前に前段側のシリアルリンクの電気的アイドル状態又は他のアイドルフレームを検出すると前記復旧指示を行う
ことを特徴とする請求項１０記載のノード装置。
【請求項１３】
シリアルリンクを介して複数の集積回路がリング状に接続されたリング伝送システムにおける集積回路において、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、
前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御部と、
を備え、
前記ＰＨＹは、
前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、
前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段の集積回路からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、
前記ループバックモードにて前記前段の集積回路からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記ループバックモードにて他装置宛のデータパケットの中継処理を行う
ことを特徴とする集積回路。
【請求項１４】
シリアルリンクを介して複数の集積回路がリング状に接続されたリング伝送システムにおける集積回路において、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、
前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御部と、
を備え、
前記ＰＨＹは、
前記ループバックモードにて前記前段の集積回路からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段の集積回路からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、
前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する、
ことを特徴とする集積回路。
【請求項１５】
シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置を制御する制御方法であって、
前記ノード装置は、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成ステップと、
前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御ステップと、
を備え、
前記ＰＨＹは、
前記通常モードにて前記シンボル生成ステップにおける送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、
前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、
前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記ループバックモードにて他装置宛のデータパケットの中継処理を行う
ことを特徴とする制御方法。
【請求項１６】
シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置を制御する制御方法であって、
前記ノード装置は、
宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、
前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、
を備え、
前記リンクコントローラは、
前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成ステップと、
前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御ステップと、
を備え、
前記ＰＨＹは、
前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、
前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、
前記通常モードにて前記シンボル生成ステップにおける送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する、
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアルリンクを介してリング状に接続された例えば複数のノード装置間或いは集積回路間のデータ転送技術に関する。
【背景技術】
【０００２】
近年の半導体の微細化技術や高速化技術の進展に伴い、機器間或いは機器内に搭載されるＬＳＩ（Large Scale Integration）間で通信するデータ量は益々増加傾向にある。一方においては、パッケージコストに影響するＬＳＩの端子（パッド）数には厳しい制約がある。そこで、より少ないＬＳＩの端子数で高速なデータ通信を実現するために、シリアル伝送を採用したインタフェース規格が広く普及している。【０００３】
一般に、シリアル伝送ではバス接続が困難であり、複数のノード装置を接続するためのトポロジとしてリングトポロジが挙げられる。リングトポロジにおいては、データの送信元のノード装置と宛先のノード装置との間に接続されて中継局となるノード装置は、データの中継処理のために常にアクティブである必要がある。このような中継局としてのノード装置における消費電力を削減するために、中継処理に不必要な論理層（リンクコントローラ）をリセット状態に維持し、物理層（ＰＨＹ）による中継処理を行う従来技術が、例えば特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−０６５２１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術におけるノード装置は、物理層（ＰＨＹ）による中継処理の際に、論理層（リンクコントローラ）のリセット状態を維持する必要がある。このため、論理層（リンクコントローラ）を用いた処理を再開するには、リセット解除とその後の初期化処理に伴う処理オーバヘッドが発生する。また、論理層（リンクコントローラ）からの送信データと物理層（ＰＨＹ）による中継データとの間の出力切替え時には、データの連続性が維持されない。このため、結果としてシンボル同期の再獲得に伴う処理オーバヘッドの増大やデータ転送の信頼性の低下を招く。【０００６】
そこで、本発明は、リング伝送システムにおいて、データ転送の信頼性を維持しつつ、処理オーバヘッドを削減した中継処理を行うことが可能なノード装置、集積回路及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明のノード装置は、シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置において、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御部と、を備え、前記ＰＨＹは、前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記ループバックモードにて他装置宛のデータパケットの中継処理を行う。【０００８】
本発明の集積回路は、シリアルリンクを介して複数の集積回路がリング状に接続されたリング伝送システムにおける集積回路において、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御部と、を備え、前記ＰＨＹは、前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段の集積回路からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、前記ループバックモードにて前記前段の集積回路からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記ループバックモードにて他装置宛のデータパケットの中継処理を行う。【０００９】
本発明の制御方法は、シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置を制御する制御方法であって、前記ノード装置は、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、送信要求パケットからデータパケットまでのプレギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成ステップと、前記ＰＨＹに対し、前記通常モードにて他装置宛の送信要求パケットの中継処理後の前記プレギャップにおいて、他装置宛のデータパケットを折り返して出力するために、前記通常モードから前記ループバックモードに移行させるための移行指示を行うループバック制御ステップと、を備え、前記ＰＨＹは、前記通常モードにて前記シンボル生成ステップにおける送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力し、前記移行指示に基づき、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームとの間でシンボル同期が維持されるタイミングで前記通常モードから前記ループバックモードに移行し、前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記ループバックモードにて他装置宛のデータパケットの中継処理を行う。
【発明の効果】
【００１０】
上記ノード装置、集積回路及び制御方法の夫々によれば、データパケット前のプレギャップにおいて、リンクコントローラのリセット状態を維持することなく、アイドルフレームのシンボル同期を維持したままループバックモードに移行することができ、データ転送の信頼性を維持しつつ、処理オーバヘッドを削減した中継処理を行うことができる。【００１１】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記通常モードにおける前記アイドルフレームの出力を、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって行い、前記移行指示に基づく前記通常モードから前記ループバックモードへの移行を、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームとの間で、前記コンマシンボルの位置とランニング・ディスパリティとが一致するタイミングで行うとしてもよい。【００１２】
これにより、ＰＨＹが８ｂ／１０ｂ方式を採用する場合、ループバックモードへの移行前後で、ランニング・ディスパリティとシンボル同期を確実に維持できる。【００１３】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、所定のワード長に複数のアイドルシンボルを束ねたデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記通常モードにおける前記アイドルフレームの出力を、前記データ列を所定のスクランブル方式に基づいてスクランブル化し、前記所定のワード長毎の先頭にシンボル同期のための同期ヘッダを付加して符号化を行うことによって行い、前記移行指示に基づく前記通常モードから前記ループバックモードへの移行を、前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームと前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームとの間で、前記同期ヘッダの位置を合わせたタイミングで行うとしてもよい。【００１４】
これによれば、ＰＨＹが例えば６４ｂ／６６ｂ方式のようなスクランブルと同期ヘッダ付加による符号化方式を採用する場合、ループバックモードへの移行前後で、シンボル同期を確実に維持できる。【００１５】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって前記通常モードにて前記後段側のシリアルリンクに出力する前記アイドルフレームを生成して出力する符号化部と、前記通常モードでは前記符号化部が出力するアイドルフレームを選択して前記後段側のシリアルリンクに出力し、前記ループバックモードでは前記前段のノード装置からのアイドルフレームを選択して前記後段側のシリアルリンクに出力するループバックセレクタと、を備え、前記アイドルフレームのコンマシンボルには、“０”と“１”の数が異なるシンボルタイプのみがあり、前記アイドルフレームのアイドルシンボルには、“０”と“１”の数が異なるシンボルタイプと、“０”と“１”の数が同じシンボルタイプとがあり、前記ループバックセレクタは、前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致する場合には、ランニング・ディスパリティが一致するコンマシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行い、前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致しない場合において、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルと入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルとのシンボルタイプが一致しないときは、シンボルタイプが一致しないアイドルシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行い、前記符号化部から入力されたコンマシンボルと、入力された前記前段のノード装置からのコンマシンボルとのランニング・ディスパリティが一致しない場合において、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルと入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルとのシンボルタイプが一致するときは、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルのランニング・ディスパリティをそのままでそのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するアイドルシンボルの直後で前記通常モードから前記ループバックモードに移行するための出力の切替えを行う、としてもよい。【００１６】
これによれば、アイドルフレームに含まれるコンマシンボルやアイドルシンボルのランニング・ディスパリティがランダムに切り替わるような場合でも、ループバックモードへの移行前後で、ランニング・ディスパリティとシンボル同期を確実に維持できる。【００１７】
上記のノード装置において、前記リンクコントローラは、更に、初期化時に前記ＰＨＹに対する省電力制御の有無を設定し、前記シンボル制御部は、前記プレギャップ前のパケットギャップにおいて、前記省電力制御が有効に設定された場合、後段側のシリアルリンクを電気的アイドル状態とするための送信ディセーブル指示を行い、前記省電力制御が無効に設定された場合、シンボル同期を維持するための他のアイドルフレームの送信指示を行うとしてもよい。【００１８】
これにより、プレギャップ前のパケットギャップにおいて、シリアルリンクを電気的アイドル状態とすることで消費電力を削減するか、他のアイドルシンボルを送信続けてシンボル同期を維持することでパケット送受信のレイテンシを削減することを選択することができる。【００１９】
本発明のノード装置は、シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置において、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御部と、を備え、前記ＰＨＹは、前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する。【００２０】
本発明の集積回路は、シリアルリンクを介して複数の集積回路がリング状に接続されたリング伝送システムにおける集積回路において、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成部と、前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御部と、を備え、前記ＰＨＹは、前記ループバックモードにて前記前段の集積回路からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段の集積回路からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、前記通常モードにて前記シンボル生成部の送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する。【００２１】
本発明の制御方法は、シリアルリンクを介して複数のノード装置がリング状に接続されたリング伝送システムにおけるノード装置を制御する制御方法であって、前記ノード装置は、宛先情報を含むパケットの送受信及び中継処理を行うリンクコントローラと、前記シリアルリンクを介して入出力するシリアルデータと前記リンクコントローラが扱うパラレルデータとの間の相互変換を行う通常モードと、前段側のシリアルリンクを介して入力されるシリアルデータを前記リンクコントローラに受け渡す前に折り返して後段側のシリアルリンクに出力するループバックモードとの通信モードを切替えて動作を行うＰＨＹと、を備え、前記リンクコントローラは、前記ＰＨＹに対し、データパケット後のポストギャップにおいて、シンボル同期を維持するためのアイドルフレームの送信指示を行うシンボル生成ステップと、前記ＰＨＹに対し、前記ループバックモードにて他装置宛のデータパケットの折り返し出力後の前記ポストギャップにおいて、前記ループバックモードから前記通常モードに復旧させるための復旧指示を行うループバック制御ステップと、を備え、前記ＰＨＹは、前記ループバックモードにて前記前段のノード装置からのアイドルフレームを折り返して前記後段側のシリアルリンクに出力し、前記復旧指示に基づき、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間でシンボル同期が維持されるタイミングで前記ループバックモードから前記通常モードに復旧し、前記通常モードにて前記シンボル生成ステップにおける送信指示に基づいて前記アイドルフレームを前記後段側のシリアルリンクに出力する。【００２２】
上記ノード装置、集積回路及び制御方法の夫々によれば、データパケット後のポストギャップにおいて、アイドルフレームのシンボル同期を維持したまま通常モードに復旧することができる。【００２３】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記通常モードにおける前記アイドルフレームの出力を、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって行い、前記復旧指示に基づく前記ループバックモードから前記通常モードへの復旧を、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間で、前記コンマシンボルの位置とランニング・ディスパリティとが一致するタイミングで行うとしてもよい。【００２４】
これにより、ＰＨＹが８ｂ／１０ｂ方式を採用する場合、通常モードへの復旧前後で、ランニング・ディスパリティとシンボル同期を確実に維持できる。【００２５】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、所定のワード長に複数のアイドルシンボルを束ねたデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記通常モードにおける前記アイドルフレームの出力を、前記データ列を所定のスクランブル方式に基づいてスクランブル化し、前記所定のワード長毎の先頭にシンボル同期のための同期ヘッダを付加して符号化を行うことによって行い、前記復旧指示に基づく前記ループバックモードから前記通常モードへの復旧を、前記ループバックモードにて前記後段側のシリアルリンクに折り返して出力する前記前段のノード装置からのアイドルフレームと前記通常モードにて前記後段側のシリアルリンクに出力する前記送信指示に基づくアイドルフレームとの間で、前記同期ヘッダの位置を合わせたタイミングで行うとしてもよい。【００２６】
これによれば、ＰＨＹが例えば６４ｂ／６６ｂ方式のようなスクランブルと同期ヘッダ付加による符号化方式を採用する場合、通常モードへの復旧前後で、シンボル同期を確実に維持できる。【００２７】
上記のノード装置において、前記リンクコントローラは、前記アイドルフレームの送信指示として、８ｂ／１０ｂ方式におけるシンボル同期のためのコンマシンボルで始まり、アイドルシンボルを含む制御シンボルセットに係るデータ列を前記ＰＨＹに受け渡し、前記ＰＨＹは、前記制御シンボルセットに係るデータ列を８ｂ／１０ｂ方式に基づく符号化を行うことによって前記通常モードにて前記後段側のシリアルリンクに出力する前記アイドルフレームを生成して出力する符号化部と、前記通常モードでは前記符号化部が出力するアイドルフレームを選択して前記後段側のシリアルリンクに出力し、前記ループバックモードでは前記前段のノード装置からのアイドルフレームを選択して前記後段側のシリアルリンクに出力するループバックセレクタと、を備え、前記アイドルフレームのコンマシンボルには、“０”と“１”の数が異なるシンボルタイプのみがあり、前記アイドルフレームのアイドルシンボルには、“０”と“１”の数が異なるシンボルタイプと、“０”と“１”の数が同じシンボルタイプとがあり、前記ループバックセレクタは、入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致する場合には、ランニング・ディスパリティが一致するコンマシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行い、入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致しない場合において、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルと、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルとのシンボルタイプが一致しないときは、シンボルタイプが一致しないアイドルシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行い、入力された前記前段のノード装置からのコンマシンボルと、前記符号化部から入力されたコンマシンボルとのランニング・ディスパリティが一致しない場合において、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルと、前記符号化部から入力された前記コンマシンボルの次のアイドルシンボルとのシンボルタイプが一致するときは、入力された前記前段のノード装置からのコンマシンボルの次のアイドルシンボルのランニング・ディスパリティをそのままでそのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するアイドルシンボルの直後で前記ループバックモードから前記通常モードに復旧するための出力の切替えを行う、としてもよい。【００２８】
これによれば、アイドルフレームに含まれるコンマシンボルやアイドルシンボルのランニング・ディスパリティがランダムに切り替わるような場合でも、通常モードへの復旧前後で、ランニング・ディスパリティとシンボル同期を確実に維持できる。【００２９】
上記のノード装置において、前記リンクコントローラは、更に、初期化時に前記ＰＨＹに対する省電力制御の有無を設定し、前記シンボル制御部は、前記ポストギャップ後のパケットギャップにおいて、前記省電力制御が有効に設定された場合、後段側のシリアルリンクを電気的アイドル状態とするための送信ディセーブル指示を行い、前記省電力制御が無効に設定された場合、シンボル同期を維持するための他のアイドルフレームの送信指示を行うとしてもよい。【００３０】
これにより、ポストギャップ前のパケットギャップにおいて、シリアルリンクを電気的アイドル状態とすることで消費電力を削減するか、他のアイドルシンボルを送信続けてシンボル同期を維持することでパケット送受信のレイテンシを削減することを選択することができる。【００３１】
上記のノード装置において、前記リンクコントローラは、前記ＰＨＹに対して、前段側のシリアルリンクの電気的アイドル状態又は他のアイドルフレームを検出するまで、前記アイドルフレームの送信指示に基づく前記アイドルフレームの前記後段側のシリアルリンクへの出力を継続して行わせるとしてもよい。【００３２】
これによれば、リンク後段のノード装置が通常モードに復旧するための、ポストギャップのアイドルフレーム期間を確保することができる。【００３３】
上記のノード装置において、前記リンクコントローラは、前記ループバックモードにて他装置宛のデータパケットの折り返し出力しているときに、当該データパケットの終端シンボルを検出すると前記復旧指示を行い、当該終端シンボルを検出する前に前段側のシリアルリンクの電気的アイドル状態又は他のアイドルフレームを検出すると前記復旧指示を行うとしてもよい。【００３４】
これによれば、復旧指示のトリガーであるデータパケットの終端シンボルを検出できなかった場合でも、通常モードに復旧することが可能になって、受信パケットを受信できない状態が継続することを回避することができる。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施の形態に係るリング伝送システムの全体構成図。
【図２】図１のノード装置間で送受信されるパケットのパケットフォーマットの概略と、そのヘッダの詳細構成の一例を示す図。
【図３】（ａ）は制御コマンドパケットのパケットフォーマットの一例を示す図であり、（ｂ）はデータコマンドパケットのパケットフォーマットの一例を示す図であり、（ｃ）はレスポンスパケットのパケットフォーマットの一例を示す図であり、（ｄ）はデータパケットのパケットフォーマットの一例を示す図であり、（ｅ）はメッセージパケットのパケットフォーマットの一例を示す図。
【図４】図１のノード装置が用いる８ｂ／１０ｂ方式の特殊シンボルの機能割当の一例を示す図。
【図５】図１のノード装置が用いる制御シンボルセットの一例を示す図。
【図６】（ａ）は図１のノード装置が用いるパケットのフレーミングルールの一例を示す図であり、（ｂ）は図１のノード装置が用いるデータパケットをウインドウサイズ分束ねたデータバーストのフレーミングルールの一例を示す図。
【図７】図１のノード装置の構成図。
【図８】図１のマスタのノード装置（マスタ装置）の動作の流れを示すフローチャート。
【図９】図１のスレーブのノード装置（スレーブ装置）の動作の流れを示すフローチャート。
【図１０】図９の中継処理ステップの詳細を示すフローチャート。
【図１１】図１のマスタのノード装置（マスタ装置）と通信相手のノード装置（スレーブ装置）との間における書込みのデータコマンドの処理シーケンスの一例を示す図。
【図１２】図１のマスタのノード装置（マスタ装置）と通信相手のノード装置（スレーブ装置）との間における読出しのデータコマンドの処理シーケンスの一例を示す図。
【図１３】図７のループバックセレクタのループバックモード移行前後における出力の切替えタイミングを示す図。
【図１４】実施の形態の変形例におけるループバックセレクタのループバックモード移行前後における出力の切替えタイミングを示す図。
【図１５】図７のループバックセレクタの通常モード復旧前後における出力の切替えタイミングを示す図。
【図１６】図１に示すリング伝送システムにおける書込みのデータコマンドに関する全体動作を示す図。
【図１７】図１に示すリング伝送システムにおける読出しのデータコマンドに関する全体動作を示す図。
【図１８】６４ｂ／６６ｂ方式を採用した場合のノード装置の構成図。
【図１９】６４ｂ／６６ｂ方式を採用した場合のループバックセレクタのループバックモード移行前後における出力の切替えタイミングを示す図。
【図２０】６４ｂ／６６ｂ方式を採用した場合のループバックセレクタの通常モード復旧前後における出力の切替えタイミングを示す図。
【図２１】図１のノード装置が用いる制御シンボルセットの他の例を示す図。
【図２２】（ａ）〜（ｃ）は図２１の制御シンボルセット利用時のループバックセレクタの出力の切替えルールを示す図。
【発明を実施するための形態】
【００３６】
≪実施の形態≫
以下、本発明の実施の形態について、図面を参照しつつ説明する。
【００３７】
＜リング伝送システムの全体構成＞
図１は、本発明の実施の形態に係るリング伝送システムの全体構成図である。
【００３８】
図１のリング伝送システムには、４つのノード装置１００ａ〜１００ｄが含まれており、ノード装置１００ａ〜１００ｄがシリアルリンク１０１ａ〜１０１ｄを介してリング状に接続されている。なお、図１などに記載された“０”〜“３”はノード装置１０１ａ〜１０１ｄに割り当てられたデバイスＩＤを示している。
【００３９】
ノード装置１００ａ〜１００ｄは、夫々、ＰＨＹ１０２ａ〜１０２ｄと、リンクコントローラ１０３ａ〜１０３ｄを備える。本実施の形態では、ノード装置１００ａをマスタのノード装置（マスタ装置）とし、それ以外のノード装置１００ｂ〜１００ｄをスレーブのノード装置（スレーブ装置）とする。
【００４０】
各ノード装置１００ａ〜１００ｄのＰＨＹ１０２ａ〜１０２ｄは、シリアルリンク１０１ａ〜１０１ｄを介して入出力するシリアルデータと、リンクコントローラ１０３ａ〜１０３ｄが扱うパラレルデータとの間の相互変換を行う、物理層で機能する処理ブロックである。各ノード装置１００ａ〜１００ｄのリンクコントローラ１０３ａ〜１０３ｄは、所定のプロトコルに基づいてパケットの送受信を行う、論理層で機能する処理ブロックである。
【００４１】
各ノード装置１００ａ〜１００ｄのＰＨＹ１０２ａ〜１０２ｄは、シリアルリンク１０１ａ〜１０１ｄを介してシリアルデータを出力するためのシリアル送信部（Ｔｘ）１０４ａ〜１０４ｄと、シリアルリンク１０１ｄ、１０１ａ〜１０１ｃを介してシリアルデータを入力するためのシリアル受信部（Ｒｘ）１０５ａ〜１０５ｄとを含む。
【００４２】
ここで、ノード装置１００ａのシリアル送信部１０４ａと、その一つ後段のノード装置１００ｂのシリアル受信部１０５ｂとは、シリアルリンク１０１ａを介して接続されている。同様に、ノード装置１００ｂ、１００ｃ、１００ｄのシリアル送信部１０４ｂ、１０４ｃ、１０４ｄと、その一つ後段のノード装置１００ｃ、１００ｄ、１００ａのシリアル受信部１０５ｃ、１０５ｄ、１０５ａとは、シリアルリンク１０１ｂ、１０１ｃ、１０１ｄを介して接続されている。このように、ノード装置１０１ａ〜１０１ｄがシリアルリンク１０１ａ〜１０１ｄにリング状に接続されることにより、リング伝送システムが形成される。なお、シリアルリンク１０１ａ〜１０１ｄでは、図１に“順方向”として示す方向にシリアルデータが伝送するものとする。
【００４３】
ここで、リンクコントローラ１０３ａ〜１０３ｄが送受信するパケットは宛先情報を含む。リンクコントローラ１０３ａ〜１０３ｄは、受信パケットの宛先情報が自装置宛を示す場合、その受信パケットを所定のプロトコルに基づいて解釈する受信処理を行う。一方、リンクコントローラ１０３ａ〜１０３ｄは、受信パケットの宛先情報が他装置宛を示す場合、その受信パケットをリング後段のノード装置に受け渡す中継処理を行う。このように、送信元のノード装置と宛先のノード装置との間のノード装置が中継局となることで、マスタ装置と任意のスレーブ装置との間のパケットの送受信が実現される。
【００４４】
＜パケットフォーマット＞
以下、図１のノード装置１００ａ〜１００ｄ間で送受信されるパケットのパケットフォーマットについて、図２及び図３（ａ）〜（ｅ）を参照しつつ説明する。
【００４５】
図２は、図１のノード装置１００ａ〜１００ｄ間で送受信されるパケットのパケットフォーマットの概略と、そのヘッダの詳細構成の一例を示す図である。図２に示すように、パケットフォーマットは、ヘッダ（Ｈｅａｄｅｒ）２００と、アーギュメント（Ａｒｇｕｍｅｎｔ）２０１と、ペイロード（Ｐａｙｌｏａｄ）２０２とを含む。ここで、アーギュメント２０１とペイロード２０３との有無はパケットの種類に応じて決まり、その詳細については後述する。なお、アーギュメント２０１とペイロード２０２が存在しないこともあるので、図２では、［Ａｒｇｕｍｅｎｔ］と［Ｐａｙｌｏａｄ］として表記している。
【００４６】
ヘッダ２００は、図２に示すように、パケットタイプ（ＴＹＰＥ）２１０と、上記宛先情報としての宛先ＩＤ（ＤＩＤ：Ｄｅｓｔｉｎａｔｉｏｎ  ＩＤ）２１１と、送信元ＩＤ（ＳＩＤ：Ｓｏｕｒｃｅ  ＩＤ）２１２と、トランザクションＩＤ（ＴＩＤ：Ｔｒａｎｓａｃｔｉｏｎ  ＩＤ）２１３とを含む。
【００４７】
パケットタイプ２１０は、パケットの詳細種別を示す。本実施の形態では、パケットの詳細種別として、ＩＯ空間にマッピングされたレジスタ等にアクセスするためにマスタ装置が発行する制御コマンドパケット（ＣＣＭＤ：Ｃｏｎｔｒｏｌ  Ｃｏｍｍａｎｄ）、メモリ空間のバルクデータにアクセスするためにマスタ装置が発行するデータコマンドパケット（ＤＣＭＤ：Ｄａｔａ  Ｃｏｍｍａｎｄ）、上記の制御コマンドパケット及びデータコマンドパケットの応答としてそれらの宛先のスレーブ装置が発行するレスポンスパケット（ＲＥＳ：Ｒｅｓｐｏｎｓｅ）、データコマンドパケットによりマスタ装置とスレーブ装置間で転送されるバルクデータを含むデータパケット（ＤＡＴＡ）、シリアルリンクを介して他のノード装置に自装置の状態を通知するためのメッセージパケット（ＭＳＧ：Ｍｅｓｓａｇｅ）が定義されている。
【００４８】
宛先ＩＤ２１１と送信元ＩＤ２１２は、各ノード装置に割り当てられたデバイスＩＤ等により指定し、リング接続できるノード装置の総数は宛先ＩＤ２１１と送信元ＩＤ２１２のフィールド長により制約される。なお、図２の宛先ＩＤ２１１と送信元ＩＤ２１２のフィールド長を何れも４ビットとすると、デバイスＩＤとして“０”〜“１５”までの値が利用可能であり、ここでは、マスタ装置１００ａのデバイスＩＤは常に“０”とし、スレーブ装置１００ｂ〜１００ｄのデバイスＩＤは初期化時にユニークな値が割り当てられるものとする。図１の例では、スレーブ装置１００ｂ〜１００ｄにデバイスＩＤとして“１”〜“３”が割り当てられている。
【００４９】
また、一組のマスタ装置とスレーブ装置間で複数のデータコマンドパケットを同時に発行し、それらデータコマンドパケットによるデータ転送（トランザクション）を時分割で切替えながら実行する場合、宛先ＩＤ２１１と送信元ＩＤ２１２とからではそれらトランザクションの識別ができない。そこで、トランザクションＩＤ２１３は、複数のデータコマンドパケットによるトランザクションを識別するために用いられる。
【００５０】
次に、図３（ａ）〜（ｅ）を参照しつつ、パケットタイプ２１０で定義される各パケットの詳細フォーマットを説明する。なお、図３（ａ）〜（ｅ）におけるヘッダは図２のヘッダ２００と同様であるので、ここではその詳細説明を省略する。
【００５１】
図３（ａ）は、制御コマンドパケットのパケットフォーマットの一例を示す図である。
【００５２】
制御コマンドパケットのアーギュメントは、データ転送の読出し（Ｒｅａｄ）と書込み（Ｗｒｉｔｅ）のデータ転送種別を示すＲ／Ｗフラグ３００と、制御コマンドで転送されるＩＯデータのサイズを示すペイロード長（ＰＬＥＮ：Ｐａｙｌｏａｄ  Ｌｅｎｇｔｈ）３０１と、ＩＯ空間上のアクセス対象のアドレスを示すＩＯアドレス３０２とを含む。制御コマンドパケットのペイロードは、Ｒ／Ｗフラグ３００が書込みに設定された場合にのみ、ペイロード長３０１で指定されたサイズのＩＯライトデータ３０３が含まれる。なお、Ｒ／Ｗフラグ３００が読出しに設定された場合、ＩＯリードデータは制御コマンドパケットに対するレスポンスパケットに含まれるため、制御コマンドパケットにはＩＯリードデータは含まれない。なお、制御コマンドパケットにペイロードが存在しないこともあるので、図３（ａ）では［Ｐａｙｌｏａｄ］として表記している。
【００５３】
図３（ｂ）は、データコマンドパケットのパケットフォーマットの一例を示す図である。
【００５４】
データコマンドパケットのアーギュメントは、データ転送の読出し（Ｒｅａｄ）と書込み（Ｗｒｉｔｅ）のデータ転送種別を示すＲ／Ｗフラグ３１０を含み、以降の拡張アーギュメントとして、メモリ空間におけるデータ転送の開始アドレスであるメモリアドレス３１１とデータ転送のトータルサイズを示す転送サイズ３１２を含む。ここで、各パケットにおけるアーギュメントのサイズを固定長とするため、アーギュメントに収まらないメモリアドレス３１１と転送サイズ３１２については、拡張アーギュメントとして定義している。ヘッダは全てのパケットで共通であるため、アーギュメントのサイズについても全てのパケットで固定長とすることで、リンクコントローラ１０３ａ〜１０３ｄにおける受信パケットの解釈が容易となる。
【００５５】
図３（ｃ）は、レスポンスパケットのパケットフォーマットの一例を示す図である。
【００５６】
レスポンスパケットのアーギュメントは、制御コマンドパケットあるいはデータコマンドパケットがそれらの宛先ＩＤ２１２で指定されたノード装置（通信相手のスレーブ装置）において正しく受付けられたか否かを示すＮＡＣＫ（Ｎｅｇａｔｉｖｅ  Ａｃｋｎｏｗｌｅｄｇｅ）フラグ３２０を含む。レスポンスパケットのペイロードは、制御コマンドパケットのＲ／Ｗフラグ３００が読出しに設定されていた場合にのみ、その制御コマンドパケットで読み出されたＩＯリードデータ３２１（制御コマンドパケットのペイロード長３０１で指定されたサイズ分）を含む。但し、制御コマンドパケットのＲ／Ｗフラグ３００が書込みに設定された場合、上述したようにＩＯライトデータは制御コマンドパケットに含まれるため、レスポンスパケットにはＩＯライトデータは含まれない。なお、レスポンスパケットにペイロードが存在しないこともあるので、図３（ｃ）では［Ｐａｙｌｏａｄ］として表記している。
【００５７】
図３（ｄ）は、データパケットのパケットフォーマットの一例を示す図である。
【００５８】
データパケットには、アーギュメントが存在せず、ペイロードにはデータコマンドパケットでアクセスされるデータを所定のブロックサイズで断片化したデータブロック３３０が含まれる。本実施の形態では、ブロックサイズを５１２バイトとし、データコマンドパケットの転送サイズ３１２はブロックサイズである５１２バイトの倍数を指定するものとする。この場合、転送サイズ３１２で指定されたトータルサイズのデータは５１２バイト毎に断片化され、それぞれヘッダを付加したデータパケットとして転送されることになる。なお、ブロックサイズは５１２バイト以外の固定サイズであってもよく、また、可変サイズであってもよい。
【００５９】
図３（ｅ）は、メッセージパケットのパケットフォーマットの一例を示す図である。
【００６０】
メッセージパケットのアーギュメントは、メッセージ種別を示すメッセージインデックス（Ｉｎｄｅｘ）３４０と、メッセージ種別毎の付加情報を示すメッセージコード（Ｃｏｄｅ）３４１とを含む。
【００６１】
メッセージインデックス３４０で指定するメッセージ種別としては、フロー制御リクエスト（ＦＣＲＥＱ：Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔ）、フロー制御レディ（ＦＣＲＤＹ：Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ｒｅａｄｙ）、ステータス（ＳＴＡＴ：Ｓｔａｔｕｓ）などがある。
【００６２】
フロー制御リクエストとフロー制御レディは、データ転送開始前に送信元のノード装置と宛先のノード装置との間で交換されるフロー制御情報である。ステータスは、データ転送完了後にデータ転送の宛先のノード装置から送信元のノード装置に対してデータ受信エラーを通知するために用いられる。ここで、メッセージインデックス３４０がステータスを示す場合、メッセージコード３４１には、データ受信エラーの有無が含まれることになる。
【００６３】
なお、上記のパケットフォーマットは、プロトコルに応じて異なる構成が考えられ、フィールドの削除や追加等、必要に応じて適宜変更されてもよい。
【００６４】
＜８ｂ／１０ｂ方式の制御シンボル＞
以下、図１のノード装置１００ａ〜１００ｄが用いる８ｂ／１０ｂ方式の特殊シンボルについて、図４を参照しつつ説明する。図４は、図１のノード装置１００ａ〜１００ｄが用いる８ｂ／１０ｂ方式の特殊シンボルの機能割当の一例を示す図である。
【００６５】
８ｂ／１０ｂ方式では、８ビットを１０ビットに変換する冗長性を生かして通常の８ビット（バイト）データを表現するＤシンボルの他に、１２種類の制御用の特殊なＫシンボル（制御シンボル）を利用できる。図４では、“シンボル名”と、“ニーモニック”と、“機能”と、元データ（１６進数）と、“符号化シンボル（２進数）”とを対応づけて示している。元データ（１６進数）は８ｂ／１０ｂ方式に基づく符号化前の８ビットデータを示し、符号化シンボル（２進数）は８ｂ／１０ｂ方式に基づく符号化後の１０ビットデータを示す。
【００６６】
ここで、８ｂ／１０ｂ方式においては、８ビットを１０ビットに変換する冗長性を生かし、元データの夫々に対して“−”と“＋”の属性を持つ２つの符号化シンボルを割り当てている。そして、８ｂ／１０ｂ方式の符号化の際には、符号化シンボル内の“０”と“１”の数のバランスに関する状態であるランニング・ディスパリティ（ＲＤ：Ｒａｎｎｉｎｇ  Ｄｉｓｐａｒｉｔｙ）を管理する。ランニング・ディスパリティは、“ＲＤ−”と“ＲＤ＋”の状態を取り得て、“０”の多い符号化シンボル生成後に“ＲＤ−”に遷移し、“１”の多い符号化シンボル生成後に“ＲＤ＋”に遷移し、“０”と“１”とが同数の符号化シンボル生成後は前回の符号化シンボル生成後の状態を維持する。そして、ランニング・ディスパリティが“ＲＤ−”か“ＲＤ＋”に応じて、それぞれ図４に示す“Ｃｕｒｒｅｎｔ  ＲＤ−”か“Ｃｕｒｒｅｎｔ  ＲＤ＋”に対応する符号化シンボルが生成される。
【００６７】
例えば、ランニング・ディスパリティが“ＲＤ−”の場合、“Ｃｕｒｒｅｎｔ  ＲＤ−”の符号化シンボルが選択され、選択された“Ｃｕｒｒｅｎｔ  ＲＤ−”の符号化シンボルが“１”の多い符号化シンボルの場合には、ランニング・ディスパリティは“ＲＤ−”から“ＲＤ＋”に遷移し、選択された“Ｃｕｒｒｅｎｔ  ＲＤ−”の符号化シンボルが“０”と“１”が同数の符号化シンボルの場合には、ランニング・ディスパリティは“ＲＤ−”を維持する。
【００６８】
また、ランニング・ディスパリティが“ＲＤ＋”の場合、“Ｃｕｒｒｅｎｔ  ＲＤ＋”の符号化シンボルが選択され、選択された“Ｃｕｒｒｅｎｔ  ＲＤ＋”の符号化シンボルが“０”の多い符号化シンボルの場合には、ランニング・ディスパリティは“ＲＤ＋”から“ＲＤ−”に遷移し、選択された“Ｃｕｒｒｅｎｔ  ＲＤ＋”の符号化シンボルが“０”と“１”が同数の符号化シンボルの場合には、ランニング・ディスパリティは“ＲＤ＋”を維持する。
【００６９】
８ｂ／１０ｂ方式の復号化の際にも、ランニング・ディスパリティの管理を行い、“０”の多い符号化シンボルの復号後に“ＲＤ−”に遷移し、“１”の多い符号化シンボルの復号後に“ＲＤ＋”に遷移し、“０”と“１”とが同数の符号化シンボルの復号後は前回の符号化シンボルの復号後の状態を維持する。例えば、ランニング・ディスパリティが“ＲＤ−”であるにもかかわらず、“Ｃｕｒｒｅｎｔ  ＲＤ＋”の符号化シンボルを受信した場合など、上記の符号化ルールに従わない符号化シンボルを受信した場合に、ランニング・ディスパリティエラーとして検知する。
【００７０】
図４では、８ｂ／１０ｂ方式の制御シンボルの一部に、ＳＤＢ（Ｓｔａｒｔ  ｏｆ  ＤＡＴＡ  Ｂｕｒｓｔ）シンボル、ＳＯＰ（Ｓｔａｒｔ  ｏｆ  Ｐａｃｋｅｔ）シンボル、ＬＩＤＬ（Ｌｏｇｉｃａｌ  Ｉｄｌｅ）シンボル、ＣＯＭ（Ｃｏｍｍａ）シンボル、ＤＩＤＬ（Ｄａｔａ  Ｉｄｌｅ）シンボル、ＥＤＢ（Ｅｎｄ  ｏｆ  ＤＡＴＡ  Ｂｕｒｓｔ）シンボル、ＥＯＰ（Ｅｎｄ  ｏｆ  Ｐａｃｋｅｔ）シンボルが割り当てられている。
【００７１】
ＣＯＭシンボル（Ｋ２８．５）は、８ｂ／１０ｂ方式の符号化シンボル列からなるシリアルデータ内で、他の２つの符号化シンボルのいかなる組合せからも生成されないユニークな信号パターンを有するため、シンボル同期を行うための区切り文字として用いられる。ここで、８ｂ／１０ｂ方式におけるシンボル同期とは、シリアルデータから符号化シンボルの区切り位置（先頭ビット）を正しく認識してパラレルデータに変換することが可能になっている状態を示す。
【００７２】
ＳＯＰシンボル（Ｋ２８．１）及びＥＤＰシンボル（Ｋ２９．７）は、それぞれパケットの先頭及び末尾に付加され、パケットの区切りの位置を識別するために用いられる。
【００７３】
ＳＤＢシンボル（Ｋ２８．０）及びＥＤＢシンボル（Ｋ２７．７）は、データ転送の単位として、データパケットをフロー制御のウインドウサイズ分だけ束ねたデータバーストの先頭及び末尾にそれぞれ付加され、データバーストの区切り位置を識別するために用いられる。
【００７４】
ＬＩＤＬシンボル（Ｋ２８．３）及びＤＩＤＬシンボル（Ｋ２８．６）は、いずれも送信パケット間の間隔を埋めて、シンボル同期を維持するために用いられるアイドルシンボルである。なお、ＬＩＤＬシンボルとＤＩＤＬシンボルの使い分けについては後述する。
【００７５】
なお、図４の例では、ＣＯＭシンボル（Ｋ２８．５）とＬＩＤＬシンボル（Ｋ２８．３）とＤＩＤＬシンボル（Ｋ２８．６）の各シンボルは、ともに、“０”と“１”の数が異なるＵｎｂａｌａｎｃｅシンボルである。
【００７６】
シンボル同期が伝送エラーによって予期せずに外れてしまった場合、再度シンボル同期を獲得するためには、ＣＯＭシンボルを検知する必要がある。このため、ＣＯＭシンボルは定期的に伝送されることが望ましい。そこで、本実施の形態では、ＣＯＭシンボル以外の制御シンボルを、常にＣＯＭシンボルと組み合わせた制御シンボルセットとして用いることとし、図５に本実施の形態で用いる制御シンボルセットの一例を示す。図５の制御シンボルセットは、第１シンボルで始まり、それに第２シンボルが続くものであり、第１シンボルはシンボル同期のためのＣＯＭシンボル（Ｋ２８．５）である。ここで、ＳＹＮは、ＣＯＭシンボル（Ｋ２８．５）と特定のＤシンボル（Ｄ３１．５）とからなり、初期化時やパケット送信前にシンボル同期を確立させるために送信される。なお、以下では、ＳＤＢ、ＳＯＰ、ＥＤＰ、ＥＤＢ、ＬＩＤＬ、ＤＩＤＬはそれぞれ図５で定義した制御シンボルセットを表すこととする。
【００７７】
＜パケットフレーミング＞
上記の制御シンボルセットの内、ＳＤＢ、ＳＯＰ、ＥＯＰ、ＥＤＢは、フレーミングシンボルセットであり、図２及び図３（ａ）〜（ｅ）に示した各種パケットの先頭と末尾を識別するためのパケットフレーミングに用いられる。
【００７８】
図６（ａ）は、図１のノード装置１００ａ〜１００ｄが用いるパケットのフレーミングルールの一例を示す図である。
【００７９】
図２及び図３（ａ）〜（ｅ）に示したパケット６００には、そのデータの完全性の確認のために算出されたＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）６０１が付加される。そして、更に、パケット６００にＣＲＣ６０１を付加したものの先頭と末尾のそれぞれにＳＯＰの制御シンボルセット６０２とＥＯＰの制御シンボルセット６０３が付加されることにより、フレーミングされたパケットを形成する。
【００８０】
図６（ｂ）は、図１のノード装置１００ａ〜１００ｄが用いるデータパケットをウインドウサイズ分束ねたデータバーストのフレーミングルールの一例を示す図である。データバースト内の各データパケット６１０の各々は、図３（ｄ）に示した通りであり、図６（ａ）を用いて説明したパケットのフレーミングルールに従ってフレーミングされる。そして、フレーミングされたデータパケット（ＤＡＴＡ  Ｐａｃｋｅｔ（ｆｒａｍｅｄ））６２０（データパケット６１０にＣＲＣ６１１が付加され、更にＳＯＰの制御シンボルセット６１２とＥＯＰの制御シンボルセット６１３が付加されたもの）がウインドウサイズ分束ねられた上で、その先頭と末尾のそれぞれにＳＤＢの制御シンボルセット６２１とＥＤＢの制御シンボルセット６２２が付加されることにより、フレーミングされたデータバーストを形成する。
【００８１】
＜ノード装置の構成＞
次に、図１のノード装置１００ａ〜１００ｄの構成について図７を参照しつつ説明する。図７は、図１のノード装置１００ａ〜１００ｄ（ノード装置７００）の構成図である。
【００８２】
ノード装置７００は、ＰＨＹ７０１と、リンクコントローラ７０２とを備える。ＰＨＹ７０１は、図１のＰＨＹ１０２ａ〜１０２ｄに相当し、リンクコントローラ７０２は、図１のリンクコントローラ１０３ａ〜１０３ｄに相当する。
【００８３】
〔ＰＨＹ〕
ＰＨＹ７０１は、シリアル受信部（Ｒｘ）７１０と、復号化部７１１と、符号化部７１２と、ループバックセレクタ７１３と、シリアル送信部（Ｔｘ）７１４とを備える。シリアル受信部７１０は図１のシリアル受信部１０５ａ〜１０５ｄに相当し、シリアル送信部７１４は図１のシリアル送信部１０４ａ〜１０４ｄに相当する。
【００８４】
シリアル受信部７１０は、レシーバ７２０と、デシリアライザ（ＤＥＳ）７２１とを備える。レシーバ７２０は、シリアルリンク（シリアルリンク１０１ａ〜１０１ｄ）から入力されるシリアルデータからシリアル受信データを生成する。デシリアライザ７２１は、レシーバ７２０からのシリアル受信データのビット列から、上述したＣＯＭシンボルのような区切り文字を検出することでシンボルの先頭ビット位置を検出し、８ｂ／１０ｂ方式のシンボル長（１０ビット幅）のパラレル受信データに変換する。デシリアライザ７２１から出力されるパラレル受信データは、復号化部７１１に入力されるとともに、ループバック経路７１５によって分岐されてループバックセレクタ７１３に入力される。なお、以下において、ループバック経路７１５によって分岐されてループバックセレクタ７１３に入力されるパラレル受信データを「パラレルループバックデータ」と言うことにする。
【００８５】
復号化部７１１は、パラレル受信データを構成する１０ビットのシンボルデータのそれぞれを、８ｂ／１０ｂ方式に基づいて８ビット（バイト）幅のＲａｗデータに復号し、復号の結果得られたＲａｗデータ（以下、「受信Ｒａｗデータ」と称する。）をリンクコントローラ７０２へ出力する。なお、復号化部７１１は、ランニング・ディスパリティの管理を行い、例えば、受け取った１０ビットのシンボルデータが管理しているランニング・ディスパリティに適合しなければランニング・ディスパリティエラーとして検知する。
【００８６】
符号化部７１２は、リンクコントローラ７０２から入力されるＲａｗデータ（以下、「送信Ｒａｗデータ」と称する。）を、８ｂ／１０ｂ方式に基づいて、８ビット（バイト）単位で、１０ビット幅のシンボルデータに符号化し、１０ビット幅のシンボルデータによって構成されるパラレル送信データをループバックセレクタ７１３へ出力する。なお、符号化部７１２は、ランニング・ディスパリティの管理を行いながら、８ｂ／１０ｂ方式に基づく符号化を行う。
【００８７】
ループバックセレクタ７１３は、リンクコントローラ７０２の後述するループバック制御部７５７からの指示を受け、所定のタイミングで出力選択を切替えて、パラレル送信データとパラレルループバックデータの一方をシリアル送信部７１４へ出力する。なお、このループバックセレクタ７１３における出力の切替えの詳細は後述する。
【００８８】
ここで、ノード装置７００は、ループバックセレクタ７１３の出力として、リンクコントローラ７０２の出力に関するパラレル送信データを選択した状態を“通常モード”とし、ループバック経路７１５で分岐されたパラレルループバックデータを選択した状態を“ループバックモード”であるとする。
【００８９】
シリアル送信部７１４は、シリアライザ（ＳＥＲ）７２５と、ドライバ７２６とを備える。シリアライザ７２５は、８ｂ／１０ｂ方式のシンボル長（１０ビット幅）のパラレル送信データ又はパラレルループバックデータをシリアル送信データ又はシリアルループバックデータに変換する。ドライバ７２６は、シリアライザ７２５からのシリアル送信データ又はシリアルループバックデータからシリアルデータを生成してシリアルリンク（シリアルリンク１０１ａ〜１０１ｄ）へ出力する。
【００９０】
なお、リンクコントローラ７０２は、省電力化のために、シリアル送信部７１４の動作を停止させ、動作中では起こり得ない電気的アイドル（ハイインピーダンス）状態とすることができる。電気的なアイドル状態では、シリアルリンク１０１ａ〜１０１ｄをプルアップ又はプルダウンし、シリアル受信部７１０は、そのようなプルアップ状態又はプルダウン状態を検知することで、自動的にその動作を停止させることができる。
【００９１】
〔リンクコントローラ〕
リンクコントローラ７０２は、シンボル検知部７５１と、バイパス制御部７５２と、パケット受信部７５３と、パケット送信部７５４と、バイパスセレクタ７５５と、シンボル生成部７５６と、ループバック制御部７５７とを備える。
【００９２】
シンボル検知部７５１は、ＰＨＹ７０１からの入力である受信Ｒａｗデータから、図６（ａ）、（ｂ）に示すフレーミングルールに従って、パケットやデータバーストの先頭及び末尾を検出し、正しく受信できたものに含まれるパケット６００のみバイパス制御部７５２へ出力する。この際に、シンボル検知部７５１は、受信ＲａｗデータからＥＤＢシンボルを検出すると、ＥＤＢシンボルを検出したことをループバック制御部７５７に通知する。ここで、シンボル検知部７５１は、図６（ａ）、（ｂ）に示すフレーミングルールに違反したことを確認した場合や、ＣＲＣチェックにて伝送エラーを確認した場合、パケット６００の正しい受信ができないので、そのようなパケット６００を破棄する。また、図５に示したＬＩＤＬ、ＤＩＤＬ、ＳＹＮなどの制御シンボルセットは、パケットの実データを伝送するために用いられるものではないため、シンボル検知部７５１にて除去されることになる。
【００９３】
バイパス制御部７５２は、シンボル検知部７５１からの入力である受信パケットのヘッダ２００に含まれる宛先ＩＤ２１２に基づいて、受信パケットをノード装置７００内で受理するか、バイパス経路７５８を介してリング後段のノード装置に中継するか判定する。但し、バイパス制御部７５２は、受信パケットが自装置宛であれば受信パケットを受理と判定して受信パケットをパケット受信部７５３へ出力し、受信パケットが他装置宛であれば受信パケットを中継と判定して受信パケットをバイパス経路７５８を介してバイパスセレクタ７５５へ出力する。
【００９４】
バイパス制御部７５２は、受信パケットが他装置宛と判定した場合、更に、他装置宛の受信パケットが送信要求を示すフロー制御リクエストのメッセージパケット（本実施の形態では、送信要求パケットに該当する。）であるか判定し、判定結果をループバック制御部７５７に通知する。
【００９５】
パケット受信部７５３は、バイパス制御部７５２によって受信パケットを受理と判定された場合、所定のプロトコルに基づいて受信パケットに応じた受信処理を行う。
【００９６】
パケット送信部７５４は、データ伝送を開始させるためのコマンドパケット（制御コマンドパケット、データコマンドパケット）の発行、パケット受信部７５３によってコマンドパケットが受信された場合のレスポンスパケットの発行、データパケットの発行、メッセージパケットの発行などの送信処理を行う。
【００９７】
バイパスセレクタ７５５は、バイパス経路７５８を介して中継される受信パケットと、パケット送信部７５４で生成された送信パケットとの一方を、バイパス制御部７５２による判定結果に基づいて選択してシンボル生成部７５６へ出力する。但し、バイパスセレクタ７５５は、バイパス制御部７５５による判定結果が受信パケットを中継と判定した場合に、バイパス経路７５８を介して入力される受信パケットを選択して出力する。
【００９８】
シンボル生成部７５６は、図６（ａ）、（ｂ）に示すフレーミングルールに従って、バイパスセレクタ７５５から入力されるパケット（パケット生成部７５４で発行された送信パケット又はバイパス経路７５８を用いて中継処理するパケット）のフレーミングを行い、フレーミングされたパケットの送信ＲａｗデータをＰＨＹ７０１へ出力する。また、シンボル生成部７５６は、パケットが無い期間において、ＰＨＹ７０１に対してアイドルフレームの送信指示を行うか、又は、シリアル送信部７１４の動作を停止させてシリアルリンクを電気的アイドル状態とするか制御する。ここで、シンボル生成部７１４は、ＰＨＹ７０１に対するアイドルフレームの送信指示を、例えば、ＬＩＤＬやＤＩＤＬのような制御シンボルセットの送信ＲａｗデータをＰＨＹ７０１に出力することにより行う。
【００９９】
ループバック制御部７５７は、バイパス制御部７５２の判定結果とシンボル検知部７５１の検知結果に応じて、ループバックセレクタ７１３に対して、ループバックセレクタ７１３が出力選択を切替えるよう指示する。本実施の形態では、ループバック制御部７５７は、受信パケットが他装置宛であり、受信パケットが送信要求を示すフロー制御リクエストのメッセージパケットであるとのバイパス制御部７５２による判定を受けて、ループバックセレクタ７１３に対して、ループバックセレクタ７１３の出力を、パラレル送信データからパラレルループバックデータに切替えるように指示する。また、ループバック制御部７５７は、シンボル検知部７５６がＥＤＢシンボルを検出したことを受けて、ループバックセレクタ７１３に対して、ループバックセレクタ７１３の出力を、パラレルループバックデータからパラレル送信データに切替えるように指示する。
【０１００】
なお、ノード装置７００は、通常のデータ転送を行う場合には初期化直後に通常モードである必要があるが、ＰＨＹ７０１のテストのためにシリアル受信部７１０とシリアル送信部７１４のみを用いたＢＥＲ（Ｂｉｔ  Ｅｒｒｏｒ  Ｒａｔｅ）を計測する場合には初期化直後にループバックモードである必要がある。
【０１０１】
＜ノード装置の動作＞
以下、図１のリング伝送システムにおけるマスタのノード装置（マスタ装置）１００ａとスレーブのノード装置（スレーブ装置）１００ｂ〜１００ｄとの夫々の動作について図８〜図１０を参照しつつ説明する。但し、図８は、図１のマスタ装置１００ａの動作の流れを示すフローチャートであり、図９及び図１０は図１のスレーブ装置１００ｂ〜１００ｄの動作の流れを示すフローチャートである。なお、以下では、説明の便宜上、図８のフローチャートと、図９のフローチャートとを適宜まとめて説明する。
【０１０２】
初期設定ステップにおいて、マスタ装置１００ａは初期設定を行い（ステップＳ１００）、スレーブ装置１００ｂ〜１００ｄは初期設定を行う（ステップＳ２００）。初期設定では、例えば、フロー制御のウインドウサイクル（すなわち、データバーストの転送サイズ）やパケットギャップ（図１１及び図１２を参照して後述）においてシリアルリンク１０１ａ〜１０１ｄを電気的アイドル状態とするかどうかを示す電力制御設定等、ノード装置１００ａ〜１００ｄの動作を規定する動作パラメータを設定する。ここで、マスタ装置１００ａは、図２及び図３（ａ）にパケットフォーマットを示す読出しの制御コマンドパケット（ＣＣＭＤ）により、スレーブ装置１００ｂ〜１００ｄの夫々の動作パラメータを取得し、適切な動作パラメータの値を決定し、図２及び図３（ａ）にパケットフォーマットを示す書込みの制御コマンドパケット（ＣＣＭＤ）により、各スレーブ装置１００ｂ〜１００ｄの夫々に決定した動作パラメータの値を設定する。
【０１０３】
マスタ装置１００ａは、データコマンド送信ステップにおいて、データ転送を開始するために、通信相手のスレーブ装置宛に、図２及び図３（ｂ）にパケットフォーマットを示すデータコマンドパケット（ＤＣＭＤ）の送信を行う（ステップＳ１０１）。このとき、スレーブ装置１００ｂ〜１００ｄは、データコマンド受信待ちステップにあり、パケットを受信し、バイパス制御部７５２により、受信パケットのヘッダのパケットタイプ２１０と宛先ＩＤ２１１とに基づいて受信パケットが自装置宛のデータコマンドパケット（ＤＡＴＡ）であるか判定する（ステップＳ２０１）。
【０１０４】
スレーブ装置１００ｂ〜１００ｄは、自装置宛のデータコマンドパケットを受信すると（Ｓ２０１：Ｙｅｓ）、レスポンス送信ステップにおいて、マスタ装置１００ａ宛に、図２及び図３（ｃ）にパケットフォーマットを示すレスポンスパケット（ＲＥＳ）の送信を行い（ステップＳ２０２）、ステップＳ２０３の処理に移行する。ステップＳ１０１でデータコマンドパケットの送信を行ったマスタ装置１００ａは、レスポンス受信待ちステップにあり、データコマンドパケットの宛先のスレーブ装置（通信相手のスレーブ装置）から送信されたレスポンスパケットを受信し（ステップＳ１０２）、ステップＳ１０３の処理に移行する。これにより、マスタ装置１００ａとデータコマンドの宛先のスレーブ装置（通信相手のスレーブ装置）との間でコマンド−レスポンスのハンドシェークが成立する。以降、マスタ装置１００ａと通信相手のスレーブ装置は、それぞれステップＳ１０３〜Ｓ１１２とステップＳ２０３〜２１２に示した対称的なプロトコルによりデータバーストの送信又は受信を行う。
【０１０５】
通信相手以外のスレーブ装置は、データコマンド受信待ちステップにおいて他装置宛のパケットを受信することになり、他装置宛のパケットを受信すると（Ｓ２０１：Ｎｏ）、中継処理ステップにて、他装置宛のパケットの中継処理などを行い（ステップ２１３）、ステップＳ２０１の処理に戻る。なお、ステップＳ２１３の中継処理ステップの詳細については図１０を参照して後述する。
【０１０６】
マスタ装置１００ａと通信相手のスレーブ装置との間で、コマンド−レスポンスのハンドシェークが成立した後、マスタ装置１００ａは、データ送信側判定ステップにおいて、通信相手のスレーブ装置との間で交換したデータコマンドパケットのＲ／Ｗフラグ３１０に応じて、自装置がデータバーストの送信側であるかを判定する（ステップＳ１０３）。また、通信相手のスレーブ装置は、データ送信側判定ステップにおいて、マスタ装置１００ａとの間で交換したデータコマンドパケットのＲ／Ｗフラグ３１０に応じて、自装置がデータバーストの送信側であるかを判定する（ステップＳ２０３）。ここで、Ｒ／Ｗフラグ３１０が書込みの設定であった場合、マスタ装置１００ａは自装置がデータバーストの送信側であると判定し、通信相手のスレーブ装置は自装置がデータバーストの送信側ではない（データバーストの受信側である）と判定する。一方、Ｒ／Ｗフラグ３１０が読出しであった場合、マスタ装置１００ａは自装置がデータバーストの送信側ではない（データバーストの受信側である）と判定し、通信相手のスレーブ装置は自装置がデータバーストの送信側であると判定する。
【０１０７】
マスタ装置１００ａは、自装置がデータバーストの送信側であると判定した場合（Ｓ１０３：Ｙｅｓ）、ステップＳ１０４〜Ｓ１０７に従ってデータバーストの送信を行い、通信相手のスレーブ装置は、自装置がデータバーストの受信側であると判定した場合（Ｓ２０３：Ｎｏ）、ステップＳ２０８〜Ｓ２１１に従ってデータバーストの受信を行う。一方、マスタ装置１００ａは、自装置がデータバーストの受信側であると判定した場合（Ｓ１０３：Ｎｏ）、ステップＳ１０８〜Ｓ１１１に従ってデータバーストの受信を行い、通信相手のスレーブ装置は、自装置がデータバーストの送信側であると判定した場合（Ｓ２０３：Ｙｅｓ）、ステップＳ２０４〜Ｓ２０７に従ってデータバーストの送信を行う。なお、本実施の形態におけるフロー制御は、固定サイズのウインドウ方式を用いることとし、そのウインドウサイズは初期設定ステップ（Ｓ１００、Ｓ２００）にてマスタ装置１００ａとスレーブ装置１００ｂ〜１００ｄとの間で共有されていることとするが、これ以外であってもよい。
【０１０８】
以下、マスタ装置１００ａがデータバーストの送信側であり、通信相手のスレーブ装置がデータバーストの受信側である場合の処理を記載する。
【０１０９】
マスタ装置１００ａは、送信要求ステップにおいて、ウインドウサイズ分のデータ送信準備を行い、データ送信準備の完了後、フロー制御の送信要求として、通信相手のスレーブ装置宛に、図２及び図３（ｅ）にパケットフォーマットを示すフロー制御リクエスト（ＦＣＲＥＱ）のメッセージパケットを送信する（ステップＳ１０４）。通信相手のスレーブ装置は、送信要求待ちステップにおいて、ウインドウサイズ分のデータ受信準備を行い、マスタ装置１００ａから送信されたフロー制御の送信要求を示すフロー制御リクエストのメッセージパケットを受信する（ステップＳ２０８）。
【０１１０】
通信相手のスレーブ装置は、フロー制御リクエストのメッセージパケットを受信し、ウインドウサイズ分のデータ受信準備の完了後、送信応答ステップにおいて、フロー制御の送信応答として、マスタ装置１００ａ宛に、図２及び図３（ｅ）にパケットフォーマットを示すフロー制御レディ（ＦＣＲＤＹ）のメッセージパケットを送信する（ステップＳ２０９）。マスタ装置１００ａは、送信応答待ちステップにあり、通信相手のスレーブ装置から送信されたフロー制御の送信応答を示すフロー制御レディのメッセージパケットを受信する（ステップＳ１０５）。
【０１１１】
フロー制御レディのメッセージパケットを受信したマスタ装置１００ａは、データバースト送信ステップにおいて、データバーストの送信を行う（ステップＳ１０６）。そして、通信相手のスレーブ装置は、データバースト受信ステップにおいて、マスタ装置１００ａから送信されたデータバーストの受信を行い、図６（ｂ）に示すフレーミングルールに違反していないか（すなわちフレーミングエラーの有無）、或いは各データパケット６２０についてのＣＲＣ６１１にエラーがないか（すなわちＣＲＣエラーの有無）を確認する（ステップＳ２１０）。通信相手のスレーブ装置は、ステータス通知ステップにおいて、マスタ装置１００ａ宛に、それらエラーの有無を図２及び図３（ｅ）にパケットフォーマットを示すステータス（ＳＴＡＴ）のメッセージパケットに含めて送信する（ステップＳ２１１）。マスタ装置１００ａは、ステータス通知待ちステップにあり、通信相手のスレーブ装置から送信されたステータスのメッセージパケットを受信する（ステップＳ１０７）。
【０１１２】
マスタ装置１００ａは、コマンド完了判定ステップにおいて、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送を完了したか判定する（ステップＳ１１２）。マスタ装置１００ａは、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送を完了していない場合（Ｓ１１２：Ｎｏ）、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送が完了するまで、ステップＳ１０３、ステップＳ１０４〜Ｓ１０７、ステップＳ１１２の処理を繰り返す。そして、マスタ装置１００ａは、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送が完了すると（Ｓ１１２：Ｙｅｓ）、ステップＳ１０１で送信したデータコマンドパケットに関するデータバースト転送処理を終了する。
【０１１３】
通信相手のスレーブ装置は、コマンド完了判定ステップにおいて、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送を完了したか判定する（ステップＳ２１２）。通信相手のスレーブ装置は、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送を完了していない場合（Ｓ２１２：Ｎｏ）、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送が完了するまで、ステップＳ２０３、ステップＳ２０８〜Ｓ２１１、ステップＳ２１２の処理を繰り返す。そして、通信相手のスレーブ装置は、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送が完了すると（Ｓ２１２：Ｙｅｓ）、ステップＳ２０１で受信したデータコマンドパケットに関するデータバースト転送処理を終了する。
【０１１４】
以下、マスタ装置１００ａがデータバーストの受信側であり、通信相手のスレーブ装置がデータバーストの送信側である場合の処理を記載する。
【０１１５】
通信相手のスレーブ装置は、送信要求ステップにおいて、ウインドウサイズ分のデータ送信準備を行い、データ送信準備の完了後、フロー制御の送信要求として、マスタ装置１００ａ宛に、図２及び図３（ｅ）にパケットフォーマットを示すフロー制御リクエスト（ＦＣＲＥＱ）のメッセージパケットを送信する（ステップＳ２０４）。マスタ装置１００ａは、送信要求待ちステップにおいて、ウインドウサイズ分のデータ受信準備を行い、通信相手のスレーブ装置から送信されたフロー制御の送信要求を示すフロー制御リクエストのメッセージパケットを受信する（ステップＳ１０８）。
【０１１６】
マスタ装置１００ａは、フロー制御リクエストのメッセージパケットを受信し、ウインドウサイズ分のデータ受信準備の完了後、送信応答ステップにおいて、フロー制御の送信応答として、通信相手のスレーブ装置宛に、図２及び図３（ｅ）にパケットフォーマットを示すフロー制御レディ（ＦＣＲＤＹ）のメッセージパケットを送信する（ステップＳ１０９）。通信相手のスレーブ装置は、送信応答待ちステップにあり、マスタ装置１００ａから送信されたフロー制御の送信応答を示すフロー制御レディのメッセージパケットを受信する（ステップＳ２０５）。
【０１１７】
フロー制御レディのメッセージパケットを受信した通信相手のスレーブ装置は、データバースト送信ステップにおいて、データバーストの送信を行う（ステップＳ２０６）。そして、マスタ装置１００ａは、データバースト受信ステップにおいて、通信相手のスレーブ装置から送信されたデータバーストの受信を行い、図６（ｂ）に示すフレーミングルールに違反していないか（すなわちフレーミングエラーの有無）、或いは各データパケット６２０についてのＣＲＣ６１１にエラーがないか（すなわちＣＲＣエラーの有無）を確認する（ステップＳ１１０）。マスタ装置１００ａは、ステータス通知ステップにおいて、通信相手のスレーブ装置宛に、それらエラーの有無を図２及び図３（ｅ）にパケットフォーマットを示すステータス（ＳＴＡＴ）のメッセージパケットに含めて送信する（ステップＳ１１１）。通信相手のスレーブ装置は、ステータス通知待ちステップにあり、マスタ装置１００ａから送信されたステータスのメッセージパケットを受信する（ステップＳ２０７）。
【０１１８】
通信相手のスレーブ装置は、コマンド完了判定ステップにおいて、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送を完了したか判定する（ステップＳ２１２）。通信相手のスレーブ装置は、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送を完了していない場合（Ｓ２１２：Ｎｏ）、データコマンドパケットの転送サイズ３１２で指定されたデータサイズ分のデータ転送が完了するまで、ステップＳ２０３、ステップＳ２０４〜Ｓ２０７、ステップＳ２１２の処理を繰り返す。そして、通信相手のスレーブ装置は、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送が完了すると（Ｓ２１２：Ｙｅｓ）、ステップＳ２０１で受信したデータコマンドパケットに関するデータバースト転送処理を終了する。
【０１１９】
マスタ装置１００ａは、コマンド完了判定ステップにおいて、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送を完了したか判定する（ステップＳ１１２）。マスタ装置１００ａは、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送を完了していない場合（Ｓ１１２：Ｎｏ）、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送が完了するまで、ステップＳ１０３、ステップＳ１０８〜Ｓ１１１、ステップＳ１１２の処理を繰り返す。そして、マスタ装置１００ａは、データコマンドパケットの転送サイズ３１２で指定したデータサイズ分のデータ転送が完了すると（Ｓ１１２：Ｙｅｓ）、ステップＳ１０１で送信したデータコマンドパケットに関するデータバースト転送処理を終了する。
【０１２０】
以下、マスタ装置１００ａと通信相手のスレーブ装置との間における書込みと読出しのデータコマンドの処理シーケンスについて図１１及び図１２を参照しつつ説明する。図１１は、図１のマスタ装置１００ａと通信相手のスレーブ装置との間における書込みのデータコマンドの処理シーケンスの一例を示す図であり、図１２は、図１のマスタ装置１００ａと通信相手のスレーブ装置との間における読出しのデータコマンドの処理シーケンスの一例を示す図である。
【０１２１】
ここで、書込みと読出しの何れに依らず、フロー制御リクエスト（ＦＣＲＥＱ）のメッセージパケットの送信完了からデータバーストの送信開始までの期間をプレギャップ１１００、１２００とし、データバーストの送信完了からステータス（ＳＴＡＴ）のメッセージパケットの受信完了までの期間をポストギャップ１１０１、１２０１とし、それ以外の送信パケット間隔をパケットギャップ１１０２、１２０２として識別する。
【０１２２】
リンクコントローラ７０２のシンボル生成部７５６は、プレギャップ１１００、１２００、ポストギャップ１１０１、１２０１、及びパケットギャップ１１０２、１２０２のように送信パケットが無い期間、下記に記載するＰＨＹ７０１への送信指示を行う。
【０１２３】
シンボル生成部７５６は、プレギャップ１１００、１２００とポストギャップ１１０１、１２０１とにおいて、第１のアイドルフレームとして図５に示すＤＩＤＬの制御シンボルセット（これは、シンボル同期のためのＣＯＭシンボルで始まり、アイドルシンボルとしてのＤＩＤＬシンボルを含む。）の送信指示をＰＨＹ７０１に対して繰り返し行う。例えば、シンボル生成部７５６は、この送信指示を、シンボル同期用のＣＯＭシンボル（元データ）で始まり、アイドルシンボルであるＤＩＤＬシンボル（元データ）を含む制御シンボルセットをＰＨＹ７０１に受け渡すことにより行う。
【０１２４】
一方、パケットギャップ１１０２、１２０２において、シンボル生成部７５６は、初期設定ステップ（Ｓ１００、Ｓ２００）にて設定した省電力設定に応じて、第２のアイドルフレームの送信指示をＰＨＹ７０１に繰り返し行い、又は、シリアル送信部７１４の動作を停止させるための送信ディセーブル指示をＰＨＹ７０１に対して行う。省電力設定が無効に設定された場合、シンボル生成部７５６は、第２のアイドルフレームとして図５に示すＬＩＤＬの制御シンボルセット（これは、シンボル同期のためのＣＯＭシンボルで始まり、アイドルシンボルとしてのＬＩＤＬシンボルを含む。）の送信指示をＰＨＹ７０１に対して繰り返し行う。例えば、シンボル生成部７５６は、この送信指示を、シンボル同期用のＣＯＭシンボル（元データ）で始まり、アイドルシンボルであるＬＩＤＬシンボル（元データ）を含む制御シンボルセットをＰＨＹ７０１に受け渡すことにより行う。また、省電力設定が有効に設定された場合、シンボル生成部７５６は、シリアル送信部７１４の動作を停止させるための送信ディセーブル指示をＰＨＹ７０１に対して行い、シリアルリンクを電気的アイドル状態とする。なお、この場合、パケットギャップ１１０２、１２０２を抜けて再びパケット送信を行う前に、電気的アイドル状態とすることで失われたシンボル同期を回復するために、図５に示すＳＹＮの制御シンボルセットを所定期間繰り返して送信する必要がある。
【０１２５】
上記では、マスタ装置１００ａとマスタ装置１００ａの通信相手のスレーブ装置との間のパケットの送受信について説明してきたが、通信相手以外のスレーブ装置は送受信されるパケットを中継処理することによって、それを宛先のノード装置まで伝達する必要がある。以下では、通信相手以外のスレーブ装置の動作について図１０を参照しつつ説明する。
【０１２６】
スレーブ装置１００ｂ〜１００ｄは、上述したように、図９のデータコマンド受信待ちステップにおいて、他装置宛のパケットを受信すると（Ｓ２０１：Ｎｏ）、図１０に詳細を示すステップＳ２１３の中継処理ステップに移行する。
【０１２７】
図１０は、図９の中継処理ステップＳ２１３の詳細を示すフローチャートである。
【０１２８】
他装置宛のパケットを受信したスレーブ装置（通信相手以外の通信装置）では、パケット中継ステップにおいて、リンクコントローラ７０２のバイパスセレクタ７５５は、バイパス制御部７５２の判定結果に基づいて、バイパス経路７５８経由で入力される受信パケットを選択して出力し、これによって、受信パケットの中継を行う（ステップＳ３００）。
【０１２９】
パケット種別判定ステップにおいて、通信相手以外の通信装置は、中継処理した受信パケットが、送信要求を示すフロー制御リクエストのメッセージパケットであるかを、そのヘッダのパケットタイプ２１０に基づいて、バイパス制御部７５２によって、判定する（ステップＳ３０１）。通信相手以外の通信装置は、中継処理した受信パケットが送信要求を示すフロー制御リクエストのメッセージパケットである場合（Ｓ３０１：Ｙｅｓ）、ステップ３０２の処理に進み、フロー制御リクエスト以外のパケットである場合（Ｓ３０１：Ｎｏ）には中継処理を終了し、図９のステップＳ２０１に戻る。
【０１３０】
バイパス経路７５８を用いたフロー制御リクエストのメッセージパケットの中継後、図１１に示すプレギャップ１１００又は図１２に示すプレギャップ１２００になる。このため、ループバック移行ステップにおいて、通信相手以外のスレーブ装置では、シンボル生成部７５６がＰＨＹ７０１に対して第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの送信指示を行うことによって、通信相手以外のスレーブ装置は、第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの送信を開始し、第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの送信を繰り返す。そして、通信相手以外のスレーブ装置では、ループバック制御部７５７がループバックセクレタ７１３に対して通常モードからループバックモードへの移行を指示し、ループバックセレクタ７１３はパラレル送信データからパラレルループバックデータに出力を切替える（ステップＳ３０２）。
【０１３１】
ここで、ループバックセレクタ７１３のループバックモード移行前後における出力の切替えタイミングについて図１３を参照しつつ説明する。図１３は、図７のループバックセレクタ７１３のループバックモード移行前後における出力の切替えタイミングを示す図である。
【０１３２】
フロー制御リクエストのメッセージパケットの中継処理を完了するまでのパケットギャップでは、ループバックセレクタ７１３からの出力は、例えば、ＬＩＤＬの制御シンボルセット１３０１のような第２のアイドルフレーム（符号化部７１２の出力）である。そして、フロー制御リクエストのメッセージパケット１３０２の中継出力後のプレギャップでは、第１のアイドルフレームであるＤＩＤＬの制御シンボルセット１３０３（符号化部７１２の出力）がループバックセレクタ７１３から出力される。
【０１３３】
ループバックセレクタ７１３は、フロー制御リクエストのメッセージパケットの中継出力後に通常モードからループバックモードへの移行指示をループバック制御部７５７から受けると、出力をパラレル送信データからパラレルループバックデータに切替えてループバックモードに移行し、ループバック経路７１５を介して折り返されたＤＩＤＬの制御シンボルセット１３０４の出力を開始する。ここで、パラレル送信データとパラレルループバックデータとの間で、ＣＯＭシンボルの位置が１シンボル分ずれていた場合、ループバックセレクタ７１３内でパラレルループバックデータを１シンボル分遅延させてから出力の切替えを行えばよい。
【０１３４】
また、図４に示すように、本実施の形態１のＬＩＤＬシンボルとＤＩＤＬシンボルの各シンボルは、ＣＯＭシンボルと同様に、いずれも“０”と“１”の数が異なるＵｎｂａｌａｎｃｅｄシンボルである。このため、図５に示すような制御シンボルセットをアイドルフレームとして連続的に送信する場合、ＣＯＭシンボルによって反転されたランニング・ディスパリティは後続のＬＩＤＬシンボルやＤＩＤＬシンボルによって元に戻り、結果的にアイドルフレームのランニング・ディスパリティは常に維持されることになる。ここで、初期化後のパケットギャップにおいて送信するアイドルフレームのランニング・ディスパリティを、“ＲＤ−”か“ＲＤ＋”のいずれかに統一させると、伝送するパケット依存で、以降のアイドルフレームのランニング・ディスパリティは変化するが、同一パケットの伝送経路におけるアイドルフレームのランニング・ディスパリティは一致することになる。ゆえに、マスタ装置１００ａと通信相手のスレーブ装置との間で、データコマンド（ＤＣＭＤ）やレスポンス（ＲＥＳ）等を中継する通信相手以外のスレーブ装置において、受信するアイドルフレームと送信するアイドルフレームのランニング・ディスパリティは一致する。これにより、ＣＯＭシンボルの位置を合わせるのみで、ループバックセレクタ７１３の出力の切替え前後のシンボル同期及びランニング・ディスパリティを維持することができる。
【０１３５】
なお、ＬＩＤＬの制御シンボルセットやＤＩＤＬの制御シンボルセットは、図５に示した定義に限定されず、第２シンボルとして“０”と“１”の数が等しいＢａｌａｎｃｅｄシンボルについても選択可能とし、ＵｎｂａｌａｎｃｅシンボルとＢａｌａｎｃｅｄシンボルのいずれかをランダム順で切替えながら出力してもよい。このような場合、連続するＬＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティと連続するＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティが夫々ランダム順で切替わるため、周期的な信号パターンによるＥＭＩ（Ｅｌｅｃｔｒｏ−Ｍａｇｎｅｔｉｃ  Ｉｎｔｅｒｆｅｒｅｎｃｅ）ノイズを軽減することができる。
【０１３６】
このように、ＬＩＤＬの制御シンボルセットとＤＩＤＬの制御シンボルセットの何れのＣＯＭシンボルのランニング・ディスパリティについてもランダム順で切替わるように定義した場合、ループバックセレクタ７１３は、パラレル送信データのＤＩＤＬの制御シンボルセットとパラレルループバックデータのＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティが一致したタイミングで出力切替えを行う必要がある。しかしながら、それらＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティは、互いにランダム順で切替わるため、一致するタイミングを保証することができない。そこで、図１４に示すように、ループバック経路７１５Ａを復号化部７１１の後段に設けるようにしても良い。この場合のループバックセレクタ７１３Ａは、復号済みのパラレルループバックデータとシンボル生成部７５６から入力される符号化前のパラレル送信データ（リンクコントローラからＰＨＹに入力される送信Ｒａｗデータ）との間で出力切替えを行い、ループバックセレクタ７１３Ａの出力を符号化部７１２Ａに入力するようにし、符号化部７１２Ａはループバックセレクタ７１３Ａの出力に対して８ｂ／１０ｂ方式に基づく符号化を行う。但し、符号化前のパラレル送信データと復号済みのパラレルループバックデータとの間でＣＯＭシンボルの位置が１シンボル分ずれていた場合、ループバックセレクタ７１３Ａ内で復号済みのパラレルループバックデータを１シンボル分遅延させてから出力の切替えを行えばよい。この場合、ランニング・ディスパリティは常に符号化部７１２Ａで管理されるため、ランニング・ディスパリティの連続性に関する考慮が不要となる。
【０１３７】
次に、通信相手以外のスレーブ装置は、データバースト中継ステップにおいて、ループバックモードを維持しつつ、ループバック経路７１５を介したデータバーストの中継を行う（ステップＳ３０３）。このデータバースト中継ステップでは、通信相手以外のスレーブ装置は、リンクコントローラ７０２の介在なしにデータバーストの中継処理を行うが、通信相手以外のスレーブ装置におけるシンボル検知部７５１は動作を継続しており、データバーストの終端を示すＥＤＢシンボルの検出処理を行う。そして、シンボル検知部７５１がＥＤＢシンボルを検出すると、ステップＳ３０４の通常モード復旧ステップに移行する。
【０１３８】
通常モード復旧ステップにおいて、ＥＤＢシンボルを検出した通信相手以外のスレーブ装置では、ＥＤＢシンボル検出後は図１１に示すポストギャップ１１０１又は図１２に示すポストギャップ１２０１となるため、シンボル生成部７５６がＰＨＹ７０１に対して第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの送信指示を行い、これによって、符号化部７１２は、第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの出力を開始し、第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットの出力を繰り返す。そして、通信相手以外のスレーブ装置では、ループバック制御部７５７はループバックセレクタ７１３に対してループバックモードから通常モードへの復旧指示を行い、ループバックセレクタ７１３はパラレルループバックデータからパラレル送信データに出力を切替え、符号化部７１２から出力される第１のアイドルフレームとしてのＤＩＤＬの制御シンボルセットがシリアルリンクに出力される（ステップＳ３０４）。
【０１３９】
ここで、ループバックセレクタ７１３の通常モード復旧前後における出力の切替えタイミングについて図１５を参照しつつ説明する。図１５は、図７のループバックセレクタ７１３の通常モード復旧前後における出力の切替えタイミングを示す図である。
【０１４０】
シンボル検知部７５１は、復号化部７１１の入力からＥＤＢシンボルを検出すると、ループバック制御部７５７とシンボル生成部７５６に対してＥＤＢシンボルを検出したことを通知する。それにより、ループバック制御部７５７は、ループバックセレクタ７１３に対して、通常モードからループバックモードへの復旧指示を行う。また、シンボル生成部７５６は、符号化部７１２に対して、ＣＯＭシンボルがＥＤＢシンボル検出後のＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルと同じランニング・ディスパリティを有するＤＩＤＬの制御シンボルセットの送信指示を行い、符号化部７１２はシンボル生成部７５６からの送信指示に従い、ＣＯＭシンボルがＥＤＢシンボル検出後のＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルと同じランニング・ディスパリティを有するＤＩＤＬの制御シンボルセットの出力を行う。ループバックセレクタ７１３は、ループバック経路７１５を介して入力されるＥＤＢの制御シンボルセット１５０１及びＤＩＤＬの制御シンボルセット１５０２の中継出力を行った後、ループバック制御部７５７から復旧指示を受けると、出力をパラレルループバックデータからパラレル送信データに切替えて通常モードに復旧する。そして、通信相手以外のスレーブ装置は、符号化部７１２で生成されたＤＩＤＬの制御シンボルセット１５０３のシリアルリンクへの出力を開始する。ここで、パラレルループバックデータとパラレル送信データとの間でＣＯＭシンボルの位置が１シンボル分ずれていた場合、ループバックセレクタ７１３内でパラレル送信データを１シンボル分遅延させてから出力を切替えればよい。また、符号化部７１２が出力するＤＩＤＬの制御シンボルセット１５０２は、ループバックモードで中継出力するＤＩＤＬの制御シンボルセット１５０３と同じランニング・ディスパリティを有するため、ループバックセレクタ７１３の出力切替え前後のランニング・ディスパリティの連続性が維持される。
【０１４１】
以下に、シンボル生成部７５６が符号化部７１２に対してＣＯＭシンボルがＥＤＢシンボル検出後のＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルと同じランニング・ディスパリティを有するＤＩＤＬの制御シンボルセットの送信指示を行う仕組みの一例を記載する。
【０１４２】
復号化部７１１は、ランニング・ディスパリティ（“ＲＤ＋”か“ＲＤ−”）を管理しており、復号結果とともに復号後のランニング・ディスパリティをシンボル検知部７５１へ出力する。シンボル検知部７５１は、復号化部７１１の入力からＥＤＢシンボルを検出すると、ＥＤＢシンボルを検出したことと、ＥＤＢシンボル復号後のランニング・ディスパリティをシンボル生成部７５６に通知する。シンボル生成部７５６は、ＥＤＢシンボルを検出したことの通知を受けると、符号化部７１２に対してＥＤＢシンボル復号後のランニング・ディスパリティを含めたＤＩＤＬの制御シンボルセットの送信指示を行う。符号化部７１２は、管理しているランニング・ディスパリティを通知されたランニング・ディスパリティに置き換えて８ｂ／１０ｂ方式に基づく符号化を行い、ループバックセレクタ７１３へのＤＩＤＬの制御シンボルセットの出力を行う。
【０１４３】
なお、図１４で示した構成と同様に、ループバックセレクタ７１３Ａを復号化部７１１の後段に設け、ループバックセレクタ７１３Ａの出力を符号化部７１２Ａに入力する構成とした場合、通常モードへの復旧前後でのループバックモード出力でのＤＩＤＬの制御シンボルセットと通常モード出力でのＤＩＤＬの制御シンボルセットにおけるシンボルのランニング・ディスパリティの連続性を維持するための考慮は不要となる。
【０１４４】
ポストギャップ完了待ちステップにおいて、通信相手以外のスレーブ装置のシンボル検知部７５１が、受信シンボルが、ポストギャップのＤＩＤＬの制御シンボルセットから、パケットギャップのＬＩＤＬの制御シンボルセット又は電気的アイドル状態に切替わったことを検出する。この検出を受けて、シンボル生成部７５６は、ＰＨＹ７０１に対する指示を、ＤＩＤＬの制御シンボルセットの送信指示から、ＬＩＤＬの制御シンボルの送信指示或いは電気的なアイドル状態とするための送信ディセーブル指示に切替える（ステップＳ３０５）。図１５の例においては、シリアル受信部７１０からの出力がポストギャップのＤＩＤＬの制御シンボルセット１５１１からパケットギャップのＬＩＤＬの制御シンボルセット１５１２への変化をシンボル検知部７５１が検出すると、それ以降、通常モードにおけるシンボル生成部７５６からの出力も、ＤＩＤＬの制御シンボルセットからＬＩＤＬの制御シンボルセットに切り替わることになる。
【０１４５】
なお、通常モード復旧ステップ（ステップＳ３０４）にて、伝送エラー等によってＥＤＢシンボルを検出できなかった場合、ループバックモードから通常モードへの復旧ができず、以降はパケットを受信できなくなる。これを回避するため、ＥＤＢシンボルを検出できなかった場合も、ＤＩＤＬの制御シンボルセットからＬＩＤＬの制御シンボルセットあるいは電気的アイドル状態への入力変化を検知すると、ループバック制御部７５７はループバックセレクタ７１３に対してループバックモードから通常モードへの復旧指示を行うことが望ましく、このようにしてもよい。
【０１４６】
＜リング伝送システムの全体動作＞
以下では、図１に示すリング伝送システムの全体動作について、図１６及び図１７を参照しつつ説明する。
【０１４７】
図１６は図１に示すリング伝送システムの書込みのデータコマンド処理の全体動作を示す図であり、図１７は図１に示すリング伝送システムの読出しのデータコマンド処理の全体動作を示す図である。
【０１４８】
図１６及び図１７において、ノード装置１００ａ〜１００ｄは、夫々、デバイスＩＤとして“０”〜“３”が割り当てられているものとする。
【０１４９】
また、マスタ装置であるノード装置１００ａ（デバイスＩＤ＝０）との間でデータ転送を行うスレーブ装置（データコマンドの宛先ＩＤ２１１で指定されるノード装置）をノード装置１００ｃ（デバイスＩＤ＝２）とする。故に、スレーブ装置１００ｂ（デバイスＩＤ＝１）とスレーブ装置１００ｄ（デバイスＩＤ＝３）は、ノード装置１００ａ（マスタ装置）とノード装置１００ｃ（通信相手のスレーブ装置）との間で送受信されるパケットの中継局となる。また、初期化設定ステップＳ１００、Ｓ２００にて、全てのノード装置１００ａ〜１００ｄの省電力設定が無効にされ、パケットギャップでは第２のアイドルフレームであるＬＩＤＬの制御シンボルセットを繰り返し送信するものとする。
【０１５０】
なお、図１６及び図１７における（“０”→“２”）は宛先ＩＤ２１１にデバイスＩＤ“２”が設定され、送信元ＩＤ２１２にデバイスＩＤ“０”が設定されたパケットであることを示し、（“２”→“０”）は宛先ＩＤ２１２にデバイスＩＤ“０”が設定され、送信元ＩＤ２１２にデバイスＩＤ“２”が設定されたパケットであることを示す。
【０１５１】
〔書込みのデータコマンド処理〕
まず、図１６に示した書込みのデータコマンドに関する図１のリング転送システムの全体動作について説明する。
【０１５２】
（時刻Ｔ１〜時刻Ｔ２）
ノード装置１００ａ〜１００ｄは、パケットギャップにおいて、第２のアイドルフレームであるＬＩＤＬの制御シンボルセットの送信を繰り返して行っている。ノード装置１００ａは、データコマンド送信ステップにある時刻Ｔ１において、ノード装置１００ｃ宛に、書込みのデータコマンドパケット（ＤＣＭＤ）を送信する。このデータコマンドパケットはシリアルリンク１０１ａを介してノード装置１００ｂに入力される。なお、データコマンドパケット送信後はパケットギャップであるので、ノード装置１００ａはＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１５３】
データコマンド受信待ちステップにあるノード装置１００ｂは、データコマンドパケットを受信し、受信したデータコマンドパケットが他装置（ノード装置１００ｃ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いて他装置宛のデータコマンドパケットの中継処理を行う。この中継処理されたデータコマンドパケットはシリアルリンク１０１ｂを介してノード装置１００ｃに入力される。ノード装置１００ｂは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、データコマンドパケット中継後はパケットギャップであるので、ノード装置１００ｂはＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１５４】
データコマンド受信待ちステップにあるノード装置１００ｃは、データコマンドパケットを受信し、受信したデータコマンドパケットが自装置宛であると判定し、レスポンス送信ステップにて、ノード装置１００ａ宛にレスポンスパケット（ＲＥＳ）を送信する。このレスポンスパケットはシリアルリンク１０１ｃを介してノード装置１００ｄに入力される。なお、レスポンス送信後はパケットギャップであるので、ノード装置１００ｃはＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１５５】
データコマンド受信待ちステップにあるノード装置１００ｄは、レスポンスパケットを受信し、受信したレスポンスパケットが他装置（ノード装置１００ａ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いて他装置宛のレスポンスパケットの中継処理を行う。この中継処理されたレスポンスパケットはシリアルリンク１０１ｄを介してノード装置１００ａに入力される。ノード装置１００ｄは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、レスポンスパケット中継後はパケットギャップであるので、ノード装置１００ｄはＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１５６】
レスポンス受信待ちステップにあるノード装置１００ａは、レスポンスパケットを受信する。
【０１５７】
（時刻Ｔ２〜時刻Ｔ３）
データ送信側判定ステップにおいて、レスポンスパケットを受信したノード装置１００ａは自装置がデータバーストの送信側であると判定し、通信相手のノード装置１００ｃは自装置がデータバーストの送信側でない（自装置がデータバーストの受信側である）と判定する。
【０１５８】
ノード装置１００ａは、送信要求ステップにおいて、データ送信準備を開始し、データ送信準備ができた時刻Ｔ２において、ノード装置１００ｃ宛に送信要求を示すフロー制御リクエスト（ＦＣＲＥＱ）のメッセージパケットを送信する。このフロー制御リクエストのメッセージパケットはシリアルリンク１０１ａを介してノード装置１００ｂに入力される。フロー制御リクエストのメッセージパケット送信後はプレギャップであるので、ノード装置１００ａはＤＩＤＬの制御シンボルセットを繰り返し送信する。
【０１５９】
データコマンド受信待ちステップにあるノード装置１００ｂは、フロー制御リクエストのメッセージパケットを受信し、受信したフロー制御リクエストのメッセージパケットが他装置（ノード装置１００ｃ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてフロー制御リクエストのメッセージパケットの中継処理を行う。この中継処理されたフロー制御リクエストのメッセージパケットはシリアルリンク１０１ｂを介してノード装置１００ｃに入力される。ノード装置１００ｂは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットであると判定する。そして、ノード装置１００ｂは、ループバック移行ステップに移行し、フロー制御リクエストのメッセージパケットの中継処理後のプレギャップにおいて、通常モードからループバックモードに移行する。ノード装置１００ｂは、フロー制御リクエストのメッセージパケット中継後、ループバックモードに切替わる前までのプレギャップでは自装置で生成したＤＩＤＬの制御シンボルセットをシリアルリンク１０１ｂに繰り返し出力し、ループバックモードに切り替わった後のプレギャップではループバック経路７１５を用いてＤＩＤＬの制御シンボルセットをシリアルリンク１０１ｂに中継出力する。
【０１６０】
送信要求待ちステップにあるノード装置１００ｃは、送信要求を示すフロー制御リクエストのメッセージパケットを受信し、データ受信準備ができると、送信応答ステップにて、ノード装置１００ａ宛に送信応答を示すフロー制御レディ（ＦＣＲＤＹ）のメッセージパケットを送信する。このフロー制御レディのメッセージパケットは、シリアルリンク１０１ｃを介してノード装置１００ｄに入力される。なお、フロー制御レディのメッセージパケット送信後はパケットギャップであるので、ノード装置１００ｃは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１６１】
データコマンド受信待ちステップにあるノード装置１００ｄは、フロー制御レディのメッセージパケットを受信し、受信したフロー制御レディのメッセージパケットが他装置（ノード装置１００ａ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてフロー制御レディのメッセージパケットの中継処理を行う。この中継処理されたフロー制御レディのメッセージパケットはシリアルリンク１０１ｄを介してノード装置１００ａに入力される。ノード装置１００ｄは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、フロー制御レディのメッセージパケット中継後はパケットギャップであるので、ノード装置１００ｄは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１６２】
送信応答待ちステップにあるノード装置１００ａは、送信応答を示すフロー制御レディのメッセージパケットを受信する。
【０１６３】
（時刻Ｔ３〜時刻Ｔ４）
送信応答を示すフロー制御レディのメッセージパケットを受信したノード装置１００ａは、データバースト送信ステップにおいて、時刻Ｔ３からデータバーストの送信を開始する。このデータバーストはシリアルリンク１０１ａを介してノード装置１００ｂに入力される。なお、データバーストの送信完了後はポストギャップであるので、ノード装置１００ａは、ＤＩＤＬの制御シンボルセットの送信を繰り返す。
【０１６４】
ループバックモードにあるノード装置１００ｂは、データバースト中継ステップにおいて、ＰＨＹ７０１のループバック経路７１５を用いたデータバーストの中継処理を行う。この中継処理されたデータバーストはシリアルリンク１０１ｂを介してノード装置１００ｃに入力される。ノード装置１００ｂは、データバーストの終端を示すＥＤＢシンボル検知後のポストギャップでは、通常モード復旧ステップにてループバックモードから通常モードに復旧する。
【０１６５】
データバースト受信待ちステップにあるノード装置１００ｃはデータバーストの受信を開始する。
【０１６６】
（時刻Ｔ４〜時刻Ｔ５）
ノード装置１００ｃは、データバーストの受信を完了すると、ステータス通知ステップにおいて、その受信エラーを通知するため、ノード装置１００ａ宛にステータス（ＳＴＡＴ）のメッセージパケットを時刻Ｔ４に送信する。このステータスのメッセージパケットはシリアルリンク１０１ｃを介してノード装置１００ｄに入力される。なお、ステータスのメッセージパケット送信後はパケットギャップであるので、ノード装置１００ｃは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１６７】
データコマンド受信待ちステップにあるノード装置１００ｄは、ステータスのメッセージパケットを受信し、ステータスのメッセージパケットが他装置（ノード装置１００ａ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてステータスのメッセージパケットの中継処理を行う。この中継処理されたステータスのメッセージパケットはシリアルリンク１０１ｄを介してノード装置１００ａに入力される。ノード装置１００ｄは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、ステータスのメッセージパケット中継後はパケットギャップであるので、ノード装置１００ｄは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１６８】
（時刻Ｔ５〜時刻Ｔ６）
ステータス通知待ちステップにあるノード装置１００ａは、ステータスのメッセージパケットを受信し、ステータスのメッセージパケットを受信した時刻Ｔ５においてポストギャップを完了し、ＤＩＤＬの制御シンボルセットの送信から通常のパケットギャップのＬＩＤＬの制御シンボルセットの送信に切替える。
【０１６９】
ポストギャップ完了待ちステップにあるノード装置１００ｂは、シンボル検知部７５１によって、ＤＩＤＬの制御シンボルセットからＬＩＤＬの制御シンボルセットに切り替わったことを検知すると、ノード装置１００ｂでのポストギャップを完了し、ＤＩＤＬの制御シンボルセットの送信からＬＩＤＬの制御シンボルセットの送信に切替える。
【０１７０】
（時刻Ｔ６以降）
ノード装置１００ａは、コマンド完了判定ステップにおいて、データコマンドで指定した転送サイズ分のデータ転送が完了したと判定するまで、再び送信要求ステップに戻って時刻Ｔ２からの処理を繰り返す。
【０１７１】
〔読出しのデータコマンド処理〕
次に、図１７に示した読出しのデータコマンドに関する図１のリング転送システムの全体動作について説明する。
【０１７２】
（時刻Ｔ１〜時刻Ｔ２）
時刻Ｔ１〜時刻Ｔ２におけるリング伝送システムにおける動作は、書込みのコマンドが読出しのコマンドに変わった点を除くと、本発明に関連する部分では同様の動作となる。
【０１７３】
（時刻Ｔ２〜時刻Ｔ３）
データ送信側判定ステップにおいて、レスポンスパケットを受信したノード装置１００ａは自装置がデータ送信側でない（自装置がデータ受信側である）と判定し、通信相手のノード装置１００ｃは自装置がデータ送信側であると判定する。
【０１７４】
ノード装置１００ｃは、送信要求ステップにおいて、データ送信準備を開始し、データ送信準備ができた時刻Ｔ２において、ノード装置１００ａ宛に送信要求を示すフロー制御リクエスト（ＦＣＲＥＱ）のメッセージパケットを送信する。このフロー制御リクエストのメッセージパケットはシリアルリンク１０１ｃを介してノード装置１００ｄに入力される。フロー制御リクエストのメッセージパケット送信後はプレギャップであるので、ノード装置１００ｃはＤＩＤＬの制御シンボルセットを繰り返し送信する。
【０１７５】
データコマンド受信待ちステップにあるノード装置１００ｄは、フロー制御リクエストのメッセージパケットを受信し、受信したフロー制御リクエストのメッセージパケットが他装置（ノード装置１００ａ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてフロー制御リクエストのメッセージパケットの中継処理を行う。この中継処理されたフロー制御リクエストのメッセージパケットはシリアルリンク１０１ｄを介してノード装置１００ａに入力される。ノード装置１００ｄは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットであると判定する。そして、ノード装置１００ｄは、ループバック移行ステップに移行し、フロー制御リクエストのメッセージパケットの中継処理後のプレギャップにおいて、通常モードからループバックモードに移行する。ノード装置１００ｄは、フロー制御リクエストのメッセージパケットの中継後、ループバックモードに切替わる前までのプレギャップでは自装置で生成したＤＩＤＬの制御シンボルセットをシリアルリンク１０１ｄに繰り返し出力し、ループバックモードに切替わった後のプレギャップではループバック経路７１５を用いてＤＩＤＬの制御シンボルセットをシリアルリンク１０１ｄに中継出力する。
【０１７６】
送信要求待ちステップにあるノード装置１００ａは、送信要求を示すフロー制御リクエストのメッセージパケットを受信し、データ受信準備ができると、送信応答ステップにて、ノード装置１００ｃ宛に送信応答を示すフロー制御レディ（ＦＣＲＤＹ）のメッセージパケットを送信する。このフロー制御レディのメッセージパケットは、シリアルリンク１０１ａを介してノード装置１００ｂに入力される。なお、フロー制御レディのメッセージパケット送信後はパケットギャップであるので、ノード装置１００ａは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１７７】
データコマンド受信待ちステップにあるノード装置１００ｂは、フロー制御レディのメッセージパケットを受信し、受信したフロー制御レディのメッセージパケットが他装置（ノード装置１００ｃ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてフロー制御レディのメッセージパケットの中継処理を行う。この中継処理されたフロー制御レディのメッセージパケットはシリアルリンク１０１ｂを介してノード装置１００ｃに入力される。ノード装置１００ｂは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、フロー制御レディのメッセージパケットの中継後はパケットギャップであるので、ノード装置１００ｂは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１７８】
送信応答待ちステップにあるノード装置１００ｃは、送信応答を示すフロー制御レディのメッセージパケットを受信する。
【０１７９】
（時刻Ｔ３〜時刻Ｔ４）
送信応答を示すフロー制御レディのメッセージパケットを受信したノード装置１００ｃは、データバースト送信ステップにおいて、時刻Ｔ３からデータバーストの送信を開始する。このデータバーストはシリアルリンク１０１ｃを介してノード装置１００ｄに入力される。なお、データバーストの送信完了後はポストギャップであるので、ノード装置１００ｃは、ＤＩＤＬの制御シンボルセットの送信を繰り返す。
【０１８０】
ループバックモードにあるノード装置１００ｄは、データバースト中継ステップにおいて、ＰＨＹ７０１のループバック経路７１５を用いたデータバーストの中継処理を行う。この中継処理されたデータバーストはシリアルリンク１０１ｄを介してノード装置１００ａに入力される。ノード装置１００ｄは、データバーストの終端を示すＥＤＢシンボル検知後のポストギャップでは、通常モード復旧ステップにてループバックモードから通常モードに復旧する。
【０１８１】
データバースト受信待ちステップにあるノード装置１００ａはデータバーストの受信を開始する。
【０１８２】
（時刻Ｔ４〜時刻Ｔ５）
ノード装置１００ａは、データバーストの受信を完了すると、ステータス通知ステップにおいて、その受信エラーを通知するため、ノード装置１００ｃ宛に、ステータス（ＳＴＡＴ）のメッセージパケットを時刻Ｔ４に送信する。このステータスのメッセージパケットはシリアルリンク１０１ａを介してノード装置１００ｂに入力される。なお、ステータスのメッセージパケット送信後はパケットギャップであるので、ノード装置１００ａは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１８３】
データコマンド受信待ちステップにあるノード装置１００ｂは、ステータスのメッセージパケットを受信し、ステータスのメッセージパケットが他装置（ノード装置１００ｃ）宛であると判定し、パケット中継ステップにおいて、リンクコントローラ７０２内のバイパス経路７５８を用いてステータスのメッセージパケットの中継処理を行う。この中継処理されたステータスのメッセージパケットはシリアルリンク１０１ｂを介してノード装置１００ｃに入力される。ノード装置１００ｂは、パケット種別判定ステップにおいて、中継処理したパケットが送信要求を示すフロー制御リクエストのメッセージパケットでないと判定してデータコマンド受信待ちステップに戻る。なお、ステータスのメッセージパケット中継後はパケットギャップであるので、ノード装置１００ｂは、ＬＩＤＬの制御シンボルセットの送信を繰り返す。
【０１８４】
（時刻Ｔ５〜時刻Ｔ６）
ステータス通知待ちステップにあるノード装置１００ｃは、ステータスのメッセージパケットを受信し、ステータスのメッセージパケットを受信した時刻Ｔ５においてポストギャップを完了し、ＤＩＤＬの制御シンボルセットの送信から通常のパケットギャップのＬＩＤＬの制御シンボルセットの送信に切替える。
【０１８５】
ポストギャップ完了待ちステップにあるノード装置１００ｄは、シンボル検知部７５１によってＤＩＤＬの制御シンボルセットからＬＩＤＬの制御シンボルセットに切り替わったことを検知すると、ノード装置１００ｄでのポストギャップを完了し、ＤＩＤＬの制御シンボルセットの送信からＬＩＤＬの制御シンボルセットの送信に切替える。
【０１８６】
（時刻Ｔ６以降）
ノード装置１００ｃは、コマンド完了判定ステップにおいて、データコマンドで指定された転送サイズ分のデータ転送が完了したと判定するまで、再び送信要求ステップに戻って時刻Ｔ２からの処理を繰り返す。
【０１８７】
≪変形例≫
本発明は上記の実施の形態で説明した内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するためのいかなる形態においても実施可能であり、例えば、以下であってもよい。
【０１８８】
（１）上記の実施の形態では、符号化方式として８ｂ／１０ｂ方式を利用する場合を例に挙げて説明しているが、符号化方式はこれに限定されるものではなく、６４ｂ／６６ｂ方式のようなスクランブル方式を用いてもよい。例えば、ノード装置が６４ｂ／６６ｂ方式を採用する場合のノード装置の構成を図１８に示す。
【０１８９】
シンボル生成部７５６は、符号化部７１２Ｂに対して、８ｂ／１０ｂ方式における８シンボル（８バイト）分を束ねた６４ビットをワード長とする送信Ｒａｗデータを出力する。そして、符号化部７１２Ｂは、その６４ビット幅のＲａｗデータを所定のスクランブル多項式によってスクランブルを行い、その先頭に２ビットの同期ヘッダを付加することによって、符号化した６４ｂ／６６ｂ方式におけるパラレル送信データを生成し、ループバックセレクタ７１３Ｂへ出力する。
【０１９０】
ループバックセレクタ７１３Ｂは、ループバック制御部７５７からの指示を受け、所定のタイミングで出力選択を切替えて、パラレル送信データとパラレルループバックデータの一方をシリアル送信部７１４Ｂへ出力する。
【０１９１】
シリアル送信部７１４Ｂにおけるシリアライザ７２５Ｂは、ループバックセレクタ７１３Ｂから入力される６４ｂ／６６ｂ方式のパラレル送信データ又はパラレルループバックデータをシリアル送信データ又はシリアルループバックデータに変換する。
【０１９２】
また、シリアル受信部７１０Ｂにおけるデシリアライザ７２１Ｂは、複数の連続する６６ビット幅のシリアル受信データから、それらの先頭に付加された同期ヘッダを検出することで、シンボル同期（フレーム同期）を行い、６４ｂ／６６ｂ方式のパラレル受信データを復号化部７１１Ｂに出力する。復号化部７１１Ｂは、パラレル受信データの先頭に付加された同期ヘッダを除去し、符号化部７１２Ｂにおけるスクランブル多項式と対をなす多項式によるデスランブルで６４ビット幅の受信Ｒａｗデータを生成し、シンボル検知部７５１へ出力する。
【０１９３】
ここで、６４ｂ／６６ｂ方式を用いる場合、ループバックセレクタ７１３Ｂは、通常モードにおいては、符号化部７１２Ｂからの入力である６４ｂ／６６ｂ方式のパラレル送信データを選択し、ループバックモードにおいては、ループバック経路７１５経由で入力される６４ｂ／６６ｂ方式のパラレルループバックデータを選択して出力する必要がある。
【０１９４】
以下、符号化方式として６４ｂ／６６ｂ方式を採用した場合の、ループバックモード移行前後におけるループバックセレクタ７１３Ｂの出力の切替えタイミング、及び通常モード復旧前後におけるループバックセレクタ７１３Ｂの出力の切替えタイミングの夫々について、図１９及び図２０を参照して説明する。
【０１９５】
図１９は、符号化方式として６４ｂ／６６ｂ方式を採用した場合の、ループバックセレクタ７１３Ｂのループバックモード移行前後における出力の切替えタイミングを示す図である。ここで、６４ｂ／６６ｂ方式においても、図４に示した８ｂ／１０ｂ方式の制御シンボルと対応する全ての制御シンボルを用いることができるため、ＤＩＤＬシンボルからなる６４ｂ／６６ｂ方式のパラレルデータをＤＩＤＬとして示す。
【０１９６】
ループバックセレクタ７１３Ｂは、通常モードにおいて、符号化部７５６から入力する６４ｂ／６６ｂ方式のパラレル送信データを出力する。ループバック制御部７５７は、受信パケットが、他装置宛であり、且つ、送信要求を示すフロー制御リクエストのメッセージパケットである場合に、ループバックセレクタ７１３Ｂに対して、通常モードからループバックモードの移行指示を行う。ループバックセレクタ７１３Ｂは、この移行指示を受け取ると、通常モードからループバックモードに移行し、符号化部７１２Ｂから入力される６４ｂ／６６ｂ方式のパラレル送信データからループバック経路７１５を介して入力される６４ｂ／６６ｂ方式のパラレルループバックデータに出力を切替える。この出力の切替えを、パラレル送信データとパラレルループバックデータの双方の先頭に付加された同期ヘッダ（Ｓｙｎｃ）の位置を合わせたタイミングで行うことにより、出力の切替え前後でのデータ連続性を維持することができる。なお、パラレル送信データとパラレルループバックデータとの間で、同期ヘッダ（Ｓｙｎｃ）の位置がずれている場合、ループバックセレクタ７１３Ｂ内でパラレルループバックデータを適宜遅延させ、同期ヘッダ（Ｓｙｎｃ）の位置合わせを行うようにすればよい。
【０１９７】
図２０は、符号化方式として６４ｂ／６６ｂ方式を採用した場合の、ループバックセレクタ７１３Ｂの通常モード復旧前後における出力の切替えタイミングを示す図である。
【０１９８】
ループバックセレクタ７１３Ｂは、ループバックモードにおいて、ループバック経路７１５を介して入力される６４ｂ／６６ｂ方式のパラレルループバックデータを出力する。ループバック制御部７５７は、ＥＤＢシンボルが検出された場合に、ループバックセレクタ７１３Ｂに対して、ループバックモードから通常モードの復旧指示を行う。ループバックセレクタ７１３Ｂは、この復旧指示を受け取ると、ループバックモードから通常モードに復旧し、ループバック経路７１５を介して入力される６４ｂ／６６ｂ方式のパラレルループバックデータから符号化部７１２Ｂから入力される６４ｂ／６６ｂ方式のパラレル送信データに出力を切替える。この出力の切替えを、パラレル送信データとパラレルループバックデータの双方の先頭に付加された同期ヘッダ（Ｓｙｎｃ）の位置を合わせたタイミングで行うことにより、出力の切替え前後でのデータ連続性を維持することができる。なお、パラレル送信データとパラレルループバックデータとの間で、同期ヘッダ（Ｓｙｎｃ）の位置がずれている場合、ループバックセレクタ７１３Ｂ内でパラレル送信データを適宜遅延させ、同期ヘッダ（Ｓｙｎｃ）の位置合わせを行うようにすればよい。
【０１９９】
なお、伝送エラー等によってＥＤＢシンボルを検出ができなかった場合、ループバックモードから通常モードへの復旧ができず、以降はパケットを受信できなくなる。これを回避するため、ＥＤＢシンボルを検出できなかった場合も、ＤＩＤＬシンボルからＬＩＤＬシンボルあるいは電気的アイドル状態への入力変化を検知すると、ループバック制御部７５７はループバックセレクタ７１３に対してループバックモードから通常モードへの復旧指示を行うことが望ましく、このようにしてもよい。
【０２００】
なお、本実施の形態１の変形例における、ノード装置１００ａ〜１００ｄの動作フローチャートは、実施の形態１における図８、図９、図１０と実質的に同様であり、それらリング伝送システム全体の動作フローチャートについても、実施の形態１における図１６及び図１７と実質的に同様であるため、説明は省略する。
【０２０１】
（２）上記の実施の形態１では、図５に示す制御シンボルセットを利用する場合を例に挙げて説明したが、実施の形態１で記載したように、制御シンボルセットは図５で定義される制御シンボルセットに限定されるものではない。
【０２０２】
以下に、ＬＩＤＬの制御シンボルセットにおけるＬＩＤＬシンボルとして“０”と“１”の数が異なるシンボルタイプと“０”と“１”の数が同じシンボルタイプとを定義し、ＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルとして“０”と“１”の数が異なるシンボルタイプと“０”と“１”の数が同じシンボルタイプとを定義した場合における、ループバックセレクタの出力の切替えルールについて、図２１及び図２２（ａ）〜（ｃ）を参照して説明する。
【０２０３】
図２１は変形例において図１のノード装置が用いる制御シンボルセットの一例を示す図である。
【０２０４】
図２１の例では、ＬＩＤＬの制御シンボルセットとして、第１シンボルがＣＯＭシンボル（Ｋ２８．５）であり、第２シンボルがＬＩＤＬ０シンボル（Ｋ２８．３）であるＬＩＤＬの制御シンボルセットと、第１シンボルがＣＯＭシンボル（Ｋ２８．５）であり、第２シンボルがＬＩＤＬ１シンボル（Ｄ１６．７）であるＬＩＤＬの制御シンボルセットとが定義されている。
【０２０５】
ここで、ＬＩＤＬ０シンボル（Ｋ２８．３）では、符号化シンボル（２進数）の“Ｃｕｒｒｅｎｔ  ＲＤ  −”が“００１１１１００１１”、“Ｃｕｒｒｅｎｔ  ＲＤ  ＋”が“１１００００１１００”である。ＬＩＤＬ０シンボル（Ｋ２８．３）は、“０”と“１”の数が異なるシンボルタイプのＵｎｂａｌａｎｃｅシンボルであり、このため、次のランニング・ディスパリティを反転させる。
【０２０６】
また、ＬＩＤＬ１シンボル（Ｄ１６．７）では、符号化シンボル（２進数）の“Ｃｕｒｒｅｎｔ  ＲＤ  −”が“０１１０１１０００１”、“Ｃｕｒｒｅｎｔ  ＲＤ  ＋”が“１００１００１１１０”である。ＬＩＤＬ１シンボル（Ｄ１６．７）は、“０”と“１”の数が同じシンボルタイプのＢａｌａｎｃｅｄシンボルであり、このため、次のランニング・ディスパリティを反転させない。
【０２０７】
ＣＯＭシンボル（Ｋ２８．５）では、符号化シンボル（２進数）の“Ｃｕｒｒｅｎｔ  ＲＤ  −”が“００１１１１１０１０”、“Ｃｕｒｒｅｎｔ  ＲＤ  ＋”が“１１０００００１０１”である。ＣＯＭシンボル（Ｋ２８．５）は、“０”と“１”の数が異なるシンボルタイプのＵｎｂａｌａｎｃｅシンボルであり、このため、次のランニング・ディスパリティを反転させる。
【０２０８】
上記のルールに則り、ＬＩＤＬ０シンボルとＬＩＤＬ１シンボルとがランダムに選択されると、
ＣＯＭ＋→ＬＩＤＬ０−→ＣＯＭ＋→ＬＩＤＬ０−→ＣＯＭ＋→ＬＩＤＬ１−→ＣＯＭ−→ＬＩＤＬ１＋→ＣＯＭ＋→ＬＩＤＬ０−→ＣＯＭ＋→ＬＩＤＬ０−→
のように、ＬＩＤＬ０シンボルの前後ではＣＯＭシンボルのランニング・ディスパリティは維持され、ＬＩＤＬ１シンボルの前後ではＣＯＭシンボルのランニング・ディスパリティは反転する。
【０２０９】
このように、ＣＯＭシンボルのランニング・ディスパリティもランダムに切り替わり、データ列のランダム性が向上し、放射ノイズの低減が可能になる。
【０２１０】
図２１の例では、ＤＩＤＬの制御シンボルセットとして、第１シンボルがＣＯＭシンボル（Ｋ２８．５）であり、第２シンボルがＤＩＤＬ０シンボル（Ｋ２８．６）であるＤＩＤＬの制御シンボルセットと、第１シンボルがＣＯＭシンボル（Ｋ２８．５）であり、第２シンボルがＤＩＤＬ１シンボル（Ｄ１２．２）であるＬＩＤＬの制御シンボルセットとが定義されている。
【０２１１】
ここで、ＤＩＤＬ０シンボル（Ｋ２８．６）では、符号化シンボル（２進数）の“Ｃｕｒｒｅｎｔ  ＲＤ  −”が“００１１１１０１１０”、“Ｃｕｒｒｅｎｔ  ＲＤ  ＋”が“１１００００１００１”である。ＤＩＤＬ０シンボル（Ｋ２８．６）は、“０”と“１”の数が異なるシンボルタイプのＵｎｂａｌａｎｃｅシンボルであり、このため、次のランニング・ディスパリティを反転させる。
【０２１２】
また、ＤＩＤＬ１シンボル（Ｄ１２．２）では、符号化シンボル（２進数）の“Ｃｕｒｒｅｎｔ  ＲＤ  −”が“００１１０１０１０１”、“Ｃｕｒｒｅｎｔ  ＲＤ  ＋”が“１１００１０１０１０”である。ＤＩＤＬ１シンボル（Ｄ１２．２）は、“０”と“１”の数が同じシンボルタイプのＢａｌａｎｃｅｄシンボルであり、このため、次のランニング・ディスパリティを反転させない。
【０２１３】
上記のルールに則り、ＤＩＤＬ０シンボルとＤＩＤＬ１シンボルとがランダムに選択されると、
ＣＯＭ＋→ＤＩＤＬ０−→ＣＯＭ＋→ＤＩＤＬ０−→ＣＯＭ＋→ＤＩＤＬ１−→ＣＯＭ−→ＤＩＤＬ１＋→ＣＯＭ＋→ＤＩＤＬ０−→ＣＯＭ＋→ＤＩＤＬ０−→
のように、ＤＩＤＬ０シンボルの前後ではＣＯＭシンボルのランニング・ディスパリティは維持され、ＤＩＤＬ１シンボルの前後ではＣＯＭシンボルのランニング・ディスパリティは反転する。
【０２１４】
図２２（ａ）〜（ｃ）は、ＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルとして“０”と“１”の数が異なるシンボルタイプと“０”と“１”の数が同じシンボルタイプとを定義した場合（例えば、図２１の制御シンボルセット）における、ループバックモード移行前後におけるループバックセレクタの出力の切替えルールを示す図である。
【０２１５】
（ルールＡ）図２２（ａ）に示すように、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致する場合には、ループバックセレクタは、ランニング・ディスパリティが一致するＣＯＭシンボルの直後でパラレル送信データからパラレルループバックデータに出力を切り替える。
【０２１６】
（ルールＢ）図２２（ｂ）に示すように、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致しない場合において、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプが一致しないときは、ループバックセレクタは、シンボルタイプが一致しないＤＩＤＬシンボルの直後でパラレル送信データからパラレルループバックデータに出力を切替える。
【０２１７】
（ルールＣ）図２２（ｃ）に示すように、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致しない場合において、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプが一致するときは、ループバックセレクタは、符号化部によって生成されたＤＩＤＬシンボルを出力する代わりに、符号化部によって生成されたＤＩＤＬシンボルのランニング・ディスパリティをそのままでそのＤＩＤＬシンボルのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するＤＩＤＬシンボルの直後でパラレル送信データからパラレルループバックデータに出力を切替える。
【０２１８】
なお、ＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルとして“０”と“１”の数が異なるシンボルタイプと“０”と“１”の数が同じシンボルタイプとを定義した場合（例えば、図２１の制御シンボルセット）における、通常モード復旧前後におけるループバックセレクタの出力の切替えルールとして、上記の（ルールＡ）〜（ルールＣ）を利用することができる。なお、（ルールＣ）におけるシンボルタイプの置き換えは、ループバック経路経由で入力されるＤＩＤＬシンボルに対して行われる。
【０２１９】
具体的に記載すれば、以下の（ルールａ）〜（ルールｃ）に記載する通りとなる。
【０２２０】
（ルールａ）ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致する場合には、ループバックセレクタは、ランニング・ディスパリティが一致するＣＯＭシンボルの直後でパラレルループバックデータからパラレル送信データに出力を切り替える。
【０２２１】
（ルールｂ）ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致しない場合において、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプが一致しないときは、ループバックセレクタは、シンボルタイプが一致しないＤＩＤＬシンボルの直後でパラレルループバックデータからパラレル送信データに出力を切替える。
【０２２２】
（ルールＣ）ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＣＯＭシンボルのランニング・ディスパリティとが一致しない場合において、ループバックセレクタでの符号化部によって生成されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプとループバック経路を介して入力されたＤＩＤＬの制御シンボルセットにおけるＤＩＤＬシンボルのシンボルタイプが一致するときは、ループバックセレクタは、ループバック経路経由で入力されるＤＩＤＬシンボルを出力する代わりに、ループバック経路経由で入力されるＤＩＤＬシンボルのランニング・ディスパリティをそのままでそのＤＩＤＬシンボルのシンボルタイプをもう一方のシンボルタイプに置き換えて出力し、シンボルタイプが一致するＤＩＤＬシンボルの直後でパラレルループバックデータからパラレル送信データに出力を切替える。
【０２２３】
（３）上記の実施の形態及び変形例のノード装置の各構成要素は、集積回路であるＬＳＩで実現してもよい。このとき、各構成要素は、個別に１チップ化されてもよいし、一部もしくは全てを含むように１チップ化されてもよい。また、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。また、集積回路化の手法はＬＳＩに限られるものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセサを利用してもよい。さらに、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然その技術を用いて機能ブロックの集積化を行ってもよい。
【産業上の利用可能性】
【０２２４】
本発明は、シリアルリンクを介してリング接続された複数のノード装置間でパケットの送受信を行う際に、パケットの送受信に関するデータ転送の信頼性を維持しつつ、処理オーバヘッドを削減した中継処理を行うノード装置、集積回路、及び制御方法を提供することができ、有用である。
【符号の説明】
【０２２５】
７００  ノード装置
７０１  ＰＨＹ
７０２  リンクコントローラ
７１０  シリアル受信部
７１１  復号化部
７１２  符号化部
７１３  ループバックセレクタ
７１４  シリアル受信部
７２０  レシーバ
７２１  デシリアライザ
７２５  シリアライザ
７２６  ドライバ
７５１  シンボル検知部
７５２  バイパス制御部
７５３  パケット受信部
７５４  パケット送信部
７５５  バイパスセレクタ
７５６  シンボル生成部
７５７  ループバック制御部
７５８  バイパス経路
【図１】
2011148621.tif 000003
【図２】
2011148621.tif 000004
【図３】
2011148621.tif 000005
【図４】
2011148621.tif 000006
【図５】
2011148621.tif 000007
【図６】
2011148621.tif 000008
【図７】
2011148621.tif 000009
【図８】
2011148621.tif 000010
【図９】
2011148621.tif 000011
【図１０】
2011148621.tif 000012
【図１１】
2011148621.tif 000013
【図１２】
2011148621.tif 000014
【図１３】
2011148621.tif 000015
【図１４】
2011148621.tif 000016
【図１５】
2011148621.tif 000017
【図１６】
2011148621.tif 000018
【図１７】
2011148621.tif 000019
【図１８】
2011148621.tif 000020
【図１９】
2011148621.tif 000021
【図２０】
2011148621.tif 000022
【図２１】
2011148621.tif 000023
【図２２】
2011148621.tif 000024
【国際調査報告】
2011148621.tif 000025
2011148621.tif 000026