以下に、本発明の好適な実施形態を図面に基づいて説明する。
[第1実施形態]
図1に、本実施形態のアナログ除算装置1の概略構成図を示す。本実施形態のアナログ除算装置1は、除数信号V1と被除数信号V2(いずれもアナログ電圧信号)との除算(V2/V1)を行ってその結果を出力するものであり、図1に示す如く、除数信号V1が入力される除数信号入力端子12と、被除数信号V2が入力される被除数信号入力端子13と、駆動回路11と、除数入力スイッチ15と、被除数入力スイッチ16と、除数CDS回路18と、分圧回路20と、被除数切替スイッチ21と、減算器22と、被除数CDS回路23と、被除数増幅回路24と、第2サンプルホールド回路25と、三つの比較器26,27,28と、演算回路30と、第1サンプルホールド回路32と、変換テーブル34と、除算結果(本実施形態ではシリアルデータ)が出力される出力端子36とを備えている。
除数入力スイッチ15は、駆動回路11からの除数入力スイッチ信号に従って除数信号入力端子12に入力された除数信号V1の後段(除数CDS回路18側)への出力をON/OFFするものである。この除数入力スイッチ15は、駆動回路11からの除数入力スイッチ信号によりONされたときは除数信号V1を除数CDS回路18側へ出力する。逆に、除数入力スイッチ信号によりOFFされたときは、除数信号V1は除数CDS回路18側へ出力されないこととなる。
被除数入力スイッチ16も、基本的には上記除数入力スイッチ15と同じように動作する。即ち、駆動回路11からの被除数入力信号に従って動作し、被除数入力スイッチ信号によりONされたときは被除数信号V2を被除数切替スイッチ21側へ出力する。逆に、被除数入力スイッチ信号によりOFFされたときは、被除数信号V2は被除数切替スイッチ21側へ出力されないこととなる。
除数CDS回路18は、信号に含まれるノイズや誤差発生原因となる成分を除去するための周知のCDS(Correlated double sampling;相関二重サンプリング)回路である。本実施形態の除数CDS回路18は、除数信号入力端子12から除数入力スイッチ15を介して入力される除数信号V1から、ノイズや、オフセット成分等の誤差発生要因を除去し、除数CDS信号として出力する。
この除数CDS回路18の基本的動作は、周知のCDS回路と同様であるため、ここでは簡単に説明する。本実施形態では、まず除数入力スイッチ15をOFFして除数信号V1を入力させない状態のときの入力信号が除数CDS回路18にてホールドされる。その後、除数入力スイッチ15をONして除数信号V1を除数CDS回路18に入力させる。そして、この入力された除数信号V1と、除数信号V1が入力されない状態でホールドした入力信号との差分をとることによって、ノイズやオフセット成分等が除去された除数信号V1(除数CDS信号)が生成・出力される。このように、除数CDS回路18により除数信号V1からノイズ等を除去することで、当該アナログ除算装置1の除算精度が向上することとなる。
なお、この除数CDS信号は、上記のように、除数信号入力端子12に入力された除数信号V1からノイズやオフセット成分等が除去されたものであるため、厳密にいえば除数信号V1と全く同じものではなく、例えば「ノイズ等が除去された除数信号V1」と称すべきものである。但し、以下の説明では、説明の便宜上、この除数CDS信号を単に除数信号V1とも称すこととする。つまり、以下の説明で例えば「除数CDS回路18から出力された除数信号V1」或いは「分圧回路20に入力される除数信号V1」という場合の「除数信号V1」とは、除数CDS回路18によりノイズ等が除去された後の除数信号V1を意味するものとする。
分圧回路20は、除数CDS回路18からの除数信号V1(除数CDS信号)を所定の分割数にて分圧する回路である。本実施形態では、同じ抵抗値の抵抗器Rを4つ直列接続することにより除数信号V1を4分圧している。これにより、除数信号V1の1/4,2/4,3/4の各値及び0(接地電位)が、分圧信号として出力される。このうち、V1/4,2・V1/4,3・V1/4の三つの分圧信号は、それぞれ、比較器26,27,28に入力されると共に、第1サンプルホールド回路32にも入力される。また、値0(接地電位)は第1サンプルホールド回路32にのみ入力される。
被除数切替スイッチ21は、被除数入力スイッチ16を介して入力される被除数信号V2又は第2サンプルホールド回路25から出力される被除数増幅帰還信号(詳細は後述)のうちいずれか一方を選択的に切り替えて被除数入力信号として減算器22へ入力するものである。具体的には、駆動回路11からの被除数入力切替信号に従って切替動作がなされる。
減算器22は、被除数切替スイッチ21から入力される被除数入力信号(被除数信号V2又は被除数増幅帰還信号のいずれか)から、第1サンプルホールド回路32から入力される分圧帰還信号(詳細は後述)を減算してその減算結果を減算信号として被除数CDS回路23へ出力する。
被除数CDS回路23は、その構成や動作は既述の除数CDS回路18と同じである。つまり、減算器22から入力される減算信号に対して上記除数CDS回路18と同様に動作し、結果として、減算信号からノイズやオフセット成分等が除去された信号である被除数CDS信号が出力される。なお、この被除数CDS信号についても、厳密にいえば減算信号と全く同じものではないが、以下の説明では、説明の便宜上、この被除数CDS信号を単に減算信号とも称すこととする。つまり、以下の説明で例えば「被除数CDS回路23から出力された減算信号」或いは「被除数増幅回路24に入力される減算信号」という場合の「減算信号」とは、被除数CDS回路23によりノイズ等が除去された後の減算信号を意味するものとする。
被除数増幅回路24は、被除数CDS回路23からの減算信号(被除数CDS信号)を所定の増幅率にて増幅し、被除数増幅信号として各比較器26〜28へ出力するものである。この被除数増幅回路24は、本実施形態では、駆動回路11からの増幅率切替信号に従って増幅率が「1」又は「4」のいずれか一方に切り替わるよう構成されている。
なお、増幅率「4」というのは、分圧回路20における分割数と同じである。つまり、被除数増幅回路24は、分圧回路20の分割数と同じ増幅率にて増幅できるよう構成されている。本実施形態では、分圧回路20は除数信号V1を4分圧するものであるため、この被除数増幅回路24も減算信号(被除数CDS信号)を4倍に増幅できるよう構成されているのである。
第2サンプルホールド回路25は、被除数増幅回路24からの被除数増幅信号をホールドすると共に、所定のタイミングでそのホールドした値を被除数増幅帰還信号として被除数切替スイッチ21へ出力するものである。具体的には、駆動回路11からの第2駆動信号(ホールド又は出力)により動作し、第2駆動信号として「ホールド」すべき旨の信号が入力されたときはその時点で被除数増幅回路24から出力されている被除数増幅信号をホールドする。その後、駆動回路11から第2駆動信号として「出力」すべき旨の信号が入力されたときは、ホールドされている被除数増幅信号を被除数増幅帰還信号として被除数切替スイッチ21へ出力する。
三つの比較器26,27,28は、いずれも周知のコンパレータにて構成されている。そして、比較器26には分圧回路20からの分圧信号3・V1/4が、比較器27には分圧回路20からの分圧信号2・V1/4が、比較器28には分圧回路20からの分圧信号V1/4が、それぞれ入力される。また、各比較器28には被除数増幅回路24からの被除数増幅信号も入力される。
このような構成により、各比較器26〜28においては、入力される分圧信号と被除数増幅信号とが比較され、分圧信号が被除数増幅信号以上ならば「1」(ハイレベル)、分圧信号が被除数増幅信号より小さいならば「0」(ローレベル)の電圧が比較信号として出力される。この比較信号は、演算回路30へ入力される。
演算回路30は、各比較器26〜28からの比較信号(比較結果)を受けて、比較信号が「0」から「1」に変化する変化位置を検出する。そして、駆動回路11からの演算出力信号の入力タイミングにて、その変化位置を示す信号を、演算信号及び出力信号として出力する。このうち演算信号は第1サンプルホールド回路32へ、出力信号は変換テーブル34へ入力される。
例えば、被除数増幅信号がV1/4より大きく2・V1/4より小さい場合、比較器26,27からの比較信号は「0」となり、比較器28からの比較信号は「1」となる。つまりこの場合、比較信号が変化する変化位置は、比較器27と比較器28との間、ということになる。演算回路30は、この変化位置を、第1サンプルホールド回路32及び変換テーブル34へ出力するのである。
この演算回路30の具体的回路構成を、図2に示す。本実施形態の演算回路30は、図2に示す通り、四つのXORゲート30a〜30dにより構成されている。即ち、図2に示すように、ローレベル信号(0V)と比較器26からの比較信号が入力されるXORゲート30a、比較器26及び比較器27からの各比較信号が入力されるXORゲート30b、比較器27及び比較器28からの各比較信号が入力されるXORゲート30c、及び、比較器28からの比較信号及びハイレベル信号が入力されるXORゲート30d、を備えている。
このような構成により、演算回路30からは、例えば、入力される比較信号がいずれも「0」の場合は「0001」が演算信号及び出力信号として出力され、比較器26,27からの比較信号が「0」で比較器28からの比較信号が「1」の場合は「0010」が演算信号及び出力信号として出力され、比較器26からの比較信号が「0」で比較器27,28からの比較信号がいずれも「1」の場合は「0100」が演算信号及び出力信号として出力され、入力される比較信号がいずれも「1」の場合は「1000」が演算信号及び出力信号として出力される。
なお、図2に示した演算回路30の構成はあくまでも一例であり、第1サンプルホールド回路32及び変換テーブル34が変化位置を認識することができる限り、回路構成や信号の形式は種々考えられる。
なお、本実施形態のアナログ除算装置1では、後述するように、分圧信号と被除数増幅信号との比較及びその結果(演算信号及び出力信号)の出力(以下これを「単位除算動作」ともいう)が、複数回繰り返し行われる。この繰り返し行われる単位除算動作の回数は駆動回路11が決定するのであるが、駆動回路11は、演算回路30に出力する演算出力信号に、繰り返し行う単位除算動作が所定回数終了したのか、或いはまだ継続中であるのかを示す信号も含めて出力する。
これを受けた演算回路30も、変換テーブル34へ出力する出力信号に、繰り返し動作が終了したか或いはまだ継続中であるかの情報を含めて出力する。図2に示した演算回路30の回路図では省略したが、演算回路30は、出力信号として、変化位置を示す信号に加えて上記情報(単位除算動作が所定回数終了したか否か)も出力するのである。
第1サンプルホールド回路32は、分圧回路20から入力される全ての分圧信号のうち、演算回路30からの演算信号に基づき、被除数増幅信号よりも小さい分圧信号のうち最大の分圧信号を、分圧帰還信号として減算器22へ出力する。
より詳しくは、まず、駆動回路11からのリセット信号により分圧帰還信号がリセットされる。本実施形態のリセットレベルは0Vである。また、駆動回路11からの第1駆動信号に基づいて、所望の分圧信号をホールド及び出力する。具体的には、第1駆動信号として「ホールド」すべき旨の信号が入力されると、演算回路30から入力されている演算信号に従って、分圧信号のうち所定の1つをホールドする。ここでホールドする分圧信号は、既述の通り、被除数増幅信号よりも小さい分圧信号のうち最大の分圧信号である。その後、第1駆動信号として「出力」すべき旨の信号が入力されると、そのホールドした分圧信号を分圧帰還信号として減算器22へ出力する。
よって、例えば、被除数増幅信号がV1/4より大きく2・V1/4より小さい場合、分圧信号V1/4が分圧帰還信号として出力されることとなる。また例えば、被除数増幅信号が2・V1/4より大きく3・V1/4より小さい場合、分圧信号2・V1/4が分圧帰還信号として出力されることとなる。また例えば、被除数増幅信号がV1/4よりも小さい場合は、分圧信号0が分圧帰還信号として出力されることとなる。また例えば、
被除数増幅信号が3・V1/4より大きい場合は、分圧信号3・V1/4が分圧帰還信号として出力されることとなる。
変換テーブル34は、演算回路30からの出力信号を、例えばパーソナルコンピュータ(PC)やUSBデバイス等で直接扱えるデータ形式(例えばシリアルデータ列)に変換して変換出力信号として出力するものである。この変換を行うために、変換すべきデータ形式へ変換するための変換パターンを有している。
具体的には、演算回路30から出力信号が入力される毎に(つまり単位除算動作が行われる毎に)、その入力された出力信号に含まれる、上記変化位置を示すデータを順次ホールドしていく。実際には、駆動回路11からの変換信号に基づき、「ホールド」すべき旨の変換信号が入力されたとき(出力信号の入力タイミングと同じ)に、そのとき入力されている出力信号をホールドする。そして、そのホールドした出力信号に、単位除算動作が終了した旨の情報が含まれていたならば、その入力された出力信号を含め、その時点までにホールドされている複数の変化位置を示すデータ(単位除算動作毎に順次ホールドされたデータであり、最終的な除算結果を示すデータでもある)を、変換パターンに従ってシリアルデータ形式に変換する。その後、「出力」すべき旨の変換信号が入力されたときに、そのシリアルデータ形式の除算結果が変換出力信号として出力端子36から出力されることとなる。
駆動回路11は、アナログ除算装置1の動作全体を統括的に制御する回路であり、上述した各信号を所定のタイミング(詳細は図4を用いて後述)で出力し、除算を実行させる。また、既述の通り、本実施形態のアナログ除算装置1では、分圧信号と被除数増幅信号との比較結果(比較信号)に基づく演算回路からの演算信号及び出力信号の出力動作(単位除算動作)が複数回繰り返し行われるが、その動作回数は、除数信号入力端子12に入力される除数信号V1に基づき駆動回路11が決定するものである。
即ち、駆動回路11には、除数信号入力端子12に入力された除数信号V1が除数入力スイッチ15を介して入力される。駆動回路11は、この入力された除数信号V1に基づき、除数信号V1が大きいほど動作回数を多く設定する。具体的には、図3に示すように、除数信号V1が2Vより小さい場合は動作回数を「3回」とし、除数信号V1が2V以上であって3Vより小さい場合は動作回数を「4回」とし、除数信号V1が3V以上の場合は動作回数を「5回」とする。なお、この図3の例はあくまでも一例であり、除数信号V1が大きいほど動作回数が段階的或いは連続的に大きくなるように適宜設定することができる。
次に、上記のように構成された本実施形態のアナログ除算装置1の動作について、図4を用いて具体的に説明する。図4は、本実施形態のアナログ除算装置1における除算動作の一例を示すタイムチャートである。
図4に示す如く、アナログ除算装置1において除算動作が開始されると、時刻t1において駆動回路11から第1サンプルホールド回路32へのリセット信号がONすることにより、第1サンプルホールド回路32から減算器22への分圧帰還信号がリセットレベル(本実施形態では0V)となる。またこのとき、駆動回路11から被除数切替スイッチ21への被除数入力切替信号により被除数切替スイッチ21がV2側(被除数入力スイッチ16側)へ切り替わる。これにより、被除数入力スイッチ16がONされたときに被除数信号入力端子13に入力された被除数信号V2が被除数入力スイッチ16及び被除数切替スイッチ21を介して減算器22へ入力されることとなる。
次に、時刻t2にて、駆動回路11から除数CDS回路18及び被除数CDS回路23へのCDS駆動信号がONされる。これにより、除数CDS回路18では、当該除数CDS回路18に除数信号V1が入力されない場合における除数信号がホールドされ、被除数CDS回路23では、当該被除数CDS回路23に被除数信号V2が入力されない場合における減算信号がホールドされる。またこの時刻t2にて、各CDS回路18,22からの出力信号(除数CDS信号及び被除数CDS信号)は一旦リセットされる。
続く時刻t3にて、駆動回路11は、CDS駆動信号をOFFすると共に、除数入力スイッチ15への除数入力スイッチ信号及び被除数入力スイッチ16への被除数入力スイッチ信号を共にONする。これにより、除数信号入力端子12に入力された除数信号V1は除数入力スイッチ15を介して除数CDS回路18へ入力され、被除数信号入力端子13に入力された被除数信号V2は被除数入力スイッチ16を介して被除数切替スイッチ21へ入力される。ここでは、被除数切替スイッチ21は上記の通り被除数入力スイッチ16側へ切り替わっており、且つ、第1サンプルホールド回路32からの分圧帰還信号も0にリセットされている(時刻t1参照)。そのため、被除数CDS回路23には被除数信号V2がそのまま入力されることとなる。
続く時刻t4では、再び、駆動回路11から各CDS回路18,23へのCDS駆動信号をONする。これにより、除数CDS回路18では、時刻t2でホールドした信号と時刻t3にて入力された除数信号V1との差分が演算される。この演算結果が、除数CDS信号として除数CDS回路18から出力される。この除数CDS信号が、分圧回路20にて4分圧され、分圧回路20からは既述の通り各分圧信号V1/4,2・V1/4,3・V1/4が第1サンプルホールド回路32及び演算回路30へ入力される。第1サンプルホールド回路32には分圧信号0も入力される。
被除数CDS回路23では、時刻t2でホールドした信号と時刻t3にて入力された被除数信号V2との差分が演算される。この演算結果が、被除数CDS信号として被除数CDS回路23から出力される。
また、この時刻t4では、被除数CDS回路23から被除数CDS信号が出力されることにより、被除数増幅回路24から被除数増幅信号が出力される。このとき、駆動回路11から被除数増幅回路24への増幅率切替信号はOFFの状態であって増幅率は「4」に設定されたままとなっている。そのため、この時刻t4の時点では、被除数CDS回路23からの被除数CDS信号はまだ4倍に増幅されたままである。
そして、時刻t5にて、各CDS回路18,23へのCDS駆動信号を一旦OFFにする。但し、各CDS回路18,23からは各CDS信号が出力されている。そして、被除数増幅回路24への増幅率切替信号をON状態に切り替えることにより、被除数増幅回路24の増幅率を「1」に切り替える。
これにより、被除数増幅回路24からは、被除数CDS回路23からの被除数CDS信号がそのまま被除数増幅信号として各比較器26〜28へ入力される。つまり、被除数信号入力端子13に入力された減算信号(このときは被除数信号V2)がそのままのレベルで(但し被除数CDS回路23によるノイズ除去等を経て)被除数増幅信号として各比較器26〜28へ入力されるのである。なお、被除数増幅回路24は、再び増幅率切替信号がOFFに切り替わるまで(図4では時刻t12になるまで)は増幅率が「1」の状態に保持される。
このとき、分圧回路20からは、除数信号V1が4分圧された分圧信号V1/4,2・V1/4,3・V1/4が出力され、分圧信号3・V1/4は比較器26へ、分圧信号2・V1/4は比較器27へ、分圧信号V1/4は比較器28へ、それぞれ入力されている。そのため、各比較器26〜28からは、それぞれ、入力されている分圧信号と被除数増幅信号(=被除数信号V2)との比較結果が出力される。即ち、比較信号は、比較器26〜28の順に見て、「111」,「011」,「001」,「000」のいずれかになっているはずである。
続く時刻t6にて、駆動回路11は、演算回路30へ演算出力信号を出力すると共に、第1サンプルホールド回路32へ「ホールド」すべき旨の第1駆動信号を、変換テーブル34へ「ホールド」すべき旨の変換信号を、それぞれ出力する。なお、図4では「ホールド」を「HLD」と表記している。
これにより、演算回路30からは、各比較器26〜28からの比較信号が「0」から「1」に変化する変化位置を示す信号である演算信号及び出力信号が出力される。具体的には、演算信号が第1サンプルホールド回路32へ出力され、出力信号が変換テーブル34へ出力される。
第1サンプルホールド回路32では、演算回路30からの演算信号に基づき、比較器による比較結果が「1」となる(つまり分圧信号が被除数増幅信号より小さい)分圧信号のうち最も大きい分圧信号がホールドされる。また、変換テーブル34では、演算回路30からの出力信号がホールドされる。
ここまでで、まず、被除数信号V2と除数信号V1との除算(単位除算動作)が1回行われ、その除算結果が演算回路30からの出力信号として得られたことになる。より具体的には、分圧回路20の分割数を基数とする数(本実施形態では4分割であるから4進数)における小数第一位までの除算結果が得られたことになる。即ち、例えば、比較信号が比較器26〜28の順に見て「011」となっている場合は4進数表記で0.2という除算結果が得られたことになる。また例えば、比較信号が比較器26〜28の順に見て「111」となっている場合は、4進数表記で0.3という除算結果が得られたことになる。また例えば、比較信号が比較器26〜28の順に見て「000」となっている場合は、4進数表記で0.0という除算結果が得られたことになる。
この1回あたりの除算(単位除算動作)における除算の分解能は、分圧回路20の分割数と同じである。そのため、とりあえずこの時点では、1回の単位除算動作が行われ、分解能「4」の除算結果が暫定的に得られたことになる。この除算結果はもちろん、まだ変換テーブル34から出力されず、変換テーブル34にてホールドされたままである。そして、引き続き、時刻t7以降に2回目の単位除算動作が行われることとなる。
続く時刻t7では、駆動回路11から第2サンプルホールド回路25へ、「ホールド」すべき旨の第2駆動信号が出力される。これにより、被除数増幅回路24から現在出力されている被除数増幅信号(ここでは被除数信号V2)が第2サンプルホールド回路25にてホールドされる。なお、この時刻t7にて、除数入力スイッチ信号がOFFされて除数信号入力端子12からの除数信号V1が除数CDS回路18側へ入力されなくなる。但し、除数CDS回路18からは除数CDS信号(除数信号V1)が出力され続けるため、分圧回路20からの分圧信号もそのまま出力され続ける。
そして続く時刻t8で、駆動回路11から被除数切替スイッチ21への被除数入力切替信号により、被除数切替スイッチ21を第2サンプルホールド回路25側(図4では「帰還側」と表記)へ切り替わる。これにより、第2サンプルホールド回路25から被除数増幅帰還信号が出力された場合にはその被除数増幅帰還信号が被除数切替スイッチ21を介して減算器22へ入力されることとなる。
続く時刻t9では、時刻t2のときと同様、各CDS回路18,23へのCDS駆動信号が再びONされ、除数CDS回路18では、当該除数CDS回路18に除数信号V1が入力されない場合における入力信号がホールドされ、被除数CDS回路23では、当該被除数CDS回路23に減算信号が入力されない場合における入力信号がホールドされる。
またこの時刻t9にて、各CDS回路18,22からの出力信号(除数CDS信号及び被除数CDS信号)は一旦リセットされる。そのため、被除数増幅回路24からの被除数増幅信号も一旦0にリセットされる。
続く時刻t10では、時刻t3のときと同様、CDS駆動信号がOFFされると共に、除数入力スイッチ15への除数入力スイッチ信号がONされる。これにより、除数信号入力端子12に入力された除数信号V1は除数入力スイッチ15を介して除数CDS回路18へ入力される。
一方、この時刻t10にて、第1駆動信号及び第2駆動信号としていずれも「出力」すべき旨の信号が、それぞれ第1サンプルホールド回路32及び第2サンプルホールド回路25へ出力される。これにより、第1サンプルホールド回路32からは、現時点でホールドされている分圧信号、即ち時刻t6にてホールドされた分圧信号が、分圧帰還信号として出力され、減算器22に入力される。また、第2サンプルホールド回路25からは、現時点でホールドされている被除数増幅信号、即ち時刻t7でホールドされた被除数増幅信号(ここでは被除数信号V2)が被除数増幅帰還信号として出力され、被除数切替スイッチ21を介して減算器22へ入力される。
そのため、減算器22からは、被除数増幅帰還信号から分圧帰還信号を減じた値が、減算信号として被除数CDS回路23へ入力される。つまり、減算器22では、前回の単位除算動作における被除数増幅信号である被除数信号V2と、被除数増幅信号(被除数信号V2)よりも小さい分圧信号のうち最も大きい分圧信号との差分が得られ、減算信号として出力されることとなる。
続く時刻t11では、時刻t4のときと同様、駆動回路11から各CDS回路18,23へのCDS駆動信号がONされる。これにより、除数CDS回路18では、時刻t9でホールドした信号と時刻t10にて入力された除数信号V1との差分が演算され、その演算結果が除数CDS信号として除数CDS回路18から出力される。つまり、時刻t4と同じく、ノイズやオフセット成分等の除去された除数信号V1が除数CDS信号として分圧回路20へ出力される。
また、被除数CDS回路23では、時刻t9でホールドした信号と時刻t10にて減算器22から入力された減算信号(被除数増幅帰還信号から分圧帰還信号を減じた値)との差分が演算される。この減算結果が、被除数CDS信号として被除数CDS回路23から出力される。
続く時刻t12では、各CDS回路18,23へのCDS駆動信号が再びOFFされる。但し、各CDS回路18,23からは各CDS信号が出力されている。そして、被除数増幅回路24への増幅率切替信号をOFF状態に切り替えることにより、被除数増幅回路24の増幅率を「4」に切り替える。
これにより、被除数増幅回路24からは、被除数CDS回路23からの被除数CDS信号が4倍に増幅され、被除数増幅信号として各比較器26〜28へ入力される。つまり、被除数増幅帰還信号(ここでは被除数信号V2)から分圧帰還信号を減じた値が、分圧回路20の分割数と同じ数の倍率にて増幅され、新たな被除数増幅信号として各比較器26〜28へ入力されるのである。なお、被除数増幅回路24は、再び増幅率切替信号がONに切り替わるまでは増幅率が「4」の状態に保持される。
続く時刻t13では、駆動回路11から第1サンプルホールド回路32へのリセット信号がONされることにより、第1サンプルホールド回路32からの分圧帰還信号が0にリセットされる。また、時刻t6のときと同様、駆動回路11は、演算回路30へ演算出力信号を出力すると共に、第1サンプルホールド回路32へ「ホールド」すべき旨の第1駆動信号を、変換テーブル34へ「ホールド」すべき旨の変換信号を、それぞれ出力する。これにより、演算回路30からは、各比較器26〜28からの比較信号が「0」から「1」に変化する変化位置を示す信号である演算信号及び出力信号が出力される。
第1サンプルホールド回路32では、演算回路30からの演算信号に基づき、比較器による比較結果が「1」となる(つまり分圧信号が被除数増幅信号より小さい)分圧信号のうち最も大きい分圧信号がホールドされる。また、変換テーブル34では、演算回路30からの出力信号がホールドされる。
ここまでで、2回目の単位除算動作が行われ、この2回目の単位除算動作による除算結果が演算回路30からの出力信号として得られたことになる。より具体的には、分圧回路20の分割数を基数とする数(本実施形態では4進数)の除算結果における、小数第二位の値が得られたことになる。即ち、この2回目の単位除算動作において、例えば、比較信号が比較器26〜28の順に見て「001」となっている場合は4進数表記で0.01という除算結果が得られたことになる。そのため、1回目の単位除算動作において例えば0.3という除算結果が得られたとするなら、この2回目の単位除算動作の結果と合わせ、4進数表記で0.31という除算結果が得られたことになる。
これは即ち、2回目の単位除算動作を行うことで、分解能16(=42)の除算結果が暫定的に得られたことになる。この2回目の単位除算動作の演算結果も、1回目の単位除算動作の演算結果と同様、まだ変換テーブル34から出力されず、変換テーブル34にてホールドされたままである。そして、引き続き、時刻t14以降に3回目の単位除算動作が行われることとなる。
続く時刻t14では、駆動回路11から第2サンプルホールド回路25へ、「ホールド」すべき旨の第2駆動信号が出力される。これにより、第2サンプルホールド回路25から現在出力されている被除数増幅帰還信号はリセットされると共に、被除数増幅回路24から現在出力されている被除数増幅信号が第2サンプルホールド回路25にてホールドされる。なお、この時刻t14にて、除数入力スイッチ信号がOFFされて除数信号入力端子12からの除数信号V1が除数CDS回路18側へ入力されなくなる。
そして続く時刻t15では、時刻t2,t9のときと同様、各CDS回路18,23へのCDS駆動信号が再びONされ、除数CDS回路18では、当該除数CDS回路18に除数信号V1が入力されない場合における入力信号がホールドされ、被除数CDS回路23では、当該被除数CDS回路23に減算信号が入力されない場合における入力信号がホールドされる。
またこの時刻t15にて、各CDS回路18,22からの出力信号(除数CDS信号及び被除数CDS信号)は一旦リセットされる。そのため、被除数増幅回路24からの被除数増幅信号も一旦0にリセットされる。
続く時刻t16では、時刻t3,t10のときと同様、CDS駆動信号がOFFされると共に、除数入力スイッチ15への除数入力スイッチ信号がONされる。これにより、除数信号入力端子12に入力された除数信号V1は除数入力スイッチ15を介して除数CDS回路18へ入力される。
一方、この時刻t16にて、時刻t10と同様、第1駆動信号及び第2駆動信号としていずれも「出力」すべき旨の信号が、それぞれ第1サンプルホールド回路32及び第2サンプルホールド回路25へ出力される。これにより、第1サンプルホールド回路32からは、現時点でホールドされている分圧信号、即ち時刻t13にてホールドされた分圧信号が、分圧帰還信号として出力され、減算器22に入力される。また、第2サンプルホールド回路25からは、現時点でホールドされている被除数増幅信号、即ち時刻t14でホールドされた被除数増幅信号が被除数増幅帰還信号として出力され、被除数切替スイッチ21を介して減算器22へ入力される。
そのため、減算器22からは、被除数増幅帰還信号から分圧帰還信号を減じた値が、減算信号として被除数CDS回路23へ入力される。つまり、減算器22では、前回(2回目)の単位除算動作における被除数増幅信号と、その被除数増幅信号よりも小さい分圧信号のうち最も大きい分圧信号との差分が得られ、減算信号として出力されることとなる。
続く時刻t17では、時刻t11のときと同様、駆動回路11から各CDS回路18,23へのCDS駆動信号がONされる。これにより、除数CDS回路18からは、ノイズやオフセット成分等の除去された除数信号V1が除数CDS信号として分圧回路20へ出力される。また、被除数CDS回路23では、時刻t15でホールドした信号と時刻t16にて減算器22から入力された減算信号(被除数増幅帰還信号から分圧帰還信号を減じた値)との差分が演算される。この減算結果が、被除数CDS信号として被除数CDS回路23から出力される。
続く時刻t18では、各CDS回路18,23へのCDS駆動信号が再びOFFされる。また、駆動回路11は、演算回路30へ演算出力信号を出力すると共に、変換テーブル34へ「ホールド」すべき旨の変換信号を出力する。
なお、本実施形態(図4)では、単位除算動作を3回行って除算結果を出力する場合を例に挙げて説明している。また、既述の通り、駆動回路11から演算回路30へ出力される演算出力信号には、単位除算動作が所定回数(本例では3回)終了したか又はまだ継続中であるかの情報も含まれ、演算回路30からの出力信号にもこの情報が含まれる。
従って、この時刻t18で演算回路30に入力される演算出力信号には、単位除算動作が所定の3回終了した旨の情報が含まれていることになる。そこで、演算回路30は、その情報に基づき、出力信号にその旨を含ませて出力すると共に、第1サンプルホールド回路32への演算信号の出力は行わない。
ここまでで、3回目の単位除算動作が行われ、この3回目の単位除算動作による除算結果が演算回路30からの出力信号として得られたことになる。より具体的には、分圧回路20の分割数4を基数とする4進数の除算結果における、小数第三位の値が得られたことになる。即ち、この3回目の単位除算動作において、例えば、比較信号が比較器26〜28の順に見て「111」となっている場合は4進数表記で0.003という除算結果が得られたことになる。そのため、1回目の単位除算動作において例えば0.3という除算結果が得られ、2回目の単位除算結果において例えば0.01という除算結果が得られたとするならば、この3回目の単位除算動作の結果と合わせ、4進数表記で0.313という除算結果が得られたことになる。
これは即ち、3回目の単位除算動作を行うことで、分解能64(=43)の除算結果が得られたことになる。この3回目の単位除算動作の演算結果も、現時点(時刻t18)ではまだ、1回目及び2回目の単位除算動作の演算結果と同様、まだ変換テーブル34から出力されず、変換テーブル34にてホールドされたままである。
そして、続くt19で、駆動回路11は、変換テーブル34へ「出力」すべき旨の変換信号を出力する。この変換信号を受けた変換テーブル34は、現時点でホールドされている3つの出力信号、即ち、1回目〜3回目までの各単位除算動作において得られた演算結果(本例では、4進数表記における少数第3位までの除算結果)を、変換パターンに従って2進数シリアルデータに変換し、変換出力信号として出力端子36から出力する。
上記例では、分圧回路20の分割数が4,単位除算動作回数が3回であったため、1回目の単位除算動作では4進数表記における小数第一位の除算結果が得られ、以後、単位除算動作を繰り返す毎に小数第二位、小数第三位、というふうに除算結果が得られた。そして、結果として分解能64の演算結果が得られた。
これを一般的に表すならば、分圧回路の分割数をN、単位除算動作の回数をL回とすると、1回目の単位除算動作ではN進数表記における小数第一位の除算結果が得られることとなる。また、得られる分解能はNLで表される。
以上説明したように、本実施形態のアナログ除算装置1は、まず最初に除数信号V1と被除数信号V2との除算を行い(1回目の単位除算動作)、分圧回路20の分割数を基数とする数(本例では4進数)における小数第一位の除算結果を得る。この除算自体は、従来と同様、複数の分圧信号と被除数信号V2との比較結果が変化する変化位置に基づくものである。
そして、本実施形態の最も特徴的とするところが、この1回目の単位除算動作の後の処理である。具体的には、上述のように、被除数増幅信号(最初は被除数信号V2)よりも小さい分圧信号のうち最も大きいものを分圧帰還信号としてフィードバックさせ、現在の被除数増幅信号(つまり最初は被除数信号V2)からこの分圧帰還信号を減じ、さらにその減じた後の信号(減算信号)を、分圧回路20の分割数と同じ増幅率(本例では4倍)で増幅する。その増幅された信号を、新たな被除数増幅信号として各比較器26〜28に入力し、1回目と同様に各分圧信号との比較結果を得る。これにより、小数第二位の演算結果が得られる。その後も同様にして分圧帰還信号をフィードバックさせ、現時点での被除数増幅信号からその分圧帰還信号を減じたものを再び増幅して新たな被除数増幅信号とし、分圧信号との比較を行っていく。
このようにして単位除算動作を繰り返す度に、小数第一位、小数第二位、小数第三位、・・・というふうに演算結果の精度が一桁ずつ上昇していき、高い分解能の演算結果を得ることができる。つまり、単位除算動作の回数によって分解能を可変にできるのである。
なお、本実施形態では、図3で説明したように、駆動回路11は、除数信号V1が小さいほど単位除算動作の動作回数を少なく設定するようにしたが、このようにしたのは、除数信号V1が小さいほど除算の精度が悪くなるからである。
即ち、除数信号V1が小さい場合、分圧回路20で分圧したときに各分圧信号が小さくなり(換言すれば各分圧信号の差が小さくなり)、除算の精度が悪くなる。そのため、除数信号V1の大きさに応じて動作回数を決定することで、出力結果の精度を考慮した除算出力を得られるようにしているのである。
従って、本実施形態のアナログ除算装置1によれば、分圧回路20の分割数N(本実施形態ではN=4)と単位除算動作の動作回数L(本実施形態ではL=3)とに応じて除算の分解能が決定されるため、分割数Nが少なくても単位除算動作を複数回繰り返すことによりNLの分解能の除算結果を得ることができる。そのため、分圧回路20の分割数を少なくして回路面積を小さくしつつ、精度を高く(分解能を高く)且つ分解能を可変とすることが可能となる。そのため、小型化且つ高精度の演算能力が要求される様々なアプリケーションに応用でき、実用上極めて有効である。
また、除数CDS回路18,被除数CDS回路23によって、除数信号V1及び被除数信号V2(延いては減算信号)のノイズ、オフセット成分等を除去するようにしている。このように、除数信号V1、被除数信号V2の双方ともにCDS回路にてノイズ等の除去処理を行うようにしているため、いずれか一方のみCDS回路を用いる場合よりも除算の精度をより向上させることができる。
更に、本実施形態では、分圧回路20を、同じ抵抗値の抵抗器Rを直列接続することにより実現している。このように、入力信号(除数信号V1)を単に抵抗により分圧する構成とすることで、分圧回路20の設計が容易となり、また分圧回路20が占める回路面積が少なくて済むため、アナログ除算装置1全体の回路面積を小さくできる。
更にまた、本実施形態では、分圧回路20の分割数を2の累乗(本例では「4」)としている。そのため、演算回路30からの出力信号が2進数で表現しやすく、出力信号を2進数にあわせて出力することができる。そのため、デジタル値を扱う後段(本実施形態では変換テーブル34)での処理が容易になる。具体的には、演算回路30からの出力信号に応じて二進数シリアルデータ列への変換を容易に行うことができる。
また、本実施形態では、図3で説明したように、除数信号V1が小さいほど単位除算動作の動作回数を少なく設定するようにした。そのため、精度を考慮した除算結果を得ることが可能となる。
更に、本実施形態では、演算回路85からの演算信号及び出力信号がパラレル出力される構成とした(図2参照)。そのため、演算結果(除算結果)の出力を高速に行うことができ、アナログ除算装置1全体の除算速度を向上させることができる。
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、分圧回路20は本発明の除数分圧手段に相当し、比較器26〜28は本発明の比較手段に相当し、第1サンプルホールド回路32は本発明の分圧信号帰還手段に相当し、演算回路30は本発明の演算出力手段に相当し、減算器22は本発明の減算手段に相当し、被除数増幅回路24は本発明の増幅手段に相当し、駆動回路11は本発明の演算制御手段に相当し、被除数切替スイッチ21は本発明の被除数切替手段に相当し、変換テーブル34は本発明のデータ変換手段に相当する。
[第2実施形態]
図5に、本実施形態のアナログ除算装置50の概略構成図を示す。本実施形態のアナログ除算装置50が第1実施形態のアナログ除算装置1(図1参照)と異なる主な点は、駆動回路が単位除算動作の回数をどのようにして決めるか、という点にある。即ち、上記第1実施形態のアナログ除算装置1では、除数信号V1の大きさに応じて、図3に基づいて駆動回路11が動作回数を決定していた。これに対し、本実施形態のアナログ除算装置50は、除数信号V1と被除数信号V2の除算を実際に開始するのに先立って、まず、除数信号V1と、この除数信号V1の半分の値(V1/2)との除算を行う。つまり、上記同様、単位除算動作を繰り返し行う。そして、2回目以降の単位除算動作毎に、演算回路30からの演算信号が前回から変化したか否か(つまり2回目のときの演算信号から変化したか否か)を判断し、変化したと判断されたときの単位除算動作が例えばn回目だった場合、それよりも1つ少ない回数であるn−1回を限界動作回数として、当該アナログ除算装置50における動作回数に設定する。
そのため、本実施形態のアナログ除算装置50は、除数信号入力端子12に入力された除数信号V1を1/2に分圧して出力する入力分圧回路53と、この入力分圧回路53からの出力値V1/2と被除数信号入力端子13に入力された被除数信号V2のいずれか一方を切り替えて被除数入力スイッチ16へ出力する入力切替スイッチ55を備えている。
また、本実施形態の駆動回路51は、第1実施形態の駆動回路11と比較して、除数信号V1が入力されない代わりに演算回路30からの演算信号が入力される。また、入力切替スイッチ55を切り替えるための第2入力切替信号を出力する。更に駆動回路51は、動作回数設定用カウンタ52を備え、単位除算動作の回数を決定する際にこの動作回数設定用カウンタ52を用いる。
なお、本実施形態のアナログ除算装置50において、変換テーブル57は、除算結果を変換パターンに従って変換するという基本的動作は第1実施形態の変換テーブル34と同じだが、データ出力をパラレルで行う。そのため、変換出力信号をパラレルで行うために、出力データのビット数と同数の出力端子58を備えている。
上述した構成以外は、上記第1実施形態のアナログ除算装置1と同じ構成であるため、ここではその詳細説明は省略する。そして、本実施形態の特徴である、駆動回路51による単位除算動作の回数設定方法について説明する。
本実施形態では、単位除算動作の回数を設定するために、まず、駆動回路51からの第2入力切替信号により、入力切替スイッチ55を入力分圧回路53側に切り替えて、被除数入力スイッチ16に除数信号V1の半分の値であるV1/2が入力されるようにする。その後、上記第1実施形態と同様の手順で、除算を行っていく。つまり、単位除算動作を繰り返し実行する。この繰り返し実行する単位除算動作は、いうまでもなく、除数信号V1と被除数信号V2との実際の除算ではなく、あくまでも、その実際の除算を行う際における単位除算動作の動作回数を決めるためのものである。
ここで、例えば除数信号V1が5Vとすると、入力分圧回路53からは2.5Vが出力され、結果、2.5/5の除算が行われることになる。この場合、第1サンプルホールド回路32からは、2.5Vが分圧帰還信号として出力され、これが減算器22に入力される。すると、減算器22からの減算信号は、2.5−2.5=0、となり、被除数増幅回路24からの出力も0となる。そのため、2回目の単位除算動作時には、第1サンプルホールド回路32からの分圧帰還信号は0となる。
このとき、当該アナログ除算装置50を構成する各回路が、何らノイズ等の影響を受けず且つ演算誤差等も全くない理想的なものであるならば、以後、単位除算動作を繰り返しても分圧帰還信号は0であり続けるはずである。しかし、実際には、第1サンプルホールド回路32からの分圧帰還信号の誤差、減算器22の減算誤差、被除数増幅回路24の増幅誤差、或いはノイズ等の影響により、単位除算動作を繰り返し実行するにつれて、ある回数にて分圧帰還信号が0から他の値に変化する。
具体的には、例えば、1回目の単位除算動作時に第1サンプルホールド回路32の誤差により2.5Vの分圧信号が2.49Vの分圧帰還信号として減算器22に入力された場合、減算器22からは、2.5−2.49=0.01、の値が出力され、これが被除数増幅回路24にて増幅されて、0.04Vの被除数増幅信号が各比較器26〜28に入力される。
この場合、2回目の単位除算動作時には、この0.04Vと各分圧信号とが比較され、その結果、第1サンプルホールド回路32からは分圧帰還信号として0Vが出力される。そして、減算器22では現時点での被除数増幅信号(0.04V)と分圧帰還信号(0V)が減算され、その結果(0.04V)が被除数増幅回路24で増幅されて、0.16Vの被除数増幅信号が出力される。そのため、3回目の単位除算動作時には、この0.16Vと各分圧信号とが比較され、その結果、分圧帰還信号としては前回同様0Vが出力される。更に、4回目の単位除算動作時には被除数増幅信号が0.64Vとなって、この場合もまだ分圧帰還信号は0Vとなる。そして、5回目の単位除算動作時に、被除数増幅信号が2.56Vとなり、それまで(2回目以降)は0Vだった分圧帰還信号がついに変化する。つまり、最初の単位除算動作時に第1サンプルホールド回路32から本来出力されるべき分圧帰還信号2.5Vが誤差により2.49Vとなったことで、このわずかな誤差が、単位除算動作を繰り返し実行する毎に累積していって、ついには、分圧帰還信号が0Vから他の値へ変化する(各比較器26〜28による比較結果が変化する)に至ったわけである。
これは即ち、単位除算動作を4回繰り返すまでは、有効な演算結果が得られるものの、5回目以降からは上記誤差等の影響を受けて有効な演算結果が得られない、ということを意味しており、単位除算動作を5回以上繰り返しても無駄ということである。そこで本実施形態では、上記例の場合、有効な演算結果が得られる単位除算動作回数である4回を限界動作回数として、実際に除数信号V1と被除数信号V2との除算を行う際は、その限界動作回数以下の所定の動作回数で単位除算動作を行う。例えば、より高精度が要求されているのであれば4回に決定すればよいし、高い精度が要求されていない場合は2回或いは3回程度に抑えてもよい。
即ち、本実施形態では、駆動回路51が、除数信号V1と被除数信号V2との除算を実際に行うのに先立ち、まず、除数信号V1の半分の値であるV1/2を被除数信号として除数信号V1との除算を行う。そして、単位除算動作を開始する毎に、動作回数設定用カウンタ52をインクリメントしていく。また駆動回路51は、その除算における2回目以降の単位除算動作毎に、分圧帰還信号が0Vから変化したか否か(つまり各比較信号26〜28による比較結果が2回目から変化したか否か)を、演算回路30からの演算信号に基づいて判断する。そして、変化したと判断した場合は、単位除算動作を停止すると共に、そのときの動作回数設定用カウンタ52のカウント値よりも一つ少ない値を限界動作回数に設定する。駆動回路51は、この限界動作回数を超えない範囲内で、要求されている除算精度(分解能)等に応じて適宜動作回数を決定する。
動作回数の決定後、駆動回路51は、第2入力切替信号によって入力切替スイッチ55を被除数信号入力端子13側に切り替える。そして、実際に除数信号V1と被除数信号V2との除算を行う。その際は、上記決定した動作回数だけ単位除算動作を行って、除算結果を得ることとなる。
このように、回路のノイズや増幅誤差、減算誤差等を考慮して予め限界動作回数を求め、それを超えない範囲内で単位除算動作の動作回数を決定することで、過不足ない分解能での除算結果を得ることができる。
[第3実施形態]
図6に、本実施形態のアナログ除算装置70の概略構成図を示す。本実施形態のアナログ除算装置70が第1実施形態のアナログ除算装置1(図1参照)と異なる主な点は、除数信号V1及び被除数信号V2を所定の増幅率で増幅させた上で除算を実行させる、という点にある。即ち、上記第1実施形態のアナログ除算装置1では、入力された除数信号V1と被除数信号V2をそのまま除算させていた。
これに対し、本実施形態のアナログ除算装置70は、除数信号V1及び被除数信号V2をまず、双方ともに同じ増幅率(例えばn倍)で増幅させる。そして、その増幅後の除数信号nV1と増幅後の被除数信号nV2に対して、上記第1実施形態と同様に除算を行い、除算結果を得るのである。このように、除算対象となる各信号V1,V2を増幅させるのは、特に除数信号V1が小さい場合に有効となる。除数信号V1が小さい場合、分圧回路20で分圧したときに各分圧信号が小さくなり、除算の精度が悪化する。そこで、実際に除算を実行する前に除数信号V1を増幅し、同じ増幅率にて被除数信号V2まで増幅させることで、全体のS/N比が向上し、除算結果の精度を上げることができる。
もう一点、本実施形態のアナログ除算装置70が第1実施形態のアナログ除算装置1と異なる点がある。それは、単位除算動作の動作回数を、外部から入力される動作回数設定信号に応じて設定可能ということである。即ち、基本的には、本実施形態でも除数信号V1の大きさに応じて駆動回路71が動作回数を決定するのであるが、外部(例えばPC等)から動作回数設定信号が入力された場合は、その信号が示す動作回数を優先し、単位除算動作を行うようにする。
そのため、本実施形態のアナログ除算装置70では、第1実施形態の駆動回路11と比較して、除数信号V1及び被除数信号V2をそれぞれ増幅するための入力増幅回路73を備えていること、外部から動作回数設定信号が入力される外部信号入力端子78を備えていること、その動作回数設定信号が入力されたときはそれに従って駆動回路71が動作回数を設定すること、及び、入力増幅回路73にて増幅を行うために必要な参照信号及び増幅出力指令信号を駆動回路71が出力する、という点で異なっており、その他は基本的には上記第1実施形態のアナログ除算装置1と同じである。
そこで、以下、本実施形態の特徴である、入力増幅回路73の構成について説明する。図7に、この入力増幅回路73の構成を示す。図7に示す如く、入力増幅回路73は、参照信号V11と除数信号V1の除算を行う除算器75と、この除算結果α(=V11/V1)を増幅率として被除数信号V2を増幅する増幅器76とを備える。除算器75は、V11/V1の除算結果αを増幅器76に出力するほか、駆動回路71からの参照信号V11をそのまま除数信号V11として出力する。
このような構成により、結果として、除数信号V1はα倍に増幅された除数信号V11(つまり参照信号V11)として除数入力スイッチ15へ出力される。また、被除数信号V2も、同じくα倍に増幅された被除数信号αV2として被除数入力スイッチ16へ出力される。これら各増幅後の信号の出力は、駆動回路71からの増幅出力指令信号に基づいて行われる。
つまり、除数信号V1を参照信号V11まで増幅して新たな除数信号V11として出力し、その増幅率と同じ増幅率αで被除数信号V2も増幅して新たな被除数信号αV2として出力するのである。
除数信号V1が小さくなるにつれ、S/N比が下がり、除算の精度は低くなるが、本実施形態では、入力増幅回路73により除数信号V1を参照信号V11まで増幅し、同じ増幅率で被除数信号V2も増幅するようにしたため、入力される除数信号V1が小さい場合でも除算の精度低下を防止することができる。なお、本実施形態において、入力増幅回路73は本発明の入力信号増幅手段に相当し、参照信号V11は本発明の参照電圧信号に相当する。
[第4実施形態]
図8に、本実施形態のアナログ除算装置80の概略構成図を示す。本実施形態のアナログ除算装置80が第1実施形態のアナログ除算装置1(図1参照)と異なる主な点は、除数信号と被除数信号の入力端子がはじめから決められていないという点である。即ち、除算対象たる二つの入力信号(第1入力信号V1、第2入力信号V2)が入力され、このうち小さい方が被除数信号、大きい方が除数信号として自動的に設定され、その後に除算が行われる。
そのため、本実施形態のアナログ除算装置80は、第1入力信号V1が入力される第1入力端子82と、第2入力信号V2が入力される第2入力端子83と、これら各入力信号V1,V2のいずれか一方を除数信号、他方を被除数信号として出力する入力切替回路84とを備えている。
入力切替回路84は、図9に示すように構成されている。即ち、第1入力信号V1と第2入力信号V2とを比較する比較器91と、この比較結果に基づいて、V1,V2のいずれか一方を除数信号、他方を被除数信号として出力する出力スイッチ92とを備えている。このような構成により、例えば、第1入力信号V1が第2入力信号V2以上の場合は、比較器91からの出力信号がハイレベルとなる。この結果、出力スイッチ92は図9に示す状態となり、第1入力信号V1が除数信号として除数入力スイッチ15へ入力され、第2入力信号V2が被除数信号として被除数入力スイッチ16へ入力されることとなる。また、比較器91からの比較結果(ハイレベル)は、切替信号として演算回路85にも入力される。
逆に、例えば第1入力信号V1が第2入力信号V2より小さい場合は、比較器91からの出力信号がローレベルとなる。この結果、出力スイッチ92は図9に示す状態から切り替わり、第2入力信号V2が除数信号として除数入力スイッチ15へ入力され、第1入力信号V1が被除数信号として被除数入力スイッチ16へ入力されることとなる。このときも、比較器91からの比較結果(ローレベル)は切替信号として演算回路85にも入力される。
演算回路85では、入力切替回路84からの切替信号を、出力信号として(出力信号に含ませて)出力する。そして、変換テーブル87は、第1実施形態の変換テーブル34と同様、除算結果を二進数シリアルデータ列に変換するのに加え、このシリアルデータ列に、二つの入力信号V1,V2のうちどちらが除数信号でどちらが被除数信号になったかを示す情報も付加して、変換出力信号として出力端子36から出力する。
つまり、本実施形態では、入力切替回路84により、各入力端子82,83に入力された2つの入力信号V1,V2のどちらが大きいかを判断し、相対的に大きい信号を除数信号、小さい信号を被除数信号として出力する。そのため、上記第1実施形態のアナログ除算装置1では、除数信号と被除数信号の入力端子がはじめから決められており、除数信号V1が被除数信号V2より大きい場合しか除算ができなかったが、本実施形態のアナログ除算装置80によれば、入力信号の大小に関わらず、除算結果が得られるようになる。
[変形例]
以上、本発明の実施の形態を説明したが、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
例えば、上記各実施形態では、分圧回路20の分割数を「4」とした。つまり、除数信号V1(除数CDS信号)を4分圧し、除数信号V1の1/4,2/4,3/4の各分圧値を生成・出力するようにしたが、この分割数「4」というのはあくまでも一例であり、分割数は任意に決めることができる。そして、その分割数に合わせて、比較器を所望の数(分割数−1個)用意したり、被除数増幅回路24の増幅率を設定できるようにすればよい。つまり、分圧回路20の分割数がN(Nは2以上の自然数)ならば、比較器をN−1個用意すると共に、被除数増幅回路24の増幅率も「1」又は「N」に切り替え可能となるようにすればよい。
即ち、分圧回路20への入力をV、分圧回路20による分割数をNとすると、分圧回路20からは、V/N,2V/N,3V/N,・・・(N−1)V/Nの、計N−1個の分圧信号(0を含めればN個の分圧信号)が出力されることになる。この場合、比較器をN−1個用意して、分圧回路20からの分圧信号V/N,2V/N,3V/N,・・・(N−1)V/Nと被除数増幅回路24からの被除数増幅信号との比較を行えるようにすればよい。
分圧回路20による分割数Nは既述の通り適宜決めることができるが、より好ましくは、2の累乗とするのがよい。上記実施形態も分割数は2の2乗となっているが、例えば分割数を8(2の3乗)にしてもよいし、16(2の4乗)にしてもよい。分割数が8なら被除数増幅回路24の増幅率も「8」に切り替え可能となるようにし、分割数が16なら被除数増幅回路24の増幅率も「16」に切り替え可能となるようにすればよい。
また、上記第1実施形態では、図3で説明したように、ループ回数(単位除算動作の動作回数)を、除数信号V1の大きさに応じて駆動回路11が設定するようにしたが、例えば、出力端子36から出力される変換出力信号(除算結果)の出力ビット数に応じて動作回数を設定してもよいし、或いは、出力端子36から出力される変換出力信号を用いて各種処理を行う後段の機器等(例えばPCやUSBデバイス等)で扱うビット数に応じて設定してもよい。
具体的には、例えば、変換テーブル34に用意されている変換パターンが、単位除算動作3回分の出力信号まで変換可能であって、4回以上の単位除算動作を行っても4回目以降の結果が変換後のデータに反映されないのであれば、単位除算動作回数を3回或いはそれ以下に設定すればよい。
また例えば、仮に変換テーブル34にて比較的多ビットのデータ列を出力可能であってそれに応じて単位除算動作も例えば7回まで可能であったとしても、後段のPCやUSBデバイス等で扱えるビット数が少ない場合は、そのビット数に応じた回数に制限して設定すればよい。
つまり、上記各実施形態では、ループした回数(単位除算動作の回数)と分圧回路の分割数により分解能が決まるが、変換テーブル34から出力されるデータ列のビット数、もしくは後段のPC等における処理で扱われるビット数を超える分解能で除算を行っても、後段で除算結果が丸められてしまうため、その分の単位除算動作は結果として無駄になる。そのため、上記のように後段側のビット数に応じて動作回数を制限することで、無駄なループ(単位除算動作)を行わないようにすることができ、効率の良い除算を行うことが可能となる。
また、上記第2実施形態では、分圧回路20による分割数が4(即ち偶数)であったことから、限界動作回数を得るにあたり、除数信号V1とその半値V1/2との除算における2回目以降の単位除算動作の演算結果に基づいて、その演算結果が変化したか否か(つまり分圧帰還信号が2回目の単位除算動作時における分圧帰還信号から変化したか否か)を判断するようにしたが、分圧回路20による分割数が奇数の場合は、1回目の単位除算動作の演算結果に対し、2回目以降の演算結果が変化したか否か(つまり分圧帰還信号が1回目の単位除算動作時における分圧帰還信号から変化したか否か)を判断するようにしてもよい。
即ち、分圧回路20の分割数を例えば5とすると、分圧信号は0V,1V,2V,3V,4Vとなる。この場合、一回目の単位除算動作時に第1サンプルホールド回路32から出力される分圧帰還信号は2Vとなる。そして、2回目の単位除算動作時に、減算器22による減算及び被除数増幅回路24による増幅を経た新たな被除数増幅信号は2.5Vとなり、結果、前回と同じ演算(各比較器26〜28での比較)を行うことになる。つまり、単位除算動作を繰り返すと、理想的には無限に2Vが分圧帰還信号として減算器22に入力され、被除数増幅回路24からは無限に2.5Vが被除数増幅信号として出力されることになる。
しかし、アナログ除算装置50を構成する各回路のノイズや減算器22の減算誤差、被除数増幅回路24の増幅誤差、第1サンプルホールド回路32の出力誤差等により、ある回数の単位除算動作を行ったときに、各比較器26〜28による比較結果が変化して第1サンプルホールド回路32からの分圧帰還信号も2Vから他の値に変化する。
そこで、分圧回路20の分割数が奇数の場合は、限界動作回数を得る(延いては単位除算動作の回数を得る)ための除算を行う際、1回目の単位除算動作時における各比較器26〜28の比較結果(或いは第1サンプルホールド回路32からの分圧帰還信号)に対して2回目以降の単位除算動作時における結果(或いは分圧帰還信号)が変化したか否かを判断すればよい。そして、変化した場合に、その直前に実行した単位除算動作の回数を限界動作回数として設定すればよい。
さらに、上記例に限らず、ループ回数は固定してもよい。つまり、要求されている除算精度等に応じて適宜決めればよい。
また、上記各実施形態では、分圧回路20から第1サンプルホールド回路32への分圧信号として、値0(接地電位)も入力するようにしているが、これは必ずしも必要ではない。上記実施形態では、各比較器26〜28による比較結果(比較信号)がいずれも「0」の場合に分圧帰還信号として0Vを出力するために、その0Vを分圧回路20から取得するようにしているが、第1サンプルホールド回路32の内部で接地電位を取得できれば、分圧回路20からわざわざ0Vを入力しなくても、第1サンプルホールド回路32自身で0Vを出力すればよい。
更に、上記各実施形態では、分圧回路20を、抵抗分圧による構成としたが、これはあくまでも一例であり、入力される除数信号V1(除数CDS信号)を所望の分割数(分圧比)にて分圧できる限り種々の構成をとることができる。
例えば、図10に示すように、コンデンサを用いて分圧回路20を構成するようにしてもよい。図10は、コンデンサを用いた分圧回路110の概略構成を示す説明図である。図10に示す分圧回路110は、主として三つのコンデンサ(第1コンデンサC1,第2コンデンサC2,第3コンデンサC3)を備える。各コンデンサC1,C2,C3はいずれも、一端が接地されている。また、第1コンデンサC1の他端には、第1スイッチ111を介して除数信号V1(除数CDS信号)が入力される。この第1コンデンサC1の他端はまた、第2スイッチ112を介して第2コンデンサC2の他端と接続されている。更に、第2コンデンサC2の他端は第3スイッチ113を介して第3コンデンサの他端と接続されている。
そして、第1コンデンサC1の他端の電圧及び第2コンデンサC2の他端の電圧はいずれも、分圧信号生成部115に入力される。この分圧信号生成部115は、入力される上記二つの電圧から、分圧信号を生成し出力する。
具体的には、次のように動作する。まず、第1スイッチ111を閉じることにより、第1コンデンサC1を除数信号V1にて充電する。これにより、第1コンデンサC1の充電電圧はV1となる。次に、第1スイッチ111を開くと共に第2スイッチ112を閉じる。すると、第1コンデンサC1の電荷の半分が第2コンデンサC2側に移動し、両コンデンサC1,C2の電荷量が等しくなって、両コンデンサC1,C2の充電電圧はいずれもV1/2となる。次に、第2スイッチ112を開くと共に第3スイッチ113を閉じる。すると、第2コンデンサC2の電荷の半分が第3コンデンサC3側に移動し、両コンデンサC2,C3の電荷量が等しくなって、両コンデンサC2,C3の充電電圧はいずれもV1/4となる。つまりこの時点で、第1コンデンサC1の充電電圧はV1/2、第2コンデンサC2及び第3コンデンサの充電電圧はV1/4となっており、分圧信号生成部115には、第1コンデンサC1の充電電圧V1/2と、第2コンデンサC2の充電電圧V1/4が入力された状態となる。
そこで分圧信号生成部115は、この入力された二つの電圧V1/2,V1/4に基づき、三つの分圧信号を生成する。なお、分圧信号のうち3・V1/4は、入力された二つの電圧を加算することで容易に生成できる。
このようにコンデンサを用いた分圧回路110を用いれば、除数信号V1の時間的変化を吸収することが可能となり、除算の精度を上げることができる。即ち、コンデンサを用いた分圧回路110で分圧信号を生成する際は、上述した各スイッチの切り替えにより、最終的には第1スイッチ111と第2スイッチ112は開いた状態となる。そのため、仮に入力される除数信号V1がノイズ等の種々の要因で変動したとしても、第1スイッチ111が開いて入力から切り離されたあとは、その変動の影響が及ぶことはない。
一方、上記実施形態のように抵抗を用いて構成された分圧回路20は、除数信号V1がノイズ等により変動すると当然ながら分圧信号もその影響を受けることとなるが、コンデンサを用いた分圧回路110と比較して、設計や構成そのものは簡単であり、回路面積も小さくてすむ。
つまり、抵抗分圧による分圧回路20と、コンデンサを用いた分圧回路110のそれぞれに利点があるため、要求される仕様等に応じてどちらを用いるか適宜決めればよい。なおもちろん、上述した二種類の分圧回路20,110の構成は一例にすぎず、所望の分圧信号を得ることが可能であれば他の態様の回路を構成してもよい。
また、上記各実施形態では、二つのCDS回路(除数CDS回路18、被除数CDS回路23)を設けたが、これは必ずしも必要ではなく、要求される除算精度や装置全体の大きさ等を考慮して、いずれか一方にのみ設けたり、或いは双方ともに設けないようにしてもよい。例えば、できるだけ小型化を図りつつ精度向上も図るならば、いずれか一方にのみ設けることも選択肢の1つである。また例えば、CDS回路を設けなくても要求される除算精度を十分に満たせるのであれば双方共に設けないことも選択肢の1つである。
つまり、CDS回路を設けるか否か、設けるならば除数信号側或いは被除数信号側のどちらに設けるか(双方設けることも含め)といったことは、要求される除算精度や設置スペースの有無等に応じて適宜決めればよい。なお、CDS回路を設けない場合は、対応する入力スイッチ(除数入力スイッチ15或いは被除数入力スイッチ16)も不要である。
更に、上記第3実施形態では、除数信号V1及び被除数信号V2を、駆動回路71からの参照信号に従って入力増幅回路73にて増幅するよう構成したが、参照信号に基づいて増幅率を決めるのは一例であって、除数信号V1及び被除数信号V2をそれぞれ適切且つ同じ増幅率で増幅できる限り、種々の構成を取りうる。
例えば、除数信号入力端子12に入力される除数信号V1の大きさに応じて、入力増幅回路の増幅率を駆動回路が連続的或いは段階的に設定するようにしてもよい。具体的には、例えば、除数信号V1が1V〜2Vの範囲である場合は増幅率を2倍に、除数信号V1が2V〜3Vの範囲である場合は増幅率を1.5倍にする、というように、除数信号V1が小さいほど大きい増幅率を設定するようにするのである。
設定する増幅率は、除数信号V1の変動幅を想定して複数種類用意してもよいし、或いは、除数信号V1に反比例して連続的に変化するような増幅率を設定するようにしてもよい。
このようにすることで、第3実施形態のように、除数信号V1と参照信号V11の除算を行う除算器75を設ける必要がなくなる。そのため、除数信号V1が小さい場合であっても、より簡単な構成で、高精度の除算結果を得ることが可能となる。
1,50,70,80・・・アナログ除算装置、11,51,71,81・・・駆動回路、12・・・除数信号入力端子、13・・・被除数信号入力端子、15・・・除数入力スイッチ、16・・・被除数入力スイッチ、18・・・除数CDS回路、20,110・・・分圧回路、21・・・被除数切替スイッチ、22・・・減算器、23・・・被除数CDS回路、24・・・被除数増幅回路、25・・・第2サンプルホールド回路、26,27,28,91・・・比較器、30,85・・・演算回路、30a〜30d・・・XORゲート、32・・・第1サンプルホールド回路、34,57,87・・・変換テーブル、36,58・・・出力端子、52・・・動作回数設定用カウンタ、53・・・入力分圧回路、55・・・入力切替スイッチ、73・・・入力増幅回路、75・・・除算器、76・・・増幅器、78・・・外部信号入力端子、82・・・第1入力端子、83・・・第2入力端子、84・・・入力切替回路、92・・・出力スイッチ、111・・・第1スイッチ、112・・・第2スイッチ、113・・・第3スイッチ、115・・・分圧信号生成部、C1・・・第1コンデンサ、C2・・・第2コンデンサ、C3・・・第3コンデンサ、R・・・抵抗器