(57)【要約】  周波数シンセサイザは、デジタル制御信号を生成する制御回路（２０）と、生成されたデジタル制御信号に応じて発振周波数が変化するデジタル制御発振器（１０）とを備えている。制御回路（２０）は、基準信号とデジタル制御発振器の発振周波数信号との位相差を表す数値の整数部を、上位ビットとＭＳＢに冗長ビットが付加された下位ビットとに分ける演算回路（２６）と、上位ビットおよび下位ビットをそれぞれエンコードして制御信号を生成する２つのエンコーダ（２１，２２）とを有する。デジタル制御発振器（１０）は、これら制御信号で容量値がそれぞれ制御される２つの容量素子群（１４，１５）を有し、これら２つの容量素子群の合計容量値に応じて発振周波数が変化する。
2011161860.tif 000002
【特許請求の範囲】
【請求項１】
デジタル制御信号を生成する制御回路と、生成されたデジタル制御信号に応じて発振周波数が変化するデジタル制御発振器と、を備えている周波数シンセサイザであって、
前記制御回路は、
基準信号と前記デジタル制御発振器の発振周波数信号との位相差を表す数値の整数部を、上位ビットとＭＳＢに冗長ビットが付加された下位ビットとに分ける演算回路と、
前記上位ビットをエンコードして第１の制御信号を生成する第１のエンコーダと、
前記下位ビットをエンコードして第２の制御信号を生成する第２のエンコーダと、を有するものであり、
前記デジタル制御発振器は、
容量状態の高低が切り替え可能な第１の容量素子が複数個並列接続されてなり、前記第１の制御信号で容量値が制御される第１の容量素子群と、
容量状態の高低が切り替え可能な第２の容量素子が複数個並列接続されてなり、前記第２の制御信号で容量値が制御される第２の容量素子群と、を有し、
前記第１および第２の容量素子群の合計容量値に応じて発振周波数が変化するものである
ことを特徴とする周波数シンセサイザ。
【請求項２】
請求項１の周波数シンセサイザにおいて、
前記下位ビットに対する前記上位ビットの重みをＮとして、前記演算回路は、前記下位ビットが下限値よりも小さくなるおそれがある場合には、前記下位ビットをＮだけインクリメントおよび前記上位ビットを１だけデクリメントし、前記下位ビットが上限値よりも大きくなるおそれがある場合には、前記下位ビットをＮだけデクリメントおよび前記上位ビットを１だけインクリメントする
ことを特徴とする周波数シンセサイザ。
【請求項３】
請求項１の周波数シンセサイザにおいて、
前記下位ビットに対する前記上位ビットの重みをＮとして、前記演算回路は、前記整数部が初期値からＮ以上減少する場合には、前記下位ビットをＮだけインクリメントおよび前記上位ビットを１だけデクリメントし、前記整数部が初期値からＮ以上増加する場合には、前記下位ビットをＮだけデクリメントおよび前記上位ビットを１だけインクリメントする
ことを特徴とする周波数シンセサイザ。
【請求項４】
請求項１の周波数シンセサイザにおいて、
前記整数部のビット幅をｍ＋ｎビットとして、前記演算回路は、前記整数部の１回あたりの変動値が所定範囲外の場合には、前記上位ビットを前記整数部の上位ｍビットに、前記下位ビットのＭＳＢをゼロに、前記下位ビットのＭＳＢ以外を前記整数部の下位ｎビットにそれぞれ更新するスルーモードで動作し、前記変動値が前記所定範囲内の場合において、前記下位ビットがオーバーフローするおそれがある場合には、前記上位ビットを１だけインクリメントおよび前記下位ビットをＭＳＢを保持したまま前記変動値だけインクリメントし、前記下位ビットがアンダーフローするおそれがある場合には、前記上位ビットを１だけデクリメントおよび前記下位ビットをＭＳＢを保持したまま前記変動値だけデクリメントする演算モードで動作する
ことを特徴とする周波数シンセサイザ。
【請求項５】
請求項１の周波数シンセサイザにおいて、
前記整数部のビット幅をｍ＋ｎビットとして、前記演算回路は、前記整数部の１回あたりの変動値が所定範囲外の場合、または、前記変動値が前記所定範囲内であって前記下位ビットがオーバーフローまたはアンダーフローするおそれがある場合には、前記上位ビットを前記整数部の上位ｍビットに、前記下位ビットのＭＳＢをゼロに、前記下位ビットのＭＳＢ以外を前記整数部の下位ｎビットにそれぞれ更新するスルーモードで動作し、それ以外の場合には、前記下位ビットに前記変動値を加算する演算モードで動作する
ことを特徴とする周波数シンセサイザ。
【請求項６】
請求項１から５のいずれか一つの周波数シンセサイザにおいて、
前記下位ビットに対する前記上位ビットの重みをＮとして、前記第２の容量素子の個数は２Ｎ−１よりも少ない
ことを特徴とする周波数シンセサイザ。
【請求項７】
請求項２の周波数シンセサイザにおいて、
前記下限値および上限値の差分はＮ以上であり、
前記第２の容量素子の個数は前記上限値を丸めた値に等しい
ことを特徴とする周波数シンセサイザ。
【請求項８】
請求項１から７のいずれか一つの周波数シンセサイザにおいて、
前記第１の容量素子の個数は２Ｕ−２（ただし、Ｕは前記上位ビットのビット幅）である
ことを特徴とする周波数シンセサイザ。
【請求項９】
デジタル制御信号を生成する制御回路と、生成されたデジタル制御信号に応じて発振周波数が変化するデジタル制御発振器と、を備えている周波数シンセサイザであって、
前記制御回路は、
基準信号と前記デジタル制御発振器の発振周波数信号との位相差を表す数値の整数部を、上位ビットと下位ビットとに分けるとともに冗長ビットを生成する演算回路と、
前記上位ビットをエンコードして第１の制御信号を生成する第１のエンコーダと、
前記下位ビットをエンコードして第２の制御信号を生成する第２のエンコーダと、を有するものであり、
前記デジタル制御発振器は、
容量状態の高低が切り替え可能な第１の容量素子が複数個並列接続されてなり、前記第１の制御信号で容量値が制御される第１の容量素子群と、
容量状態の高低が切り替え可能な第２の容量素子が複数個並列接続されてなり、前記第２の制御信号で容量値が制御される第２の容量素子群と、
前記冗長ビットで容量状態の高低が切り替え可能な第３の容量素子と、を有し、
前記第１および第２の容量素子群ならびに前記第３の容量素子の合計容量値に応じて発振周波数が変化するものであり、
前記第１の容量素子に係る高容量値および低容量値の差分と前記第３の容量素子に係る高容量値および低容量値の差分との比率は２：１であり、
前記下位ビットに対する前記上位ビットの重みをＮとして、前記演算回路は、前記下位ビットが下限値よりも小さくなるおそれがある場合には、前記下位ビットをＮ／２だけインクリメントおよび前記上位ビットを１だけデクリメントするとともに前記冗長ビットを前記第３の容量素子が高容量状態となる値にし、前記下位ビットが上限値よりも大きくなるおそれがある場合には、前記下位ビットをＮ／２だけデクリメントするとともに前記冗長ビットを前記第３の容量素子が高容量状態となる値にする
ことを特徴とする周波数シンセサイザ。
【請求項１０】
請求項９の周波数シンセサイザにおいて、
前記第２の容量素子の個数はＮ−１よりも少ない
ことを特徴とする周波数シンセサイザ。
【請求項１１】
請求項９の周波数シンセサイザにおいて、
前記下限値および上限値の差分はＮ／２以上であり、
前記第２の容量素子の個数は前記上限値を丸めた値に等しい
ことを特徴とする周波数シンセサイザ。
【請求項１２】
請求項１から１１のいずれか一つの周波数シンセサイザにおいて、
前記下位ビットに対する前記上位ビットの重みをＮとして、前記第１の容量素子に係る高容量値および低容量値の差分と前記第２の容量素子に係る高容量値および低容量値の差分との比率はＮ：１である
ことを特徴とする周波数シンセサイザ。
【請求項１３】
請求項１から１１のいずれか一つの周波数シンセサイザにおいて、
前記第１の容量素子に係る高容量値および低容量値の差分と前記第２の容量素子に係る高容量値および低容量値の差分との比率は１：１である
ことを特徴とする周波数シンセサイザ。
【請求項１４】
請求項１から１３のいずれか一つの周波数シンセサイザにおいて、
前記第２のエンコーダは、前記複数の第２の容量素子のうち高容量値に設定すべきものおよび低容量値に設定すべきものが適宜切り替わるように前記下位ビットをダイナミックエレメントマッチング処理によってエンコードする
ことを特徴とする周波数シンセサイザ。
【請求項１５】
請求項１から１４のいずれか一つの周波数シンセサイザにおいて、
前記第１のエンコーダは、前記複数の第１の容量素子のうち高容量値に設定すべきものおよび低容量値に設定すべきものが適宜切り替わるように前記上位ビットをダイナミックエレメントマッチング処理によってエンコードする
ことを特徴とする周波数シンセサイザ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周波数シンセサイザに関し、特に、デジタル値で発振制御される周波数シンセサイザに関する。
【背景技術】
【０００２】
近年、ＣＭＯＳプロセスの微細化技術の発展に伴い、アナログ回路の全部または一部をデジタル回路に置き換えることにより、低電圧駆動、特性ばらつきの低減、回路の小型化などを実現する研究が進められている。例えば、位相比較器やループフィルタなどの構成要素をすべてデジタル化した全デジタルＰＬＬ周波数シンセサイザ（all-digital PLL frequency synthesizer）がある。このシンセサイザは、アナログ電圧によって周波数制御される電圧制御発振器の代わりに、離散的な数値情報（デジタル値）によって周波数制御可能なデジタル制御発振器（DCO:Digitally Controlled Oscillator）を備え、デジタル制御発振器から出力された発振周波数信号の位相情報を数値化し、位相比較器およびループフィルタを介してデジタル制御発振器にフィードバックすることによって位相同期ループを実現している（例えば、特許文献１および２参照）。【０００３】
一般に、デジタル制御発振器は、インダクタと複数の容量素子とが並列接続されてなるＬＣ発振回路として構成される。そして、デジタル制御信号で各容量素子を高容量値および低容量値のいずれか一方になるように制御することでデジタル制御発振器は所望の周波数で発振する。かかる構成のデジタル制御発振器において、単位制御信号に対する周波数変化をできるだけ小さくかつ一定にしつつ発振周波数レンジを広くするには制御ビット数を増やすとともに容量素子の個数も増やす必要がある。しかし、制御ビット数および容量素子の個数の増加により、制御線および容量素子の占有面積が増大し、さらに寄生容量も増大してしまう。そこで、基準信号とデジタル制御発振器の発振周波数信号との位相差を表す数値の整数部をＮ：１（ただし、Ｎは２以上の整数）の重み比で上位ビットおよび下位ビットに分け、下位ビットで最小容量値の第１の容量素子を制御するとともに上位ビットでそのＮ倍の容量値の第２の容量素子を制御する周波数シンセサイザがある（例えば、特許文献２参照）。この周波数シンセサイザでは、容量素子の全体数が減るため制御線を削減することができ、さらに、第１の容量素子をＮ個形成するよりも第２の容量素子を１個形成する方が占有面積が小さいため、全体として回路面積を小さくすることが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第６７３４７４１号明細書
【特許文献２】特開２００９−１０５９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来の周波数シンセサイザには、以下のような２つの問題がある。【０００６】
一つは、下位ビットと上位ビットとの間で発生する桁上がりまたは桁下がりにおいて、第１および第２の容量素子のデバイス構造の違いによる非線形性が生じやすいという問題である。特に、周波数シンセサイザが桁上がりまたは桁下がりの境界でロックすると、微小な出力変動に対して大きな位相誤差が発生してノイズの原因になる。【０００７】
もう一つは、同じ制御値に対して異なる制御線の組み合わせを適宜選択することで容量素子のバラツキを均一化するといったダイナミックエレメントマッチング（ＤＥＭ）を搭載する場合、その効果が十分に得られないという問題である。例えば、５ビットの下位ビットで制御される容量素子が３１個あるとすると、下位ビットが5b01111の場合には３１個の容量素子のうち任意の１５個を高容量値に制御し残りを低容量値に制御することでＤＥＭ効果が得られるが、下位ビットが5b00000または5b11111の場合には３１個の容量素子のすべてを低容量値または高容量値に制御するためＤＥＭ効果が得られない。このように、下位ビットによってはＤＥＭ効果が得られずに線形性が劣化する。したがって、周波数シンセサイザを時間的に周波数が変化する変調器として使用する場合にノイズ特性が劣化するおそれがある。【０００８】
上記問題に鑑み、本発明は、回路面積が小さく線形性およびノイズ特性に優れた周波数シンセサイザを実現することを課題とする。
【課題を解決するための手段】
【０００９】
本発明の一例に係る周波数シンセサイザは、デジタル制御信号を生成する制御回路と、生成されたデジタル制御信号に応じて発振周波数が変化するデジタル制御発振器と、を備えている周波数シンセサイザであって、制御回路は、基準信号とデジタル制御発振器の発振周波数信号との位相差を表す数値の整数部を、上位ビットとＭＳＢに冗長ビットが付加された下位ビットとに分ける演算回路と、上位ビットをエンコードして第１の制御信号を生成する第１のエンコーダと、下位ビットをエンコードして第２の制御信号を生成する第２のエンコーダと、を有する。デジタル制御発振器は、容量状態の高低が切り替え可能な第１の容量素子が複数個並列接続されてなり、第１の制御信号で容量値が制御される第１の容量素子群と、容量状態の高低が切り替え可能な第２の容量素子が複数個並列接続されてなり、第２の制御信号で容量値が制御される第２の容量素子群と、を有し、第１および第２の容量素子群の合計容量値に応じて発振周波数が変化する。【００１０】
また、本発明の別例に係る周波数シンセサイザは、デジタル制御信号を生成する制御回路と、生成されたデジタル制御信号に応じて発振周波数が変化するデジタル制御発振器と、を備えている周波数シンセサイザであって、制御回路は、基準信号とデジタル制御発振器の発振周波数信号との位相差を表す数値の整数部を、上位ビットと下位ビットとに分けるとともに冗長ビットを生成する演算回路と、上位ビットをエンコードして第１の制御信号を生成する第１のエンコーダと、下位ビットをエンコードして第２の制御信号を生成する第２のエンコーダと、を有する。デジタル制御発振器は、容量状態の高低が切り替え可能な第１の容量素子が複数個並列接続されてなり、第１の制御信号で容量値が制御される第１の容量素子群と、容量状態の高低が切り替え可能な第２の容量素子が複数個並列接続されてなり、第２の制御信号で容量値が制御される第２の容量素子群と、冗長ビットで容量状態の高低が切り替え可能な第３の容量素子と、を有し、第１および第２の容量素子群ならびに第３の容量素子の合計容量値に応じて発振周波数が変化する。そして、下位ビットに対する上位ビットの重みをＮとして、演算回路は、下位ビットが下限値よりも小さくなるおそれがある場合には、下位ビットをＮ／２だけインクリメントおよび上位ビットを１だけデクリメントするとともに冗長ビットを第３の容量素子が高容量状態となる値にし、下位ビットが上限値よりも大きくなるおそれがある場合には、下位ビットをＮ／２だけデクリメントするとともに冗長ビットを第３の容量素子が高容量状態となる値にする。ただし、第１の容量素子に係る高容量値および低容量値の差分と第３の容量素子に係る高容量値および低容量値の差分との比率は２：１である。【００１１】
これらによると、整数部の変動によって下位ビットが下限値または上限値から越える場合に、上位ビットは１だけインクリメントまたはデクリメントされるとともに下位ビットは下限値から上限値までの間の値に戻される。すなわち、上下位ビット間の桁上がりまたは桁下がりが一度発生した後は、整数部の変動を下位ビットで吸収することができ、再度の桁上がりまたは桁下がりが発生しにくくなる。
【発明の効果】
【００１２】
本発明によると、整数部の上位ビットおよび下位ビットに分けることによる容量素子の占有面積削減の効果を得ることができる。さらに、上位ビットおよび下位ビット間の桁上がりまた桁下がりが発生しにくくなるため、周波数シンセサイザの線形性およびノイズ特性を向上することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１の実施形態に係る周波数シンセサイザの構成図である。
【図２】図２は、第１の実施形態に係るデジタル制御発振器の要部の構成を示す図である。
【図３】図３は、第１の実施形態に係る演算回路の動作例を示すフローチャートである。
【図４】図４は、従来構成および第１の実施形態に係る各種制御値の一例を示す表である。
【図５】図５は、変形例に係るデジタル制御発振器の要部の構成を示す図である。
【図６】図６は、変形例に係る演算回路の動作例を示すフローチャートである。
【図７】図７は、従来構成および変形例に係る各種制御値の一例を示す表である。
【図８】図８は、第１例に係る演算回路の動作を示すフローチャートである。
【図９】図９は、第１例に係る演算回路の一構成例を示す図である。
【図１０】図１０は、第１例に係る演算回路の別構成例を示す図である。
【図１１】図１１は、第２例に係る演算回路の動作を示すフローチャートである。
【図１２】図１２は、第２例に係る演算回路の一構成例を示す図である。
【図１３】図１３は、第３例に係る演算回路の動作を示すフローチャートである。
【図１４】図１４は、第３例に係る演算回路の一構成例を示す図である。
【図１５】図１５は、第２例および第３例に係る各種制御値の一例を示す表である。
【図１６】図１６は、第２の実施形態に係る周波数シンセサイザの構成図である。
【図１７】図１７は、第２の実施形態に係るデジタル制御発振器の要部の構成を示す図である。
【図１８】図１８は、第２の実施形態に係る演算回路の動作例を示すフローチャートである。
【図１９】図１９は、従来構成および第２の実施形態に係る各種制御値の一例を示す表である。
【発明を実施するための形態】
【００１４】
（第１の実施形態）
図１は、第１の実施形態に係る周波数シンセサイザの構成を示す。本実施形態に係る周波数シンセサイザは、デジタル制御発振器（ＤＣＯ）１０の発振周波数を制御回路２０によりループ制御するフェーズドロックループ（ＰＬＬ）回路である。ＤＣＯ１０は、インダクタ１１と可変容量部１２と負性抵抗生成部１３と出力アンプ１９とを有するＬＣ発振回路として構成される。可変容量部１２の容量値を変化させることによりＤＣＯ１０の発振周波数を変化させることができる。
【００１５】
可変容量部１２は、容量素子群１４と容量素子群１５とΣΔ変調用容量素子群１６と粗調整用容量素子群１７とを有している。図２は、ＤＣＯ１０の要部の構成を示す。容量素子群１４は、制御信号ＯＴＷ＿Ｃ１＿１〜ＯＴＷ＿Ｃ１＿６に応じてそれぞれ高容量値ＣＨ１および低容量値ＣＬ１が切り替わる６個の容量素子Ｃ１＿１〜Ｃ１＿６が並列接続されて構成されている。容量素子群１５は、制御信号ＯＴＷ＿Ｃ２＿１〜ＯＴＷ＿Ｃ２＿６３に応じてそれぞれ高容量値ＣＨ２および低容量値ＣＬ２が切り替わる６３個の容量素子Ｃ２＿１〜Ｃ２＿６３が並列接続されて構成されている。ここで、ＣＨ１およびＣＬ１の差分とＣＨ２およびＣＬ２の差分との比率はＮ：１（Ｎは２以上の整数）である。例えば、Ｎ＝３２の場合、容量素子群１４，１５の合計容量値は、ＣＨ２およびＣＬ２の差分を最小単位として２５６ステップに変化させることができる。また、容量素子Ｃ１は容量素子Ｃ２の３２倍の容量値を有するものの、１個の容量素子にしたことにより占有面積は単純に３２倍には増加せず、容量値を決める部分以外の周辺部の共有化の効果、配線面積の削減効果などが得られる。したがって、図２の構成により、容量素子Ｃ２を２５５個形成する場合よりも大幅に回路面積を低減することができる。
【００１６】
図１に戻り、ＤＣＯ１０において、基準信号生成部３５は、周波数選局データまたは変調データと参照周波数信号から基準信号を生成する。比較信号生成部３６は、ＤＣＯ１０の出力に対して分周および積分などの処理を施して比較信号を生成する。信号比較部３４は、比較信号および基準信号を受け、これら信号の位相もしくは周波数または位相および周波数の両方を比較し、そのずれに応じた比較結果を出力する。ループゲイン調整部３３は、信号比較部３４の比較結果に基づいて、ループゲインが適切になるように、粗調整用容量素子群１７を制御する粗調整制御データと、容量素子群１４，１５およびΣΔ変調用容量素子群１６を制御する微調整制御データとを生成する。すなわち、粗調整制御データでＤＣＯ１０の発振周波数を大まかに決定してから、微調整制御データでＤＣＯ１０の発振周波数を目標値に追従させることで、周波数シンセサイザは所望の発振周波数信号を安定的に供給する。
【００１７】
微調整制御データは基準信号とＤＣＯ１０の発振周波数信号との位相差を表す数値に相当する。当該数値は整数部および分数部からなる。演算回路２６は、入力された整数部をＮ：１、例えば、３２：１の重み比の上位ビットおよびＭＳＢに冗長ビットが付加された下位ビットに分ける。例えば、整数部を８ビットとすると、上位ビットは３ビット、下位ビットは５ビット＋冗長ＭＳＢ１ビットの６ビットである。すなわち、Ｎは、下位ビットのビット幅をｎ＋１として２ｎで表される値である。サーモメータエンコーダ２１は、上位ビットをサーモメータコードに変換して容量素子群１４を制御する制御信号ＯＴＷ＿Ｃ１を生成する。サーモメータエンコーダ２２は、下位ビットをサーモメータコードに変換して容量素子群１５を制御する制御信号ＯＴＷ＿Ｃ２を生成する。
【００１８】
ディザリングクロック生成部３８はＤＣＯ１０の発振周波数信号からディザリングクロック信号を生成する。ΣΔ変調器３７は、ディザリングクロック信号で動作して、分数部をΣΔ変調する。サーモメータエンコーダ２３は、ΣΔ変調器３７の出力をサーモメータコードに変換してΣΔ変調用容量素子群１６を制御する制御信号を生成する。
【００１９】
次に、図３のフローチャートを参照して演算回路２６の動作例について説明する。演算回路２６は、下位ビットが下限値“８”よりも小さくなるおそれがある場合には、上下位ビット間の桁下がり処理として、下位ビットをＮ、すなわち３２だけインクリメントおよび上位ビットを１だけデクリメントする。ただし、整数部が下限値“３２”よりも小さい場合には上位ビットが最小値3b000となりデクリメントができないため、整数部が下限値“３２”以上のときにのみ当該処理を行う。一方、演算回路２６は、下位ビットが上限値“５５”よりも大きくなるおそれがある場合には、上下位ビット間の桁上がり処理として、下位ビットをＮ、すなわち３２だけデクリメントおよび上位ビットを１だけインクリメントする。ただし、整数部が上限値“２２３”よりも大きい場合には上位ビットが最大値3b110となりインクリメントができないため、整数部が上限値“２２３”以下のときにのみ当該処理を行う。
【００２０】
図４は、従来構成および本実施形態に係る各種制御値の一例を示す表である。表中のＣ１ａは、容量素子群１４を構成する容量素子Ｃ１＿１〜Ｃ１＿６のうち高容量状態に制御されるものの個数を表す。Ｃ２ａは、容量素子群１５を構成する容量素子Ｃ２＿１〜Ｃ２＿６３のうち高容量状態に制御されるものの個数を表す。ΣＣａは、容量素子群１４，１５の合計容量値を容量素子Ｃ２の個数に換算した値である。従来構成および本実施形態のいずれも合計容量値が整数部に一致するように容量素子群１４，１５を制御できている。しかし、従来構成では８ビットの整数部を単純に上位３ビットと下位５ビットに分けているため、下位ビットは5b00000から5b11111までのフルレンジで変化する。一方、本実施形態では下位ビットに冗長ＭＳＢを付加しているため、整数部が下限値“３２”よりも小さいおよび上限値“２２３”よりも大きい場合を除き、下位ビットは6b001000から6b110111までしか変化しない。すなわち、容量素子群１５に対する制御値が下位ビットの下限値“８”から上限値“５５”までの間で安定する。
【００２１】
図４（ａ）に示したように、例えば、従来構成では、整数部が６３〜６４の間で変動すると上下位ビット間の桁上がりまたは桁下がりが頻発する。一方、本実施形態では、例えば、整数部が５５から１増加して５６に変化するときに桁上がりが発生するが、整数部が５６に変化すると下位ビットは２４に変化するため、その後整数部が５５に戻っても桁下がりは発生せずに下位ビットが２３に変化するだけである。また、図４（ｂ）に示したように、本実施形態では、例えば、整数部が７２から１減少して７１に変化するときに桁下がりが発生するが、整数部が７１に変化すると下位ビットは３９に変化するため、その後整数部が７２に戻っても桁上がりは発生せずに下位ビットが４０に変化するだけである。
【００２２】
以上のように本実施形態によると、整数部の変動によって一度上下位ビット間の桁上がりまたは桁下がりが発生すると下位ビットがレンジ中程の値に変化するため、その後の桁上がりまたは桁下がりが発生しにくくなる。これにより、ＤＣＯ１０のノイズ特性および線形性を向上することができる。また、本実施形態では上位ビットの最大値は3b110であるから、容量素子群１４を構成する容量素子Ｃ１は従来構成よりも１個少ない６個にすることができる。
【００２３】
なお、下位ビットの下限値“８”および上限値“５５”はあくまでも一例であり、非整数値を含む他の値であってもよい。また、整数部の下限値“３２”および上限値“２２３”ならびに下位ビットのインクリメントおよびデクリメントに係る値“３２”は容量素子Ｃ１，Ｃ２の容量比が３２：１のときに対応した値であり、当該容量比が異なればそれに応じて異なる値となる。また、容量素子Ｃ１を従来と同様に７個にして、容量素子群１５を構成する容量素子Ｃ２を６３個よりも少なくしてもよい。
【００２４】
＜変形例＞
図５は、変形例に係るＤＣＯ１０の要部の構成を示す。容量素子群１４は、７個の容量素子Ｃ１＿１〜Ｃ１＿７が並列接続されて構成されている。容量素子群１５は、３９個の容量素子Ｃ２＿１〜Ｃ２＿３９が並列接続されて構成されている。
【００２５】
図６のフローチャートを参照して変形例に係る演算回路２６の動作例について説明する。演算回路２６は、下位ビットが下限値“４”よりも小さくなるおそれがある場合には、上下位ビット間の桁下がり処理として、下位ビットをＮ、すなわち３２だけインクリメントおよび上位ビットを１だけデクリメントする。ただし、整数部が下限値“３２”よりも小さい場合には上位ビットが最小値3b000となりデクリメントができないため、整数部が下限値“３２”以上のときにのみ当該処理を行う。一方、演算回路２６は、下位ビットが上限値“３９”よりも大きくなるおそれがある場合には、上下位ビット間の桁上がり処理として、下位ビットをＮ、すなわち３２だけデクリメントおよび上位ビットを１だけインクリメントする。変形例では当該処理を行う整数部の上限値はない。これは、上位ビットが最大で3b111となり得るからである。
【００２６】
図７は、従来構成および変形例に係る各種制御値の一例を示す表である。変形例では、整数部が下限値“３２”よりも小さい場合を除き、下位ビットは6b000100から6b100111までしか変化しない。すなわち、容量素子群１５に対する制御値が下位ビットの下限値“４”から上限値“３９”までの間で安定する。図７（ａ）に示したように、例えば、変形例では、整数部が３９から１増加して４０に変化するときに桁上がりが発生するが、整数部が４０に変化すると下位ビットは８に変化するため、その後整数部が３９に戻っても桁下がりは発生せずに下位ビットが７に変化するだけである。また、図７（ｂ）に示したように、変形例では、例えば、整数部が６８から１減少して６７に変化するときに桁下がりが発生するが、整数部が６７に変化すると下位ビットは３５に変化するため、その後整数部が６８に戻っても桁上がりは発生せずに下位ビットが３６に変化するだけである。
【００２７】
変形例では、容量素子群１５に対する制御値が最大でも“３９”であることから、容量素子Ｃ２を３９個に削減して容量素子群１５の占有面積を最小化している。すなわち、容量素子Ｃ２の最小個数は下位ビットの上限値（上限値が非整数の場合には上限値を丸めた値）に等しい。
【００２８】
整数部の変動幅が、下位ビットの上限値−下位ビットの下限値＋１で与えられる下位ビットの可変幅と上位ビットおよび下位ビットの重み比との差分（変形例では、（３９−４＋１）−３２＝４となる）以内であれば、一度桁上がりまたは桁下がりが発生して下位ビットが８または３５に変化した後に再度の桁上がりまたは桁下がりは発生しないが、整数部の変動幅がそれを越えると再度の桁上がりまたは桁下がりが起こり得る。すなわち、下位ビットの可変幅と上位ビットおよび下位ビットの重み比との差分は、整数部の変動に対するヒステリシスマージンと見ることができる。図２の構成は変形例よりも多くの容量素子Ｃ２を必要とするが、上限値が“５５”、下限値が“８”であることからヒステリシスマージンが１６（＝（５５−８＋１）−３２）であるため、変形例よりも整数部の変動に強いと言える。逆に、回路面積および消費電力の低減の方が重要であればヒステリシスマージンを１にすることができる。この場合、下位ビットの下限値および上限値はそれぞれ１および３３となり、容量素子Ｃ２を３３個にまで削減することができる。
【００２９】
ところで、上記説明では、演算回路２６は下位ビットと上限値または下限値との比較結果に基づいて上下位ビット間の桁上がり処理または桁下がり処理を行っているが、整数部の変動値に応じてこれら処理を行うようにしてもよい。以下、整数部の変動値に基づく処理の例をいくつか挙げる。
【００３０】
＜第１例＞
図８は、第１例に係る演算回路２６の動作を示すフローチャートである。本例に係る演算回路２６は、整数部の初期値からの変動値に基づいて上下位ビット間の桁上がり処理または桁下がり処理を行う。具体的には、演算回路２６は、まず、整数部の初期値を格納する、または、後述する変動カウンタをリセットする。そして、演算回路２６は、整数部が初期値から−Ｎ、すなわち−３２以上減少する場合には、上下位ビット間の桁下がり処理として、下位ビットをＮ、すなわち３２だけインクリメントおよび上位ビットを１だけデクリメントする。一方、演算回路２６は、整数部が初期値からＮ、すなわち３２以上増加する場合には、上下位ビット間の桁上がり処理として、下位ビットをＮ、すなわち３２だけデクリメントおよび上位ビットを１だけインクリメントする。
【００３１】
本例に係る演算回路２６は、図９に示したように構成することができる。初期値保存部２７は、ｍ＋ｎビット幅の整数部の初期値を保持する。比較部２８Ａは、演算回路２６に入力された整数部と初期値保存部２７が保持する初期値とを比較し、値Ａ，Ｂを出力する。値Ａは、整数部の初期値からの変動値が−Ｎ以下であれば−１、−ＮからＮまでの範囲内であれば０、Ｎ以上であれば１となる。加算器２６１は、整数部の上位ｍビットと値Ａとを加算してｍビット幅の上位ビットを出力する。値Ｂは、整数部の初期値からの変動値が−Ｎ以下であれば−Ｎ、−ＮからＮまでの範囲内であれば０、Ｎ以上であればＮとなる。加算器２６２は、整数部の下位ｎビットと値Ｂとを加算してｎ＋１ビット幅の下位ビットを出力する。
【００３２】
本例に係る演算回路２６は、図１０に示したように構成することもできる。フリップフロップ２６３は、演算回路２６に入力されたｍ＋ｎビット幅の整数部をクロック信号ｃｋのタイミングで保持する。変動カウンタ＆比較部２８Ｂは、初期リセット信号によってリセットされ、演算回路２６に入力された整数部とフリップフロップ２６３の出力、すなわち、１クロック前に入力された整数部との差分を累積加算し、値Ａ，Ｂを出力する。フリップフロップ２６３の出力は１クロック前の整数部を表すため、変動カウンタ＆比較部２８Ｂが累積加算する値は、リセットされたときの整数部を初期値とする、整数部の初期値からの変動値に相当する。値Ａ，Ｂおよび加算器２６１，２６２の動作については上述したとおりである。
【００３３】
＜第２例＞
図１１は、第２例に係る演算回路２６の動作を示すフローチャートである。本例に係る演算回路２６は、整数部の１回あたりの変動値に基づいて上下位ビット間の桁上がり処理または桁下がり処理を行う。具体的には、演算回路２６は、整数部の１回あたりの変動値が所定範囲外の場合、スルーモードで動作する。整数部のビット幅をｍ＋ｎとすると、スルーモードでは、演算回路２６は、上位ビットを整数部の上位ｍビットに、下位ビットのＭＳＢをゼロに、下位ビットのＭＳＢ以外を整数部の下位ｎビットにそれぞれ更新する。
【００３４】
一方、演算回路２６は、整数部の１回あたりの変動値が所定範囲内の場合、演算モードで動作する。演算モードでは、演算回路２６は、下位ビットに整数部の変動値を加算する。ただし、下位ビットがオーバーフローするおそれがある場合には、演算回路２６は、上下位ビット間の桁上がり処理として、上位ビットを１だけインクリメントおよび下位ビットをＭＳＢを保持したまま整数部の変動値だけインクリメントする。すなわち、下位ビットの演算においてＭＳＢとそれ以下のビットとの間で桁上がり処理は行わない。また、下位ビットがアンダーフローするおそれがある場合には、演算回路２６は、上下位ビット間の桁下がり処理として、上位ビットを１だけデクリメントおよび下位ビットをＭＳＢを保持したまま整数部の変動値だけデクリメントする。すなわち、下位ビットの演算においてＭＳＢとそれ以下のビットとの間で桁下がり処理は行わない。
【００３５】
上記所定範囲として、例えば±１以内を設定するとよい。整数部の±１以内の変動は周波数シンセサイザのロック状態におけるドリフトによるものと考えられるため、所定範囲を±１以内に設定することで、ドリフトによって整数部が変動する場合には演算回路２６を演算モードで動作させて上下位ビット間の桁上がりまたは桁下がりを発生しにくくすることができる。
【００３６】
本例に係る演算回路２６は、図１２に示したように構成することができる。フリップフロップ２６３は、演算回路２６に入力されたｍ＋ｎビット幅の整数部をクロック信号ｃｋのタイミングで保持する。比較部２８Ｃは、演算回路２６に入力された整数部とフリップフロップ２６３の出力、すなわち、１クロック前に入力された整数部とを比較し、制御信号Ｘを出力してスイッチ２６４，２６５を制御するとともに数部の１回あたりの変動値Δを出力する。具体的には、比較部２８Ｃは、スイッチ２６４，２６５のそれぞれに対して、整数部の１回あたりの変動値が所定範囲外であれば端子ａと共通端子ｃとを接続する制御をし、整数部の１回あたりの変動値が所定範囲内であれば端子ｂと共通端子ｃとを接続する制御をする。
【００３７】
フリップフロップ２６６は、ｎ＋１ビット幅の下位ビットをクロック信号ｃｋのタイミングで保持する。オーバーフロー＆アンダーフロー判定部（以下、単に「判定部」と称する。）２９は、変動値Δおよびフリップフロップ２６６の出力を受け、これらを加算して下位ビットがオーバーフローまたはアンダーフローするか否かを判定し、制御信号Ｙを出力してスイッチ２６７を制御するとともに値Ｃを出力する。具体的には、判定部２９は、スイッチ２６７に対して、下位ビットがオーバーフローもアンダーフローもしないと判定した場合には端子ａと共通端子ｃとを接続する制御をし、下位ビットがオーバーフローまたはアンダーフローするおそれがあると判定した場合には端子ｂと共通端子ｃとを接続する制御をする。また、値Ｃは、下位ビットがアンダーフローするおそれがある場合には−１、オーバーフローするおそれがある場合には１、オーバーフローもアンダーフローもしない場合には０となる。
【００３８】
フリップフロップ２６８は、ｎビット幅の上位ビットをクロック信号ｃｋのタイミングで保持する。加算器２６１は、フリップフロップ２６８の出力と値Ｃとを加算する。スイッチ２６４の端子ａには整数部の上位ｍビットが、端子ｂには加算器２６１のｍビット幅の出力がそれぞれ入力される。そして、スイッチ２６４の共通端子ｃからｍビット幅の上位ビットが出力される。
【００３９】
加算器２６２は、フリップフロップ２６６のｎ＋１ビット幅の出力と変動値Δとを加算する。スイッチ２６７の端子ａには加算器２６２の出力のＭＳＢが、端子ｂにはフリップフロップ２６６の出力のＭＳＢがそれぞれ入力される。スイッチ２６５の端子ａには整数部の下位ｎビットが、端子ｂには加算器２６２の出力の下位ｎビットにスイッチ２６７の共通端子ｃから出力される１ビット値をＭＳＢとして付加したｎ＋１ビット幅の値がそれぞれ入力される。そして、スイッチ２６５の共通端子ｃからｎ＋１ビット幅の下位ビットが出力される。
【００４０】
＜第３例＞
図１３は、第３例に係る演算回路２６の動作を示すフローチャートである。本例に係る演算回路２６は、整数部の１回あたりの変動値に基づいて上下位ビット間の桁上がり処理または桁下がり処理を行う。具体的には、演算回路２６は、整数部の１回あたりの変動値が所定範囲外の場合、または、整数部の１回あたりの変動値が所定範囲内であって下位ビットがオーバーフローまたはアンダーフローするおそれがある場合には、スルーモードで動作し、それ以外の場合には、演算モードで動作する。スルーモードおよび演算モードについては上述したとおりである。所定範囲についても、上述したように、例えば±１以内を設定するとよい。
【００４１】
本例に係る演算回路２６は、図１４に示したように構成することができる。図１４に示した構成は、図１２の演算回路２６における加算器２６１およびスイッチ２６７を省略したものである。ただし、図１２とは異なり、スイッチ２６４の端子ｂにはフリップフロップ２６８のｍビット幅の出力が入力される。また、スイッチ２６５の端子ｂには加算器２６２のｎ＋１ビット幅の出力が入力される。さらに、スイッチ２６４，２６５が判定部２９が出力する制御信号Ｙによっても制御される。具体的には、判定部２９は、スイッチ２６４，２６５に対して、下位ビットがオーバーフローまたはアンダーフローするおそれがあると判定した場合には端子ａと共通端子ｃとを接続する制御をし、下位ビットがオーバーフローもアンダーフローもしないと判定した場合には端子ｂと共通端子ｃとを接続する制御をする。
【００４２】
図１５は、第２例および第３例に係る各種制御値の一例を示す表である。なお、整数部のビット幅を７ビット、上位ビットのビット幅を３ビット、下位ビットのビット幅を５ビットとする。まず、整数部として１４が入力されると、演算回路２６は第２例および第３例ともにスルーモード（Thru）で動作する。このとき、上位ビットは3b000に、下位ビットは5b01110にそれぞれ設定される。その後、整数部が１５→１６→１７→・・・と１ずつ増加すると、演算回路２６は第２例および第３例ともに演算モード（Calc）で動作し、下位ビットが１ずつインクリメントされる。そして、整数部が３１になったとき、下位ビットは最大値5b11111となる。そこからさらに整数部が１増加すると下位ビットがオーバーフローするため、第２例では上位ビットが１だけインクリメントおよび下位ビットがＭＳＢを保持したまま整数部の変動値“１”だけインクリメントされ、上位ビットは3b001に、下位ビットはレンジ中央の5b10000にそれぞれ更新される。したがって、その後整数部が変動値“±１”で３０〜３３の範囲で変動しても上位ビットは変化せず、下位ビットが変化するだけである。
【００４３】
一方、第３例では、下位ビットが最大値5b11111となっている状態から整数部がさらに１増加する場合、演算回路２６はスルーモードで動作して、上位ビットは3b010に、下位ビットは5b00000にそれぞれ更新される。すなわち、上下位ビット間の桁上がりが発生する。しかし、その後整数部が３３→３２と変動しても下位ビットはオーバーフローまたはアンダーフローしないため、演算回路２６は演算モードで動作し、下位ビットだけが変化する。そして、整数部が３２になったとき、下位ビットは最小値0b0000となる。そこからさらに整数部が１減少すると下位ビットがアンダーフローするため、第３例では演算回路２６はスルーモードで動作し、上位ビットが3b001に、下位ビットが5b01111にそれぞれ更新される。すなわち、上下位ビット間の桁下がりが発生する。しかし、その後整数部が変動値“±１”で３０〜３３の範囲で変動しても上位ビットは変化せず、下位ビットが変化するだけである。
【００４４】
整数部の変動値が±１を越えるとき、例えば、整数部が３０から３４に変化するとき、演算回路２６は第２例および第３例ともにスルーモードで動作する。このとき、上位ビットは3b010に、下位ビットは5b00010にそれぞれ更新される。その後、第２例では、整数部が変動値“±１”で３０〜３３の範囲で変動しても上位ビットは変化せず、下位ビットが変化するだけである。一方、第３例では、整数部が３２から３１に変化するときに一度スルーモードで動作するものの、その後整数部が変動値“±１”で３０〜３３の範囲で変動しても上位ビットは変化せず、下位ビットが変化するだけである。
【００４５】
以上のように、第２例と第３例とを比較すると、第３例の方が回路構成が簡易である一方、スルーモードで動作する機会が多いため、上下位ビット間の桁上がりまたは桁下がりが発生する回数が多い。しかし、第２例および第３例ともに一度上下位ビット間の桁上がりまたは桁下がりが発生した後は、再度の桁上がりまたは桁下がりが発生しにくくなり、ＤＣＯ１０のノイズ特性および線形性を向上することができる。
【００４６】
（第２の実施形態）
図１６は、第２の実施形態に係る周波数シンセサイザの構成を示す。本実施形態に係る周波数シンセサイザは、第１の実施形態に係る周波数シンセサイザにおけるＤＣＯ１０に容量素子１８を追加したものである。以下、第１の実施形態と異なる点について説明する。
【００４７】
演算回路２６は、入力された整数部をＮ：１、例えば、３２：１の重み比の上位ビットおよび下位ビットに分けるとともに、容量素子１８を制御する冗長ビットを生成する。Ｎは、下位ビットのビット幅をｎとして２ｎで表される値である。図１７は、ＤＣＯ１０の要部の構成を示す。容量素子群１４は、７個の容量素子Ｃ１＿１〜Ｃ１＿７が並列接続されて構成されている。容量素子群１５は、２３個の容量素子Ｃ２＿１〜Ｃ２＿２３が並列接続されて構成されている。容量素子１８は、冗長ビット（制御信号ＯＴＷ＿Ｃ３）に応じて高容量値ＣＨ３および低容量値ＣＬ３が切り替わる容量素子である。ここで、ＣＨ１およびＣＬ１の差分とＣＨ３およびＣＬ３の差分との比率は２：１である。すなわち、容量素子１８の容量値は容量素子Ｃ２の１６倍、容量素子Ｃ１の半分である。
【００４８】
図１８のフローチャートを参照して演算回路２６の動作例について説明する。なお、冗長ビットが０のとき容量素子１８は低容量状態、１のとき高容量状態になるものとする。演算回路２６は、まず冗長ビットを０に設定する。そして、下位ビットが下限値“４”よりも小さくなったとき、下位ビットをＮ／２、すなわち１６だけインクリメントおよび上位ビットを１だけデクリメントするとともに冗長ビットを１に設定する。ただし、整数部が下限値“１６”よりも小さい場合には上位ビットが最小値3b000となりデクリメントができないため、整数部が下限値“１６”以上のときにのみ当該処理を行う。一方、演算回路２６は、下位ビットが上限値“２３”よりも大きくなったとき、下位ビットをＮ／２、すなわち１６だけデクリメントするとともに冗長ビットを１に設定する。
【００４９】
図１９は、従来構成および本実施形態に係る各種制御値の一例を示す表である。本実施形態では、整数部が下限値“１６”よりも小さい場合を除き、下位ビットは5b00100から5b10111までしか変化しない。すなわち、容量素子群１５に対する制御値が下位ビットの下限値“４”から上限値“２３”までの間で安定する。図１９（ａ）に示したように、本実施形態では、例えば、整数部が２３から１増加して２４に変化するときに桁上がりが発生するが、整数部が２４に変化すると冗長ビットが１に変化するとともに下位ビットは８に変化するため、その後整数部が２３に戻っても桁下がりは発生せずに下位ビットが７に変化するだけである。また、図１９（ｂ）に示したように、本実施形態では、例えば、整数部が３６から１減少して３５に変化するときに桁下がりが発生するが、整数部が３５に変化すると冗長ビットが１に変化するとともに下位ビットは１９に変化するため、その後整数部が３６に戻っても桁上がりは発生せずに下位ビットが２０に変化するだけである。
【００５０】
本実施形態のヒステリシスマージンは、下位ビットの上限値および下限値の差分＋１で与えられる下位ビットの取り得る値の範囲と上位ビットおよび下位ビットの重み比の半分との差分として与えられ、その値は４（＝（２３−４＋１）−３２／２）である。すなわち、本実施形態は、第１の実施形態の変形例と同等のヒステリシスマージンを確保しつつ、回路面積および消費電力を可能な限り低減している。ヒステリシスマージンは回路面積、消費電力および整数部の変動などを勘案して適宜決定すればよい。
【００５１】
以上のように本実施形態も第１の実施形態と同様に、整数部の上下位ビット間の桁上がりまたは桁下がりが発生しにくくなる。これにより、ＤＣＯ１０のノイズ特性および線形性を向上することができ、さらに、サーモメータエンコーダ２２がＤＥＭ機能を有する場合にはＤＥＭ効果を十分に得ることができる。
【００５２】
なお、下位ビットの下限値“４”および上限値“２３”はあくまでも一例であり、非整数値を含む他の値であってもよい。また、整数部の下限値“１６”ならびに下位ビットのインクリメントおよびデクリメントに係る値“１６”は容量素子Ｃ１，Ｃ２の容量比が３２：１のときに対応した値であり、当該容量比が異なればそれに応じて異なる値となる。
【００５３】
第１および第２の実施形態のいずれについても、サーモメータエンコーダ２２はＤＥＭ機能を有していてもよい。いずれの実施形態でも下位ビットについてヒステリシスマージンが確保されているため、ＤＥＭ効果を十分に得ることができる。これにより、ＤＣＯ１０の線形性が向上し、特に、周波数シンセサイザを時間的に周波数が変化する変調器として使用する場合には変調精度が向上する。
【００５４】
また、容量素子部１４を構成する容量素子Ｃ１を７個よりも多くして、サーモメータエンコーダ２１にもＤＥＭ機能を持たせてもよい。また、容量素子群１４に面積・電流削減効果を持たせず同じ素子を用いた状態で、下位ビットの容量素子群１５にのみＤＥＭ機能を持たせる使い方も想定される。したがって、容量素子Ｃ１，Ｃ２の容量比を１：１に、すなわち、ＣＨ１およびＣＬ１の差分とＣＨ２およびＣＬ２の差分との比率を１：１にしてもよい。
【産業上の利用可能性】
【００５５】
本発明に係る周波数シンセサイザは、回路面積が小さく線形性およびノイズ特性に優れているため、時間的に周波数が変化する変調器などとして有用である。
【符号の説明】
【００５６】
１０  デジタル制御発振器
Ｃ１  容量素子（第１の容量素子）
Ｃ２  容量素子（第２の容量素子）
１４  容量素子群（第１の容量素子群）
１５  容量素子群（第２の容量素子群）
１８  容量素子（第２の容量素子）
２０  制御回路
２１  サーモメータエンコーダ２１（第１のエンコーダ）
２２  サーモメータエンコーダ２２（第２のエンコーダ）
２６  演算回路
【図１】
2011161860.tif 000003
【図２】
2011161860.tif 000004
【図３】
2011161860.tif 000005
【図４】
2011161860.tif 000006
【図５】
2011161860.tif 000007
【図６】
2011161860.tif 000008
【図７】
2011161860.tif 000009
【図８】
2011161860.tif 000010
【図９】
2011161860.tif 000011
【図１０】
2011161860.tif 000012
【図１１】
2011161860.tif 000013
【図１２】
2011161860.tif 000014
【図１３】
2011161860.tif 000015
【図１４】
2011161860.tif 000016
【図１５】
2011161860.tif 000017
【図１６】
2011161860.tif 000018
【図１７】
2011161860.tif 000019
【図１８】
2011161860.tif 000020
【図１９】
2011161860.tif 000021
【国際調査報告】
2011161860.tif 000022
2011161860.tif 000023