(57)【特許請求の範囲】
【請求項１】
時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、
AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、
互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、
第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、
前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算回路と、
前記第1の下位計数信号をカウントクロックとしてカウントを行うと共に第1の上位用カウントクロックを出力して第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行うと共に第2の上位用カウントクロックを出力して第2の下位計数値を取得する第1のバイナリカウンタで構成される下位カウンタと、
前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記第1の上位用カウントクロックに基づいてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記第2の上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成され、カウントクロックの切換えの際に当該第2のバイナリカウンタが保持している上位計数値を保護するデータ保護機能を有する上位カウンタと、
を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路。
【請求項２】
時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、
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のバイナリカウンタで構成され、カウントクロックの切換えの際に当該第2のバイナリカウンタが保持している上位計数値を保護するデータ保護機能を有する上位カウンタと、
を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路。
【請求項３】
前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値の初期値をセットするデータセット機能を有することを特徴とする請求項2に係るAD変換回路。
【請求項４】
前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする請求項1または請求項2に係るAD変換回路。
【請求項５】
前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする請求項1または請求項2に係るAD変換回路。
【請求項６】
光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、
請求項1〜請求項5のいずれか一項に係るAD変換回路と、
を備え、
前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、AD変換回路、およびこのAD変換回路を備えた撮像装置に関する。
【背景技術】
【０００２】
図21は、TDC（=Time to Digital Converter）型AD変換回路と呼ばれる、時間を計測するための従来のAD変換回路の一部を抜粋したものである。図21に示す回路は、複数の遅延素子（NAND0，INV1〜INV8）をリング状に接続してなる円環遅延回路201、円環遅延回路201の出力を保持するラッチ回路202、ラッチ回路202に保持された値を2進化する2進化回路（フル・エンコーダ回路）203、円環遅延回路201の出力の1つをカウントクロックとしてカウントを行うカウンタ回路204、2進化回路203およびカウンタ回路204の出力を保持するメモリー回路205で構成される。
【０００３】
次に、AD変換動作を説明する。図22は、図21に示す回路の動作タイミングを示している。スタートパルスStartPの論理状態がL状態からH状態になることで、円環遅延回路201を構成する遅延素子の論理状態が順に変化する。これによりパルスが円環遅延回路201を周回する。所定時間経過後に、ラッチ回路202は円環遅延回路201の出力を保持（ラッチ）する。図22に示すように、円環遅延回路201の出力は9個の状態（状態0〜状態8）のいずれかに対応する。ラッチ回路202に保持（ラッチ）された円環遅延回路201の出力は2進化回路203によりフル・エンコード（一括エンコード）され、2進化データ（下位計数値）が生成される。カウンタ回路204は、遅延素子INV8の出力をカウントクロックとしてカウントを行い、カウント値（上位計数値）を生成する。下位計数値および上位計数値はメモリー回路205に保持され、デジタルデータとして後段の回路に出力される。
【０００４】
上記のようなAD変換回路の適用先として、撮像装置が挙げられる。特許文献１には、画素列ごとに対応して設けられたカラム部内にAD変換回路を配置し、画素から出力される信号をAD変換する例が記載されている。
【０００５】
図23は、特許文献１に記載された従来例に係る（C）MOS撮像装置の概略構成を示している。撮像装置1001は、撮像部1002、垂直選択部1012、読出電流源部1005、アナログ部1006、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、出力部1017、および制御部1020で構成されている。この撮像装置1001は、図21に示す回路の一部をカラム処理部1015内の列AD変換部1016に備えており、列AD変換部1016によりAD変換を行う。
【０００６】
制御部1020は、垂直選択部1012、読出電流源部1005、アナログ部1006、クロック生成部1018、ランプ部1019、カラム処理部1015、水平選択部1014、および出力部1017などの各部を制御する。撮像部1002は、光電変換素子を有する単位画素1003が行列状に配置されて構成され、入射される電磁波の大きさに応じた画素信号を生成し、列毎に設けられた垂直信号線1013へ出力する。
【０００７】
垂直選択部1012は、撮像部1002の各単位画素1003の駆動に際して、行制御線1011を介して撮像部1002の行アドレスや行走査の制御を行う。水平選択部1014は、カラム処理部1015の列AD変換部1016の列アドレスや列走査の制御を行う。読出電流源部1005は、撮像部1002からの画素信号を電圧信号として読み出すための電流源である。アナログ部1006は、必要に応じて増幅等を実施する。
【０００８】
カラム処理部1015は、撮像部1002の列毎に設けられた列AD変換部1016を有する。列AD変換部1016は、撮像部1002の各単位画素1003から列毎に出力される画素信号であるアナログ信号をデジタルデータに変換して出力する。クロック生成部1018は、例えば円環遅延回路（図21の円環遅延回路201に対応）で構成され、カウントクロックを出力する。ランプ部1019は、例えば積分回路やDAC回路で構成され、時間が経過するにつれて傾斜状に変化する参照信号を生成する。
【０００９】
水平選択部1014は、シフトレジスタやデコーダなどによって構成され、カラム処理部1015における各列AD変換部1016の列アドレスや列走査の制御を行う。これにより、AD変換されたデジタルデータは順に水平信号線を経由して出力部1017に出力される。
【００１０】
次に、列AD変換部1016の構成について説明する。列AD変換部1016は全て同一に構成され、各々の列AD変換部1016は、比較部1110およびカウンタ1101（図21のカウンタ回路204に対応）を有する構成となっている。
【００１１】
比較部1110は、コンパレータ回路で構成され、撮像部1002の単位画素1003から出力される画素信号と参照信号とを比較し、例えば参照信号が画素信号よりも大なるときはHighレベル、例えば参照信号が画素信号よりも小なるときはLowレベルを出力する。カウンタ1101は、バイナリカウンタ回路で構成され、比較部1110が比較を開始してから比較を終了するまでの比較時間を計測する。これにより、画素信号の大きさに応じた比較時間の計測値がカウンタ1101の計数値として得られる。
【００１２】
次に、AD変換動作について説明する。単位画素1003の具体的な動作については説明を省略するが、単位画素1003からは画素信号としてリセットレベルと信号レベルとが出力される。
【００１３】
まず、単位画素1003からのリセットレベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点の計数値がリセットレベルのデジタルデータとなる。その後、カウンタ1101の計数値が反転される。
【００１４】
続いて、単位画素1003からの信号レベルの読出しが安定した後、比較部1110は参照信号と画素信号との比較を行う。カウンタ1101はアップカウントモードでカウントを実施し、比較終了時点のカウンタ1101の計数値が信号成分（信号レベルからリセットレベルを減算した信号）のデジタルデータとなる。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開2011−23887号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
図23に示す撮像装置では、図21に示すカウンタ回路204に相当するカウンタ1101がカウントを実施することで、デジタルデータの上位ビットを構成する上位計数値が得られるが、図21に示すラッチ回路202および2進化回路203に相当する構成がないため、デジタルデータの下位ビットを構成する下位計数値を得ることはできない。このため、図23に示す撮像装置では高精度なデジタルデータを得ることができない。
【００１７】
図23の列AD変換部1016に対応する部分に、上位計数値および下位計数値の両方を得るための回路を配置することで、高精度なデジタルデータを得ることが可能となる。このような回路配置の一形態として、上位計数値を得るための上位カウンタと、下位計数値を得るための下位カウンタとを、列AD変換部1016に対応する部分に配置することが考えられる。
【００１８】
この場合、上位カウンタは複数の遅延素子の1つの出力信号をカウントクロックとしてカウントを行い、下位カウンタは複数の遅延素子の出力信号の状態に応じた信号をカウントクロックとしてカウントを行う。下位カウンタがカウントする下位計数値のMSB（Most Significant Bit）に桁上りあるいは桁下りが発生した場合、その分だけ上位計数値を調整するため、下位カウンタのMSBの出力信号をカウントクロックとして上位カウンタがカウントを行う。
【００１９】
したがって、上位カウンタに入力されるカウントクロックを複数の遅延素子の1つの出力信号と下位カウンタのMSBの出力信号との間で切り換える必要がある。しかし、カウントクロックの切換えに伴う以下の課題がある。ここでは、上位カウンタがカウントクロックの立下りでカウントを行う（カウントクロックがHigh状態（以下、H状態）からLow状態（以下、L状態）に変化したときにカウントを行う）場合を例として説明を行う。
【００２０】
AD変換動作は非同期動作であり、参照信号と画素信号との比較が終了した時点（比較終了時点）のカウントクロック（複数の遅延素子の1つの出力信号）の論理状態はH状態またはL状態である。例えば、比較終了時点のカウントクロックの論理状態がH状態であり、カウントクロックが切り換えられて下位カウンタからL状態のカウントクロックが上位カウンタに入力された場合、この切換えの前後でカウントクロックの論理状態がH状態からL状態に変化するため、上位カウンタが1カウント分余計にカウントを行う現象（誤カウント）が生じる。このように、上位カウンタに入力されるカウントクロックの切換えによって誤カウントが発生するという課題がある。
【００２１】
本発明は、上述した課題に鑑みてなされたものであって、誤カウントの発生を抑制することができるAD変換回路および撮像装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
本発明は、上記の課題を解決するためになされたもので、時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、AD変換の対象となるアナログ信号と前記参照信号とを比較し、前記参照信号が前記アナログ信号に対して所定の条件を満たしたタイミングで比較処理を終了する比較部と、互いに接続され、パルス信号を遅延させる複数の遅延素子を有し、前記複数の遅延素子からの出力信号で構成される下位位相信号を出力する遅延回路と、第1のアナログ信号に係る前記比較処理の終了に係る第1のタイミングで第1の下位位相信号をラッチした後、第2のアナログ信号に係る前記比較処理の終了に係る第2のタイミングで第2の下位位相信号をラッチするラッチ部と、前記ラッチ部に保持された前記第1の下位位相信号に応じて第1の下位計数信号を生成した後、前記ラッチ部に保持された前記第2の下位位相信号に応じて第2の下位計数信号を生成する演算回路と、前記第1の下位計数信号をカウントクロックとしてカウントを行うと共に第1の上位用カウントクロックを出力して第1の下位計数値を取得し、当該第1の下位計数値を構成する各ビットの値を反転した後、前記第2の下位計数信号をカウントクロックとしてカウントを行うと共に第2の上位用カウントクロックを出力して第2の下位計数値を取得する第1のバイナリカウンタで構成される下位カウンタと、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記第1の上位用カウントクロックに基づいてカウントを行って第1の上位計数値を取得し、当該第1の上位計数値を構成する各ビットの値を反転した後、前記遅延回路から出力される前記第2の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行い、さらに前記第2の上位用カウントクロックに基づいてカウントを行って第2の上位計数値を取得する第2のバイナリカウンタで構成され、カウントクロックの切換えの際に当該第2のバイナリカウンタが保持している上位計数値を保護するデータ保護機能を有する上位カウンタと、を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路である。
【００２３】
また、本発明は、時間の経過とともに増加または減少する参照信号を生成する参照信号生成部と、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のバイナリカウンタで構成され、カウントクロックの切換えの際に当該第2のバイナリカウンタが保持している上位計数値を保護するデータ保護機能を有する上位カウンタと、を備え、前記第1のアナログ信号と前記第2のアナログ信号との差分に応じたデジタルデータを取得するAD変換回路である。
【００２４】
また、本発明のAD変換回路において、前記上位カウンタはさらに、前記遅延回路から出力される前記第1の下位位相信号を構成する1つの前記出力信号をカウントクロックとしてカウントを行う際の前記第2のバイナリカウンタの上位計数値の初期値をセットするデータセット機能を有することを特徴とする。
【００２５】
また、本発明のAD変換回路は、前記第1のバイナリカウンタが保持している下位計数値または前記第2のバイナリカウンタが保持している上位計数値を調整するための調整信号をカウントクロックとして前記第1のバイナリカウンタまたは前記第2のバイナリカウンタへ出力する調整部をさらに備えることを特徴とする。
【００２６】
また、本発明のAD変換回路において、前記遅延回路は、前記複数の遅延素子をリング状に接続した円環遅延回路であることを特徴とする。
【００２７】
また、本発明は、光電変換素子を有する複数の画素が配置され、前記複数の画素は、第1の時間にリセットレベルに応じた第1の画素信号を出力し、第2の時間に入射された電磁波の大きさに応じた第2の画素信号を出力する撮像部と、上記のAD変換回路と、を備え、前記第1の画素信号を前記第1のアナログ信号とし、前記第2の画素信号を前記第2のアナログ信号とすることを特徴とする撮像装置である。
【発明の効果】
【００２８】
本発明によれば、カウントクロックの切換えの際に第2のバイナリカウンタが保持している上位計数値を保護するデータ保護機能を有する上位カウンタを備えることによって、誤カウントの発生を抑制することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の第1の実施形態による撮像装置の構成を示すブロック図である。
【図２】本発明の第1の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図３】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図４】本発明の第1の実施形態における減算時の動作を示すタイミングチャートである。
【図５】本発明の第1の実施形態におけるバイナリカウンタ回路の構成を示す回路図である。
【図６】本発明の第1の実施形態におけるバイナリカウンタ回路の動作を示すタイミングチャートである。
【図７】本発明の第1の実施形態における演算回路およびその周辺の構成を示すブロック図である。
【図８】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図９】本発明の第1の実施形態における下位計数信号生成時の動作を示すタイミングチャートである。
【図１０】本発明の第2の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図１１】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図１２】本発明の第2の実施形態における減算時の動作を示すタイミングチャートである。
【図１３】本発明の第3の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図１４】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図１５】本発明の第3の実施形態における減算時の動作を示すタイミングチャートである。
【図１６】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図１７】本発明の第4の実施形態における減算時の動作を示すタイミングチャートである。
【図１８】本発明の第5の実施形態における列AD変換部の一部の構成を示すブロック図である。
【図１９】本発明の第5の実施形態における減算時の動作を示すタイミングチャートである。
【図２０】本発明の第5の実施形態における減算時の動作を示すタイミングチャートである。
【図２１】従来のAD変換回路の一部構成を示すブロック図である。
【図２２】従来の動作を示すタイミングチャートである。
【図２３】従来の撮像装置の構成を示すブロック図である。
【発明を実施するための形態】
【００３０】
以下、図面を参照し、本発明の実施形態を説明する。
【００３１】
（第1の実施形態）
まず、本発明の第1の実施形態を説明する。図1は、本実施形態による（C）MOS撮像装置の構成の一例を示している。図1に示す撮像装置1は、撮像部2、垂直選択部12、読出電流源部5、アナログ部6、クロック生成部18、ランプ部19（参照信号生成部）、カラム処理部15、水平選択部14、出力部17、制御部20で構成されている。
【００３２】
撮像部2は、入射される電磁波の大きさに応じた信号を生成し出力する単位画素3が複数、行列状に配置されている。垂直選択部12は、撮像部2の各行を選択する。読出電流源部5は、撮像部2からの信号を電圧信号として読み出す。アナログ部6は、詳細な説明は省略するが、必要に応じて信号増幅機能を持つAGC(=Auto Gain Control)回路などを有する。クロック生成部18は各クロックを生成する。ランプ部19は、時間の経過とともに増加または減少する参照信号（ランプ波）を生成する。カラム処理部15は、ランプ部19と参照信号線を介して接続される。水平選択部14は、AD変換されたデータを水平信号線に読み出す。出力部17は、水平信号線に接続されている。制御部20は各部を制御する。
【００３３】
図1では、簡単のため4行×6列の単位画素3から構成される撮像部2の場合について説明しているが、現実には、撮像部2の各行や各列には、数十から数万の単位画素3が配置されることになる。尚、図示を割愛するが、撮像部2を構成する単位画素3は、フォトダイオード／フォトゲート／フォトトランジスタなどの光電変換素子、およびトランジスタ回路によって構成されている。
【００３４】
以下では、各部のより詳細な説明を行う。撮像部2は、単位画素3が4行6列分だけ2次元に配置されるとともに、この4行6列の画素配列に対して行ごとに行制御線11が配線されている。行制御線11の各一端は、垂直選択部12の各行に対応した各出力端に接続されている。垂直選択部12は、シフトレジスタあるいはデコーダなどによって構成され、撮像部2の各単位画素3の駆動に際して、行制御線11を介して撮像部2の行アドレスや行走査の制御を行う。また、撮像部2の画素配列に対して列ごとに垂直信号線13が配線されている。
【００３５】
読出電流源部5は、撮像部2からの信号を電圧信号として読み出すための電流源で構成されている。
【００３６】
カラム処理部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の詳細については後述する。
【００３７】
ランプ部19は、例えば積分回路によって構成され、制御部20による制御に従って、時間が経過するにつれてレベルが傾斜状に変化する、いわゆるランプ波を生成し、参照信号線を介して比較部110の入力端子の一方に供給する。尚、ランプ部19としては、積分回路を用いたものに限られるものではなく、DAC回路を用いても構わない。ただし、DAC回路を用いてデジタル的にランプ波を生成する構成をとる場合には、ランプ波のステップを細かくする、あるいはそれと同等な構成をとる必要がある。
【００３８】
水平選択部14は、シフトレジスタあるいはデコーダなどによって構成され、カラム処理部15の列AD変換部16の列アドレスや列走査の制御を行う。この水平選択部14による制御に従って、列AD変換部16でAD変換されたデジタルデータは順に水平信号線に読み出される。
【００３９】
クロック生成部18は、複数の遅延ユニット（反転素子）が接続された遅延回路であるVCO100で構成される。VCO100を構成する遅延ユニットが例えば8段接続されていれば、VCO100は8相クロックCK0、CK1、CK2、CK3、CK4、CK5、CK6、CK7を出力する。これらの遅延ユニットが出力する信号は、後述する下位位相信号を構成する。尚、VCO100を構成する遅延回路は、複数個の反転素子がリング状に接続された円環遅延回路であっても構わない。その場合、対称発振回路（例えば、図21に示した円環遅延回路201）と同様に円環遅延回路自体は奇数個の遅延ユニットで構成されるが、その出力は等価的に偶数（特に、2のべき乗）個である所謂非対称発振回路を用いることが望ましい。更に、円環遅延回路自体が偶数個（特に、2のべき乗個）の遅延ユニットで構成されるRDL(=Ring Delay Line)回路や円環遅延回路自体が偶数個（特に、2のべき乗個）の遅延ユニットで構成され、更に遅延ユニットを構成する全差動型反転回路の最終段の出力がそれぞれ初段の入力の逆側に帰還されて構成される所謂全差動型発振回路を用いても構わない。
【００４０】
出力部17は、2進化したデジタルデータを出力する。また、出力部17は、バッファリング機能以外に、例えば黒レベル調整、列バラツキ補正、色処理などの信号処理機能を内蔵しても構わない。更に、nビットパラレルのデジタルデータをシリアルデータに変換して出力するようにしても構わない。
【００４１】
制御部20は、ランプ部19、クロック生成部18、垂直選択部12、水平選択部14、出力部17などの各部の動作に必要なクロックや所定タイミングのパルス信号を供給するTG(=Timing Generator：タイミングジェネレータ)の機能ブロックと、このTGと通信を行うための機能ブロックとを備える。
【００４２】
次に、列AD変換部16の構成について説明する。列AD変換部16は各々、撮像部2の各単位画素3から垂直信号線13を介して読み出されるアナログの画素信号を、ランプ部19から与えられる、AD変換するためのランプ波と比較することにより、リセットレベル（基準レベル）や信号レベルの各大きさに対応した時間軸方向の大きさ（パルス幅）を持つパルス信号を生成する。そして、このパルス信号のパルス幅の期間に対応したデータを画素信号の大きさに応じたデジタルデータとすることによってAD変換を行う。
【００４３】
以下では、列AD変換部16の構成の詳細について説明する。列AD変換部16は列ごとに設けられており、図1では6個の列AD変換部16が設けられている。各列の列AD変換部16は同一の構成となっている。列AD変換部16は、比較部110、ラッチ部108、演算回路106、下位カウンタ103、切換え部109、上位カウンタ101で構成される。ここで、下位カウンタ103および上位カウンタ101は、各カウンタの論理状態を保持するラッチ機能を合わせ持つバイナリカウンタ回路を想定している。
【００４４】
比較部110は、撮像部2の単位画素3から垂直信号線13を介して出力されるアナログの画素信号に応じた信号電圧と、ランプ部19から供給されるランプ波とを比較することによって、画素信号の大きさを時間軸方向の情報（パルス信号のパルス幅）に変換する。比較部110の比較出力は、例えばランプ電圧が信号電圧よりも大なるときにはHighレベル（Hレベル）になり、ランプ電圧が信号電圧以下のときにはLowレベル（Lレベル）になる。
【００４５】
ラッチ部108は、比較部110の比較出力を受けて、この比較出力が反転するタイミングで、クロック生成部18で生成された論理状態（下位位相信号）をラッチ（保持／記憶）する。演算回路106は、ラッチ部108にラッチされた下位位相信号に基づいて、下位カウンタ103のカウントクロックとなる下位計数信号を生成する。下位カウンタ103は、下位計数信号をカウントクロックとしてカウントを行う。これによって、デジタルデータの下位ビットを構成する下位計数値が得られる。
【００４６】
上位カウンタ101は、クロック生成部18から出力されラッチ部108を通して入力されるクロック信号（上位計数信号）をカウントクロック（第1のカウントクロック）としてカウントを行う。また、上位カウンタ101は、下位カウンタ103の出力信号をカウントクロック（第2のカウントクロック）として、下位計数値の桁上りまたは桁下りに基づくカウントを行う。これによって、デジタルデータの上位ビットを構成する上位計数値が得られる。本実施形態の上位カウンタ101は、カウントクロックの切換えの際に上位計数値を保護するデータ保護機能を有している。
【００４７】
ここで、ラッチ部108にラッチされた下位位相信号は、例えば8ビットのデータである。その場合、下位カウンタ103は3ビットのカウンタ回路である。また、上位カウンタ101は、例えば9ビットのカウンタ回路である。尚、これらは一例であって、これに限る必要はない。
【００４８】
次に、本例の動作について説明する。ここでは、単位画素3の具体的な動作については説明を省略するが、周知のように単位画素3ではリセットレベルと信号レベルとが出力される。
【００４９】
AD変換は、以下のようにして行われる。例えば所定の傾きで下降するランプ波と、単位画素3からの画素信号であるリセットレベルあるいは信号レベルの各電圧とを比較し、この比較処理で用いるランプ波が生成された時点から、リセットレベルや信号レベルの各電圧とランプ波（ランプ電圧）とが一致するまでの期間を、ラッチ部108を介して出力されるVCO100からのクロック（例えばCK7）によりカウントするとともに、一定の位相差を有する多相クロック（CK0〜CK7）の論理状態で計測することによって、リセットレベルあるいは信号レベルの各大きさに対応したデジタルデータを得る。VCOからのクロックの信号数（本例では8）は、2のべき乗であることが望ましい。
【００５０】
ここで、撮像部2の選択行の各単位画素3からは、アナログの画素信号として、1回目の読出し動作で画素信号の雑音を含むリセットレベルが読み出され、その後、2回目の読出し動作で信号レベルが読み出される。そして、リセットレベルと信号レベルとが垂直信号線13を通して列AD変換部16に時系列で入力される。尚、1回目の読出し動作で信号レベルが読み出され、その後の2回目の読出し動作でリセットレベルが読み出されても構わない。以下では、1回目および2回目の各読出し動作とその後の減算（CDS処理）の詳細について説明する。説明を容易にするため、上位カウンタ101および下位カウンタ103のカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ103はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。
【００５１】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【００５２】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき（第1のタイミング）に、比較出力を反転させる。この第１のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【００５３】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103のMSBである3ビット目の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【００５４】
その後、演算回路106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ103へ出力する。下位カウンタ103は、第1の下位計数信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。下位カウンタ103がカウントを行っている間、上位カウンタ101は下位カウンタ103における桁下りに応じてカウントを行う。
【００５５】
続いて、下位カウンタ103が保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値が反転される。その後、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、VCO100から出力されるクロックである。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【００５６】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、制御部20は、ランプ部19に対して、ランプ波生成の制御データを供給する。これを受けてランプ部19は、比較部110の一方の入力端子に与える比較電圧として、波形が全体として時間的にランプ状に変化するランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。尚、VCO100のクロック信号の出力開始のタイミングと、ランプ波の出力開始のタイミングとは略同時であることが好ましいが、これに限らない。
【００５７】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき（第2のタイミング）に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。制御部20は、所定の期間を経過すると、ランプ部19への制御データの供給と、クロック生成部18からの出力とを停止する。これにより、ランプ部19は、ランプ波の生成を停止する。
【００５８】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103の3ビット目の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【００５９】
その後、演算回路106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ103へ出力する。下位カウンタ103は、第2の下位計数信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。下位カウンタ103がカウントを行っている間、上位カウンタ101は下位カウンタ103における桁下りに応じてカウントを行う。
【００６０】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。最後に、下位カウンタ103が保持している第2の下位計数値および上位カウンタ101が保持している第2の上位計数値を構成する各ビットの値が反転され、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【００６１】
次に、列AD変換部16の各構成の詳細について説明する。図2は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図2に示す構成について説明する。図2に示す各構成は、図1に示した列AD変換部16内の各構成に対応しており、ラッチ部108、演算回路106、下位カウンタ103、切換え部109、上位カウンタ101が設けられている。演算回路106および下位カウンタ103は下位計数部を構成する。上位カウンタ101は上位計数部を構成する。図1のランプ部19、VCO100、比較部110と図2に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【００６２】
ラッチ部108は、比較部110からの比較出力に相当する制御信号Holdにより、遅延ユニットを含むVCO100の出力であるクロック信号CK0〜CK7の所定のタイミングでの論理状態（下位位相信号）をラッチするラッチ回路D_0〜D_7を有する。各ラッチ回路D_0〜D_7の論理状態は、制御信号LRSTによりリセットされる。ラッチ部108がラッチした下位位相信号は演算回路106に出力される。また、ラッチ部108のラッチ回路D_7に入力されるクロック信号CK7は、上位カウンタ101がカウントを行うためのカウントクロックとして切換え部109に出力される。
【００６３】
演算回路106は、制御信号CTLにより、ラッチ部108から出力された下位位相信号に基づいて下位計数信号を生成する。下位カウンタ103および上位カウンタ101は、ダウンカウントモードでカウントを行うバイナリカウンタ回路で構成されている。切換え部109は、制御信号SELにより、上位カウンタ101に入力されるカウントクロックを切り換える。
【００６４】
下位カウンタ103／上位カウンタ101には、制御信号CLRST／CHRST、制御信号CLMODE／CHMODE、および制御信号REVが入力される。制御信号CLRST／CHRSTは、下位カウンタ103／上位カウンタ101の下位計数値／上位計数値をリセットする信号である。制御信号CLMODE／CHMODEは、下位カウンタ103／上位カウンタ101の動作をカウントモードとデータ保護モードの間で切り換える信号である。制御信号REVは、下位カウンタ103／上位カウンタ101の下位計数値／上位計数値を反転する信号である。本例においては、上位カウンタ101を構成するカウンタ回路には、正／負を判断するためのフラグ用カウンタ回路を設けても構わない。下位カウンタ103および上位カウンタ101の詳細については、図5を参照して後述する。
【００６５】
尚、下位位相信号から下位計数信号を生成する場合、例えば図7に示すような構成を用いて、サーモコードに基づいたパルスと基準クロックとの論理演算により下位計数信号を生成することが好ましいが、この構成に限る必要はない。尚、図7の詳細については後段で詳しく説明する。
【００６６】
次に、図2に示した構成の動作について具体例を用いて説明する。本説明では、下位カウンタ103として3ビットのダウンカウンタ回路、上位カウンタ101として9ビットのダウンカウンタ回路を用いた場合で説明する。遅延回路の出力である8個のクロック信号に基づく下位位相信号の状態数は全8状態（状態0〜7）となる。ダウンカウントモードで計数した場合、例えば状態0であれば計数値は3’b000、例えば状態7であれば計数値は3’b001となる。
【００６７】
上記の計数値の表記について説明する。“3’b”は計数値が3ビットの2進数であることを示す。“000”は下位カウンタ103の出力を示す。上位カウンタ101の計数値についても同様の表記を使用する。
【００６８】
以下では、第1の画素信号とそれに続く第2の画素信号との減算（CDS処理）を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。図3および図4は各信号の波形を示している。図3は1回目の読出し時の各信号の波形を示し、図4は2回目の読出し時の各信号の波形を示している。尚、図3および図4において、OUT[0]、OUT[1]、OUT[2]は下位カウンタ103の出力を示し、OUT[2:0]は、12ビットのデジタルデータを構成する下位ビット（0ビット目から2ビット目まで）を示し、OUT[11:3]は、デジタルデータを構成する上位ビット（3ビット目から11ビット目まで）を示す。
【００６９】
ここで、第1の画素信号の下位位相信号に相当する状態は状態2、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は26（=2+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は37となる。
【００７０】
<<1回目の読出し>>
最初に、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103および上位カウンタ101の動作モードがカウントモードに設定される。続いて、制御信号CLRST／CHRSTにより、下位カウンタ103および上位カウンタ101の計数値がリセットされる。同時に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。比較処理の開始時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【００７１】
所定の条件を満足する第1のタイミング（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング）で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第1の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b1111_1110_1（-3に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_1000となる。
【００７２】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは下位カウンタ103の3ビット目の出力信号である。尚、本例では下位カウンタ103の3ビット目の反転出力が上位カウンタ101に入力される。この時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b1111_1110_1（-3に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_1000となる。
【００７３】
続いて、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。その後、第1の下位位相信号の2進化処理を行う（下位計数信号の生成については、図7〜図9を参照して後述する）。第1の下位位相信号の2進化処理によって演算回路106から下位カウンタ103にカウントクロックが出力され、下位カウンタ103はカウントを行う。
【００７４】
下位カウンタ103の3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103の3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103の計数値に桁下りが発生する。この桁下りにより上位カウンタ101の計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ103が保持している値は3’b110（-2に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。12ビットで表現すると、12’b1111_1110_0110となる。
【００７５】
続いて、下位カウンタ103および上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103が保持している値は3’b001（1に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1001となる。2進数の減算では、値を反転した後、1を加算する必要があるが、後述するように、2回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、値を反転した後に1を加算していない。尚、反転時の下位カウンタ103および上位カウンタ101の動作の詳細については、図5および図6を参照して後述する。
【００７６】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがL状態に設定され、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。この時点で、下位カウンタ103が保持している値は3’b001（1に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1001となる。
【００７７】
<<2回目の読出し>>
続いて、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRST／CHRSTによる下位カウンタ103および上位カウンタ101の計数値のリセットは行われない。その後、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。この時点で、下位カウンタ103が保持している値は3’b001（1に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1001となる。
【００７８】
所定の条件を満足する第2のタイミング（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング）で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第2の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103が保持している値は3’b001（1に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0001となる。
【００７９】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは下位カウンタ103の3ビット目の出力信号である。尚、本例では下位カウンタ103の3ビット目の反転出力が上位カウンタ101に入力される。この時点で、下位カウンタ103が保持している値は3’b001（1に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0001となる。
【００８０】
続いて、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。その後、第2の下位位相信号の2進化処理を行う（下位計数信号の生成については、図7〜図9を参照して後述する）。第2の下位位相信号の2進化処理によって演算回路106から下位カウンタ103にカウントクロックが出力され、下位カウンタ103はカウントを行う。
【００８１】
下位カウンタ103の3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103の3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103の計数値に桁下りが発生する。この桁下りにより上位カウンタ101の計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ103が保持している値は3’b010（-6に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。12ビットで表現すると、12’b1111_1101_1010となる。
【００８２】
上記のように、下位カウンタ103および上位カウンタ101の計数値が負数であるため、最後に、下位カウンタ103および上位カウンタ101の計数値が反転される（図4では省略）。この時点で、下位カウンタ103が保持している値は3’b101（5に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0101（37に相当）となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、値を反転した後に1を加算していない。
【００８３】
第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。尚、2回目の読出し時におけるデジタルデータの反転は、デジタルデータが出力部17に転送された後でも構わない。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【００８４】
次に、下位カウンタ103および上位カウンタ101に使用されるバイナリカウンタ回路の詳細を説明する。図5は、下位カウンタ103および上位カウンタ101を構成する1ビット分のカウンタ回路Bit[m]（m：0〜n-1）の構成の一例を示している。図5に示すカウンタ回路Bit[m]は、フリップフロップDFF、AND回路AND1、OR回路OR1、切換えスイッチSWで構成されている。
【００８５】
フリップフロップ回路DFFはDフリップフロップで構成されている。AND回路AND1は、前段のカウンタ回路Bit[m-1]の出力信号CK[m-1]と制御信号CNTENのAND演算を行うことにより、カウントクロックを有効／無効にするためのパルスを出力する。OR回路OR1は、AND回路AND1の出力信号と制御信号REVのOR演算を行うことにより、ビットを反転するためのパルスを生成する。切換えスイッチSWは、ビット値を保護するため、制御信号CKS（図2〜図4の制御信号CLMODE／CHMODEに対応）に基づいて、入力端子Dと出力端子Qが接続された状態と、入力端子Dと反転出力端子QBが接続された状態とを切り換える。カウンタ回路Bit[m]がn個接続されるとnビットのカウンタ回路が構成される。尚、カウンタ回路を構成する各ビットは略同様な構成が望ましいが、これに限らない。
【００８６】
次に、カウンタ回路Bit[m]の動作、特にビットの反転動作について説明する。図6はカウンタ回路Bit[m]の動作に係る各信号の波形を示している。図6は特に、ビットの反転動作を中心とした動作に係る各信号の波形を示している。尚、カウント動作時の制御信号CKSはL状態、制御信号CNTENはH状態、制御信号REVはL状態である。
【００８７】
カウント動作後に、制御信号CKSがH状態となる。これにより、カウンタ回路Bit[m]の出力端子Qと入力端子Dが接続されるため、カウンタ回路Bit[m]の出力は変化せずに一定の状態を保ち、各ビット値が保護される。続いて、制御信号CNTENがL状態となる。これにより、カウントクロックの入力が無効となる。
【００８８】
続いて、制御信号CKSがL状態となり、カウンタ回路Bit[m]の反転出力端子QBと入力端子Dが接続される。これにより、入力端子Dに入力される信号の状態が反転する。その後、制御信号REVがL状態からH状態に変化し、さらにL状態に変化する。制御信号REVがH状態からL状態に変化した時点でフリップフロップ回路DFFは、入力端子Dに入力される信号を保持し、出力端子Qから出力する。上記のように、制御信号CKSがL状態となった時点で入力端子Dに入力される信号の状態が反転しているため、制御信号REVがH状態からL状態に変化することにより、カウンタ回路Bit[m]の出力、即ち各ビット値が反転される。
【００８９】
その後、制御信号CKSがH状態となる。これにより、カウンタ回路Bit[m]の出力端子Qと入力端子Dが接続されるため、カウンタ回路Bit[m]の出力は変化せずに一定の状態を保ち、各ビット値が保護される。続いて、制御信号CNTENがH状態となる。これにより、カウントクロックの入力が有効となる。最後に、制御信号CKSがL状態となり、カウンタ回路Bit[m]の反転出力端子QBと入力端子Dが接続される。上記の動作により、各ビット値を反転した値を初期値として、再びカウント動作を行うことが可能となる。尚、上位カウンタ101に入力されるカウントクロックの切換えを行う際のデータ保護モードの動作は、図6において“データ保護モード”と記載されている期間の動作と同様である。
【００９０】
次に、演算回路106の詳細について説明する。図7は、演算回路106における下位計数信号の生成について説明するために、演算回路106の周辺の構成を含む詳細構成の一例を示している。図7に示す構成のうち、ラッチ部108および下位カウンタ103については前述した通りである。以下では、演算回路106の構成について説明する。
【００９１】
図7に示すように、演算回路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演算を行う。
【００９２】
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演算を行う。
【００９３】
次に、演算回路106の動作について説明する。図8および図9は、下位計数信号生成時の動作を示している。図8は、遅延回路から出力されるクロック信号CK0〜CK7の波形を示している。図8においてパルス信号STARTPは、遅延回路に入力されるパルス信号である。クロック信号CK0〜CK7の状態は、図8に示す状態0〜状態7のいずれかとなる。ラッチ部108のラッチ回路D_0〜D_7は、制御信号Holdにより、クロック信号CK0〜CK7の状態（下位位相信号）をラッチする。図9は、下位計数信号を生成する動作に係る各信号の波形を示している。
【００９４】
以下では、第1の下位位相信号から第1の下位計数信号を生成し、第2の下位位相信号から第2の下位計数信号を生成する具体例を説明する。ここで、第1の下位位相信号に相当する状態は状態7とし、第2の下位位相信号に相当する状態は状態3とする。本例の場合、第1の下位位相信号から第1の下位計数信号は7パルス生成され、第2の下位位相信号から第２の下位計数信号は3パルス生成される。生成された各パルスは下位カウンタ103のカウントクロックとして入力される。
【００９５】
まず、動作の概略を説明する。制御信号SW0〜SW7およびパルス信号TMPLATにより、下位位相信号に応じたパルスが生成され、そのパルスに基づいてサーモコード（本例の場合、H状態からL状態へ変化するエッジ位置）が検出される。ラッチ回路D_*(*は、0〜7の何れか)の出力Qとラッチ回路D_TMPの反転出力QBのAND演算の結果がH状態となった場合、そのH状態がRSラッチRS1に入力されることでサーモコードが検出される。また、RSラッチRS1の出力と計数信号LATCNTのAND演算の結果として下位計数信号のパルスが生成され、下位カウンタ103のカウントクロックとなる。
【００９６】
以下では、詳細な動作を説明する。尚、下位カウンタ103の詳細な動作については既に説明したため、以下では下位カウンタ103の動作の説明を省略する。所定の条件を満足する第1の時点（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミングに相当）で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK1〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第1の下位位相信号に対応する。
【００９７】
制御信号CLMODEがL状態であるため、下位カウンタ103の動作モードがカウントモードに設定される。さらに、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号CLRSTにより下位カウンタ103の計数値がリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。この時点のRSラッチRS1の出力QはL状態である。
【００９８】
続いて、制御信号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状態のままである。
【００９９】
続いて、制御信号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パルス分のカウントクロックが出力される。
【０１００】
続いて、制御信号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パルス分のカウントクロックが出力される。
【０１０１】
これ以降、制御信号SW4〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保つため、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW4〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ103のカウントクロックとなる第1の下位計数信号が合計で7パルス生成される。以上により、第1の下位計数信号の生成が終了する。
【０１０２】
続いて、所定の条件を満足する第2の時点（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミングに相当）で、制御信号Holdが変化することにより、遅延回路から出力されるクロック信号CK1〜CK7の状態がラッチ部108に保持される。この時点でラッチ回路D_0〜D_7に保持されている状態が第2の下位位相信号に対応する。
【０１０３】
続いて、制御信号CLMODEがH状態となり、下位カウンタ103の各ビットの値が反転された後、制御信号CLMODEがL状態となり、下位カウンタ103の動作モードがカウントモードに設定される。さらに、制御信号LATSETによりラッチ回路D_TMPがリセットされ、制御信号RSLRSTによりRSラッチRS1がリセットされる。ここでは、下位カウンタ103のリセットは行わない。この時点のRSラッチRS1の出力QはL状態である。
【０１０４】
続いて、制御信号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状態のままである。
【０１０５】
続いて、制御信号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からカウントクロックのパルスは出力されない。
【０１０６】
これ以降、制御信号SW5〜SW3が順にONされるが、RSラッチRS1の入力SはL状態を保つため、RSラッチRS1の出力QはL状態を保つ。このため、制御信号SW5〜SW3が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスは出力されない。
【０１０７】
続いて、制御信号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からカウントクロックのパルスが出力される。
【０１０８】
これ以降、制御信号SW1〜SW0が順にONされるが、RSラッチRS1の入力SはL状態を保つため、RSラッチRS1の出力QはH状態を保つ。このため、制御信号SW1〜SW0が順にONされたとき、RSラッチRS1の出力Qと計数信号LATCNTにより、AND回路AND2からカウントクロックのパルスが出力される。したがって、下位カウンタ103のカウントクロックとなる第2の下位計数信号が合計で3パルス生成される。以上により、第2の下位計数信号の生成が終了する。図7に示す構成により、下位位相信号から下位計数信号を生成する回路を簡易な回路構成で実現することができる。
【０１０９】
上述したように、本実施形態によれば、カウントクロックの切換えの際に上位カウンタ101が保持している計数値が保護されるので、カウントクロックの切換えに伴う誤カウントの発生を抑制することができる。また、下位カウンタ103および上位カウンタ101は1種類のカウントモード（本実施形態ではダウンカウントモード）のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【０１１０】
また、遅延回路として、複数の遅延ユニットをリング状に接続した円環遅延回路を使用することによって、下位位相信号の各位相の精度を向上することができる。また、本実施形態のAD変換回路を撮像装置に適用することによって、高画質な画像を得ることができる。
【０１１１】
（第2の実施形態）
次に、本発明の第2の実施形態を説明する。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様である。それ以外は、略同様であるので説明を省略する。
【０１１２】
図10は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図10に示す構成について説明する。図10に示すように、ラッチ部108、演算回路106、下位調整回路104、下位カウンタ103、切換え部109、上位カウンタ101が設けられている。下位調整回路104、下位カウンタ103、上位カウンタ101以外の構成は、図2に示す構成と同様であるので、説明を省略する。
【０１１３】
下位調整回路104は下位調整部を構成しており、下位カウンタ103が保持している値が反転された後、制御信号LCNTに基づいて、その値を調整するための調整パルスを生成し、下位カウンタ103に出力する。下位カウンタ103および上位カウンタ101は、アップカウントモードでカウントを行うバイナリカウンタ回路で構成されている。図1のランプ部19、VCO100、比較部110と図10に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【０１１４】
次に、本例の動作について説明する。以下では、1回目および2回目の各読出し動作とその後の減算（CDS処理）の詳細について説明する。説明を容易にするため、上位カウンタ101および下位カウンタ103のカウントモードはアップカウントモードであるものとし、上位カウンタ101および下位カウンタ103はカウントクロックの立下りエッジのタイミングでカウントを行うものとする。また、前述した動作と同様の動作については、適宜、説明を省略する。
【０１１５】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０１１６】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき（第1のタイミング）に、比較出力を反転させる。この第１のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。続いて、ランプ部19は、ランプ波の生成を停止する。
【０１１７】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103の3ビット目の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【０１１８】
その後、演算回路106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ103へ出力する。下位カウンタ103は、第1の下位計数信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。下位カウンタ103がカウントを行っている間、上位カウンタ101は下位カウンタ103における桁上りに応じてカウントを行う。
【０１１９】
続いて、下位カウンタ103が保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値が反転される。続いて、下位調整回路104が調整パルスを生成し、下位カウンタ103に出力する。下位カウンタ103は、調整パルスをカウントクロックとしてカウントを行う。その後、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、VCO100から出力されるクロックである。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【０１２０】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０１２１】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき（第2のタイミング）に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。続いて、ランプ部19は、ランプ波の生成を停止する。
【０１２２】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103の3ビット目の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。
【０１２３】
その後、演算回路106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ103へ出力する。下位カウンタ103は、第2の下位計数信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。下位カウンタ103がカウントを行っている間、上位カウンタ101は下位カウンタ103における桁上りに応じてカウントを行う。
【０１２４】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【０１２５】
次に、図10に示した構成の動作について具体例を用いて説明する。本説明では、下位カウンタ103として3ビットのアップカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。以下の説明において、図2に示した構成の動作と同様の部分については、適宜、説明を省略する。
【０１２６】
以下では、第1の画素信号とそれに続く第2の画素信号との減算（CDS処理）を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。図11および図12は各信号の波形を示している。図11は1回目の読出し時の各信号の波形を示し、図12は2回目の読出し時の各信号の波形を示している。
【０１２７】
ここで、第1の画素信号の下位位相信号に相当する状態は状態2、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は26（=2+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は37となる。
【０１２８】
<<1回目の読出し>>
最初に、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103および上位カウンタ101の動作モードがカウントモードに設定される。続いて、制御信号CLRST／CHRSTにより、下位カウンタ103および上位カウンタ101の計数値がリセットされる。同時に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。比較処理の開始時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。
【０１２９】
所定の条件を満足する第1のタイミング（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング）で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第1の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1000となる。
【０１３０】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは下位カウンタ103の3ビット目の出力信号である。この時点で、下位カウンタ103が保持している値は3’b000、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1000となる。
【０１３１】
続いて、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。その後、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算回路106から下位カウンタ103にカウントクロックが出力され、下位カウンタ103はカウントを行う。
【０１３２】
本例では下位カウンタ103の計数値に桁上りが発生しないので、上位カウンタ101の計数値は変化しない。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ103が保持している値は3’b010（2に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1010となる。
【０１３３】
続いて、下位カウンタ103および上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103が保持している値は3’b101（-3に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0101となる。
【０１３４】
2進数の減算では、値を反転した後、1を加算する必要があるため、下位調整回路104は、制御信号LCNTに基づいて1パルス分の調整パルスを生成し、下位カウンタ103に出力する。下位カウンタ103は、調整パルスをカウントクロックとしてカウントを行う。このカウントにより、下位カウンタ103の計数値が1だけ増加する。尚、本例では、下位カウンタ103の3ビット目の出力信号が上位カウンタ101に入力されることで下位カウンタ103と上位カウンタ101が1つのカウンタ回路を形成して動作しているため、計数値の調整は下位カウンタ103についてのみ行えばよい。
【０１３５】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがL状態に設定され、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。この時点で、下位カウンタ103が保持している値は3’b110（-2に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0110となる。
【０１３６】
<<2回目の読出し>>
続いて、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRST／CHRSTによる下位カウンタ103および上位カウンタ101の計数値のリセットは行われない。その後、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。この時点で、下位カウンタ103が保持している値は3’b110（-2に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0110となる。
【０１３７】
所定の条件を満足する第2のタイミング（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング）で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第2の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103が保持している値は3’b110（-2に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1110となる。
【０１３８】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは下位カウンタ103の3ビット目の出力信号である。この時点で、下位カウンタ103が保持している値は3’b110（-2に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1110となる。
【０１３９】
続いて、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103および上位カウンタ101の動作モードがカウントモードとなる。その後、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算回路106から下位カウンタ103にカウントクロックが出力され、下位カウンタ103はカウントを行う。
【０１４０】
下位カウンタ103の3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ103の計数値に桁上りが発生する。この桁上りにより上位カウンタ101の計数値が1だけ加算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ103が保持している値は3’b101（5に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0101（37に相当）となる。
【０１４１】
第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【０１４２】
上述したように、本実施形態によれば、カウントクロックの切換えの際に上位カウンタ101が保持している計数値が保護されるので、カウントクロックの切換えに伴う誤カウントの発生を抑制することができる。また、下位カウンタ103および上位カウンタ101は1種類のカウントモード（本実施形態ではアップカウントモード）のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【０１４３】
また、下位調整回路104が調整パルスを出力し、下位カウンタ103が調整パルスをカウントパルスとしてカウントを行うことによって、このカウントの直前に行われる計数値の反転と連動して2進数の減算を実現することができる。
【０１４４】
（第3の実施形態）
次に、本発明の第3の実施形態を説明する。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様である。それ以外は、略同様であるので説明を省略する。
【０１４５】
図13は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図13に示す構成について説明する。図13に示すように、ラッチ部108、演算回路106、下位カウンタ103a，103b、判定部105、切換え部109、上位カウンタ101が設けられている。下位カウンタ103a，103b、判定部105、上位カウンタ101以外の構成は、図2に示す構成と同様であるので、説明を省略する。
【０１４６】
下位カウンタ103a，103bは4ビットのバイナリカウンタ回路を構成する。下位カウンタ103aが1ビット目〜3ビット目の計数値をカウントし、下位カウンタ103bが4ビット目（フラグ用ビット）の計数値をカウントする。下位カウンタ103bは、下位カウンタ103aがカウントを行ったときに発生する桁下りに応じてカウントを行うフラグ用カウンタである。尚、本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。また、第1の実施形態および第2の実施形態では計数値のリセットを行うための制御信号CHRSTが上位カウンタ101に入力されているが、本実施形態では計数値を所定の値にセットするための制御信号CHSETが上位カウンタ101に入力される。即ち、本実施形態の上位カウンタ101はデータセット機能を有する。
【０１４７】
判定部105は、制御信号FLAGで指定される期間において、下位カウンタ103bの出力信号に基づいて、上位計数値の調整が必要であるか否かを判定する。上位計数値の調整が必要であると判定される場合、判定部105は、上位計数値の減算を行うためのカウントクロックを切換え部109に出力する。図1のランプ部19、VCO100、比較部110と図13に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【０１４８】
次に、本例の動作について説明する。以下では、1回目および2回目の各読出し動作とその後の減算（CDS処理）の詳細について説明する。説明を容易にするため、上位カウンタ101および下位カウンタ103a，103bのカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ103a，103bはカウントクロックの立下りエッジのタイミングでカウントを行うものとする。また、前述した動作と同様の動作については、適宜、説明を省略する。第1の実施形態および第2の実施形態では、1回目の読出し時と2回目の読出し時のそれぞれにおいてカウントクロックの切換えが行われているが、本実施形態では2回目の読出し時のみカウントクロックの切換えが行われる。
【０１４９】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０１５０】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき（第1のタイミング）に、比較出力を反転させる。この第１のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。続いて、ランプ部19は、ランプ波の生成を停止する。
【０１５１】
その後、演算回路106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ103aへ出力する。下位カウンタ103aは、第1の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ103bは、下位カウンタ103aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。続いて、下位カウンタ103a，103bが保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値が反転される。
【０１５２】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０１５３】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき（第2のタイミング）に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。続いて、ランプ部19は、ランプ波の生成を停止する。
【０１５４】
その後、演算回路106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ103aへ出力する。下位カウンタ103aは、第2の下位計数信号をカウントクロックとしてカウントを行い、下位カウンタ103bは、下位カウンタ103aの3ビット目の出力信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。
【０１５５】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103bの出力信号に基づく判定部105の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。判定部105は、下位カウンタ103bの出力信号がH状態である場合にはカウントクロックを出力し、下位カウンタ103bの出力信号がL状態である場合にはカウントクロックを出力しない。判定部105からカウントクロックが出力された場合、上位カウンタ101の上位計数値が1だけ減算される。
【０１５６】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。最後に、下位カウンタ103a，103bが保持している第2の下位計数値および上位カウンタ101が保持している第2の上位計数値を構成する各ビットの値が反転され、第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【０１５７】
次に、図13に示した構成の動作について具体例を用いて説明する。本説明では、下位カウンタ103a，103bとして合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのダウンカウンタ回路を用いた場合で説明する。以下の説明において、下位カウンタ103a，103bの出力を例えば“[0]000”のように表記する。“[0]”は下位カウンタ103bの出力を示し、“000”は下位カウンタ103aの出力を示す。以下の説明において、図2に示した構成の動作と同様の部分については、適宜、説明を省略する。
【０１５８】
以下では、第1の画素信号とそれに続く第2の画素信号との減算（CDS処理）を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。図14および図15は各信号の波形を示している。図14は1回目の読出し時の各信号の波形を示し、図15は2回目の読出し時の各信号の波形を示している。
【０１５９】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は32となる。
【０１６０】
<<1回目の読出し>>
最初に、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードに設定される。続いて、制御信号CLRSTにより、下位カウンタ103a，103bの計数値がリセットされる。また、制御信号CHSETにより、上位カウンタ101の計数値が所定の値（この場合、9’b1111_1111_1）にセットされる。同時に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。比較処理の開始時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1111_1（-1に相当）である。これらの値を12ビットで表現すると、12’b1111_1111_1000となる。
【０１６１】
所定の条件を満足する第1のタイミング（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング）で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第1の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0000となる。
【０１６２】
続いて、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。下位カウンタ103aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103aの計数値に桁下りが発生する。この桁下りにより下位カウンタ103bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0001となる。
【０１６３】
続いて、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1110となる。2進数の減算では、値を反転した後、1を加算する必要があるが、後述するように、2回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、値を反転した後に1を加算していない。
【０１６４】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがデータ保護モードとなる。
【０１６５】
<<2回目の読出し>>
続いて、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ103a，103bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。その後、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードとなる。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1110となる。
【０１６６】
所定の条件を満足する第2のタイミング（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング）で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第2の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0110となる。
【０１６７】
その後、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。下位カウンタ103aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103aの計数値に桁下りが発生する。この桁下りにより下位カウンタ103bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0111となる。
【０１６８】
続いて、判定部105による判定と上位計数値の減算が行われる。判定部105は、下位カウンタ103bの計数値が1である場合にはカウントクロックを出力し、下位カウンタ103bの計数値が0である場合にはカウントクロックを出力しない。まず、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは判定部105の出力信号である。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0111となる。
【０１６９】
続いて、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードに設定される。下位カウンタ103bの計数値が1であるため、判定部105はカウントクロックを出力する。上位カウンタ101は、このカウントクロックに基づいてカウントを行う。このカウントにより、上位カウンタ101の計数値が1だけ減少する。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。これらの値を12ビットで表現すると、12’b1111_1101_1111となる。
【０１７０】
上記のように、下位カウンタ103a，103bおよび上位カウンタ101の計数値が負数であるため、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される（図15では省略）。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000（32に相当）となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、値を反転した後に1を加算していない。
【０１７１】
第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【０１７２】
次に、本例において、上位カウンタ101の計数値を最初に所定の値にセットする理由を説明する。上位カウンタ101の計数値を最初にリセットしてからカウントを行う場合の動作は以下のようになる。以下の説明では、上記の説明と同様に、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は32となる。尚、以下の説明では、上記の説明と同様の部分については、適宜、説明を省略する。また、上位カウンタ101については、リセット機能を有するものとして説明を行う。
【０１７３】
<<1回目の読出し>>
1回目の読出しにおける動作は上記の動作と同様である。ただし、上位カウンタ101の計数値を最初にリセットしているため、上位カウンタ101の計数値が上記の動作における計数値とは異なる。1回目の読出しの終了時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b0000_0001_0（2に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_0110となる。
【０１７４】
<<2回目の読出し>>
2回目の読出しにおいて、上位カウンタ101に入力されるカウントクロックの切換えが行われるまでの動作は上記の動作と同様である。ただし、上位カウンタ101の計数値を最初にリセットしているため、上位カウンタ101の計数値が上記の動作における計数値とは異なる。カウントクロックの切換えが行われた時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。これらの値を12ビットで表現すると、12’b1111_1101_1111となる。
【０１７５】
この後、下位カウンタ103bの計数値に応じて上位計数値の調整を行う必要がある。上位計数値の調整後、下位計数値および上位計数値の反転が行われるが、この反転後の下位計数値が正数となっている必要がある。つまり、反転後の下位カウンタ103bの計数値が0、即ち反転前の下位カウンタ103bの計数値が1となっている必要がある。反転後の下位カウンタ103bの計数値が1である場合には、上位カウンタ101の計数値から1を減算する必要があるため、反転前の下位カウンタ103bの計数値が0である場合には、上位カウンタ101の計数値に1を加算する必要がある。また、反転前の下位カウンタ103bの計数値が1である場合には、上位カウンタ101の計数値を調整する必要はない。
【０１７６】
上記に従って、判定部105による判定と上位計数値の加算が行われる。判定部105は、下位カウンタ103bの計数値が0である場合には加算のためのカウントクロックを出力し、下位カウンタ103bの計数値が1である場合にはカウントクロックを出力しない。
【０１７７】
本例の場合、下位カウンタ103bの計数値が1であるため、判定部105はカウントクロックを出力しない。このため、上位カウンタ101のカウントクロックが判定部105の出力信号に切り換わっても上位カウンタ101の計数値は変化しない。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。これらの値を12ビットで表現すると、12’b1111_1101_1111となる。
【０１７８】
続いて、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000（32に相当）となる。この結果は、前述した結果と同じである。
【０１７９】
本例では上位カウンタ101の計数値を調整するための加算は行われていない。しかし、上位カウンタ101の計数値を調整する必要がある場合、本例では上位カウンタ101はダウンカウントモードでカウントを行うため、計数値を調整するための加算を行うことができない。以下では、上位カウンタ101の計数値を調整するための加算を行う必要がある例を説明する。
【０１８０】
以下の説明では、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態1、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は57（=1+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は26となる。尚、以下の説明では、上記の説明と同様の部分については、適宜、説明を省略する。また、上位カウンタ101については、リセット機能を有するものとして説明を行う。
【０１８１】
<<1回目の読出し>>
1回目の読出しにおける動作は上記の動作と同様である。1回目の読出しの終了時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b0000_0001_0（2に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_0110となる。
【０１８２】
<<2回目の読出し>>
2回目の読出しにおいて、上位カウンタ101に入力されるカウントクロックの切換えが行われるまでの動作は上記の動作と同様である。カウントクロックの切換えが行われた時点で、下位カウンタ103a，103bが保持している値は3’b[0]101（5に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。これらの値を12ビットで表現すると、12’b1111_1101_1101となる。
【０１８３】
この後、下位カウンタ103bの計数値に応じて上位計数値の調整を行う必要がある。前述したように、判定部105は、下位カウンタ103bの計数値が0である場合には加算のためのカウントクロックを出力し、下位カウンタ103bの計数値が1である場合にはカウントクロックを出力しない。
【０１８４】
本例の場合、下位カウンタ103bの計数値が0であるため、判定部105はカウントクロックを出力する。仮に、上位カウンタ101がこのカウントクロックに基づいて加算を行ったとする。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]101（5に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0101となる。
【０１８５】
続いて、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]010（正数で2に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1010（26に相当）となる。
【０１８６】
本例では、上位カウンタ101が判定部105からのカウントクロックに基づいて加算を行うと仮定したが、実際には上位カウンタ101はダウンカウントモードでカウントを行うため、計数値を調整するための加算を行うことができない。このため、本実施形態では、上位カウンタ101の計数値の初期値が、リセット時の値から1だけ減算した値に設定される。
【０１８７】
前述したように、2回目の読出しにおける反転前の下位カウンタ103bの計数値が0である場合には、上位カウンタ101の計数値に1を加算する必要があり、反転前の下位カウンタ103bの計数値が1である場合には、上位カウンタ101の計数値を調整する必要はない。一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に加算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ減算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定して動作を開始した後、2回目の読出しにおける反転前の下位カウンタ103bの計数値が0である場合には、上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ103bの計数値が1である場合には、上位計数値を1だけ減算する必要がある。
【０１８８】
尚、本例では、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ減算した値に設定しているが、これに代えて、上位カウンタ101の計数値の初期値をリセット時の値とし、2回目の読出し時に計数値の反転を行った後に上位カウンタ101の計数値を1だけ減算してもよい。ここで、上位カウンタ101の計数値の初期値は、減算（CDS処理）の回数に基づいて設定される。また、上記では、下位カウンタ103a，103bの計数値の反転を行う際に、フラグ用ビットである下位カウンタ103bの計数値の反転を行っているが、下位カウンタ103bの計数値については反転を行わなくてもよい。下位カウンタ103bの計数値の反転を行わない場合には、下位カウンタ103bの計数値に基づく判定部105の判定基準を上記とは逆となるように変更すればよい。
【０１８９】
上述したように、本実施形態によれば、カウントクロックの切換えの際に上位カウンタ101が保持している計数値が保護されるので、カウントクロックの切換えに伴う誤カウントの発生を抑制することができる。また、下位カウンタ103a，103bおよび上位カウンタ101は1種類のカウントモード（本実施形態ではダウンカウントモード）のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【０１９０】
また、上位カウンタ101の計数値を最初に所定の値にセットすることによって、カウントモードの変更を行うことなく、下位カウンタ103a，103bの計数値の桁下りに応じた上位カウンタ101の計数値の調整を行うことができる。
【０１９１】
（第4の実施形態）
次に、本発明の第4の実施形態を説明する。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様である。それ以外は、略同様であるので説明を省略する。また、本実施形態の列AD変換部16において、比較部110を除いて一部を抜粋した詳細構成は、図13に示した構成と同様であるので、説明を省略する。
【０１９２】
次に、本例の動作について説明する。以下では、1回目および2回目の各読出し動作とその後の減算（CDS処理）の詳細について説明する。説明を容易にするため、上位カウンタ101のカウントモードはアップカウントモード、下位カウンタ103a，103bのカウントモードはダウンカウントモードであるものとし、上位カウンタ101および下位カウンタ103a，103bはカウントクロックの立下りエッジのタイミングでカウントを行うものとする。第3の実施形態と同様に本実施形態では2回目の読出し時のみカウントクロックの切換えが行われる。本実施形態の概略動作は第3の実施形態で説明した概略動作と同様であるので、説明を省略する。
【０１９３】
次に、図13に示した構成の動作について具体例を用いて説明する。本説明では、下位カウンタ103a，103bとして合計で4ビットのダウンカウンタ回路、上位カウンタ101として9ビットのダウンカウンタ回路を用いた場合で説明する。以下の説明において、図2に示した構成の動作と同様の部分については、適宜、説明を省略する。
【０１９４】
以下では、第1の画素信号とそれに続く第2の画素信号との減算（CDS処理）を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。図16および図17は各信号の波形を示している。図16は1回目の読出し時の各信号の波形を示し、図17は2回目の読出し時の各信号の波形を示している。
【０１９５】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は32となる。
【０１９６】
<<1回目の読出し>>
最初に、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードに設定される。続いて、制御信号CLRSTにより、下位カウンタ103a，103bの計数値がリセットされる。また、制御信号CHSETにより、上位カウンタ101の計数値が所定の値（この場合、9’b0000_0000_0）にセットされる。同時に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。比較処理の開始時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_0である。これらの値を12ビットで表現すると、12’b0000_0000_0000となる。尚、本例では、上位カウンタ101の計数値のリセットを行ってもよい。
【０１９７】
所定の条件を満足する第1のタイミング（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング）で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第1の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1000となる。
【０１９８】
続いて、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。下位カウンタ103aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103aの計数値に桁下りが発生する。この桁下りにより下位カウンタ103bの計数値が1だけ減算される。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1001となる。
【０１９９】
続いて、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0110となる。本例では、第3の実施形態と同様に、値を反転した後に1を加算していない。
【０２００】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがデータ保護モードとなる。
【０２０１】
<<2回目の読出し>>
続いて、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ103a，103bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。その後、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードとなる。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0110となる。
【０２０２】
所定の条件を満足する第2のタイミング（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング）で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第2の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]110（6に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1110となる。
【０２０３】
その後、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。下位カウンタ103aの3ビット目の出力が“0”から“1”に変化するタイミングで、下位カウンタ103aの3ビット目の反転出力が“1”から“0”に変化し、下位カウンタ103aの計数値に桁下りが発生する。この桁下りにより下位カウンタ103bの計数値が1だけ減算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1111となる。
【０２０４】
この後、下位カウンタ103bの計数値に応じて上位計数値の調整を行う必要がある。本例では、下位カウンタ103bの計数値が1である場合には、上位カウンタ101の計数値に1を加算する必要がある。また、反転前の下位カウンタ103bの計数値が0である場合には、上位カウンタ101の計数値を調整する必要はない。
【０２０５】
上記に従って、判定部105による判定と上位計数値の加算が行われる。判定部105は、下位カウンタ103bの計数値が1である場合には加算のためのカウントクロックを出力し、下位カウンタ103bの計数値が0である場合にはカウントクロックを出力しない。
【０２０６】
本例の場合、下位カウンタ103bの計数値が1であるため、判定部105はカウントクロックを出力する。このため、上位カウンタ101のカウントクロックが判定部105の出力信号に切り換わると、上位カウンタ101の計数値が1だけ増加する。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]111（-1に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0111となる。
【０２０７】
上記のように、下位カウンタ103a，103bの計数値が負数であるため、下位カウンタ103a，103bのみ計数値が反転される（図17では省略）。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000（32に相当）となる。2進数の減算では、値を反転した後、1を加算する必要があるが、前述したように、1回目の読出し時にも値を反転しているため、各反転後に1を加算することによる値の変化が相殺される。したがって、本例では、下位計数値に関しては、値を反転した後に1を加算していない。
【０２０８】
第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。尚、上記では、下位カウンタ103a，103bの計数値の反転を行う際に、フラグ用ビットである下位カウンタ103bの計数値の反転を行っているが、下位カウンタ103bの計数値については反転を行わなくてもよい。下位カウンタ103bの計数値の反転を行わない場合には、下位カウンタ103bの計数値に基づく判定部105の判定基準を上記とは逆となるように変更すればよい。
【０２０９】
上述したように、本実施形態によれば、カウントクロックの切換えの際に上位カウンタ101が保持している計数値が保護されるので、カウントクロックの切換えに伴う誤カウントの発生を抑制することができる。また、下位カウンタ103a，103bおよび上位カウンタ101は1種類のカウントモード（本実施形態では下位カウンタ103a，103bはダウンカウントモード、上位カウンタ101は上位カウントモード）のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【０２１０】
（第5の実施形態）
次に、本発明の第5の実施形態を説明する。本実施形態による撮像装置の構成は、列AD変換部16を除いて、図1に示した構成と同様である。それ以外は、略同様であるので説明を省略する。
【０２１１】
図18は、図1の列AD変換部16について更に説明するために、比較部110を除いて一部を抜粋した詳細構成の一例を示している。以下では、図13に示す構成について説明する。図13に示すように、ラッチ部108、演算回路106、下位調整回路104、下位カウンタ103a，103b、判定部105、切換え部109、上位調整回路102、上位カウンタ101が設けられている。下位調整回路104、下位カウンタ103a，103b、判定部105、上位調整回路102、上位カウンタ101以外の構成は、図2に示す構成と同様であるので、説明を省略する。
【０２１２】
下位カウンタ103a，103bは4ビットのバイナリカウンタ回路を構成する。下位カウンタ103aが1ビット目〜3ビット目の計数値をカウントし、下位カウンタ103bが4ビット目の計数値をカウントする。下位カウンタ103bは、下位カウンタ103aがカウントを行ったときに発生する桁上りに応じてカウントを行うフラグ用カウンタである。尚、本例では下位カウンタ103aの3ビット目の反転出力が下位カウンタ103bに入力される。また、第1の実施形態および第2の実施形態では計数値のリセットを行うための制御信号CHRSTが上位カウンタ101に入力されているが、本実施形態では計数値を所定の値にセットするための制御信号CHSETが上位カウンタ101に入力される。即ち、本実施形態の上位カウンタ101はデータセット機能を有する。
【０２１３】
下位調整回路104は下位調整部を構成しており、下位カウンタ103が保持している値が反転された後、制御信号LCNTに基づいて、その値を調整するための調整パルスを生成し、下位カウンタ103に出力する。上位調整回路102は上位調整部を構成しており、上位カウンタ101が保持している値が反転された後、制御信号HCNTに基づいて、その値を調整するための調整パルスを生成し、上位カウンタ101に出力する。
【０２１４】
判定部105は、制御信号FLAGで指定される期間において、下位カウンタ103bの出力信号に基づいて、上位計数値の調整が必要であるか否かを判定する。上位計数値の調整が必要であると判定される場合、判定部105は、上位計数値の加算を行うためのカウントクロックを切換え部109に出力する。図1のランプ部19、VCO100、比較部110と図18に示す各構成とで構成される部分が本発明のAD変換回路の一例である。
【０２１５】
次に、本例の動作について説明する。以下では、1回目および2回目の各読出し動作とその後の減算（CDS処理）の詳細について説明する。説明を容易にするため、上位カウンタ101および下位カウンタ103a，103bのカウントモードはアップカウントモードであるものとし、上位カウンタ101および下位カウンタ103a，103bはカウントクロックの立下りエッジのタイミングでカウントを行うものとする。また、前述した動作と同様の動作については、適宜、説明を省略する。第3の実施形態と同様に本実施形態では2回目の読出し時のみカウントクロックの切換えが行われる。
【０２１６】
<1回目の読出し>
任意の画素行の単位画素3から垂直信号線13への1回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波とリセットレベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０２１７】
比較部110は、ランプ部19から与えられるランプ波と、リセットレベルとを比較し、双方の電圧が略一致したとき（第1のタイミング）に、比較出力を反転させる。この第１のタイミングにおいて、ラッチ部108はVCO100の論理状態を第1の下位位相信号として保持する。また、この第1のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第1の上位計数値として保持する。続いて、ランプ部19は、ランプ波の生成を停止する。
【０２１８】
その後、演算回路106は、ラッチ部108に保持されている第1の下位位相信号に応じたクロック信号である第1の下位計数信号を生成し、下位カウンタ103a，103bへ出力する。下位カウンタ103a，103bは、第1の下位計数信号をカウントクロックとしてカウントを行う。これにより、第1の下位計数値が得られる。
【０２１９】
続いて、下位カウンタ103a，103bが保持している第1の下位計数値および上位カウンタ101が保持している第1の上位計数値を構成する各ビットの値が反転される。続いて、下位調整回路104が調整パルスを生成し、下位カウンタ103a，103bに出力すると共に、上位調整回路102が調整パルスを生成し、上位カウンタ101に出力する。下位カウンタ103a，103bおよび上位カウンタ101は、それぞれの調整パルスをカウントクロックとしてカウントを行う。
【０２２０】
<2回目の読出し>
続いて、2回目の読出し時には、単位画素3毎の入射光量に応じた信号レベルを読み出し、1回目の読出しと同様な動作を行う。任意の画素行の単位画素3から垂直信号線13への2回目の読出しが安定した後、ランプ部19はランプ波を出力する。比較部110は、このランプ波と信号レベルとを比較する。この間、上位カウンタ101は、VCO100から出力されるクロックをカウントクロックとしてカウントを行う。
【０２２１】
比較部110は、ランプ部19から与えられるランプ波と、信号レベルとを比較し、双方の電圧が略一致したとき（第2のタイミング）に、比較出力を反転させる。この第2のタイミングにおいて、ラッチ部108はVCO100の論理状態を第2の下位位相信号として保持する。また、この第2のタイミングにおいて、上位カウンタ101はカウント動作を停止することで、論理状態を第2の上位計数値として保持する。これにより、リセットレベルと信号レベルとの差分に応じた上位計数値が得られる。続いて、ランプ部19は、ランプ波の生成を停止する。
【０２２２】
その後、演算回路106は、ラッチ部108に保持されている第2の下位位相信号に応じたクロック信号である第2の下位計数信号を生成し、下位カウンタ103a，103bへ出力する。下位カウンタ103a，103bは、第2の下位計数信号をカウントクロックとしてカウントを行う。これにより、リセットレベルと信号レベルとの差分に応じた下位計数値である第2の下位計数値が得られる。下位カウンタ103a，103bがカウントを行っている間、上位カウンタ101は下位カウンタ103a，103bにおける桁上りに応じてカウントを行う。
【０２２３】
続いて、上位カウンタ101に入力されるカウントクロックの切換えが行われる。切換え後のカウントクロックは、下位カウンタ103bの出力信号に基づく判定部105の出力信号である。尚、誤カウントの発生を抑制するため、上位カウンタ101の動作モードをデータ保護モードにしてカウントクロックの切換えが行われる。判定部105は、下位カウンタ103bの出力信号がL状態である場合にはカウントクロックを出力し、下位カウンタ103bの出力信号がH状態である場合にはカウントクロックを出力しない。判定部105からカウントクロックが出力された場合、上位カウンタ101の上位計数値が1だけ加算される。
【０２２４】
上記のようにして、リセットレベルと信号レベルとの差分に応じた第2の下位計数値および第2の上位計数値が得られる。第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。
【０２２５】
次に、図18に示した構成の動作について具体例を用いて説明する。本説明では、下位カウンタ103a，103bとして合計で4ビットのアップカウンタ回路、上位カウンタ101として9ビットのアップカウンタ回路を用いた場合で説明する。以下の説明において、図2に示した構成の動作と同様の部分については、適宜、説明を省略する。
【０２２６】
以下では、第1の画素信号とそれに続く第2の画素信号との減算（CDS処理）を行う例を説明する。本例では、2の補数を用いた2進数の減算を行う。図19および図20は各信号の波形を示している。図19は1回目の読出し時の各信号の波形を示し、図20は2回目の読出し時の各信号の波形を示している。
【０２２７】
ここで、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は32となる。
【０２２８】
<<1回目の読出し>>
最初に、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードに設定される。続いて、制御信号CLRSTにより、下位カウンタ103a，103bの計数値がリセットされる。また、制御信号CHSETにより、上位カウンタ101の計数値が所定の値（この場合、9’b0000_0000_1）にセットされる。同時に、制御信号LRSTにより、ラッチ回路D_0〜D_7の論理状態がリセットされる。制御信号SELはL状態に設定されているので、上位カウンタ101のカウントクロックはラッチ部108のラッチ回路D_7の出力に設定される。したがって、比較処理の終了時点まで、クロック信号CK7がラッチ回路D_7および切換え部109を介して上位カウンタ101に入力され、上位カウンタ101はクロック信号CK7をカウントクロックとしてカウントを行う。比較処理の開始時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0000_1である。これらの値を12ビットで表現すると、12’b0000_0000_1000となる。
【０２２９】
所定の条件を満足する第1のタイミング（前述した動作では、ランプ部19から与えられるランプ波とリセットレベルとの比較に係る第1のタイミング）で、制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第1の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000となる。
【０２３０】
続いて、第1の下位位相信号の2進化処理を行う。第1の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。本例では下位カウンタ103の計数値に桁上りは発生しない。第1の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[0]111（7に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0111となる。
【０２３１】
続いて、下位カウンタ103a，103bおよび上位カウンタ101の計数値が反転される。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]000（-8に相当）、上位カウンタ101が保持している値は9’b1111_1101_1（-5に相当）である。これらの値を12ビットで表現すると、12’b1111_1101_1000となる。
【０２３２】
2進数の減算では、値を反転した後、1を加算する必要があるため、下位調整回路104は、制御信号LCNTに基づいて1パルス分の調整パルスを生成し、下位カウンタ103a，103bに出力する。下位カウンタ103a，103bは、調整パルスをカウントクロックとしてカウントを行う。また、上位調整回路102は、制御信号HCNTに基づいて1パルス分の調整パルスを生成し、上位カウンタ101に出力する。上位カウンタ101は、調整パルスをカウントクロックとしてカウントを行う。このカウントにより、上位カウンタ101の計数値が1だけ増加する。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0001となる。尚、本例では、下位カウンタ103a，103bと上位カウンタ101が別個のカウンタ回路として動作しているため、第2の実施形態と異なり、計数値の調整は下位カウンタ103a，103bと上位カウンタ101の双方について行われる。
【０２３３】
続いて、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがデータ保護モードとなる。
【０２３４】
<<2回目の読出し>>
続いて、制御信号LRSTにより、ラッチ回路D_0〜D_7がリセットされる。ここでは、制御信号CLRSTによる下位カウンタ103a，103bの計数値のリセットおよび制御信号CHSETによる上位カウンタ101の計数値のセットは行われない。その後、制御信号CLMODE／CHMODEがL状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードとなる。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b1111_1110_0（-4に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_0001となる。
【０２３５】
所定の条件を満足する第2のタイミング（前述した動作では、ランプ部19から与えられるランプ波と信号レベルとの比較に係る第2のタイミング）で制御信号Holdが反転し、その時点のVCO100の論理状態であるクロック信号CK0〜CK7の状態が保持される（第2の下位位相信号）。同時に、上位カウンタ101はカウント動作を停止する。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1001となる。
【０２３６】
その後、第2の下位位相信号の2進化処理を行う。第2の下位位相信号の2進化処理によって演算回路106から下位カウンタ103aにカウントクロックが出力され、下位カウンタ103aはカウントを行う。下位カウンタ103aの3ビット目の出力が“1”から“0”に変化するタイミングで、下位カウンタ103aの計数値に桁上りが発生する。この桁上りにより下位カウンタ103bの計数値が1だけ加算される。第2の下位位相信号の2進化処理が終了した時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1000となる。
【０２３７】
続いて、判定部105による判定と上位計数値の減算が行われる。判定部105は、下位カウンタ103bの計数値が0である場合にはカウントクロックを出力し、下位カウンタ103bの計数値が1である場合にはカウントクロックを出力しない。まず、制御信号CLMODE／CHMODEがH状態となる。これにより、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがデータ保護モードとなる。その後、制御信号SELがH状態に設定される。この時点の上位カウンタ101のカウントクロックは判定部105の出力信号である。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1000となる。
【０２３８】
続いて、制御信号CLMODE／CHMODEがL状態となり、下位カウンタ103a，103bおよび上位カウンタ101の動作モードがカウントモードに設定される。下位カウンタ103bの計数値が0であるため、判定部105はカウントクロックを出力する。上位カウンタ101は、このカウントクロックに基づいてカウントを行う。このカウントにより、上位カウンタ101の計数値が1だけ増加する。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000（32に相当）となる。
【０２３９】
第2の下位計数値および第2の上位計数値からなるデジタルデータは、水平選択部14により水平信号線を介して出力部17に転送される。上記の動作により、第1の画素信号と第2の画素信号との差分に応じた2進化データが得られる。
【０２４０】
次に、本例において、上位カウンタ101の計数値を最初に所定の値にセットする理由を説明する。上位カウンタ101の計数値を最初にリセットしてからカウントを行う場合の動作は以下のようになる。以下の説明では、上記の説明と同様に、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態7、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は63（=7+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は32となる。尚、以下の説明では、上記の説明と同様の部分については、適宜、説明を省略する。また、上位カウンタ101については、リセット機能を有するものとして説明を行う。
【０２４１】
<<1回目の読出し>>
1回目の読出しにおける動作は上記の動作と同様である。ただし、上位カウンタ101の計数値を最初にリセットしているため、上位カウンタ101の計数値が上記の動作における計数値とは異なる。1回目の読出しの終了時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b1111_1110_1（-3に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_1001となる。
【０２４２】
<<2回目の読出し>>
2回目の読出しにおいて、上位カウンタ101に入力されるカウントクロックの切換えが行われるまでの動作は上記の動作と同様である。ただし、上位カウンタ101の計数値を最初にリセットしているため、上位カウンタ101の計数値が上記の動作における計数値とは異なる。カウントクロックの切換えが行われた時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000となる。
【０２４３】
この後、下位カウンタ103bの計数値に応じて上位計数値の調整を行う必要がある。下位カウンタ103bの計数値が1である場合には、下位計数値が負数であるため、上位カウンタ101の計数値から1を減算する必要がある。また、下位カウンタ103bの計数値が0である場合には、上位カウンタ101の計数値を調整する必要はない。
【０２４４】
上記に従って、判定部105による判定と上位計数値の減算が行われる。判定部105は、下位カウンタ103bの計数値が1である場合には減算のためのカウントクロックを出力し、下位カウンタ103bの計数値が0である場合にはカウントクロックを出力しない。
【０２４５】
本例の場合、下位カウンタ103bの計数値が0であるため、判定部105はカウントクロックを出力しない。このため、上位カウンタ101のカウントクロックが判定部105の出力信号に切り換わっても上位カウンタ101の計数値は変化しない。この時点で、下位カウンタ103a，103bが保持している値は3’b[0]000（0に相当）、上位カウンタ101が保持している値は9’b0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0000（32に相当）となる。この結果は、前述した結果と同じである。
【０２４６】
本例では上位カウンタ101の計数値を調整するための減算は行われていない。しかし、上位カウンタ101の計数値を調整する必要がある場合、本例では上位カウンタ101はアップカウントモードでカウントを行うため、計数値を調整するための減算を行うことができない。以下では、上位カウンタ101の計数値を調整するための減算を行う必要がある例を説明する。
【０２４７】
以下の説明では、第1の画素信号の下位位相信号に相当する状態は状態7、第1の画素信号に基づく上位計数値は3、とし、第2の画素信号の下位位相信号に相当する状態は状態1、第2の画素信号に基づく上位計数値は7とする。すなわち、第1の画素信号は31（=7+8×3）、第2の画素信号は57（=1+8×7）にそれぞれ対応し、第2の画素信号から第1の画素信号を減算（CDS処理）した値は26となる。尚、以下の説明では、上記の説明と同様の部分については、適宜、説明を省略する。また、上位カウンタ101については、リセット機能を有するものとして説明を行う。
【０２４８】
<<1回目の読出し>>
1回目の読出しにおける動作は上記の動作と同様である。1回目の読出しの終了時点で、下位カウンタ103a，103bが保持している値は3’b[1]001（-7に相当）、上位カウンタ101が保持している値は9’b1111_1110_1（-3に相当）である。これらの値を12ビットで表現すると、12’b1111_1110_1001となる。
【０２４９】
<<2回目の読出し>>
2回目の読出しにおいて、上位カウンタ101に入力されるカウントクロックの切換えが行われるまでの動作は上記の動作と同様である。カウントクロックの切換えが行われた時点で、下位カウンタ103a，103bが保持している値は3’b[1]010（-6に相当）、上位カウンタ101が保持している値は9’ 0000_0010_0（4に相当）である。これらの値を12ビットで表現すると、12’b0000_0010_0010となる。
【０２５０】
この後、下位カウンタ103bの計数値に応じて上位計数値の調整を行う必要がある。前述したように、判定部105は、下位カウンタ103bの計数値が1である場合には減算のためのカウントクロックを出力し、下位カウンタ103bの計数値が0である場合にはカウントクロックを出力しない。
【０２５１】
本例の場合、下位カウンタ103bの計数値が1であるため、判定部105はカウントクロックを出力する。仮に、上位カウンタ101がこのカウントクロックに基づいて減算を行ったとする。この時点で、下位カウンタ103a，103bが保持している値は3’b[1]010（-6に相当）、上位カウンタ101が保持している値は9’ 0000_0001_1（3に相当）である。これらの値を12ビットで表現すると、12’b0000_0001_1010となる。
【０２５２】
本例では、上位カウンタ101が判定部105からのカウントクロックに基づいて減算を行うと仮定したが、実際には上位カウンタ101はアップカウントモードでカウントを行うため、計数値を調整するための減算を行うことができない。このため、本実施形態では、上位カウンタ101の計数値の初期値が、リセット時の値から1だけ加算した値に設定される。
【０２５３】
前述したように、2回目の読出しにおける下位カウンタ103bの計数値が1である場合には、上位カウンタ101の計数値から1を減算する必要があり、下位カウンタ103bの計数値が0である場合には、上位カウンタ101の計数値を調整する必要はない。一方、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した場合、1回目の読出し時に上位カウンタ101の計数値が反転された後の2回目の読出しの開始時点において上位カウンタ101の計数値は1だけ余分に減算された状態となっている。即ち、2回目の読出しの開始時点において上位カウンタ101の計数値を1だけ加算する必要がある。このため、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定して動作を開始した後、2回目の読出しにおける下位カウンタ103bの計数値が1である場合には、上位計数値を調整する必要はなく、2回目の読出しにおける反転前の下位カウンタ103bの計数値が0である場合には、上位計数値を1だけ加算する必要がある。
【０２５４】
尚、本例では、上位カウンタ101の計数値の初期値を、リセット時の値から1だけ加算した値に設定しているが、これに代えて、上位カウンタ101の計数値の初期値をリセット時の値とし、1回目の読出し時に計数値の反転を行った後に計数値の加算を行わず、2回目の読出し時に下位カウンタ103bの計数値に応じて上位カウンタ101の計数値の加算を行ってもよい。ここで、上位カウンタ101の計数値の初期値は、減算（CDS処理）の回数に基づいて設定される。
【０２５５】
上述したように、本実施形態によれば、カウントクロックの切換えの際に上位カウンタ101が保持している計数値が保護されるので、カウントクロックの切換えに伴う誤カウントの発生を抑制することができる。また、下位カウンタ103a，103bおよび上位カウンタ101は1種類のカウントモード（本実施形態では下位カウンタ103a，103bはダウンカウントモード、上位カウンタ101は上位カウントモード）のみを備えていればよいので、簡易な回路構成でAD変換回路を実現することができる。
【０２５６】
また、下位調整回路104および上位調整回路102が調整パルスを出力し、下位カウンタ103a，103bおよび上位カウンタ101が調整パルスをカウントパルスとしてカウントを行うことによって、このカウントの直前に行われる計数値の反転と連動して2進数の減算を実現することができる。
【０２５７】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【０２５８】
2，1002・・・撮像部、5，1005・・・読出電流源部、6，1006・・・アナログ部、12，1012・・・垂直選択部、14，1014・・・水平選択部、15，1015・・・カラム処理部、16，1016・・・列AD変換部、17，1017・・・出力部、18，1018・・・クロック生成部、19，1019・・・ランプ部、20，1020・・・制御部、100・・・VCO、101・・・上位カウンタ、102・・・上位調整回路、103，103a，103b・・・下位カウンタ、104・・・下位調整回路、105・・・判定部、106・・・演算回路、108・・・ラッチ部、109・・・切換え部、110，1110・・・比較部、201・・・円環遅延回路、202・・・ラッチ回路、203・・・2進化回路、204・・・カウンタ回路、205・・・メモリー回路、1101・・・カウンタ
【図１】
0005631781.tif 000002
【図２】
0005631781.tif 000003
【図３】
0005631781.tif 000004
【図４】
0005631781.tif 000005
【図５】
0005631781.tif 000006
【図６】
0005631781.tif 000007
【図７】
0005631781.tif 000008
【図８】
0005631781.tif 000009
【図９】
0005631781.tif 000010
【図１０】
0005631781.tif 000011
【図１１】
0005631781.tif 000012
【図１２】
0005631781.tif 000013
【図１３】
0005631781.tif 000014
【図１４】
0005631781.tif 000015
【図１５】
0005631781.tif 000016
【図１６】
0005631781.tif 000017
【図１７】
0005631781.tif 000018
【図１８】
0005631781.tif 000019
【図１９】
0005631781.tif 000020
【図２０】
0005631781.tif 000021
【図２１】
0005631781.tif 000022
【図２２】
0005631781.tif 000023
【図２３】
0005631781.tif 000024