JPH1195979A - Integrated circuit device - Google Patents

Integrated circuit device

Info

Publication number
JPH1195979A
JPH1195979A JP9252473A JP25247397A JPH1195979A JP H1195979 A JPH1195979 A JP H1195979A JP 9252473 A JP9252473 A JP 9252473A JP 25247397 A JP25247397 A JP 25247397A JP H1195979 A JPH1195979 A JP H1195979A
Authority
JP
Japan
Prior art keywords
circuit
integrated circuit
processing
configuration information
arithmetic
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
Application number
JP9252473A
Other languages
Japanese (ja)
Inventor
Kazunori Ouchi
和則 大内
Yukito Owaki
幸人 大脇
Hiroshige Fujii
洋重 藤井
Masatoshi Sekine
優年 関根
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP9252473A priority Critical patent/JPH1195979A/en
Priority to US09/154,027 priority patent/US6349395B2/en
Publication of JPH1195979A publication Critical patent/JPH1195979A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To enhance the mounting density and to enable a high-speed operation, by providing an arithmetic part for performing the same operation for plural lines, a constitution information holding part for holding constitution information and a control part for controlling processing at the arithmetic part, and constituting a circuit again based on the constitution information determining the constitution of this circuit. SOLUTION: This device is provided with a control part 7 for outputting the constitution information determining the constitution of a reconstitutable circuit, constitution information holding part 1 for holding this constitution information, and arithmetic part 6 for performing the same operation plural times while constituting the circuit again based on this constitution information. The constitution information of each arithmetic part 6 outputted from the control part 7 is held in the constitution information holding part 1. This constitution information is outputted through wiring 3a and 3b to each arithmetic part 6. Each arithmetic part 6 outputs arbitrary wiring 3 through wiring 5 to the plural arithmetic parts 6 so as to perform the same operation plural times. Thus, since this device is constituted by collecting units for performing processing, the area of the constitution information holding part 1 can be reduced.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、集積回路装置に係
わり、特に応用に合わせて論理を再構成することが可能
な集積回路装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an integrated circuit device, and more particularly, to an integrated circuit device capable of reconfiguring logic according to an application.

【0002】[0002]

【従来の技術】ユーザが自由に論理を構成あるいは変更
できる、PLD(Programmable LogicDevice)やFPG
A(Field Programmable Gate Array)といったFPD
(FieldProgrammable Device)は、電子機器の開発の途
中で機能の変更や回路の変更に対応できることから、開
発期間短縮に極めて有効なデバイスとして注目を集めて
いる。
2. Description of the Related Art PLDs (Programmable Logic Devices) and FPGs in which a user can freely configure or change the logic.
FPD such as A (Field Programmable Gate Array)
(Field Programmable Device) has attracted attention as a device that is extremely effective in shortening the development period because it can respond to changes in functions and circuits during the development of electronic devices.

【0003】FPDは近年、高集積化、高速化、低消費
電力化、低価格化が急速に進められているが、余分の回
路やスイッチを含むために、通常の集積回路に比べ回路
の実装密度は低く動作速度は遅い。従って、上述した開
発期間の短縮には有効であるものの、動作速度やコスト
といった性能を重要視する分野にはこれまで適用される
ことが無かった。
[0003] In recent years, FPDs have been rapidly advanced in high integration, high speed, low power consumption, and low price. However, since the FPDs include extra circuits and switches, the mounting of the circuits is smaller than that of ordinary integrated circuits. Low density and low operating speed. Therefore, although effective in shortening the development period described above, it has not been applied to fields where performance is important such as operation speed and cost.

【0004】従って、実装密度が高く、動作速度が速い
FPDが実現できれば、開発期間の短縮だけでなく、性
能が重要視される分野にも適用が可能となり、応用に合
わせて論理を再構成できる集積回路装置や、さらには、
動作中の集積回路装置の一部の論理の構成を動的に変え
ることで異なった複数の機能を持つより高度な集積回路
装置を実現することができる。
Therefore, if an FPD having a high mounting density and a high operation speed can be realized, it can be applied not only to shortening the development period but also to a field where performance is important, and the logic can be reconfigured according to the application. Integrated circuit devices and even
A more advanced integrated circuit device having a plurality of different functions can be realized by dynamically changing the configuration of a part of the logic of the operating integrated circuit device.

【0005】FPGAの一例として、図4にザイリンク
ス社のXC6200シリーズFPGAのセルを示す。こ
のFPGAは、ファンクションユニット(Function Uni
t)11と、複数のマルチプレクサ(MUX)13,1
5,17,19,21,22,23,25とを有する。
このファンクションユニット11は、これらのマルチプ
レクサ等から制御信号やデータを入力し、その制御信号
に従ってユニットの構成を行い、入力したデータに対す
る結果を出力する。
FIG. 4 shows a Xilinx XC6200 series FPGA cell as an example of an FPGA. This FPGA has a function unit (Function Uni
t) 11 and a plurality of multiplexers (MUX) 13, 1
5, 17, 19, 21, 22, 23, and 25.
The function unit 11 receives control signals and data from these multiplexers and the like, configures the unit according to the control signals, and outputs a result for the input data.

【0006】図5は、セル内のファンクションユニット
を示す図である。このファンクションユニット11は、
マルチプレクサ27,29,31,33,37と、レジ
スタ35とから構成され、入力信号X1,X2,X3を
入力して所定の出力Fを行う。
FIG. 5 is a diagram showing a function unit in a cell. This function unit 11
It is composed of multiplexers 27, 29, 31, 33, 37 and a register 35, and receives input signals X1, X2, X3 and performs a predetermined output F.

【0007】このXC6200シリーズは再構成されな
いセルは動作中まま、これらに影響を及ぼすことなく一
部のセルを再構成してそれまでと異なった機能を実現す
る動的に再構成が可能なFPGAである。
The XC6200 series is a dynamically reconfigurable FPGA that reconfigures some cells without affecting the cells that are not reconfigured to operate and achieves different functions. It is.

【0008】セルは13個のマルチプレクサと1個のレ
ジスタとマルチプレクサの入力/出力の否定論理をとる
ための複数個のインバータで構成されており、それぞれ
のマルチプレクサでどの信号を選択通過させるかをプロ
グラムすることにより、図6に例を示すように、2入力
のいかなる論理ゲートを実現することができる。
The cell is composed of thirteen multiplexers, one register, and a plurality of inverters for performing a NOT logic operation on the input / output of the multiplexer, and each multiplexer selects which signal is to be passed. Thus, any two-input logic gate can be realized as shown in FIG.

【0009】セルに回路機能を構成するために、図4,
5には示していないが、それぞれのマルチプレクサに構
成情報を保持するコンフィグレーションメモリと呼ばれ
るメモリが設けられている。XC6200ではコンフィ
グレーションメモリはSRAMが用いられている。
To configure a circuit function in a cell, FIG.
Although not shown in FIG. 5, each multiplexer is provided with a memory called a configuration memory for holding configuration information. In the XC6200, an SRAM is used as a configuration memory.

【0010】図7(a)は、演算回路の構成例を示した
図である。ここで、コンフィギュレーションメモリM1
とM2の2個のSRAMで4入力1出力(4:1)のマ
ルチプレクサ41aの4入力のいずれを通過・出力され
るかを決定し、回路構成を決めている。この2個のSR
AMで4種類の信号を出力することができるから、マル
チプレクサ41aに、4入力のうちの1つの入力を選択
させることができる。8:1のマルチプレクサでは3ビ
ットのSRAMが、16:1,32:1のマルチプレク
サではそれぞれ4ビット,5ビットのSRAMが必要と
される。また、図4に示したセルでは、MUX13では
8入力であるから3ビット、MUX15では4入力であ
るから2ビット、MUX17では8入力であるから3ビ
ット、MUX19では4入力であるから2ビット、MU
X21では2入力であるから1ビット、MUX22では
4入力であるから2ビット、MUX23では4入力であ
るから2ビット、MUX25では8入力であるから3ビ
ットが必要となり、さらに図5中の各マルチプレクサの
入力を選択するために合計6ビットが必要となるため、
合計すると、セル1個あたり24ビットのSRAMが必
要である。
FIG. 7A is a diagram showing a configuration example of an arithmetic circuit. Here, the configuration memory M1
And two SRAMs M2 and M2 determine which of the four inputs of the four-input one-output (4: 1) multiplexer 41a is passed or output, and the circuit configuration is determined. These two SRs
Since four types of signals can be output by the AM, the multiplexer 41a can select one of the four inputs. The 8: 1 multiplexer requires a 3-bit SRAM, and the 16: 1 and 32: 1 multiplexers require a 4-bit and 5-bit SRAM, respectively. Also, in the cell shown in FIG. 4, the MUX 13 has 3 inputs because it has 8 inputs, the MUX 15 has 2 bits because it has 4 inputs, the MUX 17 has 3 bits because it has 8 inputs, and the MUX 19 has 2 bits because it has 4 inputs. MU
In X21, one bit is required because of two inputs, in MUX22, two bits are required because of four inputs, in MUX23, two bits are required because of four inputs, and in MUX25, three bits are required because of eight inputs. Further, each multiplexer in FIG. Since a total of 6 bits are required to select the input of
In total, one cell requires 24 bits of SRAM.

【0011】セル外部よりこれらのSRAMに構成情報
を入力して、セルの機能を特定することにより、図6に
示す2入力論理ゲートが実現できる。そして、FPGA
が動作中に、一部のセルの構成情報を書き換えることが
可能で、動的にFPGAで構成する回路構成を変え、機
能を再構成することができる。
By inputting configuration information to these SRAMs from outside the cell and specifying the function of the cell, the two-input logic gate shown in FIG. 6 can be realized. And FPGA
During operation, the configuration information of some cells can be rewritten, and the circuit configuration formed by the FPGA can be dynamically changed and the function can be reconfigured.

【0012】また、セルだけでなく、セル間の配線も同
様にして再構成することができる。図7(b)はその一
例で、4方向からの配線のいずれからいずれへと信号を
通過させるかを、M1からM6の6個のSRAMで決定
し、信号の配線を構成している。例えばSRAM(M
1)に有効な構成情報が保持されると、上から左、ある
いはその逆に信号は伝わることになる。
In addition, not only cells but also wiring between cells can be reconfigured in the same manner. FIG. 7B shows an example of this, in which wiring from four directions to which signal is passed is determined by the six SRAMs M1 to M6 to configure signal wiring. For example, SRAM (M
When valid configuration information is held in 1), a signal is transmitted from top to left or vice versa.

【0013】このように、FPGAを用いることにより
ユーザは任意の回路を自由に設定することができ、ま
た、動的に回路を再構成することができる。このことか
ら、電子機器の開発過程における試行錯誤や機能変更な
どに容易に対応でき開発期間の短縮に有効である。ま
た、ごく少量しか作成しない電子機器への応用にも適し
ている。
As described above, by using the FPGA, the user can freely set an arbitrary circuit, and can dynamically reconfigure the circuit. From this, it is possible to easily cope with trial and error and function change in the development process of the electronic device, which is effective for shortening the development period. It is also suitable for application to electronic devices that make only a small amount.

【0014】次に、暗号処理集積回路について、FPD
を適用する場合について説明する。暗号処理アルゴリズ
ムは種々開示されているが、その中の一つとしてNTT
社より開示されたFEAL−8がある(特公平6−90
597)。
Next, regarding the cryptographic processing integrated circuit, the FPD
The case where is applied will be described. Various cryptographic processing algorithms have been disclosed. One of them is NTT.
FEAL-8 disclosed by the company (Japanese Patent Publication No. 6-90)
597).

【0015】図9はこのFEAL−8の暗号鍵を入力し
て拡大鍵を生成する鍵処理部であり、同図の鍵処理部の
中の関数fK を図8示した。また、図11は拡大鍵を用
いて平文を暗号文に、また暗号文を平文に変換する暗号
処理部であり、同図の暗号処理部の関数fを図10に示
した。鍵処理も暗号処理もそれぞれ関数fK 、関数fに
よる処理を8回繰り返してデータのランダム度を高め、
暗号としての強度を高めている。この繰り返し回数を段
数という。
FIG. 9 shows a key processing unit for generating an extended key by inputting the FEAL-8 encryption key. FIG. 8 shows a function fK in the key processing unit shown in FIG. FIG. 11 shows an encryption processing unit for converting a plaintext into a ciphertext and an encrypted text into a plaintext using an expanded key. FIG. 10 shows a function f of the encryption processing unit shown in FIG. The key processing and the encryption processing are each repeated eight times by the function fK and the function f to increase the randomness of the data,
Increases the strength as a cipher. The number of repetitions is called the number of steps.

【0016】FEAL−8は鍵処理部、暗号処理部のい
ずれも、64ビットのデータが左右それぞれ32ビット
のデータに分けられて入力される。32ビットのデータ
は関数fK 、fへはα1,α2,α3,α4あるいはβ
1,β2,β3,β4の4つのグループの8ビットのデ
ータに分けられて入力される。つまり、8ビットを単位
にして演算処理される。
In the FEAL-8, both the key processing unit and the encryption processing unit are input with 64-bit data divided into left and right 32-bit data. The 32-bit data is a function fK and f is α1, α2, α3, α4 or β
The data is divided and input into four groups of eight bits, namely, 1, β2, β3, and β4. That is, arithmetic processing is performed in units of 8 bits.

【0017】集積回路には、このように複数ビットn
(n>1)を単位として処理・演算を行うものが多い。
そして、特に偶数ビット、言い換えれば2nビットを単
位として処理・演算を行うものが多い。
In the integrated circuit, a plurality of bits n
In many cases, processing and calculation are performed in units of (n> 1).
In particular, in many cases, processing / operation is performed in units of even-numbered bits, in other words, 2n bits.

【0018】関数fK 、fの中の、丸に+印(EXO
R)、および関数Si(i=1,0)演算子で、EXO
Rは8ビットのビット対応の排他的論理和をとり、関数
Si(i=1,0)は2つの8ビットの入力を加算し、
さらにiを加えたのち、左に2ビット回転シフトする演
算をする。
In the functions fK and f, a circle is indicated by a + sign (EXO
R) and the function Si (i = 1, 0) operator,
R is an exclusive OR corresponding to 8 bits, and the function Si (i = 1, 0) adds two 8-bit inputs,
After adding i, an operation of rotating left by 2 bits is performed.

【0019】FEAL−8の詳細な動作については省略
する。暗号は必ず暗号破りの攻撃にあう。そこで、暗号
用集積回路をPLDにより再構成可能としておくことに
より、ときどき、あるいは定期的にまたは暗号文を送る
度に演算子の一部あるいは演算子間のデータ線の結線を
変えることにより、暗号文の処理が変わり、極めて破ら
れにくい暗号処理集積回路が実現できる。再構成可能な
集積回路の有効な応用分野である。
The detailed operation of FEAL-8 will be omitted. Cryptography is always the key to cracking attacks. Therefore, by making the cryptographic integrated circuit reconfigurable by the PLD, a part of the operator or the connection of the data line between the operators is changed from time to time or periodically or every time a cipher text is sent, so that the The processing of the sentence changes, and an encryption processing integrated circuit that is extremely difficult to break can be realized. This is an effective field of application for reconfigurable integrated circuits.

【0020】ここに、図4,図5に示したFPGAを用
いることはもちろんできる。この場合、たとえば8ビッ
トの排他的論理和を構成するとそれぞれ24ビットのコ
ンフィグレーション用のSRAMを含んだ8個のセルを
最低必要とする。これは、上述したように実装密度の点
で好ましくなかった。
Here, it is needless to say that the FPGA shown in FIGS. 4 and 5 can be used. In this case, for example, when an exclusive OR of 8 bits is formed, a minimum of 8 cells including a 24-bit configuration SRAM is required. This is not preferable in terms of mounting density as described above.

【0021】[0021]

【発明が解決しようとする課題】このように、FPGA
は回路の実装密度が低く、動作速度が遅いという欠点が
ある。まず、実装密度について見てみると、例えば固定
した素子や配線でからなる通常の集積回路(ハードワイ
ヤード・ロジックと呼ぶ)では4個のトランジスタで構
成できる2入力のNANDゲートを例にとると、FPG
Aでは図4,図5に示すように数多くのマルチプレクサ
やインバータを消費する。さらには、マルチプレクサと
同等以上のコンフィグレーション・メモリを必要とす
る。FPGAでは、ハードワイヤード・ロジックの1/
10以下の実装密度しか達成できないと言われている。
SUMMARY OF THE INVENTION As described above, the FPGA
However, there is a disadvantage that the circuit density is low and the operation speed is low. First, looking at the packaging density, for example, in a normal integrated circuit (called hard-wired logic) composed of fixed elements and wiring, taking a two-input NAND gate that can be configured with four transistors as an example, FPG
A consumes many multiplexers and inverters as shown in FIGS. Further, a configuration memory equal to or more than a multiplexer is required. In FPGA, 1/1 of hard-wired logic
It is said that only a mounting density of 10 or less can be achieved.

【0022】次に、動作速度については、同様に2入力
NANDゲートを例にとると、ハードワイヤード・ロジ
ックでは信号は1段のゲートを通過するだけであるが、
FPGAでは図4,図5に示すように最低でも4個のマ
ルチプレクサと何個かのインバータを通過する。このた
めにFPGAでは信号の伝搬遅延時間は遅くなる。ハー
ドワイヤード・ロジックに比べおよそ10倍程度動作速
度は遅くなると言われている。
Next, as for the operation speed, taking a 2-input NAND gate as an example, in the case of a hard-wired logic, a signal only passes through a single-stage gate.
In the FPGA, as shown in FIGS. 4 and 5, the signal passes through at least four multiplexers and some inverters. Therefore, in the FPGA, the signal propagation delay time is delayed. It is said that the operation speed is about 10 times lower than that of hard-wired logic.

【0023】これらのことから、コスト・パフォーマン
スを重視される分野にFPGAを適用することは難し
い。
For these reasons, it is difficult to apply the FPGA to a field where cost performance is important.

