IKI10201 03aBoolean Algebra - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

IKI10201 03aBoolean Algebra

Description:

The axioms below must always be true. Based on axiom #5, we can develop a unary ... In addition to the axioms, additional laws can be derived; they are called ... – PowerPoint PPT presentation

Number of Views:21
Avg rating:3.0/5.0
Slides: 28
Provided by: chiefinfor
Category:

less

Transcript and Presenter's Notes

Title: IKI10201 03aBoolean Algebra


1
IKI1020103a-Boolean Algebra
  • Bobby Nazief
  • Semester-I 2005 - 2006

The materials on these slides are adopted from
those in CS231s Lecture Notes at UIUC, which is
derived from Howard Huangs work and developed by
Jeff Carlyle.
2
Road Map
Logic Gates Flip-flops
3
Boolean Algebra
3
6
Finite-StateMachines
6
4
Sequential DesignTechniques
Logic DesignTechniques
CombinatorialComponents
StorageComponents
2
Binary Systems Data Represent.
7
5
8
Register-TransferDesign
8
Generalized FSM
ProcessorComponents
9
3
Boolean Algebra
4
Boolean values
  • Earlier, we used electrical voltages to
    representtwo discrete values 1 and 0, from which
    binary numberscan be formed.
  • Its also possible to think of voltages as
    representingtwo logical values, true and false.
  • For simplicity, we often still write digits
    instead
  • 1 (high) is true
  • 0 (low) is false
  • We will use these values 1 and 0 as the elements
    of our Boolean System.

5
Basic boolean operations
  • There are two basic operations for logical values.

AND (product) of two inputs
OR (sum) of two inputs
Operation
Expression
xy, or x?y
x y
Truth table
6
Axiomatic definition of Boolean Algebra
  • A Boolean algebra requires
  • A set of elements B, consisting of two elements
    (0 and 1)
  • Two binary operations OR and AND
  • The axioms below must always be true
  • Based on axiom 5, we can develop a unary
    (one-argument) operation NOT

7
Basic theorems of Boolean Algebra
  • In addition to the axioms, additional laws can be
    derived they are called theorems of Boolean
    Algebra
  • These theorems are useful in performing algebraic
    manipulations of Boolean expressions

8
Proofing the theorems using axioms
  • Idempotency x x x
  • Proof x x (x x) ? 1 by
    identity (x x) ? (x x) by complement
    x x ? x by distributivity x 0 by
    complement x by identity
  • Idempotency x ? x x
  • Proof x ? x (x ? x) 0 by
    identity (x ? x) (x ? x) by complement
    x ? (x x) by distributivity x ? 1 by
    complement x by identity

9
Duality principle
  • The left and right columns of axioms are duals
  • exchange all ANDs with ORs, and 0s with 1s
  • So are the theorems

10
Boolean Functions
  • Computers take inputs and produce outputs, just
    like functions in math!
  • Mathematical functions can be expressed in two
    ways
  • We can represent logical functions in two
    analogous ways too
  • A finite, but non-unique Boolean expression.
  • A truth table, which will turn out to be unique
    and finite.

11
Boolean expressions
  • We can use these basic operations to form more
    complex expressions
  • f(x,y,z) (x y)z x
  • Some terminology and notation
  • f is the name of the function.
  • (x,y,z) are the input variables, each
    representing 1 or 0. Listing the inputs is
    optional, but sometimes helpful.
  • A literal is any occurrence of an input variable
    or its complement. The function above has four
    literals x, y, z, and x.
  • Precedence is important, but not too difficult.
  • NOT has the highest precedence, followed by AND,
    and then OR.
  • Fully parenthesized, the function above would be
    kind of messy
  • f(x,y,z) (((x (y))z) x)

12
Truth tables
  • A truth table shows all possible inputs and
    outputs of a function.
  • Remember that each input variable represents
    either 1 or 0.
  • Because there are only a finite number of values
    (1 and 0), truth tables themselves are finite.
  • A function with n variables has 2n possible
    combinations of inputs.
  • Inputs are listed in binary orderin this
    example, from 000 to 111.

13
Complement of a function
  • The complement of a function always outputs 0
    where the original function outputted 1, and 1
    where the original produced 0.
  • In a truth table, we can just exchange 0s and 1s
    in the output column(s)

f(x,y,z) x(yz yz)
14
Complementing a function algebraically
  • You can use DeMorgans law to keep pushing the
    complements inwards
  • You can also take the dual of the function, and
    then complement each literal
  • If f(x,y,z) x(yz yz)
  • the dual of f is x (y z)(y z)
  • then complementing each literal gives x (y
    z)(y z)
  • so f(x,y,z) x (y z)(y z)

f(x,y,z) x(yz yz) f(x,y,z) ( x(yz
yz) ) complement both sides x (yz
yz) because (xy) x y x (yz)
(yz) because (x y) x y x (y
z)(y z) because (xy) x y, twice
15
Algebraic manipulation
  • We can now start doing some simplifications

xy xyz xy x(y y) xyz
Distributive xy xy x(y y) x?1
xyz Axiom 5 y y 1 x xyz Axiom
2 x?1 x (x x)(x yz)
Distributive 1 ? (x yz) Axiom 5 x x
1 x yz Axiom 2 x?1 x
16
Canonical Forms
  • Any boolean function that is expressed as a sum
    of minterms or as a product of maxterms is said
    to be in its canonical form.

17
Minterms
  • A minterm is a special product of literals, in
    which each input variable appears exactly once.
  • A function with n variables has 2n minterms
    (since each variable can appear complemented or
    not)
  • A three-variable function, such as f(x,y,z), has
    23 8 minterms
  • Each minterm is true for exactly one combination
    of inputs

xyz xyz xyz xyz xyz xyz xyz xyz
Minterm Is true when Shorthand xyz x0, y0,
z0 m0 xyz x0, y0, z1 m1 xyz x0, y1,
z0 m2 xyz x0, y1, z1 m3 xyz x1, y0,
z0 m4 xyz x1, y0, z1 m5 xyz x1, y1,
z0 m6 xyz x1, y1, z1 m7
18
Sum of minterms form
  • Every function can be written as a sum of
    minterms, which is a special kind of sum of
    products form
  • The sum of minterms form for any function is
    unique
  • If you have a truth table for a function, you can
    write a sum of minterms expression just by
    picking out the rows of the table where the
    function output is 1 (1-minterm).

f xyz xyz xyz xyz xyz m0
m1 m2 m3 m6 ?(0,1,2,3,6)
f xyz xyz xyz m4 m5 m7
?(4,5,7)
f contains all the minterms not in f
19
Sum of minterms practise
  • F x yz, how to express this in the sum of
    minterms?
  • x(y y)(z z) (x x)yz xyz
    xyz xyz xyz xyz xyz xyz
    xyz xyz xyz xyz ?(3,4,5,6,7)
  • or, convert the expression into truth-table and
    then read the minterms from the table

20
Maxterms
  • A maxterm is a sum of literals, in which each
    input variable appears exactly once.
  • A function with n variables has 2n maxterms
  • The maxterms for a three-variable function
    f(x,y,z)
  • Each maxterm is false for exactly one combination
    of inputs

x y z x y z x y z x y z x
y z x y z x y z x y z
Maxterm Is false when Shorthand x y z x0,
y0, z0 M0 x y z x0, y0, z1 M1 x y
z x0, y1, z0 M2 x y z x0, y1,
z1 M3 x y z x1, y0, z0 M4 x y
z x1, y0, z1 M5 x y z x1, y1,
z0 M6 x y z x1, y1, z1 M7
21
Product of maxterms form
  • Every function can be written as a unique product
    of maxterms
  • If you have a truth table for a function, you can
    write a product of maxterms expression by picking
    out the rows of the table where the function
    output is 0 (0-maxterm).

f (x y z)(x y z)(x y z) M4
M5 M7 ?(4,5,7)
f (x y z)(x y z)(x y z) (x
y z)(x y z) M0 M1 M2 M3 M6
?(0,1,2,3,6)
f contains all the maxterms not in f
22
Product of maxterms practise
  • F xy xz, how to express this in the product
    of maxterms?
  • (xy x)(xy z) (x x)(y
    x)(x z)(y z) (x y)(x z)(y z)
    (x y zz)(x z yy)(xx y z)
    (x y z)(x y z)(x y z)(x y
    z)(x y z)(x y z) (x y z)(x
    y z)(x y z)(x y z)
    ?(2,3,4,6)
  • or, convert the expression into truth-table and
    then read the minterms from the table

23
Minterms and maxterms are related
  • Any minterm mi is the complement of the
    corresponding maxterm Mi
  • For example, m4 M4 because (xyz) x y
    z

Maxterm Shorthand x y z M0 x y z M1 x
y z M2 x y z M3 x y z M4 x
y z M5 x y z M6 x y z M7
Minterm Shorthand xyz m0 xyz m1 xyz m
2 xyz m3 xyz m4 xyz m5 xyz m6 xyz m
7
24
Converting between canonical forms
  • We can convert a sum of minterms to a product of
    maxterms
  • In general, just replace the minterms with
    maxterms, using maxterm numbers that dont appear
    in the sum of minterms
  • The same thing works for converting from a
    product of maxterms to a sum of minterms

From before f ?(0,1,2,3,6) and f
?(4,5,7) m4 m5 m7 complementing (f)
(m4 m5 m7) so f m4 m5 m7 DeMorgans
law M4 M5 M7 By the previous page
?(4,5,7)
f ?(0,1,2,3,6) ?(4,5,7)
25
Standard Forms
  • Any boolean function that is expressed as a sum
    of products (SOP) or as a product of sums (POS),
    where each product-term or sum-term may require
    fewer than (n-1) operations, is said to be in its
    standard form.
  • Standard forms are not unique, there can be
    several different SOPs and POSs for a given
    function.
  • A SOP expression contains
  • Only OR (sum) operations at the outermost level
  • Each term (implicant) must be a product of
    literals
  • A POS expression contains
  • Only AND (product) operations at the outermost
    level
  • Each term (implicate) must be a sum of literals

f(x,y,z) xy xyz xyz
f(x,y,z) (x y)(x y z)(x y z)
26
Strategy for operator (literal) reduction
27
Other Logic Operations
  • Weve already seen all the basic Boolean
    operations and the associated primitive logic
    gates.
  • There is a few additional gates that are often
    used in logic design.
  • They are all equivalent to some combination of
    primitive gates.
  • But they have some interesting properties in
    their own right.

NAND (NOT-AND)
NOR (NOT-OR)
XOR (eXclusive OR)
Operation
Expressions
(xy) x y
(x y) x y
x ? y xy xy
Truth table
Write a Comment
User Comments (0)
About PowerShow.com