(58)【調査した分野】(Int.Cl.,DB名)
前記TDCアレイ回路に動作可能に接続されたコントローラを更に備え、前記コントローラは、前記TDCアレイ回路に対するクロック信号を生成するように構成されている、請求項4に記載のSPAD検出器。
前記メモリは複数の不均一ヒストグラムを記憶するように構成されており、各不均一ヒストグラムは、各セクションの各行における各スキャンされた画素に対応付けられる、請求項6に記載のSPAD検出器。
各撮像画素に動作可能に接続された各TDC回路は、前記撮像画素に対して複数のTDC出力値を出力し、前記複数のTDC出力値は、前記撮像画素の検出時間にわたって不均一に増加する、請求項9に記載のSPAD検出器。
前記クエンチトランジスタと前記ゲートトランジスタとの間に動作可能に接続された選択トランジスタを更に備え、前記選択トランジスタのゲートと前記ゲートトランジスタのゲートとは共通の入力ラインに接続されている、請求項14の画素。
【発明を実施するための形態】
【0012】
添付の図でのクロスハッチング又はシェーディングの使用は、概して、隣り合う要素間の境界を明らかにし、図の視認性も促進するためにも提供される。したがって、クロスハッチング又はシェーディングの存在も不在も、添付の図に示される任意の要素に関する特定の材料、材料特性、要素の割合、要素の寸法、同様に図示されている要素の共通点、又は任意の他の特質、属性、若しくは特性についてのいかなる選好又は要件も伝達又は指示するものではない。
【0013】
追加的に、種々の特徴及び要素(並びにそれらの集合及び群)の(相対的であれ絶対的であれ)割合及び寸法、並びにそれらの間に提示される境界、分離点及び位置関係は、単に本明細書に述べられる種々の実施形態の理解を容易にするために添付の図に提供されるものであり、したがって必ずしも一定の縮尺で提示又は図示されていない場合があり、図示される実施形態についての任意の選好又は要件を、それを参照して述べられる実施形態を除外して示す意図はないことを理解されたい。
【0014】
ここで、添付図面に図示される代表的な実施形態が詳細に説明される。以下の説明は、これらの実施形態を1つの好ましい実施形態に限定することを意図するものではないことを理解されたい。反対に、以下の説明は、添付の特許請求の範囲により画定される記載された実施形態の趣旨及び範囲に含むことができるような、代替形態、修正形態及び均等物を包含することを意図している。
【0015】
以下の開示内容は、SPAD検出器、すなわち単一光子アバランシェダイオード(SPAD)を用いる光検出器に関する。SPAD検出器にはSPAD画素のアレイが含まれる。各SPAD画素(以下に単に「画素」)にはSPADが含まれる。各画素にはまた、付随するバイアシング及び/又は制御回路要素、例えば、SPADに動作可能に接続されたクエンチトランジスタ、及びSPADに動作可能に接続されたゲートトランジスタのうちの1つ以上が含まれていてもよい。種々の実施形態に対して更なる回路素子について後述する。
【0016】
SPAD検出器を、視野(FOV)内の物体までの距離を決定するための撮像又は測距システムの一部として用いることができる。多くのこのような距離決定において、光源からFOVに一連の光パルスが放出される。光源には、例えば1つ以上のレーザが含まれていてもよい。光源はSPAD検出器のコンポーネントであってもよいし、又はSPAD検出器と動作可能にリンクされていてもよい。放出光パルスは典型的に短い時間を有し、その後に光源がオフであるより長い時間が存在する。SPAD検出器は、FOV内の物体からの放出光パルスの反射を検出するために使用される。放出光パルスの開始間の時間はパルス繰り返し間隔(PRI)である。光パルスの放出と反射光子の検出との間の飛行時間(TOF)を測定することによって、物体までの距離を決定することができる。
【0017】
SPAD検出器を用いて距離決定を行うときに生じる種々の問題点が存在する。撮像アレイ内の何らかの特定の画素が、各反射パルスの1つ又は少数の反射光子のみを検出することであり得る。更に、画素内の特定のSPADが周辺光からの光子を受信して、物体までの距離とは関係のない出力信号を一度に生成し得ることである。また、前述したように、反射光パルスの中の光子を、SPADによって、反射パルスがSPAD検出器に衝突する任意の時点に検出することができるため、反射光子をSPADが検出する時間は、反射光パルスのピークに正確に一致しなくてもよい。次に、近くの物体から反射された光子は、対象とする物体には由来しない場合がある。
【0018】
このような問題点を考慮して、複数のPRIにわたる複数の受信光子のTOFを画素に対して取得する。次にTOF値の分布における検出ピークを、対象物体から反射された光子の実際のTOFとして採用することができる。このようなTOFに対する統計的測定を、画素に対して複数のPRIにわたって記録したTOF値のヒストグラムによって実施することができる。このようなヒストグラムの各ビンはPRIの特定の時間部分間隔を表しており、各ビンは、すべてのPRI上でその時間部分間隔の間にSPADで受信した光子のカウントを、言い換えると、その時間部分間隔内に飛行時間を有する光子のカウントを記憶することができる。また各ビンは、物体までの距離の範囲を効果的に表す。より小さい時間部分間隔に対応付けられるビンは、距離決定のより微細な分解能を示す。
【0019】
前述したように、異なる距離にある物体によって、反射光光子の検出に対して相反する問題点が生じ得る。SPAD検出器から遠い物体の場合、検出可能な反射光子が少数だけ生成されるが、近い物体の場合、反射光子が十分に生成されて画素を飽和させ、TOF推定における偏りとなる場合がある。結果として、SPADの感度を変えること(例えば、その逆偏りを調整することにより)によって、遠い物体までの距離の推定は改善されるが、近い物体までの推定距離の精度は下がる場合がある。
【0020】
前述及び他の問題に対処するためにSPAD検出器内の画素アレイの1つ以上のセクションの感度をある時間にわたって変えるための種々の技術が開示されている。SPAD検出器内の画素アレイ全体の感度を変調してもよいし、又は画素アレイのあるセクションの感度を画素アレイの別のセクションとは異なる仕方で変調することができる。1つの非限定的な例では、画素アレイは、放出器(例えば、レーザ)によって放出され光であって、SPAD検出器から第1の距離(例えば、SPAD検出器により近い)に位置する物体(例えば、ターゲット)から反射した光に対する第1の感度と、放出器によって放出された光であって、SPAD検出器から第2の距離(例えば、SPAD検出器からより遠い)に配置された物体から反射された光に対するより高い第2の感度とを有することができる。
【0021】
ある特定の実施形態では、少なくともいくつかのSPADに対して構成されるヒストグラムは不均一ヒストグラムである。このようなSPADの感度は、ヒストグラムを不均一ヒストグラムとして構成することによって変調又は調整することができる。語句「不均一ヒストグラム」は、ビンが表すPRIの時間部分間隔が異なる時間分を有するヒストグラムを指す。(これは、たとえ異なる幅を有するのがビンの対応する時間部分間隔であったとしても、異なる幅をビンが有すると言うことで表現する)。例えば、ヒストグラムは、第1の幅を有する第1の組のビン(各幅はTOF値の範囲を表す)と、第2の幅を有する第2の組のビン(各幅はTOF値の別の異なる範囲を表す)とを含むことができる。この例を続けて、第1の組のビン内の各ビンは2ナノ秒の時間を表すことができ、第2の組のビン内の各ビンは4ナノ秒の時間を表し得る。まとめると、すべてのビンは、対象となり得る最小TOFと最大TOFとの間の時間スパンをカバーする。時間スパンはPRI全体に、又はその一セクションにまで及び得る。例えば、後述するように、各PRIの開始時の最初の時間間隔の間に、SPADを無効にしてわずかな光子も検出しないようにしてもよい。その後、後続の時間間隔で検出された光子は、ヒストグラムの第1のビンに蓄積される光子カウントが増加する。更に他の実施形態では、ビンはPRIの2つ以上の別個の部分間隔を表すように選択されてもよい。ビンの各組には1つ以上のビンが含まれていてもよい。各組におけるビンの一部又は全部が互いに当接してもよいし、又はヒストグラムの全体にわたって分布していてもよい。
【0022】
種々のビン幅によって、SPAD検出器に異なる感度が与えられる。例えば、第1の組のビンにおけるビンの幅を第2の組のビンにおけるビンの幅より狭くすることができる。それに応じて、第1の組のビンは微細な感度又は分解能を有すると考え、第2の組のビンは粗い感度を有すると考えることができる。第1の組のビンを用いて、SPAD検出器により近いシーン内の物体(例えば、近接ターゲット)から反射される光子を検出してもよい。粗い感度を用いて、SPAD検出器からより遠いシーン内の物体(例えば、遠方ターゲット)から反射される光子を検出することができる。
【0023】
別の実施形態では、SPADの再充電時間を変えることによってSPAD検出器の感度を変調することができる。詳細には、SPADに接続されたクエンチトランジスタが受信する1つ以上の信号を調整することによって、再充電時間を変更することができる。例えば、一実施形態では、クエンチトランジスタのゲートに印加するゲート信号を、ゲートを2つ以上のゲート信号のうちの1つに選択的に接続することによって変えてもよい。各ゲート信号は、異なる再充電時間をもたらす。例えば、あるゲート信号は、より遅い再充電時間を生成することができ、一方で、別のゲート信号は、より速い再充電時間となり得る。再充電時間が遅いと、再充電過渡事象の先頭セグメントがSPADの第1の感度によって特徴付けられる感度変調になる可能性がある。第1の感度は、再充電過渡事象の後端セグメントに付随するSPADの第2の感度と比べて低い。再充電時間が速いと、SPADは最高感度を有する一方で、公称上の(最短)不感時間性能を示すことになり得る。
【0024】
それに加えて又はその代わりに、クエンチトランジスタの端子に接続される電圧源を変えることによって再充電時間を変更してもよい。電圧源から受信する信号の波形は、任意の所与の形状を有することができる。波形は最初に増加してから、定常状態値に落ち着いてもよい。例えば、波形には、SPADの感度を直線的に増加させる直線的増加部を含めることができる。ある時点で、波形は一定値に移行して、SPADの感度を特定の感度(例えば、最大感度)に維持してもよい。
【0025】
これら及び他の実施形態は、
図1〜
図22を参照して以下に説明する。しかしながら、当業者であれば、これらの図に関して本明細書に与えられた発明を実施するための形態は説明の目的のためのものに過ぎず、限定するものとして解釈されるべきではないことを容易に理解するであろう。
【0026】
図1に例示するのは、1つ以上のSPAD検出器を含むシステム100の一例である。各SPAD検出器には画素のアレイが含まれる。システム100には放出器102及びSPAD検出器104が含まれ、SPAD検出器104は物体又はターゲット106と関連付けて配置される。放出器102及びSPAD検出器は単一ユニットであってもよい。
図1に示すシステムでは、放出器102及びSPAD検出器104はそれぞれ、1つ以上の放出器及びSPAD検出器をそれぞれ表してもよい。放出器102はターゲット106に向けて又は視野内に光を放出する位置にあり、SPAD検出器104は、シーン及び/又はターゲット106から反射された光を検出する位置にある。
【0027】
処理デバイス108は、エミッタ102とSPAD検出器104とに動作可能に接続されている。処理デバイス108によって、放出器102はターゲット106に向けて光を放出する(放出光を矢印110で表す)。ターゲット106及び/又はシーンから反射された光を、SPAD検出器104が検出してもよい(反射光を矢印112で表す)。処理デバイス108は出力信号をSPAD検出器104から受信するか、又は調整された出力信号を介在する信号処理コンポーネント(図示せず)から受信する。処理デバイス108は反射光、ターゲット106、及び/又はシーンに付随する1つ以上の特性を決定するために出力信号を処理する。システム100に対して説明した特定のコンポーネント及び動作は典型である。他の実施形態では、説明した動作をコンポーネント間に異なる仕方で分配してもよい。
【0028】
システム100を、視野(FOV)をスキャンする電子デバイス(例えば、携帯電話内のカメラ)の一部として用いてもよい。スキャニングシステムでは、FOV内に光が放出されて、放出光の反射からFOV内の物体又はターゲットについての情報が求まる。スキャニングシステムは、複数の放出器から複数の方向に光を放出してもよいし、又はFOVの一部若しくは全部にわたって1つ以上の方向に光(例えばレーザからの)を掃引してもよい。スキャニングシステムは、複数の掃引光放出器を用いてもよい。掃引光放出器はFOVを異なる方向又はパターンで掃引してもよい。
【0029】
代替的に、システム100は、FOVの照明がスキャンされずに、むしろ例えば1つ又は複数の放出器によって固定方向に照明される電子デバイスの一部であってもよい。このようなシステム(例えば、固定パターンシステム)では、1つ又は複数の光パルスを放出してもよく(例えば、複数の同時に放出されたパルス)、各放出を1つ以上の方向に送るか又は分配してもよい。例えば、顔認識システムでは、第1の組の同時放出に対して複数の方向を選択してもよい。そして種々の反射パルスを用いてユーザの顕著な顔特徴を検出してもよい。第2の組の放出に対して、方向を再選択して変えてもよい。
【0030】
いくつかの実施形態では、ラインスキャンシステムにおいてSPAD検出器が用いられる。
図2に示すのは、環境202内に配置されたSPAD検出器を用いるラインスキャンシステム200の一例である。この説明では以後、ラインスキャンシステム200とともに用いる実施形態について説明するが、当業者であれば、他のスキャニングシステム(例えば、固定パターンシステム)とともに実施形態をどのように用いることができるかを理解するであろう。ラインスキャンシステム200には、放出器204及びSPAD検出器206が含まれる。放出器204は、ある時間にわたって光パルス218を繰り返して放出するように動作させてもよい。各放出光パルス間の時間はパルス繰り返し間隔(PRI)として知られている。
【0031】
まとめて、光パルス218を、本明細書では放出光ビーム、又は単に光ビーム210と言う。光ビーム210は、任意の所与の時点において、意図する照明領域、体積、又は放出パターンを有していてもよい。光ビーム210は、視野(FOV)212のセクション214(例えば、ライン)のみが一度に照明されるように、視野(FOV)212の方に向けられるか又は方向づけられている。FOV検出時間の間にFOV212をセクションごとにスキャンする。FOV検出時間は、FOV212の選択部分をスキャンするのに必要な時間である。
【0032】
デバイスに戻る光(例えば、FOV212内のターゲット及び/又はシーンからの反射を経由して)はレンズ216によって受信され、光はレンズによってSPAD検出器206上に送られる。放出光ビーム210は一連の光パルス218であるため、反射光は一連の光パルスから構成される。後により詳細に説明するように、SPAD検出器206内の画素のセクションは、一連のラインスキャン動作を通して反射光パルスを検出する。各スキャン動作には、複数の光パルスの放出とアレイの選択画素による反射光子の検出とが伴う。各ラインスキャン動作は、画素アレイのセクション内の画素をスキャンするか又は読み取る(例えば、2又は3列を一度に)。画素を読み取ることには、画素のSPADによって生成された出力信号を受信することと、可能性として、出力信号の増幅又は他のコンディショニングを行うこととを伴う可能性がある。画素のあるセクションに対するラインスキャン動作が完了すると、画素の別のセクションがスキャンされる。一実施形態では、画素の次のセクションには、以前のラインスキャン動作における画素の一部が含まれる。別の実施形態では、画素の次のセクションには、以前のラインスキャン動作における画素とは異なる画素が含まれる。このプロセスを、アレイの選択した画素のサブセット内の画素がすべてスキャンされるまで繰り返す。
【0033】
一実施形態では、ビームステアリング要素208(例えば、ミラー)が放出器204の光路内に位置して、放出器204によって放出された光ビーム210をFOV212の方に向ける。ビームステアリング要素208は、FOV212のセクション214のみが一度に照明されるように光ビーム210の伝搬角度及び経路を制御するように構成されている。
【0034】
他の実施形態では、光ビーム210を異なる仕方で操作することができる。例えば、放出器204には、FOV212の異なるセクションに向けてそれぞれ光を放出する複数の放出器を含めることができる。更なる及び/又は他の実施形態では、放出器を動かすか又は回転させて、FOV212の異なるセクションに向けて光を放出してもよい。
【0035】
図3に示すのは、SPADシステム内の放出器及びSPAD検出器の拡大図である。例示した実施形態では、放出器300及びSPAD検出器302は共通の基材又は支持構造物304上に配置されているが、これは必須ではない。他の実施形態では、放出器300及びSPAD検出器302を別個の基材上に配置してもよい。
【0036】
放出器300は、レーザ又は他の好適な光源であって所与の時間にわたってターゲット又はFOVに向けて光306を放出するものである。いくつかの実施形態では、例えばラインスキャンシステム200では、放出器300は、FOV検出時間、すなわち、FOV内の物体を検出して、その距離を決定するためにシステムによって割り当てられた時間間隔中に光パルス(例えば、
図2の光パルス218)を繰り返して放出する。放出光パルスの光子によって生成される波形は、全般的に実質的に集中した形状、例えば、対称的なベル曲線形状(例えば、ガウシアン形状)を有しているが、このような形状は必須ではない。ターゲット308がSPAD検出器302から十分に遠いときは、実質的に歪みのない透過光パルスの波形に対応する反射波形が、SPADで受信されるか又はSPADに衝突する。受信波形は、SPAD検出器302に衝突する反射光パルス内の光子の数を表す。後に更に説明するように、画素アレイの各SPADが、SPAD検出器302に衝突する各反射光パルスの光子を限られた数を超えて受信して検出する(すなわち、アバランシェ内に送られる)ことはありそうにない。
【0037】
図4に歪みのない反射波形400の例を示す。透過光パルスの波形がガウシアン形状であるとき、SPAD検出器302に衝突する反射波形400の形状も実質的にガウシアンである。これを用いて、TOF(点402)を実質的に正確に測定することができる。TOFは、光パルスを放出する放出器と反射光パルス内の光子を検出するSPAD検出器との間で経過した時間の測定値である。反射波形400は、SPAD検出器302に衝突する反射光パルス内の光子の数を時間の関数として表す。TOFは理想的には、放出されたガウシアン形状のピークから反射波形400の最大振幅の到着までの時間として推定することができる。
【0038】
しかし、アレイ内の任意の特定のSPAD画素に対して、それぞれ、アレイに衝突する反射光パルスを受信したときに、典型的に少数の光子のみが検出される。これに対する1つの理由は、個々のSPADが、光子によってアバランシェ電流出力が発生した後に充電復帰時間を有することである。充電復帰時間の間、SPADは他の到着光子を検出する(すなわち、アバランシェになる)ことができない。しかし、1つの反射光パルスの間に検出される光子に対しては、飛行時間の決定を、例えばシステムクロックを用いて、光パルスの放出からアバランシェ出力の時間までの経過時間を測定することによって行うことができる。複数のPRIにわたってこのようなTOF測定を行うことによって、特定のSPADにおけるTOF値の分布は、個々の反射波形400に対応する波形を形成することが可能である。
【0039】
図3を再び参照して、ターゲット312がSPAD検出器302に近いか又はターゲットが高反射率を有するときは(例えば、ミラー)、反射光314の中の光子は、ターゲット308から受信した光子と比べてSPAD検出器302により早く衝突する。反射光314の中の光子は、SPAD検出器302内の1つ以上のSPADを飽和させることができる。ターゲットが近い場合、特定のSPADにおける検出光子は、受信した反射波形の最初の部分に由来する可能性がより高いため、受信した反射波形のピークに基づくTOFよりも短いTOFを用いて測定される。複数のPRIにわたって、特定のSPADに対する結果は、正味の受信波形が歪んだものである。歪んだ波形のピークを用いると、TOF決定が不正確になる可能性がある。
【0040】
より詳細には、SPAD内のアバランシェをトリガすることによって光子を検出した後に、SPADは回復又は不感時間に入り、その間SPADは他の入射光子に対して検出も応答もしない。典型的には、不感時間は10〜100ナノ秒であり、これはその時間の間、SPADには以後の光子が「見えない」ことを意味する。その結果、SPADが光子を検出する確率は、レーザパルスの後端部分と比べたときにレーザパルスの先頭部分において(例えば、SPADが反射光を受信し始めるときに)より高い。この確率の差により、受信波形は歪んで狭くなる。SPAD検出器から遠い物体から反射される光子に対して同じ歪みが生じる可能性があるが、特定のSPADが任意の一つの反射パルス内の任意の光子を検出する確率が低いということは、複数のPRI上で、特定のSPADは、先頭部分の光子に向かってよりすくない偏りで光子を検出することができることを意味する。SPADから遠い物体に対しては、何らかの残存する歪み又は偏りによって物体までの推定距離に生じる相対誤差は小さい。
【0041】
図4に歪んだ受信波形404の例を示す。歪んだ受信波形404は時間的にずれてゼロに近くなる。更に、歪んだ波形の形状はガウシアンが狭く小さくなったものである。それに応じて、TOF内に偏り誤差406が持ち込まれて、TOFは不正確でより早いTOF408にずれる。全般的に、より早いTOF408は、SPAD検出器302とターゲット312との間の距離がSPAD検出器302とターゲット312との間の実際の距離よりも短いことを示す。
【0042】
SPADシステム内で内部反射が生じてもTOF決定に影響する可能性がある。典型的に、カバー層316(
図3)が放出器300及びSPAD検出器302上に配置される。カバー層316は任意の好適な材料(例えば、ガラス及びプラスチック)で形成してもよい。光306がカバー層316を通って伝搬するとき、光306の一部が、カバー層316から反射してカバー反射光318になる場合があり、システムの光学設計に応じて、SPAD検出器302に到達する場合がある。カバー反射光318内の光子をSPAD検出器302内の1つ以上のSPADによって検出することができ、その結果、SPADは不感時間に入る。それに応じて、状況によっては、物体から反射された反射光310、314の中の光子をSPADが検出しない。なぜならば、SPADは、カバー層316から反射したカバー反射光318の中の光子を検出することによって生じる不感時間にあるからである。
【0043】
前述した物体に対する近/遠距離決定の問題は、画素アレイ内の個々のSPAD又はそれらのセクションの感度を適応させることによって対処することができる。本明細書では、ある時間にわたってSPAD検出器の1つ以上のセクションの感度を変調するための種々の技術を開示している。SPAD検出器には画素アレイが含まれており、各画素にはSPAD、SPADに動作可能に接続されたクエンチトランジスタ、SPADに動作可能に接続されたゲートトランジスタが含まれている。SPAD検出器内の画素アレイ全体の感度を変調してもよいし、又は画素アレイのあるセクションの感度を画素アレイの別のセクションとは異なる仕方で変調することができる。一実施形態では、SPAD検出器により近い物体から光が反射し得る時間の間に、SPADの感度をより低くすることができる。逆に、SPAD検出器からより遠い物体から光が反射し得る時間の間に、SPADの感度は、より高くても(例えば最大であっても)よい。いくつかの実施形態では、個々のSPADに対する電気入力(例えば、バイアシング電圧)を必ずしも調整することなく、TOFを決定するための不均一ヒストグラムを用いることによって、感度を実現してもよい。
【0044】
図5に例示するのは、ラインスキャン動作の間にSPAD検出器を動作させる方法例のフローチャートである。前述したように、当業者であれば、本方法をFOVの他のタイプのスキャニング動作とともに使用できることが分かる。本方法を1つの画素内のSPADと関連させて説明する。当業者であれば分かるように、本方法は複数の画素内のSPADとともに同時に又は連続して用いることができる。すなわち、反射光パルスが受信されるか又は受信が予想される画素に対して本方法を適用することができる。前述したように、画素アレイ内の画素をセクションごとにスキャンするか又は読み取る。ラインスキャン動作は、画素アレイの1つのセクション(例えば、2又は3列の画素)のスキャニングに対応する。
【0045】
最初は、ブロック500に示すように、SPADの動作を無効にする。SPADは少なくとも3つの状態のうちの1つであり得る。SPADセクションが有効になっている「有効」又は「アクティブ化」状態は、任意の受信光子がアバランシェ出力信号をトリガできるように十分に逆バイアスされている。アイドル状態とは、画素のコンポーネントに電力が供給されるが、SPADに衝突する光子が出力信号をトリガできる程ではない状態、及び電力供給されない状態(例えば、SPADに逆バイアスが印加されていない)。無効にされる状態には、アイドル状態及び電力供給されない状態の両方が含まれる。SPADの動作を無効にするか又はゲートするための技術例については、
図9と関連させてより詳細に説明する。
【0046】
次にブロック502において、SPADを有効にすべきか否かを例えば処理デバイス108によって判定する。望ましくない及び/又は重要でないと考えられるデータが終了した時間の後にSPADを有効にしてもよい。例えば、カバー層反射時間が終了した後にSPADを有効にしてもよい。一実施形態では、SPADが無効にされる時間の間に、1つ以上の別個の参照SPAD(すなわち、
図6に関連して以下に規定する参照画素のSPAD)を用いてヒストグラムを構成する。ヒストグラムを用いて、SPADを有効にすべき時間を決定する。ヒストグラムは、後述するブロック506で構成されTOFを決定するために用いられる、不均一ヒストグラムから別個及び独立に構成される均一又は不均一ヒストグラムとすることができる。別の態様では、SPADを有効にする決定は、反射光パルスの予想又は推測される場所に基づいて行う。例えば、ラインスキャン動作では、放出光パルスの方向をシステムが知っていることに基づいて、アレイの特定の行内の画素のみを有効にしてもよい。
【0047】
別の実施形態では、光がカバー層から反射される時間を、SPAD検出器とカバー層との間の距離に基づいて選択してもよい。この時間をカバー層反射時間と言う。SPADの動作は、カバー層反射時間の間に無効にすることができ、カバー層反射時間が終了した後に有効にすることができる。また更なる実施形態では、SPADを無効にする時間がカバー層反射時間だけより長くてもよい。これは、SPAD検出器を用いるシステムまでの特定の距離内の物体又はターゲットを距離決定から除くことが望ましい場合に行ってもよい。
【0048】
図5に戻って、本方法は、ブロック502において、カバー層反射時間が終了したか否かを待つ。カバー層反射時間(又はその後の延長時間)が過ぎたら、プロセスはブロック504に続いて、ターゲット及び/又はシーンから反射された光の中の光子を検出するためにSPADの動作を有効にする。ブロック506において、SPADは、光子を検出して、不均一ヒストグラムが構成される。パルス間でSPADは、無効にされてもよいし、されなくてもよいが、パルス間で無効にすることは、節電及び内部/近物体の反射の影響を減らすことにとって好ましい場合がある。不均一ヒストグラム例については、
図8と関連させてより詳細に説明する。場合によっては、不均一ヒストグラムは、画素あたりに構成されてもよい。別の場合では、不均一ヒストグラムは、超画素(例えば、画素の組)に対して構成されてもよい。
【0049】
次にブロック508において、ラインスキャン動作が終了したか否かについて判定する。そうでない場合は、本方法はブロック500に戻る。ラインスキャン動作が終了すると、プロセスはブロック510に移って、ラインスキャン動作が最後のラインスキャン動作であった(例えば、画素アレイ内のすべてのSPADがスキャンされた)か否かを判定する。ラインスキャン動作が最後のラインスキャン動作でない場合、プロセスはブロック512に続いて、SPADを無効にし、次のラインスキャン動作を行う。次のラインスキャン動作は、ブロック504で有効にされたSPADを含んでいてもよいし、又は異なるSPADを含むことができる。ラインスキャン動作が最後のラインスキャン動作である場合、本方法はブロック514に移ってSPADが無効にされる。
【0050】
図6は、SPAD検出器のブロック図を示す。SPAD検出器600には、読み取り制御回路611に動作可能に接続された画素アレイ602が含まれている。読み取り制御回路611は、コントローラ610によって制御され、コントローラ610は、処理デバイス108の一部として、又は処理デバイス108に動作可能に接続された別個のコンポーネントとして実装されてもよい。いくつかの実施形態では、読み取り制御回路611は、行レベルアナログフロントエンド(AF)回路アレイ604、AF回路アレイ604に動作可能に接続された時間デジタル変換器(TDC)アレイ回路606、TDCアレイ回路606に動作可能に接続されたメモリ608のうちの一部又は全部を含んでいてもよい。いくつかの実施形態では、任意的なエンコーダ607が、TDCアレイ回路606とメモリ608との間に動作可能に接続されてもよい。
【0051】
画素アレイ602には、参照サブアレイ612及び撮像サブアレイ614が含まれている。参照サブアレイ612は、画素616の行(参照画素と言う)として示され、撮像サブアレイ614のエッジに沿って配置されている。他の実施形態では、それぞれ1つ以上の参照画素を含む1つ以上の参照サブアレイを含めることができる。更に、1つ以上の参照サブアレイは、撮像サブアレイ614内の又は撮像サブアレイ614の周りの任意の所与の場所に配置されることができる。
【0052】
参照サブアレイ612内の参照画素616内のSPADは、カバー層から反射された光の中の光子を検出するために使用されてもよく、一方で、撮像サブアレイ614内の画素618(撮像画素と言う)内のSPADは、FOV(例えば、
図2のFOV212)から反射された光の中の光子を検出するために使用される。参照画素のSPADは、参照SPADと呼ばれ、撮像画素のSPADを撮像SPADと呼ばれる。PRIの開始時に、光子がカバー層から反射し得るとき、撮像サブアレイ614内の撮像画素618内のSPADを無効にする。参照サブアレイ612内の参照画素616内のSPADは、撮像画素618内のSPADを有効にされるべき時間を決定するために使用される。
【0053】
いくつかの実施形態では、参照サブアレイ612内の参照画素616内のSPADは、PRIの開始時に有効にされ、撮像画素618内のSPADが有効であるときに消費電力を減らすために無効にされる。代替的に、参照画素616は、参照画素及び撮像画素の両方として用いられてもよい。撮像画素618が有効にされたときに、参照画素616は、参照画素としての使用から撮像画素としての使用へと移行することができる。例えば、参照画素616内のSPADに付随する出力は、参照機能に付随する回路(例えば、参照機能に付随するTDC出力値)と撮像機能に付随する回路(例えば、
図10の状況での不均一な特性を伴うTDC出力値)との間で切り替えることができる。いくつかの例では、撮像画素を有効にする前に参照画素616を無効にすることを行わなくてもよく、参照及び撮像画素を両方とも有効にする間に多少の重複があってもよい。言い換えれば、所与のPRIの間に、撮像画素が有効にされる前に参照画素が有効にされてもよく、撮像画素が無効にされる前に参照画素が無効にされてもよい。
【0054】
ラインスキャンシステムにおいて、画素アレイ602は、スキャンごとの読み出しプロセスにおいて読み出すことができる。画素アレイ602はまた、移動照明源を用いたシステムにおいて、セクションごとに読み出すこともできる。言い換えれば、画素アレイ602の種々のセクション(例えば、2又は3列の画素)の撮像画素618内のSPADは、対応する時間に有効にされる。いくつかの実施形態では、読み出しがセクションごとに行われないように、スキャン動作内において個々の画素の複数の読み出しがあってもよい(例えば、個々のパルスベースの測定に対して)。一実施形態では、カバー層反射時間の間に、参照サブアレイ612内の参照画素616内のSPADのみが可能であり、ラインスキャン動作の間に、撮像サブアレイ614内の撮像画素618内のSPADのみが可能である。代替的に、参照画素616内のSPADは、カバー層反射時間の間、並びにラインスキャン動作の間に有効にされる。典型的な反射光ビーム620が、図示では、画素アレイ602に衝突していて、クロスハッチングを伴う画素は、反射光ビーム620の中の光子を検出するようにSPADが有効となっている画素を表す。
【0055】
有効なSPADを伴う画素は画素アレイ602内の画素のサブセットを構成する。有効なSPADを伴う画素は
図6の非直線配列で配列される。詳細には、画素アレイの2つの水平エッジ付近に配置された有効なSPADを伴う画素は、曲線状(又はずれているか、若しくはジグザグ配置された)パターンを形成して、レンズから受信した反射光ビーム620の形状を考慮する。有効なSPADを伴う画素の他の非直線配列としては以下を挙げてもよい。このような画素の区分的直線セクション、又は少なくとも1つの行が1つ以上の有効な画素の組を伴い、それらは1つ以上の列内にある(しかし、すべての列ではない)、又は隣接する行が有効な画素を伴い、それらの間に1つ以上のインアクティブ行が配置され得る、及び/又は有効な画素が同じ列内にある(列内の有効な画素は1つ以上のインアクティブ行によって分離される)。他の実施形態では、有効なSPADを伴う画素を直線配列で配列してもよく、例えば、隣接する行の組に渡って配列された画素であってもよい。これらの実施形態に対する変形において、隣接する行の特定の列内の画素を有効にしなくてもよい。当業者であれば分かるように、有効なSPADを伴う画素のパターンを任意の所与の配列に配列することができる。いくつかの例では、有効又はアクティブピクセルには、非連続画素又は画素組が含まれていてもよい(例えば、ラインスキャンシステムを用いないシステムにおいて)。
【0056】
AF回路アレイ604は、画素アレイ602に対して行レベルの信号読み出しを実行するように構成されている。AF回路アレイ604には、画素アレイ602内の各画素ライン(例えば、行)に対するN個のAF回路が含まれる。Nは、画素ライン内の任意の所与時間における有効なSPADの数を表す。したがって、
図6に示す実施形態では、AF回路アレイ604には各行に対して2つのAF回路が含まれている。他の実施形態では、各行に対するAF回路の数はN+Xであってもよく、Xは1つ以上の更なるAF回路を表す。一実施形態では、更なるAFによってSPAD検出器600を有効にして、同時に有効なSPADを伴う画素の数を選択的及び動的に調整することができる。
【0057】
TDCアレイ回路606は、画素アレイ602内の各画素ライン(例えば、行)に対するNTDC回路が含まれ、Nは、画素ライン内の任意の所与時間における有効なSPADの数を表す。したがって、
図6に示す実施形態では、TDCアレイ回路606は、各行に対して2つのTDC回路が含まれている。他の実施形態では、各行に対するTDC回路の数はN+Yであってもよく、Yは1つ以上の更なるTDC回路を表す。一実施形態では、更なるTDC回路によってSPAD検出器600を有効にして、同時に有効なSPADを伴う画素の数を選択的及び動的に調整することができる。
【0058】
TDC回路は、有効なSPADに衝突する光子の到着時刻を測定する。したがって、TDC出力値は、光子の到着時刻を表す。FOVのラインスキャンの間に、TDC出力値は、有効なSPADを伴う各画素に対するヒストグラム(又は「各有効なSPADに対するヒストグラム」)を構成するのに用いられる。
【0059】
任意的なエンコーダ607は、
図11A〜12と関連させてより詳細に説明される。一実施形態では、メモリ608は、画素アレイ602内の各画素ライン(例えば、行)に対するN個のヒストグラムメモリ内にN個のヒストグラムを記憶し、Nは、画素ライン内の任意の所与時間における有効なSPADの数を表す。他の実施形態では、各行に対するヒストグラムメモリの数はN+Zであってもよく、Zは1つ以上の更なるヒストグラムメモリを表す。
【0060】
本明細書で説明する実施形態では、各有効なSPADに対して不均一ヒストグラムを構成する。不均一ヒストグラムについては、
図8と関連させてより詳細に説明する。
【0061】
コントローラ610はTDCアレイ回路606に対するタイミング信号を生成する。任意の好適なコントローラが用いられる。例えば、コントローラ610には、参照タイミング信号を生成する補助回路(例えば、フェーズロックドループ回路又は遅延ロックループ回路)が含まれていてもよい。
【0062】
全般的に、有効なSPADに対するヒストグラムは複数のビンによって構成されて、各ビンは放出器の各PRI内の所与の時間又は時間スパンを表す。ビン時間スパンの和はPRIに等しい。代替的に、ビン時間スパンの和はPRIの選択間隔(PRIの最初及び最後の部分間隔を除いたときなど)に等しい。均一ヒストグラムでは、各ビンが表す時間スパンは同じ時間長さである。したがって、ビンの「幅」又は時間スパンはヒストグラムにわたって不変である。ヒストグラムの各ビンは、それが表す時間スパン内の複数のPRI上で有効なSPADが検出した光子の総数を蓄積するのに用いられてもよい。
【0063】
図7に例示するのは、1つの有効なSPADに対する均一ヒストグラムである。ヒストグラム700は複数のPRI(
図2を参照)にわたって構成され、PRIの間にSPADが検出した光子の総数を表す。ヒストグラム700の垂直軸(例えば、y軸)は光子の数を表し、水平軸(例えば、x軸)は時間を表す。ヒストグラム700内のビン702はPRIにわたる。各ビン702はPRI内の特定の時間スパン上での光子カウントを表す。例えば、各ビン702は、5ナノ秒のスパン上で検出された光子の数を表すことができる。
【0064】
有効なSPAD内でアバランシェがトリガされる度に、対応するTDC回路が測定するTOFに対応する「アドレス」が計算されて、そのアドレスに対応するビンを1つだけ増やす。ヒストグラムはメモリ608に記憶される。
【0065】
前述したように、語句「不均一ヒストグラム」は、ヒストグラムにわたる種々の時間スパンを表すビンを含むヒストグラムを指す。
図8に不均一ヒストグラム例を示す。不均一ヒストグラム800には、第1の幅又は時間スパンを有する第1の組のビン802、第2の幅を有する第2の組のビン804、第3の幅を有する第3の組のビン806、及び第4の幅を有する第4の組のビン808が含まれる。ビンの組802、804、806、808にはそれぞれ、1つ以上のビンを含めることができる。
【0066】
不均一ヒストグラムを用いて、画素の感度を効果的に変調することができる。不均一なビン幅を選択して固定することができるか、又は例えば処理デバイス108によって動的に変更することができる。
【0067】
例示した実施形態では、第1の組のビン802はPRIの開始及びPRIの終わりに位置する。第1の組のビン802は、SPAD検出器に対する粗い分解能又は感度が形成する。PRIの開始にあるビン802の粗い分解能は、PRIの終わりにあるビン802のビンとは異なっていてもよい。第2の組のビン804は、PRIの開始における第1の組のビン802(例えば、一番左の第1の組のビン802)の後に位置する。第2の組のビン804は、SPAD検出器に対する微細な分解能又は感度が形成する。第3の組のビン806は第2の組のビン804と第4の組のビン808との間に位置する。第3の組のビン806は、第2の組のビン804が与える微細な感度よりは微細さが低いSPAD検出器に対する微細な感度が形成する。第4の組のビン808によって、第1の組のビン802が与える粗い感度よりは粗さが低いSPAD検出器に対する粗い感度が形成される。言い換えれば、第3の組のビン806が形成する感度は、第2の組のビン804が与える感度よりは感度が低いが、第4の組のビン808が形成する感度よりは感度が高く、第4の組のビン808が与える感度は、第3の組のビン806が形成する感度よりは感度が低く、第1の組のビン802が与える感度よりは感度が高い。したがって、SPAD検出器の感度は、PRIの開始時には粗く(第1の組のビン802)、その後、より微細な(又は粗さが少ない)感度に移行する(第2の組のビン804)。SPAD検出器の感度は、次に、より粗い感度又は微細さがより低い感度が増したビンに移行する(例えば、第2の組のビン804から第3の組のビン806に移行し、第3の組のビン806から第4の組のビン808に移行し、最後に第4の組のビン808から第1の組のビン802に移行する)ことによって、PRI内に残る時間にわたって減少する。このように、異なる組のビン802、804、806、808によって、PRIにわたってSPAD検出器の感度が変調される。
【0068】
詳細には、第1の組のビン802内のビン810の幅はそれぞれ、最も長い時間にわたり、画素アレイに対する第1の分解能又は感度を形成する。典型的に、PRIの開始及びPRIの終わりに検出される光子は少数である。それに応じて、第1の組のビン802内のビン810はより長い時間にわたる。前述したように、第1の組のビン802内のビン810によって、SPAD検出器に最も粗い分解能又は感度が与えられる。
【0069】
第2の組のビン804内のビン812の幅はそれぞれ、最短の時間長にわたり、画素アレイに対する第2の感度を形成する。したがって、第2の組のビン804内のビン812によって、SPAD検出器に最も微細な分解能又は感度が与えられる。
【0070】
第3の組のビン806内のビン814の幅はそれぞれ、ビン812の幅よりは大きくて第4の組のビン808内のビン816の幅よりは小さい時間に及ぶ。ビン814によって、SPAD検出器に微細な分解能又は感度(最も微細な分解能よりは微細さが低くて粗い分解能よりは高い)が与えられる。前述したように、第3の組のビン806を用いて画素アレイに対する第3の感度が形成される。
【0071】
第4の組のビン808内のビン816の幅はそれぞれ、ビン814の幅よりは大きくて第1の組のビン802内のビン810の幅よりは小さい時間にわたる。第4の組のビン808内のビン816は、SPAD検出器に粗い分解能又は感度(微細な分解能よりは微細さが低くて、最も粗い分解能よりは高い)をもたらす。第4の組のビン808は、画素アレイに対する第4の感度となる。
【0072】
こうして、不均一ヒストグラム800内のビン幅を変えることによって、ある時間にわたってSPADの感度を変調することができる。最も微細な感度を用いて、シーン内のより近い物体(例えば、近接ターゲット)から、及び/又は高反射率を有する物体から反射した光子を検出することができる。最も粗雑な感度を用いて、シーン内のより遠い物体(例えば、遠方ターゲット)から反射する光子を検出する。また微細及び粗雑な感度を、近い物体と遠い物体との間に位置する物体から反射する光子とともに用いる。
【0073】
図9にSPAD検出器内の画素例の概略図を示す。SPAD900は、負電圧源(−V
BD)と、電圧V
OUTが取り出される出力ライン上のノード902との間に接続される。SPAD900は、負電圧源−V
BDに接続されたアノード、及びノード902に接続されたカソードを有するが、他の実施形態はこの構成に限定されない。
【0074】
選択トランジスタ904の第1の端子及びゲートトランジスタ906の第1の端子もまた、ノード902に接続されている。ゲートトランジスタ906の第2の端子は、基準電圧(例えば、接地)に接続されている。選択トランジスタ904の第2の端子は、クエンチトランジスタ908の第1の端子に接続されている。クエンチトランジスタ908の第2の端子は、電圧源V
Eに接続されている。選択トランジスタ904及びゲートトランジスタ906のゲートは、共通入力ライン910に接続されている。ゲート信号V
GATEを入力ライン910に印加して、SPAD900を有効にして選択し、SPAD900を無効にして選択解除する。言い換えれば、ゲート信号V
GATEによってSPAD900の検出時間が決定される。SPADが有効化されると、アバランシェイベントが出力ラインV
OUT上で検出される。出力ラインV
OUTを、例えば、
図6のアナログフロントエンド回路アレイ604に接続することができる。有効なSPAD900に光子が衝突すると、電圧源V
Eと−V
BDとの間にアバランシェ電流が流れる。これによって、ノード902におけるV
OUTに電圧変化が誘起される。この電圧変化をAF回路アレイ604によって検出して増幅することができる。
【0075】
図9では、選択トランジスタ904及びクエンチトランジスタ908はPMOSトランジスタとして描かれ、ゲートトランジスタ906はNMOSトランジスタとして示されている。しかし、他の実施形態では入れ替えた回路及び回路構成を用いてもよい。他の実施形態では、選択トランジスタ904及びクエンチトランジスタ908はNMOSトランジスタであってもよく、ゲートトランジスタ906はPMOSトランジスタであってもよい。代替的に、選択トランジスタ904、ゲートトランジスタ906、及び/又はクエンチトランジスタ908は、異なる型のトランジスタ又は回路として構成してもよい。
【0076】
また
図9に示す画素には、正供給電圧V
E及びV
OUTの出力ラインから接続された任意的な高速再充電トランジスタ912が含まれる。図示した画素の場合、高速再充電トランジスタ912はPMOSトランジスタである。急速再充電トランジスタ912は、再充電信号V
RCH914によってゲート制御される。再充電信号V
RCH914は、ゲート信号V
GATEに同期させることができる。
【0077】
図10に示すのは、各パルス繰り返し間隔の間のSPADシステムの動作のタイミング図例である。時間T
0で放出器が光パルス1002を放出するときにN番目のPRIは始まる。時間T
0において、撮像サブアレイ内の画素内のSPADに対するゲート信号(V
GATE)は、撮像サブアレイ内の画素内のSPADを無効にする第1の信号レベル1004にある。時間T
0と時間T
1との間において、撮像サブアレイ内の画素内のSPADは無効にされる。参照サブアレイ内の画素内の1つ以上のSPADが、カバー層から反射された光において光子が検出されたことを示す信号1006を出力してもよい。第1の信号レベル1004は、カバー層反射時間間隔を越えて延びてもよく、付加的な時間間隔を含んでいてもよい。
【0078】
時間T
1において、V
GATE信号の信号レベルは第2の信号レベル1008に移行して、撮像サブアレイ内の画素内の選択SPAD(又は撮像サブアレイ内の画素のセクション内のSPAD)が、ターゲット及び/又はシーンから反射された光の中の光子を検出することが可能になる。第1の信号レベル1004を高信号レベルと示し、第2の信号レベル1008を低信号レベルと示しているが、これらの信号レベルは必須ではない。他の実施形態では、第1の信号レベル1004は低信号レベルであってもよく、第2の信号レベル1008は高信号レベルとすることができる。
【0079】
時間T
1と時間T
5の間では、撮像サブアレイ内の画素内の有効なSPADによって、検出光子を表す信号1010が生成される。時間T
5を、FOV内の物体に対して選択した最大検出範囲によって決定してもよい。すなわち、T
5の後に反射光パルスが到達するFOV内の十分遠くに配置された物体は対象とは考えていない。更に、T
5の後に到達する光子は周辺光源に由来する可能性がより高いという想定に基づいて、時間T
5を選択してもよい。時間T
5において、ゲート信号V
GATEは、第1の信号レベル1004に移行して、撮像サブアレイ内のSPADを無効にする。時間T
6においてN番目のPRIは終了する。
【0080】
図10の一番下の2つのプロットは、TDC出力値により与えられるSPAD(参照SPAD又は撮像SPAD)がトリガされる異なる時間をシステムがヒストグラムビンとどのように関連付けるかを例示する。両プロットにおいて、垂直軸には、ヒストグラムのビンに対応する別個のレベルの組を含むことができる。水平軸は、時間T
0とT
6との間のN番目PRIが部分間隔に分割される様子を示している。特定の部分間隔内のTDC出力値(すなわち、SPADトリガリング時間に対するデジタル値)に対して、対応するビン番号(又はアドレス)がグラフ上の対応点の垂直座標によって与えられる。
図11A〜12に対して後述するように、ビン番号は垂直軸上に等間隔に配置されている。
【0081】
実施形態例では、参照SPADに対するグラフは、時間T
0と時間T
3との間を直線的に上昇して、この間隔におけるTDC出力値が参照SPADに対するヒストグラムの異なるビンに分離される。時間T
3と時間T
6との間のTDC出力値に対しては、対応するビンは、最後の記録されたビンであるか、又は参照SPADに対するヒストグラムのどのビンにも入力されていない。例示した実施形態では、参照SPADは参照信号に対してのみ用いているため、参照SPADに対するTDC出力値は時間T
3の後には考慮も分析もしていない。時間T
3後の参照SPADに対するTDC出力値を考慮しないことは任意的であり、他の実施形態では、時間T
3後の参照SPADに対するTDC出力値を考慮してもよいし及び/又は分析してもよい。
【0082】
参照サブアレイ内の画素内のSPADに対するTDC出力値と同様に、撮像サブアレイ内の画素内のSPADに対するTDC出力値は、SPADが検出する光子の到着時刻を表す。一番下のプロット内のグラフは、時間T
1と時間T
5との間にある撮像SPADからのTDC出力値が、不均一ヒストグラムに対するビン番号とどのように関連するかを示している。その時間にわたってプロットは単一勾配ではない。時間T
1と時間T
5との間でプロットの勾配は変化する。N番目のPRIの間に構成される不均一ヒストグラムに変曲点が対応付けられる。
【0083】
不均一ヒストグラムを構成するために用いる撮像SPADからのTDC出力値を、いくつかの技術を用いて取得することができる。ある技術では、TDCアレイ回路がTDC出力値を生成するときに、TDC出力値をエンコードすることができる。TDC出力値を圧縮するか又はエンコードすることによって、不均一ヒストグラムにとって必要なアドレス長を短くしてもよい。
【0084】
図11Aに示すのは、最初に均一ヒストグラム(例えば
図7)形成してから不均一ヒストグラム(例えば、
図8)を形成するために、TDC出力値をどのように割り当てることができるかに関する2つのプロットである。TDC出力値の均一ヒストグラムを形成するために、垂直軸はヒストグラムビン番号(言い換えると、メモリ内でのビンアドレス)を与え、ビン1からビンNまでの等間隔に配置されたビン番号からなる。その結果、各ビンに対して、水平時間軸上の対応する時間部分間隔(例えば、部分間隔D
1〜D
2とD
2〜D
3)は等幅を有する。プロット1100に、TDCアレイ回路から出力されたTDC出力値を対応するビン番号にどのように割り当てるかを示す。例えば、時間1103においてアバランシェイベントのTDC出力値が生じた場合、ビン8内のカウントを1だけ増やす。
【0085】
プロット1101に例示するのは、TDC出力値を記録するために用いるヒストグラム用の基礎となることができる曲線である。PRIにわたってプロットの勾配1101は変化する。例示した実施形態では、プロット1101はTDC値の全範囲(例えば、D
1からD
MAX)にわたって滑らかである。エンコーダ回路(例えば、エンコーダ607)を用いて、何らかの任意のプロット又は曲線を形成することができる。開始及び終了時間を表す特定のTDC出力値D
1〜D
MAXをすべてのTDC回路の間で共有することができ、また静的又は動的に再プログラム可能となるようにメモリ回路(例えば、SRAM)に記憶してもよい。
【0086】
別の技術では、TDCアレイ回路がTDC出力値を生成した後にTDC出力値をポストエンコードしてもよい。
図11Bに示すのは、線形TDC出力値及びポストエンコードされたTDC出力値の第2の組のプロットである。比較のために、前述したプロット1100を部分的に示す。プロット1102は
図11Aのプロット1101に対する区分的線形近似である。不均一ヒストグラムを形成するために、この場合、垂直軸上のビン番号は均一なステップサイズによって分離して示しており、ビン1〜ビンMの範囲である。その結果、水平時間軸上にマーキングされた各ビンに対応する個々の時間部分間隔は幅が均一ではない。プロット1102に例示するのは、不均一ヒストグラムを構成するために用いるTDC出力値である。PRIにわたってプロットの勾配1102は変化する。
図11Aに示す実施形態と同様に、エンコーダ回路(例えば、エンコーダ607)を用いて何らかの任意曲線を形成してもよい。
【0087】
図12に示すのは、TDC出力値をポストエンコードして不均一ヒストグラムを形成して、
図11Bに示す典型的なプロットを形成するために用いることができる方法例である。
図6に示すエンコーダ607によって本方法を行うことができる。TDCアレイ回路内の各TDC回路が生成した各TDC出力値(d)に対して、例示したプロセスを行う。最初、ブロック1200において、TDC出力値dがD
1以下であるか否かについて判定し、D1は、第1のビンアドレス移行に対応する時間部分間隔に対する開始時間を表す。そうである場合には、そのTDC出力値に対するビンアドレスはゼロである(ブロック1202)。ゼロビンアドレスは、
図11の部分間隔又は領域1104に対応する。
【0088】
TDC出力値dがD
1よりも大きい場合、本方法はブロック1204に移って、TDC出力値dがD
1よりも大きくてD
2以下であるか否かを判定し、D
2は、第2のビンアドレス移行に対する開始時間を表す。そうである場合には、そのTDC出力値に対するビンアドレスはd−D1である(ブロック1206)。このビンアドレスは、
図11の領域1106内の時間部分間隔に対応し、領域1106内のすべての部分間隔は等幅を有している。
【0089】
TDC出力値dがD
2よりも大きい場合、本方法はブロック1208に移って、TDC出力値dがD
2よりも大きくてD
3以下であるか否かを判定し、D
3は第3のビンアドレス移行を表す。そうである場合には、そのTDC出力値に対するビンアドレスは、(D
2−D
1)+(d−D
2)/2である(ブロック1210)。このビンアドレスは
図11の領域1108に対応する。領域1108では、図示するように、TDC値を2つ以上のビンの間で割り当ててもよいが、それらのビンに対する対応する時間部分間隔は等幅を有している。しかし、D
2とD
3との間の時間部分間隔の幅は、D
1とD
2との間の時間部分間隔よりも広い。こうして、結果として得られるヒストグラムに対するビンは、不均一な幅を有する時間部分間隔に対応する。
【0090】
TDC出力値dがD
3よりも大きい場合、本方法はブロック1212に移って、TDC出力値dがD
3よりも大きくてD
MAX以下であるか否かを判定し、D
MAXは第4のビンアドレス移行を表す。そうである場合には、そのTDC出力値に対するビンアドレスは、(D
2−D
1)+(D
3−D
2)/2+(d−D
3)/3である(ブロック1214)。このビンアドレスは
図11の領域1110に対応する。
【0091】
TDC出力値dがD3よりも大きくてD
MAX以下である場合、本方法はブロック1216に移って、TDC出力値dがD
MAXよりも大きいか否かを判定する。そうである場合には、そのTDC出力値に対するビンアドレスはD
MAXである(ブロック1218)。このビンアドレスは
図11の領域1112に対応する。TDC出力値dがDMAXより大きくないとき、ビンアドレスをそのTDC出力値dには割り当てない(ブロック1220)。
【0092】
図12に示した方法では、ビンアドレス計算における除算に対して自然数を用いる。例えば、ブロック1214におけるビンアドレス計算は、d(D
2−D
1)+(D
3−D
2)/2+(d−D
3)/3である。減算(D
3−D
2)を2で割り、減算(d−D
3)を3で割る。他の実施形態では、1つ以上のビンアドレス計算において分数を用いることができる。
【0093】
不均一ヒストグラムを構成するために用いてもよい不均一なTDC出力値を取得するための別の技術には、異なる位相を有するTDCクロック信号を用いることが伴う。この技術は任意的であり、前述で開示した方法とともに用いてもよいし、又は単独で用いてもよい。
図13Aに、画素アレイに動作可能に接続されたTDCアレイ回路例を示す。画素アレイ1300には、参照サブアレイ1302及び撮像サブアレイ1304が含まれる。撮像サブアレイ1304内の各画素1306は、
図9に示すように構成することができる。したがって、画素1306に対する1つ以上のゲート信号(V
GATE)を、ライン1308上の画素アレイ1300によって受信する。処理デバイス(例えば
図1の処理デバイス108又は
図22の処理デバイス2204)によって、1つ以上のゲート信号を画素アレイ1300に伝送して、撮像サブアレイ1304内の選択画素1306内のSPADを有効にすることができる。
【0094】
前述したように、TDCアレイ回路1310には、画素アレイ1300内の各画素ライン(例えば、行1314)に対するN個のTDC回路1312が含まれ、Nは、任意の所与時間に有効にされたSPADの数を表す。したがって、N個のTDC回路1312が、画素アレイ1300内の各対応する行1314に動作可能に接続されている。いくつかの実施形態では、TDCアレイ回路1310には、TDCアレイ回路1310内の対応するTDC回路1312と、対応するTDC回路1312に動作可能に接続された画素アレイ1300内の行との間に接続された、バッファ又は増幅器1316が含まれる。増幅器1316の一例は、トランスインピーダンス増幅器である。
【0095】
例示した実施形態では、TDCアレイ回路1310は、異なる位相を有するクロック信号を受信する。詳細には、それぞれ異なる位相φ
0、φ
1、φ
2、φ
3を有する4つのクロック信号(TDCCLK
REF)が、参照サブアレイ1302内の画素1318の行に動作可能に接続されたTDC回路1312に伝送される。同様に、それぞれ異なる位相φ
0、φ
1、φ
2、φ
3を有する4つのクロック信号(TDCCLK
DIST)が、撮像サブアレイ1304内の画素1306の行に動作可能に接続されたTDC回路1312に伝送される。4つの異なる位相を示して説明しているが、他の実施形態はこの実施態様に限定されない。クロック信号に対して任意の数の位相を用いることができる。
【0096】
図13Bに、
図13Aに示すTDCアレイ回路で用いるのに適したTDC回路のブロック図を示す。各TDC回路1312にはカウンタ1320及び位相検出器1322が含まれ、これらは各クロック信号ライン1324に接続されている。TOFは、すべてのクロック信号ライン1324上での位相及び位相状態のいずれかに関連するクロック信号ライン1324上でカウントされたクロック周期の数に基づいて決定される。カウンタ1320及び位相検出器1322には1つ以上のレジスタ1326が接続されている。レジスタ1326を用いて、アバランシェイベントとラインスキャン時間の間に取り込まれたTDC値とを記憶する。
【0097】
図14に、
図13Aに示すTDCアレイ回路とともに用いるのに適した計時回路のブロック図を示す。コントローラ1400は、異なる位相を有する3つのクロック信号を出力する。例示した実施形態では、TDCCLK
0は第1の位相を有し、TDCCLK
1は、TDCCLK
0の位相の半分の(例えば、2倍遅い)第2の位相を有し、TDCCLK
2は、TDCCLK
0の位相の4分の1の(例えば、4倍遅い)第3の位相を有する。第4のクロック信号は値がゼロである。他の実施形態では、異なるクロック信号及び位相を用いることができる。
【0098】
クロック信号ゼロ、TDCCLK
0、TDCCLK
1、及びTDCCLK
2がマルチプレクサ1402に入力される。マルチプレクサコントローラ1404が、選択信号SEL
TDCCLKをマルチプレクサ1402に送信して、画素アレイの撮像サブアレイ内の画素に分配するクロック信号を選択する。ゲート1406(例えば、ANDゲート)を用いて、参照TDCクロック信号(TDCCLK
REF)が用いる4つの位相が、TDCCLK
REFが用いられていないときに切り換わることを防いでおり、その結果、節電される(例えば、
図15のTDCCLK
REF波形を参照)。信号EN
TDCREFは、ゲート1406によって受信されるイネーブル信号である。当業者であれば分かるように、ANDゲートとは異なる回路又はゲートを
図14の実施形態で用いた場合、信号EN
TDCREFは変わってもよい。
【0099】
図14に示す実施形態では、TDC出力値は受信されるとエンコードされる。したがって、
図6に示すエンコーダ607を省略することができ、その結果、SPAD検出器にとって必要なダイ面積の量が減る。更に、
図14の技術を用いて節電することができる、なぜならば、遅いクロック信号が消費する電力は速いクロック信号と比べて小さいからである。
【0100】
図15に、
図14に例示した計時回路とともに用いることができるタイミング図例を示す。一番上の4つのプロットに示すのは、クロック信号EN
TDCREF、TDCCLK
0、TDCCLK
1、及びTDCCLK
2である。時間T
0において、撮像サブアレイ内の画素内のSPADが無効にされるため、選択信号SEL
TDCCLKは、値ゼロを有する第4のクロック信号を選択する。値ゼロは、
図8に示す第1の組のビン802内の左端のビン810に対応する。更に、EN
TDCREF信号の信号レベルは高信号レベルである。
【0101】
時間T
1において、画素アレイに対する検出時間が始まり、選択信号SEL
TDCCLKは第1のクロック信号TDCCLK
0を選択する。第1のクロック信号TDCCLK
0は、
図8に示す第2の組のビン804に対応する。言い換えれば、SPADは、第1のクロック信号TDCCLK
0に基づいて最も微細な分解能又は感度を有している。
【0102】
時間T
2において、選択信号SEL
TDCCLKは第2のクロック信号TDCCLK
1を選択して、EN
TDCREF信号の信号レベルは低信号レベルに移行する。第2のクロック信号TDCCLK
1は、
図8に示す第3の組のビン806に対応する。言い換えれば、SPADは、第2のクロック信号TDCCLK
1に応じて微細な分解能又は感度を有している。前述したように、微細な分解能は、最も微細な分解能よりは微細さが低くて、粗い分解能よりは高い。
【0103】
最後に、時間T
3において、選択信号SEL
TDCCLKは、第3のクロック信号TDCCLK
2を選択する。第3のクロック信号TDCCLK
2は、
図8に示す第4の組のビン808に対応する。SPADは、第3のクロック信号TDCCLK
2に応じて粗い分解能又は感度を有する。
【0104】
時間T
4において、最大の飛行時間が終了し、選択信号SEL
TDCCLKが、値ゼロを有する第4のクロック信号を選択する。値ゼロは、
図8に示す第1の組のビン802内の右端のビン810に対応する。時間T
5において検出時間は終了する。
【0105】
不均一ヒストグラムは、SPAD検出器の感度を変調するための1つの技術である。1つ以上のSPADの再充電時間を変えることは、SPAD検出器の感度を変調するために使用できる別の技術である。変調又は可変感度を用いて、すでに説明したサンプリング偏りを減らしてもよい。
【0106】
図16にSPAD検出器内の別の画素例の概略図を示す。SPAD1600が、電圧源−V
BDとノード1602との間に接続されている。
図9の実施形態と同様に、SPAD1600は、図示では、アノードが電圧源−V
BDに接続され、カソードがノード1602に接続されているが、他の実施形態ではこの構成に限定されない。SPAD1600の端子は、他の実施形態、すなわち、画素のトランジスタの型(極性)を変えることで交換することができる。
【0107】
選択トランジスタ1604の第1の端子及びゲートトランジスタ1606の第1の端子もまた、ノード1602に接続されている。ゲートトランジスタ1606の第2の端子は、基準電圧(例えば、接地)に接続されている。選択トランジスタ1604の第2の端子はクエンチトランジスタ1608の第1の端子に接続され、クエンチトランジスタ1608の第2の端子は電圧源V
Eに接続されている。選択トランジスタ1604及びゲートトランジスタ1606のゲートは、共通入力ライン1610に接続されている。共通の入力ライン1610に印加されるゲート信号V
GATEを用いて、SPAD1600の動作を選択して有効にし、またSPAD1600の動作を選択解除して無効にする。SPADが有効化されると、アバランシェイベントが出力ラインV
OUT上で検出される。
【0108】
クエンチトランジスタ1608は、SPAD1600の再充電時間を制御する。クエンチトランジスタ1608のゲートを、第1のクエンチ信号V
SQCHにスイッチ1611を介して接続し、第2のクエンチ信号V
QCHにスイッチ1612を介して接続することができる。したがって、クエンチトランジスタバイアスは2つの異なる信号レベル間で切り替え可能である。あるクエンチ信号(例えば、第1のクエンチ信号V
SQCH)によって、PRIの間に感度制御された時間が生成される。
【0109】
感度制御された時間が用いられるときは、スイッチ1611は閉じられスイッチ1612は開かれている。感度制御された時間をPRI内でより早く用いて、SPAD検出器に近い物体及び/又はより高い反射率を有する物体から反射された光子に対するSPAD1600の感度を下げることができる。例えば、ゲート信号V
GATEがSPAD1600の動作を有効にした後に、所与の時間の間、感度制御された時間を用いてもよい。他の実施形態では、1つ以上のPRIの間に複数の感度制御された時間を用いることができる。
【0110】
感度制御された時間の終わりでは、スイッチ1611は開いてスイッチ1612は閉じている。他方のクエンチ信号(例えば、第2のクエンチ信号V
QCH)を用いて、SPAD1600を所与の感度レベル(例えば、最大感度)に維持する一方で、最大再充電電流をクエンチトランジスタ1608を介して与えて、公称上の再充電時間(例えば、最短不感時間)に到達する。一定感度時間を用いて、SPAD検出器からより遠い物体及び/又はより低い反射率を有する物体から反射された光子に対するSPAD1600の感度を維持する(例えば、最大にする)ことができる。
【0111】
いくつかの実施態様では、感度制御された時間は調整可能であり、以前に受信した光子(例えば、より早いPRIの間に受信した光子)のTOFに基づいて動的に設定することができる。それに加えて又はその代わりに、V
SQCHの信号レベルを、PRI間で又はSPAD検出器のFOV内のシーンにおける1つ以上の特性に基づいて、動的に調整することができる。例えば、V
SQCHの信号レベルを調整するときに、シーンの照明条件及び/又は以前に決定したTOFを考慮することができる。他の実施形態では、感度制御された時間は、公称上の再充電時間(すなわち、最短不感時間)と同じであるので、クエンチトランジスタ1608のゲートは2つの電圧レベルの間で切り替わらない。これらの実施形態では、第1のクエンチ信号V
SQCHに対する必要性が無くなるため、クエンチトランジスタ1608のゲートは同じ電圧レベルV
QCHに接続されたままである。
【0112】
図17に、クエンチトランジスタの切り替え可能なゲートバイアスの動作の一例を示す。時間T
0において、放出器によって光パルスが生成される。時間T
0と時間T
1との間では、ゲート信号V
GATEは、SPADの動作を無効にする信号レベルである。それに応じて、ノード1602での信号レベルはゼロであり、SPAD感度はゼロである。
【0113】
時間T
1において、ゲート信号V
GATEは、SPADの動作を有効にする信号レベルに移行する。実質的に同時に、スイッチ1611は閉じてスイッチ1612は開いて、クエンチトランジスタのゲートをV
SQCHに接続する。ノード1602での信号レベル及びSPAD感度は、時間T
1と時間T
2との間で上昇する。したがって、時間T
1と時間T
2との間の時間を、感度制御された時間と言う。
【0114】
時間T
2において、スイッチ1611は開いてスイッチ1612は閉じて、クエンチトランジスタのゲートをV
QCHに接続する。ノード1602での信号レベルはV
Eに維持されて、SPAD感度は所与のレベル(例えば、最大感度)に維持される。時間T
3において、ゲート信号V
GATEは、SPADの動作を無効にする信号レベルに移行し、時間T
4においてPRIは終了する。
【0115】
図16では2つのゲートバイアス信号を示しているが、他の実施形態はこの構成に限定されない。いくつかの実施態様では、クエンチトランジスタのゲートバイアスを3つ以上のゲートバイアス信号間で切り替えて、所与のSPAD感度を規定することができる。
【0116】
1つ以上のSPADの再充電時間を変えることは、SPAD検出器の感度を変調するために使用できる第2の技術である。クエンチトランジスタに接続された電圧源を変えることは、SPADの感度を変調するために用いてもよい第3の方法である。
【0117】
図18に、変調可能な感度を有する画素アレイのブロック図を示す。1つ以上のSPADの感度を、クエンチトランジスタの端子に接続された可変V
E信号を通して変調する。画素アレイ1800には、参照サブアレイ1802及び撮像サブアレイ1804が含まれている。スイッチアレイ1806が撮像サブアレイ1804内の各画素ライン(例えば、画素の列)に接続されて、1つ以上の画素ラインを可変V
E信号1808に選択的に接続する。可変V
E信号1808は任意の所与の波形を有することができる。参照サブアレイ1802内の画素内のSPADは、一定なV
E信号1810に接続されてもよい。
【0118】
一実施形態では、消費電力を減らすようにライン又は画素ライン(例えば、画素の列)を選択するように、可変V
E信号1808が送信される。例えば、例示した実施形態では、スイッチ1812の組を閉じる一方で他のスイッチを開いて、可変V
E信号1808を画素1814内の有効なSPADのみに送信する(有効なSPADはハッチングによって表されている)。
図18では4本の画素ライン(例えば、列)のSPADが有効にされているが、他の実施形態では1本以上の画素ラインを有効にすることができる。
【0119】
可変V
E信号1808を任意の好適な方法で生成してもよい。例えば、デジタルアナログ変換器を用いて、可変V
E信号1808を生成することができる。代替的に、単一勾配電圧ランプ発生器を用いて、可変V
E信号1808を生成してもよい。
【0120】
図19に、
図18に示す画素アレイとして用いるのに適した第1の画素アレイのブロック図を示す。例示した実施形態では、1つ以上のSPADの感度を可変V
E信号及びグローバル電流源を通して変調する。画素アレイ1900はスイッチアレイ1902に接続されている。スイッチアレイ1902内の各スイッチを、対応する画素ライン(例えば、列)に接続して、1つ以上の画素ラインを可変V
E信号発生器1906及びグローバル電流源1910に選択的に接続する。例えば、スイッチ1904を閉じて、クエンチトランジスタの端子を可変V
E信号発生器1906に接続する。スイッチ1908を閉じて、クエンチトランジスタのゲートをグローバル電流源1910に接続する。
【0121】
可変V
E信号発生器1906には、コードテーブル1912、コードセレクタ1914、及びデジタルアナログ変換器(DAC)1916が含まれる。特定の形状を有するV
E信号を所与の時間にわたって生成すべき場合には、コードテーブル1912に記憶された入力コードを用いて、所与の時間の間にDAC1916を繰り返してトリガする。
【0122】
図20に、
図19に示すV
E信号発生器及びグローバル電流源によって生成することができる信号例を示す。プロット2000は、グローバル電流源1910が生成した信号を表す。プロット2002は、DAC1916が生成した出力信号例を例示する。プロット2002は、所与の時間の間、DAC1916に各コードを繰り返し送ることによって形成することができる。
【0123】
図21に、
図18に示す画素アレイとして用いるのに適した第2の画素アレイのブロック図を示す。前述したように、1つ以上のSPADの感度を、可変V
E信号及びローカル電流源を通して変調する。画素アレイ2100は、スイッチ2106及び電流源2104のアレイ2102に接続されている。各スイッチ2106及び電流源2104は、対応する画素ライン(例えば、列)に接続されている。各スイッチ2106は、1つ以上の画素ラインを可変V
E信号発生器2108に選択的に接続する。
【0124】
可変V
E信号発生器2108は、
図19の可変V
E信号発生器1906と同様である。可変V
E信号発生器2108には、コードテーブル2110、コードセレクタ2112、及びデジタルアナログ変換器2114が含まれる。特定の波形を有するV
E信号を所与の時間にわたって生成するとき、コードテーブル2110に記憶された入力コードを用いて、所与の時間の間にDAC2114を繰り返してトリガする。
【0125】
図22に、1つ以上のSPAD検出器を含むことができる電子デバイスのブロック図を示す。電子デバイス2200は、1つ以上のSPAD検出器2202、1つ以上の処理デバイス2204、メモリ2206、1つ以上のネットワークインターフェース2208、及び電源2210を含み、これらの各々について以下で論じる。
【0126】
1つ以上の処理デバイス2204は、電子デバイス2200の動作の一部又は全てを制御することができる。処理デバイス(単数又は複数)2204は、電子デバイス2200の実質的に全ての構成要素と、直接的に又は間接的に、通信することができる。例えば、1つ以上のシステムバス2212又は他の通信機構によって、SPAD検出器2202、処理デバイス2204、メモリ2206、ネットワークインターフェース2208、及び/又は電源2210の間の通信をもたらすことができる。いくつかの実施形態では、処理デバイス2204を、SPAD検出器2202から出力信号を受信して、出力信号を処理し、反射光、ターゲット(例えば、
図1のターゲット106)、及び/又はシーンに付随する1つ以上の特性を決定するように構成することができる。
【0127】
処理デバイス(単数又は複数)2204は、データ又は命令を処理、受信、又は送信することができる任意の電子デバイスとして実装することができる。例えば、1つ以上の処理デバイス2204は、マイクロプロセッサ、中央処理ユニット(CPU)、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、又は複数のそのようなデバイスの組合せとすることができる。本明細書に記載する場合、用語「プロセッサ」とは、単一のプロセッサ若しくは処理ユニット、複数のプロセッサ若しくは複数の処理ユニット、他の適切に構成されたコンピューティング要素(単数又は複数)を包含することを意図するものである。
【0128】
メモリ2206は、電子デバイス2200によって使用され得る電子データを記憶することができる。例えば、メモリ2206は、電気データ又はコンテンツ(例えば、オーディオファイル、文書ファイル、タイミング及び制御信号など)を記憶することができる。メモリ2206は、任意のタイプのメモリとして構成することができる。単に例として、メモリ2206は、ランダムアクセスメモリ、読み取り専用メモリ、フラッシュメモリ、リムーバブルメモリ、又は他の形式の記憶素子として、任意の組合せで実装することができる。
【0129】
ネットワークインターフェース2208は、ユーザ又は1つ以上の他の電子デバイスからデータを受信することができる。加えて、ネットワークインターフェース2208は、ユーザ又は他の電子デバイスへのデータの送信を容易にすることができる。ネットワークインターフェース2208は、ネットワークからデータを受信し、又は無線若しくは有線接続を経由して電子信号を送信及び伝達することができる。例えば、処理装置2204によって決定される光子カウントを、ネットワークインターフェース2208を用いて別の電子デバイスに送信することができる。
【0130】
無線接続及び有線接続の例には、セルラー、Wi−Fi(登録商標)、Bluetooth(登録商標)、及びEthernet(登録商標)が挙げられるが、これらに限定されるものではない。1つ以上の実施形態では、ネットワークインターフェース2208は、複数のネットワーク又は通信機構をサポートする。例えば、ネットワークインターフェース2208によって、Bluetoothネットワーク上で別のデバイスとペアリングして他のデバイスに信号を転送しながら、同時にWi−Fi又は他の有線接続又は無線接続から信号を受信することができる。
【0131】
1つ以上の電源2210は、電子デバイス2200にエネルギーを供給することができる任意のデバイスを用いて実装することができる。例えば、電源2210は電池とすることができる。追加的に又は代替的に、電源2210は、電子デバイス2200が電源コードで接続する壁コンセントとすることができる。追加的に又は代替的に、電源2210は、電子デバイス2200が無線接続、又はユニバーサルシリアルバス(USB)ケーブルなどの有線接続(例えば、接続ケーブル)を経由して接続する別の電子デバイスとすることができる。
【0132】
いくつかの実施形態では、SPAD検出器2202は背面照明式SPAD検出器として構成される。このような実施形態では、画素アレイはSPAD検出器の受光面に隣接して位置し、画素アレイ内のSPADに接続された回路(例えば、ゲートトランジスタ、クエンチトランジスタなど)は画素アレイの下方に位置する。他の実施形態では、SPAD検出器2202を異なる仕方で構成することができる。
【0133】
前述の記載では、説明のために、記載された実施形態の完全な理解をもたらすために特定の専門用語を用いた。しかし、記述される実施形態を実施するために、具体的な詳細は必要とされないことは、当業者には明らかであろう。したがって、本明細書に述べられる特定の実施形態の前述の説明は、実例及び説明の目的で提示されている。これらの説明は、網羅的であること、又は開示されるまさにその形態に実施形態を限定することをターゲットとしたものではない。上記の教示を考慮すれば、多くの変更及び変形が可能であることが、当業者には明らかであろう。