(57)【特許請求の範囲】
【請求項１】
ある位相回転量に対応する回転子を用いて入力信号の周波数シフトを行う周波数シフト回路において、
互いに粗さが異なる回転角度に対応した複数の複素データを記憶する複数のテーブルを有し、アドレス情報に基づいてテーブル毎に複素データを出力するテーブル引き部と、
前記テーブル引き部から出力されたテーブル毎の複素データを複素乗算する複素乗算部と、
複素乗算結果に基づく位相回転量に対応した回転子を生成する生成部と、
回転角度情報θに基づいて、前記複素乗算結果がｅｘｐ（２πｊθ）になるように、テーブル毎に前記アドレス情報を算出する算出部と、
を有する、
ことを特徴とする周波数シフト回路。
【請求項２】
前記アドレス情報はテーブル番号であり、
前記テーブル引き部は、
所定の精度で算出された１周分の回転角度情報のうちの、第１の回転角度毎の回転角度情報に対応する複素データが記憶された第１のテーブルと、
前記第１の回転角度よりも細かい第２の回転角度毎の回転角度情報に対応する複素データが記憶された第２のテーブルと、
を有し、
前記算出部は、前記テーブル番号として、前記回転角度情報θに応じて、前記第１の回転角度毎の回転角度情報のいずれか１つと、前記第２の回転角度毎の回転角度情報のいずれか１つを算出する、
ことを特徴とする請求項１に記載の周波数シフト回路。
【請求項３】
前記算出部は、前記回転角度情報θの除算と剰余計算を利用して前記テーブル番号を算出する、
ことを特徴とする請求項２に記載の周波数シフト回路。
【請求項４】
前記算出部は、前記回転角度情報θに対応するデジタル値の上位ビットから順に所望のビット数のデジタル値を抽出することにより、前記テーブル番号を生成する、
ことを特徴とする請求項２に記載の周波数シフト回路。
【請求項５】
近似により、前記第２の回転角度毎の回転角度情報に対応する複素データの実部を１とする、
ことを特徴とする請求項２、３または４に記載の周波数シフト回路。
【請求項６】
さらに、前記第２の回転角度毎の回転角度情報に対応する複素データの虚部に対応するデジタル値について、０がならぶ上位ビットを削除する、
ことを特徴とする請求項５に記載の周波数シフト回路。
【請求項７】
さらに、
前記回転角度情報θとして、弧度法による角度で表現された回転角度情報を所定の精度で算出することとし、当該弧度法による角度で表現された回転角度情報を前記第２のテーブル出力の虚部の値として用い、
前記生成部は、前記回転角度情報θについて、前記第１のテーブルから出力された複素データと、前記弧度法による角度で表現された回転角度情報とを複素乗算し、複素乗算結果に基づいて回転子を生成する、
ことを特徴とする請求項５または６に記載の周波数シフト回路。
【請求項８】
２つの周波数帯域の信号を、１系統のアナログ回路にて受信し、その後、デジタル回路にて分離する通信装置であって、
前記アナログ回路が出力するアナログ信号をデジタル信号に変換するＡ／Ｄ変換器と、
Ａ／Ｄ変換後のデジタル信号に対して、分離すべき周波数帯域の信号毎に周波数シフトを行う、２つの周波数シフト回路と、
前記周波数シフト回路毎に設けられ、周波数シフト後の信号から前記分離すべき周波数帯域の信号を抽出する、２つのデジタルフィルタと、
を有し、
前記周波数シフト回路が、
互いに粗さが異なる回転角度に対応した複数の複素データを記憶する複数のテーブルを有し、アドレス情報に基づいてテーブル毎に複素データを出力するテーブル引き部と、
前記テーブル引き部から出力されたテーブル毎の複素データを複素乗算する複素乗算部と、
複素乗算結果に基づく位相回転量に対応した回転子を生成する生成部と、
回転角度情報θに基づいて、前記複素乗算結果がｅｘｐ（２πｊθ）になるように、テーブル毎に前記アドレス情報を算出する算出部と、
を有し、
ある位相回転量に対応する回転子を用いて入力信号の周波数シフトを行う、
ことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回転角度情報に基づいて回転子を求める周波数シフト回路に関する。
【背景技術】
【０００２】
たとえば、下りの通信速度を高速化する技術の１つとして、規格標準化団体３ＧＰＰ（Third  Generation  Partnership  Project）により標準化されたＤＣ−ＨＳＤＰＡ（Dual  Cell  -  High  Speed  Downlink  Packet  Access）がある。このＤＣ−ＨＳＤＰＡは、ＨＳＰＡ（High  Speed  Packet  Access）という通信方式を利用して高速通信を行う技術であり、隣り合う２つの周波数帯域（キャリア）を１台の端末で同時に受信することで伝送速度を２倍にしている。そのため、ＤＣ−ＨＳＤＰＡを採用する通信システムにおいて、端末は、受信したＤＣ−ＨＳＤＰＡの信号を所定の方法で分離し、分離後の周波数帯域毎に復調処理を行う。
【０００３】
このようなＤＣ−ＨＳＤＰＡの信号を端末で分離する所定の方法として、たとえば、ＤＣ−ＨＳＤＰＡの信号を１系統のアナログ回路にて受信し、Ａ／Ｄ変換後のデジタル信号をデジタル信号処理にて分離する方法がある。具体的には、まず、アナログ回路において、たとえば、１０ＭＨｚの周波数帯域で受信処理を行い、その後、受信したアナログ信号をデジタル信号に変換する。そして、デジタル回路において、２チャンネル分のデジタル信号をデジタル信号処理にて分離する。たとえば、２チャンネル分のデジタル信号（１０ＭＨｚ）の中心周波数をチャンネル毎に設けられた周波数シフト回路にて周波数シフト（±２．５ＭＨｚ）して、さらに、チャンネル毎に設けられたデジタルフィルタにて所望の帯域（５ＭＨｚ）だけを抽出する。このような処理により、２チャンネル分のデジタル信号をチャンネル単位の信号に分離することが可能となる。
【０００４】
ここで、上記のように２チャンネル分のデジタル信号を分離するために使用される従来の周波数シフト回路について説明する。たとえば、従来の周波数シフト回路では、位相回転量である回転子ωを、サンプル周期をｔとした場合の複素指数信号ｅｘｐ（ｊ２πｆｔ）と前回のサンプル周期における回転子とを入力とする複素乗算器によるループ演算により生成する。そして、回転子ωを、たとえば、上記２チャンネル分のデジタル信号に乗算することにより、周波数シフトを行う。したがって、上記のように２チャンネル分のデジタル信号を分離する場合には、チャンネル毎に、回転子ωを演算する周波数シフト回路を設け、それぞれの回路において周波数シフトを行うことになる。
【０００５】
しかしながら、上記に示す従来の周波数シフト回路は、回転子ωに高い精度が要求される。具体的には、上記従来の周波数シフト回路では、たとえば、２．５ＭＨｚの周波数シフトを０．１Ｈｚ程度の誤差で行うと、下記（１）式により、回転子には２５ビット程度の精度が要求されることとなる。すなわち、従来の周波数シフト回路では、サンプル毎に２５ビットの複素乗算が必要となり、処理量の増大が問題となる。
ｌｏｇ2（２５０００００／０．１）＝２４．６      ・・・（１）
【０００６】
一方で、以前から、回転子ωをテーブル引きし、サンプル毎の２５ビットの複素乗算を行わない構成とすることにより、上記の問題を解決可能な周波数シフト回路がある。この従来の周波数シフト回路は、角度のみを２５ビットの精度で計算し、回転子ωを回転子テーブルに記憶する構成とする。回転子の精度は、たとえば、Ａ／Ｄ変換器のビット数と同程度のビット数でよく、一例として１０ビットとする。このとき、角分解能は１２ビットとなる。すなわち、この周波数シフト回路は、２５ビットの精度で計算した角度θの角分解能を１２ビットに下げて、この１２ビットの角度情報に基づいて所定の回転子テーブルからｅｘｐ（２πｊθ）をテーブル引きすることにより、１０ビットの回転子ωを出力する。これにより、回転子ωを求めるために、サンプル毎に２５ビットの複素乗算を行わなくてもよくなるため、処理量を大幅に低減することが可能となる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０００−２５２８６６号公報
【特許文献２】特開平７−２２１８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記回転子テーブルを用いた従来の周波数シフト回路においては、たとえば、ＩチャネルおよびＱチャネル用に２12×１０ビット（４０９６×１０ビット）の回転子テーブルを使用することになる。すなわち、上記従来の周波数シフト回路においては、比較的大き目のテーブルを用意することになり、回路規模の低減という観点から、さらなる改善の余地がある。
【０００９】
開示の技術は、上記に鑑みてなされたものであって、より小さい回路規模で周波数シフトを実現可能な周波数シフト回路を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示する周波数シフト回路は、一つの態様において、ある位相回転量に対応する回転子を用いて入力信号の周波数シフトを行う周波数シフト回路であって、複素データが記憶された複数のテーブルを有し、アドレス情報に基づいてテーブル毎に複素データを出力するテーブル引き部と、前記テーブル引き部から出力されたテーブル毎の複素データを複素乗算する複素乗算部と、複素乗算結果に基づく位相回転量に対応した回転子を生成する生成部と、回転角度情報θに基づいて、前記複素乗算結果がｅｘｐ（２πｊθ）になるように、テーブル毎に前記アドレス情報を算出する算出部と、を有する。
【発明の効果】
【００１１】
本願の開示する周波数シフト回路の一つの態様によれば、従来よりも小さい回路規模で周波数シフトを実現できる、という効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、周波数シフト回路を備えた通信装置の実施例１の構成例を示す図である。
【図２】図２は、実施例１の周波数シフト回路の構成例を示す図である。
【図３】図３は、複素乗算部の詳細構成を示す図である。
【図４】図４は、実施例２の周波数シフト回路の構成例を示す図である。
【図５】図５は、実施例３の周波数シフト回路の構成例を示す図である。
【図６】図６は、実施例４の周波数シフト回路の構成例を示す図である。
【図７】図７は、複素乗算部の詳細構成を示す図である。
【図８】図８は、実施例５の周波数シフト回路の構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する周波数シフト回路および通信装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１４】
図１は、周波数シフト回路を備えた通信装置の実施例１の構成例を示す図である。この通信装置は、ダウンコンバータ（down  converter）１とＬＰＦ（アナログフィルタ）２とＡＤＣ（Ａ／Ｄコンバータ）３と周波数シフト回路４−１，４−２とＤＴＦ（デジタルフィルタ）５−１，５−２を有する。本実施例においては、たとえば、Ｗ−ＣＤＭＡ方式の規格標準化団体３ＧＰＰにより標準化されたＤＣ−ＨＳＤＰＡの信号を受信する。ＤＣ−ＨＳＤＰＡでは、隣り合う２つの周波数帯域（５ＭＨｚ幅×２）を１台の端末（上記通信装置に相当）で同時に受信することで伝送速度を２倍にしている。そのため、上記通信装置では、受信したＤＣ−ＨＳＤＰＡの信号を所定の方法で分離し、分離後の周波数帯域毎に復調処理を行う。
【００１５】
つづいて、本実施例の通信装置の動作を説明する。本実施例の通信装置では、たとえば、ＤＣ−ＨＳＤＰＡの信号を１系統のアナログ回路にて受信し、Ａ／Ｄ変換後のデジタル信号をデジタル信号処理にて分離する。具体的には、まず、アナログ回路において、ダウンコンバータ１が受信信号を所望の周波数にダウンコンバートし、ＬＰＦ２が、ダウンコンバートされた信号から所望の１０ＭＨｚの周波数帯域を通過させ、ＡＤＣ３に対して出力する。その後、ＡＤＣ３が、受信したアナログ信号を、たとえば、１０ビットの精度でデジタル信号に変換する。そして、デジタル回路において、２チャンネル分のデジタル信号をデジタル信号処理にて分離する。たとえば、チャンネル毎に設けられた周波数シフト回路４−１，４−２が、２チャンネル分のデジタル信号（１０ＭＨｚ）の中心周波数をそれぞれ所望の周波数（±２．５ＭＨｚ）にシフトする。その後、チャンネル毎に設けられたＤＴＦ５−１，５−２が、それぞれ、所望の帯域（５ＭＨｚ幅）を抽出する。
【００１６】
本実施例では、たとえば、上記のように２チャンネル分のデジタル信号を分離する場合は、チャンネル毎に、周波数シフト量に対応した位相回転量である回転子ωを演算する周波数シフト回路４−１，４−２を設け、それぞれの回路において個別に周波数シフトを行う。
【００１７】
つづいて、上記通信装置内の周波数シフト回路（４−１，４−２）について説明する。図２は、実施例１の周波数シフト回路の構成例を示す図である。図２において、実施例１の周波数シフト回路は、角度計算部１１と分離テーブル番号算出部１２とテーブル引き部１３と複素乗算部１５と下位ビット削除部１６と複素乗算部１７とを有する。また、テーブル引き部１３は、ｅｘｐテーブル１４−１，１４−２を含む。なお、周波数シフト回路４−１と周波数シフト回路４−２は同一の構成を有するものとする。ここでは、説明の便宜上、周波数シフト回路４−１を用いて説明する。
【００１８】
周波数シフト回路４−１において、角度計算部１１は、たとえば、符号無し２５ビットのクリップ無し加算を行う加算器を有する構成とし、回転角度情報θを２５ビットの精度で計算する。この加算器は、フィードバックされる回転角度情報に対しシンボル毎に固定値（角度）Δθを加算するループ演算を行う。たとえば、回転角度情報が４ビットのデジタル信号の場合は、１００００が３６０度に相当する。上記加算器では、１１１１を越えた時点で自動的に１００００を引いた値（３６０度を引いた値）００００になるので、いわゆるｍｏｄ演算をする必要がない。角度計算部１１では、このような加算器によるループ演算の結果として、シンボル毎に更新された２５ビットの回転角度情報θを出力する。
【００１９】
分離テーブル番号算出部１２は、角度計算部１１が出力する２５ビットの回転角度情報θに基づいて、各ｅｘｐテーブルのアドレスに相当する分離テーブル番号θ1，θ2，…，θnを算出する。ここでは、各ｅｘｐテーブル出力の複素乗算値がｅｘｐ（２πｊθ）になるように、回転角度情報θから分離テーブル番号θ1，θ2，…，θnを算出する。そのため、分離テーブル番号θ1，θ2，…，θnは、下記（２）式を満たすものとする。なお、δは、回転角度の誤差を表し、設計する際に、回転子の精度として必要な値よりも小さい値を設定する。
θ＝θ1＋θ2＋…＋θn＋δ      …（２）
これにより、各ｅｘｐテーブル出力の複素乗算値を、ｅｘｐ（２πｊθ）にほぼ等しい値にすることができる。以下、本実施例では、一例として、分離テーブル番号がθ1，θ2の場合について説明する。
【００２０】
テーブル引き部１３は、テーブル引きにより、ｅｘｐテーブル１４−１，１４−２から分離テーブル番号に対応するデータ（複素データ）を抽出する。ｅｘｐテーブル１４−１，１４−２には、それぞれ、分離テーブル番号θ1，θ2に対応するデータであって、各テーブルの出力の複素乗算値がｅｘｐ（２πｊθ）となるようなデータ（たとえば、１０ビットの情報）が記憶されている。
【００２１】
複素乗算部１５は、各テーブルの出力（１０ビット）の複素乗算を行い、複素乗算値ｅｘｐ（２πｊθ）を出力する。図３は、複素乗算部１５の詳細構成を示す図である。複素乗算部１５では、ｅｘｐテーブル１４−１出力の実部（Ｉ1）とｅｘｐテーブル１４−２出力の実部（Ｉ2）とを乗算し、また、ｅｘｐテーブル１４−１出力の虚部（Ｑ1）とｅｘｐテーブル１４−２出力の虚部（Ｑ2）とを乗算し、それぞれの乗算結果を加算する。同時に、ｅｘｐテーブル１４−１出力の実部（Ｉ1）とｅｘｐテーブル１４−２出力の虚部（Ｑ2）とを乗算し、また、ｅｘｐテーブル１４−２出力の実部（Ｉ2）とｅｘｐテーブル１４−１出力の虚部（Ｑ1）とを乗算し、それぞれの乗算結果を加算する。これにより、複素乗算値ｅｘｐ（２πｊθ）の実部（Ｉ）および虚部（Ｑ）を得る。
【００２２】
下位ビット削除部１６は、複素乗算値ｅｘｐ（２πｊθ）の余剰ビットを削除して回転子ωを生成する。回転子の精度は、たとえば、ＡＤＣ３のビット数と同程度のビット数でよく、ここでは、一例として１０ビットとする。本実施例では、下位ビット削除部１６は、たとえば、複素乗算値ｅｘｐ（２πｊθ）の下位ビットを削除し、１０ビットを残す処理を行う。
【００２３】
複素乗算部１７は、下位ビット削除部１６により生成された回転子ωを、たとえば、ＡＤＣ３が出力する上記２チャンネル分のデジタル信号に乗算することにより、周波数シフトを行う。
【００２４】
ここで、分離テーブル番号算出部１２による処理の一例を具体的に説明する。なお、本実施例では、説明の便宜上、一周の回転角度情報をθ＝０，１，…２５５で表現し、さらにδ＝０とする場合について説明するが、その限りではない。
【００２５】
この場合、たとえば、従来のように１つのテーブルからｅｘｐ（２πｊθ）を求めることとすると、このテーブルには、回転角度情報θの値に対応する２５６個の情報を保持することとなる。一方、本実施例では、たとえば、図２に示すように、テーブルを２つ（ｅｘｐテーブル１４−１，１４−２に相当）に分離する。具体的には、たとえば、５つおきのθ1（θ1＝0,5,10,…,255）に対応するデータを取り出し可能なｅｘｐテーブル１４−１と、θ2＝0,1,2,…,10に対応するデータを取り出し可能なｅｘｐテーブル１４−２、に分離する。すなわち、ｅｘｐテーブル１４−１には粗い回転角度に対応するデータを記憶しておき、ｅｘｐテーブル１４−２には、ｅｘｐテーブル１４−１よりも細かい回転角度（微小回転角度）に対応するデータを記憶しておく。そして、分離テーブル番号算出部１２は、各ｅｘｐテーブルの出力の複素乗算値がｅｘｐ（２πｊθ）となるように、任意のθについて、θ＝θ1＋θ2を満たすθ1とθ2を選択して出力する。たとえば、θ＝２２に対応するｅｘｐ（２πｊθ）をテーブル引きする場合には、分離テーブル番号算出部１２は、θ1とθ2の組み合わせとして、「θ1＝２０，θ2＝２」または「θ1＝１５，θ2＝７」を選択して出力する。このようなテーブル構成とすることにより、本実施例では、テーブルに記憶しておく情報の総数を「５２＋１１＝６３」個とすることができ、上記１つのテーブルの場合の情報総数（２５６個）と比較して、情報量を抑えることができる。
【００２６】
上述してきたように、本実施例では、回転子ωを求めるためのｅｘｐテーブルを複数に分離し、各ｅｘｐテーブル出力の複素乗算値がｅｘｐ（２πｊθ）になるように、回転角度情報θから分離テーブル番号θ1，θ2，…，θnを算出することとした。そして、各ｅｘｐテーブル出力の複素乗算値ｅｘｐ（２πｊθ）に基づいて回転子ωを生成することとした。これにより、ｅｘｐテーブルに記憶する情報量を低減させることができ、テーブル容量を小さくすることができるので、従来の周波数シフト回路よりも小さい回路規模で周波数シフトを実現できる。
【実施例２】
【００２７】
図４は、実施例２の周波数シフト回路の構成例を示す図である。なお、図４において、前述した実施例１の図２と同様の構成については、同一の符号を付してその説明を省略する。また、本実施例の通信装置は、実施例１の図１と比較して、周波数シフト回路の内部構成のみが異なっており、それ以外の構成は図１と同様である。また、複素乗算部１５の内部構成についても、前述した実施例１の図３と同様である。本実施例では、前述した実施例１と異なる構成および動作について説明する。
【００２８】
前述した実施例１では、分離テーブル番号θ1とθ2を選択する場合に、その組み合わせが複数通り存在する場合（たとえば、θ＝２２の場合は「θ1＝２０，θ2＝２」または「θ1＝１５，θ2＝７」等）があった。そこで、本実施例では、θ1とθ2の組み合わせが唯一となるように、効率的にｅｘｐテーブルを作成する。これにより、さらに小さい回路規模で周波数シフトを実現する。
【００２９】
本実施例の周波数シフト回路の分離テーブル番号算出部１２ａは、下記の式（３），式（４）により分離テーブル番号θ1，θ2を求める。なお、Ａ，Ｂは自然数であり、「Ａ＞Ｂ」を満たすものとする。また、ｆｌｏｏｒは、引数を超えない最大の整数を求める関数である（正の数では小数点以下切捨てと同等）。
θ1＝ｆｌｏｏｒ（θ／Ａ）      …（３）
θ2＝ｆｌｏｏｒ（（θ  ｍｏｄ  Ａ）／Ｂ）      …（４）
【００３０】
すなわち、本実施例の分離テーブル番号算出部１２ａは、各ｅｘｐテーブルの出力の複素乗算値がｅｘｐ（２πｊθ）となるように、任意のθについて上記（３）式および（４）式を計算し、θ＝Ａθ1＋Ｂθ2＋δを満たすθ1とθ2を出力する。なお、δの最大値は「Ｂ−１」となる。
【００３１】
ここで、分離テーブル番号算出部１２ａによる処理の一例を具体的に説明する。たとえば、実施例１と同様の条件（θ＝０，１，…２５５，δ＝０）において、Ａ＝５，Ｂ＝１とした場合に、分離テーブル番号算出部１２ａが上記（３）式および（４）式を実行すると、それぞれ、θ1は「0,1,2,…,51」、θ2は「1,2,3,4」となる。しがたって、たとえばθ＝２２に対応するｅｘｐ（２πｊθ）を算出する場合、分離テーブル番号算出部１２ａは、θ1＝４（Ａθ1＝２０），θ2＝２（Ｂθ2＝２）を出力する。すなわち、θ1とθ2の組み合わせは一通りとなる。
【００３２】
また、テーブル引き部１３ａは、テーブル引きにより、ｅｘｐテーブル１４ａ−１，１４ａ−２から分離テーブル番号に対応するデータ（複素データ）を抽出する。ｅｘｐテーブル１４ａ−１，１４ａ−２には、それぞれ、分離テーブル番号θ1，θ2に対応するデータであって、各テーブルの出力の複素乗算値がｅｘｐ（２πｊθ）となるようなデータ（たとえば、１０ビットの情報）、が記憶されている。具体的には、ｅｘｐテーブル１４ａ−１には、回転角度情報Ａθ1に対応したデータであるｅｘｐ（２πｊθ1Ａ／２26）が記憶されている。また、ｅｘｐテーブル１４ａ−２には、回転角度情報Ｂθ2に対応したデータであるｅｘｐ（２πｊθ2Ｂ／２26）が記憶されている。すなわち、ｅｘｐテーブル１４ａ−１には、粗い回転角度に対応するデータが記憶され、ｅｘｐテーブル１４ａ−２には、ｅｘｐテーブル１４ａ−１よりも細かい回転角度（微小回転角度）に対応する値が記憶される。
【００３３】
以上のように、本実施例では、分離テーブル番号算出部１２ａが上記（３）式および（４）式を実行する構成とした。これにより、θ1とθ2の組み合わせが唯一となり、効率的にｅｘｐテーブルを作成することができるので、実施例１よりもさらに小さい回路規模で周波数シフトを実現できる。
【実施例３】
【００３４】
図５は、実施例３の周波数シフト回路の構成例を示す図である。なお、図５において、前述した実施例１の図２または実施例２の図４と同様の構成については、同一の符号を付してその説明を省略する。また、本実施例の通信装置は、図１と比較して、周波数シフト回路の内部構成のみが異なっており、それ以外の構成は図１と同様である。また、複素乗算部１５の内部構成についても、前述した図３と同様である。本実施例では、前述した実施例１，２と異なる構成および動作について説明する。
【００３５】
本実施例では、回転角度情報θに対応するデジタル値を所望のビット数単位で区切ることにより、分離テーブル番号θ1，θ2を生成することとした。これにより、上記（３）式および（４）式の演算処理を削除することができ、回路構成をさらに簡略化することができる。
【００３６】
たとえば、それぞれ６ビットの分離テーブル番号θ1，θ2を生成する場合、分離テーブル番号算出部１２ｂでは、ビット抽出部２１ｂが、２５ビットの回転角度情報θ（任意のθ）から上位６ビットを抽出し、それを分離テーブル番号θ1として出力する。この６ビットの分離テーブル番号θ1は「粗い回転角度」に対応した値である。また、分離テーブル番号算出部１２ｂでは、ビット抽出部２２ｂが、２５ビットの回転角度情報θから、上記上位６ビットの次の６ビットを抽出し、それを分離テーブル番号θ2として出力する。この６ビットの分離テーブル番号θ2は、上記「粗い回転角度」よりも細かい回転角度（微小回転角度）に対応した値である。これらの処理は、前述した（３）式および（４）式のＡを２19とし、前述した（４）式のＢを２13とした場合と等化である。なお、本実施例では、一例として、分離テーブル番号θ1，θ2がそれぞれ６ビットの場合について説明したが、これに限らず、所望のビット数の分離テーブル番号を抽出可能である。
【００３７】
また、テーブル引き部１３ｂは、テーブル引きにより、ｅｘｐテーブル１４ｂ−１，１４ｂ−２から分離テーブル番号に対応するデータ（複素データ）を抽出する。ｅｘｐテーブル１４ｂ−１，１４ｂ−２には、それぞれ、分離テーブル番号θ1，θ2に対応するデータであって、各テーブルの出力の複素乗算値がｅｘｐ（２πｊθ）となるようなデータ（たとえば、１０ビットの情報）、が記憶されている。具体的には、ｅｘｐテーブル１４ｂ−１には、分離テーブル番号θ1に対応したデータであるｅｘｐ（２πｊθ1／２6）が記憶されている。また、ｅｘｐテーブル１４ｂ−２には、分離テーブル番号θ2に対応したデータであるｅｘｐ（２πｊθ2／２6／２6）が記憶されている。すなわち、ｅｘｐテーブル１４ｂ−１には、粗い回転角度に対応する値が記憶され、ｅｘｐテーブル１４ｂ−２には、微小回転角度に対応する値が記憶される。
【００３８】
以上のように、本実施例では、分離テーブル番号算出部１２ｂが、前述した（３）式および（４）式を実行することなく、任意のθから所望のビットを抽出して分離テーブル番号θ1，θ2を生成する構成とした。これにより、実施例２よりもさらに効率的にｅｘｐテーブルを作成することができるので、さらに小さい回路規模で周波数シフトを実現できる。また、（３）式および（４）式を実行しない構成としたので、実施例２よりも演算量を低減することができる。
【００３９】
なお、本実施例では、任意のθから所望のビットを抽出する手法として、上位ビットから順に所望のビット数を抽出したが、これに限らず、たとえば、奇数ビットと偶数ビットを抽出する方法でも同様の効果を得ることができる。
【実施例４】
【００４０】
図６は、実施例４の周波数シフト回路の構成例を示す図である。なお、図６において、前述した実施例３の図５と同様の構成については、同一の符号を付してその説明を省略する。また、本実施例の通信装置は、図１と比較して、周波数シフト回路の内部構成のみが異なっており、それ以外の構成は図１と同様である。本実施例では、前述した実施例３と異なる構成および動作について説明する。
【００４１】
実施例３においては、ｅｘｐテーブル１４ｂ−２に、分離テーブル番号θ2に対応したｅｘｐ（２πｊθ2／２6／２6）が記憶されているが、上記「微小回転角度」が十分に小さい場合には、ｅｘｐテーブル１４ｂ−２のテーブルサイズを減らすことができる。具体的には、近似により、微小回転角度に対応した「ｅｘｐ（２πｊθ2／２6／２6）」の値の実部を“１”とすることができる。そこで、本実施例の周波数シフト回路では、テーブル引き部１３ｂの代わりにテーブル引き部１３ｃを配置し、ｅｘｐテーブル１４ｂ−２の代わりにｅｘｐテーブル１４ｃ−２を配置する構成とした。ｅｘｐテーブル１４ｃ−２には、「１＋２πｊθ2／６４／６４」を記憶する。これにより、情報量が１／２（実部が不要）となるので、テーブルサイズを１／２にすることができる。
【００４２】
また、上記近似により、微小回転角度に対応した「ｅｘｐ（２πｊθ2／２6／２6）」の値の実部を“１”としたので、本実施例では、複素乗算部の回路規模を削減することも可能となる。図７は、複素乗算部１５ｃの詳細構成を示す図である。本実施例の複素乗算部１５ｃでは、ｅｘｐテーブル１４ｂ−１出力の虚部（Ｑ1）とｅｘｐテーブル１４ｃ−２出力の虚部（Ｑ2）とを乗算し、この乗算結果とｅｘｐテーブル１４ｂ−１出力の実部（Ｉ1）とを加算する。同時に、ｅｘｐテーブル１４ｂ−１出力の実部（Ｉ1）とｅｘｐテーブル１４ｃ−２出力の虚部（Ｑ2）とを乗算し、この乗算結果とｅｘｐテーブル１４ｂ−１出力の虚部（Ｑ1）とを加算する。これにより、複素乗算値ｅｘｐ（２πｊθ）の実部（Ｉ）および虚部（Ｑ）を得る。このように、本実施例では、上記近似により、実施例３の複素乗算部１５よりも乗算器の数を１／２に減らすことができる。
【００４３】
以上のように、本実施例では、近似により、微小回転角度に対応したｅｘｐ（・）の値の実部を“１”にすることとした。これにより、大幅に情報量を削減することができるので、実施例３よりもさらに小さい回路規模で周波数シフトを実現できる。
【００４４】
また、本実施例においては、ｅｘｐテーブル１４ｃ−２に「１＋２πｊθ2／６４／６４」を記憶することとしたが、このデータの虚部は、小さな値がならぶことになるため、上位ビットは削除可能である（たとえば、１０ビット→５ビット）。なお、この例では、図７のＱ2は５ビットとなる。これにより、ｅｘｐテーブル１４ｃ−２のテーブルサイズをさらに小さくすることができる。また、ｅｘｐテーブル１４ｃ−２出力の上位ビットの削除により、さらに複素乗算部１５ｃの回路規模も削減可能となる。
【００４５】
なお、本実施例においては、近似により、実施例３のｅｘｐテーブル１４ｂ−２に記憶されたｅｘｐ（・）の実部を“１”にすることとしたが、これに限らず、この近似は、微小回転角度が十分に小さい場合には実施例１および２に対しても適用可能である。また、上記近似を適用した場合には、「１＋２πｊθ2／６４／６４」の虚部の上位ビットを削除する処理を、実施例１および２に対して適用することも可能である。
【実施例５】
【００４６】
図８は、実施例５の周波数シフト回路の構成例を示す図である。なお、図８において、前述した実施例４の図６と同様の構成については、同一の符号を付してその説明を省略する。また、本実施例の通信装置は、図１と比較して、周波数シフト回路の内部構成のみが異なっており、それ以外の構成は図１と同様である。また、複素乗算部１５ｃの内部構成についても、前述した図７と同様である。本実施例では、前述した実施例１〜４と異なる構成および動作について説明する。
【００４７】
たとえば、実施例４では、近似によりｅｘｐ（・）の実部を“１”としたが、ｅｘｐテーブル１４ｃ−２には虚部のデータが残っている。一方で、ｅｘｐテーブル１４ｃ−２の情報は「１＋角度」で近似した情報であるため、この角度の単位（ラジアン）と回転角度情報の内部表現の単位とが同じであれば、その回転角度情報をそのままｅｘｐテーブル１４ｃ−２の虚部の情報として使用できる。そこで、本実施例では、シンボル毎に算出する回転角度情報の内部表現の単位をラジアンとする。具体的には、角度計算部１１ｄは、たとえば、巡回加算を行う第１の加算器と、第１の加算器の出力が２πを越えたかどうかを判断して所定の加算処理を行う第２の加算器とを有する。第１の加算器は、フィードバックされる回転角度情報に対しシンボル毎に固定値（角度）２πΔθを加算するループ演算を行う。第２の加算器は、第１の加算器の出力が２πを超えていない場合には第１の加算器の出力をそのまま出力し、２πを超えている場合には第１の加算器の出力に−２πを加算して出力する。これらの処理により、角度計算部１１ｄは、回転角度情報２πθを２５ビットの精度で計算する。これにより、回転角度情報２πθがそのまま上記ｅｘｐテーブル１４ｃ−２の虚部の情報として使用できるので、本実施例では、ｅｘｐテーブル１４ｃ−２自体を削除することができる。すなわち、本実施例のテーブル引き部１３ｄは、ｅｘｐテーブル１４ｂ−１のみを有する構成とする。なお、本実施例において、図７のＱ2は、６ビット（θ2の虚部に対応）となる。
【００４８】
以上のように、本実施例では、シンボル毎に算出する回転角度情報の内部表現の単位をラジアンとする。これにより、シンボル毎に算出する回転角度情報がそのまま上記ｅｘｐテーブル１４ｃ−２の虚部の情報として使用できるので、ｅｘｐテーブル１４ｃ−２自体を削除でき、さらに小さい回路規模で周波数シフトを実現できる。
【符号の説明】
【００４９】
１  ダウンコンバータ（down  converter）
２  ＬＰＦ（アナログフィルタ）
３  ＡＤＣ（Ａ／Ｄコンバータ）
４−１，４−２  周波数シフト回路
５−１，５−２  ＤＴＦ（デジタルフィルタ）
１１，１１ｄ  角度計算部
１２，１２ａ，１２ｂ  分離テーブル番号算出部
１３，１３ａ，１３ｂ，１３ｃ，１３ｄ  テーブル引き部
１４−１，１４−２，１４ａ−１，１４ａ−２，１４ｂ−１，１４ｂ−２，１４ｃ−２  ｅｘｐテーブル
１５，１５ｃ  複素乗算部
１６  下位ビット削除部
１７  複素乗算部
２１ｂ，２２ｂ  ビット抽出部
【図１】
0005605184.tif 000002
【図２】
0005605184.tif 000003
【図３】
0005605184.tif 000004
【図４】
0005605184.tif 000005
【図５】
0005605184.tif 000006
【図６】
0005605184.tif 000007
【図７】
0005605184.tif 000008
【図８】
0005605184.tif 000009