JP2001109376A - Arithmetic circuit and arithmetic processor - Google Patents

Arithmetic circuit and arithmetic processor

Info

Publication number
JP2001109376A
JP2001109376A JP28340299A JP28340299A JP2001109376A JP 2001109376 A JP2001109376 A JP 2001109376A JP 28340299 A JP28340299 A JP 28340299A JP 28340299 A JP28340299 A JP 28340299A JP 2001109376 A JP2001109376 A JP 2001109376A
Authority
JP
Japan
Prior art keywords
unit
bits
vector
arithmetic
represented
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.)
Granted
Application number
JP28340299A
Other languages
Japanese (ja)
Other versions
JP4484002B2 (en
Inventor
Koichi Sugimoto
浩一 杉本
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.)
Toyo Communication Equipment Co Ltd
Original Assignee
Toyo Communication Equipment Co Ltd
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 Toyo Communication Equipment Co Ltd filed Critical Toyo Communication Equipment Co Ltd
Priority to JP28340299A priority Critical patent/JP4484002B2/en
Publication of JP2001109376A publication Critical patent/JP2001109376A/en
Application granted granted Critical
Publication of JP4484002B2 publication Critical patent/JP4484002B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an arithmetic processor capable of operating at a high speed both arithmetic calculations of GF (p) and GF (2m) to any positive integer p and any positive integer m. SOLUTION: An extended arithmetic operation for GF (2m) is made to be executable by adding a word length of a processor or a GF (2m) extended arithmetic operation part of a multiple length thereof to an arithmetic operation part of an arithmetic processor, and taking similar executing procedures to those of an instruction provided in the original processor.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、演算回路および演
算プロセッサに係り、特に、符号・暗号装置等に用いら
れるガロア体上の演算を行うための演算回路および演算
プロセッサに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic circuit and an arithmetic processor, and more particularly, to an arithmetic circuit and an arithmetic processor for performing an arithmetic operation on a Galois field used in a code / encryption device.

【0002】[0002]

【従来の技術】近年、情報のディジタル化によって様々
なサービスが提供され、快適な生活環境が整備されつつ
ある。例えば、インターネットの普及によって、我々は
ネットワークに接続された世界中のサーバが提供するサ
ービスの恩恵を受けることができる。また、ディジタル
携帯電話の普及によって、必要なときにすぐにコミュニ
ケーションをとることが可能となり、通話以外の付加サ
ービスを利用することができる。さらに、クレジットカ
ードやプリペイトカードなどは、現金のやりとりによる
煩わしさを解消してくれるという利点がある。このよう
な情報のディジタル化は、我々に利便性を提供してくれ
る反面、不正利用による被害を受け易いという問題を有
する。例えば、盗聴によるプライバシーの侵害や個人情
報の流出、複写・改ざん・なりすましによるシステムの
不正利用などがそれである。そこで、これらの問題の解
決策として、最近では暗号技術が注目されており、その
中でもガロア体上の演算を利用した暗号技術の一つであ
る楕円曲線暗号の研究開発が盛んに行われている。この
楕円曲線暗号は、楕円曲線上の離散対数問題に安全性の
根拠を置く公開鍵暗号系であり、IEEE P1363で標準化の
検討がなされているものである。IEEE P1363において標
準化が検討されている楕円曲線暗号は、定義体としてガ
ロア体GF(p)を用いる場合と、GF(2m)を用い
る場合の2種類が選択可能である。従って、1つの暗号
装置で、GF(p)上およびGF(2m)上で定義され
た2種類の楕円曲線暗号を処理しなければならない場合
も考えられ、GF(p)と、GF(2m)両方の演算を
高速に実行可能なプロセッサが要求されている。これら
のガロア体GF(p)とGF(2m)の詳細について
は、一般の代数書に記載されているため、ここでは以下
に簡単に説明することにする。ガロア体GF(p)は、
pを素数とするp個の元からなる集合であり、通常0以
上p未満の整数を元として用いる。
2. Description of the Related Art In recent years, various services have been provided by digitization of information, and a comfortable living environment has been improved. For example, with the spread of the Internet, we can benefit from the services provided by servers around the world connected to the network. Further, with the spread of digital mobile phones, it is possible to immediately communicate when needed, and to use additional services other than telephone calls. Further, a credit card, a prepaid card, and the like have an advantage that troublesomeness of cash exchange is eliminated. The digitization of such information provides us with convenience, but has the problem of being easily harmed by unauthorized use. For example, privacy infringement due to eavesdropping, leakage of personal information, and unauthorized use of the system due to copying, falsification, and spoofing are examples. As a solution to these problems, cryptographic techniques have recently attracted attention. Among them, research and development on elliptic curve cryptography, one of cryptographic techniques using operations on Galois fields, has been actively conducted. . This elliptic curve cryptosystem is a public key cryptosystem based on the security of the discrete logarithm problem on the elliptic curve, and its standardization is being studied in IEEE P1363. Elliptic curve cryptosystems whose standardization is being studied in IEEE P1363 can be selected from two types: a case where a Galois field GF (p) is used as a definition field and a case where GF (2 m ) is used. Accordingly, there may be a case where two types of elliptic curve cryptosystems defined on GF (p) and GF (2 m ) must be processed by one cryptographic device, and GF (p) and GF (2 m ) A processor capable of performing both operations at high speed is required. The details of these Galois fields GF (p) and GF (2 m ) are described in a general algebra, and will be briefly described here. The Galois field GF (p) is
It is a set of p elements with p as a prime number, and usually uses an integer of 0 or more and less than p as an element.

【0003】GF(p)上の2つの元a、bのGF
(p)上の加算は、 となる。ここで、 とは、a+bをpで割った剰余を算出することを示して
いる。これは、a+bがp以上になった場合に、pを減
ずることでも実現できる。また、GF(p)上の2つの
元a、bのGF(p)上の乗算は、 となる。ここで、 とは、abをpで割った剰余を算出することを示してい
る。楕円曲線暗号が計算量的に安全となるためには、上
記pの大きさは、160ビット程度は必要となる。最近の
プロセッサにおいては、プロセッサのワード長、もしく
はその倍数長の整数の乗算および除算は、ハードウェア
により高速に演算できるようになってきた。従って、任
意のpに対して、GF(p)上の加算および乗算は、演
算プロセッサを用いる場合、プロセッサのワード長また
はその倍数長の整数加算、整数減算に加えて、整数乗
算、整数除算を組み合わせて使用することができ、高速
に演算することが可能である。また、ガロア体GF(2
m)は、2m個の元からなる集合であり、各々の元の表現
方法には一般的にベクトル表現が用いられている。この
ベクトル表現とは、GF(2m)をGF(2)のm次元
ベクトル空間とみなし、任意の元aをm次元ベクトル と表現するものである。ここで、ベクトルの各要素ai
は、GF(2)の元、即ち、0または1である。また、
上記したmを拡大次数と呼ぶ。
The GF of two elements a and b on GF (p)
The addition on (p) is Becomes here, Indicates that a remainder obtained by dividing a + b by p is calculated. This can also be realized by reducing p when a + b becomes greater than or equal to p. The multiplication of two elements a and b on GF (p) on GF (p) is Becomes here, Indicates that a remainder obtained by dividing ab by p is calculated. In order for the elliptic curve cryptosystem to be computationally secure, the size of p needs to be about 160 bits. In recent processors, multiplication and division of an integer having a word length of the processor or a multiple thereof can be performed at high speed by hardware. Therefore, when an arithmetic processor is used for addition and multiplication on GF (p) for any p, in addition to integer addition and integer subtraction of the word length of the processor or a multiple thereof, integer multiplication and integer division are performed. They can be used in combination and can be operated at high speed. In addition, the Galois field GF (2
m ) is a set composed of 2 m elements, and each element is generally represented by a vector expression. This vector representation means that GF (2 m ) is regarded as an m-dimensional vector space of GF (2), and an arbitrary element a is an m-dimensional vector It is expressed as Here, each element a i of the vector
Is an element of GF (2), that is, 0 or 1. Also,
The above-mentioned m is called an expansion order.

