SLIDE 1 Slides for Lecture 8
ENEL 353: Digital Circuits — Fall 2013 Term Steve Norman, PhD, PEng
Electrical & Computer Engineering Schulich School of Engineering University of Calgary
25 September, 2013
SLIDE 2
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 2/18
Previous Lecture
2-input NAND, NOR, and XNOR gates. Gates with 3 or more inputs. Electrical signalling for gate inputs and outputs, voltage levels and noise margins.
SLIDE 3
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 3/18
Today’s Lecture
Completion of material on voltage levels and noise margins. Introduction to combinational logic design. Introduction to Boolean algebra. Related reading in Harris & Harris: Sections 1.6, 2.1 and 2.2.
SLIDE 4
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 4/18
Noise margin example: Low-voltage CMOS
(This is pretty much a repeat of a slide from Lecture 7.)
Here are numbers for the low-voltage CMOS logic family . . . item voltage VDD 3.3 V VIL 0.9 V VIH 1.8 V VOL 0.36 V VOH 2.7 V What are NML and NMH for this logic family? Suppose the input to NOT gate 1 is 3.1 V. How much noise can there be on the wire from A to B before NOT gate 2 might produce wrong output? What if the input to NOT gate 1 is 0.2 V?
added noise
NOT gate 1 NOT gate 2 A B
SLIDE 5 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 5/18
Inputs, outputs, elements and nodes
Here is an example logic circuit: A E1 E2 E3 B C n1 Y Z
◮ The inputs are A, B and C. ◮ The outputs are Y and Z.
Image is Figure 2.2 from Harris D. M. and Harris S. L., Digital Design and Computer Architecture, 2nd ed., c 2013, Elsevier, Inc.
SLIDE 6 A E1 E2 E3 B C n1 Y Z
◮ E1, E2 and E3 are called elements—each element is itself
a logic circuit, simpler than the overall circuit.
◮ A node is a wire whose voltage communicates a bit value
between elements.
◮ A, B and C are called input nodes; Y and Z are called
◮ n1 is an example of an internal node—a node that is
neither an input nor an output of the overall circuit.
SLIDE 7
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 7/18
Review: Combinational versus Sequential Logic
The outputs of a combinational logic circuit depend only the current values of its inputs. The outputs of a sequential logic circuit depend on the history of its input values. A logic gate is a combinational logic circuit that has a single output, not multiple outputs.
SLIDE 8
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 8/18
Generic symbol for combinational logic
The symbol C
L is often used as a label to indicate that a logic
element is combinational, without actually specifying the function of the logic element. Let’s draw a diagram for a generic 3-input, 2-output combinational logic element, then let’s draw it another way. Let’s draw a diagram for a generic combinational logic element, with unspecified numbers of inputs and outputs.
SLIDE 9 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 9/18
Combinational composition
Combinational composition is a term for a method of building complex combinational circuits out of simpler elements. The rules for combinational composition are:
◮ Each of the elements must itself be combinational. ◮ Each node in the circuit is either an input node or
connects to exactly one output of an element.
◮ There must be no cyclic paths—no way to make a path
through the circuit that goes more than once through a single element. If a circuit satifies all three of these rules, it is guaranteed to be combinational.
SLIDE 10
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 10/18
Examples with logic gates: Which ones satisfy the combinational composition rules?
A B C Y R S X Y A B Y (a) (c) (b)
SLIDE 11
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 11/18
Examples with generic combinational elements
Does either circuit satisfy the combinational composition rules? C L C L C L C L C L C L
B A A B C Y Y Z Z (a) (b)
SLIDE 12 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 12/18
Ordinary Algebra
We’re very accustomed to seeing things like (a + b)(c + d) = ac + ad + bc + bd and If x2 + x = 0 and x = 0, then x + 1 = 0. Symbols such as a, b, c, d, and x are variables that could have any value taken from a set such as
◮ the set of all real numbers, or ◮ the set of all complex numbers.
SLIDE 13
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 13/18
Boolean Algebra
In Boolean algebra, variables have values taken from this set: {0, 1}. Ordinary algebra has many operators: addition, subtraction, multiplication, division, and others. Boolean algebra has three operators: NOT, AND, and OR. Boolean algebra is very useful for description, analysis and design of combinational logic systems.
Note: Past years’ textbooks for ENEL 353 use the term “switching algebra” instead of “Boolean algebra”. Watch out for that if you are looking at previous years’ course materials.
SLIDE 14 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 14/18
Terminology for Boolean algebra
There are many words that have special meanings in discussion of Boolean algebra. Here are some of them: complement, literal, product, minterm, maxterm. There are several others. Make sure you learn exact meanings for all of them! Having
- nly a rough idea what they mean is not good
enough—that will lead to confusion and errors.
SLIDE 15 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 15/18
Variables, complements and literals
As stated two slides back, variables in Boolean algebra are things that may have one of two values: 0 (FALSE),
The complement of a variable is the NOT of that variable. So the complement of A is A, the complement of B is B, and so
A literal is either a variable or the complement of a variable. So, if A and B are Boolean variables, which of the following are literals?
◮ A ◮ A ◮ B ◮ B ◮ AB ◮ A + B ◮ A + A
SLIDE 16 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 16/18
True form and complementary form
These are terms that distinguish the two kinds of literals. The true form of a variable is just the “plain” version of that
- variable. For example, the true forms of A, B, etc., are simply
A, B, etc. The complementary form of a variable is the NOT of that
- variable. For example, the complementary forms of A, B, and
so on, are A, B, and so on.
SLIDE 17 ENEL 353 F13 Section 02 Slides for Lecture 8
slide 17/18
Products
In Boolean algebra, a product is defined to be either
◮ a literal; or ◮ the AND of two or more literals.
(Our textbook defines a product as “the AND of one or more literals”, which is correct, but makes you think harder than necessary about what the AND of one literal is.) Suppose A, B, and C are Boolean variables. Which of the following are products?
◮ A ◮ AB ◮ ABC ◮ C ◮ A + B ◮ AB + BC
SLIDE 18
ENEL 353 F13 Section 02 Slides for Lecture 8
slide 18/18
Next Lecture
More about Boolean algebra. Related reading in Harris & Harris: Sections 2.2 and 2.3