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
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
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5334—Reduction 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/5336—Reduction 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/5338—Reduction 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
-
- 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
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
- G06F7/5318—Multiplying 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
-
- 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
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5332—Reduction 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)
- 입력되는 소정수의 승수에 대한 비트 단위의 레코딩값과 피승수값을 결합하여 부분적을 생성하는 승산기에서의 부스 레코딩 회로에 있어서, 입력되는 상기 레코딩값과 상기 피승수값을 m비트로 각각 분할하고, 분할된 n비트의 승수값에 의거하여 분할된 각 승수의 비트값에 대해 선택적으로 부분적을 생성하는 병렬 연결된 복수의 부스 레코더를 포함하며, 상기 각 부스 레코더는: 입력 승수에 대한 비트 단위의 레코딩값에 의거하여 m비트의 피승수값에 대해 2 비트 사인확장한 제 1 오퍼랜드와 1 비트 사인확장한 제 2 오퍼랜드를 각각 인버팅하기 위한 두 개의 인버터; 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, 상기 인버팅된 제 1 오퍼랜드 및 제 2 오퍼랜드중의 하나를 그 출력으로 선택하는 제 1 멀티플렉서; 상기 멀티플렉서의 출력값에 소정의 값을 가산하기 위한 가산기; 및 분할된 n비트의 승수 Y에 대한 레코딩값에 의거하여, m비트의 피승수값에 대해 2 비트 사인확장한 상기 제 1 오퍼랜드와 1 비트 사인확장한 상기 제 2 오퍼랜드 및 상기 가산기로부터 제공되는 선택된 출력 오퍼랜드중의 하나를 선택 출력함으로써 최종 부분적을 생성하는 제 2 멀티플렉서로 구성된 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
- 제 1항에 있어서, 상기 승수와 피승수는 , 각각 3비트로 분할되는 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
- 제 1항에 있어서, 상기 부스 레코더는, 수정형 부스 알고리즘을 사용하는 것을 특징으로 하는 승산기에서의 부스 레코딩 회로.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940019847A KR0147942B1 (ko) | 1994-08-12 | 1994-08-12 | 승산기에서의 부스 레코딩회로 |
JP7227305A JPH0869372A (ja) | 1994-08-12 | 1995-08-11 | 2進乗算器 |
US08/514,048 US5691930A (en) | 1994-08-12 | 1995-08-11 | Booth encoder in a binary multiplier |
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)
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 | 임복철 | 옻이 함유되어 있는 의류와 식품 및 염색제의 제조방법 |
US20110264719A1 (en) * | 2008-10-30 | 2011-10-27 | Audioasics A/S | High radix digital multiplier |
US9852540B2 (en) * | 2011-12-31 | 2017-12-26 | Intel Corporation | Graphics lighting engine including log and anti-log units |
Family Cites Families (7)
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 | 日本電気株式会社 | 並列乗算回路 |
-
1994
- 1994-08-12 KR KR1019940019847A patent/KR0147942B1/ko not_active IP Right Cessation
-
1995
- 1995-08-11 US US08/514,048 patent/US5691930A/en not_active Expired - Fee Related
- 1995-08-11 JP JP7227305A patent/JPH0869372A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
KR960009713A (ko) | 1996-03-22 |
US5691930A (en) | 1997-11-25 |
JPH0869372A (ja) | 1996-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
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 | |
US4727507A (en) | Multiplication circuit using a multiplier and a carry propagating adder | |
US7024445B2 (en) | Method and apparatus for use in booth-encoded multiplication | |
US7296049B2 (en) | Fast multiplication circuits | |
US5781462A (en) | Multiplier circuitry with improved storage and transfer of booth control coefficients | |
JPS58129653A (ja) | 乗算方式 | |
JP2991788B2 (ja) | 復号器 | |
JP7183079B2 (ja) | 半導体装置 | |
KR0153759B1 (ko) | 고속 승산-누산회로 | |
JP2864598B2 (ja) | ディジタル演算回路 | |
US5764718A (en) | Ripple carry logic ASND method | |
KR0136484B1 (ko) | 이진 보수 발생을 위한 병렬 곱셈기 | |
JP3017203B1 (ja) | 2進10進変換回路及びその方法 | |
KR0141870B1 (ko) | 고속 파이프라인 승산회로 | |
KR100386979B1 (ko) | 갈로아체상에서 비트 직렬 승산기의 병렬화 방법 및 이를이용한 직병렬 승산기 | |
JPS6259828B2 (ko) | ||
JP3097081B2 (ja) | 段数可変m系列符号発生器 | |
EP0845740B1 (en) | A multiplier unit | |
KR950010451B1 (ko) | 그룹 트리구조 알고리즘(GTSM ; Group Tree Structure Method)을 적용한 고속 승산기 | |
JP3155026B2 (ja) | 累算器 |
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 |