KR100395511B1 - Method of construction of parallel In-Output multiplier over Galois Field - Google Patents

Method of construction of parallel In-Output multiplier over Galois Field Download PDF

Info

Publication number
KR100395511B1
KR100395511B1 KR10-2001-0032359A KR20010032359A KR100395511B1 KR 100395511 B1 KR100395511 B1 KR 100395511B1 KR 20010032359 A KR20010032359 A KR 20010032359A KR 100395511 B1 KR100395511 B1 KR 100395511B1
Authority
KR
South Korea
Prior art keywords
polynomial
multiplication
field
order
multiplier
Prior art date
Application number
KR10-2001-0032359A
Other languages
Korean (ko)
Other versions
KR20020093554A (en
Inventor
오진영
Original Assignee
주식회사 하이닉스반도체
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 주식회사 하이닉스반도체 filed Critical 주식회사 하이닉스반도체
Priority to KR10-2001-0032359A priority Critical patent/KR100395511B1/en
Publication of KR20020093554A publication Critical patent/KR20020093554A/en
Application granted granted Critical
Publication of KR100395511B1 publication Critical patent/KR100395511B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/58Indexing scheme relating to groups G06F7/58 - G06F7/588
    • G06F2207/582Parallel finite field implementation, i.e. at least partially parallel implementation of finite field arithmetic, generating several new bits or trits per step, e.g. using a GF multiplier

Abstract

1. 청구범위에 기재된 발명이 속하는 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 유한체 상에서의 병렬 입출력 승산기의 설계 방법 및 상기 방법 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to a method for designing a parallel input / output multiplier on a finite body and a computer readable recording medium having recorded thereon a program for realizing the method.

2. 발명이 해결하고자 하는 기술적 과제2. Technical problem to be solved by the invention

본 발명은, 다항식의 계수의 개수가 3인 배수인 경우에 대해서 다항식을 3등분하고 3 등분된 다항식을 모듈화하여 조합 수식으로 표현하여 승산을 수행함으로서 회로 복잡도를 줄이기 위한 유한체 상에서의 병렬 입출력 승산기 설계 방법과 상기 방법을 실현시키기 위하여 프로그램을 기록한 기록매체를 제공함을 그 목적이 있음.In the present invention, a parallel input / output multiplier on a finite field for reducing circuit complexity by performing multiplication by dividing a polynomial into three and multiplying polynomials by a modular formula when the number of coefficients of the polynomial is a multiple of three. Its purpose is to provide a design method and a recording medium on which a program is recorded to realize the method.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

본 발명은, 유한체 상에서의 병렬 입출력 승산기의 설계 장치에 적용되는 승산기의 설계 방법에 있어서, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드(GF((2n)3))에 대한 다항식을 3 등분으로 분할하고, 이 분할된 다항식을 이용한 조합 수식(Si)을 생성하여 갈로아 필드(GF(2n)) 상에서 승산하는 제 1 단계; 상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 (P(x)) 및원소(αi)를 선택하는 제 2 단계; 상기 원시기약 다항식(P(x))을 이용하여 차수가 3의 배수인 갈로아 필드 (GF((2n)3))상에서 일반적인 형태의 2차 다항식으로 승산을 수행하는 제 3 단계; 및 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식(P(x))으로 모듈을 연산하는 제 4 단계를 포함한다.The present invention relates to a multiplier design method applied to a design apparatus of a parallel input / output multiplier on a finite body, and to a gallo field (GF ((2 n ) 3 )) whose order is a multiple of 3 in the contract polynomial for multiplication. A first step of dividing the polynomial into three equal parts, generating a combinational formula S i using the divided polynomial, and multiplying the polynomial on the galoa field GF (2 n ); A second step of selecting an optimized primitive polynomial (P (x)) and an element (α i ) using the fourth-order polynomial generated by the multiplication; A third step of multiplying by using the primitive polynomial (P (x)) to a second order polynomial of the general form on a Galloa field (GF ((2 n ) 3 )) having an order multiple of 3; And a fourth step of substituting a combination formula into the resultant expression of the multiplication to calculate a module using the original contract polynomial (P (x)).

4. 발명의 중요한 용도4. Important uses of the invention

본 발명은 오류정정 부호, 디지털 신호처리 등 보안 통신 구현에 사용됨.The present invention is used to implement secure communication, such as error correction code, digital signal processing.

Description

유한체 상에서의 병렬 입출력 승산기의 설계 방법{Method of construction of parallel In-Output multiplier over Galois Field}Method of construction of parallel In-Output multiplier over Galois Field}

본 발명은 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 관한 것으로, 보다 상세하게는 기약다항식의 차수가 3의 배수인 경우에 3 등분된 다항식을 모듈화하여 연산자를 논리곱 및 배타논리곱 연산자로 대치함으로서 회로 복잡도를 간소화하기 위한 유한체 상에서의 병렬 입출력 승산기의 설계 방법과 상기 방법을 실현시키기 위하여 프로그램을 기록한 기록매체에 관한 것이다.The present invention relates to a method for designing a parallel input / output multiplier on a finite field. More particularly, when a degree of a weak polynomial is a multiple of 3, the polynomial is divided into three and the operator is replaced by an AND and an exclusive logical operator. The present invention relates to a method for designing a parallel input / output multiplier on a finite body to simplify circuit complexity, and a recording medium on which a program is recorded to realize the method.

최근에 빠른 처리 속도와 복잡도를 고려한 VLSI 구현에 있어 규칙성과 모듈화가 매우 중요시되면서 이에 적합한 승산기 설계에 관한 연구가 활발히 진행되고 있다.Recently, as regularity and modularity are very important in VLSI implementation considering fast processing speed and complexity, studies on multiplier design suitable for this are being actively conducted.

종래에 제안된 유한체 상에서의 승산 알고리즘을 살펴보면 다음과 같다.The multiplication algorithm on the conventionally proposed finite field is as follows.

E.D Mastrovito는 GF(2n)상에서 기약 다항식 G(z)에 의한 모듈로 연산을 수행하여 C(z)를 생성하는 알고리즘을 제안한 바 있다. 이 알고리즘의 연산 과정 중 다항식 C(z)의 계수(ci)를 (수학식 1)과 같이 정의하였다.ED Mastrovito has proposed an algorithm for generating C (z) by performing a modulo operation on the GF (2 n ) using the polynomial G (z). The coefficient c i of the polynomial C (z) is defined as Equation 1 during the computation of this algorithm.

여기서, i=0, Λ, n-1Where i = 0, Λ, n-1

즉, 상기 (수학식 1)에서는 임의의 다항식인 B(z)에 대하여, 기약 다항식인 G(z)에 의해 결정되는 선형함수(fi j)를 통해 계수(ci)를 정의하였다. 여기서, ci는 n-tupple 백터이다.That is, in Equation 1, the coefficient c i is defined through a linear function f i j determined by the short polynomial G (z) for any polynomial B (z). Where c i is an n-tupple vector.

한편, 상기 선형함수(fi j)를 이용하여 C(x)를 행렬 형태로 나타내면 (수학식 2)와 같다.Meanwhile, when C (x) is expressed in a matrix form using the linear function f i j , Equation 2 is obtained.

여기서, M 과 A는 각각 n×n, n×1행렬식을 나타낸다.Here, M and A represent nxn and nx1 matrices, respectively.

한편, 선형함수(fi j)를 다항식인 B(z)의 계수들을 이용하여 표현하면 (수학식 3)과 같다.Meanwhile, the linear function f i j is expressed using Equation 3 of the polynomial B (z).

여기서, u(k)은 1일때 k ≥0이고, 0 일때 ≤ 0이다.Here, u (k) is k ≧ 0 when 1 and ≦ 0 when 0.

그리고, 다항식 A(z) 및 다항식 B(z)의 다항식 승산의 결과 최고 차수는 2n-2가 되며, 이 결과가 GF(2n)상에서의 다항식기 되기 위해서는 모듈로 연산을 하게 되어 n-1차인 다항식이 된다.The polynomial multiplication of polynomial A (z) and polynomial B (z) results in 2n-2, and the result is modulo operation in order to be a polynomial on GF (2 n ). It is a polynomial that is the difference.

여기서, (수학식 4)는 그 결과로 발생되는 계수를 나타낸다. 이때, 계수( qi j)를 (n-1)×n 행렬 Q로 정의한다.Here, Equation 4 shows the coefficient generated as a result. At this time, the coefficient q i j is defined as (n−1) × n matrix Q.

여기서, qi j∈GF(2), 행렬 Q의 성분(qi j)은 기약 다항식(G(z))의 계수들에 의해서 표현될 있다.Here, q i j ∈GF (2), the component q i j of the matrix Q can be represented by the coefficients of the short polynomial G (z).

즉, 기약 다항식이 G(z)= zn+gn-1zn-1+ ∧ +g1z+g0와 같은 형태를 가질 경우, 계수들은 행렬 Q의 계수들 중 첫번째 행렬을 g0=gj,q0 0= g0=1와 같이 기약 다항식 G(z)의 계수들에 의해서 정의하고 반복적으로 (수학식 5)와 같이 나머지 행을 정의한다.That is, if the weak polynomial has the form G (z) = z n + g n-1 z n-1 + ∧ + g 1 z + g 0 , the coefficients are g 0 in the first matrix of coefficients of matrix Q. = g j , q 0 0 = g 0 = 1 by the coefficients of the contract polynomial G (z) and iteratively define the rest of the row as (Equation 5).

즉, (수학식 5)에서 알수 있는 바와 같이, 성분(qi j) 값의 선택에 따라 승산기의 복잡도가 줄어들 수 있다. 따라서, 성분(qi j)은 기약 다항식의 계수에 의해 결정되는데, 최적의 다항식 선택을 위해 최소의 계수를 갖는 기약 다항식인 삼항식을 선택하면 (수학식 6)과 같다.That is, as can be seen from Equation 5, the complexity of the multiplier can be reduced according to the selection of the component q i j value. Thus, component (q i j ) is determined by the coefficients of the contract polynomial, and selecting the trinomial equation, which is the shortest polynomial with the smallest coefficient for optimal polynomial selection, is given by Equation (6).

G(z)=zn+z+1G (z) = z n + z + 1

여기서, (수학식 6)을 이용하여 승산기를 설계하면, 사용되는 게이트의 개수는 논리곱 게이트(AND) n2개, 그리고 배타 논리합 게이트(XOR) n2-1 개씩된다.Here, if the multiplier is designed using Equation (6), the number of gates used is two AND gates AND 2 and one exclusive OR gate X 2 n.

그러나, 종래의 기항 다항식을 통해 정보를 표현하고자 할때 그 정보에 따라 적합한 기약 다항식을 찾아야 하는 어려움이 있으며, 복잡도가 변화게 되는 문제점이 있었다.However, when expressing information through a conventional polynomial polynomial, there is a difficulty in finding a suitable polynomial according to the information, and there is a problem that the complexity changes.

이에 본 발명은, 상기와 같은 종래의 문제점을 해결하기 위해 제안된 것으로, 다항식의 계수의 개수가 3인 배수인 경우에 대해서 다항식을 3등분하고 3 등분된 다항식을 모듈화하여 조합 수깅으로 표현하여 승산을 수행함으로서 회로 복잡도를 줄이기 위한 유한체 상에서의 병렬 입출력 승산기 설계 방법과 상기 방법을 실현시키기 위하여 프로그램을 기록한 기록매체를 제공함을 그 목적으로 한다.Accordingly, the present invention has been proposed to solve the conventional problems as described above, and multiply the polynomials by the number of coefficients of the polynomial and multiply the polynomials by the modularized sum by multiplying the polynomials by the modular sum. The purpose of the present invention is to provide a method for designing a parallel input / output multiplier on a finite body to reduce circuit complexity and a recording medium on which a program is recorded to realize the method.

도 1은 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 대한 일실시예 흐름도.1 is a flow diagram of an embodiment of a method for designing a parallel input / output multiplier on a finite body in accordance with the present invention.

도 2는 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 의한 승산기의 일실시예 구성도.2 is a block diagram of a multiplier according to a design method of a parallel input / output multiplier on a finite body according to the present invention.

도 3은 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 의한 승산기의 다른 실시예 구성도.3 is a block diagram of another embodiment of the multiplier by the design method of the parallel input / output multiplier on the finite body according to the present invention;

도 4는 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 의한 승산기의 또 다른 실시예 구성도.4 is a block diagram of another embodiment of a multiplier according to a method of designing a parallel input / output multiplier on a finite body according to the present invention;

상기와 같은 목적을 달성하기 위한 본 발명의 방법은, 유한체 상에서의 병렬 입출력 승산기의 설계 장치에 적용되는 승산기의 설계 방법에 있어서, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드(GF((2n)3))에 대한 다항식을 3 등분으로 분할하고, 이 분할된 다항식을 이용한 조합 수식(Si)을 생성하여 갈로아 필드(GF(2n)) 상에서 승산하는 제 1 단계; 상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 (P(x)) 및 원소(αi)를 선택하는 제 2 단계; 상기 원시기약 다항식(P(x))을 이용하여 차수가 3의 배수인 갈로아 필드 (GF((2n)3))상에서 일반적인 형태의 2차 다항식으로 승산을 수행하는 제 3 단계; 및 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식(P(x))으로 모듈을 연산하는 제 4 단계를 포함하는 것을 특징으로 한다.The method of the present invention for achieving the above object, in the design method of the multiplier applied to the design device of the parallel input-output multiplier on the finite body, the galoa field (order of multiple of the contract polynomial for multiplication) The first step of dividing a polynomial for GF ((2 n ) 3 )) into three equal parts and generating a combination formula (S i ) using this divided polynomial to multiply on the galoa field (GF (2 n )). ; A second step of selecting an optimized primitive polynomial (P (x)) and an element (α i ) using the fourth-order polynomial generated by the multiplication; A third step of multiplying by using the primitive polynomial (P (x)) to a second order polynomial of the general form on a Galloa field (GF ((2 n ) 3 )) having an order multiple of 3; And a fourth step of calculating a module by using a primitive polynomial (P (x)) by substituting a combination formula into the result expression of the multiplication.

한편, 본 발명은, 유한체 상에서의 병렬 입출력 승산기의 설계를 위한 프로세서가 구비된 설계 시스템에, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드(GF((2n)3))에 대한 다항식을 3 등분으로 분할하고, 이 분할된 다항식을 이용한 조합 수식(Si)을 생성하여 갈로아 필드(GF(2n)) 상에서 승산하는 제 1 기능;상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 (P(x)) 및 원소(αi)를 선택하는 제 2 기능; 상기 원시기약 다항식(P(x))을 이용하여 차수가 3의 배수인 갈로아 필드 (GF((2n)3))상에서 일반적인 형태의 2차 다항식으로 승산을 수행하는 제 3 기능; 및 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식(P(x))으로 모듈을 연산하는 제 4 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention, in the design system equipped with a processor for the design of the parallel input and output multiplier on the finite body, the galoa field (GF ((2 n ) 3 )) of the order of multiple of the contracted polynomial for multiplication A first function of dividing a polynomial with respect to three equal parts and generating a combination equation (S i ) using the divided polynomial to multiply on a galoa field (GF (2 n )); a fourth-order polynomial generated by the multiplication A second function of selecting an optimized primitive polynomial (P (x)) and an element α i using ; A third function of multiplying the second order polynomial of the general form on the Galloa field (GF ((2 n ) 3 )) having an order multiple of 3 using the primitive drug polynomial P (x); And a computer-readable recording medium having recorded thereon a program for realizing a fourth function of calculating a module with a primitive polynomial (P (x)) by substituting a combination formula into the result of the multiplication.

여기서 상술된 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The objects, features and advantages described above will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에서는 다항식의 계수의 개수가 3의 배수인 경우에만 적용하여 복잡도가 개선된 승산기를 설게하고자 한것으로, 다음과 같은 과정을 통해 설계를 수행한다.In the present invention, the multiplier coefficient is applied only when the number of coefficients is a multiple of 3, so that the complexity of the multiplier is improved, and the design is performed through the following process.

먼저, 다항식을 3 등분으로 분할한다.First, the polynomial is divided into three equal parts.

즉, 본 발명은 다항식중에 다항식의 항의 개수가 3의 배수인 경우만 적용 가능하고 일반적인 다항식을 (수학식 7) 과 (수학식 8)와 같이 분할 하였다.That is, the present invention is applicable only when the number of terms of the polynomial in the polynomial is a multiple of 3, and the general polynomial is divided as in Equation 7 and Equation 8.

그리고, (수학식 7)과 (수학식 8)을 통해 분할된 다항식을 이용하여 조합 수식을 생성한다.Then, a combination formula is generated using the polynomial divided by the equation (7) and the equation (8).

즉, 임의의 다항식을 A(x), B(x)를 삼분등한 후, 나누어진 다항식을 각각 Ai(x) 및 Bi(x)로 표현하고, 이들을 이용하여 조합 수식을 생성한다.That is, an arbitrary polynomial is divided into A (x) and B (x) by three, and then the divided polynomial is represented by A i (x) and B i (x), respectively, and a combination formula is generated using these.

여기서, 상기 조합 수식은 함수 Si(x)로 표현되며, (수학식 9)로 나타낸다.Here, the combination formula is represented by a function S i (x), which is represented by Equation (9).

S0(x)=A0(x)·B0(x)S 0 (x) = A 0 (x) B 0 (x)

S1(x)=A1(x)·B1(x)S 1 (x) = A 1 (x) B 1 (x)

S2(x)=A2(x)·B2(x)S 2 (x) = A 2 (x) B 2 (x)

S3(x)=[A2(x)+A1(x)]·[B2(x)·B1(x)]S 3 (x) = [A 2 (x) + A 1 (x)] · [B 2 (x) · B 1 (x)]

S4(x)=[A2(x)+A0(x)]·[B2(x)·B0(x)]S 4 (x) = [A 2 (x) + A 0 (x)] · [B 2 (x) · B 0 (x)]

S5(x)=[A1(x)+A0(x)]·[B1(x)·B0(x)]S 5 (x) = [A 1 (x) + A 0 (x)] · [B 1 (x) B 0 (x)]

그리고, 상기와 같이 생성된 조합 수식(Si(x))를 이용하여 승산을 수행한다.Then, multiplication is performed using the combination formula S i (x) generated as described above.

즉, 수학식 (9)을 이용하여 다항식 승산을 표현할 수 있다. 여기서, i=0,1,∧,5이다. 임의의 다항식 A(x), B(x)의 결과를 C(x)로 정의하면 함수식 Si(x)를 이용하여 (수학식 10)으로 표현할 수 있다.That is, polynomial multiplication can be expressed using Equation (9). Where i = 0,1, k, 5. If the result of arbitrary polynomials A (x) and B (x) is defined as C (x), it can be expressed by Equation 10 using the function S i (x).

여기서, 상기와 같은 (수학식 10)의 다항식 승산을 수행하면 계수들간의 가산과 감산 연상이 증가되나, 승산의 수는 5/9m2까지 줄일 수 있다. 다항식들의 승산은 가산과 감산의 연산보다 복잡하므로, (수학식 10)에서와 같이 계수 Si(x)를 이용하여 다항식 연산을 수행하게 되면 전체적인 연산의 수는 줄어들게 된다.Here, if the above polynomial multiplication of Equation 10 is performed, addition and subtraction associations between coefficients are increased, but the number of multiplications can be reduced to 5 / 9m 2 . Since the multiplication of polynomials is more complicated than the operations of addition and subtraction, when the polynomial operation is performed using the coefficient S i (x) as in Equation 10, the total number of operations is reduced.

본 발명에서 제시한 유한체 GF((2n)3)은 GF(2n)의 확대체이므로 2n을 q로 정의할 경우, GF((2n)3)은 GF(q3)로 정의한다.Since the finite field GF ((2 n ) 3 ) presented in the present invention is an enlargement of GF (2 n ), when 2 n is defined as q, GF ((2 n ) 3 ) is defined as GF (q 3 ) do.

따라서, GF(q3)상의 표준기저로 표현된 임의의 두 다항식(A(x), B(x))를 통해서 승산 과정을 살펴보면 (수학식 11)과 다음과 같다.Therefore, the multiplication process through any two polynomials (A (x), B (x)) expressed as a standard basis on GF (q 3 ) is represented by Equation 11 below.

A(x) = a2x2+ a1x + a0 A (x) = a 2 x 2 + a 1 x + a 0

B(x) = b2x2+ b1x + b0 B (x) = b 2 x 2 + b 1 x + b 0

여기서, A(x), b(x) ∈ GF(qm), ai,bi∈ G(q)Where A (x), b (x) ∈ GF (q m ), a i , b i ∈ G (q)

즉, (수학식 11)을 이용하여 승산을 수행하여 발생한 4차 다항식인 C'(x)=A(x)B(x)를 표현하면 (수학식 12)와 같다.That is, when the multiplication is performed using Equation 11, C '(x) = A (x) B (x), which is a fourth-order polynomial, is expressed by Equation 12.

C'(x) = c'4x4+ c'3x3+ c'2 2+c'1x +c'0= s2x4+(s3+s2+s1)x3+(s4+ s2+s1+s0)x2+(s5+s1+s0)x + s0 C '(x) = c'4x4+ c '3x3+ c '2 2+ c 'Onex + c '0= s2x4+ (s3+ s2+ sOne) x3+ (s4+ s2+ sOne+ s0) x2+ (s5+ sOne+ s0) x + s0

이때, C'(x)를 모듈로 연산하기 위한 GF(qm)상에서의 원시기약 다항식인 p(x)는 (수학식 13)과 같다. 여기서, P(x)는 유전체의 특성에 의해 23n-1개의 원소를 생성시켜야 한다.At this time, p (x), a primitive contract polynomial on GF (q m ) for modulating C '(x), is expressed by Equation (13). Here, P (x) should generate 2 3n −1 elements due to the characteristics of the dielectric.

p(x) =x3+ p2x2+ p1x +p0 p (x) = x3+ p2x2+ pOnex + p0

여기서, P(x) ∈ GF(qm), pi∈ GF(q)Where P (x) ∈ GF (q m ), p i ∈ GF (q)

또한, (수학식 12)를 기약 다항식인 P(x)의 모듈로 연산한 결과를 C(x)로 표현하면 (수학식 14)와 같다.In addition, when Equation (12) is expressed by C (x), the result of calculating the modulo polynomial of P (x), which is the polynomial, is expressed as Equation (14).

C(x) = c2x2+ c1x+ c0 C (x) = c2x2+ cOnex + c0

여기서, c2= c'2+c'4(p1 +p2p2)+c'3p2 ,c1= c'1+c'4(p0 +p2p1)+c'3p1,c0= c'0+c'1(p0p2)+c'3p0, cipi∈ GF(q)Where c2= c '2+ c '4(pOne + p2p2) + c '3p2 ,cOne= c 'One+ c '4(p0 + p2pOne) + c '3pOne, c0= c '0+ c 'One(p0p2) + c '3p0, cipiGF (q)

이상에서 살펴본 바와 같이, 본 발명에 따른 승산기 설계 방법을 도 1를 토대로 살펴보면 다음과 같다.As described above, the multiplier design method according to the present invention will be described based on FIG. 1.

도 1은 유한체 상에서의 병렬 입출력 승산기의 설계 방법에 대한 일실시예 흐름도이다.1 is a flowchart illustrating a method of designing a parallel input / output multiplier on a finite body.

도 1에 도시된 바와 같이, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드 GF((2n)3)에 대한 다항식을 3 등분으로 분할한다(11). 그리고, 이 3 등분으로 분할된 다항식을 이용하여 조합 수식(Si)을 생성하여 갈로아 필드 GF(2n) 상에서 승산한다(12).As shown in FIG. 1, the polynomial for Galoa field GF ((2 n ) 3 ), of order multiple of the contract polynomial, is divided into three equal parts for multiplication (11). Then, using the polynomial divided into three equal parts, a combination equation (S i ) is generated and multiplied on the Galloa field GF (2 n ) (12).

그 후, 상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 P(x) 및 GF((2n)3)상에서의 최적화된 원소(αi)를 선택한다(13,14). 그러므로, 원시기약 다항식 P(x)을 이용하여 갈로아필드 GF((2n)3) 상에서 일반적인 형태의 2차 다항식으로 승산을 수행하고(15), 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식 P(x)으로 모듈을 연산하여 최종적인 승산기의 설계를 종료한다(16,17).Then, an optimized element α i on the optimized primitive polynomials P (x) and GF ((2 n ) 3 ) is selected using the fourth-order polynomial generated by the multiplication (13,14). Therefore, multiplication is performed on the Galoafield GF ((2 n ) 3 ) using a primitive polynomial P (x) as a generalized second order polynomial (15), and the combination expression is substituted into the result of the multiplication. The module is computed with the primitive polynomial P (x) to complete the design of the final multiplier (16, 17).

이와 같은 승산기의 설계 방법을 이용하여 GF((24)3) 상에서의 승산기를 설계하면 다음과 같다.If the multiplier on the GF ((2 4 ) 3 ) is designed using the multiplier design method as described above.

먼저, GF(24)상에서의 기약 다항식은 (수학식 15)으로, GF((24)3) 상에서의기약 다항식은 (수학식 16)으로 표현된다.First, the contract polynomial on GF (2 4 ) is represented by (15), and the contract polynomial on GF ((2 4 ) 3 ) is represented by (16).

G(z) = z4+ z + 1G (z) = z 4 + z + 1

P(x) = x3+ x + α7 P (x) = x 3 + x + α 7

여기서, p(x) ∈ GF((24)3), α7= GF(24) , z = GF(2) 이다.Where p (x) ∈ GF ((2 4 ) 3 ), α 7 = GF (2 4 ), z = GF (2).

따라서, 상기 (수학식 15)를 이용하여 GF(24)상에서의 승산을 수행하고, (수학식 16)을 이용하여 GF((24)3)상에서의 승산을 수행하며 (수학식 17)을 얻을 수 있다.Thus, the use of (Equation 15) by performing a multiplication on the GF (2 4), and performs multiplication on GF ((2 4) 3) using (Equation 16) and (Equation 17) Can be obtained.

