(57)【要約】【課題】従来の画像処理専用ＬＳＩを利用した画像処理装置では、新たな機能の追加や変更に対応するには、機能が固定化されている画像処理専用ＬＳＩでは対応できないため、全てソフト処理で対応する他なかった。また、ユーザ毎の要望に個別対応する画像処理システムの構築は困難であった。【解決手段】追加／変更の機能に関する画像処理をプロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うＦＰＧＡを設け、ＦＰＧＡに渡す追加／変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるＦＲＯＭを含む不揮発性メモリーを設けたことを特徴とする。【選択図】  図１
2005025599.tif 000002
【特許請求の範囲】
【請求項１】
画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うとともに全般的な動作等の制御を司るプロセッサとを有し、
追加／変更の機能に関する画像処理を前記プロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うＦＰＧＡを設け、
前記ＦＰＧＡに渡す前記追加／変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるＦＲＯＭを含む不揮発性メモリーを設けたことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、
前記追加／変更の機能に関する画像処理プログラムを前記不揮発性メモリーに提供する制御コントローラを有することを特徴とする画像処理装置。
【請求項３】
請求項１または２記載の画像処理装置において、
前記ＦＰＧＡの内部に、前記画像処理プログラムに存在する複数の機能を識別する機能識別レジスタを有することを特徴とする画像処理装置。
【請求項４】
請求項１または２記載の画像処理装置において、
前記ＦＰＧＡに設けられる画像処理を行う画像演算部と、前記画像演算部で処理される前記画像データの入出力を制御するデータ制御部とが、分離されていることを特徴とする画像処理装置。
【請求項５】
請求項１から４に記載された何れか一つの画像処理装置において、
前記ＦＰＧＡを少なくとも２つ以上設けたことを特徴とする画像処理装置。
【請求項６】
請求項１から５に記載された何れか一つの画像処理装置において、
停電等で消滅した前記ＦＰＧＡの画像処理プログラムは、画像処理装置の稼動と同時に不揮発性メモリーより補充提供されることを特徴とする画像処理装置。
【請求項７】
画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うプロセッサとを有し、
追加／変更の機能に関する画像処理を前記プロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うＦＰＧＡを設け、
前記ＦＰＧＡに渡す前記追加／変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるＦＲＯＭを含む不揮発性メモリーを設け、
前記追加／変更の機能に関する画像処理プログラムを前記不揮発性メモリーに提供し、かつ全般的な動作等の制御を司る制御コントローラを有することを特徴とする画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理装置に関する。
【０００２】
【従来の技術】
画像処理システムはさまざまな分野で使用されており、ひとくちに画像処理といってもその用途により構成や処理内容は多種多様であるが、例えば半導体製作工程でのウエハの外観を検査する装置においては、半導体プロセスの微細化によりその処理性能への要求（微細化への対応・処理時間の高速化）が高まる一方である。
【０００３】
半導体検査装置に用いられる画像処理装置の一例を図６〜図８に示す。
【０００４】
図６で示されるように画像処理装置には、画像処理系への画像データの入出力を制御する機能と処理対象画像または処理後の画像データを格納するメモリー、画像処理を行うプロセッサから構成される。
【０００５】
図６の構成では画像処理はプロセッサを用いてのみ行う。即ちソフト処理として画像処理を行う例であり、図７は画像処理を並列化するためにプロセッサを複数個使用した場合の構成例である。
【０００６】
またプロセッサを用いた画像処理を高速化することを目的とし画像処理専用ＬＳＩ（画像処理アクセラレータ）を搭載した画像処理装置の例を図８に示す。図８の構成では、図６においてプロセッサを利用して実施していた画像処理内容を画像処理専用ＬＳＩを用いて部分的にハード処理して高速化を実現している。
【０００７】
一般的に画像処理専用ＬＳＩを用いた構成では、プロセッサによる画像処理に比べて高速化を図ることを目的としているが、プロセッサによる画像処理は画像処理内容の変更に容易に対応可能なのに対して、画像処理専用ＬＳＩを用いた場合はその処理内容が固定化されるため、画像処理内容の変更に対応できないという問題がある。
【０００８】
例えば、搭載している画像処理の内容の半数を専用ＬＳＩで処理し、残り半数をプロセッサで画像処理する装置がある。このような画像処理装置に新たな画像処理機能を追加する場合には、画像処理専用ＬＳＩは機能が固定化されており、新機能を実現するのは不可能なため、プロセッサを用いたソフト処理として画像処理機能を追加することになる。
【０００９】
このように画像処理専用ＬＳＩを用いた画像処理装置では、新規の画像処理機能を追加するには、全てソフト処理として追加することになり、新たな画像処理機能を画像処理専用ＬＳＩにて高速実施するには、画像処理専用ＬＳＩを作り変える必要がある。
【００１０】
また、同じ画像処理機能でも実現方法や仕様に変更が生じた場合、画像処理専用ＬＳＩで実現している画像処理機能は変更が不可能のため、このような場合はソフト処理として変更に対応しなければならない。
【００１１】
また、画像処理装置はユーザによって使われる機能や高速実施したい画像処理の内容が異なる場合がある。先に述べた例のように、搭載する画像処理機能をプロセッサで実施するものと、画像処理専用ＬＳＩを用いて処理するものとを切り分ける場合、画像処理機能をどちらで実現するかを画像処理装置の開発者が判断することになる。
【００１２】
これは、ある程度画像処理装置のユーザの要望を考慮して判断することになるが、全てのユーザが提供された画像処理装置に合致した仕様で使用するとは限らない。ユーザによっては提供された画像処理装置において、ソフト処理している内容の画像処理を画像処理専用ＬＳＩで実施し高速化を図りたい場合や、画像処理専用ＬＳＩで実施している画像処理装内容を必要としない場合など、画像処理装置に対する要望はユーザに依存してさまざまである。全てのユーザに合致するようカスタマイズして画像処理装置を構成するのは不可能である。
【００１３】
処理が固定化している画像処理専用ＬＳＩに代わりＦＰＧＡを利用して画像処理を実現する手法もある。ＦＰＧＡは処理機能を変更できるのが特徴であるが、ＦＰＧＡの処理機能は事前に処理機能データを格納するメモリーに書き込んでおく必要があるため、画像処理装置として利用する場合には、画像処理の機能が決まってしまうことになる。
【００１４】
特開２０００−９０２３７号公報（特許文献１）では、ＦＰＧＡに搭載する処理機能を書き換える方法が記載されているが、書き換えられる処理機能は予め決められたものを用意し、これらをある一定の画像処理シーケンスに従って書き換えるものである。
【００１５】
【特許文献１】
特開２０００−９０２３７号公報
【００１６】
【発明が解決しようとする課題】
これまで述べたように、画像処理装置はプロセッサを用いてソフト的に画像処理を実現する構成の場合と、画像処理専用ＬＳＩを用いて画像処理をプロセッサと画像処理専用ＬＳＩの両方を用いて実現する構成をとるものがある。
【００１７】
一般的には画像処理専用ＬＳＩを用いた構成の方が処理の高速化には有利である。しかし、画像処理専用ＬＳＩの内容は固定化されているため、新たな画像処理機能を追加する場合は、画像処理専用ＬＳＩでは実現できず、ソフト処理として追加せざるを得ない。画像処理専用ＬＳＩで実施している機能に変更が生じた場合には、変更部分をソフト処理で対応せざるを得なく、ユーザ毎の要望に合致した、カスタマイズした画像処理装置を実現することができない、などが課題となっている。
【００１８】
また、ＦＰＧＡを用いて画像処理を行う場合でも、ＦＰＧＡ自体は書換え可能なデバイスであるが、装置として使用する場合には事前に決められた処理機能を用意しておく必要があり、一旦装置として稼動した後から発生した処理機能の追加や変更には対応できない。
【００１９】
本発明は、上記の問題に対処し、ハードウエア的な処理により高速化された画像処理が行われ、しかも新たな処理機能の追加や処理の変更にも対応できるようにすることを目的とする。
【００２０】
【課題を解決するための手段】
本発明は、画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うとともに全般的な動作等の制御を司るプロセッサとを有し、追加／変更の機能に関する画像処理をプロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うＦＰＧＡを設け、ＦＰＧＡに渡す追加／変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるＦＲＯＭを含む不揮発性メモリーを設けたことを特徴とする。
【００２１】
【発明の実施の形態】
本発明の実施の形態に係わる実施例について図面を引用して説明する。
【００２２】
まず、図１に示す画像処理装置のブロック図に沿って述べる。
【００２３】
プロセッサ１は、ソフト的な画像処理を行う。メモリー２は、画像データやプログラムを格納する。プロセッサ１は、メモリー２からダウンロードしたプログラムのソフトウエアを用いて画像データの画像処理をソフト的に行う。プロセッサ１には、画像データ入出力制御部３を介して入力画像および出力画像の信号が出入りする。
【００２４】
画像処理専用のＦＰＧＡ４（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）は、追加／変更の機能に関する画像処理をプロセッサ１に代わって担う。ＦＰＧＡ４は、画像処理を専用ハードウエア的に処理する。ＦＰＧＡ４の作動は、プロセッサ１の指示により行われる。つまり、画像処理に関する画像処理系は、プロセッサ１、メモリー２、およびＦＰＧＡ４によって形成されるのである。
【００２５】
ＦＲＯＭ５（不揮発性メモリー）は、ＦＰＧＡに渡す追加／変更の機能に関する画像処理プログラムを記憶している。制御コントローラ６は、追加／変更の機能に関する画像処理プログラムをＦＲＯＭ５（不揮発性メモリー）に提供する。
【００２６】
制御コントローラ６、ＦＲＯＭ５、画像データ入出力制御部３、プロセッサ１、メモリー２、およびＦＰＧＡ４はデータバスを介して接続されている。
【００２７】
画像処理専用のＦＰＧＡ４（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）は、数百万ゲートという高集積なデバイスで、ＬＳＩと同様にハード的な処理を行うのでデータ量の多い画像処理を極めて迅速に処理できる。しかも、ＦＰＧＡは、内部論理の書換えが任意に可能であり、画像処理の追加／変更に対する要求に応じた画像処理プログラムの書換えにより、容易に対応できる。
【００２８】
わざわざ、仕様の追加／変更を満たす画像処理専用のＬＳＩを用意する必要がなく、追加／変更に関する画像処理プログラムを作るだけで対応できるので、仕様の追加／変更に費やす時間が大幅に短縮でき、ユーザの仕様変更に関する種々の要求に柔軟に迅速に応ずることができるのである。
【００２９】
またプロセッサを含む各種の電子部品が装着されているプリント基板に画像処理専用のＬＳＩを交換する必要もなくなったので、交換作業のわずらわしさもなくなった。もちろん、追加／変更に関する画像処理プログラムの入れ替え（書換え）がユーザ側においてもでき、ソフト的な変更対応であるので、ユーザ毎に異なる多様な要求に対しても個別にカスタマイズすることが可能となる。
【００３０】
追加／変更に関する画像処理プログラムの書き換えについて、図５の処理フローに沿って説明する。
【００３１】
ステップ▲１▼で制御コントローラからＦＲＯＭへの書き込み指示が行われ、ステップ▲２▼でＦＲＯＭに新しい機能データが書き込まれる。書き込が終了すると、ステップ▲３▼で画像処理系の動作が停止させられる。画像処理系の動作の停止中にステップ▲４▼で制御コントローラからＦＰＧＡにコンフィグレーション開始指示が行われる。それにともないステップ▲５▼でＦＲＯＭからＦＰＧＡに新しい機能データがダウンロードされる。これと入れ替わりに古い機能データは消去される。新しい機能データのダウンロードによる書き込み（記憶）が終了すると、ステップ▲６▼で画像処理系の動作開始が行われる。
【００３２】
このようにＦＰＧＡへの新しい機能データがダウンロード（書き込み）は、画像処理系の作動を一時的に止めなければ実行できない。新しい機能データをＦＲＯＭに格納する備えを予め済ませて置くことで、画像処理系の作動中断時間を最小限に抑えることができる。
【００３３】
また、新しい機能データの書き込み速いので、画像データ入出力制御部と画像処理系とで交わされる画像データの入出力中や、画像処理の実行待ち時間中に済ませることもできる。
【００３４】
ＦＰＧＡは、ＳＲＡＭ方式で構成されている。停電等で保持の電源が切れると、ＦＰＧＡに記憶されていた記憶内容は消滅する。そこで、ＦＰＧＡに記憶されていた記憶内容と同じデータをＦＲＯＭやＰＲＯＭ等の不揮発性メモリーに保存して置き、直ぐに不揮発性メモリーからＦＰＧＡに再書き込みができるようにしているのである。
【００３５】
また停電等に際し、画像処理装置の電源を再投入して稼動を再開するときには、稼動と同時に不揮発性メモリーに保存されているデータ（画像処理プログラム）をＦＰＧＡに再書き込みする補充提供が自動的に行われる。
【００３６】
このＦＰＧＡへの再書き込みは、画像処理装置が通常に稼動開始されるときにも行われる。これらの再書き込みは、制御コントローラから出される制御信号の指示で行われる仕組みが構築されている。
【００３７】
上述した図１の実施例では、画像処理を行うプロセッサ以外に、システム全体を制御する制御コントローラを実装した例を示しているが、この制御コントローラは画像処理系のプロセッサと兼用することも可能である。
【００３８】
図２は、画像処理専用のＦＰＧＡの搭載機能識別機能として、レジスタの構成例を示している。
【００３９】
これまで述べたように画像処理専用のＦＰＧＡの内部機能を任意のタイミングで変更可能となることは、同じ画像処理専用のＦＰＧＡに搭載する機能が一意的ではなく複数存在することを意味する。このため、画像処理専用のＦＰＧＡにはどの機能が搭載されているかを識別する機能が必要となる。
【００４０】
これは、ユーザ毎に異なった機能を提供した場合や、いくつかの処理機能を組み合わせて画像処理専用ＦＰＧＡに搭載した場合の、搭載した機能を確認する場合にも有効である。図３では機能毎のビット配列による識別例を示しているが、搭載機能をバージョン番号として管理し、その値を識別機能として使用することも可能である。
【００４１】
図３は画像処理専用のＦＰＧＡの内部を、画像処理そのものを実施する演算部分と、ＦＰＧＡ外部との画像データの入出力を制御するデータ制御部とを論理的に分離させた例を示す。
【００４２】
画像処理専用のＦＰＧＡが処理を行うには、何らかの形で処理対象画像を取り込み、処理結果を出力するという機能が不可欠である。
【００４３】
例えば、画像処理専用ＦＰＧＡには専用の画像メモリーが付随し、画像処理専用のＦＰＧＡの入出力画像はこの画像メモリーから入出力する構成の場合、画像処理専用のＦＰＧＡには、この画像メモリーとの間で画像データのやり取りを制御するデータ制御機能が必要となる。
【００４４】
世の中にはさまざまなタイプのメモリーが存在するが、画像メモリーとしてその役割を果たすものは、ＳＲＡＭやＳＤＲＡＭなどの比較的容量の大きいものが対象となることが多い。これらの外部メモリーとのデータ制御機能は、画像処理専用のＦＰＧＡを適用する周辺のシステム構成により一意的に決まるものであり、前に述べた画像処理機能のように同一システムにおいて変更するものではない。
【００４５】
従って、画像処理専用のＦＰＧＡでは、画像処理を行う機能部分と画像データの入出力を制御する機能部分とを分離してもたせると、異なる機能を実装する画像処理専用のＦＰＧＡにおいても、画像メモリーが同一のものであれば、共通のデータ制御部を利用することが可能となる。また、画像処理機能を変更する場合には、データ制御部は同一のものを利用し、画像処理機能のみを変更することで対応できる。
【００４６】
また、データ制御部は、一般的に広く利用されている画像メモリータイプに対応できるようにいくつかの動作バリエーションを用意し、必要に応じて選択可能とすることにより、画像処理専用のＦＰＧＡの汎用性が高まり、異なるシステムにおいても同じ画像処理専用のＦＰＧＡを流用することが可能となる。
【００４７】
図４は、他の実施例に係わるものである。これまで述べた実施例の構成を持つ画像処理専用のＦＰＧＡを複数使用した場合の構成例を示す。
【００４８】
高速性が要求される画像処理装置では、複数個の画像処理専用プロセッサを搭載し、画像処理を個々のプロセッサに分割して並列処理することにより、高速画像処理を実現するものがある。
【００４９】
これまで述べた画像処理専用のＦＰＧＡが、従来ソフト処理による画像処理を高速化したものである場合は、複数個のプロセッサにより高速化実現している画像処理装置にも、それぞれのプロセッサに画像処理専用のＦＰＧＡをもたせると更なる処理の高速化が図れる。このような構成では、処理対象となる画像を分割し各々のプロセッサに同一の処理を分担させることとなる。
【００５０】
さらに前述の通り、各画像処理専用のＦＰＧＡは用途に応じてそれぞれ異なった機能を実装することが可能となるため、各プロセッサと画像処理専用のＦＰＧＡに異なった処理を同時または、順次実施させることが可能となる。
【００５１】
【発明の効果】
本発明により、これまでＬＳＩにより実現されており固定化されていた画像処理機能が、システム構築後においても機能の変更や追加に対応可能となった。
【００５２】
また、同一の画像処理専用ＦＰＧＡにおいても、異なった機能を実装できるため、同一のシステムにおいても、必要な時に必要な機能をプログラマブルに画像処理専用ＦＰＧＡに実装させることが可能となった。
【００５３】
さらに、ユーザ毎にカスタマイズした画像処理装置の実現が可能となる。
【図面の簡単な説明】
【図１】本発明の実施例を示す画像処理装置のブロック図。
【図２】本発明の実施例に係わるもので、レジスタの構成を示す図。
【図３】本発明の実施例に係わるもので、ＦＰＧＡの内部機能構成を示す図。
【図４】本発明の他の実施例に係わるもので、画像処理装置のブロック図。
【図５】図１のブロック図に基づく処理フローを示す図。
【図６】従来例の画像処理装置を示すブロック図。
【図７】従来例の画像処理装置を示すブロック図。
【図８】従来例の画像処理装置を示すブロック図。
【符号の説明】
１…プロセッサ、２…メモリー、３…画像データ入出力制御部、４…ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、５…ＦＲＯＭ（不揮発性メモリー）、６…制御コントローラ。
【図１】
2005025599.tif 000003
【図２】
2005025599.tif 000004
【図３】
2005025599.tif 000005
【図４】
2005025599.tif 000006
【図５】
2005025599.tif 000007
【図６】
2005025599.tif 000008
【図７】
2005025599.tif 000009
【図８】
2005025599.tif 000010