Patent US4924422A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4924422A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for modified carry-save determination of arithmetic/logic zero results

Assignee: International Business Machines Corp
•
Filing: 1988-02-17
•
Granted: 1990-05-08
•
Expires: 2008-02-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The invention determines when two operands are equivalent directly from the operand without the use of an adder. In one embodiment, conditions for the sum being equal to zero are determined from half sum to carry and transmit operators derived from the input operands. These operands are used in some known types of adders and, thus may be provided from a parallel adder to the condition prediction circuitry. In another embodiment, the equations for a carry-save-adder are modified to provide a circuit specifically designed for the determination of the condition when the sum of the operands is equal to zero. This sum is equal to zero circuit greatly reduces the gate delay and gate count thus allowing the central processing unit to determine the condition prior to the actual sum of two operands. This allows the CPU to react to the condition more quickly, thus increasing overall system speed.

Inventors

  • 👤 Stamatis Vassiliadis
  • 👤 Michael Putrino
  • 👤 Ann E. Huffman
  • 👤 Brice J. Feal
  • 👤 Gerald G. Pechanek

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 20:30
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/57; G06F7/02; G06F7/026; G06F7/50; G06F7/505; G06F9/00; G06F9/06; G06F9/30; G06F9/30094; G06F7/499; G06F7/49905

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 188 words
In a computing system including an arithmetic operation unit responsive to a carry-in signal for performing an arithmetic operation on a pair of operands, A and B, each of said operands comprising an ordered sequence of N bits, A(i) and B(i), respectively, where i=0 . . . N-1, and, for each operand, the significance of operand bit i being greater than the significance of any operand bit i+M, where M=1 . . . N-1-i, and for producing a digital output signal representing a result of said arithmetic operation, an improvement to said computing system for predicting when said result has a zero magnitude, said improvement comprising: a carry-save adder circuit responsive to said operands for producing an ordered sequence of intermediate result signals by carry-free combination of operand A with operand B; and condition code prediction means connected to said carry-save adder circuit for generating a condition code signal based upon an algebraic combination of said carry-in signal with said ordered sequence of intermediate result signals and for providing an indication whether the magnitude of said result equals zero, said indication being provided substantially simultaneously with said result.
Claim 2
Dependent Claim 188 words
In a computing system including an arithmetic operation unit responsive to a carry-in signal for performing an arithmetic operation on a pair of operands, A and B, each of said operands comprising an ordered sequence of N bits, A(i) and B(i), respectively, where i=0 . . . N-1, and, for each operand, the significance of operand bit i being greater than the significance of any operand bit i+M, where M=1 . . . N-1-i, and for producing a digital output signal representing a result of said arithmetic operation, an improvement to said computing system for predicting when said result has a zero magnitude, said improvement comprising: a carry-save adder circuit responsive to said operands for producing an ordered sequence of intermediate result signals by carry-free combination of operand A with operand B; and condition code prediction means connected to said carry-save adder circuit for generating a condition code signal based upon an algebraic combination of said carry-in signal with said ordered sequence of intermediate result signals and for providing an indication whether the magnitude of said result equals zero, said indication being provided substantially simultaneously with said result.
Claim 3
Dependent Claim 41 words
The improvement of claim 1, wherein said carry-save adder circuit produces intermediate result signals Pxi and Pyi, such that: Pxi=(A(i) V B(i))', and Pyi=(A(i)|B(i)), where ' is the logical complement, V is the exclusive-OR operation, and | is the OR operation.
Claim 4
Dependent Claim 69 words
The improvement of claim 2, wherein said carry-in signal is a digital signal having a value of "1" or "0", and said condition code prediction means receives said intermediate result signals and said carry-in signal to produce said condition code signal ("RESULT=0") according to: "RESULT=0"=(Px(N-1)·D), for carry-in=0, and "RESULT=0"=(Px(N-1)'·D), for carry-in=1, where D=[(Px(0) V Py(1))·(Px(1) V Py(2))· . . . ·(Px(N-2) V Py(N-1))], where "·" is the AND operation.
Claim 5
Dependent Claim 32 words
The improvement of claim 1, wherein said condition code prediction means includes means responsive to said condition code signal for producing a second condition code signal indicating a sign of said result.
Claim 6
Dependent Claim 41 words
The improvement of claim 1 wherein said carry-save adder circuit produces intermediate result signals Pxi and Pyi, such that: Pxi=(A(i) V B(i)')', and Pyi=(A(i)|B(i)'), where ' is the logical complement V is the exclusive-OR operation, and | is the OR operation.
Claim 7
Dependent Claim 69 words
The improvement of claim 5, wherein said carry-in signal is a digital signal having a value of "1" or "0", and said condition code prediction means receives said intermediate result signals and said carry-in signal to produce said condition code signal ("RESULT=0") according to: "RESULT=0"=(Px(N-1)·D) for carry-in=0, and "RESULT=0""=(Px(N-1)·D), for carry-in=1, where D=[(Px(0) V Py(1))·(Px(1) V Py(2))· . . . ·(Px(N-2) V Py(N-1))], where "·" is the AND operation
Claim 8
Dependent Claim 368 words
In a system including an arithmetic unit for selectively performing a plurality of arithmetic operations on a pair of operands A and B to produce a result R in response to a binary carry-in signal C in , said carry-in signal having a first state, "0", indicating a first class of arithmetic operations in which no carry-in to the arithmetic unit occurs and a second state, "1", indicating a second class of arithmetic operations in which a carry-in to the arithmetic unit occurs, each of said operands including an ordered sequence of N bits, A(i) and B(i), respectively, where i=0. . . N-1, a method for generating a predictive condition code signal "RESULT=0" reflecting whether a result produced by said arithmetic unit will be zero, said method being executed in an apparatus including a modified adder connected to a condition code prediction circuit, and including the steps of: algebraically combining said operands in said modified adder to produce a first sequence of intermediate term signals Px=Px(0) . . . Px(i) . . . Px(N-1) and Py=Py(0) . . . Py(i) . . . Py(N-1), wherein: when C in =0, Px(i)=(A(i) V B(i))' Py(i)=(A(i)|B(i); and when C in =1 Px(i)=(A(i) V B(i)')' Py(i)=(A(i)|B(i)') when C in =0, algebraically combining said first sequence of intermediate term signals in said condition code prediction circuit with a "1" to produce a second sequence of intermediate term signals according to: Px+Py+1=(Px(0+Py(1))||(Px(1)+Py(2))|| . . . ||(Px(N-2)+Py(N-1))||(Px(N-1)+1); and generating said predictive condition code signal to reflect production of a zero result when each term of said second sequence has a magnitude of zero; and when C in =1, algebraically combining said first sequence of intermediate term signals in said condition code prediction circuit with two "1"s to produce a third sequence of intermediate term signals according to: Px+Py+1+1=(Px(0)+Py(1))|| . . . ||(Px(N-2)+Py(N-1))||(Px(N-1)+1+1); and generating said predictive condition code signal to reflect production of a non-zero result when each term of said third sequence has a magnitude of zero, where 1. | represents logical OR, 2. · represents logical AND, 3. V represents logical exclusive-OR, 4. + represents addition, 5. - represents subtraction, 6. A' is the one's complement of A, and 7. || represents concatenation.
Claim 9
Dependent Claim 368 words
In a system including an arithmetic unit for selectively performing a plurality of arithmetic operations on a pair of operands A and B to produce a result R in response to a binary carry-in signal C in , said carry-in signal having a first state, "0", indicating a first class of arithmetic operations in which no carry-in to the arithmetic unit occurs and a second state, "1", indicating a second class of arithmetic operations in which a carry-in to the arithmetic unit occurs, each of said operands including an ordered sequence of N bits, A(i) and B(i), respectively, where i=0. . . N-1, a method for generating a predictive condition code signal "RESULT=0" reflecting whether a result produced by said arithmetic unit will be zero, said method being executed in an apparatus including a modified adder connected to a condition code prediction circuit, and including the steps of: algebraically combining said operands in said modified adder to produce a first sequence of intermediate term signals Px=Px(0) . . . Px(i) . . . Px(N-1) and Py=Py(0) . . . Py(i) . . . Py(N-1), wherein: when C in =0, Px(i)=(A(i) V B(i))' Py(i)=(A(i)|B(i); and when C in =1 Px(i)=(A(i) V B(i)')' Py(i)=(A(i)|B(i)') when C in =0, algebraically combining said first sequence of intermediate term signals in said condition code prediction circuit with a "1" to produce a second sequence of intermediate term signals according to: Px+Py+1=(Px(0+Py(1))||(Px(1)+Py(2))|| . . . ||(Px(N-2)+Py(N-1))||(Px(N-1)+1); and generating said predictive condition code signal to reflect production of a zero result when each term of said second sequence has a magnitude of zero; and when C in =1, algebraically combining said first sequence of intermediate term signals in said condition code prediction circuit with two "1"s to produce a third sequence of intermediate term signals according to: Px+Py+1+1=(Px(0)+Py(1))|| . . . ||(Px(N-2)+Py(N-1))||(Px(N-1)+1+1); and generating said predictive condition code signal to reflect production of a non-zero result when each term of said third sequence has a magnitude of zero, where 1. | represents logical OR, 2. · represents logical AND, 3. V represents logical exclusive-OR, 4. + represents addition, 5. - represents subtraction, 6. A' is the one's complement of A, and 7. || represents concatenation.
Claim 10
Dependent Claim 75 words
The method of claim 7, wherein said steps of algebraically combining include the exclusive disjunction of Px and Py by said condition code prediction circuit according to: D=[(Px(0) V Py(1))·(Px(1) V Py(2))· . . . ·(Px(N-2) V Py(N-1))]; and wherein, when C in =0, said predictive condition code signal is generated according to: "RESULT=0"=Px(N-1)·D; and when C in =1, said predictive condition code signal is generated by said condition code prediction circuit according to: "RESULT=0"=Px(N-1)'·D.
Claim 11
Dependent Claim 53 words
The method of claim 8, wherein said condition code prediction circuit includes means for generating indication signals J and K, such that J is true when C in =0, and K is true when C in =1, and selective means for combining D, Px(N-1), Px(N-1)' to produce said signal "RESULT=0", according to: "RESULT=0"=D·[(J·Px(N-1))|(K·Px(N-1)')]

References Cited (Backward Citations)

US3983382A Cited
US4338661A Cited
US4373180A Cited
US4430706A Cited
US4407015A Cited
US4630192A Cited
US4578750A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-05-07 1993-11-06 1994-05-08 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-05-07 1997-11-06 1998-05-08 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-05-07 2001-11-06 2002-05-08 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag