(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-14
(45)【発行日】2025-04-22
(54)【発明の名称】信号推定装置、信号推定方法、及び、コンピュータプログラム
(51)【国際特許分類】
H04J 99/00 20090101AFI20250415BHJP
H04B 7/0413 20170101ALI20250415BHJP
【FI】
H04J99/00
H04B7/0413 200
(21)【出願番号】P 2020069699
(22)【出願日】2020-04-08
【審査請求日】2023-03-03
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100104765
【氏名又は名称】江上 達夫
(74)【代理人】
【識別番号】100107331
【氏名又は名称】中村 聡延
(74)【代理人】
【識別番号】100131015
【氏名又は名称】三輪 浩誉
(72)【発明者】
【氏名】神谷 典史
【審査官】吉江 一明
(56)【参考文献】
【文献】特開2019-083475(JP,A)
【文献】国際公開第2019/059406(WO,A1)
【文献】特開2012-089967(JP,A)
【文献】特表2010-506515(JP,A)
【文献】米国特許出願公開第2018/0069631(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04J 99/00
H04B 7/0413
(57)【特許請求の範囲】
【請求項1】
円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xが含むM×N個の送信信号を夫々がN個の送信信号を含むM個の信号系列に分割し、前記M個の信号系列の夫々に対して逆離散フーリエ変換処理を施した送信信号x’を送信する送信装置と、
円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号x’を受信信号yとして受信する受信装置と
を備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定装置であって、
前記信号推定装置は、
前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換手段と、
前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定手段と
を備え、
前記推定手段は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe
(k)を除外する除外動作を行い、前記除外動作によって得られる中間信号xt
(k)と、前記受信信号yとに基づいて、前記推定値xe
(k)を更新することで、前記推定信号xeを推定し直す
信号推定装置。
【請求項2】
前記推定手段は、前記推定信号xeが新たに推定された場合には、前記受信アンテナと前記送信アンテナとの間の伝送路の状態を示す伝送路行列Hのうち前記第k番目の送信信号グループに対応する成分H
(k)を除く中間行列Ht
(k)と前記中間信号xt
(k)とを掛け合わせることで干渉信号yi
(k)を生成し、前記受信信号yと前記干渉信号yi
(k)との差分に基づいて前記推定値xe
(k)を更新することで、前記推定信号xeを推定し直す
請求項1に記載の信号推定装置。
【請求項3】
前記推定手段は、前記中間行列Ht
(k)と前記中間信号xt
(k)とを掛け合わせることで前記干渉信号yi
(k)を生成する干渉信号生成手段を、前記変数kに合わせてN個含み、
前記推定手段は、前記N個の干渉信号生成手段のうちの対応する一の干渉信号生成手段が生成した前記干渉信号yi
(k)と前記受信信号yとの差分に基づいて前記推定値xe
(k)を更新する更新手段を、前記変数kに合わせてN個含む
請求項2に記載の信号推定装置。
【請求項4】
前記推定手段は、
前記第k番目の送信信号グループに対応するM個のパラメータを含むパラメータセットρ
(k)と、前記伝送路行列Hとに基づいて、前記推定値xe
(k)を生成するために用いられる内部行列A
(k)を生成し、且つ、前記推定値xe
(k)を推定するために用いられる内部データv
(k)及びz
(k)と前記干渉信号yi
(k)とを初期化するための第1動作を行い、
前記第1動作を行った後、前記パラメータセットρ
(k)と、前記受信信号yと、前記伝送路行列Hと、前記内部行列A
(k)と、前記初期化された干渉信号yi
(k)と、前記初期化された内部データv
(k)及びz
(k)とに基づいて、前記推定値xe
(k)を生成することで、前記推定信号xeを推定する第2動作を行い、
前記第2動作を行った後、前記推定信号xeが新たに推定される都度、(i)前記新たに生成された推定信号xeに基づいて、前記内部データv
(k)及びz
(k)を更新する第1処理と、(ii)前記中間行列Ht
(k)と前記新たに生成された推定信号xeから得られる前記中間信号xt
(k)とに基づいて、前記干渉信号yi
(k)を新たに生成する第2処理と、(iii)前記パラメータセットρ
(k)と、前記受信信号yと、前記伝送路行列Hと、前記内部行列A
(k)と、前記更新された内部データv
(k)及びz
(k)と、前記新たに生成された干渉信号yi
(k)とに基づいて、前記推定値xe
(k)を更新することで、前記推定信号xeを推定し直す第3処理とを含む第3動作を行い、
前記第3動作を所定回数繰り返した後、前記第k番目の送信信号グループを構成するM個の前記送信信号成分がとり得る複数の信号系列候補のうち、前記推定値xe
(k)に最も近い一の信号系列候補を出力する
請求項2又は3に記載の信号推定装置。
【請求項5】
前記推定手段は、夫々が前記推定値xe
(k)を推定可能なR(但し、Wは2以上の整数)個の演算手段を含み、推定値xe
1
(k)からxe
R
(k)を推定可能な演算ブロックを、前記変数kの数に合わせてN個含み、
前記第k番目の送信信号グループに対応する一の演算ブロックに含まれ且つ推定値xe
r+2
(k)を推定する第r+1(但し、rは、0以上且つR-1以下のR個の整数の夫々を示す変数)番目の演算手段は、N個の前記演算ブロックのうち前記第k番目の送信信号グループに対応する一の演算ブロックを除くN-1個の前記演算ブロックに夫々含まれるN-1個の第r番目の演算手段が夫々推定したN-1個の推定値xe
r+1
(s)(但し、sは、0以上且つN-1以下であって且つkを除く整数を示す変数)に基づいて、前記推定値xe
r+2
(k)を推定する
請求項1に記載の信号推定装置。
【請求項6】
前記推定手段は、前記第k番目の送信信号グループに対応し且つ第r番目の前記演算手段が用いるM個のパラメータを含むパラメータセットρ
r+1
(k)の初期値ρ
0
(k)と、前記受信信号yと、
前記受信アンテナと前記送信アンテナとの間の伝送路の状態を示す伝送路行列Hとに基づいて、前記推定値xe
(k)を生成するために用いられる内部行列A
(k)を生成し、且つ、前記推定値xe
r
(k)を推定するために第r番目の前記演算手段が用いる内部データv
r
(k)及びz
r
(k)の初期値v
0
(k)及びz
0
(k)と、前記推定値xe
r
(k)の初期値xe
0
(k)とを初期化し、
前記第k番目の送信信号グループに対応する一の演算ブロックに含まれる第r番目の演算手段は、
前記パラメータセットρ
r+1
(k)と、前記受信信号yと、前記伝送路行列Hと、前記内部行列A
(k)と、前記内部データv
r
(k)及びz
r
(k)と、前記推定値xe
r
(s)とに基づいて、前記推定値xe
r+1
(k)を推定し、
前記推定値xe
r+1
(k)と、前記内部データv
r
(k)及びz
r
(k)と、所定の非線形関数Ψ
r
(k)とに基づいて、前記内部データv
r+1
(k)及びz
r+1
(k)を生成する
請求項5に記載の信号推定装置。
【請求項7】
前記パラメータセットρ
r
(k)は、前記送信装置が実際に送信した前記送信信号xと、前記推定手段が実際に推定した前記推定信号xeとの間の誤差に基づく損失関数を用いた学習動作によって学習される
請求項6に記載の信号推定装置。
【請求項8】
円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xが含むM×N個の送信信号を夫々がN個の送信信号を含むM個の信号系列に分割し、前記M個の信号系列の夫々に対して逆離散フーリエ変換処理を施した送信信号x’を送信する送信装置と、
円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号x’を受信信号yとして受信する受信装置と
を備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定方法であって、
前記信号推定方法は、
前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換工程と、
前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定工程と
を含み、
前記推定工程は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe
(k)を除外する第1の工程と、前記第1の工程によって得られる中間信号xt
(k)と、前記受信信号yとに基づいて、前記推定値xe
(k)を更新することで、前記推定信号xeを推定し直す第2の工程を含む
信号推定方法。
【請求項9】
コンピュータに信号推定方法を実行させるコンピュータプログラムであって、
前記信号推定方法は、
円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xが含むM×N個の送信信号を夫々がN個の送信信号を含むM個の信号系列に分割し、前記M個の信号系列の夫々に対して逆離散フーリエ変換処理を施した送信信号x’を送信する送信装置と、
円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号x’を受信信号yとして受信する受信装置と
を備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定方法であって、
前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換工程と、
前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定工程と
を含み、
前記推定工程は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe
(k)を除外する第1の工程と、前記第1の工程によって得られる中間信号xt
(k)と、前記受信信号yとに基づいて、前記推定値xe
(k)を更新することで、前記推定信号xeを推定し直す第2の工程を含む
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、送信装置が送信した送信信号を、受信装置が受信した受信信号に基づいて推定する信号推定装置及び信号推定方法、並びに、上述した信号推定方法を実行するためのコンピュータプログラムの技術分野に関する。
【背景技術】
【0002】
近年、OAM-MIMO(Orbital Angular Momentum-Multiple Input Multiple Output)伝送技術を用いて信号を送受信する通信システムの研究が進められている。OAM-MIMO伝送技術は、異なるOAMモードを有する複数の電波を用いて多重化した信号を、複数の送信アンテナを有する送信装置から、複数の受信アンテナを有する受信装置へと伝送する伝送技術である。このようなOAM-MIMO伝送技術を採用した通信システムの一例が、非特許文献1に記載されている。具体的には、非特許文献1には、円形に等間隔に配置された複数のアンテナ素子を含む円形アレーアンテナ(UCA:Uniform Circular Array)を複数備える送信装置と、複数の円形アレーアンテナを備える受信装置との間で、異なるOAMモードを有する複数の電波を用いて多重化した信号を伝送する通信システムが記載されている。
その他、本願発明に関連する先行技術文献として、特許文献1から特許文献5及び非特許文献2があげられる。
【先行技術文献】
【特許文献】
【0003】
【文献】国際公開第2019/059408号パンフレット
【文献】特表2017-515337号公報
【文献】特開2015-073260号公報
【文献】特許第6583292号
【文献】特許第5317021号
【非特許文献】
【0004】
【文献】Hirofumi Sasaki et al.、“Experiment on Over-100-Gbps Wireless Transmission with OAM-MIMO Multiplexing System in 28-GHz Band”、2018 IEEE Global CommunicationsConference(GLOBECON)、2018年12月
【文献】Masashi Hirabe et al.、“40mTransmission of OAM mode and Polarization Multiplexing in E-band”、2019 IEEE Global CommunicationsConference(GLOBECON)、2019年12月
【発明の概要】
【発明が解決しようとする課題】
【0005】
OAM-MIMO伝送技術を採用した通信システムでは、送信装置が送信した送信信号を受信信号として受信した受信装置は、受信信号に基づいて送信信号を推定する。典型的には、受信装置は、送信装置と受信装置との間の伝送路の状態を示す伝送路行列(言い換えれば、チャネル行列)と、受信信号とに基づいて、送信信号を推定する。
【0006】
このように送信信号が推定される場合には、送信信号を推定するために必要な演算量の低減が望まれる。ここで、送信装置が備える複数の円形アレーアンテナと受信装置が備える複数の円形アレーアンテナとが軸対象となるように配置されている場合には、伝送路行列が対角ブロック成分にのみ大きな利得を有するブロック対角行列となる。その結果、伝送路行列の対角ブロック成分以外の成分がゼロになるがゆえに、送信信号を推定するために必要な演算量が低減される。従って、送信装置が備える複数の円形アレーアンテナと受信装置が備える複数の円形アレーアンテナとが常に軸対称となるように配置されていれば、送信信号の推定精度の向上が可能となる。
【0007】
しかしながら、現実的には、送信装置が備える複数の円形アレーアンテナと受信装置が備える複数の円形アレーアンテナとが常に軸対称となるように配置されるとは限らない。例えば、風雨に起因して円形アレーアンテナの配置位置がずれることで、送信装置が備える複数の円形アレーアンテナと受信装置が備える複数の円形アレーアンテナとが軸対称とならない可能性がある。その結果、伝送路行列がブロック対角行列とならなくなる。また、送信装置が備える複数の円形アレーアンテナと受信装置が備える複数の円形アレーアンテナとが軸対称とならないという要因に限らず、その他の要因で伝送路行列がブロック対角行列とならなくなる可能性がある。例えば、電波の反射等に起因したフェージングによって伝送路行列がブロック対角行列とならなくなる可能性がある。このように、伝送路行列がブロック対角行列となることを利用して演算量を低減する方法が利用可能なシーンは限られる。
尚、異なるOAMモードを有する複数の電波を用いて多重化した信号を、単一の送信アンテナを有する送信装置から単一の受信アンテナを有する受信装置へと信号を伝送する通信システムにおいても、送信信号を推定するために必要な演算量の低減が望まれることに変わりはない。しかしながら、送信装置が備える円形アレーアンテナと受信装置が備える円形アレーアンテナとが常に軸対称となるように配置されるとは限らない。従って、単一の送信アンテナ及び単一の受信アンテナを備える通信システムにおいても、伝送路行列がブロック対角行列となることを利用して演算量を低減する方法が利用可能なシーンは限られる。
【0008】
本発明は、上述した技術的問題を解決可能な信号推定装置、信号推定方法及びコンピュータプログラムを提供することを課題とする。一例として、本発明は、受信信号に基づいて送信信号を推定するために必要な演算量を低減可能な信号推定装置、信号推定方法及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【0009】
信号推定装置の一態様は、円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xを送信する送信装置と、円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号xを受信信号yとして受信する受信装置とを備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定装置であって、前記信号推定装置は、前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換手段と、前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定手段とを備え、前記推定手段は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe(k)を除外する除外動作を行い、前記除外動作によって得られる中間信号xt(k)と、前記受信信号yとに基づいて、前記推定値xe(k)を更新することで、前記推定信号xeを推定し直す信号推定装置である。
【0010】
信号推定方法の一態様は、円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xを送信する送信装置と、円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号xを受信信号yとして受信する受信装置とを備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定方法であって、前記信号推定方法は、前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換工程と、前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定工程とを含み、前記推定工程は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe(k)を除外する第1の工程と、前記第1の工程によって得られる中間信号xt(k)と、前記受信信号yとに基づいて、前記推定値xe(k)を更新することで、前記推定信号xeを推定し直す第2の工程を含む信号推定方法である。
【0011】
コンピュータプログラムの一態様は、コンピュータに信号推定方法を実行させるコンピュータプログラムであって、前記信号推定方法は、円形に等間隔に配置されたN(但し、Nは2以上の整数)個の送信アンテナ素子を含む送信アレーアンテナが同心円状にM(但し、Mは1以上の整数)個配列されている送信アンテナを用いて、互いに異なるM個の前記送信アレーアンテナによって夫々送信されるM個の送信信号成分から構成される送信信号グループをN個含む送信信号xを送信する送信装置と、円形に等間隔に配置されたN個の受信アンテナ素子を含む受信アレーアンテナが同心円状にM個配列されている受信アンテナを用いて、前記送信装置が送信した前記送信信号xを受信信号yとして受信する受信装置とを備える通信システムにおいて、前記受信信号yから前記送信信号xを推定する信号推定方法であって、前記受信信号yに含まれ且つM×N個の前記受信アンテナ素子がそれぞれ受信したM×N個の受信信号成分を、M個の前記受信アレーアンテナの夫々が受信したN個の前記受信信号成分の単位で離散フーリエ変換処理を施す変換工程と、前記離散フーリエ変換処理が施された前記受信信号yに基づいて、M×N個の前記送信信号成分の推定値であるM×N個の推定信号成分を含む推定信号xeを推定する推定工程とを含み、前記推定工程は、前記推定信号xeが新たに推定された場合には、前記新たに推定された推定信号xeから第k(但し、kは、0以上且つN-1以下の整数の夫々を示す変数)番目の送信信号グループを構成するM個の前記送信信号成分の推定値xe(k)を除外する第1の工程と、前記第1の工程によって得られる中間信号xt(k)と、前記受信信号yとに基づいて、前記推定値xe(k)を更新することで、前記推定信号xeを推定し直す第2の工程を含むコンピュータプログラムである。
【発明の効果】
【0012】
上述した信号推定装置、信号推定方法及びコンピュータプログラムのそれぞれの態様によれば、受信信号に基づいて送信信号を推定するために必要な演算量を低減することができる。
【図面の簡単な説明】
【0013】
【
図1】
図1は、本実施形態の通信システムの構成を示すブロック図である。
【
図2】
図2は、送信装置が送信する送信信号を示すベクトルである。
【
図3】
図3は、受信装置が受信した受信信号を示すベクトルである。
【
図4】
図4は、送信信号と受信信号との関係を示す。
【
図5】
図5は、ブロック対角行列となる伝送路行列を示す。
【
図6】
図6は、第1の信号推定ユニットの構成を示すブロック図である。
【
図7】
図7は、第1の信号推定ユニットが送信信号を推定する動作の流れを示すフローチャートである。
【
図8】
図8は、第2の信号推定ユニットの構成を示すブロック図である。
【
図9】
図9は、第2の信号推定ユニットが送信信号を推定する動作の流れを示すフローチャートである。
【
図10】
図10は、基本演算部の構成の一例を示すブロック図である。
【
図12】
図12は、変形例の通信システムの構成を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、図面を参照しながら、信号推定装置、信号推定方法、及び、コンピュータプログラムの実施形態が適用された通信システムSYSを用いて、信号推定装置、信号推定方法、及び、コンピュータプログラムの実施形態について説明する。但し、本発明が以下に説明する実施形態に限定されることはない。
<1>通信システムSYSの構成
【0015】
初めに、
図1を参照しながら、本実施形態の通信システムSYSの構成について説明する。
図1は、第1実施形態の通信システムSYSの構成を示すブロック図である。
【0016】
図1に示すように、通信システムSYSは、送信装置1と、受信装置2とを備える。送信装置1は、伝送路3を介して送信信号xを受信装置2に送信する。受信装置2は、伝送路3を介して送信装置1が送信した送信信号xを、受信信号yとして受信する。伝送路3は、有線の伝送路(つまり、通信網)を含んでいてもよい。伝送路3は、無線の伝送路(つまり、通信網)を含んでいてもよい。
【0017】
送信装置1は、OAM(Orbital Angular Momentum)伝送技術を用いて送信信号xを送信する。OAM伝送技術は、異なるOAMモードを有する複数の電波を用いて多重化した信号を送信装置1から受信装置2へと伝送する技術である。OAM伝送技術を用いて送信信号xを送信するために、送信装置1は、送信アンテナ10と、信号処理装置11と、記憶装置12とを備えている。信号処理装置11と、記憶装置12とは、データバス13を介して接続されていてもよい。
【0018】
送信アンテナ10は、径の異なる複数の円形アレーアンテナ(UCA:Uniform Circular Array)100を含む。以下の説明では、送信アンテナ10は、M(但し、Mは1以上の整数)個の円形アレーアンテナ100(具体的には、円形アレーアンテナ100#0から100#M-1)を含むものとする。尚、送信アンテナ10が2個以上の円形アレーアンテナ100を含む(更に、後述する受信アンテナ20が2個以上の円形アレーアンテナ200を含む)場合には、OAM伝送技術は、OAM-MIMO(Multiple Input Multiple Output)伝送技術と称されてもよい。M個の円形アレーアンテナ100は、同心円状に(つまり、同軸に)配置される。具体的には、M個の円形アレーアンテナ100は、円形アレーアンテナ100#0から100#M-1が、中心から外側に向かってこの順に並ぶように配置される。各円形アレーアンテナ100は、複数のアンテナ素子101を備える。
図1に示す例では、各円形アレーアンテナ100は、N(但し、Nは2以上の整数)個のアンテナ素子101(具体的には、アンテナ素子101#0からアンテナ素子101#N-1)を備えるものとする。尚、
図1では、円形アレーアンテナ100#p(但し、pは0以上且つM-1以下の整数の夫々を示す変数)が備えるアンテナ素子101#0から101#N-1を、夫々、アンテナ素子101#0(#p)から101#N-1(#p)と表記している。
【0019】
各円形アレーアンテナ100が備えるN個のアンテナ素子101には、同一周波数帯域内において異なるOAMモードの電波が割り当てられる。つまり、本実施形態では、送信装置1は、N個のOAMモードを用いて送信信号xを多重化する。この場合、各円形アレーアンテナ100は、N個のアンテナ素子101を用いて、N個のOAMモードに夫々対応するN個の送信信号グループの単位で送信信号xを送信可能である。但し、各円形アレーアンテナ100が備える少なくとも二つのアンテナ素子101に、同一のOAMモードの電波が割り当てられてもよい。つまり、OAMモードの数は、各円形アレーアンテナ100が備えるアンテナ素子101の数よりも少なくてもよい。
【0020】
更に、送信アンテナ10がM個の円形アレーアンテナ100を備えているがゆえに、N個の送信信号グループには、M個の送信信号成分を含めることができる。このため、送信装置1は、最大でM×N個の送信信号成分が多重化された送信信号(つまり、送信信号系列)xを送信することができる。以下、円形アレーアンテナ100#pの第k(但し、kは、0以上且つN-1以下の整数)番目のアンテナ素子101#kが送信する送信信号成分を、「送信信号x
(k)
(p)」と称する。この場合、送信信号xは、
図2に示すベクトルで表現可能である。尚、
図2中において、「送信信号x
(k)」は、M個の円形アレーアンテナ100が夫々備えるM個の第k番目のアンテナ素子101#kによって送信されるM個の送信信号x
(k)
(0)から送信信号x
(k)
(M-1)を含む。つまり、「送信信号x
(k)」は、同じOAMモードで送信される第k番目の送信信号グループに含まれる送信信号に相当する。
【0021】
信号処理装置11は、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)及びFPGA(Field Programmable Gate Array)の少なくとも一つを含んでいてもよい。信号処理装置11は、コンピュータプログラムを読み込んでもよい。例えば、信号処理装置11は、記憶装置12が記憶しているコンピュータプログラムを読み込んでもよい。例えば、信号処理装置11は、コンピュータで読み取り可能な記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。信号処理装置11は、不図示の通信装置を介して、送信装置1の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい(つまり、ダウンロードしてもよい又は読み込んでもよい)。信号処理装置11は、読み込んだコンピュータプログラムを実行する。その結果、信号処理装置11内には、送信装置1が行うべき動作を実行するための論理的な機能ブロックが実現される。具体的には、信号処理装置11内には、送信信号xを送信する送信動作を実行するための論理的な機能ブロックが実現される。つまり、信号処理装置11は、送信装置1が行うべき動作を実行するための論理的な機能ブロックを実現するためのコントローラとして機能可能である。
【0022】
図1には、送信動作を実行するために信号処理装置11内に実現される論理的な機能ブロックの一例が示されている。
図1に示すように、信号処理装置11内には、M個の変換ユニット111(具体的には、変換ユニット111#0から変換ユニット111#M-1)が実現される。
【0023】
各変換ユニット111#pは、M個の円形アレーアンテナ100のうちの各変換ユニット111#pに対応する一の円形アレーアンテナ100#pが送信するN個の送信信号x(0)
(p)から送信信号x(N-1)
(p)に対して、前処理を施す。本実施形態では、各変換ユニット111#pは、N個の送信信号x(0)
(p)から送信信号x(N-1)
(p)に対して、逆離散フーリエ変換処理(IDFT:Inverse Discrete Fourier Transform)を施す。この場合、各変換ユニット111#pは、長さNの逆離散フーリエ変換器を含んでいてもよい。逆離散フーリエ変換処理は、N個の送信信号x(0)
(p)から送信信号x(N-1)
(p)をOAM多重化するための処理の少なくとも一部であってもよい。つまり、信号処理装置11は、M×N個の送信信号x(k)
(p)を含む送信信号xを、夫々がN個の送信信号x(0)
(p)から送信信号x(N-1)
(p)を含むM個の信号系列に分割し、M個の信号系列の夫々に対して逆離散フーリエ変換処理を行うことで、送信信号xをOAM多重化してもよい。逆離散フーリエ変換処理が施されたN個の送信信号x(0)
(p)から送信信号x(N-1)
(p)は、対応する円形アレーアンテナ100#pによって、受信装置2に対して送信される。尚、以下の説明では、逆離散フーリエ変換処理が施されたN個の送信信号x(0)
(p)から送信信号x(N-1)
(p)を、「送信信号x’(0)
(p)から送信信号x’(N-1)
(p)」と表記することで、逆離散フーリエ変換処理が施される前のN個の送信信号x(0)
(p)から送信信号x(N-1)
(p)と区別する。
【0024】
記憶装置12は、所望のデータを記憶可能である。例えば、記憶装置12は、信号処理装置11が実行するコンピュータプログラムを一時的に記憶していてもよい。記憶装置12は、信号処理装置11がコンピュータプログラムを実行している際に信号処理装置11が一時的に使用するデータを一時的に記憶してもよい。記憶装置12は、送信装置1が長期的に保存するデータを記憶してもよい。尚、記憶装置12は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。
【0025】
続いて、受信装置2は、受信アンテナ20と、信号処理装置21と、記憶装置22とを備えている。信号処理装置21と、記憶装置22とは、データバス23を介して接続されていてもよい。
【0026】
受信アンテナ20は、OAM伝送技術を用いて送信された送信信号xを受信信号yとして受信するためのアンテナである。本実施形態では、受信アンテナ20は、径が異なる複数の円形アレーアンテナ200を含む。以下の説明では、受信アンテナ20は、M個の円形アレーアンテナ200(具体的には、円形アレーアンテナ200#0から200#M-1)を含むものとする。M個の円形アレーアンテナ200は、同心円状に(つまり、同軸に)配置される。具体的には、M個の円形アレーアンテナ200は、円形アレーアンテナ200#0から200#M-1が、中心から外側に向かってこの順に並ぶように配置される。各円形アレーアンテナ200は、複数のアンテナ素子201を備える。
図1に示す例では、各円形アレーアンテナ200は、N個のアンテナ素子201(具体的には、アンテナ素子201#0からアンテナ素子201#N-1)を備えるものとする。尚、
図1では、円形アレーアンテナ200#pが備えるアンテナ素子201#0から201#N-1を、夫々、アンテナ素子201#0(#p)から201#N-1(#p)と表記している。
【0027】
円形アレーアンテナ200#pは、N個のアンテナ素子#0(#p)から201#N-1(#p)を用いて、円形アレーアンテナ200#pに対応する一の円形アレーアンテナ100#pが送信したN個の送信信号x’
(0)
(p)から送信信号x’
(N-1)
(p)を、受信信号y
(0)
(p)から受信信号y
(N-1)
(p)として受信する。典型的には、円形アレーアンテナ200#pが備えるアンテナ素子201#k(#p)は、円形アレーアンテナ100#pが備えるアンテナ素子101#k(#p)が送信した送信信号x’
(k)
(p)を、受信信号y
(k)
(p)として受信する。このため、受信信号yは、
図3に示すベクトルで表現可能である。尚、
図3中において、「受信信号y
(k)」は、M個の円形アレーアンテナ200が夫々備えるM個の第k番目のアンテナ素子201#kによって受信されるM個の受信信号y
(k)
(0)から受信信号y
(k)
(M-1)を含む。つまり、「受信信号y
(k)」は、対応するOAMモードで受信された受信信号グループ(つまり、対応する送信信号グループに含まれる送信信号x
(k)を受信することで得られた受信信号)に相当する。
【0028】
信号処理装置21は、CPU、GPU及びFPGAの少なくとも一つを含んでいてもよい。信号処理装置21は、コンピュータプログラムを読み込む。例えば、信号処理装置21は、記憶装置22が記憶しているコンピュータプログラムを読み込んでもよい。例えば、信号処理装置21は、コンピュータで読み取り可能な記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。信号処理装置21は、不図示の通信装置を介して、受信装置2の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい(つまり、ダウンロードしてもよい又は読み込んでもよい)。信号処理装置21は、読み込んだコンピュータプログラムを実行する。その結果、信号処理装置21内には、受信装置2が行うべき動作を実行するための論理的な機能ブロックが実現される。具体的には、信号処理装置21内には、受信信号yを受信する受信動作を実行するための論理的な機能ブロックが実現される。つまり、信号処理装置21は、受信装置2が行うべき動作を実行するための論理的な機能ブロックを実現するためのコントローラとして機能可能である。
【0029】
図1には、受信動作を実行するために信号処理装置21内に実現される論理的な機能ブロックの一例が示されている。
図1に示すように、信号処理装置21内には、M個の変換ユニット211(具体的には、変換ユニット211#0から変換ユニット211#M-1)と、信号推定ユニット212とが実現される。
【0030】
各変換ユニット211#pは、M個の円形アレーアンテナ200のうちの各変換ユニット211#pに対応する一の円形アレーアンテナ200#pが受信したN個の受信信号y(0)
(p)から受信信号y(N-1)
(p)に対して、前処理を施す。本実施形態では、各変換ユニット211#pは、N個の受信信号y(0)
(p)から受信信号y(N-1)
(p)に対して、離散フーリエ変換処理(DFT:Discrete Fourier Transform)を施す。この場合、各変換ユニット211#pは、長さNの離散フーリエ変換器を含んでいてもよい。離散フーリエ変換処理は、OAM多重化されたN個の受信信号y(0)
(p)から受信信号y(N-1)
(p)を分離するための処理の少なくとも一部を構成していてもよい。つまり、信号処理装置21は、M×N個の受信信号y(k)
(p)を含む受信信号yを、夫々がN個の受信信号y(0)
(p)から受信信号y(N-1)
(p)を含むM個の信号系列に分割し、M個の信号系列の夫々に対して離散フーリエ変換処理を行う。言い換えれば、信号処理装置21は、M×N個の受信信号y(k)
(p)を含む受信信号yに対して、夫々がN個の受信信号y(0)
(p)から受信信号y(N-1)
(p)を含むM個の信号系列の単位で離散フーリエ変換処理を行う。フーリエ変換処理が施された受信信号y(つまり、フーリエ変換処理が施されたM×N個の受信信号y(k)
(p)を含む受信信号y)は、信号推定ユニット212に出力される。尚、以下の説明では、特段の表記がない場合には、「受信信号y(受信信号y(k)
(p)及び受信信号y(k)を含む)は、フーリエ変換処理が施された受信信号を意味するものとする。
【0031】
信号推定ユニット212は、M個の変換ユニット211から出力されるM×N個の受信信号y(k)
(p)を含む受信信号yに基づいて、送信信号xを推定する。具体的には、信号推定ユニット212は、受信信号yに基づいて、送信信号xが含むM×N個の送信信号x(k)
(p)の推定値であるM×N個の推定信号x_estimate(k)
(p)を含む推定信号x_estimateを推定する。信号推定ユニット212は、受信信号yに基づいて、送信信号xが含むN個の送信信号x(k)の推定値であるN個の推定信号x_estimate(k)を含む推定信号x_estimateを推定する。尚、以下では、説明の簡略化のために、「推定信号x_estimate」を、「推定信号xe」と表記する。
【0032】
ここで、送信信号xと受信信号yとの関係は、
図4に示す関係となる。
図4中において、「H」は、送信アンテナ10と受信アンテナ20との間の伝送路3の状態(典型的には、伝送状態)を示す伝送路行列(言い換えれば、チャネル行列)を示している。伝送路行列Hは、M行×M行の行列H
(i,j)を(i,j)成分(但し、i及びjの夫々は、0以上且つN-1以下の整数)として有するMN行×MN列のブロック行列である。また、
図4中の「n
(0)、n
(1)、・・・、n
(N-1)」は、伝送路3に生ずる雑音(例えば、白色雑音)を成分とするベクトルを示している。
【0033】
受信信号yに基づいて送信信号xを推定するための信号推定方法の一例として、全数探索的方法を採用した信号推定方法があげられる。全数探索的方法を採用した信号推定方法は、送信信号xがとり得る全ての信号パターン(つまり、信号系列)の夫々について
図4に示す演算を行うことで、受信信号yがとり得る全ての信号パターンを算出すると共に、実際に受信した受信信号yの信号パターンに最も近い信号パターンを有する受信信号yに対応する送信信号xの信号パターンを、推定信号xeの信号パターンとして選択する方法である。しかしながら、全数探索的方法を採用した信号推定方法は、送信信号xを推定するために必要な演算量が膨大になってしまう。
【0034】
受信信号yに基づいて送信信号xを推定するための信号推定方法の他の一例として、最小二乗法を採用した信号推定方法があげられる。最小二乗法を採用した信号推定方法は、数式1を用いて、送信信号xを推定する(つまり、M×N個の推定信号xe(k)
(p)を含む推定信号xeを推定する)方法である。尚、数式1中の「H†」は、伝送路行列Hの共役転置行列を示している。数式1中の「σ(k)」は、信号対雑音電力比(SNR:Signal to Noise Ratio)を表すM個のパラメータ「σ(k)
(0)、・・・、σ(k)
(M-1)」を含むベクトルを示している。数式1中の「D(σ(0)、・・・、σ(N-1))」は、M×N個の信号対雑音電力比を表すパラメータ「σ(0)、・・・、σ(N-1)」を対角成分とするMN行×MN列の対角行列を示している。
【0035】
【0036】
最小二乗法を用いて送信信号xを推定するために必要な演算量は、全数探索的方法を用いて送信信号xを推定するために必要な演算量と比較すれば少なくなる。しかしながら、伝送路行列HがMN行×MN列のサイズを有するがゆえに、数式1を用いて送信信号xを推定するために、演算量に対する寄与度が相対的に大きいMN行×MN列のサイズを有する逆行列の算出を含めて(MN)3に比例する演算量が必要になる。このため、最小二乗法を用いて送信信号xを推定するために必要な演算量には、依然として低減の余地がある。更には、最小二乗法による送信信号xの推定精度は、全数探索的方法による送信信号xの推定精度よりも劣っている。
【0037】
一方で、送信アンテナ10と受信アンテナ20とが軸対称となるように(つまり、同軸となるように)配置され且つ伝送路3においてフェージング等による干渉がない理想的な環境下では、伝送路行列Hに含まれる行列H
(i,j)が、i≠jとなる状況下でゼロ行列になる。その結果、送路行列Hは、
図5に示すように、対角ブロック成分以外の成分がゼロになるブロック対角行列となる。この場合、上述した最小二乗法を採用した信号推定方法は、数式2を用いて、送信信号xを推定する方法となる。
【0038】
【0039】
ここで、行列H(k、k)がM行×M列のサイズを有するがゆえに、数式2を用いて送信信号xを推定するために、演算量に対する寄与度が相対的に大きいM行×M列のサイズを有する逆行列の算出を含めてN×M3に比例する演算量が必要になる。従って、数式2に基づく最小二乗法を用いて送信信号xを推定するために必要な演算量は、数式1に基づく最小二乗法を用いて送信信号xを推定するために必要な演算量よりも少なくなる。一方で、数式2に基づく最小二乗法を用いて送信信号xを推定することができるのは、送信アンテナ10と受信アンテナ20とが軸対称となるように配置され且つ伝送路3においてフェージング等による干渉がない理想的なシーンに限られる。しかしながら、現実的には、送信アンテナ10と受信アンテナ20とが常に軸対称となるように配置されるとは限らない。例えば、風雨に起因して送信アンテナ10と受信アンテナ20との少なくとも一部の配置位置がずれることで、送信アンテナ10と受信アンテナ20とが常に軸対称とならない可能性がある。また、伝送路3においてフェージング等による干渉が常にない環境を実現することは容易ではない。このため、伝送路行列Hがブロック対角行列とならなくなる可能性は、決して低くない。
【0040】
そこで、本実施形態では、信号推定ユニット212は、送信信号xを推定するために、以下に提案する新たな信号推定方法を採用する。その結果、信号推定ユニット212は、伝送路行列Hがブロック対角行列とならない場合においても、相対的に少ない演算量で送信信号xを適切に推定することができる。例えば、信号推定ユニット212は、伝送路行列Hがブロック対角行列とならない場合において、数式1に基づく最小二乗法を用いて送信信号xを推定するために必要な演算量よりも少ない演算量で送信信号xを適切に推定することができる。尚、信号推定ユニット212の詳細については、
図6等を参照しながら後に詳述するため、ここでの詳細な説明を省略する。
【0041】
再び
図1において、記憶装置22は、所望のデータを記憶可能である。例えば、記憶装置22は、信号処理装置21が実行するコンピュータプログラムを一時的に記憶していてもよい。記憶装置22は、信号処理装置21がコンピュータプログラムを実行している際に信号処理装置21が一時的に使用するデータを一時的に記憶してもよい。記憶装置22は、受信装置2が長期的に保存するデータを記憶してもよい。尚、記憶装置22は、RAM、ROM、ハードディスク装置、光磁気ディスク装置、SSD及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。
<2>信号推定ユニット212
【0042】
続いて、信号推定ユニット212について説明する。本実施形態では、受信装置2は、信号推定ユニット212として、第1の信号推定ユニット212aを用いてもよい。或いは、受信装置2は、信号推定ユニット212として、第1の信号推定ユニット212aに代えて、第1の信号ユニット212aと比較して構成及び動作の夫々が異なる第2の信号推定ユニット212bを用いてもよい。このため、以下では、第1の信号推定ユニット212aと、第2の信号推定ユニット212bとについて順に説明する。
<2-1>第1の信号推定ユニット212a
初めに、第1の信号推定ユニット212aについて説明する。
<2-1-1>第1の信号推定ユニット212aの構成
【0043】
初めに、
図6を参照しながら、第1の信号推定ユニット212aの構成について説明する。
図6は、第1の信号推定ユニット212aの構成を示すブロック図である。
【0044】
図6に示すように、信号推定ユニット212aは、N個の信号推定部2121(具体的には、信号推定部2121#0から信号推定部2121#N-1)と、N個の干渉信号推定部2122(具体的には、干渉信号生成部2122#0から干渉信号生成部2122#N-1)と、N個の加算器2123(具体的には、加算器2123#0から加算器2123#N-1)と、信号出力部2124とを備えている。尚、信号推定部2121#0から2121#N-1と、干渉信号生成部2122#0から2122#N-1と、加算器2123#0から加算器2123#N-1と、信号出力部2124との夫々の動作については、後に
図7を参照しながら詳述するが、以下のその概要について説明する。
【0045】
信号推定部2121#kは、受信信号yと、干渉信号生成部2122#kが生成する後述する干渉信号y_interference(k)とに基づいて、推定信号xe(k)を推定する。その結果、N個の信号推定部2121#0から2121#N-1が夫々推定した推定信号xe(0)から推定信号xe(N-1)を含む推定信号xeが推定される。尚、以下では、説明の簡略化のために、「干渉信号y_interference」を、「干渉信号yi」と表記する。
【0046】
干渉信号生成部2122#kは、信号推定部2121#0から2121#N-1が夫々推定した推定信号xe(0)から推定信号xe(N-1)を含む推定信号xeに基づいて、干渉信号yi(k)を生成する。
【0047】
加算器2123#kは、受信信号yから、干渉信号生成部2122#kが生成した干渉信号yi(k)を減算する。加算器2123#kの出力(つまり、受信信号yと干渉信号yi(k)との差分)は、信号推定部2121#kに出力される。このため、信号推定部2121#kは、加算器2123#kの出力(つまり、受信信号yと干渉信号yi(k)との差分)に基づいて、推定信号xe(k)を推定する。
【0048】
信号出力部2124は、信号推定部2121#0から2121#N-1が夫々推定した推定信号xe(0)から推定信号xe(N-1)を含む推定信号xeに基づいて、送信信号xの最終的に確定した推定値に相当する確定推定信号xe_final(以降、“確定推定信号xef”と称する)を出力する。このため、信号推定部2121#0から2121#N-1が夫々推定した推定信号xe(0)から推定信号xe(N-1)を含む推定信号xeは、暫定的な推定信号であるとみなしてもよい。
<2-1-2>第1の信号推定ユニット212aが送信信号xを推定する動作
【0049】
続いて、
図7を参照しながら、第1の信号推定ユニット212aが送信信号xを推定する動作について説明する。
図7は、第1の信号推定ユニット212aが送信信号xを推定する流れを示すフローチャートである。
【0050】
尚、
図7に示す動作(但し、後述するステップS18を除く)は、異なる変数kが割り当てられた機能ブロックによって並行して行われる。つまり、信号推定部2121#0、干渉信号生成部2122#0及び加算器2123#0を含む機能ブロックと、信号推定部2121#1、干渉信号生成部2122#1及び加算器2123#1を含む機能ブロックと、・・・、信号推定部2121#N-1、干渉信号生成部2122#N-1及び加算器2123#N-1を含む機能ブロックとは、
図8に示す動作を並行して行う。
【0051】
図7に示すように、信号推定部2121#kは、初期情報として、伝送路行列Hと、M個のパラメータρ
(k)
(0)、ρ
(k)
(2)、・・・、及びρ
(k)
(M-1)を含むパラメータセットρ
(k)とを取得する(ステップS11)。パラメータセットρ
(k)は、推定信号xe
(k)の推定精度を設定するために任意に調整可能である。より具体的には、パラメータセットρ
(k)に含まれるパラメータρ
(k)
(0)、ρ
(k)
(2)、・・・、及びρ
(k)
(M-1)は、夫々、推定信号xe
(k)
(0)、xe
(k)
(1)、・・・、及びxe
(k)
(M-1)の推定精度を設定するために任意に調整可能なパラメータである。
【0052】
その後、信号推定部2121#kは、初期化動作を行う(ステップS12)。例えば、信号推定部2121#kは、変数rを0に設定する。変数rは、信号推定部2121#kが推定信号xe(k)を推定する動作を行った回数をカウントするための変数である。なぜならば、後述するように、信号推定部2121#kは、推定信号xe(k)を推定する動作を必要に応じて繰り返すからである。このため、以下では、信号推定部2121#kが(r+1)回目に推定した推定信号xe(k)を、“推定信号xer+1
(k)”と表記する。また、例えば、信号推定部2121#kは、干渉信号yi(k)の初期値をゼロに設定する。尚、以下では、説明の便宜上、信号推定部2121#kが推定信号xer+1
(k)を推定するために用いる干渉信号yi(k)を、“干渉信号yir
(k)”と表記する。この場合、干渉信号yi(k)の初期値は、“干渉信号yi0
(k)”と表記される。また、例えば、信号推定部2121#kは、推定信号xe(k)を推定するために信号推定部2121#kが用いる内部データv(k)及びz(k)の初期値をゼロに設定する。尚、以下では、説明の便宜上、信号推定部2121#kが推定信号xer+1
(k)を推定するために用いる内部データv(k)及びz(k)を、“内部データvr
(k)及びzr
(k)”と表記する。この場合、内部データv(k)及びz(k)の初期値は、“内部データv0
(k)及びz0
(k)”と表記される。また、例えば、信号推定部2121#kは、推定信号xe(k)を推定するために信号推定部2121#kが用いる内部行列A(k)を、数式3に基づいて設定する。尚、数式3中の「H(k)」は、伝送路行列の第k列ブロックから構成されるMN行×M列の行列である。また、数式3中の「D(ρ(k))」は、M個のパラメータρ(k)
(0)、ρ(k)
(2)、・・・、及びρ(k)
(M-1)を対角成分とするM行×M列の対角行列を示している。
【0053】
【0054】
その後、信号推定部2121#kは、ステップS11で取得したパラメータセットρ
(k)と、ステップS11で取得した伝送路行列Hと、受信信号yと、干渉信号yi
r
(k)と、内部データv
r
(k)と、内部データz
r
(k)と、ステップS12で設定された内部行列A
(k)とに基づいて、推定信号xe
r+1
(k)を推定する(ステップS13)。具体的には、信号推定部2121#kは、数式4を用いて、推定信号xe
r+1
(k)を推定する(ステップS13)。尚、
図4中の「y-yi
r
(k)」は、加算器2123#kの出力に相当する。尚、ステップS13が初めて行われる場合には、変数rがゼロに初期化されているため、信号推定部2121#kは、ステップS12で設定された干渉信号yi
0
(k)と、ステップS12で設定された内部データv
0
(k)と、ステップS12で設定された内部データz
0
(k)とに基づいて、推定信号xe
1
(k)を推定することになる。尚、数式4の右辺の第2項は、制約付き最適化問題を解くために利用可能なラグランジュ乗数法に基づく項である。この第2項は、必ずしも用いられなくてもよい。この場合、内部データv
r
(k)及びz
r
(k)もまた用いられなくてもよくなる。
【0055】
【0056】
その後、信号推定部2121#kは、変数rに1を加算した数が、所定閾値Rよりも小さいか否かを判定する(ステップS14)。上述したように、変数rは、信号推定部2121#kが推定信号xer+1
(k)を推定する動作を行った回数をカウントするための変数である。具体的には、変数rに1を加算した数は、信号推定部2121#kが推定信号xer+1
(k)を推定する動作を行った回数(つまり、信号推定部2121#kがステップS13の動作を行った回数)を示している。また、所定閾値Rは、信号推定部2121#kが推定信号xer+1
(k)を推定する動作を行うべき回数として予め設定された値である。
【0057】
ステップS14における判定の結果、変数rに1を加算した数が所定閾値Rよりも小さいと判定された場合には(ステップS14:Yes)、信号推定部2121#kは、推定信号xer+1
(k)を推定し直す。つまり、信号推定部2121#kは、推定信号xer+2
(k)を新たに推定する。
【0058】
推定信号xer+1
(k)を推定し直すために、信号推定部2121#kは、ステップS13で推定した最新の推定信号xer+1
(k)に基づいて、内部データvr
(k)及びzr
(k)を更新する(ステップS15)。つまり、信号推定部2121#kは、内部データvr+1
(k)及びzr+1
(k)を生成する(ステップS15)。具体的には、信号推定部2121#kは、数式5を用いて内部データzr+1
(k)を生成する。尚、数式5中の記号「Πs(w)」は、送信信号xがとり得る全ての信号パターンのうち信号wの信号パターンとの距離(ユークリッド距離)が最も近い一の信号パターンの送信信号xを示すための記号である。その後、信号推定部2121#kは、数式6を用いて内部データvr+1
(k)を生成する。
【0059】
【0060】
【0061】
ステップS15の動作と並行して又は相前後して、干渉信号生成部2122#kは、ステップS13でN個の信号推定部2121#0から2121#N-1によって夫々推定された最新の推定信号xer+1
(0)からxer+1
(N-1)に基づいて、干渉信号yir
(k)を更新する(ステップS16)。つまり、干渉信号生成部2122#kは、干渉信号yir+1
(k)を生成する(ステップS16)。具体的には、干渉信号生成部2122#kは、数式7に基づいて、干渉信号yir+1
(k)を生成する。つまり、干渉信号生成部2122#kは、伝送路行列Hを構成するN個の列ブロックから、第k番目の送信信号グループに対応する第k列番目の列ブロックを除いたN-1個の列ブロックと、推定信号xer+1
(k)を除くN-1個の推定信号xer+1
(s)(但し、sは、0以上且つN-1以下であって且つkを除く整数を示す変数)とに基づいて、干渉信号yir+1
(k)を生成する。このため、伝送路行列Hを構成するN個の列ブロックから第k列番目の列ブロックを除いたN-1個の列ブロックから構成される行列を、中間行列Ht(k)とし、推定信号xer+1
(k)を除くN-1個の推定信号xer+1
(s)から構成される信号を、中間信号xtr+1
(k)とすると、数式7は、数式8で表現可能である。尚、行列Ht(k)は、MN行×(MN-M)列の行列となる。また、中間信号xtr+1
(k)は、(MN-M)次元のベクトルとなる。
【0062】
【0063】
【0064】
その後、信号推定部2121#kは、変数rを1だけインクリメントした後(ステップS17)、推定信号xer+1
(k)を推定し直す(つまり、更新する)(ステップS13)。つまり、信号推定部2121#kは、ステップS11で取得したパラメータセットρ(k)と、ステップS11で取得した伝送路行列Hと、受信信号yと、ステップS16で生成された干渉信号yir
(k)と、ステップS15で更新された内部データvr
(k)と、ステップS15で更新された内部データzr
(k)とに基づいて、推定信号xer+1
(k)を推定し直す(ステップS13)。ここでも、信号推定部2121#kは、上述した数式4を用いて、推定信号xer+1
(k)を推定し直す。
【0065】
以上のステップS13からステップS17までの動作が、変数rに1を加算した数が所定閾値Rよりも小さくないと判定されるまで繰り返される。つまり、ステップS13からステップS17までの動作が、R-1回繰り返される。
【0066】
ステップS14における判定の結果、変数rに1を加算した数が所定閾値Rよりも小さくないと判定された場合には(ステップS14:No)、信号推定部2121#kは、推定信号xer+1
(k)を推定し直さなくてもよい。この場合には、信号推定部2121#kは、最後に推定した推定信号xer+1
(k)(=xeR
(k))を信号出力部2124に出力する。信号出力部2124は、信号推定部2121#0から2121#N-1が夫々推定した推定信号xeR
(0)から推定信号xeR
(N-1)を含む推定信号xeに基づいて、確定推定信号xefを出力する(ステップS18)。具体的には、信号出力部2124は、数式9を用いて、送信信号x(k)の最終的に確定した推定値である確定推定信号xef(k)を出力する(ステップS18)。つまり、信号出力部2124は、送信信号x(k)がとり得る全ての信号パターンのうち推定信号xeR
(k)の信号パターンとの距離(ユークリッド距離)が最も近い一の信号パターンを有する送信信号x(k)を、確定推定信号xef(k)として出力する。その結果、信号出力部2124は、確定推定信号xef(0)から確定推定信号xef(N-1)が適切な配列順に並ぶ確定推定信号xefを出力する。つまり、信号出力部2124は、送信信号xがとり得る全ての信号パターンのうち推定信号xeの信号パターンとの距離(ユークリッド距離)が最も近い一の信号パターンを有する送信信号xを、確定推定信号xefとして出力する。
【0067】
【数9】
<2-1-3>第1の信号推定ユニット212aの技術的効果
【0068】
信号推定ユニット212aは、上述した数式3及び4に示すように、送信信号xを推定する(つまり、推定信号xeを推定する)ために、伝送路行列Hの対角ブロック成分のみならず、伝送路行列Hの非対角ブロック成分も使用している。このため、信号推定ユニット212aは、伝送路行列Hがブロック対角行列とならない場合においても送信信号xを推定することができる。
【0069】
更に、伝送路行列Hがブロック対角行列とならない場合であっても、上述したように受信信号y(k)と干渉信号yir
(k)との差分に基づいて送信信号x(k)が推定されるがゆえに、送信信号x(k)の推定精度は、相対的に高い精度のまま維持される。というのも、干渉信号yir
(k)が伝送路行列Hから第k列番目の列ブロックを除いた中間行列Ht(k)と推定信号xer+1
(k)を除くN-1個の推定信号xer+1
(s)とから生成されるがゆえに、干渉信号yir
(k)は、送信信号x(k)以外の受信信号yに含まれる送信信号成分に関する情報を示している。このため、受信信号y(k)と干渉信号yir
(k)との差分は、実質的には、受信信号yから送信信号x(k)以外の送信信号成分に関する情報(つまり、干渉成分)を除いた信号となる。従って、信号推定ユニット212aは、送信信号x(k)以外の送信信号成分に関する情報を除いた受信信号yに基づいて、送信信号x(k)を推定することができる。その結果、信号推定ユニット212aは、送信信号x(k)以外の送信信号成分に関する情報を除いていない受信信号yに基づいて送信信号x(k)が推定される場合と比較して、送信信号x(k)を高精度に推定することができる。このため、信号推定ユニット212aによる送信信号xの推定精度は、数式1を用いた送信信号xの推定精度よりも高くなる。場合によっては、信号推定ユニット212aによる送信信号xの推定精度は、全数探索的方法を用いた送信信号xの推定精度に近づくほどに高くなる。
【0070】
更に、数式3に示すように、内部行列A(k)がM行×M列の行列であるがゆえに、信号推定ユニット212aが算出する逆行列のサイズは、上述した数式2を用いて送信信号xを推定する(つまり、伝送路行列Hの対角ブロック成分を用いて送信信号xを推定する)ために算出される逆行列のサイズと同じになる。このため、信号推定ユニット212aが送信信号xを推定するために必要な演算量は、上述した数式1を用いて送信信号xを推定するために必要な演算量よりも少なくなる。具体的には、信号推定ユニット212aは、数式3に示す行列の乗算及び逆行列の演算を行うために、(M3+M2N)×Nに比例する演算量を必要とし、数式4に示す行列の乗算を行うために、(M2+M2N)×Lに比例する演算量を必要とする。一方で、上述した数式1を用いて送信信号xを推定するためには、(MN)3+2(MN)2に比例する演算量が必要となる。M=4、N=16且つR=4となる状況では、信号推定ユニット212aに必要とされる演算量は、数式1を用いて送信信号xを推定するために必要な演算量の10%以下にまで低減される。
【0071】
尚、送信アンテナ10と受信アンテナ20とが軸対称となるように配置された理想的な環境下では、上述したパラメータセットρ(k)が信号対雑音電力比σ(k)と同じになるように設定されれば、信号推定部2121#kが1回目に推定する推定信号xe(k)は、数式2を用いて推定される推定信号xe(k)と同じになる。このため、信号推定部2121#kが2回目以降に推定する推定信号xe(k)の精度は、数式2を用いて推定される推定信号xe(k)の精度よりも高くなる可能性が相対的に高い。或いは、信号推定部2121#kが推定信号xe(k)を推定する回数を示す所定閾値Rが1に設定されれば、信号推定ユニット212aが送信信号xを推定するために必要とされる演算量は、数式2を用いて送信信号xを推定するために必要な演算量にまで低減される。
<2-2>第2の信号推定ユニット212b
続いて、第2の信号推定ユニット212bについて説明する。
<2-2-1>第2の信号推定ユニット212bの構成
【0072】
初めに、
図8を参照しながら、第2の信号推定ユニット212bの構成について説明する。
図8は、第2の信号推定ユニット212bの構成を示すブロック図である。
【0073】
図8に示すように、信号推定ユニット212aは、N×R個の基本演算部2125と、R-1個の選択出力部2126と、N個の信号出力部2127とを備えている。N×R個の基本演算部2125は、N行×R列のマトリクス状に配列されている。
図8に示す例では、N×R個の基本演算部2125は、夫々が推定信号xeを推定可能なR個の基本演算部2125が列方向に沿って並ぶように配置されている演算ブロック2128が、行方向に沿ってN個並ぶように配置されている。以下、第k+1行第r+1列に配置されている基本演算部2125を、“基本演算部2125(k、r)”と表記する。尚、上述した第1の信号推定ユニット212aでは、変数rは、信号推定部2121#kが推定信号xe
(k)を推定する動作を行った回数をカウントするための変数であるが、第2の信号推定ユニット212bでは、基本演算部2125の配置位置を示すための変数として用いる。このため、変数rは、0以上且つR-1以下の整数の夫々を示す変数となる。尚、基本演算部2125と、選択出力部2126と、信号出力部2127との夫々の動作については、後に
図9を参照しながら詳述するが、以下のその概要について説明する。
【0074】
第k+1行に配列されているR個の基本演算部2125(k、0)から2125(k、R-1)は、夫々、推定信号xe1
(k)から推定信号xeR
(k)を推定する。つまり、第k+1行第r+1列に配置されている基本演算部2125(k、r)は、推定信号xer+1
(k)を推定する。具体的には、基本演算部2125(k、r)は、推定信号xer
(k)を除くN-1個の推定信号xer
(s)から構成される中間信号xtr
(k)と、内部データvr
(k)及びzr
(k)と、第k+1行に配列されているR個の基本演算部2125(k、0)から2125(k、R-1)に共通して用いられる共通情報D(k)とに基づいて、推定信号xer+1
(k)を推定する。更に、基本演算部2125(k、r)は、内部データvr+1
(k)及びzr+1
(k)を生成する。
【0075】
R-1個の選択出力部2126は、選択出力部2126(1)から2126(R-1)を含む。選択出力部2126(r)には、第r列に配列されているN個の基本演算部2125(k、r-1)が夫々推定したN個の推定信号xer
(0)からxer
(N-1)が入力される。選択出力部2126(r)は、推定信号xer
(k)を除くN-1個の推定信号xer
(s)から構成される中間信号xtr
(k)を、基本演算部2125(k、r)に出力する。
【0076】
N個の信号出力部2127は、信号出力部2127(0)から2127(N-1)を含む。信号出力部2127(k)には、基本演算部2125(k、R-1)が推定した推定信号xeR
(k)が入力される。信号出力部2127(k)は、入力された推定信号xeR
(k)に基づいて、送信信号x(k)の最終的に確定した推定値である確定推定信号xef(k)を出力する。
<2-2-2>第2の信号推定ユニット212bが送信信号xを推定する動作
【0077】
続いて、
図9を参照しながら、第2の信号推定ユニット212bが送信信号xを推定する動作について説明する。
図9は、第2の信号推定ユニット212bが送信信号xを推定する流れを示すフローチャートである。
【0078】
図9に示すように、信号推定ユニット212bは、初期情報として、伝送路行列Hを取得する(ステップS21)。取得された伝送路行列Hに関する情報は、共通情報D
(k)として基本演算部2125(k、r)に出力される。
【0079】
更に、信号推定ユニット212bは、初期情報として、M個のパラメータρr+1
(k)
(0)、ρr+1
(k)
(2)、・・・、及びρr+1
(k)
(M-1)を含むパラメータセットρr+1
(k)を取得する(ステップS21)。パラメータセットρr+1
(k)は、推定信号xer+1
(k)の推定精度を設定するために任意に調整可能である。より具体的には、パラメータセットρr+1
(k)に含まれるパラメータρr+1
(k)
(0)、ρr+1
(k)
(2)、・・・、及びρr+1
(k)
(M-1)は、夫々、推定信号xer+1
k)
(0)、xer+1
(k)
(1)、・・・、及びxer+1
(k)
(M-1)の推定精度を設定するために任意に調整可能なパラメータである。このため、パラメータセットρr+1
(k)は、基本演算部2125(k、r)によって用いられる。信号推定ユニット212bは、このようなパラメータセットρr+1
(k)を、変数r及び変数kがとり得る値に応じて、R×N個取得する。つまり、信号推定ユニット212bは、パラメータセットρ1
(0)からパラメータセットρR
(N-1)を取得する。取得されたパラメータセットρr+1
(k)は、基本演算部2125(k、r)に記憶される。更に、信号推定ユニット212bは、パラメータセットρ1
(k)からρR
(k)の初期値であるパラメータセットρ0
(k)を、変数kがとり得る値に応じてN個取得する。このため、信号推定ユニット212bは、(R+1)×N個のパラメータセットρを取得する。
【0080】
更に、信号推定ユニット212bは、初期情報として、所定の非線形関数Ψr
(k)を、変数r及び変数kがとり得る値に応じて、R×N個取得する(ステップS21)。非線形関数Ψr
(k)は、基本演算部2125(k、r)が内部データvr+1
(k)及びzr+1
(k)を生成するために用いられる。取得された非線形関数Ψr
(k)は、基本演算部2125(k、r)に記憶される。更に、信号推定ユニット212bは、初期情報として、非線形関数ΨR
(k)を、変数kがとり得る値に応じてN個取得する(ステップS21)。非線形関数ΨR
(k)は、信号出力部2127(k)が確定推定信号xef(k)を出力するために用いられる。取得された非線形関数Ψr
(k)は、信号出力部2127(k)に記憶される。
【0081】
その後、信号推定ユニット212bは、初期化動作を行う(ステップS22)。例えば、信号推定ユニット212bは、変数rを0に設定する。また、例えば、信号推定ユニット212bは、推定信号xe(k)の初期値xe0
(k)をゼロに設定してもよい。つまり、信号推定ユニット212bは、推定信号xe(0)からxe(N-1)の初期値xe0
(0)からxe(N-1)をゼロに設定する。また、例えば、信号推定ユニット212bは、内部データvr
(k)の初期値v0
(k)及び内部データzr
(k)の初期値z0
(k)の初期値xe0
(k)をゼロに設定する。つまり、信号推定ユニット212bは、内部データvr
(0)からvr
(N-1)の初期値v0
(0)からv0
(N-1)と、内部データzr
(0)からzr
(N-1)の初期値z0
(0)からz0
(N-1)とを、ゼロに設定する。更に、信号推定ユニット212bは、推定信号xer+1
(k)を推定するために基本演算部2125(k、r)が用いる内部行列A(k)を、数式10に基づいて設定する。つまり、信号推定ユニット212bは、内部行列A(0)からA(N-1)を設定する。設定された内部行列(k)に関する情報は、共通情報D(k)として基本演算部2125(k、r)に出力される。
【0082】
【0083】
その後、基本演算部2125(k、r)は、ステップS21で取得したパラメータセットρr+1
(k)と、ステップS11で取得した伝送路行列Hと、受信信号yと、推定信号xer
(k)から生成される中間信号xtr
(k)、内部データvr
(k)と、内部データzr
(k)と、ステップS22で設定された内部行列A(k)とに基づいて、推定信号xer+1
(k)を推定する(ステップS23)。具体的には、基本演算部2125(k、r)は、数式11を用いて、推定信号xer+1
(k)を推定する(ステップS23)。尚、ステップS23が初めて行われる場合には、変数rがゼロに初期化されているため、基本演算部2125(k、0)は、ステップS22で設定された推定信号xe0
(k)と、ステップS22で設定された内部データv0
(k)と、ステップS22で設定された内部データz0
(k)とに基づいて、推定信号xe1
(k)を推定することになる。また、受信信号yに関する情報は、共通情報D(k)として基本演算部2125(k、r)に出力されてもよい。尚、数式11の右辺の第2項は、制約付き最適化問題を解くために利用可能なラグランジュ乗数法に基づく項である。この第2項は、必ずしも用いられなくてもよい。この場合、内部データvr
(k)及びzr
(k)もまた用いられなくてもよくなる。
【0084】
【0085】
数式11に基づいて推定信号xe
r+1
(k)を推定する基本演算部2125(k、r)の構成の一例が、
図10に示されている。
図10に示すように、推定信号xe
r+1
(k)を推定するための処理ブロックとして、基本演算部2125(k、r)は、記憶装置2125Sと、レジスタ2125R1と、レジスタ2125R2と、レジスタ2125R3と、レジスタ2125R4と、レジスタ2125R5と、レジスタ2125R6と、乗算器2125M1と、乗算器2125M2と、乗算器2125M3と、加算器2125A1と、加算器2125A2とを備えている。記憶装置2125Sには、パラメータセットρ
r+1
(k)が記憶されている。レジスタ2125R1には、中間信号xt
r
(k)が入力される。レジスタ2125R1は、入力された中間信号xt
r
(k)を一時的に保持可能である。レジスタ2125R2には、共通情報D
(k)に含まれる伝送路行列Hに関する情報として、「H
(k)†H
(k)」という行列が入力される。レジスタ2125R2は、入力された「H
(k)†H
(k)」という行列を一時的に保持可能である。レジスタ2125R3には、共通情報D
(k)に含まれる伝送路行列Hに関する情報として、「H
(k)†y」という行列が入力される。レジスタ2125R3は、入力された「H
(k)†y」という行列を一時的に保持可能である。レジスタ2125R4には、共通情報D
(k)に含まれる情報として、内部行列A
(k)が入力される。レジスタ2125R4は、入力された内部行列A
(k)を一時的に保持可能である。レジスタ2125R5には、内部データz
r
(k)が入力される。レジスタ2125R5は、入力された内部データz
r
(k)を一時的に保持可能である。レジスタ2125R6には、内部データv
r
(k)が入力される。レジスタ2125R6は、入力された内部データv
r
(k)を一時的に保持可能である。乗算器2125M1は、レジスタ2125R1に入力された中間信号xt
r
(k)とレジスタ2125R2に入力された「H
(k)†H
(k)」という行列とを掛け合わせる乗算処理を行う。加算器2125A1は、レジスタ2125R5に入力された内部データz
r
(k)とレジスタ2125R6に入力された内部データv
r
(k)とを足し合わせる加算処理を行う。乗算器2125M2は、記憶装置2125Sに記憶されているパラメータセットρ
r+1
(k)と加算器2125A1の出力とを掛け合わせる乗算処理を行う。加算器2125A2は、レジスタ2125R3に入力された「H
(k)†y」という行列と乗算器2125M2の出力との加算結果から、乗算器2125M1の出力を減算する加算処理を行う。乗算器2125M3は、レジスタ2125R3に入力された内部行列A
(k)と加算器2125A2の出力とを掛け合わせる乗算処理を行う。乗算器2125M3の出力は、推定信号xe
r+1
(k)に相当する。
【0086】
尚、基本演算部2125(k、r)は更に、加算器2125A3と、加算器2125A4と、加算器2125A5と、演算器2125Cとを備えている。これらの処理ブロックは、主として内部データvr+1
(k)及びzr+1
(k)を生成するために用いられるため、後に詳述する。
【0087】
その後、信号推定ユニット212bは、変数rに1を加算した数が、所定閾値Rよりも小さいか否かを判定する(ステップS24)。変数rは、各演算ブロック2128内において推定信号xer+1
(k)を推定している基本演算部2125(k、r)を特定している。従って、変数rに1を加算した数が所定閾値Rよりも小さいか否かを判定する動作は、実質的には、各演算ブロック2128の最終列の基本演算部2125(k、R-1)が推定信号xeR
(k)を推定したか否かを判定する動作と等価であると言える。
【0088】
ステップS24における判定の結果、変数rに1を加算した数が所定閾値Rよりも小さいと判定された場合には(ステップS14:Yes)、推定信号xer+1
(k)を推定した基本演算部2125(k、r)の次の列の基本演算部2125(k、r+1)は、推定信号xer+2
(k)を推定する。
【0089】
この場合、基本演算部2125(k、r)は、ステップS23で推定した最新の推定信号xer+1
(k)に基づいて、内部データvr+1
(k)及びzr+1
(k)を生成する(ステップS25)。具体的には、基本演算部2125(k、r)は、数式12を用いて内部データzr+1
(k)を生成する。その後、基本演算部2125(k、r)は、数式13を用いて内部データvr+1
(k)を生成する。
【0090】
【0091】
【0092】
数式12中の「Ψ(w)」は、M個の信号成分を含む信号(=ベクトル)wに対して非線形変換処理を行うことを意味している。非線形関数Ψ
r
(k)の一例が数式14に示されている。数式14に示す非線形関数Ψ
r
(k)は、信号wに含まれるM個の信号成分(w
0、w
1、・・・・、w
M-1)に対して、パラメータ(a
0、a
1、・・・・、a
M-1)及び(b
0、b
1、・・・・、b
M-1)によって定義される双曲線正接関数tanhを用いて行われる非線形変換処理を規定している。尚、
図11(a)から
図11(c)の夫々は、数式14に示される非線形関数Ψ
r
(k)の一例を示している。
図11(a)に示す非線形関数Ψ
r
(k)と、
図11(b)に示す非線形関数Ψ
r
(k)と、
図11(c)に示す非線形関数Ψ
r
(k)とは、パラメータ(a
0、a
1、・・・・、a
M-1)及び(b
0、b
1、・・・・、b
M-1)の少なくとも一部が異なる。
【0093】
【0094】
数式12及び13に基づいて内部データz
r+1
(k)及びv
r+1
(k)を生成する基本演算部2125(k、r)の構成の一例が、
図10に示されている。
図10に示すように、内部データz
r+1
(k)及びv
r+1
(k)を生成するための処理ブロックとして、基本演算部2125(k、r)は、加算器2125A3と、加算器2125A4と、加算器2125A5と、演算器2125Cとを備えている。加算器2125A3は、乗算器2125M3の出力からレジスタ2125R6に入力された内部データv
r
(k)を減算するための減算処理を行う。演算器2125Cは、非線形関数Ψ
r
(k)を用いて加算器2125A3の出力に対して非線形変換処理を行う。演算器2125Cの出力は、内部データz
r+1
(k)に相当する。加算器2125A4は、乗算器2125M3の出力から演算器2125Cの出力を減算するための減算処理を行う。加算器2125A5は、レジスタ2125R6に入力された内部データv
r
(k)から加算器2125A4の出力を減算するための減算処理を行う。加算器2125A5の出力は、内部データv
r+1
(k)に相当する。
【0095】
その後、変数rが1だけインクリメントされた後(ステップS27)、次の列の基本演算部2125(k、r)は、推定信号xer+1
(k)を新たに推定する(ステップS23)。つまり、基本演算部2125(k、r)は、ステップS11で取得したパラメータセットρr
(k)と、ステップS21で取得した伝送路行列Hと、受信信号yと、ステップS25で生成された内部データvr
(k)と、ステップS25で生成された内部データzr
(k)と、選択出力部2126(r)から出力される中間信号xtr
(k)とに基づいて、推定信号xer+1
(k)を推定する(ステップS23)。ここでも、信号推定部2121#kは、上述した数式11を用いて、推定信号xer+1
(k)を推定し直す。
【0096】
以上のステップS23からステップS27までの動作が、変数rに1を加算した数が所定閾値Rよりも小さくないと判定されるまで繰り返される。つまり、ステップS23からステップS27までの動作が、R-1回繰り返される。但し、
図8に示す実際の信号推定ユニット212bの構成から分かるように、実際には、各演算ブロック2128に含まれるR個の基本演算部2125(k、0)から2125(k、R-1)によって、推定信号xe
r+1
(k)を推定する処理がシーケンシャルに行われる。つまり、第2の信号推定ユニット212bは、推定信号xe
r+1
(k)を推定する処理が、基本演算部2125(k、0)から2125(k、R-1)によって実現されるパイプライン処理になるという点で、推定信号xe
r+1
(k)を推定する処理がループ処理となる第1の信号推定ユニット212aとは異なるとも言える。尚、
図9は、説明を分かりやすくするために、第2の信号推定ユニット212bが推定信号xe
r+1
(k)を推定する処理をループ処理の形式で記載しているが、実際には、信号推定ユニット212bは、推定信号xe
r+1
(k)を推定する処理をループ処理で行わなくてもよい。つまり、信号推定ユニット212bは、変数rに基づくステップS24の判定を行うことなく、基本演算部2125(k、0)から2125(k、R-1)に推定信号xe
r+1
(k)を推定する処理をシーケンシャルに行わせてもよい。
【0097】
他方で、ステップS24における判定の結果、変数rに1を加算した数が所定閾値Rよりも小さくないと判定された場合には(ステップS24:No)、各演算ブロック2128の最終列の基本演算部2125(k、R-1)が推定信号xeR
(k)を既に推定したと想定される。この場合には、信号出力部2127(k)は、基本演算部2125(k、R-1)が推定した推定信号xeR
(k)に基づいて、確定推定信号xef(k)を出力する(ステップS28)。具体的には、信号出力部2127(k)は、数式15を用いて、送信信号x(k)の最終的に確定した推定値である確定推定信号xef(k)を出力する(ステップS28)。その結果、N個の信号出力部2127(0)から2127(N-1)から夫々出力される確定推定信号xef(0)からxef(N-1)を含む確定推定信号xefが、信号推定ユニット212bから出力される。
【0098】
【数15】
<2-2-3>第2の信号推定ユニット212bの技術的効果
【0099】
信号推定ユニット212bは、信号推定ユニット212aが享受可能な効果と同様の効果を享受することができる。例えば、信号推定ユニット212aは、伝送路行列Hがブロック対角行列とならない場合においても送信信号xを推定することができる。更に、中間信号xtr
(k)と中間行列Ht(k)との乗算結果(=干渉信号yir
(k)に相当する信号)と受信信号y(k)との差分に基づいて送信信号x(k)が推定されるがゆえに、信号推定ユニット212bによる送信信号x(k)の推定精度は、信号推定ユニット212aと同様に、相対的に高い精度のまま維持される。更に、信号推定ユニット212bが送信信号xを推定するために必要な演算量は、上述した数式1を用いて送信信号xを推定するために必要な演算量よりも少なくなる。
<4>変形例
【0100】
信号推定ユニット212が第2の信号推定ユニット212bである場合には、通信システムSYSは、信号推定ユニット212bが用いるパラメータセットρ
r+1
(k)及び非線形関数Ψ
r
(k)(例えば、非線形関数Ψ
r
(k)を規定する上述したパラメータ(a
0、a
1、・・・・、a
M-1)及び(b
0、b
1、・・・・、b
M-1)の少なくとも一部を学習可能であってもよい。例えば、通信システムSYSの変形例(以降、“通信システムSYSmod”と称する)を示す
図12に示すように、通信システムSYSmodは、パラメータセットρ
r+1
(k)及び非線形関数Ψ
r
(k)の少なくとも一部を学習可能な学習装置4modを備えていてもよい。学習装置4modは、受信装置2の外部に配置されていてもよいし、受信装置2の内部に配置されていてもよい。学習装置4modは、受信装置2の信号処理装置21内に実現される処理ブロックであってもよい。
【0101】
学習装置4modは、信号推定ユニット212が出力する確定推定信号xefと送信装置1が実際に送信した送信信号xとの間の誤差(例えば、二乗誤差)に基づく損失関数Lossを用いて、パラメータセットρr+1
(k)及び非線形関数Ψr
(k)を学習してもよい。この際、学習装置4modは、ニューラルネットワークのパラメータを学習するために用いる誤差逆伝搬法を用いて、パラメータセットρr+1
(k)及び非線形関数Ψr
(k)を学習してもよい。数式16は、誤差逆伝搬法を用いてパラメータセットρr+1
(k)及び非線形関数ΨR
(k)を学習するための確定推定信号xefと送信信号xとの間の二乗誤差に基づく損失関数Lossの一例を示している。尚、数式16中の「B」は、パラメータセットρr+1
(k)及び非線形関数ΨR
(k)を学習するために用いられる送信信号xの集合(つまり、教師データの集合)を示す。
【0102】
【0103】
数式16によって算出される損失関数Lossに対して学習対象(例えば、パラメータセットρr+1
(k)及び非線形関数ΨR
(k)の少なくとも一つ)及ぼす影響は、誤差逆伝搬法によって算出可能な偏微分によって表現可能である。このため、学習装置4modは、数式17を用いて学習対象を学習してもよい。尚、数式17は、学習対象がパラメータセットρr+1
(k)である例を示している。数式17中の「ε」は、任意に設定可能なハイパーパラメータを示す。
【0104】
【0105】
本発明は、請求の範囲及び明細書全体から読み取るこのできる発明の要旨又は思想に反しない範囲で適宜変更可能であり、そのような変更を伴う信号推定装置、信号推定方法、及び、コンピュータプログラムもまた本発明の技術思想に含まれる。
【符号の説明】
【0106】
1 送信装置
11 信号処理装置
2 受信装置
21 信号処理装置
211 変換ユニット
212 信号推定ユニット
SYS 通信システム
x 送信信号
y 受信信号