JP2000091435A - Electronic data processing system - Google Patents

Electronic data processing system

Info

Publication number
JP2000091435A
JP2000091435A JP10258064A JP25806498A JP2000091435A JP 2000091435 A JP2000091435 A JP 2000091435A JP 10258064 A JP10258064 A JP 10258064A JP 25806498 A JP25806498 A JP 25806498A JP 2000091435 A JP2000091435 A JP 2000091435A
Authority
JP
Japan
Prior art keywords
circuit
logic
information
logic cell
programmable logic
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
JP10258064A
Other languages
Japanese (ja)
Other versions
JP3636277B2 (en
Inventor
Hiroyuki Miyake
弘之 三宅
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP25806498A priority Critical patent/JP3636277B2/en
Publication of JP2000091435A publication Critical patent/JP2000091435A/en
Application granted granted Critical
Publication of JP3636277B2 publication Critical patent/JP3636277B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an electronic data processing system that enables efficient processing by keeping track of the state of logical cells which is used on a programmable logic circuit. SOLUTION: This electronic data processing system executes a series of processings described by a program, at least part of which can be processed by programmable logic circuits, and has a plurality of logic cells as programmable logic circuits. By configuring circuit information in logic cells in the specified area from among plurality of cells, new logic circuits are provided in the specified area. There is provided a logic cell state memory 30, That stores information reflecting each state of a plurality of logic cells in the programmable logic circuit. From among the information stored in the logic cell state memory 30, information STD which reflects the state of the logic cells configured is updated, each time new circuit information is configured.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、少なくとも処理
の一部分を、回路構成を部分的に再構成できるプログラ
マブル論理回路で処理することが可能である情報処理シ
ステムに関するものであり、特に、プログラマブル論理
回路の有効な活用方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing system capable of processing at least a part of a processing by a programmable logic circuit whose circuit configuration can be partially reconfigured, and more particularly to a programmable logic circuit. About the effective use of

【0002】[0002]

【従来の技術】デジタル論理回路製品、特に特定用途向
け集積回路(ASIC)の分野において、製品の開発期
間を短縮するために、フィールドプログラマブルゲート
アレイ(FPGA)やプログラマブルロジックデバイス
(PLD)などで構成されたプログラマブル論理回路が
広く使われている。
2. Description of the Related Art In the field of digital logic circuit products, especially application-specific integrated circuits (ASICs), in order to shorten the development period of the products, they are composed of a field programmable gate array (FPGA) or a programmable logic device (PLD). Programmable logic circuits are widely used.

【0003】これらのプログラマブル論理回路は、論理
回路を記述する回路情報をこれらに読み込ませること
で、内部の論理回路と論理回路間の結線を自由に構成す
ることができる。このため、プログラマブル論理回路を
用いることで、従来は回路設計の終了後に数週間から数
か月を必要とした集積回路の作製時間が不要になるとい
うメリットがある。
[0003] These programmable logic circuits can freely configure internal logic circuits and connections between the logic circuits by reading circuit information describing the logic circuits. For this reason, the use of the programmable logic circuit has an advantage that the time required to manufacture an integrated circuit, which conventionally required several weeks to several months after the completion of circuit design, is not required.

【0004】特に、米国特許第4,700,187号の
発明のように論理セルの機能を決めるスイッチの入力に
SRAMなどを用いて電気的に再構成可能なプログラマ
ブル論理回路は、一度作製した回路を必要に応じて自由
に何度でも変更できるという利点があり、プログラマブ
ル論理回路は、ますます広く使われるようになってきて
いる。
In particular, a programmable logic circuit which can be electrically reconfigured by using an SRAM or the like as an input of a switch for determining the function of a logic cell as in the invention of US Pat. No. 4,700,187 is a circuit once manufactured. The advantage is that programmable logic circuits can be freely changed as many times as necessary, and programmable logic circuits are becoming more and more widely used.

【0005】ところで、最近の論理回路は複雑さが増
し、一つのプログラマブル論理回路では実現できない規
模にまで回路規模が大きくなっている。この問題を解決
するための一つの方法は、複数個のプログラマブル論理
回路を接続して使用することである。
[0005] Recently, logic circuits have increased in complexity, and the circuit scale has increased to a scale that cannot be realized by a single programmable logic circuit. One method for solving this problem is to connect and use a plurality of programmable logic circuits.

【0006】しかしながら、プログラマブル論理回路の
入出力接続の数が制限されているので、この方法ですべ
ての論理回路を実現することは困難である。また、たと
え実現できたとしても、使用するプログラマブル論理回
路数の増加に伴い、消費電力が増加するという新たな欠
点を引き起こす。
However, since the number of input / output connections of the programmable logic circuit is limited, it is difficult to realize all the logic circuits by this method. Further, even if it can be realized, a new disadvantage that power consumption increases with the increase in the number of programmable logic circuits to be used is caused.

【0007】別の解決方法として、異なる時間に異なる
論理回路を実現するために、プログラマブル論理回路を
処理の途中で再度構成し直すことが提案されている。こ
の方法は、携帯情報端末のように、装置が小型であるた
め、内蔵できる回路規模に制約がある場合でも、様々な
処理が比較的高速に行えるという利点がある。
As another solution, it has been proposed to reconfigure a programmable logic circuit in the middle of processing in order to realize different logic circuits at different times. This method has an advantage that various processes can be performed at a relatively high speed even when the size of a built-in circuit is limited because the device is small like a portable information terminal.

【0008】しかし、この場合は、プログラマブル論理
回路に回路を再構成する時に回路情報を再度読み込ませ
るための余分な時間がかかるという欠点がある。さら
に、処理の途中で再構成することは、処理を一時中断
し、その時のデータをプログラマブル論理回路の外部の
記憶装置に記憶させ、新たな回路情報を読み込んで再構
成し、再構成前のデータと再構成に伴う新しいデータを
入力させるという余分な処理が必要になる。
However, in this case, there is a disadvantage that extra time is required for rereading the circuit information when reconfiguring the circuit in the programmable logic circuit. Furthermore, reconfiguring in the middle of the process means that the process is temporarily suspended, the data at that time is stored in a storage device outside the programmable logic circuit, new circuit information is read and reconfigured, and the data before the reconfiguration is performed. And extra processing of inputting new data accompanying the reconstruction is required.

【0009】この問題を解決するために、米国アトメル
社の「CONFIGURABLELOGIC」という名
のデータブックに記載されているプログラマブル論理回
路では、再構成を行う時にデータを記憶するためのデー
タ記憶装置(SRAM)を有し、回路の動作中でも外部
の記憶装置から回路情報の一部を読み込んで部分的に再
構成を行うことで再構成をするための時間を最小に留め
ている。
In order to solve this problem, a programmable logic circuit described in a data book named "CONFIGURABLE LOGIC" by Atmel, USA, has a data storage device (SRAM) for storing data when performing reconfiguration. During the operation of the circuit, a part of the circuit information is read from the external storage device and partially reconfigured to minimize the time required for the reconfiguration.

【0010】[0010]

【発明が解決しようとする課題】ところが、このような
部分的に再構成可能なプログラマブル論理回路を用い
て、異なる複数の論理回路を、異なる時間に、前記プロ
グラマブル論理回路上に構成する場合、従来は、プログ
ラマブル論理回路を利用するアプリケーションソフト側
で、プログラマブル論理回路上で回路として使用されて
いる論理セルの位置が不明であったため、再構成する回
路は、例えば、プログラマブル論理回路の所定の位置を
基準に構成する必要があり、複数の回路はプログラマブ
ル論理回路上の同一部分に重ねて構成されるようにな
る。
However, when a plurality of different logic circuits are formed on the programmable logic circuit at different times by using such a partially reconfigurable programmable logic circuit, a conventional technique has been proposed. In the application software using the programmable logic circuit, the position of the logic cell used as a circuit on the programmable logic circuit was unknown, so the circuit to be reconfigured, for example, It is necessary to configure as a reference, and a plurality of circuits are configured to be overlapped on the same part on the programmable logic circuit.

【0011】例えば、図14に示すように、2つの回路
A、回路Bを、回路A→回路B→回路Aの順にプログラ
マブル論理回路上に構成して、処理を行う場合を考え
る。この場合、回路Aは、図14(a)に示すように、
プログラマブル論理回路の回路構成領域FLの例えば左
下隅を基準にしたエリアとして、プログラマブル論理回
路上に構成される。そして、この回路Aでの処理が終了
すると、次は、回路Bが、図14(b)に示すように、
同じく回路構成領域FLの左下隅を基準にしたエリアと
して、プログラマブル論理回路上に構成される。最後
に、回路Aが、図14(c)に示すように、再び、回路
構成領域FLの左下隅を基準にしたエリアとして、プロ
グラマブル論理回路上に構成される。
For example, as shown in FIG. 14, a case is considered in which two circuits A and B are configured on a programmable logic circuit in the order of circuit A → circuit B → circuit A to perform processing. In this case, the circuit A includes, as shown in FIG.
An area based on, for example, the lower left corner of the circuit configuration area FL of the programmable logic circuit is configured on the programmable logic circuit. Then, when the processing in the circuit A is completed, the circuit B then performs, as shown in FIG.
Similarly, it is configured on the programmable logic circuit as an area based on the lower left corner of the circuit configuration area FL. Finally, as shown in FIG. 14C, the circuit A is again configured on the programmable logic circuit as an area based on the lower left corner of the circuit configuration area FL.

【0012】ところで、プログラマブル論理回路に再構
成する回路には規模の大小があり、再構成する回路の規
模が比較的小さく、プログラマブル論理回路上に複数の
回路を同時に構成することが可能である場合もある。例
えば、前述の例の場合には、回路Aと、図Bとは、図1
4(d)に示すように、プログラマブル論理回路の回路
構成領域FL上に同時に構成可能なものである。
The size of a circuit to be reconfigured into a programmable logic circuit is large or small, and the size of the circuit to be reconfigured is relatively small, so that a plurality of circuits can be simultaneously formed on the programmable logic circuit. There is also. For example, in the case of the above example, the circuit A and FIG.
As shown in FIG. 4 (d), they can be simultaneously configured on the circuit configuration area FL of the programmable logic circuit.

【0013】このように複数の回路が同時にプログラマ
ブル論理回路上に構成可能な場合であって、しかも、前
述の例の場合の回路Aのように、一度使用した回路を、
後で、もう一度使用するような場合には、図14(a)
のように、回路Aをプログラマブル論理回路上に構成し
た後、図14(d)に示すように、回路Bを回路構成領
域10のうちの空きエリアに再構成することができれ
ば、回路Aは、そのまま、プログラマブル論理回路上に
残るので、回路Bでの処理の後、回路Aを再び再構成す
ることなく、回路Aを用いた処理を実行することができ
る。
In this case, a plurality of circuits can be simultaneously formed on a programmable logic circuit, and a circuit used once, such as the circuit A in the above-described example, is
FIG. 14 (a) shows a case of using again later.
As shown in FIG. 14D, after the circuit A is configured on the programmable logic circuit, if the circuit B can be reconfigured in an empty area of the circuit configuration area 10 as shown in FIG. Since it remains on the programmable logic circuit as it is, after the processing in the circuit B, the processing using the circuit A can be executed without reconfiguring the circuit A again.

【0014】このようにすれば、回路Bの後の回路Aの
再構成の時間を節約できるので、全体としての処理時間
を短くすることができ、処理を効率的に行うことができ
る。
In this manner, the time required for reconfiguring the circuit A after the circuit B can be saved, so that the overall processing time can be shortened and the processing can be performed efficiently.

【0015】しかしながら、従来の情報処理システムで
は、前述したように、プログラマブル論理回路を利用し
て処理を実行するアプリケーションソフト側では、プロ
グラマブル論理回路上で回路として使用されている論理
セルの位置が不明であるため、図14(d)に示すよう
な再構成を行うことができなかった。
However, in the conventional information processing system, as described above, the position of a logic cell used as a circuit on the programmable logic circuit is unknown on the application software side that executes processing using the programmable logic circuit. Therefore, the reconstruction as shown in FIG. 14D could not be performed.

【0016】この発明は、以上の点にかんがみ、プログ
ラマブル論理回路上の論理セルの使用状況を把握できる
ようにして、効率的な処理ができるようにした情報処理
システムを提供することを目的とする。
SUMMARY OF THE INVENTION In view of the above, it is an object of the present invention to provide an information processing system capable of ascertaining the use state of a logic cell on a programmable logic circuit and enabling efficient processing. .

【0017】[0017]

【課題を解決するための手段】上記課題を解決するた
め、請求項1の発明による情報処理システムは、プログ
ラムで処理を記述した一連の処理を実行するものであ
り、前記一連の処理の少なくとも一部分が、プログラマ
ブル論理回路で処理可能である情報処理システムにおい
て、前記プログラマブル論理回路として、複数個の論理
セルを有し、この複数個の論理セルのうちの、指定され
たエリアの論理セルに回路情報がコンフィギュレーショ
ンされることにより、前記指定されたエリアに新たな論
理回路を実装するものを備えるとともに、前記プログラ
マブル論理回路の前記複数個の論理セルのそれぞれの状
態を反映する情報を記憶する論理セル状態メモリを備
え、新たな回路情報がコンフィギュレーションされるご
とに、前記論理セル状態メモリの記憶情報のうちの、当
該コンフィギュレーションされた論理セルの状態を反映
する情報を更新することを特徴とする。
According to a first aspect of the present invention, there is provided an information processing system for executing a series of processes in which a program is described, and at least a part of the series of processes. However, in an information processing system which can be processed by a programmable logic circuit, the programmable logic circuit has a plurality of logic cells, and among the plurality of logic cells, a logic cell in a designated area is provided with circuit information. Is configured to implement a new logic circuit in the designated area, and stores information reflecting the state of each of the plurality of logic cells of the programmable logic circuit. A state memory, wherein each time new circuit information is configured, the logic cell state Of the stored information in the memory, and updates the information reflecting the state of the configuration logical cell.

【0018】また、請求項2の発明は、請求項1におい
て、前記論理セル状態メモリの前記論理セルの状態を反
映する情報は、当該論理セルの回路状態は、何回目のコ
ンフィギュレーションで構成されたかのコンフィギュレ
ーション回数を含むものであることを特徴とする。
According to a second aspect of the present invention, in the first aspect, the information reflecting the state of the logic cell in the logic cell state memory is such that the circuit state of the logic cell is constituted by any number of configurations. It is characterized by including the maximum number of configuration times.

【0019】また、請求項3の発明は、請求項1または
請求項2の情報処理システムにおいて、前記論理セル状
態メモリの前記論理セルの状態を反映する情報は、当該
論理セルを含む回路が、前記プログラマブル論理回路上
で動作可能であるか否かを示す情報を含むことを特徴と
する。
According to a third aspect of the present invention, in the information processing system according to the first or second aspect, the information reflecting the state of the logic cell in the logic cell state memory includes a circuit including the logic cell, It is characterized by including information indicating whether it is operable on the programmable logic circuit.

【0020】[0020]

【作用】上述の構成の請求項1の発明によれば、プログ
ラマブル論理回路の複数個の論理セルのそれぞれの状態
を反映する情報を記憶する論理セル状態メモリを備えて
おり、この論理セル状態メモリの記憶内容により、プロ
グラマブル論理回路上の空き領域を容易に把握すること
ができる。したがって、空き領域が、再構成しようとす
る回路よりも大きいときには、その空き領域に新たな回
路を再構成することができ、以前にプログラマブル論理
回路に構成されていた回路資源を有効に活用する効率的
な処理が期待できる。
According to the first aspect of the present invention, there is provided a logic cell state memory for storing information reflecting respective states of a plurality of logic cells of a programmable logic circuit. , An empty area on the programmable logic circuit can be easily grasped. Therefore, when the vacant area is larger than the circuit to be reconfigured, a new circuit can be reconfigured in the vacant area, and the efficiency of effectively utilizing the circuit resources previously configured in the programmable logic circuit can be improved. Processing can be expected.

【0021】また、請求項2の発明のように、論理セル
状態メモリに記憶する論理セルの状態を反映する情報と
してコンフィギュレーション回数が記憶されている場合
には、できるだけ、以前にコンフィギュレーションされ
た回路を利用できるように、新たにコンフィギュレーシ
ョンを行なう回路を構成するエリアを設定するようにす
ることができる。
Further, when the number of times of configuration is stored as information reflecting the state of the logic cell stored in the logic cell state memory as in the second aspect of the present invention, the configuration has been performed before as much as possible. In order to use the circuit, it is possible to set an area configuring a circuit for performing a new configuration.

【0022】また、請求項3の発明においては、論理セ
ルの状態を反映する情報には、当該論理セルを含む回路
が、前記プログラマブル論理回路上で動作可能であるか
否かを示す情報を含むので、以前にコンフィギュレーシ
ョンされた回路であって、利用可能な回路を容易に検出
することが可能である。
In the invention according to claim 3, the information reflecting the state of the logic cell includes information indicating whether a circuit including the logic cell is operable on the programmable logic circuit. Therefore, it is possible to easily detect a previously configured circuit that is available.

【0023】[0023]

【発明の実施の形態】以下、この発明による情報処理シ
ステムの実施の形態を、図を参照しながら説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of an information processing system according to the present invention will be described below with reference to the drawings.

【0024】まず、この発明が適用される、少なくとも
処理の一部分が回路構成を再構成できるプログラマブル
論理回路で処理される情報処理システムの実施の形態の
主要な概念構成を図2に示す。
First, FIG. 2 shows a main conceptual configuration of an embodiment of an information processing system to which the present invention is applied, in which at least a part of the processing is processed by a programmable logic circuit whose circuit configuration can be reconfigured.

【0025】この実施の形態の情報処理システムにおい
て、対象とするアプリケーションプログラム(単にプロ
グラムという場合もある)100は、当該プログラムに
より実行しようとする一連の処理を複数個の処理に分離
し、分離された各処理ごとにモジュールとして構成した
ものである。このモジュールを、この明細書では処理モ
ジュールと称することとする。
In the information processing system of this embodiment, a target application program (sometimes simply a program) 100 separates a series of processes to be executed by the program into a plurality of processes. Each process is configured as a module. This module is referred to as a processing module in this specification.

【0026】この実施の形態では、プログラム100を
構成する各処理モジュールは、CPU500が処理を実
行するように、処理がプログラム言語で記述されたソフ
トウエアプログラムで構成される。このソフトウエアプ
ログラムは、それぞれソフトウエアモジュールSMと称
することとする。したがって、この実施の形態の場合、
アプリケーションプログラム100は、複数個のソフト
ウエアモジュールSMの集合からなる。
In this embodiment, each processing module constituting the program 100 is constituted by a software program whose processing is described in a programming language so that the CPU 500 executes the processing. This software program is called a software module SM. Therefore, in the case of this embodiment,
The application program 100 includes a set of a plurality of software modules SM.

【0027】この実施の形態においては、記憶装置20
0に、ソフトウエアモジュールSMのそれぞれが行う処
理と同じ処理をプログラマブル論理回路に再構成する回
路情報で記述したモジュール(この明細書では、このモ
ジュールをハードウエアモジュールと称する)HMを保
存して用意する。記憶装置200は、当該情報処理シス
テム内に設けてもよいし、ネットワーク上の記憶装置で
あってもよい。
In this embodiment, the storage device 20
0, a module HM in which the same processing as the processing performed by each of the software modules SM is described by circuit information for reconfiguring into a programmable logic circuit (this module is referred to as a hardware module in this specification) is stored and prepared. I do. The storage device 200 may be provided in the information processing system, or may be a storage device on a network.

【0028】この例の場合、プログラム100は、図3
に示すように、ヘッダ部HEDと、本体部PRGとから
なり、本体部PRGが前述したように複数個のソフトウ
エアモジュールSMの集合で構成されている。そして、
ヘッダ部HEDには、各ソフトウエアモジュールSMと
同じ処理をプログラマブル論理回路に再構成する回路情
報で記述した、対応するハードウエアモジュールHMの
識別符号IDが記述されている。
In the case of this example, the program 100 corresponds to FIG.
As shown in (1), it is composed of a header part HED and a main part PRG, and the main part PRG is composed of a set of a plurality of software modules SM as described above. And
In the header HED, the identification code ID of the corresponding hardware module HM, which is described by circuit information for reconfiguring the same processing as each software module SM into a programmable logic circuit, is described.

【0029】この場合、プログラム100には、同じ処
理を行うソフトウエアモジュールSMとハードウエアモ
ジュールHMとの対応が付くように識別符号IDが記述
されている。例えば、この例では、本体部PRGの複数
個のソフトウエアモジュールSMのプログラム上の処理
実行順に従った順番で、各ソフトウエアモジュールSM
に対応するハードウエアモジュールHMの識別符号ID
が、ヘッダ部HEDに記述される。
In this case, the identification code ID is described in the program 100 so that the software module SM and the hardware module HM that perform the same processing are associated with each other. For example, in this example, each software module SM is arranged in the order according to the processing execution order on the program of the plurality of software modules SM of the main body PRG.
Code ID of hardware module HM corresponding to
Is described in the header section HED.

【0030】ハードウエアモジュール取得手段300
は、プログラム100中に記述されている識別符号ID
を用いて、ソフトウエアモジュールSMが実行する処理
と同じ処理を実行するハードウエアモジュールHMを、
システム内の記憶装置200から、あるいはネットワー
ク上の記憶装置200から取得する。そして、ハードウ
エアモジュール取得手段300は、取得したハードウエ
アモジュールHMによる回路をプログラマブル論理回路
400上に再構成する。
Hardware module acquisition means 300
Is the identification code ID described in the program 100
By using the hardware module HM that executes the same processing as that executed by the software module SM,
It is obtained from the storage device 200 in the system or from the storage device 200 on the network. Then, the hardware module acquisition unit 300 reconfigures the circuit based on the acquired hardware module HM on the programmable logic circuit 400.

【0031】記憶装置200に記憶されるハードウエア
モジュールHMは、プログラマブル論理回路400の回
路情報からなる。図4は、この回路情報の構造を示すも
のである。
The hardware module HM stored in the storage device 200 includes the circuit information of the programmable logic circuit 400. FIG. 4 shows the structure of this circuit information.

【0032】すなわち、回路情報201は、図4に示す
ように、付加情報部であるヘッダ部202と、回路デー
タ部であるコード部203からなる。ヘッダ部202に
は、回路名情報204と、入出力ポート情報205と、
面積情報206とが記述される。
That is, as shown in FIG. 4, the circuit information 201 includes a header section 202 as an additional information section and a code section 203 as a circuit data section. The header section 202 includes circuit name information 204, input / output port information 205,
Area information 206 is described.

【0033】回路名情報204には、自己の回路情報の
識別子IDとして、この例では、当該回路情報201が
プログラマブル論理回路400に構成する回路名(以
下、自回路名と呼ぶ)が記述されている。この自己の回
路情報の識別子IDとしての自回路名は、その回路情報
201に付けられた名前でもある。この例では、アプリ
ケーションプログラム100は、後述するように、プロ
グラマブル論理回路400に構成する回路の指定情報と
して、この回路情報の識別子IDとしての自回路名を用
いる。
In this example, the circuit name information 204 describes, as an identifier ID of its own circuit information, a circuit name (hereinafter referred to as its own circuit name) that the circuit information 201 configures in the programmable logic circuit 400. I have. The own circuit name as the identifier ID of the own circuit information is also the name given to the circuit information 201. In this example, as will be described later, the application program 100 uses its own circuit name as an identifier ID of the circuit information as specification information of a circuit included in the programmable logic circuit 400.

【0034】なお、回路名情報204は、ハードウエア
モジュールHMと、ソフトウエアモジュールSMとを区
別する識別部分を含むもので、この実施の形態では、そ
の識別部分を除くと、アプリケーションプログラム10
0のソフトウエアモジュールSMと、ハードウエアモジ
ュールHMとは同一の識別子を有するものである。
The circuit name information 204 includes an identification part for distinguishing between the hardware module HM and the software module SM. In this embodiment, except for the identification part, the application program 10
The software module SM of 0 and the hardware module HM have the same identifier.

【0035】ヘッダ部202の入出力ポート情報205
は、回路に対する信号の流れの方向に応じて、入力(I
N)、出力(OUT)または双方向(IN/OUT)の
うちから選ばれるポートの種類207、論理セル(後に
説明する)を単位にしたポートの位置座標(X,Y)2
08、およびポートのデータ幅(ビット数)209で構
成される。
Input / output port information 205 of header section 202
Is an input (I) depending on the direction of signal flow to the circuit.
N), port type 207 selected from output (OUT) or bidirectional (IN / OUT), port position coordinates (X, Y) 2 in units of logic cells (described later) 2
08 and the data width (number of bits) 209 of the port.

