JP2013098823A - Information processing apparatus and arithmetic processing method - Google Patents

Information processing apparatus and arithmetic processing method Download PDF

Info

Publication number
JP2013098823A
JP2013098823A JP2011241016A JP2011241016A JP2013098823A JP 2013098823 A JP2013098823 A JP 2013098823A JP 2011241016 A JP2011241016 A JP 2011241016A JP 2011241016 A JP2011241016 A JP 2011241016A JP 2013098823 A JP2013098823 A JP 2013098823A
Authority
JP
Japan
Prior art keywords
configuration data
information
function
accelerator
arithmetic processing
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
JP2011241016A
Other languages
Japanese (ja)
Inventor
Yoshihisa Oguro
慶久 大黒
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 JP2011241016A priority Critical patent/JP2013098823A/en
Publication of JP2013098823A publication Critical patent/JP2013098823A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

PROBLEM TO BE SOLVED: To streamline arithmetic processing by an accelerator and save energy by optimizing the configuration of a programmable device in accordance with a function of arithmetic processing by the accelerator.SOLUTION: An information processing apparatus for executing arithmetic processing by means of an accelerator 200 having a programmable device 220 configurable or reconfigurable with configuration data is provided which includes: a data selection section 120 for selecting information on configuration data depending on a function of arithmetic processing from a region storing a plurality of function-specific configuration data; and a data transfer section 125 for transferring the selected information on configuration data to the accelerator 200.

Description

本発明は、情報処理装置及び演算処理方法に関する。   The present invention relates to an information processing apparatus and an arithmetic processing method.

従来から、FPGA(Field−Programmable Gate Array)などに代表されるプログラマブルなデバイスを有するアクセラレータを用いて、アクセラレータとホスト機器側のCPUとを連携することにより処理速度を向上させる方法が提案されている。プログラマブルデバイスはその構成を可変に設定できる集積回路であるため、その性質を利用して省電力を図るアクセラレータの利用方法も提案されている。たとえば、特許文献1には、アクセラレータにおいて、動作周波数及び電圧を変更するだけでなく、クロック信号及び電力供給を停止することによって、アクセラレータ動作時の省電力化を図る技術が提案されている。   Conventionally, a method has been proposed in which an accelerator having a programmable device represented by an FPGA (Field-Programmable Gate Array) or the like is used to improve the processing speed by linking the accelerator and the CPU on the host device side. . Since a programmable device is an integrated circuit whose configuration can be variably set, a method of using an accelerator that saves power by utilizing its properties has been proposed. For example, Patent Document 1 proposes a technique for reducing power consumption during accelerator operation by not only changing the operating frequency and voltage but also stopping the clock signal and power supply in the accelerator.

しかしながら、特許文献1では、アクセラレータ動作時の省電力化を実現するために、ハードウエア回路の駆動周波数や駆動電圧を変化させているため、駆動周波数や駆動電圧を下げると処理速度が下がり、アクセラレータの処理能力を低下させる結果となる。よって、特許文献1では、高速処理を犠牲にすることなく省電力化を実現することができない。また、そもそもアクセラレータは高速処理の実現を目的とした機器であるため、高速処理を犠牲にすることは望ましくない。   However, in Patent Document 1, since the driving frequency and driving voltage of the hardware circuit are changed in order to realize power saving during the operation of the accelerator, the processing speed decreases when the driving frequency and driving voltage are lowered, and the accelerator is reduced. As a result, the processing capacity of the system is reduced. Therefore, Patent Document 1 cannot achieve power saving without sacrificing high-speed processing. In the first place, since the accelerator is a device intended to realize high-speed processing, it is not desirable to sacrifice high-speed processing.

上記課題に鑑み、本発明の目的とするところは、アクセラレータで演算処理される機能に応じてプログラマブルデバイスの構成を適正化することが可能な情報処理装置及び演算処理方法を提供することにある。   In view of the above problems, an object of the present invention is to provide an information processing apparatus and an arithmetic processing method capable of optimizing the configuration of a programmable device according to a function that is arithmetically processed by an accelerator.

本発明の一の態様によれば、コンフィギュレーションデータにより構成又は再構成可能なプログラマブルデバイスを有するアクセラレータを使用して演算処理を実行する情報処理装置であって、前記コンフィギュレーションデータが機能別に複数格納された領域内から前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択するデータ選択部と、前記選択されたコンフィギュレーションデータに関する情報を前記アクセラレータに転送するデータ転送部と、を備える情報処理装置が提供される。   According to one aspect of the present invention, there is provided an information processing apparatus that performs arithmetic processing using an accelerator having a programmable device that can be configured or reconfigured by configuration data, and a plurality of the configuration data is stored by function. An information processing unit comprising: a data selection unit that selects information related to configuration data according to the function of the arithmetic processing from within the selected region; and a data transfer unit that transfers information related to the selected configuration data to the accelerator An apparatus is provided.

本発明によれば、アクセラレータで演算処理される機能に応じてプログラマブルデバイスの構成を適正化することにより、アクセラレータによる演算処理の効率化と省エネを図ることができる。   According to the present invention, by optimizing the configuration of the programmable device in accordance with the function that is processed by the accelerator, it is possible to improve the efficiency of the processing by the accelerator and save energy.

オンチップパワーゲーティングの原理説明図。An explanatory diagram of the principle of on-chip power gating. オンチップパワーゲーティングによる電力削減効果を示した図。The figure which showed the power reduction effect by on-chip power gating. リコンフィギュラブルプロセッサにおける省電力の説明図。Explanatory drawing of the power saving in a reconfigurable processor. 一般的なアクセラレータの構成図。The block diagram of a general accelerator. 一実施形態に係るホスト機器及びアクセラレータの構成図。1 is a configuration diagram of a host device and an accelerator according to an embodiment. FIG. 一実施形態に係るホスト機器及びアクセラレータの動作を示すフローチャート。The flowchart which shows operation | movement of the host apparatus and accelerator which concern on one Embodiment. 図6の演算処理を示すフローチャート。The flowchart which shows the arithmetic processing of FIG. ホスト機器側で利用するソフトウエアとアクセラレータ側で利用するコンフィギュレーションデータとを管理する一例。An example of managing software used on the host device side and configuration data used on the accelerator side. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data. ソフトウエアとコンフィギュレーションデータとを管理する他の例。Another example of managing software and configuration data.

以下、本発明の好適な実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described with reference to the accompanying drawings. In addition, in this specification and drawing, about the component which has the substantially same function structure, the duplicate description is abbreviate | omitted by attaching | subjecting the same code | symbol.

<はじめに>
CPUのような汎用プロセッサは、ソフトウエアによって様々な処理をさせることができる柔軟性がある一方、高速処理を実現するには高い動作周波数を必要とし、消費電力が高くかつ発熱量も多い。これに対して、ハードウエアで構成された専用回路は、低い消費電力で高い性能が発揮できるが、CPUほどの柔軟性がない。そこで従来から高性能の専用回路をアクセラレータとし、CPU処理の一部をアクセラレータが代行することによって、高速処理を実現する方法が提案されている。
<Introduction>
A general-purpose processor such as a CPU is flexible so that various processes can be performed by software. On the other hand, a high operating frequency is required to realize high-speed processing, power consumption is high, and heat generation is large. On the other hand, a dedicated circuit configured with hardware can exhibit high performance with low power consumption, but is not as flexible as a CPU. Therefore, conventionally, a method has been proposed in which a high-performance dedicated circuit is used as an accelerator, and the accelerator performs a part of the CPU processing to realize high-speed processing.

ところで半導体チップの総消費電力は大まかに以下の式(1)で求められる。   By the way, the total power consumption of the semiconductor chip is roughly obtained by the following equation (1).

半導体チップの総消費電力=ダイナミック消費電力+リーク電力・・・(1)
ダイナミック消費電力は、チップ上のゲートやトランジスタが動作する際に消費する電力である。リーク電力とは、リーク電流によってトランジスタが無駄に消費している電力である。
Total power consumption of semiconductor chip = dynamic power consumption + leakage power (1)
Dynamic power consumption is power consumed when a gate or a transistor on a chip operates. Leakage power is power that is consumed by a transistor due to leakage current.

半導体チップの加工プロセスの微細化が進み、現在、LSIの消費電力の半分はリーク電力である。リーク電力は、回路が動作していなくても通電しているだけで消費する電力であり、処理速度には無関係である。言い換えると、仮にリーク電力が理想的に0になったとしても処理速度は落ちない。よって、処理速度を維持したまま省電力化を図るには、リーク電力の削減に注目するべきである。   With the progress of miniaturization of semiconductor chip processing, currently, half of the power consumption of LSI is leak power. Leakage power is power consumed only by energization even when the circuit is not operating, and is independent of the processing speed. In other words, even if the leakage power becomes ideally 0, the processing speed does not decrease. Therefore, in order to save power while maintaining the processing speed, attention should be paid to reducing leakage power.

リーク電力を削減するには通電するトランジスタの数自体を減ずる必要があり、その実現手段のひとつとしてパワーゲーティング技術がある。パワーゲーティング技術は、予め各ブロックの電源供給ラインを分離しておき、半導体チップ外もしくは半導体チップ内に設けた電源供給ライン毎のスイッチを切断することで、該当ブロックのリーク電流をも削減する方法である。   In order to reduce the leakage power, it is necessary to reduce the number of transistors to be energized, and one of means for realizing it is a power gating technique. Power gating technology is a method of reducing the leakage current of a corresponding block by separating the power supply lines of each block in advance and cutting off the switch for each power supply line provided outside or inside the semiconductor chip. It is.

一方、アクセラレータに搭載するデバイスとして、動的に再構成可能なプログラマブルなデバイス(リコンフィギュラブルプロセッサ)を用いれば、電源遮断することなく、機能の動作ごとにアクセラレータの回路構成を変更できる。これによれば、通電する回路規模も変更できるため、回路規模を小さくすれば通電するトランジスタ数を減じることができ、リーク電力を抑えることができる。   On the other hand, if a programmable device (reconfigurable processor) that can be dynamically reconfigured is used as a device mounted on the accelerator, the circuit configuration of the accelerator can be changed for each operation of the function without shutting off the power. According to this, since the circuit scale to be energized can be changed, the number of transistors to be energized can be reduced if the circuit scale is reduced, and the leakage power can be suppressed.

後述する本発明の一実施形態によれば、動的に再構成できるプログラマブルなデバイスを用いて、処理に必要な部分のみに通電するよう回路規模を変化させる。これにより、高速処理を維持したまま、リーク電力を抑えて省電力を実現できる。省電力化にともない発熱も抑えられるので廃熱に必要な冷却処理の負担も軽減でき、システム全体としての省電力化も図られる。   According to an embodiment of the present invention to be described later, the circuit scale is changed so that only a portion necessary for processing is energized using a programmable device that can be dynamically reconfigured. As a result, it is possible to achieve power saving by suppressing leakage power while maintaining high-speed processing. Since heat generation can be suppressed with power saving, the burden of cooling processing required for waste heat can be reduced, and power saving for the entire system can be achieved.

加えて、アクセラレータと連携するホスト機器100本体の性能(CPU他)に応じて、アクセラレータ内の回路構成を変えることによって、本体とアクセラレータとの処理分担を最適にし、総合的な処理性能(処理時間と消費電力とのバランス)を高めることができる。   In addition, by changing the circuit configuration in the accelerator according to the performance of the host device 100 main body (CPU and others) that cooperates with the accelerator, the processing sharing between the main body and the accelerator is optimized, and the total processing performance (processing time) And balance of power consumption).

さらに、アクセラレータの利用においては、高速化を目的とした構成と、省電力化を目的とした構成との2つを目的別に使い分けることによって、生産性を維持した上で低消費電力を実現することができる。例えば、アクセラレータにより実行される演算処理には、より一層の高速化が必要な処理と高速化よりは低消費電力化が望まれる処理とが存在する。例えば、スキャナやコピー、プリンタ、ファクシミリなどを1台の機器にまとめた複合機(以下、MFP:Multifunction Printerと呼ぶ。)の処理に関して言えば、コピー処理やプリント処理は、1データから複数部数を指定されることが多い処理であり、使用者がMFPの前で待たねばならない場面が多いゆえに、より一層の高速化が求められる。これに対して、スキャン処理やファクシミリ受信及び送信は、1データから複数部数の具体物を作成する必要はない。スキャン処理の場合、具体物である紙を入力してしまえば、処理結果は電子データとして使用者の手元の機器に送信されるから、後段の処理の完了を待つことなく、MFPの前を離れることができる。ファクシミリの場合、送信処理はスキャン処理と同様であるし、受信処理は使用者に待たれることなく完了することが多く、受信し終わった後に、紙やデータを使用者が目にする。   Furthermore, in using accelerators, low power consumption can be achieved while maintaining productivity by using two different configurations, one for speeding up and the other for power saving. Can do. For example, arithmetic processing executed by an accelerator includes processing that requires higher speed and processing that requires lower power consumption than speedup. For example, with regard to the processing of a multifunction peripheral (hereinafter referred to as MFP: Multifunction Printer) that combines a scanner, a copy, a printer, a facsimile, and the like into a single device, copy processing and print processing can be performed from one data to multiple copies. Since this process is often specified and there are many scenes in which the user has to wait in front of the MFP, higher speed is required. In contrast, scan processing, facsimile reception, and transmission do not require creation of a plurality of copies from one data. In the case of scan processing, if paper, which is a specific object, is input, the processing result is transmitted as electronic data to the user's device, so the user leaves the MFP without waiting for the completion of the subsequent processing. be able to. In the case of a facsimile, the transmission process is the same as the scan process, and the reception process is often completed without waiting for the user, and the user sees paper and data after the reception is completed.

よって、コピー処理やプリント処理は、高速化を目的とした構成にプログラマブルデバイスを変更し、スキャン処理やファクシミリの処理は、省電力化を目的とした構成にプログラマブルデバイスを変更することによって、生産性を維持した上で低消費電力を実現することができる。   Therefore, productivity can be improved by changing the programmable device to a configuration aimed at speeding up copy processing and print processing, and changing the programmable device to a configuration aimed at power saving in scanning processing and facsimile processing. Low power consumption can be realized while maintaining the above.

[オンチップパワーゲーディングの原理及び電力削減効果]
ここで、オンチップパワーゲーディングの一般的な原理について、図1を参照しながら説明する。図1は、半導体チップの省電力手段のひとつであるオンチップパワーゲーディングの原理図である。図1の左側は、通常の半導体チップの設計を示す。通常の半導体チップでは、論理回路は常に通電し、通電している論理回路の全範囲においてリーク電力が発生している。
[Principle of on-chip power gating and power reduction effect]
Here, the general principle of on-chip power gating will be described with reference to FIG. FIG. 1 is a principle diagram of on-chip power gating, which is one of power saving means for a semiconductor chip. The left side of FIG. 1 shows a typical semiconductor chip design. In a normal semiconductor chip, the logic circuit is always energized, and leakage power is generated in the entire range of the energized logic circuit.

図1の右側は、オンチップパワーゲーティング技術を適用した論理回路の設計を示す。論理回路を、常時通電が必要なブロック(常時オンブロック)と、必要なときに使用する機能があるブロック(オン/オフ切り替え可能ブロック)とに分けて設計し、後者については電源供給を制御する。これにより、常時通電する範囲が狭くなるため、リーク電力の発生を抑えることができる。   The right side of FIG. 1 shows the design of a logic circuit to which on-chip power gating technology is applied. The logic circuit is designed to be divided into blocks that always need to be energized (always on block) and blocks that have a function to be used when necessary (on / off switchable block), and the latter controls the power supply. . Thereby, since the range which always supplies electricity becomes narrow, generation | occurrence | production of leak electric power can be suppressed.

オンチップパワーゲーディングによる電力削減効果について、図2を参照しながら説明する。図2は、オンチップパワーゲーディングによる電力削減効果を示すグラフである。オン/オフ切り替え可能ブロックの通電時間が短いほど、つまりオフ時間が長いほど電力削減効果は大きい。なお、常時オンブロックの範囲が狭くなると、消費電力が小さくなることは言うまでもない。   The power reduction effect by on-chip power gating will be described with reference to FIG. FIG. 2 is a graph showing the power reduction effect by on-chip power gating. The shorter the energization time of the on / off switchable block, that is, the longer the off time, the greater the power reduction effect. Needless to say, when the range of the always-on block is reduced, the power consumption is reduced.

[動的リコンフィギュラブルプロセッサの動的回路構成]
次に、動的リコンフィギュラブルプロセッサにおける省電力について、図3を参照しながら説明する。図3は、動的リコンフィギュラブルプロセッサによる省電力化の原理を示す。図3に示したように、動的リコンフィギュラブルプロセッサでは、機能ごとに存在するコンフィギュレーションデータに基づいて、プログラマブルデバイスの回路構成を変更する。図3の左側では、機能Aを実現するために「コンフィギュレーションデータ:機能A」に基づいて機能Aエリアの回路が構成される。図3の右側では、機能Bを実現するために「コンフィギュレーションデータ:機能B」に基づいて機能Bエリアの回路が構成される。両図に示したように、各機能を実現するために必要な回路規模が異なる。ここでは、機能Aより機能Bの方が狭い範囲で機能を実現することができる。よって、通電する範囲が狭い機能Bの方が通電する範囲が広い機能Aよりリーク電力は抑えられる。これは前述したオンチップパワーゲーディングの原理に基づく電力削減効果(図2参照)による。なお、動的リコンフィギュラブルプロセッサによる省電力化の詳細については非特許文献「「パワーゲーティングを適用した動的リコンフィギュラブルプロセッサの設計と評価」 電子情報通信学会技術研究報告.RECONF,リコンフィギュラブルシステム 108(48), 55-60, 2008-05-15」を参照されたい。
[Dynamic circuit configuration of dynamically reconfigurable processor]
Next, power saving in the dynamic reconfigurable processor will be described with reference to FIG. FIG. 3 shows the principle of power saving by the dynamic reconfigurable processor. As shown in FIG. 3, the dynamic reconfigurable processor changes the circuit configuration of the programmable device based on configuration data that exists for each function. On the left side of FIG. 3, a circuit in the function A area is configured based on “configuration data: function A” in order to realize function A. On the right side of FIG. 3, a circuit in the function B area is configured based on “configuration data: function B” in order to realize the function B. As shown in both figures, the circuit scale required for realizing each function is different. Here, the function can be realized in a range where the function B is narrower than the function A. Therefore, the leakage power is suppressed in the function B having a narrow energization range than in the function A having a wide energization range. This is due to the power reduction effect (see FIG. 2) based on the principle of on-chip power gating described above. For details on power savings using dynamic reconfigurable processors, see Non-Patent Document “Design and Evaluation of Dynamic Reconfigurable Processors Using Power Gating” IEICE Technical Report. RECONF, Reconfigurable See System 108 (48), 55-60, 2008-05-15.

[一般的なアクセラレータの構成図]
次に、一般的なアクセラレータの構成について、図4を参照しながら説明する。図4は、動的プログラマブルデバイスを搭載したアクセラレータ910とホスト機器900との構成図である。アクセラレータ910とホスト機器900とは通信可能に接続され、連携して所望の機能の演算処理を実行する。
[General accelerator configuration diagram]
Next, the configuration of a general accelerator will be described with reference to FIG. FIG. 4 is a configuration diagram of an accelerator 910 and a host device 900 equipped with a dynamic programmable device. The accelerator 910 and the host device 900 are communicably connected and execute a calculation process of a desired function in cooperation with each other.

ホスト機器900は、ホスト機器900に搭載されているCPU901及びプログラム蓄積部902を有している。プログラム蓄積部902には、ホスト機器900にて実行されるプログラムコードが蓄積されている。   The host device 900 includes a CPU 901 and a program storage unit 902 that are mounted on the host device 900. The program storage unit 902 stores program codes executed by the host device 900.