【0024】一方、集積回路製造技術の進歩によりシリ
コンチップ上に搭載できる素子数は飛躍的に増大した。
この増大した搭載可能な素子を活用して、従来、マイク
ロプログラム制御によって達成してきた集積回路の汎用
性を、再構成可能なハードウェアで実現しようとする試
みがなされている。ここに、高速に動作する再構成可能
な集積回路が実現されれば、柔軟性・汎用性に加え、こ
れまでハードワイヤード・ロジックによる専用集積回路
の独壇場であった高処理能力を合わせ持った、新しい集
積回路を実現することが可能となる。
On the other hand, the number of elements that can be mounted on a silicon chip has increased dramatically due to advances in integrated circuit manufacturing technology.
Attempts have been made to realize the versatility of an integrated circuit, which has been conventionally achieved by microprogram control, with reconfigurable hardware by utilizing the increased mountable elements. Here, if a reconfigurable integrated circuit that operates at high speed is realized, in addition to flexibility and versatility, it will have the high processing power that was the only unique integrated circuit using hard-wired logic. A new integrated circuit can be realized.

【0025】本発明の上記事情に鑑みてなされたもので
あり、その目的は、動的に論理を再構成することができ
る集積回路について、実装密度が高く、高速に動作する
集積回路装置を提供することにある。
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide an integrated circuit device capable of dynamically reconfiguring logic, having a high packaging density and operating at high speed. Is to do.

【0026】[0026]

【課題を解決するための手段】上記目的を達成するた
め、請求項1の発明は、回路の構成を決定する構成情報
に基づいて再構成を行い、同一演算を複数行う演算部
と、前記構成情報を保持する構成情報保持部と、前記演
算部の処理を制御する制御部と、を備えることを特徴と
する。
According to a first aspect of the present invention, there is provided an arithmetic unit for performing reconfiguration based on configuration information for determining a configuration of a circuit and performing a plurality of identical operations; It is characterized by comprising a configuration information holding unit for holding information, and a control unit for controlling processing of the arithmetic unit.

【0027】上記発明の構成では、演算部は、構成情報
に基づいて再構成を行い、同一演算を複数行うようにし
てある。ここで、演算とは、排他的論理和のような粒度
の細かい単一ゲートが行う演算の他、加算器や乗算器な
どの中規模の演算や、ALUなどの大規模な演算を含
む。
In the configuration of the present invention, the arithmetic unit performs reconfiguration based on the configuration information and performs a plurality of identical operations. Here, the operation includes not only the operation performed by a single gate having a fine granularity such as exclusive OR, but also a medium-scale operation such as an adder and a multiplier, and a large-scale operation such as an ALU.

【0028】このように、同一演算を複数行う場合に
は、処理単位毎にまとめて構成する、すなわち、同一の
構成情報に基づいて再構成するようにしたので、実装密
度を向上させることが出来るのである。この処理単位と
は、ファンクションユニット単位でもよいし、複数のフ
ァンクションユニットを含んだ処理の単位でもよい。こ
こで、再構成可能な集積回路には、その総てが再構成可
能な場合とその一部が再構成可能な場合との双方を含
む。また、構成情報保持部は、情報を記憶し、また、読
み書きできるものであればよい。
As described above, when a plurality of identical operations are performed, they are configured collectively for each processing unit, that is, reconfigured based on the same configuration information, so that the mounting density can be improved. It is. The processing unit may be a function unit or a processing unit including a plurality of function units. Here, the reconfigurable integrated circuit includes both a case where all of them are reconfigurable and a case where a part thereof is reconfigurable. Further, the configuration information holding unit may be any unit that can store information and can read and write.

【0029】請求項2の発明は、前記請求項1における
演算部は、ハードワイヤ化により固定の演算を行う回路
を含むことを特徴とする。
According to a second aspect of the present invention, the arithmetic unit according to the first aspect includes a circuit for performing a fixed operation by hard wiring.

【0030】このようにハードワイヤ化により固定の演
算を行うようにすることで、実装密度のさらなる向上の
他、更に、処理速度を向上させることができるのであ
る。すなわち、演算部の一部若しくは全部をハードワイ
ヤ化により、再構成可能な回路とした場合に必要な余分
な回路やスイッチを必要としないので、より実装密度の
向上を図ることが出来るのである。また、余計な回路や
スイッチを必要としないので、処理速度の向上を図るこ
とが出来るのである。
As described above, by performing the fixed arithmetic operation by using a hard wire, the processing density can be further improved, and the processing speed can be further improved. That is, since a part or the whole of the arithmetic unit is hardwired, an extra circuit and a switch required when a reconfigurable circuit is not required, the mounting density can be further improved. In addition, since no extra circuits or switches are required, the processing speed can be improved.

【0031】請求項3の発明は、前記請求項1における
演算部は、前記構成情報保持回路に保持された構成情報
の複数のビットから再構成を行い、所定の演算を行う第
1の部分回路と、ハードワイヤ化により固定の演算を行
う第2の部分回路と、を有し、前記第2の部分回路の相
互の接続関係を前記第1の部分回路にて再構成可能とす
ることを特徴とする。
According to a third aspect of the present invention, the arithmetic unit according to the first aspect performs a first partial circuit for performing a predetermined operation by reconstructing from a plurality of bits of the configuration information held in the configuration information holding circuit. And a second partial circuit for performing a fixed operation by hard wiring, wherein a mutual connection relationship between the second partial circuits can be reconfigured by the first partial circuit. And

【0032】上記発明の構成では、ハードワイヤ化によ
り固定の演算を行う第2の部分回路として作っておき、
その相互の接続関係を再構成可能としたものである。こ
のようにすることで、上述のような理由から、実装密度
のさらなる向上の他、更に、処理速度を向上させること
ができるのである。
In the configuration of the present invention, a second partial circuit for performing a fixed operation by hard wiring is prepared.
The mutual connection relationship can be reconfigured. By doing so, the processing speed can be further improved, in addition to the further improvement of the mounting density, for the reasons described above.

【0033】請求項4の発明は、前記請求項1乃至3に
おける制御部は、再構成可能な回路であることを特徴と
する。
The invention according to a fourth aspect is characterized in that the control unit according to the first to third aspects is a reconfigurable circuit.

【0034】上記発明の構成では、演算部の制御を行う
制御部を再構成可能な回路としたものである。このよう
に再構成可能とすることにより、演算部が行う処理の手
続きをも変更可能とすることが出来るのである。
In the configuration of the present invention, the control unit for controlling the arithmetic unit is a reconfigurable circuit. By making it reconfigurable in this way, it is possible to change the procedure of the processing performed by the arithmetic unit.

【0035】[0035]

【発明の実施の形態】以下本発明に係る集積回路装置の
実施形態について、図面を参照しながら詳細に説明す
る。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the integrated circuit device according to the present invention will be described in detail with reference to the drawings.

【0036】図1に第1の実施形態の集積回路装置を示
す。この集積回路装置は、再構成可能な回路の構成を決
定する構成情報を出力する制御部7と、この構成情報を
保持する構成情報保持部1と、この構成情報に基づいて
再構成を行い、同一演算を複数行う演算部6と、を備え
るものである。制御部7から出力された各演算部の構成
情報は、構成情報保持部1に保持される。この構成情報
は、配線3aや3bを通じて、各演算部6に出力され
る。各演算部6は同一演算を複数行うように、配線3の
任意の配線が複数の演算部に配線5を通じて出力される
ようにしてある。このように、処理を行う単位をまとめ
て構成するようにしたので、構成情報保持部1の面積を
低減することが出来る。従って、実装面積を低減するこ
とができる。
FIG. 1 shows an integrated circuit device according to the first embodiment. The integrated circuit device includes a control unit 7 that outputs configuration information that determines a configuration of a reconfigurable circuit, a configuration information holding unit 1 that holds the configuration information, and performs reconfiguration based on the configuration information. And an operation unit 6 that performs a plurality of identical operations. The configuration information of each operation unit output from the control unit 7 is stored in the configuration information storage unit 1. This configuration information is output to each operation unit 6 via the wirings 3a and 3b. Arbitrary wiring of the wiring 3 is output to the plurality of processing units via the wiring 5 so that each processing unit 6 performs a plurality of identical calculations. As described above, since the units for performing the processing are configured collectively, the area of the configuration information holding unit 1 can be reduced. Therefore, the mounting area can be reduced.

【0037】ここで、演算とは、排他的論理和のような
粒度の細かい単一ゲートが行う演算でも、加算器や乗算
器などの中規模の演算でも、ALUなどの大規模な演算
でも良い。そして、一つづつ個別に機能回路どうしを結
合して所望の機能を持つ集積回路を構成、あるいは再構
成するのではなく、処理を行う単位をまとめて構成ある
いは再構成することを特徴とする。
Here, the operation may be an operation performed by a single gate having a fine granularity such as an exclusive OR, a medium-scale operation such as an adder or a multiplier, or a large-scale operation such as an ALU. . Then, instead of individually combining functional circuits one by one to configure or reconfigure an integrated circuit having a desired function, a unit for performing processing is configured or reconfigured collectively.

【0038】また、制御部7は、再構成可能な回路であ
るFPGAを用いている。このようにFPGAを用いる
ことにより、演算部が行う処理の手続きをも変更可能と
することが出来る。
The control unit 7 uses an FPGA which is a reconfigurable circuit. By using the FPGA as described above, the procedure of the processing performed by the arithmetic unit can be changed.

【0039】ここで、図9や図11に示す回路につい
て、本実施形態を適用した場合について説明する。図1
では、関数fK 、関数fで代表される演算処理部を演算
部6となるように構成する。ここには、図8や図10に
示した排他的論理和、関数Siなどの演算子や処理の中
間結果を蓄えるレジスタおよびこれらの間を結ぶデータ
線などが含まれる。
Here, the case where this embodiment is applied to the circuits shown in FIGS. 9 and 11 will be described. FIG.
Here, the arithmetic processing unit represented by the function fK and the function f is configured to be the arithmetic unit 6. This includes the registers for storing the intermediate results of the processing and the operators such as the exclusive OR and the function Si shown in FIG. 8 and FIG. 10, and the data lines connecting them.

【0040】また、図9や図11に示した回路の8段の
処理を全部回路として設けても良く、また各段の処理が
相似であることからより少ない段数、たとえば1段、2
段、4段、の回路のみを組み込んでこれを繰り返し用い
ることにより8段の処理を行っても良い。FPGAなど
で再構成可能とするときにはその規模が大きくなること
から、より少ない段数のみを実装してこれを繰り返し使
うようにした方が良い。
Also, the processing of the eight stages of the circuits shown in FIGS. 9 and 11 may be all provided as circuits, and since the processing of each stage is similar, a smaller number of stages, for example, one stage, two stages,
An eight-stage process may be performed by incorporating only four-stage and four-stage circuits and repeatedly using them. When reconfigurable by an FPGA or the like, the scale becomes large. Therefore, it is better to mount only a smaller number of stages and repeatedly use them.

【0041】ここで、図1の制御部7は演算部6の処理
を制御する回路を示し、例えば各演算子の処理の同期を
とったり、段数処理の繰り返し回数を制御したり、関数
fに入力する拡大鍵の選択をしたりといった制御を行
う。また、制御部7は必ずしも、演算部6のような8ビ
ットのデータを単位とした処理ではないので、個々の回
路に対応して、コンフィグレーション用SRAMを備え
るようにする。
Here, the control unit 7 shown in FIG. 1 shows a circuit for controlling the processing of the arithmetic unit 6, for example, for synchronizing the processing of each operator, controlling the number of repetitions of the number of steps processing, and inputting it to the function f. Control to select an expanded key to be executed. In addition, since the control unit 7 is not always a process that uses 8-bit data as a unit as in the arithmetic unit 6, a configuration SRAM is provided for each circuit.

【0042】また、図1の構成情報保持部1としてSR
AMを用いているが、このSRAMの一つに保持されて
いる構成情報は、図1から明らかなように8ビットの演
算部に共通に送られ8ビットの相似の回路を構成するよ
うにしてある。
The configuration information holding unit 1 shown in FIG.
Although the AM is used, the configuration information held in one of the SRAMs is sent in common to an 8-bit arithmetic unit as shown in FIG. 1 so as to configure an 8-bit analogous circuit. is there.

【0043】本実施形態では、図9,11の暗号処理集
積回路が8ビットを単位にした処理を行うものであるこ
とに着目して、つまり、各ビットの対応する部分は同一
の回路構成をとることに着目して、演算部の回路の構成
情報を1ビットごとに与えるのではなく、処理単位ごと
にまとめて一括して与える。これにより、コンフィグレ
ーション用SRAMの数を削減して実装密度を向上させ
ることができる。
In this embodiment, attention is paid to the fact that the cryptographic processing integrated circuit of FIGS. 9 and 11 performs processing in units of 8 bits, that is, the corresponding portions of each bit have the same circuit configuration. Paying attention to this fact, the configuration information of the circuit of the arithmetic unit is provided collectively for each processing unit instead of being provided for each bit. As a result, the number of configuration SRAMs can be reduced and the packaging density can be improved.

【0044】FEAL−8では8ビットを単位として演
算処理が行われるので、図1に示すように8ビットの演
算部に対して1セットのコンフィグレーション用SRA
Mが構成情報を提供する。これによりコンフィグレーシ
ョン用SRAMはFPGAの場合の1/8に減少し、全
体の実装密度は大幅に向上する。いま、FPGAにおい
てマルチプレクサ、インバータなどの演算を実行する素
子がしめる面積とコンフィグレーション用SRAMがし
める面積が1:1であると仮定すると、本発明により、
図1の演算部が占める面積は演算部の回路の構成情報を
1ビット毎に与えた場合に比べ56%に減少する。
In the FEAL-8, the arithmetic processing is performed in units of 8 bits. Therefore, as shown in FIG.
M provides configuration information. As a result, the configuration SRAM is reduced to 1/8 of that of the FPGA, and the overall mounting density is greatly improved. Now, assuming that the area of an element that performs an operation such as a multiplexer and an inverter in an FPGA and the area of an SRAM for configuration are 1: 1, according to the present invention,
The area occupied by the operation unit in FIG. 1 is reduced to 56% as compared with a case where the configuration information of the circuit of the operation unit is given for each bit.

【0045】このように、本実施形態では、処理単位ご
とにまとめて構成するようにすることにより、実装密度
を大幅に向上させることができる。
As described above, in the present embodiment, the packaging density can be greatly improved by configuring the processing units collectively.

【0046】図2は、第2の実施形態の集積回路装置を
示す図である。この体集積回路装置は、再構成可能な回
路の構成を決定する構成情報を出力する制御部7と、こ
の構成情報を保持する構成情報保持部1と、この構成情
報に基づいて再構成を行い、同一演算を複数行う演算部
9と、を備え、演算部9は、ハードワイヤ化により固定
の演算を行うようにしてある。図1では演算部の排他的
論理和、関数Si、処理の途中結果を蓄えるレジスタな
どもFPGA等のPLDを用いて1ゲートづつ再構成し
ていた。それぞれの演算子などの実装密度は低く、また
処理速度も遅い。
FIG. 2 is a diagram showing an integrated circuit device according to the second embodiment. The body integrated circuit device outputs a configuration information for determining a configuration of a reconfigurable circuit, a configuration information holding unit 1 for holding the configuration information, and performs reconfiguration based on the configuration information. , An arithmetic unit 9 for performing a plurality of identical operations, and the arithmetic unit 9 is configured to perform fixed arithmetic operations by hard-wiring. In FIG. 1, the exclusive OR of the operation unit, the function Si, the register for storing the intermediate result of the processing, and the like are also reconfigured one gate at a time using a PLD such as an FPGA. The implementation density of each operator is low and the processing speed is slow.

【0047】そこで、図2では、排他的論理和、関数S
i、レジスタなどの演算子あるいは機能回路をハードワ
イヤー・ロジックとして作り込んでおき、これらの機能
回路間をどう結合するかを再構成可能にしておく。この
とき再構成は、図1と同様の処理単位ごとに行うように
する。本実施形態の集積回路装置によれば、実装密度の
みでなく処理速度も向上させることができる。
Therefore, in FIG. 2, the exclusive OR, the function S
Operators such as i and registers or functional circuits are created as hard-wired logic, and how these functional circuits are connected can be reconfigured. At this time, reconstruction is performed for each processing unit similar to that in FIG. According to the integrated circuit device of the present embodiment, not only the mounting density but also the processing speed can be improved.

【0048】図3は、第3の実施形態の集積回路装置を
示す図である。この集積回路装置は、再構成可能な回路
の構成を決定する構成情報を出力する制御部7と、この
構成情報を保持する構成情報保持部1と、この構成情報
に基づいて再構成を行い、同一演算を複数行う演算部9
と、を備え、演算部9は、ハードワイヤ化により固定の
演算を行うようにしてある。 本実施形態においても、
排他的論理和、関数Si、レジスタなどの演算子あるい
は機能回路をハードワイヤー・ロジックとして作り込ん
でおき、これらの機能回路間をどう結合するかを再構成
可能にしておく。このとき再構成は、図1と同様の処理
単位ごとに行うようにする。本実施形態の集積回路装置
によれば、実装密度のみでなく処理速度も向上させるこ
とができる。
FIG. 3 is a diagram showing an integrated circuit device according to the third embodiment. The integrated circuit device includes a control unit 7 that outputs configuration information that determines a configuration of a reconfigurable circuit, a configuration information holding unit 1 that holds the configuration information, and performs reconfiguration based on the configuration information. Arithmetic unit 9 that performs a plurality of identical operations
The arithmetic unit 9 is configured to perform fixed arithmetic by hard-wired. Also in this embodiment,
Operators or functional circuits such as an exclusive OR, a function Si, and a register are created as hard-wired logic, and how these functional circuits are connected can be reconfigured. At this time, reconstruction is performed for each processing unit similar to that in FIG. According to the integrated circuit device of the present embodiment, not only the mounting density but also the processing speed can be improved.

【0049】この集積回路装置を、例えば、図9や図1
1の回路に適用した場合には、1つの構成情報は8ビッ
トの演算回路に共通に送られ、8ビットの相似な演算回
路が構成されるようにする。この場合には、ハードワイ
ヤー・ロジックはFPGAなどのPLDと比べ、実装密
度は一桁以上向上し、処理時間は1/10程度になるの
で、図2の演算部は図1のそれと比べて面積は1/10
以下に縮小し、処理速度は10倍程度に改善される。
This integrated circuit device is used, for example, in FIGS.
When applied to one circuit, one piece of configuration information is sent in common to an 8-bit arithmetic circuit so that a similar 8-bit arithmetic circuit is configured. In this case, the mounting density of the hard wire logic is improved by one digit or more and the processing time is reduced to about 1/10 as compared with the PLD such as the FPGA, so that the arithmetic unit of FIG. 2 has a larger area than that of FIG. Is 1/10
The processing speed is improved to about 10 times.

