JP2016110499A - データ処理装置およびデータ処理方法 - Google Patents

データ処理装置およびデータ処理方法 Download PDF

Info

Publication number
JP2016110499A
JP2016110499A JP2014249057A JP2014249057A JP2016110499A JP 2016110499 A JP2016110499 A JP 2016110499A JP 2014249057 A JP2014249057 A JP 2014249057A JP 2014249057 A JP2014249057 A JP 2014249057A JP 2016110499 A JP2016110499 A JP 2016110499A
Authority
JP
Japan
Prior art keywords
processing
data
programmable circuit
unit
processing unit
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.)
Granted
Application number
JP2014249057A
Other languages
English (en)
Other versions
JP6435826B2 (ja
Inventor
秀樹 杉本
Hideki Sugimoto
秀樹 杉本
晃弘 松岡
Akihiro Matsuoka
晃弘 松岡
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014249057A priority Critical patent/JP6435826B2/ja
Publication of JP2016110499A publication Critical patent/JP2016110499A/ja
Application granted granted Critical
Publication of JP6435826B2 publication Critical patent/JP6435826B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Advance Control (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】総合処理時間を短くする。【解決手段】データ処理装置は、処理対象となるデータを記憶する記憶部と、動作中に内部機能を部分的に再構成可能なプログラマブル回路と、プログラマブル回路の内部機能の再構成処理、および、プログラマブル回路の処理タイミングを制御する制御部とを備え、制御部は、プログラマブル回路に複数の処理部を構成して、記憶部に記憶されたデータに対して複数の処理を施す場合、何れか1つの処理部の実行中にプログラマブル回路の一部を他の処理部に再構成し、複数の処理部のそれぞれに個別の期間に処理を実行させる第1モード、または、複数の処理に先だってプログラマブル回路を複数の処理部に再構成するとともに複数の処理部を直列に接続し、複数の処理部を並行して動作させてストリーム処理を実行させる第2モードを、記憶部に記憶されたデータの処理時間に応じて切り替える。【選択図】図1

Description

本発明は、データ処理装置およびデータ処理方法に関する。
論理回路等の内部機能を自由に構成することができるFPGA(Field-Programmable Gate Array)またはPLD(Programmable Logic Device)等のプログラマブル回路が知られている。このようなプログラマブル回路は、例えば、内部に複数の処理部を構成し、これら複数の処理部を内部でシーケンシャルに接続することができる。これにより、このようなプログラマブル回路では、データを複数の処理部に順次に通過させて、データに複数の処理を施すことができる。
また、このようなプログラマブル回路では、動作中において、内部機能を部分的に再構成する技術も知られている。この技術を用いることにより、このようなプログラマブル回路によれば、データに複数の処理を施す場合、ある1つの処理部の動作中に、次以降に実行される処理部を再構成することができる(例えば特許文献1)。これにより、このようなプログラマブル回路によれば、処理の開始段階における再構成時間を短くすることができる。
しかしながら、ある1つの処理部の動作中に次以降に実行される処理部を再構成する場合、プログラマブル回路は、ある1つの処理部の処理結果データを一旦メモリに書き込み、次の処理部にメモリからデータを読み出して与えなければならない。このため、処理対象のデータが大きい場合、プログラマブル回路は、メモリとの間のデータ転送時間が長くなり、結果として、処理を開始してから最終的な処理結果が得られるまでの時間(総合処理時間)が長くなってしまっていた。
本発明は、上記に鑑みてなされたものであって、再構成時間およびデータの処理時間を含めた総合処理時間を短くすることができるデータ処理装置およびデータ処理方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係るデータ処理装置は、処理対象となるデータを記憶する記憶部と、動作中に内部機能を部分的に再構成可能なプログラマブル回路と、前記プログラマブル回路の内部機能の再構成処理、および、前記プログラマブル回路の処理タイミングを制御する制御部と、を備え、前記制御部は、前記プログラマブル回路に複数の処理部を構成して、前記記憶部に記憶された前記データに対して複数の処理を施す場合、何れか1つの処理部の実行中に前記プログラマブル回路の一部を他の処理部に再構成し、前記複数の処理部のそれぞれに個別の期間に処理を実行させる第1モード、または、前記複数の処理に先だって前記プログラマブル回路を前記複数の処理部に再構成するとともに前記複数の処理部を直列に接続し、前記複数の処理部を並行して動作させてストリーム処理を実行させる第2モードを、前記記憶部に記憶された前記データの処理時間に応じて切り替える。
本発明によれば、再構成時間およびデータの処理時間を含めた総合処理時間を短くすることができるという効果を奏する。
図1は、実施形態に係るカメラシステムを示す図である。 図2は、プログラマブル回路により構成される回路の一例を示す図である。 図3は、第1モードでの接続部の第1の期間の接続例を示す図である。 図4は、第1モードでの接続部の第2の期間の接続例を示す図である。 図5は、第2モードでの接続部の接続例を示す図である。 図6は、再構成時間の2倍(2×TC)がデータの処理時間(TP)と同一の場合の、第1処理部および第2処理部のタイムチャートである。 図7は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より長い場合の、第1処理部および第2処理部のタイムチャートである。 図8は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より短い場合の、第1処理部および第2処理部のタイムチャートである。 図9は、モードの選択処理を示すフローチャートである。 図10は、N個の処理部を構成する場合における、第1モードでの接続部の接続例を示す図である。 図11は、N個の処理部を構成する場合における、第2モードでの接続部の接続例を示す図である。
以下に、本発明に係る実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。
図1は、実施形態に係るカメラシステム10を示す図である。カメラシステム10は、カメラ20と、データ処理装置30とを備える。
カメラ20は、被写体を撮像して画像データを生成する。データ処理装置30は、プログラムを実行して、カメラ20により生成された画像データに対してデータ処理を実行する。
データ処理装置30は、CPU(Central Processing Unit)31と、記憶装置32と、RAM(Random Access Memory)33と、画像データ取得部34と、第1のDMA(Direct Memory Access)制御部35と、プログラマブル回路36と、第2のDMA制御部37とを有する。CPU31、記憶装置32、RAM33、第1のDMA制御部35および第2のDMA制御部37は、バスにより接続されている。
CPU31は、プログラムに従って演算処理および制御処理等を実行するプロセッサ等の制御部である。CPU31は、RAM33の所定領域を作業領域として記憶装置32等に予め記憶された各種プログラムとの協働により各種処理を実行する。
記憶装置32は、フラッシュメモリ等の半導体による記憶媒体、磁気的または光学的に記録可能な記憶媒体等の書き換え可能な記録装置である。記憶装置32は、プログラムおよび各種の設定情報等を記憶する。また、記憶装置32は、データ処理装置30により処理済みの画像データ等も記憶する。
RAM33は、SDRAM(Synchronous Dynamic Random Access Memory)等の記憶部である。RAM33は、CPU31により実行されるプログラムを記憶したり、CPU31の処理対象となるデータを記憶したりする。さらに、RAM33は、カメラ20により生成された画像データを記憶したり、プログラマブル回路36の処理対象となるデータを記憶したり、プログラマブル回路36による処理中または処理済みのデータを記憶したりする。
画像データ取得部34は、カメラ20により生成された画像データを取得する。第1のDMA制御部35は、CPU31の制御に応じて、画像データ取得部34が取得した画像データを、RAM33上のCPU31により指定されたアドレスへと書き込む。これにより、第1のDMA制御部35は、CPU31を介さずに、画像データ取得部34からRAM33へと画像データを転送することができる。
プログラマブル回路36は、例えば、FPGAおよびPLD等のCPU31により内部機能が構成される回路である。プログラマブル回路36は、一例として、論理回路またはALU(Arithmetic Logical Unit)等の論理演算回路を複数個含み、論理演算回路の入出力間がクロスバススイッチ等により接続切断が可能となっている。CPU31は、プログラマブル回路36に回路情報を与えて、プログラマブル回路36のそれぞれの論理演算回路の機能の設定および論理演算回路の間の接続関係の設定をすることができる。
ここで、プログラマブル回路36は、動作中に、内部機能を部分的に再構成可能である。プログラマブル回路36は、一例として、一部分の論理演算回路の動作中において、他の部分の論理演算回路の機能が設定可能となっている。これによりプログラマブル回路36は、少ない論理演算回路により複雑な演算を実行することができる。
第2のDMA制御部37は、CPU31の制御に応じて、RAM33上のCPU31により指定されたアドレスのデータを、プログラマブル回路36へと転送する。これにより、第2のDMA制御部37は、CPU31を介さずに、画像データのような大量のデータをストリーム順にプログラマブル回路36へと転送することができる。
また、第2のDMA制御部37は、CPU31の制御に応じて、プログラマブル回路36から出力されたデータを、RAM33上のCPU31により指定されたアドレスへと書き込むことができる。これにより、第2のDMA制御部37は、CPU31を介さずに、プログラマブル回路36から出力された画像データのような大量のデータをストリーム順にRAM33に書き込むことができる。
図2は、プログラマブル回路36により構成される回路の一例を示す図である。CPU31は、プログラマブル回路36の内部機能の再構成処理、および、プログラマブル回路36の処理タイミングを制御する。
CPU31は、プログラマブル回路36を用いて、RAM33に記憶されたデータに対して第1の処理を施して、次に第2の処理を施す場合、プログラマブル回路36に回路情報を与えて、図2に示すように機能させる。すなわち、CPU31は、プログラマブル回路36を、第1の処理を実行する第1処理部41−1と、第2の処理を実行する第2処理部41−2と、接続部42として機能させる。
この場合、CPU31は、第1のモードまたは第2モードの何れかにより、第1処理部41−1および第2処理部41−2の再構成処理、および、第1処理部41−1および第2処理部41−2の処理タイミングを制御する。
第1のモードでは、CPU31は、最初に、プログラマブル回路36の一部を第1処理を実行する第1処理部41−1に再構成し、第1処理部41−1の構成後に、第1処理部41−1による処理を開始させる。続いて、CPU31は、第1処理部41−1の実行中にプログラマブル回路36の他の部分を第2処理を実行する第2処理部41−2に再構成する。そして、CPU31は、第1処理部41−1が全てのデータについての処理を完了した後に、第2処理部41−2による処理を開始させる。
第2モードでは、CPU31は、最初に、第1の処理および第2の処理に先だって、プログラマブル回路36を第1処理部41−1および第2処理部41−2に再構成するとともに、第1処理部41−1の後段に第2処理部41−2を直列に接続するように接続部42を機能させる。そして、CPU31は、第1処理部41−1および第2処理部41−2を並行して動作させてストリーム処理を実行させる。
CPU31は、RAM33に記憶された処理対象のデータの処理時間に応じて、第1モードまたは第2モードを切り替える。CPU31は、一例として、RAM33に記憶された処理対象のデータのデータ量から処理時間を算出する。
図3は、第1モードでの接続部42の第1の期間の接続例を示す図である。第1モードでは、第1処理部41−1と第2処理部41−2とがそれぞれ別個の期間にデータ処理を実行する。ここで、第1処理部41−1が第1の処理を実行する期間を第1の期間、第2処理部41−2が第2の処理を実行する期間を第2の期間とする。
第1の期間において、CPU31は、図3に示すように、接続部42を機能させる。すなわち、第1の期間において、接続部42は、第2のDMA制御部37の出力端を第1処理部41−1の入力端に接続する。また、接続部42は、第1処理部41−1の出力端を第2のDMA制御部37の入力端に接続する。
そして、CPU31は、第1の期間において、第2のDMA制御部37に対して、RAM33上の指定されたアドレスから処理対象のデータを読み出して順次にプログラマブル回路36に転送する命令を与える。これとともに、CPU31は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定したアドレスに書き込む命令を与える。
CPU31から命令が与えられると、第2のDMA制御部37は、RAM33上の指定されたアドレスからデータを読み出してプログラマブル回路36へと出力する。第2のDMA制御部37から出力されたデータは、接続部42により第1処理部41−1に与えられる。第1処理部41−1は、接続部42から与えられたデータに対して順次に第1の処理を実行し、処理済みのデータを出力する。第1の処理が施されたデータは、接続部42により第2のDMA制御部37に与えられる。そして、第2のDMA制御部37は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定されたアドレスに書き込む。
図4は、第1モードでの接続部42の第2の期間の接続例を示す図である。第1処理部41−1が全てのデータについての処理を完了し、第1の処理が施されたデータがRAM33上に書き込まれた後、第2の処理を実行する第2の期間に移行する。
第2の期間において、CPU31は、図4に示すように、接続部42を機能させる。すなわち、第2の期間において、接続部42は、第2のDMA制御部37の出力端を第2処理部41−2の入力端に接続する。また、接続部42は、第2処理部41−2の出力端を第2のDMA制御部37の入力端に接続する。
そして、CPU31は、第2の期間において、第2のDMA制御部37に対して、RAM33上の指定されたアドレスから、第1の処理が施された後のデータを読み出して順次にプログラマブル回路36に転送する命令を与える。これとともに、CPU31は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定したアドレスに書き込む命令を与える。
CPU31から命令が与えられると、第2のDMA制御部37は、RAM33上の指定されたアドレスからデータを読み出してプログラマブル回路36へと出力する。第2のDMA制御部37から出力されたデータは、接続部42により第2処理部41−2に与えられる。第2処理部41−2は、接続部42から与えられたデータに対して順次に第2の処理を実行し、処理済みのデータを出力する。第2の処理が施されたデータは、接続部42により第2のDMA制御部37に与えられる。そして、第2のDMA制御部37は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定されたアドレスに書き込む。
以上のように、CPU31は、第1のモードにおいて、プログラマブル回路36に対して、第1処理部41−1が全てのデータについての処理を完了した後に、第2処理部41−2による処理を開始させることができる。
図5は、第2モードでの接続部42の接続例を示す図である。第2モードでは、第1処理部41−1と第2処理部41−2とが並行して動作してデータ処理を実行する。すなわち、第2モードでは、第1処理部41−1と第2処理部41−2とが同期間にデータ処理を実行する。
第2モードにおいて、CPU31は、図5に示すように、接続部42を機能させる。すなわち、第1モードにおいて、接続部42は、第2のDMA制御部37の出力端を第1処理部41−1の入力端に接続する。また、接続部42は、第1処理部41−1の出力端を第2処理部41−2の入力端に接続する。また、接続部42は、第2処理部41−2の出力端を第2のDMA制御部37の入力端に接続する。
そして、CPU31は、第2のDMA制御部37に対して、RAM33上の指定されたアドレスから処理対象のデータを読み出して順次にプログラマブル回路36に転送する命令を与える。これとともに、CPU31は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定したアドレスに書き込む命令を与える。
CPU31から命令が与えられると、第2のDMA制御部37は、RAM33上の指定されたアドレスからデータを読み出してプログラマブル回路36へと出力する。第2のDMA制御部37から出力されたデータは、接続部42により第1処理部41−1に与えられる。第1処理部41−1は、接続部42から与えられたデータに対して順次に第1の処理を実行し、処理済みのデータを出力する。第1の処理が施されたデータは、接続部42により第2処理部41−2に与えられる。
第2処理部41−2は、接続部42から与えられたデータに対して順次に第2の処理を実行し、処理済みのデータを出力する。第2の処理が施されたデータは、接続部42により第2のDMA制御部37に与えられる。そして、第2のDMA制御部37は、プログラマブル回路36から出力されたデータを順次にRAM33上の指定されたアドレスに書き込む。
以上のように、CPU31は、第2のモードにおいて、プログラマブル回路36に対して、第1処理部41−1および第2処理部41−2を並行して動作させてストリーム処理を実行させることができる。
図6〜図8は、第1モードおよび第2モードの、第1処理部41−1および第2処理部41−2のそれぞれのタイムチャートである。なお、図6は、再構成時間の2倍(2×TC)がデータの処理時間(TP)と同一の場合のタイムチャートである。図7は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より長い場合のタイムチャートである。図8は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より短い場合のタイムチャートである。
図6〜図8では、第1処理部41−1が動作している期間をP1、第2処理部41−2が動作している期間をP2と示す。また、第1処理部41−1を再構成している期間をC1、第2処理部41−2を再構成している期間をC2と示す。図7および図8においても同様である。
図6の(A)に示すように、第1モードにおいて、CPU31は、第1処理部41−1の動作期間P1に、第2処理部41−2を再構成する。また、CPU31は、第2処理部41−2の動作期間P2に第1処理部41−1を再構成する。
これにより、第1モードにおいて、データ処理装置30は、第1処理部41−1および第2処理部41−2の再構成期間を動作時間に重複させることができるので、第1処理部41−1および第2処理部41−2の再構成によりデータ処理ができなくなる期間を短くすることができる。
図6の(B)に示すように、第2モードにおいて、CPU31は、第1処理部41−1の動作期間P1および第1処理部41−1の動作期間P2に先だって、第1処理部41−1および第2処理部41−2を再構成する。
これにより、第2モードにおいて、データ処理装置30は、プログラマブル回路36とRAM33との間のデータ転送を1往復分で済ませることができるので、第1処理部41−1および第2処理部41−2がデータを処理している時間(合計の処理時間)を短くすることができる。
ここで、第1処理部41−1または第2処理部41−2の一方がRAM33に記憶された全てのデータを処理する時間を、処理時間TPとする。また、CPU31が第1処理部41−1または第2処理部41−2を再構成する時間を、再構成時間TCとする。なお、画像データのストリーム処理を実行する場合のように、第1処理部41−1および第2処理部41−2のパイプライン段数より、処理対象のデータ量のほうが十分に大きいことを前提としている。また、第1処理部41−1と第2処理部41−2との間の再構成時間の差よりも、第1処理部41−1および第2処理部41−2の再構成時間の方が十分に長いことを前提としている。
この場合、第1モードにおいて、第1処理部41−1がデータ処理を開始してから、第2処理部41−2がデータ処理を全て完了するまでの時間、つまり、再構成時間およびデータの処理時間を含めた総合処理時間T1は、再構成時間の2倍(2×TC)、または、データの処理時間の2倍(2×TP)の何れか長い方となる。
また、第2モードにおいて、総合処理時間T2は、データの処理時間と再構成時間の2倍とを加算した時間(TP+(2×TC))となる。
このため、図7に示すように、再構成時間の2倍(2×TC)がデータの処理時間(TP)より長い場合には、第1モードの総合処理時間T1(図7の(A))の方が、第2モードの総合処理時間T2(図7の(B))より短くなる。従って、CPU31は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より長い場合には、第1モードを選択する。
一方、図8に示すように、再構成時間の2倍(2×TC)がデータの処理時間(TP)より短い場合、第2モードの総合処理時間T2(図8の(B))の方が、第1モードの総合処理時間T1(図7の(A))より短くなる。従って、CPU31は、再構成時間の2倍(2×TC)がデータの処理時間(TP)より短い場合には、第2モードを選択する。
なお、再構成時間の2倍(2×TC)とデータの処理時間(TP)とが同一の場合、CPU31は、第1モードまたは第2モードの何れを選択してもよい。本実施形態においては、再構成時間の2倍(2×TC)とデータの処理時間(TP)とが同一の場合、CPU31は、第2モードを選択する。
図9は、モードの選択処理を示すフローチャートである。CPU31は、プログラマブル回路36に処理を実行させる場合、図9に示すフローチャートに示す処理を実行してモードを選択する。
まず、CPU31は、RAM33に記憶されている処理対象のデータのデータ量を取得する(S11)。続いて、CPU31は、RAM33に記憶されている処理対象のデータのデータ量に基づき、処理時間TPを算出する(S12)。
例えば、CPU31は、データのビット幅とプログラマブル回路36のビット幅とが同一であり、且つ、プログラマブル回路36がパイプライン化されている回路である場合、データ量と第1処理部41−1および第2処理部41−2のパイプライン段数とを加算した値を、プログラマブル回路36のクロックで除算した時間を、データの処理時間TPとして算出する。例えば、CPU31は、処理対象のデータが静止画像の画像データである場合、画素数をデータ量としてもよい。
続いて、CPU31は、再構成時間の2倍(2×TC)とデータの処理時間(TP)との大きさを比較する(S13)。再構成時間は、一例として、予め登録された値である。また、CPU31は、第1処理部41−1および第2処理部41−2の回路規模等に基づき再構成時間を算出してもよい。
再構成時間の2倍(2×TC)がデータの処理時間(TP)より大きい場合(S13の真)、CPU31は、第1モードを選択する(S14)。また、再構成時間の2倍(2×TC)がデータの処理時間(TP)以下の場合(S13の偽)、CPU31は、第2モードを選択する(S15)。そして、CPU31は、モードの選択を終了すると、プログラマブル回路36に選択したモードで処理を実行させる。
図10は、N個の処理部を構成する場合における、第1モードでの接続部42の接続例を示す図である。CPU31は、プログラマブル回路36を用いて、RAM33に記憶されたデータに対して、3以上の複数の処理を施させてもよい。例えば、CPU31は、N個(3以上)の処理を実行させる場合、プログラマブル回路36を、第1処理部41−1から第N処理部41−Nまでの複数の処理部と、接続部42として機能させる。
そして、第1モードにおいては、CPU31は、複数の処理部のそれぞれに個別の期間に処理を実行させる。具体的には、図10に示すように、CPU31は、第1処理部41−1から第N処理部41−Nを順次に選択して、選択したそれぞれの処理部にRAM33に記憶されたデータを転送して処理させる。また、第1モードにおいては、CPU31は、何れか1つの処理部の実行中に、プログラマブル回路36の一部を他の処理部に再構成する。
図11は、N個の処理部を構成する場合における、第2モードでの接続部42の接続例を示す図である。また、第2モードにおいては、CPU31は、複数の処理部を並行して動作させてストリーム処理を実行させる。具体的には、図11に示すように、CPU31は、第1処理部41−1から第N処理部41−Nまでを直列に接続させて、第1処理部41−1から第N処理部41−Nまでのそれぞれを並行して動作させてストリーム処理を実行させる。また、第2モードにおいては、CPU31は、複数の処理に先だって、プログラマブル回路36を複数の処理部に再構成するとともに複数の処理部を直列に接続する。
なお、CPU31は、複数の処理部の再構成時間の合計と、データの処理時間との大きさを比較して、第1モードまたは第2モードを選択する。例えば、N個の処理部を構成する場合には、CPU31は、再構成時間のN倍(N×TC)がデータの処理時間(TP)より大きい場合には、第1モードを選択し、再構成時間のN倍(N×TC)がデータの処理時間(TP)より短い場合には、第2モードを選択する。
以上のように、本実施形態に係るデータ処理装置30は、プログラマブル回路36に複数の処理部を構成してデータ処理を実行させる場合に、データの処理時間に応じて第1モードまたは第2モードを選択する。これにより、本実施形態に係るデータ処理装置30によれば、効率の良いタイミングで再構成をすることができ、再構成時間およびデータの処理時間を含めた総合処理時間を短くすることができる。
以上、本発明の実施形態を説明したが、実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能である。
10 カメラシステム
20 カメラ
30 データ処理装置
31 CPU
32 記憶装置
33 RAM
34 画像データ取得部
35 第1のDMA制御部
36 プログラマブル回路
37 第2のDMA制御部
41−1 第1処理部
41−2 第2処理部
41−N 第N処理部
42 接続部
特許第3832557号公報

Claims (8)

  1. 処理対象となるデータを記憶する記憶部と、
    動作中に内部機能を部分的に再構成可能なプログラマブル回路と、
    前記プログラマブル回路の内部機能の再構成処理、および、前記プログラマブル回路の処理タイミングを制御する制御部と、
    を備え、
    前記制御部は、
    前記プログラマブル回路に複数の処理部を構成して、前記記憶部に記憶された前記データに対して複数の処理を施す場合、
    何れか1つの処理部の実行中に前記プログラマブル回路の一部を他の処理部に再構成し、前記複数の処理部のそれぞれに個別の期間に処理を実行させる第1モード、または、
    前記複数の処理に先だって前記プログラマブル回路を前記複数の処理部に再構成するとともに前記複数の処理部を直列に接続し、前記複数の処理部を並行して動作させてストリーム処理を実行させる第2モードを、
    前記記憶部に記憶された前記データの処理時間に応じて切り替える
    データ処理装置。
  2. 前記プログラマブル回路を用いて、前記記憶部に記憶された前記データに対して第1の処理を施して、次に第2の処理を施す場合、
    前記第1モードでは、前記プログラマブル回路の一部を前記第1処理を実行する第1処理部に再構成し、前記第1処理部の実行中に前記プログラマブル回路の他の部分を前記第2処理を実行する第2処理部に再構成し、前記第1処理部が全てのデータについての処理を完了した後に、前記第2処理部による処理を開始させ、
    前記第2モードでは、前記第1の処理および前記第2の処理に先だって前記プログラマブル回路を前記第1処理部および前記第2処理部に再構成するとともに前記第1処理部の後段に前記第2処理部を直列に接続し、前記第1処理部および前記第2処理部を並行して動作させてストリーム処理を実行させる
    請求項1に記載のデータ処理装置。
  3. 前記制御部は、再構成時間の2倍が前記データの処理時間より長い場合には、前記第1モードを選択し、再構成時間の2倍が前記データの処理時間より短い場合には、前記第2モードを選択する
    請求項2に記載のデータ処理装置。
  4. 前記制御部は、前記記憶部に記憶された前記データのデータ量に基づき、前記データの処理時間を算出する
    請求項3に記載のデータ処理装置。
  5. 前記制御部は、前記データのビット幅と前記プログラマブル回路のビット幅とが同一であり、且つ、前記プログラマブル回路がパイプライン化されている回路である場合、前記データ量と前記第1処理部および前記第2処理部のパイプライン段数とを加算した値を、前記プログラマブル回路のクロックで除算した時間を、前記データの処理時間として算出する
    請求項4に記載のデータ処理装置。
  6. 前記データは、画像データである
    請求項1から5の何れか1項に記載のデータ処理装置。
  7. 前記プログラマブル回路は、FPGAまたはPLDである
    請求項1から6の何れか1項に記載のデータ処理装置。
  8. 処理対象となるデータを記憶する記憶部と、
    動作中に内部機能を部分的に再構成可能なプログラマブル回路と、
    前記プログラマブル回路の内部機能の再構成処理、および、前記プログラマブル回路の処理タイミングを制御する制御部と、
    を備えるデータ処理装置でのデータ処理方法であって、
    前記制御部は、
    前記プログラマブル回路に複数の処理部を構成して、前記記憶部に記憶された前記データに対して複数の処理を施す場合、
    何れか1つの処理部の実行中に前記プログラマブル回路の一部を他の処理部に再構成し、前記複数の処理部のそれぞれに個別の期間に処理を実行させる第1モード、または、
    前記複数の処理に先だって前記プログラマブル回路を前記複数の処理部に再構成するとともに前記複数の処理部を直列に接続し、前記複数の処理部を並行して動作させてストリーム処理を実行させる第2モードを、
    前記記憶部に記憶された前記データの処理時間に応じて切り替える
    データ処理方法。
JP2014249057A 2014-12-09 2014-12-09 データ処理装置およびデータ処理方法 Active JP6435826B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014249057A JP6435826B2 (ja) 2014-12-09 2014-12-09 データ処理装置およびデータ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014249057A JP6435826B2 (ja) 2014-12-09 2014-12-09 データ処理装置およびデータ処理方法

Publications (2)

Publication Number Publication Date
JP2016110499A true JP2016110499A (ja) 2016-06-20
JP6435826B2 JP6435826B2 (ja) 2018-12-12

Family

ID=56124427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014249057A Active JP6435826B2 (ja) 2014-12-09 2014-12-09 データ処理装置およびデータ処理方法

Country Status (1)

Country Link
JP (1) JP6435826B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018142046A (ja) * 2017-02-27 2018-09-13 富士通株式会社 情報処理装置、pld管理プログラム及びpld管理方法
JP2018206195A (ja) * 2017-06-07 2018-12-27 日本電信電話株式会社 演算システム、演算システムの制御方法およびプログラム
JP2019193189A (ja) * 2018-04-27 2019-10-31 Necソリューションイノベータ株式会社 回路再構成装置、制御方法、及び制御プログラム
CN115062329A (zh) * 2022-08-09 2022-09-16 深圳致星科技有限公司 隐私计算、隐私数据和联邦学习的流水计算装置及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011186981A (ja) * 2010-03-11 2011-09-22 Fuji Xerox Co Ltd データ処理装置
JP2011198085A (ja) * 2010-03-19 2011-10-06 Fuji Xerox Co Ltd 画像処理装置、画像形成システム及び画像処理プログラム
JP2011203920A (ja) * 2010-03-25 2011-10-13 Fuji Xerox Co Ltd データ処理装置
JP2012133675A (ja) * 2010-12-22 2012-07-12 Olympus Corp 画像処理装置
JP2013009044A (ja) * 2011-06-22 2013-01-10 Ricoh Co Ltd 制御装置、処理装置、処理システム、制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011186981A (ja) * 2010-03-11 2011-09-22 Fuji Xerox Co Ltd データ処理装置
JP2011198085A (ja) * 2010-03-19 2011-10-06 Fuji Xerox Co Ltd 画像処理装置、画像形成システム及び画像処理プログラム
JP2011203920A (ja) * 2010-03-25 2011-10-13 Fuji Xerox Co Ltd データ処理装置
JP2012133675A (ja) * 2010-12-22 2012-07-12 Olympus Corp 画像処理装置
JP2013009044A (ja) * 2011-06-22 2013-01-10 Ricoh Co Ltd 制御装置、処理装置、処理システム、制御プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018142046A (ja) * 2017-02-27 2018-09-13 富士通株式会社 情報処理装置、pld管理プログラム及びpld管理方法
JP2018206195A (ja) * 2017-06-07 2018-12-27 日本電信電話株式会社 演算システム、演算システムの制御方法およびプログラム
JP2019193189A (ja) * 2018-04-27 2019-10-31 Necソリューションイノベータ株式会社 回路再構成装置、制御方法、及び制御プログラム
JP7136436B2 (ja) 2018-04-27 2022-09-13 Necソリューションイノベータ株式会社 回路再構成装置、制御方法、及び制御プログラム
CN115062329A (zh) * 2022-08-09 2022-09-16 深圳致星科技有限公司 隐私计算、隐私数据和联邦学习的流水计算装置及方法
CN115062329B (zh) * 2022-08-09 2022-12-20 深圳致星科技有限公司 隐私计算、隐私数据和联邦学习的流水计算装置及方法

Also Published As

Publication number Publication date
JP6435826B2 (ja) 2018-12-12

Similar Documents

Publication Publication Date Title
EP3404587B1 (en) Cnn processing method and device
JP5504985B2 (ja) データ処理装置
JP6435826B2 (ja) データ処理装置およびデータ処理方法
JP5994679B2 (ja) 処理装置、及び処理装置の制御方法
JP2013092517A5 (ja)
US10374605B2 (en) Logical elements with switchable connections in a reconfigurable fabric
JP2009271724A (ja) ハードウェアエンジン制御装置
JP2016103755A (ja) 情報処理装置、情報処理装置を備えた画像処理装置、その制御方法及びプログラム
JP6816380B2 (ja) 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体
JP4753895B2 (ja) 遅延調整回路を有するアレイ型プロセッサ
JP4809497B2 (ja) 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ
JP6111680B2 (ja) 信号処理装置およびプログラマブルロジックデバイスの構成方法
JP2017184049A5 (ja) 画像処理装置、その制御方法、及びプログラム
JP2015230619A (ja) データ処理装置
US20150293766A1 (en) Processor and method
US20180341231A1 (en) Method for Operating a Cyclically Operating Automation Controller, Automation Controller and Engineering System
JP2008060714A (ja) 情報処理システム
JP2009182438A (ja) 再構成論理回路装置および回路切替制御方法
US20190347030A1 (en) Calculation processing apparatus and information processing system
US20230385102A1 (en) Hardware event triggered pipeline control
JP2013125288A (ja) データ処理装置及びデータ処理方法
JPWO2017188416A1 (ja) 回路装置、回路書き換え方法、及びプログラム
JP2015185129A (ja) データ処理装置
JP2015091045A (ja) プログラマブルロジックデバイスおよびこれを用いたコンピュータ
JP2016015710A (ja) プログラマブルロジックデバイス及びプログラマブルロジックデバイスのコンフィギュレーション方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181002

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: 20181016

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181029

R151 Written notification of patent or utility model registration

Ref document number: 6435826

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151