1 Basics of Digital Systems Boolean algebra Truth tables Karnaugh maps
2 Boolean Algebra In digital systems we deal with the binary number system. This means that the value of an element can be either 0 or 1. The elements can also be referred to as false or true for 0 or 1 respectively. There are three operators in Boolean algebra: AND OR NOT
3 Boolean Algebra: AND The AND operator is by a dot between the two elements or nothing between the two elements at all. It is also know as the product of elements. x y or x y The AND operator requires that all elements have a value 1 (or true) for the result to be 1 (or true). Thus if we had two elements x, y, both x AND y need to be 1 for the result to be one. x y x y
4 Boolean Algebra: OR The OR operator is represented the same as addition in regular algebra, with a plus sign. It is also known as the sum of elements. x + y The OR operator requires that either of the two elements be 1 for the result to be 1. So if we had two element x, y, then x OR y has to have a value of 1 for the result to have a value of 1. x y x + y
5 Boolean Algebra: NOT The NOT operator is represented with an apostrophe after the element. It is also known as the complement of an element. x The NOT operator give the opposite of the element s value as the result. So for an element x with a value of 1, the NOT of x is equal to 0. x x
6 Boolean Algebra: Properties Boolean algebra is governed by several key properties. Commutative x + y = y + x x y = y x Associative x + (y + z) = (x + y) + z x (y z) = (x y) z Distributive x (y + z) = x y + x z x + y z = (x +y)(x + z) Absorption x + x y = x x (x + y) = x Involution (x ) = x DeMorgan (x + y) = x y (x y) = x + y
7 Boolean Algebra: Properties Using the previous properties and the knowledge of the different operators, we can find a few more important properties of Boolean algebra. x + 0 = x x 1 = x x + x = 1 x x = 0 x + x = x x x = x x + 1 = 1 x 0 = 0
8 Boolean Algebra: Simplifying Using the properties we can simplify Boolean expressions. For example lets simplify the following expression. F = x y z + x y z + x y First we can see the use of the distributive property. We can apply is to simplify the expression to: F = x z (y + y) + x y Next we can apply one of our derived properties. (x + x ) = 1. This gives us a final simplification of: F = x z + x y This simplification process can be much easier through the use of Truth Tables and Karnaugh Maps.
9 Minterms and Maxterms In addition to simplifying a boolean expression we can also expand them. There are two ways of expanding a boolean expression: a sum of minterms or a product of maxterms. The minterms are the products of each of the elements in the expression in every combination (the elemnts can be complmented or not. Ex. x y z ). Each minterm has a designation starting with m 0. The maxterms are the sums of each of the elements in the expression in every expression (the elements can be complements or not. Ex. x + y + z ). Each maxterm has a designation starting with M 0.
10 Minterms and Maxterms cont. The minterms and maxterms for an expression with 3 elements are as follows. Minterms Maxterms Term Designation Term Designation x y z m 0 x + y + z M 0 x y z m 1 x + y + z M 1 x y z m 2 x + y + z M 2 x y z m 3 x + y + z M 3 x y z m 4 x + y + z M 4 z y z m 5 x + y + z M 5 x y z m 6 x + y + z M 6 x y z m 7 x + y + z M 7
11 Minterms and Maxterms Example If we look at the simplified version of the previous example we can expand it to a sum of minterms or a product of maxterm. F = x z + x y To have a sum of minterms, we need to make each term have all three element (x, y and z). We know that, And we know that, (x z)(1) = x z (y + y ) = 1 So we can add the y element into that term. x z = x z(y + y )
12 Minterms and Maxterms: Example cont. We can multiply the term out to get: x z = x y z + x y z By using this same method we can expand the second term. x y = x y z + x y z So we find that, F = x z + x y = x y z + x y z + x y z + x y z We can express this as a sum of minterm designations. F = m 1 + m 3 + m 4 + m 5
13 Minterms and Maxterms: Example cont. Now we will expand our function to a product of maxterms. F = x z + x y This is easiest to do by taking the complement of the sum of minterms. F = (m 1 + m 3 + m 4 + m 5 ) F = m 1 m 3 m 4 m 5 F = (x y z) (x yz) (x y z) (x y z ) F = (x + y + z )(x + y + z )(x + y + z )(x + y + z) F = M 1 M 3 M 4 M 5 We now have our two expansions of our function. As a sum of minterms and as a product of maxterms.
14 Truth Tables A truth tables is a method of setting up and testing a boolean expression for every possible input. The truth table is set up with a column for each different element in the expression and an additional column for the fuction its self. For example: F = x + y z x y z F
15 Truth Tables cont. We then want to fill in the columns with our elements x, y and z to allow for every possible combination of inputs. As you may notice, each row corresponds to one minterm starting with m 0 and ending with m 7. x y z F
16 Truth Tables cont. Next we input each of these cases into the function and calculate what the output will be. The output goes under the function s column. x y z F
17 Karnaugh Map The truth table is great for visualizing for which inputs you get a 0 or 1, however it may not be easy to use it to simplify a boolean expression. For that we use the Karnaugh map. The Karnaugh map or K-map is a table setup in such a way to make simplifying expressions really easy. It works with minterms like the truth tables, this makes going from one to the other fairly simple. We ll start my looking at a two variable map.
18 Two-Variable K-map The first K-map shows the layout for an expression with two elements. In the second K-map we can see the relation between the minterms and the elements. m 0 m 1 y x x y x y m 2 m 3 1 x y x y Once we have the K-map drawn, we can look at our truth table and in each box we place the output we found corresponding to each minterm.
19 Two-Variable Example Lets look at the the following function. F = x y + x y + x y We start by making a truth table. x y F Then we construct our K-map using the truth table. y x
20 Two-Variable Example cont. In order to use this K-map to reduce our expression we need to remember one of our properties of boolean algebra: (y + y ) = 1 If we use this with our minterms we see that, x y + x y = x (y + y) = x or m 0 + m 1 = x We can show this in our K-map but highlighting those given boxes. y x
21 Two-Variable Example cont. We can do the same thing with m 0 and m 2. y x Using these highlightings we can reduce the expression to, F = x + y
22 Three-Variable K-map The three variable map can be extended from the two variable map. Instead of having only y along the top we put yz. m 0 m 1 m 3 m 2 y z x x y z x y z x y z x y z m 4 m 5 m 7 m 6 1 x y z x y z x y z x y z It is important to note that the minterms are NOT placed in ascending order. The third and fourth column are switched. If we look at the k-map with the elements, we can see that the columns are labeled like gray code. By having only one bit change between each row/column we are able to use our highlighting method.
23 Three-Variable Example 1 Lets look are the following example, F = m 2 + m 3 + m 4 + m 5 y z x When highlighting with a three variable k-map we can highlight pairs of two, lines of four, boxes of four, or all eight. This is because we set up the k-map such that there is only one bit change from column to column or row to row (like gray code).
24 Three-Variable Example 1 To figure out what the resulting simplification will be, look are each highlighted section and determine which bits don t change. In our example, for the yellow highlighting, we see that x stays at one and y stays at zero. Thus our simplification for that highlighting is, x y We do the same thing for the second highlighting and add them together to get, F = x y + x y
25 Three-Variable Example 2 Now we will look at a more complicated example. F = m 0 + m 2 + m 4 + m 5 + m 6 y z x Before we highlight an important thing to note is that between m 0 and m 2, there is only a one bit change. This mean that when highlighting we are allowed to wrap around the edges of the table.
26 Three-Variable Example 2 For our expression we can highlight a box around the edges as well as a pair on the bottom. y z x Again we look at the variables that don t change for each highlighting. For the box, x varies between 1 and 0, y varies between 1 and 0, and z stays at 0. So our expression for the red box is, z
27 Three-Variable Example 2 Doing the same thing with the pair highlighting we get a final answer of, F = z + x y
28 Four-Variable K-map The four variable k-map functions the same as the three variable k-map, but we must make sure that there is only a one bit change between rows and columns. This means that in addition to the third and four column being switched, the third and fourth row are also switched. m 0 m 1 m 3 m 2 m 4 m 5 m 7 m 6 m 12 m 13 m 15 m 14 m 8 m 9 m 11 m 10 y z wx w x y z w x y z w x y z w x y z 01 w x y z w x y z w x y z w x y z 11 w x y z w x y z w x y z w x y z 10 w x y z w x y z w x y z w x y z
29 Four-Variable K-map Just like with the three variable map, we are allowed to wrap around the edges of the map, both on the sides and the top/bottom. For the four variable map there are many possible highlightings: a pair, a line of four, a box of four, a 2x4 box of eight (two full columns or rows), or all sixteen. As a special note, the for corners actually create a box of four because you can wrap both horiztontally and vertically.
30 Four-Variable Example Lets use the follow function, F= m 0 + m 1 + m 2 + m 8 + m 9 + m 10 + m 15 y z wx For this example we have two boxes of four and one left over.
31 Four-Variable Example We can highlight it as follows. y z wx By looking at which variables don t change, we can find the reduced expression for each highlingting.
32 Four-Variable Example The red highlighting reduces to, x z The blue highlighting reduces to, x y The purple highlighting cannot be reduced, it stay as, w x y z Adding everything together we get, F = x z + x y + w x y z
33 Sample Problems Try making a truth table and k-map to reduce the following expressions. 1. F= m 3 + m 4 + m 6 + m 7 2. F= x z + x y + x y z + y z 3. F= Σ(0, 1, 2, 4, 5, 6, 8, 9, 12, 13, 14) 4. F= m 1 + m 2 + m 4 + m 7 + m 8 + m 10 + m 13 + m 15
34 Solutions 1. y z + x z 2. z + x y 3. y + w z + x z 4. w x z + x y z + w x z +x y z + w x y z + w x y z
35 Reference Digital Design, Fourth Edition M. Morris Mano, Michael D. Ciletti
Karnaugh Maps Applications of Boolean logic to circuit design The basic Boolean operations are AND, OR and NOT These operations can be combined to form complex expressions, which can also be directly translated
Alternative way to Boolean Function Simplification Karnaugh Map CIT 595 Spring 2010 Simplification of Boolean functions leads to simpler (and usually faster) digital circuits Simplifying Boolean functions
Simplifying Logic Circuits with Karnaugh Maps The circuit at the top right is the logic equivalent of the Boolean expression: f = abc + abc + abc Now, as we have seen, this expression can be simplified
CSEE 3827: Fundamentals of Computer Systems Standard Forms and Simplification with Karnaugh Maps Agenda (M&K 2.3-2.5) Standard Forms Product-of-Sums (PoS) Sum-of-Products (SoP) converting between Min-terms
CSE 675.2: Introduction to Computer Architecture Basics of Digital Logic Design Presentation D Study: B., B2, B.3 Slides by Gojko Babi From transistors to chips Chips from the bottom up: Basic building
BOOLEAN ALGEBRA & LOGIC GATES Logic gates are electronic circuits that can be used to implement the most elementary logic expressions, also known as Boolean expressions. The logic gate is the most basic
Points Addressed in this Lecture Lecture 5: Logic Simplication & Karnaugh Map Professor Peter Cheung Department of EEE, Imperial College London (Floyd 4.5-4.) (Tocci 4.-4.5) Standard form of Boolean Expressions
Conversion between number systems: Radix-r to decimal. Decimal to binary. Decimal to Radix-r Binary to Octal Binary to Hex Binary arithmetic operations. Negative number representations. Switching Algebra
4 BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION BOOLEAN OPERATIONS AND EXPRESSIONS Variable, complement, and literal are terms used in Boolean algebra. A variable is a symbol used to represent a logical quantity.
Thi d t t d ith F M k 4 2 Boolean Algebra hapter Two Logic circuits are the basis for modern digital computer systems. To appreciate how computer systems operate you will need to understand digital logic
CSE 220: Systems Fundamentals I Unit 7: Logic Gates; Digital Logic Design: Boolean Equations and Algebra Logic Gates Logic gatesare simple digital circuits that take one or more binary inputs and produce
The equation for the 3-input XOR gate is derived as follows The last four product terms in the above derivation are the four 1-minterms in the 3-input XOR truth table. For 3 or more inputs, the XOR gate
1 Digital Logic ircuits 1. Digital Logic ircuits Many scientific, industrial and commercial advances have been made possible by the advent of computers. Digital Logic ircuits form the basis of any digital
Exclusive OR/Exclusive NOR (XOR/XNOR) XOR and XNOR are useful logic functions. Both have two or more inputs. The truth table for two inputs is shown at right. a XOR b = 1 if and only if (iff) a b. a XNOR
Arithmetic-logic units An arithmetic-logic unit, or ALU, performs many different arithmetic and logic operations. The ALU is the heart of a processor you could say that everything else in the CPU is there
BASIC LOGIC GATES 1 E Basic Logic Gates Richard E. Haskell All digital systems are made from a few basic digital circuits that we call logic gates. These circuits perform the basic logic functions that
Supplement to Logic and Computer Design Fundamentals 4th Edition DESIGN ND NLYSIS USING JK ND T FLIP-FLOPS Selected topics not covered in the fourth edition of Logic and Computer Design Fundamentals are
3e4.5 4.201 According to DeMorgan s theorem, the complement of X + Y Z is X Y +Z. Yet both functions are 1 for XYZ = 110. How can both a function and its complement be 1 for the same input combination?
Computer Organization I Lecture 8: Boolean Algebra and Circuit Optimization Overview The simplification from SOM to SOP and their circuit implementation Basics of Logic Circuit Optimization: Cost Criteria
Arithmetic Circuits Addition, Subtraction, & Multiplication The adder is another classic design example which we are obliged look at. Simple decimal arithmetic is something which we rarely give a second
Analog & Digital Electronics Course No: PH-218 Lec-29: Combinational Logic Modules Course Instructor: Dr. A. P. VAJPEYI Department of Physics, Indian Institute of Technology Guwahati, India 1 Combinational
A Little Perspective Combinational Logic Circuits COMP 251 Computer Organization and Architecture Fall 2009 Motivating Example Recall our machine s architecture: A Simple ALU Consider an ALU that can perform
CS211 Computer Architecture l Topics Digital Logic l Transistors (Design & Types) l Logic Gates l Combinational Circuits l K-Maps Class Checkpoint l What have discussed up until now & why: l C Programming
CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing What we covered thus far: Number representations Logic gates Boolean algebra Introduction to CMOS HW#2 due, HW#3 assigned
ECE 1315 Digital Logic Design Laboratory Manual Guide to Assembling your Circuits Dr. Fernando Ríos-Gutiérrez Dr. Rocio Alba-Flores Dr. Chris Carroll Department of Electrical and Computer Engineering University
COMBINATIONAL LOGIC CIRCUITS 4.1 INTRODUCTION The digital system consists of two types of circuits, namely: (i) Combinational circuits and (ii) Sequential circuits A combinational circuit consists of logic
2 Ver..4 George Boole was an English mathematician of XIX century can operate on logic (or Boolean) variables that can assume just 2 values: /, true/false, on/off, closed/open Usually value is associated
Tutorial 5 Special Combinational Logic Circuit Question 1 a) What is the function of an adder circuit? b) A half-adder adds two binary bits, true or false? c) A half-adder has a sum output only, true or
Reading and construction of logic gates A Boolean function is an expression formed with binary variables, a binary variable can take a value of 1 or 0. Boolean function may be represented as an algebraic
PART-A Questions 1. Convert (10101100)2 into octal. 2. What is the important property of XS3 code? 3. What is the drawback of a serial adder compared to parallel adder? 4. Represent (-10)10 in sign-2 s
CS61c: Representations of Combinational Logic Circuits J. Wawrzynek October 12, 2007 1 Introduction In the previous lecture we looked at the internal details of registers. We found that every register,
Digital Logic and Design (EEE-241) Lecture Dr. M. G. Abbas Malik firstname.lastname@example.org edu Picture Source: http://www.vanoast.com/old-portfolio/digital-design-logo-one%5ba%5d.jpg Previous lecture
Introduction Logic Design Chapter 2: Introduction to Logic Circuits Logic circuits operate on digital signals Unlike continuous analog signals that have an infinite number of possible values, digital signals
DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING Lab Manual Digital Electronics Laboratory (EC-39) BACHELOR OF TECHNOLOGY Subject Code: EC 39 Subject Name: Digital Electronics Laboratory Teaching
Sum of Products (SOP) Expressions The Sum of Products (SOP) form of Boolean expressions and equations contains a list of terms (called minterms) in which all variables are ANDed (products). These minterms
Basics of Digital Logic Design Dr. Arjan Durresi Louisiana State University Baton Rouge, LA 70810 Durresi@Csc.LSU.Edu LSUEd These slides are available at: http://www.csc.lsu.edu/~durresi/csc3501_07/ Louisiana
EE 110 Practice Problems for Exam 2: Solutions, Fall 2008 1. Circle T (true) or F (false) for each of these Boolean equations. (a). T FO An 8-to-1 multiplexer requires 2 select lines. (An 8-to-1 multiplexer
Digital Design for Multiplication Norman Matloff October 15, 2003 c 2003, N.S. Matloff 1 Overview A cottage industry exists in developing fast digital logic to perform arithmetic computations. Fast addition,
ETEC 23 Programmable Logic Devices Chapter 4 Boolean Algebra and Logic Simplification Shawnee State University Department of Industrial and Engineering Technologies Copyright 27 by Janna B. Gallaher Boolean
Algebra Tiles Activity 1: Adding Integers NY Standards: 7/8.PS.6,7; 7/8.CN.1; 7/8.R.1; 7.N.13 We are going to use positive (yellow) and negative (red) tiles to discover the rules for adding and subtracting
File: chap04, Chapter 04 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. 2. True or False? A gate is a device that accepts a single input signal and produces one
Binary Adders: Half Adders and Full Adders In this set of slides, we present the two basic types of adders: 1. Half adders, and 2. Full adders. Each type of adder functions to add two binary bits. In order
Aljabar Boolean, Penyederhanaan Logika dan Peta Karnaugh ENDY SA ENDY SA Program Studi Teknik Elektro Fakultas Teknik Universitas Muhammadiyah Prof. Dr. HAMKA Slide - 6 1 Standard Forms of Boolean Expressions
Chapter 1.10 Logic Gates 1.10 (a) Effects of logic gates AND, OR, NOT on binary signals in a processor Microprocessors are the central hardware that runs computers. There are several components that make
Faculty of Mathematics Waterloo, Ontario N2L 3G1 Introduction Grade 6 Math Circles November 5/6, 2013 Multiplication At this point in your schooling you should all be very comfortable with multiplication.
Chapter 3: Combinational Logic Design 1 Introduction We have learned all the prerequisite material: Truth tables and Boolean expressions describe functions Expressions can be converted into hardware circuits
LAB 2: BOOLEAN THEOREMS OBJECTIVES 1. To implement DeMorgan's theorems in circuit simplification. 2. To design a combinational logic circuit with simplest logic gates representation using Karnaugh Mapping
Problem 3 If A is divided by B the result is 2/3. If B is divided by C the result is 4/7. What is the result if A is divided by C? Suggested Questions to ask students about Problem 3 The key to this question
OA3-10 Patterns in Addition Tables Pages 60 63 Standards: 3.OA.D.9 Goals: Students will identify and describe various patterns in addition tables. Prior Knowledge Required: Can add two numbers within 20
ENGR 1000, Introduction to Engineering Design Unit 1: Prerequisite Knowledge for Mechatronics Systems Lesson 1.1: Converting binary numbers to decimal numbers and back Objectives: Convert decimal numbers
Logic in Computer Science: Logic Gates Lila Kari The University of Western Ontario Logic in Computer Science: Logic Gates CS2209, Applied Logic for Computer Science 1 / 49 Logic and bit operations Computers
2007 Introduction BK TP.HCM Tran Ngoc Thinh HCMC University of Technology http://www.cse.hcmut.edu.vn/~tnthinh Basic logic gate functions will be combined in combinational logic circuits. Simplification
Section 3.5 - Minterms, Maxterms, Canonical Fm & Standard Fm Page 1 of 5 3.5 Canonical Fms In general, the unique algebraic expression f any Boolean function can be obtained from its truth table by using
Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 3 Additional Gates and Circuits Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. Overview Part 1 Gate Circuits
ECE2883 HP: Lab 3- Logic Experts (LEs) Combinational logic lab Implementing combinational logic with Quartus We should be starting to realize that you, the SMEs in this course, are just a specific type
11 Solving a System of Equations 11-1 Introduction The previous chapter has shown how to solve an algebraic equation with one variable. However, sometimes there is more than one unknown that must be determined
The Storage or Data Register All sequential logic circuits in the computer CPU are based on the latch or flip-flop. A significant part of the ALU is the register complement. In the MIPS R-2000 computer
Chapter Goals Chapter 4 Gates and Circuits Identify the basic gates and describe the behavior of each Describe how gates are implemented using transistors Combine basic gates into circuits Describe the
Review of ECE 230 Material Prof. A. Mason, Michigan State University Preface This document was developed for students taking ECE 331 to review material covered in ECE 230. It will be assumed that ECE 331
Quine-McClusky Minimization Procedure This is basically a tabular method of minimization and as much it is suitable for computer applications. The procedure for optimization as follows: Step : Describe
5.2 Polynomial Operations At times we ll need to perform operations with polynomials. At this level we ll just be adding, subtracting, or multiplying polynomials. Dividing polynomials will happen in future
Answers to problems marked with ~,appear at the end of the book. 3.1'~ Simplify the following Boolean functions, using three-variable maps: (a) F(x, y, z) = L(o, 2,6,7) (b) F(x, y, z) = L(o, 1,2,3,7) 3.2
CSE140: Components and Design Techniques for Digital Systems Two and Multilevel logic implementation Tajana Simunic Rosing 1 Two-level logic using NND gates Replace minterm ND gates with NND gates Place
Chapter 4 BOOLEAN ALGEBRA AND THEOREMS, MIN TERMS AND MAX TERMS Lesson 5 BOOLEAN EXPRESSION, TRUTH TABLE and product of the sums (POSs) [MAXTERMS] 2 Outline POS two variables cases POS for three variable
State Reduction and Assignment Running head: STATE REDUCTION AND ASSIGNMENT State Reduction and State Assignment Techniques Derek Hildreth and Timothy Price Brigham Young University - Idaho State Reduction
Philadelphia University Faculty of Information Technology Department of Computer Science ----- Semester, 2007/2008 Course Syllabus Course Title: Computer Logic Design Course Level: 1 Lecture Time: Course
Gates, Circuits, and Boolean Algebra Computers and Electricity A gate is a device that performs a basic operation on electrical signals Gates are combined into circuits to perform more complicated tasks
Karnaugh Maps (K-map) lternate representation of a truth table Red decimal = minterm value Note that is the MS for this minterm numbering djacent squares have distance = 1 Valuable tool for logic minimization
Chapter 5: Sequential Circuits (LATCHES) Latches We focuses on sequential circuits, where we add memory to the hardware that we ve already seen Our schedule will be very similar to before: We first show
Chapter : Number Systems and Conversion.6 Subtract in binary. Place a over each column from which it was necessary to borrow. (a) (b) (c).7 dd the following numbers in binary using 2 s complement to represent
Page1 Grade 9 Mathematics Unit #1 Number Sense Sub-Unit #1 Rational Numbers Lesson Topic I Can 1 Ordering & Adding Create a number line to order integers Integers Identify integers Add integers 2 Subtracting
Chapter 2 Switching Algebra and Logic Gates The word algebra in the title of this chapter should alert you that more mathematics is coming. No doubt, some of you are itching to get on with digital design
CHAPTER TWO Numbering Systems Chapter one discussed how computers remember numbers using transistors, tiny devices that act like switches with only two positions, on or off. A single transistor, therefore,
Section P.9 Notes Page P.9 Linear Inequalities and Absolute Value Inequalities Sometimes the answer to certain math problems is not just a single answer. Sometimes a range of answers might be the answer.
Your consent to our cookies if you continue to use this website.