JPH0419727B2 - - Google Patents
Info
- Publication number
- JPH0419727B2 JPH0419727B2 JP18708086A JP18708086A JPH0419727B2 JP H0419727 B2 JPH0419727 B2 JP H0419727B2 JP 18708086 A JP18708086 A JP 18708086A JP 18708086 A JP18708086 A JP 18708086A JP H0419727 B2 JPH0419727 B2 JP H0419727B2
- Authority
- JP
- Japan
- Prior art keywords
- input terminal
- circuit
- terminal
- converter
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 239000003990 capacitor Substances 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 25
- 238000005259 measurement Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 5
- 238000007599 discharging Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 description 67
- 239000001119 stannous chloride Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 125000004122 cyclic group Chemical group 0.000 description 7
- 230000007423 decrease Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
Landscapes
- Analogue/Digital Conversion (AREA)
Description
〔概要〕
循環型D/Aコンバータの誤差の検出と補正を
行なう方法に関するもので、同一の値を表す二つ
の多値二進コードに対するD/A変換結果の差を
測定するか、D/A変換の微分非直線性を測定す
ることで、簡単に変換用高精度素子の誤差量を検
出し、補正に役立てることを可能にする。 〔産業上の利用分野〕 本発明は循環型D/Aコンバータの誤差の検出
と補正を行なう方法に係り、特に、簡単に変換用
高精度素子の誤差量を検出し、補正に役立てるこ
とができる方法に関する。 〔従来の技術〕 通常のNビツトのD/Aコンバータでは、各桁
の重みを決定要素の変換用高精度素子は、桁数N
個分が必要である。これに対して、循環型のD/
Aコンバータは、重み決定素子が一桁分しかない
単位回路を用いる。その単位回路は、ある入力
Vinを入力した時、その出力に、 V0=(1/2)(Vin+aVref) ……(1)式 が出力するように構成されている。 但し、a=1、0、−1の三つの値のいずれか
をとる。 そして、第7図のように、V0をなんらかの手
段、例えば第7図ではサンプル・ホールド回路7
2でVinに戻してやり、さらに単位回路71で新
しいV0を取出すことを繰返して、例えば、8ビ
ツトだと8回ループを通すことでアナログ出力を
得る。 すなわち、実際に入力するデジタル符号を
LSBから順にa1、a2、a3、……a8とすると、(1)式
の操作を8回繰返し、aを順にa1、a2、a3、……
a8とし、i=1の時のVin=0とすると、 V0=〔(1/2)a8+(1/4)a7+(1/8)a6 +(1/16)a5+……+(1+128)a2 +(1/256)a1〕×Vref ……(2)式 となる。 この(2)式の操作を行なう単位回路例を第6図に
示しており、容量値が等しい三つのキヤパシタ
C0〜C2と、オペアンプOP,S1〜S4の四つの
スイツチで構成されている。(特願昭60−192038
号(特開昭62−56022号公報)参照)第6図にお
いて、キヤパシタC2〜C0の一端は共通連続して
オペアンプOPの(−)入力端子に接続し、それ
ぞれの他端子は、 C0はスイツチS2でGNDまたはVref C1はスイツチS3でVinまたはV0 C2はスイツチS4でGNDまたはV0 に切換接続される。 さらに、オペアンプOPの(−)入力端子とV0
の間にはスイツチS1が挿入されている。 第6図の単位回路の動作を説明すると、動作は
基本的に二つに分れている。 (1) 第5図A参照 〔サンプル・モード〕 オペアンプOPの(−)入力端子とV0をスイ
ツチS1を閉じて接続し、C0〜C2の一端には
OPのオフセット電圧がかかるようにし、それ
ぞれの他端子はスイツチを切換えて、 C2はGNDに接続する。 C1はVinに接続する。 C0はaiによつて変化し、 aiが1の時、Vrefに接続する。 aiが0または−1の時、GNDに接続する。 (2) 第5図B参照 〔コンバート・モード〕 スイツチを切換えて、 キヤパシタC1,C2をオペアンプOPの入力
Vin/出力V0間に挿入する。 スイツチS1は遮断する。 キヤパシタC0はaiによつて変化し、 aiが1または0の時GNDに接続する。 aiが−1の時Vrefに接続する。 すなわち、(1)のモードで、入力電圧Vinをキ
ヤパシタC1に充電し、(2)のモードでC1とC2の
二つのキヤパシタに充電された電荷を振り分け
ることで電圧を1/2にして取出すとともに、キ
ヤパシタC0でVrefを+または−する操作を行
なつている。 この回路の入力ではVrefを+する、Vrefを
−すると何も加えない三通りの操作が可能であ
り、2進数の各ビツトに対して3つ以上の値を
用いることができる。 例えば、3を表現するのに、 10−1(4−1) 01 1(2+1) の二通りの表現形がある。 ところが、3値2進数により、二つの入力表
現でD/Aコンバータを駆動したい場合、それ
ぞれについてD/A変換が行なわれる途中過程
が違つてくる。即ち、 1 0 −1 と0 1 1では重み付けが異
なることから、D/A変換のとき、キヤパシタ
C0〜C2に何らかの誤差が生じたとき(実際上
さけることは困難)二つの表現1 0 −1
と0 1 1では出力結果に差がでてくる。こ
の変換誤差を無くするためには、キヤパシタ
C0〜C2の値を補正しなければならない。 〔発明が解決しようとする問題点〕 従来、循環型をはじめD/Aコンバータにおい
ては、D/A変換誤差を避けることができず、そ
の補正を行なう場合、重みを決定する要素の個数
分の回路異なる入力に対するD/A変換出力を測
定し、これをもとに重みの決定要素の補正値を算
出しなければならず面倒であつた。 〔問題点を解決するための手段〕 本発明は上記問題点を解決するために種々検討
の結果、2進符号を正、負、0の冗長性のある多
値2進コードに変換して第6図に例示したような
回路構成のD/AコンバータによりD/A変換す
る時、変換用高精度素子補正を最少の操作で可能
にする方法を提供するものである。即ち、本発明
においては、同一値を表す多値2進コードをそれ
ぞれD/A変換した場合、その結果同士の差に
は、循環型D/A変換回路中のビツト間の重みを
決定する素子値の誤差が反映されている。そこ
で、本発明は同一値を表す2つの多値2進コード
のD/A変換結果同士の差を測定するか、或いは
微分非直線性誤差を測定し、それからD/Aコン
バータを構成する変換用高精度素子値の誤差量を
簡単な手段により求めることを特徴とした循環型
D/Aコンバータの誤差検出補正方法を提供する
ものである。 本発明の構成を詳述すると以下の通りである。
即ち、本発明は、少なくとも入力端子と反転入力
端子と出力端子とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差の検出及び補正方法にお
いて、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が同一値を示す複数の前
記多値2進コードを該循環型D/Aコンバータで
変換した出力差を測定し、該測定結果に基づき前
記各キヤパシタの誤差および補正量を検出するこ
とを特徴とする循環型D/Aコンバータの誤差検
出補正方法としての構成を有するものであり、或
いはまた、 少なくとも入力端子と反転入力端子と出力端子
とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差検出及び補正方法におい
て、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が異なる値を示す複数の
多値2進コードを該循環型D/Aコンバータで変
換した出力をもとに微分非直線性を測定し、該測
定結果に基づき前記各キヤパシタの誤差および補
正量を検出することを特徴とする循環型D/Aコ
ンバータの誤差検出補正方法としの構成を有する
ものである。 〔作用〕 上記本発明の構成によれば、変換用高精度素子
の個数より少ない測定値を求める操作で、変換用
高精度素子の誤差量を決定し、その補正を行なう
ことが可能となる。 〔実施例〕 第1図〜第4図に示した本発明の実施例を用い
て以下に本発明を詳細に説明する。 第1図は本発明の実施例のD/Aコンバータの
全体的構成図であり、特に、外部入力の8ビツト
の2値2進コード1をコード変換ブロツク2で7
ビツトの3値2進コード(−1、0、1)に変換
するための操作を示す。次に、循環型D/Aコン
バータの単位回路ブロツクA(3と指示する)、単
位回路ブロツクB(4と指示する)を用いて、循
環型D/A変換操作を次のようにして行なう、 最下位の3値2進コード(−1、0、1)を
Aブロツク3に与える。Aブロツクの出力V0を
Bブロツクに与えるとともに次の桁をBブロツ
クに渡す。Bブロツクの出力をAブロツクに与え
るとともに次の桁をAブロツクに渡す。以下同
様にして、の桁をAブロツクに与えればその出
力V0としてD/A変換出力を得ることができる。 (M−1)サイクル後のD/A変換出力はV0
(M−1)と表わされ、 Mサイクル目の入力Vi(M)=V0(M−1)、Vi
(1)=0、M=1はLSBを表し、 V0(N)=2-N N-1 〓i=0 ai2i・Vref となる。 第2図A,Bは循環型D/Aコンバータの単位
回路ブロツクの回路図であり、それ自体は先に示
した第6図の回路と同じ回路を用いている。 この第2図の回路では入力コードCに対して、
(−1、0、1)の3値で表されるコード{ai}
を使用する。ただし、入力コードCは、 C=2-N N-1 〓i=0 ai・2i(ai=−1、0、1) ……(3)式 である。 第2図Aを参照 〔サンプル・モード〕 オペアンプOPの反転入力端子(−)とV0をス
イツチS1を閉じて接続し、C0〜C2の一端には
OPのオフセツト電圧がかゝるようにし、それぞ
れの他端子は次のように切換接続する。 スイツチS1をON、S3をb4、S4をb6、に
切換え、S2はa=1のときb1にa=0、−1の
時b2に切換える。このスイツチの切換により、キ
ヤパシタC2はGNDに接続し、C1はVinに接続し、
C0はaiによつて変化し、aiが1の時、Vrefに接続
し、aiが0または−1の時、GNDに接続する。 第2図B参照 〔コンバート・モード〕 スイツチS1をOFFとし、S3をb3に、S4
をb5に切換え、S2はa=0,1の時はb2に接続
し、a=−1の時はb1に接続する。 それにより、スイツチS1は遮断され、キヤパ
シタC1,C2がオフセツトOPの入力Vin/出力V0
間に挿入される。キヤパシタC0はaiによつて変化
し、aiが1または0の時GNDに接続し、aiが−
1の時Vrefに接続される。 すなわち、〔サンプル・モード〕で、入力電圧
VinをキヤパシタC1に充電し、〔コンバート・モ
ード〕でC1とC2の二つのキヤパシタに充電され
た電荷を振り分けることで電圧を1/2にして取り
出すとともに、キヤパシタC0にVrefを+または
−する操作を行なつている。 以上が単位回路における操作であり、この操作
を、第1図の構成で3値2進コードのNビツト分
循環操作しD/A変換出力が得られる。 なおこの循環型D/Aコンバータの動作を第3
図に模式的に示している。上記で示した循環型
D/Aコンバータの単位回路ブロツクは、入力を
変換処理する動作とその変換出力をサンプルホー
ルドする動作を行ない、二つの変換ブロツクA,
Bで交互にサンプルと変換を繰返す。これによ
り、ループ一回で2ビツトが変換される。ここ
で、単位回路ブロツクA,Bはそれぞれ三つの変
換用高精度素子である。キヤパシタC0,C1,C2
をもつている。 外部からの2値2進コード(8ビツト)を変換
ブロック2において、(−1、0、1)の3値2
進コード、{ai}、i=0〜N−1を発生させる方
法の変換アルゴリズムは次の漸化式で示される。 入力コードをC、−2N<C<2Nとして、 漸化式
行なう方法に関するもので、同一の値を表す二つ
の多値二進コードに対するD/A変換結果の差を
測定するか、D/A変換の微分非直線性を測定す
ることで、簡単に変換用高精度素子の誤差量を検
出し、補正に役立てることを可能にする。 〔産業上の利用分野〕 本発明は循環型D/Aコンバータの誤差の検出
と補正を行なう方法に係り、特に、簡単に変換用
高精度素子の誤差量を検出し、補正に役立てるこ
とができる方法に関する。 〔従来の技術〕 通常のNビツトのD/Aコンバータでは、各桁
の重みを決定要素の変換用高精度素子は、桁数N
個分が必要である。これに対して、循環型のD/
Aコンバータは、重み決定素子が一桁分しかない
単位回路を用いる。その単位回路は、ある入力
Vinを入力した時、その出力に、 V0=(1/2)(Vin+aVref) ……(1)式 が出力するように構成されている。 但し、a=1、0、−1の三つの値のいずれか
をとる。 そして、第7図のように、V0をなんらかの手
段、例えば第7図ではサンプル・ホールド回路7
2でVinに戻してやり、さらに単位回路71で新
しいV0を取出すことを繰返して、例えば、8ビ
ツトだと8回ループを通すことでアナログ出力を
得る。 すなわち、実際に入力するデジタル符号を
LSBから順にa1、a2、a3、……a8とすると、(1)式
の操作を8回繰返し、aを順にa1、a2、a3、……
a8とし、i=1の時のVin=0とすると、 V0=〔(1/2)a8+(1/4)a7+(1/8)a6 +(1/16)a5+……+(1+128)a2 +(1/256)a1〕×Vref ……(2)式 となる。 この(2)式の操作を行なう単位回路例を第6図に
示しており、容量値が等しい三つのキヤパシタ
C0〜C2と、オペアンプOP,S1〜S4の四つの
スイツチで構成されている。(特願昭60−192038
号(特開昭62−56022号公報)参照)第6図にお
いて、キヤパシタC2〜C0の一端は共通連続して
オペアンプOPの(−)入力端子に接続し、それ
ぞれの他端子は、 C0はスイツチS2でGNDまたはVref C1はスイツチS3でVinまたはV0 C2はスイツチS4でGNDまたはV0 に切換接続される。 さらに、オペアンプOPの(−)入力端子とV0
の間にはスイツチS1が挿入されている。 第6図の単位回路の動作を説明すると、動作は
基本的に二つに分れている。 (1) 第5図A参照 〔サンプル・モード〕 オペアンプOPの(−)入力端子とV0をスイ
ツチS1を閉じて接続し、C0〜C2の一端には
OPのオフセット電圧がかかるようにし、それ
ぞれの他端子はスイツチを切換えて、 C2はGNDに接続する。 C1はVinに接続する。 C0はaiによつて変化し、 aiが1の時、Vrefに接続する。 aiが0または−1の時、GNDに接続する。 (2) 第5図B参照 〔コンバート・モード〕 スイツチを切換えて、 キヤパシタC1,C2をオペアンプOPの入力
Vin/出力V0間に挿入する。 スイツチS1は遮断する。 キヤパシタC0はaiによつて変化し、 aiが1または0の時GNDに接続する。 aiが−1の時Vrefに接続する。 すなわち、(1)のモードで、入力電圧Vinをキ
ヤパシタC1に充電し、(2)のモードでC1とC2の
二つのキヤパシタに充電された電荷を振り分け
ることで電圧を1/2にして取出すとともに、キ
ヤパシタC0でVrefを+または−する操作を行
なつている。 この回路の入力ではVrefを+する、Vrefを
−すると何も加えない三通りの操作が可能であ
り、2進数の各ビツトに対して3つ以上の値を
用いることができる。 例えば、3を表現するのに、 10−1(4−1) 01 1(2+1) の二通りの表現形がある。 ところが、3値2進数により、二つの入力表
現でD/Aコンバータを駆動したい場合、それ
ぞれについてD/A変換が行なわれる途中過程
が違つてくる。即ち、 1 0 −1 と0 1 1では重み付けが異
なることから、D/A変換のとき、キヤパシタ
C0〜C2に何らかの誤差が生じたとき(実際上
さけることは困難)二つの表現1 0 −1
と0 1 1では出力結果に差がでてくる。こ
の変換誤差を無くするためには、キヤパシタ
C0〜C2の値を補正しなければならない。 〔発明が解決しようとする問題点〕 従来、循環型をはじめD/Aコンバータにおい
ては、D/A変換誤差を避けることができず、そ
の補正を行なう場合、重みを決定する要素の個数
分の回路異なる入力に対するD/A変換出力を測
定し、これをもとに重みの決定要素の補正値を算
出しなければならず面倒であつた。 〔問題点を解決するための手段〕 本発明は上記問題点を解決するために種々検討
の結果、2進符号を正、負、0の冗長性のある多
値2進コードに変換して第6図に例示したような
回路構成のD/AコンバータによりD/A変換す
る時、変換用高精度素子補正を最少の操作で可能
にする方法を提供するものである。即ち、本発明
においては、同一値を表す多値2進コードをそれ
ぞれD/A変換した場合、その結果同士の差に
は、循環型D/A変換回路中のビツト間の重みを
決定する素子値の誤差が反映されている。そこ
で、本発明は同一値を表す2つの多値2進コード
のD/A変換結果同士の差を測定するか、或いは
微分非直線性誤差を測定し、それからD/Aコン
バータを構成する変換用高精度素子値の誤差量を
簡単な手段により求めることを特徴とした循環型
D/Aコンバータの誤差検出補正方法を提供する
ものである。 本発明の構成を詳述すると以下の通りである。
即ち、本発明は、少なくとも入力端子と反転入力
端子と出力端子とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差の検出及び補正方法にお
いて、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が同一値を示す複数の前
記多値2進コードを該循環型D/Aコンバータで
変換した出力差を測定し、該測定結果に基づき前
記各キヤパシタの誤差および補正量を検出するこ
とを特徴とする循環型D/Aコンバータの誤差検
出補正方法としての構成を有するものであり、或
いはまた、 少なくとも入力端子と反転入力端子と出力端子
とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差検出及び補正方法におい
て、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が異なる値を示す複数の
多値2進コードを該循環型D/Aコンバータで変
換した出力をもとに微分非直線性を測定し、該測
定結果に基づき前記各キヤパシタの誤差および補
正量を検出することを特徴とする循環型D/Aコ
ンバータの誤差検出補正方法としの構成を有する
ものである。 〔作用〕 上記本発明の構成によれば、変換用高精度素子
の個数より少ない測定値を求める操作で、変換用
高精度素子の誤差量を決定し、その補正を行なう
ことが可能となる。 〔実施例〕 第1図〜第4図に示した本発明の実施例を用い
て以下に本発明を詳細に説明する。 第1図は本発明の実施例のD/Aコンバータの
全体的構成図であり、特に、外部入力の8ビツト
の2値2進コード1をコード変換ブロツク2で7
ビツトの3値2進コード(−1、0、1)に変換
するための操作を示す。次に、循環型D/Aコン
バータの単位回路ブロツクA(3と指示する)、単
位回路ブロツクB(4と指示する)を用いて、循
環型D/A変換操作を次のようにして行なう、 最下位の3値2進コード(−1、0、1)を
Aブロツク3に与える。Aブロツクの出力V0を
Bブロツクに与えるとともに次の桁をBブロツ
クに渡す。Bブロツクの出力をAブロツクに与え
るとともに次の桁をAブロツクに渡す。以下同
様にして、の桁をAブロツクに与えればその出
力V0としてD/A変換出力を得ることができる。 (M−1)サイクル後のD/A変換出力はV0
(M−1)と表わされ、 Mサイクル目の入力Vi(M)=V0(M−1)、Vi
(1)=0、M=1はLSBを表し、 V0(N)=2-N N-1 〓i=0 ai2i・Vref となる。 第2図A,Bは循環型D/Aコンバータの単位
回路ブロツクの回路図であり、それ自体は先に示
した第6図の回路と同じ回路を用いている。 この第2図の回路では入力コードCに対して、
(−1、0、1)の3値で表されるコード{ai}
を使用する。ただし、入力コードCは、 C=2-N N-1 〓i=0 ai・2i(ai=−1、0、1) ……(3)式 である。 第2図Aを参照 〔サンプル・モード〕 オペアンプOPの反転入力端子(−)とV0をス
イツチS1を閉じて接続し、C0〜C2の一端には
OPのオフセツト電圧がかゝるようにし、それぞ
れの他端子は次のように切換接続する。 スイツチS1をON、S3をb4、S4をb6、に
切換え、S2はa=1のときb1にa=0、−1の
時b2に切換える。このスイツチの切換により、キ
ヤパシタC2はGNDに接続し、C1はVinに接続し、
C0はaiによつて変化し、aiが1の時、Vrefに接続
し、aiが0または−1の時、GNDに接続する。 第2図B参照 〔コンバート・モード〕 スイツチS1をOFFとし、S3をb3に、S4
をb5に切換え、S2はa=0,1の時はb2に接続
し、a=−1の時はb1に接続する。 それにより、スイツチS1は遮断され、キヤパ
シタC1,C2がオフセツトOPの入力Vin/出力V0
間に挿入される。キヤパシタC0はaiによつて変化
し、aiが1または0の時GNDに接続し、aiが−
1の時Vrefに接続される。 すなわち、〔サンプル・モード〕で、入力電圧
VinをキヤパシタC1に充電し、〔コンバート・モ
ード〕でC1とC2の二つのキヤパシタに充電され
た電荷を振り分けることで電圧を1/2にして取り
出すとともに、キヤパシタC0にVrefを+または
−する操作を行なつている。 以上が単位回路における操作であり、この操作
を、第1図の構成で3値2進コードのNビツト分
循環操作しD/A変換出力が得られる。 なおこの循環型D/Aコンバータの動作を第3
図に模式的に示している。上記で示した循環型
D/Aコンバータの単位回路ブロツクは、入力を
変換処理する動作とその変換出力をサンプルホー
ルドする動作を行ない、二つの変換ブロツクA,
Bで交互にサンプルと変換を繰返す。これによ
り、ループ一回で2ビツトが変換される。ここ
で、単位回路ブロツクA,Bはそれぞれ三つの変
換用高精度素子である。キヤパシタC0,C1,C2
をもつている。 外部からの2値2進コード(8ビツト)を変換
ブロック2において、(−1、0、1)の3値2
進コード、{ai}、i=0〜N−1を発生させる方
法の変換アルゴリズムは次の漸化式で示される。 入力コードをC、−2N<C<2Nとして、 漸化式
【表】
このコード変換アルゴリズムおよび変換方式は
従来からSRT除算として知られている。(著者
HWANG.K.堀越彌コンピユータの高速演算方
式、p.227〜)。 次に、本発明の実施例として、上記のように2
進の各ビツトとして(−1、0、1)の3つの値
が許される場合のD/A変換誤差を測定しキヤパ
シタC0,C1,C2の誤差を求める例を示す。 ここで、D/Aコンバータの変換用高精度素子
のキヤパシタの絶対値が等しく増加、減少しても
D/A変換結果には影響せず、D/A変換誤差に
きくのはキヤパシタの相対的誤差である。そこ
で、本実施例では、キヤパシタの内C2を基準と
して、C0とC1だけを補正することにした。 こゝでD/A変換誤差を測定するのに次の3通
りの方法がある。 循環型D/Aコンバータが二つの変換ブロツ
クA,Bで構成されている場合、同一値を表す
二つのコードのD/A変換誤差を求める方法。 例えば、値(1/4)の二つのコード 1/41=0.1(−1)00……0 1/42=0.0100……0 値(1/8)の二つのコード 1/81=0.01(−1)0……0 1/82=0.0010……0 の4種の入力をD/Aコンバータに与え、その
出力V01、V01′、V02、V02′の4つの出力を求
め、V01、V01′の誤差△XとV02、V02′の誤差△
Yを測定する。 同一値を表す二つのコードのD/A変換誤差
を求める代りに、1/4または、1/8の所の
微分非直線性を測定する。これは誤差△Xまた
は△Yと等しい。 すなわち、 本実施例で先に示した漸化式(1)により2値2
進の外部コードC(1、0)から(−1、0、
1)コードの発生する場合、1/4または1/
8から1LSBだけ小さい値は、それぞれ次のコ
ードに変換される。 〔(1/4)−1LSB〕=0.0100……(−1) 〔(1/8)−1LSB〕=0.0010……(−1) したがつて、 1/4=0.1(−1)00……0 (1/4)−1LSB=0.0100……0(−1) の二つのコードの差は最終桁だけの(−1)だ
から、1/4と(1/4)−1LSBの微分非直
線性と全く同じである。 そこで、実際の誤差量を求める測定を1/4
と(1/4)−1LSBの微分非直線性を測るこ
とで行なつても良い。 また、この微分非直線性を測定するため、
(1/4)−1LSBの変換出力値に1LSB分の変
換出力値を加えてから、1/4の変換出力値と
の差をとつても先の、の結果と同じ値が得
られる。(1/8)の場合も同様である。 こゝで1/4FS(フルスケール)と〔1/
4FS−(1LSB)〕の微分非直線性誤差を△Xと
し、1/8FSと〔1/8−(1LSB〕の微分非直
線性誤差を△Yとすると、△X、△Yを測定し
て6つの容量の内、一部の容量に補正を加える
ことにより、全コードにわたる微分非直線性誤
差を0(零)にすることができる。次のような
例を示す。 変換ブロツクAの容量をC0A、C1A、C2Aと
し、変換ブロツクBの容量をC0B、C1B、C2B
とする。△X、△Yに対して、容量補正値△
C1A、△C1Bは △C1A=(4/3)(△X+△Y) △C1B=8/3(△X+△Y) と設定できる。 これは、6つのキヤパシタのうちC1A、C1B
のみを(C1A+△C1A)、(C1B+△C1B)とす
ることにより、全コードにおける微分非直線性
誤差は0にできることを示している。この解析
については、詳しく後記している。 循環型D/Aコンバータが一つの変換ブロツ
クで構成されている場合、同一値を表す二つの
コードのD/A変換誤差を求める方法。 例えば、値(1/4)を表す二つのコード 1/41=0.1(−1)00……0 1/42=0.0100……0 を入力し、その時のD/Aコンバータ出力V01
とV01′を求め、その差△Xを測定する。 また、1/4FS(フルスケール)と〔1/
4FS−(1LSB)〕の微分非直線性誤差も△Xと
同一である。この△Xを測定して3つの容量の
内、一部の容量に補正を加えることにより、全
コードにわたる微分非直線性を0(零)にする
ことができる。 次のような例を示す。 変換ブロツクAの容量をC0A、C1A、C2Aと
する。 △Xに対して、容量補正値△C1Aは△Xに或
る数値を掛けたものである。したがつて、C1A
+△C1Aとするだけで全コードにおける微分非
直線性誤差は0にできる。この詳しい解析結果
も後述している。 次に、上記D/A変換誤差から変換用高精度素
子のキヤパシタの誤差、補正値を見出す方法を解
析する。 (1) 二つのブロツクA,Bを使用する場合 第4図A,Bに誤差を求めるために使用され
る単位回路(第2図と同じ)を改めて示してあ
り、Aがサンプルモードを示す、ここではC0
に接続する電位をVpと指示している(先の
Vref又はGNDに相当)。Vi(M)と指示するの
は、Mサイクルの目の入力値であり、この単位
回路の(M−1)後の出力をV0(M−1)とす
ると、これが次のサイクルの入力値Viとなる
ので、 Vi(M)=V0(M−1)、Vi(1)=0、M=1は
LSBである。 入力コードC=2-N N-1 〓i=0 ai・2i(ai=0、1、−
1) として、 Vp:a=1のときはVref a=0、−1のときは0 VN:a=0、1のときは0 a=−1のときはVref とすると、 電荷保存則より、 Vp・C+Vi(M)・C1=VN・C0 +V0(M)・C1+V0(M)・C2 ∴V0(M)=C0/C1+C2Vp+C1/C1+C2 Vi(M)−C0/C1+C2VN ……式 よつて、a=1のとき V0(M)=C0/C1+C2Vref+C1/C1+C2Vi(M) a=0のとき V0(M)=C1/C1+C2Vi(M) a=−1のとき V0(M)=C1/C1+C2Vi(M)−C0/C1+C2Vref こゝで容量C0、C1、C2をC0=1+△C0、C1
=1+△C1、C2=1、Vref=1とすると、V0
(M)は式より、 a=1のとき V0(M)=1+△C0/2+△C1+1+△C1/2+△C1Vi
(M)…式 a=0のとき V0(M)=1+△C1/2+△C1Vi(M) …式 a=−1のとき V0(M)=1+△C1/2+△C1Vi(M)−1+△C0/2
+△C1…式 上記の動作を行なう回路として、変換ブロツ
クA、変換ブロツクBの2つが使用されるか
ら、各々の変換ブロツクでのC0、C1の誤差を
表1の通りに表すものとする。
従来からSRT除算として知られている。(著者
HWANG.K.堀越彌コンピユータの高速演算方
式、p.227〜)。 次に、本発明の実施例として、上記のように2
進の各ビツトとして(−1、0、1)の3つの値
が許される場合のD/A変換誤差を測定しキヤパ
シタC0,C1,C2の誤差を求める例を示す。 ここで、D/Aコンバータの変換用高精度素子
のキヤパシタの絶対値が等しく増加、減少しても
D/A変換結果には影響せず、D/A変換誤差に
きくのはキヤパシタの相対的誤差である。そこ
で、本実施例では、キヤパシタの内C2を基準と
して、C0とC1だけを補正することにした。 こゝでD/A変換誤差を測定するのに次の3通
りの方法がある。 循環型D/Aコンバータが二つの変換ブロツ
クA,Bで構成されている場合、同一値を表す
二つのコードのD/A変換誤差を求める方法。 例えば、値(1/4)の二つのコード 1/41=0.1(−1)00……0 1/42=0.0100……0 値(1/8)の二つのコード 1/81=0.01(−1)0……0 1/82=0.0010……0 の4種の入力をD/Aコンバータに与え、その
出力V01、V01′、V02、V02′の4つの出力を求
め、V01、V01′の誤差△XとV02、V02′の誤差△
Yを測定する。 同一値を表す二つのコードのD/A変換誤差
を求める代りに、1/4または、1/8の所の
微分非直線性を測定する。これは誤差△Xまた
は△Yと等しい。 すなわち、 本実施例で先に示した漸化式(1)により2値2
進の外部コードC(1、0)から(−1、0、
1)コードの発生する場合、1/4または1/
8から1LSBだけ小さい値は、それぞれ次のコ
ードに変換される。 〔(1/4)−1LSB〕=0.0100……(−1) 〔(1/8)−1LSB〕=0.0010……(−1) したがつて、 1/4=0.1(−1)00……0 (1/4)−1LSB=0.0100……0(−1) の二つのコードの差は最終桁だけの(−1)だ
から、1/4と(1/4)−1LSBの微分非直
線性と全く同じである。 そこで、実際の誤差量を求める測定を1/4
と(1/4)−1LSBの微分非直線性を測るこ
とで行なつても良い。 また、この微分非直線性を測定するため、
(1/4)−1LSBの変換出力値に1LSB分の変
換出力値を加えてから、1/4の変換出力値と
の差をとつても先の、の結果と同じ値が得
られる。(1/8)の場合も同様である。 こゝで1/4FS(フルスケール)と〔1/
4FS−(1LSB)〕の微分非直線性誤差を△Xと
し、1/8FSと〔1/8−(1LSB〕の微分非直
線性誤差を△Yとすると、△X、△Yを測定し
て6つの容量の内、一部の容量に補正を加える
ことにより、全コードにわたる微分非直線性誤
差を0(零)にすることができる。次のような
例を示す。 変換ブロツクAの容量をC0A、C1A、C2Aと
し、変換ブロツクBの容量をC0B、C1B、C2B
とする。△X、△Yに対して、容量補正値△
C1A、△C1Bは △C1A=(4/3)(△X+△Y) △C1B=8/3(△X+△Y) と設定できる。 これは、6つのキヤパシタのうちC1A、C1B
のみを(C1A+△C1A)、(C1B+△C1B)とす
ることにより、全コードにおける微分非直線性
誤差は0にできることを示している。この解析
については、詳しく後記している。 循環型D/Aコンバータが一つの変換ブロツ
クで構成されている場合、同一値を表す二つの
コードのD/A変換誤差を求める方法。 例えば、値(1/4)を表す二つのコード 1/41=0.1(−1)00……0 1/42=0.0100……0 を入力し、その時のD/Aコンバータ出力V01
とV01′を求め、その差△Xを測定する。 また、1/4FS(フルスケール)と〔1/
4FS−(1LSB)〕の微分非直線性誤差も△Xと
同一である。この△Xを測定して3つの容量の
内、一部の容量に補正を加えることにより、全
コードにわたる微分非直線性を0(零)にする
ことができる。 次のような例を示す。 変換ブロツクAの容量をC0A、C1A、C2Aと
する。 △Xに対して、容量補正値△C1Aは△Xに或
る数値を掛けたものである。したがつて、C1A
+△C1Aとするだけで全コードにおける微分非
直線性誤差は0にできる。この詳しい解析結果
も後述している。 次に、上記D/A変換誤差から変換用高精度素
子のキヤパシタの誤差、補正値を見出す方法を解
析する。 (1) 二つのブロツクA,Bを使用する場合 第4図A,Bに誤差を求めるために使用され
る単位回路(第2図と同じ)を改めて示してあ
り、Aがサンプルモードを示す、ここではC0
に接続する電位をVpと指示している(先の
Vref又はGNDに相当)。Vi(M)と指示するの
は、Mサイクルの目の入力値であり、この単位
回路の(M−1)後の出力をV0(M−1)とす
ると、これが次のサイクルの入力値Viとなる
ので、 Vi(M)=V0(M−1)、Vi(1)=0、M=1は
LSBである。 入力コードC=2-N N-1 〓i=0 ai・2i(ai=0、1、−
1) として、 Vp:a=1のときはVref a=0、−1のときは0 VN:a=0、1のときは0 a=−1のときはVref とすると、 電荷保存則より、 Vp・C+Vi(M)・C1=VN・C0 +V0(M)・C1+V0(M)・C2 ∴V0(M)=C0/C1+C2Vp+C1/C1+C2 Vi(M)−C0/C1+C2VN ……式 よつて、a=1のとき V0(M)=C0/C1+C2Vref+C1/C1+C2Vi(M) a=0のとき V0(M)=C1/C1+C2Vi(M) a=−1のとき V0(M)=C1/C1+C2Vi(M)−C0/C1+C2Vref こゝで容量C0、C1、C2をC0=1+△C0、C1
=1+△C1、C2=1、Vref=1とすると、V0
(M)は式より、 a=1のとき V0(M)=1+△C0/2+△C1+1+△C1/2+△C1Vi
(M)…式 a=0のとき V0(M)=1+△C1/2+△C1Vi(M) …式 a=−1のとき V0(M)=1+△C1/2+△C1Vi(M)−1+△C0/2
+△C1…式 上記の動作を行なう回路として、変換ブロツ
クA、変換ブロツクBの2つが使用されるか
ら、各々の変換ブロツクでのC0、C1の誤差を
表1の通りに表すものとする。
【表】
これらの式が、実施例1及び実施例2の前提
条件を表わすものであり、以下に、コード1024
−1023、512−511の微分非直線性誤差の解析を
行なう。 まず、コード1024−1023の(1、0、−1)
コードと変換ブロツクA,Bによる変換手順を
表2に示す。
条件を表わすものであり、以下に、コード1024
−1023、512−511の微分非直線性誤差の解析を
行なう。 まず、コード1024−1023の(1、0、−1)
コードと変換ブロツクA,Bによる変換手順を
表2に示す。
【表】
この表2は、先に示した第1図と同様に、最
下位ビツトを変換ブロツクAから与え、次のビ
ツトを変換ブロツクBに与えるとともに変換ブ
ロツクAの出力をBに渡す操作を順々に繰返す
ことを示している。 〔コード1024〕の出力電圧 上記式及び条件から、 V0(1)=0、V0(2)=0、……、V0(9)=0 V0(10)=0……〔変換ブロツクの出力電圧〕 であり、式にVi(11)=0を代入して、 V0(11)=−1+△C0A/2+△C1A ……〔変換ブロツクAの出力電圧〕 したがつて、コード1024の出力電圧は、 V0(12)=1+△C0B/2+△C1B+1+△C1B/2+
△C1B(−1+△C0A/2+△C1A)=1+△C0B/2+△
C1B−(1+△C1B)(1+△C0A)/(2+△C1B)(2
+△C1A) となる。 〔コード1023〕の出力電圧 V(1)=−1+△C0A/2+△C1A ……〔ブロツクAの出力電圧〕 V0(2)=1+△C1B/2+△C1B(−1+△C0A/2+△
C1A)=−(1+△C1B)(1+△C0A)/(2+△C1B)
(2+△C1A)……〔ブロツクBの出力電圧〕 V0(3)=1+△C1A/2+△C1A((1+△C1B)(1+
△C0A)/(2+△C1B)(2+△C1A))=−(1+△C
1B)(1+△C0A)(1+△C1A)/(2+△C1B)(2
+△C1A)2 ……〔ブロツクAの出力電圧〕 以下、順に計算すると、 V0(10)=−(1+△C1B)(1+△C0A)(1+△C1A
)4/(2+△C1B)5(2+△C1A)5……〔ブロツクB
の出力電圧〕 V0(11)=1+△C0A/2+△C1A+1+△C1A/2+
△C1A(V0(10))=1+△C0A/2+△C1A −(1−△C1B)5(1+△C1A)5(1+△C0A)
/(2+△C1B)5(2+△C1A)6……〔ブロツクAの出
力電圧〕 V0(12)=1+△C1B/2+△C1B(V0(11))=(1
+△C1B)(1+△C0A)/(2+△C1B)(2+△C1A)
−(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6……〔コード1023の出
力電圧〕 従つて、微分非直線誤差は、 V1024−V1023=1+△C0B/2+△C1B−2(1+△C1
B)(1+△C0A)/(2+△C1B)(2+△C1A) +(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6 これを近似式 1/(1+△Cx)〓=1−η△Cx (1+△Cx)〓=1+η△Cx △Cx・△Cy=0 を使つて解くと、 1項目は ′=1+△C0B/2+△C1B=1+△C0B/2(1+
△C1B/2)≒1/2(1−△C1B/2)(1+△C0B) 2項目は ′=2(1+△C1B)(1+△C0A)/(2+△C1B
)(2+△C1A)=2(1+△C1B)(1+△C0A)/2
(1+△C1B/2)2(1+△C1A/2) ≒1/2(1−△C1B/2)(1−△C1A/2)(
1+△C1B)(1+△C0A) 3項目は ′=(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6=(1+△C1B)6(1
+△C1A)5(1+△C0A)/26(1+△C1B/2)626(
1+△C1A/2)6 ≒1/212(1−3△C1B)(1−3△C1A)(1
+6△C1B)(1+5△C1A)(1+△C0A) よつて、コード1024−1023の微分非直線性誤
差△E1024は、 △E1024=V1024−V1023−1/212=′−′+′
−1/212 =(−1/2+1/212)△C0A+(1/4+1/
211)△C1A+1/2△C0A+(−1/2+3/212)△C1
B 同様にして、コード512−511の微分非直線性
誤差△E512を求める。変換手順を表3に示す。
下位ビツトを変換ブロツクAから与え、次のビ
ツトを変換ブロツクBに与えるとともに変換ブ
ロツクAの出力をBに渡す操作を順々に繰返す
ことを示している。 〔コード1024〕の出力電圧 上記式及び条件から、 V0(1)=0、V0(2)=0、……、V0(9)=0 V0(10)=0……〔変換ブロツクの出力電圧〕 であり、式にVi(11)=0を代入して、 V0(11)=−1+△C0A/2+△C1A ……〔変換ブロツクAの出力電圧〕 したがつて、コード1024の出力電圧は、 V0(12)=1+△C0B/2+△C1B+1+△C1B/2+
△C1B(−1+△C0A/2+△C1A)=1+△C0B/2+△
C1B−(1+△C1B)(1+△C0A)/(2+△C1B)(2
+△C1A) となる。 〔コード1023〕の出力電圧 V(1)=−1+△C0A/2+△C1A ……〔ブロツクAの出力電圧〕 V0(2)=1+△C1B/2+△C1B(−1+△C0A/2+△
C1A)=−(1+△C1B)(1+△C0A)/(2+△C1B)
(2+△C1A)……〔ブロツクBの出力電圧〕 V0(3)=1+△C1A/2+△C1A((1+△C1B)(1+
△C0A)/(2+△C1B)(2+△C1A))=−(1+△C
1B)(1+△C0A)(1+△C1A)/(2+△C1B)(2
+△C1A)2 ……〔ブロツクAの出力電圧〕 以下、順に計算すると、 V0(10)=−(1+△C1B)(1+△C0A)(1+△C1A
)4/(2+△C1B)5(2+△C1A)5……〔ブロツクB
の出力電圧〕 V0(11)=1+△C0A/2+△C1A+1+△C1A/2+
△C1A(V0(10))=1+△C0A/2+△C1A −(1−△C1B)5(1+△C1A)5(1+△C0A)
/(2+△C1B)5(2+△C1A)6……〔ブロツクAの出
力電圧〕 V0(12)=1+△C1B/2+△C1B(V0(11))=(1
+△C1B)(1+△C0A)/(2+△C1B)(2+△C1A)
−(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6……〔コード1023の出
力電圧〕 従つて、微分非直線誤差は、 V1024−V1023=1+△C0B/2+△C1B−2(1+△C1
B)(1+△C0A)/(2+△C1B)(2+△C1A) +(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6 これを近似式 1/(1+△Cx)〓=1−η△Cx (1+△Cx)〓=1+η△Cx △Cx・△Cy=0 を使つて解くと、 1項目は ′=1+△C0B/2+△C1B=1+△C0B/2(1+
△C1B/2)≒1/2(1−△C1B/2)(1+△C0B) 2項目は ′=2(1+△C1B)(1+△C0A)/(2+△C1B
)(2+△C1A)=2(1+△C1B)(1+△C0A)/2
(1+△C1B/2)2(1+△C1A/2) ≒1/2(1−△C1B/2)(1−△C1A/2)(
1+△C1B)(1+△C0A) 3項目は ′=(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6=(1+△C1B)6(1
+△C1A)5(1+△C0A)/26(1+△C1B/2)626(
1+△C1A/2)6 ≒1/212(1−3△C1B)(1−3△C1A)(1
+6△C1B)(1+5△C1A)(1+△C0A) よつて、コード1024−1023の微分非直線性誤
差△E1024は、 △E1024=V1024−V1023−1/212=′−′+′
−1/212 =(−1/2+1/212)△C0A+(1/4+1/
211)△C1A+1/2△C0A+(−1/2+3/212)△C1
B 同様にして、コード512−511の微分非直線性
誤差△E512を求める。変換手順を表3に示す。
【表】
〔コード512〕の出力電圧V512は、
V512=(1+△C1B)(1+△C0A)/(2+△C1B)
(2+△C1A)−(1+△C1B)(1+△C0B)(1+△C
1A)/(2+△C1B)2(2+△C1A) 〔コード511〕の出力電圧V511は、 V511=(1+△C1B)(1+△C0B)(1+△C1A)/
(2+△C1B)2(2+△C1A)−(1+△C1B)6(1+
△C1A)5(1+△C0A)/(2+△C1B)6(2+△C1A)
6 V512−V511=(1+△C1B)(1+△C0A)/(2+△
C1B)(2+△C1A)−2(1+△C1B)(1+△C0B)(
1+△C1A)/(2+△C1B)2(2+△C1A) +(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6 近似式を使つて解くと、 E512=V512−V511−1/212=(−1/4+1/211)
△C0A+(−1/4+1/211) △C1A−1/4△C0B+(1/8+3/212△C1B こゝで、実際の誤差(△E1024、△E512)を
消去する容量(キヤパシタの補正地)dC1B、
dC1Aを求める。 △E1024=−1/2△C0A+1/4△C1A+1/2 △C0B−1/2△C1B △E512=1/4△C0A−1/4△C1A−1/4 △C0B+1/8△C1B ここに、△C0A−△C0B=△C0とおくと、 △E1024=−1/2△C0+1/4△C1A−1/2△C1B △E512=1/4△C0−1/4△C1A+1/8△C1B △C0は補正しないものとして、△C0=0、
△E1024、△E512=0となるようにしたときの
△C1A、△C1B、をdC1A、dC1Bとすると、 −△E1024=1/4dC1A−1/2dC1B …… −△E512=−1/4dC1A+1/8dC1B …… +から −3/8dC1B=−△E1024−△E512 ∴dC1B=3/8(△E1024+△E512) ∴dC1A=16/8(△E1024+△E512) −4△E1024=4/3(△E1024+4△E512) すなわち、ブロツクA、ブロツクBのC1Aおよ
びC2Aの補正を行なうだけで、D/A変換誤差
を0にすることができる。 これは、C1A、C1Bのみを(C1A+dC1A)、
(C1B+dC1B)とすることにより、全コードに
おける微分非直線性誤差は0にできることを示
している。 (2) 一つの変換ブロツクAのみを使用する場合変
換順序を表4に示す。
(2+△C1A)−(1+△C1B)(1+△C0B)(1+△C
1A)/(2+△C1B)2(2+△C1A) 〔コード511〕の出力電圧V511は、 V511=(1+△C1B)(1+△C0B)(1+△C1A)/
(2+△C1B)2(2+△C1A)−(1+△C1B)6(1+
△C1A)5(1+△C0A)/(2+△C1B)6(2+△C1A)
6 V512−V511=(1+△C1B)(1+△C0A)/(2+△
C1B)(2+△C1A)−2(1+△C1B)(1+△C0B)(
1+△C1A)/(2+△C1B)2(2+△C1A) +(1+△C1B)6(1+△C1A)5(1+△C0A)
/(2+△C1B)6(2+△C1A)6 近似式を使つて解くと、 E512=V512−V511−1/212=(−1/4+1/211)
△C0A+(−1/4+1/211) △C1A−1/4△C0B+(1/8+3/212△C1B こゝで、実際の誤差(△E1024、△E512)を
消去する容量(キヤパシタの補正地)dC1B、
dC1Aを求める。 △E1024=−1/2△C0A+1/4△C1A+1/2 △C0B−1/2△C1B △E512=1/4△C0A−1/4△C1A−1/4 △C0B+1/8△C1B ここに、△C0A−△C0B=△C0とおくと、 △E1024=−1/2△C0+1/4△C1A−1/2△C1B △E512=1/4△C0−1/4△C1A+1/8△C1B △C0は補正しないものとして、△C0=0、
△E1024、△E512=0となるようにしたときの
△C1A、△C1B、をdC1A、dC1Bとすると、 −△E1024=1/4dC1A−1/2dC1B …… −△E512=−1/4dC1A+1/8dC1B …… +から −3/8dC1B=−△E1024−△E512 ∴dC1B=3/8(△E1024+△E512) ∴dC1A=16/8(△E1024+△E512) −4△E1024=4/3(△E1024+4△E512) すなわち、ブロツクA、ブロツクBのC1Aおよ
びC2Aの補正を行なうだけで、D/A変換誤差
を0にすることができる。 これは、C1A、C1Bのみを(C1A+dC1A)、
(C1B+dC1B)とすることにより、全コードに
おける微分非直線性誤差は0にできることを示
している。 (2) 一つの変換ブロツクAのみを使用する場合変
換順序を表4に示す。
【表】
〔コード1024〕のD/A変換出力電圧
V0(1)=0、V0(2)=0、……、V0(10)=0
V0(11)=−1+△C0A/2+△C1A
V0(12)=1+△C0A/2+C1A+1+△C1A/2+△C
1A(−1+△C0A/2+△C1A)=1+△C0A/2+△C1A
−(1+△C1A)(1+△C0A)/(2+△C1A)2 …〔コード1024の出力電圧〕 〔コード1023〕のD/A変換出力電圧 V0(1)=−1+△C0A/2+△C1A V0(2)=1+△C1A/2+△C1A(−1+△C0A/2+△
C1A)=−(1+△C1A)(1+△C0A)/(2+△C1A)
2 V0(3)=1+△C1A/2+△C1A(V0(2))=−(1+△
C1A)2(1+△C0A)/(2+△C1A)3 V0(4)=1+△C1A/2+△C1A(V0(3))=−(1+△
C1A)3(1+△C0A)/(2+△C1A)4 〓 V0(10)=1+△C1A/2+△C1A(V0(9))=−(1+
△C1A)9(1+△C0A)/(2+△C1A)10 V0(11)=1+△C0A/2+△C1A+1+△C1A/2+
△C1A(V0(10))=1+△C0A/2+△C1A−(1+△C1A
)10(1+△C0A)/(2+△C1A)11 V0(12)=1+△C1A/2+△C1A(V0(11))=(1
+△C1A)(1+△C0A)/(2+△C1A)2−(1+△C1
A)11(1+△C0A)/(2+△C1A)12 …〔コード1023の出力電圧〕 V1024−V1023=1+△C0A/2+△C1A−2(1+△C1
A)11(1+△C0A)/(2+△C1A)2 +(1+△C1A)(1+△C0A)/(2+△C1A)1
2=″+″+″ 近似式を使つて解くと、 ″=1+△C0A/2+△C1A=1+△C0A/2(1+
△C1A/2)=1/2(1−△C1A/2)(1+△C0A) ″=2(1+△C1A)(1+△C0A)/(2+△C1A
)2=2(1+△C1A)(1+△C0A)/22(1+△C1A/
2) =1/2(1−△C1A)(1+△C1A)(1+△C0
A) ″=(1+△C1A)11(1+△C0A)/(2+△C1A
)12=(1+△C1A)11(1+△C0A)/212〔1+△C1A/
2〕12 =1/212(1−6△C1A)(1+11△C1A)(
1+△C0A) よつてコード1024−1023の微分非直線性誤差
△E1024は、 △E1024=V1024−V1023−1/212=″−″+″
−1/212=1/212△C0A+(−1/4+1/211+3/
212)△C1A なお同様にしてコード512−511の微分非直線
誤差△E512を求める。 変換順序は下表5のようになる。
1A(−1+△C0A/2+△C1A)=1+△C0A/2+△C1A
−(1+△C1A)(1+△C0A)/(2+△C1A)2 …〔コード1024の出力電圧〕 〔コード1023〕のD/A変換出力電圧 V0(1)=−1+△C0A/2+△C1A V0(2)=1+△C1A/2+△C1A(−1+△C0A/2+△
C1A)=−(1+△C1A)(1+△C0A)/(2+△C1A)
2 V0(3)=1+△C1A/2+△C1A(V0(2))=−(1+△
C1A)2(1+△C0A)/(2+△C1A)3 V0(4)=1+△C1A/2+△C1A(V0(3))=−(1+△
C1A)3(1+△C0A)/(2+△C1A)4 〓 V0(10)=1+△C1A/2+△C1A(V0(9))=−(1+
△C1A)9(1+△C0A)/(2+△C1A)10 V0(11)=1+△C0A/2+△C1A+1+△C1A/2+
△C1A(V0(10))=1+△C0A/2+△C1A−(1+△C1A
)10(1+△C0A)/(2+△C1A)11 V0(12)=1+△C1A/2+△C1A(V0(11))=(1
+△C1A)(1+△C0A)/(2+△C1A)2−(1+△C1
A)11(1+△C0A)/(2+△C1A)12 …〔コード1023の出力電圧〕 V1024−V1023=1+△C0A/2+△C1A−2(1+△C1
A)11(1+△C0A)/(2+△C1A)2 +(1+△C1A)(1+△C0A)/(2+△C1A)1
2=″+″+″ 近似式を使つて解くと、 ″=1+△C0A/2+△C1A=1+△C0A/2(1+
△C1A/2)=1/2(1−△C1A/2)(1+△C0A) ″=2(1+△C1A)(1+△C0A)/(2+△C1A
)2=2(1+△C1A)(1+△C0A)/22(1+△C1A/
2) =1/2(1−△C1A)(1+△C1A)(1+△C0
A) ″=(1+△C1A)11(1+△C0A)/(2+△C1A
)12=(1+△C1A)11(1+△C0A)/212〔1+△C1A/
2〕12 =1/212(1−6△C1A)(1+11△C1A)(
1+△C0A) よつてコード1024−1023の微分非直線性誤差
△E1024は、 △E1024=V1024−V1023−1/212=″−″+″
−1/212=1/212△C0A+(−1/4+1/211+3/
212)△C1A なお同様にしてコード512−511の微分非直線
誤差△E512を求める。 変換順序は下表5のようになる。
以上のように、本発明によれば、変換用高精度
素子の個数より少ない測定値を求める操作で、変
換用高精度素子の誤差量を検出し、その補正を行
なうことが可能となるという利点がある。
素子の個数より少ない測定値を求める操作で、変
換用高精度素子の誤差量を検出し、その補正を行
なうことが可能となるという利点がある。
第1図は本発明の循環型D/Aコンバータの実
施例の全体的構成図、第2図A,Bは本発明の実
施例の循環型D/Aコンバータの単位回路の動作
を示す回路図、第3図は本発明の実施例のD/A
コンバータで二つの変換ブロツクを用いた場合の
模式図、第4図A,Bは本発明における変換用高
精度素子の補正の解析例のために示した循環型
D/Aコンバータの単位回路図、第5図A,Bお
よび第6図は従来技術を説明するための循環型
D/Aコンバータ回路図、第7図は循環型D/A
コンバータの一般的回路図、第8図は本発明方法
を実行するための装置の全体構成例を示す構成図
である。 1……8ビツトの2値2進入力コード、2……
コード変換ブロツク、3……循環型D/Aコンバ
ータの単位回路ブロツクA、4……循環型D/A
コンバータの単位回路ブロツクB、C0〜C2……
変換用高精度素子のキヤパシタ、S1〜S4……
スイツチ、OP……オペアンプ、80……D/A
コンバータ、81……コード変換回路、82……
D/A変換回路本体、83……電圧測定系、84
……制御回路系。
施例の全体的構成図、第2図A,Bは本発明の実
施例の循環型D/Aコンバータの単位回路の動作
を示す回路図、第3図は本発明の実施例のD/A
コンバータで二つの変換ブロツクを用いた場合の
模式図、第4図A,Bは本発明における変換用高
精度素子の補正の解析例のために示した循環型
D/Aコンバータの単位回路図、第5図A,Bお
よび第6図は従来技術を説明するための循環型
D/Aコンバータ回路図、第7図は循環型D/A
コンバータの一般的回路図、第8図は本発明方法
を実行するための装置の全体構成例を示す構成図
である。 1……8ビツトの2値2進入力コード、2……
コード変換ブロツク、3……循環型D/Aコンバ
ータの単位回路ブロツクA、4……循環型D/A
コンバータの単位回路ブロツクB、C0〜C2……
変換用高精度素子のキヤパシタ、S1〜S4……
スイツチ、OP……オペアンプ、80……D/A
コンバータ、81……コード変換回路、82……
D/A変換回路本体、83……電圧測定系、84
……制御回路系。
Claims (1)
- 【特許請求の範囲】 1 少なくとも入力端子と反転入力端子と出力端
子とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差の検出及び補正方法にお
いて、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が同一値を示す複数の前
記多値2進コードを該循環型D/Aコンバータで
変換した出力差を測定し、該測定結果に基づき前
記各キヤパシタの誤差および補正量を検出するこ
とを特徴とする循環型D/Aコンバータの誤差検
出補正方法。 2 少なくとも入力端子と反転入力端子と出力端
子とを有する演算増幅器と、 前記反転入力端子と前記出力端子との間に挿入
されたスイツチと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の出力端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 一端が前記反転入力端子に接続され他端が回路
の入力端子或いは回路の基準電圧端子或いは接地
端子に切換え接続するためのスイツチに接続され
且つ前記キヤパシタと略等しい容量であるn個
(n≧1)キヤパシタと、 回路の出力端子或いは接地端子に切換え接続す
るためのスイツチに接続されたキヤパシタと、 を含む電荷充放電ユニツトと、を備える循環型
D/Aコンバータの誤差の検出及び補正方法にお
いて、 2値2進コードでなる入力デジタル信号を各桁
が2進の重み付けであり、各桁の値が正、負、零
の値をとりうる多値2進コードに変換し、 2値2進コードでの値が異なる値を示す複数の
多値2進コードを該循環型D/Aコンバータで変
換した出力をもとに微分非直線性を測定し、該測
定結果に基づき前記各キヤパシタの誤差および補
正量を検出することを特徴とする循環型D/Aコ
ンバータの誤差検出補正方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61187080A JPS6342523A (ja) | 1986-08-09 | 1986-08-09 | 循環型d/aコンバ−タの誤差検出補正方法 |
EP87306975A EP0257878B1 (en) | 1986-08-09 | 1987-08-06 | D/A converter |
KR8708757A KR900005820B1 (en) | 1986-08-09 | 1987-08-10 | Cyclic type d/a converter having error detection and correction system |
US07/083,399 US4743885A (en) | 1986-08-09 | 1987-08-10 | Cyclic type D/A converter having error detection and correction system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61187080A JPS6342523A (ja) | 1986-08-09 | 1986-08-09 | 循環型d/aコンバ−タの誤差検出補正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6342523A JPS6342523A (ja) | 1988-02-23 |
JPH0419727B2 true JPH0419727B2 (ja) | 1992-03-31 |
Family
ID=16199779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61187080A Granted JPS6342523A (ja) | 1986-08-09 | 1986-08-09 | 循環型d/aコンバ−タの誤差検出補正方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6342523A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010093683A (ja) | 2008-10-10 | 2010-04-22 | Nec Electronics Corp | デジタルアナログ変換回路とその出力データの補正方法 |
-
1986
- 1986-08-09 JP JP61187080A patent/JPS6342523A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS6342523A (ja) | 1988-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5510789A (en) | Algorithmic A/D converter with digitally calibrated output | |
TWI509997B (zh) | 資料轉換電路及其方法 | |
JP7444772B2 (ja) | 低減キャパシタアレイdacを用いたsar adcにおけるオフセット補正のための方法及び装置 | |
JPH0153939B2 (ja) | ||
US6177899B1 (en) | Analog-to-digital converter having multiple reference voltage comparators and boundary voltage error correction | |
EP0213954B1 (en) | Electronic conversion circuit | |
EP0257878B1 (en) | D/A converter | |
JP4242973B2 (ja) | 逐次比較型adコンバータ及びそれを組み込んだマイクロコンピュータ | |
JPH0419727B2 (ja) | ||
AU752073B2 (en) | Capacitive flash analog to digital converter | |
JPS6177430A (ja) | アナログ・デジタル変換器 | |
JP5565169B2 (ja) | Ad変換器 | |
JPS59133728A (ja) | A/d変換器 | |
JPS6276822A (ja) | デイジタル・アナログ変換方法 | |
JPS60102024A (ja) | アナログ・デイジタル変換方式 | |
JPS61137429A (ja) | Ad変換器試験回路 | |
SU1495993A1 (ru) | Аналого-цифровой преобразователь | |
JPS60185429A (ja) | Da変換器における直線性誤差補正回路 | |
WO2024058789A1 (en) | Analog-to-digital conversion | |
Wagdy | Correction of capacitor errors during the conversion cycle of self-calibrating A/D converters | |
JP3750757B2 (ja) | デジタル・アナログ変換方法およびデジタル・アナログ変換器 | |
TW202415008A (zh) | 類比轉數位轉換 | |
SU741459A1 (ru) | Способ аналого-цифрового преобразовани и устройство дл его осуществлени | |
SU1474824A1 (ru) | Устройство дл аналого-цифрового и цифро-аналогового преобразовани | |
JPH05191280A (ja) | Da変換器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |