1 / 34

Boolean Algebra and Logic Gates: Understanding Combinational Circuits

Learn the fundamentals of Boolean algebra, truth tables, logic gates, and combinational circuits. Explore how to simplify Boolean functions and construct truth tables for circuit expressions.

ekrause
Download Presentation

Boolean Algebra and Logic Gates: Understanding Combinational Circuits

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 6021 - Chapter 3 Dr. Clincy Professor of CS Dr. Clincy Slide 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. 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. 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. 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. Lecture

  7. Logic Gates • NAND and NOR are two very important gates. Their symbols and truth tables are shown at the right. 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. 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. 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). 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). 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 0 0 0 1 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 0

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

  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 + + 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 1 0 1 1 1 1 0 1 1 1 0 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. 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 mintermsof 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: Lecture

  20. Description of Kmaps and Terminology • Similarly, a function having three inputs, has the minterms that are shown in this diagram. 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. 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: 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? 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. 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 Lecture

  26. Kmap Simplification Example for Three Variables • Consider the function: • Its Kmap is given: Reduces to F(x) = z. 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: 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. Lecture

  29. Kmap Simplification Example for Four Variables • We have populated the Kmap shown below with the nonzero minterms from the function: • Reduced to: 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. 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 2 7 -1 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. 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: 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

More Related