• 沒有找到結果。

2.2 Basic Definitions

N/A
N/A
Protected

Academic year: 2022

Share "2.2 Basic Definitions"

Copied!
63
0
0

加載中.... (立即查看全文)

全文

(1)

數位系統 Digital Systems

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

朝陽科技大學資工系

Speaker: Fuw-Yi Yang

楊伏夷

伏夷非征番,

道德經 察政章(Chapter 58)

者潛藏也

(2)

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

(3)

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.

(4)

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.

(5)

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).

(6)

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,

+

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.

(7)

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.

(8)

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

(9)

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.

(10)

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)

(11)

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.

(12)

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

(13)

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

(14)

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

(15)

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.

(16)

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

(17)

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!!

(18)

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

(19)

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

(20)

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

, 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

?

(21)

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

(22)

Text Book: Digital Design 4th Ed.

Chap 2.5 Boolean Functions

(23)

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 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

(24)

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)

(25)

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')

(26)

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.

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

n

minterms.

(27)

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.

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

n

maxerms.

(28)

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

(29)

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms

(30)

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

(31)

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)

(32)

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)

(33)

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

(34)

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Sum of minterms

(35)

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)

(36)

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.

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)

(37)

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

(38)

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

the least number of literals, because each minterm or

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

(39)

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

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.

See next page

(40)

Text Book: Digital Design 4th Ed.

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

(41)

Text Book: Digital Design 4th Ed.

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

(42)

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

(43)

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Non-standard Forms

(44)

Text Book: Digital Design 4th Ed.

Chap 2.6 Canonical and Standard forms Non-standard Forms

(45)

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.

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

(46)

Text Book: Digital Design 4th Ed.

Chap 2.7 Other logic operations

(47)

Text Book: Digital Design 4th Ed.

Chap 2.7 Other logic operations

(48)

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.

(49)

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

(50)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(51)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(52)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(53)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(54)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(55)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(56)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

(57)

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 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.

(58)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

(59)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

(60)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

(61)

Text Book: Digital Design 4th Ed.

Chap 2.8 Digital logic gates

---positive and negative logic

(62)

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)

(63)

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

參考文獻

相關文件

Elements of Computing Systems, Nisan & Schocken, MIT Press, www.nand2tetris.org , Chapter 1: Boolean Logic slide 29.. Truth Table for Functions of 3 Variables

Elements of Computing Systems, Nisan & Schocken, MIT Press, www.nand2tetris.org , Chapter 1: Boolean Logic slide 29... Truth Table for Functions of 3 Variables

• Each row corresponds to one truth assignment of the n variables and records the truth value of φ under that truth assignment. • A truth table can be used to prove if two

Now given the volume fraction for the interface cell C i , we seek a reconstruction that mimics the sub-grid structure of the jump between 0 and 1 in the volume fraction

Wang, Solving pseudomonotone variational inequalities and pseudocon- vex optimization problems using the projection neural network, IEEE Transactions on Neural Networks 17

Define instead the imaginary.. potential, magnetic field, lattice…) Dirac-BdG Hamiltonian:. with small, and matrix

In digital systems, a register transfer operation is a basic operation that consists of a transfer of binary information from one set of registers into another set of

A convenient way to implement a Boolean function with NAND gates is to obtain the simplified Boolean function in terms of Boolean operators and then convert the function to