(57)【要約】【課題】  全サブキャリアのチャンネル行列をＯＦＤＭシンボル周期内で計算でき，送受信アンテナがＭ×Ｎのシステムに対応できるチャンネル行列演算装置を提供する。【解決手段】  逆行列演算部３０３は，４×４型行列Ｃを分割した２×２型行列Ｃ１１，Ｃ１２，Ｃ２１，Ｃ１２について，２×２型行列Ｃ１１の逆行列Ｃ１１−１とＣ２２の逆行列Ｃ２２−１を計算する逆行列処理部４０１ａと，Ｃ２１Ｃ１１−１Ｃ１２とＣ１２Ｃ２２−１Ｃ２１の行列乗算を処理する行列乗算モジュール（Ａ）４０２ａ，４０２ｂ，４０３ａ，４０３ｂと，Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２とＣ１１−Ｃ１２Ｃ２２−１Ｃ２１の減算を処理する行列減算モジュール４０４ａ，４０４ｂと，逆行列（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１と（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１を計算する逆行列処理部４０５ａ，４０５ｂを含む。【選択図】  図４
2006229436.tif 000002
【特許請求の範囲】
【請求項１】
送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置に組み込まれるチャンネル行列演算装置であって，
４×４型行列Ｃを２×２型行列Ｃ１１（Ｃの要素Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２で構成），Ｃ１２（Ｃの要素Ｃ１３，Ｃ１４，Ｃ２３，Ｃ２４で構成），Ｃ２１（Ｃの要素Ｃ３１，Ｃ３２，Ｃ４１，Ｃ４２で構成），Ｃ１２（Ｃの要素Ｃ３３，Ｃ３４，Ｃ４３，Ｃ４４で構成）に分割する行列分割部と，
２×２型行列Ｃ１１の逆行列Ｃ１１−１とＣ２２の逆行列Ｃ２２−１を計算する第１の逆行列演算部と，
Ｃ２１Ｃ１１−１Ｃ１２とＣ１２Ｃ２２−１Ｃ２１の２×２型行列の行列乗算を処理する行列乗算部と，
Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２とＣ１１−Ｃ１２Ｃ２２−１Ｃ２１の２×２型行列の減算を処理する行列減算部と，
２×２型行列の逆行列（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１と（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１を計算する第２の逆行列演算部と，
２×２型行列Ｃ１１−１（Ｃ−１の要素Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１で構成），Ｃ１２−１（Ｃの要素Ｃ１３−１，Ｃ１４−１，Ｃ２３−１，Ｃ２４−１で構成），Ｃ２１−１（Ｃの要素Ｃ３１−１，Ｃ３２−１，Ｃ４１−１，Ｃ４２−１で構成），Ｃ１２−１（Ｃの要素Ｃ３３−１，Ｃ３４−１，Ｃ４３−１，Ｃ４４−１で構成）に分割した各小行列Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１の要素をＣ１１−１＝Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２，Ｃ１２−１＝−（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１Ｃ１２Ｃ２２−１，Ｃ２１−１＝−（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１Ｃ２１Ｃ１１−１Ｃ２２−１，Ｃ２２−１＝（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１として処理しＣ−１を計算する逆行列出力部と，
を含むことを特徴とする，チャンネル行列演算装置。
【請求項２】
前記行列乗算部は，
２個の２×２型行列ＡとＢについて，それぞれ小行列Ａ１１，Ａ１２，Ａ２１，Ａ２２とＢ１１，Ｂ１２，Ｂ２１，Ｂ２２に分割する行列分割部と，
８個の２×２型小行列の乗算Ｆａａ＝Ａ１１Ｂ１１，Ｆａｂ＝Ａ１１Ｂ１２，Ｆｄｃ＝Ａ２２Ｂ２１，Ｆｄｄ＝Ａ２２Ｂ２２，Ｆｃｂ＝Ａ１２Ｂ２１，Ｆｂｄ＝Ａ１２Ｂ２２，Ｆｃａ＝Ａ２１Ｂ１１，Ｆｃｂ＝Ａ２１Ｂ１２を処理する乗算部と，
行列乗算結果Ｃ＝ＡＢを２×２型小行列Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２に分割したＣ１１＝Ｆａａ＋Ｆｂｃ，Ｃ１２＝Ｆａｂ＋Ｆｂｄ，Ｃ２１＝Ｆｃａ＋Ｆｄｃ，Ｃ２２＝Ｆｃｂ＋Ｆｄｄを処理する行列加算部と，
を含むことを特徴とする，請求項１に記載のチャンネル行列演算装置。
【請求項３】
前記第１，第２の逆行列演算部は，
２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２１，ｃ２２を用いて，複素数乗算ｃ１１ｃ２２とｃ１２ｃ２１を行う２個の複素数乗算部と，
行列式ｄｅｔＣ１１＝ｃ１１ｃ２２−ｃ１２ｃ２１の減算を行う減算部と，
１／ｄｅｔＣを計算する逆数演算部と，
２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２１−１＝−（１／ｄｅｔＣ１１）ｃ２１，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ１１として処理してＣ１１−１を計算する逆行列出力部と，
を含むことを特徴とする，請求項１に記載のチャンネル行列演算装置。
【請求項４】
前記第１，第２の逆行列演算部は， 
２個の２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２２と，Ｃ２２の要素ｃ３３，ｃ３４，ｃ４４を用いて，ｄｅｔＣ１１＝ｃ１１ｃ２２−（ｃ１２２＋ｃ１２２）と，行列式ｄｅｔＣ２２＝ｃ３３ｃ４４−（ｃ３４２＋ｃ３４２）とを計算する２個の複素数乗算部と，
１／ｄｅｔＣ１１と１／ｄｅｔＣ２２を計算する逆数演算部と，
２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ２２と２×２型行列Ｃ２２−１の要素をｃ２２−１＝（１／ｄｅｔＣ２２）ｃ３３，ｃ３４−１＝−（１／ｄｅｔＣ２２）ｃ３４，ｃ４４−１＝（１／ｄｅｔＣ２２）ｃ４４として処理してＣ１１−１を計算する逆行列出力部と，
を含むことを特徴とする，請求項１に記載のチャンネル行列演算装置。
【請求項５】
前記第１，第２の逆行列演算部は，
複素数乗算を行う２個の複素数乗算部と，
行列式の減算を行う減算部と，
逆数演算部と，
を備え，
２×２型行列Ｃ１１の全ての要素が複素数の場合は，
前記２個の複素数乗算部で，２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２１，ｃ２２を用いて，複素数乗算ｃ１１ｃ２２とｃ１２ｃ２１を行い，
前記減算部で行列式ｄｅｔＣ１１＝ｃ１１ｃ２２−ｃ１２ｃ２１の減算を行い，
前記逆数演算部で１／ｄｅｔＣを計算し，
２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２１−１＝−（１／ｄｅｔＣ１１）ｃ２１，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ１１として処理してＣ１１−１を計算し，
２×２型行列Ｃ１１がエルミート行列の場合は，
前記２個の複素数乗算部で，２個の２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２２と，Ｃ２２の要素ｃ３３，ｃ３４，ｃ４４を用いて，ｄｅｔＣ１１＝ｃ１１ｃ２２−（ｃ１２２＋ｃ１２２）と，行列式ｄｅｔＣ２２＝ｃ３３ｃ４４−（ｃ３４２＋ｃ３４２）とを計算し，
前記逆数演算部で１／ｄｅｔＣ１１と１／ｄｅｔＣ２２を計算し，
前記逆行列出力部は，２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ２２と２×２型行列Ｃ２２−１の要素をｃ２２−１＝（１／ｄｅｔＣ２２）ｃ３３，ｃ３４−１＝−（１／ｄｅｔＣ２２）ｃ３４，ｃ４４−１＝（１／ｄｅｔＣ２２）ｃ４４として処理してＣ１１−１を計算することを特徴とする，請求項１に記載のチャンネル行列演算装置。
【請求項６】
送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置におけるチャンネル行列演算方法であって，
４×４型行列Ｃを２×２型行列Ｃ１１（Ｃの要素Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２で構成），Ｃ１２（Ｃの要素Ｃ１３，Ｃ１４，Ｃ２３，Ｃ２４で構成），Ｃ２１（Ｃの要素Ｃ３１，Ｃ３２，Ｃ４１，Ｃ４２で構成），Ｃ１２（Ｃの要素Ｃ３３，Ｃ３４，Ｃ４３，Ｃ４４で構成）に分割する工程と，
２×２型行列Ｃ１１の逆行列Ｃ１１−１とＣ２２の逆行列Ｃ２２−１を計算する工程と，
Ｃ２１Ｃ１１−１Ｃ１２とＣ１２Ｃ２２−１Ｃ２１の２×２型行列の行列乗算を処理する工程と，
Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２とＣ１１−Ｃ１２Ｃ２２−１Ｃ２１の２×２型行列の減算を処理する工程と，
２×２型行列の逆行列（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１と（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１を計算する工程と，
２×２型行列Ｃ１１−１（Ｃ−１の要素Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１で構成），Ｃ１２−１（Ｃの要素Ｃ１３−１，Ｃ１４−１，Ｃ２３−１，Ｃ２４−１で構成），Ｃ２１−１（Ｃの要素Ｃ３１−１，Ｃ３２−１，Ｃ４１−１，Ｃ４２−１で構成），Ｃ１２−１（Ｃの要素Ｃ３３−１，Ｃ３４−１，Ｃ４３−１，Ｃ４４−１で構成）に分割した各小行列Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１の要素をＣ１１−１＝Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２，Ｃ１２−１＝−（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１Ｃ１２Ｃ２２−１，Ｃ２１−１＝−（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１Ｃ２１Ｃ１１−１Ｃ２２−１，Ｃ２２−１＝（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１として処理しＣ−１を計算する工程と，
を含むことを特徴とする，チャンネル行列演算方法。
【請求項７】
コンピュータを，請求項１に記載のチャンネル行列演算装置として機能せしめるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，多重アンテナを使用したワイヤレス無線通信システムにおいて，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置のチャンネル行列演算に関する技術であり，チャンネル行列演算装置およびチャンネル行列演算方法，並びにその関連技術に関する。
【背景技術】
【０００２】
送信，受信，またはその両方に，複数のアンテナ素子を使用することによって，通信容量あるいは伝送速度を大幅に向上することができる技術として，ＭＩＭＯ伝送方式が知られている。送信アンテナ数Ｍ，受信アンテナ数ＮのＭＩＭＯ伝送モデルは一般に次式のように表現できる。
【０００３】
【数１】
2006229436.tif 000003
【０００４】
ここで，ＸはＭ×１型送信信号ベクトル，ＹはＮ×１型受信信号ベクトル，ＨはＭ×Ｎ型チャンネル行列，ｎはＮ×１型雑音＋干渉ベクトルである。チャンネル行列Ｈは以下のモデルで表される。
【０００５】
【数２】
2006229436.tif 000004
【０００６】
ここで，ｈｎｍはチャンネル行列Ｈの要素で以下のように表せる。
【０００７】
【数３】
2006229436.tif 000005
【０００８】
Ｄは到来波数，Ｒｉは第ｉ番目の到来波の送信アンテナｍから受信アンテナｎへの到来波毎の伝搬距離，λは波長である。
【０００９】
受信側でチャンネル行列Ｈを得るには，既知のトレーニング系列などを送信し，受信側でトレーニング系列から推定する手法がよく用いられる。チャンネル行列が得られると，ｏｐｅｎ  ｌｏｏｐ型のＭＩＭＯ受信機の場合，チャンネル行列の逆行列Ｈ−１を利用することで，送信信号を得ることができる。代表的な手法として，以下のＺＦ（Ｚｅｒｏ  Ｆｏｒｃｉｎｇ）法，ＭＭＳＥ（Ｍｉｎｉｍｕｍ  Ｍｅａｎ  Ｓｑｕａｒｅ  Ｅｒｒｏｒ）法がある。
【００１０】
ＺＦ法：
【００１１】
【数４】
2006229436.tif 000006
【００１２】
ＭＭＳＥ法：
【００１３】
【数５】
2006229436.tif 000007
【００１４】
ここで，添え字“Ｈ”は共役転置を表し，σｎ２は雑音分散で各チャンネル等しいと仮定している。ＺＦ法とＭＭＳＥ法を比較すると，高ＳＮＲではほぼ等しい特性が得られ，低ＳＮＲではＭＭＳＥの方が良い特性が得られることが知られている。式（４）のＲＺＦは次式のＭｏｏｒｅ−ｐｅｎｒｏｓｅ一般逆行列と同じ形式であり，行列Ｈにランク落ちがある場合，逆行列は存在しないが，行列Ｈの最小２乗規範に従った近似解を得ることができる。
【００１５】
【数６】
2006229436.tif 000008
【００１６】
チャンネル行列Ｈは通常，要素が複素数であり以下のように表せる。
【００１７】
【数７】
2006229436.tif 000009
【００１８】
式（４），式（５）共に逆行列演算が必要であるが，ＺＦの場合はＨＨＨ，ＭＭＳＥの場合はＨＨＨの対角成分に雑音分散を加算した行列であり，それぞれ以下のようにエルミート行列となる。
【００１９】
【数８】
2006229436.tif 000010
【００２０】
【数９】
2006229436.tif 000011
【００２１】
複素数の場合，実部と虚部で構成されるため，式（５）のＨによる演算では演算数も実数に比べて各段に多くなるが，式（６）のエルミート行列の場合，対角要素は実数となり上三角行列とした三角行列が複素共役の関係にあるため，この関係を利用すれば演算量の削減を図ることができる。逆行列演算アルゴリズムとして，ガウス消去法，ＬＵ分解などがあるが，エルミート行列を用いたとしても複素数用のアルゴリズムにおける演算量の増加は避けられない。さらに，逆行列演算前に２度の４×４型行列の乗算が必要になり，その分，演算量は増加する。
【００２２】
【特許文献１】特開平６−２３１１６３号公報
【発明の開示】
【発明が解決しようとする課題】
【００２３】
ところで，無線ＬＡＮでは，ＯＦＤＭ方式が採用されており，標準規格であるIEEE802.11aの場合，５２本のサブキャリアで構成されている。そのため，１ＯＦＤＭシンボル当たり５２個の独立したチャンネル行列が存在することになり，ＭＩＭＯ性能向上を図るためには全サブキャリアのチャンネル行列をＯＦＤＭシンボル周期内で計算できることが望ましい。また，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）のシステムが検討されており，これら複数の組み合わせに対応できる逆行列演算法が必要になる。
【００２４】
また，これらのシステム要求を満たすような逆行列演算法を装置化する場合，装置規模が大きくなるといった問題点があった。
【００２５】
本発明は，従来技術が有する上記問題点に鑑みてなされたものであり，本発明の目的は，全サブキャリアのチャンネル行列をＯＦＤＭシンボル周期内で計算でき，また，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）のシステムに対応することの可能な，新規かつ改良されたチャンネル行列演算装置およびチャンネル行列演算方法，並びにその関連技術（コンピュータプログラム等）を提供することである。
【課題を解決するための手段】
【００２６】
上記課題を解決するため，本発明の第１の観点によれば，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置に組み込まれるチャンネル行列演算装置が提供される。本発明のチャンネル行列演算装置は，以下の各構成要素（機能部）を含むことを特徴とする。
【００２７】
・４×４型行列Ｃを２×２型行列Ｃ１１（Ｃの要素Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２で構成），Ｃ１２（Ｃの要素Ｃ１３，Ｃ１４，Ｃ２３，Ｃ２４で構成），Ｃ２１（Ｃの要素Ｃ３１，Ｃ３２，Ｃ４１，Ｃ４２で構成），Ｃ１２（Ｃの要素Ｃ３３，Ｃ３４，Ｃ４３，Ｃ４４で構成）に分割する行列分割部
・２×２型行列Ｃ１１の逆行列Ｃ１１−１とＣ２２の逆行列Ｃ２２−１を計算する第１の逆行列演算部
・Ｃ２１Ｃ１１−１Ｃ１２とＣ１２Ｃ２２−１Ｃ２１の２×２型行列の行列乗算を処理する行列乗算部
・Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２とＣ１１−Ｃ１２Ｃ２２−１Ｃ２１の２×２型行列の減算を処理する行列減算部
・２×２型行列の逆行列（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１と（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１を計算する第２の逆行列演算部
・２×２型行列Ｃ１１−１（Ｃ−１の要素Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１で構成），Ｃ１２−１（Ｃの要素Ｃ１３−１，Ｃ１４−１，Ｃ２３−１，Ｃ２４−１で構成），Ｃ２１−１（Ｃの要素Ｃ３１−１，Ｃ３２−１，Ｃ４１−１，Ｃ４２−１で構成），Ｃ１２−１（Ｃの要素Ｃ３３−１，Ｃ３４−１，Ｃ４３−１，Ｃ４４−１で構成）に分割した各小行列Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１の要素をＣ１１−１＝Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２，Ｃ１２−１＝−（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１Ｃ１２Ｃ２２−１，Ｃ２１−１＝−（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１Ｃ２１Ｃ１１−１Ｃ２２−１，Ｃ２２−１＝（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１として処理しＣ−１を計算する逆行列出力部
【００２８】
かかるチャンネル行列演算装置では，すべての機能部は２×２型小行列演算のみで処理することを特徴とする。これにより，２×２〜４×４型の任意要素の行列の逆行列計算を，２×２型以下に分割した小行列のみで処理することが可能である。これにより，ＯＦＤＭ全サブキャリアのチャンネル行列の通常の逆行列を，アンテナ数が３本以上の場合,すなわち２×２より大きいサイズの行列においても,２×２型行列の演算のみで計算することが可能である。なお上記において，第１の逆行列演算部と第２の逆行列演算部は同一の機能部であってもよく，独立した別個の機能部であってもよい。
【００２９】
上記チャンネル行列演算装置において，行列乗算部は，以下の構成要素を含むように構成してもよい。
・２個の２×２型行列ＡとＢについて，それぞれ小行列Ａ１１，Ａ１２，Ａ２１，Ａ２２とＢ１１，Ｂ１２，Ｂ２１，Ｂ２２に分割する行列分割部
・８個の２×２型小行列の乗算Ｆａａ＝Ａ１１Ｂ１１，Ｆａｂ＝Ａ１１Ｂ１２，Ｆｄｃ＝Ａ２２Ｂ２１，Ｆｄｄ＝Ａ２２Ｂ２２，Ｆｃｂ＝Ａ１２Ｂ２１，Ｆｂｄ＝Ａ１２Ｂ２２，Ｆｃａ＝Ａ２１Ｂ１１，Ｆｃｂ＝Ａ２１Ｂ１２を処理する乗算部
・行列乗算結果Ｃ＝ＡＢを２×２型小行列Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２に分割したＣ１１＝Ｆａａ＋Ｆｂｃ，Ｃ１２＝Ｆａｂ＋Ｆｂｄ，Ｃ２１＝Ｆｃａ＋Ｆｄｃ，Ｃ２２＝Ｆｃｂ＋Ｆｄｄを処理する行列加算部
【００３０】
かかる行列乗算部では，すべての機能部で２×２型小行列演算のみで処理することを特徴とする。これにより，チャンネル行列が４×４型Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ一般逆行列の場合，逆行列演算のために必要な乗算演算を，２×２型以下に分割した小行列のみで処理することが可能である。
【００３１】
上記チャンネル行列演算装置において，第１，第２の逆行列演算部は，以下の構成要素を含むように構成してもよい。
・２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２１，ｃ２２を用いて複素数乗算ｃ１１ｃ２２とｃ１２ｃ２１を行う２個の複素数乗算部
・行列式ｄｅｔＣ１１＝ｃ１１ｃ２２−ｃ１２ｃ２１の減算を行う減算部
・１／ｄｅｔＣを計算する逆数演算部
・２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２１−１＝−（１／ｄｅｔＣ１１）ｃ２１，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ１１として処理してＣ１１−１を計算する逆行列出力部
【００３２】
かかる構成によれば，２×２型行列Ｃ１１の全ての要素が複素数の場合に，効率的な演算処理が可能である。なお，第１，第２の逆行列演算部がともに上記構成であってもよく，第１，第２の逆行列演算部のいずれかが上記構成であってもよい。
【００３３】
また，上記チャンネル行列演算装置において，第１，第２の逆行列演算部は，以下の構成要素を含むように構成してもよい。
・２個の２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２２と，Ｃ２２の要素ｃ３３，ｃ３４，ｃ４４を用いて，ｄｅｔＣ１１＝ｃ１１ｃ２２−（ｃ１２２＋ｃ１２２）と，行列式ｄｅｔＣ２２＝ｃ３３ｃ４４−（ｃ３４２＋ｃ３４２）とを計算する２個の複素数乗算部
・１／ｄｅｔＣ１１と１／ｄｅｔＣ２２を計算する逆数演算部
・２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ２２と２×２型行列Ｃ２２−１の要素をｃ２２−１＝（１／ｄｅｔＣ２２）ｃ３３，ｃ３４−１＝−（１／ｄｅｔＣ２２）ｃ３４，ｃ４４−１＝（１／ｄｅｔＣ２２）ｃ４４として処理してＣ１１−１を計算する逆行列出力部
【００３４】
かかる構成によれば，２×２型行列Ｃ１１がエルミート行列の場合に，効率的な演算処理が可能である。すなわち，２×２型行列Ｃ１１がエルミート行列の場合に，２×２型の逆行列演算部による演算処理を２個並列に行うことが可能である。なお，第１，第２の逆行列演算部がともに上記構成であってもよく，第１，第２の逆行列演算部のいずれかが上記構成であってもよい。
【００３５】
また，第１，第２の逆行列演算部は，複素数乗算を行う２個の複素数乗算部と，行列式の減算を行う減算部と，逆数演算部と，を備え，２×２型行列Ｃ１１がどのような行列であるかによって，次のような処理を行うことが可能である。
【００３６】
（１）２×２型行列Ｃ１１の全ての要素が複素数の場合
２×２型行列Ｃ１１の全ての要素が複素数の場合は，２個の複素数乗算部で，２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２１，ｃ２２を用いて，複素数乗算ｃ１１ｃ２２とｃ１２ｃ２１を行い，減算部で行列式ｄｅｔＣ１１＝ｃ１１ｃ２２−ｃ１２ｃ２１の減算を行い，逆数演算部で１／ｄｅｔＣを計算し，２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２１−１＝−（１／ｄｅｔＣ１１）ｃ２１，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ１１として処理してＣ１１−１を計算する。
【００３７】
（２）２×２型行列Ｃ１１がエルミート行列の場合
２×２型行列Ｃ１１がエルミート行列の場合は，２個の複素数乗算部で，２個の２×２型行列Ｃ１１の要素ｃ１１，ｃ１２，ｃ２２と，Ｃ２２の要素ｃ３３，ｃ３４，ｃ４４を用いて，ｄｅｔＣ１１＝ｃ１１ｃ２２−（ｃ１２２＋ｃ１２２）と，行列式ｄｅｔＣ２２＝ｃ３３ｃ４４−（ｃ３４２＋ｃ３４２）とを計算し，逆数演算部で１／ｄｅｔＣ１１と１／ｄｅｔＣ２２を計算し，逆行列出力部は，２×２型行列Ｃ１１−１の要素をｃ１１−１＝（１／ｄｅｔＣ１１）ｃ２２，ｃ１２−１＝−（１／ｄｅｔＣ１１）ｃ１２，ｃ２２−１＝（１／ｄｅｔＣ１１）ｃ２２と２×２型行列Ｃ２２−１の要素をｃ２２−１＝（１／ｄｅｔＣ２２）ｃ３３，ｃ３４−１＝−（１／ｄｅｔＣ２２）ｃ３４，ｃ４４−１＝（１／ｄｅｔＣ２２）ｃ４４として処理してＣ１１−１を計算する。
【００３８】
かかる構成によれば，２×２型行列Ｃ１１の全ての要素が複素数の場合，および，２×２型行列Ｃ１１がエルミート行列の場合に，効率的な演算処理が可能である。すなわち，一つの２×２型逆行列演算部により，全ての要素が複素数の場合は１個，エルミート行列の場合は２個並列に２×２型行列の逆行列を計算することが可能である。なお，第１，第２の逆行列演算部がともに上記構成であってもよく，第１，第２の逆行列演算部のいずれかが上記構成であってもよい。
【００３９】
以上説明した本発明のチャンネル行列演算装置によれば，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変の場合で，逆行列演算を行うＯＦＤＭキャリア数，処理速度，装置規模に合わせてパイプライン処理，並列処理などを行う場合，上記２×２型行列の演算モジュールの並列化など用途に合った組み合わせを用いることにより，演算モジュール単位で，目的に合った構成を実現することが可能である。
【００４０】
上記課題を解決するため，本発明の第２の観点によれば，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置におけるチャンネル行列演算方法が提供される。本発明のチャンネル行列演算方法は，以下の各工程を含むことを特徴とする。
【００４１】
・４×４型行列Ｃを２×２型行列Ｃ１１（Ｃの要素Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２で構成），Ｃ１２（Ｃの要素Ｃ１３，Ｃ１４，Ｃ２３，Ｃ２４で構成），Ｃ２１（Ｃの要素Ｃ３１，Ｃ３２，Ｃ４１，Ｃ４２で構成），Ｃ１２（Ｃの要素Ｃ３３，Ｃ３４，Ｃ４３，Ｃ４４で構成）に分割する工程
・２×２型行列Ｃ１１の逆行列Ｃ１１−１とＣ２２の逆行列Ｃ２２−１を計算する工程
・Ｃ２１Ｃ１１−１Ｃ１２とＣ１２Ｃ２２−１Ｃ２１の２×２型行列の行列乗算を処理する工程
・Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２とＣ１１−Ｃ１２Ｃ２２−１Ｃ２１の２×２型行列の減算を処理する工程
・２×２型行列の逆行列（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１と（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１を計算する工程
・２×２型行列Ｃ１１−１（Ｃ−１の要素Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１で構成），Ｃ１２−１（Ｃの要素Ｃ１３−１，Ｃ１４−１，Ｃ２３−１，Ｃ２４−１で構成），Ｃ２１−１（Ｃの要素Ｃ３１−１，Ｃ３２−１，Ｃ４１−１，Ｃ４２−１で構成），Ｃ１２−１（Ｃの要素Ｃ３３−１，Ｃ３４−１，Ｃ４３−１，Ｃ４４−１で構成）に分割した各小行列Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１の要素をＣ１１−１＝Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２，Ｃ１２−１＝−（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１Ｃ１２Ｃ２２−１，Ｃ２１−１＝−（Ｃ２２−Ｃ２１Ｃ１１−１Ｃ１２）−１Ｃ２１Ｃ１１−１Ｃ２２−１，Ｃ２２−１＝（Ｃ１１−Ｃ１２Ｃ２２−１Ｃ２１）−１として処理しＣ−１を計算する工程
【００４２】
かかるチャンネル行列演算方法によれば，２×２〜４×４型の任意要素の行列の逆行列計算を，２×２型以下に分割した小行列のみで処理することが可能である。これにより，ＯＦＤＭ全サブキャリアのチャンネル行列の通常の逆行列を，２×２型行列の演算のみで計算することが可能である。
【００４３】
上記課題を解決するため，本発明の他の観点によれば，コンピュータを，上記本発明の第１の観点にかかるチャンネル行列演算装置として機能せしめるコンピュータプログラムが提供される。また，そのコンピュータプログラムを記録した，コンピュータにより読み取り可能な記録媒体が提供される。ここで，コンピュータプログラムはいかなるプログラム言語により記述されていてもよい。また，記録媒体としては，例えば，ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，フレキシブルディスクなど，コンピュータプログラムを記録可能な記録媒体として現在一般に用いられている記録媒体，あるいは将来用いられるいかなる記録媒体をも採用することができる。
【発明の効果】
【００４４】
以上のように，本発明によれば，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置のチャンネル行列演算において，２×２〜４×４型の任意要素の行列の逆行列計算を，２×２型以下に分割した小行列のみで処理することが可能である。これにより，ＯＦＤＭ全サブキャリアのチャンネル行列の通常の逆行列を，２×２型行列の演算のみで計算することが可能である。これにより，必要となるＯＦＤＭのサブキャリア数分のチャンネル行列の逆行列を，通常の逆行列，またはＭｏｏｒｅ−Ｐｅｎｒｏｓｅ一般逆行列により，処理速度，装置規模に合わせて演算モジュール単位に構成することを特徴とするチャンネル行列演算装置およびチャンネル行列演算方法を提供することができる。
【００４５】
また，２×２型行列の演算モジュール単位で，並列化など用途に合った組み合わせを用いることにより，目的に合った構成を実現できるチャンネル行列演算装置を提供することができる。
【発明を実施するための最良の形態】
【００４６】
以下に添付図面を参照しながら，本発明の好適な実施形態について詳細に説明する。なお，本明細書および図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００４７】
（１）チャンネル行列演算装置の概略構成
ＭＩＭＯシステムを用いたＯＦＤＭ送受信装置の一例の概略構成について，図１，図２を参照しながら説明する。本実施形態では，送信アンテナ４本，受信アンテナ４本から成る４×４型ＭＩＭＯシステムの一例について説明する。ＯＦＤＭで採用するサブキャリア数は５２とし，ＯＦＤＭシンボルには既知の系列をもったトレーニングシンボルが周期的に挿入されているとする。
【００４８】
＜図１：４×４ＭＩＭＯ−ＯＦＤＭ送信装置例＞
４×４ＭＩＭＯ−ＯＦＤＭ送信装置１００は，図１に示したように，変調部１０１と，ＯＦＤＭシンボル生成部１０２と，ＭＩＭＯ信号生成部１０３と，ＩＦＦＴ１０４と，ＭＩＭＯ−ＲＦ送信部１０５ａ〜１０５ｄとを含んで構成されている。
【００４９】
４×４ＭＩＭＯ−ＯＦＤＭ送信装置１００は，データのフレーム化，チャンネル符号化等の処理の後，送信データとして変調部１０１に入力し，定められたシンボル毎に変調を行い，ＯＦＤＭシンボル生成部１０２でＯＦＤＭシンボル化された後，ＭＩＭＯ信号送信部１０３で定められたＭＩＭＯフォーマットに従って，送信アンテナ数４本それぞれで送信するデータストリームを生成する。これら４本のデータストリームはＩＦＦＴ１０４で逆フーリエ変換されて５２本のサブキャリアを形成し，ガードシンボル等が付加された後，ＭＩＭＯ−ＲＦ送信部１０５ａ〜１０５ｄの各Ｄ／Ａ変換器で４本のストリームをアナログ信号に変換し，ＲＦ部でアップコンバートされて，それぞれの送信アンテナから適切なタイミングで４ストリームの信号が送信される。
【００５０】
＜図２：４×４ＭＩＭＯ−ＯＦＤＭ受信装置例＞
４×４ＭＩＭＯ−ＯＦＤＭ受信装置２００は，図２に示したように，ＭＩＭＯ−ＲＦ受信部２０１ａ〜２０１ｄと，ＦＦＴ２０２と，ＭＩＭＯ信号受信部２０３と，復調部２０４と，チャンネル行列推定部２０５と，チャンネル行列処理部２０６とを含んで構成されている。
【００５１】
４×４ＭＩＭＯ−ＯＦＤＭ受信装置２００は，ＭＩＭＯ−ＲＦ受信部２０１ａ〜２０１ｄの各受信アンテナで送信された４ストリームの信号を受信し，各ストリームの信号はＲＦ部でダウンコンバートされ，それぞれのＡ／Ｄ変換器でベースバンド信号に変換される。ＦＦＴ２０２では，適切なタイミングで各ストリームのＦＦＴを施して５２本のサブキャリアに対応する信号を再生し，ＭＩＭＯ信号受信部でデータとトレーニングシンボルを分け，データを復調部２０４に，トレーニングシンボルをチャンネル行列推定器２０５に出力する。チャンネル行列推定器２０５では，既知の系列とトレーニングシンボルとの相関を取る等の処理により，チャンネル行列Ｈの要素を推定する。チャンネル行列処理部２０６は，ＺＦ法を用いる場合ＲＺＦを，ＭＭＳＥ法を用いる場合ＲＭＭＳＥをＯＦＤＭシンボル毎に５２サブキャリア分計算し，復調部２０４でサブキャリア毎に，ＺＦ法の場合は式（４），ＭＭＳＥ法の場合は式（５）を計算することによって受信信号ベクトルの復調を行い，送信されたストリーム毎の復調データとして出力する。
【００５２】
（２）小行列分割法を用いた一般逆行列演算処理の概要
本実施形態にかかる小行列分割法による一般逆行列演算処理の概要について説明する。
本実施形態のシステムでは，逆行列演算の最大要素数は送信アンテナ数４，受信アンテナ数４の４×４の複素数である。ガウス消去法やＬＵ分解を用いて逆行列を求める場合，４×４の要素に対して演算を行うため，装置化を行う場合，効率的なモジュールを構築し難い。そこで，本実施形態では，小行列分割法による行列分割を行い，２×２，１×２，２×１のベクトルとスカラの演算を基本とし，かつ，エルミート行列の特徴を生かした演算処理を行う。
【００５３】
まず，小行列分割法の原理を説明する（“Statistical and Adaptive Signal Processing”, D．G．Manolakis, V．K．Ingle,
S．M．Kogon参照）。本実施形態で対象とする４×４型より小さい行列を以下のように２×２型以下の行列に４分割する。
【００５４】
（１）４×４型の場合：
【００５５】
【数１０】
2006229436.tif 000012
【００５６】
各小行列は以下のように表せる。
【００５７】
【数１１】
2006229436.tif 000013
【００５８】
（２）３×３型の場合：
【００５９】
【数１２】
2006229436.tif 000014
【００６０】
各小行列は以下のように表せる。
【００６１】
【数１３】
2006229436.tif 000015
【００６２】
各小行列は以下のように表せる。
【００６３】
（３）４×３型の場合：
【００６４】
【数１４】
2006229436.tif 000016
【００６５】
各小行列は以下のように表せる。
【００６６】
【数１５】
2006229436.tif 000017
【００６７】
（４）３×４型の場合：
【００６８】
【数１６】
2006229436.tif 000018
【００６９】
各小行列は以下のように表せる。
【００７０】
【数１７】
2006229436.tif 000019
【００７１】
（５）３×２型の場合：
【００７２】
【数１８】
2006229436.tif 000020
【００７３】
各小行列は以下のように表せる。
【００７４】
【数１９】
2006229436.tif 000021
【００７５】
（６）２×３型の場合：
【００７６】
【数２０】
2006229436.tif 000022
【００７７】
各小行列は以下のように表せる。
【００７８】
【数２１】
2006229436.tif 000023
【００７９】
このように分割した各小行列を用いると，行列Ａの逆行列Ａ−１は次式のように表せる。
【００８０】
【数２２】
2006229436.tif 000024
【００８１】
ここで，行列Ｅ１，Ｆ１，Ｅ２，Ｆ２は次式のように置く。
【００８２】
【数２３】
2006229436.tif 000025
【００８３】
また，Ａ１２＝Ａ２１であり，逆行列Ａ１１−１とＡ２２−１は存在すると仮定している。
【００８４】
一般逆行列の場合，式（２２）の行列Ａは式（４）の（ＨＨＨ），式（５）の（ＨＨＨ＋σ２Ｉ）が対象となる。いずれも正方行列かつエルミート行列である。そのため，上記の４×４型，３×３型の小行列のみ考えれば良い。
【００８５】
２×２型行列の逆行列は直接次式から求まる。
【００８６】
【数２４】
2006229436.tif 000026
【００８７】
式（２２）より，以下の４つについて逆行列を計算する必要がある。
【００８８】
【数２５】
2006229436.tif 000027
【００８９】
４×４型行列の場合，式（２５）の小行列は，いずれも２×２型行列なので，式（２４）を用いて計算可能である。３×３型行列の場合，Ａ２２−１とＥ１−１はスカラの実数なので，それぞれの逆数を求めれば良い。
【００９０】
（３）小行列分割法による一般逆行列演算装置の概略構成
本実施形態にかかる小行列分割法による一般逆行列演算装置の一例の概略構成について，チャンネル行列Ｈが４×４の場合を例に，図３，図４を参照しながら説明する。
【００９１】
＜図３：チャンネル行列演算装置（Ｉ）＞
上記「（２）小行列分割法を用いた一般逆行列演算処理の概要」で説明した小行列分割によるチャンネル行列演算装置（Ｉ）の一例の概略構成を図３に示す。チャンネル行列演算装置（Ｉ）３００は，図３に示したように，共役転置部３０１と，行列入出力モジュール３０２と，逆行列演算部３０３と，行列入出力モジュール３０４とを含んで構成されている。行列演算は２×２型小行列の演算モジュールで構成されている。
【００９２】
チャンネル行列Ｈがチャンネル行列推定部２０５から入力すると，共役転置部３０１で式（７）の行列Ｈの共役転置行列ＨＨを生成し，行列入出力モジュール３０２に出力する。行列入出力モジュール３０２では，４×４型行列の乗算ＨＨ×Ｈを行い，結果を４×４型行列Ｃとして逆行列演算部３０３に出力する。逆行列演算部３０３ではＣに対して式（２２）の小行列分割による逆行列計算を行ってＣ−１を求め，行列入出力モジュール３０４に出力する。行列入出力モジュール３０４は乗算Ｃ−１×ＨＨを計算し一般逆行列Ｈ＋を出力する。
【００９３】
＜図４：パラレル型逆行列演算部ブロック図＞
次に，図４を参照しながら，逆行列演算部３０３の概略と動作例を説明する。逆行列演算部３０３は，図４に示したように，同じブロックを持つ２系列（ａ系統，ｂ系統）を備えたパラレル型の構成である。逆行列処理部（本発明の第１の逆行列演算部）４０１ａ，４０１ｂ，行列乗算モジュール（Ａ）４０２ａ，４０２ｂ，行列乗算モジュール（Ａ）４０３ａ，４０３ｂ，行列減算モジュール４０４ａ，４０４ｂ，逆行列処理部（本発明の第２の逆行列演算部）４０５ａ，４０５ｂ，行列乗算モジュール（Ａ）４０６ａ，４０６ｂの順に接続することによって，式（１２）の小行列分解法による逆行列演算を行う。
【００９４】
ａ系統は逆行列処理部４０１ａで２×２型行列Ｃ１１の逆行列を計算し，行列乗算モジュール（Ａ）４０２ａで式（２３）のＦ１を出力する。ｂ系列も同様の処理を行って，行列乗算モジュール（Ａ）４０２ｂよりＦ２を出力する。さらに，ａ系統ではＥ１とＣ２２を用いて行列乗算モジュール（Ａ）４０３ａ，行列演算部４０４ａで式（２３）のＥ１を計算する。ｂ系列も同様の処理を行って行列演算部４０４ｂよりＥ２を出力する。さらに，ａ系統では，Ｅ１逆行列を計算し，行列乗算モジュール（Ａ）４０５ａで逆行列を計算し，小行列Ｃ１１−１を出力する。さらに行列乗算モジュール４０６ａはＣ１１−１と行列乗算モジュール（Ａ）４０２ｂの出力Ｆ２との乗算を行って小行列Ｃ１２−１を出力する。ｂ系列も同様の処理を行い逆行列処理部４０５ｂより小行列Ｃ２２−１を，行列乗算モジュール（Ａ）４０６ｂよりＣ２１−１を出力する。これら４つの小行列出力Ｃ１１−１，Ｃ１２−１，Ｃ２１−１，Ｃ２２−１は式（２２）の小行列に対応しているので，合成すれば行列Ｃの逆行列Ｃ−１が得られる。
【００９５】
（４）演算モジュールの概略説明
上記「（３）小行列分割法による一般逆行列演算装置の概略構成」で説明した一般逆行列演算装置の演算モジュールのうち，行列入出力モジュール３０２，３０４，行列乗算モジュール（Ａ）４０２ａの概略構成について，図５〜図９を参照しながら説明する。
【００９６】
＜図５：行列入出力モジュール＞
行列入出力モジュール３０２，３０４の一例の概略構成を図５に示す。行列入出力モジュール３０２，３０４は，図５に示したように，行列演算部（Ｉ）７０１と，小行列加算部７０２と，レジスタ７０３とを含んで構成されている。
【００９７】
本実施形態の行列乗算は全て２×２型行列を元にモジュール化を図ったものである。
【００９８】
行列入出力モジュール３０２，３０４は４×４型行列Ａ，Ｂの乗算Ａ×Ｂを行うが，直接４×４型行列の乗算を行うのではなく，２×２型行列演算モジュール分割して４×４型行列の乗算を行う。２つの４×４型行列Ａ，Ｂが式（１０）のように４分割できるとする。従って，４×４型行列Ａ，Ｂは式（２６）のように表せる。
【００９９】
【数２６】
2006229436.tif 000028
【０１００】
このとき，Ａ×Ｂは以下のように計算できる。
【０１０１】
まず，８つの２×２型小行列の乗算を行う。
【数２７】
2006229436.tif 000029
【０１０２】
次に以下の加算を行えば，Ｃ＝Ａ×Ｂの結果が得られる。
【０１０３】
【数２８】
2006229436.tif 000030
【０１０４】
行列入出力モジュール３０２の場合，Ａ＝ＨＨ，Ｂ＝Ｈと置いて，式（２７），式（２８）を用いて計算し，図３に示したように，４×４型行列Ｃを逆行列演算部３０３に出力する。
【０１０５】
図５は式（２７），式（２８）を実現する一例である。まず，行列乗算部（Ｉ）７０１で式（２７）の上段Ｆａａ，Ｆａｂ，Ｆｄｃ，Ｆｄｄを順番に計算してその結果をレジスタ７０３に記憶し，続いて式（２７）の下段，Ｆｂｃ，Ｆｂｄ，Ｆｃａ，Ｆｃｂを順番に計算し，得られた結果と式（２８）に従ってレジスタに記憶したＦａａ，Ｆａｂ，Ｆｄｃ，Ｆｄｄそれぞれとの加算を行えば，Ｃ１１，Ｃ１２，Ｃ２１，Ｃ２２の順に小行列が出力され，順次レジスタ７０３に記憶する。この結果，式（２８）の行列Ｃとなる。
【０１０６】
本実施形態では，小型化のため式（２７）の８個の２×２型行列乗算を８回に分けてシリアルに処理したが，装置規模が問題にならない場合は８個の行列乗算を並列に実行することで高速化を図るような構成も可能である。
【０１０７】
＜図６：行列乗算部（Ｉ）ブロック図＞
図５の行列乗算部（Ｉ）７０１は，２×２型行列の複素数同士の乗算を行う。行列乗算部（Ｉ）７０１は，例えば図６のような構成で実現できる。図６の行列乗算部（Ｉ）７０１は，複素数同士の乗算を行う８個の乗算器（Ｉ）１２０１ａ〜１２０１ｈと，レジスタ１２０２ａ〜１２０２ｈと，４個の加算部（Ｉ）１２０３ａ〜１２０３ｄとを含んで構成されている。
【０１０８】
＜図７：乗算器（Ｉ）ブロック図（複素数×複素数）＞
さらに，乗算器（Ｉ）１２０１ａ〜１２０１ｈは，図７の構成で複素数同士の乗算を行う。図７の乗算器（Ｉ）１２０１ａ〜１２０１ｈは，図７に示したように，４個の乗算器１３０１ａ〜１３０１ｄと，１個の減算器１３０２と，１個の加算器１３０３とを含んで構成されている。
【０１０９】
＜図８：加算部（Ｉ）ブロック図＞
図６の行列乗算部（Ｉ）の加算部（Ｉ）１２０３は，図８に示したように，２個の加算器１６０１，１６０２とを含んで構成されている。
【０１１０】
＜図９：行列乗算モジュール（Ａ）＞
行列乗算モジュール（Ａ）４０２ａ，４０２ｂは，複素数を要素にもつ２×２型行列同士の乗算を行う。行列乗算モジュール（Ａ）４０２ａ，４０２ｂは，例えば図９のような構成で実現できる。行列乗算部（Ｉ）８０１は上記行列乗算部（Ｉ）７０１と同じく複素数同士の乗算を行い，レジスタ８０２は得られた乗算結果を記憶する。
【０１１１】
本実施形態では乗算処理の遅延時間を考慮し，乗算器（Ｉ）１２０１ａ〜１２０１ｈは乗算結果をレジスタ１２０２ａ〜１２０２ｈに記憶しているので，図６の行列乗算部（Ｉ）の出力は１クロック分遅延することになる。この行列乗算部（Ｉ）７０１を用いた図９の行列乗算モジュール（Ａ）４０２ａ，４０２ｂは，行列乗算部（Ｉ）８０１での乗算結果をレジスタ８０２でラッチしているので，行列乗算モジュール（Ａ）４０２ａ，４０２ｂで２×２型行列同士の乗算を行った場合，合計２クロックの遅延が生じることになる。この結果，４×４型行列を演算するには，式（２７）から明らかなように，上記２×２型小行列の複素数同士の乗算が８回必要になる。
【０１１２】
高速処理が必要でない場合，乗算などの演算遅延が問題とならない場合はこれらレジスタ８０２を省略することもできる。
【０１１３】
（５）演算効率化を図った一般逆行列演算装置の概略構成
上記「（３）小行列分割法による一般逆行列演算装置の概略構成」〜「（４）演算モジュールの概略説明」で説明した一般逆行列演算装置を用いると，２×２型行列の演算モジュールを用いてＭｏｏｒｅ−Ｐｅｎｒｏｓｅ一般逆行列を計算できる。式（２４）の２×２型行列の逆行列演算装置について，図７に示す従来の複素数の乗算を行う乗算器（Ｉ）のみを用いた場合の実現例を図１０に示す。
【０１１４】
＜図１０：２×２型逆行列計算部ブロック図（乗算器（Ｉ）のみ使用）＞
２×２型逆行列計算部２９００は，図１０に示したように，乗算器（Ｉ）２９０１ａ，２９０１ｂと，レジスタ２９０２ａ，２９０２ｂと，減算部２９０３と，逆数演算部２９０４と，レジスタ２９０５と，乗算器（Ｉ）２９０６ａ，２９０６ｂ，２９０６ｃ，２９０６ｄと，符号反転部２９０７ａ，２９０７ｂとを含んで構成されている。乗算器（Ｉ）２９０１ａ，２９０１ｂ〜逆数演算部２９０４で式（２４）の２×２型行列の行列式の逆数を計算し，その結果を４要素（ｈ１２とｈ２１は符号反転）に対してそれぞれ乗算する。図１０では２×２型行列Ｃｘが入力し，逆行列Ｃｘ−１が得られることを示している。
【０１１５】
このように，図１０の演算は全て複素数で行っており，図１０の演算モジュールを用いた場合，全要素が複素数の行列あるいはエルミート行列共に１個の逆行列しか計算できない。
【０１１６】
そこで，行列の対角要素が実数，上三角とした三角要素が複素共役転置の関係にあるエルミート行列の特徴を踏まえて演算モジュールの効率化を図った場合の，一般逆行列演算装置の概略構成の一例について，チャンネル行列Ｈが４×４の場合を例に，図１１〜図１３を参照しながら説明する。本実施形態では，全要素が複素数の４×４型行列は１個の逆行列を，４×４型エルミート行列は２個の逆行列をそれぞれ計算することができる。
【０１１７】
＜図１１：チャンネル行列演算装置（II）ブロック図＞
チャンネル行列演算装置（II）５００は，図１１に示したように，レジスタ５０１と，行列入力モジュール５０２と，共役転置部５０３と，逆行列演算モジュール５０４と，行列乗算モジュール（Ｂ）５０５と，行列減算部５０６と，逆行列演算モジュール５０７と，行列乗算モジュール（Ａ）５０８と，行列出力モジュール５０９と，制御部５１０とを含んで構成されている。
【０１１８】
処理の流れは，上記「（３）小行列分割法による一般逆行列演算装置の概略構成」と同様であり，チャンネル行列Ｈがレジスタ５０１に入力すると，行列入力モジュール５０２で４×４型行列の乗算ＨＨ×Ｈを行い，逆行列演算モジュール５０４〜行列乗算モジュール（Ａ）５０８で小行列分割法によって行列Ｃの逆行列Ｃ−１を計算し，出力モジュール５０９でＣ−１×ＨＨを計算し一般逆行列Ｈ＋を出力する。制御部５１０は，チャンネル行列サイズ，ＳＮＲ推定値といったチャンネル情報に従って，逆行列演算の方式を決定し各ブロックの制御を行う。
【０１１９】
＜図１２：逆行列演算モジュールブロック図＞
図１１の逆行列演算モジュール５０４は，例えば図１２のように構成できる。逆行列演算モジュール５０４は，図１２に示したように，逆行列の計算を行う逆行列計算部１１０１と逆行列演算結果を記憶するレジスタ１１０２とを含んで構成されている。
【０１２０】
＜図１３：２×２型逆行列計算部ブロック図＞
２×２型逆行列計算部１１０１は，上記「（３）小行列分割法による一般逆行列演算装置の概略構成」で説明した，図４の２×２型行列のパラレル型逆行列演算部をモジュール化したものであり，例えば図１３のように構成することができる。
【０１２１】
２×２型逆行列計算部１１０１は，図１３に示したように，乗算器（II）６０１ａ，６０１ｂと，レジスタ６０２ａ，６０２ｂと，減算部６０３と，セレクタ６０４と，逆数演算部６０５と，レジスタ６０６と，乗算器（III）６０７ａ，６０７ｂと，乗算器（Ｉ）６０８ａ，６０８ｂと，符号反転部６０９ａ，６０９ｂとを含んで構成されている。２×２型行列の逆行列は式（２４）で計算できる。エルミート行列の場合，全要素が複素数の場合に比べて計算量を削減できる。本実施形態では全要素が複素数の場合と併用できるようにし，複素数×複素数の逆行列は１個，エルミート行列は２個同時に計算できるようなモジュール化を図っている。
【０１２２】
＜図１４：行列乗算モジュール（Ｂ）ブロック図＞
図１１のチャンネル行列乗算モジュール（Ｂ）５０５は，例えば図１４のように構成できる。チャンネル行列乗算モジュール（Ｂ）５０５は，図１４に示したように，セレクタＩ１００１と，行列乗算部（Ｉ）１００２と，レジスタ１００３と，セレクタ（II）１００４とを含んで構成されている。図９の行列乗算モジュール（Ａ）が２×２型行列の乗算Ａ×Ｂを行うのに対し，行列乗算モジュール（Ｂ）５０５はＡ×Ｂ×Ｃの乗算を行えるようにしたものである。
【０１２３】
（６）演算効率化を図った演算モジュールの概略説明
（６．１）行列入力モジュールの効率化
行列入力モジュール５０２は，上記「（４）演算モジュールの概略説明」で説明した図５の入出力モジュールとは異なり，４×４型行列ＨＨＨ用の乗算を行う。図５では行列乗算部（Ｉ）７０１を用いて２×２型小行列の乗算を行うが，乗算器は全て複素数用である。チャンネル行列Ｈは式（７）のように複素数を要素とした行列であるが，ＨＨＨの計算結果は式（８）のようにエルミート行列である。このことを利用すると，式（２７），式（２８）の４×４型行列の乗算はＡ＝ＨＨ，Ｂ＝Ｈとおくと，式（２７）の２×２型小行列の乗算は以下のようにＦａａ，Ｆｄｄ，Ｆｂｃ，Ｆｃｂの４つは出力がエルミート行列である。また，ＦａｂとＦｃａ，ＦｄｃとＦｂｄはそれぞれ共役転置の関係にあり，いずれかを計算すれば他方を得ることができる。ここでは，Ｆａｂ，Ｆｂｄを計算し，ＦｃｂとＦｂｄはそれぞれの共役転置で求める。
【０１２４】
【数２９】
2006229436.tif 000031
【０１２５】
これらを式（２８）に代入するとＨＨＨが求まる。この結果を行列Ｃとする。行列Ｃもまたエルミート行列である。
【０１２６】
＜図１５：行列乗算部（II）ブロック図＞
この結果，２×２型行列の乗算は図６のような８回行わなくても６個で済む。さらに，そのうち４個の出力がエルミート行列であることを利用すると，図５の行列乗算部（Ｉ）の代わりに，図１５のような行列乗算部（II）１９００で計算できる。図１５の乗算器は，複素数同士の乗算を行う乗算器（Ｉ）１９００ｃ，１９００ｄ，１９００ｇ，１９００ｈの外に，複素数同士の乗算，実数同士の２つの乗算を切り替えることができる図１６の乗算器（IV）１９００ａ，１９００ｂ，１９００ｅ，１９００ｆを備えている。
【０１２７】
＜図１６：乗算器（IV）ブロック図（入力行列乗算用）＞
乗算器（IV）１９００ａ，１９００ｂ，１９００ｅ，１９００ｆは，図１６に示したように，乗算器２００１ａ〜２００１ｄと，符号反転器２００２と，セレクタ２００３と，減算器２００４と，加算器２００５とを含んで構成されている。
【０１２８】
＜図１７：加算部（II）ブロック図＞
また，実数同士の２つの乗算を行う乗算器（IV）１９００ａ，１９００ｂ，１９００ｅ，１９００ｆの出力に接続されている加算部（II）１９０３ａ，１９０３ｃは，図１７に示したように，複素数同士の乗算を行う場合は２組の加算を，実数同士の乗算を行う場合は加算せず４本並列に出力するセレクタ２１０１ａ，２１０１ｂと，加算器２１０２，２１０３とを含んで構成されている。これらにより，出力がエルミート行列の場合は２系列の小行列の乗算，出力が複素数の場合は１系列の小行列の乗算を行うことができる。
【０１２９】
＜図１８：行列入力モジュールブロック図＞
図１８に行列乗算部（II）９０１を備えた行列入力モジュール５０２の一例の概略構成を示す。行列入力モジュール５０２は，図１８に示したように，行列乗算部（II）９０１と，共役転置部９０２と，小行列加算部９０３と，レジスタ９０４とを含んで構成されている。
【０１３０】
チャンネル行列Ｈとその共役転置行列ＨＨが行列乗算部（II）９０１に入力し，まず，式（２９）のＦａａ，Ｆｄｄ，Ｆａｂの２×２型行列の乗算を行って結果をレジスタ９０４に入力する。続いて行列乗算部（II）９０１で式（２９）のＦｂｃ，Ｆｃｂ，Ｆｄｂの２×２型行列の乗算を行い，式（２８）に従って小行列加算部９０３で行列加算を行う，その際，ＦｃａとＦｄｃは共役転置部９０２でそれぞれＦａｂとＦｂｃの共役転置を行った後，行列加算を行う。得られた４つの加算結果はレジスタ９０４で行列Ｃとして記憶する。
【０１３１】
本実施形態では乗算処理部の遅延時間を考慮し，行列乗算部（II）９０１では乗算結果をレジスタ９０４でラッチしているので，行列乗算部（II）９０１の出力は１クロック分遅延することになる。上記「（４）演算モジュールの概略説明」で説明した図５の行列入出力モジュール３０２，３０４は，図６の行列乗算部（Ｉ）７０１を用いてＨＨＨの乗算結果Ｃを得るのに２×２型行列の計算が８回必要であった。一方，図１８の行列入力モジュール５０２は，式（２９）のように小行列の乗算は６回でよく，さらに，図１５の行列乗算部（II）１９００，図１７の加算部（II）１９０３ａ，１９０３ｃを用いれば，式（２９）の出力がエルミート行列の場合は，２つの小行列を同時に処理できるので，小行列４回の計算でＨＨＨの乗算結果Ｃを求めることができる。
【０１３２】
（６．２）逆行列乗算モジュールの効率化
図１３に示した２×２型逆行列計算部１１０１は，行列要素が全て複素数の逆行列を１個，エルミート行列を２個同時に計算できる。２×２型行列の逆行列は式（２４）で計算できる。エルミート行列の場合はｈ１１とｈ２２が実数，ｈ１２とｈ２１は複素共役の関係にあるので，この特徴を利用することで，行列要素が全て複素数の場合に比べて処理の簡略化が図れる。
【０１３３】
（６．２．１）行列要素が全て複素数の場合
まず，行列要素が全て複素数の逆行列処理について，図１９〜図２３を参照しながら説明する。式（２４）より次式を求める。
【０１３４】
【数３０】
2006229436.tif 000032
【０１３５】
【数３１】
2006229436.tif 000033
【０１３６】
＜図１９：乗算器IIブロック図（逆行列計算用）＞
ｈ１１ｈ２２とｈ１２ｈ２１は複素数同士の乗算であり，それぞれ乗算器II６０１ａと乗算器II６０１ｂで計算する。乗算器II６０１ａ，６０１ｂは図１９のように構成されており，複素数×複素数のときは，図７の乗算器（Ｉ）と同じ動作となるように，４つの２：１セレクタ１４０４ａ，１４０４ｂ，１４０４ｃ，１４０４ｄがｘを選択するように制御する。得られた結果をそれぞれレジスタ６０２ａ，６０２ｂで記憶し，減算部６０３で差分をとる。
【０１３７】
＜図２０：減算部ブロック図＞
減算部６０３は，図２０に示したように，２個の減算器１７０１，１７０２を含んで構成されている。この減算結果より，式（３０）のｐとｑが得られ，セレクタ６０４はｙ２を選択するように制御し，逆数演算部６０５で式（３１）の計算を行う。
【０１３８】
＜図２１：逆数演算部ブロック図＞
逆数演算部６０５は，図２１のように構成され，４つの２：１セレクタ１７０４ａ，１７０４ｂ，１７０４ｃ，１７０４ｄがｘを選択するように制御する。この結果は行列式の逆数であり，レジスタ６０６に記憶した後，式（２４）のように２×２型行列の４つの要素との乗算，そのうち２要素は符号反転を行うことにより，２×２型行列の逆行列を求めることができる。
【０１３９】
＜図２２：乗算器（III）ブロック図＞
乗算器（III）６０７ａ，６０７ｂは，図２２のように構成され，セレクタ１５０３ａ〜１５０３ｆはｘを選択するように制御し，乗算器（Ｉ）と同じ複素数×複素数の乗算を行う。乗算部（Ｉ）６０８ａ，６０８ｂは，図１９のように構成され，複素数×複素数の乗算を行い逆行列の対角要素を出力する。符号反転部６０９ａ，６０９ｂは，乗算部（Ｉ）６０８ａ，６０８ｂから出力される複素数の符号を反転し，非対角要素を出力する。
【０１４０】
＜図２３：符号反転部ブロック図＞
符号反転部６０９ａ，６０９ｂは，図２３に示したように，２個の符号反転器１８０１，１８０２で構成される。
【０１４１】
（６．２．２）エルミート行列の場合
２×２型行列がエルミート行列の場合，式（３０）のｈ１１ｈ２２は実数同士，ｈ１２ｈ２１は複素数同士の乗算であり，それぞれ乗算器（II）６０１ａ，６０１ｂで計算する。乗算器（II）６０１ａ，６０１ｂは図１９のような構成で，４つの２：１セレクタ１４０４ａ，１４０４ｂ，１４０４ｃ，１４０４ｄがｙを選択するように制御する。この結果，以下の計算が実行され，上部出力より実数ｐが得られる。
【０１４２】
【数３２】
2006229436.tif 000034
【０１４３】
このｐは式（３０）のｐに相当し，エルミート行列の場合，出力は実数なので式（３０）のｑは出力する必要はない。
【０１４４】
このような処理を行う乗算器（II）６０１ａで式（１０）の２×２型エルミート行列Ａ１１のｐを，乗算器（II）６０１ｂで式（１０）の２×２型エルミート行列Ａ２２のｐを求め，この２個の実数をまとめてレジスタ６０２ａに記憶する。セレクタ６０４はｙ１を選択するように制御し，逆数演算部６０５は２個の実数の逆数の計算を行うように，図２１の４つの２：１セレクタ１７０４ａ，１７０４ｂ，１７０４ｃ，１７０４ｄがｙを選択するように制御する。これらＡ１１，Ａ２２の行列式の逆数をレジスタ６０６に記憶する。Ａ１１とＡ２２の逆行列もエルミート行列なので，Ａ１１の対角要素２個と非対角要素１個とレジスタ６０６に記憶したＡ１１行列式の逆数との乗算を計算すれば，Ａ１１の逆行列が得られる。
【０１４５】
乗算器（III）６０７ａはＡ１１の２個の対角要素（実数），乗算器（III）６０８ａはＡ１１の非対角要素（複素数）とＡ１１行列式の逆数との乗算をそれぞれ計算し，乗算器（III）６０８ａの出力を符号判定部６０９ａで符号反転することにより，Ａ１１の逆行列の要素３個が得られる。同様に，乗算器（III）６０７ｂはＡ２２の２個の対角要素，乗算器（III）６０８ｂはＡ２２の非対角要素とＡ１１行列式の逆数との乗算をそれぞれ計算し，乗算器（III）６０８ｂの出力を符号判定部６０９ｂで符号反転することにより，Ａ２２の逆行列の要素３個が得られる。
【０１４６】
（６．３）行列出力モジュールの効率化
図１１に示したチャンネル行列演算装置（II）５００において，行列入力モジュール５０２は，式（２９）のように対象となる２×２型小行列の出力に合わせて効率化を図ることができた。一方，行列出力モジュール５０９は，式（２８）の小行列乗算において，入力行列Ａはエルミート行列，入力行列Ｂは全要素が複素数の行列，出力行列Ａ×Ｂは全要素が複素数の行列となる。そのため入力行列Ａのエルミート行列の対角要素に関する改善しか図ることができない。
【０１４７】
効率化の一例として，演算処理器の削減がある。４×４型行列の乗算を２×２型小行列の乗算を行う場合，式（２７）より８個の小行列乗算が必要であるが，図５の行列入出力モジュール３０２を２個用いて並列処理すれば，８回の小行列乗算を４回の処理で実行できる。このとき，図５の行列入出力モジュール３０２を１個と，図２４の行列出力モジュール５０９を１個使用すれば，演算数を削減できる。
【０１４８】
＜図２４：行列出力モジュールブロック図＞
図２４の行列出力モジュール５０９は，行列乗算部（III）２５０１と，行列乗算部（Ｉ）２５０２と，小行列加算部２５０３と，レジスタ２５０４とを含んで構成されている。行列乗算部（III）２５０１で式（２７）のＦａａ，Ｆａｂ，Ｆｄｃ，Ｆｄｄを順次計算し，行列乗算部（Ｉ）２５０２でＦｂｃ，Ｆｂｄ，Ｆｃａ，Ｆｃｂを順次計算し，両者を加算することによって，式（２８）に示した４×４型行列の要素が得られる。
【０１４９】
＜図２５：行列乗算部（III）ブロック図［出力行列用：入力行列がエルミート行列用］＞
行列乗算部（III）２５０１は図２５のように構成できる。行列乗算部（III）２５０１は，図２５に示したように，乗算部Ｖ２３０１ａ，２３０１ｂと，乗算器（Ｉ）２３０２ａ〜２３０２ｄと，レジスタ２３０３ａ〜２３０３ｈと，複素加算部２３０４ａ〜２３０４ｄとを含んで構成されている。乗算器（Ｖ）２３０１ａ，２３０１ｂはエルミート行列の対角要素が実数であることを利用し，小行列の乗算時に必要な対角要素（実数）と２つの非対角要素（複素数）との乗算を２個同時に処理する。この出力は複素数であり，６個の乗算器出力は図５の行列乗算部（Ｉ）と同じく８個の複素数なので，レジスタ２３０３ａ〜２３０３ｈ以降の構成は図６の行列乗算部（Ｉ）７０１と同じ構成になっている。
【０１５０】
＜図２６：乗算器（Ｖ）ブロック図（出力行列乗算用）＞
乗算器（Ｖ）２３０１ａ，２３０１ｂは，図２６のように４個の乗算器で構成でき，図７の複素乗算器１２０１ａ〜１２０１ｈより簡略化できる。
【０１５１】
（７）演算処理タイミング例
上記「（１）チャンネル行列演算装置の概略構成」〜「（６）演算効率化を図った演算モジュールの概略説明」で説明したモジュールを用いた演算処理タイミング例について，図２７〜図２９を参照しながら説明する。
【０１５２】
本実施形態では，逆行列演算処理は以下のように（ａ）〜（ｈ）の８ステップで構成されるとする。
（ａ）Ｃの計算：４×４型行列の乗算  ２ｃｌｏｃｋ（小行列単位）
（ｂ）Ｃ−１の計算：２×２型行列の逆行列演算  ３ｃｌｏｃｋ
（ｃ）Ｃ−１の計算：２×２型行列の乗算  ２ｃｌｏｃｋ
（ｄ）Ｃ−１の計算：２×２型行列の乗算     ２ｃｌｏｃｋ
（ｅ）Ｃ−１の計算：２×２型行列の減算     １ｃｌｏｃｋ
（ｆ）Ｃ−１の計算：２×２型行列の逆行列演算  ２ｃｌｏｃｋ
（ｇ）Ｃ−１の計算：２×２型行列の乗算  ２ｃｌｏｃｋ
（ｈ）Ｈ＋の計算：４×４型行列の乗算  ２ｃｌｏｃｋ（小行列単位）
【０１５３】
通常の逆行列演算は（ｂ）〜（ｇ）で処理し，入力するチャンネル行列Ｈ＝Ｃと置き換え，行列Ｃの逆行列Ｃ−１を求める。得られた結果がチャンネル行列Ｈの逆行列となる。一般逆行列は（ａ）〜（ｈ）で処理し，入力するチャンネル行列Ｈの一般逆行列Ｈ＋を求める。このとき，（ａ）と（ｈ）は入力行列Ｈのサイズによって以下のように異なる。
【０１５４】
列数≧行数の場合：（ａ）Ｃ＝ＨＨＨ，（ｈ）Ｈ＋＝ＣＨＨ
列数＜行数の場合：（ａ）Ｃ＝ＨＨＨ，（ｈ）Ｈ＋＝ＨＨＣ
【０１５５】
＜図２７：４×４型Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列処理タイミングチャート＞
図２７に一般逆行列演算のタイミングチャートを示す。（ａ）〜（ｈ）の処理クロック数は図１〜図２６の構成例を用いた場合のレジスタでのラッチ回数を遅延時間として換算した場合の一例である。そのため，高速化を図るために並列処理数を増やした場合，高速デバイスを用いた場合など設計仕様に応じて処理クロック数を変えることは可能である。
【０１５６】
（７．１）逆行列演算のタイミング例
＜図２８：４×４型Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列演算タイミング図（図３のチャンネル行列演算装置（Ｉ）使用）＞
図２８は図３のチャンネル行列演算装置（Ｉ）３００を用いてＭｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列演算の４×４型逆行列演算を行う場合のタイミングチャート例である。この場合，行列入出力モジュール３０２でＣ＝ＨＨＨ，行列入出力モジュール３０４でＨ＋＝ＨＨＣ−１の４×４型行列の乗算を行う。この行列入出力モジュールは図５のように構成されており，式（２７）に従って８個の２×２型行列の乗算をパイプライン化して行う。そのため，行列入出力モジュール３０２，３０４共に９クロック分の処理が必要になる。逆行列演算は１２クロックで処理を行う。この結果，計１２クロックでチャンネル行列Ｈの逆行列を計算する。これを５２サブキャリア分演算するので全処理クロック数は４３８クロックとなる。
【０１５７】
＜図２９：４×４型Ｍｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列演算タイミング図（図１１のチャンネル行列演算装置（II）使用）＞
図２９は，図１１のチャンネル行列演算装置（II）５００を用いてＭｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列演算の４×４型逆行列演算を行う場合のタイミングチャート例である。この場合，行列入力モジュール５０２は，図１８のように構成されており，式（２９）に従ってＣ＝ＨＨＨの４×４型行列の乗算を行う。また，行列出力モジュール５０９は図２４のように構成されており，式（２７）に従ってＨ＋＝ＨＨＣ−１の４×４型行列の乗算を行う。これらを用いると，上記「（６．１）行列入力モジュールの効率化」〜「（６．３）行列出力モジュールの効率化」で説明したように４回の処理で４×４型行列の乗算を行うことができ，パイプライン化することで，行列入出力モジュール３０２，３０４共に５クロック分の処理が必要になる。逆行列演算は１７クロックで処理を行う。この結果，計２７クロックでチャンネル行列Ｈの逆行列を計算する。これを５２サブキャリア分演算するので全処理クロック数は図２９のように３３３クロックとなる。
【０１５８】
ここでは，図３のチャンネル行列演算装置（Ｉ）と図１１のチャンネル行列演算装置（II）のタイミングチャートを例に示した。装置規模や処理速度に合わせて装置構成を変更することは可能である。例えば，図１１のチャンネル行列演算装置（II）について，高速化を図るためには（ｃ），（ｄ）の処理を行う行列乗算モジュール（Ｂ）を並列化するなどの構成が考えられる。
【０１５９】
また，図１１のチャンネル行列演算装置（II）において，逆行列演算モジュール５０４と逆行列演算モジュール５０７とが同じ構成なので，装置の小型化を図る場合，共通化して時分割処理を行うといった構成が考えられる。また，図６の行列乗算部（Ｉ）などで使用している乗算器（Ｉ）などの複素数の乗算器は未使用のタイミングであれば，他の処理での併用も可能である。
【０１６０】
（８）逆行列演算の効率化例
（８．１）正方行列以外の逆行列演算
これまでの実施形態では，４×４型正方行列のＭｏｏｒｅ−Ｐｅｎｒｏｓｅ型一般逆行列の処理について説明した。無線ＬＡＮのＭＩＭＯシステムを用いたＯＦＤＭ送受信装置では，送受信アンテナ数が４本以下も検討されている。４×４型以下の正方行列以外の逆行列はＭｏｏｒｅ−Ｐｅｎｒｏｓｅ一般逆行列で求めた近似解である。上記「（７）演算処理タイミング例」の逆行列演算処理では，ステップ（ａ）の行列乗算結果は行と列の小さい方のサイズをもつ正方行列となる。逆行列演算（ｂ）〜（ｇ）はこの正方行列の逆行列を計算し，（ｈ）の行列乗算結果は元のチャンネル行列Ｈと行数と列数を入れ換えたサイズをもつ行列になる。
【０１６１】
（８．２）４×４型行列以外の逆行列演算
送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変の場合，チャンネル行列Ｈは４×４型，３×３型，２×２型行列の正方行列が存在することになる。４×４型行列の逆行列演算装置例はこれまで説明してきた。
【０１６２】
３×３型正方行列の場合，式（１２）のように小行列分割を行う。図１１のチャンネル行列演算装置（II）を用いると，小行列Ａ１１が２×２型，Ａ１２が１×２型，Ａ２１が２×１型，Ａ２２をスカラとして扱えばよい。そのため４×４型行列に比べて処理量が削減できる。例えば，図１３の逆行列計算はＡ１１とＡ２２の各小行列の逆行列演算が必要であるが，Ａ２２はスカラなので単に逆数を求めればよい。この処理はＡ２２計算の際，乗算器（II）６０１ａ，６０１ｂ〜減算部６０３の処理は行わず，セレクタ６０４でｘに入力するＡ２２を選択し，逆数演算部６０５で逆数を計算することによって実現できる。
【０１６３】
２×２型正方行列の場合，２×２型小行列Ａ１１のみ存在すると見なせばよく，図１１のチャンネル行列演算装置（II）を用いた場合，Ａ１１に関する処理のみ行えばよい。
【０１６４】
正方行列以外の場合，式（１４）〜式（２１）のように小行列に分割し，上記「（７）演算処理タイミング例」の逆行列演算処理でステップ（ａ）の行列乗算を行うと，３×３型，２×２型いずれかの正方行列となる。この正方行列について上記のように逆行列を計算する。その結果をステップ（ｈ）で行列乗算を行うと，元のチャンネル行列Ｈと行数と列数を入れ換えたサイズをもつＭｏｏｒｅ−Ｐｅｎｒｏｓｅ一般逆行列Ｈ＋が計算できる。
【０１６５】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明はかかる例に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【０１６６】
本発明は，多重アンテナを使用したワイヤレス無線通信システムにおいて，送受信アンテナがＭ×Ｎ（Ｍ，Ｎ＝２，３，４）で可変サイズの伝送チャンネルを備えたＭＩＭＯ−ＯＦＤＭ送受信装置のチャンネル行列演算に関する技術として利用可能であり，チャンネル行列演算装置およびチャンネル行列演算方法，並びにその関連技術として利用可能である。
【図面の簡単な説明】
【０１６７】
【図１】４×４ＭＩＭＯ−ＯＦＤＭ送信装置の説明図である。
【図２】４×４ＭＩＭＯ−ＯＦＤＭ受信装置の説明図である。
【図３】チャンネル行列演算装置（Ｉ）の説明図である。
【図４】パラレル型逆行列演算部の説明図である。
【図５】行列入出力モジュールの説明図である。
【図６】行列乗算部（Ｉ）の説明図である。
【図７】乗算器（Ｉ）の説明図である。
【図８】加算部（Ｉ）の説明図である。
【図９】行列乗算モジュール（Ａ）の説明図である。
【図１０】２×２型逆行列計算部の説明図である。
【図１１】チャンネル行列演算装置（II）の説明図である。
【図１２】逆行列演算モジュールの説明図である。
【図１３】２×２型逆行列計算部の説明図である。
【図１４】行列乗算モジュール（Ｂ）の説明図である。
【図１５】行列乗算部（II）の説明図である。
【図１６】乗算器（IV）の説明図である。
【図１７】加算部（II）の説明図である。
【図１８】行列入力モジュールの説明図である。
【図１９】乗算器（II）の説明図である。
【図２０】減算部の説明図である。
【図２１】逆数演算部の説明図である。
【図２２】乗算器（III）の説明図である。
【図２３】符号反転部の説明図である。
【図２４】行列出力モジュールの説明図である。
【図２５】行列乗算部（III）の説明図である。
【図２６】乗算器（Ｖ）の説明図である。
【図２７】逆行列処理タイミング図の説明図である。
【図２８】４×４型のＭｏｏｒｅ−ｐｅｎｒｏｓｅ一般逆行列演算タイミング（図３のチャンネル行列演算装置（Ｉ）使用）を示す説明図である。
【図２９】４×４型のＭｏｏｒｅ−ｐｅｎｒｏｓｅ一般逆行列演算タイミング（図５のチャンネル行列演算装置（II）使用）を示す説明図である。
【符号の説明】
【０１６８】
３００  チャンネル行列演算装置（Ｉ）
３０１  共役転置部
３０２  行列入出力モジュール
３０３  逆行列演算部
３０４  行列入出力モジュール
４０１ａ，４０１ｂ  逆行列処理部（第１の逆行列演算部）
４０２ａ，４０２ｂ  行列乗算モジュール（Ａ）
４０３ａ，４０３ｂ  行列乗算モジュール（Ａ）
４０４ａ，４０４ｂ  行列減算モジュール
４０５ａ，４０５ｂ  逆行列処理部（第２の逆行列演算部）
４０６ａ，４０６ｂ  行列乗算モジュール（Ａ）
５００  チャンネル行列演算装置（II）
５０１  レジスタ
５０２  行列入力モジュール
５０３  共役転置部
５０４  逆行列乗算モジュール
５０５  行列乗算モジュール
５０６  行列減算部
５０７  逆行列乗算モジュール
５０８  行列乗算モジュール（Ａ）
５０９  行列出力モジュール
５１０  制御部
【図１】
2006229436.tif 000035
【図２】
2006229436.tif 000036
【図３】
2006229436.tif 000037
【図４】
2006229436.tif 000038
【図５】
2006229436.tif 000039
【図６】
2006229436.tif 000040
【図７】
2006229436.tif 000041
【図８】
2006229436.tif 000042
【図９】
2006229436.tif 000043
【図１０】
2006229436.tif 000044
【図１１】
2006229436.tif 000045
【図１２】
2006229436.tif 000046
【図１３】
2006229436.tif 000047
【図１４】
2006229436.tif 000048
【図１５】
2006229436.tif 000049
【図１６】
2006229436.tif 000050
【図１７】
2006229436.tif 000051
【図１８】
2006229436.tif 000052
【図１９】
2006229436.tif 000053
【図２０】
2006229436.tif 000054
【図２１】
2006229436.tif 000055
【図２２】
2006229436.tif 000056
【図２３】
2006229436.tif 000057
【図２４】
2006229436.tif 000058
【図２５】
2006229436.tif 000059
【図２６】
2006229436.tif 000060
【図２７】
2006229436.tif 000061
【図２８】
2006229436.tif 000062
【図２９】
2006229436.tif 000063