JP2018180805A - Management device - Google Patents

Management device Download PDF

Info

Publication number
JP2018180805A
JP2018180805A JP2017077521A JP2017077521A JP2018180805A JP 2018180805 A JP2018180805 A JP 2018180805A JP 2017077521 A JP2017077521 A JP 2017077521A JP 2017077521 A JP2017077521 A JP 2017077521A JP 2018180805 A JP2018180805 A JP 2018180805A
Authority
JP
Japan
Prior art keywords
parameter
circuit module
area
processing
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017077521A
Other languages
Japanese (ja)
Other versions
JP6824806B2 (en
Inventor
丈幸 井口
Takeyuki Iguchi
丈幸 井口
貴靖 大屋
Takayasu Oya
貴靖 大屋
啓介 手島
Keisuke Tejima
啓介 手島
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

Abstract

PROBLEM TO BE SOLVED: To shorten a waiting time for a circuit module mounted on a reconfigurable electronic device resource to restart interrupted processing.SOLUTION: According to one embodiment, a management device includes a parameter management unit and a parameter adjustment unit. The parameter management unit saves a first parameter to be used in processing performed by a first circuit module in a storage unit before the first circuit module mounted in a first area of a reconfigurable resource is eliminated from the resource. The parameter adjustment unit adjusts the first parameter saved in the storage unit to acquire a second parameter in the case that a second circuit module to be associated with processing is mounted in a second area of the resource for restarting the processing. The parameter management unit sets the second parameter in the second circuit module mounted in the second area to restart first processing.SELECTED DRAWING: Figure 1

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 in a programmable logic device such as an FPGA (Field Programmable Gate Array), function addition, bug correction, and the like of the circuit module can be easily performed. Furthermore, it is also proposed to use a logical device having reconfigurable resources in a time division manner with a plurality of different circuit modules.

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

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

リコンフィグ可能なリソースに実装された回路モジュールを処理の途中で一旦削除し、その後に回路モジュールを再実装して当該処理を再開することがある。この場合には、回路モジュールの内部状態が初期化されて実装されることになる。故に、回路モジュールが実装されてから処理が適切に再開可能となるまでの間に、当該回路モジュールを削除する直前の内部状態を再現するための待ち時間が生じることがある。例えば、再開される処理が、回路モジュールの過去の出力値を必要とする演算である場合には、当該回路モジュールを削除する直前までの演算を再実行しなければ、当該処理を適切に再開することはできない。この待ち時間が長くなると、回路モジュールによる処理の再開が遅れたり、回路モジュールが長期間に亘ってリソースを占有したり、回路モジュールが処理を実行できる期間が短くなったりするなどの問題が生じる。   There is a case where a circuit module mounted on a reconfigurable resource is temporarily deleted in the middle of processing, and then the circuit module is remounted to restart the processing. 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 just before deleting the circuit module after the circuit module is mounted until the processing can be properly restarted. For example, if the process to be resumed is an operation requiring a past output value of a circuit module, the process is appropriately resumed unless the operation up to immediately before deleting the circuit module is re-executed. It is not possible. When the waiting time becomes long, there are problems such as delaying restart of processing by the circuit module, occupation of resources by the circuit module for a long period of time, and shortening of a period during which the circuit module can execute processing.

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

本発明の一態様によれば、管理装置は、パラメータ管理部と、パラメータ調整部とを含む。パラメータ管理部は、リコンフィグ可能な電子デバイスリソースの第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 manager is used in a first process performed by the first circuit module before the first circuit module mounted in the first area of the reconfigurable electronic device resource is removed from the resource The first parameter to be stored is saved in the storage unit. When the second circuit module associated with the first process is implemented in the second region of the resource for resuming the first process, the parameter adjustment unit is the first program saved in the storage unit. Adjust the parameters to get the second parameter. The parameter management unit sets a second parameter in the second circuit module mounted in the second area to resume the first process.

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

第1の実施形態に係るリコンフィグ管理装置を例示するブロック図。FIG. 1 is a block diagram illustrating a reconfiguration management apparatus according to a first embodiment. 図1のリコンフィグ管理装置の周辺を例示するブロック図。FIG. 2 is a block diagram illustrating the periphery of the reconfiguration management device of FIG. 1; 図2のリソースの領域に実装される回路モジュールと、パラメータ記憶部に格納されるパラメータとの経時変化を示すタイミングチャート。The timing chart which shows a time-dependent change of the circuit module mounted in the field of the resource of Drawing 2, and the parameter stored in a parameter storage part. 無限インパルス応答(IIR:Infinite Impulse Response)フィルタを例示する図。The figure which illustrates an infinite impulse response (IIR: Infinite Impulse Response) filter. IIRフィルタの別の例を示す図。The figure which shows another example of IIR filter. パラメータの退避例の説明図。Explanatory drawing of the example of evacuation of a parameter. パラメータの復帰例の説明図。Explanatory drawing of the example of return of a parameter. パラメータの復帰例の説明図。Explanatory drawing of the example of return of a parameter.

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

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

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

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

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

パラメータの退避・復帰を行うことで待ち時間が短縮する回路モジュールとして、例えば、出力フィードバック路を備える回路が挙げられる。具体的には、(デジタル)IIRフィルタ、PID(Proportional Integral Differential)制御回路などは、出力フィードバック路を備える。このような出力フィードバック路を備える回路に相当する回路モジュールによる処理を中断する場合には、パラメータの退避・復帰を行うことで待ち時間を短縮することができる。   As a circuit module whose latency is reduced by saving and restoring 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 have an output feedback path. When processing by a circuit module corresponding to a circuit including such an output feedback path is interrupted, waiting time can be shortened by saving and restoring 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 an 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, a register 312, a coefficient register 321, a coefficient register 322, a multiplier 331, and a multiplier 332. The IIR filter 300 uses, for example, 16 bits in width. That is, all signals handled in the IIR filter 300 are 16 bits.

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

係数レジスタ321は、1つ前の出力値に乗算される係数を格納する。係数レジスタ322は、2つ前の出力値に乗算される係数を格納する。3つ以上前の出力値に乗算される係数を格納するために、図示されない係数レジスタが用意されてもよい。なお、これらの係数は固定値である。   The coefficient register 321 stores the coefficient to be multiplied by the previous output value. The coefficient register 322 stores the coefficient to be multiplied by the two previous output value. A coefficient register, not shown, may be provided to store the coefficients to be multiplied by three or more previous output values. 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 immediately preceding output value 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 second previous output value from the register 312 and reads the coefficient from the coefficient register 322. The multiplier 332 multiplies the second previous output value by a coefficient, and sends the multiplication result to the adder 301. A multiplier not shown may be provided to multiply the three or more previous output values 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 product of the past output value and the coefficient (ie, the output of the multiplier 331 and the multiplier 332 (+ α)). 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 immediately preceding output value stored in the register 311 is shifted to the register 312. Similarly, the previous two output values stored in the register 312 may be shifted to a register not shown.

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

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

他方、レジスタ311およびレジスタ312(+α)に格納される値を退避しておけば、その後に回路モジュールを再実装する場合に、当該値を復帰させることができるので、当該回路モジュールは直ちに中断されたIIRフィルタ処理を再開可能となる。要するに、中断された処理を再開するための待ち時間を短縮することができる。なお、この例では、パラメータは、回路モジュールに含まれるレジスタに格納された値であるが、退避・復帰の対象となるパラメータはこれに限られない。   On the other hand, if the values stored in the register 311 and the register 312 (+ α) are saved, the circuit module can be restored immediately after the circuit module is re-mounted. It is possible to restart the IIR filter processing. In short, the waiting time for resuming interrupted processing can be shortened. In this example, the parameter is a value stored in the register included in the circuit module, but the parameter to be saved and 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 developed in the application memory 250. The application execution unit 210 requests the reconfiguration management device 100 to mount a circuit module in the area of the resource 220 as necessary when executing application software.

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

パラメータ記憶部230は、リコンフィグ管理装置100によって退避されたパラメータを格納する。このパラメータは、当該パラメータを使用する処理の再開のために回路モジュールがリソース220の領域に実装される場合に、復帰のためにリコンフィグ管理装置100によって読み出される。パラメータ記憶部230は、例えばリソース220を有効活用するという観点からすると、当該リソース220とは別体であることが好ましい。但し、パラメータ記憶部230を、リソース220の内部に設けることも可能である。   The parameter storage unit 230 stores the parameter saved by the reconfiguration management device 100. This parameter is read by the reconfiguration management device 100 for recovery when the circuit module is mounted in the area of the resource 220 for resumption of processing using the parameter. The parameter storage unit 230 is preferably separate from the resource 220 from the viewpoint of effectively utilizing the resource 220, for example. 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 a circuit module in the area of the resource 220. The circuit data is read by the reconfiguration management device 100 and written to the area of the resource 220 as 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 loaded with application software to be executed by the application execution unit 210. The application software is stored, for example, in 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, as illustrated in FIG. 1, the reconfiguration management apparatus 100 includes a reconfiguration management unit 110, a parameter management unit 120, and a parameter adjustment unit 130. The function division of FIG. 1 is merely 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 reconfiguration management unit 110.

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

選択された領域に実装されている回路モジュールは、削除されることになる。この回路モジュールについてパラメータの退避が必要である場合には、リコンフィグ管理部110は当該パラメータの退避をパラメータ管理部120に指示する。同様に、要求の対象となった回路モジュールについてパラメータの復帰が必要である場合には、リコンフィグ管理部110は当該パラメータの復帰をパラメータ管理部120に指示する。パラメータの退避/復帰が必要であるか否かは、例えば予め定められたテーブルを参照することで決定され得る。かかるテーブルは、後掲の表1に例示される。   Circuit modules implemented in the selected area will be deleted. When it is necessary to save the parameters for this circuit module, the reconfiguration management unit 110 instructs the parameter management unit 120 to save the parameters. Similarly, when it is necessary to restore the parameters for the circuit module that has become the request target, the reconfiguration management unit 110 instructs the parameter management unit 120 to restore the parameters. Whether or not it is necessary to save / restore a parameter 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 reconfiguration management unit 110 mounts the circuit module by reading out circuit data for mounting the circuit module that is the target of the request from the configuration ROM and writing the circuit data in the selected area. The reconfiguration 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 reconfiguration management unit 110 to save or restore the parameter. When instructed to save the parameter, the parameter managing unit 120 acquires the parameter of the instructed circuit module (for example, reads the value of the register), and stores the parameter in the parameter storage unit 230. On the other hand, when instructed to restore the parameter, the parameter managing 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 the register). However, when it is necessary to adjust the parameters at the time of restoration, the parameter management unit 120 passes the parameters read from the parameter storage unit 230 to the parameter adjustment unit 130. Then, the parameter managing unit 120 receives the adjusted parameter from the parameter adjusting unit 130 and sets the parameter in the instructed circuit module. Note that whether or not adjustment of the parameter is necessary at the time of return can be determined, for example, by referring to 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, change the bit width of the parameter It will be necessary. In addition, when the parameter changes with time during execution of the process, the saved parameter does not reflect the time change in the period during which the process was interrupted. Therefore, it is necessary to apply a correction to the parameter to simulate a time change that would have occurred in the parameter assuming that the processing was being performed in a period in which the processing was interrupted. In addition, for example, the time change which can be formulated such as count-up and count-down is suitable for simulation.

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

例えば、パラメータ調整部130は、パラメータのビット幅を変更し、調整済みのパラメータを得てもよい。この場合に、パラメータ調整部130は、調整済みのパラメータを復帰させる回路モジュールの使用するビット幅に適合するように、パラメータのビット幅を変更すればよい。   For example, the parameter adjustment unit 130 may change the bit width of the parameter to obtain the adjusted parameter. In this case, the parameter adjustment unit 130 may change the bit width of the parameter so as to conform to 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 which perform the same processing but use different bit widths may be prepared. For example, by causing a circuit module that uses a smaller bit width to perform processing, low power consumption operation is possible although it is necessary to allow reduction in calculation accuracy.

図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 '. Although the bit width used by the IIR filter 300 of FIG. 4 was 16 bits, the bit width used by the IIR filter 400 is 14 bits. That is, the IIR filter 300 is a circuit module directed to high calculation accuracy, and the IIR filter 400 is a circuit module directed to low power consumption. Although the description is omitted, an IIR filter using 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 shown in 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 converter 441, and a bit width. And 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, 14 bits in width. However, even if reconfiguration is performed, the interface at the boundary of the area can not be changed. Therefore, the interface of the input and the output needs to be common 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 the same as 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 in the IIR filter 400 are all 14 bits.

加算器401、レジスタ411、レジスタ412、係数レジスタ421、係数レジスタ422、乗算器431および乗算器432は、14ビット信号を扱うという点を除いて、図4の加算器301、レジスタ311、レジスタ312、係数レジスタ321、係数レジスタ322、乗算器331および乗算器332と同様である。   4 except that adder 401, register 411, register 412, coefficient register 421, coefficient register 422, multiplier 431 and multiplier 432 handle 14-bit signals. , Coefficient register 321, coefficient register 322, multiplier 331 and 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 a reduction of N bits by right-shifting the signal by N bits and discarding a total of N bits in order from MSB (Most Significant Bit). Here, N is an arbitrary natural number, and is 2 in this example. Furthermore, an offset may be added as needed. The bit width conversion unit 441 outputs the 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 the 14-bit signal from the adder 401 and extends the bit width to obtain a 16-bit signal. For example, the bit width conversion unit 442 can realize an extension of N bits by shifting the signal to the left by N bits. Furthermore, an offset may be added as needed. The bit width conversion unit 442 externally outputs the 16-bit signal as an output signal of the IIR filter 400.

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

以下、図3および図6乃至図8を用いて、4種類の処理A、処理B、処理Cおよび処理Dを順番に繰り返し実行する場合に、リソース220の領域1〜3に実装される回路モジュールとパラメータ記憶部230に格納されるパラメータとがどのように変化するかを説明する。なお、図3では、説明の簡単化のために、処理A、処理B、処理Cおよび処理Dの処理時間は全て同一であることとしたが、実際上これらは異なり得る。   Circuit modules mounted in areas 1 to 3 of the resource 220 when four kinds of processing A, processing B, processing C and processing D are sequentially and repeatedly executed using FIG. 3 and FIG. 6 to FIG. And how parameters stored in the parameter storage unit 230 change will be described. In FIG. 3, the processing times of the processing A, the processing B, the processing C, and the processing D are all the same for simplification of the description, but they 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にまとめる。   Process A corresponds to IIR filtering and is executed by a circuit module A corresponding to the IIR filter 300 of FIG. 4 or a circuit module A ′ corresponding to the IIR filter 400 of FIG. The process B, the process C and the process D are respectively executed by the circuit module B, the circuit module C and the circuit module D. The saving / restoring of parameters is performed for processing A and processing B, but is not performed for processing C and processing D. Process A may have a change in circuit module. For example, the process A may be performed by the circuit module A and then performed by the circuit module A 'with an interruption, and vice versa. On the other hand, in the processes B, C and 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にはいかなるパラメータも退避されていない(すなわち、空の状態である)。   Processing A is executed by the circuit module A mounted in the area 1 at time 0 in FIG. 3. Therefore, prior to time 0, the reconfiguration management device 100 has mounted the circuit module A in the area 1. In addition, circuit module B and circuit module D are already mounted in area 2 and area 3 and are in a standby state for processes B and C to be performed subsequently. No parameters are saved in the parameter storage unit 230 (ie, they are empty).

図3の時刻1に、領域2に実装された回路モジュールBによって処理Bが実行される。他方、領域1に実装された回路モジュールAは、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、図6に例示されるように、回路モジュールAのパラメータをパラメータ記憶部230に退避し、それから、回路モジュールAを回路モジュールDに書き換える。   The process B is executed by the circuit module B mounted in the area 2 at time 1 in FIG. 3. On the other hand, the circuit module A mounted in the area 1 is rewritten to the circuit module D. When processing A is interrupted, it is necessary to save parameters. Therefore, as exemplified in FIG. 6, the reconfiguration 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に設定する。   Process C is executed by the circuit module C mounted in the area 3 at time 2 in FIG. 3. On the other hand, the circuit module B mounted in the area 2 is rewritten to the circuit module A. When processing B is interrupted, it is necessary to save parameters. Therefore, the reconfiguration management device 100 saves the parameters of the circuit module B in the parameter storage unit 230. In addition, when processing A resumes, it is necessary to restore the parameters. Therefore, as exemplified in FIG. 7, the reconfiguration management device 100 mounts the circuit module A in the area 2, reads the parameter of the circuit module A from the parameter storage unit 230, and sets the parameter 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 area 1. On the other hand, the circuit module C mounted in the area 3 is rewritten to the circuit module B. When processing B resumes, it is necessary to restore the parameters. Therefore, the reconfiguration management device 100 mounts the circuit module B in the area 3, reads the parameter of the circuit module B from the parameter storage unit 230, and sets the parameter in the circuit module B.

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

図3の時刻5に、領域3に実装された回路モジュールBによって処理Bが実行される。他方、領域2に実装された回路モジュールAは、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、図6に例示されるように、回路モジュールAのパラメータをパラメータ記憶部230に退避し、それから、回路モジュールAを回路モジュールDに書き換える。   The process B is executed by the circuit module B mounted in the area 3 at time 5 in FIG. On the other hand, the circuit module A mounted in the area 2 is rewritten to the circuit module D. When processing A is interrupted, it is necessary to save parameters. Therefore, as exemplified in FIG. 6, the reconfiguration 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’に設定する。   The process C is executed by the circuit module C mounted in the area 1 at time 6 in FIG. 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 area 3 is rewritten not to the circuit module A but to the circuit module A '. When processing B is interrupted, it is necessary to save parameters. Therefore, the reconfiguration management device 100 saves the parameters of the circuit module B in the parameter storage unit 230. In addition, when processing A resumes, it is necessary to restore the parameters. Therefore, as illustrated in FIG. 8, the reconfiguration 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 adjusts the circuit module A ′ for the circuit module A ′. After the bit width is reduced in the example of FIG. 8, 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 area 2. On the other hand, the circuit module C mounted in the area 1 is rewritten to the circuit module B. When processing B resumes, it is necessary to restore the parameters. Therefore, the reconfiguration 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 the parameters in the circuit module B.

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

図3の時刻9に、領域1に実装された回路モジュールBによって処理Bが実行される。他方、領域3に実装された回路モジュールA’は、回路モジュールDに書き換えられることになる。処理Aの中断時にはパラメータを退避させる必要がある。故に、リコンフィグ管理装置100は、回路モジュールA’のパラメータをパラメータ記憶部230に退避し、それから、回路モジュールA’を回路モジュールDに書き換える。   The process B is executed by the circuit module B mounted in the area 1 at time 9 in FIG. 3. On the other hand, the circuit module A ′ mounted in the area 3 is rewritten to the circuit module D. When processing A is interrupted, it is necessary to save parameters. Therefore, the reconfiguration 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.

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

故に、このリコンフィグ管理装置によれば、第1の回路モジュールを削除する直前の内部状態を第2の回路モジュールの実装時に直ちに再現することができるので、中断されていた処理を適切に再開することができる。すなわち、中断されていた処理を再開するための待ち時間を短縮することができる。加えて、第2の回路モジュールが第1の回路モジュールと同一の処理を行うが構成において異なる場合であっても、当該処理を問題なく再開することができる。すなわち、第1の回路モジュールに行わせていた処理を途中から第2の回路モジュールに行わせる場合であっても、待ち時間の短縮が可能である。   Therefore, according to this reconfiguration management device, the internal state immediately before deleting the first circuit module can be reproduced immediately at the time of mounting the second circuit module, so that the interrupted process can be resumed properly. be able to. That is, the waiting time for resuming the interrupted process 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 resumed without any problem. That is, even in the case where the second circuit module is caused to perform the processing performed by the first circuit module, the waiting time can be shortened.

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

上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。   The various functional units described in the above embodiments may be realized by using a circuit. The circuit may be a dedicated circuit that implements 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 ... Reconfiguration management apparatus 110 ... Reconfiguration management unit 120 ... Parameter management unit 130 ... Parameter adjustment unit 200 ... Integrated circuit 210 ... Application execution unit 220 ... Resource 230 · .. Parameter storage unit 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 ... multipliers 441, 442 ... bit width conversion unit

Claims (5)

リコンフィグ可能な電子デバイスリソースの第1の領域に実装されている第1の回路モジュールが前記リソースから削除される前に、前記第1の回路モジュールによって行われる第1の処理において使用される第1のパラメータを記憶部に退避させるパラメータ管理部と、
前記第1の処理に関連付けられる第2の回路モジュールが前記第1の処理の再開のために前記リソースの第2の領域に実装される場合に、前記記憶部に退避されている第1のパラメータを調整し、第2のパラメータを得るパラメータ調整部と
を具備し、
前記パラメータ管理部は、前記第1の処理の再開のために前記第2の領域に実装された前記第2の回路モジュールに前記第2のパラメータを設定する、
管理装置。
A first circuit module used in the first process 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 A parameter management unit that saves the parameter 1 into the storage unit;
The first parameter saved in the storage unit when a second circuit module associated with the first process is mounted on a second area of the resource for resumption of the first process. And a parameter adjustment unit for adjusting the second parameter
The parameter management unit sets the second parameter in the second circuit module mounted in the second area for resumption of 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 different bit width than the first circuit module,
The parameter adjustment unit changes the bit width of the first parameter so as to conform to the bit width used by the second circuit module, and obtains the second parameter. Management device described in.
前記第1のパラメータは、前記第1の処理の実行中に時間変化し、
前記パラメータ調整部は、前記第1の処理が中断されていた期間において前記第1の処理が実行されていたと仮定した場合に前記第1のパラメータに生じていたであろう時間変化を模擬する補正を前記第1のパラメータに施し、前記第2のパラメータを得る、請求項1または請求項2に記載の管理装置。
The first parameter changes with time during execution of the first process,
The parameter adjustment unit is a correction that simulates a time change that would have occurred in the first parameter when it was assumed that the first process was being performed in a period in which the first process was interrupted. The management apparatus according to claim 1 or 2, wherein the second parameter is obtained by applying the first parameter to the first parameter.
前記第1のパラメータは、前記第1の回路モジュールに含まれるレジスタの値である、請求項1乃至請求項4のいずれか1項に記載の管理装置。   The management apparatus 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 true JP2018180805A (en) 2018-11-15
JP6824806B2 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)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001068993A (en) * 1999-08-25 2001-03-16 Fuji Xerox Co Ltd Information processing system
WO2003023602A1 (en) * 2001-09-07 2003-03-20 Ip Flex Inc. Data processing system and control method thereof
JP2007179358A (en) * 2005-12-28 2007-07-12 Nec Corp Information processor and method of using reconfiguration device
JP2009025953A (en) * 2007-07-18 2009-02-05 Fuji Xerox Co Ltd Arithmetic processing unit 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
JP2011186981A (en) * 2010-03-11 2011-09-22 Fuji Xerox Co Ltd Data processor

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001068993A (en) * 1999-08-25 2001-03-16 Fuji Xerox Co Ltd Information processing system
WO2003023602A1 (en) * 2001-09-07 2003-03-20 Ip Flex Inc. Data processing system and control method thereof
JP2007179358A (en) * 2005-12-28 2007-07-12 Nec Corp Information processor and method of using reconfiguration device
JP2009025953A (en) * 2007-07-18 2009-02-05 Fuji Xerox Co Ltd Arithmetic processing unit 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
JP2011186981A (en) * 2010-03-11 2011-09-22 Fuji Xerox Co Ltd Data processor

Also Published As

Publication number Publication date
JP6824806B2 (en) 2021-02-03

Similar Documents

Publication Publication Date Title
KR20190091484A (en) Blockchain consensus method and device
JP2018526714A (en) CNN processing method and device
US20130073599A1 (en) Hardware for performing arithmetic operations
JP2020531949A (en) Lazy update of database hash code in blockchain
EP2738675B1 (en) System and method for efficient resource management of a signal flow programmed digital signal processor code
US20200201763A1 (en) Memory hierarchy-aware processing
US9280383B2 (en) Checkpointing for a hybrid computing node
US10216679B2 (en) Semiconductor device and control method thereof
WO2014119269A1 (en) Data set multiplicity change device, server, and data set multiplicity change method
JP2017204121A (en) Information processing device, method for controlling information processing device and control program of information processing device
JP6824806B2 (en) Management device
Touiza et al. A novel methodology for accelerating bitstream relocation in partially reconfigurable systems
US9870396B2 (en) Immediate join spilling scheme for a database
US9966932B2 (en) Parallel filtering method and corresponding apparatus
CN105260264A (en) Snapshot implementation method and snapshot system
US11099739B2 (en) System and method for accessing redundant array of independent disks
JP2005182538A (en) Data transfer device
JP2021118459A (en) Information processing apparatus, control method thereof, and program
US10430291B1 (en) Effective method to backup VMs in larger VM infrastructure
JP2020099061A (en) Circuit device, circuit rewriting method, and program
US10073773B2 (en) Instruction paging in reconfigurable fabric
TWI615712B (en) System memory optimization method, electronic device capable of optimizing system memory, and computer readable recording medium
US20230418473A1 (en) Continuous memory access acceleration circuit, address shift circuit and address generation method
CN117540781A (en) Semiconductor device with a semiconductor device having a plurality of semiconductor chips
JP2016143367A (en) Programmable controller

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