【0036】面積情報206は、当該回路情報201で
プログラマブル論理回路400上に構成される回路の大
きさを示すもので、例えば回路構成エリアが矩形の場合
には、縦方向および横方向に必要となる論理セルの個数
Nx,Nyの組み合わせ(Nx,Ny)のように記述さ
れる。
The area information 206 indicates the size of a circuit formed on the programmable logic circuit 400 by the circuit information 201. For example, when the circuit configuration area is rectangular, the area information 206 is required in the vertical and horizontal directions. It is described as a combination (Nx, Ny) of the numbers Nx and Ny of the logic cells.

【0037】コード部(回路データ部)203は、アド
レスADRとデータDTの対の集まりで構成される。ア
ドレスADRは、プログラマブル論理回路400を構成
する論理セルや配線の状態を決定するコンフィギュレー
ションメモリ(後に説明する)のアドレスである。デー
タDTは、書き込まれたコンフィギュレーションメモリ
のアドレスに対応する論理セルや配線の状態を決める。
The code section (circuit data section) 203 is constituted by a set of pairs of an address ADR and data DT. The address ADR is an address of a configuration memory (described later) that determines the state of a logic cell or wiring configuring the programmable logic circuit 400. The data DT determines the state of a logic cell or a wiring corresponding to the written address of the configuration memory.

【0038】プログラム100のソフトウエアモジュー
ルSMによるソフトウエア処理は、CPU500が実行
する。
The software processing by the software module SM of the program 100 is executed by the CPU 500.

【0039】実際のアプリケーションプログラム100
の処理は、処理モジュールごとに、実行モジュール決定
手段600により、ソフトウエアモジュールSMまたは
ハードウエアモジュールHMのいずれで実行するかが選
択されて、実行される。この実施の形態では、実行モジ
ュール決定手段は、選択条件設定手段700に設定され
ている実行モジュール選択条件に基づいて、どちらのモ
ジュールで処理モジュールを実行するかを決定する。
Actual application program 100
Is executed by the execution module determining means 600 for each processing module, selecting which of the software module SM and the hardware module HM is to be executed. In this embodiment, the execution module determining unit determines which module executes the processing module based on the execution module selection condition set in the selection condition setting unit 700.

【0040】選択条件設定手段700には、予め、例え
ばソフトウエアやハードウエアによる処理時間、メモリ
消費量、プログラマブル論理回路の再構成時間などの種
々の選択条件項目を想定し、その一つの条件項目あるい
は複数個の条件項目を組み合わせて、実行モジュール選
択条件を設定することができる。実行モジュール決定手
段600は、ハードウエアモジュールHMと、ソフトウ
エアモジュールSMのうち、設定された選択条件に合致
する方の処理モジュールを、実行モジュールとして選択
する。なお、各処理モジュールについての前記選択条件
項目の情報は、予め実行モジュール決定手段600のメ
モリに格納されている。
In the selection condition setting means 700, various selection condition items such as processing time by software or hardware, memory consumption, and reconfiguration time of a programmable logic circuit are assumed in advance. Alternatively, an execution module selection condition can be set by combining a plurality of condition items. The execution module determining unit 600 selects a processing module that matches the set selection condition among the hardware module HM and the software module SM as an execution module. The information on the selection condition items for each processing module is stored in the memory of the execution module determining unit 600 in advance.

【0041】なお、選択条件設定手段700は、実行モ
ジュール選択条件をユーザにより設定変更可能なように
設けられるものである。ユーザが、ある処理について、
ハードウエアモジュールHMとソフトウエアモジュール
SMのどちらを使用するかを設定しておくことも可能で
ある。
The selection condition setting means 700 is provided so that the execution module selection condition can be changed by the user. When a user decides on a certain process,
It is also possible to set which of the hardware module HM and the software module SM is used.

【0042】[実施の形態のハードウエア構成例]図5
は、この実施の形態の情報処理システム10のハードウ
エア構成例を示すブロック図である。この実施の形態の
情報処理システム10においては、CPU11のホスト
バス11Bに、チップセット12に含まれるメモリコン
トローラ(図示せず)を介して、例えばDRAMで構成
されるメインメモリ13が接続される。
[Example of Hardware Configuration of Embodiment] FIG.
Is a block diagram illustrating an example of a hardware configuration of the information processing system 10 according to the present embodiment. In the information processing system 10 of this embodiment, a main memory 13 composed of, for example, a DRAM is connected to a host bus 11B of a CPU 11 via a memory controller (not shown) included in a chipset 12.

【0043】ホストバス11Bは、また、チップセット
12に含まれるホスト−PCIバスブリッジ(図示せ
ず)を介して、PCIバス14に接続される。PCIバ
ス14には、プログラマブル論理回路インターフェース
15を介してプログラマブル論理回路400と、ハード
ディスクインターフェース17を介してハードディスク
ドライブ18と、通信インターフェース19とが接続さ
れる。
The host bus 11B is connected to a PCI bus 14 via a host-PCI bus bridge (not shown) included in the chipset 12. The PCI bus 14 is connected to a programmable logic circuit 400 via a programmable logic circuit interface 15, a hard disk drive 18 via a hard disk interface 17, and a communication interface 19.

【0044】通信インターフェース19は、LANやイ
ンターネットなどのネットワーク20を介して、プログ
ラマブル論理回路400に再構成される回路情報が格納
されている記憶装置21に接続される。
The communication interface 19 is connected via a network 20 such as a LAN or the Internet to a storage device 21 in which circuit information reconfigured in the programmable logic circuit 400 is stored.

【0045】ハードディスクドライブ18により読み書
きされるハードディスクには、アプリケーションプログ
ラムが格納されている。また、アプリケーションプログ
ラムは、ネットワーク20上の記憶装置(サーバ)に格
納されている場合もある。
An application program is stored in a hard disk read / written by the hard disk drive 18. The application program may be stored in a storage device (server) on the network 20 in some cases.

【0046】また、ハードディスクドライブ18のハー
ドディスクには、プログラマブル論理回路400に再構
成される回路情報が格納されている場合もある。この例
の場合、ハードディスクドライブ18により読み書きさ
れるハードディスクは、この情報処理システム10内の
記憶装置を構成する。
The hard disk of the hard disk drive 18 may store circuit information reconfigured in the programmable logic circuit 400. In the case of this example, the hard disk read / written by the hard disk drive 18 forms a storage device in the information processing system 10.

【0047】この実施の形態では、ハードウエア取得手
段300と、実行モジュール決定手段600が、図5に
示した情報処理システム10のOSのひとつの機能とし
てソフトウエア的に実装される。
In this embodiment, the hardware acquisition means 300 and the execution module determination means 600 are implemented as software as one function of the OS of the information processing system 10 shown in FIG.

【0048】次に、プログラマブル論理回路400の構
造を図6に示す。プログラマブル論理回路400は、論
理セル401と、配線領域402と、入出力端子403
とを備えている。また、図示しないが、プログラマブル
論理回路は、回路情報を格納するためのコンフィギュレ
ーションメモリを備える。コンフィギュレーションメモ
リは、論理セル401内および配線領域402内のEE
PROM、SRAMなどの書き換え可能なメモリ素子で
構成されている。
Next, the structure of the programmable logic circuit 400 is shown in FIG. The programmable logic circuit 400 includes a logic cell 401, a wiring region 402, and an input / output terminal 403.
And Although not shown, the programmable logic circuit includes a configuration memory for storing circuit information. The configuration memory stores the EE in the logic cell 401 and the wiring area 402.
It is composed of rewritable memory elements such as PROM and SRAM.

【0049】コンフィギュレーションメモリにアドレス
ADRが与えられて、新しい回路情報(図4参照)のデ
ータが格納されると、この回路情報に従って、論理セル
401内の回路構成と、論理セル401および入出力端
子403を相互に接続する配線領域402の接続状態が
再構成される。この一連の動作をコンフィギュレーショ
ンと呼ぶ。コンフィギュレーションメモリの一部分を書
き換えることで、プログラマブル論理回路が動作中であ
っても、回路を部分的に再構成することができる。
When an address ADR is given to the configuration memory and data of new circuit information (see FIG. 4) is stored, the circuit configuration in the logic cell 401, the logic cell 401 and the input / output The connection state of the wiring region 402 that connects the terminals 403 to each other is reconfigured. This series of operations is called a configuration. By rewriting a part of the configuration memory, the circuit can be partially reconfigured even when the programmable logic circuit is operating.

【0050】プログラマブル論理回路400に再構成さ
れた回路素子に、入出力端子403を介して、処理すべ
きデータが入力され、また、その処理結果が出力され
る。データ入力先の論理セル401と、データ出力元の
論理セル401を、論理セルの位置に対応するセル座標
を示した制御コードによってアプリケーションプログラ
ムが指定する。
Data to be processed is input to the circuit element reconfigured in the programmable logic circuit 400 via the input / output terminal 403, and the processing result is output. The application program specifies the logic cell 401 of the data input destination and the logic cell 401 of the data output source by a control code indicating the cell coordinates corresponding to the position of the logic cell.

【0051】次に、この発明の要部の論理セル状態メモ
リについて、図1を参照して説明する。この実施の形態
においては、メインメモリ13の一部のメモリ領域とし
て、図1に示すように、プログラマブル論理回路400
の各論理セルのそれぞれに対応するメモリエリア(論理
セル状態格納部)31を備える論理セル状態メモリ30
を設ける。
Next, the logic cell state memory of the main part of the present invention will be described with reference to FIG. In this embodiment, as a part of the memory area of the main memory 13, as shown in FIG.
Logic cell state memory 30 including a memory area (logic cell state storage unit) 31 corresponding to each of the logic cells
Is provided.

【0052】論理セル状態格納部31のそれぞれには、
プログラマブル論理回路の、対応する論理セルの状態を
反映する情報としての論理セル状態データSTDを記憶
する。この場合、アプリケーションプログラム100
が、プログラマブル論理回路400上の各論理セルの状
態を、論理セル1個に対して例えば1バイトの論理セル
状態データSTDを対応させて管理する。図1は、メイ
ンメモリ13に構成される論理セル状態メモリ30のメ
モリ空間の概念図である。
Each of the logic cell state storage units 31 has
Logic cell state data STD as information reflecting the state of the corresponding logic cell of the programmable logic circuit is stored. In this case, the application program 100
Manages the state of each logic cell on the programmable logic circuit 400 by associating, for example, 1-byte logic cell state data STD with one logic cell. FIG. 1 is a conceptual diagram of a memory space of a logic cell state memory 30 configured in the main memory 13.

【0053】この例の場合、1バイトの論理セル状態デ
ータSTDの先頭の1ビットには、その論理セル状態デ
ータSTDに対応する論理セルを含む回路が動作可能か
を示すアクティブフラグAFを充て、残りの7ビットに
は、当該論理セルが何回目のコンフィギュレーションに
より構成されたかを示すコンフィギュレーション番号C
Noを書き込むようにする。
In the case of this example, an active flag AF indicating whether a circuit including a logic cell corresponding to the logic cell state data STD is operable is assigned to the first bit of the 1-byte logic cell state data STD. The remaining 7 bits include a configuration number C indicating the number of configurations of the logic cell.
No is written.

【0054】例えば、説明の簡単のため、図7に示すよ
うに、プログラマブル論理回路400として、2次元に
4×4個の論理セルが配列されたプログラマブル論理回
路を想定する。そして、このプログラマブル論理回路の
初期状態から、図7(A)で点線で囲むエリアに機能回
路がコンフィギュレーションされた場合には、論理セル
状態メモリ30の各論理セル状態格納部31の論理セル
状態データSTDは、図7(B)のようになる。
For simplicity, for example, as shown in FIG. 7, a programmable logic circuit in which 4 × 4 logic cells are two-dimensionally arranged is assumed as the programmable logic circuit 400. When a functional circuit is configured in an area surrounded by a dotted line in FIG. 7A from the initial state of the programmable logic circuit, the logic cell state of each logic cell state storage unit 31 of the logic cell state memory 30 is set. The data STD is as shown in FIG.

【0055】すなわち、機能回路がコンフィギュレーシ
ョンされたエリア内の論理セルの論理セル状態データS
TDのアクティブフラグAFは、アクティブ状態(プロ
グラマブル論理回路400上で回路が利用可能である状
態)を示す「1」となり、また、コンフィギュレーショ
ン番号CNoは、1回目のコンフィギュレーションであ
ることを表す[0000001]となる。一方、機能回
路がコンフィギュレーションされなかったエリア内の論
理セルの論理セル状態データSTDのアクティブフラグ
AFは、非アクティブ状態を示す「0」となり、また、
コンフィギュレーション番号CNoは、いまだコンフィ
ギュレーションされていないことを表す[000000
0]となる。
That is, the logic cell state data S of the logic cell in the area where the functional circuit is configured
The TD active flag AF becomes “1” indicating an active state (a state in which a circuit can be used on the programmable logic circuit 400), and the configuration number CNo represents a first configuration [ 0000001]. On the other hand, the active flag AF of the logic cell state data STD of the logic cell in the area where the functional circuit has not been configured becomes “0” indicating an inactive state, and
The configuration number CNo indicates that no configuration has been performed yet [000000].
0].

【0056】このような論理セル状態メモリ30を備え
ることで、アプリケーションプログラム100は、次
に、プログラマブル論理回路400上のどこに回路を構
成すればよいかを判断する基礎資料を得ることができ
る。さらに、この実施の形態では、この論理セル状態メ
モリ30の各論理セル状態格納部のデータSTDの値の
うちのコンフィギュレーション番号CNoと、アクティ
ブフラグAFと、コンフィギュレーションした回路名と
を関係づけた情報を、メインメモリ13は記憶するよう
にする。アクティブフラグAFがアクティブ「1」にな
っている回路は、プログラマブル論理回路400上で利
用可能であることが分かる。
The provision of the logic cell state memory 30 allows the application program 100 to obtain basic data for determining where to configure a circuit on the programmable logic circuit 400 next. Further, in this embodiment, the configuration number CNo of the value of the data STD of each logic cell state storage unit of the logic cell state memory 30, the active flag AF, and the name of the configured circuit are associated with each other. The information is stored in the main memory 13. It can be seen that a circuit in which the active flag AF is active “1” is available on the programmable logic circuit 400.

【0057】なお、論理セル状態メモリ30に必要なメ
モリ容量は、論理セル状態データSTDが、上述の例の
ように、論理セル1個に対して1バイトとすると、64
セル×64セル程度のプログラマブル論理回路では4k
バイト程度、128セル×128セル程度のプログラマ
ブル論理回路でも16kバイト程度となり、比較的小さ
いメモリ消費で済むものである。
The memory capacity required for the logic cell state memory 30 is 64 if the logic cell state data STD is 1 byte for one logic cell as in the above example.
4k for a programmable logic circuit of about 64 cells
Even a programmable logic circuit of about 128 bytes × 128 cells is about 16 kbytes, which requires relatively small memory consumption.

【0058】次に、この実施の形態の情報処理システム
におけるアプリケーション処理の例を、図8〜図11を
用いて説明する。
Next, an example of application processing in the information processing system according to this embodiment will be described with reference to FIGS.

【0059】図8に示すように、アプリケーションプロ
グラムが起動されると、前処理としてプログラムの先頭
に書かれている、必要とされるハードウエアモジュール
のリストの読み込みや、変数の設定などが行われる(ス
テップS101)。
As shown in FIG. 8, when the application program is started, a list of necessary hardware modules written at the beginning of the program and setting of variables are performed as preprocessing. (Step S101).

【0060】次に、メインの処理となり、ハードウエア
モジュールとソフトウエアモジュールのいずれかが用い
られて各処理ルーチンが実行される。すなわち、各処理
ルーチンの実行前には、そのルーチンをCPU500に
よるソフトウエア処理を行うか、プログラマブル論理回
路400上に専用ハードウエアを実装して、そこでハー
ドウエア処理を行うかを判断する(ステップS10
2)。
Next, the main processing is performed, and each processing routine is executed by using either the hardware module or the software module. That is, before execution of each processing routine, it is determined whether the routine is to be subjected to software processing by the CPU 500 or dedicated hardware is mounted on the programmable logic circuit 400 and hardware processing is performed there (step S10).
2).

【0061】この判断は、前述もしたように、実行モジ
ュール決定手段600により行うようにするが、アプリ
ケーションプログラム100で指定されていてもよい
し、実行時に、既にソフトウエアが他のCPUにより実
行されていて、ソフトウエア処理では時間がかかると予
測してハードウエア処理に切り換えるようにしてもかま
わない。
As described above, this determination is made by the execution module determining means 600, but may be specified by the application program 100, or the software is already executed by another CPU at the time of execution. However, the software processing may be switched to the hardware processing on the assumption that it will take a long time.

【0062】ステップS102において、ソフトウエア
処理が選ばれた場合は、CPU500によりソフトウエ
ア処理が行われる(ステップS103)。ハードウエア
処理が選ばれた場合は、アプリケーションプログラム5
00は、プログラマブル論理回路400上に専用ハード
ウエアを実装して、処理すべきデータや制御変数などの
必要なパラメータをプログラマブル論理回路400に渡
し、ハードウエア処理を行った後、その結果を、このプ
ログラマブル論理回路400から受け取る(ステップS
104)。
If software processing is selected in step S102, the CPU 500 performs software processing (step S103). If hardware processing is selected, the application program 5
00 implements dedicated hardware on the programmable logic circuit 400, passes necessary parameters such as data to be processed and control variables to the programmable logic circuit 400, and performs hardware processing. Received from programmable logic circuit 400 (step S
104).

【0063】一つの処理ルーチンでの処理が終了する
と、次の処理ルーチンへ移るか、あるいは次の処理ルー
チンが無ければ、このアプリケーションプログラムを終
了する(ステップS105)。
When the processing in one processing routine is completed, the process proceeds to the next processing routine, or when there is no next processing routine, this application program is terminated (step S105).

【0064】次に、ステップS103で実行されるハー
ドウエア処理について説明する。図10およびその続き
である図11に、このハードウエア処理の詳細なフロー
チャートを示す。
Next, the hardware processing executed in step S103 will be described. FIG. 10 and a continuation of FIG. 11 show a detailed flowchart of this hardware processing.

