説明

半導体集積回路

【課題】 トリミングを行わずに電圧制御発振回路の発振周波数を調整すること。制御回路の面積を抑え、調整誤差の少ない発振回路を内蔵した半導体集積回路を提供すること。
【解決手段】 電圧制御発振回路(VCO)の周波数を調整する可変容量素子を、プロセスや素子のばらつき調整用可変容量素子群と、周波数選択用可変容量素子群との2系統に分離して調整を行い、可変容量素子の切り替えスイッチの数と回路面積の増大を小さくする。調整誤差については、調整期待値との差分を記憶素子で記憶し、その差分値が最小となる容量素子値を求めることにより影響を最小限に押さえることが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、発振周波数を任意に調整可能な電圧制御発振回路(VCO)の制御に対して有効となる技術分野に属する半導体集積回路、および、発振周波数の制御手段に関し、詳細には、携帯端末向け地上波デジタルテレビ/地上波デジタルラジオ放送を受信するために用いられる半導体集積回路や、携帯電話の高周波信号送受信用途に用いられる半導体集積回路に搭載されるVCOの制御に対して有効な技術分野に属する発振回路を内蔵した半導体集積回路に関する。
【背景技術】
【0002】
半導体プロセスや素子ばらつきを吸収するため、トリミングを用いずに容量素子の接続をスイッチなどの選択手段を介して、VCOの発振周波数範囲を切り替える手法は知られている(例えば、特許文献1参照)。
【0003】
【特許文献1】特開2004−159222号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1に係る発明には、以下に述べるような問題がある。
【0005】
上記特許文献1に係る発明では、容量素子の接続数が2のm乗(mは正の整数)で増えるため、例えば、広帯域でVCOゲイン(Kvco[Hz/V])が低いVCOを設計しようとする場合に、最上位ビットを2のm乗からm+1乗に増やした場合、容量素子がm個だけ増えてしまう。さらに、単位容量につきスイッチを1個つけると、スイッチもm個増えてしまう。
【0006】
その結果、接続数が増えると急激に寄生容量が増え、高周波側が発振しなくなるおそれがある。
【0007】
また、選択スイッチの増加は特にループフィルタ帯域内のノイズ特性を劣化させる原因となる。さらに、スイッチの制御回路のビット数が増えることにより、制御回路の面積も増大してしまう。
【0008】
また、容量選択値を単純に逐次比較で求める場合、mビットではMSBから順に決めていくとm回目に容量値が求まるが、m回目の値が、測定誤差や期待値とのずれ量により最適値となりえない場合があり、最大で最小調整単位に対し±1の誤差となる。これは、Kvco値が低いときには、PLLループを閉じた場合のVCO制御電圧のずれを大きくし、温度変動に対してVCO制御電圧のマージンを減らしてしまうことにつながる。
【0009】
その結果、Kvco値が低く、低電圧で駆動するVCOでは、少しの温度変動でロック外れを起こす要因となる。
【0010】
そこで、本発明の目的は、トリミングを行わずに発振周波数のずれ量を調整することが可能な半導体集積回路を提供することにある。
【0011】
また、本発明の他の目的は、可変容量値の誤差を最小限に抑えて調整誤差の少ない半導体集積回路を提供することにある。
【0012】
さらに、本発明の他の目的は、可変容量素子の切替えスイッチの数、および、回路面積の増大を小さくすることが可能な半導体集積回路を提供することにある。
【課題を解決するための手段】
【0013】
本発明は、複数の可変容量素子群を有し、所定の発振周波数からなる信号を出力するLC共振型の電圧制御発振手段と、前記電圧制御発振手段から出力された信号を分周する分周手段と、基準電圧を発生する基準電圧発生手段と、前記分周された分周信号が比較信号と位相周波数比較されて得られた結果信号、又は、前記発生された基準電圧を出力するための出力切替えを行う切替手段と、前記出力切替えによって、前記基準電圧がループフィルタを介して前記電圧制御発振手段に入力されたときに、前記分周手段から出力される分周信号の分周発振周波数に相当するカウント値を検出するカウント手段と、前記検出されたカウント値を基準カウント値と比較した比較結果に基づいて、前記電圧制御発振手段を構成する前記複数の可変容量素子群の中の所定の可変容量素子群に対して所定の容量値を設定する制御手段とを具えることによって、半導体集積回路を構成する。
【0014】
ここで、前記制御手段は、前記検出されたカウント値を、所定の周波数に対応するカウント期待値と比較する比較手段と、前記カウント比較結果に応じて、前記電圧制御発振手段を構成する所定の可変容量素子群に対して所定の容量値を設定する容量値設定手段とを含むことができる。
【0015】
前記電圧制御発振手段は、周波数選択用の可変容量素子群と、ばらつき調整用の可変容量素子群とを含むことができる。
【0016】
前記制御手段は、前記電圧制御発振手段の複数の可変容量素子群をそれぞれ独立して所定の容量値に設定することにより、半導体プロセス又は素子のばらつきによって発生した該電圧制御発振手段の発振周波数のずれ量を補正する手段を含み、前記ばらつき調整用の可変容量素子群を周波数選択用の可変容量素子群よりも前に調整することを特徴に持つことができる。
【0017】
前記制御手段は、前記容量値設定手段で設定される設定値の変化量に応じて前記分周信号の分周発振周波数及びカウント時間を可変する手段を含むことができる。
【0018】
前記制御手段は、発振周波数の変化量の絶対値|Δf|が最小となる、所定の設定値の最小差分単位において、カウント時間をTとしたとき、前記分周信号の分周発振周波数に相当するカウント値と前記カウント期待値との差分値の絶対値|ΔM|が、|ΔM|>T/(2×K)×|Δf|(Kは、前記分周手段を構成する分周回路に含まれるプリスケーラの分周数)を満たすカウント時間を設定する手段を含むことができる。
【0019】
前記制御手段は、前記選択された可変容量素子群を構成する各可変容量素子の容量値に応じて、電圧制御可変ダイオード(バラクタ)の容量値を変化させ、前記設定値に対して前記電圧制御発振手段のゲイン値Kvcoを一定に調整する手段を含むことができる。
【0020】
前記制御手段は、前記容量値の設定値をzビット(最大値Yz、Yzは0以上の整数)とし、該設定値の変化量を±2^w(wは0以上の整数、かつ、2^(w+1)≦Yz+1)としたとき、該条件を満たす所定の初期値に対して、全ての調整値、若しくは、所定の範囲内の調整値をとる手段を含むことができる。
【発明の効果】
【0021】
本発明によれば、電圧制御発振回路(VCO)を含む半導体集積回路において、電圧制御発振回路を構成する容量素子群を、例えば、半導体プロセスや素子のばらつき調整用の可変容量素子群と、周波数調整用の可変容量素子群との2系統に分離し、それら分離した可変容量素子群毎にそれぞれ独立して容量値を設定するようにし、かつ半導体プロセス又は素子のばらつきを先に調整することにより、トリミングを行わずに電圧制御発振回路の発振周波数のずれ量を調整することが可能な半導体集積回路を実現することができる。
【0022】
また、本発明によれば、電圧制御発振回路の発振周波数の調整方法において、電圧制御発振回路の分周信号の分周発振周波数をカウントし、該カウント値とカウント期待値との差分値を求め、該差分値を記憶素子に記憶させておき互いに比較することにより、該比較により最小となる差分値に対応する可変容量素子の容量値を求めるようにしたので、上記のずれ量の調整により、半導体プロセスや素子のばらつきを吸収できると共に、可変容量素子の容量値の誤差を最小限に抑えて調整誤差を少なくすることができ、これにより、調整精度が高い電圧制御発振回路を含む半導体集積回路を実現することができる。
【0023】
さらに、本発明によれば、電圧制御発振回路の周波数を調整する容量素子を、プロセスや素子のばらつき調整用の可変容量素子群と、周波数選択用の可変容量素子群との2系統に分離して調整を行うようにしたので、容量素子の切替えスイッチの数、および、回路面積の増大を小さくすることができる。
【発明を実施するための最良の形態】
【0024】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
[第1の例]
本発明の第1の実施の形態を、図1〜図9に基づいて説明する。
【0025】
<構成>
(半導体集積回路)
図1は、本発明に係る半導体集積回路としての周波数シンセサイザ回路1の構成例を示す。なお、周波数シンセサイザ回路1は、整数分周、分周分周どちらでもよい。
【0026】
本周波数シンセサイザ回路1は、電圧制御発振回路(VCO)110と、可変分周回路120と、位相周波数比較器130と、チャージポンプ回路150と、ループフィルタ160と、可変分周回路120のある一意の分周出力を取り出した信号の周波数をカウントするカウンタ170と、基準電圧を発生する基準電圧発生回路180と、スイッチ回路181と、制御回路190とを備えている。
【0027】
VCO110は、後述する図3若しくは図10のLC共振部を持つ回路である。
【0028】
可変分周回路120は、電圧制御発振回路(VCO)110の出力Voutをプログラマブルに分周数を変更できる回路である。
【0029】
位相周波数比較器130は、可変分周回路120の分周出力と周波数Frの基準比較信号の位相と周波数を比較する比較器である。
【0030】
チャージポンプ回路150は、チャージポンプ本体140と、PLLループを伝達若しくは遮断するスイッチ回路141とを有する。
【0031】
基準電圧発生回路180は、電圧制御発振回路(VCO)110の発振周波数調整時にスイッチ回路141にてループを切断した際に電圧制御発振回路(VCO)110をフリーランで動作させるのに必要な基準電圧(例えば、電源電圧の1/2を出力)を発生する回路である。
【0032】
スイッチ回路181は、基準電圧発生回路180とループフィルタ160を調整時のみ接続するスイッチであり、スイッチ回路141と排他的に動作する。
【0033】
制御回路190は、電圧制御発振回路(VCO)110の調整時に、電圧制御発振回路(VCO)110に含まれるスイッチ、バラクタに接続するVref、および可変分周回路120、位相周波数比較器130、スイッチ回路141、チャージポンプ回路150、ループフィルタ160、カウンタ170、基準電圧発生回路180、スイッチ回路181を制御する回路である。
【0034】
(制御回路)
図2は、制御回路190の内部構成例を示す。
【0035】
本制御回路190は、カウント期待値生成回路201と、カウント差分値演算回路202と、差分値比較回路203と、設定値生成回路204と、カウント値記憶素子210と、差分値記憶素子211と、差分最小値記憶素子212と、設定値記憶素子213、214、215と、制御信号生成回路220とを備えている。
【0036】
カウント期待値生成回路201は、設定周波数(Fdr)と、カウント時間とが入力され、期待値Ad、Bdがカウント差分値演算回路202へ出力される。
【0037】
カウント差分値演算回路202は、期待値Ad、Bdと、カウント値記憶素子210からのカウント値(An,Bn、n=1、2、・・・)とが入力され、差分絶対値が差分値記憶素子211へ出力される。
【0038】
差分値比較回路203は、差分絶対値が入力されると共に、差分最小値記憶素子212の値が入出力され、さらに、比較結果が設定値生成回路204と設定値記憶素子215とに出力される。
【0039】
設定値生成回路204は、比較結果を基に所定の演算処理を行い、設定値(Xpr、Ycr)を設定値記憶素子214、215に記憶させる。
【0040】
設定値記憶素子214,215に記憶された設定値は、VCO110を構成する図3、図4の複数の可変容量素子群の中の所定の可変容量素子群に対して独立して所定の容量値として設定される。
【0041】
また、設定値記憶素子215は、設定値記憶素子213との間で、差分最小時設定値と調整最適値Ynとのやりとりを行う。
【0042】
(発振回路のLC共振部)
図3は、電圧制御発振回路(VCO)110のLC共振部の構成例を示す。
【0043】
電源端子VDDとN1の間に接続されたインダクタンス素子L1、VDDとN2の間に接続されたインダクタンス素子L2、N1とN3の間に接続されたC1、N2とN4の間に接続されたC2、N3と接地電位に接続されたR1、N4と接地電位に接続されたR2、N3とVCO制御電圧入力Vctrlの間に接続された電圧制御可変容量ダイオード(バラクタ)VR1、N4とVCO制御電圧入力Vctrlの間に接続されたバラクタVR2、N3と任意の一定電圧電位Vrefに接続されたバラクタVR3、N4と任意の一定電圧電位Vrefに接続されたバラクタVR4、N1と接地電位間に直列に接続された、半導体プロセスや素子のばらつきの調整用キャパシタCpr1及びスイッチSWpr1で構成された集合体と、N2と接地電位間に直列に接続された半導体プロセスや素子のばらつきの調整用キャパシタCpr2及びスイッチSWpr2で構成された集合体をまとめたCprUnitと、N1と接地電位間に直列に接続された発振周波数調整用キャパシタCch1及びスイッチSWch1で構成された集合体と、N2と接地電位間に直列に接続された発振周波数調整用キャパシタCch2及びスイッチSWch2で構成された集合体をまとめたCchUnitから構成されている。
【0044】
なお、L1=L2、C1=C2、R1=R2、VR1=VR2、VR3=VR4、Cpr1=Cpr2、Cch1=Cch2であり、キャパシタCpr1とCpr2、キャパシタCch1とCch2、スイッチSWpr1とSWpr2及び、スイッチSWch1とSWch2の個数は等しい。また、VCO発振出力VoutはN2から取り出すか、N1及びN2から取り出すものとし、Vrefは接地電位またはある一定電位(例えば電源電位)に接続されており、接続電位を可変できるものとする。
【0045】
図4は、図3に示す電圧制御発振回路(VCO)110におけるCprUnit、および、CchUnitの詳細な回路構成を示した1例である。
ここでは、CTRLprは3ビット、CTRLchは8ビットの場合を示している。
【0046】
Cαprβ(α、β=0、1・・・)の添え字αが同じ値の各容量値は等しい。また、αの値が大きいほど容量値が大きくなり、かつCαprβ>{C(α−1)prβ+C(α−2)prβ+・・・+C0prβ}を満たすものとする。スイッチSWαprβ(α、β=0、1・・・)はキャパシタCαprβにそれぞれ接続されている。そして、CTRLpr[α]の制御信号はスイッチSWαprβと接続されている。Cαchβ(α、β=0、1・・・)、SWαchβ、CTRLch[α]についても同様である。ただし、CαprβとCαchβの容量値は一致するとは限らない。
【0047】
スイッチと接続されるCαprβの総和の最大値と最小値は、半導体プロセスや素子のばらつきによる発振周波数の変動分を補正できる容量値とし、Cαchβの総和の最大値と最小値は、設定周波数に対し十分なマージンを持たせた発振周波数範囲をカバーできる容量値とし、それぞれ製造データやシミュレーションなどを元にして求めればよい。そして、各Cαchβについては、設定周波数間隔の最小値を基準として定め、CαprβはC0chβのγ倍(γは正の数)で決めておけば、容量値を決めやすい。
【0048】
<動作>
以下、本装置の動作について説明する。
ここでは、図3の回路を例に挙げて、Cpr1、Cpr2、Cch1、Cch2の調整方法の詳細を説明する。
【0049】
(Cpr1、Cpr2の調整)
まず、Cpr1、Cpr2の調整を行う。
【0050】
電源投入後に各回路の状態が安定するまで待機後、外部もしくは内部である一意の発振周波数Fdrを設定する。このとき、VCOが複数ある場合は、設定された発振周波数に応じて起動するVCOを選択し、パワーダウン解除状態とする。そして、設定された発振周波数Fdrとは異なる(同一でも良い)、VCOの発振周波数範囲の中央値に相当する、図3に記載のSWch1、SWch2の制御信号CTRLchの値を自動設定する。この時のCTRLchの値をYcrとする。ただし、Ycrは必ずしも中央値である必要はなく、VCOが必ず動作する周波数を選択する。Ycrの値は、半導体プロセスや素子のばらつきが無い場合の発振周波数範囲の中央値をシミュレーションで求めて決める。
【0051】
図4の例では中央値は127(CTRLch[7:0]=“01111111”)に相当する。
【0052】
このとき、SW7ch1及びSW7ch2のみがONし、キャパシタが接続しているものとする。これと同時に、図3で示される、SWpr1、SWpr2の制御信号CTRLprの初期値を設定する。初期値をXprとする。初期値は、半導体プロセスや素子のばらつきの分布を考慮した場合に、分布の中心に設定するのが最も良いが、それが分からない場合は中央値に設定する。図4の例では中央値は4(CTRLpr[2:0]=“100”)に相当する。
【0053】
VCOの発振周波数を測定するために、図1のスイッチ141をOFFにしてループを切断し、スイッチ181を接続して、基準電圧発生回路180より基準となる一定電圧を印加する。また、可変分周回路120の分周数は、調整シーケンス動作中は分周数を固定とする。ただし、1回の調整シーケンスが終了するごとに分周数は可変できるものとする。基準電圧発生回路180より電圧を印加後、ある一定時間待機しVctrlの電位が安定してからカウンタ170をリセットし、イネーブル信号を基準としてカウントを開始する。カウント開始後の処理を分かりやすくするために、以下の調整処理を説明する。
【0054】
図5は、半導体プロセスや素子のばらつきの調整処理のフローチャートを示す。なお、図5中では、調整シーケンス全てにおいて、分周数は同じに設定している。
【0055】
イネーブル信号がアクティブの場合のみカウントを行い、カウント値A1を図2の記憶素子1(例えばフリップフロップ)に記憶する。上記で設定されたYcrのカウント期待値Adとの差分をカウント差分値演算回路202で求め、その値を記憶素子211(記憶素子2)に記憶する。そして、差分値比較回路203で大小比較し、A1がAdよりも高ければ、SWαpr1、SWαpr2(α=0、1・・・)の接続数をNa個増やし(設定値はNa小さくする)、A1がAdと同じかAdより低ければ、SWαpr1、SWαpr2の接続数をNa個減らす(設定値はNa大きくする)処理を設定値生成回路204で行う。具体的には、図4のCTRLprの設定値を変えることにより、接続数を変える。接続数を決める設定値Naは、図2の設定値生成回路204に入力するか、プリセットで決めておく。
【0056】
接続数を変更後、記憶素子210(記憶素子1)をリセットし再度カウントを行い、カウント値A2を記憶素子210(記憶素子1)に記憶してカウント期待値Adと比較し、SWαpr1、SWαpr2の接続数をNb個増やす(設定値をNb小さくする)、もしくは減らす(設定値をNb大きくする)処理を行う。ただし、NaとNbはNa>Nbとし、容量素子値も2回目の変化量が小さくなるものとする。具体的には、初期値Xprに中央値4を設定した場合、図4のSWαprβ(α、β=0、1、・・・)に繋がる容量Cαprβの容量を、C2prβ>C1prβ>C0prβ、かつ、C2pr>{C1pr+C0pr}の関係にしておけばよい。そして、1回目の判定後にC1prβを接続し、2回目の判定後にC0prβを接続すればよい。この例では、一連での調整で図5の調整値Xfが1、3,5,7の4つの値をとる。
【0057】
ここでは、設定値NaとNbの2回での調整で説明したが、例えば、図5の初期値Xprを3(C1pr)とし、1回目の判定後に5{C2pr+C0pr}または1(C0pr)に変化させ、1回の判定で調整を終える方法を取ってもよい。この場合、調整値Xfが1、3、5の3つの値を取る事になる。
【0058】
つまり、半導体プロセスや素子のばらつきの分布を、あらかじめシミュレーションなどで予測して図4のCprUnitの回路構成を決め、実際にサンプル評価を行うなどして初期値Xpr、調整回数、接続数Nx(x=a、b、・・・)を決めればよい。
【0059】
また、上記ではカウント期待値Adを固定にして説明したが、周波数変化が大きい時には、分周回路の分周数を小さくすることで、全体の調整時間を減らすことが出来る。
【0060】
なお、このシーケンス終了後、設定周波数での調整を別途行うため、半導体プロセスや素子のばらつきの調整を高精度で行う必要はない。また、上記の初期値Xprが3の場合でも説明したように任意の初期値から調整を始めるため、必ずしも特許文献1のように調整値のMSBから順に決まる訳ではなく、容量素子が2のm乗の重みを持っている必要もない。つまり、設定値と容量値の関係が単調変化(単調増加または単調減少)していれば良いことになる。
【0061】
ここで、半導体プロセスや素子のばらつき調整用キャパシタと、周波数調整用キャパシタを分けずに、周波数調整用キャパシタのみで発振周波数を調整しようとすると、半導体プロセスや素子のばらつきを考慮してさらに1ビット追加しなければいけなくなる。
【0062】
例えば、図4でCprUnitが存在せず、CTRLchを8ビットから9ビットに拡張した場合、1ビット増やすごとにスイッチが1個増える構成では、SWch1、SWch2は各9個ずつ計18個増やす必要がある。また、スイッチ制御線と論理素子もそれに応じて増える。さらに、記憶素子とそれを含む制御回路も増えるため、結果として、ビット数が増えるほど制御回路の面積の増大を招く。また、SWch1、SWch2が増えることにより、寄生容量が増え、高周波側が発振しなくなるおそれがある。さらに、選択スイッチの増加は特にループフィルタ帯域内のノイズ特性を劣化させる原因となるため、低ノイズのVCOを設計する場合は不適となる。
【0063】
一方、本発明のようにCprUnitを別途用意すると、1ビット増やすごとにスイッチが1個増える構成では、図3(および後述する図10)のSWpr1、SWpr2は各6個ずつ計12個で済む。
【0064】
また、キャパシタが特許文献1のように容量素子が2のm乗の重みを持たせてしまうと図4の構成では、CTRLchを8ビットから9ビットに拡張した場合、C8ch1、C8ch2が追加されるため、単位容量C0ch1、C0ch2に対し(2^8−2^7)×2=256倍もの容量素子が追加で必要となる。これは、容量素子の容量が面積に比例するこから、容量素子の面積が256倍になることを意味している。これは発振回路の面積を大幅に増やすことに繋がる。実際には、半導体プロセスや素子のばらつきではこれほの容量値は変化しないため、無駄に面積を増やすことに繋がる。一方、本発明では、半導体プロセスや素子のばらつき分だけを、図3(又は後述する図10)のCpr1及びCpr2のみに持たせているため、容量素子の面積増大を最小限に抑えることが出来、発振回路の面積の増大を防ぐことができる。
【0065】
調整の結果、図6に示す通り、例えばインダクタ素子または容量素子の素子値が大きめにずれていて、高周波側が発振しない可能性がある場合でも、それを回避することが出来る。また、設定周波数Fdrに対しても、設定周波数の上限または下限においてマージンを持たせた状態で調整を行うことが出来る。
【0066】
(Cch1、Cch2の調整)
Cpr1、Cpr2の調整終了後、次にCch1、Cch2の調整を行う。
なお、この調整は、ここではCpr1、Cpr2の調整シーケンス終了直後に行うものとする。ただし、Cpr1、Cpr2とCch1、Cch2の調整は独立していてもよい。
【0067】
(調整例1)
図7は、Cch1、Cch2の調整処理の第1の調整例を示すフローチャートである。
【0068】
設定周波数Fdrに対する初期設定値をYch(Ycrとは別の設定値または同じ設定値)とする。ここでは、調整フローを分かりやすくするために、設定値は5ビット(設定値 0〜31)、Ych=12、測定回数は4回とする。また、設定値からの変化量を、±4、±2、±1、調整最適値を14とする。ここで、変化量±4とは、図4でYch=CTRLch[7:0]=“00001100”=12とした時に、CTRLchが12+4=16=“00010000”または、12−4=8=“00001000”になることを意味する。そして、設定値が高いほどSWαchβの接続数が減るものとする。
【0069】
実際には、設定値はzビット(最大値 Yz)で設定値の変化量は 最大±2^w(wは0以上の整数かつ、2^(w+1)≦Yz+1)となる。この理由は、2^(w+1)=Yz+1の時{2^w+2^(w−1)+・・・+2^0}=Yzとなり、全ての初期値に対し、全ての調整値を取りうるからである。なお、調整回数を減らすには、最大変化量を±2^wより小さな値を選び、かつ変化分をカバーできるようにすればよい。
【0070】
まず、図5で求められたCpr1、Cpr2と、Cch1、Cch2の初期設定値=12を設定し、図1のスイッチ181を接続して、基準電圧発生回路180より電圧を印加する。また、可変分周回路120の分周数は調整シーケンス動作中は分周数を固定とする。ただし、1回の調整シーケンスが終了するごとに分周数は可変できるものとする。ある一定時間待機しVctrlの電位が安定後、カウンタ170をリセットし、イネーブル信号を基準としてカウントを開始する。なお、以降では、設定値を変更毎にある一定時間Vctrlの電位が安定するまで待つものとする。また、図7中では、分かりやすくするために調整シーケンス全てで、分周数は同じにしている。
【0071】
一定時間カウント後、カウント値B1を図2のカウント値記憶素子210(記憶素子1)に記憶し、カウント期待値Bdと比較する。ここでは、B1<Bdとし、B1−Bdの絶対値|B1−Bd|を図2の差分値記憶素子211(記憶素子2)、差分最小値記憶素子212(記憶素子3)に記憶する。また、1回目の測定時のみ初期設定値12を設定値記憶素子213(記憶素子4)に記憶する。そして、設定値に4を加算し、図2の設定値を16に変更し、カウンタをリセットして再度カウントを行う。
【0072】
もし分周数を変える場合は、例えば分周数を1/2倍にする場合、差分の絶対値を1/2倍して設定値記憶素子213(記憶素子4)に記憶すれば、分周数を可変にした場合でも、そのまま比較が可能となる。これは、2回目以降のカウント値に対しても同じとなる。
【0073】
2回目のカウント値B2がB2>Bdとし、B2−Bdの絶対値|B2−Bd|を求め差分値記憶素子211(記憶素子2)に記憶する。このとき、|B1−Bd|と|B2−Bd|の大小比較を行い、|B1−Bd|>|B2−Bd|のときに|B2−Bd|を、|B1−Bd|≦|B2−Bd|のときに|B1−Bd|を差分最小値記憶素子212(記憶素子3)に記憶する。また、この時の設定値を設定値記憶素子213(記憶素子4)に記憶する。図7のフローチャートの場合、差分最小値記憶素子212(記憶素子3)に|B2−Bd|の値、設定値記憶素子213(記憶素子4)に設定値16を記憶する。カウンタ170をリセットし、設定値を2減算し3回目のカウントを行う。
【0074】
同様にして、3回目のカウント値B3はB3<Bdとなり、|B2−Bd|>|B3−Bd|となる。よって、記憶素子3の値は|B3−Bd|に書き換えられ、記憶素子4の値は14に書き換わる。そして、設定値に1を加算して設定値を15に変更する。
【0075】
通常の逐次比較の場合、3回目のカウント後、特許文献1のように最小単位1を加算もしくは減算してCch1、Cch2の調整を終える。この場合、調整値は15となる。しかし、実はこの方法では誤差が必ず±1発生する。その理由を図8に示す。
【0076】
図8のように、調整値14の時にカウント期待値と測定カウント値の差分の絶対値が一番小さい場合は、調整値15が最適でなく、14が最適値となることは明らかである。さらに、調整値14の時のカウント期待値の差分が小さい場合、カウンタのイネーブル信号のタイミングや、供給クロックの絶対値からのずれ、基準電圧回路の出力電圧のゆらぎ、VCOのプッシング特性による発振周波数のゆらぎなどの要因により、カウント誤差がカウント期待値と測定カウント値の差分よりも大きくなると、調整を掛けるごとに調整値が13になったり15になったりしてしまう。これはKvco値が小さく、調整値を1変更した時の周波数差が大きい場合、ロック時のVCO制御電圧のばらつきが、より大きくなることを意味する。
【0077】
例えば、Kvcoが10MHz/Vで、調整値が1異なると同じ制御電圧Vctrlでの発振周波数の差分が3MHzある場合を考える。このとき、調整値が13の場合は、ロック時のVctrlが調整値14の時より+0.3V、調整値15の場合は、−0.3Vとなり、制御電圧のばらつきが0.6Vにもなる。一般的にチャージポンプの実用動作範囲は、電源電圧−1V程度で、携帯端末向け半導体集積回路の電源電圧は2.8V程度のため、2.8−1=1.8Vとなる。上記より、調整ごとに実動作範囲の1/3ものばらつきになることが分かる。ロック時の制御電圧のずれ分も考慮すると、温度変動に対するマージンはほとんどなくなる。この調整値のばらつきは、本発明で取り上げたカウンタを用いる方式に限らず、特許文献1で示されるような電圧比較方式でも発生する。例として、電圧比較回路で発生するオフセット電圧のばらつきが考えられる。
【0078】
なお、繰り返し調整誤差を減らすためには、期待値に対し測定誤差が十分小さくなるように測定時間を長くすれば良い。測定誤差については、設計段階である程度見積もることも可能であるが、測定時間を外部もしくは内部で変更可能にしておけば、見積りが外れた場合でも対応が可能となる。本発明では、測定時間を可変できる機構を設けており、測定誤差と測定時間を最適化できるようにしている。さらに、上記ではカウント期待値Adを固定にして説明したが、周波数変化が大きい時には、分周回路分周数を小さくすることで、全体の調整時間を減らすことができる。
【0079】
本発明では、測定を1回追加し、設定値15でも測定を行う。その時のカウント値をB4とし、測定の結果が|B3−Bd|<|B4−Bd|になったとする。この場合、差分最小値記憶素子212(記憶素子3)の値は|B3−Bd|のまま書き換えられず、設定値記憶素子213(記憶素子4)の値は14から書き換わらない。そして、測定終了後、設定値は15から設定値記憶素子213(記憶素子4)の14に書き換えられ、Cch1、Cch2の調整が完了する。この後、スイッチ181をOFFし、スイッチ141をONしてループを接続し、ロック動作を開始する。
【0080】
上記の説明から、カウント値の差分の絶対値を比較し、最小となる差分値とその設定値記憶していることが分かる。これは、設定値を四捨五入することと等価である。つまり、調整最適値をYnとすると、本発明による最大調整誤差は、最小調整単位1の時にその半分の0.5となる。つまり、YnはYn−0.5<Yn≦Yn+0.5の関係が成り立つ。
【0081】
よって、誤差は+1または−1のいずれかであり、YnとYn+1または、YnとYn−1の2つの値しか取りえない事が分かる。例として、最適値が14の場合を示したが、この調整法では最適値が5〜19に含まれる場合、全ての調整値に対して最適な調整値が得られることを示している。
【0082】
上記を数式で一般化すると、次のように表される。
【0083】
電圧制御発振回路110の発振周波数変化量の絶対値|Δf|が最小となるときに、制御回路190より設定される、110に含まれるスイッチまたはバラクタの接続数を決める設定値の最小差分単位において、カウンタ170でのカウント時間をTとしたとき、図2に示される制御回路190内の演算回路にて計算される、カウント差分値の絶対値|ΔM|が、|ΔM|>T/(2×K)×|Δf|(Kは、分周手段を構成する分周回路120に含まれるプリスケーラの分周数)の関係を満たすカウント時間Tを設定すればよい。これは図8から分かるように、|Δf|の1/2周波数をカウント値から識別できればよいことから導かれる。
【0084】
最適値がこの範囲外であれば、測定回数を増やして、±8、±16の場合も考えればよい。ただし、加算もしくは減算した結果が0〜31になる必要がある。調整周波数の最大値及び最小値近傍、もしくは加減算値によってはオーバーフローまたはアンダーフローが発生するが、その場合の調整処理の例を以下に示す。
【0085】
(調整例2)
図9は、Cch1、Cch2の調整処理の第1の調整例を示すフローチャートである。
【0086】
初期設定値を28、設定最大値を31(5ビット)、調整最適値を29、測定回数は5回とする。なお、最小値の場合も最大値の時と同様になる。
【0087】
図9で2回目の測定時には、そのまま加算すると28+8=36となってしまう。しかし、設定値の最大値は31であるため、これ以上の値を設定するとオーバーフローを起こす。そのため、オーバーフローを起こした場合は最大値31を設定するように処理を行えばよい。このフローでは、4回目の測定時の設定値29での誤差が最小となるため、5回目の測定後、調整最適値29を書き込んで調整シーケンスが終了する。
【0088】
また、図9で初期設定値28で調整最適値も28であるとする。図8の説明でも出てきたが、測定誤差により間違った大小関係を判定する場合がある。この場合、間違った判定をし、調整値20を選択したとする。単純な逐次比較の場合、図9のフローから設定値27を選択して終了する。その時、最適値に対して−1の誤差が生じる。しかし、本発明の場合、測定したカウント値Bn(n=1〜5)とカウント期待値Bdとの差分の絶対値|Bn−Bd|の最小値とそれを満たす設定値を記憶素子に記憶しているため、5回目の測定後、初期設定値28を調整最適値として書き込んで終了する。この時、誤差は0となり、最適な調整となる。このことから、測定誤差に強い制御方法になっていることが分かる。
【0089】
測定回数を増やして変化量を増やした場合、測定値とカウント期待値の差分が大きくなる。そのため、カウンタのビット数は差分が大きい場合でも検出できるように決める必要がある。
【0090】
この他に、分周回路の動作限界付近で、設定値を最大にした場合に分周回路の誤動作などによりカウント値が実際よりも多くなったり、場合によっては分周できずカウント値が0になる場合も想定される。前者の場合は、本発明では、誤差の最小値を記憶しているため、このような測定値は記憶されずに破棄される。このため、間違った値が書き込まれることは無い。
【0091】
また、後者の場合は、本発明のフローの場合、調整値が最大値に張り付いて調整が終わるため、結果として、初期設定値もしくは、最大値を含む動作上限付近の設定値を返すことになる。
【0092】
しかしながら、本発明の説明例ではCpr1、Cpr2が初期設定値Xprと異なる値のXfを返すため、半導体プロセスや素子のばらつきの調整が、Cch1とCch2の最小調整単位未満まで一致している場合は除いて、Cch1とCch2が初期設定値になることはほとんどない。また、最大値を含む動作上限付近の設定値を返す場合は正常にロックしない。
【0093】
従って、このようなサンプルは、工場検査時にCch1とCch2の調整最適値を読み出すか、VCO制御電圧Vctrlを測定する、もしくはその両方を行えば容易に不良判定することができ、不良サンプルとして除外することが出来る。さらに、図1の回路にロック検出回路を入れておき、その信号をレジスタなどで読み出せば、確実に不良サンプルを検出できる。
【0094】
図7、図9より任意の設定値に対して、設定値Yn(最大値Yz)で設定値の変化量が最大±2^w(wは0以上の整数かつ、2^(w+1)≦Yz+1)であり、1回の変化量が±2^w、±2^(w−1)、・・・、±2^0と変化すれば、全ての初期値に対し、全ての調整値を取りうることが出来る。この時、SWpr1もしくはSWpr2の場合と同様に、設定値と容量値の関係が単調変化(単調増加または単調減少)となるSWch1若しくはSWch2の接続数を決めればよい。
【0095】
キャパシタの接続数が変わると、電圧制御可変容量ダイオード(バラクタ)の寄与度が変わり、電圧制御発振回路のゲイン値であるKvcoが変化するため、バラクタの容量値を変化させ、設定値に対して電圧制御発振回路のゲイン値Kvcoがなるべく変動しないように調整をする必要が生じる。以下では、図3の構成の場合で説明する。
【0096】
具体的には、2つの方法が考えられる。一つ目は、図3の一定電位Vrefに接続されているVR3及びVR4に対し、設定周波数に応じて、Vref電位を変化させておいてから、図3のCpr1、Cpr2、Cch1及びCch2を調整する方法である。二つ目はCch1及びCch2の調整最適値を求めた後、基準電圧発生回路180の電圧を変化させて、2つもしくはそれ以上の電位での発振周波数をカウンタ170で計測して求め、演算によりKvco値を求めてから、図3のVR3およびVR4に接続するVref電位を変化させ、Kvco値を補正する方法である。
【0097】
後者の方が、測定が別途必要なため、調整時間が延びるが精度は高くなる。どちらの方法を採用するかは、搭載した半導体集積回路に含まれる、周波数シンセサイザに要求されているKvco値の補正精度がどの程度必要なのかで判断すればよい。
【0098】
本発明では、測定時間と測定回数を外部もしくは内部の設定及び、設定値の変化量で可変できるようにし、それぞれの半導体集積回路に応じて、最適な調整を行うことを可能にしている。この組み合わせを増やすと、カウンタ期待値がその分増えるが、携帯端末向け地上波デジタル放送を受信するために用いられる半導体集積回路や、携帯電話の高周波信号送受信用途に用いられる半導体集積回路では、ある決められた周波数間隔で発振周波数を設定するため、テーブルを用意しなくても、カウンタ期待値を計算で求めることにより、制御回路面積の増大を抑えることができる。
【0099】
本例では、周波数調整用のキャパシタに限定して誤差を抑える手法を述べたが、半導体プロセスや素子のばらつき調整用のキャパシタについても調整してもよい。
【0100】
[第2の例]
本発明の第2の実施の形態を、図10〜図11に基づいて説明する。なお、前述した第1の例と同一部分については、その説明を省略し、同一符号を付す。
【0101】
図10は、電圧制御発振回路(VCO)110のLC共振部の構成例を示す。
【0102】
電源端子VDDとN1の間に接続されたインダクタンス素子L1、VDDとN2の間に接続されたインダクタンス素子L2、N1とN3の間に接続されたC1、N2とN4の間に接続されたC2、N3と接地電位に接続されたR1、N4と接地電位に接続されたR2、N3とVCO制御電圧入力Vctrlの間に接続された電圧制御可変容量ダイオード(バラクタ)VR1、N4とVCO制御電圧入力Vctrlの間に接続されたバラクタVR2、N3と制御電圧電位CTRLchに接続された発振周波数調整用VRch1及びN4と制御電圧電位CTRLchに接続された発振周波数調整用VRch2の集合体で構成されたVRchUnitと、N1と接地電位間に直列に接続された半導体プロセスや素子のばらつきの調整用キャパシタCpr1及びスイッチSWpr1で構成された集合体と、N2と接地電位間に直列に接続された半導体プロセスや素子のばらつきの調整用キャパシタCpr2およびSWpr2で構成された集合体をまとめたCprUnitから構成されている。
【0103】
なお、L1=L2、C1=C2、R1=R2、VR1=VR2、Cpr1=Cpr2であり、CTRLchに接続するVRch1とVRch2、キャパシタCpr1とCpr2、および、スイッチSWpr1とSWpr2の個数は等しい。ただし、CTRLchはVRch1とVRch2の個数分の本数が存在し、対をなす各VRch1とVRch2に対して対ごとに接続電位が異なる。また、VCO発振出力VoutはN2から取り出すか、N1およびN2から取り出すものとする。
【0104】
図11は、図10に示す電圧制御発振回路(VCO)110におけるCprUnit、および、VRchUnitの詳細な回路構成を示した1例である。
【0105】
ここでは、CTRLprは3ビット、CTRLchは8ビットの場合を示している。Cαprβ(α、β=0、1・・・)とVRαchβについては、前述した図4と同様である。各VRαchβについては、設定周波数間隔の最小値または作製可能な、基準電圧生成回路の基準電圧を印加した時のバラクタ素子容量値を基準として定めてシミュレーションなどを元にして求めればよい。CαprβはVR0chβのγ倍(γは正の数)で決めておけば、容量値を決めやすい。
【0106】
図10のCpr1、Cpr2の調整方法は、前述した図3の場合と同様になり、図11のCprUnitのCTRLprの値を変化させ、SWαprβ(α、β=0、1、・・・)の接続を切り替えることによって行う。
【0107】
図10の回路の動作は、前述した図3の一定電位Vrefに接続されているバラクタを追加することにより、第1の例で説明した内容と同様な補正方法により、Kvcoを補正することができる。
【0108】
図10のバラクタの調整方法は、前述した第1の例と同様であり、CTRLchの接続電位を任意の電位(例えば、電源電位及び接地電位)に接続することにより、バラクタVRch1およびVRch2の容量を変化させ、前述した図7、図9の調整処理のフローチャートと同様な調整処理を行うことにより、最適なCTRLchの接続電位を求めることができる。
【0109】
また、前述した第1の例の図3の構成、又は、本例の図10の構成であっても、電源投入時の温度にて調整を掛けることにより、素子値の温度によるずれも吸収することができる。
【0110】
つまり、電源投入時の温度で一度調整を掛けておき、本発明で示したCpr1、Cpr2の調整値を保持して、二度目以降でCh1、Cch2のみを調整することにより、調整時間の短縮と共に、温度変化に対するマージンをより多く取れることがわかる。
【0111】
さらに、可変分周回路120から取り出す分周信号の周波数を上げれば、より短時間で調整可能となるため、調整時間が短いアプリケーションに対しても有効となる。
【産業上の利用可能性】
【0112】
本発明に係る半導体集積回路は、調整回路の面積を抑え、かつ調整誤差の少ない電圧制御発振回路(VCO)の調整が必要とされる半導体集積回路に最適である。また、本発明に係る発振周波数の制御方法は、例えば、高精度の容量素子の調整を必要とするフィルタや位相調整回路にも応用することができる。
【図面の簡単な説明】
【0113】
【図1】本発明の第1の実施の形態である、発振回路を内蔵した半導体集積回路としての周波数シンセサイザの構成例を示すブロック図である。
【図2】図1の周波数シンセサイザの制御回路の構成例を示すブロック図である。
【図3】電圧制御発振回路(VCO)のLC共振部の1例を示す回路図である。
【図4】図3の回路の詳細な構成例を示す回路図である。
【図5】半導体プロセスや素子のばらつき調整用キャパシタの調整処理を示すフローチャートである。
【図6】半導体プロセスや素子のばらつき調整用キャパシタ調整前後の発振可能周波数範囲の変化を示す説明図である。
【図7】設定周波数調整用キャパシタの調整処理のフローチャートを示す説明図である。
【図8】単純な逐次比較によって誤差が大きくなる例を示す説明図である。
【図9】設定周波数が調整周波数の最大値に近い場合の設定周波数調整用キャパシタの調整処理のフローチャートを示す説明図である。
【図10】本発明の第2の実施の形態である、電圧制御発振回路(VCO)のLC共振部の1例を示す回路図である。
【図11】図10の回路の詳細な構成例を示す回路図である。
【符号の説明】
【0114】
1 半導体集積回路
110 電圧制御発振回路(VCO)
120 可変分周回路
130 位相周波数比較器
140 チャージポンプ本体
141 スイッチ回路
150 チャージポンプ回路
160 ループフィルタ
170 カウンタ
180 基準電圧発生回路
181 スイッチ回路
190 制御回路
201 カウント期待値生成回路
202 カウント差分値演算回路
203 差分値比較回路
204 設定値生成回路
210 カウント値記憶素子
211 差分値記憶素子
212 差分最小値記憶素子
213、214、215 設定値記憶素子
220 制御信号生成回路