【0004】上記したベクトル表現においては、ベクト
ル空間の基底の一つに多項式基底がある。この多項式基
底は、GF(2)上のm次モニック既約多項式f(x)
を生成多項式とし、f(x)の根である元zを用いて、 を基底とする。また、このときのGF(2m)上の任意
の元 をxに関するGF(2)上の多項式 即ち、GF(2)[x]の元として表現することができ
る。この表現を多項式表現と呼ぶ。さらに、GF
(2m)上の2つの元a、bのGF(2m)上の加算につ
いて説明すると、元がベクトル表現されていれば、 となり、各々を多項式表現すれば、 であるから、その加算結果は、 となり、各項の係数がGF(2)上の元であることを考
慮してベクトル表現すれば、 となる。
In the above-described vector representation, a polynomial basis is one of the basis of the vector space. This polynomial basis is an m-order monic irreducible polynomial f (x) on GF (2)
Is a generator polynomial, and using an element z that is a root of f (x), Is the base. Also, any element on GF (2 m ) at this time Is a polynomial on GF (2) with respect to x That is, it can be expressed as an element of GF (2) [x]. This expression is called a polynomial expression. Furthermore, GF
(2 m) on the two elements a, will be described. Addition on GF (2 m) of b, if the original is vector representation, And expressing each as a polynomial, Therefore, the result of the addition is , And taking into account that the coefficient of each term is an element on GF (2), Becomes

【0005】このように、GF(2m)上の加算は、2
つの元a、bを要素毎にGF(2)上で加算することに
なる。GF(2)上の加算は排他的論理和によって実現
できるので、GF(2m)上の加算は、2つの元a、b
を要素毎に排他的論理和演算すればよい。任意のmに対
して、GF(2m)上の加算は、演算プロセッサを用い
る場合、プロセッサのワード長またはその倍数長の排他
的論理和演算を繰り返し用いることにより、実現するこ
とができる。また、GF(2m)上の2つの元a、bの
GF(2m)上の乗算について説明すると、元がベクト
ル表現されていれば、乗数および被乗数は、 となり、これらを多項式表現すれば、 となるから、上記a、bを多項式表現して乗算した結果
である を、上記生成多項式 で除算して、その剰余 を算出する。この剰余がGF(2m)上の乗算結果とな
り、ベクトル表現すれば、 となる。GF(2m)上の乗算は、上述したように、G
F(2)上のm−1次以下の多項式同士の乗算、およ
び、GF(2)上の2m−2次以下の多項式と、GF
(2)上のm次多項式との除算により実現することがで
きる。しかし、GF(2m)上の乗算は、従来よりシフ
トレジスタを用いて構成されるのが通例であった。
Thus, the addition on GF (2 m ) is 2
The two elements a and b are added on GF (2) for each element. Since the addition on GF (2) can be realized by exclusive OR, the addition on GF (2 m )
May be exclusive ORed for each element. When an arithmetic processor is used, the addition on GF (2 m ) for any m can be realized by repeatedly using the exclusive OR operation of the word length of the processor or a multiple thereof. Also, two elements a on GF (2 m), will be described. Multiplication on GF (2 m) of b, and the original is long is vector representation, the multiplier and multiplicand, And if these are represented by a polynomial, Is a result of multiplying the above a and b by polynomial expression. With the above generator polynomial Divided by the remainder Is calculated. This remainder becomes a multiplication result on GF (2 m ). Becomes The multiplication on GF (2 m ) is, as described above,
Multiplication of polynomials of degree m-1 or less on F (2), polynomials of degree 2m-2 or less on GF (2), and GF
(2) It can be realized by division with the above m-th order polynomial. However, the multiplication on GF (2 m ) has conventionally been conventionally formed using a shift register.

【0006】図6は、従来のGF(2m)乗算回路の一
構成例を示した図である。図6における乗算回路600
は、従来より用いらているGF(2m)乗算回路の一例
であり、以下にその動作を説明する。上述したように、
GF(2m)の生成多項式を、 とし、 を満たす任意のmに対して、GF(2m)上の元 における乗算を計算するには、まず、 を設定しておく。図6の端子607は、計算を開始する
までは、0を入力しておく。この状態では、Dフリップ
フロップ601〜603にはx0〜xn-1に入力される値
が設定されている。そこで、端子607に1を入力する
と、計算が開始され、mクロック後のDフリップフロッ
プ604〜606に結果が格納される。即ち、乗算結果
とすると、 として取り出せる。従って、GF(2m)上の乗算は、
シフトレジスタを用いた専用回路で実現するのが通例で
あるため、GF(2m)の演算は、通常のプロセッサ
に、上記専用回路をコプロセッサとして付加することに
より実現していた。
FIG. 6 is a diagram showing a configuration example of a conventional GF (2 m ) multiplication circuit. Multiplication circuit 600 in FIG.
Is an example of a conventionally used GF (2 m ) multiplication circuit, and its operation will be described below. As mentioned above,
The generator polynomial of GF (2 m ) is age, For any m that satisfies, an element on GF (2 m ) To calculate the multiplication in, first Is set. Until the calculation is started, 0 is input to the terminal 607 in FIG. In this state, values input to x 0 to x n−1 are set in the D flip-flops 601 to 603. Therefore, when 1 is input to the terminal 607, the calculation is started, and the result is stored in the D flip-flops 604 to 606 after m clocks. That is, the multiplication result is Then Can be taken out. Therefore, the multiplication on GF (2 m ) is
Since it is customary to implement this using a dedicated circuit using a shift register, the operation of GF (2 m ) has been realized by adding the above dedicated circuit as a coprocessor to a normal processor.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、このよ
うな従来の演算プロセッサにあっては、乗算回路600
は、拡大次数mが大きくなると、mに比例して回路規模
を大きくしなければならないという問題があった。ま
た、この乗算回路600は、一度回路を設計してしまう
と、n<mとなる拡大次数の乗算が計算不可能となるた
め、汎用性に乏しいという問題があった。さらに、乗算
回路600は、通常のプロセッサの演算回路に対して、
回路規模が大きくなるという問題があった。そこで、G
F(2m)上の乗算を、前述したように、GF(2)上
のm−1次以下の多項式同士の乗算、および、GF
(2)上の2m−2次以下の多項式と、GF(2)上の
m次多項式との除算により実現することも考えられる。
これによれば、GF(2)上の多項式の乗算および除算
は、通常、プロセッサのワード長もしくはその倍数長の
排他的論理和演算およびシフト演算を繰り返し適用する
ことにより実現可能である。しかしながら、プロセッサ
のワード長もしくはその倍数長の排他的論理和演算およ
びシフト演算を繰り返し適用するだけでは、そのステッ
プ数が多くなってしまい、高速に演算することができな
いという問題を生じる。本発明は、上記課題に鑑みてな
されたものであり、任意のpおよび任意のmに対して、
ガロア体GF(p)とガロア体GF(2m)の両方の演
算を高速に実現することが可能な演算回路および演算プ
ロセッサを提供することを目的としている。
However, in such a conventional arithmetic processor, the multiplication circuit 600
However, there is a problem that the circuit scale must be increased in proportion to m when the expansion order m increases. Further, once the circuit is designed, the multiplication circuit 600 has a problem of poor versatility because it is impossible to calculate the multiplication of the expansion order where n <m. Further, the multiplying circuit 600 is different from the arithmetic circuit of a normal processor in that
There is a problem that the circuit scale becomes large. So G
As described above, multiplication on F (2 m ) is performed by multiplication between polynomials of degree m−1 or less on GF (2) and GF
It is also conceivable to realize the above by dividing the 2m-2 or lower polynomial in (2) above and the m-th polynomial in GF (2).
According to this, multiplication and division of a polynomial on GF (2) can usually be realized by repeatedly applying an exclusive OR operation and a shift operation of a word length of the processor or a multiple length thereof. However, if the exclusive OR operation and the shift operation of the word length of the processor or its multiple length are repeatedly applied, the number of steps is increased, and there is a problem that high-speed operation cannot be performed. The present invention has been made in view of the above problems, and for any p and any m,
It is an object of the present invention to provide an arithmetic circuit and an arithmetic processor capable of realizing both Galois field GF (p) and Galois field GF (2 m ) at high speed.

