DOI QR코드

DOI QR Code

Efficient Bit-Parallel Shifted Polynomial Basis Multipliers for All Irreducible Trinomial

삼항 기약다항식을 위한 효율적인 Shifted Polynomial Basis 비트-병렬 곱셈기

  • Published : 2009.04.30

Abstract

Finite Field multiplication operation is one of the most important operations in the finite field arithmetic. Recently, Fan and Dai introduced a Shifted Polynomial Basis(SPB) and construct a non-pipeline bit-parallel multiplier for $F_{2^n}$. In this paper, we propose a new bit-parallel shifted polynomial basis type I and type II multipliers for $F_{2^n}$ defined by an irreducible trinomial $x^{n}+x^{k}+1$. The proposed type I multiplier has more efficient the space and time complexity than the previous ones. And, proposed type II multiplier have a smaller space complexity than all previously SPB multiplier(include our type I multiplier). However, the time complexity of proposed type II is increased by 1 XOR time-delay in the worst case.

유한체 연산중에서 곱셈 연산은 중요한 연산중 하나이다. 또한, 최근에 Fan과 Dai는 이진체 곱셈기의 효율성을 개선하기 위하여 Shifted Polynomial Basis(SPB)와 이를 이용한 non-pipeline 비트-병렬 곱셈기를 제안하였다. 본 논문에서는 삼항 기약다항식 $x^{n}+x^{k}+1$에 의하여 정의된 $F_{2^n}$ 위에서의 새로운 SPB 곱셈기 type I과 type II를 제안한다. 제안하는 type I 곱셈기는 기존의 SPB 곱셈기에 비하여 시간 및 공간 복잡도면에서 모두 효율적이다. 그리고 type II 곱셈기는 제안하는 type I 곱셈기를 포함하여 기존의 모든 결과보다 작은 공간 복잡도를 가진다. 그러나 type II 곱셈기의 시간 복잡도는 n과 k에 따라 최대 1 XOR time-delay 증가한다.

Keywords

Ⅰ. 서론

유한체 연산은 부호이론, 암호알고리즘 등에서 매우 중요한 요소로 사용된다. 이러한 유한체 연산 중 곱셈 연산이 가장 중요한 비중을 차지하며 곱셈 연산의 효율성은 기저, 알고리즘, 기약다항식 등에 의하여 좌우된다. 효율적인 기약다항식을 선택하는 경우 All One Irreducible Polynomial(AOP)를 제외하고 대부분의 경우는 기약 다항식의 0이 아닌 항의 개수가 최소가 되는 경우가 가장 효율적이다. 따라서 일반적인 확장 체에서는 이항 기약다항식 (irreducible binomial) 이가장 효율적이지만 본 논문과 같이 이진체 환경에서는 이항 기약다항식이 존재하지 않으므로 삼항 기약다항식이 가장 효율적이다.

확장체 연산은 소수체 연산의 덧셈(뺄셈) 연산과 곱셈 연산에 의하여 계산된다. 본 논문에서는 이진 체에서의 곱셈 연산에 대하여 논하므로 %에서의 덧셈과 곱셈 연산은 비트 단위의 AND와 XOR 연산에 의하여 표현된다. 이는 하드웨어에서 2-입력 1-출력의 AND와 XOR 게이트(gate)이다. 또한 하드웨어에서 연산의 효율성은 시간 및 공간 복잡도에 의하여 정의되므로 본 논문에서는 공간 복잡도 계산을 위하여 AND와 XOR 게이트 수를 각각 #AND와 #XOR로 표기하고 시간 복잡도를 위하여 AND와 XOR 게이트 시간 지연(time delay)을 각각 Ta와 Tx로 표기한다.

