JP2005025599A - Image processor - Google Patents

Image processor Download PDF

Info

Publication number
JP2005025599A
JP2005025599A JP2003191915A JP2003191915A JP2005025599A JP 2005025599 A JP2005025599 A JP 2005025599A JP 2003191915 A JP2003191915 A JP 2003191915A JP 2003191915 A JP2003191915 A JP 2003191915A JP 2005025599 A JP2005025599 A JP 2005025599A
Authority
JP
Japan
Prior art keywords
image processing
fpga
processor
function
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003191915A
Other languages
Japanese (ja)
Inventor
Takako Fujisawa
貴子 藤沢
Masaji Wada
正司 和田
Atsushi Ichige
敦 市毛
Koji Ikeda
光二 池田
Yasutaka Toyoda
康隆 豊田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi High Tech Corp
Original Assignee
Hitachi High Technologies Corp
Hitachi High Tech Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi High Technologies Corp, Hitachi High Tech Corp filed Critical Hitachi High Technologies Corp
Priority to JP2003191915A priority Critical patent/JP2005025599A/en
Publication of JP2005025599A publication Critical patent/JP2005025599A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To solve the problem that it is impossible for an LSI exclusive for image processing whose function is fixed to facilitate countermeasures to the addition or change of a new function in a conventional image processor using the LSI exclusive for image processing, and there is no choice but to facilitate countermeasures with software processing, and that it is difficult to construct any image processing system to individually facilitate countermeasures to the request of each user. <P>SOLUTION: This image processor is provided with an FPGA which performs image processing associated with adding/changing functions instead of a processor, and performs exclusive hardware-like processing to be operated in response to an instruction from the processor. This image processor is also provided with a non-volatile memory including an FROM in which an image processing program associated with the adding/changing functions to be transferred to the FPGA is stored, and the rewriting of records is made arbitrarily available. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は画像処理装置に関する。
【0002】
【従来の技術】
画像処理システムはさまざまな分野で使用されており、ひとくちに画像処理といってもその用途により構成や処理内容は多種多様であるが、例えば半導体製作工程でのウエハの外観を検査する装置においては、半導体プロセスの微細化によりその処理性能への要求(微細化への対応・処理時間の高速化)が高まる一方である。
【0003】
半導体検査装置に用いられる画像処理装置の一例を図6〜図8に示す。
【0004】
図6で示されるように画像処理装置には、画像処理系への画像データの入出力を制御する機能と処理対象画像または処理後の画像データを格納するメモリー、画像処理を行うプロセッサから構成される。
【0005】
図6の構成では画像処理はプロセッサを用いてのみ行う。即ちソフト処理として画像処理を行う例であり、図7は画像処理を並列化するためにプロセッサを複数個使用した場合の構成例である。
【0006】
またプロセッサを用いた画像処理を高速化することを目的とし画像処理専用LSI(画像処理アクセラレータ)を搭載した画像処理装置の例を図8に示す。図8の構成では、図6においてプロセッサを利用して実施していた画像処理内容を画像処理専用LSIを用いて部分的にハード処理して高速化を実現している。
【0007】
一般的に画像処理専用LSIを用いた構成では、プロセッサによる画像処理に比べて高速化を図ることを目的としているが、プロセッサによる画像処理は画像処理内容の変更に容易に対応可能なのに対して、画像処理専用LSIを用いた場合はその処理内容が固定化されるため、画像処理内容の変更に対応できないという問題がある。
【0008】
例えば、搭載している画像処理の内容の半数を専用LSIで処理し、残り半数をプロセッサで画像処理する装置がある。このような画像処理装置に新たな画像処理機能を追加する場合には、画像処理専用LSIは機能が固定化されており、新機能を実現するのは不可能なため、プロセッサを用いたソフト処理として画像処理機能を追加することになる。
【0009】
このように画像処理専用LSIを用いた画像処理装置では、新規の画像処理機能を追加するには、全てソフト処理として追加することになり、新たな画像処理機能を画像処理専用LSIにて高速実施するには、画像処理専用LSIを作り変える必要がある。
【0010】
また、同じ画像処理機能でも実現方法や仕様に変更が生じた場合、画像処理専用LSIで実現している画像処理機能は変更が不可能のため、このような場合はソフト処理として変更に対応しなければならない。
【0011】
また、画像処理装置はユーザによって使われる機能や高速実施したい画像処理の内容が異なる場合がある。先に述べた例のように、搭載する画像処理機能をプロセッサで実施するものと、画像処理専用LSIを用いて処理するものとを切り分ける場合、画像処理機能をどちらで実現するかを画像処理装置の開発者が判断することになる。
【0012】
これは、ある程度画像処理装置のユーザの要望を考慮して判断することになるが、全てのユーザが提供された画像処理装置に合致した仕様で使用するとは限らない。ユーザによっては提供された画像処理装置において、ソフト処理している内容の画像処理を画像処理専用LSIで実施し高速化を図りたい場合や、画像処理専用LSIで実施している画像処理装内容を必要としない場合など、画像処理装置に対する要望はユーザに依存してさまざまである。全てのユーザに合致するようカスタマイズして画像処理装置を構成するのは不可能である。
【0013】
処理が固定化している画像処理専用LSIに代わりFPGAを利用して画像処理を実現する手法もある。FPGAは処理機能を変更できるのが特徴であるが、FPGAの処理機能は事前に処理機能データを格納するメモリーに書き込んでおく必要があるため、画像処理装置として利用する場合には、画像処理の機能が決まってしまうことになる。
【0014】
特開2000−90237号公報(特許文献1)では、FPGAに搭載する処理機能を書き換える方法が記載されているが、書き換えられる処理機能は予め決められたものを用意し、これらをある一定の画像処理シーケンスに従って書き換えるものである。
【0015】
【特許文献1】
特開2000−90237号公報
【0016】
【発明が解決しようとする課題】
これまで述べたように、画像処理装置はプロセッサを用いてソフト的に画像処理を実現する構成の場合と、画像処理専用LSIを用いて画像処理をプロセッサと画像処理専用LSIの両方を用いて実現する構成をとるものがある。
【0017】
一般的には画像処理専用LSIを用いた構成の方が処理の高速化には有利である。しかし、画像処理専用LSIの内容は固定化されているため、新たな画像処理機能を追加する場合は、画像処理専用LSIでは実現できず、ソフト処理として追加せざるを得ない。画像処理専用LSIで実施している機能に変更が生じた場合には、変更部分をソフト処理で対応せざるを得なく、ユーザ毎の要望に合致した、カスタマイズした画像処理装置を実現することができない、などが課題となっている。
【0018】
また、FPGAを用いて画像処理を行う場合でも、FPGA自体は書換え可能なデバイスであるが、装置として使用する場合には事前に決められた処理機能を用意しておく必要があり、一旦装置として稼動した後から発生した処理機能の追加や変更には対応できない。
【0019】
本発明は、上記の問題に対処し、ハードウエア的な処理により高速化された画像処理が行われ、しかも新たな処理機能の追加や処理の変更にも対応できるようにすることを目的とする。
【0020】
【課題を解決するための手段】
本発明は、画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うとともに全般的な動作等の制御を司るプロセッサとを有し、追加/変更の機能に関する画像処理をプロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うFPGAを設け、FPGAに渡す追加/変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるFROMを含む不揮発性メモリーを設けたことを特徴とする。
【0021】
【発明の実施の形態】
本発明の実施の形態に係わる実施例について図面を引用して説明する。
【0022】
まず、図1に示す画像処理装置のブロック図に沿って述べる。
【0023】
プロセッサ1は、ソフト的な画像処理を行う。メモリー2は、画像データやプログラムを格納する。プロセッサ1は、メモリー2からダウンロードしたプログラムのソフトウエアを用いて画像データの画像処理をソフト的に行う。プロセッサ1には、画像データ入出力制御部3を介して入力画像および出力画像の信号が出入りする。
【0024】
画像処理専用のFPGA4(Field Programmable Gate Array)は、追加/変更の機能に関する画像処理をプロセッサ1に代わって担う。FPGA4は、画像処理を専用ハードウエア的に処理する。FPGA4の作動は、プロセッサ1の指示により行われる。つまり、画像処理に関する画像処理系は、プロセッサ1、メモリー2、およびFPGA4によって形成されるのである。
【0025】
FROM5(不揮発性メモリー)は、FPGAに渡す追加/変更の機能に関する画像処理プログラムを記憶している。制御コントローラ6は、追加/変更の機能に関する画像処理プログラムをFROM5(不揮発性メモリー)に提供する。
【0026】
制御コントローラ6、FROM5、画像データ入出力制御部3、プロセッサ1、メモリー2、およびFPGA4はデータバスを介して接続されている。
【0027】
画像処理専用のFPGA4(Field Programmable Gate Array)は、数百万ゲートという高集積なデバイスで、LSIと同様にハード的な処理を行うのでデータ量の多い画像処理を極めて迅速に処理できる。しかも、FPGAは、内部論理の書換えが任意に可能であり、画像処理の追加/変更に対する要求に応じた画像処理プログラムの書換えにより、容易に対応できる。
【0028】
わざわざ、仕様の追加/変更を満たす画像処理専用のLSIを用意する必要がなく、追加/変更に関する画像処理プログラムを作るだけで対応できるので、仕様の追加/変更に費やす時間が大幅に短縮でき、ユーザの仕様変更に関する種々の要求に柔軟に迅速に応ずることができるのである。
【0029】
またプロセッサを含む各種の電子部品が装着されているプリント基板に画像処理専用のLSIを交換する必要もなくなったので、交換作業のわずらわしさもなくなった。もちろん、追加/変更に関する画像処理プログラムの入れ替え(書換え)がユーザ側においてもでき、ソフト的な変更対応であるので、ユーザ毎に異なる多様な要求に対しても個別にカスタマイズすることが可能となる。
【0030】
追加/変更に関する画像処理プログラムの書き換えについて、図5の処理フローに沿って説明する。
【0031】
ステップ▲1▼で制御コントローラからFROMへの書き込み指示が行われ、ステップ▲2▼でFROMに新しい機能データが書き込まれる。書き込が終了すると、ステップ▲3▼で画像処理系の動作が停止させられる。画像処理系の動作の停止中にステップ▲4▼で制御コントローラからFPGAにコンフィグレーション開始指示が行われる。それにともないステップ▲5▼でFROMからFPGAに新しい機能データがダウンロードされる。これと入れ替わりに古い機能データは消去される。新しい機能データのダウンロードによる書き込み(記憶)が終了すると、ステップ▲6▼で画像処理系の動作開始が行われる。
【0032】
このようにFPGAへの新しい機能データがダウンロード(書き込み)は、画像処理系の作動を一時的に止めなければ実行できない。新しい機能データをFROMに格納する備えを予め済ませて置くことで、画像処理系の作動中断時間を最小限に抑えることができる。
【0033】
また、新しい機能データの書き込み速いので、画像データ入出力制御部と画像処理系とで交わされる画像データの入出力中や、画像処理の実行待ち時間中に済ませることもできる。
【0034】
FPGAは、SRAM方式で構成されている。停電等で保持の電源が切れると、FPGAに記憶されていた記憶内容は消滅する。そこで、FPGAに記憶されていた記憶内容と同じデータをFROMやPROM等の不揮発性メモリーに保存して置き、直ぐに不揮発性メモリーからFPGAに再書き込みができるようにしているのである。
【0035】
また停電等に際し、画像処理装置の電源を再投入して稼動を再開するときには、稼動と同時に不揮発性メモリーに保存されているデータ(画像処理プログラム)をFPGAに再書き込みする補充提供が自動的に行われる。
【0036】
このFPGAへの再書き込みは、画像処理装置が通常に稼動開始されるときにも行われる。これらの再書き込みは、制御コントローラから出される制御信号の指示で行われる仕組みが構築されている。
【0037】
上述した図1の実施例では、画像処理を行うプロセッサ以外に、システム全体を制御する制御コントローラを実装した例を示しているが、この制御コントローラは画像処理系のプロセッサと兼用することも可能である。
【0038】
図2は、画像処理専用のFPGAの搭載機能識別機能として、レジスタの構成例を示している。
【0039】
これまで述べたように画像処理専用のFPGAの内部機能を任意のタイミングで変更可能となることは、同じ画像処理専用のFPGAに搭載する機能が一意的ではなく複数存在することを意味する。このため、画像処理専用のFPGAにはどの機能が搭載されているかを識別する機能が必要となる。
【0040】
これは、ユーザ毎に異なった機能を提供した場合や、いくつかの処理機能を組み合わせて画像処理専用FPGAに搭載した場合の、搭載した機能を確認する場合にも有効である。図3では機能毎のビット配列による識別例を示しているが、搭載機能をバージョン番号として管理し、その値を識別機能として使用することも可能である。
【0041】
図3は画像処理専用のFPGAの内部を、画像処理そのものを実施する演算部分と、FPGA外部との画像データの入出力を制御するデータ制御部とを論理的に分離させた例を示す。
【0042】
画像処理専用のFPGAが処理を行うには、何らかの形で処理対象画像を取り込み、処理結果を出力するという機能が不可欠である。
【0043】
例えば、画像処理専用FPGAには専用の画像メモリーが付随し、画像処理専用のFPGAの入出力画像はこの画像メモリーから入出力する構成の場合、画像処理専用のFPGAには、この画像メモリーとの間で画像データのやり取りを制御するデータ制御機能が必要となる。
【0044】
世の中にはさまざまなタイプのメモリーが存在するが、画像メモリーとしてその役割を果たすものは、SRAMやSDRAMなどの比較的容量の大きいものが対象となることが多い。これらの外部メモリーとのデータ制御機能は、画像処理専用のFPGAを適用する周辺のシステム構成により一意的に決まるものであり、前に述べた画像処理機能のように同一システムにおいて変更するものではない。
【0045】
従って、画像処理専用のFPGAでは、画像処理を行う機能部分と画像データの入出力を制御する機能部分とを分離してもたせると、異なる機能を実装する画像処理専用のFPGAにおいても、画像メモリーが同一のものであれば、共通のデータ制御部を利用することが可能となる。また、画像処理機能を変更する場合には、データ制御部は同一のものを利用し、画像処理機能のみを変更することで対応できる。
【0046】
また、データ制御部は、一般的に広く利用されている画像メモリータイプに対応できるようにいくつかの動作バリエーションを用意し、必要に応じて選択可能とすることにより、画像処理専用のFPGAの汎用性が高まり、異なるシステムにおいても同じ画像処理専用のFPGAを流用することが可能となる。
【0047】
図4は、他の実施例に係わるものである。これまで述べた実施例の構成を持つ画像処理専用のFPGAを複数使用した場合の構成例を示す。
【0048】
高速性が要求される画像処理装置では、複数個の画像処理専用プロセッサを搭載し、画像処理を個々のプロセッサに分割して並列処理することにより、高速画像処理を実現するものがある。
【0049】
これまで述べた画像処理専用のFPGAが、従来ソフト処理による画像処理を高速化したものである場合は、複数個のプロセッサにより高速化実現している画像処理装置にも、それぞれのプロセッサに画像処理専用のFPGAをもたせると更なる処理の高速化が図れる。このような構成では、処理対象となる画像を分割し各々のプロセッサに同一の処理を分担させることとなる。
【0050】
さらに前述の通り、各画像処理専用のFPGAは用途に応じてそれぞれ異なった機能を実装することが可能となるため、各プロセッサと画像処理専用のFPGAに異なった処理を同時または、順次実施させることが可能となる。
【0051】
【発明の効果】
本発明により、これまでLSIにより実現されており固定化されていた画像処理機能が、システム構築後においても機能の変更や追加に対応可能となった。
【0052】
また、同一の画像処理専用FPGAにおいても、異なった機能を実装できるため、同一のシステムにおいても、必要な時に必要な機能をプログラマブルに画像処理専用FPGAに実装させることが可能となった。
【0053】
さらに、ユーザ毎にカスタマイズした画像処理装置の実現が可能となる。
【図面の簡単な説明】
【図1】本発明の実施例を示す画像処理装置のブロック図。
【図2】本発明の実施例に係わるもので、レジスタの構成を示す図。
【図3】本発明の実施例に係わるもので、FPGAの内部機能構成を示す図。
【図4】本発明の他の実施例に係わるもので、画像処理装置のブロック図。
【図5】図1のブロック図に基づく処理フローを示す図。
【図6】従来例の画像処理装置を示すブロック図。
【図7】従来例の画像処理装置を示すブロック図。
【図8】従来例の画像処理装置を示すブロック図。
【符号の説明】
1…プロセッサ、2…メモリー、3…画像データ入出力制御部、4…FPGA(Field Programmable Gate Array)、5…FROM(不揮発性メモリー)、6…制御コントローラ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus.
[0002]
[Prior art]
The image processing system is used in various fields, and even if it is called image processing, there are various configurations and processing contents depending on the application. For example, in an apparatus for inspecting the appearance of a wafer in a semiconductor manufacturing process. The demand for processing performance (responding to miniaturization and speeding up of processing time) is increasing due to miniaturization of semiconductor processes.
[0003]
An example of an image processing apparatus used in a semiconductor inspection apparatus is shown in FIGS.
[0004]
As shown in FIG. 6, the image processing apparatus includes a function for controlling input / output of image data to / from an image processing system, a memory for storing a processing target image or processed image data, and a processor for performing image processing. The
[0005]
In the configuration of FIG. 6, image processing is performed only using a processor. That is, an example in which image processing is performed as software processing, and FIG. 7 is a configuration example when a plurality of processors are used to parallelize image processing.
[0006]
FIG. 8 shows an example of an image processing apparatus equipped with an image processing dedicated LSI (image processing accelerator) for the purpose of speeding up image processing using a processor. In the configuration of FIG. 8, the image processing contents performed using the processor in FIG. 6 are partially hardware-processed using an image processing dedicated LSI to achieve high speed.
[0007]
In general, the configuration using an LSI dedicated to image processing is aimed at speeding up compared to image processing by a processor, but image processing by a processor can easily cope with changes in image processing contents. When an image processing dedicated LSI is used, the processing content is fixed, and there is a problem that it is not possible to cope with a change in the image processing content.
[0008]
For example, there is a device that processes half of the contents of the installed image processing with a dedicated LSI and performs image processing with the other half with a processor. When a new image processing function is added to such an image processing apparatus, the function of the LSI dedicated to image processing is fixed, and a new function cannot be realized. As a result, an image processing function is added.
[0009]
In this way, in an image processing apparatus using an image processing dedicated LSI, in order to add a new image processing function, all of them are added as software processing, and the new image processing function is implemented at high speed with the image processing dedicated LSI. To do so, it is necessary to redesign the image processing dedicated LSI.
[0010]
In addition, if there is a change in the implementation method or specifications even with the same image processing function, the image processing function realized with the LSI dedicated to image processing cannot be changed. There must be.
[0011]
Also, the image processing apparatus may have different functions used by the user and the content of the image processing desired to be performed at high speed. As in the example described above, when the image processing function to be mounted is separated by the processor and the image processing function to be processed by using the image processing dedicated LSI, the image processing apparatus determines which image processing function is to be realized. Will be judged by the developers.
[0012]
This is determined in consideration of the user's request of the image processing device to some extent, but not all users use the specification that matches the provided image processing device. Depending on the user, in the provided image processing device, if it is desired to perform image processing of the contents being processed by the LSI dedicated to image processing to increase the speed, or the contents of the image processing apparatus implemented by the LSI dedicated to image processing The demand for the image processing apparatus varies depending on the user, such as when it is not necessary. It is impossible to customize the image processing apparatus so as to match all users.
[0013]
There is also a technique for realizing image processing using an FPGA instead of an image processing dedicated LSI whose processing is fixed. The feature of the FPGA is that the processing function can be changed. However, since the processing function of the FPGA needs to be written in a memory for storing the processing function data in advance, when using it as an image processing apparatus, The function will be decided.
[0014]
Japanese Patent Laid-Open No. 2000-90237 (Patent Document 1) describes a method of rewriting processing functions mounted on an FPGA. However, processing functions to be rewritten are prepared in advance, and these are used for a certain image. It is rewritten according to the processing sequence.
[0015]
[Patent Document 1]
JP 2000-90237 A [0016]
[Problems to be solved by the invention]
As described above, the image processing apparatus is configured to realize software image processing using a processor, and image processing is performed using both the processor and the image processing dedicated LSI using the image processing dedicated LSI. There is something that takes a configuration to do.
[0017]
In general, a configuration using an LSI dedicated to image processing is more advantageous for speeding up the processing. However, since the contents of the image processing LSI are fixed, a new image processing function cannot be realized by the image processing LSI and must be added as software processing. When a change is made to the function implemented in the LSI dedicated to image processing, the changed part must be handled by software processing, and a customized image processing apparatus that meets the needs of each user can be realized. It cannot be done.
[0018]
Even when image processing is performed using an FPGA, the FPGA itself is a rewritable device, but when used as an apparatus, it is necessary to prepare a predetermined processing function. It cannot cope with the addition or change of processing functions that have occurred since the operation.
[0019]
SUMMARY OF THE INVENTION It is an object of the present invention to address the above-described problems, to perform image processing that has been speeded up by hardware processing, and to cope with the addition of new processing functions and processing changes. .
[0020]
[Means for Solving the Problems]
The present invention has a memory for storing image data and a program, and a processor for processing the image data with the downloaded software of the program and controlling overall operations and the like, and an addition / change function An FPGA that performs dedicated hardware processing that takes charge of image processing on behalf of the processor and that operates according to the instructions of the processor is provided, an image processing program relating to the function of addition / change to be passed to the FPGA is stored, and recording A nonvolatile memory including a FROM which can be rewritten arbitrarily is provided.
[0021]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments according to embodiments of the present invention will be described with reference to the drawings.
[0022]
First, a description will be given along the block diagram of the image processing apparatus shown in FIG.
[0023]
The processor 1 performs software image processing. The memory 2 stores image data and programs. The processor 1 performs image processing of image data in software using software of a program downloaded from the memory 2. The processor 1 receives and outputs input image and output image signals via the image data input / output control unit 3.
[0024]
An FPGA 4 (Field Programmable Gate Array) dedicated to image processing takes charge of image processing related to the function of addition / change on behalf of the processor 1. The FPGA 4 performs image processing in a dedicated hardware manner. The operation of the FPGA 4 is performed according to an instruction from the processor 1. That is, an image processing system related to image processing is formed by the processor 1, the memory 2, and the FPGA 4.
[0025]
The FROM 5 (non-volatile memory) stores an image processing program relating to an addition / change function to be transferred to the FPGA. The controller 6 provides an image processing program related to the addition / change function to the FROM 5 (nonvolatile memory).
[0026]
The controller 6, the FROM 5, the image data input / output control unit 3, the processor 1, the memory 2, and the FPGA 4 are connected via a data bus.
[0027]
An FPGA 4 (Field Programmable Gate Array) dedicated to image processing is a highly integrated device of several million gates, and performs hardware processing in the same way as an LSI, so it can process image processing with a large amount of data very quickly. Moreover, the FPGA can arbitrarily rewrite internal logic, and can easily cope with rewriting of an image processing program in response to a request for addition / change of image processing.
[0028]
It is not necessary to prepare a dedicated LSI for image processing that satisfies the addition / change of specifications, and it can be handled simply by creating an image processing program related to addition / change, so the time spent adding / changing specifications can be greatly reduced. It is possible to respond flexibly and quickly to various requests regarding user specification changes.
[0029]
In addition, it is no longer necessary to replace the LSI dedicated to image processing with a printed circuit board on which various electronic components including a processor are mounted. Of course, the image processing program related to addition / change can be replaced (rewritten) on the user side, and since it is compatible with software change, it is possible to customize individually for various requests different for each user. .
[0030]
Rewriting of the image processing program relating to addition / change will be described along the processing flow of FIG.
[0031]
In step {circle around (1)}, a write instruction to the FROM is issued from the controller, and in step {circle around (2)}, new function data is written to the FROM. When the writing is completed, the operation of the image processing system is stopped in step (3). While the operation of the image processing system is stopped, a configuration start instruction is issued from the controller to the FPGA in step (4). Accordingly, in step (5), new function data is downloaded from the FROM to the FPGA. At the same time, the old function data is deleted. When writing (storing) by downloading new function data is completed, the operation of the image processing system is started in step (6).
[0032]
In this manner, downloading (writing) of new function data to the FPGA cannot be executed unless the operation of the image processing system is temporarily stopped. By preliminarily preparing for storing new function data in the FROM, the operation interruption time of the image processing system can be minimized.
[0033]
In addition, since writing of new function data is fast, it can be done during input / output of image data exchanged between the image data input / output control unit and the image processing system, or during an image processing execution waiting time.
[0034]
The FPGA is configured by an SRAM system. When the holding power is cut off due to a power failure or the like, the stored contents stored in the FPGA are lost. Therefore, the same data as the contents stored in the FPGA is stored in a nonvolatile memory such as FROM or PROM, and can be immediately rewritten from the nonvolatile memory to the FPGA.
[0035]
In the event of a power failure or the like, when the image processing apparatus is turned on again and restarted, supplementary provision is automatically provided to rewrite the data (image processing program) stored in the non-volatile memory at the same time as the operation. Done.
[0036]
This rewriting to the FPGA is also performed when the image processing apparatus is normally started. A mechanism is constructed in which these rewrites are performed in accordance with an instruction of a control signal issued from the control controller.
[0037]
In the embodiment of FIG. 1 described above, an example is shown in which a control controller for controlling the entire system is mounted in addition to a processor for performing image processing. However, this control controller can also be used as an image processing processor. is there.
[0038]
FIG. 2 shows a configuration example of a register as an on-board function identification function of an FPGA dedicated to image processing.
[0039]
As described above, the fact that the internal functions of the FPGA dedicated to image processing can be changed at an arbitrary timing means that there are a plurality of functions installed in the same FPGA dedicated to image processing, not unique. For this reason, a function for identifying which function is installed in the FPGA dedicated to image processing is required.
[0040]
This is also effective when checking the installed functions when different functions are provided for each user or when a plurality of processing functions are combined and mounted in an image processing dedicated FPGA. Although FIG. 3 shows an example of identification by bit arrangement for each function, it is also possible to manage the installed function as a version number and use the value as the identification function.
[0041]
FIG. 3 shows an example in which an arithmetic part for performing image processing itself and a data control unit for controlling input / output of image data to / from the outside of the FPGA are logically separated inside the FPGA dedicated to image processing.
[0042]
In order for an FPGA dedicated to image processing to perform processing, a function of capturing a processing target image in some form and outputting a processing result is indispensable.
[0043]
For example, a dedicated image memory is attached to an image processing dedicated FPGA, and an input / output image of the image processing dedicated FPGA is input / output from the image memory. A data control function for controlling the exchange of image data between them is required.
[0044]
There are various types of memories in the world, but what plays a role as an image memory is often a relatively large capacity such as SRAM or SDRAM. The data control function with these external memories is uniquely determined by the peripheral system configuration to which the FPGA dedicated to image processing is applied, and is not changed in the same system as the image processing function described above. .
[0045]
Therefore, in the FPGA dedicated to image processing, if the functional part for performing image processing and the functional part for controlling input / output of image data are separated, the image memory in the FPGA dedicated to image processing that implements different functions is also different. If they are the same, a common data control unit can be used. Further, when changing the image processing function, the same data control unit can be used and only the image processing function can be changed.
[0046]
In addition, the data control unit prepares several operation variations so as to be compatible with image memory types that are generally widely used, and can be selected as necessary. Therefore, it is possible to use the same FPGA dedicated to image processing even in different systems.
[0047]
FIG. 4 relates to another embodiment. A configuration example in the case where a plurality of FPGAs dedicated to image processing having the configuration of the embodiment described so far is used will be described.
[0048]
Some image processing apparatuses that require high speed implement high-speed image processing by mounting a plurality of dedicated processors for image processing and dividing the image processing into individual processors for parallel processing.
[0049]
When the FPGA dedicated to image processing described so far is a high-speed image processing by conventional software processing, the image processing apparatus which has been realized at high speed by a plurality of processors can also perform image processing on each processor. If a dedicated FPGA is provided, the processing speed can be further increased. In such a configuration, an image to be processed is divided and the same processing is assigned to each processor.
[0050]
Furthermore, as described above, each image processing dedicated FPGA can have different functions depending on the application, so that each processor and the image processing dedicated FPGA can execute different processes simultaneously or sequentially. Is possible.
[0051]
【The invention's effect】
According to the present invention, the image processing function that has been realized and fixed by the LSI until now can be changed and added even after the system is constructed.
[0052]
In addition, since different functions can be implemented in the same FPGA dedicated to image processing, it is possible to program the necessary functions in the dedicated FPGA for image processing in the same system when necessary.
[0053]
Furthermore, an image processing apparatus customized for each user can be realized.
[Brief description of the drawings]
FIG. 1 is a block diagram of an image processing apparatus according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a configuration of a register according to an embodiment of the present invention.
FIG. 3 is a diagram showing an internal functional configuration of an FPGA according to an embodiment of the present invention.
FIG. 4 is a block diagram of an image processing apparatus according to another embodiment of the present invention.
FIG. 5 is a diagram showing a processing flow based on the block diagram of FIG. 1;
FIG. 6 is a block diagram showing a conventional image processing apparatus.
FIG. 7 is a block diagram showing a conventional image processing apparatus.
FIG. 8 is a block diagram showing a conventional image processing apparatus.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Processor, 2 ... Memory, 3 ... Image data input / output control part, 4 ... FPGA (Field Programmable Gate Array), 5 ... FROM (nonvolatile memory), 6 ... Control controller.

Claims (7)

画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うとともに全般的な動作等の制御を司るプロセッサとを有し、
追加/変更の機能に関する画像処理を前記プロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うFPGAを設け、
前記FPGAに渡す前記追加/変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるFROMを含む不揮発性メモリーを設けたことを特徴とする画像処理装置。
A memory for storing image data and a program, and a processor for processing the image data with the downloaded software of the program and controlling overall operations and the like,
An FPGA for performing image processing related to the function of addition / change on behalf of the processor and performing dedicated hardware processing that operates according to the instruction of the processor is provided.
An image processing apparatus comprising: a non-volatile memory including a FROM that stores an image processing program related to the addition / change function to be transferred to the FPGA and that can arbitrarily rewrite the recording.
請求項1記載の画像処理装置において、
前記追加/変更の機能に関する画像処理プログラムを前記不揮発性メモリーに提供する制御コントローラを有することを特徴とする画像処理装置。
The image processing apparatus according to claim 1.
An image processing apparatus comprising: a controller that provides an image processing program related to the addition / change function to the nonvolatile memory.
請求項1または2記載の画像処理装置において、
前記FPGAの内部に、前記画像処理プログラムに存在する複数の機能を識別する機能識別レジスタを有することを特徴とする画像処理装置。
The image processing apparatus according to claim 1 or 2,
An image processing apparatus comprising a function identification register for identifying a plurality of functions existing in the image processing program in the FPGA.
請求項1または2記載の画像処理装置において、
前記FPGAに設けられる画像処理を行う画像演算部と、前記画像演算部で処理される前記画像データの入出力を制御するデータ制御部とが、分離されていることを特徴とする画像処理装置。
The image processing apparatus according to claim 1 or 2,
An image processing apparatus, comprising: an image processing unit that performs image processing provided in the FPGA; and a data control unit that controls input and output of the image data processed by the image processing unit.
請求項1から4に記載された何れか一つの画像処理装置において、
前記FPGAを少なくとも2つ以上設けたことを特徴とする画像処理装置。
The image processing apparatus according to any one of claims 1 to 4,
An image processing apparatus comprising at least two FPGAs.
請求項1から5に記載された何れか一つの画像処理装置において、
停電等で消滅した前記FPGAの画像処理プログラムは、画像処理装置の稼動と同時に不揮発性メモリーより補充提供されることを特徴とする画像処理装置。
The image processing apparatus according to any one of claims 1 to 5,
The image processing program of the FPGA that disappeared due to a power failure or the like is supplemented and provided from a nonvolatile memory simultaneously with the operation of the image processing device.
画像データやプログラムを格納するメモリーと、ダウンロードした前記プログラムのソフトウエアで前記画像データの処理を行うプロセッサとを有し、
追加/変更の機能に関する画像処理を前記プロセッサに代わって担い、かつプロセッサの指示で作動するところの専用ハードウエア的な処理を行うFPGAを設け、
前記FPGAに渡す前記追加/変更の機能に関する画像処理プログラムを記憶し、かつ記録の書き換えが任意にできるFROMを含む不揮発性メモリーを設け、
前記追加/変更の機能に関する画像処理プログラムを前記不揮発性メモリーに提供し、かつ全般的な動作等の制御を司る制御コントローラを有することを特徴とする画像処理装置。
A memory for storing image data and a program, and a processor for processing the image data with software of the downloaded program,
An FPGA for performing image processing related to the function of addition / change on behalf of the processor and performing dedicated hardware processing that operates according to the instruction of the processor is provided.
A non-volatile memory including a FROM that stores an image processing program related to the function of addition / change to be passed to the FPGA and can arbitrarily rewrite the recording is provided,
An image processing apparatus, comprising: a control controller that provides an image processing program related to the addition / change function to the nonvolatile memory and controls overall operations and the like.
JP2003191915A 2003-07-04 2003-07-04 Image processor Pending JP2005025599A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003191915A JP2005025599A (en) 2003-07-04 2003-07-04 Image processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003191915A JP2005025599A (en) 2003-07-04 2003-07-04 Image processor

Publications (1)

Publication Number Publication Date
JP2005025599A true JP2005025599A (en) 2005-01-27

Family

ID=34189348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003191915A Pending JP2005025599A (en) 2003-07-04 2003-07-04 Image processor

Country Status (1)

Country Link
JP (1) JP2005025599A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010152666A (en) * 2008-12-25 2010-07-08 Oki Semiconductor Co Ltd Signal processor and signal processing system
US8134226B2 (en) 2006-03-28 2012-03-13 Sony Computer Entertainment Inc. Processing apparatus with memories coupled to respective processors
JP2013545198A (en) * 2010-11-12 2013-12-19 クゥアルコム・インコーポレイテッド Parallel image processing using multiple processors
WO2015156236A1 (en) * 2014-04-08 2015-10-15 Canon Kabushiki Kaisha Image processing apparatus and method of controlling the same
WO2021125262A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8134226B2 (en) 2006-03-28 2012-03-13 Sony Computer Entertainment Inc. Processing apparatus with memories coupled to respective processors
JP2010152666A (en) * 2008-12-25 2010-07-08 Oki Semiconductor Co Ltd Signal processor and signal processing system
US8412902B2 (en) 2008-12-25 2013-04-02 Oki Semiconductor Co., Ltd. Signal processor and signal processing system
JP2013545198A (en) * 2010-11-12 2013-12-19 クゥアルコム・インコーポレイテッド Parallel image processing using multiple processors
WO2015156236A1 (en) * 2014-04-08 2015-10-15 Canon Kabushiki Kaisha Image processing apparatus and method of controlling the same
JP2015201766A (en) * 2014-04-08 2015-11-12 キヤノン株式会社 Image processing system, control method of the same, and program
US10122883B2 (en) 2014-04-08 2018-11-06 Canon Kabushiki Kaisha Image processing apparatus including circuit configuration and method of controlling the same
WO2021125262A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board
WO2021124432A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board

