(57)【特許請求の範囲】
【請求項１】
デジタルアナログ変換器（ＤＡＣ）とその出力を増幅するアンプとを有するＤＡＣアンプに於いて、
前記ＤＡＣアンプのオフセットｏｆｆをアナログデジタル変換（ＡＤＣ）してオフセット変換値ｏを得るＡＤＣ手段と、
前記ＤＡＣアンプの温度係数をＤＡＣアンプのオフセットｏｆｆの関数として、温度係数関数Ｃ＝Ｆ（ｏｆｆ）を発生させ、前記ＡＤＣ手段からのオフセット変換値ｏを前記温度係数関数に代入し、温度係数Ｃ＝Ｆ（ｏ）を演算する温度係数関数発生手段と、
前記ＤＡＣアンプの入力データＤｉと前記演算した温度係数Ｃ＝Ｆ（ｏ）とを入力して、演算出力データＤｓ＝Ｄｉ（１＋Ｃ）を得るＤＡＣ入力データ演算手段とを具備し、
前記温度係数関数発生手段は、
校正時、基準温度をＴｃ、入力データＤｉをＫ（Ｋ≠０）とした時の前記ＤＡＣアンプ出力のＡＤＣ変換値Ｈｃを求め、かつ入力データＤｉ＝Ｋのままで、前記基準温度ＴＣを中心にして温度をＴ１、Ｔ２、・・・Ｔｎ（Ｔ１＜ＴＣ＜Ｔｎ）へと変化させた時の、前記ＤＡＣアンプ出力のＡＤＣ変換値（Ｈｃ１，Ｈｃ２，・・・Ｈｃｎ）を求め、各温度時のＡＤＣ変換値（Ｈｃ１とＨｃ１，Ｈｃ２，・・・Ｈｃｎ）と前記基準温度Ｔｃ時のＡＤＣ変換値Ｈｃとの差を、入力データＤｉの差（Ｋ−０）により除算して、温度係数Ｃ１、Ｃ２・・・Ｃｎとして、
Ｃ１＝（Ｈｃ１−Ｈｃ）／Ｋ、
Ｃ２＝（Ｈｃ２−Ｈｃ）／Ｋ、・・・
Ｃｎ＝（Ｈｃｎ−Ｈｃ）／Ｋ
を演算する演算手段と、
温度Ｔ１、Ｔ２、・・・Ｔｎと、温度係数Ｃ１、Ｃ２、・・・Ｃｎから温度Ｔと温度係数Ｃの一次近似式：Ｃ＝Ａ１・Ｔ＋Ｂ１、のＡ１，Ｂ１を演算するＡ１，Ｂ１演算手段と、
入力データＤｉ＝０とし、温度をＴ１、Ｔ２、・・・Ｔｎへと変化させた時の前記ＤＡＣアンプの各出力のＡＤＣ変換値ｏ１，ｏ２，・・・ｏｎからオフセットｏと温度Ｔの一次近似式：Ｔ＝Ａ２・ｏ＋Ｂ２、のＡ２，Ｂ２を演算するＡ２，Ｂ２演算手段と、
オフセット値ｏから温度係数Ｃの一次近似式：
Ｃ＝Ａ１・（Ａ２・ｏ＋Ｂ２）＋Ｂ１
Ｃ＝Ａ・ｏ＋Ｂ  （但しＡ＝Ａ１・Ａ２、Ｂ＝Ａ１・Ｂ２＋Ｂ１）
を演算する手段と、を含み、前記オフセット値ｏを入力することで、前記温度係数Ｃを演算するようにし、
前記ＤＡＣ入力データ演算手段からの演算出力データＤｓを前記ＤＡＣアンプの入力データとし、ＤＡＣアンプの温度によるゲイン、オフセットによる誤差を補正することを特徴とするＤＡＣアンプ。
【請求項２】
デジタルアナログ変換器（ＤＡＣ）とその出力を増幅するアンプとを有するＤＡＣアンプに於いて、
前記ＤＡＣアンプのオフセットｏｆｆをアナログデジタル変換（ＡＤＣ）してオフセット変換値ｏを得るＡＤＣ手段と、
前記ＤＡＣアンプの温度係数をＤＡＣアンプのオフセットｏｆｆの関数として、温度係数関数Ｃ＝Ｆ（ｏｆｆ）を発生させ、前記ＡＤＣ手段からのオフセット変換値ｏを前記温度係数関数に代入し、温度係数Ｃ＝Ｆ（ｏ）を演算する温度係数関数発生手段と、
前記ＤＡＣアンプの入力データＤｉと前記演算した温度係数Ｃ＝Ｆ（ｏ）とを入力して、演算出力データＤｓ＝Ｄｉ（１＋Ｃ）を得るＤＡＣ入力データ演算手段と、を具備し、
前記温度係数関数発生手段は、校正時、基準温度をＴｃ、入力データＤｉをＫ（Ｋ≠０）とした時の前記ＤＡＣアンプ出力のＡＤＣ変換値Ｈｃを求め、かつ入力データＤｉ＝Ｋのままで、前記基準温度Ｔｃを中心にして温度をＴ１、Ｔ２、・・・Ｔｎ（Ｔ１＜ＴＣ＜Ｔｎ）へと変化させた時の、前記ＤＡＣアンプ出力のＡＤＣ変換値（Ｈ１，Ｈ２，・・・Ｈｎ）を求め、各温度時のＡＤＣ変換値（Ｈ１，Ｈ２，・・・Ｈｎ）と前記基準温度Ｔｃ時のＡＤＣ変換値Ｈｃとの差を、入力データＤｉの差（Ｋ−０）により除算して、温度係数Ｃ１、Ｃ２・・・Ｃｎとして、
Ｃ１＝（Ｈ１−Ｈｃ）／Ｋ、
Ｃ２＝（Ｈ２−Ｈｃ）／Ｋ、・・・
Ｃｎ＝（Ｈｎ−Ｈｃ）／Ｋ
を演算し、温度Ｔと温度係数Ｃの近似式：Ｃ＝Ｆ１（Ｔ）を演算する手段と、
入力データＤｉ＝０とし、温度をＴ１、Ｔ２、・・・Ｔｎへと変化させた時の前記ＤＡＣアンプの各出力のＡＤＣ変換値ｏ１，ｏ２，・・・ｏｎから、オフセットｏと温度Ｔの近似式：Ｔ＝Ｆ２（ｏ）を演算する手段と、
オフセット値ｏから温度係数Ｃの近似式：Ｃ＝Ｆ１（Ｆ２（ｏ））を演算する手段と、
オフセット値ｏによってアドレスされた領域に前記温度係数Ｃの値が格納されたＲＡＭと、を含み、前記温度係数Ｃを前記ＲＡＭのアドレスから読み出すようにし、
前記ＤＡＣ入力データ演算手段からの演算出力データＤｓを前記ＤＡＣアンプの入力データとし、ＤＡＣアンプの温度によるゲイン、オフセットによる誤差を補正することを特徴とするＤＡＣアンプ。 
【請求項３】
電子ビームにより試料を描画する電子ビーム描画装置における偏向アンプとして前記ＤＡＣアンプを用い、
電子ビームのブランキング期間中に前記オフセットを前記ＡＤＣ手段により変換し、そのオフセットを関数とする温度係数で温度補正を行うことを特徴とする請求項１又は２記載のＤＡＣアンプ。
【請求項４】
前記ＡＤＣ手段は、前記ＤＡＣアンプの出力と基準電源（又はグランド）とを比較するコンパレータを有し、
前記ＤＡＣアンプに、ＭＳＢのみを１にし他のビットをゼロにした入力データＤｉを入力し、前記ＤＡＣアンプの出力がゼロ電圧より大きい場合は前記コンパレータ出力を１とし、ゼロ電圧より小さい場合は前記コンパレータ出力を０とし、前記コンパレータ出力が１ならばＭＳＢを１、コンパレータ出力が０ならばＭＳＢを０にして、前記入力データＤｉのＭＳＢを比較結果によって保持し、
前記ＤＡＣアンプに、ＭＳＢ−１を１にし、ＭＳＢ−２以下のビットをゼロにした入力データＤｉを入力して、前記アンプ出力と基準電源（又はグランド）とを比較して、コンパレータ出力が１ならばＭＳＢ−１を１、コンパレータ出力が０ならばＭＳＢ−１を０にして、ＭＳＢ，ＭＳＢ−１を比較結果によって保持し、
前記入力データＤｉのＬＳＢが１になるまで、逐次前記アンプ出力と基準電源（又はグランド）とを比較することを特徴とする請求項１又は２記載のＤＡＣアンプ。 
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
電子（荷電）ビーム描画装置の偏向アンプ
【０００２】
【従来の技術】
電子ビーム描画装置は微細パターンを高速度で描画することを要求され、益々、高速かつ高精度化している。電子ビーム描画装置の高速化と精度は電子ビームを偏向する偏向アンプの高速と精度に大きく依存している。この偏向アンプは高精度を得るためアンプのオープンループゲインを大きくし、アンプ出力から負帰還を行うことで高精度を得ている。
【０００３】
【発明が解決しようとする課題】
しかし、偏向アンプ出力から負帰還をかけると、増幅素子の時間遅れ、負荷からの反射等により、セットリング時間が長くなる。
【０００４】
【課題を解決するための手段】
本発明は、デジタルアナログ変換器（ＤＡＣ）とその出力を増幅するアンプとを有するＤＡＣアンプに於いて、前記ＤＡＣアンプのオフセットｏｆｆをアナログデジタル変換（ＡＤＣ）してオフセット変換値ｏを得るＡＤＣ手段と、前記ＤＡＣアンプの温度係数をＤＡＣアンプのオフセットｏｆｆの関数として、温度係数関数Ｃ＝Ｆ（ｏｆｆ）を発生させ、前記ＡＤＣ手段からのオフセット変換値ｏを前記温度係数関数に代入し、温度係数Ｃ＝Ｆ（ｏ）を演算する温度係数関数発生手段と、前記ＤＡＣアンプの入力データＤｉと前記演算した温度係数Ｃ＝Ｆ（ｏ）とを入力して、演算出力データＤｓ＝Ｄｉ（１＋Ｃ）を得るＤＡＣ入力データ演算手段とを具備し、前記ＤＡＣ入力データ演算手段からの演算出力データＤｓを前記ＤＡＣアンプの入力データとし、ＤＡＣアンプの温度によるゲイン、オフセットによる誤差を補正するものである。
前記温度係数関数発生手段は、校正時、基準温度をＴｃ、入力データＤｉをＫ（Ｋ≠０）とした時の前記ＤＡＣアンプ出力のＡＤＣ変換値Ｈｃを求め、かつ入力データＤｉ＝Ｋのままで、前記基準温度ＴＣを中心にして温度をＴ１、Ｔ２、・・・Ｔｎ（Ｔ１＜ＴＣ＜Ｔｎ）へと変化させた時の、前記ＤＡＣアンプ出力のＡＤＣ変換値（Ｈｃ１，Ｈｃ２，・・・Ｈｃｎ）を求め、各温度時のＡＤＣ変換値（Ｈｃ１とＨｃ１，Ｈｃ２，・・・Ｈｃｎ）と前記基準温度Ｔｃ時のＡＤＣ変換値Ｈｃとの差を、入力データＤｉの差（Ｋ−０）により除算して、温度係数Ｃ１、Ｃ２・・・Ｃｎとして、
Ｃ１＝（Ｈｃ１−Ｈｃ）／Ｋ、
Ｃ２＝（Ｈｃ２−Ｈｃ）／Ｋ、・・・
Ｃｎ＝（Ｈｃｎ−Ｈｃ）／Ｋ
を演算する演算手段と、
温度Ｔ１、Ｔ２、・・・Ｔｎと、温度係数Ｃ１、Ｃ２、・・・Ｃｎから温度Ｔと温度係数Ｃの一次近似式：Ｃ＝Ａ１・Ｔ＋Ｂ１、のＡ１，Ｂ１を演算するＡ１，Ｂ１演算手段と、
入力データＤｉ＝０とし、温度をＴ１、Ｔ２、・・・Ｔｎへと変化させた時の前記ＤＡＣアンプの各出力のＡＤＣ変換値ｏ１，ｏ２，・・・ｏｎからオフセットｏと温度Ｔの一次近似式：Ｔ＝Ａ２・ｏ＋Ｂ２、のＡ２，Ｂ２を演算するＡ２，Ｂ２演算手段と、
オフセット値ｏから温度係数Ｃの一次近似式：
Ｃ＝Ａ１・（Ａ２・ｏ＋Ｂ２）＋Ｂ１
Ｃ＝Ａ・ｏ＋Ｂ  （但しＡ＝Ａ１・Ａ２、Ｂ＝Ａ１・Ｂ２＋Ｂ１）
を演算する手段とを含み、前記オフセット値ｏを入力することで、前記温度係数Ｃを演算することを特徴とする。
また、前記温度係数関数発生手段は、校正時、基準温度をＴｃ、入力データＤｉをＫ（Ｋ≠０）とした時の前記ＤＡＣアンプ出力のＡＤＣ変換値Ｈｃを求め、かつ入力データＤｉ＝Ｋのままで、前記基準温度Ｔｃを中心にして温度をＴ１、Ｔ２、・・・Ｔｎ（Ｔ１＜ＴＣ＜Ｔｎ）へと変化させた時の、前記ＤＡＣアンプ出力のＡＤＣ変換値（Ｈ１，Ｈ２，・・・Ｈｎ）を求め、各温度時のＡＤＣ変換値（Ｈ１，Ｈ２，・・・Ｈｎ）と前記基準温度Ｔｃ時のＡＤＣ変換値Ｈｃとの差を、入力データＤｉの差（Ｋ−０）により除算して、温度係数Ｃ１、Ｃ２・・・Ｃｎとして、
Ｃ１＝（Ｈ１−Ｈｃ）／Ｋ、
Ｃ２＝（Ｈ２−Ｈｃ）／Ｋ、・・・
Ｃｎ＝（Ｈｎ−Ｈｃ）／Ｋ
を演算し、温度Ｔと温度係数Ｃの近似式：Ｃ＝Ｆ１（Ｔ）を演算する手段と、
入力データＤｉ＝０とし、温度をＴ１、Ｔ２、・・・Ｔｎへと変化させた時の前記ＤＡＣアンプの各出力のＡＤＣ変換値ｏ１，ｏ２，・・・ｏｎから、オフセットｏと温度Ｔの近似式：Ｔ＝Ｆ２（ｏ）を演算する手段と、
オフセット値ｏから温度係数Ｃの近似式：Ｃ＝Ｆ１（Ｆ２（ｏ））を演算する手段と、
オフセット値ｏによってアドレスされた領域に前記温度係数Ｃの値が格納されたＲＡＭとを含み、前記温度係数Ｃを前記ＲＡＭのアドレスから読み出すことを特徴とする。
また、ＤＡＣアンプの温度係数Ｃは電子ビーム描画装置のブランキング期間中にＤＡＣアンプのオフセットを測定し、この測定したオフセットから新しい温度係数Ｃを演算し、常にＤＡＣアンプの温度をオフセットにより監視し、温度が変化しても、正確なＤＡＣアンプ出力を得る。この温度補償は描画を行わないブランキング期間中に行い、描画のスループットに影響を与えない。
【０００５】
【発明の実施の形態】
（実施例）
図１において、ＣＰＵより校正制御器７を動作させる信号を受け、変換コマンドでＴＥＭＰ８からデジタル値ｔを得る。デジタル値ｔは次の校正制御器７からの変換コマンドが送られ、ＴＥＭＰ８が動作するまで記憶される。記憶された値ｔを温度係数関数発生器６に入力し、温度係数Ｃを得、温度係数Ｃは温度係数演算器１に入力し、ＤｉとＣからＤｓ＝Ｄｉ（１＋Ｃ）を演算する。ＤＡＣ３に温度補正されたＤｓが入力され、アンプ４の出力のゲインとオフセットを温度補正される。
【０００６】
図２において、ＣＰＵより校正制御器７を動作させる信号を受け、切替器２の切替信号によりＤｃ（＝０）を選択し、ＤＡＣ３にゼロを入力し、アンプ４出力のオフセットｏｆｆを変換コマンドでＡＤＣ５からデジタル値ｏを得る。オフセットｏｆｆをＡＤＣしたデジタル値ｏは次の校正制御器７からの変換コマンドが送られ、ＡＤＣ５が動作するまで記憶される。記憶されたオフセット値ｏを温度係数関数発生器６に入力し、温度係数Ｃを得、温度係数Ｃは温度係数演算器１に入力し、ＤｉとＣからＤｓ＝Ｄｉ（１＋Ｃ）を演算する。切替器２の切替信号は校正制御器７によりＤｓ側に戻され、ＤＡＣ３に温度補正されたＤｓが入力され、アンプ４の出力のゲインとオフセットを温度補正される。
【０００７】
図３は図２の温度係数関数発生器６の詳細図である。図２において、温度係数関数を校正するために、ＤＡＣ３、アンプ４を含めた装置全体を基準温度Ｔｃにする。ＤＡＣ３に入力データＤｉからゼロではない値Ｋを入力し、この時のアンプ３出力のＡＤＣ４のＡＤＣ５の変換値をＨｃ、入力データＤｉ＝Ｋのままで、ＤＡＣ３、アンプ４を含めた装置全体の温度をＴ１、Ｔ２、・・・Ｔｎ（Ｔ１＜ＴＣ＜Ｔｎ）と変化させ、各温度のＤＡＣ３、アンプ４の各出力のＡＤＣ５の変換値Ｈｃ１、Ｈｃ２、・・・Ｈｃｎ、を温度と共にＣＰＵで記憶し、温度Ｔ１時の出力Ｈｃ１と基準温度Ｔｃ時の出力Ｈｃの差（Ｈｃ１−Ｈｃ）を入力データＤｉの差（Ｋ−０）により除算（温度係数Ｃ１）
Ｃ１＝（Ｈｃ１−Ｈｃ）／Ｋ、
をＣＰＵで演算する。
【０００８】
同様に、温度Ｔ２時の温度係数：
Ｃ２＝（Ｈｃ２−Ｈｃ）／Ｋ、・・・、
温度Ｔｎ時の温度係数：
Ｃｎ＝（Ｈｃｎ−Ｈｃ）／Ｋ、
をＣＰＵにより演算し、温度Ｔ１、Ｔ２、・・・Ｔｎと温度係数Ｃ１、Ｃ２、・・・Ｃｎから温度Ｔと温度係数Ｃの一次近似式：
Ｃ＝Ａ１・Ｔ＋Ｂ１
のＡ１、Ｂ１をＣＰＵで演算し、入力データＤｉ＝０、温度をＴ１、Ｔ２、・・・Ｔｎと変化させた時のＤＡＣアンプの各出力のＡＤＣ変換値ｏ１、ｏ２、・・・ｏｎ、からオフセットｏと温度Ｔの一次近似式：
Ｔ＝Ａ２・ｏ＋Ｂ２
のＡ２，Ｂ２をＣＰＵで演算し、オフセット値ｏから温度係数Ｃの一次近似式：
Ｃ＝Ａ１・（Ａ２・ｏ＋Ｂ２）＋Ｂ１Ｃ
＝Ａ・ｏ＋Ｂ
を演算する。但しＡ＝Ａ１・Ａ２、 Ｂ＝Ｂ１＋Ａ１・Ｂ２である。
図３において、ＣＰＵで上記演算したＡ、ＢをＣＰＵからラッチ６２にＡを、ラッチ６３にＢを格納する。ＡＤＣ５出力からオフセット値ｏとラッチ６２に格納したＡとを乗算器６１に入力し、乗算器６１出力Ａ・ｏを得、加算器６４の入力にそれぞれＡ・ｏとラッチ６３に格納したＢとを入力して加算し、加算器６４出力に温度係数Ｃ（＝Ａ・ｏ＋Ｂ）を得る。
【０００９】
図４は図２の温度係数関数発生器６をＲＡＭで制御するものである。
上記と同様に温度Ｔ１、Ｔ２、・・・、Ｔｎと温度係数Ｃ１、Ｃ２、・・・、ＣｎをＣＰＵにより演算し、温度Ｔと温度係数Ｃの近似式  Ｃ＝Ｆ１（Ｔ）を得る。また、入力データＤｉ＝０、温度をＴ１、Ｔ２、・・・Ｔｎと変化させた時のＤＡＣアンプの各出力のＡＤＣ変換値ｏ１，ｏ２，・・・ｏｎ、からオフセットｏと温度Ｔの近似式  Ｔ＝Ｆ２（ｏ）をＣＰＵにより演算し、オフセット値ｏから温度係数Ｃの近似式  Ｃ＝Ｆ１（Ｆ２（ｏ））をＣＰＵより得る。
ＣＰＵでオフセットｏと温度係数Ｃ下記のようなリストを作る。
【００１０】
オフセットｏ     温度係数Ｃ
ＡＤＤ１           Ｃｄ１
ＡＤＤ２           Ｃｄ２
・・・           ・・・
ＡＤＤｎ           Ｃｄｎ
図４で、ＣＰＵよりＲＡＭ６６のアドレスを切替器６７の切替信号によりＣＰＵ側にし、ＣＰＵ作成した上記リストのＡＤＤ１〜ＡＤＤｎをＲＡＭ６６のアドレスとし、対応する温度係数Ｃｄ１〜Ｃｄｎを入力からＲＡＭ６６に格納する。切替器６７の切替信号でＡＤＣ５出力をＲＡＭ６６のアドレスとする。ＡＤＣ５出力からのオフセット値ｏがＲＡＭ６６のアドレスとなり、ＲＡＭ６６出力がオフセット値ｏ時の温度係数Ｃとなり、温度係数Ｃを図２の温度係数演算器１の入力に供給する。
【００１１】
アンプ４出力オフセットのＡＤ変換について説明する（図５）。
図２で、切替器２の切替信号により入力データＤｃを選択する。  ＤＡＣ３の入力データＤｃを
Ｄｃ＝１０００・・・０
の様にＭＳＢのみを１にし、他のビットをゼロにし、ＤＡＣ３に入力する。図４を参照して、この時のアンプ４出力とグランド（ゼロ）電位とをゼロ比較器５１で比較する。アンプ４出力がゼロ電圧より大きければゼロ比較器５１出力は１をＣＰＵに出力し、アンプ４出力がゼロ電圧より小さければゼロ比較器５１出力は０をＣＰＵに出力する。
【００１２】
ＤＡＣ３の入力データＤｃのＭＳＢを上記のゼロ比較器５１の結果を保持し、入力データＤｃを
Ｄｃ＝０（又は１）１００・・・０
の様にＭＳＢを前のゼロ比較器５１の出力を設定し、ＭＳＢ−１を１にし、ＭＳＢ−２以下のビットをゼロにする。前回と同様に、アンプ４出力とグランド（ゼロ）電位とをゼロ比較器５１で比較する。アンプ４出力がゼロ電圧より大きければゼロ比較器５１出力は１をＣＰＵに出力し、アンプ４出力がゼロ電圧より小さければゼロ比較器５１出力は０をＣＰＵに出力する。
【００１３】
ＭＳＢ、ＭＳＢ−１の結果を保持し、入力データＤｃのＭＳＢ−２を上記と同様に１にし、入力データＤｃを、
Ｄｃ＝０（又は１） ０（又は１）１００・・・０
とし、上記の様にＭＳＢ、ＭＳＢ−１時のゼロ比較器５１出力を保持し、ＭＳＢ−２を１にし、前回と同様に、アンプ４出力とグランド（ゼロ）電位とをゼロ比較器５１で比較する。アンプ４出力がゼロ電圧より大きければゼロ比較器５１出力は１をＣＰＵに出力し、アンプ４出力がゼロ電圧より小さければゼロ比較器５１出力は０をＣＰＵに出力し、この出力をＭＳＢ−２に保持する。
【００１４】
以下同様に、ＭＳＢ−３，ＭＳＢ−４と繰り返し、最後にＬＳＢも同様に、
Ｄｃ＝０（又は１）  ０（又は１）  ・・・・・  ０（又は１）  １
最後にＬＳＢを１にし、アンプ４出力とグランド（ゼロ）電位とをゼロ比較器５１で比較する。アンプ４出力がゼロ電圧より大きければゼロ比較器５１出力は１をＣＰＵに出力し、アンプ４出力がゼロ電圧より小さければゼロ比較器５１出力は０をＣＰＵに出力し、この出力をＬＳＢに保持し、ＣＰＵにより、このＤｃの極性を反転し、この値をラッチ５３に記憶することによるＡＤＣ。アンプ５出力オフセットのＡＤ変換値ｏがラッチ５３に記憶され、温度係数関数発生器６の入力となる。
【００１５】
上記のＡＤ変換はアンプ４出力のオフセットについて説明したが、アンプ４の任意の出力ＥｋのＡＤ変換も同様に可能である。この場合はゼロ比較器５１の代わりに比較器５２を使い、ＭＳＢを１にし、比較器５２出力と入れ替え、ＭＳＢ−１を１にし、比較器５２出力と入れ替え、最後にＬＳＢを１にし、比較器５２出力と入れ替えて、ＣＰＵにより極性を反転させ、ＡＤ変換することができる。
【００１６】
図６はＤＡＣ３、アンプ４の温度補正の他の実施例である。
【００１７】
切替器１０２の切替コマンドにより、ＲＡＭ１０３のアドレスとＣＰＵから入力するように制御し、ＲＡＭ１０３入力からゼロ入力し、ＲＡＭ１０３に格納されている内容をゼロにする。ＲＡＭ１０３の内容がゼロであるので減算器１０２の出力は入力と同じＤｉとなり、ＤＡＣ３の入力はＤｉが入力となる。
【００１８】
入力Ｄｉをマイナス最大（−Ｍ）からプラス最大（Ｍ−１）まで変化させ、その時のアンプ４出力をＡＤＣ５によりＡＤ変換し、ＣＰＵでＡＤ変換値Ｐ（Ｄｉ）を記憶する。ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ３・Ｄｉ      Ａ３：比例係数
の関係があるとして、入力データＤｉの時、実際のアンプ出力Ｐと理想アンプ出力Ｐｄとの差（直線歪みＳ）Ｐ（Ｄｉ）−Ａ３・Ｄｉを
Ｓ（Ｄｉ）＝（Ｐ（Ｄｉ）−Ａ３・Ｄｉ）／Ａ３
ＤＡＣ３の入力データに換算する。このＳ（Ｄｉ）をＲＡＭ１０３に転送するために、切替コマンドで切替器１０２入力をＣＰＵ側にし、入力データＤｉをアドレスとし、Ｓ（Ｄｉ）を内容として、ＲＡＭ１０３に格納する。
【００１９】
切替コマンドで切替器１０２を入力Ｄｉ側にし、ＤｉをＲＡＭ１０３のアドレスにすし、減算器１０１により
Ｄｓ＝Ｄｉ−Ｓ（Ｄｉ）
を演算し、ＤｓをＤＡＣ３に入力することによりＤＡＣアンプの直線歪みを補正する。
【００２０】
このＤＡＣ３、アンプ４の温度補正を校正するために、温度をＴ１に設定し、入力Ｄｉをマイナス最大（−Ｍ）からプラス最大（Ｍ−１）まで変化させ、その時のアンプ４出力をＡＤ変換コマンドによりＡＤＣ５を動作させ、ＡＤ変換し、ＣＰＵでＡＤ変換値Ｐ１（Ｄｉ）を記憶する。入力データＤｉの時、実際のアンプ出力Ｐと理想アンプ出力Ｐｄとの差（直線歪みＳ）Ｐ１（Ｄｉ）−Ａ３・Ｄｉを比例定数Ａ３で除算し、
Ｓ１（Ｄｉ）＝（Ｐ１（Ｄｉ）−Ａ３・Ｄｉ）／Ａ３
ＤＡＣ３の入力データに換算した直線歪みＳ１（Ｄｉ）を記憶する。
【００２１】
同様に、温度Ｔ２，Ｔ３、・・・Ｔｎ時の直線歪みを各Ｓ２（ＤＩ），・・・Ｓｎ（Ｄｉ）をＣＰＵに記憶する。
【００２２】
入力データＤｉ＝−Ｍの直線歪みＳ１（−Ｍ）、Ｓ２（−Ｍ）、・・・Ｓｎ（−Ｍ）から、温度Ｔを関数とする１次近似式Ｓ（−Ｍ）をＣＰＵで演算する。
Ｓ（−Ｍ）＝ａ（−Ｍ）・Ｔ＋ｂ（−Ｍ）
ａ（−Ｍ）、ｂ（−Ｍ）はＤｉ＝−Ｍ時の比例係数と定数
入力データＤｉ＝−Ｍ＋１の直線歪みＳ１（−Ｍ＋１）、Ｓ２（−Ｍ＋１）、・・・Ｓｎ（−Ｍ＋１）から、温度Ｔを関数とする１次近似式Ｓ（−Ｍ＋１）をＣＰＵで演算する。
【００２３】
Ｓ（−Ｍ＋１）＝ａ（−Ｍ＋１）・Ｔ＋ｂ（−Ｍ＋１）
ａ（−Ｍ＋１）、ｂ（−Ｍ＋１）はＤｉ＝−Ｍ＋１時の比例係数と定数
・・・
・・・
入力データＤｉ＝Ｍ−１の直線歪みＳ１（Ｍ−１）、Ｓ２（Ｍ−１）、・・・Ｓｎ（Ｍ−１）から、温度Ｔを関数とする１次近似式Ｓ（Ｍ−１）をＣＰＵで演算する。
【００２４】
Ｓ（Ｍ−１）＝ａ（Ｍ−１）・Ｔ＋ｂ（Ｍ−１）
ａ（Ｍ−１）、ｂ（Ｍ−１）はＤｉ＝Ｍ−１時の比例係数と定数
以上で、入力データＤｉが−ＭからＭ＋１までの温度Ｔが変化したときの歪みの歪みＳ（Ｄｉ）の一次近似式
Ｓ（−Ｍ）＝ａ（−Ｍ）・Ｔ＋ｂ（−Ｍ）
Ｓ（−Ｍ＋１）＝ａ（−Ｍ＋１）・Ｔ＋ｂ（−Ｍ＋１）
・・・
・・・
Ｓ（Ｍ−１）＝ａ（Ｍ−１）・Ｔ＋ｂ（Ｍ−１）
のａ（−Ｍ）、ａ（−Ｍ＋１）、・・・、ａ（Ｍ−１）とｂ（−Ｍ）、ｂ（−Ｍ＋１）、・・・、ｂ（Ｍ−１）を記憶する。
【００２５】
次に、オフセットと温度の関係式を作る。
【００２６】
このＤＡＣ３、アンプ４の温度Ｔ１の設定時に入力Ｄｉをゼロにし、その時のアンプ４出力をＡＤ変換コマンドによりＡＤＣ５を動作させ、ＡＤ変換し、ＣＰＵでＡＤ変換値ｏ１を記憶する。
【００２７】
同様に、各温度Ｔ２，・・・Ｔｎ時のアンプ４の出力オフセットをＡＤＣ５によりＡＤ変換し、そのＡＤＣ変換値を各ｏ２，・・・ｏｎ、をＣＰＵに記憶する。
オフセットｏと温度Ｔの近似式
Ｔ＝ａｔ・ｏ＋ｂｔ
ａｔ、ｂｔは比例係数と定数
をＣＰＵで演算し、その値を記憶する。
【００２８】
上記、直線歪みＳ（−Ｍ）、Ｓ（−Ｍ＋１）、・・・、Ｓ（Ｍ＋１）の近似式のＴをａｔ・ｏ＋ｂｔと置き換えて
Ｓ（−Ｍ）＝ａ（−Ｍ）・（ａｔ・ｏ＋ｂｔ）＋ｂ（−Ｍ）
Ｓ（−Ｍ＋１）＝ａ（−Ｍ＋１）・（ａｔ・ｏ＋ｂｔ）＋ｂ（−Ｍ＋１）
・・・
・・・
Ｓ（Ｍ−１）＝ａ（Ｍ−１）・（ａｔ・ｏ＋ｂｔ）＋ｂ（Ｍ−１）
上記の式をＣＰＵに記憶する。
【００２９】
動作時のアンプ４出力のオフセットをＡＤＣ５でＡＤ変換し、そのオフセット値ｏｗをＣＰＵに記憶する。
【００３０】
前述の直線歪みの近似式のｏにオフセット値ｏｗを代入し、
Ｓ（−Ｍ）＝ａ（−Ｍ）・（ａｔ・ｏｗ＋ｂｔ）＋ｂ（−Ｍ）
Ｓ（−Ｍ＋１）＝ａ（−Ｍ＋１）・（ａｔ・ｏｗ＋ｂｔ）＋ｂ（−Ｍ＋１）
・・・
・・・
Ｓ（Ｍ−１）＝ａ（Ｍ−１）・（ａｔ・ｏｗ＋ｂｔ）＋ｂ（Ｍ−１）
をＣＰＵで演算する。オフセットｏｗによる直線歪みＳ（−Ｍ）、Ｓ（−Ｍ＋１）、・・・、Ｓ（Ｍ−１）の各値をＣＰＵに記憶する。このＣＰＵに記憶されたＳ（−Ｍ）、Ｓ（−Ｍ＋１）、・・・、Ｓ（Ｍ−１）をＲＡＭ１０３に転送する。
【００３１】
切替器１０２の切替コマンドにより、ＲＡＭ１０３のアドレスとＣＰＵから入力するように制御し、ＲＡＭ１０３のアドレス−Ｍ時に直線歪みデータＳ（−Ｍ）をアドレス−Ｍ＋１時に直線歪みデータＳ（−Ｍ＋１）、・・・、最後にアドレスＭ−１時に直線歪みデータＳ（Ｍ−１）をＲＡＭ１０３に格納する。
【００３２】
切替器１０２の切替コマンドにより、ＲＡＭ１０３のアドレスを入力Ｄｉにする。入力データＤｉをアドレスとして直線歪みを記憶するＲＡＭ１０３の内容Ｓ（Ｄｉ）を読み出し、入力データＤｉとＳ（Ｄｉ）を減算器１０１により
Ｄｓ＝Ｄｉ−Ｓ（Ｄｉ）
を演算し、ＤＡＣ３、アンプ４に直線歪み補正と温度補正を同時に行う。
【００３３】
図７はＤＡＣ３、アンプ４の温度補正の他の実施例（その２）で、直線歪み入力データの上位ビットと下位ビットに分けて温度補正をする実施例である。
【００３４】
上位ビットの直線歪み補正の校正
Ｇビットの上位Ｒ入力データＤｉの上位Ｇ（ＭＳＢ）〜Ｒ＋１ビット（Ｄｉｕ）を最小−Ｍ（＝−２＾（Ｇ−１））から２＾Ｒステップで
Ｄｉｕ＝−Ｍ、−Ｍ＋２＾Ｒ、−Ｍ＋２・２＾Ｒ、・・・、
−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ
まで変化させ、アンプ４出力ＰｕをＡＤＣ５によりＡＤ変換し、ＣＰＵでＡＤ変換値Ｐｕ（Ｄｉ）を記憶する。ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｕ      Ａ４：比例係数
の関係があるとして、上位ビット入力データＤｉｕの時、実際のアンプ出力Ｐｕと理想アンプ出力Ｐｄとの差（直線歪みＳ１）Ｐｕ（Ｄｉｕ）−Ａ４・Ｄｉｕを
Ｓ１（Ｄｉｕ）＝（Ｐｕ（Ｄｉｕ）−Ａ４・Ｄｉｕ）／Ａ４
比例係数Ａ４で除算し、ＤＡＣ３の入力データに換算し、ＣＰＵに記憶する。
【００３５】
下位ビットの直線歪み補正の校正
ＧビットからＲビットをゼロにし、入力データＤｉのＲビット〜ＬＳＢを０から２＾（Ｒ−１）まで１ステップで
Ｄｉｌ＝０，１，２、・・・・、２＾（Ｒ−１）
まで変化させ、アンプ４出力ＰｌをＡＤＣ５によりＡＤ変換し、ＣＰＵでＡＤ変換値Ｐｌ（Ｄｉｌ）を記憶する。ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｌ      Ａ４：比例係数
の関係があるとして、下位ビット入力データＤｉｌの時、実際のアンプ出力Ｐｌと理想アンプ出力Ｐｄとの差（直線歪みＳ２）Ｐｌ（Ｄｉｌ）−Ａ４・Ｄｉｌを
Ｓ２（Ｄｉｌ）＝（Ｐｌ（Ｄｉｌ）−Ａ４・Ｄｉｌ）／Ａ４
比例係数Ａ４で除算し、ＤＡＣ３の入力データに換算し、ＣＰＵに記憶する。
【００３６】
上位、下位ビットの直線歪みＳ１，Ｓ２のメモリへの書き込み
Ｕ切替器２０１をＣＰＵ側にし、測定した順序でメモリＵＲＡＭ２０３に上記Ｓ１（Ｄｉ）を格納する。同様にＬ切替器２０２をＣＰＵ側にし、測定した順序でメモリＬＲＡＭ２０４に上記Ｓ２（Ｄｉ）を格納する。
【００３７】
切替コマンドでＵ切替器２０３、Ｌ切替器２０４を入力Ｄｉ側にし、入力データＤｉの上位ＧからＲビットをメモリＵＲＡＭ２０３のアドレスに、Ｒ−１から１ビットをメモリＬＲＡＭ２０４のアドレスにする。
【００３８】
メモリＵＲＡＭ２０３出力Ｓ１とメモリＬＲＡＭ２０４出力Ｓ２は加算器２０５により加算され、減算器２０６により
Ｄｓ＝Ｄｉ−（Ｓ１（Ｄｉｕ）＋Ｓ２（Ｄｉｌ））
を演算し、ＤｓをＤＡＣ３に入力することによりＤＡＣアンプの直線歪みを補正する。
【００３９】
ＤＡＣアンプの温度補正の校正
ＤＡＣ３，アンプ４の温度をＴ１にし、上記、上位ビットの直線歪み補正
Ｓ１１（Ｄｉｕ）
と下位ビットの直線歪み補正
Ｓ２１（Ｄｉｌ）
をＣＰＵに記憶し、ＤＡＣ３、アンプ４の温度をＴ２にし、上位ビットの直線歪み補正
Ｓ１２（Ｄｉｕ）
と下位ビットの直線歪み補正
Ｓ２２（Ｄｉｌ）
をＣＰＵに記憶する。
【００４０】
同様に、ＤＡＣ３，アンプ４の温度をＴ３・・・Ｔｎと変化させ、
Ｓ１３（Ｄｉｕ）、
Ｓ２３（Ｄｉｌ）、
・・・、
Ｓ１ｎ（Ｄｉｕ）、
Ｓ２ｎ（Ｄｉｌ）
を得る。
【００４１】
上位ビットの直線歪み補正データの温度補正演算
入力データＤｉｕ＝−Ｍ時の各温度Ｔ１、Ｔ２・・・Ｔｎの直線歪みＳ１１（−Ｍ）、Ｓ１２（−Ｍ）、・・・、Ｓ１ｎ（−Ｍ）から温度Ｔの１次近似式
Ｓ１（−Ｍ）＝ａ１０・Ｔ＋ｂ１０
入力データＤｉｕ＝−Ｍ＋２＾Ｒの直線歪みＳ１１（−Ｍ＋２＾Ｒ）、Ｓ１２（−Ｍ＋２＾Ｒ）、・・・Ｓ１ｎ（−Ｍ＋２＾Ｒ）から温度Ｔの１次近似式
Ｓ１（−Ｍ＋２＾Ｒ）＝ａ１１・Ｔ＋ｂ１１
・・・
・・・
入力データＤｉｕ＝−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）の直線歪みＳ１（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）、Ｓ２（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）、・・・Ｓｎ（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）から温度Ｔの１次近似式
Ｓ１（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）＝ａ１Ｎｕ・Ｔ＋ｂ１Ｎｕ
Ｎｕ＝（２＾（Ｒ−１）−１）・２＾Ｒ
Ｎｕ＋１個の比例係数ａ１０〜ａ１Ｎｕと定数ｂ１０〜ｂ１ＮｕをＣＰＵに記憶する。
【００４２】
各温度Ｔ１，Ｔ２，・・・Ｔｎ時のアンプ４出力オフセットをＡＤＣ５によりＡＤＣ変換値の各ｏ１，ｏ２，・・・ｏｎをＣＰＵに記憶し、
オフセットｏと温度Ｔの１次近似式
Ｔ＝Ａｔ・ｏ＋Ｂｔ
の比例定数Ａｔと定数ＢｔをＣＰＵにて演算する。
上記で演算した直線歪み
Ｓ１（−Ｍ）＝ａ１０・Ｔ＋ｂ１０
Ｓ１（−Ｍ＋２＾Ｒ）＝ａ１１・Ｔ＋ｂ１１
・・・
・・・
Ｓ１（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）＝ａ１Ｎｕ・Ｔ＋ｂ１Ｎｕ
の温度Ｔを
Ｓ１（−Ｍ）＝ａ１０・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１０
Ｓ１（−Ｍ＋２＾Ｒ）＝ａ１１・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１１
・・・
・・・
Ｓ１（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）＝ａ１Ｎｕ・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１Ｎｕ
オフセットｏに置き換える。
【００４３】
下位ビットの直線歪み補正データの温度補正演算
入力データＤｉｌ＝０時の各温度Ｔ１、Ｔ２・・・Ｔｎの直線歪みＳ２１（０）、Ｓ２２（０）、・・・、Ｓ２ｎ（０）から温度Ｔの１次近似式
Ｓ２（０）＝ａ２０・Ｔ＋ｂ２０
入力データＤｉｕ＝１の直線歪みＳ２１（１）、Ｓ２２（１）、・・・Ｓ２ｎ
（１）から温度Ｔの１次近似式
Ｓ１（１）＝ａ２１・Ｔ＋ｂ２１
・・・
・・・
入力データＤｉｌ＝２＾Ｒの直線歪みＳ２１（２＾Ｒ）、Ｓ２２（２＾Ｒ）、・・・Ｓ２ｎ（２＾Ｒ）から温度Ｔの１次近似式
Ｓ２（２＾Ｒ）＝ａ２Ｎｌ・Ｔ＋ｂ２Ｎｌ
Ｎｌ＝２＾Ｒ
Ｎｌ＋１個の比例係数ａ２０〜ａ２Ｎｌと定数ｂ２０〜ｂ２ＮｌをＣＰＵに記憶する。
【００４４】
各温度Ｔ１，Ｔ２，・・・Ｔｎ時のアンプ４出力オフセットをＡＤＣ５によりＡＤＣ変換値の各ｏ１，ｏ２，・・・ｏｎをＣＰＵに記憶する。
上記で演算した直線歪み
Ｓ２（０）＝ａ２０・Ｔ＋ｂ２０
Ｓ２（１）＝ａ２１・Ｔ＋ｂ２１
・・・
・・・
Ｓ２（２＾Ｒ）＝ａ２Ｎｌ・Ｔ＋ｂ２Ｎｌ
の温度Ｔをオフセットｏの１次近似式
Ｔ＝Ａｔ・ｏ＋Ｂｔ
に置き換えて、
Ｓ２（０）＝ａ２０・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２０
Ｓ２（１）＝ａ２１・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２１
・・・
・・・
Ｓ２（２＾Ｒ）＝ａ２Ｎｌ・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２Ｎｌ
オフセットｏの関数とする。
【００４５】
ＤＡＣ３、アンプ４の使用時でのオフセットの測定
Ｕ切替器２０１、Ｌ切替器２０２の切替コマンドにより、メモリＵＲＡＭ２０３、メモリＬＲＡＭ２０４のアドレスをＣＰＵから入力するように制御し、メモリＵＲＡＭ２０３、ＬＲＡＭ２０４入力からゼロ入力し、メモリＵＲＡＭ２０３、ＬＲＡＭ２０４に格納されている内容をゼロにする。入力データＤｉをゼロにし、（メモリＵＲＡＭ２０３、ＬＲＡＭ２０４の内容がゼロであるので減算器２０６の出力は入力データと同じゼロ）ＤＡＣ３の入力はゼロが入力される。ＡＤＣ５をＡＤ変換コマンドによりアンプ４出力（オフセット）ｏを測定し、ＡＤＣ５の出力に保持し、かつＣＰＵに送る。
【００４６】
ＣＰＵは上記オフセットｏにより上位ビットの直線歪み
Ｓ１（−Ｍ）＝ａ１０・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１０
Ｓ１（−Ｍ＋２＾Ｒ）＝ａ１１・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１１
・・・
・・・
Ｓ１（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）＝ａ１Ｎｕ・（Ａｔ・ｏ＋Ｂｔ）＋ｂ１Ｎｕ
のオフセットｏを代入して、Ｓ１（−Ｍ）、・・・、Ｓ（−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ）を演算する。
同様に下位ビットの直線歪みＳ２
Ｓ２（０）＝ａ２０・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２０
Ｓ２（１）＝ａ２１・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２１
・・・
・・・
Ｓ２（２＾Ｒ）＝ａ２Ｎｌ・（Ａｔ・ｏ＋Ｂｔ）＋ｂ２Ｎｌ
にオフセットｏを代入し、Ｓ２（０）・・・、Ｓ２（２＾Ｒ）を演算する。
【００４７】
Ｕ切替器２０１をＣＰＵ側にし、測定した順序でメモリＵＲＡＭ２０３に上記Ｓ１（Ｄｉｌ）を格納する。同様にＬ切替器２０２をＣＰＵ側にし、上記演算した順序でメモリＬＲＡＭ２０４に上記Ｓ２（Ｄｉｌ）を格納する。
【００４８】
切替コマンドでＵ切替器２０３、Ｕ切替器２０４を入力Ｄｉ側にし、入力データＤｉの上位ビット（ＭＳＢ）からＲビットをメモリＵＲＡＭ２０３のアドレスに、ＭＳＢからＲビットをメモリＬＲＡＭ２０４のアドレスにする。
【００４９】
メモリＵＲＡＭ２０３出力Ｓ１とメモリＬＲＡＭ２０４出力Ｓ２は加算器２０５により加算され、減算器２０６により
Ｄｓ＝Ｄｉ−（Ｓ１（Ｄｉｕ）＋Ｓ２（Ｄｉｌ））
を演算し、ＤｓをＤＡＣ３に入力することによりＤＡＣ３、アンプ４の直線歪み補正データを温度補正し、温度が変化しても精度が劣化しないアンプ。
【００５０】
図８はその他の実施例（直線歪みの温度補正その３）で、直線歪み入力データの上位ビットと下位ビットに分けてＤＡＣ５によりアンプの動作温度で直接直線歪みを校正する実施例である。
【００５１】
校正開始により制御器３０３は切替コマンドにより切替器３０１の入力を内部データＤｉｎｔ側にする。
【００５２】
制御器３０３は初め、上位ビットの直線歪み補正の校正を行うために、
ＧビットのＤｉｎｔデータの上位Ｇ（ＭＳＢ）〜Ｒ＋１ビット（Ｄｉｕ）を最小−Ｍ（＝−２＾（Ｇ−１））から２＾Ｒステップで
Ｄｉｕ＝−Ｍ、−Ｍ＋２＾Ｒ、−Ｍ＋２・２＾Ｒ、・・・、
−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ
まで変化させ、アンプ４出力Ｐｕを抵抗Ｒ１と抵抗Ｒ２で分割したＰｂをＡＤＣ５によりＡＤ変換する。
抵抗分割比は
Ｒ２／（Ｒ１＋Ｒ２）＝１／Ａ４
に選び、
Ｐｕ／Ａ４＝Ｐｂ
なる関係がある。
【００５３】
ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｕ      Ａ４：比例係数
の関係を想定し、
上位ビット入力データＤｉｕの時、実際のアンプ出力Ｐｕと理想アンプ出力Ｐｄとの差（直線歪みＳ１）Ｐｕ（Ｄｉｕ）−Ａ４・Ｄｉｕを
0004010712.tif 000002
を減算器３０２により演算し、ＤＡＣ３の入力データに換算された直線歪みＳ１（Ｄｉｕ）をＤｉｕ／（２＾Ｒ）をアドレスとし、ライトイネーブルＷｕによりＵＲＡＭ２０３に書き込み、記憶する。
【００５４】
次に制御器３０３は下位ビットの直線歪み補正を校正する。ＤｉｎｔデータのＧビットからＲビットをゼロにし、入力データＤｉのＲビット〜ＬＳＢを０から２＾（Ｒ−１）まで１ステップで
Ｄｉｌ＝０，１，２、・・・・、２＾（Ｒ−１）
まで変化させ、アンプ４出力Ｐｌを抵抗Ｒ１と抵抗Ｒ２で分割したＰｃをＡＤＣ５によりＡＤ変換する。
抵抗分割比は
Ｒ２／（Ｒ１＋Ｒ２）＝１／Ａ４
に選び、
Ｐｕ／Ａ４＝Ｐｃ
なる関係がある。
【００５５】
ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｌ      Ａ４：比例係数
の関係を想定し、下位ビット入力データＤｉｌの時、実際のアンプ出力Ｐｌと理想アンプ出力Ｐｄとの差（直線歪みＳ２）Ｐｌ（Ｄｉｌ）−Ａ４・Ｄｉｌを
0004010712.tif 000003
を減算器３０３により演算し、ＤＡＣ３の入力データに換算した直線歪みＳ２（Ｄｉｌ）を入力、Ｄｉｌをアドレスとし、ライトイネーブルＷｌによりＬＲＡＭ２０４に書き込み、記憶する。
【００５６】
以上で校正が終了した。
【００５７】
次に切り替えコマンドにより切替器３０１を外部入力データＤｅｘｔにする。入力データＤｉの上位ビット（ＭＳＢ）からＲビットをメモリＵＲＡＭ２０３のアドレスに、ＭＳＢからＲビットをメモリＬＲＡＭ２０４のアドレスになっているので、メモリＵＲＡＭ２０３出力Ｓ１とメモリＬＲＡＭ２０４出力Ｓ２は加算器２０５により加算され、減算器２０６により
Ｄｓ＝Ｄｉ−（Ｓ１（Ｄｉｕ）＋Ｓ２（Ｄｉｌ））
を演算し、ＤｓをＤＡＣ３に入力することによりＤＡＣ３、アンプ４の直線歪み補正データを温度補正し、温度が変化しても精度が劣化しないアンプ。
【００５８】
なお、ＡＤ変換を複数回行い、平均することによりＡＤＣ５の精度を向上できる（図９）。また、上記校正をＳ１、Ｓ２の内容を使い、複数回行うことにより、直線歪みの補正の精度を向上できる（図９）。
【００５９】
図９はその他の実施例（直線歪みの温度補正その４）で、直線歪み入力データの上位ビットと下位ビットに分けてＤＡＣ５によりアンプの動作温度で直接直線歪みを校正する実施例で、第８図の実施例の高精度化したものである。
【００６０】
校正開始により制御器３０３はＡＤ校正コマンドによりＡＤＣ５を校正し、切替コマンドにより切替器３０１の入力を内部データＤｉｎｔ側にする。
【００６１】
制御器３０３は初め、上位ビットの直線歪み補正の校正を行うために、
ＧビットのＤｉｎｔデータの上位Ｇ（ＭＳＢ）〜Ｒ＋１ビット（Ｄｉｕ）を最小−Ｍ（＝−２＾（Ｇ−１））から２＾Ｒステップで
Ｄｉｕ＝−Ｍ、−Ｍ＋２＾Ｒ、−Ｍ＋２・２＾Ｒ、・・・、
−Ｍ＋（２＾（Ｒ−１）−１）・２＾Ｒ
まで変化させ、各ステップでアンプ４出力Ｐｕを抵抗Ｒ１と抵抗Ｒ２で分割したＰｂをＡＤＣ５により複数回ＡＤ変換し、平均演算器３０４によりＡＤ変換値を平均し、ノイズによる影響を除去する。
【００６２】
抵抗分割比は
Ｒ２／（Ｒ１＋Ｒ２）＝１／Ａ４
に選び、
Ｐｕ／Ａ４＝Ｐｂ
なる関係がある。
【００６３】
ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｕ      Ａ４：比例係数
の関係を想定し、
上位ビット入力データＤｉｕの時、実際のアンプ出力Ｐｕと理想アンプ出力Ｐｄとの差（直線歪みＳ１）Ｐｕ（Ｄｉｕ）−Ａ４・Ｄｉｕを
0004010712.tif 000004
を減算器３０２により演算し、加算器２０３の出力Ｓ１＋Ｓ２を加算器３０５により加算し、直線歪みＳ１（Ｄｉｕ）をＤｉｕ／（２＾Ｒ）をアドレスとし、ライトイネーブルＷｕによりＵＲＡＭ２０３に書き込み、記憶する。この繰り返しをゼロ検出器３０６がゼロを検出するまで行う。
【００６４】
次に制御器３０３は下位ビットの直線歪み補正を校正する。ＤｉｎｔデータのＧビットからＲビットをゼロにし、入力データＤｉのＲビット〜ＬＳＢを０から２＾（Ｒ−１）まで１ステップで
Ｄｉｌ＝０，１，２、・・・・、２＾（Ｒ−１）
まで変化させ、各ステップでアンプ４出力Ｐｌを抵抗Ｒ１と抵抗Ｒ２で分割したＰｃをＡＤＣ５により複数回ＡＤ変換し、平均演算器３０４によりＡＤ変換値を平均し、ノイズによる影響を除去する。
抵抗分割比は
Ｒ２／（Ｒ１＋Ｒ２）＝１／Ａ４
に選び、
Ｐｕ／Ａ４＝Ｐｃ
なる関係がある。
【００６５】
ＤＡＣ３とアンプ４の入力データＤｉとアンプの理想的（設計値）出力Ｐｄとに
Ｐｄ＝Ａ４・Ｄｉｌ      Ａ４：比例係数
の関係を想定し、下位ビット入力データＤｉｌの時、実際のアンプ出力Ｐｌと理想アンプ出力Ｐｄとの差（直線歪みＳ２）Ｐｌ（Ｄｉｌ）−Ａ４・Ｄｉｌを
0004010712.tif 000005
を減算器３０３により演算し、加算器２０３の出力Ｓ１＋Ｓ２を加算器３０５により加算し、直線歪みＳ１（Ｄｉｌ）をＤｉｌをアドレスとし、ライトイネーブルＷｌによりＬＲＡＭ２０４に書き込み、記憶する。この繰り返しをゼロ検出器３０６がゼロを検出するまで行う。
【００６６】
以上で校正が終了した。
【００６７】
次に切り替えコマンドにより切替器３０１を外部入力データＤｅｘｔにする。入力データＤｉの上位ビット（ＭＳＢ）からＲビットをメモリＵＲＡＭ２０３のアドレスに、ＭＳＢからＲビットをメモリＬＲＡＭ２０４のアドレスになっているので、メモリＵＲＡＭ２０３出力Ｓ１とメモリＬＲＡＭ２０４出力Ｓ２は加算器２０５により加算され、減算器２０６により
Ｄｓ＝Ｄｉ−（Ｓ１（Ｄｉｕ）＋Ｓ２（Ｄｉｌ））
を演算し、ＤｓをＤＡＣ３に入力することによりＤＡＣ３、アンプ４の直線歪み補正データを温度補正し、温度が変化しても精度が劣化しないアンプ。
【００６８】
【発明の効果】
電子ビーム描画装置の偏向アンプもオシロスコープの偏向アンプも原理的に差はないが、電子ビーム描画装置の偏向アンプの精度はオシロスコープの偏向アンプ精度の数千倍を必要とし、一方オシロスコープの偏向アンプは電子ビームの偏向アンプの数百倍の周波数特性をもたせることが出来る。オシロスコープの偏向アンプの周波数特性が良好なのは偏向アンプ出力からの負帰還ループが無いからである。アンプ出力からの負帰還ループがないとアンプ動作温度によりアンプのゲイン、オフセットが変化し、高精度を維持できない。
【００６９】
オシロスコープの偏向アンプを高精度化すれば電子ビーム描画装置の高精度、高速な偏向アンプとなる。そのためには偏向アンプの動作温度を常にモニターし、温度補正を行う。直接偏向アンプの温度を測定する代わりに偏向アンプのオフセット電圧を測定し、このオフセットから偏向アンプのゲイン、オフセットの温度補正を行うことにより電子ビーム描画装置の偏向アンプを高精度で、かつオシロスコープなみの周波数をもたせ、電子ビーム描画装置のスループットを向上させることが出来る。
【図面の簡単な説明】
【図１】ＤＡＣアンプの温度補正を示すブロック図。
【図２】ＤＡＣアンプの温度補正示すブロック図。
【図３】温度係数関数発生器の詳細図。
【図４】ＲＡＭを使った温度係数関数発生器。
【図５】ＤＡＣ３アンプ４を使ったＡＤＣ。
【図６】その他の実施例（直線歪みの温度補正その１）。
【図７】その他の実施例（直線歪みの温度補正その２）。
【図８】その他の実施例（直線歪みの温度補正その３）。
【図９】その他の実施例（直線歪みの温度補正その４）。
【符号の説明】
１：温度係数演算器１
３：ＤＡＣ
４：アンプ
６：温度係数関数発生器
７：校正制御器
８：ＴＥＭＰ（温度検出器）
【図１】
0004010712.tif 000006
【図２】
0004010712.tif 000007
【図３】
0004010712.tif 000008
【図４】
0004010712.tif 000009
【図５】
0004010712.tif 000010
【図６】
0004010712.tif 000011
【図７】
0004010712.tif 000012
【図８】
0004010712.tif 000013
【図９】
0004010712.tif 000014