Dr. Clincy Professor of CS CS 3501 - Chapter 3 (3A and 10.2.2) Dr. Clincy Professor of CS Today: Cover Exam 1 Dr. Clincy Lecture Slide 1 1
Boolean Algebra Through our exercises in simplifying Boolean expressions, we see that there are numerous ways of stating the same Boolean expression. These “synonymous” forms are logically equivalent. Logically equivalent expressions have identical truth tables. In order to eliminate as much confusion as possible, designers express Boolean functions in standardized or canonical form. Dr. Clincy Lecture
Boolean Algebra There are two canonical forms for Boolean expressions: sum-of-products and product-of-sums. Recall the Boolean product is the AND operation and the Boolean sum is the OR operation. In the sum-of-products form, ANDed variables are ORed together. For example: In the product-of-sums form, ORed variables are ANDed together: Dr. Clincy Lecture
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
Boolean Algebra It is easy to convert a function to product-of-sums form. We are interested in the values of the variables that make the function true (=0). Using the truth table, we list the values of the variables that result in a false function value. Each group of variables is then ANDed together. The product-of-sum form for our function is: f(x,y,z)=(x+y+z)(x+y+z’)(x’+y+z’) Dr. Clincy Lecture
Consensus Theorem F(x,y,z) = xy + x′z + yz
Consensus Theorem Working backwards and adding a term Dr. Clincy
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
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
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. Note the special symbol for the XOR operation. Dr. Clincy Lecture
Logic Gates NAND and NOR are two very important gates. Their symbols and truth tables are shown at the right. Dr. Clincy Lecture
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
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
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
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
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
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
Combinational Circuit – Example 2 continuing
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
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
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
CS3501 Exam 1 Results Grading Scaled Used: Average Score = 43 (Average Grade = 75) Score SD = 20 (very large) Grading Scaled Used: 95-75 A-grade (0 students) 74-54 B-grade (5 students) 53-33 C-grade (4 students) 32-12 D-grade (7 students) 11-0 F-grade (0 student) In getting your grade logged, be sure and pass back the exam after we go over them – Exam Policy – lose points for not passing back Dr. Clincy 22