Similar Documents

Publication Publication Date Title
JP6633119B2 (en) Autonomous memory method and system
JPH01232447A (en) Single chip microcomputer
JP2008009721A (en) Evaluation system and evaluation method thereof
JP2005025599A (en) Image processor
US11132305B1 (en) Automatic static region generation for memory protection units (MPUs)
US7447874B1 (en) Method and system for designing a flexible hardware state machine
JP3694005B2 (en) Digital signal processing apparatus and digital signal processing method
JP3055999B2 (en) Microprogram control device group
US10540222B2 (en) Data access device and access error notification method
US20240126709A1 (en) Direct memory access controller
JP4853620B2 (en) Multiprocessor system and initial startup method and program
JP2001256055A (en) Program download system
JP6691239B2 (en) How to drive the arithmetic unit
JPH06324861A (en) System and method for controlling cpu
JP2007018440A (en) Architecture verification apparatus
JP2003186854A (en) Simd processor and verification apparatus thereof
JP3575052B2 (en) Electronic equipment
JP2020004448A (en) Automotive electronic control device
JPS6310234A (en) Interruption processor
JPH1040094A (en) Program controller for firmware
JPS63156231A (en) Changing method for instruction in read-only memory
JPH06222917A (en) Electronic device
JP2000029508A (en) Programmable controller
KR100631396B1 (en) Semiconductor device
JP2007128336A (en) Parallel register access device and system lsi

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050415

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071204

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080401