기존에는 Polynomial Basis (PB)를 사용한 곱셈기가 대부분이었다〔1-4〕. Shifted Polynomial Basis(SPB)는〔5〕에서 처음 제안했으며 이를 이용하여 파이프라인(pipeline)이 아닌 비트-병렬 곱셈기를 제안하였다. SPB는 PB를 변형한 형태로 둘 사이의 기저 변환이 매우 간단하게 수행된다. 따라서 기존의 SPB 비트-병렬 곱셈기〔5-8〕는 기존의 PB 비트-병렬 곱셈기와 많이 비교된다.〔5〕의 SPB 삼항 기약다항식을 위한 비트-병렬 곱셈기는 기존 PB 기반 보다 시간 복잡도면에서 효율적 이 며 공간 복잡도는 동일하다. 반면〔6〕에서는〔5〕의 곱셈기보다 공간 복잡도는 25%증가하지만 시간복잡도면에서 같거나 1TX 작은 곱셈기를 제안하였다. 마지막으로〔8〕에서〔5〕의 결과를 개선하여 공간 복잡도 증가 없이〔6〕와 동일한 시간 복잡도를 가지는 곱셈기를 제안하였다.

본 논문에서는 Modified Shifted Polynomial Basis(MSPB)를 제안하고 이를 이용한 새로운 SPB 비트-병렬 곱셈 과 하드웨어 구조를 제안한다. 제안하는 곱셈기는 MSPB로의 기저 변환과 병렬 곱셈으로 구성된 두 과정이 병렬로 수행되며 입/출력은 기존 SPB에서 최적이라고 제안된 기저 akr= {<厂* I 0 M M n-1}를 가정한다. 제안하는 비트-병렬곱셈 기는 두 가지로 type I 곱셈기는 시간 복잡도가 최소가 되도록 type II 곱셈기는 공간 복잡도가 최소가 되도록 구성하였다. 따라서 type I 곱셈기는 기존 〔8〕의 곱셈기에 비하여 시간 및 공간 복잡도 모두에서 효율적이고 type II 곱셈기는 공간 복잡도는 type I 에 비하여 감소하나 n과 好베 따라 시간 복잡도의 효율성은 다양하게 나타난다. 100 < n <1,000에서 ne2k 를 만족하는 모든 삼항 기약다항식(1, 335개)으로 시간 복잡도를 조사한 결과 type I의 경우 174개 (13%)가〔8〕의 결과보다 작고 1, 161개(87%)가 같았으며, type Ⅱ의 경우 33개(2.5%)가 ⑻의 결과보다 작고 1, 188개(89%)가 같았으며 114(8.5 %) 가 기존 결과보다 1TX 증가하였다. 반면 AND 게이트와 XOR 게이트의 비용을 같다고 가정할 경우 공간복잡도 면에서는〔8〕에 비하여 type I의 경우 최대 12.5%, type Ⅱ의 경우 최대 25%의 게이트기- 감소한다.

본 논문의 구성은 다음과 같다. 2절에서는〔5〕 에서제안된 SPB와 SPB 비트-병렬 곱셈을 소개하고 이를 개선한 ⑻의 삼항 기약다항식을 위한 SPB 비트-병렬 곱셈과 복잡도를 소개한다. 3절에서는 제안하는 MSPB와 이를 이용한 새로운 SPB 비트-병렬 곱셈과 하드웨어 구조 그리고 시간 및 공간 복잡도를 기술한다. 4절에서는 제안하는 방법의 결과와 기존 결과를 비교하고 결론을 내린다.

Ⅱ. SPB 비트-병렬 곱셈

今는 s 개의 항을 가지는 기약다항식 #에 의하여 생성 되 었고, /(挤의 근을 a라 정 ■ 0

의하자. (이때 O = eo <气 <--<em_2 <n이다.) 그러면 马의 임의의 두 원소 a(a), 3(a)는

#

이며 (이때 4任_旦이다.) , 두 원소의 곱 c(a) 는 다음과 같은 두 과정에 의하여 계산된다.

1. 다항식 곱셈 : #

2. f(z)에 의한 모듈러 감산 연산:

#

