KR100449963B1 - 가산 회로 및 이를 구비한 승산 회로 - Google Patents

가산 회로 및 이를 구비한 승산 회로 Download PDF

Info

Publication number
KR100449963B1
KR100449963B1 KR1020030002342A KR20030002342A KR100449963B1 KR 100449963 B1 KR100449963 B1 KR 100449963B1 KR 1020030002342 A KR1020030002342 A KR 1020030002342A KR 20030002342 A KR20030002342 A KR 20030002342A KR 100449963 B1 KR100449963 B1 KR 100449963B1
Authority
KR
South Korea
Prior art keywords
circuit
signal
digit
exclusive
partial product
Prior art date
Application number
KR1020030002342A
Other languages
English (en)
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 후지쯔 가부시끼가이샤
Application granted granted Critical
Publication of KR100449963B1 publication Critical patent/KR100449963B1/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
    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
    • H03K19/215EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical using field-effect transistors

Abstract

본 발명은 승산 회로에 관한 것으로, 고속성을 희생시키는 일없이 필요 소자수를 감소시켜서 소형화한 승산 회로의 제공을 목적으로 한다.
승수 비트 신호(bj)를 입력하여 복수개의 인코드 신호를 출력하는 인코더(205:12)와, 이 인코드 신호와 각 자릿수의 피승수 비트 신호(ai,/ai)를 입력하여 각 자릿수의 부분곱 비트를 생성하는 부분곱 비트 생성 회로(14)를 구비한 디지탈 승산 회로로서, 상기 부분곱 비트 생성 회로(14)는 상기 피승수 비트 신호의 값에 따라서 상기 인코드 신호 중의 논리적으로 올바른 신호를 선택하는 제1 선택 회로(201, 203)을 구비하도록 구성한다.

Description

