Combinational Logic Circuits

Tom Kelliher, CS26

Sept. 26, 1996

Basic Logic Functions

Bit-Wise Operations

Applying logical operations to bytes, words, etc., on a bit-by-bit basis.

Example:

• Register \$8 contains 0x123.

• Register \$9 contains 0xABC.

1. Result of
```            and   \$10, \$8, \$9
```

2. Result of
```            or    \$10, \$8, \$9
```

3. How would you clear a bit or set of bits in a word?

4. How would you set a bit or set of bits in a word?

Synthesis of Logic Functions

• Given a logic expression, how do we implement it?

• Every Boolean expression can be represented in sum of products form.

• Implementing SOP expressions.

• Limitations.

Convert each of the following to SOP notation and draw a logic circuit, using AND, OR, and inverter gates, implementing it:

1. .

2. XY + YZ.

3. .

4. .

5. Implement a binary full adder. Here is the truth table:

Start by writing the SOP equation.

BTW, is this a useful function?

6. Consider a five-input Boolean function that is asserted whenever exactly two of its inputs are asserted. Construct its truth table, its SOP equation, and an implementation.

Minimization

Why bother? Speed, power, real estate.

Minimization Techniques:

1. Quine-McCluskey.

2. Karnaugh Maps.

3. Espresso.

K Maps

Two-variable example:

1. Minimal cover.

2. The map is a torus.

3. Don't cares in real circuits.

4. Gray code numbering.

5. Converting the covers to equations.

Try the following:

1. The sum output of a full binary adder.

2. The carry out output of a full binary adder.

3. A circuit which compares two-bit unsigned numbers. There are three outputs: inputs equal, first greater, second greater.

Synthesis with NAND and NOR Gates

Why do TTL and CMOS designers use these gates?

Why are ECL designers so lucky?

Thomas P. Kelliher
Wed Sep 25 16:03:38 EDT 1996
Tom Kelliher