따라서 곱셈 연산의 복잡도는 위의 두 과정에 의하여 결정되며, 모듈러 감산 연산 복잡도의 경우 기약다항식 /(/의 항의 개수에 의하여 영향을 받는다.

본 논문에서는 삼항 기약다항식에 적합한 SPB 곱셈 방법을 제안하므로 이후 모든 기약다항식은 중간 항이 时인 川)=3;”+:/ + 1이다. 최근 ⑹에서 弓의 원소를 SPB로 표현하는 방법이 제안되었으며 이는 다음과 같이 정의된다.

정의 1. 。를 임의의 정수라 하고 r= (rf [ 0 < EMzi-l} 를 7板의 다항식기저라 할 때, 순서집합 <妄"={疽-。丨0<指顼-1}를 /에 대한 Shifted Polynomial Basis(SPB)라 한다.

정의 1에 의하여 SPB로 표현된 7项의 임의의 두 원소 #로 표현되 며 , 두 원소의 곱은 #이며, c(a)는 다음과 같이 계산된다.

#

라 하면

#

이다. 이때 s(a)는 -2u부터 2n-2 —2。까지 항을 가지므로 —2° u —1사이의 항과 n — v~ 2n~2 —2v 사이의 항은 모듈러 감산 연산되어야 하므로 이를 각각 r_ 와 七로 표현하고 모듈러 감산이 필요 없는 항들을 r 이라하면

#

이고, f(£)=£“+抄 + 1로 广」와 J 를 모듈러 감산한 결과를 广—와 户+라 하자. 또한〔6〕에서 担의 선택시 Vek 또는 u = 1인 경우가 최적임을 보였다. 따라서 u = 인 경우를 고려하면 c(q) 三 s(a) mod/Gr)는 다음과 같다.

#(1)

Ⅲ. 제안하는 삼항 기약다항식 기반 SPB 곱셈

본 절에서는 제안하는 SPB 곱셈 방법에 대하여 기술한다. 제안하는 방법 또한 정의 1과 같이 SPB를 사용하지만 기존에 제안된〔6, 8〕방법과 다르게 곱셈을 수행한다. 제안하는 방법을 설명하기 위하여 삼항 기약다항식 了(挤=工"+抄 + 1의 환경에서 변형된 SPB 를 정의하면 다음과 같다.

정의 2. °를 임의의 정수라 하고 r= {rf 10 < / Mn-1}를 弓의 다항식기저라 할 때, 0와 (가 각각

#

이면, 순서집합 £厂”厂={泌 —이o 杉-1, 6<i< 3+n-北—1}를 I에 대한 변형된 MSPB(Mod ified Shifted Polynomial Basis)라 한다.

제안하는 곱셈 방법의 경우 입/출력은 기존의 SPB 를 사용하지만 최적 tr를 k 또는 A;-1을 사용했던 기존의 결과와 달리 u값을

#

로 정의한다. 그리고 mastrovito 곱셈을 수행하기전에 [그림 1〕과 같이 MSPB로 기저를 변환하고 곱셈을 수행하며 , 곱셈 결과는 다시 입력과 동일하게 처음의 SPB로 표현된다. 이때, [그림 1〕의 기저 변환과 비트-병렬 곱셈은 병렬로 수행된다. 상세한 곱셈 방법 및 효율성은 정의 2에서와 같이 k에 따라 几 > 2氏 n = 2k 또는 n<2k로 구분하여 설명한다. 이때 n<2fc 인 경우는 n> 아:인 경우의 곱셈 수행을 최저항부터 최고차항까지 서로 대칭이 되도록 수행하면 되므로 생략한다.

[그림 1〕제안하는 SPB 곱셈 방법

3.1 제안하는 SPB 곱셈 방법

본 절에서는 제안하는 곱셈 방법과 그에 따른 시간 및 공간 복잡도에 대하여 기술한다.

3.1.1 n>2K인 경우

n>2K인 경우는 정의 2에서와 같이 w=2fc를 사용하며 , f(.x)=xn+xk + le 의한 모듈러 감산 연산의 효율성을 최대화하기 위하여 기존의 방법과 다르게 다음과 같이 곱셈을 수행한다.

SPB로(u = 2k) 표현된 旦의 임의의 두 원소 a(a), b(a)는 다음과 같이 표현된다.

#

정의 2에 의하여 두 원소 a(a), b(a)는 六挤를 이용하여 다음과 같이 MSPB 원소로 변환한다.

#(2)

이때 电, 项와 %를 각각

#

라 하면 a(a), b(Q)는

#

이다. 따라서 c(a) = a(ct)b(a)는 다음과 같다.

#(3)

이때, (&+A)는

#

이므로 (&+』l)와 (同+同)은 실제 연산이 없으며, 기저 변환시 연산이 수행되는 기저원소와 그렇지 않은 원소가 독립적으로 곱셈을 수행하므로 기전 변환은 병렬연산이 가능하므로 식 (3)은 다음과 같다.

#(4)

식 (4)에서 (r). (匸), (人)는 모듈러 감산 되어야흐며 /(3)=2:"+;渣 + 1에 의하여 (匸) + (口)은

#(5)

이므로 식 (5)과 (r), (人)을 모듈러 감산 연산하면 식 (4)는 다음과 같이 정리된다.

#(6)

또한 식 (4) 에서 &, 0과 0排는, 가 n보다 작은 경우 % 로 같으므로 TGWn-3k-2에서 (己) 각항의 at + 3k+len + k~l, 0 卜%-1, 0方 十 녜1, 0과 "버)각항의

#(7)

로 간소화된다. 따라서 이를 적용하여 식 (6)의 각항을 树 따른 XOR게이트 시간 지연으로 정리하면〔표 1〕과 같다.〔표 1〕에서 시간 지연을 계산할 때 &에 따라 다른 행들이 사용된다. 예를 들어 &=1인 경우 t의 범위는 t =—fc— 1, £=—1의 3행, 0 W t W n — 3k~2, t — n —3fc— 1, t = n — 2A:—1 이며 나머지 행들은 &=1 에서는 존재하지 않는다. 이와 같은 비트■병렬 곱셈을 type I mastrovito 곱셈기라 하며 다음 정리를 만족한다.

〔표 1) n>2k일때 ct + 2k 계산에 따른 XOR 시간 지연

정리 l.(n>2A;) 제안하는 type I mastrovito 곱셈기는 耳 또는 今에서 최대 시간 지연을 가지며

#

이다.

증명.〔표 1〕에서 각항의 시간 지연 계산 시 章J 또는 식 (7)의 (&, + 臨)는 한 번의 덧셈을 수행한 후 곱셈과 덧셈을 순차적으로 수행해야한다. 따라서 -2fc<t <-A-2°l q +次는 TL+lTx시간 이후 /개의 £耳와 S-A0/2개의 岫 합으로 계산되므로 1Ta + (1 + [log2 (fc+(n-fc)/2)])Tx = 口久 + Flog2 (n + fc) ] T* 이다. 나머지 항들도 이와 같은 방법으로 계산하면〔표 1) 의 XOR Delay와 같으며 , k에 따라 r log2 (n+fe)] 또는 [1码2(2n-2»-i)] 이 최대 시간 지연(Critical Path Delay)이 되므로 n>2k 일때 type I mastrovito 곱셈기 시간 복잡도는

#

이다.

정리 2.(n>2fc) Type I mastrovito 곱셈기의 공간 복잡도는

#

이다.

증명. 식 (4)의 (r) + J)에서 炉개 AND 게이트가 소요되며 (匸) + (三)와 (口 ) + (h) + ( 入)에서 각각 (n-灼2개 and 게이트가 필요하다. 또한 식 (5)에서 (n —狄) . (n —와;+1)개 AND 게이트가 (n-2fc) (n-次+1)/2개 AND 게이트로 감소하고 식 (7)에서는 (n —가:-l)(n—가c) 개 AND 게이트가 (n-2fc-l) (n-次)/2개 AND 게이트로 감소하므로 전체 (n-2fc)2 개 AND 게이트가 감소한다. 따라서 전체 AND 게이트 소요량은 炉+2(n—A:)? — —2»尸 = ”2— 彤개이다. XOR 게이트의 경우〔표 1〕의 모든 c, +財의 계산은 정확히 n개의 a, br at(b3+bj 또는 &&를 더하여 계산되므로 况n—1)개 XOR 게이트가 소요되며, £와 初의 계산에서 가;개 XOR 게이트와 식 (7)의 계산에서 &-次—1개 XOR 게이트가 소요되므로 전체 W-1 개의 XOR 게이트가 소요된다.

Type I mastrovito 곱셈기의 경우 시간 복잡도가 최소가 되도록 구성하였다. 따라서 공간 복잡도 입장에서는 식 (6)의 (al)과 (a2), (bl)과 (b2)는 중복 연산이므로 독립 연산 후 다른 항들과 더해져야 한다. 따라서〔표 1〕의 t = n-아"L인 경우를 고려하면 각각 k, n-2k, fc개의또는 岫를 더해야한다. 이때 #가 독립 연산이므로 이를 더하는데 소요되는 XOR 시간 지연은 (1+ f log2 (k) ])Tx이고 이때 나머지 n-A개는 (1+ [log点)])Tx 시간동안 매번 반으로 감소하므로 !! = 儿-次-1일 때 전체 시간 복잡도는 다음과 같다.

#

이와 같이 제안하는 방법에서 공간복잡도가" 최소가 되도록 구성한 것을 type II mastrovito 곱셈 기라 하고 다음 정리를 만족한다.

정리 3.(n>2fc) Type II mastrovito 곱셈기의시간 복잡도는

1. &=1 인 경우, Time Delay = 1TA + (log2(2n-3))TX

2. 이고 北 = 欢+1인 경우,

#

3. kKi이고 为老麥+i인 경우,

#

이고 공간 복잡도는

#

이다.(이때,

#

증명. 〔표 1〕에서 »=1인 경우는 중복인 독립 연산이 없으므로 [ log2(2n-3)] 의 XOR 시간지 연을 가지며, "1 인 경우 t가

#

일 때 중복인 독립 연산이 있으므로 위와 같은 방법으로 이들 각각에 대한 XOR 시간 지연을 계산하면

#(8)

이다. (1 < z < k — 1이고 1 < j < min{n —k~l, k--1}이다.) 임의의 k를 fc~l = 2m+u = 2U°g2(ein -1+u, (IMsS/")라 하면 (8.1)은 2 3哓(2)" 가 최대 값을 가지는 가장 작은 *값에서 최대 시간 지연을 가지므로 z==2(iog#-i)i - Ji이고, (8.2)는 최소의 2값인 i = i 에서 최대값을 가지므로 최대 시간 지연은

#(8.1)

#(8.2)

#(8.3)

이다. 우선 卜2", + 1일 때를 고려하면 (8.1)'< (8.2)'이므로 (8.2)'와 (8.3)'중 큰 값이 최대 시간 지연이 된다. 따라서

#

이다. 다음으로&尹欢 + 1를 고려하면 (8.1)'>(8.2)' 이므로 (8.1)'와 (8.3)'중 큰 값이 최대 시간 지연이 된다. 따라서

#

이다. 공간 복잡도의 경우〔표 1〕에서 (a2)와 (b2) 의계산시 소요되는 XOR 게이트를 빼면 되므로 (a2) 의계산에서 /心:-1)/2개 XOR 게이트가 중복이며 (b2) 의 계산에서 統-!)統-2)/2개 XOR가 중복 연산이므로 전체 (*-1)2 개 XOR 게이트가 감소한다. 따라서 type II mastrovito 곱셈기의 공간 복잡도는

#

이다.

3.1.2 n = 2k경우

a = 2k 인 경우 기존 ⑻에서와 같이 w=k이며 Karatsuba-Ofman 방법을 적용하기 위하여 a(a)와 b(a)는 다음과 같이 변형된다.

#

이때, 두 원소의 곱 c(a) 三a(a)b(cn)는 다음과 같다.

#(9)

a, =a, +a, + *라 하고 식 (9)를 정리하면

#(10)

이다. 이를 이용하여 71 = 况일때 제안하는 type I mastrovito 곱셈기는 다음 정리를 만족한다.

정리 4.(n = 2北) Type I mastrovito 곱셈기의 c—im에서 최대 시간 지연을 가지며

#

이다.

증명. 식 (10)의 각항을 XOR 게이트의 시간 지연에 따라 정리하면〔표 2〕와 같다.〔표 2〕에서 각항의 시간 지연 계산 시 讷;는 한 번의 덧셈을 수행한 후 곱셈과 덧셈을 순차적으로 수행해야한다. 따라서 TMtM —2인 느 TL+lTx시간 이후 t + k +L개의 와(-以 + »-3)/2개의 岫 합으로 계산되므로 1Ta + (1 + [ log2 (t + k +1 + (― + k—3)/2))]

표 2) n = 2k일 때 ct+k 계산에 따른 XOR 시간 지연

Tx = 1Ta + μ唱 (n + fc-1) ] Tx이다 나머지 항들도 이와 같은 방법으로 계산하면〔표 2〕의 XOR Delay 와 같다. 이 중 t=-l일때 최대 시간 지연을 가지므로 type I mastrovito 곱셈기의 시간 복잡도는