アクセラレータ910は、ホスト機器900とデータ通信するための外部インターフェースI/F913、ローカルメモリ914、制御部915、コンフィギュラブル演算器アレイ916及びコンフィギュレーションデータ格納用メモリ917を有している。ローカルメモリ914は、アクセラレータ910内で利用するデータ等を記憶する。制御部915は、アクセラレータ910内のデータ処理を制御する。リコンフィギュラブル演算器アレイ916は、プログラマブルデバイスを再構成可能なアレイ状の演算器である。コンフィギュレーションデータ格納メモリ917には、コンフィギュラブル演算器アレイ916の構成を定義するコンフィギュレーションデータが格納された記憶領域である。   The accelerator 910 includes an external interface I / F 913 for data communication with the host device 900, a local memory 914, a control unit 915, a configurable arithmetic unit array 916, and a configuration data storage memory 917. The local memory 914 stores data used in the accelerator 910. The control unit 915 controls data processing in the accelerator 910. The reconfigurable computing unit array 916 is an arrayed computing unit that can reconfigure a programmable device. The configuration data storage memory 917 is a storage area in which configuration data that defines the configuration of the configurable arithmetic unit array 916 is stored.

電源投入後、あるいは機器アイドル時間など、処理に不都合が生じない、適当なタイミングにて、アクセラレータ910内のプログラマブルデバイスは、コンフィギュレーションデータ格納メモリ917に格納されたコンフィギュレーションデータに基づいて、プログラマブルデバイスの再構成可能な演算アレイ916の回路を構成し、ホスト機器900に対して演算機能提供の準備を行なう。ホスト機器900は、アクセラレータ910の準備完了の信号を受け取り、プログラム蓄積部902の、アクセラレータ利用を前提としたコード(ソフトウエア)をCPU901にて実行する。   The programmable device in the accelerator 910 can be programmed based on the configuration data stored in the configuration data storage memory 917 at an appropriate timing after the power is turned on or when there is no inconvenience in processing such as equipment idle time. The reconfigurable arithmetic array 916 is configured to prepare the host device 900 to provide an arithmetic function. The host device 900 receives a signal indicating that the accelerator 910 is ready, and the CPU 901 executes code (software) on the premise that the accelerator is used in the program storage unit 902.

以上、一般的なアクセラレータの構成について説明した。以下では、本発明の一実施形態に係るホスト機器とアクセラレータとの構成について説明する。なお、本発明の一実施形態では、アクセラレータを制御する本体側(つまり、ホスト機器側)にて利用されるソフトウエアと、アクセラレータにて利用されるコンフィギュレーションデータとを機能別に組にして管理する。例えば、図8〜図14に、ホスト機器側にて利用されるソフトウエアとアクセラレータにて利用されるコンフィギュレーションデータとを組にして機能別に管理する一例を示す。   The configuration of a general accelerator has been described above. Below, the structure of the host apparatus and accelerator which concern on one Embodiment of this invention is demonstrated. In one embodiment of the present invention, software used on the main body side (that is, the host device side) that controls the accelerator and configuration data used on the accelerator are managed in a group by function. . For example, FIGS. 8 to 14 show an example in which software used on the host device side and configuration data used on the accelerator are paired and managed by function.

また、図3の説明において述べたように、アクセラレータはコンフィギュレーションデータによって、チップ上の通電範囲を変化させることができ、これによりアクセラレータでの消費電力を変化させることができる。この原理を利用して、ある機能の処理を実現するにあたり、高速処理よりも省電力であることを優先するのであれば、より狭い通電範囲で収まるコンフィギュレーションデータを選択することによりチップ上の通電範囲を狭くすることによって実現可能である。   Further, as described in the description of FIG. 3, the accelerator can change the energization range on the chip according to the configuration data, thereby changing the power consumption in the accelerator. If this function is used to prioritize power saving over high-speed processing when realizing processing of a certain function, energization on the chip can be performed by selecting configuration data that fits in a narrower energization range. This can be achieved by narrowing the range.

よって、以下に説明する本発明の一実施形態では、上記原理を利用して、図9に示したように、コンフィギュレーションデータを、高速処理、省電力処理などの用途や目的別に複数用意しておき、所望する用途や目的に応じて、ホスト機器側にて利用されるソフトウエアとアクセラレータにて利用されるコンフィギュレーションデータを選択し、これによってチップ上の通電範囲を変更してもよい。   Therefore, in one embodiment of the present invention described below, using the above principle, a plurality of configuration data is prepared for each purpose and purpose such as high-speed processing and power saving processing as shown in FIG. Alternatively, software used on the host device side and configuration data used on the accelerator may be selected in accordance with the desired application and purpose, thereby changing the energization range on the chip.

以下、本発明の一実施形態に係るホスト機器及びアクセラレータの構成及び動作について、図5及び図6を参照しながら説明する。図5は、一実施形態に係るホスト機器及びアクセラレータの構成図であり、図6は、一実施形態に係るホスト機器及びアクセラレータの動作を示すフローチャートである。   Hereinafter, configurations and operations of a host device and an accelerator according to an embodiment of the present invention will be described with reference to FIGS. 5 and 6. FIG. 5 is a configuration diagram of the host device and the accelerator according to the embodiment, and FIG. 6 is a flowchart illustrating operations of the host device and the accelerator according to the embodiment.

[ホスト機器及びアクセラレータの構成]
まず、本発明の一実施形態に係るホスト機器及びアクセラレータの構成について説明する。図5の上側に示したホスト機器100は、制御部105、プログラム蓄積部110、コンフィギュレーションデータ格納部115、データ選択部120、データ転送部125及び演算部130を有する。ホスト機器100は、コンフィギュレーションデータにより構成又は再構成可能なプログラマブルデバイスを有するアクセラレータ200を利用して演算処理を実行する情報処理装置に相当する。ホスト機器100は、例えば1台でプリンタとスキャナ、コピー機、ファクシミリなどの機能を兼ねるMFPで実現可能である。
[Configuration of host device and accelerator]
First, the configuration of a host device and an accelerator according to an embodiment of the present invention will be described. 5 includes a control unit 105, a program storage unit 110, a configuration data storage unit 115, a data selection unit 120, a data transfer unit 125, and a calculation unit 130. The host device 100 corresponds to an information processing apparatus that executes arithmetic processing using an accelerator 200 having a programmable device that can be configured or reconfigured by configuration data. For example, the host device 100 can be realized by a single MFP that functions as a printer, a scanner, a copier, and a facsimile.

プログラム蓄積部110には、ホスト機器900にて実行されるプログラムコードが蓄積されている。   In the program storage unit 110, program codes to be executed by the host device 900 are stored.

制御部105は、プログラム蓄積部110に記憶された所望のプログラムを実行することによりホスト機器100全体を制御する。制御部105は、演算部130に所望の演算処理を実行させるとともに、ホスト機器100と連携して、構成が最適化されたプログラマブルデバイス220を用いたアクセラレータ200側の演算処理の実行を指示する。   The control unit 105 controls the entire host device 100 by executing a desired program stored in the program storage unit 110. The control unit 105 causes the calculation unit 130 to execute a desired calculation process and, in cooperation with the host device 100, instructs the execution of the calculation process on the accelerator 200 side using the programmable device 220 whose configuration is optimized.

コンフィギュレーションデータ格納部115は、プログラマブルデバイス220を構成又は再構成するためのコンフィギュレーションデータに関する情報と、構成後のプログラマブルデバイスで実行される演算処理と連携して、ホスト機器100側にて実行される処理用のソフトウエアに関する情報とが組になって格納され、管理されている。コンフィギュレーションデータ格納部115には、例えば図8〜図14に示したテーブル1〜テーブル7が格納されていてもよい。   The configuration data storage unit 115 is executed on the host device 100 side in cooperation with information related to configuration data for configuring or reconfiguring the programmable device 220 and arithmetic processing executed in the programmable device after configuration. Information about processing software is stored and managed in pairs. In the configuration data storage unit 115, for example, the tables 1 to 7 shown in FIGS. 8 to 14 may be stored.

なお、本実施形態では、コンフィギュレーションデータに関する情報の一例としてコンフィギュレーションデータの識別情報を用いるが、コンフィギュレーションデータに関する情報は、プログラマブルデバイス220を構成又は再構成するためのコンフィギュレーションデータを特定できる情報であれば識別情報に限られず、例えばコンフィギュレーションデータそのものであってもよい。   In this embodiment, identification information of configuration data is used as an example of information related to configuration data, but information related to configuration data is information that can specify configuration data for configuring or reconfiguring the programmable device 220. If it is, it is not restricted to identification information, For example, configuration data itself may be sufficient.

データ選択部120は、コンフィギュレーションデータ格納部115からアクセラレータ200にて実行される演算処理の機能に応じたコンフィギュレーションデータの識別情報を選択する。   The data selection unit 120 selects configuration data identification information corresponding to the function of the arithmetic processing executed by the accelerator 200 from the configuration data storage unit 115.

例えば、データ選択部120は、コンフィギュレーションデータ格納部115中の演算処理の機能に対応したコンフィギュレーションデータの識別情報の内から、目的に応じたコンフィギュレーションデータの識別情報を選択してもよい。   For example, the data selection unit 120 may select the configuration data identification information according to the purpose from the configuration data identification information corresponding to the arithmetic processing function in the configuration data storage unit 115.

また、データ選択部120は、コンフィギュレーションデータ格納部115中の演算処理の目的に対応したコンフィギュレーションデータの識別情報の内から、機能に応じたコンフィギュレーションデータの識別情報を選択してもよい。   The data selection unit 120 may select configuration data identification information corresponding to the function from among the configuration data identification information corresponding to the purpose of the arithmetic processing in the configuration data storage unit 115.

また、データ選択部120は、コンフィギュレーションデータ格納部115中の演算処理の種類に対応したコンフィギュレーションデータの識別情報の内から、機能に応じたコンフィギュレーションデータの識別情報を選択してもよい。   The data selection unit 120 may select configuration data identification information corresponding to the function from among the configuration data identification information corresponding to the type of arithmetic processing in the configuration data storage unit 115.

また、データ選択部120は、コンフィギュレーションデータ格納部115中のコンフィギュレーションデータの識別情報の内から、ユーザからの設定条件に対応したコンフィギュレーションデータであって、機能に応じたコンフィギュレーションデータの識別情報を選択してもよい。   In addition, the data selection unit 120 is configuration data corresponding to the setting condition from the user among the configuration data identification information in the configuration data storage unit 115, and identifies the configuration data corresponding to the function. Information may be selected.

また、データ選択部120は、コンフィギュレーションデータ格納部115中の演算処理の対象機種に対応したコンフィギュレーションデータの識別情報の内から、機能に応じたコンフィギュレーションデータの識別情報を選択してもよい。   In addition, the data selection unit 120 may select the configuration data identification information corresponding to the function from among the configuration data identification information corresponding to the target model of the arithmetic processing in the configuration data storage unit 115. .

また、データ選択部120は、コンフィギュレーションデータ格納部115中のコンフィギュレーションデータの識別情報の内から、付加処理に対応したコンフィギュレーションデータであって、機能に応じたコンフィギュレーションデータの識別情報を選択してもよい。   In addition, the data selection unit 120 selects configuration data corresponding to additional processing from the configuration data identification information in the configuration data storage unit 115, and selects configuration data identification information corresponding to the function. May be.

データ転送部125は、データ選択部120により選択されたコンフィギュレーションデータに関する情報をアクセラレータ200に転送する。   The data transfer unit 125 transfers information related to the configuration data selected by the data selection unit 120 to the accelerator 200.

演算部130は、制御部105からの指示に従い、コンフィギュレーションデータ格納部115に格納されたソフトウエアの内、選択されたコンフィギュレーションデータと組になっているソフトウエアを実行することにより、アクセラレータ200のプログラマブルデバイスと連携して演算処理を実行する。   The arithmetic unit 130 executes the software paired with the selected configuration data out of the software stored in the configuration data storage unit 115 in accordance with an instruction from the control unit 105, thereby causing the accelerator 200. The arithmetic processing is executed in cooperation with the programmable device.

なお、ホスト機器100は、図示しないCPU、ROM,RAM、HDD等から構成されている。ROMは、プログラムやデータを記憶するメモリである。RAMは、ホスト機器100に内蔵されたCPUが各種動作を行うときに必要なプログラムやデータを一時的に記憶するメモリである。CPUは、ROMやRAMに格納されているプログラムやデータを読み込んで実行することにより、ホスト機器100を制御するプロセッサである。HDDは、比較的大容量のデータを格納するのに適した記憶領域であり、本実施形態では、コンフィギュレーションデータ格納部115に格納されたデータを記憶する。   The host device 100 is composed of a CPU, ROM, RAM, HDD, etc. (not shown). The ROM is a memory that stores programs and data. The RAM is a memory that temporarily stores programs and data required when the CPU built in the host device 100 performs various operations. The CPU is a processor that controls the host device 100 by reading and executing programs and data stored in the ROM and RAM. The HDD is a storage area suitable for storing a relatively large amount of data. In the present embodiment, the HDD stores data stored in the configuration data storage unit 115.

次に、図5の下側に示したアクセラレータ200の構成について説明する。アクセラレータ200は、データ通信部205、制御部210、コンフィギュレーションデータ記憶部215、リコンフィギュラブルプログラマブルデバイス(プログラマブルデバイス220)及びローカルメモリ225を有する。   Next, the configuration of the accelerator 200 shown on the lower side of FIG. 5 will be described. The accelerator 200 includes a data communication unit 205, a control unit 210, a configuration data storage unit 215, a reconfigurable programmable device (programmable device 220), and a local memory 225.

データ通信部205は、ホスト機器100のデータ転送部125から転送されたコンフィギュレーションデータの識別情報を取得する。   The data communication unit 205 acquires identification information of configuration data transferred from the data transfer unit 125 of the host device 100.

ローカルメモリ225は、制御部210による制御に必要なプログラムや各種データを記憶する。制御部210は、ローカルメモリ225に記憶された所望のプログラムを実行することによりアクセラレータ200全体を制御する。制御部210は、ホスト機器100の制御部105からの指示を受けて、ホスト機器100と連携してアクセラレータ200側の演算処理の実行を指示する。   The local memory 225 stores programs and various data necessary for control by the control unit 210. The control unit 210 controls the entire accelerator 200 by executing a desired program stored in the local memory 225. Upon receiving an instruction from the control unit 105 of the host device 100, the control unit 210 instructs the execution of arithmetic processing on the accelerator 200 side in cooperation with the host device 100.

コンフィギュレーションデータ記憶部215は、ホスト機器100から転送され、データ通信部205により取得されたコンフィギュレーションデータの識別情報をその識別情報から識別されるコンフィギュレーションデータに対応させて記憶する。   The configuration data storage unit 215 stores identification information of configuration data transferred from the host device 100 and acquired by the data communication unit 205 in association with configuration data identified from the identification information.

プログラマブルデバイス220は、コンフィギュレーションデータ記憶部215に記憶され、コンフィギュレーションデータの識別情報から識別されるコンフィギュレーションデータに基づいて、プログラマブルデバイス220の演算アレイの回路を構成又は再構成する。プログラマブルデバイス220は、ホスト機器100と連携して演算処理を実行する。   The programmable device 220 is stored in the configuration data storage unit 215 and configures or reconfigures the circuit of the arithmetic array of the programmable device 220 based on the configuration data identified from the identification information of the configuration data. The programmable device 220 executes arithmetic processing in cooperation with the host device 100.

なお、アクセラレータ200は、ホスト機器100と同様、図示しないCPU、ROM,RAM等から構成されている。ROMは、プログラムやデータを記憶するメモリである。RAMは、アクセラレータ200に内蔵されたCPUが各種動作を行うときに必要なプログラムやデータを一時的に記憶するメモリである。RAMには、ホスト機器100から転送されたコンフィギュレーションデータが記憶されてもよい。CPUは、ROMやRAMに格納されているプログラムやデータを読み込んで実行することにより、アクセラレータ200を制御するプロセッサである。   The accelerator 200 includes a CPU, a ROM, a RAM, and the like (not shown) as with the host device 100. The ROM is a memory that stores programs and data. The RAM is a memory that temporarily stores programs and data necessary when the CPU built in the accelerator 200 performs various operations. Configuration data transferred from the host device 100 may be stored in the RAM. The CPU is a processor that controls the accelerator 200 by reading and executing programs and data stored in the ROM and RAM.

[ホスト機器及びアクセラレータの動作]
次に、本発明の一実施形態に係るホスト機器及びアクセラレータの動作について、図6のフローチャート(メインルーチン)及び図7のフローチャート(サブルーチン)を参照しながら説明する。図6は、コンフィギュレーションデータを選択し、選択されたコンフィギュレーションデータに基づきプログラマブルデバイスを構成又は再構成する場合の処理フローを示す。
[Operation of host device and accelerator]
Next, operations of the host device and the accelerator according to the embodiment of the present invention will be described with reference to a flowchart (main routine) in FIG. 6 and a flowchart (subroutine) in FIG. FIG. 6 shows a processing flow when selecting configuration data and configuring or reconfiguring a programmable device based on the selected configuration data.

本処理が開始されると、以下に示したステップS10〜S80の処理が実行される。   When this process is started, the following steps S10 to S80 are executed.

・ステップS10
電源が投入され、ホスト機器100およびアクセラレータ200が起動され、アクセラレータ200の機能が更新される。なお、電源投入だけでなく、ユーザからの指示に基づく更新、あるいはアクセラレータ200のアイドル時間を検知した場合に行われる自動更新によるタイミングで本ステップが実行されても構わない。
・ Step S10
The power is turned on, the host device 100 and the accelerator 200 are activated, and the function of the accelerator 200 is updated. Note that this step may be executed not only at power-on but also at a timing based on an update based on an instruction from the user or an automatic update performed when the idle time of the accelerator 200 is detected.

・ステップS20
ホスト機器100の制御部105は、現在の機器設定を確認する。
・ Step S20
The control unit 105 of the host device 100 confirms the current device setting.

・ステップS30
ホスト機器100のデータ選択部120は、機器設定の確認結果に基づいて、コンフィギュレーションデータ格納部115から、実行すべき演算処理の機能に応じたコンフィギュレーションデータを選択する。例えば、図8に示したテーブル1では、アクセラレータ200を利用する本体(ホスト機器100)側で使用するソフトウエアを識別する識別情報とアクセラレータ200で使用するコンフィギュレーションデータを識別する識別情報の組が機能別に対になって記憶されている。データ選択部120は、テーブル1から実行予定の演算処理の機能に応じたコンフィギュレーションデータを選択する。例えば、実行予定の演算処理の機能が標準機能1であれば、コンフィギュレーションデータの識別情報a1が選択される。
・ Step S30
The data selection unit 120 of the host device 100 selects configuration data corresponding to the function of the arithmetic processing to be executed from the configuration data storage unit 115 based on the confirmation result of the device setting. For example, in the table 1 shown in FIG. 8, a set of identification information for identifying software used on the main body (host device 100) side that uses the accelerator 200 and identification information for identifying configuration data used for the accelerator 200 is provided. It is stored in pairs by function. The data selection unit 120 selects configuration data corresponding to the function of the arithmetic processing scheduled to be executed from Table 1. For example, if the function of the arithmetic processing scheduled to be executed is the standard function 1, the configuration data identification information a1 is selected.

・ステップS40
ホスト機器100のデータ転送部125は、アクセラレータ200で使用する、選択されたコンフィギュレーションデータを指定する情報としてコンフィギュレーションデータの識別情報をアクセラレータ200に転送する。
Step S40
The data transfer unit 125 of the host device 100 transfers configuration data identification information to the accelerator 200 as information specifying the selected configuration data to be used by the accelerator 200.

