JP3129526B2 - Multiplication circuit over integers - Google Patents
Multiplication circuit over integersInfo
- Publication number
- JP3129526B2 JP3129526B2 JP04167080A JP16708092A JP3129526B2 JP 3129526 B2 JP3129526 B2 JP 3129526B2 JP 04167080 A JP04167080 A JP 04167080A JP 16708092 A JP16708092 A JP 16708092A JP 3129526 B2 JP3129526 B2 JP 3129526B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- output
- adder
- multiplier
- bit
- 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.)
- Expired - Fee Related
Links
Description
【0001】[0001]
【産業上の利用分野】本発明は整数上の乗算回路に関
し、特に小さな桁数の乗算器を用いて大きな桁数の乗算
を行う回路に関するものである。本発明は、大きな桁数
の乗算を必要とするRSA暗号(池野信一,小山謙二:
“現代暗号学”,電子情報通信学会,1986,6章)
のような暗号化技術をはじめとして多くの整数演算に利
用することができる。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiplication circuit for integers, and more particularly to a circuit for multiplying a large number of digits using a multiplier of a small number of digits. The present invention provides an RSA cryptosystem that requires multiplication of a large number of digits (Shinichi Ikeno, Kenji Koyama:
“Modern Cryptography”, IEICE, 1986, Chapter 6)
It can be used for many integer operations including encryption techniques such as.
【0002】[0002]
【従来の技術】ゲートアレイの設計や基板設計におい
て、小さな桁数の整数上の乗算器は、セルライブラリや
TTL等が用意されているため手軽に構成することがで
きる。しかし、大きな桁数の乗算回路を実現しようとし
た場合には、セルライブラリ等がないので自分で設計し
なければならない。ところが、大きな桁数の乗算器を自
分で設計する場合、小さな桁数の乗算器の回路構成をそ
のまま拡張したのでは、回路構成が非常に複雑になり実
現が難しい。2. Description of the Related Art In designing a gate array or a substrate, a multiplier on an integer having a small number of digits can be easily configured because a cell library, TTL, and the like are provided. However, when trying to realize a multiplication circuit with a large number of digits, there is no cell library or the like, so that the user has to design it by himself. However, when designing a multiplier with a large number of digits by itself, if the circuit configuration of the multiplier with a small number of digits is directly expanded, the circuit configuration becomes extremely complicated and difficult to realize.
【0003】また、入力値を所定ビツト毎に分割して複
数クロツクで乗算を行おうとする場合、入力値を多項式
と見なすと、ガロア体(宮川洋,原島博,今井秀樹:
“情報と符号の理論”,岩波講座,1982,6章)の
ような桁上がりのない演算系では、図4のような回路に
よつて乗算が行われることが知られている。図4中、*
Bi はBi (i=0,…,n−1)を乗数としたmビツ
ト*mビツトのガロア体上の乗算器、EXはmビツトの
EXOR、rはmビツトのレジスタである。In the case where an input value is divided for each predetermined bit and multiplication is performed by a plurality of clocks, the Galois field (Yo Miyagawa, Hiroshi Harashima, Hideki Imai:
It is known that in an arithmetic system having no carry such as "Theory of Information and Codes", Iwanami Koza, 1982, Chapter 6, multiplication is performed by a circuit as shown in FIG. In FIG. 4, *
B i is B i (i = 0, ... , n-1) multiplier and the m bits * m bits of the Galois field on the multiplier, EX is EXOR of m bits, r is a register m bits.
【0004】しかし、整数上の乗算では、図4のような
分割演算を行うと分割演算した桁毎に桁上がりが生じる
ため、効率的な乗算器を実現することは難しい。However, in multiplication on integers, if a division operation as shown in FIG. 4 is performed, a carry is generated for each digit obtained by the division operation, so that it is difficult to realize an efficient multiplier.
【0005】本発明は、上述の欠点を除去し、乗算回路
において大きな桁数の入力値を分割して演算する場合
に、小さな桁数の乗算器を用いて桁上がりを考慮した効
率的で拡張性に富んだ整数上の乗算回路を提供すること
を目的とする。SUMMARY OF THE INVENTION The present invention eliminates the above-mentioned drawbacks, and provides an efficient and extended method that takes into account carry-up using a multiplier with a small number of digits when dividing and calculating an input value with a large number of digits in a multiplication circuit. It is an object of the present invention to provide a multiplication circuit on integers which is rich.
【0006】[0006]
【課題を解決するための手段】この課題を解決するため
に、本発明の整数上の乗算回路は、h,m,nを正の整
数とする場合に、(n×m)ビツトの整数Aと(h×
m)ビツトの整数Bとの乗算を行う整数上の乗算回路で
あつて、パイプライン状にn段直列に接続された同一の
演算素子PEi(i=0,…,n−1)を備え、前記P
Ei はそれぞれ、整数Aをmビツト毎に分けた特定のA
i(i=0,…,n−1)と、1クロツク毎に下位の桁
から順次入力される整数Bをmビツト毎に分けたB
j(j=0,…,h−1)と、前段のPEi-1の計算結果
S(i-1)とを入力したとき、S(i)=Ai・Bj +S(i-1)
を計算して、計算結果S(i)とBjを前記計算結果S(i)
より1クロック遅延させたBj-1とを次段のPEi+1 に
出力し、最終段のPEn-1から、A・Bの乗算値を下位
の桁より順に出力することを特徴とする。In order to solve this problem, a multiplication circuit on an integer according to the present invention provides an integer A of (n × m) bits when h, m, and n are positive integers. And (h ×
m) A multiplication circuit on an integer for multiplying a bit by an integer B, comprising the same arithmetic element PE i (i = 0,..., n−1) connected in series in an n- stage pipeline. , Said P
E i is a specific A obtained by dividing the integer A into m bits.
i (i = 0,..., n-1) and an integer B sequentially input from the lower digit for each clock, divided into m bits
j (j = 0,..., h-1) and the calculation result of the preceding stage PE i-1
When S (i-1) is input, S (i) = Ai.Bj + S (i-1)
Is calculated, and the calculation results S (i) and B j are calculated as S (i)
B j-1 delayed by one clock is output to the next stage PE i + 1 , and the multiplied values of A and B are output in order from the lower digit from the last stage PE n-1. I do.
【0007】ここで、前記PEは、mビツト×mビツト
の乗算を実行する乗算器と、該乗算器の出力の上位mビ
ツトを記憶するmビツトのレジスタと、前記乗算器の出
力の下位mビツトと前記レジスタの出力と前段のPEの
計算結果とを加算する3入力のmビツト加算器と、該加
算器のキヤリー出力をラツチし、1クロツク遅れて再び
該加算器のキヤリー入力に出力するフリツプフロツプ
と、前記BjをS(i)より1クロツク遅延させる遅延回路
とを備える。Here, the PE is a multiplier for performing multiplication of m bits × m bits, a register of m bits for storing the upper m bits of the output of the multiplier, and a lower m for the output of the multiplier. A three-input m-bit adder for adding the bit, the output of the register and the result of the preceding PE calculation, latches the carry output of the adder, and outputs the result to the carry input of the adder again one clock later. A flip-flop and a delay circuit for delaying Bj by one clock from S (i) .
【0008】又、前記PEは、mビツト×mビツトの乗
算を実行する乗算器と、前記乗算器の出力と前段のPE
の計算結果とバツフアからの2クロツク前のキヤリーと
を加算する3入力の2mビツト加算器と、該加算器の出
力を記憶する2mビツトのレジスタと、該加算器のキヤ
リー出力をラツチし、2クロツク遅れて再び該加算器の
キヤリー入力に出力する2ビツトバツフアと、前記Bj
をS(i)より1クロツク遅延させる遅延回路とを備え
る。The PE includes a multiplier for performing multiplication of m bits × m bits, and an output of the multiplier and a PE at a preceding stage.
And a 2-m-bit register for storing the output of the adder, a 2-m-bit register for storing the output of the adder, and latching the carry output of the adder. A two-bit buffer which outputs again to the carry input of the adder with a delay of clock, and
Is delayed by one clock from S (i) .
【0009】[0009]
【実施例】本実施例ではn・mビツトの整数Aとh・m
ビツトの整数Bとの乗算器を想定するが、簡単のために
h=nとして説明する。この限定により一般性が失われ
ることはない。すなわち、n・mビツトの2つの整数を
A,Bとし、A・B=Cの演算を実行することを考え
る。ここで、mビツトの2つの整数a,bの乗算a・b
=cを実行する乗算器は公知の構成、例えばセルライブ
ラリやTTL等によつて簡単に実現できる。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In this embodiment, an integer A and hm
It is assumed that a multiplier with a bit integer B is used. This limitation does not cause loss of generality. That is, it is assumed that two integers of nm bits are A and B, and an operation of AB = C is executed. Here, multiplication a · b of two integers a and b of m bits
= C can be easily realized by a known configuration such as a cell library or TTL.
【0010】整数A,Bを各々mビツト毎にn分割する
と、次のように表せる。When the integers A and B are each divided into n for every m bits, the following expression can be obtained.
【0011】A=An-1 ・Xn-1 +An-2 ・Xn-2 +…
+A1 ・X+A0 B=Bn-1 ・Xn-1 +Bn-2 ・Xn-2 +…+B1 ・X+
B0 ここで、X=2m-1 とし、A,Bについてmビツト毎に
上位桁から分割したビツト系列を、各々Ai ,Bi (i
=n−1,…,0)とする。この場合、整数A,Bは多
項式とみなすことができるので、A・Bは次のように表
すことができる。A = A n-1 · X n-1 + A n-2 · X n-2 + ...
+ A 1 · X + A 0 B = B n-1 · X n-1 + B n-2 · X n-2 + ... + B 1 · X +
B 0 Here, X = 2 m−1, and bit sequences obtained by dividing A and B from the upper digit for each m bits are A i and B i (i
= N-1, ..., 0). In this case, since the integers A and B can be regarded as polynomials, AB can be expressed as follows.
【0012】[0012]
【数1】 従つて、図1のような回路で乗算器を構成できる。図1
は全体がシストリツクアレイ(村岡洋一:“並列処
理”,昭晃堂,1986,pp131−133)と呼ば
れる構成になつている。シストリツクアレイは、プロセ
ツシング・エレメント(PE)と呼ばれる小さな同一の
機能ブロツクによるパイプライン処理によつて演算が実
行される。(Equation 1) Therefore, a multiplier can be constituted by a circuit as shown in FIG. FIG.
Has a configuration called a systolic array (Yoichi Muraoka: "parallel processing", Shokodo, 1986, pp 131-133). The operation of the systolic array is performed by pipeline processing using small identical functional blocks called processing elements (PE).
【0013】上記PEは図2のように構成される。図2
はmビツトの乗算a・b=c(本例ではAi ×Bj )を
実行する乗算器と、mビツトのレジスタ(R1 〜R4 )
と、3入力のmビツト加算器と、該加算器のキヤリー出
力をラツチし、1クロツク遅れて再び該加算器のキヤリ
ー入力に出力するフリツプフロツプFFとから構成され
る。ここで、Ai (i=0,…,n−1)は前述した整
数Aの分割値であり、各PEに図1のように予めセツト
される。The above PE is configured as shown in FIG. FIG.
Is a multiplier for executing m-bit multiplication a · b = c (A i × B j in this example) and an m-bit register (R 1 to R 4 )
, A 3-input m-bit adder, and a flip-flop FF which latches the carry output of the adder and outputs the result again to the carry input of the adder one clock delay later. Here, A i (i = 0,..., N−1) is a division value of the integer A described above, and is set in advance in each PE as shown in FIG.
【0014】図1において、Bj はB0 からB1 …B
n-1 という順で入力され、PE0 への前段入力Sj はオ
ール“0”である。In FIG. 1, B j is from B 0 to B 1 .
Inputs are in the order of n−1 , and the previous-stage input S j to PE 0 is all “0”.
【0015】最初のPE0 (Ai がA0 である場合)に
おいては、Bj (j=0,…,n−1)の入力に応じ
て、乗算器から2mビツトの出力A0 ・B0 ,A0 ・B
1 ,…,A0 ・Bn-1 が出力される。ここで、乗算器か
らの出力の下位mビツトはそのまま加算器に入力する
が、上位のmビツトはレジスタR1 によつて1クロツク
遅らせて加算器に入力する。これは、乗算器からの出力
が2mビツトで、(1)式のXによつて表されるmビツ
ト毎の区切りで考えると、乗算器からの出力はmビツト
毎に位が重なっているので、入力と同じmビツト単位に
出力するために行われる。In the first PE 0 (when A i is A 0 ), a 2 m-bit output A 0 · B is output from the multiplier in response to the input of B j (j = 0,..., N-1). 0 , A 0 · B
1, ..., A 0 · B n-1 is output. Here, the lower m bits of the output from the multiplier is directly input to the adder, upper m bits is input to the adder is delayed Yotsute 1 clock in the register R 1. This is because the output from the multiplier is 2 m-bits and the output from the multiplier overlaps every m-bits when considered at intervals of m bits represented by X in equation (1). , In the same m-bit unit as the input.
【0016】この加算は下位の桁から行われるので、出
力されたキヤリーは、フリツプフロツプFFによつて1
クロツク遅らせることによつて、次のクロツクのときに
行われる上位の桁の演算時に桁上がりキヤリーとして用
いられる。これによつて、最初のPE0 においてSj ←
A0 ・Bj の演算が出力される。Since this addition is performed from the lower digit, the output carry is set to 1 by the flip-flop FF.
By delaying the clock, it is used as a carry carry in the operation of the upper digit performed in the next clock. Thus, in the first PE 0 , S j ←
The operation of A 0 · B j is output.
【0017】次に、図1の2番目のPE1 (Ai =A1
の場合)においても同様の演算が行われるが、A1 ・B
j (j=0,…,n−1)の演算は、Bj が2つのレジ
スタR3 ,R4 によつてSj より1クロツク遅れて入力
されるので、Sj より1桁上の演算A1 ・Bj ・Xとし
て扱われる。従つて、加算器からの出力はSj ←A1・
Bj-1 +Sj として順次出力される。Next, the second PE 1 (A i = A 1 ) in FIG.
), The same operation is performed, but A 1 · B
In the operation of j (j = 0,..., n-1), B j is input one clock behind S j by two registers R 3 and R 4 , so that the operation is one digit higher than S j. It is treated as A 1 · B j · X. Therefore, the output from the adder is S j ← A 1.
It is sequentially output as B j-1 + S j .
【0018】以下同様の処理を図1の最後のPEn-1
(Ai =An-1 )まで繰り返すことによつて、図1のシ
ストリツクアレイのPEn-1 よりの出力が、A・Bの下
位からのmビツト毎を表すCk (k=0,…,2n−
2)となることがわかる。Hereinafter, the same processing is performed at the last PE n-1 in FIG.
By repeating (A i = A n-1 ), the output from PE n-1 of the systolic array of FIG. 1 is changed to C k (k = 0) representing each m bits from the lower order of AB. , ..., 2n-
It turns out that it becomes 2).
【0019】また、PEの内部構成を、図3のように乗
算器からの2mビツトの出力を直接加算器に入力して、
2mビツトのSj を出力することによつても、同様の乗
算を行うことができる。ただし、図3のrは2mビツト
のレジスタであり、BFは加算器からのキヤリーを2ク
ロツク遅らせる2ビツトバツフアである。これは前述し
たように、乗算器からの出力がmビツト単位ではなく2
mビツト単位で出力されるためである。The internal structure of the PE is changed as shown in FIG. 3 by directly inputting a 2-mbit output from the multiplier to the adder.
Similar multiplication can be performed by outputting 2 m-bit S j . However, r in FIG. 3 is a register of 2 m bits, and BF is a 2-bit buffer for delaying the carry from the adder by two clocks. This is because, as described above, the output from the multiplier is not m bits but 2 bits.
This is because the data is output in units of m bits.
【0020】以上説明したように、入力値がmビツト毎
にn分割されて入力されるとき、mビツトの乗算器を用
いてn・mビツトの乗算回路がシストリツクアレイによ
つて効率的に実現できることが示せた。h≠nの場合に
も同様の回路で乗算が実行できることは明かである。こ
れによつて、整数Aの値が分割入力されるときA・Bの
演算が効率的に行われる。As described above, when an input value is input after being divided into n units of m bits, an n · m bit multiplying circuit can be efficiently provided by the systolic array using an m bit multiplier. It has been shown that it can be realized. It is clear that multiplication can be performed by a similar circuit even when h ≠ n. Thereby, when the value of the integer A is divided and input, the calculation of AB is efficiently performed.
【0021】尚、シストリツクアレイは簡単な同一PE
の規則的な構成によつて実現されるので、VLSI等の
大規模回路を構成しやすい。また、制御も各PEについ
て同一で済み、データも同一クロツクによつて同期して
動作するので非常に簡単に実現できる。更に、A,Bの
桁数がどんなに大きくなつてもPEを継ぎ足して行くだ
けでよく拡張性に富んでいる。The systolic array is a simple PE.
Therefore, it is easy to configure a large-scale circuit such as a VLSI. Also, the control is the same for each PE, and the data operates synchronously with the same clock, so that it can be realized very easily. Further, no matter how large the number of digits of A and B becomes, it is sufficient to simply add PEs and the expandability is high.
【0022】また、この方式は桁上がりが1つのPE内
で演算された他のPEへキヤリーとして出力されないの
で、整数上の乗算において問題になる桁上がりに関する
遅延等の問題がない。Also, in this method, since the carry is not output as a carry to another PE calculated in one PE, there is no problem such as a delay related to the carry which becomes a problem in multiplication on an integer.
【0023】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、本発明はシステム或は装置にプログ
ラムを供給することによつて達成される場合にも適用で
きることは言うまでもない。The present invention may be applied to a system constituted by a plurality of devices or to an apparatus constituted by a single device. It is needless to say that the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or an apparatus.
【0024】[0024]
【発明の効果】本発明により、大きな整数の乗算を、桁
上がりを考慮しながら小さな桁数の乗算器を用いて実行
するようにして、制御が簡単で高速化し易く、効率的で
拡張性に富んだ整数上の乗算回路を提供することができ
る。According to the present invention, multiplication of a large integer can be performed by a digit.
Execute using a multiplier with a small number of digits while considering the rise
Control is simple, easy to speed up, efficient and
It is possible to provide a multiplication circuit on integers which is rich in scalability .
【図1】本実施例の整数上の乗算回路を示す図である。FIG. 1 is a diagram illustrating a multiplication circuit on an integer according to an embodiment.
【図2】図1に示された本実施例のPEの内部構成の一
例を示す図である。FIG. 2 is a diagram illustrating an example of an internal configuration of a PE of the present embodiment illustrated in FIG. 1;
【図3】図1に示された本実施例のPEの内部構成の他
の例を示す図である。FIG. 3 is a diagram showing another example of the internal configuration of the PE of the present embodiment shown in FIG. 1;
【図4】公知のガロア体上の多項式の乗算回路を示す図
である。FIG. 4 is a diagram showing a known polynomial multiplication circuit on a Galois field.
PE…プロセツシング・エレメント、R…mビツトのレ
ジスタ、FF…1ビツトのフリツプフロツプ、r…2m
ビツトのレジスタ、BF…2ビツト分のバツフア、EX
…mビツトのEXORPE: processing element, R: register of m bits, FF: flip-flop of 1 bit, r: 2 m
Bit register, BF ... Buffer for 2 bits, EX
... m bit EXOR
Claims (3)
(n×m)ビツトの整数Aと(h×m)ビツトの整数B
との乗算を行う整数上の乗算回路であつて、 パイプライン状にn段直列に接続された同一の演算素子
PEi(i=0,…,n−1)を備え、 前記PEi はそれぞれ、整数Aをmビツト毎に分けた特
定のAi(i=0,…,n−1)と、1クロツク毎に下
位の桁から順次入力される整数Bをmビツト毎に分けた
Bj(j=0,…,h−1)と、前段のPEi-1の計算結
果S(i-1)とを入力したとき、S(i)=Ai ・Bj +S(i
-1)を計算して、計算結果S(i)とBjを前記計算結果S
(i)より1クロック遅延させたBj-1とを次段のPEi+1
に出力し、最終段 のPEn-1から、A・Bの乗算値を下位の桁より
順に出力することを特徴とする整数上の乗算回路。1. When h, m, and n are positive integers,
(N × m) bit integer A and (h × m) bit integer B
Shall apply in the multiplication circuit on integers for multiplying with the same calculation elements connected in n stages in series in a pipeline PE i (i = 0, ... , n-1) wherein the PE i each , A specific A i (i = 0,..., N−1) obtained by dividing the integer A by m bits, and B j obtained by dividing the integer B sequentially inputted from the lower digit for each clock by m bits (J = 0,..., H−1) and the calculation result S (i−1) of the preceding stage PE i−1 , S (i) = Ai · Bj + S (i
-1) to calculate the said calculation results S (i) and B j calculation result S
B i−1 delayed by one clock from (i) and PE i + 1 of the next stage
A multiplication circuit on integers, which outputs the multiplied values of A and B in order from the least significant digit from the last stage PE n−1 .
を実行する乗算器と、該乗算器の出力の上位mビツトを
記憶するmビツトのレジスタと、前記乗算器の出力の下
位mビツトと前記レジスタの出力と前段のPEの計算結
果とを加算する3入力のmビツト加算器と、該加算器の
キヤリー出力をラツチし、1クロツク遅れて再び該加算
器のキヤリー入力に出力するフリツプフロツプと、前記
BjをS(i)より1クロツク遅延させる遅延回路とを備え
ることを特徴とする請求項1記載の整数上の乗算回路。2. The PE includes a multiplier for performing multiplication of m bits × m bits, a register of m bits for storing upper m bits of an output of the multiplier, and lower m bits of an output of the multiplier. A 3-input m-bit adder for adding the output of the register and the result of the PE calculation at the preceding stage; latching the carry output of the adder; and outputting a flip-flop to the carry input of the adder again one clock later. 2. The integer multiplication circuit according to claim 1, further comprising a delay circuit for delaying said Bj by one clock from S (i) .
を実行する乗算器と、前記乗算器の出力と前段のPEの
計算結果とバツフアからの2クロツク前のキヤリーとを
加算する3入力の2mビツト加算器と、該加算器の出力
を記憶する2mビツトのレジスタと、該加算器のキヤリ
ー出力をラツチし、2クロツク遅れて再び該加算器のキ
ヤリー入力に出力する2ビツトバツフアと、前記Bjを
S(i)より1クロツク遅延させる遅延回路とを備えるこ
とを特徴とする請求項1記載の整数上の乗算回路。3. The PE has a multiplier for executing a multiplication of m bits × m bits, and a 3-input for adding an output of the multiplier, a calculation result of a PE at a preceding stage, and a carry two clocks before the buffer. A 2 m-bit adder, a 2 m-bit register for storing the output of the adder, a 2-bit buffer for latching the carry output of the adder and outputting again to the carry input of the adder with a delay of 2 clocks; Bj
2. The integer multiplying circuit according to claim 1, further comprising a delay circuit for delaying one clock from S (i) .
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP04167080A JP3129526B2 (en) | 1992-06-25 | 1992-06-25 | Multiplication circuit over integers |
| EP93304879A EP0576262B1 (en) | 1992-06-25 | 1993-06-23 | Apparatus for multiplying integers of many figures |
| DE69329260T DE69329260T2 (en) | 1992-06-25 | 1993-06-23 | Device for multiplying integers by many digits |
| US08/512,620 US5524090A (en) | 1992-06-25 | 1995-08-08 | Apparatus for multiplying long integers |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP04167080A JP3129526B2 (en) | 1992-06-25 | 1992-06-25 | Multiplication circuit over integers |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0612230A JPH0612230A (en) | 1994-01-21 |
| JP3129526B2 true JP3129526B2 (en) | 2001-01-31 |
Family
ID=15843035
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP04167080A Expired - Fee Related JP3129526B2 (en) | 1992-06-25 | 1992-06-25 | Multiplication circuit over integers |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3129526B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0890147B1 (en) * | 1996-10-31 | 2004-02-25 | Atmel Research | Co-processor for performing modular multiplication |
-
1992
- 1992-06-25 JP JP04167080A patent/JP3129526B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0612230A (en) | 1994-01-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Ding et al. | High-speed ECC processor over NIST prime fields applied with Toom–Cook multiplication | |
| EP1293891B1 (en) | Arithmetic processor accomodating different finite field size | |
| Wu et al. | RSA cryptosystem design based on the Chinese remainder theorem | |
| US6026421A (en) | Apparatus for multiprecision integer arithmetic | |
| JP2744091B2 (en) | Data processing method and apparatus for calculating multiplicative reciprocal element of finite field | |
| US6009450A (en) | Finite field inverse circuit | |
| Bos et al. | Montgomery arithmetic from a software perspective | |
| Großschädl | A bit-serial unified multiplier architecture for finite fields GF (p) and GF (2m) | |
| JP3213628B2 (en) | An arithmetic unit for multiplying long integers modulo M and an R.M. S. A. converter | |
| US7046800B1 (en) | Scalable methods and apparatus for Montgomery multiplication | |
| Imran et al. | An area aware accelerator for elliptic curve point multiplication | |
| Orup et al. | A high-radix hardware algorithm for calculating the exponential ME modulo N. | |
| WO2001076132A1 (en) | Scalable and unified multiplication methods and apparatus | |
| US6377969B1 (en) | Method for multiplication in Galois fields using programmable circuits | |
| JP3659320B2 (en) | Multiplication module, multiplication inverse element operation circuit, multiplication inverse element operation control system, device using the multiplication inverse element operation, encryption device, error correction decoder | |
| JP3129526B2 (en) | Multiplication circuit over integers | |
| US7607165B2 (en) | Method and apparatus for multiplication and/or modular reduction processing | |
| Walter | Improved linear systolic array for fast modular exponentiation | |
| EP1504338B1 (en) | "emod" a fast modulus calculation for computer systems | |
| EP1600852A2 (en) | Method and apparatus for calculating a modular inverse | |
| CN114968181B (en) | Fast precomputation of Montgomery multipliers | |
| CN114968180B (en) | Efficient Montgomery multiplier | |
| JP3129525B2 (en) | Multiplication circuit over integers | |
| JP3210420B2 (en) | Multiplication circuit over integers | |
| Rahimzadeh et al. | Radix-4 implementation of redundant interleaved modular multiplication on FPGA |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001006 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081117 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081117 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091117 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101117 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101117 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111117 Year of fee payment: 11 |
|
| LAPS | Cancellation because of no payment of annual fees |