(57)【特許請求の範囲】
【請求項１】
第１のレジスタおよび第2のレジスタを含む第1の組のレジスタに記憶された第1の組のサンプルの連続するデータサンプルである第1のサブセットを選択するように構成された選択論理であって、前記連続するデータサンプルである第1のサブセットは、スキップされる前記第1の組のサンプルの数を示すオフセット値に対応する前記第1のレジスタ内の位置で開始し、前記オフセット値がステップ値に対応し、前記第1のサブセットが前記第1のレジスタに記憶された第1のサンプルを含むとともに前記第2のレジスタに記憶された第2のサンプルをさらに含み、前記第１のレジスタおよび第2のレジスタが異なるレジスタである、選択論理と、
第2の組のレジスタに記憶された第2の組のサンプルを、前記ステップ値に基づきシフトするように構成されたシフト論理と、
前記選択された第1のサブセットに基づき、かつ前記シフトされた第2の組のサンプルの第2のサブセットにさらに基づいて、チャネル推定に関連する第1の値を生成するように構成されたチャネル推定器と
を備える装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、本願の権利者が所有する2013年3月15日に出願された米国非仮特許出願第13/842,663号からの優先権を主張するものであり、その内容の全体を、参照により本明細書に明示的に組み込むものとする。
【０００２】
本開示は、一般に電子デバイスに関し、また電子デバイスを動作させるための技法に関する。
【背景技術】
【０００３】
技術における進歩により、より小型の、より強力な電子デバイスが生まれてきた。たとえば、現在、ワイヤレス電話、携帯情報端末(PDA)、およびページングデバイスなどの様々なモバイルデバイスが存在する。モバイルデバイスは、小型、軽量であり、ユーザにより容易に運ぶことができる。セルラ式電話、およびインターネットプロトコル(IP)電話などのワイヤレス電話は、ワイヤレスネットワークを介して、音声およびデータパケットを伝達することができる。さらに多くのワイヤレス電話は、その中に組み込まれる他のタイプのデバイスを含む。たとえば、ワイヤレス電話はまた、デジタルスチルカメラ、デジタルビデオカメラ、デジタルレコーダ、およびオーディオファイルプレイヤを含むことができる。さらに、ワイヤレス電話は、インターネットにアクセスするために使用できるウェブブラウザアプリケーションなどのソフトウェアアプリケーションを含む実行可能命令を処理することができる。したがって、ワイヤレス電話および他のモバイルデバイスは、大きな計算能力を含むことができる。
【０００４】
ユーザは、モバイルデバイスが、高度の(たとえば、「高速の」)性能を提供するが、低消費電力でもある(たとえば、長い電池寿命を有するなど)ことをますます期待している。しかし、そのような処理機能を可能にするためには、モバイルデバイスは、電力を消費する多数の命令を記憶し、かつ処理する可能性がある。電池寿命は、命令数を減らすことにより、または命令が処理される速度を低下させることにより保護することができる。しかし、電池寿命をそのような方法で保護することは、モバイルデバイスの性能を低下させて、ユーザを苛立たせるおそれがある。いくつかのモバイルデバイスは、いくつかのオペレーションを行うためにスカラーハードウェアを使用する。スカラーハードウェアは、いくつかの用途(たとえば、通信システムに含まれるモバイルデバイスによる送信信号を回復するために、チャネルインパルス応答の迅速な推定を行うことなど)に対して十分な性能を示すことができない。ベクトルハードウェアは、計算的にロバストであるが、実装するには複雑になる可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
通信システムは、符号分割多元接続(CDMA)技法を使用して、ネットワークデバイスが、複数のモバイルデバイスとワイヤレスチャネルを介して通信できるようにする。たとえば、CDMA通信システムにおける受信器は、受信した信号のデータシーケンスをCDMA符号(たとえば、CDMA「チップ」シーケンス)に関連付けて、ワイヤレスチャネルに関連するチャネルインパルス応答を推定する(たとえば、チャネル推定を計算する)ことができる。チャネル推定は、チャネル推定を使用して、受信した信号に対するワイヤレスチャネルの影響(たとえば、フェージング)を補償することによるなど、モバイルデバイスによりワイヤレスチャネルを介して送信されたデータを回復させるために使用することができる。
【０００６】
チャネル推定を求めるために、符号シーケンス(たとえば、CDMA「チップ」シーケンス)に対してデータシーケンスを関連付けることは、計算量が多くなる可能性があり、また頻繁に生じるため、CDMA通信システムのデバイスの処理資源を消費するおそれがある。たとえば、デバイスは、次の式に従ってチャネル推定h(n)を計算することができる。
【０００７】
【数１】
0006286592.tif 000002
【０００８】
前述の式において、rはデータサンプルベクトルを示し、cは符号シーケンスベクトルを示し、c*は符号シーケンスベクトルの複素共役を示し、[r].[c]は、rとcとの間の内積を示し、かつnはタイムラグを示しており、以下でさらに説明する。
【０００９】
本開示によるデバイスは、データシーケンスのデータサンプルを「スプライス」し、データサンプルをシフトする代わりに、符号シーケンスの符号サンプルを「シフト」する(たとえば、回転する)。データサンプルに代えて符号サンプルをシフトすることは、いくつかの複雑な計算を回避することができ、また簡単化されたベクトルハードウェアを用いたチャネル推定を可能にする。たとえば、符号サンプルをシフトすることは、以下でさらに説明するように、各データサンプルが16ビットベクトルを含み、また各符号サンプルが2ビットベクトルを含む場合、データサンプルをシフトするよりも簡単になり得る。
【００１０】
特定の実施形態では、装置は、第1の組のレジスタに記憶された第1の組のサンプルの第1のサブセットを選択するように構成された選択論理を含む。第1のサブセットは、第1の組のレジスタの第1のレジスタに記憶された第1のサンプルを含み、かつ第1の組のレジスタの第2のレジスタに記憶された第2のサンプルをさらに含む。装置は、第2の組のレジスタに記憶された第2の組のサンプルをシフトするように構成されたシフト論理をさらに含む。装置は、第1のサブセットに基づき、かつシフトされた第2の組のサンプルの第2のサブセットにさらに基づいて、チャネル推定に関連する第1の値を生成するように構成されたチャネル推定器をさらに含む。
【００１１】
別の特定の実施形態では、チャネル推定を計算する方法は、第1の組のサンプルを第1の組のレジスタに記憶するステップと、第2の組のサンプルを第2の組のレジスタに記憶するステップとを含む。方法は、第1の組のサンプルの第1のサブセットを選択するステップをさらに含む。第1のサブセットは、オフセット値に従って選択され、かつ第1の組のサンプルの第1のサンプルと、第1の組のサンプルの第2のサンプルとを含む。第1のサンプルは、第1の組のレジスタの第1のレジスタに記憶され、また第2のサンプルは、第1の組のレジスタの第2のレジスタに記憶される。方法は、第1の組のサンプルの第1のサブセットを、第2の組のサンプルと関連付けて、チャネル推定に関連する第1の値を生成するステップをさらに含む。第1の値の生成に応じて、第2の組のサンプルは、ステップ値に従ってシフトされ、シフトされた第2の組のサンプルが生成される。
【００１２】
別の特定の実施形態では、装置は、第1の組のレジスタに記憶された第1の組のサンプルの第1のサブセットを選択するための手段を含む。第1のサブセットは、第1の組のレジスタの第1のレジスタに記憶された第1のサンプルを含み、かつ第1の組のレジスタの第2のレジスタに記憶された第2のサンプルをさらに含む。装置は、第2の組のレジスタに記憶された第2の組のサンプルをシフトして、シフトされた第2の組のサンプルを生成するための手段をさらに含む。装置は、第1のサブセットに基づき、かつシフトされた第2の組のサンプルの第2のサブセットにさらに基づいて、チャネル推定に関連する第1の値を生成するための手段をさらに含む。
【００１３】
別の特定の実施形態では、コンピュータ可読記憶媒体は、無線周波数(RF)インターフェースに、第1の組のサンプルを第1の組のレジスタに記憶するステップと、第2の組のサンプルを第2の組のレジスタに記憶するステップとを含むオペレーションを実施させる、プロセッサにより実行可能な命令を記憶する。オペレーションは、第1の組のサンプルの第1のサブセットを選択するステップをさらに含む。第1のサブセットは、オフセット値に従って選択され、かつ第1の組のサンプルの第1のサンプルと、第1の組のサンプルの第2のサンプルとを含む。第1のサンプルは、第1の組のレジスタの第1のレジスタに記憶され、また第2のサンプルは、第1の組のレジスタの第2のレジスタに記憶される。オペレーションは、第1の組のサンプルの第1のサブセットを、第2の組のサンプルと関連付けて、チャネル推定に関連する第1の値を生成するステップをさらに含む。オペレーションは、第1の値の生成に応じて、ステップ値に従って第2の組のサンプルをシフトし、シフトされた第2の組のサンプルを生成するステップをさらに含む。
【００１４】
開示される実施形態の少なくとも1つにより提供される特有の1つの利点は、(たとえば、データサンプルをシフトすることに代えて)符号サンプルをシフトさせることにより、チャネル推定を計算することである。データサンプルに代えて符号サンプルをシフトすることは、いくつかの複雑な計算を回避することができ、また簡単化されたベクトルハードウェアを用いたチャネル推定が可能になる。各データサンプルは、16ビットベクトルを含むことができ、また各符号サンプルは、2ビットベクトルを含むことができるので、データサンプルをシフトさせるのではなく、符号サンプルをシフトさせることは、データサンプルをシフトするデバイスと比較して、簡単化したハードウェア設計と、低電力消費を可能にする。本開示の他の態様、利点、および特徴は、次のセクション、すなわち、図面の簡単な説明、詳細な説明、および特許請求の範囲を含む本出願全体を検討すれば明らかになろう。
【図面の簡単な説明】
【００１５】
【図１】オペレーションの第1の特定の時間におけるデバイスの例示的な特定の実施形態のブロック図である。
【図２】オペレーションの第2の特定の時間における図1のデバイスの例示的な特定の実施形態のブロック図である。
【図３Ａ】図1のデバイスにより行われる方法の例示的な特定の実施形態の流れ図である。
【図３Ｂ】図1のデバイスにより行われる別の方法の例示的な特定の実施形態の流れ図である。
【図４】図1のデバイスを含む通信デバイスのブロック図である。
【発明を実施するための形態】
【００１６】
図1を参照すると、オペレーションの第1の特定の時間におけるデバイスの例示的な特定の実施形態が示され、全体的に100で指定されている。特定の実施形態では、デバイス100は、モデムなどの無線周波数(RF)インターフェースの一部に対応する。デバイス100は、さらに以下で述べられるように、チャネルを介して送信された信号を受信するために使用されるチャネル推定を求めるために、ベクトルに対して演算を実施するベクトルマシンに対応することができる。
【００１７】
デバイス100は、第1の組のサンプルを記憶するための第1の組のレジスタ(たとえば、一組のデータサンプルを記憶するためのデータレジスタ104)と、第2の組のサンプルを記憶するための第2の組のレジスタ(たとえば、CDMA符号シーケンスなど、一組の符号サンプルを記憶するための符号レジスタ108)とを含む。デバイス100は、選択論理112、チャネル推定器116、およびシフト論理124をさらに含む。選択論理112は、データレジスタ104および符号レジスタ108に対応している。チャネル推定器116は、選択論理112に対応している。符号レジスタ108は、シフト論理124に応じて、符号レジスタ108に記憶された一組の符号サンプルをシフトする(たとえば、水平にシフトする、または「回転する」)ことができ、それを以下でさらに述べる。
【００１８】
図1の特定の例では、データレジスタ104に記憶された一組のデータサンプルは、データサンプルr0、r1、・・・r191を含む。符号レジスタ108に記憶された一組の符号サンプルは、図1で示された符号サンプルc0、c1、・・・c63を含む。図1の例は、データレジスタ104が、第1のデータレジスタ128、第2のデータレジスタ132、および第3のデータレジスタ136を含むことをさらに示している。データレジスタ104は、宛先レジスタ138をさらに含み、それは、偏相関など、チャネル推定器116により実施される計算結果を記憶することができ、それを以下でさらに説明する。
【００１９】
オペレーションでは、チャネル推定器116は、選択論理112により選択されたデータサンプルおよび符号サンプルに基づいて、チャネル推定を生成することができる。チャネル推定は、上記で述べたh(n)に対応することができる。チャネル推定は、それぞれの時間におけるチャネル推定にそれぞれが対応できるh(0)、h(1)、・・・h(31)など、部分的なチャネル推定を含むことができる。たとえば、h(0)は、第1の時間(すなわち、n=0)におけるチャネル推定に対応することができ、h(1)は、第2の時間(すなわち、n=1)におけるチャネル推定に対応することができ、またh(31)は、第32の時間(すなわち、n=31)におけるチャネル推定に対応することができる。
【００２０】
特定の実施形態では、各時間におけるチャネル推定は、データレジスタ104におけるデータサンプルの組のサブセットと、符号レジスタ108における一組の符号サンプルとの間の偏相関の組合せ(たとえば、合計)として求められる。チャネル推定h(0)が、偏相関h0(0)およびh1(0)(本明細書では、部分積および部分的なチャネル推定とも呼ばれる)など、値の組合せとして求められる特定の例を以下で提供する。
【００２１】
h0(0)を求めるために、選択論理112は、データサンプルの第1のサブセット、および符号サンプル(または符号サンプルの第2のサブセット)を選択することができる。選択論理112は、符号サンプルおよびデータサンプルの第1のサブセットをチャネル推定器116に提供することができる。チャネル推定器116は、符号サンプルおよび第1のサブセットに基づいて(たとえば、符号サンプルと第1のサブセットとの間で内積を計算することにより)、第1の値120(たとえば、h0(0))を生成することができる。たとえば、チャネル推定器116は、符号サンプルおよび第1のサブセットに基づき、偏相関を実施して、次のように計算することができる。
【００２２】
h0(0)=r0*c0+r1*c1+r2*c2+r3*c3+r64*c64+r65*c65+r66*c66+r67*c67
【００２３】
第1の値120は、宛先レジスタ138に記憶することができる。さらに、第2の偏相関h1(0)などの第2の値は、次式に従って求めることができる。
【００２４】
h1(0)=r64*c63+r1*c0+r2*c1+r3*c2+r128*c127+r65*c64+r66*c65+r67*c66
【００２５】
h1(0)を求めるために、いくつかのデバイスは、データサンプルの各々をシフトすることができる。たとえば、デバイスは、データサンプルの各々を1つの位置だけ左にシフトさせて(したがって、第1のデータレジスタ128における最も左のデータサンプルは、r0に代えてr1になり、以下同様に行われる)、次いで、最初にシフトされたデータサンプルで開始する(すなわち、r1で開始する)データサンプルを読み出すことができる。しかし、そのようなデバイスは、データサンプルの各々をシフトさせるために複雑なハードウェアを必要とする可能性があり、それは、データサンプルの各々が大きいベクトルを含むとき、特に実施するのが困難になる可能性がある。特定の実施形態では、デバイス100は、データレジスタ104に記憶されたデータサンプルをシフトするのではなく、符号レジスタ108に記憶された符号サンプルをシフトする。
【００２６】
たとえば、図2は、オペレーションの第2の特定の時間における図1のデバイス100を示している。図2の例では、符号レジスタ108の符号サンプルが、データサンプルの代わりにシフトされる。したがって、図2は、シフト論理124が、ステップ値148に従って、一組の符号サンプルを左シフトしたことを示している。図2では、ステップ値148は1に等しい。したがって、一組の符号サンプルの各々は、1つの位置だけ右シフトされ、したがって、最も左のサンプルは、c63になり、最も右のサンプルはc62である。したがって、チャネル推定器116は、シフトされた一組の符号サンプル(たとえば、c63、c0、c1、・・・c62)に部分的に基づいて、h1(0)を求めることができる。さらに図2では、選択論理112は、オフセット値140に基づいて、一組のデータ値の第2のサブセット(たとえば、所定数の連続するサンプル)を選択する。図2の例では、オフセット値140は1に等しい(すなわち、1つのデータサンプルr0が、第2のサブセットを選択するために「スキップ」されている)。特定の用途に応じて、オフセット値140は、異なる値になり得る。
【００２７】
上記の例を続けると、チャネル推定器116は、シフトされた符号サンプル(またはシフトされた符号サンプルのサブセット)に基づき、かつ第2のサブセットにさらに基づいて、第2の値(たとえば、h1(0))を計算することができる、すなわち、
【００２８】
h1(0)=r64*c63+r1*c0+r2*c1+r3*c2+r128*c127+r65*c64+r66*c65+r67*c66である。
【００２９】
第2の値は、宛先レジスタ138に記憶することができる。データレジスタ104のデータサンプルに代えて符号レジスタ108の符号サンプルをシフトすることにより、データサンプルの多量のシフト演算を回避することができる。たとえば、データサンプルの各々が、16ビットのデータベクトルを含み、また符号サンプルの各々が2ビットの符号ベクトルを含む場合、符号サンプルをシフトすることは、多数のデータサンプルをシフトすることに関連した多量のシフト演算を回避することができる。特定の実施形態では、符号レジスタ108は、2ビットベクトルのCDMA「チップシーケンス」を記憶し、その場合、2ビットベクトルの各々は、1、-1、sqrt(-1)、または-sqrt(-1)の各値を示す。代替的には、2ビットベクトルの各々は、1+sqrt(-1)、1-sqrt(-1)、-1+sqrt(-1)、もしくは-1-sqrt(-1)、または値の別の組合せをそれぞれ示すことができる。
【００３０】
さらに選択論理112は、複数の連続するレジスタにおけるデータサンプルを選択できるので、データサンプルをシフトまたは移動させる(たとえば、単一のレジスタに)ことなくデータサンプルを選択することができ、したがって、演算が簡単化される。たとえば、データサンプルを移動させることなく(たとえば、第1のデータレジスタ128の内容にR64を加え、次いで、第1のデータレジスタ128の内容全体を選択することなく)、不連続なデータサンプルを選択することができる(たとえば、R1およびR64)。不連続なデータサンプルを選択することにより、「タップ付き遅延線」など、いくつかの従来の回路を回避することができる(たとえば、データレジスタ104のデータ値をシフトする、または上書きするための大規模な回路を回避することができる)。
【００３１】
さらなる偏相関(たとえば、h2(0)、h3(0)、・・・h15(0))を同様にして生成することができる。チャネル推定器116は、偏相関(たとえば、h0(0)、h1(0))・・・h15(0))を組み合わせて、最初の時間におけるチャネル推定220を求める(たとえば、上記で述べたh(0)を求める)ことができる。同様に、チャネル推定器116は、さらなる部分的なチャネル推定(たとえば、h0(1)、h1(1)、・・・h15(1))を組み合わせて、第2の時間におけるチャネル推定220(すなわち、h(1))を求めることができる。第1の時間におけるチャネル推定220は、第1の時間におけるチャネルの第1の応答を示すことができ、また第2の時間におけるチャネル推定220は、第2の時間(たとえば、第1の時間から第2の時間までの時間の「ずれ」)におけるチャネルの第2の応答を示すことができる。
【００３２】
オフセット値140およびステップ値148は、データレジスタ104の特定のレジスタの内容を選択するために、選択論理112により使用される。オフセット値140およびステップ値148は、チャネル推定220が推定される特定の時間に対応するレジスタ位置を示すことができる。たとえば、時間n=0において、オフセット値140およびステップ値148はそれぞれ、データレジスタ104および符号レジスタ108の0番目のレジスタ位置をそれぞれ示すゼロの値を有することができる。時間n=1において、オフセット値140およびステップ値148はそれぞれ、データレジスタ104および符号レジスタ108の1番目のレジスタ位置をそれぞれ示す1の値を有することができる。さらにオフセット値140およびステップ値148は、データサンプルのビット数に、かつ符号サンプルのビット数に対応することができる。図2の特定の例では、タイムラグは1に等しく(すなわち、第1の時間から第2の時間まで)、オフセット値140は16ビットに等しい(すなわち、r0からr1は16ビットである)、またステップ値148は2ビットに等しい(すなわち、c63からc0は2ビットである)。
【００３３】
図2に関連して、第2のサブセットは、第1のデータレジスタ128におけるオフセット値140に対応するレジスタで(すなわち、r1で)開始し、かつ第3のデータレジスタ136で、オフセット値140引く1により「ラップアラウンド」(すなわち、r128に)するデータサンプルを含む。したがって、第2のサブセットは、オフセット値140(たとえば、n番目の列または「レーン」)で開始し、第1のデータレジスタ128の最後のサンプル(たとえば、レジスタの「最大値」、図2のr63に相当する)を介して、第3のデータレジスタ136の開始サンプル(すなわち、r128)からオフセット値140引く1(すなわち、n-1番目の列または「レーン」であり、図2の特定の例では、1引く1、すなわちゼロに相当する)へと「ラップアラウンド」するデータサンプルを選ぶことにより選択される。したがって、所定数の連続するデータサンプルが、データレジスタのうちの1つ(すなわち、第1のデータレジスタ128)におけるオフセット値140で開始し、データレジスタ104の別のレジスタ(すなわち、第3のデータレジスタ値136)におけるオフセット値140引く1で終了するデータレジスタ104から読み出される。したがって、選択論理112は、オフセット値140に基づいて、データレジスタ104の複数の連続するレジスタからのデータサンプルを「スプライス」することにより第2のサブセットを選択することができる。
【００３４】
例示的な特定の実施形態では、チャネル推定器116は、異なるタイムラグに対するチャネル推定220を並行して求めるように構成されたプロセッサを含む。たとえば、第1の時間におけるチャネル推定220(すなわち、h(0))(またはその一部)は、プロセッサで単一の命令を実行することにより、第2の時間におけるチャネル推定220(すなわち、h(1))(またはその一部)と並行して求めることができる。さらに説明すると、プロセッサは、単一の命令を実行して、偏相関を並行して求める(たとえば、h1(1)と並行してh0(1)を求める)ことができる。
【００３５】
少なくとも1つの代替実施形態では、第2の組のサンプルは、符号サンプルの代わりに第2の組のデータサンプルを含むことができる。たとえば、第2の組のデータサンプルは、チャネル推定器116が、チャネル推定220を生成するために、(たとえば、相関計算に代えて)共分散計算を実施する用途で使用することができる。したがって、宛先レジスタ138は、偏相関(たとえば、h0(0)、h1(0)、・・・h15(0))、共分散計算の結果、またはそれらの組合せを一時的に記憶するように構成することができる。特定の実施形態では、第1の組のレジスタの各列(たとえば、「レーン」)は、偏相関を記憶するための対応する宛先レジスタを有する。図2の例を用いて続けると、第1の宛先レジスタは、第1の組のレジスタの第1のレーン(すなわち、r0、r64、およびr128を記憶するレーン)に対応することができ、また第1の偏相関h0(0)を記憶することができる。別の例として、第2の宛先レジスタは、第1の組のレジスタの第2のレーン(すなわち、r1、r65、およびr129を記憶するレーン)に対応することができ、また第2の偏相関h1(0)を記憶することができる。宛先レジスタは、偏相関h0(0)、h1(0)、・・・h15(0)が組み合わされてh(0)を生成するまで、偏相関h0(0)、h1(0)、・・・h15(0)を一時的に記憶することができ、h(0)を生成した時点で、h(1)に対応する偏相関が、宛先レジスタに書き込まれる(すなわち、h0(1)、h1(1)、・・・h15(1))。
【００３６】
データレジスタ104および符号レジスタ108は、特定の用途に合わせた適切なサイズのものとすることができる。たとえば、レジスタ104、108は、128のサンプルを記憶するように構成することができる。特定の実施形態では、符号レジスタ108は、それぞれが64のサンプルを記憶するように構成された2つのレジスタを含む(たとえば、図1および図2で示すように、c0・・・c63を記憶するように構成された第4のレジスタ、およびc64・・・c127を記憶するように構成された第5のレジスタ(図示せず))。シフト論理124は、第4のレジスタと第5のレジスタの両方のサンプルをシフトする(たとえば、図1および図2で示すように、c0に対してc63を左シフトし、さらに、c64に対してc127を左シフトする)ことにより、符号サンプルをシフトするようにさらに構成することができる。代替的に、レジスタ104、108は、256のサンプル、または別の数のサンプルを記憶するように構成することができる。レジスタ104、108が、256のサンプルを記憶する場合、演算は、128の演算を行う2つの組へと「分割」することができる。
【００３７】
図3Aを参照すると、デバイス100により実施される方法の例示的な特定の実施形態が示され、全体的に300で指定されている。方法300のオペレーションは、チャネル推定器116により実施することができる。
【００３８】
方法300は、304で、第1の組のレジスタに第1の組のサンプル(たとえば、受信した信号に関連するデータサンプル)を記憶するステップを含む。第1の組のサンプルは、図1および図2を参照して述べられたデータサンプルに対応することができる(すなわち、r0、r1、・・・r191)。第1の組のレジスタは、図1および図2を参照して述べたデータレジスタ104に対応することができる。
【００３９】
308で、方法300は、第2の組のレジスタに第2の組のサンプル(たとえば、1および-1、またはsqrt(-1)および-sqrt(-1)などの単位値を含むCDMA「チップ」シーケンスなど、符号シーケンスに関連する符号サンプル)を記憶するステップをさらに含む。第2の組のサンプルは、図1および図2を参照して述べた符号サンプルに対応することができる(すなわち、c0、c1、・・・c63)。第2の組のレジスタは、図1および図2を参照して述べた符号レジスタ108に対応することができる。
【００４０】
312で、方法300は、第1の組のサンプルの第1のサブセットを選択するステップをさらに含む。第1のサブセットは、図1を参照して述べたように、r0、r1、r2、r3、r64、r65、r66、r67に対応することができる。第1のサブセットは、第1の組のサンプルをシフトさせることなく、選択論理112により選択することができる。第1のサブセットは、オフセット値に従って選択され、第1の組のサンプルの第1のサンプルと、第1の組のサンプルの第2のサンプルとを含む。第1のサンプルは、第1の組のレジスタの第1のレジスタに記憶され、また第2のサンプルは、第1の組のレジスタの第2のレジスタに記憶される。たとえば、第1のサンプルは、データレジスタ128、132、136のうちの1つ記憶され、第2のサンプルは、データレジスタ128、132、136のうちの別のレジスタに記憶することができる。オフセット値は、図2のオフセット値140に対応することができる。
【００４１】
316で、方法300は、第1の組のサンプルの第1のサブセットを、第2の組のサンプル(または第2の組のサンプルの第2のサブセット)と(たとえば、内積演算を用いて)関連付けて、チャネル推定に関連する第1の値を生成するステップをさらに含む。第1のサブセットを第2の組のサンプルに関連付けることは、チャネル推定器116により行うことができる。第1の値は、図1を参照して述べた第1の値120(たとえば、h0(0))に対応することができる。チャネル推定は、図2のチャネル推定220に対応することができる。第1の値は、宛先レジスタ138に記憶することができる。
【００４２】
320で、第1の値の生成に応じて、方法300は、ステップ値に従って第2の組のサンプルをシフトさせて、シフトされた第2の組のサンプルを生成するステップをさらに含む。ステップ値は、図2のステップ値148に対応することができる。第2の組のサンプルは、図1および図2のシフト論理124によりシフトされ得る。
【００４３】
324で、第2の値は、第1の組のサンプルの第2のサブセットに基づき、かつシフトされた第2の組のサンプルにさらに基づいて生成される。たとえば、第2の値は、h1(0)に対応し、図2を参照して述べたように生成することができる。
【００４４】
図3Bを参照すると、デバイス100により実施される別の方法の例示的な特定の実施形態が示され、全体的に350で指定されている。方法350のオペレーションは、チャネル推定器116により実施することができ、また図3Aの方法300の実施に応じて行うことができる。
【００４５】
328で、方法350は、第1の組のサンプルの第2のサブセットを選択するステップを含む。第2のサブセットは、図2を参照して述べたように、r1、r2、r3、r64、r65、r66、r67、r128に対応することができる。第2のサブセットは、第1の組のサンプルをシフトさせることなく、選択論理112により選択することができる。
【００４６】
332で、第2のサブセットは、シフトされた第2の組のサンプル(またはシフトされた第2の組のサンプルの第2のサブセット)と(たとえば、内積演算を用いて)関連付けられて、チャネル推定に関連する第2の値を生成する。第2の値は、上記で述べたように、h1(0)に対応することができ、宛先レジスタ138に記憶することができる。第1の値および第2の値は、第1の時間n=0に対するチャネル推定に関連する偏相関に対応することができる。
【００４７】
336で、第2の値の生成に応じて、シフトされた第2の組のサンプルが、ステップ値に従って再シフトされる。たとえば、シフトされた第2の組のサンプルが再シフトされて、符号レジスタ108で、シーケンスc62、c63、c0、c1、c2、・・・c61を生成することができる。方法350は、h2(0)、h3(0)、・・・h15(0)など、第1の時間n=0に対するさらなる部分的なチャネル推定を生成するステップを含むことができる(図3Bに示されていない)。
【００４８】
340で、方法350は、少なくとも第1の偏相関と第2の偏相関を組み合わせて、第1の時間におけるチャネル推定を生成するステップをさらに含む。たとえば、h0(0)、h1(0)、・・・h15(0)は、組み合わされて(たとえば、加算されて)第1の時間n=0におけるチャネル推定を生成する(すなわち、h(0)を生成する)ことができる。
【００４９】
344で、第3の偏相関および第4の偏相関が生成される。第3の偏相関および第4の偏相関は、それぞれ、h0(1)およびh1(1)に対応することができ、それらは、第2の時間n=1に対応することができる。h2(1)、h3(1)、・・・h15(1)など、第2の時間n=1に対して、さらなる偏相関を生成することができる。方法350は、348で、少なくとも第3の偏相関と第4の偏相関を(たとえば、h0(1)、h1(1)、h2(1)、・・・h15(1)を加算することにより)組み合わせて、第2の時間n=1におけるチャネル推定を生成する(すなわち、h(1)を生成する)ステップをさらに含むことができる。第2の時間n=1は、第1の時間n=0の後の「タイムラグ」であり、オフセット値およびステップ値は、タイムラグに基づく(すなわち、オフセット値およびステップ値は、タイムラグに基づいて選択される)。
【００５０】
図3Aおよび図3Bの方法300、350を使用するチャネル推定の計算は、計算の複雑さを低減することができ、かつ簡単化したベクトルハードウェアを使用可能にすることができる。たとえば、データサンプルをシフトする代わりに、符号サンプルをシフトさせることは、各データサンプルが16ビットベクトルを含み、また各符号サンプルが2ビットベクトルを含む場合、いくつかの複雑な計算を回避することができる。したがって、データサンプルをシフトする代わりに符号サンプルをシフトすることは、データサンプルをシフトするデバイスと比較して簡単化したハードウェア設計を使用できるようにし、また低電力消費を可能にすることができる。
【００５１】
図4を参照すると、通信デバイスの例示的な特定の実施形態のブロック図が示され、全体的に400で指定される。通信デバイス400は、デジタル信号プロセッサ(DSP)などのプロセッサ410を含むことができる。プロセッサ410は、メモリ432(たとえば、非一時的なコンピュータ可読媒体)など、コンピュータ可読記憶媒体に結合することができる。メモリ432は、プロセッサ410により実行可能な命令454、プロセッサ410がアクセスできるデータ456、またはそれらの組合せを記憶することができる。
【００５２】
図4はまた、プロセッサ410およびディスプレイ428に結合される表示コントローラ426を示している。コーダ/デコーダ(CODEC)434はまた、プロセッサ410に結合することができる。スピーカ436およびマイクロフォン438は、CODEC434に結合することができる。カメラ446は、カメラコントローラ490に結合することができる。カメラコントローラ490は、プロセッサ410に結合することができる。
【００５３】
図4はまた、ワイヤレスコントローラ440がプロセッサ410に結合され得ることを示している。ワイヤレスコントローラは、無線周波数(RF)インターフェース450を介してアンテナ442にさらに結合することができる。RFインターフェース450は、図1および図2のデバイス100を含むことができる。特定の実施形態では、デバイス100は、RFインターフェース450に含まれるモデム(またはモデムの一部)に対応する。ワイヤレスコントローラ440、RFインターフェース450、およびアンテナ442は、CDMAネットワークを介して送信された信号など、信号を受け取るために使用することができる。特定の実施形態では、データレジスタ104は、受信した信号に関連するデータサンプルを記憶し、また符号レジスタ108は、CDMAネットワークに関連する符号シーケンス(たとえば、CDMA「チップ」シーケンス)を記憶する。
【００５４】
特定の実施形態では、プロセッサ410、メモリ432、表示コントローラ426、カメラコントローラ490、CODEC434、ワイヤレスコントローラ440、およびRFインターフェース450は、システムインパッケージまたはシステムオンチップデバイス422に含まれる。入力デバイス430および電源444は、システムオンチップデバイス422に結合することができる。
【００５５】
さらに特定の実施形態では、また図4で示すように、ディスプレイ428、入力デバイス430、カメラ446、スピーカ436、マイクロフォン438、アンテナ442、および電源444は、システムオンチップデバイス422に対して外部にある。しかし、ディスプレイ428、入力デバイス430、カメラ446、スピーカ436、マイクロフォン438、アンテナ442、および電源444の各々は、インターフェースまたはコントローラになど、システムオンチップデバイスの構成要素に結合することができる。
【００５６】
前述の実施形態に関連して、コンピュータ可読記憶媒体(たとえば、メモリ432)は、図3Aおよび図3Bの方法300、350に相当する1つまたは複数のオペレーションなどのオペレーションを、無線周波数(RF)インターフェース(たとえば、RFインターフェース450)に実施させる、プロセッサ(たとえば、プロセッサ410)により実行可能な命令(たとえば、命令454)を記憶する。特定の実施形態では、オペレーションは、第1の組のサンプル(たとえば、アンテナ442およびRFインターフェース450を介して受信した信号に対応することのできるr0、r1、・・・r191)を第1の組のレジスタ(たとえば、データレジスタ104)に記憶するステップを含む。オペレーションは、第2の組のサンプル(たとえば、CDMA符号シーケンスなどの符号シーケンスに対応することのできる、c0、c1、・・・c63)を第2の組のレジスタ(たとえば、符号レジスタ108)に記憶するステップをさらに含む。オペレーションは、第1の組のサンプルの第1のサブセット(たとえば、図2を参照して述べた第1のサブセット)を選択するステップをさらに含む。第1のサブセットは、オフセット値(たとえば、オフセット値140)に従って選択され、また第1の組のサンプルの第1のサンプル、および第1の組のサンプルの第2のサンプルを含む。第1のサンプルは、第1の組のレジスタの第1のレジスタ(たとえば、データレジスタ128、132、136のうちの1つ)に記憶され、また第2のサンプルは、第1の組のレジスタの第2のレジスタ(たとえば、データレジスタ128、132、136のうちの別のレジスタ)に記憶される。オペレーションは、第1の組のサンプルの第1のサブセットを、第2の組のサンプルと関連付けて、チャネル推定に関連する第1の値(たとえば、h0(0)などの偏相関)を生成するステップをさらに含む。オペレーションは、第1の値の生成に応じて、ステップ値に従って第2の組のサンプルをシフトさせて、シフトされた第2の組のサンプルを生成する(たとえば、図2で示すようにc63、c0、・・・c62を生成する)ステップをさらに含む。
【００５７】
前述の実施形態に関連して、装置(たとえば、システムオンチップデバイス422)は、第1の組のレジスタ(たとえば、データレジスタ104)に記憶された第1の組のサンプル(たとえば、r0、r1、・・・r191)の第1のサブセットを選択するための手段(たとえば、選択論理112)を含む。第1のサブセットは、第1の組のレジスタの第1のレジスタ(たとえば、データレジスタ128、132、136のうちの1つ)に記憶された第1のサンプルを含み、また第1の組のレジスタの第2のレジスタ(たとえば、データレジスタ128、132、136のうちの別のレジスタ)に記憶された第2のサンプルをさらに含む。装置は、第2の組のレジスタ(たとえば、符号レジスタ108)に記憶された第2の組のサンプル(たとえば、c0、c1、・・・c63)をシフトさせて、シフトされた第2の組のサンプル(たとえば、c63、c0、c1・・・c62)を生成するための手段(たとえば、シフト論理124)をさらに含む。装置は、第1のサブセットに基づき、かつシフトされた第2の組のサンプルの第2のサブセットにさらに基づいて、チャネル推定に関連する第1の値(たとえば、h0(0)などの偏相関)を生成するための手段をさらに含む。
【００５８】
前述の開示されたデバイスおよび機能は、コンピュータ可読媒体に記憶されたコンピュータファイル(たとえば、RTL、GDSII、GERBERなど)へと設計され、かつ構成され得ることが、当業者であれば理解されよう。いくつかの、またはすべてのそのようなファイルは、そのようなファイルに基づいてデバイスを製作する製作取扱者(fabrication handlers)に提供され得る。得られた製品は半導体ウェーハを含み、半導体ダイへと分離され、半導体チップへとパッケージされる。半導体チップは、次いで、デバイス100、通信デバイス400、またはそれらの組合せなどのデバイスで使用される。
【００５９】
本明細書で開示された諸実施形態に関連して述べられた様々な例示的な論理ブロック、構成、モジュール、回路、およびアルゴリズムステップは、電子的なハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実施できることが、当業者であればさらに理解されよう。様々な例示的な構成要素、ブロック、構成、モジュール、回路、
およびステップは、その機能に関して上記で概略的に述べられてきた。そのような機能が、ハードウェアとして、それともソフトウェアとして実施されるかは、特定の用途に、かつシステム全体に課せられる設計制約に依存する。当業者であれば、各特定の用途に対して様々な方法で前述の機能を実施することができるが、そのような実施の判断を、本開示の範囲から逸脱するものであると解釈すべきではない。
【００６０】
本明細書で開示された実施形態に関連して述べられた方法またはアルゴリズムのステップは、直接ハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、またはその2つの組合せで実施することができる。ソフトウェアモジュールは、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読出し専用メモリ(ROM)、書込み可能ROM(PROM)、消去可能書込み可能ROM(EPROM)、電気的消去可能なPROM(EEPROM)、レジスタ、ハードディスク、取外し可能ディスク、コンパクトディスク読出し専用メモリ(CD-ROM)、または当技術分野で知られた任意の他の形態の記憶媒体に常駐することができる。例示的な非一時的(たとえば、有形の)記憶媒体は、プロセッサが記憶媒体から情報を読み取り、かつ情報をそれに書き込めるように、プロセッサに結合される。代替的には、記憶媒体は、プロセッサに一体化することができる。プロセッサおよび記憶媒体は、特定用途向けIC(ASIC)内に存在することができる。ASICは、コンピューティングデバイスまたはユーザ端末内に存在することができる。代替的には、プロセッサおよび記憶媒体は、コンピューティングデバイスまたはユーザ端末におけるディスクリート構成要素として存在することができる。
【００６１】
開示された実施形態のこれまでの記述は、当業者が、開示された諸実施形態を製作する、または使用できるようにするために提供されている。これらの実施形態に対する様々な変更は、当業者であれば容易に明らかになろう。また本明細書で定義される原理は、本開示の範囲を逸脱することなく他の実施形態に適用することができる。したがって、本開示は、本明細書で示された諸実施形態に限定されるようには意図されておらず、添付の特許請求の範囲で定義された原理および新規の特徴と一致する可能な最も広い範囲が与えられるべきである。
【符号の説明】
【００６２】
100  デバイス
104  データレジスタ
108  符号レジスタ
112  選択論理
116  チャネル推定器
120  第1の値
124  シフト論理
128  第1のデータレジスタ
132  第2のデータレジスタ
136  第3のデータレジスタ
138  宛先レジスタ
140  オフセット値
148  ステップ値
220  チャネル推定
400  通信デバイス
410  プロセッサ
422  システムオンチップデバイス
426  表示コントローラ
428  ディスプレイ
430  入力デバイス
432  メモリ
434  CODEC
436  スピーカ
438  マイクロフォン
440  ワイヤレスコントローラ
442  アンテナ
444  電源
446  カメラ
450  無線周波数(RF)インターフェース
454  命令
456  データ
490  カメラコントローラ
【図１】
0006286592.tif 000003
【図２】
0006286592.tif 000004
【図３Ａ】
0006286592.tif 000005
【図３Ｂ】
0006286592.tif 000006
【図４】
0006286592.tif 000007