・ステップS50
アクセラレータ200の制御部105は、コンフィギュレーションデータ記憶部215の中から、ホスト機器100から取得したコンフィギュレーションデータの識別情報から識別されるコンフィギュレーションデータを選択する。
・ Step S50
The control unit 105 of the accelerator 200 selects configuration data identified from the configuration data identification information acquired from the host device 100 from the configuration data storage unit 215.

・ステップS60
アクセラレータ200の制御部105は、選択されたコンフィギュレーションデータに基づきプログラマブルデバイス220を構成又は再構成する。
Step S60
The control unit 105 of the accelerator 200 configures or reconfigures the programmable device 220 based on the selected configuration data.

・ステップS70
プログラマブルデバイス220の構成が完了したら、データ通信部205は、ホスト機器100にその旨を通知する。
Step S70
When the configuration of the programmable device 220 is completed, the data communication unit 205 notifies the host device 100 to that effect.

・ステップS80
ホスト機器100の制御部105は、コンフィギュレーションデータによる構成又は再構成後のプログラマブルデバイス220を用いて実行される演算処理と連携して、ホスト機器100側にて実行される処理用のソフトウエアにより、アクセラレータ200を駆動し、所望の演算処理を実行する。
Step S80
The control unit 105 of the host device 100 uses software for processing executed on the host device 100 side in cooperation with arithmetic processing executed using the programmable device 220 configured or reconfigured by configuration data. Then, the accelerator 200 is driven to execute a desired calculation process.

次に、図6のステップS80の演算処理の詳細について、図7の処理フローを参照しながら説明する。本処理が開始されると、以下のステップS81〜S87の処理が実行される。   Next, details of the calculation processing in step S80 in FIG. 6 will be described with reference to the processing flow in FIG. When this process is started, the following steps S81 to S87 are executed.

・ステップS81
ホスト機器100の制御部105は、データ選択部120により選択されたコンフィギュレーションデータに対応するソフトウエアに従い演算開始処理(初期化など)を実行する。選択されたコンフィギュレーションデータに対応するソフトウエアの識別情報は、コンフィギュレーションデータ格納部115に格納されたコンフィギュレーションデータとソフトウエアとの識別情報の組から、選択されたコンフィギュレーションデータに対応するソフトウエアの識別情報を検索して特定する。例えば、実行すべき演算処理の機能が、図8のテーブル1に示した標準機能1であれば、コンフィギュレーションデータの識別情報a1に対するソフトウエアの識別情報A1が特定される。ホスト機器100側で用いるソフトウエアは、プログラム蓄積部110に蓄積されているプログラム群から、前記特定されたソフトウエアの識別情報により識別されるソフトウエアを検出して取得する。
Step S81
The control unit 105 of the host device 100 executes a calculation start process (such as initialization) according to software corresponding to the configuration data selected by the data selection unit 120. The software identification information corresponding to the selected configuration data is obtained by selecting software corresponding to the selected configuration data from a set of identification information of the configuration data and software stored in the configuration data storage unit 115. The identification information of the wear is searched and specified. For example, if the function of the arithmetic processing to be executed is the standard function 1 shown in the table 1 of FIG. 8, the software identification information A1 for the configuration data identification information a1 is specified. Software used on the host device 100 side is obtained by detecting software identified by the identification information of the identified software from the program group stored in the program storage unit 110.

・ステップS82
アクセラレータ200の制御部210は、演算開始処理(初期化など)を実行する。
Step S82
The control unit 210 of the accelerator 200 executes a calculation start process (such as initialization).

・ステップS83
処理が終了するまで、ステップS84とステップS85を繰り返す。処理が終了したら、ステップS86に進む。
Step S83
Steps S84 and S85 are repeated until the processing is completed. When the process ends, the process proceeds to step S86.

・ステップS84
ホスト機器100の演算部130は、所望の演算処理を実行し、アクセラレータ200を駆動する。
Step S84
The calculation unit 130 of the host device 100 executes desired calculation processing and drives the accelerator 200.

・ステップS85
アクセラレータ200のプログラマブルデバイス220は、ホスト機器100から依頼された演算処理を実行し、結果をホスト機器100に返す。ステップS83に戻る。
・ Step S85
The programmable device 220 of the accelerator 200 executes the arithmetic processing requested from the host device 100 and returns the result to the host device 100. The process returns to step S83.

・ステップS86
アクセラレータ200の制御部210は、演算終了処理(後始末など)を実行する。
・ Step S86
The control unit 210 of the accelerator 200 executes calculation end processing (such as cleanup).

・ステップS87
ホスト機器100の制御部105は、演算終了処理(後始末など)を実行する。
Step S87
The control unit 105 of the host device 100 executes calculation end processing (such as cleanup).

以上、本実施形態に係る演算処理方法について説明した。   The arithmetic processing method according to the present embodiment has been described above.

[コンフィギュレーションデータの管理]
次に、コンフィギュレーションデータ格納部115に格納されるコンフィギュレーションデータのデータ管理例1〜管理例7について、図8〜図14に示したテーブル1〜テーブル7を参照しながら説明する。
[Management of configuration data]
Next, data management examples 1 to 7 of configuration data stored in the configuration data storage unit 115 will be described with reference to the tables 1 to 7 shown in FIGS.

<管理例1:テーブル1>
前述したようにまず、図8のテーブル1では、アクセラレータ200を利用する本体(ホスト機器100)側で使用するソフトウエアの識別情報とアクセラレータ200で使用するコンフィギュレーションデータの識別情報とが機能別に組になって記憶されている。テーブル1では、機能毎に複数のコンフィギュレーションデータの識別情報が管理されている。
<Management Example 1: Table 1>
As described above, first, in the table 1 of FIG. 8, the identification information of the software used on the main body (host device 100) side using the accelerator 200 and the identification information of the configuration data used in the accelerator 200 are grouped by function. It is memorized. In Table 1, identification information of a plurality of configuration data is managed for each function.

これによれば、テーブル1から実行すべき演算処理の機能に応じたコンフィギュレーションデータを選択することができる。これにより、アクセラレータ200内のプログラマブルデバイス220を演算処理の機能に応じて構成又は再構成することができる。この結果、演算処理の機能に応じて構成が適正化されたプログラマブルデバイス220を用いた演算処理の実行により、演算処理の機能に応じてアクセラレータ200を効果的に利用することができる。   According to this, it is possible to select the configuration data corresponding to the function of the arithmetic processing to be executed from the table 1. Thereby, the programmable device 220 in the accelerator 200 can be configured or reconfigured according to the arithmetic processing function. As a result, the accelerator 200 can be effectively used according to the function of the arithmetic processing by executing the arithmetic processing using the programmable device 220 whose configuration is optimized according to the function of the arithmetic processing.

<管理例2:テーブル2>
次に、図9のテーブル2に示した管理例2について説明する。テーブル2では、機能毎に設けられたソフトウエアに対して目的別に2つのコンフィギュレーションデータが格納されている。このように、コンフィギュレーションデータの識別情報は、機能毎に目的別に複数格納され、管理されてもよい。目的は用途であってもよく、例えば、高速処理か省電力かを示すモードであってもよい。目的が異なれば、選択されるコンフィギュレーションデータは異なることになり、その結果、プログラマブルデバイスは、異なる構成に変更される。
<Management Example 2: Table 2>
Next, the management example 2 shown in the table 2 of FIG. 9 will be described. In Table 2, two pieces of configuration data are stored for each purpose for the software provided for each function. As described above, a plurality of pieces of identification information of the configuration data may be stored and managed for each function. The purpose may be an application, for example, a mode indicating high speed processing or power saving. Different purposes will result in different configuration data being selected, resulting in the programmable device being changed to a different configuration.

テーブル2では、目的として高速処理又は省電力処理の2つが挙げられている。よって、テーブル2を用いれば、同じ機能の演算処理であっても、高速処理を目的とした場合のプログラマブルデバイスと、省電力処理を目的とした場合のプログラマブルデバイスとを異なる構成にすることができる。このようにして、プログラマブルデバイス220は、演算処理の機能だけでなく目的に応じて適正化される。これにより、省電力処理を目的とした場合には高速処理を目的とした場合より、演算処理の速度は多少犠牲にされても演算処理中の消費電力を低下させることができる。   Table 2 lists two purposes, high speed processing and power saving processing. Therefore, if Table 2 is used, even if it is the arithmetic processing of the same function, the programmable device for the purpose of high-speed processing and the programmable device for the purpose of power saving processing can be configured differently. . In this way, the programmable device 220 is optimized not only for the arithmetic processing function but also for the purpose. As a result, when the power saving process is aimed, the power consumption during the computation process can be reduced even if the speed of the computation process is somewhat sacrificed compared to the case where the purpose is a high speed process.

<管理例3:テーブル3>
アクセラレータ200のコンフィギュレーションデータが変化した場合、ホスト機器100本体側のソフトウエアを変更しなければならないことがある。あるいは、本体側ソフトウエアの変更にともない、アクセラレータのコンフィギュレーションデータを変更する必要が生じる場合もある。そのような場合、図10のテーブル3に示したように、モード(目的)別に本体側ソフトウエアとコンフィギュレーションデータとを管理しておき、モードに応じて、本体側ソフトウエアとコンフィギュレーションデータとをそれぞれ選択すればよい。図10に示したコンフィギュレーションデータ格納部115には、目的毎に機能別にコンフィギュレーションデータの識別情報が格納され、管理されている。
<Management Example 3: Table 3>
When the configuration data of the accelerator 200 changes, it may be necessary to change the software on the host device 100 main body side. Alternatively, it may be necessary to change the configuration data of the accelerator as the main body side software is changed. In such a case, as shown in Table 3 of FIG. 10, the main body side software and the configuration data are managed for each mode (purpose), and the main body side software and the configuration data are changed according to the mode. May be selected respectively. The configuration data storage unit 115 shown in FIG. 10 stores and manages configuration data identification information for each function for each purpose.

<管理例4:テーブル4>
より一層の高速化が必要な処理と、高速化よりは低消費電力化が望まれる処理についてユーザの状況との関係を考える。例えば、スキャナやコピー、プリンタ、ファクシミリなどを1台の機器にまとめたMFPの処理に関して考えると、コピー処理やプリント処理は、1データから複数部数を指定されることが多い処理であり、ユーザがMFPの前で待たねばならない場面が多いゆえに、より一層の高速化が求められる。
<Management Example 4: Table 4>
Consider the relationship between the user's situation and the process that requires higher speed and the process that requires lower power consumption than the higher speed. For example, when considering processing of an MFP in which a scanner, a copy, a printer, a facsimile, and the like are combined into one device, copy processing and print processing are processes in which a plurality of copies are often designated from one data, and the user Since there are many scenes that must be waited in front of the MFP, higher speed is required.

これに対して、スキャン処理やファクシミリ受信/送信は、1データから複数部数の具体物を作成する必要はない。スキャン処理の場合、具体物である紙を入力してしまえば、処理結果は電子データとしてユーザの手元の機器に送信されるから、ユーザは、後段の処理の完了を待つことなくMFPの前を離れることができる。ファクシミリの場合、送信処理はスキャン処理と同様であるし、受信処理はユーザに待たれることなく完了することが多く、受信し終わった後に、紙やデータをユーザが目にする。   In contrast, scan processing and facsimile reception / transmission do not require the creation of a plurality of copies from one data. In the case of scan processing, if paper, which is a specific object, is input, the processing result is transmitted as electronic data to the user's device, so that the user can move in front of the MFP without waiting for the completion of subsequent processing. You can leave. In the case of a facsimile, the transmission process is the same as the scan process, and the reception process is often completed without waiting for the user, and after the reception is completed, the user sees paper and data.

よって、アクセラレータ200を利用する場合、ユーザのこのような状況をコンフィギュレーションデータの選択に反映させて、プログラマブルデバイス220の構成を高速化を目的とした構成と、省電力化を目的とした構成との2つを使い分けることが好ましい。これによって、ユーザが生産性を重視する機能においては生産性を維持した高速な演算処理、使用者が生産性を重視しない機能においては省電力化を図る演算処理を実行し、効果的な演算処理を実現できる。   Therefore, when the accelerator 200 is used, such a situation of the user is reflected in the selection of configuration data, and the configuration of the programmable device 220 is configured to increase the speed, and the configuration is configured to reduce power consumption. It is preferable to properly use the two. As a result, high-speed calculation processing that maintains productivity is performed for functions where users place importance on productivity, and calculation processing that saves power is executed for functions where users do not place importance on productivity. Can be realized.

そのためには、図11のテーブル4に示したように、ユーザ(使用者)の生産性に対する要求に着目して、機能を分類し、その分類ごとに本体側ソフトウエアとアクセラレータのコンフィギュレーションデータとを管理すればよい。演算処理の分類とは、例えばプリンタ、コピー、ファクシミリ、スキャナ等をいう。ユーザが実行したい演算処理の分類(機器分類)及び機能を選択した際、テーブル4から演算処理の分類及び機能に応じたコンフィギュレーションデータを選択する。これにより、コンフィギュレーションデータに基づくプログラマブルデバイス220の構成が、演算処理の分類及び機能に応じて適正化される。これにより、ユーザの使用感を損なうことなく低消費電力による運用を実現できる。   For this purpose, as shown in Table 4 of FIG. 11, focusing on the user's (user) productivity requirements, the functions are classified, and the configuration data of the main body side software and the accelerator are classified for each classification. Can be managed. The classification of arithmetic processing means, for example, a printer, a copy, a facsimile, a scanner, or the like. When the user selects the classification (equipment classification) and function of the arithmetic processing to be executed, the configuration data corresponding to the classification and function of the arithmetic processing is selected from the table 4. Thereby, the configuration of the programmable device 220 based on the configuration data is optimized according to the classification and function of the arithmetic processing. Thereby, the operation | movement by low power consumption is realizable, without impairing a user's usability.

<管理例5:テーブル5>
入力データおよび演算処理の種類が決まれば、処理量が推測できる処理においては、推測された処理量とホスト機器100の能力とから事前に予想処理時間が算出できる。したがって、使用感が損なわれるほどの待ち時間が予想される場合には、より短時間で処理が済むような機器構成にプログラマブルデバイス220の構成を切り替えることが好ましい。反対に、予想処理時間が使用感に大きく影響しないのであれば、より多くの時間がかかっても低電力で済む機器構成を選択する。
<Management Example 5: Table 5>
If the input data and the type of arithmetic processing are determined, in the processing in which the processing amount can be estimated, the expected processing time can be calculated in advance from the estimated processing amount and the capability of the host device 100. Therefore, when a waiting time that may impair the usability is expected, it is preferable to switch the configuration of the programmable device 220 to a device configuration that can be processed in a shorter time. On the other hand, if the expected processing time does not greatly affect the feeling of use, a device configuration that requires low power even if more time is required is selected.

たとえば前述したMFPの例においては、ユーザの入力操作に対応した入力条件である印刷サイズの大きさ、解像度、画像種類によって、画象処理の処理量は大きく変化する。最大処理量の際の処理時間が、ユーザの使用感を損なわないようにプログラマブルデバイス220を構成すると、処理量の少ない場合においては、必要以上に短時間で処理が完了してしまう。   For example, in the MFP example described above, the amount of image processing varies greatly depending on the print size, resolution, and image type, which are input conditions corresponding to the user's input operation. If the programmable device 220 is configured so that the processing time at the maximum processing amount does not impair the user's feeling, the processing is completed in an unnecessarily short time when the processing amount is small.

このような過剰性能の弊害を避けるためには、図12のテーブル5に示したように、演算処理の条件(入力データ条件)毎に機能別のコンフィギュレーションデータの識別情報が格納され、管理されてもよい。演算処理の条件とは、例えばユーザの操作により設定される入力データの条件をいい、具体的には、テーブル5に示したように、出力用紙のサイズ、画素数やモノクロ又はカラーの条件等が挙げられる。   In order to avoid such adverse effects of excessive performance, as shown in Table 5 of FIG. 12, identification information of configuration data for each function is stored and managed for each operation processing condition (input data condition). May be. The calculation processing conditions are, for example, input data conditions set by the user's operation. Specifically, as shown in Table 5, there are output paper size, number of pixels, monochrome or color conditions, and the like. Can be mentioned.

これによれば、入力データの条件ごとに、処理時間と消費電力とのバランスのとれた機器構成を管理しておき、入力されたタイミングで、プログラマブルデバイス220の構成を変更する。このように入力データおよび処理種類に応じて、プログラマブルデバイス220の構成を変更することによって、ユーザの使用感を損なうことなく、低消費電力による運用を実現できる。   According to this, a device configuration in which processing time and power consumption are balanced is managed for each condition of input data, and the configuration of the programmable device 220 is changed at the input timing. Thus, by changing the configuration of the programmable device 220 according to the input data and the processing type, it is possible to realize an operation with low power consumption without impairing the user's feeling of use.

<管理例6:テーブル6>
ホスト機器100本体とアクセラレータ200との組み合わせで処理負荷のバランスを考慮した演算処理を実現するにあたり、ホスト機器100本体は多機種が展開されている場合であっても、オプションとして装着されることの多いアクセラレータ200の製造数は少ない。よって、ホスト機器100の機種ごとにアクセラレータ200を製造すると製造コストが増大する傾向がある。このため、アクセラレータ200は、組み合わせ対象であるホスト機器100本体の機種によらず1種のみ製造される場合も多い。
<Management Example 6: Table 6>
When the host device 100 main body and the accelerator 200 are combined to realize arithmetic processing in consideration of the balance of processing load, the host device 100 main body can be installed as an option even when multiple models are deployed. Many accelerators 200 are not manufactured. Therefore, manufacturing the accelerator 200 for each model of the host device 100 tends to increase the manufacturing cost. For this reason, only one type of accelerator 200 is often manufactured regardless of the model of the main body of the host device 100 to be combined.

このような場合、ホスト機器100本体の処理能力とアクセラレータの処理能力とのバランスは一定ではない。このため、同一処理を分担実行する際、機種が変わると最適な負荷分担の割合が異なってしまう場合がある。これを考慮して、図13のテーブル6に示したように、ホスト機器100本体とアクセラレータ200とを接続設定する際の設定事項として、ホスト機器100本体とアクセラレータ200とを別媒体にて管理する。ここでは、ホスト機器100本体の機種は、プリンタ機器やコピー機器の品番等で特定される。   In such a case, the balance between the processing capability of the host device 100 main body and the processing capability of the accelerator is not constant. For this reason, when the same process is shared and executed, the optimal load sharing ratio may differ if the model changes. Considering this, as shown in the table 6 of FIG. 13, the host device 100 main body and the accelerator 200 are managed by different media as setting items when the host device 100 main body and the accelerator 200 are connected and set. . Here, the model of the main body of the host device 100 is specified by the product number of the printer device or the copy device.

このように本体機種毎に機能別に本体側ソフトウエアとアクセラレータのコンフィギュレーションデータの組を管理し、ホスト機器100本体とアクセラレータ200との組み合わせが決まったら、テーブル6に基づき、ホスト機器100本体側のソフトウエアとアクセラレータ200のコンフィギュレーションデータとを選択する。これにより、コンフィギュレーションデータに基づくプログラマブルデバイス220の構成が、演算処理を実行する機種及び機能に応じて適正化される。   As described above, when the combination of the configuration data of the main body side software and the accelerator is managed by function for each main body model and the combination of the host device 100 main body and the accelerator 200 is determined, the host device 100 main body side is determined based on the table 6. Software and accelerator 200 configuration data are selected. Thereby, the structure of the programmable device 220 based on configuration data is optimized according to the model and function which perform arithmetic processing.

具体的には、機種別に管理されたホスト機器100本体側ソフトウエアとアクセラレータ200のコンフィギュレーションデータとを全て本体およびアクセラレータ200中の不揮発メモリに格納しておき、電源を投入してシステム立ち上げ時に、最適な組み合わせを選択し、選択されたコンフィギュレーションデータに基づきプログラマブルデバイス220を構成又は再構成する。   Specifically, the host device 100 main unit software managed for each model and the configuration data of the accelerator 200 are all stored in the main unit and the nonvolatile memory in the accelerator 200, and the system is started by turning on the power. The optimal combination is selected, and the programmable device 220 is configured or reconfigured based on the selected configuration data.

あるいは、ホスト機器100本体側ソフトウエアとアクセラレータ200のコンフィギュレーションデータを自動あるいは手動に選択して、インストールする方法も考えられる。これらはシステム設計事項であり、当業者が適宜選択できる。   Alternatively, a method may be considered in which the configuration data of the host device 100 main body side software and the accelerator 200 is automatically or manually selected and installed. These are system design matters and can be appropriately selected by those skilled in the art.

<管理例7:テーブル7>
ユーザが処理を要求する演算処理の機能に加えて、その演算処理に付随した処理も併せて処理要求された場合には、総合的な処理量が増加するから、ホスト機器100本体とアクセラレータ200との間の最適な負荷分散も変わる。
<Management Example 7: Table 7>
In addition to the arithmetic processing function that the user requests for processing, if processing accompanying the arithmetic processing is also requested, the total processing amount increases, so the host device 100 main body and the accelerator 200 The optimal load distribution during the period also changes.

たとえばMFPの場合、基本的なスキャン処理に加えて、オプションとして、入力データのサムネイル画像を作成するか否か、プレビュー画像を作成するか否か、などが選択可能なものがある。このような付加的な処理がユーザ等により指定された場合においても最適な負荷バランスを保つために、図14のテーブル7に示したように、指定可能な付加機能毎に最適な機器構成を実現する本体側ソフトウエアとアクセラレータのコンフィギュレーションデータとの組を管理しておき、ユーザが機能選択およびオプション選択したタイミングでプログラマブルデバイス220の構成を変更すればよい。付加処理は、アクセラレータ200にて実行される演算処理に付加される処理内容を示し、具体的には、サムネイル画像の作成、プレビュー画像の作成、プレビュー画像とサムネイル画像の作成等が挙げられる。   For example, in the case of an MFP, in addition to basic scanning processing, there are options that allow selection of whether to create a thumbnail image of input data, whether to create a preview image, or the like. In order to maintain an optimum load balance even when such additional processing is designated by the user or the like, an optimum device configuration is realized for each additional function that can be designated as shown in the table 7 of FIG. A set of main body side software and accelerator configuration data to be managed is managed, and the configuration of the programmable device 220 may be changed at a timing when the user selects a function and selects an option. The additional processing indicates processing content added to the arithmetic processing executed by the accelerator 200, and specifically includes creation of thumbnail images, creation of preview images, creation of preview images and thumbnail images, and the like.

[効果]
以上に説明したように、本実施形態にて実行される演算処理方法によれば、電源を遮断することなく、演算処理の機能毎にアクセラレータ200の回路構成を再構成して最適化することができる。これにより、ホスト機器100は、構成を機能別に適正化したプログラマブルデバイス220を有するアクセラレータ200を用いて、処理時間を短縮することができるだけでなく、例えば、プログラマブルデバイス220の回路規模を小さくすることにより通電するトランジスタ数を減じ、リーク電力を抑えることができる。
[effect]
As described above, according to the arithmetic processing method executed in the present embodiment, the circuit configuration of the accelerator 200 can be reconfigured and optimized for each arithmetic processing function without shutting off the power supply. it can. Thereby, the host device 100 can not only shorten the processing time by using the accelerator 200 having the programmable device 220 whose configuration is optimized for each function, but also, for example, by reducing the circuit scale of the programmable device 220. Leakage power can be suppressed by reducing the number of transistors to be energized.

また、本実施形態によれば、高速処理の観点を具現化するコンフィギュレーションデータだけでなく、省電力化の観点を具現化するコンフィギュレーションデータを事前に準備し、コンフィギュレーションデータ格納部115に格納し、演算処理の実行条件に基づき最適なコンフィギュレーションデータを選択可能な仕組みが提供される。これにより、ユーザの使用感を損なうことなく、高速化と省電力化とを実現できる。この結果、処理の高速化の用途に専ら用いられていたアクセラレータ200を、省電力の用途にも適用可能にすることができ、アクセラレータ200の利用範囲をさらに広げることができる。   Further, according to the present embodiment, not only the configuration data that realizes the viewpoint of high-speed processing but also the configuration data that realizes the viewpoint of power saving is prepared in advance and stored in the configuration data storage unit 115. Thus, a mechanism is provided that can select optimum configuration data based on the execution conditions of the arithmetic processing. Thereby, high speed and power saving can be achieved without impairing the user's feeling of use. As a result, the accelerator 200 that has been used exclusively for high-speed processing can be applied to power-saving applications, and the range of use of the accelerator 200 can be further expanded.

このように本発明の一実施形態によれば、動的に再構成できるプログラマブルデバイス220を用いて、処理に必要な部分のみに通電するよう回路規模を変化させることによって、高速処理を維持したまま、リーク電力を抑えて省電力を実現できる。省電力化にともない発熱も抑えられるので廃熱に必要な冷却処理の負担も軽減でき、システム全体としての省電力化も達成できる。   As described above, according to the embodiment of the present invention, the programmable device 220 that can be dynamically reconfigured is used to change the circuit scale so that only the portion necessary for processing is energized, thereby maintaining high-speed processing. , Power saving can be realized by suppressing leakage power. Since heat generation can be suppressed with the power saving, the burden of cooling processing required for waste heat can be reduced, and power saving for the entire system can be achieved.

加えて、アクセラレータ200と連携するホスト機器100本体の性能(CPU他)に応じて、アクセラレータ200内の回路構成を変えることによって、ホスト機器100本体とアクセラレータ200との処理分担を最適化し、総合的な処理性能(処理時間と消費電力とのバランス)を高めることができる。また、本実施形態に係るホスト機器100によるアクセラレータ200の利用において、高速化を目的とした構成と、省電力化を目的とした構成との2つを目的別に使い分けてプログラマブルデバイス220の構成を変更及び適正化することによって、生産性を維持した上での低消費電力を実現することができる。   In addition, by changing the circuit configuration in the accelerator 200 according to the performance of the host device 100 main body that cooperates with the accelerator 200 (CPU and others), the processing sharing between the host device 100 main body and the accelerator 200 is optimized, and the overall Processing performance (balance between processing time and power consumption) can be improved. In addition, in the use of the accelerator 200 by the host device 100 according to the present embodiment, the configuration of the programmable device 220 is changed by properly using two configurations, a configuration aimed at speeding up and a configuration aimed at power saving. And by optimizing, low power consumption can be realized while maintaining productivity.

<おわりに>
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明の技術的範囲はかかる例に限定されない。本発明の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属する。
<Conclusion>
The preferred embodiments of the present invention have been described in detail above with reference to the accompanying drawings, but the technical scope of the present invention is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field of the present invention can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it belongs to the technical scope of the present invention.

例えば、上記実施形態では、ホスト機器側で利用されるソフトウエアと、アクセラレータ側で利用されるコンフィギュレーションデータとを機能別に組にして格納するコンフィギュレーションデータ格納部115を開示した。そして、上記実施形態では、このコンフィギュレーションデータ格納部115はホスト機器100内に記憶されていた。しかしながら、ホスト機器側で利用されるソフトウエアと、アクセラレータ側で利用されるコンフィギュレーションデータとを組にして格納する格納領域は、ホスト機器100に内蔵されている場合に限られず、例えばホスト機器100とネットワークにより接続された任意の記憶装置に記憶され、その記憶装置により管理され、ホスト機器100が適宜、記憶装置から取得するようにしてもよい。   For example, in the above-described embodiment, the configuration data storage unit 115 is disclosed that stores software used on the host device side and configuration data used on the accelerator side in pairs by function. In the above embodiment, the configuration data storage unit 115 is stored in the host device 100. However, the storage area for storing the software used on the host device side and the configuration data used on the accelerator side as a set is not limited to being stored in the host device 100. For example, the host device 100 May be stored in an arbitrary storage device connected via a network, managed by the storage device, and the host device 100 may appropriately acquire the storage device.

コンフィギュレーションデータ記憶部215も同様に、必ずしもアクセラレータ200に内蔵されている必要はなく、例えばアクセラレータとネットワークにより接続された任意の記憶装置に記憶され、その記憶装置により管理され、アクセラレータ200が適宜、記憶装置から取得するようにしてもよい。   Similarly, the configuration data storage unit 215 is not necessarily built in the accelerator 200, and is stored in an arbitrary storage device connected to the accelerator and the network, for example, and managed by the storage device. You may make it acquire from a memory | storage device.

また、上記実施形態では、ホスト機器100側で選択されたコンフィギュレーションデータは、コンフィギュレーションデータの識別情報をホスト機器100からアクセラレータに送信することにより特定するようにした。しかしながら、コンフィギュレーションデータに関する情報の受け渡しはこれに限らず、例えばホスト機器100側で選択されたコンフィギュレーションデータそのものをホスト機器100からアクセラレータ200に送信することもできる。この場合には、コンフィギュレーションデータ記憶部215は不要である。   In the above embodiment, the configuration data selected on the host device 100 side is specified by transmitting the identification information of the configuration data from the host device 100 to the accelerator. However, the delivery of the information regarding the configuration data is not limited to this. For example, the configuration data itself selected on the host device 100 side can be transmitted from the host device 100 to the accelerator 200. In this case, the configuration data storage unit 215 is not necessary.

100 ホスト機器
105 制御部
110 プログラム蓄積部
115 コンフィギュレーションデータ格納部
120 データ選択部
125 データ転送部
130 演算部
200 アクセラレータ
205 データ通信部
210 制御部
215 コンフィギュレーションデータ記憶部
220 プログラマブルデバイス(リコンフィギュラブルプログラマブルデバイス)
225 ローカルメモリ
100 Host device 105 Control unit 110 Program storage unit 115 Configuration data storage unit 120 Data selection unit 125 Data transfer unit 130 Operation unit 200 Accelerator 205 Data communication unit 210 Control unit 215 Configuration data storage unit 220 Programmable device (reconfigurable programmable) device)
225 Local memory

特開2008−165746号公報JP 2008-165746 A

Claims (9)

コンフィギュレーションデータにより構成又は再構成可能なプログラマブルデバイスを有するアクセラレータを使用して演算処理を実行する情報処理装置であって、
前記コンフィギュレーションデータが機能別に複数格納された領域内から前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択するデータ選択部と、
前記選択されたコンフィギュレーションデータに関する情報を前記アクセラレータに転送するデータ転送部と、
を備える情報処理装置。
An information processing apparatus that performs arithmetic processing using an accelerator having a programmable device that can be configured or reconfigured by configuration data,
A data selection unit that selects information related to configuration data according to the function of the arithmetic processing from an area where a plurality of the configuration data is stored by function;
A data transfer unit that transfers information about the selected configuration data to the accelerator;
An information processing apparatus comprising:
前記格納領域には、前記コンフィギュレーションデータによる構成又は再構成後のプログラマブルデバイスを用いて実行される演算処理と連携して、前記情報処理装置側にて実行される処理用のソフトウエアが、前記複数のコンフィギュレーションデータに関する情報と組になって複数格納されている請求項1に記載の情報処理装置。   In the storage area, software for processing executed on the information processing apparatus side in cooperation with arithmetic processing executed using the configuration device based on the configuration data or the programmable device after reconfiguration, The information processing apparatus according to claim 1, wherein a plurality of pieces of information related to a plurality of configuration data are stored in pairs. 前記格納領域には、機能毎に目的別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、前記演算処理の機能に対応した前記格納領域内のコンフィギュレーションデータに関する情報から、前記演算処理の目的に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information on configuration data for each purpose is stored for each function,
The said data selection part selects the information regarding the configuration data according to the objective of the said arithmetic processing from the information regarding the configuration data in the said storage area corresponding to the function of the said arithmetic processing. Information processing device.
前記格納領域には、目的毎に機能別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、前記演算処理の目的に対応した前記格納領域内のコンフィギュレーションデータに関する情報から、前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information on configuration data for each function is stored for each purpose.
The said data selection part selects the information regarding the configuration data according to the function of the said arithmetic processing from the information regarding the configuration data in the said storage area corresponding to the objective of the said arithmetic processing. Information processing device.
前記格納領域には、演算処理の分類毎に機能別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、前記演算処理の分類に対応した前記格納領域内のコンフィギュレーションデータに関する情報から、前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information on configuration data for each function is stored for each classification of arithmetic processing,
The said data selection part selects the information regarding the configuration data according to the function of the said arithmetic processing from the information regarding the configuration data in the said storage area corresponding to the classification | category of the said arithmetic processing. Information processing device.
前記格納領域には、演算処理の条件毎に機能別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、ユーザの入力条件に対応した前記格納領域内の演算処理の条件のコンフィギュレーションデータに関する情報から、前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information related to configuration data for each function is stored for each condition of arithmetic processing,
The data selection unit selects information on configuration data corresponding to a function of the arithmetic processing from information on configuration data of arithmetic processing conditions in the storage area corresponding to a user input condition. 2. The information processing apparatus according to 2.
前記格納領域には、機種毎に機能別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、前記演算処理の対象機種に対応した前記格納領域内の機種のコンフィギュレーションデータに関する情報から、前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information regarding configuration data for each function is stored for each model,
The data selection unit selects information on configuration data corresponding to a function of the arithmetic processing from information on configuration data of the model in the storage area corresponding to the target model of the arithmetic processing. The information processing apparatus described in 1.
前記格納領域には、付加処理毎に機能別のコンフィギュレーションデータに関する情報が格納され、
前記データ選択部は、前記演算処理の付加処理に対応した前記格納領域内のコンフィギュレーションデータに関する情報から、前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択する請求項1又は2に記載の情報処理装置。
In the storage area, information regarding configuration data for each function is stored for each additional process,
The said data selection part selects the information regarding the configuration data according to the function of the said arithmetic processing from the information regarding the configuration data in the said storage area corresponding to the addition process of the said arithmetic processing. Information processing device.
コンフィギュレーションデータにより構成又は再構成可能なプログラマブルデバイスを有するアクセラレータを使用して演算処理を実行する方法であって、
コンフィギュレーションデータに関する情報が機能別に複数格納された領域内から前記演算処理の機能に応じたコンフィギュレーションデータに関する情報を選択するステップと、
前記選択されたコンフィギュレーションデータに関する情報を前記アクセラレータに転送するステップと、
前記転送されたコンフィギュレーションデータに関する情報から識別されるコンフィギュレーションデータにより前記プログラマブルデバイスを構成又は再構成するステップと、
前記構成又は再構成されたプログラマブルデバイスを有する前記アクセラレータを使用して前記演算処理を実行するステップと、
を含む演算処理方法。
A method of performing arithmetic processing using an accelerator having a programmable device that can be configured or reconfigured by configuration data,
Selecting information related to configuration data according to the function of the arithmetic processing from an area where a plurality of information related to configuration data is stored by function; and
Transferring information about the selected configuration data to the accelerator;
Configuring or reconfiguring the programmable device with configuration data identified from information about the transferred configuration data;
Performing the operation using the accelerator having the configured or reconfigured programmable device; and
An arithmetic processing method including
JP2011241016A 2011-11-02 2011-11-02 Information processing apparatus and arithmetic processing method Pending JP2013098823A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011241016A JP2013098823A (en) 2011-11-02 2011-11-02 Information processing apparatus and arithmetic processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011241016A JP2013098823A (en) 2011-11-02 2011-11-02 Information processing apparatus and arithmetic processing method

Publications (1)

Publication Number Publication Date
JP2013098823A true JP2013098823A (en) 2013-05-20

Family

ID=48620319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011241016A Pending JP2013098823A (en) 2011-11-02 2011-11-02 Information processing apparatus and arithmetic processing method

Country Status (1)

Country Link
JP (1) JP2013098823A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015014833A (en) * 2013-07-03 2015-01-22 スパンション エルエルシー Reconfigurable lsi
US9413355B2 (en) 2014-09-26 2016-08-09 Canon Kabushiki Kaisha Information processing apparatus and control method therefor
JP2017059230A (en) * 2015-09-14 2017-03-23 株式会社リコー Data processing system and data processing method
US9748954B2 (en) 2015-10-22 2017-08-29 Fujitsu Limited Calculation device and calculation method
US9762770B2 (en) 2014-12-17 2017-09-12 Canon Kabushiki Kaisha Image processing apparatus having dynamically reconfigurable circuits to perform image processing, control method thereof, and storage medium storing computer program therefor
US9948808B2 (en) 2015-09-24 2018-04-17 Canon Kabushiki Kaisha Information processing apparatus having circuit configuration data installed based on identifier correspondence, method for controlling the same, and storage medium
US10037591B2 (en) 2015-01-29 2018-07-31 Canon Kabushiki Kaisha Information processing apparatus and method of controlling the same

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015014833A (en) * 2013-07-03 2015-01-22 スパンション エルエルシー Reconfigurable lsi
US9413355B2 (en) 2014-09-26 2016-08-09 Canon Kabushiki Kaisha Information processing apparatus and control method therefor
US9762770B2 (en) 2014-12-17 2017-09-12 Canon Kabushiki Kaisha Image processing apparatus having dynamically reconfigurable circuits to perform image processing, control method thereof, and storage medium storing computer program therefor
US10037591B2 (en) 2015-01-29 2018-07-31 Canon Kabushiki Kaisha Information processing apparatus and method of controlling the same
JP2017059230A (en) * 2015-09-14 2017-03-23 株式会社リコー Data processing system and data processing method
US9948808B2 (en) 2015-09-24 2018-04-17 Canon Kabushiki Kaisha Information processing apparatus having circuit configuration data installed based on identifier correspondence, method for controlling the same, and storage medium
US9748954B2 (en) 2015-10-22 2017-08-29 Fujitsu Limited Calculation device and calculation method

Similar Documents

Publication Publication Date Title
JP2013098823A (en) Information processing apparatus and arithmetic processing method
EP2624056B1 (en) Image forming apparatus, control method for image forming apparatus, and storage medium
US8780389B2 (en) Image processing device for modifying operating mode
US9407784B2 (en) Image processing apparatus, control method thereof, and storage medium
JP2012048243A (en) IMAGE-FORMING DEVICE, SoC UNIT AND DRIVING METHOD OF IMAGE-FORMING DEVICE
JP2011025671A (en) Image forming device, and low electric power control method therefor
JP2008507766A (en) Power management coordination in multi-core processors
JP2014002727A (en) Power management device and image forming apparatus using the same, and power management method
US9772795B2 (en) Processing apparatus to recognize peripheral component interconnect express devices during bootup
US20170315606A1 (en) Apparatus and method for information processing
US10642626B2 (en) Information processing apparatus, control method of information processing apparatus, and storage medium
US10037591B2 (en) Information processing apparatus and method of controlling the same
US20170041482A1 (en) Printing apparatus having plurality of power states and control method therefor
US10884481B2 (en) Apparatus and method for improving power savings by accelerating device suspend and resume operations
KR102333391B1 (en) Electronic apparatus and method for contorolling power thereof
JP4858792B2 (en) Image processing apparatus and program
US20160352948A1 (en) Image forming apparatus, image forming system, and image forming method
US20160050332A1 (en) Image processing apparatus for controlling dynamic reconfigurable apparatus, information processing method for image processing apparatus, and storage medium for storing program to achieve information processing method
US20180017914A1 (en) Image forming apparatus, power control method of image forming apparatus, and storage medium
JP2016115979A (en) Image processing apparatus, control method and program thereof
US10061282B2 (en) Function control device, apparatus including same, and communication establishing method
CN111541825B (en) Electronic device and control method thereof
JP2009177387A (en) Multifunction apparatus and power saving method of the apparatus
JP2011048511A (en) Semiconductor integrated circuit and power-saving control method
JP2006050444A (en) Image processor and method of controlling image processor