JP2011175535A - Method and apparatus for managing memory device - Google Patents
Method and apparatus for managing memory device Download PDFInfo
- Publication number
- JP2011175535A JP2011175535A JP2010040151A JP2010040151A JP2011175535A JP 2011175535 A JP2011175535 A JP 2011175535A JP 2010040151 A JP2010040151 A JP 2010040151A JP 2010040151 A JP2010040151 A JP 2010040151A JP 2011175535 A JP2011175535 A JP 2011175535A
- Authority
- JP
- Japan
- Prior art keywords
- application
- storage unit
- data
- management
- configuration information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は再構成デバイスが備えるメモリデバイスの管理に用いて好適なメモリデバイス管理方法及び装置に関する。 The present invention relates to a memory device management method and apparatus suitable for managing a memory device included in a reconfigurable device.
複数の命令を並列に処理することが可能な複数の論理回路(演算器)を備え、該論理回路の構成や接続をソフトウェアによって変更できるデータ処理装置として、コンフィギュアラブルプロセッサ(再構成デバイス)がある。コンフィギュアラブルプロセッサは、FPGA(Field Programmable Gate Array)とリコンフィギュアラブルプロセッサとに大別される。 A configurable processor (reconfigurable device) is provided as a data processing device that includes a plurality of logic circuits (arithmetic units) capable of processing a plurality of instructions in parallel and whose configuration and connection of the logic circuits can be changed by software. is there. Configurable processors are roughly classified into FPGA (Field Programmable Gate Array) and reconfigurable processors.
FPGAについては、例えば特許文献1にその詳細が記載されている。
Details of the FPGA are described in
リコンフィギャラブルプロセッサとしては、DRP(Dynamic Reconfigurable Processor)が知られている。DRPについては、例えば特許文献2〜7にその詳細が記載されている。また、特許文献8には、DRPが備える複数の演算器の構成や接続を変更するための構成情報の格納先の制限を無くすと共に、一つの構成情報を複数の処理で共有可能にした技術が記載されている。
A DRP (Dynamic Reconfigurable Processor) is known as a reconfigurable processor. Details of DRP are described in, for example,
再構成デバイスは、演算を実行する演算部と、演算部の動作を制御する制御部と、演算で用いるデータを保持する記憶部とを備えている。上記DRPでは、演算部に、複数の演算器とそれらの接続を切り替える相互接続部とを備え、各演算器及び相互接続部に対する命令コードを切り換えることで各種の処理を実行できる。演算部に供給する命令コードやデータはソフトウェアによって変更可能であり、上記構成情報として書き込むことで所望の処理を実行する回路や該回路の初期状態を実現できる。 The reconstruction device includes a calculation unit that executes a calculation, a control unit that controls the operation of the calculation unit, and a storage unit that holds data used in the calculation. In the DRP, the arithmetic unit includes a plurality of arithmetic units and an interconnection unit that switches their connection, and various processes can be executed by switching instruction codes for the arithmetic units and the interconnection unit. The instruction code and data supplied to the arithmetic unit can be changed by software, and a circuit for executing a desired process and an initial state of the circuit can be realized by writing as the configuration information.
なお、構成情報とは、ある時点における演算器に対する演算命令、相互接続部における各演算器の接続関係を示す情報、イベント信号とそれに対応して次に選択すべき構成情報の関係を示す情報等を備えた、再構成デバイス内に仮想的な回路を構成するために必要な情報である。所望の処理(アプリケーション)を実行するために必要な構成情報の集まりはオブジェクトコードと呼ばれる。 Note that the configuration information refers to a calculation command for the arithmetic unit at a certain point in time, information indicating the connection relationship between the arithmetic units in the interconnection unit, information indicating the relationship between the event signal and the corresponding configuration information to be selected next, etc. Information necessary for configuring a virtual circuit in the reconfigurable device. A collection of configuration information necessary for executing a desired process (application) is called an object code.
上述したFPGAは、1つの構成情報から成る、1つのオブジェクトコードを保持することが可能である。FPGAは、保持する構成情報やオブジェクトコードを入れ替えることで各種の処理を実行できる。オブジェクトコードを複数保持し、処理していないときに該オブジェクトコードの切り換えが可能なFPGAも理論上は実現可能である。 The above-described FPGA can hold one object code composed of one piece of configuration information. The FPGA can execute various processes by exchanging configuration information and object codes held therein. An FPGA that can hold a plurality of object codes and can switch the object codes when not processing is theoretically feasible.
一方、DRPは、記憶容量の範囲内で、1つまたは複数の構成情報から成る、任意の数のオブジェクトコードを保持することが可能であり、それらを入れ替えることで各種の処理を実行できる。 On the other hand, the DRP can hold an arbitrary number of object codes composed of one or a plurality of pieces of configuration information within the range of the storage capacity, and various processes can be executed by replacing them.
しかしながら、上述したFPGAやDRP等の再構成デバイスでは、通常、処理対象となるデータ、処理途中のデータ(中間データ)、テーブルデータ等の処理で用いるデータを保持する処理データ記憶部を複数のアプリケーションで共有することができない。そのため、動作させるアプリケーション(オブジェクトコード)を切り換える場合は、処理データ記憶部で保持するデータも入れ替える必要がある。またその際に、上記中間データがある場合は、該中間データを外部メモリへ退避させる必要がある。 However, in the above-described reconfigurable device such as FPGA or DRP, a processing data storage unit that holds data used for processing such as data to be processed, data in the middle of processing (intermediate data), table data, etc. I can't share with you. Therefore, when switching the application (object code) to be operated, it is necessary to replace the data held in the processing data storage unit. At this time, if there is the intermediate data, it is necessary to save the intermediate data to the external memory.
背景技術のメモリデバイス管理方法では、アプリケーションを切り換える度に、処理対象となるデータや処理で用いるデータの読み込み処理や中間データの退避処理等を実現する回路を、例えば構成情報によって再構成デバイス内に構築し、該回路により処理データ記憶部に対するデータの書き込みや読み出しを制御していた。このような処理データ記憶部を管理するための回路を再構成デバイス内に構築することは、再構成デバイスをアプリケーション以外の処理で用いることであり、アプリケーションの処理が遅くなる要因となる。 In the memory device management method of the background art, each time an application is switched, a circuit that implements a process for reading data to be processed, a process for reading data used in the process, a process for saving intermediate data, etc., is stored in the reconfigurable device based on configuration information The data is written into and read from the processing data storage unit by the circuit. Constructing such a circuit for managing the processing data storage unit in the reconfigurable device means that the reconfigurable device is used for processing other than the application, which causes a delay in the processing of the application.
また、処理データ記憶部を管理するための回路をユーザ等が構成情報により作成しなければならないため、ユーザ等の負担が大きく、また作成した回路が正常に動作するとは限らないため、再構成デバイスの誤動作の要因となる。 In addition, since a user or the like must create a circuit for managing the processing data storage unit based on the configuration information, the burden on the user or the like is large, and the created circuit does not always operate normally. Cause malfunction.
例えば、処理で参照するテーブルデータ等、書き換えが不要な固定データを処理データ記憶部に読み込む場合は、該固定データをオブジェクトコード内に含めることも可能である。しかしながら、そのような場合でも、一旦、他のアプリケーションを動作させ、再び同じアプリケーションを実行する場合は、固定データを含む構成情報を再度読み込む必要がある。 For example, when reading fixed data that does not need to be rewritten, such as table data to be referred to in processing, into the processing data storage unit, the fixed data can be included in the object code. However, even in such a case, when another application is operated once and the same application is executed again, it is necessary to read configuration information including fixed data again.
本発明は上記したような従来の技術が有する問題点を解決するためになされたものであり、再構成デバイスから成るデータ処理装置の処理性能を向上できるメモリデバイス管理方法及び装置を提供することを目的とする。 The present invention has been made to solve the above-described problems of the prior art, and provides a memory device management method and apparatus capable of improving the processing performance of a data processing apparatus including a reconfigurable device. Objective.
上記目的を達成するため本発明のメモリデバイス管理方法は、再構成デバイスが備える記憶部を管理するためのメモリデバイス管理方法であって、
前記再構成デバイスで実行するアプリケーション毎の構成情報が格納される構成情報プール、前記アプリケーションの処理対象となるデータ及び該アプリケーションで必要なデータを含む初期データが格納される初期データプール、前記アプリケーションの実行時に該アプリケーションの前記初期データの保持に用いる前記記憶部の領域を示す記憶部要求表、並びに前記記憶部を使用しているアプリケーションを示す記憶部状況表を備えた管理データ記憶部を備えておき、
前記アプリケーションの実行要求を受信すると、前記構成情報プールから該アプリケーションの構成情報を読み出して前記記憶部へ書き込み、
前記記憶部要求表及び前記記憶部状況表を参照して、前記記憶部に無い該アプリケーションの前記初期データを前記初期データプールから読み出して前記記憶部へ書き込む方法である。
In order to achieve the above object, a memory device management method of the present invention is a memory device management method for managing a storage unit included in a reconfigurable device,
A configuration information pool storing configuration information for each application executed by the reconfigurable device, an initial data pool storing initial data including data to be processed by the application and data necessary for the application, A management data storage unit including a storage unit request table indicating an area of the storage unit used for holding the initial data of the application at the time of execution, and a storage unit status table indicating an application using the storage unit; Every
Upon receiving the application execution request, the application configuration information is read from the configuration information pool and written to the storage unit,
In this method, the initial data of the application not in the storage unit is read from the initial data pool and written to the storage unit by referring to the storage unit request table and the storage unit status table.
一方、本発明のメモリデバイス管理装置は、再構成デバイスが備える記憶部を管理するメモリデバイス管理装置であって、
前記再構成デバイスで実行するアプリケーション毎の構成情報が格納される構成情報プール、前記アプリケーションの処理対象となるデータ及び該アプリケーションで必要なデータを含む初期データが格納される初期データプール、前記アプリケーションの実行時に該アプリケーションの前記初期データの保持に用いる前記記憶部の領域を示す記憶部要求表、並びに前記記憶部を使用しているアプリケーションを示す記憶部状況表を備えた管理データ記憶部と、
前記アプリケーションの実行要求を受信すると、前記構成情報プールから該アプリケーションの構成情報を読み出して前記記憶部へ書き込み、前記記憶部要求表及び前記記憶部状況表を参照して、前記記憶部に無い該アプリケーションの前記初期データを前記初期データプールから読み出して前記記憶部へ書き込む管理部と、
を有する。
On the other hand, the memory device management apparatus of the present invention is a memory device management apparatus that manages a storage unit included in the reconfiguration device,
A configuration information pool storing configuration information for each application executed by the reconfigurable device, an initial data pool storing initial data including data to be processed by the application and data necessary for the application, A management data storage unit comprising a storage unit request table indicating an area of the storage unit used for holding the initial data of the application at the time of execution, and a storage unit status table indicating an application using the storage unit;
When receiving the execution request of the application, the configuration information of the application is read from the configuration information pool and written to the storage unit, and the storage unit request table and the storage unit status table are referred to, and the storage unit is not in the storage unit. A management unit that reads the initial data of the application from the initial data pool and writes the initial data to the storage unit;
Have
本発明によれば、再構成デバイスから成るデータ処理装置の処理性能(スループット)を向上させることができる。 According to the present invention, it is possible to improve the processing performance (throughput) of a data processing apparatus including a reconfigurable device.
次に本発明について図面を用いて説明する。
(第1の実施の形態)
図1は第1の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
Next, the present invention will be described with reference to the drawings.
(First embodiment)
FIG. 1 is a block diagram showing the configuration of the memory device management apparatus according to the first embodiment.
図1に示すように、第1の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As shown in FIG. 1, the memory device management apparatus according to the first embodiment is configured to include a management
第1の実施の形態のメモリデバイス管理装置は、1つの構成情報から成る、1つのオブジェクトコードを保持できる再構成デバイスである第1の再構成可能ハードウェア3を管理する。第1の再構成可能ハードウェア3としては、例えば上記FPGAがある。
The memory device management apparatus according to the first embodiment manages the first
第1の再構成可能ハードウェア3は、演算を実行する演算部32と、演算部32の動作を制御する制御部31と、演算部32及び制御部31による処理対象のデータや処理で必要なデータを保持する処理データ記憶部33と、構成情報を保持する構成情報記憶部34とを有する構成である。処理データ記憶部33は、管理単位となる複数の記憶領域331〜33nに分割可能である。
The first
管理データ記憶部1は、構成情報プール11、初期データプール12及び記憶部管理部13を備えている。
The management
構成情報プール11には、第1の再構成可能ハードウェア3で実行する複数のアプリケーションの構成情報が格納される。構成情報には、第1の再構成可能ハードウェア3の構成や機能に応じて作成された、演算命令、各種の論理回路(演算器)の接続関係を示す情報、各種の論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第1の再構成可能ハードウェア3で実行するアプリケーション毎の処理対象のデータや処理で必要な固定データ等(以下、これらのデータを、まとめて「初期データ」と称す)がそれぞれ格納される。
In the
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第1の再構成可能ハードウェア3が備える処理データ記憶部33の記憶領域331〜33nを示す情報が格納される。
The storage unit request table 131 includes information indicating storage areas 33 1 to 33 n of the processing data storage unit 33 included in the first
記憶部状況表132は、第1の再構成可能ハードウェア3の処理データ記憶部33を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 33 of the first
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第1の再構成可能ハードウェア3の構成情報記憶部34へ書き込み、初期データを処理データ記憶部33へ書き込む。管理部2は、第1の再構成可能ハードウェア3に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第1の再構成可能ハードウェア3に処理(アプリケーション)を実行させる。
The
管理部2は、初期データを第1の再構成可能ハードウェア3へ書き込むとき、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部33へ書き込む。
When writing the initial data to the first
すなわち、記憶部要求表131と記憶部状況表132とを比較し、実行要求されたアプリケーションの初期データが処理データ記憶部33に無い場合は該初期データを処理データ記憶部33へ書き込む。その場合、書き込み後の処理データ記憶部33の状態に応じて記憶部状況表132を更新する。また、実行要求されたアプリケーションの初期データが処理データ記憶部33に既に存在している場合は、該初期データの処理データ記憶部33に対する書き込みを省略する。 That is, the storage unit request table 131 and the storage unit status table 132 are compared, and if the initial data of the requested application is not stored in the processing data storage unit 33, the initial data is written in the processing data storage unit 33. In this case, the storage unit status table 132 is updated according to the state of the processing data storage unit 33 after writing. If the initial data of the application requested to be executed already exists in the processing data storage unit 33, the writing of the initial data to the processing data storage unit 33 is omitted.
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
なお、図1に示す管理部2は、プログラムにしたがって処理を実行するCPUやMPUで実現できる。第1の再構成可能ハードウェア3は、演算部31、制御部32処理データ記憶部33及び構成情報記憶部34を独立して備える必要はなく、任意の構成要素が他の構成要素に含まれていてもよく、任意の構成要素が複数の部位で構成されていてもよい。例えば、演算部31と制御部32とは一体構成であってもよく、構成情報記憶部34が演算部31及び制御部32内に分散して配置されていてもよい。
The
管理データ記憶部1は、書き換え可能な記憶装置であればよく、例えば半導体記憶装置やハードディスク装置等で実現できる。
The management
以上の各構成要素に対する要件は、本実施形態だけでなく、以下に記載する第2の実施の形態〜第6の実施の形態にも適用する。 The above requirements for each component apply not only to the present embodiment, but also to the second to sixth embodiments described below.
本実施形態によれば、構成情報を用いて初期データを再構成デバイス内に読み込むための回路を作成する必要がないため、再構成デバイスにアプリケーション以外の処理を実行させる必要がなくなる。 According to the present embodiment, it is not necessary to create a circuit for reading initial data into the reconfigurable device using the configuration information, so that it is not necessary for the reconfigurable device to execute processing other than the application.
また、実行要求されたアプリケーションの初期データが処理データ記憶部33に無い場合にのみ、該初期データを処理データ記憶部33へ書き込み、所要の初期データが処理データ記憶部33に既に書き込まれている場合や使用しない処理データ記憶部33には初期データを書き込まないため、特に複数のアプリケーションを切り換えつつ繰り返し実行する場合に初期データの書き込み時間が短縮する。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。 Further, only when the initial data of the requested application is not stored in the processing data storage unit 33, the initial data is written into the processing data storage unit 33, and the required initial data is already written in the processing data storage unit 33. Since initial data is not written to the processing data storage unit 33 that is not used or used, the initial data writing time is shortened particularly when a plurality of applications are repeatedly executed while being switched. Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased.
したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。
(第2の実施の形態)
図2は第2の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
Therefore, the processing performance (throughput) of the reconfigurable device is improved by using the memory device management apparatus of this embodiment.
(Second Embodiment)
FIG. 2 is a block diagram illustrating a configuration of the memory device management apparatus according to the second embodiment.
図2に示すように、第2の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As shown in FIG. 2, the memory device management apparatus according to the second embodiment has a configuration including a management
第2の実施の形態のメモリデバイス管理装置は、1つまたは複数の構成情報から成る、予め決められた数のオブジェクトコードを保持できる再構成デバイスである第2の再構成可能ハードウェア4を管理する。第2の再構成可能ハードウェア4としては、例えばオブジェクトコードを複数保持し、処理していないときに該オブジェクトコードの切り換えが可能な、上記理論上実現可能なFPGAが考えられる。
The memory device management apparatus according to the second embodiment manages the second
第2の再構成可能ハードウェア4は、演算を実行する演算部42と、演算部42の動作を制御する制御部41と、演算部42及び制御部41による処理対象のデータや処理で必要なデータを保持する処理データ記憶部43と、構成情報を保持する構成情報記憶部44とを有する構成である。処理データ記憶部43は、管理単位となる複数の記憶領域431〜43nに分割可能である。
The second
本実施形態の管理データ記憶部1は、構成情報プール11、初期データプール12、記憶部管理部13及び構成状況表14を備えている。
The management
第2の実施の形態のメモリデバイス管理装置は、上述したように第2の再構成可能ハードウェア4の構成情報記憶部44が複数のオブジェクトコードを保持できるため、構成情報記憶部44で保持している構成情報も管理対象とする。そのため、第2の実施の形態のメモリデバイス管理装置は、第2の再構成可能ハードウェア4の構成情報記憶部44で保持している構成情報を管理するための構成状況表14を管理データ記憶部1に備えている点で第1の実施の形態のメモリデバイス管理装置と異なっている。
In the memory device management apparatus according to the second embodiment, since the configuration information storage unit 44 of the second
構成情報プール11には、第2の再構成可能ハードウェア4で実行する複数のアプリケーションのオブジェクトコードが格納される。オブジェクトコードの各構成情報には、第2の再構成可能ハードウェア4の構成や機能に応じて作成された、演算命令、各種の論理回路(演算器)の接続関係を示す情報、各種の論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第2の再構成可能ハードウェア4で実行するアプリケーション毎の初期データがそれぞれ格納される。
The
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第2の再構成可能ハードウェア4の処理データ記憶部43の記憶領域431〜43nを示す情報が格納される。
The storage unit request table 131 stores information indicating the storage areas 43 1 to 43 n of the processing data storage unit 43 of the second
記憶部状況表132は、第2の再構成可能ハードウェア4の処理データ記憶部43を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 43 of the second
構成状況表14は、第2の再構成可能ハードウェア4の構成情報記憶部44で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 14 stores information for identifying configuration information currently held in the configuration information storage unit 44 of the second
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第2の再構成可能ハードウェア4の構成情報記憶部44へ書き込み、初期データを処理データ記憶部43へ書き込む。管理部2は、第2の再構成可能ハードウェア4に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第2の再構成可能ハードウェア4に処理(アプリケーション)を実行させる。
The
本実施形態の管理部2は、任意のアプリケーションを実行中、次に実行する他のアプリケーションの実行要求を受信した場合、構成状況表14を参照して、次に実行するアプリケーションの構成情報が構成情報記憶部44に既に書き込まれているか否かを確認する。次に実行するアプリケーションの構成情報が構成情報記憶部44に無い場合は、現在実行中のアプリケーションの構成情報を上書きしないよう、構成情報記憶部44の空いている記憶領域に構成情報プール11から読み出した次に実行するアプリケーションの構成情報を書き込む。
When the
また、管理部2は、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部43へ書き込む。
In addition, the
すなわち、記憶部要求表131と記憶部状況表132とを比較し、次に実行するアプリケーションの初期データが処理データ記憶部43に無い場合は該初期データを処理データ記憶部43へ書き込む。その場合、書き込み後の処理データ記憶部43の状態に応じて記憶部状況表132を更新する。また、次に実行するアプリケーションの初期データが処理データ記憶部43に既に存在している場合は、該処理データの処理データ記憶部43に対する書き込みを省略する。なお、管理部2は、次に実行するアプリケーションの初期データを処理データ記憶部43に書き込む際、記憶部状況表132を参照し、現在実行中のアプリケーションで使用している処理データ記憶部43の記憶領域431〜43nについては、該アプリケーションの処理が終了した後に書き込むことで上書きしないようにする。
That is, the storage unit request table 131 and the storage unit status table 132 are compared, and if the initial data of the application to be executed next is not in the processing data storage unit 43, the initial data is written in the processing data storage unit 43. In this case, the storage unit status table 132 is updated according to the state of the processing data storage unit 43 after writing. If the initial data of the application to be executed next already exists in the processing data storage unit 43, the writing of the processing data to the processing data storage unit 43 is omitted. The
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
本実施形態によれば、第2の再構成可能ハードウェア4が備える構成情報記憶部44のうち、現在実行中のアプリケーションで使用していない記憶領域に対して、次に実行するアプリケーションの構成情報を先行して書き込むため、アプリケーションの切り替え時に、構成情報の書き換えに要する時間が不要になる。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。
(第3の実施の形態)
図3は第3の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
According to the present embodiment, the configuration information of the application to be executed next to the storage area that is not used by the currently executing application in the configuration information storage unit 44 included in the second
(Third embodiment)
FIG. 3 is a block diagram illustrating a configuration of the memory device management apparatus according to the third embodiment.
図3に示すように、第3の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As illustrated in FIG. 3, the memory device management apparatus according to the third embodiment has a configuration including a management
第3の実施の形態のメモリデバイス管理装置は、記憶容量の範囲内で、1つまたは複数の構成情報から成る、任意の数のオブジェクトコードを保持できる再構成デバイスである第3の再構成可能ハードウェア5を管理する。第3の再構成可能ハードウェア5としては、保持するオブジェクトコードを入れ替えることで各種の処理を実行できる、例えば上記DRPがある。
The memory device management apparatus according to the third embodiment is a reconfigurable device that is a reconfigurable device that can hold an arbitrary number of object codes composed of one or a plurality of pieces of configuration information within a storage capacity. The
第3の再構成可能ハードウェア5は、演算を実行する演算部52と、演算部52の動作を制御する制御部51と、演算部52及び制御部51による処理対象のデータや処理で必要なデータを保持する処理データ記憶部53と、構成情報を保持する構成情報記憶部54とを有する構成である。処理データ記憶部53は、管理単位となる複数の記憶領域531〜53nに分割可能である。
The third
本実施形態の管理データ記憶部1は、第2の実施の形態と同様に、構成情報プール11、初期データプール12、記憶部管理部13及び構成状況表14を備えている。
As in the second embodiment, the management
第3の実施の形態のメモリデバイス管理装置は、第3の再構成可能ハードウェア5の構成情報記憶部54が複数のオブジェクトコードを保持できるため、構成情報記憶部54で保持している構成情報も管理対象とする。そのため、第3の実施の形態のメモリデバイス管理装置は、第3の再構成可能ハードウェア5の構成情報記憶部54で保持している構成情報を管理するための構成状況表14を管理データ記憶部1に備えている。但し、第3の再構成可能ハードウェア5の構成情報記憶部54は、オブジェクトコードを保持する記憶容量が可変である点で第2の実施の形態で示した第3の再構成可能ハードウェア4と異なっている。
In the memory device management apparatus according to the third embodiment, since the configuration information storage unit 54 of the third
構成情報プール11には第3の再構成可能ハードウェア5で実行する複数のアプリケーションのオブジェクトコードが格納される。オブジェクトコードの各構成情報には、第3の再構成可能ハードウェア5の構成や機能に応じて作成された、演算命令、各種の論理回路(演算器)の接続関係を示す情報、各種の論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第3の再構成可能ハードウェア5で実行するアプリケーション毎の初期データがそれぞれ格納される。
The
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第3の再構成可能ハードウェア5の処理データ記憶部53の記憶領域を示す情報が格納される。
The storage unit request table 131 stores information indicating the storage area of the processing data storage unit 53 of the third
記憶部状況表132は、第3の再構成可能ハードウェア5の処理データ記憶部53を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 53 of the third
構成状況表14は、第3の再構成可能ハードウェア5の構成情報記憶部44で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 14 stores information for identifying configuration information currently held in the configuration information storage unit 44 of the third
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第3の再構成可能ハードウェア5の構成情報記憶部54へ書き込み、初期データを処理データ記憶部53へ書き込む。管理部2は、第3の再構成可能ハードウェア5に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第3の再構成可能ハードウェア5に処理(アプリケーション)を実行させる。
The
本実施形態の管理部2は、任意のアプリケーションを実行中に、次に実行する他のアプリケーションの実行要求を受信した場合、構成状況表14を参照して、次に実行するアプリケーションの構成情報が構成情報記憶部54に既に書き込まれているか否かを確認する。次に実行するアプリケーションの構成情報が構成情報記憶部54に無い場合は、現在実行中のアプリケーションに対応する構成情報を上書きしないよう、構成情報記憶部54の空いている記憶領域に構成情報プール11から読み出した次に実行するアプリケーションの構成情報を書き込む。
When the
このとき、管理部2は、構成状況表14を参照し、次に実行するアプリケーションのオブジェクトコードで必要な記憶容量が大きく、構成情報記憶部54の空いている記憶領域に全ての構成情報を書き込むことができない場合は、現在実行中のアプリケーションの処理が終了した後に残りの構成情報を書き込む。
At this time, the
また、管理部2は、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部53へ書き込む。すなわち、記憶部要求表131と記憶部状況表132とを比較し、次に実行するアプリケーションの初期データが処理データ記憶部53に無い場合は該初期データを処理データ記憶部53へ書き込む。その場合、書き込み後の処理データ記憶部53の状態に応じて記憶部状況表132を更新する。また、次に実行するアプリケーションの初期データが処理データ記憶部53に既に存在している場合は、該処理データの処理データ記憶部53に対する書き込みを省略する。このとき、管理部2は、記憶部状況表132を参照し、現在実行中のアプリケーションで使用している処理データ記憶部53の記憶領域531〜53nについては、該アプリケーションの処理が終了した後に書き込むことで、上書きしないようにする。
Also, the
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
本実施形態によれば、第3の再構成可能ハードウェア5が備える構成情報記憶部54の記憶領域のうち、現在実行中のアプリケーションで使用していない記憶領域に対して、次に実行するアプリケーションの構成情報を、空き記憶領域に応じて先行して書き込むため、アプリケーションの切り替え時に、構成情報の書き換えに要する時間が短縮する。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。
(第4の実施の形態)
図4は第4の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
According to the present embodiment, the next application to be executed on a storage area that is not used by the currently executing application among the storage areas of the configuration information storage unit 54 included in the third
(Fourth embodiment)
FIG. 4 is a block diagram showing a configuration of the memory device management apparatus according to the fourth embodiment.
図4に示すように、第4の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As shown in FIG. 4, the memory device management apparatus according to the fourth embodiment has a configuration including a management
第4の実施の形態のメモリデバイス管理装置は、第1の実施の形態と同様に第1の再構成可能ハードウェア3を管理する。第1の再構成可能ハードウェア3の構成は、第1の実施の形態と同様であるため、ここではその説明を省略する。
The memory device management apparatus according to the fourth embodiment manages the first
本実施形態の管理データ記憶部1は、構成情報プール11、初期データプール12、記憶部管理部13、中間データプール15及び中間データ管理表16を備えている。
The management
構成情報プール11には、第1の再構成可能ハードウェア3で実行する複数のアプリケーションに対応する構成情報が格納される。構成情報は、第1の再構成可能ハードウェア3の構成や機能に応じて作成された、演算命令、各論理回路(演算器)の接続関係を示す情報、各論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第1の再構成可能ハードウェア3で実行するアプリケーション毎の初期データがそれぞれ格納される。
The
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第1の再構成可能ハードウェア3の処理データ記憶部33の記憶領域を示す情報が格納される。また、記憶部要求表131には、後述する中間データとして退避や再書き込みが必要であるか否かを示す情報も格納される。
The storage unit request table 131 stores information indicating the storage area of the processing data storage unit 33 of the first
記憶部状況表132は、第1の再構成可能ハードウェア3の処理データ記憶部33を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 33 of the first
中間データプール15は、第1の再構成可能ハードウェア3で実行する、任意のアプリケーションによる処理途中のデータ(中間データ)が格納される。
The
中間データ管理表16は、中間データが格納された中間データプール15の記憶領域を示す情報が格納される。
The intermediate data management table 16 stores information indicating the storage area of the
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第1の再構成可能ハードウェア3の構成情報記憶部34へ書き込み、初期データを処理データ記憶部33へ書き込む。管理部2は、第1の再構成可能ハードウェア3に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第1の再構成可能ハードウェア3に処理(アプリケーション)を実行させる。
The
また、本実施形態の管理部2は、初期データを第1の再構成可能ハードウェア3へ書き込むとき、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部33へ書き込む。すなわち、記憶部要求表131と記憶部状況表132とを比較し、実行要求されたアプリケーションの初期データが処理データ記憶部33に無い場合は該初期データを処理データ記憶部33へ書き込む。その場合、書き込み後の処理データ記憶部33の状態に応じて記憶部状況表132を更新する。また、実行要求されたアプリケーションの初期データが処理データ記憶部33に既に存在している場合は、該初期データの処理データ記憶部33に対する書き込みを省略する。
In addition, when the
また、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第1の再構成可能ハードウェア3へ書き込むとき、記憶部要求表131を参照し、現在実行中のアプリケーションに関連して処理データ記憶部33で保持しているデータのうち、中間データとして保持するか否かを示す情報にしたがって、所要のデータを中間データとして中間データプール15へ退避させる。また、管理部2は、中間データプール15に中間データの存在を示す情報を中間データ管理表16へ書き込むことで中間データ管理表16を更新する。その後、次に実行するアプリケーションの初期データを初期データプール12から読み出し、該初期データを処理データ記憶部33へ書き込む。
In addition, when writing the initial data of the application to be executed next to the first
さらに、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第1の再構成可能ハードウェア3へ書き込むとき、中間データ管理表16を参照し、中間データプール15に必要な中間データがある場合は、中間データプール15から該中間データを読み出して処理データ記憶部33へ書き込む。
Furthermore, when the initial data of the application to be executed next is written to the first
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
本実施形態によれば、第1の実施の形態と同様の効果に加えて、アプリケーションによる処理途中の中間データの保存要否も管理できるため、構成情報を用いて中間データの退避や中間データを読み込むための回路を作成する必要がなくなる。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。
(第5の実施の形態)
図5は第5の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
According to the present embodiment, in addition to the same effects as those of the first embodiment, it is possible to manage whether or not intermediate data needs to be saved during the processing by the application. There is no need to create a circuit for reading. Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased. Therefore, the processing performance (throughput) of the reconfigurable device is improved by using the memory device management apparatus of this embodiment.
(Fifth embodiment)
FIG. 5 is a block diagram showing the configuration of the memory device management apparatus according to the fifth embodiment.
図5に示すように、第5の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As shown in FIG. 5, the memory device management apparatus according to the fifth embodiment has a configuration including a management
第5の実施の形態のメモリデバイス管理装置は、第2の実施の形態と同様に第2の再構成可能ハードウェア4を管理する。第2の再構成可能ハードウェア4の構成は、第2の実施の形態と同様であるため、ここではその説明を省略する。
The memory device management apparatus according to the fifth embodiment manages the second
本実施形態の管理データ記憶部1は、構成情報プール11、初期データプール12、記憶部管理部13、構成状況表14、中間データプール15及び中間データ管理表16を備えている。
The management
構成情報プール11には、第2の再構成可能ハードウェア4で実行する複数のアプリケーションのオブジェクトコードが格納される。オブジェクトコードの各構成情報には、第2の再構成可能ハードウェア4の構成や機能に応じて作成された、演算命令、各種の論理回路(演算器)の接続関係を示す情報、各種の論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第2の再構成可能ハードウェア4で実行するアプリケーション毎の初期データがそれぞれ格納される。
The
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第2の再構成可能ハードウェア3の処理データ記憶部43の記憶領域を示す情報が格納される。また、記憶部要求表131には、後述する中間データとして退避や再書き込みが必要であるか否かを示す情報も格納される。
The storage unit request table 131 stores information indicating the storage area of the processing data storage unit 43 of the second
記憶部状況表132は、第2の再構成可能ハードウェア4の処理データ記憶部43を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 43 of the second
構成状況表14は、第2の再構成可能ハードウェア4の構成情報記憶部44で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 14 stores information for identifying configuration information currently held in the configuration information storage unit 44 of the second
中間データプール15は、第2の再構成可能ハードウェア4で実行する、任意のアプリケーションによる処理途中のデータ(中間データ)が格納される。
The
中間データ管理表16は、中間データが格納された中間データプール15の記憶領域を示す情報が格納される。
The intermediate data management table 16 stores information indicating the storage area of the
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第2の再構成可能ハードウェア4の構成情報記憶部44へ書き込み、初期データを処理データ記憶部43へ書き込む。管理部2は、第2の再構成可能ハードウェア4に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第2の再構成可能ハードウェア4に処理(アプリケーション)を実行させる。
The
また、管理部2は、任意のアプリケーションを実行中に、次に実行する他のアプリケーションの実行要求を受信した場合、構成状況表14を参照して、次に実行するアプリケーションの構成情報が構成情報記憶部44に既に書き込まれているか否かを確認する。次に実行するアプリケーションの構成情報が構成情報記憶部44に無い場合は、現在実行中のアプリケーションに対応する構成情報を上書きしないよう、構成情報記憶部44の空いている記憶領域に構成情報プール11から読み出した次に実行するアプリケーションの構成情報を書き込む。
When the
また、管理部2は、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部43へ書き込む。すなわち、記憶部要求表131と記憶部状況表132とを比較し、次に実行するアプリケーションの初期データが処理データ記憶部43に無い場合は該初期データを処理データ記憶部43へ書き込む。その場合、書き込み後の処理データ記憶部43の状態に応じて記憶部状況表132を更新する。また、次に実行するアプリケーションの初期データが処理データ記憶部43に既に存在している場合は、該処理データの処理データ記憶部43に対する書き込みを省略する。なお、管理部2は、次に実行するアプリケーションの初期データを処理データ記憶部43に書き込む際、記憶部状況表132を参照し、現在実行中のアプリケーションで使用している処理データ記憶部の記憶領域431〜43nについては、該アプリケーションの処理が終了した後に書き込むことで、上書きしないようにする。
In addition, the
また、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第2の再構成可能ハードウェア4へ書き込むとき、記憶部要求表131を参照し、現在実行中のアプリケーションに関連して処理データ記憶部43で保持しているデータのうち、中間データとして保持するか否かを示す情報にしたがって、所要のデータを中間データとして中間データプール15へ退避させる。また、管理部2は、中間データプール15に中間データの存在を示す情報を中間データ管理表16へ書き込むことで中間データ管理表16を更新する。その後、次に実行するアプリケーションの初期データを初期データプール12から読み出し、該初期データを処理データ記憶部43へ書き込む。
In addition, when writing the initial data of the application to be executed next to the second
さらに、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第2の再構成可能ハードウェア4へ書き込むとき、中間データ管理表16を参照し、中間データプール15に必要な中間データがある場合は、中間データプール15から該中間データを読み出して処理データ記憶部43へ書き込む。
Furthermore, the
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
本実施形態によれば、第2の実施の形態と同様の効果に加えて、アプリケーションによる処理途中の中間データの保存要否も管理できるため、構成情報を用いて中間データの退避や中間データを読み込むための回路を作成する必要がなくなる。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。
(第6の実施の形態)
図6は第6の実施の形態のメモリデバイス管理装置の構成を示すブロック図である。
According to the present embodiment, in addition to the same effects as those of the second embodiment, it is possible to manage whether or not intermediate data needs to be saved during processing by the application. Therefore, saving of intermediate data and intermediate data can be performed using configuration information. There is no need to create a circuit for reading. Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased. Therefore, the processing performance (throughput) of the reconfigurable device is improved by using the memory device management apparatus of this embodiment.
(Sixth embodiment)
FIG. 6 is a block diagram illustrating a configuration of a memory device management apparatus according to the sixth embodiment.
図6に示すように、第6の実施の形態のメモリデバイス管理装置は、管理データ記憶部1及び管理部2を有する構成である。
As shown in FIG. 6, the memory device management apparatus according to the sixth embodiment has a configuration including a management
第6の実施の形態のメモリデバイス管理装置は、第3の実施の形態と同様に第3の再構成可能ハードウェア5を管理する。第3の再構成可能ハードウェア5の構成は、第3の実施の形態と同様であるため、ここではその説明を省略する。
The memory device management apparatus according to the sixth embodiment manages the third
本実施形態の管理データ記憶部1は、構成情報プール11、初期データプール12、記憶部管理部13、構成状況表14、中間データプール15及び中間データ管理表16を備えている。
The management
構成情報プール11には、第3の再構成可能ハードウェア5で実行する複数のアプリケーションのオブジェクトコードが格納される。オブジェクトコードの各構成情報には、第3の再構成可能ハードウェア5の構成や機能に応じて作成された、演算命令、各種の論理回路(演算器)の接続関係を示す情報、各種の論理回路(演算器)の処理順序を指定する情報等が含まれる。
The
初期データプール12には、第3の再構成可能ハードウェア5で実行するアプリケーション毎の初期データがそれぞれ格納される。
The
記憶部管理部13は、記憶部要求表131及び記憶部状況表132を備えている。
The storage
記憶部要求表131は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、第3の再構成可能ハードウェア5の処理データ記憶部53の記憶領域を示す情報が格納される。また、記憶部要求表131には、後述する中間データとして退避や再書き込みが必要であるか否かを示す情報も格納される。
The storage unit request table 131 stores information indicating the storage area of the processing data storage unit 53 of the third
記憶部状況表132は、第3の再構成可能ハードウェア5の処理データ記憶部53を現在使用している、アプリケーションを示す情報が格納される。
The storage unit status table 132 stores information indicating an application that is currently using the processing data storage unit 53 of the third
構成状況表14は、第3の再構成可能ハードウェア5の構成情報記憶部54で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 14 stores information for identifying the configuration information currently held in the configuration information storage unit 54 of the third
中間データプール15は、第3の再構成可能ハードウェア5で実行する、任意のアプリケーションによる処理途中のデータ(中間データ)が格納される。
The
中間データ管理表16は、中間データが格納された中間データプール15の記憶領域を示す情報が格納される。
The intermediate data management table 16 stores information indicating the storage area of the
管理部2は、外部から送信されるアプリケーションの実行要求にしたがって、管理データ記憶部1から該アプリケーションの構成情報及び初期データを読み出し、構成情報を第3の再構成可能ハードウェア5の構成情報記憶部54へ書き込み、初期データを処理データ記憶部53へ書き込む。管理部2は、第3の再構成可能ハードウェア5に対する構成情報及び初期データの書き込みが終了すると、該書き込まれた構成情報にしたがって第3の再構成可能ハードウェア5に処理(アプリケーション)を実行させる。
The
本実施形態の管理部2は、任意のアプリケーションを実行中に、次に実行する他のアプリケーションの実行要求を受信した場合、構成状況表14を参照して、次に実行するアプリケーションの構成情報が構成情報記憶部54に既に書き込まれているか否かを確認する。次に実行するアプリケーションの構成情報が構成情報記憶部54に無い場合は、現在実行中のアプリケーションに対応する構成情報を上書きしないよう、構成情報記憶部54の空いている記憶領域に構成情報プール11から読み出した次に実行するアプリケーションの構成情報を書き込む。
When the
このとき、管理部2は、構成状況表14を参照し、次に実行するアプリケーションのオブジェクトコードで必要な記憶容量が大きく、構成情報記憶部54の空いている記憶領域に全ての構成情報を書き込むことができない場合、残りの構成情報を現在実行中のアプリケーションの処理が終了した後に書き込む。
At this time, the
また、管理部2は、記憶部要求表131及び記憶部状況表132を参照し、次に実行するアプリケーションの初期データのうち、書き込みが必要な初期データのみを処理データ記憶部53へ書き込む。すなわち、記憶部要求表131と記憶部状況表132とを比較し、次に実行するアプリケーションの初期データが処理データ記憶部53に無い場合は該初期データを処理データ記憶部53へ書き込む。その場合、書き込み後の処理データ記憶部53の状態に応じて記憶部状況表132を更新する。また、次に実行するアプリケーションの初期データが処理データ記憶部53に既に存在している場合は、該処理データの処理データ記憶部53に対する書き込みを省略する。このとき、管理部2は、記憶部状況表132を参照し、現在実行中のアプリケーションで使用している処理データ記憶部の記憶領域531〜53nについては、該アプリケーションの処理が終了した後に書き込むことで、上書きしないようにする。
Also, the
また、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第3の再構成可能ハードウェア5へ書き込むとき、記憶部要求表131を参照し、現在実行中のアプリケーションに関連して処理データ記憶部53で保持しているデータのうち、中間データとして保持するか否かを示す情報にしたがって、所要のデータを中間データとして中間データプール15へ退避させる。また、管理部2は、中間データプール15に中間データの存在を示す情報を中間データ管理表16へ書き込むことで中間データ管理表16を更新する。その後、次に実行するアプリケーションの初期データを初期データプール12から読み出し、該初期データを処理データ記憶部53へ書き込む。
In addition, when writing the initial data of the application to be executed next to the third
さらに、本実施形態の管理部2は、次に実行するアプリケーションの初期データを第3の再構成可能ハードウェア5へ書き込むとき、中間データ管理表16を参照し、中間データプール15に必要な中間データがある場合は、中間データプール15から該中間データを読み出して処理データ記憶部43へ書き込む。
Furthermore, the
本実施形態のメモリデバイス管理装置は、以上の処理をアプリケーションの実行要求毎に実施する。 The memory device management apparatus according to the present embodiment performs the above processing for each application execution request.
本実施形態によれば、第3の実施の形態と同様の効果に加えて、アプリケーションによる処理途中の中間データの保存要否も管理できるため、構成情報を用いて中間データの退避や中間データを読み込むための回路を作成する必要がなくなる。そのため、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施形態のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。 According to the present embodiment, in addition to the same effects as those of the third embodiment, it is possible to manage whether or not intermediate data is being saved during the processing by the application. There is no need to create a circuit for reading. Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased. Therefore, the processing performance (throughput) of the reconfigurable device is improved by using the memory device management apparatus of this embodiment.
次に本発明の実施例について図面を用いて説明する。
(第1実施例)
図7は第1実施例のメモリデバイス管理装置の構成を示すブロック図である。
Next, embodiments of the present invention will be described with reference to the drawings.
(First embodiment)
FIG. 7 is a block diagram showing the configuration of the memory device management apparatus of the first embodiment.
図7に示すように、第1実施例のメモリデバイス管理装置は、管理データ記憶部6及び管理部7を備えている。
As shown in FIG. 7, the memory device management apparatus according to the first embodiment includes a management
第1実施例は、上記特許文献1に記載されたFPGA8から成るデータ処理装置を、上述した第4の実施の形態のメモリデバイス管理装置で管理する例である。
The first example is an example in which the data processing apparatus including the
FPGA8は、第1の実施の形態や第4の実施の形態で示した第1の再構成可能ハードウェア3に相当する。
The
FPGA8は、アプリケーションの処理を実行するゲートアレイ81と、初期データや中間データを保持する周辺メモリ83とを備えている。周辺メモリ83は、管理単位となる複数の記憶領域831〜83nに分割可能である。
The
ゲートアレイ81は、LUT(ルックアップテーブル)、D−フリップフロップ、スイッチ等を備えたデータパス(チャネル)を有し、データパスの構成とその動作を指定する構成情報を保持することが可能である。 The gate array 81 has a data path (channel) including a LUT (look-up table), a D-flip-flop, a switch, and the like, and can hold configuration information specifying the configuration of the data path and its operation. is there.
ゲートアレイ81は、第1の実施の形態や第4の実施の形態で示した第1の再構成可能ハードウェア3の演算部32、制御部31及び構成情報記憶部34に相当し、周辺メモリ83は第1の再構成可能ハードウェア3の処理データ記憶部33に相当する。
The gate array 81 corresponds to the
管理データ記憶部6は、構成情報プール61、初期データプール62、周辺メモリ管理部63、構成状況レジスタ64、中間データプール65及び中間データ管理表66を備えている。構成情報プール61は、第4の実施の形態で示した管理データ記憶部1の構成情報プール11に相当し、初期データプール62は管理データ記憶部1の初期データプール12に相当する。周辺メモリ管理部63は管理データ記憶部1の記憶部管理部13に相当し、構成状況レジスタ64は管理データ記憶部1の構成状況表14に相当する。また、中間データプール65は管理データ記憶部1の中間データプール15に相当し、中間データ管理表66は管理データ記憶部1の中間データ管理表16に相当する。
The management
構成情報プール61には、FPGA8で実行する複数のアプリケーション毎の構成情報が格納される。
The
初期データプール62には、FPGA8で実行する複数のアプリケーション毎の初期データが格納される。
The
周辺メモリ管理部63は、周辺メモリ要求表631及び周辺メモリ状況表632を備えている。 The peripheral memory management unit 63 includes a peripheral memory request table 631 and a peripheral memory status table 632.
周辺メモリ要求表631は、アプリケーションの実行時に、該アプリケーションの初期データの保持に用いる、FPGA8の周辺メモリ83の記憶領域を示す情報が格納される。また、周辺メモリ要求表631には、後述する中間データとして退避や再書き込みが必要であるか否かを示す情報も格納される。
The peripheral memory request table 631 stores information indicating the storage area of the peripheral memory 83 of the
周辺メモリ状況表632は、FPGA8の周辺メモリ83を現在使用している、アプリケーションを示す情報が格納される。
The peripheral memory status table 632 stores information indicating an application that is currently using the peripheral memory 83 of the
構成状況表68は、FPGA8で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 68 stores information for identifying configuration information currently held in the
中間データプール65は、FPGA8で実行する、任意のアプリケーションによる処理途中のデータ(中間データ)が格納される。
The
中間データ管理表66は、中間データが格納された中間データプール65の記憶領域を示す情報が格納される。
The intermediate data management table 66 stores information indicating the storage area of the
以下、FPGA8で3種類のアプリケーションA、B、Cを実行する場合を例にして、第1実施例のメモリデバイス管理装置の動作について説明する。
Hereinafter, the operation of the memory device management apparatus according to the first embodiment will be described by taking as an example the case where three types of applications A, B, and C are executed by the
図8aは、管理データ記憶部6が備える構成情報プール61、初期データプール62、周辺メモリ管理部63、構成状況レジスタ64、中間データプール65及び中間データ管理表66に格納された情報を示している。
FIG. 8 a shows information stored in the
図8aに示す例では、構成情報プール61に、アプリケーションA、B、Cに対応する構成情報が格納され、初期データプール62には、アプリケーションAに対応して周辺メモリ83の5つの記憶領域(5ブロック)に相当する初期データが格納され、アプリケーションBに対応して周辺メモリ83の4つの記憶領域(4ブロック)に相当する初期データが格納され、アプリケーションCに対応して周辺メモリ83の4つの記憶領域(4ブロック)に相当する初期データが格納されている。
In the example shown in FIG. 8A, the
周辺メモリ要求表631には、アプリケーションA、B、Cで使用する周辺メモリ83の記憶領域が示されている。ここでは、周辺メモリ83が8つの記憶領域831〜838に分割されているものとする。 The peripheral memory request table 631 shows storage areas of the peripheral memory 83 used by the applications A, B, and C. Here, it is assumed that the peripheral memory 83 is divided into eight storage areas 83 1 to 83 8 .
周辺メモリ状況表632、中間データ管理表66、構成状況レジスタ64には、現状では何も情報が格納されておらず、中間データプール65には中間データが何も格納されていない。
No information is currently stored in the peripheral memory status table 632, the intermediate data management table 66, and the
図8aに示す周辺メモリ要求表631、周辺メモリ状況表632及び中間データ管理表66の縦軸は、周辺メモリ83の記憶領域831〜838に対応し、「1」が記載されている記憶領域は、該記憶領域に対応するアプリケーションで使用することを示している。また、「2」が記載されている記憶領域は、該記憶領域で保持するデータが中間データとして退避や再書き込みが必要であることを示している。 The vertical axes of the peripheral memory request table 631, the peripheral memory status table 632, and the intermediate data management table 66 shown in FIG. 8a correspond to the storage areas 83 1 to 83 8 of the peripheral memory 83, and “1” is described. The area indicates that the area is used by an application corresponding to the storage area. A storage area with “2” indicates that data held in the storage area needs to be saved and rewritten as intermediate data.
ここでは、予めアプリケーションA、B、Cの構成情報が構成情報プール61に格納され、アプリケーションA、B、Cの初期データが初期データプール62に格納され、周辺メモリ要求表631に、図8aに示すような、アプリケーションA、B、Cに対応する情報が格納されている状態から動作を開始するものとする。
Here, the configuration information of the applications A, B, and C is stored in advance in the
FPGA8及びメモリデバイス管理装置が起動され、外部からアプリケーションAの実行要求を受信すると、管理部7は、構成情報プール61からアプリケーションAの構成情報を読み出してゲートアレイ81に書き込み、アプリケーションAの構成情報が書き込まれていることを示す情報を構成状況レジスタ64に書き込む。
When the
また、管理部7は、周辺メモリ要求表631を参照し、アプリケーションAの初期データが周辺メモリ83の記憶領域831、833、834、837、838に書き込み可能であるか否かを判定する。
Further, the
図8aに示す周辺メモリ要求表631を参照すると、記憶領域837、838は中間データの退避または書き込みに用いる記憶領域であるが、中間データ管理表66を参照すると、現時点では中間データが無い。 Referring to peripheral memory request table 631 shown in FIG. 8a, but the storage area 83 7, 83 8 is a storage area used for saving or writing intermediate data, referring to the intermediate data management table 66, there is no intermediate data at the moment .
したがって、管理部7は、初期データプール62からアプリケーションAの初期データを読み出し、該初期データを周辺メモリ83の記憶領域831、833、834、837、838へ書き込み、周辺メモリ状況表632を初期データ書き込み後の周辺メモリ83の状態に応じて更新する。
Therefore, the
また、管理部7は、全ての構成情報及び初期データの書き込みが終了すると、FPGA8によるアプリケーションAの処理を開始させる。このとき、図8bに示すように、周辺メモリ状況表632には、周辺メモリ83の記憶領域831、833、834、837、838をアプリケーションAで使用していることが示されている。
In addition, when the writing of all the configuration information and the initial data is completed, the
次に、アプリケーションAの実行中にアプリケーションBの実行要求を受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションBの初期データが周辺メモリ83の記憶領域831、832、836、838に書き込み可能であるか否かを判定する。
Next, when an execution request for application B is received during execution of application A,
ここで、記憶領域831、838は、現在実行中のアプリケーションAで使用しているため、記憶領域832、836にのみアプリケーションBの初期データが書き込み可能である。したがって、管理部7は、初期データプール62から読み出したアプリケーションBの初期データを記憶領域832、836へ書き込み、周辺メモリ状況表632を更新する。
Here, since the storage areas 83 1 and 83 8 are used by the currently executing application A, the initial data of the application B can be written only in the storage areas 83 2 and 83 6 . Therefore, the
このとき、図8cに示すように、周辺メモリ状況表632には、周辺メモリ83の記憶領域831、833、834、837、838をアプリケーションAで使用し、記憶領域832、836をアプリケーションBで使用していることが示されている。 At this time, as shown in FIG. 8c, in the peripheral memory status table 632, the storage areas 83 1 , 83 3 , 83 4 , 83 7 , and 8 8 of the peripheral memory 83 are used by the application A, and the storage areas 83 2 , it has been shown that using 83 6 in an application B.
アプリケーションAの処理が終了すると、管理部7は、アプリケーションAの実行中に書き込めなかったアプリケーションBの初期データを記憶領域831、838へ書き込む。管理部7は、まず周辺メモリ状況表632を参照することで記憶領域831、838へ初期データの書き込みが必要であり、周辺メモリ要求表631を参照することで、記憶領域838で保持されたアプリケーションAの中間データの退避が必要であることが分かる。そのため、管理部7は、記憶領域838で保持しているデータを中間データプール65の第1の記憶領域へ書き出し、中間データ管理表66に記憶領域838から中間データプール65へアプリケーションAの中間データを退避させた旨を書き込む。その後、管理部7は、記憶領域831、838にアプリケーションBの初期データを書き込む。
When the processing of the application A is completed, the
続いて、管理部7は、構成情報プール61から読み出したアプリケーションBの構成情報をFPGA8のゲートアレイ81に書き込み、構成情報の書き込みが完了すると、FPGA8にアプリケーションBの処理を開始させる。このとき、図8dに示すように、中間データプール65には記憶領域838で保持していたアプリケーションAの中間データ(A−8)が格納され、中間データ管理表66には、該アプリケーションAの中間データ(A−8)を中間データプール65の第1の記憶領域に退避したことが示されている。また、構成状況レジスタ64にはアプリケーションBの構成情報をゲートアレイ81で使用していることが示されている。
Subsequently, the
次に、アプリケーションBの実行中にアプリケーションAの実行要求を再度受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションAの初期データが周辺メモリ83の記憶領域831、833、834、837、838に書き込み可能であるか否かを判定する。
Next, when the execution request of the application A is received again during the execution of the application B, the
ここで、記憶領域831、838は現在実行中のアプリケーションBで使用しているため、記憶領域833、834、837にのみアプリケーションAの初期データの書き込みが可能である。但し、周辺メモリ状況表632を参照すると、記憶領域833、834、837には、前回アプリケーションAを実行したときの初期データが残っているため、再度書き込む必要が無い。そのため、管理部7は、ここでは周辺メモリ83の書き換えを実行しない。
Here, since the storage areas 83 1 and 83 8 are used by the application B that is currently being executed, the initial data of the application A can be written only in the storage areas 83 3 , 83 4 , and 83 7 . However, referring to peripheral memory status table 632, the storage area 83 3, 83 4, 83 7, since there is still the initial data when executing the last application A, there is no need to write again. For this reason, the
アプリケーションBの処理が終了すると、管理部7は、アプリケーションBの実行中に書き込めなかったアプリケーションAの初期データを記憶領域831、838に書き込む。
When the processing of the application B is completed, the
このとき、管理部7は、中間データ管理表66を参照することで、中間データプール65の第1の記憶領域に退避している中間データ(A−8)を記憶領域838へ書き込み、記憶領域831に初期データプール62から読み出した初期データを書き込む。また、管理部7は、中間データプール65の第1の記憶領域を無効化する。無効化は、中間データ(A−8)を中間データプール65へ退避させたことを示す情報を中間データ管理表66から削除することで実現する。
In this case, the
続いて、管理部7は、構成情報プール61から読み出したアプリケーションAの構成情報をFPGA8のゲートアレイ81に書き込み、構成情報の書き込み終了後にFPGA8にアプリケーションAの処理を開始させる。このとき、図8eに示すように、中間データ管理表66ではアプリケーションAの中間データの退避先を示す情報が削除されている。また、中間データプール65の第1の記憶領域にはアプリケーションAの中間データ(A−8)が残っているが、中間データ管理表66から該中間データの退避先を示す情報が削除されているため、該中間データの読み出し処理は無効化されている。
Subsequently, the
次に、アプリケーションAの実行中にアプリケーションCの実行要求を受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションCの初期データが周辺メモリ83の記憶領域831、832、835、836、837に書き込み可能であるか否かを判定する。
Next, when the execution request of the application C is received during the execution of the application A, the
ここで、記憶領域831、837は、現在実行中のアプリケーションAで使用しているため、記憶領域832、835、836にのみアプリケーションCの初期データが書き込み可能である。したがって、管理部7は、初期データプール62から読み出したアプリケーションCの初期データを記憶領域835、836へ書き込み、周辺メモリ状況表632を更新する。このとき、図8fに示すように、周辺メモリ状況表632には、記憶領域831、833、834、837、838をアプリケーションAで使用し、記憶領域832、835、836をアプリケーションCで使用していることが示されている。
Here, since the storage areas 83 1 and 83 7 are used by the currently executing application A, the initial data of the application C can be written only in the storage areas 83 2 , 83 5 , and 83 6 . Therefore, the
アプリケーションAの処理が終了すると、管理部7は、アプリケーションAの実行中に書き込めなかったアプリケーションCの初期データを記憶領域831、837へ書き込む。管理部7は、まず周辺メモリ状況表632を参照することで記憶領域831、837へ初期データの書き込みが必要であり、周辺メモリ要求表631を参照することで、記憶領域837で保持されたアプリケーションAの中間データの退避が必要であることが分かる。そのため、管理部7は、記憶領域837で保持しているデータを中間データプール65の第1の記憶領域へ書き出し、中間データ管理表66に記憶領域837から中間データプール65へアプリケーションAの中間データを退避させた旨を書き込む。その後、管理部7は、記憶領域831、837にアプリケーションBの初期データを書き込む。
When the processing of the application A is completed, the
また、管理部7は、構成情報プール61から読み出したアプリケーションCの構成情報をFPGA8のゲートアレイ81に書き込み、構成情報の書き込み終了後にFPGA8にアプリケーションCの処理を開始させる。このとき、図8gに示すように、中間データプール65には記憶領域837で保持していたアプリケーションAの中間データ(A−7)が格納され、中間データ管理表66には、該アプリケーションAの中間データ(A−7)を中間データプール65の第1の記憶領域に退避したことが示されている。また、構成状況レジスタ64にはアプリケーションCの構成情報をゲートアレイ81で使用していることが示されている。
In addition, the
次に、アプリケーションCの実行中にアプリケーションAの実行要求を再度受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションAの初期データが周辺メモリ83の記憶領域831、833、834、837、838に書き込み可能であるか否かを判定する。
Next, when the execution request of the application A is received again during the execution of the application C, the
ここでは、現在実行中のアプリケーションCで記憶領域831、837を使用しているため、記憶領域833、834、838にのみアプリケーションAの初期データが書き込み可能である。但し、周辺メモリ状況表632を参照すると、記憶領域833、834、838には、前回アプリケーションAを実行した際に格納した初期データが残っているため、再度書き込む必要が無いことが分かる。そのため、管理部7は、ここでは周辺メモリ83の書き換えを実行しない。
Here, since the storage area 83 1 , 83 7 is used in the currently executing application C, the initial data of the application A can be written only in the storage areas 83 3 , 83 4 , 83 8 . However, referring to peripheral memory status table 632, the storage area 83 3, 83 4, 83 8, since there is still the initial data stored in a previous run of the application A, it can be seen that there is no need to write again . For this reason, the
アプリケーションCの処理が終了すると、管理部7は、アプリケーションCの実行中に書き込めなかったアプリケーションAの初期データを記憶領域831、837へ書き込む。
When the processing of the application C is completed, the
このとき、管理部7は、中間データ管理表66を参照することで、中間データプール65の第1の記憶領域に退避している中間データ(A−7)を記憶領域837へ書き込み、記憶領域831に初期データプール62から読み出した初期データを書き込む。また、管理部7は、中間データプール65の第1の記憶領域を無効化する。無効化は、中間データ(A−7)の中間データプール65への退避を示す情報を中間データ管理表66から削除することで実現する。
In this case, the
続いて、管理部7は、構成情報プール61から読み出したアプリケーションAの構成情報をFPGA8のゲートアレイ81に書き込み、構成情報の書き込み終了後にFPGA8にアプリケーションAの処理を開始させる。このとき、図8hに示すように、中間データ管理表66ではアプリケーションAの中間データの退避先を示す情報が削除されている。また、中間データプール65の第1の記憶領域にはアプリケーションAの中間データ(A−7)が残っているが、中間データ管理表66から該中間データの退避先を示す情報が削除されているため、該中間データの読み出し処理は無効化されている。
Subsequently, the
以下、同様にして、次に実行要求されたアプリケーションの初期データや中間データのうち、現在実行中のアプリケーションで使用していない周辺メモリ83へ書き込む初期データや中間データは、現在実行中のアプリケーションの終了を待つことなく書き込み、現在実行中のアプリケーションで使用している周辺メモリ83へ書き込む初期データや中間データは、現在実行中のアプリケーションの終了を待って書き込む。また、その際、現在実行中のアプリケーションで使用している周辺メモリ83内の中間データの退避が必要な場合は、該中間データを中間データプール65へ書き出し、中間データ管理表66に退避後の中間データが格納された領域を記憶させる。
Similarly, among the initial data and intermediate data of the application requested to be executed next, the initial data and intermediate data to be written to the peripheral memory 83 not used by the currently executing application are the same as those of the currently executing application. The initial data and intermediate data to be written without waiting for the end and written to the peripheral memory 83 used by the currently executing application are written after the end of the currently executing application. At that time, if it is necessary to save intermediate data in the peripheral memory 83 used by the currently executing application, the intermediate data is written to the
本実施例のメモリデバイス管理装置によれば、FPGA8が備える周辺メモリ83のうち、現在実行中のアプリケーションで使用していない記憶領域に対して、次に実行するアプリケーションの初期データを先行して書き込むため、アプリケーションの切り替え時に初期データの書き換えに要する時間を短縮できる。
According to the memory device management apparatus of the present embodiment, the initial data of the application to be executed next is written in advance in the storage area not used by the currently executing application in the peripheral memory 83 provided in the
また、構成情報を用いて初期データや中間データを周辺メモリ83に読み込むための回路を作成する必要がないため、FPGA8にアプリケーション以外の処理を実行させる必要がなくなる。
In addition, since it is not necessary to create a circuit for reading the initial data and intermediate data into the peripheral memory 83 using the configuration information, it is not necessary to cause the
したがって、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施例のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。 Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased. Therefore, by using the memory device management apparatus of this embodiment, the processing performance (throughput) of the reconfigurable device is improved.
(第2実施例)
図9は第2実施例のメモリデバイス管理装置の構成を示すブロック図である。
(Second embodiment)
FIG. 9 is a block diagram showing the configuration of the memory device management apparatus of the second embodiment.
図9に示すように、第2実施例のメモリデバイス管理装置は、管理データ記憶部6及び管理部7を備えている。
As shown in FIG. 9, the memory device management apparatus according to the second embodiment includes a management
第2実施例は、上記特許文献9に記載されたDRP9から成るデータ処理装置を、上述した第6の実施の形態のメモリデバイス管理装置で管理する例である。
The second example is an example in which the data processing apparatus including the
DRP9は、第3の実施の形態や第6の実施の形態で示した第3の再構成可能ハードウェア5に相当する。
The
DRP9は、演算を実行するPE群91と、PE群91の動作を制御するSTC92と、初期データや中間データを保持する周辺メモリ93とを備えている。周辺メモリ93は、管理単位となる複数の記憶領域931〜93nに分割可能である。
The
PE群91は、演算を実行する複数のPE(Processor Element)を備え、各PEは構成情報を保持するための命令メモリ94を備えている。命令メモリ94は、管理単位となる複数のブロック0〜nに分割可能である。なお、以下では、命令メモリ94の各ブロックで構成情報を保持する例を示すが、構成情報はSTC92が備える不図示の内部メモリでも保持可能である。
The
PE群91は、第3の実施の形態や第6の実施の形態で示した第3の再構成可能ハードウェア5の演算部52及び構成情報記憶部54に相当し、STC92は第3の再構成可能ハードウェア5の制御部51に相当し、周辺メモリ93は第3の再構成可能ハードウェア5の処理データ記憶部53に相当する。
The
管理データ記憶部6は、構成情報プール67、初期データプール62、周辺メモリ管理部63、構成状況表68、中間データプール65及び中間データ管理表66を備えている。構成情報プール67は、第6の実施の形態で示した管理データ記憶部1の構成情報プール11に相当し、初期データプール62は管理データ記憶部1の初期データプール12に相当する。周辺メモリ管理部63は管理データ記憶部1の記憶部管理部13に相当し、構成状況表68は管理データ記憶部1の構成状況表14に相当する。また、中間データプール65は管理データ記憶部1の中間データプール15に相当し、中間データ管理表66は管理データ記憶部1の中間データ管理表16に相当する。
The management
構成情報プール67には、DRP9で実行する複数のアプリケーション毎の構成情報が格納される。
In the
初期データプール62には、DRP9で実行する複数のアプリケーション毎の初期データが格納される。
The
周辺メモリ管理部63は、周辺メモリ要求表631及び周辺メモリ状況表632を備えている。 The peripheral memory management unit 63 includes a peripheral memory request table 631 and a peripheral memory status table 632.
周辺メモリ要求表631は、アプリケーションの実行時に、該アプリケーションの初期データや中間データの保持に用いる、DRP9の周辺メモリ93の記憶領域を示す情報が格納される。また、周辺メモリ要求表631には、後述する中間データとして退避や再書き込みが必要であるか否かを示す情報も格納される。
The peripheral memory request table 631 stores information indicating the storage area of the peripheral memory 93 of the
周辺メモリ状況表632は、DRP9の周辺メモリ93を現在使用している、アプリケーションを示す情報が格納される。
The peripheral memory status table 632 stores information indicating an application that is currently using the peripheral memory 93 of the
構成状況表68は、DRP9で現在保持している構成情報を識別するための情報が格納される。
The configuration status table 68 stores information for identifying configuration information currently held by the
中間データプール65は、DRP9で実行する、任意のアプリケーションによる処理途中のデータ(中間データ)が格納される。
The
中間データ管理表66は、中間データが格納された中間データプール65の記憶領域を示す情報が格納される。
The intermediate data management table 66 stores information indicating the storage area of the
以下、DRP9で3種類のアプリケーションA、B、Cを実行する場合を例にして、第2実施例のメモリデバイス管理装置の動作について説明する。 The operation of the memory device management apparatus according to the second embodiment will be described below by taking as an example the case where three types of applications A, B, and C are executed by DRP9.
図10aは、管理データ記憶部6が備える構成情報プール67、初期データプール62、周辺メモリ管理部63、構成状況表68、中間データプール65及び中間データ管理表66に格納された情報を示している。
FIG. 10 a shows information stored in the
図10aに示す例では、構成情報プール67に、アプリケーションAに対応して命令メモリ94の8ブロックに相当する構成情報が格納され、アプリケーションBに対応して命令メモリ94の6ブロックに相当する構成情報が格納され、アプリケーションCに対応して命令メモリ94の12ブロックに相当する構成情報が格納されている。また、初期データプール62には、アプリケーションAに対応して周辺メモリ93の5つの記憶領域に相当する初期データが格納され、アプリケーションBに対応して周辺メモリ93の4つの記憶領域に相当する初期データが格納され、アプリケーションCに対応して周辺メモリ93の4つの記憶領域に相当する初期データが格納されている。
In the example shown in FIG. 10A, configuration information corresponding to 8 blocks of the
周辺メモリ要求表631には、アプリケーションA、B、Cで使用する周辺メモリ93の記憶領域が示されている。ここでは、周辺メモリ93が8つの記憶領域931〜938に分割されているものとする。また、PE群91は内部メモリ94により構成情報を16のブロック(ブロック0〜15)にて保持可能とする。
The peripheral memory request table 631 shows storage areas of the peripheral memory 93 used by the applications A, B, and C. Here, it is assumed that the peripheral memory 93 is divided into eight storage areas 93 1 to 934. The
周辺メモリ状況表632、中間データ管理表66、構成状況表68には、現状では何も情報が格納されておらず、中間データプール65には何も中間データが格納されていない。
No information is currently stored in the peripheral memory status table 632, the intermediate data management table 66, and the configuration status table 68, and no intermediate data is stored in the
図10aに示す周辺メモリ要求表631、周辺メモリ状況表632及び中間データ管理表66の縦軸は、周辺メモリ93の分割後の記憶領域931〜938に対応し、「1」が記載されている記憶領域は、該記憶領域に対応するアプリケーションで使用することを示している。また、「2」が記載されている記憶領域は、該記憶領域で保持するデータが中間データとして退避や再書き込みが必要であることを示している。ここでは、予めアプリケーションA、B、Cの構成情報が構成情報プール61に格納され、アプリケーションA、B、Cの初期データが初期データプール62に格納され、周辺メモリ要求表631に、図10aに示すような、各アプリケーションA、B、Cに対応する情報が格納されている状態から動作を開始するものとする。
Peripheral memory request table 631 shown in FIG. 10a, the longitudinal axis of the peripheral memory state table 632 and the intermediate data management table 66 corresponding to the storage area 93 1 to 93 8 after splitting the peripheral memory 93, "1" is described The storage area is used by an application corresponding to the storage area. A storage area with “2” indicates that data held in the storage area needs to be saved and rewritten as intermediate data. Here, the configuration information of the applications A, B, and C is stored in advance in the
DRP9及びメモリデバイス管理装置が起動され、外部からアプリケーションAの実行要求を受信すると、管理部7は、構成情報プール67からアプリケーションAの構成情報を読み出し、PE群91が備える命令メモリ94およびSTC92が備える内部メモリに該構成情報を書き込み、構成状況表68にアプリケーションAの構成情報の書き込み済みを示す情報を格納する。
When the
また、管理部7は、周辺メモリ要求表631を参照し、アプリケーションAの初期データが周辺メモリ93の記憶領域931、933、934、937、938に書き込み可能であるか否かを判定する。
The
図10aに示す周辺メモリ要求表631を参照すると、記憶領域937、938は中間データの退避または書き込みに用いる領域であるが、中間データ管理表66を参照すると、現時点では中間データが無い。 Referring to peripheral memory request table 631 shown in FIG. 10a, but the storage area 93 7, 93 8 is the area used in the save or writing intermediate data, referring to the intermediate data management table 66, the intermediate data is not at the moment.
したがって、管理部7は、初期データプール62からアプリケーションAの初期データを読み出し、該初期データを記憶領域931、933、934、937、938へ書き込み、周辺メモリ状況表632を初期データ書き込み後の周辺メモリ93の状態に応じて更新する。
Therefore, the
管理部7は、アプリケーションAの全ての構成情報及び初期データの書き込みが終了すると、DRP9によるアプリケーションAの処理を開始させる。このとき、図10bに示すように、周辺メモリ状況表632には、周辺メモリ93の記憶領域931、933、934、937、938をアプリケーションAで使用していることが示されている。また、構成状況表68には、命令メモリ94のブロック0〜7でアプリケーションAの構成情報を保持していることが示されている。
When the writing of all the configuration information and initial data of the application A is completed, the
次に、アプリケーションAの実行中にアプリケーションBの実行要求を受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションBの初期データが周辺メモリ93の記憶領域931、932、936、938に書き込み可能であるか否かを判定する。
Next, when an execution request for application B is received during execution of application A,
ここで、記憶領域931、938は、現在実行中のアプリケーションAで使用しているため、記憶領域932、936にのみアプリケーションBの初期データが書き込み可能である。したがって、管理部7は、初期データプール62から読み出したアプリケーションBの初期データを記憶領域932、936へ書き込み、周辺メモリ状況表632を更新する。
Here, the storage area 93 1, 93 8, because it uses the application A currently running, the initial data of the application B can be written only in the memory region 93 2, 93 6. Therefore, the
また、管理部7は、構成状況表68を参照し、現在実行中のアプリケーションAの構成情報が書き込まれていない命令メモリ94のブロック8〜15に、構成情報プール67から読み出したアプリケーションBの構成情報を書き込む。
In addition, the
このとき、図10cに示すように、周辺メモリ状況表632には、周辺メモリ93の記憶領域931、933、934、937、938をアプリケーションAで使用し、記憶領域932、936をアプリケーションBで使用していることが示されている。また、アプリケーションBでは構成情報を保持するのに6ブロックの命令メモリ94を使用するため、構成状況表68には命令メモリ94のブロック0〜7にアプリケーションAの構成情報が格納され、ブロック8〜13にアプリケーションBの構成情報が格納されていることが示されている。
At this time, as shown in FIG. 10c, the peripheral memory state table 632, using the storage area 93 1 in the peripheral memory 93, 93 3, 93 4, 93 7, 93 8 with application A, the storage area 93 2, it has been shown that using 93 6 in an application B. Further, since the application B uses the six blocks of
アプリケーションAの処理が終了すると、管理部7は、アプリケーションAの実行中に書き込めなかったアプリケーションBの初期データを記憶領域931、938に書き込む。管理部7は、まず周辺メモリ状況表632を参照することで記憶領域931、938へ初期データの書き込みが必要であり、周辺メモリ要求表631を参照することで、記憶領域938のデータが退避させる中間データであると判定する。そのため、管理部7は、記憶領域938で保持しているデータを中間データプール65の第1の記憶領域へ書き出し、中間データ管理表66にアプリケーションAの中間データを中間データプール65の第1の記憶領域へ退避させたことを示す情報を書き込む。その後、管理部7は、記憶領域931、938にアプリケーションBの初期データを書き込む。
When the processing of the application A is completed, the
管理部7は、アプリケーションBの全ての初期データの書き込みが完了すると、DRP9にアプリケーションBの処理を開始させる。このとき、図10dに示すように、中間データプール65には周辺メモリ93の記憶領域938で保持していたアプリケーションAの中間データ(A−8)が格納され、中間データ管理表66には、該アプリケーションAの中間データ(A−8)の退避先(中間データプール65の第1の記憶領域)が示されている。
When the writing of all the initial data of the application B is completed, the
次に、アプリケーションBの実行中にアプリケーションAの実行要求を再度受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションAの初期データが周辺メモリ93の記憶領域931、933、934、937、938に書き込み可能であるか否かを判定する。
Next, when the execution request of the application A is received again during the execution of the application B, the
ここで、記憶領域931、938は現在実行中のアプリケーションBで使用しているため、記憶領域933、934、937のみアプリケーションAの初期データの書き込みが可能である。但し、周辺メモリ状況表632を参照すると、記憶領域933、934、937には、前回アプリケーションAを実行したときの初期データが残っているため、再度書き込む必要が無い。また、アプリケーションAの構成情報も命令メモリ94のブロック0〜7に残っているため、構成情報の書き換えも不要である。そのため、管理部7は、ここでは周辺メモリ93や命令メモリ94の書き換えを実行しない。
Here, the storage area 93 1, 93 8 because it uses the application B that is currently running, it is possible to write the initial data in the storage area 93 3, 93 4, 93 7 only application A. However, referring to peripheral memory status table 632, the storage area 93 3, 93 4, 93 7, since there is still the initial data when executing the last application A, there is no need to write again. Further, since the configuration information of the application A remains in the
アプリケーションBの処理が終了すると、管理部7は、アプリケーションBの実行中に書き込めなかったアプリケーションAの初期データを記憶領域931、938に書き込む。このとき、管理部7は、中間データ管理表66を参照することで、中間データプール65の第1の記憶領域に退避している中間データ(A−8)を記憶領域938へ書き込み、記憶領域931に初期データプール62から読み出した初期データを書き込む。また、管理部7は、中間データプール65の第1の記憶領域を無効化する。無効化は、中間データ(A−8)を中間データプール65へ退避させたことを示す情報を中間データ管理表66から削除することで実現する。
When the processing of the application B is completed, the
上述したように、アプリケーションAの構成情報は命令メモリ94のブロック0〜7に残っているため、管理部7は、周辺メモリ93に対するアプリケーションAの初期データの書き込みが完了した後、DRP9にアプリケーションAの処理を開始させる。このとき、図10eに示すように、中間データ管理表66ではアプリケーションAの中間データの退避先を示す情報が削除されている。また、中間データプール65の第1の記憶領域にはアプリケーションAの中間データ(A−8)が残っているが、中間データ管理表66から該中間データの退避先を示す情報が削除されているため、該中間データの読み出し処理は無効化されている。
As described above, since the configuration information of the application A remains in the
次に、アプリケーションAの実行中にアプリケーションCの実行要求を受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションCの初期データが周辺メモリ93の記憶領域931、932、935、936、937に書き込み可能であるか否かを判定する。
Next, when an execution request for application C is received during execution of application A,
ここで、記憶領域931、937は、現在実行中のアプリケーションAで使用しているため、記憶領域932、935、936にのみアプリケーションCの初期データが書き込み可能である。したがって、管理部7は、初期データプール62から読み出したアプリケーションCの初期データを記憶領域935、936へ書き込み、周辺メモリ状況表632を更新する。
Here, the storage area 93 1, 93 7, because it uses the application A currently running, initial data storage area 93 2, 93 5, 93 6 only application C is writable. Therefore, the
また、管理部7は、構成状況表68を参照し、現在実行中のアプリケーションAの構成情報が書き込まれていない命令メモリ94のブロック8〜15に、構成情報プール67から読み出したアプリケーションCの構成情報を書き込む。但し、構成情報プール67を参照すると、アプリケーションCは構成情報の保持に12ブロックの命令メモリ94が必要である。したがって、管理部7は、アプリケーションCの構成情報のうち、命令メモリ94の空きブロックに格納可能な構成情報C0〜C7のみを構成情報プール67から読み出して命令メモリ94のブロック8〜15に書き込む。このとき、図10fに示すように、周辺メモリ状況表632には、周辺メモリ93の記憶領域931、933、934、937、938をアプリケーションAで使用し、記憶領域932、935、936をアプリケーションCで使用していることが示されている。また、構成状況表68には、命令メモリ94のブロック0〜7でアプリケーションAの構成情報を保持し、命令メモリ94のブロック8〜15でアプリケーションCの構成情報を保持していることが示されている。
In addition, the
アプリケーションAの処理が終了すると、管理部7は、アプリケーションAの実行中に書き込めなかったアプリケーションCの初期データを記憶領域931、937へ書き込む。管理部7は、まず周辺メモリ状況表632を参照することで記憶領域931、937へ初期データの書き込みが必要であり、周辺メモリ要求表631を参照することで、記憶領域937で保持されたアプリケーションAの中間データの退避が必要であることが分かる。そのため、管理部7は、記憶領域937で保持しているデータを中間データプール65の第1の記憶領域へ書き出し、中間データ管理表66に記憶領域937から中間データプール65へアプリケーションAの中間データの退避済みを示す情報を書き込む。その後、管理部7は、記憶領域931、937にアプリケーションCの初期データを書き込む。
When the processing of the application A is completed, the
また、管理部7は、構成状況表68を参照し、アプリケーションAの実行中に書き込めなかったアプリケーションCの構成情報C9〜C11を構成情報プール67から読み出し、例えばアプリケーションAで使用していた命令メモリ94のブロック0〜3へ書き込む。
Further, the
アプリケーションCの全ての構成情報の書き込みが完了すると、管理部7は、DRP9にアプリケーションCの処理を開始させる。このとき、図10gに示すように、中間データプール65には記憶領域937で保持していたアプリケーションAの中間データ(A−7)が格納され、中間データ管理表66には、該アプリケーションAの中間データ(A−7)の退避先(中間データプール65の第1の記憶領域)が示されている。また、構成状況表68には、命令メモリ94のブロック4〜7でアプリケーションAの構成情報が保持され、命令メモリ94のブロック8〜15及び0〜3でアプリケーションCの構成情報を保持していることが示されている。
When the writing of all the configuration information of the application C is completed, the
次に、アプリケーションCの実行中にアプリケーションAの実行要求を再度受信すると、管理部7は、周辺メモリ要求表631及び周辺メモリ状況表632を参照し、アプリケーションAの初期データが周辺メモリ93の記憶領域931、933、934、937、938に書き込み可能であるか否かを判定する。
Next, when the execution request of the application A is received again during the execution of the application C, the
ここでは、記憶領域931、937を現在実行中のアプリケーションCで使用しているため、記憶領域933、934、937にのみアプリケーションAの初期データの書き込みが可能である。但し、周辺メモリ状況表632を参照すると、記憶領域933、934、937には、前回アプリケーションAを実行したときの初期データが残っているため、再度書き込む必要が無い。また、命令メモリ94のブロック4〜7にはアプリケーションAの構成情報A4〜A7が残っており、他のブロックはアプリケーションCで使用しているため、管理部7は、ここでは周辺メモリ93や命令メモリ94の書き換えを実行しない。
Here, due to the use of the storage area 93 1, 93 7 the application C currently running, it is possible to write the initial data in the storage area 93 3, 93 4, 93 7 only application A. However, referring to peripheral memory status table 632, the storage area 93 3, 93 4, 93 7, since there is still the initial data when executing the last application A, there is no need to write again. In addition, since the configuration information A4 to A7 of the application A remains in the
アプリケーションCの処理が終了すると、管理部7は、アプリケーションCの実行中に書き込めなかったアプリケーションAの初期データを記憶領域931、937に書き込む。このとき、管理部7は、中間データ管理表66を参照することで、中間データプール65の第1の記憶領域に退避している中間データ(A−7)を周辺メモリ93の記憶領域937へ書き込み、記憶領域931に初期データプール62から読み出した初期データを書き込む。また、管理部7は、中間データプール65の第1の記憶領域を無効化する。無効化は、中間データプール65への退避を示す情報を中間データ管理表66から削除することで実現する。
When the processing of the application C is completed, the
また、管理部7は、アプリケーションCの実行中に書き込めなかったアプリケーションAの構成情報A0〜A3を命令メモリ94のブロック0〜3に書き込み、アプリケーションAの全ての構成情報の書き込みが完了した後、DRP9にアプリケーションAの処理を開始させる。このとき、図10hに示すように、中間データ管理表66ではアプリケーションAの中間データの退避先を示す情報が削除されている。また、中間データプール65の第1の記憶領域にはアプリケーションAの中間データ(A−7)が残っているが、中間データ管理表66から該中間データの退避先を示す情報が削除されているため、該中間データの読み出し処理は無効化されている。また、構成状況表68には、命令メモリ94のブロック0〜7でアプリケーションAの構成情報が保持され、命令メモリ94のブロック8〜15でアプリケーションCの構成情報が保持されていることが示されている。
Further, the
以下、同様にして、次に実行するアプリケーションの初期データや中間データのうち、現在実行中のアプリケーションで使用していない周辺メモリ93へ書き込む初期データや中間データは、現在実行中のアプリケーションの終了を待つことなく書き込み、現在実行中のアプリケーションで使用している周辺メモリ93へ書き込む初期データや中間データは、現在実行中のアプリケーションの終了を待って書き込む。また、その際、現在実行中のアプリケーションで使用している周辺メモリ93内の中間データの退避が必要な場合は、該中間データを中間データプール65へ書き出し、中間データ管理表66に退避後の中間データが格納された領域を記憶させる。
In the same manner, among the initial data and intermediate data of the application to be executed next, the initial data and intermediate data to be written to the peripheral memory 93 not used by the currently executing application indicate that the currently executing application is terminated. The initial data and intermediate data to be written without waiting and written to the peripheral memory 93 used by the currently executing application are written after the currently executing application is finished. At this time, if it is necessary to save intermediate data in the peripheral memory 93 used by the currently executing application, the intermediate data is written to the
さらに、次に実行するアプリケーションの構成情報のうち、現在実行中のアプリケーションで使用していない命令メモリ94のブロックには、現在実行中のアプリケーションの終了を待つことなく次に実行するアプリケーションの構成情報を書き込み、現在実行中のアプリケーションで使用している命令メモリ94のブロックには、現在実行中のアプリケーションの終了を待って次に実行するアプリケーションの構成情報を書き込む。
Further, of the configuration information of the application to be executed next, the block of the
本実施例のメモリデバイス管理装置によれば、DRP9が備える命令メモリ94や周辺メモリ93のうち、現在実行中のアプリケーションで使用していない記憶領域(ブロック)に対して、次に実行するアプリケーションの構成情報や初期データを先行して書き込むため、アプリケーションの切り替え時に、構成情報や初期データの書き換えに要する時間を短縮できる。
According to the memory device management apparatus of the present embodiment, the application to be executed next is stored in a storage area (block) that is not used by the currently executing application among the
また、構成情報を用いて初期データや中間データを周辺メモリ93に読み込むための回路を作成する必要がないため、DRP9にアプリケーション以外の処理を実行させる必要がなくなる。
In addition, since it is not necessary to create a circuit for reading the initial data and intermediate data into the peripheral memory 93 using the configuration information, it is not necessary for the
したがって、再構成デバイスの全処理時間における、アプリケーションの処理時間の割合を増大させることができる。したがって、本実施例のメモリデバイス管理装置を用いることで、再構成デバイスの処理性能(スループット)が向上する。 Therefore, the ratio of the application processing time to the total processing time of the reconfigurable device can be increased. Therefore, by using the memory device management apparatus of this embodiment, the processing performance (throughput) of the reconfigurable device is improved.
1、6 管理データ記憶部
2、7 管理部
3 第1の再構成可能ハードウェア
4 第2の再構成可能ハードウェア
5 第3の再構成可能ハードウェア
8 FPGA
9 DRP
11、61、67 構成情報プール
12、62 初期データプール
13 記憶部管理部
14、68 構成状況表
15、65 中間データプール
16、66 中間データ管理表
31、41、51 制御部
32、42、52 演算部
33、43、53 処理データ記憶部
34、44、54 構成情報記憶部
63 周辺メモリ管理部
64 構成状況レジスタ
81 ゲートアレイ
83、93 周辺メモリ
91 PE群
92 STC
94 命令メモリ
131 記憶部要求表
132 記憶部状況表
631 周辺メモリ要求表
632 周辺メモリ状況表
DESCRIPTION OF
9 DRP
11, 61, 67
94
Claims (8)
前記再構成デバイスで実行するアプリケーション毎の構成情報が格納される構成情報プール、前記アプリケーションの処理対象となるデータ及び該アプリケーションで必要なデータを含む初期データが格納される初期データプール、前記アプリケーションの実行時に該アプリケーションの前記初期データの保持に用いる前記記憶部の領域を示す記憶部要求表、並びに前記記憶部を使用しているアプリケーションを示す記憶部状況表を備えた管理データ記憶部を備えておき、
前記アプリケーションの実行要求を受信すると、前記構成情報プールから該アプリケーションの構成情報を読み出して前記記憶部へ書き込み、
前記記憶部要求表及び前記記憶部状況表を参照して、前記記憶部に無い該アプリケーションの前記初期データを前記初期データプールから読み出して前記記憶部へ書き込むメモリデバイス管理方法。 A memory device management method for managing a storage unit included in a reconfigurable device,
A configuration information pool storing configuration information for each application executed by the reconfigurable device, an initial data pool storing initial data including data to be processed by the application and data necessary for the application, A management data storage unit including a storage unit request table indicating an area of the storage unit used for holding the initial data of the application at the time of execution, and a storage unit status table indicating an application using the storage unit; Every
Upon receiving the application execution request, the application configuration information is read from the configuration information pool and written to the storage unit,
A memory device management method that reads the initial data of the application that is not in the storage unit from the initial data pool and writes it in the storage unit with reference to the storage unit request table and the storage unit status table.
前記アプリケーションによる処理途中のデータである中間データが格納される中間データプール、前記中間データが格納された前記中間データプールの記憶領域を示す中間データ管理表を備え、前記記憶部要求表に前記中間データとして退避や再書き込みが必要であるか否かを示す情報を含み、
前記前記記憶部要求表を参照して、前記アプリケーションの処理時に前記中間データを前記中間データプールに退避させ、該アプリケーションの再実行時に前記記憶部要求表及び前記中間データ管理表を参照して前記中間データプールから所要の中間データを前記記憶部へ書き込む請求項1または2記載のメモリデバイス管理方法。 In the management data storage unit,
An intermediate data pool that stores intermediate data that is being processed by the application; an intermediate data management table that indicates a storage area of the intermediate data pool in which the intermediate data is stored; and the storage unit request table includes the intermediate data management table Including information indicating whether saving or rewriting is required as data,
Referring to the storage unit request table, the intermediate data is saved in the intermediate data pool when the application is processed, and the storage unit request table and the intermediate data management table are referred to when the application is re-executed. 3. The memory device management method according to claim 1, wherein required intermediate data is written from the intermediate data pool to the storage unit.
前記記憶部で保持している前記アプリケーションの構成情報を示す構成状況表を備え、
前記構成状況表を参照して、実行中のアプリケーションで使用していない前記記憶部の領域に、次に実行するアプリケーションの構成情報を書き込む請求項1から3のいずれか1項記載のメモリデバイス管理方法。 In the management data storage unit,
Comprising a configuration status table indicating configuration information of the application held in the storage unit;
The memory device management according to any one of claims 1 to 3, wherein configuration information of an application to be executed next is written in an area of the storage unit that is not used by an application being executed with reference to the configuration status table. Method.
前記再構成デバイスで実行するアプリケーション毎の構成情報が格納される構成情報プール、前記アプリケーションの処理対象となるデータ及び該アプリケーションで必要なデータを含む初期データが格納される初期データプール、前記アプリケーションの実行時に該アプリケーションの前記初期データの保持に用いる前記記憶部の領域を示す記憶部要求表、並びに前記記憶部を使用しているアプリケーションを示す記憶部状況表を備えた管理データ記憶部と、
前記アプリケーションの実行要求を受信すると、前記構成情報プールから該アプリケーションの構成情報を読み出して前記記憶部へ書き込み、前記記憶部要求表及び前記記憶部状況表を参照して、前記記憶部に無い該アプリケーションの前記初期データを前記初期データプールから読み出して前記記憶部へ書き込む管理部と、
を有するメモリデバイス管理装置。 A memory device management apparatus for managing a storage unit included in a reconfigurable device,
A configuration information pool storing configuration information for each application executed by the reconfigurable device, an initial data pool storing initial data including data to be processed by the application and data necessary for the application, A management data storage unit comprising a storage unit request table indicating an area of the storage unit used for holding the initial data of the application at the time of execution, and a storage unit status table indicating an application using the storage unit;
When receiving the execution request of the application, the configuration information of the application is read from the configuration information pool and written to the storage unit, and the storage unit request table and the storage unit status table are referred to, and the storage unit is not in the storage unit. A management unit that reads the initial data of the application from the initial data pool and writes the initial data to the storage unit;
A memory device management apparatus.
前記記憶部要求表及び前記記憶部状況表を参照して、実行中のアプリケーションで使用していない前記記憶部の領域に、次に実行するアプリケーションの前記初期データを書き込む請求項5記載のメモリデバイス管理装置。 The management unit
6. The memory device according to claim 5, wherein the initial data of the application to be executed next is written to an area of the storage unit that is not used by a running application with reference to the storage unit request table and the storage unit status table. Management device.
前記アプリケーションによる処理途中のデータである中間データが格納される中間データプール、前記中間データが格納された前記中間データプールの記憶領域を示す中間データ管理表を備え、前記記憶部要求表に前記中間データとして退避や再書き込みが必要であるか否かを示す情報を含み、
前記管理部は、
前記前記記憶部要求表を参照して、前記アプリケーションの処理時に前記中間データを前記中間データプールに退避させ、該アプリケーションの再実行時に前記記憶部要求表及び前記中間データ管理表を参照して前記中間データプールから所要の中間データを前記記憶部へ書き込む請求項5または6記載のメモリデバイス管理装置。 The management data storage unit
An intermediate data pool that stores intermediate data that is being processed by the application; an intermediate data management table that indicates a storage area of the intermediate data pool in which the intermediate data is stored; and the storage unit request table includes the intermediate data management table Including information indicating whether saving or rewriting is required as data,
The management unit
Referring to the storage unit request table, the intermediate data is saved in the intermediate data pool when the application is processed, and the storage unit request table and the intermediate data management table are referred to when the application is re-executed. 7. The memory device management apparatus according to claim 5, wherein required intermediate data is written from the intermediate data pool to the storage unit.
前記記憶部で保持している前記アプリケーションの構成情報を示す構成状況表を備え、
前記管理部は、
前記構成状況表を参照して、実行中のアプリケーションで使用していない前記記憶部の領域に、次に実行するアプリケーションの構成情報を書き込む請求項5から7のいずれか1項記載のメモリデバイス管理装置。 The management data storage unit
Comprising a configuration status table indicating configuration information of the application held in the storage unit;
The management unit
8. The memory device management according to claim 5, wherein configuration information of an application to be executed next is written in an area of the storage unit that is not used by an application being executed with reference to the configuration status table. apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010040151A JP2011175535A (en) | 2010-02-25 | 2010-02-25 | Method and apparatus for managing memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010040151A JP2011175535A (en) | 2010-02-25 | 2010-02-25 | Method and apparatus for managing memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011175535A true JP2011175535A (en) | 2011-09-08 |
Family
ID=44688325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010040151A Pending JP2011175535A (en) | 2010-02-25 | 2010-02-25 | Method and apparatus for managing memory device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011175535A (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003347930A (en) * | 2002-05-28 | 2003-12-05 | Konica Minolta Holdings Inc | Programmable logic circuit and computer system, and cache method |
JP2008152470A (en) * | 2006-12-15 | 2008-07-03 | Hitachi Ltd | Data processing system and semiconductor integrated circuit |
-
2010
- 2010-02-25 JP JP2010040151A patent/JP2011175535A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003347930A (en) * | 2002-05-28 | 2003-12-05 | Konica Minolta Holdings Inc | Programmable logic circuit and computer system, and cache method |
JP2008152470A (en) * | 2006-12-15 | 2008-07-03 | Hitachi Ltd | Data processing system and semiconductor integrated circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI590049B (en) | Memory device and operating method of same | |
CN103034617B (en) | For realizing buffer structure and the management method of the storage of reconfigurable system configuration information | |
US9244883B2 (en) | Reconfigurable processor and method of reconfiguring the same | |
CN100533428C (en) | Semiconductor device | |
JP2015184799A (en) | cache memory and processor system | |
US20110035562A1 (en) | Providing mirroring write data | |
JPWO2009063584A1 (en) | Programmable device, device control method, and information processing system | |
JP5776688B2 (en) | Information processing apparatus and task switching method | |
US10289787B2 (en) | Control program and control method for programmable logic device and information processing apparatus including the same | |
CN110781016B (en) | Data processing method, device, equipment and medium | |
KR20140014299A (en) | Shiftable memory | |
JP2006287675A (en) | Semiconductor integrated circuit | |
KR20170141205A (en) | A central processing unit having a DSP engine and an enhanced context switch function unit | |
JP2012190359A (en) | Cache system and processing device | |
US10146483B2 (en) | Memory system | |
JP2010002986A (en) | Reconfigurable electronic circuit unit | |
CN105389134A (en) | Flash memory interface control method and apparatus | |
JP2007272671A (en) | Motion composition device, debugging device, write device and circuit design support system and method | |
CN103907108B (en) | Share method, controller and the system of flash memory | |
US20130132659A1 (en) | Microcontroller and method of controlling microcontroller | |
JP2009175960A (en) | Virtual multiprocessor system | |
JP2008090455A (en) | Multiprocessor signal processor | |
JP2011175535A (en) | Method and apparatus for managing memory device | |
JP6757717B2 (en) | Memory management in multiprocessor systems | |
JP2008060714A (en) | Information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131023 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140311 |