가산 회로 및 이를 구비한 승산 회로{AN ADDER CIRCUIT AND A MULTIPLIER CIRCUIT INCLUDING THE ADDER CIRCUIT}
본 발명은 승산 회로, 이 승산 회로를 구성하는 가산 회로, 이 승산 회로의 부분곱 비트 압축 방법 및 이 승산 회로를 적용한 대규모 반도체 집적 회로에 관한 것으로, 특히, 고속성을 희생하는 일없이 필요 소자수를 감소시켜서 소형화한 승산 회로에 관한 것이다.
근래, 마이크로 프로세서나 디지탈 신호 처리 프로세서로 대표되는 바와 같이, 대규모 반도체 집적 회로의 제조 및 설계 기술의 장족의 진보에 따라서, 고속이고 대규모인 연산 회로의 수요가 증대하고 있다. 특히, 연산 시간이 길고 또한, 많은 회로를 필요로 하는 승산 회로에 대해서는 소자수가 적은 고속 회로가 요망되고 있다.
종래부터, 고속이고 소자수가 적은 승산 회로 방식으로서는 부스(Booth)의 알고리즘과 월레스 트리(Wallace Tree)의 병용 방식이 잘 알려져 있다.
도 1은 승산 회로의 일예를 개략적으로 나타내는 블록도이다. 도 1에 있어서, 참조 부호 11은 승수 레지스터, 12는 부스 인코더, 13은 피승수 레지스터, 14는 부분곱 비트 생성 회로, 15는 월레스 트리 회로, 16은 자릿수 올림 전달 가산 회로, 그리고, 17은 곱 레지스터를 나타내고 있다.
도 1에 도시된 바와 같이, 승수 레지스터(ll)로부터 출력되는 각 승수 비트는 부스 인코더(12)를 경유하여 인코드 신호의 조로서 부분곱 비트 생성 회로(14)에 입력된다. 한편, 피승수 비트 신호(13)는 직접 부분곱 비트 생성 회로(14)에 입력된다.
부분곱 비트 생성 회로(14)에서는 피승수 비트 신호와 인코드 신호의 조에서, 각 자릿수의 부분곱 비트를 생성한다. 이들 부분곱 비트 신호는 자릿수 맞춤을 행하여 대응하는 월레스 트리 회로(15)를 구성하는 다단 구성의 자릿수 올림 보존형 가산 회로(4-2압축 회로나 1비트 가산 회로등)에 입력되어 동위(同位) 자릿수의 압축이 행해지며, 동위 자릿수에 있어서의 가산 비트수가 2가 될 때까지 동위 자릿수 가산이 반복된다. 각 자릿수에서 동위 자릿수가 2가 되면, 그것들의 신호는 자릿수 올림 전달형 가산 회로(16)에 입력되어 통상의 2입력 가산이 행해지고, 또, 각 자릿수의 곱신호가 생성되어 곱 레지스터(17)에 격납된다.
전술한 도 1의 승산 회로의 구성에서는 부스 인코더(인코더)와 부분곱 비트생성 회로 및 월레스 트리 회로의 부분을 분리하여 생각할 필요가 있다.
우선, 인코더와 부분곱 비트 생성 회로에 관해서 진술한다. 이 양쪽은 서로 관련되어 있기 때문에, 동시에 생각할 필요가 있다. (변형) 2차 부스의 알고리즘에 기초하는 인코드의 구체예는 예컨대, 일본 특허 공개 공보 제55-105732호에 개시되어 있다.
도 2는 종래의 승산 회로에서의 부분곱 비트 생성 회로(14)의 일예를 나타내는 회로도이고, 상기의 일본 특허 공개 공보 제55-l05732호에 개시된 것을 나타내고 있다. 또한, 다음 표 1은 2차 부스의 인코드 방법을 설명하기 위한 진리값표이다.
bj-1 bj bj+1 Xj 2Xj Mj PLj
0 0 0 0 0 0 0
0 0 1 0 1 1 0
0 1 0 1 0 0 1
0 1 1 1 0 1 0
1 0 0 1 0 0 1
1 0 1 1 0 1 0
1 1 0 0 1 0 1
1 1 1 0 0 0 0
여기서, ai는 m비트 피승수의 제i 자릿수(제0 자릿수는 최하위 자릿수, 제(m-1) 자릿수는 부호를 나타내는 최상위 자릿수 비트이며,, 2의 보수로 표시됨)이며, bj는 n비트 승수의 제j 자릿수이고 피승수와 동일하게 표기하는 것으로 한다. 또한, Xj, 2Xj, Mj는 승수의 제j 자릿수에 관한 2차 부스의 인코더 출력 신호의 조(set)로서, 각각 1×피승수, 2×피승수, 피승수의 부정 신호를 해당 자릿수의 부분곱 비트 신호로서 출력해야 할 것을 나타내고 있다. 또, 표 1에 나타낸 바와 같이, 부스 인코더(12)에 있어서의 인코더는 승수 bj-1, bj, bj+1의 값(레벨)으로부터 각각 대응하는 레벨의 Xj, 2Xj, Mj(PLj)를 생성한다.
도 2에 도시된 부분곱 비트 생성 회로(14)는 이들 3개의 신호(Xj, 2Xj,Mj)와 피승수 비트(ai, ai-1)로부터, 제i 자릿수의 피승수, 제j 자릿수의 승수에 관한 부분곱 비트 신호 Pi,j를 생성하는 회로이다. 이 도 2의 부분곱 비트 생성 회로(14)는 부스 인코딩의 결과로서, 승수 2비트분에 관하여 1조의 인코더 출력 신호를 생성하기 때문에, 동위 자릿수 가산 비트수가 직접 가산된 경우에 비하여 반감하여, 연산의 고속화와 필요 회로수의 감소가 가능해진다.
도 2에 나타낸 바와 같이, 이 부분곱 비트 생성 회로는 2개의 AND 회로(l01,102), 1개의 NOR 회로(l03) 및 1개의 ENOR 회로(104)에 의해 구성되고, 대규모 반도체 집적 회로의 구축에 가장 많이 사용되고 있는 CMOS(상보형 금속-산화막-반도체) 디바이스 기술을 이용하여 실현하면, 18개의 트랜지스터(소자)를 필요로 한다.
도 3은 종래의 승산 회로에서의 부분곱 비트 생성 회로(14)의 다른 예를 나타내는 회로도이고, 일본 특허 공개 공보 제4-227534호에 개시된 것을 나타내고 있다.
도 3에 도시된 부분곱 비트 생성 회로(14)에서는 부스 인코더(12)의 출력신호는 SX2(+2일 때), SX2*(-2일 때), SXl(+1일 때), SXl*(-1일 때) 및 S0(0일 때)의 5조의 신호로 이루어지고, 피승수 비트 ai, ai-1, /ai, /ai-1의 신호와 "1"(고레벨″H″) 고정 신호 중 어느 하나를 선택하여, 인버터를 통해 출력하도록 되어 있다. 이 도 3의 부분곱 비트 생성 회로는 1개의 트랜지스터(P채널형 MOS 트랜지스터)(105), 4개의 전송 게이트(106∼109) 및 5개의 인버터(110∼114)로 구성되고, 필요한 소자수는 도면에 그려져 있는 것만으로 19개이다.
또한, 도 3의 부분곱 비트 생성 회로에서는 ai,ai-1(피승수 비트 신호)의 신호선을 직접 전송 게이트의 입력 단자에 연결하도록 하고 있지만, 이 경우에는 ai,ai-1를 출력하는 게이트의 구동 능력이 상당히 크지 않으면, 전송 게이트와 구동 게이트의 직렬 저항과 본 회로내 인버터의 게이트 용량, 입력 단자에 연결되는 배선 용량, 전송 게이트의 소스-드레인 용량의 총계로 결정되는 용량과의 시정수가 커지며, 신호 파형의 지연에 의한 소비 전력의 증대, 신호의 상승-하강 시간증가에 의한 지연 시간의 증대를 초래하게 된다.
따라서, 동일한 ai의 신호선으로부터 접속할 수 있는 부분곱 비트 생성 회로는 기껏 2개이고, 그 이상의 생성 회로로의 신호 공급은 별도 버퍼 회로를 통해 행할 필요가 있다. 또, ai, ai-1를 반전하기 위한 인버터가 필요하기 때문에, 이것들의 부가 회로에서 1비트당 4개로, 합계 23개의 소자(23개의 트랜지스터)가 필요해진다. 또, SX2, SX2*, SXl, SX1*의 각 신호의 부정 신호를 미리 준비하여 부분곱 비트 생성 회로에 입력해 주면 전송 게이트 제어용의 인버터가 불필요해지고 필요수를 15개까지 줄일 수 있지만, 그 경우에는 인코드 신호선이 9개로 1조가 되기 때문에, LSI화를 고려했을 때 배선넥크가 될 우려가 있어 바람직하지 못하다.
도 4는 종래의 승산 회로에서의 부분곱 비트 생성 회로(14)의 또 다른 예를 나타내는 회로도이고, 일본 특허 공개 공보 제5-88852호에 개시된 것을 나타내고 있다. 이 도 4에 도시된 부분곱 비트 생성 회로(14)는 1개의 트랜지스터(115), 2개의 전송 게이트(116,117), 3개의 인버터(118∼120) 및 1개의 ENOR 회로(121)로 구성되고, 21개의 소자를 필요로 한다.
다음에, 월레스 트리 회로(15)에 관한 종래 회로를 언급한다. 부스 인코더(12)를 경유하여 생성된 동위 자릿수 부분곱 비트(최대로 (n/2+1)개)를, 월레스 트리 회로(15)에서는 1비트당 2개의 동위 자릿수가 될 때까지, 자릿수 올림 보존형 가산 회로를 이용하여 반복 압축한다. 이 때 사용하는 자릿수 올림 보존형 가산 회로로서, 1비트 전가산 회로나 4-2압축 회로가 사용된다. 또, 동위 자릿수가 많을 때는 후자의 회로를 이용한 쪽이 고속으로 처리를 행할 수 있는 경우가 많다.
도 5는 종래의 승산 회로에서의 월레스 트리 회로(l5)를 구성하는 4-2압축 회로의 일예를 나타내는 회로도이고, 일본 특허 공개 공보 제2-112020호에 개시된 것을 나타내고 있다. 도 5에 도시된 4-2압축 회로는 1개의 인버터(122), 2개의 AND 회로(123, 124), 3개의 OR 회로(125∼127), 3개의 NAND 회로(128∼130), 1개의 NOR 회(131) 및 4개의 EOR 회로(132∼135)로 구성되어 있다. 즉, 도 5에 도시된 대표적인 4-2압축 회로는 출력 신호의 하나인 합신호(Si,j)를 생성하기 위해서 중간 자릿수 올림 신호(Cin)을 포함해서 5개의 입력의 배타적 논리합(EOR)을 취하는 4개의 EOR 회로(132∼135)가 필요해진다.
도 6은 종래부터 사용되고 있는 10트랜지스터 EOR 회로(상보 전송 게이트형EOR 회로)를 나타내는 회로도이고, 2개의 입력 신호 x1와 x2의 배타적 논리합 신호(EOR 신호)를 생성하기 위한 것이다. 또한, 도 7은 종래부터 사용되고 있는 6트랜지스터 EOR 회로(단일 전송 게이트형 EOR 회로)를 2조(EOR1,EOR2) 사용하여 구성한 전가산 회로의 합신호 생성 회로를 나타내는 회로도이며, 3개의 입력 신호 x1, x2, x3의 EOR 신호를 생성하기 위해서 EOR 회로를 2단 설치한 것이다.
도 6에 도시된 바와 같이, LSI를 만드는데 가장 많이 사용되고 있는 CMOS 회 로 기술을 이용했을 때, 상보 전송 게이트형 EOR 회로는 통상, 3개의 인버터(136∼138) 및 2개의 전송 게이트(139, 140)의 10개의 트랜지스터가 필요하게 된다.
또한, 도 7에 도시된 바와 같이, 1개의 EOR 회로(EOR1)는 트랜지스터(141, 142), 1개의 전송 게이트(143) 및 1개의 인버터(144)로 구성할 수 있다. 즉, EOR회로는 6개의 트랜지스터(소자)로 구성하는 것도 가능하다. 이 6개의 트랜지스터로 구성한 단일 전송 게이트형 6트랜지스터 EOR 회로는 예컨대, 일본 특허 공개 공보 제58-211252호, 일본 특허 공개 공보 제59-211138호, 일본 특허 공개공보 제61-262928호, 혹은 일본 특허 공개 공보 제4-227534호 등의 많은 문헌에 참조되고 있다.
그런데, 전술한 6트랜지스터 EOR 회로는 도 6에 도시된 10트랜지스터 EOR 회로와 비교하여 처리 속도가 상당히 느리고, 특히, 도 7에 도시된 2개의 EOR 회로를 직접 결합시켰을 때에, 그 지연이 치명적이게 된다. 그 이유는 다음과 같다.
지금, 도 7에 있어서, X1="1", X2="1", X3="1"이고, 다음 순간에, X1=:"0", X2="0", X3="1"로 변화했다고 하면, N 채널형 트랜지스터(142;T1)가 온에서 오프 상태로 변화하고, 또한, P 채널형 트랜지스터(141;T2, 140;T3)이 오프에서 온상태로 변화한다. 그 결과, 전류의 흐름이 노드 N2에서 노드 N3으로 변화하지만, 노드 N2와 노드 N3과는 전기적으로 격리(차단)되어 있기 때문에, 노드 N2의 변화가 노드 N3에 미치는 일은 없다. 또한, 반대로, 노드 N3의 변화가 노드 N2에 미치는 경우도 없다. 또, 노드 N1의 전위는 저항치가 높은 P 채널형 트랜지스터(T2 및 T3)의 직렬 회로에 전류가 흐르기 시작하고 나서 변화하는 것이기 때문에 완만하게 밖에 변화하지 않는다.
이것에 대하여, 도 6의 P 채널형 트랜지스터 및 N 채널형 트랜지스터의 병렬접속으로 이루어지는 스위치 회로[전송 게이트(139, 140)]에서는 한쪽의 트랜지스터가 온에서 오프가 될 때는 또 한쪽의 트랜지스터는 오프에서 온이 되고, 쌍방의 상태 변화가 서로 영향을 미쳐 변화를 가속하기 때문에, 고속의 스위칭이 가능해진다. 이상과 같이, 6트랜지스터 EOR 회로는 사용 소자수가 적은 만큼 처리 속도가 희생되어, 고속을 요하는 회로에서는 사용하기 어렵다. 또, 도 5에 도시된 월레스 트리 회로를 10트랜지스터 EOR 회로로 구성하면, 전부 66개의 소자(66개의 트랜지스터)가 필요해진다.
도 8 및 도 9는 전송 게이트를 이용한 경우에 생기는 동작 지연을 설명하기위한 도면이다.
우선, 도 8a에 도시된 바와 같이, 구동 게이트(DG)로부터의 신호 S가 전송 게이트(TG)에 공급되고, 해당 전송 게이트(TG)의 출력에 의해 복수의 부하(LG)(예컨대, n개의 인버터)가 구동될 경우를 생각하면, 그 등가 회로로서는 도 8b와 같이 된다. 즉, 이 등가 회로는 구동 게이트(DG)에 의한 전압원(E) 및 저항분(Rd), 전송 게이트(TG)의 저항분(온저항)(Rt), 이 전송 게이트(TG)를 구성하는 트랜지스터의 소스 및 드레인에 있어서의 용량분(Cs 및 Cd) 및 n개의 각 부하(LG)의 입력 용량(Cg)에 의해 표시된다.
또, 설명을 간략화하기 위해서, 도 8b의 등가 회로를 도 8c와 같이 재기록하여 생각하면, 신호(S)의 상승-하강에 있어서의 지연 시간 τ1은 다음 식으로 표시된다. 여기서, Rt≒1/2·Rd, Cs≒Cd≒Cg로 가정한다. 또, 반도체 디바이스가 미세화되고, 예컨대, 선폭이 0.35μm정도의 CMOS 디바이스에서는 실질적으로 Cs≒Cd≒Cg로 간주할 수 있다.
이와 같이, 전송 게이트(TG)에 의해 부하(LG)를 구동할 경우에는 해당 각 부하(LG)의 입력 용량(Cg)를 1.5배한 것을 구동하지 않으면 안되고, 지연 시간 τ1이 크게(구동 속도가 느리게) 되어 버린다. 또, 수학식 1에 있어서의 (n+2)의 +2의 항에 의한 영향도 관여하게 되어, n에 단순 비례하는 이상으로 지연 시간 τ1이 커진다.
한편, 도 9a에 도시된 바와 같이, 구동 게이트(DG)로부터의 신호(S)가 직접 복수의 부하(LG)(예컨대, n′개의 인버터)에 공급되어 구동할 경우, 그 등가 회로로서는 도 9b와 같이 된다. 또, 도 9b의 등가 회로를 간략화하면, 도 9c와 같이 된다. 여기서, 신호(S)의 상승-하강에 있어서의 지연 시간 τ2는 다음 수학식 2로 표시된다.
이 도 9에 도시된 구동 게이트(DG)에 의해 n′개의 부하(LG)를 구동할 경우에는 각 부하(LG)의 입력 용량(Cg)의 n′개분을 구동하는 것만으로 좋기 때문에, 도 8에서 설명한 바와 같은 전송 게이트(TG)에 의해 n개의 부하(LG)를 구동할 경우보다도, 고속 구동이 가능해진다.
도 10은 종래의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축 회로의 다른 예를 나타내는 회로도이고, 미국의 IEEE(The Institute of Electrical and Electronics Engineers, INC.)가 발행하고 있는 잡지 "IEEE Journal of Solid-State Circuits″의 1995년 3월호에 게재된 승산 회로의 논문(pp.251∼257)에서 채용하고 있는 4-2압축 회로의 구성을 나타내는 것이다. 도 10에 도시된 바와 같이, 이 4-2압축 회로(DPL(Dual Pass Transistor Logic)4-2 Compressor)는 8개의 인버터(145∼152) 및 9개의 상보 전송 게이트(153∼161)로 구성되어, 전부 52개의 소자(52개의 트랜지스터)를 구비하여 구성되어 있다. 그러나, 이 도 10에 도시된 4-2압축 회로도 신호 입력 단자에 직접 전송 게이트의 직렬 저항이 접속하는 구성으로 되어있기 때문에, 입력 단자에 긴 배선이 연결되는 등 입력 용량이 클 때나, 그 외에 입력 저항이 존재할 때는 신호의 상승-하강 시간이 커져서 처리 속도가 느려진다.
그런데, 월레스 트리 회로부에서는 압축하여야 할 동위 자릿수 비트수를 적게 할 수 있으면 압축 회로도 적게 할 수 있고, 그 결과, 승산 회로의 소형화에 기여할 수 있다. 그리고, 종래, 동위 자릿수 비트수의 삭감은 주로 부분곱의 부호비트의 압축이라는 관점에서 행해져 왔다. 예컨대, 일본 특허 공개 공보 제57-121736호 및 일본 특허 공개 공보 제59-3634호 등에 그 구체예가 표시되어 있다.
또한, 일본 특허 공개 공보 제4-287220호에는 2의 보수 표현의 부분곱(배수)을 가산할 때에, 각각의 부분곱의 부호를 상위 자릿수로 확장하는 일 없이 올바른 연산 결과를 얻을 수 있게 하는 보정 수단이 개시되어 있으며, 상기 부분곱의 부호 조작과 보정값을 가산하기 위한 독립된 보정 회로를 부가하지 않고, 이 보정 수단을 사용하여 이 독립된 보정 회로와 동등한 연산 결과가 얻어질 수 있도록 하기 위하여, 이 부분곱의 집합을 가산하기 위한 가산기에 변형을 가한 승산 회로에 관한 설명이 기재되어 있다. 그러나, 일본 특허 공개 공보 제4-287220호에 표시된 방법에서는 부호 자릿수에 관련된 회로를 간략화하는 것은 가능해도, 2차 부스(Booth) 알고리즘을 이용했을 때의 동위 자릿수 부분곱 비트의 최대수(n/2 + 1)는 변경되지 않기 때문에, 월레스 트리 회로부의 임계 경로를 단축할 수 없다.
또, 1996년의 전자 정보 통신 학회 종합 대회의 일반강연 C-541(강연 설문집: 일렉트로닉스2, p.157)에 있어서, 피승수의 하위 5비트분에 관해서 미리 2의 보수를 구해 두고, 부스의 인코드 결과가 부일 때에, 통상의 부분곱 비트에 대신하여 미리 구해둔 2의 보수 비트를 출력하는 것으로, 동위 자릿수 부분곱 비트의 최대수를 n/2개로 압축하여 고속화를 도모하는 방법이 제안되고 있다. 이 방법에서는 동위 자릿수 부분곱 비트의 최대수를 삭감하여 월레스 트리부의 임계 경로를 단축하는 것은 가능하지만, 5비트의 보수를 발생시키는 곳에서 부스 인코더 이상의 지연이 발생하며, 또, 5비트의 보수 발생 회로를 필요로 하기 때문에, 부분곱의 최대수를 감한 것에 의한 고속화의 효과가 상쇄되며, 또한, 승산 회로 전체의 소자수는 반대로 증가하게 될 경우도 있을 수 있다.
또한, 인코더와 부분곱 비트 생성 회로에 관하여, 종래의 부분곱 비트 생성회로(14)는 1비트에 관하여 20전후의 소자를 필요로 하고 있으며, 부스의 인코딩에 의해, 가산하여야 할 동위 자릿수 비트수는 반감하지만, 부분곱 비트 생성에 많은 소자를 필요로 하기 때문에, 전체의 회로 소자수의 감소가 기대할 만큼 크지 않고,특히, 승수 자릿수(n)가 작을 경우는 반대로 총소자수가 증가해 버릴 경우가 있었다.
전술한 바와 같이, 종래의 기술에 있어서도, 여러가지 관점에서 승산 회로의 고속화, 소자수 삭감이 행해지고 있지만, 또, 보다 더 고속이고 또한 소자수가 적은 승산 회로의 고안의 여지가 남아 있다. 그리고, 본 발명은 승산 회로의 각 부분 회로를 개량하여, 그것들의 조합에 의해 종래 이상으로 뛰어난 승산 회로를 제공하는 것이다.
이와 같이, 본 발명은 전술한 종래 기술이 갖는 과제에 감안하여, 고속성을 희생으로 하는 일 없이 필요 소자수를 감소시켜서 소형화한 승산 회로의 제공을 목적으로 한다.
즉, 본 발명은 필요 소자수를 반감할 수 있는 부분곱 비트 생성 회로(승산 회로) 및 이 부분 비트 생성 회로를 실현하는데 적합한 인코더(부스 인코더)의 제공을 제1 목적으로 한다. 또한, 본 발명은 4 동위 자릿수 입력 자릿수 올림 보존형 가산 회로(4-2압축 회로)에 관하여, 종래, 50소자를 초과한 회로였던 것을, 고속성을 희생하지 않고 50소자 이하로 구성할 수 있는 가산 회로(4-2압축 회로:승산 회로)의 제공을 제2 목적으로 한다. 또, 본 발명은 동위 자릿수 부분곱 비트수의 삭감에 관하여, 종래보다도 필요한 소자수가 증대하지 않고, 또한, 부분곱 비트의 압축 처리에서의 임계 경로를 단축할 수 있는 부분곱 비트 압축 방법의 제공을 제3 목적으로 한다.
도 1은 승산 회로의 일예를 개략적으로 나타내는 블록도.
도 2는 종래의 승산 회로에서의 부분곱 비트 생성 회로의 일예를 나타내는 회로도.
도 3은 종래의 승산 회로에서의 부분곱 비트 생성 회로의 다른 예를 나타내는 회로도.
도 4는 종래의 승산 회로에서의 부분곱 비트 생성 회로의 또 다른 예를 나타내는 회로도.
도 5는 종래의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축 회로의 일예를 나타내는 회로도.
도 6은 종래부터 사용되고 있는 10트랜지스터 EOR 회로를 나타내는 회로도.
도 7은 종래부터 사용되고 있는 6트랜지스터 EOR 회로를 2조 사용하여 구성한 전가산 회로의 합신호 생성 회로를 나타내는 회로도.
도 8a, 8b 및 8c는 전송 게이트를 이용한 경우에 생기는 동작 지연을 설명하기 위한 도면.
도 9a, 9b 및 9c는 전송 게이트를 이용한 경우에 생기는 동작 지연을 설명하기 위한 도면.
도 10은 종래의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축회로의 다른 예를 나타내는 회로도.
도 11은 본 발명에 관한 승산 회로에서의 부분곱 비트 생성 회로의 기본 구성을 나타내는 블록도.
도 12는 본 발명의 승산 회로에서의 부분곱 비트 생성 회로에 이용하는 선택회로의 일예를 나타내는 회로도.
도 13은 본 발명의 승산 회로에서의 부분곱 비트 생성 회로의 다른 실시예를 나타내는 회로도.
도 14는 본 발명의 승산 회로에서의 부스 인코더의 일예를 나타내는 회로도.
도 15는 본 발명의 승산 회로에서의 부분곱 비트 생성 회로의 배치의 모양을 나타내는 도면.
도 16은 본 발명의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축 회로의 일실시예를 나타내는 회로도.
도 17은 본 발명의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축 회로의 다른 실시예를 나타내는 회로도.
도 18은 본 발명의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축 회로의 또 다른 실시예를 나타내는 회로도.
도 19는 본 발명에 관한 승산 회로의 부분곱 비트수 압축 방법의 일예를 설명하기 위한 도면.
도 20은 도 19의 부분곱 비트수 압축 방법을 실현하기 위한 일실시예를 나타내는 회로도.
도 21은 도 19의 부분곱 비트수 압축 방법을 실현하기 위한 일실시예를 나타내는 회로도.
도 22a 및 도 22b는 본 발명에 관한 승산 회로의 부분곱 비트수 압축 방법의 다른 실시예를 종래예와 비교하여 설명하기 위한 도면.
〈도면의 주요 부분에 대한 부호의 설명〉
11 : 승수 레지스터
12 : 부스 인코더
13 : 피승수 레지스터
14 : 부분곱 비트 생성 회로
15 : 월레스 트리 회로
16 : 자릿수 올림 전달형 가산 회로
17 : 곱 레지스터
201, 203 : 제1 선택 회로
202, 204 : 제2 선택 회로
205 : 인코더(부스 인코더12)
본 발명의 제1 형태에 의하면, 승수 비트 신호를 입력하여 복수개의 인코드신호를 출력하는 인코더와, 이 인코드 신호와 각 자릿수의 피승수 비트 신호를 입력하여 각 자릿수의 부분곱 비트를 생성하는 부분곱 비트 생성 회로를 구비한 디지탈 승산 회로로서, 상기 부분곱 비트 생성 회로는 상기 피승수 비트 신호의 값에 따라서 상기 인코드 신호 중의 논리적으로 참값을 갖는 신호를 선택하는 제1 선택 회로를 구비하는 것을 특징으로 하는 승산 회로가 제공된다.
본 발명의 제2 형태에 의하면, 4개의 동위 자릿수 입력 신호 및 1개의 중간자릿수 올림 신호를 입력하여, 1개의 중간 자릿수 올림 신호, 합신호 및 자릿수 올림 신호를 생성하는 자릿수 올림 보존형 가산 회로로서, 제1 동위 자릿수 입력 신호 및 제2 동위 자릿수 입력 신호의 논리합 신호 또는 이 논리합의 부정 신호(혹은 논리곱 신호 또는 이 논리곱의 부정 신호)와 배타적 논리합 신호를 생성하고, 이 배타적 논리합 신호가 제1 값("1")일 때는 제3 동위 자릿수 입력 신호를 상기 중간 자릿수 올림 신호로서 출력하며, 또한, 이 배타적 논리합 신호가 제2 값("0")일 때는 상기 논리합 신호 또는 이 논리합의 부정 신호(혹은 논리곱 신호 또는 이 논리곱의 부정 신호)를 상기 중간 자릿수 올림 신호로서 출력하는 것을 특징으로 하는 가산 회로가 제공된다.
본 발명의 제3 형태에 의하면, 부스의 알고리즘을 이용하는 승산 회로의 부분곱 비트 압축 방법으로서, 최상위 부분곱에 대한 2의 보수 생성용 보정값과, 최하위 부분곱의 부호 자릿수 및 이 최상위 부분곱의 최하위 자릿수로부터 이 최하위 부분곱의 부호 자릿수의 1자릿수 하위의 자릿수까지의 비트로 표현되는 2진수와의합에 상당하는 각 자릿수의 비트 신호를, 부스의 알고리즘에 따른 부분곱 비트 신호에 대신하여 직접 생성하도록 한 것을 특징으로 하는 승산 회로의 부분곱 비트 압축 방법이 제공된다.
본 발명에 관한 제1 형태의 승산 회로에 의하면, 부분곱 비트 생성 회로가 갖는 제1 선택 회로는 피승수 비트 신호의 값에 따라서 인코드 신호 중의 논리적으로 올바른 신호를 선택한다. 여기서, 제1 선택 회로에 의해 선택되는 인코드 신호는 인코드된 결과로서 필요한 신호가 피승수 비트 신호 그대로인지 혹은 그 부정 신호인지를 식별하는 신호로 되어 있다.
본 발명에 관한 제2 형태의 가산 회로에 의하면, 제1 동위 자릿수 입력 신호 및 제2 동위 자릿수 입력 신호의 논리합 신호 또는 이 논리합의 부정 신호(혹은 논리곱 신호 또는 이 논리곱의 부정 신호)와 배타적 논리합 신호가 생성되며, 이 배타적 논리합 신호가 제1 값("1")일 때는 제3 동위 자릿수 입력 신호를 중간 자릿수 올림 신호로서 출력하고, 또한, 이 배타적 논리합 신호가 제2 값("0")일 때는 논리합 신호 또는 이 논리합의 부정 신호(혹은 논리곱 신호 또는 이 논리곱의 부정 신호)를 중간 자릿수 올림 신호로서 출력하도록 되어 있다.
본 발명에 관한 제3 형태의 승산 회로의 부분곱 비트 압축 방법에 의하면, 최상위 부분곱에 대한 2의 보수 생성용 보정값과, 최하위 부분곱의 부호 자릿수 및 이 최상위 부분곱의 최하위 자릿수로부터 이 최하위 부분곱의 부호 자릿수의 1자릿수 하위의 자릿수까지의 비트로 표현되는 2진수와의 합에 상당하는 각 자릿수의 비트 신호가 부스의 알고리즘에 따른 부분곱 비트 신호에 대신하여 직접 생성되도록되어 있다.
이와 같이, 본 발명에 의하면, 고속성을 희생하는 일 없이 필요 소자수를 감소시켜서 소형화한 승산 회로를 제공할 수 있다.
이하, 도면을 참조하여 본 발명에 관하는 승산 회로, 이 승산 회로를 구성하는 가산 회로, 이 승산 회로의 부분곱 비트 압축 방법 및 이 승산 회로를 적용한 대규모 반도체 집적 회로의 각 실시예를 설명한다.
우선, 본 발명의 제1 형태인 필요 소자수를 반감할 수 있는 부분곱 비트 생성 회로(승산 회로) 및 이 부분곱 비트 생성 회로를 실현하는데 적합한 인코더(부스 인코더)의 실시예를 설명한다.
도 11은 본 발명에 관한 승산 회로에서의 부분곱 비트 생성 회로(14)의 기본구성을 나타내는 블록도이다. 동일 도면에 있어서, 참조 부호 201은 제i 자릿수의 피승수 비트 ai에 관한 제1 선택 회로, 202는 이 피승수 비트 ai에 관한 제2 선택 회로, 203은 제(i+1) 자릿수의 피승수 비트 ai+1에 관한 제1 선택 회로, 그리고, 204는 이 피승수 비트 ai+1에 관한 제2 선택 회로를 나타내고 있다. 또한, 참조 부호 205는 제j 자릿수의 승수 비트 bj 및 그 상하 자릿수의 승수 비트를 이용하여 인코드 신호 B1j, B2j, B3j, /B3j를 생성하는 인코더를 나타내고 있다.
제i 자릿수의 피승수 비트 ai의 제1 선택 회로(201)는 이 피승수 비트 ai가 "1"일 때는 인코드 신호 Blj를 출력하고, 또한, 피승수 비트 ai가 "0"일 때는 인코드 신호 B2j를 출력한다. 또, 다른 선택 회로(202∼204)도 동일한 기능을 가진다.
본 실시예에서, 인코더(12)는 2차 부스의 인코더이고, 전술한 표 1의 진리값표에 도시된 바와 같이, B1j=PLj(인코드 결과가 정), B2j=Mj(인코드 결과가 부), B3j=Xj(인코드 결과가 1X피승수), /B3j=/Xj로 하면, 제i 자릿수의 피승수 비트 ai의 제2 선택 회로(202)는 이 피승수 비트 ai와 승수 비트 bj에 관한 부분곱 비트 Pi,j를 출력하고, 또한, 제(i+1) 자릿수의 피승수 비트 ai+1의 제2 선택 회로(204)는 이 피승수 비트 ai+1와 승수 비트 bj에 관한 부분곱 비트 Pi+1, j를 출력하게 된다.
즉, 도 11의 회로는 피승수의 연속하는 2비트분(ai, ai+1)의 부분곱 비트 생성 회로에 상당한다. 여기서, 참조 부호 Ei-1, j는 1자릿수 하위의 피승수 비트 ai-1에 관한 제1 선택 회로(203)로 선택 출력된 신호이다. 따라서, 도 11에 도시된 회로로 선택 출력된 신호 Ei+1, j는 1자릿수 상위의 부분곱 비트 Pi+2, j의 생성에 관여하게 된다. 후술하는 바와 같이, 본 발명의 제1 형태는 도 11과 같은 각 구성을 채용함으로써, 선택 회로(201∼204)를 EOR 회로보다도 적은 소자로 구성할 수 있으며, 그 결과, 이하에 설명한 바와 같이, 종래보다도 적은 소자수로 또한 처리속도를 열화시키는 일 없이 부분곱 비트의 생성이 가능해진다.
도 12는 본 발명의 승산 회로에 있어서의 부분곱 비트 생성 회로에 이용하는 선택 회로(201∼204)의 일예를 나타내는 회로도이다.
도 12에 도시된 바와 같이, 선택 회로[제1 선택 회로(201, 203) 및 제2 선택 회로(202, 204)]는 2개의 AND 회로(301, 302) 및 1개의 NOR 회로(303)를 구비하여 구성된다. 여기서, 제1 선택 회로(201, 203)의 출력은 선택한 신호가 반전하여 출력되지만, 후속의 제2 선택 회로(202, 204)로 이 반전 신호가 또 반전되며, 결국,제2 선택 회로(202, 204)의 출력은 선택한 신호의 비반전 신호가 된다. 본 실시예에서는 부분곱 비트 생성 회로(2비트분)에 요하는 소자수(트랜지스터수)는 8×4=32개이고, 1비트당 16개가 된다. 따라서, 본 실시예의 부분곱 비트 생성 회로(1비트당 16개)는 전술한 도 2(1비트당 18개), 도 3(1비트당 19개) 및 도 4(1비트당 21개)에 도시된 종래의 부분곱 비트 생성 회로(14)에 비하여, 적은 소자수로 구성하는 것이 가능함을 알 수 있다.
도 13은 본 발명의 승산 회로에서의 부분곱 비트 생성 회로(14)의 다른 실시예를 나타내는 회로도이고, 전술한 도 12의 선택 회로에 의해 구성한 부분곱 비트생성 회로에서의 소자수를 더욱 감소하도록 한 것이다.
도 13에 나타낸 바와 같이, 본 실시예의 부분곱 비트 생성 회로(2비트분)는 8개의 전송 게이트(304∼311) 및 2개의 인버터(312, 313)를 구비하여 구성되어 있다. 여기서, 도 11의 부분곱 비트 생성 회로(14)와 대조하면, 제i 자릿수의 피승수 비트 ai의 제1 선택 회로(201) 및 제2 선택 회로(202)는 각각 전송 게이트(306, 307) 및 전송 게이트(310, 311)로 구성되고, 또한, 제(i+1) 자릿수의 피승수 비트 ai+1의 제1 선택 회로(203) 및 제2 선택 회로(204)는 각각 전송 게이트(304, 305) 및 전송 게이트(308, 309)로 구성되어 있다.
피승수 비트 ai+1의 제2 선택 회로(204)의 출력 신호 Pi+1,j 및 피승수 비트 ai의 제2 선택 회로(202)의 출력 신호 Pi,j는 논리식으로 기재하면, 다음과 같이 되며, 연속하는 2비트의 부분곱 비트 생성이 행해지고 있는 것을 알 수 있다.
Pi+1, j=(PLj·ai+1 +Mj·/ai+1)·Xj
+(PLj·ai +Mj·/ai)·/Xj
Pi, j=(PLj·ai +Mj·/ai)·Xj
+(PLj·ai-1 +Mj·/ai-1)·/Xj
도 13의 부분곱 비트 생성 회로(2비트분)에서는 필요한 소자수가 20이 되고, 즉, 1비트당 10개의 소자(10개의 트랜지스터)가 되어, 전술한 도 2∼도 4에 도시된 종래의 부분곱 비트 생성 회로(1비트당 18개∼21개)의 약 반정도로 삭감하는 것이 가능해진다.
여기서, 부스의 인코드 신호/PLj(인코드 결과가 정인 신호의 부정 신호) 및 /Mj(인코드 결과가 부인 신호의 부정 신호)를 받는 인버터(312 및 313)는 전송 게이트의 입력 단자에 직접 인코드 신호를 공급함으로써 생기는 폐해(도 3을 참조하여 설명한 문제: 신호 파형의 지연에 의한 소비 전력의 증대, 신호의 상승-하강 시간 증가에 의한 지연 시간의 증대 등의 문제)를 회피하기 위해서 이용하고 있는 것이고, 만약, 인코드 신호를 출력하는 논리 게이트가 충분한 부하 구동 능력을 가지고 있을 필요가 없는 것이다. 그리고, 이것들의 인버터(312 및 313)가 불필요한경우에는 부분곱 비트 생성 회로(2비트분)에 요하는 소자수는 20보다도 적어진다. 또 피승수 비트 ai,ai+1,ai-1등의 부정 신호 생성을 위한 인버터가 별도로 필요하게 되지만, 피승수 비트 신호와 그 부정 신호는 전송 게이트의 게이트 단자에 입력되기 때문에, 신호 버퍼의 구동 능력이 어느 정도 크면 10개 이상의 부분곱 비트 생성 회로로의 입력을 1개의 신호 버퍼로부터 공급할 수 있으며, 예컨대, 승수 자릿수 n이 16이상이면, 이 인버터는 소자의 증가 요인으로서는 무시할 수 있다.
도 14는 본 발명의 승산 회로에 있어서의 부스 인코더의 일예를 나타내는 회로도이고, 도 13에 대응한 2차 부스 인코드 신호 생성 회로(인코더)(12)의 일예를 나타내고 있다. 또, 인코드 신호의 각 기호는 전술한 표 1의 것과 대응하고 있다.
도 14에 도시된 바와 같이, 부스 인코더(12)는 7개의 인버터(314∼320), AND 회로(321), OR 회로(322), NAND 회로(323), NOR 회로(324) 및 ENOR 회로(325)를 구비하여 구성되어 있다. 여기서, 인코드 신호의 출력부에 있는 인버터의 몇개는 인코드 신호 버퍼의 구동 능력이 낮아서 좋은 경우에는 생략할 수 있으며, 예컨대, 인코드 신호/Xj 및 /PLj를 출력하고 있는 연속하는 2개의 인버터(315, 316;317, 318) 등이 생략 가능하다. 또, 부스 인코더(12)를 구성하는데 필요한 소자수는 종래보다도 약간 증가할 경우도 있지만, 피승수 자릿수 m이 16이상의 다비트 승산 회로에서는 인코더가 승수 2비트에 관하여 1개밖에 필요하지 않기 때문에 그 증가분의 영향은 작다.
이상의 예에서는 2차 부스의 인코드를 전제로 하여 설명하였지만, 동일한 회로는 3차 이상의 부스 인코더를 사용할 때도 구성할 수 있으며, 예컨대, 도 11에 있어서, 제2 선택 회로를 4:1의 선택 회로로 하고, 피승수 비트 ai, ai-1, a′i(피승수의 3배치의 제i 자릿수), ai-2의 값에 따라서 선택한 4개의 출력 중의 1개를 인코드 출력 Xj, 2Xj, 3Xj(피승수의 3배치를 선택), 4Xj(피승수의 4배치를 선택) 중의 올바른 값을 갖는 것에 대응시켜서 선택 출력하도록 하면 좋다. 또한, 인코드는 반드시 부스의 방법에 한정되는 것은 아니고, 본 예와 유사한 인코드 수법이면, 도 11의 회로, 혹은 그 일부 변경 회로에 의해 대응 가능한 경우도 있다.
이와 같이, 본 발명의 제1 형태에 의하면, 필요 소자수를 반감할 수 있는 부분곱 비트 생성 회로(승산 회로) 및 해당 부분곱 비트 생성 회로를 실현하는데 적합한 인코더(부스 인코더)가 제공된다.
그런데, 집적 회로(LSI)화에 적합한 고속 승산 회로에서는 필요 소자수를 고속성을 희생하는 일 없이 감소시키는 것 이외에, 집적 회로화에 적합한 레이아웃방법을 생각할 필요가 있다. 이것에 관해서, 본 발명자는 잡지 "IEEE Journal of Solid-State Circuits"의 1992년 9월호에 게재된 승산 회로의 논문(PP. 1229∼1236)에 그 개요를 진술하고 있다. 그러나, 본 발명에서는 상기 논문의 내용과는 다른 회로를 채용하기 때문에, 레이아웃에 관해서도 최적화를 도모할 필요가 있으며, 다음에 그 방법을 설명한다.
도 15는 본 발명의 승산 회로에서의 부분곱 비트 생성 회로의 배치의 모양을 나타내는 도면이다.
도 15에 도시된 바와 같이, 피승수 자릿수에 따른 피승수 비트 신호(ai,ai+1) 및 그 부정 신호(/ai,/ai+1)를, 이차원 평면의 일방향(세로 방향)에 평행 배치하고, 승수 자릿수에 따른 인코드 신호선(Bj,Bj+2,…)의 조를 그것에 교차하도록(다층 배선의 피승수 비트 신호선과는 다른 가로 방향의 배선에 의해) 배열한다. 또, 도 15에 있어서, 예컨대, 상보의 피승수 비트 신호ai,/ai는 통과 배선 영역의 좌측을 세로 방향으로 달리는 1개의 신호선에 의해 그려져 있다. 또한, 도 15 중의 참조 부호 4W는 후술하는 4-2압축 회로를 나타내고 있다.
또, 피승수 비트 신호선 및 인코드 신호선의 미리 정해진 복수의 인접 교점을 포함하도록, 부분곱 비트 생성 회로(P2:14)를 반복 배치한다. 이것에 의해, 동일 회로 셀의 반복 인접 배치를 행하여, 부분곱 생성 회로의 배열을 행할 수 있으며, 승산 회로의 주요 부분을 간단하게 레이아웃할 수 있다. 또, 본 발명의 제3 형태를 적용한 경우에는 회로의 일부가 불규칙한 회로로 재배치하지만, 영향을 받는 것은 부분곱 비트 생성 회로의 일부에 지나가지 않고 가산 회로부 트리의 규칙성을 파괴할 경우는 없기 때문에, 전체 레이아웃으로 부여하는 영향은 작다.
다음에, 본 발명의 제2 형태인 필요 소자수를 반감할 수 있는 4동위 자릿수 입력 자릿수 올림 보존형 가산 회로(4-2압축 회로)의 실시예를 설명한다.
4개의 동위 자릿수 입력 신호(xl, x2, x3, x4)와 1개의 중간 자릿수 올림 신호(Cin)를 입력하여 1개의 중간 자릿수 올림 신호(Cout)와 합신호(Si,j)와 자릿수 올림 신호(Ci,j)를 생성하는 자릿수 올림 보존형 가산 회로(4-2압축 회로)의 제1 구성에 있어서는 제1 동위 자릿수 입력 신호(xl)와 제2 동위 자릿수 입력 신호(x2)의 논리합(또는 그 부정 신호)과 배타적 논리합(EOR)을 생성하고, 이 배타적 논리합 출력이 정(논리"1")일 때는 제3 동위 자릿수 입력 신호(x3)를 중간 자릿수 올림 신호(Cout)로서 출력하며, 또한, 그 EOR 출력이 거짓(논리"0")일 때는 논리합 출력 신호를 중간 자릿수 올림 신호(Cout)로서 출력한다. 또한, 4-2압축 회로의 제2 구성에 있어서는 제1 동위 자릿수 입력 신호와 제2 동위 자릿수 입력 신호의 논리곱(의 부정 신호)과 EOR를 생성하여, 이 EOR 출력이 정(논리"1")일 때는 제3 동위 자릿수 입력 신호를 중간 자릿수 올림 신호로서 출력하며, 또한, 그 EOR 출력이 거짓(논리"0")일 때는 논리곱 출력 신호를 중간 자릿수 올림 신호로서 출력한다.
또, 제1 및 제2 구성의 각각 관하여, 합신호를 생성하기 위해서 5개의 입력 신호의 EOR를 취하는 회로에 있어서, 제1 동위 자릿수 입력 신호와 제2 동위자릿수 입력 신호의 EOR 출력 신호와, 제3 동위 자릿수 입력 신호와 제4 동위 자릿수 입력 신호의 EOR 출력 신호와의 EOR를 취하는 회로만을 6개의 트랜지스터 회로(단일 전송 게이트형 회로)로 구성하며, 그 외의 EOR 회로는 모두 8개 이상의 트랜지스터 회로에 의해 구성한다.
제1 구성 회로에서는 논리합(의 부정 신호) 회로는 제1과 제2 동위 자릿수 입력의 EOR을 취하는 회로의 일부로서 이용할 수 있으며, 또한, 제2 구성 회로에서는 논리곱(의 부정 신호)을 생성하는 회로가 제1과 제2 동위 자릿수 입력의 EOR을 취하는 회로의 일부로서 이용할 수 있다. 또, 중간 자릿수 올림 신호를 제3 동위 자릿수 입력 신호와 논리합/논리곱 신호와의 선택에 의해 생성함으로써, 구성 소자수가 삭감된다. 그리고, 속도적으로 문제가 있는 6트랜지스터 EOR 회로를 그 속도로의 영향이 최소가 되는 개소에만 채용함으로써, 속도의 대폭적인 저하를 가져오는 일 없이 전체 소자를 삭감할 수 있다. 즉, 본 발명의 가산 회로(4-2압축회로)에 의하면, 종래, 50소자를 넘는 회로였던 것을, 고속성을 희생하는 일 없이 50소자 이하로 구성하는 것이 가능해진다.
도 16은 본 발명의 승산 회로에 있어서의 월레스 트리 회로를 구성하는 4-2압축 회로의 일실시예를 나타내는 회로도이다.
도 16에 도시된 바와 같이, 본 실시예의 4-2압축 회로는 10개의 전송 게이트(401∼410), l0개의 인버터(411∼420), OR 회로(421) 및 2개의 NAND회로(422, 423)를 구비하여 구성되어 있다. 여기서, EOR 회로(430)(ENOR 회로 및 인버터:도 5에 있어서의 EOR 회로(133)에 대응)는 인버터(412), OR 회로(421) 및 NAND 회로(422, 423)로 구성되고, EOR 회로(440)(도 5에 있어서의 EOR 회로(132)에 대응)는 전송 게이트(403, 404) 및 인버터(414, 415, 420)로 구성되며, EOR 회로(450)(도 5에 있어서의 EOR 회로(134)에 대응)는 전송 게이트(405, 406) 및 인버터(412, 415, 416)로 구성되고, 그리고, EOR 회로(460)(도 5에 있어서의 EOR 회로(135)에 대응)는 전송 게이트(407, 408) 및 인버터(416, 417, 418)로 구성되어 있다.
도 16으로부터 명백하듯이, EOR 회로(440, 450, 460)는 각각 전술한 도 6의 10트랜지스터 EOR 회로(상보 전송 게이트형 회로)에 의해 구성하고, 회로의 고속성을 유지하도록 되어 있다. 또, 인버터(412)는 EOR 회로(430 및 450)에 대하여 공통으로 설치되고, 또한, 인버터(415)는 EOR 회로(440 및 450)에 대하여 공통으로 설치되며, 그리고, 인버터(416)는 EOR 회로(450 및 460)에 대하여 공통으로 설치되어, 소자수의 감소를 도모하도록 되어 있다. 여기서, EOR 회로(430)는 ENOR 회로(421, 422, 423) 및 인버터(412)의 12개의 트랜지스터로 구성되어 있다.
도 16에 도시된 4-2압축 회로에 있어서는 제1 동위 자릿수 입력 신호 x1와 제2 동위 자릿수 입력 신호 x2의 논리곱의 부정 신호와, 이 x1와 x2의 배타적 논리합 신호(EOR 신호)를 생성하여, 그 EOR 출력(인버터(412)의 출력)이 정(논리 "1")일 때는 제3 동위 자릿수 입력 신호 x3을 중간 자릿수 올림 신호(Cout)로서 출력하고, 또한, 그 EOR 출력이 거짓(논리 "0")일 때는 상기 논리곱의 부정 신호(NAND 회로(422)의 출력)의 부정 신호를 중간 자릿수 올림 신호로서 출력하도록 되어 있다. 이 예에서는 구동 게이트 회로에 의해 구성한 EOR 회로(430)를 제외한 EOR 회로(440, 450, 460)는 8∼10개의 트랜지스터에 의해 구성되는 인버터 및 전송 게이트에 의해 구성되고, 전부 50개의 소자(50개의 트랜지스터)에 의해 구성되어 있다.
도 17은 본 발명의 승산 회로에서의 월레스 트리 회로를 구성하는 4-2압축회로의 다른 실시예를 나타내는 회로도이다. 본 도 17에 도시된 4-2압축 회로는 도 16의 4-2압축 회로에 있어서의 소자수를 더욱 감소시킨 것이다.
즉, 도 17의 4-2압축 회로는 도 16의 4-2압축 회로에서, 3단의 EOR 회로(440, 450, 460)내, 입력 및 출력의 영향이 적은 중간에 위치하는 EOR 회로(450)를 전술한 도 7의 6트랜지스터 EOR 회로(450′)로 대체하여, 회로의 고속성을 유지하면서 소자수를 더욱 감소시킨 것이다.
도 17에 도시된 바와 같이, 제1 동위 자릿수 입력 신호 xl와 제2 동위 자릿수 입력 신호 x2의 배타적 논리합(EOR 신호)과, 제3 동위 자릿수 입력 신호 x3와 제4 동위 자릿수 입력 신호 x4의 배타적 논리합(EOR 신호)과의 배타적 논리합을 취하는 회로[EOR 회로(450′)]를 6트랜지스터 EOR 회로로 구성하도록 되어 있다. 즉, 도 16에 있어서의 EOR 회로(450)는 전송 게이트(405, 406) 및 인버터(412, 415, 416)의 10트랜지스터로 구성되어 있는데 대하여, 도 17에 있어서의 EOR 회로(450′)는 트랜지스터(424, 425), 전송 게이트(426) 및 인버터(412)의 6트랜지스터로 구성되어 있다. 그 결과, 도 17에 도시된 4-2압축 회로는 48개의 소자(48개의 트랜지스터)에 의해 구성할 수 있다.
도 18은 본 발명의 승산 회로에 있어서의 월레스 트리 회로를 구성하는 4-2압축 회로의 또 다른 실시예를 나타내는 회로도이고, 본 실시예에 있어서도, 4-2압축 회로는 48소자로 구성된다.
도 18에 도시된 바와 같이, 제1 동위 자릿수 입력 신호 xl 및 제2 동위 자릿수 입력 신호 x2의 논리합의 부정 신호와, 이 x1과 x2의 배타적 논리합 신호(EOR 신호)를 생성하고, 그 EOR 출력(NOR 회로(429)의 출력)이 정(논리 "1")일 때는 제3 동위 자릿수 입력 신호 x3를 중간 자릿수 올림 신호(Count)로서 출력하며, 또한, 그 EOR 출력이 거짓(논리 "0")일 때는 상기 논리합의 부정 신호(NOR 회로(428)의 출력)의 부정 신호를 중간 자릿수 올림 신호로서 출력하도록 되어 있다.
전술한 도 16∼도 18에 도시된 각 4-2압축 회로에서는 필요로 하는 소자수가 각각 50개 이하가 되고 있으며, 또한, 종래 기술로 설명한 전송 게이트에 의한 지연의 영향을 받는 일없으며, 즉, 처리 속도를 희생하는 일은 없다.
다음에, 본 발명의 제3 형태인 동위 자릿수 부분곱 비트수의 삭감에 관하여, 종래보다도 필요한 소자수가 증대하는 일이 없으며, 또한, 부분곱 비트의 압축 처리에서의 임계 경로를 단축할 수 있는 부분곱 비트 압축 방법에 관해서 설명한다.
본 발명의 부분곱 비트 압축 방법의 특징을 개략적으로 설명하면, 부스의 알고리즘을 이용하는 승산 회로에서, 제1 특징으로서, 최상위의 부분곱에 대한 2의 보수 생성용 보정값과, 최하위 부분곱의 부호 자릿수 및 최상위 부분곱의 최하위 자릿수로부터 최하위 부분곱의 부호 자릿수의 1자릿수 하위의 자릿수까지의 비트로표현되는 2진수와의 합에 상당하는 각 자릿수의 비트 신호를, 부스의 알고리즘에 따른 부분곱 비트 신호에 대신하여 직접 생성하는 회로를 포함하며, 또, 제2 특징으로서, 부호 확장을 보정 처리에 의해 회피하는 방식에 있어서의 부호 보정을 위한 "1" 가산을 각 부분곱의 부호 자릿수의 1자릿수 위의 자릿수로 행하도록 한 회로에서, 보정항을 포함하는 자릿수의 1자릿수 하위 자릿수에 있어서의 동위 자릿수 가산 출력으로서의 중간 자릿수 올림 신호 또는 자릿수 올림 신호 그 자체를 2자릿수 상위의 자릿수에 있어서 가산하고, 그 반전 신호를 1자릿수 위의 자릿수에 있어서 가산하는 것으로 동위 자릿수 가산에 있어서의 "1" 가산을 외관상, 없애도록 되어 있다.
전술한 본 발명의 부분곱 비트 압축 방법의 제1 특징에 의해, 종래 기술과 같은 2의 보수를 생성하는 부가 회로를 설치하는 일 없이, 부분곱 비트수의 최대치를 감소시키는 것이 가능해진다. 또, 본 발명의 부분곱 비트 압축 방법의 제2 특징에 의해, 부호 자릿수 처리를 부분곱 비트 압축 회로와 포함시켜서 처리하는 것으로, 처리 회로의 소자수를 전체적으로 감소시키는 것이 가능해진다. 즉, 본 발명에서는 전술한 종래 기술에 있어서의 월레스 트리 회로의 임계 경로를 길게 하는 원인이 되는 부가 회로를 필요로 하지 않으며, 종래보다도 고속인 승산 회로를 구성할 수 있다. 이와 같이, 상기 부분곱 비트 압축 방법의 제1 및 제2 특징에 의해, 본 발명에서는 종래보다도 적은 소자수로, 종래보다도 고속으로 연산하는 것이 가능한 승산 회로를 구성할 수 있다.
도 19는 본 발명에 관한 승산 회로의 부분곱 비트수 압축 방법의 일예를 설명하기 위한 도면이다.
도 19에 있어서, 일예로서, 2차 부스의 알고리즘을 이용하여 8비트x 8비트의 승산을 행할 경우(m=n=8일 때), 전술한 방법(부분곱 비트 압축 방법의 제1 특징)을 적용한다. 본 발명의 제3 형태(승산 회로의 부분곱 비트수 압축 방법)를 적용함으로써, 통상, 5개의 부분곱의 처리를 행할 필요가 있는 것이 4개의 부분곱의 처리를 행하는 것만으로 좋아진다. 그 때문에, 예컨대, 4-2압축 회로를 그대로 적용할 수 있으며, 회로 규모의 감소를 도모할 수 있다. 이 본 발명의 적용에 의해 부분곱 비트로 영향을 받는 것은
최상위 부분곱:PM0, 6과, PM1, 6
최하위 부분곱:PS10과, PS20과, PS30
의 5비트이고, 원래의 값과의 대응 관계는 다음 수학식 3과 같이 된다.
따라서, 이 관계를 충족시키도록 상기 5비트의 논리를 결정하면 좋으며, 구체적으로는 다음의 논리식인 수학식 4가 된다.
여기서, PC6은 PM1, 6의 자릿수로부터 상위 자릿수로의 자릿수 올림 신호, e1, 6은 P2, 6을 구하는데 필요한 신호이다. 또, 최하위 부분곱도 포함되어 있는 것은 위 식을 보더라도 알 수 있는 바와 같이, 부분곱 비트의 부호 자릿수 부분을 변경한 쪽이 논리의 간략화를 도모하기 쉽고, 소자수 삭감의 효과가 크기 때문이다. 이 7개의 논리식에 대응하는 논리 회로의 구성예를 도 20 및 도 21에 나타낸다.
도 20 및 도 21은 도 19의 부분곱 비트수 압축 방법을 실현하기 위한 일실시예를 나타내는 회로도이다.
도 20 및 도 21에 도시된 바와 같이, 상기 7개의 논리식에 대응하는 논리 회로는 5개의 인버터(501∼503;511, 512), 3개의 AND 회로(504;513, 514), 6개의 OR회로(505, 506;515, 516;523, 524), 6개의 NAND 회로(507, 508;517, 518, 519;525), 3개의 NOR 회로(509;520, 521) 및 EOR 회로(510), ENOR(522)를 구비하여 구성되고, 그 소자수는 88개이다. 또, 종래 기술에 있어서, 본 회로 부분에 대응하는 회로를 보다 적은 소자로 실현하는 것도 있지만, 본 발명에서는 동위 자릿수 비트수가 감소한 것에 의한 동위 자릿수 압축용 가산 회로용 소자의 감소가 그 증가분에 비하여 훨씬 많기 때문에, 전체로서 소자수의 삭감이 달성되게 된다.
도 22는 본 발명에 관한 승산 회로의 부분곱 비트수 압축 방법의 다른 실시예를 종래예와 비교하여 설명하기 위한 도면이다. 도 22a는 종래의 부분곱 비트수 압축 방법의 일예를 설명하기 위한 것이고, 또한, 도 22b는 본 발명의 부분곱 비트수 압축 방법의 다른 예를 설명하기 위한 것이다. 즉, 도 22b는 전술한 본 발명의 부분곱 비트수 압축 방법의 제2 특징에 관한 것이고, 도 19에 있어서의 제10 자릿수 이상의 동위 자릿수 압축에 적용한 것이다.
도 22a에 도시된 바와 같이, 종래의 부분곱 비트수 압축 방법에서는 4-2압축 회로(4W)가 2개, 1비트 전가산 회로(3W)가 1개, 그리고, 반가산 회로(2W)가 1개 필요로 되어, 합계 134개의 소자(134개의 트랜지스터)가 필요로 되고 있었다.
이것에 대하여, 도 22b에 도시된 바와 같이, 본 발명의 부분곱 비트수 압축 방법을 이용하면, 4-2 압축 회로(4W)가 1개, 1비트 전가산 회로(3W)가 2개, 그리고, 인버터가 3개인 합계 102개의 소자(102개의 트랜지스터)로 구성할 수 있다.
즉, 도 22b에 도시된 바와 같이, 본 발명에 의하면, 제10 자릿수의 4W의 중간 자릿수 올림 신호d는 반전하여 제11 자릿수의 3W로 입력되는 동시에, 해당 신호d 그 자신도 제12 자릿수의 3W로 입력하여 처리된다. 또한, 제13 자릿수의 부분곱 비트 신호 P는 인버터를 통해 제13 자릿수의 합신호 S로서 처리되며, 또한, 해당 합신호 S의 부정 신호는 제14 자릿수로의 자릿수 올림 신호C로서 처리되도록 되어 있다. 이와 같이, 본 발명의 부분곱 비트 압축 방법의 적용에 의해, 종래보다도 적은 소자로, 또한 처리 속도의 저하를 초래하지 않고 동위 자릿수 비트 압축을 행할 수 있다.
이와 같이, 본 발명의 제3 형태의 부분곱 비트 압축 방법에 의하면, 동위 자릿수 부분곱 비트수의 삭감에 관하여, 종래보다도 필요한 소자수가 증대하는 일 없으며, 또한, 부분곱 비트의 압축 처리에서의 임계 경로를 단축할 수 있다.
이상 진술한 본 발명의 제1 형태, 제2 형태 및 제3 형태를 조합시킴으로써, 종래보다 최대로 30%∼40%의 소자수를 삭감할 수 있으며, 또한, 종래와 동등인 처리 속도의 승산 회로를 구성할 수 있다. 또, 소자수가 감소한 만큼을 특정한 신호 처리 기능을 실현하기 위한 부가회로에서 묻음으로써, 동일한 제조 기술을 이용하여 보다 더 고기능인 집적 회로를 실현하는 것이 가능해진다.
이상, 상세히 기술한 바와 같이, 본 발명의 제1 형태, 제2 형태 및 제3 형태를, 필요로 하는 승산 회로의 마무리에 따라서 적당히 조합하여 적용함으로써, 고속성을 희생하는 일 없이 필요 소자수를 감소시켜서 소형화한 승산 회로를 제공할 수 있다.

Claims (7)

  1. 4개의 동위 자릿수 입력 신호 및 1개의 중간 자릿수 올림 신호(intermediate carry-in signal)를 입력하고, 1개의 중간 자릿수 올림 신호(intermediate carry-out signal), 합신호 및 자릿수 올림 신호(carry signal)를 생성하는 자릿수 올림 보존형 가산 회로에 있어서,
    제1 동위 자릿수 입력 신호 및 제2 동위 자릿수 입력 신호의 논리합 신호 또는 이 논리합의 부정 신호와 배타적 논리합 신호를 생성하는 수단과, 이 배타적 논리합 신호가 제1 값("1")일 때는 제3 동위 자릿수 입력 신호를 상기 중간 자릿수 올림 신호(intermediate carry-out signal)로서 출력하는 수단과, 상기 배타적 논리합 신호가 제2 값("0")일 때는 상기 논리합 신호 또는 이 논리합의 부정 신호를 상기 중간 자릿수 올림 신호(intermediate carry-out signal)로서 출력하는 수단을 구비하는 것을 특징으로 하는 가산 회로.
  2. 4개의 동위 자릿수 입력 신호 및 1개의 중간 자릿수 올림 신호(intermediate carry-in signal)를 입력하고, 1개의 중간 자릿수 올림 신호(intermediate carry-out signal), 합신호 및 자릿수 올림 신호를 생성하는 자릿수 올림 보존형 가산 회로에 있어서,
    제1 동위 자릿수 입력 신호와 제2 동위 자릿수 입력 신호의 논리곱 신호 또는 이 논리곱의 부정 신호와 배타적 논리합 신호를 생성하는 수단과, 이 배타적 논리합 신호가 제1 값("1")일 때는 제3 동위 자릿수 입력 신호를 상기 중간 자릿수 올림 신호로서 출력하는 수단과, 이 배타적 논리합 신호가 제2 값("0")일 때는 상기 논리곱 신호 또는 이 논리곱의 부정 신호를 상기 중간 자릿수 올림 신호(intermediate carry-out signal)로서 출력하는 수단을 구비하는 것을 특징으로 하는 가산 회로.
  3. 제1항 또는 제2항에 있어서, 상기 합신호를 생성하기 위해서 5개의 입력 신호의 배타적 논리합을 취하는 회로는 제1 동위 자릿수 입력 신호와 제2 동위 자릿수 입력 신호의 배타적 논리합 신호와, 제3 동위 자릿수 입력 신호와 제4 동위 자릿수 입력 신호의 배타적 논리합 신호와의 배타적 논리합을 취하는 회로만이 단일 전송 게이트형 회로(signal-transfer-gate circuit)에 의해 구성되며, 그 외의 배타적 논리합 회로는 모두 구동 게이트 회로 또는 상보성 전송 게이트형 회로에 의해 구성되어 있는 것을 특징으로 하는 가산 회로.
  4. 제3항에 있어서, 상기 단일 전송 게이트형 회로에 의해 구성된 배타적 논리합 회로는 6개의 트랜지스터에 의해 구성되어 있는 것을 특징으로 하는 가산 회로.
  5. 4개의 동위 자릿수 입력 신호 및 1개의 중간 자릿수 올림 신호(intermediate carry-in signal)를 입력하고, 1개의 중간 자릿수 올림 신호(intermediate carry-out signal), 합신호 및 자릿수 올림 신호를 생성하는 자릿수 올림 보존형 가산 회로에 있어서,
    상기 합신호를 생성하기 위해서 5개의 입력 신호의 배타적 논리합을 취하는회로는 제1 동위 자릿수 입력 신호와 제2 동위 자릿수 입력 신호의 배타적 논리합 신호와, 제3 동위 자릿수 입력 신호와 제4 동위 자릿수 입력 신호의 배타적 논리합 신호와의 배타적 논리합을 취하는 회로만이 단일 전송 게이트형 회로에 의해 구성되며, 그 외의 배타적 논리합 회로는 모두 구동 게이트 회로 또는 상보성 전송 게이트형 회로에 의해 구성되어 있는 것을 특징으로 하는 가산 회로.
  6. 제5항에 있어서, 상기 단일 전송 게이트형 회로에 의해 구성된 배타적 논리합 회로는 6개의 트랜지스터에 의해 구성되어 있는 것을 특징으로 하는 가산 회로.
  7. 제1항, 제2항, 제5항 및 제6항중 어느 한 항에 기재된 가산 회로를 부분 회로로서 구비하는 것을 특징으로 하는 승산 회로.
KR1020030002342A 1996-08-29 2003-01-14 가산 회로 및 이를 구비한 승산 회로 KR100449963B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP22861896 1996-08-29
JPJP-P-1996-00228618 1996-08-29
JPJP-P-1996-00276148 1996-10-18
JP27614896A JP3678512B2 (ja) 1996-08-29 1996-10-18 乗算回路、該乗算回路を構成する加算回路、該乗算回路の部分積ビット圧縮方法、および、該乗算回路を適用した大規模半導体集積回路

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1019970005874A Division KR100384567B1 (ko) 1996-08-29 1997-02-26 승산회로

Publications (1)

Publication Number Publication Date
KR100449963B1 true KR100449963B1 (ko) 2004-09-24

Family

ID=26528355

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1019970005874A KR100384567B1 (ko) 1996-08-29 1997-02-26 승산회로
KR1020030002342A KR100449963B1 (ko) 1996-08-29 2003-01-14 가산 회로 및 이를 구비한 승산 회로

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1019970005874A KR100384567B1 (ko) 1996-08-29 1997-02-26 승산회로

Country Status (5)

Country Link
US (3) US5920498A (ko)
EP (3) EP0827069B1 (ko)
JP (1) JP3678512B2 (ko)
KR (2) KR100384567B1 (ko)
DE (1) DE69731700T2 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001077308A (ja) * 1999-06-28 2001-03-23 Ando Electric Co Ltd 論理積回路
US6611857B1 (en) * 2000-01-05 2003-08-26 Texas Instruments Incorporated Method and system for reducing power in a parallel-architecture multiplier
KR100423903B1 (ko) * 2000-12-29 2004-03-24 삼성전자주식회사 고속 저전력 4-2 압축기
US7315879B2 (en) * 2001-02-16 2008-01-01 Texas Instruments Incorporated Multiply-accumulate modules and parallel multipliers and methods of designing multiply-accumulate modules and parallel multipliers
US6877022B1 (en) * 2001-02-16 2005-04-05 Texas Instruments Incorporated Booth encoding circuit for a multiplier of a multiply-accumulate module
US20030158880A1 (en) * 2002-02-13 2003-08-21 Ng Kenneth Y. Booth encoder and partial products circuit
US6978426B2 (en) * 2002-04-10 2005-12-20 Broadcom Corporation Low-error fixed-width modified booth multiplier
KR100505491B1 (ko) * 2002-10-02 2005-08-03 전자부품연구원 고속 연산기를 위한 4:2 비트 압축기
FI118654B (fi) * 2002-11-06 2008-01-31 Nokia Corp Menetelmä ja järjestelmä laskuoperaatioiden suorittamiseksi ja laite
FI115862B (fi) * 2002-11-06 2005-07-29 Nokia Corp Menetelmä ja järjestelmä kertolaskuoperaation suorittamiseksi ja laite
US7159003B1 (en) * 2003-02-21 2007-01-02 S3 Graphics Co., Ltd. Method and apparatus for generating sign-digit format of sum of two numbers
US7308470B2 (en) * 2003-12-05 2007-12-11 Intel Corporation Smaller and lower power static mux circuitry in generating multiplier partial product signals
US7562106B2 (en) * 2004-08-07 2009-07-14 Ternarylogic Llc Multi-value digital calculating circuits, including multipliers
WO2006106581A1 (ja) * 2005-03-31 2006-10-12 Fujitsu Limited Csa用5-3圧縮回路及びこれを使用したキャリアセーブ加算回路
KR100681046B1 (ko) * 2005-08-09 2007-02-08 현대자동차주식회사 차량용 커버스텝
WO2007095548A2 (en) * 2006-02-15 2007-08-23 Qualcomm Incorporated A booth multiplier with enhanced reduction tree circuitry
US7720902B2 (en) * 2006-02-28 2010-05-18 Sony Corporation Entertainment Inc. Methods and apparatus for providing a reduction array
US20090063609A1 (en) * 2007-06-08 2009-03-05 Honkai Tam Static 4:2 Compressor with Fast Sum and Carryout
JP4988627B2 (ja) * 2008-03-05 2012-08-01 ルネサスエレクトロニクス株式会社 フィルタ演算器及び動き補償装置
JP5261738B2 (ja) * 2009-01-15 2013-08-14 国立大学法人広島大学 半導体装置
CN102999312B (zh) * 2012-12-20 2015-09-30 西安电子科技大学 基16布斯乘法器的优化方法
KR102072541B1 (ko) 2018-07-31 2020-02-03 주식회사 아성기업 차량용 자동 수동전환 보조발판장치
CN109542393B (zh) * 2018-11-19 2022-11-04 电子科技大学 一种近似4-2压缩器及近似乘法器
CN110515588B (zh) * 2019-08-30 2024-02-02 上海寒武纪信息科技有限公司 乘法器、数据处理方法、芯片及电子设备
TWI707543B (zh) * 2020-02-06 2020-10-11 崛智科技有限公司 壓縮器、加法電路及其操作方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55105732A (en) * 1979-02-08 1980-08-13 Nippon Telegr & Teleph Corp <Ntt> Multiplier
JPS5731042A (en) * 1980-07-31 1982-02-19 Toshiba Corp Multiplaying and dividing circuits
JPS57121736A (en) * 1981-01-21 1982-07-29 Nippon Telegr & Teleph Corp <Ntt> Multiinput adder
JPS58211252A (ja) * 1982-06-03 1983-12-08 Toshiba Corp 全加算器
JPS593634A (ja) * 1982-06-30 1984-01-10 Fujitsu Ltd 乗算器
JPS59139447A (ja) * 1983-01-28 1984-08-10 Matsushita Electric Ind Co Ltd 全加算器
JPS59211138A (ja) * 1983-05-16 1984-11-29 Toshiba Corp 全加算回路
US4575812A (en) * 1984-05-31 1986-03-11 Motorola, Inc. X×Y Bit array multiplier/accumulator circuit
JPS61262928A (ja) * 1985-05-17 1986-11-20 Matsushita Electric Ind Co Ltd Cmos論理回路
FR2611286B1 (fr) * 1987-02-23 1989-04-21 Dassault Electronique Circuit integre multiplieur, et son procede de composition
US4901270A (en) * 1988-09-23 1990-02-13 Intel Corporation Four-to-two adder cell for parallel multiplication
JPH083787B2 (ja) * 1988-10-21 1996-01-17 株式会社東芝 単位加算器および並列乗算器
US5038315A (en) * 1989-05-15 1991-08-06 At&T Bell Laboratories Multiplier circuit
CA2038422A1 (en) * 1990-03-16 1991-09-17 Tai Sato Array multiplier
US5151875A (en) * 1990-03-16 1992-09-29 C-Cube Microsystems, Inc. MOS array multiplier cell
JPH081593B2 (ja) * 1990-03-20 1996-01-10 富士通株式会社 乗算器
US5040139A (en) * 1990-04-16 1991-08-13 Tran Dzung J Transmission gate multiplexer (TGM) logic circuits and multiplier architectures
JPH0492920A (ja) * 1990-08-03 1992-03-25 Fujitsu Ltd 5入力3出力の1ビット加算器
JP2518551B2 (ja) * 1990-10-31 1996-07-24 富士通株式会社 多入力加算回路
JPH04287220A (ja) * 1991-03-18 1992-10-12 Hitachi Ltd 乗算回路
US5268858A (en) * 1991-08-30 1993-12-07 Cyrix Corporation Method and apparatus for negating an operand
JPH0588852A (ja) * 1991-09-27 1993-04-09 Sanyo Electric Co Ltd 部分積生成回路及び乗算回路
JPH05108308A (ja) * 1991-10-14 1993-04-30 Fujitsu Ltd 乗算回路
JPH05150950A (ja) * 1991-11-29 1993-06-18 Sony Corp 乗算回路
JPH06242928A (ja) * 1993-02-22 1994-09-02 Nec Corp 加算器およびこれを用いた乗算回路
FR2722590B1 (fr) * 1994-07-15 1996-09-06 Sgs Thomson Microelectronics Circuit logique de multiplication parallele
US5818747A (en) * 1995-01-27 1998-10-06 Sun Microsystems, Inc. Small, fast CMOS 4-2 carry-save adder cell
US5734601A (en) * 1995-01-30 1998-03-31 Cirrus Logic, Inc. Booth multiplier with low power, high performance input circuitry
TW421757B (en) * 1996-06-06 2001-02-11 Matsushita Electric Ind Co Ltd Arithmetic processor
JP3652447B2 (ja) * 1996-07-24 2005-05-25 株式会社ルネサステクノロジ ツリー回路
JP3271932B2 (ja) 1997-06-27 2002-04-08 ブラザー工業株式会社 電極アレイ及び画像形成トナー供給装置並びに画像形成装置
US5805491A (en) * 1997-07-11 1998-09-08 International Business Machines Corporation Fast 4-2 carry save adder using multiplexer logic

Also Published As

Publication number Publication date
DE69731700T2 (de) 2005-06-09
KR19980032041A (ko) 1998-07-25
US6535902B2 (en) 2003-03-18
KR100384567B1 (ko) 2003-08-21
US5920498A (en) 1999-07-06
JP3678512B2 (ja) 2005-08-03
DE69731700D1 (de) 2004-12-30
EP1475698A1 (en) 2004-11-10
US6240438B1 (en) 2001-05-29
US20010016865A1 (en) 2001-08-23
EP1475697A1 (en) 2004-11-10
JPH10124297A (ja) 1998-05-15
EP0827069B1 (en) 2004-11-24
EP0827069A3 (en) 1998-12-30
EP0827069A2 (en) 1998-03-04

Similar Documents

Publication Publication Date Title
KR100449963B1 (ko) 가산 회로 및 이를 구비한 승산 회로
US5151875A (en) MOS array multiplier cell
Ohkubo et al. A 4.4 ns CMOS 54/spl times/54-b multiplier using pass-transistor multiplexer
US6604120B1 (en) Multiplier power saving design
KR940002479B1 (ko) 고속 디지탈 병렬승산기(multiplier)
US7120894B2 (en) Pass-transistor logic circuit and a method of designing thereof
US7308470B2 (en) Smaller and lower power static mux circuitry in generating multiplier partial product signals
US4441158A (en) Arithmetic operation circuit
US6275841B1 (en) 1-of-4 multiplier
US7620677B2 (en) 4:2 Carry save adder and 4:2 carry save adding method
US7024445B2 (en) Method and apparatus for use in booth-encoded multiplication
JP3396720B2 (ja) 部分積生成回路
WO2005086675A2 (en) Arithmetic circuit with balanced logic levels for low-power operation
JPH07508603A (ja) 絶対値算術演算ユニット及び差動マルチプレクサ
US6183122B1 (en) Multiplier sign extension
US7111033B2 (en) Carry save adders
US6631393B1 (en) Method and apparatus for speculative addition using a limited carry
KR0177986B1 (ko) 1의 개수 카운터와 이를 이용한 곱셈기의 부분곱 압축기 및 이를 이용한 곱셈기
US7487198B2 (en) Multibit bit adder
JPH04227534A (ja) アレイ乗算器
Lin et al. A novel approach for CMOS parallel counter design
KR100423845B1 (ko) 고속동작 멀티플렉서
WO2023170675A1 (en) Binary adders of low transistor count
JP3269733B2 (ja) 半導体装置
JP3199196B2 (ja) 5入力加算器

Legal Events

Date Code Title Description
A107 Divisional application of patent
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: 20070906

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee