(57)【特許請求の範囲】
【請求項１】
参照周波数をタイミングとして帰還処理対象信号に由来する第１の信号の伝播遅延情報を出力するタイム・トゥ・デジタルコンバータと、
前記伝播遅延情報をエンコードする第１のエンコーダおよび第２のエンコーダと、
エンコーダ間エラー検出回路と、
前記第２のエンコーダおよび前記エンコーダ間エラー検出回路と接続されたスイッチ回路と、
前記第１のエンコーダおよび前記スイッチ回路と接続されたエッジディテクタと、
を含むＡＤＰＬＬであって、
前記タイム・トゥ・デジタルコンバータは、前記参照周波数の立ち上がりのタイミングで得られた前記第１の信号の伝播遅延情報を出力し、
前記伝播遅延情報は第１のビット列および隣接する第２のビット列からなり、
前記第１のエンコーダは前記第１のビット列をエンコードし、
前記第２のエンコーダは前記第２のビット列をエンコードし、
前記エンコーダ間エラー検出回路は前記第１および第２のビット列の変化点の有無に応じて第２の信号を出力し、
前記スイッチ回路は、前記第２の信号に応じて、前記第２のエンコーダの出力信号または他の信号を出力し、
前記エッジディテクタは、前記第１のエンコーダの出力信号および前記スイッチ回路の出力信号によって変化点を検出することを特徴とするＡＤＰＬＬ。
【請求項２】
請求項１記載のＡＤＰＬＬにおいて、前記第１および第２のエンコーダに入力された前記第１および第２のビット列中に複数の変化点が存在する場合、前記第１および第２のエンコーダはもっとも小さいビット番号の変化点のみを残置させ、他の変化点は無いものとして取り扱うことを特徴とするＡＤＰＬＬ。
【請求項３】
請求項１または２に記載のＡＤＰＬＬを含むことを特徴とする半導体装置。
【請求項４】
請求項３の半導体装置を含むことを特徴とする携帯電話機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は携帯電話機などで用いられるＰＬＬ回路、特にＡＤＰＬＬ（Ａｌｌ  Ｄｅｇｉｔａｌ  Ｐｈａｓｅ  Ｌｏｃｋ  Ｌｏｏｐ）のチャタリング対策に関する。
【背景技術】
【０００２】
携帯電話、無線ＬＡＮに使用される高周波アナログ回路であるＲＦＩＣは依然として高い割合の成長が期待されている。現在、ＲＦＩＣの開発の流れはベースバンドＩＣ（デジタル回路）との１チップ化に進んでいる。
【０００３】
今後、集積度を上げるベースバンドＩＣの要求に従い、微細化プロセスでのＲＦＩＣの開発が必要である。微細化すると、素子ばらつき、ゲート容量増加の影響でアナログ回路の消費電流の増加、面積増加が問題となる。対策として、アナログ回路をデジタル回路に置き換える事が考えられる。
【０００４】
このアナログ回路をデジタル回路に置き換える対象にはＰＬＬ（フェイズロックループ）回路も含まれる。全てデジタル化されたＰＬＬ回路を本明細書ではＡＤＰＬＬと称呼する。
【０００５】
ＡＤＰＬＬの主要技術要素としてはＤＰＦＤ（デジタル・フェイズ・フリクエンシー・ディテクター）及びＤＰＦＤに含まれるＴＤＣ（タイム・トゥ・デジタルコンバータ）が存在する。
【０００６】
特開２００８−１３１６５９号公報（特許文献１）には低解像度ＴＤＣと高解像度ＴＤＣを含む回路を提案する。この回路では低解像度ＴＤＣでは第１量子間隔で時間をデジタル化し、高解像度ＴＤＣの第１量子間隔より短い第２量子間隔で時間をデジタル化する。これにより測距装置などに対して高い解像度と広い測定範囲の両立を可能ならしめる。
【０００７】
また、 “Ａｎ  Ａｌｌ−Ｄｉｇｉｔａｌ  ＰＬＬ  ｆｏｒ  Ｆｒｅｑｕｅｎｃｙ  Ｍｕｌｔｉｐｌｉｃａｔｉｏｎ  ｂｙ  ４  ｔｏ  １０２２  Ｗｉｔｈ  Ｓｅｖｅｎ−Ｃｙｃｌｅ  Ｌｏｃｋ  Ｔｉｍｅ”（非特許文献１）においては、位相差パルスが「Ｈ」のときだけ発振するリングオシレータとカウンタを使用し、位相差パルス幅を測定する方法が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−１３１６５９号公報
【非特許文献】
【０００９】
【非特許文献１】Ｔ．Ｗａｔａｎａｂｅ，  “Ａｎ  Ａｌｌ−Ｄｉｇｉｔａｌ  ＰＬＬ  ｆｏｒ  Ｆｒｅｑｕｅｎｃｙ  Ｍｕｌｔｉｐｌｉｃａｔｉｏｎ  ｂｙ  ４  ｔｏ  １０２２  Ｗｉｔｈ  Ｓｅｖｅｎ−Ｃｙｃｌｅ  Ｌｏｃｋ  Ｔｉｍｅ”，  ＩＥＥＥ  ＪＯＵＲＮＡＬ  ＯＦ  ＳＯＬＩＤ−ＳＴＡＴＥ  ＣＩＲＣＵＩＴＳ，  ＦＥＢ  ２００３
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし特許文献１記載の技術では、高解像度ＴＤＣを用いるため、微細化に伴いエラー発生率が高くなる。
【００１１】
また非特許文献１記載の技術では、解像度、検出範囲、線形性は良好である。しかしこちらでも微細化に伴い、リングオシレータの遅延がノイズに影響され易くなるためエラー発生率が高くなる。
【００１２】
本発明の目的は、ノイズ等によって生じるチャタリングの発生を検知・訂正する機能をＡＤＰＬＬに提供することにある。
【００１３】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１４】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
【００１５】
本発明の代表的な実施の形態に関わるＡＤＰＬＬは、参照周波数をタイミングとして帰還処理対象信号に由来する第１の信号の伝播遅延情報を出力するタイム・トゥ・デジタルコンバータと、伝播遅延情報をエンコードするエンコーダと、を含み、このタイム・トゥ・デジタルコンバータは、参照周波数の立ち上がりのタイミングで得られた第１の信号の伝播遅延情報を出力し、エンコーダは、伝播遅延情報を所定のビット数に分けて並列に処理することを特徴とする。
【００１６】
このＡＤＰＬＬにおいて、伝播遅延情報の並列処理を２以上の処理単位エンコーダが処理することを特徴としても良い。
【００１７】
このＡＤＰＬＬにおいて、処理単位エンコーダに入力された伝播遅延情報の所定のビット数に複数の変化点が存在する場合、処理単位エンコーダはもっとも小さい変化点のみを残置させ、他の変化点は無いものとして取り扱うことを特徴としても良い。
【００１８】
このＡＤＰＬＬにおいて、エンコーダは伝播遅延情報の連続するビットを取り扱う第１の処理単位エンコーダと、第２の処理単位エンコーダと、エンコーダ間エラー検出回路と、を含み、第１の処理単位エンコーダと第２の処理単位エンコーダは伝播遅延情報の連続するビットを取り扱い、エンコーダ間エラー検出回路は第１の処理単位エンコーダの所定のビットと第２の処理単位エンコーダの所定のビットで変化点が存在するか確認することを特徴としても良い。
【００１９】
このＡＤＰＬＬにおいて、所定のビット数は第１の信号のパルス幅を表すビット数より少ないことを特徴としても良い。
【００２０】
これらのいずれかに記載のＡＤＰＬＬを含むことを特徴とする半導体装置や、この半導体装置を用いた携帯電話機も本発明の射程に含まれる。
【発明の効果】
【００２１】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
【００２２】
本発明の代表的な実施の形態に関わるＡＤＰＬＬを含む半導体装置によって、ＴＤＣで発生したチャタリングの影響をなくすことが可能となる。これにより検出エラーを防ぐことができ、ＡＤＰＬＬの仕様上不可避な位相雑音が改善できる。
【図面の簡単な説明】
【００２３】
【図１】従来のＡＤＰＬＬの構成を表す回路図である。
【図２】従来のＡＤＰＬＬの動作を説明するための波形図である。
【図３】本発明の第１の実施の形態に関わるＴＤＣの構成を表す回路図である。
【図４】ＴＤＣの出力にエラーが載った際の波形を表す波形図である。
【図５】本発明の第１の実施の形態に関わるＴＤＣの出力ビット中でエラーが発生したこと検出する方法を表す概念図である。
【図６】本発明の第１の実施の形態に関わるエンコーダの構成を表す概念図である。
【図７】本発明の第１の実施の形態に関わるエッジディテクタで参照されるビットと判断の対象となるビットを表す概念図である。
【図８】本発明の第１の実施の形態に関わるエンコーダの全体処理の流れを表すフローチャートである。
【図９】本発明の第２の実施の形態に関わる１６ビットエンコーダ代替モジュールの動作を表す概念図である。
【図１０】本発明の第２の実施の形態にかかわるエンコーダの全体処理の流れを表すフローチャートである。
【図１１】本発明に関わるＡＤＰＬＬを用いたＧＳＭ方式の携帯電話機のブロック図である。
【図１２】本発明に関わるＡＤＰＬＬを用いたＥＤＧＥ方式の携帯電話機のブロック図である。
【発明を実施するための形態】
【００２４】
以下、図を用いて本発明の実施の形態について説明する。
【００２５】
（従来の実施の形態）
図１は従来のＡＤＰＬＬの構成を表す回路図である。また、図２はこの従来のＡＤＰＬＬの動作を説明するための波形図である。
【００２６】
このＡＤＰＬＬは、ＴＣＸＯ８０１、ＤＰＦＤ８０２、ＤＬＦ８０３、ＤＣＯ８０４、ＤＩＶ８０５を含んで構成される。
【００２７】
ＴＣＸＯ８０１は、周囲の温度の変化に対して追従して一定の発振出力を維持し続ける温度補償水晶発振器である。ＴＣＸＯ８０１は周波数２６ＭＨｚの参照用の周波数信号（参照周波数）ＶＲＥＦを出力する。
【００２８】
ＤＰＦＤ８０２は、カウンタ８０２−１、ＴＤＣ８０２−２、エンコーダ８０２−３、乗算器８０２−４、加算器８０２−５を含んで構成される。
【００２９】
カウンタ８０２−１は、ＤＩＶ８０５から出力されるＶＰＲＥで動作するカウンタ回路及びこのカウンタ回路の出力をラッチするラッチ回路１セットを含む回路である。
【００３０】
カウンタ８０２−１にはＴＣＸＯ８０１の出力ＶＲＥＦでラッチする第１のラッチ回路及びＤＩＶ８０５の出力ＶＤＩＶでラッチする第２のラッチ回路が含まれる。この二つのラッチ回路の差分を取ることで、位相差をＶＰＲＥの精度で求めることが可能となる。
【００３１】
この際、カウンタ８０２−１の動作タイミングであるＶＰＲＥと、第２のラッチ回路のタイミングであるＶＤＩＶは同期しているのに対し、ＶＰＲＥとＴＣＸＯ８０１の出力であるＶＲＥＦは非同期である。したがって、カウンタ８０２−１だけでは約１ｎｓｅｃ以下の位相差を求めることはできない（１／１０９＝１ｎｓｅｃ：１０-９は後述するＶＰＲＥの周波数に依拠する）。
【００３２】
なお、カウンタ８０２−１を省略した構成にすることも可能である。
【００３３】
ＴＤＣ８０２−２は、アナログ情報を量子化してデジタル出力するコンバータのことである。ＴＤＣ８０２−２は、遅延素子を直列に接続した遅延回路群と、遅延を記録するフリップフロップにより構成される。このＴＤＣ８０２−２側で、２０ｐｓｅｃ程度の細かい精度で値を求める。
【００３４】
ＴＤＣ８０２−２には、もう一つの出力がある。これはカウンタ８０２−１の1カウント分にいくつのビットデータが含まれるかを表す第２の出力である。カウンタ８０２−１の出力と、この第２の出力とカウンタ８０２−１の出力を乗算器８０２−４で掛け合わせることで、カウンタ８０２−１とＴＤＣ８０２−２の出力の次数を調整することが可能となる。
【００３５】
エンコーダ８０２−３はＴＤＣ８０２−２の出力を取り扱い易いように変換するエンコーダである。このＴＤＣ８０２−２の出力に由来するエンコーダ８０２−３の出力と乗算器８０２−４の出力を加算器８０２−５で足し合わせることで分解能が向上した位相差を求めることができる。
【００３６】
図３は本発明の第１の実施の形態に関わるＴＤＣ８０２−２の構成を表す回路図である。
【００３７】
このＴＤＣ８０２−２にはデータ信号としてＶＰＲＥが、タイミング信号としてＶＲＥＦが入力される。
【００３８】
データ信号であるＶＰＲＥは、多段接続された遅延回路群（Ｄｅｌａｙ  Ｎｅｔｗｏｒｋ：ＤＮ）に入力される。この遅延回路群ＤＮは遅延時間が同質の遅延素子をｎ個直列に接続された構成を取る。各遅延素子の出力は、対応するフリップフロップのデータ端子にも入力される。
【００３９】
遅延素子群ＤＮに含まれる遅延素子の数ｎは、カウンタ８０２−１の単位時間（上述では約１ｎｓｅｃ）と遅延素子群ＤＮ内の遅延素子の遅延時間によって決定される。例えばカウンタの位相差が１ｎｓｅｃ、個々の遅延素子の遅延量が２０ｐｓｅｃの場合、５０個（＝１０-９／（２０×１０-１２））の遅延素子が遅延回路群ＤＮに必要となる。
【００４０】
以下では、ｎ＝５０として説明する。ただし必ずしもこの数に限定されるものではない。例えば、カウンタ８０２−１を省略して構成した場合には、ＴＤＣ８０２−２の遅延回路の数は省略していない場合に比べ相対的に多くなる。また、温度特性の変化、製造段階のロット間誤差の吸収のためにある程度余裕を持った数を設ける場合も想定できよう。この場合、後述する図２（４）ＴＤＣ出力値の減算対象である（３）ＴＤＣ最大幅も変化する。
【００４１】
上述の通り、遅延素子群に含まれる遅延素子と同数のフリップフロップがＴＤＣ８０２−２中に含まれる。これらのフリップフロップにはラッチのタイミング信号として、ＴＣＸＯ８０１の出力である参照周波数ＶＲＥＦが入力される。
【００４２】
ＴＤＣ８０２−２に入力されたＶＰＲＥは遅延素子群ＤＮの各遅延素子を時間の経過に従い伝播していく。この入力からの伝播遅延をＶＲＥＦのタイミングによってラッチすることで、カウンタ８０２−１では把握できない粒度の時間（伝播遅延情報）を捉えることが可能となる。
【００４３】
なお、このような構成を取ることから、ＴＤＣ８０２−２で遅延を把握するためにＶＤＩＶはＶＲＥＦに対して遅れないように構成する必要がある。この構成の先行技術としては“Ａ  Ｌｏｗ−Ｎｏｉｓｅ  Ｗｉｄｅ−ＢＷ  ３．６ＧＨｚ  Ｄｉｇｉｔａｌ  ΔΣ  Ｆｒａｃｔｉｏｎａｌ−Ｎ  Ｆｒｅｑｕｅｎｃｙ  Ｓｔｈｅｓｉｚｅｒ  Ｗｉｔｈ  ａ  Ｎｏｉｓｅ−Ｓｈａｐｉｎｇ  Ｔｉｍｅ―ｔｏ−Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ  ａｎｄ  Ｑｕａｎｔｉｚａｔｉｏｎ  Ｎｏｉｓｅ  Ｃａｎｃｅｌｌａｔｉｏｎ”（Ａｕｔｈｏｒ  Ｃｈｕｎ−Ｍｉｎｇ  Ｈｓｕ，Ｍａｔｔｈｅｗ  Ｚ．  Ｓｔｒａａｙｅｒ，  Ｍｉｃｈａｅｌ  Ｈ．  Ｐｅｒｒｏｔｔ：ＩＥＥＥ  ＪＯＵＲＮＡＬ  ＯＦ  ＳＯＬＩＤ−ＳＴＡＴＥ  ＣＩＲＣＵＩＴＳ，  ＶＯＬ．４３，Ｎｏ．１２，Ｄｅｃｅｍｂｅｒ  ２００８）などが存在する。
【００４４】
ＤＬＦ８０３は、ＤＰＦＤ８０２の出力から高周波雑音成分を除くためのデジタルローパスフィルタである。
【００４５】
ＤＣＯ８０４は、動作周波数レンジが３．４ＧＨｚ〜４．２ＧＨｚのデジタル制御発振器である。ＤＬＦ８０３の出力によって、ＤＣＯ８０４内の静電容量が制御されることで所望の周波数信号が出力可能となる。
【００４６】
ＤＩＶ８０５は、ＤＣＯ８０４の出力を４分周したＶＰＲＥと、２６ＭＨｚの周波数を有するＶＤＩＶを出力する分周回路群である。既述の通り、ＤＣＯ８０４の出力がＤＩＶ８０５の入力信号となる。
【００４７】
図３を見ても明らかな通り、ＤＣＯ８０４の信号がＤＩＶ８０５で分周された後にＴＤＣ８０２−２及びカウンタ８０２−１に入力される。すなわちＤＩＶ８０５の出力信号ＶＰＲＥ及びＶＤＩＶの元となるＤＣＯ８０４の出力が帰還処理対象信号となる。
【００４８】
ＶＰＲＥはＤＣＯ８０４の出力を４分周した信号である。したがってＶＰＲＥの周波数レンジは８５０ＭＨｚ〜１．０５ＧＨｚになる。
【００４９】
なお、ＶＰＲＥ及びＶＤＩＶは同一の信号（ＤＣＯ８０４の出力）を分周している。したがって、ＶＰＲＥとＶＤＩＶは同期している（図２のｐ１参照）。
【００５０】
つぎに、この構成を取るＡＤＰＬＬの全体の動作について説明する。
【００５１】
まず、カウンタ８０２−１によってＶＲＥＦとＶＤＩＶの大まかな差分を求める。これが図２の（１）カウンタ値であり、カウンタ８０２−１の出力でもある。このカウンタ８０２−１の出力に遅延素子の数ｎを掛けると次数の調整を行うことができる。これが乗算器８０２−４の出力である。
【００５２】
同時にＴＤＣ８０２−２によって、ＶＲＥＦが入力されたときのＶＰＲＥの遅延を検出する。カウンタの位相差が１ｎｓｅｃ、遅延措置の遅延が２０ｐｓｅｃの場合、ＶＲＥＦ１周期（図２の（３）ＴＤＣ最大幅）は遅延素子の数ｎに従う。この（３）ＴＤＣ最大幅から図２の（４）ＴＤＣ出力値を引けば図２（２）を求めることができる。
【００５３】
この図２の（２）の値と図２（１）カウンタ値を足すと、図２の（５）位相差を求めることが可能となる。この（５）位相差は加算器８０２−５の出力である。
【００５４】
この従来のＡＤＰＬＬの問題点を述べる。
【００５５】
ＡＤＰＬＬで使用されるＴＤＣは、既述の通り高分解能の位相比較が要求される。図１の例では、カウンタ８０２−１の動作が１ｎｓｅｃであることから、これよりも小さいことが求められる。
【００５６】
また遅延素子の遅延量は微細化による低電圧化に伴い、電源のノイズに対する感度が高くなる。また電源電圧・温度などの外的要因によってＡＤＰＬＬの特性は大きく変化する。
【００５７】
図４は、ＴＤＣ８０２−２の出力にエラーが載った際の波形を表す波形図である。
【００５８】
ＴＤＣ８０２−２に入力されるＶＰＲＥは遅延回路群ＤＮ上では周波数の低い情報である。しかし、ノイズ等によって、Ｄ２３は本来「１」を示すべきところが「０」となっている。このように期待されるような周波数が出ていないものについては、エラーとして排除することも可能である。
【００５９】
しかし、本来変化すべき変化点でこのようなノイズが載ると周波数的に大きく変わることがなく、正常と判断することも考えられる。このような現象をチャタリングと呼ぶ。
【００６０】
本発明はエンコーダに、このチャタリングの発生を検知・訂正する機能を提供する。
【００６１】
（第１の実施の形態）
以下、本発明の第１の実施の形態について説明する。
【００６２】
図３を見ても明らかな通り、ＴＤＣ８０２−２の出力は多くのデータビットが必要になる。このようなデータでは取り扱いづらいため、エンコードをする必要がある。一方で、ＴＤＣ８０２−２の出力ビットが多くなるとエンコードにかかる時間も増大する。
【００６３】
図５はＴＤＣ８０２−２の出力ビット中でエラーが発生したこと検出する方法を表す概念図である。また、図６は、図５に記載した、本発明の第１の実施の形態に関わるエンコーダ８０２−３の構成を表す概念図である。
【００６４】
まずエラーの検出について説明する。
【００６５】
なお、本実施の形態は図１の条件を有するものとする。すなわち遅延回路の遅延量が２０ｐｓｅｃ、カウンタ８０２−１のカウントタイミング周期が１ｎｓｅｃとする。この条件下では、ＴＤＣ８０２−２にはデータとしてＶＰＲＥが入力されるのは既述の通りである。このＶＰＲＥは８５０ＭＨｚ〜１．０５ＧＨｚ（１．１８〜０．９５ｎｓｅｃ）の信号である。したがって、１つのパルスの表現には２６−２４個分の遅延素子（ビット）が必要であり、最大でも２４ビットに２回を超えて変化点が含まれない。
【００６６】
図５（ａ）はエラーが存在しないときのデータビットであり、図５（ｂ）は変化点近傍にエラーが存在したときのデータビットである。
【００６７】
本実施の形態では、ＴＤＣ８０２−２の出力をエンコーダ８０２−３に入力するところから検討が始まる。
【００６８】
エンコーダ８０２−３に入力されると、エンコーダ８０２−３内の第１の内部バッファにＴＤＣ８０２−２の出力は保存される。その後、ＴＤＣ８０２−２の出力を１ビット分シフトさせてエンコーダ８０２−３内の第２の内部バッファに保存する。
【００６９】
この第1の内部バッファ内のデータと第２の内部バッファ内のデータの排他的論理和（Ｅｘｃｌｕｓｉｖｅ  ＯＲ）を取るとデータの変化点を抽出することができる。
【００７０】
図５（ａ）のように、抽出した結果が１ビットだけであれば、ノイズの可能性はほぼ無い。前後の変化点との間隔や、ＴＤＣ８０２−２の出力あたりの変化点の発生数（変化密度）と言った項目を調べればノイズかどうかの判断ができる。少なくともこのような場合にはチャタリングの発生の可能性はない。
【００７１】
しかし、チャタリングの検出の際には、連続する３ビット以上が「１」になっていれば、チャタリングが発生したことがわかる。これを表すのが図５（ｂ）である。このようにチャタリングが発生すると変化点が連続することとなる。結果、どこが本当の変化点か不明となる。
【００７２】
本実施の形態では、最下位ビットＱ０から数えて最初の「１」を変化点として取り扱う。これにより、上述のようなチャタリング時に変化点が連続する場合であっても、その影響を無視することが可能となる。
【００７３】
なお、同一対象のビットシフト後の排他的論理和演算時には演算可能対象は1ビット減少する。すなわち５０ビット構成の場合には４９ビットの排他的論理和が取得可能である。この取り扱いについては設計事項である。
【００７４】
次に、エンコーダ８０２−３の構成について説明する。
【００７５】
上述の通り、ＶＰＲＥのパルス幅は最大２６ビット、最小２４ビットである。よって、２４ビット未満を一つの単位として取り扱えば、変化点が1箇所を超えて存在することはなくなる。
【００７６】
図６では、１６ビット単位でＴＤＣ８０２−２の出力を取り扱うエンコーダ８０２―３の構成の一部を表している。なお、前段の排他的論理和の取得については図５で説明済みであるので省略する。
【００７７】
この構成では、１６ビットエンコーダ＃０、＃１、＃２を含む。なお、実際には１ビット端数が発生するがこの取り扱いは設計事項である。
【００７８】
各１６ビットエンコーダには１６ビットのデータが入力される。１６ビットエンコーダ＃０には排他的論理和の０ビットから１５ビットが、１６ビットエンコーダ＃１には１６ビットから３１ビットが、１６ビットエンコーダ＃２には３２ビットから４７ビットがそれぞれ入力される。
【００７９】
各１６ビットエンコーダは、低位のビットから「１」が立っているかをスキャンする。「１」が立っているビットを発見した場合には、１６ビットエンコーダはそのビットが立っているビットナンバーを４ビット形式で出力する。例えば図６の１６ビットエンコーダ＃０では、８ビット目に「１」が立っているため、２進数で「０１１１」を出力する。同様に１６ビットエンコーダ＃１は２進数「１１１１」を、１６ビットエンコーダ＃２は２進数「０００１」をそれぞれ出力する（図６参照）。これにより１６ビット長を４ビット長に圧縮することが可能となる。
【００８０】
このままで処理すると、図６のＥｒｒｏｒ２のように２つの１６ビットエンコーダにまたがって生じたチャタリングを誤って認識することとなる。これを防ぐために、各エンコーダの間に前段の１６ビットエンコーダの上位側８ビット及び後段の１６ビットエンコーダの下位側８ビットの合計１６ビットで互いにエッジの有無を検出する。この検出を行うのがエンコーダ間エラー検出回路＃１１、＃１２である。
【００８１】
各エンコーダ間エラー検出回路は、二つのＯＲゲートと１つのＡＮＤゲートから構成される。ＡＮＤゲートは二つのＯＲゲートの出力の論理積を取る２端子ＡＮＤゲートである。一方、一つのＯＲゲートには前段の１６ビットエンコーダの上位側８ビットが入力され、他方のＯＲゲートには後段の１６ビットエンコーダの下位側８ビットが入力される。
【００８２】
図６を用いて具体的に説明する。１６ビットエンコーダ＃０の８ビットから１５ビット、及び１６ビットエンコーダ＃１の１６ビットから２３ビットについて、それぞれ変化点が存在するかをエンコーダ間エラー検出回路＃１１が検出する。これは各ビットの論理和（ＯＲ）を取れば簡単に求められる。
【００８３】
図６では１６ビットエンコーダ＃０の８ビットから１５ビットには変化点が存在するが、１６ビットエンコーダ＃１の１６ビットから２３ビットに変化点は存在しない。したがって、１６ビットエンコーダ＃０側からは「１」が、１６ビットエンコーダ＃１側からは「０」が出力される。エンコーダ間エラー検出回路＃１１内のＡＮＤゲートに入力され、ＡＮＤゲートは「０」を出力する。
【００８４】
このＡＮＤゲートの出力は複数ビットから構成されるチャタリングが１６ビットエンコーダ間にまたいで存在していないことを表す。このＡＮＤゲートの出力が、後段の１６ビットエンコーダ＃１の出力を制御するスイッチ回路に入力される。
【００８５】
一方、１６ビットエンコーダ＃１と１６ビットエンコーダ＃２との間のエンコーダ間エラー検出回路＃１２について検証する。１６ビットエンコーダ＃１の２４ビットから３１ビット、及び１６ビットエンコーダ＃２の３２ビットから３９ビットについて、それぞれ変化点が存在するかをエンコーダ間エラー検出回路＃１２が検出する。
【００８６】
図６からも明らかな通り、チャタリングの存在により、エンコーダ間エラー検出回路＃１２の２つのＯＲゲートはそれぞれ「１」を出力することとなる。したがってエンコーダ間エラー検出回路＃１２のＡＮＤゲートは「１」を出力する。
【００８７】
エンコーダ間エラー検出回路＃１１の出力はスイッチ＃２１に、エンコーダ間エラー検出回路＃１２の出力はスイッチ＃２２にそれぞれ出力される。
【００８８】
スイッチ＃２１、＃２２は、対応する１６ビットエンコーダの出力をそのまま通すかどうかを決定する関門の役割を果たす。
【００８９】
エンコーダ間エラー検出回路から「０」が入力されるとチャタリングと関係が無いとして、対応する１６ビットエンコーダの出力をそのまま通す。一方エンコーダ間エラー検出回路から「１」が入力されるとチャタリングと関係するものとして、１６ビットエンコーダからの入力を無視しスイッチは４ビットの「０」を出力する。図６は、この動作の相違を表すものである。
【００９０】
図６の場合では、１６ビットエンコーダ＃２の出力がどんなものであってもスイッチ＃２２は「０」を出力する。これにより、チャタリング誤検出のおそれを封じることが可能となる。結果として、該排他的論理和のデータ中１６ビットエンコーダ＃０の８ビット目及び１６ビットエンコーダ＃１の１６ビット目という２つの変化点を検出することが可能となる。
【００９１】
以上のように各１６ビットエンコーダでチャタリングを排除した結果、エッジが検出可能になる。このチャタリング排除及び４ビット短縮後の該排他的論理和のデータを用いて、エッジディテクタ＃３１が変化点を検出する。
【００９２】
エッジディテクタ＃３１は、１６ビットエンコーダ＃１、スイッチ＃２１、＃２２の出力から変化点を検出するための回路である。
【００９３】
上記の例では、各１６ビットレジスタは以下のデータをエッジディテクタ＃３１に出力している（全て２進数４ビット）。
【００９４】
１６ビットエンコーダ＃１  ：  ０１１１
スイッチ＃２１            ：  １１１１
スイッチ＃２２            ：  ００００
図６の出力は変化点のみを表したデータである。したがって、ＶＰＲＥが「Ｈ」であるか「Ｌ」であるかという情報は存在しない。この処理について説明する。
【００９５】
図７は本発明の第１の実施の形態にかかわるエッジディテクタ＃３１で参照されるビットと判断の対象となるビットを表す概念図である。
【００９６】
エッジディテクタ＃３１は変化点を捜索する。この際、必ず最下位ビットから上位ビットへの方向に検索する。各１６ビットエンコーダ及び各スイッチによって、１６ビット単位では１つの変化点しか存在しないことは保証されている。しかし、１６ビットエンコーダ＃０の出力、スイッチ＃２１の出力、スイッチ＃２２の出力、という風に、エッジディテクタ＃３１の変化点捜索は、下位ビット側から上位ビット側という流れになる。
【００９７】
ここで着目されるのは、第１の内部バッファ内に記録されたＴＤＣ８０２−２の最下位ビットであるＱ０に相当するデータである。Ｑ０が「０」であれば、次の変化点で「Ｌ」から「Ｈ」に変化する。一方、Ｑ０が「１」であれば、次の変化点で「Ｈ」から「Ｌ」に変化する。
【００９８】
このようにＴＤＣ８０２−２の最下位ビットの値に基づき、ＶＰＲＥの電位の「Ｈ」「Ｌ」の情報を取得する。この処理を行うのがエッジディテクタ＃３１である。
【００９９】
図８は本発明の第１の実施の形態にかかわるエンコーダ８０２−３の全体処理の流れを表すフローチャートである。
【０１００】
まず、エンコーダ８０２−３は排他的論理和演算により変化点を導出する（ステップＳ１００１）。これは図５で説明した処理である。
【０１０１】
次に各１６ビットエンコーダにより、各１６ビットエンコーダに入力された最初の変化点を求め、チャタリングを排除する（ステップＳ１００２）。これはエンコーダ間エラー検出回路＃１１、＃１２及びスイッチ＃２１、＃２２に関わる処理である。
【０１０２】
各１６ビットエンコーダがチャタリング排除後に変化点をみつければ、該１６ビットエンコーダの出力の該当変化点はエッジディテクタ＃３１でエッジとして取り扱われる（ステップＳ１００３）。一方、各１６ビットエンコーダがチャタリング排除後に変化点をみつけなければ、該１６ビットエンコーダの出力はエッジとして取り扱われない（ステップＳ１００４）。
【０１０３】
そしてエッジディテクタ＃３１は最初の立ち上がりエッジのビット番号を導出する（ステップＳ１００５）。そして、５０からそのビット番号を引いた値を導出する（ステップＳ１００６）。これは図２の（２）の処理に当たり、ＶＰＲＥの分解能以下のＶＤＩＶとＶＲＥＦの差分となる。
【０１０４】
そして、この図２の（２）の処理結果を加算器８０２−５に出力することで、エンコーダ８０２−３の処理は終了する（ステップＳ１００７）。
【０１０５】
このように１６ビットエンコーダを並列的に用いることでエンコードの処理時間を短縮する。また、並列する各１６ビットエンコーダ間でエッジ検出ビットを比較することで、チャタリング発生によって生じた不要な変化点をハードウェア的に除去することを可能にする。
【０１０６】
なお、上記では１６ビットエンコーダを複数並列に用いるとしたが、これは必ずしも１６ビット単位で処理を行わなくても良い。取り扱う信号、実装する装置などに最適化されたとしても問題は無い。その意味では上記の「１６ビットエンコーダ」は「処理単位エンコーダ」と解釈するべきである。
【０１０７】
また上記のエンコーダ間エラー検出回路は、取り扱う対象の２つの１６ビットエンコーダから同数の信号線を入力してチャタリングの有無を判断した。しかし、必ずしも同数にすることには拘らない。一方は多いビット数を、他方は少ないビット数として処理を行っても良い。
【０１０８】
（第２の実施の形態）
次に本発明の第２の実施の形態について図を用いて説明する。
【０１０９】
第１の実施の形態では、並列に１６ビットエンコーダを並べて、変化点を導出した。これに対し、本実施の形態では、排他的論理和演算後の変化点の導出を一括してＬＳＢからＭＳＢまで順に行うことを特徴とする。なお、図５までの処理は、第１の実施の形態と同様であるので省略する。まず、図５（ｂ）のチャタリングが発生したデータ、すなわち変化点が連続して存在するデータを用いて説明する。
【０１１０】
第１の実施の形態では、パルス幅の理論的な値よりも小さいデータ幅の１６ビットエンコーダを複数用意し、これらで図５のＥＸＯＲ出力の処理を行った。これに対し、本実施の形態では、図５のＥＸＯＲ出力全体（図５の例であれば５０ビット）を一括して処理する点に特徴がある。
【０１１１】
図９は、本実施の形態の１６ビットエンコーダ代替モジュールの動作を表す概念図である。なおここで取り扱われているデータは図５（ｂ）のエラー発生時のＥＸＯＲ出力である。
【０１１２】
本実施の形態でも、ＥＸＯＲ出力を用いて最下位のビットから変化点を導出する点では変わりない。また、Ｄｕｔｙ５０％の際にパルス幅が２５ビット長になる点についても第１の実施の形態同様である。
【０１１３】
ただし、第１の実施の形態のように、１６ビットエンコーダなどの出力中に変化点が一つしか存在しないような保証はなされていない。したがってＥＸＯＲ出力をビット単位で精査する必要がある。
【０１１４】
まず、最初に最下位のビットから変化点を導出する。図９ではビットＱ７が最初に現れる変化点となるのでここを指すポインタＯＵＴ０にＱ７をセットする。
【０１１５】
Ｑ７からは連続して２ビット分（Ｑ８及びＱ９）にも変化点が存在する。しかしＯＵＴ０の値からこれらのビットはあまりにも近く、Ｄｕｔｙ５０％の際にパルス幅には遠く及ばない。したがって、これらのビットの変化点はチャタリングの発生によるものとして無視される。
【０１１６】
ここで、「Ｄｕｔｙ５０％の際にパルス幅には遠く及ばない」とした。これはＤｕｔｙが変化することによってパルス幅が長短するため、閾値が必ずしも２５ビット幅を要求されるものではないことを意味する。基準をどこに置くかは設計事項であるが、第1の実施の形態に準拠するのであれば、エンコーダ間エラー検出回路の幅である１６ビットになる。これ以下の場合に「Ｄｕｔｙ５０％の際にパルス幅には遠く及ばない」とし、該変化点を無視することとなる。
【０１１７】
さらに変化点の有無を検出すると、ビットＱ３２に変化点が現れる。この変化点はＯＵＴ０から２５ビットと離れている。そこで2番目の変化点を表すポインタＯＵＴ１にこのビットＱ３２をセットする。以降連続するビットＱ３４及びビットＱ３４はあまりにもポインタＯＵＴ１に近いため、チャタリングの発生によるものとして無視される。
【０１１８】
このようにＥＸＯＲ出力からチャタリング由来の変化点を排除すれば、後は図７同様に、第1の内部バッファ内のＴＤＣ出力値のビットＱ０を参照すればよい。そしてＶＰＲＥの波形が決定されることとなる。
【０１１９】
このようにＥＸＯＲ出力を一括して取り扱う場合であっても、処理スレッドが一つになることによる処理時間の遅延のおそれ以外には問題は生じない。
【０１２０】
最後に、本発明の第２の実施の形態についての処理について説明する。
【０１２１】
図１０は本発明の第２の実施の形態にかかわるエンコーダ８０２−３の全体処理の流れを表すフローチャートである。これは図９の処理を体系化したものである。
【０１２２】
まず、排他的論理和による変化点の導出を行う（ステップＳ２００１）。これは第１の実施の形態のステップＳ１００１同様である。
【０１２３】
次に、１６ビットエンコーダ代替モジュールによる最初の変化点の検出を行う（ステップＳ２００２）。図９では、最下位ビットから変化点を検出し、ビットＱ７が最初に現れる変化点であると特定する箇所がこのステップＳ２００２に当たる。
【０１２４】
この最初に検出した変化点をポインタであるＯＵＴ０にセットする（ステップＳ２００３）。
【０１２５】
更に、１６ビットエンコーダ代替モジュールは続く変化点を検出する（ステップＳ２００４）。変化点が存在する場合には（ステップＳ２００５：Ｙｅｓ）、直前の変化点と検出した変化点との間隔が所定の閾値を越えているかを確認する（ステップＳ２００６）。この間隔が閾値を越えていない場合には（ステップＳ２００６：Ｎｏ）、ステップ２００４に戻って、次の変化点を検出する。閾値を越えている場合には（ステップＳ２００６：Ｙｅｓ）、次のポインタに検出した変化点のビットを記録する（ステップＳ２００７）。
【０１２６】
この閾値が図９における「Ｄｕｔｙ５０％の際にパルス幅には遠く及ばない」について議論した閾値である。
【０１２７】
排他的論理和の最後のビットまで変化点を導出することができなかった場合には（ステップＳ２００５：Ｎｏ）、エッジディテクタは最初の立ち上がりエッジのビット番号を導出する（ステップＳ２００８）。そして、「５０」（遅延素子の数）からステップＳ２００８で導出したビット番号を引いた数を導出する（ステップＳ２００９）。これがＶＰＲＥの分解能以下のＶＤＩＶとＶＲＥＦの差分となる。この求めた値を加算器８０２−５に出力することで、エンコーダ８０２−３の処理は終了する（ステップＳ２０１０）。
【０１２８】
これらのステップＳ２００８−Ｓ２０１０は第１の実施の形態のステップＳ１００５―Ｓ１００７の処理に対応する。
【０１２９】
以上のように、ＥＸＯＲ出力を一括して処理する場合でも、本発明の目的であるチャタリングの排除を行うことが可能となる。
【産業上の利用可能性】
【０１３０】
最後に第１の実施の形態及び第２の実施の形態に関するＡＤＰＬＬの適用事例について説明する。
【０１３１】
図１１は本発明に関わるＡＤＰＬＬを用いたＧＳＭ方式の携帯電話機のブロック図である。また、図１２は本発明に関わるＡＤＰＬＬを用いたＥＤＧＥ方式の携帯電話機のブロック図である。
【０１３２】
図１１では図面の中ほどにＡＤＰＬＬＳｙｎｔｈｅｓｉｚｅｒ８００１に適用されている。また図１２でも、ＡＤＰＬＬＳｙｎｔｈｅｓｉｚｅｒ８００２の中のＡＤＰＬＬに含まれている。
【０１３３】
このように、従来ではアナログ方式のＰＬＬを用いた箇所にＡＤＰＬＬを適用することが考えられる。そして、このＡＤＰＬＬに本発明を適用することが可能である。
【０１３４】
なお、上記では一部の方式の携帯電話機について説明したがこれに拘るものではない。ＬＴＥや今後に開発される方式であっても、ＰＬＬを使用する限りは適用の余地がある。
【０１３５】
また携帯電話機に限らず、パーソナルコンピュータ、形態情報端末、プリンタ、ファクシミリなど高周波信号を要し、ＰＬＬを用いる機器に対して本発明を適用することが可能である。
【０１３６】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更が可能であることは言うまでもない。
【符号の説明】
【０１３７】
８０１…ＴＣＸＯ、８０２…ＤＰＦＤ、
８０２−１…カウンタ、８０２−２…ＴＤＣ、８０２−３…エンコーダ、
８０２−４…乗算器、８０２−５…加算器、
８０３…ＤＬＦ、８０４…ＤＣＯ、８０５…ＤＩＶ、
＃０、＃１、＃２…１６ビットエンコーダ、
＃１１、＃１２…エンコーダ間エラー検出回路、
＃２１、＃２２…スイッチ。
【図１】
0005450126.tif 000002
【図２】
0005450126.tif 000003
【図３】
0005450126.tif 000004
【図４】
0005450126.tif 000005
【図５】
0005450126.tif 000006
【図６】
0005450126.tif 000007
【図７】
0005450126.tif 000008
【図８】
0005450126.tif 000009
【図９】
0005450126.tif 000010
【図１０】
0005450126.tif 000011
【図１１】
0005450126.tif 000012
【図１２】
0005450126.tif 000013