KR19980043591A - 정보 보호용 모듈러 승산 장치 - Google Patents
정보 보호용 모듈러 승산 장치 Download PDFInfo
- Publication number
- KR19980043591A KR19980043591A KR1019960061514A KR19960061514A KR19980043591A KR 19980043591 A KR19980043591 A KR 19980043591A KR 1019960061514 A KR1019960061514 A KR 1019960061514A KR 19960061514 A KR19960061514 A KR 19960061514A KR 19980043591 A KR19980043591 A KR 19980043591A
- Authority
- KR
- South Korea
- Prior art keywords
- bit
- output
- significant
- multiplication
- value
- Prior art date
Links
Classifications
-
- 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/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
-
- 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/60—Methods 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/72—Methods 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/722—Modular multiplication
Abstract
본 발명은 정보 보호 기술을 구현하는데 사용되는 모듈러 승산 장치(modular multiplication device)에 관한 것으로, 하나의 이진 가산기를 사용하여 승산 기능과 제산 기능을 함께 수행함으로서 승산 회로와 제산 회로를 각각 따로 사용하는 기존의 모듈러 승산 장치에 비하여 하드웨어를 거의 절반 정도를 줄일 수 있는 정보 보호용 모듈러 승산 장치에 관해 개시된다.
Description
본 발명은 정보 보호 기술을 구현하는데 사용되는 정보 보호용 모듈러 승산 장치(modular multiplication device)에 관한 것으로, 하나의 이진 가산기를 사용하여 승산 기능과 제산 기능을 함께 수행함으로써 승산 회로와 제산 회로를 각각 따로 사용하는 기존의 모듈러 승산 장치에 비하여 하드웨어를 거의 절반 정도를 줄일 수 있는 정보 보호용 모듈러 승산 장치에 관한 것이다.
최근 들어 국내외에서는 정보 보호 알고리즘에 대한 하드웨어, 즉 하나의 칩으로 구현하는 것이 큰 쟁점으로 등장하고 있다. 특히, 해독 기술의 발달에 대한 정보 보호 기능의 강화 차원에서 알고리즘의 비도를 강화하고 있는 추세이다. 이렇게 비도를 강화하기 위해서는 연산 양이 매우 많은 모듈러 지수 계산을 사용하여 알고리즘을 설계하는 것이 일반화되어 가고 있다. 모듈러 지수 계산은 많은 모듈러 승산으로 구성되기 때문에 정보 보호 알고리즘의 처리 속도의 향상에 있어서 모듈러 승산의 구현은 중요한 사항이 되고 있다. 이러한 모듈러 승산은 일반적인 승산 기능에다 제산 기능을 함께 필요로 한다. 모듈러 승산을 구현하는 종래 기술은 기존의 승산 회로와 제산 회로를 조합하여 모듈러 승산 기능을 수행하도록 하드웨어를 구현하였다. 이러한 구현 방식은 키(key)가 매우 큰 정보 보호 알고리즘을 하드웨어로 구현하는데 있어서 하드웨어가 매우 커지기 때문에 하나의 칩으로 구현하기 어려운 단점이 있다.
종래 기술은 피승수와 승수를 곱하기 위해서 승산 회로를 사용하고, 모듈러 값을 구하기 위해서는 제산 회로를 각각 사용하여 왔다. 이러한 승산 방법은 하드웨어가 증가하기 때문에, 키(key)의 비트 수가 큰 정보 보호 기술의 응용에 있어서 하드웨어가 엄청나게 커지고, 하나의 칩속에 구현하기 위해서는 집적도가 매우 크고 제작 비용이 많이 드는 반도체 공정을 사용해야 하기 때문에 제작 경비가 많이 들고, 아울러 많은 회로의 사용으로 인하여 신뢰성이 저하되는 단점이 있다.
따라서, 본 발명은 동일한 하드웨어를 이용하여 승산과 제산을 함께 수행하므로써 하드웨어 양이 작은 모듈러 승산 장치를 구현할 수 있으며, 특히, 하드웨어의 감소로 실리콘 면적을 줄일 수 있기 때문에 값싼 반도체 제조공정을 사용해서도 하나의 집적회로로 구현이 가능하며, 본 발명을 키(key)가 매우 큰 정보 보호 기술에 사용할 경우 타 장치에 비하여 가격 경쟁력의 향상과 신뢰성의 향상을 꾀할 수 있는 정보 보호용 모듈러 승산 장치를 제공하는데 그 목적이 있다.
상술한 목적을 달성하기 위한 본 발명에 따른 정보 보호용 모듈러 승산 장치는 이진 가산을 수행하는 이진 가산 수단과, 상기 이진 가산기의 출력에 대해서 2비트 단위로 처리하는 2비트 처리 수단과, 최하위 2비트를 순차적으로 저장하는 최하위 2비트 레지스터 수단과, 승수에 대한 부호 정수를 생성하는 부호 정수 디코딩 수단과, 상기 이진 가산기의 결과 값을 저장하는 결과 레지스터 수단과, 상기 결과 레지스터의 출력 값과 모듈러 값을 비교하기 위한 비교 수단과, 상기 비교 수단의 출력에 따라 모듈러 값에 대한 출력 값을 처리하는 소수 처리 수단과, 승산/제산 선택 신호(MUL/DIVB)에 의하여 상기 소수 처리 수단의 출력 값과 상기 부호 정수 디코더 수단의 출력 값을 선택하는 다중화 수단과, 상기 승산/제산 선택신호를 반전시키기기 위한 인버터 수단과, 상기 인버터 수단과 상기 최하위 2비트 레지스터 수단의 출력을 입력으로 하고, 상기 2비트 처리수단의 입력을 출력으로 하는 제1엔드(AND) 게이트 수단과, 상기 2 비트 처리 수단의 출력과 승산/제어 선택신호를 입력으로 하고, 상기 최하위 2비트 레지스터 수단의 입력을 입력으로하는 제2엔드게이트 수단과, 상기 이진 가산 수단의 출력과 승산/제산 선택신호를 입력으로 하고, 상기 결과 레지스터 수단의 출력을 입력으로 하는 제3엔드게이트 수단으로 구성된 것을 특징으로 한다.
키(key)가 매우 큰 정보 보호 알고리즘을 하드웨어로 구현할 경우, 정보 보호 알고리즘을 고속으로 처리할 수 있기 때문에 응용 시스템에서 정보 보호 기술을 실시간으로 처리할 수 있다는 장점이 있다. 이러한 관점에서 정보 보호 기술의 고속 처리를 위하여 하드웨어의 구현은 매우 중요한 관심 거리가 된다. 특히, 정보 보호기술의 비도를 강화하기 위하여 일반적으로 사용하는 모듈러 승산 장치는 각종 정보 보호 기술의 고속 처리를 위하여 그 구현 기술이 핵심 기술로서 고려되고 있다. 그러므로, 본 발명에서는 기존의 모듈러 승산 방식을 개선하고자 하였으며, 특히, 승산 회로와 제산 회로를 따로 사용하는 종래의 기술과는 달리 하나의 회로로 승산 및 제산 기능을 수행하도록 하여 모듈러 승산 장치의 하드웨어를 감소시켰다.
도 1은 본 발명에 따른 모듈러 승산 장치의 구성도.
도 2는 도 1의 2비트 처리기의 상세한 구성도.
*도면의 주요 부분에 대한 부호의 설명*
1:이진 가산기 2:2비트 처리기
3 및 4:제1 및 제2엔드(AND) 게이트
5:최하위 2 비트 레지스트 6:부호 정수 디코더
7:소수 처리기 8:비교기
9:결과 레지스터 10:다중화기
11:인버터 12:제3엔드게이트
본 발명은 키(key)가 매우 큰 정보 보호 알고리즘의 핵심 연산 기능인 모듈러 승산 장치를 하드웨어로 구현하는데 있어서 하드웨어 양이 커지는 종래의 방식을 개선하고자 다음과 같은 기술적 수단을 사용하였다.
일반적으로 모듈러 승산은 승수와 피승수를 곱한 후, 모듈러 값에 대하여 제산을 수행하는데, 본 발명은 하나의 이진 가산기 회로와 레지스터를 공통으로 이용하여 승산 및 제산 기능을 수행하도록 하였다. 즉, 승산시에는 피 승수와 각 비트에 대한 승수의 부분적을 순차적으로 더하도록 하여, 상위 값은 상위 비트용 레지스터에 저장하고, 하위 값은 하위 비트용 레지스터에 저장한 후 동일한 하드웨어에서 상위 비트용 레지스터에 대하여 하위 비트용 레지스터로 부터 하위 비트를 순차적으로 첨가하면서 제수를 감산함으로써 나머지 값을 취하도록 하여 모듈러 승산을 수행하도록 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
도 1은 본 발명에 따른 모듈러 승산 장치의 구성도이다. 피승수(X)와 승수(Y)를 곱하기 위해서는 먼저 MUL/DIVB 신호를 1로 만들어 승산 모드로 설정하고, 부호 정수(signed digit) 디코더(6)에서 부스 수정 알고리즘을 사용하여 승수의 2비트에 대한 부호 정수(Z)를 만든다.
이 부호 정수는 다중화기(10)의 입력 포트(TIN2)로 가해짐으로써, 1로 선택된 MUL/DIVB 신호에 의하여 다중화기(10)의 출력 포트(TOUT)에는 부호 정수(Z)가 출력된다. 그리고, 출력 포트(TOUT)는 이진 가산기(1)의 입력 포트(ADDIN)로 가해지고, 이 값은 이진가산기(1)의 또 다른 입력 포트(PIN)로 입력되는 부분적(PARTP/PARTR)과 더해져서 2비트 처리기(2)의 입력 포트(GIN1)로 입력된다. 2비트 처리기(2)는 최하위 2비트를 제거하고 나머지 값(PARTP/PARTR)을 이진 가산기(1)의 입력 포트(PIN)로 입력되어 이진가산기(1)의 부분 적이 된다. 이때, 2비트 처리기(2)의 출력 포트(NOUT)는 최하위 2비트를 제2AND 게이트(4)의 입력으로 출력하며, 이 값은 1로 선언된 MUL/DIVB 신호에 의하여 제2AND 게이트(4)의 출력을 거쳐 최하위 2비트 레지스터(5)의 입력 포트(SIN)로 클럭(CLOCK)에 의하여 입력된다. 이러한 작업은 피승수의 모든 비트에 대하여 한 클럭(CLOCK) 주지에 2비트 단위씩 처리된다. 승산 기능이 완료된 후, MUL/DIVB 신호는 0로 선택됨으로써, 제산 기능의 수행이 시작된다. 이때, 이진가산기(1)의 승산에 대한 최종 값이 이진가산기(1)의 출력 포트(ADDOUT)로부터 제3AND 게이트(12)로 입력되며, 이 값은 0로 선택된 MUL/DIVB 신호에 의하여 제3AND 게이트(12)로 바로 출력되어 결과 레지스터(9)의 입력 포트(RIN)로 클럭(CLOCK)에 의하여 입력된다. 결과 레지스터(9)의 출력 값(RESULT)은 비교기(8)에서 모듈러 값(P)과 비교되는데, 결과 레지스터(9)의 출력값(RESULT)이 모듈러 값(P)보다 크거나 같으면 비교기(8)의 출력(QUOT)은 1이 되고, 반대로 RESULT값이 P값보다 작으면 비교기(8)의 출력(QUOT)은 0이 된다. 이러한 비교기(8)의 출력(QUOT) 값은 소수처리기(7)의 입력 포트(PSEL)로 입력되어 소수처리기의 출력 값(R)을 제어하는데, 비교기(8)의 출력(QUOT) 값이 1이면, R값은 -P가 되고, 비교기(8)의 출력(QUOT) 값이 0이면, R값은 0이 된다. MUL/DIVB 신호가 0이 되며, 다중화기(10)의 입력 포트(TIN1)로 입력된 소수처리기의 출력(R)은 다중화기(10)의 출력 포트(TOUT)로 출력되어, 이진가산기(1)의 입력 포트(ADDIN)로 입력된다. 이 값은 이진가산기(1)에서 2비트 처리기(2)의 출력(PARTP/PARTR)과 더해진다. 이때, 비교기(8)의 출력인 QUOT 신호가 1이면, 이진 가산기(1)는 뺄샘을 수행한 후 왼쪽으로 2비트 시프트를 수행하고, QUOT 신호가 0이면, 연산은 수행하지 않고 2비트 처리기(2)의 출력(PARTP/PARTR)을 왼쪽으로 단지 2비트만 시프트를 수행한다.
한편, MUL/DIVB 신호가 0이 되면, 최하위 2비트 레지스터(5)에 저장되어 있던 승산 결과인 하위 N 비트 중 최하위 2비트를 최하위 2비트 레지스터(5)의 출력 포트(SOUT)를 통하여 출력되어 제1AND 게이트(3)의 입력으로 입력되고, 0으로 선택된 MUL/DIVB 신호에 의하여 2비트 처리기(2)의 입력 포트(MIN)로 입력된다. 여기서, 0으로 선택된 MUL/DIVB 신호는 인버터(11)에 의하여 1로 반전된다. 최하위 2비트는 2비트 처리기(2)의 입력 포트(GIN2)로 입력된 이진가산기(1)의 출력(ADDOUT)데이타에 첨가되어 2비트 처리기(2)의 출력 포트(PARTP/PARTR)를 통하여 다음 클럭에 이진 가산기(1)의 입력 포트(PIN)로 입력된다. 이러한 제산 기능은 피제수의 모든 비트에 대하여 2비트 단위로 수행됨으로써, 모듈러 값(P)에 대한 모듈러 승산의 최종 결과 값을 구한다.
도 2는 도 1의 2비트 처리기에 대한 상세한 구성도이다. MUL/DIVB 신호가 1이 되어, 본 발명의 장치가 승산 기능을 수행할 때에는 도 1의 이진가산기(1)의 출력(ADDOUT)을 2비트 우측 변환기(23)이 입력 포트(GIN1)로 받아 들여 클럭(CLOCK)에 의하여 2비트 단위로 우측으로 시프트를 시키며, 2비트 우측 변환기(23)의 출력(EOUT)은 최하위 2비트 제거기(25)의 입력 포트(BIN)로 입력되어 2비트 시프트된 출력의 최하위 2비트를 제거하여 출력 포트(MOUT)을 통하여 제2AND 게이트의 입력으로 전달된다. 한편, 2비트 시프트된 출력 값은 2비트 우측 변환기(23)의 출력 포트(QOUT1)를 통하여 다중화기(21)의 입력포트(QIN1)로 입력되며, 이 값은 MUL/DIVB 신호의 1에 의하여 다중화기(21)의 출력 포트(PARTP/PARTR)를 통하여 도 1의 이진가산기(1)의 입력 포트(PIN)로 입력된다.
한편, MUL/DIVB 신호가 0이 되어, 본 발명 장치가 제산 기능을 수행할 때에는 도 1의 최하위 2비트 레지스터(5)의 출력(SOUT)이 제1AND 게이트(3)를 거쳐 최하위 2비트 첨가기(24)의 입력 포트(MIN)로 입력된다. 이 최하위 2비트는 도 1의 이진 가산기(1)로 부터 최하위 2비트 첨가기(24)의 입력 포트(GIN2)로 입력된 출력(ADDOUT)의 최하위에 첨가되어 출력 포트(BOUT)을 거쳐 2비트 좌측 변환기(22)로 입력되어 클럭(CLOCK)에 의해 좌측으로 2비트 시스프된다. 시프트된 결과는 2비트 좌측 변환기(22)이 출력 포트(QOUT2)를 통하여 다중화기(21)의 입력 포트(QIN2)로 입력되며, 이 값은 MUL/DIVB 신호의 0에 의하여 다중화기(21)의 출력 포트(PARTP/PARTR)를 통하여 도 1의 이진가산기(1)의 입력 포트(PIN)로 입력된다.
상술한 바와 같이 본 발명에 의하면 하나의 가산 회로 및 레지스터를 이용하여 승산시에는 승수의 2비트에 대한 부분 적을 순차적으로 더하고, 하위 값만 하위용 레지스터에 저장하였다가 제산시 동일한 하드웨어를 이용하여 상위 비트에 순차적으로 첨가하여 제수의 값을 순차적으로 감산하여 나머지값을 취하는 승산 및 제산기능을 함께 사용함으로써, 대용량 키(key)용 정보 보호 알고리즘을 하드웨어로 구현할 때 가격이 저렴한 기존의 반도체 공정을 이용하고도 하나의 칩으로 구현할 수 있기 때문에 가격 경쟁력이 뛰어나고, 아울러 트랜지스터 갯수의 감소에 따라 신뢰성이 뛰어난 장점이 있다.
Claims (2)
- 이진 가산을 수행하는 이진 가산 수단과,상기 이진 가산기의 출력을 2비트 단위로 처리하는 2비트 처리 수단과,최하위 2비트를 순차적으로 저장하는 저장하는 최하위 2비트 레지스터 수단과,승수에 대한 부호 정수를 생성하는 부호 정수 디코딩 수단과,상기 이진 가산기의 결과 값을 저장하는 결과 레지스터 수단과,상기 결과 레지스터의 출력 값과 모듈러 값을 비교하기 위한 비교 수단과,상기 비교 수단의 출력에 따라 모듈러 값에 대한 출력 값을 처리하는 소수 처리 수단과,승산/제산 선택신호(MUL/DIVB)에 의하여 상기 소수 처리 수단의 출력 값과 상기 부호 정수 디코더 수단의 출력 값을 선택하는 다중화 수단과,상기 승산/제산 선택신호를 반전시키기 위한 인버터 수단과,상기 인버터 수단과 상기 최하위 2비트 수단의 출력을 입력으로 하고, 상기 2비트 처리수단의 입력을 출력으로 하는 제2엔드게이트 수단과,상기 2비트 처리 수단의 출력과 승산/제산 선택신호를 입력으로 하고, 상기 최하위 2비트 레지스터 수단의 입력을 입력으로 하는 제2엔드게이트 수단과,상기 이진 가산 수단의 출력과 승산/제산 선택신호를 입력으로 하고, 상기 결과 레지스터 수단의 출력을 입력으로 하는 제3엔드게이트 수단으로 구성된 것을 특징으로 하는 정보 보호용 모듈러 승산 장치.
- 제1항에 있어서,상기 2비트 처리 수단은 상기 이진 가산 수단의 출력을 클럭에 의해 우측으로 2비트씩 시프트시키기 위한 2비트 우측 변환 수단과,상기 2비트 우측 변환 수단의 출력으로 부터 최하위 2비트를 제거하여 상기 최하위 2비트 레지스터 수단으로 저장시키기 위한 최하위 2비트 제거 수단과,상기 최하위 2비트 레지스터 수단으로부터 입력되는 최하위 2비트를 상기 이진 가산 수단의 출력에 첨가하기 위한 최하위 2비트 첨가 수단과,상기 최하위 2비트 첨가 수단의 출력을 좌측으로 2비트씩 시프트시키기 위한 2비트 좌측 변환 수단과,상기2비트 우측 변환 수단의 출력과 상기 2비트 좌측 변환 수단의 출력을 입력으로 하는 다중화 수단으로 구성된 것을 특징으로 하는 정보 보호용 모듈러 승산 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960061514A KR100218683B1 (ko) | 1996-12-04 | 1996-12-04 | 정보 보호용 모듈러 승산 장치 |
US08/969,321 US5867412A (en) | 1996-12-04 | 1997-11-13 | Modular multiplication device for information security |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960061514A KR100218683B1 (ko) | 1996-12-04 | 1996-12-04 | 정보 보호용 모듈러 승산 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980043591A true KR19980043591A (ko) | 1998-09-05 |
KR100218683B1 KR100218683B1 (ko) | 1999-09-01 |
Family
ID=19485639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960061514A KR100218683B1 (ko) | 1996-12-04 | 1996-12-04 | 정보 보호용 모듈러 승산 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5867412A (ko) |
KR (1) | KR100218683B1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6085210A (en) * | 1998-01-22 | 2000-07-04 | Philips Semiconductor, Inc. | High-speed modular exponentiator and multiplier |
US6038318A (en) * | 1998-06-03 | 2000-03-14 | Cisco Technology, Inc. | Optimized machine computation of exponential functions and modulo functions |
US7240204B1 (en) * | 2000-03-31 | 2007-07-03 | State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University | Scalable and unified multiplication methods and apparatus |
US7017064B2 (en) * | 2001-05-09 | 2006-03-21 | Mosaid Technologies, Inc. | Calculating apparatus having a plurality of stages |
US7233663B2 (en) * | 2001-10-29 | 2007-06-19 | Safenet, Inc. | Key generation performance improvement |
US7451326B2 (en) | 2002-08-26 | 2008-11-11 | Mosaid Technologies, Inc. | Method and apparatus for processing arbitrary key bit length encryption operations with similar efficiencies |
US7386705B2 (en) | 2002-08-27 | 2008-06-10 | Mosaid Technologies Inc. | Method for allocating processor resources and system for encrypting data |
US20070067977A1 (en) * | 2005-09-29 | 2007-03-29 | Mark Manuel | Tool and a method for producing a tool |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4742479A (en) * | 1985-03-25 | 1988-05-03 | Motorola, Inc. | Modulo arithmetic unit having arbitrary offset and modulo values |
US4816805A (en) * | 1987-02-02 | 1989-03-28 | Grumman Aerospace Corporation | Residue number system shift accumulator decoder |
US5144574A (en) * | 1989-01-30 | 1992-09-01 | Nippon Telegraph And Telephone Corporation | Modular multiplication method and the system for processing data |
US5073870A (en) * | 1989-01-30 | 1991-12-17 | Nippon Telegraph And Telephone Corporation | Modular multiplication method and the system for processing data |
EP0502712B1 (en) * | 1991-03-05 | 2000-05-31 | Canon Kabushiki Kaisha | Calculating apparatus and method of encrypting/decrypting communication data by using the same |
EP0531158B1 (en) * | 1991-09-05 | 1999-08-11 | Canon Kabushiki Kaisha | Method of and apparatus for encryption and decryption of communication data |
FR2726668B1 (fr) * | 1994-11-08 | 1997-01-10 | Sgs Thomson Microelectronics | Procede de mise en oeuvre de reduction modulaire selon la methode de montgomery |
US5793659A (en) * | 1996-10-15 | 1998-08-11 | United Microelectronics Corporation | Method of modular reduction and modular reduction circuit |
-
1996
- 1996-12-04 KR KR1019960061514A patent/KR100218683B1/ko not_active IP Right Cessation
-
1997
- 1997-11-13 US US08/969,321 patent/US5867412A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR100218683B1 (ko) | 1999-09-01 |
US5867412A (en) | 1999-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0890899B1 (en) | Multiplication method and apparatus | |
EP1058184A2 (en) | High radix division | |
US5105378A (en) | High-radix divider | |
JP2002108606A (ja) | スティッキービット生成回路及び乗算器 | |
US4758974A (en) | Most significant digit location | |
US5023827A (en) | Radix-16 divider using overlapped quotient bit selection and concurrent quotient rounding and correction | |
Quach et al. | Design and implementation of the SNAP floating-point adder | |
KR100218683B1 (ko) | 정보 보호용 모듈러 승산 장치 | |
US5815423A (en) | Parallel processing division circuit | |
US6182100B1 (en) | Method and system for performing a logarithmic estimation within a data processing system | |
JP2005018759A (ja) | 2の浮動小数点数乗の概算を実施するための方法および装置 | |
US5177703A (en) | Division circuit using higher radices | |
US5867413A (en) | Fast method of floating-point multiplication and accumulation | |
US4866655A (en) | Arithmetic processor and divider using redundant signed digit | |
US5954788A (en) | Apparatus for performing modular multiplication | |
US4979141A (en) | Technique for providing a sign/magnitude subtraction operation in a floating point computation unit | |
US4935892A (en) | Divider and arithmetic processing units using signed digit operands | |
Beuchat et al. | Multiplication algorithms for radix-2 RN-codings and two's complement numbers | |
US5946223A (en) | Subtraction/shift-type dividing device producing a 2-bit partial quotient in each cycle | |
JP4159565B2 (ja) | ベクトル積和演算回路 | |
JP3122622B2 (ja) | 除算装置 | |
US6631393B1 (en) | Method and apparatus for speculative addition using a limited carry | |
KR20060078258A (ko) | 가변 진법 나눗셈 연산기 | |
KR100858559B1 (ko) | 잉여 이진수의 덧셈 방법, 잉여 이진수의 곱셈 방법, 잉여이진수 덧셈기 및 잉여 이진수 곱셈기 | |
Bisoyi et al. | Design of a Novel Fused Add-Sub Module for IEEE 754-2008 Floating Point Unit in High Speed Applications |
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: 20080530 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |