(57)【特許請求の範囲】
【請求項１】
複数の受信アンテナにおいて受信された、複数の送信アンテナからの通信を検出するためのシステムであって、前記送信アンテナの各々は、コンステレーション内の複数のシンボルを送信し、
前記システムは、
スフィア検出器モジュールを含む受信器を備え、
前記スフィア検出器モジュールは、結果を要求するための終了信号に応答し、
前記スフィア検出器モジュールは、前記結果を要求する前記終了信号に応答して深さ優先探索が終了するまで、深さ優先探索を実行し、
前記スフィア検出器モジュールは、前記受信アンテナにおいて受信された通信に応答して、少なくとも１つのリーフレベルのノードの個別距離を評価する深さ優先探索を実行し、
前記スフィア検出器モジュールは、個別距離に応答して、少なくとも１つのノードから前記結果を選択する深さ優先探索を実行し、
前記受信器は、前記深さ優先スフィア検出器モジュールが各通信を処理する用意ができるまで一連の通信をキューに入れ、
前記キューがほぼいっぱいになったことに応答して、前記キューは、前記終了信号をアサートして解を一致させるための探索を終了し、
前記結果は、前記リーフレベルの少なくとも１つのノードのうちの選択されたノードを含み、
前記送信アンテナの各々について、前記選択されたノードは、前記コンステレーション内の前記シンボルの対応する１つを識別し、前記シンボルは前記送信アンテナによって送信されたものとして検出される、システム。
【請求項２】
前記スフィア検出器モジュールは、前記リーフレベルにおいてすでに評価された各ノードの個別距離の現在の境界値を維持する深さ優先探索を実行し、
前記スフィア検出器モジュールは、前記現在の境界値を超える前記ノードの距離の評価に応答してノードを削除する深さ優先探索を実行する、請求項１に記載のシステム。
【請求項３】
前記スフィア検出器モジュールは、前記リーフレベルの少なくとも１つのノードを含む複数のノードのツリーの深さ優先探索を実行し、
前記ノードは、ルートレベルで開始し前記リーフレベルで終了するレベルのシーケンスに配列され、
前記ルートレベルを除く前記レベルの各々は、前記送信アンテナのそれぞれの１つに対応し、
前記シーケンスにおける前記レベルの連続する第１および第２の各レベルについて、前記第２のレベルは、前記第１のレベルにおける各ノードおよび前記コンステレーション内の各シンボルの各対についての、前記ノードのそれぞれの１つを含み、
前記スフィア検出器モジュールは、前記ツリーの前記ルートレベルのノードのうちのルートノードにおいて開始する深さ優先探索を実行する、請求項１または２に記載のシステム。
【請求項４】
前記スフィア検出器モジュールジュールは、予め定められた順序で前記ツリーのレベルのノードを訪れる深さ優先探索を実行し、
前記予め定められた順序は、前記リーフレベルにおいてすでに評価されたノードの個別距離の現在の境界値を超える距離を用いて、前記予め定められた順序におけるノードの距離を評価することに応答して削除を受ける、請求項３に記載のシステム。
【請求項５】
前記スフィア検出器モジュールは、前記リーフレベルの複数のノードの個別距離を同時に評価する深さ優先探索を実行する、請求項１〜４のいずれか１項に記載のシステム。
【請求項６】
前記結果を要求する前記終了信号に応答して、前記スフィア検出器モジュールは、前記選択されたノードを含む結果を選択する深さ優先探索を完了し、
前記選択されたノードは、最低値の個別距離を有する少なくとも１つのノードからのノードである、請求項１〜５のいずれか１項に記載のシステム。
【請求項７】
前記リーフレベルの前記少なくとも１つのノードの個別距離を評価する前に、前記スフィア検出器モジュールが前記終了信号を受信したことに応答して、前記スフィア検出器モジュールは、前記リーフレベルの唯一のノードである前記少なくとも１つのノードの評価の後に終了する深さ優先探索を実行し、前記スフィア検出器モジュールは、前記選択されたノードである前記結果を選択する深さ優先探索を完了し、前記選択されたノードは１つのノードである、請求項１〜６のいずれか１項に記載のシステム。
【請求項８】
前記結果を要求する前記終了信号に応答して、前記スフィア検出器モジュールは、前記少なくとも１つのノードからの複数のノードを選択する深さ優先探索を完了し、
前記複数のノードは、より低い値の個別距離を有する、制限された数の前記少なくとも１つのノードであり、
前記結果は、前記複数のノードであり、かつ前記選択されたノードを含む、請求項１〜７のいずれか１項に記載のシステム。
【請求項９】
前記リーフレベルの前記少なくとも１つのノードの個別距離を評価後であって、目標数の前記複数のノードの個別距離を評価する前に、前記スフィア検出器モジュールが前記終了信号を受信したことに応答して、前記スフィア検出器モジュールは、前記少なくとも１つのノードである前記結果を選択する深さ優先探索を完了し、
前記制限された数は、前記少なくとも１つのノードの数であり、かつ前記制限された数は前記目標数よりも少ない、請求項８に記載のシステム。
【請求項１０】
前記スフィア検出器モジュールは、より低い値の個別距離を有する前記制限された数の前記少なくとも１つのノードの範囲内の、個別距離の最高値である現在の境界値を維持する深さ優先探索を実行し、
前記スフィア検出器モジュールは、前記現在の境界値を超えるノードの距離を評価することに応答してノードを削除する深さ優先探索を実行する、請求項８または９に記載のシステム。
【請求項１１】
前記結果を要求する前記終了信号の受信の前に、前記スフィア検出器モジュールが前記リーフレベルのすべてのノードについての個別距離を評価したことに応答して、前記スフィア検出器モジュールは深さ優先探索を完了するとともに、前記結果を要求する前記終了信号に応答して前記結果を後に提供するキューに前記結果を加え、
前記スフィア検出器モジュールは、前記受信アンテナにおいて受信された他の通信に応答して、前記リーフレベルの少なくとも１つのノードの個別距離を評価する、他の深さ優先探索の実行を開始する、請求項１〜１０のいずれか１項に記載のシステム。
【請求項１２】
前記スフィア検出器モジュールは、前記リーフレベルにおいてすでに評価されたノードの個別距離の現在の境界値を維持する深さ優先探索を実行し、
前記スフィア検出器モジュールは、前記現在の境界値を超えるノードの距離を評価することに応答してノードを削除する深さ優先探索を実行し、それによって、前記現在の境界値を超える個別距離を有するように、削除された前記ノードから下位の前記リーフレベルのノードが評価される、請求項１１に記載のシステム。
【請求項１３】
複数の受信アンテナで受信された、複数の送信アンテナからの一連の通信を検出するための方法であって、
前記送信アンテナの各々は、コンステレーション内の複数のシンボルのうちの１つを送信し、
前記方法は、
前記受信アンテナにおいて受信された前記一連の通信の一連の表現を入力するステップと、
深さ優先スフィア検出器が各通信を処理する用意ができるまで、前記一連の表現をキューに入れ、
前記コンステレーション内の複数の組み合わせのシンボルに対応する複数のリーフノードを含むリーフレベルを有するツリーの深さ優先探索を実行するステップとを備え、
深さ優先探索を実行するステップは、前記受信アンテナにおいて受信した前記通信の表現に応答して、前記ツリーの前記リーフレベルの少なくとも１つのノードの個別距離を評価するステップを含み、
各リーフノードの個別距離は、前記送信アンテナが前記リーフノードの前記組み合わせのシンボルを送信した可能性を示し、
前記方法は、
前記キューがほぼいっぱいになると、終了信号をアサートして解を一致させるための探索を終了するとともに結果を要求するステップと、
前記結果を要求する前記終了信号に応答して深さ優先探索の実行を終了するステップと、
個別距離に応答して、少なくとも１つのリーフノードから、前記結果を選択するステップとをさらに備え、
前記結果は、前記リーフレベルの前記少なくとも１つのリーフノードの選択されたリーフノードを含み、
前記方法は、
前記送信アンテナによって送信されたものとして検出された前記シンボルを用いて、各送信アンテナについての前記コンステレーション内の前記シンボルの１つを識別する、前記選択されたリーフノードを含む結果を出力するステップをさらに含む、方法。
【請求項１４】
請求項１３に記載の前記方法を実現するためのコンピュータプログラムを備える、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の背景
本発明は、概して、ワイヤレス通信に関し、より特定的には、空間的に多重化されたワイヤレス通信に関する。
【背景技術】
【０００２】
背景
データは、送信アンテナと受信アンテナとの間で電磁的に伝達され、送信器はデータをシンボルコンステレーションから選択されたシンボルのシーケンスにエンコードする。送信アンテナはシンボルを送信し、受信アンテナはそのシンボルを受信する。
【０００３】
ノイズおよび反射からの干渉は、受信アンテナによって受信されたシンボルを破損させる。最尤検出器について、受信器は、受信信号をコンステレーション内のすべてのシンボルについての期待される受信信号と比較し得る。実際の受信信号に最も近く一致する期待される受信信号が、検出シンボルを提供する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
電磁通信のデータ転送速度は、複数の送信アンテナから並列に複数のシンボルを送信することによって増加する。複数の送信シンボルの検出は、複数の受信アンテナでシンボルを受信することによって改善する。
【０００５】
複数の送信アンテナを用いる最尤検出については、並列に送信されるシンボルの可能性のある組み合わせの数は、送信アンテナの数の累乗までにのぼる。すべての可能性のある組み合わせの評価は、高次の変調および非常に多くのアンテナのために実行不可能である。
【０００６】
本発明は、上記の課題の１つまたはより多くに対処し得る。
【課題を解決するための手段】
【０００７】
要約
さまざまな実施形態は、受信アンテナで受信された送信アンテナからの通信を検出するためのシステムを提供する。各送信アンテナは、コンステレーション内のシンボルを送信する。スフィア検出器は、スフィア検出器からの結果を要求する終了信号に応答して深さ優先探索が終了するまで、深さ優先探索を実行する。深さ優先探索は、受信アンテナにおいて受信された通信に応答して、１つまたはより多くのリーフノードの個別距離を評価する。深さ優先探索は、個別距離に応答してこれらのノードからの結果を選択する。結果は、各送信アンテナについて、コンステレーション内の対応するシンボルを識別する選択されたリーフノードを含み、このシンボルは送信アンテナによって送信されたものとして検出される。
【０００８】
いくつかの実施形態においては、スフィア検出器モジュールは、リーフレベルにおいてすでに評価された各ノードの個別距離の現在の境界値を維持する深さ優先探索を実行し、スフィア検出器モジュールは、現在の境界値を超えるノードの距離の評価に応答してノードを削除する深さ優先探索を実行し得る。
【０００９】
いくつかの実施形態においては、スフィア検出器モジュールは、リーフレベルの少なくとも１つのノードを含む複数のノードのツリーの深さ優先探索を実行し得る。ノードは、ルートレベルで開始しリーフレベルで終了するレベルのシーケンスに配列され、ルートレベルを除くレベルの各々は、送信アンテナのそれぞれの１つに対応する。シーケンスにおけるレベルの連続する第１および第２の各レベルについて、第２のレベルは、第１のレベルにおける各ノードおよびコンステレーション内の各シンボルの各対についての、ノードのそれぞれの１つを含み、スフィア検出器モジュールは、ツリーのルートレベルのノードのうちのルートノードにおいて開始する深さ優先探索を実行し得る。
【００１０】
いくつかの実施形態においては、スフィア検出器モジュールジュールは、予め定められた順序でツリーのレベルのノード訪れる深さ優先探索を実行し得、予め定められた順序は、リーフレベルにおいてすでに評価されたノードの個別距離の現在の境界値を超える距離を用いて、予め定められた順序におけるノードの距離を評価することに応答して削除を受ける。
【００１１】
いくつかの実施形態においては、スフィア検出モジュールは、リーフレベルの複数のノードの個別距離を同時に評価する深さ優先探索を実行し得る。
【００１２】
いくつかの実施形態においては、結果を要求する終了信号に応答して、スフィア検出モジュールは、選択されたノードを含む結果を選択する深さ優先探索を完了し得、選択されたノードは、最低値の個別距離を有する少なくとも１つのノードからのノードである。
【００１３】
いくつかの実施形態においては、リーフレベルの少なくとも１つのノードの個別距離を評価する前に、スフィア検出モジュールが終了信号を受信したことに応答して、スフィア検出モジュールは、リーフレベルの唯一のノードである少なくとも１つのノードの評価の後に終了する深さ優先探索を実行し得る。スフィア検出モジュールは、選択されたノードである結果を選択する深さ優先探索を完了し得、選択されたノードは１つのノードである。
【００１４】
いくつかの実施形態においては、結果を要求する終了信号に応答して、スフィア検出モジュールは、少なくとも１つのノードからの複数のノードを選択する深さ優先探索を完了し得る。複数のノードは、より低い値の個別距離を有する、制限された数の少なくとも１つのノードである。結果は、複数のノードであり、かつ選択されたノードを含む。
【００１５】
いくつかの実施形態においては、リーフレベルの少なくとも１つのノードの個別距離を評価後であって、目標数の複数のノードの個別距離を評価する前に、スフィア検出モジュールが終了信号を受信したことに応答して、スフィア検出モジュールは、少なくとも１つのノードである結果を選択する深さ優先探索を完了し得る。制限された数は、少なくとも１つのノードの数であり、かつ制限された数は目標数よりも少ない。スフィア検出モジュールは、より低い値の個別距離を有する制限された数の少なくとも１つのノードの範囲内の、個別距離の最高値である現在の境界値を維持する深さ優先探索を実行し得る。スフィア検出モジュールは、現在の境界値を超えるノードの距離を評価することに応答してノードを削除する深さ優先探索を実行し得る。
【００１６】
いくつかの実施形態においては、結果を要求する終了信号の受信の前に、スフィア検出モジュールがリーフレベルのすべてのノードについての個別距離を評価したことに応答して、スフィア検出モジュールは、深さ優先探索を完了するとともに、キューに結果を加え得る。キューは、結果を要求する終了信号に応答して結果を後に提供し、スフィア検出モジュールは、受信アンテナにおいて受信された他の通信に応答して、リーフレベルの少なくとも１つのノードの個別距離を評価する、他の深さ優先探索の実行を開始し得る。
【００１７】
いくつかの実施形態においては、スフィア検出モジュールは、リーフレベルにおいてすでに評価されたノードの個別距離の現在の境界値を維持する深さ優先探索を実行し得る。スフィア検出モジュールは、現在の境界値を超えるノードの距離を評価することに応答してノードを削除する深さ優先探索を実行し得、それによって、現在の境界値を超える個別距離を有するように、削除されたノードから下位のリーフレベルのノードが評価される。
【００１８】
さまざまな他の実施形態は、受信アンテナで受信された送信アンテナからの通信を検出するための方法を提供する。各送信アンテナは、コンステレーション内のシンボルを送信する。受信アンテナで受信された通信についての表現が入力される。結果を要求するための終了信号が入力される。通信についてのツリーの深さ優先探索が実行され、深さ優先探索は、通信の表現に応答して、ツリーの１つまたはより多くのリーフノードの個別距離を評価することを含む。結果を要求する終了信号に応答して、深さ優先探索が終了される。個別距離に応答して、１つまたはより多くのリーフノードから結果が選択される。結果は、各送信アンテナについて、コンステレーションにおける対応するシンボルを識別する、選択されたリーフノードを含む。選択されたリーフノードから、送信アンテナによって送信されたものとして選択されたシンボルを含む結果が出力される。
【００１９】
さまざまな他の実施形態が、以下の詳細な説明および特許請求の範囲に記載されることが理解されるであろう。
【００２０】
さまざまな局面および利点は、以下の詳細な説明の検討および図面の参照によって明らかになるであろう。
【図面の簡単な説明】
【００２１】
【図１】さまざまな実施形態に従う、送信器の送信アンテナと受信器の受信アンテナとの間で通信するためのシステムのデータフロー図である。
【図２】さまざまな実施形態に従う、受信アンテナで受信された通信を検出するためのプロセスのフロー図である。
【図３】さまざまな実施形態に従う、終了されるまで深さ優先探索がされるツリーのグラフである。
【図４】さまざまな実施形態に従う、通信されたシンボルを決定するためのプロセスのフロー図である。
【図５】さまざまな実施形態に従う、送信アンテナと受信アンテナとの間で通信するためのシステムのブロック図である。
【発明を実施するための形態】
【００２２】
詳細な説明
図１は、さまざまな実施形態に従う、送信器１１０の送信アンテナ１０２，１０４，１０６，１０８と、受信器１２０の受信アンテナ１１２，１１４，１１６，１１８との間で通信するためのシステムのデータフロー図である。
【００２３】
送信器１１０は、シンボルの組１２４および１２６を含むデータストリーム１２２を入力する。通信１２８において、送信器１１０は、シンボル１３２，１３４，１３６，１３８の組１２４を送信する。通信１３０において、送信器１１０は、４つのシンボル（図示せず）も含む組１２６を送信する。組１２４についての通信１２８について、アンテナ１０２はシンボル１３２を送信し、アンテナ１０４はシンボル１３４を送信し、アンテナ１０６はシンボル１３６送信し、アンテナ１０８はシンボル１３８を送信する。送信器１１０は、各通信１２８および１３０の間に、アンテナ１０２、１０４，１０６，１０８の各々からの個別のシンボルを送信する。
【００２４】
通信１２８について、受信器１２０は、受信アンテナ１１２，１１４，１１６，１１８の各々において、送信されたシンボル１３２，１３４，１３６，１３８の加重和を受信する。したがって、通信１２８のシンボルは、送信アンテナ１０２，１０４，１０６，１０８と、受信アンテナ１１２，１１４，１１６，１１８との間で、空間的に多重化される。深さ優先スフィア検出器モジュール１４０は、通信１２８および１３０における空間的に多重化されたシンボルを検出する。
【００２５】
一実施形態においては、深さ優先スフィア検出器１４０は、検出候補のリスト１４４および１４６を含む検出結果のストリームを生成する。リスト１４４は、送信データ１２２の組１２４についての、１つまたはより多くの選択されたソリューションノード１４８および１５０を含み、リスト１４６は、送信データ１２２の組１２６についての１つまたはより多くの選択されたソリューションノードを含む。選択されたソリューションノード１４８のシンボル１５２，１５４，１５６，１５８は、送信データ１２２の個別のシンボル１３２，１３４，１３６、１３８におそらく一致し、選択されたソリューションノード１５０のシンボルは、組１２４のこれらの送信シンボル１３２，１３４，１３６、１３８については、いくらか一致しそうにない。
【００２６】
受信アンテナ１１２，１１４，１１６，１１８で受信された通信１２８におけるノイズは、いくらか一致しそうにないノード１５０を、送信シンボルについての実際の一致にする。したがって、順方向誤り訂正コードの検査のようなさらなる処理が、よりもっともらしい代替的なソリューションノード１４８および１５０の間で選択する。
【００２７】
他の実施形態においては、深さ優先スフィア検出器１４０は検出結果１４２の類似のストリームを生成するが、各リスト１４４および１４６は、リスト１４４の選択されたノード１４８のような、単一の選択されたノードのみを含む。したがって、深さ優先スフィア検出器１４０は、選択されたソリューションノード１４８のシンボル１５２，１５４，１５６，１５８が、送信データの組１２４のシンボル１３２，１３４，１３６，１３８に一致することを検出する。
【００２８】
さまざまな実施においては、深さ優先スフィア検出器１４０は、すべての可能性のある一致する解が検討されるまで、または一致する解についての探索がライン１６０上の終了信号によって終了されるまで、可能性のある解を評価する。
【００２９】
一実施形態においては、受信器１２０は、深さ優先スフィア検出器１４０が、各通信を処理する用意ができるまで、一連の通信１２８および１３０をキューに入れる。深さ優先スフィア検出器１４０が、通信１２８および１３０を、これらの通信の到来速度よりも遅く処理している場合には、キューがいっぱいになる。キューがいっぱいになりそうになると、キューは、終了信号１６０をアサートして、一致する解の探索を終了する。これは、深さ優先スフィア検出器１４０について、キューが決してオーバフローしないように、通信１２８および１３０を処理する速度を増加する。
【００３０】
送信アンテナ１０２，１０４，１０６，１０８と受信アンテナ１１２，１１４，１１６，１１８との間の通信チャンネルについてのモデルは、以下のように現される。
【００３１】
ｙ＝Ｈｓ＋ｎ
ここで、Ｈは、Ｎ個の受信アンテナとＭ個の送信アンテナとの間の、Ｎ×Ｍのチャンネル行列であり、ｓは送信アンテナから送信されたＭ個のシンボルの列ベクトルであり、ｎはＮ個の受信ノイズ成分の列ベクトルであり、ｙは受信アンテナで受信されたＮ個の信号の列ベクトルである。列ベクトルｓにおけるＭ個の送信シンボルの各々は、ｗ個のシンボルの次数を有するコンステレーションからのシンボルである。
【００３２】
一実施形態においては、チャンネル行列は、三角行列に分解される。三角行列は、チャンネル行列のＱＲ分解からの上三角行列である。送信されたシンボルの検出は、以下の距離ノルムを最小化する、列ベクトルｓにおけるＭ個のシンボルを決定することを含む。
【００３３】
【数１】
0005373967.tif 000002
【００３４】
ここで、Ｈ＝ＱＲ、ＱＱH＝Ｉ、およびｙ’＝ＱHｙである。総和は、上三角行列であるＲから引き出される。ｉ＝Ｍから１への外部総和は、最終アンテナから開始する、送信アンテナの各々についての対応する項の総和である。各送信アンテナについての外部総和の対応する項は、送信アンテナの部分距離（partial distance）として示される。インデックスｉを有する特定の送信アンテナについての部分距離は、送信アンテナｉからＭまでの候補シンボルの重みの内部総和を含む。したがって、ＱＲ分解は、送信アンテナの各インデックスについての部分距離の総和をとることによって、候補シンボルｓについての距離ノルムＤ（ｓ）の計算を可能とし、各インデックスについての部分距離は、同じおよびより大きいインデックスを有するシンボルの関数である。
【００３５】
さまざまな実施は、コンステレーション内のＭ個のシンボルの全ての組み合わせから選択された、さまざまな組み合わせについての距離ノルムを演算することによって、送信されたシンボルを検出する。しかしながら、可能性のある組み合わせを通した探索は、すべての組み合わせが検討されるまえに終了され得る。Ｍ個の送信アンテナから実際に送信されたＭ個のシンボルは、距離ノルムの最小値を有する、検討された組み合わせに一致するはずである。当業者は、スフィア検出器モジュール１４０が、プロセッサまたはマイクロコントローラ、あるいは、プログラマブルロジックデバイスや特定用途向け集積回路についての回路で実行可能であるプログラムコードとして実現され得ることをさらに認識するであろう。
【００３６】
図２は、さまざまな実施形態に従う、受信アンテナで受信された通信を検出するためのプロセス２００のフロー図である。通信の検出結果は、ツリーの深さ優先探索から決定され、終了信号が深さ優先探索の結果を要求すると、深さ優先探索は終了する。
【００３７】
ステップ２０２にて、プロセス２００は、受信アンテナで受信された通信の表現（representation）を入力する。ステップ２０４にて、プロセス２００は、検出された通信についての結果を要求するためにアサートされて終了信号を入力する。
【００３８】
ステップ２０６にて、深さ優先探索は、送信されたシンボルの可能性のある組み合わせのツリーにおけるノードの部分距離を評価する。深さ優先探索がツリーのリーフノードに到達すると、その評価された部分距離は、送信されたシンボルがリーフノードに関連するシンボルに一致する可能性を示す、リーフノードの距離ノルムである。プロセス２００は、ステップ２０２において入力された通信の表現から部分距離を算出する。
【００３９】
ステップ２０８にて、終了信号が結果を要求すると、深さ優先探索は終了する。ステップ２１０にて、プロセス２００は、評価された距離に基づいて、考慮されたリーフノードから結果を選択する。一実施形態においては、深さ優先探索は、評価している各リーフノードについての現在の結果を更新し、終了信号がその結果を要求すると、現在の結果が返される。他の実施形態においては、深さ優先探索は、送信されたシンボルについてのもっともらしい候補リーフノードのリストを維持し、各リーフノードを評価するとリストを更新する。終了信号が結果を要求すると、現在のリストが返される。ステップ２１２にて、プロセス２００は、現在の単一の結果またはリストを出力し、それは各送信アンテナについての個別のシンボルを識別する選択ノードを出力することを含む。
【００４０】
図３は、さまざまな実施形態に従う、終了されるまで深さ優先探索を行なうツリーのグラフである。ルートノード３０２を除く各ノードは、対応する送信アンテナから送信された可能性のあるシンボルを特定するラベルを含む。ルートノードから、リーフノード３３２のようなリーフノードへの各経路は、送信アンテナから送信された可能性のあるシンボルの組み合わせを表す。
【００４１】
深さ優先探索スフィア検出器は、送信アンテナについて、シンボルのすべての可能性のある組み合わせについてのノードを訪れる網羅的な探索を実行し得る。しかしながら、特に送信アンテナから実際に送信されたシンボルに対応するノードを訪れた後は、削除（pruning）は、実際に訪れるノードの数を低減し得る。さらに、訪れられるノードの数は、結果が要求されて深さ優先探索を終了することによっても低減される。
【００４２】
探索は、探索ツリーのルートレベルのルートノード３０２から開始する。ノード３０４，３０６，３０８，３１０は、通信についてのコンステレーションにおける４つのシンボルに対応する。ノード３０４，３０６，３０８，３１０は、インデックス４を有するアンテナから送信されたシンボルについての、４つの潜在的選択を表わす。一実施形態においては、部分距離が、アンテナ４についてのレベルのノード３０４，３０６，３０８，３１０について評価される。最小部分距離を有するノード３０６は、アンテナ４が送信するシンボル１に沿って、アンテナ３が送信するシンボル０、シンボル１、シンボル２、シンボル３をそれぞれ表わすノード３１２，３１４，３１６，３１８に拡張される。
【００４３】
ノード３１２，３１４，３１６，３１８の中で、この例においては、ノード３１８が最小部分距離を有し、ノード３１２が次の最小部分距離を有する。最小部分距離を有するノード３１８は、次に、アンテナ２のレベルのノード３２０，３２２，３２４，３２６に拡張される。これらのノードの中で、ノード３２２は、最小部分距離を有し、探索ツリーのリーフレベルのリーフノード３２８，３３０，３３２，３３４に拡張される。これらのノードの中で、初期ソリューションノードは、最小距離を有し、シンボル２，シンボル１、シンボル３、およびシンボル１をそれぞれ送信するインデックス１，２，３，４を有するアンテナを表わす。
【００４４】
一実施形態においては、結果を要求する終了信号は、深さ優先探索がリーフノードを訪れるまで、深さ優先探索を終了しない。深さ優先探索が初期ソリューションノード３３２を見出した後、結果の要求が保留されている場合には、深さ優先探索は直ちに終了し、初期ソリューションノード３３２がその要求を満たす。結果の要求が保留されていない場合は、よりよい結果を見出すために深さ優先探索を継続する。
【００４５】
ノード３３２がノード３２８，３３０，３３４よりも小さい距離を有するので、ノード３２８，３３０，３３４は、実際に送信されたシンボルには対応しないはずである。同様に、この特定の例においては、ノード３３２はノード３２０，３２４，３２６の部分距離よりも小さい距離を有する。深さ優先探索が終了されない場合は、拡張ノード３２０，３２４，３２６からもたらされるノードは、現在のソリューションノード３３２よりもさらに大きい距離を有し得るので、深さ優先探索はノード３２０，３２４，３２６を削除する。
【００４６】
深さ優先探索は、ノード３１２．３１４，３１６にバックトラックする。この特定の例においては、ノード３１２が現在のソリューションノード３３２よりも小さい部分距離を有しているので、深さ優先探索は、次にノード３１２に拡張する。しかしながら、拡張ノード３１２からもたらされるノード３３６，３３８，３４０，３４２は、現在のソリューションノード３３２の距離よりも大きい部分距離を有し、結果的に、深さ優先探索は、ノード３３６，３３８，３４０，３４２を削除する。ノード３１４および３１６は、同様に、現在のソリューションノード３３２の距離よりも大きい部分距離を有し、深さ優先探索は、ノード３１４および３１６を削除する。深さ優先探索は、ノード３０４，３０８，３１０にバックトラックする。この例においては、ノード３０４，３０８，３１０は現在のソリューションノード３３２の距離よりも大きい部分距離を有するので、深さ優先探索はノード３０４，３０８，３１０を削除する。
【００４７】
拡張のためのノードがもはや残っていないので、深さ優先探索は完了し、最初に見出されたソリューションノード３３２が最終結果となる。完全な深さ優先探索は、深さ優先探索が完了する前に、終了信号が対応する結果を要求しないときに生じる。一実施形態においては、この最終結果は、結果を要求する終了信号を待つようにキューに入れられ、他の深さ優先探索が開始され、次の通信についての他の結果が見出される。
【００４８】
図４は、さまざまな実施形態に従って通信されるシンボルを決定するためのプロセス４００のフロー図である。通信されたシンボルは、可能性のあるシンボルのツリーの深さ優先探索によって決定されるが、結果が要求されると、深さ優先探索は終了される。ステップ４０２は、深さ優先探索を初期化する。現在のノードが、探索ツリーのルートノードに設定され、ルートノードの部分距離がゼロに設定される。削除境界値が無限大に設定され、最初は削除が不可能にされる。
【００４９】
決定４０４は、終了要求が保留中であるか否かを検査する。終了要求が保留中でなければ、プロセス４００は決定４０６に進み、そうでなければ、プロセスは決定４０８に進んで結果を返す。
【００５０】
決定４０６は、探索ツリー内で検討するための、より多くのノードがあるか否かを検査する。探索ツリー内に、より多くのノードが残っている場合は、プロセス４００はステップ４１０に進み、探索ツリー内の次のノードを評価する。深さ優先探索が、終了要求を受信することなく、探索ツリー内のすべてのノードを検討した場合は、プロセス４００はステップ４１２に進む。
【００５１】
ステップ４１０にて、プロセス４００は、探索ツリーの深さ優先走査（traversal）に従って現在のノードを選択する。しかしながら、ステップ４１０は、以下に説明されるように、削除されたノードの子および他の下位ノードは選択しない。ステップ４１４にて、部分距離が、現在のノードについて評価される。部分距離は、現在のノードの親ノードの部分距離に距離増分を追加する。
【００５２】
決定４１６は、現在のノードの部分距離が現在の境界値を超えているか否かを検査する。現在のノードの部分距離が境界値を超えていない場合は、プロセス４００は決定４１８に進む。部分距離が境界値を超えている場合は、現在のノードが削除され、プロセス４００は決定４０４に戻りツリー内の次のノードを検討する。削除されたノードの下位ノードは、削除されたノードよりも大きい部分距離を有しているので、削除は、削除されたノードの下位ノードのステップ４１０における検討を排除する。一実施形態においては、深さ優先探索は、この削除に従う予め定められた順序で、ツリーのノードを訪れる。
【００５３】
決定４１８は、現在のノードがリーフノードであるか否かを検査する。現在のノードがリーフノードの場合は、現在のノードは、実際に送信されたシンボルに一致し得るシンボルの組み合わせを特定し、プロセス４００は決定４２０に進み、現在のノードを結果に加える。そうでなければ、プロセス４００は決定４０４に戻り、ツリー内の次のノードを検討する。
【００５４】
決定４２０は、結果リストが、目標とされる結果の数をすでに含んでいるか否かを検査する。リストが目標とされる結果よりも少ない数を有している限り、プロセス４００は、ステップ４２２にて、訪れた各リーフノードをリストに追加する。そうでなければ、リストはすでに目標サイズであり、プロセス４００はステップ４２４に進む。ステップ４２４にて、目標距離を有するリスト内のリーフノードがリストから除去され、ステップ４２２にて、現在のリーフノードと置き換えられる。解のリストが目標のリーフノードの数に到達後、ステップ４２６にて、境界値が最大距離を有するリスト内のリーフノードの距離に設定される。
【００５５】
ステップ４１２に戻って、終了要求受信前に、深さ優先探索が探索ツリー内のすべてのノードの検討を完了すると、解の最終リストが検出された結果のキューに追加される。検討された各ノードについて、決定４０４は、上述のように、終了要求が保留中であるか否かを検査する。
【００５６】
深さ優先探索が通信について完了しているので、決定４０８は、要求された結果がすでに利用可能であるか否かを検査する。要求された結果がキューにおいてすでに利用可能である場合は、プロセス４００はステップ４２８に進み、その結果リストをキューから出力し、プロセス４００は後続の通信について、深さ優先探索の進行を再開する。キューが空の場合は、プロセス４００は決定４３０に進む。
【００５７】
決定４３０は、終了要求を満たすために、いくつかの結果が利用可能であるか否かを検査する。解のリストが利用可能である場合は、プロセス４００はステップ４３２に進む。そうでなければ、プロセス４００はステップ４０６に進み、最初のリーフノードが訪れられるまで現在の深さ優先探索を続行し、その後、このリーフノードがステップ４３２に返されて結果の要求を満たす。ステップ４３２における結果の出力後、現在の深さ優先探索が終了され、プロセス４００はステップ４０２へ続き、次の通信についての他の深さ優先探索を初期化する。
【００５８】
図５は、さまざまな実施形態に従う、送信アンテナと受信アンテナとの間で送信するためのシステムのブロック図である。プロセッサ読取可能装置５０２は、受信アンテナで受信された送信アンテナからの通信を検出するための、ソフトウェアモジュール５０４，５０６，５０８，５１０，５１２，５１４，５１６，５１８で構成される。通信は、送信アンテナの各々についての、コンステレーションからの対応するシンボルを含む。
【００５９】
ソフトウェアモジュール５０４内の指令の実行によって、プロセッサ５２０から５２２は、送信アンテナおよび受信アンテナに結合する通信媒体の空間多重を特定するチャンネル行列を入力する。ソフトウェアモジュール５０６内の指令の実行によって、プロセッサ５２０から５２５は、受信アンテナで受信された通信のデジタル表現を入力する。ソフトウェアモジュール５０８における指令の実行によって、プロセッサ５２０から５２５は、結果を要求するための終了信号をポーリングする。
【００６０】
ソフトウェアモジュール５１０内の指令の実行によって、プロセッサ５２０から５２２は、評価されたリーフノードの距離についての境界値を維持する。境界値は、受信された通信を決定するためのツリーの深さ優先探索の削除を助ける。
【００６１】
ソフトウェアモジュール５１２内の指令の実行によって、プロセッサ５２０から５２２は、ツリーの削除された深さ優先探索中に、ノードの部分距離を評価する。リーフノードである評価されたノードについて、部分距離は、送信されたシンボルがリーフノードに関連するシンボルに一致する相対的な可能性を提供する距離である。部分距離は、チャンネル行列および受信された通信のデジタル表現から決定される。
【００６２】
ソフトウェアモジュール５１４内の指令の実行によって、プロセッサ５２０から５２２は、終了信号が深さ優先探索からの結果を要求しているときに、深さ優先探索を終了する。ソフトウェアモジュール５１６内の指令の実行によって、プロセッサ５２０から５２２は、評価されたリーフノードからの結果を選択する。その結果は、より小さい距離を有する、１つまたはより多くのリーフノードである。一実施形態においては、現在の結果は、深さ優先探索中に各リーフノードに訪れたときに更新される。
【００６３】
ソフトウェアモジュール５１８内の指令の実行によって、プロセッサ５２０から５２２は、その結果を出力する。その結果は、送信アンテナの各々についての、コンステレーション内のシンボルを識別するリーフノードを含む。
【００６４】
一実施形態においては、プロセッサ５２０から５２２は、深さ優先探索および他のシステムの動作を実行するために利用可能である。各通信を受信したときに、プロセッサ５２０から５２２のうちの動いていないものは、通信を処理するように割り当てられる。低い優先順位の動作を実行するプロセッサもまた、受信された通信を処理するように割り当てられることが理解されるであろう。新しい通信が受信されるが、プロセッサ５２０から５２２のいずれもが通信を処理するのに利用可能でない場合は、終了信号が生成されて深さ優先探索を現在実行しているプロセッサ５２０から５２２のうちの１つから結果を要求する。プロセッサが結果を返すと、そのプロセッサは、新しい通信のための深さ優先探索を実行するように割り当てられる。
【００６５】
１つまたはより多くのプロセッサおよびプログラムコードで構成されたメモリ配列を含む、さまざまな代替的な演算配列が、本発明の異なる実施形態の処理およびデータ構造をホスティングするのに適していることを、当業者は理解するであろう。さらに、プロセスは、磁気または光学ディスクまたはテープ、電子記憶装置、あるいはネットワークを介したアプリケーションサービスのような、さまざまなコンピュータ読み取り可能記憶媒体または搬送チャンネルを介して提供され得る。他の実施形態においては、スフィア検出器は、プログラマブルロジックデバイス上の回路または特定用途向け集積回路として、全体または部分が実現され得る。
【００６６】
本発明は、複数の受信アンテナにおいて受信された複数の送信アンテナからの通信を検出するためのさまざまなシステムに適用可能であると考えられる。本発明の他の局面および実施形態は、ここで開示された明細書および実施例の検討から、当業者にとっては明らかであろう。
【図１】
0005373967.tif 000003
【図２】
0005373967.tif 000004
【図３】
0005373967.tif 000005
【図４】
0005373967.tif 000006
【図５】
0005373967.tif 000007