"カウンタクロックに従ってカウントしてカウント値を算出するカウンタ部と、前記カウント値を、少なくとも3つのサンプリングクロックで取り込むサンプリング部と、前記少なくとも3つのサンプリングクロックで取り込まれた少なくとも3つのサンプリング値を、前記少なくとも3つのサンプリングクロックにおけるタイミングのずれにより判定する判定部と、を有することを特徴とするカウンタ回路。前記少なくとも3つのサンプリングクロックは、前記カウンタクロックの周期に同期したタイミングを有する連続したクロックである、ことを特徴とする請求項1に記載のカウンタ回路。前記判定部は、前記少なくとも3つのサンプリング値における第1および第2サンプリング値が、当該第1および第2サンプリング値を取り込んだ第1および第2サンプリングクロックにおけるタイミングのずれに対応するときに、前記第1サンプリング値を、前記カウンタ部における正しいカウント値と判定して出力する、ことを特徴とする請求項1または請求項2に記載のカウンタ回路。請求項1乃至請求項3のいずれか1項に記載のカウンタ回路を有することを特徴とするオールデジタルPLL。カウンタクロックに従ってカウントしてカウント値を算出し、前記カウント値を、少なくとも3つのサンプリングクロックで取り込み、前記少なくとも3つのサンプリングクロックで取り込まれた少なくとも3つのサンプリング値を、前記少なくとも3つのサンプリングクロックにおけるタイミングのずれにより判定および補正を行う、ことを特徴とするカウンタ回路のサンプリング補正方法。従来、カウンタ回路としては、同期式カウンタ回路および非同期式カウンタ回路の2種類が知られている。同期式カウンタ回路の出力は、クロックと同期しているため、その出力のサンプリングは、同期したクロックでサンプリングすれば問題は生じない。しかしながら、同期式カウンタ回路において、一番長い信号経路クリティカルパス:criticalpathは、例えば、カウントするフリップフロップの段数に従って延びるため、高い周波数の動作には向いていない。さらに、全てのクロックを一番高い周波数のクロックでドライブするために、消費電力が大きくなり、また、電源ノイズも大きくなる。一方、非同期式カウンタ回路では、上述したような同期式カウンタ回路における問題は存在しない。しかしながら、例えば、各段フリップフロップが前段の出力をクロックとして使用するため、遅延が各段により積分されることになる。そして、遅延が大きくなると、レースraceの問題が生じる。このレースの状態が生じると、各段の出力を正しくサンプリングすることが困難になる。一実施形態によれば、カウンタクロックに従ってカウントしてカウント値を算出するカウンタ部と、サンプリング部と、判定部と、を有することを特徴とするカウンタ回路が提供される。前記サンプリング部は、前記カウント値を、少なくとも3つのサンプリングクロックで取り込む。前記判定部は、前記少なくとも3つのサンプリングクロックで取り込まれた少なくとも3つのサンプリング値を、前記少なくとも3つのサンプリングクロックにおけるタイミングのずれにより判定する。開示のカウンタ回路およびカウンタ回路のサンプリング補正方法は、遅延が積分されてレースが生じても、正しいカウント値を出力することができるという効果を奏する。まず、カウンタ回路およびカウンタ回路のサンプリング補正方法の実施例を詳述する前に、同期式カウンタ回路および非同期式カウンタ回路、並びに、それらの問題点を図1~図4を参照して説明する。図1は、同期式カウンタ回路の一例を示す図であり、また、図2は、図1のカウンタ回路の動作を説明するためのタイミング図である。なお、説明を簡略化するために、図1では、Q0~Q3を示しているが、図2では、Q0~Q2のみを示している。図1に示されるように、同期式カウンタ回路は、カウンタ部111およびサンプラ部112を有し、カウンタ部111でカウントした値をサンプラ部112でサンプリングして出力するようになっている。カウンタ部111は、フリップフロップU0,U1,U2,U3、エクスクルーシブオアゲートEXOR1,EXOR2,EXOR3、並びに、アンドゲートAND2,AND3を有する。ここで、フリップフロップU0~U3のクロック入力CKには、カウンタクロックCK-DCOが供給されている。カウンタ部111において、初段のフリップフロップU0のD入力には、そのフリップフロップU0のNQ出力Q出力の反転が供給され、また、2段目のフリップフロップU1のD入力には、EXOR1の出力が供給されている。EXOR1は、U0のQ出力Q0およびU1のQ出力Q1を受け取り、それらの排他的論理和を出力する。さらに、カウンタ部111において、3段目および4段目のフリップフロップU2,U3のD入力には、それぞれEXOR2,EXOR3の出力が供給されている。各EXOR2,EXOR3は、それぞれU2,U3のQ出力Q2,Q3およびAND2,AND3の出力を受け取り、それらの排他的論理和を出力する。ここで、AND2は、U0のQ出力Q0およびU1のQ出力Q1を受け取り、それらの論理積を出力し、また、AND3は、AND2の出力およびU2のQ出力Q2を受け取り、それらの論理積を出力する。サンプラ部112は、フリップフロップV0,V1,V2,V3を有し、カウンタ部111の各フリップフロップU0,U1,U2,U3のQ出力Q0,Q1,Q2,Q3を、対応するフリップフロップV0,V1,V2,V3のD入力で受け取る。ここで、V0~V3のクロック入力CKには、サンプリングクロックRef-CKが供給され、このRef-CKによりそれぞれQ0~Q3を取り込んで、V0~V3のQ出力からサンプリング出力S0~S3を出力するようになっている。図1のカウンタ部111において、太い実線で示す各フリップフロップU0~U3に対するカウンタクロックCK-DCOの経路は、正しくサンプリングを行うために、カウントするフリップフロップを通るのに必要な遅延パスを示す。また、破線で示すU0→AND2→AND3→EXOR3→U3の経路は、データ信号のクリティカルパスに相当し、サンプリングクロックRef-CKの1周期以内に最終段のフリップフロップU3に到達する必要がある。さらに、一点鎖線で示す経路は、最終段のフリップフロップU3に対してカウンタクロックCK-DCOが供給される一番早い信号パスを示す。そして、サンプラ部112において、二点鎖線で示す経路は、最終段のフリップフロップV3に対するサンプリングクロックRef-CKのパスを示す。図1に示されるように、同期式カウンタ回路では、カウンタ部111におけるフリップフロップU0~U3のクロック入力CKには、全てカウンタクロックCK-DCOが供給されている。そのため、図2に示されるように、例えば、サンプリングクロックRef-CKの立ち上がりタイミングでU0~U2のQ出力Q0~Q2を取り込むと、最上位ビットMSBから0,0,0になるサンプリング出力S0~S2が得られる。しかしながら、同期式カウンタ回路において、一番長い信号経路クリティカルパス:図1中の破線で示すU0→AND2→AND3→EXOR3→U3の経路は、カウントするフリップフロップの段数に従って延びるため、高い周波数の動作には向いていない。すなわち、図1中の破線で示すクリティカルパスは、Ref-CKの1周期以内に最終段のフリップフロップU3に到達する必要があるが、フリップフロップの段数が増加すると、Ref-CKの1周期以内に最終段のフリップフロップに到達しなくなってしまう。さらに、同期式カウンタ回路は、全てのクロックを一番高い周波数のクロックでドライブするため、消費電力が大きくなり、また、電源ノイズも大きくなるという課題がある。図3は、非同期式カウンタ回路の一例を示す図であり、また、図4は、図3のカウンタ回路の動作を説明するためのタイミング図である。なお、説明を簡略化するために、図3では、Q0~Q3を示しているが、図4では、Q0~Q2のみを示している。図3に示されるように、非同期式カウンタ回路は、カウンタ部211およびサンプラ部212を有し、カウンタ部211でカウントした値をサンプラ部212でサンプリングして出力するようになっている。カウンタ部211は、フリップフロップU0,U1,U2,U3を有し、また、サンプラ部212は、フリップフロップV0,V1,V2,V3を有する。ここで、カウンタ部211において、初段のフリップフロップU0のクロック入力CKには、カウンタクロックCK-DCOが供給され、また、フリップフロップU1のクロック入力CKには、前段のフリップフロップU0のNQ出力が供給されている。同様に、フリップフロップU2のクロック入力CKには、前段のフリップフロップU1のNQ出力が供給され、そして、フリップフロップU3のクロック入力CKには、前段のフリップフロップU2のNQ出力が供給されている。ここで、各段のフリップフロップU0~U3において、D入力には、そのフリップフロップU0~U3のNQ出力が供給されている。サンプラ部212は、図1のサンプラ部112と同様に、カウンタ部211の各フリップフロップU0,U1,U2,U3のQ出力Q0,Q1,Q2,Q3を、対応するフリップフロップV0,V1,V2,V3のD入力で受け取るようになっている。また、V0~V3のクロック入力CKには、サンプリングクロックRef-CKが供給され、このRef-CKによりそれぞれQ0~Q3を取り込んで、V0~V3のQ出力からサンプリング出力S0~S3を出力するようになっている。図3のカウンタ部211において、太い実線で示す各フリップフロップU0~U3に対するカウンタクロックCK-DCOの経路は、正しくサンプリングを行うために、カウントするフリップフロップを通るのに必要な遅延パスを示す。すなわち、この遅延パスは、2段目以降のフリップフロップU1,U2,U3において、前段のフリップフロップU0,U1,U2の各NQ出力からU1,U2,U3の各クロック入力CKへのパスになる。また、破線で示すフリップフロップU0のNQ出力→U0のD入力の経路は、データ信号のクリティカルパスに相当し、サンプリングクロックRef-CKの1周期以内にそのフリップフロップU0のNQ出力からD入力に到達する必要がある。なお、このパスは、各フリップフロップU0~U3において形成されることになる。さらに、一点鎖線で示す経路は、初段のフリップフロップU0のクロック入力CKに対してカウンタクロックCK-DCOが供給される一番早い信号パスを示す。そして、サンプラ部212において、二点鎖線で示す経路は、最終段のフリップフロップV3に対するサンプリングクロックRef-CKのパスを示す。このように、非同期式カウンタ回路では、前述したような同期式カウンタ回路における問題は存在しない。図3に示されるように、非同期式カウンタ回路は、カウンタ部211において、初段のフリップフロップU0のクロック入力CKにはCK-DCOが供給されるが、2段目以降のU1~U3のクロック入力CKには、前段のU0~U2のNQ出力が供給されている。すなわち、各段フリップフロップが前段の出力をクロックとして使用するため、遅延が各段により積分順に加算されることになるため、遅延が大きくなると、レースraceの問題が生じる。このレースの状態が生じると、各段の出力を正しくサンプリングすることが困難になる。ここで、各段の遅延時間tdは、フリップフロップU0~U2により順に加算される。具体的に、例えば、フリップフロップU0のQ出力Q0がtdの遅延を含んでいたのが、U1のQ出力Q1は、2tdの遅延を含み、さらに、U2のQ出力Q2は、3tdの遅延を含むことになる。すなわち、図4に示されるように、サンプラ部212のフリップフロップV0~V2が、Ref-CKの立ち上がりタイミングでQ0~Q2を取り込むとき、順に加算された遅延時間td,2td,3tdに起因して正しいカウント値を取り込むことができない。これは、入力クロックから遠いフリップフロップの方か積分された遅延が多いため、通常、入力クロックから遠いフリップフロップの出力にエラーが生じる虞が高くなる。すなわち、図3および図4の例では、例えば、カウンタ部211のフリップフロップU2の方がCK-DCOが入力されるU0やU1よりも遠いため、積分された遅延が多くなり、出力Q2の方が出力Q0やQ1よりもレースが起こり易くなる。具体的に、図4の場合には、MSBから0,0,0になるべきサンプリング出力S0~S2が1,1,0になっている。これは、遅延が各段により積分されてレースが生じ、サンプリング出力S0~S2が誤ったものになっている。以下、カウンタ回路およびカウンタ回路のサンプリング補正方法の実施例を、添付図面を参照して詳述する。図5は、本実施例のカウンタ回路を示す図である。図5において、参照符号11はカウンタ部を示し、また、12はサンプラ部を示し、そして、13は判定部を示す。図5に示されるように、本実施例のカウンタ回路は、非同期式カウンタ回路であり、カウンタ部11,サンプラ部12および判定部13を有し、また、カウンタ部11は、フリップフロップU0,U1,U2,...,UN1を有する。ここで、初段のフリップフロップU0のクロック入力CKには、カウンタクロックCK-DCOが供給され、また、フリップフロップU1のクロック入力CKには、前段のフリップフロップU0のNQ出力が供給されている。同様に、フリップフロップU2,U3,...,UN1のクロック入力CKには、それぞれ前段のフリップフロップU1,U2,...,UN2のNQ出力が供給されている。ここで、各段のフリップフロップU0~UN1において、D入力には、そのフリップフロップU0~UN1のNQ出力が供給されている。サンプラ部12は、フリップフロップW0,W1,W2、VA0~VAN1、VB0~VBN1、および、VC0~VCN1を有する。ここで、フリップフロップW0,W1,W2は、サンプリングクロックRef-CK0,Ref-CK1,Ref-CK2を生成するためのものである。すなわち、フリップフロップW0のD入力には、サンプリングクロックRef-CKが供給され、また、W0のクロック入力CKには、カウンタクロックCK-DCOが供給されている。また、フリップフロップW1のD入力には、フリップフロップW0のQ出力が供給され、また、フリップフロップW2のD入力には、フリップフロップW1のQ出力が供給されている。なお、W1およびW2のクロック入力CKには、カウンタクロックCK-DCOが供給されている。ここで、フリップフロップW0のQ出力は、フリップフロップVA0~VAN1に対する第1サンプリングクロックRef-CK0として使用され、また、W1のQ出力は、VB0~VBN1に対する第2サンプリングクロックRef-CK1として使用される。さらに、W2のQ出力は、VC0~VCN1に対する第3サンプリングクロックRef-CK2として使用される。なお、第1,第2および第3サンプリングクロックRef-CK0,Ref-CK1およびRef-CK2は、カウンタクロックCK-DCOの周期に同期した立ち上がりタイミングを有する連続した3つのサンプリングクロックになっている。すなわち、第1サンプリングクロックRef-CK0と第2サンプリングクロックRef-CK1のタイミング立ち上がりタイミングは、カウンタクロックCK-DCOの1周期分だけずれている。また、第2サンプリングクロックRef-CK1と第3サンプリングクロックRef-CK2のタイミングも、カウンタクロックCK-DCOの1周期分だけずれている。このように、サンプラ部12は、第1~第3サンプリングクロックRef-CK0~2がクロック入力CKに供給された第1~第3サンプラユニットフリップフロップVA0~VAN1,VB0~VBN1,VC0~VCN1を有する。各サンプラユニットVA0~VAN1,VB0~VBN1,VC0~VCN1は、前述した図1および図3に示すサンプラ部112および212に相当し、それぞれカウンタ部11のフリップフロップU0~UN1のQ出力Q1~QN1を取り込む。すなわち、第1サンプラユニットにおけるVA0~VAN1のD入力は、カウンタ部11のU0~UN1のQ出力に接続され、第1サンプリングクロックRef-CK0の立ち上がりタイミングでデータQ1~QN1を取り込む。また、第2サンプラユニットにおけるVB0~VBN1のD入力は、カウンタ部11のU0~UN1のQ出力に接続され、第2サンプリングクロックRef-CK1の立ち上がりタイミングでデータQ1~QN1を取り込む。さらに、第3サンプラユニットにおけるVC0~VCN1のD入力は、カウンタ部11のU0~UN1のQ出力に接続され、第3サンプリングクロックRef-CK2の立ち上がりタイミングでデータQ1~QN1を取り込む。なお、第1サンプリングクロックRef-CK0,第2サンプリングクロックRef-CK1および第3サンプリングクロックRef-CK2は、カウンタクロックCK-DCOの周期に同期した連続する3つのサンプリングクロックになっている。判定部13は、第1サンプラユニットのサンプリング出力SA0~SAN1,第2サンプラユニットのサンプリング出力SB0~SBN1および第3サンプラユニットのサンプリング出力SC0~SCN1を受け取り、後述する判定を行って出力OUTを出力する。なお、判定部13は、サンプリング出力SA0~SAN1,SB0~SBN1およびSC0~SCN1だけでなく、後に、図7を参照して説明するように、サンプリング出力SD0~SDN1等を受け取ることもある。ここで、カウンタクロックCK-DCOが入力するフリップフロップU0に対して、より遠くのフリップフロップUN1に近いフリップフロップ:最上位ビットMSB側のフリップフロップの方か積分された遅延が多くなる。そのため、MSB側のフリップフロップ程、その出力に誤りレースが生じ易い。また、通常、非同期カウンタはバイナリーカウンタになるため、MSB側のフリップフロップ程、その出力が変化する確率は小さくなる。このフリップフロップの出力Q0~QN1の変化確率は、バイナリの場合、1/2kになる。ここで、kは、カウンタ部11におけるフリップフロップの位置である。さらに、例えば、レースが生じても、全ての出力データの値が誤っている訳ではなく、サンプラ部12におけるサンプリングの瞬間に、その出力データの値が積分された遅延に関わらず変化しなければ、レースがあっても問題はない。具体的に、後述する図6の例では、サイクル0のQ2,Q3、サイクル4のQ2、サイクル8のQ2,Q3、並びに、サイクル12のQ2の値が誤っている。すなわち、これら全てのエラーは、積分された遅延によって、Q2とQ3の値の変化するタイミングがずれたことにより生じているのが分かる。従って、本実施例では、カウンタ部11の出力Q0~QN1を、サンプラ部12で1回のサンプリングクロックで取り込むのではなく、複数回少なくとも3回のサンプリングクロックで取り込んで、正しいカウント値を求めるようになっている。なお、図5では、3つのサンプリングクロックで制御される3つのサンプラユニットが設けられているが、これは、1つのサンプラユニットに対して複数の異なるタイミングのサンプリングクロックを供給してもよいのはもちろんである。図6および図7は、図5のカウンタ回路の動作を説明するためのタイミング図である。なお、図5のカウンタ回路は、Nビットを処理するようになっているが、図6および図7では、説明を簡略化するために、Q0~Q3の4ビットのみを示している。図5に示されるように、例えば、フリップフロップU0~U3のQ出力Q0~Q3は、3つのサンプラユニットVA0~VA3,VB0~VB3,VC0~VC3に取り込まれ、それぞれサンプリング出力として出力される。図6の例では、連続する3つのサイクル8,9,10において、サンプリングクロックRef-CK0,1,2により3つのサンプラユニットで出力Q0~Q3を取り込む。すなわち、図6に示されるように、第1サンプラユニットのサンプリング出力SA3~SA0は、フリップフロップVA3~VA0のQ出力になり、MSBから0,1,0,0になる。また、第2サンプラユニットのサンプリング出力SB3~SB0は、フリップフロップVB3~VB0のQ出力になり、MSBから1,0,0,1になる。さらに、第3サンプラユニットのサンプリング出力SC3~SC0は、フリップフロップVC3~VC0のQ出力になり、MSBから1,0,1,0になる。ところで、前述したように、後段のカウンタフリップフロップの出力ほど、1段の遅延時間tdが順に加算積分されて遅延が大きくなるが、レースが生じた場合でも、全ての信号サンプリング出力が間違っている訳ではない。具体的に、上述した連続する3つのサンプリングクロックRef-CK0,1,2による3つのサンプリング出力において、1,0,0,1のサンプリング出力SB3~SB0と、1,0,1,0のサンプリング出力SC3~SC0は連続している。すなわち、サンプリング出力SB3~SB0の1,0,0,1に対して1を加えたものがサンプリング出力SC3~SC0の1,0,1,0になっている。従って、この場合、サンプリング出力SA3~SA0の0,1,0,0には、レースによる誤りが含まれていると判断し、サンプリング出力SB3~SB0およびSC3~SC0による値を正しいカウント値として使用する。具体的に、サンプリング出力SB3~SB0の値1,0,0,1が正しいカウント値なので、例えば、正しいサンプリング出力SA3~SA0の値として、SB3~SB0の値1,0,0,1から1を引いた1,0,0,0を出力する。ここで、図示の値とは異なるが、例えば、SA3~SA0が1,0,0,0、SB3~SB0が0,0,0,1、SC3~SC0が1,0,1,0の場合、Ref-CK0と2はCK-DCOの2周期分ずれているので、正しいカウント値と判断する。すなわち、サンプリング出力SA3~SA0の1,0,0,0に対して2を加えたものがサンプリング出力SC3~SC0の1,0,1,0になっているため、SA3~SA0およびSC3~SC0による値を正しいカウント値として使用することになる。このとき、サンプリング出力SA3~SA0の値1,0,0,0を出力することになる。ここで、図5および図6の例では、3回のサンプリングを行う場合を示しているが、このサンプリングの回数は、例えば、遅延の保証必要範囲により規定される。ただし、サンプリングを複数回行った場合、少なくとも2つの正しいサンプリング出力を得るためには、サンプリング回数を少なくとも3回に設定するのが好ましい。次に、図7に示されるように、第1サンプラユニットのサンプリング出力SA3~SA0は、フリップフロップVA3~VA0のQ出力になり、MSBから0,1,1,0になる。また、第2サンプラユニットのサンプリング出力SB3~SB0は、フリップフロップVB3~VB0のQ出力になり、MSBから1,0,0,1になる。さらに、第3サンプラユニットのサンプリング出力SC3~SC0は、フリップフロップVC3~VC0のQ出力になり、MSBから1,0,1,0になる。なお、図7では、さらに、第4サンプリングクロックRef-CK3により駆動される第4サンプラユニット図示しないを考え、この第4サンプラユニットのサンプリング出力SD3~SD0を示している。具体的に、第4サンプラユニットのサンプリング出力SD3~SD0は、フリップフロップVD3~VD0のQ出力になり、MSBから1,0,1,1になる。従って、上述した連続する4つのサンプリングクロックRef-CK0~3による4つのサンプリング出力において、1,0,0,1、1,0,1,0および1,0,1,1のサンプリング出力が正しいカウント値であることが分かる。すなわち、サンプリング出力SB3~SB0,SC3~SC0およびSD3~SD0による値を正しいカウント値として使用することになる。ここで、図7の例では、サイクル0,1,4,8,12のQ0,Q1,Q2,Q3の値が誤っている。すなわち、サンプリング出力SB3~SB0の値1,0,0,1が正しいカウント値なので、例えば、正しいサンプリング出力SA3~SA0の値として、SB3~SB0の値1,0,0,1から1を引いた1,0,0,0を出力する。なお、例えば、SA3~SA0の値とSC3~SC0の値がCK-DCOの2周期に相当する2だけずれている場合、或いは、SA3~SA0の値とSD3~SD0の値がCK-DCOの3周期に相当する3だけずれている場合も正しいカウント値と判断する。ここで、サンプリングクロックRef-CKは、必ずしもカウンタクロックCK-DCOの1周期ごとに変化する必要はない。例えば、サンプリングクロックRef-CKがカウンタクロックCK-DCOの2周期ごとに変化する場合、その連続するサンプリングクロックにより取り込まれたカウント値が2だけ異なるものを正しいカウント値と判断する。具体的に、図6において、Ref-CK1と2の立ち上がりタイミングが、CK-DCOの2周期ずれている場合、SB3~SB0がMSBから1,0,0,1のとき、SC3~SC0がMSBから1,0,1,1ならば、正しいカウント値と判断する。すなわち、2だけずれていれば正しいことになる。このとき、サンプリング出力SB3~SB0の値1,0,0,1が正しいカウント値なので、例えば、正しいサンプリング出力SA3~SA0の値として、SB3~SB0の値1,0,0,1から1を引いた1,0,0,0を出力する。このように、カウンタ部11のカウント出力Q0~QN1を取り込むサンプリングクロックRef-CKの数は3つ以上であればよく、また、Ref-CKの間隔は、CK-DCOの任意の周期でよい。なお、Ref-CKにより取り込まれたサンプリング値は、Ref-CKの間隔により規定されるカウント値の差を有する場合に正しいカウント値と判断されることになる。図8は、本実施例のカウンタ回路における処理の一例を示すフローチャートである。ここで、参照符号SAは、図5におけるサンプリング出力SA0~SAN1、或いは、図6および図7におけるSA0~SA3に対応し、また、SBは、図5におけるSB0~SBN1、或いは、図6および図7におけるSB0~SB3に対応する。さらに、参照符号SCは、図5におけるSC0~SCN1、或いは、図6および図7におけるSC0~SC3に対応する。図8に示されるように、カウンタ回路のサンプリング補正処理の一例が開始すると、ステップST11において、SAとSBが連続しているかどうかを判定する。すなわち、例えば、SAのサンプリングクロックRef-CK0とSBのRef-CK1がカウンタクロックCK-DCOの1周期分の差異を有している場合、SBから1を減算したものがSAになっているかどうかを判定する。ステップST11において、SAとSBが連続していると判定すると、ステップST12に進んで、SAの値を出力OUT=SAする。また、ステップST11において、SAとSBが連続していないと判定すると、ステップST13に進んで、SC-SAが2になっているかどうかを判定する。すなわち、ステップST13では、例えば、SAのRef-CK0とSCのRef-CK2がCK-DCOの2周期分の差異を有している場合、SCから2を減算したものがSAになっているかどうかを判定する。ステップST13において、SC-SA=2であると判定すると、ステップST12に進んで、SAの値を出力OUT=SAする。また、ST13において、SC-SA=2ではないと判定すると、ステップST14に進む。ステップST14では、SBとSCが連続しているかどうかを判定する。すなわち、前述したステップST11におけるSAとSBが連続しているかどうかの判定と同様に、SBとSCが連続しているかどうかの判定を行う。ステップST14において、SBとSCが連続していると判定すると、すなわち、SCから1を減算したものがSBになっていると判定すると、ステップST15に進み、SBから1を減算したものを出力OUT=SB-1する。なお、ステップST14において、SBとSCが連続していないと判定すると、ステップST16に進んで、出力をデフォルト値OUT=DefValとして処理を終了する。通常、処理がステップST12またはST15で終了し、ステップST16まで進まないように設計する。図9は、本実施例のカウンタ回路におけるサンプリング補正処理の他の例を示すフローチャートであり、図8の処理を一般化したものに相当する。ここで、上述した図8におけるSA,SB,SCは、例えば、S0,S1,S2に対応する。図9に示されるように、カウンタ回路のサンプリング補正処理の他の例が開始すると、ステップST21において、ModSn-Sni,N=iが成立するかどうかを判定する。すなわち、ステップST21では、Sn-SniをNで割った余りがiに等しいかどうかを判定する。ここで、Modfun,Nは、fun≧0ならば、Modfun,N=funになり、また、fun<0ならば、Modfun,N=Nfunになる。ここで、Modfun,Nの値は、常に、0~Nの間に存在する。また、初期条件として、n=1,i=1とする。さらに、Nは、カウンタの最大カウント値であり、例えば、図7の例では、0~15サイクルで1つずつインクリメントするN=24=16となる。具体的に、ステップST21では、初期条件がn=1,i=1、例としてN=16を考えると、カウンタの出力S0=16,S1=1なので、ModSn-Sni,Nは、ModS1-S0,N=Mod1-16,16=1=iとなる。この場合、ステップST21において、ModSn-Sni,N=iが成立すると判定し、ステップST22に進んで、ModSn-n,Nの値を出力OUT=ModSn-n,Nする。一方、ステップST21において、ModSn-Sni,N=iが成立しないと判定すると、ステップST23に進んで、n=N-1が成立するかどうかを判定する。ステップST23において、n=N-1が成立しないと判定すれば、nを1インクリメントn=n1して、上述したステップST21に戻る。すなわち、ステップST21では、例えば、ModS2-S1,Nが1であるかどうかを判定する。一方、ステップST23において、n=N-1が成立すると判定すれば、ステップST24に進み、i=N-1が成立するかどうかを判定し、i=N-1が成立しないと判定すれば、i=i1,n=iとして、上述したステップST21に戻る。すなわち、ステップST21では、例えば、ModS2-S0,Nが2であるかどうかを判定する。なお、ステップST24において、i=N-1が成立すると判定すれば、ステップST25に進んで、出力をデフォルト値OUT=DefValとして処理を終了する。通常、処理がステップST22で終了し、ステップST24まで進まないように設計する。図10は、本実施例のカウンタ回路におけるサンプリング補正処理のさらに他の例を示すフローチャートであり、上述した図9のサンプリング補正処理において、kmat回だけカウント値が正しくなるかどうかを判定する処理を追加したものに相当する。すなわち、図10の例は、サンプリング出力において、偶然に複数のエラーが重なった場合でも、カウント値がkmat回だけ正しいと判定される条件を追加することで、より正しい結果を得るようにしたものである。換言すると、図9の例は、iまたはnの値を変化させ、どちらかの条件が満たされれば、結果が出力されるのに対して、図10の例では、その条件がkmat回だけ満たされないと結果が出力されないようになっている。図10に示されるように、カウンタ回路のサンプリング補正処理のさらに他の例が開始すると、ステップST31において、ModSn-Sni,N=iが成立するかどうかを判定する。ここで、初期条件として、n=1,i=1,k=0としている。従って、ステップST31では、ModS1-S0,N=iが成立するかどうかを判定する。ステップST31において、ModSn-Sni,N=iが成立すると判定すると、ステップST32に進んで、kがkmatに等しいk=kmatかどうかを判定する。すなわち、ステップST31におけるModSn-Sni,N=iがkmat回成立するかどうかを判定する。ステップST32において、k=kmatが成立しない、すなわち、まだkmat回成立していないと判定すると、n=n1として、ステップST31に戻る。すなわち、ステップST31では、例えば、ModS2-S1,N=iが成立するかどうかを判定する。そして、ステップST32において、k=kmatが成立すると判定すると、ステップST33に進んで、ModSn-n,Nの値を出力OUT=ModSn-n,Nする。一方、ステップST31において、ModSn-Sni,N=iが成立しないと判定すると、ステップST34に進み、n=N-1が成立するかどうかを判定する。ここで、Nは、カウンタの最大カウント値であるのは、図9を参照して説明した通りである。ステップST34において、n=N-1が成立しないと判定すれば、nを1インクリメントn=n1して、上述したステップST31に戻る。すなわち、ステップST31では、例えば、ModS2-S1,Nが1であるかどうかを判定する。一方、ステップST34において、n=N-1が成立すると判定すれば、ステップST35に進み、i=N-1が成立するかどうかを判定し、i=N-1が成立しないと判定すれば、i=i1,n=iとして、上述したステップST31に戻る。すなわち、ステップST31では、例えば、ModS2-S0,Nが2であるかどうかを判定する。なお、ステップST35において、i=N-1が成立すると判定すれば、ステップST36に進んで、出力をデフォルト値OUT=DefValとして処理を終了する。通常、処理がステップST33で終了し、ステップST36まで進まないように設計する。このように、図10に示すカウンタ回路のサンプリング補正処理は、上述した図9に示すカウンタ回路のサンプリング補正処理に対して、ModSn-Sni,N=iがkmat回成立するかどうかを判定するステップST32を追加したものに相当する。そして、図10のサンプリング補正処理によれば、例えば、偶然に複数のエラーが重なった場合でも、kmat回成立するかどうかを判定することにより、図9のサンプリング補正処理よりも正しいカウント値を出力することが可能になる。図11は、本実施例のカウンタ回路を適用したADPLLの一例を示すブロック図である。図11において、参照符号2は、キャリブレーション部を示し、また、3は、オールデジタルPLLADPLL:AllDigitalPhaseLockedLoopを示す。ここで、本実施例のカウンタ回路は、キャリブレーション部2およびADPLL3におけるカウンタ31に対応する。また、カウンタクロックCK-DCOは、DCODigitallyControlledOscillator36の出力クロックに対応し、また、サンプリングクロックRef-CKは、カウンタ31およびTDC32に供給されるクロックに対応する。図11に示されるように、キャリブレーション部2は、微分回路21,デジタルループフィルタ22,メモリ23,加算器24および判定回路25を有する。また、ADPLL3は、カウンタ31,TDCTimetoDigitalConverter32,デコーダ33,加算器34,デジタルループフィルタ35およびDCO36を有する。微分回路21は、カウンタ31の出力Cn,Cn1例えば、前述したSn,Sn1に対応を微分ModBCn-Cn1する。デジタルループフィルタ22は、その微分された出力を平均化してメモリ23に格納すると共に、加算器24に供給する。加算器24は、メモリ23に格納された第1の値から、デジタルループフィルタ22から出力された第2の値を減算し、その加算器24の出力減算結果が判定回路25で判定される。ここで、初期状態において、キャリブレーション部2は、例えば、最大のサンプリング回数によりADPLL3をロックし、上述したメモリ23に格納された値とデジタルループフィルタ22の出力が一致すれば、順にサンプリング回数を低減させる。すなわち、判定回路25に供給される加算器24の出力において、差分が小さければ、サンプリング回数を低減し、逆に、差分が大きければ、サンプリング回数を増大して、キャリブレーション部2のキャリブレーション処理を停止する。なお、ADPLL3において、TDC32,デコーダ33,加算器34,デジタルループフィルタ35およびDCO36は、従来から知られているものをそのまま適用することができ、これにより、すべてデジタル化した位相同期回路PLLが構成される。以上において、本実施例のカウンタ回路は、図11のようなADPLLへの適用に限定されるものではなく、例えば、無線回路システムの周波数シンセサイザやプロセッサなどのクロック等として、様々な回路に適用することができる。以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。付記1カウンタクロックに従ってカウントしてカウント値を算出するカウンタ部と、前記カウント値を、少なくとも3つのサンプリングクロックで取り込むサンプリング部と、前記少なくとも3つのサンプリングクロックで取り込まれた少なくとも3つのサンプリング値を、前記少なくとも3つのサンプリングクロックにおけるタイミングのずれにより判定する判定部と、を有することを特徴とするカウンタ回路。付記2前記少なくとも3つのサンプリングクロックは、前記カウンタクロックの周期に同期したタイミングを有する連続したクロックである、ことを特徴とする付記1に記載のカウンタ回路。付記3前記判定部は、前記少なくとも3つのサンプリング値における第1および第2サンプリング値が、当該第1および第2サンプリング値を取り込んだ第1および第2サンプリングクロックにおけるタイミングのずれに対応するときに、前記第1サンプリング値を、前記カウンタ部における正しいカウント値と判定して出力する、ことを特徴とする付記1または付記2に記載のカウンタ回路。付記4前記第1および第2サンプリングクロックにおけるタイミングのずれは、前記カウンタクロックの任意の第1周期であり、前記第1および第2サンプリング値は、前記カウンタクロックの前記第1周期に対応したカウント値だけずれている、ことを特徴とする付記3に記載のカウンタ回路。付記5前記第1および第2サンプリングクロックにおけるタイミングのずれは、前記カウンタクロックの1周期であり、前記第1および第2サンプリング値は、カウント値1だけずれている、ことを特徴とする付記4に記載のカウンタ回路。付記6前記判定部は、前記第1および第2サンプリング値と、当該第1および第2サンプリング値を取り込んだ前記第1および第2サンプリングクロックにおけるタイミングのずれとの対応および判定を、異なる第1サンプリング値に対して複数回行う、ことを特徴とする付記3乃至付記5のいずれか1項に記載のカウンタ回路。付記7付記1乃至付記6のいずれか1項に記載のカウンタ回路を有することを特徴とするオールデジタルPLL。付記8カウンタクロックに従ってカウントしてカウント値を算出し、前記カウント値を、少なくとも3つのサンプリングクロックで取り込み、前記少なくとも3つのサンプリングクロックで取り込まれた少なくとも3つのサンプリング値を、前記少なくとも3つのサンプリングクロックにおけるタイミングのずれにより判定および補正を行う、ことを特徴とするカウンタ回路のサンプリング補正方法。付記9前記少なくとも3つのサンプリングクロックは、前記カウンタクロックの周期に同期したタイミングを有する連続したクロックである、ことを特徴とする付記8に記載のカウンタ回路のサンプリング補正方法。付記10前記判定および補正を行うのは、前記少なくとも3つのサンプリング値における第1および第2サンプリング値が、当該第1および第2サンプリング値を取り込んだ第1および第2サンプリングクロックにおけるタイミングのずれに対応するときに、前記第1サンプリング値を、前記カウンタ部における正しいカウント値と判定して補正を行う、ことを特徴とする付記8または付記9に記載のカウンタ回路のサンプリング補正方法。付記11前記第1および第2サンプリングクロックにおけるタイミングのずれは、前記カウンタクロックの任意の第1周期であり、前記第1および第2サンプリング値は、前記カウンタクロックの前記第1周期に対応したカウント値だけずれている、ことを特徴とする付記9に記載のカウンタ回路のサンプリング補正方法。"