JP2007329760A - Programmable logic device, circuit information input controller, and semiconductor device - Google Patents

Programmable logic device, circuit information input controller, and semiconductor device Download PDF

Info

Publication number
JP2007329760A
JP2007329760A JP2006160124A JP2006160124A JP2007329760A JP 2007329760 A JP2007329760 A JP 2007329760A JP 2006160124 A JP2006160124 A JP 2006160124A JP 2006160124 A JP2006160124 A JP 2006160124A JP 2007329760 A JP2007329760 A JP 2007329760A
Authority
JP
Japan
Prior art keywords
circuit
logic
logic circuit
data transfer
circuit 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.)
Abandoned
Application number
JP2006160124A
Other languages
Japanese (ja)
Inventor
Yutaka Yamada
裕 山田
Shinichi Sugano
伸一 菅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2006160124A priority Critical patent/JP2007329760A/en
Publication of JP2007329760A publication Critical patent/JP2007329760A/en
Abandoned legal-status Critical Current

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide a programmable logic device which can make a communication unit of data not to become a bottleneck for the processing performance as a whole, without having to exclusively prepare a special circuit for data transfer, and can simultaneously assure independence of design among circuits which is the same level for recording in a memory. <P>SOLUTION: When a logic circuit A and a logic circuit B continuously execute in a processing circuit unit (S1 to S5), after execution finish of the logic circuit A (Yes in S6), the processing circuit unit switches to a logic circuit T for data transfer, in order to transfer data used by any of the logic circuit A and the logic circuit B by the control of a circuit information input control unit (S7). After execution finishing of data transfer by the logic circuit T ("Yes" in S8), the processing circuit unit switches to the logic circuit B by the control of the circuit information input control unit (S9 to S10). <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、動的にプログラムを変更可能なプログラマブル論理デバイス、回路情報入力制御装置および半導体装置に関する。   The present invention relates to a programmable logic device capable of dynamically changing a program, a circuit information input control device, and a semiconductor device.

動的にプログラムを変更可能なプログラマブル論理デバイスにおいてそれぞれのプログラム間でデータの受け渡しを行なう方法としては、特許文献1に記載の技術がある。この特許文献1に記載の技術によれば、プログラマブル論理デバイスの外部の共有メモリを介してデータの転送を行なうようにしている。より詳細には、1つめの論理回路で出力したデータを、外部の共有メモリへ一度保存して、2つめの論理回路を実行する際に、共有メモリから読み込むことで転送を実現する、というものである。すなわち、外部メモリとのデータの通信が入出力部分に集中することにより、通信部分がシステム全体の性能の支配的な要素となる。   As a method for transferring data between programs in a programmable logic device capable of dynamically changing a program, there is a technique described in Patent Document 1. According to the technique described in Patent Document 1, data is transferred via a shared memory outside the programmable logic device. More specifically, the data output by the first logic circuit is stored once in an external shared memory, and when the second logic circuit is executed, the transfer is realized by reading from the shared memory. It is. That is, when communication of data with the external memory is concentrated on the input / output part, the communication part becomes a dominant element of the performance of the entire system.

上述のように共有メモリを介してデータを転送する手法は、転送データを一度必ずメモリに記録することで回路設計の自由度は高くなるため、それぞれ論理回路で独立した設計が可能であり、論理回路ごとの最適化が容易だが、メモリアクセス速度が律速する。   As described above, the method of transferring data via the shared memory increases the degree of freedom in circuit design by always recording the transfer data in the memory. Therefore, independent design is possible for each logic circuit. Although optimization for each circuit is easy, the memory access speed is limited.

また、特許文献2や非特許文献1によれば、内部データをプログラマブル論理デバイスの内部データを転送する方法として、2つの論理回路で転送するデータの配置を同じメモリ素子に割り当てている。このように2つの論理回路に対して同じ記憶装置を割り当てる場合においては、論理回路の変更を行なうことでデータの転送が可能である。   Further, according to Patent Document 2 and Non-Patent Document 1, as a method for transferring internal data to internal data of a programmable logic device, the arrangement of data transferred by two logic circuits is assigned to the same memory element. In this way, when the same storage device is assigned to two logic circuits, data can be transferred by changing the logic circuit.

特開2001−202236号公報JP 2001-202236 A 特許第3674515号公報Japanese Patent No. 3674515 平成17年8月25日、株式会社オーム社発行 末吉敏則・天野英晴編「リコンフィギャラブルシステム」p189〜p208 「第7章 NECエレクトロニクス社 DRP」August 25, 2005, published by Ohm Co., Ltd. Toshinori Sueyoshi and Hideharu Amano “Reconfigurable System” p189-p208 “Chapter 7 NEC Electronics DRP”

しかしながら、特許文献2や非特許文献1に記載の技術によれば、2つの論理回路でメモリの割り当てが物理的に制限されることから、通信性能の向上を目的とした論理回路の回路動作速度や回路規模などの最適化や、一度設計した回路を部品として別の用途に対して流用する再利用性の向上が困難である。   However, according to the techniques described in Patent Document 2 and Non-Patent Document 1, since the memory allocation is physically limited by two logic circuits, the circuit operation speed of the logic circuit for the purpose of improving communication performance. In addition, it is difficult to optimize the circuit scale and the like, and to improve the reusability of using the designed circuit as a part for other purposes.

本発明は、上記に鑑みてなされたものであって、データ転送用に特別な回路を専用に用意することなく、データの通信部分が処理性能全体のボトルネックとならないようにすることができるとともに、メモリに記録するのと同程度の回路間の設計の独立性を確保することができるプログラマブル論理デバイス、回路情報入力制御装置および半導体装置を提供することを目的とする。   The present invention has been made in view of the above, and it is possible to prevent a data communication portion from becoming a bottleneck of the overall processing performance without preparing a special circuit for data transfer. An object of the present invention is to provide a programmable logic device, a circuit information input control device, and a semiconductor device capable of ensuring the same degree of design independence between circuits as is recorded in a memory.

上述した課題を解決し、目的を達成するために、本発明のプログラマブル論理デバイスは、複数の回路情報を選択的に与えることで複数の論理回路を実現可能な処理回路部と、前記論理回路を実現する回路情報が設定される回路情報設定メモリと、前記処理回路部に信号線を介して接続されており、前記回路情報設定メモリに設定されている前記回路情報に応じて前記処理回路部における前記論理回路の切り替えの制御を行なう回路情報入力制御部と、を備え、前記回路情報入力制御部は、前記処理回路部が第1の論理回路の実行中に第2の論理回路への変更要求を受けた場合、前記処理回路部が第1の論理回路の実行終了後に、前記第1の論理回路と前記第2の論理回路のどちらでも利用するデータの転送を行うためのデータ転送用論理回路に切り替え、前記処理回路部が前記データ転送用論理回路によるデータ転送の実行を終了した後、前記第2の論理回路に切り替える。   In order to solve the above-described problems and achieve the object, a programmable logic device according to the present invention includes a processing circuit unit capable of realizing a plurality of logic circuits by selectively providing a plurality of circuit information, and the logic circuit. A circuit information setting memory in which circuit information to be realized is set is connected to the processing circuit unit via a signal line, and in the processing circuit unit according to the circuit information set in the circuit information setting memory A circuit information input control unit that controls switching of the logic circuit, wherein the circuit information input control unit requests a change to the second logic circuit while the processing circuit unit is executing the first logic circuit. The data transfer logic circuit for transferring data used by either the first logic circuit or the second logic circuit after the processing circuit unit finishes executing the first logic circuit. The switching, after the processing circuit unit finishes execution of the data transfer by the logic circuit for the data transfer is switched to the second logic circuit.

また、本発明の回路情報入力制御装置は、複数の回路情報を選択的に与えることで複数の論理回路を実現可能な処理回路部に信号線を介して接続され、回路情報設定メモリに設定されている前記回路情報に応じて前記処理回路部における前記各論理回路の切り替えの制御を行なう回路情報入力制御装置であって、前記処理回路部が第1の論理回路の実行中に第2の論理回路への変更要求を受けた場合、前記処理回路部が第1の論理回路の実行終了後に、前記第1の論理回路と前記第2の論理回路のどちらでも利用するデータの転送を行うためのデータ転送用論理回路に切り替え、前記処理回路部が前記データ転送用論理回路によるデータ転送の実行を終了した後、前記第2の論理回路に切り替える。   Further, the circuit information input control device of the present invention is connected to a processing circuit unit capable of realizing a plurality of logic circuits by selectively providing a plurality of circuit information via a signal line, and is set in a circuit information setting memory. A circuit information input control device that controls switching of each logic circuit in the processing circuit unit in accordance with the circuit information, wherein the processing circuit unit executes a second logic during execution of the first logic circuit. When receiving a change request to the circuit, the processing circuit unit transfers data used by either the first logic circuit or the second logic circuit after the execution of the first logic circuit is completed. After switching to the data transfer logic circuit, the processing circuit unit switches to the second logic circuit after completing the execution of data transfer by the data transfer logic circuit.

