(第1の実施形態)
以下、本発明の第1の実施形態について図面を参照して説明する。図1は、第1の実施形態の通信システム100の構成を示すブロック図である。通信システム100は、送信装置1、受信装置2及び送信装置1と受信装置2の間を接続する伝送路3を備える。伝送路3は、例えば、マルチモードの光ファイバであり、複数の空間モードの光信号を伝送する。
送信装置1は、Nt個の送信部11-1~11-Ntと光結合部10を備える。ここで、Ntは、2以上の整数である。送信部11-1は、送信処理部12-1と搬送波生成部13-1を備える。送信部11-2~11-Ntの各々は、符号の枝番号に対応する送信処理部12-2~12-Nt及び搬送波生成部13-2~13-Ntを備える。
搬送波生成部13-1~13-Ntの各々は、搬送波、すなわちキャリアを生成する。第1の実施形態では、搬送波生成部13-1~13-Ntとして、信号光光源が適用され、搬送波生成部13-1~13-Ntの各々は、キャリアとなる連続光を出射する。送信処理部12-1~12-Ntの各々は、それぞれ独立した情報の系列であるデータ系列を送信データ系列として取り込む。なお、以下では、送信処理部12-1,12-2,…,12-Ntの各々が取り込む送信データ系列のそれぞれを、第1データ系列,第2データ系列,…第Ntデータ系列といい、第1データ系列~第Ntデータ系列のNt個の送信データ系列を成分とするベクトルを送信信号ベクトルxという。
送信処理部12-1~12-Ntの各々は、各々が取り込んだ第1データ系列~第Ntデータ系列を符号化する。送信処理部12-1~12-Ntの各々は、内部に光変調器を備える。送信処理部12-1~12-Ntの各々は、内部の光変調器を用いて、各々が符号化した電気信号の第1データ系列~第Ntデータ系列を変調信号として、各々に対応する搬送波生成部13-1~13-Ntが出射するキャリアの連続光を変調することにより、送信データ系列から光信号を生成する。
より詳細には、送信処理部12-1~12-Ntの各々が内部に備える光変調器の各々の電気入力には、送信処理部12-1~12-Ntの各々が符号化した第1データ系列~第Ntデータ系列の電気信号が印加される。送信処理部12-1~12-Ntの各々が内部に備える光変調器の各々の光入力には、各々に対応する搬送波生成部13-1~13-Ntが出射するキャリアの連続光が与えられる。ここで、一般的には、同期したNt系列の連続光を得るために、送信処理部12-1~12-Ntの各々が内部に備える光変調器に与える連続光として、単独の連続光を光分岐して光増幅する手法、または、注入同期を行う手法などが採用される。これに対して、第1の実施形態の送信装置1では、このような同期の手法を行う構成は必要とせず、搬送波生成部13-1~13-Ntが出射するキャリアの連続光の各々が、非同期の状態であってもよい。
光結合部10は、送信処理部12-1~12-Ntの各々は、生成したNt個の光信号を結合して、伝送路3に送出する。伝送路3は、Nt個の光信号を各空間モードの光信号として受信装置2に伝送する。
受信装置2は、光分岐部20、Nr個の受信部21-1~21-Nr及び信号検出部24を備える。ここで、Nrは、2以上の整数である。伝送路3を伝搬する各空間モードの光信号は、伝送路3を伝搬する間に混合する。光分岐部20は、各空間モードの光信号が混合した光信号をNr個の光信号に分岐する。
受信部21-1は、受信処理部22-1と局部発振部23-1を備え、同様に、受信部21-2~21-Nrの各々は、符号の枝番号に対応する受信処理部22-2~22-Nr及び局部発振部23-2~23-Nrを備える。局部発振部23-1~23-Nrの各々は、復調に用いられる局部発振信号を生成して出力する。第1の実施形態では、局部発振部23-1~23-Nrとして、局部発振光光源が適用され、局部発振部23-1~23-Nrの各々は、局部発振信号としてコヒーレント検波に用いられる連続光を出射する。
受信処理部22-1~22-Nrの各々は、内部にコヒーレント検波を行う復調器を備える。受信処理部22-1~22-Nrの各々は、内部に備える復調器に対して、各々に対応する局部発振部23-1~23-Nrが出射する連続光を与えて、各々に対して光分岐部20が出力する光信号に対してコヒーレント検波を行うことにより、光信号を復調して電気信号の受信データ系列を生成する。
ここで、伝送路3が伝送する光信号のモード数を「Nm」とした場合、送信部11-1~11-Ntの台数Ntと、受信装置2の受信部21-1~21-Nrの台数Nrと、Nmとの関係は、Nt≦Nr≦Nmである。独立信号の搬送モードとして、モード数Nmをどれぐらいの数にするかは、Nt≦Nm、かつNr≦Nmとなるように利用者によって予め定められる。MIMO通信では一般的に、Nt≦Nm、Nr≦Nmであるため、上記した条件であるNt≦Nr≦Nmの関係が成立する。なお、送信装置1においてNm以下のモードを励振していても、光ファイバの曲がりやねじれ、マイクロベンディング等のファイバ不完全性のために全モードの光が励振される場合がある。そのような場合に、良好なMIMOによる受信を行うためには、Nr=Nmとするのが望ましい。
信号検出部24は、デジタル信号処理部25、重み行列算出部26、記憶部27及びキャリア位相回復部28を備える。デジタル信号処理部25は、受信処理部22-1~22-Nrが生成したNr個の受信データ系列に対して、以下のデジタル信号処理を行う。デジタル信号処理部25は、伝送路3による伝送によりNr個の受信データ系列の各々の波形に生じた歪み等をデジタル信号処理により除去する。デジタル信号処理部25は、伝送路3による伝送によりNr個の受信データ系列の各々において生じた誤りをデジタル信号処理により訂正する。これにより、Nr個の受信データ系列を分離することができ、分離したNr個の受信データ系列に基づいて、Nt個の送信データ系列を推定することが可能になる。以下、デジタル信号処理部25がデジタル信号処理を行って出力するNr個の受信データ系列を成分とするベクトルを受信信号ベクトルyという。
重み行列算出部26は、デジタル信号処理部25がデジタル信号処理した受信信号ベクトルyに対して信号分離を行う手法の1つである平均最小二乗誤差(以下「MMSE」(Minimum Mean Square Error)ともいう)法を用いる際に必要となる重み行列Wを算出する。
記憶部27は、図2に示すように、第1データベース部31、第2データベース部32及び第3データベース部33を備える。第1データベース部31は、事前状態推定値、事後状態推定値、事前誤差共分散行列P-、事後誤差共分散行列Pを記憶する。事前状態推定値と事後状態推定値は、ベクトルであり、それぞれ次式(1)、(2)として表される。
以下、本文では、式(1)の事前状態推定値を表す記号を、ベクトル^φ-と記載し、式(2)の事後状態推定値を表す記号を、ベクトル^φと記載する。
第2データベース部32は、システム雑音共分散行列Qと、観測雑音共分散行列Rとを記憶する。
第3データベース部33は、重み行列算出部出力データ、事前出力信号、カルマンゲイン行列G、補助行列A、補助行列B及び補助行列Cを記憶する。重み行列算出部出力データは、重み行列算出部26によって書き込まれるデータであり、重み行列Wと、受信信号ベクトルyとが含まれる。
事前出力信号は、ベクトルであり、次式(3)として表される。以下、本文では、次式(3)の事前出力信号を表す記号を、ベクトル^x-と記載する。
なお、サンプリング時刻を示す変数をkとした場合、記憶部27における、第1データベース部31、第2データベース部32及び第3データベース部33が記憶するベクトル及び行列のうちシステム雑音共分散行列Q及び観測雑音共分散行列Rを除くベクトル及び行列は、各々に対応するサンプリング時刻を示す変数kを付すことが正確な表記であるが、図2では、変数kを付さずに示している。ここで、変数kは、自然数であるが、以下において、予め定められる初期値を示す場合、変数kの値として「0」を示す場合もある。
キャリア位相回復部28は、搬送波生成部13-1~13-Ntの位相揺らぎに起因する妨害成分と、局部発振部23-1~23-Nrの位相揺らぎに起因する妨害成分とを推定する。キャリア位相回復部28は、推定した2つの妨害成分を除去した送信信号ベクトルxの推定系列を算出する。
第1の実施形態では、キャリア位相回復部28は、2つの妨害成分として、搬送波生成部13-1~13-Ntの各々の光源の位相揺らぎに起因する位相雑音成分と、局部発振部23-1~23-Nrの各々の光源の位相揺らぎに起因する位相雑音成分とを推定する。
ここで、搬送波生成部13-1~13-Ntの各々の光源の位相揺らぎに起因する位相雑音成分をφ1
t,φ2
t,…,φNt
tとし、局部発振部23-1~23-Nrの各々の光源の位相揺らぎに起因する位相雑音成分を、φ1
r,φ2
r,…,φNr
rとする。搬送波生成部13-1~13-Ntの各々の光源の位相揺らぎに起因する位相雑音成分φ1
t,φ2
t,…,φNt
tを成分とする列ベクトルである位相雑音成分ベクトルφtを次式(4)として定義する。
局部発振部23-1~23-Nrの各々の光源の位相揺らぎに起因する位相雑音成分φ1
r,φ2
r,…,φNr
rを成分とする列ベクトルである位相雑音成分ベクトルφrを次式(5)として定義する。
なお、本文では、「Nt」、「Nr」の添え字の「t」と「r」を下付き文字にはしていないが、式(4)、(5)に示すように、数式においては、見易さの観点から「Nt」及び「Nr」の添え字の「t」と「r」とを下付き文字として示しており、以下に示す数式においても同様に示すものとする。
ここで、位相雑音成分ベクトルφtから算出されるベクトルθtと、位相雑音成分ベクトルφrから算出されるベクトルθrとをそれぞれ、次式(6)、(7)として定義する。
式(6)のベクトルθtの成分を対角成分に並べた行列Dtを次式(8)として定義し、式(7)のベクトルθrの成分を対角成分に並べた行列Drを次式(9)として定義する。
送信信号ベクトルxを次式(10)として定義し、受信信号ベクトルyを次式(11)として定義する。
受信信号ベクトルyが得られるまでに付加される雑音、言い換えると、通信路である伝送路3と、送信装置1の送信処理部12-1~12-Ntや受信装置2の受信処理部22-1~22-Nrや受信装置2のデジタル信号処理部25などの送受信回路によって付加される雑音をまとめた雑音ベクトルzを次式(12)として定義する。
伝送路3の通信路行列を、Nr行Nt列のサイズの行列である通信路行列Hと定義する。この場合、次式(13)に示す関係が成り立つ。
式(13)に示すベクトル及び行列に含まれる成分の値は、サンプリング時刻ごとに変化する値であり、サンプリング時刻を示す変数kを付すことが正確な表記であるが、ここでは、見易さのために簡略化してkを付さずに示している。なお、以下の数式の記載においても、数式の内容からサンプリング時刻を示す変数kを付すことが自明である場合には、変数kを省略して示す場合があるものとする。
重み行列算出部26が算出する重み行列Wを用いたMIMO線形受信の目的とは、デジタル信号処理部25がデジタル信号処理した受信信号ベクトルyに、重み行列Wを乗算することにより、通信路、すなわち伝送路3における空間チャネル間の結合を仮想的に解いて、Nt個の送信データ系列の推定系列を得ることである。これに対して、キャリア位相回復部28が行う処理の目的とは、位相雑音成分ベクトルφtと、位相雑音成分ベクトルφrとを縦に並べた(Nt+Nr)行の列ベクトルである位相雑音成分ベクトルφをサンプリング時刻ごとに推定し、MIMO線形受信により得られるNt個の送信データ系列の推定系列から更に、推定した位相雑音成分ベクトルφを除去することである。
キャリア位相回復部28は、予め定義する観測方程式及び状態方程式に対してカルマンフィルタアルゴリズムを適用して状態ごとに得られる観測情報に基づいて、位相雑音成分ベクトルφをサンプリング時刻ごとに推定する処理を行う。以下、カルマンフィルタアルゴリズムを用いる際に予め定義する必要のある観測方程式と、状態方程式とについて説明する。
重み行列算出部26が算出する重み行列Wの設計規範として、一般的なMMSE法が適用される場合、通信路行列Hがユニタリ行列でない場合、重み行列Wの乗算によって空間チャネル間の影響を完全に取り除くことができず干渉成分が残留することになる。この残留する干渉成分と、雑音ベクトルzとをまとめると、次式(14)として表すことができる。
以下、本文では、式(14)の左辺の記号を~zと記載する。式(14)において、γは、伝送路3を伝搬した後の信号対雑音比であり、行列Fは、次式(15)により定義される行列である。次式(15)において、INtは、N行N列の単位行列である。
受信信号ベクトルyから送信信号ベクトルxの推定系列を得るためには、キャリア位相回復部28が推定する位相雑音成分ベクトルφに基づいて、搬送波生成部13-1~13-Ntに起因する位相ずれの分の回転演算である行列Dt
Hを乗算する演算と、局部発振部23-1~23-Nrに起因する位相ずれの分の回転演算であるベクトルθr*を乗算する演算を行った上で~zを除去する必要がある。この関係を式で示すと、次式(16)として表すことができる。
式(16)は、送信信号ベクトルxの推定系列を観測情報とし、~zを観測雑音とする観測方程式ということができる。観測方程式の表記を簡略化するため、次式(17)に示す非線形関数h(φ)を定義する。
式(17)の非線形関数h(φ)を用いることにより、式(16)の観測方程式を次式(18)として表すことができる。
キャリア位相回復部28が推定する位相雑音成分ベクトルφに関する状態方程式は、次式(19)として表すことができる。
式(19)において、ベクトルv(k)は、(Nt+Nr)行のベクトルである。ここで、受信部21-1~21Nrが行うコヒーレント検波の特性を考慮し、位相雑音成分ベクトルφの成分のうち特定の1つの成分を定常的な値、すなわち参照角とする。このように、位相雑音成分ベクトルφの成分のうち特定の1つの成分を参照角とする理由は、複数存在する最小二乗解から特定の解に限定するためである。特定の1つの成分の選び方は、任意に定めてもよい。ここでは、送信側の搬送波生成部13-1~13-Ntの各々の位相揺らぎに起因する位相雑音成分をφ1
t,φ2
t,…,φNt
tの中から参照角となる位相雑音成分としてφ1
tを選択し、更に、一般性を失わないようにするため、φ1
t=0とする。参照角を「0」にする理由は、例えば、QPSK(Quadra Phase Shift Keying)のような変調方式で変調された信号を送信する場合、参照角を0とすることで、他の未知数に対する最小二乗解も通信において意味のある解になることが期待されるためである。この場合、ベクトルv(k)は、次式(20)として表すことができる。
上記の式(20)に示すように、ベクトルv(k)の第1の成分v1(k)は、参照角であるため「0」であり、残りの(Nt+Nr-1)個のv2(k)~vNt+Nr(k)の成分は、平均0、分散2πΔvTの白色雑音である。ここで、Δvは、搬送波生成部13-1~13-Nt及び局部発振部23-1~23-Nrの線幅であり、Tは、サンプリング周期である。
式(18)により示される観測方程式と、式(19)により示される状態方程式とに基づくカルマンフィルタアルゴリズムは、1.事前状態推定値更新、2.事前誤算共分散更新、3.カルマンゲイン更新、4.事後状態推定値更新、5.事後誤差共分散更新、6.信号出力値という一連の演算を繰り返すアルゴリズムになる。「1.事前状態推定値更新」の演算は、式(21)によって表される。
上記の式(21)において、ベクトル^φ-(k)は、式(1)に示した事前状態推定値であってサンプリング時刻が(k)の場合の事前状態推定値であり、ベクトル^φ(k-1)は、式(2)に示した事後状態推定値であってサンプリング時刻が(k-1)の事後状態推定値である。「2.事前誤差共分散更新」の演算は、次式(22)によって表される。
上記の式(22)において、行列P(k)-は、サンプリング時刻が(k)の場合の事前誤差共分散行列であり、行列P(k-1)は、サンプリング時刻が(k-1)の場合の事後誤差共分散行列である。式(22)の行列Qは、次式(23)により定義されるシステム雑音共分散行列であり、次式(23)のE[・]は、期待値演算を示す記号である。
「3.カルマンゲイン更新」の演算は、次式(24)として表される。
上記の式(24)において、行列G(k)は、カルマンゲイン行列である。式(24)の行列Rは、次式(25)により定義される観測雑音共分散行列であり、次式(25)のE[・]は、期待値演算を示す記号である。
式(24)の行列Tは、次式(26)により定義される行列である。次式(26)から分かるように、行列Tは、その一部に、事前出力信号であるベクトル^x-の成分である^x1
-~^xNt
-を含む行列である。
なお、式(26)では、行列T(k)を、式の記載の見易さの観点からサンプリング時刻を示す変数kを省略して表記しているが、行列T(k)の成分は、サンプリング時刻ごとに変化する値であり、サンプリング時刻を考慮した正式な表記は、次式(27)である。
「4.事後状態推定値更新」の演算は、次式(28)により表される。次式(28)において、ベクトル^x-(k)は、式(3)に示したように事前出力信号であってサンプリング時刻が(k)の場合の事前出力信号である。式(28)のベクトルxHD(k)は、事前出力信号のベクトル^x-(k)に対して所定の信号変調方式にしたがった仮判定を行うことにより得られる仮判定値ベクトルである。
「5.事後誤差共分散更新」の演算は、次式(29)により表される。
「6.信号出力値」の演算は、次式(30)により表される。式(30)の右辺のベクトル^x(k)が、送信信号ベクトルxの推定系列になる。
図3は、上記のカルマンフィルタアルゴリズムを実行するキャリア位相回復部28が備える機能部と、各々の機能部が、記憶部27が備える第1データベース部31、第2データベース部32及び第3データベース部33のいずれを利用するかを示したブロック図である。キャリア位相回復部28は、時刻更新部41、事前状態推定値更新部42、事前誤差共分散更新部43、事前出力信号算出部44、補助行列算出部45、カルマンゲイン更新部46、事後状態推定値更新部47、事後誤差共分散更新部48及び出力信号算出部49を備える。
時刻更新部41は、カルマンフィルタアルゴリズムにおけるサンプリング時刻を示す変数k(以下「サンプリング時刻k」ともいう)を生成して出力する。事前状態推定値更新部42は、上記した「1.事前状態推定値更新」の演算を行う。事前誤差共分散更新部43は、上記した「2.事前誤算共分散更新」の演算を行う。事前出力信号算出部44は、上記した「4.事後状態推定値更新」の演算において用いられるサンプリング時刻kにおける事前出力信号ベクトル^x-(k)と、上記した「3.カルマンゲイン更新」の演算において用いられるサンプリング時刻kにおける行列T(k)とを算出する。
補助行列算出部45は、上記した「3.カルマンゲイン更新」と「5.事後誤差共分散更新」の演算において用いられる次式(31)~式(33)により表される3つの補助行列A(k),B(k),C(k)を算出する。
カルマンゲイン更新部46は、上記の「3.カルマンゲイン更新」の演算を行う。ただし、式(24)に示した式に替えて、補助行列算出部45が算出する補助行列A(k)と、補助行列C(k)とを用いて、次式(34)の演算を行ってサンプリング時刻kのカルマンゲイン行列G(k)を算出する。
事後状態推定値更新部47は、上記した「4.事後状態推定値更新」の演算を行う。事後誤差共分散更新部48は、上記した「5.事後誤差共分散更新」の演算を行う。ただし、式(29)に示した式に替えて、補助行列算出部45が算出する補助行列A(k)を用いた次式(35)の演算を行ってサンプリング時刻kの事後誤差共分散行列P(k)を算出する。
出力信号算出部49は、上記した「6.信号出力値」の演算を行う。
(第1の実施形態のキャリア位相回復部による処理)
次に、図3、図4を参照しつつ、キャリア位相回復部28による処理について説明する。図4は、キャリア位相回復部28による処理の流れを示すフローチャートである。
以下に示す処理の前提として、重み行列算出部26は、デジタル信号処理部25が出力する受信信号ベクトルyを取り込むごとに、取り込んだ受信信号ベクトルyに対してMIMO線形受信を行う場合に適用する重み行列Wと、取り込んだ受信信号ベクトルyとに、サンプリング時刻を示す変数kを1から順に1ずつ増やして、W(k)、y(k)として第3データベース部33に書き込む処理を行う。言い換えると、第3データベース部33は、重み行列算出部出力データとして[W(1),y(1)],[W(2),y(2)],…という時系列のデータを記憶することになる。なお、重み行列算出部26は、例えば、送信装置1が周期的に送信信号ベクトルxに含めて送信する重み行列算出用のパイロットシンボルを予め内部の記憶領域に記憶させており、送信装置1が重み行列算出用のパイロットシンボルを送信した際に、デジタル信号処理部25が出力する受信信号ベクトルと、内部の記憶領域が記憶する重み行列算出用のパイロットシンボルとに基づいて、新たな重み行列Wの算出を行っているものとする。
第1データベース部31には、事後状態推定値の初期値としてベクトル^φ(0)が予め書き込まれており、事後誤差共分散行列の初期値として、事後誤差共分散行列P(0)が予め書き込まれているものとする。第2データベース部32には、システム雑音共分散行列Qが、式(20),(23)に基づいて予め算出されて書き込まれており、観測雑音共分散行列Rが、式(14),(25)に基づいて予め算出されて書き込まれているものとする。なお、式(25)において、~z(k)と、~zH(k)は、変数としてサンプリング時刻kを含んでいるが、式(14)から分かるように~zは、送信パワーに変化がなければ定常的な値となる。そのため、観測雑音共分散行列Rの変化は、サンプリング時刻kの間隔に比べて十分に長い間隔での変化であり、観測雑音共分散行列Rを定常的な値とみなすことができるため、観測雑音共分散行列Rを式(14),(25)に基づいて予め算出することができる。
時刻更新部41は、サンプリング時刻kの初期値を「1」とし、初期値のサンプリング時刻(k=1)を事前状態推定値更新部42に出力する(ステップS1)。
事前状態推定値更新部42は、時刻更新部41からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31から事後状態推定値であるベクトル^φ(k-1)を読み出して式(21)の演算、すなわち、読み出したベクトル^φ(k-1)を事前状態推定値であるベクトル^φ-(k)とする演算を行う。事前状態推定値更新部42は、事前状態推定値であるベクトル^φ-(k)を第1データベース部31に書き込んで更新する。第1データベース部31にサンプリング時刻k-1のベクトル^φ-(k-1)が書き込まれている場合、事前状態推定値更新部42は、ベクトル^φ-(k-1)を削除してベクトル^φ-(k)を書き込んで更新する。事前状態推定値更新部42は、サンプリング時刻kを事前誤差共分散更新部43に出力する(ステップS2)。
事前誤差共分散更新部43は、事前状態推定値更新部42からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第2データベース部32からシステム雑音共分散行列Qを読み出す。事前誤差共分散更新部43は、第1データベース部31から事後誤差共分散行列P(k-1)を読み出す。事前誤差共分散更新部43は、読み出したシステム雑音共分散行列Qと、事後誤差共分散行列P(k-1)とに基づいて、式(22)の演算を行って事前誤差共分散行列P-(k)を算出する。事前誤差共分散更新部43は、算出した事前誤差共分散行列P-(k)を第1データベース部31に書き込んで更新する。第1データベース部31にサンプリング時刻k-1の事前誤差共分散行列P-(k-1)が書き込まれている場合、事前誤差共分散更新部43は、事前誤差共分散行列P-(k-1)を削除して事前誤差共分散行列P-(k)を書き込んで更新する。事前誤差共分散更新部43は、サンプリング時刻kを事前出力信号算出部44に出力する(ステップS3)。
事前出力信号算出部44は、事前誤差共分散更新部43からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31から事前状態推定値であるベクトル^φ-(k)を読み出す。事前出力信号算出部44は、第3データベース部33から重み行列W(k)と、受信信号ベクトルy(k)を読み出す。事前出力信号算出部44は、読み出した事前状態推定値であるベクトル^φ-(k)と、重み行列W(k)と、受信信号ベクトルy(k)とに基づいて、次式(36)の演算を行って事前出力信号であるベクトル^x-(k)を算出する。
事前出力信号算出部44は、算出した事前出力信号であるベクトル^x-(k)と、事前状態推定値であるベクトル^φ-(k)と、重み行列W(k)と、受信信号ベクトルy(k)とに基づいて、式(26),(27)に示す行列T(k)を算出する。事前出力信号算出部44は、算出した事前出力信号であるベクトル^x-(k)を第3データベース部33に書き込んで更新する。第3データベース部33にサンプリング時刻k-1のベクトル^x-(k-1)が書き込まれている場合、事前出力信号算出部44は、ベクトル^x-(k-1)を削除してベクトル^x-(k)を書き込んで更新する。事前出力信号算出部44は、算出した行列T(k)と、サンプリング時刻kとを補助行列算出部45に出力する(ステップS4)。
補助行列算出部45は、事前出力信号算出部44が出力する行列T(k)を取り込む。補助行列算出部45は、事前出力信号算出部44から受けたサンプリング時刻kに基づいて、第1データベース部31から事前誤差共分散行列P-(k)を読み出す。補助行列算出部45は、第2データベース部32から観測雑音共分散行列Rを読み出す。補助行列算出部45は、取り込んだ行列T(k)と、読み出した事前誤差共分散行列P-(k)及び観測雑音共分散行列Rとに基づいて、式(31),(32),(33)の演算を行って補助行列A(k),B(k),C(k)を算出する。
補助行列算出部45は、算出した補助行列A(k),B(k),C(k)を第3データベース部33に書き込んで更新する。第3データベース部33にサンプリング時刻k-1の補助行列A(k-1),B(k-1),C(k-1)が書き込まれている場合、補助行列算出部45は、補助行列A(k-1),B(k-1),C(k-1)を削除して補助行列A(k),B(k),C(k)を書き込んで更新する。補助行列算出部45は、サンプリング時刻kをカルマンゲイン更新部46に出力する(ステップS5)。
カルマンゲイン更新部46は、補助行列算出部45からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33から補助行列A(k),C(k)を読み出す。カルマンゲイン更新部46は、読み出した補助行列A(k),C(k)に基づいて、式(34)の演算を行ってカルマンゲイン行列G(k)を算出する。カルマンゲイン更新部46は、算出したカルマンゲイン行列G(k)を第3データベース部33に書き込んで更新する。第3データベース部33にサンプリング時刻k-1のカルマンゲイン行列G(k-1)が書き込まれている場合、カルマンゲイン更新部46は、カルマンゲイン行列G(k-1)を削除してカルマンゲイン行列G(k)を書き込んで更新する。カルマンゲイン更新部46は、サンプリング時刻kを事後状態推定値更新部47に出力する(ステップS6)。
事後状態推定値更新部47は、カルマンゲイン更新部46からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33からカルマンゲイン行列G(k)と、事前出力信号であるベクトル^x-(k)とを読み出す。事後状態推定値更新部47は、第1データベース部31から事前状態推定値であるベクトル^φ-(k)を読み出す。事後状態推定値更新部47は、事前出力信号であるベクトル^x-(k)に対して所定の信号変調方式にしたがった仮判定を行うことにより仮判定値ベクトルxHD(k)を算出する。
事後状態推定値更新部47は、算出した仮判定値ベクトルxHD(k)と、読み出した事前状態推定値であるベクトル^φ-(k)、カルマンゲイン行列G(k)及び事前出力信号であるベクトル^x-(k)とに基づいて、式(28)の演算を行って事後状態推定値であるベクトル^φ(k)を算出する。事後状態推定値更新部47は、算出した事後状態推定値であるベクトル^φ(k)を第1データベース部31に書き込んで更新する。第1データベース部31にサンプリング時刻k-1のベクトル^φ(k-1)が書き込まれている場合、事後状態推定値更新部47は、ベクトル^φ(k-1)を削除してベクトル^φ(k)を書き込んで更新する。事後状態推定値更新部47は、サンプリング時刻kを事後誤差共分散更新部48に出力する(ステップS7)。
事後誤差共分散更新部48は、事後状態推定値更新部47からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33からカルマンゲイン行列G(k)と、補助行列A(k)とを読み出す。事後誤差共分散更新部48は、第1データベース部31から事後誤差共分散行列P-(k)を読み出す。事後誤差共分散更新部48は、読み出したカルマンゲイン行列G(k)と、補助行列A(k)と、事前誤差共分散行列P-(k)とに基づいて、式(35)の演算を行って事後誤差共分散行列P(k)を算出する。事後誤差共分散更新部48は、算出した事後誤差共分散行列P(k)を第1データベース部31に書き込んで更新する。第1データベース部31にサンプリング時刻k-1の事後誤差共分散行列P(k-1)が書き込まれている場合、事後誤差共分散更新部48は、事後誤差共分散行列P(k-1)を削除して事後誤差共分散行列P(k)を書き込んで更新する。事後誤差共分散更新部48は、サンプリング時刻kを出力信号算出部49に出力する(ステップS9)。
出力信号算出部49は、事後誤差共分散更新部48からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31から事後状態推定値であるベクトル^φ(k)を読み出す。出力信号算出部49は、読み出した事後状態推定値であるベクトル^φ(k)に基づいて、式(30)の演算を行って送信信号ベクトルxの推定系列であるベクトル^x(k)を算出し、算出したベクトル^x(k)の成分である第1データ推定系列、第2データ推定系列、…、第Ntデータ推定系列を外部に出力する。
出力信号算出部49は、第3データベース部33を参照し、現在のサンプリング時刻kに1を加えたサンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33が記憶しているか否かを判定する(ステップS10)。出力信号算出部49は、サンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33が記憶していると判定した場合(ステップS10、Yes)、サンプリング時刻kを時刻更新部41に出力する。時刻更新部41は、サンプリング時刻kに1を加えた値を新たなサンプリング時刻kとし、新たなサンプリング時刻kを事前状態推定値更新部42に出力する(ステップS11)。その後、ステップS2以降の処理が行われる。
一方、出力信号算出部49は、サンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33が記憶していないと判定した場合(ステップS10、No)、処理を終了する。
上記の第1の実施形態の通信システム100において、伝送路3は、マルチモードの光ファイバであり、複数の空間モードにより複数の光信号を伝送する。送信装置1は、複数の送信部11-1~11-Ntを備えており、複数の送信部11-1~11-Ntの各々は、各々に与えられる送信データ系列に基づいて、各々が有する搬送波生成部13-1~13-Ntが出力する搬送波の連続光を変調して送信光信号を生成し、生成した送信光信号を伝送路3に送出する。受信装置2は、複数の受信部21-1~21-Nrを備えており、複数の受信部21-1~21-Nrは、伝送路3が複数の空間モードにより伝送する複数の光信号を受信し、受信した受信光信号を、各々が有する局部発振部23-1~23-Nrが出力する局部発振信号としての連続光に基づいて復調して受信データ系列を生成する。信号検出部24は、重み行列算出部26と、キャリア位相回復部28とを備えており、重み行列算出部26は、受信データ系列に対してMIMO線形受信を行う際に用いる重み行列Wを算出する。キャリア位相回復部28は、複数の搬送波生成部13-1~13-Ntと、複数の局部発振部23-1~23-Nrとが非同期であるために生じる妨害成分である複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の位相揺らぎに起因する位相雑音成分を状態情報とし、事後の状態情報を、事前の状態情報に基づいて算出する予め定められる状態方程式と、送信データ系列を観測情報とし、状態方程式により算出する事後の状態情報と、受信データ系列と、重み行列とに基づいて、事後の状態情報が示す状態における観測情報を算出する予め定められる観測方程式とに対して、カルマンフィルタアルゴリズムを適用して妨害成分の事後状態推定値を算出し、算出した事後状態推定値に基づいて、妨害成分である複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の位相揺らぎに起因する位相雑音成分を除去した送信データ系列の推定系列を算出する。
これにより、複数信号を同一伝送媒体の複数のモードで伝送する際、送信装置1が生成する搬送波と、受信装置2が生成する局部発振信号とが非同期であることにより生じる妨害成分である複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の位相揺らぎに起因する位相雑音成分を除去することができる。そのため、複数信号を同一伝送媒体の複数のモードで伝送するコヒーレント伝送において、送信装置1の搬送波生成部13-1~13-Ntの各々が有する光源と、受信装置2の局部発振部23-1~23-Nrの各々が有する光源において、非同期の光源を適用することが可能になる。言い換えると、送信装置1が生成する搬送波と、受信装置2が生成する局部発振信号とが非同期である状態で複数信号を同一伝送媒体の複数のモードで伝送することが可能になる。
(第2の実施形態)
以下、本発明の第2の実施形態について図面を参照して説明する。図5は、第2の実施形態の通信システム100aの構成を示すブロック図である。第2の実施形態において、第1の実施形態と同一の構成については、同一の符号を付し、以下、異なる構成について説明する。通信システム100aは、送信装置1、受信装置2a及び送信装置1と受信装置2aの間を接続する伝送路3を備える。
受信装置2aは、光分岐部20、Nr個の受信部21-1~21-Nr及び信号検出部24aを備える。信号検出部24aは、デジタル信号処理部25、重み行列算出部26、記憶部27a及びキャリア位相回復部28aを備える。記憶部27aは、図6に示すように、第1データベース部31a、第2データベース部32a及び第3データベース部33aを備える。
第1データベース部31aは、事前状態推定値、事後状態推定値、事前誤差共分散行列Pf
-、事後誤差共分散行列Pfを記憶する。事前状態推定値と事後状態推定値は、ベクトルであり、それぞれ次式(37)、(38)として表される。
以下、本文では、式(37)の事前状態推定値を表す記号を、ベクトル^ω-と記載し、式(38)の事後状態推定値を表す記号を、ベクトル^ωと記載する。
第2データベース部32aは、システム雑音共分散行列Qfと、観測雑音共分散行列Rとを記憶する。
第3データベース部33aは、重み行列算出部出力データ、ベクトル^x-である事前出力信号、カルマンゲイン行列Gf、補助行列A、補助行列B及び補助行列Cを記憶する。重み行列算出部出力データは、第1の実施形態と同様に、重み行列算出部26によって書き込まれるデータであり、重み行列Wと、受信信号ベクトルyとが含まれる。なお、第1の実施形態の図2と同様に、図6においても、サンプリング時刻を示す変数kを付さずに示している。
キャリア位相回復部28aは、搬送波生成部13-1~13-Ntの位相揺らぎに起因する妨害成分と、局部発振部23-1~23-Nrの位相揺らぎに起因する妨害成分とを推定する。キャリア位相回復部28aは、検出した2つの妨害成分を除去した送信信号ベクトルxの推定系列を算出する。
第2の実施形態では、キャリア位相回復部28aは、2つの妨害成分として、搬送波生成部13-1~13-Ntの各々の光源の位相揺らぎに起因する位相雑音成分及び周波数オフセット成分という妨害成分と、局部発振部23-1~23-Nrの各々の光源の位相揺らぎに起因する位相雑音成分及び周波数オフセット成分という妨害成分とを推定する。
ここで、搬送波生成部13-1~13-Ntの各々の光源の周波数揺らぎに起因する周波数オフセット成分をψ1
t,ψ2
t,…,ψNt
tとし、局部発振部23-1~23-Nrの各々の光源の周波数揺らぎに起因する周波数オフセット成分を、ψ1
r,ψ2
r,…,ψNr
rとする。ここで、搬送波生成部13-1~13-Ntの各々の光源の周波数揺らぎに起因する周波数オフセット成分ψ1
t,ψ2
t,…,ψNt
tを成分とする列ベクトルである周波数オフセット成分ベクトルψtを次式(39)として定義する。
局部発振部23-1~23-Nrの各々の光源の周波数揺らぎに起因する周波数オフセット成分、ψ1
r,ψ2
r,…,ψNr
rを成分とする列ベクトルである周波数オフセット成分ベクトルψrを次式(40)として定義する。
キャリア位相回復部28aが推定する対象である位相雑音成分ベクトルφt,φrと、周波数オフセット成分ベクトルψt,ψrとを含むベクトルωを次式(41)により定義する。
この場合、キャリア位相回復部28aが推定するベクトルωに関する状態方程式は、次式(42)として表すことができる。
式(42)において、行列Mは、次式(43)として表され、ベクトルν(k)は、次式(44)として表される。
式(43),(44)において、次式(45)の記号は、m行n列の全成分を0とする行列を意味している。
次式(46)の記号は、m行n列の単位行列のうち第(i,i)成分を0にした行列を意味している。
式(44)の右辺に示すベクトルv(k)は、第1の実施形態において式(20)によって示したベクトルである。
第2の実施形態における観測方程式は、第1の実施形態と同様に、式(18)に示す式であり、式(18)により示される観測方程式と、式(42)により示される状態方程式とに基づくカルマンフィルタアルゴリズムは、1a.事前状態推定値更新、2a.事前誤算共分散更新、3a.カルマンゲイン更新、4a.事後状態推定値更新、5a.事後誤差共分散更新、6a.信号出力値という一連の演算を繰り返すアルゴリズムになる。「1a.事前状態推定値更新」の演算は、式(47)によって表される。
上記の式(47)において、ベクトル^ω-(k)は、式(37)に示した事前状態推定値であってサンプリング時刻が(k)の場合の事前状態推定値であり、ベクトル^ω(k-1)は、式(38)に示した事後状態推定値であってサンプリング時刻が(k-1)の場合の事後状態推定値である。「2a.事前誤差共分散更新」の演算は、次式(48)によって表される。
上記の式(48)において、行列P(k)-は、サンプリング時刻が(k)の場合の事前誤差共分散行列であり、行列P(k-1)は、サンプリング時刻が(k-1)の場合の事後誤差共分散行列である、行列Qfは、次式(49)により定義されるシステム雑音共分散行列であり、次式(49)のE[・]は、期待値演算を示す記号である。
「3a.カルマンゲイン更新」の演算は、次式(50)として表される。
上記の式(50)において、行列Gf(k)は、第2の実施形態におけるカルマンゲイン行列であり、行列Rは、第1の実施形態と同様に、式(25)によって表される観測雑音共分散行列である。
行列Tfは、次式(51)により定義される行列である。
式(51)に示す行列Tは、第1の実施形態において、式(26)に示した行列である。なお、式(51)では、行列Tf(k)を、式の記載の見易さの観点からサンプリング時刻を示す変数kを省略して表記しているが、行列Tf(k)の成分は、サンプリング時刻ごとに変化する値であり、サンプリング時刻を考慮した正式な表記は、次式(52)である。
「4a.事後状態推定値更新」の演算は、次式(53)により表される。
「5a.事後誤差共分散更新」の演算は、次式(54)により表される。
「6a.信号出力値」の演算は、次式(55)により表される。式(55)において、式(17)に示した非線形関数h(・)に、事後状態推定値であるベクトル^ω(k)を代入する式を示しているが、非線形関数h(・)の演算は、第1の実施形態の事後状態推定値であるベクトル^φ(k)を対象とする関数である。そのため、式(55)で示す演算は、実質的には、非線形関数h(・)に、ベクトル^ω(k)に含まれるベクトル^φ(k)を代入する演算であり、式(55)に示す関係が成り立つ。式(55)のベクトル^x(k)が、第2の実施形態における送信信号ベクトルxの推定系列になる。
図7は、上記した第2の実施形態のカルマンフィルタアルゴリズムを実行するキャリア位相回復部28aが備える機能部と、各々の機能部が、記憶部27aが備える第1データベース部31a、第2データベース部32a及び第3データベース部33aのいずれを利用するかを示したブロック図である。キャリア位相回復部28aは、時刻更新部41、事前状態推定値更新部42a、事前誤差共分散更新部43a、事前出力信号算出部44a、補助行列算出部45a、カルマンゲイン更新部46a、事後状態推定値更新部47a、事後誤差共分散更新部48a及び出力信号算出部49aを備える。
事前状態推定値更新部42aは、上記した「1a.事前状態推定値更新」の演算を行う。事前誤差共分散更新部43aは、上記した「2.事前誤算共分散更新」の演算を行う。事前出力信号算出部44aは、上記した「4a.事後状態推定値更新」の演算において用いられるサンプリング時刻kにおける事前出力信号ベクトル^x-(k)と、上記した「3a.カルマンゲイン更新」の演算において用いられるサンプリング時刻kにおける行列Tf(k)とを算出する。
補助行列算出部45aは、上記した「3a.カルマンゲイン更新」と「5a.事後誤差共分散更新」の演算において用いられる次式(56)~式(58)により表される3つの補助行列A(k),B(k),C(k)を算出する。
カルマンゲイン更新部46aは、上記の「3a.カルマンゲイン更新」の演算を行う。ただし、式(50)に示した式に替えて、補助行列算出部45aが算出する補助行列A(k)と、補助行列C(k)とを用いて、次式(59)の演算を行ってカルマンゲイン行列Gf(k)を算出する。
事後状態推定値更新部47aは、上記した「4a.事後状態推定値更新」の演算を行う。事後誤差共分散更新部48aは、上記した「5a.事後誤差共分散更新」の演算を行う。ただし、式(54)に示した式に替えて、補助行列算出部45aが算出する補助行列A(k)を用いた式(60)の演算を行って事後誤差共分散行列Pf(k)を算出する。
出力信号算出部49aは、上記した「6a.信号出力値」の演算を行う。
(第2の実施形態のキャリア位相回復部による処理)
次に、図7、図8を参照しつつ、キャリア位相回復部28aによる処理について説明する。図8は、キャリア位相回復部28aによる処理の流れを示すフローチャートである。
以下に示す処理の前提として、第1の実施形態と同様に、重み行列算出部26は、デジタル信号処理部25が出力する受信信号ベクトルyを取り込むごとに、取り込んだ受信信号ベクトルyに対してMIMO線形受信を行う場合に適用する重み行列Wと、取り込んだ受信信号ベクトルyとに、サンプリング時刻を示す変数kを1から順に1ずつ増やして、W(k)、y(k)として第3データベース部33aに書き込む処理を行う。言い換えると、第3データベース部33aは、重み行列算出部出力データとして[W(1),y(1)],[W(2),y(2)],…という時系列のデータを記憶することになる。なお、重み行列算出部26は、例えば、送信装置1が周期的に送信信号ベクトルxに含めて送信する重み行列算出用のパイロットシンボルを予め内部の記憶領域に記憶させており、送信装置1が重み行列算出用のパイロットシンボルを送信した際に、デジタル信号処理部25が出力する受信信号ベクトルと、内部の記憶領域が記憶する重み行列算出用のパイロットシンボルとに基づいて、新たな重み行列Wの算出を行っているものとする。
第1データベース部31aには、事後状態推定値の初期値としてベクトル^ω(0)が予め書き込まれており、事後誤差共分散行列の初期値として、事後誤差共分散行列Pf(0)が予め書き込まれているものとする。第2データベース部32aには、システム雑音共分散行列Qfが、式(44),(49)に基づいて予め算出されて書き込まれており、観測雑音共分散行列Rが、式(14),(25)に基づいて予め算出されて書き込まれているものとする。事前状態推定値更新部42aと事前誤差共分散更新部43aの各々は、内部の記憶領域に式(43)に示した行列Mを予め記憶させている。
時刻更新部41は、サンプリング時刻kの初期値を「1」とし、初期値のサンプリング時刻(k=1)を事前状態推定値更新部42aに出力する(ステップSa1)。
事前状態推定値更新部42aは、時刻更新部41からサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31aから事後状態推定値であるベクトル^ω(k-1)を読み出す。事前状態推定値更新部42aは、読み出した事後状態推定値であるベクトル^ω(k-1)と、内部の記憶領域が記憶する行列Mとに基づいて、式(47)の演算を行って事前状態推定値であるベクトル^ω-(k)を算出する。事前状態推定値更新部42aは、算出した事前状態推定値であるベクトル^ω-(k)を第1データベース部31aに書き込んで更新する。第1データベース部31aにサンプリング時刻k-1のベクトル^ω-(k-1)が書き込まれている場合、事前状態推定値更新部42aは、ベクトル^ω-(k-1)を削除してベクトル^ω-(k)を書き込んで更新する。事前状態推定値更新部42aは、サンプリング時刻kを事前誤差共分散更新部43aに出力する(ステップSa2)。
事前誤差共分散更新部43aは、事前状態推定値更新部42aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第2データベース部32aからシステム雑音共分散行列Qfを読み出す。事前誤差共分散更新部43aは、第1データベース部31aから事後誤差共分散行列Pf(k-1)を読み出す。事前誤差共分散更新部43aは、読み出したシステム雑音共分散行列Qfと、事後誤差共分散行列Pf(k-1)と、内部の記憶領域が記憶する行列Mとに基づいて、式(48)の演算を行って事前誤差共分散行列Pf
-(k)を算出する。事前誤差共分散更新部43aは、算出した事前誤差共分散行列Pf
-(k)を第1データベース部31aに書き込んで更新する。第1データベース部31aにサンプリング時刻k-1の事前誤差共分散行列Pf
-(k-1)が書き込まれている場合、事前誤差共分散更新部43aは、事前誤差共分散行列Pf
-(k-1)を削除して事前誤差共分散行列Pf
-(k)を書き込んで更新する。事前誤差共分散更新部43aは、サンプリング時刻kを事前出力信号算出部44aに出力する(ステップSa3)。
事前出力信号算出部44aは、事前誤差共分散更新部43aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31aから事前状態推定値であるベクトル^ω-(k)を読み出す。事前出力信号算出部44aは、第3データベース部33aから重み行列W(k)と、受信信号ベクトルy(k)を読み出す。事前出力信号算出部44aは、読み出した事前状態推定値であるベクトル^ω-(k)に含まれるベクトル^φ-(k)と、重み行列W(k)と、受信信号ベクトルy(k)とに基づいて、式(36)の演算を行って事前出力信号であるベクトル^x-(k)を算出する。
事前出力信号算出部44aは、算出した事前出力信号であるベクトル^x-(k)と、事前状態推定値であるベクトル^ω-(k)と、重み行列W(k)と、受信信号ベクトルy(k)とに基づいて、式(26),(27)に示す行列T(k)を算出する。事前出力信号算出部44aは、算出した行列T(k)に基づいて、式(51),(52)に示す行列Tf(k)を算出する。事前出力信号算出部44aは、算出した事前出力信号であるベクトル^x-(k)を第3データベース部33aに書き込んで更新する。第3データベース部33aにサンプリング時刻k-1のベクトル^x-(k-1)が書き込まれている場合、事前出力信号算出部44aは、ベクトル^x-(k-1)を削除してベクトル^x-(k)を書き込んで更新する。事前出力信号算出部44aは、算出した行列Tf(k)と、サンプリング時刻kとを補助行列算出部45aに出力する(ステップSa4)。
補助行列算出部45aは、事前出力信号算出部44aが出力する行列Tf(k)を取り込む。補助行列算出部45aは、事前出力信号算出部44aから受けたサンプリング時刻kに基づいて、第1データベース部31aから事前誤差共分散行列Pf
-(k)を読み出す。補助行列算出部45aは、第2データベース部32aから観測雑音共分散行列Rを読み出す。補助行列算出部45は、取り込んだ行列T(k)と、読み出した事前誤差共分散行列Pf
-(k)及び観測雑音共分散行列Rとに基づいて、式(56),(57),(58)の演算を行って補助行列A(k),B(k),C(k)を算出する。
補助行列算出部45aは、算出した補助行列A(k),B(k),C(k)を第3データベース部33aに書き込んで更新する。第3データベース部33aにサンプリング時刻k-1の補助行列A(k-1),B(k-1),C(k-1)が書き込まれている場合、補助行列算出部45aは、補助行列A(k-1),B(k-1),C(k-1)を削除して補助行列A(k),B(k),C(k)を書き込んで更新する。補助行列算出部45aは、サンプリング時刻kをカルマンゲイン更新部46aに出力する(ステップSa5)。
カルマンゲイン更新部46aは、補助行列算出部45aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33aから補助行列A(k),C(k)を読み出す。カルマンゲイン更新部46aは、読み出した補助行列A(k),C(k)に基づいて、式(59)の演算を行ってカルマンゲイン行列Gf(k)を算出する。カルマンゲイン更新部46aは、算出したカルマンゲイン行列Gf(k)を第3データベース部33aに書き込んで更新する。第3データベース部33aにサンプリング時刻k-1のカルマンゲイン行列Gf(k-1)が書き込まれている場合、カルマンゲイン更新部46aは、カルマンゲイン行列Gf(k-1)を削除してカルマンゲイン行列Gf(k)を書き込んで更新する。カルマンゲイン更新部46aは、サンプリング時刻kを事後状態推定値更新部47aに出力する(ステップSa6)。
事後状態推定値更新部47aは、カルマンゲイン更新部46aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33aからカルマンゲイン行列Gf(k)と、事前出力信号であるベクトル^x-(k)とを読み出す。事後状態推定値更新部47aは、第1データベース部31aから事前状態推定値であるベクトル^ω-(k)を読み出す。事後状態推定値更新部47aは、事前出力信号であるベクトル^x-(k)に対して所定の信号変調方式にしたがった仮判定を行うことにより仮判定値ベクトルxHD(k)を算出する。
事後状態推定値更新部47aは、算出した仮判定値ベクトルxHD(k)と、読み出した事前状態推定値であるベクトル^ω-(k)、カルマンゲイン行列Gf(k)及び事前出力信号であるベクトル^x-(k)とに基づいて、式(53)の演算を行って事後状態推定値であるベクトル^ω(k)を算出する。事後状態推定値更新部47aは、算出した事後状態推定値であるベクトル^ω(k)を第1データベース部31aに書き込んで更新する。第1データベース部31aにサンプリング時刻k-1のベクトル^ω(k-1)が書き込まれている場合、事後状態推定値更新部47aは、ベクトル^ω(k-1)を削除してベクトル^ω(k)を書き込んで更新する。事後状態推定値更新部47aは、サンプリング時刻kを事後誤差共分散更新部48aに出力する(ステップSa7)。
事後誤差共分散更新部48aは、事後状態推定値更新部47aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第3データベース部33aからカルマンゲイン行列Gf(k)と、補助行列A(k)とを読み出す。事後誤差共分散更新部48aは、第1データベース部31aから事後誤差共分散行列Pf
-(k)を読み出す。事後誤差共分散更新部48aは、読み出したカルマンゲイン行列Gf(k)と、補助行列A(k)と、事前誤差共分散行列Pf
-(k)とに基づいて、式(60)の演算を行って事後誤差共分散行列Pf(k)を算出する。事後誤差共分散更新部48は、算出した事後誤差共分散行列Pf(k)を第1データベース部31aに書き込んで更新する。第1データベース部31aにサンプリング時刻k-1の事後誤差共分散行列Pf(k-1)が書き込まれている場合、事後誤差共分散更新部48aは、事後誤差共分散行列Pf(k-1)を削除して事後誤差共分散行列Pf(k)を書き込んで更新する。事後誤差共分散更新部48aは、サンプリング時刻kを出力信号算出部49に出力する(ステップSa9)。
出力信号算出部49aは、事後誤差共分散更新部48aからサンプリング時刻kを受けると、受けたサンプリング時刻kに基づいて、第1データベース部31aから事後状態推定値であるベクトル^ω(k)を読み出す。出力信号算出部49aは、読み出した事後状態推定値であるベクトル^ω(k)に基づいて、式(55)の演算を行って送信信号ベクトルxの推定系列であるベクトル^x(k)を算出し、算出したベクトル^x(k)の成分である第1データ推定系列、第2データ推定系列、…、第Ntデータ推定系列を外部に出力する。
出力信号算出部49aは、第3データベース部33aを参照し、現在のサンプリング時刻kに1を加えたサンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33aが記憶しているか否かを判定する(ステップSa10)。出力信号算出部49aは、サンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33が記憶していると判定した場合(ステップSa10、Yes)、サンプリング時刻kを時刻更新部41に出力する。時刻更新部41は、サンプリング時刻kに1を加えた値を新たなサンプリング時刻kとし、新たなサンプリング時刻kを事前状態推定値更新部42aに出力する(ステップSa11)。その後、ステップSa2以降の処理が行われる。
一方、出力信号算出部49aは、サンプリング時刻k+1に対応する受信信号ベクトルy(k+1)を第3データベース部33aが記憶していないと判定した場合(ステップSa10、No)、処理を終了する。
上記の第2の実施形態では、除外する妨害成分として、第1の実施形態の妨害成分である複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の位相揺らぎに起因する位相雑音成分に加えて、更に、複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の周波数揺らぎに起因する周波数オフセット成分を含めている。これにより、複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の位相揺らぎに起因する位相雑音成分と共に、複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の周波数揺らぎに起因する周波数オフセット成分を除去することが可能になる。そのため、複数信号を同一伝送媒体の複数のモードで伝送するコヒーレント伝送において、送信装置1の搬送波生成部13-1~13-Ntの各々が有する光源と、受信装置2の局部発振部23-1~23-Nrの各々が有する光源について非同期光源を適用することが可能になる。言い換えると、送信装置1が生成する搬送波と、受信装置2aが生成する局部発振信号とが非同期である状態で複数信号を同一伝送媒体の複数のモードで伝送することが可能になる。更に、第2の実施形態の通信システム100aでは、複数の搬送波生成部13-1~13-Nt及び複数の局部発振部23-1~23-Ntの各々が有する光源の周波数揺らぎに起因する周波数オフセット成分を除去するため、第1の通信システム100よりも高い精度で送信信号ベクトルの推定系列を推定することが可能となる
なお、上記の第1及び第2の実施形態では、デジタル信号処理部25がデジタル信号処理を行って出力するNr個の受信データ系列を成分とするベクトルを受信信号ベクトルyとしている。これに対して、デジタル信号処理部25を備えずに、重み行列算出部26が、受信処理部22-1~22-Nrが出力するNr個の受信データ系列を直接取り込むようにしてもよい。この場合、受信処理部22-1~22-Nrが出力するNr個の受信データ系列が受信信号ベクトルyとなる。
(第3の実施形態)
第1及び第2の実施形態では、カルマンゲイン更新部46、46aは、式(28)及び式(53)において、事前信号推定値ベクトル^x-(k)に対して所定の信号変調方式にしたがった仮判定を行うことにより得られる仮判定値ベクトルxHD(k)を用いていた。そのため、事前信号推定値ベクトル^x-(k)の精度によっては、仮判定値ベクトルxHD(k)は誤りを含むことがあり、キャリア位相回復の性能を劣化させることになる。第3の実施形態では、仮判定値ベクトルxHD(k)に替えて予め定められるパイロットシンボルを用いて、キャリア位相回復の性能を劣化させないようにする構成を備える。
図9は、第3の実施形態による通信システム100bの構成を示すブロック図である。第3の実施形態において、第1の実施形態と同一の構成については同一の符号を付し、以下、異なる構成について説明する。通信システム100bは、送信装置1b、伝送路3及び受信装置2bを備える。送信装置1bは、送信部11b-1~11b-Nt及び光結合部10を備える。送信部11b-1は、送信処理部12b-1及び搬送波生成部13-1を備え、同様に、送信部11b-2~11b-Ntの各々は、符号の枝番号に対応する送信処理部12b-2~12b-Nt及び搬送波生成部13-2~13-Ntを備える。
送信処理部12b-1~12b-Ntは、第1の実施形態の送信処理部12-1~12-Ntが備える構成に加えて、各々が取り込む第1データ系列~第Ntデータ系列から生成する信号フレームの先頭等の予め定められるパイロットシンボルを周期的に挿入する。
受信装置2bは、光分岐部20、受信部21-1~21-Nr及び信号検出部24bを備える。信号検出部24bは、デジタル信号処理部25、重み行列算出部26、記憶部27及びキャリア位相回復部28bを備える。
キャリア位相回復部28bは、図10に示すように、第1の実施形態のキャリア位相回復部28が備えるカルマンゲイン更新部46に替えてカルマンゲイン更新部46bを備える他は、第1の実施形態のキャリア位相回復部28と同一の構成を有する。
キャリア位相回復部28bは、内部の記憶領域に、送信装置1bが挿入する予め定められるパイロットシンボルと、パイロットシンボルが挿入される周期を予め記憶する。ここで、パイロットシンボルは、送信信号ベクトルxと同様にNt個のデータ系列を含むベクトルである。
カルマンゲイン更新部46bは、式(28)の演算の一部、すなわち送信処理部12b-1~12b-Ntが周期的に挿入するパイロットシンボルが受信信号ベクトルy(k)に含まれるサンプリング時刻kのタイミングにおいて行う式(28)の演算において、仮判定値ベクトルxHD(k)に替えて、内部の記憶領域が予め記憶するパイロットシンボルを用いて演算を行う。
これにより、第3の実施形態では、仮判定値ベクトルxHD(k)の一部を、送信装置1bと、受信装置2bとにおいて既知であるパイロットシンボルに置き換えて演算を行うことから、事前信号推定値ベクトル^x-(k)の精度が低い場合であっても、キャリア位相回復の性能を劣化させないようにすることが可能となる。
なお、第3の実施形態の構成は、第1の実施形態にパイロットシンボルを利用する構成を加えているが、第2の実施形態の通信システム100aに対しても同様にパイロットシンボルを利用する構成を加えることができ、それにより、式(53)の演算において、仮判定値ベクトルxHD(k)の一部に替えて、パイロットシンボルを適用することができ、事前信号推定値であるベクトル^x-(k)の精度が低い場合であっても、キャリア位相回復の性能を劣化させないようにすることが可能となる。
上記の第3の実施形態では、送信処理部12b-1~12b-Ntは、信号フレームの先頭等の予め定められるパイロットシンボルを周期的に挿入するとしている。これに対して、数百シンボルごとにパイロットシンボルを周期的に挿入してもよいし、通信状況に応じてパイロットシンボルを挿入する周期を適応的かつ可変的に変えるようにしてもよい。ただし、パイロットシンボルを挿入する周期を可変にする場合、受信装置2bのキャリア位相回復部28bのカルマンゲイン更新部46bに対して、パイロットシンボルが挿入されるタイミングを通知する手段が必要となる。第3の実施形態のパイロットシンボルとして、第1及び第2の実施形態において、重み行列算出部26が、重み行列Wの算出に用いる重み行列算出用のパイロットシンボルを用いるようにしてもよい。
上記の第3の実施形態の構成により、送信装置1bがパイロットシンボルを送信するタイミングにおいて、式(28)の演算を行う際に、ベクトルxHD(k)に替えて、受信装置2bにおいて予め記憶するパイロットシンボルを用いて事後状態推定値であるベクトル^φ(k)を算出することができる。そのため、事前信号推定値であるベクトル^x-(k)の精度が低い場合であっても、キャリア位相回復の性能を劣化させないようにすることが可能になり、第1及び第2の実施形態の構成に比べて、より精度よく妨害成分を除去した送信データ系列の推定系列を算出することが可能になる。
(シミュレーション結果)
図11は、2つの独立した送信データ系列の送信に対して、Nt=Nr=2である第1の実施形態の通信システム100を適用してモード多重伝送のシミュレーションを行った結果を示すグラフである。送信装置1の送信部11-1,11-2の送信処理部12-1,12-2は、各々が取り込む2つの独立した送信データ系列である第1データ系列のビット列及び第2データ系列のビット列を、信号変調速度10GBaudの16QAM(Quadrature Amplitude Modulation)信号として変調して光信号を生成する。光結合部10は、送信処理部12-1,12-2が生成した2つの光信号を結合して、伝送路3に送出する。伝送路3において、2つの独立した送信データ系列に対応する光信号が等しいパワーで混合する。
なお、シミュレーションにおいて、伝送路3を伝搬した後の信号対雑音比γは、17dBであると仮定している。送信装置1が備える2つの搬送波生成部13-1,13-2と、受信装置2が備える2つの局部発振部23-1,23-2の線幅は、100kHzであると仮定している。さらに、第1データ系列の変調に用いられる搬送波生成部13-1に起因するデジタル信号段での位相φ1
tを参照角に定めてφ1
t=0としている。
図11に示す6つのグラフにおいて、横軸は、シンボル番号であり、縦軸は、位相雑音を示している。位相雑音の単位は[rad]である。図11において、左側の列のグラフ(A1),(B1),(C1)の各々は、搬送波生成部13-2、局部発振部23-1、局部発振部23-2における実際に発生した位相雑音量を示している。これに対して、右側の列のグラフ(A2),(B2),(C2)は、キャリア位相回復部28が搬送波生成部13-2、局部発振部23-1、局部発振部23-2の各々に対して推定した位相雑音量である。搬送波生成部13-2に対応するグラフ(A1)とグラフ(A2)と、局部発振部23-1に対応するグラフ(B1)とグラフ(B2)と、局部発振部23-2に対応するグラフ(C1)とグラフ(C2)の各々を比較すると分かるように、キャリア位相回復部28は、搬送波生成部13-2、局部発振部23-1、局部発振部23-2に起因するシンボルごと、すなわちサンプリング時刻ごとの位相雑音量を精度よく推定していることが分かる。
図12は、上記したシミュレーションの条件下で、第1の実施形態の通信システム100と、第3の実施形態の通信システム100bとにおいて、更に、搬送波生成部13-1,13-2及び局部発振部23-1,23-2の各光源の線幅を変化させて位相雑音の推定を行った場合の結果を示すグラフである。図12に示すグラフにおいて、縦軸は、BER(Bit Error Rate)であり、横軸は、線幅シンボル時間積である。線幅シンボル時間積とは、例えば、線幅シンボル時間積の値が、10-4である場合、光源の線幅1MHzに対応する。なお、第3の実施形態の通信システム100bにおいて、送信処理部12b-1,12b-2は、10シンボルに1回の周期でパイロットシンボルの挿入を行っている。
図12のグラフから分かるように、第1の実施形態の通信システム100のキャリア位相回復部28は、線幅シンボル時間積が10-4程度まで精度よく位相雑音を推定できていることが分かる。これに対して、第3の実施形態の通信システム100bのキャリア位相回復部28bは、パイロットシンボルの挿入により、線幅シンボル時間積が10-4よりも大きくなっても第1の実施形態のキャリア位相回復部28よりも低いBERで位相雑音の推定ができていることが分かる。
なお、上記の第1及び第2の実施形態において、重み行列算出部26は、例えば、重み行列算出用のパイロットシンボルを用いて新たな重み行列Wの算出を行うとしている。これに対して、第1の実施形態の場合には、キャリア位相回復部28の出力信号算出部49が、式(30)に基づいて算出するベクトル^x(k)を重み行列算出部26にフィードバックし、重み行列算出部26が、フィードバックされたベクトル^x(k)に基づいて新たな重み行列Wを算出するようにしてもよい。第2の実施形態の場合には、キャリア位相回復部28aの出力信号算出部49aが、式(55)に基づいて算出するベクトル^x(k)を重み行列算出部26にフィードバックし、重み行列算出部26が、フィードバックされたベクトル^x(k)に基づいて新たな重み行列Wを算出するようにしてもよい。
上記の第1から第3の実施形態の通信システム100,100a,100bは、空間多重光伝送システムを対象としているが、第1から第3の実施形態に示した構成は、空間多重光伝送システムに限定されるものではなく、無線通信システム、衛星通信システム、磁気記録媒体、チップ間通信などのあらゆる通信システムにおいて、MIMO型信号処理を行う場合に複数信号に重畳する妨害成分の除去に適用することが可能である。なお、無線によって伝送を行う通信システムの場合、伝送路3は、無線電波が伝搬する空間に対応することになる。搬送波生成部13-1~13-Ntは、無線電波の搬送波になる電気信号の搬送波を生成することになり、送信処理部12-1~12-Nt,12b-1~12b-Ntは、電気信号の搬送波を用いて送信データ系列を変調することになる。送信装置1,1bは、光結合部10を備えず、送信処理部12-1~12-Nt,12b-1~12b-Ntの各々に接続される複数の送信アンテナによって送信が行われることになる。局部発振部23-1~23-Nrは、復調に用いる電気信号の局部発振波を生成することになる。受信装置2,2a,2bは、光分岐部20を備えず、受信処理部22-1~22-Nrの各々に接続する複数の受信アンテナを用いて無線信号を受信し、受信した無線信号を電気信号の局部発振波によって復調することになる。
上述した第1から第3の実施形態における信号検出部24,24a,24bを単体の装置である信号検出装置として構成し、構成した信号検出装置を受信装置2,2a,2bが備えるようにしてもよいし、第1から第3の実施形態におけるキャリア位相回復部28,28a,28bを単体の装置であるキャリア位相回復装置として構成し、構成したキャリア位相回復装置を信号検出部24,24a,24bが備えるようにしてもよい。
信号検出部24,24a,24bを単体の装置である信号検出装置として構成した場合、信号検出装置をコンピュータとプログラムで実現するようにしてもよい。第1から第3の実施形態におけるキャリア位相回復部28,28a,28bを単体の装置であるキャリア位相回復装置として構成した場合、キャリア位相回復装置をコンピュータとプログラムで実現するようにしてもよい。その場合、これらのプログラムをコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行することによって実現してもよい。また、これらのプログラムをインターネット等のネットワークを通じて提供するようにしてもよい。なお、ここでいう「コンピュータ」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。