#

이다.

정리 5.(n = 2A:) Type I mastrovito 곱셈기의 공간 복잡도는

#

이다.

증명 (爲+&)(爲+鸟), , 4两은 각각 l = n/2-l차의 곱이므로(3/4)疽개의 AND 게이트가 필요하며 , XOR 게이트의 경우 &爲, (& +孔)㈤ + 同), 0鸟의 계산에서 3(£-1)2개 필요하고 &, 宫의계산에서 n개, 同, (&+&). (爲+同), 气耳 사이의 합에서 n-2개 식 (9)의 모듈러 감산에서 2n-2 개가 필요하므로 총(3/4). 疽+n-l개의 XOR 게이트가 필요하다. 따라서 공간 복잡도는

#

이다.

이전 절과 같이 n = 까;인 경우도 중복 연산이 있으므로 각항에서 다른 덧셈들과 독립적으로 수행되어야 한다. 즉, 식 (10)에서 (10.1)과 (10.2)는 중복 연산이므로 (10.1)이 모두 연산된 후 각항에 더해져야 한다. 따라서 type I mastrovito 곱셈기 보다는 다소 시간 지연이 증가하나 공간 복잡도는 감소한다. 정리 4과 5에 의하여 type II mastrovito 곱셈기는 다음 정리를 만족한다.

정리 6.(n = 2fc) Type II mastrovito 곱셈기의시간 복잡도는

#

이고 공간 복잡도는

#

이다’

증명.〔표 2〕에서 ~fc<i <-l, 0<t<k-15. 구분하여 독립 연산을 고려하자. 우선 -kwtM-r일 때 (cl) + (dl)은 A개의 a由의 덧셈이고 나머지는 (T-l) + 2 . (t + k+1)개의 a也의 덧셈이다.(이때, 鶴는 1TX 이후에 계산되므로 2배로 가산한다.) 따라서(C1) + (dl)의 A개를 모두 더하는데 [ log2(fc) 1 Tx 의 시간이 소요되고 나머지는 flog2(fc)lTx 시간 지연 동안 계속 반씩 감소하므로 XOR 시간지연은 F log2(n + 4 + l + 2r )]Tx 이다. t 가 0<t<fc-l 인 경우도 이와 같이 계산하면 [ log2(n~i-l + 2 f lo62<t) 1 ) 1 Tx 이므로 t=-l 일때 최대 시간 지연을 가지며 시간 복잡도는

#

이다. 공간 복잡도의 경우 식 (10.2)가 모두 중복연산이므로 M>-1)개 XOR 게이트가 감소한다’ 따라서 정리 5에서 이를 빼면 type II mastrovito 곱셈기의 공간 복잡도는

#

이다.口

Ⅳ. 제안하는 비트-병렬 SPB 곱셈기의 하드웨어구조

본 소절에서는 제안하는 SPB 곱셈기의 비트-병렬하드웨어 구조에 대하여 기술한다. 식 (6)은 AND 또는 XOR 연산의 순서에 따라 구분되며, 이에 식 (7) 의 간소화 표현까지 적용하여 정리하면 다음과 같다.

. CONVERSION XOR BLOCK1 :

#

.XOR BLOCK2 :

#

. BINARY XOR BLOCK3 :

AND BLOCK3-AND BLOCK7까지 같은 차수의 연산 결과들 사이의 lTx 연산

.AND BLOCK1 : #

. AND BLOCK2 :#

.AND BLOCK3 :

#

.AND BLOCK4 : #

#

.AND BLOCK5 : #

#

.AND BLOCK6 : 

#

. AND BLOCK7 : #

여기서 XOR BLOCKe 3가지로 rq 시간 지연이 일어나며 AND BLOCKe 7가지로 1TA 시간 지연이 일어나며 , AND 연산만을 BLOCK으로 구분한다. 따라서 이와 같은 방법으로 이전 절에서 설명한 type I과 type II mastrovito 곱셈기를 설계하면 [그림 2〕와 같다.[그림 2〕에서 (a)는 시간복잡도에 최적화된 곱셈기이고 (b)는 공간복잡도에 최적화된곱셈기이다. 또한[그림 2〕에서와 같이 상위 1Ta + 1TX 시간 지연 이후의 시간 및 공간복잡도의 trade-off는 树 의존한다. 이는 AND BLOCK2와 AND BLOCK5가 k에 따라 복잡도가 정의되기 때문이다. [그림 2〕의 (a)와 (b)를 &)『"^ + 询 의하여 정의되는 弓를 예로 설계하면[그림 3〕과 같다. 본 예제에서는 XOR BLOCK27]- 존재하지 않는다. 이는 XOR BLOCK2의 XOR 연산은 총 儿-次-!개인데 예제에서는 0이 되기 때문이다. 따라서 이에 대응하는 AND BLOCK3도 존재하지 않는다.[그림 3〕은 제안하는 type I mastrovito 곱셈기로 XOR BLOCK2와 AND BLOCK3이 없다. 기존의 가장 효율적인 결과인〔8〕의 경우 본 예제를 적용하면 시간복잡도의 경우n\+3Tx이고 공간복잡도의 경우 25개 AND 게이트와 24개 XOR 게이트인 반면에[그림 3(a)〕의 제안하는 type I mastro vito 곱셈기의 경우 시간 복잡도는 1 TA+3TX로같으나공간복잡도는 21개 AND 게이트와 24개 XOR 게이트로 감소한다. 또한[그림 3(b)〕의 Type II mastrovito 곱셈기의 경우는 시간 복잡도는 1Ta+3Tx는 기존의 경우와 같으나 공간 복잡도의 경우 21개 AND 게이트와 24개 XOR 게이트로 기존〔8〕의 결과보다도 작을 뿐만 아니라 제안하는 type I mastrovito 곱셈 기보다도 작음을 알 수 있다.

[그림 2) 제안하는 비트-병렬 곱셈기 하드웨어 구조: (a) Type I mastrovito 곱셈기 (b) Type II mastrovito 곱셈기

[그림 3] F2에서 제안하는 비트-병렬 mastrovito 곱셈기 (f(x)-x5+x3+1) : (a) Type I (b) Type II

Ⅴ. 비교 및 결론

본 절에서는 k의 범위(2k<n, 2k = n, 가:>n)에 따라 제안하는 type I과 II mastrovito 곱셈기의 효율성과 기존 결과를 비교하교 결론을 내린다. 삼항 기약다항식 기반에서 SPB를 사용하는 기존 결과 중에서 가장 효율적인〔8〕의 결과와 제안하는 두 가지 비트-병렬 mastorvito 곱셈기와 시간 및 공간 복잡도를 비교하면 〔​​​​​​​표 3〕과 같다.〔표 3〕의 결과에서 알 수 있듯이 공간복잡도의 경우 n>2k일 때 〔8〕에 비하여 type Ie 必개 AND 게이트가 감소하고 type Ⅱ는 炉개 AND와 辱-1)2개 XOR 게이트가 감소함을 알 수 있다. 또한 n = 2k일 때는 type Ie 炉개 AND. 게이트와 (罗 -秋+1)개 XOR 게이트가 감소하고 type II는 矽개 AND 게이트와 (2炉-M+1)개 XOR 게이트가 감소함을 알 수 있다. 따라서 제안하는 두 곱셈기 모두 기존의 결과에 비하여 공간 복잡도가 감소한다. AND 게이트와 XOR 게이트의 비용을 같다고 가정할 경우 ⑻에 비하여 type I의 경우 최대 12.5%, type Ⅱ의 경우 최대 25%의 게이트가 감소한다.

〔표 3〕 삼항 기약다항식을 위한 SPB 비트-병렬 곱셈기 복잡도 비교

Type I의 시간 복잡도는〔표 3〕에서와 같이 항상 ⑻의 결과보다 작거나 같지만 type Ⅱ는 e과 k에 따라 달라진다. 100 Mn <1000에서 nM 가를 만족하는 모든 삼항 기약다항식(1, 335개)으로 시간 복잡도를 조사한 결과 type I의 경우 174개(13%)가〔8〕의 결과보다 작으며 1, 161개(87%)가 같았으며, type II 의 경우 33개(2.5%)가〔8〕의 결과보다 작고 1, 188 개(89%)가 같았으며 114(8.5 %)가 기존 결과보다 1TX 증가하였다.

이 연구에 참여한 연구자(의 일부)는 ’2단계 BK21사업'의 지원비를 받았음

References

  1. 이옥석, 장남수,김창한, 홍석회,"Equally Spaced 기약다항식 기반의 효율적인 이진체 비트-병렬 곱셈기", 정보보호학회논문지,18(2),pp3-10, 2008년 4월
  2. 정석원, 이선옥, 김창한,"삼향 기약다항식을 이용한 효율적인 비트-병렬 구조의 곱셈기", 정보보호학회논문지,13(5),pp179-187,2003년 10월
  3. 정석원, 윤중철, 이선옥,"GF(2n)에서의 직렬-병렬 곱셈기 구조",정보보호학회논문지,13(3),pp27-34,2003년 6월
  4. A. Reyhani-Masoleh and M.A. Hasan, "Low complexity bit parallel architectu res for polynomial basis multiplication over GF(2n ) ," IEEE Trans. Computer s., vol. 53, no. 8, pp. 945-959, Aug. 2004 https://doi.org/10.1109/TC.2004.47
  5. H. Fan and Y. Dai, 'Fast bit parallel GF(2n) multiplier for all trinomials," IEEE Trans. Computers., vol. 54, no. 4, pp. 485-490, Apr. 2005 https://doi.org/10.1109/TC.2005.64
  6. C. Negre, "Efficient parallel multiplier in shifted polynomial basis," Journal of Systems Architecture, vol. 53, no. 2-3, pp. 109 -116, Feb. 2007 https://doi.org/10.1016/j.sysarc.2006.09.004
  7. H. Fan and M.A. Hasan, "Relationshi p between GP(2n) Montgomery and shi fted polynomial basis multiplication al gorithms," IEEE Tran s. Computers., vol. 55, no. 9, pp. 1202-1206, Sep. 2006 https://doi.org/10.1109/TC.2006.152
  8. H. Fan and M.A. Hasan, "Fast Bit Parallel Shifted Polynomial Basis Multipliers inGP(2n)," IEEE Trans. Circuits & Systems-I, vol. 53, no. 12, pp. 2606-2615,Dec. 2006 https://doi.org/10.1109/TCSI.2006.883855