(57)【要約】【課題】ＡＤＣのキャリブレーションにおいて、その期間に突発的な外来ノイズなどに起因してＡＤＣの変換値に大きな誤差が含まれた場合にも、その影響を排除する。【解決手段】入力される信号のアナログ値をデジタル値に変換して変換値を出力するＡＤＣと、キャリブレーション動作によって補正値を算出する平均化回路とを備え、通常動作においては保持されている補正値を使って、変換値を補正して出力するアナログ／デジタル変換器であって、以下のように構成される。キャリブレーション動作において、アナログ／デジタル変換器は、所定のアナログ値に対応するＡＤＣによる変換値に基づく要素補正値を複数回に渡って平均化回路に供給する。平均化回路は、複数回に渡って供給された複数個の要素補正値から、最大値と最小値を除く他の複数の要素補正値の平均値を算出して、その平均値に基づいて補正値を算出する。【選択図】図３
2017123531.tif 000002
【特許請求の範囲】
【請求項１】
入力される信号のアナログ値をデジタル値に変換して変換値を出力するＡＤ変換回路と、キャリブレーション動作によって補正値を算出する平均化回路とを備え、前記補正値を使って前記変換値を補正して補正後の変換値を出力するアナログ／デジタル変換器であって、
前記キャリブレーション動作において、
前記アナログ／デジタル変換器は、所定のアナログ値に対応する前記ＡＤ変換回路による変換値に基づく要素補正値を、複数回に渡って前記平均化回路に供給し、
前記平均化回路は、複数回に渡って供給された複数個の要素補正値から、少なくとも最大値と最小値とを除く他の複数の要素補正値の平均値を算出して、前記平均値に基づいて前記補正値を算出する、
アナログ／デジタル変換器。
【請求項２】
請求項１において、
前記ＡＤ変換回路は、第１の容量値を設計値とする第１の容量と、前記第１の容量値の２の冪乗分の１の容量値を順次設計値とする第２から第Ｋまでの容量と、前記第Ｋの容量と同じ容量値を設計値とする第Ｋ＋１の容量とを備える、Ｌビットの逐次比較型ＡＤ変換回路であり（Ｋは２以上、Ｌは３以上の正整数）、
前記第Ｋ＋１の容量は、その実効容量が前記設計値を最大値とする範囲でＬ−Ｋビットのデジタル値によって設定可能であり、
前記キャリブレーション動作における前記所定のアナログ値に対する変換値は、前記第２から第Ｋまでの容量の容量値と前記第Ｋ＋１の容量の実効的最大値との合計と、前記第１の容量の容量値とをそれぞれデジタル値に変換した値の差分値であり、
前記アナログ／デジタル変換器は、入力される信号のアナログ値から変換値への変換において、前記第１の容量が寄与したか否かを判定し、寄与したと判定したときに前記補正値を当該変換値に加算して補正する、
アナログ／デジタル変換器。
【請求項３】
請求項２において、前記キャブリレーション動作を第１のキャリブレーション動作とし、前記補正値を第１の補正値とし、
前記ＡＤ変換回路は、第Ｍの容量値と等しい容量値を設計値とする冗長容量を有し（Ｍは２以上の正整数）、
第Ｊ＋１から第Ｋまでの容量の容量値と前記第Ｋ＋１の容量の実効的最大値との合計と、第Ｊの容量の容量値とをそれぞれデジタル値に変換した値の差分値を、前記所定のアナログ値に対する変換値とすることにより、第Ｊの補正値を算出する動作を、第Ｊのキャリブレーション動作とし（ＪはＭ未満の正整数）、
前記第Ｎのキャリブレーション動作から順に、前記第１のキャリブレーション動作までが実行され、
前記アナログ／デジタル変換器は、入力される信号のアナログ値から変換値への変換において、前記第１から第Ｊの容量が寄与したか否かを判定し、前記第１から第Ｊの補正値のうち、寄与したと判定された容量に対応する補正値を当該変換値に加算して補正する、
アナログ／デジタル変換器。
【請求項４】
請求項２において、前記キャリブレーション動作において、前記平均化回路は、複数回に渡って供給された前記複数個の変換値から、最大値を含む上位の所定個の変換値と最小値含む下位の所定個の変換値とを除く他の複数の変換値から前記平均値を算出する、
アナログ／デジタル変換器。
【請求項５】
請求項４において、前記上位の所定個と前記下位の所定個がそれぞれ１個であり、
前記キャリブレーション動作において、供給される変換値の個数は、２の冪乗数に２を加えた個数であり、
前記平均化回路は、前記２の冪乗数に対応するシフト回路を有する、
アナログ／デジタル変換器。
【請求項６】
請求項２において、
前記平均化回路は、入力された値が所定の上限値を超えた時に前記上限値に置換し所定の下限値を下回った時に前記下限値に置換して出力するリミッタ回路を、前記平均化回路の入力部または出力部もしくはその両方に備える、
アナログ／デジタル変換器。
【請求項７】
請求項１において、
前記ＡＤ変換回路は、前記アナログ値をもって入力される信号に加えて前記変換の基準となる基準値が入力され、
前記キャリブレーション動作における前記所定のアナログ値に対する変換値は、前記入力される信号に代えて前記基準値と同じ値がデジタル値に変換された値である、
アナログ／デジタル変換器。
【請求項８】
請求項７において、
前記ＡＤ変換回路は、第１の容量値を設計値とする第１の容量と、前記第１の容量値の２の冪乗分の１の容量値を順次設計値とする第２から第Ｋまでの容量と、前記第Ｋの容量と同じ容量値を設計値とする第Ｋ＋１の容量とを備える、Ｌビットの逐次比較型ＡＤ変換回路であり（Ｋは２以上、Ｌは３以上の正整数）、
前記第Ｋ＋１の容量は、その実効容量が前記設計値を最大値とする範囲でＬ−Ｋビットのデジタル値によって設定可能であり、
前記キャリブレーション動作を第１のキャリブレーション動作とし、前記平均化回路を第１の平均化回路とし、前記補正値を第１の補正値とし、
前記アナログ／デジタル変換器は、第２のキャリブレーション動作によって第２の補正値を算出する第２の平均化回路をさらに備え、
前記第２のキャリブレーション動作における前記所定のアナログ値に対する変換値は、前記第２から第Ｋまでの容量の容量値と前記第Ｋ＋１の容量の実効的最大値との合計と、前記第１の容量の容量値とをそれぞれデジタル値に変換した値の差分値であり、
前記アナログ／デジタル変換器は、前記第１の補正値を使って、前記ＡＤ変換回路の入力されたアナログ値と変換されたデジタル値との関係におけるオフセットを補正し、前記第２の補正値を使って、前記ＡＤ変換回路の入力されたアナログ値と変換されたデジタル値との関係における直線性を補正する、
アナログ／デジタル変換器。
【請求項９】
請求項１において、
前記ＡＤ変換回路は、複数のステージからなるパイプライン型ＡＤ変換回路であって、
前記キャリブレーション動作において、
前記ＡＤ変換回路は、前記複数のステージのそれぞれから、所定のアナログ値に対応する変換値を複数回にわって前記平均化回路に供給し、
前記平均化回路は、複数回に渡って供給された複数個の変換値から、最大値と最小値を除く他の複数の変換値の平均値を算出して、前記平均値に基づいて前記補正値を算出することにより、前記複数のステージのそれぞれについての補正値を算出し、前記補正値に基づく補正信号を対応するステージに供給する、
アナログ／デジタル変換器。
【請求項１０】
請求項９において、
前記複数のステージのそれぞれは、残差増幅回路と、副ＡＤ変換回路と、副ＤＡ変換回路とを有し、
前記残差増幅回路は、固定容量と可変容量とを含んで構成されるスイッチトキャパシタ増幅器であり、
前記可変容量は、前記固定容量の設計値と同じ容量値を含む可変範囲を有し、前記補正信号によって容量値が調整可能とされ、
前記キャリブレーション動作における所定のアナログ値に対応する変換値は、前記固定容量と前記可変容量の容量値の差分に基づく値である、
アナログ／デジタル変換器。
【請求項１１】
請求項１において、前記キャリブレーション動作において、前記平均化回路は、複数回に渡って供給された前記複数個の変換値から、最大値を含む上位の所定個の変換値と最小値含む下位の所定個の変換値とを除く他の複数の変換値から前記平均値を算出する、
アナログ／デジタル変換器。
【請求項１２】
請求項１１において、前記上位の所定個と前記下位の所定個がそれぞれ１個であり、
前記キャリブレーション動作において、供給される変換値の個数は、２の冪乗数に２を加えた個数であり、
前記平均化回路は、前記２の冪乗数に対応するシフト回路を有する、
アナログ／デジタル変換器。
【請求項１３】
請求項１１において、
前記平均化回路は、入力された値が所定の上限値を超えた時に前記上限値に置換し所定の下限値を下回った時に前記下限値置換して出力するリミッタ回路を、前記平均化回路の入力部または出力部もしくはその両方に備える、
アナログ／デジタル変換器。
【請求項１４】
請求項１において、前記補正値を使って、前記ＡＤ変換回路の入力されたアナログ値と変換されたデジタル値との関係におけるオフセットを補正する、
アナログ／デジタル変換器。
【請求項１５】
請求項１４において、前記キャリブレーション動作を第１のキャリブレーション動作とし、前記平均化回路を第１の平均化回路とし、前記補正値を第１の補正値とし、
前記アナログ／デジタル変換器は、第２のキャリブレーション動作によって第２の補正値を算出する第２の平均化回路をさらに備え、
前記アナログ／デジタル変換器は、前記第１の補正値を使って、前記ＡＤ変換回路の入力されたアナログ値と変換されたデジタル値との関係におけるオフセットを補正し、前記第２の補正値を使って、前記ＡＤ変換回路の入力されたアナログ値と変換されたデジタル値との関係における直線性を補正する、
アナログ／デジタル変換器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アナログ／デジタル変換器に関し、特にキャリブレーションを伴うアナログ／デジタル変換器に好適に利用できるものである。
【背景技術】
【０００２】
アナログ／デジタル変換器（ＡＤＣ：Analog to Digital Convertor）において、ＡＤＣ内の素子のミスマッチに起因する直線性やオフセットによる変換誤差を、デジタルキャリブレーション技術を用いて補正することは一般的に行われている。ここで、「アナログ／デジタル変換器」は、アナログ／デジタル変換回路、アナログ／デジタルコンバータ、ＡＤ変換器、ＡＤ変換回路、ＡＤコンバータ、或いは、ＡＤＣなどと呼ばれる場合もある。また「ＡＤ」を「Ａ／Ｄ」と表記する場合もある。また、「素子のミスマッチ」とは、設計値に対するミスマッチ、即ち、製造ばらつきや絶対誤差の他、本来等しい或いは規定された比率の素子値を持つように設計された場合の相対誤差、相対ばらつきを含む。キャリブレーションの際に、素子ノイズをはじめとするノイズにより発生する補正値の誤差を取り除くため、複数回演算して補正値を求めたり、補正値の演算結果を平均し、あるいはそれと同等の効果が得られる演算、例えば、ローパスフィルタを通過させる、累算する、等して、最終的な補正値とすることも同様に一般的に行われている。
【０００３】
特許文献１には、パイプライン型ＡＤＣのパイプラインステージにおけるデジタル／アナログ変換器の出力電圧の誤差および増幅回路の利得誤差を補正する回路技術が開示されている。同文献の図２には、誤差補正用データ生成回路、ＤＡＣ誤差補正回路、及び、利得誤差補正回路が示され、誤差補正用データ生成回路の入力側もしくは出力側に平均化回路を配置することにより、ノイズの影響を低減することができるとされる。なお、「デジタル／アナログ変換器」は、デジタル／アナログ変換回路、デジタル／アナログコンバータ、ＤＡ変換器、ＤＡ変換回路、ＤＡコンバータ、或いは、ＤＡＣと呼ばれる場合もある。また「ＤＡ」を「Ｄ／Ａ」と表記する場合もある。
【０００４】
非特許文献１には、各ステージに誤差補正（Error Correction）回路を備える、パイプライン型ＡＤＣが開示されており（同文献のFig. 1参照）、同文献のFig. 6に示されている、ＡＤＣの出力に接続されるキャリブレーション回路は、平均化回路（2048 averaging & ALU circuit）を含む。
【０００５】
デジタル領域での演算結果をアナログ領域にフィードバックし、アナログ回路内の素子パラメータを微調整するキャリブレーション手法も一般的である。例えば、非特許文献２のFig. 3に示される、セルフトリミング回路が挙げられる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−２２２２７４号公報
【非特許文献】
【０００７】
【非特許文献１】S. Y. Chuang and T. L. Sculley, “A digitally self-calibrating 14-bit 10-MHz CMOS pipelined A to D converter”, Journal of Solid-State Circuit, vol. 37, No. 6, June 2002.
【非特許文献２】S. T. Ryu, “A 14b-Linear Capacitor Self-Trimming Pipelined ADC”, Journal of Solid-State Circuit, vol. 39, No. 11, November 2004
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１及び非特許文献１、２について本発明者が検討した結果、以下のような新たな課題があることがわかった。
【０００９】
図１は、アナログ領域でばらつき等に起因して発生する誤差を、デジタル領域での演算処理によってキャリブレーションする機能を有するアナログ／デジタル変換回路（信号処理回路）の、一般的かつ概念的なブロック図である。アナログ入力VINが入力されるＡＤＣ１のデジタル出力に、キャリブレーション回路３が接続される。ＡＤＣ１はアナログ領域、キャリブレーション回路３はデジタル領域に配置され、全体で信号処理回路９が構成される。信号処理回路９全体を、キャリブレーション機能付きのＡＤ変換器或いはＡＤ変換回路と呼んでも良い。
【００１０】
キャリブレーション回路３は、補正回路７と平均化回路８と補正値演算回路６とを備え、キャリブレーション動作では、補正値演算回路６によって、ＡＤＣ１のデジタル出力から補正値を複数回求めて、平均化回路８に供給する。平均化回路８は複数個の補正値から平均値を求めて、最終的な補正値とする。最終的な補正値は保持され、その後の通常動作において、補正回路７によってＡＤＣ１のデジタル出力を補正するために使用される。
【００１１】
補正値演算回路の演算結果を一定回数以上平均した値を補正値として用いることで、アナログ領域における素子ノイズ等のランダムノイズの影響は除去可能である。しかし、突発的に大きな外来ノイズが発生し補正値演算回路６の演算結果に大きく間違った結果が含まれてしまった場合には、最終的な補正値がずれてしまうこととなる。図２は、突発的に大きな外来ノイズが発生した場合の補正値に与える影響を模式的に示す説明図である。ノイズがランダムであって補正値演算結果が正規分布する場合（ａ）と、突発的に大きな外来ノイズによって大きな誤差のある補正値演算結果を含む場合（ｂ）とを示す。アナログ領域のＡＤＣにおけるノイズが、素子ノイズ等のランダムノイズである場合には、補正値演算結果は図２（ａ）のように正規分布することが期待されるので、平均化によってノイズが除去されて正しい補正値が算出される。この正規分布を持つ補正値演算結果に、図２（ｂ）に示すように突発的な外来ノイズにより、補正値演算結果の１つに本来補正値とすべき値からかけ離れた大きな値（小さな値の場合も同様）が含まれた場合には、平均によって算出される補正値は、本来補正値とすべき値から誤差を含むこととなる。
【００１２】
大きな外来ノイズが発生した場合にも平均化した結果を用いて正しい補正値を得るためには、膨大な数の補正値演算結果を平均する必要があり、キャリブレーションに長時間を要する。また、長時間の平均化を行ったとしても、頻繁にあるいは周期的に突発的な外来ノイズが発生する場合には、その影響を除去することが出来ない。特にＡＤＣ１の起動時に補正値を決定するフォアグランドキャリブレーションでは、間違った補正値は修正される機会がなく、通常の変換結果を誤った補正値を使って補正し続けることとなり、直線性の悪化や変換結果へのオフセットの重畳等、正しい変換結果を得ることが出来なくなる。
【００１３】
実使用上、外来ノイズが多いノイジー（noisy）な環境においてキャリブレーションが行われることは十分に考えられ、上記のような突発的な外来ノイズによる補正値のずれは起こりえることだが、このような突発的なノイズの影響を排除する方法については、特許文献１及び非特許文献１、２には、開示も示唆もされていない。
【００１４】
このような課題を解決するための手段を以下に説明するが、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１５】
一実施の形態によれば、下記の通りである。
【００１６】
すなわち、入力される信号のアナログ値をデジタル値に変換して変換値を出力するＡＤＣと、キャリブレーション動作によって補正値を算出する平均化回路とを備え、通常動作においては、キャリブレーション動作によって算出され保持されている補正値を使って、変換値を補正して出力するアナログ／デジタル変換器であって、以下のように構成される。
【００１７】
キャリブレーション動作において、アナログ／デジタル変換器は、所定のアナログ値に対応するＡＤＣによる変換値に基づく要素補正値を複数回に渡って平均化回路に供給する。平均化回路は、複数回に渡って供給された複数個の要素補正値から、少なくとも最大値と最小値とを除く他の複数の要素補正値の平均値を算出して、その平均値に基づいて補正値を算出する。
【発明の効果】
【００１８】
前記一実施の形態によって得られる効果を簡単に説明すれば下記のとおりである。
【００１９】
すなわち、キャリブレーション動作の期間に、突発的な外来ノイズなどに起因してＡＤＣの変換値に大きな誤差が含まれた場合にも、その影響を排除して補正値を算出することができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、キャリブレーションを伴うアナログ／デジタル変換回路の、一般的かつ概念的なブロック図である。である。
【図２】図２は、突発的に大きな外来ノイズが発生した場合のキャリブレーションの補正値に与える影響を模式的に示す説明図である。
【図３】図３は、実施形態１に係る信号処理回路（キャリブレーション回路付きのＡＤ変換器）の構成例を示すブロック図である。
【図４】図４は、信号処理回路（キャリブレーション回路付きのＡＤ変換器）が搭載される半導体装置の一例を示す構成図である。
【図５】図５は、信号処理回路（キャリブレーション回路付きのＡＤ変換器）が搭載される半導体装置の別の例を示す構成図である。
【図６】図６は、逐次比較方式によるＡＤ変換回路の構成例を示すブロック図である。
【図７】図７は、逐次比較型ＡＤ変換回路の容量ＤＡＣ回路の構成例を示す回路図である。
【図８】図８は、補正回路の構成例を示すブロック図である。
【図９】図９は、補正値演算回路の構成例を示すブロック図である。
【図１０】図１０は、最大値／最小値除去機能を有する平均化回路の構成例を示すブロック図である。
【図１１】図１１は、最大値／最小値除去回路の一構成例を示すブロック図である。
【図１２】図１２は、最大値／最小値除去回路の別の構成例を示すブロック図である。
【図１３】図１３は、キャリブレーションの動作例を示す説明図である。
【図１４】図１４は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位ビット容量へのサンプリング状態でのスイッチの状態を示す回路図である。
【図１５】図１５は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位ビットより下位の容量へのサンプリング状態でのスイッチの状態を示す回路図である。
【図１６】図１６は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位ビット容量の補正値を算出する動作例を示すタイミングチャートである。
【図１７】図１７は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位から３ビット目の容量へのサンプリング状態でのスイッチの状態を示す回路図である。
【図１８】図１８は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位から３ビット目より下位の容量へのサンプリング状態でのスイッチの状態を示す回路図である。
【図１９】図１９は、キャリブレーション動作における、容量ＤＡＣ回路内の最上位ビットから３ビット目までの容量の補正値を算出する動作例を示すタイミングチャートである。
【図２０】図２０は、容量ＤＡＣ回路内の最上位ビットから３ビット目までの容量の補正値を算出するキャリブレーションに対応する、補正回路の構成例を示すブロック図である。
【図２１】図２１は、容量ＤＡＣ回路内の最上位ビットから３ビット目までの容量の補正値を算出するキャリブレーションに対応する、最大値／最小値除去機能を有する平均化回路の構成例を示すブロック図である。
【図２２】図２２は、実施形態２に係る最大値／最小値除去機能を有する平均化回路の構成例を示すブロック図である。
【図２３】図２３は、実施形態３に係る最大値／最小値除去機能を有する平均化回路の構成例を示すブロック図である。
【図２４】図２４は、実施形態４に係る最大値／最小値除去機能を有する平均化回路の第１の構成例を示すブロック図である。
【図２５】図２５は、実施形態４に係る最大値／最小値除去機能を有する平均化回路の第２の構成例を示すブロック図である。
【図２６】図２６は、実施形態４に係る最大値／最小値除去機能を有する平均化回路の第３の構成例を示すブロック図である。
【図２７】図２７は、実施形態５に係る信号処理回路である、オフセットキャリブレーション回路付きのＡＤ変換器の構成例を示すブロック図である。
【図２８】図２８は、実施形態５に係る補正回路の構成例を示すブロック図である。
【図２９】図２９は、実施形態５に係る最大値／最小値除去機能を有する平均化回路の構成例を示すブロック図である。
【図３０】図３０は、オフセットキャリブレーション動作における、サンプリング状態での容量ＤＡＣ回路内のスイッチの状態を示す回路図である。
【図３１】図３１は、オフセットキャリブレーションの動作例を示すタイミングチャートである。
【図３２】図３２は、実施形態６に係る信号処理回路である、容量ミスマッチとオフセットの両方のキャリブレーション回路が接続されたＡＤ変換器の構成例を示すブロック図である。
【図３３】図３３は、実施形態６に係る信号処理回路のキャリブレーションの動作例を示すタイミングチャートである。
【図３４】図３４は、実施形態６のキャリブレーションの動作例を示す説明図である。
【図３５】図３５は、パイプライン方式によるＡＤ変換回路の構成例を示すブロック図である。
【図３６】図３６は、パイプライン方式によるＡＤ変換回路の各ステージの構成例を示すブロック図である。
【図３７】図３７は、実施形態７のキャリブレーション動作における各ステージのスイッチの状態を示す説明図である。
【発明を実施するための形態】
【００２１】
実施の形態について詳述する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
【００２２】
〔実施形態１〕最大値と最小値を除いた平均値によるキャリブレーションを行うＡＤ変換器
図３は、実施形態１に係る信号処理回路１０の構成例を示すブロック図である。信号処理回路１０は、ＡＤ変換器（ＡＤＣ）１と、エラーコレクション回路（ＥＣＬ：Error Correction Logic）２と、キャリブレーション回路３と、制御回路４とを備える。ＡＤＣ１は、入力されたアナログ信号VINの電圧値を基準電圧VCMと最大／最小参照電圧VREFP／VREFNとに基づいてデジタル値ADC_RAWに変換して、ＥＣＬ２に出力する。ＡＤＣ１の変換結果であるADC_RAWには冗長ビットが含まれており、ＥＣＬ２はこの冗長性を利用して変換誤差を訂正してADC_ECLとして出力する。キャリブレーション回路３は、補正回路７と、補正値演算回路６と、平均化回路５とを備え、補正値を算出して保持する。信号処理回路１０は、通常動作を開始する前に、補正値を求めるキャリブレーション動作を行う。制御回路４はこれらの動作を制御する。補正回路７は、通常動作において、キャリブレーションによって求めた補正値を使ってADC_ECLを補正し、変換出力ADOUTとして出力する。
【００２３】
なお、図中の配線は、それぞれ任意の本数の信号線で実装されるが、図では１本か複数本かの区別はせず、所謂ベクトル表記は省略されている。このことは、本願における他の図面についても同様である。
【００２４】
キャリブレーション動作において、ＡＤＣ１は所定のアナログ信号に対応する変換結果を出力し、補正値演算回路６はその変換結果から補正値を算出する。この動作を複数回繰り返すことにより、複数の補正値が得られる。平均化回路５は、複数の補正値の平均値を算出して、最終的な補正値を求める。最終的な補正値を単に「補正値」と呼び、繰り返して算出される個々の補正値も「補正値」と呼ぶが、混乱の心配がある場合にはこれを「要素補正値」と呼ぶこととする。平均化回路５は、複数の要素補正値から最大値と最小値を除き他の複数の要素補正値の平均値を最終的な補正値として算出する。算出された補正値は、平均化回路５、補正回路７、または、キャリブレーション回路３内のその他の回路、或いは、キャリブレーション回路３の外部に保持されても良い。
【００２５】
図３に示した信号処理回路１０の構成は、ＡＤＣ１が冗長ビットを含む変換結果を出力する逐次比較型ＡＤＣであって、キャリブレーションによって求めた補正値を使って、補正回路７は製造ばらつきに起因するＡＤＣ１の直線性を補正する例を示したものである。ＡＤＣ１の他の特性、例えばオフセットを、キャリブレーションによる補正の対象としても良いし、他の方式のＡＤＣをキャリブレーションの対象としてもよい。その場合、補正値演算回路６の入力は、図示されるような補正回路７の出力ではなく他の信号が追加されまたは変更されてもよい。また、ＥＣＬ２が省略されてもよい。さらに補正回路７は、ＡＤＣ１の変換結果をデジタル的な演算処理で補正する代わりに、ＡＤＣ１の特性をアナログ的またはデジタル的に調整することができる補正信号を、ＡＤＣ１に供給するように変更してもよい。
【００２６】
したがって、信号処理回路１０に求められる必須の要件は、以下のとおりである。即ち、入力される信号のアナログ値VINをデジタル値に変換して変換値を出力するＡＤＣ１と、キャリブレーション動作によって補正値を算出する平均化回路５とを備え、前記補正値を使って前記変換値を補正して補正後の変換値ADOUTを出力するアナログ／デジタル変換器（信号処理回路）１０であって、キャリブレーション動作において以下のように動作する。信号処理回路１０は、所定のアナログ値に対応するＡＤＣ１による変換値に基づく要素補正値を、複数回に渡って平均化回路５に供給し、平均化回路５は、複数回に渡って供給された複数個の要素補正値から、少なくとも最大値と最小値とを除く他の複数の要素補正値の平均値を算出して補正値を算出する。
【００２７】
これにより、キャリブレーション動作の期間に突発的な外来ノイズなどに起因してＡＤＣ１の変換値に大きな誤差が含まれた場合にも、その影響を排除して補正値を算出することができる。
【００２８】
ここで、平均化回路５による平均の対象は、複数個の要素補正値から１個の最大値と１個の最小値を除いた残りの要素補正値であっても、最大値を含む上位から何番目かまでの要素補正値と、最小値を含む下位から何番目かまでの要素補正値とを除いた残りの要素補正値であってもよい。また、補正回路７で通常動作における補正に使われる、最終的な補正値の数（種類）は、キャリブレーションの対象に合せて複数であってもよい。詳しくは本実施形態１に係る後段の説明及び他の実施形態で後述する。
【００２９】
信号処理回路１０は、特に制限されないが、例えば、公知のＣＭＯＳ（Complementary Metal-Oxide-Semiconductor field effect transistor）ＬＳＩ（Large Scale Integrated circuit）の製造技術を用いて、シリコンなどの単一半導体基板上に形成される。
【００３０】
図４は、信号処理回路１０が搭載される半導体装置１００の一例を示す構成図である。半導体装置１００は、例えばシリコンなどの単一半導体基板上に形成されたＬＳＩで、信号処理回路１０の他に、入出力回路（ＩＯ）９０、デジタル信号処理回路９２、周辺アナログ回路９３、周辺デジタル回路９４、ＣＰＵ（Central Processing Unit）９５及びメモリ９６を備える。信号処理回路１０へのアナログ入力信号VINは、ＩＯ９０を介して半導体装置１００の外部から入力され、信号処理回路１０の出力ADOUTはデジタル信号処理回路９２に供給されて、後段の信号処理の入力とされる。
【００３１】
図５は、信号処理回路１０が搭載される半導体装置１００の別の例を示す構成図である。上記デジタル信号処理回路９２は後段信号処理回路９２とされ、半導体装置１００はさらに前段信号処理回路９１を備える。VINは半導体装置１００の外部からではなく前段信号処理回路９１によって信号処理された信号として、信号処理回路１０に入力される。他の構成は図４と同様であるので説明を省略する。
【００３２】
本実施形態１の後段及び実施形態２から実施形態６では、ＡＤＣ１が逐次比較方式である場合について説明する。
【００３３】
図６は、逐次比較方式によるＡＤＣ１の構成例を示すブロック図である。図示されるＡＤＣ１は、12bit逐次比較型Ａ／Ｄコンバータであり、冗長1bitを含む6bitの容量ＤＡＣ回路１１、7bitの抵抗ＤＡＣ回路１３、コンパレータ回路１２および逐次比較ロジック回路１４で構成され、入力信号VIN、基準電圧VCM、出力信号ADC_RAW[12:0]、参照電圧VREFP、VREFNの端子を持つ。容量ＤＡＣ回路１１のＰ側出力とＮ側出力は、コンパレータ回路１２の負極入力端子と正極入力端子にそれぞれ接続される。ここで「[12:0]」は13bitのデジタル信号であることを示す。本明細書における「[X:Y]」表記についても同様である。ただし、ここでのADC_RAW[12:0]は冗長1bitを含むので、情報量は13bit階調よりも少ない。参照電圧VREFPとVREFNは、最大値と最小値に対応するアナログ電圧であり、通常、VREFPを電源電位、VREFNを接地電位とすることが多い。また基準電圧VCMは(VREFP+VREFN)/2に近い電位とすることが多い。図６に示す構成は、以降の説明するに当たって設定している一例に過ぎず、分解能、容量ＤＡＣ回路１１と抵抗ＤＡＣ回路１２の分解能比率や冗長ビットの位置は、適宜変更可能である。
【００３４】
図７は、逐次比較型ＡＤ変換回路１に搭載される容量ＤＡＣ回路１１の構成例を示す回路図である。接続される7bitの抵抗ＤＡＣ回路１３とコンパレータ回路１２も合わせて示す。容量ＤＡＣ回路１１は、冗長1bitを含む6bitであり、その6bitに対応するｐ側の６個の容量Cp16、Cp8、Cp4、Cp2、Cp1及びCp_redと６個のスイッチSp16、Sp8、Sp4、Sp2、Sp1及びSp_redを有する。またｎ側にも同様に、６個の容量Cn16、Cn8、Cn4、Cn2、Cn1及びCn_redと６個のスイッチSn16、Sn8、Sn4、Sn2、Sn1及びSn_redを有する。容量ＤＡＣ回路１１は、さらに、２個のスイッチSp_shuntとSn_shunt、ｐ側には抵抗ＤＡＣ回路１３に接続される容量Cp_rdac、ｎ側には抵抗素子Ｒに接続される容量Cn_rdacを、それぞれ有する。抵抗ＤＡＣ回路１３は、設定される7bitのデジタル値に基づいて、VREFPからVREFNまでの範囲の電圧を容量Cp_rdacに印加することによって、その実効的な容量値を、容量Cp1と等しい値を最大値とする範囲で調整する。これにより、容量Cp1の1/2の容量値の容量から1/128の容量値の容量までさらに7個の容量を、６個の容量Cp16、Cp8、Cp4、Cp2、Cp1と同様に備えた容量ＤＡＣ回路と同等の機能を有することとなる。
【００３５】
ｐ側の容量Cp16、Cp8、Cp4、Cp2、Cp1、Cp_red及びCp_rdacのそれぞれの一方の端子が接続されており、容量ＤＡＣ回路１１のＰ側出力となる。ｐ側の容量Cp16、Cp8、Cp4、Cp2、Cp1及びCp_redの他方の端子は６個のスイッチSp16、Sp8、Sp4、Sp2、Sp1及びSp_redにそれぞれ接続されている。各スイッチは３入力であり、入力の１つは入力信号VINであり、他の２つの入力はそれぞれ参照電圧VREFPとVREFNである。Cp_rdacの他端は抵抗ＤＡＣ回路１３の出力に接続されている。また、容量ＤＡＣ回路１１のＰ側出力はスイッチSp_shuntを介して基準電圧VCMと接続されている。
【００３６】
ｎ側の容量Cn16、Cn8、Cn4、Cn2、Cn1、Cn_red及びCn_rdacのそれぞれの一方の端子が接続されており、容量ＤＡＣ回路１１のＮ側出力となる。ｎ側の容量Cn16、Cn8、Cn4、Cn2、Cn1及びCn_redの他方の端子は６個のスイッチSn16、Sn8、Sn4、Sn2、Sn1及びSn_redにそれぞれ接続されている。各スイッチは３入力であり、入力の１つは基準電圧VCMであり、他の２つの入力はそれぞれ参照電圧VREFPとVREFNである。Cn_rdacの他端は抵抗Ｒを介してVREFPに接続されている。また、容量ＤＡＣ回路１１のＮ側出力はスイッチSn_shuntを介して基準電圧VCMと接続されている。
【００３７】
容量ＤＡＣ回路１１を構成する各容量の設計値について説明する。単位容量をCunitとしたとき、Cp16とCn16は、設計値としてCunitを16個並列に接続した容量値を持ち、ＡＤＣ１の変換出力の最上位ビットADC_RAW[12]に対応する。以下同様に、Cp8とCn8は、設計値としてCunitを8個並列に接続した容量値を持ち、ADC_RAW[11]に対応し、Cp4とCn4は、設計値としてCunitを4個並列に接続した容量値を持ち、ADC_RAW[10]に対応し、Cp2とCn2は、設計値としてCunitを2個並列に接続した容量値を持ち、ADC_RAW[9]に対応する。さらに、Cp1とCn1は、設計値としてCunitと等しい容量値を持ち、ADC_RAW[8]に対応し、Cp_redとCn_red、Cp_rdacとCn_rdacの設計値もCunitと等しい容量値とされる。Cp_redとCn_redの設計値がCunitと等しい容量値とされるため、対応するADC_RAW[7]はADC_RAW[8]と同じ重みを持ち、冗長ビットとして機能する。即ち、ADC_RAW[8]以上の各ビットで発生するADC_RAW[8]と同じ重み未満のエラーを訂正することができる。Cp_redとCn_redは、冗長容量と呼ばれ、どのビット位置に配置するかは任意である。
【００３８】
図６の説明に戻る。
【００３９】
容量ＤＡＣ回路１１のＰ側出力、Ｎ側出力はそれぞれ、コンパレータ回路１２のＮ側、Ｐ側に接続されている。抵抗ＤＡＣ回路１３は、例えば、抵抗素子とスイッチで構成されたD/Aコンバータ回路であり、R-2R回路または抵抗ラダー回路などを用いて構成することが出来る。コンパレータ回路１２は、Ｐ側入力電圧＞Ｎ側入力電圧のときにハイレベル"H"を出力し、Ｐ側入力電圧＜Ｎ側入力電圧ときロウレベル"L"を出力する。逐次比較ロジック回路１４は、ＡＤＣ１内の各回路への制御信号を供給して、逐次比較動作をさせる回路である。制御信号は比較開始信号やサンプリング開始信号等であって、コンパレータ回路１２からの出力を受けて、容量ＤＡＣ回路１１、抵抗ＤＡＣ回路１３、コンパレータ回路１２の制御を行う。
【００４０】
ＡＤＣ１が上述の12bit逐次比較型Ａ／Ｄコンバータである場合の、図３の説明に戻る。エラーコレクション回路（ＥＣＬ）２は上述の冗長ビットを含んだ13bitの信号ADC_RAW[12:0]を、冗長ビットを含まない12bitの信号ADC_ECL[11:0]に変換する回路である。
【００４１】
キャリブレーション回路３の各構成要素について、最上位ビットであるADC_RAW[12]に対応する容量Cp16の容量ミスマッチを補正する場合の回路を例として説明する。ここで容量ミスマッチとは、Cp16と下位のCp8+Cp4+Cp2+Cp1+Cp_rdacとの間の相対的な製造ばらつきを意味する。Cp16の上述の設計値からの絶対誤差を補正するよりも、相対誤差を小さくする方が、ＡＤＣ１の直線性のキャリブレーションとしては有効である。そこで、キャリブレーション回路３では、Cp16とCp8+Cp4+Cp2+Cp1+Cp_rdacとの差分を補正値として算出している。このようなキャリブレーションを実現するためのキャリブレーション回路３の各構成要素の構成例について、以下詳細に説明する。
【００４２】
図８は、補正回路７の構成例を示すブロック図である。補正回路７は、マルチプレクサ３５と加算回路３６から構成され、補正値e11[11:0]が決定された後はADOUT[11:0] = ADC_ECL[11:0] + e11[11:0]*ADC_RAW[12]となる。このとき、ADOUT[11:0]は補正回路７の出力であって、補正されたA/Dコンバータ出力、e11[11:0]は容量Cp16の容量ミスマッチ量に応じた最上位ビットの補正値である。なお、図３では、ＡＤＣ１から出力されるADC_RAW[12]の補正回路７への入力配線が、図示を省略されている。
【００４３】
図９は、補正値演算回路６の構成例を示すブロック図である。ADOUT[11:0]の値を、サンプリング状態１の変換結果ADOUT_Cとサンプリング状態２の変換結果ADOUT_Sに分配し保持する分配回路３８と、両者の差分ADC_SUB[11:0]を求める減算回路３７から構成される。サンプリング状態１とサンプリング状態２については後述する。
【００４４】
図１０は、最大値／最小値除去機能を有する平均化回路５の構成例を示すブロック図である。平均化回路５は、最大値／最小値除去回路３０、累算回路３１、除算回路３２及びレジスタ３４から構成される。補正値演算回路６から差分ADC_SUB[11:0]が複数回（Ｎ回）に渡って繰り返し入力される。ここでＮは任意の整数であり、大きな数値を与える程、キャリブレーションに長い時間を要する代わりに、ランダムノイズの影響を軽減することができる。最大値／最小値除去回路３０は、Ｎ個のADC_SUB[11:0]から最大値１個と最小値１個を除去し、残りのＮ−２個を累算回路３１に出力する。累算回路３１は入力されたＮ−２個のADC_SUB[11:0]を累算して合計値を求め、除算回路３２に出力する。除算回路３２は、入力された合計値をＮ−２で割ることによって、最大値と最小値が除外された補正値の平均値が算出され、レジスタ３４に保持される。レジスタ３４は最終的な補正値e11[11:0]を保持する。
【００４５】
図１１は、最大値／最小値除去回路３０の一構成例を示すブロック図である。最大値／最小値除去回路３０は、ADC_SUB[11:0]及び制御信号RESとCOMPが入力され、２個のレジスタ（ＲＥＧ０とＲＥＧ１）４０と４１、２個のコンパレータ４２と４３、及び、４入力１出力のマルチプレクサ４４から構成される。２個のコンパレータ４２と４３は、２個のレジスタ（ＲＥＧ０とＲＥＧ１）４０と４１に格納されている値と、入力されたADC_SUB[11:0]とをそれぞれ比較して、比較結果CMP_RES[1:0]を出力する。比較結果CMP_RES[1]は、入力されたADC_SUB[11:0]がレジスタ（ＲＥＧ１）４１に格納されている値より大きいことを示し、比較結果CMP_RES[0]は、入力されたADC_SUB[11:0]がレジスタ（ＲＥＧ０）４０に格納されている値より小さいことを示す。レジスタ（ＲＥＧ１）４１は比較結果CMP_RES[1]がアサートされたときにADC_SUB[11:0]を読み込んで格納し、レジスタ（ＲＥＧ０）４０は比較結果CMP_RES[0]がアサートされたときにADC_SUB[11:0]を読み込んで格納する。マルチプレクサ４４には、ADC_SUB[11:0]、レジスタ（ＲＥＧ１）４１に格納されている値、レジスタ（ＲＥＧ０）４０に格納されている値、及び、０が入力されており、比較結果CMP_RES[1:0]に応じて選択され、累算回路３１へ出力される。
【００４６】
キャリブレーション動作中、レジスタ（ＲＥＧ１）４１には累算が開始されてからその時点までに入力された複数のADC_SUB[11:0]のうちの最大値が、レジスタ（ＲＥＧ０）４０は同じく最小値がそれぞれ格納されている。その時点に入力されたADC_SUB[11:0]がレジスタ（ＲＥＧ１）４１に格納された値より大きければ、CMP_RES[1:0]が10となり、累算回路３１にはレジスタ（ＲＥＧ１）４１の格納値、すなわちそれまでの最大値が出力され、レジスタ（ＲＥＧ１）４１には新たにそのときのADC_SUB[11:0]、すなわち、新たな最大値が格納される。その時点に入力されたADC_SUB[11:0]がレジスタ（ＲＥＧ０）４０に格納された値より小さければ、CMP_RES[1:0]が01となり、累算回路３１にはレジスタ（ＲＥＧ０）４０の格納値、すなわちそれまでの最小値が出力され、レジスタ（ＲＥＧ０）４０には新たにそのときのADC_SUB[11:0]、すなわち、新たな最小値が格納される。その時点に入力されたADC_SUB[11:0]が、レジスタ（ＲＥＧ０）４０に格納された値よりとレジスタ（ＲＥＧ１）４１に格納された値の間の値の場合は、そのまま累算回路３１に出力され、レジスタ（ＲＥＧ０とＲＥＧ１）４０と４１の値はいずれも更新されない。
【００４７】
このような動作によって、Ｎ個入力されたADC_SUB[11:0]のうち１個の最大値と１個の最小値が除去され、残りのＮ−２個が累算回路３１に出力される。
【００４８】
なお、累算開始時にはレジスタ（ＲＥＧ０とＲＥＧ１）４０と４１には初期値が格納されていることから、さらに以下の制御が必要である。制御信号COMPにより、累算開始直後２回分は強制的にCMP_RES[1:0]=11とする。制御信号RESにより、累算開始直後最初のADC_SUB[11:0]はレジスタ（ＲＥＧ０とＲＥＧ１）４０と４１に強制的に格納する。
【００４９】
図１２は、最大値／最小値除去回路３０の別の構成例を示すブロック図である。最大値／最小値除去回路３０は、入力信号ADC_SUB[11:0]をＮ個格納するＮ個のレジスタ（ＲＥＧ＿１〜ＲＥＧ＿Ｎ）３９＿１〜３９＿Ｎと、それらに格納される値の中から最大値と最小値をサーチし、最大値と最小値以外のレジスタ格納値を順次累算回路３１に出力する探索除去回路４５から構成される。
【００５０】
最大値／最小値除去回路３０は、フェーズ１とフェーズ１終了後のフェーズ２に時間的に分かれて動作する。フェーズ１では、順次入力されるADC_SUB[11:0]の値を、Ｎ個のレジスタ（ＲＥＧ＿１〜ＲＥＧ＿Ｎ）３９＿１〜３９＿Ｎに順次格納する。フェーズ２では、Ｎ個のレジスタ（ＲＥＧ＿１〜ＲＥＧ＿Ｎ）３９＿１〜３９＿Ｎに格納された値から最大値と最小値をサーチし、最大値と最小値以外のレジスタ格納値を順次累算回路３１に出力する。
【００５１】
最大値／最小値除去回路３０は、上述の図１１と図１２に例示した構成例の他、その要旨を逸脱しない範囲において種々の構成を採用することができる。
【００５２】
ＡＤＣ１において、容量ＤＡＣ回路１１を構成する容量に容量ミスマッチがある場合は、A/D変換結果の直線性が悪化することとなる。
【００５３】
図１３は、キャリブレーションの動作例を示す説明図である。本実施形態１に示すキャリブレーション動作によって、最上位ビットに対応する容量Cp16の容量ミスマッチが補正される。図１３には、キャリブレーション前と後のA/D変換特性が、横軸を入力アナログ電圧VIN、縦軸をデジタル変換結果ADOUTとするグラフで示される。各グラフは、入力電圧VINが基準電圧VCMと等しい（VIN = VCM）付近の関係を拡大したものである。それぞれ、Cp16が理想的な状態（Cp16 = Cp16_ideal）、Cp16にミスマッチがあり容量値が大きい側に振れた場合（Cp16 > Cp16_ideal）、容量値が小さい側に振れた場合（Cp16 < Cp16_ideal）の３つのケースについてA/D変換特性が示されている。ここで、「Cｐ16が理想的な状態」とは、Cp16の容量値が設計値に等しいこと（絶対精度）意味するわけではなく、他の容量の容量値の整合性（相対精度）の観点から理想的であることを言う。例えばCp16の容量値が、Cp8の容量値の正確に２倍であり、Cp4の容量値の正確に４倍であり、Cp2の容量値の正確に８倍であり、Cp1とCp_redとCp_rdacそれぞれの容量値の正確に１６倍であるのが理想的である。よって、「Cp16_ideal」は上述の理想的な状態を象徴的に意味するに過ぎず、具体的な数値が規定されるわけではない。
【００５４】
VIN = VCM付近ではA/D変換結果の最上位ビットが切り替わる。即ち、VINがVCMより低いときは最上位ビットADC_RAW[12] = 0、VINがVCMより高いときは最上位ビットADC_RAW[12] = 1となる。このときVINがVCMより低いときにはCp16が変換に寄与しないが、高いときには変換に寄与するので、Cp16の容量値にミスマッチがあると、理想的な直線状の特性から外れて変換結果に段差が現れる。即ち、Cp16が大きい側に振れた場合（Cp16 > Cp16_ideal）には変換結果が小さい側に振れ、Cp16が小さい側に振れた場合（Cp16 < Cp16_ideal）には変換結果が大きい側に振れる。本実施形態１では、ADC_RAW[12] = 1のときに補正値e11[11:0]をADC_ECL[11:0]に加算してADCOUT[11]が0から1に切り替わる、VIN=VCM付近での段差をなくす。図１３下段において、破線は補正前の特性（ADC_ECL[11:0]）を示し、矢印は補正値e11[11:0]を示し、実線は補正後の特性ADOUT[11:0]を示す。
【００５５】
キャリブレーション動作についてさらに詳しく説明する。
【００５６】
図１６は、キャリブレーション動作における、容量ＤＡＣ回路１１内の最上位ビット容量の補正値を算出する動作例を示すタイミングチャートである。図１４及び図１５に示す回路図には、最上位ビットに対応する容量Cp16の容量ミスマッチに対する補正値e11[11:0]を求める際のキャリブレーション動作時のサンプリング動作期間における、容量ＤＡＣ回路１１の内部スイッチ接続状態と抵抗ＤＡＣ回路１３からの出力状態とが示されている。
【００５７】
図１４には、容量ＤＡＣ回路１１内の最上位ビットに対応する容量Cp16へのサンプリング状態（状態１）でのスイッチの状態と抵抗ＤＡＣ回路１３からの出力状態とを示す。容量ＤＡＣ回路１１のＰ側出力とＮ側出力とはそれぞれスイッチSp_shuntとSn_shuntに基準電圧VCMに接続されている。容量Cp16はスイッチSp16によってVREFPに接続され、容量Cp8、Cp4、Cp2、Cp1、Cp_redはそれぞれスイッチSp8、Sp4、Sp2、Sp1、Sp_redによってVREFNに接続されている。抵抗ＤＡＣ回路１３はVREFNを出力しており、これによって容量Cp_rdacはVREFNに接続されているのと同等になる。
【００５８】
図１５には、容量ＤＡＣ回路１１内の最上位ビットより下位の容量（Cp8+Cp4+Cp2+Cp1+Cp_rdac）へのサンプリング状態（状態２）でのスイッチの状態と抵抗ＤＡＣ回路１３からの出力状態とを示す。容量ＤＡＣ回路１１のＰ側出力とＮ側出力とは、上述の状態１と同様に、それぞれスイッチSp_shuntとSn_shuntに基準電圧VCMに接続されている。容量Cp16はスイッチSp16によってVREFNに接続され、容量Cp8、Cp4、Cp2、Cp1はそれぞれスイッチSp8、Sp4、Sp2、Sp1によってVREFPに接続されている。容量Cp_redは、状態１から変わらず、スイッチSp_redによってVREFNに接続されている。一方、抵抗ＤＡＣ回路１３はVREFPを出力しており、これによって容量Cp_rdacはVREFPに接続されているのと同等になる。
【００５９】
図１６の説明に戻る。
【００６０】
時刻ｔ０にキャリブレーション動作が開始されると、ＡＤＣ１は上述の状態１のサンプリングを行った後に変換動作を行い、時刻ｔ１に変換結果１を出力する。時刻ｔ１には上述の状態２のサンプリングを行った後に変換動作を行い、時刻ｔ２に変換結果２を出力する。その後、時刻ｔ２〜ｔ４に１回目の補正値e11_1を算出する。これが１回目の補正値演算である。ノイズが全く無い理想状態においては変換結果１から変換結果２を引いた差（変換結果１−変換結果２）が補正値e11[11:0]となる。この補正値の算出方法は、状態１においてCp16でサンプリングする電荷と、状態２においてCp8+Cp4+Cp2+Cp1+Cp_rdacでサンプリングする電荷の差がCp16のミスマッチ量に換算できることを利用している。補正値演算回路６（図９）ではADC_SUB[11:0]＝変換結果１−変換結果２となるように、分配回路３８により変換結果１（ＡＣＤＯＵＴ＿Ｃ）と変換結果２（ＡＤＯＵＴ＿Ｓ）を減算回路３７に入力し、タイミングの整合をとって減算を行い、変換結果１−変換結果２をADC_SUB[11:0]として出力する。このタイミング制御は、制御回路４（図３）から出力される制御信号によって行われる。
【００６１】
以下同様に、時刻ｔ２から状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、１回目の補正値演算（変換結果１−変換結果２）を行って補正値e11_2を算出する。これをパイプライン的に合計Ｎ回繰り返すことにより、時刻ｔ９までにＮ個の補正値e11_1〜e11_Nを得る。その結果を平均化回路５に入力して最大値と最小値を除去し、残ったＮ−２個の補正値の平均値を求めて、Cp16の補正値e11とする。
【００６２】
ノイズが全く無い理想状態においてはADC_SUB[11:0]の値が補正値e11[11:0]であるが、実際は、ノイズ（素子ノイズや電源ノイズ、他の回路からの回り込みノイズ等）の影響でADC_SUB[11:0]の値にノイズによる誤差が含まれる。状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、補正値演算（変換結果１−変換結果２）のセットをＮ回繰り返すと、ADC_SUB[11:0]の値をＮ個、即ちＮ個の補正値e11_1〜e11_Nを得る。平均化回路５では、Ｎ個の補正値e11_1〜e11_N（ADC_SUB[11:0]）のうち、最大値と最小値を除いたＮ−２個のADC_SUB[11:0]を累算し、その後Ｎ−２で割ることによって平均値を算出し補正値e11[11:0]を出力するという動作をしている。
【００６３】
以上は最上位ビットに対応する容量Cp16を対象としたキャリブレーション動作であるが、冗長ビットよりも上位のビットであれば、複数のビットに対応する容量を対象とすることもできる。
【００６４】
上位３ビットの補正を行うキャリブレーション動作について説明する。Cp16の補正値e11[11:0]とC8の補正値e10[11:0]とC4の補正値e9[11:0]とを順次算出する。ADC_RAW[12:10]に基づいて各容量Cp16、Cp8、Cp4がAD変換に寄与したか否かを判断し、寄与したときには、補正値e11[11:0]、e10[11:0]、e9[11:0]のうち対応する補正値を変換結果ADC_ECL[11:0]に加算して変換出力ADOUT[11:0]を得る。
【００６５】
図１９は、キャリブレーション動作における、容量ＤＡＣ回路１１内の最上位ビットから３ビット目までの容量Cp16、Cp8、Cp4の補正値e11[11:0]、e10[11:0]、e9[11:0]を算出する動作例を示すタイミングチャートである。図１７及び図１８に示す回路図には、最上位から３ビット目に対応する容量Cp4の容量ミスマッチに対する補正値e9[11:0]を求める際のキャリブレーション動作のサンプリング動作期間における、容量ＤＡＣ回路１１の内部スイッチ接続状態と抵抗ＤＡＣ回路１３からの出力状態とが示されている。
【００６６】
図１７には、容量ＤＡＣ回路１１内の最上位から３ビット目に対応する容量Cp4へのサンプリング状態（状態１）でのスイッチの状態と抵抗ＤＡＣ回路１３からの出力状態とを示す。容量ＤＡＣ回路１１のＰ側出力とＮ側出力とはそれぞれスイッチSp_shuntとSn_shuntに基準電圧VCMに接続されている。容量Cp4はスイッチSp4によってVREFPに接続され、容量Cp16、Cp8、Cp2、Cp1、Cp_redはそれぞれスイッチSp16、Sp8、Sp2、Sp1、Sp_redによってVREFNに接続されている。抵抗ＤＡＣ回路１３はVREFNを出力しており、これによって容量Cp_rdacはVREFNに接続されているのと同等になる。
【００６７】
図１８には、容量ＤＡＣ回路１１内の最上位から３ビット目より下位の容量（Cp2+Cp1+Cp_rdac）へのサンプリング状態（状態２）でのスイッチの状態と抵抗ＤＡＣ回路１３からの出力状態とを示す。容量ＤＡＣ回路１１のＰ側出力とＮ側出力とは、上述の状態１と同様に、それぞれスイッチSp_shuntとSn_shuntに基準電圧VCMに接続されている。容量Cp16、Cp8、Cp4はそれぞれスイッチSp16、Sp8、Sp4によってVREFNに接続され、容量Cp2、Cp1はそれぞれスイッチSp2、Sp1によってVREFPに接続されている。容量Cp_redは、状態１から変わらず、スイッチSp_redによってVREFNに接続されている。一方、抵抗ＤＡＣ回路１３はVREFPを出力しており、これによって容量Cp_rdacはVREFPに接続されているのと同等になる。
【００６８】
図示は省略するが、図１６と同様のシーケンスで、状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、補正値演算（変換結果１−変換結果２）を行って補正値を算出する動作を、パイプライン的に合計Ｎ回繰り返すことにより、Ｎ個の補正値e9_1〜e9_Nを得る。その結果を平均化回路５に入力して最大値と最小値を除くＮ−２個の補正値の平均値を求め、Cp4の補正値e9とする。
【００６９】
最上位ビットから３ビット目までの３個の容量に対応する３個の補正値を算出し補正の為に利用するために、キャリブレーション回路３は、図８に示した補正回路に代えて図２０に示す補正回路７を備え、図１０に示した平均化回路に代えて図２１に示す平均化回路５を備える。
【００７０】
図２１は、容量ＤＡＣ回路内の最上位ビットから３ビット目までの容量の補正値を算出するキャリブレーションに対応する、最大値／最小値除去機能を有する平均化回路５の構成例を示すブロック図である。図１０に示したのと同様にADC_SUB[11:0]が入力される。平均化回路５は、最大値／最小値除去回路３０、累算回路３１、除算回路３２及び３個のレジスタ３４＿１１、３４＿１０、３４＿９から構成される。上述のシーケンスで、ADC_SUB[11:0]から入力されるＮ個の補正値e9_1〜e9_Nは、最大値／最小値除去回路３０で最大値と最小値が除去され、累算回路３１で残りのＮ−２個の補正値の合計が算出され、除算回路３２によってその合計をN−２で割って平均値であるCp4の補正値e9が算出され、レジスタ３４＿９に格納される。
【００７１】
最上位から２ビット目に対応する容量Cp8の容量ミスマッチに対する補正値e10[11:0]を求める際のキャリブレーション動作時におけるサンプリング動作、補正値の算出動作もこれと同様であり、算出された補正値e10[11:0]は平均化回路５のレジスタ３４＿１０に格納される。また、最上位ビットに対応する容量Cp16の容量ミスマッチに対する補正値e11[11:0]を求める際のキャリブレーション動作時におけるサンプリング動作、補正値の算出動作は、上述の図１４〜図１６を引用して説明した動作と同様であり、算出された補正値e11[11:0]は平均化回路５のレジスタ３４＿１１に格納される。累算回路３１は、補正値e9[11:0]、e10[11:0]、e11[11:0]が算出されるたびにリセットされる。
【００７２】
図２０は、容量ＤＡＣ回路１１内の最上位ビットから３ビット目までの容量Cp16、Cp8、Cp4の補正値e11[11:0]、e10[11:0]、e9[11:0]を算出するキャリブレーションに対応する、補正回路７の構成例を示すブロック図である。補正回路７は、３個の補正値に対応する３個のマルチプレクサ３５＿１１、３５＿１０、３５＿１０と加算回路３６から構成される。ADC_RAW[12] = 1のとき容量Cp16がA/D変換に寄与したと判定され、対応する補正値e11[11:0]がADC_ECL[11:0]に加算される。同様に、ADC_RAW[11] = 1のときは容量Cp8が、ADC_RAW[10] = 1のときは容量Cp4が、それぞれA/D変換に寄与したと判定され、対応する補正値e10[11:0]、e9[11:0]がADC_ECL[11:0]に加算される。即ち、ADOUT[11:0] = ADC_ECL[11:0] + e11[11:0]*ADC_RAW[12]+ e10[11:0]*ADC_RAW[11]+ e9[11:0]*ADC_RAW[10]となる。
【００７３】
補正値e11[11:0]、e10[11:0]、e9[11:0]を算出する際にそれぞれ求めた平均化前の補正値の数は、全てＮ個であるとして説明したが、補正値ごとに異なる数とすることもできる。一方、同じ数とすることにより、平均化回路５は同じ動作を繰り返せばよいので、構成と制御は単純化される。
【００７４】
図１９の説明に戻る。
【００７５】
時刻ｔ０にキャリブレーション動作が開始されると、まずCp4の補正値e9[11:0]を算出する。上述の状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、補正値演算（変換結果１−変換結果２）のセットを繰り返し、最大値と最小値を除いて残りを平均することにより、時刻ｔ１にCp4の補正値e9[11:0]が得られる。次に時刻ｔ１からCp8の補正値e10[11:0]を算出する。上述と同様に状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、補正値演算（変換結果１−変換結果２）のセットを繰り返し、最大値と最小値を除いて残りを平均することにより、時刻ｔ２にCp8の補正値e10[11:0]が得られる。最後に時刻ｔ２からCp16の補正値e11[11:0]を算出する。上述と同様に状態１のサンプリング、ＡＤ変換、状態２のサンプリング、ＡＤ変換、補正値演算（変換結果１−変換結果２）のセットを繰り返し、最大値と最小値を除いて残りを平均することにより、時刻ｔ３にCp16の補正値e11[11:0]が得られる。時刻ｔ４からは、図２０を引用して説明した補正回路７を動作させることにより、通常動作を行うことができる。
【００７６】
これにより、最上位ビットだけではなく、それより下位のビットに対応する容量のキャリブレーションも行うことができる。この動作原理によれば、冗長ビットよりも上位のビットであれば補正が可能である。
【００７７】
以上説明したように、本実施形態１は、キャリブレーション回路３内の平均化回路５に最大値／最小値除去回路３０を設けることを特徴とする。この最大値／最小値除去回路３０を設けることで、図２（ｂ）のようにキャリブレーションの補正値演算期間中に、電源グラウンドや参照電圧のノイズ、半導体装置内外からの回り込みノイズ等々による突発的な外来ノイズにより、補正値演算結果のひとつに本来補正値とすべき値から大きくずれた値がふくまれていた場合でも、そのずれた値を平均化の対象から除去することが可能となる。これにより、本来補正値とすべき値に近い値が選ばれやすくなり、キャリブレーションの精度が向上する。
【００７８】
一方、本特徴を持たない平均化回路においても、平均化回数を大幅に増やすことで、突発的な外来ノイズの影響を除去することは原理的に可能である。しかし、通常、実使用において、システム上起動時間として設定可能な時間は限られる。すなわちキャリブレーションに割り当てることが可能な時間は有限である。その演算値のずれを設計段階で予測困難な突発的な外来ノイズによる影響に対して、平均化回数を増やすことで対応するためには、必要以上の平均化回数増加を招くこととなる。本特徴を付することで、平均化回数の設定にあたり、突発的なノイズによる影響に対する考慮を除外することが出来、最適な平均化回数の設定が可能となる。すなわち、素子ノイズ等のランダムノイズの影響が除去可能な平均化回数を設定すればよいこととなる。
【００７９】
なお、冗長容量Cp_redとCp_rdacを実装するビット位置は、上述した通り任意であるが、冗長容量Cp_redとCp_rdacを実装するビット位置よりも上位の容量がキャリブレーションの対象となり得る。また、キャリブレーション動作は、上述した実施形態のように、下位ビットから順に最上位ビットまで行う。下位ビットでの誤差はそのビットのキャリブレーションによって補正され、上位ビットのキャリブレーションをより正確に行うことができる。なお、キャリブレーションを実際に実行するビット数は、任意である。
【００８０】
〔実施形態２〕最大値と最小値を保持するレジスタ
本実施形態２では、キャリブレーション回路３内の平均化回路５に最大値と最小値を除去する機能を付加するための別の構成例を示す。
【００８１】
図２２は、本実施形態２に係る最大値／最小値除去機能を有する平均化回路５の構成例を示すブロック図である。平均化回路５は、図１０に示した平均化回路５と同様に累算回路３１とレジスタ３４を有する一方、最大値／最小値除去回路３０を設ける代わりに、最大値を保持するレジスタ４１と最小値を保持するレジスタ４０と、減算回路４７とを有し、除算回路３２に代えてＲビット右シフト回路３３を有する（ＲはＮに依存して後述のように決定される整数）。
【００８２】
リセット解除後、累算回路３１は、ADC_SUB[11:0]に入力されるＮ個の補正値e11_1〜e11_Nの合計値を算出する。レジスタ４１はこれと並列に、Ｎ個の補正値e11_1〜e11_Nを順次比較することにより、最終的に最大値を保持する。レジスタ４０もまたこれと並列に、Ｎ個の補正値e11_1〜e11_Nを順次比較することにより、最終的に最小値を保持する。減算回路４７は、端子Ａに入力されるＮ個の補正値e11_1〜e11_Nの合計値から、レジスタ４１から端子Ｂに入力される最大値と、レジスタ４０から端子Ｃに入力される最小値とを減算して出力する。ここで、平均化前の補正値の数Ｎを２のＲ乗＋２とすることにより、Ｎ−２による除算回路３２をＲビット右シフト回路３３に置き換えることができる。Ｒビット右シフト回路３３は、Ｒが固定値であればトランジスタなどの能動的な回路を必要とせず、配線のつなぎかえだけで実装される。算出された平均値は、補正値e11[11:0]としてレジスタ３４に保持される。
【００８３】
他の構成と動作は、実施形態１と同様であるので説明を省略する。ここで、複数のビットに対応する容量を対象とするキャリブレーション動作を行う実施形態に変更することもできる。図２２に示す平均化回路５において、レジスタ３４を、図２１と同様に複数の補正値を格納する複数のレジスタ（例えばレジスタ３４＿１１、３４＿１０、３４＿９）に代え、累算回路３１と最大値レジスタ４１、最小値保持レジスタ４０は、複数の補正値が算出され上記複数のレジスタに格納されるたびに、リセットされるように構成し制御する。
【００８４】
これにより、図１１や図１２を引用して説明したような、最大値／最小値除去回路３０を搭載する必要がなくなり、回路規模が低減され、合せて制御が単純化される。
【００８５】
また、除算回路３２をＲビット右シフト回路３３に置き換えることにより、除算に必要な回路の規模が大幅に低減される。なお、実施形態１においても、平均化前の補正値の数Ｎを２のＲ乗＋２とすることにより、Ｎ−２による除算回路３２をＲビット右シフト回路３３に置き換えることができる。
【００８６】
〔実施形態３〕上位Ｘ個と下位Ｘ個の差分値を保持するレジスタ
実施形態１及び２では、平均化前のＮ個の補正値から１個の最大値と１個の最小値を除去し、残るＮ−２個の補正値を平均して最終的な補正値とすることにより、突発的なノイズの影響を受けて本来の値からずれた補正値を除去し、より正確な補正値を算出する。これに対して本実施形態では、最大値を含む上位側Ｘ個の補正値と、最小値を含む下位側Ｘ個の補正値とを、平均化前のＮ個の補正値から除去して、残るＮ−２Ｘ個の補正値を平均して最終的な補正値とする。ここで、上位側と下位側の除去する補正値の数は、互いに異なる個数としても良い。
【００８７】
このような機能拡張は、図２２に示した平均化回路５を改良することにより、実現することができる。
【００８８】
図２３は、本実施形態３に係る最大値／最小値除去機能を有する平均化回路５の構成例を示すブロック図である。平均化回路５は、図２２に示した平均化回路５と同様に累算回路３１と減算回路４７とＲビット右シフト回路３３とレジスタ３４を有する一方、最大値を保持するレジスタ４１と最小値を保持するレジスタ４０を、上位側Ｘ個の値を保持する上位側保持レジスタ４１と下位側Ｘ個の値を保持する下位側保持レジスタ４０とにそれぞれ拡張し、さらに加算回路４６を設ける。
【００８９】
リセット解除後、累算回路３１は、ADC_SUB[11:0]に入力されるＮ個の補正値e11_1〜e11_Nの合計値を算出する。レジスタ４１はこれと並列に、Ｎ個の補正値e11_1〜e11_Nを順次比較することにより、最大値を含む上位側Ｘ個の補正値を保持する。レジスタ４０もまたこれと並列に、Ｎ個の補正値e11_1〜e11_Nを順次比較することにより、最小値を含む下位側Ｘ個の補正値を保持する。加算回路４６は、レジスタ４１に保持される上位側Ｘ個の補正値とレジスタ４０に保持される下位側Ｘ個の補正値とを全て加算して、減算回路４７に供給する。減算回路４７は、端子Ａに入力されるＮ個の補正値e11_1〜e11_Nの合計値から、端子Ｂに入力される上位側Ｘ個の補正値と下位側Ｘ個の補正値との合計値を減算して出力する。ここで、平均化前の補正値の数Ｎを２のＲ乗＋２Ｘとすることにより、Ｒビット右シフト回路３３を利用することができる。算出された平均値は、補正値e11[11:0]としてレジスタ３４に保持される。
【００９０】
他の構成と動作は、実施形態１、２と同様であるので説明を省略する。ここで、複数のビットに対応する容量を対象とするキャリブレーション動作を行う実施形態に変更することもできる。図２３に示す平均化回路５において、レジスタ３４を、図２１と同様に複数の補正値を格納する複数のレジスタ（例えばレジスタ３４＿１１、３４＿１０、３４＿９）に代え、累算回路３１と上位側保持レジスタ４１、下位側保持レジスタ４０は、複数の補正値が算出され上記複数のレジスタに格納されるたびに、リセットされるように構成し制御する。
【００９１】
このように上位側保持レジスタ４１および下位側保持レジスタ４０を拡張することで、複数回の突発的な外来ノイズによって補正値演算結果に複数の大きなずれを持つ結果が含まれていたとしても、除去することが可能となり、突発的な外来ノイズの影響の除去という観点ではより効果的である。そのため、実施形態１、２に比べてよりノイジーな環境でのキャリブレーションにも耐えることが出来る。また、大きな外来ノイズが周期的に、あるいは、補正値演算結果が特定量ずれるよう規則的に、かつ、比較的頻繁に発生している環境も考えられる。その場合、単純な平均化回数の増加という対応ではノイズ影響の除去は原理的に不可能であるが、本実施形態の特徴を付すことでその影響も除去可能である。
【００９２】
〔実施形態４〕リミッタ
実施形態１〜３の平均化回路５にリミッタを追加することで、さらに想定以上の外来ノイズが発生した場合に補正値のずれを低減することが可能である。図２４〜２６は、本実施形態４のリミッタが追加された平均化回路５の種々の構成例を示すブロック図である。ここで、リミッタとは、入力された値が設定範囲を外れた場合に出力に制限をかける回路である。例えば、入力された値が所定の上限値を超えた時にその上限値に置換し、所定の下限値を下回った時にその下限値に置換して出力する。
【００９３】
図２４は、平均化回路５の第１の構成例を示すブロック図である。平均化回路５は、図１０に示した平均化回路と同様に、最大値／最小値除去回路３０、累算回路３１、除算回路３２及びレジスタ３４を備え、さらに、補正値e11[11:0]の値を保持するレジスタ３４の前段にリミッタ５０＿２を有する。除算回路(÷(N-2)演算器)３２の出力が、リミッタ５０の設定範囲を外れた値になるとき、リミッタ５０＿２により補正値e11[11:0]に制限をかけることが出来る。
【００９４】
図２５は、平均化回路５の第２の構成例を示すブロック図である。平均化回路５は、図１０に示した平均化回路と同様に、最大値／最小値除去回路３０、累算回路３１、除算回路３２及びレジスタ３４を備え、さらに、最大値／最小値除去回路３０の前段にリミッタ５０＿１を有する。入力される平均化前の補正値が、リミッタ５０＿１の設定範囲を外れた値になるとき、リミッタ５０＿１により制限をかけることが出来る。これにより、累算回路３０に想定範囲外の値が入力されることがなくなり、例えば累算回路３０におけるオーバーフローの発生が予防される。
【００９５】
図２６は、平均化回路５の第３の構成例を示すブロック図である。平均化回路５は、図１０に示した平均化回路と同様に、最大値／最小値除去回路３０、累算回路３１、除算回路３２及びレジスタ３４を備え、さらに、最大値／最小値除去回路３０の前段にリミッタ５０＿１を有し、さらにレジスタ３４の前段にリミッタ５０＿２を有する。入力される平均化前の補正値がリミッタ５０＿１の設定範囲を外れた値になるときにリミッタ５０＿１により制限をかけることが出来、さらに、除算回路(÷(N-2)演算器)３２の出力が、リミッタ５０＿２の設定範囲を外れた値になるとき、リミッタ５０＿２により補正値e11[11:0]に制限をかけることが出来る。これにより、累算回路３０に想定範囲外の値が入力されることがなくなり、例えば累算回路３０におけるオーバーフローの発生が予防され、かつ、算出される補正値e11[11:0]にも制限をかけることが出来る。
【００９６】
本実施形態４に示すようにリミッタ５０＿１及び／または５０＿２を平均化回路５に追加することにより、キャリブレーション時の周辺環境が想定以上にノイジーであり、キャリブレーションを行うことでキャリブレーションを行わない場合よりA/D変換精度が劣化してしまうような事態を防止することができる。レジスタ３４の前段にリミッタ５０＿２を設けることにより、キャリブレーション時の外来ノイズにより、実際に求めるべき補正値から大きくずれた値を計算してしまっていたとしても、一定以上の精度劣化を防ぐことが出来る。最大値／最小値除去回路３０の前段にリミッタ５０＿１を設けることにより、後段で除去できる数以上の大きなノイズがあったとしても累算回路３１への入力値にリミットがかかっているため、平均化によって、ある程度影響を緩和することが出来る。
【００９７】
このときリミッタ５０＿１および５０＿２の設定値（上限値／下限値）は、本来求めるべき補正値e11[11:0]がリミッタの設定範囲を外れないように、補正対象の素子のばらつきを考慮して決定することが望ましい。一方、実際の容量の製造ばらつきによる誤差が大きく、正しい補正値がリミッタの設定範囲を外れてしまうような場合には、製品出荷時に外来ノイズの小さな環境で選別することで、出荷対象から取り除くことが可能である。
【００９８】
本実施形態４では、最上位ビットに対応するCp16のみがキャリブレーションの対象である場合について説明したが、複数のビットに対応する容量を対象とするキャリブレーション動作を行う実施形態に変更することもできる。例えば、図１０に示した平均化回路５において、除算回路３２の後段にリミッタ５０＿２を設け、及び／又は、最大値／最小値除去回路３０の前段にリミッタ５０＿１を設ける。レジスタ３４＿１１、３４＿１０、３４＿９の前段にそれぞれリミッタ５０＿２を設けても良い。また、例えば、実施形態２に係る図２２に示す平均化回路５において、レジスタ３４を、図２１と同様に複数の補正値を格納する複数のレジスタ（例えばレジスタ３４＿１１、３４＿１０、３４＿９）に代えた上で、除算回路３２の後段にリミッタ５０＿２を設け、及び／又は、最大値／最小値除去回路３０の前段にリミッタ５０＿１を設ける。この場合も、レジスタ３４＿１１、３４＿１０、３４＿９の前段にそれぞれリミッタ５０＿２を設けても良い。
【００９９】
〔実施形態５〕オフセットキャリブレーション
実施形態１〜４では、逐次比較型A/Dコンバータにおける容量ＤＡＣ回路１１内容量素子のミスマッチ成分に対するキャリブレーションへの適用例を示したが、他の成分のキャリブレーションにも適用可能である。本実施形態５では、実施形態１〜４と同じ逐次比較型A/DコンバータであるＡＤＣ１のオフセット誤差に対するキャリブレーションについて説明する。
【０１００】
図２７は、本実施形態５に係る信号処理回路１０である、オフセットキャリブレーション回路付きのＡＤ変換器の構成例を示すブロック図である。信号処理回路１０は、図３に示した信号処理回路と同様に、ＡＤＣ１とＥＣＬ２とキャリブレーション回路３と制御回路４とを備え、さらに、入力電圧VINからＡＤＣ１への経路上にスイッチＳＷ１を、基準電圧VCMからＡＤＣ１への経路上にスイッチＳＷ２を、ＡＤＣ１の入力電圧VINと基準電圧VCMの入力端子間にスイッチＳＷ３を備える。制御回路４は、ＡＤＣ１とＥＣＬ２とキャリブレーション回路３の制御に加え、スイッチＳＷ１、スイッチＳＷ２及びスイッチＳＷ３も制御する。
【０１０１】
キャリブレーション回路３は補正回路７と平均化回路５から構成される。補正回路５は、図２８に示すように、エラーコレクション回路（ＥＣＬ）２の出力ADC_ECL[11:0]とオフセット補正値e_dc[11:0]とを加算し、変換出力ADOUT[11:0]として出力する。平均化回路５は、図２９に示すように、図１０の平均化回路と同様の回路であり、キャリブレーション期間中のADC_ECL[11:0]のうち最大値と最小値を除去した後、累算回路３１で累算し、除算回路３２でN-2での除算を行って得られる平均値をオフセット補正値e_dc[11:0]としてレジスタ３４に格納する。平均化回路５は、図２２〜図２６に示した平均化回路と同様の回路に変更してもよい。
【０１０２】
オフセットキャリブレーション動作について説明する。
【０１０３】
図３１は、オフセットキャリブレーションの動作例を示すタイミングチャートである。
【０１０４】
図３０の回路図には、オフセットキャリブレーション動作における、サンプリング状態でのスイッチＳＷ１，ＳＷ２，ＳＷ３の状態、容量ＤＡＣ回路１１内のスイッチの状態、及び、抵抗ＤＡＣ回路１３の出力状態が示される。スイッチＳＷ１を開き、スイッチＳＷ２とＳＷ３をそれぞれ閉じることにより、基準電圧VCMが容量ＤＡＣ回路１１のVCM側入力だけでなくVIN側にも入力される。容量ＤＡＣ回路１１内のスイッチSp16、Sp8、Sp4、Sp2、Sp1、Sp_redを介して容量Cp16、Cp8、Cp4、Cp2、Cp1、Cp_redが容量ＤＡＣ回路１１のVIN側に接続され、基準電圧VCMが印加される。容量Cp_rdacには抵抗ＤＡＣ回路１３から出力されるVREFNが印加されている。この状態でサンプリングした電荷をA/D変換することで、オフセット誤差を求めることが出来る。すなわちオフセット補正値e_dc[11:0]を求めることが出来る。
【０１０５】
図３１に示すように、このサンプリングとA/D変換を複数回（例えばＮ回）繰り返すことにより、ADC_ECL[11:0]にＮ個の変換結果e_dc_1〜e_dc_Nが得られ、これから最大値と最小値を除去した残りのＮ−２個の平均値を算出して、最終的なオフセット補正値e_dc[11:0]を求める。
【０１０６】
通常動作では、算出されたオフセット補正値e_dc[11:0]を、図２８に示す補正回路７によりADC_ECL[11:0]に加算して出力することにより、ADOUT[11:0]の特性においてオフセットが補正される。
【０１０７】
〔実施形態６〕ミスマッチ補正キャリブレーション＆オフセットキャリブレーション
実施形態１〜４によるミスマッチ補正キャリブレーションと実施形態５によるオフセットキャリブレーションとを組み合わせることにより、容量ＤＡＣ回路１１の容量ミスマッチとオフセット誤差の両方をキャリブレーションすることができる。
【０１０８】
図３２は、本実施形態６に係る信号処理回路１０である、容量ミスマッチとオフセットの両方のキャリブレーション回路が接続されたＡＤ変換器の構成例を示すブロック図である。信号処理回路１０は、ＡＤＣ１とＥＣＬ２と直線性キャリブレーション回路３＿１とオフセットキャリブレーション回路３＿２と制御回路４とを備え、実施形態５と同様に、入力電圧VINからＡＤＣ１への経路上にスイッチＳＷ１を、基準電圧VCMからＡＤＣ１への経路上にスイッチＳＷ２を、ＡＤＣ１の入力電圧VINと基準電圧VCMの入力端子間にスイッチＳＷ３を備える。図３２に示すように、直線性キャリブレーション回路３＿１をオフセットキャリブレーション回路３＿２よりも前段に配置し、直線性キャリブレーションを先に実施することにより、後段のオフセット誤差の補正をより正確に行うことができる。
【０１０９】
本実施形態６に係る信号処理回路１０の動作について説明する。
【０１１０】
図３３は、信号処理回路１０のキャリブレーションの動作例を示すタイミングチャートである。時刻ｔ０においてキャリブレーション動作が開始されると、まず、スイッチＳＷ１とＳＷ２を閉じＳＷ３を開いて、実施形態１で説明したのと同様に、Cp16の補正値e11[11:0]を算出する。次に、スイッチＳＷ１とＳＷ２とＳＷ３を実施形態５で説明したのと同様に制御して、オフセット補正値e_dc[11:0]を算出する。時刻ｔ３以降の通常動作では、算出されたCp16の補正値e11[11:0]により直線性が補正され、オフセット補正値e_dc[11:0]によりオフセット値が補正される。
【０１１１】
図３４は、キャリブレーションの動作例を示す説明図である。信号処理回路１０の入力電圧VINとエラーコレクション回路２の出力ADC_ECL[11:0]との関係が左端に示すグラフの通りである場合、まず、Cp16の補正値e11[11:0]により直線性が補正されることにより、入力電圧VINに対する直線性キャリブレーション回路３＿１の出力ADC_MISCAL[11:0]の関係が、中央のグラフのように補正される。中央のグラフに示される矢印は、Cp16の補正値e11[11:0]である。次に、オフセット補正値e_dc[11:0]によりオフセット誤差が補正されることにより、入力電圧VINに対する変換出力ADOUT[11:0]の関係が右端に示すグラフのように補正される。右端のグラフに示される矢印は、オフセット補正値e_dc[11:0]である。
【０１１２】
直線性キャリブレーション回路３＿１は、実施形態１〜４に示したいずれのキャリブレーション回路であってもよい。例えば複数ビットをキャリブレーションするように変更することも可能である。また、平均化の対象から除外される補正値は、１個の最大値と１個の最小値であってもよいし、上位側と下位側のそれぞれ複数個であってもよい。さらに、実施形態４で説明したようにリミッタを付加してもよい。
【０１１３】
〔実施形態７〕パイプライン型ＡＤ変換器
実施形態１〜６では、主に逐次比較型ＡＤ変換回路への適用例について説明したが、他の方式のＡＤ変換回路へも適用可能である。本実施形態７では、パイプライン方式によるＡＤ変換回路への適用例について説明する。
【０１１４】
図３５は、パイプライン方式によるＡＤ変換器（ＡＤＣ）１にキャリブレーション回路３を付加した信号処理回路１０の構成例を示すブロック図である。信号処理回路１０は、ＡＤＣ１と、エラーコレクション回路（ＥＣＬ）２と、キャリブレーション回路３と、制御回路４と、基準電圧生成回路１７とを備える。
【０１１５】
ＡＤＣ１は、Ｌ段（Ｌは２以上の整数）のステージ（STAGE_1〜STAGE_L）１５＿１〜１５＿Ｌと最終段ＡＤＣ１６からなるパイプライン方式によるＡＤ変換器である。第ｉステージ（STAGE_i）１５＿ｉより後段のステージ（SATGE_i+1〜STAGE_L）１５＿ｉ＋１〜１５＿Ｌと最終段ＡＤＣ１６とを合せてバックエンドＡＤＣ＿ｉとする。最終段ＡＤＣ１６は、２〜３ビットの分解能を持つＡＤＣである。
【０１１６】
ＥＣＬ２は、ＡＤＣ１の各ステージからの出力および最終段ADCからの出力ADC_RAWから、信号処理回路１０全体としての変換出力ADOUTを生成する。基準電圧生成回路１７は、参照電圧VREFを生成し、ＡＤＣ１に供給する。制御回路４は、ＡＤＣ１のパイプライン動作を制御し、また、キャリブレーション回路３の動作を制御する。キャリブレーション回路３は、変換出力ADOUTにPN=±1を乗ずる乗算回路１９、平均化回路５、平均化回路５から出力される補正値から各ステージの補正係数を演算して補正信号として各ステージに供給する補正信号演算回路１８からなる。ここで、PNは、後述の状態１と状態２に応じて極性を規定する定数であり、状態１のときにPN=＋１、状態２のときに逆極性のPN=−１とされる。なお、平均化回路５は実施形態１から４で説明した平均化回路と同様の回路構成を採り得る。
【０１１７】
図３６は、ＡＤＣ１の各ステージの構成例を示すブロック図である。第ｉステージ（STAGE_i）１５＿ｉとして説明する。前段の第ｉ−１ステージ（STAGE_i-1）１５＿ｉ−１の出力をA/D変換するSub_ＡＤＣ＿ｉ２１と、前段の第ｉ−１ステージ（STAGE_i-1）１５＿ｉ−１の出力に、Sub_ＡＤＣ＿ｉ（２１）の変換結果に応じたオフセットを与えつつＡ倍して出力するMDAC_i（２０）で構成される。増幅率Ａは通常は２である。MDAC_i（２０）は、演算増幅器２３と固定容量Cf_iと可変容量Cs_iおよびそれらをつなぐスイッチからなるスイッチトキャパシタ増幅器とD/AコンバータＤＡＣ＿ｉ（２２）からなる。可変容量Cs_iはキャリブレーションによる補正のために補正信号に応じた微調整が可能である。
【０１１８】
信号処理回路１０の動作について説明する。
【０１１９】
パイプライン型A/Dコンバータにおいては、各ステージのMDAC_i（２０）内の固定容量Cf_iと可変容量Cs_i（i=1〜L）の容量値の相対誤差がA/Dコンバータとしての変換精度に大きくかかわってくる。そこで、信号処理回路１０では、ステージごとにCf_i=Cs_iとなるように可変容量Cs_iを微調整するための補正信号を決定するキャリブレーションを行う。
【０１２０】
第ｉステージ（STAGE_i）１５＿ｉのキャリブレーション動作では、前段からの入力に代えて基準電圧生成回路１７からVREFが入力され、これに対して状態１と状態２のサンプリングと変換を交互に実行し、このときのA/D変換を第ｉステージ（STAGE_i）より後段のバックエンドＡＤＣ＿ｉでおこなう。図３７は、キャリブレーション動作の状態１と状態２それぞれのサンプリング時と変換時における、スイッチの状態を示す説明図である。サンプリング時には、状態１でも状態２でも、固定容量Cf_iと可変容量Cs_iが接地レベルとVREFに接続され、VREFに充電される。変換時には、状態１では固定容量Cf_iが演算増幅器２３のフィードバック容量として機能し、可変容量Cs_iがD/AコンバータＤＡＣ＿ｉ（２２）から演算増幅器２３への入力容量として機能する一方、状態２では逆に可変容量Cs_iがフィードバック容量として機能し、固定容量Cf_iが入力容量として機能する。
【０１２１】
第ｉステージ（STAGE_i）１５＿ｉのキャリブレーション動作では、状態１のサンプリング及び変換と、状態２のサンプリング及び変換とを交互に実行する。状態１の変換出力と状態２の変換出力は、それぞれバックエンドＡＤＣ＿ｉによってデジタル値に変換され、ＥＣＬ２を介してキャリブレーション回路３に入力される。
【０１２２】
キャリブレーションの原理について説明する。
【０１２３】
固定容量Cf_iと可変容量Cs_iとの相対誤差をαとし、Cs_i=(1+α)Cf_iとする。
【０１２４】
状態１のときのMDAC_iの出力をVout_i1、状態２のMDAC_iの出力をVout_i2とすると、Vout_i1-Vout_i2=2α(VREF-VREFN)となる。Vout_i1、Vout_i2、VREF及びVREFNの値からαを求めることができ、この値から可変容量Cs_iへ供給すべき補正信号のレベルが決定される。
【０１２５】
Vout_i1とVout_i2は、状態１と状態２の第ｉステージ（STAGE_i）１５＿ｉからの出力であるから、その後段のバックエンドＡＤＣ＿ｉを使ってデジタル値に変換し、ＥＣＬ２を介してキャリブレーション回路３に入力される。基準電圧生成回路１７から供給されるVREF及びD/AコンバータＤＡＣ＿ｉ（２２）が出力するVREFNの値は、設計によって規定されるので既知であり、キャリブレーション回路３は、これらの値からαの値を算出することができる。状態１と状態２を複数回（Ｎ回）に渡って交互に繰り返すことによって、Ｎ個のαが算出される。これをＮ個の補正値として平均化回路５に入力し、最大値と最小値を除去した上で平均化して最終的な補正値として、補正信号演算回路１８に供給する。最大値と最小値を除去することにより、突発的なノイズの影響を除去することができる。平均化の対象から除外される補正値は、１個の最大値と１個の最小値であってもよいし、上位側と下位側のそれぞれ複数個であってもよい。さらに、実施形態４で説明したようにリミッタを付加してもよい。
【０１２６】
これにより、パイプライン型ＡＤ変換器の各ステージの補正を行うキャリブレーション動作においても、突発的な外来ノイズなどに起因して補正値に大きな誤差が含まれた場合に、その影響を排除してより正確な補正値（補正信号）を算出することができる。
【０１２７】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１２８】
例えば、各実施形態において例示したＡＤＣやＤＡＣの分解能、冗長ビットの位置、パイプライン段数などは適宜変更しまた設定可能である。
【符号の説明】
【０１２９】
１  ＡＤ変換回路
２  エラーコレクション回路（ＥＣＬ）
３  キャリブレーション回路
４  制御回路
５  最大値／最小値除去機能付平均化回路
６  補正値演算回路
７  補正回路
８  平均化回路
９、１０  信号処理回路（ＡＤ変換器）
１１  容量ＤＡＣ回路
１２  コンパレータ回路
１３  抵抗ＤＡＣ回路
１４  逐次比較ロジック回路
１５  ステージ
１６  最終段ＡＤＣ
１７  基準電圧生成回路
１８  補正信号演算回路
１９  疑似乱数乗算回路
２０  量子化残差ＤＡＣ
２１  サブＡＤ変換回路
２２  オフセットＤＡＣ
２３  オペアンプ
３０  最大値／最小値除去回路
３１  累算回路
３２  除算回路
３３  シフト回路
３４  （補正値を保持する）レジスタ
３５  マルチプレクサ
３６、４６  加算回路
３７、４７  減算回路
３８  分配回路
３９  （差分ADC_SUBを保持する）レジスタ
４０  （最小値を保持する）レジスタ
４１  （最大値を保持する）レジスタ
４２、４３  コンパレータ
４４  マルチプレクサ
４５  探索除去回路
５０  リミッタ
９０  入出力回路（ＩＯ）
９１  前段アナログ信号処理回路
９２  後段デジタル信号処理回路
９３  周辺アナログ回路
９４  周辺デジタル回路
９５  ＣＰＵ
９６  メモリ
１００  半導体装置
【図１】
2017123531.tif 000003
【図２】
2017123531.tif 000004
【図３】
2017123531.tif 000005
【図４】
2017123531.tif 000006
【図５】
2017123531.tif 000007
【図６】
2017123531.tif 000008
【図７】
2017123531.tif 000009
【図８】
2017123531.tif 000010
【図９】
2017123531.tif 000011
【図１０】
2017123531.tif 000012
【図１１】
2017123531.tif 000013
【図１２】
2017123531.tif 000014
【図１３】
2017123531.tif 000015
【図１４】
2017123531.tif 000016
【図１５】
2017123531.tif 000017
【図１６】
2017123531.tif 000018
【図１７】
2017123531.tif 000019
【図１８】
2017123531.tif 000020
【図１９】
2017123531.tif 000021
【図２０】
2017123531.tif 000022
【図２１】
2017123531.tif 000023
【図２２】
2017123531.tif 000024
【図２３】
2017123531.tif 000025
【図２４】
2017123531.tif 000026
【図２５】
2017123531.tif 000027
【図２６】
2017123531.tif 000028
【図２７】
2017123531.tif 000029
【図２８】
2017123531.tif 000030
【図２９】
2017123531.tif 000031
【図３０】
2017123531.tif 000032
【図３１】
2017123531.tif 000033
【図３２】
2017123531.tif 000034
【図３３】
2017123531.tif 000035
【図３４】
2017123531.tif 000036
【図３５】
2017123531.tif 000037
【図３６】
2017123531.tif 000038
【図３７】
2017123531.tif 000039