KR100477509B1 - 고속 연산기를 위한 래딕스-4 부스 연산기 - Google Patents

고속 연산기를 위한 래딕스-4 부스 연산기 Download PDF

Info

Publication number
KR100477509B1
KR100477509B1 KR10-2002-0060203A KR20020060203A KR100477509B1 KR 100477509 B1 KR100477509 B1 KR 100477509B1 KR 20020060203 A KR20020060203 A KR 20020060203A KR 100477509 B1 KR100477509 B1 KR 100477509B1
Authority
KR
South Korea
Prior art keywords
value
radix
booth
high speed
operator
Prior art date
Application number
KR10-2002-0060203A
Other languages
English (en)
Other versions
KR20040029789A (ko
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-2002-0060203A priority Critical patent/KR100477509B1/ko
Publication of KR20040029789A publication Critical patent/KR20040029789A/ko
Application granted granted Critical
Publication of KR100477509B1 publication Critical patent/KR100477509B1/ko

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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • 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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/49Computations with a radix, other than binary, 8, 16 or decimal, e.g. ternary, negative or imaginary radices, mixed radix non-linear PCM

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명은 고속 연산기를 위한 래딕스-4 부스 연산기에 관한 것이다.
본 발명의 고속 연산기를 위한 래딕스-4 부스 연산기는 입력되는 X2k-1, X2k, X2k+1 3비트를 이용해 -y로 코딩해야 하는 경우 이진 보수의 경우 입력 비트를 반전시킨후 '1'의 값을 가산해줘야 하기 때문에, 보수의 경우 가산되는 +1 값을 생성하기 위한 Z0과 Z1의 제어신호를 두 개의 XOR로 생성시키고, 입력되는 신호 y값을 쉬프트할지 그대로 내려 보낼지 반전 시킬지를 판단하기 위한 S0과 S1의 제어신호를 XNOR 게이트로 생성하는 부호화기 및 부분 곱과 ADD의 두개의 결과 값을 생성하고, 상기 S0과 S1의 제어신호에 따라 현재 비트 또는 쉬프트되는 비트를 선택한 후, 두개의 AND 게이트를 이용해 결과값을 선택하는 복호기로 구성됨에 기술적 특징이 있다.
따라서, 본 발명의 고속 연산기를 위한 래딕스-4 부스 연산기는 게임용 단말의 경우 고속의 GPU를 사용하며, 그 주 구성은 부동 소수점을 가지는 곱셈기이다. 이러한 부동 소수점의 곱셈기는 100Mhz이상의 동작을 기본으로 요구하며, 0.35u 공정을 기준으로 했을때 계산량을 반으로 줄임으로써 고속의 연산기 구현을 가능하게 함으로써 데이터의 계산량이 많은 영상 또는 음성 처리에 관계되는 많은 분야에 적용 할 수 있는 효과가 있다.

Description

고속 연산기를 위한 래딕스-4 부스 연산기{Radix-4 booth encoder/decoder for fast arithmetic unit}
본 발명은 고속 연산기를 위한 래딕스-4 부스 연산기에 관한 것으로, 보다 자세하게는 입력되는 3개의 비트를 이용해 Z0, Z1, S0, S1의 네 개의 제어신호를 부호화기에서 생성해주는 부호화기와 부분 곱, ADD의 두개의 결과 값을 생성하도록 되어 있는 복호기에 관한 것이다.
종래의 래딕스-4(Radix-4) 부스(Booth) 복호기(decoder)와 부호화기(encoder)의 경우 도 1(가), (나)와 같으며, 입력되는 비트열에 따라 쉬프트(shift)할지 그 값을 그대로 쓸지 아니면 "0"으로 값을 가져 갈지 결정하게 된다.
종래의 병렬 곱셈기보다 빠른 연산을 위해서는 부스 부호화기와 복호기의 지연 속도를 줄여 주어야 하며, 기존 제안된 형태는 4개 또는 3개의 제어 신호를 만들고, 이를 이용해 원하는 결과 값을 얻는데 2개의 4:2 압축기의 지연 효과가 있어, 사실상 부분 곱을 줄여주는 효과를 감소시킨다.
도 2는 Floation point 곱셈기의 24-비트 곱셈기의 블럭도이다. 도 2를 살펴보면, 곱셈기의 부분 곱을 줄이기 위해, 래딕스-4 부스 알고리즘을 사용하게 되는데, 부스 부호화기와 부스 복호기에서 부분 곱을 생성시키면, 그 부분 곱을 CSA Adder Tree에서 부분 곱의 수를 반으로 줄일 수 있게 된다.
부스 알고리즘은 연속된 "1" 또는 "0"의 곱셈 특성을 이용하여 전체 부분 곱의 수를 줄이는 것이다. 우선, 두 이진보수의 곱 Z는
와 같다.
여기서, X를 다음과 같이 바꾸어 표현하면,
와 같이 표현되고, 이를 이용하면 전체 곱 Z는
와 같이 표현된다.
따라서, 멀티플리어(multiplier)의 비트를 이용해 3-비트 단위로 처리할 수 있게 되는 특징을 가지게 된다. 이렇게 함으로써 전체 부분 곱의 수를 N/2로 줄일 수 있는 특징을 가지게 되나, 부스 레코더(Booth recoder)와 멀티플 셀렉터(Multiple selector)에 의한 면적이 소요되는 단점을 가지게 된다. 이러한 수정 부스 알고리즘을 순서대로 정리하면 다음과 같이 나타낼 수 있다.
첫번째, 승수 X의 LSB 오른쪽에 "0"을 추가(X-1=0)
두번째, 승수 X의 비트수가 홀수이면, MSB를 1-비트 확장
세번째, X-1에서부터 3-비트씩 부스 레코딩
네번째, 부분 곱의 생성 및 가산
그러나, 수정 부스 알고리즘을 수행하기 위한 회로도의 연산 시간이 길어지게 되면 일반적으로 4:2 압축기만을 이용한 부분 곱 연산 방식보다 비효율적인 단점이 있었다.
따라서, 본 발명은 상기와 같은 종래 기술의 제반 단점과 문제점을 해결하기 위한 것으로, 고속의 곱셈기의 고속 구현을 위해 부분 곱의 수를 제한하는 방법이 필수적이어서 종래의 부스 알고리즘을 보다 효과적으로 구현하여 고속의 연산이 가능하도록 부스 알고리즘을 제공함에 본 발명의 목적이 있다.
본 발명의 상기 목적은 입력되는 X2k-1, X2k, X2k+1 3비트를 이용해 -y로 코딩해야 하는 경우 이진 보수의 경우 입력 비트를 반전시킨후 '1'의 값을 가산해줘야 하기 때문에, 보수의 경우 가산되는 +1 값을 생성하기 위한 Z0과 Z1의 제어신호를 두 개의 XOR로 생성시키고, 입력되는 신호 y값을 쉬프트할지 그대로 내려 보낼지 반전 시킬지를 판단하기 위한 S0과 S1의 제어신호를 XNOR 게이트로 생성하는 부호화기 및 부분 곱과 ADD의 두개의 결과 값을 생성하고, 상기 S0과 S1의 제어신호에 따라 현재 비트 또는 쉬프트되는 비트를 선택한 후, 두개의 AND 게이트를 이용해 결과값을 선택하는 복호기로 구성된 고속 연산기를 위한 래딕스-4 부스 연산기에 의해 달성된다.
본 발명의 상기 목적과 기술적 구성 및 그에 따른 작용효과에 관한 자세한 사항은 본 발명의 바람직한 실시예를 도시하고 있는 도면을 참조한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.
먼저, 도 3(가)는 본 발명에 따른 부스 부호화기이다.
도 3(가)를 살펴보면, 부호화기에서는 입력되는 3개의 비트를 이용해 Z0, Z1, S0, S1의 네 개의 제어신호를 부호화기에서 생성해주도록 하였다.
다음, 도 3(나)는 본 발명에 따른 부스 복호기이다.
부스 복호기의 결과 값의 "0"과 보수의 경우 +1 값을 생성하기 위해 Z0과 Z1 신호를 생성하며, 입력되는 신호 y값을 쉬프트 할지 그대로 내려 보낼지 반전 시킬지를 판단하기 위해 S0과 S1을 생성하도록 하였다.
부스 복호기에서는 부분 곱(ppj)과 ADD의 두개의 결과 값을 생성하도록 되어 있으며, 부스 부호화기의 S1과 S0에 따라 현재 비트 또는 쉬프트되는 비트를 선택한 후, 두개의 AND 게이트를 이용해 최종 결과 값을 선택하게 된다.
따라서, 본 발명의 고속 연산기를 위한 래딕스-4 부스 연산기는 게임용 단말의 경우 고속의 GPU를 사용하며, 그 주 구성은 부동 소수점을 가지는 곱셈기이다. 이러한 부동 소수점의 곱셈기는 100Mhz이상의 동작을 기본으로 요구하며, 0.35u 공정을 기준으로 했을때 계산량을 반으로 줄임으로써 고속의 연산기 구현을 가능하게 함으로써 데이터의 계산량이 많은 영상 또는 음성 처리에 관계되는 많은 분야에 적용 할 수 있는 효과가 있다.
도 1의 (가)와 (나)는 종래 기술을 나타낸 도로써,
(가)는 부스 복호기이고,
(나)는 부스 부호화기이다.
도 2는 Floation point 곱셈기의 24-비트 곱셈기의 블럭도이다.
도 3의 (가)와 (나)는 본 발명에 따른 도로써,
(가)는 본 발명에 따른 부스 부호화기이고,
(나)는 본 발명에 따른 부스 복호기이다.

Claims (3)

  1. 입력되는 X2k-1, X2k, X2k+1 3비트를 이용해 -y로 코딩해야 하는 경우 이진 보수의 경우 입력 비트를 반전시킨후 '1'의 값을 가산해줘야 하기 때문에, 보수의 경우 가산되는 +1 값을 생성하기 위한 Z0과 Z1의 제어신호를 두 개의 XOR로 생성시키고, 입력되는 신호 y값을 쉬프트할지 그대로 내려 보낼지 반전 시킬지를 판단하기 위한 S0과 S1의 제어신호를 XNOR 게이트로 생성하는 부호화기; 및
    부분 곱과 ADD의 두개의 결과 값을 생성하고, 상기 S0과 S1의 제어신호에 따라 현재 비트 또는 쉬프트되는 비트를 선택한 후, 두개의 AND 게이트를 이용해 결과값을 선택하는 복호기
    로 구성됨을 특징으로 하는 고속 연산기를 위한 래딕스-4 부스 연산기.
  2. 삭제
  3. 삭제
KR10-2002-0060203A 2002-10-02 2002-10-02 고속 연산기를 위한 래딕스-4 부스 연산기 KR100477509B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0060203A KR100477509B1 (ko) 2002-10-02 2002-10-02 고속 연산기를 위한 래딕스-4 부스 연산기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0060203A KR100477509B1 (ko) 2002-10-02 2002-10-02 고속 연산기를 위한 래딕스-4 부스 연산기

Publications (2)

Publication Number Publication Date
KR20040029789A KR20040029789A (ko) 2004-04-08
KR100477509B1 true KR100477509B1 (ko) 2005-03-17

Family

ID=37331147

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0060203A KR100477509B1 (ko) 2002-10-02 2002-10-02 고속 연산기를 위한 래딕스-4 부스 연산기

Country Status (1)

Country Link
KR (1) KR100477509B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590019B1 (ko) 2015-05-29 2016-02-01 충남대학교산학협력단 전력 효율 향상을 위한 멀티플렉서가 없는 바이패싱 구조를 구비한 연산기

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55105732A (en) * 1979-02-08 1980-08-13 Nippon Telegr & Teleph Corp <Ntt> Multiplier
JPH0619685A (ja) * 1992-07-02 1994-01-28 Nec Corp 並列乗算回路
KR19990072622A (ko) * 1998-02-19 1999-09-27 루센트 테크놀러지스 인크 중앙처리장치및디지털신호처리기용저전력승산기
KR20010019351A (ko) * 1999-08-26 2001-03-15 윤종용 부스 알고리즘을 이용한 곱셈기의 인코더

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55105732A (en) * 1979-02-08 1980-08-13 Nippon Telegr & Teleph Corp <Ntt> Multiplier
JPH0619685A (ja) * 1992-07-02 1994-01-28 Nec Corp 並列乗算回路
KR19990072622A (ko) * 1998-02-19 1999-09-27 루센트 테크놀러지스 인크 중앙처리장치및디지털신호처리기용저전력승산기
KR20010019351A (ko) * 1999-08-26 2001-03-15 윤종용 부스 알고리즘을 이용한 곱셈기의 인코더

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590019B1 (ko) 2015-05-29 2016-02-01 충남대학교산학협력단 전력 효율 향상을 위한 멀티플렉서가 없는 바이패싱 구조를 구비한 연산기

Also Published As

Publication number Publication date
KR20040029789A (ko) 2004-04-08

Similar Documents

Publication Publication Date Title
JPH0713741A (ja) アルファ合成演算器
US7400688B2 (en) Path metric normalization
US20010037349A1 (en) Logic circuits and carry-lookahead circuits
US5113362A (en) Integrated interpolator and method of operation
CN101010665A (zh) 乘法装置
KR100477509B1 (ko) 고속 연산기를 위한 래딕스-4 부스 연산기
Armand et al. Low power design of binary signed digit residue number system adder
US5777906A (en) Left shift overflow detection
JPH0450614B2 (ko)
KR0146065B1 (ko) 절대값 계산 회로
JP4354648B2 (ja) バイアスを招かないで固定少数点フォーマットに信号を圧縮するための方法と装置
KR100241077B1 (ko) 단일명령사이클내의 선택된 sin 3식을 연산하기 위한 방법
JP3540807B2 (ja) 加算器,乗算器,及び集積回路
US20030146860A1 (en) Exponent encoder circuit and mask circuit
KR100256103B1 (ko) Cout 신호 발생용 방법 및 장치
Sandeep et al. Design of area and power Potent Booth multiplier using multiplexer
JPS63239526A (ja) プライオリテイ・エンコ−ダ
Thabah et al. Improved Signed Binary Multiplier Through New Partial Product Generation Scheme
KR950015180B1 (ko) 고속연산형 가산기
KR100241066B1 (ko) 단일명령사이클에서의 A+sin(A)식의 연산
Kambhampati Power efficient modulo convolution
Majumder et al. Modified Carry Increment Adder (CSLA-CIA)
KR100241074B1 (ko) 단일명령사이클에서의 A-sin(A)식의 연산
KR20000001112A (ko) 개선된 부호 생성 방식을 이용한 곱셈 방법
Wang et al. New low power adders based on new representations of carry signals

Legal Events

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

Payment date: 20130111

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131231

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150109

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20151224

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20171207

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20190304

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 16