Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dr. Clincy Professor of CS

Similar presentations


Presentation on theme: "Dr. Clincy Professor of CS"— Presentation transcript:

1 Dr. Clincy Professor of CS
CS Chapter 3 Dr. Clincy Professor of CS Announcement: trip to China for 2 weeks (business) – last exam will be online (April 29th) – more details coming Dr. Clincy Slide 1 1

2 Conceptually Boolean Algebra Truth Table Logic Circuit

3 Boolean Algebra It is easy to convert a function to sum-of-products form using its truth table. We are interested in the values of the variables that make the function true (=1). Using the truth table, we list the values of the variables that result in a true function value. Each group of variables is then ORed together. The sum-of-products form for our function is: We note that this function is not in simplest terms. Our aim is only to rewrite our function in canonical sum-of-products form. Dr. Clincy Lecture

4 Logic Gates We have looked at Boolean functions in abstract terms.
In this section, we see that Boolean functions are implemented in digital computer circuits called gates. A gate is an electronic device that produces a result based on two or more input values. In reality, gates consist of one to six transistors, but digital designers think of them as a single unit. Integrated circuits contain collections of gates suited to a particular purpose. Dr. Clincy Lecture

5 Logic Gates The three simplest gates are the AND, OR, and NOT gates.
They correspond directly to their respective Boolean operations, as you can see by their truth tables. Dr. Clincy Lecture

6 Logic Gates Another very useful gate is the exclusive OR (XOR) gate.
The output of the XOR operation is true only when the values of the inputs differ. XNOR is the complement to the XOR. Note the special symbol  for the XOR operation. Dr. Clincy Lecture

7 Logic Gates NAND and NOR are two very important gates. Their symbols and truth tables are shown at the right. Dr. Clincy Lecture

8 Logic Gates NAND and NOR are known as universal gates because they are inexpensive to manufacture and any Boolean function can be constructed using only NAND or only NOR gates. Dr. Clincy Lecture

9 Logic Gates Gates can have multiple inputs and more than one output.
A second output can be provided for the complement of the operation. We’ll see more of this later. Dr. Clincy Lecture

10 Combinational Circuits
We have designed a circuit that implements the Boolean function: This circuit is an example of a combinational logic circuit. Combinational logic circuits produce a specified output (almost) at the instant when input values are applied. In a later section, we will explore circuits where this is not the case (sequential circuits). Dr. Clincy Lecture

11 Combinational Circuits
We have designed a circuit that implements the Boolean function: This circuit is an example of a combinational logic circuit. Combinational logic circuits produce a specified output (almost) at the instant when input values are applied. In a later section, we will explore circuits where this is not the case (sequential circuits). Dr. Clincy Lecture

12 Combinational Circuit – Example 1 - XOR
C.How do we construct a truth table for the expression ? 1.Determine AND values 2.Determine OR values A. The expression for this circuit is this - explain B.The function is in the “sum-of-products” form – which is really this Digital logic implies the following order: NOT, AND, OR D.When comparing the output to the input pattern – we see we have an XOR case – we could replace that circuit with a simple XOR gate

13 Combinational Circuit – Example 2
Explain how to extract from the truth table the expression for the circuit for f1 Two 3-variable functions First, figure out the PRODUCTS that make f1 true/high/one – NOT the variables that 0 so that when they are ANDed, the result is 1 x x x f f 1 2 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

14 Combinational Circuit – Example 2 continuing

15 Combinational Circuit – Example 2 continuing
Given the expression initially, evaluate the expression and see if it is equal to the original output for f1 Evaluation of the expression x x + x x 1 2 2 3 x x x x x x x x x + x x = f 1 2 3 1 2 2 3 1 2 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

16 Combinational Circuit – Example 2 continuing
Two 3-variable functions Lets do f2 x x x f f 1 2 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

17 Truth-table technique for proving equivalence of expressions
This algebraic expression represents the distributive identity We can prove it is correct by constructing a truth table for the left-handside and the right-handside and seeing if they match Left-hand side Righ t-hand side w y z y + z w ( y + z ) w y w z w y + w z 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

18 Kmaps - Introduction Simplification of Boolean functions leads to simpler (and usually faster) digital circuits. Simplifying Boolean functions using identities is time-consuming and error-prone. Kmaps presents an easy, systematic method for reducing Boolean expressions. In 1953, Maurice Karnaugh was a telecommunications engineer at Bell Labs. While exploring the new field of digital logic and its application to the design of telephone circuits, he invented a graphical way of visualizing and then simplifying Boolean expressions. This graphical representation, now known as a Karnaugh map, or Kmap, is named in his honor. Dr. Clincy Lecture

19 Description of Kmaps and Terminology
A Kmap is a matrix consisting of rows and columns that represent the output values of a Boolean function. The output values placed in each cell are derived from the minterms of a Boolean function. A minterm is a product term that contains all of the function’s variables exactly once, either complemented or not complemented. For example, the minterms for a function having the inputs x and y are: Consider the Boolean function, Its minterms are: Dr. Clincy Lecture

20 Description of Kmaps and Terminology
Similarly, a function having three inputs, has the minterms that are shown in this diagram. Dr. Clincy Lecture

21 Truth Table to Kmap Example
A Kmap has a cell for each minterm. This means that it has a cell for each line for the truth table of a function. The truth table for the function F(x,y) = xy is shown at the right along with its corresponding Kmap. Dr. Clincy Lecture

22 Another Truth Table to Kmap Example
As another example, we give the truth table and KMap for the function, F(x,y) = x + y at the right. This function is equivalent to the OR of all of the minterms that have a value of 1. Thus: Dr. Clincy Lecture

23 Kmap Simplification for Two Variables
Of course, the minterm function that we derived from our Kmap was not in simplest terms. We can, however, reduce our complicated expression to its simplest terms by finding adjacent 1s in the Kmap that can be collected into groups that are powers of two. In our example, we have two such groups. Can you find them? Dr. Clincy Lecture

24 Kmap Simplification Rules for Two Variables
The rules of Kmap simplification are: Groupings can contain only 1s; no 0s. Groups can be formed only at right angles; diagonal groups are not allowed. The number of 1s in a group must be a power of 2 – even if it contains a single 1. The groups must be made as large as possible. Groups can overlap and wrap around the sides of the Kmap. Dr. Clincy Lecture

25 Kmap Simplification for Three Variables
A Kmap for three variables is constructed as shown in the diagram below. We have placed each minterm in the cell that will hold its value. Notice that the values for the yz combination at the top of the matrix form a pattern that is not a normal binary sequence. Pattern must be like this. Only 1 variable changes at a time Dr. Clincy Lecture

26 Kmap Simplification Example for Three Variables
Consider the function: Its Kmap is given: Reduces to F(x) = z. Dr. Clincy Lecture

27 2nd Kmap Simplification Example for Three Variables
Now for a more complicated Kmap. Consider the function: Its Kmap is shown below. There are (only) two groupings of 1s. Our reduced function is: Dr. Clincy Lecture

28 Kmap Simplification for Four Variables
Our model can be extended to accommodate the 16 minterms that are produced by a four-input function. This is the format for a 16-minterm Kmap. Dr. Clincy Lecture

29 Kmap Simplification Example for Four Variables
We have populated the Kmap shown below with the nonzero minterms from the function: Reduced to: Dr. Clincy Lecture

30 Kmap Simplification for Four Variables
It is possible to have a choice as to how to pick groups within a Kmap, while keeping the groups as large as possible. The (different) functions that result from the groupings below are logically equivalent. Dr. Clincy Lecture

31 Don’t Care Conditions Real circuits don’t always need to have an output defined for every possible input. For example, some calculator displays consist of 7- segment LEDs. These LEDs can display patterns, but only ten of them are useful. If a circuit is designed so that a particular set of inputs can never happen, we call this set of inputs a don’t care condition. They are very helpful to us in Kmap circuit simplification. Dr. Clincy Lecture

32 Don’t Care Conditions In a Kmap, a don’t care condition is identified by an X in the cell of the minterm(s) for the don’t care inputs, as shown below. In performing the simplification, we are free to include or ignore the X’s when creating our groups. Reduction using don’t cares: Dr. Clincy Lecture

33 Don’t Care Example Could have the case where some input combinations do not need to be evaluated – these input combinations are called “don’t cares” For a k-map, use “don’t cares” in the case of creating groups of 2, 4, 8, … set of 1s – use “don’t cares as 1s to help minimize the circuit – at least one 1 has to be in a group of don’t cares

34 More Kmap Examples When adjacent squares contain 1s, indicates the possibility of an algebraic simplication Example of a 3-variable k-map Inputs around edge and output in the boxes


Download ppt "Dr. Clincy Professor of CS"

Similar presentations


Ads by Google