(57)【特許請求の範囲】
【請求項１】
複数のピクセルを有するイメージ・センサー・アレイと、
前記イメージ・センサー・アレイの少なくとも前記複数のピクセルの領域を規定するアドレス指定用パラメータを発生させる第１のプロセッサと、
前記第１のプロセッサとメモリーマップしたデータの送受信が可能な汎用バスを介して接続され、前記第１のプロセッサから前記アドレス指定用パラメータを受信し、当該パラメータに基づいて前記イメージ・センサー・アレイの前記領域における各ピクセルのアドレスを発生させる第２のプロセッサと、を有し、
前記イメージ・センサー・アレイ、前記第１のプロセッサ及び前記第２のプロセッサは、単一の集積回路上に形成されたことを特徴とするイメージ・センサー・アレイを搭載した集積回路。
【請求項２】
前記第２のプロセッサは、前記イメージ・センサー・アレイをシーケンシャルにアドレス指定する手段を含む請求項１に記載の集積回路。
【請求項３】
前記第２のプロセッサは、イメージ・センサーの任意の領域をアドレス指定する手段を含む請求項１に記載の集積回路。
【請求項４】
前記第２のプロセッサは、前記イメージ・センサー・アレイのアドレスブロックを指定する手段を含む請求項１に記載の集積回路。
【請求項５】
前記第２のプロセッサは、前記イメージ・センサー・アレイが感知したイメージをパンする手段を含む請求項１に記載の集積回路。
【請求項６】
前記第２のプロセッサは、前記イメージ・センサー・アレイが感知したイメージをチルトする手段を含む請求項１に記載の集積回路。
【請求項７】
前記第２のプロセッサは、前記イメージ・センサー・アレイが感知したイメージをズームする手段を含む請求項１に記載の集積回路。
【請求項８】
前記第２のプロセッサは、前記イメージ・センサー・アレイから出力される前記ピクセルのスタート・アドレスを保持する少なくとも一つの第一レジスターをさらに含む請求項１に記載の集積回路。
【請求項９】
前記第２のプロセッサは、前記イメージ・センサー・アレイから出力される前記ピクセルの終了アドレスを保持する少なくとも一つの第二レジスターをさらに含む請求項８に記載の集積回路。
【請求項１０】
前記第２のプロセッサは、前記イメージ・センサー・アレイから出力される前記ピクセルの容量を保持する少なくとも一つの第二レジスターをさらに含む請求項８に記載の集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子カメラ、特に、電子カメラに内蔵されている総合イメージ・センサー・アレイに関する。
【０００２】
【従来の技術】
電子カメラは当業者には周知のものである。これら電子カメラは、フィルム上にイメージを捕らえる従来の「アナログ」カメラとは対照的に、イメージを電子の形で捕らえる。普通の電子カメラは、光を電気信号に変換するための電荷結合素子（ＣＣＤ）のようなある種のイメージ検出装置を含んでいる。電気信号は、ライン・メモリーに記憶される複数個のデジタル信号、すなわち、ビットに変換することができる。外部アドレス制御装置は、このライン・メモリーにアクセスするために使用される。このようなシステムの一つのタイプが、本明細書に参考文献として引用した前田の米国特許第５，３４３，２４３号に記載されている。
【０００３】
【発明が解決しようとする課題】
このシステムは、いくつかの不便な点を持っている。そのひとつは、ＣＣＤはランダム・アクセスができず、シーケンシャル・アクセスしかできないので、カラー・モードで作動しているとき、ＣＣＤの出力データをバッファーするのにライン・バッファーを必要とすることである。このライン・バッファーにアクセスするには、アドレス制御装置が使用される。
【０００４】
その他の代表的な電子カメラは、レンズに対して物理的に移動する線状アレイを使用している。このようなシステムは、本明細書に参考文献として引用したシュナイダー等の米国特許第４，５７１，６３８号に記載されている。このようなタイプのシステム内においては、センサーの位置を表示するために、窓検出装置と一緒にアドレス・カウンターが使用されている。
【０００５】
本発明の一つの目的は、改良型電子カメラを提供することである。
【０００６】
本発明のもう一つの目的は、イメージ検出用の改良型ＩＣを提供することである。
【０００７】
本発明のさらにもう一つの目的は、単一のＩＣ装置の一部としてイメージ・センサーとアドレス制御装置の組合わせを提供することである。
【０００８】
本発明のさらにもう一つの目的は、イメージ・センサーとアドレス制御装置の組合わせを含む電気回路を提供することである。
【０００９】
本発明のさらにもう一つの目的は、イメージ・センサー装置から制御装置にハイ・レベルのデータを供給することである。
【００１０】
本発明のさらにもう一つの目的は、イメージ・センサーＩＣからカラー・プロセッサーに直接データを供給することである。
【００１１】
本発明のさらにもう一つの目的は、内蔵エラー検出および修正機能を持つイメージ・センサーＩＣを提供することである。
【００１２】
【課題を解決しようとするための手段】
本発明は、イメージ・センサー・アレイを持つアドレス制御装置を単一のＩＣ装置に内蔵している。両機能を一つのＩＣに入れることにより、ピンの数が少なくてすむようになり、外部回路の数も少なくてすむ。本明細書に説明するアドレス制御装置の機能により、現在（アナログおよびデジタル）カメラによってはサポートされていない数種類のアドレス・モードを使用することができるようになる。この総合制御装置は、ラスター走査にセンサー・アレイにアドレスすることができるばかりでなく、（パンおよびチルト機能を使用することができる）領域アドレス指定および（ＪＰＥＧ，ＭＰＥＧおよびＨ．２６１のようなブロックをベースとする圧縮法の場合に役に立つ）ブロック・アドレス指定を行うことができる。このように、センサーとアドレス制御装置の組み合わせは、ユーザが複雑な外部回路を使用して、ラスター走査を適当なフォーマットに変換しなければならない方法とは違って、より高いレベルの機能に必要なフォーマットでデータを提供する。イメージ・センサー・チップ内に埋設されたアドレス制御装置は、アレイ内の必要なピクセルにアクセスするために必要な横および縦のアドレスを供給する。この改良型イメージ・センサーＩＣはまた、内蔵のエラー検出装置および修正機能を持っているので、改善されたより効率的なデータの取扱いを行うことができる。
【００１３】
【発明の実施の形態】
図１は、デジタル・カメラ１０の全ブロック・ダイアグラムを示す。イメージからの光は、レンズ１２を通り、イメージ・センサー・アレイ１４に入射する。このイメージ・センサー・アレイは、アドレス制御装置１６によって制御される。このアドレス制御装置は、イメージ・センサ・アレイを含む同じＩＣ装置に内蔵されている。アドレス制御装置は、制御ロジック１８に接続するための制御インターフェース２０を持っている。この制御ロジックは、専用制御ロジックであってもいいし、またはマイクロコントローラまたはデジタル信号プロセッサー（ＤＳＰ）のような汎用制御装置であってもいい。望ましい実施例においては、制御インターフェース２０は汎用バスを持っているので、制御ロジック１８からアドレス制御装置１６へメモリーマップした入力／出力を行うことができる。マスター制御ロジックは、制御インターフェース２０を通して、ＳＴＡＲＴ信号に反応してアドレス制御装置の動作をスタートする。
【００１４】
アドレス制御装置１６は、イメージ・センサー１４内のデータをアドレス指定するためにイメージ・センサー・アドレスを生成し、そのようなアドレスをアドレス信号ライン２２を通して、イメージ・センサーに送る。イメージ・センサー１４は、カラー・プロセッサー２７へ信号ライン２４を通して、８ビットでデータを出力することが望ましい。８ビットバイト／ピクセルは、ピクセルの輝度情報を送るために使用される。もちろん、この目的のためには、他のビット・サイズを使用することもできる。各ピクセルは、一つのカラー構成要素（例えば、赤、緑、青）に関する情報を運んでいるので、カラー・プロセッサー２７は、各ピクセル用の２４ビットのカラー値を得るために、数種類のピクセルの輝度を組み合わせる。カラー・プロセッサーは、直接デジタル信号を出力し、同様にデジタル・データをビデオ・データに変換するために、上記デジタル・データをＮＴＳＣまたはＰＡＬコンバータに送る。このビデオ・データは（図示していない）アナログ・ディスプレイを駆動するのに適している。デジタル・データ出力またはビデオ・データ出力のどちらを供給するかの選択は、マスター制御ロジック１８（例えば、汎用制御装置の場合）、または外部スイッチの設定（例えば、専用制御装置の場合）からのイネーブル信号３１により制御される。アドレス制御装置１６は、多くの構成で実現することができる。一つの構成方法としては、ランダム・アクセス・アレイ１４からラスター走査順でピクセルを出力するために、横および縦のアドレスを増大する一対のカウンターを使用する方法がある。図２は、上記のラスター走査順序を示す。もっと大きいセンサー・アレイを使用することもできるが、基本的なモードでの動作の理解の妨げとなるような無用な混乱を避けるために、位置が４８ある代表的なアレイについて説明する。
【００１５】
アレイは、横６列（Ｙ方向）縦８列（Ｘ方向）の６ｘ８の構成になっている。通常のシーケンス・モードの場合には、データの読みだしは、センサーの位置＃１から始まってＸ方向へと進み、センサー位置＃８へ行く。次の列の読みだしは、センサー位置＃９から始まり、Ｘ方向へと進み、＃１６へ行く。以降の列に対しても同様な順序で読みだしが行われ、センサー位置４８で終わる。このような一回の走査をフレームと呼ぶ。ラスター走査動作に対しては、アドレス制御装置１６は、以下に説明するように、出力ピクセルが正しい順序で出力されるように、イメージ・センサーに対して、正しい列および欄のアドレスを生成する。
【００１６】
図３について説明すると、図３は、イメージ・センサー１４に対して、固定のラスター走査順序を生成するための簡単な構成のアドレス制御装置３３である。このアドレス制御装置は、Ｘアドレスを生成するためのカウンタ３５とＹアドレスを生成するためのカウンター３７からなっている。Ｘアドレス・カウンター３５は、モジュロである欄の数を数える。この場合は、８である。Ｙアドレス・カウンター３７は、モジュロである列の数を数える。この場合は、６である。Ｘアドレス・カウンターが８になると、このカウンターはリップル・クロック（ＲＣ）ライン上にパルスを出力し、０に戻る。フレームの開始の時に、両カウンターを０にセットすると、各列の左側から始まるＸアドレス（Ｘアドレス＝２進法の０００）を生成するために、Ｘカウンターの数字を増大させながら、各列の右方向に移動する（Ｘアドレス＝２進法の１１１）。Ｘカウンター・カラー・プロセッサーのパルスはＹカウンター・クロックへ送られ、各走査線の終わりでＹアドレスを増大させる。アレイの一番上から（Ｙアドレス＝２進法による０００）始まって、アレイの一番下まで増大を続ける（Ｙアドレス＝２進法による１１０）。ＹカウンターはそのＲＣライン上にパルスを出力し、フレーム・ラスター走査が完了したことを表示する。多くのビデオ装置の場合には、これらのカウンターは、ラスター走査の順序でアレイを継続的に走査するために、それぞれ、各行および各フレームの終わりでＸおよびＹカウンターの表示を０に戻しながら、継続して計数を続けることができる。
【００１７】
簡単なラスター走査制御装置は、各フレーム毎に、全アレイを走査して、一定の順序でＸおよびＹアドレスを生成する。もっと高度のアドレス制御装置は、以下に説明するように、外部制御によりアレイの領域を出力する方法を含んでいる。
【００１８】
領域モード
領域モードにおいては、ピクセル領域の出力が行われる。この場合、領域とはアレイのサブセットのことである。上記領域内においては、ピクセルはラスター走査の順序で出力される。現在使用されているシステムはパン／チルト／ズーム機能付きのＣＣＤカメラ用のものであっても、ＣＣＤセンサーからのラスター出力を処理しなければならないために複雑な構成の外部制御装置を使用している。これらシステムは、必要な領域を出力するためには、ＣＣＤからのラスタ−走査データをフォーマットし直さなければならない。反対に、本発明によるランダム・アクセス・アレイを使用すれば、イメージ・センサーＩＣ自身内で正しい列および欄のアドレスを生成することにより、必要なピクセルをアクセスすることができる。また、以下に説明するように、現在出力中の領域を、自動利得制御（ＡＧＣ）のような他の目的に使用することもできることに注目されたい。
【００１９】
図４について説明すると、アドレス制御装置２６は、イメージ・センサー１４のために、データ・アドレスを通常の順序で生成するためのものである。このアドレス制御装置は、二つの部分、すなわち、Ｘアドレスを生成する部分と、Ｙアドレスを生成する部分とからなっている。これら二つの部分は、実質的に同じものであり、それぞれのカウンターのＣＬＫを駆動するのに使用される信号と、負荷制御信号が異なるだけである。
【００２０】
Ｘアドレス部分は、二つの制御入力ＣＬＫおよびＬＯＡＤを持つカウンター３２を持っている。ＣＬＫ入力は、システムＣＬＯＣＫ信号に接続している制御ライン３４により駆動される。ＬＯＡＤ入力は、ＯＲゲート３６の出力によって駆動される。ＯＲゲート３６の出力が論理ＯＮＥに送られると、ＸＳＴＡＲＴレジスター６０に記憶されている数値は、カウンター３２にロードされる。カウンター３２の出力４０は、４２でＸスタートレジスター６０およびＸの長さレジスター４６の合計値４４と比較される。カウンター３２の表示は、クロック信号３４の各クロック・パルス毎に一つずつ数値が増大する。（論理ＯＮＥが）作動状態にある場合には、コンパレータ４２の出力４６は、Ｘの長さレジスター４６の数値による決定に従って、Ｘアドレスの出力４８がＸスタートの最初の数値から順次増大し、最後のＸアドレス値を含んでいることを表示している。Ｘの長さレジスターの数値は、Ｘ方向のシーケンシャル・アドレスの数値を表示している。コンパレータ４２の出力４６は、ＯＲゲート３６の一つの入力と一緒になり、作動状態にある場合には、カウンター３２にＸスタート・レジスター６０内に記憶されている数値を再びロードする。これにより、カウンター３２は、イメージ・センサー内のピクセルの次の列を処理するために、Ｘスタート値で実際にリセットされる。コンパレータ４２の出力はまた、Ｙ位置においてカウンター５０のＣＬＫ入力と一緒になる。このようにして、カウンター５０の表示は、次の列を走査するためＹアドレスを増大するために、Ｘ方向の各走査が完了する度に増大する。Ｙ部分の残りの部分も、Ｘ部分と同じ動作をするが、Ｙスタート５２およびＹの長さ５４レジスターの数値を使用する。Ｘアドレス４８およびＹアドレス５６は、図１の信号ライン２２を通して、イメージ・センサー・アレイに接続される。
【００２１】
このアドレス制御装置２６は、Ｘスタート，Ｙスタート，Ｘの長さおよびＹの長さレジスターの数値により定義されるアレイの任意の四角い領域のために、ラスター走査の順序でＸおよびＹアドレスを生成する。図２に示す全イメージ・アレイをラスター走査するために、Ｘスタート値およびＹスタート値は、ともに２進法で「０００」（最初の走査のための最初のアレイ位置）であり、Ｘ長さ値およびＹＬ長さ値は２進法でそれぞれ「１０００」および「０１１０」である。図４に示す特定の制御装置の場合には、上記数値はレジスターに「ハードワイヤ」されているが、このような制限はこの例を簡単にするためだけのものである。外部からロードされるレジスターつきの制御装置については後で説明する。
【００２２】
図２に示すイメージ・アレイの一部分だけを出力したい場合には、Ｘスタート，Ｙスタート，Ｘの長さおよびＹの長さレジスターにイメージ・アレイのラスター走査を完全に行うために必要な数値以外の数値をロードすることができる。例えば、（ピクセル２１、２４、４５および４８で囲まれている）アレイの右下隅の１６番目のピクセルを出力したい場合には、Ｘスタート・レジスターは２進法の数値「１００」を含み、Ｙスタート・レジスターは２進法の数値「０１０」を含み、Ｘの長さおよびＹの長さレジスターは２進法の数値「１００」を含んでいる。このように、Ｘスタート，Ｙスタート，Ｘの長さおよびＹの長さレジスターにイメージ・アレイの必要とする領域に対応する数値を入力することによって、イメージ・アレイの任意の四角いピクセル領域を出力することができる。
【００２３】
図４および図５により簡単なアドレス制御装置の例を示す。このアドレス制御装置は、図４の制御装置のＸの長さおよびＹの長さレジスターの代わりに、Ｘストップ・レジスター３９とＹストップ・レジスター４１を使用している。Ｘストップ・レジスターの数値は、図４の合計の数値４４であるＸスタート・レジスターの数値とＹスタート・レジスターの数値の合計に等しい。同様に、Ｙストップの数値は、図４の合計４５であるＹスタート・レジスターとＹの長さレジスターの数値の合計に等しい。これはアドレス制御装置を簡単にしたものであるが、以下に説明するように、ある種の用途の場合には、融通性に乏しい。
【００２４】
図４のアドレス制御装置２６の動作を初期化するには、能動（論理ＯＮＥ）ロード信号を５８で入力する。それにより、Ｘカウンター３２およびＹカウンター５０にレジスター６０および５２にそれぞれ記憶されていたスタートの数値がロードされる。このロード信号は、イメージ処理を開始するためにユーザがボタンを押して入力することもできるし、専用制御装置から入力することもできる。図６の２８に上記専用制御装置を示す。この専用制御装置は、入力として、外部スイッチまたはボタン（または、その代わりにマスター制御装置／プロセッサ）によって駆動されるスタート信号、図４のアドレス制御装置１６によって駆動される完了信号、およびシステム・クロックが生成するシステム・クロック信号を持っている。この専用制御装置２８の出力はロードとクロックがあり、ロードは図４のロード入力に接続していて、クロックは図４のクロック入力に接続している。スタート、完了およびシステム・クロック信号から、ロード信号およびクロック信号を生成するには、種々のタイプの専用制御装置が可能であるが、図７に望ましい専用制御装置を示す。この専用制御装置は、できれば、アドレス制御装置／イメージ・センサーの組合わせと一緒に埋設することが望ましく、上記ＩＣのフロント・エンドと見なすことができる。
【００２５】
図７について説明すると、埋設した全縁部の制御装置２８は、機能としてはテキサス・インスツルメンツ社のＳ＊−Ｒ＊フリップ・フロップ６４である７４ＬＳ１２３、機能としてはテキサス・インスツルメンツ社の７４ＬＳ２７９、およびＮＡＮＤゲート６６に類似している単安定マルチバイブレータ（ワンショット）からなる。スタート信号は、ワンショット６２の入力Ａと一緒になり、またフリップ・フロップ６４び入力Ｓ＊と一緒になる。スタート信号が能動（論理ワン）になると、出力Ｑで正のパルスが発生し、ロード信号は図４のアドレス制御装置１６のロード入力に伝送された正のパルス信号を持つ。この能動ハイ論理レベルは、既に説明したように、図４の制御装置へのＸスタートおよびＹスタートの最初の数値のロードを開始する。始動入力の論理０も同様に、フリップ・フロップ６４の入力Ｓ＊に接続され、Ｑ出力を論理ＯＮＥにセットする。このＱ出力は、ＮＡＮＤゲート６６と一緒になり、システム・クロック入力信号はＮＡＮＤゲートを通ってクロック出力ラインへ行く。このクロック出力信号は、図４に示すアドレス制御装置に対して、クロック信号を供給する。アドレス制御装置２６（図４）がシーケンス走査を完了すると、完了信号を生成し、この完了信号は専用制御装置２８の完了入力信号と一緒になる。完了ライン上の能動（論理ＯＮＥ）信号により、フリップ・フロップ６４はリセットされ、Ｑ出力は論理０へ行き、クロック出力信号６５を使用禁止にする。スタート信号の次の始動により、新規の走査シーケンスを開始することができる。フロントエンド制御論理とアドレス制御装置の組み合わせを図８の３０に示す。ある領域を出力するためには、汎用制御装置を使用して、アドレス制御装置にＸスタート，Ｙスタート，Ｘの長さおよびＹの長さの数値を供給することが望ましい。それにより、アドレス制御装置は、特定の領域をそれ自身で出力できるように、イメージ・センサーに対するアドレスを生成する。
【００２６】
図９について特に説明すると、マイクロコントローラまたはデジタル信号プロセッサー３８が、図６の専用制御装置２８の代わりに使用されている。このマイクロコントローラ／ＤＳＰは、始動、完了およびシステム・クロックの類似の入力信号を使用して作動するが、異なる出力を発生する。汎用プロセッサー・バスインターフェースが、このインターフェースを通して、データ、アドレスおよび制御信号を送るために、プロセッサー３８とアドレス制御装置との間で使用されている。アドレス制御装置は、バス６２上の特殊なアドレス出力をアドレス制御装置に書き込んだり、そこから読み出したりする種々のレジスターをアドレスするためのものであるという点から言って、メモリーマップされていると見なすことができる。汎用制御装置と一緒に使用されるアドレス制御装置を図１０に示す。制御装置のＸ部分およびＹ部分は、図４の制御装置２６のＸ部分およびＹ部分と、構成および動作の両方において類似していることが理解できると思う。しかし、Ｘスタート３８，Ｘの長さ４６，Ｙスタート５２およびＹの長さ５４のレジスターが固定アレイ・サイズ数値にハードワイヤされているのとは異なって、これらのレジスターはプログラム可能である。特定のレジスターに書き込むデータ値は、制御装置３８からデータ・ラインを通り、インターフェース６２を介して供給される。特定のレジスターに対するアドレスは、同様に、制御装置３８からアドレス・ラインを通り、インターフェース６２を介して供給される。書き込み制御信号のパルスは、制御装置３８からインターフェース６２を介して送られる。この書き込み制御信号は、レジスター（ＸＳ，ＸＬ，ＹＳ，ＹＬ，Ｘスタート、Ｘの長さ，Ｙスタート，Ｙの長さ）およびＸカウンター３２用のロード信号を生成するために、３−８ビットデコーダーの出力と一緒になる。アドレスの３ビットだけが、３−８ビットデコーダーに供給され、８の使用可能な（実際には、５のレジスターだけが使用される）レジスターの中の一つが選択的に使用可能になる。デコーダー６６の出力は、書込み信号と一緒にＮＡＮＤゲートでそれぞれ合流する。これらＮＡＮＤゲート６７−７０からの出力は、各レジスターＸＳ，ＸＬ，ＹＳおよびＹＬの（ロ−と見なされている）ロード入力と一緒になる。ＮＡＮＤゲート７１の出力は、Ｘスタート，Ｘの長さ，ＹスタートおよびＹの長さレジスターをロードするのに使用される。ＸＳ，ＸＬ，ＹＳおよびＹＬレジスターは、それぞれデータ・ポートでデータ値を提示し、アドレス・ポートでレジスター位置を提示し、書き込みハイのパルスを出して、データ・ポートからロードされる。Ｘスタート，Ｘの長さ，ＹスタートおよびＹの長さレジスターは、アドレス・ポートで正しいアドレスを提示し、書き込みパルスをハイにして、ＸＳ，ＳＬ，ＹＳおよびＹＬレジスターからロードされる。このように、これらレジスターは、その組み合わせによって、ダブル・バッファーを形成する。Ｘスタート，Ｘの長さ，ＹスタートおよびＹの長さレジスターのロードについて説明したが、これと類似の方法で、Ｘカウンタ−３２も、インバータからロード信号を受け取ると、ＮＡＮＤゲート７１および遅延素子７２を通して、（Ｘスタート・レジスター３８の数値によって）ロードされる。
【００２７】
既に説明し、図１１の組合わせで図示したように、汎用制御装置３８は、領域を指定するために、アドレス制御装置３６のＸスタート，Ｘの長さ，ＹスタートおよびＹの長さレジスターをロードする。これらレジスターに任意の数値をロードすると、結果として、プログラム可能な制御装置／センサーＩＣ内にその数値がロードされる。アドレス制御装置３６は、内部でイメージ・センサーのアドレスを生成して、ラスター走査の順序でその領域を走査する。イメージ・アレイの任意の四角い領域を、この方法で出力することができる。
【００２８】
場合によっては、出力用に予め定めた領域の一つを選択することが役に立つ場合がある。例えば、自動利得制御装置（ＡＧＣ）の動作は、場合によっては、イメージの予め定めた領域からのピクセルの重みをつけた平均を使用して行われる。この場合、汎用制御装置３８は、Ｘスタート，Ｘの長さ，ＹスタートおよびＹの長さレジスターに適当な数値をロードすることによって、アドレス制御装置３６にこれら領域のそれぞれを指定する。もっと複雑な制御装置は、内部にこれら数値を記憶するＲＯＭを持っている。この制御装置は図１０の制御装置を発展させたもので、ＲＯＭ７８はおよびマルチプレクサ７６は、領域の境界を、データおよびアドレス・ラインを通して外部ソースからロードすることができるよう、またはＲＯＭアドレスとしてデータ・ラインを使用して、ＲＯＭ７８から直接ロードすることができるように、追加されている。Ｉ／Ｅ（内部／外部）ラインは、ＲＯＭから領域を選択するものと見なされる。
【００２９】
四角でない領域を必要とする場合には、領域モード制御装置を各走査ラインに対していったんロードすることができる。これにより、Ｘスタートをラインの始めとして指定し、Ｘの長さをラインの終わりとして指定することにより、任意の形の領域を出力することができる。Ｙの長さ＝１である場合には、一本のラインだけが走査される。この方法だと、ライン一本ずつを使用して領域を定義するには、外部ソースから多くのアドレスをロードする必要があるが、四角領域を出力するのに使用した同じ制御装置により、（円のような）任意の領域を出力することができる。
【００３０】
欠陥のあるピクセルの代替としての正常なピクセルの使用
イメージ・アレイは、非常に密度の高い回路レイアウトになっているので、処理に欠点があると、しばしばアレイの中に欠陥のあるピクセルが生じる。これらピクセルは通常、グランドかまたは電源値かのある数値に固定されている。このことは、出力の前に数個のピクセル値が一緒に加え合わされるＣＣＤイメージャの場合には、問題にならない場合が多い。
【００３１】
しかし、各ピクセル値が個々に出力されるイメージャの欠点は、容易に認識できるので、受け入れることはできない。アレイ内の数個のピクセルだけが検出される場合には、そのようなイメージャを使用することはできない。この歩どまりの損失を避けるには、小数のピクセルしか検出されず、そのため装置のコストが低い場合には、アドレス制御装置は、欠陥のあるピクセルを検出し、欠陥のあるピクセル値の代わりに、周囲の正常なピクセル値を使用するように改善される。
【００３２】
これらの欠陥のあるピクセル値は、しばしば、正常なピクセル値の範囲を越えているので、一組のコンパレータで欠陥のあるピクセルを検出することができる。ピクセル値がある正常な最大限界値より高いか、正常な最低限界値より低い場合には、ピクセルは機能していないと見なされる。モノクロのイメージャの場合には、代わりのピクセル値を得るために、欠陥のあるピクセルの代わりに付近のピクセルを使用することができる。アドレス制御装置はピクセルアドレスを生成しているので、欠陥のあるピクセルに対して付近のアドレスを生成し、欠陥のあるピクセル値の代わりに正常なピクセル値を使用することができる。もちろん、付近のピクセルは、必要とする数値とは若干異なる数値を持っているかも知れないが、大部分のイメージの場合、検出できないほど近接した数値を持っている。付近のピクセルは、欠陥のあるピクセルのラインと同じラインから最も容易に入手できる。なぜなら、代わりのピクセルを使用する場合に避けなければならない（ＲＯＭまたはＲＡＭの場合のように）ラインの変更の伴う隠れた欠陥があるからである。このように、モノクロの場合には、欠陥ピクセルの左右にある機能しているピクセルを代わりに使用する。ピクセルのＸアドレスを一つ増やすのは、Ｘカウンタ−の数値を増大させるか、または加算機を使用して容易に行うことができる。図１３に示す加算機を使用するのが望ましい。なぜなら、このような加算機はカウンタ−の正常な動作を妨害しないからである。モノクロ・モードの場合、「オフセット」は「１」である。コンパレータ８０または８２のいずれかが欠陥のあるピクセルを検出した場合には、ＯＲゲートの出力はハイになり、マルチプレクサ８６は加算機８８の出力をセンサー・アレイのＸアドレスとして選出する。このような動作は、欠陥のあるピクセル値が入手できた後で行われるので、必要な場合代わりのピクセルが使用できるように、その時間をピクセル読みだし動作の中に含めなければならないことに注意してほしい。通常のビデオ速度の場合には、このわずかな時間の遅れは問題にならない。
【００３３】
カラー・イメージャを使用する場合には、代わりのピクセルを使用した場合、付近のピクセル値により色が悪くなる場合がある。カラーピクセルはその上に三つまたは四つのカラー・フィルターの中の一つを持っている。そのため、アドレス制御装置は欠陥のあるピクセルの色を決定し、同じ色の機能しているピクセルを代わりに使用しなければならない。このことは、アレイ中のカラー・フィルタ−のパターンを考慮に入れて行われる。例えば、図１４に示すように、アレイが対角線方向の赤、緑および青のカラー・フィルタ−・パターンを持っている場合には、同じカラー・フィルタ−を持つ欠陥のあるピクセルのラインと同じライン上にある一番近いピクセルは、何時でも右か左の三番目のピクセルである。このように、図１３のアドレス制御装置は「オフセット」＝「３」で使用される。カラー・フィルタ−が（垂直方向または対角線方向に）ストライプ状に配置されていない場合には、もっと複雑なＸアドレス計算が必要である。しかし、人間の色に対する知覚に対しては、、対角線方向のフィルタ−・パターンが望ましく、制御装置のこの簡単な修正は望ましい方法である。
【００３４】
パンまたはチルト動作
パンおよびチルト機能は、アレイを横切って、出力中の領域を水平または垂直方向にそれぞれ移動することである。マスター制御装置は、継続してパンまたはチルト動作が行われているように見せるために、フレーム走査の間のスタート位置を少し動かして、パンまたはチルト動作のために、新しいアドレスを図１０または図１２のアドレス制御装置へ送る。代わりに、アドレス制御装置は、外部パンまたはチルト・コマンドに基づいて新しいアドレスを計算する。このアドレス制御装置を図１５に示す。このアドレス制御装置、ＸスタートおよびＹスタートレジスターの数値を内部的に増大できるように、図１０および図１２のアドレスを少し修正したものである。図１５の場合、新しい入力９０および９２は加算され、Ｘスタート・レジスターの数値の内部での増大を制御するのに使用される。図１６Ａは、Ｘスタート・ブロック６０の実行を示す。（Ｙスタート・ブロック５２は、図１６Ｂに示すように、類似の構成を持っている。）パン動作は、パン制御信号が９０にあると判断されたときに行われる。パン入力があると、Ｒ／Ｌ〜 ライン９２がハイの場合には、Ｘスタート値に加算し、Ｒ／Ｌ〜 ラインがローの場合には、Ｘスタート値から減算して、Ｘスタート・レジスターの数値を増大する。同様に、図１６Ｂに示すように、ＴＩＬＴ９４およびＵ／Ｄ〜 （アップ／ダウン）９６が、チルト動作のためにＹスタート値を増大するために使用される。増大の数値は、図１６Ａ−Ｂに示す距離値によって決定される。この数値は固定値または変数でレジスターに記憶される。速いまたは遅いパンまたはチルト動作は、距離値を変更して行うことができる。
【００３５】
ズーム機能
ズームインとは、ピクセルおよびラインを反復して、センサー・アレイのある領域を拡大することであり、ズームアウトとはピクセルおよびラインをスキップしてアレイのある領域を縮小することである。整数で表せない拡大または縮小係数でのズーム動作を行うには、カメラ信号プロセッサー内でもっともうまく行うことができる内挿または１０分の１削減のために信号処理を行わなければならない。しかし、拡大または縮小係数が整数であるような単純なズームは、アドレス制御装置内で行うことができる。図１７はズーム機能を持つアドレス制御装置を示す。Ｎカウンタ−９８および１００による割算が、ＸおよびＹアドレス・カウンタ−３２および５０のクロック入力を送るのに使用される。正常な作動時においては、Ｎ＝「１」である。係数で拡大を行う場合には、カウンタ−はクロック周波数をＮで割る。例えば、ＸＭＡＧ＝［２］である場合には、Ｘカウンタ−は外部クロックの半分の割合で増大する。これにより、２クロック・サイクルにわたってＸアドレス値は一定に保たれる。この動作はある列の各ピクセルに対して反復して行われる。同様に、ＹＭＡＧ＝［２］の場合には、Ｙアドレス・カウンタ−５０ＣＬＫ入力は、Ｘアドレス・カウンタ−比較ライン４６が生成したパルスの半分しか受け取らないことになる。その結果、Ｘアドレス・カウンタ−がラインを二回走査し、ラインの反復が行われている間、Ｙアドレスは一定のままで変化しない。イメージを縮小するには、ＸＭＡＧおよびＹＭＡＧを「１」にセットする。その結果、カウンタ−・クロックは影響を受けないが、ＸおよびＹカウンタ−は縮小係数Ｍに従って計数を行なわなければならない。
【００３６】
「１」以外で係数の増大を行う方法は、デジタル設計では周知のことである。図１７においては、ＸおよびＹアドレス・カウンタ−はＸ縮小およびＹ縮小入力を通して各カウンタ−に入力される任意の数Ｍに従って計数することができる。
【００３７】
ブロック移送モード
ブロック移送の場合には、ピクセルのブロックが、外部プロセッサーの要求に従って、順次または個々にセンサー・アレイから出力される。（ＭＰＥＧ，ＪＰＥＧ，Ｈ．２６１のような）ブロックをベースとする圧縮方法の場合には、ピクセル・ブロックは、みんな同じサイズで、一定の順序で処理される。図１９はその順序を示す。図に示すように、センサー・アレイ１４は、６個の個別の互いに重なりあっていないブロック１−６を持っている。各ブロックは、複数の個々のセンサー位置からなる。センサー・アレイ１４が図２に示す同じ代表的なアレイである場合には、各ブロックは８個の個々のセンサーからなる。
【００３８】
単一ブロックからのデータの読み出しは、領域モードの場合に使用したのと同じ方法で行われる。ある意味で、ブロック移送モードは、多重領域アドレス・モードと考えることができる。前に領域モードを説明したときに、多重領域アクセス回路について説明した。図１２に示すこの回路は、ブロック移送モードを実行する際に使用することができる。各ブロックのＸスタート，Ｘの長さ，ＹスタートおよびＹの長さ値をＲＯＭ７８に入力することによって、センサーは１ブロックを一度に読み込むことができる。
【００３９】
ブロック・モード・アドレス制御装置により、他の実行も行うことができる。例えば、ＲＯＭおよびＲＯＭにアクセスするために使用される関連回路の代わりに有限状態機械を使用することができる。有限状態機械は、必要に応じて、ＲＯＭに前もって記憶されている数値を単に計算するだけである。
【００４０】
ＲＯＭまたは有限状態機械の代わりに、Ｘスタート，Ｙスタート，Ｘの長さおよびＹの長さ値を生成するために汎用制御装置を使用することができる。図１９は、Ｘスタート，Ｙスタート，Ｘの長さおよびＹの長さ値を生成するためのプログラムを示すフローチャートである。
【００４１】
図１９について説明すると、図に表示されている表記法について一つ注意してもらいたいことがある。図１９はソフトウェア・プログラムのフローチャ−トを示しているので、（小文字で）変数名が使用されている。大文字の名称が使用されている場合には、ハードウェア・レジスターに対応している。例えば、ｘｌｅｎｇｔｈは、プログラムの変数の名称であるが、ＸＬＥＮＧＴＨは、ハードウェア内の対応するバッファーの名称である。このように、汎用プロセッサーが変数を特定の数値にセットした場合には、対応するハードウェアのレジスターは影響を受けない。ハードウェアのレジスターを操作するには、Ｉ／Ｏ操作を行わなければならない。
【００４２】
処理に最初のステップは、ある変数を初期化することである。変数、ｘｓｔａｒｔおよびｙｓｔａｒｔが、読み込む最初のブロックの位置に対応する数値にセットされる。同様に、ｘｌｅｎｇｔｈおよびｙｌｅｎｇｔｈが、処理されるブロックのサイズにセットされる。この実行の際には、すべてのブロックは同じサイズであると見なされる。このことは、ｘｌｅｎｇｔｈおよびｙｌｅｎｇｔｈは一定のままで変化しないことを意味する。これらの初期値は、図１０の適当なレジスターにロードされる。適当なアドレスを図１０の制御装置の入力にセットし、書き込み信号を生成すると、読みだしプロセスがスタートする。
【００４３】
アドレス制御装置が、ブロック内のセンサーを読み出すためにアドレスを生成している間、プログラムは継続している。ブロックを図１８で指定した順序にしなけらばならない場合には、次のステップはｘｓｔａｒｔ位置を次のブロックのｘｓｔａｒｔ位置に増大することである。隣接する重なりあっていないブロックを必要とする場合には、ｘｓｔａｒｔの数値の増大量は、変数ｘｂｏｆｆｓｅｔにより与えられ、ｘｌｅｎｇｔｈにセットされる。アレイの終わりまできたかどうかを確認するために、増大したｘｓｔａｒｔはｘｍａｘと比較される。ｘｍａｘの数値は、アレイの幅より１だけ少ない。なぜなら、「より大」条件に基づいて判断が行われるからである。
【００４４】
ｘｓｔａｒｔの数値がｘｍａｘより小さいか（または、等しい）場合には、ｘｓｔａｒｔはブロックに対して有効なスタートアドレスであることを意味する。このアドレスは、次のブロックを読み込むために、ｘｓにロードされる。ｘｓｔａｒｔ値がｘｍａｘより大きい場合は、ブロックの「列」の中に使用できるブロックがないことを意味する。次の「列」を処理するには、二つのことを行わなければならない。第一に、ｘｓｔａｒｔ変数を初期値にリセットすること。第二に、ｙｓｔａｒｔ変数をｙｂｏｆｆｓｅｔだけ増大すること。これはｘｂｏｆｆｓｅｔに類似している。ｘｂｏｆｆｓｅｔと同様に、ｘｙｏｆｆｓｅｔは隣接する、互いに重なりあっていないブロックの場合のｙｌｅｎｇｔｈに等しい。
【００４５】
ｙｓｔａｒｔ変数を増大した後、増大した数値がブロックに対する有効なスタートアドレスであるかどうかをチェックしなければならない。このチェックは、ｘｓｔａｒｔに対して使用したのと類似の方法で行われる。ｙｓｔａｒｔのチェックに使用される変数はｙｍａｘである。  ｙｓｔａｒｔが、ｙｍａｘより小さいか、または等しい場合には、ｙｓｔａｒｔは有効であり、ｙｓｔａｒｔおよびｘｓｔａｒｔの両方が、それぞれＹＳおよびＹＸレジスターにロードされる。ｙｓｔａｒｔがｙｍａｘより大きい場合には、完了である。
【００４６】
読み込むブロックがまだある場合には、汎用制御装置は待ちの状態になる。この待ち状態の場合には、（図１１に示すように）完了信号のモニターが行われる。完了信号がアクティブになると、汎用制御装置にアドレス制御装置がブロックの読み込みを完了したという通知が行われる。新しいアドレス情報がロードされ、次のブロックに対する読みだしプロセスが再度スタートする。
【００４７】
分かりやすくするために、図１８は、ｉ）等しいサイズの、ｉｉ）重なっていない、ｉｉｉ）センサー・アレイ１４に正確に適合している、ブロックを使用している。しかし、ブロック・モードをこのように制限する必要はない。読み込む各ブロックに対して、異なるＹの長さおよびＸの長さを指定することにより、異なるサイズのブロックを容易に入手することができる。これらの長さは、必要に応じて、メモリーに記憶されアクセスされる。または、ブロックの順序とブロックのサイズに機能的な関連がある場合には、汎用制御装置によりサイズの計算を行うことができる。
【００４８】
対応するブロック長さより小さいブロック・オフセット値を使用すれば、重なりあっているブロックを入手することができる。例えば、Ｘ方向にブロックを重ねようとするには、ｘｂｏｆｆｓｅｔ値をＸの長さより小さくするだけでいい。同様に、Ｙ方向にブロックを重ねようとする場合には、ｙｂｏｆｆｓｅｔ値をＹの長さより小さくするだけでいい。ブロックのオフセットを対応するブロックの長さより大きくすることによって、ブロックの間に隙間を作ることもできることに注意してほしい。
【００４９】
ブロックの大きさがアレイの面積より小さい場合には、アレイに正確に適合しないブロックは問題なく取り扱うことができる。事実、領域モードは、ブロックがアレイ内のすべてのピクセルを含まない一例である。ブロックの面積がアレイの面積より大きい場合には、図２０ＡおよびＢに示す回路を使用して処理することができる。
【００５０】
図２０Ａについて説明する。（図２０Ｂに示す動作は、Ｘアドレスの代わりにＹアドレスをチェックする点が違うだけで、あとは同じである。）ＸＭＡＸ値が、センサーに与えることができる許容される最大のＸアドレスであると仮定しよう。アドレス制御装置により供給されるＸアドレスは、ＸＭＡＸから差し引かれ、Ｘオーバーフロー信号（アクティブ・ハイ）が生成する。このオーバーフロー信号は算術計算の結果の符号ビットに過ぎない。符号ビットが０（ロー）である場合には、ＸアドレスはＸＭＡＸより小さいか、等しく、直接アレイに行くことができる。符号ビットが１（ハイ）である場合には、ＸアドレスはＸＭＡＸより大きく、ＸＭＡＸはセンサー・アレイへ行く。これにより、必要なサイズのブロックを作るために、必要な好きな回数だけ最後の列を効果的にコピーすることができる。
【００５１】
オーバーフロー信号は、センサーからのデータを修正するためにも使用することができる。より詳細に説明すると、コピーした列が必要ない場合には、コピーしたデータを効果的に削除するために、オーバーフロー信号を使用することができる。
【００５２】
図２０Ａに示す回路は、ＸＭＡＸが２（−１）の累乗でない場合に非常に役に立つ。ＸＭＡＸが２の累乗に基づくものである場合には、Ｘアドレスは０への回帰により自己制限が行われる。
【００５３】
アドレス制御装置は、マスター制御装置と協調して作動することもできる。センサーの出力をカラー・プロセッサー（図１の２７）へ送る代わりに、デジタル信号プロセッサーのマスター制御装置（図１の１８）へ送り返すことができる。例えば、自動露出制御または自動利得制御が行われている場合には、アドレス制御装置は、露出の計算を行うために、イメージ・センサーをイメージの特定の領域を通過させて、信号プロセッサーに送ることができる。イメージ間でこのよう機能を使用することができれば、（すなわち、一つのイメージからのデータを次のイメージの正しい利得を得るために使用することができれば、）アドレス制御装置は、イメージ内の非常に明るい領域または非常に暗い領域の跡をたどることができ、これら領域にアクセスすることができ、信号プロセッサーに最大および最低のピクセル・データを使用して、計算させることができる。このような性質の簡単なピクセル比較を行うある種の頭脳を組込むことにより、信号プロセッサーとアドレス制御装置の間をピクセル・アドレスが数回行ったり来たりするのを防止することができる。
【００５４】
要約すると、センサー・チップの中にアドレス制御装置を組み込むことにより下記の利点を得ることができる。第一に、センサー・チップおよびセンサー・チプと通信するチップ（すなわち、カメラＤＳＰ）上の必要なピンの数を減らすことができる。これにより、コストを下げ、（ＩＯの動作を減らすことにより）電力を削減することができる。第二に、圧縮（すなわち、ＪＰＥＧ圧縮に対して８ｘ８ブロック）または他の操作に適しているフォーマットでセンサーからピクセル・データを供給することができる。この予めフォーマットされた出力により、ラスター走査を他のフォーマットに変換するために、フレーム・バッファーまたはライン・バッファーを使用しないですむ。これによりシステム・コストを削減できる。第三に、センサー外部の必要な頭脳を減らし、自分自身のカスタム・チップを使ってセンサーをより容易に使用することができる。最後に、電子カメラ内の種々のサブシステム間、および電子カメラと電子カメラと通信する他のシステムとの間で交換しなければならないデータ／制御情報の量を減らすことにより、システム全体の処理能力が改善される。
【００５５】
本発明の望ましい実施例を図示し、説明してきたが、本発明が本明細書に開示した正確な構造に限定されるものではなく、添付の特許請求の範囲に定義する本発明の範囲から考えられるすべての変更および修正の対して権利の留保を行うことを理解されたい。
【図面の簡単な説明】
【図１】デジタルカメラの全システム・ブロック・ダイアグラムである。
【図２】代表的イメージ・センサー・アレイである。
【図３】シーケンシャル・アドレスを生成するための簡単な回路である。
【図４】通常のシーケンス・アドレス制御装置である。
【図５】図４の通常のシーケンス・アドレス制御装置の他の実施例である。
【図６】専用マスター制御装置のインターフェースである。
【図７】専用マスター制御装置の内部構造である。
【図８】専用マスター制御装置とアドレス制御装置との組合わせである。
【図９】汎用マスター制御装置である。
【図１０】汎用マスター制御装置と一緒に使用するためのアドレス制御装置である。
【図１１】汎用マスター制御装置とアドレス制御装置との組合わせである。
【図１２】ＲＯＭを持つアドレス制御装置である。
【図１３】センサー・アレイからの間違ったピクセル値を検出するアドレス制御装置である。
【図１４】カラーを処理することができるセンサー・アレイの特殊なレイアウトである。
【図１５】パンおよびチルト機能を持つアドレス制御装置である。
【図１６】図１５のＸスタートおよびＹスタート用の内部機能を示す。
【図１７】図１５のＸスタートおよびＹスタート用の内部機能を示す。
【図１８】ズーム機能をを持つアドレス制御装置である。
【図１９】複数のブロックに分割されたイメージ・センサーを示す。
【図２０】プログラマブル・イメージ・センサーからのデータをブロック・モードで移送するためのマスター制御装置の動作のフローチャートである。
【図２１】イメージ・アレイのサイズより大きいブロック・サイズのブロック・モードでの移送をサポートする回路である。
【図２２】イメージ・アレイのサイズより大きいブロック・サイズのブロック・モードでの移送をサポートする回路である。
【図１】
0004246271.tif 000002
【図２】
0004246271.tif 000003
【図３】
0004246271.tif 000004
【図４】
0004246271.tif 000005
【図５】
0004246271.tif 000006
【図６】
0004246271.tif 000007
【図７】
0004246271.tif 000008
【図８】
0004246271.tif 000009
【図９】
0004246271.tif 000010
【図１０】
0004246271.tif 000011
【図１１】
0004246271.tif 000012
【図１２】
0004246271.tif 000013
【図１３】
0004246271.tif 000014
【図１４】
0004246271.tif 000015
【図１５】
0004246271.tif 000016
【図１６】
0004246271.tif 000017
【図１７】
0004246271.tif 000018
【図１８】
0004246271.tif 000019
【図１９】
0004246271.tif 000020
【図２０】
0004246271.tif 000021
【図２１】
0004246271.tif 000022
【図２２】
0004246271.tif 000023