KR0153963B1 - 수정형 부스승산기에 있어서 부분곱 행 생성회로 - Google Patents

수정형 부스승산기에 있어서 부분곱 행 생성회로

Info

Publication number
KR0153963B1
KR0153963B1 KR1019940012053A KR19940012053A KR0153963B1 KR 0153963 B1 KR0153963 B1 KR 0153963B1 KR 1019940012053 A KR1019940012053 A KR 1019940012053A KR 19940012053 A KR19940012053 A KR 19940012053A KR 0153963 B1 KR0153963 B1 KR 0153963B1
Authority
KR
South Korea
Prior art keywords
partial product
multiplier
product row
bits
bit
Prior art date
Application number
KR1019940012053A
Other languages
English (en)
Other versions
KR950033809A (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 KR1019940012053A priority Critical patent/KR0153963B1/ko
Publication of KR950033809A publication Critical patent/KR950033809A/ko
Application granted granted Critical
Publication of KR0153963B1 publication Critical patent/KR0153963B1/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
    • 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

본 발명은 수정형 부스승산기에 구비되는 부분곱 행 생성회로에 관한 것으로, 부분곱 생성을 위한 선택작업 수행시 이용되는 승수비트의 수를 줄여 효율적인 부분곱 행을 생성하는 회로를 제공하기 위한 것이다. 따라서 본 발명에 따른 부분곱 행 생성회로는, 2비트로 변환된 승수비트의 크기에 따라 요구되는 형태로 변환된 3개의 피승수중 하나를 선택하여 출력하는 선택수단; 해당되는 부분곱 행 생성을 위해 이용되는 3비트의 승수비트를 배타논리합에 의해 2비트로 변환하여 선택수단으로 제공하는 승수비트 변환부; 선택수단으로부터 출력되는 부분곱 행과 이용되는 3비트의 승수비트중 최상위 비트를 배타논리합하여 최종적인 부분곱 행을 생성하는 논리소자로 구성된다. 따라서 부분곱 행 생성시 고려되는 승수비트의 크기를 4가지 경우로 줄여 기존에 비해 선택수단의 로직을 간소화할 수 있고, 선택처리시간을 단축하여 기존에 비해 부분곱 행 생성에 소요되는 시간을 줄일 수 있다.

Description

수정형 부스승산기에 있어서 부분곱 행 생성회로
제1도는 수정형 부스승산기에 구비되는 종래의 부분곱 행 생성회로도이고,
제2도는 본 발명에 따른 부분곱 행 생성회로도이다.
* 도면의 주요부분에 대한 부호의 설명
20 : 멀티플렉서 21 : 승수비트 변환부
11 : 배타논리합소자
본 발명은 수정형 부스승산기(Modified Booth's Multiplier)에 있어서 부분곱 행 생성회로에 관한 것으로, 특히 사용되는 승수 비트를 감소시켜 부분곱 행(Partial Product lines) 생성처리를 수행하는 부분곱 행 생성회로에 관한 것이다.
부스승산기(Booth's Multiplier)는 부스(Booth)에 의해 제안된 승산기로서, 승산초기단계에서 승산과정에서 발생되는 부분곱 행의 수를 감소시켜 승산속도를 증가시킨 알고리즘으로, 병렬승산기에 주로 적용되고 있다. 수정형 부스승산기는 기존의 부스승산기의 처리속도를 좀더 개선한 것으로서, 승수의 처리비트 단위를 조정하여 기존의 부스승산기에 비해 부분곱 행의 수를 반(1/2)으로 줄여 승산속도를 보다 개선한 알고리즘이다.
예를 들어 6비트의 피승스(Y[5:0])와 6비트의 승스(X[5:0])를 승산하는 수정형 부스승산기에 부분곱 행 생성회로는 7비트의 부분곱 행(Pi[6:0)]을 생성하도록 구성하는데, i는 0≤i≤2이므로 생성되는 부분곱 행은 3단계로 나누어 생성된다. 즉, P0는 첫 번째 부분곱 행이 되고, P1는 2번째 부분곱 행이 되고, P2는 세 번째 부분곱 행이 된다. 따라서 수정형 부스승산기에 구비되는 부분곱 행 생성회로는 상술한 3가지의 부분곱 행을 생성하는 회로를 각각 구비하게 된다.
제1도는 상술한 3가지의 부분곱 행중 2번째 부분곱 행(P1)을 생성회는 회로이다. 따라서 제1도는 기존의 수정형 부스 승산기에 구비되는 부분곱 행 생성회로중 1번째 부분곱 행을 생성하는 회로와 3번째의 부분곱 행을 생성하는 회로가 도시되지 않은 상태이다. 이는 생략된 부분곱 행을 생성하는 회로들도 제1도에 도시된 바와 동일하게 구성되기 때문이다. 단, 이들은 인가되는 승수 비트가 다르게 설정된다. 즉, 1번째의 부분곱 행을 생성하는 회로에는 6비트의 승수 비트중 X1, X0, 0'을 사용하고, 2번째의 부분곱 행을 생성하는 회로에는 제1도에 도시된 바와 같이 'X3, X2, X1'을 사용하고, 3번째의 부분곱 행을 생성하는 회로에는 6비트의 승수 비트중 'X5, X4, X3'이 사용되도록 구현된다.
제1도를 참조하여 기존의 부분곱 행 생성회로의 동작을 설명하면, 다음과 같다.
우선, 멀티플렉서(10)로 인가되는 3개의 입력신호는 생성되는 부분곱의 행이 N+1비트의 형태를 가지므로 이에 대응되는 부분곱 행을 생성할 수 있도록 피승수를 변형시킨 것이다. N은 피승수의 비트수이고, 멀티플렉서(10)로 입력되는 피승수의 변형된 값은 제1도에 도시된 바와 같이 '0000000', 'Y(5) Y', '2Y'이고, Y는 피승수이다.
멀티플렉서(10)의 1번째 입력단(11)으로 인가되는 '0000000'는 피승수가 0인 경우를 상술한 N+1비트에 적합하도록 하기 위하여 7비트를 0으로 설정한 것이고, 2번째 입력단(12)으로 인가되는 'Y(5) Y'는 피승수인 Y의 사인비트에 해당되는 최상위비트를 1비트 확장하여 N+1비트에 적합하도록 설정한 것이고, 3번째 입력단(13)으로 인가되는 '2Y'는 피승수인 Y의 최하위비트방향으로 1비트 확장한 것으로 확장된 최하위비트를 0으로 설정하여 상술한 N+1비트에 적합하도록 설정한 것이다.
이와 같이 인가되는 세 입력신호에 대하여 멀티플렉서(10)는 다른 입력단자(14∼16)를 통해 인가되는 승수 비트 X3, X2, X1의 크기에 대응되는 값이 부분곱 행(P1')으로 출력되도록 연산을 수행한다. 즉, 표 1과 같이 인가되는 승수의 비트의 크기에 따라 입력단(I1∼I3)을 통해 인가되는 부분곱 행중 하나를 선택하여 P1'로 출력한다.
표 1를 참조하면, 인가되는 승수 비트 'X3, X2, X1'이 '001'일 때, 생성될 수 있는 부분곱 행(P1)은 'Y'가 되므로, 멀티플렉서(10)는 2번째 입력단(I2)으로 인가되는 'Y(5) Y'값을 부분곱 행(P1')으로 출력한다. 승수 비트 'X3 X2 X1'이 '011'일 때, 생성될 수 있는 부분곱 행(P1')은 2Y이므로 3번째 입력단(13)으로 인가되는 2Y가 출력되도록 한다.
그러나 X3비트에 해당되는 승수 비트가 '1'인 경우에는 생성되는 부분곱 행이 음수(-)형태를 가지나, 멀티플렉서(10)는 이에 관계없이 상술한 바와 같이 대응되는 부분곱 행(P1')이 출력되도록 동작한다. 따라서 음수형태를 갖는 부분곱 행이 최종적으로 출력될 수 있도록 멀티플렉서(10)로부터 출력된 부분곱 행(P1')과 멀티플렉서(10)로 인가되는 승수 비트중 최상위비트에 해당되는 비트(여기서는 X3)를 배타 논리합하여 최종적인 부분곱 행(P1)을 출력한다. 즉, 배타논리합에 의해 보수를 취한 부분곱 행(P1)을 출력하는 것이다.
1번째 부분곱 행 생성 및 3번째 부분곱 행 생성도 동일하게 이루어진다. 단, 상술한 바와 같이 승수 비트가 1번째 행 생성의 경우에는 'X3 X2 X1' 대신에 'X1, X0, 0'을 이용하고, 3번째 부분곱 행 생성의 경우에는 'X3 X2 X1' 대신에 'X5 X4 X3'를 이용하도록 구현된다.
이와 같이 3비트의 승수 비트를 이용하여 부분곱 행을 생성할 때, 표 1에서 알 수 있는 바와 같이 기존이 멀티플렉서(10)는 입력되는 승수비트에 대하여 8가지 경우를 모두 고려하여 3개의 부분곱 행중 하나를 선택하는 신호를 생성하도록 구현되어 있다. 따라서 이에 대한 멀티플렉서(10)내의 로직구조가 다소 복잡하게 구현되는 단점이 있다.
본 발명은 수정형 부스승산기에 있어서 부분곱 행 생성을 위해 이용되는 승수 비트수를 줄여 멀티플렉서의 구조를 간소화할 수 있는 부분곱 행 생성회로를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명에 따른 부분곱 행 생성회로는, 수정형 부스승산기의 부분곱 행 생성회로에 있어서; 2비트로 변환된 승수비트의 크기에 따라 생성이 요구되는 형태로 변환된 3개의 피승수 데이터중 하나를 선택하여 해당되는 부분곱 행으로 출력하는 선택수단; 부분곱 행을 생성하기 위하여 할당된 3비트의 승수비트중 최상위비트를 제외한 나머지 비트를 최상위비트와 각각 배타논리합한 결과를 2비트로 변환된 승수비트로 제공하는 승수비트 변환부; 선택수단으로부터 출력되는 부분곱 행과 최상위비트를 배타논리합하여 최종적인 부분곱 행을 출력하는 배타논리합 소자를 포함하도록 구성되는 것을 특징으로 한다.
이하, 첨부된 제2도를 참조하여 본 발명에 따른 바람직한 실시예를 상세하게 설명하기로 한다.
제2도는 상술한 제1도와 같이 6비트의 피승수(Y), 6비트의 승수(X)를 승산하여 7비트의 부분곱 행(P1)을 생성하는 수정형 부스승산기의 부분곱 행 생성회로를 예시한 것으로, 제1도와 마찬가지로 2번째 부분곱 행을 생성하는 회로이다.
제2도를 참조하면, 본 발명에 따른 부분곱 행 생성회로는, 제1도에서와 같이 변형된 피승수 '0000000', 'Y(5) Y', '2Y'를 선택신호 입력단자(17,18)를 통해 인가되는 2비트로 변환된 승수 비트의 크기에 따라 선택하여 출력하는 멀티플렉서(20), 3비트의 승수비트를 2비트로 변환하여 멀티플렉서(20)의 선택신호 입력단자(I7,I8)로 제공하는 승수 비트 변환부(21), 멀티플렉서(20)로부터 출력되는 부분곱 행(P1')과 해당 승수 비트중 최상위 비트를 배타논리합하는 배타논리합소자(11)로 구성된다.
특히, 승수비트 변환부(21)는 해당되는 3비트의 승수비트(X3,X2,X1)에 대하여 X3비트와 X2비트를 배타논리합하는 배타논리합소자(22), X3비트와 X1비트를 배타논리합하는 배타논리합소자(23)로 구성된다.
이와 같이 구성된 부분곱 행 생성회로는 다음과 동작된다.
우선, 승수비트 변환부(21)는 2번째 부분곱 행 생성을 위하여 할당된 X3, X2, X1의 승수비트가 인가되면, 배타논리합 소자(22)는 X3와 X2 승수비트를 배타논리합하고, 배타논리합 소자(23)는 X3와 X1 승수비트를 배타논리합한다. 배타논리합 소자(22)로부터 출력되는 배타논리합 결과는 변환된 승수비트 X2'로 출력되고, 배타논리합 소자(23)로부터 출력되는 배타논리합 결과는 변환된 승수비트 X1'로 출력된다. 이와 같이 승수비트를 변환하는 것은, 상술한 표 1에서 알 수 있는 바와 같이 해당되는 승수비트중 최상위 비트(X3)가 '0'일 때의 X2, X1의 조합에 따라 생성되는 부분곱 행(P1')과 최상위 비트(X3)가 '1'일 때의 X2, X1의 조합에 따라 생성되는 부분곱 행(P1')이 서로 대칭된다는 점을 이용하여 좀더 효율적인 부분곱 행을 생성하기 위한 것이다. 승수비트 변환부(21)로부터 출력된 변환된 승수비트 X2', X1'는 멀티플렉서(20)의 선택신호 입력단자(17,18)로 전송된다.
멀티플렉서(20)는 제1도에서와 같이 입력단자(I1∼I3)를 통해 인가되는 변형된 피승수 '0000000, Y(5) Y, 2Y'를 선택신호 입력단자(I7,I8)를 통해 인가되는 변형된 승수비트에 의해 선택하여 부분곱 행(P1')으로 출력한다. 즉, 멀티플렉서(20)는 선택신호 입력단(I7,I8)을 통해 인가되는 변형된 승수비트 X2', X1'에 대하여 표 2와 같이 부분곱 행(P')을 생성한다.
표 2에서 알 수 있는 바와 같이 멀티플렉서(20)는 선택신호 입력단(I7,I8)을 통해 인가되는 변환된 승수비트(X2', X1')의 크기에 따라 3 입력신호('0000000', 'Y(5)Y', '2Y')중 하나를 해당되는 부분곱 행으로 선택하여 출력한다. 즉, 변환된 승수비트(X2', X1')가 '00'이면, '0000000'이 선택되어 부분곱 행(P1')으로 출력되고, 변환된 승수비트(X2', X1')가 '01'이거나 '10'이면 'Y(5)Y'가 선택되어 부분곱 행(P1')으로 출력되고, 변환된 승수비트(X2', X1')가 '11'이면 '2Y'가 선택되어 부분곱 행(P1')으로 출력된다.
이와 같이 멀티플렉서(20)는 2비트의 변환된 승수비트의 크기를 고려하여 해당되는 부분곱 행을 선택하도록 구현되므로, 표2에서 알 수 있는 바와 같이 승수비트의 크기를 4가지 경우만 고려하면 된다.
그리고 멀티플렉서(20)로부터 출력되는 부분곱 행(P1')은 배타논리합소자(11)로 전송된다. 배타논리합소자(11)는 제1도에서와 같이 음수(-)형태의 부분곱 형(P1')을 생성하기 위한 것으로, 해당되는 승수비트중 최상위 비트(X3)와 멀티플렉서(20)로부터 출력되는 부분곱 행(P1')을 배타논리합하여 최종적인 부분곱 행(P1)을 출력한다.
1번째 부분곱 행 생성회로와 3번째 부분곱 행 생성회로도 상술한 바와 같이 구현된다. 즉, 1번째 부분곱 행 생성회로의 승수비트 변환부는 인가되는 승수 비트가 'X1, X0, 0'이므로, X1비트와 X0비트를 배타논리합한 결과와 X1과 0을 배타논리합한 결과를 변환된 승수비트로 제공하도록 구현된다. 그리고 3번째 부분곱 행 생성회로의 승수비트 변환부는 인가되는 승수비트가 'X5 X4 X3'이므로 X5비트와 X4비트를 배타논리합한 결과와 X5와 X3를 배타논리합한 결과를 변환된 승수비트로 제공하도록 구현된다.
상술한 바와 같이 본 발명은 수정형 부스승산기에 있어서 부분곱 행 생성을 위해 이용되는 멀티플레서의 선택동작을 제어하는 승수비트의 수를 1비트 줄여 운영하는 부분곱 행 생성회로를 구현함으로써, 부분곱 행 생성시 승수비트에 대한 크기를 고려하는 횟수를 줄여 멀티플렉서의 내부 로직회로를 간소화할 수 있을 뿐 아니라 부분곱 행 생성시간을 단축시킬 수 있는 효과가 있다.

Claims (2)

  1. 수정형 부스승산기의 부분곱 행 생성회로에 있어서; 2비트로 변환된 승수비트의 크기에 따라 생성이 요구되는 형태로 변환된 3개의 피승수 데이터중 하나를 선택하여 해당되는 부분곱 행으로 출력하는 선택수단; 상기 부분곱 행을 생성하기 위하여 할당된 3비트의 승수비트중 최사위비트를 제외한 나머지 비트를 상기 최상위비트와 각각 배타논리합한 결과를 상기 2비트로 변환된 승수비트로 제공하는 승수비트 변환부; 상기 선택수단으로부터 출력되는 부분곱 행과 상기 최상위비트를 배타논리합하여 최종적인 부분곱 행을 출력하는 배타논리합 소자를 포함하도록 구성되는 것을 특징으로 하는 부분곱 행 생성회로.
  2. 제1항에 있어서, 상기 선택수단은 상기 2비트로 변환된 승수비트를 입력신호를 선택할 수 있는 제어신호로 이용하고, 상기 변환된 3개의 피승수 데이터를 입력신호로 설정하여 운영되는 멀티플렉서로 구성되는 것을 특징으로 하는 부분곱 행 생성회로.
KR1019940012053A 1994-05-31 1994-05-31 수정형 부스승산기에 있어서 부분곱 행 생성회로 KR0153963B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940012053A KR0153963B1 (ko) 1994-05-31 1994-05-31 수정형 부스승산기에 있어서 부분곱 행 생성회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940012053A KR0153963B1 (ko) 1994-05-31 1994-05-31 수정형 부스승산기에 있어서 부분곱 행 생성회로

Publications (2)

Publication Number Publication Date
KR950033809A KR950033809A (ko) 1995-12-26
KR0153963B1 true KR0153963B1 (ko) 1998-11-16

Family

ID=19384249

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940012053A KR0153963B1 (ko) 1994-05-31 1994-05-31 수정형 부스승산기에 있어서 부분곱 행 생성회로

Country Status (1)

Country Link
KR (1) KR0153963B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362186B1 (ko) * 1995-12-29 2003-03-28 주식회사 하이닉스반도체 멀티플렉서를이용한직렬부스승산기

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362186B1 (ko) * 1995-12-29 2003-03-28 주식회사 하이닉스반도체 멀티플렉서를이용한직렬부스승산기

Also Published As

Publication number Publication date
KR950033809A (ko) 1995-12-26

Similar Documents

Publication Publication Date Title
US4745570A (en) Binary multibit multiplier
JPH09501526A (ja) 高速2進乗算器のための変形ウォレス・トリー加算器の構造及び方法
US5185714A (en) Arithmetic operation processing apparatus
EP0137386B1 (en) Digital multiplying circuit
US5467298A (en) Multivalued adder having capability of sharing plural multivalued signals
US5299145A (en) Adder for reducing carry processing
KR0153963B1 (ko) 수정형 부스승산기에 있어서 부분곱 행 생성회로
US6260056B1 (en) Circuit and method for fast squaring by breaking the square into a plurality of terms
US5870322A (en) Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication
US6415311B1 (en) Sign extension circuit and method for unsigned multiplication and accumulation
KR0141878B1 (ko) 수정형 부스승산기에 있어서 부분곱 행 생성회로
US6167422A (en) Booth multiplication structure which selectively integrates the function of either of incrementing or negating with the function of booth multiplication
US5954791A (en) Multipliers with a shorter run time
JP2606326B2 (ja) 乗算器
US4896284A (en) Semiconductor integrated circuit for multiplying analog and digital values
KR100420410B1 (ko) 리던던트 바이너리 연산을 이용한 실수-복소수 승산기
KR0141879B1 (ko) 파이프라인을 이용한 수정형 부스승산기
JP3130797B2 (ja) 積和演算処理方法およびその装置
KR100292067B1 (ko) 이산시간셀룰러신경회로망용셀
KR0146255B1 (ko) 확장부스 멀티플라이어
JPH0786824B2 (ja) 部分積生成回路
KR100206119B1 (ko) 가산기
JP2728958B2 (ja) 演算処理装置及び方法
KR0150131B1 (ko) 2의 승수가 아닌 특정값으로 나누는 디바이더
EP0887727A2 (en) Multiplying circuit

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