【0065】ハードウエア処理が開始されると、必要と
される回路がプログラマブル論理回路400上にあるか
を否かを、メインメモリ13の参照情報を用いて調べる
(ステップS111)。必要とされる回路がプログラマ
ブル論理回路400上にあるか否かは、前述したよう
に、メインメモリ13には、コンフィギュレーションし
た回路名と、論理セル状態メモリ30の状態データST
Dであるコンフィギュレーション番号CNoおよびアク
ティブフラグAFとを関連付けて記憶してあるので、容
易に判断可能である。すなわち、具体的には、論理セル
状態メモリ30の状態データSTDのアクティブフラグ
AFがアクティブ状態になっている回路の回路名をメイ
ンメモリ13において検索し、それが、これから処理を
行おうとするハードウエアの回路名と一致するか否かに
より判別する。
When the hardware processing is started, it is checked whether or not a required circuit is on the programmable logic circuit 400 by using the reference information of the main memory 13 (step S111). Whether the required circuit is on the programmable logic circuit 400 is determined by the main memory 13 and the state data ST of the logic cell state memory 30 as described above.
Since the configuration number CNo, which is D, and the active flag AF are stored in association with each other, it is easy to determine. That is, specifically, the main memory 13 searches the main memory 13 for the circuit name of the circuit in which the active flag AF of the state data STD of the logic cell state memory 30 is in the active state. Is determined based on whether or not it matches the circuit name of the above.

【0066】ステップS111での判別の結果、プログ
ラマブル論理回路400上に必要な回路が存在している
と判別されたときには、コンフィギュレーションを行わ
ずに、その回路で処理を行う(ステップS123)。ま
た、必要な回路がプログラマブル論理回路400上に存
在していなければ、回路をプログラマブル論理回路40
0上に構成するために、次のステップS112へ進み、
回路情報をハードディスクドライブ18やネットワーク
20を通じて記憶装置21から入手する。
As a result of the determination in step S111, when it is determined that a necessary circuit exists on the programmable logic circuit 400, the processing is performed by the circuit without performing the configuration (step S123). If the necessary circuit does not exist on the programmable logic circuit 400, the circuit is changed to the programmable logic circuit 40.
In order to configure on 0, proceed to the next step S112,
The circuit information is obtained from the storage device 21 via the hard disk drive 18 or the network 20.

【0067】次に、今回のコンフィギュレーションが、
何回目のコンフィギュレーションかを確認する変数dを
初期化する(ステップS113)。次に、メインメモリ
13の論理セル状態メモリ30の論理セル状態データS
TDを参照して、プログラマブル論理回路400上のコ
ンフィギュレーション可能な空き領域を確認する。
Next, this configuration is
A variable d for confirming the number of the configuration is initialized (step S113). Next, the logic cell state data S of the logic cell state memory 30 of the main memory 13
Referring to the TD, a configurable free area on the programmable logic circuit 400 is confirmed.

【0068】具体的には、各論理セルに対応するメモリ
空間に書かれているコンフィギュレーション番号CNo
が、変数d以下の論理セルの占める領域を確認する(ス
テップS114)。最初は、変数d=0なので、コンフ
ィギュレーション番号CNo=0の論理セルの占める領
域を把握する。そして、この把握した領域の大きさと、
これからコンフィギュレーションする回路の面積情報か
ら求められる当該回路の占める領域と比較する(ステッ
プS115)。この比較の結果、回路が構成できる領域
が空いていないと判別されれば、変数dの値を増やして
(ステップS116)、ステップS114に戻る。回路
が構成できる領域が空いていると判別されれば、次のス
テップS117に進んで、回路の再配置の処理を行う。
Specifically, the configuration number CNo written in the memory space corresponding to each logic cell
Confirms the area occupied by the logic cell equal to or less than the variable d (step S114). At first, since the variable d = 0, the area occupied by the logic cell of the configuration number CNo = 0 is grasped. And the size of this grasped area,
This is compared with the area occupied by the circuit, which is obtained from the area information of the circuit to be configured (step S115). As a result of this comparison, if it is determined that the area where the circuit can be configured is not empty, the value of the variable d is increased (step S116), and the process returns to step S114. If it is determined that the area where the circuit can be configured is empty, the process proceeds to the next step S117, where the circuit is rearranged.

【0069】このステップS117での回路の再配置の
処理においては、プログラマブル論理回路400の空き
領域中の回路が構成できる場所を特定し、ハードディス
クドライブ18などの記憶装置に格納されている回路情
報のなかのビットデータを、前記プログラマブル論理回
路400上の特定された領域に構成するような回路デー
タに書き替える。または、回路情報のなかの設計ツール
におけるレイアウトデータを変更してビットデータを生
成する。
In the process of relocating circuits in step S117, a place where a circuit in a free area of the programmable logic circuit 400 can be configured is specified, and the circuit information stored in a storage device such as the hard disk drive 18 is identified. The bit data therein is rewritten to circuit data which constitutes a specified area on the programmable logic circuit 400. Alternatively, the bit data is generated by changing the layout data in the design tool in the circuit information.

【0070】次に、再配置されたビットデータを、ハー
ドディスクドライブ18などの記憶装置からプログラマ
ブル論理回路400のコンフィギュレーションメモリに
ロードする(ステップS118)。
Next, the rearranged bit data is loaded from a storage device such as the hard disk drive 18 into the configuration memory of the programmable logic circuit 400 (step S118).

【0071】そして、ロードしている間に、論理セル状
態メモリ30のコンフィギュレーションされる論理セル
に対応する論理セル状態格納部31に、現時点でのコン
フィギュレーション番号CNoの最大値CNomax に1
を加えた値を書き込む(ステップS119)。そして、
コンフィギュレーション番号の最大値CNomax を更新
する(ステップS120)。
During the loading, the maximum value CNomax of the current configuration number CNo is set to 1 in the logical cell state storage section 31 of the logical cell state memory 30 corresponding to the logical cell to be configured.
Is written (step S119). And
The maximum value CNomax of the configuration number is updated (step S120).

【0072】そして、論理セル状態メモリ30に記憶さ
れている論理セル状態データSTDのコンフィギュレー
ション番号CNoが変数d以下である論理セルの状態デ
ータSTDのアクティブフラグAFを「0」にリセット
し(ステップS121)、それらのコンフィギュレーシ
ョン番号の回路が、プログラマブル論理回路400上の
回路として利用不可の状態とする。また、コンフィギュ
レーションされた回路を構成する論理セルに対応する論
理セル状態データSTDのアクティブフラグAFを
「1」にセットし(ステップS122)、プログラマブ
ル論理回路400上でその回路が利用可能であることを
示すようにする。
Then, the active flag AF of the state data STD of the logic cell whose configuration number CNo of the logic cell state data STD stored in the logic cell state memory 30 is equal to or smaller than the variable d is reset to "0" (step S <b> 121), the circuits of these configuration numbers are disabled as circuits on the programmable logic circuit 400. Also, the active flag AF of the logic cell state data STD corresponding to the logic cell configuring the configured circuit is set to “1” (step S122), and the circuit is available on the programmable logic circuit 400. As shown.

【0073】プログラマブル論理回路400のコンフィ
ギュレーションが完了すると、プログラマブル論理回路
400に構成された当該回路で処理が行われ(ステップ
S123)、処理結果はアプリケーションプログラムに
返す。以上のようにして、ハードウエア処理が実行され
る。
When the configuration of the programmable logic circuit 400 is completed, processing is performed in the circuit configured in the programmable logic circuit 400 (step S123), and the processing result is returned to the application program. The hardware processing is executed as described above.

【0074】図11は、コンフィギュレーションの回数
と、メインメモリ13の論理セル状態メモリ30の領域
の各論理セル状態格納部31のデータSTDの更新状態
とを示す略図である。この図11では、説明の簡単のた
め、プログラマブル論理回路400の論理セル数は4×
4=16としており、数値はコンフィギュレーション番
号を示している。そして、論理セル状態格納部31を示
す正方形にハッチングがかかっているものは、アクティ
ブフラグAF=1(アクティブ状態)となっているもの
を示し、ハッチングのかかっていないものは、アクティ
ブフラグAF=0(非アクティブ状態)となっているも
のを示している。
FIG. 11 is a schematic diagram showing the number of times of configuration and the update state of the data STD of each logical cell state storage unit 31 in the area of the logical cell state memory 30 of the main memory 13. In FIG. 11, for simplicity of description, the number of logic cells of the programmable logic circuit 400 is 4 ×
4 = 16, and the numerical value indicates the configuration number. A hatched square indicating the logical cell state storage unit 31 indicates an active flag AF = 1 (active state), and an unhatched square indicates an active flag AF = 0. (Inactive state).

【0075】なお、以下に説明する例では、回路は、空
き領域があれば、その空き領域に左下詰めで配置し、空
き領域がなければ、プログラマブル論理回路全体の左下
詰めで配置することを原則とする。
In the example described below, the circuit is arranged, if there is a vacant area, in the vacant area with the left bottom justified. If there is no vacant area, the circuit is laid out in the lower left of the entire programmable logic circuit in principle. And

【0076】図11(A)は、システムのリセット後な
どの初期状態を示しており、論理セル状態メモリ30で
は、各論理セル状態格納部31の状態データSTDのコ
ンフィギュレーション番号CNoは、CNo=0となっ
ており、また、アクティブフラグAFも、AF=0とな
っており、回路は、プログラマブル論理回路400上の
どこにも構成可能である。
FIG. 11A shows an initial state such as after a system reset. In the logical cell state memory 30, the configuration number CNo of the state data STD of each logical cell state storage unit 31 is CNo = It is 0, and the active flag AF is also AF = 0, so that the circuit can be configured anywhere on the programmable logic circuit 400.

【0077】図11(B)は、1回目のコンフィギュレ
ーションが行われた後の状態の例であり、この例では、
破線で囲んだ領域32に対応する縦×横=2×4の論理
セル領域に、回路aが構成されている場合である。この
コンフィギュレーションされた論理セルに対応する論理
セル状態格納部31のデータSTDは、コンフィギュレ
ーション番号CNoがCNo=1、アクティブフラグA
FがAF=1と、更新される。
FIG. 11B shows an example of a state after the first configuration is performed. In this example,
This is a case where the circuit a is configured in a logical cell region of 2 × 4 in length × width = corresponding to the region 32 surrounded by a broken line. The data STD of the logic cell state storage unit 31 corresponding to the configured logic cell has a configuration number CNo of CNo = 1 and an active flag A
F is updated to AF = 1.

【0078】この時点では、プログラマブル論理回路4
00上の空き領域は、縦×横=2×4の論理セル領域で
あるので、次に構成される回路は、2×4の領域より小
さい回路ならば、コンフィギュレーション番号CNoが
CNo=0である論理セルの領域に構成され、この領域
よりも大きい回路であるときには、回路aの領域も再構
成領域となる。すなわち、コンフィギュレーション番号
CNoが、CNo=0と、CNo=1の領域が、再構成
対象領域となる。
At this point, the programmable logic circuit 4
Since the empty area above the area No. 00 is a logical cell area of (vertical × horizontal) = 2 × 4, if the circuit to be configured next is smaller than the 2 × 4 area, the configuration number CNo is CNo = 0. If the circuit is configured in a certain logic cell area and the circuit is larger than this area, the area of the circuit a is also a reconstruction area. In other words, the areas where the configuration numbers CNo are CNo = 0 and CNo = 1 are the reconfiguration target areas.

【0079】この状態から、縦×横=2×2の論理セル
領域を占める回路bをコンフィギュレーションしようと
する場合には、この2回目のコンフィギュレーション回
路bが、図11(B)に示した、コンフィギュレーショ
ン番号CNo=0の論理セル領域より小さいので、空き
領域の中で左下に配置することが原則であることを考慮
すると、回路bは、図11(C)に示すように、回路a
の領域32の上方の破線の領域33に配置される。
In this state, when the circuit b occupying the logical cell area of (vertical × horizontal = 2 × 2) is to be configured, this second configuration circuit b is shown in FIG. 11 (B). Considering that the configuration is smaller than the logic cell area with the configuration number CNo = 0, the circuit is generally arranged at the lower left in the empty area, and the circuit b is, as shown in FIG.
Is arranged in a dashed area 33 above the area 32.

【0080】この領域33の論理セル状態格納部31の
状態データSTDとしては、そのコンフィギュレーショ
ン番号CNo=2、アクティブフラグAF=1が書き込
まれる。この時点では、プログラマブル論理回路400
上では、回路aと、回路bとが、ともに動作可能であ
る。
The configuration number CNo = 2 and the active flag AF = 1 are written as the state data STD of the logical cell state storage section 31 in this area 33. At this point, the programmable logic circuit 400
Above, both the circuit a and the circuit b can operate.

【0081】そして、この時点では、次に構成される回
路は、2×2の領域より小さい回路ならば、コンフィギ
ュレーション番号CNoがCNo=0である論理セルの
領域に構成され、この領域よりも大きい回路であるとき
には、回路a、回路bの領域も再構成領域となる。すな
わち、コンフィギュレーション番号CNoが、CNo=
0と、CNo=1と、CNo=2の領域が、再構成対象
領域となる。
At this point, if the circuit to be configured next is a circuit smaller than the 2 × 2 area, it is configured in the area of the logic cell where the configuration number CNo is CNo = 0. When the circuit is a large circuit, the regions of the circuits a and b are also the reconstruction regions. That is, the configuration number CNo is CNo =
The areas of 0, CNo = 1, and CNo = 2 are the reconstruction target areas.

【0082】また、もしも、2回目のコンフィギュレー
ション回路が、縦×横=4×2の論理セル領域を占める
回路cであって、図11(B)に示したコンフィギュレ
ーション番号CNo=0の論理セル領域より大きい場合
には、次のようにして再構成領域を決定する。
Also, if the second configuration circuit is a circuit c occupying a logical cell area of (vertical × horizontal = 4 × 2), and the logic of configuration number CNo = 0 shown in FIG. If it is larger than the cell area, the reconstruction area is determined as follows.

【0083】すなわち、コンフィギュレーション番号C
No=0の論理セル領域とコンフィギュレーション番号
CNo=1の論理セル領域とを合わせた領域と、回路c
との大きさを比較する。すると、回路cは、前記合わせ
た領域より小さいので、左下詰めが原則であることか
ら、図11(D)で破線で囲んだ領域34に回路cが配
置されることになる。この時点では、回路aは動作不能
となり、回路cのみが動作可能である。
That is, the configuration number C
A combination of a logic cell region of No = 0 and a logic cell region of configuration number CNo = 1, and a circuit c
Compare with the size. Then, since the circuit c is smaller than the combined area, the bottom left is basically a rule. Therefore, the circuit c is arranged in the area 34 surrounded by a broken line in FIG. At this point, the circuit a becomes inoperable, and only the circuit c is operable.

【0084】次に、図6(C)に示す状態の後、さら
に、3回目のコンフィギュレーションとして、縦×横=
2×3の論理セル領域を占める回路dを構成する場合を
考える。この場合には、回路dは、図11(C)に示し
たコンフィギュレーション番号CNo=0の論理セル領
域より大きいので、次に、コンフィギュレーション番号
CNo=0とCNo=1の論理セル領域を合わせた領域
と、回路dの大きさとを比較する。すると、回路dは、
この合わせた領域より小さいので、図11(E)に示す
ように、左下詰めが原則であることから、回路aが元々
配置されていた領域の一部である破線の領域35に配置
されるようにされる。
Next, after the state shown in FIG. 6C, as a third configuration, the height × width =
Consider a case where a circuit d occupying a 2 × 3 logic cell area is configured. In this case, since the circuit d is larger than the logic cell area of the configuration number CNo = 0 shown in FIG. 11C, the logic cell areas of the configuration numbers CNo = 0 and CNo = 1 are next combined. The size of the circuit d is compared with the size of the circuit d. Then, the circuit d becomes
Since the area is smaller than the combined area, as shown in FIG. 11 (E), the bottom left is the principle, and the circuit a is arranged in the broken line area 35 which is a part of the area where the circuit a was originally arranged. To be.

【0085】そして、この領域35の論理セルの論理セ
ル状態データSTDとしては、コンフィギュレーション
番号CNo=3、アクティブフラグAF=1が書き込ま
れる。また、コンフィギュレーション番号CNo=1で
あった論理セルで、回路が構成されなかった領域の論理
セルの論理セル状態データSTDは、そのうちのアクテ
ィブフラグAFがAF=0に書き替えられる。したがっ
て、プログラマブル論理回路400上において、この時
点で動作可能な回路は、回路bと回路cに変わる。
Then, the configuration number CNo = 3 and the active flag AF = 1 are written as the logic cell state data STD of the logic cells in the area 35. Further, in the logic cell state data STD of the logic cell in which the circuit is not formed in the logic cell having the configuration number CNo = 1, the active flag AF of the logic cell is rewritten to AF = 0. Therefore, the circuits operable at this time on the programmable logic circuit 400 are changed to the circuit b and the circuit c.

【0086】また、図11(C)に示す状態の後の3回
目のコンフィギュレーションとして、縦×横=2×2の
論理セル領域を占める回路eを構成する場合には、この
回路eの大きさは、図11(C)においてコンフィギュ
レーション番号CNo=0の空き領域と等しいので、図
11(F)に示すように、回路eは、この空き領域に一
致する破線で示す領域36に配置される。この例の場合
には、プログラマブル論理回路400上においては、こ
の時点では、回路aと、回路bと、回路cとのすべてが
動作可能である。
Further, as a third configuration after the state shown in FIG. 11C, when a circuit e occupying a logical cell area of (vertical × horizontal = 2 × 2) is formed, the size of the circuit e is large. 11C, the circuit e is arranged in an area 36 indicated by a broken line corresponding to the empty area, as shown in FIG. 11F. You. In the case of this example, on the programmable logic circuit 400, at this time, all of the circuit a, the circuit b, and the circuit c can operate.

【0087】さらに、図11(C)に示す状態の後の3
回目のコンフィギュレーションとして、縦×横=3×3
の論理セル領域を占める回路fを構成する場合を考え
る。この場合には、この回路fの大きさは、図11
(C)に示すコンフィギュレーション番号CNo=0の
空き領域より大きく、また、コンフィギュレーション番
号CNo=0の論理セル領域とCNo=1の論理セル領
域とを合わせた領域よりも大きい。そこで、さらに、コ
ンフィギュレーション番号CNo=0の論理セル領域と
CNo=1の論理セル領域とCNo=2の論理セル領域
とを合わせた領域と、回路fの大きさとを比較する。す
ると、回路fは、この3つの領域を合わせた領域より小
さいので、回路fは、図11(G)に示すように、この
領域の左下に合わせて配置される。この時点では、プロ
グラマブル論理回路400上においては、回路cのみが
動作可能である。
Further, after the state shown in FIG.
As the second configuration, vertical x horizontal = 3 x 3
Of a circuit f occupying the logic cell region of FIG. In this case, the size of the circuit f is as shown in FIG.
It is larger than the free area of the configuration number CNo = 0 shown in FIG. 4C, and larger than the combined area of the logic cell area of the configuration number CNo = 0 and the logic cell area of CNo = 1. Therefore, the size of the circuit f is compared with an area obtained by combining the logic cell area of the configuration number CNo = 0, the logic cell area of the CNo = 1, and the logic cell area of the CNo = 2. Then, since the circuit f is smaller than the area obtained by combining these three areas, the circuit f is arranged at the lower left of this area as shown in FIG. At this point, only the circuit c can operate on the programmable logic circuit 400.

【0088】以上のようにして、メインメモリ13の論
理セル状態メモリ30の各論理セル状態格納部31の状
態データSTDが、コンフィギュレーションが行われる
ごとに更新される。
As described above, the state data STD of each logic cell state storage unit 31 of the logic cell state memory 30 of the main memory 13 is updated every time the configuration is performed.

【0089】そして、上述したように、この論理セル状
態メモリ30の各論理セル状態格納部31の状態データ
STDのアクティブフラグAFを参照することにより、
プログラマブル論理回路400上で、その時に動作可能
である回路が把握できる。
Then, as described above, by referring to the active flag AF of the state data STD of each logical cell state storage unit 31 of the logical cell state memory 30,
On the programmable logic circuit 400, a circuit operable at that time can be grasped.

【0090】また、論理セル状態メモリ30の各論理セ
ル状態格納部31の状態データSTDのコンフィギュレ
ーション番号を参照することにより、空き領域の確認も
容易にできるとともに、新たな回路をコンフィギュレー
ションするときにも、効率良く、その新たな回路の構成
領域を定めることができる。
Further, by referring to the configuration number of the status data STD of each logic cell status storage unit 31 of the logic cell status memory 30, it is possible to easily confirm an empty area and to configure a new circuit. In addition, the configuration area of the new circuit can be efficiently determined.

【0091】この実施の形態においては、コンフィギュ
レーション番号CNoは、7ビットなので、0から12
7までしか番号付けができない。そのため、この実施の
形態では、コンフィギュレーション番号CNoが127
になった時点で、図12に示すようなメモリフル状態の
コンフィギュレーション番号変換ルーチンを実行する。
In this embodiment, since the configuration number CNo is 7 bits, 0 to 12
You can only number up to seven. Therefore, in this embodiment, the configuration number CNo is 127
At this point, a configuration number conversion routine in a memory full state as shown in FIG. 12 is executed.

【0092】すなわち、図12に示すように、まず、メ
インメモリ13の論理セル状態メモリ領域30の最初の
論理セル状態格納部31に格納されている状態データS
TDをチェックし(ステップS131)、そのアクティ
ブフラグAFが0であるかどうかを調べる(ステップS
132)。
That is, as shown in FIG. 12, first, the state data S stored in the first logical cell state storage section 31 of the logical cell state memory area 30 of the main memory 13 is read.
The TD is checked (step S131), and it is checked whether or not the active flag AF is 0 (step S131).
132).

【0093】アクティブフラグAF=0であれば、その
論理セル状態データSTDのコンフィギュレーション番
号CNoの値を0とする(ステップS133)。また、
アクティブフラグAF=1であれば、その論理セル状態
データSTDのコンフィギュレーション番号CNoの値
によって、順次n=1から分類していく(ステップS1
34)。以上の処理を全論理セルに対して行う(ステッ
プS135およびS136)。
If the active flag AF = 0, the value of the configuration number CNo of the logic cell state data STD is set to 0 (step S133). Also,
If the active flag AF = 1, classification is performed sequentially from n = 1 according to the value of the configuration number CNo of the logic cell state data STD (step S1).
34). The above processing is performed on all the logic cells (steps S135 and S136).

【0094】ここまでの処理を、論理セル状態メモリ領
域30の概略図である図13を用いて説明すると、次の
ようになる。すなわち、図13(A)において、アクテ
ィブフラグAF=0であるコンフィギュレーション番号
CNo=121である論理セルおよびコンフィギュレー
ション番号CNo=123である論理セルに対応するデ
ータSTDのコンフィギュレーション番号CNoは、図
13(B)に示すように、CNo=0に変換される。
The processing up to this point will be described with reference to FIG. 13 which is a schematic diagram of the logic cell state memory area 30. That is, in FIG. 13A, the configuration number CNo of the data STD corresponding to the logic cell having the configuration number CNo = 121 where the active flag AF = 0 and the logic cell having the configuration number CNo = 123 is shown in FIG. As shown in FIG. 13 (B), CNo = 0 is converted.

【0095】また、アクティブフラグAF=1であるコ
ンフィギュレーション番号CNo=126の論理セル
は、分類としてn=N1に、同様に、アクティブフラグ
AF=1であるコンフィギュレーション番号CNo=1
27の論理セルは、分類としてn=N2に対応づけられ
る。
The logic cell of the configuration number CNo = 126 with the active flag AF = 1 is classified into n = N1, and similarly, the configuration number CNo = 1 with the active flag AF = 1.
The 27 logic cells are associated with n = N2 as a classification.

【0096】次に、分類された集合{N1,N2,…,
Nn}に対し、分類したときのコンフィギュレーション
番号CNoの値によって、小さいもの順になるように、
ソーティングする(ステップS137)。図13の例で
は、集合{N1,N2}に対して、N1がCNo=12
6、N2がCNo=127なので、{N1,N2}のま
まである。
Next, the classified sets {N1, N2,.
With respect to Nn 小 さ い, according to the value of the configuration number CNo at the time of classification,
Sorting is performed (step S137). In the example of FIG. 13, for the set {N1, N2}, N1 is CNo = 12.
6, since N2 is CNo = 127, it remains {N1, N2}.

【0097】次に、ソートした結果の集合に対し、最も
小さいものがCNo=1、次がCNo=2というよう
に、順に小さいものからコンフィギュレーション番号C
Noの値を書き替える(ステップS138)。図13の
例では、N1に対応する論理セルの状態データSTDの
コンフィギュレーション番号CNoがCNo=1、N2
に対応する論理セルの状態データSTDのコンフィギュ
レーション番号CNoがCNo=2と書き替えられる。
Next, with respect to the set of sorted results, the smallest number is CNo = 1, the next is CNo = 2, and so on.
The value of No is rewritten (step S138). In the example of FIG. 13, the configuration number CNo of the state data STD of the logic cell corresponding to N1 is CNo = 1, N2
Is rewritten as CNo = 2 in the configuration number CNo of the state data STD of the logic cell corresponding to.

【0098】そして、最後に、書き換え後のコンフィギ
ュレーション番号の最大値を、コンフィギュレーション
番号の最大値CNomax の値として(ステップS13
9)、このコンフィギュレーション番号変換ルーチンを
終了する。
Finally, the maximum value of the rewritten configuration number is set as the maximum value of the configuration number CNomax (step S13).
9), this configuration number conversion routine ends.

【0099】なお、コンフィギュレーション番号CNo
が127になり、そのハードウエア処理が完了した時点
で、プログラマブル論理回路400のコンフィギュレー
ションメモリをリセットすると、アプリケーションプロ
グラムは単純化される。
The configuration number CNo
Becomes 127, and when the hardware processing is completed, resetting the configuration memory of the programmable logic circuit 400 simplifies the application program.

【0100】また、コンフィギュレーション番号CNo
が、ある番号になった時点でプログラマブル論理回路4
00のコンフィギュレーションメモリをリセットするよ
うにすれば、何回ものコンフィギュレーションにより残
されてしまう回路の断片による動作回路への影響を無く
すことも可能である。
The configuration number CNo
Becomes a certain number, the programmable logic circuit 4
By resetting the 00 configuration memory, it is possible to eliminate the influence on the operation circuit due to the circuit fragments left by the configuration many times.

【0101】また、アプリケーションによっては、プロ
グラマブル論理回路上の論理セルの状態を記憶しておく
論理セル状態メモリ空間の、論理セル1個に対してのメ
モリ量を増減することもできる。例えば、プログラマブ
ル論理回路上でのコンフィギュレーションの回数が少な
いアプリケーションでは、状態データSTDの割り当て
ビット数を少なく、コンフィギュレーションの回数が多
いアプリケーションでは、状態データの割り当てビット
数を多くするとよい。
Further, depending on the application, the amount of memory for one logic cell in the logic cell state memory space for storing the state of the logic cell on the programmable logic circuit can be increased or decreased. For example, in an application in which the number of times of configuration on the programmable logic circuit is small, the number of bits assigned to the state data STD may be small, and in an application in which the number of times of configuration is large, the number of bits of state data may be increased.

【0102】例えば、プログラマブル論理回路上でのコ
ンフィギュレーションの回数が少ないアプリケーション
において、論理セル1個に対して状態データSTDに、
例えば4ビットを割り当てると、コンフィギュレーショ
ン番号は0から7までしか利用できないが、128セル
×128セルのプログラマブル論理回路で8kバイト程
度の少ないメモリ消費で済むというメリットがある。
For example, in an application in which the number of times of configuration on a programmable logic circuit is small, the state data STD for one logic cell includes
For example, when 4 bits are allocated, only the configuration number from 0 to 7 can be used, but there is an advantage that a programmable logic circuit of 128 cells × 128 cells requires a small memory consumption of about 8 kbytes.

【0103】[0103]

【発明の効果】以上説明したように、この発明によれ
ば、動作中に回路構成を部分的に再構成することができ
るプログラマブル論理回路装置を用いた情報処理システ
ムにおいて、複数の回路を空間的および時間的に再構成
して利用する場合に、論理セル状態メモリに、プログラ
マブル論理回路上の各論理セルの状態を反映する情報を
記憶させておくことにより、プログラマブル論理回路上
の資源を効率的に利用することが可能となるようなコン
フィギュレーションを行うことができる。
As described above, according to the present invention, in an information processing system using a programmable logic circuit device capable of partially reconfiguring a circuit configuration during operation, a plurality of circuits are spatially divided. In the case where the logic cell state memory is used, information that reflects the state of each logic cell on the programmable logic circuit is stored in the logic cell state memory so that resources on the programmable logic circuit can be efficiently used. Configuration that can be used for

【0104】そして、一旦構成され、処理を実行した回
路で、まだプログラマブル論理回路上に残っているもの
は、必要ならばコンフィギュレーションしないでそのま
ま利用することが可能なので、コンフィギュレーション
にかかる時間がなくなり、処理時間の短縮につながる。
[0104] Circuits that have been configured and executed, and that are still left on the programmable logic circuit, can be used without configuration if necessary, eliminating the time required for configuration. , Leading to a reduction in processing time.

【0105】また、プログラマブル論理回路にコンフィ
ギュレーションされる回数をカウントし、ある特定の回
数においてコンフィギュレーションメモリをリセットす
ることにより、何回ものコンフィギュレーションにより
残されてしまう回路の断片による動作回路への影響を無
くすことが可能である。
Also, by counting the number of times of configuration in the programmable logic circuit and resetting the configuration memory at a certain number of times, the operation of the operation circuit due to fragments of the circuit that are left by many times of configuration is performed. It is possible to eliminate the effect.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明による情報処理システムの実施の形態
の論理セル状態メモリを説明するための図である。
FIG. 1 is a diagram for explaining a logic cell state memory according to an embodiment of an information processing system according to the present invention;

【図2】この発明による情報処理システムの実施の形態
の構成の概要を説明するための機能ブロック図である。
FIG. 2 is a functional block diagram for describing an outline of a configuration of an information processing system according to an embodiment of the present invention;

【図3】この発明による情報処理システムの実施の形態
の概要を説明するに使用する図である。
FIG. 3 is a diagram used to explain an outline of an embodiment of an information processing system according to the present invention;

【図4】この発明による情報処理システムの実施の形態
において、プログラマブル論理回路にコンフィギュレー
ションする回路情報の例を示す図である。
FIG. 4 is a diagram showing an example of circuit information configured in a programmable logic circuit in the embodiment of the information processing system according to the present invention;

【図5】この発明による情報処理システムの実施の形態
のハードウエア構成例を示すブロック図である。
FIG. 5 is a block diagram illustrating a hardware configuration example of an embodiment of an information processing system according to the present invention.

【図6】この発明による情報処理システムの実施の形態
に用いるプログラマブル論理回路の一例を示す図であ
る。
FIG. 6 is a diagram showing an example of a programmable logic circuit used in an embodiment of the information processing system according to the present invention.

【図7】この発明による情報処理システムの実施の形態
におけるプログラマブル論理回路上の論理セルの状態
と、論理セル状態メモリの内容との対応を説明するため
の図である。
FIG. 7 is a diagram for explaining a correspondence between states of logic cells on a programmable logic circuit and contents of a logic cell state memory in the embodiment of the information processing system according to the present invention;

【図8】この発明による情報処理システムの実施の形態
における処理の概要を説明するためのフローチャートで
ある。
FIG. 8 is a flowchart for explaining an outline of processing in an embodiment of the information processing system according to the present invention.

【図9】この発明による情報処理システムの実施の形態
における処理の要部を説明するためのフローチャートの
一部を示す図である。
FIG. 9 is a diagram showing a part of a flowchart for explaining a main part of a process in the embodiment of the information processing system according to the present invention;

【図10】この発明による情報処理システムの実施の形
態における処理の要部を説明するためのフローチャート
の続きを示す図である。
FIG. 10 is a diagram showing a continuation of the flowchart for explaining the main part of the processing in the embodiment of the information processing system according to the present invention;

【図11】この発明による情報処理システムの実施の形
態において複数回のコンフィギュレーションを行った場
合の論理セル状態メモリのデータ更新を説明するための
図である。
FIG. 11 is a diagram for explaining data updating of a logic cell state memory when configuration is performed a plurality of times in the embodiment of the information processing system according to the present invention;

【図12】この発明による情報処理システムの実施の形
態において、論理セル状態メモリのコンフィギュレーシ
ョン番号変換処理を説明するためフローチャートであ
る。
FIG. 12 is a flowchart for explaining a configuration number conversion process of a logical cell state memory in the embodiment of the information processing system according to the present invention;

【図13】図12の論理セル状態メモリのコンフィギュ
レーション番号変換処理を説明するための図である。
FIG. 13 is a diagram for explaining a configuration number conversion process of the logic cell state memory of FIG. 12;

【図14】従来のプログラマブル論理回路へのコンフィ
ギュレーションの方法を説明するための図である。
FIG. 14 is a diagram illustrating a conventional method for configuring a programmable logic circuit.

【符号の説明】[Explanation of symbols]

10 情報処理システム 11 CPU 13 メインメモリ 18 ハードディスクドライブ 20 ネットワーク 30 論理セル状態メモリ 31 論理セル状態格納部 400 プログラマブル論理回路 401 論理セル 402 配線領域 STD 論理セル状態データ CNo コンフィギュレーション番号 AF アクティブフラグ DESCRIPTION OF SYMBOLS 10 Information processing system 11 CPU 13 Main memory 18 Hard disk drive 20 Network 30 Logic cell state memory 31 Logic cell state storage part 400 Programmable logic circuit 401 Logic cell 402 Wiring area STD Logic cell state data CNo Configuration number AF Active flag

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】プログラムで処理を記述した一連の処理を
実行するものであり、前記一連の処理の少なくとも一部
分が、プログラマブル論理回路で処理可能である情報処
理システムにおいて、 前記プログラマブル論理回路として、複数個の論理セル
を有し、この複数個の論理セルのうちの、指定されたエ
リアの論理セルに回路情報がコンフィギュレーションさ
れることにより、前記指定されたエリアに新たな論理回
路を実装するものを備えるとともに、 前記プログラマブル論理回路の前記複数個の論理セルの
それぞれの状態を反映する情報を記憶する論理セル状態
メモリを備え、 新たな回路情報がコンフィギュレーションされるごと
に、前記論理セル状態メモリの記憶情報のうちの、当該
コンフィギュレーションされた論理セルの状態を反映す
る情報を更新することを特徴とする情報処理システム。
1. An information processing system for executing a series of processes in which a process is described by a program, wherein at least a part of the series of processes can be processed by a programmable logic circuit. A plurality of logic cells, and of the plurality of logic cells, circuit information is configured in a logic cell in a designated area, thereby mounting a new logic circuit in the designated area And a logic cell state memory for storing information reflecting a state of each of the plurality of logic cells of the programmable logic circuit, wherein each time new circuit information is configured, the logic cell state memory is provided. Reflects the state of the configured logic cell in the stored information of The information processing system characterized by updating that information.
【請求項2】請求項1に記載の情報処理システムにおい
て、 前記論理セル状態メモリの前記論理セルの状態を反映す
る情報は、当該論理セルの回路状態は、何回目のコンフ
ィギュレーションで構成されたかのコンフィギュレーシ
ョン回数を含むものであることを特徴とする情報処理シ
ステム。
2. The information processing system according to claim 1, wherein the information reflecting the state of the logic cell in the logic cell state memory includes information indicating the number of configurations of the circuit state of the logic cell. An information processing system including a configuration count.
【請求項3】請求項1または請求項2に記載の情報処理
システムにおいて、 前記論理セル状態メモリの前記論理セルの状態を反映す
る情報は、当該論理セルを含む回路が、前記プログラマ
ブル論理回路上で動作可能であるか否かを示す情報を含
むことを特徴とする情報処理システム。
3. The information processing system according to claim 1, wherein the information that reflects the state of the logic cell in the logic cell state memory is such that a circuit including the logic cell is provided on the programmable logic circuit. An information processing system characterized by including information indicating whether or not it is operable on a computer.
【請求項4】請求項1または請求項2に記載の情報処理
システムにおいて、 前記論理セル状態メモリの各論理セルの状態を反映する
情報を参照して、次の新たな機能回路のコンフィギュレ
ーションが可能な、前記プログラマブル論理回路上の領
域を決定することを特徴とする情報処理システム。
4. The information processing system according to claim 1, wherein the configuration of the next new functional circuit is changed by referring to information reflecting the state of each logic cell in the logic cell state memory. An information processing system, wherein a possible area on the programmable logic circuit is determined.
【請求項5】請求項1、請求項2または請求項3のいず
れかに記載の情報処理システムにおいて、 前記論理セル状態メモリの各論理セルの状態を反映する
情報を参照して、前記プログラマブル論理回路上で動作
可能である回路を検出して、利用することを特徴とする
情報処理システム。
5. The information processing system according to claim 1, wherein said programmable logic logic is referred to by referring to information reflecting a state of each logic cell in said logic cell state memory. An information processing system, wherein a circuit operable on a circuit is detected and used.
【請求項6】請求項1または請求項2に記載の情報処理
システムにおいて、 前記論理セル状態メモリの前記論理セルの状態を反映す
る情報が予め設定されたものに等しくなった時に、前記
プログラマブル論理回路のコンフィギュレーションメモ
リをリセットすることを特徴とする情報処理システム。
6. The information processing system according to claim 1, wherein when the information reflecting the state of the logic cell in the logic cell state memory becomes equal to a preset one, the programmable logic circuit is controlled by the logic cell state memory. An information processing system for resetting a configuration memory of a circuit.
JP25806498A 1998-09-11 1998-09-11 Information processing system Expired - Fee Related JP3636277B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25806498A JP3636277B2 (en) 1998-09-11 1998-09-11 Information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25806498A JP3636277B2 (en) 1998-09-11 1998-09-11 Information processing system

Publications (2)

Publication Number Publication Date
JP2000091435A true JP2000091435A (en) 2000-03-31
JP3636277B2 JP3636277B2 (en) 2005-04-06

Family

ID=17315036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25806498A Expired - Fee Related JP3636277B2 (en) 1998-09-11 1998-09-11 Information processing system

Country Status (1)

Country Link
JP (1) JP3636277B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004506261A (en) * 2000-06-13 2004-02-26 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト Pipeline CT protocol and CT communication
US7148503B2 (en) 2000-10-05 2006-12-12 Matsushita Electric Industrial Co., Ltd. Semiconductor device, function setting method thereof, and evaluation method thereof
WO2007060868A1 (en) * 2005-11-25 2007-05-31 Matsushita Electric Industrial Co., Ltd. Logic block control system and logic block control method
US7283628B2 (en) 2001-11-30 2007-10-16 Analog Devices, Inc. Programmable data encryption engine
JP2010531556A (en) * 2007-05-16 2010-09-24 ローデ ウント シュワルツ ゲゼルシャフト ミット ベシュレンクテル ハフツング ウント コンパニー コマンディット ゲゼルシャフト Method and apparatus for dynamic reconfiguration of a wireless communication system
JP2010211496A (en) * 2009-03-10 2010-09-24 Mitsubishi Electric Corp Dynamic reconfiguration device
US9075669B2 (en) 2012-03-16 2015-07-07 Nec Corporation Time series data processing device, time series data processing method and time series data processing program storage medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004506261A (en) * 2000-06-13 2004-02-26 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト Pipeline CT protocol and CT communication
US7148503B2 (en) 2000-10-05 2006-12-12 Matsushita Electric Industrial Co., Ltd. Semiconductor device, function setting method thereof, and evaluation method thereof
US7283628B2 (en) 2001-11-30 2007-10-16 Analog Devices, Inc. Programmable data encryption engine
WO2007060868A1 (en) * 2005-11-25 2007-05-31 Matsushita Electric Industrial Co., Ltd. Logic block control system and logic block control method
US7579864B2 (en) 2005-11-25 2009-08-25 Panasonic Corporation Logic block control system and logic block control method
JP4806417B2 (en) * 2005-11-25 2011-11-02 パナソニック株式会社 Logical block control system and logical block control method
JP2010531556A (en) * 2007-05-16 2010-09-24 ローデ ウント シュワルツ ゲゼルシャフト ミット ベシュレンクテル ハフツング ウント コンパニー コマンディット ゲゼルシャフト Method and apparatus for dynamic reconfiguration of a wireless communication system
JP2010211496A (en) * 2009-03-10 2010-09-24 Mitsubishi Electric Corp Dynamic reconfiguration device
US9075669B2 (en) 2012-03-16 2015-07-07 Nec Corporation Time series data processing device, time series data processing method and time series data processing program storage medium

Also Published As

Publication number Publication date
JP3636277B2 (en) 2005-04-06

Similar Documents

Publication Publication Date Title
JP3809727B2 (en) Information processing system, circuit information management method, and circuit information storage device
US7281082B1 (en) Flexible scheme for configuring programmable semiconductor devices using or loading programs from SPI-based serial flash memories that support multiple SPI flash vendors and device families
JP2000311156A (en) Reconfigurable parallel computer
EP1615143A2 (en) Operation apparatus and control method
US11301415B2 (en) Interface discovery between partitions of a programmable logic device
US20170207998A1 (en) Channel selection in multi-channel switching network
US7774591B2 (en) Data processing device and data processing method
JP3636277B2 (en) Information processing system
CN110380962B (en) Method and device for configuring route in SRIO switching system
JP3832557B2 (en) Circuit reconfiguration method and information processing system for programmable logic circuit
US7149997B1 (en) Routing with frame awareness to minimize device programming time and test cost
US7725868B1 (en) Method and apparatus for facilitating signal routing within a programmable logic device
JP3489608B2 (en) Programmable logic circuit system and method for reconfiguring programmable logic circuit device
JP4664724B2 (en) Semiconductor integrated circuit device and semiconductor integrated circuit device design apparatus
JP2006302132A (en) Signal processor, reconfigurable logic circuit device and reconfigurable sequential circuit
JP4160956B2 (en) Programmable logic device
JP4853185B2 (en) Information processing system
EP3975427A2 (en) Logic fabric based on microsector infrastructure
JP3707360B2 (en) Circuit function reconfiguration method and programmable logic circuit device
JP6758470B2 (en) Information processing device
Tan et al. A physical resource management approach to minimizing fpga partial reconfiguration overhead
JP3836109B2 (en) Programmable logic circuit control device, programmable logic circuit control method, and program
JP3664215B2 (en) Information processing system
JP3944639B2 (en) Programmable logic device
JP3573193B2 (en) Information processing system

Legal Events

Date Code Title Description
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: 20041215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041228

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080114

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110114

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120114

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120114

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130114

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130114

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140114

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees