Background of the Invention
1. Field of the Invention
The present invention relates to a multiplier, more particularly, it relates to a parallel multiplier and specifically to a configuration of circuit portions which perform its addition.
2. Description of the Prior Art
FIG. 1 is a block diagram showing a general configuration of a prior art parallel multipler of 8 bits.times.8 bits.
In the figure, numeral 1 denotes an AND circuit which propagates only a result of partial product to the following step, 2 is a half adder for adding a sum and partial product in the preceding step, 3 is a full adder for adding the sum, carry and partial product in the preceding step, numeral 4 indicates a group of adders which add the sum and carry of each position, and FA represents the full adder and HA represents the half adder. The AND circuit 1, half adder 2, full adder 3, full adder FA and half adder HA respectively constitutes logic cell, between which sum signals SS of the sum and carry signals CS of the carry are propagated respectively through signal lines 5 (full lines) and 6 (broken lines).
Referring now to the operation, in FIG. 1, when one lateral line is assumed as one step, first, in the AND circuit in the first step, partial products (X.sub.0 Y.sub.0 to X.sub.7 Y.sub.0) of 0 bit (Y.sub.0) of a multiplier Y and 0 to 7 bits (X.sub.0 to X.sub.7) of a multiplicand X are calculated, thereby the AND circuit 1 outputs its result as the sum signal SS to the half adder 2 of the same position in the second step through the signal line 5. In the next second step, the sum signal SS and partial products (X.sub.0 Y.sub.1 to X.sub.7 Y.sub.1) are added and its result is outputted to the full adder in the third step as the sum signal SS and carry signal CS together with the sum signal SS of the partial product (X.sub.7 Y.sub.1). Then, in the third step, the sum signal 5, carry signal 6 and each partial product (X.sub.0 Y.sub.2 to X.sub.6 Y.sub.2) are added and in the same way as the second step, the sum signal 5 and carry signal 6 are outputted to the next step. Same additions are repeated till the 8th step, and in a circuit group 4 in the last 9th step, the sum signal 5 and carry signal 6 in each position are added to obtain a final sum (product).
Since the prior art multiplier is constructed as described heretofore, it was disadvantageous in that, an operation speed is delayed because the partial products of each position must be added successively, and as the number of bits increases the adding step increases similarly.
Summary of the Invention
The present invention has been designed in view of such circumstances, therefore, it is a primary object thereof to provide a multiplier which is designed to improve an operation speed by reducing adding steps of each position, using substantially the same wiring pattern as the prior art multiplier.
It is another object of the present invention, in addition to the first object, to provide a multiplier which is constructed to form an array, in which a propagating direction of the signal is reasonable for circuit integrations.
A multiplier of the present invention divides logic cell arrays for operation into a portion of a first logic cell array correpsonding to partial products of the multiplier and most significant bits of the multiplicand, and into a portion of a second logic cell array corresponding to partial products of the multiplier and remaining, or least significant, bits of the multiplicand, and further comprises a third logic cell array which adds results of the partial product addition performed in parallel by the first and second logic cell arrays, the third logic cell array being disposed between the first and second logic cell arrays, thereby since the first and second logic cell arrays divided execute respectively the partial product addition in parallel, the number of adding steps is reduced as a whole and the operation speed is improved, results in a reasonable structure for circuit integrations.
The above and further objects and features of the present invention will more fully be apparent from the following detailed description with accompanying drawings.
Brief Description of the Drawings
FIG. 1 is a block diagram showing a general circuit configuration of a prior art parallel multiplier,
FIG. 2 is a block diagram showing one circuit configuration of the first embodiment of a multiplier of the present invention,
FIG. 3 is a block diagram showing a configuration when its Booth's algorithm is employed,
FIG. 4 is a block diagram showing one circuit configuration of the second embodiment of a multiplier of the present invention, and
FIG. 5 is a block diagram showing a configuration when its Booth's algorithm is employed.
Description of the Preferred Embodiments
The present invention will be described in detail in conjunction with the drawings showing its embodiments as follows.
FIG. 2 is a block diagram showing one configuration when the first embodiment of a multiplier of the present invention is used in the multiplier of 8 bits.times.8 bits.
In FIG. 2, numeral 8 denotes a first logic cell array corresponding to a partial product group of the multiplier and most significant bits of the multiplicand, and numeral 7 denotes a second logic cell array corresponding to a partial product group of the multiplier and remaining bits of the multiplicand.
The most significant bits are those bits of the multiplicand with the greatest place value. These bits are consecutive and in the preferred embodiment of the invention comprise one-half of the bits used to represent the multiplicand. The two logic cell arrays 7 and 8 are equally constructed. That is, 1a and 1b are AND circuits which are logic cell propagating only a result of partial product to the logic cell in the following step, 2a and 2b are half adders which are logic cell for adding sums and partial products in the preceding step and 3a and 3b are full adders which are logic cell for adding sums, carries and partial products in the preceding step.
The two logic cell arrays 7 and 8 are basically constructed in the same way as the aforementioned prior art multiplier shown in FIG. 1 except the number of steps which are reduced to half. Sum signals SS and carry signals CS in the fourth step (last step) of both the logic cell arrays 7 and 8 are given to a third logic cell array 4. As described hereinabove, numeral 4 denotes the third logic cell array which is constructed to further add and output the sums of the logic cell arrays 7 and 8. The third logic cell array 4 is constituted by full adders FA and half adders HA.
The AND circuit 1, half adder 2, full adder 3, half adder HA and full adder FA respectively form a unit circuits, between which sum signals SS of the sum and carry signals CS showing carry are propagated respectively through signal lines 5 (full lines) and 6 (broken lines).
Next, operation of the multiplier of the present invention thus constructed will be explained.
The logic cell arrays 7 and 8 respectively calculate partial products in respective AND circuits in the first steps and output its results to the respective half adders 2a, 2b in the second steps as the sum signals SS.
Specifically, in the logic cell array 7, partial products X.sub.0 Y.sub.0 to X.sub.7 Y.sub.0 of the 0 bit Y.sub.0 of multiplier Y and the 0 to 7 bits X.sub.0 to X.sub.7 of multiplicand X are calculated and outputted to the half adders 2a in the second step. While, in the logic cell arrays 8, partial products X.sub.0 Y.sub.4 to X.sub.7 Y.sub.4 of the 4 bits Y.sub.4 of multiplier Y and the 0 to 7 bits X.sub.0 to X.sub.7 of multiplicand X are calculated and outputted to the half adders 2b in the second step.
Next, the logic cell arrays 7 and 8 add the sum signals SS and each partial product given from the first step in respective half adders 2a, 2b in the second step and output its results to the respective full adders 3a, 3b in the third step as the sum signals SS and carry signals CS. Specifically, in the logic cell array 7, partial products X.sub.0 Y.sub.1 to X.sub.7 Y.sub.1 of the 1 bit Y.sub.1 of multiplier Y and the 0 to 7 bits X.sub.0 to X.sub.7 of multiplicand X are calculated and outputted to the half adders 2a in the second step. While, in the logic cell array 8, partial products X.sub.0 Y.sub.5 to X.sub.7 Y.sub.5 of the 5 bits Y.sub.5 of multiplier Y and the 0 to 7 bits X.sub.0 to X.sub.7 of multiplicand X are calculated and outputted to the half adders 2b in the second step.
The same adding process is performed until the last fourth steps of the logic cell arrays 7 and 8. At this time, the adding processes in the logic cell arrays 7 and 8 are performed respectively in parallel. Accordingly, it is possible to reduce the adding steps of the partial product to half from 8 steps in the prior art multiplier.
Finally, the sum signals SS and carry signals CS outputted from the last steps in logic cell arrays 7 and 8 are added between the same position in the third logic cell array 4 to obtain the final sum or product.
Meanwhile, in the third logic cell array 4, addition is performed in three steps which is two steps more than one step in the prior art multiplier, but the more the number of bits to be processed, the greater the reduction effect of the adding steps.
In the aforesaid embodiment, though the logic cell arrays 7 and 8 are divided equally into four steps, in other words, 8 bits are divided into 4 bits each, it is to be understood that it can be divided unequally into five and three steps or two and six steps. However, since the more the number of steps increases which operate in parallel, the more the total adding steps can be reduced, so that the smaller the difference in number of steps in the logic cell arrays 7 and 8 and the larger the number of bits to be processed, the greater the effect.
FIG. 3 is a block diagram showing a configuration of a case when a Booth's algorithm is employed in the aforesaid embodiment.
In FIG. 3, numeral 9 indicates a Booth's shifter and 10 is a half adder with the Booth's shifter. Thus, when the Booth's algorithm is employed in the multiplier of the present invention, the logic cell arrays 7 and 8 can be further reduced to two steps, improving the operation speed correspondingly.
As described heretofore, according to the first embodiment of the present invention, the number of steps in the adding circuit of the multiplier can be reduced to half and the operation speed can be improved while the multiplier maintaining substantially the same wiring pattern as the prior art general multiplier.
FIG. 4 is a block diagram showing one configuration of the second embodiment of the multiplier of the present invention, wherein the same parts on the corresponding parts are indicated by the same reference numerals as in the aforesaid first embodiment shown in FIG. 2.
In the second embodiment, the third logic cell array 4 is disposed between the logic cell arrays 7 and 8 each unit element of which is arranged and signal lines 5 and 6 are wired such that the sum signals SS and carry signals CS of the circuit groups 7 and 8 are propagated toward the third logic cell array 4.
Though operation of the second embodiment of such multiplier of the present invention is as same as that of the first embodiment, the direction of signal propagation from the logic cell arrays 7 and 8 to the third logic cell array 4 is reasonable and forming an array structure suitable for circuit integrations.
FIG. 5 is a block diagram showing a configuration when the Booth's algorithm is employed in the second embodiment in the same way as in the aforesaid configuration of FIG. 3 wherein the Booth's algorithm is employed in the first embodiment.
Thus, in the second embodiment of the present invention, in the specific circuit configuration, a preferred array structure is realized, particularly, in circuit integrations.
As this invention may be embodied in several forms without departing from the spirit of essential characteristics thereof, the present embodiment is therefore illustrative and not restrictive, since the scope of the invention is defined by the appended claims rather than by the description preceding them, and all changes that fall within the metes and bounds of the claims, or equivalence of such metes and bounds thereof are therefore intended to be embraced by the claims.