説明

デッドロック検出回路およびデッドロック復帰回路

【課題】誤検出することなく、デッドロック状態を正確に検出することができるデッドロック検出回路を提供する。
【解決手段】デッドロック検出回路は、PLL回路のデッドロック状態を検出するものであり、PLL回路の電圧制御発振器の出力信号を分周して、第1の分周クロックを出力するPLL内蔵分周器と、電圧制御発振器の出力信号を分周して、PLL回路の位相比較器へのフィードバッククロックとなる第2の分周クロックを出力するフィードバック分周器と、第1の分周クロックの周期によって決定される所定の期間に含まれる、第2の分周クロックのクロック数に基づいて、デッドロック状態であるか否かを表す判定信号を出力する誤ロック検出回路とを備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、PLL回路(位相同期回路)のデッドロック状態を検出するデッドロック検出回路、および、デッドロック状態を検出してPLL回路を正常ロック状態に復帰させるデッドロック復帰回路に関するものである。
【背景技術】
【0002】
PLL回路は、リファレンスクロックに位相同期した出力クロックを生成するものであり、一般的に、位相比較回路(PFD)、チャージポンプ回路(CP)、ループフィルタ(LF)、電圧制御発振器(VCO)等によって構成される。
【0003】
PLL回路の1つの特徴である逓倍機能を実現するために、PFDへのフィードバッククロックを生成するために、フィードバック経路(FB経路)にフィードバック分周器(FB分周器)が設けられる。このFB分周器は、PLL回路内のVCOの発振周波数の全ての範囲で動作できることが望ましいが、多くの場合はロジック回路で構成されるため、その動作速度には限界がある。
【0004】
そのため、FB分周器は、正常ロック状態の時に問題なく動作しても、例えば、リファレンスクロックに一時的に想定よりも高い周波数成分を持つパルスが入力された場合にVCOの発振周波数が高くなり、正常動作できない場合がある。通常、FB分周器は、動作上限を超える周波数が入力されると、まず正常時よりも長い周期の分周状態となる。具体的には、例えば、2分周器が見かけ上4分周器のような動作となる。
【0005】
FB分周器への入力周波数がさらに高くなると、FB分周器から出力されるフィードバッククロックはハイレベル(H)あるいはローレベル(L)でスタックする。ただし、FB分周器の構成によっては、正常時よりも長い周期の分周状態は発生せず、いきなり出力がスタック状態となる場合もある。フィードバッククロックが正常時よりも長い周期の分周となったりスタックしたりすると、PLL回路はフィードバッククロックがリファレンスクロックよりも遅い、つまりVCOの発振周波数が低いと判断し、その発振周波数をさらに高くするような動作となり、ついにはVCOの発振周波数の上限に到達する。
【0006】
こうなると、その後、リファレンスクロックが正常に戻ってもその状態から抜け出せず、PLL回路はデッドロック状態となる。
【0007】
デッドロック状態からの自動復帰方法は、これまでにも様々な提案がある。
【0008】
例えば、特許文献1は、デッドロック状態からの復帰方法として、図9(B)に示すように、VCOの制御電圧を初期状態に戻すことによって、VCOの周波数をデッドロック状態の周波数(最高動作周波数)から初期状態の0に戻している。しかし、この方法では、PLL回路が正常ロック状態に復帰する(VCOの周波数が正常ロック状態の周波数に復帰する)までに長い時間を必要とする。PLL回路が組み込まれるシステムの用途によってはなるべく素早い復帰を要求される。
【0009】
特許文献2は、復帰時間にも着目した提案である。しかし、この方法では、大規模なアナログ回路が必要な上、動作条件やプロセス条件によるアナログ的な電圧変動幅を考えた時、実回路上での最適なアナログ電圧値を見つけ出す設計は容易ではなく、適用可能な周波数範囲も限定される虞がある。
【0010】
特許文献3,4もデッドロックからの復帰あるいは防止に着目しているが、いずれもアナログ電圧検出を必要としている。
【0011】
上記のように、デッドロックから自動復帰でき、しかも可能な限り早い再ロック時間(復帰時間)となるような方法はこれまでも提案されているが、アナログ回路を用いた検出方法は、動作条件やプロセス条件により変動を受けやすく、面積も大きくなる。一方、デジタル回路のみで構成された例では、再ロックまでの時間短縮が最適値になっているとは言えない。
【0012】
また、多くの提案は、電源投入後、あるいは正常リセット状態から初期ロックまでの動作中をデッドロック状態であると間違って検出してしまう、デッドロックの誤検出については詳しく言及されていない。
【0013】
【特許文献1】特開平11−122102号公報
【特許文献2】特開2003−18004号公報
【特許文献3】特開2006−174358号公報
【特許文献4】特開2007−104585号公報
【発明の開示】
【発明が解決しようとする課題】
【0014】
本発明の第1の目的は、誤検出することなく、デッドロック状態を正確に検出することができるデッドロック検出回路を提供することにある。
また、本発明の第2の目的は、デッドロック状態を検出してから、可能な限り短時間で正常ロック状態に復帰させることができるデッドロック復帰回路を提供することにある。
【課題を解決するための手段】
【0015】
上記目的を達成するために、本発明は、PLL回路のデッドロック状態を検出するデッドロック検出回路であって、
前記PLL回路の電圧制御発振器の出力信号を分周して、第1の分周クロックを出力するPLL内蔵分周器と、
前記電圧制御発振器の出力信号を分周して、前記PLL回路の位相比較器へのフィードバッククロックとなる第2の分周クロックを出力するフィードバック分周器と、
前記第1の分周クロックの周期によって決定される所定の期間に含まれる、前記第2の分周クロックのクロック数に基づいて、デッドロック状態であるか否かを表す判定信号を出力する誤ロック検出回路とを備えたことを特徴とするデッドロック検出回路を提供するものである。
【0016】
ここで、前記誤ロック検出回路は、前記第1の分周クロックを2m(mは正の整数)分周して、第3の分周クロックを出力する第3の分周器と、
前記第3の分周クロックのパルスが一方のレベルの期間、リセット状態となり、他方のレベルの期間、前記第2の分周クロックのクロック数をカウントして、該カウントしたカウント数を出力するカウンタと、
前記カウント数が、前記PLL内蔵分周器の分周数×前記第3の分周器の分周数の1/2÷前記フィードバック分周器の分周数により決定される値の小数点以下の値を切り捨てて得られる整数値ないし該整数値の±1の範囲の値ではない時にデッドロック状態であることを表す前記判定信号を出力する判定回路とを備え、
前記整数値は、2以上の値であることが好ましい。
【0017】
また、本発明は、PLL回路のデッドロック状態を検出し、前記PLL回路を正常ロック状態に復帰させるデッドロック復帰回路であって、
上記のいずれかに記載のデッドロック検出回路と、
前記PLL回路に入力されるリファレンスクロックに基づいて、該リファレンスクロックよりも高い周波数成分を含むダミーパルスを生成するダミーパルス生成回路と、
前記判定信号に基づいて、前記第2の分周クロックと前記ダミーパルスとを切り替えて、前記位相比較器に入力するマルチプレクサとを備えていることを特徴とするデッドロック復帰回路を提供する。
【0018】
ここで、前記ダミーパルス生成回路は、前記リファレンスクロックからダブルクロックを生成するダブルクロック生成回路と、該ダブルクロック生成回路から出力されるダブルクロックのパルス数をn回(nは3以上の整数)に1回間引くパルス間引き回路とを備えていることが好ましい。
【0019】
また、本発明は、PLL回路のデッドロック状態を検出し、前記PLL回路を正常ロック状態に復帰させるデッドロック復帰回路であって、
上記のいずれかに記載のデッドロック検出回路と、
前記PLL回路に入力されるリファレンスクロックに基づいて、該リファレンスクロックよりも低い周波数成分を含むダミーパルスを生成するダミーパルス生成回路と、
前記判定信号に基づいて、前記リファレンスクロックと前記ダミーパルスとを切り替えて、前記位相比較器に入力する第1のマルチプレクサと、
前記判定信号に基づいて、前記第2の分周クロックと前記リファレンスクロックとを切り替えて、前記位相比較器に入力する第2のマルチプレクサとを備えていることを特徴とするデッドロック復帰回路を提供する。
【0020】
ここで、前記ダミーパルス生成回路は、前記リファレンスクロックのパルス数をn回(nは2以上の整数)に1回間引くパルス間引き回路であることが好ましい。
【発明の効果】
【0021】
本発明では、電圧制御発振器の出力自身を異常動作状態の検出の基準として使う。そのため、本発明によれば、電源投入後等の初期ロック動作中に誤検出するリスクはほとんどなく、デッドロック状態を正確に検出できる。
【0022】
また、本発明では、PLL回路の異常動作状態を検出すると、フィードバッククロックをリファレンスクロックよりも高い周波数のダミーパルスに切り替えて、または、フィードバッククロックをリファレンスクロックに切り替えるとともに、リファレンスクロックを、該リファレンスクロックよりも低い周波数のダミーパルスに切り替えて電圧制御発振器の周波数を徐々に下げることにより、電圧制御発振器の周波数の下がり過ぎを防止するとともに、フィードバック分周器が正常動作状態に復帰したら、フィードバッククロックをフィードバック分周器の分周クロックに戻す。これにより、本発明によれば、再ロックまでの時間を短縮できる。
【発明を実施するための最良の形態】
【0023】
以下に、添付の図面に示す好適実施形態に基づいて、本発明のデッドロック検出回路およびデッドロック復帰回路を詳細に説明する。
【0024】
図1は、本発明を適用する半導体集積回路の構成を表す一実施形態のブロック図である。同図に示す半導体集積回路10は、PLL回路のデッドロック状態を検出し、自動的に正常ロック状態に復帰させるデッドロック復帰回路を有するものであり、PLL回路12と、フィードバック分周器(FBDIV)14と、誤ロック検出回路16と、ダミーパルス生成回路18と、マルチプレクサ(MUX)20とによって構成されている。
【0025】
PLL回路12には、通常の構成要素であるPFD22、CP24、LF26、VCO28に加え、さらに、VCO28の出力クロックを分周するPLL内蔵分周器(ADIV)30が内蔵されており、これらの構成要素は、この順序で直列に接続されている。PFD22には、リファレンスクロックREFCLKと、MUX20から出力されるフィードバッククロックFBCLKが入力され、VCO28からは出力クロックOUTCLKが出力されている。
【0026】
ADIV30は、PLL回路12の設計時に、VCO28の最高動作周波数まで正常に動作するように設計(保証)されている。通常、VCO28が高周波数まで安定した発振をするためには、ロジックHレベルを示す電源電圧VDDと、Lレベルを示すグランド電圧GNDの間をフル振幅する回路ではなく、それよりも小さい振幅で動作するアナログタイプの発振器が使われることが多い。ADIV30は、このアナログタイプの発振器の小振幅出力を直接受け取り、ADIV30自身もアナログ回路で構成されることにより、ロジック回路で設計された分周器よりもはるかに高い周波数での分周動作が可能となる。ADIV30がアナログ分周器に限定される必要はないが、以上のような工夫で、VCO28の最高動作周波数まで動作が保証される高速分周器を、PLL回路12内部に作り込むことは可能である。このADIV30は、VCO28が最高動作周波数で動作(発振)した時でも、誤ロック検出回路16を含む外部ロジック(PLL回路12外部のデジタル回路)が十分に余裕を持って正常に動作できるように、その分周数が設定されている。ADIV30からは、分周クロックVDCLKが出力される。
【0027】
例えば、VCO28の最高動作周波数が2GHzであり、外部ロジックが2GHzでは動作できない場合であっても、これを8分周すれば250MHzとなり、近年の半導体プロセスであれば十分に動作可能な周波数になる。
【0028】
なお、出力クロックOUTCLKに関しては、VCO28の出力信号をそのまま出力(分周なし)してもよいし、PLL回路12内部でVCO28の出力信号を分周して出力(分周あり)してもよく、特に限定されない。
【0029】
続いて、FBDIV14は、出力クロックOUTCLKを分周して、PFD22へのフィードバッククロックFBCLKとなる分周クロックOUTDIVを出力する。ここで、汎用的なPLL回路では、一般に出力クロックOUTCLKに対するフィードバッククロックFBCLKの分周数(つまり、FBDIV14の分周数)をある範囲内で任意に選択できる。そのため、FBDIV14の分周数は、ADIV30の分周数とは異なる分周数になる場合もあるし、偶然に同じ分数数になる場合もある。本実施形態においても同じである。
【0030】
続いて、誤ロック検出回路16は、分周クロックVDCLKの周期によって決定される所定の期間に含まれる、分周クロックOUTDIVのクロック数に基づいて、デッドロック状態であるか否かを表す判定信号ERJDGを出力する。詳細は後述する。
【0031】
ダミーパルス生成回路18は、リファレンスクロックREFCLKに基づいて、リファレンスクロックREFCLKよりも僅かに高い周波数成分を含む(リファレンスクロックREFCLKよりも僅かにパルス頻度が高い)ダミーパルスDUMPLSを生成する。ここで、ダミーパルスDUMPLSがリファレンスクロックREFCLKよりも僅かに高い周波数成分を含むとは、PFD22からパルス状のダウン信号DNが出力されるが、出力され続ける状態にはならない状態をいう。詳細は後述する。
【0032】
MUX20の入力端子A0には分周クロックOUTDIVが入力され、A1にはダミーパルスDUMPLSが入力され、選択入力端子には判定信号ERJDGが入力される。従って、MUX20の経路選択は判定信号ERJDGに基づいて制御され、分周クロックOUTDIVとダミーパルスDUMPLSとの切り替えが行われる。つまり、MUX20からは、フィードバッククロックFBCLKとして、判定信号ERJDGがLの時には分周クロックOUTDIVが出力され、一方、判定信号ERJDGがHの時にはダミーパルスDUMPLSが出力され、PFD22に入力される。
【0033】
ここで、PLL回路12に内蔵されるADIV30と、FBDIV14と、誤ロック検出回路16は、本発明のデッドロック検出回路を構成する。なお、FBDIV14は、PLL回路12の逓倍機能を実現するために実装されるものである。また、本発明のデッドロック検出回路と、ダミーパルス生成回路18と、MUX20は、本発明のデッドロック復帰回路を構成する。
【0034】
続いて、誤ロック検出回路16について説明する。
【0035】
図2は、図1に示す誤ロック検出回路の構成を表すブロック図である。同図に示す誤ロック検出回路16は、分周器VDDIV32と、カウンタ34と、判定回路36とによって構成されている。
【0036】
ここで、誤ロック状態とは、デッドロック状態を含む異常動作状態であることを表す。つまり、正常ロック状態を含む正常動作状態ではない状態である。
【0037】
VDDIV32は、分周クロックVDCLKを2m(mは正の整数)分周し、H期間とL期間が50:50である分周クロックERCHKを出力する。分周クロックERCHKは、カウンタ34のカウント及びリセットを制御するための信号となる。
【0038】
カウンタ34は、分周クロックERCHKのパルスが一方のレベルの期間、例えばLの期間、リセット状態となり、他方のレベルの期間、例えばHの期間、分周クロックOUTDIVのクロック数をカウントして、カウントしたカウント数(カウント値)を出力する。
【0039】
例えば、VDDIV32の分周数がFBDIVの分周数の2倍であり、カウンタ34は、分周クロックERCHKがHの期間、カウントする場合を考える。この場合、正常ロック状態の時のカウント数は、ADIV30の分周数と同じになるはずである。また、この関係はVCO28の発振周波数がどのような状態にあっても成り立つ。つまり、システムの電源投入後などに、PLL回路12が正常ロック状態に向かう途中であっても成り立つ。
【0040】
判定回路36は、カウンタ34のカウント数が、ADIV30の分周数×VDDIV32の分周数の1/2÷FBDIV14の分周数により決定される値の小数点以下の値を切り捨てて得られる整数値ないしこの整数値の±1の範囲の値ではない時に、デッドロック状態であることを表す判定信号ERJDGを出力する。ここで、前述の整数値は、2以上(つまり、カウント数が1以上)の値である。
【0041】
なお、ADIV30、VDDIV32、FBDIV14の分周数は、上記の通り、前述の整数値が2以上の値となる条件を満足している必要がある。
【0042】
本実施形態の場合、判定信号ERJDGは、正常動作状態の時にLが出力され、MUX20は、A0の経路が選択される。一方、異常動作状態の時には判定信号ERJDGとしてHが出力され、MUX20は、A1の経路が選択される。
【0043】
ここで、分周クロックERCHKと分周クロックOUTDIVは、これらの信号が発生されるまでの経路が異なっている。また、PLL回路12のFB経路には、半導体チップ内のCTS(クロックツリーシンセシス)による遅延をキャンセルするために大きな遅延(図1では省略)が挿入される場合もある。そのため、分周クロックERCHKと分周クロックOUTDIVのタイミング(位相関係)は、一定の関係にない(非同期である)ことがほとんどと言ってもよい。
【0044】
また、分周クロックERCHKと分周クロックOUTDIVが非同期であるため、カウンタ34によるカウント数は必ずしも一定しないかもしれないので、上記のように、±1の範囲であっても正常動作と見なす構成にすることが望ましい。FBDIV14が異常動作状態となる場合は、分周クロックOUTDIVのパルス数が僅かに少なくなるような動作にはならず、パルス数は大幅に減少するからである。
【0045】
また、誤ロック検出回路16のカウンタ34のリセットやカウント数の読み取りには、グレーコードカウンタ(デコーダ)を使ったり、メタステーブル対策のクロック載せ替えを行う回路(2段構成のシフトレジスタ)を設けたりするような非同期信号対策を施すことが望ましい。この非同期信号対策回路そのものは各種構成のものが公知であり、本発明においても一般的なものでよく、その構成に限定はない。
【0046】
続いて、ダミーパルス生成回路18について説明する。
【0047】
図3は、図1に示すダミーパルス生成回路の構成を表すブロック図である。同図に示すダミーパルス生成回路18は、ダブルクロック生成回路38と、パルス間引き回路40とによって構成されている。
【0048】
ダブルクロック生成回路38は、リファレンスクロックREFCLKからダブルクロック(リファレンスクロックREFCLKの2倍のパルス数を持つクロック)REFX2を生成する。ダブルクロック生成回路38は、遅延回路38aと、EORゲート38bとによって構成されている。EORゲート38bには、リファレンスクロックREFCLKと、遅延回路38aによって遅延されたリファレンスクロックREFCLKが入力される。EORゲート38bからは、リファレンスクロックREFCLKの立上りと立下りから遅延回路38aの遅延時間に相当するパルス幅を持つダブルクロックREFX2が出力される。
【0049】
上記のダブルクロック生成回路38の構成は一般的なものである。ダミーパルスDUMPLSは、リファレンスクロックREFCLKよりも高い周波数成分、好ましくは僅かに高い周波数成分を持っていることが理想的であり、例えば、2倍の周波数でよい場合もある(パルス間引き回路40なし)。
【0050】
パルス間引き回路40は、ダブルクロックREFX2のパルス数をn回(nは3以上の整数)に1回、後に示す本実施形態の具体例の場合、4回に1回間引いて、異常動作状態の時に、フィードバッククロックFBCLKとして分周クロックOUTDIVの代わりに使用されるダミーパルスDUMPLSを生成する。
【0051】
ダブルクロックREFX2のパルス頻度を下げるために、ダブルクロックREFX2のパルス数を4回に1回間引くことにより、リファレンスクロックREFCLKに対して1.5倍のパルス数のダミーパルスDUMPLSを作ることができる。こうして生成された1.5倍のダミーパルスDUMPLSは、平均周期がリファレンスクロックREFCLKの1/1.5であるが、定期的なクロック形状(クロック波形)にはなっていない。しかし、本発明の目的達成のためにはその形状で十分である。
【0052】
リファレンスクロックREFCLKに対するダミーパルスDUMPLSのパルス頻度を上げることによって、異常動作状態の時に、VCO28の発振周波数を下げることができる。しかし、ダミーパルスDUMPLSのパルス頻度を上げ過ぎるとダウン信号DNが出続け、VCO28の発振周波数が急激に下がるために下がり過ぎ、正常ロック状態となるまでに長時間を必要とすることになる。そのため、ダミーパルスDUMPLSのパルス頻度は、リファレンスクロックREFCLKの1倍以上、2倍以下程度とすることが望ましい。
【0053】
次に、図1に示す半導体集積回路10の動作を説明する。
【0054】
誤ロック検出回路16において、正常動作状態の時、判定信号ERJDGはLであり、MUX20の経路はA0側が選択される。
【0055】
正常動作状態の時、PLL回路12では、PFD22によって、リファレンスクロックREFCLKとフィードバッククロックFBCLKとの位相差が検出され、その検出結果となるアップ信号UPまたはダウン信号DNが出力される。例えば、PFD22は、リファレンスクロックREFCLKとフィードバッククロックFBCLKの立上りの位相を比較し、リファレンスクロックREFCLKの位相の方がフィードバッククロックFBCLKの位相よりも早い場合にはアップ信号UPを出力し、その逆の場合にはダウン信号DNを出力する。
【0056】
続いて、CP24により、アップ信号UPまたはダウン信号DNに応じて、その出力信号のパルス幅が変更され、さらにLP26によって、CP24の出力信号のパルス幅に応じた制御電圧(アナログ電圧)に変換される。VCO28では、制御電圧に応じて出力クロックOUTCLKの発振周波数が変更され、PLL回路12の出力クロックとして出力されるとともに、FBDIV14に入力される。
【0057】
FBDIV14では、設定された逓倍数に応じて、出力クロックOUTCLKが分周される。分周クロックOUTDIVは、判定信号ERJDGがLの場合(正常動作状態の時)、MUX20を介してPFD22にフィードバッククロックFBCLKとして入力される。以後同様にして、リファレンスクロックREFCLKとフィードバッククロックFBCLKとの位相差を検出し、出力クロックOUTCLKの発振周波数を変更することを繰り返すことによって、リファレンスクロックREFCLKとフィードバッククロックFBCLKの位相が同期(ロック)される。
【0058】
また、誤ロック検出回路16では、分周クロックVDCLKがVDDIV32によって分周され、分周クロックERCHKが出力される。カウンタ34は、分周クロックERCHKがHの期間、分周クロックOUTDIVのクロック数をカウントし、カウントしたカウント数は判定回路36によって判定される。正常動作状態の時には、カウント数が、前述の整数値±1の範囲となって判定信号ERJDGはLとなり、前述の通り、MUX20の経路としてA0が選択される。
【0059】
一方、例えば、VCO28の周波数が高くなり、FBDIV14が正常動作できなくなると、誤ロック検出回路16は、異常動作状態、すなわち誤ロック状態と見なして判定信号ERJDGがHとなり、MUX20の経路はA1に切り替えられる。
【0060】
この場合、フィードバッククロックFBCLKとしてダミーパルスDUMPLSが出力され、フィードバッククロックFBCLKの周波数がリファレンスクロックREFCLKよりも高くなるので、PLL回路12は、VCO28の発振周波数が高いと見なして周波数を下げるためにダウン信号DNを出力する。出力クロックOUTCLKの周波数が下がってFBDIV14が正常動作状態に戻ると、それを誤ロック検出回路16が検出して判定信号ERJDGがLとなり、MUXの経路がA0側に戻る。これ以後は通常のPLL動作で正常ロック状態に向かう。
【0061】
以下、具体例を挙げて説明する。
【0062】
図4は、図1に示す半導体集積回路の具体例を表すブロック図である。同図に示す半導体集積回路50は、基本的に、図1に示す半導体集積回路10において、図2に示す構成の誤ロック検出回路16と図3に示す構成のダミーパルス生成回路18を組み込んだ構成となっている。半導体集積回路50では、PLL回路12のADIV30の分周数を8分周とし、FBDIV14の分周数を5分周としている。
【0063】
誤ロック検出回路16において、VDDIV32は、2つの分周器32a、32bを備えている。なお、ここでは、理解を容易にするために、2つの分周器に分けているが、1つの分周器でも実現できることは言うまでもない。
【0064】
図5のタイミングチャートに示すように、分周クロックVDCLKは、分周器32aによって5分周され、分周クロックVDCLK5として出力される。この例では、分周クロックVDCLK5は、分周クロックVDCLKの3クロック分の期間がHとなり、2クロック分の期間がLとなる(H:L=3:2)。なお、分周クロックVDCLK5のHとLの配分は何ら限定されず、例えば、2:3でもよいし、1:4でも4:1でもよいし、分周クロックVDCLKの立下りを利用して2.5:2.5としてもよい。
【0065】
また、分周クロックVDCLK5は、分周器32bによって2分周され、分周クロックERCHKとして出力される。分周器32bで分周クロックVDCLK5を2分周することによって、分周クロックERCHKのHとLの配分が5:5となる。
【0066】
カウンタ34は、表1に示すように、分周クロックERCHKのパルスがLの期間、分周クロックOUTDIVの状態に関わらず(分周クロックOUTDIV=X)、リセット状態(カウンタ出力=0)となって待機する。一方、分周クロックERCHKがHの期間、分周クロックOUTDIVの立上りエッジ(↑)のタイミングで0からカウントアップし、カウントしたカウント数(カウンタ出力)を出力する。表1の例では、カウンタ34は、カウント数が10に到達するとカウントアップをやめ、その後分周クロックOUTDIVの立上りエッジが来ても10を保持する。
【0067】

