(57)【要約】【課題】  容易にデジタル乗算できる新たなデジタル乗算法およびその計算器を提供する。【解決手段】  本発明は、上記目的を達成するために、本発明では、新規なデジタル乗算法を提供する。具体的には、下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積を求めるデジタル乗算法であって、        Ａ＝ａ×（ｂ１×２n-1＋ｂ２×２n-2＋・・・＋ｂｎ×２0）    式（１）  （１）乗数と、上記数Ａにおいて、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数と、の積である既知乗算解と、（２）デジタル値が全て１であるｎビットのデジタル数の倍数である数Ａと、の差ｍを係数とし、前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）1＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算して、（３）乗数と、ｎビットのデジタル数の倍数である被乗数との積を求めるデジタル乗算法である。である。【選択図】  図１
2005301806.tif 000002
【特許請求の範囲】
【請求項１】
下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積を求めるデジタル乗算法であって、
【数１】
2005301806.tif 000016
（１）乗数と、上記数Ａにおいて、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数と、の積である既知乗算解と、（２）デジタル値が全て１であるｎビットのデジタル数の倍数である数Ａと、
の差ｍを係数とし、
前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）2＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算して、
乗数と、ｎビットのデジタル数の倍数である被乗数との積を求めるデジタル乗算法。
【請求項２】
下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積を求める計算機であって、
【数２】
2005301806.tif 000017
乗数と、上記数Ａが、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数との積である既知乗算解とデジタル値が全て１であるｎビットのデジタル数の倍数である数Ａとの差ｍを求める差分回路と、
前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）1＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算する加算回路と、
を有する計算機。
【請求項３】
複数のアナログ／デジタル変換ステージと、
デジタル回路と、
前記各変換ステージに対応するデジタル補正回路とから構成されるパイプライン型アナログ／デジタル変換器であって、
前記デジタル補正回路は、
ステージゲインを補正するゲイン補正回路と、
理論上の最大デジタル出力値から、実際のデジタル出力値を減算する減算回路と、
前記減算回路により得られた係数ｍを右シフトしていきながら、各アナログ／デジタル変換ステージからのデジタル出力に加減算を行う、加算回路とを備え、
ステージゲイン補正後のデジタル値をフルスケールで出力することを特徴とするパイプライン型アナログ／デジタル変換器。
【請求項４】
請求項３に記載のパイプライン型アナログ／デジタル変換器であって、
前記ステージゲインを補正するゲイン補正回路を用いてゲイン補正をする際に、同時に理論上の最大デジタル出力値から、実際のデジタル出力値を減算し、
前記減算回路を省略することを特徴とする請求項３に記載のパイプライン型アナログ／デジタル変換器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル乗算法、これを用いた計算機、およびデジタル乗算法を用いたパイプラインアナログ／デジタル変換器に関する。
【背景技術】
【０００２】
デジタル乗算器の乗算方法としては、乗数と被乗数との部分積を作り、それを１桁ずつ、ずらしながら加算するシリアル方法や、全加算器乗数のビット数だけ接続し、全加算器を縦列接続して、乗算結果を得るパラレル方法などが知られている。パラレル方式の乗算器の中で、例えば、ダッダの理論を用いた乗算器が知られている。この乗算器では、乗数と被乗数とのビット同士の積を求める。次に、縦方向の項において１となる項の個数を加算し、バイナリ変換する。そして、縦方向の項数が２個になるまで、このバイナリ変換を繰り返す。
【０００３】
しかし、この方法では、入力値のビット長が増えるに従い、バイナリ変換を行う回数が増え、演算時間が長くなるという問題がある。このため、ダッダの理論を改変したデジタル計算機が提案されている（例えば、特許文献１参照）。
【０００４】
この文献に記載されている計算機では、乗数と被乗数とのビット同士の積を求め、縦方向の項において１となる項の個数を加算し、１回バイナリ変換する。このバイナリ変換後に最も項数が多い項の最上位ビット（ＢＴ）が１の場合には、入力数の各桁のビット数が全て１であるとして、入力数の乗算値が決定される。ＢＴが０の場合には、通常の加算を行うこととする。
【０００５】
また、パイプラインアナログ／デジタル変換器では、ステージにステージゲインを２よりも小さくして、誤差を補正している。しかし、ステージゲインが２より小さいため、フルスケールの出力が得られない。このため、ゲイン補正回路を用いて、デジタル回路から出力されたデジタル値を、乗算回路で、補正係数Ｓを乗算して、フルスケールの出力を行うものが知られている（例えば、特許文献２参照）。
【０００６】
【特許文献１】特開平５−２５７６４８号公報（特許請求の範囲、段落００１５〜段落００２２）
【特許文献２】米国特許公報第５，４９９，０２７号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１に記載の乗算器では、特定バイナリ変換最上位ビットの項ＢＴが１の場合にのみ、予め定めておいた定数が乗算値として出力される。一方、特定バイナリ変換最上位ビットの項ＢＴが０である場合には、加算器により、通常の計算が行われる。この文献に記載の乗算器では、乗数と被乗数のビットが全て１の場合にのみ、計算を簡易にすることができる。しかし、全ての乗算が容易に行えるというわけではない。
【０００８】
すなわち、本発明は、上記問題に鑑みなされたものであり、その目的は、乗数と被乗数のビットが全て１でない場合であっても容易にデジタル乗算できる新たなデジタル乗算法およびその計算器を提供することにある。
【０００９】
また、パイプラインアナログ／デジタル変換器などで、フルスケールでのデジタル出力を得るためには、上記したように、変換器内に乗算回路を設けなければならない。乗算回路を設けると、変換速度が遅くなり、回路面積を必要とし、消費電力が増加するという問題がある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明では、新規なデジタル乗算法を提供する。具体的には、下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積を求めるデジタル乗算法であって、
【数３】
2005301806.tif 000003
（１）乗数と、上記数Ａにおいて、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数と、の積である既知乗算解と、（２）デジタル値が全て１であるｎビットのデジタル数の倍数である数Ａと、の差ｍを係数とし、前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）1＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算して、（３）乗数と、ｎビットのデジタル数の倍数である被乗数との積を求めるデジタル乗算法である。
【００１１】
この構成によると、乗数のビットが全て１でない場合であっても、既知乗算解がわかれば、容易にデジタル乗算ができる。また、乗算回路を設けなくても、デジタル乗算をすることができる。
【００１２】
上記デジタル乗算を行う計算機は、下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積を求める計算機であって、
【数４】
2005301806.tif 000004
（１）乗数と、上記数Ａが、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数との積である既知乗算解を求める乗算回路と、（２）前記既知乗算解とデジタル値が全て１であるｎビットのデジタル数の倍数である数Ａとの差ｍを求める差分回路と、（３）前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）1＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算する加算回路と、を有すればよい。
【００１３】
この構成によれば、乗算回路を用いなくても、乗数と被乗数の乗算解を得ることができる。この結果、変換速度は低下せず、乗算回路を設けないので、計算機がコンパクトとなり、消費電力を低減できる。
【００１４】
また、上記デジタル補正法をパイプライン型アナログ／デジタル変換器に用いることができる。すなわち、複数のアナログ／デジタル変換ステージと、デジタル回路と、前記各変換ステージに対応するデジタル補正回路とから構成されるパイプライン型アナログ／デジタル変換器であって、前記デジタル補正回路は、ステージゲインを補正するゲイン補正回路と、理論上の最大デジタル出力値から、実際のデジタル出力値を減算する減算回路と、前記減算回路により得られた係数を右シフトしていきながら、各アナログ／デジタル変換ステージからのデジタル出力に加減算を行う、加算回路とを備え、ステージゲイン補正後のデジタル値をフルスケールで出力することができる。
【００１５】
この構成よると、パイプラインアナログ／デジタル変換器のステージのステージゲインが２よりも小さい場合であっても、デジタル値をフルスケールで出力することができる。
【００１６】
上記パイプラインアナログ／デジタル変換器は、前記ステージゲインを補正するゲイン補正回路を用いてゲイン補正をする際に、同時に理論上の最大デジタル出力値から、実際のデジタル出力値を減算し、前記減算回路を省略することができる。すなわち、ゲイン補正回路を用いて、ゲインを補正する際に、同時に理論上の最大デジタル出力値から、実際のデジタル出力値を減算する。したがって、この値を用いれば、減算回路を別途設けなくても、係数を得ることができる。この結果、装置設計を簡単にできる。
【発明の効果】
【００１７】
本発明のデジタル乗算法を用いれば、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数と、乗数との積である既知乗算解がわかる場合に、乗数を被乗数に乗算せずに、乗算を行うことができる。また、本発明のデジタル乗算法を用いた計算機は、乗数を被乗数に乗算せずに、乗算を行うことができるので、乗算回路を省略することができる。
【００１８】
このような計算機をパイプライン型アナログ／デジタル変換器に用いることで、変換速度が速く、消費電力を削減したパイプライン型アナログ／デジタル変換器を提供することができる。
【発明を実施するための最良の形態】
【００１９】
以下に、本発明を実施するための最良の形態を、図面を参照しながら説明する。なお、本発明は、これらによって限定されるものではない。
【００２０】
［デジタル乗算法］
本発明は、下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積は、乗数と、上記数Ａが、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数との積である既知乗算解が判る場合に、簡易に算出できることを見出した。
【数５】
2005301806.tif 000005
【００２１】
以下に、３ビットのデジタル数の倍数である被乗数を例として用いて、本発明のデジタル計算法を説明する。
【００２２】
図１は、３ビットの各数と被乗数Ａb1b2b3との関係と、３ビットの各数と、被乗数Ａb1b2b3＝ｐ×（ｂ１×２2＋ｂ２×２1＋ｂ３×１））と乗数Ｂとの積Ｃ（＝Ａb1b2b3×Ｂ）の関係を、Ａ000を含めてグラフに表したものである。この図からわかるように、３ビットの各数に対するＡb1b2b3＝ｐ×（ｂ１×２2＋ｂ２×２1＋ｂ３×１））、およびＣ＝Ａb1b2b3×Ｂは、いずれも原点を通る一次関数の関係にある。本発明のデジタル乗算法では、この関係を用いて乗算をせずにＣを求める。
【００２３】
被乗数Ａb1b2b3（＝ｐ×（ｂ１×２2＋ｂ２×２1＋ｂ３×１））が、Ａ101＝２×（１×２2＋０×２1＋１×１）＝１０であり、乗数Ｂが１．５である場合に、被乗数Ａb1b2b3に乗数Ｂを乗算せずに、求めるのは、以下のように行う。
【００２４】
まず、乗数と、上記数Ａが、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数との積である既知乗算解がわかっていることを前提とする。
【数６】
2005301806.tif 000006
【００２５】
ここで、Ａ111の高さとＡ111×１．５（＝Ｃ）との高さは、図１の関係にある。ここで、Ｃ−Ａ111の差をとる。この差の値７を係数ｍとする。
【００２６】
上記したように、３ビットの各数に対するＡb1b2b3＝ｐ×（ｂ１×２2＋ｂ２×２1＋ｂ３×１））、およびＣ＝Ａb1b2b3×Ｂは、いずれも原点を通る一次関数の関係にある。このことから、各数における乗算解Ｃと被乗数Ａb1b2b3との差をｘとすると、このｘは、Ａb1b2b3に対して比例関係にあると考えられる。すなわち、下記式が成立する。
【数７】
2005301806.tif 000007
【００２７】
この式を展開して、ｘを求めると以下のようになる。
【数８】
2005301806.tif 000008
【００２８】
したがって、得られたｘを用いると、下記式のように、乗算解Ｃが求められる。
【数９】
2005301806.tif 000009
【００２９】
ここで、上記式を用いて、Ｃ＝Ａ101（＝２×５＝１０）＋ｘを求める。
【数１０】
2005301806.tif 000010
【００３０】
このように、本発明のデジタル乗算法を用いれば、係数を乗算しなくても、乗算値が得られることがわかる。
【００３１】
なお、上記計算結果からわかるように、本発明の本発明のデジタル乗算法から得られる値は、実際の乗算値とは異なる。これは、本発明のデジタル乗算法では、「誤差“１”」を含んでいることによる。本発明では、この「誤差“１”」を含めることにより、（数式８）に示すように２のべき乗を作ることができるため
、乗算をせずにデジタル乗算ができることを見出したものである。また、この誤差は、被乗数のビット数が増えると、誤差が必要精度以内に収まるので、実際の乗算値と同じ結果になる。
【００３２】
同様に、下記数式（１）で表されるｎビットのデジタル数の倍数である数Ａを被乗数とし、被乗数と乗数との積は、以下のように求めることができる。
【数１１】
2005301806.tif 000011
【００３３】
まず、デジタル値が全て１であるｎビットのデジタル数（２n−１）の倍数である数Ａである被乗数と、乗数との積である既知乗算解を求める。上記で説明したように、本発明のデジタル乗算法では、ｎビットの各数に対する被乗数Ａとの関係、およびＣ＝Ａ×Ｂは、いずれも原点を通る一次関数の関係にあることを利用する。したがって、既知乗算解が判っていることが、本発明のデジタル乗算法を行うために最低限要求される。
【００３４】
なお、図１からみれば、被乗数Ａも、乗算解Ｃも、原点を通る一次関数なので、デジタル値が全て１であるｎビットのデジタル数でない値を既知乗算解として、デジタル乗算を行うことは可能である。しかし、最も正確な乗算を行うためには、デジタル値が全て１であるｎビットのデジタル数（２n−１）の倍数を被乗数乗算解とするのが好ましい。
【００３５】
次に、前記既知乗算解Ｃとデジタル値が全て１であるｎビットのデジタル数の倍数である数Ａ（＝ａ×（２n−１））との差ｍ（＝Ｃ−ａ×（２n−１））を求める。
【００３６】
上記ｍを係数にして、以下の式により、被乗数と乗数との乗算解Ｃを求めることができる。
【数１２】
2005301806.tif 000012
【００３７】
本発明の計算機では、上記したように、乗数を被乗数に掛けずに、乗算値を求める。このため、乗数と被乗数とを掛けるための乗算回路を省略することができる。このような本発明の計算機としては、乗数と、上記数Ａが、デジタル値が全て１であるｎビットのデジタル数の倍数である被乗数との積である既知乗算解とデジタル値が全て１であるｎビットのデジタル数の倍数である数Ａとの差ｍを求める差分回路と、前記数Ａと、この数Ａの各ビットと前記係数ｍに（１／２）k（ｋ＝１、・・・、ｎ）を掛けた値（ｍ×（１／２）k）との積（ｂ１×ｍ×（１／２）1＋ｂ２×ｍ×（１／２）1＋・・・＋ｂｎ×ｍ×（１／２）n）と、を加算する加算回路と、を有すればよい。
【００３８】
［パイプラインアナログ／デジタル変換器］
次に、本発明のデジタル乗算法を用いた計算機を備えるパイプラインアナログ／デジタル変換器について、説明する。本発明のパイプラインアナログ／デジタル変換器は、変換器のステージゲインが２より小さい場合であっても、簡単な回路を用いて、フルスケールのデジタル出力を容易に行うことができる。
【００３９】
図２は、本発明のパイプラインアナログ／デジタル変換器の一例を示す構成ブロック図である。パイプラインアナログ／デジタル変換器は、複数のパイプラインステージ１０と、デジタル回路２０と、デジタル補正回路４０とで構成される。
【００４０】
各ステージ１０における動作は、従来のパイプラインアナログ／デジタル変換器と同様に行われる。このため各ステージのステージゲインが２より小さいことに起因する直線性誤差も同様に生ずる。
【００４１】
各ステージ１０から出力されたデジタル値は、デジタル回路２０に送られる。デジタル回路２０には、デジタル値を、非直線性誤差などの誤差を訂正する誤差訂正回路、各ステージのデジタル値や各ステージにおけるエラー値を加算する加算回路を備える。また、各ステージからのデジタル出力は、非直線補正後のデジタル値をデジタル補正し、ステージゲインを補正するためのデジタル補正回路４０に送られる。デジタル補正回路で、以下のデジタル補正を行う。
【００４２】
（デジタル補正）
図３は、非直線性誤差補正前と補正後のアナログ入力とデジタル出力との関係を示すグラフである。図３（１）は、非直線性誤差補正前のアナログ入力とデジタル出力との関係を示すグラフであり、図３（２）は、非直線性誤差補正後のアナログ入力とデジタル出力との関係を示すグラフであり、図３（３）は、図２（２）の丸で囲んだ部分を拡大した図である。
【００４３】
図３（１）からわかるように、非直線性誤差の補正前では、最大アナログ電圧Ｖrefが入力されたとき、最大デジタル出力２n−１が得られる。すなわち、全てのビットに亘って、１が得られている。一方、図３（２）からわかるように、非直線性誤差の補正後のデジタル値は、最大デジタル出力２n−１より小さい値になる。これは、パイプラインアナログ／デジタル変換器のステージにステージゲインが２よりも小さいものがあることに起因すると考えられる。
【００４４】
全てのデジタル値を得るためには、実際に得られたデジタル値（図３（２）の実線）を、理想的なデジタル値（図３（２）の破線）に変換する必要がある。従来のデジタル補正法を用いたパイプラインアナログ／デジタル変換器では、乗算回路を用いて、非直線性誤差の補正式に、所定の係数Ｓを掛けることにより、理想的なデジタル値に変換していた。
【００４５】
本発明のデジタル乗算法は、図３（２）の実線で示すような直線関係にあるデジタル補正に用いると、有効である。図３（３）は、図３（２）の実線の丸で、囲った部分の拡大図である。デジタル値が全て１であるｎビットのデジタル数の倍数である数Ａは、実際のデジタル出力値である。また、既知乗算解は、この図における、理論上の最大デジタル出力値（２n−１）に該当する。したがって、係数ｍは、ｍ＝（２n−１）−Ａを行うことで、求められる。このように、デジタル補正を行う場合には、理論上の最大デジタル出力値（２n−１）と実際のデジタル出力値とから、ｍを容易に求めることができる。
【００４６】
なお、このｍは、デジタル補正回路に含まれるゲイン補正回路を用いて、ステージゲインを補正する場合に、同時に求めることができる。したがって、この場合には、減算回路を必要としない。
【００４７】
このｍは、上記したデジタル乗算法を用いると、下記式に近似できる。
【数１４】
2005301806.tif 000013
【００４８】
パイプライン型アナログ／デジタル変換器では、ステージごとに、各ビットにデジタル変換する。したがって、上記式におけるｍ／２、ｍ／２2、・・・、ｍ／２nは、それぞれ各ステージにおけるデジタル補正係数になると考えられる。すなわち、上記式（２）の各ビットに、このデジタル補正値を加算すれば、デジタル補正を行うことができる。具体的には、以下の式になる。
【数１５】
2005301806.tif 000014
【００４９】
ここで、Ｄ（Ｖin）は、本発明のデジタル補正値、ｄ1〜ｄnは各ステージにおけるデジタル値、ｅ1、ｅ2・・・は、各ステージにおける補正係数を示す。また、各ビットにおけるｍ／２、ｍ／２2、・・・、ｍ／２nは、実際の処理では、係数ｍを右シフトしていき、各ビットで加減算を行うことを意味する。
【００５０】
本発明のデジタル補正法を用いると、下式に示すように、直線性補正を行う前のデジタル値の全てのビットが１になったとき、直線性補正後のデジタル値を最大デジタル出力２n−１にすることができる。
【数１６】
2005301806.tif 000015
【００５１】
デジタル補正は、各ビットごとに出力されたデジタル値をデジタル補正回路４０でデジタル補正を行う。その値を次のデジタル補正回路４０に送り、そのデジタル補正回路で補正されたビットのデジタル補正値を順に加算していく。デジタル回路２０からの出力値と、最終のデジタル補正回路から出力された複数のデジタル補正値とを、加算して、式（４）のＤ（Ｖin）を得る。
【００５２】
このように、本発明のパイプラインアナログ／デジタル変換器では、乗算回路を用いなくても、デジタル補正を行うことができる。本発明によれば、変換速度が速く、消費電力を削減したパイプライン型アナログ／デジタル変換器が提供される。
【図面の簡単な説明】
【００５３】
【図１】図１は、３ビットの各数と被乗数Ａb1b2b3との関係と、３ビットの各数と、被乗数Ａb1b2b3＝ｐ×（ｂ１×２2＋ｂ２×２1＋ｂ３×１））と乗数Ｂとの積Ｃ（＝Ａb1b2b3×Ｂ）の関係を、Ａ000を含めてグラフに表したものである。
【図２】図２は、本発明のパイプラインアナログ／デジタル変換器の一例を示す構成ブロック図である。
【図３】図３は、非直線性誤差補正前と補正後のアナログ入力とデジタル出力との関係を示すグラフである。  図３（１）は、非直線性誤差補正前のアナログ入力とデジタル出力との関係を示すグラフであり、図３（２）は、非直線性誤差補正後のアナログ入力とデジタル出力との関係を示すグラフであり、図３（３）は、図２（２）の丸で囲んだ部分を拡大した図である。
【符号の説明】
【００５４】
１０    パイプラインステージ
２０    デジタル回路
３０    乗算器
４０    デジタル補正回路
１１    比較器
１２    Ｄ／Ａ変換器
１３    加算器
１４    増幅器
２０    デジタル回路
３０    乗算器
４０    デジタル補正回路
【図１】
2005301806.tif 000018
【図２】
2005301806.tif 000019
【図３】
2005301806.tif 000020