また、本発明の半導体装置は、請求項1ないし6のいずれか一記載のプログラマブル論理デバイスと、このプログラマブル論理デバイスを制御するための制御装置と、前記プログラマブル論理デバイスの処理回路部における各論理回路にかかる回路情報を保存する記憶装置と、を備える。   A semiconductor device according to the present invention includes a programmable logic device according to any one of claims 1 to 6, a control device for controlling the programmable logic device, and each logic circuit in a processing circuit section of the programmable logic device. And a storage device for storing circuit information according to the above.

本発明によれば、データ転送用に特別な回路を専用に用意することなく、データの通信部分が処理性能全体のボトルネックとならないようにすることができるとともに、メモリに記録するのと同程度の回路間の設計の独立性を確保することができるという効果を奏する。   According to the present invention, it is possible to prevent a communication part of data from becoming a bottleneck of the overall processing performance without preparing a special circuit for data transfer, and to the same extent as recording in a memory. The independence of the design between the circuits can be ensured.

以下に添付図面を参照して、この発明にかかるプログラマブル論理デバイス、回路情報入力制御装置および半導体装置の最良な実施の形態を詳細に説明する。   Exemplary embodiments of a programmable logic device, a circuit information input control device, and a semiconductor device according to the present invention will be explained below in detail with reference to the accompanying drawings.

[第1の実施の形態]
本発明の第1の実施の形態を図1ないし図15に基づいて説明する。
[First Embodiment]
A first embodiment of the present invention will be described with reference to FIGS.

[プログラマブル論理デバイスの構成]
図1は、本発明の第1の実施の形態にかかるプログラマブル論理デバイス50を備える半導体装置100を示すブロック図である。図1に示すように、半導体装置100は、動的にプログラムを変更可能なプログラマブル論理デバイス50を備えている。このプログラマブル論理デバイス50には、プログラマブル論理デバイス50を制御するための制御装置であるホストプロセッサ10と、複数の回路情報や処理に用いるデータなどが保存された記憶装置であるメインメモリ20とが接続されている。なお、メインメモリ20に保存される論理回路の回路情報はユーザが予め用意するものであり、各論理回路にはユーザにより一意に定まる識別子が割り当てられている。
[Programmable logic device configuration]
FIG. 1 is a block diagram showing a semiconductor device 100 including a programmable logic device 50 according to the first embodiment of the present invention. As shown in FIG. 1, the semiconductor device 100 includes a programmable logic device 50 that can dynamically change a program. Connected to the programmable logic device 50 are a host processor 10 which is a control device for controlling the programmable logic device 50 and a main memory 20 which is a storage device storing a plurality of circuit information and data used for processing. Has been. The circuit information of the logic circuit stored in the main memory 20 is prepared in advance by the user, and an identifier uniquely determined by the user is assigned to each logic circuit.

プログラマブル論理デバイス50は、図1に示すように、処理回路部51と回路情報入力制御部(回路情報入力制御装置)52とを回路情報入力信号線53により接続して構成されている。   As shown in FIG. 1, the programmable logic device 50 is configured by connecting a processing circuit unit 51 and a circuit information input control unit (circuit information input control device) 52 by a circuit information input signal line 53.

まず、プログラマブル論理デバイス50を構成する処理回路部51について説明する。図2は、処理回路部51の構成を例示的に示す回路図である。図2に示すように、処理回路部51は、ルックアップテーブルなどのロジックブロック(LB)51Lと、データパスを構成するためのスイッチブロック(SB)51Sと、論理回路内部の処理で利用するデータを保存するためのメモリ(MEM)51Mとから構成されている。また、ロジックブロック(LB)51Lと、スイッチブロック(SB)51Sと、メモリ(MEM)51Mとは、回路情報入力信号線53により接続されている。なお、図2中、無表記の四角形もスイッチブロック(SB)51Sと基本的には同じ構造のものである。ただし、図2中、SBと表記されているものとは、入出力のポート数の点で異なるものである。   First, the processing circuit unit 51 constituting the programmable logic device 50 will be described. FIG. 2 is a circuit diagram exemplarily showing the configuration of the processing circuit unit 51. As shown in FIG. 2, the processing circuit unit 51 includes a logic block (LB) 51L such as a look-up table, a switch block (SB) 51S for configuring a data path, and data used for processing inside the logic circuit. And a memory (MEM) 51M for storing. The logic block (LB) 51L, the switch block (SB) 51S, and the memory (MEM) 51M are connected by a circuit information input signal line 53. In FIG. 2, the square not shown has basically the same structure as the switch block (SB) 51S. However, in FIG. 2, what is indicated as SB is different in terms of the number of input / output ports.

図3は、ロジックブロック51Lの構成を例示的に示す模式図である。図3に示すように、ロジックブロック51Lは、真理値表の内容を保存するメモリ51LMと、入力信号をセレクタ信号としてメモリ51LMの内容を出力するセレクタ51LSとから構成されており、任意の論理を実現する。   FIG. 3 is a schematic diagram exemplarily showing the configuration of the logic block 51L. As shown in FIG. 3, the logic block 51L includes a memory 51LM that stores the contents of the truth table, and a selector 51LS that outputs the contents of the memory 51LM using an input signal as a selector signal. Realize.

なお、図3に示すロジックブロック51Lの構成は一例であり、ロジックブロック51Lは、算術演算や論理演算を行うことが出来、処理を定義する情報を保存するメモリを持つ演算装置であれば、形態を特定しない。例えば、プロセッサや命令メモリを持つALU(Arithmetic and Logic Unit)でも良い。また、任意の論理が処理できなくとも良い。   Note that the configuration of the logic block 51L shown in FIG. 3 is an example, and the logic block 51L can be an arithmetic device that can perform arithmetic operations and logical operations and has a memory that stores information defining processing. Is not specified. For example, an ALU (Arithmetic and Logic Unit) having a processor and an instruction memory may be used. Also, it is not necessary to process arbitrary logic.

図4は、スイッチブロック51Sの構成を例示的に示す模式図である。図4に示すように、スイッチブロック51Sは、格子状に配置したスイッチ51SSと、スイッチ51SSのON/OFFを制御するためのメモリ51SMとから構成されている。   FIG. 4 is a schematic diagram exemplarily showing the configuration of the switch block 51S. As shown in FIG. 4, the switch block 51S includes switches 51SS arranged in a grid and a memory 51SM for controlling ON / OFF of the switch 51SS.

なお、図4に示すスイッチブロック51Sの構成は一例であり、スイッチブロック51Sは、経路の情報を保存するメモリと、同時に複数組に対して通信する手段があれば良い。   Note that the configuration of the switch block 51S shown in FIG. 4 is an example, and the switch block 51S only needs to have a memory for storing route information and means for communicating with a plurality of sets at the same time.

すなわち、プログラマブル論理デバイス50の処理回路部51においては、上述したようなロジックブロック51Lのメモリ51LMおよびスイッチブロック51Sのメモリ51SMに対し、外部からの回路情報入力信号線53を介して回路情報を表現したデータを入力することで、ユーザの定義した論理回路を実現する。   That is, in the processing circuit unit 51 of the programmable logic device 50, circuit information is expressed via the circuit information input signal line 53 from the outside with respect to the memory 51LM of the logic block 51L and the memory 51SM of the switch block 51S as described above. By inputting the data, a logic circuit defined by the user is realized.

次に、回路情報入力制御部52について説明する。回路情報入力制御部52は、処理回路部51の実行する論理回路の切り替えの制御を行なうものである。ここで、図5は回路情報入力制御部52の構成を示すブロック図である。図5に示すように、回路情報入力制御部52は、現在実行中の論理回路の識別子を保存するメモリ52Maと、次に実行する論理回路の識別子を保存するメモリ52Mbと、メモリ52Maとメモリ52Mbに保存された識別子から転送用の論理回路の識別子を得るためのテーブル52Tと、論理回路の回路情報が設定される回路情報設定メモリであるコンフィギュレーションメモリ54と、回路情報入力制御部52の状態遷移を制御するコントローラ52Pとから構成されている。   Next, the circuit information input control unit 52 will be described. The circuit information input control unit 52 controls switching of logic circuits executed by the processing circuit unit 51. Here, FIG. 5 is a block diagram showing a configuration of the circuit information input control unit 52. As shown in FIG. 5, the circuit information input control unit 52 includes a memory 52Ma that stores an identifier of a currently executed logic circuit, a memory 52Mb that stores an identifier of a logic circuit to be executed next, a memory 52Ma, and a memory 52Mb. The table 52T for obtaining the identifier of the transfer logic circuit from the identifier stored in the configuration, the configuration memory 54, which is a circuit information setting memory in which circuit information of the logic circuit is set, and the state of the circuit information input control unit 52 And a controller 52P for controlling the transition.

回路情報入力制御部52は、上述した構成により、ホストプロセッサ10から送信される制御命令や変更する論理回路の識別子等の信号に従い、メインメモリ20からコンフィギュレーションメモリ54への論理回路の回路情報の転送と、メインメモリ20からテーブル52Tへのテーブル情報の転送といった初期化処理を行なう。また、回路情報入力制御部52は、コンフィギュレーションメモリ54から処理回路部51への論理回路の回路情報の転送と、処理回路部51の実行する論理回路の切り替えの制御といった論理回路変更処理も行なう。   With the configuration described above, the circuit information input control unit 52 is configured to store circuit information of the logic circuit from the main memory 20 to the configuration memory 54 in accordance with a signal such as a control command transmitted from the host processor 10 or an identifier of the logic circuit to be changed. Initialization processing such as transfer and transfer of table information from the main memory 20 to the table 52T is performed. The circuit information input control unit 52 also performs logic circuit change processing such as transfer of circuit information of the logic circuit from the configuration memory 54 to the processing circuit unit 51 and control of switching of the logic circuit executed by the processing circuit unit 51. .

なお、論理回路変更の際には、回路情報入力信号線53を介して、ロジックブロック51Lのメモリ51LMおよびスイッチブロック51Sのメモリ51SMへとコンフィギュレーションメモリ54から出力する回路情報を書き込む。   When the logic circuit is changed, circuit information output from the configuration memory 54 is written to the memory 51LM of the logic block 51L and the memory 51SM of the switch block 51S via the circuit information input signal line 53.

[プログラマブル論理デバイスでの処理]
次に、プログラマブル論理デバイス50での処理の一例として、以下のようなプログラムを処理する場合について説明する。

for ( int i= 0 ; i<1000 ; i++ ){
// 論理回路Aで処理
z = x + y;
a = IN + b;
b = IN >> z;

for ( int i= 0 ; i<1000 ; i++ ){
// 論理回路Bで処理
OUT = a + b;
c = IN << a;
d = IN + c;
[Processing with programmable logic devices]
Next, as an example of processing in the programmable logic device 50, a case where the following program is processed will be described.

for (int i = 0; i <1000; i ++) {
// Process in logic circuit A z = x + y;
a = IN + b;
b = IN >>z;
}
for (int i = 0; i <1000; i ++) {
// Process with logic circuit B
OUT = a + b;
c = IN <<a;
d = IN + c;
}

上記のプログラムをプログラマブル論理デバイス50の処理回路部51で実行する場合においては、例えば、論理回路Aについては図6に示す論理回路で処理し、論理回路Bについては図7に示す論理回路で処理する。図6に示した論理回路Aと図7に示した論理回路Bとでは、上記プログラム中の変数a,bが、物理的に異なるメモリ51Mにそれぞれ割り当ててある。   When the above program is executed by the processing circuit unit 51 of the programmable logic device 50, for example, the logic circuit A is processed by the logic circuit shown in FIG. 6, and the logic circuit B is processed by the logic circuit shown in FIG. To do. In the logic circuit A shown in FIG. 6 and the logic circuit B shown in FIG. 7, the variables a and b in the program are respectively assigned to physically different memories 51M.

本実施の形態のプログラマブル論理デバイス50においては、このような場合に効率的に処理を行なうことを目的として、図8に示すように、第1の論理回路である論理回路Aと第2の論理回路である論理回路Bの間に第3の論理回路であるデータ転送用の論理回路Tを実行するようにしたものである。   In the programmable logic device 50 according to the present embodiment, for the purpose of efficiently performing processing in such a case, as shown in FIG. A logic circuit T for data transfer, which is a third logic circuit, is executed between the logic circuits B, which are circuits.

図9は、論理回路Tを示す回路図である。図9に示すように、論理回路Tは、論理回路Aと論理回路Bのどちらでも利用するデータの転送を行なう。ここでは、論理回路Tは、変数a,bのみ転送をしており、x,y,zの転送は行なわない。また、転送のみを行なうため、ロジックブロック51Lは利用せずとも論理回路を実現できる点が特徴である。   FIG. 9 is a circuit diagram showing the logic circuit T. As shown in FIG. 9, the logic circuit T transfers data used by both the logic circuit A and the logic circuit B. Here, the logic circuit T transfers only the variables a and b, and does not transfer x, y, and z. In addition, since only transfer is performed, a logic circuit can be realized without using the logic block 51L.

図10は、上記プログラムを実行した場合のタイムチャートである。図10に示すように、論理回路Aと論理回路Bはそれぞれ1000サイクル実行するが、論理回路Tは変数a,bの転送のみを行なうため1サイクルで処理が完了する。   FIG. 10 is a time chart when the above program is executed. As shown in FIG. 10, the logic circuit A and the logic circuit B each execute 1000 cycles, but the logic circuit T completes the processing in one cycle because it only transfers the variables a and b.

[回路情報入力制御部による論理回路の変更方法]
回路情報入力制御部52は、現在実行中の論理回路Aから論理回路Bへの論理回路変更では、まず、現在処理を行なっている論理回路Aと、ホストプロセッサ10に要求された論理回路Bとの間でデータ転送を行なう論理回路Tの回路情報を処理回路部51へと書き込み、論理回路Tを実行する。続いて、論理回路Bの回路情報を処理回路部51へと書き込み、論理回路Tの処理が終了した後、論理回路Bを実行する。論理回路Tの終了の識別は、処理サイクル数を外部から指定しても良いし、処理終了を伝える制御信号を設けても良い。
[Method of changing logic circuit by circuit information input controller]
In changing the logic circuit A from the currently executed logic circuit A to the logic circuit B, the circuit information input control unit 52 first determines the logic circuit A that is currently processing, and the logic circuit B requested by the host processor 10. The circuit information of the logic circuit T that performs data transfer between them is written into the processing circuit unit 51 and the logic circuit T is executed. Subsequently, the circuit information of the logic circuit B is written into the processing circuit unit 51, and after the processing of the logic circuit T is completed, the logic circuit B is executed. For identifying the end of the logic circuit T, the number of processing cycles may be designated from the outside, or a control signal for informing the end of processing may be provided.

図11は、プログラマブル論理デバイス50における論理回路変更処理の流れを示すフローチャートである。以下では、図11のフローチャートの流れに従い、論理回路変更の手順を示す。なお、ホストプロセッサ10から論理回路変更が要求される論理回路の回路情報は予めコンフィギュレーションメモリ54に保存されているものとする。つまり、論理回路変更要求を行なう前に、予め回路情報をコンフィギュレーションメモリ54へと書き込んでおく。   FIG. 11 is a flowchart showing the flow of the logic circuit changing process in the programmable logic device 50. In the following, the procedure for changing the logic circuit is shown in accordance with the flowchart of FIG. It is assumed that circuit information of a logic circuit that is requested to be changed by the host processor 10 is stored in the configuration memory 54 in advance. In other words, before making a logic circuit change request, circuit information is written in the configuration memory 54 in advance.

図11に示すように、プログラマブル論理デバイス50の回路情報入力制御部52は、ホストプロセッサ10から送信されたプログラマブル論理デバイス50の論理回路変更のREQ信号を受信すると、論理回路の変更が可能な状態ならば、ACK信号をホストプロセッサ10へ送信し、論理回路変更を開始する(ステップS1)。論理回路の変更が不可能な状態ならば、変更可能な状態になるまで待機する。ホストプロセッサ10は、回路情報入力制御部52からのACK信号を受信したら、変更後の論理回路の識別子Bを回路情報入力制御部52へと送信する。   As shown in FIG. 11, when the circuit information input control unit 52 of the programmable logic device 50 receives the REQ signal for changing the logic circuit of the programmable logic device 50 transmitted from the host processor 10, the logic circuit can be changed. If so, an ACK signal is transmitted to the host processor 10 to start changing the logic circuit (step S1). If the logic circuit cannot be changed, it waits until it can be changed. Upon receiving the ACK signal from the circuit information input control unit 52, the host processor 10 transmits the changed logic circuit identifier B to the circuit information input control unit 52.

回路情報入力制御部52は、変更後の論理回路の識別子Bを受信すると(ステップS2)、現在実行中の論理回路の識別子Aと変更後の論理回路の識別子Bを入力として、回路情報入力制御部52内のテーブル52Tを引くことで、データ転送用の論理回路の識別子Tを得る(ステップS3)。ただし、リセット直後などにより、現在実行中の論理回路が存在しない場合は、データ転送用の論理回路は必要ない。   Upon receiving the changed logic circuit identifier B (step S2), the circuit information input control unit 52 receives the currently executed logic circuit identifier A and the changed logic circuit identifier B as inputs, and performs circuit information input control. By retrieving the table 52T in the unit 52, the identifier T of the logic circuit for data transfer is obtained (step S3). However, if there is no currently executing logic circuit immediately after resetting, a logic circuit for data transfer is not necessary.

図12は、テーブル52Tの構造を示す模式図である。図12に示すように、テーブル52Tは、現在実行中の論理回路の識別子と、変更後の論理回路の識別子と、データ転送用の論理回路の識別子とを対応付けた構造になっている。   FIG. 12 is a schematic diagram showing the structure of the table 52T. As shown in FIG. 12, the table 52T has a structure in which the identifier of the logic circuit currently being executed, the identifier of the logic circuit after the change, and the identifier of the logic circuit for data transfer are associated with each other.

回路情報入力制御部52は、データ転送用の論理回路の識別子Tを獲得したら、コンフィギュレーションメモリ54から、論理回路Tの回路情報を読み出し、回路情報入力信号線53を介して処理回路部51内部のロジックブロック51Lやスイッチブロック51Sに対して書き込むことにより、論理回路Tの回路情報を転送する(ステップS4)。   When the circuit information input control unit 52 obtains the identifier T of the logic circuit for data transfer, the circuit information input control unit 52 reads the circuit information of the logic circuit T from the configuration memory 54, The circuit information of the logic circuit T is transferred by writing to the logic block 51L and the switch block 51S (step S4).

続いて、回路情報入力制御部52は、コンフィギュレーションメモリ54から、論理回路Bの回路情報を読み出し、回路情報入力信号線53を介して処理回路部51内部のロジックブロック51Lやスイッチブロック51Sに対して書き込むことにより、論理回路Bの回路情報を転送する(ステップS5)。   Subsequently, the circuit information input control unit 52 reads the circuit information of the logic circuit B from the configuration memory 54, and applies the logic block 51 </ b> L and the switch block 51 </ b> S inside the processing circuit unit 51 via the circuit information input signal line 53. The circuit information of the logic circuit B is transferred (step S5).

次いで、現在実行中の論理回路Aの処理が終了した場合には(ステップS6のYes)、論理回路Tの処理の実行を開始する(ステップS7)。   Next, when the processing of the currently executed logic circuit A is completed (Yes in step S6), execution of the processing of the logic circuit T is started (step S7).

論理回路Tの処理が終了すると(ステップS8のYes)、論理回路Bの回路情報の転送が完了したか否かを判断する(ステップS9)。   When the process of the logic circuit T is completed (Yes in step S8), it is determined whether or not the transfer of the circuit information of the logic circuit B is completed (step S9).

論理回路Bの回路情報の転送が完了したと判断すると(ステップS9のYes)、論理回路Bの処理の実行を開始し(ステップS10)、ホストプロセッサ10へ、ACK信号を送信する。   When it is determined that the transfer of the circuit information of the logic circuit B is completed (Yes in step S9), the execution of the process of the logic circuit B is started (step S10), and an ACK signal is transmitted to the host processor 10.

ホストプロセッサ10がACK信号を受信すると、プログラマブル論理デバイス50の論理回路変更は完了する(ステップS11)。   When the host processor 10 receives the ACK signal, the logic circuit change of the programmable logic device 50 is completed (step S11).

このように本実施の形態によれば、処理回路部51において第1の論理回路(論理回路A)と第2の論理回路(論理回路B)とを続けて実行する際に、処理回路部51が第1の論理回路(論理回路A)の実行終了後に、回路情報入力制御部52の制御によって第1の論理回路(論理回路A)と第2の論理回路(論理回路B)のどちらでも利用するデータの転送を行うためのデータ転送用論理回路(論理回路T)に切り替え、処理回路部51がデータ転送用論理回路(論理回路T)によるデータ転送の実行を終了した後、回路情報入力制御部52の制御によって第2の論理回路(論理回路B)に切り替えることにより、データ転送用に特別な回路を専用に用意することなく、データの通信部分が処理性能全体のボトルネックとならないようにすることができるとともに、メモリに記録するのと同程度の回路間の設計の独立性を確保することができる。   As described above, according to the present embodiment, when the first logic circuit (logic circuit A) and the second logic circuit (logic circuit B) are successively executed in the processing circuit unit 51, the processing circuit unit 51 is used. After the execution of the first logic circuit (logic circuit A) is completed, both the first logic circuit (logic circuit A) and the second logic circuit (logic circuit B) are used under the control of the circuit information input control unit 52. Circuit information input control after the processing circuit unit 51 finishes executing data transfer by the data transfer logic circuit (logic circuit T). By switching to the second logic circuit (logic circuit B) under the control of the unit 52, the data communication portion does not become a bottleneck in the overall processing performance without preparing a special circuit for data transfer. You It is possible, it is possible to secure the design of independence between circuits of the same degree as to record in the memory.

ここで、プログラマブル論理デバイス50の第1の変形例について説明する。図13は、第1の変形例のプログラマブル論理デバイス50のロジックブロック51Lを示す模式図である。図13に示すように、ロジックブロック51Lの第1の変形例は、図3で示した構成に加えて、回路情報入力信号線53上にセレクタ61とメモリ62とを備えている。   Here, a first modification of the programmable logic device 50 will be described. FIG. 13 is a schematic diagram showing a logic block 51L of the programmable logic device 50 of the first modification. As shown in FIG. 13, the first modification of the logic block 51L includes a selector 61 and a memory 62 on the circuit information input signal line 53 in addition to the configuration shown in FIG.

セレクタ61は、メモリ51LMへ入力する回路情報を、回路情報入力信号線53上を送信される情報と、メモリ62に保存されている情報とから選択する。メモリ62には、データ転送用の論理回路を実行する際に利用する回路情報が予め入力されている。メモリ62は、ROMを用いて製造時に回路情報を入力しても良いし、RAMを用いてデバイスの起動時に回路情報を入力しても良い。   The selector 61 selects circuit information to be input to the memory 51 LM from information transmitted on the circuit information input signal line 53 and information stored in the memory 62. The memory 62 is preliminarily input with circuit information used when executing a logic circuit for data transfer. The memory 62 may input circuit information at the time of manufacture using a ROM, or may input circuit information at the time of device activation using a RAM.

加えて、セレクタ61の制御信号を回路情報入力信号線63に接続することで、スイッチブロック51Sのみに回路情報を入力する場合に比べ、全ての動作を決定するプログラミングを行なうよりも少ない回路情報でロジックブロック51Lをデータ転送用の論理回路で利用することが可能である。より詳細には、1つのロジックブロック51Lの全ての情報よりも、セレクタ61のセレクタ信号を指定する情報の方が少ないデータサイズで回路情報を表現することができるためである。図13では、メモリ51LM内全てのメモリセルに対して回路情報を直接入力する場合には16ビット必要となるが、メモリ62に予め格納された回路情報を入力するためには信号線63上のレジスタにセレクタ61の制御用のデータを1ビット入力すれば良くなる為、回路情報を削減することができる。   In addition, by connecting the control signal of the selector 61 to the circuit information input signal line 63, the circuit information is less than that for programming to determine all operations, compared to the case where circuit information is input only to the switch block 51S. The logic block 51L can be used in a logic circuit for data transfer. More specifically, this is because the circuit information can be expressed with a smaller data size for information specifying the selector signal of the selector 61 than for all the information of one logic block 51L. In FIG. 13, 16 bits are required when circuit information is directly input to all the memory cells in the memory 51LM. However, in order to input circuit information stored in the memory 62 in advance, the signal information on the signal line 63 is used. Since it is sufficient to input 1-bit data for controlling the selector 61 to the register, circuit information can be reduced.

このようにデータ転送用の論理回路を実現する回路情報が予め入力されているメモリ62を有していることにより、データ転送用の論理回路の回路情報を、メインメモリ20に保存するプログラマブル論理デバイス50全体の回路情報から削減することができるので、回路情報入力に要する時間を削減することができる。   The programmable logic device that stores the circuit information of the logic circuit for data transfer in the main memory 20 by having the memory 62 in which circuit information for realizing the logic circuit for data transfer is input in advance. Since it can be reduced from the circuit information of the entire 50, the time required for circuit information input can be reduced.

次に、プログラマブル論理デバイス50の第2の変形例について説明する。図14は、第2の変形例のプログラマブル論理デバイス50のロジックブロック51Lを示す模式図である。図14に示すように、ロジックブロック51Lの第2の変形例は、メモリ51LMの他に、メモリ51LM’を有しており、一方のメモリ51LMに保存された回路情報の論理回路を実行中に、他方のメモリ51LM’に対して回路情報の入力が可能な構造をとる。   Next, a second modification of the programmable logic device 50 will be described. FIG. 14 is a schematic diagram showing a logic block 51L of the programmable logic device 50 of the second modified example. As shown in FIG. 14, the second modification of the logic block 51L has a memory 51LM ′ in addition to the memory 51LM, and is executing a logic circuit of circuit information stored in one memory 51LM. The other memory 51LM ′ has a structure capable of inputting circuit information.

また、図15は第2の変形例のプログラマブル論理デバイス50のスイッチブロック51Sを示す模式図である。図15に示すように、スイッチブロック51Sの変形例は、図14に示したロジックブロック51Lの変形例と同様に、メモリ51SMの他に、メモリ51SM’を有していて、それぞれ異なる通信経路を有しており、一方のメモリ51SMに保存された回路情報の論理回路を実行中に、他方のメモリ51SM’に対して回路情報の入力が可能な構造をとる。   FIG. 15 is a schematic diagram showing a switch block 51S of the programmable logic device 50 of the second modification. As shown in FIG. 15, the modified example of the switch block 51S has a memory 51SM ′ in addition to the memory 51SM, like the modified example of the logic block 51L shown in FIG. And the circuit information can be input to the other memory 51SM ′ while the logic circuit of the circuit information stored in the one memory 51SM is being executed.

このような、ロジックブロック51L、スイッチブロック51Sを持つ処理回路部51の場合、ある論理回路を実行中に次に実行する論理回路の情報を入力しても実行中の回路動作に影響を与えない。   In the case of such a processing circuit unit 51 having the logic block 51L and the switch block 51S, even if information on a logic circuit to be executed next is input while a certain logic circuit is being executed, the circuit operation being executed is not affected. .

これにより、処理回路部51は、ロジックブロック51Lおよびスイッチブロック51Sに冗長に複数(ここでは、2組)のメモリを持たせることで、データ転送用論理回路(論理回路T)を実行中に、第2の論理回路(論理回路B)を実現する回路情報の入力を可能とすることにより、回路情報入力に要する時間を削減することができる。   Thereby, the processing circuit unit 51 provides a plurality of (here, two sets) memories redundantly in the logic block 51L and the switch block 51S, thereby executing the data transfer logic circuit (logic circuit T). By making it possible to input circuit information for realizing the second logic circuit (logic circuit B), the time required for circuit information input can be reduced.

また、データ転送用論理回路(論理回路T)を実現する回路情報は、通信経路を実現する回路情報のみから構成されていることにより、回路情報入力に要する時間を更に削減することができる。   Further, since the circuit information for realizing the data transfer logic circuit (logic circuit T) is composed of only the circuit information for realizing the communication path, the time required for circuit information input can be further reduced.

[第2の実施の形態]
次に、本発明の第2の実施の形態を図16ないし図19に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to FIGS. The same parts as those in the first embodiment described above are denoted by the same reference numerals, and description thereof is also omitted.

[プログラマブル論理デバイスの構成]
図16は、本発明の第2の実施の形態にかかるプログラマブル論理デバイス150を備える半導体装置200を示すブロック図である。図16に示すように、本実施の形態の半導体装置200は、動的にプログラムを変更可能なプログラマブル論理デバイス150を備えている。このプログラマブル論理デバイス150には、プログラマブル論理デバイス150を制御するためのホストプロセッサ10と、複数の回路情報や処理に用いるデータなどが保存されたメインメモリ20とが接続されている。
[Programmable logic device configuration]
FIG. 16 is a block diagram showing a semiconductor device 200 including the programmable logic device 150 according to the second embodiment of the present invention. As shown in FIG. 16, the semiconductor device 200 of this embodiment includes a programmable logic device 150 that can dynamically change a program. The programmable logic device 150 is connected to a host processor 10 for controlling the programmable logic device 150 and a main memory 20 in which a plurality of circuit information and data used for processing are stored.

プログラマブル論理デバイス150は、図16に示すように、処理回路部151と回路情報入力制御部152とを、2種類の回路情報入力信号線153A,153Bにより接続して構成されている。   As shown in FIG. 16, the programmable logic device 150 is configured by connecting a processing circuit unit 151 and a circuit information input control unit 152 through two types of circuit information input signal lines 153A and 153B.

まず、プログラマブル論理デバイス150を構成する処理回路部151について説明する。図17は、処理回路部151の構成を例示的に示す回路図である。図17に示すように、処理回路部151は、第1の実施の形態の処理回路部51と同じく、ロジックブロック(LB)51Lと、スイッチブロック(SB)51Sと、メモリ(MEM)51Mとから構成されている。ただし、第1の実施の形態の処理回路部51に対しては1種類の回路情報入力信号線53が接続されていたのに対し、処理回路部151にはデータ転送以外に用いるブロックであるロジックブロック51Lにのみ接続されている回路情報入力信号線153Aと、データ転送に用いるブロックであるスイッチブロック51Sにのみ接続されている回路情報入力信号線153Bとの2種類を持つという点が異なる。この構造により、処理回路部151のハードウェア資源を殆ど増加することなく、スイッチブロック51Sとロジックブロック51Lとを独立に制御することが可能となる。   First, the processing circuit unit 151 constituting the programmable logic device 150 will be described. FIG. 17 is a circuit diagram exemplarily showing the configuration of the processing circuit unit 151. As shown in FIG. 17, the processing circuit unit 151 includes a logic block (LB) 51L, a switch block (SB) 51S, and a memory (MEM) 51M, as in the processing circuit unit 51 of the first embodiment. It is configured. However, while one type of circuit information input signal line 53 is connected to the processing circuit unit 51 of the first embodiment, the processing circuit unit 151 is a logic that is a block used for other than data transfer. The circuit information input signal line 153A connected only to the block 51L and the circuit information input signal line 153B connected only to the switch block 51S that is a block used for data transfer are different. With this structure, the switch block 51S and the logic block 51L can be independently controlled without substantially increasing the hardware resources of the processing circuit unit 151.

回路情報入力制御部152は、処理回路部151の実行する論理回路の切り替えの制御を行なうものである。図18は、回路情報入力制御部152の構成を示すブロック図である。図18に示すように、回路情報入力制御部152は、現在実行中の論理回路の識別子を保存するメモリ52Maと、次に実行する論理回路の識別子を保存するメモリ52Mbと、メモリ52Maとメモリ52Mbに保存された識別子から転送用の論理回路の識別子を得るためのテーブル52Tと、論理回路のロジックブロック51Lに関する回路情報を保存するコンフィギュレーションメモリ154Lと、論理回路のスイッチブロック51Sに関する回路情報を保存するコンフィギュレーションメモリ154Sと、回路情報入力制御部52の状態遷移を制御するコントローラ52Pとから構成されている。   The circuit information input control unit 152 controls switching of logic circuits executed by the processing circuit unit 151. FIG. 18 is a block diagram illustrating a configuration of the circuit information input control unit 152. As illustrated in FIG. 18, the circuit information input control unit 152 includes a memory 52Ma that stores an identifier of a currently executed logic circuit, a memory 52Mb that stores an identifier of a logic circuit to be executed next, a memory 52Ma, and a memory 52Mb. The table 52T for obtaining the identifier of the logic circuit for transfer from the identifier stored in the memory, the configuration memory 154L for storing circuit information relating to the logic block 51L of the logic circuit, and the circuit information relating to the switch block 51S of the logic circuit are saved. Configuration memory 154S, and a controller 52P for controlling the state transition of the circuit information input control unit 52.

回路情報入力制御部152は、上述した構成により、ホストプロセッサ10から送信される制御命令や変更する論理回路の識別子等の信号に従い、メインメモリ20からコンフィギュレーションメモリ154Lやコンフィギュレーションメモリ154Sへの論理回路の回路情報の転送と、メインメモリ20からテーブル52Tへのテーブル情報の転送といった初期化処理を行なう。また、回路情報入力制御部152は、コンフィギュレーションメモリ154Lやコンフィギュレーションメモリ154Sから処理回路部151への論理回路の回路情報の転送と、処理回路部151の実行する論理回路の切り替えの制御といった論理回路変更処理も行なう。   With the above-described configuration, the circuit information input control unit 152 performs logic processing from the main memory 20 to the configuration memory 154L or the configuration memory 154S in accordance with a signal such as a control command transmitted from the host processor 10 or an identifier of the logic circuit to be changed. Initialization processing such as transfer of circuit information of the circuit and transfer of table information from the main memory 20 to the table 52T is performed. Further, the circuit information input control unit 152 transfers logic circuit information from the configuration memory 154L or the configuration memory 154S to the processing circuit unit 151 and controls logic circuit switching executed by the processing circuit unit 151. Circuit change processing is also performed.

なお、コンフィギュレーションメモリ154Lの出力は回路情報入力信号線153Aに、コンフィギュレーションメモリ154Sの出力は回路情報入力信号線153Bに、それぞれ接続されている。   The output of the configuration memory 154L is connected to the circuit information input signal line 153A, and the output of the configuration memory 154S is connected to the circuit information input signal line 153B.

[論理回路の変更手順]
回路情報入力制御部152は、現在実行中の論理回路Aから論理回路Bへの論理回路変更では、まず、現在処理を行なっている論理回路Aと、ホストプロセッサ10に要求された論理回路Bとの間でデータ転送を行なう論理回路Tの回路情報を処理回路部151へと書き込み、論理回路Tを実行する。続いて、論理回路Bの回路情報を処理回路部151へと書き込み、論理回路Tの処理が終了した後、論理回路Bを実行する。
[Procedure for changing logic circuit]
When changing the logic circuit A from the currently executed logic circuit A to the logic circuit B, the circuit information input control unit 152 first determines the logic circuit A that is currently performing processing, the logic circuit B requested by the host processor 10, and Circuit information of the logic circuit T that performs data transfer between them is written into the processing circuit unit 151 and the logic circuit T is executed. Subsequently, the circuit information of the logic circuit B is written into the processing circuit unit 151, and after the processing of the logic circuit T is completed, the logic circuit B is executed.

図19は、プログラマブル論理デバイス150における論理回路変更処理の流れを示すフローチャートである。以下では、図19のフローチャートの流れに従い、論理回路変更の手順を示す。ただし、第1の実施の形態と同様に、ホストプロセッサ10から論理回路変更が要求される論理回路の回路情報は予めコンフィギュレーションメモリ154Lやコンフィギュレーションメモリ154Sに保存されているものとする。   FIG. 19 is a flowchart showing the flow of logic circuit change processing in the programmable logic device 150. In the following, the procedure for changing the logic circuit is shown in accordance with the flowchart of FIG. However, as in the first embodiment, it is assumed that circuit information of a logic circuit that is requested to be changed by the host processor 10 is stored in the configuration memory 154L or the configuration memory 154S in advance.

図19に示すように、プログラマブル論理デバイス150の回路情報入力制御部152は、ホストプロセッサ10から送信されたプログラマブル論理デバイス50の論理回路変更のREQ信号を受信すると、論理回路の変更が可能な状態ならば、ACK信号をホストプロセッサ10へ送信し、論理回路変更を開始する(ステップS1)。論理回路の変更が不可能な状態ならば、変更可能な状態になるまで待機する。ホストプロセッサ10は、回路情報入力制御部152からのACK信号を受信したら、変更後の論理回路の識別子Bを回路情報入力制御部152へと送信する。   As illustrated in FIG. 19, when the circuit information input control unit 152 of the programmable logic device 150 receives the REQ signal for changing the logic circuit of the programmable logic device 50 transmitted from the host processor 10, the logic circuit can be changed. If so, an ACK signal is transmitted to the host processor 10 to start changing the logic circuit (step S1). If the logic circuit cannot be changed, it waits until it can be changed. When receiving the ACK signal from the circuit information input control unit 152, the host processor 10 transmits the changed logic circuit identifier B to the circuit information input control unit 152.

回路情報入力制御部152は、変更後の論理回路の識別子Bを受信すると(ステップS2)、現在実行中の論理回路の識別子Aと変更後の論理回路の識別子Bを入力として、回路情報入力制御部152内のテーブル52Tを引くことで、データ転送用の論理回路の識別子Tを得る(ステップS3)。ただし、リセット直後などにより、現在実行中の論理回路が存在しない場合は、データ転送用の論理回路は必要ない。   When the circuit information input control unit 152 receives the identifier B of the changed logic circuit (step S2), the circuit information input control unit 152 receives the identifier A of the currently executed logic circuit and the identifier B of the changed logic circuit as inputs. By retrieving the table 52T in the unit 152, the identifier T of the data transfer logic circuit is obtained (step S3). However, if there is no currently executing logic circuit immediately after resetting, a logic circuit for data transfer is not necessary.

回路情報入力制御部152は、データ転送用の論理回路の識別子Tを獲得したら、コンフィギュレーションメモリ154Sから、論理回路Tのスイッチブロック51Sの回路情報を読み出し、回路情報入力信号線153Bを介して処理回路部151内部のスイッチブロック51Sに対して書き込むことにより、論理回路Tの回路情報を転送する(ステップS21)。   When the circuit information input control unit 152 obtains the identifier T of the logic circuit for data transfer, the circuit information input control unit 152 reads the circuit information of the switch block 51S of the logic circuit T from the configuration memory 154S and processes it via the circuit information input signal line 153B. The circuit information of the logic circuit T is transferred by writing to the switch block 51S in the circuit unit 151 (step S21).

同時に、回路情報入力制御部152は、コンフィギュレーションメモリ154Lから、論理回路Bのロジックブロック51Lの回路情報を読み出し、回路情報入力信号線153Aを介して処理回路部151内部のロジックブロック51Lに対して書き込むことにより、論理回路Bの回路情報を転送する(ステップS22)。   At the same time, the circuit information input control unit 152 reads the circuit information of the logic block 51L of the logic circuit B from the configuration memory 154L, and sends the circuit information to the logic block 51L inside the processing circuit unit 151 via the circuit information input signal line 153A. The circuit information of the logic circuit B is transferred by writing (step S22).

また、回路情報入力制御部152は、ステップS21における論理回路Tの回路情報の転送後、コンフィギュレーションメモリ154Sから、論理回路Bのスイッチブロック51Sの回路情報を読み出し、回路情報入力信号線153Bを介して処理回路部151内部のスイッチブロック51Sに対して書き込むことにより、論理回路Bの回路情報を転送する(ステップS23)。   In addition, after transferring the circuit information of the logic circuit T in step S21, the circuit information input control unit 152 reads the circuit information of the switch block 51S of the logic circuit B from the configuration memory 154S, and passes through the circuit information input signal line 153B. Then, the circuit information of the logic circuit B is transferred by writing to the switch block 51S in the processing circuit unit 151 (step S23).

次いで、現在実行中の論理回路Aの処理が終了した場合には(ステップS6のYes)、処理回路部151のスイッチブロック53Sのみに対し、論理回路Tの処理の実行を開始する(ステップS7)。   Next, when the processing of the currently executed logic circuit A is completed (Yes in step S6), execution of the processing of the logic circuit T is started only for the switch block 53S of the processing circuit unit 151 (step S7). .

論理回路Tの処理が終了すると(ステップS8のYes)、論理回路Bの回路情報の転送が完了したか否かを判断する(ステップS9)。   When the process of the logic circuit T is completed (Yes in step S8), it is determined whether or not the transfer of the circuit information of the logic circuit B is completed (step S9).

論理回路Bの回路情報の転送が完了したと判断すると(ステップS9のYes)、論理回路Bの処理の実行を開始し(ステップS10)、ホストプロセッサ10へ、ACK信号を送信する。   When it is determined that the transfer of the circuit information of the logic circuit B is completed (Yes in step S9), the execution of the process of the logic circuit B is started (step S10), and an ACK signal is transmitted to the host processor 10.

ホストプロセッサ10がACK信号を受信すると、プログラマブル論理デバイス50の論理回路変更は完了する(ステップS11)。   When the host processor 10 receives the ACK signal, the logic circuit change of the programmable logic device 50 is completed (step S11).

このように本実施の形態によれば、処理回路部151と回路情報入力制御部152とを接続する信号線は、処理回路部151のスイッチブロック51Sにのみ接続されている第1の信号線153Bと処理回路部151のロジックブロック51Lにのみ接続されている第2の信号線153Aとで構成されているとともに、回路情報入力制御部152は、回路情報を保存する複数の回路情報を保存するメモリ154L,154Sを有しており、回路情報入力制御部152は、データ転送用論理回路(論理回路T)のスイッチブロック51Sの回路情報を一の回路情報を保存するメモリ154Sから読み出し、第1の信号線153Bを介して処理回路部151の内部のスイッチブロック51Sに対して書き込むことによりデータ転送用論理回路(論理回路T)の回路情報を転送するとともに、第2の論理回路(論理回路B)のロジックブロック51Lの回路情報を他の回路情報を保存するメモリ154Lから読み出し、第2の信号線153Aを介して処理回路部151の内部のロジックブロック51Lに対して書き込むことにより第2の論理回路(論理回路B)の回路情報を転送する。これにより、それぞれで別の制御が可能になる(論理回路Tに必要な情報のみを入力する系統である信号線153Bと、それ以外に入力する系統である153Aから構成される場合には、信号線153Bで論理回路Tの構成情報を入力している間に、153Aで論理回路Bの構成情報の入力ができる)ので、処理回路部151のハードウェア資源を殆ど増加することなく、スイッチブロック51Sとロジックブロック51Lとを独立に制御することができ、処理効率を向上させることができる。   Thus, according to the present embodiment, the signal line connecting the processing circuit unit 151 and the circuit information input control unit 152 is the first signal line 153B connected only to the switch block 51S of the processing circuit unit 151. And the second signal line 153A connected only to the logic block 51L of the processing circuit unit 151, and the circuit information input control unit 152 stores a plurality of circuit information for storing circuit information. The circuit information input control unit 152 reads the circuit information of the switch block 51S of the data transfer logic circuit (logic circuit T) from the memory 154S that stores one circuit information, and the first information By writing to the switch block 51S inside the processing circuit unit 151 via the signal line 153B, a data transfer logic circuit (logic The circuit information of the circuit T) is transferred, and the circuit information of the logic block 51L of the second logic circuit (logic circuit B) is read from the memory 154L for storing other circuit information, and is transmitted via the second signal line 153A. The circuit information of the second logic circuit (logic circuit B) is transferred by writing to the logic block 51L inside the processing circuit unit 151. As a result, different control is possible for each (when the signal line 153B, which is a system for inputting only information necessary for the logic circuit T, and 153A, which is a system for inputting other information, is used as a signal. Since the configuration information of the logic circuit B can be input at 153A while the configuration information of the logic circuit T is input at the line 153B), the switch block 51S does not substantially increase the hardware resources of the processing circuit unit 151. And the logic block 51L can be controlled independently, and the processing efficiency can be improved.

本発明の第1の実施の形態にかかるプログラマブル論理デバイスを備える半導体装置を示すブロック図である。It is a block diagram showing a semiconductor device provided with the programmable logic device concerning a 1st embodiment of the present invention. 処理回路部の構成を例示的に示す回路図である。It is a circuit diagram which shows the composition of a processing circuit part exemplarily. ロジックブロックの構成を例示的に示す模式図である。It is a schematic diagram which shows the structure of a logic block exemplarily. スイッチブロックの構成を例示的に示す模式図である。It is a schematic diagram which shows the structure of a switch block exemplarily. 回路情報入力制御部の構成を示すブロック図である。It is a block diagram which shows the structure of a circuit information input control part. 論理回路Aを示す回路図である。2 is a circuit diagram showing a logic circuit A. FIG. 論理回路Bを示す回路図である。3 is a circuit diagram showing a logic circuit B. FIG. データ転送用の論理回路Tを示す模式図である。It is a schematic diagram showing a logic circuit T for data transfer. 論理回路Tを示す回路図である。2 is a circuit diagram showing a logic circuit T. FIG. プログラムを実行した場合のタイムチャートである。It is a time chart at the time of running a program. プログラマブル論理デバイスにおける論理回路変更処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the logic circuit change process in a programmable logic device. テーブルの構造を示す模式図である。It is a schematic diagram which shows the structure of a table. 第1の変形例のプログラマブル論理デバイスのロジックブロックを示す模式図である。It is a schematic diagram which shows the logic block of the programmable logic device of a 1st modification. 第2の変形例のプログラマブル論理デバイスのロジックブロックを示す模式図である。It is a schematic diagram which shows the logic block of the programmable logic device of a 2nd modification. 第2の変形例のプログラマブル論理デバイスのスイッチブロックを示す模式図である。It is a schematic diagram which shows the switch block of the programmable logic device of a 2nd modification. 本発明の第2の実施の形態にかかるプログラマブル論理デバイスを備える半導体装置を示すブロック図である。It is a block diagram which shows the semiconductor device provided with the programmable logic device concerning the 2nd Embodiment of this invention. 処理回路部の構成を例示的に示す回路図である。It is a circuit diagram which shows the composition of a processing circuit part exemplarily. 回路情報入力制御部の構成を示すブロック図である。It is a block diagram which shows the structure of a circuit information input control part. プログラマブル論理デバイスにおける論理回路変更処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the logic circuit change process in a programmable logic device.

符号の説明Explanation of symbols

10 制御装置
20 記憶装置
50,150 プログラマブル論理デバイス
51,151 処理回路部
52,152 回路情報入力制御部、回路情報入力制御装置
53 信号線
62 メモリ
100,200 半導体装置
153B 第1の信号線
153A 第2の信号線
54,154L,154S 回路情報設定メモリ
A 第1の論理回路
B 第2の論理回路
T データ転送用論理回路
DESCRIPTION OF SYMBOLS 10 Control apparatus 20 Memory | storage device 50,150 Programmable logic device 51,151 Processing circuit part 52,152 Circuit information input control part, Circuit information input control apparatus 53 Signal line 62 Memory 100, 200 Semiconductor device 153B 1st signal line 153A 1st 2 signal lines 54, 154L, 154S circuit information setting memory A first logic circuit B second logic circuit T data transfer logic circuit

Claims (8)

複数の回路情報を選択的に与えることで複数の論理回路を実現可能な処理回路部と、
前記論理回路を実現する回路情報が設定される回路情報設定メモリと、
前記処理回路部に信号線を介して接続されており、前記回路情報設定メモリに設定されている前記回路情報に応じて前記処理回路部における前記論理回路の切り替えの制御を行なう回路情報入力制御部と、
を備え、
前記回路情報入力制御部は、前記処理回路部が第1の論理回路の実行中に第2の論理回路への変更要求を受けた場合、前記処理回路部が第1の論理回路の実行終了後に、前記第1の論理回路と前記第2の論理回路のどちらでも利用するデータの転送を行うためのデータ転送用論理回路に切り替え、前記処理回路部が前記データ転送用論理回路によるデータ転送の実行を終了した後、前記第2の論理回路に切り替える、
ことを特徴とするプログラマブル論理デバイス。
A processing circuit unit capable of realizing a plurality of logic circuits by selectively giving a plurality of circuit information;
Circuit information setting memory in which circuit information for realizing the logic circuit is set;
A circuit information input control unit that is connected to the processing circuit unit via a signal line and controls switching of the logic circuit in the processing circuit unit in accordance with the circuit information set in the circuit information setting memory When,
With
When the processing circuit unit receives a change request to the second logic circuit while the processing circuit unit is executing the first logic circuit, the circuit information input control unit is configured such that after the processing circuit unit finishes executing the first logic circuit, , Switching to a data transfer logic circuit for transferring data used by either the first logic circuit or the second logic circuit, and the processing circuit unit executing data transfer by the data transfer logic circuit After finishing the above, switching to the second logic circuit,
A programmable logic device characterized by that.
前記処理回路部は、前記回路情報設定メモリとは別に、前記データ転送用論理回路で利用可能な一もしくは複数の前記論理回路を実現する前記回路情報が予め入力されているメモリを有している、
ことを特徴とする請求項1記載のプログラマブル論理デバイス。
In addition to the circuit information setting memory, the processing circuit unit includes a memory in which the circuit information for realizing one or a plurality of the logic circuits usable in the data transfer logic circuit is input in advance. ,
The programmable logic device according to claim 1.
前記処理回路部は、ロジックブロックおよびスイッチブロックに冗長に複数個のメモリを持たせることで、前記データ転送用論理回路を実行中に、前記第2の論理回路を実現する前記回路情報の入力を可能とする、
ことを特徴とする請求項1記載のプログラマブル論理デバイス。
The processing circuit unit inputs the circuit information for realizing the second logic circuit while executing the data transfer logic circuit by providing the logic block and the switch block with a plurality of redundant memories. Possible,
The programmable logic device according to claim 1.
前記データ転送用論理回路を実現する回路情報は、通信経路を実現する回路情報のみから構成されている、
ことを特徴とする請求項3記載のプログラマブル論理デバイス。
The circuit information for realizing the data transfer logic circuit is composed only of circuit information for realizing a communication path.
The programmable logic device according to claim 3.
前記処理回路部と前記回路情報入力制御部とを接続する信号線は、前記処理回路部のデータ転送に用いるブロックにのみ接続されている第1の信号線と前記処理回路部のデータ転送以外に用いるブロックにのみ接続されている第2の信号線とで構成されているとともに、前記回路情報設定メモリを複数有しており、
前記回路情報入力制御部は、前記データ転送用論理回路の前記データ転送に用いるブロックの回路情報を一の前記回路情報設定メモリから読み出し、前記第1の信号線を介して前記処理回路部内部の前記データ転送に用いるブロックに対して書き込むことにより前記データ転送用論理回路の回路情報を転送するとともに、前記第2の論理回路の前記データ転送以外に用いるブロックの回路情報を他の前記回路情報設定メモリから読み出し、前記第2の信号線を介して前記処理回路部内部の前記データ転送以外に用いるブロックに対して書き込むことにより前記第2の論理回路の回路情報を転送する、
ことを特徴とする請求項1記載のプログラマブル論理デバイス。
The signal line connecting the processing circuit unit and the circuit information input control unit is not only the first signal line connected to the block used for data transfer of the processing circuit unit and the data transfer of the processing circuit unit. A second signal line connected only to a block to be used, and a plurality of the circuit information setting memories,
The circuit information input control unit reads out circuit information of a block used for the data transfer of the data transfer logic circuit from one circuit information setting memory, and the circuit information input control unit includes an internal circuit of the processing circuit unit via the first signal line. The circuit information of the data transfer logic circuit is transferred by writing to the block used for the data transfer, and the circuit information of the block used for other than the data transfer of the second logic circuit is set to the other circuit information setting. Read circuit information of the second logic circuit by reading from the memory and writing to a block used for other than the data transfer inside the processing circuit unit via the second signal line,
The programmable logic device according to claim 1.
前記データ転送に用いるブロックは前記処理回路部のスイッチブロックであり、前記データ転送以外に用いるブロックは前記処理回路部のロジックブロックである、
ことを特徴とする請求項5記載のプログラマブル論理デバイス。
The block used for the data transfer is a switch block of the processing circuit unit, and the block used for other than the data transfer is a logic block of the processing circuit unit.
The programmable logic device according to claim 5.
複数の回路情報を選択的に与えることで複数の論理回路を実現可能な処理回路部に信号線を介して接続され、回路情報設定メモリに設定されている前記回路情報に応じて前記処理回路部における前記各論理回路の切り替えの制御を行なう回路情報入力制御装置であって、
前記処理回路部が第1の論理回路の実行中に第2の論理回路への変更要求を受けた場合、前記処理回路部が第1の論理回路の実行終了後に、前記第1の論理回路と前記第2の論理回路のどちらでも利用するデータの転送を行うためのデータ転送用論理回路に切り替え、前記処理回路部が前記データ転送用論理回路によるデータ転送の実行を終了した後、前記第2の論理回路に切り替える、
ことを特徴とする回路情報入力制御装置。
The processing circuit unit is connected to a processing circuit unit capable of realizing a plurality of logic circuits by selectively providing a plurality of circuit information via a signal line, and according to the circuit information set in a circuit information setting memory. A circuit information input control device for controlling switching of each of the logic circuits in
When the processing circuit unit receives a request to change to the second logic circuit during execution of the first logic circuit, the processing circuit unit, after completing the execution of the first logic circuit, After switching to a data transfer logic circuit for transferring data to be used by either of the second logic circuits, the processing circuit unit ends execution of data transfer by the data transfer logic circuit, and then the second logic circuit Switch to the logic circuit
A circuit information input control device.
請求項1ないし6のいずれか一記載のプログラマブル論理デバイスと、
このプログラマブル論理デバイスを制御するための制御装置と、
前記プログラマブル論理デバイスの処理回路部における各論理回路にかかる回路情報を保存する記憶装置と、
を備えることを特徴とする半導体装置。
A programmable logic device according to any one of claims 1 to 6;
A control device for controlling the programmable logic device;
A storage device for storing circuit information related to each logic circuit in the processing circuit unit of the programmable logic device;
A semiconductor device comprising:
JP2006160124A 2006-06-08 2006-06-08 Programmable logic device, circuit information input controller, and semiconductor device Abandoned JP2007329760A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006160124A JP2007329760A (en) 2006-06-08 2006-06-08 Programmable logic device, circuit information input controller, and semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006160124A JP2007329760A (en) 2006-06-08 2006-06-08 Programmable logic device, circuit information input controller, and semiconductor device

Publications (1)

Publication Number Publication Date
JP2007329760A true JP2007329760A (en) 2007-12-20

Family

ID=38929923

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006160124A Abandoned JP2007329760A (en) 2006-06-08 2006-06-08 Programmable logic device, circuit information input controller, and semiconductor device

Country Status (1)

Country Link
JP (1) JP2007329760A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5858036B2 (en) * 2011-03-02 2016-02-10 日本電気株式会社 Reconfigurable circuit
US9525422B2 (en) 2013-09-19 2016-12-20 Kabushiki Kaisha Toshiba Reconfigurable semiconductor integrated circuit and electronic device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5858036B2 (en) * 2011-03-02 2016-02-10 日本電気株式会社 Reconfigurable circuit
US9299424B2 (en) 2011-03-02 2016-03-29 Nec Corporation Reconfigurable circuit and method for refreshing reconfigurable circuit
US9525422B2 (en) 2013-09-19 2016-12-20 Kabushiki Kaisha Toshiba Reconfigurable semiconductor integrated circuit and electronic device

Similar Documents

Publication Publication Date Title
JP5301381B2 (en) Memory access device control in data-driven architecture mesh arrays
KR20190044574A (en) Synchronization on a multi-tile processing array
WO2016209406A1 (en) Computer architecture using rapidly reconfigurable circuits and high-bandwidth memory interfaces
JPWO2003023602A1 (en) Data processing system and control method thereof
CN116685943A (en) Self-dispatch threading in programmable atomic units
JP2009252128A (en) Memory control apparatus and method of controlling the same
JP2007133456A (en) Semiconductor device
JP2007329760A (en) Programmable logic device, circuit information input controller, and semiconductor device
JP2008152409A (en) Semiconductor integrated circuit
JP2005209207A (en) Method for managing data in array processor, and array processor
WO2009098737A1 (en) External device access apparatus, its controlling method and system lsi
JP2006338538A (en) Stream processor
US20220121483A1 (en) Thread execution control in a barrel processor
US7949860B2 (en) Multi thread processor having dynamic reconfiguration logic circuit
JP2008090455A (en) Multiprocessor signal processor
JP2007034392A (en) Information processor and data processing method
JP2006236106A (en) Data processor and data processing method
KR100781358B1 (en) System and method for data process
JP4743581B2 (en) Data processing system and control method thereof
JP3861898B2 (en) Data processing system, array type processor, data processing apparatus, computer program, information storage medium
TWI766891B (en) Processor of semiconductor device and method of operating same
JP2006302132A (en) Signal processor, reconfigurable logic circuit device and reconfigurable sequential circuit
JP2008060714A (en) Information processing system
JP2006202271A (en) Stream processor and information processor
JP2000099452A (en) Dma control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080926

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20100106