JP5277615B2 - Data processing apparatus and data processing program - Google Patents
Data processing apparatus and data processing program Download PDFInfo
- Publication number
- JP5277615B2 JP5277615B2 JP2007303036A JP2007303036A JP5277615B2 JP 5277615 B2 JP5277615 B2 JP 5277615B2 JP 2007303036 A JP2007303036 A JP 2007303036A JP 2007303036 A JP2007303036 A JP 2007303036A JP 5277615 B2 JP5277615 B2 JP 5277615B2
- Authority
- JP
- Japan
- Prior art keywords
- data processing
- data
- processing unit
- processing
- processed
- 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.)
- Expired - Fee Related
Links
Images
Description
本発明は、データ処理装置及びデータ処理プログラムに関する。 The present invention relates to a data processing apparatus and a data processing program.
下記特許文献1には、複数のプロセッサの処理負荷を監視して、複数のプロセッサ間でダイナミックに処理分担を変更する画像処理装置についての記載がある。
本発明の目的は、再構成可能処理装置を用いて複数のデータ処理を並列的に処理し、処理効率を高めるデータ処理装置及びデータ処理プログラムを提供することにある。 An object of the present invention is to provide a data processing device and a data processing program that process a plurality of data processes in parallel using a reconfigurable processing device and increase processing efficiency.
本発明のデータ処理装置の一態様においては、互いにデータを別入力してデータ処理を行う複数のデータ処理部が論理仕様の再構成により設けられる再構成可能処理装置と、前記データ処理部におけるデータ処理の終了を監視する監視手段と、前記監視手段の監視結果に基づいて、データ処理中のデータ処理部の論理仕様は再構成せず、処理を終了した1又は2以上のデータ処理部の論理仕様を再構成して、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける再構成手段と、を備える。 In one aspect of the data processing device of the present invention, a reconfigurable processing device in which a plurality of data processing units that perform data processing by separately inputting data from each other are provided by reconfiguration of logical specifications, and data in the data processing unit Based on the monitoring result of the end of the processing and the monitoring result of the monitoring means, the logical specification of the data processing unit that is processing the data is not reconfigured, and the logic of one or more data processing units that have completed the processing Restructuring means for reconfiguring the specification and providing one or more new data processing units for performing the next data processing.
本発明のデータ処理装置の一態様においては、処理対象となるデータには、次に処理対象となるデータを特定するデータ特定情報が付加されており、前記再構成手段は、前記データ特定情報に基づいて、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける。 In one aspect of the data processing apparatus of the present invention, data specifying information for specifying data to be processed next is added to the data to be processed, and the reconstructing means includes the data specifying information. Based on this, one or more new data processing units for performing the next data processing are provided.
本発明のデータ処理装置の一態様においては、処理対象となるデータには、データ処理の種類を特定する種類特定情報が付加されており、前記再構成手段は、前記種類特定情報に基づいて、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける。 In one aspect of the data processing apparatus of the present invention, type specifying information for specifying the type of data processing is added to the data to be processed, and the reconstructing means is based on the type specifying information, One or more new data processing units for performing the next data processing are provided.
本発明のデータ処理装置の一態様においては、前記再構成手段は、複数のデータ処理の実行優先順を特定する情報に基づいて、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける。 In one aspect of the data processing apparatus of the present invention, the reconfiguration unit includes one or more new data processing units that perform the next data processing based on information that specifies the execution priority order of the plurality of data processings. Is provided.
本発明のデータ処理装置の一態様においては、前記再構成手段は、処理を終了した1又は2以上のデータ処理部の規模が大きく、新たなデータ処理部を設けることができない場合には、処理中のデータ処理部の処理が終了するのを待って、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける。 In one aspect of the data processing apparatus of the present invention, the reconstructing means performs processing when the scale of one or more data processing units that have completed processing is large and a new data processing unit cannot be provided. One or two or more new data processing units that perform the next data processing are provided after the processing of the internal data processing unit is completed.
本発明のデータ処理装置の一態様においては、処理対象となるデータは、画像データであり、当該データ処理装置は、さらに、データ処理結果に基づいて画像表示出力または画像印刷出力を行う出力手段を備える、 In one aspect of the data processing apparatus of the present invention, the data to be processed is image data, and the data processing apparatus further includes output means for performing image display output or image print output based on the data processing result. Prepare
本発明のデータ処理プログラムの一態様においては、互いにデータを別入力してデータ処理を行う複数のデータ処理部が論理仕様の再構成によって設けられる再構成可能処理装置を備えたコンピュータを、前記データ処理部におけるデータ処理の終了を監視する監視手段と、前記監視手段の監視結果に基づいて、データ処理中のデータ処理部の論理仕様は再構成せず、処理を終了した1又は2以上のデータ処理部の論理仕様を再構成して、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける再構成手段、として機能させる。 In one aspect of the data processing program of the present invention, a computer including a reconfigurable processing device in which a plurality of data processing units that perform data processing by separately inputting data from each other is provided by reconfiguring a logical specification. Monitoring means for monitoring the end of data processing in the processing section, and one or more data for which processing has been completed without reconfiguring the logical specifications of the data processing section during data processing based on the monitoring result of the monitoring means The logical specification of the processing unit is reconfigured to function as a reconfiguration unit that provides one or more new data processing units for performing the next data processing.
請求項1の発明によれば、再構成可能処理装置を用いて複数のデータ処理が並列的に処理されるため、処理効率を高めることができる。 According to the first aspect of the present invention, since a plurality of data processes are processed in parallel using the reconfigurable processing device, the processing efficiency can be improved.
請求項2の発明によれば、処理対象となるデータに付加されたデータ特定情報により、再構成の制御を行うことが可能となる。 According to the second aspect of the present invention, it is possible to control reconfiguration based on data specifying information added to data to be processed.
請求項3の発明によれば、処理対象となるデータに付加された種類特定情報により、再構成の制御を行うことが可能となる。 According to the third aspect of the present invention, it is possible to control reconstruction based on the type specifying information added to the data to be processed.
請求項4の発明によれば、実行優先順に基づいて、複数のデータ処理を行うことが可能となる。 According to the invention of claim 4, it is possible to perform a plurality of data processing based on the order of execution priority.
請求項5の発明によれば、データ処理部の規模に応じて、データ処理部が配置される。 According to invention of Claim 5, a data processing part is arrange | positioned according to the scale of a data processing part.
請求項6の発明によれば、画像出力の効率を高めることが可能となる。 According to the invention of claim 6, it is possible to increase the efficiency of image output.
請求項7の発明によれば、再構成可能処理装置を用いて複数のデータ処理が並列的に処理されるため、処理効率を高めることができる。 According to the seventh aspect of the present invention, since a plurality of data processes are processed in parallel using the reconfigurable processing device, the processing efficiency can be improved.
[用語や概念等の説明]
データ処理装置は、演算処理機能を備えたコンピュータ(ハードウエア)と、それを制御するプログラム(ソフトウエア)を利用して構築される装置である。データ処理装置は、再構成可能処理装置、監視手段、及び再構成手段などを備える。
[Explanation of terms and concepts]
The data processing device is a device constructed using a computer (hardware) having an arithmetic processing function and a program (software) for controlling the computer. The data processing device includes a reconfigurable processing device, a monitoring unit, a reconfiguring unit, and the like.
再構成可能処理装置は、算術論理あるいは結線論理などの論理仕様をソフトウエア的に再構成することができる演算処理装置である。再構成可能処理装置では、典型的には、複数のPE(プロセッサエレメント)が設けられ、PEを単位として論理仕様の変更が行われる。PEの例としては、算術論理回路を備えたALU(算術論理ユニット)エレメントや、記憶回路を備えたメモリエレメントなどが挙げられる。再構成可能処理装置では、論理仕様の設定の結果、複数のデータ処理部が設けられる。各データ処理部は、互いに別々にデータを入力して、そのデータ処理を行う。データ処理の種類は特に限定されるものではなく、例えば、画像データに対するデータ処理の例として、圧縮、伸張、色変換、形式変換、レンダリングなどを挙げることができる。 The reconfigurable processing device is an arithmetic processing device capable of reconfiguring logic specifications such as arithmetic logic or connection logic in software. In a reconfigurable processing apparatus, typically, a plurality of PEs (processor elements) are provided, and the logical specification is changed in units of PEs. Examples of the PE include an ALU (arithmetic logic unit) element provided with an arithmetic logic circuit and a memory element provided with a storage circuit. In the reconfigurable processing apparatus, a plurality of data processing units are provided as a result of setting logical specifications. Each data processing unit inputs data separately from each other and performs the data processing. The type of data processing is not particularly limited, and examples of data processing for image data include compression, expansion, color conversion, format conversion, and rendering.
監視手段は、各データ処理部におけるデータ処理の終了を監視する。監視は、例えば、データ処理部から通知を受けることで、あるいは、データ処理部に問い合わせをすることで行われる。 The monitoring means monitors the end of data processing in each data processing unit. The monitoring is performed, for example, by receiving a notification from the data processing unit or by making an inquiry to the data processing unit.
再構成手段は、監視手段の監視結果を基に、再構成可能処理装置を再構成して、その論理仕様を変更する手段である。再構成手段は、データ処理中のデータ処理部の論理仕様は再構成せず、処理を終了した1又は2以上のデータ処理部の論理仕様を再構成することで、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける。つまり、再構成の結果、データ処理中のデータ処理部は維持され、処理を終了した1又は2以上のデータ処理部は、1又は2以上の新たなデータ処理部へと変更される。 The reconfiguration unit is a unit that reconfigures the reconfigurable processing device based on the monitoring result of the monitoring unit and changes its logical specification. The reconfiguring means performs the next data processing by reconfiguring the logical specifications of one or more data processing units that have finished processing, without reconfiguring the logical specifications of the data processing unit that is currently processing data. Alternatively, two or more new data processing units are provided. That is, as a result of the reconfiguration, the data processing unit that is processing data is maintained, and one or more data processing units that have completed the processing are changed to one or more new data processing units.
[実施形態]
以下に、本発明の実施の形態を例示する。
[Embodiment]
Hereinafter, embodiments of the present invention will be exemplified.
図1は、本実施の形態にかかる画像処理システム10のハードウエア構成の概略を示す図である。画像処理システム10は、画像処理装置11と、ネットワーク30と、PC(パーソナルコンピュータ)40とを含んでいる。画像処理装置11は、データ処理装置の一例としての装置であり、PC40は、ユーザが画像処理装置11を使用するために用いられる装置である。この画像処理装置11とPC40は、インターネットあるいはイントラネットなどを用いて構築されるネットワーク30に接続されており、相互に通信可能となっている。
FIG. 1 is a diagram showing an outline of a hardware configuration of an
画像処理装置11には、内部通信路としてのバス12と、バス12に接続されたCPU(中央処理装置)14、メモリ16、リコンフィギュラブル装置18、UI(ユーザインタフェース)20、スキャナ22、プリンタ24、CDD(コンパクトディスクドライブ)26、及びネットワークインタフェース28などの各構成要素を含んでいる。CPU14は、演算処理機能を備えた装置であり、メモリ16に格納されたプログラムに基づいて、演算処理や、各構成要素の制御などを行う。メモリ16は、半導体素子などを利用した記憶装置であり、CPU14やリコンフィギュラブル装置18を制御するプログラムやデータ、処理対象となる画像データなどを記憶する。リコンフィギュラブル装置18は、再構成可能処理装置としての装置である。UI20は、ユーザが画像処理装置11の操作を行うための装置である。UI20には、ユーザからの入力を受け付けるために、タッチパネルやキーボードなどの入力装置が設けられている他、ユーザに画像情報を提示するため、液晶パネルなどの表示装置も設けられている。
The image processing apparatus 11 includes a bus 12 as an internal communication path, a CPU (central processing unit) 14 connected to the bus 12, a
スキャナ22は、用紙を読み取って画像データを生成するための装置であり、プリンタ24は、画像データに基づいて用紙に印刷を行うための装置である。CDD26は、記録媒体としてCD(コンパクトディスク)に対する読み書きを行うための装置である。画像処理装置11を制御するためのプログラムはCDを通じて提供されてもよく、この場合には、CDD26を利用したインストールが行われる。ネットワークインタフェース28は、ネットワーク30を介してPC40等と通信を行うための装置である。また、画像処理装置11を制御するためのプログラムはネットワーク30を通じて提供されてもよく、この場合には、ネットワークインタフェース28を利用したインストールが行われる。
The
図2は、リコンフィギュラブル装置18のハードウエア構成を説明する図である。リコンフィギュラブル装置18には、バス50と、バス50に接続されたリコンフィギュラブルプロセッサ52、コンフィグメモリ54、プロセッサ56、及びインタフェース58が含まれている。リコンフィギュラブルプロセッサ52は、複数のPEを備え、その論理仕様を再構成することができる処理装置である。また、コンフィグメモリ54は、半導体素子を利用した記憶装置であり、リコンフィギュラブルプロセッサ52の論理仕様を定めるコンフィグデータが入力される。プロセッサ56は、リコンフィギュラブル装置18を制御する処理装置であり、リコンフィギュラブルプロセッサ52の再構成のスケジューラとしての役割も果たしている。プロセッサ56の動作は、一般にはプログラムによって制御される。インタフェース58は、画像処理装置11のバス12との通信を可能にする装置である。
FIG. 2 is a diagram illustrating a hardware configuration of the
図3は、リコンフィギュラブル装置18に設定される処理機能について説明する図である。ここでは、スキャナ22により生成された画像データなどがメモリ16に格納されており、この画像データをリコンフィギュラブルプロセッサ52へ画像データを入力して、処理結果をプリンタ24内のメモリに出力し、印刷する処理を想定している。そして、この処理においては、リコンフィギュラブルプロセッサ52は、例えば、RGB表色系で表された画像データをYMCK表色系に変換する画像処理や、ベクトル形式の画像データをラスタ形式に変換する画像処理、ラスタ形式の画像データを圧縮する画像処理などを行う。また、メモリ調停部60は、メモリ16から画像データを読み出して、リコンフィギュラブルプロセッサ52の所定の箇所に入力するための調停処理を行う。そして、メモリ調停部62は、リコンフィギュラブルプロセッサ52の複数の箇所から出力される処理結果を、プリンタ24のメモリに書き出すための調停処理を行う。
FIG. 3 is a diagram for explaining processing functions set in the
図示した例では、リコンフィギュラブルプロセッサ52には、4つの入力バッファ64,68,72,76、4つのアドレスカウンタ66,70,74,78、4つの画像処理部80,82,84,86、4つの出力バッファ88,92,96,100、及び、4つのアドレスカウンタ90,94,98,102が構築されている。入力バッファ64,68,72,76は、メモリ調停部60から画像データを取得して、それぞれ、画像処理部80,82,84,86に出力する。また、アドレスカウンタ66,70,74,78は、それぞれ、入力バッファ64,68,72,76が取得する画像データの格納アドレスをメモリ調停部60に指示する。画像処理部80,82,84,86は、それぞれ、入力した画像データに対し、設定された画像処理を行って、それぞれ、処理結果を出力バッファ88,92,96,100に出力する。出力バッファ88,92,96,100はメモリ調停部62に処理結果を出力するものであり、出力のアドレスは、それぞれ、アドレスカウンタ90,94,98,102によって制御される。
In the illustrated example, the
プロセッサ56には、リコンフィギュラブルプロセッサ52のスケジューリングを行うため、終了検知部110、次処理エリア判断部112、フローストップ発生部114、次処理ロード部116、及び次アドレスセット部118が構築されている。終了検知部110は、出力バッファ88,92,96,100からの出力結果に基づいて、画像処理部80,82,84,86における画像処理の終了を検知する。次処理エリア判断部112は、リコンフィギュラブルプロセッサ52のどのエリアで次の画像処理を実行するかを判断するものであり、典型的には、画像処理部80,82,84,86のうち処理が終了した1又は2以上の処理部に次の画像処理の設定を行う。フローストップ発生部114は、次の画像処理を設定する場合に、データの流れ及び演算の実行を一時的に停止する。次処理ロード部116は、コンフィグメモリ54に対し、次の画像処理を設定するためのコンフィグデータを入力させ、これにより、画像処理部80,82,84,86のうち処理の変更対象となるものに対して論理仕様の再構成を行う。そして、次アドレスセット部118は、アドレスカウンタ66,70,74,78に対し、読み込むべき画像データのアドレスを通知する。
The
ここで、図4を用いて、メモリ16に格納された画像データについて説明する。画像データは、通常、一定の規則に基づいてメモリ16に順番に格納されている。しかし、画像処理では、必ずしも格納順に処理が行われるわけではない。また、画像データの各部分が不規則な順序で格納される場合もある。図示した例では、処理単位の画像データ120,122,124は、メモリ16においてアドレスが連続しない飛び飛びの位置に格納されているが、この順に処理が行われるように設定されている。
Here, the image data stored in the
各画像データはヘッダと処理データから構成される。例えば、画像データ120は、ヘッダ126と処理データ134からなり、ヘッダ126には、次アドレス128、取り込みデータ量130、処理の種類132についての情報が記録されている。次アドレス128は、この画像データ120の次に読み込まれるべき画像データ122が格納されたアドレスを表しており、取り込みデータ量は、次の画像データ122の大きさを示している。また、処理の種類132は、処理データ134に対して行うべき画像処理の種類を示したものである。
Each image data is composed of a header and processing data. For example, the
図5は、参考として、このような画像データに対する画像処理を、一つの画像処理部で実行する場合の流れを示したものである。処理では、まず、1単位分の画像データのヘッダをメモリ16から取り込んで(S10)、ヘッダの解釈を行う(S12)。次いで、ヘッダの「処理の種類」に基づいて画像処理の種類を決定し、コンフィグメモリ54に対して対応するコンフィグデータをロードする(S14)。さらに、次アドレスおよび取り込みデータ量の大きさが、スケジューラに記憶され、設定される(S16)。そして、画像処理がスタートすると(S18)、画像処理部は処理データを取り込んで(S20)、画像処理を実行する(S22)。一単位分の画像処理が終了すると、全単位(例えば1ページ)の処理が終了したか否かが確か判定され(S26)、終了(S28)、あるいは、次の単位に対する処理(S10)へと移行する。 For reference, FIG. 5 shows a flow when image processing for such image data is executed by one image processing unit. In the process, first, a header of one unit of image data is fetched from the memory 16 (S10), and the header is interpreted (S12). Next, the type of image processing is determined based on the “type of processing” in the header, and the corresponding configuration data is loaded into the configuration memory 54 (S14). Further, the next address and the size of the fetched data amount are stored and set in the scheduler (S16). When the image processing starts (S18), the image processing unit captures the processing data (S20) and executes the image processing (S22). When the image processing for one unit is completed, it is determined whether or not the processing for all units (for example, one page) has been completed (S26), and the processing is ended (S28) or the processing for the next unit (S10). Transition.
続いて、図6〜図9を用いて、リコンフィギュラブルプロセッサ52に、図3に示した4つの画像処理部80,82,84,86が設定されている場合の処理について説明する。
Next, processing when the four
図6は、画像処理部と画像データの関係を模式的に示した図である。プロセッサ56は、そのスケジューリング機能によって、まず、最初の画像データ130が、画像処理部80に取り込まれる。そして、プロセッサ56は、画像データ130のヘッダの「次アドレス」及び「取り込みデータ量」を、画像処理部82に対応するアドレスカウンタ70に設定する。画像処理部82では、設定された「次アドレス」及び「取り込みデータ量」に従って、画像データ132を入力する。また、画像データ132のヘッダの「次アドレス」及び「取り込みデータ量」は、画像処理部84に対応するアドレスカウンタ74に設定される。同様にして、画像処理部84では、設定された「次アドレス」及び「取り込みデータ量」に従って、画像データ134を入力し、画像データ134のヘッダの「次アドレス」及び「取り込みデータ量」は、画像処理部86のアドレスカウンタ78に設定される。さらに、画像処理部86では、設定された「次アドレス」及び「取り込みデータ量」に従って、画像データ136を入力する。そして、この画像データ136のヘッダの「次アドレス」及び「取り込みデータ量」は、処理の実行を終えた画像処理部のアドレスカウンタに対して設定されることになる。
FIG. 6 is a diagram schematically illustrating the relationship between the image processing unit and the image data. The
図7は、リコンフィギュラブルプロセッサ52に4つの画像処理部80,82,84,86が設定されている場合の処理の流れを説明するフローチャートである。処理では、まず、図6に説明したように、N=1〜4の4単位のヘッダの取り込みが行われ(S30)、アドレスカウンタ対するアドレスの設定と、再構成により画像処理部に対する処理の設定が行われる(S32)。画像処理部は、N単位目の処理データを取り込んで画像処理を開始する(S34)。また、プロセッサ56は、N+1単位目のヘッダ情報を取り込んで記憶する(S36)。終了検知部110は、いずれかの画像処理部における画像処理の終了を監視している(S38)。終了検知がなされると、次処理エリア判断部112が、次にどの画像処理をどのエリア(画像処理部)で行うか判断し、フローストップ発生部114が、全体のフロー、すなわちデータの流れとそれに対する演算を一時的に停止する(S40)。そして、次処理ロード部116は、終了した画像処理部を次の処理種類に変更し、残る画像処理部の処理種類は変更しない(あるいは、同じ論理仕様を構築する)ような部分的な再構成を実行する(S42)。さらに、次アドレスセット部118は、再構成した画像処理部に対応するアドレスカウンタに、N+1単位目のアドレスを設定する。この一連の処理は、全単位の処理が終了するまで繰り返される(S46)。
FIG. 7 is a flowchart illustrating a processing flow when four
図8,9は、画像処理部における画像処理が変更されていく例を示す図である。図8の例では、4つの画像処理部において処理A,B,C,Dの4つの処理が行われていたが、処理Bが終了することにより、フローがストップされて、処理Eへと変更されている。図9は、画像処理部80,82,84,86に設定される画像処理の種類の時間変化を示す図である。画像処理部80,82,84,86に対しては、最初、処理A,B,C,Dが設定されている。この中では、処理Bが最も早く終了しており、画像処理部82には再構成によって処理Eのための論理仕様が設定されている。続いて、処理Dが終了して処理Fに変更され、さらに、処理Aが終了して処理Gに変更されている。このように、順次、新しい処理への変更が行われているため、画像処理部80,82,84,86では、常に並列的な処理が行われている。なお、次のデータに対して、前と同じ処理を行う場合には、当然ながら、処理の変更をする必要はない。
8 and 9 are diagrams illustrating examples in which image processing in the image processing unit is changed. In the example of FIG. 8, four processes of processes A, B, C, and D are performed in the four image processing units. However, when the process B ends, the flow is stopped and changed to the process E. Has been. FIG. 9 is a diagram showing temporal changes in the types of image processing set in the
続いて、図10〜図13を用いて、画像処理部の大きさが変化する態様について説明する。 Next, an aspect in which the size of the image processing unit changes will be described with reference to FIGS.
図10は、図7に対応する図であり、この態様における処理の流れを説明する図である。この例では、初期には、リコンフィギュラブルプロセッサ52に4つの画像処理部が設定されていることを想定している。そこで、まず、メモリからN=1〜4単位目のヘッダが取り込まれる(S50)。そして、アドレスカウンタにアドレスを設定し、画像処理部に処理を設定する過程(S52)、N単位目の処理データを取り込み画像処理を開始する過程(S54)、及び、メモリからN+1単位目のヘッダを取り込む過程は、図7の場合と同様にして行われる。
FIG. 10 is a diagram corresponding to FIG. 7, and is a diagram for explaining the flow of processing in this mode. In this example, it is assumed that four image processing units are set in the
しかし、この例では、いずれかの処理の終了検知がなされた場合には(S58)、新しい処理を再構成できるか否かの判断が行われる(S60)。これは、新しい処理に必要なエリアが、終了した処理に用いていたエリアよりも広いか否かに基づいて判断される。そして、再構成できないと判断されたときには、次の処理終了を検知した場合に(S58)、再度新しい処理を再構成できるか否かの判断が下される(S60)。他方、新しい処理を再構成できる場合には、全体のフローをストップさせて(S62)、終了した画像処理を次の画像処理に再構成し(S64)、さらに、対応するアドレスカウンタにN+1単位目のアドレスを設定する(S66)。この一連の処理は、全単位の処理が終了するまで繰り返される(S68)。なお、ある画像処理が終了したことにより、新たに複数の画像処理を再設定できる場合には、複数の画像処理が設定されることになる。 However, in this example, when the end of any process is detected (S58), it is determined whether or not a new process can be reconfigured (S60). This is determined based on whether the area required for the new process is larger than the area used for the completed process. When it is determined that reconfiguration is not possible, when it is detected that the next process has been completed (S58), it is determined whether or not a new process can be reconfigured again (S60). On the other hand, if the new process can be reconfigured, the entire flow is stopped (S62), the completed image process is reconfigured to the next image process (S64), and the corresponding address counter is updated to the (N + 1) th unit. Is set (S66). This series of processing is repeated until the processing of all units is completed (S68). If a plurality of image processes can be newly set after a certain image process is completed, a plurality of image processes are set.
図11は、画像処理に必要なエリアの数を管理する処理エリアテーブルの例である。この例では、処理A〜Dについては1つのエリアが必要であり、処理Eについては3つのエリアが必要であり、処理Fについては2つのエリアが必要である旨が登録されている。この処理エリアテーブルは、図3に示した次処理エリア判断部112に格納されて、次の処理エリアの判断に用いられる。
FIG. 11 is an example of a processing area table that manages the number of areas required for image processing. In this example, it is registered that one area is necessary for the processes A to D, three areas are necessary for the process E, and two areas are necessary for the process F. This processing area table is stored in the next processing
図12は、画像処理の変遷を説明する模式図である。この例では、処理A,B,C,Dが実行されていたが、図12(a)に示す段階で、処理Bの終了が検知されている。そこで、図12(b)に示すように、処理Bに代わって処理Eの設定が検討されている。しかし、処理Bに要したエリアは1つであるのに対し、処理Eに要するエリアは3つであるために、処理Eを設定することができない。このため、処理Eを設定しないまま、残る処理が継続される。やがて、図12(c)に示すように、処理A,Cも終了する。そこで、図12(d)に示すように、処理A〜Cのエリアの再構成を行って、処理Eの設定を行っている。 FIG. 12 is a schematic diagram for explaining the transition of image processing. In this example, the processes A, B, C, and D are executed, but the end of the process B is detected at the stage shown in FIG. Therefore, as shown in FIG. 12B, setting of the process E instead of the process B is being studied. However, since the area required for the process B is one while the area required for the process E is three, the process E cannot be set. For this reason, the remaining process is continued without setting the process E. Eventually, as shown in FIG. 12C, processes A and C are also terminated. Therefore, as shown in FIG. 12D, the areas of the processes A to C are reconfigured and the process E is set.
図13は、図9に対応する図であり、リコンフィギュラブルプロセッサ52に設定される画像処理の種類の時間変化を示している。ここでは、最初、各一つのエリアを利用して設定された処理A〜Dが実行されている。次に実行される処理Fは、3つのエリアを必要としており、3つの処理A,B,Cの終了を待って設定されている。続いて処理Dが終了すると、一つのエリアを必要とする処理Gが設定されている。そして、処理Fの終了後には、各一つのエリアを必要とする処理H,I,Jが設定されている。
FIG. 13 is a diagram corresponding to FIG. 9 and shows temporal changes in the types of image processing set in the
以上の説明においては、画像データに対する画像処理について説明を行った。しかし、画像データの代わりに、文書データあるいは音声データなど様々な種類のデータを採用してもよい。 In the above description, image processing for image data has been described. However, various types of data such as document data or audio data may be employed instead of image data.
10 画像処理システム、11 画像処理装置、12 バス、14 CPU、16 メモリ、18 リコンフィギュラブル装置、20 UI、22 スキャナ、24 プリンタ、26 CDD、28 ネットワークインタフェース、30 ネットワーク、40 PC、50 バス、52 リコンフィギュラブルプロセッサ、54 コンフィグメモリ、56 プロセッサ、58 インタフェース、60,62 メモリ調停部、64、68,72,76 入力バッファ、66,70,74,78,90,94,98,102 アドレスカウンタ、80,82,84,86 画像処理部、88,92,96,100 出力バッファ、110 終了検知部、112 次処理エリア判断部、114 フローストップ発生部、116 次処理ロード部、118 次アドレスセット部、120,122,124、130,132,134,136 画像データ、126 ヘッダ、128 次アドレス、130 取り込みデータ量、132 処理の種類、134 処理データ。
10 image processing system, 11 image processing device, 12 bus, 14 CPU, 16 memory, 18 reconfigurable device, 20 UI, 22 scanner, 24 printer, 26 CDD, 28 network interface, 30 network, 40 PC, 50 bus, 52 reconfigurable processor, 54 configuration memory, 56 processor, 58 interface, 60, 62 memory arbitration unit, 64, 68, 72, 76 input buffer, 66, 70, 74, 78, 90, 94, 98, 102
Claims (4)
前記データ処理部におけるデータ処理の終了を監視する監視手段と、
前記監視手段の監視結果に基づいて、データの入力及びデータ処理の全体を一時的に停止させ、データ処理中のデータ処理部の論理仕様は再構成せず、処理を終了した1又は2以上のデータ処理部の論理仕様を再構成して、次のデータ処理を行う1又は2以上の新たなデータ処理部を設け、処理を終了した1又は2以上のデータ処理部の規模が新たなデータ処理部の規模よりも小さく、新たなデータ処理部を設けることができない場合には、処理中のデータ処理部の処理が終了するのを待って、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける再構成手段と、
を備え、
処理対象となるデータには、次に処理対象となるデータを特定するデータ特定情報と、当該処理対象となるデータに実行されるデータ処理の種類を特定する種類特定情報とが付加されており、
前記再構成手段は、データ特定情報に基づき次に処理対象となるデータを特定し、当該次に処理対象となるデータに付加されている種類特定情報を取得し、取得された前記種類特定情報に基づき、次に処理対象となるデータに対してデータ処理を実行する新たなデータ処理部の規模を判断し、処理を終了した1又は2以上のデータ処理部の規模が新たなデータ処理部の規模よりも小さく、新たなデータ処理部を設けることができない場合には、処理中のデータ処理部の処理が終了するのを待って、次のデータ処理を行う1又は2以上の新たなデータ処理部を設けることを特徴とするデータ処理装置。 A reconfigurable processing device in which a plurality of data processing units that perform data processing by separately inputting data from each other are provided by reconfiguration of logical specifications;
Monitoring means for monitoring the end of data processing in the data processing unit;
Based on the monitoring result of the monitoring means, the entire data input and data processing are temporarily stopped, the logical specification of the data processing unit during the data processing is not reconfigured, and the processing is completed. Reconfigure the logical specifications of the data processing unit to provide one or more new data processing units that perform the next data processing, and the scale of the one or more data processing units that have completed the processing is a new data processing If the size of the data processing unit is smaller than that of the data processing unit and a new data processing unit cannot be provided, the processing of the data processing unit being processed is completed and one or more new data processings are performed for the next data processing. Reconstruction means for providing a data processing unit;
Equipped with a,
The data to be processed is added with data specifying information for specifying the data to be processed next, and type specifying information for specifying the type of data processing to be performed on the data to be processed,
The reconfiguring means specifies data to be processed next based on the data specifying information, acquires type specifying information added to the data to be processed next, and acquires the type specifying information in the acquired type specifying information. Based on this, the scale of a new data processing unit that determines the size of a new data processing unit that performs data processing on the data to be processed next is determined, and the scale of one or more data processing units that have completed the processing is the scale of the new data processing unit. 1 or 2 or more new data processing units that perform the next data processing after waiting for the processing of the data processing unit being processed to end, when a new data processing unit cannot be provided. the data processing apparatus characterized by providing a.
前記再構成手段は、複数のデータ処理の実行優先順を特定する情報に基づいて、次のデータ処理を行う1又は2以上の新たなデータ処理部を設けることを特徴とするデータ処理装置。 The data processing apparatus according to claim 1,
The reconfiguring means includes one or more new data processing units for performing next data processing based on information for specifying execution priority order of a plurality of data processing.
処理対象となるデータは、画像データであり、
当該データ処理装置は、さらに、データ処理結果に基づいて画像表示出力または画像印刷出力を行う出力手段を備えることを特徴とするデータ処理装置。 The data processing apparatus according to claim 1 or 2 ,
The data to be processed is image data,
The data processing apparatus further comprises output means for performing image display output or image print output based on the data processing result.
前記データ処理部におけるデータ処理の終了を監視する監視手段と、
前記監視手段の監視結果に基づいて、データの入力及びデータ処理の全体を一時的に停止させ、データ処理中のデータ処理部の論理仕様は再構成せず、処理を終了した1又は2以上のデータ処理部の論理仕様を再構成して、次のデータ処理を行う1又は2以上の新たなデータ処理部を設け、処理を終了した1又は2以上のデータ処理部の規模が新たなデータ処理部の規模よりも小さく、新たなデータ処理部を設けることができない場合には、処理中のデータ処理部の処理が終了するのを待って、次のデータ処理を行う1又は2以上の新たなデータ処理部を設ける再構成手段、
として機能させ、
処理対象となるデータには、次に処理対象となるデータを特定するデータ特定情報と、当該処理対象となるデータに実行されるデータ処理の種類を特定する種類特定情報とが付加されており、
前記再構成手段は、データ特定情報に基づき次に処理対象となるデータを特定し、当該次に処理対象となるデータに付加されている種類特定情報を取得し、取得された前記種類特定情報に基づき、次に処理対象となるデータに対してデータ処理を実行する新たなデータ処理部の規模を判断し、処理を終了した1又は2以上のデータ処理部の規模が新たなデータ処理部の規模よりも小さく、新たなデータ処理部を設けることができない場合には、処理中のデータ処理部の処理が終了するのを待って、次のデータ処理を行う1又は2以上の新たなデータ処理部を設けることを特徴とするデータ処理プログラム。
A computer including a reconfigurable processing device in which a plurality of data processing units that perform data processing by separately inputting data from each other are provided by reconfiguration of logical specifications,
Monitoring means for monitoring the end of data processing in the data processing unit;
Based on the monitoring result of the monitoring means, the entire data input and data processing are temporarily stopped, the logical specification of the data processing unit during the data processing is not reconfigured, and the processing is completed. Reconfigure the logical specifications of the data processing unit to provide one or more new data processing units that perform the next data processing, and the scale of the one or more data processing units that have completed the processing is a new data processing If the size of the data processing unit is smaller than that of the data processing unit and a new data processing unit cannot be provided, the processing of the data processing unit being processed is completed and one or more new data processings are performed for the next data processing. Reconfiguration means for providing a data processing unit,
To function as,
The data to be processed is added with data specifying information for specifying the data to be processed next, and type specifying information for specifying the type of data processing to be performed on the data to be processed,
The reconfiguring means specifies data to be processed next based on the data specifying information, acquires type specifying information added to the data to be processed next, and acquires the type specifying information in the acquired type specifying information. Based on this, the scale of a new data processing unit that determines the size of a new data processing unit that performs data processing on the data to be processed next is determined, and the scale of one or more data processing units that have completed the processing is the scale of the new data processing unit. 1 or 2 or more new data processing units that perform the next data processing after waiting for the processing of the data processing unit being processed to end, when a new data processing unit cannot be provided. data processing program and providing a.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007303036A JP5277615B2 (en) | 2007-11-22 | 2007-11-22 | Data processing apparatus and data processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007303036A JP5277615B2 (en) | 2007-11-22 | 2007-11-22 | Data processing apparatus and data processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009129163A JP2009129163A (en) | 2009-06-11 |
JP5277615B2 true JP5277615B2 (en) | 2013-08-28 |
Family
ID=40820019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007303036A Expired - Fee Related JP5277615B2 (en) | 2007-11-22 | 2007-11-22 | Data processing apparatus and data processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5277615B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5355152B2 (en) * | 2009-03-10 | 2013-11-27 | 三菱電機株式会社 | Dynamic reconfiguration device |
JP5904148B2 (en) * | 2013-03-25 | 2016-04-13 | 富士ゼロックス株式会社 | Reconfigurable circuit, image forming apparatus, and program |
JP6598432B2 (en) * | 2014-06-24 | 2019-10-30 | キヤノン株式会社 | Image processing apparatus, control method thereof, and program |
JP6669961B2 (en) | 2015-12-24 | 2020-03-18 | 富士通株式会社 | Processor, control method of reconfigurable circuit, and program |
JP6864721B2 (en) * | 2019-08-08 | 2021-04-28 | キヤノン株式会社 | Information processing device and its control method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2891979B1 (en) * | 1998-02-06 | 1999-05-17 | 日本電気アイシーマイコンシステム株式会社 | Partially rewritable PLD |
JP3772569B2 (en) * | 1999-02-12 | 2006-05-10 | 富士ゼロックス株式会社 | Image processing apparatus and image processing method |
JP3684901B2 (en) * | 1999-03-02 | 2005-08-17 | 富士ゼロックス株式会社 | Information processing system |
JP2000311156A (en) * | 1999-04-27 | 2000-11-07 | Mitsubishi Electric Corp | Reconfigurable parallel computer |
JP3587095B2 (en) * | 1999-08-25 | 2004-11-10 | 富士ゼロックス株式会社 | Information processing equipment |
JP3707360B2 (en) * | 2000-06-27 | 2005-10-19 | 富士ゼロックス株式会社 | Circuit function reconfiguration method and programmable logic circuit device |
JP2004022724A (en) * | 2002-06-14 | 2004-01-22 | Konica Minolta Holdings Inc | Semiconductor integrated circuit device and method of constituting semiconductor integrated circuit |
JP3944639B2 (en) * | 2002-06-17 | 2007-07-11 | コニカミノルタホールディングス株式会社 | Programmable logic device |
JP3838367B2 (en) * | 2003-12-26 | 2006-10-25 | 東京エレクトロン株式会社 | Programmable logic circuit control device, programmable logic circuit control method, and program |
JP4737382B2 (en) * | 2004-03-09 | 2011-07-27 | セイコーエプソン株式会社 | Information processing system, information processing apparatus and management server, information processing apparatus control program and management server control program, information processing apparatus control method and management server control method |
-
2007
- 2007-11-22 JP JP2007303036A patent/JP5277615B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009129163A (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5259714B2 (en) | Execution order determination apparatus, execution order determination program, execution order determination circuit, and information processing apparatus | |
JP4861883B2 (en) | Image forming apparatus and application execution method | |
JP6208769B2 (en) | Method for providing a scalable computing fabric, computing device having scalable computing fabric, and printing device | |
JP5943736B2 (en) | Information processing apparatus, information processing apparatus control method, and program | |
JP5277615B2 (en) | Data processing apparatus and data processing program | |
JP5046801B2 (en) | Image processing apparatus and program | |
JP4640989B2 (en) | Image processing apparatus and image processing control method | |
JP2006268377A (en) | Program start-up controller and program start-up control method | |
JP4859103B2 (en) | Image forming apparatus | |
JP6157282B2 (en) | Image processing apparatus, information processing method, and program | |
US10037591B2 (en) | Information processing apparatus and method of controlling the same | |
JP2009080583A (en) | Information processor, parallel processing optimization system, and program | |
CN110741408A (en) | Image processing apparatus, image processing method, and image processing program | |
JP4952116B2 (en) | Arithmetic processing system, control program | |
JP5656000B2 (en) | Image forming apparatus and program thereof | |
JPH11122417A (en) | Picture formation system and information processor in the system and method for controlling the same | |
JP2010146055A (en) | Image processing apparatus, method and program | |
US10038806B2 (en) | Image forming apparatus, non-transitory computer readable recording medium, and information processing method | |
JP2007334419A (en) | Image processor, image processing system, and control program | |
JP2021010137A (en) | Image forming apparatus, method for forming the same, and program | |
JP5205843B2 (en) | Arithmetic processing device and arithmetic processing program | |
CN111290701A (en) | Data read-write control method, device, medium and electronic equipment | |
JP5652242B2 (en) | Data transfer control device and program | |
US20230195910A1 (en) | Information processing apparatus, control method of information processing apparatus, and storage medium | |
US8395630B2 (en) | Format conversion apparatus from band interleave format to band separate format |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101021 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130412 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130423 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130506 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5277615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |