(57)【要約】【課題】ＦＩＲフィルタ等のイコライザに用いられる重み係数を得るための演算処理量を削減する。【解決手段】無線通信装置は、アンテナと、無線回路と、重み係数演算回路を含む受信処理回路とを含む。重み係数演算回路は、演算回路および制御回路を含む。演算回路は、マルチパスにより対向装置と無線通信装置との間に生じた複数パスのパス相関を表す相関行列の成分と反復演算中の重み係数との複素乗算を含む演算を反復することにより、イコライザに用いられ且つ複数パスの内の所定数のパスにそれぞれ対応する各フィンガの重み係数を演算する。制御回路は、各フィンガの重み係数の演算に用いられる成分中に複素共役関係にある成分の組が含まれる場合、複素共役関係にある成分の組の第１の成分と反復演算中の第１の重み係数との複素乗算と、複素共役関係にある成分の組の第２の成分と反復演算中の第２の重み係数との複素乗算とを演算回路に纏めて演算させる。【選択図】図８
2014232960.tif 000002
【特許請求の範囲】
【請求項１】
対向装置から送信された無線信号を受信するアンテナと、
前記アンテナにより受信された前記無線信号に対して無線処理を行い、無線処理された受信データを出力する無線回路と、
前記無線回路から出力された前記受信データに対して復調処理を行い、復調処理された前記受信データを出力する受信処理回路と
を含み、
前記受信処理回路は、マルチパスに起因する受信性能の劣化を抑制する重み係数演算回路を含み、
前記重み係数演算回路は、
前記マルチパスによって前記対向装置と無線通信装置との間に生じた複数のパスにおけるパス相関を表す相関行列の成分と反復演算中の重み係数との複素乗算を含む演算を反復することによって、前記マルチパスにより生じた受信信号の歪を除去するイコライザに用いられる重み係数であって前記複数のパスの内の所定数のパスにそれぞれ対応する各フィンガの前記重み係数を演算する演算回路と、
前記各フィンガの前記重み係数の演算に用いられる成分の中に複素共役関係にある成分の組が含まれる場合に、前記複素共役関係にある成分の組の第１の成分と反復演算中の第１の重み係数との複素乗算と、前記複素共役関係にある成分の組の第２の成分と反復演算中の第２の重み係数との複素乗算とを前記演算回路に纏めて演算させる制御回路と
を含む、無線通信装置。
【請求項２】
前記相関行列は、前記受信装置の第１の受信アンテナに対応する行と前記第１の受信アンテナまたは第２の受信アンテナに対応する列とから構成される１つ以上のブロックを含み、
前記演算回路は、前記１つ以上のブロックそれぞれの一行目の成分と前記一行目の対角成分の逆数とを用いて前記各フィンガの前記重み係数を演算する、請求項１に記載の無線通信装置。
【請求項３】
送信装置と受信装置との間のマルチパスにより生じた受信信号の歪を除去するイコライザに用いられる重み係数であって前記マルチパスにより生じた複数のパスの内の所定数のパスにそれぞれ対応する各フィンガの前記重み係数を、前記複数のパスにおけるパス相関を表す相関行列の成分と反復演算中の重み係数との複素乗算を含む演算を反復することによって演算する際に、前記各フィンガの前記重み係数の演算に用いられる成分の中に複素共役関係にある成分の組が含まれる場合に、重み係数演算回路は、前記複素共役関係にある成分の組の第１の成分と反復演算中の第１の重み係数との複素乗算と、前記複素共役関係にある成分の組の第２の成分と反復演算中の第２の重み係数との複素乗算とを纏めて演算する
重み係数演算方法。
【請求項４】
前記相関行列は、前記受信装置の第１の受信アンテナに対応する行と前記第１の受信アンテナまたは第２の受信アンテナに対応する列とから構成される１つ以上のブロックを含み、
前記重み係数演算回路は、前記１つ以上のブロックそれぞれの一行目の成分と前記一行目の対角成分の逆数とを用いて前記各フィンガの前記重み係数を演算する、請求項３に記載の重み係数演算方法。
【請求項５】
送信装置と受信装置との間のマルチパスにより生じた受信信号の歪を除去するイコライザに用いられる重み係数であって前記マルチパスにより生じた複数のパスの内の所定数のパスにそれぞれ対応する各フィンガの前記重み係数を、前記複数のパスにおけるパス相関を表す相関行列の成分と反復演算中の重み係数との複素乗算を含む演算を反復することによって演算する際に、前記各フィンガの前記重み係数の演算に用いられる成分の中に複素共役関係にある成分の組が含まれる場合に、前記複素共役関係にある成分の組の第１の成分と反復演算中の第１の重み係数との複素乗算と、前記複素共役関係にある成分の組の第２の成分と反復演算中の第２の重み係数との複素乗算とを纏めて演算する
処理をコンピュータに実行させる重み係数演算プログラム。
【請求項６】
前記相関行列は、前記受信装置の第１の受信アンテナに対応する行と前記第１の受信アンテナまたは第２の受信アンテナに対応する列とから構成される１つ以上のブロックを含み、
前記１つ以上のブロックそれぞれの一行目の成分と前記一行目の対角成分の逆数とを用いて前記各フィンガの前記重み係数を演算する
処理をコンピュータに実行させる、請求項５に記載の重み係数演算プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信装置、重み係数演算方法、および重み係数演算プログラムに関する。
【背景技術】
【０００２】
近年、無線通信分野においては高速無線通信を実現するための技術が研究および開発されている。Wideband Code Division Multiple Access（Ｗ−ＣＤＭＡ）における高速データ通信技術であるHigh Speed Downlink Packet Access（ＨＳＤＰＡ）は、そうした技術の一例である。ＨＳＤＰＡでは、Adaptive Modulation and Coding scheme（ＡＭＣ）が採用され、電波伝搬状態がよいケースでは最大１４．４Ｍｂｐｓの通信速度が得られる。ＡＭＣは、送信装置としての無線基地局装置から受信装置としての端末装置までの電波伝搬状況に応じて変調方式と誤り訂正符号の符号化率が適応的に制御される技術である。このような高速無線通信を実現するためには、受信性能の劣化を抑制することが必要であり、例えば、マルチパスに起因する受信性能の劣化を抑制することが望まれる。マルチパスは、建造物や地形等の影響を受けて電波の屈折や反射が生じることにより、送信装置から送信された送信信号が複数のパス（伝送路）を伝わって、異なるタイミングの複数の信号（マルチパス信号）となって受信装置に到達する通信障害である。
【０００３】
マルチパスに起因する受信性能の劣化を抑制する技術には、Chip Correlation Minimum Mean Square Error（ＭＭＳＥ） Receiver with Multi-path Interference Correlative Timing（ＭＩＣＴ）（ＣＣＭＲＭ）がある。ＣＣＭＲＭは、マルチパスによって生じた受信信号の歪をFinite Impulse Response（ＦＩＲ）フィルタといったイコライザを用いて除去する技術の1つである。
【０００４】
ＣＣＭＲＭでは、マルチパスにより生じた複数のパスにおけるパス間の相関を利用して、干渉成分をキャンセルし且つ信号成分が大きくなるように重み係数が求められる。具体的には、重み係数は、パス間の相関を表す相関行列と各パスのチャネル推定値とを用いて以下に示すような計算方法により求められる。
【０００５】
受信ダイバーシチがオフであるケース、すなわち、受信装置が有する受信アンテナが１本であるケースについて例示的に説明すると、相関行列Ｒを構成する各成分Ｒｉｊの値は、次の式(1)により計算される。
【数１】
2014232960.tif 000003
【０００６】
ここで、ｉおよびｊは、マルチパスにより生じた複数のパスの内、所定数のパスにそれぞれ対応する各フィンガのフィンガ番号であり、例えば、０〜１４の１５個の整数である。ｖ１は、基準のチップからｉ進んだ逆拡散前のチップ単位の入力データであり、ｖ２は、基準のチップからｊ進んだ逆拡散前のチップ単位の入力データである。ｍは、加算するチップ単位のサンプル数であり、式(1)に示した一例では、２５６チップ（１スロット）である。また、式(1)に示される記号“＊”は、複素共役を示す。
【０００７】
式(1)に示すように、ｖ１×ｖ２＊の乗算がチップ単位で行われ、２５６チップ分の乗算結果が加算される。また、式(1)により得られた計算結果に対して一定区間（例えば、１０スロット）の移動平均が求められ、相関行列Ｒを構成する各成分Ｒｉｊの値が算出される。
【０００８】
重み係数Ｗｉは、次の式(2)に示すように、算出された相関行列成分Ｒｉｊの値とチャネル推定値Ｈｉとを用いてガウス−ザイデル反復法により計算される。
【数２】
2014232960.tif 000004
【０００９】
ここで、ｔは、送信装置が有する各送信アンテナの送信アンテナ番号であり、例えば０〜１の２個の整数である。Ｈ［ｔ］［ｉ］は、送信アンテナ毎のチャネル推定値Ｈｉである。Ｎは、最大フィンガ数であり、例えば１５である。ｎは、ガウス−ザイデル反復法に従った式(2)に示した演算の反復回数であり、例えばｎ＝０からｎ＝２までの３回である。ｗ［ｎ］［ｔ］［ｉ］は、反復演算されるｎ回目の重み係数ｗｉであり、送信アンテナ毎の重み係数ｗｉである。ｎ＝０、すなわち式(2)の初回の演算では、演算に用いられるｗ［ｎ］［ｔ］［ｉ］の初期値として０が設定される。また、ｎ＞０、すなわち、２回目以降の反復演算では、前回演算されたｗ［ｎ］［ｔ］［ｉ］の値が初期値として用いられる。
【００１０】
重み係数Ｗｉは、所定の反復回数の演算により得られた重み係数ｗ［ｎ］［ｔ］［ｉ］から得られる。例えば、送信アンテナが２本であり、反復回数が３回である場合、２本の送信アンテナの重み係数は、次の式(3)および式(4)によりそれぞれ得られる。
【数３】
2014232960.tif 000005
【数４】
2014232960.tif 000006
【００１１】
式(1)〜(4)により求められた重み係数Ｗｉは、ＦＩＲフィルタのタップ係数として設定される。ＦＩＲフィルタは、入力データを単位時間（1チップ）ずつ遅延させるためのｎ個（例えば、１５個）の遅延回路と、これらの遅延回路の出力データに、対応するタップ係数Ｗｉをそれぞれ乗算するｎ個の乗算器と、これらの乗算器の出力データを加算する加算回路とを含む。ＦＩＲフィルタに入力された受信データは、各遅延回路により遅延され、遅延されない受信データを含めてｎ個のデータが生成される。生成された各データには対応するタップ係数Ｗｉがそれぞれ乗算される。タップ係数Ｗｉが乗算された各データは、加算回路により加算（総和）され、加算されたデータがＦＩＲフィルタから出力される。
【００１２】
上述したようなＣＣＭＲＭに従えば、マルチパスによって生じた受信信号の歪を除去することができ、受信性能を向上させることができる。しかしながら、ＣＣＭＲＭでは、式(2)に示されるように、重み係数Ｗｉを演算する際に、複素数である相関行列成分Ｒｉｊと複素数である反復演算中の重み係数ｗｉとの複素乗算が行われる。１回の複素乗算は、４回の実数乗算と２回の加算により実現される。論理回路において、乗算処理は処理量が大きいため、乗算回数が多くなると処理時間がかかり、また消費電力が大きくなる。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】T. Hasegawa, M. Shimizu, “A chip Correlation MMSE Receiver with Multiple Interference Correlative Timing for DS-CDMA systems” Proc. IEEE Veh. Tech. Conf. (VTC 2005 spring)
【発明の概要】
【発明が解決しようとする課題】
【００１４】
発明が解決しようとする課題は、ＦＩＲフィルタ等のイコライザに用いられる重み係数を得るための演算処理量を削減することである。
【課題を解決するための手段】
【００１５】
一実施形態に従えば、無線通信装置は、対向装置から送信された無線信号を受信するアンテナと、アンテナにより受信された無線信号に対して無線処理を行い、無線処理された受信データを出力する無線回路と、無線回路から出力された受信データに対して復調処理を行い、復調処理された受信データを出力する受信処理回路とを含む。また、受信処理回路は、マルチパスに起因する受信性能の劣化を抑制する重み係数演算回路を含む。そして、重み係数演算回路は、演算回路および制御回路を含む。演算回路は、マルチパスによって対向装置と無線通信装置との間に生じた複数のパスにおけるパス相関を表す相関行列の成分と反復演算中の重み係数との複素乗算を含む演算を反復することによって、マルチパスにより生じた受信信号の歪を除去するイコライザに用いられる重み係数であって複数のパスの内の所定数のパスにそれぞれ対応する各フィンガの重み係数を演算する。制御回路は、各フィンガの重み係数の演算に用いられる成分の中に複素共役関係にある成分の組が含まれる場合に、複素共役関係にある成分の組の第１の成分と反復演算中の第１の重み係数との複素乗算と、複素共役関係にある成分の組の第２の成分と反復演算中の第２の重み係数との複素乗算とを演算回路に纏めて演算させる。
【発明の効果】
【００１６】
一実施形態に従えば、イコライザに用いられる重み係数を得るための演算処理量を削減することができる。
【図面の簡単な説明】
【００１７】
【図１】実施形態に従った重み係数演算回路が用いられ得る無線通信装置の例示的構成図である。
【図２】実施形態に従った重み係数演算回路を含み得る受信処理回路の例示的構成図である。
【図３】ＦＩＲフィルタの例示的構成図である。
【図４】第１のケースの相関行列の例図である。
【図５】簡略化された第１のケースの相関行列の例図である。
【図６Ａ】第２のケースの相関行列の例図である。
【図６Ｂ】第２のケースの相関行列の例図である。
【図７Ａ】簡略化された第２のケースの相関行列の例図である。
【図７Ｂ】簡略化された第２のケースの相関行列の例図である。
【図８】実施形態に従った重み係数演算回路の例示的構成図である。
【図９】チャネル推定値メモリの例示的構成図である。
【図１０】相関行列成分メモリの例示的構成図である。
【図１１】重み係数メモリの例示的構成図である。
【図１２】演算回路の例示的構成図である。
【図１３Ａ】実施形態に従った重み係数演算処理の例示的なフロー図である。
【図１３Ｂ】実施形態に従った重み係数演算処理の例示的なフロー図である。
【図１３Ｃ】実施形態に従った重み係数演算処理の例示的なフロー図である。
【図１４】実施形態に従った重み係数演算プログラムを実行するコンピュータの例示的構成図である。
【発明を実施するための形態】
【００１８】
以下図面を参照しながら発明を実施するための形態を説明する。
まず、実施形態に従った重み係数演算回路を説明するために、実施形態に従った重み係数演算回路が用いられ得る無線通信装置の構成例を説明する。図１は、実施形態に従った重み係数演算回路が用いられ得る無線通信装置の例示的構成図である。図１に示した無線通信装置１は、例えば、Third Generation Partnership Projectの仕様書で定義されるUser Equipmentであり、スマートフォンと称される携帯電話や、タブレット端末と称される無線通信機能付き携帯情報端末装置を含む。なお、図１は、実施形態に従った重み係数演算回路を説明するために挙げた一例であって、実施形態に従った重み係数演算回路は、その他の無線通信装置にも用いられ得る。
【００１９】
図１に示すように、無線通信装置１は、無線回路１０、ベースバンド処理回路２０、上位レイヤ回路３０、受信アンテナ４０、および送信アンテナ５０を含む。また、ベースバンド処理回路２０は、受信処理回路２１、復号器２２、符号化器２３、および送信処理回路２４を含む。なお、図１には、１本の受信アンテナ４０と１本の送信アンテナ５０が示されているが、受信アンテナ４０および送信アンテナ５０の数は、複数であってよい。
【００２０】
無線回路１０は、無線基地局装置といった対向装置から送信された無線信号を受信アンテナ４０を介して受信する。無線回路１０は、受信された無線信号に対して同期検波やアナログ／デジタル（Ａ／Ｄ）変換等の無線処理を行い、無線処理された信号を受信処理回路２１へ出力する。受信処理回路２１は、無線回路１０から出力された受信データに対する復調処理を行い、復調処理された受信データを復号器２２へ出力する。復号器２２は、受信処理回路２１から出力された受信データを復号し、復号された受信データを上位レイヤ回路３０へ出力する。
【００２１】
上位レイヤ回路３０は、復号器２２から出力された受信データに対して、所定の記憶領域に格納する等の各種処理を実行する。また、上位レイヤ回路３０は、無線基地局装置といった対向装置への送信データを生成し、生成された送信データを符号化器２３へ出力する。
【００２２】
符号化器２３は、上位レイヤ回路３０から出力された送信データを符号化し、符号化された送信データを送信処理回路２４へ出力する。送信処理回路２４は、符号化器２３により符号化された送信データに対して変調処理を行い、変調処理された送信データを無線回路１０へ出力する。無線回路１０は、送信処理回路２４から出力された送信データに対してデジタル／アナログ（Ｄ／Ａ）変換等の無線処理を行い、無線処理された送信信号を対向装置へ送信アンテナ５０を介して送信する。
【００２３】
上述したように、図１に示した無線通信装置１は、送信装置としての機能と受信装置としての機能を有するが、以下の説明では、無線基地局装置等の対向装置から送信された信号を受信する受信装置の一例として無線通信装置１を扱う。
【００２４】
実施形態に従った重み係数演算回路は、受信処理回路２１に含まれ得る。図２は、実施形態に従った重み係数演算回路を含み得る受信処理回路の例示的構成図である。なお、図２は、実施形態に従った重み係数演算回路を説明するために挙げた一例であって、実施形態に従った重み係数演算回路は、マルチパスによって生じた受信信号の歪をＣＣＭＲＭにより除去するその他の受信処理回路にも用いられ得る。
【００２５】
図２に示すように、受信処理回路２１は、セルサーチ・パスサーチ回路２１１、制御チャネル復調回路２１２、共通パイロットチャネル（Common Pilot Channel、ＣＰＩＣＨ）逆拡散回路２１３、および相関行列演算回路２１４を含む。また、受信処理回路２１は、チャネル推定回路２１５、重み係数演算回路２１６、ＦＩＲフィルタ２１７、同期チャネル（Synchronization Channel、ＳＣＨ）キャンセル回路２１８、および高速物理ダウンリンク共有チャネル（High Speed Physical Downlink Shared Channel、ＨＳ−ＰＤＳＣＨ）逆拡散回路２１９を含む。
【００２６】
図２に示すように、無線回路１０から出力された受信データは、セルサーチ・パスサーチ回路２１１、制御チャネル復調回路２１２、ＣＰＩＣＨ逆拡散回路２１３、相関行列演算回路２１４、およびＦＩＲフィルタ２１７にそれぞれ入力される。
【００２７】
セルサーチ・パスサーチ回路２１１は、入力データに多重された同期チャネルを検出することにより入力データの先頭タイミングを検出する。検出されたタイミング（パス情報）は、制御チャネル復調回路２１２、ＣＰＩＣＨ逆拡散回路２１３、相関行列演算回路２１４、およびＦＩＲフィルタ２１７に通知され、通知を受けたこれらの構成要素は、通知されたタイミングを基準にそれぞれの処理を開始する。
【００２８】
制御チャネル復調回路２１２は、セルサーチ・パスサーチ回路２１１から通知されたデータ先頭タイミングを基準に、入力データに多重された制御チャネルの復調を行う。復調された制御チャネルは、復号器２２へ出力され、復号器２２により制御情報が復号される。
【００２９】
ＣＰＩＣＨ逆拡散回路２１３は、セルサーチ・パスサーチ回路２１１から通知されたデータ先頭タイミングを基準に、入力データに多重されたＣＰＩＣＨの逆拡散を行う。逆拡散されたＣＰＩＣＨは、チャネル推定回路２１５へ出力される。
【００３０】
チャネル推定回路２１５は、ＣＰＩＣＨ逆拡散回路２１３により逆拡散されたＣＰＩＣＨを用いて無線通信装置１と対向装置との間の各パス(伝送路)のチャネル推定値Ｈｉを求める。求められたチャネル推定値Ｈｉは、重み係数演算回路２１６へ出力される。
【００３１】
相関行列演算回路２１４は、セルサーチ・パスサーチ回路２１１から通知されたデータ先頭タイミングを基準に、相関行列Ｒの各成分Ｒｉｊの値を演算する。演算された各成分Ｒｉｊの値は、重み係数演算回路２１６へ出力される。
【００３２】
重み係数演算回路２１６は、相関行列演算回路２１４により演算された相関行列成分Ｒｉｊ値およびチャネル推定回路２１５により求められたチャネル推定値Ｈｉを用いて、後述する実施形態に従った重み係数演算方法により重み係数Ｗｉの値を求める。求められた重み係数Ｗｉの値は、ＦＩＲフィルタ２１７へ出力される。
【００３３】
ＦＩＲフィルタ２１７は、マルチパスによって生じた受信信号の歪を除去するイコライザの一例である。ＦＩＲフィルタ２１７は、セルサーチ・パスサーチ回路２１１から通知されたデータ先頭タイミングを基準に、入力データに対してフィルタ処理を行う。ＦＩＲフィルタ２１７のフィルタ係数（タップ係数）には、重み係数演算回路２１６から出力された重み係数Ｗｉが用いられる。
【００３４】
図３は、ＦＩＲフィルタの例示的構成図である。図３に示すように、ＦＩＲフィルタ２１７は、ｎ個の遅延回路２１７Ａ−１〜２１７Ａ−ｎ、ｎ個の乗算器２１７Ｂ−１〜２１７Ｂ−ｎ、加算器２１７Ｃ、複素共役計算器２１７Ｄ、およびバッファ２１７Ｅを含む。遅延回路２１７Ａ−１〜２１７Ａ−ｎは、無線回路１０から出力された入力データを単位時間（1チップ）ずつ遅延させる。乗算器２１７Ｂ−１〜２１７Ｂ−ｎは、遅延回路２１７Ａ−１〜２１７Ａ−ｎからの出力データに、対応するタップ係数Ｗｉをそれぞれ乗算する。加算器２１７Ｃは、乗算器２１７Ｂ−１〜２１７Ｂ−ｎからの出力データを加算する。複素共役計算器２１７Ｄは、例えば、式(3)に示されるように、重み係数演算回路２１６から出力された反復演算結果としての重み係数ｗｉの複素共役を送信アンテナ番号ｔに応じて計算する。バッファ２１７Ｅは、重み係数演算回路２１６による重み係数Ｗｉの演算処理に伴う遅延を吸収するために、入力データのバッファイリングを行う。ＦＩＲフィルタ２１７により処理されたデータは、ＳＣＨキャンセル回路２１８へ出力される。
【００３５】
ＳＣＨキャンセル回路２１８は、ＦＩＲフィルタ２１７から出力されたデータに対して同期チャネル成分の除去処理を行う。同期チャネル成分が除去されたデータは、ＨＳ−ＰＤＳＣＨ逆拡散回路２１９へ出力される。
【００３６】
ＨＳ−ＰＤＳＣＨ逆拡散回路２１９は、同期チャネル成分が除去されたデータに対して逆拡散処理を行う。逆拡散されたデータは、復号器２２へ出力され、データチャネルの復号が復号器２２により行われる。
【００３７】
重み係数演算回路２１６により実行される実施形態に従った重み係数演算方法を説明する。以下では、受信アンテナ４０の数を１、最大フィンガ数Ｎを１５、無線通信装置１へ信号を送信する対向装置の送信アンテナ数を２、反復回数ｎを３とした第１のケースを一例としてまず説明する。
【００３８】
前述したように、重み係数Ｗｉを式(2)を用いて求める際には、複素数である相関行列Ｒの成分Ｒｉｊと複素数である反復演算中の重み係数ｗｉとの複素乗算が行われる。１回の複素乗算は、４回の実数乗算と２回の加算とにより実現される。式(2)を直接演算する場合、各重み係数Ｗｉを求めるためには、第１のケースでは１４回の複素演算が必要である。最大フィンガ数Ｎを１５とした第１のケースでは、重み係数Ｗｉの数は、１５個であるため、全ての重み係数Ｗｉを求めるためはその１５倍の乗算が必要になる。また、反復回数ｎを３とし、送信アンテナ数を２とした第１のケースでは、さらにその６倍（３×２倍）の乗算が必要となる。
【００３９】
したがって、式(2)を直接演算して重み係数Ｗｉを求める演算方法によれば、第１のケースにおいてすべての重み係数Ｗｉを演算するために必要な総実数乗算回数は、５０４０回(１４×１５×６×４回)である。論理回路において乗算処理は、処理量が大きいため、乗算回数が多いことは、処理時間および消費電力の点から好ましくない。そこで、実施形態に従った重み係数演算方法は、以下で説明するように乗算処理の回数を削減する。
【００４０】
図４は、第１のケースの相関行列の例図である。上述した第１のケースでは、図４に示すように、相関行列Ｒは、ｉ＝０〜１４の１５行とｊ＝０〜１４の１５列とから構成される行列である。前述したように、ｉおよびｊは、フィンガ番号を指す。
【００４１】
前述した式(1)から理解し得るように、図４に示した相関行列Ｒ中の主対角線を挟んだ上三角部分の成分と下三角部分の成分とは、複素共役の関係になる特徴１を有する。また、前述したように、サンプル数ｍ（例えば、２５６チップ）分のｖ１×ｖ２＊の乗算結果が加算され、さらに加算結果に対して一定区間（例えば、１０スロット）の移動平均が行われることによって、相関行列Ｒの成分Ｒｉｊの値が求められる。こうした加算および平均が行われる結果、図４に示した相関行列Ｒの主対角線と並行する斜め方向の各成分の値は、ほぼ同じになる特徴２を有する。相関行列Ｒの主対角線とは、図４に示した一例では、成分Ｒ０、０、Ｒ１、１、・・・、Ｒ１４、１４を指し、相関行列Ｒの主対角線と並行する斜め方向の各成分とは、例えば、成分Ｒ０、１、Ｒ１、２、・・・、Ｒ１３、１４を指す。
【００４２】
そこで、各成分Ｒｉｊの上記の特徴１および特徴２を相関行列Ｒに反映させると、図４に示した相関行列Ｒは、図５に示すように簡略化して表すことができる。図５は、簡略化された第１のケースの相関行列の例図である。図５に示される網掛け表示は、網掛けされていない成分と網掛け表示された成分とが主対角線を挟んで複素共役の関係にあることを表す。また、図５に示した一例では、相関行列Ｒの１行目（ｉ＝０）の成分Ｒ０、０、Ｒ０、１、・・・、Ｒ０、１４を基準として特徴２が相関行列Ｒに反映されている。なお、図５に示した一例とは異なり、相関行列Ｒの最終行（ｉ＝１４）の成分Ｒ１４、０、Ｒ１４、１、・・・、Ｒ１４、１４を基準として特徴２を相関行列Ｒに反映するように構成してもよい。
【００４３】
また、前述した式(2)から理解し得るように、重み係数Ｗｉの演算において反復演算中の重み係数ｗｉと複素乗算される成分Ｒｉｊは、図５に示した相関行列Ｒの各行の成分から対角成分Ｒｉｉを除いた成分である。例えば、重み係数Ｗ０（ｉ＝０）の演算では、１行目（ｉ＝０）の１５個の成分Ｒ０、０、Ｒ０、１、・・・Ｒ０、１４から対角成分Ｒ０、０を除いた１４個の成分である。このため、フィンガ番号が最小値０である重み係数Ｗ０およびフィンガ番号が最大値Ｎである重み係数ＷＮの演算を除いて、各重み係数Ｗｉの演算に用いられる相関行列Ｒの成分Ｒｉｊの中には、複素共役の関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組が１組以上存在するという特徴３がある。特徴３は、図５に示した相関行列Ｒの１行目（ｉ＝０）および最終行（ｉ＝１４）を除く各行に、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組が少なくとも１組含まれることから理解し得る。
【００４４】
そこで、実施形態に従った重み係数演算方法では、上記特徴１および特徴２に加えて上記特徴３を用いて、重み係数の演算に必要な乗算回数の削減を図る。具体的には、式(2)の中で、相関行列Ｒの成分Ｒｉｊと反復演算中の重み係数ｗｉとを乗算し、その乗算を加算している部分、すなわち、次の式(5)に示す部分は、各重み係数Ｗｉの演算について次の式(6)のようにそれぞれ展開される。
【数５】
2014232960.tif 000007
【数６】
2014232960.tif 000008
【００４５】
なお、説明を明確にするために、式(6)では、反復回数ｎおよび送信アンテナ番号ｔを無視している。式(6)において相関行列Ｒの成分Ｒｉｊと反復演算中の重み係数ｗｉとが乗算された各項は、複素乗算が行われる項であり、次の式(7)のように表わされる。
【数７】
2014232960.tif 000009
【００４６】
ここで、Ｒｉｊ，Ｒｅは、成分Ｒｉｊの実数成分であり、Ｒｉｊ，Ｉｍは、成分Ｒｉｊの虚数成分である。また、ｗｉ，Ｒｅは、反復演算中の重み係数ｗｉの実数成分であり、ｗｉ，Ｉｍは、反復演算中の重み係数ｗｉの虚数成分である。
【００４７】
式(6)を直接計算する場合には、それぞれの重み係数Ｗｉの演算おいて、式(7)で示されるような複素乗算を１４回実行し、その複素乗算の結果の加算を１３回実行することが必要になる。しかしながら、前述した特徴３を考慮すると、それぞれの重み係数Ｗｉの演算おいて、式(6)に含まれる複素乗算の項の内、相関行列成分Ｒｉｊの複素共役Ｒ＊ｉｊを含む項に対する演算は、次の式(8)のように相関行列成分Ｒｉｊを含む項に対する演算と纏めて処理し得る。
【数８】
2014232960.tif 000010
【００４８】
式(8)中のｗｘおよびｗｙは、式(6)に示した各重み係数Ｗｉの演算において、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊとそれぞれ乗算される反復演算中の重み係数ｗｉを表す。例えば、成分Ｒｉｊを第１の成分とし、成分Ｒ＊ｉｊを第２の成分とすると、反復演算中の重み係数ｗｘは、第１の成分Ｒｉｊと複素乗算される第１の重み係数ｗｉであり、反復演算中の重み係数ｗｙは、第２の成分Ｒ＊ｉｊと複素乗算される第２の重み係数ｗｉである。
【００４９】
式(8)を用いれば、２回の複素乗算、すなわち８回の実数乗算（式(7)の右辺に示される４回の実数乗算を２回実行）を４回の実数乗算に削減することができる。第１のケースでは、反復演算される重み係数ｗｉの各回の演算において、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組の数は、次のとおりである。すなわち、ｗ０およびｗ１４では、０個であり、ｗ１およびｗ１３では、１個であり、ｗ２およびｗ１２では、２個であり、ｗ３およびｗ１１では、３個であり、ｗ４およびｗ１０では、４個であり、ｗ５およびｗ９では、５個であり、ｗ６およびｗ８では、６個であり、ｗ７では、７個である。これらの数を合計すると、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組の数は、４９個存在する。
【００５０】
重み係数演算回路２１６は、式(8)に示されるように、相関行列成分Ｒｉｊの複素共役Ｒ＊ｉｊを含む項を相関行列成分Ｒｉｊを含む項と纏めて演算するように構成される。こうした構成によって、２回の複素乗算、すなわち、相関行列成分Ｒｉｊを含む項と相関行列成分Ｒｉｊの複素共役Ｒ＊ｉｊを含む項とに対する複素乗算につき４回の実数乗算を削減できる。
【００５１】
上述のような実施形態に従った重み係数演算方法に従えば、第１のケースにおいてすべての重み係数Ｗ０、Ｗ１、・・・、Ｗ１４を演算するために必要な総乗算回数は、３８６４回（（１４×１５×４−（４９×４））×３×２回）である。一方、式(2)或は式(5)で示される複素乗算を直接計算して重み係数Ｗｉを演算する方法では、すべての重み係数Ｗ０、Ｗ１、・・・、Ｗ１４を演算するために必要な総乗算回数は、前述したように５０４０回(１４×１５×４×３×２回)である。したがって、実施形態に従った重み係数演算方法に従えば、式(2)或は式(5)で示される複素乗算を直接計算する方法と比較して、重み係数Ｗｉの演算処理量を約２３％削減することができる。
【００５２】
したがって、実施形態に従った重み係数演算方法によれば、ＦＩＲフィルタ等のイコライザに用いられる重み係数を得るための演算処理量を削減することができ、ひいては演算処理を行う回路や装置の処理時間の短縮や消費電力の削減を実現できる。
【００５３】
なお、前述した第１のケースは、実施形態に従った重み係数演算方法を説明するために示した一例にすぎず、実施形態に従った重み係数演算方法は、その他のケースにおいても適用し得る。例えば、第１のケースでは、受信ダイバーシチをオフ、すなわち受信アンテナ４０の数を１本と仮定したが、受信ダイバーシチをオン、すなわち受信アンテナ４０の数を複数本としてもよい。例えば、受信アンテナ４０の数を２、最大フィンガ数Ｎを３０、無線通信装置１へ信号を送信する対向装置の送信アンテナ数を２、反復回数ｎを３とした第２のケースについても、実施形態に従った重み係数演算方法は、上述した第１のケースと同様に説明し得る。
【００５４】
第２のケースにおいて式(2)を直接演算する場合、各重み係数Ｗｉを求めるためには、２９回の複素演算が必要である。最大フィンガ数Ｎを３０とした第２のケースでは、重み係数Ｗｉの数は、３０個であるため、全ての重み係数Ｗｉを求めるにはその３０倍の乗算が必要になる。また、反復回数ｎを３とし、送信アンテナ数を２とした第２のケースでは、さらにその６倍（３×２倍）の乗算が必要となる。したがって、式(2)を直接演算して重み係数Ｗｉを求める方法によれば、第２のケースにおいてすべての重み係数Ｗｉを演算するために必要な総実数乗算回数は、２０８８０回(２９×３０×４×６回)である。
【００５５】
一方、実施形態に従った重み係数演算方法では、第２のケースにおいても以下に説明するように演算処理量が削減される。
【００５６】
第２のケースでは、相関行列Ｒは、図６Ａおよび図６Ｂのように表すことができる。図６Ａおよび図６Ｂは、第２のケースの相関行列の例図である。図６Ａおよび図６Ｂに示すように、第２のケースの相関行列Ｒは、３０行（ｉ＝０〜２９）および３０列（ｊ＝０〜２９）の行列である。また、相関行列Ｒは、２本の受信アンテナ４０の内の個別の受信アンテナにそれぞれ対応する行および列から構成される。すなわち、相関行列Ｒの行は、受信アンテナ番号ｒ＝０の受信アンテナ４０に対応する行（ｉ＝０〜１４）と受信アンテナ番号ｒ＝１の受信アンテナ４０に対応する行（ｉ＝１５〜２９）とから構成される。また、相関行列の列は、受信アンテナ番号ｒ＝０の受信アンテナ４０に対応する列（ｊ＝０〜１４）と受信アンテナ番号ｒ＝１の受信アンテナ４０に対応する列（ｊ＝１５〜２９）とから構成される。したがって、第２のケースでは、図６に示した相関行列Ｒは、ある特定の受信アンテナ４０に対応する行と、同じまたは別の特定の受信アンテナ４０に対応する列とから構成される４つのブロックに区分けできる。
【００５７】
図６Ａおよび図６Ｂに示した相関行列Ｒの成分Ｒｉｊは、図５を参照しながら前述した第１のケースと同様に、特徴１および２に基づき簡略化できる。図７Ａおよび図７Ｂは、簡略化された第２のケースの相関行列の例図である。
【００５８】
図７Ａおよび図７Ｂに示すように、前述した特徴１および特徴２は、相関行列Ｒ中の各ブロックに反映される。すなわち、第２のケースでは、相関行列Ｒの各ブロックは、当該のブロックの主対角線を挟んだ上三角部分の成分と下三角部分の成分とが複素共役の関係になる特徴１を有する。図７Ａおよび図７Ｂに示される各ブロック中の網掛け表示は、網掛けされていない成分と網掛け表示された成分とが主対角線を挟んで複素共役の関係にあることを表す。また、相関行列Ｒの各ブロックは、当該ブロックの相関行列Ｒの主対角線と並行する斜め方向の各成分の値がほぼ同じになる特徴２を有する。
【００５９】
さらに、図７Ａおよび図７Ｂから理解し得るように、相関行列Ｒの各ブロックは、特徴３を有する。すなわち、フィンガ番号が最小値である重み係数Ｗｉおよびフィンガ番号が最大値である重み係数Ｗiの演算を除いて、各重み係数Ｗｉの演算に用いられる相関行列Ｒの成分Ｒｉｊの中には、複素共役の関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組が１組以上存在するという特徴３が存在する。図７Ａおよび図７Ｂから理解し得るように、第２のケースでは、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組の数は、次のとおりである。すなわち、ｗ０、ｗ１４、ｗ１５、およびｗ２９では、０個であり、ｗ１、ｗ１３、ｗ１６、およびｗ２８では、１個であり、ｗ２、ｗ１２、ｗ１７、およびｗ２７では、２個であり、ｗ３、ｗ１１、ｗ１８、およびｗ２６では、３個である。また、ｗ４、ｗ１０、ｗ１９、およびｗ２５では、４個であり、ｗ５、ｗ９、ｗ２０、およびｗ２４では、５個であり、ｗ６、ｗ８、ｗ２１、およびｗ２３では、６個であり、ｗ７およびｗ２２では、７個である。これらの数を合計すると、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組の数は、９８個存在する。
【００６０】
重み係数演算回路２１６は、式(8)に示されるように、相関行列成分Ｒｉｊの複素共役Ｒ＊ｉｊを含む項を相関行列成分Ｒｉｊを含む項と纏めて演算するように構成される。こうした構成によって、２回の複素乗算、すなわち、相関行列成分Ｒｉｊを含む項と相関行列成分Ｒｉｊの複素共役Ｒ＊ｉｊを含む項とに対する複素乗算につき４回の実数乗算を削減できる。
【００６１】
上述のような実施形態に従った重み係数演算方法に従えば、第２のケースにおいてすべての重み係数Ｗ０、Ｗ１、・・・、Ｗ２９を演算するために必要な総乗算回数は、１８５２８回（（２９×３０×４−（９８×４））×３×２回）である。一方、式(2)或は式(5)で示される複素乗算を直接計算して重み係数Ｗiを演算する方法では、すべての重み係数Ｗ０、Ｗ１、・・・、Ｗ２９を演算するために必要な総乗算回数は、前述したように２０８８０回である。したがって、実施形態に従った重み係数演算方法に従えば、式(2)或は式(5)で示される複素乗算を直接計算する方法と比較して、重み係数Ｗiの演算処理量を約１１％削減することができる。
【００６２】
実施形態に従った重み係数演算方法を実行する重み係数演算回路２１６の構成例を説明する。以下では、重み係数演算回路２１６の一例として、対向装置（送信装置）が有する送信アンテナの数および無線通信装置１が有する受信アンテナ４０の数をそれぞれ１本とし、最大フィンガ数Ｎを１５とし、反復回数ｎを任意の所定数とした第３のケースについて説明する。なお、第３のケースは、実施形態に従った重み係数演算回路２１６の構成を説明するための一例にすぎず、その他のケースにおける重み係数演算回路２１６も同様の形式で構成し得る。
【００６３】
図８は、実施形態に従った重み係数演算回路の例示的構成図である。図８に示すように、重み係数演算回路２１６は、チャネル推定値メモリ６１、相関行列成分メモリ６２、重み係数メモリ６３、演算回路６４、および制御回路６５を含む。
【００６４】
チャネル推定値メモリ６１は、式(2)に示される重み係数Ｗｉの演算に用いられるチャネル推定値Ｈｉを格納するメモリである。図９は、チャネル推定値メモリの例示的構成図である。図９に示すように、第３のケースでは、最大フィンガ数Ｎが１５であるため、Ｈ［０］〜Ｈ［１４］の１５個のチャネル推定値Ｈｉがチャネル推定値メモリ６１に格納される。各チャネル推定値Ｈｉの実数成分（ＩＱ変調信号における同相成分Ｉ）および虚数成分（ＩＱ変調信号における直交位相成分Ｑ）は、１つのアドレスに連結されて格納される。
【００６５】
チャネル推定値メモリ６１に格納されるチャネル推定値Ｈｉは、チャネル推定回路２１５により計算される。図８および図９に示すように、チャネル推定回路２１５により計算されたチャネル推定値Ｈｉは、制御回路６５から出力されたアドレスおよびライトイネーブル信号に従ってチャネル推定値メモリ６１に格納される。また、図８および図９に示すように、重み係数Ｗｉの当該演算に必要なチャネル推定値Ｈｉのアドレスは、制御回路６５より指定される。そして、指定されたアドレスに対応するチャネル推定値Ｈｉがリードデータとしてチャネル推定値メモリ６１から演算回路６４へ出力される。
【００６６】
相関行列成分メモリ６２は、式(2)に示される重み係数Ｗｉの演算に用いられる相関行列Ｒの成分Ｒｉｊの値を格納するメモリである。図１０は、相関行列成分メモリの例示的構成図である。図５および図７を参照しながら前述したように、実施形態に従った重み係数演算方法に従えば、重み係数Ｗｉの演算時に必要な相関行列成分Ｒｉｊの値は、例えば、相関行列Ｒの１行目の成分の値（第１のケース）或は相関行列Ｒの各ブロックの１行目の成分（第２のケース）の値である。相関行列Ｒのその他の成分Ｒｉｊは、１行目の成分と複素共役の関係（特徴１）にあるか、同じ値とみなし得る関係（特徴２）にある。このため、相関行列Ｒの１行目の成分の値（第１のケース）或は相関行列Ｒの各ブロックの１行目の成分（第２のケース）の値からその他の成分の値は得られる。また、式(2)に示されるように、相関行列Ｒの対角成分の逆数（第１のケース）または相関行列の各ブロックの対角成分の逆数（第２のケース）が重み係数Ｗｉの演算に用いられる。
【００６７】
したがって、第３のケースでは、相関行列成分メモリ６２に格納される相関行列Ｒの成分Ｒｉｊは、図１０に示すように、相関行列Ｒの１行目の成分Ｒ０，０、・・・、Ｒ０，１４と、1行目の対角成分Ｒ０，０の逆数との１６個であれば足りる。なお、重み係数演算回路２１６の構成形式によっては、相関行列Ｒの最終行の成分Ｒ１４，０、・・・、Ｒ１４，１４と最終行の対角成分Ｒ１４，１４の逆数との１６個が相関行列成分メモリ６２に格納されるように構成してもよい。
【００６８】
相関行列成分メモリ６２に格納される相関行列成分Ｒｉｊの値は、相関行列演算回路２１４により計算される。また、対角成分の逆数１／Ｒ０，０の値は、相関行列演算回路２１４により計算される。図８および図１０に示すように、相関行列演算回路２１４により計算されたこれらの値は、制御回路６５から出力されたアドレスおよびライトイネーブル信号に従って相関行列成分メモリ６２に格納される。図１０に示すように、相関行列成分Ｒｉｊの実数成分（同相成分Ｉ）および虚数成分（直交位相成分Ｑ）は、１つのアドレスに連結されて格納される。また、対角成分の逆数１／Ｒ０，０は、実数値であるため、実数成分（同相成分Ｉ）の値のみが最下位アドレスに対応して格納される。図８および図１０に示すように、重み係数Ｗｉの当該演算に必要な相関行列Ｒの成分Ｒｉｊおよび対角成分の逆数１／Ｒ０，０のそれぞれのアドレスは、制御回路６５より指定される。そして、指定されたアドレスに対応する相関行列Ｒの成分Ｒｉｊの値または対角成分の逆数１／Ｒ０，０の値がリードデータとして相関行列成分メモリ６２から演算回路６４へ出力される。
【００６９】
重み係数メモリ６３は、式(2)で示される反復演算中の重み係数ｗｉの値および最終的な演算結果である重み係数ｗｉの値を格納するメモリである。図１１は、重み係数メモリの例示的構成図である。第３のケースでは、ｗ０〜ｗ１４までの１５個の重み係数ｗｉの実数成分（同相成分Ｉ）および虚数成分（直交位相成分Ｑ）がそれぞれのアドレスと対応付けられて重み係数メモリ６３に格納される。重み係数メモリ６３の初期値には、０（ゼロ）或いは任意の値が設定され得る。
【００７０】
また、図１１に示すように、実施形態に従った重み係数演算方法を実行するために、重み係数メモリ６３は、２ポートで構成される。図８および図１１に示した一例では、ポートＡからは、制御回路６５から出力されたアドレスＡに対応する重み係数ｗｉの値がリードデータＡとして読み出される。また、ポートＢからは、制御回路６５から出力されたアドレスＢに対応する重み係数ｗｉの値がリードデータＢとして読み出される。ただし、重み係数メモリ６３の書き込み側のポートは、１ポートのみ使用される。図８および図１１に示した一例では、制御回路６５から出力されたアドレスＡおよびライトイネーブル信号Ａに従って、演算回路６４から出力されたライトデータＡとしての重み係数ｗｉの値が重み係数メモリ６３に書き込まれる。
【００７１】
重み係数Ｗｉの当該演算に必要な重み係数ｗｉのアドレスは、制御回路６５より指定され、指定されたアドレスに対応する重み係数ｗｉの値が重み係数メモリ６３から演算回路６４へ出力される。実施形態に従った重み係数演算方法では、式(8)に示されるように、複素共役関係にある相関行列成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組に対する複素乗算が纏めて実行される。そこで、重み係数Ｗｉの演算中に式(8)に示される演算が実行される場合には、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊとそれぞれ乗算される重み係数ｗｉが演算回路６４へ同時に読み出されるように重み係数メモリ６３が構成される。すなわち、重み係数ｗｉの演算中に式(8)に示される演算が実行される場合には、読み出し対象とされる２つ重み係数ｗｉのそれぞれのアドレスが制御回路６５により指定される。そして、指定されたそれぞれのアドレスに対応する２つ重み係数ｗｉの値が重み係数メモリ６３から演算回路６４へ出力される。一方、重み係数Ｗｉの演算中に式(8)に示される演算が実行されない場合には、成分Ｒｉｊと複素乗算される１つの重み係数ｗｉのアドレスが制御回路６５より指定される。そして、指定されたアドレスに対応する重み係数ｗｉの値が重み係数メモリ６３から演算回路６４へ出力される。
【００７２】
重み係数メモリ６３には、演算回路６４による重み係数Ｗｉの反復演算中の演算結果が上書きされる。所定回数の反復演算が演算回路６４により行われた後、重み係数ｗｉの最終的な演算結果は、ＦＩＲフィルタ２１７へ出力される。前述したように、出力された重み係数ｗｉに対する式(3)に示されるような複素共役の演算は、ＦＩＲフィルタ２１７により行われ得る。
【００７３】
演算回路６４は、式(2)で示される重み係数ｗｉの演算を行う回路である。図１２は、演算回路の例示的構成図である。図８および図１２に示すように、演算回路６４には、チャネル推定値メモリ６１から出力されたチャネル推定値Ｈｉの値が入力される。演算回路６４には、相関行列成分メモリ６２から出力された相関行列Ｒの１行目の成分Ｒｉｊの値と１行目の対角成分の逆数１／Ｒ０，０の値が入力される。演算回路６４には、重み係数メモリ６３から出力された重み係数ｗｉの値が入力される。
【００７４】
複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組に対する複素乗算を纏めて行う式(8)の演算処理が行われる場合には、重み係数メモリ６３の２つのポート（ポートＡおよびポートＢ）から各項に対応する重み係数ｗｉの値が出力され、演算回路６４に入力される。演算回路６４において、２つのポートからそれぞれ出力された重み係数ｗｉの値は、実数成分および虚数成分に分けてそれぞれ加算される。また、一方のポート（ポートＢ）から出力された重み係数ｗｉの値は、符号反転され、符号反転された重み係数ｗｉの値と他方のポート（ポートＡ）から出力された重み係数ｗｉの値とは、実数成分および虚数成分に分けてそれぞれ加算される。これらの加算処理を経た各値は、演算回路６４の複素乗算部６４Ａに入力される。
【００７５】
一方、式(8)に示される複素乗算が行われない場合、すなわち式(7)で示される１つの項の複素乗算が行われる場合には、重み係数メモリ６３の１つのポート（ポートＡ）からのみ重み係数ｗｉの値が出力される。１つのポート（ポートＡ）から出力された重み係数ｗｉの実数成分および虚数成分の各値は、複素乗算部６４Ａに入力される。
【００７６】
式(8)に示される複素乗算が行われる場合、制御回路６５から出力されたセレクト信号“１”が複素乗算部６４Ａのセレクタに入力される。セレクト信号“１”は、式(8)で示される複素乗算の実行を指示する信号の一例である。複素乗算部６４Ａのセレクタは、重み係数メモリ６３の２つのポートから出力された重み係数ｗｉの値に対して上述した加算処理が行われた重み係数ｗｉの値を選択する。
【００７７】
一方、式(7)で示される複素乗算が行われる場合には、制御回路６５から出力されたセレクト信号“０”が複素乗算部６４Ａのセレクタに入力される。セレクト信号“０”は、式(7)で示される複素乗算の実行を指示する信号の一例である。複素乗算部６４Ａのセレクタは、重み係数メモリ６３の１つのポート（ポートＡ）から出力された重み係数ｗｉの値を選択する。
【００７８】
複素乗算部６４Ａの乗算器には、相関行列成分メモリ６２から出力された相関行列成分Ｒｉｊの値が入力される。また、複素乗算部６４Ａの乗算器には、セレクタにより選択された重み係数ｗｉの値が入力される。複素乗算部６４Ａの乗算器は、入力された成分Ｒｉｊの値と重み係数ｗｉの値とを乗算する。この乗算処理により、式(8)の左辺で示される４つの乗算および式(7)の左辺に示される４つの乗算が行われる。
【００７９】
図１２に示すように、成分Ｒｉｊの虚数成分と重み係数ｗｉの虚数成分との乗算結果は、符号反転器により符号反転される。符号反転された乗算結果を含め、乗算器により乗算された４つの値は、実数成分および虚数成分に分けて加算器により加算される。加算器による加算結果は、複素乗算部６４Ａから出力される複素乗算結果として演算回路６４の積算部６４Ｂへ実数成分および虚数成分に分けて出力される。
【００８０】
積算部６４Ｂには、反復計算される式(2)の計算の各回の初めに、制御回路６５から出力された積算クリア信号が入力され、積算部６４Ｂに記録された積算値が０（ゼロ）に初期化される。積算部６４Ｂは、複素乗算部６４Ａから出力された複素乗算結果を積算し、式(2)の左辺中の式(6)で示される箇所を計算する。
【００８１】
積算部６４Ｂにより計算された積算結果は、符合反転器により符号反転され、符号反転された積算結果とチャネル推定値メモリ６１から出力されたチャネル推定値Ｈｉとが加算器により加算される。加算器による加算結果は、相関行列成分メモリ６２から出力された対角成分の逆数１／Ｒ０，０の値と乗算され、式(7)で示される重み係数ｗｉの値が求められる。求められた重み係数ｗｉの値は、演算回路６４の出力値として出力される。
【００８２】
制御回路６５は、実施形態に従った重み係数の演算処理全体を制御する。
制御回路６５は、アドレスおよびライトイネーブル信号をチャネル推定値メモリ６１へ出力する。すなわち、チャネル推定回路２１５から演算されたチャネル推定値Ｈｉが出力された場合、制御回路６５は、出力されたチャネル推定値Ｈｉの書き込み対象のアドレスとライトイネーブル信号とをチャネル推定値メモリ６１へ出力する。チャネル推定値メモリ６１は、制御回路６５から出力されたライトイネーブル信号に従って、チャネル推定回路２１５から出力されたチャネル推定値Ｈｉを制御回路６５から出力されたアドレスと対応付けて格納する。一方、重み係数Ｗｉの演算が行われる場合、制御回路６５は、重み係数Ｗｉの当該演算に用いられるチャネル推定値Ｈｉに対応するアドレスをチャネル推定値メモリ６１へ出力する。チャネル推定値メモリ６１は、制御回路６５から出力されたアドレスに対応するチャネル推定値Ｈｉをリードデータとして演算回路６４へ出力する。
【００８３】
制御回路６５は、アドレスおよびライトイネーブル信号を相関行列成分メモリ６２へ出力する。すなわち、相関行列Ｒの１行目の成分Ｒｉｊの値および１行目の対角成分の逆数１／Ｒ０、０の値が相関行列演算回路２１４により演算され、演算されたこれらの値が相関行列演算回路２１４から出力された場合、制御回路６５は、出力されたこれらの値の書き込み対象のアドレスとライトイネーブル信号とを相関行列成分メモリ６２へ出力する。相関行列成分メモリ６２は、制御回路６５から出力されたライトイネーブル信号に従って、相関行列演算回路２１４から出力された値を制御回路６５から出力されたそれぞれのアドレスに対応付けて格納する。一方、重み係数Ｗｉの演算が行われる場合、制御回路６５は、重み係数Ｗｉの当該演算に用いられる相関行列Ｒの成分Ｒｉｊの値および対角成分の逆数１／Ｒ０、０の値に対応するそれぞれのアドレスを相関行列成分メモリ６２へ出力する。相関行列成分メモリ６２は、制御回路６５から出力されたアドレスにそれぞれ対応する相関行列成分Ｒｉｊの値および対角成分の逆数１／Ｒ０、０の値をリードデータとして演算回路６４へ出力する。
【００８４】
制御回路６５は、アドレスおよびライトイネーブル信号を重み係数メモリ６３へ出力する。重み係数メモリ６３には、前述したように２つのポートがあるが、図８に示した重み係数演算回路２１６の一例では、ライト側は１ポートのみ使用される。すなわち、制御回路６５から出力され得るアドレスは、ポートＡおよびポートＢの２ポートであり、制御回路６５から出力されるライトイネーブル信号は、ポートＡの１ポートである。式(8)に示すように２つの複素乗算が纏めて行われる場合には、制御回路６５は、複素乗算される２つ重み係数ｗｉに対応するアドレスを重み係数メモリ６３の２ポートにそれぞれ出力する。出力されたアドレスに対応する２つ重み係数ｗｉの値は、重み係数メモリ６３の２ポートからリードデータとして演算回路６４へそれぞれ出力される。それ以外の場合には、制御回路６５は、１ポート分のアドレスを重み係数メモリ６３へ出力する。式(2)で示される反復演算中の１回の重み係数ｗｉの演算が完了すると、制御回路６５は、演算結果が格納されるアドレスとライトイネーブル信号とを重み係数メモリ６３へ出力する。重み係数メモリ６３は、制御回路６５から出力されたライトイネーブル信号に従って、制御回路６５から出力されたアドレスに演算結果を格納する。
【００８５】
制御回路６５は、セレクト信号を複素乗算部６４Ａへ出力し、積算クリア信号を積算部６４Ｂへ出力する。式(8)で示されるように２つの複素乗算が纏めて行われる場合、制御回路６５は、複素乗算部６４Ａのセレクト信号を例えば“１”に設定する。式(7)で示されるように１つの複素乗算が行われる場合、制御回路６５は、セレクト信号を例えば“０”に設定する。制御回路６５は、重み係数ｗｉの反復演算の各回の初めに積算クリア信号を出力し、積算部６４Ｂに記録された積算値を０に初期化する。
【００８６】
重み係数演算回路２１６により実行される実施形態に従った重み係数演算処理フローの一例を説明する。図１３Ａ〜図１３Ｃは、実施形態に従った重み係数演算処理の例示的なフロー図である。図１３Ａ〜図１３Ｃには、前述した第１のケースのように受信アンテナ４０の数を１本としたケースの重み係数演算処理フローが一例として示されている。
【００８７】
図１３Ａに示すように、ステップＳ１００１において実施形態に従った重み係数演算処理が開始されると、ステップＳ１００２〜ステップＳ１００４において、重み係数Ｗｉの演算に用いられるチャネル推定値Ｈｉの取得処理が実行される。また、ステップＳ１００５〜Ｓ１００７において、重み係数Ｗｉの演算に用いられる相関行列成分Ｒｉｊの値および対角成分１／Ｒ０，０の値の取得処理が実行される。
【００８８】
具体的には、ステップＳ１００２において、制御回路６５は、チャネル推定回路２１５によりチャネル推定値Ｈｉが新たに演算されることによってチャネル推定値Ｈｉが更新されたか否かを判定する。
【００８９】
チャネル推定値Ｈｉが更新されていない場合（ステップＳ１００２で“ＮＯ”）、重み係数演算処理は、ステップＳ１００５へ進められる。
【００９０】
一方、チャネル推定値Ｈｉが更新された場合（ステップＳ１００２で“ＹＥＳ”）、重み係数演算処理は、ステップＳ１００３へ進められる。ステップＳ１００３において、制御回路６５は、更新されたチャネル推定値Ｈｉをチャネル推定値メモリ６１へ取り込むために、取り込み先のライトアドレスとライトイネーブル信号とを生成する。そして、制御回路６５は、生成されたライトアドレスおよびライトイネーブル信号をチャネル推定値メモリ６１へ送信する。チャネル推定値メモリ６１は、制御回路６５から送信されたライトアドレスおよびライトイネーブル信号に従って、チャネル推定回路２１５から送信されたチャネル推定値Ｈｉを取り込む。
【００９１】
ステップＳ１００４において、制御回路６５は、更新されたすべてのチャネル推定値Ｈｉがチャネル推定値メモリ６１に取り込まれたか否かを判定する。更新されたすべてのチャネル推定値Ｈｉがチャネル推定値メモリ６１に取り込まれていない場合（ステップＳ１００４で“ＮＯ”）、重み係数演算処理は、上述したステップＳ１００３に戻される。一方、更新されたすべてのチャネル推定値Ｈｉがチャネル推定値メモリ６１に取り込まれた場合（ステップＳ１００４で“ＹＥＳ”）、重み係数演算処理は、ステップＳ１００５に進められる。
【００９２】
ステップＳ１００５において、制御回路６５は、相関行列演算回路２１４により相関行列成分Ｒｉｊの値および対角成分の逆数１／Ｒ０，０の値が新たに演算されることによって相関行列成分の値が更新されたか否かを判定する。
【００９３】
相関行列成分の値Ｒｉｊおよび対角成分の逆数１／Ｒ０，０の値が更新されていない場合（ステップＳ１００５で“ＮＯ”）、重み係数演算処理は、ステップＳ１００８へ進められる。
【００９４】
一方、相関行列成分の値Ｒｉｊおよび対角成分の逆数１／Ｒ０，０の値が更新された場合（ステップＳ１００５で“ＹＥＳ”）、重み係数演算処理は、ステップＳ１００６へ進められる。ステップＳ１００６において、制御回路６５は、更新された相関行列成分Ｒｉｊの値および対角成分の逆数１／Ｒ０，０の値を相関行列成分メモリ６２へ取り込むために、取り込み先のライトアドレスとライトイネーブル信号とを生成する。そして、制御回路６５は、生成されたライトアドレスおよびライトイネーブル信号を相関行列成分メモリ６２へ送信する。相関行列成分メモリ６２は、制御回路６５より送信されたライトアドレスおよびライトイネーブル信号に従って、相関行列演算回路２１４から送信された相関行列成分の値Ｒｉｊおよび対角成分の逆数１／Ｒ０，０の値を取り込む。
【００９５】
ステップＳ１００７において、制御回路６５は、更新されたすべての相関行列成分の値Ｒｉｊおよび対角成分の逆数１／Ｒ０，０の値が相関行列成分メモリ６２に取り込まれたか否かを判定する。更新されたすべての値が相関行列成分メモリ６２に取り込まれていない場合（ステップＳ１００７で“ＮＯ”）、重み係数演算処理は、上述したステップＳ１００６に戻される。一方、更新されたすべての値が相関行列成分メモリ６２に取り込まれた場合（ステップＳ１００７で“ＹＥＳ”）、重み係数演算処理は、ステップＳ１００８に進められる。
【００９６】
図１３Ｂに示すように、ステップＳ１００８〜Ｓ１０１１では、重み係数演算処理に用いられる各種パラメータの初期値が設定される。具体的には、ステップＳ１００８では、制御回路６５は、式(2)で示される重み係数ｗｉの反復演算における反復回数ｎの初期値として０を設定する。ステップＳ１００９では、制御回路６５は、式(2)で示される重み係数ｗｉの反復演算における送信アンテナ番号ｔの初期値として０を設定する。ステップＳ１０１０およびステップＳ１０１１では、制御回路６５は、式(2)で示される重み係数ｗｉの反復演算におけるフィンガ番号ｉおよびｊの初期値として０をそれぞれ設定する。各種パラメータの初期値が設定されると、重み係数演算処理は、ステップＳ１０１２へ進められる。
【００９７】
ステップＳ１０１２において、制御回路６５は、当該重み係数Ｗｉの演算に用いられる相関行列成分Ｒｉｊの中に、複素共役の関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組があるか否かを判定する。
【００９８】
複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組がない場合（ステップＳ１０１２で“ＮＯ”）、ステップＳ１０１３〜ステップＳ１０１７において、式(7)に示されるように、相関行列成分Ｒｉｊと重み係数ｗｉとの複素乗算が個別に実行される。一方、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組がある場合（ステップＳ１０１２で“ＹＥＳ”）、ステップＳ１０１８〜ステップＳ１０２３において、式(8)に示されるように、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む項の組に対する複素乗算が纏めて実行される。
【００９９】
具体的には、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組がない場合（ステップＳ１０１２で“ＮＯ”）、ステップＳ１０１３において、制御回路６５は、フィンガ番号ｊの値がフィンガ番号ｉの値と等しいか否かを判定する。フィンガ番号ｊの値がフィンガ番号ｉの値と等しい場合（ステップＳ１０１３で“ＹＥＳ”）、式(2)中の式(5）で示される演算を実行する必要がない。そこで制御回路６５は、フィンガ番号ｊの値を１つインクリメントして（ステップＳ１０１４）、重み係数演算処理をステップＳ１０１２の処理に戻す。一方、フィンガ番号ｊの値がフィンガ番号ｉの値と等しくない場合（ステップＳ１０１３で“ＮＯ”）、重み係数演算処理は、ステップＳ１０１５へ進められる。
【０１００】
ステップＳ１０１５において、制御回路６５は、式(7)で示される複素乗算の対象となる相関行列成分Ｒｉｊの値を相関行列成分メモリ６２に演算回路６４へ出力させるために、複素乗算の対象となる相関行列成分Ｒｉｊに対応するリードアドレスを生成する。そして、制御回路６５は、生成されたリードアドレスを相関行列成分メモリ６２へ出力する。相関行列成分メモリ６２は、制御回路６５から出力されたリードアドレスに対応する相関行列成分Ｒｉｊ（Ｒ［ｉ］［ｊ］）の値を演算回路６４へ出力する。
【０１０１】
また、ステップＳ１０１６において、制御回路６５は、式(7)で示される複素乗算の対象となる重み係数ｗｉの値を重み係数メモリ６３に演算回路６４へ出力させるために、複素乗算の対象となる重み係数ｗｉに対応するリードアドレスＡを生成する。そして、制御回路６５は、生成されたリードアドレスＡを重み係数メモリ６３へ出力する。重み係数メモリ６３は、制御回路６５から出力されたリードアドレスＡに対応する重み係数ｗｉ（ｗ［ｎ］［ｉ］）の値を演算回路６４へ出力する。
【０１０２】
ステップＳ１０１７において、演算回路６４は、相関行列成分メモリ６２から出力された相関行列成分Ｒｉｊ（Ｒ［ｉ］［ｊ］）の値と重み係数メモリ６３から出力された重み係数ｗｉ（ｗ［ｎ］［ｉ］）の値の複素乗算を式(7)に示されるように実行する。
【０１０３】
一方、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊの組がある場合（ステップＳ１０１２で“ＹＥＳ”）、ステップＳ１０１８において、制御回路６５は、フィンガ番号ｊの値がフィンガ番号ｉの値よりも小さいか否かを判定する。ステップＳ１０１８での判定は、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊをそれぞれ含む当該項の組に対して式(8)で示される複素乗算が重複して実行されることを回避するために行われる。
【０１０４】
ステップＳ１０１８に示した一例では、フィンガ番号ｊの値がフィンガ番号ｉの値よりも小さい場合（ステップＳ１０１８で“ＹＥＳ”）、式(8)で示される複素乗算が行われない。すなわち、この場合、フィンガ番号ｊの値が１つインクリメントされて（ステップＳ１０１９）、重み係数演算処理は、ステップＳ１０１２に戻される。一方、フィンガ番号ｊの値がフィンガ番号ｉの値以上である場合（ステップＳ１０１８で“ＮＯ”）、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊを含む当該項の組に対して式(8)で示される複素乗算が行われる。すなわち、この場合、重み係数演算処理は、ステップＳ１０２０へ進められる。
【０１０５】
ステップＳ１０２０において、制御回路６５は、式(8)で示される複素乗算の対象となる複素共役関係にある一方の成分Ｒｉｊの値を相関行列成分メモリ６２に演算回路６４へ出力させるために、対象となる成分Ｒｉｊに対応するリードアドレスを生成する。そして、制御回路６５は、生成されたリードアドレスを相関行列成分メモリ６２へ出力する。相関行列成分メモリ６２は、制御回路６５から出力されたリードアドレスに対応する相関行列成分Ｒｉｊ（Ｒ［ｉ］［ｊ］）の値を演算回路６４へ出力する。
【０１０６】
また、ステップＳ１０２１およびステップＳ２０２２において、制御回路６５は、複素共役関係にある成分Ｒｉｊおよび成分Ｒ＊ｉｊとそれぞれ乗算される重み係数ｗｉの値を重み係数メモリ６３に演算回路６４へ出力させる。
【０１０７】
具体的には、ステップＳ１０２１において、制御回路６５は、複素共役関係にある一方の成分Ｒｉｊと複素乗算される重み係数ｗｉに対応するリードアドレスＡを生成する。そして、制御回路６５は、生成されたリードアドレスＡを重み係数メモリ６３へ出力する。重み係数メモリ６３は、制御回路６５から出力されたリードアドレスＡに対応する重み係数ｗｉ（ｗ［ｎ」［ｉ］）の値を演算回路６４へ出力する。また、ステップＳ１０２２において、制御回路６５は、複素共役関係にある他方の成分Ｒ＊ｉｊと複素乗算される重み係数ｗｉに対応するリードアドレスＢを生成する。そして、制御回路６５は、生成されたリードアドレスＢを重み係数メモリ６３へ出力する。重み係数メモリ６３は、制御回路６５から出力されたリードアドレスＢに対応する重み係数ｗｉ（ｗ［ｎ］［２ｉ−ｊ］）の値を演算回路６４へ出力する。
【０１０８】
ステップＳ１０１４において、演算回路６４は、相関行列成分メモリ６２から出力された複素共役関係にある一方の成分Ｒｉｊ（Ｒ［ｉ］［ｊ］）の値と重み係数メモリ６３から出力された２つの重み係数ｗｉ（ｗ［ｎ」［ｉ］、ｗ［ｎ］［２ｉ−ｊ］）の値を用いて、式(8)に示される２つの複素乗算を纏めて実行する。
【０１０９】
ステップＳ１０１３〜ステップＳ１０１７での複素乗算処理またはステップＳ１０１８〜ステップＳ１０２３での乗算処理が実行されると、ステップＳ１０２４において、制御回路６５は、フィンガ番号ｊの値が最大フィンガ数Ｎよりも小さいか否かを判定する。
【０１１０】
フィンガ番号ｊの値が最大フィンガ数Ｎよりも小さい場合（ステップＳ１０２４で“ＹＥＳ”）、重み係数演算処理は、ステップＳ１０２５へ進められる。ステップＳ１０２５において、制御回路６５は、ステップＳ１０１３〜ステップＳ１０１７での複素乗算処理の結果またはステップＳ１０１９〜ステップＳ１０２３での乗算処理の結果を積算する。そして、制御回路６５は、フィンガ番号ｊの値を１つインクリメントして（ステップＳ１０１４）、重み係数演算処理をステップＳ１０１２へ戻す。
【０１１１】
一方、フィンガ番号ｊの値が最大フィンガ数Ｎと等しい場合（ステップＳ１０２４で“ＹＥＳ”）、重み係数演算処理は、図１３Ｃに示すステップＳ１０２６へ進められる。
【０１１２】
ステップＳ１０２６において、演算回路６４は、ステップＳ１０２５で演算された積算結果の符合を反転する。また、ステップＳ１０２７において、制御回路６５は、式(2)で示されるチャネル推定値Ｈｉをチャネル推定値メモリ６１に演算回路６４へ出力させるために、演算対象のチャネル推定値Ｈｉに対応するリードアドレスを生成する。そして、制御回路６５は、生成されたリードアドレスをチャネル推定値メモリ６１へ出力する。チャネル推定値メモリ６１は、制御回路６５から出力されたリードアドレスに対応するチャネル推定値Ｈｉ（Ｈ［ｔ］［ｉ］）を演算回路６４へ出力する。ステップＳ１０２８において、演算回路６４は、チャネル推定値メモリ６１から出力されたチャネル推定値Ｈｉ（Ｈ［ｔ］［ｉ］）をステップＳ１０２６で符号反転された積算結果に加算する。
【０１１３】
ステップＳ１０２９において、制御回路６５は、式(2)で示される対角成分の逆数１／Ｒ０，０の値を相関行列成分メモリ６２に演算回路６４へ出力させるために、対角成分の逆数１／Ｒ０，０に対応するリードアドレスを生成する。そして、制御回路６５は、生成されたリードアドレスを相関行列成分メモリ６２へ出力する。相関行列成分メモリ６２は、制御回路６５から出力されたリードアドレスに対応する対角成分の逆数１／Ｒ０，０（１／Ｒ［０］［０］）の値を演算回路６４へ出力する。
【０１１４】
ステップＳ１０３０において、演算回路６４は、相関行列成分メモリ６２から出力された対角成分の逆数１／Ｒ０，０（１／Ｒ［０］［０］）の値と、ステップＳ１０２８で演算された加算結果とを乗算する。ステップＳ１０３０での乗算により、式(2)で示されるｎ回目の重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）の値が取得される。取得されたｎ回目の重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）の値は、演算回路６４から重み係数メモリ６３へ出力される。
【０１１５】
ステップＳ１０３１において、ステップＳ１０３０において取得されたｎ回目の重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）の値を重み係数メモリ６３に格納させるために、制御回路６５は、格納される重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）に対応するライトアドレスとライトイネーブル信号とを生成する。そして、制御回路６５は、生成されたライトアドレスおよびライトイネーブル信号を重み係数メモリ６３へ出力する。重み係数メモリ６３は、制御回路６５から出力されたライトイネーブル信号に従って、演算回路６４から出力されたｎ回目の重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）の値を、制御回路６５から出力されたライトアドレスに格納する。
【０１１６】
ステップＳ１０３２において、制御回路６５は、フィンガ番号ｉの値が最大フィンガ数Ｎより小さいか否かを判定する。フィンガ番号ｉの値が最大フィンガ数Ｎより小さい場合（ステップＳ１０３１で“ＹＥＳ”）、制御回路６５は、フィンガ番号ｉの値を１つインクリメントする（ステップＳ１０３３）。そして、重み係数演算処理は、ステップＳ１０１１へ戻される。一方、フィンガ番号ｉの値が最大フィンガ数Ｎと等しい場合（ステップＳ１０３２で“ＮＯ”）、重み係数演算処理は、ステップＳ１０３４へ進められる。
【０１１７】
ステップＳ１０３４において、制御回路６５は、送信アンテナ番号ｔの値が所定の最大送信アンテナ番号数より小さいか否かを判定する。送信アンテナ番号ｔの値が所定の最大送信アンテナ番号数より小さい場合（ステップＳ１０３４で“ＹＥＳ”）、制御回路６５は、送信アンテナ番号ｔの値を１つインクリメントする（ステップＳ１０３５）。そして、重み係数演算処理は、ステップＳ１０１０へ戻される。一方、送信アンテナ番号ｔの値が所定の最大送信アンテナ番号数と等しい場合（ステップＳ１０３４で“ＮＯ”）、重み係数演算処理は、ステップＳ１０３６へ進められる。
【０１１８】
ステップＳ１０３６において、制御回路６５は、反復回数ｎの値が所定の反復回数より小さいか否かを判定する。反復回数ｎの値が所定の反復回数より小さい場合（ステップＳ１０３６で“ＹＥＳ”）、制御回路６５は、反復回数ｎの値を１つインクリメントする（ステップＳ１０３７）。そして、重み係数演算処理は、ステップＳ１００９へ戻される。一方、反復回数ｎの値が所定の反復回数と等しい場合（ステップＳ１０３６で“ＮＯ”）、重み係数演算処理は、ステップＳ１０３８へ進められる。
【０１１９】
ステップＳ１０３８では、ステップＳ１０３０までの処理により取得されたｎ回目の重み係数ｗｉ（ｗ［ｎ］［ｔ］［ｉ］）の値が演算回路６４からＦＩＲフィルタ２１７へ出力される。そして、ステップＳ１００１から開始された一連の重み係数演算処理は終了される（ステップＳ１０３９）。なお、ステップＳ１０３９で一連の重み係数演算処理が終了された後、ステップＳ１００１で新たな重み係数演算処理が開始され得る。
【０１２０】
このように、実施形態に従った重み係数演算処理によれば、式(2)中の式(5)に含まれるような複素演算が直接行われる方法と比較して複素乗算の回数を削減できる。したがって、実施形態に従った重み係数演算処理によれば、ＦＩＲフィルタ等のイコライザに用いられる重み係数を得るための演算処理量を削減することができ、ひいては演算処理を行う回路や装置の処理時間の短縮や消費電力の削減を実現できる。
【０１２１】
また、上記では、実施形態に従った重み係数演算方法が重み係数演算回路２１６により実行される一例を説明した。しかしながら、実施形態に従った重み演算処理方法は、図１３Ａ〜図１３Ｃの重み係数演算処理フローに示されるような処理手順を規律する重み係数演算プログラムを実行するコンピュータによって実現することも可能である。
【０１２２】
図１４は、実施形態に従った重み係数演算プログラムを実行するコンピュータの例示的構成図である。
【０１２３】
図１４に示すように、コンピュータ７は、入力装置７１、読み取り装置７２、通信インタフェース７３、ハードディスク（ＨＤＤ）７４、Central Processing Unit（ＣＰＵ）７５、Random Access Memory（ＲＡＭ）７６、Read Only Memory（ＲＯＭ）７７、表示装置７８、およびバス７９を含む。コンピュータ７に含まれる構成要素７１〜７８は、バス７９によって相互に接続される。
【０１２４】
入力装置７１は、コンピュータ７のユーザが行なった操作を検出する装置であり、例えば、マウスおよびキーボードである。表示装置７８は、ＣＰＵ７５の処理結果等を表示する装置であり、例えば、液晶ディスプレイ装置である。
【０１２５】
読み取り装置７２は、磁気ディスク、光ディスク、および光磁気ディスク等の記録媒体に含まれるプログラムおよびデータを読み出す装置であり、例えば、Compact Disc/Digital Versatile Disc（ＣＤ／ＤＶＤ）ドライブである。通信インタフェース７３は、Local Area Network（ＬＡＮ）等の通信ネットワークにコンピュータ７を接続するためのインタフェースである。ＨＤＤ７４は、ＣＰＵ７５が実行するプログラムおよびデータを記憶する記憶装置である。
【０１２６】
実施形態に従った重み係数演算プログラムは、記録媒体に記録された重み係数演算プログラムを読み取り装置７２が読み取ることによって、ＨＤＤ７４にインストールされ得る。或は、実施形態に従った重み係数演算プログラムは、他のコンピュータ装置（図示せず）に格納された重み係数演算プログラムを通信インタフェース７３を介してコンピュータ７が取得することによって、ＨＤＤ７４にインストールされ得る。
【０１２７】
ＣＰＵ７５は、重み係数演算プログラムをＨＤＤ７４からＲＡＭ７６に読み出して重み係数演算プログラムを実行することによって、実施形態に従った重み係数演算処理を実行する処理装置である。
【０１２８】
ＲＡＭ７６は、ＨＤＤ７４から読み出された重み係数演算プログラムの実行途中結果を記憶するメモリである。ＲＯＭ７７は、定数データ等を記憶する読み出し専用メモリである。
【０１２９】
実施形態に従った重み係数演算プログラムを実行するコンピュータによれば、式(2)中の式(5)に含まれるような複素演算が直接行われる方法と比較して複素乗算の回数を削減できる。したがって、実施形態に従った重み係数演算プログラムを実行するコンピュータによれば、ＦＩＲフィルタ等のイコライザに用いられる重み係数を得るための演算処理量を削減することができ、ひいては演算処理を行う回路や装置の処理時間の短縮や消費電力の削減を実現できる。
【符号の説明】
【０１３０】
１      無線通信装置
１０      無線回路
２０      ベースバンド処理回路
２１      受信処理回路
２１１      セルサーチ・パスサーチ回路
２１２      制御チャネル復調回路
２１３      ＣＰＩＣＨ逆拡散回路
２１４      相関行列演算回路
２１５      チャネル推定回路
２１６      重み係数演算回路
２１７      ＦＩＲフィルタ
２１７Ａ      遅延回路
２１７Ｂ      乗算器
２１７Ｃ      加算器
２１７Ｄ      複素共役計算器
２１７Ｅ      バッファ
２１８      ＳＣＨキャンセル回路
２１９      ＨＳ−ＰＤＳＣＨ逆拡散回路
２２      復号器
２３      符号化器
２４      送信処理回路
３０      上位レイヤ回路
４０      受信アンテナ
５０      送信アンテナ
６１      チャネル推定値メモリ
６２      相関行列成分メモリ
６３      重み係数メモリ
６４      演算回路
６４Ａ      複素乗算部
６４Ｂ      積算部
６５      制御回路
【図１】
2014232960.tif 000011
【図２】
2014232960.tif 000012
【図３】
2014232960.tif 000013
【図４】
2014232960.tif 000014
【図６Ａ】
2014232960.tif 000015
【図６Ｂ】
2014232960.tif 000016
【図８】
2014232960.tif 000017
【図９】
2014232960.tif 000018
【図１０】
2014232960.tif 000019
【図１１】
2014232960.tif 000020
【図１２】
2014232960.tif 000021
【図１３Ａ】
2014232960.tif 000022
【図１３Ｂ】
2014232960.tif 000023
【図１３Ｃ】
2014232960.tif 000024
【図１４】
2014232960.tif 000025
【図５】
2014232960.tif 000026
【図７Ａ】
2014232960.tif 000027
【図７Ｂ】
2014232960.tif 000028