以下、本発明の実施例について図面を参照しつつ説明する。尚、以下に示す図において、実質的に同一又は等価な構成要素、部分には同一の参照符を付している。
図3は、本発明の実施例である光符号分割多重通信システムの全体構成を示すブロック図である。送信機101k(kはチャンネル番号を示し1乃至Mのいずれかの値をとる。Mは多重数を示す。以下同じ)は、チャンネルkの送信情報を光信号に変換して、送信光信号Sakを出力し、これをOCDM回線部103に供給する。
OCDM回線部103は、多重回線を有し、各チャンネルに付与された符号値を用いて、送信機101kより送出された送信光信号Sakを符号化した後、これを受信側に多重伝送し、復号化し、これを受信光信号Sbkとして分岐器105kに供給する。後述するように、OCDM回線部103は、チャンネル毎に符号器301kおよび復号器307kを有しており、符号器301kおよび復号器307kの各々は、自身の温度を変動せしめる温度変動素子302k、308kを有している。温度変動素子302k、308kの各々は、温度制御部120より供給される温度制御信号Svck、Svdkに基づいて自身の温度を変動させて符号器301kおよび復号器307kを過熱又は冷却する。すなわち、OCDM回線部103は、温度制御信号Svckに基づいて符号器の温度をチャンネル毎に制御し、温度制御信号Svdkに基づいて復号器の温度をチャンネル毎に制御して、各符号器および復号器に付与された符号値を制御する。また、OCDM回線部103は、各符号器301kおよび復号器307kの測定温度をそれぞれ温度情報信号SockおよびSodkとして出力し、これを設定温度算出部116および温度制御部120に供給する。尚、図面の簡略化のため、図3において各チャンネルに対応している温度制御信号Svc1乃至SvcMおよびSvd1乃至SvdMを1つにまとめて1本の線で示し、これに参照符Svを付与した。同様に、各チャンネルに対応している温度情報信号Soc1乃至SocMおよびSod1乃至SodMを1つにまとめて1本の線で示し、これに参照符Soを付与した。
分岐器105kは、OCDM回線部103からの受信光信号Sbkを2分岐し、一方を受信機106kに供給し、他方をパワーモニタ部108に供給する。
受信機106kは分岐器105kより供給された受信光信号Sbkを電気信号に変換して受信情報を復元するとともに、受信情報の誤り率を算出して数値化した誤り情報信号Sekをチャンネル毎に出力する。
パワーモニタ部108は、分岐器1051乃至105Mから供給された全チャンネルの受信光信号Sb1乃至SbMの各々の平均パワーを算出する。パワーモニタ部108は、かかる算出結果に基づいて、全チャンネルの受信光信号のうち、時間経過とともにパワー増大が生じているものがあるか否かを示すパワー増大検知信号Sfを出力するとともに、時間経過とともにパワー減少が生じているものがあるか否かを示すパワー減少検知信号Sgを出力する。また、パワーモニタ部108は、個別のチャンネルkの受信光信号Sbkにおいて時間経過とともにパワー増大が生じているか否かを示す個別チャンネルパワー増大検知信号Shkをチャンネル毎に出力する。また、パワーモニタ部108は、個別のチャンネルkの受信光信号Sbkにおいて時間経過とともにパワー減少が生じているか否かを示す個別チャンネルパワー減少検知信号Sikをチャンネル毎に出力する。尚、図面の簡略化のため、図3において各チャンネルに対応している個別チャンネルパワー増大検知信号Sh1乃至ShMをまとめて1本の線で示し、これに参照符Shを付与した。同様に、各チャンネルに対応している個別チャンネルパワー増大検知信号Si1乃至SiMをまとめて1本の線で示し、これに参照符Siを付与した。
誤りモニタ部113は、受信機1061乃至106Mの出力から供給される誤り情報信号Se1乃至SeMによって示されるチャンネル毎の受信情報の誤り率の各々が所定値よりも高いか否かを示す誤り検知信号Sj1乃至SjMを出力し、これを設定温度算出部116に供給する。
設定温度算出部116は、パワーモニタ部108から供給された受信光信号のパワー増大および減少に関する信号Sf、Sg、Sh、Si、誤りモニタ部113から供給される誤り検知信号Sj1乃至SjMおよびOCDM回線部103から供給される温度情報信号Soに基づいて、OCDM回路103内の符号器および復号器の各々の温度設定値を算出し、その算出結果を温度設定信号StckおよびStmkとして出力し、これを温度制御部120に供給する。尚、図面の簡略化のため、図3において各チャンネルに対応している温度設定信号Stc1乃至StcMおよびStd1乃至StdMをまとめて1本の線で示し、これに参照符Stを付与した。
温度制御部120は、設定温度算出部116によって算出された設定温度となるように、OCDM回線部103内の符号器および復号器の温度を制御する手段である。すなわち、詳細は後述するが(図5)、温度制御部120は、設定温度算出部116から供給される温度設定信号Stckに基づいて、符号器301kに付随して設けられた温度変動素子302kの駆動を制御する温度制御信号Svckを出力し、また、設定温度算出部116から供給される温度設定信号Stdkに基づいて、復号器307kに設けられた温度変動素子308kの駆動を制御する温度制御信号Svdkを出力し、これらをOCDM回線部103内の温度変動素子302k、308kに供給する。
温度制御部120は、例えばILX Lightwave社製の製品(型番:LDC3900)等を用いることができる。尚、温度制御信号Svck及びSvdkと温度情報信号Sock及びSodkは、受信側から送信側に転送される場合もあるが、このときは、情報信号とは別の回線(例えば、別のファイバ、WDMチャンネル等)を通じて転送することとしてもよい。また、ファイバ断線や送信側の装置故障等で受信光信号パワーが変化する、或いは零になる等の障害は別途手段を用いて取り除かれているものとする。
以下に、上記した光符号分割多重通信システムの各構成部分の詳細について説明する。図4(a)は、チャンネル毎に設けられる送信機101kの構成を示すブロック図、図4(b)はチャンネル毎に設けられる受信機106kの構成を示すブロック図である。
送信機101kにおいて冗長化部201kは、入力される送信情報に誤り訂正のための符号化を施して冗長化された送信情報信号を生成する。発光器202kは、電気信号として供給される冗長化された送信情報を光信号に変換し、これを送信光信号SakとしてOCDM回線103に供給する。発光器202kは、例えばパルス光源と光変調器等を用いて実現することができる。
受信機106kにおいて受光器211kは、分岐器105kを介してOCDM回線部103より供給される光信号を電気信号に変換する。受光器211kは、例えばフォトディテクタを用いて実現することができる。誤り訂正部212kは、受光器211kの出力信号に含まれる誤り訂正のための冗長化が施された受信情報に対して誤り訂正のための復号化を施して冗長化を解き、受信情報を得るとともに、誤り訂正の過程において得られる受信情報の誤り率を数値化して、これを誤り情報信号Sekとして出力する。各チャンネル毎の誤り情報信号Sekは、誤りモニタ部113に供給される。ここで、送信機101kを構成する冗長化部201kおよび受信機106kを構成する誤り訂正部212kは、例えばPMC−Sierra社製PM5395 CRSU−4x2488等を用いて実現することが可能である。PM5395 CRSU−4x2488は、クロックリカバリのためのICである。このICに付加されている機能としてFEC(Forward Error Correction)機能があり、冗長化、受信情報の出力、ビット誤り率情報の出力がある。
図5は、OCDM回線部103の構成を示すブロック図である。チャンネル毎に設けられる符号器301kは、送信機101kより送出される送信光信号Sakをチャンネル毎に付与される符号値に従って符号化して出力する。符号器301kは、同一構造を有する複数の単位ファイバブラッグ格子が例えば等間隔に配置されたSSFBGを用いて実現することができる。温度変動素子302kは、符号器301kとの接触による熱伝導を介して符号器301kの温度を変化させるための素子である。温度変動素子302kは、温度制御部120より供給される温度制御信号Svckに応じて、自身の温度を変動させることにより、符号器301kを加熱又は冷却する。温度変動素子302kは、例えばペルチェ素子を用いて実現することができる。温度検知素子303kは、符号器301kとの接触による熱伝導を介して符号器301kの温度をモニタする。温度検知素子303kは、検知した符号器301kの温度を温度情報信号Sockとして出力し、これを設定温度算出部116に供給する。温度検知素子303kは例えばサーミスタを用いて実現することができる。各チャンネルの符号器3011乃至301Mによって符号化された送信光信号は、結合器304に供給される。
結合器304は、符号器3011乃至301Mから供給された符号化された送信光信号を結合し、1つのポートから出力する。多重化された送信光信号は、光ファイバ等の伝送路305を経由し分岐器306に供給される。分岐器306は、伝送路305を通じて到来する光信号をチャンネル数Mに相当する数だけ分岐させる。分岐された各光信号は、各チャンネルの復号器3071乃至307Mに供給される。
チャンネル毎に設けられる復号器307kは、伝送路305を経由して到来する光信号をチャンネル毎に付与される符号値に従って復号化し、これを受信光信号Sbkとして出力する。受信光信号Sbkは、分岐器105kを介して受信機106kおよびパワーモニタ部108にそれぞれ供給される。復号器307kは、符号器301kと同様に、同一構造を有する複数の単位ファイバブラッグ格子が等間隔に配置されたSSFBGを用いて実現することができる。温度変動素子308kは、復号器307kとの接触による熱伝導を介して復号器307kの温度を変化させるための素子である。温度変動素子308kは、温度制御部120より供給される温度制御信号Svdkに応じて、自身の温度を変動させることにより復号器307kを加熱又は冷却する。温度変動素子308kは、例えばペルチェ素子を用いて実現することができる。温度検知素子309kは、復号器307kとの接触による熱伝導を介して復号器307kの温度をモニタする。温度検知素子309kは、検知した復号器307kの温度を温度情報信号Sodkとして出力し、これを設定温度算出部116に供給する。温度検知素子309kは例えばサーミスタを用いて実現することができる。
図6は、パワーモニタ部108の構成を示すブロック図である。受光器401kは、分岐器105kを介してOCDM回線部103より供給される受信光信号Sbkを電気信号に変換して出力し、これを積分器402kに供給する。受光器401kは例えばフォトディテクタを用いて実現することができる。積分器402kは、受光器401kより供給される受信信号を積分し、受信光信号の振幅の時間平均値に相当する値を出力し、これをメモリ404kに供給する。積分器402kは例えばコンデンサとコイルを組み合わせて構成される低域通過濾波器等で実現することができる。発振器403は、一定周期のクロック信号を発生させて、これをメモリ404kおよび405kに供給する。メモリ404kは、発振器403から供給されるクロック信号の周期毎に、積分器402kの出力値を取り込むとともに、それまで保持していた値をメモリ405kおよび減算器406kに供給する。メモリ405kは、発振器403kから供給されるクロック信号の周期毎にメモリ404kの出力値を取り込むとともに、それまで保持していた値を減算器406kに供給する。メモリ404kおよび405kは、例えばDRAM等のディジタル値を入出力するものを用いて実現することが可能であるが、この場合、積分器402kの出力信号は適宜アナログ/ディジタル変換されるものとする。
減算器406kは、メモリ405kの出力値からメモリ404kの出力値を減算した結果を出力する。すなわち、減算器406kは、互いに異なる時点における受信光信号の平均パワーの差、換言すれば受信光信号の所定時間内における平均パワーの変動量に相当する値を出力する。減算器406kは、かかる出力値を比較器407kおよび408kに供給する。
比較器407kは、受信光信号の平均パワーの変動量を示す減算器406kの出力値と所定のしきい値TH1とを比較して、例えば、減算器406kの出力値がしきい値TH1よりも大きい場合には、論理値“1”をそれ以外の場合は、論理値“0”を出力する。比較器408kは、受信光信号の平均パワーの変動量を示す減算器406kの出力値と所定のしきい値TH2とを比較して、例えば、減算器406kの出力値がしきい値TH2よりも小さい場合には、論理値“1”をそれ以外の場合は、論理値“0”を出力する。すなわち、比較器407kの出力値によって、当該チャンネルkにおいて受信光信号のパワー増大が生じていることが検出され、比較器408kの出力値によって、当該チャンネルkにおいて受信光信号のパワー減少が生じていることが検出される。比較器407kおよび408kの出力信号がともに“0”である場合には、当該チャンネルkにおいて受信光信号のパワー増大もパワー減少も生じておらず、一定に維持されていることが示される。かかる比較器407kの出力値は、個別チャンネルパワー増大検知信号Shkとして出力され、比較器408kの出力値は個別チャンネルパワー減少検知信号Sikとして出力され、これらは、設定温度算出部116に供給される。
論理和演算器409は、各チャンネルに対応する比較器4071乃至407Mの出力値の論理和を出力する。論理和演算器409は、比較器4071乃至407Mのうちのいずれか1つでも論理値“1”を出力するものがある場合には、論理値“1”をそれ以外の場合は論理値“0”を出力する。すなわち、論理和演算器409の出力値によって、いずれかのチャンネルにおいて受信光信号のパワー増大が生じているか否かが検出される。かかる論理和演算器409の出力値は、パワー増大検知信号Sfとして出力され、設定温度算出部116に供給される。
論理和演算器410は、各チャンネルに対応する比較器4081乃至408Mの出力値の論理和を出力する。論理和演算器410は、比較器4081乃至408Mのうちのいずれか1つでも論理値“1”を出力するものがある場合には、論理値“1”をそれ以外の場合は論理値“0”を出力する。すなわち、論理和演算器410の出力値によって、いずれかのチャンネルにおいて受信光信号のパワー減少が生じているか否かが検出される。かかる論理和演算器410の出力値は、パワー減少検知信号Sgとして出力され、設定温度算出部116に供給される。
図7は、誤りモニタ部113の構成を示すブロック図である。比較器501kは、受信機106kより供給される受信情報の誤り率を示す誤り情報信号Sekと所定のしきい値THとを比較して、誤り情報信号Sekの示す値がしきい値THよりも大きい場合には論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。すなわち、比較器501kの出力値によって、当該チャンネルkにおいて受信情報の誤り率に異常が生じているか否かが検出される。かかる比較器501kの出力値は、誤り検知信号Sjkとして出力され、設定温度算出部116に供給される。
図8は、設定温度算出部116の構成を示すブロック図である。尚、図8に示す構成は、特定のチャンネルkに対応する部分のみを示したものであり、設定温度算出部116には、各チャンネル毎に図8に示す構成要素が設けられているものとする。論理積演算器601kは、チャンネルkにおいて受信光信号のパワー増大が生じていることを示すパワー増大検知信号Sfと、チャンネルkにおいて受信光信号のパワー減少が生じているか否かを示す個別チャンネルパワー減少検知信号Sikの論理積を出力する。論理積演算器601kは、入力される信号SfおよびSikの示す論理値がいずれも“1”のとき、すなわち、いずれかのチャンネルにおいて受信光信号のパワー増大が生じており、且つ当該チャンネルkにおいて受信信号のパワー減少が生じている場合には論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。かかる論理積演算器601kの出力信号(以下において第1トリガ信号と称する)は、符号器温度計算部602kに供給される。
符号器温度計算部602kは、論理積演算器601kより供給される第1トリガ信号の示す値が“1”のとき、自身に入力される各信号に基づいて、対応する符号器301kの設定温度を算出し、その算出結果を温度設定信号Stckとして出力し、これを温度制御部120に供給する。符号器温度計算部602kには、当該チャンネルkにおける受信信号の増大および減少を示す個別チャンネルパワー増大検知信号Shkおよび個別チャンネルパワー減少検知信号Sikと、当該チャンネルk以外の他の全てのチャンネルにおける個別チャンネルパワー増大検知信号(図8においてShm(mはチャンネル番号を示し1乃至M(kはのぞく)のいずれかの値をとる。Mは多重数を示す。以下同じ)として示されている)および個別チャンネルパワー減少検知信号(図8においてSimとして示されている)が入力され、更に、符号器301kの現在の温度を示す温度情報信号Sockが入力される。
論理否定演算器603kは、パワー増大検知信号Sfの論理否定を出力する。論理否定演算器605kは、パワー減少検知信号Sgの論理否定を出力する。論理積演算器604kは、パワー減少検知信号Sgと当該チャンネルkにおける個別チャンネルパワー減少検知信号Sikの論理積を出力する。論理積演算器604kは、入力される信号SgおよびSikの示す論理値がいずれも“1”のとき、すなわち、いずれかのチャンネルにおいて受信信号のパワー減少が生じており、且つ当該チャンネルkにおいて受信信号のパワー減少が生じている場合には論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。
論理積演算器606kは、誤りモニタ部113から供給される当該チャンネルkにおける誤り検知信号Sjk、論理否定演算器603kおよび605kの出力信号を受信して、これらの各信号の論理積を出力する。すなわち、論理積演算器606kは、全てのチャンネルの受信光信号にパワー変化がなく、且つ、当該チャンネルkにおいて受信情報の誤り率が所定値よりも高くなっている場合には、論理値“1”をそれ以外の場合には論理値“0”を出力する。論理和演算器607kは、論理積演算器604kおよび606kの出力値の論理和を出力する。論理和演算器607kは、論理積演算器604kおよび606kの出力値のすくなくともいずれか一方が“1”のとき論理値“1”を出力し、双方が“0”のとき論理値“0”を出力する。かかる論理和演算器607kの出力信号(以下において第2トリガ信号と称する)は、復号器温度計算部608kに供給される。
復号器温度計算部608kは、第2トリガ信号の示す値が“1”のとき自身に入力される各信号に基づいて、対応する復号器307kの設定温度を算出し、その算出結果を温度情報信号Stdkとして出力し、これを温度制御部120に供給する。復号器温度計算部608kには、符号器301kの現在の温度を示す温度情報信号Sodkと、当該チャンネルkにおける受信情報の誤り率が所定値よりも高いか否かを示す誤り検知信号Sjkが入力される。
図9は、設定温度算出部116内に設けられた符号器温度計算部602kの構成を示すブロック図である。セットリセットフリップフロップ(以下SRフリップフロップと称する)701k、701m、702m、708、716の各々は、Sポートに論理値“1”が入力されると論理値“1”を出力し、Rポートに論理値“1”が入力されると論理値“0”を出力し、SポートおよびRポートともに論理値“0”が入力されると直前の出力論理値を保持して出力する。SRフリップフロップ701kは、当該チャンネルkにおいて受信光信号にパワー増大が生じているか否かを示す個別チャンネルパワー増大検知信号ShkをSポートに入力し、比較器729の出力信号をRポートに入力し、その出力を論理積演算器703kに供給する。SRフリップフロップ701mの各々は、当該チャンネルk以外の他のチャンネル毎の個別チャンネルパワー増大検知信号ShmをSポートに入力し、比較器729の出力信号をRポートに入力し、その出力を論理積演算器703mの各々に供給する。SRフリップフロップ702mの各々は、当該チャンネルk以外の他のチャンネル毎の個別チャンネルパワー減少検知信号SimをSポートに入力し、比較器729の出力信号をRポートに入力し、その出力を論理積演算器704mの各々に供給する。
論理積演算器703kは、個別チャンネルパワー増大検知信号ShkとSRフリップフロップ701kの出力値の論理積を出力する。論理積演算器703mの各々は、当該チャンネルk以外の各チャンネル毎の個別チャンネルパワー増大検知信号ShmとSRフリップフロップ701mの出力値の論理積を出力する。論理積演算器704mの各々は、当該チャンネルk以外の各チャンネル毎の個別チャンネルパワー減少検知信号SimとSRフリップフロップ702mの出力値の論理積を出力する。
論理和演算器705は、論理積演算器703mの各々の出力値の倫理和を出力する。論理和演算器706は、論理積演算器704mの各々の出力値の倫理和を出力する。論理和演算器707は、論理和演算器705および706の各出力値の論理和を出力する。論理否定演算器736は、論理和演算器707から出力される出力値の論理否定を出力する。
SRフリップフロップ708は、Sポートに第1トリガ信号を入力し、Rポートに論理和演算器741の出力信号を入力する。発振器709は、論理値“1”に対応する電圧レベルと論理値“0”に対応する電圧レベルが交互に生じる周期波形を有するクロック信号を発生させる。論理積演算器710は、SRフリップフロップ708の出力信号と発振器709の出力信号の論理積を出力する。メモリ711は、OCDM回線部103より供給されるチャンネルkにおける符号器301kの温度モニタ値を示す温度情報信号Sockの値を記憶する手段である。メモリ711は、発振器709から供給されるクロック信号の立ち上がりエッジ毎に温度情報信号Sockの値を読み込み、それまでの記憶値を更新し、論理積演算器710から供給される出力信号の立ち上がりエッジ毎にその記憶値を出力する。メモリ711の出力値は、比較器714、737、738、メモリ731、732および加算器723にそれぞれ供給される。
加算器712は、入力信号の代数和を計算して出力する手段である。加算器712には、符号器301kの設定温度として設定可能な温度範囲の上限値および下限値が入力される。加算器712は、かかる温度設定範囲の上限値および下限値の代数和を出力し、これを除算器713に供給する。除算器713は、加算器712の出力値を2で割り算して出力する。すなわち、除算器713からは、符号器301kの設定温度として設定することが可能な温度範囲の中央値が出力される。かかる除算器713の出力信号は比較器714に供給される。
比較器714は、メモリ711より供給される符号器301kのある時点における温度モニタ値が、除算器713より供給される符号器301kに対して設定可能な温度範囲の中央値よりも大きい場合には、論理値“1”をそれ以外の場合には論理値“0”を出力する。かかる比較器714の出力信号は、論理和演算器719を経由してトグルフリップフロップ(以下Tフリップフロップと称する)720のSポートに入力されるとともに、論理否定演算器715および論理和演算器718を経由してTフリップフロップ718のRポートに入力される。SRフリップフロップ716は、Sポートに比較器729の出力信号を入力し、RポートにSRフリップフロップの出力信号を入力し、入力されたこれらの信号が示す論理値に従って、上述した論理動作を行う。
論理和演算器717は、論理和演算器705の出力信号と比較器729の出力信号の論理和を出力し、これをTフリップフロップ720のCLKポートに供給する。
論理否定演算器715は、比較器714の出力信号の論理否定を出力する。論理和演算器718は、論理否定演算器715の出力信号とSRフリップフロップ716の出力信号の論理和を出力する。論理和演算器719は比較器714の出力信号とSRフリップフロップ716の出力信号の論理和を出力する。Tフリップフロップ720は、Sポートに論理値“1”、Rポートに論理値“0”が入力されると論理値“1”を出力し、Sポートに論理値“0”、Rポートに論理値“1”が入力されると論理値“0”を出力し、SポートとRポートの双方に論理値“1”が入力されるとCLKポートに入力される信号の立ち上がりエッジ毎に直前の出力論理値を反転させて出力する。Tフリップフロップ720は、Sポートに論理和演算器719の出力信号を入力し、Rポートに論理和演算器718の出力信号を入力し、CLKポートに論理和演算器717の出力信号を入力する。
符号器301kを温度変動素子302kによって加熱又は冷却するときの温度変化量ΔTを数値化した信号が符号反転器721およびスイッチ722にそれぞれ供給される。符号反転器721は、入力される温度変化量ΔTが示す数値の正負の符号を反転させる手段であり、負の温度変化量を数値化して出力する。温度変化量ΔTを例えば2進数で表した場合において、その各桁の“1”“0”を反転させることにより表される値は、補数と呼ばれ、元の値の正負の符号を反転させた値となる。故に、符号反転器721は、例えば排他的論理和演算回路で実現することができる。ここで、正の温度変化は加熱として扱われ、負の温度変化は冷却として扱われるものとする。スイッチ722には、正の温度変化量ΔTを示す値と、負の温度変化量−ΔTを示す値の双方が入力される。スイッチ722は、Tフリップフロップ720から出力される論理値に従って、入力される2つの値のうちのいずれか一方を出力する。加算器723は、メモリ711から供給される符号器301kの温度モニタ値にスイッチ722から供給される温度変化量ΔT(又は−ΔT)の値を加算して出力する。かかる加算器723の出力信号は、スイッチ724に供給される。
カウンタ728は、論理否定演算器736の出力信号の立ち上がりエッジ毎に“0”、“1”、“2”の3値をこの順に計数してその値を出力する手段であり、SRフリップフロップ708から供給される論理値が“1”に変化するときに、その出力値を“0”に初期化する。比較器729は、カウンタ728から供給されるカウント値を入力し、その値が1の場合、論理値“1”を出力し、それ以外の場合論理値“0”を出力する。比較器730は、カウンタ728から供給されるカウント値を入力し、その値が2の場合、論理値“1”を出力し、それ以外の場合論理値“0”を出力する。
メモリ731は、比較器729の出力信号の立ち上がりエッジ毎にメモリ711から出力される温度情報信号Sockの値を読み込んで、それまでの記憶値を更新し、論理和演算器740の出力信号の立ち上がりエッジ毎にその記憶値を出力する。メモリ731の出力値はスイッチ724および加算器734にそれぞれ供給される。メモリ732は、比較器730の出力信号の立ち上がりエッジ毎にメモリ711から出力される温度情報信号Sockの値を読み込んで、それまでの記憶値を更新し、遅延器733の出力信号の立ち上がりエッジ毎にその記憶値を出力する。遅延器733は、比較器730の出力信号を一定時間遅延させて出力する。加算器734は、メモリ731およびメモリ732の出力値の代数和を出力する。除算器735は、加算器734の出力値を2で割り算して出力する。
比較器737は、メモリ711から供給される符号器301kの温度モニタ値が、符号器301kの温度設定範囲の上限値より大きい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。比較器738は、メモリ711から供給される符号器301kの温度モニタ値が、符号器301kの温度設定範囲の下限値より小さい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。論理和演算器739は、比較器737および738の出力値の論理和を出力する。すなわち、論理和演算器739は、メモリ711から供給される符号器301kの温度モニタ値が、符号器301kの温度設定範囲の上限値より大きい場合、又は下限値より小さい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。論理和演算器740は、論理和演算器739および遅延器733の出力値の論理和を出力する。論理和演算器741は、論理否定演算器726、比較器730および論理否定演算器739の出力値の論理和を出力する。論理和演算器741の出力信号は、設定温度算出部116による符号器の温度設定値の算出処理のリセットを指示する信号としてSRフリップフロップ708のRポートに入力される。
スイッチ724は、入力される論理否定演算器726の出力論理値が“1”のとき加算器723の出力信号を選択して出力し、入力される比較器730の出力論理値が“1”のとき除算器735の出力信号を選択して出力し、入力される論理和演算器739の出力論理値が“1”のときメモリ731の出力信号を選択して出力する。メモリ725は、発振器709から供給されるクロック信号の立ち上がりエッジ毎にスイッチ724の出力値を読み込んで、それまでの記憶値を更新し、論理積演算器710の出力信号の立ち上がりエッジ毎にその記憶値を出力する。かかるメモリ725の出力信号は、チャンネルkにおける符号器301kの設定温度の値を示す温度設定信号Stckとして温度制御部120に供給される。
図10は、設定温度算出部116における復号器温度計算部608kの構成を示すブロック図である。論理積演算器801は、誤りモニタ部113から供給される当該チャンネルkにおける受信情報の誤り率が所定値よりも高いか否かを示す誤り検知信号SjkとSRフリップフロップ803の出力信号の論理積を出力する。論理否定演算器802は、論理積演算器801の出力信号の論理否定を出力し、これをスイッチ823およびSRフリップフロップ803に供給する。
SRフリップフロップ803、811は、Sポートに論理値“1”が入力されると論理値“1”を出力し、Rポートに論理値“1”が入力されると論理値“0”を出力し、Sポート、Rポートともに論理値“0”が入力されると直前の出力論理値を保持して出力する。SRフリップフロップ803は、Sポートに第2トリガ信号を入力し、Rポートに論理否定演算器802の出力信号を入力する。
発振器804は、論理値“1”に対応する電圧レベルと論理値“0”に対応する電圧レベルが交互に生じる周期波形を有するクロック信号を発生させる。論理積演算器805は、SRフリップフロップ803の出力信号と発振器804の出力信号の論理積を出力する。メモリ806は、OCDM回線部103より供給されるチャンネルkにおける復号器307kの温度モニタ値を示す温度情報信号Sodkの値を記憶する手段である。メモリ806は、発振器804から供給されるクロック信号の立ち上がりエッジ毎に温度情報信号Sodkの値を読み込み、それまでの記憶値を更新し、論理積演算器805から供給される出力信号の立ち上がりエッジ毎にその記憶値を出力する。メモリ806の出力値は、比較器809、819、820、および加算器818にそれぞれ供給される。
加算器807は、入力信号の代数和を計算して出力する手段である。加算器807には、復号器307kの設定温度として設定可能な温度範囲の上限値および下限値が入力される。加算器807は、かかる温度設定範囲の上限値および下限値の代数和を出力し、これを除算器808に供給する。除算器808は、加算器807の出力値を2で割り算して出力する。すなわち、除算器808からは、復号器301kの設定温度として設定することが可能な温度範囲の中央値が出力される。かかる除算器808の出力信号は比較器809に供給される。
比較器809は、メモリ806より供給される復号器307kの温度モニタ値が、除算器808より供給される復号器307kに対して設定可能な温度範囲の中央値よりも大きい場合には、論理値“1”をそれ以外の場合には論理値“0”を出力する。かかる比較器809の出力信号は、論理和演算器814を経由してTフリップフロップ815のSポートに供給されるとともに、論理否定演算器812および論理和演算器813を経由してTフリップフロップ815のRポートに供給される。
排他的論理和演算器810は、SRフリップフロップ803から供給される論理値と、比較器821から供給される論理値の排他的論理和を出力する。SRフリップフロップ811は、Sポートに論理和演算器821の出力信号を入力し、Rポートに排他的論理和演算器810の出力信号を入力し、入力されたこれらの信号が示す論理値に従って、上述した論理動作を行う。
論理否定演算器812は、比較器809の出力信号の論理否定を出力する。論理和演算器813は、論理否定演算器812の出力信号とSRフリップフロップ811の出力信号の論理和を出力する。論理和演算器814は比較器809の出力信号とSRフリップフロップ811の出力信号の論理和を出力する。Tフリップフロップ815は、Sポートに論理値“1”、Rポートに論理値“0”が入力されると論理値“1”を出力し、Sポートに論理値“0”、Rポートに論理値“1”が入力されると論理値“0”を出力し、SポートとRポートの双方に論理値“1”が入力されるとCLKポートに入力された信号の立ち上がりエッジ毎に直前の出力論理値を反転させて出力する。Tフリップフロップ815は、Sポートに論理和演算器814の出力信号を入力し、Rポートに論理和演算器813の出力信号を入力し、CLKポートに遅延器822の出力信号を入力する。
復号器307kを温度変動素子308kによって加熱又は冷却するときの温度変化量ΔTを数値化した信号が符号反転器816およびスイッチ817にそれぞれ供給される。符号反転器816は、入力される温度変化量ΔTが示す数値の正負の符号を反転させる手段であり、負の温度変化量を数値化して出力する。符号反転器721は、例えば排他的論理和演算回路で実現することができる。ここで、正の温度変化は加熱として扱われ、負の温度変化は冷却として扱われるものとする。スイッチ817には、正の温度変化量ΔTを示す値と、負の温度変化量−ΔTを示す値の双方が入力される。スイッチ817は、Tフリップフロップ815から出力される論理値に従って、入力される2つの値のうちのいずれか一方を出力する。加算器818は、メモリ806から供給される復号器307kの温度モニタ値にスイッチ817から供給される温度変化量ΔT(又は−ΔT)の値を加算して出力する。かかる加算器818の出力信号は、スイッチ823に供給される。
比較器819は、メモリ806から供給される復号器307kの温度モニタ値が、復号器307kの温度設定範囲の上限値より大きい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。比較器820は、メモリ806から供給される復号器307kの温度モニタ値が、復号器301kの温度設定範囲の下限値より小さい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。論理和演算器821は、比較器819および820の出力値の論理和を出力する。すなわち、論理和演算器821は、メモリ806から供給される復号器307kの温度モニタ値が、復号器307kの温度設定範囲の上限値より大きい場合、又は下限値より小さい場合に論理値“1”を出力し、それ以外の場合は論理値“0”を出力する。かかる論理和演算器821の出力は排他的論理和演算器810、SRフリップフロップ811のSポートおよび遅延器822に供給される。遅延器822は、論理和演算器821から供給される信号を一定時間遅延させて出力し、これをTフリップフロップ815のCLKポートに供給する。
スイッチ823は、入力される論理否定演算器802の出力論理値が“1”のとき、加算器818の出力信号を出力し、入力される論理値が“0”のとき出力信号の送出を停止させる。メモリ824は、発振器804から供給されるクロック信号の立ち上がりエッジ毎にスイッチ823の出力値を読み込んで、それまでの記憶値を更新し、論理積演算器805の出力信号の立ち上がりエッジ毎にその記憶値を出力する。かかる、メモリ824の出力信号は、チャンネルkにおける復号器307kの設定温度の値を示す温度設定信号Stdkとして温度制御部120に供給される。
(符号器の障害の検出原理とその回復の原理)
1.符号値の変動と受信光信号の平均パワーの関係
上記した構成を有する本発明に係る光符号分割多重通信システムにおいて、符号化と復号化の符号値が一致しているかどうかは、受信光信号の平均パワーにより判断する。受信光信号の平均パワーとは、ある時間内に測定される受信光信号のエネルギーを測定時間で割り算したものである。ここで、測定時間が十分長く、雑音等によるパワー変動や論理値“1”および“0”の出現率の変動によるパワー変動等の影響が受信光信号の平均パワーに対して十分に小さい場合(平均パワー測定誤差より小さい場合)、受信光信号の平均パワーは、1つのパルスを符号化および復号化した後の光エネルギーをビット周期の時間で割り算したものに比例すると考えることができる。つまり、受信光信号の平均パワーをPavとすると、
と表すことができる。ここでTbはビット周期である。
図11にチップ数Nを32、ビット周期Tbを2NTc(Tcは隣接するチップパルスの時間間隔)としたときの、[数6]、[数7]および[数8]から求めた受信光信号の平均パワーと符号値との関係を示す。図11において横軸はθe−θdを表しており、2π分の1に規格化している。θe−θd=0というのは、θe=θdであることを意味し、符号器の符号器の隣接チップパルスのパルス間の位相差と復号器の隣接チップパルスのパルス間の位相差が一致していること、すなわち、符号器と復号器に設定された符号値が一致していることを意味している。単一チャンネルの送受信では、符号器と復号器で符号値が一致するときに受信光信号の平均パワーが最大となる。符号器と復号器で符号値の差が小さいほど受信光信号の平均パワーが大きく、符号値の差が大きくなるに従って単調に受信光信号の平均パワーは減少する。符号値の差が±πのとき受信光信号の平均パワーは最小となる。このように、符号化および復号化における符号値の差と受信光信号の平均パワーの関係が単調であることから、以下に述べるように、通信中にOCDM回線部103内の1つの符号器301k(又は復号器307k)の符号値が変化した場合にその変動が生じた符号器又は復号器を特定することが可能である。
2.符号値と符号器の温度との関係
本符号化方式では、全ての隣接チップパルスのパルス間位相差を等しくするので、[数2]においてj=1乃至N−1のθjを全てθとし、Ljを全て等しくLとする。つまり、隣接チップパルスのパルス間位相差θと単位格子間距離Lとの間に
の関係がある。符号器の温度を変化させることによる符号値θの変化δθは、実効屈折率neffの温度依存性と単位格子間距離Lの温度依存性を介して
の関係となる。ここでTは温度、δTは温度変化である。[数10]より温度変化と符号値の変化の関係が単調である。すなわち、符号器あるいは復号器に割り当てられた符号値の変動は、温度変化に起因して生じる一方、符号値に変動が生じた場合には、符号器および復号器の温度を個別に調整することにより、適正な符号値となるように補正することが可能である。この場合、δθ・δTの符号(プラス・マイナスの意味の符号)が変わらないTの範囲を動作範囲として設定する。
3.受信光信号の平均パワーのモニタによる障害が生じた符号器の特定
チャンネルx、y1、y2を含む複数チャンネルが多重されている通信状況において、チャンネルxの符号器又は復号器に障害が生じた場合を考える。ここで、全ての符号器および復号器が正常であるとき各チャンネルの光信号パワーは適正に制御されているものとする。また、1つの符号器又は復号器に障害が発生する確率に比べて複数の符号器又は復号器に同時に障害が発生する確率が十分に小さいものとする。このとき、正常動作時と比べたときの復号化された受信光信号のパワーの変化を表1および表2に示す。表1は、チャンネルxの符号器に障害がある場合、表2はチャンネルxの復号器に障害がある場合を示している。
ここで、符号xは障害が発生する前にチャンネルxに割り当てられていた符号値、符号y1およびy2は、それぞれチャンネルy1およびy2に割り当てられている符号値、符号zはいずれのチャンネルにも割り当てられていない未使用の符号値である。各表中の“−”は、符号器又は復号器に障害が発生する前後において、受信光信号に平均パワー変動が生じないことを示す。各表中の上向きの矢印は、符号器又は復号器の障害に起因して、受信光信号の平均パワーが上昇することを示している。各表中の下向きの矢印は、符号器又は復号器の障害に起因して、受信光信号の平均パワーが減少することを意味している。
はじめに、表1を参照して、チャンネルxの符号器に障害が発生した場合において、符号器の符号値がxからy1に変動した場合について考える。チャンネルxにおいては符号器と復号器の符号値がともにxで一致していた状態から、符号器の符号値がy1に変動したことによって不一致状態となる。従って、チャンネルxの受信機において受信される受信光信号の平均パワーは、正常時と比べ小さくなる(1)。一方、チャンネルy1においては、チャンネルxの符号器の符号値がxからy1に変動したことにより、チャンネルxの符号器の符号値とチャンネルy1の復号器の符号値が不一致状態から一致状態に変化することとなる。従って、チャンネルy1の受信機において受信される受信光信号の平均パワーは、正常時と比べ大きくなる(2)。チャンネルy2においては、復号器の符号値がy2であり、チャンネルxの符号器の符号値がxからy1に変動しても、符号値の一致、不一致状態に変化がない。従って、チャンネルy2の受信機において受信される受信光信号の平均パワーは変化しない(3)。
次に、チャンネルxの符号器の符号値がxからzに変動した場合について考える。チャネルxにおいては、符号器と復号器の符号値がともにxで一致していた状態から、符号器の符号値がzに変動したことによって不一致となる。従って、チャンネルxの受信機において受信される受信光信号の平均パワーは、正常時と比べ小さくなる(4)。一方、チャンネルy1およびy2においては、復号器の符号値がy1又はy2であり、チャンネルxの符号器の符号値がxからzに変動しても、符号値の一致、不一致状態に変化がない。従って、チャンネルy1およびy2の受信機において受信される受信光信号の平均パワーは変化しない(5)(6)。
次に、表2を参照して、チャンネルxの復号器に障害が発生した場合において、復号器の符号値がxからy1に変動した場合について考える。チャンネルxにおいては、復号器の符号値が、チャンネルxの符号器と符号値が一致していた状態から、チャンネルy1の符号器と符号値が一致する状態に入れ替わる。従って、チャンネルxの受信機において受信される受信光信号のパワーは結局変化しないこととなる(7)。チャンネルy1およびy2においては、チャンネルxの復号器の符号値に変動が生じても、復号化すべき信号に変動が生じるわけではないので、チャンネルy1およびy2の受信機において受信される受信光信号のパワーは変化しない(8)(9)。
次に、チャンネルxの復号器の符号値がxからzに変動した場合について考える。チャンネルxにおいては、符号器と復号器の符号値がともにxで一致していた状態から、復号器の符号値がzに変動したことによって不一致状態となる。従って、チャンネルxの受信機において受信される受信光信号のパワーは、正常時と比べ小さくなる(10)。一方、チャンネルy1およびy2においては、チャンネルxの復号器の符号値に変動が生じても、復号すべき信号に変動が生じるわけではないので、チャンネルy1およびy2の受信機において受信される受信光信号のパワーは変化しない(11)(12)。
本発明に係る通信システムにおいて、符号器又は復号器に割り当てられた符号値の変動と各チャンネルのおける受信光信号のパワーの変動には、表1および表2に示したような関係があるので、受信光信号のパワー変化をモニタすることにより、障害が生じた符号器又は復号器を以下のように特定することができる。
(i)一つのチャンネルにおいて受信光信号の平均パワーが減少し、他の一つのチャンネルにおいて受信光信号の平均パワーが増大する場合、受信光信号の平均パワー減少が生じているチャンネルにおいて符号器の障害が発生しているものと特定できる。このとき、その障害が生じている符号器の符号値は、本来の符号値から受信光信号の平均パワー増大が生じているチャンネルに割り当てられるべき符号値に変動していることも特定できる。
(ii)一つのチャンネルにおいて受信光信号の平均パワーが減少し、他の全てのチャンネルにおいて受信光信号の平均パワーが変化しない場合、受信光信号の平均パワー減少が生じているチャンネルにおいて符号器又は復号器に障害が発生しているものと特定できる。このとき、その障害が生じている符号器又は復号器の符号値は、本来の符号値からいずれのチャンネルにも割り当てられていない未使用の符号値に変動していることも特定できる。
(iii)全チャンネルの受信光信号のパワーが変化しない場合、通信システムが正常動作を続けているのか或いは復号器に障害があるかどうか判断できない。
本発明に係る光符号分割多重通信システムにおいては、各チャンネルの受信光信号の平均パワー変化をパワーモニタ部108において監視し、受信光信号に上記(i)乃至(iii)に記載したような受信光信号の平均パワーの変動が生じているか否かを検出する。そして、このような受信光信号のパワー変動が検出された場合には、障害が生じているチャンネルを特定し、障害と判断されたチャンネルの符号器又は復号器の温度が設定温度算出部116にて算出した値となるように温度制御することにより符号器又は復号器の符号値を修正し、通信の回復を図る。
(本発明に係る光符号分割多重通信システムの動作)
以下において、本発明の実施例である光符号分割多重通信システムの動作について説明する。
1.温度制御の対称となる符号器又は復号器を決定する方法
はじめに、本発明に係る光符号分割多重通信システムにおいて温度制御の対称となる符号器又は復号器を決定する方法を図12のフローチャートを参照しつつ説明する。
はじめに、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じているか否かを判断する(ステップS1)。OCDM回線部103より供給される各チャンネルの受信情報は復号器307kによって復号化された後、受信光信号Sbkとしてパワーモニタ部108に供給される。パワーモニタ部108において、受光器401kおよび積分器402kは受信光信号Sbkの平均パワーを得るための手段である。メモリ404k、405kは、互いに異なる時点における受信光信号の平均パワーを示す値を出力し、減算器406kはこれらの差分値を出力する。これによって受信光信号の平均パワーの時間変化を得る。比較器407kは、チャンネルkにおいて受信光信号の平均パワーが増大しているかどうかを判断するために用いる。比較器407kは、入力された受信光信号の平均パワーの時間変化がしきい値TH1よりも大きい場合には、受信光信号の平均パワーが増大していることを示す論理値“1”を出力する。単純にパワー増大を判断するだけであればしきい値TH1の値を0とすることができるが、雑音等の影響によって受信光信号のパワーがランダムに揺らぐことを考慮して、しきい値TH1の値を0より大きい値に設定することが好ましい。比較器408kは、チャンネルkにおいて受信光信号の平均パワーが減少しているかどうかを判断するために用いる。比較器408kは、入力された受信光信号の平均パワーの時間変化がしきい値TH2よりも小さい場合には、受信光信号の平均パワーが減少していることを示す論理値“1”を出力する。単純にパワー減少を判断するだけであればしきい値TH2の値を0とすることができるが、雑音等の影響によって受信光信号のパワーがランダムに揺らぐことを考慮して、しきい値TH2の値を0より小さい値に設定することが好ましい。比較器407kの出力は、論理和演算器409に供給されるとともに個別チャンネルパワー増大検知信号Shkとして設定温度算出部116に供給される。論理和演算器409は、各チャンネルの比較器4071乃至407Mの出力値の論理和を演算する。すなわち、論理和演算器409は、いずれかのチャンネルにおいて受信光信号にパワー増大が生じている場合には、論理値“1”をそれ以外の場合は論理値“0”を出力し、これをパワー増大検知信号Sfとして設定温度算出部116に供給する。一方、比較器408kの出力は、論理和演算器410に供給されるとともに特定チャンネルパワー減少検知信号Sikとして設定温度算出部116に供給される。論理和演算器410は、各チャンネルの比較器4081乃至408Mの出力値の論理和を演算する。すなわち、論理和演算器410は、いずれかのチャンネルにおいて受信光信号にパワー減少が生じている場合には、論理値“1”をそれ以外の場合は論理値“0”を出力し、これをパワー減少検知信号Sgとして設定温度算出部116に供給する。本ステップS1において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じているか否かの判断は、設定温度算出部116においてパワー増大検知信号Sfが認識されることにより実現される。
次に、ステップS1において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じていると判断された場合には、受信光信号Sbkの平均パワーの減少が生じているチャンネルを特定する(ステップS2)。受信光信号Sbkの平均パワーの減少が生じているチャンネルの特定は、設定温度算出部116において個別チャンネルパワー減少検知信号Sikが認識されることにより実現される。
次に、ステップS2において特定されたチャンネルの符号器は、上記(i)に示す障害が生じている符号器に該当するので、その特定されたチャンネルの符号器に障害が生じているものと判断して、これを温度制御の対象とする(ステップS3)。設定温度算出部116において、論理積演算器601kが個別チャンネルパワー増大検知信号Shkおよび個別チャンネルパワー減少検知信号Sikの論理積を演算することにより、上記ステップS1からS3の処理が実現される。温度制御の対象が特定されると、その対象となったチャンネルに対応する論理積演算器601kは、第1トリガ信号を符号器温度計算部602kに送出する。符号器温度計算部602kは、かかる第1トリガ信号を契機として温度制御対象の符号器の設定温度の算出処理を開始する。
次に、ステップS1において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じていると判断されなかった場合には、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの減少が生じているか否かを判断する(ステップS4)。本ステップS3において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの減少が生じているか否かの判断は、設定温度算出部116においてパワー減少検知信号Sgが認識されることにより実現される。
次に、ステップS4において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの減少が生じていると判断された場合には、受信光信号Sbkの平均パワーの減少が生じているチャンネルを特定する(ステップS5)。受信光信号Sbkの平均パワーの減少が生じているチャンネルの特定は、設定温度算出部116において個別チャンネルパワー減少検知信号Sikが認識されることにより実現される。
次に、ステップS5において特定されたチャンネルの符号器又は復号器は、上記(ii)に示す障害が生じている符号器又は復号器に該当するので、その特定されたチャンネルの符号器又は復号器に障害が生じているものと判断して、その特定されたチャンネルの復号器を温度制御の対象とする(ステップS6)。設定温度算出部116において、論理積演算器604kがパワー減少検知信号Sgおよび個別チャンネルパワー減少検知信号Sikの論理積を演算することにより、上記ステップS4からS6の処理が実現される。温度制御の対象が特定されると、その対象となったチャンネルに対応する論理積演算和607kは、第2トリガ信号を復号器温度計算部608kに送出する。復号器温度計算部608kは、かかる第2トリガ信号を契機として温度制御対象の復号器の設定温度の算出処理を開始する。
次に、ステップS1においていずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じていると判断されず且つ、ステップS4において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの減少が生じていると判断されなかった場合には、上記(iii)に示す場合に該当し、通信システムが正常動作を続けているのか或いは復号器に障害があるかどうか判断できない。この場合、以下の処理を実行することにより、システムが正常であるか、あるいは復号器に障害が生じているかを判断し、復号器に障害があると判断した場合は、これを温度制御の対象とする。すなわち、ステップS1においていずれかのチャンネルにおいて受信光信号Sbkの平均パワーの増大が生じていると判断されず且つ、ステップS4において、いずれかのチャンネルにおいて受信光信号Sbkの平均パワーの減少が生じていると判断されなかった場合には、受信情報における誤り率が所定値を超えているチャンネルが存在するか否かを判断する(ステップ7)。かかる判断は、誤りモニタ部113より送出される誤り検知信号Sjkが設定温度算出部116において認識されることにより実現される。誤りモニタ部113において比較器501kは、受信機106kより供給される誤り情報信号Sekが示す受信情報のビット誤り率としきい値THとの比較結果を誤り検知信号Sjkとして出力する。誤りモニタ部113は、ビット誤り率がしきい値THよりも大きい場合には、ビット誤り率が異常に高いことを示す論理値“1”の誤り検知信号Sjkを出力する。
次に、ステップS7において受信情報の誤り率が所定値を超えているチャンネルが存在しないと判断された場合には、全てのチャンネルの符号器および復号器は正常であると判断し、この場合、符号器および復号器の温度制御は行わない(ステップS8)。
一方、ステップS7において受信情報において誤り率が所定値を超えているチャンネルが存在すると判断された場合には、誤り率が所定値を超えているチャンネルを特定する(ステップS9)。かかる特定は、誤りモニタ部113より送出される誤り検知信号Sjkが設定温度算出部116において認識されることにより実現される。
次にステップS9において特定されたチャンネルの復号器において障害が生じているものと判断して、その特定されたチャンネルの復号器を温度制御の対象とする(ステップS10)。設定温度算出部116において、論理積演算器606kがパワー増大検知信号Sfの論理否定と、パワー減少検知信号Sgの論理否定と、誤り検知信号Sjkの論理積を演算することにより、上記ステップS7からS9の処理が実現される。温度制御の対象が特定されると、その対象となったチャンネルに対応する論理積演算和607kは、第2トリガ信号を復号器温度計算部608kに送出する。復号器温度計算部608kは、かかる第2トリガ信号を契機として温度制御対象の復号器の設定温度の算出処理を開始する。
2.符号器の温度制御方法
本発明に係る光符号分割多重通信システムにおける符号器の温度制御の方法を符号器温度計算部602kの動作とともに説明する。図13Aおよび図13Bは、本発明に係る光符号分割多重通信システムにおいて実施される符号器の温度制御の方法を示すフローチャートである。符号器の障害を特定できる場合、その符号器の温度を変化させ、変動が生じた符号値を対応する復号器(同一チャンネルの復号器)の符号値に一致するように補正することで障害を解消することができる。
本システムにおいて、符号器の温度制御を実施する場合は、上記(i)に該当する場合である。つまり、複数チャンネルの符号器が同一符号値を持つこととなり、同一の符号値によって符号化された複数の符号化信号が多重伝送されている場合である。図13Aおよび図13Bにおいて、符号器に障害が生じているチャンネルをチャンネルk、チャンネルkの変動後の符号値と同一符号値を持つチャンネルをチャンネルy1、これら以外のチャンネルをチャンネルy2とする。
障害が生じている符号器の特定は、図12に示すフローチャートに示す処理を実行することにより行われる。障害が生じた符号器に対しての温度制御は、設定温度算出部116における論理積演算部601kより送出される第1トリガ信号の論理値が“1”になったことをトリガとして開始される。第1トリガ信号は、符号器温度計算部602kのSRフリップフロップ708に供給される。符号器の障害を検出してから温度制御が完了するまでの間に第1トリガ信号の論理値が“0”になってしまうこともあるので、SRフリップフロップ708を用いて温度制御が完了するまでの間は論理値を“1”に保持しておく。
第1トリガ信号に基づいて温度制御が開始されると、符号器温度計算部602kは障害が生じているチャンネルkの符号器301kの温度をモニタする(ステップS11)。すなわち、OCDM回線部103より供給されるチャンネルkの温度情報信号Sockは、メモリ711に記録される。
符号器温度計算部602kは、符号器301kの温度制御を行う場合における温度変化の方向、つまり、加熱するか冷却かを決定する。すなわち、符号器温度計算部602kは、符号器301kの温度モニタ値が符号器301kの設定温度として設定することが可能な温度範囲の中央値よりも高いか否かを判断する(ステップS12)。ステップS12において、符号器301kの温度モニタ値が、符号器301kの設定温度範囲の中央値よりも高いと判断された場合には、符号器温度計算部602kは、符号器301kに対して冷却する方向の温度変化を与えるべく温度設定信号Stckを出力する(ステップS13)。一方、ステップS12において、符号器301kの温度モニタ値が、符号器301kの設定温度範囲の中央値よりも低いと判断された場合には、符号器温度計算部602kは、符号器301kに対して加熱する方向の温度変化を与えるべく温度設定信号Stckを出力する(ステップS14)。
ここで、加算器712および除算器713は上記した符号器301kの設定温度として設定することが可能な温度範囲の中央値を出力するための手段である。比較器714は、メモリ711から供給される符号器301kの温度モニタ値と、除算器713から供給される設定温度範囲の中央値とを比較する手段である。比較器714の出力は、2分岐され一方がTフリップフロップ720のSポートに、他方が論理否定演算器715を経由してTフリップフロップ720のRポートに入力される。すなわち、SポートとRポートにおいて一方が論理値“1”他方が論理値“0”となる。このとき、Tフリップフロップ720のCLKポートに入力される論理値は変化がない。その結果、スイッチ722に入力される論理値が初期化される。スイッチ722は、温度制御における温度変化の方向を選択する手段であり、Tフリップフロップ720の出力信号に基づいて、入力される温度変化量ΔT又は−ΔTのいずれか一方を選択して出力することにより、加熱か冷却かを決定する。加算器723は、メモリ711から供給される符号器301kの温度モニタ値とスイッチ722から供給される温度変化量ΔT又は−ΔTとを加算して出力する。符号器温度計算部602kは、かかる加算器723の出力信号を温度設定信号Stckとして出力し、これを温度制御部120に供給する。温度制御部120は、符号器301kの温度が温度設定信号Stckが示す値となるように、温度制御信号Svckを生成し、これをOCDM回線部103内の符号器301kに付随する温度変動素子302kに供給する。温度変動素子302kは、温度制御信号Svckに応じて自身の温度を変動させ、符号器301kとの接触による熱伝導を介して符号器301kの温度を変化させる。
符号器301kの温度制御を行っている間、全チャンネルの受信光信号の平均パワーの変化をモニタしておく。すなわち、符号器温度計算部602kは、個別チャンネルパワー増大検知信号Sh1乃至ShM、および個別チャンネルパワー減少検知信号Si1乃至SiM(Sik除く)を取り込むことで、各チャンネルの受信光信号のパワー変化を監視する。
符号器温度計算部602kは、符号器301kの温度制御を開始してからチャンネルy1の受信光信号のパワー変化が増大でも減少でもなくなる最初の時点におけるチャンネルkの符号器301kの温度(t1)を記録する(ステップS15、16)。符号器温度計算部602kは、その後も引き続き加熱方向、あるいは冷却方向に符号器301kの温度を変化させ続ける。(ステップS17)。ここで、チャンネルy1の受信光信号のパワー変化が増大でも減少でもなくなる最初の時点はとは、論理否定演算器736から出力される論理値が“0”から“1”に変化する時点である。かかる論理否定演算器736の出力論理値の変化によって、カウンタ728の保持している値は“0”から“1”に変化し、これにより、比較器729の出力論理値は“0”から“1”に変化する。そして、この比較器729の出力論理値の変化をトリガとして、SRフリップフロップ701、702をリセットし、それまでの受信光信号のパワー変化の情報を以降のパワー変化の情報に含めないようにする。また、比較器729の出力論理値の変化をトリガとしてSRフリップフロップ716をセットする。これによりTフリップフロップ720のSポートおよびRポートへの入力論理値はともに“1”となり、以降Tフリップフロップ720はトグル動作となる。更に、比較器729の出力論理値の変化をトリガとして、メモリ732は、符号器301kの温度情報(t1)を読み込む。
符号器301kの温度が継続的に変化している途中で、チャンネルkの受信光信号の平均パワーが増大する場合(ステップS18、S19)、符号器温度計算部602kは、そのパワーが最大となるときの温度を符号器301kの温度設定値として確定させ、符号器301kの温度制御を終了する(ステップS20、S21)。これにより、障害が生じていたチャンネルkの符号器301kの符号値は、対応するチャンネルkの復号器307kの符号値と一致することとなり、チャンネルkにおいて通信が可能となる。ここで、チャンネルkの受信光信号の平均パワーが最大となる時点において個別チャンネルパワー増大検知信号Shkの値が“1”から“0”に変化する。かかる変化をトリガとして、加算器723の出力がスイッチ724を介してメモリ725に読み込まれ、その値が温度設定信号Stckとして継続的に出力される。これにより、符号器301kは、本来の適正な符号値を保つように温度制御がなされるので、チャンネルkにおいて通信可能な状態が維持されることとなる。
符号器301kの温度が変化している途中で、チャンネルy2の受信光信号パワーが増大する場合(S19 no)、符号器温度計算部602kは、それまでの温度変化の方向を反転させる(S22、S23、S24)。かかる温度変化の方向の反転はTフリップフロップ729のトグル動作を利用する。論理演算器705の出力は、チャンネルk以外のチャンネルの受信光信号の平均パワーが増大すると論理値“1”を出力する。これにより、Tフリップフロップ720のCLKポートが論理値“0”から“1”に変化する。かかる変化をトリガとして、Tフリップフロップ720から出力される論理値は反転し、スイッチ722から出力される温度変化量を示す値の正負の符号が反転する。
符号器温度計算部602kは、温度変化の方向を反転させた後、チャンネルy2の受信光信号の平均パワーが増大でも減少でもなくなる最初の時点における符号器301kの温度(t2)を記録する(ステップS25、S26)。そして、符号器温度計算部602kは、ステップS16において記録した符号器301kの温度(t1)と、ステップS26において記録した符号器301kの温度(t2)の中点温度(t3)を算出し(ステップS27)、かかる温度(t3)を符号器301kの温度設定値として確定させ、符号器301kの温度制御を終了する(ステップS27、S28)。この場合、温度(t3)に制御された符号器301kは、いずれのチャンネルにも割り当てられていない未使用の符号値を有することとなり、対応する復号器307kと異なった符号値を持つこととなる。従って、この場合は、後述する方法で復号器307kの温度制御をすることで符号器301kと復号器307kの符号値を一致させる。ここで、チャンネルy2の受信光信号の平均パワーが増大でも減少でもなくなる最初の時点において、論理否定演算器736から出力される論理値は“0”から“1”に変化する。かかる変化をトリガとしてカウンタ728の保持している値は“1”から“2”に変化する。これにより比較器730から出力される論理値は“0”から“1”に変化する。メモリ732は、比較器730の出力変化をトリガとして符号器301kの温度情報(t2)を読み込み、遅延器733によって付与された遅延時間が経過した後、記録した温度情報(t2)を出力する。これと同時にメモリ732は、ステップS16において記録した温度情報(t1)を出力する。加算器734および除算器735は、温度情報t1およびt2の中点温度(t3=(t1+t2)/2)を算出する。また、比較器730の出力変化をトリガとして、除算器735から出力される値(t3)がスイッチ724を介してメモリ725に読み込まれ、その値(t3)が温度設定信号温度設定信号Stckとして出力される。同時に論理和演算器741から出力される論理値が“0”から“1”に変化し、この変化をトリガとして符号器温度計算部602kの動作がリセットされる。
ステップS17において符号器301kの温度を継続的に変化させている場合において、符号器301kの温度が温度設定範囲の上限又は下限に達するまでの間に、チャンネルkおよびチャンネルy2における受信光信号の平均パワーが変化しない場合(ステップS18 no)、符号器温度計算部602kは、ステップS16において記録した値(t1)を符号器301kの温度設定値として確定させ、温度制御を終了する(ステップS29、S30)。この場合、かかる温度(t1)に制御された符号器301kは、いずれのチャンネルにも割り当てられていない未使用の符号値を有することとなり、対応する復号器307kと異なった符号値を持つこととなる。従って、この場合は、後述する方法で復号器307kの温度制御をすることで符号器301kと復号器307kの符号値を一致させる。ここで、比較器737、738は符号器301kの温度が設定可能な温度範囲外にあるか否かを判断する手段である。符号器301kの温度が設定可能な温度範囲外にあるとき、論理和演算器739から出力される論理値は“0”から“1”に変化する。この変化をトリガとして、メモリ731に記録された温度情報(t1)がスイッチ724を通してメモリ725に読み込まれ、その値(t1)が温度設定信号Stckとして出力される。
3.復号器の温度制御方法
本発明に係る光符号分割多重通信システムにおける復号器の温度制御の方法を復号器温度計算部608kの動作とともに説明する。図14は、本発明に係る光符号分割多重通信システムにおいて実施される復号器の温度制御の方法を示すフローチャートである。
復号器の温度制御が必要な場合は、多重される全てのチャンネルの符号器が異なる符号値を有しているが、符号器と復号器で符号値が異なるチャンネルが存在する場合である。この場合、受信情報の誤り率をモニタすると、誤り率がしきい値に比べて大きくなる。ここでしきい値とは、正常通信できているものとみなせる最大の誤り率のことである。(符号器・復号器の符号値が一致していたとしても、例えば雑音等の影響でビット誤りは生じるため、しきい値を0とすることはできない)。以下の説明においては、復号器に障害が生じているチャンネルをチャンネルkとする。
障害が生じている復号器の特定は、図12に示すフローチャートに示す処理を実行することにより行われる。障害が生じた復号器に対しての温度制御は、設定温度算出部116における論理積演算部607kより送出される第2トリガ信号の論理値が“1”になったことを契機として開始される。尚、上記した符号器の温度制御が完了した際に、復号器の温度制御が必要となる場合(ステップS27、S29で符号器の温度制御が終了する場合)においても、当該チャンネルkにおいて第2トリガ信号が生成されることとなる。
第2トリガ信号は、復号器温度計算部607kのSRフリップフロップ803に供給される。復号器307kの障害を検出してから温度制御が完了するまでの間に第2トリガ信号の論理値が“0”になってしまうこともあるので、SRフリップフロップ803を用いて温度制御が完了するまでの間は論理値を“1”に保持しておく。
第2トリガ信号に基づいて復号器307kの温度制御が開始されると、復号器温度計算部608kは障害が生じているチャンネルkの符号器307kの温度をモニタする(ステップS51)。すなわち、OCDM回線部103より供給されるチャンネルkの温度情報信号Sodkは、メモリ806に記録される。
復号器温度計算部608kは、復号器301kの温度制御を行う場合における温度変化の方向、つまり、加熱するか冷却かを決定する。すなわち、復号器温度計算部608kは、復号器307kの温度モニタ値が符号器307kの設定温度として設定することが可能な温度範囲の中央値よりも高いか否かを判断する(ステップS52)。ステップS52において、復号器307kの温度モニタ値が、復号器301kの設定温度範囲の中央値よりも高いと判断された場合には、復号器温度計算部608kは、復号器307kに対して冷却する方向の温度変化を与えるべく温度設定信号Stmkを出力する(ステップS53)。一方、ステップS52において、復号器307kの温度モニタ値が、復号器307kの設定温度範囲の中央値よりも低いと判断された場合には、復号器温度計算部608kは、復号器307kに対して加熱する方向の温度変化を与えるべく温度設定信号Stmkを出力する(ステップS54)。
ここで、加算器807および除算器808は上記した復号器307kの設定温度として設定することが可能な温度範囲の中央値を出力するための手段である。比較器809は、メモリ806から供給される復号器307kの温度モニタ値と、除算器808から供給される設定温度範囲の中央値とを比較する手段である。比較器808の出力は、2分岐され、一方がTフリップフロップ815のSポートに、他方が論理否定演算器812を経由してTフリップフロップ815のRポートに入力される。すなわち、SポートとRポートにおいて一方が論理値“1”他方が論理値“0”となる。このとき、Tフリップフロップ815のCLKポートに入力される論理値は変化がない。その結果、スイッチ817に入力される論理値が初期化される。スイッチ817は、温度制御における温度変化の方向を選択する手段であり、Tフリップフロップ817の出力信号に基づいて、入力される温度変化量ΔT又は−ΔTのいずれか一方を選択して出力することにより、加熱か冷却かを決定する。加算器723は、メモリ806から供給される復号器307kの温度モニタ値とスイッチ817から供給される温度変化量ΔT又は−ΔTとを加算して出力する。符号器温度計算部602kは、かかる加算器723の出力信号を温度設定信号Stmkとして出力し、これを温度制御部120に供給する。温度制御部120は、復号器307kの温度が温度設定信号Stmkが示す値となるように、温度制御信号Svmkを生成し、これをOCDM回線部103内の復号器307kに付随する温度変動素子308kに供給する。温度変動素子308kは、温度制御信号Svckに応じて自身の温度を変動させ、復号器301kとの接触による熱伝導を介して復号器307kの温度を変化させる。
復号器307kの温度制御を行っている間、チャンネルkにおける受信情報の誤り率をモニタしておく。すなわち、復号器温度計算部608kは、誤りモニタ部113から供給される誤り検知信号Sjkを取り込むことで、チャンネルkの受信情報の誤り率を監視する。
復号器温度計算部608kは、復号器307kの温度制御を開始してチャンネルkの受信情報の誤り率がしきい値TH未満となるとき、温度変化を停止する。すなわち、復号器温度計算部608kは、このときの温度を復号器307kの温度設定値として確定させ、温度制御を終了する(ステップS55、S56)。これにより、復号器307kは、誤り率が正常時の値となるように温度制御がなされるので、チャンネルkにおいて通信が可能となる。ここで、チャンネルkの受信情報の誤り率がしきい値TH未満となるとき、論理否定演算器802の出力論理値は“0”となり、これによってスイッチ823は出力信号の送出を停止させる。従ってメモリ824には、チャンネルkの受信情報の誤り率がしきい値未満となったときの値が保持される。復号器温度計算部608kは、メモリ824に保持された値を温度設定信号Stmkとして出力し、これを温度制御部120に供給する。
復号器温度計算部608kは、復号器307kの設定温度範囲の限界に達するまでの間にチャンネルkの受信情報の誤り率がしきい値未満とならないとき、それまでの温度変化の方向を反転させる(ステップS57、S58、S59、S60)。復号器温度計算部608kは、復号器307kの温度変化を反転させた後、チャンネルkの受信情報の誤り率がしきい値TH未満となるとき、温度変化を停止する。すなわち、復号器温度計算部608kは、このときの温度を復号器307kの温度設定値として確定させ、温度制御を終了する(ステップS61、S62)。これにより、復号器307kは、誤り率が正常時の値となるように温度制御がなされるので、チャンネルkにおいて通信が可能となる。
ここで、比較器819、820は復号器307kの温度が設定温度範囲外にあるか否かを判断する手段である。復号器307kの温度が設定温度範囲外にあるとき、論理和演算器821から出力される論理値は“0”から“1”に変化する。温度変化の方向の反転は、Tフリップフロップ815のトグル動作を利用する。論理和演算器821から出力される論理値が“1”となると、SRフリップフロップ811はセットされ、Tフリップフロップ815のSポートおよびRポートへの入力はともに論理値“1”となり、以降、Tフリップフロップ815はトグル動作となる。また、論理和演算器821から出力される論理値が“1”となると、Tフリップフロップ815のCLKポートへの入力が論理値“0”から“1”に変化する。この変化をトリガとして、Tフリップフロップ815から出力される論理値は反転し、スイッチ817から出力される温度変化量を示す値の正負の符号が反転する。ここで論理和演算器821から出力される論理値信号は遅延器822を通過することにより遅延時間が付加されるので、Tフリップフロップ815がトグル動作となった後にその論理値の変化がTフリップフロップ815のCLKポートに入力されることとなる。
復号器温度計算部608kは復号器307kの温度変化の方向を反転させた後、復号器307kの設定温度範囲の限界に達するまでの間にチャンネルkの受信情報の誤り率がしきい値TH未満とならないとき、復号器307kの温度制御を終了する(ステップS64)。この場合、符号器301kおよび復号器307kの温度制御によっては、チャンネルkにおける通信を回復することはできない。尚、この場合、OCDM回線部103等に表示部を設け、当該チャンネルkにおいて通信を回復することができない旨をその表示部に表示することとしてもよい。
以上の説明から明らかなように、本発明の符号分割多重通信システムおよび符号分割多重通信方法システムの障害回復方法によれば、受信光信号の平均パワーのモニタによって障害が発生したチャンネルを特定することができ、更に符号器又は復号器のいずれに障害が生じているのかを特定することが可能となる。そして、障害発生が検出されたチャンネルの符号器に対しては、全チャンネルの受信光信号の平均パワーをモニタしつつ符号器の温度制御を行うことによって、また復号器に対しては受信情報の誤り率をモニタしつつ復号器の温度制御を行うことによって、符号器と復号器の符号値が一致することとなるように符号値を修正するので、他のチャンネルにおける通信に影響を与えることなく通信を回復させることが可能となる。
また、本発明に係る符号分割多重通信システムによれば、符号器の符号値を未使用チャンネルの符号値に固定する設定も可能であることから、既存のOCDM回線に新たにチャンネルを追加する場合において、帯域割当をやり直し、追加した全チャンネルに対して新たな帯域分割を行うといった処置が不要である。