以下、図面を参照して本発明の実施形態について詳細に説明する。各機能要素について実施形態別に区別する際には、A,B,C,…などのように大文字の英語の参照子を付して記載し、特に区別しないで説明する際にはこの参照子を割愛して記載する。図面においても同様である。
なお、以下においては、X−Yアドレス型の固体撮像装置の一例である、CMOS型の固体撮像装置をデバイスとして使用した場合を例に説明する。また、特に断りのない限り、CMOS型の固体撮像装置は、全ての単位画素がnMOS(nチャネル型のMOSトランジスタ)よりなり、信号電荷は負電荷(電子)であるものとして説明する。ただしこれは一例であって、対象となるデバイスはMOS型の固体撮像装置に限らないし、単位画素がpMOS(pチャネル型のMOSトランジスタ)で構成されていてもよいし、信号電荷は正電荷(正孔・ホール)であってもよい。
光や放射線などの外部から入力される電磁波に対して感応性をする単位画素をライン状もしくはマトリクス状に複数個配列してなりアドレス制御にて信号を読み出す物理量分布検知用の半導体装置の全てに、後述する全ての実施形態が同様に適用できる。
<固体撮像装置:基本構成>
図1は、本発明に係る固体撮像装置の一実施形態であるCMOS型の固体撮像装置(CMOSイメージセンサ)の基本構成図である。固体撮像装置も半導体装置の一例である。
固体撮像装置1は、複数個の単位画素3が2次元マトリクス状に配列された画素アレイ部10を有する。固体撮像装置1は、たとえばR,G,Bの色フィルタがベイヤー配列とされている色分解(色分離)フィルタを使用することで、画素アレイ部10をカラー撮像対応にすることができる。
図1では、簡単のため行および列の一部を省略して示しているが、現実には、各行や各列には、数十から数千の単位画素3が配置される。後述するように、単位画素3は検知部の一例である受光素子(電荷生成部)としてのフォトダイオードの他にたとえば、電荷転送用やリセット用や増幅用などの3個あるいは4個のトランジスタを有する画素内アンプを有する。単位画素3からは、列ごとに垂直信号線19を介して画素信号電圧Vxが出力される。画素信号電圧Vxは、リセットレベルSrst (P相成分)と信号レベルSsig (D相成分)を含む。
固体撮像装置1はさらに、CDS(Correlated Double Sampling;相関2重サンプリング)処理機能やデジタル変換機能をなすAD変換部250が列並列に設けられているカラムAD変換部26を有する。“列並列”とは、垂直列の垂直信号線19(列信号線の一例)に対して実質的に並列に複数のCDS処理機能部やデジタル変換部(AD変換部)などが設けられていることを意味する。このような読出方式をカラム読出方式と称する。
固体撮像装置1はさらに、駆動制御部7、単位画素3に画素信号読出用の動作電流(読出電流)を供給する読出電流源部24と、カラムAD変換部26にAD変換用の参照信号SLP_ADC を供給する参照信号生成部27と、出力部28と、データセレクタ部300を備えている。
駆動制御部7は、画素アレイ部10の信号を順次読み出すための制御回路機能の実現のため水平走査部12(列走査回路)、垂直走査部14(行走査回路)、および通信・タイミング制御部20を備えている。水平走査部12は、データセレクタ部300におけるデータ転送動作時に読み出すべきデータのカラム位置を指示する。
水平走査部12は、列アドレスや列走査を制御する水平アドレス設定部12aや水平駆動部12bなどを有する。垂直走査部14は、行アドレスや行走査を制御する垂直アドレス設定部14aや垂直駆動部14bなどを有する。水平走査部12や垂直走査部14は、通信・タイミング制御部20から与えられる制御信号CN1,CN2に応答して行・列の選択動作(走査)を開始する。
データセレクタ部300は、通信・タイミング制御部20からの制御信号CN9や水平走査部12からの指示に基づき、カラムAD変換部26の水平位置(カラム位置)を選択して、選択されたカラム位置のデータを出力部28側に転送する。詳細は後述するが、データセレクタ部300は、2列以上分のラッチ257を担当し各ラッチ257のデータの何れかを選択するサブセレクタ302と、サブセレクタ302で選択されるデータに基づき水平信号線18を駆動する水平転送ドライバ308の対を複数個有する。サブセレクタ302は、通信・タイミング制御部20からの選択制御信号に基づきデータ選択動作を行ない、水平転送ドライバ308は水平走査部12からの選択制御信号に基づき転送動作を行なう。
通信・タイミング制御部20は、端子5aを介して入力されるマスタークロックCLK0に同期したクロックをデバイス内の各部(走査部12,14やカラムAD変換部26)に供給するタイミングジェネレータ(読出アドレス制御装置の一例)の機能ブロックを備える。さらに、端子5aを介して外部の主制御部から供給されるマスタークロックCLK0を受け取り、また端子5bを介して外部の主制御部から供給される動作モードなどを指令するデータを受け取り、さらに固体撮像装置1の情報を含むデータを外部の主制御部に出力する通信インタフェースの機能ブロックを備える。
たとえば、通信・タイミング制御部20は、内部クロックを生成するクロック変換部の機能を持つクロック変換部20aおよび通信機能や各部を制御する機能を持つシステム制御部20bなどを有する。クロック変換部20aは、端子5aを介して入力されるマスタークロックCLK0に基づき、マスタークロックCLK0よりも高速周波数のパルスを生成する逓倍回路を内蔵しており、カウントクロックCKcnt1やカウントクロックCKdac1などの内部クロックを生成する。
出力部28は、データ転送用の信号線(転送配線)である水平信号線18上の信号(デジタルデータではあるが小振幅)を検出するセンスアンプ28a(S・A)と、固体撮像装置1と外部とのインタフェース機能をなすインタフェース部28b(IF部)を有する。インタフェース部28bの出力は出力端5cに接続されており、映像データが後段回路に出力される。出力部28はまた、センスアンプ28aとインタフェース部28bとの間に、各種のデジタル演算処理を行なうデジタル演算部を設けてもよい。
単位画素3は、行選択のための行制御線15を介して垂直走査部14と、また垂直信号線19を介してカラムAD変換部26の垂直列ごとに設けられているAD変換部250と、それぞれ接続されている。ここで、行制御線15は垂直走査部14から画素に入る配線全般を示す。
垂直走査部14は、画素アレイ部10の行を選択し、その行に必要なパルスを供給するものである。垂直アドレス設定部14aは、信号を読み出す行(読出し行:選択行や信号出力行とも称する)の他に、電子シャッタ用の行なども選択する。
AD変換部250におけるAD変換方式としては、回路規模や処理速度(高速化)や分解能などの観点から様々な方式が考えられているが、一例として、参照信号比較型、スロープ積分型、あるいはランプ信号比較型などとも称されるAD変換方式を採用する。参照信号比較型のAD変換に当たっては、変換開始(比較処理の開始)から変換終了(比較処理の終了)までの時間に基づいてカウント動作有効期間を決定し、その期間を示すカウントイネーブル信号ENに基づきアナログの処理対象信号をデジタルデータに変換する。
このため、参照信号生成部27は、DA変換部270(DAC;Digital Analog Converter)を有し、通信・タイミング制御部20からの制御データCN4で示される初期値からカウントクロックCKdac1に同期して、制御データCN4で示される傾き(変化率)の参照信号SLP_ADC を生成する。カウントクロックCKdac1はカウンタ部254用のカウントクロックCKcnt1と同一にしてもよい。
AD変換部250は、比較部252(COMP)と、アップカウントモードとダウンカウントモードを切替可能なカウンタ部254を備える。本例ではさらに、カウンタ部254の後段に、水平転送用のラッチ257(メモリ)を内蔵したデータ記憶部256を備える。比較部252は、参照信号生成部27で生成される参照信号SLP_ADC と、選択行の単位画素3から垂直信号線19(H1,H2,…,Hh)を経由し得られるアナログの画素信号電圧Vxを比較する。カウンタ部254は、比較部252の比較出力Coと一定の関係を持つカウントイネーブル信号ENのアクティブ期間をカウントクロックCKcnt1でカウントし、カウント結果を保持する。
通信・タイミング制御部20から各AD変換部250のカウンタ部254には、カウンタ部254がP相・D相のカウント処理をダウンカウントモードで動作するのかアップカウントモードで動作するのかや、P相のカウント処理における初期値Dini の設定やリセット処理など、その他の制御情報を指示する制御信号CN5が入力されている。
比較部252の一方の入力端子(+)は、他の比較部252の入力端子(+)と共通に、参照信号生成部27で生成される参照信号SLP_ADC が入力され、他方の入力端子(−)には、それぞれ対応する垂直列の垂直信号線19が接続され、画素アレイ部10からの画素信号電圧Vxが個々に入力される。
カウンタ部254のクロック端子CKには、他のカウンタ部254のクロック端子CKと共通に、通信・タイミング制御部20からカウントクロックCKcnt1が入力されている。データ記憶部256を設けない場合、カウンタ部254には、水平走査部12から制御線12cを介して制御パルスが入力される。カウンタ部254は、カウント結果を保持するラッチ機能を有しており、制御線12cを介しての制御パルスによる指示があるまでは、カウンタ出力値を保持する。
本実施形態では、AD変換部250にてCDS処理を完結させておくが、リセットレベルSrst のP相データと信号レベルSsig のD相データを個別に出力部28側に転送し、AD変換部250の後段のデジタル演算部でCDS処理を行なってもよい。本出願人は、AD変換部250にてAD変換とCDS処理を行なう参照信号比較型のAD変換方式を種々提案しており、それらも基本的には各実施形態で採用し得るものである。
水平走査部12や垂直走査部14などの駆動制御部7の各要素は、画素アレイ部10とともに、半導体集積回路製造技術と同様の技術を用いて単結晶シリコンなどの半導体領域に一体的に形成されたいわゆる1チップもの(同一の半導体基板上に設けられているもの)として、本実施形態の固体撮像装置1が構成される。
固体撮像装置1は、このように各部が半導体領域に一体的に形成された1チップとして形成された形態であってもよいし、図示を割愛するが、画素アレイ部10、駆動制御部7、カラムAD変換部26などの各種の信号処理部の他に、撮影レンズ、光学ローパスフィルタ、あるいは赤外光カットフィルタなどの光学系をも含む状態で、これらを纏めてパッケージングされた撮像機能を有するモジュール状の形態としてもよい。
個々のAD変換部250の出力側は、たとえば、カウンタ部254の出力をデータセレクタ部300を介して水平信号線18に接続することができる。あるいは、図示のように、カウンタ部254の後段に、このカウンタ部254の保持したカウント結果を保持するラッチを具備したメモリ装置としてのデータ記憶部256を備える構成を採ることもできる。本実施形態では、さらにデータ記憶部256の後段にデータセレクタ部300を備えており、データ記憶部256とデータセレクタ部300により、水平転送系Htrans を構成している。データ記憶部256は、所定のタイミングでカウンタ部254から出力されたカウントデータを保持・記憶する。
水平走査部12は、カラムAD変換部26の各比較部252とカウンタ部254とが、それぞれが担当する処理を行なうのと並行して、各データ記憶部256が保持していたカウント値を読み出す読出走査部の機能を持つ。データ記憶部256の出力は、データセレクタ部300を介して水平信号線18に接続されている。水平信号線18は、AD変換部250のビット幅分もしくはその2倍幅分(たとえば相補出力とするとき)の信号線を有し、それぞれの出力線に対応したセンスアンプ28aを有する出力部28に接続される。水平信号線18の水平転送チャネルは1つに限らず、複数チャネルにし複数カラムずつグループ化してデータ転送を行なう場合もある。なお、カウンタ部254、データ記憶部256、データセレクタ部300、および水平信号線18はそれぞれ、nビットに対応した構成を採っている。
<水平データ転送の問題点について>
ここで、各列のラッチ257に保持されたデータを、バスラインである水平信号線18を介して順次出力部28側に転送する場合、出力部28と接続された水平信号線18に寄生容量が存在するため、転送スピードの劣化や、寄生容量抑制のため水平信号線18に使われる配線幅( Metal幅)を広げなければならずチップサイズが大きくなるなどの、寄生容量の存在により様々な問題が生ずる。
たとえば、寄生容量の値は、
(1)水平信号線18による容量、
(2)出力部28の入力段による容量、
(3)ラッチ257の出力段による容量×ラッチ257の総数、
(4)水平信号線18と1つのラッチ257の出力段とを接続する配線の容量×ラッチ257の総数、
などを合計した値となる。
したがって、各列のラッチ257に保持されたデータを、ラッチ257を順次選択して水平信号線18に読み出す場合、水平信号線18の寄生容量のため、データ転送に障害が生じる。特に、寄生容量の容量値が大きくなれば、信号遅延の原因となり、データ転送の高速化を妨げることとなる。
たとえば、フレームレートを上げるなど理由で高速動作を行なう場合は、行走査、AD変換および水平データ転送などの動作を高速に動作させる必要がある。この中で、水平データ転送を高速化させたい場合、水平走査部12で選択されたラッチ257の出力データに基づき水平信号線18を駆動し、その信号が出力部28に到達するまでの時間が支配的となる。
水平方向の画素分、たとえば2000列の単位画素3を有する画素アレイ部10の場合、2000個のラッチ257が水平信号線18に接続されることになり、ラッチ257の出力段おのおのの持つ寄生容量が合成され、選択されたラッチ257はその大きな容量を負荷として駆動することになる。近年は多画素化の要求があるため水平信号線18に接続されるラッチ257の数が増加傾向にあり、近年、特に要求のある高速動作化の制約となってしまう。
高速化のため水平転送を相補(差動)信号線対による電流転送を行なう場合でも、水平信号線18に接続される水平転送ドライバ308が多くなると水平信号線18の寄生容量が大きくなり、電流転送を行なっていても転送に時間が掛かってしまう。
このような問題を解決する一手法として、寄生容量を抑制するため水平信号線18に使われる配線幅を広げる手法が考えられるが、ビット別のデータをバスラインとしての水平信号線18で転送するには、チップサイズが大きくなってしまう。
また、このような問題を解決する別手法として、特開2000−32344号公報のように、列である数ごとに並列して処理する方法も考えられる。しかしながら、当該仕組みはアナログ情報のままで固体撮像装置1の外部に出力する場合での適用事例であり、特に画素信号をデジタル変換して固体撮像装置1の外部に出力を行なう仕組みに当該仕組みを適用しようとすると、出力端子数が増加してしまったり、出力部分のマルチプレクス処理が必要であったりといった問題が生じる。
そこで、本実施形態では、画素信号をデジタル変換して固体撮像装置1の外部に出力を行なう仕組みにおいて、カラム処理部26や水平走査部12を、水平信号線18の寄生容量に起因する問題を改善することのできる仕組みにする。
その仕組みの基本は、カウンタ部254とデータ記憶部256の水平転送用のラッチ257が分離された参照信号比較型のカラムADC方式を採る場合に、水平転送ドライバをM(Mは3以上の正の整数)カラムで共有し、水平転送ドライバの入力にどのラッチを接続するかを決めるM入力−1出力型のセレクタを用いる。こうすることにより、水平転送系Htrans を階層化し効率化する。隣のMカラムも同様の構造とするが、異なる水平転送チャネルに接続する。したがって、水平転送チャネル数をJとしたときには、J×Mカラム周期の回路構成となる。
Mカラムに対して1つのサブセレクタを配置してサブセレクタごとに1つの水平転送ドライバを設けるが、1つのサブセレクタが対応するカラム数は複数である限り任意である。サブセレクタの構成例も様々であり、M入力−1出力型とするに当たり、一段構成で実現してもよいし、Mを“M=M_1×M_2×M_3×…”のように素数M_k(kは1以上の正の整数)の掛算の形に素因数分解して、M_k入力−1出力型のサブセレクタを階層化(多段構成に)してもよい。また、Mが素数である場合に、適当な数値αを加算することで素因数分解ができるようにして階層化し、その内の不要な数値αの分を所定段については使用しないようにしてもよい。以下、具体的に説明する。
<水平データ転送系;第1実施形態の基本>
図2〜図2Bは、固体撮像装置1の水平データ転送系の第1実施形態を説明する図である。ここで、図2は固体撮像装置1の水平データ転送系の第1実施形態の基本構成を示す図である。図2Aおよび図2Bは図2に示す第1実施形態に対する比較例を示す図である。因みに、図2および図2Aは水平転送チャネルが4個の場合、図2Bは水平転送チャネルが1つの場合を示す。
本実施形態の固体撮像装置1においては、水平信号線18の寄生容量を低減する仕組みとして、各データ記憶部256のデータをそのまま列ごとに出力ドライバを介して水平信号線18に出力するのではなく、データ記憶部256の全列数よりも少ない数の出力ドライバを介して水平信号線18に出力する構成をとる。
そのための仕組みとしては、様々な仕組みが考えられるが、本実施形態では、データセレクタ方式でデータを水平信号線18に出力する方式にする。データ記憶部256は、カラム(垂直信号線19)ごとにデータを保持するラッチ257をビット数分有する。データセレクタ部300は、サブセレクタ302を複数個有するセレクタ部301と、水平転送ドライバ308(水平転送DR)を複数個有するドライバ部307を備える。サブセレクタ302は、複数列の各ラッチ257のデータの何れかを選択する信号選択部の一例である。水平転送ドライバ308は、サブセレクタ302で選択されるデータに基づき水平信号線18を駆動する転送駆動部の一例である。
データ記憶部256の全列をそれぞれがM列(Mは2以上の正の整数)を含む複数ブロックに分け、1ブロックにつき、水平転送ドライバ308を1つ設ける。そして、ブロックごとに、水平転送ドライバ308とM列の各ラッチ257との間にM入力−1出力型のサブセレクタ302を設ける。水平転送ドライバ308の出力は、バスラインである水平信号線18を介して図示を割愛した出力部28に接続されている。図2に示す態様は、水平転送チャネルを4チャネル分にする場合を示しており、また、相補データ形式でデータ転送する場合を示しており、チャネル別に前記の構成が採られている。
サブセレクタ302を利用して水平転送系を階層化し、親階層は水平走査部12により制御される水平転送ドライバ308内の選択トランジスタ(詳細は後述する)により選択し、子階層は図示を割愛した通信・タイミング制御部20により制御されるサブセレクタ302により選択するようにする。
第1実施形態では、M=6とした例を示しており、6個のラッチ257(ラッチ群)が共通に1つの6入力型のサブセレクタ302(6入力サブセレクタ302Aと称する)に入力され、6入力サブセレクタ302Aの出力が水平転送ドライバ308の転送用トランジスタを制御し、水平転送ドライバ308が水平転送チャネルをドライブする。水平走査部12が、特定の水平転送ドライバ308の内の選択トランジスタをオンすることにより特定のラッチ群を選択する。転送用トランジスタおよび選択トランジスタについては後述する。1つの水平転送系Htrans0は、6個のラッチ257と、1つの6入力サブセレクタ302Aと、1つの水平転送ドライバ308を備える。各6入力サブセレクタ302Aは通信・タイミング制御部20からの共通の制御配線により制御される。つまり、通信・タイミング制御部20は、セレクタ部301の各サブセレクタ302(ここでは6入力サブセレクタ302A)を制御してデータを選択させる選択制御部の機能を持つ。
水平転送チャネルは4個あり、それぞれに水平転送系Htrans0が用意され、4個の水平転送系Htrans0で1つの水平転送系Htrans1が構成される。隣り合う4個の水平転送ドライバ308はそれぞれ異なる水平転送チャネルの水平信号線18_0〜18_3をドライブする。水平転送チャネル(水平信号線18_0〜18_3)の内容は、図示を割愛した出力部28のセンスアンプ28aによって読み出され、必要に応じてデジタル処理をした後でチップ外に読み出される。
このように、第1実施形態の水平転送系Htrans は、カウンタ部254と水平転送用のラッチ257を内蔵したデータ記憶部256を備える構成において、データセレクタ部300の水平転送ドライバ308をMカラム(本例では6カラム)で共有する水平転送系Htrans0_kとし、水平転送ドライバ308の入力にどのラッチ257を接続するかを決める6入力サブセレクタ302Aを用いている。水平転送ドライバ308を数カラムで共有することにより、水平転送系Htrans を階層化でき、水平転送の効率化を図ることができる。隣の6カラムの水平転送系Htrans0_kも同様の構造とするが、異なる水平転送チャネル(本例では4個ある)に接続している。したがって、4チャネル構成の場合、24カラム周期の回路構成となる。
つまり、4チャネル分の水平信号線18が設けられ、セレクタ部301の各サブセレクタ302(6入力サブセレクタ302A)およびドライバ部307の各水平転送ドライバ308は、4チャネルの各水平信号線18_1〜18_4に均等に配分されている。間引き動作の有無を問わず、各水平転送ドライバ308や各水平信号線18_1〜18_4の使用状態の均衡を図るためである。画素アレイ部10の全垂直列についても、この関係を維持するようにする(図3A参照)。
サブセレクタ302の入力数を6以外にする場合やチャネル数を4以外にする場合でも同様であり、Jチャネル分の水平信号線18が設けられるときには、セレクタ部301の各サブセレクタ302およびドライバ部307の各水平転送ドライバ308は、Jチャネルの各水平信号線18に均等に配分し、画素アレイ部10の全垂直列についてもこの関係を維持するようにする。
一方、図2Aおよび図2Bに示した比較例では、各ラッチ257の出力データが個別の水平転送ドライバ308Zにより水平信号線18に伝達される。図2Bに示すように、水平転送ドライバ308Zは、1対(2個)の転送用トランジスタ332,334と、1対(2個)の選択トランジスタ336,338を有する。各トランジスタ332,334,336,338は、何れもnMOSである。1個の水平転送ドライバ308は、4個のトランジスタを使用する。転送用トランジスタ334のゲートにはラッチ257の出力データが入力され、転送用トランジスタ332のゲートにはラッチ257のインバータ296の出力データが入力される。
水平転送ドライバ308とその出力側に接続されるバスラインである水平信号線18との関係においては、本実施形態の水平転送系Htrans は、列(カラム)をM本(第1実施形態では6本)ずつのグループに纏めている。水平信号線18に接続される水平転送ドライバ308の数が、図2Aおよび図2Bに示した比較例のように列ごとに水平転送ドライバ308を設ける場合に比べて1/Mに削減できる。その結果、水平転送ドライバ308がドライブしなくてはならない水平転送チャネルの寄生容量を減らすことができ、結果として高速動作が実現される。
また、水平転送ドライバ308が多段で接続されておらず、水平転送ドライバ308がドライブするときに流れる電流経路上に追加のトランジスタが必要ではなく、直列抵抗は増えない。サブセレクタ302の構成に関わらず水平転送ドライバ308は1段でよく、水平信号線18を駆動する際の直列抵抗が増大することはない。その結果、従前よりも確実に高速なデータ転送が可能になる。
なお、トランジスタ数や制御配線数(以下CN数とも記す)を考慮した場合、2カラムで1つの水平転送ドライバ308を共有する場合では差が殆どなく、3カラム以上で1つの水平転送ドライバ308を共有すると効果が出てくる。
<水平データ転送系の詳細:第1実施形態>
図3〜図3Bは、図2に示した第1実施形態の水平転送系の詳細構成例を説明する図である。図3は1ブロック分(1つの6入力サブセレクタ302Aが担当する部分)を示し、図3Aは4個の水平転送チャネル分を簡略化して示している。図3Bは、ラッチ257に使用されるクロックドインバータの構成例を示す図である。
図3に示すように、ラッチ257は、2個のクロックドインバータ292,294と1つの普通のインバータ296を有する。「普通の」とは前述のインバータ409のようにpMOSとnMOSが縦続接続されたCMOSインバータである。クロックドインバータ292,294は、たとえば図3B(1),(2)に示すように、2個のpMOS290_p1 ,290_p2 と2個のnMOS290_n1 ,290_n2 が縦続接続されたもので4個のトランジスタが使用される。よって、1個のラッチ257は、10個のトランジスタを使用する。
クロックドインバータは、中間のpMOS290_p2 ,nMOS290_n1 の各ドレインの接続点をデータ出力端子OUT とする。ここで、クロックドインバータの使い方としては、図3B(1)に示すように、中間のpMOS290_p2 ,nMOS290_n1 のゲートを共通に接続してデータ入力端子INとし、正電源側のpMOS290_p1 のゲートを反転クロック端子 XCK、接地あるいは負電源側のnMOS290_n2 のゲートを非反転クロック端子CKとする第1例がある。反転クロック端子 XCKにHレベル、非反転クロック端子CKにLレベルが入力されると、pMOS290_p1 およびnMOS290_n2 がオフ(遮断)して、データ出力端子OUT はハイインピーダンスとなりデータ通過を遮断する。一方、反転クロック端子 XCKにLレベル、非反転クロック端子CKにHレベルが入力されると、pMOS290_p1 およびnMOS290_n2 がオン(導通)するので、データ入力端子INに入力されたデータがpMOS290_p2 ,nMOS290_n1 で反転されて、データ出力端子OUT から出力される。
また、図3B(2)に示すように、両サイドのpMOS290_p1 ,nMOS290_n2 のゲートを共通に接続してデータ入力INとし、pMOS290_p2 のゲートを反転クロック端子 XCK、nMOS290_n1 のゲートを非反転クロック端子CKとする第2例がある。反転クロック端子 XCKにHレベル、非反転クロック端子CKにLレベルが入力されると、pMOS290_p2 およびnMOS290_n1 がオフ(遮断)して、データ出力端子OUT はハイインピーダンスとなりデータ通過を遮断する。一方、反転クロック端子 XCKにLレベル、非反転クロック端子CKにHレベルが入力されると、pMOS290_p2 およびnMOS290_n1 がオン(導通)するので、データ入力端子INに入力されたデータがpMOS290_p1 ,nMOS290_n2 で反転されて、データ出力端子OUT から出力される。
クロックドインバータ292,294の出力は共通に接続されインバータ296の入力となるとともに、6入力サブセレクタ302Aの入力ともなる。カウンタ部254のデータDATA<K>がクロックドインバータ292に入力され、インバータ296の出力データがクロックドインバータ294に入力される。
クロックドインバータ292の非反転クロック端子CKおよびクロックドインバータ294の反転クロック端子 XCKには通信・タイミング制御部20からの制御信号CN9に含まれるロード信号CRDLが入力される。クロックドインバータ292の反転クロック端子 XCKおよびクロックドインバータ294の非反転クロック端子CKには通信・タイミング制御部20からの制御信号CN9に含まれるロード信号 XCRDLが入力される。ロード信号CRDLとロード信号 XCRDLは論理反転(相補関係)の関係にある。
本構成では、カウンタ部254の各データDATA<K>は、ラッチ257のクロックドインバータ292により論理反転(相補関係)されて、データ XDATA<K>が6入力サブセレクタ302Aに供給されるようになる。
6入力サブセレクタ302Aは、nMOS322とpMOS324をCMOS型で並列接続したアナログスイッチとして働くCMOS構成のトランスファーゲートを6個持つ。このCMOS構成のトランスファーゲートは、nMOS322とpMOS324を相補接続形で並列接続したものである。CMOS構成のトランスファーゲートは、特にトランスミッションゲートやトランスミッションスイッチとも称される。以下、nMOS322とpMOS324の対をCMOSスイッチ326と称する。
各nMOS322の各ゲートは通信・タイミング制御部20からの制御信号CN9に含まれるサブセレクト信号SUBSELが各別に入力され、各pMOS324の各ゲートは通信・タイミング制御部20からの制御信号CN9に含まれるサブセレクト信号 XSUBSELが各別に入力される。サブセレクト信号SUBSELとサブセレクト信号 XSUBSELは論理反転(相補関係)の関係にある。つまり、6入力サブセレクタ302Aは、12本の制御配線によって制御される。これら12本の制御配線は、全ての6入力サブセレクタ302Aで共通である。多数のサブセレクタ302(6入力サブセレクタ302A)を使用する場合でも、通信・タイミング制御部20からの制御配線数の大幅な増加はないと言える。
トランスミッションゲートつまりCMOSスイッチ326は、nMOS322のゲートがハイでかつpMOS324のゲートがローのときに双方がオンすることにより、入力されたデータをそのまま出力する。アナログスイッチとしては、nMOS322とpMOS324のどちらか一方のみによるトランジスタスイッチでもよいが、その場合、素子数は少ないもののオン抵抗や閾値電圧Vthの問題がある。加えて、閾値電圧Vthとも関係するが、デジタルデータのスイッチとして使用する場合、nMOSはLレベルは通せるがHレベルは通せないし、pMOSはHレベルは通せるがLレベルは通せないという問題も発生する。そこで、本例では、素子数が多くなってしまうが、nMOS322とpMOS324を相補接続形で並列接続することによりLレベルもHレベルも通すことができる理想的なスイッチとして機能するトランスミッションゲートを採用した。
6個のCMOSスイッチ326_0〜326_5の各nMOS322,pMOS324の各入力には、それぞれ対応するラッチ257から出力データが入力される。6個のnMOS322,pMOS324の各出力は共通に接続され、その出力データが水平転送ドライバ308に入力される。6入力サブセレクタ302Aの出力は、相補(差動)ではなくシングルエンドである。
水平転送ドライバ308は、図2Bで示した水平転送ドライバ308Zに対して、1つのインバータ331を追加した構成である。インバータ331は、pMOSとnMOSが縦続接続されたCMOSインバータである。よって、1個の水平転送ドライバ308は、6個のトランジスタを使用する。インバータ331の入力端と転送用トランジスタ334のゲートが共通に接続され、6入力サブセレクタ302Aを構成する6個のnMOS322,pMOS324からの出力データが入力される。インバータ331の出力データが転送用トランジスタ332のゲートに入力される。
転送用トランジスタ332,334の各ソースは接地されている。転送用トランジスタ332のドレインは選択トランジスタ336のソースに接続され、転送用トランジスタ334のドレインは選択トランジスタ338のソースに接続されている。選択トランジスタ336のドレインは非反転データ(D0)用の水平信号線18aに接続され、選択トランジスタ338のドレインは反転データ(XD0)用の水平信号線18bに接続されている。選択トランジスタ336,338のゲートは共通に接続され水平走査部12からの選択制御信号MSELが入力される。高速化のため、水平転送は差動信号線対による電流転送を採用している。
6入力サブセレクタ302A(つまりラッチ群)1つにつき水平信号線18を駆動する転送用トランジスタ332,334を設け、かつ、多数ある6入力サブセレクタ302Aの選択を選択トランジスタ336,338で行なってデータ転送を行なう構成にする。これが、転送用トランジスタ332と選択トランジスタ336あるいは転送用トランジスタ334と選択トランジスタ338の各直列回路で簡単に実現できる。なお、それぞれ直列に接続されている転送用トランジスタ332と選択トランジスタ336や転送用トランジスタ334と選択トランジスタ338の各配置順は逆でもよい。
転送用トランジスタ332および選択トランジスタ336の各ゲートがHレベルのときに、各トランジスタ332,336がオンして、図示を割愛したセンスアンプ28aから非反転データ用の水平信号線18aを介して電流が接地側に流れる。同様に、転送用トランジスタ334および選択トランジスタ338の各ゲートがHレベルのときに、各トランジスタ334,338がオンして、図示を割愛したセンスアンプ28aから反転データ用の水平信号線18bを介して電流が接地側に流れる。たとえば、センスアンプ28aが図中の左にある場合は、電流が左から右に流れる方向が正である。
つまり、水平転送ドライバ308は、転送用トランジスタ332と選択トランジスタ336の双方がオンしたときに、6入力サブセレクタ302Aでの選択に基づくラッチ257の非反転データを水平信号線18aを介してセンスアンプ28aに転送するように動作する。また、水平転送ドライバ308は、転送用トランジスタ334と選択トランジスタ338の双方がオンしたときに、6入力サブセレクタ302Aでの選択に基づくラッチ257の反転データを水平信号線18bを介してセンスアンプ28aに転送するように動作する。
水平走査部12は、DFF12X(ディレイ・フリップフロップ)を多数持つが、6入力サブセレクタ302Aのそれぞれに対してDFF12Xは1つである。DFF12Xは、選択トランジスタ336,338のゲートに、アクティブHの選択制御信号MSELを供給する。
カウンタ部254のデータDATA<K>は6個のラッチ257に保持されて論理反転(相補関係)されたデータ XDATA<K>として出力され、シングルエンドの6入力サブセレクタ302Aにより1つが選択され水平転送ドライバ308に入力される。6入力サブセレクタ302Aにより選択された1つのデータ XDATA<K>は、水平転送ドライバ308のインバータ331に入力され反転される。
ここで、6入力サブセレクタ302Aにより選択された1つのデータは、水平転送ドライバ308内の選択トランジスタ336,338の内の一方の選択トランジスタ338を駆動し、インバータ331で反転されたデータは、水平転送ドライバ308内の選択トランジスタ336,338の内の他方の選択トランジスタ336を駆動する。
水平転送ドライバ308は、多数存在する水平転送ドライバセットのうち4個1セットにアクティブHの選択制御信号MSELを選択トランジスタ336,338のゲートに与える。つまり、水平走査部12のDFF12Xの出力は、水平転送ドライバ308内の選択トランジスタ336,338を選択する。
6入力サブセレクタ302Aをシングルエンドとすることにより、トランジスタ数(以下TR数とも称する)を節約することができる。6入力サブセレクタ302Aの出力データは、インバータ331により、当該インバータ331の入力との関係で相補データ(差動信号)となり、相補(差動)方式の水平転送チャネル(2個の水平信号線18a,18b)を駆動する。この場合、センスアンプ28aは差動増幅回路でデータを再生するようにする。
デジタルデータを相補データで転送して後段のセンスアンプ28aが具備する差動増幅回路で再生するようにすれば、水平信号線18a、18bにノイズが混入しても、その影響をキャンセルできる。また、相補の水平信号線18a,18bとセンスアンプ28aとの間にさらに増幅回路を介在させ、水平信号線18a,18b側の振幅は小さくし、かつセンスアンプ28aの入力側は振幅を大きくするようにすれば、バスラインである水平信号線18a,18b上の寄生容量に起因する問題を改善できる。大振幅の情報での転送よりも小振幅の情報での転送の方が、低消費電力であり、また高速転送動作が可能になるからである。
もちろん、このように相補形式でデータ転送することは必須ではなく、水平信号線18a,18bの何れか一方のみを使用したデータ転送でもよい。水平信号線18a側のみを使用する場合には、転送用トランジスタ334および選択トランジスタ338を水平転送ドライバ308から取り外すことができる。水平信号線18b側のみを使用する場合には、インバータ331、転送用トランジスタ332、および選択トランジスタ336を水平転送ドライバ308から取り外すことができる。
6入力サブセレクタ302Aをシングルエンドとすることによりトランジスタ数を節約することができる。6入力セレクタの出力はインバータにより差動信号となり、2本の配線より成る差動方式の転送チャネルを駆動する。
図3Aでは、水平転送系の96カラム分を簡略化して示しているが、図3に示すような構成の水平転送系Htrans0が4個の水平転送チャネル分用意されて図2に示すような構成の水平転送系Htrans1が構成される。そして、図3Aでは、水平転送系Htrans1が4個並んでいる。水平転送ドライバ308は、4個単位で選択される。各グループ(水平転送系Htrans1)の4個の水平転送ドライバ308を纏めて水平転送ドライバセット309と称する。水平転送ドライバセット309(同一水平転送系Htrans1内の4個の水平転送ドライバ308)には、水平走査部12のDFF12Xから共通に選択制御信号MSELが供給される。
<水平転送系の基本動作例:第1実施形態>
図4および図4Aは、具体的なデータ例での第1実施形態の水平転送系Htrans の基本的な動作を説明する図である。ここで、図4は水平転送系Htrans0のデータ例を示し、図4Aは、図4のデータ例における水平転送系Htrans1(4個の水平転送系Htrans0)の基本動作を説明するタイミングチャートである。
図4において、ラッチ257の部分に、当該ラッチ257が保持している所定ビット位置(たとえば0ビット目)のデータ例が示されている。ラッチ257内には、画素アレイ部10の単位画素3にて検出した画素情報をAD変換部250でAD変換した結果に基づいて、“0”または“1”が記憶されている。たとえば、水平転送系Htrans0_0では、水平走査方向の上流側から“010101”となっており、これが出力データD0<0>として現われ、これを論理反転(相補関係)して出力データXD0<0>として現われる。
水平転送系Htrans0_1では、水平走査方向の上流側から“101011”となっており、これが出力データD0<1>として現われ、これを論理反転(相補関係)して出力データXD0<1>として現われる。水平転送系Htrans0_2では、水平走査方向の上流側から“000011”となっており、これが出力データD0<2>として現われ、これを論理反転(相補関係)して出力データXD0<2>として現われる。水平転送系Htrans0_3では、水平走査方向の上流側から“101110”となっており、これが出力データD0<3>として現われ、これを論理反転(相補関係)して出力データXD0<3>として現われる。
図4Aに示すように、水平走査部12のDFF12Xは、選択制御信号MSELを順次1つずつ順番にアクティブHにしていく。これにより、各水平転送ドライバ308の内4個1セットの水平転送ドライバセット309を順番に選択する。
通信・タイミング制御部20は、特定の選択制御信号MSELがアクティブHになっている期間中に、6個のサブセレクト信号SUBSEL<K>が順番にアクティブHに、6個のサブセレクト信号 XSUBSEL<K>が順番にアクティブLになるようにする。これにより、水平転送系Htrans0のラッチ群(6個のラッチ257)内の特定のラッチ257が選択される。
4個のD0<k>,XD0<k>の部分は、水平信号線18a,18bを電流が流れるかどうかを示したチャートであり、Hレベルのときに電流が流れ、電位を表したものではない。
<水平転送系の変形動作例:第1実施形態>
図5は、6入力サブセレクタ302Aを使用した本実施形態の固体撮像装置1における第1実施形態の水平転送系Htrans の変形動作を説明する図である。ここで、図5(1)は、1/2間引きの動作を説明する図である。図5(2)は1/3間引きの動作を説明する図である。図中においてハッチング付きのラッチ257が「ラッチデータあり」のもので間引き動作時の転送対象であり、ハッチングなしのラッチ257が「ラッチデータなし」のもので非転送対象である。この点は、後述する他の実施形態の間引きの動作でも同様である。
図5(1)に示すように、1/2間引き時には、ラッチ257のデータを1つ置きに水平転送することになる。この転送対象の1つ置きのラッチ257のデータはたとえば6入力サブセレクタ302Aの奇数番目の3つの入力端に入力され水平転送ドライバ308に送られる。このとき、1つ置きのために、各6入力サブセレクタ302Aとしては、6入力端に対して奇数番目の3つの入力端が同様の関係で使用され、かつ、全ての6入力サブセレクタ302Aおよび水平転送ドライバ308が使用される。図では、このことを示すため、全ての水平転送ドライバ308を網掛けで示している。したがって、1/2間引き時には、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
また、図5(2)に示すように、1/3間引き時には、ラッチ257のデータを2個置きに水平転送することになる。この転送対象の2個置きのラッチ257のデータはたとえば6入力サブセレクタ302Aのk番目とk+3番目(kは1〜3の何れか)の2個の入力端に入力され水平転送ドライバ308に送られる。このとき、2個置きのために、各6入力サブセレクタ302Aとしては、6入力端に対してk番目とk+3番目の2個の入力端が同様の関係で使用され、かつ、全ての6入力サブセレクタ302Aおよび水平転送ドライバ308が使用される。図では、このことを示すため、全ての水平転送ドライバ308を網掛けで示している。したがって、1/3間引き時にも、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
このように、6入力サブセレクタ302Aを使用することで、1/2間引きおよび1/3間引きの双方について、効率よく水平転送チャネルを利用可能となる。間引き時にも全ての水平転送チャネルを有効利用し、間引き時の効率を改善することができる。水平転送チャネル数を増やさずにフレームレートを改善することができる。
なお、ここでは6入力の場合に1/2間引きおよび1/3間引きの双方について効率よく水平転送チャネルを利用可能となることを示したが、サブセレクタ302の入力数が6(=2×3)の倍数の関係を持つ限り1/2間引きおよび1/3間引きの双方について効率よく水平転送チャネルを利用可能となる。「6の倍数」と称したのは、本例では、1/2間引きおよび1/3間引きの双方を考慮していることによるもので、各間引きの割合い1/2,1/3の各逆数(2,3)の最小公倍数である「6」に基づく。
各間引きの割合が本例と異なれば、それに応じてサブセレクタ302の最適な入力数も異なってくるのは言うまでもない。つまり、間引きの度合いが異なる複数の間引きモードに対応する場合には、各サブセレクタ302のそれぞれには何れかの間引きの割合いの逆数の入力数のものを使用するというだけでは不足であり、各間引きの割合いの逆数の最小公倍数に、1つのサブセレクタ302が担当する入力数を揃えるとよい。この点は、後述の2入力サブセレクタや3入力サブセレクタで詳しく説明する。
<纏め:第1実施形態>
図6および図6Aは、本実施形態の固体撮像装置1における第1実施形態の水平転送系Htrans の作用効果を従来技術との対比で纏めた図表である。図6は、第1実施形態と特開2006−148509号公報の水平転送系Htrans の作用効果を比較する図である。図6Aは、第1実施形態の水平転送系Htrans の作用効果を図2Aおよび図2Bに示した比較例(以下比較例と称する)との対比で纏めた図表である。
図6(1)に示すように、特開2006−148509号公報の水平転送系Htrans では、水平転送ドライバ308が多段で接続されてしまうので、水平転送ドライバ308がドライブするときに流れる電流経路上に追加のトランジスタが必要になり、直列抵抗が増える。これに対して、図6(2)に示すように、第1実施形態の水平転送系Htrans では、水平転送ドライバ308の前段でデータセレクトを行なうことで階層化しており、水平転送ドライバ308は1段でよい。水平転送ドライバ308がドライブするときに流れる電流経路上に追加のトランジスタが必要ではなく、直列抵抗は増えない。比較例に対して水平転送ドライバ308を1/6に削減できるし、水平転送ドライバ308の縦続接続はないので、高速動作を確実に実現できる。
また、図6Aに示すように、第1実施形態の水平転送系Htrans では、その他の様々なメリットがある。たとえば、比較例1と第1実施形態の水平転送系Htrans で、水平信号線18に直列に接続されるトランジスタの数を比較すると、第1実施形態の方が直列のトランジスタ数は少ないため直列抵抗が少なく、より高速に動作する。水平転送のシミュレーションによると、比較例のような一般的な場合に比べて約16%高速化することが分かった。
また、水平転送ドライバ308内の1対の転送用トランジスタ332,334と1対の選択トランジスタ336,338を全て2倍のゲート幅にし、これらのトランジスタ332,334,336,338に流れる電流と同じ電流が流れるセンスアンプ28a内の一部のトランジスタのゲート幅も2倍にすることにより、比較例のような一般的な場合に比べて約32%高速化することが分かった。
前述のように、1/2間引きや1/3間引き時には子階層である6入力サブセレクタ302Aの制御配線のみ飛ばして出力することにより、1/2間引きや1/3間引き時にも全ての水平転送系Htrans を有効利用でき、効率よく水平転送をすることができる。
加えて、本実施形態の水平転送系Htrans の水平走査部12を含まない部分は、6個のラッチ257(TR数=10)と、1個の6入力サブセレクタ302A(TR数=12)と、1個の水平転送ドライバ308(TR数=6)であり、6カラム1桁当たり78(=10×6+12+6)個のトランジスタを使用することになる。一方、比較例の水平転送系Htrans の水平走査部12を含まない部分は、6個のラッチ257(TR数=10)と、6個の水平転送ドライバ308Z(TR数=4)であり、6カラム1桁当たり84(=10×6+4×6)個のトランジスタを使用することになる。よって、第1実施形態の水平転送系Htrans では、比較例に対して6カラム1桁当たりトランジスタ数を6個削減することができる。
このことは、水平転送ドライバ308を6個のラッチ257で共有して減らしていることに起因する。したがって、水平転送ドライバ308内の1対の転送用トランジスタ332,334と1対の選択トランジスタ336,338を全て2倍のゲート幅にしても面積の増大は限られる。また、制御対象の水平転送ドライバ308の数が1/6に減ることにより、水平走査部12の規模を約1/6に小さくすることができる。
ただし、6入力サブセレクタ302Aを制御する制御配線が12本必要となってしまう。この12本の制御配線は、データ記憶部256または水平走査部12に沿って長距離の信号を伝送し、場合によっては太くする必要がある。
このように、第1実施形態の水平転送系Htrans は、間引きを行なわないときにも比較例よりさらに高速な転送を行なうことができ、高速化の度合いは、当該比較例に比べてシミュレーションでは16%〜32%程度となる。また、間引き時にも全ての水平転送チャネルを有効利用でき、間引き時の効率を改善する水平転送系にできる。水平転送チャネル数を増やさずにフレームレートを改善することができ、トランジスタ数も削減することができる。
なお、究極的にはデータ記憶部256の全てのラッチ257を1つのサブセレクタ302でデータ選択することで、水平信号線18には1つの水平転送ドライバ308のみが接続される構成を採ることも考えられる。しかしながら、この場合、サブセレクタ302を構成するトランジスタ数やサブセレクタ302のデータ選択動作を制御する通信・タイミング制御部20からの制御配線数が多くなり得策ではない。1つのサブセレクタ302が担当するカラム数(ラッチ257の数)は数個〜10数個程度が現実的と考えられる。
つまり、セレクタ部301には複数個のサブセレクタ302を配置し、ドライバ部307にはその複数個のサブセレクタ302のそれぞれに対して1個の水平転送ドライバ308を備える構成をとる。そして、水平転送ドライバ308の選択トランジスタ336,338の選択動作によってサブセレクタ302の選択が行なわれ、サブセレクタ302によってサブセレクタ302が担当するラッチ群(たとえば6カラム分のラッチ257)の中の特定のラッチ257が選択されるようにする。サブセレクタ302のトランジスタ数や制御配線数と水平信号線18に接続される水平転送ドライバ308の数(それによる負荷容量・寄生容量)のバランスを採ることができる。
<水平データ転送系;第2実施形態>
図7は、固体撮像装置1の水平データ転送系の第2実施形態を説明する図である。第2実施形態は、サブセレクタ302のnMOS322,pMOS324のゲートを制御するサブセレクト信号SUBSEL,サブセレクト信号 XSUBSELが論理反転(相補関係)の関係にある点に着目した変形例である。なお、第2〜第7実施形態は、ともにサブセレクタ302の構成に特徴があり、その他の点を除いて第1実施形態と同様であるので、各図面ではサブセレクタ302のみに着目して示す。サブセレクタ302がセレクタ部301に複数個配置されることになるが、それらには通信・タイミング制御部20からの共通の制御配線が使用され、共通の制御信号により制御される点も第1実施形態と同様である。
具体的には、第2実施形態でも、M=6とした例を示しており、6個のラッチ257が共通に1つの6入力サブセレクタ302Bに入力される。ここで、第2実施形態の6入力サブセレクタ302Bは、サブセレクト信号 XSUBSELが入力される各pMOS324のゲート側にそれぞれインバータ328を有する。各インバータ328には、各nMOS322のゲートと共通にサブセレクト信号SUBSELが入力される。図示を割愛するが、サブセレクト信号SUBSELが入力される各nMOS322のゲート側にそれぞれインバータ328を設け、各インバータ328に各pMOS324のゲートと共通にサブセレクト信号 XSUBSELが入力されるようにしてもよい。
このように、第2実施形態では、サブセレクト信号SUBSEL,サブセレクト信号 XSUBSELの一方について、通信・タイミング制御部20からの制御信号CN9に含めるのではなく、他方をインバータ328により論理反転(相補関係)することで自身で該当信号を生成するようにしている。こうすることで、6入力サブセレクタ302Bは、通信・タイミング制御部20からの6本の制御配線によって制御される。6入力サブセレクタ302Bはインバータ328の追加分だけ第1実施形態の6入力サブセレクタ302Aよりも大きくなるが、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
サブセレクタ302の入力端の対応数が多くなると、nMOS322,pMOS324の各ゲートを制御するサブセレクト信号SUBSEL,サブセレクト信号 XSUBSEL用の制御配線が多くなり制御配線バスを太くする必要が生じるが、第2実施形態の仕組みを採ることで、その制御配線数を半減でき、レイアウト的に有利となる。
その他の基本的事項については第1実施形態の6入力サブセレクタ302Aと同じであり、間引きの有無に関わらず水平転送ドライバ308の縦続接続が無く直列抵抗は増えないので先行文献より高速な転送を行なうことができるし、間引き時にも全ての水平転送チャネルを有効利用し間引き時の効率を改善することができるなどの効果を同様に享受できる。
<水平データ転送系;第3実施形態>
図8は、固体撮像装置1の水平データ転送系の第3実施形態を説明する図である。第3実施形態は、データ記憶部256の全列をそれぞれが2列を含む複数ブロックに分け、1ブロックにつき、水平転送ドライバ308を1つ設ける。そして、ブロックごとに、水平転送ドライバ308と2列の各ラッチ257との間に2入力−1出力型のサブセレクタ302(2入力サブセレクタ302Cと称する)を設ける。水平転送チャネルは4チャネル分にしている。第1実施形態と同様に相補データ形式でデータ転送する場合を示しており、チャネル別に前記の構成が採られている。なお、2入力サブセレクタ302Cは後述する2入力セレクタ502Vを使用してもよい。
水平転送ドライバ308の低減効果は6入力サブセレクタ302A,302Bを使用した第1・第2実施形態よりも劣るが、比較例1に対して水平転送ドライバ308を1/2に削減できるし、水平転送ドライバ308の縦続接続はないので、高速動作を確実に実現できる。
図8Aは、2入力サブセレクタ302Cを使用した第3実施形態の水平転送系Htrans の動作を説明する図である。ここで、図8A(1)は1/2間引きの動作を説明する図であり、図8A(2)は1/3間引きの動作を説明する図である。
図8A(1)に示すように、1/2間引き時には、ラッチ257のデータを1つ置きに水平転送することになる。この転送対象の1つ置きのラッチ257のデータは2入力サブセレクタ302Cの一方の入力端に入力され水平転送ドライバ308に送られる。このとき、1つ置きのために、全ての2入力サブセレクタ302Cおよび水平転送ドライバ308が使用される。図では、このことを示すため、水平転送ドライバ308を網掛けで示している。したがって、1/2間引き時には、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
一方、図8A(2)に示すように、1/3間引き時には、ラッチ257のデータを2個置きに水平転送することになる。この転送対象の2個置きのラッチ257のデータは2入力サブセレクタ302Cの一方の入力端かもしくは2入力サブセレクタ302Cの他方の入力端に入力され水平転送ドライバ308に送られる。このとき、2個置きのために使用されない2入力サブセレクタ302Cおよび水平転送ドライバ308が発生し、データを順次転送している際には、使用せずに飛ばされる水平転送チャネルが発生する。図では、このことを示すため、使用される水平転送ドライバ308を網掛けで示し、使用されない水平転送ドライバ308を網掛けなしで示している。したがって、1/3間引き時には、水平転送チャネルの利用状態が不均衡となるので、効率よく水平転送チャネルを利用不可能となる。
このことは、6入力サブセレクタ302A,302Bを使用する第1・第2実施形態の場合は、1/2間引きおよび1/3間引きの双方について効率よく水平転送チャネルを利用可能となるのと異なる。
その他の基本的事項については第1・第2実施形態の6入力サブセレクタ302A,302Bと同じであり、水平転送ドライバ308の縦続接続が無く直列抵抗は増えないので先行文献より高速な転送を行なうことができるなどの効果を同様に享受できる。
<水平データ転送系;第4実施形態>
図9は、固体撮像装置1の水平データ転送系の第4実施形態を説明する図である。第4実施形態は、データ記憶部256の全列をそれぞれが3列を含む複数ブロックに分け、1ブロックにつき、水平転送ドライバ308を1つ設ける。そして、ブロックごとに、水平転送ドライバ308と3列の各ラッチ257との間に3入力−1出力型のサブセレクタ302(3入力サブセレクタ302Dと称する)を設ける。水平転送チャネルは4チャネル分にしている。第1実施形態と同様に相補データ形式でデータ転送する場合を示しており、チャネル別に前記の構成が採られている。
第4実施形態の仕組みでは、水平転送ドライバ308の低減効果は6入力サブセレクタ302A,302Bを使用した第1・第2実施形態よりも劣るが、2入力サブセレクタ302Cを使用した第3実施態よりも優る。比較例1に対して水平転送ドライバ308を1/3に削減できるし、水平転送ドライバ308の縦続接続はないので、高速動作を確実に実現できる。
図9Aは、3入力サブセレクタ302Dを使用した第4実施形態の水平転送系Htrans の動作を説明する図である。ここで、図9A(1)は1/3間引きの動作を説明する図であり、図9A(2)は1/2間引きの動作を説明する図である。
図9A(1)に示すように、1/3間引き時には、ラッチ257のデータを2個置きに水平転送することになる。この転送対象の2個置きのラッチ257のデータは3入力サブセレクタ302Dのk番目(kは1〜3の何れか)の入力端に入力され水平転送ドライバ308に送られる。各3入力サブセレクタ302Dとしては、3入力端に対してk番目の入力端が同様の関係で使用され、かつ、全ての3入力サブセレクタ302Dおよび水平転送ドライバ308が使用される。図では、このことを示すため、全ての水平転送ドライバ308を網掛けで示している。したがって、1/3間引き時には、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
一方、図9A(2)に示すように、1/2間引き時には、ラッチ257のデータを1つ置きに水平転送することになる。この転送対象の1つ置きのラッチ257のデータは3入力サブセレクタ302Dの1番目と3番目かもしくは3入力サブセレクタ302Dの2番目に入力され水平転送ドライバ308に送られる。3入力サブセレクタ302Dは、1番目と3番目の2個の入力端が使用されるものと2番目のみの入力端が使用されるものが発生する。データを順次転送している際には、2個の入力端が使用される3入力サブセレクタ302Dおよびそれを受けて2回連続して使用される水平転送ドライバ308と、1つの入力端が使用される3入力サブセレクタ302Dおよびそれを受けて1回のみ使用される水平転送ドライバ308が発生する。図では、このことを示すため、2回連続して使用される水平転送ドライバ308を網掛けで示し、1回のみ使用される水平転送ドライバ308を網掛けなしで示している。したがって、1/2間引き時には、水平転送チャネルの利用状態が不均衡となり、効率よく水平転送チャネルを利用不可能となる。
このことは、6入力サブセレクタ302A,302Bを使用する第1・第2実施形態の場合は、1/2間引きおよび1/3間引きの双方について効率よく水平転送チャネルを利用可能となるのと異なる。
その他の基本的事項については第1・第2実施形態の6入力サブセレクタ302A,302Bと同じであり、水平転送ドライバ308の縦続接続が無く直列抵抗は増えないので先行文献より高速な転送を行なうことができるなどの効果を同様に享受できる。
<水平データ転送系;第5実施形態>
図10は、固体撮像装置1の水平データ転送系の第5実施形態を説明する図である。第5実施形態は、データ記憶部256の全列をそれぞれが4列を含む複数ブロックに分け、1ブロックにつき、水平転送ドライバ308を1つ設ける。そして、ブロックごとに、水平転送ドライバ308と4列の各ラッチ257との間に4入力−1出力型のサブセレクタ302(4入力サブセレクタ302Eと称する)を設ける。水平転送チャネルは4チャネル分にしている。第1実施形態と同様に相補データ形式でデータ転送する場合を示しており、チャネル別に前記の構成が採られている。
水平転送ドライバ308の低減効果は6入力サブセレクタ302A,302Bを使用した第1・第2実施形態よりも劣るが、2入力サブセレクタ302Cを使用した第3実施態や3入力サブセレクタ302Dを使用した第4実施態よりも優る。比較例1に対して水平転送ドライバ308を1/4に削減できるし、水平転送ドライバ308の縦続接続はないので、高速動作を確実に実現できる。
図10Aは、4入力サブセレクタ302Eを使用した第5実施形態の水平転送系Htrans の動作を説明する図である。ここで、図10A(1)は1/4間引きの動作を説明する図であり、図8A(2)は1/3間引きの動作を説明する図である。
図10A(1)に示すように、1/4間引き時には、ラッチ257のデータを3つ置きに水平転送することになる。この転送対象の4個置きのラッチ257のデータは4入力サブセレクタ302Eのk番目(kは1〜4の何れか)の入力端に入力され水平転送ドライバ308に送られる。各4入力サブセレクタ302Eとしては、4入力端に対してk番目の入力端が同様の関係で使用され、かつ、全ての4入力サブセレクタ302Eおよび水平転送ドライバ308が使用される。図では、このことを示すため、全ての水平転送ドライバ308を網掛けで示している。したがって、1/4間引き時には、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
図示しないが、1/2間引きの場合、4入力サブセレクタ302Eの4入力端の内の2個が使用され、各4入力サブセレクタ302Eについて同様の関係で使用され、かつ、全ての4入力サブセレクタ302Eおよび水平転送ドライバ308が使用される。データを順次転送している際には、全ての水平転送ドライバ308は、2回連続して使用される。したがって、1/2間引き時にも、水平転送チャネルの利用状態が均衡するので、効率よく水平転送チャネルを利用可能となる。
一方、図10A(2)に示すように、1/3間引き時には、ラッチ257のデータを2個置きに水平転送することになる。この転送対象の2個置きのラッチ257のデータは4入力サブセレクタ302Eの1番目と4番目か、もしくは3番目のみか、もしくは2番目のみに入力され水平転送ドライバ308に送られる。4入力サブセレクタ302Eは、1番目と4番目の2個の入力端が使用されるものと3番目のみや2番目のみの入力端が使用されるものが発生する。データを順次転送している際には、2個の入力端が使用される4入力サブセレクタ302Eおよびそれを受けて2回連続して使用される水平転送ドライバ308と、1つの入力端が使用される4入力サブセレクタ302Eおよびそれを受けて1回のみ使用される水平転送ドライバ308が発生する。図では、このことを示すため、2回連続して使用される水平転送ドライバ308を網掛けで示し、1回のみ使用される水平転送ドライバ308を網掛けなしで示している。したがって、1/3間引き時には、水平転送チャネルの利用状態が不均衡となり、効率よく水平転送チャネルを利用不可能となる。
このことは、6入力サブセレクタ302A,302Bを使用する第1・第2実施形態の場合は、1/2間引きおよび1/3間引きの双方について効率よく水平転送チャネルを利用可能となるのと異なる。
その他の基本的事項については第1・第2実施形態の6入力サブセレクタ302A,302Bと同じであり、水平転送ドライバ308の縦続接続が無く直列抵抗は増えないので先行文献より高速な転送を行なうことができるなどの効果を同様に享受できる。
<水平データ転送系;第6実施形態>
図11〜図11Cは、固体撮像装置1の水平データ転送系の第6実施形態を説明する図である。第6実施形態は、サブセレクタ302の入力数Mを、“M=M_1×M_2×M_3×…”のように素数M_k(kは1以上の正の整数)の掛算の形に素因数分解して、M_k入力−1出力型のサブセレクタを階層化(多段構成に)するものである。M_k入力−1出力型のサブセレクタを複数並列配置する段では、nMOS322,pMOS324のゲートには、サブセレクト信号SUBSEL,サブセレクト信号 XSUBSELを共通に供給する構成をとることで、全体としての制御配線数を削減し配線レイアウト上のメリットを享受するものである。
たとえば、図11は、2入力セレクタを2段の階層化にすることで4入力サブセレクタ302Fを構成したものである。ここで、2入力セレクタとしては、図示のように、CMOSスイッチ326が2個並列接続された2入力−1出力型の信号選択回路(2入力セレクタ502V)を使用する。1つの2入力セレクタ502Vは4個のトランジスタを使用する。2入力セレクタ502Vは、他方のCMOSスイッチ326との間で、pMOSとnMOSの各ゲートが共通に接続される。そして、同一段では、それらゲートが共通に接続されている。
そして、1段目には2個の2入力セレクタ502V_1,502_2を配置し、それらの出力を受ける2入力セレクタ502V_3を2段目に配置する。各段では、2入力セレクタ502Vに、相補関係にある1対のサブセレクト信号が共通に入力される。なお、一方を論理反転して他方を生成する仕組みを採ることも考えられる。たとえば、1段目の2入力セレクタ502V_1,502_2には、サブセレクト信号SUBSEL_A, XSUBSEL_Aを共通に供給する。2段目の2入力セレクタ502V_3には、サブセレクト信号SUBSEL_B, XSUBSEL_Bを供給する。2入力セレクタ502V_1により入力1と入力2の内の片方が選択され、2入力セレクタ502V_2により入力3と入力4のうちの片方が選択される。そして、2個の2入力セレクタ502V_1,502V_2で選択された2個の信号のうち1つが2入力セレクタ502V_3により選択される。
このような仕組みの4入力サブセレクタ302Fでは、トランジスタ数は4×3=12で、制御配線数は2×2=4となる。一方、このような仕組みを採らずに単純に4入力型のサブセレクタ302を構成すると、トランジスタ数は4×2=8で、制御配線数は4×2=8となる。4入力サブセレクタ302Fでは、トランジスタ数が多くなるものの、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
図11Aは、2入力サブセレクタ302Cと3入力サブセレクタ302Dを2段の階層化にすることで6入力サブセレクタ302Gを構成したものである。6を素因数分解すると「2×3」となり、6入力対応とするための各段の配置の仕方としては、「2入力→3入力」,「3入力→2入力」の2通りが考えられる。
図11A(1)に示した第1例の6入力サブセレクタ302G_1では、初段には3つの2入力セレクタ502V_1,502V_2,502V_3(各CN数=2、各TR数=4)を配置し、それらの出力を受ける3入力サブセレクタ302D(CN数=3×2、TR数=3×2)を2段目に配置している。1段目の2入力セレクタ502V_1,502V_2,502V_3には、サブセレクト信号SUBSEL_A, XSUBSEL_Aを共通に供給する。2入力セレクタ502V_1により入力1と入力2の内の片方が選択され、2入力セレクタ502V_2により入力3と入力4のうちの片方が選択され、2入力セレクタ502V_3により入力5と入力6のうちの片方が選択される。そして、3つの2入力セレクタ502V_1,502V_2,502V_3で選択された3つの信号のうち1つが3入力サブセレクタ302Dにより選択される。
このような仕組みの6入力サブセレクタ302G_1では、トランジスタ数は4×3+3×2=18で、制御配線数は2+3×2=8となる。一方、このような仕組みを採らずに単純に6入力型のサブセレクタ302を構成すると、トランジスタ数は6×2=12で、制御配線数は6×2=12となる。6入力サブセレクタ302G_1では、トランジスタ数が多くなるものの、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
図11A(2)に示した第2例の6入力サブセレクタ302G_2では、初段には2個の3入力サブセレクタ302D_1,302D_2(各CN数=3×2、各TR数=3×2)を配置し、それらの出力を受ける2入力セレクタ502V(CN数=2、TR数=4)を2段目に配置している。1段目の3入力サブセレクタ302D_1,302D_2には、サブセレクト信号SUBSEL<0>, XSUBSEL<0>,SUBSEL<1>, XSUBSEL<1>、SUBSEL<2>, XSUBSEL<2>を共通に供給する。3入力サブセレクタ302D_1により入力1,入力2,入力3の内の1つが選択され、3入力サブセレクタ302D_2により入力4,入力5,入力6の内の1つが選択される。そして、2個の3入力サブセレクタ302D_1,302D_2で選択された2個の信号のうち1つが2入力セレクタ502Vにより選択される。
このような仕組みの6入力サブセレクタ302G_2では、トランジスタ数は2×3×2+4=16で、制御配線数は2×3+2=8となる。第1例の6入力サブセレクタ302G_1よりもトランジスタ数を削減できる利点がある。
図11Bは、3入力サブセレクタ302Dを2段の階層化にすることで9入力サブセレクタ302Hを構成したものである。9を素因数分解すると「3×3」となるので、9入力対応とするための各段の配置の仕方としては、「3入力→3入力」の1通りなる。初段には3つの3入力サブセレクタ302D_1,302D_2,302D_3(各CN数=3×2、各TR数=3×2)を配置し、それらの出力を受ける3入力サブセレクタ302D_4(CN数=3×2、TR数=3×2)を2段目に配置している。1段目の3入力サブセレクタ302D_1,302D_2,302D_3には、サブセレクト信号SUBSEL<10>, XSUBSEL<10>,SUBSEL<11>, XSUBSEL<11>,SUBSEL<12>, XSUBSEL<12>を共通に供給する。3入力サブセレクタ302D_1により入力1,入力2,入力3の内の1つが選択され、3入力サブセレクタ302D_2により入力4,入力5,入力6の内の1つが選択され、3入力サブセレクタ302D_3により入力7,入力8,入力9の内の1つが選択される。そして、3つの3入力サブセレクタ302D_1,302D_2,302D_3で選択された3つの信号のうち1つが3入力サブセレクタ302D_4により選択される。
このような仕組みの9入力サブセレクタ302Hでは、トランジスタ数は4×3×2=24で、制御配線数は2×3+2×3=12となる。一方、このような仕組みを採らずに単純に9入力型のサブセレクタ302を構成すると、トランジスタ数は9×2=18で、制御配線数は9×2=18となる。9入力サブセレクタ302Hでは、トランジスタ数が多くなるものの、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
図11Cは、2入力セレクタ502Vと3入力サブセレクタ302Dを3段の階層化にすることで12入力サブセレクタ302Iを構成したものである。12を素因数分解すると「2×2×3」となるので、各段の配置の仕方としては、「2入力→2入力→3入力」,「2入力→3入力→2入力」,「3入力→2入力→2入力」の3通りが考えられる。「2入力→2入力→3入力」の構成は、「2入力→2入力」で構成した前述の4入力サブセレクタ302Fの出力にさらに3入力サブセレクタ302Dを配置した構成となる。「2入力→3入力→2入力」,「3入力→2入力→2入力」の構成は、「2入力→3入力」もしくは「3入力→2入力」で構成した前述の6入力サブセレクタ302Gの出力にさらに2入力セレクタ502Vを配置した構成となる。
図11Cに示す12入力サブセレクタ302Iは、2個の6入力サブセレクタ302G_2a,302G_2b(各CN数=8、各TR数=16)の出力にさらに2入力セレクタ502V(CN数=2、各TR数=4)を配置した構成である。このような仕組みの12入力サブセレクタ302Iでは、トランジスタ数は16×2+4=36で、制御配線数は8+2=10となる。一方、このような仕組みを採らずに単純に12入力型のサブセレクタ302を構成すると、トランジスタ数は12×2=24で、制御配線数は12×2=24となる。12入力サブセレクタ302Iでは、トランジスタ数が多くなるものの、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
なお、段数を過度に多くするとサブセレクタ302内での直列トランジスタ数(特にpMOSの直列数)が多くなり、データを水平信号線18に高速で伝達することが困難になるので得策ではない。サブセレクタ302を構成するトランジスタ数や通信・タイミング制御部20からの制御配線数をも加味すれば、2〜3段程度が現実的と考えられる。
<水平データ転送系;第7実施形態>
図12は、固体撮像装置1の水平データ転送系の第7実施形態を説明する図である。第7実施形態は、サブセレクタ302の入力数Mが素数である場合に、適当な数値αを加算して“M+α=M_1×M_2×M_3×…”のように素数M_k(kは1以上の正の整数)の掛算の形に素因数分解して、M_k入力−1出力型のサブセレクタを階層化(多段構成に)するものである。Mに適当な数値αを加算する点を除いて、第6実施形態と同様である。
たとえば、図12は、入力数Mが5の5入力サブセレクタ302Jを構成する場合に、α=1を加算して6入力型にし、図11Aに示した構成をベースにしつつ、その内のα=1の分を未使用にする例である。図12(1)に示した第1例の5入力サブセレクタ302J_1では、図11A(1)に示した第1例の6入力サブセレクタ302G_1をベースにして、初段の2入力セレクタ502V_3を取り外して2段目の3入力サブセレクタ302Dの3番目の入力端に入力4を直接に入力している。α=1の分として2入力セレクタ502V_3を未使用にする例である。図12(2)に示した第2例の5入力サブセレクタ302J_2では、図11A(2)に示した第2例の6入力サブセレクタ302G_2をベースにして、初段の3入力サブセレクタ302D_2の3番目の入力端を未使用にしている。α=1の分として3入力サブセレクタ302D_2の1つの入力端を未使用にする例である。この3入力サブセレクタ302D_2を2入力セレクタ502Vに置き換えてもよい。
5入力サブセレクタ302J_1では、6入力サブセレクタ302G_1と同様にトランジスタ数は9×2=18で、制御配線数は2+2×3=8となる。5入力サブセレクタ302J_2では、6入力サブセレクタ302G_2と同様にトランジスタ数は8×2=16で、制御配線数は2×3+2=8となる。このような仕組みを採らずに単純に5入力型のサブセレクタ302を構成すると、トランジスタ数は5×2=10で、制御配線数は5×2=10となる。5入力サブセレクタ302J_1,302J_2では、通信・タイミング制御部20からの制御配線数を少なくできる利点がある。
以上、本発明について実施形態を用いて説明したが、本発明の技術的範囲は前記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で前記実施形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
また、前記の実施形態は、クレーム(請求項)にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
前記実施形態では、固体撮像装置1の水平転送系への適用例で説明したが、前記実施形態の適用範囲は固体撮像装置に限らない。データを順次後段側に転送する仕組みを持つ半導体装置であれば、どのようなものにも適用できる。1次元または2次元に配列されたラッチから特定のラッチが選択され、ラッチの情報が転送配線に転送され、転送配線のデータが外部に読み出される半導体装置であればよい。たとえば、SRAM(Static RAM)やDRAM(Dynamic RAM )などの半導体メモリへも適用できる。
なお、固体撮像装置はワンチップとして形成された形態であってもよいし、撮像部と、信号処理部または光学系とが纏めてパッケージングされた、撮像機能を有するモジュール状の形態であってもよい。また、固体撮像装置のみではなく、撮像装置やその他のあらゆる電子機器にも適用可能である。この場合、撮像装置やその他の電子機器として、固体撮像装置と同様の効果が得られる。ここで撮像装置は、たとえば、カメラ(あるいはカメラシステム)や撮像機能を有する携帯機器のことを示す。また「撮像」は、通常のカメラ撮影時の像の撮り込みだけではなく、広義の意味として、指紋検出なども含むものである。
1…固体撮像装置、10…画素アレイ部、12…水平走査部、14…垂直走査部、18…水平信号線、19…垂直信号線、20…通信・タイミング制御部(選択制御部)、24…読出電流制御部、250…AD変換部、252…比較部、254…カウンタ部、256…データ記憶部、257…ラッチ(データ保持回路)、26…カラムAD変換部、27…参照信号生成部、270…DA変換部、28…出力部、3…単位画素、301…セレクタ部(選択部)、302…サブセレクタ(信号選択部)、307…ドライバ部(駆動部)、308…水平転送ドライバ(転送駆動部)、331…インバータ、332,334…転送用トランジスタ、336,338…選択トランジスタ、502V…2入力セレクタ、7…駆動制御部