ABSTRACT

This chapter discusses the design and use of building blocks beyond basic logic gates and the design of several important functional building blocks. It introduces structures to perform addition and multiplication, which are two important arithmetic functions and the implementation and operation of memory elements. The choice of a building block implementation often makes a significant difference in the performance of an overall system design. The ripple-carry adder is extremely modular since it contains only one-bit full adders. A ripple-carry adder has a computation time that is proportional to the number of bits in its operands. The wider the operands, the longer does it take the ripple-carry adder to complete its addition. The addition time of a ripple-carry adder can be improved with a modified structure called the carry select adder. The biggest limitation of a ripple-carry adder is in its long computation time since the carry bit has to be propagated from one full adder to another.