AD変換回路および撮像装置
【課題】カウントした計数値の誤差の発生を抑制することができるAD変換回路および撮像装置を提供する。
【解決手段】上位カウンタ101は、遅延回路から出力される第1の下位位相信号を構成する1つの出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得する。第1の上位計数値を構成する各ビットの値が反転された後、上位カウンタ101は、遅延回路から出力される第2の下位位相信号を構成する1つの出力信号をカウントクロックとしてカウントを行い、さらに下位カウンタ104から出力される上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する。変更部103は、上位カウンタ101のカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する。
【解決手段】上位カウンタ101は、遅延回路から出力される第1の下位位相信号を構成する1つの出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得する。第1の上位計数値を構成する各ビットの値が反転された後、上位カウンタ101は、遅延回路から出力される第2の下位位相信号を構成する1つの出力信号をカウントクロックとしてカウントを行い、さらに下位カウンタ104から出力される上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する。変更部103は、上位カウンタ101のカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、AD変換回路、およびこのAD変換回路を備えた撮像装置に関する。
【背景技術】
【0002】
図27は、TDC(=Time to Digital Converter)型AD変換回路と呼ばれる、時間を計測するための従来のAD変換回路の一部を抜粋したものである。図27に示す回路は、複数の遅延素子(NAND0,INV1〜INV8)をリング状に接続してなる円環遅延回路201、円環遅延回路201の出力を保持するラッチ回路202、ラッチ回路202に保持された値を2進化する2進化回路(フル・エンコーダ回路)203、円環遅延回路201の出力の1つをカウントクロックとしてカウントを行うカウンタ回路204、2進化回路203およびカウンタ回路204の出力を保持するメモリー回路205で構成される。
【0003】
次に、AD変換動作を説明する。図28は、図27に示す回路の動作タイミングを示している。スタートパルスStartPの論理状態がL状態からH状態になることで、円環遅延回路201を構成する遅延素子の論理状態が順に変化する。これによりパルスが円環遅延回路201を周回する。所定時間経過後に、ラッチ回路202は円環遅延回路201の出力を保持(ラッチ)する。図28に示すように、円環遅延回路201の出力は9個の状態(状態0〜状態8)のいずれかに対応する。ラッチ回路202に保持(ラッチ)された円環遅延回路201の出力(下位位相信号)は2進化回路203によりフル・エンコード(一括エンコード)され、2進化データ(下位計数値)が生成される。カウンタ回路204は、遅延素子INV8の出力をカウントクロックとしてカウントを行い、カウント値(上位計数値)を生成する。下位計数値および上位計数値はメモリー回路205に保持され、デジタルデータとして後段の回路に出力される。
【0004】
上記のようなAD変換回路の適用先として、撮像装置が挙げられる。特許文献1には、画素列ごとに対応して設けられたカラム部内にAD変換回路を配置し、画素から出力される信号をAD変換する例が記載されている。
【0005】
図29は、特許文献1に記載された従来例に係る(C)MOS撮像装置の概略構成を示している。撮像装置1001は、撮像部1002、垂直選択部1012、読出電流源部1005、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、出力部1017、および制御部1020で構成されている。この撮像装置1001は、図27に示す回路の一部をカラム処理部1015内の列AD変換部1016に備えており、列AD変換部1016によりAD変換を行う。
【0006】
制御部1020は、垂直選択部1012、読出電流源部1005、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、および出力部1017などの各部を制御する。撮像部1002は、光電変換素子を有する単位画素1003が行列状に配置されて構成され、入射される電磁波の大きさに応じた画素信号を生成し、列毎に設けられた垂直信号線1013へ出力する。
【0007】
垂直選択部1012は、撮像部1002の各単位画素1003の駆動に際して、行制御線1011を介して撮像部1002の行アドレスや行走査の制御を行う。水平選択部1014は、カラム処理部1015の列AD変換部1016の列アドレスや列走査の制御を行う。読出電流源部1005は、撮像部1002からの画素信号を電圧信号として読み出すための電流源である。
【0008】
カラム処理部1015は、撮像部1002の列毎に設けられた列AD変換部1016を有する。列AD変換部1016は、撮像部1002の各単位画素1003から列毎に出力される画素信号であるアナログ信号をデジタルデータに変換して出力する。クロック生成部1018は、例えば円環遅延回路(図27の円環遅延回路201に対応)で構成され、カウントクロックを出力する。ランプ部1019は、例えば積分回路やDAC回路で構成され、時間が経過するにつれて傾斜状に変化する参照信号を生成する。
【0009】
水平選択部1014は、シフトレジスタやデコーダなどによって構成され、カラム処理部1015における各列AD変換部1016の列アドレスや列走査の制御を行う。これにより、AD変換されたデジタルデータは順に水平信号線を経由して出力部1017に出力される。
【0010】
次に、列AD変換部1016の構成について説明する。各々の列AD変換部1016は略同一に構成され、比較部1110およびカウンタ1101(図27のカウンタ回路204に対応)を有する構成となっている。
【0011】
比較部1110は、コンパレータ回路で構成され、撮像部1002の単位画素1003から出力される画素信号と参照信号とを比較し、例えば参照信号が画素信号よりも大なるときはHighレベル、例えば参照信号が画素信号よりも小なるときはLowレベルを出力する。カウンタ1101は、バイナリカウンタ回路で構成され、比較部1110が比較を開始してから比較を終了するまでの比較時間を計測する。これにより、画素信号の大きさに応じた比較時間の計測値がカウンタ1101の計数値として得られる。
【0012】
次に、AD変換動作について説明する。単位画素1003の具体的な動作については説明を省略するが、単位画素1003からは画素信号としてリセットレベルと信号レベルとが出力される。
【0013】
まず、単位画素1003からのリセットレベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点の計数値がリセットレベルのデジタルデータとなる。その後、カウンタ1101の計数値が反転される。
【0014】
続いて、単位画素1003からの信号レベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点のカウンタ1101の計数値が信号成分(信号レベルからリセットレベルを減算した信号)に応じたデジタルデータとなる。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】特開2011−23887号公報
【発明の概要】
【発明が解決しようとする課題】
【0016】
図29に示す撮像装置では、図27に示すカウンタ回路204に相当するカウンタ1101がカウントを実施することで、デジタルデータの上位ビットを構成する上位計数値が得られるが、図27に示すラッチ回路202および2進化回路203に相当する構成がないため、デジタルデータの下位ビットを構成する下位計数値を得ることはできない。このため、図29に示す撮像装置では高精度なデジタルデータを得ることができない。
【0017】
図29の列AD変換部1016に対応する部分に、上位計数値および下位計数値の両方を得るための回路を配置することで、高精度なデジタルデータを得ることが可能となる。このような回路配置の一形態として、上位計数値を得るための上位カウンタと、下位計数値を得るための下位カウンタとを、列AD変換部1016に対応する部分に配置することが考えられる。
【0018】
この場合、上位カウンタは複数の遅延素子の1つの出力信号をカウントクロックとしてカウントを行い、下位カウンタは複数の遅延素子の出力信号の状態に応じた信号をカウントクロックとしてカウントを行う。下位カウンタがカウントする下位計数値のMSB(Most Significant Bit)に桁上りあるいは桁下りが発生した場合、その分だけ上位計数値を調整するため、下位カウンタのMSBの出力信号をカウントクロックとして上位カウンタがカウントを行う。
【0019】
したがって、上位カウンタに入力されるカウントクロックを複数の遅延素子の1つの出力信号と下位カウンタのMSBの出力信号との間で切り換える必要がある。しかし、カウントクロックの切換えに伴う以下の課題がある。ここでは、上位カウンタがカウントクロックの立下りでカウントを行う(カウントクロックがHigh状態(以下、H状態)からLow状態(以下、L状態)に変化したときにカウントを行う)場合を例として説明を行う。
【0020】
AD変換動作は非同期動作であり、参照信号と画素信号との比較が終了した時点(比較終了時点)のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態はH状態またはL状態である。例えば、比較終了時点のカウントクロックの論理状態がH状態であり、カウントクロックが切り換えられて下位カウンタからL状態のカウントクロックが上位カウンタに入力された場合、この切換えの前後でカウントクロックの論理状態がH状態からL状態に変化するため、上位カウンタの上位計数値が変化する。一方、比較終了時点のカウントクロックの論理状態がL状態であり、カウントクロックが切り換えられて下位カウンタからL状態のカウントクロックが上位カウンタに入力された場合、この切換えの前後でカウントクロックの論理状態は変化しないため、上位カウンタの上位計数値は変化しない。
【0021】
上位カウンタは、下位カウンタから出力されるカウントクロックの状態つまり下位計数値における桁上りまたは桁下りの有無に応じてカウントを行う。しかし、上記のように、上位カウンタの上位計数値の変化の有無は、切換え後のカウントクロック(下位カウンタから出力されるカウントクロック)の論理状態だけでなく、切換え前のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態にも依存する。このため、比較終了時点のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態に応じて上位カウンタの上位計数値の誤差が発生する場合がある。このように、上位カウンタに入力されるカウントクロックの切換えによる上位計数値の誤差が発生するという課題がある。
【0022】
本発明は、上述した課題に鑑みてなされたものであって、カウントした計数値の誤差の発生を抑制することができるAD変換回路および撮像装置を提供することを目的とする。
【課題を解決するための手段】
【0023】
本発明は、上記の課題を解決するためになされたもので、時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算部と、前記第1の下位計数信号をカウントクロックとしてカウントを行って第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行って第2の下位計数値を取得し、当該第2の下位計数値のフラグ用ビットに基づく上位用カウントクロックを出力する第1のバイナリカウンタで構成される下位カウンタと、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成される上位カウンタと、前記上位カウンタのカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する変更部と、を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路である。
【0024】
また、本発明のAD変換回路において、前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値をセットするデータセット機能を有することを特徴とする。
【0025】
また、本発明のAD変換回路は、前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする。
【0026】
また、本発明のAD変換回路において、前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする。
【0027】
また、本発明は、光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、上記のAD変換回路と、を備え、前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置である。
【発明の効果】
【0028】
本発明によれば、上位カウンタのカウントクロックの切換えの際にカウントクロックの論理状態を所定の状態に変更する変更部を備えることによって、カウントした計数値の誤差の発生を抑制することができる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1の実施形態による撮像装置の構成を示すブロック図である。
【図2】本発明の第1の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図3】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図4】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図5】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図6】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図7】本発明の第1の実施形態におけるバイナリカウンタ回路の構成を示す回路図である。
【図8】本発明の第1の実施形態における演算回路およびその周辺の構成を示すブロック図である。
【図9】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図10】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図11】本発明の第2の実施形態による撮像装置の構成を示すブロック図である。
【図12】本発明の第2の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図13】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図14】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図15】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図16】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図17】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図18】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図19】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図20】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図21】本発明の第4の実施形態による撮像装置の構成を示すブロック図である。
【図22】本発明の第4の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図23】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図24】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図25】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図26】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図27】従来のAD変換回路の一部構成を示すブロック図である。
【図28】従来の動作を示すタイミングチャートである。
【図29】従来の撮像装置の構成を示すブロック図である。
【発明を実施するための形態】
【0030】
以下、図面を参照し、本発明の実施形態を説明する。
【0031】
(第1の実施形態)
まず、本発明の第1の実施形態を説明する。図1は、本実施形態による(C)MOS撮像装置の構成の一例を示している。図1に示す撮像装置1は、撮像部2、垂直選択部12、読出電流源部5、クロック生成部18、ランプ部19(参照信号生成部)、カラム処理部15、水平選択部14、出力部17、および制御部20で構成されている。
【0032】
撮像部2は、入射される電磁波の大きさに応じた信号を生成し出力する単位画素3が複数、行列状に配置されている。垂直選択部12は、撮像部2の各行を選択する。読出電流源部5は、撮像部2からの信号を電圧信号として読み出す。クロック生成部18は各クロックを生成する。ランプ部19は、時間の経過とともに増加または減少する参照信号(ランプ波)を生成する。カラム処理部15は、ランプ部19と参照信号線を介して接続される。水平選択部14は、AD変換されたデータを水平信号線に読み出す。出力部17は、水平信号線に接続されている。制御部20は各部を制御する。
【0033】
図1では、簡単のため4行×6列の単位画素3から構成される撮像部2の場合について説明しているが、現実には、撮像部2の各行や各列には、数十から数万の単位画素3が配置されることになる。尚、図示を割愛するが、撮像部2を構成する単位画素3は、フォトダイオード/フォトゲート/フォトトランジスタなどの光電変換素子、およびトランジスタ回路によって構成されている。
【0034】
以下では、各部のより詳細な説明を行う。撮像部2は、単位画素3が4行6列分だけ2次元に配置されるとともに、この4行6列の画素配列に対して行ごとに行制御線11が配線されている。行制御線11の各一端は、垂直選択部12の各行に対応した各出力端に接続されている。垂直選択部12は、シフトレジスタあるいはデコーダなどによって構成され、撮像部2の各単位画素3の駆動に際して、行制御線11を介して撮像部2の行アドレスや行走査の制御を行う。また、撮像部2の画素配列に対して列ごとに垂直信号線13が配線されている。
【0035】
読出電流源部5は、撮像部2からの信号を電圧信号として読み出すための電流源で構成されている。
【0036】
カラム処理部15は、例えば撮像部2の画素列ごと、即ち垂直信号線13ごとに設けられた列AD変換部16を有し、撮像部2の各単位画素3から画素列ごとに垂直信号線13を介して読み出されるアナログの画素信号をデジタルデータに変換する。尚、本例では、撮像部2の画素列に対して1対1の対応関係をもって列AD変換部16を配置する構成をとっているが、これは一例に過ぎず、この配置関係に限定されるものではない。例えば、複数の画素列に対して列AD変換部16を1つ配置し、この1つの列AD変換部16を複数の画素列間で時分割にて使用する構成をとることも可能である。カラム処理部15は、後述するランプ部19およびクロック生成部18と共に、撮像部2の選択画素行の単位画素3から読み出されるアナログの画素信号をデジタルの画素データに変換するアナログ-デジタル変換手段を構成している。このカラム処理部15、特に列AD変換部16の詳細については後述する。
【0037】
ランプ部19は、例えば積分回路によって構成され、制御部20による制御に従って、時間が経過するにつれてレベルが傾斜状に変化する、いわゆるランプ波を生成し、参照信号線を介して比較部110の入力端子の一方に供給する。尚、ランプ部19としては、積分回路を用いたものに限られるものではなく、DAC回路を用いても構わない。ただし、DAC回路を用いてデジタル的にランプ波を生成する構成をとる場合には、ランプ波のステップを細かくする、あるいはそれと同等な構成をとる必要がある。
【0038】
水平選択部14は、シフトレジスタあるいはデコーダなどによって構成され、カラム処理部15の列AD変換部16の列アドレスや列走査の制御を行う。この水平選択部14による制御に従って、列AD変換部16でAD変換されたデジタルデータは順に水平信号線に読み出される。
【0039】
クロック生成部18は、複数の遅延ユニット(反転素子)が接続された遅延回路であるVCO100で構成される。VCO100を構成する遅延ユニットが例えば8段接続されていれば、VCO100は8相クロックCK0、CK1、CK2、CK3、CK4、CK5、CK6、CK7を出力する。これらの遅延ユニットが出力する信号は、後述する下位位相信号を構成する。尚、VCO100を構成する遅延回路は、複数個の反転素子がリング状に接続された円環遅延回路であっても構わない。その場合、対称発振回路(例えば、図27に示した円環遅延回路201)と同様に円環遅延回路自体は奇数個の遅延ユニットで構成されるが、その出力は等価的に偶数(特に、2のべき乗)個である、所謂、非対称発振回路を用いることが望ましい。更に、円環遅延回路自体が偶数個(特に、2のべき乗個)の遅延ユニットで構成されるRDL(=Ring Delay Line)回路や円環遅延回路自体が偶数個(特に、2のべき乗個)の遅延ユニットで構成され、更に遅延ユニットを構成する全差動型反転回路の最終段の出力がそれぞれ初段の入力の逆側に帰還されて構成される、所謂、全差動型発振回路を用いても構わない。
【0040】
出力部17は、2進化したデジタルデータを出力する。また、出力部17は、バッファリング機能以外に、例えば黒レベル調整、列バラツキ補正、色処理などの信号処理機能を内蔵しても構わない。更に、nビットパラレルのデジタルデータをシリアルデータに変換して出力するようにしても構わない。
【0041】
制御部20は、ランプ部19、クロック生成部18、垂直選択部12、水平選択部14、出力部17などの各部の動作に必要なクロックや所定タイミングのパルス信号を供給するTG(=Timing Generator:タイミングジェネレータ)の機能ブロックと、このTGと通信を行うための機能ブロックとを備える。
【0042】
次に、列AD変換部16の構成について説明する。列AD変換部16は各々、撮像部2の各単位画素3から垂直信号線13を介して読み出されるアナログの画素信号を、ランプ部19から与えられる、AD変換するためのランプ波と比較することにより、リセットレベル(基準レベル)や信号レベルの各大きさに対応した時間軸方向の大きさ(パルス幅)を持つパルス信号を生成する。そして、このパルス信号のパルス幅の期間に対応したデータを画素信号の大きさに応じたデジタルデータとすることでAD変換を行う。
【0043】
以下では、列AD変換部16の構成の詳細について説明する。列AD変換部16は列ごとに設けられており、図1では6個の列AD変換部16が設けられている。各列の列AD変換部16は同一の構成となっている。列AD変換部16は、比較部110、ラッチ部108、演算部106と下位カウンタ104を含む下位計数部、カウントクロックを切り換える切換え部109、上位計数部である上位カウンタ101、および変更部103で構成される。ここで、下位カウンタ104および上位カウンタ101は、ラッチ機能を合わせ持つバイナリカウンタ回路を想定している。
【0044】
比較部110は、撮像部2の単位画素3から垂直信号線13を介して出力されるアナログの画素信号に応じた信号電圧と、ランプ部19から供給されるランプ波のランプ電圧とを比較することによって、画素信号の大きさを時間軸方向の情報(パルス信号のパルス幅)に変換する。比較部110の比較出力は、例えばランプ電圧が信号電圧よりも大なるときにはHighレベル(Hレベル)になり、ランプ電圧が信号電圧以下のときにはLowレベル(Lレベル)になる。
【0045】
ラッチ部108は、比較部110の比較出力を受けて、この比較出力が反転するタイミングで、クロック生成部18で生成された論理状態(下位位相信号)をラッチ(保持/記憶)する。演算部106は、ラッチ部108にラッチされた下位位相信号に基づいて、下位カウンタ104のカウントクロックとなる下位計数信号を生成する。下位カウンタ104は、下位計数信号をカウントクロックとしてカウントを行う。これによって、デジタルデータの下位ビットを構成する下位計数値が得られる。図3に示すように、下位カウンタ104は下位カウンタ104aおよび下位カウンタ104bで構成される。
【0046】
上位カウンタ101は、クロック生成部18から出力されラッチ部108を通して入力されるクロック信号(上位計数信号)をカウントクロック(第1のカウントクロック)としてカウントを行う。また、上位カウンタ101は、下位カウンタ104の出力信号をカウントクロック(第2のカウントクロック)として、下位計数値の桁上りまたは桁下りに基づくカウントを行う。これによって、デジタルデータの上位ビットを構成する上位計数値が得られる。
【0047】
切換え部109は、上位カウンタ101に入力されるカウントクロックを、ラッチ部108を介して出力される第1のカウントクロックと、下位カウンタ104から出力される第2のカウントクロックとの間で切り換える。変更部103は、カウントクロックの切り換え時にラッチ部108から出力されるカウントクロックの論理状態を所定の論理状態に変更する。
【0048】
ここで、ラッチ部108にラッチされた下位位相信号は、例えば8ビットのデータである。その場合、下位カウンタ104a,104bを含む下位カウンタ104は4ビットのカウンタ回路である。下位カウンタ104aが1ビット目〜3ビット目の下位計数値をカウントし、下位カウンタ104bが4ビット目(フラグ用ビット)の下位計数値をカウントする。また、上位カウンタ101は、例えば9ビットのカウンタ回路である。尚、これらは一例であって、これに限る必要はない。
【0049】
次に、本例の動作について説明する。ここでは、単位画素3の具体的な動作については説明を省略するが、周知のように単位画素3ではリセットレベルと信号レベルとが出力される。
【0050】
AD変換は、以下のようにして行われる。例えば所定の傾きで下降するランプ波と、単位画素3からの画素信号であるリセットレベルあるいは信号レベルの各電圧とを比較し、この比較処理で用いるランプ波が生成された時点から、リセットレベルや信号レベルの各電圧とランプ波(ランプ電圧)とが一致するまでの期間を、ラッチ部108を介して出力されるVCO100からのクロック(例えばCK7)によりカウントするとともに、一定の位相差を有する多相クロック(CK0〜CK7)の論理状態で計測することによって、リセットレベルあるいは信号レベルの各大きさに対応したデジタルデータを得る。VCOからのクロックの信号数(本例では8)は、2のべき乗であることが望ましい。
【0051】
ここで、撮像部2の選択行の各単位画素3からは、アナログの画素信号として、1回目の読出し動作で画素信号の雑音を含むリセットレベルが読み出され、その後、2回目の読出し動作で信号レベルが読み出される。そして、リセットレベルと信号レベルとが垂直信号線13を通して列AD変換部16に時系列で入力される。尚、1回目の読出し動作で信号レベルが読み出され、その後の2回目の読出し動作でリセットレベルが読み出されても構わない。以下では、1回目および2回目の各読出し動作とその後の減算(CDS処理)の詳細について説明する。説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。
【0052】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【0053】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき(第1のタイミング)に、比較出力を反転させる。この第1のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【0054】
続いて、演算部106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ104へ出力する。下位カウンタ104aは、第1の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ104bは、下位カウンタ104aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。
【0055】
下位カウンタ104が保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値は各計数値のカウント終了後に反転される。
【0056】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【0057】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき(第2のタイミング)に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【0058】
続いて、演算部106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ104aへ出力する。下位カウンタ104aは、第2の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ104bは、下位カウンタ104aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。
【0059】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。2の補数を用いた2進数の減算を行うことによる上位計数値の調整については後述する。まず、変更部103が切換え前のカウントクロック(変更部103の出力信号)をH状態とした後、切換え部109がカウントクロックを切り換える。切換え後の第2のカウントクロックがL状態(下位カウンタ104bの反転出力がL状態)であれば上位カウンタ101の上位計数値が1加算され、第2のカウントクロックがH状態(下位カウンタ104bの反転出力がH状態)であれば上位カウンタ101の上位計数値は加算されない。
【0060】
ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態が出力され、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力されるとした。また、本例の場合、切換え後のカウントクロックである第2のカウントクロックが下位カウンタ104bの反転出力であるとした。変更部103がカウントクロックをH状態に変更することによって、切換え前のカウントクロック(ラッチ部108の出力信号)の論理状態によらず、第2のカウントクロックがL状態のときのみ上位カウンタ101の上位計数値が1加算されるので、計数値の誤差の発生を抑制することができる。
【0061】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。最後に、下位カウンタ104が保持している第2の下位計数値を構成する各ビットの値が反転され、反転された第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【0062】
次に、列AD変換部16の各構成の詳細について説明する。図2は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図2に示す構成について説明する。図2に示す各構成は、図1に示した列AD変換部16内の各構成に対応しており、ラッチ部108、演算部106、下位カウンタ104、変更部103、切換え部109、上位カウンタ101が設けられている。演算部106および下位カウンタ104は下位計数部を構成する。上位カウンタ101は上位計数部を構成する。図1のランプ部19、VCO100、比較部110と図2に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【0063】
ラッチ部108は、比較部110からの比較出力に相当する制御信号Holdにより、遅延ユニットを含むVCO100の出力であるクロック信号CK0〜CK7の所定のタイミングでの論理状態(下位位相信号)をラッチするラッチ回路D_0〜D_7を有する。各ラッチ回路D_0〜D_7の論理状態は、制御信号LRSTによりリセットされる。ラッチ部108がラッチした下位位相信号は演算部106に出力される。また、ラッチ部108のラッチ回路D_7に入力されるクロック信号CK7は、上位カウンタ101がカウントを行うためのカウントクロックとして、変更部103を介して切換え部109に出力される。
【0064】
演算部106は、制御信号CTLにより、ラッチ部108から出力された下位位相信号に基づいて下位計数信号を生成する。下位カウンタ104はダウンカウントモードでカウントを行うバイナリカウンタ回路で構成され、上位カウンタ101はアップカウントモードでカウントを行うバイナリカウンタ回路で構成されている。下位カウンタ104は、下位カウンタ104aと、正/負を判断するためのフラグ用の下位カウンタ104bとで構成されている。切換え部109は、制御信号SELにより、上位カウンタ101に入力されるカウントクロックを切り換える。
【0065】
尚、下位位相信号から下位計数信号を生成する場合、例えば図8に示すような構成を用いて、サーモコードに基づいたパルスと基準クロックとの論理演算により下位計数信号を生成することが好ましいが、この構成に限る必要はない。尚、図8の詳細については後段で詳しく説明する。
【0066】
下位カウンタ104(104a,104b)/上位カウンタ101には、制御信号CLRST/CHRST、および制御信号REV[*](*:0〜12,flag)が入力される。制御信号CLRST/CHRSTは、下位カウンタ104(104a,104b)/上位カウンタ101の下位計数値/上位計数値をリセットする信号である。制御信号REV[*](*:0〜12,flag)は、下位カウンタ104(104a,104b)/上位カウンタ101の下位計数値/上位計数値をトグルさせる信号である。下位カウンタ104(104a,104b)/上位カウンタ101の構成については、図7を参照して後述する。
【0067】
変更部103には、ラッチ回路D_7を介して出力されるクロック(CK7)および制御信号CLKCTLが入力される。変更部103は、制御信号CLKCTLに応じて、入力されるクロックCK7の論理状態を所定の論理状態(本例の場合、H状態)に変更してカウントクロックcntckとして出力する。変更部103は、例えば2入力OR回路等の論理回路で構成されるが、これに限る必要はない。
【0068】
次に、図2に示した構成の動作について具体例を用いて説明する。前述したように、説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。遅延回路の出力である8個のクロック信号に基づく下位位相信号の状態数は全8状態(状態0〜7)となる。ダウンカウントモードで計数した場合、例えば状態0であれば計数値は3’b[0]000、例えば状態7であれば計数値は3’b[1]001となる。
【0069】
上記の計数値の表記について説明する。“3’b”は計数値が3ビットの2進数であることを示す。下位カウンタ104a,104bの出力を例えば“[0]000”のように表記する。“[0]”は下位カウンタ104bの出力を示し、“000”は下位カウンタ104aの出力を示す。上位カウンタ101の計数値についても略同様の表記を使用する。
【0070】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0071】
本例では、下位カウンタ104(104a,104b)はダウンカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0072】
一方、本例では、上位カウンタ101はアップカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。ただし、1回目の読出し時の反転後に必要な1加算と、下位計数値の桁上り/桁下りによる上位計数値の調整とが必要である。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。
【0073】
図3〜図6は、本例の動作に係る各信号の波形を示している。図3および図4は1回目の読出し時の各信号の波形を示し、図5および図6は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0074】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0075】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103が上位カウンタ101のカウントクロックの論理状態を変更するクロック設定期間と、上位カウンタ101のカウントクロックの切換え、下位計数値の桁上り/桁下りによる上位計数値の調整、および2の補数を用いた2進数の減算を行うことによる上位計数値の調整を行う判定期間とを含む。
【0076】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0077】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHRSTにより、上位カウンタ101の計数値がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【0078】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。
【0079】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。本例では、値を反転した後に1を加算していない。
【0080】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0081】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。本例では、値を反転した後に1を加算していない。
【0082】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHRSTによる上位カウンタ101の計数値のリセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。
【0083】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1110となる。
【0084】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1111となる。
【0085】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0086】
まず、フラグ期間内のクロック設定期間において、制御信号CLKCTLがL状態からH状態となることで、切換え前のカウントクロックがH状態(変更部103の出力がH状態)となる。続いて、フラグ期間内の判定期間において、制御信号SELがH状態に設定され、カウントクロックが切り換わる。切換え後のカウントクロックである下位カウンタ104bの反転出力はL状態であり、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0111となる。
【0087】
続いて、下位カウンタ104a,104bのみ計数値が反転される(図3〜図6では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値に関しては、値を反転した後に1を加算していない。また、上位計数値に関しては、値を反転した後の1加算に係る調整は、カウントクロックの切換え時に下位計数値の桁上り/桁下りによる調整と兼ねて行われている。
【0088】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0089】
次に、下位カウンタ104(104a,104b)および上位カウンタ101に使用されるバイナリカウンタ回路の詳細を説明する。図7は、下位カウンタ104(104a,104b)および上位カウンタ101を構成する1ビット分のカウンタ回路Bit[m](m:0〜n-1)の構成の一例を示している。図7に示すカウンタ回路Bit[m]はフリップフロップDFFおよびAND回路AND1で構成されている。このカウンタ回路がn個接続されるとnビットのカウンタ回路が構成される。
【0090】
フリップフロップ回路DFFはDフリップフロップで構成されている。AND回路AND1は、カウントクロックCK[m-1]と制御信号REV[*](*:0〜11,flag)のAND演算を行うことにより、カウントクロックを有効/無効にする。カウントモードがアップカウントモードである場合、カウンタ回路Bit[m]の出力Qが後段のカウンタ回路に出力され、カウントモードがダウンカウントモードである場合、カウンタ回路Bit[m]の反転出力QBが後段のカウンタ回路に出力される。
【0091】
カウンタ回路Bit[m]がカウントを行う場合(図3〜図6の上位計数期間および下位計数期間を参照)、制御信号REV[*]がH状態となることでカウントクロックCK[m-1]が有効となり、フリップフロップ回路DFFの出力Qおよび反転出力QBはカウントクロックCK[m-1]の変化に応じて変化する。また、カウンタ回路Bit[m]の反転動作は以下のようにして行われる(図3〜図6の上位反転期間を参照)。カウント動作後、AND回路AND1の出力がL状態またはH状態を保っている場合や、AND回路AND1の出力がL状態からH状態に変化する場合、フリップフロップ回路DFFの出力Qおよび反転出力QBの出力は変化せずに一定の状態を保つ。また、制御信号REV[*]がH状態からL状態に変化することで、AND回路AND1の出力がH状態からL状態に変化すると、フリップフロップ回路DFFの出力Qおよび反転出力QBの出力が反転する。
【0092】
次に、演算部106の詳細について説明する。図8は、演算部106における下位計数信号の生成について説明するために、演算部106の周辺の構成を含む詳細構成の一例を示している。図8に示す構成のうち、ラッチ部108および下位カウンタ104については前述した通りである。以下では、演算部106の構成について説明する。
【0093】
図8に示すように、演算部106は、ラッチ回路D_TMP、AND回路AND2、RSラッチRS1、およびAND回路AND3で構成される。ラッチ回路D_TMPは、パルス信号TMPLATに従って、ラッチ回路D_0〜D_7の出力を所定の順番で一時的に保持する。また、ラッチ回路D_TMPは制御信号LATSETによってリセットされる。AND回路AND2は、ラッチ回路D_0〜D_7の何れか1つの出力とラッチ回路D_TMPの反転出力QBとのAND演算を行う。
【0094】
RSラッチRS1にはAND回路AND2の出力と制御信号RSLRSTが入力される。RSラッチRS1は、制御信号RSLRSTによってリセットされた後、AND回路AND2の出力がL状態からH状態に変化するときに出力QがL状態からH状態に変化し、その後、制御信号RSLRSTによってリセットされるまで、AND回路AND2の出力にかかわらず出力QをH状態に保つ。AND回路AND3は、RSラッチRS1の出力と計数信号LATCNT(基準クロック)とのAND演算を行う。
【0095】
次に、演算部106の動作について説明する。図9および図10は、下位計数信号生成時の動作を示している。図9は、遅延回路から出力されるクロック信号CK0〜CK7の波形を示している。図9においてパルス信号STARTPは、遅延回路に入力されるパルス信号である。クロック信号CK0〜CK7の状態は、図9に示す状態0〜状態7のいずれかとなる。ラッチ部108のラッチ回路D_0〜D_7は、制御信号Holdにより、クロック信号CK0〜CK7の状態(下位位相信号)をラッチする。図10は、下位計数信号を生成する動作に係る各信号の波形を示している。
【0096】
以下では、第1の下位位相信号から第1の下位計数信号を生成し、第2の下位位相信号から第2の下位計数信号を生成する具体例を説明する。ここで、第1の下位位相信号に相当する状態は状態7とし、第2の下位位相信号に相当する状態は状態3とする。本例の場合、第1の下位位相信号から第1の下位計数信号は7パルス生成され、第2の下位位相信号から第2の下位計数信号は3パルス生成される。生成された各パルスは下位カウンタ104のカウントクロックとして入力される。
【0097】
まず、動作の概略を説明する。制御信号SW0〜SW7およびパルス信号TMPLATにより、下位位相信号に応じたパルスが生成され、そのパルスに基づいてサーモコード(本例の場合、H状態からL状態へ変化するエッジ位置)が検出される。ラッチ回路D_*(*は、0〜7の何れか)の出力Qとラッチ回路D_TMPの反転出力QBのAND演算の結果がH状態となった場合、そのH状態がRSラッチRS1に入力されることでサーモコードが検出される。また、RSラッチRS1の出力と計数信号LATCNTのAND演算の結果として下位計数信号のパルスが生成され、下位カウンタ104のカウントクロックとなる。
【0098】
以下では、詳細な動作を説明する。尚、下位カウンタ104の詳細な動作については既に説明したため、以下では下位カウンタ104の動作の説明を省略する。所定の条件を満足する第1の時点(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミングに相当)で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK0〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第1の下位位相信号に対応する。
【0099】
続いて、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号CLRSTにより下位カウンタ104の計数値がリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。この時点のRSラッチRS1の出力QはL状態である。
【0100】
続いて、制御信号SW*(*:0〜7)が所定の順にONとなる。制御信号SW7がONされると、ラッチ回路D_7からL状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、制御信号LATSETによりリセットされたときのL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_7のL状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるため、RSラッチRS1の出力QはL状態のままである。
【0101】
続いて、制御信号SW6がONされると、ラッチ回路D_6からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_7の出力(L)に基づくH状態となる。ラッチ回路D_TMPのH状態の出力とラッチ回路D_6のH状態の出力により、AND回路AND2の出力はH状態となる。RSラッチRS1の入力SはH状態となるため、RSラッチRS1の出力QはH状態となる。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2から1パルス分のカウントクロックが出力される。
【0102】
続いて、制御信号SW5がONされると、ラッチ回路D_5からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_6の出力(H)に基づくL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_6のH状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるが、RSラッチRS1に入力される制御信号RSLRSTがL状態であるため、RSラッチRS1の出力QはH状態のままである。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2から1パルス分のカウントクロックが出力される。
【0103】
これ以降、制御信号SW4〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保つため、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW4〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ104のカウントクロックとなる第1の下位計数信号が合計で7パルス生成される。以上により、第1の下位計数信号の生成が終了する。
【0104】
続いて、所定の条件を満足する第2の時点(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミングに相当)で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK0〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第2の下位位相信号に対応する。
【0105】
続いて、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。ここでは、下位カウンタ104のリセットは行わない。この時点のRSラッチRS1の出力QはL状態である。
【0106】
続いて、制御信号SW*(*:0〜7)が所定の順にONとなる。制御信号SW7がONされると、ラッチ回路D_7からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、制御信号LATSETによりリセットされたときのL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_7のH状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるため、RSラッチRS1の出力QはL状態のままである。
【0107】
続いて、制御信号SW6がONされると、ラッチ回路D_6からL状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_7の出力(H)に基づくL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_6のL状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SがL状態のままであるため、RSラッチRS1の出力QはL状態のままである。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスは出力されない。
【0108】
これ以降、制御信号SW5〜SW3が順にONされるが、RSラッチRS1の入力SはL状態を保ち、RSラッチRS1の出力QはL状態を保つ。このため、制御信号SW5〜SW3が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスは出力されない。
【0109】
続いて、制御信号SW2がONされると、ラッチ回路D_2からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_3の出力(L)に基づくH状態となる。ラッチ回路D_TMPのH状態の出力とラッチ回路D_2のH状態の出力により、AND回路AND2の出力はH状態となる。RSラッチRS1の入力SはH状態となるため、RSラッチRS1の出力QはH状態となる。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。
【0110】
これ以降、制御信号SW1〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保ち、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW1〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ104のカウントクロックとなる第2の下位計数信号が合計で3パルス生成される。以上により、第2の下位計数信号の生成が終了する。図8に示す構成により、下位位相信号から下位計数信号を生成する回路を簡易な回路構成で実現することができる。
【0111】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態では下位カウンタ104a,104bはダウンカウントモード、上位カウンタ101はアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0112】
また、遅延回路として、複数の遅延ユニットをリング状に接続した円環遅延回路を使用することによって、下位位相信号の各位相の精度を向上することができる。また、本実施形態のAD変換回路を撮像装置に適用することによって、高画質な画像を得ることができる。
【0113】
(第2の実施形態)
次に、本発明の第2の実施形態を説明する。図11は、本実施形態による(C)MOS撮像装置の構成の一例を示している。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様であるので説明を省略する。
【0114】
次に、列AD変換部16の各構成の詳細について説明する。図12は、図11の列AD変換部16について更に説明するために、比較部110を除いて抜粋した詳細構成の一例を示している。図12では、図2に対して変更部103の接続が変更されている。変更部103は、カウントクロックの切り換え時に下位カウンタ104bから出力されるカウントクロックの論理状態を所定の論理状態に変更する。また、図12では、クロック信号cntckを所定の論理状態にする制御信号CLKENが設けられている。上記以外は、図2の構成と略同様であるので説明を省略する。
【0115】
次に、図12に示した構成の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104(104a,104b)のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104(104a,104b)はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。
【0116】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。本例における2進数の減算の原理は第1の実施形態と同様である。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。
【0117】
図13〜図16は、本例の動作に係る各信号の波形を示している。図13および図14は1回目の読出し時の各信号の波形を示し、図15および図16は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0118】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0119】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、下位計数値の桁上り/桁下りによる上位計数値の調整、および2の補数を用いた2進数の減算を行うことによる上位計数値の調整を行う判定期間を含む。
【0120】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0121】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHRSTにより、上位カウンタ101の計数値がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【0122】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。
【0123】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。本例では、値を反転した後に1を加算していない。
【0124】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0125】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。本例では、値を反転した後に1を加算していない。
【0126】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHRSTによる上位カウンタ101の計数値のリセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。
【0127】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1110となる。
【0128】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1111となる。
【0129】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0130】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの反転出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0111となる。
【0131】
続いて、下位カウンタ104a,104bのみ計数値が反転される(図13〜図16では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値に関しては、値を反転した後に1を加算していない。また、上位計数値に関しては、値を反転した後の1加算に係る調整は、カウントクロックの切換え時に下位計数値の桁上り/桁下りによる調整と兼ねて行われている。
【0132】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0133】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態では下位カウンタ104a,104bはダウンカウントモード、上位カウンタ101はアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0134】
(第3の実施形態)
次に、本発明の第3の実施形態を説明する。本実施形態による撮像装置の構成は、図11に示した構成と同様であるので説明を省略する。また、本実施形態の列AD変換部16の構成は、図12に示した構成と略同様であるので説明を省略する。ただし、上位計数部101の上位計数値をリセットする制御信号CHRSTに代えて、上位計数部101の上位計数値を所定の値にセットする制御信号CHSETが設けられているものとする。
【0135】
次に、本例の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101および下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのダウンカウンタ回路を用いた場合で説明する。
【0136】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0137】
本例では、下位カウンタ104(104a,104b)はダウンカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0138】
一方、本例では、上位カウンタ101はダウンカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0139】
2回目の読出し時に下位計数値および上位計数値の反転が行われるが、この反転後の下位計数値が正数となっている必要がある。つまり、反転後の下位カウンタ104bの計数値が0、即ち反転前の下位カウンタ104bの計数値が1となっている必要がある。反転後の下位カウンタ104bの計数値が1である場合には、上位カウンタ101の計数値から1を減算する必要があるため、反転前の下位カウンタ104bの計数値が0である場合には、反転前の上位カウンタ101の計数値に1を加算する必要がある。また、反転前の下位カウンタ104bの計数値が1である場合には、反転前の上位カウンタ101の計数値を調整する必要はない。しかし、反転前の上位カウンタ101の計数値に1を加算する必要がある場合、本例では上位カウンタ101はダウンカウントモードでカウントを行うため、加算を行うことができない。
【0140】
一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に加算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ減算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した後、2回目の読出しにおける反転前の下位カウンタ104bの計数値が0である場合には、反転前の上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ104bの計数値が1である場合には、反転前の上位計数値を1だけ減算する必要がある。本例では上位カウンタ101がダウンカウントモードでカウントを行うため、減算を行うことが可能となる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整とを兼ねて行う。
【0141】
図17〜図20は、本例の動作に係る各信号の波形を示している。図17および図18は1回目の読出し時の各信号の波形を示し、図19および図20は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0142】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0143】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、および下位計数値の桁上り/桁下りによる上位計数値の調整を行う判定期間を含む。
【0144】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0145】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、図示していない制御信号CHSETにより、上位カウンタ101の計数値が所定の値(この場合、9’b1111_1111_1)にセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1111_1である。これらの値を12ビットで表現すると、12’b1111_1111_1000となる。
【0146】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。
【0147】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。本例では、値を反転した後に1を加算していない。
【0148】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0001となる。
【0149】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0110となる。本例では、値を反転した後に1を加算していない。
【0150】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0110となる。
【0151】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1111_0(-2に相当)である。これらの値を12ビットで表現すると、12’b1111_1111_0110となる。
【0152】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b1111_1111_0(-2に相当)である。これらの値を12ビットで表現すると、12’b1111_1111_0111となる。
【0153】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0154】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの反転出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1減算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b1111_1110_1(-3に相当)である。これらの値を12ビットで表現すると、12’b1111_1110_1111となる。
【0155】
続いて、下位カウンタ104a,104bおよび上位カウンタ101の計数値が反転される(図17〜図20では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値および上位計数値を反転した後に1を加算していない。
【0156】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0157】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態ではダウンカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0158】
また、上位カウンタ101の計数値を最初に所定の値にセットすることによって、カウントモードの変更を行うことなく、下位カウンタ104a,104bの計数値の桁下りに応じた上位カウンタ101の計数値の調整を行うことができる。
【0159】
(第4の実施形態)
次に、本発明の第4の実施形態を説明する。図21は、本実施形態による(C)MOS撮像装置の構成の一例を示している。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様であるので説明を省略する。
【0160】
次に、列AD変換部16の各構成の詳細について説明する。図22は、図21の列AD変換部16について更に説明するために、比較部110を除いて抜粋した詳細構成の一例を示している。図22では、図12に対して下位調整回路105および上位調整回路102が追加されている。また、上位計数部101の上位計数値をリセットする制御信号CHRSTに代えて、上位計数部101の上位計数値を所定の値にセットする制御信号CHSETが設けられている。
【0161】
下位調整回路105は下位調整部を構成しており、下位カウンタ104が保持している下位計数値が反転された後、制御信号LCNTに基づいて、その値を調整するための調整用のカウントクロックを生成し、下位カウンタ104に出力する。上位調整回路102は上位調整部を構成しており、上位カウンタ101が保持している値が反転された後、制御信号HCNTに基づいて、その値を調整するための調整用のカウントクロックを生成し、上位カウンタ101に出力する。上記以外は、図12の構成と略同様であるので説明を省略する。
【0162】
次に、本例の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101および下位カウンタ104のカウントモードはアップカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのアップカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。
【0163】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0164】
本例では、下位カウンタ104(104a,104b)はアップカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。下位調整回路105からのカウントクロックに基づいて下位カウンタ104(104a,104b)がカウントを行うことにより、この1加算が行われる。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。
【0165】
一方、本例では、上位カウンタ101はアップカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。上位調整回路102からのカウントクロックに基づいて上位カウンタ101がカウントを行うことにより、この1加算が行われる。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。
【0166】
2回目の読出しにおける下位カウンタ104bの計数値が1である場合には、下位計数値が負数であるため、上位カウンタ101の計数値から1を減算する必要があり、下位カウンタ104bの計数値が0である場合には、上位カウンタ101の計数値を調整する必要はない。しかし、上位カウンタ101の計数値から1を減算する必要がある場合、本例では上位カウンタ101はアップカウントモードでカウントを行うため、減算を行うことができない。
【0167】
一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に減算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ加算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した後、2回目の読出しにおける下位カウンタ104bの計数値が1である場合には、上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ104bの計数値が0である場合には、上位計数値を1だけ加算する必要がある。本例では上位カウンタ101がアップカウントモードでカウントを行うため、加算を行うことが可能となる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整とを兼ねて行う。
【0168】
図23〜図26は、本例の動作に係る各信号の波形を示している。図23および図24は1回目の読出し時の各信号の波形を示し、図25および図26は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0169】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間と、反転に係る下位カウンタ104(104a,104b)の下位計数値および上位カウンタ101の上位計数値の調整を行う計数値調整期間とを含む。
【0170】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103が上位カウンタ101のカウントクロックの論理状態を変更するクロック設定期間と、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、および下位計数値の桁上り/桁下りによる上位計数値の調整を行う判定期間とを含む。
【0171】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0172】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHSETにより、上位カウンタ101の計数値が所定の値(この場合、9’b0000_0000_1)にセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_1である。これらの値を12ビットで表現すると、12’b0000_0000_1000となる。
【0173】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_1(11に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_1000となる。
【0174】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0000となる。
【0175】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ104aの計数値に桁上りが発生する。この桁上りにより下位カウンタ104bの計数値が1だけ加算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[0]111(7に相当)、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0111となる。
【0176】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]000(-8に相当)、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0000となる。
【0177】
続いて、計数値調整期間において、下位調整回路105は、制御信号LCNTに基づいて1パルス分の調整用のカウントクロックを生成し、下位カウンタ104a,104bに出力する。下位カウンタ104a,104bは、調整用のカウントクロックに基づいてカウントを行う。このカウントにより、下位カウンタ104a,104bの計数値が1だけ増加する。また、上位調整回路102は、制御信号HCNTに基づいて1パルス分の調整用のカウントクロックを生成し、上位カウンタ101に出力する。上位カウンタ101は、調整用のカウントクロック基づいてカウントを行う。このカウントにより、上位カウンタ101の計数値が1だけ増加する。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0178】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0179】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1001となる。
【0180】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ104aの計数値に桁上りが発生する。この桁上りにより下位カウンタ104bの計数値が1だけ加算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1000となる。
【0181】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0182】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000となる。
【0183】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0184】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態ではアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0185】
また、上位カウンタ101の計数値を最初に所定の値にセットすることによって、カウントモードの変更を行うことなく、下位カウンタ104a,104bの計数値の桁下りに応じた上位カウンタ101の計数値の調整を行うことができる。さらに、下位調整回路105および上位調整回路102が調整用のカウントクロックを出力し、下位カウンタ104a,104bおよび上位カウンタ101が調整用のカウントクロックに基づいてカウントを行うことによって、このカウントの直前に行われる計数値の反転と連動して2進数の減算を実現することができる。
【0186】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【0187】
2,1002・・・撮像部、5,1005・・・読出電流源部、12,1012・・・垂直選択部、14,1014・・・水平選択部、15,1015・・・カラム処理部、16,1016・・・列AD変換部、17,1017・・・出力部、18,1018・・・クロック生成部、19,1019・・・ランプ部、20,1020・・・制御部、100・・・VCO、101・・・上位カウンタ、102・・・上位調整回路、103・・・変更部、104,104a,104b・・・下位カウンタ、105・・・下位調整回路、106・・・演算部、108・・・ラッチ部、109・・・切換え部、110,1110・・・比較部、201・・・円環遅延回路、202・・・ラッチ回路、203・・・2進化回路、204・・・カウンタ回路、205・・・メモリー回路、1101・・・カウンタ
【技術分野】
【0001】
本発明は、AD変換回路、およびこのAD変換回路を備えた撮像装置に関する。
【背景技術】
【0002】
図27は、TDC(=Time to Digital Converter)型AD変換回路と呼ばれる、時間を計測するための従来のAD変換回路の一部を抜粋したものである。図27に示す回路は、複数の遅延素子(NAND0,INV1〜INV8)をリング状に接続してなる円環遅延回路201、円環遅延回路201の出力を保持するラッチ回路202、ラッチ回路202に保持された値を2進化する2進化回路(フル・エンコーダ回路)203、円環遅延回路201の出力の1つをカウントクロックとしてカウントを行うカウンタ回路204、2進化回路203およびカウンタ回路204の出力を保持するメモリー回路205で構成される。
【0003】
次に、AD変換動作を説明する。図28は、図27に示す回路の動作タイミングを示している。スタートパルスStartPの論理状態がL状態からH状態になることで、円環遅延回路201を構成する遅延素子の論理状態が順に変化する。これによりパルスが円環遅延回路201を周回する。所定時間経過後に、ラッチ回路202は円環遅延回路201の出力を保持(ラッチ)する。図28に示すように、円環遅延回路201の出力は9個の状態(状態0〜状態8)のいずれかに対応する。ラッチ回路202に保持(ラッチ)された円環遅延回路201の出力(下位位相信号)は2進化回路203によりフル・エンコード(一括エンコード)され、2進化データ(下位計数値)が生成される。カウンタ回路204は、遅延素子INV8の出力をカウントクロックとしてカウントを行い、カウント値(上位計数値)を生成する。下位計数値および上位計数値はメモリー回路205に保持され、デジタルデータとして後段の回路に出力される。
【0004】
上記のようなAD変換回路の適用先として、撮像装置が挙げられる。特許文献1には、画素列ごとに対応して設けられたカラム部内にAD変換回路を配置し、画素から出力される信号をAD変換する例が記載されている。
【0005】
図29は、特許文献1に記載された従来例に係る(C)MOS撮像装置の概略構成を示している。撮像装置1001は、撮像部1002、垂直選択部1012、読出電流源部1005、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、出力部1017、および制御部1020で構成されている。この撮像装置1001は、図27に示す回路の一部をカラム処理部1015内の列AD変換部1016に備えており、列AD変換部1016によりAD変換を行う。
【0006】
制御部1020は、垂直選択部1012、読出電流源部1005、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、および出力部1017などの各部を制御する。撮像部1002は、光電変換素子を有する単位画素1003が行列状に配置されて構成され、入射される電磁波の大きさに応じた画素信号を生成し、列毎に設けられた垂直信号線1013へ出力する。
【0007】
垂直選択部1012は、撮像部1002の各単位画素1003の駆動に際して、行制御線1011を介して撮像部1002の行アドレスや行走査の制御を行う。水平選択部1014は、カラム処理部1015の列AD変換部1016の列アドレスや列走査の制御を行う。読出電流源部1005は、撮像部1002からの画素信号を電圧信号として読み出すための電流源である。
【0008】
カラム処理部1015は、撮像部1002の列毎に設けられた列AD変換部1016を有する。列AD変換部1016は、撮像部1002の各単位画素1003から列毎に出力される画素信号であるアナログ信号をデジタルデータに変換して出力する。クロック生成部1018は、例えば円環遅延回路(図27の円環遅延回路201に対応)で構成され、カウントクロックを出力する。ランプ部1019は、例えば積分回路やDAC回路で構成され、時間が経過するにつれて傾斜状に変化する参照信号を生成する。
【0009】
水平選択部1014は、シフトレジスタやデコーダなどによって構成され、カラム処理部1015における各列AD変換部1016の列アドレスや列走査の制御を行う。これにより、AD変換されたデジタルデータは順に水平信号線を経由して出力部1017に出力される。
【0010】
次に、列AD変換部1016の構成について説明する。各々の列AD変換部1016は略同一に構成され、比較部1110およびカウンタ1101(図27のカウンタ回路204に対応)を有する構成となっている。
【0011】
比較部1110は、コンパレータ回路で構成され、撮像部1002の単位画素1003から出力される画素信号と参照信号とを比較し、例えば参照信号が画素信号よりも大なるときはHighレベル、例えば参照信号が画素信号よりも小なるときはLowレベルを出力する。カウンタ1101は、バイナリカウンタ回路で構成され、比較部1110が比較を開始してから比較を終了するまでの比較時間を計測する。これにより、画素信号の大きさに応じた比較時間の計測値がカウンタ1101の計数値として得られる。
【0012】
次に、AD変換動作について説明する。単位画素1003の具体的な動作については説明を省略するが、単位画素1003からは画素信号としてリセットレベルと信号レベルとが出力される。
【0013】
まず、単位画素1003からのリセットレベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点の計数値がリセットレベルのデジタルデータとなる。その後、カウンタ1101の計数値が反転される。
【0014】
続いて、単位画素1003からの信号レベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点のカウンタ1101の計数値が信号成分(信号レベルからリセットレベルを減算した信号)に応じたデジタルデータとなる。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】特開2011−23887号公報
【発明の概要】
【発明が解決しようとする課題】
【0016】
図29に示す撮像装置では、図27に示すカウンタ回路204に相当するカウンタ1101がカウントを実施することで、デジタルデータの上位ビットを構成する上位計数値が得られるが、図27に示すラッチ回路202および2進化回路203に相当する構成がないため、デジタルデータの下位ビットを構成する下位計数値を得ることはできない。このため、図29に示す撮像装置では高精度なデジタルデータを得ることができない。
【0017】
図29の列AD変換部1016に対応する部分に、上位計数値および下位計数値の両方を得るための回路を配置することで、高精度なデジタルデータを得ることが可能となる。このような回路配置の一形態として、上位計数値を得るための上位カウンタと、下位計数値を得るための下位カウンタとを、列AD変換部1016に対応する部分に配置することが考えられる。
【0018】
この場合、上位カウンタは複数の遅延素子の1つの出力信号をカウントクロックとしてカウントを行い、下位カウンタは複数の遅延素子の出力信号の状態に応じた信号をカウントクロックとしてカウントを行う。下位カウンタがカウントする下位計数値のMSB(Most Significant Bit)に桁上りあるいは桁下りが発生した場合、その分だけ上位計数値を調整するため、下位カウンタのMSBの出力信号をカウントクロックとして上位カウンタがカウントを行う。
【0019】
したがって、上位カウンタに入力されるカウントクロックを複数の遅延素子の1つの出力信号と下位カウンタのMSBの出力信号との間で切り換える必要がある。しかし、カウントクロックの切換えに伴う以下の課題がある。ここでは、上位カウンタがカウントクロックの立下りでカウントを行う(カウントクロックがHigh状態(以下、H状態)からLow状態(以下、L状態)に変化したときにカウントを行う)場合を例として説明を行う。
【0020】
AD変換動作は非同期動作であり、参照信号と画素信号との比較が終了した時点(比較終了時点)のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態はH状態またはL状態である。例えば、比較終了時点のカウントクロックの論理状態がH状態であり、カウントクロックが切り換えられて下位カウンタからL状態のカウントクロックが上位カウンタに入力された場合、この切換えの前後でカウントクロックの論理状態がH状態からL状態に変化するため、上位カウンタの上位計数値が変化する。一方、比較終了時点のカウントクロックの論理状態がL状態であり、カウントクロックが切り換えられて下位カウンタからL状態のカウントクロックが上位カウンタに入力された場合、この切換えの前後でカウントクロックの論理状態は変化しないため、上位カウンタの上位計数値は変化しない。
【0021】
上位カウンタは、下位カウンタから出力されるカウントクロックの状態つまり下位計数値における桁上りまたは桁下りの有無に応じてカウントを行う。しかし、上記のように、上位カウンタの上位計数値の変化の有無は、切換え後のカウントクロック(下位カウンタから出力されるカウントクロック)の論理状態だけでなく、切換え前のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態にも依存する。このため、比較終了時点のカウントクロック(複数の遅延素子の1つの出力信号)の論理状態に応じて上位カウンタの上位計数値の誤差が発生する場合がある。このように、上位カウンタに入力されるカウントクロックの切換えによる上位計数値の誤差が発生するという課題がある。
【0022】
本発明は、上述した課題に鑑みてなされたものであって、カウントした計数値の誤差の発生を抑制することができるAD変換回路および撮像装置を提供することを目的とする。
【課題を解決するための手段】
【0023】
本発明は、上記の課題を解決するためになされたもので、時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算部と、前記第1の下位計数信号をカウントクロックとしてカウントを行って第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行って第2の下位計数値を取得し、当該第2の下位計数値のフラグ用ビットに基づく上位用カウントクロックを出力する第1のバイナリカウンタで構成される下位カウンタと、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成される上位カウンタと、前記上位カウンタのカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する変更部と、を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路である。
【0024】
また、本発明のAD変換回路において、前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値をセットするデータセット機能を有することを特徴とする。
【0025】
また、本発明のAD変換回路は、前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする。
【0026】
また、本発明のAD変換回路において、前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする。
【0027】
また、本発明は、光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、上記のAD変換回路と、を備え、前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置である。
【発明の効果】
【0028】
本発明によれば、上位カウンタのカウントクロックの切換えの際にカウントクロックの論理状態を所定の状態に変更する変更部を備えることによって、カウントした計数値の誤差の発生を抑制することができる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1の実施形態による撮像装置の構成を示すブロック図である。
【図2】本発明の第1の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図3】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図4】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図5】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図6】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図7】本発明の第1の実施形態におけるバイナリカウンタ回路の構成を示す回路図である。
【図8】本発明の第1の実施形態における演算回路およびその周辺の構成を示すブロック図である。
【図9】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図10】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図11】本発明の第2の実施形態による撮像装置の構成を示すブロック図である。
【図12】本発明の第2の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図13】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図14】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図15】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図16】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図17】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図18】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図19】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図20】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図21】本発明の第4の実施形態による撮像装置の構成を示すブロック図である。
【図22】本発明の第4の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図23】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図24】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図25】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図26】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図27】従来のAD変換回路の一部構成を示すブロック図である。
【図28】従来の動作を示すタイミングチャートである。
【図29】従来の撮像装置の構成を示すブロック図である。
【発明を実施するための形態】
【0030】
以下、図面を参照し、本発明の実施形態を説明する。
【0031】
(第1の実施形態)
まず、本発明の第1の実施形態を説明する。図1は、本実施形態による(C)MOS撮像装置の構成の一例を示している。図1に示す撮像装置1は、撮像部2、垂直選択部12、読出電流源部5、クロック生成部18、ランプ部19(参照信号生成部)、カラム処理部15、水平選択部14、出力部17、および制御部20で構成されている。
【0032】
撮像部2は、入射される電磁波の大きさに応じた信号を生成し出力する単位画素3が複数、行列状に配置されている。垂直選択部12は、撮像部2の各行を選択する。読出電流源部5は、撮像部2からの信号を電圧信号として読み出す。クロック生成部18は各クロックを生成する。ランプ部19は、時間の経過とともに増加または減少する参照信号(ランプ波)を生成する。カラム処理部15は、ランプ部19と参照信号線を介して接続される。水平選択部14は、AD変換されたデータを水平信号線に読み出す。出力部17は、水平信号線に接続されている。制御部20は各部を制御する。
【0033】
図1では、簡単のため4行×6列の単位画素3から構成される撮像部2の場合について説明しているが、現実には、撮像部2の各行や各列には、数十から数万の単位画素3が配置されることになる。尚、図示を割愛するが、撮像部2を構成する単位画素3は、フォトダイオード/フォトゲート/フォトトランジスタなどの光電変換素子、およびトランジスタ回路によって構成されている。
【0034】
以下では、各部のより詳細な説明を行う。撮像部2は、単位画素3が4行6列分だけ2次元に配置されるとともに、この4行6列の画素配列に対して行ごとに行制御線11が配線されている。行制御線11の各一端は、垂直選択部12の各行に対応した各出力端に接続されている。垂直選択部12は、シフトレジスタあるいはデコーダなどによって構成され、撮像部2の各単位画素3の駆動に際して、行制御線11を介して撮像部2の行アドレスや行走査の制御を行う。また、撮像部2の画素配列に対して列ごとに垂直信号線13が配線されている。
【0035】
読出電流源部5は、撮像部2からの信号を電圧信号として読み出すための電流源で構成されている。
【0036】
カラム処理部15は、例えば撮像部2の画素列ごと、即ち垂直信号線13ごとに設けられた列AD変換部16を有し、撮像部2の各単位画素3から画素列ごとに垂直信号線13を介して読み出されるアナログの画素信号をデジタルデータに変換する。尚、本例では、撮像部2の画素列に対して1対1の対応関係をもって列AD変換部16を配置する構成をとっているが、これは一例に過ぎず、この配置関係に限定されるものではない。例えば、複数の画素列に対して列AD変換部16を1つ配置し、この1つの列AD変換部16を複数の画素列間で時分割にて使用する構成をとることも可能である。カラム処理部15は、後述するランプ部19およびクロック生成部18と共に、撮像部2の選択画素行の単位画素3から読み出されるアナログの画素信号をデジタルの画素データに変換するアナログ-デジタル変換手段を構成している。このカラム処理部15、特に列AD変換部16の詳細については後述する。
【0037】
ランプ部19は、例えば積分回路によって構成され、制御部20による制御に従って、時間が経過するにつれてレベルが傾斜状に変化する、いわゆるランプ波を生成し、参照信号線を介して比較部110の入力端子の一方に供給する。尚、ランプ部19としては、積分回路を用いたものに限られるものではなく、DAC回路を用いても構わない。ただし、DAC回路を用いてデジタル的にランプ波を生成する構成をとる場合には、ランプ波のステップを細かくする、あるいはそれと同等な構成をとる必要がある。
【0038】
水平選択部14は、シフトレジスタあるいはデコーダなどによって構成され、カラム処理部15の列AD変換部16の列アドレスや列走査の制御を行う。この水平選択部14による制御に従って、列AD変換部16でAD変換されたデジタルデータは順に水平信号線に読み出される。
【0039】
クロック生成部18は、複数の遅延ユニット(反転素子)が接続された遅延回路であるVCO100で構成される。VCO100を構成する遅延ユニットが例えば8段接続されていれば、VCO100は8相クロックCK0、CK1、CK2、CK3、CK4、CK5、CK6、CK7を出力する。これらの遅延ユニットが出力する信号は、後述する下位位相信号を構成する。尚、VCO100を構成する遅延回路は、複数個の反転素子がリング状に接続された円環遅延回路であっても構わない。その場合、対称発振回路(例えば、図27に示した円環遅延回路201)と同様に円環遅延回路自体は奇数個の遅延ユニットで構成されるが、その出力は等価的に偶数(特に、2のべき乗)個である、所謂、非対称発振回路を用いることが望ましい。更に、円環遅延回路自体が偶数個(特に、2のべき乗個)の遅延ユニットで構成されるRDL(=Ring Delay Line)回路や円環遅延回路自体が偶数個(特に、2のべき乗個)の遅延ユニットで構成され、更に遅延ユニットを構成する全差動型反転回路の最終段の出力がそれぞれ初段の入力の逆側に帰還されて構成される、所謂、全差動型発振回路を用いても構わない。
【0040】
出力部17は、2進化したデジタルデータを出力する。また、出力部17は、バッファリング機能以外に、例えば黒レベル調整、列バラツキ補正、色処理などの信号処理機能を内蔵しても構わない。更に、nビットパラレルのデジタルデータをシリアルデータに変換して出力するようにしても構わない。
【0041】
制御部20は、ランプ部19、クロック生成部18、垂直選択部12、水平選択部14、出力部17などの各部の動作に必要なクロックや所定タイミングのパルス信号を供給するTG(=Timing Generator:タイミングジェネレータ)の機能ブロックと、このTGと通信を行うための機能ブロックとを備える。
【0042】
次に、列AD変換部16の構成について説明する。列AD変換部16は各々、撮像部2の各単位画素3から垂直信号線13を介して読み出されるアナログの画素信号を、ランプ部19から与えられる、AD変換するためのランプ波と比較することにより、リセットレベル(基準レベル)や信号レベルの各大きさに対応した時間軸方向の大きさ(パルス幅)を持つパルス信号を生成する。そして、このパルス信号のパルス幅の期間に対応したデータを画素信号の大きさに応じたデジタルデータとすることでAD変換を行う。
【0043】
以下では、列AD変換部16の構成の詳細について説明する。列AD変換部16は列ごとに設けられており、図1では6個の列AD変換部16が設けられている。各列の列AD変換部16は同一の構成となっている。列AD変換部16は、比較部110、ラッチ部108、演算部106と下位カウンタ104を含む下位計数部、カウントクロックを切り換える切換え部109、上位計数部である上位カウンタ101、および変更部103で構成される。ここで、下位カウンタ104および上位カウンタ101は、ラッチ機能を合わせ持つバイナリカウンタ回路を想定している。
【0044】
比較部110は、撮像部2の単位画素3から垂直信号線13を介して出力されるアナログの画素信号に応じた信号電圧と、ランプ部19から供給されるランプ波のランプ電圧とを比較することによって、画素信号の大きさを時間軸方向の情報(パルス信号のパルス幅)に変換する。比較部110の比較出力は、例えばランプ電圧が信号電圧よりも大なるときにはHighレベル(Hレベル)になり、ランプ電圧が信号電圧以下のときにはLowレベル(Lレベル)になる。
【0045】
ラッチ部108は、比較部110の比較出力を受けて、この比較出力が反転するタイミングで、クロック生成部18で生成された論理状態(下位位相信号)をラッチ(保持/記憶)する。演算部106は、ラッチ部108にラッチされた下位位相信号に基づいて、下位カウンタ104のカウントクロックとなる下位計数信号を生成する。下位カウンタ104は、下位計数信号をカウントクロックとしてカウントを行う。これによって、デジタルデータの下位ビットを構成する下位計数値が得られる。図3に示すように、下位カウンタ104は下位カウンタ104aおよび下位カウンタ104bで構成される。
【0046】
上位カウンタ101は、クロック生成部18から出力されラッチ部108を通して入力されるクロック信号(上位計数信号)をカウントクロック(第1のカウントクロック)としてカウントを行う。また、上位カウンタ101は、下位カウンタ104の出力信号をカウントクロック(第2のカウントクロック)として、下位計数値の桁上りまたは桁下りに基づくカウントを行う。これによって、デジタルデータの上位ビットを構成する上位計数値が得られる。
【0047】
切換え部109は、上位カウンタ101に入力されるカウントクロックを、ラッチ部108を介して出力される第1のカウントクロックと、下位カウンタ104から出力される第2のカウントクロックとの間で切り換える。変更部103は、カウントクロックの切り換え時にラッチ部108から出力されるカウントクロックの論理状態を所定の論理状態に変更する。
【0048】
ここで、ラッチ部108にラッチされた下位位相信号は、例えば8ビットのデータである。その場合、下位カウンタ104a,104bを含む下位カウンタ104は4ビットのカウンタ回路である。下位カウンタ104aが1ビット目〜3ビット目の下位計数値をカウントし、下位カウンタ104bが4ビット目(フラグ用ビット)の下位計数値をカウントする。また、上位カウンタ101は、例えば9ビットのカウンタ回路である。尚、これらは一例であって、これに限る必要はない。
【0049】
次に、本例の動作について説明する。ここでは、単位画素3の具体的な動作については説明を省略するが、周知のように単位画素3ではリセットレベルと信号レベルとが出力される。
【0050】
AD変換は、以下のようにして行われる。例えば所定の傾きで下降するランプ波と、単位画素3からの画素信号であるリセットレベルあるいは信号レベルの各電圧とを比較し、この比較処理で用いるランプ波が生成された時点から、リセットレベルや信号レベルの各電圧とランプ波(ランプ電圧)とが一致するまでの期間を、ラッチ部108を介して出力されるVCO100からのクロック(例えばCK7)によりカウントするとともに、一定の位相差を有する多相クロック(CK0〜CK7)の論理状態で計測することによって、リセットレベルあるいは信号レベルの各大きさに対応したデジタルデータを得る。VCOからのクロックの信号数(本例では8)は、2のべき乗であることが望ましい。
【0051】
ここで、撮像部2の選択行の各単位画素3からは、アナログの画素信号として、1回目の読出し動作で画素信号の雑音を含むリセットレベルが読み出され、その後、2回目の読出し動作で信号レベルが読み出される。そして、リセットレベルと信号レベルとが垂直信号線13を通して列AD変換部16に時系列で入力される。尚、1回目の読出し動作で信号レベルが読み出され、その後の2回目の読出し動作でリセットレベルが読み出されても構わない。以下では、1回目および2回目の各読出し動作とその後の減算(CDS処理)の詳細について説明する。説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。
【0052】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【0053】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき(第1のタイミング)に、比較出力を反転させる。この第1のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【0054】
続いて、演算部106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ104へ出力する。下位カウンタ104aは、第1の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ104bは、下位カウンタ104aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。
【0055】
下位カウンタ104が保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値は各計数値のカウント終了後に反転される。
【0056】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【0057】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき(第2のタイミング)に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【0058】
続いて、演算部106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ104aへ出力する。下位カウンタ104aは、第2の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ104bは、下位カウンタ104aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。
【0059】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。2の補数を用いた2進数の減算を行うことによる上位計数値の調整については後述する。まず、変更部103が切換え前のカウントクロック(変更部103の出力信号)をH状態とした後、切換え部109がカウントクロックを切り換える。切換え後の第2のカウントクロックがL状態(下位カウンタ104bの反転出力がL状態)であれば上位カウンタ101の上位計数値が1加算され、第2のカウントクロックがH状態(下位カウンタ104bの反転出力がH状態)であれば上位カウンタ101の上位計数値は加算されない。
【0060】
ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態が出力され、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力されるとした。また、本例の場合、切換え後のカウントクロックである第2のカウントクロックが下位カウンタ104bの反転出力であるとした。変更部103がカウントクロックをH状態に変更することによって、切換え前のカウントクロック(ラッチ部108の出力信号)の論理状態によらず、第2のカウントクロックがL状態のときのみ上位カウンタ101の上位計数値が1加算されるので、計数値の誤差の発生を抑制することができる。
【0061】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。最後に、下位カウンタ104が保持している第2の下位計数値を構成する各ビットの値が反転され、反転された第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【0062】
次に、列AD変換部16の各構成の詳細について説明する。図2は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図2に示す構成について説明する。図2に示す各構成は、図1に示した列AD変換部16内の各構成に対応しており、ラッチ部108、演算部106、下位カウンタ104、変更部103、切換え部109、上位カウンタ101が設けられている。演算部106および下位カウンタ104は下位計数部を構成する。上位カウンタ101は上位計数部を構成する。図1のランプ部19、VCO100、比較部110と図2に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【0063】
ラッチ部108は、比較部110からの比較出力に相当する制御信号Holdにより、遅延ユニットを含むVCO100の出力であるクロック信号CK0〜CK7の所定のタイミングでの論理状態(下位位相信号)をラッチするラッチ回路D_0〜D_7を有する。各ラッチ回路D_0〜D_7の論理状態は、制御信号LRSTによりリセットされる。ラッチ部108がラッチした下位位相信号は演算部106に出力される。また、ラッチ部108のラッチ回路D_7に入力されるクロック信号CK7は、上位カウンタ101がカウントを行うためのカウントクロックとして、変更部103を介して切換え部109に出力される。
【0064】
演算部106は、制御信号CTLにより、ラッチ部108から出力された下位位相信号に基づいて下位計数信号を生成する。下位カウンタ104はダウンカウントモードでカウントを行うバイナリカウンタ回路で構成され、上位カウンタ101はアップカウントモードでカウントを行うバイナリカウンタ回路で構成されている。下位カウンタ104は、下位カウンタ104aと、正/負を判断するためのフラグ用の下位カウンタ104bとで構成されている。切換え部109は、制御信号SELにより、上位カウンタ101に入力されるカウントクロックを切り換える。
【0065】
尚、下位位相信号から下位計数信号を生成する場合、例えば図8に示すような構成を用いて、サーモコードに基づいたパルスと基準クロックとの論理演算により下位計数信号を生成することが好ましいが、この構成に限る必要はない。尚、図8の詳細については後段で詳しく説明する。
【0066】
下位カウンタ104(104a,104b)/上位カウンタ101には、制御信号CLRST/CHRST、および制御信号REV[*](*:0〜12,flag)が入力される。制御信号CLRST/CHRSTは、下位カウンタ104(104a,104b)/上位カウンタ101の下位計数値/上位計数値をリセットする信号である。制御信号REV[*](*:0〜12,flag)は、下位カウンタ104(104a,104b)/上位カウンタ101の下位計数値/上位計数値をトグルさせる信号である。下位カウンタ104(104a,104b)/上位カウンタ101の構成については、図7を参照して後述する。
【0067】
変更部103には、ラッチ回路D_7を介して出力されるクロック(CK7)および制御信号CLKCTLが入力される。変更部103は、制御信号CLKCTLに応じて、入力されるクロックCK7の論理状態を所定の論理状態(本例の場合、H状態)に変更してカウントクロックcntckとして出力する。変更部103は、例えば2入力OR回路等の論理回路で構成されるが、これに限る必要はない。
【0068】
次に、図2に示した構成の動作について具体例を用いて説明する。前述したように、説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。遅延回路の出力である8個のクロック信号に基づく下位位相信号の状態数は全8状態(状態0〜7)となる。ダウンカウントモードで計数した場合、例えば状態0であれば計数値は3’b[0]000、例えば状態7であれば計数値は3’b[1]001となる。
【0069】
上記の計数値の表記について説明する。“3’b”は計数値が3ビットの2進数であることを示す。下位カウンタ104a,104bの出力を例えば“[0]000”のように表記する。“[0]”は下位カウンタ104bの出力を示し、“000”は下位カウンタ104aの出力を示す。上位カウンタ101の計数値についても略同様の表記を使用する。
【0070】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0071】
本例では、下位カウンタ104(104a,104b)はダウンカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0072】
一方、本例では、上位カウンタ101はアップカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。ただし、1回目の読出し時の反転後に必要な1加算と、下位計数値の桁上り/桁下りによる上位計数値の調整とが必要である。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。
【0073】
図3〜図6は、本例の動作に係る各信号の波形を示している。図3および図4は1回目の読出し時の各信号の波形を示し、図5および図6は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0074】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0075】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103が上位カウンタ101のカウントクロックの論理状態を変更するクロック設定期間と、上位カウンタ101のカウントクロックの切換え、下位計数値の桁上り/桁下りによる上位計数値の調整、および2の補数を用いた2進数の減算を行うことによる上位計数値の調整を行う判定期間とを含む。
【0076】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0077】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHRSTにより、上位カウンタ101の計数値がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【0078】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。
【0079】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。本例では、値を反転した後に1を加算していない。
【0080】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0081】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。本例では、値を反転した後に1を加算していない。
【0082】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHRSTによる上位カウンタ101の計数値のリセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。
【0083】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1110となる。
【0084】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1111となる。
【0085】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0086】
まず、フラグ期間内のクロック設定期間において、制御信号CLKCTLがL状態からH状態となることで、切換え前のカウントクロックがH状態(変更部103の出力がH状態)となる。続いて、フラグ期間内の判定期間において、制御信号SELがH状態に設定され、カウントクロックが切り換わる。切換え後のカウントクロックである下位カウンタ104bの反転出力はL状態であり、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0111となる。
【0087】
続いて、下位カウンタ104a,104bのみ計数値が反転される(図3〜図6では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値に関しては、値を反転した後に1を加算していない。また、上位計数値に関しては、値を反転した後の1加算に係る調整は、カウントクロックの切換え時に下位計数値の桁上り/桁下りによる調整と兼ねて行われている。
【0088】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0089】
次に、下位カウンタ104(104a,104b)および上位カウンタ101に使用されるバイナリカウンタ回路の詳細を説明する。図7は、下位カウンタ104(104a,104b)および上位カウンタ101を構成する1ビット分のカウンタ回路Bit[m](m:0〜n-1)の構成の一例を示している。図7に示すカウンタ回路Bit[m]はフリップフロップDFFおよびAND回路AND1で構成されている。このカウンタ回路がn個接続されるとnビットのカウンタ回路が構成される。
【0090】
フリップフロップ回路DFFはDフリップフロップで構成されている。AND回路AND1は、カウントクロックCK[m-1]と制御信号REV[*](*:0〜11,flag)のAND演算を行うことにより、カウントクロックを有効/無効にする。カウントモードがアップカウントモードである場合、カウンタ回路Bit[m]の出力Qが後段のカウンタ回路に出力され、カウントモードがダウンカウントモードである場合、カウンタ回路Bit[m]の反転出力QBが後段のカウンタ回路に出力される。
【0091】
カウンタ回路Bit[m]がカウントを行う場合(図3〜図6の上位計数期間および下位計数期間を参照)、制御信号REV[*]がH状態となることでカウントクロックCK[m-1]が有効となり、フリップフロップ回路DFFの出力Qおよび反転出力QBはカウントクロックCK[m-1]の変化に応じて変化する。また、カウンタ回路Bit[m]の反転動作は以下のようにして行われる(図3〜図6の上位反転期間を参照)。カウント動作後、AND回路AND1の出力がL状態またはH状態を保っている場合や、AND回路AND1の出力がL状態からH状態に変化する場合、フリップフロップ回路DFFの出力Qおよび反転出力QBの出力は変化せずに一定の状態を保つ。また、制御信号REV[*]がH状態からL状態に変化することで、AND回路AND1の出力がH状態からL状態に変化すると、フリップフロップ回路DFFの出力Qおよび反転出力QBの出力が反転する。
【0092】
次に、演算部106の詳細について説明する。図8は、演算部106における下位計数信号の生成について説明するために、演算部106の周辺の構成を含む詳細構成の一例を示している。図8に示す構成のうち、ラッチ部108および下位カウンタ104については前述した通りである。以下では、演算部106の構成について説明する。
【0093】
図8に示すように、演算部106は、ラッチ回路D_TMP、AND回路AND2、RSラッチRS1、およびAND回路AND3で構成される。ラッチ回路D_TMPは、パルス信号TMPLATに従って、ラッチ回路D_0〜D_7の出力を所定の順番で一時的に保持する。また、ラッチ回路D_TMPは制御信号LATSETによってリセットされる。AND回路AND2は、ラッチ回路D_0〜D_7の何れか1つの出力とラッチ回路D_TMPの反転出力QBとのAND演算を行う。
【0094】
RSラッチRS1にはAND回路AND2の出力と制御信号RSLRSTが入力される。RSラッチRS1は、制御信号RSLRSTによってリセットされた後、AND回路AND2の出力がL状態からH状態に変化するときに出力QがL状態からH状態に変化し、その後、制御信号RSLRSTによってリセットされるまで、AND回路AND2の出力にかかわらず出力QをH状態に保つ。AND回路AND3は、RSラッチRS1の出力と計数信号LATCNT(基準クロック)とのAND演算を行う。
【0095】
次に、演算部106の動作について説明する。図9および図10は、下位計数信号生成時の動作を示している。図9は、遅延回路から出力されるクロック信号CK0〜CK7の波形を示している。図9においてパルス信号STARTPは、遅延回路に入力されるパルス信号である。クロック信号CK0〜CK7の状態は、図9に示す状態0〜状態7のいずれかとなる。ラッチ部108のラッチ回路D_0〜D_7は、制御信号Holdにより、クロック信号CK0〜CK7の状態(下位位相信号)をラッチする。図10は、下位計数信号を生成する動作に係る各信号の波形を示している。
【0096】
以下では、第1の下位位相信号から第1の下位計数信号を生成し、第2の下位位相信号から第2の下位計数信号を生成する具体例を説明する。ここで、第1の下位位相信号に相当する状態は状態7とし、第2の下位位相信号に相当する状態は状態3とする。本例の場合、第1の下位位相信号から第1の下位計数信号は7パルス生成され、第2の下位位相信号から第2の下位計数信号は3パルス生成される。生成された各パルスは下位カウンタ104のカウントクロックとして入力される。
【0097】
まず、動作の概略を説明する。制御信号SW0〜SW7およびパルス信号TMPLATにより、下位位相信号に応じたパルスが生成され、そのパルスに基づいてサーモコード(本例の場合、H状態からL状態へ変化するエッジ位置)が検出される。ラッチ回路D_*(*は、0〜7の何れか)の出力Qとラッチ回路D_TMPの反転出力QBのAND演算の結果がH状態となった場合、そのH状態がRSラッチRS1に入力されることでサーモコードが検出される。また、RSラッチRS1の出力と計数信号LATCNTのAND演算の結果として下位計数信号のパルスが生成され、下位カウンタ104のカウントクロックとなる。
【0098】
以下では、詳細な動作を説明する。尚、下位カウンタ104の詳細な動作については既に説明したため、以下では下位カウンタ104の動作の説明を省略する。所定の条件を満足する第1の時点(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミングに相当)で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK0〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第1の下位位相信号に対応する。
【0099】
続いて、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号CLRSTにより下位カウンタ104の計数値がリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。この時点のRSラッチRS1の出力QはL状態である。
【0100】
続いて、制御信号SW*(*:0〜7)が所定の順にONとなる。制御信号SW7がONされると、ラッチ回路D_7からL状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、制御信号LATSETによりリセットされたときのL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_7のL状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるため、RSラッチRS1の出力QはL状態のままである。
【0101】
続いて、制御信号SW6がONされると、ラッチ回路D_6からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_7の出力(L)に基づくH状態となる。ラッチ回路D_TMPのH状態の出力とラッチ回路D_6のH状態の出力により、AND回路AND2の出力はH状態となる。RSラッチRS1の入力SはH状態となるため、RSラッチRS1の出力QはH状態となる。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2から1パルス分のカウントクロックが出力される。
【0102】
続いて、制御信号SW5がONされると、ラッチ回路D_5からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_6の出力(H)に基づくL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_6のH状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるが、RSラッチRS1に入力される制御信号RSLRSTがL状態であるため、RSラッチRS1の出力QはH状態のままである。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2から1パルス分のカウントクロックが出力される。
【0103】
これ以降、制御信号SW4〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保つため、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW4〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ104のカウントクロックとなる第1の下位計数信号が合計で7パルス生成される。以上により、第1の下位計数信号の生成が終了する。
【0104】
続いて、所定の条件を満足する第2の時点(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミングに相当)で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK0〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第2の下位位相信号に対応する。
【0105】
続いて、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。ここでは、下位カウンタ104のリセットは行わない。この時点のRSラッチRS1の出力QはL状態である。
【0106】
続いて、制御信号SW*(*:0〜7)が所定の順にONとなる。制御信号SW7がONされると、ラッチ回路D_7からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、制御信号LATSETによりリセットされたときのL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_7のH状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SはL状態となるため、RSラッチRS1の出力QはL状態のままである。
【0107】
続いて、制御信号SW6がONされると、ラッチ回路D_6からL状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_7の出力(H)に基づくL状態となる。ラッチ回路D_TMPのL状態の出力とラッチ回路D_6のL状態の出力により、AND回路AND2の出力はL状態となる。RSラッチRS1の入力SがL状態のままであるため、RSラッチRS1の出力QはL状態のままである。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスは出力されない。
【0108】
これ以降、制御信号SW5〜SW3が順にONされるが、RSラッチRS1の入力SはL状態を保ち、RSラッチRS1の出力QはL状態を保つ。このため、制御信号SW5〜SW3が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスは出力されない。
【0109】
続いて、制御信号SW2がONされると、ラッチ回路D_2からH状態の信号が出力される。パルス信号TMPLATにより、ラッチ回路D_TMPの反転出力QBは、ラッチ回路D_3の出力(L)に基づくH状態となる。ラッチ回路D_TMPのH状態の出力とラッチ回路D_2のH状態の出力により、AND回路AND2の出力はH状態となる。RSラッチRS1の入力SはH状態となるため、RSラッチRS1の出力QはH状態となる。RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。
【0110】
これ以降、制御信号SW1〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保ち、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW1〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ104のカウントクロックとなる第2の下位計数信号が合計で3パルス生成される。以上により、第2の下位計数信号の生成が終了する。図8に示す構成により、下位位相信号から下位計数信号を生成する回路を簡易な回路構成で実現することができる。
【0111】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態では下位カウンタ104a,104bはダウンカウントモード、上位カウンタ101はアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0112】
また、遅延回路として、複数の遅延ユニットをリング状に接続した円環遅延回路を使用することによって、下位位相信号の各位相の精度を向上することができる。また、本実施形態のAD変換回路を撮像装置に適用することによって、高画質な画像を得ることができる。
【0113】
(第2の実施形態)
次に、本発明の第2の実施形態を説明する。図11は、本実施形態による(C)MOS撮像装置の構成の一例を示している。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様であるので説明を省略する。
【0114】
次に、列AD変換部16の各構成の詳細について説明する。図12は、図11の列AD変換部16について更に説明するために、比較部110を除いて抜粋した詳細構成の一例を示している。図12では、図2に対して変更部103の接続が変更されている。変更部103は、カウントクロックの切り換え時に下位カウンタ104bから出力されるカウントクロックの論理状態を所定の論理状態に変更する。また、図12では、クロック信号cntckを所定の論理状態にする制御信号CLKENが設けられている。上記以外は、図2の構成と略同様であるので説明を省略する。
【0115】
次に、図12に示した構成の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ104(104a,104b)のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104(104a,104b)はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。
【0116】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。本例における2進数の減算の原理は第1の実施形態と同様である。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整と、2の補数を用いた2進数の減算を行うことによる上位計数値の調整とを兼ねて行う。
【0117】
図13〜図16は、本例の動作に係る各信号の波形を示している。図13および図14は1回目の読出し時の各信号の波形を示し、図15および図16は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0118】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0119】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、下位計数値の桁上り/桁下りによる上位計数値の調整、および2の補数を用いた2進数の減算を行うことによる上位計数値の調整を行う判定期間を含む。
【0120】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0121】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHRSTにより、上位カウンタ101の計数値がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【0122】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。
【0123】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。本例では、値を反転した後に1を加算していない。
【0124】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0125】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。本例では、値を反転した後に1を加算していない。
【0126】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHRSTによる上位カウンタ101の計数値のリセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1110となる。
【0127】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1110となる。
【0128】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1111となる。
【0129】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0130】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの反転出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0111となる。
【0131】
続いて、下位カウンタ104a,104bのみ計数値が反転される(図13〜図16では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値に関しては、値を反転した後に1を加算していない。また、上位計数値に関しては、値を反転した後の1加算に係る調整は、カウントクロックの切換え時に下位計数値の桁上り/桁下りによる調整と兼ねて行われている。
【0132】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0133】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態では下位カウンタ104a,104bはダウンカウントモード、上位カウンタ101はアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0134】
(第3の実施形態)
次に、本発明の第3の実施形態を説明する。本実施形態による撮像装置の構成は、図11に示した構成と同様であるので説明を省略する。また、本実施形態の列AD変換部16の構成は、図12に示した構成と略同様であるので説明を省略する。ただし、上位計数部101の上位計数値をリセットする制御信号CHRSTに代えて、上位計数部101の上位計数値を所定の値にセットする制御信号CHSETが設けられているものとする。
【0135】
次に、本例の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101および下位カウンタ104のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのダウンカウンタ回路を用いた場合で説明する。
【0136】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0137】
本例では、下位カウンタ104(104a,104b)はダウンカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0138】
一方、本例では、上位カウンタ101はダウンカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。1回目の読出し時の反転後に必要な1加算と、2回目の読出し時の反転後に必要な1加算とによる値の変化が相殺されるため、反転後の1加算は行われない。
【0139】
2回目の読出し時に下位計数値および上位計数値の反転が行われるが、この反転後の下位計数値が正数となっている必要がある。つまり、反転後の下位カウンタ104bの計数値が0、即ち反転前の下位カウンタ104bの計数値が1となっている必要がある。反転後の下位カウンタ104bの計数値が1である場合には、上位カウンタ101の計数値から1を減算する必要があるため、反転前の下位カウンタ104bの計数値が0である場合には、反転前の上位カウンタ101の計数値に1を加算する必要がある。また、反転前の下位カウンタ104bの計数値が1である場合には、反転前の上位カウンタ101の計数値を調整する必要はない。しかし、反転前の上位カウンタ101の計数値に1を加算する必要がある場合、本例では上位カウンタ101はダウンカウントモードでカウントを行うため、加算を行うことができない。
【0140】
一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に加算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ減算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した後、2回目の読出しにおける反転前の下位カウンタ104bの計数値が0である場合には、反転前の上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ104bの計数値が1である場合には、反転前の上位計数値を1だけ減算する必要がある。本例では上位カウンタ101がダウンカウントモードでカウントを行うため、減算を行うことが可能となる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整とを兼ねて行う。
【0141】
図17〜図20は、本例の動作に係る各信号の波形を示している。図17および図18は1回目の読出し時の各信号の波形を示し、図19および図20は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0142】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間とを含む。
【0143】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、および下位計数値の桁上り/桁下りによる上位計数値の調整を行う判定期間を含む。
【0144】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0145】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、図示していない制御信号CHSETにより、上位カウンタ101の計数値が所定の値(この場合、9’b1111_1111_1)にセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1111_1である。これらの値を12ビットで表現すると、12’b1111_1111_1000となる。
【0146】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1000となる。
【0147】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0000となる。本例では、値を反転した後に1を加算していない。
【0148】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0001となる。
【0149】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0110となる。本例では、値を反転した後に1を加算していない。
【0150】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b0000_0101_0(10に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_0110となる。
【0151】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]110(6に相当)、上位カウンタ101が保持している値は9’b1111_1111_0(-2に相当)である。これらの値を12ビットで表現すると、12’b1111_1111_0110となる。
【0152】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の反転出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ104aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ104aの計数値に桁下りが発生する。この桁下りにより下位カウンタ104bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b1111_1111_0(-2に相当)である。これらの値を12ビットで表現すると、12’b1111_1111_0111となる。
【0153】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの反転出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0154】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの反転出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1減算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]111(-1に相当)、上位カウンタ101が保持している値は9’b1111_1110_1(-3に相当)である。これらの値を12ビットで表現すると、12’b1111_1110_1111となる。
【0155】
続いて、下位カウンタ104a,104bおよび上位カウンタ101の計数値が反転される(図17〜図20では省略)。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000(16に相当)となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値および上位計数値を反転した後に1を加算していない。
【0156】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0157】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態ではダウンカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0158】
また、上位カウンタ101の計数値を最初に所定の値にセットすることによって、カウントモードの変更を行うことなく、下位カウンタ104a,104bの計数値の桁下りに応じた上位カウンタ101の計数値の調整を行うことができる。
【0159】
(第4の実施形態)
次に、本発明の第4の実施形態を説明する。図21は、本実施形態による(C)MOS撮像装置の構成の一例を示している。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様であるので説明を省略する。
【0160】
次に、列AD変換部16の各構成の詳細について説明する。図22は、図21の列AD変換部16について更に説明するために、比較部110を除いて抜粋した詳細構成の一例を示している。図22では、図12に対して下位調整回路105および上位調整回路102が追加されている。また、上位計数部101の上位計数値をリセットする制御信号CHRSTに代えて、上位計数部101の上位計数値を所定の値にセットする制御信号CHSETが設けられている。
【0161】
下位調整回路105は下位調整部を構成しており、下位カウンタ104が保持している下位計数値が反転された後、制御信号LCNTに基づいて、その値を調整するための調整用のカウントクロックを生成し、下位カウンタ104に出力する。上位調整回路102は上位調整部を構成しており、上位カウンタ101が保持している値が反転された後、制御信号HCNTに基づいて、その値を調整するための調整用のカウントクロックを生成し、上位カウンタ101に出力する。上記以外は、図12の構成と略同様であるので説明を省略する。
【0162】
次に、本例の動作について具体例を用いて説明する。説明を容易にするため、上位カウンタ101および下位カウンタ104のカウントモードはアップカウントモードであるものとし、上位カウンタ101および下位カウンタ104はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。本説明では、下位カウンタ104(104a,104b)として合計で4ビットのアップカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。
【0163】
以下では、第1の画素信号とそれに続く第2の画素信号との減算(CDS処理)を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。第1の画素信号をAD変換して得られるデジタル値をA、第2の画素信号をAD変換して得られるデジタル値をBとすると、求める減算結果はB-Aである。本例では、下位カウンタ104(104a,104b)および上位カウンタ101がそれぞれ別々にカウントを行い、下位カウンタ104(104a,104b)のカウント結果である下位計数値と、上位カウンタ101のカウント結果である上位計数値とからなるデジタルデータが得られる。
【0164】
本例では、下位カウンタ104(104a,104b)はアップカウントモードでカウントを行うため、1回目の読出し時に下位カウンタ104(104a,104b)が第1の画素信号に基づくカウントを行い、さらに反転を行った後の下位計数値はデジタル値-Aの下位ビットに対応する。ただし、2の補数を用いているため、下位計数値に1加算が必要である。下位調整回路105からのカウントクロックに基づいて下位カウンタ104(104a,104b)がカウントを行うことにより、この1加算が行われる。続いて、2回目の読出し時に下位カウンタ104(104a,104b)が第2の画素信号に基づくカウントを行った後の下位計数値はデジタル値B-Aの下位ビットに対応する。
【0165】
一方、本例では、上位カウンタ101はアップカウントモードでカウントを行うため、1回目の読出し時に上位カウンタ101が第1の画素信号に基づくカウントを行い、さらに反転を行った後の上位計数値はデジタル値-Aの上位ビットに対応する。ただし、2の補数を用いているため、上位計数値に1加算が必要である。上位調整回路102からのカウントクロックに基づいて上位カウンタ101がカウントを行うことにより、この1加算が行われる。続いて、2回目の読出し時に上位カウンタ101が第2の画素信号に基づくカウントを行った後の上位計数値はデジタル値B-Aの上位ビットに対応する。
【0166】
2回目の読出しにおける下位カウンタ104bの計数値が1である場合には、下位計数値が負数であるため、上位カウンタ101の計数値から1を減算する必要があり、下位カウンタ104bの計数値が0である場合には、上位カウンタ101の計数値を調整する必要はない。しかし、上位カウンタ101の計数値から1を減算する必要がある場合、本例では上位カウンタ101はアップカウントモードでカウントを行うため、減算を行うことができない。
【0167】
一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に減算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ加算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した後、2回目の読出しにおける下位カウンタ104bの計数値が1である場合には、上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ104bの計数値が0である場合には、上位計数値を1だけ加算する必要がある。本例では上位カウンタ101がアップカウントモードでカウントを行うため、加算を行うことが可能となる。本例の場合、カウントクロックの切換え時に、カウントクロックの切換えと、下位計数値の桁上り/桁下りによる上位計数値の調整とを兼ねて行う。
【0168】
図23〜図26は、本例の動作に係る各信号の波形を示している。図23および図24は1回目の読出し時の各信号の波形を示し、図25および図26は2回目の読出し時の各信号の波形を示している。尚、OUT[0]、OUT[1]、OUT[2]は下位カウンタ104aの出力を示し、xOUT[0]、xOUT[1]、xOUT[2]は下位カウンタ104aの反転出力を示す。OUT[flag]は下位カウンタ104bの出力を示し、xOUT[flag]は下位カウンタ104bの反転出力を示す。OUT[3]、OUT[4]、OUT[5] 、OUT[6]は上位カウンタ101の出力の一部を示し、xOUT[3]、xOUT[4]、xOUT[5] 、xOUT[6]は上位カウンタ101aの反転出力の一部を示す。TRANは、デジタルデータを出力部17に転送する制御信号を示す。
【0169】
本例の動作は、第1の画素信号を読み出してAD変換する1回目の読出し期間と、第2の画素信号を読み出してAD変換する2回目の読出し期間と、上位カウンタ101のカウントクロックの切換えを行うフラグ期間と、デジタルデータを転送する転送期間との各期間の動作で構成される。1回目の読出し期間は、第1の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、上位カウンタ101の上位計数値を反転する上位反転期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間と、下位カウンタ104(104a,104b)の下位計数値を反転する下位反転期間と、反転に係る下位カウンタ104(104a,104b)の下位計数値および上位カウンタ101の上位計数値の調整を行う計数値調整期間とを含む。
【0170】
2回目の読出し期間は、第2の画素信号を読み出す信号読出し期間と、上位カウンタ101がカウントを行う上位計数期間と、下位カウンタ104(104a,104b)がカウントを行う下位計数期間とを含む。また、フラグ期間は、変更部103が上位カウンタ101のカウントクロックの論理状態を変更するクロック設定期間と、変更部103による上位カウンタ101のカウントクロックの論理状態の変更、上位カウンタ101のカウントクロックの切換え、および下位計数値の桁上り/桁下りによる上位計数値の調整を行う判定期間とを含む。
【0171】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は10、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は12とする。すなわち、第1の画素信号は87(=7+8×10)、第2の画素信号は103(=7+8×12)にそれぞれ対応し、第2の画素信号から第1の画素信号を減算(CDS処理)した値は16となる。
【0172】
<<1回目の読出し>>
最初に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。また、制御信号CLRSTにより、下位カウンタ104a,104bの計数値がリセットされる。同時に、制御信号CHSETにより、上位カウンタ101の計数値が所定の値(この場合、9’b0000_0000_1)にセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。信号読出し期間に続く上位計数期間における比較処理の開始時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_1である。これらの値を12ビットで表現すると、12’b0000_0000_1000となる。
【0173】
上位計数期間において、所定の条件を満足する第1のタイミング(前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング)で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第1の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0101_1(11に相当)である。これらの値を12ビットで表現すると、12’b0000_0101_1000となる。
【0174】
続いて、上位反転期間において、上位カウンタ101の計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0000となる。
【0175】
続いて、下位計数期間において、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ104aの計数値に桁上りが発生する。この桁上りにより下位カウンタ104bの計数値が1だけ加算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[0]111(7に相当)、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0111となる。
【0176】
続いて、下位反転期間において、下位カウンタ104a,104bの計数値が反転される。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]000(-8に相当)、上位カウンタ101が保持している値は9’b1111_1010_0(-12に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_0000となる。
【0177】
続いて、計数値調整期間において、下位調整回路105は、制御信号LCNTに基づいて1パルス分の調整用のカウントクロックを生成し、下位カウンタ104a,104bに出力する。下位カウンタ104a,104bは、調整用のカウントクロックに基づいてカウントを行う。このカウントにより、下位カウンタ104a,104bの計数値が1だけ増加する。また、上位調整回路102は、制御信号HCNTに基づいて1パルス分の調整用のカウントクロックを生成し、上位カウンタ101に出力する。上位カウンタ101は、調整用のカウントクロック基づいてカウントを行う。このカウントにより、上位カウンタ101の計数値が1だけ増加する。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0178】
<<2回目の読出し>>
まず、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ104a,104bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b1111_1010_1(-11に相当)である。これらの値を12ビットで表現すると、12’b1111_1010_1001となる。
【0179】
信号読出し期間に続く上位計数期間において、所定の条件を満足する第2のタイミング(前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング)で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される(第2の下位位相信号)。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ104a,104bが保持している値は3’b[1]001(-7に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1001となる。
【0180】
続いて、下位計数期間において、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算部106から下位カウンタ104aにカウントクロックが出力され、下位カウンタ104aはカウントを行う。本例では下位カウンタ104aの3ビット目の出力が下位カウンタ104bに入力される。下位カウンタ104aの3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ104aの計数値に桁上りが発生する。この桁上りにより下位カウンタ104bの計数値が1だけ加算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0000_1(1に相当)である。これらの値を12ビットで表現すると、12’b0000_0000_1000となる。
【0181】
続いて、フラグ期間において、上位カウンタ101に入力されるカウントクロックの切換えが行われる。本例の場合、切換え後のカウントクロックである第2のカウントクロックは、下位カウンタ104bの出力である。ここで、第2のカウントクロックとして、下位計数値に桁上りまたは桁下りが有る場合にはL状態、下位計数値に桁上りまたは桁下りが無い場合にはH状態が出力される。
【0182】
まず、フラグ期間内の判定期間において、制御信号SELがL状態からH状態となることで、制御信号CLKCTLによりH状態に固定されたカウントクロック(変更部103の出力)に、カウントクロックが切り換わる。その後、制御信号CLKCTLがH状態からL状態となる。変更部103へ入力される下位カウンタ104bの出力はL状態であり、制御信号CLKCTLがH状態からL状態に変化することで、上位カウンタ101の計数値が1加算される。この時点で、下位カウンタ104a,104bが保持している値は3’b[0]000(0に相当)、上位カウンタ101が保持している値は9’b0000_0001_0(2に相当)である。これらの値を12ビットで表現すると、12’b0000_0001_0000となる。
【0183】
転送期間において、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【0184】
上述したように、本実施形態によれば、カウントクロックの切換えの際に変更部103がカウントクロックの論理状態を所定の状態に変更するので、切換え前のカウントクロックの論理状態に依存した計数値の誤差の発生を抑制することができる。また、下位カウンタ104a,104bおよび上位カウンタ101は1種類のカウントモード(本実施形態ではアップカウントモード)のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【0185】
また、上位カウンタ101の計数値を最初に所定の値にセットすることによって、カウントモードの変更を行うことなく、下位カウンタ104a,104bの計数値の桁下りに応じた上位カウンタ101の計数値の調整を行うことができる。さらに、下位調整回路105および上位調整回路102が調整用のカウントクロックを出力し、下位カウンタ104a,104bおよび上位カウンタ101が調整用のカウントクロックに基づいてカウントを行うことによって、このカウントの直前に行われる計数値の反転と連動して2進数の減算を実現することができる。
【0186】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【0187】
2,1002・・・撮像部、5,1005・・・読出電流源部、12,1012・・・垂直選択部、14,1014・・・水平選択部、15,1015・・・カラム処理部、16,1016・・・列AD変換部、17,1017・・・出力部、18,1018・・・クロック生成部、19,1019・・・ランプ部、20,1020・・・制御部、100・・・VCO、101・・・上位カウンタ、102・・・上位調整回路、103・・・変更部、104,104a,104b・・・下位カウンタ、105・・・下位調整回路、106・・・演算部、108・・・ラッチ部、109・・・切換え部、110,1110・・・比較部、201・・・円環遅延回路、202・・・ラッチ回路、203・・・2進化回路、204・・・カウンタ回路、205・・・メモリー回路、1101・・・カウンタ
【特許請求の範囲】
【請求項1】
時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、
AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、
互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、
第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、
前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算部と、
前記第1の下位計数信号をカウントクロックとしてカウントを行って第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行って第2の下位計数値を取得し、当該第2の下位計数値のフラグ用ビットに基づく上位用カウントクロックを出力する第1のバイナリカウンタで構成される下位カウンタと、
前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成される上位カウンタと、
前記上位カウンタのカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する変更部と、
を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路。
【請求項2】
前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値をセットするデータセット機能を有することを特徴とする請求項1に係るAD変換回路。
【請求項3】
前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする請求項1に係るAD変換回路。
【請求項4】
前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする請求項1に係るAD変換回路。
【請求項5】
光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、
請求項1から請求項4のいずれか一項に係るAD変換回路と、
を備え、
前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置。
【請求項1】
時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、
AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、
互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、
第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、
前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算部と、
前記第1の下位計数信号をカウントクロックとしてカウントを行って第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行って第2の下位計数値を取得し、当該第2の下位計数値のフラグ用ビットに基づく上位用カウントクロックを出力する第1のバイナリカウンタで構成される下位カウンタと、
前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成される上位カウンタと、
前記上位カウンタのカウントクロックの切換えの際に、カウントクロックの論理状態を所定の状態に変更する変更部と、
を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路。
【請求項2】
前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値をセットするデータセット機能を有することを特徴とする請求項1に係るAD変換回路。
【請求項3】
前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする請求項1に係るAD変換回路。
【請求項4】
前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする請求項1に係るAD変換回路。
【請求項5】
光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、
請求項1から請求項4のいずれか一項に係るAD変換回路と、
を備え、
前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【公開番号】特開2013−62584(P2013−62584A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2011−198266(P2011−198266)
【出願日】平成23年9月12日(2011.9.12)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願日】平成23年9月12日(2011.9.12)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】
[ Back to top ]