(57)【要約】【課題】  システムを構成するために、ＣＰＵやメモリ回路の周辺のデータ比較処理回路の高速化を図り、ＣＰＵの処理待ち時間を短縮する。【解決手段】  ノイズ低減の対象である指定の画素データと、周囲の８個の画素データからなる９個の画素データを画像メモリ回路１００から読み出して、ＲＤ／ＳＰのタイミングに同期して、メディアンフィルタ回路２００に記憶したときには、自動的にそれらの中央値が決定され、その中央値によって、ノイズ低減の対象である指定の画素データの値が書き換えられる。【選択図】    図１
2007233623.tif 000002
【特許請求の範囲】
【請求項１】
画像メモリ回路に記憶された２次元の画素データにおいて、１つの画素データを順に指定し、当該指定の画素データに隣接する周囲の画素データからなる複数の画素データが順に読み出されたときに、読み出された前記複数の画素データを記憶する複数の画素記憶回路と、
読み出された画素データの値と各記憶回路にそのとき記憶されている画素データとを比較して、読み出された画素データの値によって記憶する画素記憶回路を決定する比較制御回路と、
あらかじめ設定されている画素記憶回路に記憶されている画素データの値によって、前記画像メモリ回路に記憶されている前記指定の画素データの値を書き換える書換制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項２】
読み出された複数のデータを記憶する複数の記憶回路と、
読み出されたデータの値と各記憶回路にそのとき記憶されているデータとを比較して、読み出されたデータの値によって順位を決定し、決定した順位に対応する記憶回路に当該データを記憶する比較制御回路と、
外部から指定された順位のデータを対応する記憶回路から読み出す読出制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項３】
複数のビットからなる２系統のデータを比較するデータ比較処理回路であって、
上位ビットの比較回路による比較結果の情報を１ビットの信号ラインで受け取って、当該比較結果に基づいてデータの比較の有無を決定し、当該決定した内容を比較結果の情報として１ビットの信号ラインによって下位ビットの比較回路に出力する比較回路と、
複数の比較回路の比較結果に基づいて、前記複数のビットからなる２系統のデータの比較値を１ビットの信号ラインから出力する出力回路と、
を備えたことを特徴とするデータ処理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータを高速に処理するデータ比較処理回路およびその回路を組み込んだ集積回路、並びに、その集積回路を搭載した画像処理装置に関するものである。
【背景技術】
【０００２】
２系統のデジタル信号を比較するデータ比較処理回路は、コンピュータシステムが広く普及している今日においては、様々な種類の情報をアナログ信号からデジタル信号に変換してデータ処理をすることが多い。例えば、測定装置などをコンピュータで制御するシステムにおいては、温度センサや力センサなどから得られるアナログ信号の測定値をデジタル信号に変化してコンピュータで処理する。あるいは、ビデオカメラや電子カメラによって撮像された画像や音楽などのオーディオデータをアナログ信号からデジタル信号に変換してデータ比較処理をすることが多い。デジタルデータを比較処理するデータ比較処理回路としては、単純なコンパレータ回路だけでなく、ＣＰＵ（中央演算ユニット）やプログラムやデータを記憶するメモリ回路などの中核的な回路のデータ処理を補佐するために、様々な形態を採ることが多い。
【０００３】
近年においては、ＣＰＵの処理速度およびメモリ回路の記憶容量は飛躍的に向上した。例えば、２００６年現在のＣＰＵの処理速度は、数１０年前のＣＰＵの処理速度と比べて１０００倍も速くなった。数１０年前は、周辺のデータ処理回路の処理速度やプログラムの実行速度がＣＰＵの処理速度よりも速く、メモリ回路の記憶容量も少なかったので、システムにおいてはＣＰＵの処理待ちが多かった。しかしながら、この数１０年の間に、ＣＰＵの処理速度およびメモリ回路の記憶容量が飛躍的に向上したため、現在ではＣＰＵの方が周辺のデータ処理回路およびプログラムの実行の処理待ちが多いという逆転現象が起こっている。この要因のひとつとして、ＣＰＵは高価なデバイスであるので、設備や開発人員の資源を投下しても利益が期待できることが挙げられる。一方、周辺のデータ処理回路は安価なデバイスである上、多くの半導体メーカが参入できるので、資源を投下しても利益が期待できない。しかしながら、周辺のデータ処理回路の処理速度を向上させない限りは、ＣＰＵと周辺のデータ処理回路とのミスマッチのために、システムにおけるデータ処理速度のボトルネックはいつまでも解決されない。特に、データ量の多い画像データやオーディオデータを記憶するメモリ回路が飛躍的に向上した現在では、システム全体のデータ処理速度に求められる要望は強い。
【０００４】
ところで、ビデオカメラや電子カメラによって撮像された画像をアナログ信号からデジタル信号に変換した後、２次元の画素データの１画面又は数画面をフレームメモリなどの画像メモリ回路に記憶した場合に、画像メモリ回路に記憶された２次元の画素データに含まれるノイズ成分を低減する技術が知られている。このノイズ低減の方法に移動平均法がある。移動平均法によれば、例えば、２次元の画素データの１つを指定するとともに、その指定の画素データに対して左右上下および斜めの位置に隣接する周囲の画素データを読み出して、指定の画素データおよび周囲の８個の画素データからなる９個の画素データの振幅の値の平均値によって、指定の画素データの値を書き換える。ところが、平均移動法においては、ノイズ成分だけでなく画像の輪郭を形成するエッジも低減されるため、画像の解像度が劣化するという問題がある。
【０００５】
そこで、近年においては、これら９個の画素データの振幅の中央の値となる画素データによって、指定の画素データの値を書き換えるメディアンフィルタ処理によるノイズ低減法が採用されるようになった。
例えば、ある提案の「３×３メディアンフィルタの高速アルゴリズム」においては、９個のデータを３個ずつの３組に分け、組ごとにソートし、各組の中央値の大きい順にＡ、Ｂ、Ｃとする。そして、Ｂの中央値とＡの最小値との大小関係、および、Ｂの中央値とＣの最大値との大小関係を比較するアルゴリズムを実行することによって、平均比較回数を削減することが記載されている。（非特許文献１参照）
また、ある提案の「映像信号処理方法および装置」においては、図４に見られるように、第１のメディアンフィルタ演算器２１は、特定の画素に対し、隣り合った水平方向の所定の領域の画素信号を比較器１９で比較し、中央値決定器２０でその中央値を選び、その中央値を特定の画素の信号として第２のメモリ２２に供給して記憶させる。第２のメモリ２２の各画素に記憶された信号は、読み出されて垂直方向の第２のメディアンフィルタ演算器２５に供給される。第２のメディアンフィルタ演算器２５は、特定の画素に対し、隣り合った垂直方向の所定の領域の画素信号を比較器２３で比較し、中央値決定器２４でその中央値を選び、その中央値を特定の画素の信号として第３のメモリ２２に供給して記憶させる構成が記載されている。（特許文献１参照）
また、ある提案の「ノイズ低減回路および画像信号処理装置」においては、入力画像信号に対してノイズの大きさに相当する直流成分を加減算することによりノイズを低減するノイズ低減回路である。入力画像信号のエッジ部分を検出するエッジ検出手段と、入力画像信号のノイズを検出してこのノイズに応じた直流成分を生成する直流成分生成手段と、入力画像信号のエッジ部分においてノイズを含まない信号に、より近づくような第１の参照信号を生成するメディアンフィルタなどの第１の参照信号生成手段と、入力画像信号のエッジ部分以外の略平坦な部分において、ノイズを含まない信号に、より近づくような第２の参照信号を生成する低域フィルタなどの第２の参照信号生成手段と、エッジ検出手段の検出結果に応じて、第１および第２の参照信号を択一的に導出する選択手段と、選択手段による選択参照信号と入力画像信号とのレベル比較を行い、この比較結果に応じて直流成分の入力画像信号への加減算処理を行う加減算手段とを含む構成が記載されている。（特許文献２参照）
また、ある提案の「デジタルノイズリダクション回路」においては、メディアンフィルタを使用して、そのメディアンフィルタの中央値を選択する際に、ソート処理のように時間的にシリーズに処理を行わずに、画素同士の比較処理を並列に行う構成が記載されている。（特許文献３参照）
【０００６】
また、ある提案の順序フィルタリング方法においては、例えば、３×３の９個のデータを読み出して、大きさの順に整列（ソート）させた後、所望のＸ番目のデータを見つけるために、候補となるデータを順次絞り込みを行う構成が記載されている。（特許文献４参照）
また、ある提案の符号化装置においては、データの大きさの順位を検出するために、読み出したデータに対して、ソフトウェアによるアルゴリズム又はテーブルを用いて並べ替えを行う構成が記載されている。（特許文献５参照）
【０００７】
また、デジタルデータの大小判別処理に用いられるデータ処理回路として、例えば、４ビットのデータＡおよびデータＢを比較して、Ａ＞Ｂ若しくはＡ＜Ｂ又はＡ＝Ｂを出力する比較回路（ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）が知られている。このような比較回路では、入力される上位ビットの比較回路の結果であるＡｊ＞Ｂｊ若しくはＡｊ＜Ｂｊ又はＡｊ＝Ｂｊの論理と、演算する比較回路に入力された４ビットのデータＡｋおよびデータＢｋの論理に基づいて演算を行って、その結果であるＡｋ＞Ｂｋ若しくはＡｋ＜Ｂｋ又はＡｋ＝Ｂｋの論理を下位ビットの比較回路に出力する構成になっている。すなわち、４ビットの比較回路をカスケード接続することによって、８ビット、１２ビット、１６ビット等の多ビットの大小判別処理のデータ処理ができる。（非特許文献２参照）
【特許文献１】特開平９−１９８４９８号公報
【特許文献２】特開平１０−８４４９８号公報
【特許文献３】特開２００１−１９７３３３号公報
【特許文献４】特開平５−２６４５号公報
【特許文献５】特開２００４−１２０６２３号公報
【非特許文献１】社団法人電子情報通信学会発行「ＦＩＴ２００２情報科学技術フォーラム情報技術レターズＶｏｌ．第１巻２００２年」１４１〜１４２ページ、「３×３メディアンフィルタの高速アルゴリズム」
【非特許文献２】２００３年３月２０日、日本理工出版会刊、中村次男著の「デジタル回路の基礎」９１〜９３ページ、「大小判別回路」
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記非特許文献１においては、ソフトウェアのアルゴリズムによって、画素データの大小比較のデータ処理を行っているので、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献１においては、９個の画素データ読み出して第１のメモリに書き込み、第１のメディアンフィルタ演算器によって、３個の画素データを第１のメモリから読み出して、３個ごとの画素データの中央値を決定し第２のメモリに書き込む。そして、第２のメモリに記憶された中央値の３個の画素データをメディアンフィルタ演算器によって、最終的に９個の画素データの中央値を決定し第３のメモリに書き込むようになっている。このため、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献３の場合にも、１ラインの画素データを読み出して、ラインメモリに記憶した後に、各画素データのノイズを低減するデータ処理を行っているので、高速なデータ処理は困難である。
同様に、上記特許文献４および特許文献５の場合にも、処理対象のデータを読み出した後に、目的のデータ処理を行っているので、高速なデータ処理は困難である。
また、上記非特許文献２においては、例えば、４ビットの比較回路の場合には、２つの入力データの排他的論理和を出力するＥＸＯＲ回路が４個あるのは当然であるが、それぞれの比較結果の論理と、入力される上位４ビットの比較回路の比較結果との論理演算を行うために、５入力のＡＮＤ回路が５個、４入力のＡＮＤ回路が２個、３入力のＡＮＤ回路が２個、２入力のＡＮＤ回路が２個、および、５入力のＯＲ回路が２個使用されている。このため、集積回路によって４ビットに比較回路を実現した場合には、配線パターンが非常に多くなり、配線パターン間の浮遊容量のためにデータが遅延し、高速なデータ処理は困難である。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。
【０００９】
本発明は、上記従来の問題を解決するものであり、システムを構成するために、ＣＰＵやメモリ回路の周辺のデータ比較処理回路の高速化を図り、ＣＰＵの処理待ち時間を短縮することを目的とする。また、そのような高速のデータ比較処理回路を組み込んだ集積回路を実現することを目的とする。さらにまた、その集積回路を搭載した画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
請求項１に記載のデータ比較処理回路は、画像メモリ回路に記憶された２次元の画素データにおいて、１つの画素データを順に指定し、当該指定の画素データに隣接する周囲の画素データからなる複数の画素データが順に読み出されたときに、読み出された前記複数の画素データを記憶する複数の画素記憶回路と、読み出された画素データの値と各記憶回路にそのとき記憶されている画素データとを比較して、読み出された画素データの値によって記憶する画素記憶回路を決定する比較制御回路と、あらかじめ設定されている画素記憶回路に記憶されている画素データの値によって、前記画像メモリ回路に記憶されている前記指定の画素データの値を書き換える書換制御回路と、を備えたことを特徴とする。
【００１１】
請求項２に記載のデータ比較処理回路は、読み出された複数のデータを記憶する複数の記憶回路と、読み出されたデータの値と各記憶回路にそのとき記憶されているデータとを比較して、読み出されたデータの値によって順位を決定し、決定した順位に対応する記憶回路に当該データを記憶する比較制御回路と、外部から指定された順位のデータを対応する記憶回路から読み出す読出制御回路と、を備えたことを特徴とする。
【００１２】
請求項３に記載のデータ比較処理回路は、複数のビットからなる２系統のデータを比較するデータ比較処理回路であって、上位ビットの比較回路による比較結果の情報を１ビットの信号ラインで受け取って、当該比較結果に基づいてデータの比較の有無を決定し、当該決定した内容を比較結果の情報として１ビットの信号ラインによって下位ビットの比較回路に出力する比較回路と、複数の比較回路の比較結果に基づいて、前記複数のビットからなる２系統のデータの比較値を１ビットの信号ラインから出力する出力回路と、を備えたことを特徴とする。
【発明の効果】
【００１３】
本発明のデータ比較処理回路、その回路を組み込んだ集積回路、および、その集積回路を搭載した画像処理装置を用いたシステムにおけるデータ処理の大幅な高速化を実現するという効果が得られる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明によるデータ比較処理回路、集積回路、および画像処理装置の第１実施形態ないし第３実施形態について、図を参照して説明する。なお、本発明による画像処理装置を用いたシステムは、携帯電話装置、デジタル電子カメラ、ビデオカメラ、テレビ受信装置などであるが、本発明の適用範囲はこれら個々の画像処理装置に限定されるものではない。当業者が容易に想定可能なもので、高速なデータ処理が要求されるシステムに適用できる。
【００１５】
まず、第１実施形態のデータ比較処理回路について、図１ないし図６を参照して説明する。
図１は、画像に含まれているノイズ成分を低減することが必要な画像処理装置（図示せず）に搭載されるワンチップの集積回路であり、１画面分の２次元の画素データを記憶できる画像メモリ回路（ＩＭＡＧＥ  ＭＥＭＯＲＹ）１００と、９個の画素データに対してメディアンフィルタ処理を施すことによって、指定した１つの画素データのノイズを低減するためのノイズ低減回路（ＭＥＤＩＡＮ  ＦＩＬＴＥＲ）２００で構成されている。なお、図には示していないが、画像処理装置には、画像メモリ回路１００およびノイズ低減回路２００に対して下記に記載するような種々の信号を入力する電子回路が搭載されているが、周知の回路であるので説明は省略する。
【００１６】
図１では、理解を容易にするために、画像メモリ回路１００は、画素データを読み出す出力ポートＤｏｕｔと、画素データを書き込む入力ポートＤｉｎとが別個のデータポートとして記載されている。しかし、この画像メモリ回路１００の構成は、従来から使用されているものであり、画素データを読み出すポートと書き込むポートとが共通のデータポートであってもよいし、いわゆるデュアルポートのように、２つの独立したデータポートのものでもよい。いずれにせよ、アドレスポートであるＡＤによって指定される記憶エリアから画素データを読み出すモードと、ＡＤによって指定される記憶エリアに画素データを書き込むモードとは独立したメモリアクセス動作となる。
【００１７】
画像メモリ回路１００において、読出イネーブルポートＲＥは、入力されるイネーブル信号ＲＥがハイレベルのときに読み出しが可能となる。読出ポートＲＤは、入力される読出信号のＲＤのパルスの立ち上がりで、ＡＤで指定される記憶エリアの画素データを出力ポートＤｏｕｔから読み出すことが可能となる。書込イネーブルポートＷＥは、入力されるイネーブル信号ＷＥがハイレベルのときに書き込みが可能となる。書込ポートＷＴは、入力される書込信号ＷＴのパルスの立ち上がりで、ＡＤで指定される記憶エリアに画像データを入力ポートＤｉｎから書き込むことが可能になる。
【００１８】
画素データの値が１〜２５５の範囲とし、画素データが無い値を０とすると、画素データは８ビットで表される。画素データの値が１〜６５５３５の範囲とし、画素データが無い値を０とすると、画素データは１６ビットで表される。この実施形態においては、８ビットの画素データのノイズ成分を低減する場合を想定する。
【００１９】
ノイズ低減回路２００は、レジスタブロックＢＬ（１）〜レジスタブロックＢＬ（９）で構成され、各レジスタブロックに共通に、画像メモリ回路１００の出力ポートＤｏｕｔが接続されている。各レジスタブロックには、１つの画素データを記憶することができる。また、あらかじめ設定されているレジスタブロック（５）の出力ポートＤｏｕｔは、画像メモリ回路１００の入力ポートＤｉｎに接続されている。また、図示しない電子回路からノイズ低減回路２００にシフト信号ＳＰおよびクリア信号ＣＬが入力される。
【００２０】
図２〜図４は、ノイズ低減回路２００の内部回路を示す図である。図２は、レジスタブロックＢＬ（１）〜レジスタブロックＢＬ（３）の回路図であり、図３は、レジスタブロックＢＬ（３）に続くレジスタブロックＢＬ（４）〜レジスタブロックＢＬ（６）の回路図であり、図４は、レジスタブロックＢＬ（６）に続くレジスタブロックＢＬ（７）〜レジスタブロックＢＬ（９）の回路図である。
【００２１】
次に、図２〜図４のノイズ低減回路２００の機能について説明する。
図２のレジスタブロックＢＬ（１）は、レジスタ回路１１、比較回路１２、インバータ回路１５、およびＡＮＤ回路１６で構成されている。レジスタ回路１１の入力端子Ｄ１は、画像メモリ回路１００の出力ポートＤｏｕｔに接続されている。レジスタ回路１１は、入力端子Ｄ１に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ１から読み出すことができる。比較回路１２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値、すなわち、レジスタ回路１１の入力端子Ｄ１に供給された画素データの値と、レジスタ回路１１に記憶されて入力端子ｑに供給される画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベル（これを「正論理」とする）の比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベル（これを「負論理」とする）の比較信号を出力する。インバータ回路１５は、比較回路１２から出力される比較信号の論理を反転して出力する。ＡＮＤ回路１６は、比較回路１２から出力される比較信号がハイレベルのときに、レジスタ回路１１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、比較信号がローレベルのときに、レジスタ回路１１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。
【００２２】
図２のレジスタブロックＢＬ（２）は、レジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、インバータ回路２５、ＡＮＤ回路２６、およびＯＲ回路２７で構成されている。レジスタ回路２１の入力端子Ｄ２は、画像メモリ回路１００の出力ポートＤｏｕｔに接続されている。レジスタ回路２１は、入力端子Ｄ２に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ２から読み出すことができる。比較回路２２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値の値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路２４は、比較回路２２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（１）のインバータ回路１５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路２３の制御端子ｃに与え、比較回路２２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（１）のインバータ回路１５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路２３の制御端子ｃに与える。スイッチ回路２３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路１１に記憶された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給する。ＯＲ回路２７は、比較回路２２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（１）の比較回路１２から出力される比較信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路２６は、ＯＲ回路２７から出力される信号がハイレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路２７から出力される信号がローレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。インバータ回路２５は、比較回路２２から出力される比較信号の論理を反転して出力する。
【００２３】
図２のレジスタブロックＢＬ（３）は、レジスタ回路３１、比較回路３２、スイッチ回路３３、ＡＮＤ回路３４、インバータ回路３５、ＡＮＤ回路３６、およびＯＲ回路３７で構成されている。ＯＲ回路３７は、比較回路３２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（２）のＯＲ回路２７から出力される比較信号がハイレベルのときに、ハイレベルの信号を出力する。その他の機能については、レジスタブロックＢＬ（２）と全く同一であるので、説明は省略する。
【００２４】
図３のレジスタブロック（４）およびレジスタブロック（６）、図４のレジスタブロック（７）およびレジスタブロック（８）は、図２のレジスタブロックＢＬ（２）およびレジスタブロック（３）と全く同一の回路構成になっている。また、レジスタブロック（５）およびレジスタブロック（９）についても、図２のレジスタブロック（２）およびレジスタブロックＢＬ（３）とほとんど同一の回路構成になっている。
【００２５】
したがって、レジスタブロックＢＬ（４）〜レジスタブロックＢＬ（９）の機能をまとめて説明する。
レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９は、画像メモリ回路１００の出力ポートＤｏｕｔに接続されている。レジスタ回路４１〜９１は、入力端子Ｄ４〜Ｄ９に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ４〜Ｑ９から読み出すことができる。比較回路４２〜９２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値の値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路４４〜９４は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与え、比較回路４２〜９２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与える。スイッチ回路４３〜９３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路３１〜８１に記憶された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給する。ＯＲ回路４７〜９７は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のＯＲ回路３７〜８７から出力される信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路４６〜９６は、ＯＲ回路４７〜９７から出力される信号がハイレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路３７〜８７から出力される信号がローレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。
【００２６】
図３のレジスタブロック（４）〜（６）、図４のレジスタブロック（７）およびレジスタブロック（８）において、インバータ回路４〜８は、比較回路４２〜８２からの比較信号の論理を反転して、次段のレジスタブロック（５）〜（９）のＡＮＤ回路５４〜９４に入力する。しかし、最終段のレジスタブロック（９）においては、比較回路９２からの比較信号の論理を反転するインバータ回路はない。また、第５段のレジスタブロック（５）において、レジスタ５１の出力端子Ｑ５は、図１において説明したように、画像メモリ回路１００の入力ポートＤｉｎに接続されている。
【００２７】
次に、図１〜図４に示した画像メモリ回路１００およびノイズ低減回路２００の動作について、図５の具体例を参照しながら説明する。
図５（Ａ）は、フィルタ処理対象の９個の画素データの値を示している。中央の画素データがノイズ低減の対象として指定される画素データであり、周囲の８個の画素データとの間でメディアンフィルタ処理が行われる。本発明のノイズ低減回路２００においては、９個の画素データを読み出す順序は何ら制約を受けない。図５（Ａ）において、指定の画素データを最初に読み出して、次に、左上、上、右上、左、右、左下、右下の順でもよいし、垂直方向の３個の画素データをブロックとして上から順に読み出し、左から右のブロックに移動する方法でもよいし、指定の画素データを中心として、８個の画素データを時計回り又は反時計回りに読み出してもよい。ここでは、通常多く用いられている読み出し順を採用し、９個の画素データを左上、上、右上、左、中央、右、左下、右下の順で読み出すこととする。なお、指定の画素が２次元の画面の端にある場合には、周囲の画素データが８個にならない。この場合には、同じ画素データを複数回読み出して全体を９個の画素データとする。また、画像メモリ回路１００に記憶されている２次元の画素データの値は全て０よりも大きい値（１〜２５５）とする。
【００２８】
図６は、図示しない電子回路において生成されるパルス信号のタイミングチャートである。図６において、ＣＬＯＣＫは、他のパルス信号の基準となる一定の時間間隔の周期信号である。ＲＤ／ＳＰは、ＣＬＯＣＫの４倍の周期のパルス信号であり、図１において説明したように、読出イネーブル信号ＲＥがハイレベルのときに、ＲＤ／ＳＰのパルス信号の立ち上がりのタイミングで、画像メモリ回路１００の画素データが出力ポートＤｏｕｔから読み出されて、ノイズ低減回路２００の各レジスタブロックに供給される。すなわち、番号０〜９で表すＲＤ／ＳＰのうち、ＲＤ／ＳＰ「０」の立ち上がりのタイミングは、読出イネーブル信号ＲＥがローレベルであるので画素データは読み出されない。ＲＤ／ＳＰ「１」〜「９」の立ち上がりのタイミングで、図５（Ａ）の９個の画素データが順に読み出される。
【００２９】
ＲＤ／ＳＰのパルス信号の立ち下がりのタイミングが各レジスタブロックに入力されるシフト信号となる。したがって、ＲＤ／ＳＰ「１」〜「９」の立ち下がりのタイミングで、シフト信号が各レジスタブロックに入力される。ただし、ＲＤ／ＳＰ「１」の立ち上がりのタイミングと立ち下がりのタイミングとの間に、ＣＬが各レジスタブロックのレジスタ回路に入力され、記憶されている画素データが０にクリアされる。なお、画像処理装置の電源がオンになったときのイニシャライズにおいても、各レジスタブロックのレジスタ回路は０にクリアされる。すなわち、画像メモリ回路１００から９個の画素データが読み出された直後で、且つ、シフト信号が各レジスタブロックに入力される直前に、９個のレジスタ回路１１〜９１がクリアされ、各レジスタ回路には「０」が記憶される。
【００３０】
ＲＤ／ＳＰ「１」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された１番目の画素データ「（値＝）１００」が各レジスタブロックに供給されたときは、読み出された画素データの値「１００」は「０」より大きいので、比較回路１２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、レジスタ回路１１には、画像メモリ回路１００から読み出された１番目の画素データの値「１００」が記憶され、残りのレジスタ回路２１〜９１には値「０」のデータが記憶される。
【００３１】
次に、ＲＤ／ＳＰ「２」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１００」と、読み出された画素データの値「１１０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２〜９２は、レジスタ回路２１〜９１に記憶されている値「０」のデータと、読み出された２番目の画素データの値「１１０」とを比較する。したがって、比較回路２２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１００」が供給され、レジスタ回路３１〜９１の入力端子Ｄ３〜Ｄ９には、前段のレジスタ回路２１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、レジスタ回路１１には、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路３１〜９１には値「０」のデータが記憶される。
【００３２】
次に、ＲＤ／ＳＰ「３」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１００」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路２２の出力端子ｒからはハイレベルの比較信号が出力される。また同時に、比較回路３２〜９２は、レジスタ回路３１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１２０」とを比較する。したがって、比較回路３２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１１０」が供給され、レジスタ回路３１の入力端子Ｄ３には、前段のレジスタ回路２１に記憶されている画素データの値「１００」が供給され、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９には、前段のレジスタ回路３１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、レジスタ回路１１には、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１１０」が記憶され、レジスタ回路３１には、レジスタ回路２１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路４１〜９１には値「０」のデータが記憶される。
【００３３】
次に、ＲＤ／ＳＰ「４」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された４番目の画素データの値「９０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路２２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路２７には、比較回路１２からローレベルの比較信号が入力され、且つ、比較回路２２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路２６には、ＯＲ回路２７からローレベルの信号が入力されるので、レジスタ回路２１へのシフト信号は無効になる。また同時に、比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路３２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路３７には、ＯＲ回路２７からローレベルの比較信号が入力され、且つ、比較回路３２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路３６には、ＯＲ回路３７からローレベルの信号が入力されるので、レジスタ回路３１へのシフト信号は無効になる。したがって、レジスタ回路１１、２１、３１には新たな画素データは記憶されず、現在記憶している画素データの値「１２０」、「１１０」、「１００」をそのまま維持する。なお、レジスタブロック（１）〜（３）のインバータ回路１５〜３５からはハイレベルの信号が後段のＡＮＤ回路２４〜４４に入力される。
【００３４】
この場合においては、比較回路４２〜９２は、レジスタ回路４１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「９０」とを比較する。したがって、比較回路４２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路４４には、インバータ回路３５からハイレベルの信号が入力され、且つ、比較回路４２からハイレベルの信号が入力される。したがって、ＡＮＤ回路４４からはハイレベルの選択信号がスイッチ回路４３の制御端子ｃに与えられ、画像メモリ回路１００から読み出された画像データの値「９０」がレジスタ回路４１の入力端子Ｄ４に供給される。この場合には、比較回路４２からハイレベルの比較信号がＯＲ回路４７に入力されるので、レジスタ回路４１へのシフト信号は有効になる。この結果、読み出された画像データの値「９０」がレジスタ回路４１に記憶される。
【００３５】
さらにこの場合においては、ＡＮＤ回路５４〜９４には、インバータ回路４５〜８５からローレベルの信号が入力され、ＡＮＤ回路５４〜９４からローレベルの選択信号がスイッチ回路５３〜９３に与えられる。したがって、レジスタ回路５１〜９１の入力端子Ｄ５〜Ｄ９には、前段のレジスタ回路４１〜８１に記憶されている値「０」のデータが供給される。また、比較回路５２の出力端子ｒからハイレベルの比較信号がＯＲ回路５７に入力されるので、ＯＲ回路５７からＡＮＤ回路５６およびＯＲ回路６７にハイレベルの信号が入力される。したがって、ＯＲ回路７７〜９７には、それぞれ前段のＯＲ回路６７〜８７から順にハイレベルの信号が入力される。したがって、レジスタ回路５１〜９１へのシフト信号が有効となる。この結果、レジスタ回路５１〜９１には値「０」のデータが記憶される。
【００３６】
次に、ＲＤ／ＳＰ「５」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「２５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「２５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「２５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「９０」と、読み出された画素データの値「２５０」とを比較する。また、比較回路５２〜９２は、レジスタ回路５１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「２５０」とを比較する。この場合には、比較回路１２〜９２の出力端子ｒからは全てハイレベルの比較信号が出力される。したがって、ＡＮＤ回路２４〜９４には、前段のインバータ回路１５〜８５からローレベルの信号が入力される。したがって、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３の制御端子ｃに入力され、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶された画素データの値「１２０」、「１１０」、「１００」、又は、値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびレジスタブロック（２）のＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、レジスタ回路１１には、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が記憶され、レジスタ回路２１には、前段のレジスタ回路１１に記憶された画素データの値「１２０」が記憶され、レジスタ回路３１には、前段のレジスタ回路２１に記憶された画素データの値「１１０」が記憶され、レジスタ回路４１には、前段のレジスタ回路３１に記憶された画素データの値「１００」が記憶される。また、レジスタ回路５１〜９１には値「０」が記憶される。
【００３７】
次に、ＲＤ／ＳＰ「６」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された６番目の画素データの値「１３０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１３０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１３０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１３０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１００」と、読み出された画素データの値「１３０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「９０」と、読み出された画素データの値「１３０」とを比較する。また、比較回路６２〜９２は、レジスタ回路６１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１３０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。
【００３８】
この場合には、ＡＮＤ回路２４には、前段のインバータ回路１５からハイレベルの信号が入力され、且つ、比較回路２２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路２４からハイレベルの選択信号がスイッチ回路２３に与えられ、画像メモリ回路１００から読み出された６番目の画素データの値「１３０」がレジスタ回路２１に供給される。また、比較回路２２の出力端子ｒからはハイレベルの比較信号が出力されて、ＯＲ回路２７に入力される。したがって、ＯＲ回路２７から出力されたハイレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号は有効になる。この結果、レジスタ回路２１には、画素データの値「１３０」が記憶される。
【００３９】
さらにこの場合には、ＡＮＤ回路３４〜９４には、前段のインバータ回路２５〜８５からローレベルの信号が入力される。したがって、ＡＮＤ回路３４〜９４からハイレベルの選択信号がスイッチ回路３３〜９３に与えられ、前段のレジスタ回路２１〜５１に記憶されている画素データの値「１２０」、「１１０」、「１００」、「９０」がレジスタ回路３１〜６１に供給され、値「０」のデータがレジスタ回路７１〜９１に供給される。また、ＯＲ回路２７から出力されたハイレベルの信号が次段のＯＲ回路３７に入力され、ＯＲ回路４７〜９７に順に前段のＯＲ回路３７〜８７から出力されたハイレベルの信号が入力されるので、レジスタ回路４１〜９７へのシフト信号は有効になる。この結果、レジスタ回路３１〜６１には、それぞれ画素データの値「１２０」、「１１０」、「１００」、「９０」が記憶され、レジスタ回路７１〜９１には、値「０」が記憶される。
【００４０】
次に、ＲＤ／ＳＰ「７」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された７番目の画素データの値「８０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「８０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「８０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「８０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「８０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「８０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「８０」とを比較する。また、比較回路７２〜９２は、レジスタ回路７１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「８０」とを比較する。
【００４１】
この場合には、比較回路１２〜６２からは、全てローレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。また、ＯＲ回路２７〜６７には、ローレベルの比較信号が入力され、且つ、前段のＡＮＤ回路１６、ＯＲ回路２７〜６７からローレベルの信号が入力される。したがって、ＯＲ回路２７〜６７からはローレベルの信号がＡＮＤ回路２６〜６６に入力されるので、レジスタ回路２１〜６１へのシフト信号は無効となる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、レジスタ２１〜９１には新たな画素データは記憶されず、現在記憶している画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」がそのまま維持される。
【００４２】
ＡＮＤ回路７４には、インバータ回路６５からハイレベルの信号が入力され、且つ、比較回路７２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路７４からハイレベルの選択信号がスイッチ回路７３に与えられ、画像メモリ回路１００から読み出された７番目の画素データの値「８０」がレジスタ回路７１に記憶される。また、インバータ回路７５、８５からローレベルの信号がＡＮＤ回路８４、９４に入力される。したがって、ＡＮＤ回路８４、９４からローレベルの選択信号がスイッチ回路８３、９３に与えられ、それぞれ前段のレジスタ回路７１、８１に記憶された値「０」のデータがレジスタ回路８１、９１の入力端子Ｄ８、Ｄ９に供給される。また、比較回路８２、９２からハイレベルの比較信号がＯＲ回路８７、９７に入力される。したがって、ＯＲ回路８７、９７からハイレベルの信号がＡＮＤ回路８６、９６に入力されるので、レジスタ回路８１、９１へのシフト信号が有効となる。この結果、レジスタ回路８１、９１に値「０」のデータが記憶される。
【００４３】
次に、ＲＤ／ＳＰ「８」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された８番目の画素データの値「１５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１５０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「１５０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「１５０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「８０」と、読み出された画素データの値「１５０」とを比較する。また、比較回路８２、９２は、レジスタ回路８１、９１に記憶されている値「０」のデータと、読み出された画素データの値「１５０」とを比較する。
【００４４】
この場合には、比較回路１２からはローレベルの比較信号が出力される。また、比較回路２２〜９２からはハイレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、ＡＮＤ回路２４には、インバータ回路１５からハイレベルの信号が入力され、且つ、比較回路２２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路２４からハイレベルの選択信号がスイッチ回路２３の制御端子ｃに与えられ、読み出された画素データの値「１５０」がレジスタ回路２１の入力端子Ｄ２に供給される。また、比較回路２２からハイレベルの比較信号がＯＲ回路２７に入力される。したがって、ＯＲ回路２７からハイレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号が有効になる。この結果、読み出された画素データの値「１５０」がレジスタ回路２１に記憶される。
【００４５】
この場合には、インバータ回路２５〜８５からローレベルの信号がＡＮＤ回路３４〜９４に入力される。したがって、ＡＮＤ回路３４〜９４からローレベルの選択信号がスイッチ回路３３〜９３の制御端子ｃに与えられ、レジスタ回路３１〜８１の入力端子Ｄ３〜Ｄ８には、それぞれ前段のレジスタ回路２１〜７１に記憶された画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が供給される。また、ＯＲ回路２７からハイレベルの信号がＯＲ回路３７に入力され、ＯＲ回路４７〜９７には前段のＯＲ回路３７〜８７からハイレベルの信号が入力される。したがって、ＯＲ回路４７〜９７からハイレベルの信号がＡＮＤ回路３６〜９６に入力されるので、レジスタ回路３１〜９１へのシフト信号が有効になる。この結果、レジスタ回路３１〜８１には画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。また、レジスタ回路９１には値「０」のデータが記憶される。
【００４６】
次に、ＲＤ／ＳＰ「９」の立ち下がりのタイミングで、画像メモリ回路１００から読み出された９番目の画素データの値「１４０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１４０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１５０」と、読み出された画素データの値「１４０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１４０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１４０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１４０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「１００」と、読み出された画素データの値「１４０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「９０」と、読み出された画素データの値「１４０」とを比較する。比較回路８２は、レジスタ回路８１に記憶されている画素データの値「８０」と、読み出された画素データの値「１４０」とを比較する。また、比較回路９２は、レジスタ回路９１に記憶されている値「０」のデータと、読み出された画素データの値「１４０」とを比較する。
【００４７】
この場合には、比較回路１２、２２からローレベルの比較信号が出力される。また、比較回路３２〜９２からハイレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。さらに、ＯＲ回路２７には比較回路２２からローレベルの比較信号が入力され、且つ、比較回路１２からローレベルの比較信号が入力される。したがって、ＯＲ回路２７からローレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、レジスタ回路２１には新たな画素データは記憶されず、現在記憶している画素データの値「１５０」がそのまま維持される。
【００４８】
またこの場合には、ＡＮＤ回路３４には、インバータ回路２５からハイレベルの信号が入力され、且つ、比較回路３２からハイレベルの比較信号が出力される。したがって、ＡＮＤ回路３４からハイレベルの選択信号がスイッチ回路３３の制御端子ｃに与えられ、読み出された画素データの値「１４０」がレジスタ回路３１の入力端子Ｄ３に供給される。また、ＯＲ回路３７には比較回路３２からハイレベルの比較信号が出力される。したがって、ＯＲ回路からハイレベルの信号がＡＮＤ回路３６に入力されるので、レジスタ回路３１へのシフト信号が有効になる。この結果、読み出された画素データの値「１４０」がレジスタ回路３１に記憶される。
【００４９】
この場合には、インバータ回路３５〜８５からローレベルの信号がＡＮＤ回路４４〜９４に入力される。したがって、ＡＮＤ回路４４〜９４からローレベルの選択信号がスイッチ回路３３〜９３の制御端子ｃに与えられ、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９には、それぞれ前段のレジスタ回路３１〜８１に記憶された画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が供給される。また、ＯＲ回路２７からハイレベルの信号がＯＲ回路３７に入力され、ＯＲ回路４７〜９７には前段のＯＲ回路３７〜８７からハイレベルの信号が入力される。したがって、ＯＲ回路４７〜９７からハイレベルの信号がＡＮＤ回路３６〜９６に入力されるので、レジスタ回路４１〜９１へのシフト信号が有効になる。この結果、レジスタ回路４１〜９１には画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。
【００５０】
したがって、この場合には、図５（Ｂ）に示すように、図１のレジスタブロックＢＬ（１）〜（９）に、画素データの値「２５０」、「１５０」、「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。すなわち、ノイズ低減の対象となる指定の画素データと、指定の画素データに隣接する周囲の８個の画素データからなる９個の画素データが、値の大きい順序で図１のメディアンフィルタ回路２００に記憶される。したがって、レジスタブロックＢＬ（５）のレジスタ回路、すなわち、図３に示すレジスタ回路５１に記憶されている画素データの値「１２０」が中央値になる。
【００５１】
また、図６のＲＤ／ＳＰ「９」の立ち下がりのタイミングで、書込イネーブル信号ＷＥがハイレベルとなり、図１の画像メモリ回路１００へのデータ書き込みが可能になる。このときには、画像メモリ回路１００へのアドレス信号ＡＤは、ノイズ低減の対象となる指定の画素データを指定する。また、同時に、読出イネーブル信号がローレベルとなり、画像メモリ回路１００からのデータ読み出しが禁止になるので、図６において、ＲＤ／ＳＰ「９」の次のＲＤ／ＳＰ「０」の立ち上がりでは、画素データは読み出されない。また、ＲＤ／ＳＰ「０」の立ち上がりと同じタイミングで書込信号ＷＰのパルスが立ち上がる。この結果、レジスタ回路５１に記憶されている画素データの中央値「１２０」によって、画像メモリ回路１００におけるノイズ低減の対象となる指定の画素データの値「２５０」を書き換える。そして、図６のＲＤ／ＳＰ「１」の立ち下がりのタイミングで、次の９個の画像データが画像メモリ回路１００から読み出されて、ＲＤ／ＳＰ「１」の立ち下がりのタイミングのシフト信号の前に、クリア信号ＣＬが入力されるので、メディアンフィルタ回路２００の全てのレジスタ回路１１〜９１に記憶された画素データがクリアされる。
【００５２】
このように、上記第１実施形態によれば、ノイズ低減の対象である指定の画素データと、周囲の８個の画素データからなる９個の画素データを画像メモリ回路１００から読み出して、ＲＤ／ＳＰのタイミングに同期して、メディアンフィルタ回路２００に記憶したときには、自動的にそれらの中央値が決定され、その中央値によって、ノイズ低減の対象である指定の画素データの値が書き換えられる。すなわち、９個の画素データを読み出すだけで、他のいかなるデータ処理も必要とすることなく、指定の画素データのノイズを低減をするためのデータ比較処理を大幅に高速化できる。
【００５３】
なお、上記第１実施形態においては、９個の画素データを値が大きい順にレジスタ回路１１〜レジスタ回路９１に記憶する構成にしたが、９個の画素データを値が小さい順にレジスタ回路１１〜レジスタ回路９１に記憶する構成にしてもよい。この場合は、読み出された画素データＤｉｎの値がシフトレジスタ回路に記憶された画素データの値より小さいときに、比較回路１２〜９２からハイレベルの比較信号を出力するように回路を構成するだけでよい。
【００５４】
また、ノイズ低減の対象である指定の画素データが２次元画像の端にある場合には、隣接する周囲の画素データが８個に達しない。例えば、図５（Ａ）の９個の画素データが２次元画面の隅にある場合に、指定の画素データが「１００」の位置であるときは、周囲の画素データは、値が「１１０」、「２５０」、「９０」の３個の画素データである。この場合には、残りの５個の画素データとして、値が「１１０」、「２５０」、「９０」の３個の画素データを重複して使用し、全部で９個の画素データによって中央値を決定する。
【００５５】
次に、第２実施形態のデータ比較処理回路について、図７および図８を参照して説明する。
図７および図８は、入力されるデータを最大値から順にｎ個記憶するデータ比較処理回路である。記憶されるデータは複数ビット、例えば、４、８、１２、１６、３２ビットであるが、データの種類は問わない。第１実施形態のような画素データだけでなく、オーディオデータ、測定データ、データベースシステムで処理する検索データなど、様々な種類のデータを処理することが可能である。なお、第２実施形態の基本的な構成は、第１実施形態におけるメディアンフィルタ回路２００とほぼ同じであるので、同一の回路部分については、第１実施形態と同じ符号で表すとともに、第１実施形態と重複する説明はなるべく省略し、第１実施形態と異なる構成について説明する。
【００５６】
第１実施形態のデータ比較処理回路のメディアンフィルタ回路２００は９個のレジスタブロックＢＬ（１）〜ＢＬ（９）で構成されていたが、第２実施形態のデータ比較処理回路は、ｎ個（ｎは、２以上の整数）のレジスタブロックＢＬ（１）〜ＢＬ（ｎ）で構成されている。第１実施形態におけるレジスタブロックＢＬ（１）およびＢＬ（２）は、第２実施形態におけるレジスタブロックＢＬ（１）およびＢＬ（２）に対応している。また、図７において、点線の枠は、レジスタブロックＢＬ（３）ないしＢＬ（ｎ−１）であり、省略した内部回路はレジスタブロックＢＬ（２）と同一である。図８は、レジスタブロックＢＬ（ｎ）の内部回路である。
【００５７】
図７のレジスタブロックＢＬ（１）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（１）の内部回路との相違は、ＡＮＤ回路１８が追加されていることと、レジスタ回路１１のＱ１が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路１８にＡＮＤ回路２０１の出力が接続されていることである。また、図７のレジスタブロックＢＬ（２）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（２）の内部回路との相違は、ＡＮＤ回路２８が追加されていることと、レジスタ回路１１のＱ２が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路２８の出力がＡＮＤ回路２０２に接続されていることである。なお、図８のレジスタブロック（ｎ）において、レジスタ回路ｎ１、比較回路ｎ２、スイッチ回路ｎ３、ＡＮＤ回路ｎ４、ｎ６、ｎ８、インバータ回路ｎ５、ＯＲ回路ｎ７については、それぞれ、レジスタブロックＢＬ（２）のレジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、２６、２８、インバータ回路２５、ＯＲ回路２７に対応している。さらに、レジスタブロック（ｎ）には、スイッチ回路ｎ９およびレジスタ回路ｎ１０が設けられている。
【００５８】
次に、図７および図８の回路の機能について説明する。
図７のレジスタブロックＢＬ（１）において、ＡＮＤ回路２０１に接続されている信号ラインＬ（ｎ−１）にローレベルの信号が入力されたときは、ＡＮＤ回路２０１からローレベルの信号がＡＮＤ回路１８に入力され、ＡＮＤ回路１８の出力がローレベルになる。したがって、比較回路１２から出力される比較信号に拘わらず、ＡＮＤ回路１６にローレベルの信号が入力され、レジスタ回路１１へのシフト信号が無効になる。その結果、レジスタ回路１１は入力データＤｉｎを記憶しない。すなわち、入力されるデータを最大値から順に（ｎ−１）個記憶するデータ比較処理回路が構成される。この場合には、（ｎ−１）個のデータが、値が大きい順にレジスタブロックＢＬ（２）〜（ｎ）に記憶される。
【００５９】
また、ＡＮＤ回路２０２に接続されている信号ラインＬ（ｎ−２）にローレベルの信号が入力されたときは、ＡＮＤ回路２０２からローレベルの信号がＡＮＤ回路２８に入力され、ＡＮＤ回路２８の出力がローレベルになる。したがって、比較回路２２から出力される比較信号に拘わらず、ＯＲ回路２７にローレベルの信号が入力される。また、ＡＮＤ回路２０２からローレベルの信号がＡＮＤ回路２０１に入力されるので、比較回路１２から出力される比較信号に拘わらず、ＡＮＤ回路１６にローレベルの信号が入力され、レジスタ回路１１へのシフト信号が無効になる。さらに、ＯＲ回路２７にもローレベルの信号が入力されるので、ＯＲ回路２７からローレベルの信号がＡＮＤ回路２６に入力され、レジスタ回路２１へのシフト信号が無効になる。その結果、レジスタ回路１１、２１は入力データＤｉｎを記憶しない。すなわち、入力されるデータを最大値から順に（ｎ−２）個記憶するデータ比較処理回路が構成される。この場合には、（ｎ−２）個のデータが、値が大きい順にレジスタブロックＢＬ（３）〜（ｎ）に記憶される。
【００６０】
このように、（ｎ−１）個のＡＮＤ回路２０１〜２０４のうち、任意のＡＮＤ回路の信号ラインにローレベルの信号が入力されると、そのＡＮＤ回路の出力に接続されているレジスタブロックを含む前段のレジスタ回路へのシフトシフト信号が無効になり、入力データＤｉｎを記憶しない。その結果、残りのレジスタブロックに値が大きい順にデータが記憶される。
【００６１】
図８のレジスタブロックＢＬ（ｎ）において、Ｌ（０）の信号ラインにローレベルの信号が入力されない場合には、このデータ比較処理回路に記憶されたデータの中で、最も小さい値のデータがレジスタ回路ｎ１に記憶され、それ以下の値の入力データＤｉｎは、全てレジスタ回路ｎ１０を介して外部に出力される。一方、Ｌ（０）の信号ラインにローレベルの信号が入力されると、ＡＮＤ回路ｎ８に入力され、ＡＮＤ回路ｎ８の出力がローレベルになる。したがって、比較回路ｎ２から出力される比較信号に拘わらず、ＯＲ回路ｎ７にローレベルの信号が入力される。この場合には、全てのレジスタブロックＢＬ（１）〜（ｎ）へのシフト信号が無効になる。また、レジスタブロックＢＬ（ｎ）のインバータ回路ん５からハイレベルの信号がスイッチ回路ｎ９の制御端子ｃに入力される。その結果、スイッチ回路ｎ９の入力端子ａに供給される入力データＤｉｎが全てレジスタ回路ｎ１０を介して外部に出力される。すなわち、この場合には、入力されたデータはこのデータ比較処理回路をスルーすることになる。
【００６２】
図７および図８のデータ比較処理回路に示したように、各段のレジスタ回路１１〜ｎ１において、Ｑ１〜Ｑｎに記憶されたデータは、外部から読み出すことができる。したがって、このデータ比較処理回路へのデータ入力が終了したときは、例えば、全ての信号ラインがハイレベルであるとすると、ｎ個のデータが値の大きい順位で記憶されている。したがって、任意の順位のデータを容易に読み出すことができる。例えば、２５個のデータが記憶されている場合に、中央値である１３順位のデータを読み出すことができる。
【００６３】
なお、上記第２実施形態においては、ｎ個のデータを値が大きい順にレジスタ回路１１〜レジスタ回路ｎ１に記憶する構成にしたが、ｎ個のデータを値が小さい順にレジスタ回路１１〜レジスタ回路ｎ１に記憶する構成にしてもよい。この場合は、読み出された画素データＤｉｎの値がシフトレジスタ回路に記憶されたデータの値より小さいときに、比較回路１２〜ｎ２からハイレベルの比較信号を出力するように回路を構成するだけでよい。
【００６４】
次に、第３実施形態のデータ比較処理回路について、図９を参照して説明する。
図９は、入力される２系統の４ビットのデータＡおよびＢの大小を比較する４ビットコンパレータ回路３００である。図９において、排他的論理和であるＥＸＯＲ回路１、１１、２１、３１は、信号ａ０、ａ１、ａ２、ａ３からなるデータＡ、および、信号ｂ０、ｂ１、ｂ２、ｂ３からなるデータＢが入力される。この場合において、ａ３およびｂ３は最上位ビット（ＭＳＢ）であり、ａ０およびｂ０は最下位ビット（ＬＳＢ）である。ＥＸＯＲ回路１、１１、２１、３１の出力は、３ＮＡＮＤ回路２、１２、２２、３２の第１の入力に接続されている。また、信号ａ０、ａ１、ａ２、ａ３は、それぞれ３ＮＡＮＤ回路２、１２、２２、３２の第２の入力に与えられる。インバータ回路３、１３、２３、３３は、ＥＸＯＲ回路１、１１、２１、３１から出力される信号を反転して、ＡＮＤ回路４、１４、２４、３４の第２の入力に与える。ハイレベルの端子ｄは３ＮＡＮＤ回路３２の第３の入力およびＡＮＤ回路３４の第１の入力に接続されている。ＡＮＤ回路３４の出力は、３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に接続されている。ＡＮＤ回路２４の出力は、３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に接続されている。ＡＮＤ回路１４の出力は、３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路２の第１の入力に接続されている。ＡＮＤ回路４の出力は端子ｅに接続されている。
【００６５】
３ＮＡＮＤ回路２、１２、２２、３２の出力はオープンコレクタであり、出力端子ｃに接続されている。端子ｆに接続されたインバータ回路４１の出力もオープンコレクタであり、出力端子ｃに接続されている。すなわち、３ＮＡＮＤ回路２、１２、２２、３２の出力、および、インバータ回路４１の出力は、出力端子ｃに接続されるプルアップ抵抗（図示せず）によって、負論理をアクティブとするワイヤードＯＲ回路を構成する。したがって、３ＮＡＮＤ回路２、１２、２２、３２、および、インバータ回路４１のうち、いずれかの出力がローレベルになると、プルアップ抵抗を介して、そのローレベルの出力に電流が流れ込む。ただし、インバータ回路４１の入力は抵抗Ｒ２によってプルダウンされているので、端子ｆにハイレベルの信号が入力されない限り、インバータ回路４１の出力は常にハイレベルになっている。
【００６６】
端子ｄは、カスケード接続される上位の４ビットコンパレータ回路に接続することができる。また、端子ｅは、カスケード接続される下位の４ビットコンパレータ回路に接続することができる。いま、上位および下位の４ビットコンパレータ回路とカスケードされていない場合を想定する。この場合には、プルアップされた抵抗Ｒ１によって、３ＮＡＮＤ回路３２の第３の入力およびＡＮＤ回路３４の第１の入力はハイレベルになっている。
【００６７】
以下、入力されるデータＡ（信号ａ０、ａ１、ａ２、ａ３）およびデータＢ（信号ｂ０、ｂ１、ｂ２、ｂ３）の各ビットの状態に応じて、図９のデータ比較処理回路である４ビットコンパレータ回路の動作を説明する。
【００６８】
信号ａ３がハイレベル、信号ｂ３がローレベルの場合には、ＥＸＯＲ回路３１からハイレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。このとき、３ＮＡＤ回路３２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路３２はインバータ回路として機能し、ハイレベルのａ３が３ＮＡＮＤ回路３２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からローレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からローレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第２の入力に与えられる。このため、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このためさらに、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。さらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、ＥＸＯＲ回路１、１１、２１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２、２２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路３２の出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理の出力は最上位ビットのａ３がｂ３よりも大きいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１、ａ２およびｂ２の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００６９】
信号ａ３がローレベル、信号ｂ３がハイレベルの場合には、３ＮＡＤ回路３２の第１の入力はローレベルであるので、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からローレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からローレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。このため、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１、２１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２、２２の第３の入力に与えられたローレベルの信号によって、３ＮＡＮＤ回路２、１２、２２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は最上位ビットのａ３がｂ３よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１、ａ２およびｂ２の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７０】
信号ａ３と信号ｂ３とが同じレベルの場合には、ＥＸＯＲ回路３１からローレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からハイレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。
（２−１）、この場合において、信号ａ２がハイレベル、信号ｂ２がローレベルの場合には、ＥＸＯＲ回路２１からハイレベルの信号が３ＮＡＮＤ回路２２の第１の入力に与えられる。このとき、３ＮＡＤ回路２２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２２はインバータ回路として機能し、ハイレベルのａ２が３ＮＡＮＤ回路２２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路２２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも大きいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７１】
信号ａ３と信号ｂ３とが同じレベルの場合において、信号ａ２がローレベル、信号ｂ２がハイレベルの場合には、３ＮＡＮＤ回路２２の第１の入力はローレベルであるので、ハイレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７２】
信号ａ３と信号ｂ３とが同じレベル、および、信号ａ２と信号ｂ２とが同じレベルの場合には、ＥＸＯＲ回路３１、２１からローレベルの信号が３ＮＡＮＤ回路３２、２２の第１の入力に与えられる。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２および３ＮＡＮＤ回路２２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられているので、ＡＮＤ回路２４からハイレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。
この場合において、信号ａ１がハイレベル、信号ｂ１がローレベルの場合には、ＥＸＯＲ回路１１からハイレベルの信号が３ＮＡＮＤ回路１２の第１の入力に与えられる。このとき、３ＮＡＤ回路１２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ハイレベルのａ１が３ＮＡＮＤ回路１２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路１２から出力される。また、インバータ回路１３からローレベルの信号がＡＮＤ回路１４の第１の入力端子に入力され、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１の出力のレベルに関係なく、３ＮＡＮＤ回路２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路１２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベル、且つ、ａ２とｂ２とが同じレベルの場合に、ａ１がｂ１よりも大きいために生じたので、最下位のビットａ０およびｂ０の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７３】
信号ａ３と信号ｂ３とが同じレベル、および、信号ａ２と信号ｂ２とが同じレベルの場合において、信号ａ１がローレベル、信号ｂ１がハイレベルの場合には、３ＮＡＤ回路１２の第３の入力はローレベルであるので、ハイレベルの信号が３ＮＡＮＤ回路１２から出力される。また、インバータ回路１３からローレベルの信号がＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１の出力のレベルに関係なく、３ＮＡＮＤ回路２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからハイレベルの信号が出力される。したがって、出力端子ｃからハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベル、および、ａ２とｂ２とが同じレベルで、且つ、ａ１がｂ１よりも小さいために生じたので、最下位のビットａ０およびｂ０の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７４】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、および、信号ａ１と信号ｂ１とが同じレベルの場合には、ＥＸＯＲ回路３１、２１、１１からローレベルの信号が３ＮＡＮＤ回路３２、２２、１２の第１の入力端子に入力される。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２、２２、１２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第１の入力端子に入力されるので、ＡＮＤ回路２４からハイレベルの信号が３ＮＡＮＤ回路１２の第３の入力端子およびＡＮＤ回路１４の第２の入力端子に入力される。
この場合において、信号ａ０がハイレベル、信号ｂ０がローレベルの場合には、ＥＸＯＲ回路１からハイレベルの信号が３ＮＡＮＤ回路２の第１の入力端子に入力される。このとき、３ＮＡＤ回路２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ハイレベルのａ０が３ＮＡＮＤ回路１２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路２から出力される。また、インバータ回路３からローレベルの信号がＡＮＤ回路４の第１の入力端子に入力され、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、３ＮＡＮＤ回路２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベル、ａ２とｂ２とが同じレベル、および、ａ１とｂ１とが同じレベルで、且つ、ａ０がｂ０よりも大きいために生じたので、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７５】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、および、信号ａ１と信号ｂ１とが同じレベルの場合において、信号ａ０がローレベル、信号ｂ０がハイレベルの場合には、３ＮＡＮＤ回路２の第１の入力はローレベルであるので、ハイレベルの信号が３ＮＡＮＤ回路２から出力される。また、インバータ回路３からローレベルの信号がＡＮＤ回路４の第２の入力端子に入力される。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は、ａ３とｂ３とが同じレベル、ａ２とｂ２とが同じレベル、および、ａ１とｂ１とが同じレベルで、且つ、ａ０がｂ０よりも小さいために生じたので、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７６】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、信号ａ１と信号ｂ１とが同じレベル、および、信号ａ０と信号ｂ０とが同じレベルの場合には、ＥＸＯＲ回路３１、２１、１１、１からローレベルの信号が３ＮＡＮＤ回路３２、２２、１２、２の第１の入力端子に入力される。したがって、ハイレベルの信号が全ての３ＮＡＮＤ回路３２、２２、１２、２から出力される。この場合には、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第２の入力に与えられる。したがって、ＡＮＤ回路２４からハイレベルの信号がＡＮＤ回路１４の第１の入力に与えられる。また、インバータ回路１３からハイレベルの信号がＡＮＤ回路１４の第２の入力に与えられる。したがって、ＡＮＤ回路１４からハイレベルの信号がＡＮＤ回路４の第１の入力に与えられる。また、インバータ回路３からハイレベルの信号がＡＮＤ回路４の第２の入力に与えられる。したがって、ＡＮＤ回路４からハイレベルの信号が端子ｅから出力される。
【００７７】
このように、図９の４ビットコンパレータ回路３００においては、２系統の４ビットのデータＡとデータＢとを比較し、Ａの値がＢの値より大きい（Ａ＞Ｂ）場合には、負論理のローレベルの信号を出力し、Ａの値がＢの値以下（Ａ≦Ｂ）の場合には、ハイレベルの信号を出力する。また、Ａの値とＢの値とが異なる（Ａ＞Ｂ又はＡ＜Ｂ）場合には、端子ｅからローレベルの信号を出力し、Ａの値とＢの値とが同じ場合、すなわち、信号ａ０、ａ１、ａ２、ａ３、および、信号ｂ０、ｂ１、ｂ２、ｂ３の各ビットの値が同じ場合には、端子ｅからハイレベルの信号を出力する。すなわち、出力端子ｃおよび端子ｅとデータＡおよびデータＢとの関係を「１」、「０」で表すと下記のようになる。
ｃ＝０（Ａ＞Ｂ），１（Ａ≦Ｂ）
ｅ＝０（Ａ≠Ｂ），１（Ａ＝Ｂ）
したがって、端子ｅのレベルによって、ｃ＝１（Ａ≦Ｂ）の中から（Ａ＜Ｂ）と（Ａ＝Ｂ）とを判別することができる。
【００７８】
いま、端子ｅと端子ｆとを接続した場合には、端子ｅからハイレベルの信号がインバータ回路４１に入力される。この結果、インバータ回路４１から負論理のローレベルの信号が出力される。したがって、下記の関係が得られる。
ｃ＝０（Ａ≧Ｂ），１（Ａ＜Ｂ）
ｅ＝０（Ａ≠Ｂ），１（Ａ＝Ｂ）
この場合も、端子ｅのレベルによって、ｃ＝０（Ａ≧Ｂ）の中から（Ａ＞Ｂ）と（Ａ＝Ｂ）とを判別することができる。
【００７９】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路によれば、集積回路によって４ビットに比較回路を実現した場合に、従来の４ビットコンパレータ回路（例えば、ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）と比べて、配線パターンを大幅に削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。＊＊＊は困難である。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。
【００８０】
次に、図９の４ビットコンパレータ回路をカスケードする場合について説明する。図１０は、上位、中位、下位の３個の４ビットコンパレータ回路３０２、３０１、３００をカスケード接続した、１２ビットコンパレータ回路のブロック図である。図に示すように、上位の回路３０２の端子ｅ２と中位の回路３０１の端子ｄ１とを接続し、中位の回路３０１の端子ｅ１と下位の回路３００の端子ｄ０とを接続する。また。各回路３０２、３０１、３００の出力端子ｃ２、ｃ１、ｃ０を接続し、プルアップ抵抗ＲＬを介して電源に接続する。すなわち、各回路３０２、３０１、３００の出力端子ｃ２、ｃ１、ｃ０が負論理のワイヤードＯＲになっている。上位の回路３０２には、４ビットのデータＡ２（ａ１１、ａ１０、ａ９、ａ８）および４ビットのデータＢ２（ｂ１１、ｂ１０、ｂ９、ｂ８）が入力される。中位の回路３０１には、４ビットのデータＡ１（ａ７、ａ６、ａ５、ａ４）および４ビットのデータＢ１（ｂ７、ｂ６、ｂ５、ｂ４）が入力される。下位の回路３００には、４ビットのデータＡ０（ａ３、ａ２、ａ１、ａ０）および４ビットのデータＢ０（ｂ３、ｂ２、ｂ１、ｂ０）が入力される。
【００８１】
次に、この１２ビットコンパレータ回路の動作について説明する。ただし、各回路３０２、３０１、３００の内部における動作は、図９に示した回路と同じであるので、説明を省略する。
【００８２】
上位の回路３０２のデータＡ２の値とデータＢ２の値とが比較され、上位の回路３０２のデータＡ２の値がデータＢ２の値より大きい（Ａ２＞Ｂ２）場合には、出力端子ｃ２から負論理のローレベルの信号が出力される。また、端子ｅ２からローレベルの信号が中位の回路３０１の端子ｄ１に与えられる。このため、中位の回路３０１においては、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８３】
上位の回路３０２のデータＡ２の値がデータＢ２の値以下（Ａ２≦Ｂ２）の場合には、出力端子ｃ２からハイレベルの信号が出力される。また、端子ｅ２からローレベルの信号が中位の回路３０１の端子ｄ１に与えられる。このため、中位の回路３０１においては、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８４】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合には、出力端子ｃ２からハイレベルの信号が出力される。また、端子ｅ２からハイレベルの信号が中位の回路３０１の端子ｄ１に与えられる。この場合には、中位の回路３０１においては、データＡ１の値とデータＢ１の値とが比較される。中位の回路３０１のデータＡ１の値がデータＢ１の値より大きい（Ａ１＞Ｂ１）場合には、出力端子ｃ１から負論理のローレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８５】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合において
、中位の回路３０１のデータＡ１の値がデータＢ１の値以下（Ａ１≦Ｂ１）の場合には、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８６】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合で、且つ、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合には、出力端子ｃ２および出力ｃ１から共にハイレベルの信号が出力される。また、上位の回路３０２の端子ｅ２からハイレベルの信号が中位の回路３０１の端子ｄ１に与えられ、中位の回路３０１の端子ｅ１からハイレベルの信号が下位の回路３００の端子ｄ０に与えられる。この場合には、下位の回路３００においては、データＡ０の値とデータＢ０の値とが比較される。下位の回路３００のデータＡ０の値がデータＢ０の値より大きい（Ａ０＞Ｂ０）場合には、出力端子ｃ０から負論理のローレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８７】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合で、且つ、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合において、下位の回路３００のデータＡ０の値がデータＢ０の値以下（Ａ０≦Ｂ０）の場合には、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８８】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合、且つ、下位の回路３００のデータＡ０の値とデータＢ０とが同じ（Ａ０＝Ｂ０）場合には、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からハイレベルの信号が出力される。
【００８９】
このように、図１０に示した上位、中位、下位の３個の４ビットコンパレータ回路３０２、３０１、３００をカスケード接続した場合には、各４ビットコンパレータ回路があたかも１ビットのコンパレータ回路のような動作になる。これは、上位の４ビットコンパレータ回路と下位の４ビットコンパレータ回路とが１ビットの情報によってカスケードされているからである。この情報は、上位のコンパレータ回路の比較データが異なっているか（ｅ＝０）又は一致しているか（ｅ＝１）を表している。したがって、カスケードするコンパレータ回路のビット数にかかわらず、２系統のパラレルデータを比較するコンパレータ回路をこの１ビットの情報（以下、ｅ信号という）カスケードする構成が可能となる。
【００９０】
図１１は、８ビットコンパレータ回路４００の構成を示している。図に示すように、カスケード接続する上位のコンパレータ回路からｅ信号を受けて、比較処理を実行し、下位のコンパレータ回路に対してｅ信号を出力する。
【００９１】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路によれば、集積回路によって４ビットに比較回路を実現した場合に、上位４ビットの比較回路の比較結果を入力するためのビット数、および、下位４ビットの比較回路に比較結果を出力するためのビット数が、それぞれ端子ｄおよび端子ｅの１ビットで構成することにより、従来の４ビットコンパレータ回路と比べて、配線パターンを削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１実施形態におけるデータ比較処理回路の概略ブロック図である。
【図２】図１のデータ比較処理回路におけるメディアンフィルタ回路の回路図である。
【図３】図２に続くメディアンフィルタ回路の回路図である。
【図４】図３に続くメディアンフィルタ回路の回路図である。
【図５】図１のデータ比較処理回路によって処理される画素データの例を示す図である。
【図６】図１のデータ比較処理回路におけるデータ処理のタイミングチャートである。
【図７】本発明の第２実施形態におけるデータ比較処理回路の回路図である。
【図８】図７に続くデータ比較処理回路の回路図である。
【図９】本発明の第３実施形態におけるデータ比較処理回路である４ビットコンパレータ回路の回路図である。
【図１０】図９の４ビットコンパレータ回路をカスケード接続した概略ブロック図である。
【図１１】本発明の第３実施形態における８ビットコンパレータ回路の回路図である。
【符号の説明】
【００９３】
１００  画像メモリ回路
２００  メディアンフィルタ回路
３００、３０１、３０２  ４ビットコンパレータ回路
４００  ８ビットコンパレータ回路
【図１】
2007233623.tif 000003
【図２】
2007233623.tif 000004
【図３】
2007233623.tif 000005
【図４】
2007233623.tif 000006
【図５】
2007233623.tif 000007
【図６】
2007233623.tif 000008
【図７】
2007233623.tif 000009
【図８】
2007233623.tif 000010
【図９】
2007233623.tif 000011
【図１０】
2007233623.tif 000012
【図１１】
2007233623.tif 000013
【手続補正書】
【提出日】平成18年3月6日(2006.3.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像メモリ回路に記憶された２次元の画像データを構成する複数の画素データの中から１つの画素データが順に指定されたときに、当該指定の画素データに隣接する周囲の画素データからなるｎ個（ｎは３以上の整数）の画素データを処理するデータ比較処理回路であって、
それぞれ１個の画像データを記憶できるｎ個の画素記憶回路と、
ｎ個の画素データが１個ずつ順に読み出されたときに、読み出された画素データの値と前記ｎ個の記憶回路の各々にそのとき記憶されている画素データの値とを比較して、読み出された画素データを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、
読み出されたｎ個の画素データが、前記記憶制御回路の指定に基づいて、前記ｎ個の画素記憶回路に値の昇順又は降順に記憶された場合には、所定の書換信号の入力に応じて、あらかじめ設定されている画素記憶回路に記憶されている画素データの値によって、前記画像メモリ回路に記憶されている前記指定の画素データの値を書き換える書換制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項２】
それぞれ１個のデータを記憶できる所定数の記憶回路と、
順に読み出された１個のデータの値と前記所定数の記憶回路の各々にそのとき記憶されているデータの値とを比較して、読み出されたデータを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、
読み出された所定数のデータが、前記記憶制御回路の指定に基づいて、値の昇順又は降順に前記所定数の記憶回路に記憶された場合には、任意の記憶回路を指定する指定信号が入力されたときに、当該任意の記憶回路に記憶されたデータを読み出す読出制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項３】
入力された複数ビットからなる第１のデータおよび第２のデータをビットごとに比較する複数のビット比較回路を備えたデータ比較処理回路であって、各ビット比較回路は、
入力された１ビットの第１のデータおよび第２のデータのビット値が一致する場合は一致信号を発生し、当該ビット値が不一致の場合は不一致信号を発生する入力回路と、
上位のビット比較回路から送信された一致信号若しくは不一致信号又は所定の電子部品によって発生された固定信号を受信する受信回路と、
前記入力回路によって不一致信号が発生され、且つ、前記受信回路によって一致信号若しくは固定信号が受信された場合には、前記入力回路に入力されている第１のデータを出力する出力回路と、
前記入力回路によって不一致信号が発生された場合、又は、前記受信回路によって不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、前記入力回路によって一致信号が発生され、且つ、前記受信回路によって一致信号又は固定信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送信回路と、
を有することを特徴とするデータ比較処理回路。
【請求項４】
請求項１ないし請求項３のいずれか１項に記載のデータ比較処理回路をワンチップの半導体に組み込んだことを特徴とする集積回路。
【請求項５】
請求項１又は３のデータ比較処理回路をワンチップの半導体に組み込んだ集積回路を搭載したことを特徴とする画像処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
本発明のデータ比較処理回路は、画像メモリ回路に記憶された２次元の画像データを構成する複数の画素データの中から１つの画素データが順に指定されたときに、その指定の画素データに隣接する周囲の画素データで構成されるｎ個（ｎは３以上の整数）の画素データを処理する。そのデータ比較処理回路は、それぞれ１個の画像データを記憶できるｎ個の画素記憶回路と、ｎ個の画素データが１個ずつ順に読み出されたときに、読み出された画素データの値とｎ個の記憶回路の各々にそのとき記憶されている画素データの値とを比較して、読み出された画素データを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、読み出されたｎ個の画素データが、記憶制御回路の指定に基づいて、ｎ個の画素記憶回路に値の昇順又は降順に記憶された場合には、所定の書換信号の入力に応じて、あらかじめ設定されている画素記憶回路に記憶されている画素データの値によって、画像メモリ回路に記憶されている指定の画素データの値を書き換える書換制御回路と、を備えている。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
本発明のデータ比較処理回路は、それぞれ１個のデータを記憶できる所定数の記憶回路と、順に読み出された１個のデータの値と所定数の記憶回路の各々にそのとき記憶されているデータの値とを比較して、読み出されたデータを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、読み出された所定数のデータが、記憶制御回路の指定に基づいて、値の昇順又は降順に所定数の記憶回路に記憶された場合には、任意の記憶回路を指定する指定信号が入力されたときに、その任意の記憶回路に記憶されたデータを読み出す読出制御回路と、を備えている。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
本発明のデータ比較処理回路は、入力された複数ビットからなる第１のデータおよび第２のデータをビットごとに比較する複数のビット比較回路を備えている。そのデータ比較処理回路における各ビット比較回路は、入力された１ビットの第１のデータおよび第２のデータのビット値が一致する場合は一致信号を発生し、そのビット値が不一致の場合は不一致信号を発生する入力回路と、上位のビット比較回路から送信された一致信号若しくは不一致信号又は所定の電子部品によって発生された固定信号を受信する受信回路と、入力回路によって不一致信号が発生され、且つ、受信回路によって一致信号若しくは固定信号が受信された場合には、入力回路に入力されている第１のデータを出力する出力回路と、入力回路によって不一致信号が発生された場合、又は、受信回路によって不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、入力回路によって一致信号が発生され、且つ、受信回路によって一致信号又は固定信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送信回路と、を有する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
そこで、近年においては、これら９個の画素データの振幅の中央の値となる画素データによって、指定の画素データの値を書き換えるメディアンフィルタ処理によるノイズ低減法が採用されるようになった。
例えば、ある提案の「３×３メディアンフィルタの高速アルゴリズム」においては、９個のデータを３個ずつの３組に分け、組ごとにソートし、各組の中央値の大きい順にＡ、Ｂ、Ｃとする。そして、Ｂの中央値とＡの最小値との大小関係、および、Ｂの中央値とＣの最大値との大小関係を比較するアルゴリズムを実行することによって、平均比較回数を削減することが記載されている。（非特許文献１および特許文献６参照）
また、ある提案の「映像信号処理方法および装置」においては、図４に見られるように、第１のメディアンフィルタ演算器２１は、特定の画素に対し、隣り合った水平方向の所定の領域の画素信号を比較器１９で比較し、中央値決定器２０でその中央値を選び、その中央値を特定の画素の信号として第２のメモリ２２に供給して記憶させる。第２のメモリ２２の各画素に記憶された信号は、読み出されて垂直方向の第２のメディアンフィルタ演算器２５に供給される。第２のメディアンフィルタ演算器２５は、特定の画素に対し、隣り合った垂直方向の所定の領域の画素信号を比較器２３で比較し、中央値決定器２４でその中央値を選び、その中央値を特定の画素の信号として第３のメモリ２２に供給して記憶させる構成が記載されている。（特許文献１参照）
また、ある提案の「ノイズ低減回路および画像信号処理装置」においては、入力画像信号に対してノイズの大きさに相当する直流成分を加減算することによりノイズを低減するノイズ低減回路であって、入力画像信号のエッジ部分を検出するエッジ検出手段と、入力画像信号のノイズを検出してこのノイズに応じた直流成分を生成する直流成分生成手段と、入力画像信号のエッジ部分においてノイズを含まない信号に、より近づくような第１の参照信号を生成するメディアンフィルタなどの第１の参照信号生成手段と、入力画像信号のエッジ部分以外の略平坦な部分において、ノイズを含まない信号に、より近づくような第２の参照信号を生成する低域フィルタなどの第２の参照信号生成手段と、エッジ検出手段の検出結果に応じて、第１および第２の参照信号を択一的に導出する選択手段と、選択手段による選択参照信号と入力画像信号とのレベル比較を行い、この比較結果に応じて直流成分の入力画像信号への加減算処理を行う加減算手段とを含む構成が記載されている。（特許文献２参照）
また、ある提案の「デジタルノイズリダクション回路」においては、メディアンフィルタを使用して、そのメディアンフィルタの中央値を選択する際に、ソート処理のように時間的にシリーズに処理を行わずに、画素同士の比較処理を並列に行う構成が記載されている。（特許文献３参照）
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
また、デジタルデータの大小判別処理に用いられるデータ処理回路として、例えば、４ビットのデータＡおよびデータＢを比較して、Ａ＞Ｂ若しくはＡ＜Ｂ又はＡ＝Ｂを出力する比較回路（ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）が知られている。このような比較回路では、入力される上位ビットの比較回路の結果である３ビットのＡｊ＞Ｂｊ若しくはＡｊ＜Ｂｊ又はＡｊ＝Ｂｊの論理と、演算する比較回路に入力された４ビットのデータＡｋおよびデータＢｋの論理に基づいて演算を行って、その結果であるＡｋ＞Ｂｋ若しくはＡｋ＜Ｂｋ又はＡｋ＝Ｂｋの論理を下位ビットの比較回路に出力する構成になっている。すなわち、４ビットの比較回路をカスケード接続することによって、８ビット、１２ビット、１６ビット等の多ビットの大小判別処理のデータ処理ができる。また、８ビットコンパレータとして、例えば６４６８２の回路が知られている。（非特許文献２参照）
【特許文献１】特開平９−１９８４９８号公報
【特許文献２】特開平１０−８４４９８号公報
【特許文献３】特開２００１−１９７３３３号公報
【特許文献４】特開平５−２６４５号公報
【特許文献５】特開２００４−１２０６２３号公報
【特許文献６】特開２００４−２２００９４号公報
【非特許文献１】社団法人電子情報通信学会発行「ＦＩＴ２００２情報科学技術フォーラム情報技術レターズＶｏｌ．第１巻２００２年」１４１〜１４２ページ、「３×３メディアンフィルタの高速アルゴリズム」
【非特許文献２】２００３年３月２０日、日本理工出版会刊、中村次男著の「デジタル回路の基礎」９１〜９４ページ、「大小判別回路」
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
しかしながら、上記非特許文献１においては、ソフトウェアのアルゴリズムによって、画素データの大小比較のデータ処理を行っているので、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献２においては、９個の画素データ読み出して第１のメモリに書き込み、第１のメディアンフィルタ演算器によって、３個の画素データを第１のメモリから読み出して、３個ごとの画素データの中央値を決定し第２のメモリに書き込む。そして、第２のメモリに記憶された中央値の３個の画素データをメディアンフィルタ演算器によって、最終的に９個の画素データの中央値を決定し第３のメモリに書き込むようになっている。このため、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献３の場合にも、１ラインの画素データを読み出して、ラインメモリに記憶した後に、各画素データのノイズを低減するデータ処理を行っているので、高速なデータ処理は困難である。
同様に、上記特許文献４および特許文献５の場合にも、処理対象のデータを読み出した後に、目的のデータ処理を行っているので、高速なデータ処理は困難である。
また、上記非特許文献２においては、例えば、４ビットの比較回路の場合には、２つの入力データの排他的論理和を出力するＥＸＯＲ回路が４個あるのは当然であるが、それぞれの比較結果の論理と、入力される上位４ビットの比較回路の比較結果との論理演算を行うために、５入力のＡＮＤ回路が５個、４入力のＡＮＤ回路が２個、３入力のＡＮＤ回路が２個、２入力のＡＮＤ回路が２個、および、５入力のＯＲ回路が２個使用されている。このため、集積回路によって４ビットに比較回路を実現した場合には、配線パターンが非常に多くなり、配線パターン間の浮遊容量のためにデータが遅延し、高速なデータ処理は困難である。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。また、上記非特許文献２においては、８ビットコンパレータの例として、７４６８２のＩＣ回路が示されているが、この回路は、カスケード接続でない単独の８ビットコンパレータである。これは、３ビットのカスケード接続の構成にすると膨大なゲート回路が必要であるからであると考えられる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
図２のレジスタブロックＢＬ（２）は、レジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、インバータ回路２５、ＡＮＤ回路２６、およびＯＲ回路２７で構成されている。レジスタ回路２１の入力端子Ｄ２は、スイッチ回路２３の出力ｄに接続されている。レジスタ回路２１は、入力端子Ｄ２に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ２から読み出すことができる。比較回路２２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値とレジスタ回路２１に記憶された画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路２４は、比較回路２２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（１）のインバータ回路１５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路２３の制御端子ｃに与え、比較回路２２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（１）のインバータ回路１５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路２３の制御端子ｃに与える。スイッチ回路２３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路１１に記憶された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給する。ＯＲ回路２７は、比較回路２２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（１）の比較回路１２から出力される比較信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路２６は、ＯＲ回路２７から出力される信号がハイレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路２７から出力される信号がローレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。インバータ回路２５は、比較回路２２から出力される比較信号の論理を反転して出力する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
したがって、レジスタブロックＢＬ（４）〜レジスタブロックＢＬ（９）の機能をまとめて説明する。
レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９は、スイッチ回路４３〜９３の出力ｄに接続されている。レジスタ回路４１〜９１は、入力端子Ｄ４〜Ｄ９に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ４〜Ｑ９から読み出すことができる。比較回路４２〜９２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値とレジスタ回路４１〜９１に記憶されている画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路４４〜９４は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与え、比較回路４２〜９２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与える。スイッチ回路４３〜９３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路３１〜８１に記憶された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給する。ＯＲ回路４７〜９７は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のＯＲ回路３７〜８７から出力される信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路４６〜９６は、ＯＲ回路４７〜９７から出力される信号がハイレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路３７〜８７から出力される信号がローレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
図３のレジスタブロック（４）〜（６）、図４のレジスタブロック（７）およびレジスタブロック（８）において、インバータ回路４５〜８５は、比較回路４２〜８２からの比較信号の論理を反転して、次段のレジスタブロック（５）〜（９）のＡＮＤ回路５４〜９４に入力する。しかし、最終段のレジスタブロック（９）においては、比較回路９２からの比較信号の論理を反転するインバータ回路はない。また、第５段のレジスタブロック（５）において、レジスタ５１の出力端子Ｑ５は、図１において説明したように、画像メモリ回路１００の入力ポートＤｉｎに接続されている。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
次に、図１〜図４に示した画像メモリ回路１００およびノイズ低減回路２００の動作について、図５の具体例を参照しながら説明する。
図５（Ａ）は、フィルタ処理対象の９個の画素データの値を示している。中央の画素データがノイズ低減の対象として指定される画素データであり、周囲の８個の画素データとの間でメディアンフィルタ処理が行われる。本発明のノイズ低減回路２００においては、９個の画素データを読み出す順序は何ら制約を受けない。図５（Ａ）において、指定の画素データを最初に読み出して、次に、左上、上、右上、左、右、左下、下、右下の順でもよいし、垂直方向の３個の画素データをブロックとして上から順に読み出し、左から右のブロックに移動する方法でもよいし、指定の画素データを中心として、８個の画素データを時計回り又は反時計回りに読み出してもよい。ここでは、通常多く用いられている読み出し順を採用し、９個の画素データを左上、上、右上、左、中央、右、左下、下、右下の順で読み出すこととする。なお、指定の画素が２次元の画面の端にある場合には、周囲の画素データが８個にならない。この場合には、同じ画素データを複数回読み出して全体を９個の画素データとする。また、画像メモリ回路１００に記憶されている２次元の画素データの値は全て０よりも大きい値（１〜２５５）とする。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
ＲＤ／ＳＰ「１」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された１番目の画素データ「（値＝）１００」が各レジスタブロックに供給されたときは、読み出された画素データの値「１００」は「０」より大きいので、比較回路１２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「１」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された１番目の画素データの値「１００」が記憶され、残りのレジスタ回路２１〜９１には値「０」のデータが記憶される。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
次に、ＲＤ／ＳＰ「２」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１００」と、読み出された画素データの値「１１０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２〜９２は、レジスタ回路２１〜９１に記憶されている値「０」のデータと、読み出された２番目の画素データの値「１１０」とを比較する。したがって、比較回路２２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１００」が供給され、レジスタ回路３１〜９１の入力端子Ｄ３〜Ｄ９には、前段のレジスタ回路２１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「２」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路３１〜９１には値「０」のデータが記憶される。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
次に、ＲＤ／ＳＰ「３」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１００」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路２２の出力端子ｒからはハイレベルの比較信号が出力される。また同時に、比較回路３２〜９２は、レジスタ回路３１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１２０」とを比較する。したがって、比較回路３２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１１０」が供給され、レジスタ回路３１の入力端子Ｄ３には、前段のレジスタ回路２１に記憶されている画素データの値「１００」が供給され、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９には、前段のレジスタ回路３１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「３」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１１０」が記憶され、レジスタ回路３１には、レジスタ回路２１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路４１〜９１には値「０」のデータが記憶される。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
次に、ＲＤ／ＳＰ「４」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された４番目の画素データの値「９０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路２２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路２７には、比較回路１２からローレベルの比較信号が入力され、且つ、比較回路２２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路２６には、ＯＲ回路２７からローレベルの信号が入力されるので、レジスタ回路２１へのシフト信号は無効になる。また同時に、比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路３２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路３７には、ＯＲ回路２７からローレベルの比較信号が入力され、且つ、比較回路３２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路３６には、ＯＲ回路３７からローレベルの信号が入力されるので、レジスタ回路３１へのシフト信号は無効になる。したがって、レジスタ回路１１、２１、３１には新たな画素データは記憶されず、現在記憶している画素データの値「１２０」、「１１０」、「１００」をそのまま維持する。なお、レジスタブロック（１）〜（３）のインバータ回路１５〜３５からはハイレベルの信号が後段のＡＮＤ回路２４〜４４に入力される。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
この場合においては、比較回路４２〜９２は、レジスタ回路４１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「９０」とを比較する。したがって、比較回路４２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路４４には、インバータ回路３５からハイレベルの信号が入力され、且つ、比較回路４２からハイレベルの信号が入力される。したがって、ＡＮＤ回路４４からはハイレベルの選択信号がスイッチ回路４３の制御端子ｃに与えられ、画像メモリ回路１００から読み出された画像データの値「９０」がレジスタ回路４１の入力端子Ｄ４に供給される。この場合には、比較回路４２からハイレベルの比較信号がＯＲ回路４７に入力されるので、レジスタ回路４１へのシフト信号は有効になる。この結果、ＲＤ／ＳＰ「４」の立ち下がりのタイミングにおいて、読み出された画像データの値「９０」がレジスタ回路４１に記憶される。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００３６
【補正方法】変更
【補正の内容】
【００３６】
次に、ＲＤ／ＳＰ「５」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「２５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「２５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「２５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「９０」と、読み出された画素データの値「２５０」とを比較する。また、比較回路５２〜９２は、レジスタ回路５１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「２５０」とを比較する。この場合には、比較回路１２〜９２の出力端子ｒからは全てハイレベルの比較信号が出力される。したがって、ＡＮＤ回路２４〜９４には、前段のインバータ回路１５〜８５からローレベルの信号が入力される。したがって、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３の制御端子ｃに入力され、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶された画素データの値「１２０」、「１１０」、「１００」、「９０」および、値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびレジスタブロック（２）のＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「５」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が記憶され、レジスタ回路２１には、前段のレジスタ回路１１に記憶された画素データの値「１２０」が記憶され、レジスタ回路３１には、前段のレジスタ回路２１に記憶された画素データの値「１１０」が記憶され、レジスタ回路４１には、前段のレジスタ回路３１に記憶された画素データの値「１００」が記憶され、レジスタ回路５１には、前段のレジスタ回路４１に記憶された画素データの値「９０」が記憶される。また、レジスタ回路６１〜９１には値「０」が記憶される。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
次に、ＲＤ／ＳＰ「６」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された６番目の画素データの値「１３０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１３０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１３０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１３０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１００」と、読み出された画素データの値「１３０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「９０」と、読み出された画素データの値「１３０」とを比較する。また、比較回路６２〜９２は、レジスタ回路６１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１３０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、ＲＤ／ＳＰ「６」の立ち下がりのタイミングにおいて、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
次に、ＲＤ／ＳＰ「７」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された７番目の画素データの値「８０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「８０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「８０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「８０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「８０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「８０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「８０」とを比較する。また、比較回路７２〜９２は、レジスタ回路７１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「８０」とを比較する。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
ＡＮＤ回路７４には、インバータ回路６５からハイレベルの信号が入力され、且つ、比較回路７２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路７４からハイレベルの選択信号がスイッチ回路７３に与えられ、この結果、ＲＤ／ＳＰ「７」の立ち下がりのタイミングにおいて、画像メモリ回路１００から読み出された７番目の画素データの値「８０」がレジスタ回路７１に記憶される。また、インバータ回路７５、８５からローレベルの信号がＡＮＤ回路８４、９４に入力される。したがって、ＡＮＤ回路８４、９４からローレベルの選択信号がスイッチ回路８３、９３に与えられ、それぞれ前段のレジスタ回路７１、８１に記憶された値「０」のデータがレジスタ回路８１、９１の入力端子Ｄ８、Ｄ９に供給される。また、比較回路８２、９２からハイレベルの比較信号がＯＲ回路８７、９７に入力される。したがって、ＯＲ回路８７、９７からハイレベルの信号がＡＮＤ回路８６、９６に入力されるので、レジスタ回路８１、９１へのシフト信号が有効となる。この結果、レジスタ回路８１、９１に値「０」のデータが記憶される。
【手続補正２１】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】変更
【補正の内容】
【００４３】
次に、ＲＤ／ＳＰ「８」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された８番目の画素データの値「１５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１５０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「１５０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「１５０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「８０」と、読み出された画素データの値「１５０」とを比較する。また、比較回路８２、９２は、レジスタ回路８１、９１に記憶されている値「０」のデータと、読み出された画素データの値「１５０」とを比較する。
【手続補正２２】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
この場合には、比較回路１２からはローレベルの比較信号が出力される。また、比較回路２２〜９２からはハイレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、ＡＮＤ回路２４には、インバータ回路１５からハイレベルの信号が入力され、且つ、比較回路２２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路２４からハイレベルの選択信号がスイッチ回路２３の制御端子ｃに与えられ、読み出された画素データの値「１５０」がレジスタ回路２１の入力端子Ｄ２に供給される。また、比較回路２２からハイレベルの比較信号がＯＲ回路２７に入力される。したがって、ＯＲ回路２７からハイレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号が有効になる。この結果、ＲＤ／ＳＰ「８」の立ち下がりのタイミングにおいて、読み出された画素データの値「１５０」がレジスタ回路２１に記憶される。
【手続補正２３】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
次に、ＲＤ／ＳＰ「９」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された９番目の画素データの値「１４０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１４０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１５０」と、読み出された画素データの値「１４０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１４０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１４０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１４０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「１００」と、読み出された画素データの値「１４０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「９０」と、読み出された画素データの値「１４０」とを比較する。比較回路８２は、レジスタ回路８１に記憶されている画素データの値「８０」と、読み出された画素データの値「１４０」とを比較する。また、比較回路９２は、レジスタ回路９１に記憶されている値「０」のデータと、読み出された画素データの値「１４０」とを比較する。
【手続補正２４】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
またこの場合には、ＡＮＤ回路３４には、インバータ回路２５からハイレベルの信号が入力され、且つ、比較回路３２からハイレベルの比較信号が出力される。したがって、ＡＮＤ回路３４からハイレベルの選択信号がスイッチ回路３３の制御端子ｃに与えられ、読み出された画素データの値「１４０」がレジスタ回路３１の入力端子Ｄ３に供給される。また、ＯＲ回路３７には比較回路３２からハイレベルの比較信号が出力される。したがって、ＯＲ回路からハイレベルの信号がＡＮＤ回路３６に入力されるので、レジスタ回路３１へのシフト信号が有効になる。この結果、ＲＤ／ＳＰ「９」の立ち下がりのタイミングにおいて、読み出された画素データの値「１４０」がレジスタ回路３１に記憶される。
【手続補正２５】
【補正対象書類名】明細書
【補正対象項目名】００５１
【補正方法】変更
【補正の内容】
【００５１】
また、図６のＲＤ／ＳＰ「９」の立ち下がりのタイミングで、書込イネーブル信号ＷＥがハイレベルとなり、図１の画像メモリ回路１００へのデータ書き込みが可能になる。このときには、画像メモリ回路１００へのアドレス信号ＡＤは、ノイズ低減の対象となる指定の画素データを指定する。また、同時に、読出イネーブル信号がローレベルとなり、画像メモリ回路１００からのデータ読み出しが禁止になるので、図６において、ＲＤ／ＳＰ「９」の次のＲＤ／ＳＰ「０」の立ち上がりでは、画素データは読み出されない。また、ＲＤ／ＳＰ「０」の立ち上がりと同じタイミングで書込信号ＷＰのパルスが立ち上がる。この結果、レジスタ回路５１に記憶されている画素データの中央値「１２０」によって、画像メモリ回路１００におけるノイズ低減の対象となる指定の画素データの値「２５０」を書き換える。そして、図６のＲＤ／ＳＰ「１」の立ち下がりのタイミングで、次の９個の画素データのうち最初の画素データが画像メモリ回路１００から読み出されて、ＲＤ／ＳＰ「１」の立ち下がりのタイミングのシフト信号の前に、クリア信号ＣＬが入力されるので、メディアンフィルタ回路２００の全てのレジスタ回路１１〜９１に記憶された画素データがクリアされる。
【手続補正２６】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
図７のレジスタブロックＢＬ（１）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（１）の内部回路との相違は、ＡＮＤ回路１８が追加されていることと、レジスタ回路１１のＱ１が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路１８にＡＮＤ回路２０１の出力が接続されていることである。また、図７のレジスタブロックＢＬ（２）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（２）の内部回路との相違は、ＡＮＤ回路２８が追加されていることと、レジスタ回路１１のＱ２が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路２０２の出力がＡＮＤ回路２８に接続されていることである。なお、図８のレジスタブロック（ｎ）において、レジスタ回路ｎ１、比較回路ｎ２、スイッチ回路ｎ３、ＡＮＤ回路ｎ４、ｎ６、ｎ８、インバータ回路ｎ５、ＯＲ回路ｎ７については、それぞれ、レジスタブロックＢＬ（２）のレジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、２６、２８、インバータ回路２５、ＯＲ回路２７に対応している。さらに、レジスタブロック（ｎ）には、スイッチ回路ｎ９およびレジスタ回路ｎ１０が設けられている。
【手続補正２７】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
図８のレジスタブロックＢＬ（１）〜（ｎ）において、Ｌ（ｎ−１）〜Ｌ（０）の信号ラインの全てにローレベルの信号が入力されない場合には、このデータ比較処理回路に記憶されたデータの中で、最も小さい値のデータがレジスタ回路ｎ１に記憶され、それ以下の値の入力データＤｉｎは、全てレジスタ回路ｎ１０を介して外部に出力される。一方、Ｌ（０）の信号ラインにローレベルの信号が入力されると、ＡＮＤ回路ｎ８にローレベルの信号が入力され、ＡＮＤ回路ｎ８の出力がローレベルになる。したがって、比較回路ｎ２から出力される比較信号に拘わらず、ＯＲ回路ｎ７にローレベルの信号が入力される。この場合には、全てのレジスタブロックＢＬ（１）〜（ｎ）へのシフト信号が無効になる。また、レジスタブロックＢＬ（ｎ）のインバータ回路ｎ５からハイレベルの信号がスイッチ回路ｎ９の制御端子ｃに入力される。その結果、スイッチ回路ｎ９の入力端子ａに供給される入力データＤｉｎが全てレジスタ回路ｎ１０を介して外部に出力される。すなわち、この場合には、入力されたデータはこのデータ比較処理回路をスルーすることになる。
【手続補正２８】
【補正対象書類名】明細書
【補正対象項目名】００６２
【補正方法】変更
【補正の内容】
【００６２】
図７および図８のデータ比較処理回路に示したように、各段のレジスタ回路１１〜ｎ１において、Ｑ１〜Ｑｎに記憶されたデータは、外部から読み出すことができる。したがって、このデータ比較処理回路へのデータ入力が終了したときは、ｎ個のデータが値の大きい順位で記憶されている。したがって、任意の順位のデータを容易に読み出すことができる。例えば、２５個のデータが記憶されている場合に、中央値である１３順位のデータを読み出すことができる。
【手続補正２９】
【補正対象書類名】明細書
【補正対象項目名】００６９
【補正方法】変更
【補正の内容】
【００６９】
信号ａ３がローレベル、信号ｂ３がハイレベルの場合には、ＥＸＯＲ回路３１からハイレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。このとき、３ＮＡＤ回路３２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路３２はインバータ回路として機能し、ローレベルのａ３が３ＮＡＮＤ回路３２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からローレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からローレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。このため、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１、２１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２、２２の第３の入力に与えられたローレベルの信号によって、３ＮＡＮＤ回路２、１２、２２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は最上位ビットのａ３がｂ３よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１、ａ２およびｂ２の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【手続補正３０】
【補正対象書類名】明細書
【補正対象項目名】００７０
【補正方法】変更
【補正の内容】
【００７０】
信号ａ３と信号ｂ３とが同じレベルの場合には、ＥＸＯＲ回路３１からローレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からハイレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。
この場合において、信号ａ２がハイレベル、信号ｂ２がローレベルの場合には、ＥＸＯＲ回路２１からハイレベルの信号が３ＮＡＮＤ回路２２の第１の入力に与えられる。このとき、３ＮＡＤ回路２２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２２はインバータ回路として機能し、ハイレベルのａ２が３ＮＡＮＤ回路２２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路２２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも大きいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【手続補正３１】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
信号ａ３と信号ｂ３とが同じレベルの場合において、信号ａ２がローレベル、信号ｂ２がハイレベルの場合には、ＥＸＯＲ回路２１からハイレベルの信号が３ＮＡＮＤ回路２２の第１の入力に与えられる。このとき、３ＮＡＤ回路２２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２２はインバータ回路として機能し、ローレベルのａ２が３ＮＡＮＤ回路２２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【手続補正３２】
【補正対象書類名】明細書
【補正対象項目名】００７３
【補正方法】変更
【補正の内容】
【００７３】
信号ａ３と信号ｂ３とが同じレベル、および、信号ａ２と信号ｂ２とが同じレベルの場合において、信号ａ１がローレベル、信号ｂ１がハイレベルの場合には、ＥＸＯＲ回路１１からハイレベルの信号が３ＮＡＮＤ回路１２の第１の入力に与えられる。このとき、３ＮＡＤ回路１２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ローレベルのａ１が３ＮＡＮＤ回路１２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路１２から出力される。また、インバータ回路１３からローレベルの信号がＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１の出力のレベルに関係なく、３ＮＡＮＤ回路２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからハイレベルの信号が出力される。したがって、出力端子ｃからハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベル、および、ａ２とｂ２とが同じレベルで、且つ、ａ１がｂ１よりも小さいために生じたので、最下位のビットａ０およびｂ０の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【手続補正３３】
【補正対象書類名】明細書
【補正対象項目名】００７５
【補正方法】変更
【補正の内容】
【００７５】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、および、信号ａ１と信号ｂ１とが同じレベルの場合において、信号ａ０がローレベル、信号ｂ０がハイレベルの場合には、ＥＸＯＲ回路１からハイレベルの信号が３ＮＡＮＤ回路２の第１の入力に与えられる。このとき、３ＮＡＤ回路２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２はインバータ回路として機能し、ローレベルのａ０が３ＮＡＮＤ回路２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路２から出力される。また、インバータ回路３からローレベルの信号がＡＮＤ回路４の第２の入力端子に入力される。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は、ａ３とｂ３とが同じレベル、ａ２とｂ２とが同じレベル、および、ａ１とｂ１とが同じレベルで、且つ、ａ０がｂ０よりも小さいために生じたので、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【手続補正３４】
【補正対象書類名】明細書
【補正対象項目名】００７９
【補正方法】変更
【補正の内容】
【００７９】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路によれば、集積回路によって４ビットに比較回路を実現した場合に、従来の４ビットコンパレータ回路（例えば、ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）と比べて、配線パターンを大幅に削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。
【手続補正３５】
【補正対象書類名】明細書
【補正対象項目名】００８９
【補正方法】変更
【補正の内容】
【００８９】
このように、図１０に示した上位、中位、下位の３個の４ビットコンパレータ回路３０２、３０１、３００をカスケード接続した場合には、各４ビットコンパレータ回路があたかも１ビットのコンパレータ回路のような動作になる。これは、上位の４ビットコンパレータ回路と下位の４ビットコンパレータ回路とが１ビットの情報によってカスケードされているからである。この情報は、上位のコンパレータ回路の比較データが異なっているか（ｅ＝０）又は一致しているか（ｅ＝１）を表している。したがって、カスケードするコンパレータ回路のビット数にかかわらず、２系統のパラレルデータを比較するコンパレータ回路をこの１ビットの情報（以下、ｅ信号という）のみによってカスケードする構成が可能となる。
【手続補正３６】
【補正対象書類名】明細書
【補正対象項目名】００９１
【補正方法】変更
【補正の内容】
【００９１】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路、８ビットコンパレータ回路によれば、集積回路によって４ビット、８ビットに比較回路を実現した場合に、上位４ビット、上位８ビットの比較回路の比較結果を入力するためのビット数、および、下位４ビット、下位８ビットの比較回路に比較結果を出力するためのビット数が、それぞれ端子ｄおよび端子ｅの１ビットで構成することにより、従来の４ビットコンパレータ回路、８ビットコンパレータ回路と比べて、配線パターンを削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。
【手続補正書】
【提出日】平成18年11月2日(2006.11.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力された複数ビットからなる第１のデータおよび第２のデータをビットごとに比較する複数のビット比較回路を備えたデータ比較処理回路であって、各ビット比較回路は、
入力された１ビットの第１のデータおよび第２のデータのビット値が一致する場合は一致信号を発生し、当該ビット値が不一致の場合は不一致信号を発生する入力回路と、
上位のビット比較回路から送信された一致信号若しくは不一致信号又は所定の電子部品によって発生された固定信号を受信する受信回路と、
前記入力回路によって不一致信号が発生され、且つ、前記受信回路によって一致信号若しくは固定信号が受信された場合には、前記入力回路に入力されている第１のデータを出力する出力回路と、
前記入力回路によって不一致信号が発生された場合、又は、前記受信回路によって不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、前記入力回路によって一致信号が発生され、且つ、前記受信回路によって一致信号又は固定信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送信回路と、
を有することを特徴とするデータ比較処理回路。
【請求項２】
画像メモリ回路に記憶された２次元の画像データを構成する複数の画素データの中から１つの画素データが順に指定されたときに、当該指定の画素データに隣接する周囲の画素データからなる２ｎ＋１個（ｎは１以上の整数）の画素データを処理するデータ比較処理回路であって、
それぞれ１個の画像データを記憶できる２ｎ＋１個の縦列接続された画素記憶回路と、
２ｎ＋１個の画素データが１個ずつ順に読み出されたときに、読み出された画素データの値と前記２ｎ＋１個の画素記憶回路の各々にそのとき記憶されている画素データの値とを比較して、読み出された画素データを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、
読み出された２ｎ＋１個の画素データが、前記記憶制御回路の指定に基づいて、前記２ｎ＋１個の画素記憶回路に値の昇順又は降順に記憶された場合には、所定の書換信号の入力に応じて、ｎ番目の画素記憶回路に記憶されている画素データの値によって、前記画像メモリ回路に記憶されている前記指定の画素データの値を書き換える書換制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項３】
請求項１又は２に記載のデータ比較処理回路をワンチップの半導体に組み込んだことを特徴とする集積回路。
【請求項４】
請求項１又は２のデータ比較処理回路をワンチップの半導体に組み込んだ集積回路を搭載したことを特徴とする画像処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータを高速に処理するデータ比較処理回路およびその回路を組み込んだ集積回路、並びに、その集積回路を搭載した画像処理装置に関するものである。
【背景技術】
【０００２】
２系統のデジタル信号を比較するデータ比較処理回路は、コンピュータシステムが広く普及している今日においては、様々な種類の情報をアナログ信号からデジタル信号に変換してデータ処理をすることが多い。例えば、測定装置などをコンピュータで制御するシステムにおいては、温度センサや力センサなどから得られるアナログ信号の測定値をデジタル信号に変化してコンピュータで処理する。あるいは、ビデオカメラや電子カメラによって撮像された画像や音楽などのオーディオデータをアナログ信号からデジタル信号に変換してデータ比較処理をすることが多い。デジタルデータを比較処理するデータ比較処理回路としては、単純なコンパレータ回路だけでなく、ＣＰＵ（中央演算ユニット）やプログラムやデータを記憶するメモリ回路などの中核的な回路のデータ処理を補佐するために、様々な形態を採ることが多い。
【０００３】
近年においては、ＣＰＵの処理速度およびメモリ回路の記憶容量は飛躍的に向上した。例えば、２００６年現在のＣＰＵの処理速度は、数１０年前のＣＰＵの処理速度と比べて１０００倍も速くなった。数１０年前は、周辺のデータ処理回路の処理速度やプログラムの実行速度がＣＰＵの処理速度よりも速く、メモリ回路の記憶容量も少なかったので、システムにおいてはＣＰＵの処理待ちが多かった。しかしながら、この数１０年の間に、ＣＰＵの処理速度およびメモリ回路の記憶容量が飛躍的に向上したため、現在ではＣＰＵの方が周辺のデータ処理回路およびプログラムの実行の処理待ちが多いという逆転現象が起こっている。この要因のひとつとして、ＣＰＵは高価なデバイスであるので、設備や開発人員の資源を投下しても利益が期待できることが挙げられる。一方、周辺のデータ処理回路は安価なデバイスである上、多くの半導体メーカが参入できるので、資源を投下しても利益が期待できない。しかしながら、周辺のデータ処理回路の処理速度を向上させない限りは、ＣＰＵと周辺のデータ処理回路とのミスマッチのために、システムにおけるデータ処理速度のボトルネックはいつまでも解決されない。特に、データ量の多い画像データやオーディオデータを記憶するメモリ回路が飛躍的に向上した現在では、システム全体のデータ処理速度に求められる要望は強い。
【０００４】
ところで、ビデオカメラや電子カメラによって撮像された画像をアナログ信号からデジタル信号に変換した後、２次元の画素データの１画面又は数画面をフレームメモリなどの画像メモリ回路に記憶した場合に、画像メモリ回路に記憶された２次元の画素データに含まれるノイズ成分を低減する技術が知られている。このノイズ低減の方法に移動平均法がある。移動平均法によれば、例えば、２次元の画素データの１つを指定するとともに、その指定の画素データに対して左右上下および斜めの位置に隣接する周囲の画素データを読み出して、指定の画素データおよび周囲の８個の画素データからなる９個の画素データの振幅の値の平均値によって、指定の画素データの値を書き換える。ところが、平均移動法においては、ノイズ成分だけでなく画像の輪郭を形成するエッジも低減されるため、画像の解像度が劣化するという問題がある。
【０００５】
そこで、近年においては、これら９個の画素データの振幅の中央の値となる画素データによって、指定の画素データの値を書き換えるメディアンフィルタ処理によるノイズ低減法が採用されるようになった。
例えば、ある提案の「３×３メディアンフィルタの高速アルゴリズム」においては、９個のデータを３個ずつの３組に分け、組ごとにソートし、各組の中央値の大きい順にＡ、Ｂ、Ｃとする。そして、Ｂの中央値とＡの最小値との大小関係、および、Ｂの中央値とＣの最大値との大小関係を比較するアルゴリズムを実行することによって、平均比較回数を削減することが記載されている。（非特許文献１および特許文献６参照）
また、ある提案の「映像信号処理方法および装置」においては、図４に見られるように、第１のメディアンフィルタ演算器２１は、特定の画素に対し、隣り合った水平方向の所定の領域の画素信号を比較器１９で比較し、中央値決定器２０でその中央値を選び、その中央値を特定の画素の信号として第２のメモリ２２に供給して記憶させる。第２のメモリ２２の各画素に記憶された信号は、読み出されて垂直方向の第２のメディアンフィルタ演算器２５に供給される。第２のメディアンフィルタ演算器２５は、特定の画素に対し、隣り合った垂直方向の所定の領域の画素信号を比較器２３で比較し、中央値決定器２４でその中央値を選び、その中央値を特定の画素の信号として第３のメモリ２２に供給して記憶させる構成が記載されている。（特許文献１参照）
また、ある提案の「ノイズ低減回路および画像信号処理装置」においては、入力画像信号に対してノイズの大きさに相当する直流成分を加減算することによりノイズを低減するノイズ低減回路であって、入力画像信号のエッジ部分を検出するエッジ検出手段と、入力画像信号のノイズを検出してこのノイズに応じた直流成分を生成する直流成分生成手段と、入力画像信号のエッジ部分においてノイズを含まない信号に、より近づくような第１の参照信号を生成するメディアンフィルタなどの第１の参照信号生成手段と、入力画像信号のエッジ部分以外の略平坦な部分において、ノイズを含まない信号に、より近づくような第２の参照信号を生成する低域フィルタなどの第２の参照信号生成手段と、エッジ検出手段の検出結果に応じて、第１および第２の参照信号を択一的に導出する選択手段と、選択手段による選択参照信号と入力画像信号とのレベル比較を行い、この比較結果に応じて直流成分の入力画像信号への加減算処理を行う加減算手段とを含む構成が記載されている。（特許文献２参照）
また、ある提案の「デジタルノイズリダクション回路」においては、メディアンフィルタを使用して、そのメディアンフィルタの中央値を選択する際に、ソート処理のように時間的にシリーズに処理を行わずに、画素同士の比較処理を並列に行う構成が記載されている。（特許文献３参照）
【０００６】
また、ある提案の順序フィルタリング方法においては、例えば、３×３の９個のデータを読み出して、大きさの順に整列（ソート）させた後、所望のＸ番目のデータを見つけるために、候補となるデータを順次絞り込みを行う構成が記載されている。（特許文献４参照）
また、ある提案の符号化装置においては、データの大きさの順位を検出するために、読み出したデータに対して、ソフトウェアによるアルゴリズム又はテーブルを用いて並べ替えを行う構成が記載されている。（特許文献５参照）
【０００７】
また、デジタルデータの大小判別処理に用いられるデータ処理回路として、例えば、４ビットのデータＡおよびデータＢを比較して、Ａ＞Ｂ若しくはＡ＜Ｂ又はＡ＝Ｂを出力する比較回路（ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）が知られている。このような比較回路では、入力される上位ビットの比較回路の結果である３ビットのＡｊ＞Ｂｊ若しくはＡｊ＜Ｂｊ又はＡｊ＝Ｂｊの論理と、演算する比較回路に入力された４ビットのデータＡｋおよびデータＢｋの論理に基づいて演算を行って、その結果であるＡｋ＞Ｂｋ若しくはＡｋ＜Ｂｋ又はＡｋ＝Ｂｋの論理を下位ビットの比較回路に出力する構成になっている。すなわち、４ビットの比較回路をカスケード接続することによって、８ビット、１２ビット、１６ビット等の多ビットの大小判別処理のデータ処理ができる。また、８ビットコンパレータとして、例えば、６４６８２の回路が知られている。（非特許文献２参照）
【特許文献１】特開平９−１９８４９８号公報
【特許文献２】特開平１０−８４４９８号公報
【特許文献３】特開２００１−１９７３３３号公報
【特許文献４】特開平５−２６４５号公報
【特許文献５】特開２００４−１２０６２３号公報
【特許文献６】特開２００４−２２００９４号公報
【非特許文献１】社団法人電子情報通信学会発行「ＦＩＴ２００２情報科学技術フォーラム情報技術レターズＶｏｌ．第１巻２００２年」１４１〜１４２ページ、「３×３メディアンフィルタの高速アルゴリズム」
【非特許文献２】２００３年３月２０日、日本理工出版会刊、中村次男著の「デジタル回路の基礎」９１〜９４ページ、「大小判別回路」
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記非特許文献１においては、ソフトウェアのアルゴリズムによって、画素データの大小比較のデータ処理を行っているので、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献２においては、９個の画素データ読み出して第１のメモリに書き込み、第１のメディアンフィルタ演算器によって、３個の画素データを第１のメモリから読み出して、３個ごとの画素データの中央値を決定し第２のメモリに書き込む。そして、第２のメモリに記憶された中央値の３個の画素データをメディアンフィルタ演算器によって、最終的に９個の画素データの中央値を決定し第３のメモリに書き込むようになっている。このため、データの読み出しと書き込みとを繰り返す必要があり、高速なデータ処理は困難である。
また、上記特許文献３の場合にも、１ラインの画素データを読み出して、ラインメモリに記憶した後に、各画素データのノイズを低減するデータ処理を行っているので、高速なデータ処理は困難である。
同様に、上記特許文献４および特許文献５の場合にも、処理対象のデータを読み出した後に、目的のデータ処理を行っているので、高速なデータ処理は困難である。
また、上記非特許文献２においては、例えば、４ビットの比較回路の場合には、２つの入力データの排他的論理和を出力するＥＸＯＲ回路が４個あるのは当然であるが、それぞれの比較結果の論理と、入力される上位４ビットの比較回路の比較結果との論理演算を行うために、５入力のＡＮＤ回路が５個、４入力のＡＮＤ回路が２個、３入力のＡＮＤ回路が２個、２入力のＡＮＤ回路が２個、および、５入力のＯＲ回路が２個使用されている。このため、集積回路によって４ビットに比較回路を実現した場合には、配線パターンが非常に多くなり、配線パターン間の浮遊容量のためにデータが遅延し、高速なデータ処理は困難である。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。また、上記非特許文献２においては、８ビットコンパレータの例として、７４６８２のＩＣ回路が示されているが、この回路は、カスケード接続でない単独の８ビットコンパレータである。これは、３ビットのカスケード接続の構成にすると膨大なゲート回路が必要であるからであると考えられる。
【０００９】
本発明は、上記従来の問題を解決するものであり、システムを構成するために、ＣＰＵやメモリ回路の周辺のデータ比較処理回路の高速化を図り、ＣＰＵの処理待ち時間を短縮することを目的とする。また、そのような高速のデータ比較処理回路を組み込んだ集積回路を実現することを目的とする。さらにまた、その集積回路を搭載した画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
請求項１に記載のデータ比較処理回路は、入力された複数ビットからなる第１のデータおよび第２のデータをビットごとに比較する複数のビット比較回路を備えたデータ比較処理回路であって、
各ビット比較回路は、入力された１ビットの第１のデータおよび第２のデータのビット値が一致する場合は一致信号を発生し、当該ビット値が不一致の場合は不一致信号を発生する入力回路と、上位のビット比較回路から送信された一致信号若しくは不一致信号又は所定の電子部品によって発生された固定信号を受信する受信回路と、入力回路によって不一致信号が発生され、且つ、受信回路によって一致信号若しくは固定信号が受信された場合には、入力回路に入力されている第１のデータを出力する出力回路と、入力回路によって不一致信号が発生された場合、又は、受信回路によって不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、入力回路によって一致信号が発生され、且つ、受信回路によって一致信号又は固定信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送信回路と、を有することを特徴とする。
【００１１】
請求項２に記載のデータ比較処理回路は、画像メモリ回路に記憶された２次元の画像データを構成する複数の画素データの中から１つの画素データが順に指定されたときに、当該指定の画素データに隣接する周囲の画素データからなる２ｎ＋１個（ｎは１以上の整数）の画素データを処理するデータ比較処理回路であって、
それぞれ１個の画像データを記憶できる２ｎ＋１個の縦列接続された画素記憶回路と、２ｎ＋１個の画素データが１個ずつ順に読み出されたときに、読み出された画素データの値と２ｎ＋１個の画素記憶回路の各々にそのとき記憶されている画素データの値とを比較して、読み出された画素データを値の昇順又は降順に記憶するための１個の画素記憶回路を指定する記憶制御回路と、読み出された２ｎ＋１個の画素データが、記憶制御回路の指定に基づいて、２ｎ＋１個の画素記憶回路に値の昇順又は降順に記憶された場合には、所定の書換信号の入力に応じて、ｎ番目の画素記憶回路に記憶されている画素データの値によって、画像メモリ回路に記憶されている指定の画素データの値を書き換える書換制御回路と、を備えたことを特徴とする。
【００１２】
請求項３に記載の集積回路は、請求項１又は２に記載のデータ比較処理回路をワンチップの半導体に組み込んだことを特徴とする。
請求項４に記載の画像処理装置は、請求項１又は２に記載のデータ比較処理回路をワンチップの半導体に組み込んだ集積回路を搭載したことを特徴とする。
【発明の効果】
【００１３】
本発明のデータ比較処理回路、その回路を組み込んだ集積回路、および、その集積回路を搭載した画像処理装置を用いたシステムにおけるデータ処理の大幅な高速化を実現するという効果が得られる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明によるデータ比較処理回路、集積回路、および画像処理装置の第１実施形態ないし第３実施形態について、図を参照して説明する。なお、本発明による画像処理装置を用いたシステムは、携帯電話装置、デジタル電子カメラ、ビデオカメラ、テレビ受信装置などであるが、本発明の適用範囲はこれら個々の画像処理装置に限定されるものではない。当業者が容易に想定可能なもので、高速なデータ処理が要求されるシステムに適用できる。
【００１５】
まず、第１実施形態のデータ比較処理回路について、図１ないし図６を参照して説明する。
図１は、画像に含まれているノイズ成分を低減することが必要な画像処理装置（図示せず）に搭載されるワンチップの集積回路であり、１画面分の２次元の画素データを記憶できる画像メモリ回路（ＩＭＡＧＥ  ＭＥＭＯＲＹ）１００と、９個の画素データに対してメディアンフィルタ処理を施すことによって、指定した１つの画素データのノイズを低減するためのノイズ低減回路（ＭＥＤＩＡＮ  ＦＩＬＴＥＲ）２００で構成されている。なお、図には示していないが、画像処理装置には、画像メモリ回路１００およびノイズ低減回路２００に対して下記に記載するような種々の信号を入力する電子回路が搭載されているが、周知の回路であるので説明は省略する。
【００１６】
図１では、理解を容易にするために、画像メモリ回路１００は、画素データを読み出す出力ポートＤｏｕｔと、画素データを書き込む入力ポートＤｉｎとが別個のデータポートとして記載されている。しかし、この画像メモリ回路１００の構成は、従来から使用されているものであり、画素データを読み出すポートと書き込むポートとが共通のデータポートであってもよいし、いわゆるデュアルポートのように、２つの独立したデータポートのものでもよい。いずれにせよ、アドレスポートであるＡＤによって指定される記憶エリアから画素データを読み出すモードと、ＡＤによって指定される記憶エリアに画素データを書き込むモードとは独立したメモリアクセス動作となる。
【００１７】
画像メモリ回路１００において、読出イネーブルポートＲＥは、入力されるイネーブル信号ＲＥがハイレベルのときに読み出しが可能となる。読出ポートＲＤは、入力される読出信号のＲＤのパルスの立ち上がりで、ＡＤで指定される記憶エリアの画素データを出力ポートＤｏｕｔから読み出すことが可能となる。書込イネーブルポートＷＥは、入力されるイネーブル信号ＷＥがハイレベルのときに書き込みが可能となる。書込ポートＷＴは、入力される書込信号ＷＴのパルスの立ち上がりで、ＡＤで指定される記憶エリアに画像データを入力ポートＤｉｎから書き込むことが可能になる。
【００１８】
画素データの値が１〜２５５の範囲とし、画素データが無い値を０とすると、画素データは８ビットで表される。画素データの値が１〜６５５３５の範囲とし、画素データが無い値を０とすると、画素データは１６ビットで表される。この実施形態においては、８ビットの画素データのノイズ成分を低減する場合を想定する。
【００１９】
ノイズ低減回路２００は、レジスタブロックＢＬ（１）〜レジスタブロックＢＬ（９）で構成され、各レジスタブロックに共通に、画像メモリ回路１００の出力ポートＤｏｕｔが接続されている。各レジスタブロックには、１つの画素データを記憶することができる。また、あらかじめ設定されているレジスタブロック（５）の出力ポートＤｏｕｔは、画像メモリ回路１００の入力ポートＤｉｎに接続されている。また、図示しない電子回路からノイズ低減回路２００にシフト信号ＳＰおよびクリア信号ＣＬが入力される。
【００２０】
図２〜図４は、ノイズ低減回路２００の内部回路を示す図である。図２は、レジスタブロックＢＬ（１）〜レジスタブロックＢＬ（３）の回路図であり、図３は、レジスタブロックＢＬ（３）に続くレジスタブロックＢＬ（４）〜レジスタブロックＢＬ（６）の回路図であり、図４は、レジスタブロックＢＬ（６）に続くレジスタブロックＢＬ（７）〜レジスタブロックＢＬ（９）の回路図である。
【００２１】
次に、図２〜図４のノイズ低減回路２００の機能について説明する。
図２のレジスタブロックＢＬ（１）は、レジスタ回路１１、比較回路１２、インバータ回路１５、およびＡＮＤ回路１６で構成されている。レジスタ回路１１の入力端子Ｄ１は、画像メモリ回路１００の出力ポートＤｏｕｔに接続されている。レジスタ回路１１は、入力端子Ｄ１に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ１から読み出すことができる。比較回路１２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値、すなわち、レジスタ回路１１の入力端子Ｄ１に供給された画素データの値と、レジスタ回路１１に記憶されて入力端子ｑに供給される画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベル（これを「正論理」とする）の比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベル（これを「負論理」とする）の比較信号を出力する。インバータ回路１５は、比較回路１２から出力される比較信号の論理を反転して出力する。ＡＮＤ回路１６は、比較回路１２から出力される比較信号がハイレベルのときに、レジスタ回路１１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、比較信号がローレベルのときに、レジスタ回路１１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。
【００２２】
図２のレジスタブロックＢＬ（２）は、レジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、インバータ回路２５、ＡＮＤ回路２６、およびＯＲ回路２７で構成されている。レジスタ回路２１の入力端子Ｄ２は、スイッチ回路２３の出力ｄに接続されている。レジスタ回路２１は、入力端子Ｄ２に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ２から読み出すことができる。比較回路２２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値とレジスタ回路２１に記憶された画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路２４は、比較回路２２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（１）のインバータ回路１５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路２３の制御端子ｃに与え、比較回路２２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（１）のインバータ回路１５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路２３の制御端子ｃに与える。スイッチ回路２３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路１１に記憶された画素データを選択して、レジスタ回路２１の入力端子Ｄ２に供給する。ＯＲ回路２７は、比較回路２２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（１）の比較回路１２から出力される比較信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路２６は、ＯＲ回路２７から出力される信号がハイレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路２７から出力される信号がローレベルのときに、レジスタ回路２１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。インバータ回路２５は、比較回路２２から出力される比較信号の論理を反転して出力する。
【００２３】
図２のレジスタブロックＢＬ（３）は、レジスタ回路３１、比較回路３２、スイッチ回路３３、ＡＮＤ回路３４、インバータ回路３５、ＡＮＤ回路３６、およびＯＲ回路３７で構成されている。ＯＲ回路３７は、比較回路３２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（２）のＯＲ回路２７から出力される比較信号がハイレベルのときに、ハイレベルの信号を出力する。その他の機能については、レジスタブロックＢＬ（２）と全く同一であるので、説明は省略する。
【００２４】
図３のレジスタブロック（４）およびレジスタブロック（６）、図４のレジスタブロック（７）およびレジスタブロック（８）は、図２のレジスタブロックＢＬ（２）およびレジスタブロック（３）と全く同一の回路構成になっている。また、レジスタブロック（５）およびレジスタブロック（９）についても、図２のレジスタブロック（２）およびレジスタブロックＢＬ（３）とほとんど同一の回路構成になっている。
【００２５】
したがって、レジスタブロックＢＬ（４）〜レジスタブロックＢＬ（９）の機能をまとめて説明する。
レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９は、スイッチ回路４３〜９３の出力ｄに接続されている。レジスタ回路４１〜９１は、入力端子Ｄ４〜Ｄ９に供給された画素データをトリガ端子ＣＫに入力されるシフト信号のパルスの立ち下がりで記憶する。記憶した画素データは、出力端子Ｑ４〜Ｑ９から読み出すことができる。比較回路４２〜９２は、画像メモリ回路１００から読み出されて入力端子ｐに供給される画素データの値とレジスタ回路４１〜９１に記憶されている画素データの値とを比較して、読み出された画素データの値が記憶された画素データの値より大きいときは、出力端子ｒからハイレベルの比較信号を出力する。一方、読み出された画素データの値が記憶された画素データの値以下であるときは、出力端子ｒからローレベルの比較信号を出力する。ＡＮＤ回路４４〜９４は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、且つ、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がハイレベルのときに、ハイレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与え、比較回路４２〜９２から出力される比較信号がローレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のインバータ回路３５〜８５の出力がローレベルのときに、ローレベルの選択信号をスイッチ回路４３〜９３の制御端子ｃに与える。スイッチ回路４３〜９３は、制御端子ｃの選択信号がハイレベルのときに、画像メモリ回路１００から読み出された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給し、制御端子ｃの選択信号がローレベルのときに、前段のレジスタ回路３１〜８１に記憶された画素データを選択して、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９に供給する。ＯＲ回路４７〜９７は、比較回路４２〜９２から出力される比較信号がハイレベルのとき、又は、レジスタブロックＢＬ（３）〜（８）のＯＲ回路３７〜８７から出力される信号がハイレベルのときに、ハイレベルの信号を出力する。ＡＮＤ回路４６〜９６は、ＯＲ回路４７〜９７から出力される信号がハイレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを有効にし、ＯＲ回路３７〜８７から出力される信号がローレベルのときに、レジスタ回路４１〜９１のトリガ端子ＣＫに入力されるシフト信号ＳＰを無効にする。
【００２６】
図３のレジスタブロック（４）〜（６）、図４のレジスタブロック（７）およびレジスタブロック（８）において、インバータ回路４５〜８５は、比較回路４２〜８２からの比較信号の論理を反転して、次段のレジスタブロック（５）〜（９）のＡＮＤ回路５４〜９４に入力する。しかし、最終段のレジスタブロック（９）においては、比較回路９２からの比較信号の論理を反転するインバータ回路はない。また、第５段のレジスタブロック（５）において、レジスタ５１の出力端子Ｑ５は、図１において説明したように、画像メモリ回路１００の入力ポートＤｉｎに接続されている。
【００２７】
次に、図１〜図４に示した画像メモリ回路１００およびノイズ低減回路２００の動作について、図５の具体例を参照しながら説明する。
図５（Ａ）は、フィルタ処理対象の９個の画素データの値を示している。中央の画素データがノイズ低減の対象として指定される画素データであり、周囲の８個の画素データとの間でメディアンフィルタ処理が行われる。本発明のノイズ低減回路２００においては、９個の画素データを読み出す順序は何ら制約を受けない。図５（Ａ）において、指定の画素データを最初に読み出して、次に、左上、上、右上、左、右、左下、下、右下の順でもよいし、垂直方向の３個の画素データをブロックとして上から順に読み出し、左から右のブロックに移動する方法でもよいし、指定の画素データを中心として、８個の画素データを時計回り又は反時計回りに読み出してもよい。ここでは、通常多く用いられている読み出し順を採用し、９個の画素データを左上、上、右上、左、中央、右、左下、下、右下の順で読み出すこととする。なお、指定の画素が２次元の画面の端にある場合には、周囲の画素データが８個にならない。この場合には、同じ画素データを複数回読み出して全体を９個の画素データとする。また、画像メモリ回路１００に記憶されている２次元の画素データの値は全て０よりも大きい値（１〜２５５）とする。
【００２８】
図６は、図示しない電子回路において生成されるパルス信号のタイミングチャートである。図６において、ＣＬＯＣＫは、他のパルス信号の基準となる一定の時間間隔の周期信号である。ＲＤ／ＳＰは、ＣＬＯＣＫの４倍の周期のパルス信号であり、図１において説明したように、読出イネーブル信号ＲＥがハイレベルのときに、ＲＤ／ＳＰのパルス信号の立ち上がりのタイミングで、画像メモリ回路１００の画素データが出力ポートＤｏｕｔから読み出されて、ノイズ低減回路２００の各レジスタブロックに供給される。すなわち、番号０〜９で表すＲＤ／ＳＰのうち、ＲＤ／ＳＰ「０」の立ち上がりのタイミングは、読出イネーブル信号ＲＥがローレベルであるので画素データは読み出されない。ＲＤ／ＳＰ「１」〜「９」の立ち上がりのタイミングで、図５（Ａ）の９個の画素データが順に読み出される。
【００２９】
ＲＤ／ＳＰのパルス信号の立ち下がりのタイミングが各レジスタブロックに入力されるシフト信号となる。したがって、ＲＤ／ＳＰ「１」〜「９」の立ち下がりのタイミングで、シフト信号が各レジスタブロックに入力される。ただし、ＲＤ／ＳＰ「１」の立ち上がりのタイミングと立ち下がりのタイミングとの間に、ＣＬが各レジスタブロックのレジスタ回路に入力され、記憶されている画素データが０にクリアされる。なお、画像処理装置の電源がオンになったときのイニシャライズにおいても、各レジスタブロックのレジスタ回路は０にクリアされる。すなわち、画像メモリ回路１００から９個の画素データが読み出された直後で、且つ、シフト信号が各レジスタブロックに入力される直前に、９個のレジスタ回路１１〜９１がクリアされ、各レジスタ回路には「０」が記憶される。
【００３０】
ＲＤ／ＳＰ「１」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された１番目の画素データ「（値＝）１００」が各レジスタブロックに供給されたときは、読み出された画素データの値「１００」は「０」より大きいので、比較回路１２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「１」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された１番目の画素データの値「１００」が記憶され、残りのレジスタ回路２１〜９１には値「０」のデータが記憶される。
【００３１】
次に、ＲＤ／ＳＰ「２」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１００」と、読み出された画素データの値「１１０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２〜９２は、レジスタ回路２１〜９１に記憶されている値「０」のデータと、読み出された２番目の画素データの値「１１０」とを比較する。したがって、比較回路２２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１００」が供給され、レジスタ回路３１〜９１の入力端子Ｄ３〜Ｄ９には、前段のレジスタ回路２１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「２」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された２番目の画素データの値「１１０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路３１〜９１には値「０」のデータが記憶される。
【００３２】
次に、ＲＤ／ＳＰ「３」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路１２の出力端子ｒからはハイレベルの比較信号が出力される。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１００」と、読み出された画素データの値「１２０」とを比較する。この場合には、比較回路２２の出力端子ｒからはハイレベルの比較信号が出力される。また同時に、比較回路３２〜９２は、レジスタ回路３１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１２０」とを比較する。したがって、比較回路３２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路２４〜９４には、インバータ回路１５〜８５からローレベルの信号が入力され、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３に与えられる。したがって、レジスタ回路２１の入力端子Ｄ２には、前段のレジスタ回路１１に記憶されている画素データの値「１１０」が供給され、レジスタ回路３１の入力端子Ｄ３には、前段のレジスタ回路２１に記憶されている画素データの値「１００」が供給され、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９には、前段のレジスタ回路３１〜８１に記憶されている値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「３」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された３番目の画素データの値「１２０」が記憶され、レジスタ回路２１には、レジスタ回路１１に記憶された画素データの値「１１０」が記憶され、レジスタ回路３１には、レジスタ回路２１に記憶された画素データの値「１００」が記憶され、残りのレジスタ回路４１〜９１には値「０」のデータが記憶される。
【００３３】
次に、ＲＤ／ＳＰ「４」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された４番目の画素データの値「９０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。同時に、比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路２２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路２７には、比較回路１２からローレベルの比較信号が入力され、且つ、比較回路２２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路２６には、ＯＲ回路２７からローレベルの信号が入力されるので、レジスタ回路２１へのシフト信号は無効になる。また同時に、比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「９０」とを比較する。この場合には、比較回路３２の出力端子ｒからはローレベルの比較信号が出力される。したがって、ＯＲ回路３７には、ＯＲ回路２７からローレベルの比較信号が入力され、且つ、比較回路３２からローレベルの比較信号が入力される。この結果、ＡＮＤ回路３６には、ＯＲ回路３７からローレベルの信号が入力されるので、レジスタ回路３１へのシフト信号は無効になる。したがって、レジスタ回路１１、２１、３１には新たな画素データは記憶されず、現在記憶している画素データの値「１２０」、「１１０」、「１００」をそのまま維持する。なお、レジスタブロック（１）〜（３）のインバータ回路１５〜３５からはハイレベルの信号が後段のＡＮＤ回路２４〜４４に入力される。
【００３４】
この場合においては、比較回路４２〜９２は、レジスタ回路４１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「９０」とを比較する。したがって、比較回路４２〜９２の出力端子ｒからは、全てハイレベルの比較信号が出力される。この結果、ＡＮＤ回路４４には、インバータ回路３５からハイレベルの信号が入力され、且つ、比較回路４２からハイレベルの信号が入力される。したがって、ＡＮＤ回路４４からはハイレベルの選択信号がスイッチ回路４３の制御端子ｃに与えられ、画像メモリ回路１００から読み出された画像データの値「９０」がレジスタ回路４１の入力端子Ｄ４に供給される。この場合には、比較回路４２からハイレベルの比較信号がＯＲ回路４７に入力されるので、レジスタ回路４１へのシフト信号は有効になる。この結果、ＲＤ／ＳＰ「４」の立ち下がりのタイミングにおいて、読み出された画像データの値「９０」がレジスタ回路４１に記憶される。
【００３５】
さらにこの場合においては、ＡＮＤ回路５４〜９４には、インバータ回路４５〜８５からローレベルの信号が入力され、ＡＮＤ回路５４〜９４からローレベルの選択信号がスイッチ回路５３〜９３に与えられる。したがって、レジスタ回路５１〜９１の入力端子Ｄ５〜Ｄ９には、前段のレジスタ回路４１〜８１に記憶されている値「０」のデータが供給される。また、比較回路５２の出力端子ｒからハイレベルの比較信号がＯＲ回路５７に入力されるので、ＯＲ回路５７からＡＮＤ回路５６およびＯＲ回路６７にハイレベルの信号が入力される。したがって、ＯＲ回路７７〜９７には、それぞれ前段のＯＲ回路６７〜８７から順にハイレベルの信号が入力される。したがって、レジスタ回路５１〜９１へのシフト信号が有効となる。この結果、レジスタ回路５１〜９１には値「０」のデータが記憶される。
【００３６】
次に、ＲＤ／ＳＰ「５」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「１２０」と、読み出された画素データの値「２５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１１０」と、読み出された画素データの値「２５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１００」と、読み出された画素データの値「２５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「９０」と、読み出された画素データの値「２５０」とを比較する。また、比較回路５２〜９２は、レジスタ回路５１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「２５０」とを比較する。この場合には、比較回路１２〜９２の出力端子ｒからは全てハイレベルの比較信号が出力される。したがって、ＡＮＤ回路２４〜９４には、前段のインバータ回路１５〜８５からローレベルの信号が入力される。したがって、ＡＮＤ回路２４〜９４からローレベルの選択信号がスイッチ回路２３〜９３の制御端子ｃに入力され、レジスタ回路２１〜９１の入力端子Ｄ２〜Ｄ９には、それぞれ前段のレジスタ回路１１〜８１に記憶された画素データの値「１２０」、「１１０」、「１００」、「９０」および、値「０」のデータが供給される。また、比較回路１２の出力端子ｒからハイレベルの比較信号がＡＮＤ回路１６およびレジスタブロック（２）のＯＲ回路２７に入力される。したがって、ＯＲ回路３７〜９７には、それぞれ前段のＯＲ回路２７〜８７から順にハイレベルの信号が入力されるので、レジスタ回路１１〜９１へのシフト信号が有効となる。この結果、ＲＤ／ＳＰ「５」の立ち下がりのタイミングにおいて、レジスタ回路１１には、画像メモリ回路１００から読み出された５番目の画素データの値「２５０」が記憶され、レジスタ回路２１には、前段のレジスタ回路１１に記憶された画素データの値「１２０」が記憶され、レジスタ回路３１には、前段のレジスタ回路２１に記憶された画素データの値「１１０」が記憶され、レジスタ回路４１には、前段のレジスタ回路３１に記憶された画素データの値「１００」が記憶され、レジスタ回路５１には、前段のレジスタ回路４１に記憶された画素データの値「９０」が記憶される。また、レジスタ回路６１〜９１には値「０」が記憶される。
【００３７】
次に、ＲＤ／ＳＰ「６」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された６番目の画素データの値「１３０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１３０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１３０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１３０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１００」と、読み出された画素データの値「１３０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「９０」と、読み出された画素データの値「１３０」とを比較する。また、比較回路６２〜９２は、レジスタ回路６１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「１３０」とを比較する。この場合には、比較回路１２の出力端子ｒからはローレベルの比較信号が出力されて、ＡＮＤ回路１６に入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、ＲＤ／ＳＰ「６」の立ち下がりのタイミングにおいて、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。
【００３８】
この場合には、ＡＮＤ回路２４には、前段のインバータ回路１５からハイレベルの信号が入力され、且つ、比較回路２２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路２４からハイレベルの選択信号がスイッチ回路２３に与えられ、画像メモリ回路１００から読み出された６番目の画素データの値「１３０」がレジスタ回路２１に供給される。また、比較回路２２の出力端子ｒからはハイレベルの比較信号が出力されて、ＯＲ回路２７に入力される。したがって、ＯＲ回路２７から出力されたハイレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号は有効になる。この結果、レジスタ回路２１には、画素データの値「１３０」が記憶される。
【００３９】
さらにこの場合には、ＡＮＤ回路３４〜９４には、前段のインバータ回路２５〜８５からローレベルの信号が入力される。したがって、ＡＮＤ回路３４〜９４からハイレベルの選択信号がスイッチ回路３３〜９３に与えられ、前段のレジスタ回路２１〜５１に記憶されている画素データの値「１２０」、「１１０」、「１００」、「９０」がレジスタ回路３１〜６１に供給され、値「０」のデータがレジスタ回路７１〜９１に供給される。また、ＯＲ回路２７から出力されたハイレベルの信号が次段のＯＲ回路３７に入力され、ＯＲ回路４７〜９７に順に前段のＯＲ回路３７〜８７から出力されたハイレベルの信号が入力されるので、レジスタ回路４１〜９７へのシフト信号は有効になる。この結果、レジスタ回路３１〜６１には、それぞれ画素データの値「１２０」、「１１０」、「１００」、「９０」が記憶され、レジスタ回路７１〜９１には、値「０」が記憶される。
【００４０】
次に、ＲＤ／ＳＰ「７」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された７番目の画素データの値「８０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「８０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「８０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「８０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「８０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「８０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「８０」とを比較する。また、比較回路７２〜９２は、レジスタ回路７１〜９１に記憶されている値「０」のデータと、読み出された画素データの値「８０」とを比較する。
【００４１】
この場合には、比較回路１２〜６２からは、全てローレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。また、ＯＲ回路２７〜６７には、ローレベルの比較信号が入力され、且つ、前段のＡＮＤ回路１６、ＯＲ回路２７〜６７からローレベルの信号が入力される。したがって、ＯＲ回路２７〜６７からはローレベルの信号がＡＮＤ回路２６〜６６に入力されるので、レジスタ回路２１〜６１へのシフト信号は無効となる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、レジスタ２１〜９１には新たな画素データは記憶されず、現在記憶している画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」がそのまま維持される。
【００４２】
ＡＮＤ回路７４には、インバータ回路６５からハイレベルの信号が入力され、且つ、比較回路７２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路７４からハイレベルの選択信号がスイッチ回路７３に与えられ、この結果、ＲＤ／ＳＰ「７」の立ち下がりのタイミングにおいて、画像メモリ回路１００から読み出された７番目の画素データの値「８０」がレジスタ回路７１に記憶される。また、インバータ回路７５、８５からローレベルの信号がＡＮＤ回路８４、９４に入力される。したがって、ＡＮＤ回路８４、９４からローレベルの選択信号がスイッチ回路８３、９３に与えられ、それぞれ前段のレジスタ回路７１、８１に記憶された値「０」のデータがレジスタ回路８１、９１の入力端子Ｄ８、Ｄ９に供給される。また、比較回路８２、９２からハイレベルの比較信号がＯＲ回路８７、９７に入力される。したがって、ＯＲ回路８７、９７からハイレベルの信号がＡＮＤ回路８６、９６に入力されるので、レジスタ回路８１、９１へのシフト信号が有効となる。この結果、レジスタ回路８１、９１に値「０」のデータが記憶される。
【００４３】
次に、ＲＤ／ＳＰ「８」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された８番目の画素データの値「１５０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１５０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１５０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１５０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１５０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１００」と、読み出された画素データの値「１５０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「９０」と、読み出された画素データの値「１５０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「８０」と、読み出された画素データの値「１５０」とを比較する。また、比較回路８２、９２は、レジスタ回路８１、９１に記憶されている値「０」のデータと、読み出された画素データの値「１５０」とを比較する。
【００４４】
この場合には、比較回路１２からはローレベルの比較信号が出力される。また、比較回路２２〜９２からはハイレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、ＡＮＤ回路２４には、インバータ回路１５からハイレベルの信号が入力され、且つ、比較回路２２からハイレベルの比較信号が入力される。したがって、ＡＮＤ回路２４からハイレベルの選択信号がスイッチ回路２３の制御端子ｃに与えられ、読み出された画素データの値「１５０」がレジスタ回路２１の入力端子Ｄ２に供給される。また、比較回路２２からハイレベルの比較信号がＯＲ回路２７に入力される。したがって、ＯＲ回路２７からハイレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号が有効になる。この結果、ＲＤ／ＳＰ「８」の立ち下がりのタイミングにおいて、読み出された画素データの値「１５０」がレジスタ回路２１に記憶される。
【００４５】
この場合には、インバータ回路２５〜８５からローレベルの信号がＡＮＤ回路３４〜９４に入力される。したがって、ＡＮＤ回路３４〜９４からローレベルの選択信号がスイッチ回路３３〜９３の制御端子ｃに与えられ、レジスタ回路３１〜８１の入力端子Ｄ３〜Ｄ８には、それぞれ前段のレジスタ回路２１〜７１に記憶された画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が供給される。また、ＯＲ回路２７からハイレベルの信号がＯＲ回路３７に入力され、ＯＲ回路４７〜９７には前段のＯＲ回路３７〜８７からハイレベルの信号が入力される。したがって、ＯＲ回路４７〜９７からハイレベルの信号がＡＮＤ回路３６〜９６に入力されるので、レジスタ回路３１〜９１へのシフト信号が有効になる。この結果、レジスタ回路３１〜８１には画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。また、レジスタ回路９１には値「０」のデータが記憶される。
【００４６】
次に、ＲＤ／ＳＰ「９」の立ち上がりのタイミングで、画像メモリ回路１００から読み出された９番目の画素データの値「１４０」が各レジスタブロックに供給されたときは、比較回路１２は、レジスタ回路１１に記憶されている画素データの値「２５０」と、読み出された画素データの値「１４０」とを比較する。比較回路２２は、レジスタ回路２１に記憶されている画素データの値「１５０」と、読み出された画素データの値「１４０」とを比較する。比較回路３２は、レジスタ回路３１に記憶されている画素データの値「１３０」と、読み出された画素データの値「１４０」とを比較する。比較回路４２は、レジスタ回路４１に記憶されている画素データの値「１２０」と、読み出された画素データの値「１４０」とを比較する。比較回路５２は、レジスタ回路５１に記憶されている画素データの値「１１０」と、読み出された画素データの値「１４０」とを比較する。比較回路６２は、レジスタ回路６１に記憶されている画素データの値「１００」と、読み出された画素データの値「１４０」とを比較する。比較回路７２は、レジスタ回路７１に記憶されている画素データの値「９０」と、読み出された画素データの値「１４０」とを比較する。比較回路８２は、レジスタ回路８１に記憶されている画素データの値「８０」と、読み出された画素データの値「１４０」とを比較する。また、比較回路９２は、レジスタ回路９１に記憶されている値「０」のデータと、読み出された画素データの値「１４０」とを比較する。
【００４７】
この場合には、比較回路１２、２２からローレベルの比較信号が出力される。また、比較回路３２〜９２からハイレベルの比較信号が出力される。したがって、ＡＮＤ回路１６にはローレベルの比較信号が入力されるので、レジスタ回路１１へのシフト信号は無効になる。さらに、ＯＲ回路２７には比較回路２２からローレベルの比較信号が入力され、且つ、比較回路１２からローレベルの比較信号が入力される。したがって、ＯＲ回路２７からローレベルの信号がＡＮＤ回路２６に入力されるので、レジスタ回路２１へのシフト信号は無効になる。この結果、レジスタ回路１１には読み出された画素データは記憶されず、現在記憶している画素データの値「２５０」がそのまま維持される。また、レジスタ回路２１には新たな画素データは記憶されず、現在記憶している画素データの値「１５０」がそのまま維持される。
【００４８】
またこの場合には、ＡＮＤ回路３４には、インバータ回路２５からハイレベルの信号が入力され、且つ、比較回路３２からハイレベルの比較信号が出力される。したがって、ＡＮＤ回路３４からハイレベルの選択信号がスイッチ回路３３の制御端子ｃに与えられ、読み出された画素データの値「１４０」がレジスタ回路３１の入力端子Ｄ３に供給される。また、ＯＲ回路３７には比較回路３２からハイレベルの比較信号が出力される。したがって、ＯＲ回路からハイレベルの信号がＡＮＤ回路３６に入力されるので、レジスタ回路３１へのシフト信号が有効になる。この結果、ＲＤ／ＳＰ「９」の立ち下がりのタイミングにおいて、読み出された画素データの値「１４０」がレジスタ回路３１に記憶される。
【００４９】
この場合には、インバータ回路３５〜８５からローレベルの信号がＡＮＤ回路４４〜９４に入力される。したがって、ＡＮＤ回路４４〜９４からローレベルの選択信号がスイッチ回路３３〜９３の制御端子ｃに与えられ、レジスタ回路４１〜９１の入力端子Ｄ４〜Ｄ９には、それぞれ前段のレジスタ回路３１〜８１に記憶された画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が供給される。また、ＯＲ回路２７からハイレベルの信号がＯＲ回路３７に入力され、ＯＲ回路４７〜９７には前段のＯＲ回路３７〜８７からハイレベルの信号が入力される。したがって、ＯＲ回路４７〜９７からハイレベルの信号がＡＮＤ回路３６〜９６に入力されるので、レジスタ回路４１〜９１へのシフト信号が有効になる。この結果、レジスタ回路４１〜９１には画素データの値「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。
【００５０】
したがって、この場合には、図５（Ｂ）に示すように、図１のレジスタブロックＢＬ（１）〜（９）に、画素データの値「２５０」、「１５０」、「１３０」、「１２０」、「１１０」、「１００」、「９０」、「８０」が記憶される。すなわち、ノイズ低減の対象となる指定の画素データと、指定の画素データに隣接する周囲の８個の画素データからなる９個の画素データが、値の大きい順序で図１のメディアンフィルタ回路２００に記憶される。したがって、レジスタブロックＢＬ（５）のレジスタ回路、すなわち、図３に示すレジスタ回路５１に記憶されている画素データの値「１２０」が中央値になる。
【００５１】
また、図６のＲＤ／ＳＰ「９」の立ち下がりのタイミングで、書込イネーブル信号ＷＥがハイレベルとなり、図１の画像メモリ回路１００へのデータ書き込みが可能になる。このときには、画像メモリ回路１００へのアドレス信号ＡＤは、ノイズ低減の対象となる指定の画素データを指定する。また、同時に、読出イネーブル信号がローレベルとなり、画像メモリ回路１００からのデータ読み出しが禁止になるので、図６において、ＲＤ／ＳＰ「９」の次のＲＤ／ＳＰ「０」の立ち上がりでは、画素データは読み出されない。また、ＲＤ／ＳＰ「０」の立ち上がりと同じタイミングで書込信号ＷＰのパルスが立ち上がる。この結果、レジスタ回路５１に記憶されている画素データの中央値「１２０」によって、画像メモリ回路１００におけるノイズ低減の対象となる指定の画素データの値「２５０」を書き換える。そして、図６のＲＤ／ＳＰ「１」の立ち下がりのタイミングで、次の９個の画像データのうち最初の画素データが画像メモリ回路１００から読み出されて、ＲＤ／ＳＰ「１」の立ち下がりのタイミングのシフト信号の前に、クリア信号ＣＬが入力されるので、メディアンフィルタ回路２００の全てのレジスタ回路１１〜９１に記憶された画素データがクリアされる。
【００５２】
このように、上記第１実施形態によれば、ノイズ低減の対象である指定の画素データと、周囲の８個の画素データからなる９個の画素データを画像メモリ回路１００から読み出して、ＲＤ／ＳＰのタイミングに同期して、メディアンフィルタ回路２００に記憶したときには、自動的にそれらの中央値が決定され、その中央値によって、ノイズ低減の対象である指定の画素データの値が書き換えられる。すなわち、９個の画素データを読み出すだけで、他のいかなるデータ処理も必要とすることなく、指定の画素データのノイズを低減をするためのデータ比較処理を大幅に高速化できる。
【００５３】
なお、上記第１実施形態においては、９個の画素データを値が大きい順にレジスタ回路１１〜レジスタ回路９１に記憶する構成にしたが、９個の画素データを値が小さい順にレジスタ回路１１〜レジスタ回路９１に記憶する構成にしてもよい。この場合は、読み出された画素データＤｉｎの値がシフトレジスタ回路に記憶された画素データの値より小さいときに、比較回路１２〜９２からハイレベルの比較信号を出力するように回路を構成するだけでよい。
【００５４】
また、ノイズ低減の対象である指定の画素データが２次元画像の端にある場合には、隣接する周囲の画素データが８個に達しない。例えば、図５（Ａ）の９個の画素データが２次元画面の隅にある場合に、指定の画素データが「１００」の位置であるときは、周囲の画素データは、値が「１１０」、「２５０」、「９０」の３個の画素データである。この場合には、残りの５個の画素データとして、値が「１１０」、「２５０」、「９０」の３個の画素データを重複して使用し、全部で９個の画素データによって中央値を決定する。
【００５５】
次に、第２実施形態のデータ比較処理回路について、図７および図８を参照して説明する。
図７および図８は、入力されるデータを最大値から順にｎ個記憶するデータ比較処理回路である。記憶されるデータは複数ビット、例えば、４、８、１２、１６、３２ビットであるが、データの種類は問わない。第１実施形態のような画素データだけでなく、オーディオデータ、測定データ、データベースシステムで処理する検索データなど、様々な種類のデータを処理することが可能である。なお、第２実施形態の基本的な構成は、第１実施形態におけるメディアンフィルタ回路２００とほぼ同じであるので、同一の回路部分については、第１実施形態と同じ符号で表すとともに、第１実施形態と重複する説明はなるべく省略し、第１実施形態と異なる構成について説明する。
【００５６】
第１実施形態のデータ比較処理回路のメディアンフィルタ回路２００は９個のレジスタブロックＢＬ（１）〜ＢＬ（９）で構成されていたが、第２実施形態のデータ比較処理回路は、ｎ個（ｎは、２以上の整数）のレジスタブロックＢＬ（１）〜ＢＬ（ｎ）で構成されている。第１実施形態におけるレジスタブロックＢＬ（１）およびＢＬ（２）は、第２実施形態におけるレジスタブロックＢＬ（１）およびＢＬ（２）に対応している。また、図７において、点線の枠は、レジスタブロックＢＬ（３）ないしＢＬ（ｎ−１）であり、省略した内部回路はレジスタブロックＢＬ（２）と同一である。図８は、レジスタブロックＢＬ（ｎ）の内部回路である。
【００５７】
図７のレジスタブロックＢＬ（１）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（１）の内部回路との相違は、ＡＮＤ回路１８が追加されていることと、レジスタ回路１１のＱ１が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路１８にＡＮＤ回路２０１の出力が接続されていることである。また、図７のレジスタブロックＢＬ（２）の内部回路と、第１実施形態におけるレジスタブロックＢＬ（２）の内部回路との相違は、ＡＮＤ回路２８が追加されていることと、レジスタ回路１１のＱ２が外部から読み出せる構成になっていることである。さらに、ＡＮＤ回路２０２の出力がＡＮＤ回路２８に接続されていることである。なお、図８のレジスタブロック（ｎ）において、レジスタ回路ｎ１、比較回路ｎ２、スイッチ回路ｎ３、ＡＮＤ回路ｎ４、ｎ６、ｎ８、インバータ回路ｎ５、ＯＲ回路ｎ７については、それぞれ、レジスタブロックＢＬ（２）のレジスタ回路２１、比較回路２２、スイッチ回路２３、ＡＮＤ回路２４、２６、２８、インバータ回路２５、ＯＲ回路２７に対応している。さらに、レジスタブロック（ｎ）には、スイッチ回路ｎ９およびレジスタ回路ｎ１０が設けられている。
【００５８】
次に、図７および図８の回路の機能について説明する。
図７のレジスタブロックＢＬ（１）において、ＡＮＤ回路２０１に接続されている信号ラインＬ（ｎ−１）にローレベルの信号が入力されたときは、ＡＮＤ回路２０１からローレベルの信号がＡＮＤ回路１８に入力され、ＡＮＤ回路１８の出力がローレベルになる。したがって、比較回路１２から出力される比較信号に拘わらず、ＡＮＤ回路１６にローレベルの信号が入力され、レジスタ回路１１へのシフト信号が無効になる。その結果、レジスタ回路１１は入力データＤｉｎを記憶しない。すなわち、入力されるデータを最大値から順に（ｎ−１）個記憶するデータ比較処理回路が構成される。この場合には、（ｎ−１）個のデータが、値が大きい順にレジスタブロックＢＬ（２）〜（ｎ）に記憶される。
【００５９】
また、ＡＮＤ回路２０２に接続されている信号ラインＬ（ｎ−２）にローレベルの信号が入力されたときは、ＡＮＤ回路２０２からローレベルの信号がＡＮＤ回路２８に入力され、ＡＮＤ回路２８の出力がローレベルになる。したがって、比較回路２２から出力される比較信号に拘わらず、ＯＲ回路２７にローレベルの信号が入力される。また、ＡＮＤ回路２０２からローレベルの信号がＡＮＤ回路２０１に入力されるので、比較回路１２から出力される比較信号に拘わらず、ＡＮＤ回路１６にローレベルの信号が入力され、レジスタ回路１１へのシフト信号が無効になる。さらに、ＯＲ回路２７にもローレベルの信号が入力されるので、ＯＲ回路２７からローレベルの信号がＡＮＤ回路２６に入力され、レジスタ回路２１へのシフト信号が無効になる。その結果、レジスタ回路１１、２１は入力データＤｉｎを記憶しない。すなわち、入力されるデータを最大値から順に（ｎ−２）個記憶するデータ比較処理回路が構成される。この場合には、（ｎ−２）個のデータが、値が大きい順にレジスタブロックＢＬ（３）〜（ｎ）に記憶される。
【００６０】
このように、（ｎ−１）個のＡＮＤ回路２０１〜２０４のうち、任意のＡＮＤ回路の信号ラインにローレベルの信号が入力されると、そのＡＮＤ回路の出力に接続されているレジスタブロックを含む前段のレジスタ回路へのシフトシフト信号が無効になり、入力データＤｉｎを記憶しない。その結果、残りのレジスタブロックに値が大きい順にデータが記憶される。
【００６１】
図８のレジスタブロックＢＬ（１）〜（ｎ）において、Ｌ（ｎ−１）〜Ｌ（０）の信号ラインの全てにローレベルの信号が入力されない場合には、このデータ比較処理回路に記憶されたデータの中で、最も小さい値のデータがレジスタ回路ｎ１に記憶され、それ以下の値の入力データＤｉｎは、全てレジスタ回路ｎ１０を介して外部に出力される。一方、Ｌ（０）の信号ラインにローレベルの信号が入力されると、ＡＮＤ回路ｎ８にローレベルの信号が入力され、ＡＮＤ回路ｎ８の出力がローレベルになる。したがって、比較回路ｎ２から出力される比較信号に拘わらず、ＯＲ回路ｎ７にローレベルの信号が入力される。この場合には、全てのレジスタブロックＢＬ（１）〜（ｎ）へのシフト信号が無効になる。また、レジスタブロックＢＬ（ｎ）のインバータ回路ん５からハイレベルの信号がスイッチ回路ｎ９の制御端子ｃに入力される。その結果、スイッチ回路ｎ９の入力端子ａに供給される入力データＤｉｎが全てレジスタ回路ｎ１０を介して外部に出力される。すなわち、この場合には、入力されたデータはこのデータ比較処理回路をスルーすることになる。
【００６２】
図７および図８のデータ比較処理回路に示したように、各段のレジスタ回路１１〜ｎ１において、Ｑ１〜Ｑｎに記憶されたデータは、外部から読み出すことができる。したがって、このデータ比較処理回路へのデータ入力が終了したときは、ｎ個のデータが値の大きい順位で記憶されている。したがって、任意の順位のデータを容易に読み出すことができる。例えば、２５個のデータが記憶されている場合に、中央値である１３順位のデータを読み出すことができる。
【００６３】
なお、上記第２実施形態においては、ｎ個のデータを値が大きい順にレジスタ回路１１〜レジスタ回路ｎ１に記憶する構成にしたが、ｎ個のデータを値が小さい順にレジスタ回路１１〜レジスタ回路ｎ１に記憶する構成にしてもよい。この場合は、読み出された画素データＤｉｎの値がシフトレジスタ回路に記憶されたデータの値より小さいときに、比較回路１２〜ｎ２からハイレベルの比較信号を出力するように回路を構成するだけでよい。
【００６４】
次に、第３実施形態のデータ比較処理回路について、図９を参照して説明する。
図９は、入力される２系統の４ビットのデータＡおよびＢの大小を比較する４ビットコンパレータ回路３００である。図９において、排他的論理和であるＥＸＯＲ回路１、１１、２１、３１は、信号ａ０、ａ１、ａ２、ａ３からなるデータＡ、および、信号ｂ０、ｂ１、ｂ２、ｂ３からなるデータＢが入力される。この場合において、ａ３およびｂ３は最上位ビット（ＭＳＢ）であり、ａ０およびｂ０は最下位ビット（ＬＳＢ）である。ＥＸＯＲ回路１、１１、２１、３１の出力は、３ＮＡＮＤ回路２、１２、２２、３２の第１の入力に接続されている。また、信号ａ０、ａ１、ａ２、ａ３は、それぞれ３ＮＡＮＤ回路２、１２、２２、３２の第２の入力に与えられる。インバータ回路３、１３、２３、３３は、ＥＸＯＲ回路１、１１、２１、３１から出力される信号を反転して、ＡＮＤ回路４、１４、２４、３４の第２の入力に与える。ハイレベルの端子ｄは３ＮＡＮＤ回路３２の第３の入力およびＡＮＤ回路３４の第１の入力に接続されている。ＡＮＤ回路３４の出力は、３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に接続されている。ＡＮＤ回路２４の出力は、３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に接続されている。ＡＮＤ回路１４の出力は、３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路２の第１の入力に接続されている。ＡＮＤ回路４の出力は端子ｅに接続されている。
【００６５】
３ＮＡＮＤ回路２、１２、２２、３２の出力はオープンコレクタであり、出力端子ｃに接続されている。端子ｆに接続されたインバータ回路４１の出力もオープンコレクタであり、出力端子ｃに接続されている。すなわち、３ＮＡＮＤ回路２、１２、２２、３２の出力、および、インバータ回路４１の出力は、出力端子ｃに接続されるプルアップ抵抗（図示せず）によって、負論理をアクティブとするワイヤードＯＲ回路を構成する。したがって、３ＮＡＮＤ回路２、１２、２２、３２、および、インバータ回路４１のうち、いずれかの出力がローレベルになると、プルアップ抵抗を介して、そのローレベルの出力に電流が流れ込む。ただし、インバータ回路４１の入力は抵抗Ｒ２によってプルダウンされているので、端子ｆにハイレベルの信号が入力されない限り、インバータ回路４１の出力は常にハイレベルになっている。
【００６６】
端子ｄは、カスケード接続される上位の４ビットコンパレータ回路に接続することができる。また、端子ｅは、カスケード接続される下位の４ビットコンパレータ回路に接続することができる。いま、上位および下位の４ビットコンパレータ回路とカスケードされていない場合を想定する。この場合には、プルアップされた抵抗Ｒ１によって、３ＮＡＮＤ回路３２の第３の入力およびＡＮＤ回路３４の第１の入力はハイレベルになっている。
【００６７】
以下、入力されるデータＡ（信号ａ０、ａ１、ａ２、ａ３）およびデータＢ（信号ｂ０、ｂ１、ｂ２、ｂ３）の各ビットの状態に応じて、図９のデータ比較処理回路である４ビットコンパレータ回路の動作を説明する。
【００６８】
信号ａ３がハイレベル、信号ｂ３がローレベルの場合には、ＥＸＯＲ回路３１からハイレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。このとき、３ＮＡＤ回路３２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路３２はインバータ回路として機能し、ハイレベルのａ３が３ＮＡＮＤ回路３２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からローレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からローレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第２の入力に与えられる。このため、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このためさらに、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。さらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、ＥＸＯＲ回路１、１１、２１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２、２２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路３２の出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理の出力は最上位ビットのａ３がｂ３よりも大きいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１、ａ２およびｂ２の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００６９】
信号ａ３がローレベル、信号ｂ３がハイレベルの場合には、ＥＸＯＲ回路３１からハイレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。このとき、３ＮＡＤ回路３２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路３２はインバータ回路として機能し、ローレベルのａ３が３ＮＡＮＤ回路３２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からローレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からローレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。このため、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１、２１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２、２２の第３の入力に与えられたローレベルの信号によって、３ＮＡＮＤ回路２、１２、２２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は最上位ビットのａ３がｂ３よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１、ａ２およびｂ２の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７０】
信号ａ３と信号ｂ３とが同じレベルの場合には、ＥＸＯＲ回路３１からローレベルの信号が３ＮＡＮＤ回路３２の第１の入力に与えられる。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられ、ＡＮＤ回路３４からハイレベルの信号が３ＮＡＮＤ回路２２の第３の入力およびＡＮＤ回路２４の第１の入力に与えられる。
この場合において、信号ａ２がハイレベル、信号ｂ２がローレベルの場合には、ＥＸＯＲ回路２１からハイレベルの信号が３ＮＡＮＤ回路２２の第１の入力に与えられる。このとき、３ＮＡＤ回路２２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２２はインバータ回路として機能し、ハイレベルのａ２が３ＮＡＮＤ回路２２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路２２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも大きいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７１】
信号ａ３と信号ｂ３とが同じレベルの場合において、信号ａ２がローレベル、信号ｂ２がハイレベルの場合には、ＥＸＯＲ回路２１からハイレベルの信号が３ＮＡＮＤ回路２２の第１の入力に与えられる。このとき、３ＮＡＤ回路２２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２２はインバータ回路として機能し、ローレベルのａ２が３ＮＡＮＤ回路２２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路２２から出力される。また、インバータ回路２３からローレベルの信号がＡＮＤ回路２４の第２の入力に与えられ、ＡＮＤ回路２４からローレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。このため、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このためさらに、ＡＮＤ４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１、１１の出力のレベルに関係なく、３ＮＡＮＤ回路２、１２の出力はハイレベルになる。すなわち、すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベルで、且つ、ａ２がｂ２よりも小さいために生じたので、他の下位ビットａ０およびｂ０、ａ１およびｂ１の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７２】
信号ａ３と信号ｂ３とが同じレベル、および、信号ａ２と信号ｂ２とが同じレベルの場合には、ＥＸＯＲ回路３１、２１からローレベルの信号が３ＮＡＮＤ回路３２、２２の第１の入力に与えられる。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２および３ＮＡＮＤ回路２２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられているので、ＡＮＤ回路２４からハイレベルの信号が３ＮＡＮＤ回路１２の第３の入力およびＡＮＤ回路１４の第１の入力に与えられる。
この場合において、信号ａ１がハイレベル、信号ｂ１がローレベルの場合には、ＥＸＯＲ回路１１からハイレベルの信号が３ＮＡＮＤ回路１２の第１の入力に与えられる。このとき、３ＮＡＤ回路１２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ハイレベルのａ１が３ＮＡＮＤ回路１２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路１２から出力される。また、インバータ回路１３からローレベルの信号がＡＮＤ回路１４の第１の入力端子に入力され、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１の出力のレベルに関係なく、３ＮＡＮＤ回路２の出力はハイレベルになる。すなわち、３ＮＡＮＤ回路１２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベル、且つ、ａ２とｂ２とが同じレベルの場合に、ａ１がｂ１よりも大きいために生じたので、最下位のビットａ０およびｂ０の大小に関係なく、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７３】
信号ａ３と信号ｂ３とが同じレベル、および、信号ａ２と信号ｂ２とが同じレベルの場合において、信号ａ１がローレベル、信号ｂ１がハイレベルの場合には、ＥＸＯＲ回路１１からハイレベルの信号が３ＮＡＮＤ回路１２の第１の入力に与えられる。このとき、３ＮＡＤ回路１２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ローレベルのａ１が３ＮＡＮＤ回路１２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路１２から出力される。また、インバータ回路１３からローレベルの信号がＡＮＤ回路１４の第１の入力に与えられ、ＡＮＤ回路１４からローレベルの信号が３ＮＡＮＤ回路２の第３の入力およびＡＮＤ回路４の第１の入力に与えられる。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、下位ビットのＥＸＯＲ回路１の出力のレベルに関係なく、３ＮＡＮＤ回路２の出力はハイレベルになる。すなわち、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからハイレベルの信号が出力される。したがって、出力端子ｃからハイレベルの信号が出力される。このハイレベルの出力はａ３とｂ３とが同じレベル、および、ａ２とｂ２とが同じレベルで、且つ、ａ１がｂ１よりも小さいために生じたので、最下位のビットａ０およびｂ０の大小に関係なく、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７４】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、および、信号ａ１と信号ｂ１とが同じレベルの場合には、ＥＸＯＲ回路３１、２１、１１からローレベルの信号が３ＮＡＮＤ回路３２、２２、１２の第１の入力端子に入力される。したがって、ハイレベルの信号が３ＮＡＮＤ回路３２、２２、１２から出力される。また、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第１の入力端子に入力されるので、ＡＮＤ回路２４からハイレベルの信号が３ＮＡＮＤ回路１２の第３の入力端子およびＡＮＤ回路１４の第２の入力端子に入力される。
この場合において、信号ａ０がハイレベル、信号ｂ０がローレベルの場合には、ＥＸＯＲ回路１からハイレベルの信号が３ＮＡＮＤ回路２の第１の入力端子に入力される。このとき、３ＮＡＤ回路２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路１２はインバータ回路として機能し、ハイレベルのａ０が３ＮＡＮＤ回路１２で反転されて、負論理のローレベルの信号が３ＮＡＮＤ回路２から出力される。また、インバータ回路３からローレベルの信号がＡＮＤ回路４の第１の入力端子に入力され、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、３ＮＡＮＤ回路２からのローレベルの出力のみによって、出力端子ｃから負論理のローレベルの信号が出力される。この負論理のローレベルの出力はａ３とｂ３とが同じレベル、ａ２とｂ２とが同じレベル、および、ａ１とｂ１とが同じレベルで、且つ、ａ０がｂ０よりも大きいために生じたので、ＡのデータはＢのデータよりも大きい（Ａ＞Ｂ）ことになる。
【００７５】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、および、信号ａ１と信号ｂ１とが同じレベルの場合において、信号ａ０がローレベル、信号ｂ０がハイレベルの場合には、ＥＸＯＲ回路１からハイレベルの信号が３ＮＡＮＤ回路２の第１の入力に与えられる。このとき、３ＮＡＤ回路２の第３の入力はハイレベルであるので、３ＮＡＮＤ回路２はインバータ回路として機能し、ローレベルのａ０が３ＮＡＮＤ回路２で反転されて、ハイレベルの信号が３ＮＡＮＤ回路２から出力される。また、インバータ回路３からローレベルの信号がＡＮＤ回路４の第２の入力端子に入力される。このため、ＡＮＤ回路４からローレベルの信号が端子ｅから出力される。この結果、４個の３ＮＡＮＤ回路２、１２、２２、３２の出力が全てハイレベルとなり、出力端子ｃからはハイレベルの信号が出力される。このハイレベルの出力は、ａ３とｂ３とが同じレベル、ａ２とｂ２とが同じレベル、および、ａ１とｂ１とが同じレベルで、且つ、ａ０がｂ０よりも小さいために生じたので、ＡのデータはＢのデータよりも小さい（Ａ＜Ｂ）ことになる。
【００７６】
信号ａ３と信号ｂ３とが同じレベル、信号ａ２と信号ｂ２とが同じレベル、信号ａ１と信号ｂ１とが同じレベル、および、信号ａ０と信号ｂ０とが同じレベルの場合には、ＥＸＯＲ回路３１、２１、１１、１からローレベルの信号が３ＮＡＮＤ回路３２、２２、１２、２の第１の入力端子に入力される。したがって、ハイレベルの信号が全ての３ＮＡＮＤ回路３２、２２、１２、２から出力される。この場合には、インバータ回路３３からハイレベルの信号がＡＮＤ回路３４の第２の入力に与えられる。このとき、ＡＮＤ回路３４の第１の入力はハイレベルであるので、ＡＮＤ回路３４からハイレベルの信号がＡＮＤ回路２４の第１の入力に与えられる。また、インバータ回路２３からハイレベルの信号がＡＮＤ回路２４の第２の入力に与えられる。したがって、ＡＮＤ回路２４からハイレベルの信号がＡＮＤ回路１４の第１の入力に与えられる。また、インバータ回路１３からハイレベルの信号がＡＮＤ回路１４の第２の入力に与えられる。したがって、ＡＮＤ回路１４からハイレベルの信号がＡＮＤ回路４の第１の入力に与えられる。また、インバータ回路３からハイレベルの信号がＡＮＤ回路４の第２の入力に与えられる。したがって、ＡＮＤ回路４からハイレベルの信号が端子ｅから出力される。
【００７７】
このように、図９の４ビットコンパレータ回路３００においては、２系統の４ビットのデータＡとデータＢとを比較し、Ａの値がＢの値より大きい（Ａ＞Ｂ）場合には、負論理のローレベルの信号を出力し、Ａの値がＢの値以下（Ａ≦Ｂ）の場合には、ハイレベルの信号を出力する。また、Ａの値とＢの値とが異なる（Ａ＞Ｂ又はＡ＜Ｂ）場合には、端子ｅからローレベルの信号を出力し、Ａの値とＢの値とが同じ場合、すなわち、信号ａ０、ａ１、ａ２、ａ３、および、信号ｂ０、ｂ１、ｂ２、ｂ３の各ビットの値が同じ場合には、端子ｅからハイレベルの信号を出力する。すなわち、出力端子ｃおよび端子ｅとデータＡおよびデータＢとの関係を「１」、「０」で表すと下記のようになる。
ｃ＝０（Ａ＞Ｂ），１（Ａ≦Ｂ）
ｅ＝０（Ａ≠Ｂ），１（Ａ＝Ｂ）
したがって、端子ｅのレベルによって、ｃ＝１（Ａ≦Ｂ）の中から（Ａ＜Ｂ）と（Ａ＝Ｂ）とを判別することができる。
【００７８】
いま、端子ｅと端子ｆとを接続した場合には、端子ｅからハイレベルの信号がインバータ回路４１に入力される。この結果、インバータ回路４１から負論理のローレベルの信号が出力される。したがって、下記の関係が得られる。
ｃ＝０（Ａ≧Ｂ），１（Ａ＜Ｂ）
ｅ＝０（Ａ≠Ｂ），１（Ａ＝Ｂ）
この場合も、端子ｅのレベルによって、ｃ＝０（Ａ≧Ｂ）の中から（Ａ＞Ｂ）と（Ａ＝Ｂ）とを判別することができる。
【００７９】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路によれば、集積回路によって４ビットに比較回路を実現した場合に、従来の４ビットコンパレータ回路（例えば、ＴＴＬでは「７４Ｌ８５」、ＣＭＯＳでは「４０６３、４５８５」）と比べて、配線パターンを大幅に削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。さらに、上位４ビットの比較回路の比較結果を入力するための３ビットの入力パターン、および、下位４ビットの比較回路に比較結果を出力するための３ビットの出力パターンによっても、浮遊容量のためにデータが遅延するので、ますます高速なデータ処理は困難である。
【００８０】
次に、図９の４ビットコンパレータ回路をカスケードする場合について説明する。図１０は、上位、中位、下位の３個の４ビットコンパレータ回路３０２、３０１、３００をカスケード接続した、１２ビットコンパレータ回路のブロック図である。図に示すように、上位の回路３０２の端子ｅ２と中位の回路３０１の端子ｄ１とを接続し、中位の回路３０１の端子ｅ１と下位の回路３００の端子ｄ０とを接続する。また。各回路３０２、３０１、３００の出力端子ｃ２、ｃ１、ｃ０を接続し、プルアップ抵抗ＲＬを介して電源に接続する。すなわち、各回路３０２、３０１、３００の出力端子ｃ２、ｃ１、ｃ０が負論理のワイヤードＯＲになっている。上位の回路３０２には、４ビットのデータＡ２（ａ１１、ａ１０、ａ９、ａ８）および４ビットのデータＢ２（ｂ１１、ｂ１０、ｂ９、ｂ８）が入力される。中位の回路３０１には、４ビットのデータＡ１（ａ７、ａ６、ａ５、ａ４）および４ビットのデータＢ１（ｂ７、ｂ６、ｂ５、ｂ４）が入力される。下位の回路３００には、４ビットのデータＡ０（ａ３、ａ２、ａ１、ａ０）および４ビットのデータＢ０（ｂ３、ｂ２、ｂ１、ｂ０）が入力される。
【００８１】
次に、この１２ビットコンパレータ回路の動作について説明する。ただし、各回路３０２、３０１、３００の内部における動作は、図９に示した回路と同じであるので、説明を省略する。
【００８２】
上位の回路３０２のデータＡ２の値とデータＢ２の値とが比較され、上位の回路３０２のデータＡ２の値がデータＢ２の値より大きい（Ａ２＞Ｂ２）場合には、出力端子ｃ２から負論理のローレベルの信号が出力される。また、端子ｅ２からローレベルの信号が中位の回路３０１の端子ｄ１に与えられる。このため、中位の回路３０１においては、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８３】
上位の回路３０２のデータＡ２の値がデータＢ２の値以下（Ａ２≦Ｂ２）の場合には、出力端子ｃ２からハイレベルの信号が出力される。また、端子ｅ２からローレベルの信号が中位の回路３０１の端子ｄ１に与えられる。このため、中位の回路３０１においては、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８４】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合には、出力端子ｃ２からハイレベルの信号が出力される。また、端子ｅ２からハイレベルの信号が中位の回路３０１の端子ｄ１に与えられる。この場合には、中位の回路３０１においては、データＡ１の値とデータＢ１の値とが比較される。中位の回路３０１のデータＡ１の値がデータＢ１の値より大きい（Ａ１＞Ｂ１）場合には、出力端子ｃ１から負論理のローレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８５】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合において
、中位の回路３０１のデータＡ１の値がデータＢ１の値以下（Ａ１≦Ｂ１）の場合には、出力端子ｃ１からハイレベルの信号が出力される。また、端子ｅ１からローレベルの信号が下位の回路３００の端子ｄ０に与えられる。このため、下位の回路３００においては、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８６】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合で、且つ、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合には、出力端子ｃ２および出力ｃ１から共にハイレベルの信号が出力される。また、上位の回路３０２の端子ｅ２からハイレベルの信号が中位の回路３０１の端子ｄ１に与えられ、中位の回路３０１の端子ｅ１からハイレベルの信号が下位の回路３００の端子ｄ０に与えられる。この場合には、下位の回路３００においては、データＡ０の値とデータＢ０の値とが比較される。下位の回路３００のデータＡ０の値がデータＢ０の値より大きい（Ａ０＞Ｂ０）場合には、出力端子ｃ０から負論理のローレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８７】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合で、且つ、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合において、下位の回路３００のデータＡ０の値がデータＢ０の値以下（Ａ０≦Ｂ０）の場合には、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からローレベルの信号が出力される。
【００８８】
上位の回路３０２のデータＡ２の値とデータＢ２とが同じ（Ａ２＝Ｂ２）場合、中位の回路３０１のデータＡ１の値とデータＢ１とが同じ（Ａ１＝Ｂ１）場合、且つ、下位の回路３００のデータＡ０の値とデータＢ０とが同じ（Ａ０＝Ｂ０）場合には、出力端子ｃ０からハイレベルの信号が出力される。また、端子ｅ０からハイレベルの信号が出力される。
【００８９】
このように、図１０に示した上位、中位、下位の３個の４ビットコンパレータ回路３０２、３０１、３００をカスケード接続した場合には、各４ビットコンパレータ回路があたかも１ビットのコンパレータ回路のような動作になる。これは、上位の４ビットコンパレータ回路と下位の４ビットコンパレータ回路とが１ビットの情報によってカスケードされているからである。この情報は、上位のコンパレータ回路の比較データが異なっているか（ｅ＝０）又は一致しているか（ｅ＝１）を表している。したがって、カスケードするコンパレータ回路のビット数にかかわらず、２系統のパラレルデータを比較するコンパレータ回路をこの１ビットの情報（以下、ｅ信号という）のみによってカスケードする構成が可能となる。
【００９０】
図１１は、８ビットコンパレータ回路４００の構成を示している。図に示すように、カスケード接続する上位のコンパレータ回路からｅ信号を受けて、比較処理を実行し、下位のコンパレータ回路に対してｅ信号を出力する。
【００９１】
以上のように、この第３実施形態のデータ比較処理回路の４ビットコンパレータ回路、８ビットコンパレータ回路によれば、集積回路によって４ビット、８ビットの比較回路を実現した場合に、上位４ビット、上位８ビットの比較回路の比較結果を入力するためのビット数、および、下位４ビット、下位８ビットの比較回路に比較結果を出力するためのビット数が、それぞれ端子ｄおよび端子ｅの１ビットで構成することにより、従来の４ビットコンパレータ回路、８ビットコンパレータ回路と比べて、配線パターンを削減できるので、配線パターン間の浮遊容量を小さくしてデータの遅延を抑制することにより、高速なデータ処理が可能になる。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１実施形態におけるデータ比較処理回路の概略ブロック図である。
【図２】図１のデータ比較処理回路におけるメディアンフィルタ回路の回路図である。
【図３】図２に続くメディアンフィルタ回路の回路図である。
【図４】図３に続くメディアンフィルタ回路の回路図である。
【図５】図１のデータ比較処理回路によって処理される画素データの例を示す図である。
【図６】図１のデータ比較処理回路におけるデータ処理のタイミングチャートである。
【図７】本発明の第２実施形態におけるデータ比較処理回路の回路図である。
【図８】図７に続くデータ比較処理回路の回路図である。
【図９】本発明の第３実施形態におけるデータ比較処理回路である４ビットコンパレータ回路の回路図である。
【図１０】図９の４ビットコンパレータ回路をカスケード接続した概略ブロック図である。
【図１１】本発明の第３実施形態における８ビットコンパレータ回路の回路図である。
【符号の説明】
【００９３】
１００  画像メモリ回路
２００  メディアンフィルタ回路
３００、３０１、３０２  ４ビットコンパレータ回路
４００  ８ビットコンパレータ回路
【手続補正書】
【提出日】平成19年4月6日(2007.4.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
それぞれ１個のデータを記憶できる所定数の記憶回路と、
各記憶回路に対応して設けられ、順に読み出された１個のデータの値と前記所定数の記憶回路の各々にそのとき記憶されているデータの値とを比較する所定数の比較回路と、
各比較回路の比較結果に基づいて、読み出されたデータを値の昇順又は降順に記憶するための１個の記憶回路を指定する記憶制御回路と、
読み出された所定数のデータが、前記記憶制御回路の指定に基づいて、値の昇順又は降順に前記所定数の記憶回路に記憶された場合には、任意の記憶回路を指定する指定信号が入力されたときに、当該任意の記憶回路に記憶されたデータを読み出す読出制御回路と、
を備えたことを特徴とするデータ比較処理回路。
【請求項２】
前記各比較回路は、上位のビットの比較回路から下位のビットの比較回路に情報を伝達する伝送路の系統と、比較すべき第１のデジタルデータおよび第２のデジタルデータのビット値に応じて情報を出力する伝送路の系統とが分離していることを特徴とする請求項１に記載のデータ処理回路。
【請求項３】
前記各比較回路は、
入力された１ビットの第１のデジタルデータおよび第２のデジタルデータのビット値が一致する場合は一致信号を発生し、当該ビット値が不一致の場合は不一致信号を発生する入力回路と、
前記入力回路によって不一致信号が発生された場合、又は、上位のビット比較回路から不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、前記入力回路によって一致信号が発生され、且つ、上位のビット比較回路から一致信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送受信回路と、
前記入力回路によって不一致信号が発生され、且つ、前記送受信回路によって上位のビット比較回路から一致信号が受信された場合には、前記入力回路に入力されている第１のデジタルデータを出力する出力回路と、
を有することを特徴とする請求項２に記載のデータ処理回路。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
請求項１に記載のデータ処理回路は、それぞれ１個のデータを記憶できる所定数（実施形態においては、ｎ個に相当する）の記憶回路（実施形態においては、図７及び図８のレジスタ回路に相当する）と、各記憶回路に対応して設けられ、順に読み出された１個のデータの値と所定数の記憶回路の各々にそのとき記憶されているデータの値とを比較する所定数の比較回路（実施形態においては、図７及び図８の比較回路に相当する）と、各比較回路の比較結果に基づいて、読み出されたデータを値の昇順又は降順に記憶するための１個の記憶回路を指定する記憶制御回路（実施形態においては、図７及び図８のゲート回路に相当する）と、読み出された所定数のデータが、記憶制御回路の指定に基づいて、値の昇順又は降順に所定数の記憶回路に記憶された場合には、任意の記憶回路を指定する指定信号が入力されたときに、当該任意の記憶回路に記憶されたデータを読み出す読出制御回路（実施形態においては、電子回路に相当する）と、を備えたことを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
請求項１のデータ処理回路において、請求項２に記載の各比較回路は、上位のビットの比較回路から下位のビットの比較回路に情報を伝達する伝送路の系統（実施形態においては、図９及び図１１のＡＮＤ回路の入出力の縦方向の経路に相当する）と、比較すべき第１のデジタルデータおよび第２のデジタルデータのビット値に応じて情報を出力する伝送路の系統（実施形態においては、図９及び図１１のＥＸＯＲ回路から３ＮＡＮＤ回路に至る横方向の経路に相当する）とが分離していることを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
請求項２のデータ処理回路において、請求項３に記載の各比較回路は、入力された１ビットの第１のデジタルデータおよび第２のデジタルデータのビット値が一致する場合は一致信号を発生し、当該ビット値が不一致の場合は不一致信号を発生する入力回路（実施形態においては、図９及び図１１のＥＸＯＲ回路に相当する）と、入力回路によって不一致信号が発生された場合、又は、上位のビット比較回路から不一致信号が受信された場合には、下位のビット比較回路に対して不一致信号を送信し、入力回路によって一致信号が発生され、且つ、上位のビット比較回路から一致信号が受信された場合には、下位のビット比較回路に対して一致信号を送信する送受信回路（実施形態においては、図９及び図１１のＡＮＤ回路に相当する）と、入力回路によって不一致信号が発生され、且つ、送受信回路によって上位のビット比較回路から一致信号が受信された場合には、入力回路に入力されている第１のデジタルデータを出力する出力回路（実施形態においては、図９及び図１１の３ＮＡＮＤ回路に相当する）と、を有することを特徴とする。