Digital multiply-accumulate circuit that can operate on both...

Electrical computers: arithmetic processing and calculating – Electrical digital calculating computer – Particular function performed

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06205462

ABSTRACT:

TECHNICAL FIELD
The present invention relates to Multiply-Accumulate circuits, and more particularly to a circuit that can directly receive two operands in both integer and floating point data formats, multiplies the two operands, and accumulates the resultant product.
BACKGROUND ART
FIG. 3
shows a typical digital Multiply-Accumulate circuit
50
of the prior art. Registers
52
and
54
hold two operands to be operated on. These two operands must be in the same data format, i.e. both must be either integers or floating point numbers. The two operands are multiplied in multiplier
56
and the resultant product is inputted into adder
58
as a first input. A second input of adder
58
comes from accumulator
60
. The resultant sum of the two inputs generated by adder
58
will replace the current content of accumulator
60
. Another pair of operands may be loaded into registers
52
and
54
. Their product generated by multiplier
56
is accumulated by adder
58
into accumulator
60
. So, accumulator
60
holds the sum of products of pairs of operands. For that reason, circuit
50
is also called a product adder.
A typical digital Multiply-Accumulate circuit as shown in
FIG. 3
cannot operate on both integer and floating point numbers simultaneously. When a computation involves operands of both integer and floating point numbers, a separate converting circuit is used. The converting circuit may be of integer-to-floating-point type in which the integer is converted into a floating point number before being loaded into the floating point Multiply-Accumulate circuit to be multiplied with another floating point number.
FIG. 4
shows a typical Integer to Floating Point converting circuit of prior art. This circuit is disclosed and described in detail in U.S. Pat. No. 4,631,696. The 32-bit integer to be converted to floating point number is in register
11
. Zero detectors Z
0
to Z
7
detects leading zeros of the integer. Priority encoder
13
receives the detection results from Zero detectors Z
0
to Z
7
and determines the necessary number of shifting places for the integer. Shifter
15
shifts the integer according to the control input LZ from priority encoder
13
producing the 24-bit mantissa. The detected number of leading zeros of the integer is used to calculate the 7-bit offset exponent using adder
14
.
An object of the present invention is to provide a Multiply-Accumulate circuit that can accept operands of both integer and floating point numbers, but does not require much additional circuitry. Another object of the present invention is to use only one instruction set for operations on both integer and floating point numbers.
DISCLOSURE OF THE INVENTION
The Multiply-Accumulate circuit of the present invention realizes these objects by providing that operands of both integer and floating point numbers are represented in a special combined data format. This special combined data format allows for the circuit of the present invention. The format prescribes an exponent and a mantissa for both integer and floating point numbers. Floating point numbers still keep their original format, i.e. mantissa and exponent, except that floating point numbers with exponent having all zeros or all ones are defined to be invalid and are replaced with other close values which have exponents being not all ones or zeros. Number representations with exponents being all ones or all zeros are reserved for integer numbers.
The Multiply-Accumulate circuit of the present invention includes an exponent adder circuit, a mantissa multiplier circuit, a shifter, a full adder, and an accumulator. The product adder circuit receives two operands in the special combined data format. The exponent adder circuit adds the exponents of the two operands in the special combined data format. But if, before the addition, the exponent adder circuit detects an integer as an operand, it will replace the exponent of the integer with a substitute value in that addition. This substitute value is the number of bits of the mantissa of the integer. This replacement has the effect of implicitly converting the integer into a floating point number. The mantissa multiplier circuit multiplies the two mantissas of the two operands. The shifter shifts the resultant product of multiplication into a pre-defined fixed point format according to the resultant sun of the addition generated by the exponent adder circuit. The full adder adds this shifted product to the current content of the accumulator.


REFERENCES:
patent: 4038538 (1977-07-01), Semmelhaack et al.
patent: 4511990 (1985-04-01), Hagiwara et al.
patent: 4617641 (1986-10-01), Hamada
patent: 4620292 (1986-10-01), Hagiwara et al.
patent: 4631696 (1986-12-01), Sakamoto
patent: 4805128 (1989-02-01), Nelsen et al.
patent: 4953119 (1990-08-01), Wong et al.
patent: 5185713 (1993-02-01), Kobunaya
patent: 5257215 (1993-10-01), Poon
patent: 5272654 (1993-12-01), Nix
patent: 5301137 (1994-04-01), Matsuo et al.
patent: 5561615 (1996-10-01), Kuo et al.
patent: 5619198 (1997-04-01), Blackham et al.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Digital multiply-accumulate circuit that can operate on both... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Digital multiply-accumulate circuit that can operate on both..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Digital multiply-accumulate circuit that can operate on both... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2550176

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.