C(x) =x2(s4+s1+s0) +x(s5+ s3+s0+s2α7) +(s3+s2+s17+ s0 C (x) = x2(s4+ sOne+ s0) + x (s5+ s3+ s0+ s2α7) + (s3+ s2+ sOne) α7+ s0

여기서, 상기 (수학식 17)은 모든 경우의 기약 다항식을 생성하고, 이 생성된 기약 다항식 중에서 원소를 4096개를 발생시킬 수 있는 삼항식을 선택한 후, 계수의 형태가 가장 간단한 기약 다항식을 선택한다.Here, Equation 17 generates a short term polynomial in all cases, selects a trinomial equation capable of generating 4096 elements from the generated short term polynomial, and selects the simplest polynomial having the simplest form of coefficient.

한편, (수학식 16)은 (수학식 12)를 모듈로 연산하여 (수학식 17)로 표현한다.On the other hand, Equation 16 is expressed by Equation 17 by modulating Equation 12 as a module.

도 2는 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기 설계 방법에 의한 승산기의 일실시예 구성도이다.2 is a block diagram of a multiplier according to a method for designing a parallel input / output multiplier on a finite body according to the present invention.

즉, 도 2는 조합 수식(Si)을 표현한 것으로, GF((24)3) 상에서의 승산기 설계시 Si와 GF(24)상에서의 원소 α7과의 승산을 하는 구성이 필요하다. 상기 GF(24)상에서의 승산기는 모두 8개의 입력과 4 개의 출력을 가지고 있으며, 이 입력은 각각 2 개의 원소의 백터 입력 ai,bi(i = 0, ∧,3)로 이루어져 있다.That is, FIG. 2 represents a combination formula (S i ), and when the multiplier is designed on GF ((2 4 ) 3 ), it is necessary to multiply S i by element α 7 on GF (2 4 ). . The multipliers on the GF (2 4 ) all have eight inputs and four outputs, each of which consists of two element vector inputs a i , b i (i = 0, ∧, 3).

도 3은 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기 설계 방법에 의한 승산기의 다른 실시예 구성도이다.3 is a configuration diagram of another multiplier according to a method for designing a parallel input / output multiplier on a finite body according to the present invention.

즉, 도 3는 도 2에 도시된 변수 중에서 ai에 α7= α3+ α + 1를 대입하여 구성한 병렬 입출력 승산기로, 12개의 베타적 논리합 게이트로 구성된다.That is, FIG. 3 is a of the variables shown in FIG.iΑ on7= α3+ α Parallel input / output multiplier constructed by substituting + 1 and composed of 12 beta-OR gates.

도 4는 본 발명에 따른 유한체 상에서의 병렬 입출력 승산기 설계 방법에 의한 승산기의 또 다른 실시예 구성도이다.4 is a block diagram of another multiplier according to a method for designing a parallel input / output multiplier on a finite body according to the present invention.

도 4는 GF((24)3) 상에서 승산의 결과식인 C(x)의 계수들을 표현한 (수학식 17)을 승산기로 표현한 것으로, 6개의 논리곱 게이트와 6개의 논리합으로 구성된다. 여기서, Si즉, S0(x), S1(x), S2(x), S3(x), S4(x) 및 S5(x)을 생성하는블록(30)은 도 1에 도시된 구성된 내부 구조를 갖고, 가산기는 각각 2개의 4 비트의 입력을 베타적 논리합하여 4비트의 출력을 갖는다. 또한. α7가 접속된 승산기(40,42)는 도 3에 도시된 내부 구조를 갖는다. 여기서, 신호선은 실제로 4 비트의 데이터 버스 구조를 갖는다.4 is a multiplier of Equation 17 representing the coefficients of C (x), which is a result of multiplication on GF ((2 4 ) 3 ), and is composed of six AND gates and six ORs. Here, block 30 generating S i, that is, S 0 (x), S 1 (x), S 2 (x), S 3 (x), S 4 (x) and S 5 (x) is shown in FIG. With the configured internal structure shown in 1, the adders each have a 4-bit output by beta-ORing two 4-bit inputs. Also. Multipliers 40 and 42 to which α 7 is connected have the internal structure shown in FIG. 3. Here, the signal line actually has a 4-bit data bus structure.

한편, 상기 GF((2n)3)상에서의 승산기 설계 방법으로, n=4 이하의 경우의 유한체에서의 승산기를 설계하기 위하여 필요한 GF(2n)상에서의 기약다항식G(z)와 GF((2n)3)상에서의 기약다항식 P(x)를 최적화하여 정리하면 (표 1)과 같다.On the other hand, as a method for designing a multiplier on GF ((2 n ) 3 ), the contract polynomials G (z) and GF on GF (2 n ) necessary for designing a multiplier in a finite body when n = 4 or less. The optimized polynomial P (x) on ((2 n ) 3 ) can be optimized and summarized in Table 1.

nn G(z)G (z) P(x)P (x) α1 α 1 1One x3+ x + 1x 3 + x + 1 1One 22 z2+ z + 1z 2 + z + 1 x3+ x2+ x + αx 3 + x 2 + x + α α1 α 1 33 z3+ z + 1z 3 + z + 1 x3+ x + αx 3 + x + α α1 α 1 44 z4+ z + 1z 4 + z + 1 x3+ x + α7 x 3 + x + α 7 α7+ α + 1α 7 + α + 1

이때, 상기 (표 1)의 GF((2n)3)상에서의 기약다항식과 원소를 이용하여 승산기를 설계하고 사용된 게이트의 개수를 비교하면 (표 2)와 같다.In this case, the multiplier is designed using the weak polynomial and the element on the GF ((2 n ) 3 ) of Table 1, and the number of gates used is shown in Table 2 below.

nn αi×si α i × s i AND-gateAND-gate EX-OR-gateEX-OR-gate 1One 00 66 66 22 22 2424 4444 33 22 5454 8686 44 22 9696 128128

즉, (표 2)에서 알 수 있듯이, 항상 일정한 형탸의 기약다항식 P(x)가 존재하지 않고, 기약다항식에 따라서 복잡도가 다르게 나타나고 있다.In other words, as shown in Table 2, there is not always a constant polynomial P (x), and the complexity is different according to the polynomial.

따라서, (표 3)은 기약다항식을 고려하여 GF((2n)3) 상에서의 기약다항식 P(x)중에서 게이트 복잡도가 낮은 승산기를 설계할 수 있는 9 가지 경우를 제시하고 게이트 복잡도를 계산하여 정리하였다.Therefore, Table 3 shows nine cases in which the low gate complexity multiplier can be designed in the contract polynomial P (x) on GF ((2 n ) 3 ) in consideration of the contract polynomial, and the gate complexity is calculated. In summary.

대부분의 유체의 경우 (표 3)의 9 가지 형태의 기약다항식을 포함하고 있으므로, 기약 다항식이 선택되면 (표 3)에 의해서 복잡도를 구할 수 있다.Since most fluids include the nine types of weak polynomials shown in Table 3, the complexity can be obtained from Table 3 when the simple polynomial is selected.

nono P(x)P (x) AND-게이트AND-gate OR-게이트OR-gate αi×si α i × s i 1One x3+ x + 1x 3 + x + 1 6n2 6n 2 6n2+ 8n -66n 2 + 8n -6 00 22 x3+ x2+ 1x 3 + x 2 + 1 6n2 6n 2 6n2+ 8n -66n 2 + 8n -6 00 33 x3+ x + αi x 3 + x + α i 6n2 6n 2 6n2+ 10n -66n 2 + 10n -6 22 44 x3+ αix + 1x 3 + α i x + 1 6n2 6n 2 6n2+ 10n -66n 2 + 10n -6 22 55 x3+ x2+ αi x 3 + x 2 + α i 6n2 6n 2 6n2+ 10n -66n 2 + 10n -6 22 66 x3+ αix2+ 1x 3 + α i x 2 + 1 6n2 6n 2 6n2+ 11n -66n 2 + 11n -6 22 77 x3+ x2+ x + αi x 3 + x 2 + x + α i 6n2 6n 2 6n2+ 8n -66n 2 + 8n -6 22 88 x3+ x2+ αix + 1x 3 + x 2 + α i x + 1 6n2 6n 2 6n2+ 11n -66n 2 + 11n -6 22 99 x3+ αix2+ x + 1x 3 + α i x 2 + x + 1 6n2 6n 2 6n2+ 13n -66n 2 + 13n -6 33

이상에서 설명한 본 발명은 진술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진자에게 있어 명백할 것이다.The present invention described above is not limited to the stated embodiments and the accompanying drawings, and it is common in the art that various substitutions, modifications, and changes can be made without departing from the technical spirit of the present invention. It will be evident to those who have knowledge of.

상기와 같은 본 발명은, GF((2n)3)의 조합체에 표현 가능한 정보의 개수는 3n이므로 제한된 정보만을 이용하여 규칙적이고 모듈화된 구조를 가질수 있으며, 논리곱 게이트와 논리합 게이트만으로 설계하여 최적화된 VLSI을 구현할 수 있는 효과가 있다.The present invention as described above, since the number of information that can be expressed in the combination of GF ((2 n ) 3 ) is 3n can have a regular and modular structure using only limited information, and optimized by designing only the AND gate and the OR gate There is an effect that can implement the VLSI.

Claims (4)

유한체 상에서의 병렬 입출력 승산기의 설계 장치에 적용되는 승산기의 설계 방법에 있어서,In the design method of the multiplier applied to the design device of the parallel input and output multiplier on the finite body, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드(GF((2n)3))에 대한 다항식을 3 등분으로 분할하고, 이 분할된 다항식을 이용한 조합 수식(Si)을 생성하여 갈로아 필드(GF(2n)) 상에서 승산하는 제 1 단계;To multiply, divide the polynomial for galloa field (GF ((2 n ) 3 )), which is a multiple of order of the contracted polynomial, into three equal parts, and generate a combination equation (S i ) using this divided polynomial. Multiplying on Galloa field (GF (2 n )); 상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 (P(x)) 및 원소(αi)를 선택하는 제 2 단계;A second step of selecting an optimized primitive polynomial (P (x)) and an element (α i ) using the fourth-order polynomial generated by the multiplication; 상기 원시기약 다항식(P(x))을 이용하여 차수가 3의 배수인 갈로아 필드 (GF((2n)3))상에서 일반적인 형태의 2차 다항식으로 승산을 수행하는 제 3 단계; 및A third step of multiplying by using the primitive polynomial (P (x)) to a second order polynomial of the general form on a Galloa field (GF ((2 n ) 3 )) having an order multiple of 3; And 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식(P(x))으로 모듈을 연산하는 제 4 단계A fourth step of substituting a combination formula into the result expression of the multiplication and calculating a module with a raw contract polynomial (P (x)) 를 포함하는 유한체 상에서의 병렬 입출력 승산기의 설계 방법.Method of designing a parallel input and output multiplier on a finite body comprising a. 제 1 항에 있어서,The method of claim 1, 상기 승산에 사용되는 승산 연산자는,The multiplication operator used for the multiplication, 논리곱 게이트와 베타 논리합 게이트인 것을 특징으로 하는 유한체 상에서의 병렬 입출력 승산기의 설계 방법.A method of designing a parallel input / output multiplier on a finite field, which is an AND gate and a beta OR gate. 제 1 항에 있어서,The method of claim 1, 상기 원시기약 다항식(P(x))은,The primitive drug polynomial (P (x)), 유한체의 특성에 따라 23n-1개의 원소를 생성하는 것을 특징으로 하는 유한체 상에서의 병렬 입출력 승산기의 설계 방법.A method of designing a parallel input / output multiplier on a finite body, characterized by generating 2 3n -1 elements depending on the characteristics of the finite body. 유한체 상에서의 병렬 입출력 승산기의 설계를 위한 프로세서가 구비된 설계 시스템에 있어서,A design system having a processor for designing a parallel input / output multiplier on a finite field, 승산을 위해 기약 다항식 중 차수가 3의 배수인 갈로아 필드(GF((2n)3))에 대한 다항식을 3 등분으로 분할하고, 이 분할된 다항식을 이용한 조합 수식(Si)을 생성하여 갈로아 필드(GF(2n))상에서 승산하는 제 1 기능;To multiply, divide the polynomial for galloa field (GF ((2 n ) 3 )), which is a multiple of order of the contracted polynomial, into three equal parts, and generate a combination equation (S i ) using this divided polynomial. A first function of multiplying on galoa field GF (2 n ); 상기 승산으로 발생된 4차 다항식을 이용하여 최적화된 원시기약 다항식 (P(x)) 및 원소(αi)를 선택하는 제 2 기능;A second function of selecting an optimized primitive polynomial (P (x)) and an element (α i ) using the fourth-order polynomial generated by the multiplication; 상기 원시기약 다항식(P(x))을 이용하여 차수가 3의 배수인 갈로아 필드(GF((2n)3))상에서 일반적인 형태의 2차 다항식으로 승산을 수행하는 제 3 기능; 및A third function of multiplying the second order polynomial of the general form on the Galloa field (GF ((2 n ) 3 )), the order of which is a multiple of 3 using the primitive drug polynomial (P (x)); And 상기 승산의 결과식에 조합 수식을 대입하여 원시기약 다항식(P(x))으로 모듈을 연산하는 제 4 기능A fourth function of calculating a module with a raw contract polynomial (P (x)) by substituting a combination formula into the result expression of the multiplication; 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR10-2001-0032359A 2001-06-09 2001-06-09 Method of construction of parallel In-Output multiplier over Galois Field KR100395511B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0032359A KR100395511B1 (en) 2001-06-09 2001-06-09 Method of construction of parallel In-Output multiplier over Galois Field

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0032359A KR100395511B1 (en) 2001-06-09 2001-06-09 Method of construction of parallel In-Output multiplier over Galois Field

Publications (2)

Publication Number Publication Date
KR20020093554A KR20020093554A (en) 2002-12-16
KR100395511B1 true KR100395511B1 (en) 2003-08-25

Family

ID=27708455

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0032359A KR100395511B1 (en) 2001-06-09 2001-06-09 Method of construction of parallel In-Output multiplier over Galois Field

Country Status (1)

Country Link
KR (1) KR100395511B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100606437B1 (en) * 2004-12-16 2006-08-01 고려대학교 산학협력단 Apparatus for performing polymomual multiplication in extension field and method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980015799A (en) * 1996-08-23 1998-05-25 배순훈 Galois field multiplier by combination logic circuit
KR0162484B1 (en) * 1995-02-25 1999-01-15 구자홍 Multiplier of galois field
KR100193732B1 (en) * 1996-11-28 1999-06-15 윤종용 Parallel finite field multiplier
KR20010068349A (en) * 2000-01-05 2001-07-23 김효근 Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0162484B1 (en) * 1995-02-25 1999-01-15 구자홍 Multiplier of galois field
KR19980015799A (en) * 1996-08-23 1998-05-25 배순훈 Galois field multiplier by combination logic circuit
KR100193732B1 (en) * 1996-11-28 1999-06-15 윤종용 Parallel finite field multiplier
KR20010068349A (en) * 2000-01-05 2001-07-23 김효근 Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture

Also Published As

Publication number Publication date
KR20020093554A (en) 2002-12-16

Similar Documents

Publication Publication Date Title
EP1449063B1 (en) Galois field multiplier system
Ding et al. High-speed ECC processor over NIST prime fields applied with Toom–Cook multiplication
EP2261795B1 (en) Circuits and methods for performing exponentiation and inversion of finite field elements
KR950015182B1 (en) Galois field multiplying circuit
US4994995A (en) Bit-serial division method and apparatus
US20040220988A1 (en) Parameter generation for interleavers
Dai et al. Area-time efficient architecture of FFT-based montgomery multiplication
KR100950581B1 (en) Bit-parallel multiplier and multiplying method for finite field using redundant representation
JP2803601B2 (en) Inversion circuit of finite field element
Piestrak Design of squarers modulo A with low-level pipelining
Elango et al. Hardware implementation of residue multipliers based signed RNS processor for cryptosystems
KR100395511B1 (en) Method of construction of parallel In-Output multiplier over Galois Field
Piestrak Design of multi-residue generators using shared logic
EP1504338B1 (en) "emod" a fast modulus calculation for computer systems
JP2004166274A (en) Method and apparatus for basis conversion in finite field
KR100946256B1 (en) Scalable Dual-Field Montgomery Multiplier On Dual Field Using Multi-Precision Carry Save Adder
Tanaka et al. Novel binary signed-digit addition algorithm for FPGA implementation
KR20010068349A (en) Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture
Hagglund et al. A polynomial-based division algorithm
TWI798640B (en) Constant multiplier
US20230168863A1 (en) Modular multiplication circuit and corresponding modular multiplication method
Pitchika et al. Fast Base Extension using Single Redundant Modulus in a Residue Number System
KR100519775B1 (en) Method and apparatus for squaring operation in finite field
Madenda RESEARCH REPORT EMBEDDED SYSTEM PROJECT
Priyadharshini et al. Retracted: Implementation of Distributed Arithmetic based Sum-of-Products

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20060804

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee