|Publication number||CA1232073 A1|
|Application number||CA 479473|
|Publication date||Jan 26, 1988|
|Filing date||Apr 18, 1985|
|Priority date||Apr 24, 1984|
|Also published as||CA1232073A, DE3580125D1, EP0165623A1, EP0165623B1, US5117386|
|Publication number||CA 1232073 A1, CA 1232073A1, CA 479473, CA-A1-1232073, CA1232073 A1, CA1232073A1|
|Inventors||Eric H.J. Persoon, Christian J.B.O.E. Vandenbulcke|
|Applicant||Eric H.J. Persoon, Christian J.B.O.E. Vandenbulcke, Philips Electronics N.V., Koninklijke Philips Electronics N.V.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Classifications (5), Legal Events (1)|
|External Links: CIPO, Espacenet|
Lo 3 PUN 11.017 1 15.10.1984 "Full adder circuit"
The invention relates to a full adder circuit for adding together two n-bit binary numbers, this full adder circuit comprising a plurality of cascaded sub-circuits of a first type having a plurality of bit inputs for receiving groups of bit signals having significance progressing from m to _ wherein m ok on, each sub circuit of a first type comprising first and second sub circuits of a second type and a selection circuit, the first and second sub-circuits of the second type respectively no-ceiling the logic values "O" and "1" at a carry signal input and generating at a carry signal output a provisional carry signal having a significance k + 1, these carry signal outputs being collected to inputs of the selection circuit, a further input of which is connected to an out-put of a preceding sub-circuit of the first type or a sub-circuit of the second type which are arranged in cascade with the relevant sub-circuit of the first type, at which output a carry signal having a first significance em) is generated for selecting with the aid of the selection air-cult a carry signal having a higher significance (k+1)from the generated carry signals and for applying the so-looted carry signal to a carry signal output of the sub-circuit of the first type.
Such a circuit is described in a publication disclosed during the International Solid State Conference, February 22 1984, pages 90, 91, 324 "A CMOS Floating Point Multiplier" by Moser Kay. The 24 bit-full adder circuit used in the multiplier circuit comprises, arranged in cascade, sub-circuits of a first type which each come prose two parallel-operating (4, 5 or 6 bits) full adder sub-circuits of a second type, respective first and second sub-circuits of the second -type receiving the logic sign nets "O" and "1" at their carry signal inputs. The two PUN 11.017 -2- ~3~3 15.10.1984 parallel-operating sub-circuits of the second type cons-quaintly generate complementary groups of sum signals and complementary provisional carry signals. A first real carry signal is generated by a first full adder sub-circuit of the second type from the group of least significant bits of the two numbers to be added. The first reliquary signal is applied to a multiplexing circuit included in a sub-circuit of the first type which is arranged in cascade with the first full adder sub-circuit of the second type, by means of which multiplexing circuit a group of sum sign nets is selected from the complementary groups of sum sign nets applied to the multiplexing circuit. In addition, the sub-circuit of the first type comprises selection means to which the complementary provisional carry signals are applied and also the first real carry signal. By means of the last-mentioned carry signal the correct carry signal of a higher significance is selected from the two proviso-oval carry signals, which correct carry signal in its turn is utilized as the "first real" carry signal for a subset quint sub-circuit of tile first type, arranged in cascade with the first-mentioned sub-circuit of the first type.
using such a full adder circuit it is possible to add to-getter large binary numbers (for example 24-bit numbers) in a comparatively short time.
Due to the use of the dual full adder sub-circuits of the second type and the multiplexing circuit connected thereto the circuit has the disadvantage that a comport-very large semiconductor surface is required. Moreover, the time necessary for adding together binary numbers of, for example, more than 32, e.g. 40 bits, will increase because of the increasing numbers of cascade-arranged so-section means (gate circuits) required therefore The invention has for its object to provide a full adder circuit in which the required semiconductor surface is less than in the prior art circuit and in which in the same short time, or in an even shorter -time, binary numbers (llavillg for example 30 to 40 bits) can be added together.
~L~3~3 PUN 11.017 I 15.10.1984 A full adder circuit according to the invention is therefore characterized in that the sub-circuits of the second type are carry look-ahead circuits outputs of which are connected to the carry signal inputs of the selection circuit whose further input is connected to a carry signal input of a full adder for adding together two bits of the significance m.
A preferred full. adder circuit according to the invention is characterized further in that a carry look-ahead circuit comprises at least two look-ahead sub-circuits, the consecutive look-ahead sub-circuits receiving signify-cance-sequential sub-groups (m to 1, 1 +1 to k) from a group of bit signals (wherein m Of ok) for generating pro-visional carry signals having a progressing significance, the selection means comprising a selection circuit for every two look-ahead sub-circuits producing provisional carry signals with the same significance, carry signal in-puts of said selection circuit are connected to the outputs of the last-mentioned two look-ahead sub-circuits and an output of said selection circuit is connected to a carry signal input of a full adder for adding together two bits having the same associated significance, a carry signal having a first significance generated in a preceding sub-circuit of the first type or a sub-circuit of the second type being applied to each selection circuit in a sub-circuit of the first type, for selecting a carry signal from the two provisional carry signals applied to the selection circuit.
The invention will now be described in greater detail Whitehall reference to the examples illustrated in the accompanying drawings, in which drawings :
it. 1 is a block circuit diagram of a first full adder circuit according to the invention, it. 2 is a more detailed circuit diagram of a second full adder circuit constituting a preferred embody-mint of the invention, it. 3 is a circuit diagram of a further possible construction for a portion of a full adder circuit according PUN 11.017 I ~32~73 15.10.1984 to the invention, and Fig. 4 shows a detail of another possible con-struction for a portion of a full adder circuit according to the invention.
jig. 1 is a block diagram of a 12-bit full adder circuit 1 according to the invention. The circuit 1 come proses four sub-circuits of a first type arranged in cascade. The sub-circuits of the first type each comprise two sub-circuits of a second type ala 11, 12; ala 21, 22;
10 ala 31, 32 and ala 41, 42, a selection circuit So, So, So, So and a group of three cascaded single-bit full adders 11, 12, 13 and 14. In this example groups of bit signals a, 1 2; Ox I by ........... aye aye all; by boo' b11 are applied to the sub-circuits of the second type ala 11, 12, 15 ...... 41, 42 and to the full adders 11, 12, 13, 14 to determine the sum signals so so, so, so ....... So, Sue s11 by means of the respective full adders 11, 12, I 14 which consequently also receive carry signals CO, C3, C6, Cog respectively. The carry signal C is applied from the outside and is usually a logic "Ox', unless the full adder circuit 1 shown in Fig. 1 is arranged in cascade with a (similar) full adder circuit for adding together two binary numbers having a number of bits exceeding 12. The carry signals C3, C6 and Cog (and C12) are generated in the air cult 1. Of two numbers A and B to be added together, three bits a, boy at, by, a, by, whose significance progresses from O to 2 are applied to the three-bit full adder 11. The full adder 12 receives the three bits a, by, ... a, by of a next higher significance of those numbers A and B and the full adder 13 receives the three bits a, by, ... a, by etc. of a next higher significance. From each pair of applied bits at, by of the same significance an inverted AND- signal Ahab and an inverted OR-signal Ahab are form-Ed with which in combination with a carry signal Of a sum signal so and a carry signal Of 1 of a higher significance are determined. The newly generated carry signal Sue is used in its turn, in combination with the inverted AND-signal and OR-signal Ahab, Ahab I
PUN 11.017 -5- I 15.10.1984 sum signal so 1 and a carry signal Of z. So as to avoid that for forming the sum signal s11 (or s when two n-bit numbers are added together) all the carry signals Of (i = O, ... 11; or i = O, ... n) must firs-t be sequentially generated, carry look-ahead circuits ala 11, 12, 21, ... 41, 42 are added to the full adders 11, 12, 13, 14. To generate tile provisional carry signals CC3 and CC3 Thea inputs Ill and I12 of look-ahead circuits ala 11 and clue 12 respective-lye receive a logic "O" level and a logic "1" level, respect-lively. The look-ahead circuits ala 11, 12 both receive the inverted AND-signals and OR-signals Ahab and Ahab, the index i having the values 0, 1 and 2. The look-ahead air-cults ala 11 and 12 generate provisional carry signals CC3 and CC3 , which are applied to selection means So which is in the form of, for example, a transfer-gate or a convent-tonal logic gate circuit. Applied to a control input of the selection means So is the incoming cay signal CO of sign-finance 0, with which one of the provisional carry signals CC3 and CC3 is selected and applied as a look-ahead carry signal C3 to the full adder circuit 12.
In this way the three-bit full adder 12 can at-ready start generating sum signals so, so before the sum signal 52 and a carry signal have been formed via the pro-ceding full adder 11. The look-ahead circuits ala 21 and 22 receive the inverted AND- and OR- signals Ahab and Ahab, the index i having the values 3, 4 and 5. The circuits ala 21 and 22 generate provisional carry look-ahead signals CC6 and CC6 , a logic "O" and a logic I level being apt plied to the carry signal inputs I21 and I22, respectively of the respective look-ahead circuits ala 21 and ala 22. So the provisional carry signals CC6 and CC6 are generated simultaneously with the provisional carry signals CC3 and CC3 . With the look-ahead signal C3 which is chosen with the aid of the incoming carry signal CO, the look-ahead carry signal C6 of tile higher significance (6) is selected with the aid of the selection means So. The look-ahead carry signal C6 is generated relative -to the look-ahead carry signal C3 already after one "gate delay" produced ~;~3Z6~3 PUN 11.017 -6- 15.10.1984 by the selection means So. The look-ahead carry signal C6 is applied to the three-bit full adder I and also to selection means So, with which -the look-ahead carry signal Cog is chosen from two provisional carry signals Cog and Cog , which are generated in a similar way to and Somali-tonsil with -the signals CC3, CC3 , CC6 and CC6 by the circuits ala 31 and 32. Thus, after only one further gate delay a look-ahead carry signal Cog having significance g (selected via the selection means So) will again be avail-able.
Using the look-ahead carry signal C9 the look-ahead carry signal C12 is selected by means of the selection means So from the provisional carry signals CC12 and CC12 generated in the above-described way by the look-ahead circuits ala 41 and 42.
From the foregoing it will be obvious that the g 0' 51' ... 511 can be generated very quickly by the full adders 11, 12, 13 and 14, as the look-ahead carry signals C3, C6, Cog required for the full adders 11, 12, 13, 14 are generated sequentially, each one after one further gate delay. It will be obvious that the selection means So, So, So, So used are always formed by a two-to-one multiplex circuit, that for each group of bits two look-ahead circuits are required and for each bit only one single-bit full adder is necessary, which results in an advantageous limitation of the semiconductor surface no-squired for the full adder circuit according to the invent-ion. For adding together binary numbers wider than 12 bits it is merely necessary to arrange two or more of the full adder circuits 1 shown in Fig. 1 in cascade.
Fig. 2 shows a 40-bit full adder circuit 2 act cording to the invention. The full adder circuit 2 come proses three sub-circuits of a first type SUP, SUP, SUP.
The first sub-circuit SUP comprises a cascade arrangement of four carry look-ahead circuits at 0, 1, 2, 3 which at their inputs receive from the group of bit signals a, boy a, by, ... all, b11 applied to sub-circuit SUP the respect-ivy sub-groups a, boy by; aye by - by a' 6' 8;
isle PUN 11.017 I 15.10.1984 a, by u.. blue. The four sub-groups of bit signals are also applied to four groups of three cascade-arranged single-bit full adders Aye, Aye, Aye, Aye, respect-lively. A-t its carry signal input the carry look-ahead air-cult at 0 receives a carry signal C0 which generally haste logic value "0". The sub-circuit of the first type SUP
is an adder circuit which is known so and determines the sum signals so so, so, ... s11 and a carry signal C12 from the received carry signal and the received bit signals.
lo The carry signal C12 is applied to the carry signal input of sub-circuit of the first type SUP.
The sub-circuit of the first type SUP comprises a first sub-circuit of the second type at 4, at 5, at 6, at 7, a second sub-circuit of the second type at 4', at 5', at 6', at 7', a selection circuit K5, K6, K7, K8 and full adders Aye, Aye, Aye, Aye. Said sub-circuits of the second type are carry look-ahead circuits formed from cascade arrangements of look-ahead sub-circuits at 4, at 5, at 6, at 7 and at 4', at 5', at 6', at 7', respect-very. In addition to the above-mentioned carry signal C12, the sub-circuit of the first type SUP receives the groups of bit signals aye, aye, -- aye and b12, b13, -- b23, with a significance increasing from 12 to 23 inclusive, of the two binary numbers A and B. The group of bit signals is divided into sub-groups aye, b12, aye, b13, aye, b14;
a b ... b17; ago b18~ b20; aye' 21 23 which are applied to the respective look-ahead sub-circuits at 4 and at 4'; at 5 and at 5'; at 6 and at 6'; at 7 and at 7' and to the respective full adders Aye, Aye, Aye, Aye. The carry signal inputs of the look-ahead sub-circuit at 4 and at 4' receive tile logic values "0" and "1", respectively. The look-ahead sub-circuits at 4 and at 4' generate from the bit signals aye, b12, ... b14 apt plied and from the respective said logic values "0" and "1" the respective provisional carry signals CC15 and CC15' with significance 15, which are applied to the carry signal inputs of the look-ahead sub-circuits at 5 and at 5', rest pectively. In addition, the provisional carry signals CC15 ~23;~
PUN 11.017 -8- 15.10.1984 and CC15' are applied to the selection circuit K5, which under the control of the carry signal C12 selects a real carry signal C15 from the provisional carry signals CC15 and CC15'. The carry signal C15 is applied to the carry signal input of the full adder Aye. The full adder Aye receives the carry signal C12 and forms therewith from the bit signals aye and b12 in a manner known in itself the sum signal s12 and an (internal) carry signal for full adder Aye, which forms from the bit signal Ahab the sum signal S13 and also an (internal) carry signal C14 for adder aye, which produces the sum signal s14. Likewise, the full adders Aye form the sum signals S15~ s16, S17 from the carry signal C15 and the bit signals aye, b15, ...
The look-ahead sub-circuits at 5 and at 5' do not only receive the provisional carry signals CC15 and CCl5, but also the bit signals aye, blue, ... b17 signal carry signals CC18 and CC18' from them with sign-finance 18. The provisional carry signals CC18 and CC18' are applied to the selection circuit K6 and to the carry signal inputs of the look-ahead sub-circuits at 6 and at 6'.
Using the selection circuit K6 a carry signal C18 is so-looted from the two provisional carry signals CC18 and CC18' under the control of the carry signal C12, and applied to the full adders Aye. The full adders Aye produce the sum signals S18' S19~ S20frm the carry signal C18 and the bit signals aye' b18' -- 20 The provisional carry signals CC18 and CC18' are applied to the look-ahead sub-circuits at 6 and at 6', which receive in addition the signals aye, b18, ... b20 and produce the provisional carry signals CC21 and CC21' from the received signals. The provisional signals CC
and CC21' are applied to the selection circuit K7, which selects under the control of the carry signal C12 a carry signal C21 and conveys it to the full adders Aye. The full adders Aye form the sum signals s21, s22 and s23 from the carry signal C21 and the bit signals aye, b21, ...
b23. In addition, the provisional carry signals CC21 and ~232~73 PUN 1 1 .017 -9- 15. 10. 1984 CC21 ' are applied to the look-ahead sub-circuits at 7 and at 7 ', which further receive the bit signals aye b21 ' . . .
b23 and generate the provisional carry signals CC24 and CC24 ' from the signals applied. The provisional carry sign 5 nets CC24 and CC24 ' are applied to the selection circuitK8 which under tile control of the carry signal C 12 selects the carry signal C24, which is applied to the subsequent sub-circuit of the first type SUP 3 (inter aria to the full adder Aye incorporated therein).
The sub-circui t of the first type SUP comprises first and second sub-circuits of the second type at 8 to c] 1 2 and at 8' to at 1 2 ', selection means in the form of selection circuits K9 to K13, and full adders Aye to Aye.
The sub-circuit of the first type SUP is substantially 15 identical to the sub-circuit of the first type SUP. Four look-ahead sub-circuits at 4 to at 7 and at 4 ' to at 7 ' are always arranged in cascade in the sub-circuit of the first type SUP. In the sub-circuit of the first type SUP
always five look-ahead sub-circuits at 8 to at 12 and at 8' 20 to at 12 ' are arranged in cascade. The carry signal inputs of look ahead sub-circuits at 8 and at 8' receive a logic I and a logic " I signal, respectively. In addition, the look-ahead sub-circuits at 8 and at 8' receive the bits signals aye, b24, .- b26. From the signals received the 25 look-ahead sub-circuits at 8 and at 8' generate provisional carry signals CC27 and ( C27 ', which are applied to both the selection circuit K9 and the look-ahead sub-circuits at 9 and at 9 ' . The latter circuits generate the provisional carry signals CC30 and CC30 ' from the bit signals aye ' b27' 30 . . . b29 and said signals CC27 and CC27 ' The provisional carry signals CC30 and CC30 ' are applied to the selection circuit K10 and also to tile subsequent look-ahead subzero-cults at 10 and at 10 ' . As will be obvious from the fore-going, the look-ahead sub-circuits at 10 and at 10 ' and 35 the subsequent, similar circuits at 1 1 and at 11 ', at 12 and at 12 ' generate the respective provisional carry sign nets CC 3 and CC33~ CC36 and CC36 ' 39 39 pairs of which are applied to the associated selection PUN 11.017 _10_ 15.10.1984 switches K11, K12 and K13, respectively. Using the carry signal C24, which controls the selection circuits K9 to K13, the desired carry signals C27, C30, C33, C36 and C39 are selected from said carry signals CC27, CC27' ... CC39' and applied to the full adders Aye, Aye, Aye, Aye, Aye and Aye, respectively, which causes the sum signals s24, s25, ... s39 to be generated.
Adding together two binary numbers can be effect-Ed very quickly Whitehall tile above-described 40-bit full adder circuit 2. A look-ahead sub-circuit at i (0 I 12) has, for example, a time delay of c ~17 nsec. (time elapsed between the instant at which the input signals are present-Ed and the carry signal is produced). The selection air-cults Kj (5 k 13) have a time delay Jo _ 12 nsec., whilst a three-bit full adder (for example Aye) has a time delay of l a 33 nsec. From the different time de-lays it can be derived that the carry signal C12 is avail-able after 4 x I = 68 nsec., that the carry signals C15, C18, C21 and C24 are available simultaneously after 4 x + r = 80 nsec. that the carry signals C27, C30, C33, C36 and C39 are available simultaneously after 4 x arc + 2 x r = 92 nsec., and that the sum signal S38 is available as the last sum signal after 4 x I + 2 x 1rS + = 125 nsec. It should be noted that the provisional signals CC24, CC24' and CC39, CC39' are only available after 4 X I =
68 nsec. and 5 x lo = 85 nsec., respectively, which (in practice) preferably substantially coincide with the in slants at which the respective controlling carry signals C12 and C24 become available, (for C12: x 4 no = 68 nsec., C24 4 x no + us = 80 nsec.).
Fig. 3 shows a preferred alternative sub-circuit of the first type SUP' which can be substituted for the sub-circuit of the first type S of Fig. 2 without further measures. Corresponding components in Figs. 2 and 3 have been given tile same reference numerals. For the sake of clarity, Fig. 3 does not show the bit signals to be applied and the inputs for those bit signals. In the sub-circuit SUP' provisional carry signals CCi and CCi' (i = 15, 18, 21, Lo 3 PIN 11.017 -11- 15.10.1984 24) are generated simultaneously and are consequently all available after 27 nsec. The provisional carry signals CC15 and CC15' are applied to the selection circuit K5 (which is the same situation as described with reference to Fig.
2). The provisional carry signal CC15 it further applied to the selection switches K6b and Kiwi. Depending on whether the signal CC15 has the logic value "O" or "1", the select-ion switches Kiwi and K6b apply the provisional carry sign nets CC18' or CC18 and CC18 or CC18' respectively to the respective inputs a and by of the selection circuit K6.
The signal CC18 or CC18' at the input by of selection air-cult K6 also controls the selection switches Kiwi and K7b, which receive the provisional signals CC21 and CC21' at their inputs. Depending on whether the logic value "O" or I is present at the input by the selection switches Kiwi and K7b apply the provisional carry signals CC21' or CC21 and CC21 or CC21' respectively to the respective inputs a and by of the selection circuit K7. The signal CC21 or CC21' at the input by controls the selection switches Kiwi and K8b in the same way as described above. From the foregoing it follows that the provisional carry signals CC24 and CC24' are available at the inputs a and by of the select-ion circuit K8 after 1 x arc + 3 x 1-5 = 53 nsec.; so that the carry signal C24 is already available after 65 nsec.
So the full adder circuit shown in Fig. 2 can be operated faster when the sub-circuit SUP' of Fig. 3 is used in Fig.
2 and the carry signal C12 is generated more quickly (15 nsec. more quickly). This faster generation of carry sign net C12 can be accomplished by using in Fig. 2 the full adder circuit 1 of Fig. 1 instead of sub-circuit SUP, a logic value "O" being applied to the carry signal input for the signal CO. The carry signal C12 is then already avail-able in Fig. 1 after I- 1 x I 3 x so = 53 nsec. (as the selection circuit So is always in the same state).
It should be noted that the sub-circuit SUP of Fig. 2 can also be replaced by a circuit similar to that shown in Fig. 3, which again results in some gain in time for generating the sum signals S36 to S39. In addition, it ~;~3~3 PUN 11.017 -12- 15.10.19~4 should be noted that for assembling still larger binary numbers (for example 80 bit and more) it is advisable to introduce a third multiplexed level (Kiwi, K32'b form toe second level, Zoo, b form the first level) between the look-ahead sub-circuits at i (see fig. 4, i = 32) and the full adders (Aye), the third level (K32) being control-led by the carry signal C39 genera-ted in the sub-circuit SUP (Fig. 2), so that all the carry signals of a higher significance (higher than 40) are already available after a single delay us (12 nsec.). This results in it being possible to add together, for example two 80 bit numbers in approximately 150 nsec. It should be noted that then two further (-third and fourth) selection switches Kiwi, b must be provided in each selection circuit (K32 as shown in Fig. 4), the a-input and b-input of the selection circuit K32 being connected to the outputs of the respective select-ion switches (Kiwi, b) and the a-input and b-input of the third and fourth selection switches (Zoo, b) being con-netted to the outputs of the selection switches Kiwi, K32b and K32b, Kiwi respectively. In the example illustrated by Fig. 4 the assumption is that the sub-circuits SUP, SUP, SUP, SUP and SUP (not shown) have respective "widths" of 12, 12, 15, 18 and 21 bits, so that the carry signal C39 (12 12 + 15) generated in sub-circuit SUP controls the third multiplex level (K32) of the sub-circuits SUP and SUP and the provisional carry signal CC57 (12 12 + 15 18) generated in sub-circuit SUP controls the second level (kiwi, b) in the sub-circuit SUP, the signal CC57 being obtained from the b-input of the selection circuit K19 of the sub-circuit SUP (the carry signal immediately above the 3 level).
The circuits described in the foregoing are form-Ed from full adders, carry look-ahead circuits and 1 out of 2 multiplex circuits, which are all circuits which are known per so and are preferably integrated on a semiconductor substrate, tile resulting full adder circuit forming par-t of a more extensive circuit ego multiplier).
|International Classification||G06F7/507, G06F7/50, G06F7/508|