【特許請求の範囲】
【請求項1】
複数の可変容量素子群を有し、所定の発振周波数からなる信号を出力するLC共振型の電圧制御発振手段と、
前記電圧制御発振手段から出力された信号を可変または固定分周する分周手段と、
基準電圧を発生する基準電圧発生手段と、
前記分周された分周信号が比較信号と位相周波数比較されて得られた結果信号、又は、前記発生された基準電圧を出力するための出力の切替えを行う切替手段と、
前記出力切替えによって、前記基準電圧がループフィルタを介して前記電圧制御発振手段に入力されたときに、前記分周手段から出力される分周信号の分周発振周波数に相当するカウント値を検出するカウント手段と、
前記検出されたカウント値を基準カウント値と比較した比較結果に基づいて、前記電圧制御発振手段を構成する前記複数の可変容量素子群の中の所定の可変容量素子群に対して所定の容量値を設定する制御手段と
を具えたことを特徴とする半導体集積回路。
【請求項2】
前記制御手段は、
前記検出されたカウント値を、所定の周波数に対応するカウント期待値と比較する比較手段と、
前記カウント比較結果に応じて、前記電圧制御発振手段を構成する所定の可変容量素子群に対して所定の容量値を設定する容量値設定手段と
を含むことを特徴とする請求項1記載の半導体集積回路。
【請求項3】
前記電圧制御発振手段は、
周波数選択用の可変容量素子群と、
ばらつき調整用の可変容量素子群と
を含むことを特徴とする請求項1又は2記載の半導体集積回路。
【請求項4】
前記制御手段は、
前記電圧制御発振手段の複数の可変容量素子群をそれぞれ独立して所定の容量値に設定することにより、半導体プロセス又は素子のばらつきによって発生した該電圧制御発振手段の発振周波数のずれ量を補正する手段
を含み、前記ばらつき調整用の可変容量素子群を周波数選択用の可変容量素子群よりも前に調整することを特徴とする請求項3記載の半導体集積回路。
【請求項5】
前記制御手段は、
前記容量値設定手段で設定される設定値の変化量に応じて、前記分周信号の分周発振周波数及びカウント時間を可変する手段
を含むことを特徴とする請求項2記載の半導体集積回路。
【請求項6】
前記制御手段は、
発振周波数の変化量の絶対値|Δf|が最小となる、所定の設定値の最小差分単位において、カウント時間をTとしたとき、
前記分周信号の分周発振周波数に相当するカウント値と前記カウント期待値との差分値の絶対値|ΔM|が、|ΔM|>T/(2×K)×|Δf|(Kは、前記分周手段を構成する分周回路に含まれるプリスケーラの分周数)を満たすカウント時間を設定する手段
を含むことを特徴とする請求項1ないし5のいずれかに記載の半導体集積回路。
【請求項7】
前記制御手段は、
前記選択された可変容量素子群を構成する各可変容量素子の容量値に応じて、電圧制御可変ダイオード(バラクタ)の容量値を変化させ、前記設定値に対して前記電圧制御発振手段のゲイン値Kvcoを一定に調整する手段
を含むことを特徴とする請求項1ないし6のいずれかに記載の半導体集積回路。
【請求項8】
前記制御手段は、
前記容量値の設定値をzビット(最大値Yz、Yzは0以上の整数)とし、
該設定値の変化量を±2^w(wは0以上の整数、かつ、2^(w+1)≦Yz+1)としたとき、該条件を満たす所定の初期値に対して、全ての調整値、若しくは、所定の範囲内の調整値をとる手段
を含むことを特徴とする請求項1ないし7のいずれかに記載の半導体集積回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2007−67635(P2007−67635A)
【公開日】平成19年3月15日(2007.3.15)
【国際特許分類】
【出願番号】特願2005−249185(P2005−249185)
【出願日】平成17年8月30日(2005.8.30)
【出願人】(594021175)旭化成マイクロシステム株式会社 (57)
【Fターム(参考)】