【0008】[0008]

【課題を解決するための手段】上記の目的を達成するた
め、請求項1記載の発明は、nを自然数としたとき、n
ビットで表される2つのベクトル を互いに演算し、2nビットのベクトル とする演算回路であって、上記2nビットのベクトルの
各要素が、 であることとする。請求項2記載の発明は、nを自然数
としたとき、nビットで表される2つのベクトル および、2nビットで表されるベクトル を互いに演算し、2nビットのベクトル とする演算回路であって、上記2nビットのベクトルの
各要素が、 であることとする。請求項3記載の発明は、nを自然数
としたとき、nビットで表されるベクトル を演算し、2nビットのベクトル とする演算回路であって、上記2nビットのベクトルの
各要素が、 であることとする。
In order to achieve the above object, according to the first aspect of the present invention, when n is a natural number, n
Two vectors represented by bits To each other, and a 2n-bit vector Where each element of the 2n-bit vector is It is assumed that According to a second aspect of the present invention, when n is a natural number, two vectors represented by n bits And a vector represented by 2n bits To each other, and a 2n-bit vector Where each element of the 2n-bit vector is It is assumed that According to a third aspect of the present invention, when n is a natural number, a vector represented by n bits And a 2n-bit vector Where each element of the 2n-bit vector is It is assumed that

【0009】請求項4記載の発明は、nを自然数とした
とき、2nビットで表されるベクトル と、0ベクトルを除くnビットで表されるベクトル を演算し、2nビットで表されるベクトル および を算出する演算回路であって、前記2nビットで表され
るベクトル の各要素を係数とするGF(2)上の多項式を、 前記nビットで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 としたとき、前記D(x)を上記A(x)で割った商
は、前記2nビットで表されるベクトル の各要素を用いて、 とし、前記D(x)を前記A(x)で割った剰余は、前
記nビットで表されるベクトル の各要素を用いて、 とすることにする。
According to a fourth aspect of the present invention, when n is a natural number, a vector represented by 2n bits And a vector represented by n bits excluding the 0 vector And a vector represented by 2n bits and And a vector represented by the 2n bits Is a polynomial on GF (2) with each element of A vector represented by the n bits Is a polynomial on GF (2) with each element of Then, the quotient obtained by dividing the D (x) by the A (x) is a vector represented by the 2n bits. Using each element of And the remainder obtained by dividing the D (x) by the A (x) is a vector represented by the n bits. Using each element of I will decide.

【0010】請求項5記載の発明は、命令を記憶するた
めの命令記憶部と、上記命令記憶部に記憶された命令を
フェッチする命令フェッチ部と、上記命令フェッチ部で
フェッチされた命令をデコードするデコード部と、デー
タを記憶するためのデータ記憶部と、上記データ記憶部
に記憶されたデータを演算するための演算部と、前記デ
コード部でデコードされた情報に基づいて上記演算部お
よび前記データ記憶部を制御する制御部とを有し、前記
演算部には、ワード長もしくはその倍数長の排他的論理
和演算を含む論理演算用回路および整数演算用回路を内
蔵し、さらに、該演算部の一部がガロア体GF(2m
用拡張演算部となっていて、該GF(2m)用拡張演算
部では、ワード長もしくはその倍数長のGF(2m)用
拡張演算用回路が内蔵されており、前記演算部では、前
記制御部から伝送される制御情報に基づいて、前記デー
タ記憶部からデータを読み込み、それらを演算し、その
演算結果を該データ記憶部へ書き込むようにする。請求
項6記載の発明は、請求項5記載の演算プロセッサにお
いて、前記命令記憶部と前記データ記憶部の一方、ある
いはその両方がプロセッサの外部記憶であるようにす
る。請求項7記載の発明は、請求項5または請求項6記
載の演算プロセッサにおいて、前記GF(2m)用拡張
演算部が、前記請求項1〜請求項4の演算回路の少なく
とも1つを含んでいるようにする。請求項8記載の発明
は、請求項7記載の演算プロセッサにおいて、前記GF
(2m)用拡張演算部に装備されたGF(2m)用拡張演
算用回路を例外処理することなく動作させることが可能
な命令セットを有するようにする。
According to a fifth aspect of the present invention, there is provided an instruction storage unit for storing instructions, an instruction fetch unit for fetching instructions stored in the instruction storage unit, and decoding instructions fetched by the instruction fetch unit. A decoding unit, a data storage unit for storing data, a calculation unit for calculating data stored in the data storage unit, and the calculation unit and the calculation unit based on information decoded by the decoding unit. A control unit for controlling a data storage unit, wherein the operation unit incorporates a logic operation circuit including an exclusive OR operation having a word length or a multiple length thereof and an integer operation circuit, Part of the part is Galois body GF (2 m )
The GF (2 m ) extended operation unit has a built-in GF (2 m ) extended operation circuit having a word length or a multiple length thereof. Based on the control information transmitted from the control unit, data is read from the data storage unit, the data is calculated, and the calculation result is written to the data storage unit. According to a sixth aspect of the present invention, in the arithmetic processor according to the fifth aspect, one or both of the instruction storage unit and the data storage unit are external storages of the processor. According to a seventh aspect of the present invention, in the arithmetic processor of the fifth or sixth aspect, the GF (2 m ) extended arithmetic unit includes at least one of the arithmetic circuits of the first to fourth aspects. To be in the office. The invention according to claim 8 is the arithmetic processor according to claim 7, wherein the GF
An instruction set capable of operating the GF (2 m ) extended operation circuit provided in the (2 m ) extended operation unit without exception processing is provided.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。 (実施の形態1)この実施の形態1では、本発明におけ
る演算プロセッサについて説明するものである。図1
は、本実施の形態1に係る演算プロセッサ100の構成
例を示したブロック図である。図1において、演算プロ
セッサ100は、命令を記憶するための命令記憶部10
1と、その命令記憶部101に記憶された命令をフェッ
チ(fetch)する命令フェッチ部103と、その命令フ
ェッチ部103でフェッチされた命令をデコードするデ
コード部104と、データを記憶するためのデータ記憶
部102と、そのデータ記憶部102に記憶されたデー
タを演算するための演算部106と、デコード部104
でデコードされた情報に基づいて演算部106およびデ
ータ記憶部102を制御する制御部105とを備えてい
る。そして、演算部106では、ワード長もしくはその倍
数長の排他的論理和演算を含む論理演算および整数演算
がサポートされている。さらに、その演算部106の一
部は、ガロア体GF(2m)用拡張演算部106aとな
っていて、そのGF(2m)用拡張演算部106aで
は、ワード長もしくはその倍数長のGF(2m)用拡張
演算がサポートされている。また、演算部106は、制
御部105から伝送される制御情報に基づいて、データ
記憶部102からデータを読み込んで、それらの演算を
行い、その演算結果をデータ記憶部102に書き込むよ
うにする。
Embodiments of the present invention will be described below in detail with reference to the drawings. (Embodiment 1) In Embodiment 1, an arithmetic processor according to the present invention will be described. FIG.
2 is a block diagram showing a configuration example of the arithmetic processor 100 according to the first embodiment. In FIG. 1, an arithmetic processor 100 includes an instruction storage unit 10 for storing instructions.
1, an instruction fetch unit 103 for fetching an instruction stored in the instruction storage unit 101, a decoding unit 104 for decoding the instruction fetched by the instruction fetch unit 103, and data for storing data. A storage unit 102, a calculation unit 106 for calculating data stored in the data storage unit 102, and a decoding unit 104
And a control unit 105 for controlling the arithmetic unit 106 and the data storage unit 102 based on the information decoded by the control unit 105. The operation unit 106 supports a logical operation including an exclusive OR operation having a word length or a multiple length thereof and an integer operation. Further, a part of the arithmetic unit 106 is an extended arithmetic unit 106a for the Galois field GF (2 m ). The extended arithmetic unit 106a for the GF (2 m ) has a word length or a multiple length GF ( 2m ) extended operation is supported. Further, the arithmetic unit 106 reads data from the data storage unit 102 based on the control information transmitted from the control unit 105, performs the arithmetic operation, and writes the arithmetic result to the data storage unit 102.

【0012】また、図2は、図1の演算部106の一部
であるガロア体GF(2m)用拡張演算部106aに搭
載される乗算回路200を示した図であり、ここでは特
に、請求項1の演算回路(乗算回路)においてn=4と
した場合の回路構成例である。図2に示す乗算回路20
0は、4ビットで表される2つのベクトル を入力するための入力端子a0〜a3、b0〜b3と、
8ビットで表されるベクトル を出力するための出力端子d0〜d7とを備えており、
16個の論理積素子と、9個の排他的論理和素子などに
より構成されている。次に、その動作について説明す
る。まず、上記した入力端子a0〜a3に上記ベクトル
の各要素a0〜a3を各々入力し、上記した入力端子b0
〜b3に上記ベクトルの各要素b0〜b3を各々入力すれ
ば、上記した出力端子d0〜d7には、 によって計算されるd0〜d7が各々出力される。
FIG. 2 is a diagram showing a multiplication circuit 200 mounted on an extended operation unit 106a for Galois field GF (2 m ) which is a part of the operation unit 106 of FIG. This is a circuit configuration example when n = 4 in the arithmetic circuit (multiplying circuit) of claim 1. Multiplication circuit 20 shown in FIG.
0 is two vectors represented by 4 bits Input terminals a0 to a3 and b0 to b3 for inputting
Vector represented by 8 bits And output terminals d0 to d7 for outputting
It is composed of 16 AND elements and 9 exclusive OR elements. Next, the operation will be described. First, the elements a 0 to a 3 of the vector are input to the input terminals a 0 to a 3 , respectively, and the input terminal b 0
If the elements b 0 to b 3 of the vector are respectively input to the output terminals d 0 to d 7 , D 0 to d 7 calculated by are respectively outputted.

【0013】また、図3は、図1の演算部106の一部
であるガロア体GF(2m)用拡張演算部106aに搭
載される積和演算回路300を示した図であり、ここで
は特に、請求項2の演算回路(積和演算回路)において
n=4とした場合の回路構成例である。図3に示す積和
演算回路300は、4ビットで表される2つのベクトル を入力するための入力端子a0〜a3、b0〜b3と、
8ビットで表されるベクトル を入力するための入力端子c0〜c7と、8ビットで表
されるベクトル を出力するための出力端子d0〜d7とを備えており、
16個の論理積素子と、16個の排他的論理和素子などによ
り構成されている。次に、その動作について説明する。
まず、上記した入力端子a0〜a3に上記ベクトルの各
要素a0〜a3を各々入力し、上記した入力端子b0〜b
3に上記ベクトルの各要素b0〜b3を各々入力し、上記
した入力端子c0〜c7に上記ベクトルの各要素c0
7を各々入力すると、出力端子d0〜d7には、 によって計算されるd0〜d7を各々出力することができ
る。また、図4は、図1の演算部106の一部であるガ
ロア体GF(2m)用拡張演算部106aに搭載される
2乗演算回路400を示した図であり、ここでは特に、
請求項3の演算回路(2乗演算回路)においてn=4と
した場合の回路構成例である。図4に示す2乗演算回路
400は、4ビットで表されるベクトル を入力するための入力端子a0〜a3と、8ビットで表
されるベクトル を出力するための出力端子d0〜d7などにより構成さ
れている。次に、その動作について説明する。まず、上
記した入力端子a0〜a3に上記ベクトルの各要素a0
〜a3を各々入力すれば、出力端子d0〜d7には、 によって計算されるd0〜d7が各々出力される。
FIG. 3 is a diagram showing a product-sum operation circuit 300 mounted on an extended operation unit 106a for the Galois field GF (2 m ) which is a part of the operation unit 106 in FIG. In particular, this is a circuit configuration example when n = 4 in the operation circuit (product-sum operation circuit) of the second aspect. The product-sum operation circuit 300 shown in FIG. 3 has two vectors represented by 4 bits. Input terminals a0 to a3 and b0 to b3 for inputting
Vector represented by 8 bits And input terminals c0 to c7 for inputting And output terminals d0 to d7 for outputting
It is composed of 16 AND elements and 16 exclusive OR elements. Next, the operation will be described.
First, the elements a 0 to a 3 of the vector are input to the input terminals a 0 to a 3 , respectively, and the input terminals b 0 to b 3 are input.
3 respectively enter each element b 0 ~b 3 of the vector, the elements c 0 ~ of the vector to the input terminal c0~c7 described above
When the c 7 respectively input, the output terminal D0 to D7, May each output d 0 to d 7 calculated by. FIG. 4 is a diagram showing a square operation circuit 400 mounted on an extended operation unit 106a for Galois field GF (2 m ) which is a part of the operation unit 106 in FIG.
This is a circuit configuration example when n = 4 in the arithmetic circuit (square arithmetic circuit) of claim 3. The square operation circuit 400 shown in FIG. Input terminals a0 to a3 for inputting a vector and a vector represented by 8 bits And output terminals d0 to d7 for outputting the same. Next, the operation will be described. First, the input elements a0 to a3 are connected to the respective elements a 0 of the vector.
~ A 3 are input to the output terminals d0-d7, respectively. D 0 to d 7 calculated by are respectively outputted.

【0014】また、図5は、図1の演算部106の一部
であるガロア体GF(2m)用拡張演算部106aに搭
載される除算回路500を示した図であり、ここでは特
に、請求項4の演算回路(除算回路)においてn=4と
した場合の回路構成例である。図5に示す除算回路50
0は、8ビットで表されるベクトル を入力するための入力端子d0〜d7と、4ビットで表
されるベクトル を入力するための入力端子a0〜a3と、8ビットで表
されるベクトル を出力するための出力端子q0〜q7と、4ビットで表
されるベクトル を出力するための出力端子r0〜r3と、制御信号入力
端子501とを備え、Dフリップフロップ511〜51
8、521〜523、531〜538、セレクタ、排他
的論理和素子および論理積素子などにより構成されてい
る。
FIG. 5 is a diagram showing a division circuit 500 mounted on an extended operation unit 106a for the Galois field GF (2 m ) which is a part of the operation unit 106 of FIG. This is a circuit configuration example when n = 4 in the arithmetic circuit (division circuit) of claim 4. The division circuit 50 shown in FIG.
0 is a vector represented by 8 bits Input terminals d0 to d7 for inputting a vector and a vector represented by 4 bits Input terminals a0 to a3 for inputting a vector and a vector represented by 8 bits And output vectors q0 to q7 for outputting Output terminals r0 to r3 for outputting the data and a control signal input terminal 501, and D flip-flops 511 to 51
8, 521 to 523, 531 to 538, a selector, an exclusive OR element, an AND element, and the like.

【0015】次に、この除算回路500の動作について
説明する。まず、前記した入力端子d0〜d8に前記し
たベクトルの各要素d0〜d7を各々入力して、前記した
入力端子a0〜a3に前記したベクトルの各要素a0
3を各々入力しておく。また、制御信号入力端子50
1には、計算を開始するまでは0を入力しておく。この
状態では、Dフリップフロップ511〜518には入力
端子d0〜d7に入力される値が設定されており、 Dフ
リップフロップ521〜523の値は0に設定されてい
る。
Next, the operation of the division circuit 500 will be described. First, each input each element d 0 to d 7 of the above-mentioned vector to the input terminal d0~d8 described above, the elements a 0 ~ of the above-mentioned vector to the input terminal a0~a3 described above
keep each enter a 3. Also, the control signal input terminal 50
For 1, 0 is input until the calculation is started. In this state, the values input to the input terminals d0 to d7 are set in the D flip-flops 511 to 518, and the values of the D flip-flops 521 to 523 are set to 0.

【0016】そこで、制御信号入力端子501に1を入
力すると、計算が開始されて、8クロック後のDフリッ
プフロップ521〜523、およびDフリップフロップ
531〜538に結果が格納される。即ち、前記8ビッ
トで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 として、前記4ビットで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 としたとき、前記D(x)を上記A(x)で割った商
は、前記8ビットで表されるベクトル の各要素を用いて、 となり、前記A(x)を前記B(x)で割った剰余は、
前記4ビットで表されるベクトル の各要素を用いて、 となるものとすると、8クロック後、出力端子q0〜q
7には、前記ベクトル の各要素q0〜q7が各々出力され、出力端子r0〜r3
には、各々前記ベクトル の各要素r0〜r3が出力される。以上説明したように、
本実施の形態1によれば、演算プロセッサ100を用い
て任意のmに対するガロア体GF(2m)上の演算を、
図2〜図5に示した乗算回路、積和演算回路、2乗演算
回路、除算回路、および、演算プロセッサに内蔵された
プロセッサのワード長、またはその倍数長の排他的論理
和演算回路などによって高速に実現することができる。
Therefore, when 1 is input to the control signal input terminal 501, the calculation is started, and the results are stored in the D flip-flops 521 to 523 and the D flip-flops 531 to 538 after eight clocks. That is, the vector represented by the 8 bits Is a polynomial on GF (2) with each element of As the vector represented by the 4 bits Is a polynomial on GF (2) with each element of Then, the quotient obtained by dividing the D (x) by the A (x) is a vector represented by the 8 bits. Using each element of And the remainder obtained by dividing the A (x) by the B (x) is
Vector represented by the 4 bits Using each element of After eight clocks, the output terminals q0 to q
7 contains the vector Each element q 0 to q 7 is each output of the output terminal r0~r3
Has the vector Are output as r 0 to r 3 . As explained above,
According to the first embodiment, the operation on the Galois field GF (2 m ) for an arbitrary m using the arithmetic processor 100 is
The multiplication circuit, the product-sum operation circuit, the square operation circuit, the division circuit, and the exclusive OR operation circuit having a word length of a processor incorporated in the operation processor or a multiple length thereof are shown in FIGS. It can be realized at high speed.

【0017】(実施の形態2)この実施の形態2では、
本発明の演算プロセッサを用いてガロア体GF(2m
上の2乗算および乗算を実現する場合について説明す
る。まず、nを自然数としたとき、nビットで表される
2つのベクトル および、2nビットで表されるベクトル を互いに演算して、2nビットのベクトル とする積和演算回路であって、上記した2nビットのベ
クトルの各要素が、 である積和演算回路の動作を、 と表すものとする。また、nを自然数としたとき、2n
ビットで表されるベクトル と、0ベクトルを除くnビットで表されるベクトル を演算して、2nビットで表されるベクトル および を算出する除算回路であって、上記した2nビットで表
されるベクトル の各要素を係数とするGF(2)上の多項式を、 とし、前記nビットで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 としたとき、前記GF(2)上の多項式D(x)を上記
GF(2)上の多項式A(x)で割った商は、前記2n
ビットで表されるベクトル の各要素を用いて、 となり、前記D(x)を前記A(x)で割った剰余は、
前記nビットで表されるベクトル の各要素を用いることにより、 となる除算回路の動作を、 と表すものとする。
(Embodiment 2) In this embodiment 2,
Galois field GF (2 m ) using the arithmetic processor of the present invention
A case where the above squaring and multiplication are realized will be described. First, when n is a natural number, two vectors represented by n bits And a vector represented by 2n bits To each other to obtain a 2n-bit vector Where each element of the 2n-bit vector is The operation of the product-sum operation circuit is It is assumed that When n is a natural number, 2n
Vector represented by bits And a vector represented by n bits excluding the 0 vector To calculate a vector represented by 2n bits and Is a division circuit for calculating the vector represented by 2n bits described above. Is a polynomial on GF (2) with each element of And the vector represented by the n bits Is a polynomial on GF (2) with each element of Then, the quotient obtained by dividing the polynomial D (x) on the GF (2) by the polynomial A (x) on the GF (2) is 2n
Vector represented by bits Using each element of And the remainder obtained by dividing the D (x) by the A (x) is
A vector represented by the n bits By using each element of The operation of the division circuit It is assumed that

【0018】更に、C=(CL,CR)即ち、 と定義し、D=(DL,DR)即ち、 と定義し、Q=(QL,QR)即ち、 と定義する。また、ガロア体GF(2m)の生成多項式
を、 とし、上記生成多項式の係数を要素としたベクトルを、 とし、ガロア体GF(2m)上の2元を、 とし、これら3つのベクトルを、次のようにnビット毎
にブロック分割するようにする。すなわち、 ただし、 である。また、 但し、 とし、wに演算結果を格納するものとする。
Further, C = ( CL , CR ), that is, D = (D L , D R ), that is, Is defined as, Q = (Q L, Q R) In other words, Is defined. The generator polynomial of the Galois field GF (2 m ) is And a vector having the coefficients of the generator polynomial as elements, And the binary on the Galois field GF (2 m ) is Then, these three vectors are divided into blocks every n bits as follows. That is, However, It is. Also, However, And the operation result is stored in w.

【0019】第1の例としては、ガロア体GF(2m
上の2乗算 の計算手続きを、以下に示す。ここにおいてX←YはY
の内容をXに代入することを示す。また、X<<YはXの
内容をYビット左シフトすることを表し、X>>YはXの
内容をYビット右シフトすることを表す。 -------------------------------前処理--------------------------- -------------------------------2乗算--------------------------- -------------------------------除算--------------------------- -------------------------------後処理---------------------------
As a first example, the Galois field GF (2 m )
Squaring on The calculation procedure of is shown below. Where X ← Y is Y
Is substituted for X. X << Y indicates that the content of X is shifted left by Y bits, and X >> Y indicates that the content of X is shifted right by Y bits. -------------------------------Preprocessing----------------- ---------- ------------------------------- 2 multiplication ----------------- ---------- -------------------------------division------------------ --------- ------------------------------- Post-processing ----------------- ----------

【0020】また、第2の例として、ガロア体GF(2
m)上の乗算 の計算手続きを、以下に示す。 -------------------------------前処理--------------------------- -------------------------------ステップ乗算--------------------------- -------------------------------ステップ除算--------------------------- -------------------------------後処理--------------------------- なお、上述した2つの例で用いた積和演算回路によるス
テップは、乗算回路によるステップと排他的論理和演算
回路によるステップとの組み合わせによって実現しても
よい。以上説明したように、本実施の形態2によれば、
上述した演算プロセッサ100を用いて、ガロア体GF
(2m)上の2乗算および乗算を実現するにあたって、
図2〜図5に示した乗算回路、積和演算回路、2乗演算
回路、および除算回路を効果的に使用することができ、
演算処理を高速に実現することができる。
As a second example, the Galois field GF (2
m ) Multiplication on The calculation procedure of is shown below. -------------------------------Preprocessing----------------- ---------- ------------------------------- Step multiplication ----------------- ---------- ------------------------------- Step division ----------------- ---------- ------------------------------- Post-processing ----------------- ---------- Note that the steps by the product-sum operation circuit used in the above two examples may be realized by a combination of the step by the multiplication circuit and the step by the exclusive-OR operation circuit. As described above, according to the second embodiment,
Using the arithmetic processor 100 described above, the Galois field GF
In realizing the squaring and multiplication on (2 m ),
The multiplier circuit, the product-sum operation circuit, the square operation circuit, and the division circuit shown in FIGS.
Arithmetic processing can be realized at high speed.

【0021】[0021]

【発明の効果】本発明は、以上説明してきたように、演
算プロセッサの演算部にプロセッサのワード長、もしく
はその倍数長のGF(2m)用拡張演算部を付加して、
元の演算プロセッサに備わる命令の実行手続きと同様な
手続きを行うことにより、GF(2m)用拡張演算が実
行できるようにしたものであるので、GF(p)上の演
算処理に加えて、GF(2m)上の演算処理を高速に実
現する上で著しい効果を発揮する。
According to the present invention, as described above, an extended arithmetic unit for GF (2 m ) having a word length of the processor or a multiple length thereof is added to the arithmetic unit of the arithmetic processor.
By performing the same procedure as the execution procedure of the instructions provided in the original arithmetic processor, the extended arithmetic operation for GF (2 m ) can be executed. In addition to the arithmetic processing on GF (p), This has a remarkable effect in realizing high-speed arithmetic processing on GF (2 m ).

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

【図1】本実施の形態1に係る演算プロセッサの概略構
成を示した図である。
FIG. 1 is a diagram illustrating a schematic configuration of an arithmetic processor according to a first embodiment;

【図2】本実施の形態1に係る乗算回路の概略構成を示
した図である。
FIG. 2 is a diagram illustrating a schematic configuration of a multiplication circuit according to the first embodiment;

【図3】本実施の形態1に係る積和演算回路の概略構成
を示した図である。
FIG. 3 is a diagram illustrating a schematic configuration of a product-sum operation circuit according to the first embodiment;

【図4】本実施の形態1に係る2乗演算回路の概略構成
を示した図である。
FIG. 4 is a diagram illustrating a schematic configuration of a square operation circuit according to the first embodiment;

【図5】本実施の形態1に係る除算回路の概略構成を示
した図である。
FIG. 5 is a diagram showing a schematic configuration of a division circuit according to the first embodiment.

【図6】従来のGF(2m)乗算回路の一例の概略構成
を示した図である。
FIG. 6 is a diagram showing a schematic configuration of an example of a conventional GF (2 m ) multiplication circuit.

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

100 演算プロセッサ、 101 命令記憶部、 102 データ記憶部、 103 命令フェッチ部、 104 デコード部、 105 制御部、 106 演算部、 106a GF(2m)用拡張演算部。100 arithmetic processor, 101 instruction storage unit, 102 data storage unit, 103 instruction fetch unit, 104 decoding unit, 105 control unit, 106 arithmetic unit, 106a extended arithmetic unit for GF (2 m ).

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 nを自然数としたとき、nビットで表さ
れる2つのベクトル を互いに演算し、2nビットのベクトル とする演算回路であって、上記2nビットのベクトルの
各要素が、 であることを特徴とする演算回路。
1. When n is a natural number, two vectors represented by n bits To each other, and a 2n-bit vector Where each element of the 2n-bit vector is An arithmetic circuit characterized by the following.
【請求項2】 nを自然数としたとき、nビットで表さ
れる2つのベクトル および、2nビットで表されるベクトル を互いに演算し、2nビットのベクトル とする演算回路であって、 上記2nビットのベクトルの各要素が、 であることを特徴とする演算回路。
2. When n is a natural number, two vectors represented by n bits And a vector represented by 2n bits To each other, and a 2n-bit vector Where each element of the 2n-bit vector is An arithmetic circuit characterized by the following.
【請求項3】 nを自然数としたとき、nビットで表さ
れるベクトル を演算し、2nビットのベクトル とする演算回路であって、 上記2nビットのベクトルの各要素が、 であることを特徴とする演算回路。
3. A vector represented by n bits, where n is a natural number. And a 2n-bit vector Where each element of the 2n-bit vector is An arithmetic circuit characterized by the following.
【請求項4】 nを自然数としたとき、2nビットで表
されるベクトル と、0ベクトルを除くnビットで表されるベクトル を演算し、2nビットで表されるベクトル および を算出する演算回路であって、 前記2nビットで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 前記nビットで表されるベクトル の各要素を係数とするGF(2)上の多項式を、 としたとき、 前記D(x)を上記A(x)で割った商は、前記2nビ
ットで表されるベクトル の各要素を用いて、 とし、 前記D(x)を前記A(x)で割った剰余は、前記nビ
ットで表されるベクトル の各要素を用いて、 とすることを特徴とする演算回路。
4. A vector represented by 2n bits, where n is a natural number. And a vector represented by n bits excluding the 0 vector And a vector represented by 2n bits and An arithmetic circuit for calculating a vector represented by 2n bits Is a polynomial on GF (2) with each element of A vector represented by the n bits Is a polynomial on GF (2) with each element of The quotient obtained by dividing the D (x) by the A (x) is a vector represented by the 2n bits. Using each element of The remainder obtained by dividing the D (x) by the A (x) is a vector represented by the n bits. Using each element of An arithmetic circuit characterized by the following.
【請求項5】 命令を記憶するための命令記憶部と、 上記命令記憶部に記憶された命令をフェッチする命令フ
ェッチ部と、 上記命令フェッチ部でフェッチされた命令をデコードす
るデコード部と、 データを記憶するためのデータ記憶部と、 上記データ記憶部に記憶されたデータを演算するための
演算部と、 前記デコード部でデコードされた情報に基づいて上記演
算部および前記データ記憶部を制御する制御部とを有
し、 前記演算部には、ワード長もしくはその倍数長の排他的
論理和演算を含む論理演算用回路および整数演算用回路
を内蔵し、 さらに、該演算部の一部がガロア体GF(2m)用拡張
演算部となっていて、 該GF(2m)用拡張演算部では、ワード長もしくはそ
の倍数長のGF(2m)用拡張演算用回路が内蔵されて
おり、 前記演算部では、前記制御部から伝送される制御情報に
基づいて、前記データ記憶部からデータを読み込み、そ
れらを演算し、その演算結果を該データ記憶部へ書き込
むことを特徴とする演算プロセッサ。
5. An instruction storage unit for storing instructions, an instruction fetch unit for fetching instructions stored in the instruction storage unit, a decoding unit for decoding instructions fetched by the instruction fetch unit, A data storage unit for storing data, a calculation unit for calculating data stored in the data storage unit, and controlling the calculation unit and the data storage unit based on information decoded by the decoding unit. A logic unit including an exclusive OR operation having a word length or a multiple length thereof and an integer operation circuit, and a part of the arithmetic unit is a Galois control unit. it becomes the body GF (2 m) for the extended computing unit, in the GF (2 m) for the extended computing unit, the word length or the length of multiples GF (2 m) for extended operation circuit is built, An arithmetic processor, wherein the arithmetic unit reads data from the data storage unit based on control information transmitted from the control unit, calculates the data, and writes the calculation result to the data storage unit.
【請求項6】 前記命令記憶部と前記データ記憶部の一
方、あるいはその両方がプロセッサの外部記憶であるこ
とを特徴とする請求項5記載の演算プロセッサ。
6. The processor according to claim 5, wherein one or both of the instruction storage unit and the data storage unit are external storages of the processor.
【請求項7】 前記GF(2m)用拡張演算部が、前記
請求項1〜請求項4の演算回路の少なくとも1つを含ん
でいることを特徴とする請求項5または請求項6記載の
演算プロセッサ。
7. The GF (2 m ) extended operation unit includes at least one of the operation circuits according to any one of claims 1 to 4. Arithmetic processor.
【請求項8】 前記GF(2m)用拡張演算部に装備さ
れたGF(2m)用拡張演算用回路を例外処理すること
なく動作させることが可能な命令セットを有することを
特徴とする請求項7記載の演算プロセッサ。
Characterized by having a set of instructions that can be operated without exception handling instrumented GF (2 m) for extended operation circuit to wherein said GF (2 m) for the extended computing unit The arithmetic processor according to claim 7.
JP28340299A 1999-10-04 1999-10-04 Arithmetic processor Expired - Fee Related JP4484002B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28340299A JP4484002B2 (en) 1999-10-04 1999-10-04 Arithmetic processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28340299A JP4484002B2 (en) 1999-10-04 1999-10-04 Arithmetic processor

Publications (2)

Publication Number Publication Date
JP2001109376A true JP2001109376A (en) 2001-04-20
JP4484002B2 JP4484002B2 (en) 2010-06-16

Family

ID=17665071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28340299A Expired - Fee Related JP4484002B2 (en) 1999-10-04 1999-10-04 Arithmetic processor

Country Status (1)

Country Link
JP (1) JP4484002B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015135587A (en) * 2014-01-17 2015-07-27 日本電信電話株式会社 Extension field multiplication device, extension field multiplication method, and program

Citations (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5282147A (en) * 1975-12-29 1977-07-09 Honeywell Inf Systems Matrix multiplier for galloway gf *2m*
JPS58161050A (en) * 1981-11-30 1983-09-24 オムネット・アソシエイツ Numerical calculation method for computation in definite body
JPS58219848A (en) * 1982-06-15 1983-12-21 Toshiba Corp Multiplier of galois field
JPS62150938A (en) * 1985-12-24 1987-07-04 Matsushita Electric Ind Co Ltd Multiplication circuit of definite field
JPS62296426A (en) * 1986-06-17 1987-12-23 Hitachi Electronics Eng Co Ltd Cvd thin film formation apparatus
JPS6386925A (en) * 1986-09-30 1988-04-18 Canon Inc Galois body multiplying circuit
JPS6399623A (en) * 1986-10-15 1988-04-30 Matsushita Electric Ind Co Ltd Operational circuit for finite body
JPS63104526A (en) * 1986-10-21 1988-05-10 Matsushita Electric Ind Co Ltd Arithmetic circuit for finite body
JPS63221426A (en) * 1987-03-10 1988-09-14 Nec Corp Multiplying circuit for element belonging to galois field gf (2m)
JPS63221425A (en) * 1987-03-10 1988-09-14 Nec Corp Power arithmetic unit for primitive root of galois field gf (2m)
JPS63268037A (en) * 1987-04-24 1988-11-04 Mitsubishi Electric Corp Multiplying circuit for finite body
JPH01284025A (en) * 1988-05-11 1989-11-15 Ricoh Co Ltd Multiplication circuit for galois field
JPH0248828A (en) * 1988-05-23 1990-02-19 Mitsubishi Electric Corp Galois field divider circuit and circuit sharing multiplication and division
JPH0253141A (en) * 1988-08-17 1990-02-22 Matsushita Electric Ind Co Ltd Galois extension field computing element
JPH04278642A (en) * 1991-03-06 1992-10-05 Matsushita Electric Ind Co Ltd Galois enlarging field computing element
JPH0568032A (en) * 1991-09-05 1993-03-19 Canon Inc Arithmetic unit and ciphering communication method using the same
JPH0764810A (en) * 1993-08-30 1995-03-10 Toshiba Corp Galois field computing element
JPH08101779A (en) * 1994-09-21 1996-04-16 Sgs Thomson Microelectron Sa Electronic circuit for modular calculation in finite region
JPH09114645A (en) * 1995-10-16 1997-05-02 Fuji Electric Co Ltd Multiplication circuit on finite field
JPH09218877A (en) * 1996-02-13 1997-08-19 Fujitsu Ltd Dictionary retrieval and registration method for data compression device and restoration device
JPH10503311A (en) * 1995-08-29 1998-03-24 アトメル・コーポレイション Galois field polynomial multiply / divide circuit and digital signal processor incorporating the same
JPH1091432A (en) * 1996-09-13 1998-04-10 Sanyo Electric Co Ltd Program execution method and device therefor
JPH1097423A (en) * 1996-09-20 1998-04-14 Hitachi Ltd Processor having register structure which is suitable for parallel execution control of loop processing
WO1999016175A1 (en) * 1997-09-24 1999-04-01 Hitachi, Ltd. Semiconductor integrated circuit and data processing system
JPH1196030A (en) * 1997-09-22 1999-04-09 Toyo Commun Equip Co Ltd Method and circuit for multiplication on finite field
JPH11110241A (en) * 1997-10-07 1999-04-23 Toyo Commun Equip Co Ltd Multiplication method for galois field and multiplication circuit therefor
JP2000207387A (en) * 1999-01-20 2000-07-28 Toshiba Corp Arithmetic unit and cipher processor
JP2001034167A (en) * 1999-07-23 2001-02-09 Toshiba Corp Arithmetic unit and cryptogram processor
JP2001051832A (en) * 1999-08-05 2001-02-23 Fujitsu Ltd Multiplication residue arithmetic method and multiplication residue circuit
JP2001520775A (en) * 1997-04-18 2001-10-30 サーティカム コーポレイション Arithmetic processor

Patent Citations (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5282147A (en) * 1975-12-29 1977-07-09 Honeywell Inf Systems Matrix multiplier for galloway gf *2m*
JPS58161050A (en) * 1981-11-30 1983-09-24 オムネット・アソシエイツ Numerical calculation method for computation in definite body
JPS58219848A (en) * 1982-06-15 1983-12-21 Toshiba Corp Multiplier of galois field
JPS62150938A (en) * 1985-12-24 1987-07-04 Matsushita Electric Ind Co Ltd Multiplication circuit of definite field
JPS62296426A (en) * 1986-06-17 1987-12-23 Hitachi Electronics Eng Co Ltd Cvd thin film formation apparatus
JPS6386925A (en) * 1986-09-30 1988-04-18 Canon Inc Galois body multiplying circuit
JPS6399623A (en) * 1986-10-15 1988-04-30 Matsushita Electric Ind Co Ltd Operational circuit for finite body
JPS63104526A (en) * 1986-10-21 1988-05-10 Matsushita Electric Ind Co Ltd Arithmetic circuit for finite body
JPS63221426A (en) * 1987-03-10 1988-09-14 Nec Corp Multiplying circuit for element belonging to galois field gf (2m)
JPS63221425A (en) * 1987-03-10 1988-09-14 Nec Corp Power arithmetic unit for primitive root of galois field gf (2m)
JPS63268037A (en) * 1987-04-24 1988-11-04 Mitsubishi Electric Corp Multiplying circuit for finite body
JPH01284025A (en) * 1988-05-11 1989-11-15 Ricoh Co Ltd Multiplication circuit for galois field
JPH0248828A (en) * 1988-05-23 1990-02-19 Mitsubishi Electric Corp Galois field divider circuit and circuit sharing multiplication and division
JPH0253141A (en) * 1988-08-17 1990-02-22 Matsushita Electric Ind Co Ltd Galois extension field computing element
JPH04278642A (en) * 1991-03-06 1992-10-05 Matsushita Electric Ind Co Ltd Galois enlarging field computing element
JPH0568032A (en) * 1991-09-05 1993-03-19 Canon Inc Arithmetic unit and ciphering communication method using the same
JPH0764810A (en) * 1993-08-30 1995-03-10 Toshiba Corp Galois field computing element
JPH08101779A (en) * 1994-09-21 1996-04-16 Sgs Thomson Microelectron Sa Electronic circuit for modular calculation in finite region
JPH10503311A (en) * 1995-08-29 1998-03-24 アトメル・コーポレイション Galois field polynomial multiply / divide circuit and digital signal processor incorporating the same
JPH09114645A (en) * 1995-10-16 1997-05-02 Fuji Electric Co Ltd Multiplication circuit on finite field
JPH09218877A (en) * 1996-02-13 1997-08-19 Fujitsu Ltd Dictionary retrieval and registration method for data compression device and restoration device
JPH1091432A (en) * 1996-09-13 1998-04-10 Sanyo Electric Co Ltd Program execution method and device therefor
JPH1097423A (en) * 1996-09-20 1998-04-14 Hitachi Ltd Processor having register structure which is suitable for parallel execution control of loop processing
JP2001520775A (en) * 1997-04-18 2001-10-30 サーティカム コーポレイション Arithmetic processor
JPH1196030A (en) * 1997-09-22 1999-04-09 Toyo Commun Equip Co Ltd Method and circuit for multiplication on finite field
WO1999016175A1 (en) * 1997-09-24 1999-04-01 Hitachi, Ltd. Semiconductor integrated circuit and data processing system
JPH11110241A (en) * 1997-10-07 1999-04-23 Toyo Commun Equip Co Ltd Multiplication method for galois field and multiplication circuit therefor
JP2000207387A (en) * 1999-01-20 2000-07-28 Toshiba Corp Arithmetic unit and cipher processor
JP2001034167A (en) * 1999-07-23 2001-02-09 Toshiba Corp Arithmetic unit and cryptogram processor
JP2001051832A (en) * 1999-08-05 2001-02-23 Fujitsu Ltd Multiplication residue arithmetic method and multiplication residue circuit

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
今井 秀樹, 符号理論, vol. 第3版, JPN6009022167, 10 June 1991 (1991-06-10), JP, pages 70 - 72, ISSN: 0001345674 *
斯波万恵他: "GF(2m)演算及び整数演算を処理可能なハイブリッド・コプロセッサの提案", 1999年暗号と情報セキュリティシンポジウム予稿集, JPN6009022171, 26 January 1999 (1999-01-26), JP, pages 819 - 824, ISSN: 0001345673 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015135587A (en) * 2014-01-17 2015-07-27 日本電信電話株式会社 Extension field multiplication device, extension field multiplication method, and program

Also Published As

Publication number Publication date
JP4484002B2 (en) 2010-06-16

Similar Documents

Publication Publication Date Title
Rijmen Efficient Implementation of the Rijndael S-box
JP4067818B2 (en) Elliptic curve cryptography apparatus, elliptic curve cryptography program, and elliptic curve cryptography calculation method
US8804951B2 (en) Speeding up galois counter mode (GCM) computations
TW550498B (en) Method and apparatus for modular multiplying and calculating unit for modular multiplying
US20060126830A1 (en) Montgomery transform device, arithmetic device, IC card, encryption device, decryption device and program
JP2009282992A (en) Polynomial arithmetic operation
KR100442218B1 (en) Power-residue calculating unit using montgomery algorithm
CA2369537C (en) Method and apparatus for performing finite field calculations
US20110075836A1 (en) Method and apparatus for elliptic curve cryptographic processing
Jalali et al. NEON SIKE: Supersingular isogeny key encapsulation on ARMv7
CN115936133A (en) Post-combination quantum security using redefined polynomial operations
JP4484002B2 (en) Arithmetic processor
JP2000207387A (en) Arithmetic unit and cipher processor
JP4543143B2 (en) Elliptic curve encryption device, elliptic curve cryptography calculation method
KR100974624B1 (en) Method and Apparatus of elliptic curve cryptography processing in sensor mote and Recording medium using it
US8447796B2 (en) Apparatus with a vector generation unit and encoder for receiving first and second inputs to generate at least significant zero (LSZ)
EP3993314B1 (en) Keys for elliptic curve cryptography
US20230283462A1 (en) Techniques, devices, and instruction set architecture for balanced and secure ladder computations
JP2005258228A (en) Encryption processing operation method, encryption processing device, and computer program
JP2004053814A (en) Elliptic curve cryptosystem device and elliptic curve cryptosystem operation method
JP2001194996A (en) Division device for polynomial
JP5157018B2 (en) Original division operation circuit on Galois field
JP2001005385A (en) Computing device on galois body, computing method and recording medium with program for realizing the method recorded therein
JP5211398B2 (en) Original division operation circuit on Galois field
CN113467752A (en) Division operation device, data processing system and method for private calculation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060929

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20090428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090723

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100309

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100316

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100316

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140402

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees