実施の形態1
図1は、実施の形態1に係る信号発生器の一構成例を示す構成図である。
本信号発生器は、基準信号源1(基準信号源の一例)、DDS制御回路2(制御回路の一例)、DDS3(第1の信号源の一例)、DDS4(第2の信号源の一例)、フィルタ5(第1のフィルタの一例)、フィルタ6(第2のフィルタの一例)、ミキサ7(混合器の一例)、フィルタ8を備える。図1において、f1(t)はDDS3の所望信号の周波数、f2(t)はDDS4の所望信号の周波数、foutは本信号発生器が出力する所望信号の周波数を示す。k1(t)、k2(t)は、それぞれf1(t)、f2(t)を示すディジタルの周波数データである。fCLKは、基準信号源が出力するクロック信号の周波数である。
基準信号源1は、本信号発生器のクロック信号を出力する発振器である。例えば、基準信号源1には、正確な周波数を出力できる水晶発振器、PLL、DDSなどが用いられる。基準信号源1は、正確な周波数を出力できる発振器であればどのような構成の発振器を用いても良い。基準信号源1の出力端子は、DDS制御回路2のクロック端子、DDS3のクロック端子、DDS4のクロック端子に接続される。基準信号源1は、周波数fCLKにて発振し、fCLKの信号をDDS制御回路2、DDS3,DDS4に出力する。
DDS制御回路2は、基準信号源1が出力した周波数fCLKのクロック信号に同期し、DDS3及びDDS4の所望信号の周波数データを演算し、演算した周波数データをそれぞれDDS3とDDS4とに出力する制御回路である。DDS制御回路2のクロック端子は、基準信号源1の出力端子に接続され、DDS制御回路2の第1の出力端子は、DDS3の入力端子に接続され、DDS制御回路2の第2の出力端子は、DDS4の入力端子に接続される。
また、DDS制御回路2は、所望信号の周波数foutを示すディジタルデータが入力され、foutからk1(t)及びk2(t)を演算し、k1(t)をDDS3に出力し、k2(t)をDDS4に出力する。DDS制御回路2には、例えば、高速にディジタル信号の演算処理を行うことができるFPGA(Field Programmable Gate Array)などが用いられる。DDS制御回路2は、k1(t)及びk2(t)を演算する演算回路を有し、フィルタ5の通過帯域、フィルタ5の遮断周波数(fc1)、フィルタ6の通過帯域及びフィルタ6の遮断周波数(fc2)を記憶するメモリを有する。
図2は、実施の形態1に係るDDS制御回路2におけるk1(t)及びk2(t)の演算手順の一例を示すフローチャートである。このフローチャートでは、fc1及びfc2のうち少なくとも一方がfoutよりも大きいとする。また、フローチャートにおいて2つの値を比較して次のステップを決定する際、両者が等しい場合は、どちらのステップに進んでも良い。
まず、ステップS101において、DDS制御回路2にfoutを示すディジタルデータが入力され、foutが設定される。
次に、ステップS102において、DDS制御回路2は、自身のメモリからfc1及びfc2を読み出す。
次に、ステップS103において、fc1とfc2とを比較する。fc1>fc2の場合、S104に進み、fc1<fc2の場合、S109に進む。
次に、ステップS104において、DDS制御回路2は、以下の式(1)からk1minを計算し、以下の式(2)からk2minを計算する。k1minは、k1(t)の最小値であり、k2minは、k2(t)の最小値である。
Lは、DDSのワード長(ビット)であり、定数である。f
CLKはクロック信号の周波数である。
次に、ステップS105において、DDS制御回路2は、fc1−fc2とfoutとを比較する。fc1−fc2>foutの場合、ステップS106に進み、fc1−fc2<foutの場合、ステップS108に進む。
次に、ステップS106において、DDS制御回路2は、以下の式(3)からk1maxを計算し、以下の式(4)からk2maxを計算する。k1maxは、k1(t)の最大値であり、k2maxは、k2(t)の最大値である。
次に、ステップS107において、DDS制御回路2は、k1(t)及びk2(t)を計算する。この実施の形態では、k1(t)が正弦波である場合を説明する。DDS制御回路2は、k1(t)がk1minとk1maxとの間において正弦波で変化するように、k1(t)を算出する。k2(t)は、k1(t)と同様に算出される。DDS制御回路2は、k1(t)をDDS3に出力し、k2(t)をDDS4に出力し、フローを終了する。
図3は、実施の形態1に係るk1(t)の変化を示す図である。
縦軸が周波数データk1(t)であり、横軸が時間である。Tは、正弦波の周期である。このように、k1(t)は正弦波であるので、k1min及びk1maxが決まれば、k1(t)の変化は決定される。なお、ここでは正弦波を用いているが、三角波であっても良いし、矩形波であっても良い。
図4は、実施の形態1に係るk2(t)の変化を示す図である。
縦軸が周波数データk2(t)であり、横軸が時間である。k2(t)は、k1(t)と同様に正弦波で変化するが、最大値及び最小値が異なる。
前記のステップS105において、DDS制御回路2がfc1−fc2<foutと判断した場合、ステップS108において、DDS制御回路2は、以下の式(5)からk1maxを計算し、以下の式(6)からk2maxを計算する。その後、ステップS107に進むが、ステップS107の処理は上述した通りなので、説明を省略する。
次に、前述のステップS103において、fc1<fc2と判断された場合について説明する。ステップS109において、DDS制御回路2は、以下の式(7)からk1minを計算し、以下の式(8)からk2minを計算する。
次に、ステップS110において、DDS制御回路2は、fc2−fc1とfoutとを比較する。fc2−fc1>foutの場合、ステップS111に進み、fc2−fc1<foutの場合、ステップS112に進む。
次に、ステップS111において、DDS制御回路2は、以下の式(8)からk1maxを計算し、以下の式(9)からk2maxを計算する。その後、ステップS107に進むが、ステップS107の処理は上述した通りなので、説明を省略する。
ステップS112において、DDS制御回路2は、以下の式(11)からk1maxを計算し、以下の式(12)からk2maxを計算する。その後、ステップS107に進むが、ステップS107の処理は上述した通りなので、説明を省略する。以上で、図2のフローチャートの説明を終了する。
DDS制御回路2は、場合によっては、foutを記憶するメモリを有しても良い。さらに、DDS制御回路2は、入力されたfoutに対応するk1(t)及びk2(t)のデータを記憶しておくメモリを有しても良い。この場合、DDS制御回路2は、k1(t)及びk2(t)に対して、上記の演算処理を行わず、入力されたfoutを示すデータをアドレスとして、k1(t)及びk2(t)のデータを読み出し、DDS3にk1(t)を出力し、DDS4にk2(t)を出力する。
DDS3は、DDS制御回路2が出力した周波数データk1(t)から周波数f1(t)のアナログ信号を生成する信号源である。例えば、DDS3は、加算器、ラッチ、ROM、DACから構成される。DDS3の入力端子は、DDS制御回路2の第1の出力端子に接続され、DDS3のクロック端子は、基準信号源1の出力端子に接続され、DDS3の出力端子は、フィルタ5の入力端子に接続される。DDS3は、基準信号源1からのクロック信号に同期して、DDS制御回路2が出力したk1(t)から、周波数f1(t)のアナログ信号を生成し、生成したアナログ信号をフィルタ5に出力する。
DDS4は、DDS3と同様に、DDS制御回路2が出力した周波数データk2(t)から周波数f2(t)のアナログ信号を生成する信号源である。DDS4の入力端子は、DDS制御回路2の第2の出力端子に接続され、DDS4のクロック端子は、基準信号源1の出力端子に接続され、DDS4の出力端子は、フィルタ6の入力端子に接続される。
フィルタ5は、所定の通過帯域を有し、入力された信号のうち通過帯域内にある信号を通過させ、通過帯域外の周波数帯域にある信号を抑圧するフィルタである。フィルタ5の入力端子は、DDS3の出力端子に接続され、フィルタ5の出力端子はミキサ7のLO端子(Local Oscillator)に接続される。フィルタ5は、DDS3が出力した信号のうち通過帯域外に存在するスプリアスを抑圧してミキサ7に出力する。例えば、フィルタ5の通過帯域の設定は、f1(t)が必ずfout以下になることから、fc1=foutとする。
フィルタ6は、所定の通過帯域を有し、入力された信号のうち通過帯域内にある信号を通過させ、通過帯域外の周波数帯域にある信号を抑圧するフィルタである。フィルタ6の入力端子は、DDS4の出力端子に接続され、フィルタ6の出力端子はミキサ7のIF(Intermediate Frequency)端子またはRF(Radio Frequency)端子に接続される。フィルタ6は、DDS4が出力した信号のうち通過帯域外に存在するスプリアスを抑圧してミキサ7に出力する。例えば、フィルタ6の通過帯域の設定は、f2(t)が必ずfout以下になることから、fc2=foutとする。
ミキサ7は、入力された2つの信号を混合し、その混合信号を出力する混合器である。混合信号とは、入力された2つの信号の周波数をそれぞれm倍、n倍した信号の差周波、和周波である。ここで、m、nは、整数である。例えば、ミキサ7は、ダイオードの非線形性を利用して混合を行うダイオードミキサが用いられる。ミキサ7から混合信号として差周波信号を取り出す場合、ミキサ7のLO端子は、フィルタ5の出力端子に接続され、ミキサ7のRF端子は、フィルタ6の出力端子に接続され、ミキサ7のIF端子は、フィルタ8の入力端子に接続される。一方、ミキサ7から混合信号として和周波信号を取り出す場合、ミキサ7のLO端子は、フィルタ5の出力端子またはフィルタ6の出力端子に接続され、ミキサ7のIF端子は、フィルタ5の出力端子またはフィルタ6の出力端子のうちでミキサ7のLO端子が接続されなかった方の出力端子に接続され、ミキサ7のRF端子は、フィルタ8の入力端子に接続される。ミキサ7は、フィルタ5が出力した信号とフィルタ6が出力した信号とを混合し、その混合信号をフィルタ8に出力する。
フィルタ8は、所定の通過帯域を有し、入力された信号のうち通過帯域内にある信号を通過させ、通過帯域外の周波数帯域にある信号を抑圧するフィルタである。フィルタ8の入力端子は、ミキサ7のIF端子に接続される。フィルタ8は、ミキサ7が出力した信号から通過帯域外に存在するスプリアスを抑圧した信号を出力する。フィルタ8の通過帯域の設定としては、foutが含まれており、できるだけ狭帯域であることが望ましいが、例えば、foutに対して2倍の帯域とする。
なお、フィルタ5、フィルタ6及びフィルタ8は、例えばチップインダクタ、チップキャパシタ等を用いて実装される。通過させる周波数帯や、必要な抑圧量に応じて他のマイクロストリップや、同軸共振器等の共振器を用いて構成してもよい。ここでは、入力信号のうち通過帯域内にある信号を通過させ、通過帯域外の周波数帯域にある信号を抑圧する機能を有していれば、集中定数型BPF(Band Pass Filter)や結合線路型BPFなど、どのような構成のフィルタを用いてもよい。
次に、実施の形態1に係る信号発生器の動作について説明する。
基準信号源1は、DDS制御回路2、DDS3、DDS4にそれぞれ周波数fCLKのクロック信号を出力する。
DDS制御回路2は、基準信号源1が出力したクロック信号に同期して、信号発生器の出力信号の周波数foutから周波数データk1(t)及びk2(t)を演算する。演算した後、DDS3にk1(t)を出力し、DDS4にk2(t)を出力する。このとき、DDS制御回路2は、クロック信号に同期して、k1(t)及びk2(t)の演算、k1(t)及びk2(t)の出力を行う。
f1(t)とk1(t)との関係は、以下の式(13)で表される。
同様に、f2(t)とk2(t)との関係は、以下の式(14)で表される。
Lは、DDSのワード長(ビット)であり、定数である。ここでは、fCLK1(t)=fCLK2(t)=fCLKである。
DDS制御回路2は、f1(t)及びf2(t)に対して、以下の(条件1)から(条件3)を満たすようにk1(t)及びk2(t)を決定する。
(条件1):DDS制御回路2は、fout=|f1(t)−f2(t)|が一定であるように、f1(t)及びf2(t)を時間変化させる。
(条件2):DDS制御回路2は、DDS3の出力信号に含まれるスプリアスが一定時間、フィルタ5の通過帯域外に存在するように、f1(t)を時間変化させる。同様に、DDS制御回路2は、DDS4の出力信号に含まれるスプリアスが一定時間、フィルタ6の通過帯域外に存在するように、f2(t)を時間変化させる。
(条件3):f1(t)がフィルタ5の通過帯域外に存在する時間が、スプリアスがフィルタ5の通過帯域外に存在する時間より短くなるように、DDS制御回路2は、f1(t)を時間変化させる。同様に、f2(t)がフィルタ6の通過帯域外に存在する時間が、スプリアスがフィルタ6の通過帯域外に存在する時間より短くなるように、DDS制御回路2は、f2(t)を時間変化させる。
ここで、スプリアスは、f1(t)の周波数のn倍(n=2、3、…)の成分をもつn次の高調波または第一のナイキストゾーン内に折り返された高調波のイメージ波である。これらのスプリアスは、所望信号f1(t)の高調波に依存するので、f1(t)に依存してスプリアスの周波数も変化する。また、後述するが、f1(t)の周波数変化より、スプリアスの周波数変化は大きくなる。高調波のイメージ波は、高調波のエイリアス歪みとも言われる。第一のナイキストゾーンとは、周波数0からDDSのサンプリング周波数の半分までの周波数領域である。サンプリング周波数とは、DDSのクロック信号の周波数である。上記のf1(t)に対するスプリアスの説明は、f2(t)に対しても同様である。説明を簡単にするため、以降スプリアスとは、f1(t)及びf2(t)の2倍波(n=2)とする。
(条件2)において、一定時間、DDS3のスプリアスがフィルタ5の通過帯域外に存在するようにとしているが、全ての時間においてフィルタ5の通過帯域外にあっても良い。また、DDS3のスプリアスがフィルタ5の通過帯域外に存在する時間が生じていれば良く、スプリアスが通過帯域外に存在する時間は一定でなくても良い。同様に、DDS4のスプリアスがフィルタ6の通過帯域外に存在するようにとしているが、全ての時間においてフィルタ6の通過帯域外にあっても良い。
(条件3)では、f1(t)がフィルタ5の通過帯域外に存在する時間が、スプリアスがフィルタ5の通過帯域外に存在する時間より短いとしているが、f1(t)が時間変化するすべての時間において、f1(t)がフィルタ5の通過帯域外に存在しないようにしても良い。つまり、f1(t)が時間変化するすべての時間においてf1(t)がフィルタ5の通過帯域内に存在するようにしても良い。同様に、f2(t)がフィルタ6の通過帯域外に存在する時間が、スプリアスがフィルタ6の通過帯域外に存在する時間より短いとしているが、f2(t)が時間変化するすべての時間において、f2(t)がフィルタ6の通過帯域外に存在しないようにしても良い。
図5は、実施の形態1に係るf1(t)及びf2(t)の時間変化の一例を示す図である。横軸は時間、縦軸は周波数である。t1、t2、t3は、それぞれある任意の時刻である。DDS制御回路2は、f1(t)―f2(t)=foutが時間に関わらず一定であるように、f1(t)及びf2(t)を時間変化させる。図5におけるfBWは、f1(t)とf2(t)が変化する周波数帯域幅を表す。
DDS3は、基準信号源1が出力したクロック信号に同期して、DDS制御回路2から入力されたk1(t)から式(13)に基づいて、f1(t)のアナログ信号を生成し、フィルタ5に出力する。
図6は、実施の形態1に係るDDS3の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。f1(t)は連続的に変化するが、ここでは、説明を簡単にするため、時刻t1、t2、t3の動作を考える。f1(t)は、t1、t2、t3においてフィルタ5の通過帯域内に存在するとする。
図6において、f1(t1)、f1(t2)、f1(t3)は、それぞれ時刻t1、t2、t3にDDS3が出力する所望信号の周波数であり、fsprs1(t1)、fsprs1(t2)、fsprs1(t3)は、それぞれ時刻t1、t2、t3のスプリアスの周波数である。所望信号は、時間とともにfBWの範囲で周波数が変化し、スプリアスは、時間とともにfsprsBWの範囲で周波数が変化する。ここで、fsprsBWは、スプリアスの周波数帯域幅である。スプリアスは、所望信号の2倍波としているため、2fBW=fsprsBWである。また、2f1(t1)=fsprs1(t1)、2f1(t2)=fsprs1(t2)、2f1(t3)=fsprs1(t3)が成り立つ。このように、所望信号の周波数変化に対して、スプリアスの周波数変化は大きくなるので、DDS3は、フィルタ5の通過帯域内で所望信号の周波数を変化させることにより、フィルタ5の通過帯域外にスプリアスを移動させることができる。今回はスプリアスを2倍波としているため、スプリアスの周波数変化は所望信号の周波数変化の2倍となる。スプリアスがN(N>2)倍波もしくはN次高調波のエリアシング歪みの場合は、所望信号の周波数変化のN倍となり、2倍波の場合よりも容易にフィルタ5の通過帯域外にスプリアスを移動させることができる。
ここでは、スプリアスが所望信号の2倍波の場合を説明しているが、スプリアスが高調波のエリアシング歪みである場合は、以下のようになる。
図7は、実施の形態1に係るスプリアスが高調波のエリアシング歪みのときのDDS3の出力信号の周波数スペクトルを示す図である。
図7において、f1(t)はDDS3の所望信号の周波数であり、fsprs1(t)は、高調波のエリアシング歪みによるスプリアスである。f1(t)が周波数の高い方向に移動すると、fsprs1(t)は周波数の低い方向に移動する。t1では、スプリアスがフィルタ5の通過帯域外にあるため、fsprs1(t1)は抑圧される。t2及びt3では、スプリアスがフィルタ5の通過帯域内にあるため、fsprs1(t2)及びfsprs1(t3)は抑圧されない。
図6及び図7を見ると、t1では、図7のfsprs1(t1)は抑圧されるが、図6のfsprs1(t1)は抑圧されない。t2では、図7のfsprs1(t2)は抑圧されないが、図6のfsprs1(t2)は抑圧される。t3は、t2と同様である。
f1(t)が固定のときには、高調波の歪みによるスプリアス及び高調波のエリアシング歪みによるスプリアスの両方を抑圧することはできないが、f1(t)を変化させることで、t1では、高調波のエリアシング歪みによるスプリアスを抑圧し、t2及びt3では、高調波の歪みによるスプリアスを抑圧できる。したがって、f1(t)を変化させることで、平均的に見れば、両方のスプリアスを抑圧できる。
ここでは、スプリアスが、高調波のエリアシング歪みである場合を説明したが、高調波の歪みによるスプリアスを抑圧する場合も、高調波のエリアシング歪みによるスプリアスを抑圧する場合も、原理は同じであるので、説明を簡単にするために、以下では、2倍波によるスプリアスを抑圧する場合の説明に戻る。
図6及び図7では、フィルタ5をローパスフィルタとしているが、所望信号f1(t)がフィルタ5の通過帯域内に存在し、スプリアスfsprs1(t)の一部が通過帯域外に存在すれば、バンドパスフィルタであっても良い。
DDS4は、基準信号源1が出力したクロック信号に同期して、DDS制御回路2が出力したk2(t)からf2(t)のアナログ信号を生成して、生成したアナログ信号をフィルタ6に出力する。
図8は、実施の形態1に係るDDS4の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。f2(t)は連続的に変化するが、DDS3の場合と同様に、時刻t1、t2、t3の動作を考える。また、f2(t)は、t1、t2、t3においてフィルタ6の通過帯域内に存在するとする。
図8において、f2(t1)、f2(t2)、f2(t3)は、それぞれ時刻t1、t2、t3にDDS3が出力する所望信号の周波数であり、fsprs2(t1)、fsprs2(t2)、fsprs2(t3)は、それぞれ時刻t1、t2、t3のスプリアスの周波数である。所望信号は、時間とともにfBWの範囲で周波数が変化し、スプリアスは、時間とともにfsprsBWの範囲で周波数が変化する。ここで、fsprsBWは、スプリアスの周波数帯域幅である。スプリアスは、所望信号の2倍波としているため、2fBW=fsprsBWである。また、2f2(t1)=fsprs2(t1)、2f2(t2)=fsprs2(t2)、2f2(t3)=fsprs2(t3)が成り立つ。このように、所望信号の周波数変化に対して、スプリアスの周波数変化は大きくなるので、DDS3の場合と同様に、DDS4は、フィルタ6の通過帯域内で所望信号の周波数を変化させることにより、フィルタ6の通過帯域外にスプリアスを移動させることができる。
図8では、フィルタ6をローパスフィルタとしているが、所望信号f2(t)がフィルタ6の通過帯域内に存在し、スプリアスfsprs2(t)の一部が通過帯域外に存在すれば、バンドパスフィルタであってもよい。
なお、図2ではf1(t)、f2(t)ともに正弦波状に変化させているが、(条件1)から(条件3)を満たしていれば、f1(t)とf2(t)はどのように変化させても良い。
図9は、実施の形態1に係るf1(t)及びf2(t)を三角波状に変化させたときの例を示す図である。図9に示すように、f1(t)及びf2(t)は、その差が一定であれば、三角波状に変化しても良い。
図10は、実施の形態1に係るf1(t)及びf2(t)を矩形波状に変化させたときの例を示す図である。図10に示すように、f1(t)及びf2(t)は、その差が一定であれば、矩形波状に変化しても良い。
特定のスプリアスを抑圧するだけであれば、f1(t)及びf2(t)を上げるだけ、または下げるだけというように変化させても良いし、f1(t)及びf2(t)を変化させずに固定させても良い。
フィルタ5は、DDS3が出力した信号のうち通過帯域外に存在するスプリアスを抑圧し、通過帯域内にある信号を通過させ、スプリアスを抑圧した信号をミキサ7に出力する。
図11は、実施の形態1に係るフィルタ5の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。DDS3で生成した信号のうち、フィルタ5の通過帯域内にあるf1(t1)、f1(t2)、f1(t3)、fsprs1(t1)は、フィルタ5を通過する。しかし、フィルタ5の通過帯域外に存在するfsprs1(t2)、fsprs1(t3)は、フィルタ5で抑圧される。その結果、スプリアスについては、通過帯域内に存在するfsprs1(t1)がフィルタ5を通過する。このように、周波数f1(t)の所望信号は、全ての時間でフィルタ5の通過帯域内に存在するため、フィルタ5を通過するが、スプリアスは、フィルタ5の通過帯域外に存在する時間があるので、DDS3が出力するスプリアスの一部はフィルタ5で抑圧される。
フィルタ6は、DDS4が出力した信号のうち通過帯域外に存在するスプリアスを抑圧し、通過帯域内にある信号を通過させ、スプリアスを抑圧した信号をミキサ7に出力する。
図12は、実施の形態1に係るフィルタ6の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。DDS4で生成した信号のうち、フィルタ6の通過帯域内にあるf2(t1)、f2(t2)、f2(t3)、fsprs2(t1)は、フィルタ6を通過する。しかし、フィルタ6の通過帯域外に存在するfsprs2(t2)、fsprs2(t3)は、フィルタ6で抑圧される。その結果、スプリアスについては通過帯域内に存在するfsprs2(t1)がフィルタ6を通過する。このように、周波数f2(t)の所望信号は、全ての時間でフィルタ6の通過帯域内にその信号が存在するため、フィルタ6を通過するが、スプリアスは、フィルタ6の通過帯域外に存在する時間があるので、DDS4が出力するスプリアスの一部はフィルタ6で抑圧される。
なお、ここでは、周波数帯域fsprsBW内のスプリアスの一部が、フィルタ5またはフィルタ6の通過帯域外にある場合を説明したが、fsprsBW内の全てのスプリアスが、フィルタ5またはフィルタ6の通過帯域外にあるようにしても良い。一方で、周波数帯域fBW内の信号の一部は、フィルタ5またはフィルタ6の通過帯域外にあるようにしても良い。ただし、その場合、スプリアスがフィルタ5またはフィルタ6の通過帯域外にある時間よりも、所望信号が通過帯域外にある時間は短い。
ミキサ7は、フィルタ5が出力した信号とフィルタ6が出力した信号とを混合する。その結果、ミキサ7は、フィルタ5の出力信号のm倍高調波とフィルタ6の出力信号のn倍高調波との差周波信号及び和周波信号をフィルタ8に出力する。ここで、m、nは整数である。この差周波信号及び和周波信号がミキサ7の混合信号である。
図13は、実施の形態1に係るミキサ7の出力信号の周波数スペクトルを示す図である。横軸は周波数、縦軸は電力である。ここでは、説明を簡単にするため、m=1、n=1とする。この場合、ミキサ7は、f1(t)とf2(t)との差周波及び和周波、並びにfsprs1(t)とfsprs2(t)との差周波及び和周波を出力する。時刻t1、t2、t3におけるミキサ7の出力信号は、以下のように表現できる。
時刻t1のとき:f1(t1)−f2(t1)、f1(t1)+f2(t1)、fsprs1(t1)−fsprs2(t1)及びfsprs1(t1)+fsprs2(t1)
時刻t2のとき:f1(t2)−f2(t2)及びf1(t2)+f2(t2)
時刻t3のとき:f1(t2)−f2(t2)及びf1(t3)+f2(t3)
スプリアスについては、fsprs1(t1)−fsprs2(t1)及びfsprs1(t1)+fsprs2(t1)がミキサ7から出力される。fsprs1(t2)、fsprs1(t3)は、フィルタ5で抑圧され、fsprs2(t2)、fsprs3(t3)は、フィルタ6で抑圧されており、ミキサ7に入力されないため、ミキサ7においてfsprs1(t2)−fsprs2(t2)、fsprs1(t2)+fsprs2(t2)、fsprs1(t3)−fsprs2(t3)及びfsprs1(t3)+fsprs2(t3)は、生成されない。
f1(t)−f2(t)は、時間によらず一定であるため、ミキサ7の出力信号の周波数のうち、f1(t1)−f2(t1)、f1(t2)−f2(t2)、及びf1(t3)−f2(t3)は、同じ値となる。その一方で、f1(t1)+f2(t1)、f1(t2)+f2(t2)、f1(t3)+f2(t3)、fsprs1(t1)−fsprs2(t1)及びfsprs1(t1)+fsprs2(t1)は、異なる値となる。つまり、f1(t)−f2(t)は、時間に関わらず一定の周波数で出力され続けるが、それ以外の周波数成分については、時間によって周波数が変化する。また、fsprs1(t)−fsprs2(t)は、時間によって電力が変化する。fsprs1(t2)−fsprs2(t2)及びfsprs1(t2)−fsprs2(t2)が存在しないため、その時間は、電力が生じないからである。
フィルタ8は、ミキサ7が出力した信号のうち、フィルタ8の通過帯域外に存在する周波数成分を抑圧し、通過帯域内にある信号を本信号発生器の出力信号として出力する。
図14は、実施の形態1に係るフィルタ8の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。 図14において、フィルタ8は、その通過帯域内に存在する周波数f1(t1)−f2(t1)、f1(t2)−f2(t2)、f1(t3)−f2(t3)、fsprs1(t1)−fsprs2(t1)の成分を通過させる。また、フィルタ8は、通過帯域外に存在する周波数f1(t1)+f2(t1)、f1(t2)+f2(t2)、f1(t3)+f2(t3)、fsprs1(t1)+fsprs2(t1)の成分を抑圧する。
所望信号であるf1(t)−f2(t)は時間によらず周波数軸上に存在するため、その平均電力は大きい。これに対して、fsprs1(t)−fsprs2(t)の成分は、fsprs1(t2)−fsprs2(t2)、fsprs1(t3)−fsprs2(t3)が存在しないため、平均電力は小さくなる。
図15は、実施の形態1に係るスプリアスを抑圧するフィルタ5及びフィルタ6が無い場合におけるフィルタ8の出力信号の周波数スペクトルを示す図である。
横軸は周波数、縦軸は電力である。フィルタ5及びフィルタ6がない場合、DDS3並びにDDS4は、それぞれfsprs1(t1)、fsprs1(t2)及びfsprs1(t3)、並びにfsprs2(t1)、fsprs2(t2)及びfsprs2(t3)をミキサ7に出力する。ミキサ7は、fsprs1(t1)−fsprs2(t1)、fsprs1(t2)−fsprs2(t2)及びfsprs1(t3)−fsprs2(t3)をフィルタ8に出力する。スプリアスfsprs1(t)、fsprs2(t)は、それぞれf1(t)、f2(t)の2倍高調波である。したがって、fsprs1(t1)−fsprs2(t1)=fsprs1(t2)−fsprs2(t2)=fsprs1(t3)−fsprs2(t3)であり、ミキサ7が出力するスプリアスfsprs1(t)−fsprs2(t)は、時間によらず一定値をもつ。スプリアスfsprs1(t)−fsprs2(t)がフィルタ8の通過帯域内に存在すると、フィルタ8は、スプリアスを抑圧できないので、フィルタ8からスプリアスは出力される。このように、フィルタ5及びフィルタ6が無い場合、t1、t2、t3において、スプリアスが存在するので、その平均電力は大きくなる。なお、fsprs1(t)−fsprs2(t)=2f1(t)−2f2(t)=2foutである。
以上のように実施の形態1によれば、DDS3の所望出力信号f1(t)とDDS4の所望出力信号f2(t)との周波数差が時間によらず一定であり、DDS3、DDS4のスプリアスが、それぞれフィルタ5、フィルタ6の通過帯域外にある時間が存在するように、DDS制御回路2は、f1(t)及びf2(t)を制御し、ミキサ7は、フィルタ5の出力信号とフィルタ6の出力信号とを混合し、その差周波を本信号発生器の出力信号として出力する。f1(t)及びf2(t)を変化させているが、その周波数差は一定であるので、その差周波はミキサ7から時間によらず出力される。一方、スプリアスは、フィルタ5及びフィルタ6の通過帯域外にある時間が存在し、フィルタ5及びフィルタ6で抑圧されるので、その時間、スプリアスはミキサ7から出力されない。このため、本信号発生器は、差周波である所望出力信号に対して、所望出力信号の近傍に存在するスプリアスの平均電力を小さくすることができる。
なお、DDS3の所望出力信号f1(t)とDDS4の所望出力信号f2(t)との周波数差が時間によらず一定であり、ミキサ7が、所望出力信号として、差周波f1(t)−f2(t)を出力する場合を説明したが、f1(t)f2(t)との周波数和が時間によらず一定であり、ミキサ7が、所望出力信号として、和周波f1(t)+f2(t)を出力するようにしても良い。
図16は、実施の形態1に係るf1(t)とf2(t)との周波数和が時間によらず一定である場合におけるf1(t)及びf2(t)の制御の一例を示す図である。
図16において、fout=f1(t)+f2(t)である。fBWは、f1(t)及びf2(t)の周波数帯域幅である。DDS制御回路2は、f1(t)を増加させる分、f2(t)を減少させて、f1(t)+f2(t)が一定になるようにf1(t)及びf2(t)を制御する。
実施の形態2
実施の形態1では、DDS制御回路2が、周波数データk1(t)をDDS3に出力し、周波数データk2(t)をDDS4に出力し、DDS3及びDDS4は、内部で、入力されたディジタルの周波数データをディジタルの振幅データに変換し、ディジタルの振幅データからアナログ信号を生成していた。ここで、ディジタルの振幅データとは、時間に対する振幅値のデータであり、量子化されたディジタル正弦波信号のデータである。
実施の形態2では、DDSの代わりにDACを用いることにより、直接、ディジタルの振幅データをDACに入力し、ディジタルの振幅データからアナログ信号を生成する構成を説明する。これにより、実施の形態2の信号発生器は、周波数データを振幅データに変換する必要がなくなり、高速にアナログ信号を生成できる。
図17は、実施の形態2に係る信号発生器の一構成例を示す構成図である。
図17において図1と同一の符号は、同一または相当の部分を表している。図17において、A1(t)は、f1(t)の振幅データであり、A2(t)は、f2(t)の振幅データである。
実施の形態2では、実施の形態1におけるDDS3とDDS4との代わりに、それぞれDAC13とDAC14とを用いる。また、DDS制御回路2の代わりにDAC制御回路12を用いる。
DAC制御回路12は、DAC13とDAC14とにそれぞれ振幅データA1(t)、A2(t)を出力し、DAC13及びDAC14の出力アナログ信号の周波数を制御する制御回路である。DAC制御回路12のクロック端子には、基準信号源1の出力端子が接続され、DAC制御回路12の第1の出力端子には、DAC13の入力端子が接続され、DAC制御回路12の第2の出力端子には、DAC14の入力端子が接続される。DAC制御回路12は、入力されたfoutを示すデータから振幅データを計算する演算回路を有する。また、DAC制御回路12は、fout、フィルタ5及びフィルタ6の遮断周波数を記憶するメモリを有する。例えば、DAC制御回路12には、高速にディジタル信号の演算処理を行うことができるFPGAなどが用いられる。
図18は、実施の形態2に係るDAC制御回路12におけるA1(t)及びA2(t)の演算手順の一例を示すフローチャートである。このとき、fc1とfc2のどちらか,もしくは両方ともがfoutよりも大きいとする。また、フローチャートにおいて2つの値を比較して次のステップを決定する際、両者が等しい場合は、どちらのステップに進んでも良い。
まず、ステップS201において、DAC制御回路12にfoutを示すデータが入力され、foutが設定される。
次に、ステップS202において、DAC制御回路12は、自身のメモリからfc1及びfc2を読み出す。
次に、ステップS203において、fc1とfc2とを比較する。fc1>fc2の場合、ステップS204に進み、fc1<fc2の場合、ステップS209に進む。
次に、ステップS204において、DAC制御回路12は、f1min=foutと決定し、f2min=0と決定する。f1minは、f1(t)の最小値であり、f2minは、f2(t)の最小値である。
次に、ステップS205において、DAC制御回路12は、fc1−fc2とfoutとを比較する。fc1−fc2>foutの場合、ステップS206に進み、fc1−fc2<foutの場合、ステップS208に進む。
次に、ステップS206において、DAC制御回路12は、f1max=fc2+foutと決定し、f2max=fc2と決定する。f1maxは、f1(t)の最大値であり、f2maxは、f2(t)の最大値である。
次に、ステップS207において、DAC制御回路12は、f1(t)及びf2(t)を計算する。f1(t)は、f1minとf1maxとの間において正弦波で変化するように、DAC制御回路12は、以下の式(15)からf1(t)を算出する。同様に、DAC制御回路12は、以下の式(16)からf2(t)を算出する。Tは、f1(t)及びf2(t)が正弦波で変化するときの周期である。
DAC制御回路12は、f1(t)及びf2(t)を求めた後、以下の式(17)及び式(18)で対応づけられるA1(t)及びA2(t)を読みだす。ここで、DAC制御回路12は、予め周波数データと振幅データの変換テーブルを用意しておき、f1(t)及びf2(t)をアドレスとして、対応するA1(t)及びA2(t)を読みだす。このようにすることで、周波数データから振幅データを計算する必要がなくなるので、処理の高速化が図れる。なお、DAC制御回路12は、式(17)及び式(18)を用いて、A1(t)及びA2(t)を算出するようにしても良い。
なお、ここでは、f1(t)、f2(t)、A1(t)及びA2(t)正弦波を仮定しているが、三角波でも良いし、矩形波でも良い。
次に、ステップS208において、DAC制御回路12は、f1max=fc1と決定し、f2max=fc1−foutと決定する。その後、ステップS207に進むが、ステップS207の処理は上述した通りなので、説明を省略する。
次に、ステップS209において、DAC制御回路12は、f1min=0と決定し、f2min=foutと決定する。
次に、ステップS210において、DAC制御回路12は、fc2−fc1とfoutとを比較する。fc2−fc1>foutの場合、ステップS211に進み、fc2−fc1<foutの場合、ステップS212に進む。
次に、ステップS211において、DAC制御回路12は、f1max=fc1と決定し、f2max=fc1+foutと決定する。その後、ステップS207に進むが、ステップS207の処理は上述した通りなので、説明を省略する。
ステップS212において、DAC制御回路12は、f1max=fc2−foutと決定し、f2max=fc2と決定する。その後、ステップS207に進むが、ステップS207の処理は上述した通りなので、説明を省略する。以上で、図18のフローチャートの説明を終了する。
DAC制御回路12は、図1におけるDDS3またはDDS4が有する加算器、ラッチ、ROMを、DDS制御回路2に組み込んだ形としても良い。更に、DAC制御回路12は、演算回路を有さず、入力されたfoutに対応するf1(t)及びf2(t)の振幅データを記憶しておくメモリを有するようにしても良い。この場合、DAC制御回路12は、基準信号源1からのクロック信号に同期し、入力されたfoutを示すデータをアドレスとしてf1(t)及びf2(t)の振幅データを読み出し、それぞれの振幅データをそれぞれDAC13、DAC14に出力する。これにより、f1(t)及びf2(t)の振幅データを求める演算回路が必要なくなるので、DAC制御回路12の消費電力低減、高速化を図ることができる。
DAC13は、基準信号1から出力されたクロック信号に同期して、A1(t)からf1(t)のアナログ信号を生成する回路である。DAC13の入力端子には、DAC制御回路12の第1の出力端子が接続され、DAC13の出力端子には、フィルタ5の入力端子が接続され、DAC13のクロック端子には、基準信号源1の出力端子が接続される。例えば、DAC13には、抵抗ラダー型DACやΔΣ型DACが用いられる。DAC13は、ディジタルの振幅データからアナログ信号を生成する回路であればどのような構成のDACを用いても良い。
DAC14は、基準信号1から出力されたクロック信号に同期して、A2(t)からf2(t)のアナログ信号を生成する回路である。DAC14の入力端子には、DAC制御回路12の第2の出力端子が接続され、DAC14の出力端子には、フィルタ6の入力端子が接続され、DAC14のクロック端子には、基準信号源1の出力端子が接続される。例えば、DAC14には、抵抗ラダー型DACやΔΣ型DACが用いられる。DAC14は、ディジタルの振幅データからアナログ信号を生成する回路であればどのような構成のDACを用いても良い。
次に、実施の形態2の動作について説明する。
DAC制御回路12は、基準信号源1から出力されたクロック信号に同期して、上記(条件1)から(条件3)を満たすA1(t)とA2(t)とを、それぞれDAC13とDAC14とに出力する。
DAC13は、基準信号1から出力されたクロック信号に同期して、A1(t)からf1(t)のアナログ信号を生成し、フィルタ6に出力する。DAC13の出力信号は、f1(t)のアナログ信号の他に、f1(t)の高調波や高調波のイメージ成分などのスプリアスを含む。
DAC14は、基準信号1から出力されたクロック信号に同期して、A2(t)からf2(t)のアナログ信号を生成し、フィルタ5に出力する。DAC14の出力信号は、周波数f2(t)のアナログ信号の他に、f2(t)の高調波や高調波のイメージ成分などのスプリアスを含む。
これ以降のフィルタ5、フィルタ6、ミキサ7、フィルタ8の動作は、実施の形態1と同様であるため説明を省略する。
以上のように実施の形態2によれば、DDSではなく、DACを用いても実施の形態1と同様の効果を奏することができる。加えて、DAC制御回路12は、振幅データをDAC13及びDAC14に出力するので、周波数データから振幅データを演算する必要がなくなり、実施の形態2の信号発生器は、信号生成の高速化を図ることができる。
実施の形態3
実施の形態1では、DDS制御回路2は、DDS3、DDS4にそれぞれ出力するk1(t)、k2(t)を時間変化させることによって、f1(t)、f2(t)を変化させていた。実施の形態3では、k1(t)、k2(t)を変化させることに加えて、クロック信号fCLK1(t)、fCLK2(t)を変化させ、f1(t)、f2(t)を高精度に制御する。
図19は、実施の形態3に係る信号発生器の一構成例を示す構成図である。
図19において図1と同一の符号は、同一または相当の部分を表している。
実施の形態3では、実施の形態1におけるDDS制御回路2の代わりにDDS制御回路21を用い、基準信号源1とDDS3との間にクロック可変回路22(第1のクロック可変回路の一例)を挿入し、基準信号源1とDDS4との間にクロック可変回路23(第2のクロック可変回路の一例)を挿入している。クロック可変回路は、以下CLK可変回路と言う。m1(t)は、CLK可変回路22の出力周波数を制御する制御信号であり、m2(t)は、CLK可変回路23の出力周波数を制御する制御信号である。fCLK1(t)は、CLK可変回路22が出力するDDS3のクロック信号の周波数であり、fCLK2(t)は、CLK可変回路23が出力するDDS4のクロック信号の周波数である。
DDS制御回路21は、所望の出力周波数foutを示すデータが入力され、CLK可変回路22及びCLK可変回路23が出力するクロック信号を制御し、DDS3及びDD4の出力周波数を制御する制御回路である。DDS制御回路21は、CLK可変回路22、CLK可変回路23にそれぞれm1(t)、m2(t)を出力し、DDS3、DDS4にそれぞれk1(t)、k2(t)を出力することによって、CLK可変回路22及びCLK可変回路23の出力周波数、DDS3及びDDS4の出力周波数を制御する。DDS制御回路21のクロック端子は、基準信号源1の出力端子に接続され、DDS制御回路21の第1の制御信号出力端子は、CLK可変回路22の制御端子に接続され、DDS制御回路21の第2の制御信号出力端子は、CLK可変回路23の制御端子に接続され、DDS制御回路21の第1の出力端子は、DDS3の入力端子に接続され、DDS制御回路21の第2の出力端子は、DDS4の入力端子に接続される。DDS制御回路21は、ディジタル信号を演算する演算回路を有する。DDS制御回路21は、例えば、高速にディジタル信号の演算処理を行うことができるFPGAなどが用いられる。DDS制御回路21は、フィルタ5及びフィルタ6の通過帯域、m1(t)とfCLK1(t)との関係、m2(t)とfCLK2(t)との関係を記憶するメモリを有する。また、DDS制御回路21は、foutを記憶するメモリを有しても良い。
図20は、実施の形態3に係るDDS制御回路21におけるk1(t)、k2(t)、m1(t)、m2(t)の演算手順の一例を示すフローチャート図である。
f1(t)、fCLK1(t)、k1(t)及びm1(t)に関するフローチャートであるが、f2(t)、fCLK2(t)、k2(t)及びm2(t)に対しても同様である。代表して、f1(t)、fCLK1(t)、k1(t)及びm1(t)の場合を説明する。
まず、S301において、DDS制御回路21は、f1(t)を設定する。DDS制御回路21は、図2のフローチャートにより、f1(t)の変化を決定しても良いし、予め決まったf1(t)をメモリに保存しておき、そのf1(t)を読みだしても良い。
次に、ステップS302において、DDS制御回路21は、以下の式(19)により、時刻tにおけるfCLK1(t)を算出する。fCLK_maxは、CLK可変回路22及びCLK可変回路23で生成できる最大の周波数である。Rは、CLK可変回路22及びCLK可変回路23の周波数分解能を表す値であり、正の整数である。rは、正の整数で、fCLK1(t)を制御する変数である。初めてステップS302の処理を行う場合、DDS制御回路21は、r=Rと設定する。
CLK可変回路22及びCLK可変回路23が出力する周波数の最小ステップΔfは、以下の式(20)で表される。
次に、ステップS303において、DDS制御回路21は、算出したfCLK1(t)と以下の式(21)とから周波数データn1(t)を算出する。n1(t)は、DDS3の周波数分解能を考慮せずに決定されるので、理想状態の周波数データである。
次に、ステップS304において、DDS制御回路21は、算出したn1(t)に最も近い周波数データk1(t)を選択する。DDS制御回路21は、DDS3が出力できる周波数k1(t)を保持したメモリから、n1(t)に最も近いk1(t)を選択する。
次に、ステップS305において、n1(t)に対するk1(t)の誤差|n1(t)−k1(t)|を算出する。|n1(t)−k1(t)|と予め設定された許容誤差Aとを比較し、|n1(t)−k1(t)|≦Aであれば、k1(t)及びfCLK1(t)は決定され、ステップS306に進む。これに対して、|n1(t)−k1(t)|>Aであれば、k1(t)及びfCLK1(t)は決定されず、ステップS307に進む。
次に、ステップS306において、DDS制御回路21は、以下の式(22)から、m1(t)を算出し、m1(t)及びステップS305で決定したk1(t)をDDS3に出力し、時刻tにおけるフローを終了する。DDS制御回路21は、時刻tごとにステップS302〜ステップS306の処理を行う。式(22)において、fCLKは、基準信号源1が出力するクロック信号の周波数である。ただし、式(22)は、CLK可変回路22及びCLK可変回路23がPLLの場合の式である。
次に、ステップS307において、DDS制御回路21は、|n1(t)−k1(t)|が許容誤差Aを満たさなかったので、rの値を1減らし、ステップS302に進む。rの値を1減らすことは、fCLK1(t)を式(20)のΔfだけ、低くすることを意味する。
その後、上記で説明したように、ステップS302〜ステップS305処理を行うが、|n1(t)−k1(t)|が、許容誤差Aを満足するまで、ステップS302〜ステップS305、ステップS307の処理のループを行う。ただし、どうしても許容誤差Aを満たさない場合は、最も誤差の小さいk1(t)及びfCLK1(t)を選択する。予め設定したループ回数を超えた場合に、k1(t)及びfCLK1(t)を選択しても良いし、k1(t)及びfCLK1(t)が所定時間以上決まらなかった場合に、k1(t)及びfCLK1(t)を選択するようにしても良い。その後、ステップS307に進み、フローを終了する。
以上説明したフローチャートは、できるだけ高いクロック周波数で周波数データを生成できるので、周波数f1(t)とf2(t)の信号の量子化雑音を小さくできる。したがって、f1(t)とf2(t)とから生成されるfoutの信号の量子化雑音を低減できる。さらに、DDS制御回路21は、クロック周波数と周波数データの2つのパラメータを変化させるので、クロック周波数を変化させないときに比べて、f1(t)及びf2(t)の周波数ステップを小さくでき、f1(t)及びf2(t)の周波数分解能が向上する。これにより、foutの周波数分解能が改善する。ここで、図20のフローチャートの説明を終了する。
DDS制御回路21は、入力されたfoutを示すデータに対応するk1(t)、k2(t)、fCLK1(t)、fCLK2(t)のデータを記憶しておくメモリを有してもよい。この場合、DDS制御回路21は、基準信号源1からのクロック信号に同期し、入力されたfoutを示すデータをアドレスとしてk1(t)、k2(t)、fCLK1(t)、fCLK2(t)のデータを読み出し、それぞれDDS3、DDS4、CLK可変回路22、CLK可変回路23に出力する。
CLK可変回路22は、基準信号源1が出力したクロック信号に同期して、DDS制御回路21が出力する制御信号m1(t)から、fCLK1(t)の信号を生成する回路である。CLK回路22の入力端子は、基準信号源1の出力端子に接続され、CLK回路22の制御端子は、DDS制御回路21の第1の制御信号出力端子に接続され、CLK回路22の制御端子は、DDS3のクロック端子に接続される。例えば、CLK可変回路22には、PLLを用いることができる。PLLの場合、m1(t)は、PLL内の分周器の分周比を制御する信号である。その場合、CLK可変回路22は、基準信号源1が出力するfCLKに同期して、周波数安定度の高いfCLK1(t)を生成することができる。CLK可変回路22は、DDS3にクロック信号として周波数fCLK1(t)の信号を出力する。
CLK可変回路23は、基準信号源1が出力したクロック信号に同期して、DDS制御回路21が出力する制御信号m2(t)から、fCLK2(t)の信号を生成する回路である。CLK回路23の入力端子は、基準信号源1の出力端子に接続され、CLK回路23の制御端子は、DDS制御回路21の第2の制御信号出力端子に接続され、CLK回路23の出力端子は、DDS4のクロック端子に接続される。例えば、CLK可変回路23には、PLLを用いることができる。PLLの場合、m2(t)は、PLL内の分周器の分周比を制御する信号である。その場合、CLK可変回路23は、基準信号源1が出力するfCLKに同期して、周波数安定度の高いfCLK2(t)を生成することができる。CLK可変回路23は、DDS4にクロック信号として周波数fCLK2(t)の信号を出力する。
次に、実施の形態3の動作について説明する。
DDS制御回路21は、基準信号源1が出力したクロック信号に同期して、所望の出力信号周波数foutから、式(1)及び式(2)に基づいて、上記(条件1)から(条件3)を満たすk1(t)、k2(t)、m1(t)及びm2(t)を計算する。そして、DDS制御回路21は、DDS3、DDS4にそれぞれk1(t)、k2(t)を出力し、CLK可変回路22、CLK可変回路23に、それぞれm1(t)、m2(t)を出力する。ここで、DDS制御回路21における計算及び計算結果の出力は、クロック信号fCLKに同期して行う。
CLK可変回路22は、基準信号源1から入力されたクロック信号fCLKに同期して、DDS制御回路21が出力したm1(t)と基準信号源1が出力したfCLKとからfCLK1(t)の信号を生成する。例えば、CLK可変回路22がPLLの場合、fCLKのm1(t)倍の周波数であるfCLK1(t)を生成する。CLK可変回路22は、生成したfCLK1(t)をDDS3に出力する。
CLK可変回路23は、基準信号源1から入力されたクロック信号に同期して、DDS制御回路21が出力したm2(t)と基準信号源1が出力したfCLKとからfCLK2(t)の信号を生成する。例えば、CLK可変回路23がPLLの場合、fCLKのm2(t)倍の周波数であるfCLK2(t)を生成する。CLK可変回路23は、生成したfCLK2(t)をDDS4に出力する。
DDS3は、DDS制御回路21が出力したk1(t)とCLK可変回路22が出力したfCLK1(t)とから、式(1)に基づいてf1(t)を生成し、f1(t)をフィルタ5に出力する。
DDS4は、DDS制御回路21が出力したk2(t)とCLK可変回路23が出力したfCLK2(t)とから、式(2)に基づいてf2(t)を生成し、f2(t)をフィルタ5に出力する。
これ以降のフィルタ5、フィルタ6、ミキサ7、フィルタ8の動作は、実施の形態1と同様であるため説明を省略する。
なお、DDS3、DDS4が、それぞれf1(t)、f2(t)を生成するとき、f1(t)及びf2(t)が(条件1)から(条件3)を満たしていれば、k1(t)、k2(t)が固定の値で、fCLK1(t)、fCLK2(t)が時間変化しても良い。また、f1(t)及びf2(t)の周波数変化を細かく制御するために、k1(t)、k2(t)、fCLK1(t)、fCLK2(t)の全てが時間変化しても良い。
以上のように、実施の形態3によれば、周波数データk1(t)、k2(t)だけでなく、CLK可変回路22、CLK可変回路23を用いてDDS3、DDS4のクロック信号fCLK1(t)、fCLK2(t)を可変にする。そして、可変したクロック信号に対して周波数データを決定するので、クロック信号の周波数を高くすることで、周波数f1(t)およびf2(t)の信号の量子化雑音を低減できる。これにより、f1(t)とf2(t)とから生成されるfoutの信号の量子化雑音を低減できる。また、実施の形態3の信号発生器は、k1(t)及びfCLK1(t)の2つのパラメータを変化させてf1(t)を生成でき、k2(t)及びfCLK2(t)の2つのパラメータを変化させてf2(t)を生成できるため、f1(t)及びf2(t)の周波数分解能が向上する。したがって、実施の形態3の信号発生器は、より細かい周波数ステップで出力信号foutを出力できる。