###
V22.0436 - Prof. Grishman

###
Lecture 2: Introduction to Logic Design

### Combinational (Combinatorial) Circuits

*(Text: Appendix C.2 and C.3)*
#### Combinational circuits and gates

*combinational circuits*: no memory -- output is only a function
of current inputs
*gates* are basic combinational circuits: AND gate, OR gate,
inverter
(complement), etc.

realization of gates from switches:

- OR gate from parallel circuit
- AND gate from series circuit

####
Representation of combinational circuits

- by Boolean formulas
- by truth tables
- by logic diagrams
- translating between these representations

####
Examples of combinational circuits

- NAND and NOR gates
- exclusive-OR gate (half-adder)
- multiplexors
- decoders
- full adders (pg. C-27 to 28)

####
Canonical forms and PLAs

How can we *systematically* design a circuit given a truth table?
- sum-of-products representation
- universality of this representation (as shown by conversion from
truth
table)
- reflected in PLAs (programmable logic arrays) as universal logic
elements

#### How many types of gates do we need?

- sum of products form means AND, OR, and NOT gates together are
sufficient
- can build AND from OR and NOT, or OR from AND and NOT (DeMorgan's
theorems: see exercise C.1),

so two gate types (AND + NOT, or OR + NOT) are sufficient
- can we build everything from just one (universal) gate type?