JP2005057451A - Programmable logic circuit - Google Patents
Programmable logic circuit Download PDFInfo
- Publication number
- JP2005057451A JP2005057451A JP2003285468A JP2003285468A JP2005057451A JP 2005057451 A JP2005057451 A JP 2005057451A JP 2003285468 A JP2003285468 A JP 2003285468A JP 2003285468 A JP2003285468 A JP 2003285468A JP 2005057451 A JP2005057451 A JP 2005057451A
- Authority
- JP
- Japan
- Prior art keywords
- data
- logic
- setting information
- unit
- logic circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、プログラムすることにより所定の論理演算の機能を実現できるプログラマブル論理回路に関するものであり、特に、動的に内部構成を変化させながら処理を行うダイナミックプログラマブル論理回路に関するものである。 The present invention relates to a programmable logic circuit capable of realizing a predetermined logic operation function by programming, and more particularly to a dynamic programmable logic circuit that performs processing while dynamically changing an internal configuration.
従来のプログラマブル論理回路として、特許文献1に記載のものがある。この従来のプログラマブル論理回路は、動的相互接続アレーとラッチ回路とダイナミックロジックコアを用いて、具現化すべき回路を段階的に実行する動的再構成可能なフィールドプログラマブルロジックデバイスである。前記従来のプログラマブル論理回路においては、大規模な論理回路を実現する場合に、複数の前記プログラマブル論理回路を直列に接続して、各レベルの論理処理を順番に実行するようにしている。
There exists a thing of
この場合に、前記従来のプログラマブル論理回路においては、回路レベルを示す回路レベルカウンタと内部レベルを示す内部カウンタを用いて、第1のチップの内部レベルが規定のレベルまで達すると、次のチップを動作させるように制御している。すなわち、前記従来のプログラマブル論理回路においては、チップ単位に回路レベルを分割して具現化している。
しかしながら、従来のプログラマブル論理回路においては、より大規模な論理回路を実現しようとすると、処理並列度を1チップに収まる程度に抑える必要があるため、処理時間が増加するという問題がある。また、従来のプログラマブル論理回路においては、処理時間を短縮するため、単一のチップに含まれるダイナミックロジックモジュールの個数を増加させることで処理並列度を高めると、これに比例して動的相互接続アレーの接続点が増加し必要となる設定情報が増大するため、実装回路面積が増大してしまうという問題がある。 However, in the conventional programmable logic circuit, there is a problem that the processing time increases because it is necessary to suppress the processing parallelism to a single chip in order to realize a larger-scale logic circuit. Also, in conventional programmable logic circuits, in order to shorten the processing time, increasing the number of dynamic logic modules contained in a single chip to increase the processing parallelism, the dynamic interconnection is proportional to this. Since the number of array connection points increases and the necessary setting information increases, there is a problem that the mounting circuit area increases.
本発明は、かかる点に鑑みてなされたものであり、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することを目的とする。 The present invention has been made in view of this point, and an object of the present invention is to provide a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed.
請求項1に記載の発明は、並列に接続されている複数の単位論理回路と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。
The invention according to
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項2に記載の発明は、請求項1に記載の発明において、前記論理演算手段が、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号に所定の論理演算処理を行って前記データを生成するロジックセルを具備する構成を採る。 According to a second aspect of the present invention, in the first aspect of the present invention, the logical operation means can change a function based on the first setting information, and a predetermined logical operation process is performed on the input signal. And adopting a configuration including a logic cell for generating the data.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項3に記載の発明は、請求項1又は請求項2に記載の発明において、前記データ処理手段が、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する構成を採る。 According to a third aspect of the present invention, in the first or second aspect of the present invention, the data processing unit is configured to arrange and copy the data from the logical operation unit based on the second setting information. A configuration including a cross-connect switch that performs inversion processing and generates the data is adopted.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項4に記載の発明は、請求項3に記載の発明において、前記データ処理手段が、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する構成を採る。 According to a fourth aspect of the invention, there is provided the flip-flop according to the third aspect, wherein the data processing means holds the data from the cross-connect switch and supplies the data to the output signal control means as the output signal. The structure to do is taken.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項5に記載の発明は、並列に接続されている複数の単位論理回路と、前記複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とを接続する接続手段と、外部から受け取る入力信号を前記複数の単位論理回路に供給する入力信号制御手段と、前記複数の単位論理回路の出力信号を外部に供給する出力信号制御手段と、を具備し、前記複数の単位論理回路の各々は、第1の設定情報に基づいて機能の変更が可能であって前記入力信号又は隣接の前記他の単位論理回路からのデータに所定の論理演算処理を行ってデータを生成する論理演算手段と、第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行ってデータを生成して前記出力信号として前記出力信号制御手段に与えるデータ処理手段と、前記第1及び第2の設定情報を記憶する記憶手段と、を具備し、前記複数の単位論理回路の各々は、前記記憶手段から順次に読み出す前記第1及び第2の設定情報に基づいて前記論理演算手段と前記データ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行う構成を採る。 According to a fifth aspect of the present invention, a plurality of unit logic circuits connected in parallel, one unit logic circuit in the plurality of unit logic circuits, and a physical arrangement with respect to the one unit logic circuit are provided. Connecting means for connecting the other adjacent unit logic circuits, input signal control means for supplying input signals received from the outside to the plurality of unit logic circuits, and output signals of the plurality of unit logic circuits to the outside Output signal control means for supplying each of the plurality of unit logic circuits, the function of which can be changed based on the first setting information, the input signal or the other unit logic circuit adjacent thereto Logic operation means for generating data by performing predetermined logic operation processing on the data from the data, and generating data by performing alignment, duplication and inversion processing of the data from the logic operation means based on second setting information Shi A data processing unit that supplies the output signal control unit as the output signal; and a storage unit that stores the first and second setting information. Each of the plurality of unit logic circuits includes: Based on the first and second setting information read out sequentially, a configuration is adopted in which some or all of the functions of the logical operation means and the data processing means are sequentially changed to operate a predetermined sequential circuit.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項6に記載の発明は、請求項5に記載の発明において、前記論理演算手段が、前記第1の設定情報に基づいて機能の変更が可能であって前記入力信号又は隣接の前記他の単位論理回路からの前記データに所定の論理演算処理を行って前記データを生成するロジックセルを具備する構成を採る。 According to a sixth aspect of the present invention, in the fifth aspect of the present invention, the logical operation means can change a function based on the first setting information, and the input signal or the other of the adjacent signals can be changed. A configuration is adopted in which a logic cell for generating the data by performing a predetermined logical operation process on the data from the unit logic circuit is adopted.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項7に記載の発明は、請求項5又は請求項6に記載の発明において、前記データ処理手段が、前記第2の設定情報に基づいて前記論理演算手段からの前記データの整列と複製と反転処理を行って前記データを生成するクロスコネクトスイッチを具備する構成を採る。 According to a seventh aspect of the invention, in the invention of the fifth or sixth aspect, the data processing means performs alignment and duplication of the data from the logical operation means based on the second setting information. A configuration including a cross-connect switch that performs inversion processing and generates the data is adopted.
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
請求項8に記載の発明は、請求項7に記載の発明において、前記データ処理手段が、前記クロスコネクトスイッチからの前記データを保持し前記出力信号として前記出力信号制御手段に与えるフリップフロップを具備する構成を採る。
The invention according to
この構成によれば、複数の単位論理回路の各々が記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算回路とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 According to this configuration, some or all of the functions of the logic operation circuit and the data processing unit are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage unit. Since a predetermined sequential circuit is operated, a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed can be provided.
以上説明したように、本発明によれば、複数の単位論理回路の各々が、記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算手段とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うため、高い面積効率を有し、大規模な論理回路を高速に実現可能である低価格のプログラマブル論理回路を提供することができる。 As described above, according to the present invention, some or all of the logic operation means and the data processing means are based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage means. Since the functions of these are sequentially changed to operate a predetermined sequential circuit, it is possible to provide a low-cost programmable logic circuit having high area efficiency and capable of realizing a large-scale logic circuit at high speed.
本発明の骨子は、複数の単位論理回路の各々が、記憶手段から順次に読み出す第1及び第2の設定情報に基づいて論理演算手段とデータ処理手段の一部又は全ての機能を順次に変更して所定の順序回路の動作を行うことである。 The essence of the present invention is that a part or all of the functions of the logic operation means and the data processing means are sequentially changed based on the first and second setting information that each of the plurality of unit logic circuits sequentially reads from the storage means. Thus, the operation of a predetermined sequential circuit is performed.
以下、本発明の実施の形態について、図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
(実施の形態1)
図1は、本発明の実施の形態1に係るプログラマブル論理回路の構成を示すブロック図である。
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of a programmable logic circuit according to
図1に示すように、本発明の実施の形態1に係るプログラマブル論理回路100は、複数のプロセッサエレメント101、複数のメモリ装置102、入出力制御部103、制御バス104、入力バス105及び出力バス106を具備している。プログラマブル論理回路100には、クロック生成回路107及びユーザー回路108が接続されている。
As shown in FIG. 1, the
複数のプロセッサエレメント101と複数のメモリ装置102とは、1対1で接続されている。1対1で接続されているプロセッサエレメント101とメモリ装置102とは、単位論理回路を構成している。複数の単位論理回路は、並列に接続されている。
The plurality of
複数のプロセッサエレメント101の各々は、1次元的に1列状に配置されており、物理配置上で隣接する2つの他のプロセッサエレメント101と接続線101aで接続されている。すなわち、複数の単位論理回路は、1次元的に1列状に配置されており、複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とは、接続線101aで接続されている。
Each of the plurality of
プロセッサエレメント101は、接続線を用いて隣接する2つの他のプロセッサエレメント101との間でデータの受け渡しを行う。
The
入出力制御部103は、外部とのインターフェース回路となっており、ユーザー回路108と接続されている。制御バス104は、入出力制御部103及びプロセッサエレメント101と接続されている。制御バス104は、初期化及び起動等の制御信号を入出力制御部103から受け取り、各プロセッサエレメント101に転送する。入力バス105は、入出力制御部103及びプロセッサエレメント101と接続されている。入力バス105は、論理演算に用いるデータを入出力制御部103から受け取り、各プロセッサエレメント101に転送する。
The input /
出力バス106は、入出力制御部103及びプロセッサエレメント101と接続されている。出力バス106は、演算結果のデータをプロセッサエレメント101から受け取り、入出力制御部103に転送する。クロック生成回路107は、内部クロック信号109及びユーザークロック信号110を生成する。ユーザークロック信号110は、ユーザー回路108及び入出力制御部103で使用される。内部クロック信号109は、ユーザークロック信号110の逓倍の周波数となっており、プログラマブル論理回路100の内部で使用される。
The
次に、本プログラマブル論理回路100の機能に関して、図面を参照して説明する。
Next, functions of the
図1において、プログラマブル論理回路100が行う論理演算処理の内容は、メモリ装置102に設定情報として保持されている。各プロセッサエレメント101は、メモリ装置102の設定情報を順次に読み出して、対応する論理演算処理を行う。プログラマブル論理回路100は、ユーザー回路108からユーザークロック信号110に同期して起動信号及び論理演算に用いるデータを受ける。これから一定時間経過後に、プログラマブル論理回路100は、論理演算処理後のデータをユーザー回路108にユーザークロック信号110に同期して与える。
In FIG. 1, the contents of the logical operation processing performed by the
次に、プログラマブル論理回路100の内部ブロックの機能に関して、図面を参照して説明する。
Next, functions of internal blocks of the
図1において、各メモリ装置102には、隣接のプロセッサエレメント101の設定情報が格納されている。メモリ装置102は、プロセッサエレメント101から制御信号とメモリアドレスが入力されると、アドレスで指定された設定情報をプロセッサエレメント101に与える。プロセッサエレメント101は、この設定情報に基づいて、実行する処理内容を決定する。
In FIG. 1, each
プロセッサエレメント101は、制御バス104から初期化信号が入力されると、メモリ装置102の特定のアドレスを読み出し、入力される読み出しデータから設定情報の格納位置アドレスを抽出して保持する。この格納位置アドレスは、設定情報の先頭位置を示すアドレスである。
When an initialization signal is input from the
また、プロセッサエレメント101は、制御バス104から起動信号が入力されると、メモリ装置102の前記保持した格納位置アドレスから順次に設定情報を読み出す。さらに、プロセッサエレメント101は、入力バス105及び隣接のプロセッサエレメント101から論理処理用のデータを受け取り、設定情報に基づいてデータの論理処理を行った後にデータの整列、複製及び反転処理を行い、かつ、処理後のデータの保持を行う。また、プロセッサエレメント101は、保持した処理後のデータを出力バス106及び隣接のプロセッサエレメント101に出力する。
Further, when an activation signal is input from the
このようにして、複数のプロセッサエレメント101は、データの受け渡しを行う。入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した起動信号及び論理処理用データを受け取り、このデータを内部クロック信号109に同期させて入力バス105に与える。また、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した初期化信号を受け取り、このデータを内部クロック信号109に同期させて入力バス105に出力する。また、入出力制御部103は、出力バス106から内部クロック信号109に同期した論理処理後のデータを受け取り、このデータをユーザークロック信号110に同期させてユーザー回路108に出力する。このようにして、入出力制御部103は、ユーザー回路108との制御信号、論理処理用及び処理結果のデータの受け渡しを行う。
In this way, the plurality of
次に、プログラマブル論理回路100の内部のプロセッサエレメント101の構成について、図面を参照して説明する。
Next, the configuration of the
図2は、プロセッサエレメント101の構成を示している。図2に示すように、プロセッサエレメント101は、ロジックエレメント200及びメモリ制御部201を具備している。プロセッサエレメント101は、メモリ装置102、制御バス104、入力バス105及び出力バス106と接続されている。メモリ制御部201は、メモリ装置102、ロジックエレメント200及び制御バス104と接続されている。ロジックエレメント200は、隣接のプロセッサセレメント101のロジックエレメント200及びメモリ制御部201、入力バス105及び出力バス106と接続されている。
FIG. 2 shows the configuration of the
次に、プロセッサエレメント101の機能について、図面を参照して説明する。図2において、メモリ制御部201は、制御バス104から初期化信号を受けると、前述した格納位置アドレスの抽出及び保持の処理を行う。メモリ制御部201は、制御バス104から起動信号が入力されると、メモリ装置102の前記保持した格納位置アドレスから順次に設定情報を読み出し、ロジックエレメント200に転送する。
Next, functions of the
ロジックエレメント200は、入力バス105及び隣接のプロセッサエレメント101からデータを受け取り、メモリ制御部201から転送される設定情報に基づいてデータの論理処理を行った後にデータの整列、複製及び反転処理を行い、かつ、処理後のデータの保持を行う。また、ロジックエレメント200は、メモリ制御部201から転送される設定情報に基づいて、出力バス106及び隣接のプロセッサエレメント101に処理後のデータを出力する。
The
次に、プロセッサエレメント101の内部のロジックエレメント200の構成及び設定情報の構成について、図面を参照して説明する。
Next, the configuration of the
図3には、ロジックエレメント200の構成が示されている。図4には、設定情報とメモリ装置102の構成が示されている。
FIG. 3 shows the configuration of the
図3において、ロジックエレメント200は、ロジックセル(論理演算回路)300、クロスコネクトスイッチ(データ処理装置)301及びフリップフロップ302を具備している。ロジックエレメント200は、メモリ制御部201、入力バス105及び出力バス106と接続されている。ロジックセル300は、メモリ制御部201、フリップフロップ302及びクロスコネクトスイッチ301と接続されている。クロスコネクトスイッチ301は、メモリ制御部201、ロジックセル300、フリップフロップ302、入力バス105及び隣接のロジックエレメント200の内部のロジックセル300と接続されている。フリップフロップ302は、ロジックセル300、クロスコネクトスイッチ301及び出力バス106と接続されている。
In FIG. 3, the
なお、ロジックセル300は、論理演算回路を構成している。また、クロスコネクトスイッチ301は、データ処理装置を構成している。また、クロスコネクトスイッチ301及びフリップフロップ302は、データ処理装置を構成している。
The
図4は、メモリ装置の構成を示している。図4において、メモリ装置102の内部の先頭部分には、設定情報の格納アドレス情報が格納されている。メモリ装置102の内部における先頭部分以外の特定領域には、設定情報が格納されている。
FIG. 4 shows the configuration of the memory device. In FIG. 4, the storage address information of the setting information is stored at the top portion inside the
図4において、ビット25〜28はロジックセル300の設定情報であり、ビット0〜24はクロスコネクトスイッチ301の接続情報である。ビット0〜24は、5ビット単位にクロスコネクトスイッチ301の5つの出力に対応する4ビットの接続情報及び1ビットの反転制御情報から構成されている。
In FIG. 4, bits 25 to 28 are setting information of the
次に、ロジックエレメント200の機能について、図面を参照して説明する。図3において、ロジックセル300は、フリップフロップ302から入力されるデータに対し、メモリ制御部201から転送される設定情報によって指定される特定の論理処理を行い、クロスコネクトスイッチ301、隣接のプロセッサエレメント101のロジックエレメント200へ処理後のデータを出力する。クロスコネクトスイッチ301は、ロジックセル300、入力バス105、隣接のプロセッサエレメント101のロジックエレメント200から入力されるデータに対し、メモリ制御部201から転送される設定情報によって指定される特定のデータの整列、複製及び反転処理を行い、フリップフロップ302へ処理後のデータを出力する。フリップフロップ302は、クロスコネクトスイッチ301から入力されるデータを、内部クロック信号109のタイミングで保持する。フリップフロップ302は、保持したデータをロジックセル300及び出力バス106に出力する。
Next, the function of the
次に、ロジックセル300の機能及び動作について、具体例を用いて説明する。
Next, functions and operations of the
図5において、ロジックセル300に対し設定情報の2ビット及び入力データの2ビットが入力され、ロジックセル300は出力データの1ビットを出力している。図6は、この場合のロジックセル300の機能及び動作の例を示している。図6において、設定情報が00である時には、ロジックセル300は入力データの論理和(OR)を出力する。設定情報が01である時には、ロジックセル300は入力データの論理積(AND)を出力する。設定情報が10である時には、ロジックセル300は入力データの排他的論理和(XOR)を出力する。設定情報が11である時には、ロジックセル300は入力データの論理和の反転データ(NOR)を出力する。このように、ロジックセル300は、設定情報に基づいて、異なる複数の論理機能を実現可能な回路である。
In FIG. 5, 2 bits of setting information and 2 bits of input data are input to the
次に、クロスコネクトスイッチ301の機能について、具体例を用いて説明する。
Next, the function of the
図7には、クロスコネクトスイッチ301の内部ブロック及び機能の例が示されている。図7において、クロスコネクトスイッチ301の内部の相互接続部700に対し設定情報の4ビット並びに入力データA、B、Cの3ビット及びロウレベルが入力され、相互接続部700から出力データOUT1、OUT2の2ビットが出力されている。さらに、相互接続部700の各出力データは、設定情報の1ビットと排他的論理和(XOR)がとられ、外部に出力される。このXORは、クロスコネクトスイッチ301からの出力データを設定情報に基づいてビット単位に反転するためのものである。この場合、出力数は2であるのでXOR部分に2ビットの設定情報が使用されるため、クロスコネクトスイッチ301の全体で使用する設定情報は合計6ビットとなる。
FIG. 7 shows an example of internal blocks and functions of the
図8は、この場合の相互接続部700の機能例を示している。図8において、相互接続部700は、設定情報のMSBの2ビットがOUT1に出力されるデータを選択し、LSBの2ビットがOUT2に出力されるデータを選択している。相互接続部700は、設定情報が00である時には入力データAを出力し、設定情報が01である時には入力データBを出力する。相互接続部700は、設定情報が10である時には入力データCを出力し、設定情報が11である時にはロウレベルを出力する。
FIG. 8 shows an example of the function of the
このように、クロスコネクトスイッチ301は、設定情報に基づいて複数の入力データの整列、複製及び反転処理が可能であり、また、設定情報に設定された固定値を出力することも可能な回路である。
As described above, the
次に、プログラマブル論理回路100の動作について、図面を参照して説明する。図9及び図10には、プログラマブル論理回路100の動作タイミングの例が示されている。図9には、外部からの初期化の動作が表されている。図10には、外部からの起動及び実際の論理処理の動作が表されている。
Next, the operation of the
まず、T1期間において、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した初期化信号900を受けて内部初期化信号901として保持する。T2期間において、入出力制御部103は、保持した内部初期化信号901を内部クロック信号109に同期させて制御バス104に出力する。制御バス104の内部初期化信号902は、すべてのプロセッサエレメント101のメモリ制御部201に入力される。
First, in the T1 period, the input /
T3期間において、プロセッサエレメント101のメモリ制御部201は、入力された内部初期化信号902をトリガにして、メモリ装置102の特定のアドレス904に対し、読み出し信号903を出力する。その後、メモリ制御部201は、入力される読み出しデータ905を保持データ906として一度保持し、この保持データ906から設定情報の格納位置アドレス907を抽出して保持する。T1〜T3の動作により、設定情報の格納位置アドレス907が各プロセッサエレメント101に記憶され、いつでも処理を実行できる状態となる。
In the T3 period, the
T4期間において、プログラマブル論理回路100は、起動待ち状態である。T5期間において、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した起動信号1000及び内部処理用データ1001を受け取って内部起動信号1002及び内部処理用データ1003として保持する。T6期間において、入出力制御部103は、保持した内部起動信号1002を内部クロック信号109に同期させて制御バス104に出力する。また、入出力制御部103は、保持した内部処理用データ1003を内部クロック信号109に同期させて入力バス105に出力する。
In the period T4, the
制御バス104の内部起動信号1004は、すべてのプロセッサエレメント101のメモリ制御部201に入力される。入力バス105の論理処理用データ1005は、すべてのプロセッサエレメント101のロジックエレメント200に入力される。T7期間において、各プロセッサエレメント101のメモリ制御部201は、入力された内部起動信号1004をトリガにして、メモリ装置102のT3期間において保持した格納位置アドレス1007に対し読み出し信号903を出力する。T8期間において、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を保持データ906として保持する。同時に、メモリ制御部201は、メモリ装置102の次のアドレスに対し、読み出し信号903を出力する。
The internal activation signal 1004 of the
T9期間において、各メモリ制御部201は、保持データ906をロジックエレメント200に出力する。また、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を保持する。同時に、各メモリ制御部201は、メモリ装置102の次のアドレスに対し、読み出し信号を出力する。各ロジックエレメント200は、入力される保持データ(設定情報)906に基づいて、入力バス105からの論理処理用データ1005の整列、複製及び反転処理を行い、処理後のデータを内部のフリップフロップ302に保持する。
In the T9 period, each
T10期間において、各メモリ制御部201は、保持データ906をロジックエレメント200に出力する。また、各メモリ制御部201は、メモリ装置102から出力される読み出しデータ905を内部に保持する。同時に、各メモリ制御部201は、メモリ装置102の次のアドレスに対して読み出し信号を出力する。
In the T10 period, each
各ロジックエレメント200は、フリップフロップ302、入力バス105及び隣接のプロセッサエレメント101からの論理処理用データ1005を、入力される保持データ(設定情報)906に基づいて論理処理を行って、処理後のデータをフリップフロップ302に保持する。以下、T10期間の処理を繰り返すことにより、一つの論理処理を実現する。
Each
すべての期間において、フリップフロップ302のデータは、出力バス106に出力されており、入出力制御部103は、このデータを常に内部クロック信号109に同期して保持している。入出力制御部103は、保持データをユーザークロック信号110に同期してユーザー回路108に出力する。ユーザー回路108は、入力されるデータのフラグを参照し、出力データ(論理処理後のデータ)を保持する、又は、決められた期間後のデータを保持する。
In all periods, the data of the flip-
次に、特定の論理処理機能をプログラマブル論理回路100にマッピングした例を、図面を参照して説明する。説明を簡潔に行うため、動作例で示したT9、T10期間のロジックエレメント200の動作のみを説明する。
Next, an example in which a specific logic processing function is mapped to the
図11は、2入力2出力のロジックセル300の機能を示している。図12は、ロジックセル300を持つプログラマブル論理回路100に対して、4ビットの比較回路をマッピングした場合の例を示している。図12において、縦方向には物理的に異なる4つのプロセッサエレメント101が示されており、横方向には同一のプロセッサエレメント101が各サイクルでどのような処理を行うかが示されている。
FIG. 11 shows the function of the
図13は、4ビットの比較回路を示している。図13に示すように、入力データとして、IN0〜7の8ビットデータがあり、IN0〜3とIN4〜7の比較結果が1ビットのデータとして出力される。 FIG. 13 shows a 4-bit comparison circuit. As shown in FIG. 13, there are 8-bit data of IN0 to IN7 as input data, and the comparison result of IN0 to 3 and IN4 to 7 is output as 1-bit data.
図12において、ロジックセル(LC)300の入力及び出力は、上側がLSBであり、下側がMSBである。また、ロジックセル(LC)300の下部に記載されているデータは、ロジックセル(LC)300に対する設定情報である。複数のロジックセル(LC)300は、図13に示すように動作する。まず、サイクル1及び2において、複数のロジックセル(LC)300は入力データをビット単位に整列する。サイクル3において、複数のロジックセル(LC)300は各ビットに対してXNORの処理を行う。サイクル4において、複数のロジックセル(LC)300はサイクル3の結果に対してAND処理を行う。サイクル5において、複数のロジックセル(LC)300はサイクル4の結果に対してAND処理を行う。サイクル6において、複数のロジックセル(LC)300は比較結果を出力する。結果として、内部クロック信号109の6サイクルで出力が確定される。内部クロック信号109のクロック数がユーザークロック信号110のクロック数の6倍である時に、ユーザー回路108からは、1クロックで比較処理が完了したように見える。
In FIG. 12, the input and output of the logic cell (LC) 300 are LSB on the upper side and MSB on the lower side. The data described in the lower part of the logic cell (LC) 300 is setting information for the logic cell (LC) 300. The plurality of logic cells (LC) 300 operate as shown in FIG. First, in
このように、プログラマブル論理回路100は、単体動作を行うプロセッサエレメント101の集合体であり、各プロセッサエレメント101は、主に隣接のプロセッサエレメント101との間で連帯動作を行う。また、複数の隣接のプロセッサエレメント101が一つのグループとして、一つの論理処理を行うことも可能である。
As described above, the
以上説明したように、本発明の実施の形態1に係るプログラマブル論理回路100は、複数のプロセッサエレメント101が独立に動作することも連帯動作することも可能であり、複数種類の論理処理を同時に並列的に行うことが可能であり、かつ、一つの論理処理を連帯して行うことも可能となっている。
As described above, the
また、本発明の実施の形態1に係るプログラマブル論理回路100は、同一のエレメントが1次元的に1列状に配列されているため、実装規模に応じて柔軟に対応可能であり、拡張性が高い。また、本発明の実施の形態1に係るプログラマブル論理回路100は、データの送受を隣接のプロセッサエレメント101の間に限定することにより、設定情報を大幅に削減することが可能となり、回路面積を削減でき、かつ、実装するLSIのコスト及び消費電力を削減できる。
In addition, the
また、本発明の実施の形態1に係るプログラマブル論理回路100は、実装エレメント数に関係なく、任意のプロセッサエレメント101のフリップフロップから隣接する他のプロセッサエレメント101のフリップフロップまでの配線距離が最小限かつ一定であるため、動作周波数を限界にまで引き上げることが可能となり、従来のプログラマブルロジックに比して、高速動作が可能となっている。
In addition, the
また、本発明の実施の形態1に係るプログラマブル論理回路100は、同一の回路上で、繰り返し機能を変更しながら処理を行うため、回路面積を削減でき、かつ、実装するLSIのコスト及び消費電力を削減できる。
In addition, since the
なお、本発明の実施の形態1において、内部クロック信号109は、必ずしもユーザークロック信号110の逓倍である必要がなく、例えば、入出力制御部103に適切なクロック乗せ換え回路を用いることで、ユーザークロック信号110に同期しないクロック信号を内部クロック信号として用いてもよい。
In the first embodiment of the present invention, the
また、本発明の実施の形態1において、メモリ装置102は、プログラマブル論理回路100の内部に存在する必要がなく、プログラマブル論理回路101の外部に存在する構成でもよい。また、本発明の実施の形態1において、クロック生成回路107は、プログラマブル論理回路100の内部に配設してもよい。
In the first embodiment of the present invention, the
また、本発明の実施の形態1において、メモリ装置102とプロセッサエレメント101との間にマルチプレクサなどの選択回路を挿入して、設定によりメモリ装置102と各プロセッサエレメント101との接続を変更可能にしてもよい。ただし、この場合にはデータの処理の遅延量が増加するため、周波数を維持するためには、パイプライン等を用いて高速化を図る必要がある。
In the first embodiment of the present invention, a selection circuit such as a multiplexer is inserted between the
また、本発明の実施の形態1において、図3に示すロジックエレメント200の内部の各ブロック、ロジックセル300、クロスコネクトスイッチ301及びフリップフロップ302の間の接続及び前記各ブロックと入力バス105、出力バス106及び隣接のロジックエレメント200との接続は、図3のものに限定されるものではなく、例えば、ロジックセル300とクロスコネクトスイッチ301の間にフリップフロップを設けて、さらに動作周波数を高めてもよい。また、本発明の実施の形態1において、入力バス105からのデータはクロスコネクトスイッチ301ではなく、ロジックセル300又はフリップフロップ302に入力してもよい。これは、後述する図15、図19及び図25に示す例においても同様である。
Further, in the first embodiment of the present invention, each block inside the
また、本発明の実施の形態1において、複数のプロセッサエレメント101の各々は、他のプロセッサエレメント101に接続されていなくてもよい。
In the first embodiment of the present invention, each of the plurality of
(実施の形態2)
次に、本発明の実施の形態2について、図面を参照して詳細に説明する。図14は、本発明の実施の形態2に係るプログラマブル論理回路の構成を示すブロック図である。本発明の実施の形態2においては、本発明の実施の形態1と同じ構成要素には同じ参照符号が付されて、その説明が省略される。
(Embodiment 2)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 14 is a block diagram showing a configuration of a programmable logic circuit according to
図14に示すように、本発明の実施の形態2に係るプログラマブル論理回路1400は、本発明の実施の形態1において、複数のプロセッサエレメント101の代わりに複数のプロセッサエレメント1401を有し、データバス1402及びデータ保持用メモリセル1403を追加してなる。すなわち、本発明の実施の形態2に係るプログラマブル論理回路1400は、複数のプロセッサエレメント1401、入出力制御部103、複数のメモリ装置102、制御バス104、入力バス105、出力バス106、データバス1402及びデータ保持用メモリセル1403を具備している。
As shown in FIG. 14, the
プロセッサエレメント1401は、図15に示すように、本発明の実施の形態1において、ロジックエレメント200の代わりにロジックエレメント1410を有している。ロジックエレメント1410は、図16に示すように、本発明の実施の形態1のロジックエレメント200において、データバス出力制御部1411を追加してなる。
As shown in FIG. 15, the
図14に示すように、プログラマブル論理回路1400には、クロック生成回路107及びユーザー回路108が接続されている。複数のプロセッサエレメント1401と複数のメモリ装置102とは、1対1で接続されている。1対1で接続されているプロセッサエレメント1401とメモリ装置102とは、単位論理回路を構成している。複数の単位論理回路は、並列に接続されている。
As shown in FIG. 14, a
複数のプロセッサエレメント1401の各々は、1次元的に1列状に配置されており、物理配置上で隣接する2つの他のプロセッサエレメント1401と接続線1401aで接続されている。すなわち、プロセッサエレメント1401を有する複数の単位論理回路は、1次元的に1列状に配置されており、複数の単位論理回路における一の前記単位論理回路と当該一の前記単位論理回路に対して物理的配置上で隣接する他の前記単位論理回路とは、接続線1401aで接続されている。
Each of the plurality of
プロセッサエレメント1401は、接続線を用いて隣接する2つの他のプロセッサエレメント101との間でデータの受け渡しを行う。データ保持用メモリセル1403は、データバス1402と接続されている。
The
図15に示すように、プロセッサエレメント1401は、ロジックエレメント1410及びメモリ制御部201を具備している。
As illustrated in FIG. 15, the
図16に示すように、ロジックエレメント1410は、本発明の実施の形態1におけるロジックエレメント200においてデータバス出力制御部1411を追加してなる。すなわち、ロジックエレメント1410は、ロジックセル300、クロスコネクトスイッチ301、フリップフロップ302及びデータバス出力制御部1411を具備している。データバス出力制御部1411は、フリップフロップ302、メモリ制御部201及びデータバス1402と接続されている。クロスコネクトスイッチ301は、データバス1402と接続されている。
As shown in FIG. 16, the
次に、本発明の実施の形態2に係るプログラマブル論理回路1400の機能について、図面を参照して詳細に説明する。
Next, functions of the
図14において、データバス1402は、プロセッサエレメント1401から論理処理中のデータを受け取り、データ保持用メモリセル1403に保持する。データ保持用メモリセル1403が保持したデータは、すべてのプロセッサエレメント1401に入力される。
In FIG. 14, the
図16において、データバス出力制御部1411は、メモリ制御部201から転送される設定情報に基づいて、フリップフロップ302からのデータ又はハイインピーダンスレベルをデータバス1402へ出力する。データバス1402に伝送されたデータは、クロスコネクトスイッチ301に入力される。クロスコネクトスイッチ301においては、データバス1402から入力されるデータは、他のデータと共にデータの整列、複製及び反転処理に使用される。
In FIG. 16, the data bus
このように、複数のプロセッサエレメント1401の各々は、相互に遠距離にあるプロセッサエレメント1401に対して、処理データを短時間で転送することが可能となるため、遠距離のプロセッサエレメントを連帯動作させることが可能となる。
In this way, each of the plurality of
次に、本発明の実施の形態2に係るプログラマブル論理回路1400の動作について、図面を参照して詳細に説明する。
Next, the operation of the
図17には、プログラマブル論理回路1400の動作タイミング例が示されている。T10期間において、データバス出力制御部1411は、メモリ制御部201から転送される設定情報に基づいて、フリップフロップ302からのデータの一部又はすべてをデータ1420としてデータバス1402へ出力する。T11期間において、前記データ1420を出力したプロセッサエレメント1401から離れたプロセッサエレメント1401の位置でのデータバス1402のデータ(レベル)1421は不確定である。T12期間において、前記位置でのデータバス1402のデータ1421が確定したため、ロジックエレメント200は、データバス1402のデータ1421を入力バス105、内部のフリップフロップ302及び隣接するプロセッサエレメント1401からの論理処理用データと共に、入力される設定情報に基づいて論理処理を行って、処理後のデータをフリップフロップ302に保持する。
FIG. 17 shows an example of operation timing of the
このように、ロジックエレメント1410は、論理処理中のデータを任意のタイミングでデータバス1402に出力し、前記ロジックエレメント1410と連帯動作する複数のロジックエレメント1410は、このデータを論理処理に用いることが可能である。したがって、プログラマブル論理回路1400は、データバス1402及びデータ保持用メモリセル1403を用いることにより、複数のロジックエレメント1410の各々は遠距離のプロセッサエレメント1401を連帯動作させることが可能となり、実装効率及び汎用性を高めることができる。
As described above, the
ただし、各メモリ装置102には、データバス1402でのデータの衝突が発生しないように、データバス1402への出力タイミングを設定する必要がある。また、データバス1402は、前述したように複数のプロセッサエレメント1401をまたがるラインであるため、1サイクル期間では値が確定しない場合がある。このため、各メモリ装置102に設定するデータバス1402のデータ参照タイミングは、あるプロセッサエレメント1401がデータバス1402への出力を行ってから、所定のサイクル経過後に、例えば、2クロック後になるようにする必要がある。各メモリ装置102への設定情報の設定は、本発明を用いるユーザー装置が直接又は本発明にかかわる論理合成及びマッピングツールを用いて間接的に行うことになる。ユーザー装置が直接設定を行う場合には、ユーザー装置は各プロセッサエレメント1401の連帯動作方法を把握しているため、前記データの衝突を回避するようにデータバス1402の使用タイミングを考慮して設定することになる。合成及びマッピングツールが設定を行う場合には、通常、前記データの衝突の回避は、ツールのアルゴリズム内に組み込まれることになるため、ユーザー装置は意識しないことになる。このように、動作周波数によっては、データバス1402は値の確定に複数サイクルを要することを前提としたバスとすることができるため、前記動作周波数に影響を与えることはない。
However, it is necessary to set the output timing to the
なお、本発明の実施の形態2に係るプログラマブル論理回路1400は、図示した例に限定されるものではなく、例えば、すべてのプロセッサエレメント1401が同一のデータバス1402に接続されなくてもよく、例えば、4つおきのプロセッサエレメント1401のみを同一のデータバスに接続することも可能である。また、本発明の実施の形態2において、データ保持用メモリセル1403は、同様の機能を実現できるものであれば、メモリセル以外のもので構成してもよい。
The
(実施の形態3)
次に、本発明の実施の形態3について、図面を参照して詳細に説明する。図18は、本発明の実施の形態3に係るプログラマブル論理回路の主要部の構成を示すブロック図である。本発明の実施の形態3において、本発明の実施の形態2と同じ構成要素には同じ参照符号が付され、その説明が省略される。
(Embodiment 3)
Next,
図18に示すように、本発明の実施の形態3に係るプログラマブル論理回路1800は、本発明の実施の形態2に係るプログラマブル論理回路1400において、データバス1402を削除し、かつ、ワイヤード論理バス回路1810を追加してなる。
As shown in FIG. 18, the
ワイヤード論理バス回路1810は、ワイヤード論理入力バス1811、ワイヤード論理出力バス1812、データ保持用メモリセル1403、インバーター1813、複数のトランジスタ1814及び放電制御部1815を具備している。ワイヤード論理バス回路1810は、1次元的に列状に配置された複数のプロセッサエレメント1401の側部に配置されている。
The wired logic bus circuit 1810 includes a wired logic input bus 1811, a wired logic output bus 1812, a data holding
トランジスタ1814のドレインは、ワイヤード論理入力バス1811に接続されている。トランジスタ1814のゲート電極は、プロセッサエレメント1401に接続されている。データ保持用メモリセル1403は、ワイヤード論理入力バス1811に接続されている。また、データ保持用メモリセル1403は、ワイヤード論理出力バス1812にインバーター1813を介して接続されている。
The drain of
図19は、プロセッサエレメント1401のロジックエレメント1410の構成を示している。データバス出力制御部1411は、フリップフロップ302、トランジスタ1814のゲート電極及び放電制御部1815に接続されている。ワイヤード論理出力バス1812は、クロスコネクトスイッチ301に接続されている。
FIG. 19 shows the configuration of the
次に、本発明の実施の形態3に係るプログラマブル論理回路1800の機能について、図面を参照して詳細に説明する。
Next, functions of the
図18において、放電制御部1815は、複数のプロセッサエレメント1401から放電制御信号を受け取って、これらの放電制御信号の非論理和(NOR)をとった信号をワイヤード論理入力バス1811に出力し、データ保持用メモリセル1403の放電を行う。ワイヤード論理入力バス1811は、複数のプロセッサエレメント1401からトランジスタ1814を介してデータを受け取る。プロセッサエレメント1401からのデータがハイレベルの時は、トランジスタ1814が遮断され、ワイヤード論理入力バス1811にハイインピーダンスレベルが出力される。プロセッサエレメント1401からのデータがロウレベルの時に、トランジスタ1814が導通され、ワイヤード論理入力バス1811にハイレベルが出力される。
In FIG. 18, the
ワイヤード論理入力バス1811のデータはデータ保持用メモリセル1403に保持される。データ保持用メモリセル1403に保持されたデータは、インバーター1813によって反転され、ワイヤード論理出力バス1812に出力される。ワイヤード論理出力バス1812の値は、複数のプロセッサエレメント1401に入力される。
Data on the wired logic input bus 1811 is held in the data holding
プロセッサエレメント1401からワイヤード論理入力バス1811への出力がすべてハイレベルの時に、ワイヤード論理出力バス1812はハイレベルとなる。このようにして、複数のプロセッサエレメント1401からのデータに対し、論理積(AND)をとったデータが各プロセッサエレメント1401に入力される。
When all the outputs from the
図19において、データバス出力制御部1411は、メモリ制御部201から転送される設定情報に基づいて、フリップフロップ302からのデータをトランジスタ1814へ出力する。同様に、データバス出力制御部1411は、メモリ制御部201から転送される設定情報に基づいて、放電制御信号を放電制御部1815へ出力する。データバス出力制御部1411は、論理積処理を行う時にはフリップフロップ302からのデータを出力し、論理積処理を行わない時には固定的にハイレベルを出力する。
In FIG. 19, the data bus
ワイヤード論理出力バス1812からの入力データは、クロスコネクトスイッチ301に入力され、他のデータと共にデータの整列、複製及び反転処理に使用される。
Input data from the wired logic output bus 1812 is input to the
このように、プログラマブル論理回路1800は、ワイヤード論理バス回路1810を用いることにより、複数のプロセッサエレメント1401で独立に処理した情報を論理演算して、遠距離にあるプロセッサエレメント1401に情報として転送することが可能となる。したがって、プログラマブル論理回路1800は、連帯動作時の情報を一括で処理可能となり、全体の処理性能を高めることができる。
As described above, the
なお、データバス1402及びワイヤード論理バス回路1810では、バスのレベルを保持するメモリセルが必ず存在する。ワイヤード論理バス回路1810では、すべてのプロセッサエレメント1401からの出力データがハイレベルである時には、ワイヤード論理出力バス1812のレベルは、前回保持したデータのレベルとなってしまう。ワイヤード論理バス回路1810を使用する時には、使用する前にデータ保持用メモリセル1403の放電を行う必要がある。データ保持用メモリセル1403の放電には、いくつかの方法がある。第1の方法は、定期的に放電を行う方法である。第2の方法は、図18で示したように、ワイヤード論理バス回路1810を使用するプロセッサエレメント1401が設定情報に基づいて放電信号を出力し、これにより放電を行う方法である。詳細説明は、ワイヤード論理バス回路1810の動作説明で行う。
In the
本発明の実施の形態3に係るプログラマブル論理回路1800の動作について、図面を参照して詳細に説明する。
The operation of the
図20は、本発明の実施の形態3に係るプログラマブル論理回路1800の動作を説明するためのタイミングの例を示している。
FIG. 20 shows an example of timing for explaining the operation of the
T10期間において、ワイヤード論理出力バス1812のレベル2006は、前回のワイヤード論理出力バス1812の使用時のレベルが保持されている。T11期間において、プロセッサエレメント1401は、メモリ制御部201から転送される設定情報に基づいて、放電制御信号2000を放電制御部1815へ出力する。この結果、放電制御部1815からワイヤード論理入力バス1811へロウレベルが出力される。
In the period T10, the level 2006 of the wired logic output bus 1812 is held at the level when the previous wired logic output bus 1812 was used. In the period T11, the
T12期間において、データ保持用メモリセル1403は、ロウレベルに遷移中であり、ワイヤード論理出力バス1812のレベル2006は不確定である。T13期間において、データ保持用メモリセル1403は完全に放電され、ワイヤード論理出力バス1812のレベル2006は、ハイレベルとなっている。T14期間において、各プロセッサエレメント1401のデータバス出力制御部1411は、メモリ制御部201から転送される設定情報に基づいて、フリップフロップ302からのデータをワイヤード論理入力バス1811へ出力する。ここでは、4つのプロセッサエレメント(PE)1401のうち一つがロウレベルを出力している。
In the period T12, the data holding
T15期間において、ワイヤード論理出力バス1812のレベル2006は不確定である。T16期間において、ワイヤード論理出力バス1812のレベル2006が確定したため、ロジックエレメント1410は、ワイヤード論理出力バス1812のデータを入力バス105、内部のフリップフロップ302及び隣接のプロセッサエレメント1401からの論理処理用のデータと共に入力される設定情報に基づいて論理処理を行って、処理後のデータを内部のフリップフロップ302に保持する。
In the T15 period, the level 2006 of the wired logic output bus 1812 is indeterminate. In T16 period, since the level 2006 of the wired logic output bus 1812 is determined, the
このように、複数の連帯動作するロジックエレメント1410は、論理処理中のデータを同一のタイミングでワイヤード論理バス回路1810に出力し、ワイヤード論理バス回路1800で特定の論理を一括演算処理することが可能である。
In this manner, a plurality of
同時に、すべてのロジックエレメント1410は、このデータを論理処理に用いることが可能である。ただし、各メモリ装置102には、連帯動作するプロセッサエレメント1401の演算タイミングが一致するように、ワイヤード論理入力バス1811への出力タイミングを設定する必要がある。また、ワイヤード論理バス回路1810は、データバス1402と同様に複数のプロセッサエレメント1401をまたがるラインであるため、1サイクル期間では値が確定しない場合がある。よって、各メモリ装置102に設定するワイヤード論理出力バス1812のデータ参照のタイミングは、あるプロセッサエレメント1401がワイヤード論理入力バス1811への出力を行ってから、所定のサイクル経過後、例えば2クロック後となるようにする必要がある。
At the same time, all
なお、本発明の実施の形態3において、データ保持用メモリセル1403は、同様の機能を実現できるものであれば、メモリセル以外のもので構成してもよい。また、本発明の実施の形態3において、トランジスタ1814は、プロセッサエレメント1401の内部に存在してもよく、また、インバーター1404は必ずしも必要ではない。
Note that in the third embodiment of the present invention, the data holding
また、本発明の実施の形態3において、ワイヤード論理として実現可能なものであれば、適用する論理は論理積に限らないものであり、例えば、論理和を適用してもよい。また、本発明の実施の形態3において、放電制御部1815は、プロセッサエレメント1401からの制御で動作しなくてもよく、例えば、クロック信号のクロック数を内部のカウンタでカウントして制御してもよい。
In
(実施の形態4)
次に、本発明の実施の形態4について、図面を参照して詳細に説明する。図21は、本発明の実施の形態4に係るプログラマブル論理回路の主要部の構成を示すブロック図である。本発明の実施の形態4において、本発明の実施の形態1と同じ構成要素には同じ参照符号が付され、その説明が省略される。
(Embodiment 4)
Next, a fourth embodiment of the present invention will be described in detail with reference to the drawings. FIG. 21 is a block diagram showing the configuration of the main part of the programmable logic circuit according to
図21に示すように、本発明の実施の形態4に係るプログラマブル論理回路2100は、本発明の実施の形態1において、メモリ装置102の代わりにマルチポートメモリ装置2101を有するものである。
As shown in FIG. 21, the
マルチポートメモリ装置2101とは、単一又は複数の書き込みポートと複数の読み出しポートをもつメモリ装置である。図21におけるマルチポートメモリ装置2101は、一つの書き込みポートと4つの読み出しポートをもつ。図21に示す例では、4つのプロセッサエレメント101−1〜101−4が1つのマルチポートメモリ装置2101に接続されている。プロセッサエレメント101−1〜101−4の各々は、プロセッサエレメント101と同じ構成のものである。
The
次に、本発明の実施の形態4に係るプログラマブル論理回路2100について、図面を参照して詳細に説明する。マルチポートメモリ装置2101においては、各読み出しポートが、互いに異なるアドレス空間を同時に読み出すことが可能であり、同一のアドレスを同一のタイミングで読み出すことも可能である。
Next, a
図21に示す例では、4つのプロセッサエレメント101−1〜101−4がマルチポートメモリ装置2101の設定情報を同時に読み出し可能となっている。また、前述したようにプロセッサエレメント101−1〜101−4の各々は、初期化時に自身の設定情報の格納位置アドレスを取得するため、マルチポートメモリ装置2101を適用した場合にも設定情報を正しく認識できる。
In the example shown in FIG. 21, the four processor elements 101-1 to 101-4 can simultaneously read the setting information of the
このように、プログラマブル論理回路2100は、マルチポートメモリ装置2101を用いることにより、設定情報が少ないプロセッサエレメントと設定情報が多いプロセッサエレメントの設定情報を同一のマルチポートメモリ装置2101に保持することができるため、マルチポートメモリ装置2101の空き空間を有効利用することができるから、実装効率が向上する。
As described above, the
次に、本発明の実施の形態4に係るプログラマブル論理回路2100の機能について、具体例を用いて説明する。
Next, the function of the
図22において、プロセッサエレメント101−1〜101−4が独立の処理を行うとする。図22において、プロセッサエレメント101−1の設定情報量を5kbit(キロビット)とし、プロセッサエレメント101−2の設定情報量を10kbit(キロビット)とし、プロセッサエレメント101−3の設定情報量を100kbit(キロビット)とし、プロセッサエレメント101−4の設定情報量を200kbit(キロビット)とする。この場合に、マルチポートメモリ装置2101を適用しない場合には、各メモリ装置102には最低200kbit(キロビット)の容量が必要となる。したがって、4つのプロセッサエレメント101−1〜101−4に対して、合計900kbit(キロビット)の容量が必要となる。一方、マルチポートメモリ装置2101を用いた場合には、マルチポートメモリ装置2101に最低限必要となる容量は315kbit(キロビット)となるため、メモリ空間を有効に活用できる。プロセッサエレメント101−1〜101−4の各々は、初期化時にアドレスA、B、C、Dを取得及び保持し、起動時にはそれぞれのアドレスから設定情報の読み出しを行う。このように、本発明の実施の形態4に係るプログラマブル論理回路2100は、マルチポートメモリ装置2101を適用することにより、メモリ装置の空き空間を有効利用することができる。
In FIG. 22, it is assumed that the processor elements 101-1 to 101-4 perform independent processing. In FIG. 22, the setting information amount of the processor element 101-1 is 5 kbit (kilobit), the setting information amount of the processor element 101-2 is 10 kbit (kilobit), and the setting information amount of the processor element 101-3 is 100 kbit (kilobit). And the setting information amount of the processor element 101-4 is 200 kbits (kilobits). In this case, if the
なお、本発明の実施の形態4において、マルチポートメモリ装置2101は4ポートでなくてもよく、また、マルチポートメモリ装置とシングルポートメモリ装置とを組み合わせて構成してもよい。
In the fourth embodiment of the present invention, the
(実施の形態5)
次に、本発明の実施の形態5について、図面を参照して詳細に説明する。図23は、本発明の実施の形態5に係るプログラマブル論理回路の主要部の構成を示すブロック図である。本発明の実施の形態5において、本発明の実施の形態1と同じ構成要素には同じ参照符号が付され、その説明が省略される。
(Embodiment 5)
Next, a fifth embodiment of the present invention will be described in detail with reference to the drawings. FIG. 23 is a block diagram showing a configuration of a main part of the programmable logic circuit according to the fifth embodiment of the present invention. In the fifth embodiment of the present invention, the same components as those in the first embodiment of the present invention are denoted by the same reference numerals, and the description thereof is omitted.
図23に示すように、本発明の実施の形態5に係るプログラマブル論理回路2300は、複数のプロセッサエレメント101−1〜101−Mと、これらに接続されている複数のマルチポートメモリ装置2101−1〜2101−Nとを具備し、複数のプロセッサエレメント101−1〜101−M(M>N)が複数のグループに分けられ、かつ、複数のグループごとに独立の動作を行うものである。
As shown in FIG. 23, the
次に、本発明の実施の形態5に係るプログラマブル論理回路2300の機能について、図面を参照して説明する。
Next, functions of the
図23において、プロセッサエレメント101−1、101−3、101−6、101−8は、マルチポートメモリ装置2101−1の設定情報を読み出し可能である。プロセッサエレメント101−2、101−4、101−5、101−7は、マルチポートメモリ装置2101−2の設定情報を読み出し可能である。プロセッサエレメント101−1、101−3、101−6、101−8の設定情報は、マルチポートメモリ装置2101−1に格納されている。また、プロセッサエレメント101−2、101−4、101−5、101−7の設定情報は、マルチポートメモリ装置2101−2に格納されている。 In FIG. 23, the processor elements 101-1, 101-3, 101-6, 101-8 can read the setting information of the multiport memory device 2101-1. The processor elements 101-2, 101-4, 101-5, and 101-7 can read the setting information of the multiport memory device 2101-2. The setting information of the processor elements 101-1, 101-3, 101-6, and 101-8 is stored in the multiport memory device 2101-1. The setting information of the processor elements 101-2, 101-4, 101-5, and 101-7 is stored in the multiport memory device 2101-2.
このように、本発明の実施の形態5に係るプログラマブル論理回路2300においては、より遠距離に存在するプロセッサエレメントの設定情報が同一のマルチポートメモリ装置に保持されることになる。隣接するプロセッサエレメントは、連帯動作する場合が多いため、メモリ装置の使用量は同じになる場合が多い。このように、本発明の実施の形態5に係るプログラマブル論理回路2300において、複数のプロセッサエレメント101−1〜101−Mと複数のマルチポートメモリ装置2101−1〜2101−Nとの配線に工夫を凝らすことにより、独立動作するプロセッサエレメントの設定情報を同一のメモリに保持することが可能となる。
As described above, in the
次に、本発明の実施の形態5に係るプログラマブル論理回路2300の機能の具体例について、図面を参照して説明する。
Next, a specific example of the function of the
図23において、プロセッサエレメント101−1〜3をグループAとし、プロセッサエレメント101−4〜6をグループBとし、プロセッサエレメント101−7〜9をグループCとし、複数のグループの各々が独立の処理を行うとする。 In FIG. 23, processor elements 101-1 to 101-3 are group A, processor elements 101-4 to 6 are group B, processor elements 101-7 to 9 are group C, and each of the plurality of groups performs independent processing. Suppose you do.
この時、同じグループ内の各プロセッサエレメントは連帯して動作を行うため、同じ量の設定情報を必要とする。マルチポートメモリ装置2101−1〜Nの各々の容量を150kbit(キロビット)とし、グループAのプロセッサエレメント101−1〜3の各々の設定情報量を5kbit(キロビット)とし、グループBのプロセッサエレメント101−4〜6の各々の設定情報量を10kbit(キロビット)とし、グループCのプロセッサエレメント101−7〜9の各々の設定情報量を100kbit(キロビット)とする。 At this time, since the processor elements in the same group operate in unison, the same amount of setting information is required. The capacity of each of the multi-port memory devices 2101-1 to 2101 -N is 150 kbit (kilobits), the setting information amount of each of the group A processor elements 101-1 to 10-3 is 5 kbit (kilobits), and the processor element 101- The setting information amount of each of 4 to 6 is 10 kbit (kilobit), and the setting information amount of each of the group C processor elements 101-7 to 9 is 100 kbit (kilobit).
この場合において、プロセッサエレメント101−1〜9とマルチポートメモリ装置2101−1、2101−2との間の配線を図23に示すようにしない場合には、マルチポートメモリ装置2101−1に必要となる容量は25kbit(キロビット)であり、マルチポートメモリ装置2101−2に必要となる容量は220kbit(キロビット)となる。このため、マルチポートメモリ装置2101−2では、設定情報が収まりきらない状態であるにもかかわらず、マルチポートメモリ装置2101−1では125kbit(キロビット)のメモリ空間が空き状態となってしまう。 In this case, if the wiring between the processor elements 101-1 to 9-9 and the multi-port memory devices 2101-1 and 2101-2 is not as shown in FIG. The capacity required for the multi-port memory device 2101-2 is 220 kbit (kilobits). For this reason, in the multiport memory device 2101-2, although the setting information does not fit in the multiport memory device 2101-2, the memory space of 125 kbit (kilobit) becomes empty in the multiport memory device 2101-1.
一方、プロセッサエレメント101−1〜9とマルチポートメモリ装置2101−1、2101−2との間の配線を図23に示すようにした場合には、マルチポートメモリ装置2101−1に必要となる容量は120kbit(キロビット)であり、マルチポートメモリ装置2101−2に必要となる容量は125kbit(キロビット)となるため、メモリ空間を有効に活用できる。 On the other hand, when the wiring between the processor elements 101-1 to 9-9 and the multi-port memory devices 2101-1 and 2101-2 is as shown in FIG. 23, the capacity required for the multi-port memory device 2101-1. Is 120 kbit (kilobit), and the capacity required for the multi-port memory device 2101-2 is 125 kbit (kilobit), so that the memory space can be used effectively.
このように、本発明の実施の形態5に係るプログラマブル論理回路2300は、より遠距離に存在するプロセッサエレメントの設定情報を同一のマルチポートメモリ装置に格納するため、メモリ領域の使用効率を向上させることができる。
As described above, the
なお、本発明の実施の形態5において、複数のプロセッサエレメント101−1〜Mとマルチポートメモリ装置2101−1〜Nとの間の配線は、図23に示す例に限定されないものであり、遠距離のプロセッサエレメントが同一のマルチポートメモリ装置に接続される構成であればよい。 In the fifth embodiment of the present invention, the wiring between the plurality of processor elements 101-1 to 101-M and the multiport memory devices 2101-1 to 210-N is not limited to the example shown in FIG. Any configuration is possible as long as the distance processor elements are connected to the same multi-port memory device.
また、本発明の実施の形態5において、数のプロセッサエレメント101−1〜Mとマルチポートメモリ装置2101−1〜Nとの間にマルチプレクサなどの選択回路を挿入して、設定により複数のプロセッサエレメント101−1〜Mとマルチポートメモリ装置2101−1〜Nとの接続を変更可能にしてもよい。ただし、この場合にはデータの処理の遅延量が増加するため、周波数を維持するためには、パイプライン等を用いて高速化を図る必要がある。 In the fifth embodiment of the present invention, a selection circuit such as a multiplexer is inserted between a number of processor elements 101-1 to 101-M and multi-port memory devices 2101-1 to 210-N, and a plurality of processor elements are set by setting. The connections between the 101-1 to 101 -M and the multiport memory devices 2101-1 to 210 -N may be changeable. However, in this case, the amount of delay in data processing increases, and in order to maintain the frequency, it is necessary to increase the speed by using a pipeline or the like.
(実施の形態6)
次に、本発明の実施の形態6について、図面を参照して詳細に説明する。図24は、本発明の実施の形態6に係るプログラマブル論理回路の主要部の構成を示すブロック図である。本発明の実施の形態6において、本発明の実施の形態1と同じ構成要素には同じ参照符号が付され、その説明が省略される。
(Embodiment 6)
Next, a sixth embodiment of the present invention will be described in detail with reference to the drawings. FIG. 24 is a block diagram showing the configuration of the main part of the programmable logic circuit according to
図24に示すように、本発明の実施の形態6に係るプログラマブル論理回路2400は、本発明の実施の形態1に係るプログラマブル論理回路100において、複数のプロセッサエレメント101の代わりに複数のプロセッサエレメント2401を有し、入力バス105の代わりに静的入力バス2402及び動的入力バス2403を有するものである。図25に示すように、本発明の実施の形態6に係る複数のプロセッサエレメント2401のロジックエレメント2411の各々は、本発明の実施の形態1に係る複数のプロセッサエレメント200において入力制御部2412を追加してなる。
As shown in FIG. 24, the
図24において、静的入力バス2402は、入出力制御部103及びプロセッサエレメント2401と接続されている。動的入力バス2403は、入出力制御部103及びプロセッサエレメント2401と接続されている。図25において、静的入力バス2402及び動的入力バス2403は、入力制御部2412と接続されている。入力制御部2412は、ロジックセル300、クロスコネクトスイッチ301及びメモリ制御部201と接続されている。
In FIG. 24, the
次に、本発明の実施の形態6に係るプログラマブル論理回路2400の機能について、図面を参照して説明する。
Next, functions of the
図24において、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した起動信号及び論理処理用のデータを受け取り、このデータを内部に保持する。入出力制御部103は、データの保持を次の起動信号が入力されるまで行う。入出力制御部103は、保持したデータを、内部クロック信号109に同期させて静的入力バス2402に出力する。また、入出力制御部103は、ユーザー回路108からユーザークロック信号110に同期した論理処理用のデータのみを受け取り、このデータを内部クロック信号109に同期させて動的入力バス2403に出力する。入出力制御部103は、データの保持を、ユーザークロック信号110ごとに行う。静的入力バス2402及び動的入力バス2403は、入出力制御部103から受け取ったデータをプロセッサエレメント2401に出力する。
In FIG. 24, the input /
図25において、入力制御部2412は、静的入力バス2402、動的入力バス2403からの入力データのどちらか一方を、メモリ制御部201から転送される設定情報に基づいて、クロスコネクトスイッチ301に出力する。
In FIG. 25, the
このように、プロセッサエレメント2401の各々は、選択的にデータをサンプリングすることができるため、複数の処理形態に対応できる。例えば、プログラマブル論理回路2400は、2つの制御を適宜に織り交ぜて実現可能であり、処理の汎用性を高めることが可能となる。
As described above, each of the
なお、本発明の実施の形態6において、静的入力バス2402及び動的入力バス2403は、すべてのプロセッサエレメント2401に接続されなくてもよい。また、本発明の実施の形態6において、静的入力バス2402及び動的入力バス2403は、入力制御部2412を介さずに直接にクロスコネクトスイッチ301に接続されてもよい。
In the sixth embodiment of the present invention, the
(実施の形態7)
次に、本発明の実施の形態7について、図面を参照して詳細に説明する。図26は、本発明の実施の形態7に係るプログラマブル論理回路の主要部の構成を示すブロック図である。本発明の実施の形態7において、本発明の実施の形態1と同じ構成要素には同じ参照符号が付され、その説明が省略される。
(Embodiment 7)
Next, a seventh embodiment of the present invention will be described in detail with reference to the drawings. FIG. 26 is a block diagram showing the configuration of the main part of the programmable logic circuit according to
図26に示すように、本発明の実施の形態7に係るプログラマブル論理回路2600は、本発明の実施の形態1に係るプログラマブル論理回路100において、入出力制御部103の代わりに入出力制御部2610を有する。
As shown in FIG. 26, the programmable logic circuit 2600 according to the seventh embodiment of the present invention is different from the input /
入出力制御部2601は、複数のプロセッサエレメント101の各々に接続されている第1群のフリップフロップ(FF)2611と、第1群のフリップフロップ2611及びユーザー回路108と接続されている第2群のフリップフロップ(FF)2612と、を具備している。
The input / output control unit 2601 includes a first group of flip-flops (FF) 2611 connected to each of the plurality of
図26において、プロセッサエレメント101は、論理処理結果のデータ2621とイネーブル信号2622を入出力制御部2610のフリップフロップ2611に与える。
In FIG. 26, the
次に、本発明の実施の形態7に係るプログラマブル論理回路2600の機能について、図面を参照して説明する。
Next, functions of the programmable logic circuit 2600 according to
図26において、プロセッサエレメント101の各々は、メモリ装置102の設定情報に基づいて、フリップフロップ2611に対し、論理演算処理結果のデータ2621及びイネーブル信号2622を出力する。フリップフロップ2611は、イネーブル信号2622の入力タイミングに、論理処理結果のデータ2621を保持する。フリップフロップ2611は、データの保持を内部クロック信号109に同期して行う。
In FIG. 26, each of the
フリップフロップ2612は、フリップフロップ2611からのデータをユーザークロック信号110に同期して、サイクルごとにデータの保持を行う。この構成において、内部クロック信号109は、ユーザークロック信号110を逓倍したクロック信号の半相ずれのクロック信号である。図27において、イネーブル信号2622は、メモリ制御部201が設定情報に基づいて出力する。論理処理結果のデータ2621は、ロジックエレメント200の内部のフリップフロップの出力である。
The flip-
次に、本発明の実施の形態7に係るプログラマブル論理回路2600を用いて処理性能を向上させる例について、図面を参照して説明する。
Next, an example of improving processing performance using the programmable logic circuit 2600 according to
図28は、本発明の実施の形態7に係るプログラマブル論理回路2600を用いて処理性能を向上させる例を説明するための図である。 FIG. 28 is a diagram for explaining an example of improving the processing performance using the programmable logic circuit 2600 according to the seventh embodiment of the present invention.
図28において、回路A、B、C、D、Eが存在し、回路A、B、C、D、Eの各々は、一つのプロセッサエレメント101を用いて実現可能な回路とする。また、LSIに搭載されたプロセッサエレメント101の数は5とする。
In FIG. 28, there are circuits A, B, C, D, and E, and each of the circuits A, B, C, D, and E is a circuit that can be realized by using one
図28において、回路A、B、Cは、クロックサイクル1の先頭において処理用のデータが入力され、内部クロック信号109で7クロック後のタイミングにおいて、外部で処理後のデータを必要とする回路とする。また、回路D、Eは、クロックサイクル3から処理を開始する回路とする。また、単独のプロセッサエレメント101で処理を行う場合に、回路A、Bは2クロックを要し、回路Cは7クロックを要し、回路D、Eは10クロックを要する回路とする。
In FIG. 28, circuits A, B, and C are circuits that receive processing data at the beginning of
図28(a)には、本発明の実施の形態7に係る入出力制御部2610を適用しない場合の処理動作が示されている。回路A、Bの処理が完了した後、規定の出力タイミング(=サイクル7)まで結果をプロセッサエレメント101に保持するため、2つのプロセッサエレメント101はこの期間にデータ保持のみに使用されている。
FIG. 28 (a) shows processing operations when the input / output control unit 2610 according to
図28(b)には、本発明の実施の形態7に係るプログラマブル論理回路2700の処理動作が示されている。クロックサイクル3の先頭で、回路A、Bの結果を入出力制御部2610に保持し、図28(a)におけるデータ保持期間に回路Dの処理を2つのプロセッサエレメント101を使用して実行している。同時に余った2つのプロセッサエレメント101を用いて、回路Eの処理を行っている。回路D、Eは処理並列度が増したため、半分のサイクル数で処理が完了している。結果として全体の処理性能が向上している。
FIG. 28B shows the processing operation of the programmable logic circuit 2700 according to
このように、本発明の実施の形態7に係るプログラマブル論理回路2700は、各プロセッサエレメント101の単位に論理演算処理結果のデータを任意のタイミングで入出力制御部2610に保持できるため、一つの論理演算処理を完了した後に、次の起動信号入力までの空き時間を他の論理演算処理に割り当てることが可能となる。
As described above, the programmable logic circuit 2700 according to the seventh embodiment of the present invention can hold the data of the logical operation processing result in the unit of each
本発明は、電子装置を制御する制御装置などに適用することができる。 The present invention can be applied to a control device for controlling an electronic device.
100、1400、1800、2100、2400、2600 プログラマブル論理回路
101、1401、2401 プロセッサエレメント
101a、1401a 接続線
102 メモリ装置
103、2610 入出力制御部
104 制御バス
105 入力バス
106 出力バス
200、1410、2411 ロジックエレメント
201 メモリ制御部
300 ロジックセル
301 クロスコネクトスイッチ
302、2611、2612 フリップフロップ
1402 データバス
1403 データ保持用メモリセル
1411 データバス出力制御部
1810 ワイヤード論理バス回路
1811 ワイヤード論理入力バス
1812 ワイヤード論理出力バス
1813 インバーター
1814 トランジスタ
1815 放電制御部
2101 マルチポートメモリ装置
2402 静的入力バス
2403 動的入力バス
2412 入力制御部
100, 1400, 1800, 2100, 2400, 2600
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003285468A JP2005057451A (en) | 2003-08-01 | 2003-08-01 | Programmable logic circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003285468A JP2005057451A (en) | 2003-08-01 | 2003-08-01 | Programmable logic circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005057451A true JP2005057451A (en) | 2005-03-03 |
Family
ID=34365077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003285468A Pending JP2005057451A (en) | 2003-08-01 | 2003-08-01 | Programmable logic circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005057451A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011102362A1 (en) * | 2010-02-16 | 2011-08-25 | Itoh Tomoyasu | Integrated circuit and method of using same |
JP5472469B2 (en) * | 2010-08-06 | 2014-04-16 | 富士通株式会社 | Semiconductor integrated circuit device and electronic system equipped with semiconductor integrated circuit device |
-
2003
- 2003-08-01 JP JP2003285468A patent/JP2005057451A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011102362A1 (en) * | 2010-02-16 | 2011-08-25 | Itoh Tomoyasu | Integrated circuit and method of using same |
CN102859878A (en) * | 2010-02-16 | 2013-01-02 | 株式会社电装 | Integrated circuit and method of using same |
JP5565456B2 (en) * | 2010-02-16 | 2014-08-06 | 株式会社デンソー | Integrated circuit and method of using the same |
US8884647B2 (en) | 2010-02-16 | 2014-11-11 | Denso Corporation | Integrated circuit and method of using the same |
JP5472469B2 (en) * | 2010-08-06 | 2014-04-16 | 富士通株式会社 | Semiconductor integrated circuit device and electronic system equipped with semiconductor integrated circuit device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5261803B2 (en) | High-speed fanout system architecture and input / output circuit for non-volatile memory | |
US20070081398A1 (en) | Semiconductor memory device and transmission/reception system provided with the same | |
KR20120001771A (en) | Configurable bandwidth memory devices and methods | |
JP4484756B2 (en) | Reconfigurable circuit and processing device | |
JP4527643B2 (en) | MEMORY DEVICE AND MEMORY DEVICE OPERATION METHOD | |
US7568084B2 (en) | Semiconductor integrated circuit including multiple basic cells formed in arrays | |
EP1811398B1 (en) | Data processing system with a multiported memory for interprocessor communication | |
KR100840030B1 (en) | Programmable logic circuit | |
JP2005057451A (en) | Programmable logic circuit | |
JP2005057452A (en) | Programmable logic circuit | |
JP3837135B2 (en) | Programmable logic circuit | |
JP3837136B2 (en) | Programmable logic circuit | |
CN105608033B (en) | Semiconductor device and method of operating the same | |
JP2003208788A (en) | Buffer by two ports memory | |
US9367450B1 (en) | Address arithmetic on block RAMs | |
JP5196538B2 (en) | Semiconductor integrated circuit design method, semiconductor integrated circuit design program, and semiconductor integrated circuit | |
JP6493044B2 (en) | Multiprocessor system | |
JP2008090360A (en) | Integrated circuit, and input data control method for reconfigurable circuit | |
JPH07226079A (en) | Semiconductor memory | |
JP4488282B2 (en) | Semiconductor integrated circuit | |
JP2008219728A (en) | Reconstructible arithmetic processing circuit | |
JPH11134863A (en) | Semiconductor memory and data writing method | |
JP2002050176A (en) | Semiconductor device, its refreshing method, memory system, and electronic equipment | |
JPH08138372A (en) | Semiconductor memory | |
JPH0589233A (en) | Line buffer memory |