マイクロコンピュータやシステムLSIに搭載するアナログ−デジタル変換器(ADC)は、小型化および高精度化の観点から逐次比較型が多く用いられている。
図1は、従来の逐次比較型ADCの構成例を示すブロック図である。また、図2は、逐次比較型ADCにおける変換動作を説明する図である。
図1に示すように、従来の逐次比較型ADCは、比較器12と、逐次比較制御回路13と、DA変換器(デジタル−アナログ変換器)14と、を備える。入力アナログ信号SAは、例えば、サンプルホールド回路11で一旦保持され、入力信号Vinとして比較器12に入力される。
図2に示すように、逐次比較型ADCは、nビット(ここでは8ビット)の分解能を備え、フルスケール電圧がVFSであるとする。1ステップ目に、逐次比較制御回路13は、1ビット目(b1)のビット値が“1”で、2ビット目以降(b2〜bn)のビット値が“0”であるデジタル信号を出力し、DA変換器14はこのデジタル信号に対応した電圧の参照アナログ信号Vrefを発生して出力する。1ステップ目の参照アナログ信号Vrefの電圧は、VFS/2である。比較器12は、入力信号Vinの電圧を参照アナログ信号Vrefの電圧と比較し、比較結果を出力する。逐次比較制御回路13は、比較結果に基づいて、1ビット目(b1)のビット値を決定する。例えば、VinがVrefより大きければb1を“1”に、VinがVrefより小さければb1を“0”に決定する。図2では、b1は“1”である。以下の説明で、比較器が比較すると記載する場合は、電圧を比較することを示し、DA変換器がデジタル信号に対応した参照アナログ信号を発生する場合は、デジタル信号に対応した電圧の参照アナログ信号を発生することを示すものとする。
2ステップ目に、逐次比較制御回路13は、b1が1ステップ目に決定した値(ここでは“1”)で、2ビット目(b2)のビット値が“1”で、3ビット目以降(b3〜bn)のビット値が“0”であるデジタル信号を出力し、DA変換器14はこのデジタル信号に対応した参照アナログ信号Vrefを発生して出力する。図2の例では、2ステップ目の参照アナログ信号Vrefは、3VFS/4である。比較器12は、入力信号Vinを参照アナログ信号Vrefと比較し、比較結果を出力する。逐次比較制御回路13は、比較結果に基づいて、2ビット目(b2)のビット値を決定する。例えば、VinがVrefより大きければb2を“1”に、VinがVrefより小さければb2を“0”に決定する。図2では、b2は“1”である。
以下、VrefがVinに近づくように3ビット目以降のビット値を順次決定し、nビット目(ここでは8ビット目)のビット値が決定されると、VrefがVinにもっとも近づいた状態になるので、デジタル信号をAD変換値として出力する。ここで、決定するAD変換値の最小ビットLSBに対応する電圧幅をLSBで表す場合、Vinと決定されるAD変換値の差は±LSB/2以内となる。以下の説明で最小ビットに対応する電圧幅をLSBで表す場合がある。
以上説明した参照アナログ信号Vrefを変化させる幅を、前のステップで変化させた幅の1/2に減少させながらVrefをVinに近づけるように変化させるアルゴリズムは、2進変換アルゴリズムと呼ばれる。
近年、逐次比較型ADCでも高速化が要求されている。図1の逐次比較型ADCでは、DA変換器14の出力する参照アナログ信号Vrefが十分に整定してから比較器12による比較を行わないと、判定に誤りが生じる恐れがあり、比較器12の判定が一度誤るとその修正は不可能であり、大きな変換誤差を生じる。そのため、精度を維持するには、DA変換器14の出力する参照アナログ信号Vrefが十分に整定するように各ステップの時間を長くする必要があり、高速化が難しかった。
精度維持と高速化の両方を満たすため、本出願人および本願発明者は、特許文献1で、3個の比較器を備えた逐次比較型ADCを開示している。
図3は、特許文献1に記載された3個の比較器を備えた逐次比較型ADCの構成を示すブロック図である。また、図4は、図3の逐次比較型ADCにおける変換動作を説明する図である。
図3に示すように、特許文献1に記載された逐次比較型ADCは、3個の比較器12H、12M、12Lと、逐次比較制御回路13Aと、DA変換器(デジタル−アナログ変換器)14Aと、を備える。入力アナログ信号SAは、サンプルホールド回路11で一旦保持され、入力信号Vinとして比較器12に入力される。DA変換器14Aは、異なる3つの参照アナログ信号Vh、Vm、Vlを出力する。3個の比較器12H、12M、12Lは、入力信号Vinを参照アナログ信号Vh、Vm、Vlとそれぞれ比較する。比較結果は逐次比較制御回路13Aに入力される。
図4に示すように、図3の逐次比較型ADCは、nビット(ここでは8ビット)の分解能を備え、フルスケール電圧がVFSであるとする。1ステップ目に、逐次比較制御回路13Aは、1ビット目(b1)のビット値が“1”で、2ビット目以降(b2〜bn)のビット値が“0”であるデジタル信号を出力する。DA変換器14Aは、このデジタル信号に対応した参照アナログ信号Vmと、Vmより高い電圧の参照アナログ信号Vhと、Vmより低い電圧の参照アナログ信号Vlと、を発生して出力する。VhとVmの差およびVhとVlの差は、2ビット目の重みに対応し、ここでは、VFS/4であり、Vh=3VFS/4およびVl=VFS/4である。
比較器12H、12M、12Lは、入力信号Vinを、3つの参照アナログ信号Vh、Vm、Vlとそれぞれ比較し、比較結果を逐次比較制御回路13Aに出力する。逐次比較制御回路13Aは、3つの比較結果に基づいて、1ビット目(b1)および2ビット目(b2)のビット値を決定する。例えば、VinがVmより大きく、Vhより小さければ、b1を“1”に、b2を“0”にする。
2ステップ目に、逐次比較制御回路13Aは、b1およびb2が1ステップ目に決定した値(ここでは“1”と“0”)で、3ビット目(b3)のビット値が“1”で、4ビット目以降(b4〜bn)のビット値が“0”であるデジタル信号を出力する。DA変換器14Aは、このデジタル信号に対応した参照アナログ信号Vm=5VFS/8と、Vh=3VFS/4と、Vl=VFS/2を発生して出力する。比較器12H、12M、12Lは、入力信号Vinを、3つの参照アナログ信号Vh、Vm、Vlとそれぞれ比較し、比較結果を逐次比較制御回路13Aに出力する。逐次比較制御回路13Aは、3つの比較結果に基づいて、3ビット目(b3)のビット値を決定する。例えば、VinがVmより小さく、Vlより大きければ、b3を“0”にする。
以下、VhとVmの差およびVmとVlの差を狭くしながら、Vh、Vm、VlがVinに近づくように4ビット目以降のビット値を順次決定し、nビット目(ここでは8ビット目)のビット値が決定されると、Vinにもっとも近いAD変換値が決定される。上記のように、1ステップ目で1ビット目(b1)および2ビット目(b2)のビット値を決定するので、ステップ数は7である。
以上のように、図3の逐次比較型ADCでは、pビット目までを決定し、p+1ビット目を決定する時には、Vm(p+1)=Vj(p)+V(p+1)とする。ここで、Vj(p)は、決定した上位からのビット数pに対するDA変換出力であり、V(p+1)は上位からp+1番目のビットの重みを持ったDA変換出力である。Vhは、Vmにp+1ビット目の重みを加えたもので、Vh(p+1)=Vm(p+1)+V(p+1)である。Vlは、Vmからp+1ビット目の重みを引いたもので、Vl(p+1)=Vm(p+1)−V(p+1)である。この3つの参照アナログ信号Vh、Vm、Vlに対する入力信号の比較を行う。入力信号VinがVh、Vm、Vlのいずれかの間にあると判定された場合、pをp+1として上記の手順を繰り返す。
2ステップ目以降、正常であれば、入力信号VinはVhとVmの間またはVmとVlの間にあるはずであるが、入力信号Vinに雑音が重畳された場合や、DA変換器の整定が不十分な場合、入力信号VinがVh以上であるまたはVl以下であると判定されることが起きる。入力信号VinがVh以上であると判定された場合には、逐次比較制御回路13Aは、Vh(p)をVj(p)とするように決定済みのビット値を補正し、Vh(p)(=Vj(p))に相当するDA変換値にV(p+1)のDA変換値を加えたDA変換値がVm(p+1)になるようにデジタル値を発生してDA変換器14Aに出力する。すなわち、Vm(p+1)=Vj(p)+V(p+1)である。同様に、入力信号VinがVl以下であると判定された場合には、逐次比較制御回路13Aは、Vl(p)をVj(p)とするように決定済みのビット値を補正し、Vl(p)(=Vj(p))に相当するDA変換値からV(p+1)のDA変換値を加えたDA変換値がVm(p+1)になるようにデジタル値を発生してDA変換器14Aに出力する。すなわち、Vm(p+1)=Vj(p)−V(p+1)である。このようにして、一度決定した上位ビットの値を後のステップで修正することが可能になり、入力信号Vinに雑音が重畳された状態や、DA変換器の整定が不十分な状態でAD変換を行って誤差が生じた場合でも、誤差を後で補正することができる。
図5は、図3の逐次比較型ADCでの誤差補正を説明する図である。問題になるのは、入力信号Vinと参照アナログ信号Vh、Vm、Vlの関係であり、参照アナログ信号Vh、Vm、Vlが変化する場合も同様である。そこで説明を簡単にするために、DA変換器14Aの出力する3つの参照アナログ信号Vh、Vm、Vlは正しく、入力信号Vinの電圧が最初の3ステップの間整定せず、徐々に増加する例を説明する。
図5に示すように、1ステップ目では、入力信号Vinは増加している途中であり、Vm(=VFS/2)とVl(=VFS/4)の間であると判定される。逐次比較制御回路13Aは、この比較結果に基づいてb1=0、b2=1と決定し、2ステップ目のデジタル値として、b1=0、b2=1、b3=1、b4〜bn=0のデジタル信号を出力する。DA変換器14Aは、このデジタル信号に対応した参照アナログ信号Vm=3VFS/8と、Vh=VFS/2と、Vl=VFS/4を発生して出力する。2ステップ目では入力信号Vinはさらに増加し、VinはVh(=VFS/2)より大きいと判定される。この比較結果は決定済みのb1=0、b2=1と矛盾するため、逐次比較制御回路13Aは、b1=1、b2=0に補正し、さらにb3=0と決定し、2ステップ目のデジタル値として、b1=1、b2=0、b3=0、b4=1、b5〜bn=0のデジタル信号を出力する。DA変換器14Aは、このデジタル信号に対応した参照アナログ信号Vm=9VFS/16と、Vh=5VFS/8と、Vl=VFS/2を発生して出力する。3ステップ目では入力信号Vinの増加は終了して安定し、Vh(=5VFS/8)とVm(=9VFS/16)の間と判定される。この比較結果は決定済みのビット値と矛盾しないので、b4=1と決定する。以下、上記と同様にb8まで決定する。
以上特許文献1に記載された3個の比較器を備える逐次比較型アナログ−デジタル変換器について説明したが、比較器の個数は3に限定されず、2または4以上でもよく、比較器の個数により補正可能な各ステップでの誤差の大きさが変化する。
以上説明した特許文献1に記載された逐次比較型ADCでは、ある比較ステップにおけるDA変換器の設定値を中心の参照アナログ信号Vmとし、それに対して次のステップで判定するビットの重み分を加算または減算して参照アナログ信号VhおよびVlを設定する。入力信号が3つの参照アナログ信号に対してどの範囲内にあるかで判定の誤りがあったかどうかを知ることができる。入力信号がVhとVlの範囲外にある時、前のステップで判定誤りがあったと判断してそれ以前に決定した上位ビットを補正し、Vh、VmおよびVlも正しい範囲に応じて補正する。以下、この処理を順次最下位ビットまで繰り返すことで、上位ビットに対し冗長性の大きい判定が可能で、誤変換を補正することも可能になる。逐次変換型ADCの冗長性については、例えば、非特許文献1に記載されている。
図7は、本発明の第1実施形態の逐次比較型アナログ−デジタル変換器(ADC)における動作を説明する図である。第1実施形態の逐次比較型ADCは、図3に示した逐次比較型ADCと同様の構成を備え、逐次比較制御回路13Aにおける処理動作のみが異なる。
第1実施形態の逐次比較型ADCは、10ビットのADCであり、上位ビット1〜7は、3個の比較器12H、12M、12Lにより入力信号Vinを3つの参照アナログ信号Vh、Vm、Vlと比較した結果に基づいて補正しながら決定し、下位8〜10ビットは、1個の比較器12Mにより入力信号Vinを参照アナログ信号Vmと比較した結果に基づいて決定する。最初の2ビットは、1ステップ目で同時に決定するので、全ビットは9ステップで決定され、上位ビット1〜7はステップ1〜6で決定され、下位8〜10ビットはステップ7〜9で決定される。
図7に示すように、ステップ6では、3個の比較器12H、12M、12Lにより入力信号Vinを3つの参照アナログ信号Vh、Vm、Vlと比較し、比較結果に基づいてビット7を決定する。ステップ7では、ステップ6の結果に基づいて、参照アナログ信号Vmを、ビット8の重み分だけ変化させる。図7に示す例では、ステップ6で、入力信号VinはVhとVmの間であると判定されるので、Vmを4LSBだけ増加させる。もし、ステップ6で入力信号VinがVmとVlの間であると判定された場合には、Vmを4LSBだけ減少させる。そして、ステップ7では、比較器12Mにより入力信号Vinを参照アナログ信号Vmと比較し、比較結果に基づいてビット8を決定する。以下、ステップ8では、ステップ7の比較結果に基づいてVmを2LSBだけ増加または減少させ、比較器12MによるVinとVmの比較結果に基づいてビット9を決定し、ステップ9では、ステップ8の比較結果に基づいてVmを1LSBだけ増加または減少させ、比較器12MによるVinとVmの比較結果に基づいてビット10を決定する。
第1実施形態の逐次比較型アナログ−デジタルADCでは、DA変換器の出力する参照アナログ信号の振幅変化が減少した状態で1個の比較器の比較結果を利用するように切り替えるので、DA変換器の出力の整定に起因する誤差の影響は小さい。また、第1実施形態の逐次比較型アナログ−デジタルADCでは、所定のビット(ここではビット8)より下位のビットは、1個の比較器の比較結果に基づいて決定するので、複数の比較器間の相対的なオフセットの影響を受けず、高精度のAD変換値を決定できる。
しかし、切り替え前に決定された上位ビット1〜7の値は、3個の比較器12H、12M、12Lの比較結果により補正されているので、切り替え前後の線形性は保障されない。図8は、3個の比較器の比較結果を利用する処理から1個の比較器の比較結果を利用する処理に切り替える場合の誤差の発生を説明する図である。
図8に示すように、ステップ6で、入力信号VinはVmと正しい参照アナログ信号Vhの間であるとする。しかし、Vhがオフセットなどにより実質的にVheになったと仮定する。この場合、VinはVhより高く、ステップ5による比較結果に誤りがあったとして補正が行われ、ステップ7のVmは、図8に示すように、正しい参照アナログ信号Vhより4LSB高いレベルに設定される。言い換えれば、ステップ7でVmは、本来Vmが設定されるべきレベルより8LSB高いレベルに設定されることになる。この場合、図8に示すように、ステップ7〜9でVmを変化させても、VmをVinに収束させることはできず、変換誤差が生じる。次に説明する第2実施形態では、3個の比較器から1個の比較器の使用に切り替える時に、切り替え前後の線形性をより高精度に保障する。
図9は、本発明の第2実施形態の逐次比較型アナログ−デジタル変換器(ADC)における動作例を説明する図である。第2実施形態の逐次比較型ADCは、図3に示した逐次比較型ADCと同様の構成を備え、逐次比較制御回路13Aにおける処理動作のみが異なる。
第2実施形態の逐次比較型ADCも、10ビットのADCである。第2実施形態の逐次比較型ADCの処理ステップは、前半ステップ1〜6と、後半ステップ7〜11に分かれ、いずれも2進変換アルゴリズムが適用される。ステップ1〜5において、3個の比較器12H、12M、12Lにより入力信号Vinを3つの参照アナログ信号Vh、Vm、Vlと比較した結果に基づいて補正しながら上位ビット1〜6を決定する。ステップ6で、3個の比較器12H、12M、12LのVinと参照アナログ信号Vh、Vm、Vlと比較した結果に基づいて補正しながらビット7を一旦決定する。
ステップ7では、ステップ6の3個の比較器12H、12M、12Lの比較結果に基づいてVmを決定する。ステップ7以降は比較器12Mによる比較のみを行うので、VhおよびVlは演算しない。比較器12Mは、Vinと参照アナログ信号Vmとの比較を行う。
さらに、ステップ8で、ステップ7の比較結果に基づいてVmを決定する。ステップ8のVmは、ステップ7でVmがVinより大きいと判定された時にはステップ7のVmから8LSB低く、ステップ7でVmがVinより小さいと判定された時にはステップ7のVmから8LSB高く設定される。図7に示したように、第1実施形態では、ステップ8のVmとステップ7のVmの差は2LSBであるが、第2実施形態では、ステップ8のVmとステップ7のVmの差は8LSBである。
以下、ステップ9〜11で、Vmを4LSB、2LSB、1LSBだけ変化(増加または減少)させながら、比較器12Mによる比較を行い、ビット8〜10を決定する。この時、ステップ6で一旦決定されたビット7が変更される場合もあり得る。
以上のように、第2実施形態では、10ステップで全ビットが決定されることになり、第1実施形態に比べてステップ数が2増加する。
図9に示す第2実施形態の動作例で、ステップ6において、VinがVhとVmの間またはVmとVlの間にあると判定された時に、ステップ11までにVmがVinに対して1LSB以内に収束することは明らかである。ステップ6において、VinがVhより高いと判定された時には、図9に示すようにステップ11までにVmがVinに対して1LSB以内に収束する。さらに、ステップ6において、VinがVlより低いと判定された時に、ステップ11までにVmがVinに対して1LSB以内に収束することも容易に理解できる。このように、ステップ6でのVhまたはVlにオフセットがあり、ステップ7でのVmが補正により誤って設定され、Vmの線形性に問題が生じた場合でも、VmをVinに収束させることが可能になり、変換誤差は生じない。
ステップごとにVmを変化させるビット重みは、ステップが進むに従って徐々に小さくなるが、第2実施形態では、複数の比較器の比較結果を利用する処理から1個の比較器の比較結果を利用する処理に切り替えた後、比較に使用する1つの参照アナログ信号を変化させるビット重みを一旦大きくしている。ビット重みをどの程度大きくするかは、複数の比較器のオフセットなどを考慮して適宜決定することが望ましい。例えば、図9の例では、ステップ7のVmからステップ8のVmは、ビット7の重み分、すなわち8LSB変化させたが、ビット6の重み分、すなわち16LSB変化させるようにしてもよい。この場合、VmをVinに収束させるには、ステップ数をさらに1増加させる必要がある。
以上のように、第2実施形態では、切り替え時の線形性を保障するため、ステップ数を増加させる。従って、第2実施形態では、アナログ−デジタル変換器のビット数をkとし、複数の比較器の比較結果に基づいて決定する前記所定のビットまでの上位のビット数をmとし、複数の比較器のうちの1個の比較器の比較結果に基づいてビット値を決定するステップ数をnとすると、n>k−mにすることが望ましい。
第1および第2実施形態では、複数の比較器の比較結果を利用する処理から1個の比較器の比較結果を利用する処理に切り替える時に、DA変換器14Aの出力する参照アナログ信号の振幅変化は十分に減少しており、DA変換器の出力の整定に起因する誤差の影響は小さいと仮定していた。しかし、DA変換器の出力の整定に起因する誤差の影響が十分に小さくなる前に1個の比較器の比較結果を利用する処理に切り替えた場合、切り替えた後に判定誤差が発生することが考えられ、その場合にはVmをVinに収束させられないことが起こり得る。次に説明する第3実施形態は、切り替え時および切り替え後にDA変換器の出力の整定に起因する誤差がある程度発生してもVmをVinに収束させることが可能な例である。
まず、本発明の第3実施形態の逐次比較型アナログ−デジタル変換器(ADC)における処理アルゴリズムを説明する。
第3実施形態の逐次比較型ADCでは、3個の比較器の比較結果を利用する処理から1個の比較器の比較結果を利用する処理に切り替えた後、比較器間のオフセットを考慮してVmを変化させるビットの重みを大きくすると共に、1個の比較器の比較結果を利用する処理は非2進アルゴリズムを利用する。非2進アルゴリズムについては、非特許文献1に記載されている。
第3実施形態の逐次比較型ADCも、10ビットのADCである。第3実施形態の逐次比較型ADCの処理ステップは、全部で13ステップであり、前半ステップ1〜6と、後半ステップ7〜13に分かれる。
ステップ1では、DA変換器にD1=1、D2〜D10=0の多ビットデジタル信号を供給する。この多ビットデジタル信号が、参照アナログ信号Vmに対応し、Vm=VFS/2が発生される。VhはVmをビット2の重み量Vr(1)=VFS/4だけ増加させた電圧値3VFS/4であり、VlはVmをビット2の重み量Vr(1)=VFS/4だけ減少させた電圧値VFS/4であり、VhおよびVlがVmと共に発生される。前述のように、VFSはフルスケール電圧である。
入力信号Vinは、Vh、Vm、Vlと3個の比較器でそれぞれ比較される。VinとVhの比較結果がChで、VinとVmの比較結果がCmで、VinとVlの比較結果がClである。ステップ1では、Ch、CmおよびClからMSB(ビット1)とビット2の値が同時に決定される。すなわち、
0≦Vin≦Vl(Ch=0、Cm=0,Cl=0)ならば、ビット1,2=00
Vl≦Vin≦Vm(Ch=0、Cm=0,Cl=1)ならば、ビット1,2=01
Vm≦Vin≦Vh(Ch=0、Cm=1,Cl=1)ならば、ビット1,2=10
Vh≦Vin≦VFS(Ch=0、Cm=0,Cl=1)ならば、ビット1,2=11
とする。
次に、ステップ2〜6でビット3〜7を決定する。
ステップ2〜6において、ビットi+1を決定するステップi(i=2〜6)では、参照アナログ信号Vm(i)は、前のステップの比較結果に基づいて次のように決定される。
0≦Vin≦Vl(Ch=0、Cm=0,Cl=0)ならば、
Vm(i)=Vl(i−1)−Vr(i+1)
=Vm(i−1)−Vr(i−1)−Vr(i+1)
Vl≦Vin≦Vm(Ch=0、Cm=0,Cl=1)ならば、
Vm(i)=Vm(i−1)−Vr(i+1)
Vm≦Vin≦Vh(Ch=0、Cm=1,Cl=1)ならば、
Vm(i)=Vm(i−1)+Vr(i+1)
Vh≦Vin≦VFS(Ch=0、Cm=0,Cl=1)ならば、
Vm(i)=Vh(i−1)+Vr(i+1)
=Vm(i−1)+Vr(i−1)+Vr(i+1)
ここで、Vr(i)は、ビットiの重みを示し、Vr(i+1)=Vr(i)/2である。例えば、ビット1〜7の重みは、VFS/2、VFS/4、VFS/8、VFS/16、VFS/32、VFS/64、VFS/128である。ステップ2ではi=2であり、Vr(i+1)=VFS/8である。ステップ2では,ステップ1での比較結果に基づいてVh、VmおよびVlが決定され、ステップ3〜6では前のステップ2〜5の比較結果に基づいてVh、VmおよびVlが決定される。例えば、ステップ1で、Vm≦Vin≦Vh(Ch=0、Cm=1,Cl=1)であれば、ステップ2では,Vm=Vm(i−1)+Vr(i+1)=VFS/2+VFS/8=5VFS/8になる。さらに、
Vh(i)=Vm(i)+Vr(i+1)、
Vl(i)=Vm(i)−Vr(i+1)
に設定される。
後半のステップ7〜13では、Vmとの比較結果Cmのみを用いて判定を行う。この場合のVmは次のように決定される。
まずステップ7では、ステップ6での3個の比較器の比較結果に基づいて、ステップ2〜6と同様にVmを設定し、比較を行う。
ステップ8〜13を、ステップj(j=1〜6)で表す。ステップjで、ステップj−1のVm(j−1)に加算または減算する値をp(j)とする。p(j)は、あらかじめ定められており、例えばメモリにj(j=1〜6)に応じて記憶されており、jを入力することによりp(j)を読み出して使用できる。また、jに応じてp(j)を発生して出力する論理回路を使用することも可能である。ステップj−1で、VinがVmより大きいと判定された時にはp(j)をステップj−1のVm(j−1)に加算し、VinがVmより大きいと判定された時にはp(j)をステップj−1のVm(j−1)から減算する。
図10は、第3実施形態の逐次比較型ADCで、ステップ6〜13におけるVmの変化例を示す図である。
図10の例では、ステップ6で、入力信号VinはVmと正しい参照アナログ信号Vhの間であるとする。しかし、Vh、VmおよびVlがオフセットなどにより実質的にVhe、VmeおよびVleになり、Vhe=Vmeで、VinがVhe、VmeおよびVleより高いと仮定する。この場合、VinはVhより高く、ステップ5による比較結果に誤りがあったとして補正が行われ、ステップ7のVmは、正しい参照アナログ信号Vhより4LSB高いレベルに設定される。しかし、ステップ7の正しいVmは、ステップ6のVmより4LSB低く設定されるべきである。言い換えれば、ステップ7でVmは、本来Vmが設定されるべきレベルより16LSBも高いレベルに設定されることになる。従って、ステップ7での比較で、VmはVinより高いと判定される。
ステップ8〜13でのVmは、非2進変換アルゴリズムにより設定される。図10の例では、j=1〜6に対するp(j)は、8、4、2、2、2、1である。従って、ステップ8では、Vmはステップ7のVmより8LSB低く、以下Vmはステップ13まで順に4、2、2、2、1LSB減少し、ステップ13でVmはステップ7のVmより19LSB低くなり、Vinに対して1LSB以内に収束する。
ここで、ステップ7、8〜13における冗長性について検討する。ステップ7のVm(7)は、ステップ6の3個の比較器の比較結果から決定される。ステップ8〜13(ステップj(j=1〜6))で、ステップj−1のVm’(j−1)にビット重みp(j)が、ステップj−1の比較結果に応じて加算または減算される。ここで、ステップj−1の比較結果をd(j−1)とし、加算の場合はd(j−1)=1、減算の場合はd(j−1)=−1となる。ステップjのVm’(j)は、次の式(1)で表される。
ここで、“ステップjの冗長性q(j)”を考える。冗長性とは、ステップjの比較結果によりステップj+1で加減算するp(j+1)の加減算を誤った時、誤った(反対の)比較結果の範囲に後段のステップによりどこまで近づけるかを示す。その範囲であれば、ステップjで誤っても正しい変換結果が得られることになる。冗長性q(j)は、次の式(2)で定義される。
一方、NビットをMステップでAD変換する場合、ステップjで加減算する値q(j)(j=1,2,…,M)との関係は次の式(3)で表される。
ここで、オーバーレンジ量とは、Nビット(2N)をM個のステップで収束させるために取りえる数は加減算する値の総和を超えてしまうことになり、その余り分(NビットAD変換の場合に上下にはみ出してしまう分)を示す。
非特許文献1は、これらのことから次の式(4)が得られることを報告している。
以上説明したことから、NビットMステップ逐次AD変換の時、式(3)を満たすように各段の冗長性q(j)とオーバーレンジ量を設計すれば、それを実現するp(j)は式(4)を用いて計算することができる。
図10に示した例では、19LSBを7つのステップで変換するように設計した場合を示している。各ステップの冗長性は、6つのステップで8LSBをほぼ半減していくように加減算する値p(j)を決めることができ、図10では、8、4、2、2、2、1LSBとしている。なお、これらの値は、一例であり、設計に応じて適宜決定される事項である。
図11は、図10に示した変換アルゴリズムを実現する本発明の第3実施形態の逐次比較型アナログ−デジタル変換器(ADC)の構成を示す図である。
図11に示すように、第3実施形態の逐次比較型ADCは、3個の比較器12H、12M、12Lと、比較結果判定回路21と、比較ステップ制御回路22と、加減算値発生回路23と、加算減算器24と、第1レジスタ25と、第2レジスタ26と、出力レジスタ27と、DA変換器(デジタル−アナログ変換器)14Aと、を備える。比較結果判定回路21、比較ステップ制御回路22、加減算値発生回路23、加算減算器24、第1レジスタ25、第2レジスタ26および出力レジスタ27が、逐次比較制御回路13Bを構成する。
入力アナログ信号SAは、図示していないサンプルホールド回路で一旦保持され、入力信号Vinとして3個の比較器12H、12M、12Lに入力される。DA変換器14Aは、図3と同様に、逐次比較制御回路13Bからの多ビットデジタル信号D1〜D10に応じて、異なる3つの参照アナログ信号Vh、Vm、Vlを出力する。3個の比較器12H、12M、12Lは、入力信号Vinを参照アナログ信号Vh、Vm、Vlとそれぞれ比較し、比較結果Ch、Cm、Clを出力する。比較結果Ch、Cm、Clは比較結果判定回路21に入力される。比較結果判定回路21は、比較結果Ch、Cm、Clに基づいて、入力信号Vinと参照アナログ信号Vh、Vm、Vlとの比較結果Jを出力すると共に、オーバーフローおよびアンダーフローを示す信号Eoおよび矛盾した結果の有無を示す信号Ebを出力する。比較ステップ制御回路22は、各比較ステップを制御する。加減算値発生回路23は、各比較ステップごとにその前のステップの比較レベルに加減算する値を発生する。加算減算器24は、比較結果判定回路21の出力する結果により加算か減算かが制御され、比較ステップごとにその前のステップの比較レベルに、加減算値発生回路23の出力する値を加算または減算する。第2レジスタ26は、加算減算器24の出力を加算または減算の結果D1’〜D10 ’を一時保持し、DA変換器14A、第1レジスタ25および出力レジスタ27に、多ビットデジタル信号D1〜D10として出力する。第1レジスタ25は、多ビットデジタル信号D1〜D10を一時保持し、加算減算器24に直前のステップのデータとして出力する。出力レジスタ27は、第2レジスタ26から出力される多ビットデジタル信号D1〜D10が確定した時に保持し、AD変換値として出力する。
図12は、DA変換器14Aの構成の一部を示す図である。DA変換器14Aは、抵抗R0、R1、…、Ri、…RN−1、RNを、フルスケール電圧VFSの端子とGNDとの間に直列に接続したラダー抵抗と、ラダー抵抗の接続ノードの電圧信号を取り出すスイッチTr0、Tri、…TrNと、を備える。スイッチTr0、Tri、…TrNの他方の端(出力端)は、共通に接続される。DA変換器14Aでは、図示していないデコーダにより、Vmに対応する多ビットデジタル信号D1〜D10をデコードしてスイッチTr0、Tri、…TrNの1つを選択することにより、ラダー抵抗の1個の接続ノードの電圧信号をVmとして取り出すことができる。参照アナログ信号VhおよびVlを発生して出力するには、ラダー抵抗と、スイッチ列と、デコーダが3組必要であるが、ラダー抵抗は共通化することが望ましい。また、図示していないが、DA変換器14Aは、比較ステップ制御回路22から出力されるステップ1〜6までを示す信号に対応したVhとVmおよびVmとVlの差を示すデータを発生して多ビットデジタル信号D1〜D10に加減算するデジタル演算回路を備え、その出力をVhおよびVl用のデコーダに印加する。
なお、完全差動のVmに相当するDAC出力を発生する電流出力形式のDA変換器と、2-nの重みを有する完全差動の電流出力形式のサブDAC出力を発生するサブDA変換器を設け、多ビットデジタル信号D1〜D10に応じてDA変換器がDAC出力を発生し、ステップを示す信号Q1〜Q15に応じてサブDA変換器がサブDAC出力を発生し、VhおよびVlは、DAC出力にサブDAC出力または負変換したサブDAC出力を加算することによりVhおよびVlを発生することも可能である。これであれば、電流の加算処理のみでVhおよびVlが発生できる。
また、特許文献1の図17に記載した比較器を、比較器12H、12M、12Lとして使用する場合には、その+入力端子および−入力端子に加減算する電圧を印加するように構成することが可能であり、その場合、DA変換器14Aは、Vmと加減算する電圧を発生すればよい。
図13は、比較結果判定回路21の構成および動作を示す真理値表を示す図である。
図13の(A)に示すように、比較結果判定回路21は論理回路で構成され、入力される比較結果Ch、Cm、Clに応じて、図13の(B)に示すような信号J、EoおよびEbを出力する。信号Jは、入力信号Vinと参照アナログ信号Vmとの比較結果である。信号Eoは、“1”の時にオーバーフローまたはアンダーフローが発生したことを示し、“0”の時にオーバーフローまたはアンダーフローが発生していないことを示す。Ebは、比較結果Ch、Cm、Clが矛盾した結果であることを示す。Ebが“0”の場合には、以上が発生したと判定され、AD変換処理を停止するか、そのステップの処理を無視するなどの処理が行われ、JおよびEoは無視される。
図14は、比較ステップ制御回路22を構成するリングカウンタの構成を示す図である。リングカウンタは広く知られている回路であり、出力のうち1つが“1”に、残りが“0”になり、クロックCLKに応じて“1”になる出力の位置が1つずつ移動する。図14の(A)は、一般的に使用される10ビットのリングカウンタで、クリアCLRにより初期化されて全出力が“0”になり、CLKに応じてQ1が“1”になり、以下CLKに応じて“1”の位置が移動し、Q10が“1”から “0”になると、ANDゲートからの帰還によりQ1が再び“1”になり、この動作を繰り返す。
第3実施形態では、図14の(A)に示すリングカウンタを使用することも可能であるが、第3実施形態では動作を繰り返す必要がないので、図14の(B)に示すリングカウンタを使用する。図14の(B)は、15ビットのリングカウンタの例を示す。第3実施形態のステップ数は13であり、Q13までを比較用動作クロックとして使用し、Q14およびQ15は変換終了を知らせるエンドパルスとして、また出力レジスタ27にAD変換値を保存するクロックとして使用する。
図15は、第2レジスタ26の構成を示し、第1レジスタ25および出力レジスタ27も同様の構成を備える。図15の回路は広く知られているので、説明は省略する。
図16は、加減算値発生回路23の構成と、加減算値発生回路23の周辺部の構成を示す図である。図16に示すように、加減算値発生回路23は、アドレス設定回路31と、メモリ32と、を備える。
加減算値発生回路23は、前述の前半ステップ1〜6では3個の比較器12H、12M、12Lを用いて2進変換アルゴリズムで補正しながらビット1〜7の値を決定し(ただし、前半ステップで決定したビットが後半ステップで変更される場合もある)、後半ステップでは1個の比較器12Mを用いて非2進変換アルゴリズムでビット8〜10の値を決定する処理を行う場合に、加減算する値M1〜M9を発生する。
前半ステップ1〜6では、比較結果判定回路21の出力J、EoおよびEbに応じて補正を行うので、メモリ32には、比較ステップ制御回路22からのステップ1〜6を示す信号Q1〜Q15とJ、EoおよびEbをアドレスとして、前半ステップで加減算する値M1〜M9を記憶しておく。例えば、Q1=“1”(他のQは“0”、以下省略)であれば、ステップ1なので、M1=“1”、M2〜M9=“0”が記憶されている。これがVFS/2に相当する。Q2=“1” であれば、ステップ2なので、Q2=“1”、Eo=“0”およびEb=“1”に対してM3=“1”、M1〜M2、M4〜M9=“0”が記憶され(これがVFS/8に相当する)、Q2=“1”およびEo=“0”に対してM2〜M3=“1”、M1、M4〜M9=“0”が記憶される(これが3VFS/8に相当する)。
後半ステップ7〜13では、比較結果判定回路21の出力にかかわらず、加減算する値は非2進変換アルゴリズムであらかじめ決まっているので、Q7=“1”〜Q13=“1”に対して、非2進変換アルゴリズムにより決定された加減算する値が記憶されている。
各ステップで、アドレス設定回路31が、比較ステップ制御回路22からのステップを示す信号Q1〜Q15、J、EoおよびEbに応じてアドレスを設定し、メモリ32から加減算する値を読み出して加算減算器24に出力する。
メモリ32は、設計段階から各ステップで加減算する値があらかじめ決められている場合にはROMで構成でき、加減算する値を設計後に任意に設定する必要がある場合には、フラッシュメモリで構成し、後で加減算する値を書き込む。また、メモリ32をRAMで構成し、起動時にRAMに加減算する値を書き込むようにしてもよい。
図17は、加算減算器24の構成を示す図である。加算減算器24は、J=1の時に第1レジスタ25からの多ビットデジタル信号D1〜D10に、加減算値発生回路23からの加減算する値M1〜M9を加算し、J=0の時に第1レジスタ25からの多ビットデジタル信号D1〜D10から、加減算値発生回路23からの加減算する値M1〜M9を減算する。
図16に示すように、第3実施形態では、加減算値発生回路23がメモリを備え、比較ステップ制御回路22からのステップを示す信号および比較結果判定回路21からの信号をアドレスとしてメモリに各ステップで加減算する値を記憶しておいて読み出した。加減算する値を論理回路で発生することも可能である。
図18は、第3実施形態において、加減算値発生回路23を論理回路で実現する変形例の構成を示す図である。図18に示すように、加減算値発生回路23は、3比較器用加減算値発生回路41と、非2進用加減算値発生回路42と、を備える。3比較器用加減算値発生回路41は、ステップ1〜6の間、比較ステップ制御回路22からのステップを示す信号および比較結果判定回路21からの信号J、Eo、Ebを入力として、2進変換アルゴリズムに従って補正を伴う加減算値を発生する。非2進用加減算値発生回路42は、ステップ7〜13の間、比較ステップ制御回路22からのステップを示す信号および比較結果判定回路21からの信号Jを入力として、非2進変換アルゴリズムに従って加減算値を発生する。比較器用加減算値発生回路41および非2進用加減算値発生回路42は、RTL言語などで記述すれば容易に設計可能である。
以上説明した第1から第3実施形態では、前半のステップ6までを3個の比較器の比較結果を利用して補正しながらビットの値を決定し、残りのステップでは1個の比較器の比較結果を利用して補正しながらビットの値を決定した。どのステップから1個の比較器による判定に切り替えるかについて検討する。微細CMOS技術の採用で、電源電圧が低下した場合、信号振幅は差動で1V程度と考えられる。一方、比較器のオフセットは、2つのMOSトランジスタの閾値電圧のミスマッチが原因であり、その大きさは数mV程度と見積もれる。仮に8mVとすると、フルスケール電圧(最大信号振幅)の8/1000=1/128で、7ビット相当となる。従って、これ以下の判定に3個の比較器を用いることは不利となるため、3個の比較器から1個の比較器の使用に切り替えるステップはステップ7の近傍とすることが望ましい。実際には、設計仕様により、信号振幅、ミスマッチの大きさ、冗長度の設定など、ある程度の範囲でバラツクので、切り替わりのステップはステップ6からステップ8の間にすることが、設計の容易性と、本発明の特徴である冗長性を大きくすることによる変換速度の向上から合理的といえる。
以上説明した以外にも各種の変形例が可能であるのはいうまでもない。例えば、前述のように、前半ステップで使用する比較器の個数は3個に限定されず、2個でも、4個以上でもよい。