(57)【特許請求の範囲】
【請求項１】
所定のビット数のデジタル信号をアナログ信号に変換するＤ／Ａ変換器であって、
前記Ｄ／Ａ変換器を構成する複数の構成要素を含み、前記アナログ信号を出力する出力部に所定の順序で接続された複数の構成要素群と、
前記デジタル信号に対応するひとつのアナログ信号を生成するときに、前記ひとつのアナログ信号の生成に用いる前記複数の構成要素群のスタート位置を、予め定められた２つ以上の異なるシフト量を含むシフトパターンを用いて変更するスタート位置変更部と、
を有するＤ／Ａ変換器。
【請求項２】
前記デジタル信号は、ｎ（ｎは２以上の整数）ビットのデジタル信号であり、
前記複数の構成要素群は、
前記ｎビットの上位ｋ（ｋは２≦ｋ≦ｎを満たす整数）ビットに対応する複数の前記構成要素が、２＾ｉ（ｉは１≦ｉ≦ｎ−１を満たす整数）個の前記構成要素群に分割されて構成される請求項１に記載のＤ／Ａ変換器。
【請求項３】
前記２つ以上の異なるシフト量は、奇数のシフト量を含む請求項１に記載のＤ／Ａ変換器。
【請求項４】
前記２つ以上の異なるシフト量は、２＾（ｉ−１）のシフト量を含む請求項２に記載のＤ／Ａ変換器。
【請求項５】
２＾ｎ−１のデータを出力するとき、２＾ｉ個の前記構成要素群を使用する請求項２乃至４のいずれか一項に記載のＤ／Ａ変換器。
【請求項６】
前記Ｄ／Ａ変換器の最小分解能の重みを１とした場合、
前記複数の構成要素群の各々の重みは、２＾（ｎ−ｉ）である請求項２乃至５のいずれか一項に記載のＤ／Ａ変換器。
【請求項７】
前記スタート位置となる構成要素群から前記所定の順序に従って、前記デジタル信号の値に応じた数の前記構成要素を選択する選択部を有する請求項１乃至６のいずれか一項に記載のＤ／Ａ変換器。
【請求項８】
前記複数の構成要素群を、前記スタート位置となる構成要素群から前記所定の順序に従ってバイナリで重みづけし、前記デジタル信号のバイナリの値に対応する前記構成要素を選択する選択部を有する請求項１乃至５のいずれか一項に記載のＤ／Ａ変換器。
【請求項９】
前記スタート位置変更部によってシフトされた複数のスタート位置で得られた前記アナログ信号を平均化して前記ひとつのアナログ信号を生成する請求項１乃至８のいずれか一項に記載のＤ／Ａ変換器。
【請求項１０】
前記スタート位置変更部は、
前記アナログ信号の生成に用いる前記複数の構成要素群のスタート位置を、前記予め定められた２つ以上の異なるシフト量を含むシフトパターンを用いて、前記所定の順序に従って（２＾ｉ）×ｊ（ｊは１以上の整数）回シフトする請求項１乃至９のいずれか一項に記載のＤ／Ａ変換器。
【請求項１１】
請求項１乃至１０のいずれか一項に記載のＤ／Ａ変換器を含むＡ／Ｄ変換器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｄ／Ａ変換器、及びＡ／Ｄ変換器に関する。
【背景技術】
【０００２】
Ｄ／Ａ（Digital to Analog）変換器のＤ／Ａ変換素子のばらつきによる誤差を改善する技術として、ＤＥＭ（Dynamic Element Matching）が知られている。
【０００３】
例えば、デジタル信号に応じた数のスイッチを、スタート位置決定回路で決定されるスイッチから昇順にオン状態とし、デジタル信号の入力毎にスタート位置となるスイッチを順次変更するΔΣ変換方式のＤ／Ａ変換器が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３１９６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された技術のように、オーバーサンプリングの回数が多いΔΣ変換方式のＤ／Ａ変換器では、出力信号を平均化する際の母数が大きいため、ＤＥＭにより、Ｄ／Ａ変換素子のばらつきが平均化されて誤差を小さくすることができる。
【０００６】
一方、オーバーサンプリングの回数が少ないＤ／Ａ変換器では、平均化の母数が小さいため、各Ｄ／Ａ変換素子がスタート位置になる回数の差等により、Ｄ／Ａ変換素子のばらつきが十分に平均化されず、誤差が残り易いという問題がある。
【０００７】
本発明の実施の形態は、上記問題点に鑑みてなされたものであって、オーバーサンプリングの回数を抑制しつつ、ＤＥＭによる誤差を低減させるＤ／Ａ変換器を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施態様によるＤ／Ａ変換器（１０）は、所定のビット数のデジタル信号をアナログ信号に変換するＤ／Ａ変換器（１０）であって、前記Ｄ／Ａ変換器（１０）を構成する複数の構成要素を含み、前記アナログ信号を出力する出力部（１３０）に所定の順序で接続された複数の構成要素群（１１０）と、前記デジタル信号に対応するひとつのアナログ信号を生成するときに、前記ひとつのアナログ信号の生成に用いる前記複数の構成要素群（１１０）のスタート位置を、予め定められた２つ以上の異なるシフト量を含むシフトパターンを用いて変更するスタート位置変更部（１２１）と、を有する。
【０００９】
好ましくは、前記デジタル信号は、ｎ（ｎは２以上の整数）ビットのデジタル信号であり、前記複数の構成要素群（１１０）は、前記ｎビットの上位ｋ（ｋは２≦ｋ≦ｎを満たす整数）ビットに対応する複数の前記構成要素が、２＾ｉ（ｉは１≦ｉ≦ｎ−１を満たす整数）個の前記構成要素群（１１０）に分割されて構成される。
【００１１】
好ましくは、前記２つ以上の異なるシフト量は、奇数のシフト量を含む。
【００１２】
好ましくは、前記２つ以上の異なるシフト量は、２＾（ｉ−１）のシフト量を含む。
【００１３】
好ましくは、前記Ｄ／Ａ変換器（１０）は、２＾ｎ−１のデータを出力するとき、２＾ｉ個の前記構成要素群（１１０）を使用する。
【００１４】
好ましくは、前記Ｄ／Ａ変換器の最小分解能の重みを１とした場合、前記複数の構成要素群（１１０）の各々の重みは、２＾（ｎ−ｉ）である。
【００１５】
好ましくは、前記Ｄ／Ａ変換器（１０）は、前記スタート位置となる構成要素群（１１０）から前記所定の順序に従って、前記デジタル信号の値に応じた数の前記構成要素を選択する選択部（１２２）を有する。
【００１６】
好ましくは、前記Ｄ／Ａ変換器（１０）は、前記複数の構成要素群（１１０）を、前記スタート位置となる構成要素群から前記所定の順序に従ってバイナリで重みづけし、前記デジタル信号のバイナリの値に対応する前記構成要素を選択する選択部（１２２）を有する。
【００１７】
好ましくは、前記Ｄ／Ａ変換器（１０）は、前記スタート位置変更部（１２１）によってシフトされた複数のスタート位置で得られた前記アナログ信号を平均化して前記ひとつのアナログ信号を生成する。
【００１８】
好ましくは、前記スタート位置変更部（１２１）は、前記アナログ信号の生成に用いる前記複数の構成要素群（１１０）のスタート位置を、前記予め定められたシフトパターンを用いて、前記所定の順序に従って（２＾ｉ）×ｊ（ｊは１以上の整数）回シフトする。
【００１９】
また、本発明の一実施態様によるＡ／Ｄ変換器（２４００）は、前記Ｄ／Ａ変換器（１０）を有する。
【発明の効果】
【００２０】
本発明によれば、オーバーサンプリングの回数を抑制しつつ、ＤＥＭによる誤差を低減させるＤ／Ａ変換器を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】一実施形態に係るＤ／Ａ変換器の構成例を示す図である。
【図２】スタート位置の変更について説明するための図である。
【図３】シフト量の変化と構成要素群の順序との関係を示す図（１）である。
【図４】シフト量の変化と構成要素群の順序との関係を示す図（２）である。
【図５】一実施形態に係るＤ／Ａ変換器のＩＮＬ特性の例を示す図である。
【図６】一実施形態に係るＤ／Ａ変換器の出力誤差について説明するための図である。
【図７】シフト量が１の場合における出力誤差の変化の例を示す図である。
【図８】シフト量が２の場合における出力誤差の変化の例を示す図である。
【図９】シフト量が３の場合における出力誤差の変化の例を示す図である。
【図１０】シフト量が４の場合における出力誤差の変化の例を示す図である。
【図１１】シフト量が５〜７の場合における出力誤差の変化の例を示す図である。
【図１２】一実施形態に係るフィルタの一例を示す図である。
【図１３】一実施形態に係るスタート位置のシフト量の例を示す図である。
【図１４】応用例１に係るＤ／Ａ変換器の構成例を示す図である。
【図１５】応用例１に係るＤ／Ａ変換器の一例のブロック図である。
【図１６】応用例１に係るＤ／Ａ変換器の回路構成の一例を示す図である。
【図１７】応用例１に係るデコーダ、カウンタ、及びマルチプレクサの出力信号の例を示す図である。
【図１８】応用例１に係る構成要素群の入力信号、及び出力信号の例を示す図である。
【図１９】応用例１に係るＤ／Ａ変換器の動作イメージを示す図である。
【図２０】応用例２に係るＤ／Ａ変換器の構成例を示す図である。
【図２１】応用例２に係るＤ／Ａ変換器の回路構成の一例を示す図である。
【図２２】応用例２に係る構成要素群の入力信号の例を示す図である。
【図２３】応用例２に係るＤ／Ａ変換器の動作イメージを示す図である。
【図２４】応用例３に係るＡ／Ｄ変換器の構成例を示す図である。
【図２５】応用例３に係るＡ／Ｄ変換器の処理の例を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に、本発明の実施の形態について、添付の図面を参照して説明する。
【００２３】
＜Ｄ／Ａ変換器の構成＞
図１は、一実施形態に係るＤ／Ａ変換器の構成例を示す図である。Ｄ／Ａ変換器（Digital to Analog Converter）１０は、入力された所定のビット数のデジタル信号をアナログ信号に変換して出力する装置（又は回路）である。図１において、Ｄ／Ａ変換器１０は、複数の構成要素群１１０−１、１１０−２、・・・と、制御部１２０と、出力部１３０と、を有する。なお、以下の説明の中で、複数の構成要素群１１０−１、１１０−２、・・・のうち、任意の構成要素群を示す場合、「構成要素群１１０」を用いる。また、複数の構成要素群１１０−１、１１０−２、・・・を、それぞれ、ＤＡＣ１、ＤＡＣ２、・・・と呼ぶ場合がある。
【００２４】
複数の構成要素群１１０は、Ｄ／Ａ変換器１０を構成する複数の構成要素（以下、ＤＡＣ構成要素と呼ぶ）を含み、アナログ信号を出力する出力部１３０に所定の順序で接続されている。例えば、複数の構成要素群１１０は、ｎ（ｎは２以上の整数）ビットのＤ／Ａ変換器１０を構成する複数の構成要素（以下、ＤＡＣ構成要素と呼ぶ）を、２＾ｉ（ｉは、１≦ｉ≦ｎ−１を満たす整数）個に分割して構成されている。なお、２＾ｉは、２のｉ乗を示す。
【００２５】
また、複数の構成要素群１１０の各々には、２＾（ｎ−ｉ）個のＤＡＣ構成要素が含まれている。例えば、Ｄ／Ａ変換器１０が８ビットのＤ／Ａ変換器であり、複数の構成要素群１１０の数が２＾３＝８個の場合、複数の構成要素群１１０の各々には、２＾（８−３）＝３２個のＤＡＣ構成要素が含まれる。なお、各ＤＡＣ構成要素には、例えば、図１５に示す構成要素群１１０−１に含まれるような電流源や、抵抗素子等のＤ／Ａ変換素子と、Ｄ／Ａ変換素子を選択するスイッチ等が含まれる。
【００２６】
制御部１２０は、外部から入力されたｎビットのデジタル信号を、複数のＤＡＣ構成要素を用いて、アナログ信号に変換する制御を行う。制御部１２０は、例えば、スタート位置変更部１２１、及び構成要素選択部１２２を有する。
【００２７】
スタート位置変更部１２１は、入力されたデジタル信号に対応するひとつのアナログ信号を生成するときに、ひとつのアナログ信号の生成に用いる構成要素群１１０のスタート位置を、所定のシフトパターンを用いて変更（シフト）する。
【００２８】
好ましくは、所定のシフトパターンは、２つ以上の異なるシフト量を含む。
【００２９】
また、スタート位置変更部１２１は、ひとつのアナログ信号の生成に用いる構成要素群１１０のスタート位置を、所定のシフトパターンを用いて、複数の構成要素群１１０の数である（２＾ｉ）回シフトする。
【００３０】
或いは、スタート位置変更部１２１は、ひとつのアナログ信号の生成に用いる構成要素群１１０のスタート位置を、所定のシフトパターンを用いて、複数の構成要素群１１０の数を整数倍した（２＾ｉ）×ｊ（ｊは１以上の整数）回シフトするものであっても良い。
【００３１】
好ましくは、スタート位置変更部１２１は、入力されたデジタル信号に対応するひとつのアナログ信号を生成するときに、各構成要素群１１０が、同じ回数（例えば１回）スタート位置となるように、スタート位置をシフトする。なお、具体的なスタート位置のシフト方法については後述する。
【００３２】
構成要素選択部１２２は、前述したスタート位置となる構成要素群１１０から、例えば、温度計コード（サーモメータコード）を用いて、入力されたデジタル信号に対応する数のＤＡＣ構成要素を選択する（例えば、出力部１３０に接続する）。
【００３３】
（スタート位置の変更について）
図２は、スタート位置の変更について説明するための図である。ここでは、Ｄ／Ａ変換器１０が、８ビットのＤ／Ａ変換器であり、複数の構成要素群１１０の数が８個である場合の例について説明する。
【００３４】
図２（ａ）の例では、スタート位置変更部１２１により、スタート位置が変更される前の初期状態を示している。図２（ａ）では、構成要素群１１０−１がスタート位置となっており、構成要素群１１０−１には、８ビットのＤ／Ａ変換器１０を構成する２５６個のＤＡＣ構成要素のうち、下位の１〜３２までの指定範囲に対応するＤＡＣ構成要素が含まれている。
【００３５】
同様に、構成要素群１１０−２〜１１０−８には、それぞれ、図２（ａ）に示す指定範囲に対応するＤＡＣ構成要素が含まれている。例えば、構成要素群１１０−２には、３３〜６４までの指定範囲に対応するＤＡＣ構成要素が含まれている。
【００３６】
構成要素選択部１２２は、８ビットのデジタル信号が入力されると、スタート位置となる構成要素群１１０−１のＤＡＣ構成要素「１」から、デジタル信号の値に対応する数のＤＡＣ構成要素を選択する。例えば、入力されたデジタル信号の値が「１２８」である場合、構成要素選択部１２２は、指定範囲が１〜１２８までのＤＡＣ構成要素を選択し、例えば、出力部１３０に接続する。
【００３７】
これにより、各構成要素群１１０は、入力されたデジタル信号の値（以下、入力値と呼ぶ）が自己の指定範囲より小さい場合、内部の全てのＤＡＣ構成要素が「０」（以下、Ａｌｌ「０」と呼ぶ）を出力する。また、各構成要素群１１０は、入力値が自己の指定範囲に含まれる場合、入力値に対応する数のＤＡＣ構成要素を用いて出力信号を出力する。さらに、各構成要素群１１０は、入力値が自己の指定範囲より大きい場合、内部のＤＡＣ構成要素の全てが「１」（以下、Ａｌｌ「１」と呼ぶ）を出力する。
【００３８】
図２（ｂ）の例では、スタート位置変更部１２１が、図２（ａ）の状態から、スタート位置を「４」シフトし、構成要素群１１０−５がスタート位置となった場合の例が示されている。図２（ｂ）では、構成要素群１１０−５がスタート位置となっており、構成要素群１１０−５には、１〜３２までの指定範囲に対応するＤＡＣ構成要素が含まれている。同様に、構成要素群１１０−１〜１１０−５、及び構成要素群１１０−６〜１１０−８には、それぞれ、図２（ｂ）に示す指定範囲に対応するＤＡＣ構成要素が含まれている。
【００３９】
図２（ｃ）の例では、スタート位置変更部１２１が、図２（ｂ）の状態から、スタート位置をさらに「５」シフトし、構成要素群１１０−２がスタート位置となった場合の例が示されている。図２（ｃ）では、構成要素群１１０−２がスタート位置となっており、構成要素群１１０−２には、１〜３２までの指定範囲に対応するＤＡＣ構成要素が含まれている。同様に、構成要素群１１０−１及び構成要素群１１０−３〜１１０−８には、それぞれ、図２（ｃ）に示す指定範囲に対応するＤＡＣ構成要素が含まれている。
【００４０】
このように、スタート位置変更部１２１は、構成要素群１１０のスタート位置を、構成要素群１１０−１から、昇順に構成要素群１１０−８まで順次にシフトさせた後、再び、構成要素群１１０−１に戻り、同様のシフトを繰り返す。また、スタート位置変更部１２１によるスタート位置の変更に応じて、各構成要素群１１０の指定範囲が変更される。
【００４１】
ここで、図１に戻り、Ｄ／Ａ変換器１０の構成の説明を続ける。
【００４２】
出力部１３０は、複数の構成要素群１１０に接続され、アナログ信号を出力する回路である。出力部１３０は、例えば、図１５に示す出力回路１５０３のように、接地電位（又は電源電位）に接続された抵抗素子Ｒ等を含む。例えば、Ｄ／Ａ変換器１０のＤＡＣ構成要素が、図１５に示すような電流源である場合、選択するＤＡＣ構成要素の数で、抵抗素子Ｒに流れる電流を制御することにより、出力電圧が決定される。なお、図１の例では、フィルタ２０が外部に設けられているが、フィルタ２０は、出力部１３０に含まれていても良い。
【００４３】
フィルタ２０は、Ｄ／Ａ変換器１０から出力されるアナログ信号を平均化するローパスフィルタである。なお、ローパスフィルタについては後述する。
【００４４】
（シフト量と構成要素群の順序について）
続いて、本実施形態に係る構成要素群１１０のスタート位置のシフト量と構成要素群１１０の順序の例について説明する。
【００４５】
図３、４は、シフト量の変化と構成要素群の順序との関係を示す図である。ここでは、Ｄ／Ａ変換器１０は、入力されたデジタル信号に対応するひとつのアナログ信号を生成するときに、構成要素群１１０のスタート位置を変更して８回アナログ信号を出力するものとして以下の説明を行う。
【００４６】
図３（ａ）は、シフト量を「１」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。なお、図中のＤＡＣ１、ＤＡＣ２、ＤＡＣ３、・・・は、それぞれ、図１の構成要素群１１０−１、１１０−２、１１０−３、・・・に対応している。また、図中の括弧内の数字は、構成要素群１１０の順序を示している。例えば、（１）は、順序が１番目の構成要素群１１０、すなわち、スタート位置となる構成要素群１１０を示しており、（２）は、順序が２番目の構成要素群であることを示している。
【００４７】
図３（ａ）の破線内（構成要素群の順序（１））を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ２、ＤＡＣ３、ＤＡＣ４、ＤＡＣ５、ＤＡＣ６、ＤＡＣ７、ＤＡＣ８」と毎回１ずつシフトされ、全ての構成要素群１１０が１回ずつスタート位置となっていることが判る。また、構成要素群の順序（２）〜（８）を構成要素群の順序（１）の破線部と同様に参照すると、ＤＡＣ１〜ＤＡＣ８が1回ずつ選択されていることが判る。構成要素群の順序（１）で記したスタート位置だけでなく、構成要素群の順序（２）〜（８）も均等に選択される。すなわち、全ての構成要素群１１０が均等に使用されるので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号とすることにより、８個の構成要素群１１０毎の誤差が相殺される。
【００４８】
図３（ｂ）の例では、シフト量を「２」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図３（ｂ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ３、ＤＡＣ５、ＤＡＣ７、ＤＡＣ１、ＤＡＣ３、ＤＡＣ５、ＤＡＣ７」と毎回２ずつシフトされている。これにより、構成要素群１１０−１、１１０−３、１１０−５、１１０−７が２回ずつスタート位置となり、構成要素群１１０−２、１１０−４、１１０−６は１回もスタート位置となっていない。この場合、全ての構成要素群１１０が均等に使用されないので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号としても、８個の構成要素群１１０毎の誤差が相殺されず、誤差が残る。
【００４９】
図３（ｃ）の例では、シフト量を「３」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図３（ｃ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ４、ＤＡＣ７、ＤＡＣ２、ＤＡＣ５、ＤＡＣ８、ＤＡＣ３、ＤＡＣ６」と毎回３ずつシフトされ、全ての構成要素群１１０が１回ずつスタート位置となっている。また、構成要素群の順序（２）〜（８）を構成要素群の順序（１）の破線部と同様に参照すると、ＤＡＣ１〜ＤＡＣ８が1回ずつ選択されていることが判る。構成要素群の順序（１）で記したスタート位置だけでなく、構成要素群の順序（２）〜（８）も均等に選択される。すなわち、全ての構成要素群１１０が均等に使用されるので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号とすることにより、８個の構成要素群１１０毎の誤差が相殺される。
【００５０】
図３（ｄ）の例では、シフト量を「４」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図３（ｄ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ５、ＤＡＣ１、ＤＡＣ５、ＤＡＣ１、ＤＡＣ５、ＤＡＣ１、ＤＡＣ５」と毎回４ずつシフトされている。これにより、構成要素群１１０−２、１１０−３、１１０−４、１００―６、１００−７は１回もスタート位置となっていない。この場合、全ての構成要素群１１０が均等に使用されないので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号としても、８個の構成要素群１１０毎の誤差が相殺されず、誤差が残る。
【００５１】
図４（ａ）の例では、シフト量を「５」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図４（ａ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ６、ＤＡＣ３、ＤＡＣ８、ＤＡＣ５、ＤＡＣ２、ＤＡＣ７、ＤＡＣ４」と毎回５ずつシフトされ、全ての構成要素群１１０が１回ずつスタート位置となっている。また、構成要素群の順序（２）〜（８）を構成要素群の順序（１）の破線部と同様に参照すると、ＤＡＣ１〜ＤＡＣ８が1回ずつ選択されていることが判る。構成要素群の順序（１）で記したスタート位置だけでなく、構成要素群の順序（２）〜（８）も均等に選択される。すなわち、全ての構成要素群１１０が均等に使用されるので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号とすることにより、８個の構成要素群１１０毎の誤差が相殺される。
【００５２】
図４（ｂ）の例では、シフト量を「６」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図４（ｂ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ７、ＤＡＣ５、ＤＡＣ３、ＤＡＣ１、ＤＡＣ７、ＤＡＣ５、ＤＡＣ３」と毎回６ずつシフトされている。これにより、構成要素群１１０−２、１１０−４、１１０−６は１回もスタート位置となっていない。この場合、全ての構成要素群１１０が均等に使用されないので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号としても、８個の構成要素群１１０毎の誤差が相殺されず、誤差が残る。
【００５３】
図４（ｃ）の例では、シフト量を「７」固定とし、アナログ信号を８回出力する場合の各構成要素群１１０の順序を示している。図４（ｃ）の構成要素群の順序（１）の破線内を参照すると、構成要素群１１０のスタート位置は、「ＤＡＣ１、ＤＡＣ８、ＤＡＣ７、ＤＡＣ６、ＤＡＣ５、ＤＡＣ４、ＤＡＣ３、ＤＡＣ２」と毎回７ずつシフトされ、全ての構成要素群１１０が１回ずつスタート位置となっている。また、構成要素群の順序（２）〜（８）を構成要素群の順序（１）の破線部と同様に参照すると、ＤＡＣ１〜ＤＡＣ８が1回ずつ選択されていることが判る。構成要素群の順序（１）で記したスタート位置だけでなく、構成要素群の順序（２）〜（８）も均等に選択される。すなわち、全ての構成要素群１１０が均等に使用されるので、Ｄ／Ａ変換器１０から出力される８回のアナログ信号を平均化してひとつのアナログ信号とすることにより、８個の構成要素群１１０毎の誤差が相殺される。
【００５４】
このように、複数の構成要素群１１０の数が偶数であり、シフト量が偶数のみの場合、スタート位置として選択されない構成要素群１１０が発生することが判る。従って、複数の構成要素群１１０の数が偶数の場合、スタート位置変更部１２１による複数のシフト量には、奇数のシフト量が含まれることが望ましい。
【００５５】
（シフト量と出力誤差の周波数について）
一般的にＤ／Ａ変換器１０の非直線性誤差は、フルスケールの１／２で最も誤差が大きくなる可能性が高い。なお、フルスケール（以下、ＦＳと呼ぶ）とは、Ｄ／Ａ変換器１０が出力可能な最大値であり、８ビットのＤ／Ａ変換器１０では、（２＾８）−１＝２５５がＦＳとなる。
【００５６】
図５は、一実施形態に係るＤ／Ａ変換器のＩＮＬ特性の例を示す図である。ＩＮＬ（Integral Non-Linearity）は、Ｄ／Ａ変換器１０の精度や誤差に関する指標であり、積分性非直線性誤差とも呼ばれる。図５の例では、乱数により出力を求めた８ビットのＤ／Ａ変換器１０のＩＮＬ特性の例が示されている。
【００５７】
図５において、グラフ１〜１０は、乱数により算出した１０種類のＩＮＬ特性を示している。また、＋σ、−σのグラフは、各コードにおけるＩＮＬの標準偏差を示している。図５に示されるように、入力データの値を大きくして行くと誤差が次第に大きくなり、ＦＳ／２を超えると、再び誤差が小さくなる。
【００５８】
図６は、一実施形態に係るＤ／Ａ変換器の出力誤差について説明するための図である。
【００５９】
図６（ａ）は、Ｄ／Ａ変換器１０の複数の構成要素群１１０と、Ｄ／Ａ変換器１０の出力信号の値（以下、ＤＡＣ出力と呼ぶ）との関係を示している。
【００６０】
図６（ａ）、（ｂ）の横軸は、Ｄ／Ａ変換器１０の出力コードを示しており、横軸の「１」は、図３、４に示す順序が１番目の構成要素群（１）で出力可能な出力コードの最大値（例えば、３２）を示す。横軸の「２」は、図３、４に示す順序が１番目の構成要素群（１）、及び２番目の構成要素群（２）で出力可能な最大値（例えば、６４）を示す。横軸の「３」は、図３、４に示す順序が１〜３番目までの構成要素群（１）〜（３）で出力可能な最大値（例えば、９６）を示す。横軸の「４」は、図３、４に示す順序が１〜４番目までの構成要素群（１）〜（４）で出力可能な最大値（例えば、１２８）を示す。なお、図６（ａ）、（ｂ）の例では、横軸の「４」は、誤差が最も大きくなると考えられるＦＳ／２に対応している。
【００６１】
また、図６（ａ）、（ｂ）の横軸の「５」は、図３、４に示す順序が１〜５番目までの構成要素群（１）〜（５）で出力可能な最大値（例えば、１６０）を示す。横軸の「６」は、図３、４に示す順序が１〜６番目までの構成要素群（１）〜（６）で出力可能な最大値（例えば、１９２）を示す。横軸の「７」は、図３、４に示す順序が１〜７番目までの構成要素群（１）〜（７）で出力可能な最大値（例えば、２２４）を示す。横軸の「８」は８個の構成要素群１１０を用いて出力可能な最大値、すなわち、ＦＳ（例えば、２５５）を示す。
【００６２】
図６（ａ）の［１］は、ＤＡＣ構成要素（構成素子）にばらつきがないときのＤＡＣ出力を示している。一方、図６（ａ）の［２］は、ＤＡＣ構成要素にばらつきがある場合のＤＡＣ出力の一例を示している。
【００６３】
図６（ｂ）は、図６（ａ）の［１］と［２］との差、すなわち、ＤＡＣの出力誤差を示している。図６（ｂ）の例では、横軸が「４」、すなわち、ＦＳ／２において、ＤＡＣの出力誤差が最も大きくなっている。
【００６４】
ここでは、このモデルを用いて、同じ出力値を出力したときの出力電圧の変化（以下、ＡＣ特性と呼ぶ）が良好となるようにシフト量を検討する。
【００６５】
図７は、シフト量が１の場合における出力誤差の変化の例を示す図である。図７（ａ）は、シフト量が１のとき、スタート位置を１回目から８回目まで変更した場合のＤ／Ａ変換器１０の出力誤差の変化を示している。図７（ａ）において、各グラフの横軸の数字「１」〜「８」は、図６の横軸の出力コード「１」〜「８」に対応しており、縦軸はＤ／Ａ変換器１０の出力信号の誤差を示している。
【００６６】
例えば、図７（ａ）の１回目のグラフにおいて、出力コード「４」の出力誤差は、図２（ａ）に示すスタート位置で、構成要素群１１０−１〜１１０−４を用いて、ＦＳ／２のアナログ信号を出力した場合の出力誤差を示している。
【００６７】
また、図７（ａ）の５回目のグラフは、１回目のグラフからシフト量１で４回スタート位置をシフトさせた状態、すなわち、図２（ｂ）に示すスタート位置における出力誤差を示している。従って、例えば、図７（ａ）の５回目のグラフにおいて、出力コード「４」の出力誤差は、構成要素群１１０−５〜１１０−８を用いて、ＦＳ／２のアナログ信号を出力した場合の出力誤差を示している。
【００６８】
図７（ａ）に示すように、Ｄ／Ａ変換器１０は、同じ値を出力しても、出力される値には、ばらつきがあり、そのばらつき（出力誤差）が最も大きくなるのが、出力コード「４」、すなわち、ＦＳ／２の値を出力しているときになる。
【００６９】
図７（ｂ）は、図７（ａ）の出力コード「４」、すなわち、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。
【００７０】
ここで、Ｄ／Ａ変換器１０が、１つの入力値に対する１つのアナログ信号を出力する周波数をｆｄａｃとすると、出力誤差が最も大きい出力コードが「４」における出力誤差の周波数は、参考値として、およそ次の式で求められる。
【００７１】
（周波数）＝ｆｄａｃ／（（１周期のシフト回数）／（シフト量））
図７（ｂ）の例では、１周期のシフト回数は８、シフト量は１なので、出力誤差の周波数は、ｆｄａｃ／（８／１）＝ｆｄａｃ／８となる。
【００７２】
図８は、シフト量が２の場合における出力誤差の変化の例を示す図である。図８（ａ）は、シフト量が２のとき、スタート位置を１回目から８回目まで変更した場合のＤ／Ａ変換器１０の出力誤差の変化を示している。図８（ａ）の１回目のグラフは、図７（ａ）の１回目のグラフと同じである。また、例えば、図８（ａ）の２回目のグラフは、１回目のグラフのスタート位置である構成要素群１１０−１から、スタート位置を２シフトさせて、スタート位置を構成要素群１１０−３とした場合の出力誤差の変化を示している。
【００７３】
図８（ｂ）は、図８（ａ）の出力コード「４」、すなわち、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図８（ｂ）の例では、１周期のシフト回数は８、シフト量は２なので、出力誤差の周波数は、ｆｄａｃ／（８／２）＝ｆｄａｃ／４となる。
【００７４】
図９は、シフト量が３の場合における出力誤差の変化の例を示す図である。図９（ａ）は、シフト量が３のとき、スタート位置を１回目から８回目まで変更した場合のＤ／Ａ変換器１０の出力誤差の変化を示している。図９（ａ）の１回目のグラフは、図７（ａ）の１回目のグラフと同じである。また、例えば、図９（ａ）の２回目のグラフは、１回目のグラフのスタート位置である構成要素群１１０−１から、スタート位置を３シフトさせて、スタート位置を構成要素群１１０−４とした場合の出力誤差の変化を示している。
【００７５】
図９（ｂ）は、図９（ａ）の横軸の「４」、すなわち、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図９（ｂ）の例では、１周期のシフト回数は８、シフト量は３なので、出力誤差の周波数は、ｆｄａｃ／（８／３）＝ｆｄａｃ／（８／３）となる。
【００７６】
図１０は、シフト量が４の場合における出力誤差の変化の例を示す図である。図１０（ａ）は、シフト量が４のとき、スタート位置を１回目から８回目まで変更した場合のＤ／Ａ変換器１０の出力誤差の変化を示している。図１０（ａ）の１回目のグラフは、図７（ａ）の１回目のグラフと同じである。また、例えば、図１０（ａ）の２回目のグラフは、１回目のグラフのスタート位置である構成要素群１１０−１から、スタート位置を４シフトさせて、スタート位置を構成要素群１１０−５とした場合の出力誤差の変化を示している。
【００７７】
図１０（ｂ）は、図１０（ａ）の横軸の「４」、すなわち、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図１０（ｂ）の例では、１周期のシフト回数は８、シフト量は４なので、出力誤差の周波数は、ｆｄａｃ／（８／４）＝ｆｄａｃ／２となる。
【００７８】
図１１は、シフト量が５〜７の場合における出力変化の例である。構成要素群１１０の数が８の場合、シフト量５〜７は、シフト量−３〜−１に相当し、出力誤差の最も大きいＦＳ／２における出力誤差の周波数は、次の式で求められる。
【００７９】
（周波数）＝ｆｄａｃ／（（１周期のシフト回数）／（（１周期のシフト回数）−シフト量））
図１１（ａ）は、シフト量が５で、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図１１（ａ）の例では、１周期のシフト回数は８、シフト量は５なので、出力誤差の周波数は、ｆｄａｃ／（８／（８−５））＝ｆｄａｃ／（８／３）となる。
【００８０】
図１１（ｂ）は、シフト量が６で、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図１１（ｂ）の例では、１周期のシフト回数は８、シフト量は６なので、出力誤差の周波数は、ｆｄａｃ／（８／（８−６））＝ｆｄａｃ／４となる。
【００８１】
図１１（ｃ）は、シフト量が７で、ＦＳ／２の値を出力しているときの出力誤差の、１回目から８回目までの変化を示している。図１１（ｃ）の例では、１周期のシフト回数は８、シフト量は７なので、出力誤差の周波数は、ｆｄａｃ／（８／（８−７））＝ｆｄａｃ／８となる。
【００８２】
このように、Ｄ／Ａ変換器１０が１つのアナログ信号を出力する期間に、構成要素群１１０のスタート位置を変更するシフト量とシフト回数に応じて、出力誤差を、およそ次の２つの一般式で表せる周波数に変換することができる。
【００８３】
（１周期のシフト量）＞（１周期のシフト回数／２）の場合は、
（周波数）＝ｆｄａｃ／（（１周期のシフト回数）／（１周期のシフト量））となり、
（１周期のシフト量）＜（１周期のシフト回数／２）の場合は、
（周波数）＝ｆｄａｃ／（（１周期のシフト回数）／（１−（１周期のシフト量）））となる。
【００８４】
また、Ｄ／Ａ変換器１０の構成要素群１１０の数が２＾ｉ個の場合、出力信号の誤差が最も大きくなるＦＳ／２における出力誤差の周波数は、シフト回数が２＾（ｉ−１）のときが最も高くなる。例えば、構成要素群１１０の数が２＾３＝８個の場合、シフト回数が２＾（３−１）＝４のとき、出力誤差の周波数が最も高くなる。
【００８５】
（ローパスフィルタについて）
図１２は、一実施形態に係るフィルタの一例を示す図である。図１２（ａ）は、抵抗Ｒと、コンデンサＣによるＲＣのローパスフィルタ（以下、ＬＰＦと呼ぶ）の一例を示している。なお、図１２（ａ）に示すＬＰＦは、図１に示すフィルタ２０の一例である。
【００８６】
図１２（ｂ）は、図１２（ａ）に示すＬＰＦの周波数特性を示している。ＬＰＦは、カットオフ周波数「１／（２πＣＲ）」より高い周波数の信号を、−２０ｄＢ／ｄｅｃで減衰させる。これにより、ＬＰＦに入力される周波数が４倍に増えると、出力レベルが１／４に減衰する。
【００８７】
従って、図７〜１１で説明した出力誤差の周波数をより高い周波数に変換することにより、ＬＰＦによる誤差の低減効果をより大きくすることができる。
【００８８】
（好適なシフト量について）
上記の図３〜１２に示す検討により、Ｄ／Ａ変換器１０の構成要素群１１０の数を２＾ｉとすると、スタート位置変更部１２１によるスタート位置のシフト量は、２＾（ｉ−１）を含むことが望ましいと考えられる。これにより、誤差が最も大きくなるＦＳ／２の出力誤差の周波数をより高くすることができるので、ＬＰＦによる誤差の低減効果をより大きくすることができる。
【００８９】
また、スタート位置変更部１２１によるスタート位置のシフト量は、奇数を含むことが望ましい。これにより、スタート位置変更部１２１は、全ての構成要素群１１０をスタート位置として選択することができるようになる。従って、使用するＤＡＣ構成要素の偏りがなくなり、出力信号を平均化した際の誤差を小さくすることができる。
【００９０】
図１３は、一実施形態に係るスタート位置のシフト量の例を示す図である。図１３（ａ）〜（ｃ）は、上記の条件を満たす好適なシフト量の組み合せ（シフトパターン）の例を示している。
【００９１】
図１３（ａ）は、Ｄ／Ａ変換器１０の構成要素群１１０の数が８、シフト回数が８、シフトパターンが「４−３−４−３−４−３−４−７」の場合の、ＦＳ／２の出力誤差の変化を示している。このシフトパターンは、１回目のシフト量が４、２回目のシフト量が３、３回目のシフト量が４、４回目のシフト量が３、５回目のシフト量が４、６回目のシフト量が３、７回目のシフト量が４、８回目のシフト量が７であることを示している。
【００９２】
このシフトパターン「４−３−４−３−４−３−４−７」は、２＾（ｉ−１）＝２＾（３−１）＝４を含み、奇数３を含むため、上記の条件を満たしている。なお、上記のシフトパターンによりスタート位置となる構成要素群１１０は、「ＤＡＣ１、ＤＡＣ５、ＤＡＣ８、ＤＡＣ４、ＤＡＣ７、ＤＡＣ３、ＤＡＣ６、ＤＡＣ２」の順序で、１回ずつスタート位置として選択される。なお、最後のシフト量７は、スタート位置を（１）に戻すためのシフト量である。
【００９３】
図１３（ｂ）は、シフトパターンが「４−５−４−５−４−５−４−１」の場合の、ＦＳ／２の出力誤差の変化を示している。このシフトパターン「４−５−４−５−４−５−４−１」は、２＾（ｉ−１）＝２＾（３−１）＝４を含み、奇数５を含むため、上記の条件を満たしている。なお、上記のシフト量によりスタート位置となる構成要素群１１０は、「ＤＡＣ１、ＤＡＣ５、ＤＡＣ２、ＤＡＣ６、ＤＡＣ３、ＤＡＣ７、ＤＡＣ４、ＤＡＣ８」の順序で、１回ずつスタート位置として選択される。なお、最後のシフト量１は、スタート位置を（１）に戻すためのシフト量である。
【００９４】
図１３（ｃ）は、シフトパターンが「４−１−４−１−４−１−４−５」の場合の、ＦＳ／２の出力誤差の変化を示している。このシフトパターン「４−１−４−１−４−１−４−５」は、２＾（ｉ−１）＝２＾（３−１）＝４を含み、奇数１を含むため、上記の条件を満たしている。なお、上記のシフトパターンによりスタート位置となる構成要素群１１０は、「（１）、（５）、（６）、（２）、（３）、（７）、（８）、（４）」の順序で、１回ずつスタート位置として選択される。なお、最後のシフト量５は、スタート位置を（１）に戻すためのシフト量である。
【００９５】
図１３（ｄ）は、上記の条件を満たす別のシフト量の組み合せの例を示している。このシフトパターン「３−４―３−４−３−４−３−０」は、２＾（ｉ−１）＝２＾（３−１）＝４を含み、奇数１を含むため、上記の条件を満たしている。しかし、上記のシフトパターンによりスタート位置となる構成要素群１１０は、「ＤＡＣ１、ＤＡＣ４、ＤＡＣ８、ＤＡＣ３、ＤＡＣ７、ＤＡＣ２、ＤＡＣ１」となり、ＤＡＣ１が２回選択され、ＤＡＣ５が使用されない。従ってこのシフトパターンでは、平均化による誤差の低減効果が低下する。従って、例えば、図１３（ａ）〜（ｃ）に示すシフト量の組み合せのように、最初のスタート位置であるＤＡＣ１が２回以上含まれないようにシフトパターンを決定することが望ましい。
【００９６】
また、Ｄ／Ａ変換器１０は、フルスケール「２＾ｎ−１」を出力するとき、「２＾１」個の全ての構成要素群１１０を使用することが望ましい。例えば、Ｄ／Ａ変換器１０に冗長な構成要素群１１０が含まれると、使用されない構成要素群１１０のばらつきにより、平均化による誤差の低減効果が低下するためである。
【００９７】
（まとめ）
本実施形態に係るＤ／Ａ変換器１０は、ｎ（ｎは２以上の整数）ビットのＤ／Ａ変換器１０であって、Ｄ／Ａ変換器１０を構成する複数のＤＡＣ構成要素が、２＾ｉ（ｉは、１≦ｉ≦ｎ−１を満たす整数）個の構成要素群１１０に分割されて構成されている。
【００９８】
また、構成要素群１１０は、２＾（ｎ−ｉ）個のＤＡＣ構成要素を含み、出力部１３０に所定の順序で接続されている。
【００９９】
Ｄ／Ａ変換器１０は、入力されたデジタル信号に対応するひとつのアナログ信号を生成するときに、２＾ｉ個の構成要素群１１０のスタート位置を、予め定められたシフトパターンを用いて、上記の所定の順序に従って変更するスタート位置変更部１２１を有する。
【０１００】
また、Ｄ／Ａ変換器１０は、２＾ｉ個の構成要素群１１０のスタート位置から、上記の所定の順序に従って、入力されたデジタル信号に対応する数のＤＡＣ構成要素を選択する構成要素選択部１２２を有する。
【０１０１】
好ましくは、スタート位置変更部１２１が用いる予め定められたシフトパターンは、奇数のシフト量を含む。これにより、スタート位置として選択されない構成要素群１１０が発生することを低減させることができる。
【０１０２】
好ましくは、スタート位置変更部１２１が用いる予め定められたシフトパターンは、２＾（ｉ−１）のシフト量を含む。これにより、誤差が最も大きくなるＦＳ／２の出力誤差の周波数を高め、ＬＰＦによる誤差の低減効果を高めることができる。
【０１０３】
好ましくは、スタート位置変更部１２１がスタート位置をシフトする所定の回数は、２＾ｉ回である。これにより、２＾ｉ個の構成要素群１１０の各々をスタート位置として１回ずつ選択し、出力信号を平均化することにより、出力信号の誤差を低減させることができる。なお、スタート位置変更部１２１がスタート位置をシフトする所定の回数は、（２＾ｉ）×ｊ（ｊは１以上の整数）であっても良い。
【０１０４】
上記の構成により、本実施形態に係るＤ／Ａ変換器１０は、構成要素群１１０という形でまとめてスタート位置を変更するので、ＤＡＣ構成要素のスタート位置を変更するよりも少ないスタート位置の変更で、Ｄ／Ａ変換器１０の線形性の改善を行うことができる。
【０１０５】
これにより、本実施形態によればオーバーサンプリングの回数を抑制しつつ、ＤＥＭによる誤差を低減させるＤ／Ａ変換器１０を提供することができる。
【０１０６】
また、本実施形態に係るＤ／Ａ変換器１０は、スタート位置の変更パターンが少ないため、回路規模を削減し、より少ない面積で実装することが可能となる。
【０１０７】
［その他の実施形態］
なお、上記のＤ／Ａ変換器１０の構成は一例であり、本発明に係るＤ／Ａ変換器１０は、様々な応用が可能である。続いて、いくつかの応用例について説明する。
【０１０８】
（応用例１）
図１４は、応用例１に係るＤ／Ａ変換器の構成例を示す図である。図１４に示すＤ／Ａ変換器１０は、ｎビットのＤ／Ａ変換器１０であって、上位のｋビット（ｋは、２≦ｋ≦ｎを満たす整数）に対応するＤＡＣ構成要素が、２＾ｉ個の構成要素群１１０に分割されている。制御部１２０、及び出力部１３０の構成は、基本的に、図１に示すＤ／Ａ変換器１０と同様である。
【０１０９】
図１５は、応用例１に係るＤ／Ａ変換器の一例のブロック図である。図１５に示すＤ／Ａ変換器１０は、制御部１２０、下位ビットに対応する構成要素群１４０１、入力端子１５０１、出力端子１５０２、上位ビットに対応する複数の構成要素群１１０−１〜１１０−８、及び出力回路１５０３等を有する。
【０１１０】
図１５に示すＤ／Ａ変換器１０は、１２ビットのＤ／Ａ変換器１０であって、入力端子１５０１に入力される１２ビットのデジタル信号（ＤＡＴＡ［１１：０］）のうち、下位の３ビットの信号（ＤＡＴＡ［２：０］）が構成要素群１４０１に入力される。また、入力端子１５０１に入力される１２ビットのデジタル信号のうち、上位の９ビットの信号（ＤＡＴＡ［１１：３］）が制御部１２０に入力される。
【０１１１】
制御部１２０は、図１４に示すスタート位置変更部１２１と、構成要素選択部１２２とを含む。
【０１１２】
スタート位置変更部１２１は、所定のデジタル値に対応するアナログ信号を生成するときに、アナログ信号の生成に用いる構成要素群１１０のスタート位置を、所定のシフトパターンを用いて、所定の回数だけシフトする。
【０１１３】
構成要素選択部１２２は、前述したスタート位置となる構成要素群１１０から、例えば、温度計コードを用いて、入力された所定のデジタル値に対応する数のＤＡＣ構成要素を選択して、出力回路１５０３に接続する。
【０１１４】
下位ビットに対応する構成要素群１４０１は、下位３ビットに対応するＤＡＣ構成要素を含む。図１５の例では、Ｄ／Ａ変換器１０の最小分解能に対応する電流量がＩ／８である。このとき、下位ビットに対応する構成要素群１４０１には、入力値の１に対応する電流値がＩ／８の電流源、入力値の２に対応する電流値がＩ／４の電流源、及び入力値の３に対応する電流値がＩ／２の電流源が含まれる。
【０１１５】
上位ビットに対応する複数の構成要素群１１０−１〜１１０−８は、それぞれ、電流値がＩの６４個の電流源を含む。
【０１１６】
構成要素群１４０１、及び複数の構成要素群１１０−１〜１１０−８に含まれる各電流源の端子の一つは電源に接続され、他方の端子は、スイッチを介して出力回路１５０３に接続されている。
【０１１７】
出力回路１５０３は、制御部１２０によって選択された複数のＤＡＣ構成要素（電流源）から供給される電流に応じて、出力電圧を生成する。
【０１１８】
このように、ＤＡＣ構成要素の重みが小さい下位ビットと、上位ビットとを分割し、出力信号への誤差の影響が大きい上位ビットのみを、図１〜１３で説明した構成とすることにより、回路規模、コスト等を低減させることができる。
【０１１９】
図１６は、応用例１に係るＤ／Ａ変換器の回路構成の一例を示す図である。図１６において、Ｄ／Ａ変換器１０に入力される１２ビットのデジタル信号（ＤＡＴＡ［１１：０］）のうち、下位の３ビットの信号（ＤＡＴＡ［２：０］）は、下位３ビットに対応するＤＡＣ構成要素を含む構成要素群１４０１に入力される。また、Ｄ／Ａ変換器１０に入力される１２ビットのデジタル信号のうち、上位の９ビットの信号（ＤＡＴＡ［１１：３］）は、例えば、制御部１２０に入力される。
【０１２０】
制御部１２０は、複数の構成要素群１１０−１〜１１０−８に対応して設けられた複数のマルチプレクサ１６１０−１〜１６１０−８、デコーダ１６２０、及びカウンタ１６３０を有する。なお、以下の説明の中で、複数のマルチプレクサ１６１０−１〜１６１０−８のうち、任意のマルチプレクサを示す場合「マルチプレクサ１６１０」を用いる。また、マルチプレクサ１６１０−１〜１６１０−８を、それぞれ、ＭＵＸ１〜ＭＵＸ８と呼ぶ場合がある。
【０１２１】
デコーダ１６２０には、制御部１２０に入力される９ビットの信号（ＤＡＴＡ［１１：３］）のうち、上位の３ビットの信号（ＤＡＴＡ［１１：９］）が入力される。デコーダ１６２０は、入力された３ビットの信号（ＤＡＴＡ［１１：９］）の信号をデコードして、例えば、図１８（ａ）に示す８ビットの出力信号（Ｄ０〜Ｄ７）を出力する。図１８（ａ）の例では、デコーダ１６２０は、入力された３ビットの信号（ＤＡＴＡ［１１：９］）の増加に応じて、温度計コードに従って、デコーダ１６２０の出力信号の値を増加させる構成となっている。
【０１２２】
また、制御部１２０に入力される９ビットの信号（ＤＡＴＡ［１１：３］）のうち、下位の６ビットの信号（ＤＡＴＡ［８：３］）は、図１６に示すように、複数の構成要素群１１０−１〜１１０−８のそれぞれに入力されている。
【０１２３】
カウンタ１６３０は、Ｄ／Ａ変換器１０の出力（更新）に応じて、図１７（ｂ）に示す「カウンタの出力信号」ｓ０、ｓ１、ｓ２を１ずつインクリメントして出力する。カウンタ１６３０は、カウンタ１６３０の出力信号ｓ０、ｓ１、ｓ２の値を、１回目の出力から８回目の出力まで１ずつ増加させ、８回目の出力を終えると、１回目の出力に戻り、同様の動作を繰り返す。
【０１２４】
マルチプレクサ１６１０には、カウンタ１６３０の出力信号ｓ０〜ｓ２と、デコーダ１６２０の出力信号Ｄ０〜Ｄ７とが入力される。マルチプレクサ１６１０は、カウンタ１６３０の出力信号ｓ０〜ｓ２と、デコーダの出力信号Ｄ０〜Ｄ７に応じて、図１７（ｂ）に示すような出力信号ＯＵＴ１、及びＯＵＴ２を出力する。
【０１２５】
マルチプレクサ１６１０の出力信号ＯＵＴ１は、通常のマルチプレクサの出力であり、例えば、図１７（ｂ）において、Ｄ／Ａ変換器１０が、１回目の出力を行う場合、ＭＵＸ１がデコーダ１６２０の出力信号Ｄ０を出力する。また、ＭＵＸ２が出力信号Ｄ１、ＭＵＸ３が出力信号Ｄ２、ＭＵＸ４が出力信号Ｄ３、ＭＵＸ５が出力信号Ｄ４、ＭＵＸ６が出力信号Ｄ５、ＭＵＸ７が出力信号Ｄ６、ＭＵＸ８が出力信号Ｄ７を、それぞれ出力する。
【０１２６】
また、図１７（ｂ）において、Ｄ／Ａ変換器１０が、２回目の出力を行う場合、ＭＵＸ５がデコーダ１６２０の出力信号Ｄ０を出力する。また、ＭＵＸ６が出力信号Ｄ１、ＭＵＸ７が出力信号Ｄ２、ＭＵＸ８が出力信号Ｄ３、ＭＵＸ１が出力信号Ｄ４、ＭＵＸ２が出力信号Ｄ５、ＭＵＸ３が出力信号Ｄ６、ＭＵＸ４が出力信号Ｄ７を、それぞれ出力する。
【０１２７】
このように、マルチプレクサ１６１０−１〜１６１０−８の出力信号ＯＵＴ１、及びＯＵＴ２は、カウンタ１６３０の出力信号によって変更される。これにより、複数の構成要素群１１０−１〜１１０−８のスタート位置が変更される。
【０１２８】
図１７（ｂ）の例では、Ｄ／Ａ変換器１０の１回目の出力から、８回目の出力まで、複数の構成要素群１１０−１〜１１０−８のスタート位置が、所定のシフトパターン「４−３−４−３−４−３−４−７」に従って変更されている。
【０１２９】
また、マルチプレクサ１６１０−１、１６１０−２、・・・の出力信号ＯＵＴ１は、図１６に示すように、複数の構成要素群１１０−１、１１０−２、・・・に、それぞれ「ｅｎａｂｌｅ」信号として入力される。
【０１３０】
マルチプレクサ１６１０の出力信号ＯＵＴ２は、出力信号ＯＵＴ１のＤ０を「０」固定とした信号である。また、マルチプレクサ１６１０−１、１６１０−２、・・・の出力信号ＯＵＴ２は、図１６に示すように１つずつシフトして、複数の構成要素群１１０−８、１１０−１、１１０−２、・・・に、それぞれ、「ａｌｌ＿ｏｎ」信号として入力される。
【０１３１】
以上より、Ｄ／Ａ変換器１０の出力回数毎に、各構成要素群１１０に入力される「ｅｎａｂｌｅ」信号と、「ａｌｌ＿ｏｎ」信号を整理すると、図１８（ａ）に示す表のようになる。
【０１３２】
図１８（ａ）において、各構成要素群１１０は、「ｅｎａｂｌｅ」信号、及び「ａｌｌ＿ｏｎ」信号が共に「０」である場合、図１８（ｂ）に示すように、出力信号として、全ての構成要素が「０」を出力する「ＡＬＬ ０」を出力する。
【０１３３】
また、各構成要素群１１０は、「ｅｎａｂｌｅ」信号が「１」であり、かつ「ａｌｌ＿ｏｎ」信号が「０」である場合、図１８（ｂ）に示すように、出力信号として、入力されたデジタル信号（ＤＡＴＡ［８：３］）に対応する値を出力する。
【０１３４】
さらに、各構成要素群１１０は、「ｅｎａｂｌｅ」信号、及び「ａｌｌ＿ｏｎ」信号が共に「１」である場合、図１８（ｂ）に示すように、出力信号として、全ての構成要素が「１」を出力する「ＡＬＬ １」を出力する。
【０１３５】
上記の構成により、Ｄ／Ａ変換器１０は、ひとつのアナログ信号の生成に用いる複数の構成要素群１１０−１〜１１０−８のスタート位置を、所定のシフトパターン「４−３−４−３−４−３−４−７」に従って変更（シフト）させることができる。
【０１３６】
なお、Ｄ／Ａ変換器１０のスタート位置変更部１２１は、例えば、図１６のカウンタ１６３０等によって実現される。また、Ｄ／Ａ変換器１０の構成要素選択部１２２は、例えば、図１６のデコーダ１６２０、及び複数のマルチプレクサ１６１０−１〜１６１０−８等によって実現される。
【０１３７】
図１９は、応用例１に係るＤ／Ａ変換器の動作例を示す図である。この図は、図１４、１６に示すＤ／Ａ変換器１０による動作のイメージを示している。
【０１３８】
例えば、Ｄ／Ａ変換器１０の入力端子１５０１にデジタル値「Ｉｎｐｕｔ１」が入力されると、Ｄ／Ａ変換器１０は、「Ｉｎｐｕｔ１」に対応するアナログ信号を、例えば、８回出力する。
【０１３９】
このとき、入力信号となるデジタル値「Ｉｎｐｕｔ１」は、例えば、Ｄ／Ａ変換器１０の外部から８回入力が行われるものであっても良いし、例えば、Ｄ／Ａ変換器１０の内部で、１つのデジタル値に対応する出力信号を自動的に８回生成するものであっても良い。
【０１４０】
図１９の例では、「Ｉｎｐｕｔ１」に対応する１回目の出力信号は、ＤＡＣ１（構成要素群１１０−１）がスタート位置となっている。このとき、ＤＡＣ１〜ＤＡＣ３（構成要素群１１０−１〜１１０−３）には、「ｅｎａｂｌｅ」信号、及び「ａｌｌ＿ｏｎ」信号が共に「１」が入力され、ＤＡＣ１〜ＤＡＣ３は、「ＡＬＬ １」を出力する。また、ＤＡＣ４（構成要素群１１０−４）は、「Ｉｎｐｕｔ１」のビット３〜８（ＤＡＴＡ［８：３］）に応じた数のＤＡＣ構成要素を用いて、信号を出力する。さらに、ＤＡＣ５〜ＤＡＣ（構成要素群１１０−５〜１１０−８）には、「ｅｎａｂｌｅ」信号、及び「ａｌｌ＿ｏｎ」信号が共に「０」が入力され、ＤＡＣ５〜ＤＡＣ８は、「ＡＬＬ ０」を出力する。
【０１４１】
「Ｉｎｐｕｔ１」に対応する２回目以降の出力は、所定のシフトパターン「４−３−４−３−４−３−４−７」スタート位置が変更（シフト）され、同様の動作が行われる。
【０１４２】
図１９を参照すると、ＤＡＣ１〜ＤＡＣ８のそれぞれが、１回ずつスタート位置となると共に、ＤＡＣ１〜ＤＡＣ８のそれぞれが、４回ずつ信号を出力していることが判る。
【０１４３】
従って、この８回の出力信号を、例えば、図１２に示すＬＰＦで平均化することにより、各構成要素群１１０の誤差が平均化され、出力信号の誤差が低減される。
【０１４４】
次のデジタル値「Ｉｎｐｕｔ２」が入力されると、Ｄ／Ａ変換器１０は、同様に、ＤＡＣ１〜ＤＡＣ８のスタート位置をシフトさせて、デジタル値「Ｉｎｐｕｔ２」に対応する出力信号を８回出力する。
【０１４５】
（応用例２）
図２０は、応用例２に係るＤ／Ａ変換器の構成例を示す図である。上記の各実施形態では、Ｄ／Ａ変換器１０の構成要素選択部１２２は、温度計コードを用いて、入力されたデジタル値に応じた数のＤＡＣ構成要素を選択するものとして説明を行った。ただし、温度計コードを用いたＤＡＣ構成要素の選択方法は好適な一例であり、構成要素選択部１２２は、温度計コードによらずに、バイナリコードに基づいてＤＡＣ構成要素を選択するものであっても良い。
【０１４６】
この場合、Ｄ／Ａ変換器１０の複数のＤＡＣ構成要素を、例えば、図２０に示すように、０、２＾０、２＾１、２＾２等、バイナリコードに直接対応する形で分割し、構成要素選択部１２２は、入力されたバイナリコードに対応するＤＡＣ構成要素を選択する。
【０１４７】
図２１は、応用例２に係るＤ／Ａ変換器の回路構成の一例を示す図である。図２１において、Ｄ／Ａ変換器１０は、複数のＤＡＣ構成要素２１１０−１〜２１１０−８、複数のマルチプレクサ２１２０−１〜２１２０−８、及びカウンタ２１３０を有する。なお、以下の説明の中で、複数のＤＡＣ構成要素２１１０−１〜２１１０−８のうち、任意のＤＡＣ構成要素を示す場合、「ＤＡＣ構成要素２１１０」を用いる。また、複数のマルチプレクサ２１２０−１〜２１２０−８のうち、任意のマルチプレクサを示す場合、「マルチプレクサ２１２０」を用いる。
【０１４８】
カウンタ２１３０は、図１６で説明したカウンタ１６３０と同様に、Ｄ／Ａ変換器１０の出力（更新）に応じて、出力信号ｓ０、ｓ１、ｓ２の値を、１回目の出力から８回目の出力まで１ずつ増加させて出力する。また、カウンタ２１３０は、８回目の出力を終えると、１回目の出力に戻り、同様の動作を繰り返す。
【０１４９】
複数のマルチプレクサ２１２０−１〜２１２０−８には、それぞれ、３ビットのデジタル信号（ＤＡＴＡ［２：０］）及び「０」が、図２１に示すように入力されている。例えば、信号Ｄ０は、複数のマルチプレクサ２１２０−１〜２１２０−８に１本ずつ、入力位置を１つずつシフトして接続されている。また、信号Ｄ１は、複数のマルチプレクサ２１２０−１〜２１２０−８に２本ずつ、入力位置を１つずつシフトして接続されている。同様に、信号Ｄ２は、複数のマルチプレクサ２１２０−１〜２１２０−８に４本ずつ、入力位置を１つずつシフトして接続されている。
【０１５０】
図２１に示すＤ／Ａ変換器１０において、カウンタ２１３０の出力信号ｓ０〜ｓ３の値に応じて、複数のＤＡＣ構成要素２１１０−１〜２１１０−８には、図２２に示すような信号が入力される。
【０１５１】
例えば、図２２において、Ｄ／Ａ変換器１０が、１回目の出力を行う場合、ＤＡＣ２（ＤＡＣ構成要素２１１０−２）にデータＤ０が入力され、ＤＡＣ３、ＤＡＣ４（ＤＡＣ構成要素２１１０−３、２１１０−４）にデータＤ１が入力される。また、ＤＡＣ５〜８（ＤＡＣ構成要素２１１０−５〜２１１０−８）には、データＤ２が入力される。
【０１５２】
このときの、Ｄ／Ａ変換器１０の各構成要素２１１０のイメージを図２３（ａ）に示す。図２３（ａ）の例では、データＤ０が入力されるＤＡＣ２（ＤＡＣ構成要素２１１０−２）が、複数のＤＡＣ構成要素２１１０−１〜２１１０−８のスタート位置となる。
【０１５３】
また、図２２において、Ｄ／Ａ変換器１０が、３回目の出力を行う場合、ＤＡＣ５にデータＤ０が入力され、ＤＡＣ５、ＤＡＣ６にデータＤ１が入力される。また、ＤＡＣ６、ＤＡＣ８、及びＤＡＣ１、ＤＡＣ２には、データＤ２が入力される。
【０１５４】
このときの、Ｄ／Ａ変換器１０の各構成要素２１１０のイメージを図２３（ｂ）に示す。図２３（ｂ）の例ではデータＤ０が入力されるＤＡＣ５（ＤＡＣ構成要素２１１０−５）が、複数のＤＡＣ構成要素２１１０−１〜２１１０−８のスタート位置となる。
【０１５５】
例えば、このように、Ｄ／Ａ変換器１０は、ＤＡＣ構成要素２１１０を、バイナリコードの各ビットの重み対応する複数の構成要素群に分割することにより、温度計コードによらずに、バイナリコードに従ってＤＡＣ構成要素２１１０を選択することができる。
【０１５６】
また、この場合でも、バイナリコードの各ビットの重み対応する複数の構成要素群のスタート位置、すなわち、データＤ０を出力するＤＡＣ構成要素２１１０の位置を、所定のシフトパターンを用いて、シフトさせることができる。
【０１５７】
なお、データＤ０を出力するＤＡＣ構成要素２１１０は、１つ以上のＤＡＣ構成要素を含む構成要素群の一例である。
【０１５８】
また、図２１、２２の例では、説明を容易にするため、複数の構成要素群のスタート位置を１つずつシフトさせているが、図２１、２２の例においても、予め定められたシフトパターンを用いて、複数の構成要素群のスタート位置を変更することが望ましい。
【０１５９】
（応用例３）
図２４は、応用例２に係るＡ／Ｄ変換器の構成例を示す図である。図２４に示すＡ／Ｄ変換器２４００は、逐次比較型のＡ／Ｄ（Analog to Digital）変換器であり、例えば、図１に示すＤ／Ａ変換器１０、コンパレータ２４１０、及びＳＡＲ（Successive Approximation register：逐次比較型レジスタ）２４２０等を含む。
【０１６０】
図２４において、コンパレータ２４１０は、入力信号（アナログ信号）の電圧と、Ｄ／Ａ変換器１０の出力電圧とを比較する。
【０１６１】
ＳＡＲ２４２０は、コンパレータ２４１０の比較結果に基づいて、Ｄ／Ａ変換器１０の入力データを変更し、入力信号の電圧と、Ｄ／Ａ変換器１０の出力電圧との差がなくなるまで同様の変更を繰り返す。これにより、ＳＡＲ２４２０は、入力信号の電圧に対応するデジタル値を特定することができる。ＳＡＲ２４２０は、この処理を、例えば、上位ビットから順番に１ビットずつ行い、ｎビットのＡ／Ｄ変換器では、ｎ回の処理で出力するデジタル値を決定するＡ／Ｄ変換処理を実行する。
【０１６２】
図２４のフィルタ２４３０は、ＳＡＲ２４２０によるＡ／Ｄ変換処理の結果を平均化するデジタルフィルタである。フィルタ２４３０は、Ａ／Ｄ変換器２４００の外部に設けられていても良いし、Ａ／Ｄ変換器２４００の内部に設けられていても良い。
【０１６３】
図２５は、応用例３に係るＡ／Ｄ変換器の処理の例を示すフローチャートである。図２５の例では、Ａ／Ｄ変換器２４００は、Ａ／Ｄ変換処理を１回実行する毎に、Ｄ／Ａ変換器１０の複数の構成要素群のスタート位置を変更する。
【０１６４】
ステップＳ２５０１において、Ａ／Ｄ変換器２４００は、Ａ／Ｄ変換処理の処理回数をカウントする変数「ｊ」、及びＡ／Ｄ変換処理の結果の合計を格納する変数「ＳＵＭ＿ＡＤＣ」を初期化する。
【０１６５】
ステップＳ２５０２において、例えば、図１６に示すＤ／Ａ変換器１０のカウンタ１６３０が、カウンタの出力信号ｓ０、ｓ１、ｓ２の値として「ｊ」を出力することにより、複数の構成要素群１１０−１〜１１０−８のスタート位置を変更する。
【０１６６】
ステップＳ２５０３において、Ａ／Ｄ変換器２４００のＳＡＲ２４２０は、前述したＡ／Ｄ変換処理を実行する。
【０１６７】
ステップＳ２５０４において、Ａ／Ｄ変換器２４００のＳＡＲ２４２０は、「ＳＵＭ＿ＡＤＣ」に、Ａ／Ｄ変換処理により得られたＡ／Ｄ変換結果を加算する。
【０１６８】
ステップＳ２５０５において、Ａ／Ｄ変換器２４００は、例えば、「ｊ」が「２＾ｉ−１」以上か否かを判断することにより、Ａ／Ｄ変換処理が所定の回数（回）だけ実行されたか否かを判断する。
【０１６９】
Ａ／Ｄ変換処理が所定の回数（２ｉ回）だけ実行されていない場合、Ａ／Ｄ変換器２４００は、「ｊ」に１を加算して、処理をステップＳ１５０２に戻す。
【０１７０】
一方、Ａ／Ｄ変換処理が所定の回数（２ｉ回）だけ実行された場合、Ａ／Ｄ変換器２４００は、処理をステップＳ２５０７に移行させる。
【０１７１】
ステップＳ２５０７に移行すると、Ａ／Ｄ変換器２４００のＳＡＲ２４２０、又はフィルタ２４３０は、「ＳＵＭ＿ＡＤＣ」を、Ａ／Ｄ変換処理の処理回数「２＾ｉ」で除算し、平均化することにより、Ａ／Ｄ変換結果を算出する。
【０１７２】
上記の処理により、Ａ／Ｄ変換器２４００は、Ｄ／Ａ変換器１０を利用して、精度の高いＡ／Ｄ変換結果を得ることができる。
【０１７３】
このように、例えば、Ａ／Ｄ変換器２４００に含まれるＤ／Ａ変換器として、図１に示すＤ／Ａ変換器１０を用いることにより、Ａ／Ｄ変換器２４００の変換精度を向上させることができる。
【符号の説明】
【０１７４】
１０      Ｄ／Ａ変換器
２０      フィルタ（平均化部）
１１０    構成要素群
１２１    スタート位置変更部
１２２    構成要素選択部（選択部）
１３０    出力部
１５０３  出力回路（出力部の一例）
２４００  Ａ／Ｄ変換器
【図１】
0006792137.tif 000002
【図２】
0006792137.tif 000003
【図３】
0006792137.tif 000004
【図４】
0006792137.tif 000005
【図５】
0006792137.tif 000006
【図６】
0006792137.tif 000007
【図７】
0006792137.tif 000008
【図８】
0006792137.tif 000009
【図９】
0006792137.tif 000010
【図１０】
0006792137.tif 000011
【図１１】
0006792137.tif 000012
【図１２】
0006792137.tif 000013
【図１３】
0006792137.tif 000014
【図１４】
0006792137.tif 000015
【図１５】
0006792137.tif 000016
【図１６】
0006792137.tif 000017
【図１７】
0006792137.tif 000018
【図１８】
0006792137.tif 000019
【図１９】
0006792137.tif 000020
【図２０】
0006792137.tif 000021
【図２１】
0006792137.tif 000022
【図２２】
0006792137.tif 000023
【図２３】
0006792137.tif 000024
【図２４】
0006792137.tif 000025
【図２５】
0006792137.tif 000026