【0050】図1の実施形態では処理段数全部を組み込
むことが面積的に難しく少ない段数を組み込みこれを繰
り返し使うことで暗号処理をしていたが、図3の実施形
態では面積が1/10以下になることで全処理段数を実
装することが無理なくできるようになる。こうすること
により、一つの暗号文処理についてそれぞれの段は一回
しか使われることがないので、次から次へと暗号文を入
力して暗号処理することができる。8段すべてを実装す
ることにより1段しか実装していない場合に比べて、処
理能力は8倍向上する。
In the embodiment of FIG. 1, it is difficult to incorporate the entire number of processing steps in terms of area, and the encryption processing is performed by incorporating a small number of steps and repeatedly using them. In the embodiment of FIG. 3, the area is 1/10 or less. As a result, it becomes possible to easily implement all the processing stages. By doing so, each stage is used only once for one ciphertext process, so that ciphertexts can be input from one to the next and subjected to cryptographic processing. By mounting all eight stages, the processing capacity is improved eight times compared to the case where only one stage is mounted.

【0051】このように、機能回路単位でハードワイヤ
ー化し、ハードワイヤー化された機能回路を演算処理す
るビット単位でまとめて1セットのコンフィグレーショ
ン用メモリで構成/再構成することにより、回路の実装
密度、処理能力ともに大きく向上させることができる。
As described above, the circuit is hard-wired in functional circuit units, and the hard-wired functional circuits are collectively configured and reconfigured in one set of configuration memories in units of bits for arithmetic processing, thereby implementing the circuit. Both the density and the processing capacity can be greatly improved.

【0052】ここで、機能回路とは、排他的論理和のよ
うな粒度の細かい単一ゲートでも、関数Siや加算器や
乗算器などの中規模の演算回路でも、ALUなどの大規
模な演算回路でも良い。そして、一つづつ個別に機能回
路どうしを結合して所望の機能を持つ集積回路を構成、
あるいは再構成するのではなく、処理を行う単位をまと
めて構成あるいは再構成することを特徴とする。
Here, a functional circuit is a single gate having a fine granularity such as an exclusive OR, a medium-scale arithmetic circuit such as a function Si, an adder or a multiplier, or a large-scale arithmetic circuit such as an ALU. It may be a circuit. Then, the functional circuits are individually combined one by one to form an integrated circuit having a desired function,
Alternatively, instead of reconfiguring, processing units are collectively configured or reconfigured.

【0053】構成情報を保持するコンフィグレーション
用メモリは、上述したようにSRAMでもよいし、また
強誘電体を用いたいわゆるFRAMでも良いし、情報を
読み/書き/記憶できる素子であれば何でも良い。しか
しながら、FRAMなどの不揮発性メモリを用いれば、
電源を切った場合でも構成情報は保持されたままとなる
ので、そのような場合が想定される分野においても用い
ることが出来る。
The configuration memory for holding the configuration information may be an SRAM as described above, a so-called FRAM using a ferroelectric material, or any element that can read / write / store information. . However, if a non-volatile memory such as FRAM is used,
Even when the power is turned off, the configuration information is retained, so that it can be used in a field where such a case is assumed.

【0054】また、本実施形態の再構成可能な回路とし
てFPGAを用いたが、それに限られず、PLAやPG
Aなどの再構成可能なPLDを用いることもできる。
Although the FPGA is used as the reconfigurable circuit in the present embodiment, the present invention is not limited to this.
A reconfigurable PLD such as A can also be used.

【0055】ここでは、暗号処理用の集積回路装置を例
にとり説明したが、複数ビットを単位として演算・処理
を行う、回路の一部が所望の回路に構成あるいは再構成
できる集積回路装置であれば、本発明は有効である。
Here, the integrated circuit device for cryptographic processing has been described as an example. However, any integrated circuit device that performs arithmetic and processing in units of a plurality of bits and in which a part of the circuit can be configured or reconfigured into a desired circuit can be used. If so, the present invention is effective.

【0056】その他、本発明の要旨を逸脱しない範囲
で、種々変形して実施することができる。
In addition, various modifications can be made without departing from the spirit of the present invention.

【0057】[0057]

【発明の効果】以上説明してきたように、本発明に係る
集積回路装置によれば、動的に論理を再構成することが
できる集積回路について、実装密度が高く、高速に動作
するようにさせることができる。
As described above, according to the integrated circuit device of the present invention, an integrated circuit capable of dynamically reconfiguring logic is operated at a high mounting density and at a high speed. be able to.

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

【図1】第1の実施形態の集積回路装置を示す図であ
る。
FIG. 1 is a diagram illustrating an integrated circuit device according to a first embodiment.

【図2】第2の実施形態の集積回路装置を示す図であ
る。
FIG. 2 is a diagram illustrating an integrated circuit device according to a second embodiment.

【図3】第3の実施形態の集積回路装置を示す図であ
る。
FIG. 3 is a diagram illustrating an integrated circuit device according to a third embodiment.

【図4】ザイリンクス社のXC6200シリーズFPG
Aのセルを示す概念図である。
Fig. 4 Xilinx XC6200 series FPG
FIG. 3 is a conceptual diagram showing a cell A.

【図5】ザイリンクス社のXC6200シリーズFPG
Aのセルのファンクションユニットを示す図である。
Figure 5: Xilinx XC6200 series FPG
FIG. 3 is a diagram showing a function unit of a cell A.

【図6】ザイリンクス社のXC6200シリーズFPG
Aのセルで実現できる2入力の論理ゲートを説明するた
めの図である。
Figure 6: Xilinx XC6200 Series FPG
FIG. 3 is a diagram for explaining a two-input logic gate that can be realized by the cell A.

【図7】ザイリンクス社のXC6200のコンフィグレ
ーション用SRAMを説明するための図であって、
(a)は演算回路を構成する例であり、(b)は配線を
構成する例である。
FIG. 7 is a diagram for explaining a configuration SRAM of Xilinx XC6200,
(A) is an example of configuring an arithmetic circuit, and (b) is an example of configuring wiring.

【図8】鍵処理フローの中の関数fK である。FIG. 8 shows a function fK in the key processing flow.

【図9】FEAL−8のアルゴリズムを用いた暗号鍵を
入力して拡大鍵を生成する鍵処理のフローである。
FIG. 9 is a flowchart of a key process for generating an extended key by inputting an encryption key using the FEAL-8 algorithm.

【図10】暗号処理部の中の関数fである。FIG. 10 shows a function f in the cryptographic processing unit.

【図11】拡大鍵を用いて平文を暗号部にまたは暗号文
を平文に変換する暗号処理部である。
FIG. 11 illustrates an encryption processing unit that converts a plaintext into an encryption unit or an encrypted text into a plaintext using an expanded key.

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

1 構成情報保持情報(SRAM) 3,5 配線 6,41 FPGAセル 7 制御部FPGA 9 ハードワイヤ化したセル 11 ファンクションユニット 13,15,17,19,21,22,23,25,2
7,29,31,33,37,39,43 マルチプレ
クサ 35 フリップフロップ
DESCRIPTION OF SYMBOLS 1 Configuration information holding information (SRAM) 3,5 Wiring 6,41 FPGA cell 7 Control part FPGA 9 Hard-wired cell 11 Function unit 13,15,17,19,21,22,23,25,2
7, 29, 31, 33, 37, 39, 43 Multiplexer 35 Flip-flop

───────────────────────────────────────────────────── フロントページの続き (72)発明者 関根 優年 神奈川県川崎市幸区小向東芝町1 株式会 社東芝研究開発センター内 ────────────────────────────────────────────────── ─── Continuing from the front page (72) Inventor Yuji Sekine 1 Toshiba R & D Center, Komukai Toshiba-cho 1

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 回路の構成を決定する構成情報に基づい
て再構成を行い、同一演算を複数行う演算部と、 前記構成情報を保持する構成情報保持部と、 前記演算部の処理を制御する制御部と、 を備えることを特徴とする集積回路装置。
1. An arithmetic unit for performing reconfiguration based on configuration information for determining a circuit configuration and performing a plurality of identical operations, a configuration information holding unit for holding the configuration information, and controlling processing of the arithmetic unit. An integrated circuit device comprising: a control unit.
【請求項2】 前記演算部は、 ハードワイヤ化により固定の演算を行う回路を含むこと
を特徴とする請求項1記載の集積回路装置。
2. The integrated circuit device according to claim 1, wherein the operation unit includes a circuit that performs a fixed operation by hard wiring.
【請求項3】 前記演算部は、 前記構成情報保持回路に保持された構成情報の複数のビ
ットから再構成を行い、所定の演算を行う第1の部分回
路と、 ハードワイヤ化により固定の演算を行う第2の部分回路
と、 を有し、 前記第2の部分回路の相互の接続関係を前記第1の部分
回路にて再構成可能とすることを特徴とする請求項1記
載の集積回路装置。
3. A first partial circuit for performing a predetermined operation by reconstructing a plurality of bits of the configuration information held in the configuration information holding circuit and performing a predetermined operation, and a fixed operation by hard wiring. 2. The integrated circuit according to claim 1, further comprising: a second partial circuit that performs the following: and wherein the mutual connection relationship of the second partial circuits can be reconfigured by the first partial circuit. apparatus.
【請求項4】 前記制御部は、 再構成可能な回路であることを特徴とする請求項1乃至
3のいずれかに記載の集積回路装置。
4. The integrated circuit device according to claim 1, wherein the control unit is a reconfigurable circuit.
JP9252473A 1997-09-17 1997-09-17 Integrated circuit device Pending JPH1195979A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9252473A JPH1195979A (en) 1997-09-17 1997-09-17 Integrated circuit device
US09/154,027 US6349395B2 (en) 1997-09-17 1998-09-16 Configurable integrated circuit and method of testing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9252473A JPH1195979A (en) 1997-09-17 1997-09-17 Integrated circuit device

Publications (1)

Publication Number Publication Date
JPH1195979A true JPH1195979A (en) 1999-04-09

Family

ID=17237879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9252473A Pending JPH1195979A (en) 1997-09-17 1997-09-17 Integrated circuit device

Country Status (1)

Country Link
JP (1) JPH1195979A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013928A (en) * 2009-07-02 2011-01-20 Nippon Telegr & Teleph Corp <Ntt> Operation circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013928A (en) * 2009-07-02 2011-01-20 Nippon Telegr & Teleph Corp <Ntt> Operation circuit

Similar Documents

Publication Publication Date Title
JP4593866B2 (en) Method and apparatus for incorporating a multiplier into an FPGA
JP3626239B2 (en) Programmable array
EP2041872B1 (en) Reconfigurable logic fabrics for integrated circuits and systems and methods for configuring reconfigurable logic fabrics
US6121791A (en) Programmable logic datapath that may be used in a field programmable device
JP3613396B2 (en) Function block
JP4230580B2 (en) Reconfigurable processor device
US5742180A (en) Dynamically programmable gate array with multiple contexts
US6591357B2 (en) Method and apparatus for configuring arbitrary sized data paths comprising multiple context processing elements
JPH03132212A (en) Configurable logic array
JPH02242425A (en) Programable logic unit and signal processor
JPH11243334A (en) Programmable logic array device provided with configurable random access memory as integrated term
US6150836A (en) Multilevel logic field programmable device
JPWO2004088500A1 (en) Programmable logic device
US7587614B1 (en) Encryption algorithm optimized for FPGAs
US7509479B2 (en) Reconfigurable global cellular automaton with RAM blocks coupled to input and output feedback crossbar switches receiving clock counter value from sequence control unit
JPH1195979A (en) Integrated circuit device
US6356110B1 (en) Multifunction memory array in a programmable logic device
JP3567689B2 (en) Field programmable gate array
Jordan A configurable decoder for pin-limited applications
Patterson High Performance DEĖ Encryption in Virtex TM FPGAs using JBits TM