(57)【要約】【課題】  ＤＬＬを仕様変更容易なＤＳＰで構成し、更に性能を向上させる【解決手段】  本発明のＤＬＬはＤＳＰ内に、少なくとも相関演算を行う処理部と、オーバサンプルされた受信データを複数シンボル分記憶する同時アクセス可能な２面のメモリと、を備え、前記メモリは、最低限必要な量に対し同期補足誤差に相当する予備の記憶容量を備え、チップ単位でデータが連続するようにオーバサンプル毎に受信データを分離して記憶し、前記処理部は、アーリ及びレイトパスについて相関演算を行う受信データが記憶されている前記メモリ上でのアドレスを計算する。前記処理部は、位相誤差を示すアーリ／レイトパスの相関値差分をフィルタ処理する際に、重み付け平均した値を定期的にリセットする。【選択図】  図１
2005136757.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも相関演算を行う処理部と、オーバサンプルされた受信データを複数シンボル分記憶する同時アクセス可能な２面のメモリと、を備え、
前記メモリは、最低限必要な量に対し同期補足誤差に相当する予備の記憶容量を備え、チップ単位でデータが連続するようにオーバサンプル毎に受信データを分離して記憶し、
前記処理部は、アーリ及びレイトパスについて相関演算を行う受信データが記憶されている前記メモリ上でのアドレスを計算することを特徴とするＤＬＬ。
【請求項２】
前記処理部は、受信データを現在の同期タイミング及び同期タイミングよりも夫々Ｔｃ／２遅れ及び進んでいる拡散符号と受信データとを１シンボル長単位で夫々相関演算して同期タイミング相関値及びアーリ相関値及びレイト相関値を夫々算出し、
前記アーリ及びレイト相関値の差分を算出し、
同期タイミング相関値から伝送路推定により求まる補償量と、前記補償量を相関値に乗算して判定したシンボルとを、前記差分に夫々乗算して位相誤差を算出し、
前記位相誤差を定期的にリセットしながら重み付け平均して平均値を算出し、
前記平均値に応じて拡散コードを発生させる前記同期タイミングを制御することを特徴とする請求項１記載のＤＬＬ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＤＬＬ（Delay Locked Loop）に関し、特にＤＳＰで構成されるＤＬＬに関する。
【背景技術】
【０００２】
ＣＤＭＡ（Code Division Multiple Access）のような拡散方式の無線通信では、逆拡散過程において到達時間（パス）の異なる希望波を分離することができるので、各パスを同相最大比合成しダイバーシティを実現するＲＡＫＥ受信が一般に行われている。その際、送受信間での拡散コードの位相同期が重要となるが、同期処理は通常、捕捉と追従・保持との２段階で行われる。拡散コードは±１チップの位相差の範囲外では自己相関が得られないため、まず捕捉により送受信間で拡散コードの位相差が±１チップ以内になるようにし、次に正確な同期点に追従・保持する。
【０００３】
パス追従の方法としてＤＬＬやＣＤＬＬ（Coherent DLL）が知られる（例えば非特許文献１参照。）。図１１は従来のＤＬＬのブロック図である。図１１の動作を説明するとまず、複素受信ベースバンド信号が２つの相関器２１、２２に入力され、現在の同期点位相よりもＴｃ／２（Ｔｃ：チップレート）遅れている拡散コード（Late）及びＴｃ／２進んでいる拡散コード（Early）と夫々相関演算を行う。相関器の出力も複素信号であるので、電力化回路２３、２４はLate及びEarlyの相関値を電力値（スカラー量）に変換する。相関結果は通常、底辺が１チップ幅で、その中央の同期点にピークを有する山形の波形が得られるので、１チップ時間差のあるLate及びEarlyの電力値を減算器２５にて減算すると、２つの正負ピークの間にあるゼロクロスの位置が同期点であると推測される。減算器２５の出力を雑音除去のため平均化回路２６で平均化した値は同期点との位相差を示すので、拡散コード発生回路２７はこの値を用いて拡散コードを発生させるクロックタイミングを位相差が０になるように調整する。通常はタイミングをＡ／Ｄ変換のサンプリング周期と等しい制御ステップ単位で調整する。遅延器２８、２９は夫々Ｔｃ／２時間の遅延を与え、Ｔｃだけ時間差のある拡散コードを相関器２１、２２に与え、その中央の遅延時間（Ｔｃ／２）の拡散コードを同期の取れた拡散コードとしてシンボル判定用の相関器に出力する。
【０００４】
また、本発明に関連する他の従来技術として、一部をＤＳＰ（Digital Signal Processor）で構成したＤＬＬが知られる（例えば特許文献１参照。）。
【０００５】
【特許文献１】特開２００２‐２１７７８４号公報
【非特許文献１】佐和橋衛，「DS-CDMA逆変調型coherent DLL」、電子情報通信学会総合大会講演論文集，１９９５年，通信Ｎｕｍ．１，ｐ．４０７
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら従来技術のＤＬＬでは、処理を高速化するために構成の大半を専用のハードウェア（専用ＬＳＩ）で実現していた。しかし無線基地局装置のように多数のパス追従を行う場合、ハードウェアが大型化するという問題があった。また性能向上著しい移動通信システムにおいて、仕様変更の度にＬＳＩを修正するのは容易でないという問題があった。
【０００７】
本発明は、上述した課題に鑑みてなされたものであり、ハードウェアを大型化することなく、容易に仕様変更することができるＤＬＬを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のＤＬＬは、少なくとも相関演算を行う処理部と、オーバサンプルされた受信データを複数シンボル分記憶する同時アクセス可能な２面のメモリと、を備え、前記メモリは、最低限必要な量に対し同期補足誤差に相当する予備の記憶容量を備え、チップ単位でデータが連続するようにオーバサンプル毎に受信データを分離して記憶し、前記処理部は、アーリ及びレイトパスについて相関演算を行う受信データが記憶されている前記メモリ上でのアドレスを計算する。
【０００９】
また本発明のＤＬＬは、受信データを現在の同期タイミング及び前記同期タイミングよりも夫々Ｔｃ／２遅れ及び進んでいる拡散符号と受信データとを１シンボル長単位で夫々相関演算して同期タイミング相関値及びアーリ相関値及びレイト相関値を夫々算出し、前記アーリ及びレイト相関値の差分を算出し、同期タイミング相関値から伝送路推定により求まる補償量と、前記補償量を相関値に乗算して判定したシンボルとを、前記差分に夫々乗算して位相誤差を算出し、前記位相誤差を定期的にリセットしながら重み付け平均して平均値を算出し、前記平均値に応じて拡散コードを発生させる前記同期タイミングを制御する。
【００１０】
また本発明のＤＬＬは、前記アーリ及びレイト相関値の和を算出し、同期点相関値から伝送路推定により求まる補償量と前記補償量を相関値に乗算して判定したシンボルとを前記差分に夫々乗算して位相誤差を算出し、前記位相誤差を重み付け平均して和平均値を算出し、前記和平均値に規格化閾値を乗算して閾値を算出し、前記平均値と閾値とと比較して平均値のほうが大きいときは平均値の符号に応じて同期タイミングを変更し、差分のほうが小さいときは現在の同期タイミングを維持する。
【発明の効果】
【００１１】
本発明のＤＬＬによれば、ハードウェアを大型化することなく、容易に仕様変更することができる。
【発明を実施するための最良の形態】
【００１２】
以下の説明において、実施例は請求項に係る発明を限定するものではなく、また実施例の中で説明されている特長の組み合わせの全てが発明の解決手段に必須であるとは限らない。 
図４は本発明の実施形態におけるＤＬＬのブロック図であり、ＣＤＬＬ方式を採用している。図４の動作を説明するとまず、複素受信ベースバンド信号が２つの相関器２１、２２に入力され、現在の同期点位相よりもＴｃ／２（Ｔｃ：チップレート）遅れているロングコード（Late）及びＴｃ／２進んでいるロングコード（Early）と夫々１シンボル長単位で相関演算を行い、相関値を１シンボル時間毎に夫々出力する。相関器２１、２２は複素信号のＩ／Ｑ成分夫々で相関演算を行うので、出力も複素信号である。  また、複素受信ベースバンド信号は相関器３１にも入力され、受信データ復調用に現在の同期位置にてロングコードと相関演算を行う。そして、伝送路推定器３２は、複素受信ベースバンド信号にスロット毎に挿入されるパイロットシンボルを用いて、伝送路推定（チャネル推定）を行い、位相回転量を示す複素信号を出力する。具体的には、パイロットシンボルはＷ−ＣＤＭＡ方式においてＤＰＣＣＨ（Dedicated Physical Control Channel：個別物理制御チャネル）の大部分を占めて端末より送信されており、基地局もこのパイロットシンボルを既知であるので、両者を比較する（共役複素乗算する）ことで位相の回転量を算出することが出来る。なおＷ−ＣＤＭＡのシンボルマッピングはＱＰＳＫなので、振幅について厳密に伝送路推定する必要は無い。
【００１３】
次に乗算器３３は、伝送路推定器３２の出力と相関器３１の出力とを共役複素演算し、相関器３２の逆拡散値から位相回転を除去する。次に判定器３４は、乗算器３３の出力をＱＰＳＫでデマッピングすることでシンボル判定し、復調データとして出力する。
【００１４】
一方、相関器２１、２２の逆拡散値は減算器１５’により複素減算され、その差分が逆変調回路３５により復調データと共役複素乗算され、変調成分が除去される。次に乗算器３６は、逆変調回路３５の出力に伝送路推定器３２の出力を共役複素乗算して、位相回転を補償する。この段階で、相関値のレイト／アーリ差分は、ほぼＩ軸上で正負に変動し、Ｉ成分が同期点との位相差を示す複素数となるので、平均化回路２６はこのＩ成分を取り出して雑音除去のための平均化処理を行う。次に拡散コード発生回路２７は平均化回路２６の出力用いて、拡散コードを発生させるクロックタイミングを位相差が０になるように調整する。通常はタイミングをＡ／Ｄ変換のサンプリング周期と等しい制御ステップ単位で調整する。遅延器２８、２９は相関器３１が用いるロングコードに対し進み及び遅れ方向に夫々Ｔｃ／２時間の時間差を与えて、相関器２２、２１に夫々出力する。なお、逆変調回路に入力する復調データは受信信号を実際に判定したものに限らず、パイロット信号区間においては基地局で既知のパイロットシンボルを直接用いても良い。
【実施例１】
【００１５】
本実施例は本発明をＷ−ＣＤＭＡ用無線基地局装置に適用したものであり、以後の説明における用語はＷ−ＣＤＭＡにおける一般的な解釈に順ずる。
図１は本実施例におけるＤＬＬのハードウェア構成図である。１はＤＬＬの全ての主要な処理を行うＤＳＰであり、メモリ１１、ＡＬＵ１２、シフタ１３、Ｊ，Ｋレジスタ１４、Ｘ，Ｙレジスタ１５を備える。
メモリ１１は処理するデータ（複素受信ベースバンド信号）やパラメータを記憶するメモリである。ＤＬＬを専用ハードウェアで実現する場合は相関器自体が処理分のデータをシフトレジスタ等に記憶していたが、本実施例では処理に必要な２スロット（5120チップ）分のデータをメモリ１１に格納する。メモリは上位処理を行う他のＤＳＰからスロットもしくはシンボル毎に最新のデータが上書き更新される。データは夫々が約２スロット分の容量を持つ２つのメモリ面に交互に更新するので、更新中であってもＤＬＬ処理を行うことができる。
ＡＬＵ（Arithmetic Logic Unit）１２は、加減算や乗算などの算術論理演算を行う。シフタ１３は、専らビットシフト処理を行う。ＡＬＵ１２およびシフタ１３は協働して相関演算を行う。１４は、ＡＬＵ１２用のデータの一時記憶などに用いるＪおよびＫレジスタである。１５は、加減算、シフト処理用のデータの一時記憶などに用いるＸおよびＹレジスタである。
【００１６】
図２および図３は本実施例におけるメモリ１１のメモリテーブルである。メモリ１１は同時アクセス可能なＡおよびＢ面の２面構成になっており、以下の説明で特に断らない限り、Ａ、Ｂ面で左右に並べて図示された部分には、基本的に同じ情報が格納されている。また、左に記されたアドレスは各ブロックの先頭アドレスを示している。５１および５４はプログラムが格納されるプログラムセクションである。プログラムはデバッグ用若しくは評価用のプログラムも含む。５２、５３は各種のパラメータを記憶するパラメータである。５５、５６は、複素受信ベースバンド信号（以後ＲｘＤａｔａと呼ぶ）が格納される受信データセクションである。Ａ，Ｂ面の受信データセクション５５、５６は夫々その内部において、２本のダイバーシティ受信アンテナに対応して２つ（Ant0〜Ant1）に大きく分かれており、更にチップレートの４倍のオーバーサンプリングに対応して４つ（Smp0〜Smp3）のサンプルタイミングごとに予め分けて格納されている。このため、チップ単位の相関処理を行うときにメモリを連続アクセスできる。
【００１７】
５７は、パイロットシンボルが格納されているパイロットセクションである。５７に格納されたパイロットシンボルは、例えば位相変動補償（伝送路推定）を行うために上りＤＰＣＣＨに挿入されたパイロットシンボルと対応する。５８は、電圧加算値から算出されるアーリ、レイト夫々の平均電力値を格納する平均電力セクションである。５９は、電圧加算値を格納する電圧加算値セクションである。６０は、パスサーチを行うための記憶エリアであり本発明には直接関係しない。６１は、その他の一時記憶のためのワーク領域である。
【００１８】
図４は、本実施例におけるＲｘＤａｔａの受信時のデータ構造を１スロットについて時系列に示した図である。Ｗ−ＣＤＭＡ方式において通常の無線フレームは１０ｍｓの長さを有し、１５個のスロットからなり、各スロットは拡散率にもよるが本例では１０シンボルからなり、各シンボルは２５６チップで拡散されている。この１チップ時間Ｔｃの逆数をチップレートといい、3.84ＭＨｚである。受信側では、もしチップタイミングがＴｃ／２ずれた（つまりチップとチップの境界）タイミングでサンプリングしてしまうと復調できないことから、少なくともチップレートの２倍でサンプルする必要があり、基地局である本実施例ではｓｍｐ０〜ｓｍｐ３のように４倍でサンプリングしている。
図５から図８は、本実施例におけるＤＬＬの動作を説明するフローチャートである。本実施例のＤＬＬは立上げ後にまず、イニシャルセットを開始する。初期設定（Ｓ１００）では、ＤＳＰのシステムレジスタ初期設定、シーケンサコントロールレジスタ設定、割込みベクターテーブル設定、割込みマスク設定、重み付け平均の重みなどの定数設定、初期値設定、ＤＭＡ設定やメモリ初期値設定を行う。
次のＣＲＭＧ立上り待ち（Ｓ１０２）では本処理の上位処理であるＣＲＭＧ（チップレート管理部）の立ち上がりを一定時間待つ。次のＳｒｃｈ１，２の立上り待ち（Ｓ１０３）では、パスサーチャ部の立ち上がりを一定時間待つ。
【００１９】
次にイニシャルループを開始する。このループは後のメインループが最初から正常に動作するように状態を準備するための処理であり、１度だけ実行される。イニシャルループはメインループの処理の一部からなり、その処理はメインループのものと同様なので説明を省略する。
。
【００２０】
次にメインループを開始する。メインループは割込み処理により１シンボル単位で一巡するように制御される。
まず、上位処理によりＲｘＤａｔａが受信される（Ｓ１１１）。受信が一旦完了するとＣＲＭＧから割込みがかかるので、割込みを待つ（Ｓ１１２）。またＲａｋｅ合成するパスの補足を行うＳｒｃｈ１，２がパスを特定すると割込みがかかるので、割込みを待つ（Ｓ１１３）。割込みがあるとＣＲＭＧへ割り込みがあったことを伝えるために割込みフラグを出力する（Ｓ１１４）。次に、スロットナンバが偶数で且つシンボルナンバが５のとき転送ＤａｔａアドレスをＲｘＤａｔａが格納される領域の先頭（基準Ｄａｔａアドレス）にリセットする（Ｓ１１５）。スロットナンバは４スロット周期でリセットされる変数であり、またシンボルナンバはプログラム上のカウンタ変数でありメモリ上のSym0〜Sym21の数字と必ず一致するものではない。
次に、ＲｘＤａｔａ内部メモリ間転送（Ｓ１１６）では、上位処理によりメモリＡに書込まれたアンテナＡのＲｘＤａｔａをメモリＢにコピーし、メモリＢに書込まれたアンテナＢのＲｘＤａｔａをメモリＡにコピーする。コピーは転送Ｄａｔａアドレスが示す該当シンボルに対して行う。
次に転送Ｄａｔａアドレスを１シンボル分（0x80）インクリメントする（Ｓ１１７）。次にインクリメントした転送Ｄａｔａアドレスが２０番目のシンボル（Sym20）を示している場合、基準Ｄａｔａアドレスにリセットする（Ｓ１１８）。次に現在の（Ｓ１１６でコピーした）シンボルナンバが５の場合、０番目のシンボル（Sym0）を２０番目（Sym20）にコピーし、シンボルナンバが６の場合、１番目のシンボルを２１番目にコピーする（Ｓ１１９）。これにより２０シンボル以上前のＲｘＤａｔａが上書き更新される前にSym20〜Sym21に待避させることができる。
【００２１】
次にＤＬＬコア関数を開始する。まず各種アドレスを設定する（Ｓ１２０）。続いて個別物理制御チャネル（ＣＣｈ）ＤＬＬ処理を開始する。まず、処理チャネルが無効なときはＣＣｈＤＬＬ処理を行わないようにする（Ｓ１２１）。次にメインフィンガのアドレス修正に必要なダミーフィンガのアドレス計算を行う（Ｓ１２２）。次に逆拡散のＤコードに0xCCCCCCCCをＸＯＲ演算して逆拡散Ｃコードを算出する（Ｓ１２３）。
次にレイト／アーリーフィンガアドレス設定処理を行う（Ｓ１２４）。１チップを４倍サンプリングする本実施例では±０．５チップは±２サンプルに相当するため、現在の同期点が０又は１番目のサンプル（Smp0又はSmp1）であればレイト、アーリー両フィンガは２又は３番目のサンプル（Smp2又はSmp3）となり、同期点が２又は３番目のサンプル（Smp2又はSmp3）であればレイト、アーリー両フィンガは０又は１番目のサンプル（Smp0又はSmp1）となる。また、レイト／アーリー間の１チップの差は、アドレスにおいて0x2C00と0x2BFFのように１の差になる。このような計算を各フィンガに対して行う。
次に、得られたフィンガアドレスが誤っている場合、安全な無効アドレスに変更する（Ｓ１２５）。次に、レイト／アーリーフィンガの逆拡散処理を行う（Ｓ１２６）。次に、逆拡散処理の結果を、上位処理より受け取った伝送路推定結果を用いて位相補償し、パイロットパターンと乗算したもの（電圧値）を累積加算（単純加算）する（Ｓ１２７）。次に現在のシンボルナンバが９（つまり、スロットの終わり）の場合、電圧値の累積加算値を電力化し、前スロットまでの値と重み付け平均する（Ｓ１２８）。
以上の動作をＤＳＰの担当チャンネル数（４８Ｃｈ）分行うとＣＣｈＤＬＬ処理、及びＤＬＬコア関数処理を終了する。
【００２２】
最後に、処理結果のＤＭＡ転送（Ｓ１３０）、及びシンボル数のカウントを＋１して（Ｓ１３１）、メインループの先頭（Ｓ１１１）に戻る。
【００２３】
本実施例によれば、ＤＬＬをＤＳＰで構成し、パラメータやデバッグプログラムをメモリに外部からロードするようにしたので、容易に仕様変更が出来きるとともに、実際のハードウェアを用いて試験を行いパラメータを最適化して性能を向上させることが容易に出来る。
【実施例２】
【００２４】
本実施例では、平均化回路２６’について詳細に開示する。その他の構成は実施例１と同様とする。図１０は、平均化回路２６’の内部構成の一例を示す図である。乗算器３６の出力（スカラ）が入力されると、まず、忘却係数λが乗算され、１つ前の出力を記憶している遅延器の出力に（１−λ）を乗算したものと加算され、出力される。つまり入力Ｙに対する出力の時系列Ｙ（ｔ）はＹ（ｔ）＝λ・Ｘ（ｔ）＋（１−λ）・Ｙ（ｔ−１）で表され、時定数はλにより決まる。この構成はメモリとして過去のデータ１つ分を記憶するだけでよく、過去の複数個の入力信号を記憶して逐次合計する方法に比べ構成が簡易なのが利点である。ただし過去のデータを引きずる傾向がありこれが問題になる場合は、遅延器を一定の回数（時間）毎にリセットするとともに、リセット直前の出力を保持して用いるとよい。出力が収束する途中でリセットしても、リセットまでの回数が常に一定であるので、十分信頼できる平均値が得られる。
【００２５】
また、他の平均化回路２６’として、乗算器３６の出力のＩ成分だけではなく、Ｑ成分の絶対値を加算したものを用いる構成を開示する。実施例１の構成では、受信信号における干渉波に対する希望波の強度が低下すると、伝送路推定の精度の劣化などにより乗算器３６の出力がＩ軸上に収束せず、Ｑ軸上に漏れる。Ｉ成分の差分は０に近い値であり、Ｑ軸に漏れた成分がこの差分に現れると非常に大きな誤差になる虞がある。そこでＩ成分とＱ成分の絶対値の和（Ｉ＋｜Ｑ｜）を平均化回路２６’の入力として用いるとＱ軸に漏れた成分の影響を抑えることができる。
【００２６】
また、他の平均化回路２６’として、相関値についてレイト／アーリーの差分だけでなく、和も平均化する構成を開示する。図１１の従来の拡散コード発生回路２７は、平均化回路２６から入力された平均値の符号を判定して２値化し、拡散コードを発生させるクロックタイミングに対し、常に位相を遅らせるか進めるかいずれかの変化を与えていたために、収束してもジッタが止まらないという問題があった。そこで平均値の絶対値がある大きさ以下のときは現在のクロックタイミングを維持するという３値制御を行う。具体的にはレイト／アーリーの相関値の和に、差分同様の逆変調回路３５及び乗算器３６、平均化回路２６’による変調除去、位相補償、平均化を施し、更に規格化閾値を乗算した値を、実施例１の平均化回路２６’の出力（差分）と比較し、差分のほうが大きいときは実施例１同様とし、差分のほうが小さいときは現在のクロックタイミングを維持するような指示を拡散コード発生回路１７に出力する。なお、差及び和を求めるのは、レイト／アーリーの夫々の相関値に変調除去、位相補償、平均化を施した後でも良い。
【図面の簡単な説明】
【００２７】
【図１】実施例１のＤＬＬのハードウェア構成図
【図２】実施例１のメモリ１１のメモリテーブル
【図３】実施例１のメモリ１１のメモリテーブル
【図４】本発明の実施形態におけるＤＬＬのブロック図
【図５】実施例１のＤＬＬの動作を説明するフローチャート
【図６】実施例１のＤＬＬの動作を説明するフローチャート
【図７】実施例１のＤＬＬの動作を説明するフローチャート
【図８】実施例１のＤＬＬの動作を説明するフローチャート
【図９】本発明の実施形態におけるＤＬＬのブロック図
【図１０】実施例２の平均化回路２６’のブロック図
【図１１】従来のＤＬＬのブロック図
【符号の説明】
【００２８】
１１：メモリ、  １２：ＡＬＵ、  １３：シフタ、  １４：Ｘ、Ｙレジスタ、
１５：Ｊ、Ｋレジスタ、  
２１、２２：相関器、  ２５’：減算器、  ２６：平均化回路、
２７：拡散コード発生器、  ２８、２９：遅延器（Ｔｃ／２）、
３１：相関器、  ３２：伝送路推定器、  ３３、３６：乗算器、  ３４：判定器、
３５：逆変調回路
【図１】
2005136757.tif 000003
【図２】
2005136757.tif 000004
【図３】
2005136757.tif 000005
【図４】
2005136757.tif 000006
【図５】
2005136757.tif 000007
【図６】
2005136757.tif 000008
【図７】
2005136757.tif 000009
【図８】
2005136757.tif 000010
【図９】
2005136757.tif 000011
【図１０】
2005136757.tif 000012
【図１１】
2005136757.tif 000013