(57)【要約】【課題】単純な回路構成で階層的処理ができるパターン認識装置を提供する。【解決手段】同一の入力に対しそれぞれ異なる１つの特徴を検出するための複数の検出処理手段１０４１、１０４２、・・・と、検出された複数の特徴を処理結果毎に空間的に統合する複数の統合処理手段１０５１、１０５２、・・・と、検出結果を保持する複数の検出メモリ１０７１、１０７２、・・・と、統合処理結果を保持する複数の統合メモリ１０１１、１０１２、・・・と、所定のタイミングで所定の検出処理手段と統合メモリが接続される共有データ線１０３０と、それぞれ所定の検出処理手段と統合処理手段と検出メモリとが接続される複数の局所データ線１０６１、１０６２、・・・とを有し、統合処理手段に複数の検出メモリから検出処理結果を入力し、統合メモリから統合処理結果を複数の検出処理手段に入力するようにし、検出メモリ及び／または統合メモリに強誘電体材料を用いる。【選択図】        図１
2004157754.tif 000002
【特許請求の範囲】
【請求項１】
入力信号の中に含まれる所定のパターンを検出するパターン認識装置において、
同一の入力に対しそれぞれ異なる１つの特徴を検出するための複数の検出処理手段と、
前記複数の検出処理手段で検出された特徴を、各処理結果毎に、空間的に統合する複数の統合処理手段と、
前記検出処理手段の処理結果を保持する複数の検出メモリと、
前記統合処理手段の処理結果を保持する複数の統合メモリと、
所定のタイミングで所定の前記検出処理手段及び所定の前記統合メモリが接続される共有データ線と、
それぞれ所定の前記検出処理手段と前記統合処理手段と前記検出メモリとが接続される複数の局所データ線とを有し、
前記統合処理手段に、複数の前記検出メモリに保持された前記検出処理手段の処理結果を読み出して入力するようにし、
前記統合メモリに保持された前記統合処理手段の処理結果を読み出して、複数の前記検出処理手段に入力するように動作し、
前記検出メモリ及び／または統合メモリが、強誘電体材料を用いた素子から構成されているメモリであることを特徴とするパターン認識装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、神経回路網等の並列演算処理により、パターン認識・特定被写体の検出等を行なうパターン認識装置の回路構成に関するものである。
【０００２】
【従来の技術】
従来より、画像認識や音声認識の分野においては、特定の認識対象に特化した認識処理アルゴリズムをコンピュータソフトとして逐次演算して実行するタイプ、或いは専用並列画像処理プロセッサ（ＳＩＭＤ、ＭＩＭＤマシン等）を用いたハードウェアにより実行するタイプに大別される。
【０００３】
例えば専用並列処理プロセッサに関しては、特開平６−６７９３に開示される物体識別装置は、画像処理プロセッサユニットを複数用意し、それらのプロセッサユニットに搭載されているＤＳＰで演算処理を行い、それらの複数の結果を別のユニットに転送して、物体識別を行なっている。例えば、画像を複数の領域にわけ、各プロセッサプロセッサで各領域の処理を並列に行ない、別のプロセッサユニットで物体の識別の推論をニューラルネットワークやファジイ制御を用いて行うものである。
【０００４】
また、ニューラルネットによる階層並列処理を行なうハードウェアとして、特許２６７９７３０号公報に開示される階層構造ニューラルネットは、単層のハードウェアを時分割多重化使用して多層化することを可能とする階層構造ニューラルネットのアーキテクチャであり、単層のハードウェアを時分割多重化使用して等価的に多層化することを可能とすることを目的とし、複数のニューロンモデルを相互に接続することにより形成されるニューラルネットにおいて、時分割多重化アナログ信号を外部からのデジタル重みデータとの積を生成し、かつその積を時分割的にコンデンサを介して加えることにより積分し、非線形出力関数を通した電圧を時分割的に出力することを可能とするニューロンモデルのユニットを複数設置して単層のユニット集合を形成する単層ユニット集合手段と、前記単層ユニット集合手段の出力を同じ単層ユニット集合の入力部に帰還する帰還手段と、前記単層ユニット集合手段から出力される各ユニットからのアナログ信号を時分割多重化し、さらに前記帰還手段を介して前記単層ユニット集合手段を時分割多重使用するための制御を実行する制御手段とを有し、単層構造のユニット集合手段を時分割多重使用することにより等価的に階層構造のニューラルネットを形成するように構成されている。
【０００５】
また、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｇａｔｅ  Ａｒｒａｙ）を用いたハードウェアとして、ＵＳＰ５８９２９６２で紹介されているプロセッサがある。このプロセッサは、各ＦＰＧＡにメモリを保持し、ＦＰＧＡでの処理結果をメモリに保持し、そのメモリの結果を読み出して、処理を行うものである。
【０００６】
【発明が解決しようとする課題】
上記、認識処理アルゴリズムを実行するハードウェアの従来例で示した、特開平６−６７９３に開示される物体識別装置では、各画像処理プロセッサユニットに割り当てられた領域に対して、さらにそれらを分割した小領域から元の領域へと数段階にわたる処理は可能であるが、処理されて得られた複数の結果に対し、さらにまた別の複数のプロセッサユニットで並列処理を行なうといった階層的処理を行なうことは出来なかった。また、処理の結果を読み出すことも出来なかった。さらに、各領域の結果を空間的に統合するということも出来なかった。
【０００７】
また、特許２６７９７３０号公報に開示される階層的ニューラルネットワークにおいては、層間結合を任意に可変制御する手段を有していないために実質的に実現可能な処理の種類が極めて限定的になるという問題があった。
【０００８】
また、ＵＳＰ５８９２９６２に開示されるＦＰＧＡ−ＢＡＳＥＤ  ＰＲＯＣＥＳＳＯＲでは、メモリに保持された中間結果を読み出すのに、複雑な配線が必要である。
【０００９】
そこで本発明の目的は、複雑な配線を用いずに単純な回路構成で、複数の処理手段で処理されて得られた複数の結果に対し、さらに複数の処理手段で並列処理を行なうといった階層的処理を行なうことが出来、また各処理の処理結果を空間的に統合することが出来、また各処理の結果を容易に読み出すことが可能なパターン認識装置を提供することである。
【００１０】
【課題を解決するための手段】
そこで、上記目的を実現するために、本発明によれば、入力信号の中に含まれる所定のパターンを検出するパターン認識装置に、同一の入力に対しそれぞれ異なる１つの特徴を検出するための複数の検出処理手段と、前記複数の検出処理手段で検出された特徴を、各処理結果毎に、空間的に統合する複数の統合処理手段と、前記検出処理手段の処理結果を保持する複数の検出メモリと、前記統合処理手段の処理結果を保持する複数の統合メモリと、所定のタイミングで所定の前記検出処理手段及び所定の前記統合メモリが接続される共有データ線と、それぞれ所定の前記検出処理手段と前記統合処理手段と前記検出メモリとが接続される複数の局所データ線とを有し、前記統合処理手段に、複数の前記検出メモリに保持された前記検出処理手段の処理結果を読み出して入力するようにし、前記統合メモリに保持された前記統合処理手段の処理結果を読み出して、複数の前記検出処理手段に入力するように動作し、前記検出メモリ及び／または統合メモリが、強誘電体材料を用いた素子から構成されているメモリであることを特徴とする。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態について、図を用いて説明する。
【００１２】
（第１の実施の形態）
図１が本実施形態の構成を示す図である。
【００１３】
図１において、１０００は制御手段を、１０１０は統合メモリコントローラを、１０１１から１０１４は統合メモリを、１０１５は補助メモリを、１０２０は統合アドレス線を、１０２１から１０２４は統合メモリ制御信号を、１０２５は補助メモリ制御信号を、１０３０はグローバルデータ線を、１０４１Ａから１０４４Ｃは検出処理手段を、１０５１Ａから１０５４Ｃは統合処理手段を、１０６１から１０６４はローカルデータ線を、１０７１から１０７４は検出メモリを、１０８０は検出アドレス線を、１０８１から１０８４は検出メモリ制御信号を、１０９０は検出メモリコントローラを、１１１１Ａから１１１４Ｃは検出処理手段制御信号を、１１２１Ａから１１２４Ｃは統合処理手段制御信号を示す。なお、この検出処理手段制御信号と統合処理手段制御信号に関しては、図に全て記載せずに、検出処理手段制御信号１１１１Ａから１１１１Ｃのみ記載してある。また、１１３０及び１１６１から１１６４は外部Ｉ／Ｆを示す。
【００１４】
以下図１中のそれぞれの構成要素の機能を説明する。
【００１５】
制御手段１０００は、この回路全体の制御を行なう手段であり、後述する統合メモリコントローラ１０１０、各検出処理手段１０４１Ａ〜１０４４Ｃ、各統合処理手段１０５１Ａ〜１０５４Ｃ、及び検出メモリコントローラ１０９０と通信し、使用する認識アルゴリズムに基づいて、これらの各手段を制御することで、認識動作を行なう。
【００１６】
統合メモリコントローラ１０１０は、統合メモリ１０１１〜１０１４及び補助メモリ１０１５のメモリを制御して、これらのメモリからデータをグローバルデータ線１０３０に出力したり、またグローバルデータ線１０３０上のデータを統合メモリ１０１１〜１０１４または補助メモリ１０１５に書き込む。具体的には、統合アドレス線１０２０にアドレスを出力し、さらに動作させるメモリを選択するチップセレクト信号や書き込み・読み出しの区別をするライトイネーブル信号等の統合メモリ制御信号１０２１〜１０２４、補助メモリ制御信号１０２５を制御することで、上記の動作を行なう。なお、アドレスを複数発生する時は、例えば制御手段１０００から先頭・最終アドレス並びにステップ数を統合メモリコントローラ１０１０に設定し、先頭アドレス値を設定したカウンタを最終アドレスまで、前記ステップ数でカウントアップすることで対応出来る。つまり、このアドレスの発生を様々に変化させることで、統合メモリ１０１１〜１０１４、補助メモリ１０１５の任意の領域のデータの読み出し・書き込みが出来るので、配線問題を回避することが出来る。
【００１７】
統合メモリ１０１１〜１０１４は、後述する統合処理手段１０５１Ａ〜１０５４Ｃの処理結果を保持するメモリである。これらは、それぞれグローバルデータ線１０３０に接続されており、統合メモリ制御信号１０２１〜１０２４に基づいて保持している結果をグローバルデータ線１０３０に出力したり、グローバルデータ線１０３０上の統合処理手段１０５１Ａ〜１０５４Ｃの処理結果を取り込む。
【００１８】
補助メモリ１０１５は、画像などの認識すべき信号等を一時的に保持するメモリである。このメモリも統合アドレス線１０２０並びにグローバルデータ線１０３０に接続されており、統合メモリコントローラ１０１０からの補助メモリ制御信号１０２５に基づいて保持している信号をグローバルデータ線１０３０に出力したり、グローバルデータ線１０３０上のデータを取り込む。
【００１９】
統合アドレス線１０２０には、統合メモリ１０１１〜１０１４並びに補助メモリ１０１５のアドレスを示す信号が統合メモリコントローラ１０１０から出力される。このアドレスを変化させることで、配線問題を回避し、統合メモリ１０１１〜１０１４に保持された各処理の結果を容易に読み出すことが可能で、各検出処理手段１０４１Ａ〜１０４４Ｃでそれらの結果を組み合わせた信号に対する処理を行なうことが出来る。
【００２０】
統合メモリ制御信号１０２１〜１０２４は、統合メモリ１０１１〜１０１４の選択や書き込み・読み出しの区別・制御等を行なう信号である。メモリの選択を時分割で行なうことで、読み出し時にはグローバルデータ線１０３０に各統合メモリ１０１１〜１０１４のデータを時分割で出力することが出来、また書き込み時には、統合処理手段制御信号１１２１Ａ〜１１２４Ｃとタイミングを合わせて切り替えることで、グローバルデータ線１０３０上に出力された各統合処理手段の処理結果を各統合メモリ１０１１〜１０１４に保持することが出来る。
【００２１】
補助メモリ制御信号１０２５は、補助メモリ１０１５の選択や書き込み・読み出しの区別・制御等を行なう信号である。
【００２２】
グローバルデータ線１０３０は、統合メモリ１０１１〜１０１４、検出処理手段１０４１Ａ〜１０４４Ｃ、統合処理手段１０５１Ａ〜１０５４Ｃ、及び補助メモリ１０１５と接続されている。そのため、統合メモリ１０１１〜１０１４のデータが各検出処理手段１０４１Ａ〜１０４４Ｃに並列に入力され、また時分割処理により、各統合処理手段１０５１Ａ〜１０５４Ｃからの処理結果が、各統合メモリ１０１１〜１０１４に時分割で書き込まれる。
【００２３】
各検出処理手段１０４１Ａ〜１０４４Ｃは、認識処理に必要な各処理（例えば、エッジ検出等）をそれぞれ担当している。つまり、本発明の装置では、それら各検出処理手段の処理を組み合わせて全体として認識処理を行なっている。
【００２４】
検出処理手段１０４１Ａ〜１０４４Ｃは、グローバルデータ線１０３０を介して入力されたデータに対して処理を行いその結果を、それぞれローカルデータ線１０６１〜１０６４に出力する。なお、検出処理手段１０４１Ａ、１０４１Ｂ，１０４１Ｃの処理結果はローカルデータ線１０６１に出力されるようになっており、また検出処理手段１０４２Ａ〜１０４２Ｃの処理結果はローカルデータ線１０６２に出力されるようになっている。以下他の検出処理手段も同様である。
【００２５】
検出処理手段１０４１Ａ〜１０４４Ｃには、グローバルデータ線１０３０を介して同じ信号が入力される。その入力信号に対し、各検出処理手段は異なった処理を行なう。その結果を例えば検出処理手段１０４１Ａであれば、ローカルデータ線１０６１に出力して、その結果を検出メモリ１０７１に保持する。同様に各検出処理手段の処理の結果は、異なった検出メモリ１０７１〜１０７４に保持される。ここで、どの検出処理手段が動作するかを示すのが、制御手段１０００からの検出処理手段制御信号１１１１Ａ〜１１１４Ｃである。この検出処理手段制御信号１１１１Ａは検出処理手段１０４１Ａに接続され、また１１１１Ｂは１０４１Ｂに接続され、以下同様に接続される。（なお、図１には、検出処理手段制御信号１１１１Ａ〜１１１１Ｃのみ示してある。）
例えば、あるタイミングでは、検出処理手段制御信号１１１１Ａ、１１１２Ａ、１１１３Ａ、１１１４Ａがイネーブルになり、その結果、検出処理手段１０４１Ａ、１０４２Ａ、１０４３Ａ、１０４４Ａが動作し、それぞれの検出処理手段の処理結果をそれぞれローカルデータ線１０６１〜１０６４を介して、検出メモリ１０７１〜１０７４に保持する。また別のタイミングでは、別の検出処理手段制御信号がイネーブルになる。
【００２６】
統合処理手段１０５１Ａから１０５４Ｃは、それぞれローカルデータ線１０６１〜１０６４を介して入力されたデータに対して統合処理を行い、その結果をグローバルデータ線１０３０に出力する。なお、統合処理手段１０５１Ａ〜１０５１Ｃへの入力はローカルデータ線１０６１から、１０５２Ａ〜１０５２Ｃは１０６２より、１０５３Ａ〜１０５３Ｃは１０６３より、１０５４Ａ〜１０５４Ｃは１０６４より行なわれる。また、制御手段１０００からの統合処理手段制御信号１１２１Ａ〜１１２４Ｃ（図１には不図示）の処理手段セレクト信号のイネーブルで、動作する統合処理手段１０５１Ａ〜１０５４Ｃを選択する。また、この統合処理手段制御信号１１２１Ａ〜１１２４Ｃのアウトプット信号で、各統合処理手段１０５１Ａ〜１０５４Ｃの処理結果をグローバルデータ線１０３０に出力するタイミングを制御する。
【００２７】
つまり、例えば、あるタイミングでは、統合処理手段制御信号１１２１Ａ、１１２２Ａ、１１２３Ａ、１１２４Ａの処理手段セレクト信号がイネーブルになり、その結果、統合処理手段１０５１Ａ、１０５２Ａ、１０５３Ａ、１０５４Ａが動作する、そして、アウトプット信号に基づいて、グローバルデータ線１０３０にその処理結果を、例えば統合処理手段１０５１Ａから順に出力する。そのとき、タイミングを合わせて、統合メモリコントローラ１０１０を制御することで、グローバルデータ線１０３０上のデータを統合メモリ１０１１から順に保持することが出来る。
【００２８】
ローカルデータ線１０６１は、検出メモリ１０７１、検出処理手段１０４１Ａ〜１０４１Ｃ、統合処理手段１０５１Ａ〜１０５１Ｃと接続されている。また、ローカルデータ線１０６２は、検出メモリ１０７２、検出処理手段１０４２Ａ〜１０４２Ｃ、統合処理手段１０５２Ａ〜１０５２Ｃと接続されている。ローカルデータ線１０６３、１０６４も同様である。そのため、検出処理手段１０４１Ａ〜１０４１Ｃからの処理結果が検出メモリ１０７１に、検出処理手段１０４２Ａ〜１０４２Ｃからの処理結果が検出メモリ１０７２に、検出処理手段１０４３Ａ〜１０４３Ｃからの処理結果が検出メモリ１０７３に、検出処理手段１０４４Ａ〜１０４４Ｃからの処理結果が検出メモリ１０７４に保持されるようになっている。また検出メモリ１０７１のデータは統合処理手段１０５１Ａ〜１０５１Ｃに、検出メモリ１０７２のデータは統合処理手段１０５２Ａ〜１０５２Ｃに、と各検出メモリのデータが別々の統合処理手段に並列に入力されるようになっている。
【００２９】
検出メモリ１０７１は、検出処理手段１０４１Ａ〜１０４１Ｃからの処理結果を、また検出メモリ１０７２は、検出処理手段１０４１Ａ〜１０４１Ｃからの処理結果を保持するメモリである。検出メモリ１０７３、検出メモリ１０７４も同様である。検出メモリ１０７１はローカルデータ線１０６１に、１０７２は１０６２に、１０７３は１０６３に、１０７４は１０６４に接続されており、検出メモリ制御信号１０８１〜１０８４に基づいて保持している結果をそれぞれのローカルデータ線１０６１〜１０６４に出力したり、ローカルデータ線１０６１〜１０６４上の検出処理手段１０４１Ａ〜１０４４Ｃの処理結果を取り込む。
【００３０】
検出アドレス線１０８０には、検出メモリ１０７１〜１０７４のアドレスを示す信号が検出メモリコントローラ１０９０から出力される。このアドレスを変化させることで、配線問題を回避し、容易に検出メモリ１０７１〜１０７４に保持された任意の位置の各処理の結果を読み出し、各統合処理手段１０５１Ａ〜１０５４Ｃで各領域の結果に対する処理を行なうことが出来る。
【００３１】
検出メモリ制御信号１０８１〜１０８４は、検出メモリ１０７１〜１０７４の選択や書き込み・読み出しの区別・制御等を行なう信号である。
【００３２】
検出メモリコントローラ１０９０は、検出メモリ１０７１〜１０７４のメモリを制御して、これらのメモリからデータをローカルデータ線１０６１〜１０６４に出力したり、またローカルデータ線１０６１〜１０６４上のデータをメモリに書き込む。具体的には、検出アドレス線１０８０にアドレスを出力し、さらに動作させるメモリを選択するチップセレクト信号や書き込み・読み出しの区別をするライトイネーブル信号等の統合メモリ制御信号１０８１〜１０８４を制御することで、上記の動作を行なう。
【００３３】
検出処理手段制御信号１１１１Ａ〜１１１４Ｃは、検出処理手段１０４１Ａ〜１０４４Ｃと制御手段１０００との通信に使用される。検出処理手段１０４１Ａ〜１０４４Ｃの中で、動作する処理手段を選択する処理手段セレクト信号や処理結果のローカルデータ線１０６１〜１０６４への出力の許可を示すアウトプット信号、また各検出処理手段１０４１Ａ〜１０４４Ｃでの処理の終了を示すエンド信号等から構成される。
【００３４】
統合処理手段制御信号１１２１Ａ〜１１２４Ｃは、統合処理手段１０５１Ａ〜１０５４Ｃと制御手段１０００との通信に使用される。統合処理手段１０５１Ａ〜１０５４Ｃの中で、動作する処理手段を選択する処理手段セレクト信号や処理結果のグローバルデータ線１０３０への出力の許可を示すアウトプット信号、また各統合処理手段１０５１Ａ〜１０５４Ｃでの処理の終了を示すエンド信号等から構成される。
【００３５】
また、外部Ｉ／Ｆ１１３０、１１６１、１１６２、１１６３、１１６４はそれぞれグローバルデータ線１０３０、ローカルデータ線１０６１、１０６２、１０６３、１０６４と接続されており、これらの外部Ｉ／Ｆを介して、統合処理手段１０５１Ａ〜１０５４Ｃの処理結果や検出処理手段１０４１Ａ〜１０４４Ｃの処理結果をそれら処理手段の動作中や、または統合メモリ１０１１〜１０１４、検出メモリ１０７１〜１０７４に保持されている途中処理結果を外部へ取り出すことが出来る。
【００３６】
続いて、図１に示す構成の動作を、並列階層処理により画像認識を行う神経回路網を形成した場合について説明する。はじめに図２を参照して神経回路網の処理内容を詳細に説明する。この神経回路網は、入力データ中の局所領域において、対象または幾何学的特徴などの認識（検出）に関与する情報を階層的に扱うものであり、その基本構造はいわゆるＣｏｎｖｏｌｕｔｉｏｎａｌネットワーク構造（ＬｅＣｕｎ，Ｙ．ａｎｄ  Ｂｅｎｇｉｏ，Ｙ．，１９９５，“Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｉｍａｇｅｓ  Ｓｐｅｅｃｈ，ａｎｄ  Ｔｉｍｅ  Ｓｅｒｉｅｓ”ｉｎ  Ｈａｎｄｂｏｏｋ  ｏｆ  Ｂｒａｉｎ  Ｔｈｅｏｒｙ  ａｎｄ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ（Ｍ．Ａｒｂｉｂ，Ｅｄ．），ＭＩＴ  Ｐｒｅｓｓ，ｐｐ．２５５−２５８）である。最終層（最上位層）からの出力は認識結果としての認識された対象のカテゴリとその入力データ上の位置情報である。
【００３７】
データ入力層１０１は、ＣＭＯＳセンサ、或いはＣＣＤ素子等の光電変換素子からの局所領域データを入力する層である。最初の特徴検出層１０２（１，０）は、データ入力層１０１より入力された画像パターンの局所的な低次の特徴（特定方向成分、特定空間周波数成分などの幾何学的特徴のほか色成分特徴を含んでもよい）を全画面の各位置を中心として局所領域（或いは、全画面にわたる所定のサンプリング点の各点を中心とする局所領域）において同一箇所で複数のスケールレベル又は解像度で複数の特徴カテゴリの数だけ検出する。
【００３８】
特徴統合層１０３（２，０）は、所定の受容野構造（以下、受容野とは直前の層の出力素子との結合範囲を、受容野構造とはその結合荷重の分布を意味する）を有し、特徴検出層１０２（１，０）からの同一受容野内にある複数のニューロン素子出力の統合（局所平均化、最大出力検出等によるサブサンプリングなどの演算）を行う。この統合処理は、特徴検出層１０２（１，０）からの出力を空間的にぼかすことで、位置ずれや変形などを許容する役割を有する。また、特徴統合層内のニューロンの各受容野は同一層内のニューロン間で共通の構造を有している。
【００３９】
後続の層である各特徴検出層１０２（（１，１）、（１，２）、・・・、（１，Ｍ））及び各特徴統合層１０３（（２，１）、（２，２）、・・・、（２，Ｍ））は、上述した各層と同様に前者（（１，１）、・・・）は、各特徴検出モジュールにおいて複数の異なる特徴の検出を行い、後者（（２，１）、・・・）は、前段の特徴検出層からの複数特徴に関する検出結果の統合を行う。但し、前者の特徴検出層は前段の特徴統合層の細胞素子出力を受けるように結合（配線）されている。特徴統合層で行う処理であるサブサンプリングは、同一特徴カテゴリの特徴検出細胞集団からの局所的な領域（当該特徴統合層ニューロンの局所受容野）からの出力についての平均化などを行うものである。
【００４０】
更に図１〜図５を用いて、具体的な一例として、入力画像から眼を検知する処理における動作を説明する。
【００４１】
図３は、入力画像から眼を検知するフローチャートである。ステップＳ３０１において、画像が補助メモリ１０１５に入力される。これが、データ入力層１０１に対応する。続いてステップＳ３０２において、１次特徴量が検出される。眼の検出における１次特徴量は例えば図４に示すものである。つまり、縦（４−１−１）・横（４−１−２）・右上がり斜め（４−１−３）・右下がり斜め（４−１−４）といった特定方向の特徴を抽出する。
【００４２】
なお、先に述べると、２次特徴量は、右空きＶ字（４−２−１）、左空きＶ字（４−２−２）、円（４−２−３）であり、また３次特徴量が眼（４−３−１）である。これらのそれぞれの特徴量を検出するように、検出処理手段１０４１Ａ〜１０４４Ｃは構成されており、検出処理手段１０４１Ａは１次特徴量の縦（４−１−１）を、１０４２Ａは横（４−１−２）を、１０４３Ａは右上がり斜め（４−１−３）を、１０４４Ａは右下がり斜め（４−１−４）を検出する。同様に、検出処理手段１０４１Ｂは２次特徴量の右空きＶ字（４−２−１）を、１０４２Ｂは左空きＶ字（４−２−２）を、１０４３Ｂは円（４−２−３）を検出する。また検出処理手段１０４１Ｃは眼（４−３−１）を検出するように構成されている。
【００４３】
なお、この例で用いた眼の検出では、１次特徴量は４種類、２次特徴量は３種類、３次特徴量は１種類であるので、検出処理手段の１０４１Ａ〜１０４４Ａ、１０４１Ｂ〜１０４３Ｂ、１０４１Ｃのみ使用して、１０４４Ｂ及び１０４２Ｃ〜１０４４Ｃは使用しない。
【００４４】
ステップＳ３０２での１次特徴量検出は、特徴検出層１０２（１，０）に対応し、各検出処理手段が特徴ｆの検出モジュール１０４に相当する。統合メモリコントローラ１０１０は補助メモリ制御信号１０２５を制御して、補助メモリ１０１５から画像のある位置を中心とする局所データを読み出し（この局所領域が、受容野１０５に対応する）、グローバルデータ線１０３０に出力する。そして、それらは、並列に、それぞれ検出処理手段１０４１Ａ〜１０４４Ａに入力され、上述したそれぞれの１次特徴量を検出する。
【００４５】
なおこのとき、検出処理手段制御信号の１１１１Ａ〜１１１４Ａの処理手段セレクト信号のみイネーブルになっている。そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号をイネーブルにして、検出処理手段１０４１Ａ〜１０４４Ａは処理結果をローカルデータ線１０６１〜１０６４に出力する。同時に、検出メモリコントローラ１０９０は、検出アドレス線１０８０にアドレスを出力し、また検出メモリ制御信号１０８１〜１０８４を制御して、各ローカルデータ線上のデータを検出メモリ１０７１〜１０７４に保持する。
【００４６】
なお、各検出処理手段での処理では、入力されるデータと結合荷重とが用いられ、例えば１次特徴量の縦（４−１−１）を検出する際には、受容野の大きさが３＊３で、その結合荷重が０または１である、概念的には図５に示した受容野構造（以下、受容野とは直前の層の出力素子との結合範囲を、受容野構造とはその結合荷重の分布を意味する）との積和演算が行なわれる。なお、このステップＳ３０２において、補助メモリ１０１５から読み出される局所領域の中心点を全画面の各点もしくは全画面にわたる所定のサンプリング点の各点と変更することで、全画面において、この１次特徴量の検出を行なう。このように、局所領域を移動させて全画面にわたって処理を行なうことは以降の統合処理や２次、３次の特徴量検出においても同様である。
【００４７】
続いてステップＳ３０３で、１次特徴量が統合される。これは特徴統合層１０３（２，０）に対応し、検出メモリ１０７１〜１０７４に保持されているデータを統合する（特徴検出層１０２（１，０）からの同一受容野内にある複数のニューロン素子出力の統合（局所平均化、最大出力検出等によるサブサンプリングなどの演算）に相当する）。また各統合処理手段は、特徴ｆの統合モジュール１０６に相当する。検出メモリコントローラ１０９０は、検出アドレス線１０８０上にアドレスを出力し、また検出メモリ制御信号１０８１〜１０８４を制御して、検出メモリ１０７１〜１０７４の局所データを読み出し、ローカルデータ線１０６１〜１０６４を介して、それぞれの局所データが統合処理手段１０５１Ａ〜１０５４Ａに入力される。
【００４８】
なお、ステップＳ３０２での検出処理では、検出処理手段１０４１Ａ〜１０４４Ａに入力されるデータは同じものであったが、このステップＳ３０３での統合処理では統合処理手段１０５１Ａ〜１０５４Ａに入力されるデータは、それぞれ異なっている。ただし、ここでの統合処理の受容野の入力画像における位置や大きさは、全ての統合処理手段１０５１Ａ〜１０５４Ａにおいて共通であるので、各検出メモリ１０７１〜１０７４中のデータの位置を示す検出メモリコントローラ１０９０からのアドレスは同じに出来る。
【００４９】
つまり、検出メモリ１０７１〜１０７４から局所データを読み出すときに、その検出メモリ１つ１つに対して別々のアドレスを出力のではなく、一度のアドレス出力で各検出メモリからのデータ読み出しが並列に行なわれ、また各統合処理手段１０５１Ａ〜１０５４Ａにおいて統合処理も並列に行なわれる。各統合処理手段では上述したように、入力データの平均化や最大値検出等の処理を行なう。
【００５０】
なおこのとき、統合処理手段制御信号の１１２１Ａ〜１１２４Ａの処理手段セレクト信号のみイネーブルになっている。そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号を順にイネーブルにして、統合処理手段１０５１Ａ〜１０５４Ａは処理結果を時分割でグローバルデータ線１０３０に出力する。
【００５１】
同時に、統合メモリコントローラ１０１０は、統合アドレス線１０２０にアドレスを出力し、また統合メモリ制御信号１０２１〜１０２４を制御して、グローバルデータ線上のデータを順に統合メモリ１０１１〜１０１４に保持する。この統合処理手段制御信号１１２１Ａ〜１１２４Ａのアウトプット信号のイネーブルと統合メモリ制御信号のメモリセレクト信号のイネーブルのタイミングを合わせることで、統合処理手段１０５１Ａの出力を統合メモリ１０１１に保持することが出来、また１０５２Ａの出力を１０１２に、１０５３Ａの出力を１０１３に、１０５４Ａの出力を１０１４に保持することが出来る。
【００５２】
ここまでのステップで、統合メモリ１０１１は１次特徴量の縦方向を検出した結果を統合した結果を保持し、１０１２は横方向を検出した結果を統合した結果を保持し、１０１３は右上がり斜め方向を検出した結果を統合した結果を保持し、１０１４は右下がり斜め方向を検出した結果を統合した結果を保持することになる。
【００５３】
ステップＳ３０４では、２次特徴量検出を行なう。これは特徴検出層１０２（１，１）に対応する。ここでの２次特徴量とは、図４に示すようにＶ字（４−２−１，４−２−２）と円（４−２−３）であり、Ｖ字は受容野内での、１次特徴量の２つの斜め方向（４−１−３，４−１−４）の検出とその位置関係から検出可能であり、また円は受容野内での全ての１次特徴量の検出とその位置関係から検出可能である。
【００５４】
つまり、複数種類の１次特徴量を組み合わせて、２次特徴量を検出することができる。これら２次特徴量の検出処理は検出処理手段１０４１Ｂ〜１０４３Ｂで行なわれる。統合メモリコントローラ１０１０は統合アドレス線１０２０にアドレスを出力し、また統合メモリ制御信号１０２１〜１０２４を制御して、統合メモリ１０１１〜１０１４から、そこに保持されている統合された１次特徴量の局所データを読み出し、グローバルデータ線１０３０に出力する。
【００５５】
この時、統合メモリ制御信号１０２１〜１０２４のメモリセレクト信号のイネーブルを順に変更することで、この統合された１次特徴量の出力は、統合メモリ１０１１から１０１４へ順に行われる。つまり、グローバルデータ線１０３０を時分割して使用する。
【００５６】
なお、ステップ３０２と同様、これらのデータは、並列に、それぞれ検出処理手段１０４１Ｂ〜１０４３Ｂに入力され、上述したそれぞれの２次特徴量を検出する。なおこのとき、検出すべき２次特徴量は３種類なので検出処理手段制御信号の１１１１Ｂ〜１１１３Ｂの処理手段セレクト信号のみイネーブルになっている。
【００５７】
そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号をイネーブルにして、検出処理手段１０４１Ｂ〜１０４３Ｂは処理結果をローカルデータ線１０６１〜１０６３に出力する。同時に、検出メモリコントローラ１０９０は、検出アドレス線１０８０にアドレスを出力し、また検出メモリ制御信号１０８１〜１０８３を制御して、各ローカルデータ線上のデータを検出メモリ１０７１〜１０７３に保持する。
【００５８】
続いてステップＳ３０５で、２次特徴量が統合される。これは特徴統合層１０３（２，１）に対応し、検出メモリ１０７１〜１０７３に保持されているデータを統合する。検出メモリコントローラ１０９０は、検出アドレス線１０８０上にアドレスを出力し、また検出メモリ制御信号１０８１〜１０８３を制御して、検出メモリ１０７１〜１０７３の局所データを読み出し、ローカルデータ線１０６１〜１０６３を介して、それぞれの局所データが統合処理手段１０５１Ｂ〜１０５３Ｂに入力される。各統合処理手段ではステップＳ３０３と同様に、入力データの平均化や最大値検出等の処理を行なう。
【００５９】
なおこのとき、統合処理手段制御信号の１１２１Ｂ〜１１２３Ｂの処理手段セレクト信号のみイネーブルになっている。そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号を順にイネーブルにして、統合処理手段１０５１Ｂ〜１０５３Ｂは処理結果を時分割でグローバルデータ線１０３０に出力する。同時に、統合メモリコントローラ１０１０は、統合アドレス線１０２０にアドレスを出力し、また統合メモリ制御信号１０２１〜１０２３を制御して、グローバルデータ線上のデータを統合メモリ１０１１〜１０１３に保持する。
【００６０】
ステップＳ３０６では、３次特徴量検出を行なう。これは特徴検出層１０２（１，２）に対応する。ここでの３次特徴量とは、図４に示すように眼（４−３−１）であり、そのためには、受容野内での全ての２次特徴量（Ｖ字（４−２−１，４−２−２）と円（４−２−３））の検出とその位置関係をみればよい。つまり、複数種類の２次特徴量を組み合わせて、３次特徴量を検出することができる。これら３次特徴量の検出処理は検出処理手段１０４１Ｃで行なわれる。
【００６１】
統合メモリコントローラ１０１０は、統合アドレス線１０２０にアドレスを出力し、また統合メモリ制御信号１０２１〜１０２３を制御して、統合メモリ１０１１〜１０１３から、そこに保持されている統合された２次特徴量の局所データを読み出し、グローバルデータ線１０３０に出力する。この時、ステップＳ３０４と同様に、統合メモリ制御信号１０２１〜１０２３のメモリセレクト信号のイネーブルを順に変更することで、この統合された２次特徴量の出力は、統合メモリ１０１１から１０１３へ順に行われ、グローバルデータ線１０３０を時分割して使用する。そしてこれらのデータは、検出処理手段１０４１Ｃに入力され、上述した３次特徴量を検出する。
【００６２】
なおこのとき、検出すべき３次特徴量は１種類なので検出処理手段制御信号の１１１１Ｃの処理手段セレクト信号のみイネーブルになっている。そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号をイネーブルにして、検出処理手段１０４１Ｃは処理結果をローカルデータ線１０６１に出力する。同時に、検出メモリコントローラ１０９０は、検出アドレス線１０８０にアドレスを出力し、また検出メモリ制御信号１０８１を制御して、ローカルデータ線上のデータを検出メモリ１０７１に保持する。
【００６３】
続いてステップＳ３０７で、３次特徴量が統合される。これは特徴統合層１０３（２，２）に対応し、検出メモリ１０７１に保持されているデータを統合する。検出メモリコントローラ１０９０は、検出アドレス線１０８０上にアドレスを出力し、また検出メモリ制御信号１０８１を制御して、検出メモリ１０７１の局所データを読み出し、ローカルデータ線１０６１を介して、３次特徴量の局所データが統合処理手段１０５１Ｃに入力される。
【００６４】
統合処理手段では、入力データの平均化や最大値検出等の処理が行なわれる。そして、処理の終了を示すエンド信号を見て、制御手段１０００はアウトプット信号を順にイネーブルにして、統合処理手段１０５１Ｃは処理結果をグローバルデータ線１０３０に出力する。同時に、統合メモリコントローラ１０１０は、統合アドレス線１０２０にアドレスを出力し、また統合メモリ制御信号１０２１を制御して、グローバルデータ線上のデータを統合メモリ１０１１に保持する。
【００６５】
そして、この統合メモリ１０１１に保持された結果が眼の検出の最終結果となる。なお、上記ステップＳ３０７を行なわずに、検出メモリ１０７１に保持されている結果を眼の検出結果としてもよい。
【００６６】
以上説明したように、本実施形態によれば、ある特徴の検出処理とその検出結果の統合処理を、複数の特徴で行う際に容易に並列に行うことが出来、またそれらの処理を階層的に行うことも容易である。また、各検出結果や統合結果を一時メモリに保持し、その後そのメモリのアドレスを指定して結果をデータ線に出力して、各プロセッサに入力することで、複雑な受容野構造の処理においても配線が複雑になることを防ぐことが可能である。さらに、それら各処理の結果を読み出すことも可能であり、アドレッシングでメモリに保持された任意の位置の結果を読み出すことも可能である。
【００６７】
なお、本実施形態の検出処理手段や統合処理手段における処理は、ＤＳＰ等を用いてデジタル処理で行なう事も、アナログ回路で電位やパルス幅等を変換するアナログ処理で行なう事も可能である。また、検出メモリや統合メモリもＤＲＡＭやＳＲＡＭ等のデジタルメモリであっても、ＦＲＡＭ等のアナログメモリでも良い。
【００６８】
つまり、検出処理手段や統合処理手段における処理をデジタル処理で、検出メモリや統合メモリをデジタルメモリで構成し、オールデジタルの構成とすることも出来る。また、検出処理手段や統合処理手段における処理をアナログ処理で、検出メモリや統合メモリをアナログメモリで構成し、オールアナログの構成とすることも出来る。さらに、検出処理手段や統合処理手段における処理をアナログ処理で、検出メモリや統合メモリをデジタルメモリで構成し、さらに処理手段とメモリ間のＡ／Ｄ変換手段やＤ／Ａ変換手段により、処理手段で得られた処理結果をＡ／Ｄ変換してメモリに保持し、またメモリに保持した結果をＤ／Ａ変換して処理手段で使用するという構成とすることも出来る。
【００６９】
図６に、検出処理手段や統合処理手段における処理をアナログ処理で、検出メモリや統合メモリをアナログメモリで構成した一例を示す。この例では、アナログメモリとして強誘電体キャパシタを用い、また処理手段で使用する値はパルス幅で表現する。そのため、アナログメモリの電位量をパルス幅に変更するＰＷＭ変換手段も具備している。
【００７０】
図６において、６０００は制御手段を、６０１０は統合メモリコントローラを、６２１１は統合サブメモリを、６０２０は統合アドレス線を、６０２１は統合メモリ制御信号を、６０３０はグローバルデータ線を、６０４１は検出処理手段を、６０５１は統合処理手段を、６０６１はローカルデータ線を、６２７１は検出サブメモリを、６０８０は検出アドレス線を、６０８１は検出メモリ制御信号を、６０９０は検出メモリコントローラを、６１１１は検出処理手段制御信号を、６１２１は統合処理手段制御信号を、６２２０は統合アドレスデコーダを、６２３０は統合結果ＰＷＭ変換手段を、６２４０は検出結果ＰＷＭ変換手段を、６２５０は検出アドレスデコーダを示す。
【００７１】
なお、この図６の構成図は、図１の構成図の一部を示したものであり、統合処理手段や検出処理手段、統合メモリや検出メモリ等は１部のみ図示してある。また、１つの統合メモリ６０１１は複数の統合サブメモリ６２１１、・・・から、１つの検出メモリ６０７１は複数の検出サブメモリ６２７１、・・・から構成される。
【００７２】
この回路の動作は基本的には、前述した図１の動作と同様である。ただし、図６では、統合サブメモリ６２１１の選択を、統合アドレスデコーダ６２２０が統合アドレス線６０２０のアドレスと統合メモリコントローラ６０１０の信号に基づいて行い、また検出サブメモリ６２７１の選択を、検出アドレスデコーダ６２５０が検出アドレス線６０８０のアドレスと検出メモリコントローラ６０９０の信号に基づいて行う。
【００７３】
さらに、統合結果ＰＷＭ変換手段６２３０は統合サブメモリ６２１１に保持された統合結果をＰＷＭ信号に変換する。また、検出結果ＰＷＭ変換手段６２４０は検出サブメモリ６２７１に保持された検出結果をＰＷＭ信号に変換する。なお、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）とは、情報をパルス波形の幅に持たせた変調方式であり、ノイズに強いデジタル的な特性（電圧方向にＨｉｇｈレベルとＬｏｗレベルの２値の情報）と、連続情報を１パルスで表現することができるアナログ的な特性（時間方向に連続情報）の両者を併せ持つものである。
【００７４】
図７は統合サブメモリ６２１１と統合結果ＰＷＭ変換手段６２３０の構成を示す図である。図７中、７００１は強誘電体キャパシタ、７００２、７００３はＭＯＳトランジスタ、７００４はコンパレータ、７００５はセレクタである。強誘電体キャパシタ７００１にアナログ値を書き込むときは、統合アドレス線６０２０のアドレスと統合メモリコントローラ６０１０の信号に基づいて統合アドレスデコーダ６２２０がＭＯＳトランジスタ７００２をＯＮにし、統合結果に相当する電位が、強誘電体キャパシタ７００１にかかり、値が保持される。
【００７５】
そして、その値を読み出すときは、統合アドレス線６０２０のアドレスと統合メモリコントローラ６０１０の信号に基づいて統合アドレスデコーダ６２２０がＭＯＳトランジスタ７００３をＯＮにし、コンパレータ７００４において、強誘電体キャパシタ７００１の電位とリファレンス信号を比較して、リファレンス信号の方が高くなるまで、Ｈｉｇｈの信号を出力してＰＷＭ信号を作成する。そして、そのＰＷＭ信号をセレクタ７００５で選択した、グローバルデータ線６０３０を構成するサブグローバルデータ線に出力する。
【００７６】
図８は、グローバルデータ線６０３０を示す図である。上記のように、グローバルデータ線は複数のサブグローバルデータ線６０３１，６０３２、・・・で構成されている。これは、次に説明する検出処理手段６０４１において、受容野全体もしくは一部を並列で処理するために、複数の統合サブメモリの値を並列に検出処理手段６０４１に入力する必要があるためである。またそのために、統合アドレスデコーダ６２２０は、統合アドレス線６０２０のアドレスが示す受容野の中心のアドレスに対し、統合サブメモリ６２１１が受容野内（もしくは受容野の一部）の時に動作するようになっている。
【００７７】
このようにして、統合アドレス線６０２０の１つのアドレスに対して、複数の統合サブメモリの値が並列に読み出され、その読み出された値が並列に検出処理手段６０４１に入力されるため、複数のサブグローバルデータ線を使用する。また、図６には図示していないが、検出処理手段は複数存在し、それぞれグローバルデータ線６０３０と接続されているため、上記並列に読み出された値は、並列に検出処理手段６０４１に入力されるとともに、他の検出処理手段にも入力され、統合サブメモリの同じ値を用いて、別の特徴の検出が並列に行われる。
【００７８】
図９は検出処理手段６０４１の構成を示す図である。検出処理手段６０４１は、乗算回路Ａ１，・・・、Ａ２，・・・、キャパシタ９００１、サンプルホールド回路９００２、スイッチとしてのＭＯＳトランジスタ９００３から構成されている。乗算回路Ａ１，・・・は、定電流源として機能するＰＭＯＳトランジスタＭ１、およびスイッチとして機能するＰＭＯＳトランジスタＭ２を有する。また、同様に乗算回路Ｂ１，・・・は定電流源として機能するＮＭＯＳトランジスタＭ３、およびスイッチとして機能するＮＭＯＳトランジスタＭ４を有する。
【００７９】
なお、乗算回路Ａ１，・・・は後述するようにシナプス荷重値が正の時に前段のニューロンの出力値との乗算を行い、また乗算回路Ｂ１，・・・はシナプス荷重値が負時に前段のニューロンの出力値との乗算を行う。この時、乗算回路Ｂ１，・・・に入力されるシナプス荷重値は絶対値で入力される。また、乗算回路Ａ１，・・・と乗算回路Ｂ１，・・・は対になっており、グローバルデータ線６０３０からのＰＷＭ信号は共通にトランジスタＭ２とＭ４に入力される。その際に、定電流源として動作するトランジスタＭ１，Ｍ３において、重み係数の符号と異なる片方のＭＯＳトランジスタは動作しないようなゲート電圧がかかっている。
【００８０】
乗算回路Ａ１，・・・、Ｂ１，・・・は、被乗算値Ｐと乗算値Ｑの乗算：（Ｐ×Ｑ）を実現する。なおＰ、Ｑは、以下の条件式を満たすものとする。
【００８１】
Ｐ≧０、Ｑ≧０
ここで、被乗算値Ｐと乗算値Ｑは、前記乗算を前記乗算回路Ａ１，・・・、Ｂ１，・・・で実現するために、前述のように統合サブメモリの値から作成したＰＷＭ信号Ｖｉｎと、アナログ電圧Ｖｗとしてそれぞれ入力される。
【００８２】
被乗算値を換算したＰＷＭ信号Ｖｉｎが入力端子Ｐに入力され、また乗算値を換算したアナログ電圧Ｖｗが入力端子Ｑに入力される。
【００８３】
トランジスタＭ１のゲート端子には、入力端子Ｑに入力された乗算値Ｖｗの電圧がかかる。また、トランジスタＭ２のゲート端子には、入力端子ＰよりＰＷＭ信号Ｖｉｎが反転入力される。
【００８４】
なおＰＷＭ信号は、Ｌｏｗレベルを０Ｖ、Ｈｉｇｈレベルを電源電圧Ｖｄｄ（本実施例では３．３Ｖ）と設定している。ここで、ＰＷＭ信号がＨｉｇｈレベルの時、すなわちトランジスタＭ１のソース端子に電源電圧Ｖｄｄが加えられた時に、トランジスタＭ１が飽和領域で動作するようにアナログ電圧Ｖｗを適切な電圧範囲に設定することにより、ＰＷＭ信号がＨｉｇｈレベルの間、トランジスタＭ１を定電流源として動作させることができる。
【００８５】
またこの時、トランジスタＭ１を流れる電流量は、ゲート−ソース間電圧、すなわち（Ｖｄｄ−Ｖｗ）で決定される。この時、ＰＷＭ信号Ｖｉｎのパルス幅は、被乗算値Ｐに比例するように換算されている。またアナログ電圧Ｖｗは、（Ｖｄｄ−Ｖｗ）によって決定される電流量が乗算値Ｑに比例するように換算されている。
【００８６】
従ってトランジスタＭ１は、ＰＷＭ信号がＨｉｇｈレベルの間だけ前記（Ｖｄｄ−Ｖｗ）により決定される電流を流すため、トランジスタＭ１が流す電荷量は、Ｐ×Ｑに比例したものとなる。なお、上記説明は、ＰＭＯＳを用いた乗算回路Ａ１，・・・を例に行ったが、乗算回路Ｂ１，・・・でもＰＭＯＳがＮＭＯＳになっていることを考慮すれば、動作としては同様に考えることが出来る。
【００８７】
続いて、乗算回路Ａ１，・・・、Ｂ１，・・・による演算結果が、どのようにキャパシタ９００１に保持されるかについて説明する。
【００８８】
まず乗算回路Ａ１，・・・の演算結果がキャパシタ９００１に保持される動作について説明する。バスにはそれぞれ独立に演算を行う複数の乗算回路Ａ１，・・・が接続されているため、それぞれの乗算回路Ａ１，・・・により並列に実行された演算結果、すなわち上で説明したトランジスタＭ１が流す電荷量は、バスを通してキャパシタ９００１に蓄積され、加算される。
【００８９】
また、乗算回路Ｂ１，・・・の演算結果がキャパシタ９００１に保持される動作は、乗算回路Ｂ１，・・・により並列に実行された演算結果、つまりトランジスタＭ３が流す電荷量が、キャパシタ９００１に蓄積されていた電荷から引き抜かれる動作となる。つまり、負の重み係数に対する積和演算結果は負になるため、キャパシタ９００１の保持されていた電荷を引き抜くことで、減算を実現している。なお、キャパシタ９００１に電荷が保持されていない状態では減算が行なわれない。そのため、あらかじめキャパシタ９００１に、既定量の電荷を保持しておくようにする。その既定量とは、例えば予想される前段のニューロンの出力値とシナプス荷重との積和の最小値の絶対値に相当する量で良い。なおこの場合、キャパシタ９００１の最終的な電荷量（電位）が上記既定の電荷量（電位）の時に、積和演算結果が０となる。
【００９０】
上記に示したように、キャパシタ９００１に蓄積される総電荷量は、共通のバスでキャパシタに接続された複数の乗算回路Ａ１，・・・、Ｂ１，・・・の演算結果の総和値を示している。
【００９１】
上記に示した積和演算が終了すると、スイッチのＭＯＳトランジスタ９００３を制御手段６０００がＯＮにし、キャパシタ９００１の電位をサンプルホールド回路９００２を介して、ローカルデータ線６０６１に出力し、そして、検出サブメモリ６２７１に保持する。
【００９２】
以降の統合処理に関しては、検出サブメモリ６２７１は統合サブメモリ６２１１と、ローカルデータ線６０６１はグローバルデータ線６０３０と、統合処理手段６０５１は検出処理手段６０４１と、それぞれ同じ構成でよいので説明は省略する。
【００９３】
上記説明は、統合サブメモリ６２１１及び検出サブメモリ６２７１に強誘電体キャパシタを使用した構成を示したが、別の構成も考えられる。例えば、図１０にトランジスタ型強誘電体メモリ（ＦｅＲＡＭ）を使用した統合サブメモリ６２１１の構成を示す。１００１はトランジスタ型強誘電体メモリ、１００２、１００３はＭＯＳトランジスタ、１００４はコンパレータ、１００５はセレクタである。
【００９４】
トランジスタ型強誘電体メモリ１００１にアナログ値を書き込むときは、統合アドレス線６０２０のアドレスと統合メモリコントローラ６０１０の信号に基づいて統合アドレスデコーダ６２２０がＭＯＳトランジスタ１００２をＯＮにする。そして、ワード線でトランジスタ型強誘電体メモリ１００１を選択し、統合結果に相当する電位をソース線にかけることで、値が保持される。
【００９５】
そして、その値を読み出すときは、ワード線でトランジスタ型強誘電体メモリ１００１を選択し、また統合アドレス線６０２０のアドレスと統合メモリコントローラ６０１０の信号に基づいて統合アドレスデコーダ６２２０がＭＯＳトランジスタ１００３をＯＮにし、ドレイン電流でキャパシタ１００６を充電し、コンパレータ１００４において、キャパシタ１００６の電位とリファレンス信号を比較して、キャパシタ電位の方が高くなるまで、Ｈｉｇｈの信号を出力してＰＷＭ信号を作成する。そして、そのＰＷＭ信号をセレクタ１００５で選択した、グローバルデータ線６０３０を構成するサブグローバルデータ線に出力する。
【００９６】
このように、強誘電体材料を用いたアナログメモリを使用すると、デジタルメモリを使用するのと比較して、Ａ／Ｄ変換手段やＤ／Ａ変換手段が不要になるため、回路面積の削減と消費電力の削減という効果がある。
【００９７】
また、上記図６の構成において、統合サブメモリ６２１１及び検出サブメモリ６２７１をデジタルメモリとして使用することも可能である。その際は、統合結果ＰＷＭ変換手段６２３０及び検出結果ＰＷＭ変換手段６２４０で作成されるＰＷＭ信号は、特徴の有無を表す信号になる。
【００９８】
次に、本実施形態の構成に係るパターン検出（認識）装置を撮像装置に搭載させることにより、特定被写体へのフォーカシングや特定被写体の色補正、露出制御を行う場合について、図１１参照して説明する。図１１は実施形態に係るパターン検出（認識）装置を撮像装置に用いた例の構成を示す図である。
【００９９】
図１１において、撮像装置５１０１は、撮影レンズおよびズーム撮影用駆動制御機構を含む結像光学系５１０２、ＣＣＤ又はＣＭＯＳイメージセンサー５１０３、撮像パラメータの計測部５１０４、映像信号処理回路５１０５、記憶部５１０６、撮像動作の制御、撮像条件の制御などの制御用信号を発生する制御信号発生部５１０７、ＥＶＦなどファインダーを兼ねた表示ディスプレイ５１０８、ストロボ発光部５１０９、記録媒体５１１０などを具備し、更に上述したパターン検出装置を被写体検出（認識）装置５１１１として備える。
【０１００】
この撮像装置５１０１は、例えば撮影された映像中から予め登録された人物の顔画像の検出（存在位置、サイズの検出）を被写体検出（認識）装置５１１１により行う。そして、その人物の位置、サイズ情報が被写体検出（認識）装置５１１１から制御信号発生部５１０７に入力されると、同制御信号発生部５１０７は、撮像パラメータ計測部５１０４からの出力に基づき、その人物に対するピント制御、露出条件制御、ホワイトバランス制御などを最適に行う制御信号を発生する。
【０１０１】
上述したパターン検出（認識）装置を、このように撮像装置に用いて、人物検出とそれに基づく撮影の最適制御を行うことができるようになる。
【０１０２】
以下、上記実施形態に係わる本発明の特徴を整理する。
【０１０３】
特徴１．
入力信号の中に含まれる所定のパターンを検出するパターン認識装置において、
同一の入力に対しそれぞれ異なる１つの特徴を検出するための複数の検出処理手段と、
前記複数の検出処理手段で検出された特徴を、各処理結果毎に、空間的に統合する複数の統合処理手段と、
前記検出処理手段の処理結果を保持する複数の検出メモリと、
前記統合処理手段の処理結果を保持する複数の統合メモリと、
所定のタイミングで所定の前記検出処理手段及び所定の前記統合メモリが接続される共有データ線と、
それぞれ所定の前記検出処理手段と前記統合処理手段と前記検出メモリとが接続される複数の局所データ線とを有し、
前記統合処理手段に、複数の前記検出メモリに保持された前記検出処理手段の処理結果を読み出して入力するようにし、
前記統合メモリに保持された前記統合処理手段の処理結果を読み出して、複数の前記検出処理手段に入力するように動作し、
前記検出メモリ及び／または統合メモリが、強誘電体材料を用いた素子から構成されているメモリであることを特徴とするパターン認識装置。
【０１０４】
特徴２．
前記検出メモリ及び／または前記統合メモリは強誘電体キャパシタで構成されていることを特徴とする特徴１のパターン認識装置。
【０１０５】
特徴３．
前記検出メモリ及び／または前記統合メモリは、トランジスタ型強誘電体メモリで構成されていることを特徴とする特徴１のパターン認識装置。
【０１０６】
特徴４．
複数の保持手段と、該複数の保持手段に対応するアドレスを示すアドレス線と、前記複数の保持手段に保持された値に基づく信号を処理する複数の処理手段と、前記複数の保持手段と前記複数の処理手段とが接続するデータ線とを有するパターン認識装置において、
前記アドレス線の１つのアドレスに対して、前記複数の保持手段のうちの一部または全部の保持手段に保持された値が並列に読み出され、その値に基づいた信号が前記データ線を介して前記処理手段に並列に入力されてパターン認識処理がされ、また前記データ線に接続される複数の処理手段のうち一部または全部の処理手段に対して並列に同一の信号が入力され、それぞれ別のパターン認識処理が並列に行われることを特徴とするパターン認識装置。
【０１０７】
【発明の効果】
以上説明したように、本発明によれば、共有データ線と局所データ線、及びメモリを利用することで、複雑な配線を用いずに単純な回路構成で、複数の処理手段で処理されて得られた複数の結果に対し、さらに複数の処理手段で並列処理を行なうといった階層的処理を並列に実行できるという効果がある。
【０１０８】
検出処理においては、複数の所定の検出処理手段に対して同一のデータを入力することで並列動作が可能であり、また統合メモリから値を読み出す際に、１つのアドレスに対して複数の値を並列に読み出し、検出処理手段に並列に入力することで、処理時間の短縮が可能である。
【０１０９】
更にまた各検出処理の処理結果を空間的に統合する統合処理においては、それぞれ別の特徴検出の結果を保持している複数の検出メモリに対して、それぞれのメモリ中の位置を示すアドレスを共通に用いることで、統合処理を並列に行なえるという効果がある。また、これらの検出・統合処理手段を何回でも繰り返すことが出来るという効果がある。
【０１１０】
また、メモリに強誘電体材料を使用した素子を用いることで、回路面積の削減と消費電力の削減が可能になるという効果がある。
【図面の簡単な説明】
【図１】第１の実施形態の構成を示す図である。
【図２】Ｃｏｎｖｏｌｕｔｉｏｎａｌネットワーク構造を説明する図である。
【図３】第１の実施形態の動作を説明するフローチャートである。
【図４】特徴量を示す図である。
【図５】特徴量検出の例を示す図である。
【図６】アナログ処理手段とアナログメモリを使用したときの構成を示す図である。
【図７】アナログメモリの構成を示す図である。
【図８】グローバルデータ線の構成を示す図である。
【図９】検出処理手段の構成を示す図である。
【図１０】アナログメモリの構成を示すである。
【図１１】実施形態に係るパターン認識装置を撮像装置に用いた例の構成を示す図である。
【図１】
2004157754.tif 000003
【図２】
2004157754.tif 000004
【図３】
2004157754.tif 000005
【図４】
2004157754.tif 000006
【図５】
2004157754.tif 000007
【図６】
2004157754.tif 000008
【図７】
2004157754.tif 000009
【図８】
2004157754.tif 000010
【図９】
2004157754.tif 000011
【図１０】
2004157754.tif 000012
【図１１】
2004157754.tif 000013