Logic Synthesis Optimization Lect18: Multi Level Logic Minimization - PowerPoint PPT Presentation

1 / 51
About This Presentation
Title:

Logic Synthesis Optimization Lect18: Multi Level Logic Minimization

Description:

State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect18: Multi Level Logic Minimization – PowerPoint PPT presentation

Number of Views:132
Avg rating:3.0/5.0
Slides: 52
Provided by: Dr231658
Category:

less

Transcript and Presenter's Notes

Title: Logic Synthesis Optimization Lect18: Multi Level Logic Minimization


1
Logic Synthesis OptimizationLect18 Multi Level
Logic Minimization
State university of New York at New
Paltz Electrical and Computer Engineering
Department
Dr. Yaser Khalifa Electrical and Computer
Engineering Department State University of New
York at New Paltz
2
Irredundant
  • The IRREDUNDANT procedure generates an ISOP with
    as few products as possible from the given set of
    PIs.

3
  • Let f c1, c2, c3, , cn be the given set of
    PIs. Partition the PIs of F into three sets
  • Relatively essential set
  • Totally redundant set
  • Partially redundant set
  • Find a subset of RP that together with ER covers
    F. For each ci in the RP, find the set H(ci) of
    minimum sets MS RP, such that ci (RP MS) ER

4
  • Algorithm
  • Let f c1, c2, c3, , cn be the given set of
    PIs. Partition the PIs of F into three sets
  • Relatively essential set
  • Totally redundant set
  • Partially redundant set
  • Find a subset of RP that together with ER covers
    F. For each ci in the RP, find the set H(ci) of
    minimum sets MS RP, such that ci (RP MS) ER

5
Why Multi-Level
  • Two-level may need a large number of product
    terms.
  • Some primary outputs may have huge fanouts.
    Example XOR logic
  • Number of product terms of n inputs is
    exponential in n in 2-level
  • Number of product terms of n inputs is linear in
    n in Multi-level

6
  • Multi-level logic optimzation is the process of
    trying to reduce the cost of the representations
    for the given logic functions.
  • The cost criteria for optimization can be
  • Number of literals (targeting areas of the
    circuits)
  • Numbers of levels (targeting delays in the
    circuits)
  • Power
  • wireability

7
  • If the specification is given in sum of product
    forms, the first step is to make it more compact
    by introducing more logic levels in the
    representation.
  • This is typially done by factoring a logic
    expression and dividing a logic expression with
    another logic expression
  • For example, acf bcf adf bdf ef acg
    bcg adg bdg eg is an optimum 2-level
    representation. There are 28 literals.
  • It can be factored to (( a b)(c d) e)(f
    g) which needs only 7 literals.

8
Optimization Methods
  • Boolean Methods Optimization methods that
    consider logic functions and their
    representations.
  • Algebric Methods Optimization methods that
    consider only logic representations.
  • Algebric methods treat logic functions as
    polynomial expressions.
  • Boolean methods recognize Boolean algebra rules
    that can transform one logic representation to
    another.

9
Algebric Methods
  • We use graph model called Boolean network to
    represent a technology independent multi level
    circuit structure.
  • Primary input nodes represent the primary input
    to the circuit
  • Primary output nodes nodes that have no outing
    edges.
  • Intermediate nodes internal structure of the
    circuit.

10
  • Each intermediate node is associated with a
    Boolean function called the local function of a
    node.
  • All nodes are associated with Boolean variables.
    We treat a node and a variable associated with
    the node interchangeably.
  • An edge from node ni to node nj represents that
    the local function of node nj directly depends on
    ni.
  • Since Boolean networks are not bound to any
    particular circuit technology, it is very generic
    and is widely used in various logic systhesis
    applications.

11
(No Transcript)
12
(No Transcript)
13
(No Transcript)
14
(No Transcript)
15
(No Transcript)
16
(No Transcript)
17
(No Transcript)
18
(No Transcript)
19
(No Transcript)
20
(No Transcript)
21
(No Transcript)
22
(No Transcript)
23
(No Transcript)
24
(No Transcript)
25
(No Transcript)
26
(No Transcript)
27
(No Transcript)
28
(No Transcript)
29
(No Transcript)
30
Optimization Methods
  • Boolean Methods Optimization methods that
    consider logic functions and their
    representations.
  • Algebric Methods Optimization methods that
    consider only logic representations.
  • Algebric methods treat logic functions as
    polynomial expressions.
  • Boolean methods recognize Boolean algebra rules
    that can transform one logic representation to
    another.

31
(No Transcript)
32
(No Transcript)
33
Models used in Algebric Methods
  • There are several ways to represent a local
    function of a node
  • SOP expression is the most popular form to
    manipulate
  • Factored form is a good measurement for area
    estimation by counting literals. But manipulation
    is difficult.
  • Simple gate (AND/OR/NAND/NOR) this mode is easy
    to manipulate. But it is not suitable for
    representing structure containing more complex
    gates.

34
  • In algebric methods, we treat a SOP expression in
    a different manner from the Boolean method
  • A literal is a variable or its negation.
  • A positive and negative literal (e.g. a and a/)
    have no relation to each other and are treated as
    mutually independent.
  • A cube is a set of literals
  • An expression is a set of cubes
  • For example F ab c is represented as F1, F2
    a,b,c.
  • A capital letter (C) denotes a cube, and a small
    letter (a) denotes a literal.

35
  • A cube is considered a set of literals, not a
    product of literals. A cube ab is contained in a
    cube abc as a set of literals, i.e.
  • An expression is called algebric if no cube in
    the expression contains another.
  • The support is the set of variables that appear
    in a given expression. SUP(F)
  • If two expressions FF1, F2, and g G1, G2,
    have no common support variables, i.e.
    f, we can define the
    algebric product of two expressions f and g as
    follows,
  • For example the product of a bc and d f is ad
    af bcd bcf

36
Algebric Division
  • Algebric Division is an operation to compute a
    quotient expression Q and a reminder expression R
    from a given expression F and divisor expression
    D such that F and Q.D R are the same
    expressions.
  • Before describing the weak division algorithm we
    define the cube division operation, F/D, where F
    is an expression and D is a cube.

37
We say that g divides f weakly if there exist h,r
such that Fgh r and g is orthogonal on
h Example fab ac d g b c
f a(b c) d ha rd We say
that g divides f evenly if rf
38
Pseudo code for the weak division algorithm
39
(No Transcript)
40
(No Transcript)
41
(No Transcript)
42
(No Transcript)
43
(No Transcript)
44
(No Transcript)
45
(No Transcript)
46
(No Transcript)
47
(No Transcript)
48
(No Transcript)
49
Kernels
  • An expression is called cube-free if no cube
    divides the expression evenly (no reminder)
  • The primary divisors of an expression F, denoted
    by D(F), are the set of quotients that are
    derived by dividing F by all possible cubes.
  • The Kernels of an expressions F, denoted by K(F),
    is the set of cube free primary divisors of F.
  • A cube that is used to drive a kernel is called
    co-kernel.

50
  • Each kernel has a level
  • If a kernel does not contain any othe kernel, the
    level of the kernel is 0.
  • If the kernel contains kernels of level n-1 but
    does not contain kernels of whose level is more
    than n-1, the level of the kernel is n.
  • Example
  • F adf aef bdf bef cdf cef bfg h
  • (a b c)(d e)f bfg h

51
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com