【0068】
なお、カウンタ34のカウント数が10でカウントアップを停止している理由は、カウント数が10以上となったら、これ以後は、カウント数がどれだけ増えても正常動作状態ではないと判定回路36が判定できるからである。なお、これに限定されず、カウント数を10で停止させずにカウントアップを続行させてもよい。
【0069】
前述のように、ADIV30の分周数(=8)×VDDIV32の分周数(=5×2=10)×1/2÷FBDIV14の分周数(=5)=8であるから、正常動作状態の時、カウンタ34のカウント数は常に8±1(7〜9)の範囲となる。
【0070】
判定回路36は、表2に示すように、カウンタ34のカウント数が8±1の範囲か否かを判定し、判定信号ERJDGを出力する。判定信号ERJDGは、カウント数(カウンタ出力)が8±1の範囲の時にLとなり、8±1の範囲ではない時にHとなる。
【0071】

【0072】
続いて、ダミーパルス生成回路18において、ダブルクロック生成回路38の構成は図2に示すものと同じである。
【0073】
パルス間引き回路40は、表3に示すように、ダブルクロック生成回路38で生成されたダブルクロックREFX2のHパルスを4回に1回間引き、ダミーパルスDUMPLSとして出力する。
【0074】

【0075】
この例では、パルス間引き回路40は、内部に0〜3まで繰り返しカウントするカウンタを備えている。図6のタイミングチャートに示すように、この内部カウンタは、ダブルクロックREFX2の立下りエッジ(↓)のタイミングでカウントアップする。パルス間引き回路40では、内部カウンタのカウント値が0,1,3の時はダブルクロックREFX2をそのままダミーパルスDUMPLSとして出力するが、カウント値が2の時はダブルクロックREFX2のHパルスをマスクしてLを出力する。これにより、ダブルクロックREFX2の4回に1回だけパルスの間引きを行うことができる。
【0076】
なお、内部カウンタをダブルクロックREFX2の立下りエッジのタイミングでカウントアップさせるのは、この例ではダブルクロックREFX2のHパルス(H区間)をマスクする仕様としたため、図6のタイミングチャートに示すように、マスクするタイミング設計が容易になるからである。ただし、マスクするタイミングを適宜調整することによって内部カウンタをダブルクロックREFX2の立上りエッジでカウントアップさせることもできるし、さらには、ダブルクロックREFX2のLパルス(L区間)をマスクしてHを出力する構成としてもよい。
【0077】
なお、上記カウンタ34、判定回路36、パルス間引き回路40の具体的な回路構成は何ら限定されない。これらの回路は、例えば、表1〜3(真理値表)に基づいて回路記述言語で記述し、論理合成することで容易に実現できる。
【0078】
また、ここで示した回路及び仕様(分周数や間引き等の設定)は一例であり、例えば、分周クロックERCHKの生成方法、カウンタ34、判定回路36、パルス間引き回路40の具体的仕様を限定するものではない。さらには、ステートマシンの無限ループ突入を回避する工夫などは、デジタル回路設計では一般的に考慮されるものであり、本発明の骨子には関係がないため、この例では具体的な仕様は示していない。
【0079】
半導体集積回路50の動作は、具体的に、カウンタ34のカウント数が8±1の範囲の値であるか否かによって、フィードバッククロックFBCLKとして、分周クロックOUTDIVもしくはダミーパルスDUMPLSを出力する点を除いて半導体集積回路10と同様である。つまり、カウント数が8±1の範囲の場合は正常動作状態となり、カウント数がそれ以外の数値である場合には異常動作状態となる。また、異常動作状態であることが検出されると(判定信号ERJDG=H)、フィードバッククロックFBCLKとして、ダブルクロックREFX2のHパルスが4回に1回マスクされたダミーパルスDUMPLSが出力される。
【0080】
ここで、PFD22として、広く採用されているPFD方式を想定する。このPFD22は、図7のタイミングチャートに示すように、リセット状態(リファレンスクロックREFCLKとフィードバッククロックFBCLKがLの状態)からフィードバッククロックFBCLK(ダミーパルスDUMPLS)よりもリファレンスクロックREFCLKの立上りが先に来るとアップ信号UPをHとし、次のフィードバッククロックFBCLKの立上りでLに戻す。アップ信号UPがHの期間中はCP24でVCO28の制御電圧がチャージアップされ、VCO28の周波数が上がる。
【0081】
逆に、PFD22は、リセット状態からリファレンスクロックREFCLKよりもフィードバッククロックFBCLK(ダミーパルスDUMPLS)の立上りが先に来るとダウン信号DNをHとし、次のリファレンスクロックREFCLKの立上りでLに戻す。ダウン信号DNがHの期間中はCP24で制御電圧がディスチャージされ、VCO28の周波数が下がる。
【0082】
図7のタイミングチャートに示すように、半導体集積回路50ではダウン信号DNが断続的に発せられるため、VCO28の周波数を徐々に下げることが可能となる。図示していないが、半導体集積回路50の場合、ダミーパルスDUMPLSを間引かずダブルパルスのままで使用すると、ダウン信号DNがほぼHの状態を保持し、VCO28の周波数が急激に下がって下がり過ぎる場合がある。従って、パルスの間引きは、PLL回路12の特性に応じて適切なものを選ぶことが望ましい。
【0083】
続いて、誤ロック検出回路16のさらなる工夫について言及する。特に、FBDIV14が正常動作状態に復帰したことを検出するタイミングは、正常動作状態に復帰後できるだけ早い方が望ましい。図4の例では、出力クロックOUTCLKの80クロック分の時間の後に検出される。しかし、これでは遅い場合は、正常動作状態の時のカウンタ34でのカウント数を考慮しつつ、分周クロックVDCLKの誤ロック検出回路16内での分周数を適宜減らしてもよい。
【0084】
例えば、VDDIV32の分周数が6の場合を考える。誤ロック検出回路16による検出は、出力クロックOUTCLKで8×6=48クロック毎の頻度で行われる。このタイミングでのカウント数は、48×1/2÷5=4.8であるが、カウント数は小数点以下の値を切り捨てた整数値になるので4となる。あるいはタイミングの関係では3または5となる場合もあるが、4±1(3〜5)の範囲のいずれを正常動作と捉えても、検出精度としては問題ない。
【0085】
さらに、誤ロック検出回路16のもう1つ別の特徴を説明する。これまでのデジタル的な誤ロック検出回路は、リファレンスクロックREFCLKを誤動作検出の基準として用いることが多かった。これでうまくいく場合もあるが、そもそも誤ロック状態に陥る原因の多くは、リファレンスクロックREFCLKの一時的な乱れである。乱れの動作は一般的には定義できない不明なものなので、その間、誤ロック検出回路がどういう状態になっているのか予測できない。
【0086】
もう1つの問題は、電源投入後などの初期ロックに向かう時の誤検出である。PLL回路12がロックするまでの間はVCO28の発振周波数が低く、リファレンスクロックREFCLKに比べてフィードバッククロックFBCLKパルス数が少ないのは当然である。しかし、これは、FBDIV14が正常動作できなくなって所定のパルス数が戻ってこない場合と外観は同じであり、両者をどう区別するかも工夫が必要である。
【0087】
本発明では、誤動作状態の検出のための基準としてVCO28の出力クロックそのものを使用している。そのため、本発明に関わるデッドロック検出回路とデッドロック復帰回路では、上記の問題を全て解消している。
【0088】
なお、デッドロック検出回路は、PLL回路12のデッドロック状態を検出して判定信号ERJDGを出力するものであって、この判定信号ERJDGを用いてPLL回路12を正常ロック状態に復帰させるための回路(例えば、図1に示すダミーパルス生成回路18と、MUX20)は各種構成のものを利用することができる。
【0089】
図8は、図1に示すダミーパルス生成回路の別の構成を表すブロック図である。同図に示すダミーパルス生成回路18は、PLL回路12に入力されるリファレンスクロックREFCLKに基づいて、リファレンスクロックREFCLKよりも低い周波数成分を含むダミーパルスを発生するものである。同図に示すダミーパルス生成回路18は、パルス間引き回路42と、MUX44とによって構成されている。
【0090】
パルス間引き回路42は、リファレンスクロックREFCLKのHパルスを4回に1回間引いて間引きクロックとして出力する。
【0091】
MUX44の入力端子A0にはリファレンスクロックREFCLKが入力され、A1にはパルス間引き回路42から出力される間引きクロックが入力され、選択入力端子には判定信号ERJDGが入力される。MUX44の経路選択は判定信号ERJDGに基づいて制御され、MUX44からは、判定信号ERJDGがLの時にリファレンスクロックREFCLKが出力され、一方、判定信号ERJDGがHの時には間引きクロックが出力され、PFD22の本来のリファレンスクロックREFCLKの入力端子にPLL回路12のリファレンスクロックとして入力される。
【0092】
また、MUX20の入力端子A1にはリファレンスクロックREFCLKが入力される。
【0093】
同図に示すダミーパルス生成回路18では、異常動作状態の時(判定信号ERJDG=H)に、リファレンスクロックとして間引きクロックを入力し、フィードバッククロックとしてリファレンスクロックそのものを入力する。従って、リファレンスクロック(=間引きクロック)は、フィードバッククロック(=REFCLK)よりも僅かに低い周波数成分を持っているので、図8に示すダミーパルス生成回路18は、図4に示すものと同様の効果を得ることができる。
【0094】
ところで、本発明の目的の1つに、なるべく早い再ロックがある。誤ロック検出回路16の検出頻度を高くしたいのは、FBDIV14が正常動作状態に復帰しているにも関わらず、さらにDN命令が出て周波数を下げ過ぎてしまうことを防ぐためである。ダミーパルス生成回路18により僅かにダウン信号DNが出力される期間を多くして徐々にVCO周波数を下げるのも、やはり、VCO28の周波数を一気に下げ過ぎるのを防ぐためである。
【0095】
なお、もしもVCO28が動作周波数レンジ内の非常に周波数が低いところで安定するPLL条件であった場合、上記のようにVCO28の周波数を徐々に下げるよりも、一気に初期状態(=0)まで下げて再ロックさせる方が結果的に早い場合もあり得る。このように、PLL条件があらかじめ分かっている(決定されている)場合には、そのPLL条件に応じた構成にすることが望ましい。
【0096】
異常動作状態となったPLL回路12を正常動作状態に復帰させて再び正常ロック状態とするためには、最終的には正常なFB経路によって自然に収束させる必要がある。そのため、本発明は、可能な限り早くその状態に切り替える(分周クロックOUTDIVとダミーパルスDUMPLSを切り替える)ことを目指している。従って、本発明は、限定されるわけではないが、ロックする周波数が比較的高い場合に有効である。
【0097】
図9(A)および(B)は、それぞれ、本発明に関わるデッドロック復帰回路および従来のデッドロック復帰回路の再ロックまでの遷移状態を表すタイミングチャートである。同図(A)に示すように、本発明に関わるデッドロック復帰回路では、VCOの周波数は、デッドロック状態のVCOの周波数(最高動作周波数)から正常ロック状態のVCOの周波数まで徐々に下がり、同図(B)に示す従来のデッドロック復帰回路と比べてVCOの周波数が下がり過ぎることなく、短時間で正常ロック状態に復帰できる。
【0098】
上記のように、本発明では、PLL回路の異常動作状態を検出すると、フィードバッククロックFBCLKをダミーパルスDUMPLSに切り替え、VCOの周波数を一気に下げ過ぎず、徐々に下げることにより、VCOの周波数の下がり過ぎを防止するとともに、FBDIVが正常動作状態に復帰したら、フィードバッククロックFBCLKを分周クロックOUTDIVに素早く戻す。これにより、再ロックまでの時間を短縮できる。また、誤ロック検出手法としては、VCOの出力自身を基準として使っているため、電源投入後等の初期ロック動作中に誤検出するリスクもほとんどない。
【0099】
本発明は、基本的に以上のようなものである。
以上、本発明について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【図面の簡単な説明】
【0100】
【図1】本発明を適用する半導体集積回路の構成を表す一実施形態のブロック図である。
【図2】図1に示す誤ロック検出回路の構成を表すブロック図である。
【図3】図1に示すダミーパルス生成回路の構成を表すブロック図である。
【図4】図1に示す半導体集積回路の具体例を表すブロック図である。
【図5】分周クロックVDCLK、分周クロックVDCLK5、分周クロックERCHKの関係を表すタイミングチャートである。
【図6】間引き回路40の内部状態を表すタイミングチャートである。
【図7】リファレンスクロックREFCLK、ダブルクロックREFX2、ダミーパルスDUMPLS、アップ信号UP、ダウン信号DNの関係を表すタイミングチャートである。
【図8】図1に示すダミーパルス生成回路の別の構成を表すブロック図である。
【図9】(A)および(B)は、それぞれ、本発明に関わるデッドロック復帰回路および従来のデッドロック復帰回路の再ロックまでの遷移状態を表すタイミングチャートである。
【符号の説明】
【0101】
10、50 半導体集積回路
12 PLL回路
14 フィードバック分周器(FBDIV)
16 誤ロック検出回路
18 ダミーパルス生成回路
20、44 マルチプレクサ(MUX)
22 位相比較回路(PFD)
24 チャージポンプ回路(CP)
26 ループフィルタ(LF)
28 電圧制御発振器(VCO)
30 アナログ分周器(ADIV)
32、32a、32b 分周器
34 カウンタ
36 判定回路
38 ダブルクロック生成回路
38a 遅延回路
38b EORゲート
40、42 パルス間引き回路

【特許請求の範囲】
【請求項1】
PLL回路のデッドロック状態を検出するデッドロック検出回路であって、
前記PLL回路の電圧制御発振器の出力信号を分周して、第1の分周クロックを出力するPLL内蔵分周器と、
前記電圧制御発振器の出力信号を分周して、前記PLL回路の位相比較器へのフィードバッククロックとなる第2の分周クロックを出力するフィードバック分周器と、
前記第1の分周クロックの周期によって決定される所定の期間に含まれる、前記第2の分周クロックのクロック数に基づいて、デッドロック状態であるか否かを表す判定信号を出力する誤ロック検出回路とを備えたことを特徴とするデッドロック検出回路。
【請求項2】
前記誤ロック検出回路は、前記第1の分周クロックを2m(mは正の整数)分周して、第3の分周クロックを出力する第3の分周器と、
前記第3の分周クロックのパルスが一方のレベルの期間、リセット状態となり、他方のレベルの期間、前記第2の分周クロックのクロック数をカウントして、該カウントしたカウント数を出力するカウンタと、
前記カウント数が、前記PLL内蔵分周器の分周数×前記第3の分周器の分周数の1/2÷前記フィードバック分周器の分周数により決定される値の小数点以下の値を切り捨てて得られる整数値ないし該整数値の±1の範囲の値ではない時にデッドロック状態であることを表す前記判定信号を出力する判定回路とを備え、
前記整数値は、2以上の値であることを特徴とする請求項1に記載のデッドロック検出回路。
【請求項3】
PLL回路のデッドロック状態を検出し、前記PLL回路を正常ロック状態に復帰させるデッドロック復帰回路であって、
請求項1または2に記載のデッドロック検出回路と、
前記PLL回路に入力されるリファレンスクロックに基づいて、該リファレンスクロックよりも高い周波数成分を含むダミーパルスを生成するダミーパルス生成回路と、
前記判定信号に基づいて、前記第2の分周クロックと前記ダミーパルスとを切り替えて、前記位相比較器に入力するマルチプレクサとを備えていることを特徴とするデッドロック復帰回路。
【請求項4】
前記ダミーパルス生成回路は、前記リファレンスクロックからダブルクロックを生成するダブルクロック生成回路と、該ダブルクロック生成回路から出力されるダブルクロックのパルス数をn回(nは3以上の整数)に1回間引くパルス間引き回路とを備えていることを特徴とする請求項3に記載のデッドロック復帰回路。
【請求項5】
PLL回路のデッドロック状態を検出し、前記PLL回路を正常ロック状態に復帰させるデッドロック復帰回路であって、
請求項1または2に記載のデッドロック検出回路と、
前記PLL回路に入力されるリファレンスクロックに基づいて、該リファレンスクロックよりも低い周波数成分を含むダミーパルスを生成するダミーパルス生成回路と、
前記判定信号に基づいて、前記リファレンスクロックと前記ダミーパルスとを切り替えて、前記位相比較器に入力する第1のマルチプレクサと、
前記判定信号に基づいて、前記第2の分周クロックと前記リファレンスクロックとを切り替えて、前記位相比較器に入力する第2のマルチプレクサとを備えていることを特徴とするデッドロック復帰回路。
【請求項6】
前記ダミーパルス生成回路は、前記リファレンスクロックのパルス数をn回(nは2以上の整数)に1回間引くパルス間引き回路であることを特徴とする請求項5に記載のデッドロック復帰回路。

【図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


【公開番号】特開2010−124102(P2010−124102A)
【公開日】平成22年6月3日(2010.6.3)
【国際特許分類】
【出願番号】特願2008−294349(P2008−294349)
【出願日】平成20年11月18日(2008.11.18)
【出願人】(501285133)川崎マイクロエレクトロニクス株式会社 (449)
【Fターム(参考)】