TAMS / Java / Hades / applets: contents | previous | next | ||||

Hades Applets contents visual index introduction std_logic_1164 gatelevel circuits delay models flipflops adders and arithm... half-adder a... ripple-carry... BCD adder carry-select... CLA adder (8... CLA adder (1... CLA generator CLA adder block CLA adder, slow adder/subtra... 7485 comparator 7485 comparator 74181 ALU de... 74181 ALU ci... 74181+74182 ... 74182 CLA ge... Hamming-weight Hamming-weig... integer mult... square calcu... square root ... carry-save a... CSA based mu... counters LFSR and selftest memories programmable logic state-machine editor misc. demos I/O and displays DCF-77 clock relays (switch-le... CMOS circuits (sw... RTLIB logic RTLIB registers Prima processor D*CORE MicroJava Pic16 cosimulation Mips R3000 cosimu... Intel MCS4 (i4004) image processing ... [Sch04] Codeumsetzer [Sch04] Addierer [Sch04] Flipflops [Sch04] Schaltwerke [Sch04] RALU, Min... [Fer05] State-Mac... [Fer05] PIC16F84/... [Fer05] Miscellan... [Fer05] Femtojava FreeTTS | Carry-lookahead adder, slowed down (16 bit)
This circuit demonstrates a Click the input switches or type the '0', .. '9' and 'a' .. 'f' bindkeys to control the values of the B-input switches B0, .., B15 and type the 'x' bindkey to toggle the carry-input. The default values are zero for all A-inputs and ones for all B-inputs. Therefore, changing the carry-input will result in a full carry through all stages of the adder. As in the previous slowed-down versions of the carry-ripple and carry-select adders, very long gate delays of 0.3 seconds have been preset for each gate. This means that you can easily watch how input changes propagate through the adder-blocks and the carry-lookahead tree. Again, the slowest path is from the least-significant adder block (A0,B0 on the right) to the most-significant adder block (A15,B15). Here, a change of A0 or B0 ripples down through the carry-lookahead tree back to the toplevel carry-lookahead block (bottom left), and then back up to the upper carry-lookahead blocks. This involves two adder-stage delays and 7 stages of the carry-lookahead blocks, while the 16-bit ripple-carry adder obviously involves 16 adder-stage delays. The speed advantage is even greater, because the CLA blocks are simpler and faster than the adder blocks.
The following just repeats the description already presented
in the normal-speed version
of the applet.
The adder consists of The circuit schematics consists of five rows of related components. The top row consists of 16 LEDs and Hex displays that show the current output value of the adder. Below that are the two rows of 16 input switches for the A (A15..A0) and B (B15..B0) inputs. Below the switches is the row of the adder blocks, each of which connects on its top side to its corresponding Ai and Bi inputs and the Si sum bit. Below the adders is the tree of the carry lookahead generator blocks, whose connections are also illustrated in the bottom right corner. For layout reasons, the carry input switch is also located in the bottom right corner, because it is logically equivalent to the A0 and B0 inputs to the rightmost (least significand) adder. The advantage of the CLA scheme used in this circuit is its simplicity, because each CLA block calculates the generate and propagate signals for two bits only. This is much easier to understand than the more complex variants presented in other textbooks, where combinatorical logic is used to calculate the G and P signals of four or more bits, and the resulting adder structure is slightly faster but also less regular. Exercise: Explain and design the missing logic to calculate the carry-out bit of the adder.
| |||

Print version | Run this demo in the Hades editor (via Java WebStart) | ||||

Usage | FAQ | About | License | Feedback | Tutorial (PDF) | Referenzkarte (PDF, in German) | ||||

Impressum | http://tams.informatik.uni-hamburg.de/applets/hades/webdemos/20-arithmetic/31-cla-slow/adder16.html |