Section 4.1 Switching Algebra Symmetric Functions

Similar documents
Combinational Logic Design Principles

MC9211 Computer Organization

Standard Expression Forms

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS

Chapter 2: Switching Algebra and Logic Circuits

1. Expand each of the following functions into a canonical sum-of-products expression.

Logic Synthesis and Verification

Introduction to Digital Logic Missouri S&T University CPE 2210 Karnaugh Maps

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev

Combinatorial Logic Design Principles

Unit 2 Boolean Algebra

Chapter 2 Boolean Algebra and Logic Gates

Digital Circuit And Logic Design I. Lecture 3

Chapter 2 Combinational Logic Circuits

E&CE 223 Digital Circuits & Systems. Lecture Transparencies (Boolean Algebra & Logic Gates) M. Sachdev. Section 2: Boolean Algebra & Logic Gates

Chapter 2 : Boolean Algebra and Logic Gates

Chapter 2: Boolean Algebra and Logic Gates

Lecture 6: Manipulation of Algebraic Functions, Boolean Algebra, Karnaugh Maps

Logic Gate Level. Part 2

Every time has a value associated with it, not just some times. A variable can take on any value within a range

CS 226: Digital Logic Design

Chapter 2. Boolean Algebra and Logic Gates

Logic Design. Chapter 2: Introduction to Logic Circuits

Unit 2 Boolean Algebra

Combinational Logic Fundamentals

Lecture 5: NAND, NOR and XOR Gates, Simplification of Algebraic Expressions

Chapter 2 Combinational Logic Circuits

Boolean Algebra and Logic Gates

Chap 2. Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits

Functions. Computers take inputs and produce outputs, just like functions in math! Mathematical functions can be expressed in two ways:

XOR - XNOR Gates. The graphic symbol and truth table of XOR gate is shown in the figure.

CS/EE 181a 2010/11 Lecture 4

Boolean Algebra & Logic Gates. By : Ali Mustafa

Midterm1 Review. Jan 24 Armita

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 2 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

CS61c: Representations of Combinational Logic Circuits

DIGITAL CIRCUIT LOGIC BOOLEAN ALGEBRA (CONT.)

Chapter 2 Boolean Algebra and Logic Gates

Digital Circuit And Logic Design I. Lecture 4

ELCT201: DIGITAL LOGIC DESIGN

Heuristic Minimization of Two Level Circuits

EECS150 - Digital Design Lecture 19 - Combinational Logic Circuits : A Deep Dive

Week-I. Combinational Logic & Circuits

Digital Logic Design. Combinational Logic

Boolean Algebra CHAPTER 15

ELC224C. Karnaugh Maps

ECE 20B, Winter 2003 Introduction to Electrical Engineering, II LECTURE NOTES #2

CHAPTER 2 BOOLEAN ALGEBRA

Logic. Combinational. inputs. outputs. the result. system can

Combinational Logic Circuits Part II -Theoretical Foundations

Chapter 2 Boolean Algebra and Logic Gates

Chapter 4: Combinational Logic Solutions to Problems: [1, 5, 9, 12, 19, 23, 30, 33]

CHAPTER 12 Boolean Algebra

Chapter-2 BOOLEAN ALGEBRA

This form sometimes used in logic circuit, example:

Gate-Level Minimization

Introduction to Digital Logic Missouri S&T University CPE 2210 Boolean Representations

Ex: Boolean expression for majority function F = A'BC + AB'C + ABC ' + ABC.

Signals and Systems Digital Logic System

Chapter 2 Combinational Logic Circuits

Learning Objectives. Boolean Algebra. In this chapter you will learn about:

CSCI 1010 Models of Computa3on. Lecture 02 Func3ons and Circuits

Spiral 2-4. Function synthesis with: Muxes (Shannon's Theorem) Memories

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan

BOOLEAN ALGEBRA. Introduction. 1854: Logical algebra was published by George Boole known today as Boolean Algebra

Boolean Algebra, Gates and Circuits

Circuits & Boolean algebra.

CHAPTER1: Digital Logic Circuits Combination Circuits

Digital Logic Design ENEE x. Lecture 12

CS/EE 181a 2008/09 Lecture 4

EC-121 Digital Logic Design

Boolean Algebra and Logic Gates Chapter 2. Topics. Boolean Algebra 9/21/10. EECE 256 Dr. Sidney Fels Steven Oldridge

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18

Chapter 2 Combinational Logic Circuits

Electronics. Overview. Introducction to Synthetic Biology

Contents. Chapter 2 Digital Circuits Page 1 of 30

CS 121 Digital Logic Design. Chapter 2. Teacher Assistant. Hanin Abdulrahman

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function

Combinational Logic Design Combinational Functions and Circuits

Part 5: Digital Circuits

DIGITAL ELECTRONICS & it0203 Semester 3

Slide Set 3. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary

Class Website:

Boolean Algebra and Logic Design (Class 2.2 1/24/2013) CSE 2441 Introduction to Digital Logic Spring 2013 Instructor Bill Carroll, Professor of CSE

Lecture 6: Gate Level Minimization Syed M. Mahmud, Ph.D ECE Department Wayne State University

Binary Logic and Gates. Our objective is to learn how to design digital circuits.

Lecture 4: More Boolean Algebra

Digital Logic Design. Malik Najmus Siraj

UC Berkeley College of Engineering, EECS Department CS61C: Representations of Combinational Logic Circuits

2. Associative Law: A binary operator * on a set S is said to be associated whenever (A*B)*C = A*(B*C) for all A,B,C S.

Combinational Logic. Review of Combinational Logic 1

Fundamentals of Computer Systems

ECE 545 Digital System Design with VHDL Lecture 1A. Digital Logic Refresher Part A Combinational Logic Building Blocks

COE 202: Digital Logic Design Combinational Logic Part 2. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

Fundamental Algorithms for System Modeling, Analysis, and Optimization

EEA051 - Digital Logic 數位邏輯 吳俊興高雄大學資訊工程學系. September 2004

WEEK 2.1 BOOLEAN ALGEBRA

1. Name the person who developed Boolean algebra

BOOLEAN LOGIC. By- Neha Tyagi PGT CS KV 5 Jaipur II Shift, Jaipur Region. Based on CBSE curriculum Class 11. Neha Tyagi, KV 5 Jaipur II Shift

Transcription:

Section 4.1 Switching Algebra Symmetric Functions Alfredo Benso Politecnico di Torino, Italy Alfredo.benso@polito.it Symmetric Functions A function in which each input variable plays the same role in determining the value of the function. Examples: majority function: it is 1 only when more than half of the inputs are 1. It is the carry function in the binary addition and the voter function used in fault tolerant computing; (odd) parity function: is 1 only if an odd number of inputs are 1. It is the sum function for binary addition and it is used in detecting or correcting code circuits. 1

Symmetric Functions Symmetric functions can be synthesized with fewer logic elements Detection of symmetry is an important and HARD problem in CAD There are several types of symmetry Totally Symmetric Functions Definition A function f(x 1,x 2,...,x n ) is totally symmetric iff it is unchanged by any permutation of its variables. Examples: F = xy + xz + yz (majority function) F = x y + xy (parity function, exor) Theorem: f(x 1,x 2,...,x n ) is totally symmetric iff it can be specified by stating a list of integers A={a 1,a 2,...,a m }, 0=a j =n so that f=1 iff exactly a j of the variables are 1 {a 1,a 2,...,a m } are called a-numbers S A is the symbol used to indicate a Symmetric Function. 2

a-number Example Consider the function S 1 (x,y,z) Then this function has a single a-number = 1 The truth table is: x y z f 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 Another a-number Example Consider the function S 0,2 (x,y,z) Then this function has two a-numbers, 0 & 2 The truth table is: x y z f 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 3

Problem Write the truth table of S 1,2 (x, y, z) x y z f 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 0 Mixed Symmetric Functions Definition A function f(x 1,x 2,...,x n ) is mixed symmetric iff it is not totally symmetric, but it can be changed into totally symmetric by replacing some of its variables by their complements. A mixed symmetric function is represented by the symbol S A (x,y,z ) where y and z are the variables to be complemented Examples: F = xy z is not totally symmetric, but xyz is totally symmetric, therefore F is mixed symmetric 4

Partially Symmetric Functions A function f(x 1,x 2,...,x n ) will be called symmetric if it is either totally or mixed symmetric There are functions that are unchanged when some, but not all, of their variables are permuted. For example F=x+yz is unchanged by a permutation of y and z. Such functions are called partially symmetric. Definition A function f(x 1,x 2,...,x n ) is partially symmetric in x i1, x i2,..., x im iff it is unchanged by any permutation of the variables x i1, x i2,..., x im Identification of symmetric functions Definition: column sum & row sum (a-number) Ex. f(x, y, z) = S (1, 2, 4, 7) x y z a-number 0 0 1 1 Row sum 0 1 0 1 Row sum 1 0 0 1 Row sum 1 1 1 3 Row sum 2 2 2 Column sum 5

Naive Way: Identification of symmetric functions If all variables are uncomplemented (complemented): Expand to Canonical Form and count minterms for each possible a-number If f = 1 for all minterms corresponding to an a- number, then that a-number is included in the set Question: What is the total number of minterms for an a-number in a function of n variables? n n! a = ( n a)! a! Identification of symmetric functions Sufficient condition for symmetry: 1) Column sums are all the same 2) Each a-number a, must occur a binomial coefficient number of times 3! = 3 (3 1)! 1! 3 variables, 1-number 3! = 1 (3 3)!3! 3 variables, 3-number 6

Identification of Symmetry Example f=s(1, 2, 4, 7) - Canonical Form Sum of Minterms - Symmetric x y z 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 3 2 2 2 3 3! 3 1 = = (3 1)!1! 3 3! = = 1 3 3!(3 3)! g= S(1, 2, 4, 5) - Canonical Form Sum of Minterms NOT Symmetric x y z 0 0 1 1 0 1 0 1 1 0 0 1 1 0 1 2 2 1 2 3 3! 3 1 = = (3 1)!1! 3 3! 3 2 = = 3!(3 2)! Identification of Symmetry Example 2 f(w,x,y,z)=s(0,1,3,5,8,10,11,12,13,15) 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 0 1 0 2 1 0 1 1 3 1 1 0 0 2 1 1 0 1 3 1 1 1 1 4 6 4 4 6 Column Sums are not Equal Not Totally Symmetric 7

Identification of Symmetry Example 3 f(w,x,y,z)= S(3,5,6,7,9,10,11,12,13,14) 0 1 1 0 2 0 1 1 1 3 1 0 0 1 2 1 0 1 0 2 1 0 1 1 3 1 1 0 0 2 1 1 0 1 3 1 1 1 0 3 6 6 6 6 4 4! 6 2 = = (4 2)!2! 4 4! 4 3 = = (4 3)!3! S 2,3 (w, x, y, z) ALSO S 1,2 (w, x, y, z) Theorem: Column Sum Theorem The equality of all column sums is NOT a sufficient condition for the detection of Total Symmetry Proof: We prove this by contradiction. Consider the following function: f(w, x, y, z) = S(0,3,5,10,12,15) Clearly, it is NOT symmetric since a=2 is not satisfied, however, all column sums are the same. 0 0 0 0 0 1 0 1 0 2 1 1 0 0 2 1 1 1 1 4 3 3 3 3 4 4 4 = 1 = 6 = 1 0 2 4 NOT Totally Symmetric!!! 8

Column Sum Check Recall the Shannon Expansion Property All co-factors of a symmetric function are also symmetric When column sums are equal, expand about any variable Consider f w and f w 0 0 0 0 0 1 0 1 0 2 1 1 0 0 2 1 1 1 1 4 3 3 3 3 0 0 0 0 0 1 1 2 1 0 1 0 1 1 1 0 0 1 1 1 1 1 3 2 2 1 Cofactors NOT symmetric since column sums are unequal However, can complement variables to obtain symmetry {x, y } OR {z } Total Symmetry Algorithm 1) Compute Column Sums a) if >2 column sum values fi NOT SYMMETRIC b) if =2 compare the total with # rows if same complement columns with smaller column sum else NOT SYMMETRIC c) if =1, compare to ½ # of rows if equal, go to step 2 if not equal, go to step 3 2) Compute Row Sums (a-numbers), check for correct values a) if values are correct, then SYMMETRY detected b) if values are incorrect, then NOT SYMMETRIC n a 9

Total Symmetry Algorithm (cont) 3) Compute Row Sums, check for correct numbers if they are correct SYMMETRIC else, expand f about any variable and go to step 1 for each cofactor Example f(w,x,y,z)=s(0,1,3,5,8,10,11,12,13,15) w x' x y' y z a i 0 01 01 0 02 0 01 01 1 13 0 01 10 1 2 0 10 01 1 2 1 01 01 0 13 1 01 10 0 2 1 01 10 1 3 1 10 01 0 2 1 10 01 1 3 1 10 10 1 42 6 46 46 6 Column sums are not equal There are two different sums (6 and 4) Compare the total (6+4=10) with the # of rows (10) They are the same fi complement columns with smaller column sum 10

Example f(w,x,y,z)=s(0,1,3,5,8,10,11,12,13,15) w x' y' z a i 0 1 1 0 2 0 1 1 1 3 1 1 1 0 3 1 1 0 0 2 1 1 0 1 3 1 0 1 0 2 1 0 1 1 3 1 0 0 1 2 6 6 6 6 a-numbers: 4! = 6 (4 2)!2! 4! = 4 (4 3)!3! 11