KR101837750B1 - Parallel multipliier apparatus and method over finite field - Google Patents
Parallel multipliier apparatus and method over finite field Download PDFInfo
- Publication number
- KR101837750B1 KR101837750B1 KR1020170012310A KR20170012310A KR101837750B1 KR 101837750 B1 KR101837750 B1 KR 101837750B1 KR 1020170012310 A KR1020170012310 A KR 1020170012310A KR 20170012310 A KR20170012310 A KR 20170012310A KR 101837750 B1 KR101837750 B1 KR 101837750B1
- Authority
- KR
- South Korea
- Prior art keywords
- polynomial
- vector
- rti
- operation unit
- multiplication
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/40—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay
- G06F7/44—Multiplying; Dividing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Electromagnetism (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Error Detection And Correction (AREA)
- Complex Calculations (AREA)
Abstract
Description
본 발명은 유한체 병렬 곱셈 장치 및 방법에 관한 것으로서, 보다 상세하게는 이차 미만의 공간 복잡도(subquadratic space complexity)를 갖는 다항식의 곱셈 연산 기법에 기반한 유한체 병렬 곱셈 장치 및 방법에 관한 것이다.The present invention relates to a finite-field parallel multiplication apparatus and method, and more particularly, to a finite field parallel multiplication apparatus and method based on a polynomial multiplication operation technique having subquadratic space complexity.
유한체상에서의 연산(arithmetic operation)은 코딩 이론(coding theory)과 타원 곡선 암호(elliptic curve cryptography) 등 여러 응용분야에 필요하다. 그 중 곱셈 연산(field multiplication)은 가장 중요하고 핵심이 되는 연산이지만, 연산 수행이 복잡하고 비용이 비싸기 때문에 효율적인 곱셈 연산 기법이 요구되어 왔다. Arithmetic operations on finite fields are required for various applications such as coding theory and elliptic curve cryptography. Among them, field multiplication is the most important and important operation, but since the operation is complicated and expensive, efficient multiplication operation technique has been required.
를 차수(degree) 인 에 있는 기약 다항식(irreducible polynomial)이라 하자. 유한체 은 와 동형(isomorphism)이므로, 다시 말해 이므로, 유한체 의 임의의 원소 는 다음과 같이 차수가 보다 작은 다항식(polynomial) 형태 로 표현이 가능하다. 여기서 이다. 이때, 집합 을 상에서 의 다항식 기저(polynomial basis)라고 한다. 다항식 기저는 유한체의 원소를 표현할 때 가장 널리 쓰이는 기저 중 하나이다. 다항식 기저에 의해 의 두 원소 와 가 주어졌을 때 (여기서, 이다), 두 원소의 곱 는 다음 두 단계에 의하여 계산 가능하다. (Degree) sign Let's call it an irreducible polynomial. Finite element silver And isomorphism, in other words, Therefore, Any element of The order is Smaller polynomial form Can be expressed as. here to be. At this time, of On Is called the polynomial basis. A polynomial basis is one of the most widely used bases for expressing elements of finite fields. By polynomial basis Two elements of Wow When given (here, ), The product of the two elements Can be calculated by the following two steps.
제 1단계에서는 와 를 다항식으로 간주하고 다항식의 곱셈 을 수행하여 를 얻는다.In the first step Wow Consider the polynomial as a polynomial multiplication By doing .
제 2단계에서는 상기 생성된 다항식 에 대해 기약 다항식 에 의한 모듈러(modular) 감산 연산을 하여, 두 원소의 곱 를 얻는다.In the second step, the generated polynomial For example, Modulo subtraction operation with the product of the two elements .
따라서 유한체의 곱셈 연산의 복잡도는 위의 두 단계의 복잡도에 의하여 결정된다. 제 1단계를 수행할 때 필요한 공간 복잡도(space complexity), 즉 상의 필요한 XOR 게이트(gate) 또는 AND 게이트 수는 으로 알려져 있다. 제 2단계에 대한 비용은 기약 다항식 의 항의 개수에 의해 영향을 받는다. 비특허문헌 1 [G. Seroussi, “Table of low-weight binary irreducible polynomials”HP Labs, Technical Reports HPL-98-135, 1998]에 의하면, 우리가 실제 다루는 유한체의 경우 유한체 을 정의하는 기약 다항식 으로 삼항 다항식(trinomial)이나 오항 다항식(pentanomial)을 선택할 수 있다. 이러한 삼항 또는 오항 다항식에 의한 모듈러 감산 연산은 상에서 필요한 게이트의 수가 단지 으로 제1 단계와 비교하여 매우 적다. 따라서 효율적인 유한체의 곱셈기를 얻기 위해 제1 단계, 즉 두 다항식의 곱셈 연산에 대한 복잡도(complexity)를 줄이고자 하는 연구가 많이 이루어지고 있다. Therefore, the complexity of the finite field multiplication operation is determined by the complexity of the above two steps. The space complexity required when performing the first step, that is, The number of required XOR gates or AND gates on the . The cost for the second step is the exponential polynomial And the number of terms in Non-Patent Document 1 [G. According to Seroussi, "Table of low-weight binary irreducible polynomials", HP Labs, Technical Reports HPL-98-135, 1998, Quot; polynomial < / RTI > You can choose trinomials or pentanomials. This modulo subtraction operation by the ternary or five-polynomial equation Lt; RTI ID = 0.0 > Which is very small compared to the first step. Therefore, to obtain an efficient finite field multiplier, many studies have been conducted to reduce the complexity of the first step, that is, the multiplication of two polynomials.
실제 응용에 쓰이는 유한체 의 크기, 즉 의 크기는 매우 크므로, 곱셈 연산을 수행할 때 필요한 공간 복잡도가 이 되는 이차 미만의 공간 복잡도(subquadratic space complexity)를 가진 병렬 곱셈기의 연구가 특히 관심을 받아왔다.Finite element used in real application The size of Is very large, so the space complexity required when performing the multiplication operation is The study of parallel multipliers with subquadratic space complexity has been of particular interest.
그러나 유한체 의 크기는 계속 커지는 추세인 반면, 스마트 기기의 확산으로 인해 연산의 경량화가 요구되는 바, 더욱 효율적인 이차 미만의 공간 복잡도를 갖는 병렬 곱셈기의 개발이 요구되고 있다.However, The size of the device is continuously increasing. On the other hand, it is required to reduce the weight of the calculation due to the diffusion of the smart device. Therefore, it is required to develop a parallel multiplier having less efficient secondary complexity.
본 발명의 배경기술은 대한민국 공개특허공보 10-2011-0027176호(2011.03.16)의 '유한체의 원소간 비트-병렬 곱셈방법 및 장치'에 개시되어 있다.The background art of the present invention is disclosed in Korean Patent Application Publication No. 10-2011-0027176 (Mar. 16, 2011) entitled " Method and apparatus for inter-element bit-parallel multiplication of finite fields. &Quot;
본 발명은 전술한 문제점을 개선하기 위해 창안된 것으로서, 본 발명의 일 측면에 따른 목적은 임의의 유한체 상에서 보다 효율적인 이차 미만의 공간 복잡도를 갖는 유한체 병렬 곱셈 장치 및 방법을 제공하는 것이다. SUMMARY OF THE INVENTION The present invention has been made to overcome the above problems, and an object of one aspect of the present invention is to provide an arbitrary finite element The present invention provides a finite-field parallel multiplication apparatus and method that have a spatial complexity that is less efficient than the second-order complexity.
본 발명의 일 측면에 따른 유한체 병렬 곱셈 장치는 차수 인 두 다항식 와 으로부터 각 성분(component)의 개수가 인 벡터를 생성하는 제1 벡터 연산부; 상기 제1 벡터 연산부에서 생성된 벡터들을 이용하여 각 성분의 개수가 인 벡터를 생성하는 제2 벡터 연산부; 상기 제2 벡터 연산부에서 생성된 벡터들을 이용하여 다항식 를 연산하는 제1 다항식 연산부; 상기 제2 벡터 연산부에서 생성된 벡터들을 이용하여 다항식 를 연산하는 제2 다항식 연산부 및; 상기 제1 다항식 연산부와 상기 제2 다항식 연산부에 의해 각각 연산된 다항식 및 다항식 으로부터 두 다항식 A와 B의 곱 를 출력하는 출력부를 포함하는 것을 특징으로 한다. A finite field parallel multiplier according to an aspect of the present invention includes: Two polynomials Wow The number of components is A first vector operation unit for generating a vector vector; And the number of each component is calculated using the vectors generated in the first vector computing unit A second vector operation unit for generating a vector vector; And a second vector computing unit A first polynomial operation unit operable to: And a second vector computing unit A second polynomial operation unit operable to: Wherein the first polynomial calculation unit and the second polynomial calculation unit calculate a polynomial And polynomial The product of two polynomials A and B And an output unit for outputting the output signal.
본 발명에서, 상기 제1 벡터 연산부는 다항식 와 으로부터 차수가 인 네 개의 다항식 을 입력받아 각 성분의 개수가 각 개의 성분(component)을 갖는 벡터 , , , 을 생성하는 것을 특징으로 한다. In the present invention, the first vector computing unit may be a polynomial Wow Order from Four polynomials And the number of each component is A vector having < RTI ID = 0.0 > , , , .
본 발명에서, 상기 제2 벡터 연산부는 상기 제1 벡터 연산부에서 연산된 벡터들을 입력받아 성분끼리의 곱 연산을 통해 인 에 대해 벡터들 을 생성하는 것을 특징으로 한다. In the present invention, the second vector operation unit receives the vectors calculated in the first vector operation unit and performs a product operation between the components sign / RTI > .
본 발명에서, 상기 제1 다항식 연산부는 상기 제2 벡터 연산부에 의해 연산된 벡터들 중 과 을 이용하여 다항식 를 계산하는 것을 특징으로 한다. In the present invention, the first polynomial calculator may calculate the first polynomial of the vectors calculated by the second vector calculator and Lt; RTI ID = 0.0 > Is calculated.
본 발명에서, 상기 제1 다항식 연산부는 과 의 합 을 계산하고, 벡터를 이용하여 다항식 을 계산한 후, 다항식 를 쉬프트(shift)하여 다항식 를 출력하는 것을 특징으로 한다. In the present invention, the first polynomial operation unit and Sum of Lt; / RTI > Using the vector, , The polynomial equation To obtain a polynomial < RTI ID = 0.0 > And outputs the output signal.
본 발명에서, 상기 제2 다항식 연산부는 상기 제2 벡터 연산부에 의해 연산된 벡터들 중 과 을 이용하여 다항식 를 연산하는 것을 특징으로 한다. In the present invention, the second polynomial calculator may calculate the second polynomial of the vectors calculated by the second vector calculator and Lt; RTI ID = 0.0 > Is calculated.
본 발명에서, 상기 제2 다항식 연산부는 상기 제2 벡터 연산부에 의해 연산된 과 을 입력받아 를 계산하고, 계산된 을 이용하여 다항식 을 계산하며, 계산된 변수 에 대한 다항식 을 입력받아 다항식의 덧셈을 수행하여 와 를 생성한 후, 다항식 와 의 계수를 상호 배치(interleaving)함으로써 다항식 를 출력하는 것을 특징으로 한다. In the present invention, the second polynomial calculator may calculate the second polynomial calculator and Take input And calculates Lt; RTI ID = 0.0 > , And the calculated variable Polynomial for And the addition of the polynomial is performed Wow And then, Wow By interleaving the coefficients of the polynomial < RTI ID = 0.0 > And outputs the output signal.
본 발명에서, 상기 출력부에 의해 연산된 다항식 에 대해 다항식 에 의한 모듈러(modular) 감산 연산을 하여 두 원소의 곱 를 얻는 모듈러 감산부를 더 포함하는 것을 특징으로 하는 유한체 병렬 곱셈 장치. In the present invention, the polynomial calculated by the output unit Polynomial for And the product of the two elements And a modulo subtracter operable to derive a finite field parallel multiplier.
본 발명의 일 측면에 따른 유한체 병렬 곱셈 방법은 제1 벡터 연산부가 차수 인 다항식 와 으로부터 차수가 인 네 개의 다항식 을 입력받아 각 성분의 개수가 인 벡터 , , , 를 생성하는 단계; 제2 벡터 연산부가 상기 제1 벡터 연산부에서 생성된 벡터들을 이용하여 각 성분의 개수가 인 벡터를 생성하는 단계; 제1 다항식 연산부가 상기 제2 벡터 연산부에서 생성된 벡터 중 과 을 이용하여 다항식 를 연산하는 단계; 제2 다항식 연산부가 상기 제2 벡터 연산부에서 생성된 벡터 중 과 을 이용하여 다항식 를 연산하는 단계; 및 출력부가 상기 제1 다항식 연산부와 상기 제2 다항식 연산부에 의해 각각 연산된 다항식 및 다항식 으로부터 두 다항식 A와 B의 곱 를 출력하는 단계를 포함하는 것을 특징으로 한다. A finite field parallel multiplication method according to an aspect of the present invention includes: In polynomial Wow Order from Four polynomials And the number of each component is In vector , , , ≪ / RTI > The second vector operation unit uses the vectors generated in the first vector operation unit, Generating an in-vector; The first polynomial operation unit may be a vector generated by the second vector operation unit and Lt; RTI ID = 0.0 > ; And the second polynomial operation unit is a vector generated in the second vector operation unit and Lt; RTI ID = 0.0 > ; And an output unit for outputting a polynomial equation obtained by the first polynomial calculator and the second polynomial calculator, And polynomial The product of two polynomials A and B And outputting the output signal.
본 발명에서, 상기 제2 벡터 연산부는 상기 제1 벡터 연산부에서 연산된 벡터들을 입력받아 성분끼리의 곱 연산을 통해 인 에 대해 벡터들 을 생성하는 것을 특징으로 한다. In the present invention, the second vector operation unit receives the vectors calculated in the first vector operation unit and performs a product operation between the components sign / RTI > .
본 발명에서, 상기 제1 다항식 연산부는 과 의 합 을 계산하고, 벡터를 입력받아 다항식 을 계산한 후, 다항식 를 쉬프트(shift)하여 다항식 를 출력하는 것을 특징으로 한다. In the present invention, the first polynomial operation unit and Sum of Lt; / RTI > By taking the vector as a polynomial , The polynomial equation To obtain a polynomial < RTI ID = 0.0 > And outputs the output signal.
본 발명에서, 상기 제2 다항식 연산부는 상기 제2 벡터 연산부에 의해 연산된 과 을 입력받아 를 계산하고, 계산된 을 이용하여 다항식 을 계산하며, 계산된 변수 에 대한 다항식 을 입력받아 다항식의 덧셈을 수행하여 와 를 생성한 후, 다항식 와 의 계수를 상호 배치(interleaving)하여 다항식 를 출력하는 것을 특징으로 한다. In the present invention, the second polynomial calculator may calculate the second polynomial calculator and Take input And calculates Lt; RTI ID = 0.0 > , And the calculated variable Polynomial for And the addition of the polynomial is performed Wow And then, Wow By interleaving the coefficients of the polynomial < RTI ID = 0.0 > And outputs the output signal.
본 발명에서, 모듈러 감산부가 상기 출력부에 의해 연산된 다항식 에 대해 다항식 에 의한 모듈러(modular) 감산 연산을 하여 두 원소의 곱 를 얻는 단계를 더 포함하는 것을 특징으로 한다. In the present invention, the modulo subtractor multiplies the polynomial Polynomial for And the product of the two elements The method comprising the steps of:
본 발명의 일 측면에 따른 유한체 병렬 곱셈 장치 및 방법은 차수가 인 두 다항식의 곱셈 연산을 복잡도면에서 보다 효율적으로 수행할 수 있도록 한다. A finite field parallel multiplier and method according to an aspect of the present invention includes: So that the multiplication operation of the two polynomials can be performed more efficiently in the complex drawings.
또한, 본 발명의 일 측면에 따른 유한체 병렬 곱셈 장치 및 방법은 차수가 인 두 다항식의 곱셈 연산을 기반으로 하는 모든 하드웨어 설계에 적용될 수 있으며, 유한체 상의 곱셈 연산을 효율적으로 수행할 수 있도록 한다.In addition, a finite-field parallel multiplier and method according to an aspect of the present invention includes: Can be applied to all hardware designs based on multiplication of two polynomials, So that the multiplication operation can be performed efficiently.
도 1은 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 장치의 블럭 구성도이다.
도 2는 본 발명의 일 실시예에 따른 두 다항식의 한체 병렬 곱셈 방법의 순서도이다.
도 3은 도 2의 단계 S400을 보다 상세하게 도시한 도면이다.1 is a block diagram of a finite field parallel multiplier according to an embodiment of the present invention.
2 is a flowchart of a hue parallel multiplication method of two polynomials according to an embodiment of the present invention.
Figure 3 is a more detailed illustration of step S400 of Figure 2.
이하에서는 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 장치 및 방법을 첨부된 도면들을 참조하여 상세하게 설명한다. 이러한 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 이용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야할 것이다. Hereinafter, a finite-field parallel multiplier and method according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings. In this process, the thicknesses of the lines and the sizes of the components shown in the drawings may be exaggerated for clarity and convenience of explanation. Further, the terms described below are defined in consideration of the functions of the present invention, which may vary depending on the user, the intention or custom of the operator. Therefore, definitions of these terms should be made based on the contents throughout this specification.
유한체 이 기약 다항식 에 의해 정의된다고 하면, 이고, 유한체 의 임의의 두 원소 와 는 다항식 기저 를 이용하여 다음과 같이 표현된다. 여기서 이다.Finite element This irreducible polynomial , ≪ / RTI > , And a finite element Any two elements of Wow Is a polynomial basis Is expressed as follows. here to be.
두 원소들 와 의 곱 는 다음 두 단계에 의하여 계산된다. Two elements Wow Product of Is calculated by the following two steps.
첫 번째 단계에서는 와 를 다항식으로 간주하고 다항식의 곱셈 을 수행하여 를 얻는다.In the first step Wow Consider the polynomial as a polynomial multiplication By doing .
두 번째 단계에서는 첫 번째 단계에서 생성된 다항식 를 다항식 에 의한 모듈러(modular) 감산 연산을 하여, 두 원소의 곱 를 얻는다.In the second step, the polynomial generated in the first step Is a polynomial Modulo subtraction operation with the product of the two elements .
먼저, 두 번째 단계의 모듈러 감산 연산의 비용을 고려한다. 여기서, 유한체 을 정의하는 기약 다항식 으로 삼항 다항식 또는 오항 다항식이 선택될 수 있다. 예를 들어, 가 삼항 다항식 이라고 가정하자. 가 기약이면 다항식 도 기약이 되므로, 의 값이 을 만족한다고 가정할 수 있다. 이 경우, 에 의한 모듈러 감산 연산은 다음과 같이 수행된다.First, the cost of the modulo subtraction operation of the second stage is considered. Here, Quot; polynomial < / RTI > A ternary polynomial or a polynomial may be selected. E.g, Is a ternary polynomial . Lt; RTI ID = 0.0 > polynomial & Also, The value of . ≪ / RTI > in this case, The modulo subtracting operation by Eq.
상기한 모듈러 감산 연산은 XOR 게이트 수와 시간 지연이 필요하다. XOR와 AND 게이트의 시간지연은 각각 로 표기된다. The modulo subtraction operation described above The number of XOR gates Time delay is required. The time delays of the XOR and AND gates are Respectively.
상기와 같이 두 번째 단계는 간단하게 수행되며, 두 번째 단계의 복잡도는 첫 번째 단계와 비교할 때 매우 낮다. 따라서 곱셈 연산의 효율성은 첫 번째 단계를 얼마나 효율적으로 수행할 수 있는지에 의존한다. 그러므로 첫 번째 단계에 초점을 맞추어 그의 효율적인 수행방법을 제안하고자 한다. As described above, the second step is simply performed, and the complexity of the second step is very low as compared with the first step. Therefore, the efficiency of the multiplication operation depends on how efficiently the first step can be performed. Therefore, we focus on the first step and propose its efficient method.
이를 위해, 앞으로는 두 원소 와 를 다항식으로 간주한다. To this end, Wow Is regarded as a polynomial.
도 1은 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 장치의 블럭 구성도이다.1 is a block diagram of a finite field parallel multiplier according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 장치는 제1 벡터 연산부(10), 제2 벡터 연산부(20), 제1 다항식 연산부(30), 제2 다항식 연산부(40), 출력부(50), 및 모듈러 감산부(60)를 포함한다.1, a finite field parallel multiplier according to an embodiment of the present invention includes a first
상기한 첫 번째 단계는 제1 벡터 연산부(10), 제2 벡터 연산부(20), 제1 다항식 연산부(30), 제2 다항식 연산부(40) 및 출력부(50)에서 수행되며, 두 번째 단계는 모듈러 감산부(60)에서 수행된다. The first step is performed in the first
제1 벡터 연산부(10)는 차수 인 두 다항식 와 으로부터 차수가 인 네 개의 다항식 을 입력받아 각 성분의 개수가 인 네 개의 벡터를 생성한다.The
제2 벡터 연산부(20)는 제1 벡터 연산부(10)에서 생성된 네 개의 벡터들을 입력받아 성분끼리의 곱 연산을 통해 각 성분의 개수가 인 네 개의 새로운 벡터를 생성한다. The second
제1 다항식 연산부(30)는 제2 벡터 연산부(20)의 벡터들을 입력받아, 이들 벡터를 이용하여 다항식 를 계산한다.The first
제2 다항식 연산부(40)는 제2 벡터 연산부(20)의 벡터들을 입력받아, 이들 벡터를 이용하여 다항식 를 계산한다.The second
출력부(50)는 제1 다항식 연산부(30)와 제2 다항식 연산부(40)에 의해 각각 계산된 다항식들 와 를 입력받아 두 다항식의 곱 를 출력한다.The
이하 도 2 내지 도 3 을 참조하여 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 방법을 상세하게 설명한다. Hereinafter, a finite field parallel multiplication method according to an embodiment of the present invention will be described in detail with reference to FIG. 2 to FIG.
도 2는 본 발명의 일 실시예에 따른 두 다항식의 유한체 병렬 곱셈 방법의 순서도이고, 도 3은 도 2의 단계 S400을 보다 상세하게 도시한 도면이다.FIG. 2 is a flowchart of a finite field parallel multiplication method of two polynomials according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating step 400 of FIG. 2 in more detail.
유한체 의 두 원소 와 는 차수 인 다항식으로 간주되고, 각각 다음과 같이 두 부분으로 분리된다. Finite element Two elements of Wow Is an order Are regarded as polynomials, and are separated into two parts as follows.
, ,
여기서, 다항식 은 변수(variable) 에 관해 차수가 인 다항식이다. Here, Is a variable, About the order Is a polynomial.
도 2 를 참조하면, 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 방법은 제1 벡터 연산부(10)가 차수 인 두 다항식 와 로부터 차수 인 다항식 을 입력받아 각각 개의 성분을 갖는 벡터들 , , , 을 생성하는 단계(S100), 제2 벡터 연산부(20)가 상기 생성된 벡터들 , , , 을 입력받아 각 성분끼리의 곱을 수행하여, 인 에 대해 벡터들 를 생성하는 단계(S200), 제1 다항식 연산부(30)가 상기 생성된 벡터들 중 과 을 입력받고 과 을 이용하여 다항식 를 연산 및 출력하는 단계(S300), 제2 다항식 연산부(40)가 상기 생성된 벡터들 중 과 을 입력받고 과 을 이용하여 다항식 을 연산 및 출력하는 단계(S400), 및 출력부(50)가 제1 다항식 연산부(30)와 제2 다항식 연산부(40)에 의해 각각 계산된 다항식들 및 을 입력받고 다항식들 및 을 이용하여 다항식 A와 B의 곱 를 출력하는 단계(S500)를 포함한다. 2, a finite field parallel multiplication method according to an embodiment of the present invention includes a first
도 2의 각 단계를 상세히 설명하면 다음과 같다.Each step of FIG. 2 will be described in detail as follows.
먼저, 이라 가정한다 (). 이 2의 거듭제곱이 아닌 경우는 계수를 0으로 간주하여 다항식의 차수가 이라고 가정할 수 있다. Two-way split overlap 방법에 따라, 두 다항식first, ( ). If this is not a power of 2, the coefficient is regarded as 0 and the order of the polynomial is . According to the two-way split overlap method, two polynomials
를 다음과 같이 두 부분으로 분리한다. Into two parts as follows.
여기서, 다항식 은 변수 에 관해 차수가 인 다항식으로 다음과 같이 정의된다.Here, Is a variable About the order Is a polynomial expression defined as follows.
그러면, 두 다항식의 곱 는 다음과 같은 수식을 통해 얻을 수 있다.Then, the product of the two polynomials Can be obtained by the following formula.
여기서, 는 상기 다항식 을 이용하여 다음과 같이 정의된다. here, ≪ / RTI > Is defined as follows.
상기 세 개의 곱 는 를 계산한 위의 방법을 재귀적으로(recursively) 사용하여 계산된다. 상기한 two-way split overlap 방법을 이용한 다항식 곱셈 연산 수행방법은 다음과 같이 세 개의 독립된 블록들 CPF(Component polynomial formation), CM(Component multiplication), R(Reconstruction)으로 나누어 수행될 수 있다. 상기 세 블록들의 상세한 정의는 다음과 같다. The three products The Is computed recursively using the above method. The polynomial multiplication operation using the two-way split overlap method can be performed by dividing into three independent blocks CPF (component polynomial formation), CM (component multiplication) and R (reconstruction) as follows. The detailed definitions of the three blocks are as follows.
[정의 1][Definition 1]
여기서, 두 벡터에 대한 연산 는 두 벡터의 성분끼리 곱하여 새로운 벡터를 생성하는 연산이다. 그리고 는 성분의 개수가 인 벡터이다. Here, the operation on the two vectors Is an operation for multiplying the components of two vectors to generate a new vector. And The number of components is .
도 4에서는 상기 세 개의 블록들을 이용한 다항식 곱셈연산의 수행과정이 도시화된다. FIG. 4 illustrates a process of performing a polynomial multiplication operation using the three blocks.
두 다항식의 곱 를 상기 블록들을 이용하여 표현하면 다음과 같다.Product of two polynomials Is expressed using the blocks as follows.
[정리 1] [Theorem 1]
차수 인 두 다항식 와 의 곱을 라 하자. 그러면, 곱 는 다음과 같이 계산된다.Order Two polynomials Wow The product of Let's say. Then, Is calculated as follows.
각 블록들을 수행하는데 필요한 복잡도는 아래의 표 1에서 주어진다. The complexity required to perform each block is given in Table 1 below.
여기서, 은 차수가 인 두 다항식의 곱셈 연산 시 수행되는 블록*에 대한 복잡도, 즉 블록*을 실행하는데 필요한 게이트 수와 시간지연을 각각 의미한다. XOR와 AND 게이트의 시간지연은 각각 로 표기된다. 또한, CA(Component addition)블록에 대한 복잡도를 추가한다. 블록에서는 성분의 개수가 인 두 벡터 와 의 더하기(addition) 연산 을 수행한다.here, The order is The complexity of the block *, that is, the number of gates and the time delay required to execute the block *, respectively, in a multiply operation of two polynomials. The time delays of the XOR and AND gates are Respectively. It also adds complexity to the CA (Component addition) block. In the block, In two vectors Wow Addition operation .
다항식 곱셈 연산의 상기 블록들을 재조합하여 공간 복잡도를 줄이기 위해 다음 정리를 이용한다. The following theorem is used to recombine the blocks of the polynomial multiplication operation to reduce spatial complexity.
[정리 2] [Theorem 2]
성분의 개수가 인 임의의 두 벡터 와 에 대해 다음이 성립한다. If the number of ingredients is Any two vectors Wow The following holds.
위의 [정리 2]와 [정의 1]에 있는 블록들의 정의를 이용하여 다항식의 곱셈 연산 수행을 위한 블록들을 새롭게 재조합한다.The blocks for the polynomial multiplication operation are newly reorganized using the definitions of the blocks in [Theorem 2] and [Definition 1] above.
먼저, 두 다항식 의 곱 를 다음과 같이 전개 후 재배열한다.First, two polynomials Product of Are rearranged and rearranged as follows.
다항식 은 변수 에 관한 다항식이기 때문에 다항식 의 계수는 두 다항식 와 의 계수를 상호 배치(interleaving)하여 얻어진다. 이에, 두 다항식 와 를 구하고자 한다.Polynomial Is a variable Lt; RTI ID = 0.0 > polynomial < The coefficients of the two polynomials Wow By interleaving the coefficients of the matrix. Therefore, Wow .
도 2에서, 제1 벡터 연산부(10)는 다항식 를 입력받아 각 의 성분을 갖는 벡터들 , , , 을 생성한다(S100).In Fig. 2, the first
도 2에서, 제2 벡터 연산부(20)는 상기 계산된 벡터들 , , , 을 입력받아 각 성분끼리의 곱을 수행하여 인 에 대해 벡터들 을 생성한다(S200). In Fig. 2, the
다음으로, 도 2에서, 제1 다항식 연산부(30)는 상기 생성된 벡터들 중 과 을 입력받아 다항식 를 연산한다(S300). [정리 1]에 의해, 이고 이므로, [정리 2]를 이용하면 다음이 성립한다. Next, in Fig. 2, the first
도 2에서, 단계(S300)은 블록에서 두 벡터의 합 을 계산하는 과정, 블록에서 상기 계산된 벡터를 입력받아 다항식 을 계산하는 과정, 계산된 다항식 를 쉬프트(shift)함으로써 다항식 를 출력하는 과정으로 이루어진다. In Figure 2, step S300 is Sum of two vectors in a block , ≪ / RTI > In the block, By taking the vector as a polynomial , Calculating a polynomial < RTI ID = 0.0 > The polynomial < RTI ID = 0.0 > .
도 2에서, 제2 다항식 연산부(40)는 상기에서 생성된 벡터들 중 과 을 입력받아 다항식 를 출력한다(S400). [정리 1]에 의하면, , 이다. 먼저, 벡터들 과 은 다음과 같이 표현된다.In FIG. 2, the second
, ,
앞의 [정의 1]에 있는 Rn블록의 정의에 의해 다음과 같은 식을 얻는다.The following equation is obtained by the definition of R n block in [Definition 1] above.
, ,
상기 식과 [정리 2]를 사용하여 다음 식을 얻는다.Using the above equation and [Theorem 2], the following equation is obtained.
여기서, 이다.here, to be.
그리고 은 변수 에 대해 차수 인 다항식이다. 따라서 다항식 의 변수 에 대한 계수는 다항식 와 의 계수를 상호 배치함으로써 얻을 수 있다. 도 2의 단계(S400)은 다음과 같이 수행된다.And Is a variable About Is a polynomial. Therefore, Variable of The coefficients for < RTI ID = 0.0 > Wow By mutually arranging the coefficients of the respective coefficients. Step S400 of FIG. 2 is performed as follows.
도 2에서 단계(S400)는 Blocks에서 벡터들 과 을 입력받아 상기 수식에 있는 벡터들 를 계산하는 과정, Blocks에서 상기 계산된 벡터들 을 입력받아 4개의 Blocks을 수행하여 다항식 을 계산하는 과정, Addition Blocks에서 상기 계산된 변수 에 대한 다항식 을 입력받아 다항식의 덧셈을 수행하여 와 를 생성하는 과정, 및 Interleaving 블록에서 다항식 와 의 계수를 상호 배치함으로써 다항식 를 출력하는 과정을 포함한다. In Figure 2, step S400 In Blocks, vectors and Lt; RTI ID = 0.0 > vectors < / RTI & , ≪ / RTI > In blocks < RTI ID = 0.0 > To receive four Blocks are performed to determine the polynomial , In the Addition Blocks, the calculated variable Polynomial for And the addition of the polynomial is performed Wow And in the interleaving block, Wow By mutually arranging the coefficients of the polynomial .
도 3에서는 앞서 설명한 도 2의 단계(S400)에 있는 Blocks, Blocks, 및 Addition Blocks이 보다 상세하게 도시되었다. 3, in step S400 of FIG. 2 described above, Blocks, Blocks, and Addition Blocks are shown in more detail.
도 2의 출력부(50)는 제1 다항식 연산부(30)와 제2 다항식 연산부(40)에서 각각 계산된 두 다항식 와 를 입력받아 두 다항식의 계수를 상호 배치하여 다항식 A와 B의 곱 를 출력한다(S500).The
다음으로, 도 2에 따라 수행된 첫 번째 단계, 즉 두 다항식의 곱셈 연산에 대한 복잡도(complexity)를 설명한다. Next, the complexity of the first step performed according to FIG. 2, that is, the multiplication of two polynomials, is described.
도 2의 단계(S100)는 4개의 블록들을 병렬적으로 수행하므로 XOR 게이트 수, 시간지연의 복잡도가 필요하다. Step S100 of FIG. 2 includes four Blocks are executed in parallel XOR gate count, Complexity of time delay is required.
도 2의 단계(S200)는 4개의 블록들을 병렬적으로 수행하므로 AND 게이트 수, 시간지연의 복잡도가 요구된다. Step S200 of FIG. 2 includes four Blocks are executed in parallel AND gate count, Complexity of time delay is required.
도 2의 단계(S300)는 블록 수행 후 블록을 수행한다. 이는 XOR 게이트 수, 시간지연이 필요하다. 마지막 쉬프트 블록은 하드웨어에서 비용없이 수행될 수 있다. Step S300 of FIG. After block execution Block. this is XOR gate count, Time delay is required. The last shift block can be performed in hardware without cost.
도 2의 단계(S400)에 대한 복잡도는 그 과정을 상세하게 도시화한 도 3을 통해 더욱 쉽게 알 수 있다. The complexity of step S400 of FIG. 2 can be more easily understood by referring to FIG. 3 which shows the process in detail.
도 3의 Blocks은 XOR 게이트 수, 시간지연이 필요하다. 다음 Blocks에서는 4개의 블록들이 병렬적으로 수행되므로 그의 복잡도는 XOR 게이트 수, 시간지연이다. Addition Blocks에서는 변수 에 대해 차수가 인 다항식들의 두 덧셈 와 이 병렬적으로 수행되므로 XOR 게이트 수, 시간지연이 필요하다. 도 3에 있는 쉬프트 블록과 상호 배치 블록의 수행은 하드웨어에서 비용을 발생하지 않는다. 그러므로 도 2의 단계(S400)의 복잡도는 XOR 게이트 수, 시간지연이라는 것을 알 수 있다. 3 Blocks XOR gate count, Time delay is required. next In Blocks, four Since the blocks are performed in parallel, their complexity is XOR gate count, Time delay. Addition Blocks About Two additions of polynomials Wow Is performed in parallel XOR gate count, Time delay is required. Implementation of the shift blocks and interleaving blocks in FIG. 3 does not incur cost in hardware. Therefore, the complexity of step S400 of FIG. XOR gate count, Time delay.
마지막으로 도 2의 (S500)의 상호 배치 블록은 비용없이 수행된다. Finally, the interleaving block of (S500) of Figure 2 is performed without cost.
따라서 도 2에 따라 수행된 첫 번째 단계, 즉 다항식의 곱셈 를 계산하는데 필요한 복잡도는 앞의 [표 1]를 이용하면 다음과 같다.Thus, the first step performed according to FIG. 2, i.e., the multiplication of the polynomial The complexity required to calculate the complexity is given by [Table 1].
XOR 게이트 수Number of XOR gates
AND 게이트 수 및AND gate count And
총 시간복잡도Total time complexity
이다. to be.
다음의 [표 2]는 첫 번째 단계, 즉 차수 인 두 다항식의 기존 곱셈 연산 방법들과 본 발명의 도 2의 실시 예에 따른 연산 방법의 복잡도들을 비교한다. [표 2]에서 알 수 있듯이 본 발명의 실시 예에 따른 연산 방법은 비교예2([H. Fan, J. Sun, M. Gu, and K.-Y. Lam, “Karatsuba-Ofman polynomial multiplication algorithms,”IET Information Security, vol. 4, pp. 8-14, 2010]), 및 비교예3([M. Cenk, M.A. Hasan, and C. Negre, “subquadratic space complexity binary polynomial multipliers based on block recombination,”IEEE Trans. Computers, vol. 63, no. 9, pp. 2273-2287, 2014])에 비해 낮은 공간 복잡도를 가진다. The following [Table 2] shows the first step, And the complexity of the operation method according to the embodiment of FIG. 2 of the present invention are compared with each other. As can be seen from Table 2, the calculation method according to the embodiment of the present invention is similar to that of Comparative Example 2 (H. Fan, J. Sun, M. Gu, and K.-Y. Lam, Karatsuba-Ofman polynomial multiplication algorithms (IET Information Security, vol. 4, pp. 8-14, 2010) and Comparative Example 3 (M. Cenk, MA Hasan, and C. Negre, "Subquadratic space complexity binary polynomial multiplier based on block recombination, "IEEE Trans. Computers, vol. 63, no. 9, pp. 2273-2287, 2014).
이와 같이 본 발명의 일 실시예에 따른 유한체 병렬 곱셈 장치 및 방법은 차수가 인 두 다항식의 곱셈 연산을 복잡도면에서 보다 효율적으로 수행할 수 있도록 한다. As described above, the finite-field parallel multiplier and method according to an embodiment of the present invention are characterized in that the order So that the multiplication operation of the two polynomials can be performed more efficiently in the complex drawings.
또한, 본 발명의 일 측면에 따른 유한체 병렬 곱셈 장치 및 방법은 이를 기반으로 하는 모든 하드웨어 설계에 적용될 수 있으며 특히, 이를 이용한 유한체 상의 곱셈 연산을 효율적으로 수행할 수 있도록 한다.In addition, the finite field parallel multiplier and method according to an aspect of the present invention can be applied to all hardware designs based on the finite field parallel multiplier, and in particular, So that the multiplication operation can be performed efficiently.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며 당해 기술이 속하는 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의하여 정해져야할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of limitation, I will understand. Accordingly, the true scope of the present invention should be determined by the following claims.
10: 제1 벡터 연산부
20: 제2 벡터 연산부
30: 제1 다항식 연산부
40: 제2 다항식 연산부
50: 출력부
60: 모듈러 감산부10: first vector computing unit
20: second vector operation unit
30: first polynomial operation unit
40: second polynomial operation unit
50: Output section
60: modular subtractor
Claims (13)
상기 제1 벡터 연산부에서 생성된 벡터들을 이용하여 각 성분의 개수가 인 벡터를 생성하는 제2 벡터 연산부;
상기 제2 벡터 연산부에서 생성된 벡터들을 이용하여 다항식 를 연산하는 제1 다항식 연산부;
상기 제2 벡터 연산부에서 생성된 벡터들을 이용하여 다항식 를 연산하는 제2 다항식 연산부 및;
상기 제1 다항식 연산부와 상기 제2 다항식 연산부에 의해 각각 연산된 다항식 및 다항식 으로부터 두 다항식 A와 B의 곱 를 출력하는 출력부를 포함하는 유한체 병렬 곱셈 장치.
Order Two polynomials Wow ≪ / RTI > A first vector operation unit for generating a vector vector;
And the number of each component is calculated using the vectors generated in the first vector computing unit A second vector operation unit for generating a vector vector;
And a second vector computing unit A first polynomial operation unit operable to:
And a second vector computing unit A second polynomial operation unit operable to:
Wherein the first polynomial calculation unit and the second polynomial calculation unit calculate a polynomial And polynomial The product of two polynomials A and B And an output unit for outputting the output of the finite-field parallel multiplier.
2. The apparatus according to claim 1, Wow Order from Four polynomials And the number of each component is A vector having < RTI ID = 0.0 > , , , And outputs the result of the multiplication.
[2] The apparatus of claim 1, wherein the second vector operation unit receives vectors calculated in the first vector operation unit, sign / RTI > And outputs the result of the multiplication.
2. The apparatus of claim 1, wherein the first polynomial operation unit comprises: and Lt; RTI ID = 0.0 > And a second multiplier for multiplying the first multiplier and the second multiplier.
5. The apparatus of claim 4, wherein the first polynomial operation unit and Sum of Lt; / RTI > Using the vector, , The polynomial equation To obtain a polynomial < RTI ID = 0.0 > And outputs the result of the multiplication.
The apparatus of claim 1, wherein the second polynomial calculator comprises: and Lt; RTI ID = 0.0 > To-parallel multiplier.
7. The apparatus of claim 6, wherein the second polynomial calculator comprises: and Take input And calculates Lt; RTI ID = 0.0 > , And the calculated variable Polynomial for And the addition of the polynomial is performed Wow And then, Wow By interleaving the coefficients of the polynomial < RTI ID = 0.0 > And outputs the result of the multiplication.
2. The apparatus of claim 1, wherein the polynomial < RTI ID = 0.0 > Polynomial for And the product of the two elements And a modulo subtracter operable to derive a finite field parallel multiplier.
제2 벡터 연산부가 상기 제1 벡터 연산부에서 생성된 벡터들을 이용하여 각 성분의 개수가 인 벡터를 생성하는 단계;
제1 다항식 연산부가 상기 제2 벡터 연산부에서 생성된 벡터 중 과 을 이용하여 다항식 를 연산하는 단계;
제2 다항식 연산부가 상기 제2 벡터 연산부에서 생성된 벡터 중 과 을 이용하여 다항식 를 연산하는 단계; 및
출력부가 상기 제1 다항식 연산부와 상기 제2 다항식 연산부에 의해 각각 연산된 다항식 및 다항식 으로부터 두 다항식 A와 B의 곱 를 출력하는 단계를 포함하는 유한체 병렬 곱셈 방법.
The first vector operation unit In polynomial Wow Order from Four polynomials And the number of each component is In vector , , , ≪ / RTI >
The second vector operation unit uses the vectors generated in the first vector operation unit, Generating an in-vector;
The first polynomial operation unit may be a vector generated by the second vector operation unit and Lt; RTI ID = 0.0 > ;
And the second polynomial operation unit is a vector generated in the second vector operation unit and Lt; RTI ID = 0.0 > ; And
Wherein the output unit comprises: a first polynomial calculation unit and a second polynomial calculation unit, And polynomial The product of two polynomials A and B And outputting the finite field parallel multiplication method.
[11] The apparatus of claim 9, wherein the second vector calculator receives the vectors calculated by the first vector calculator, sign / RTI > And generating a finite field parallel multiplication method.
The apparatus of claim 9, wherein the first polynomial operation unit and Sum of Lt; / RTI > By taking the vector as a polynomial , The polynomial equation To obtain a polynomial < RTI ID = 0.0 > And outputting the multiplication result.
10. The apparatus according to claim 9, wherein the second polynomial calculator comprises: and Take input And calculates Lt; RTI ID = 0.0 > , And the calculated variable Polynomial for And the addition of the polynomial is performed Wow And then, Wow By interleaving the coefficients of the polynomial < RTI ID = 0.0 > And outputting the multiplication result.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170012310A KR101837750B1 (en) | 2017-01-25 | 2017-01-25 | Parallel multipliier apparatus and method over finite field |
PCT/KR2017/013417 WO2018139750A1 (en) | 2017-01-25 | 2017-11-23 | Finite field parallel multiplier and method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170012310A KR101837750B1 (en) | 2017-01-25 | 2017-01-25 | Parallel multipliier apparatus and method over finite field |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101837750B1 true KR101837750B1 (en) | 2018-03-13 |
Family
ID=61660793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170012310A KR101837750B1 (en) | 2017-01-25 | 2017-01-25 | Parallel multipliier apparatus and method over finite field |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101837750B1 (en) |
WO (1) | WO2018139750A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020105797A1 (en) * | 2018-11-22 | 2020-05-28 | 부산대학교 산학협력단 | Polynomial expression operation optimization device, polynomial expression operation optimization method, and recording medium |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100670780B1 (en) * | 2004-10-29 | 2007-01-17 | 한국전자통신연구원 | Apparatus for hybrid multiplier in GF2^m and Method for multiplying |
KR100893695B1 (en) * | 2006-12-15 | 2009-04-17 | 영동대학교 | Architecture of fast-serial finite field multiplier |
KR100976232B1 (en) * | 2009-02-13 | 2010-08-17 | 고려대학교 산학협력단 | Fast bit-parellel polynomial multipier and method thereof |
KR101418686B1 (en) * | 2013-08-02 | 2014-07-10 | 공주대학교 산학협력단 | Subquadratic Space Complexity Parallel Multiplier and Method using type 4 Gaussian normal basis |
KR101533929B1 (en) * | 2014-06-27 | 2015-07-09 | 공주대학교 산학협력단 | Subquadratic Space Complexity Parallel Multiplier for using shifted polynomial basis, method thereof, and recording medium using this |
-
2017
- 2017-01-25 KR KR1020170012310A patent/KR101837750B1/en active IP Right Grant
- 2017-11-23 WO PCT/KR2017/013417 patent/WO2018139750A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020105797A1 (en) * | 2018-11-22 | 2020-05-28 | 부산대학교 산학협력단 | Polynomial expression operation optimization device, polynomial expression operation optimization method, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
WO2018139750A1 (en) | 2018-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
D'Andrea et al. | Explicit formulas for the multivariate resultant | |
Erdem et al. | A general digit-serial architecture for montgomery modular multiplication | |
TWI406138B (en) | Sequential galois field multiplication architecture and method | |
Hoang Ngoc Minh | On a conjecture by Pierre Cartier about a group of associators | |
Fan et al. | A survey of some recent bit-parallel GF (2n) multipliers | |
Cenk et al. | Improved three-way split formulas for binary polynomial and Toeplitz matrix vector products | |
Chinnathambi et al. | FPGA implementation of fast and area efficient CORDIC algorithm | |
Morales-Sandoval et al. | Area/performance trade-off analysis of an FPGA digit-serial GF (2m) Montgomery multiplier based on LFSR | |
JPH0728782A (en) | Operating circuit and operating method | |
KR101837750B1 (en) | Parallel multipliier apparatus and method over finite field | |
KR100950581B1 (en) | Bit-parallel multiplier and multiplying method for finite field using redundant representation | |
KR102110162B1 (en) | Parallel finite field multiplication method based on a polynomial multiplication method | |
Mirhosseini et al. | A reduced-bias approach with a lightweight hard-multiple generator to design a radix-8 modulo $2^{n}+ 1$ multiplier | |
Gustafsson et al. | Low-complexity constant coefficient matrix multiplication using a minimum spanning tree approach | |
Lima et al. | A Karatsuba-based algorithm for polynomial multiplication in Chebyshev form | |
KR101607812B1 (en) | METHOD AND APPARATUS FOR PARALLEL MULTIPLICATION CALCULATION USING DICKSON BASIS ON GF(2^n) FINITE FIELD | |
Mishra et al. | Synthesis comparison of Karatsuba multiplierusing polynomial multiplication, vedic multiplier and classical multiplier | |
Mishra et al. | Implementation of karatsuba algorithm using polynomial multiplication | |
Baldeaux et al. | Duality theory and propagation rules for higher order nets | |
JP4933405B2 (en) | Data conversion apparatus and control method thereof | |
Dilcher | Determinant Expressions for $ q $-Harmonic Congruences and Degenerate Bernoulli Numbers | |
KR20200022844A (en) | A PARALLEL GF(2^m) MULTIPLIER AND MULTIPLICATION METHOD USING GAUSSIAN NORMAL BASIS | |
Ghosh et al. | FPGA implementation of RNS adder based MAC unit in ternary value logic domain for signal processing algorithm and its performance analysis | |
Tanaka et al. | Novel binary signed-digit addition algorithm for FPGA implementation | |
Elias et al. | Area efficient fully parallel distributed arithmetic architecture for one-dimensional discrete cosine transform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |