數位系統 Digital Systems

### Department of Computer Science and Information Engineering, Chaoyang University of Technology

朝陽科技大學資工系

Speaker: Fuw-Yi Yang

### 楊伏夷

伏夷非征番,

道德經 察政章(Chapter 58)

### 伏

者潛藏也Text Book: Digital Design 4th Ed.

Chap 2 Boolean Algebra and Logic Gates

### 2.1 Introduction

### 2.2 Basic Definitions

### 2.3 Axiomatic Definition of Boolean Algebra

### 2.4 Basic Theorems and Properties of Boolean Algebra 2.5 Boolean Functions

### 2.6 Canonical and Standard Forms 2.7 Other Logic Operations

### 2.8 Digital Logic Gates

### 2.9 Integrated Circuits

Text Book: Digital Design 4th Ed.

Chap 2.1 Introduction

Because binary logic is used in all of today’s digital

computers and devices, the cost of the circuit that implement it is an important factor addressed by designers.

Finding simpler and cheaper, but equivalent, realizations of a circuit can reap huge payoffs in reducing the overall cost of the design.

Text Book: Digital Design 4th Ed.

Chap 2.2 Basic Definitions

The most common postulates used to formulate various algebraic structures are as follows:

1.

**Closure. A set S is closed with respect to a binary **

operator • if, for every a, b ∈ S, a • b ∈ S.
2.

**Associative law. (a**

*• b) • c =a • (b • c) for a, b, c ∈ S.*

3.

**Commutative law. a**

*• b = b • a for a, b∈ S.*

4.

**Identity element. If there exists an element e∈ S such **

*that e*

*• b = b • e for b∈ S.*

5.

**Inverse. For a∈ S, if there exists an element b∈ S such **

*that a*

*• b = e, b is called the inverse of a.*

Text Book: Digital Design 4th Ed.

Chap 2.2 Basic Definitions

6.

**Distributive law. If • and * are two binary operators on a **

*set S, * is said to be distributive over • whenever*

*a * (b*

*• c) = (a * b) • (a * c).*

Text Book: Digital Design 4th Ed.

Chap 2.3 Axiomatic Definition of Boolean Algebra

In 1854, George Boole developed an algebraic system now
**called Boolean Algebra.**

**Boolean algebra is an algebraic structure defined by a set **

**of elements, B, together with two binary operators, **

**of elements, B, together with two binary operators,**

**+**

and ∙, if the following postulates are satisfied:
1.

**Closure. With respect to the operators + and ∙.**

2.

**Identity element. **

The element 0 is an identity element w.r.t. +;

*i.e. x + 0 = 0 + x = x. *

Text Book: Digital Design 4th Ed.

Chap 2.3 Axiomatic Definition of Boolean Algebra The element 1 is an identity element w.r.t. ∙;

*i.e. x ∙1 =1 ∙x = x. *

3.

**Commutative law. W.r.t. the operators + and ∙.**

*i.e. a + b = b + a;*

*a ∙b = b ∙a.*

4.

**Distributive law. a + (b ∙ c) = (a + b) ∙(a + c);**

*a ∙ (b + c) = (a ∙b) + (a ∙c);*

5.

**Complement. for a∈ B, there exists an element a'∈ B**

*such that a + a' = 1, and a ∙a' = 0.*

Text Book: Digital Design 4th Ed.

Chap 2.3 Axiomatic Definition of Boolean Algebra –

## Example of an algebraic structure

A two-valued Boolean algebra is defined on a set of two

elements,

*B = {0, 1}, with rules for the two binary operators* **+**

(OR) and *****

(AND) as shown in the following tables:
*x* *y* *x*y*

0 0 0

0 1 0

1 0 0

1 1 1

*x* *y* *x+y*

0 0 0

0 1 1

1 0 1

1 1 1

*x* *x'*

0 1

1 0

Text Book: Digital Design 4th Ed.

Chap 2.3 Axiomatic Definition of Boolean Algebra

Show that the two-valued Boolean algebra defined above satisfies postulates 1~6.

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

Table 2.1 lists six theorems of Boolean algebra and four of its postulates.

Note that the property of Duality—

every algebraic expression deducible from the postulates of
**Boolean algebra remains valid if the operators** and identity

**elements**

are interchanged. (part a and part b in Table 2.1)
**elements**

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

Table 2.1 lists six theorems of Boolean algebra and four of its postulates.

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

*Theorem 1 (a) x + x = x*

Statement Justification

*x + x = (x + x) * 1*

*= (x + x) * (x + x') *

*= x + (x * x')*

*= x + 0 *

*= x*

Postulate 2(b), identity
*Postulate 5(a), x + x' = 1 *
Postulate 4(b),

*x + (y * z) = (x + y) * (x + z)*

*Postulate 5(b), x * x' = 0*

*Postulate 2(a), x + 0 = x*

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

*Theorem 1 (b) x * x = x*

Statement Justification

*x * x = (x * x) + 0*

*= (x * x) + (x * x') *

*= x * (x + x')*

*= x * 1*

Postulate 2(a), identity
*Postulate 5(b), x * x' = 0 *
Postulate 4(a),

*x * (y + z) = (x * y) + (x * z)*

*Postulate 5(a), x + x' = 1*

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

*Theorem 2 (a) x + 1 = 1 (b) x * 0 = 0 by duality*

Statement Justification

*x + 1 = (x + 1) * 1*

*= (x + 1) * (x + x') *

*= x + (1 * x')*

*= x + x'*

= 1

Postulate 2(b), identity
*Postulate 5(a), x + x' = 1 *
Postulate 4(b),

*x + (y * z) = (x + y) * (x + z)*

*Postulate 2(b), 1 * x = x*

*Postulate 5(a), x + x' =1*

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

*Theorem 3 (x')' = x*
Postulate 5:

*x + x' = 1 and x * x' = 0 together define the complement of x.*

*The complement of x' is x and is also (x')'.*

Since the complement is unique, we complete the proof.

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

*Theorem 6 (a) x + x * y = x*

*(b) x * (x + y) = x by duality* Absorption

Statement Justification

*x + x * y = x * 1 + x * y*

*= x * (1 + y) *

*= x * 1*

*= x*

Postulate 2(b), identity Postulate 4(a),

*x * (y + z) = (x * y) + (x * z)*

*Postulate 2(a), 1 + x = 1*

*Postulate 2(b), 1 * x = x*

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

Theorem 4

*Associative x + (y + z) = (x + y) + z*

*x * (y * z) = (x * y) * z*

Theorem 5
*DeMorgan (x + y)' = x' * y'*
*(x * y)' = x' + y‘*

## Show its validity with truth table!!

Text Book: Digital Design 4th Ed.

Chap 2.4 Basic Theorems and Properties of Boolean Algebra

The Operator Precedence for evaluating Boolean expressions is:

1. parentheses 2. NOT

3. AND 4. OR

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

## Boolean algebra

is an algebra that deals with binary variables and logic operations.A Boolean function described by an algebraic expression consists of binary variables, the constant 0 and 1, and the logic operation symbols.

For a given value of the binary variables, the function can be equal to either 0 or 1.

*Example: F = x + yz, F is equal to 1 if x is equal to 1 or if *

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

A Boolean function can be represented in a truth table. The number of rows in the truth table is 2

^{n}

^{n}

*, where n is the*

number of variables in the function.

*Table 2.2 shows the truth table for the function F*

_{1}

*= x + y'z.*

Can we derive the Boolean function described by the
*column F*

_{2}

?
*Can we draw the gate implementation of F*

_{1}

*and F*

_{2}

?
Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

When a Boolean expression is implemented with logic gates, each

**term**

requires a gate and each variable within the
**term**

term designates an input to the gate. We define a literal to be a single variable within a term, in complemented or un-complemented form.

## Example 2.1 Simplify the following Boolean functions to a

minimum number of literals.*1. x (x' + y) 2. x + x' y *

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

*The complement of a function F is F' and is obtained from *
an interchanges of 0’s for 1’s and 1’s for 0’s in the value of

*F. It can be derived algebraically through DeMorgan’s*

*theorem. (A + B)' = A' B' ; (A B)' = A' + B'*

## Example 2.2 Find the complement of the functions

*F* _{1}

*= x' y z' + x' y' z; F*

_{2}

*= x (y' z' + y z)*

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

## Example 2.3 Find the complement of the functions

*F* _{1}

*= x' y z' + x' y' z and F*

_{2}

*= x (y' z' + y z) by taking their*duals and complementing each literal.

*F* _{1}

*= x' y z' + x' y' z*

*The dual of F*

_{1}

*is (x' + y + z')(x' + y' + z)*

*Complement each literal: F'*

_{1}

*= (x + y' + z)(x + y + z')*

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

A binary variable may appear either in its normal form (x) or in its complement form (x').

*For two binary variables x and y combined with an AND *
Operation, we have four possible combinations:

*x y, x' y, x y', x' y'.*

Each of these four AND terms is called a minterm, or a

**standard product. **

**standard product.**

*In a similar manner, n variables can be combined to form *
2

^{n}

minterms.
^{n}

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

A binary variable may appear either in its normal form (x) or in its complement form (x').

*For two binary variables x and y combined with an OR *
Operation, we have four possible combinations:

*x + y, x' + y, x + y', x' + y'.*

Each of these four OR terms is called a maxterm, or a

**standard sum. **

**standard sum.**

*In a similar manner, n variables can be combined to form *
2

^{n}

maxerms.
^{n}

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

A Boolean function can be expressed algebraically from a given truth table by forming a minterm for each

combination of the variables that produces a 1 in the function and then taking the OR of all those terms.

See Table 2.3, 2.4

*f* _{1}

*= x'y'z + xy'z' + xyz =m*

_{1}

*+ m*

_{4}

*+ m*

_{7}

*f* _{2}

*= x'yz + xy'z + xy'z' + xyz =m*

_{3}

*+ m*

_{5}

*+ m*

_{6}

*+ m*

_{7}

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

Now consider the complement of a Boolean function. It can be expressed algebraically from a given truth table by

forming a minterm for each combination of the variables that produces a 0 in the function and then taking the OR of all those terms.

*f* _{1}

*= x'y'z + xy'z' + xyz =m*

_{1}

*+ m*

_{4}

*+ m*

_{7}

*f '* _{1}

*= x'y'z' + x'yz' + x'yz + xy'z + xy'z' = m*

_{0}

*+m*

_{2}

*+m*

_{3}

*+m*

_{5}

*+m*

_{6}

*If we take the complement of f '*

_{1}

*we obtain the function f*

_{1}

:
*f * _{1}

*= (x+y+z)(x+y'+z)(x+y'+z')(x'+y+z')(x'+y+z)*

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Sum of minterms

Boolean functions expressed as a sum of minterms or product of maxterms are said to be in canonical form.

**Sum of minterms:**

## Example 2.4 Express the Boolean function F = A + B'C as a

sum of minterms.*F = A + B'C = A(B + B') (C + C') + (A + A') B'C *

*= ABC+ABC'+AB'C+AB'C'+AB'C+A'B'C *

*= ABC+ABC'+AB'C+AB'C'+A'B'C*

*= m* _{7}

*+ m*

_{6}

*+ m*

_{5}

*+ m*

_{4}

*+ m*

_{1}

*Or F(A, B, C) = Σ(1, 4, 5, 6, 7)*

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Sum of minterms

## Example 2.4'

Deriving the minterms of a Boolean function directly from the given truth table.See next page

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Sum of minterms

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Product of maxterms

**Product of maxterms:**

## Example 2.5 Express the Boolean function F = xy + x'z as a

product of maxterms.*F = xy*

*+ x'z*

*= (xy + x')(xy + z) distributive law*

*= (x + x')(y + x')(x + z)(y + z) distributive law*

*= (y + x' + zz' )(x + z + yy' )(y + z + xx' )*

*= (y+x'+z') (y+x'+z)*

*(x+z+y') (x+z+y) (y+z+x')*

*(y+z+x)*

*= (y+x'+z') (y+x'+z)* *(x+z+y')(x+z+y)*

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

Conversion between Canonical Forms The complement of a function expressed as the sum of

minterms equals the sum of minterms

**missing from the** **original function.**

**missing from the**

**original function.**

*Example: F(A, B, C) = Σ(1, 4, 5, 6, 7)*

*F'(A, B, C) = Σ(0, 2, 3) = m* _{0}

*+ m*

_{2}

*+ m*

_{3}

*Now, take the complement of F' by DeMorgan’s theorem,*
*we obtain F in a different form:*

*F(A, B, C) = (m* _{0}

*+ m*

_{2}

*+ m*

_{3}

*)' = m'*

_{0} *m'* _{2} *m'* _{3}

*= M*

_{0} *M* _{2} *M* _{3} *= Π(0, 2, 3)*

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

Conversion between Canonical Forms A Boolean function can be expressed as product of

maxterms or sum of minterms directly from its truth table.

*F(x, y, z) = Σ(1, 3, 6, 7)* *F(x, y, z) = Π(0, 2, 4, 5)*

*Table 2.6 F = xy + x'z*

*x* *y* *z* *F*

### 1 1

### 0 0

### 0 1

### 0 0 0

### 0 0 0

### 0 0 1 1

### 0 1 0 1

### 0

### 1

### 0

### 1

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Standard Forms

The two canonical forms of Boolean algebra are basic

**forms that one obtains from reading a given function from **

the truth table. These forms are very seldom the ones with
**forms that one obtains from reading a given function from**

**the least number of literals, because each minterm or **

**the least number of literals, because each minterm or**

maxterm must contain, by definition, all the variables, either complemented or un-complemented.

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Standard Forms

Another way to express Boolean functions is in standard

**form. In this configuration, the terms that form the function**

may contain one, two, or any number of literals. There are
**form. In this configuration, the terms that form the function**

two type of standard forms: the sum of products (SOP) and

## products of sums

(POS).Both POS and SOP are referred to as two-level

**implementation.**

**implementation.**

See next page

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Standard Forms—two level ckts

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Standard Forms—two level ckts

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Non-standard Forms

A Boolean functions may be expressed in a nonstandard form. The implementation may requires three levels of gating in this circuit.

See next page

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Non-standard Forms

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Non-standard Forms

Text Book: Digital Design 4th Ed.

Chap 2.7 Other logic operations

When the binary operators AND and OR are placed

*between two variables, x and y, they form two Boolean*
*functions, xy and x+y, respectively. Previously, we stated*
that there are 2

^{2n} **functions for n binary variables. **

^{2n}**functions for n binary variables.**

see next pages

*x* *y* *f:16 combinations*

0 0 0/1, two possible values 0 1 0/1, two possible values 1 0 0/1, two possible values

Text Book: Digital Design 4th Ed.

Chap 2.7 Other logic operations

Text Book: Digital Design 4th Ed.

Chap 2.7 Other logic operations

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Since Boolean functions are expressed in terms of AND, OR, and NOT operations, it is easier to implement a

Boolean function with these type of gates.

Still, the possibility of constructing gates for the other logic

## operations is of practical interest.

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Factors to be weighed in considering the construction of the other types of logic gates are:

1. the feasibility and economy of producing the gate 2. the possibility of extending the gate to more inputs 3. the basic properties of the binary operator, such as

commutativity and associativity

4. the ability of the gate to implement Boolean functions alone or in conjunction with other gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

The binary signal at the inputs and outputs of any gate has

**one of two values, except during transition.**

**one of two values, except during transition.**

One signal value represents logic 1 and the other logic 0.

Since two signal values are assigned to two logic values, there exist two different assignments of signal level to logic value.

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

Text Book: Digital Design 4th Ed.

Chap 2.9 Integrated circuits

An integrated circuit (IC) is a silicon semiconductor crystal, called a chip, containing the electronic components for constructing digital gates.

Levels of Integration:

Small-scale integration (SSI)

Medium-scale integration (MSI) Large-scale integration (LSI)

Very large-scale integration (VLSI)

Text Book: Digital Design 4th Ed.

Chap 2.9 Integrated circuits

Digital logic Families:

Transistor-transistor logic (TTL) Emitter-coupled logic (ECL)

Metal-oxide semiconductor (MOS)

Complementary Metal-oxide semiconductor (CMOS) Computer-Aided Design