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

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

Info

Publication number
KR0141878B1
KR0141878B1 KR1019940012054A KR19940012054A KR0141878B1 KR 0141878 B1 KR0141878 B1 KR 0141878B1 KR 1019940012054 A KR1019940012054 A KR 1019940012054A KR 19940012054 A KR19940012054 A KR 19940012054A KR 0141878 B1 KR0141878 B1 KR 0141878B1
Authority
KR
South Korea
Prior art keywords
partial product
multiplier
signal
product row
bit
Prior art date
Application number
KR1019940012054A
Other languages
English (en)
Other versions
KR950033810A (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 KR1019940012054A priority Critical patent/KR0141878B1/ko
Publication of KR950033810A publication Critical patent/KR950033810A/ko
Application granted granted Critical
Publication of KR0141878B1 publication Critical patent/KR0141878B1/ko

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

본 부분곱 행 생성회로는 수정형 부스승산기에 있어서 하나의 부분곱 행 생성과정을 병렬처리하고, 부분곱 행 생성시 이루어지는 보수처리를 고려하여 피승수와 승수간의 관계를 재정립한 신호를 이용함으로써, 보수처리과정을 거치지 않고 부분곱 행 행성하도록 하여 생성시 소요되는 시간을 줄이기 있는 것이다. 이를 위하여 본 회로는 하나의 부분곱 행의 비트를 적어도 3부분으로 나누어 생성하긱 위하여 출력수단: 및 피승수와 승수를 이용하여 출력수단에서 각각 출력되는 부분곱 행의 비트데이터의 크기에 대응되는 입력신호와 출력수단의 동작을 제어하기 위한 제어신호를 생성하여 출력수단으로 전달하기 위한 신호생성수단을 포함하도록 구성된다.

Description

수정형 부스승산기에 있어서 부분곱 행 생성회로
제1도는 종래의 수정형 부스승산기에 있어서 부분곱행 생성회로도.
제2도는 본 발명에 따른 수정형 부스승산기에 있어서 부분곱행 생성회로도.
* 도면의 주요부분에 대한 부호의 설명
21,22,23:제1,2,3신호생성기24:신호생성수단
25,26,27:제1,2,3멀티플렉서28:출력수단
본 발명은 수정형 부스승산기(Modified Booth's Multiplier)에 있어서, 병렬처리에 의하여 부분곱 행(Partial Product lines)을 생성하기 위한 부분곱 행 생성회로에 관한 것이다. 부스승산기(Booth's Multiplier)는 부스(Booth)에 의해 제안된 승산기로서, 승산초기단계에서 승산에 의해 발생되는 부분곱행의 수를 감소시켜 승산속도를 증가시킨 알고리즘으로, 병렬승산기에 주로 적용되고 있다. 수정형 부스승산기는 기존의 부스승산기의 처리속도를 좀더 개선한 것으로서, 승수의 처리비트 단위를 조정하여 기존의 부스승산기에 비해 부분곱 행의 수를 반(1/2)으로 줄여 승산속도를 보다 개선한 알고리즘이다.
제1도는 종래의 수정형 부스승산기의 부분곱 행 생성회로의 일부분으로서, 6비트의 피승수(Y[5:0])와 6비트의 승수(X[5:0])를 승산하여 7비트의 부분곱 행(Pi[6:0], 여기서 i 는 0 = i = 2)을 생성하는 회로로서, 출력되는 P1은 2번째의 부분곱 행이 된다. 따라서 제1도는 부분곱 행 생성회로중 1번째의 부분곱 행을 생성하는 회로와 3번째의 부분곱 행을 생성하는 회로가 생략되어 있는 상태이다. 생략된 부분곱 행을 생성하는 회로들도 제 1 도에 도시된 바와 동일하나 인가되는 승수의 비트가 다르게 설정되어 있다. 즉, 1번째의 부분곱행을 생성하는 회로에서는 사용되는 승수의 비트가 X1, X0와 0를 사용하고, 3번째의 부분곱 행을 생성하는 회로에서는 X5, X4, X3에 해당되는 승수의 비트가 사용된다.
제 1 도에 도시된 2번째의 부분곱 행을 생성하기 위한 회로의 동작을 상세하게 설명하면, 다음과 같다.
우선 멀티플렉서(10)로 인가되는 3개의 입력신호는 하나의 부분곱 행을 생성하기 위하여 필요한 출력신호로서, 생성되는 부분곱의 행이 N+1비트의 형태로 표현되므로, 이에 대응되는 부분곱 행을 생성할수 있도록 파승수를 병형시킨 것이다. 여기서 N은 피승수의 비트수이다. 멀티플렉서(10)로 인가되는 피승수에 대한 변형값은 ′0000000′, Y(5) Y, 2Y이다. 여기서 Y는 피승수이고, X는 승수이다.
멀티플렉서(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 비트에 적합하도록 한 것이다.
이와 같이 인가되는 3입력신호에 대하여 멀티플렉서(10)는 다른 입력단자 (14~16)를 통해 인가되는 X3, X2, X1에 해당되는 승수비트의 크기에 대응되는 값이 부분곱 행(P1')으로 출력되도록 연산을 수행한다. 즉 하기 (표1)과 같이 인가되는 승수비트의 크기에 따라 이미 결정되어 있는 값을 피승수값에 승산한다. 예를 들어, 인가되는 승수의 비트인 ‘X3 X2 X1'이 ‘001'일 때, 생성될 수 있는 부분곱 행(P1)이 (표1)에서 알수 있는 바와 같이 ‘Y'가 되므로 2번째 입력단(12)으로 인가되는 'Y(5) Y'값을 부분곱 행(P1')으로 출력한다. 그리고 승수의 비트인 ‘X3X2X1'이 ’011‘일 때, 생성될 수 있는 부분곱 행(P1')이 ’2Y‘이므로 3번째 입력단(13)으로 인가되는 2Y가 출력되도록 한다. 또한 X3비트에 해당되는 승수의 비트가 1인 상태에서는 (표1)에서와 같이 출력될 수 있는 부분곱 행이 음수(-)형태를 가지나, 멀티플렉서(10)는 관계없이 대응되는 부분곱 행(P1')이 출력되도록 동작된다. 이같이 사용되는 승수비트의 크기에 따른 부분곱 행의 생성처리는 사용되는 승수의 비트가 다르더라도 동일하게 작동한다. 예를 들어, 1번째 부분곱 행을 생성하기 위해서는 상술한 바와 같이 X1,X0, 0값을 이용하게 되는 데, 이 때도 (표1)에서와 같이 3개의 비트값에 따라 대응되는 부분곱 행을 출력하게 된다.
멀티플렉서(10)에서 출력된 부분곱 행(P1')은 (표1)에서 알수 있는 바와 같이 피승수에 음수(-)의 승수값을 승산하여야 하는 경우를 고려하여 인가되는 승수중 최상위비트에 해당되는 비트(여기서는 X3)의 데이터와 멀티플렉서(10)로부터 출력된 부분곱 행을 배타논리합하여 최종적인 부분곱 행(여기서는 P1)을 출력한다. 예를 들어 인가되는 승수 ‘X3X2X1'가 ’100‘ 일 때, 멀티풀렉서(10)로부터 출력되는 부분곱행은 ’2Y'가 된다. 그러나 실질적으로는 ‘-2Y'이므로, 배타논리합소자(11)를 통해 보수를 취한 부분곱 행(P1)을 출력한다.
그러나 상술한 바와 같은 부분곱 행 생성회로는 사용되는 승수의 비트를 3비트별로 나누어 병렬처리를 하여 3개의 부분곱 행을 생성하나, 7비트로 표현되는 하나의 부분곱 행의 생성처리는 직렬로 처리할 뿐아니라 음수(-)를 갖는 부분곱 행으로 인하여 보수(Complement)처리를 함으로 인하여 부분곱 행 생성을 어느 정도 지연시키는 문제가 있었다.
따라서 본 발명의 목적은 수정형 부스승산기에 있어서 하나의 부분곱 행 생성과정을 병렬처리하여 부분곱 행 생성에 소요되는 시간을 줄이기 위한 부분곱 행 생성회로를 제공함에 있다.
상기 목적을 달성하기 위하여 제 1 소정비트의 피승수와 제 2 소정비트의 승수를 이용하여 수정형 부스승산을 하기 위한 본 발명에 따른 회로에 있어서; 하나의 부분곱 행의 비트를 적어도 3부분으로 나누어 생성하기 위하여 출력단수; 및 피승수와 승수를 이용하여 출력단수에서 각각 출력되는 부분곱 행의 비트데이터의 크기에대응되는 입력신호와 추력단수의 동작을 제어하기 위한 제어신호를 생성하여 출력수단으로 전달하기 위한 신호생성수단을 포함함을 특징으로 한다.
이어서 첨부된 제 2 도를 참조하여 본 발명의 실시예를 상세하게 설명하기로 한다.
제 2 도는 상술한 제 1 도와 같이 6비트의 피승수(Y), 6비트의 승수(X)를 승상하여 7비트의 부분곱 행(P1)을 생성하는 수정형 부스승산기에 있어서의 본 발명에 따른 부분곱 행 생성회로로서, 2번째 부분곱 행(P1)을 3부분으로 나누어 생성하는 회로의 경우를 예로 든 것이다. 또한 부분곱 행을 생성하기 위하여 6비트의 승수비트중 3비트의 승수비트와 6비트의 피승수비트를 사용한 경우이다.
제 2 도의 부분곱 행 생성회로는 크게 인가되는 피승수(Y[5:0])와 승수(X[5:0])를 논리조합하여 하나의 부분곱 행을 3부분(P1', P1, P1')으로 나눔으로 인하여 요구되는 가가의 신호를 생성하기 위한신호생성수단(24)과 신호생성수단(24)으로부터 전달된 소정의 신호를 입력신호와 제어신호로 하여 3부분으로 나누어진 하나의 부분곱 행을 출력하기 위한 출력수단(28)으로 이루어진다. 본 실시예에서는 3부분을 하나의 부분곱 행을 최하위비트(LSB, P1'), 최하위비트와 최상위비트를 제외한 나머지비트(P1) 및 최상위비트(MSB, P1')로 나누었다.
제1~3신호생성기(21, 22, 23)로 이루어진 신호생성수단(24)은 출력수단(28)에서 최종적으로 출력되는 3개의 출력신호(P1', P1, P1')를 출력하는데 적합한 3종류의 대응되는 신호를 생성한다.
즉, 제1신호생성기(21)는 최하위비트(P1')에 해당되는 부분곱행의 데이터를 출력하는데 요구되는 신호를 생성하는 것으로, 피승수(Y[5:0])와 승수(X[5:0])가 인가되면, 하기 식과 같은 논리조합에 의해 3개의 신호(ZO, X3, S1)를 생성한다.
Z0 = YO XOR X3 (1)
S1 = X2 XOR X1
여기서 YO는 피승수의 최하위비트의 데이터이고, X3은 승수증 현재 사용된 승수비트에서 최상위비트에 해당되는 데이터이고, X2, X1은 사용된 승수비트에서 상술한 최상위비트를 제외한 나머지 비트의 데이터가 된다.
제 2 신호생성기(22)는 6비트의 피승수(Y)와 6비트의 승수(X)가 인가되면, 상술한 나머지비트에 해당되는 데이터(P1)를 출력하는 데 요구되는 3개의 신호(Zi, Ki, S2)를 하기 (2)식에 의한 논리조합에 의하여 생성한다.
Zi(1 ≤ I ≤ 5) (2)
Ki = ( Zi-1 AND K-OR) OR K-AND
K-AND = X3 AND X2
K-OR = X3 OR X2
여기서 Zi는 (i)번째에 해당되는 피승수의 비트데이터이고, Zi-1은 (i-1)번째에 해당되는 피승수의 비트데이터이다. X3 및 X2는 상술한 바와 동일한 비트의 승수 데이터에 해당된다.
제 3 신호생성기(23)는 최상위비트에 해당되는 부분곱행(P1)를 출력하는 데 요구되는 3개의 신호(Z5, X3, S3)를 생성하기 위하여, 인가되는 피승수(Y) 및 승수(X)를 하기 (3)식과 같이 논리조합을 수행한다.
S3 = (X3 XOR X2) XOR (X2 XOR X1) (3)
상술한 상수중 Z5는 6번째 비트의 피승수의 데이터이고, X3, X2, X1은 2번째 부분곱 행을 생성하기 위해 사용되는 승수의 비트데이터이다.
이와 같이 신호생성수단(24)를 통해 각각의 신호가 생성되면, 3개의 멀티플렉서(25, 26, 27)로 이루어진 출력수단(28)으로 각각 인가된다. 즉, 제 1 신호생성기(21)로부터 출력된 ZO, X3은 제 1 멀티플렉서(25) 입력신호로 인가되고, S1은 제 1 멀티플렉서(25)의 선택제어신호로 인가된다. 그리고 제 2 신호생성기(22)로부터 출력된 Zi, Ki는 제 2 멀티플렉서(26)의 입력신호로 인가되고, S2는 제 2 멀티플렉서(26)의 선택제어신호로 인가된다. 또, 제 3 신호생성기(23)로부터 출력된 Z5,X3는 제 3 멀티플렉서(27)의 입력신호로 인가되고, S3는 제 3 멀티풀렉서(27)의 선택제어신호로 인가된다. 이와 같은 신호생성은 하나의 신호생성회로로 구현될 수 있다.
이와 같이 인가된 각각의 신호에 대하여 제1멀티플렉서(25)는 (표2)와 같이 부분곱 행의 최하위비트에 해당되는 데이터(P1')를 출력한다.
따라서 승수비트의 데이터가 ‘010’일 때, Z0(상술한(1)식에서의 논리조합에 의하여 얻어진 값)를 부분곱 행의 최하위비트의 데이터(P1')로 출력한다.
제 2 멀티플렉서(26)는 제2신호생성기(22)로부터 인가된 Zi, Ki신호를 입력신호로 하고, S2신호에 의해 선택제어되어 하기 (표3)와 같이 나머지 비트의 부분곱 행의 데이터(P1)를 출력한다.
따라서 승수의 비트가 ‘100’일 때, 나머지 부분곱 행의 비트데이터(P1)가 Zi-19i-1번째 피승수의 데이터)로 출력된다. 이를 위하여 제 2 멀티플렉서(26)의 경우는 제 2 신호생성기(22)로부터 인가된 Ki신호가 출력되도록 동작된다.
한편, 제 3 신호생성기(23)로부터 출력된 Z5, X3를 입력신호로 하고, S3신호를 선택제어신호로 하여, 제 3 멀티플렉서(27)는 하기 (표4)과 최상위비트의 부분곱 행의 데이터(P1)를 출력한다.
따라서 승수의 비트데이터가 ‘100’일 때, 부분곱 행의 최상위비트의 데이터(P1 ')가 Z5(6번째 피승수의 비트데이터)로 출력되도록 제 3 멀티풀렉서(27)는 동작한다,
상술한 바와 같이 본 발명은 수정형 부분곱 행 생성회로에 있어서 하나의 부분곱 행의 생성처리를 병렬처리하고, 피승수와 승수의 논리조합에 의해 승산에 이용될 신호를 재생성하여 제공함으로써, 보수과정을 거치지 않게 되므로 부분곱 행 생성처리시간을 줄이는 효과가 있다.

Claims (6)

  1. 제 1 소정비트의 피승수와 제2소정비트의 승수를 이용하여 수정형 부스승산을 하기 위한 부분곱 행 생성회로에 있어서; 하나의 부분곱 행의 비트를 적어도 3부분으로 나누어 생성하기 위하여 출력수단; 및
    상기 피승수와 승수를 이용하여 상기 출력수단에서 각각 출력되는 부분곱 행의 비트데이터의 크기에 대응되는 입력신호와 상기 출력수단의 동작을 제어하기 위한 제어신호를 생성하여 상기 출력수단으로 전달하기 위한 신호생서수단을 포함함을 특징으로 하는 부분곱 행 생성회고.
  2. 제 1 항에 있어서, 상기 출력수단은 상기 부분곱 행의 비트가 최하위비트, 최상위비트 및 상기 최하위비트와 최상위비트를 제외한 나머지 비트로 구분되어 생성되도록 구성됨을 특징으로 하는 부분곱 행 생성회로.
  3. 제 2 항에 있어서, 상기 출력수단은 상기 신호생성수단으로부터 제공되는 적어도 2개의 입력신호를 상기 신호생성수단으로부터 제공되는 적어도 1개의 제어신호에 의해 선택적으로 출력하기 위한 멀티플렉서를 상기 부분곱 행의 비트에 대하여 나누어진 수에 대응되도록 구비함을 특징으로 하는 부분곱 행 생성회로.
  4. 제 3항에 있어서, 상기 신호생성수단은 상기 멀티플렉서와 대응되는 개수의 신호생성기를 구비함을 특징으로 하는 부분곱 생성회로.
  5. 제 2 항에 있어서, 상기 신호생성수단은 상기 피승수와 승수의 비트를 소정의 규칙에 따라 논리조합하여 상기 최상위비트, 최하위비트 및 나머지 비트생성에 대응되는 상기 입력신호와 제어신호를 각각 생성하는 신호생성기를 포함함을 특징으로 하는 부분곱 행 생성회로
  6. 제 5 항에 있어서, 상기 신호생성수단은 상기 피승수와 승수가 각각 6피트인 경우, 상기 부분곱 행의 최하위비트의 데이터를 생성하기 위하여 하기식(1)과 같은 논리조합에 의한 ZO와 S1와 사용되는 승수의 최상위비트(2번째 부분곱 행을 생성할 경우, X3)를 생성하기 위한 제 1 신호생성기, S1 = X2 XOR X1(여기서 X2와 X1은 사용되는 승수의 비트로서, X2는 2번째 비트이고, X1은 최하위비트이다.)
    ZO = YO(피승수의 최하위비트) XOR X3(사용된 승수의 최상위비트) (1)
    상기 부분곱 행의 나머지비트의 데이터를 생성하기 위하여 하기(2)식과 같은 논리조합에 의한 제어신호(S3)와 승수의 최상위비트(X3) 및 승수의 최상위비트(Z5)를 입력신호로 생성하기 위한 제 2 신호생성기, 및 S3 = ( X3 XOR X2) XOR ( X2 XOR X1) (2)
    상기 부분곱 행의 최상위비트의 데이터를 생성하기 위하여 하기 (3)식과 같은 놀리조합에 의한 제어신호(S2)와 입력신호들(Zi, Ki)을 생성하기 위한 제 3 신호생성기(23)를 포함함을 특징으로 하는 부분곱 행 생성회로.
    S2 = S1
    Ki = (Zi-1 AND K-OR) OR K-AND
    K-AND = X3 AND X2
    K-OR = X3 OR X2
KR1019940012054A 1994-05-31 1994-05-31 수정형 부스승산기에 있어서 부분곱 행 생성회로 KR0141878B1 (ko)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
KR950033810A KR950033810A (ko) 1995-12-26
KR0141878B1 true KR0141878B1 (ko) 1998-07-01

Family

ID=66685929

Family Applications (1)

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

Country Status (1)

Country Link
KR (1) KR0141878B1 (ko)

Also Published As

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

Similar Documents

Publication Publication Date Title
EP1998249A1 (en) Multiplication circuit, digital filter, signal processing device, synthesis device, synthesis program, and synthesis program recording medium
US4745570A (en) Binary multibit multiplier
US4706211A (en) Digital multiplying circuit
US5467298A (en) Multivalued adder having capability of sharing plural multivalued signals
JP2803601B2 (ja) 有限体元の反転回路
KR0141878B1 (ko) 수정형 부스승산기에 있어서 부분곱 행 생성회로
KR970077987A (ko) 디지털 필터
KR0153963B1 (ko) 수정형 부스승산기에 있어서 부분곱 행 생성회로
US6272513B1 (en) Multiplying device
US6167422A (en) Booth multiplication structure which selectively integrates the function of either of incrementing or negating with the function of booth multiplication
JPH02287874A (ja) 積和演算装置
KR100250468B1 (ko) 상관특성이 우수한 난수 발생 방법
SU1762319A1 (ru) Устройство дл сдвига информации
JP3097081B2 (ja) 段数可変m系列符号発生器
KR0150131B1 (ko) 2의 승수가 아닌 특정값으로 나누는 디바이더
KR0164724B1 (ko) 알 에스 복호기의 곱셈장치
JP4658821B2 (ja) ベジェ曲線生成回路
KR0146255B1 (ko) 확장부스 멀티플라이어
JP3130797B2 (ja) 積和演算処理方法およびその装置
JPH02203393A (ja) 歪発生装置
KR950006778B1 (ko) 데이타 신장회로
KR0134295B1 (ko) 양자화스케일 생성장치
KR0141879B1 (ko) 파이프라인을 이용한 수정형 부스승산기
KR100292067B1 (ko) 이산시간셀룰러신경회로망용셀
KR100623604B1 (ko) 데이터 처리장치 및 그의 데이터 처리 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110302

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee