KR0147942B1 - 승산기에서의 부스 레코딩회로 - Google Patents

승산기에서의 부스 레코딩회로

Info

Publication number
KR0147942B1
KR0147942B1 KR1019940019847A KR19940019847A KR0147942B1 KR 0147942 B1 KR0147942 B1 KR 0147942B1 KR 1019940019847 A KR1019940019847 A KR 1019940019847A KR 19940019847 A KR19940019847 A KR 19940019847A KR 0147942 B1 KR0147942 B1 KR 0147942B1
Authority
KR
South Korea
Prior art keywords
multiplier
value
booth
bit
recording
Prior art date
Application number
KR1019940019847A
Other languages
English (en)
Other versions
KR960009713A (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 KR1019940019847A priority Critical patent/KR0147942B1/ko
Priority to US08/514,048 priority patent/US5691930A/en
Priority to JP7227305A priority patent/JPH0869372A/ja
Publication of KR960009713A publication Critical patent/KR960009713A/ko
Application granted granted Critical
Publication of KR0147942B1 publication Critical patent/KR0147942B1/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
    • G06F7/5334Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
    • G06F7/5336Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
    • G06F7/5338Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA
    • 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
    • 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
    • G06F7/5332Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by skipping over strings of zeroes or ones, e.g. using the Booth Algorithm

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

본 발명은 구조가 간단하고 처리되는 스텝수를 줄임으로서 고속승산이 가능하도록 한 승산기에서의 부스 레코딩회로에 관한 것으로, 이를 위하여 입력되는 상기 레코딩값과 상기 피승수값을 소정비트수로 각각 분할하고, 분할된 소정비트수의 승수값에 의거하여 분할된 각 승수의 비트값에 대해 선택적으로 부분적을 생성하는 병렬연결된 복수의 부스 레코더로 구성함으로서, 하드웨어의 구성이 간단하면서도 승산과정이 중요한 요소인 스텝수를 줄여 고속승산이 가능하므로 고속을 요하는 디지털 시스템등에 광범위하게 이용할 수 있는 것이다.

Description

승산기에서의 부스 레코딩 회로
본 발명은 고속 승산 회로에 관한 것으로, 특히 승산의 초기 단계에서 수정형 부스 알고리즘을 사용하여 n/2개의 부분적을 생성하는 데 적합한 부스 레코딩 회로에 관한 것이다.
통상적으로, 승산 회로는 DSP(Digital Signal Process)나 고선명 텔레비젼(HD-TV) 등에 많이 응용되는 것으로서, 이와같은 전형적인 형태의 승산 회로로서는 제 5 도에 도시된 바와같은 구성의 것이 있다.
제 5 도에 도시된 바와같이 종래의 승산 회로는 부스 레코딩부(10), 윌리스 트리부(wallace tree)(20) 및 가산부(30)로 구성된다. 또한, 부스 레코딩부(10)는 부스 엔코더(12)와 부분적 생성부(14)를 포함한다.
상기한 바와같은 구성을 갖는 종래의 승산 회로는 부스 레코딩부(10)내의 부스 엔코더(12)에서 승스(Y) n 비트의 레코딩값이 생성되어 부분적 생성부(14)로 입력되면, 부분적 생성부(14)에서는 부스 엔코더(12)로부터의 레코딩값과 외부에서 입력되는 n 비트의 피승수(X)를 결합하여 부분적을 생성한다.
그런다음, 상기한 바와같이 부분적 생성부(14)에서 생성된 부분적들은 웰리스 트리부(20)를 통해 두 개의 행으로 감축되고, 이 두 개의 행이 다시 가산부(30)를 통해 병렬 가산되므로서 최종적인 승산값을 얻을 수가 있게 된다.
그러나, 상술한 바와같은 종래의 승산 회로는 부분적을 생성하는 부스 엔코더와 부분적 생성부가 구별되어 있어 승수(Y)의 비트수가 많을 경우 구조가 복잡해질 뿐만 아니라 이로 인해 시간지연이 야기되는 문제가 있으며, 또한 이로인해 속도의 제한이 따르게 되어 고속을 요하는 디지털 시스템에의 채용이 어렵다는 문제가 있다.
따라서, 본 발명은 상기한 종래기술의 문제점을 해소하기 위한 것으로, 간단한 회로 구성을 이용하여 승산을 위해 처리되는 스텝수를 줄임으로서 고속 승산을 실현할 수 있는 승산기에서의 부스 레코딩 회로를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명은, 입력되는 소정수의 승수에 대한 비트 단위의 레코딩값과 피승수값을 결합하여 부분적을 생성하는 승산기에서의 부스 레코딩 회로에 있어서, 입력되는 상기 레코딩값과 상기 피승수값을 m비트로 각각 분할하고, 불한된 n비트의 승수값에 의거하여 분할된 각 승수의 비트값에 대해 선택적으로 부분적을 생성하는 병렬 연결된 복수의 부스 레코더를 포함하며, 상기 각 부스 레코더는: 입력 승수에 대한 비트 단위의 레코딩값에 의거하여 m비트의 피승수 값에 대해 2 비트 사인확장한 제 1 오퍼랜드와 1 비트 사인확장한 제 2 오퍼랜드를 각각 인버팅하기 위한 두 개의 인버터; 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, 상기 인버팅된 제 1 오퍼랜드 및 제 2 오퍼랜드중의 하나를 그 출력으로 선택하는 제 1 멀티플렉서; 상기 멀티플렉서의 출력값에 소정의 값을 가산하기 위한 가산기; 및 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, m비트의 피승수값에 대해 2 비트 사인확장한 상기 제 1 오퍼랜드와 1 비트 사인확장한 상기 제 2 오퍼랜드 및 상기 가산기로부터 제공되는 선택된 출력 오퍼랜드중의 하나를 선택 출력함으로써 최종 부분적을 생성하는 제 2 멀티플랙서로 구성된 것을 특징으로 하는 승산기에서의 부스 레코딩 회로를 제공한다.
제 1 도는 전형적인 통상의 승산 회로에 대한 개략적인 블록구성도
제 2 도는 본 발명의 바람직한 실시예에 따른 승산기에서의 부스 레코딩 회로에 대한 블록구성도
제 3 도는 제 2 에 도시된 부스 레코더의 세부적인 블록구성도
제 4 도는 본 발명에 따라 고속 승산을 수행한 시뮬레이션 결과를 보여주는 도면
제 5 도는 종래의 부스 레코딩 회로를 채용한 통상의 승산 회로에 대한 개략적인 블록구성도.
*도면의 주요부분에 대한 부호의 설명
40-1내지 40-5:부스 레코더 42a, 42b:인버터
44, 48:멀티플렉서 46:가산기
본 발명의 기타 목적과 여러 가지 장점은 이 기술분야에 숙련된 사람들에 의해 첨부된 도면을 참조하여 하기에 기술되는 본 발명의 바람직한 실시예로부터 더욱 명확하게 될 것이다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.
제 1 도는 본 발명에 따른 부스 레코딩 회로를 채용 가능한 통상의 승산 회로에 대한 블록구성도를 나타낸다. 동도면으로부터 알 수 있는 바와같이 본 발명을 채용하는 승산 회로가 제 5 도에 도시된 종래 승산 회로와 다른점은 부스 레코딩부(10)의 구조에 있다.
제 1 도를 참조하면, 본 발명의 부스 레코딩 회로는, 일예로서 제 2 도에 도시된 바와같이, 승수 Y와 피승수 X를 소정수로 분할하여 각각 부분적을 생성하는 5개의 부스 레코더(40-1 내지 40-5)로 구성되며, 수정형 부스 알고리즘을 이용하여 승수 Y 가 n 비트일 경우 n/2개의 부분적을 생성한다. 이러한 각 부스 레코더에서의 구체적인 동작과정에 대해서는 첨부된 제 3 도를 참조하여 후에 상세하게 기술될 것이다.
통상적으로, 수정형 부스 알고리즘은 승수 Y를 2 비트 단위씩 레코ㄷ딩함으로서 생성되는 부분적 행의 수를 반으로 줄이게 되는데 실질적으로 이러한 과정은 승산 회로의 승산과정에서 처리속도에 관한 중요한 요소가 된다.
보다 상세하게 본 발명에 따라 승수 Y 에 대한 비트 분할은 다음과 같다.
그런다음, 본 발명에 따른 부스 레코딩 회로는 각각의 블록에 승수 Y를 3 비트씩 분할하여 후술되는 두 개의 멀티플렉서(제 3 도의 44 및 48)의 선택신호로서 사용된다.
즉, 제 2 도를 참조하면, 각 부스 레코딩부(10)는 5개의 부스 레코더(40-1 내지 40-5)를 포함하고, 각 부스 레코더(40-1 내지 40-5)는 m비트(예를들면, 3비트)로 된 피승수(X)와 n비트로 된 승수(Y)로부터 얻어진 각 데이터 그룹을 입력으로하여 부분적을 각각 생성하는 데, 이러한 각 부스 레코더(40-1 내지 40-5)가 m비트의 피승수와 n비트의 승수에 의거하여 부분적을 각각 생성하는 과정에 대하여 첨부된 도 3을 참조하여 후에 상세하게 기술될 것이다.
다시 제 1도를 참조하면, 웰리스 트리부(20)에서는 생성된 부분적들을 두 개의 행으로 감축, 즉 부스 레코딩부(10)로부터 제공되는 5개의 부분적을 가산하여 최종 부분적과 캐리 부분적을 생성하며, 여기에서 생성된 최종 부분적과 캐리 부분적은 다음단의 가산부(30)로 제공된다.
따라서, 가산부(30)에서는 최종 부분적과 캐리 부분적을 병렬 가산함으로써 최종적인 승산값을 생성하게 된다.
제 3 도는 제 2 도에 도시된 부스 레코더의 세부적인 블록구성도를 나타낸다. 동도면에 도시된 바와같이, 본 발명에 채용되는 부스 레코더는 두 개의 인버터(42a, 42b), 두 개의 멀티플렉서(44,48) 및 하나의 가산기(46)를 포함한다.
다음에, 상기한 바와같은 구성을 갖는 부스 레코더의 동작 과정에 대하여 설명한다. 여기에서, 설명의 편의를 위해 일예로서 승수 Y 가 9비트인 경우라 가정한다.
먼저, 피승수 X를 X(8)X(8)X 와 같이 2 비트 사인 확장한 오퍼랜드와, 피승수 X를 1 비트 사인 확장하고 이것에 2를 곱한 의미인 LSB에 '0'을 붙인 X(8)X' 0'의 오퍼랜드을 만든다. 다음에, 이러한 오퍼랜드는 두 개의 인버터(42a, 42b)를 경유하여 멀티플렉서(44)로 입력된다.
따라서, 상기와 같이 피승수값이 입력되면 멀티플렉서(44)는 3 비트로 분할된 승수 Y에 대한 레코딩값에 의거하여 두 입력중의 한 입력을 선택한다. 즉, 3 비트로 분할된 승수 Y는 피승수의 선택 코드로써 이용되는 데, 본 발명에 따라 멀티플렉서(44)에서 출력되는 출력값은 다음의 표와 같다.
다음에, 상술한 바와같이 멀티플렉서(44)에서 출력되는 값은 가산기(46)를 통해 0 값이 더해진 다음, 멀티플렉서(48)에 입력된다.
따라서, 멀티플렉서(48)는 3 비트로 분할된 승수 Y 에 의거하여 피승수 X를 X(8)X(8)X 와 같이 2 비트 사인 확장한 오퍼랜드와 피승수 X를 1 비트 사인 확장하고 이것에 2를 곱한 의미인 LSB에 '0'을 붙인 X(8)X' 0'의 오퍼랜드인 두 개의 오퍼랜드와, 가산기(46)로부터 출력되는 오퍼랜드를 중의 하나를 선택하여 최종 부분적을 생성한다.
즉, 본 발명에 따라 멀티플렉서(48)에서 출력되는 출력값은 다음과 같다.
본 발명에 따라 상술한 바와같은 과정을 통해 승산된 시뮬레이션 결과가 제 4 도에 도시되어 있다.
이상 설명한 바와같이 본 발명의 부스 레코딩 회로에 따르면, 승수와 피승수를 소정의 비트수로 분할하고 분할된 승수에 의거하여 선택적으로 부분적을 생성하도록 함으로서 하드웨어의 구성이 간단하면서도 승산과정의 중요한 요소인 스텝수를 줄여 고속 승산이 가능하므로, 고속을 요하는 디지털 시스템 등에 광범위하게 이용할 수가 있다.

Claims (3)

  1. 입력되는 소정수의 승수에 대한 비트 단위의 레코딩값과 피승수값을 결합하여 부분적을 생성하는 승산기에서의 부스 레코딩 회로에 있어서, 입력되는 상기 레코딩값과 상기 피승수값을 m비트로 각각 분할하고, 분할된 n비트의 승수값에 의거하여 분할된 각 승수의 비트값에 대해 선택적으로 부분적을 생성하는 병렬 연결된 복수의 부스 레코더를 포함하며, 상기 각 부스 레코더는: 입력 승수에 대한 비트 단위의 레코딩값에 의거하여 m비트의 피승수값에 대해 2 비트 사인확장한 제 1 오퍼랜드와 1 비트 사인확장한 제 2 오퍼랜드를 각각 인버팅하기 위한 두 개의 인버터; 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, 상기 인버팅된 제 1 오퍼랜드 및 제 2 오퍼랜드중의 하나를 그 출력으로 선택하는 제 1 멀티플렉서; 상기 멀티플렉서의 출력값에 소정의 값을 가산하기 위한 가산기; 및 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, m비트의 피승수값에 대해 2 비트 사인확장한 상기 제 1 오퍼랜드와 1 비트 사인확장한 상기 제 2 오퍼랜드 및 상기 가산기로부터 제공되는 선택된 출력 오퍼랜드중의 하나를 선택 출력함으로써 최종 부분적을 생성하는 제 2 멀티플렉서로 구성된 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
  2. 제 1항에 있어서, 상기 승수와 피승수는 , 각각 3비트로 분할되는 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
  3. 제 1항에 있어서, 상기 부스 레코더는, 수정형 부스 알고리즘을 사용하는 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
KR1019940019847A 1994-08-12 1994-08-12 승산기에서의 부스 레코딩회로 KR0147942B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1019940019847A KR0147942B1 (ko) 1994-08-12 1994-08-12 승산기에서의 부스 레코딩회로
US08/514,048 US5691930A (en) 1994-08-12 1995-08-11 Booth encoder in a binary multiplier
JP7227305A JPH0869372A (ja) 1994-08-12 1995-08-11 2進乗算器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940019847A KR0147942B1 (ko) 1994-08-12 1994-08-12 승산기에서의 부스 레코딩회로

Publications (2)

Publication Number Publication Date
KR960009713A KR960009713A (ko) 1996-03-22
KR0147942B1 true KR0147942B1 (ko) 1998-09-15

Family

ID=19390224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940019847A KR0147942B1 (ko) 1994-08-12 1994-08-12 승산기에서의 부스 레코딩회로

Country Status (3)

Country Link
US (1) US5691930A (ko)
JP (1) JPH0869372A (ko)
KR (1) KR0147942B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943250A (en) * 1996-10-21 1999-08-24 Samsung Electronics Co., Ltd. Parallel multiplier that supports multiple numbers with different bit lengths
GB2342193B (en) 1998-06-19 2003-06-04 Sgs Thomson Microelectronics Addition circuitry
KR19990078699A (ko) * 1999-07-30 1999-11-05 임복철 옻이 함유되어 있는 의류와 식품 및 염색제의 제조방법
CN102257473A (zh) * 2008-10-30 2011-11-23 音频专用集成电路公司 高基数字乘法器
WO2013101235A1 (en) * 2011-12-31 2013-07-04 Intel Corporation Graphics lighting engine including log and anti-log units

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0831025B2 (ja) * 1986-03-29 1996-03-27 株式会社東芝 乗算回路
US4972362A (en) * 1988-06-17 1990-11-20 Bipolar Integrated Technology, Inc. Method and apparatus for implementing binary multiplication using booth type multiplication
US5291431A (en) * 1991-06-03 1994-03-01 General Electric Company Array multiplier adapted for tiled layout by silicon compiler
US5251167A (en) * 1991-11-15 1993-10-05 Amdahl Corporation Method and apparatus for processing sign-extension bits generated by modified booth algorithm
JPH05204609A (ja) * 1992-01-13 1993-08-13 Nec Corp 乗算回路
US5325320A (en) * 1992-05-01 1994-06-28 Seiko Epson Area efficient multiplier for use in an integrated circuit
JP2970231B2 (ja) * 1992-07-02 1999-11-02 日本電気株式会社 並列乗算回路

Also Published As

Publication number Publication date
KR960009713A (ko) 1996-03-22
JPH0869372A (ja) 1996-03-12
US5691930A (en) 1997-11-25

Similar Documents

Publication Publication Date Title
US4754421A (en) Multiple precision multiplication device
US6209017B1 (en) High speed digital signal processor
US4774686A (en) Serial digital signal processing circuitry
US5177703A (en) Division circuit using higher radices
KR0147942B1 (ko) 승산기에서의 부스 레코딩회로
US5113362A (en) Integrated interpolator and method of operation
US6127863A (en) Efficient fractional divider
US5781462A (en) Multiplier circuitry with improved storage and transfer of booth control coefficients
US7296049B2 (en) Fast multiplication circuits
JPS58129653A (ja) 乗算方式
JP2991788B2 (ja) 復号器
JPH11317676A (ja) 有限フィ―ルドでの任意要素の逆数具現回路
JP7183079B2 (ja) 半導体装置
KR0153759B1 (ko) 고속 승산-누산회로
JP2864598B2 (ja) ディジタル演算回路
JP2734438B2 (ja) 乗算装置
KR0136484B1 (ko) 이진 보수 발생을 위한 병렬 곱셈기
JP3017203B1 (ja) 2進10進変換回路及びその方法
KR0141870B1 (ko) 고속 파이프라인 승산회로
US5764718A (en) Ripple carry logic ASND method
KR100386979B1 (ko) 갈로아체상에서 비트 직렬 승산기의 병렬화 방법 및 이를이용한 직병렬 승산기
JPS6259828B2 (ko)
JP3097081B2 (ja) 段数可変m系列符号発生器
EP0845740B1 (en) A multiplier unit
KR950010451B1 (ko) 그룹 트리구조 알고리즘(GTSM ; Group Tree Structure Method)을 적용한 고속 승산기

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee