Nothing Special   »   [go: up one dir, main page]

JP6824806B2 - Management device - Google Patents

Management device Download PDF

Info

Publication number
JP6824806B2
JP6824806B2 JP2017077521A JP2017077521A JP6824806B2 JP 6824806 B2 JP6824806 B2 JP 6824806B2 JP 2017077521 A JP2017077521 A JP 2017077521A JP 2017077521 A JP2017077521 A JP 2017077521A JP 6824806 B2 JP6824806 B2 JP 6824806B2
Authority
JP
Japan
Prior art keywords
parameter
circuit module
management device
circuit
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.)
Active
Application number
JP2017077521A
Other languages
Japanese (ja)
Other versions
JP2018180805A (en
Inventor
丈幸 井口
丈幸 井口
貴靖 大屋
貴靖 大屋
啓介 手島
啓介 手島
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.)
Toshiba Development and Engineering Corp
Original Assignee
Toshiba Development and Engineering Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Development and Engineering Corp filed Critical Toshiba Development and Engineering Corp
Priority to JP2017077521A priority Critical patent/JP6824806B2/en
Publication of JP2018180805A publication Critical patent/JP2018180805A/en
Application granted granted Critical
Publication of JP6824806B2 publication Critical patent/JP6824806B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Description

本発明は、リコンフィグ可能な電子デバイスリソースにおける回路モジュールの実装の管理に関する。 The present invention relates to managing the implementation of circuit modules in reconfigurable electronic device resources.

FPGA(Field Programmable Gate Array)などのプログラム可能な論理デバイスに回路モジュールを実装することで、当該回路モジュールの機能追加、バグ修正などを容易に行うことができる。さらに、リコンフィグ可能なリソースを有する論理デバイスを複数の異なる回路モジュールで時分割使用することも提案されている。 By mounting a circuit module on a programmable logic device such as an FPGA (Field Programmable Gate Array), it is possible to easily add functions and fix bugs of the circuit module. It has also been proposed to use time-sharing logical devices with reconfigurable resources in multiple different circuit modules.

特許文献1は、再構成可能な論理回路の再構成時間を短縮することを目的とした技術を開示している。具体的には、特許文献1は、論理回路Aと論理回路Bとの差分回路情報を保持し、論理回路Aを再構成した後に論理回路Bを再構成する場合に差分回路情報を利用するという技術を開示している。 Patent Document 1 discloses a technique for shortening the reconstruction time of a reconfigurable logic circuit. Specifically, Patent Document 1 holds the difference circuit information between the logic circuit A and the logic circuit B, and uses the difference circuit information when the logic circuit B is reconstructed after the logic circuit A is reconstructed. The technology is disclosed.

特開2009−123129号公報JP-A-2009-123129

リコンフィグ可能なリソースに実装された回路モジュールを処理の途中で一旦削除し、その後に回路モジュールを再実装して当該処理を再開することがある。この場合には、回路モジュールの内部状態が初期化されて実装されることになる。故に、回路モジュールが実装されてから処理が適切に再開可能となるまでの間に、当該回路モジュールを削除する直前の内部状態を再現するための待ち時間が生じることがある。例えば、再開される処理が、回路モジュールの過去の出力値を必要とする演算である場合には、当該回路モジュールを削除する直前までの演算を再実行しなければ、当該処理を適切に再開することはできない。この待ち時間が長くなると、回路モジュールによる処理の再開が遅れたり、回路モジュールが長期間に亘ってリソースを占有したり、回路モジュールが処理を実行できる期間が短くなったりするなどの問題が生じる。 The circuit module mounted on the reconfigurable resource may be deleted once in the middle of the process, and then the circuit module may be remounted to restart the process. In this case, the internal state of the circuit module is initialized and implemented. Therefore, there may be a waiting time for reproducing the internal state immediately before the circuit module is deleted between the time when the circuit module is mounted and the time when the processing can be appropriately restarted. For example, if the process to be restarted is an operation that requires the past output value of the circuit module, the process is appropriately restarted unless the operation immediately before the circuit module is deleted is re-executed. It is not possible. If this waiting time becomes long, problems such as delay in restarting the processing by the circuit module, the circuit module occupying the resource for a long period of time, and the period during which the circuit module can execute the processing become short.

本発明は、リコンフィグ可能な電子デバイスリソースに実装された回路モジュールが中断されていた処理を再開するための待ち時間を短縮することを目的とする。 An object of the present invention is to reduce the waiting time for the circuit module mounted on the reconfigurable electronic device resource to resume the interrupted processing.

本発明の一態様によれば、管理装置は、パラメータ管理部と、パラメータ調整部とを含む。パラメータ管理部は、リコンフィグ可能な電子デバイスリソースの第1の領域に実装されている第1の回路モジュールがリソースから削除される前に、第1の回路モジュールによって行われる第1の処理において使用される第1のパラメータを記憶部に退避させる。パラメータ調整部は、第1の処理に関連付けられる第2の回路モジュールが第1の処理の再開のためにリソースの第2の領域に実装される場合に、記憶部に退避されている第1のパラメータを調整し、第2のパラメータを得る。パラメータ管理部は、第1の処理の再開のために第2の領域に実装された第2の回路モジュールに第2のパラメータを設定する。 According to one aspect of the present invention, the management device includes a parameter management unit and a parameter adjustment unit. The parameter management unit is used in the first processing performed by the first circuit module before the first circuit module implemented in the first area of the reconfigurable electronic device resource is deleted from the resource. The first parameter to be generated is saved in the storage unit. The parameter adjustment unit is stored in the storage unit when the second circuit module associated with the first processing is mounted in the second area of the resource for resuming the first processing. Adjust the parameters to get the second parameter. The parameter management unit sets the second parameter in the second circuit module mounted in the second area for resuming the first process.

本発明によれば、リコンフィグ可能な電子デバイスリソースに実装された回路モジュールが中断されていた処理を再開するための待ち時間を短縮することができる。 According to the present invention, it is possible to reduce the waiting time for the circuit module mounted on the reconfigurable electronic device resource to resume the interrupted processing.

第1の実施形態に係るリコンフィグ管理装置を例示するブロック図。The block diagram which illustrates the reconfiguring management apparatus which concerns on 1st Embodiment. 図1のリコンフィグ管理装置の周辺を例示するブロック図。The block diagram which illustrates the periphery of the reconfiguring management apparatus of FIG. 図2のリソースの領域に実装される回路モジュールと、パラメータ記憶部に格納されるパラメータとの経時変化を示すタイミングチャート。A timing chart showing changes over time between the circuit module mounted in the resource area of FIG. 2 and the parameters stored in the parameter storage unit. 無限インパルス応答(IIR:Infinite Impulse Response)フィルタを例示する図。The figure which exemplifies an infinite impulse response (IIR: Infinity Impulse Response) filter. IIRフィルタの別の例を示す図。The figure which shows another example of the IIR filter. パラメータの退避例の説明図。Explanatory drawing of the parameter saving example. パラメータの復帰例の説明図。Explanatory drawing of the parameter return example. パラメータの復帰例の説明図。Explanatory drawing of the parameter return example.

以下、図面を参照しながら実施形態の説明を述べる。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。 Hereinafter, embodiments will be described with reference to the drawings. Hereinafter, elements that are the same as or similar to the elements described will be designated by the same or similar reference numerals, and duplicate explanations will be basically omitted.

(第1の実施形態)
第1の実施形態に係るリコンフィグ管理装置100は、例えば、図2に示されるように、(半導体)集積回路200に積まれる回路であってよい。図2の例では、集積回路200は、リコンフィグ管理装置100の他に、アプリケーション実行部210、リコンフィグ可能な電子デバイスリソース220およびパラメータ記憶部230を積んでいるが、これはハードウェア構成の一例に過ぎない。
(First Embodiment)
The reconfiguring management device 100 according to the first embodiment may be a circuit stacked in the (semiconductor) integrated circuit 200, for example, as shown in FIG. In the example of FIG. 2, in addition to the reconfiguring management device 100, the integrated circuit 200 includes an application execution unit 210, a reconfigurable electronic device resource 220, and a parameter storage unit 230, which has a hardware configuration. It's just an example.

リコンフィグ管理装置100は、アプリケーション実行部210からの要求に応じて、リコンフィグ可能な電子デバイスリソース220の有する複数の(リコンフィグ)領域のいずれかに回路モジュールを実装する(回路データを書き込む)。リコンフィグ管理装置100は、所望の回路モジュールを領域に実装するための回路データをコンフィギュレーションROM(Read Only Memory)240から読み出すことができる。また、リコンフィグ管理装置100は、リソース220の領域に実装されている回路モジュールを必要に応じて削除する。ここで、回路モジュールの削除とは、回路モジュールの書き換えのために、古い回路モジュールを破棄して領域を解放する処理を意味する。リコンフィグ管理装置100は、各領域が書き換え可能な状態にあるか(削除してよいか)否かを管理しており、回路モジュールを書き換える領域を適切に選択できる。リコンフィグ管理装置100は、アプリケーション実行部210から要求された回路モジュールの実装が正常に終了したこと/正常に終了しなかったことをアプリケーション実行部210に通知する。アプリケーション実行部210は、通知された回路モジュールの実装結果に応じて、実行中のアプリケーションソフトウェアによって規定される動作を行う。 The reconfiguring management device 100 mounts a circuit module (writes circuit data) in any of a plurality of (reconfiguring) areas of the reconfigurable electronic device resource 220 in response to a request from the application execution unit 210. .. The reconfiguring management device 100 can read circuit data for mounting a desired circuit module in an area from the configuration ROM (Read Only Memory) 240. Further, the reconfiguring management device 100 deletes the circuit module mounted in the area of the resource 220 as necessary. Here, the deletion of a circuit module means a process of discarding an old circuit module and freeing an area for rewriting the circuit module. The reconfiguring management device 100 manages whether or not each area is in a rewritable state (may be deleted), and the area for rewriting the circuit module can be appropriately selected. The reconfiguring management device 100 notifies the application execution unit 210 that the implementation of the circuit module requested by the application execution unit 210 has been completed normally / has not been completed normally. The application execution unit 210 performs an operation specified by the running application software according to the notified implementation result of the circuit module.

さらに、リコンフィグ管理装置100は、後述されるように、リソース220の領域から回路モジュールを削除する前に当該回路モジュールによって行われる処理において使用されるパラメータをパラメータ記憶部230に退避させたり、当該処理を再開するために当該処理に関連付けられる回路モジュールをリソース220の領域に実装する場合に過去に退避させたパラメータを当該回路モジュールへ設定したりする(このような処理をパラメータの復帰とも呼ぶ)。処理を再開するために実装される回路モジュールは、当該処理の中断のために削除された回路モジュールと同一であってもよいし、後述されるように、異なっていてもよい。ここで、パラメータとは、削除される回路モジュールの内部の情報を指す。なお、処理を再開するために実装される回路モジュールが、退避させたパラメータをそのまま使用できない場合には、リコンフィグ管理装置100はパラメータを調整する。 Further, as will be described later, the reconfiguring management device 100 saves the parameters used in the processing performed by the circuit module in the parameter storage unit 230 before deleting the circuit module from the area of the resource 220, or the reconfiguring management device 100. When the circuit module associated with the process is mounted in the area of resource 220 in order to restart the process, the parameters saved in the past are set in the circuit module (such process is also called parameter return). .. The circuit module implemented to resume the process may be the same as the circuit module deleted due to the interruption of the process, or may be different as described below. Here, the parameter refers to the information inside the circuit module to be deleted. If the circuit module mounted to restart the process cannot use the saved parameters as they are, the reconfiguring management device 100 adjusts the parameters.

なお、パラメータの退避・復帰は、一定の条件下で省略可能である。すなわち、パラメータの退避・復帰を行ったとしても回路モジュールの実装から当該回路モジュールによる処理の再開までの待ち時間が短縮しない場合、待ち時間を削減する必要がない場合などには、パラメータの退避・復帰が省略され得る。 It should be noted that the saving / returning of the parameters can be omitted under certain conditions. That is, if the waiting time from the mounting of the circuit module to the resumption of processing by the circuit module is not shortened even if the parameters are saved / restored, or if it is not necessary to reduce the waiting time, the parameters are saved / restored. Return may be omitted.

パラメータの退避・復帰を行うことで待ち時間が短縮する回路モジュールとして、例えば、出力フィードバック路を備える回路が挙げられる。具体的には、(デジタル)IIRフィルタ、PID(Proportional Integral Differential)制御回路などは、出力フィードバック路を備える。このような出力フィードバック路を備える回路に相当する回路モジュールによる処理を中断する場合には、パラメータの退避・復帰を行うことで待ち時間を短縮することができる。 As a circuit module in which the waiting time is shortened by saving / returning parameters, for example, a circuit provided with an output feedback path can be mentioned. Specifically, a (digital) IIR filter, a PID (Proportional Integral Differential) control circuit, and the like include an output feedback path. When the processing by the circuit module corresponding to the circuit provided with such an output feedback path is interrupted, the waiting time can be shortened by saving / restoring the parameters.

IIRフィルタの一例を図4に示す。以降の説明では、図4のIIRフィルタ300を回路(モジュール)Aと称することもある。IIRフィルタ300は、加算器301と、レジスタ311と、レジスタ312と、係数レジスタ321と、係数レジスタ322と、乗算器331と、乗算器332とを含む。IIRフィルタ300は、例えば16ビット幅を使用する。すなわち、IIRフィルタ300において扱われる信号は全て16ビットである。 An example of the IIR filter is shown in FIG. In the following description, the IIR filter 300 of FIG. 4 may be referred to as a circuit (module) A. The IIR filter 300 includes an adder 301, a register 311 and a register 312, a coefficient register 321 and a coefficient register 322, a multiplier 331, and a multiplier 332. The IIR filter 300 uses, for example, a 16-bit width. That is, all the signals handled by the IIR filter 300 are 16 bits.

レジスタ311は、1つ前の(IIRフィルタ300の)出力値を格納する。レジスタ312は、2つ前の出力値を格納する。3つ以上前の出力値を格納するために、図示されないレジスタが用意されてもよい。なお、IIRフィルタでは、過去の出力値の全てが、現在の出力値を生成するための演算に用いられる。 Register 311 stores the previous output value (of the IIR filter 300). Register 312 stores the output value of the previous two. Registers (not shown) may be prepared to store the output values of three or more previous ones. In the IIR filter, all the past output values are used in the calculation for generating the current output value.

係数レジスタ321は、1つ前の出力値に乗算される係数を格納する。係数レジスタ322は、2つ前の出力値に乗算される係数を格納する。3つ以上前の出力値に乗算される係数を格納するために、図示されない係数レジスタが用意されてもよい。なお、これらの係数は固定値である。 The coefficient register 321 stores a coefficient to be multiplied by the previous output value. The coefficient register 322 stores a coefficient to be multiplied by the output value immediately before. Coefficient registers (not shown) may be provided to store the coefficients that are multiplied by the output values three or more previous. These coefficients are fixed values.

乗算器331は、レジスタ311から1つ前の出力値を読み出し、係数レジスタ321から係数を読み出す。乗算器331は、1つ前の出力値に係数を乗算し、乗算結果を加算器301へと送る。乗算器332は、レジスタ312から2つ前の出力値を読み出し、係数レジスタ322から係数を読み出す。乗算器332は、2つ前の出力値に係数を乗算し、乗算結果を加算器301へと送る。3つ以上前の出力値に係数を乗算するために、図示されない乗算器が用意されてもよい。 The multiplier 331 reads the output value immediately before from the register 311 and reads the coefficient from the coefficient register 321. The multiplier 331 multiplies the previous output value by a coefficient and sends the multiplication result to the adder 301. The multiplier 332 reads the output value two before from the register 312, and reads the coefficient from the coefficient register 322. The multiplier 332 multiplies the output value two before by a coefficient and sends the multiplication result to the adder 301. A multiplier (not shown) may be provided to multiply the output value three or more previous by the coefficient.

加算器301は、現在の入力値と、過去の出力値に係数を乗じたもの(すなわち、乗算器331および乗算器332(+α)の出力)とを加算することで、現在の出力値を生成する。現在の出力値は、IIRフィルタ300の外部に送られるとともに、レジスタ311に格納される。他方、レジスタ311に格納されていた1つ前の出力値は、レジスタ312へとシフトする。同様に、レジスタ312に格納されていた2つ前の出力値は、図示されないレジスタへとシフトしてもよい。 The adder 301 generates the current output value by adding the current input value and the past output value multiplied by a coefficient (that is, the output of the multiplier 331 and the multiplier 332 (+ α)). To do. The current output value is sent to the outside of the IIR filter 300 and stored in the register 311. On the other hand, the previous output value stored in the register 311 shifts to the register 312. Similarly, the output value two before stored in the register 312 may be shifted to a register (not shown).

このように、レジスタ311およびレジスタ312(+α)に格納される値は、新たな入力値が与えられる度に(換言すれば、新たな出力値が生成される度に)更新されることになる。 In this way, the values stored in the register 311 and the register 312 (+ α) are updated every time a new input value is given (in other words, every time a new output value is generated). ..

仮に、IIRフィルタ処理をn(nは任意の自然数)回実行してからパラメータの退避を行うことなくIIRフィルタ300に相当する回路モジュールを削除し、その後に当該回路モジュールを再実装したとする。この場合に、レジスタ311およびレジスタ312に格納されていた値は初期化されているので、IIRフィルタ処理が初期状態から再びn回行われるのを待たなければ、中断されたIIRフィルタ処理を適切に再開することができない。 It is assumed that the IIR filter processing is executed n (n is an arbitrary natural number), the circuit module corresponding to the IIR filter 300 is deleted without saving the parameters, and then the circuit module is remounted. In this case, since the values stored in the registers 311 and 312 have been initialized, the interrupted IIR filtering can be properly performed without waiting for the IIR filtering to be performed n times again from the initial state. Cannot resume.

他方、レジスタ311およびレジスタ312(+α)に格納される値を退避しておけば、その後に回路モジュールを再実装する場合に、当該値を復帰させることができるので、当該回路モジュールは直ちに中断されたIIRフィルタ処理を再開可能となる。要するに、中断された処理を再開するための待ち時間を短縮することができる。なお、この例では、パラメータは、回路モジュールに含まれるレジスタに格納された値であるが、退避・復帰の対象となるパラメータはこれに限られない。 On the other hand, if the values stored in the register 311 and the register 312 (+ α) are saved, the values can be restored when the circuit module is remounted after that, so that the circuit module is immediately interrupted. The IIR filter processing can be restarted. In short, the waiting time for resuming the interrupted processing can be shortened. In this example, the parameter is a value stored in a register included in the circuit module, but the parameter to be saved / restored is not limited to this.

アプリケーション実行部210は、例えば、CPU(Central Processing Unit)などのプロセッサである。アプリケーション実行部210は、アプリケーションメモリ250に展開されたアプリケーションソフトウェアを実行する。アプリケーション実行部210は、アプリケーションソフトウェアの実行時に、必要に応じて回路モジュールをリソース220の領域に実装するように、リコンフィグ管理装置100に要求する。 The application execution unit 210 is, for example, a processor such as a CPU (Central Processing Unit). The application execution unit 210 executes the application software deployed in the application memory 250. The application execution unit 210 requests the reconfig management device 100 to mount the circuit module in the area of the resource 220 as needed when the application software is executed.

リソース220は、例えばFPGAなどのリコンフィグ可能な電子デバイスリソースである。リソース220は、個別に回路モジュールを実装可能な複数の領域を有する。リソース220の領域は、リコンフィグ管理装置100によって、回路モジュールが実装されたり、実装された回路モジュールが削除されたりする。図2の例では、リソース220は、合計3つの領域1、領域2および領域3を有している。但し、実用上は、領域数は2以下または4以上であってもよいし、各領域の規模は均等でなくてもよい。 The resource 220 is a reconfigurable electronic device resource such as an FPGA. The resource 220 has a plurality of areas in which circuit modules can be individually mounted. In the area of the resource 220, the circuit module is mounted or the mounted circuit module is deleted by the reconfiguring management device 100. In the example of FIG. 2, the resource 220 has a total of three regions 1, region 2 and region 3. However, in practice, the number of regions may be 2 or less or 4 or more, and the scale of each region may not be equal.

パラメータ記憶部230は、リコンフィグ管理装置100によって退避されたパラメータを格納する。このパラメータは、当該パラメータを使用する処理の再開のために回路モジュールがリソース220の領域に実装される場合に、復帰のためにリコンフィグ管理装置100によって読み出される。パラメータ記憶部230は、例えばリソース220を有効活用するという観点からすると、当該リソース220とは別体であることが好ましい。但し、パラメータ記憶部230を、リソース220の内部に設けることも可能である。 The parameter storage unit 230 stores the parameters saved by the reconfiguring management device 100. This parameter is read by the reconfigure management device 100 for recovery when the circuit module is mounted in the area of resource 220 to resume processing using that parameter. The parameter storage unit 230 is preferably separate from the resource 220, for example, from the viewpoint of effectively utilizing the resource 220. However, it is also possible to provide the parameter storage unit 230 inside the resource 220.

コンフィギュレーションROM240は、リソース220の領域に回路モジュールを実装するための回路データを格納する。この回路データは、必要に応じて、リコンフィグ管理装置100によって読み出され、リソース220の領域へ書き込まれる。 The configuration ROM 240 stores circuit data for mounting the circuit module in the area of the resource 220. This circuit data is read by the reconfiguring management device 100 and written to the area of the resource 220, if necessary.

アプリケーションメモリ250は、アプリケーション実行部210に接続されるRAM(Random Access Memory)である。アプリケーションメモリ250は、アプリケーション実行部210によって実行されるアプリケーションソフトウェアが展開される。このアプリケーションソフトウェアは、例えば図示されない補助記憶装置(HDD(Hard Disk Drive)、SSD(Solid State Drive)など)に格納されている。 The application memory 250 is a RAM (Random Access Memory) connected to the application execution unit 210. The application memory 250 is deployed with application software executed by the application execution unit 210. This application software is stored in, for example, an auxiliary storage device (HDD (Hard Disk Drive), SSD (Solid State Drive), etc.) (not shown).

具体的には、リコンフィグ管理装置100は、図1に例示されるように、リコンフィグ管理部110と、パラメータ管理部120と、パラメータ調整部130とを含む。なお、図1の機能分割は一例に過ぎない。パラメータ調整部130をパラメータ管理部120の一部として捉えることもできるし、パラメータ管理部120をリコンフィグ管理部110の一部として捉えることもできる。 Specifically, the reconfiguring management device 100 includes a reconfiguring management unit 110, a parameter management unit 120, and a parameter adjusting unit 130, as illustrated in FIG. The functional division in FIG. 1 is only an example. The parameter adjustment unit 130 can be regarded as a part of the parameter management unit 120, or the parameter management unit 120 can be regarded as a part of the reconfigure management unit 110.

リコンフィグ管理部110は、アプリケーション実行部210から、回路モジュールの実装を求める要求を受け付ける。リコンフィグ管理部110は、かかる要求に応じて、領域1〜3のうち書き換え可能な状態にある領域から、要求の対象となった回路モジュールを実装する領域を選択する。なお、ある回路を実装した領域と、当該回路(若しくは当該回路と同一の処理を行う他の回路)を後に再実装する領域とは同一であってもよいし、異なってもよい。 The reconfigure management unit 110 receives a request from the application execution unit 210 for mounting a circuit module. In response to the request, the reconfigure management unit 110 selects an area in which the circuit module targeted for the request is mounted from the rewritable areas 1 to 3. The area in which a certain circuit is mounted and the area in which the circuit (or another circuit that performs the same processing as the circuit) is later remounted may be the same or different.

選択された領域に実装されている回路モジュールは、削除されることになる。この回路モジュールについてパラメータの退避が必要である場合には、リコンフィグ管理部110は当該パラメータの退避をパラメータ管理部120に指示する。同様に、要求の対象となった回路モジュールについてパラメータの復帰が必要である場合には、リコンフィグ管理部110は当該パラメータの復帰をパラメータ管理部120に指示する。パラメータの退避/復帰が必要であるか否かは、例えば予め定められたテーブルを参照することで決定され得る。かかるテーブルは、後掲の表1に例示される。 Circuit modules mounted in the selected area will be deleted. When it is necessary to save the parameters for this circuit module, the reconfiguring management unit 110 instructs the parameter management unit 120 to save the parameters. Similarly, when it is necessary to restore the parameters of the circuit module that is the target of the request, the reconfiguring management unit 110 instructs the parameter management unit 120 to restore the parameters. Whether or not a parameter needs to be saved / restored can be determined, for example, by referring to a predetermined table. Such a table is illustrated in Table 1 below.

リコンフィグ管理部110は、要求の対象となった回路モジュールを実装するための回路データをコンフィギュレーションROMから読み出し、当該回路データを選択した領域に書き込むことで、当該回路モジュールを実装する。リコンフィグ管理部110は、回路モジュールの実装結果(実装が正常に終了したか否か)をアプリケーション実行部210に通知する。 The reconfigure management unit 110 mounts the circuit module by reading the circuit data for mounting the requested circuit module from the configuration ROM and writing the circuit data in the selected area. The reconfiguring management unit 110 notifies the application execution unit 210 of the mounting result of the circuit module (whether or not the mounting is completed normally).

パラメータ管理部120は、リコンフィグ管理部110によってパラメータの退避または復帰を指示される。パラメータの退避を指示された場合には、パラメータ管理部120は、指示された回路モジュールのパラメータを取得し(例えば、レジスタの値を読み出し)、パラメータ記憶部230に保存する。他方、パラメータの復帰を指示された場合には、パラメータ管理部120は、指示されたパラメータをパラメータ記憶部230から読み出し、指示された回路モジュールに設定する(例えばレジスタに値を書き込む)。ただし、復帰に際してパラメータの調整が必要である場合には、パラメータ管理部120は、パラメータ記憶部230から読み出したパラメータをパラメータ調整部130に渡す。そして、パラメータ管理部120は、パラメータ調整部130から調整済みのパラメータを受け取り、指示された回路モジュールに設定する。なお、復帰に際してパラメータの調整が必要であるか否かは、例えば予め定められたテーブルを参照することで決定され得る。 The parameter management unit 120 is instructed by the reconfigure management unit 110 to save or restore the parameters. When the parameter is instructed to be saved, the parameter management unit 120 acquires the parameter of the instructed circuit module (for example, reads the register value) and stores it in the parameter storage unit 230. On the other hand, when the parameter return is instructed, the parameter management unit 120 reads the instructed parameter from the parameter storage unit 230 and sets it in the instructed circuit module (for example, writes a value in a register). However, when it is necessary to adjust the parameters at the time of recovery, the parameter management unit 120 passes the parameters read from the parameter storage unit 230 to the parameter adjustment unit 130. Then, the parameter management unit 120 receives the adjusted parameter from the parameter adjustment unit 130 and sets it in the instructed circuit module. Whether or not the parameter needs to be adjusted at the time of recovery can be determined by referring to, for example, a predetermined table.

例えば、退避前にパラメータを使用していた回路モジュールと、復帰後にパラメータを使用する回路モジュールとが異なり、かつ、両者の使用するビット幅が異なる場合には、パラメータのビット幅を変更することが必要となる。また、パラメータが処理の実行中に時間変化する場合には、退避されたパラメータには処理が中断されていた期間における時間変化が反映されていない。故に、処理が中断されていた期間においてこの処理が実行されていたと仮定した場合にパラメータに生じていたであろう時間変化を模擬する補正を当該パラメータに施すことが必要となる。なお、例えば、カウントアップ、カウントダウンなどの定式化可能な時間変化は、模擬に適している。 For example, if the circuit module that used the parameter before saving and the circuit module that uses the parameter after returning are different, and the bit width used by both is different, the bit width of the parameter can be changed. You will need it. Further, when the parameter changes with time during the execution of the process, the saved parameter does not reflect the time change during the period in which the process was interrupted. Therefore, it is necessary to make a correction to the parameter that simulates the time change that would have occurred in the parameter if it were assumed that the process was being executed during the period in which the process was interrupted. For example, time changes that can be formulated such as count-up and count-down are suitable for simulation.

パラメータ調整部130は、パラメータ管理部120からパラメータを受け取り、当該パラメータを調整し、調整済みのパラメータをパラメータ管理部120に返す。パラメータ調整部130の実行可能な調整は、1種類であってもよいし、複数種類から選択されてもよい。 The parameter adjustment unit 130 receives a parameter from the parameter management unit 120, adjusts the parameter, and returns the adjusted parameter to the parameter management unit 120. The executable adjustment of the parameter adjusting unit 130 may be one type or may be selected from a plurality of types.

例えば、パラメータ調整部130は、パラメータのビット幅を変更し、調整済みのパラメータを得てもよい。この場合に、パラメータ調整部130は、調整済みのパラメータを復帰させる回路モジュールの使用するビット幅に適合するように、パラメータのビット幅を変更すればよい。 For example, the parameter adjusting unit 130 may change the bit width of the parameter to obtain the adjusted parameter. In this case, the parameter adjusting unit 130 may change the bit width of the parameter so as to match the bit width used by the circuit module that restores the adjusted parameter.

一般に、デジタル信号処理は、使用するビット幅が増えるほど、演算精度が向上するが消費電力も増大する。逆も同様である。このような演算精度と消費電力のトレードオフを考慮し、同一の処理を行うが異なるビット幅を使用する複数の回路モジュールを用意することがある。例えば、より小さいビット幅を使用する回路モジュールに処理を行わせることで、演算精度の低下を許容する必要はあるものの、低消費電力動作が可能となる。 In general, in digital signal processing, as the bit width used increases, the calculation accuracy improves, but the power consumption also increases. The reverse is also true. In consideration of such a trade-off between calculation accuracy and power consumption, a plurality of circuit modules that perform the same processing but use different bit widths may be prepared. For example, by causing a circuit module using a smaller bit width to perform processing, it is necessary to allow a decrease in calculation accuracy, but low power consumption operation becomes possible.

図5は、図4とは異なるビット幅を使用するIIRフィルタ400を例示する。以降の説明では、IIRフィルタ400を回路(モジュール)A’と称することもある。図4のIIRフィルタ300の使用するビット幅は16ビットであったが、IIRフィルタ400の使用するビット幅は14ビットである。すなわち、IIRフィルタ300は高い演算精度を指向する回路モジュールであり、IIRフィルタ400は低消費電力を指向する回路モジュールである。説明は省略するが、IIRフィルタ300よりも大きなビット幅を使用するIIRフィルタが用意されてもよい。 FIG. 5 illustrates an IIR filter 400 that uses a different bit width than that of FIG. In the following description, the IIR filter 400 may be referred to as a circuit (module) A'. The bit width used by the IIR filter 300 in FIG. 4 was 16 bits, but the bit width used by the IIR filter 400 is 14 bits. That is, the IIR filter 300 is a circuit module that aims at high calculation accuracy, and the IIR filter 400 is a circuit module that aims at low power consumption. Although description is omitted, an IIR filter that uses a bit width larger than that of the IIR filter 300 may be prepared.

図5のIIRフィルタ400は、加算器401と、レジスタ411と、レジスタ412と、係数レジスタ421と、係数レジスタ422と、乗算器431と、乗算器432と、ビット幅変換部441と、ビット幅変換部442とを含む。 The IIR filter 400 of FIG. 5 includes an adder 401, a register 411, a register 412, a coefficient register 421, a coefficient register 422, a multiplier 431, a multiplier 432, a bit width conversion unit 441, and a bit width. Includes a conversion unit 442.

IIRフィルタ400は、例えば14ビット幅を使用する。但し、リコンフィギュレーションを行っても、領域の境界にあるインターフェースを変更することはできない。故に、入力および出力のインターフェースは、IIRフィルタ300とIIRフィルタ400との間で共通化が必要である。すなわち、IIRフィルタ400の入力信号および出力信号のビット幅はいずれも、IIRフィルタ300と同じ16ビットである。そして、IIRフィルタ400のうちビット幅変換部441およびビット幅変換部442によって挟まれた領域で扱われる信号は全て14ビットである。 The IIR filter 400 uses, for example, a 14-bit width. However, even if the configuration is performed, the interface at the boundary of the area cannot be changed. Therefore, the input and output interfaces need to be shared between the IIR filter 300 and the IIR filter 400. That is, the bit widths of the input signal and the output signal of the IIR filter 400 are both 16 bits, which is the same as that of the IIR filter 300. The signals handled in the region sandwiched by the bit width conversion unit 441 and the bit width conversion unit 442 of the IIR filter 400 are all 14 bits.

加算器401、レジスタ411、レジスタ412、係数レジスタ421、係数レジスタ422、乗算器431および乗算器432は、14ビット信号を扱うという点を除いて、図4の加算器301、レジスタ311、レジスタ312、係数レジスタ321、係数レジスタ322、乗算器331および乗算器332と同様である。 The adder 401, register 411, register 412, coefficient register 421, coefficient register 422, multiplier 431 and multiplier 432 handle 14-bit signals, but adder 301, register 311 and register 312 in FIG. , The coefficient register 321 and the coefficient register 322, the multiplier 331 and the multiplier 332.

ビット幅変換部441は、16ビット信号(IIRフィルタ400の入力信号)を受け取り、そのビット幅を縮小して14ビット信号を得る。例えば、ビット幅変換部441は、信号をNビットだけ右シフトし、MSB(Most Significant Bit)から順に合計Nビットを破棄することで、Nビット分の縮小を実現できる。ここで、Nは任意の自然数であり、この例では2である。さらに、必要に応じてオフセットが加算されてもよい。ビット幅変換部441は、14ビット信号を加算器401へ出力する。 The bit width conversion unit 441 receives a 16-bit signal (input signal of the IIR filter 400) and reduces the bit width to obtain a 14-bit signal. For example, the bit width conversion unit 441 can realize reduction by N bits by shifting the signal to the right by N bits and discarding the total N bits in order from the MSB (Most Significant Bit). Here, N is an arbitrary natural number, which is 2 in this example. In addition, offsets may be added as needed. The bit width conversion unit 441 outputs a 14-bit signal to the adder 401.

ビット幅変換部442は、加算器401から14ビット信号を受け取り、そのビット幅を拡張して16ビット信号を得る。例えば、ビット幅変換部442は、信号をNビットだけ左シフトすることで、Nビット分の拡張を実現できる。さらに、必要に応じてオフセットが加算されてもよい。ビット幅変換部442は、16ビット信号をIIRフィルタ400の出力信号として外部へ出力する。 The bit width conversion unit 442 receives a 14-bit signal from the adder 401 and expands the bit width to obtain a 16-bit signal. For example, the bit width conversion unit 442 can realize expansion by N bits by shifting the signal to the left by N bits. In addition, offsets may be added as needed. The bit width conversion unit 442 outputs a 16-bit signal to the outside as an output signal of the IIR filter 400.

或いは、パラメータ調整部130は、処理が中断されていた期間において処理が実行されていたと仮定した場合にパラメータに生じていたであろう時間変化を模擬する補正をパラメータに施し、調整済みのパラメータを得てもよい。 Alternatively, the parameter adjusting unit 130 applies a correction to the parameter that simulates the time change that would have occurred in the parameter if it is assumed that the processing was executed during the period in which the processing was interrupted, and the adjusted parameter is used. You may get it.

以下、図3および図6乃至図8を用いて、4種類の処理A、処理B、処理Cおよび処理Dを順番に繰り返し実行する場合に、リソース220の領域1〜3に実装される回路モジュールとパラメータ記憶部230に格納されるパラメータとがどのように変化するかを説明する。なお、図3では、説明の簡単化のために、処理A、処理B、処理Cおよび処理Dの処理時間は全て同一であることとしたが、実際上これらは異なり得る。 Hereinafter, when the four types of processing A, processing B, processing C, and processing D are repeatedly executed in order using FIGS. 3 and 6 to 8, the circuit module mounted in the regions 1 to 3 of the resource 220. And how the parameters stored in the parameter storage unit 230 change will be described. In FIG. 3, for the sake of simplification of the description, the processing times of processing A, processing B, processing C, and processing D are all the same, but these may be different in practice.

処理Aは、IIRフィルタ処理に対応し、図4のIIRフィルタ300に相当する回路モジュールAまたは図5のIIRフィルタ400に相当する回路モジュールA’によって実行される。処理B、処理Cおよび処理Dは、それぞれ回路モジュールB、回路モジュールCおよび回路モジュールDによって実行される。パラメータの退避/復帰は、処理Aおよび処理Bについては行われるが、処理Cおよび処理Dについては行われない。処理Aは、回路モジュールの変更があり得る。例えば、処理Aを回路モジュールAによって実行した後に中断を挟んで回路モジュールA’によって実行すること、またその逆があり得る。他方、処理B、処理Cおよび処理Dは、回路モジュールが変更されることはない。以上の情報を下記表1にまとめる。 The process A corresponds to the IIR filter process and is executed by the circuit module A corresponding to the IIR filter 300 of FIG. 4 or the circuit module A'corresponding to the IIR filter 400 of FIG. Process B, Process C and Process D are executed by Circuit Module B, Circuit Module C and Circuit Module D, respectively. Parameter save / restore is performed for process A and process B, but not for process C and process D. In process A, the circuit module may be changed. For example, processing A may be executed by circuit module A followed by circuit module A'with an interruption, and vice versa. On the other hand, in process B, process C and process D, the circuit module is not changed. The above information is summarized in Table 1 below.

図3の時刻0に、領域1に実装された回路モジュールAによって処理Aが実行される。故に、時刻0に先立ち、リコンフィグ管理装置100は、回路モジュールAを領域1に実装済みである。また、続いて行われる処理Bおよび処理Cのために、領域2および領域3にはそれぞれ回路モジュールBおよび回路モジュールDが既に実装され待機状態にある。パラメータ記憶部230にはいかなるパラメータも退避されていない(すなわち、空の状態である)。 At time 0 in FIG. 3, process A is executed by the circuit module A mounted in region 1. Therefore, prior to time 0, the reconfiguring management device 100 has already mounted the circuit module A in the area 1. Further, for the subsequent processes B and C, the circuit module B and the circuit module D are already mounted in the regions 2 and 3, respectively, and are in a standby state. No parameter is saved in the parameter storage unit 230 (that is, it is empty).

図3の時刻1に、領域2に実装された回路モジュールBによって処理Bが実行される。他方、領域1に実装された回路モジュールAは、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、図6に例示されるように、回路モジュールAのパラメータをパラメータ記憶部230に退避し、それから、回路モジュールAを回路モジュールDに書き換える。 At time 1 in FIG. 3, process B is executed by the circuit module B mounted in the region 2. On the other hand, the circuit module A mounted in the region 1 is rewritten to the circuit module D. When the process A is interrupted, it is necessary to save the parameters. Therefore, as illustrated in FIG. 6, the reconfiguring management device 100 saves the parameters of the circuit module A in the parameter storage unit 230, and then rewrites the circuit module A to the circuit module D.

図3の時刻2に、領域3に実装された回路モジュールCによって処理Cが実行される。他方、領域2に実装された回路モジュールBは、回路モジュールAに書き換えられることになる。処理Bの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールBのパラメータをパラメータ記憶部230に退避する。また、処理Aの再開時には、パラメータを復帰させる必要がある。故に、リコンフィグ管理装置100は、図7に例示されるように、回路モジュールAを領域2に実装し、当該回路モジュールAのパラメータをパラメータ記憶部230から読み出し、当該回路モジュールAに設定する。 At time 2 in FIG. 3, process C is executed by the circuit module C mounted in the region 3. On the other hand, the circuit module B mounted in the region 2 is rewritten to the circuit module A. It is necessary to save the parameters when the process B is interrupted. Therefore, the reconfiguring management device 100 saves the parameters of the circuit module B in the parameter storage unit 230. Further, when the process A is restarted, it is necessary to restore the parameters. Therefore, as illustrated in FIG. 7, the reconfiguring management device 100 mounts the circuit module A in the area 2, reads the parameters of the circuit module A from the parameter storage unit 230, and sets them in the circuit module A.

図3の時刻3に、領域1に実装された回路モジュールDによって処理Dが実行される。他方、領域3に実装された回路モジュールCは、回路モジュールBに書き換えられることになる。処理Bの再開時にはパラメータを復帰させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールBを領域3に実装し、当該回路モジュールBのパラメータをパラメータ記憶部230から読み出し、当該回路モジュールBに設定する。 At time 3 in FIG. 3, the process D is executed by the circuit module D mounted in the region 1. On the other hand, the circuit module C mounted in the region 3 is rewritten to the circuit module B. It is necessary to restore the parameters when the process B is restarted. Therefore, the reconfig management device 100 mounts the circuit module B in the area 3, reads the parameters of the circuit module B from the parameter storage unit 230, and sets the circuit module B in the circuit module B.

図3の時刻4に、領域2に実装された回路モジュールAによって処理Aが実行される。他方、リコンフィグ管理装置100は、領域1に実装された回路モジュールDを回路モジュールCに書き換える。 At time 4 in FIG. 3, process A is executed by the circuit module A mounted in the region 2. On the other hand, the reconfig management device 100 rewrites the circuit module D mounted in the area 1 to the circuit module C.

図3の時刻5に、領域3に実装された回路モジュールBによって処理Bが実行される。他方、領域2に実装された回路モジュールAは、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、図6に例示されるように、回路モジュールAのパラメータをパラメータ記憶部230に退避し、それから、回路モジュールAを回路モジュールDに書き換える。 At time 5 in FIG. 3, processing B is executed by the circuit module B mounted in the region 3. On the other hand, the circuit module A mounted in the region 2 is rewritten to the circuit module D. When the process A is interrupted, it is necessary to save the parameters. Therefore, as illustrated in FIG. 6, the reconfiguring management device 100 saves the parameters of the circuit module A in the parameter storage unit 230, and then rewrites the circuit module A to the circuit module D.

図3の時刻6に、領域1に実装された回路モジュールCによって処理Cが実行される。他方、アプリケーション実行部210は、処理Aの実行のために、回路モジュールAではなく回路モジュールA’の実装を要求したとする。すなわち、領域3に実装された回路モジュールBは、回路モジュールAではなく回路モジュールA’に書き換えられることになる。処理Bの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールBのパラメータをパラメータ記憶部230に退避する。また、処理Aの再開時には、パラメータを復帰させる必要がある。故に、リコンフィグ管理装置100は、図8に例示されるように、回路モジュールA’を領域2に実装し、回路モジュールAのパラメータをパラメータ記憶部230から読み出し、当該回路モジュールA’向けに調整(図8の例ではビット幅の縮小)してから、当該回路モジュールA’に設定する。 At time 6 in FIG. 3, process C is executed by the circuit module C mounted in region 1. On the other hand, it is assumed that the application execution unit 210 requests the implementation of the circuit module A'instead of the circuit module A in order to execute the process A. That is, the circuit module B mounted in the region 3 is rewritten to the circuit module A'instead of the circuit module A. It is necessary to save the parameters when the process B is interrupted. Therefore, the reconfiguring management device 100 saves the parameters of the circuit module B in the parameter storage unit 230. Further, when the process A is restarted, it is necessary to restore the parameters. Therefore, as illustrated in FIG. 8, the reconfiguring management device 100 mounts the circuit module A'in the area 2, reads out the parameters of the circuit module A from the parameter storage unit 230, and adjusts them for the circuit module A'. (In the example of FIG. 8, the bit width is reduced), and then the circuit module A'is set.

図3の時刻7に、領域2に実装された回路モジュールDによって処理Dが実行される。他方、領域1に実装された回路モジュールCは、回路モジュールBに書き換えられることになる。処理Bの再開時にはパラメータを復帰させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールBを領域1に実装し、当該回路モジュールBのパラメータをパラメータ記憶部230から読み出し、当該回路モジュールBに設定する。 At time 7 in FIG. 3, the process D is executed by the circuit module D mounted in the region 2. On the other hand, the circuit module C mounted in the region 1 is rewritten to the circuit module B. It is necessary to restore the parameters when the process B is restarted. Therefore, the reconfiguring management device 100 mounts the circuit module B in the area 1, reads the parameters of the circuit module B from the parameter storage unit 230, and sets them in the circuit module B.

図3の時刻8に、領域3に実装された回路モジュールA’によって処理Aが実行される。他方、リコンフィグ管理装置100は、領域2に実装された回路モジュールDを回路モジュールCに書き換える。 At time 8 in FIG. 3, the process A is executed by the circuit module A'mounted in the region 3. On the other hand, the reconfig management device 100 rewrites the circuit module D mounted in the area 2 to the circuit module C.

図3の時刻9に、領域1に実装された回路モジュールBによって処理Bが実行される。他方、領域3に実装された回路モジュールA’は、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールA’のパラメータをパラメータ記憶部230に退避し、それから、回路モジュールA’を回路モジュールDに書き換える。 At time 9 in FIG. 3, process B is executed by the circuit module B mounted in the region 1. On the other hand, the circuit module A'mounted in the region 3 is rewritten to the circuit module D. When the process A is interrupted, it is necessary to save the parameters. Therefore, the reconfiguring management device 100 saves the parameters of the circuit module A'to the parameter storage unit 230, and then rewrites the circuit module A'to the circuit module D.

以上説明したように、第1の実施形態に係るリコンフィグ管理装置は、リコンフィグ可能な電子デバイスリソースに実装されている第1の回路モジュールを当該リソースから削除する前に、当該第1の回路モジュールに関連付けられる処理において使用される第1のパラメータをパラメータ記憶部に退避させる。そして、このリコンフィグ管理装置は、この処理に関連付けられる第2の回路モジュールが当該処理の再開のためにリソースに実装される場合に第1のパラメータを調整し、第2のパラメータを得て、これを第2の回路モジュールに設定する。 As described above, the reconfiguring management device according to the first embodiment has the first circuit before deleting the first circuit module mounted on the reconfigurable electronic device resource from the resource. The first parameter used in the process associated with the module is saved in the parameter storage unit. Then, this reconfigure management device adjusts the first parameter when the second circuit module associated with this process is implemented in the resource for resuming the process, and obtains the second parameter. This is set in the second circuit module.

故に、このリコンフィグ管理装置によれば、第1の回路モジュールを削除する直前の内部状態を第2の回路モジュールの実装時に直ちに再現することができるので、中断されていた処理を適切に再開することができる。すなわち、中断されていた処理を再開するための待ち時間を短縮することができる。加えて、第2の回路モジュールが第1の回路モジュールと同一の処理を行うが構成において異なる場合であっても、当該処理を問題なく再開することができる。すなわち、第1の回路モジュールに行わせていた処理を途中から第2の回路モジュールに行わせる場合であっても、待ち時間の短縮が可能である。 Therefore, according to this reconfiguring management device, the internal state immediately before the deletion of the first circuit module can be immediately reproduced when the second circuit module is mounted, so that the interrupted processing can be appropriately restarted. be able to. That is, the waiting time for resuming the interrupted processing can be shortened. In addition, even if the second circuit module performs the same processing as the first circuit module but differs in configuration, the processing can be restarted without any problem. That is, the waiting time can be shortened even when the processing performed by the first circuit module is performed by the second circuit module from the middle.

上述の実施形態は、本発明の概念の理解を助けるための具体例を示しているに過ぎず、本発明の範囲を限定することを意図されていない。実施形態は、本発明の要旨を逸脱しない範囲で、様々な構成要素の付加、削除または転換をすることができる。 The above embodiments are merely specific examples to aid in understanding the concepts of the invention and are not intended to limit the scope of the invention. In the embodiment, various components can be added, deleted or converted without departing from the gist of the present invention.

上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。 The various functional parts described in each of the above embodiments may be realized by using a circuit. The circuit may be a dedicated circuit that realizes a specific function, or may be a general-purpose circuit such as a processor.

100・・・リコンフィグ管理装置
110・・・リコンフィグ管理部
120・・・パラメータ管理部
130・・・パラメータ調整部
200・・・集積回路
210・・・アプリケーション実行部
220・・・リソース
230・・・パラメータ記憶部
240・・・コンフィギュレーションROM
250・・・アプリケーションメモリ
300,400・・・IIRフィルタ
301,401・・・加算器
311,312,411,412・・・レジスタ
321,322,421,422・・・係数レジスタ
331,332,431,432・・・乗算器
441,442・・・ビット幅変換部
100: Reconfig management device 110: Reconfig management unit 120: Parameter management unit 130: Parameter adjustment unit 200: Integrated circuit 210: Application execution unit 220: Resources 230・ ・ Parameter storage 240 ・ ・ ・ Configuration ROM
250 ... Application memory 300, 400 ... IIR filter 301, 401 ... Adder 311, 312, 411, 412 ... Register 321, 322, 421, 422 ... Coefficient register 331, 332, 431 , 432 ... Multiplier 441,442 ... Bit width converter

Claims (5)

リコンフィグ可能な電子デバイスリソースの第1の領域に実装されている第1の回路モジュールが前記リソースから削除される前に、前記第1の回路モジュールによって行われる第1の処理において使用される第1のパラメータを記憶部に退避させるパラメータ管理部と、
前記第1の処理に関連付けられる第2の回路モジュールが前記第1の処理の再開のために前記リソースの第2の領域に実装される場合に、前記記憶部に退避されている第1のパラメータを調整し、第2のパラメータを得るパラメータ調整部と
を具備し、
前記パラメータ管理部は、前記第1の処理の再開のために前記第2の領域に実装された前記第2の回路モジュールに前記第2のパラメータを設定する、
管理装置。
A first used in a first process performed by the first circuit module before the first circuit module implemented in the first region of the reconfigurable electronic device resource is removed from the resource. A parameter management unit that saves the parameter of 1 to the storage unit, and
When the second circuit module associated with the first process is mounted in the second area of the resource for resuming the first process, the first parameter stored in the storage unit. A parameter adjustment unit for adjusting a second parameter and obtaining a second parameter is provided.
The parameter management unit sets the second parameter in the second circuit module mounted in the second region for resuming the first process.
Management device.
前記第1の回路モジュールは、出力フィードバック路を備える回路に相当する、請求項1に記載の管理装置。 The management device according to claim 1, wherein the first circuit module corresponds to a circuit including an output feedback path. 前記第2の回路モジュールは、前記第1の回路モジュールと異なるビット幅を使用し、
前記パラメータ調整部は、前記第2の回路モジュールによって使用されるビット幅に適合するように前記第1のパラメータのビット幅を変更し、前記第2のパラメータを得る、 請求項1または請求項2に記載の管理装置。
The second circuit module uses a bit width different from that of the first circuit module.
The parameter adjusting unit changes the bit width of the first parameter so as to match the bit width used by the second circuit module to obtain the second parameter, claim 1 or 2. The management device described in.
前記第1のパラメータは、前記第1の処理の実行中に時間変化し、
前記パラメータ調整部は、前記第1の処理が中断されていた期間において前記第1の処理が実行されていたと仮定した場合に前記第1のパラメータに生じていたであろう時間変化を模擬する補正を前記第1のパラメータに施し、前記第2のパラメータを得る、請求項1または請求項2に記載の管理装置。
The first parameter changes over time during the execution of the first process.
The parameter adjusting unit makes corrections that simulate the time change that would have occurred in the first parameter if it was assumed that the first process was executed during the period in which the first process was interrupted. The management device according to claim 1 or 2, wherein the first parameter is subjected to the above-mentioned first parameter to obtain the second parameter.
前記第1のパラメータは、前記第1の回路モジュールに含まれるレジスタの値である、請求項1乃至請求項4のいずれか1項に記載の管理装置。 The management device according to any one of claims 1 to 4, wherein the first parameter is a value of a register included in the first circuit module.
JP2017077521A 2017-04-10 2017-04-10 Management device Active JP6824806B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017077521A JP6824806B2 (en) 2017-04-10 2017-04-10 Management device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017077521A JP6824806B2 (en) 2017-04-10 2017-04-10 Management device

Publications (2)

Publication Number Publication Date
JP2018180805A JP2018180805A (en) 2018-11-15
JP6824806B2 true JP6824806B2 (en) 2021-02-03

Family

ID=64276574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017077521A Active JP6824806B2 (en) 2017-04-10 2017-04-10 Management device

Country Status (1)

Country Link
JP (1) JP6824806B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3587095B2 (en) * 1999-08-25 2004-11-10 富士ゼロックス株式会社 Information processing equipment
JP4152319B2 (en) * 2001-09-07 2008-09-17 アイピーフレックス株式会社 Data processing system and control method thereof
JP4909588B2 (en) * 2005-12-28 2012-04-04 日本電気株式会社 Information processing apparatus and method of using reconfigurable device
JP5023856B2 (en) * 2007-07-18 2012-09-12 富士ゼロックス株式会社 Arithmetic processing device and arithmetic processing program
JP2009104403A (en) * 2007-10-23 2009-05-14 Ip Flex Kk Method of searching solution by reconfiguration unit, and data processing apparatus
JP5504985B2 (en) * 2010-03-11 2014-05-28 富士ゼロックス株式会社 Data processing device

Also Published As

Publication number Publication date
JP2018180805A (en) 2018-11-15

Similar Documents

Publication Publication Date Title
JP5850048B2 (en) Memory access table that saves and repairs systems and methods
US10754728B2 (en) Accelerating system dump capturing
EP2738675B1 (en) System and method for efficient resource management of a signal flow programmed digital signal processor code
US10585895B2 (en) Method and apparatus for reconstructing standby node database
US9280383B2 (en) Checkpointing for a hybrid computing node
JP6642257B2 (en) Information processing apparatus, control method for information processing apparatus, and control program for information processing apparatus
JP6824806B2 (en) Management device
US9870396B2 (en) Immediate join spilling scheme for a database
JP5517830B2 (en) Semiconductor integrated circuit
Sudarsanam et al. PRR-PRR dynamic relocation
JP5668404B2 (en) Configuration information management apparatus, method and program thereof, and behavioral synthesis apparatus
US11099739B2 (en) System and method for accessing redundant array of independent disks
US20160233850A1 (en) Parallel filtering method and corresponding apparatus
JP2005182538A (en) Data transfer device
JP2008108055A (en) Semiconductor chip
JP2020099061A (en) Circuit device, circuit rewriting method, and program
JP2010003150A (en) Memory controller and method for managing data in flash memory
JP6961950B2 (en) Storage method, storage device and storage program
JP7384525B2 (en) Information processing circuit, communication system, and information processing method
Ochoa-Ruiz et al. A novel approach for accelerating bitstream relocation in many-core partially reconfigurable applications
JP5935319B2 (en) Circuit emulation apparatus, circuit emulation method, and circuit emulation program
US10423351B1 (en) System and method for capacity and network traffic efficient data protection on distributed storage system
JP2004297248A (en) Computer system and circuit data rewriting method
JP2010054396A (en) Timing data transfer circuit
TWI615712B (en) System memory optimization method, electronic device capable of optimizing system memory, and computer readable recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201116

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210113

R150 Certificate of patent or registration of utility model

Ref document number: 6824806

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250