KR0153759B1 - 고속 승산-누산회로 - Google Patents

고속 승산-누산회로

Info

Publication number
KR0153759B1
KR0153759B1 KR1019930015193A KR930015193A KR0153759B1 KR 0153759 B1 KR0153759 B1 KR 0153759B1 KR 1019930015193 A KR1019930015193 A KR 1019930015193A KR 930015193 A KR930015193 A KR 930015193A KR 0153759 B1 KR0153759 B1 KR 0153759B1
Authority
KR
South Korea
Prior art keywords
carry
partial
quasi
multiplier
bits
Prior art date
Application number
KR1019930015193A
Other languages
English (en)
Other versions
KR950007293A (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 KR1019930015193A priority Critical patent/KR0153759B1/ko
Publication of KR950007293A publication Critical patent/KR950007293A/ko
Application granted granted Critical
Publication of KR0153759B1 publication Critical patent/KR0153759B1/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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명은 구조의 간소화를 도모함과 동시에 고속처리가 가능한 고속 승산-누산회로에 관한 것으로, 승수 Y를 소정 비트단위씩 레코딩한 후 피승수 X와 결합하여 부분적을 생성하는 부스 레코딩부와, 이 부스 레코딩부에서 출력되는 부분적과 준캐리 부분적 및 준가산 부분적을 가산하고 소정 비트 쉬프트하여 다음단에서 사용되어질 준캐리 부분적 및 준가산 부분적과 쉬프트된 가산 2비트 및 쉬프트된 캐리 2비트를 생성하는 가산 및 쉬프트부와, 이 가산 및 쉬프트부에서 출력된 두 개의 피연산자와 그의 출력측에 접속된 누산기에서 궤환되는 하나의 피연산자를 가산하는 캐리 룩어 헤드 가산기로 구성된다.

Description

고속 승산-누산 회로
본 발명은 고속 승산-누산 회로에 관한 것으로, 특히 조합 논리회로와 래치를 이용하여 승산 및 누산을 고속으로 실행하는데 적합한 고속 승산-누산 회로에 관한 것이다.
일반적으로, 승산-누산 회로는 DSP(Digital Signal Process : 이하 DSP라 약칭함)나 고선명 텔레비젼(HDTV) 등에 많이 응용되는 것으로서, 이와 같은 전형적인 형태의 승산-누산 회로로서는 제1도에 도시된 구성의 것이 있다.
동도면에 도시된 바와 같이, 종래의 승산-누산 회로는 부스 레코딩부(12), 월리스 트리부(14) 및 제1캐리 룩어헤드 가산기(16)로 이루어진 승산부(10)와, 제2캐리 룩어헤드 가산기(22)와 누산기(24)로 이루어진 누산부(20)로 구성된다.
따라서 상기한 바와 같은 구성을 갖는 종래의 승산-누산 회로는 먼저 첫번째 클럭에서 피승수 X와 승수 Y를 입력받아 부스 레코딩부(12)에서 n비트의 경우 n/2개의 부분곱을 복수의 캐리 세이브 가산기(CSA)로 이루어진 월리스 트리부(14)에서 부분가산을 행한 다음 제1캐리 룩어헤드 가산기(16)에서 최종가산을 행함으로써 승산과정이 종료된다.
그런 다음 상기와 같은 승산 과정이 완료되면, 제2캐리 룩어헤드 가산기(22)에서 제1캐리 룩어헤드 가산기(16)로부터의 2n비트의 승산 결과와 누산기(24)의 출력에서 궤환된 값을 가산하여 누산을 행하게 된다.
그러나 상기한 바와 같은 종래의 승산-누산 회로는 제1도에 도시되고 상술한 바와 같이, 승산부와 누산부가 각각 분리되어 승산 및 누산 과정을 수행함으로써, 그에 따른 시간 지연이 초래된다는 단점을 갖는다.
따라서 이와 같은 종래의 승산-누산 회로는 데이터의 고속처리가 요구되는 컴퓨터 시스템이나 DSP 등에는 적합하지가 않다.
따라서, 본 발명은 상기한 종래기술의 문제점에 착안하여 안출한 것으로서, 구조의 간소화를 도모함과 동시에 데이터의 고속 처리를 실현할 수 있는 고속 승산-누산 회로를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명은, 승수 Y를 소정 비트 단위씩 레코딩한 후 피승수 X와 결합하여 부분적을 생성하는 부스 레코딩 수단과; 상기 부스 레코딩 수단에서 출력되는 부분적과 준캐리 부분적 및 준가산 부분적을 가산하고 소정 비트 쉬프트하여 다음단에서 사용될 준캐리 부분적 및 준가산 부분적과 쉬프트된 가산 2비트 및 쉬프트된 캐리 2비트를 생성하는 가산 및 쉬프트 수단과; 상기 가산 및 쉬프트 수단에서 출력된 두 개의 피연산자와 그의 출력측에 접속된 누산기에서 궤환되는 하나의 피연산자를 가산하는 캐리 룩어헤드 가산기로 이루어진 고속 승산-누산 회로를 제공한다.
제1도는 종래의 승산-누산 회로를 간략하게 나타낸 블록구성도.
제2도는 본 발명에 따른 고속 승산-누산 회로의 블록구성도.
제3도는 본 발명에 따른 고속 승산-누산 회로의 각 부의 시뮬레이션 결과를 보여주는 도면.
* 도면의 주요부분에 대한 부호의 설명
32 : 부스 레코딩부 34 : 가산 및 시프트부
36 : 캐리 룩어헤드가산기 39 : 누산기
본 발명의 기타 목적과 여러가지 장점은 이 기술분야에 숙련된 사람들에 의해 첨부된 도면을 참조하여 하기에 기술되는 본 발명의 바람직한 실시예로부터 더욱 명백하게 될 것이다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 설명한다.
제2도는 본 발명에 따른 고속 승산-누산 회로의 블록구성도를 나타낸다.
동도면에 도시된 바와 같이, 본 발명의 고속 승산-누산 회로는 승산의 초기 단계에서 수정형 부스 알고리즘을 사용하여 n/2개의 부분적을 생성하는 부스 레코딩부(32)와, 이 부스 레코딩부(32)에서 입력되는 부분적과 준캐리 부분적 및 준가산 부분적을 가산하여 쉬프트된 가산 2비트 및 쉬프트된 캐리 2비트와 다음단에 입력되는 쉬프트된 준가산 부분적 및 준캐리 부분적을 생성하는 가산 및 쉬프트부(32)와, 이 가산 및 쉬프트부(32)의 출력과 그의 출력측에 접속된 누산기(38)에서 궤환된 출력을 가산하는 캐리 룩어헤드 가산기(36)로 구성된다.
이와 같이 구성된 본 발명은, 부스 레코딩부(32)에서 승수 Y가 n비트일 경우 n/2스텝으로 줄여 n/2개의 부분적을 생성한다.
즉, 승산의 초기 단계에서 수정형 부스 알고리즘을 사용하여 n/2개의 부분적을 생성한다. 여기서 n은 승수의 비트수이다.
다시 말해, 수정형 부스 알고리즘은 승수를 두 비트 단위씩 레코딩함으로써 생성되는 부분적 행의 수를 반으로 줄이게 된다.
이때, 하기의 표1에서와 같이 승수Y의 레코딩을 정의하는데 Zj가 '2'와 '-2'일 경우 피승수X에서 최하위 비트(LSB)에 '0'을 붙여 '2'를 곱하는 의미를 나타낸다. 그리고 '-1'과 '-2'는 2의 보수를 취한다. 그리고, 부호 확장은 피연산자의 최상위 비트(MSB)값으로 하고 이때 Zj가 '1'일 경우 '0'대신에 '1'로 확장하여 처리한다. 그 결과, XZn/2, XZn/2-1, ---, XZ2, XZ1, XZ0의 부분적이 생성된다.
그런 다음, 가산 및 쉬프트부(34)의 제1가산 및 쉬프트기(341)에서 첫번째 부분적, 접수된 준가산 부분적 및 준캐리 부분적을 가산하여 이로부터 쉬프트된 가산 2비트와 쉬프트된 캐리 2비트, 그리고 다음단에 입력될 쉬프트된 준가산 부분적과 준캐리 부분적을 생성한다.
다음에, 가산 및 쉬프트부(34)의 제2가산 및 쉬프트기(342)에서 상기 부스 레코딩부(32)의 두 번째 부분적과 상기 제1가산 및 쉬프트기(341)에서 출력되는 준가산 부분적과 준캐리 부분적을 가산하여 다음의 쉬프트된 가산 2비트 및 쉬프트된 캐리2비트와 쉬프트된 준가산 부분적 및 준캐리 부분적을 생성한다.
이러한 과정을 가산 및 쉬프트부(34)를 통해서 n/2번 계속하여 n/2개의 쉬프트된 가산 2비트 및 쉬프트된 캐리 2비트와 준가산 부분적(n+2비트) 및 준캐리 부분적을 생성한다.
따라서, 상기 가산 및 쉬프트부(34)에서는 세 개의 피연산자를 캐리 세이브 가산부 형태로 처리한 후 승수Y를 2비트씩 레코딩하였기 때문에 2비트씩 오른쪽으로 쉬프트하여 출력한다. 이때, 준캐리 부분적과 준가산 부분적은 각각 최상위 비트(MSB)값으로 2비트 쉬프트된다.
이때, 세 개의 연산자 ina,inb,inc를 입력으로 하는 알고리즘의 정의는 다음과 같다.
준가산 부분적
tp(i)=(ina(i) x or inb(i) x or inc(i))
준캐리 부분적
is(i)=(ina(i-1) and inb(i-1)) or (ina(i-1) and inc(i-1)) or
(inb(i-1) and inc(i-1)) or (ina(i-1) and inb(i-1))
∴ ina(-1)=0, inb(-1)=0, inc(-1)=0.
그리고 승산과정의 마지막 단계에서 가산과 누산기능을 통합한 세 개의 피연산자를 갖는 캐리 룩어헤드 가산기(36)로서, 가산 및 쉬프트부(34)에서 출력된 두 개의 피연산자와 그의 출력측에 접속된 누산기(38)에서 궤환된 하나의 피연산자를 가산함으로서, 최종적으로 승산-누산 동작이 종료된다. 이때, 세 개의 피연산자 ina, inb, inc를 입력으로 하는 알고리즘의 정의는 다음과 같다.
캐리전파
p(i)=ina(i) xor inb(i) xor inc(i)
캐리생성
g(i)=ina(i) and inb(i) and inc(i)
다음 캐리
c(i+1)=g(i) or (p(i) and c(i))
가산 결과
s(i)=p(i) xor c(i))
실질적으로 입력이 9비트인 피승수 X와 승수Y가 첫 번째 클럭에서 래치되어 부스 레코딩부(32)에서 5개의 부분적으로 생성되며, 이에 대한 시뮬레이션 결과는 제3도(c)에 도시되어 있다. 동도면에서 (a)는 부스 레코딩부(32)의 시뮬레이션 결과를 나타내고, (b)는 가산 및 쉬프트부(34)의 시뮬레이션 결과를 나타낸다.
이상 설명한 바와 같이 본 발명에 따른 고속 승산-누산 회로에 의하면, 승산의 마지막 단계에서 누산 과정을 통합하여 처리하도록 구성함으로써 구조가 간소화될뿐만 아니라 데이터의 고속처리를 실현할 수 있다.

Claims (3)

  1. 승수Y를 소정 비트 단위씩 레코딩한후 피승수X와 결합하여 부분적을 생성하는 부스 레코딩 수단과; 상기 부스 레코딩 수단에서 출력되는 부분적과 준캐리 부분적 및 준가산 부분적을 가산하고 소정 비트 쉬프트하여 다음단에서 사용될 준캐리 부분적 및 준가산 부분적과 쉬프트된 가산 2비트 및 쉬프트된 캐리 2비트를 생성하는 가산 및 쉬프트 수단과; 상기 가산 및 쉬프트 수단에서 출력된 두 개의 피연산자와 그의 출력측에 접속된 누산기에서 궤환되는 하나의 피연산자를 가산하는 캐리 룩어헤드 가산기로 이루어진 고속 승산-누산 회로.
  2. 제1항에 있어서, 상기 부스 레코딩 수단은 승수를 2비트 단위씩 레코딩하는 것을 특징으로 하는 고속 승산-누산 회로.
  3. 제1항에 있어서, 상기 가산 및 쉬프트 수단은 준캐리 부분적과 준가산 부분적을 각각 최상위 비트값으로 2비트 쉬프트하는 것을 특징으로 하는 고속 승산-누산 회로.
KR1019930015193A 1993-08-05 1993-08-05 고속 승산-누산회로 KR0153759B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930015193A KR0153759B1 (ko) 1993-08-05 1993-08-05 고속 승산-누산회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930015193A KR0153759B1 (ko) 1993-08-05 1993-08-05 고속 승산-누산회로

Publications (2)

Publication Number Publication Date
KR950007293A KR950007293A (ko) 1995-03-21
KR0153759B1 true KR0153759B1 (ko) 1998-11-16

Family

ID=19360805

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930015193A KR0153759B1 (ko) 1993-08-05 1993-08-05 고속 승산-누산회로

Country Status (1)

Country Link
KR (1) KR0153759B1 (ko)

Also Published As

Publication number Publication date
KR950007293A (ko) 1995-03-21

Similar Documents

Publication Publication Date Title
US5222037A (en) Floating-point processor for performing an arithmetic operation on fixed-point part data with high speed rounding of a result
EP0101318B1 (en) Digital filters
US5177703A (en) Division circuit using higher radices
EP0416869B1 (en) Digital adder/accumulator
JPH0640301B2 (ja) 並列乗算回路
JP3556950B2 (ja) 高速算術演算装置のけた上げ先見加算器段の数を減少させる構造及び方法
US6127863A (en) Efficient fractional divider
US4677583A (en) Apparatus for decimal multiplication
JPH04270415A (ja) 高性能加算器
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
KR0153759B1 (ko) 고속 승산-누산회로
JP3660075B2 (ja) 除算装置
KR0147942B1 (ko) 승산기에서의 부스 레코딩회로
US5268858A (en) Method and apparatus for negating an operand
EP0472030A2 (en) Method and apparatus for modifying two's complement multiplier to perform unsigned magnitude multiplication
US6484193B1 (en) Fully pipelined parallel multiplier with a fast clock cycle
KR0141870B1 (ko) 고속 파이프라인 승산회로
US6004022A (en) Product sum operation apparatus
JPH11126157A (ja) 乗算方法および乗算回路
JP2864598B2 (ja) ディジタル演算回路
JP2608090B2 (ja) 高基数非回復型除算装置
JPS6259828B2 (ko)
JP3122622B2 (ja) 除算装置
JP3130797B2 (ja) 積和演算処理方法およびその装置
KR100386979B1 (ko) 갈로아체상에서 비트 직렬 승산기의 병렬화 방법 및 이를이용한 직병렬 승산기

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: 20010629

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee