KR100295646B1 - 왈리스 트리를 이용한 곱셈방법 - Google Patents

왈리스 트리를 이용한 곱셈방법 Download PDF

Info

Publication number
KR100295646B1
KR100295646B1 KR1019980005476A KR19980005476A KR100295646B1 KR 100295646 B1 KR100295646 B1 KR 100295646B1 KR 1019980005476 A KR1019980005476 A KR 1019980005476A KR 19980005476 A KR19980005476 A KR 19980005476A KR 100295646 B1 KR100295646 B1 KR 100295646B1
Authority
KR
South Korea
Prior art keywords
partial
sum
carry
multiplication
bit
Prior art date
Application number
KR1019980005476A
Other languages
English (en)
Other versions
KR19990070555A (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 KR1019980005476A priority Critical patent/KR100295646B1/ko
Publication of KR19990070555A publication Critical patent/KR19990070555A/ko
Application granted granted Critical
Publication of KR100295646B1 publication Critical patent/KR100295646B1/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/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5318Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with column wise addition of partial products, e.g. using Wallace tree, Dadda counters

Landscapes

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

Abstract

본 발명은 곱셈기에서 칩 사이즈와 연산속도를 개선하는 기술에 관한 것으로, 부분적 라인을 연산할 때 소요되는 시간을 줄일 수 있도록 하기 위하여, 소정 비트수의 승수(Mlier)와 피승수(MCND)를 곱하여 얻어진 다수의 부분적 라인(PP1-PP8)을 두 그룹으로 나누어 동시에 4-2비트 변환을 수행하는 제1단계(ST11),(ST12)와; 상기 제1단계(ST11),(ST12)에서 획득된 부분합과 부분캐리를 4-2비트 변환하여 소정 비트수의 캐리와 합을 구하는 제2단계(ST21)와; 상기 제2단계(ST21)의 연산결과를 고속으로 가산처리하여 최종의 곱셈결과를 얻는 제3단계(ST31)를 통해 곱셈을 연산하도록 하였다.

Description

왈리스 트리를 이용한 곱셈 방법{MULTIPLICATION METHOD USING WALLACE TREE}
본 발명은 곱셈기에서 칩 사이즈와 연산속도를 개선하는 기술에 관한 것으로, 특히 곱셈 연산과정에서 부스 알고리즘(Booth algorithm)과 왈리스 트리(Wallace Tree)를 이용하여 곱셈 연산속도를 향상시키는데 적당하도록한 왈리스 트리를 이용한 곱셈 방법에 관한 것이다.
도 1은 종래기술에 의한 부스 곱셈기의 블록도로서 이에 도시한 바와 같이, 소정 비트의 피승수(MCND)와 소정 비트의 승수(Mlier)에 대한 부분적 연산을 수행하는 부스 엔코더 및 부분적신호 발생기(10)와; 상기 부스 엔코더 및 부분적신호 발생기(10)의 종단 전가산기에서 출력되는 부분캐리(Pcry)와 부분합(Psum)을 가산처리하여 최종 31bit의 곱셈결과를 출력하는 종단 가산기(20)로 구성되었다.
도 2는 도 1에서 부스 엔코더 및 부분적신호 발생기(10)의 상세 블록도로서 이에 도시한 바와 같이, 승수(MCND) 중에서 자신에게 할당된 소정 비트값을 부스 엔코딩방식으로 엔코딩하는 부스 엔코더(11A-11C)와; 상기 부스 엔코더(11A-11C)의 출력값과 피승수(Mlier)를 대상으로 부분적을 계산하는 부분적 연산기(12A-12C)와; 상기 부분적 연산기(12A-12C)에서 출력되는 부분합과 부분캐리를 구하는 전가산기(FA1-FA7)로 구성되었다.
이와 같이 구성된 종래 곱셈기의 곱셈 연산과정을 도 3을 참조하여 설명하면 다음과 같다.
부스 엔코더 및 부분적신호 발생기(10)를 통해 생성된 (n+1)bit×(n/2)라인의 부분적(PP: Partial Product)의 합이 곧 곱셈 연산의 결과가 된다. 예로써, 도 2에서와 같이 16bit의 피승수(Mlier)에 16bit의 승수(MCND)를 곱하는 16bit×16bit 곱셈 연산의 경우 17bit×8라인의 PP가 생성되는데, 7단의 전가산기(FA1-FA7) 라인 즉, 7라인×15개의 FA를 사용하게 되므로 7단의 FA 연산시간만큼 지연시간이 발생되었다.
이렇게 7단의 전가산기(FA1-FA7) 라인을 통과하면 31bit의 캐리(Pcry)와 31bit의 합(Psum)이 발생되고, 종단 가산기(20)는 그 캐리(Pcry)와 합(Psum)을 가산처리하여 최종 31bit의 곱셈결과를 출력하게 된다.
16bit×16bit 곱셈 연산의 경우 도 3에서와 같이, 17bit의 8라인에 대해 각 bit의 웨이트(weight)에 맞추어 7단의 전가산기(FA1-FA7)로 31bit의 부분합(S0-S30)과 31bit의 부분캐리(C0-C30)를 구하고, 이들을 가산처리하여 최종의 곱셈 결과치를 얻게 된다.
그런데, 한 개의 전가산기는 두 개의 익스클루시브 오아게이트(XOR)를 포함하므로 상기와 같이 7단의 전가산기(FA1-FA7) 라인을 사용하는 경우 7×2·XOR = 14XOR 만큼의 지연시간이 발생된다.
이와 같이 종래의 곱셈기에 있어서는 8라인의 부분적 결과를 7단의 전가산기를 이용하여 순차적으로 더하게 되므로 7단 전가산기의 순차 연산시간만큼 연산시간이소요되는 결함이 있었다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 왈리스 트리 구조를 이용하여 곱셈 연산을 고속으로 수행하는 왈리스 트리를 이용한 곱셈 방법을 제공함에 있다.
도 1은 종래의 부스 알고리즘을 이용한 곱셈 블록도.
도 2는 도 1에서 부스 엔코더 및 부분적신호 발생기의 상세 블록도.
도 3은 종래기술에 의한 부분적 연산처리 설명도.
도 4는 본 발명의 왈리스 트리를 이용한 곱셈 방법의 설명도.
도 5는 본 발명에 적용되는 왈리스 트리 맵의 표.
도 6은 본 발명에 의한 4-2비트 변환기의 예시 블록도.
도 7은 본 발명에 의한 곱셈 연산회로의 일실시 예시도.
***도면의 주요 부분에 대한 부호의 설명***
71 : 음수 처리부
FA11, FA12,FA21, FA22: 전가산기
본 발명의 목적을 달성하기 위한 왈리스 트리를 이용한 곱셈 방법은 소정 비트수의 승수와 피승수를 곱하여 얻어진 다수의 부분적 라인을 왈리스 트리맵을 이용하여 계산하기 위하여, 그 다수의 부분적 라인을 두 그룹으로 나누어 동시에 4-2비트 변환을 수행하는 제1단계(ST11),(ST12)와; 상기 제1단계(ST11),(ST12)에서 획득된 부분합과 부분캐리를 4-2비트 변환하여 소정 비트수의 캐리와 합을 구하는 제2단계(ST21)와; 상기 제2단계(ST21)의 연산결과를 고속으로 가산처리하여 최종의 곱셈결과를 얻는 제3단계(ST31)로 이루어진다.
이와 같이 이루어지는 본 발명의 작용을 첨부한 도 4 내지 도 7을 참조하여 상세히 설명하면 다음과 같다.
예로써, 16bit×16bit 곱셈 연산의 경우 8라인의 부분적(PP1-PP8)이 발생되는데, 이 8라인의 부분적(PP1-PP8)을 계산할 때 종래와 같이 7단의 전가산기를 사용하지 않고 도 5와 같은 왈리스 트리맵을 이용하여 계산하게 된다.
즉, 부분적(PP1-PP4),(PP5-PP8)을 각각 동시에 4-2비트 변환하고, 그 결과를 다시 4-2비트 변환하여 31bit의 캐리(Pcry)와 31bit의 합(Psum)을 발생한 후 종단 가산기(20)를 통해 그 캐리(Pcry)와 합(Psum)을 고속으로 가산처리하여 최종 31bit의곱셈결과를 출력하게 된다.
상기 4-2비트 변환과정을 도 6을 참조하여 좀더 상세히 설명하면 다음과 같다.
전가산기(FA11),(FA12)는 3비트 입력(A-C),(E-G)을 동시에 가산한다. 전가산기(FA21)는 이전 단에서 발생된 캐리입력(Cin), 상기 전가산기(FA11)의 합출력, 입력(D)을 가산하여 부분합(Psum), 부분캐리(Pcry)를 발생하고, 이와 동시에 전가산기(FA22)는 상기 전가산기(FA11)의 캐리출력(Cout), 상기 전가산기(FA12)의 합출력, 입력(H)을 가산하여 부분합(Psum), 부분캐리(Pcry)를 발생한다.
따라서, 1단계에서 4-2비트 변환을 하는데 소요되는 시간은 2단의 전가산기(2FA)에서 가산하는데 소요되는 시간과 동일하다.
도 4 및 도 5에서 4-2비트 변환단계(ST11),(ST12)가 동시에 수행되고, 여기서 각기 발생된 2비트의 부분합과 부분캐리가 다음의 4-2비트 변환단계(ST21)로 전달되어 다시 도 6에서와 같이 4-2비트 변환되므로 17bit의 8라인의 부분합을 구하는 경우 4-2비트 변환에 소요되는 총 시간은 2FA×2 = 4FA의 시간이 된다. 단, 상기 4-2비트 변환단계(ST11),(ST12)에서 음수를 처리하는 경우 하나의 반가산기(HA)를 더 필요로하게 되므로 이와 같은 경우 소요되는 총 시간은 4FA + 1HA = 9XOR의 시간이 된다.
따라서, 동일 조건에서 종래의 연산속도와 비교해 보면 (14-9)/14 × 100 = 35.7%의 속도 향상을 얻을 수 있게 된다.
도 7은 상기와 같은 연산원리를 적용하여 구현한 부분적 연산기의 일실시 예시도를보인 것으로, 여기서, T1-T47은 4-2비트 변환기, HA1-HA20은 반가산기, FA1-FA5는 전가산기이다.
이상에서 상세히 설명한 바와 같이 본 발명은 곱셈 연산과정에서 부스 알고리즘과 왈리스 트리를 이용하여 부분적 연산단계를 간략화 함으로써 그만큼 곱셈연산 속도가 향상되고, 칩의 면적이 줄어드는 효과가 있다.

Claims (2)

  1. 소정 비트수의 승수와 피승수를 곱하여 얻어진 다수의 부분적 라인을 왈리스 트리맵을 이용하여 계산하기 위하여, 그 다수의 부분적 라인을 두 그룹으로 나누어 동시에 4-2비트 변환을 수행하는 제1단계와; 상기 제1단계에서 획득된 부분합과 부분캐리를 4-2비트 변환하여 소정 비트수의 캐리와 합을 구하는 제2단계와; 상기 제2단계의 연산결과를 고속으로 가산처리하여 최종의 곱셈결과를 얻는 제3단계로 이루어지는 것을 특징으로 하는 왈리스 트리를 이용한 곱셈 방법.
  2. 제1항에 있어서, 4-2비트 변환은 전가산기(FA11),(FA12)에서 3비트 입력(A-C), (E-G)을 동시에 가산하는 단계와; 전가산기(FA21)에서는 이전 단에서 발생된 캐리입력(Cin), 상기 전가산기(FA11)의 합출력, 입력(D)을 가산하여 부분합(Psum), 부분캐리(Pcry)를 발생하고, 이와 동시에 전가산기(FA22)에서는 상기 전가산기(FA11)의 캐리출력(Cout), 상기 전가산기(FA12)의 합출력, 입력(H)을 가산하여 부분합(Psum), 부분캐리(Pcry)를 발생하는 단계로 이루어지는 것을 특징으로 하는 왈리스 트리를 이용한 곱셈 방법.
KR1019980005476A 1998-02-21 1998-02-21 왈리스 트리를 이용한 곱셈방법 KR100295646B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980005476A KR100295646B1 (ko) 1998-02-21 1998-02-21 왈리스 트리를 이용한 곱셈방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980005476A KR100295646B1 (ko) 1998-02-21 1998-02-21 왈리스 트리를 이용한 곱셈방법

Publications (2)

Publication Number Publication Date
KR19990070555A KR19990070555A (ko) 1999-09-15
KR100295646B1 true KR100295646B1 (ko) 2001-08-07

Family

ID=37527868

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980005476A KR100295646B1 (ko) 1998-02-21 1998-02-21 왈리스 트리를 이용한 곱셈방법

Country Status (1)

Country Link
KR (1) KR100295646B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102079631B1 (ko) 2019-10-02 2020-02-20 이동하 초음파 세척장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010108755A (ko) * 2000-05-31 2001-12-08 박종섭 24 비트 곱셈기

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980027478A (ko) * 1996-10-16 1998-07-15 김광호 승산기

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980027478A (ko) * 1996-10-16 1998-07-15 김광호 승산기

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102079631B1 (ko) 2019-10-02 2020-02-20 이동하 초음파 세척장치

Also Published As

Publication number Publication date
KR19990070555A (ko) 1999-09-15

Similar Documents

Publication Publication Date Title
JP3244506B2 (ja) 小型乗算器
US5784305A (en) Multiply-adder unit
JPH10307706A (ja) 半及び全加算器を用いたウォレスツリー乗算器
CN116205244B (zh) 一种数字信号处理结构
CN110458277B (zh) 适用于深度学习硬件加速器的可配置精度的卷积硬件结构
KR100295646B1 (ko) 왈리스 트리를 이용한 곱셈방법
Kumar et al. Analysis of high speed radix-4 serial multiplier
CN110825346A (zh) 一种低逻辑复杂度的无符号近似乘法器
Kodali et al. Fpga implementation of 160-bit vedic multiplier
US5999962A (en) Divider which iteratively multiplies divisor and dividend by multipliers generated from the divisors to compute the intermediate divisors and quotients
Daud et al. Hybrid modified booth encoded algorithm-carry save adder fast multiplier
Jadhav et al. A novel high speed FPGA architecture for FIR filter design
Pathan et al. An optimised 3× 3 shift and add multiplier on FPGA
JP2765516B2 (ja) 積和演算器
EP1710689A1 (en) Combining circuitry for multipliers
Bokade et al. CLA based 32-bit signed pipelined multiplier
JPH01251133A (ja) 乗算回路及び方法
CN115857873B (zh) 乘法器、乘法计算方法、处理系统及存储介质
KR100580255B1 (ko) 복수 개의 동일한 부분곱 계산 모듈을 포함하는 다중곱셈기 및 다중 곱셈 방법
Sandeep et al. Design of area and power Potent Booth multiplier using multiplexer
JP2556300B2 (ja) 乗算装置
KR19990017434A (ko) 고속 곱셈장치
Yamani et al. Area Efficient Sparse-4 Diminished-1 Modulo 2 n+ 1 Adder
Reddy et al. A high speed, high Radix 32-bit Redundant parallel multiplier
Bajaj et al. Efficient Hardware Implementation of High-Speed Recursive Vedic Squaring Architecture on FPGA

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

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20140421

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee