JP2007141132A - Dynamically-reconfigurable processor and processor control program which controls the same - Google Patents
Dynamically-reconfigurable processor and processor control program which controls the same Download PDFInfo
- Publication number
- JP2007141132A JP2007141132A JP2005336924A JP2005336924A JP2007141132A JP 2007141132 A JP2007141132 A JP 2007141132A JP 2005336924 A JP2005336924 A JP 2005336924A JP 2005336924 A JP2005336924 A JP 2005336924A JP 2007141132 A JP2007141132 A JP 2007141132A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic circuit
- wiring
- arithmetic
- type
- group
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Abstract
Description
本発明は、構成を動的に変更可能な動的再構成可能プロセッサに関し、特に、複数の演算回路と複数の演算回路間配線を構成要素とするプロセッサに適用して有効な技術に関するものである。 The present invention relates to a dynamically reconfigurable processor whose configuration can be dynamically changed, and more particularly to a technique effectively applied to a processor having a plurality of arithmetic circuits and a plurality of wirings between arithmetic circuits as components. .
従来、例えば、特開平11−251442号公報(特許文献1)に記載されたような、複数の処理デバイスと複数の処理デバイス間の相互接続を提供する接続マトリクスを備えた再構成可能プロセッサデバイスがあった。 2. Description of the Related Art Conventionally, there has been a reconfigurable processor device having a connection matrix for providing interconnection between a plurality of processing devices and a plurality of processing devices, as described in, for example, Japanese Patent Application Laid-Open No. 11-251442 (Patent Document 1). there were.
また、従来、異なる種類の演算回路から構成される動的再構成可能プロセッサにおいて、タカユキ スケガワ、ケイスケ イデ、アンド トモヨシ サトウ著、「ダイナミカリー リコンフィギュラブル プロセッサ インプレメンテッド ウィズ アイピーフレックスズ ダップディーエヌエー テクノロジー」、アイアイシーイー トランス インフォメーション アンド システム、ボリューム イー87 ディー、ナンバー8、1997頁から2003頁、オーガスト 2004(Takayuki SUGAWARA、Keisuke IDE、and Tomoyoshi SATO、”Dynamically Reconfigurable Processor Implemented with IPFlex’s DAPDNP Technology”、IEICE TRANS.INF. & SYSTEM、Vol.E87−D、No.8、pp.1997−2003、August 2004)(非特許文献1)に記載されているように、演算回路間配線は均一なものであった。 Also, in a dynamically reconfigurable processor composed of different types of arithmetic circuits, Takayuki Sukegawa, Keisuke Kei and Ando Tomoyoshi Sato, ”IC E Trans Information and System, Volume E 87 D, Number 8, 1997 to 2003, August 2004 (Takayuki SUGAWARA, Keisuke IDE, and Tomoyoshi PTD)“ Dynamically Reconfigurable PD As described in “Hnology”, IEICE TRANS. INF. & SYSTEM, Vol. E87-D, No. 8, pp. 1997-2003, August 2004) (Non-patent Document 1), wiring between arithmetic circuits is uniform. It was something.
このようなプロセッサでは演算回路間配線は均一な2方向のバス、XバスとYバス、から構成される相互接続バスであり、データの転送元演算回路と転送先演算回路間のルーティングはXバスまたはYバスに含まれる配線をスイッチボックスで選択することによって制御する。このスイッチボックスの機能はあらかじめプログラムされたコンフィギュレーションで設定される。 In such a processor, the wiring between the arithmetic circuits is an interconnection bus composed of a uniform two-way bus, an X bus and a Y bus, and the routing between the data transfer source arithmetic circuit and the transfer destination arithmetic circuit is the X bus. Alternatively, control is performed by selecting a wiring included in the Y bus with a switch box. The function of this switch box is set with a pre-programmed configuration.
尚、多数の演算回路が2次元的に配置された動的再構成可能プロセッサにおいて、上記のように異なる種類の演算回路を備えるのは、演算回路の稼働率を向上させるためである。 The reason why the dynamic reconfigurable processor in which a large number of arithmetic circuits are arranged two-dimensionally includes the different types of arithmetic circuits as described above is to improve the operation rate of the arithmetic circuits.
すべての演算回路が同じ機能を持ち、かつ、加減算・乗算・論理演算などの様々な種類の演算に対応している場合、プログラムをこの演算回路アレイにマッピングするのは容易である。しかし、例えば、乗算を少しだけ含み、加減算と論理演算を多く含むプログラムをこのプロセッサにマッピングする場合、大きな面積を必要とする乗算の多くが利用されず、回路面積の利用効率が悪い。LSIの面積増大はLSIの価格増大につながるため、これは好ましくない。そこで、なるべく小さい面積で各演算回路の稼働率を向上させることが重要となる。このためには、ある演算回路は乗算を主体とした演算のみを含み、他の演算回路は加減算と論理演算を主体とするなど、不均一な演算回路から構成される演算回路アレイを備えることが1つの解となる。このようなプロセッサでは、プログラミングの容易さを向上させるために多くの配線を備える場合がある。これによって、必要な演算が離れた位置にあっても豊富な配線を使ってその演算回路を容易に利用できる。
しかしながら、上記従来技術では、例えば、2種類の演算回路AとBから構成され、大半は演算回路Aで、残りは少数の演算回路Bが近接して配置された、不均一な構成の動的再構成可能プロセッサに対して、プログラムを同プロセッサに柔軟にマッピングするためには、均一な演算回路から構成される動的再構成可能プロセッサに比べてより多くの配線を追加することが必要となり、全体として多くの配線面積を消費するという問題点がある。 However, in the above-described prior art, for example, a dynamic structure having a non-uniform configuration, which is composed of two types of arithmetic circuits A and B, most of which are arithmetic circuits A and the remaining few arithmetic circuits B are arranged close to each other. In order to flexibly map a program to a reconfigurable processor, it is necessary to add more wiring than a dynamically reconfigurable processor composed of uniform arithmetic circuits. As a whole, there is a problem that a large wiring area is consumed.
即ち、均一な配線構造にする必要があるため、演算回路Bの周辺だけでなくプロセッサ全体に配線を追加させなければならない。 That is, since it is necessary to have a uniform wiring structure, it is necessary to add wiring not only to the periphery of the arithmetic circuit B but also to the entire processor.
本発明の目的は、少ない配線面積でプログラムを同プロセッサに柔軟にマッピングできるような配線構造を有する動的再構成可能プロセッサおよびそれを制御するプロセッサ制御プログラムを提供することである。 An object of the present invention is to provide a dynamically reconfigurable processor having a wiring structure that can flexibly map a program to the same processor with a small wiring area and a processor control program for controlling the processor.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。 Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.
本発明による動的再構成可能プロセッサは、種類Ai(i=1,2,…,N)の演算回路から構成される演算回路群Uiと、演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、種類Aiの演算回路および種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、演算回路群Vi内の演算回路間配線Xiを、それ以外の演算回路間配線Xiとは異なる演算回路間配線とし、演算回路群Vi内での演算回路間の接続順序を変更するスイッチ群Siとを備えたものである。 The dynamically reconfigurable processor according to the present invention includes an arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N) and some arithmetic circuit groups included in the arithmetic circuit group Ui. And an arithmetic circuit group Vi composed of a type B arithmetic circuit group different from the type Ai arithmetic circuit connected thereto, and an inter-arithmetic circuit wiring Xi connecting the type Ai arithmetic circuit and the type B arithmetic circuit, respectively. The inter-operation circuit wiring Xi in the arithmetic circuit group Vi is set to an inter-operation circuit wiring different from the other arithmetic circuit wiring Xi, and the switch group Si for changing the connection order between the arithmetic circuits in the arithmetic circuit group Vi. It is equipped with.
また、本発明による動的再構成可能プロセッサは、種類Ai(i=1,2,…,N)の演算回路から構成される演算回路群Uiと、演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、種類Aiの演算回路および種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、演算回路群Vi内の演算回路同士を演算回路間配線Xiとは異なる順序で接続する演算回路間配線Xiに追加された配線Ziと、演算回路間配線Xiと配線Ziのどちらか一方を有効にするスイッチ群Siとを備えたものである。 The dynamically reconfigurable processor according to the present invention includes an arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N) and some arithmetic operations included in the arithmetic circuit group Ui. Arithmetic circuit wiring Vi for connecting the arithmetic circuit group Vi composed of the arithmetic circuit group of type B different from the circuit group and the arithmetic circuit of type Ai connected thereto, and the arithmetic circuit group of type Ai and the arithmetic circuit of type B to each other Xi, a wiring Zi added to the inter-arithmetic circuit wiring Xi that connects the arithmetic circuits in the arithmetic circuit group Vi in a different order from the inter-arithmetic circuit wiring Xi, and either the inter-arithmetic circuit wiring Xi or the wiring Zi And a switch group Si that activates.
また、本発明によるプロセッサ制御プログラムは、種類Ai(i=1,2,…,N)の演算回路から構成される演算回路群Uiと、演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、種類Aiの演算回路および種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、演算回路群Vi内の演算回路同士を演算回路間配線Xiとは異なる順序で接続する演算回路間配線Xiに追加された配線Ziと、演算回路間配線Xiと配線Ziのどちらか一方を有効にするスイッチ群Siとを備えた動的再構成可能プロセッサを制御するプロセッサ制御プログラムであって、動的再構成可能プロセッサを動作させる論理的な回路構成の情報に基づいて、スイッチ群Siを制御し、種類Aiの演算回路と種類Bの演算回路の接続順序を変更するものである。 The processor control program according to the present invention includes an arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N), a part of arithmetic circuit groups included in the arithmetic circuit group Ui, An arithmetic circuit group Vi composed of an arithmetic circuit group of type B different from the arithmetic circuit of type Ai connected to them, and an inter-arithmetic circuit wiring Xi connecting the arithmetic circuit of type Ai and the arithmetic circuit of type B; The wiring Zi added to the inter-arithmetic circuit wiring Xi that connects the arithmetic circuits in the arithmetic circuit group Vi in a different order from the inter-arithmetic circuit wiring Xi, and either the inter-arithmetic circuit wiring Xi or the wiring Zi is made effective. A processor control program for controlling a dynamically reconfigurable processor having a switch group Si, and based on information on a logical circuit configuration for operating the dynamically reconfigurable processor Controls switches Si, and changes the connection order of the arithmetic circuit in the arithmetic circuit and the type B type Ai.
また、本発明によるプロセッサ制御プログラムは、種類Ai(i=1,2,…,N)の演算回路から構成される演算回路群Uiと、演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、種類Aiの演算回路および種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、演算回路群Vi内の演算回路同士を演算回路間配線Xiとは異なる順序で接続する演算回路間配線Xiに追加された配線Ziと、演算回路間配線Xiと配線Ziのどちらか一方を有効にするスイッチ群Siと、演算回路群Vi内において演算回路間配線Xiで接続された種類Aiの演算回路と種類Bの演算回路からなる組同士を接続する演算回路間配線を変更するスイッチ群Tiとを備えた動的再構成可能プロセッサを制御するプロセッサ制御プログラムであって、動的再構成可能プロセッサを動作させる論理的な回路構成の情報に基づいて、スイッチ群Siを制御し、種類Aiの演算回路と種類Bの演算回路の接続順序を変更し、スイッチ群Siの制御信号に連動してスイッチ群Tiを制御し、演算回路群Vi内において演算回路間配線Xiで接続された種類Aiの演算回路と種類Bの演算回路からなる組同士を接続する演算回路間配線をスイッチ群Siの状態と連動して変更するものである。 The processor control program according to the present invention includes an arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N), a part of arithmetic circuit groups included in the arithmetic circuit group Ui, An arithmetic circuit group Vi composed of an arithmetic circuit group of type B different from the arithmetic circuit of type Ai connected to them, and an inter-arithmetic circuit wiring Xi connecting the arithmetic circuit of type Ai and the arithmetic circuit of type B; The wiring Zi added to the inter-arithmetic circuit wiring Xi that connects the arithmetic circuits in the arithmetic circuit group Vi in a different order from the inter-arithmetic circuit wiring Xi, and either the inter-arithmetic circuit wiring Xi or the wiring Zi is made effective. A switch group Si, and a switch for changing the inter-arithmetic circuit wiring for connecting a set of the arithmetic circuit of type Ai and the arithmetic circuit of type B connected by the inter-arithmetic circuit wiring Xi in the arithmetic circuit group Vi. A processor control program for controlling a dynamically reconfigurable processor having a group Ti and controlling a switch group Si based on information on a logical circuit configuration for operating the dynamically reconfigurable processor; The connection order of the arithmetic circuit of type Ai and the arithmetic circuit of type B is changed, the switch group Ti is controlled in conjunction with the control signal of the switch group Si, and the arithmetic circuit group Vi is connected by the inter-operation circuit wiring Xi. The inter-arithmetic circuit wiring for connecting the sets of the type Ai arithmetic circuit and the type B arithmetic circuit is changed in conjunction with the state of the switch group Si.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。 Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.
本発明によれば、少ない配線面積増加で、不均一な演算回路群から構成される動的再構成可能プロセッサにプログラムを柔軟にマッピングすることができる。 According to the present invention, a program can be flexibly mapped to a dynamically reconfigurable processor composed of non-uniform arithmetic circuit groups with a small increase in wiring area.
以下、本発明の実施の形態を図面に基づいて詳細に説明する。尚、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
(実施の形態1)
<動的再構成可能プロセッサの概要>
図1により、本発明の実施の形態1に係る動的再構成可能プロセッサの概要について説明する。図1は本発明の実施の形態1に係る動的再構成可能プロセッサの概要を説明するための説明図である。
(Embodiment 1)
<Overview of dynamically reconfigurable processor>
The outline of the dynamically reconfigurable processor according to the first embodiment of the present invention will be described with reference to FIG. FIG. 1 is an explanatory diagram for explaining an outline of a dynamically reconfigurable processor according to the first embodiment of the present invention.
図1において、Ai(i=1,2,…,N)は種類Aiの演算回路、Bは種類Aiの演算回路とは異なる種類Bの演算回路、Uiは種類Aiの演算回路から構成されるいくつかの演算回路群、Viは演算回路群Uiに含まれる一部の演算回路群とそれらに接続される種類Bの演算回路群、Xiは演算回路間配線、Ziは演算回路間配線Xiに追加された配線であって、演算回路群Viにおける演算回路同士を演算回路間配線Xiとは異なる順序で接続する配線、Siは配線Xに追加されたスイッチ群であって、演算回路間配線Xiと配線Ziのどちらか一方を有効にするスイッチである。 In FIG. 1, Ai (i = 1, 2,..., N) is an arithmetic circuit of type Ai, B is an arithmetic circuit of type B different from the arithmetic circuit of type Ai, and Ui is an arithmetic circuit of type Ai. Several arithmetic circuit groups, Vi is a part of arithmetic circuit groups included in the arithmetic circuit group Ui and a type B arithmetic circuit group connected to them, Xi is an inter-arithmetic circuit wiring, Zi is an inter-arithmetic circuit wiring Xi An added wiring, which connects the arithmetic circuits in the arithmetic circuit group Vi in a different order from the inter-arithmetic circuit wiring Xi, Si is a switch group added to the wiring X, and the inter-arithmetic circuit wiring Xi And a switch for enabling either one of the wiring Zi.
本実施の形態の動的再構成可能プロセッサは、図1に示すように、種類Aiの演算回路の中に、種類Aiの演算回路とは異なる種類の種類Bの演算回路が存在し、種類Aiの演算回路と種類Bの演算回路を演算回路間配線Xiによりマトリクス状に配線した構成となっている。 In the dynamically reconfigurable processor according to the present embodiment, as shown in FIG. 1, the type Ai arithmetic circuit includes a type B arithmetic circuit different from the type Ai arithmetic circuit, and the type Ai. The arithmetic circuit of type B and the arithmetic circuit of type B are wired in a matrix by inter-arithmetic circuit wiring Xi.
そして、種類Aiの演算回路と種類Bの演算回路とを接続する演算回路間配線Xiに種類Aiの演算回路と種類Bの演算回路の接続の順序を変更する配線Ziを設け、スイッチ群Siを制御することにより、マトリクス状の配線内において、種類Bの演算回路の接続箇所を変更できるようになっている。 A wiring Zi for changing the order of connection between the type Ai arithmetic circuit and the type B arithmetic circuit is provided in the inter-arithmetic circuit wiring Xi for connecting the type Ai arithmetic circuit and the type B arithmetic circuit, and the switch group Si is provided. By controlling, the connection location of the type B arithmetic circuit can be changed in the matrix wiring.
また、このスイッチ群Siは、例えば動的再構成可能プロセッサを制御するプロセッサ制御プログラムなどの処理により制御されるようになっている。 The switch group Si is controlled by processing such as a processor control program for controlling a dynamically reconfigurable processor, for example.
これにより、種類Aiの演算回路と種類Bの演算回路の順番を必要に応じて変更することができ、少ない配線面積増加で、動的再構成可能プロセッサにプログラムを柔軟にマッピングすることが可能である。 As a result, the order of the arithmetic circuit of type Ai and the arithmetic circuit of type B can be changed as necessary, and the program can be flexibly mapped to the dynamically reconfigurable processor with a small increase in wiring area. is there.
<動的再構成可能プロセッサを含むシステムの構成>
次に、図2〜図4により、本発明の実施の形態1に係る動的再構成可能プロセッサを含むシステム構成について説明する。図2は本発明の実施の形態1に係る動的再構成可能プロセッサを含むシステムの構成を示す構成図、図3は本発明の実施の形態1に係る動的再構成可能プロセッサの配線切り替えスイッチが上側入力を選択した場合の有効配線を示す図、図4は本発明の実施の形態1に係る動的再構成可能プロセッサ配線切り替えスイッチが下側入力を選択した場合の有効配線を示す図である。
<System configuration including dynamically reconfigurable processor>
Next, a system configuration including a dynamically reconfigurable processor according to the first embodiment of the present invention will be described with reference to FIGS. FIG. 2 is a configuration diagram showing a configuration of a system including a dynamically reconfigurable processor according to the first embodiment of the present invention, and FIG. 3 is a wiring changeover switch of the dynamically reconfigurable processor according to the first embodiment of the present invention. 4 is a diagram showing effective wiring when the upper input is selected, and FIG. 4 is a diagram showing effective wiring when the dynamically reconfigurable processor wiring changeover switch according to the first embodiment of the present invention selects the lower input. is there.
図2において、動的再構成可能プロセッサを含むシステムは、CPU10、メインメモリ20、バス30、動的再構成可能プロセッサ100から構成されている。
In FIG. 2, a system including a dynamically reconfigurable processor includes a
動的再構成可能プロセッサ100は、動的再構成可能プロセッサの構成を表す情報であるコンフィギュレーションを管理するコンフィギュレーション管理ユニット40、AとBで示される合計6個の2種類の演算回路501から506が2次元状に並んだ演算回路アレイ部50、種類Aの演算回路501、503、504、506、種類Aとは異なる種類Bの演算回路502、505、その左側に接する2本の矢印で表現される配線上のデータから、いずれか1本の配線上のデータを選択して510の右側に接する配線に流す配線切り替えスイッチ510、演算回路間を縦方向に接続する縦方向演算回路間配線520、増設された配線(点線部)530、演算回路アレイ部50のうち、配線が増設された部分を表す配線増設部(破線部)60、配線切り替えスイッチ503の切り替えを制御する演算回路位置変更配線70、ローカルメモリ80,81、データ配線90から構成されている。
The dynamically
増設された配線530を含む配線増設部60とそれ以外の演算回路アレイ部(演算回路503と506を含む部分)の配線が異なるため、演算回路アレイ部50全体から見て配線が不均一であることがわかる。
Since the wiring of the
図2において、配線切り替えスイッチ510が上側入力を選択した場合の有効配線は、図3に示すように、図2に示した配線530を削除した図になる。この場合、6個の演算回路は単純に縦方向と横方向に接続される。
In FIG. 2, the effective wiring when the
また、図2において、配線切り替えスイッチ510が下側入力を選択した場合の有効配線は、図4に示すように、図1に示した配線530が有効になる。この場合、6個の演算回路の接続の仕方は以下のようになる。
Further, in FIG. 2, as the effective wiring when the
まず、上側の演算回路501、502、503の接続を説明する。
First, connection of the upper
左側のローカルメモリ80から入力されるデータは演算回路502に入力され、次に演算回路501に入力され、最後に演算回路503に入力される。
Data input from the left
下側の演算回路についても同様に、左側のローカルメモリ80から入力されるデータは演算回路505に入力され、次に演算回路504に入力され、最後に演算回路506に入力される。
Similarly for the lower arithmetic circuit, data input from the left
一方、縦方向の接続は配線切り替えスイッチ510の動作によらず、演算回路501と504、502と505が常に接続されている。
On the other hand, in the vertical connection, the
以上より、配線切り替えスイッチ510が下側入力を選択した場合、第1列の演算回路と第2列の演算回路の位置が入れ替わったような接続となることがわかる。
From the above, it can be seen that when the
このことは、プログラマーにとって、種類Bの演算回路が第1列にあるように見えることを意味する。 This means to the programmer that the type B arithmetic circuit appears to be in the first column.
即ち、図3と図4からわかることは、プログラマーは配線切り替えスイッチ510を切り替えることによって、種類Bの演算回路が論理的に第1列にあるようにも第2列にあるようにも制御できる、ということである。
That is, as can be seen from FIGS. 3 and 4, the programmer can control whether the arithmetic circuit of type B is logically in the first column or the second column by switching the
<動的再構成可能プロセッサのプログラムのマッピング>
次に、図5〜図11により、本発明の実施の形態1に係る動的再構成可能プロセッサのプログラムのマッピングについて説明する。図5は本発明の実施の形態1に係る動的再構成可能プロセッサにおいて、プログラマーが選択できる論理的な回路構成の一例を示す図であり、図5(a)は図3で示した配線切り替えスイッチ510が上側入力を選択した場合の回路構成、図5(b)は図3で示した配線切り替えスイッチ510が下側入力を選択した場合の回路構成を示している。図6は本発明の実施の形態1に係る動的再構成可能プロセッサの簡単な表示例を示す図、図7は本発明の実施の形態1に係る動的再構成可能プロセッサ内の演算回路の構造と演算回路内の配線構造の一例を示す図、図8は本発明の実施の形態1に係る動的再構成可能プロセッサのプログラムの一例を示す図、図9は本発明の実施の形態1に係る動的再構成可能プロセッサにおいて図8に示すプログラムに対するコントロール・データフローグラフ(CDFG)を示す図、図10は本発明の実施の形態1に係る動的再構成可能プロセッサにおいて乗算器を2列目にした場合の動的再構成可能プロセッサへの図9のCDFGのマッピング失敗例を示す図、図11は本発明の実施の形態1に係る動的再構成可能プロセッサにおいて乗算器を1列目にした場合の動的再構成可能プロセッサへの図9のCDFGのマッピング例を示す図である。
<Mapping program of dynamically reconfigurable processor>
Next, the program mapping of the dynamically reconfigurable processor according to the first embodiment of the present invention will be described with reference to FIGS. FIG. 5 is a diagram showing an example of a logical circuit configuration that can be selected by the programmer in the dynamically reconfigurable processor according to the first embodiment of the present invention, and FIG. 5A shows the wiring switching shown in FIG. FIG. 5B shows a circuit configuration when the
図5において、種類Aの演算回路では加減算と論理演算、種類Bの演算回路では乗算ができると仮定している。 In FIG. 5, it is assumed that the type A arithmetic circuit can perform addition / subtraction and logical operation, and the type B arithmetic circuit can perform multiplication.
このとき、図5(a)では、入力データに対して加減算を行い、乗算を行い、最後に論理演算(図では右シフト”>>”を表す)を行うような計算式が演算回路アレイに容易にマッピングできることを表している。 At this time, in FIG. 5A, the arithmetic circuit array has a calculation formula for performing addition / subtraction on the input data, performing multiplication, and finally performing a logical operation (representing a right shift “>>” in the figure). This means that it can be easily mapped.
一方、図5(b)では、入力データに対して乗算を行い、加減算を行い、最後に論理演算を行うような計算式が演算回路アレイに容易にマッピングできることを表している。 On the other hand, FIG. 5B shows that a calculation expression that performs multiplication, addition and subtraction on input data, and finally performs a logical operation can be easily mapped to the arithmetic circuit array.
このような動的再構成可能プロセッサの簡単な表示例を図6に示す。わかりやすくするために、演算回路Bは六角形で表示している。また、演算回路間の配線は必要なもの以外は省略して記述する。 A simple display example of such a dynamically reconfigurable processor is shown in FIG. For the sake of clarity, the arithmetic circuit B is represented by a hexagon. The wiring between the arithmetic circuits is omitted except for those that are necessary.
以降では、この図6の演算回路アレイ部50を使って、具体的なプログラムのマッピングを表示し、本実施の形態の有効性を示す。
Hereinafter, a specific program mapping is displayed using the arithmetic
まず、演算回路の内部構造は図7に示すような構成であり、図7(a)は図2での501で代表される種類Aの演算回路を示す。 First, the internal structure of the arithmetic circuit is as shown in FIG. 7, and FIG. 7A shows a type A arithmetic circuit represented by 501 in FIG.
種類Aの演算回路501は、加減算および論理演算を実行可能なALU5010を有し、コンフィギュレーションによって、このうちの1つの演算が選択できる。
The type
メモリ5011には、定数が格納される。尚、定数の設定はコンフィギュレーションで行う。
The
また、スイッチとしては、その左側に接する5本の矢印で表現される配線上のデータから、いずれか2本の配線上のデータを選択して5102の右側に接する配線に流す配線切り替えスイッチ5012、その下側に接する2本の矢印で表現される配線上のデータから、いずれか1本の配線上のデータを選択して5103の上側に接する配線に流す配線切り替えスイッチ5013、その左側に接する4本の矢印で表現される配線上のデータから、いずれか1本の配線上のデータを選択して5104の右側に接する配線に流す配線切り替えスイッチ5014を有している。
Further, as the switch, a
配線切り替えスイッチ5014に接続された配線はスルー配線であり、演算回路501を経由して他の演算回路へデータを転送するために用いる。
The wiring connected to the
これによって、上側1本、左側2本、下側1本の入力のうち、2つを選択して演算を行い、演算結果を、上側1本、右側2本(同じ演算結果の出力)、下側1本のうちの任意の配線に出力可能であると共に、上側1本、左側2本、下側1本の入力のうち、1つを選択し、上側1本、右側2本、下側1本のうちの、演算結果の出力に使う配線以外の任意の配線に出力可能である。 As a result, calculation is performed by selecting two of the inputs of the upper one, the left two, and the lower one, and the calculation results are obtained by calculating the upper one, the right two (output of the same calculation result), the lower It is possible to output to an arbitrary wiring of one side, and one of the inputs of the upper one, the left two, and the lower one is selected, the upper one, the right two, and the lower one It can be output to any wiring of the book other than the wiring used for outputting the calculation result.
また、図7(b)は図2での502で代表される種類Bの演算回路を示す。 FIG. 7B shows a type B arithmetic circuit represented by 502 in FIG.
種類Bの演算回路502は、乗算を実行可能なALU5020を有し、コンフィギュレーションによって、演算が制御される。その他については、図7(a)に示す種類Aの演算回路501の構成を同じである。
The type
また、プログラムの一例としては、図8に示すようなプログラムであり、1行目はforループであり、変数iの値が0から1つずつ増加してN−1(Nはある定数)になるまで、2行目と3行目の処理を繰り返す。 An example of the program is a program as shown in FIG. 8, the first line is a for loop, and the value of the variable i is incremented by 1 from 0 to N−1 (N is a constant). The process of the 2nd line and the 3rd line is repeated until it becomes.
2行目は配列a,とxのi番目の要素の値を乗算した結果と配列bとyのi番目の要素の値を乗算した結果の和をとり、それに1を加えた結果を2で割って配列vに代入することを表している。 The second line calculates the sum of the result of multiplying the values of the i-th element of the arrays a and x and the value of the i-th element of the arrays b and y, and adds 1 to the result to 2 It represents dividing and assigning to the array v.
3行目は配列a,とxのi番目の要素の値を乗算した結果と配列bとyのi番目の要素の値を乗算した結果の差をとり、それに1を加えた結果を2で割って配列zに代入することを表している。 The third row takes the difference between the result of multiplying the values of the i-th element of the arrays a and x and the value of the i-th element of the arrays b and y, and adding 1 to the result to 2 It represents dividing and assigning to the array z.
この図8に示すプログラムに対するコントロール・データフローグラフ(CDFG)は図9に示すようなものとなる。 The control data flow graph (CDFG) for the program shown in FIG. 8 is as shown in FIG.
図9において、各矩形はデータまたは演算を表す。乗算は”*”、加算は”+”、減算は”−”、2で割る除算は1ビット右シフト”>>1”に置き換えて表現している。
矢印はデータの流れを表す。
In FIG. 9, each rectangle represents data or calculation. Multiplication is represented by “*”, addition is “+”, subtraction is “−”, and division by 2 is replaced by 1-bit right shift “>> 1”.
Arrows indicate the flow of data.
配列a,とxのi番目の要素の値を乗算した結果は加算と減算で利用されるので、乗算結果は”+”と”−”の両方で利用される。 Since the result of multiplying the values of the i-th element of the arrays a, and x is used for addition and subtraction, the multiplication result is used for both “+” and “−”.
ここで、図9に示すコントロール・データフローグラフ(CDFG)のマッピングについて説明する。 Here, the mapping of the control data flow graph (CDFG) shown in FIG. 9 will be described.
まず、図10に示すように、乗算器を2列目にした場合の動的再構成可能プロセッサへの図9のCDFGのマッピングでは、2つの乗算と加減算はマッピングされているが、右シフトがマッピングされていないので、マッピングは失敗である。 First, as shown in FIG. 10, in the mapping of the CDFG of FIG. 9 to the dynamically reconfigurable processor when the multiplier is in the second column, two multiplications and addition / subtraction are mapped, but the right shift is The mapping is unsuccessful because it is not mapped.
尚、乗算への入力は左側からの2本の矢印で表されているが、上側の1本はスルー配線を表し、下側の1本はメモリ内に格納された定数0と入力データとの演算結果を右側に出力することを表す。後者はスルー配線を使った場合と同じ結果、即ち、入力データをそのまま転送することを表す。これらによって、スルー配線2本と同様な効果を得ることができる。 Note that the input to the multiplication is represented by two arrows from the left side, but the upper one represents the through wiring, and the lower one represents the constant 0 and the input data stored in the memory. Indicates that the calculation result is output on the right side. The latter represents the same result as when the through wiring is used, that is, the input data is transferred as it is. By these, the same effect as two through wirings can be obtained.
また、加減算を含む演算回路における折れ線の矢印は、左側から入力したデータを下側(加算の場合)または上側(減算の場合)に転送するスルー配線を表す。 A broken line arrow in an arithmetic circuit including addition and subtraction represents a through wiring that transfers data input from the left side to the lower side (in the case of addition) or the upper side (in the case of subtraction).
また、図11に示すように、乗算器を1列目にした場合の動的再構成可能プロセッサへの図9のCDFGのマッピングでは、マッピングは成功となる。 Further, as shown in FIG. 11, the mapping is successful in the mapping of the CDFG of FIG. 9 to the dynamically reconfigurable processor when the multiplier is in the first column.
図10および図11に示すように、配線切り替えスイッチ510を使って論理的な回路構成を変更することによって動的再構成可能プロセッサの柔軟性が増し、種類Bの演算回路が論理的に第1行目にある場合にはマッピングできなかったプログラムが、種類Bの演算回路を論理的に第2行目にすることでマッピングが可能になることがわかる。
As shown in FIGS. 10 and 11, by changing the logical circuit configuration using the
<従来の動的再構成可能プロセッサとの比較>
ここで図12〜図17により、比較例として、従来の動的再構成可能プロセッサに図9のCDFGをマッピングする場合を考察する。図12は比較例としての従来の動的再構成可能プロセッサの一例を示す図、図13は図12における各配線スイッチの構造を示す図、図14は従来の動的再構成可能の簡単な表示例を示す図、図15は図12における演算回路の構造と配線構造を示す図、図16は従来の動的再構成可能プロセッサへの図9のCDFGのマッピング失敗例を示す図、図17は配線数を増加させた従来の動的再構成可能プロセッサへの図9のCDFGのマッピング例を示す図である。
<Comparison with conventional dynamically reconfigurable processors>
Here, with reference to FIGS. 12 to 17, as a comparative example, consider the case where the CDFG of FIG. 12 is a diagram showing an example of a conventional dynamic reconfigurable processor as a comparative example, FIG. 13 is a diagram showing the structure of each wiring switch in FIG. 12, and FIG. 14 is a simple table of conventional dynamic reconfigurable. FIG. 15 is a diagram showing the structure and wiring structure of the arithmetic circuit in FIG. 12, FIG. 16 is a diagram showing an example of mapping failure of the CDFG of FIG. 9 to the conventional dynamic reconfigurable processor, and FIG. It is a figure which shows the example of mapping of CDFG of FIG. 9 to the conventional dynamically reconfigurable processor which increased the number of wiring.
図12において、動的再構成可能プロセッサ100は配線1102で接続されている。
In FIG. 12, the dynamically
配線1102はそれぞれ、スイッチボックス1100を介して接続されており、4つのひし形各々はルーティングスイッチを表し、上下左右のいずれか1つまたは2つの入力を上下左右のいずれかに出力する機能を持つ。詳細は図13で説明する。
Each of the
また、非選択状態も許すスイッチと配線との接合部1101を有し、この接合部1101は2つの配線1102のいずれかに接続された配線を選択することも可能であるが、どちらも選択しないことも可能であるようなスイッチである。
In addition, it has a switch-
演算回路501から506は、プログラマーはスイッチボックス1100内のルーティングスイッチをコンフィギュレーションで設定することによって演算回路アレイ内の配線上のデータの流れを制御し、接合部1101内のスイッチをコンフィギュレーションで設定することによって演算回路と配線上のデータのやり取りを制御する。
In the
図13において、図13(a)は非選択状態も許すスイッチと配線との接合部1101を拡大した図である。接合部1101は、どの配線にも接続されてない端子1200と、スイッチ1201から構成されている。スイッチ1201はコンフィギュレーションによって、配線1202を配線1203、1204のいずれかと接続するか、または、配線1202を端子1200と接続する。後者は配線1202をどの配線にも接続しないことと同じである。
In FIG. 13, FIG. 13 (a) is an enlarged view of the
図13(b)はスイッチボックス1100を拡大した図である。スイッチボックス1100は、スイッチボックス内の1つのルーティングスイッチ1205から構成されている。
FIG. 13B is an enlarged view of the
図13(c)はルーティングスイッチ1205の構成例である。ルーティングスイッチ1205は、図13(a)で示したスイッチ1201と同様な機能を持つスイッチ1206である。ただし、スイッチ1206は1配線と1配線をつなぐか、つながないかを選択する。スイッチ1207は図13(a)で示したスイッチ1201と同じ機能を持つスイッチである。スイッチ1208は右下に接する配線のどちらか一方を必ず選択するスイッチである。
FIG. 13C shows a configuration example of the
ルーティングスイッチ1205によって、上下左右のうちの任意の方向から入力されるデータは、その方向以外の任意の方向に出力できる。また、同時に2つの方向に出力できる場合もある。例えば、左側から入力されるデータは、上側と、右または下側の2方向に出力できる。また、2つのデータ転送を同時にできる場合もある。例えば、左側から入力されるデータを上側に出力することと、右側から入力されるデータを下側に出力することは同時にできる。ただし、左側から入力されるデータを上側以外(右側または下側)に出力する場合は、配線1209を使うため、他のデータ転送を同時に行うことはできない。
The
ここで、図12に示した従来の動的再構成可能の簡単な表示例を図14に示す。図14においては、演算回路間の配線は必要なもの以外は省略して記述する。 Here, FIG. 14 shows a simple display example of the conventional dynamic reconfigurable capability shown in FIG. In FIG. 14, the wiring between the arithmetic circuits is omitted except for necessary ones.
以降では、この図14の演算回路アレイ部50を使って、図9で示されたCDFGをマッピングし、配線1102が2本ではマッピングできないことと、配線1102を3本にするとマッピングできることを示す。
Hereinafter, the CDFG shown in FIG. 9 is mapped by using the arithmetic
図15は図12における演算回路の構造と配線構造を示す。スルー配線がないこと以外、図7で示した演算回路と同じである。 FIG. 15 shows the structure and wiring structure of the arithmetic circuit in FIG. The arithmetic circuit is the same as that shown in FIG. 7 except that there is no through wiring.
従来の動的再構成可能プロセッサへの図9のCDFGのマッピング失敗例としては、図16に示すようなものであり、太線はデータの流れを表す。図16の左端にある4本のデータの流れは、左側ローカルメモリ80から演算回路アレイ50に入力されるデータを表す。これらは各々、上側と下側の配線を通って乗算回路に至る。乗算回路502の計算結果は、上方向と右方向から出力され、各々、演算回路503と506に至る。乗算回路505の計算結果も同様に、下方向と右方向から出力され、各々、演算回路506と503に至る。演算回路503と506における計算結果は各々、上方向と下方向に出力され、各々、演算回路501と504に至る。
An example of the mapping failure of the CDFG of FIG. 9 to the conventional dynamically reconfigurable processor is as shown in FIG. 16, and the bold line represents the flow of data. The four data flows at the left end of FIG. 16 represent data input from the left
上記のようにすべての演算はマッピングされているが、右シフトの結果を右側ローカルメモリ81へ出力するための配線がないので、マッピングは失敗である。
As described above, all operations are mapped, but mapping is unsuccessful because there is no wiring for outputting the result of the right shift to the right
また、従来では、動的再構成可能プロセッサへの図9のCDFGのマッピングを成功させるためには、図17に示すように、配線数を増加させている。 Conventionally, in order to successfully map the CDFG of FIG. 9 to the dynamically reconfigurable processor, the number of wirings is increased as shown in FIG.
図17に示すように、配線1102を3本にすることによって、図16の右シフト結果を右側へ図のように出力することができ、図9のCDFGのマッピングを成功させることができる。
As shown in FIG. 17, by using three
ここで、図12に示した従来技術において用いる配線数と図2で示した本実施の形態における総配線長を比較する。 Here, the number of wirings used in the prior art shown in FIG. 12 is compared with the total wiring length in the present embodiment shown in FIG.
演算回路アレイはm行n列、演算回路は正方形とし、各辺の長さをL、配線1本はbビットの配線から構成されているとする。 It is assumed that the arithmetic circuit array has m rows and n columns, the arithmetic circuit has a square shape, the length of each side is L, and one wiring is composed of b-bit wiring.
従来技術において配線1102はa本とする。従来技術において、演算回路と配線1102を接続する配線、および、演算回路内の配線の長さは無視できるとする。
In the prior art, the number of
このとき、従来技術による総配線長はa*b*L*(2*m*n+m+n)となる。 At this time, the total wiring length according to the prior art is a * b * L * (2 * m * n + m + n).
一方、本発明において配線はa/2本用いるとする。本配線は演算回路内のスルー配線を表す。 On the other hand, in the present invention, a / 2 wirings are used. This wiring represents a through wiring in the arithmetic circuit.
演算回路内のALUの入出力となる配線や演算回路アレイ内の演算回路同士を接続する配線長は無視できるとする。このとき、スルー配線の総配線長はa*b*m*L*n/2となる。また、配線530の総配線長はa*b*m*L*4となる。よって、本発明による総配線長はa*b*m*L*(4+n/2)となる。
It is assumed that the wiring length for connecting the input / output of the ALU in the arithmetic circuit and the arithmetic circuit in the arithmetic circuit array can be ignored. At this time, the total wiring length of the through wiring is a * b * m * L * n / 2. The total wiring length of the
よって、本実施の形態による総配線長の方が、a*b*L*(3*m*(n−2)/2+n)だけ短くなる。これは、即ち、演算回路アレイが2列以上のときは本実施の形態の方が配線面積が小さいことを示す。 Therefore, the total wiring length according to the present embodiment is shortened by a * b * L * (3 * m * (n−2) / 2 + n). This indicates that the wiring area is smaller in the present embodiment when there are two or more arithmetic circuit arrays.
(実施の形態2)
実施の形態2は、実施の形態1において、演算回路501と演算回路504、演算回路502と演算回路505は縦方向の配線520によって接続されていたが、演算回路501を演算回路502または演算回路505と接続できるように、同様にして、演算回路503を演算回路502または演算回路505と接続できるように配線とスイッチを追加したものである。
(Embodiment 2)
In
<動的再構成可能プロセッサの構成>
次に、図18により、本発明の実施の形態2に係る動的再構成可能プロセッサの構成について説明する。図18は本発明の実施の形態2に係る動的再構成可能プロセッサの構成を示す構成図である。
<Configuration of dynamically reconfigurable processor>
Next, the configuration of the dynamically reconfigurable processor according to the second embodiment of the present invention will be described with reference to FIG. FIG. 18 is a configuration diagram showing a configuration of a dynamically reconfigurable processor according to the second embodiment of the present invention.
まず、実施の形態1の図2と本実施の形態の図18の違いを説明する。 First, the difference between FIG. 2 of the first embodiment and FIG. 18 of the present embodiment will be described.
実施の形態1での図2では、演算回路501と演算回路504、演算回路502と演算回路505は縦方向の配線520によって接続されていた。
In FIG. 2 in
本実施の形態の図18では、演算回路501を演算回路502または505と接続できるように、同様にして、演算回路503を演算回路502または505と接続できるように配線とスイッチを追加している。
In FIG. 18 of this embodiment mode, wiring and switches are added in a similar manner so that the
図18においては、動的再構成可能プロセッサは、追加されたスイッチ521と、追加された配線522を有している。追加されたスイッチ521によりスイッチ群Tiを構成している。
In FIG. 18, the dynamically reconfigurable processor includes an added
また、実施の形態1の図2では演算回路位置変更配線70は1本だけであるが、本実施の形態の図18では演算回路位置変更配線70と演算回路位置変更配線74の2本があり、各々、別の設定を行うことができる。
In FIG. 2 of the first embodiment, there is only one arithmetic circuit
配線71は演算回路位置変更配線70から分かれた配線であり、演算回路位置変更配線70と同じ信号を送る。配線73は演算回路位置変更配線74から分かれた配線であり、演算回路位置変更配線74と同じ信号を送る。
The
配線71と配線73からの信号は、排他的論理和を計算する演算器75に入力され、その演算結果は配線72を通じてスイッチ521に入力される。
Signals from the
スイッチ521の近傍に記入された「0」の記号は排他的論理和の演算結果が「0」のときに選択される入力配線を、「1」の記号は排他的論理和の演算結果が「1」のときに選択される入力配線を表す。
The symbol “0” entered in the vicinity of the
即ち、スイッチ521に演算器75から「1」の信号が入力されたときには、本実施の形態で追加された配線522からの信号がスイッチ521から出力される。
That is, when a signal “1” is input from the
これによって、演算回路位置変更配線70と演算回路位置変更配線74に同じ値が流れるときは、縦方向の演算回路は図2と同じ方法で接続される。即ち、演算回路501は演算回路504と接続され、演算回路502は演算回路505と接続される。
Thus, when the same value flows through the arithmetic circuit
この状態では、演算回路位置変更配線70と演算回路位置変更配線74に同じ値が流れるので、演算回路501と演算回路502の接続順と演算回路504と演算回路505の接続順は同じとなる。従って、この状態では常に実施の形態1での接続と同じとなる。
In this state, since the same value flows through the arithmetic circuit
一方、演算回路位置変更配線70と演算回路位置変更配線74に異なる値が流れるときは、縦方向の演算回路は、実施の形態1の図2とは異なる方法で接続される。即ち、演算回路501は演算回路505と接続され、演算回路502は演算回路504と接続される。
On the other hand, when different values flow through the arithmetic circuit
以上によって、例えば、1行目の演算回路を論理的に演算回路501、演算回路502の順に配置し、2行目の演算回路を論理的に演算回路505、演算回路504の順に配置したときでも、縦方向の演算回路間の関係は、演算回路501と演算回路505が接続され、演算回路502と演算回路504が接続され、演算回路が矛盾なく設定される。
Thus, for example, even when the arithmetic circuit in the first row is logically arranged in the order of the
<プログラマーが選択できる論理的な回路構成>
次に、図19により、本発明の実施の形態2に係る動的再構成可能プロセッサにおいてプログラマーが選択できる論理的な回路構成について説明する。図19は本発明の実施の形態2に係る動的再構成可能プロセッサにおいてプログラマーが選択できる論理的な回路構成を示す図である。
<Logical circuit configuration that programmers can select>
Next, a logical circuit configuration that can be selected by the programmer in the dynamically reconfigurable processor according to the second embodiment of the present invention will be described with reference to FIG. FIG. 19 is a diagram showing a logical circuit configuration that can be selected by the programmer in the dynamically reconfigurable processor according to the second embodiment of the present invention.
まず、図18において左右方向の演算器の入れ替えを制御するスイッチ510は演算回路位置変更配線70を流れる値が0のときは上側配線を選択し、1のときは下側配線を選択すると仮定する。
First, in FIG. 18, it is assumed that the
また、配線70と配線74に対して各々、信号「0」と「0」を与えた場合、それらの排他的論理和は「0」となって演算回路501と演算回路504、および、演算回路502と演算回路505が接続されるため、プログラマーから見える論理的な回路構成は図19(a)で与えられる。ここで、種類Aの演算回路では加算を種類Bの演算回路では乗算を選択したと仮定した。
When the signals “0” and “0” are given to the
一方、配線70と配線74に対して各々、信号「1」と「1」を与えた場合、それらの排他的論理和は「0」となって演算回路502と演算回路505、および、演算回路501と演算回路504が接続されるため、プログラマーから見える論理的な回路構成は図19(b)で与えられる。
On the other hand, when signals “1” and “1” are applied to the
次に、配線70と配線74に対して各々、信号「1」と「0」を与えた場合、そららの排他的論理和は「1」となって演算回路502と演算回路504、および、演算回路501と演算回路505が接続されるため、プログラマーから見える論理的な回路構成は図18(c)で与えられる。
Next, when signals “1” and “0” are given to the
最後に、配線70と配線74に対して各々、信号「0」と「1」を与えた場合、そららの排他的論理和は「1」となって演算回路501と演算回路505、および、演算回路502と演算回路504が接続されるため、プログラマーから見える論理的な回路構成は図18(d)で与えられる。
Finally, when signals “0” and “1” are given to the
以上より、本実施の形態の動的再構成可能プロセッサにおいてプログラマーは、図18(a)〜図18(d)で示したような様々な回路構成を設定できるので、プログラミングが非常に容易になる。 As described above, in the dynamically reconfigurable processor of this embodiment, the programmer can set various circuit configurations as shown in FIGS. 18A to 18D, so that programming becomes very easy. .
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
本発明は、構成を動的に変更可能な動的再構成可能プロセッサに関し、特に、複数の演算回路と複数の演算回路間配線を構成要素とするプロセッサに適用可能である。 The present invention relates to a dynamically reconfigurable processor whose configuration can be dynamically changed, and is particularly applicable to a processor having a plurality of arithmetic circuits and a plurality of wirings between arithmetic circuits as components.
Ai(i=1,2,…,N)…種類Aiの演算回路、B…種類Aiの演算回路とは異なる種類Bの演算回路、Ui…種類Aiの演算回路から構成されるいくつかの演算回路群、Wi…演算回路群Uiに含まれる、ある演算回路群、Vi…どのWiにも含まれないUi中の演算回路群とそれらに接続される種類Bの、ある演算回路群、X…演算回路間配線、Zi…配線Xに追加された配線であって、演算回路群Viにおける演算回路同士をXとは異なる順序で接続する配線、Si…配線Xに追加されたスイッチであって、演算回路間配線Xと配線Ziのどちらか一方を有効にするスイッチ、10…CPU、20…メインメモリ、30…バス、40…コンフィギュレーション管理ユニット、50…演算回路アレイ部、501、503、504、506…種類Aの演算回路、502、505…種類Bの演算回路、510…配線切り替えスイッチ、520…縦方向演算回路間配線、530…増設された配線、60…配線増設部、70…演算回路位置変更配線、80…ローカルメモリ、81…ローカルメモリ、90…データ配線、100…動的再構成可能プロセッサ。 Ai (i = 1, 2,..., N)... Type Ai arithmetic circuit, B... Type B arithmetic circuit different from type Ai arithmetic circuit, Ui. A circuit group, Wi: a certain arithmetic circuit group included in the arithmetic circuit group Ui, Vi: an arithmetic circuit group in Ui not included in any Wi, and a certain arithmetic circuit group of type B connected thereto, X ... Wiring between arithmetic circuits, Zi... Wiring added to wiring X, wiring connecting arithmetic circuits in arithmetic circuit group Vi in an order different from X, Si... Switch added to wiring X, Switch for enabling one of the inter-arithmetic circuit wiring X and the wiring Zi, 10..., CPU, 20... Main memory, 30... Bus, 40 .. configuration management unit, 50 ... arithmetic circuit array unit, 501, 503, 504 5 6: Type A arithmetic circuit, 502, 505 ... Type B arithmetic circuit, 510 ... Wiring changeover switch, 520 ... Vertical inter-arithmetic circuit wiring, 530 ... Additional wiring, 60 ... Wiring expansion section, 70 ... Arithmetic circuit Position change wiring, 80 ... local memory, 81 ... local memory, 90 ... data wiring, 100 ... dynamically reconfigurable processor.
Claims (5)
前記演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される前記種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、
前記種類Aiの演算回路および前記種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、
前記演算回路群Vi内の演算回路間配線Xiを、それ以外の前記演算回路間配線Xiとは異なる演算回路間配線とし、前記演算回路群Vi内での演算回路間の接続順序を変更するスイッチ群Siとを備えたことを特徴とする動的再構成可能プロセッサ。 An arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N);
An arithmetic circuit group Vi composed of a part of arithmetic circuit groups included in the arithmetic circuit group Ui and an arithmetic circuit group of type B different from the arithmetic circuit group of type Ai connected thereto;
An inter-arithmetic circuit wiring Xi connecting the arithmetic circuit of the type Ai and the arithmetic circuit of the type B;
Switch for changing the connection order between the arithmetic circuits in the arithmetic circuit group Vi, with the inter-arithmetic circuit wiring Xi in the arithmetic circuit group Vi being different from the other arithmetic circuit wiring Xi. A dynamically reconfigurable processor comprising a group Si.
前記演算回路群Uiに含まれる一部の演算回路群およびそれらに接続される前記種類Aiの演算回路とは異なる種類Bの演算回路群からなる演算回路群Viと、
前記種類Aiの演算回路および前記種類Bの演算回路のそれぞれを接続する演算回路間配線Xiと、
前記演算回路群Vi内の演算回路同士を前記演算回路間配線Xiとは異なる順序で接続する前記演算回路間配線Xiに追加された配線Ziと、
前記演算回路間配線Xiと前記配線Ziのどちらか一方を有効にするスイッチ群Siとを備えたことを特徴とする動的再構成可能プロセッサ。 An arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N);
An arithmetic circuit group Vi composed of a part of arithmetic circuit groups included in the arithmetic circuit group Ui and an arithmetic circuit group of type B different from the arithmetic circuit group of type Ai connected thereto;
An inter-arithmetic circuit wiring Xi connecting the arithmetic circuit of the type Ai and the arithmetic circuit of the type B;
A wiring Zi added to the inter-arithmetic circuit wiring Xi for connecting the arithmetic circuits in the arithmetic circuit group Vi in a different order from the inter-arithmetic circuit wiring Xi;
A dynamically reconfigurable processor comprising a switch group Si that enables one of the inter-operation circuit wiring Xi and the wiring Zi.
前記演算回路群Vi内において前記演算回路間配線Xiで接続された前記種類Aiの演算回路と前記種類Bの演算回路からなる組同士を接続する演算回路間配線を前記スイッチ群Siの状態と連動して変更するスイッチ群Tiを備えたことを特徴とする動的再構成可能プロセッサ。 The dynamically reconfigurable processor of claim 1 or 2,
In the arithmetic circuit group Vi, the inter-arithmetic circuit wiring for connecting the group consisting of the arithmetic circuit of type Ai and the arithmetic circuit of type B connected by the inter-arithmetic wiring Xi is linked to the state of the switch group Si. A dynamically reconfigurable processor characterized by comprising a switch group Ti to be changed.
前記動的再構成可能プロセッサを動作させる論理的な回路構成の情報に基づいて、前記スイッチ群Siを制御し、前記種類Aiの演算回路と前記種類Bの演算回路の接続順序を変更することを特徴とするプロセッサ制御プログラム。 An arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N), a part of arithmetic circuit groups included in the arithmetic circuit group Ui, and the type Ai connected to them. An arithmetic circuit group Vi composed of a type B arithmetic circuit group different from the arithmetic circuit, an arithmetic circuit wiring Xi for connecting the type Ai arithmetic circuit and the type B arithmetic circuit, and the arithmetic circuit group Vi The arithmetic circuit wiring Xi is connected to the arithmetic circuit wiring Xi in a different order from the arithmetic circuit wiring Xi, and either the arithmetic circuit wiring Xi or the wiring Zi is enabled. A processor control program for controlling a dynamically reconfigurable processor comprising a switch group Si,
Controlling the switch group Si based on information on a logical circuit configuration for operating the dynamically reconfigurable processor, and changing a connection order of the type Ai arithmetic circuit and the type B arithmetic circuit. A featured processor control program.
前記動的再構成可能プロセッサを動作させる論理的な回路構成の情報に基づいて、前記スイッチ群Siを制御し、前記種類Aiの演算回路と前記種類Bの演算回路の接続順序を変更し、前記スイッチ群Siの制御信号に連動して前記スイッチ群Tiを制御し、前記演算回路群Vi内において前記演算回路間配線Xiで接続された前記種類Aiの演算回路と前記種類Bの演算回路からなる組同士を接続する演算回路間配線を前記スイッチ群Siの状態と連動して変更することを特徴とするプロセッサ制御プログラム。 An arithmetic circuit group Ui composed of arithmetic circuits of type Ai (i = 1, 2,..., N), a part of arithmetic circuit groups included in the arithmetic circuit group Ui, and the type Ai connected to them. An arithmetic circuit group Vi composed of a type B arithmetic circuit group different from the arithmetic circuit, an arithmetic circuit wiring Xi for connecting the type Ai arithmetic circuit and the type B arithmetic circuit, and the arithmetic circuit group Vi The arithmetic circuit wiring Xi is connected to the arithmetic circuit wiring Xi in a different order from the arithmetic circuit wiring Xi, and either the arithmetic circuit wiring Xi or the wiring Zi is enabled. In the arithmetic circuit group Vi, the inter-arithmetic circuit wiring for connecting the group consisting of the arithmetic circuit of the type Ai and the arithmetic circuit of the type B connected to each other in the arithmetic circuit group Vi is changed. A processor control program for controlling the dynamically reconfigurable processor with a switch group Ti,
Based on information on a logical circuit configuration for operating the dynamically reconfigurable processor, the switch group Si is controlled, the connection order of the type Ai arithmetic circuit and the type B arithmetic circuit is changed, and The switch group Ti is controlled in conjunction with the control signal of the switch group Si, and includes the type Ai arithmetic circuit and the type B arithmetic circuit connected by the inter-arithmetic circuit wiring Xi in the arithmetic circuit group Vi. A processor control program for changing wiring between arithmetic circuits for connecting sets in conjunction with the state of the switch group Si.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005336924A JP2007141132A (en) | 2005-11-22 | 2005-11-22 | Dynamically-reconfigurable processor and processor control program which controls the same |
US11/593,542 US7571198B2 (en) | 2005-11-22 | 2006-11-07 | Dynamically reconfigurable processor and processor control program for controlling the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005336924A JP2007141132A (en) | 2005-11-22 | 2005-11-22 | Dynamically-reconfigurable processor and processor control program which controls the same |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007141132A true JP2007141132A (en) | 2007-06-07 |
Family
ID=38203883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005336924A Ceased JP2007141132A (en) | 2005-11-22 | 2005-11-22 | Dynamically-reconfigurable processor and processor control program which controls the same |
Country Status (2)
Country | Link |
---|---|
US (1) | US7571198B2 (en) |
JP (1) | JP2007141132A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214158A (en) * | 2011-06-08 | 2011-10-12 | 清华大学 | Dynamic reconfigurable processor with full-interconnection routing structure |
CN105447414A (en) * | 2015-10-21 | 2016-03-30 | 清华大学无锡应用技术研究院 | Reconfigurable cryptographic processor |
US10074187B2 (en) | 2014-02-26 | 2018-09-11 | Socionext Inc. | Image recognition system and semiconductor integrated circuit |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100893527B1 (en) * | 2007-02-02 | 2009-04-17 | 삼성전자주식회사 | Method of mapping and scheduling of reconfigurable multi-processor system |
US9052911B2 (en) * | 2012-08-14 | 2015-06-09 | Oracle International Corporation | Mechanism for consistent core hang detection in a a processor core |
KR20150062650A (en) * | 2013-11-29 | 2015-06-08 | 삼성전자주식회사 | Method and apparatus for controlling reconfigurable processor |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69827589T2 (en) | 1997-12-17 | 2005-11-03 | Elixent Ltd. | Configurable processing assembly and method of using this assembly to build a central processing unit |
US6226735B1 (en) * | 1998-05-08 | 2001-05-01 | Broadcom | Method and apparatus for configuring arbitrary sized data paths comprising multiple context processing elements |
US7092980B1 (en) * | 2000-10-26 | 2006-08-15 | Cypress Semiconductor Corporation | Programming architecture for a programmable analog system |
TWI234737B (en) * | 2001-05-24 | 2005-06-21 | Ip Flex Inc | Integrated circuit device |
-
2005
- 2005-11-22 JP JP2005336924A patent/JP2007141132A/en not_active Ceased
-
2006
- 2006-11-07 US US11/593,542 patent/US7571198B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102214158A (en) * | 2011-06-08 | 2011-10-12 | 清华大学 | Dynamic reconfigurable processor with full-interconnection routing structure |
US10074187B2 (en) | 2014-02-26 | 2018-09-11 | Socionext Inc. | Image recognition system and semiconductor integrated circuit |
CN105447414A (en) * | 2015-10-21 | 2016-03-30 | 清华大学无锡应用技术研究院 | Reconfigurable cryptographic processor |
Also Published As
Publication number | Publication date |
---|---|
US20070162529A1 (en) | 2007-07-12 |
US7571198B2 (en) | 2009-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4208577B2 (en) | Integrated circuit device | |
JP2007141132A (en) | Dynamically-reconfigurable processor and processor control program which controls the same | |
US6798239B2 (en) | Programmable gate array having interconnecting logic to support embedded fixed logic circuitry | |
JP2509678B2 (en) | Computer | |
JPH0379126A (en) | Constitutable logical element | |
KR20060131730A (en) | Integrated data processing circuit with a plurality of programmable processors | |
JP4423953B2 (en) | Semiconductor integrated circuit | |
JP2006018453A (en) | Semiconductor device | |
JP5352780B2 (en) | Processor | |
JP2009059346A (en) | Method and device for connecting with a plurality of multimode processors | |
JP2010204904A (en) | Compiling apparatus and compile program | |
JP2004151951A (en) | Array type processor | |
JP4611901B2 (en) | Signal transmission method, bridge unit, and information processing apparatus | |
GB2424503A (en) | Active memory device including a processor array | |
JP3593439B2 (en) | Image processing device | |
US20160086640A1 (en) | Reconfigurable semiconductor integrated circuit and electronic device | |
US8058896B2 (en) | Flexible parallel/serial reconfigurable array configuration scheme | |
JPH0282378A (en) | Event scheduling processing system for parallel computer | |
JP2006259912A (en) | Switch device, interprocessor communication system, control method of interprocessor communication system, and program | |
KR20090116511A (en) | Data processing circuit | |
JP5311382B2 (en) | Reconfigurable integrated circuit | |
EP3690666A1 (en) | Processor element, programmable device, and processor element control method | |
JP3702475B2 (en) | Automatic circuit generator | |
JP2006053687A (en) | Arithmetic unit | |
Young Hur et al. | Partially reconfigurable point-to-point FPGA interconnects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090827 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091126 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091222 |
|
A045 | Written measure of dismissal of application [lapsed due to lack of payment] |
Free format text: JAPANESE INTERMEDIATE CODE: A045 Effective date: 20100427 |