Logic Synthesis in IC Design and Associated Tools
Download
1 / 15

Logic Synthesis in IC Design and Associated Tools Review-I - PowerPoint PPT Presentation


  • 114 Views
  • Uploaded on

Logic Synthesis in IC Design and Associated Tools Review-I. Wang Jiang Chau Grupo de Projeto de Sistemas Eletrônicos e Software Aplicado Laboratório de Microeletrônica – LME Depto . Sistemas Eletrônicos Universidade de São Paulo. Computational Problems and Intractability.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Logic Synthesis in IC Design and Associated Tools Review-I' - abba


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Logic synthesis in ic design and associated tools review i

Logic Synthesis in IC Design and Associated Tools

Review-I

Wang Jiang Chau

Grupo de Projeto de Sistemas

Eletrônicos e Software Aplicado

Laboratório de Microeletrônica – LME

Depto. SistemasEletrônicos

Universidade de São Paulo


Logic synthesis in ic design and associated tools review i

Computational Problems and Intractability

SEVERAL Algorithms

(efficiency, sometimes also

complexity)

ONE Problem

(complexity)

  • ALGORITHMS (algorithmics !!):

    when an algorithm is efficient?

    • Algorithm is a step-by-step procedure .

    • Algorithm is different from program .


Logic synthesis in ic design and associated tools review i

P2: 4 5 3 7 2 6

P1: 5 4 3 7 2 6

P1: 54 3 7 26(pivot=5)

P1: 5 4 3 726(pivot=5)

P1: 5 4 3 2 7 6(pivot=5)

P3: 3 4 5 7 2 6

P2: 4 3 5 7 2 6

P4: 3 4 5 7 2 6

P2: 2 4 3 5 76

(pivot=2) (pivot=7)

P2: 243 5 76

(pivot=2) (pivot=7)

P5: 2 3 4 5 7 6

P4: 3 4 5 2 7 6

P4: 3 2 4 5 7 6

P4: 3 4 2 5 7 6

P5: 2 3 4 5 6 7

The (Increasing) Sorting Problem

5 4 3 7 2 6

Insertion Sort

Quick Sort

P1: 4 5 3 7 2 6

P1: 5 4 3 7 2 6

P1: 5 4 3 7 2 6

P1: 5 4 3 7 2 6 (pivot=5)

P1: 5 4 3 7 26(pivot=5)

P1: 5 4 3 726(pivot=5)

P1: 5 4 3 2 7 6(pivot=5)

P1: 2 4 3 5 7 6 (pivot=5)

P2: 3 4 5 7 2 6

P2: 2 4 3 5 76

(pivot=2) (pivot=7)

P2: 2 4 3 5 6 7

P2: 2 4 3 5 7 6

(pivot=2)

P3: 3 4 5 7 2 6

P4: 2 3 4 5 7 6

P3: 2 34 5 6 7

P3: 2 43 5 6 7

P3: 2 43 5 6 7

(pivot=4)

P5: 2 3 4 5 6 7


Logic synthesis in ic design and associated tools review i

Which Algorithm to Use?

  • Empirical:

    Via simulation- after implementation (coding).

  • Theoretical:

    Determine the execution time dependent of instance sizes.


Logic synthesis in ic design and associated tools review i

Instances

  • Instance:

    Set of problem parameters with their allocated values .

    Ex. I1= 5, 4, 3, 7, 2, 6

    Ex. I2= 1, 2, 3, …, 10

  • Instance size:

    Number of bits needed to represent an instance.

    Number of components (parameters) in instance.

    Ex. N1= 6

    Ex. N2= 10.


Logic synthesis in ic design and associated tools review i

Efficiency Measurement- 1

  • Units:

    Seconds? Microseconds? How to compare results:

    - from different machines?

    - from different implementations (languages,

    programmer background, etc.)

  • Invariance principle:

    - Two different implementations for the same algorithm differ by only a multiplicative constant.

    - The same algorithm running in two different (conventional) machines differ by only a multiplicative constant.


Logic synthesis in ic design and associated tools review i

Efficiency Measurement- 2

  • Unit Independence:

    Results are given as “in order of t(n)”

    t(n) = n (linear)

    = n2 (quadratic)

    = nk (polynomial)

    = bn (exponential)

    Insertion sort in order of n2 (in average)

    Quick sort in order of n.log n (in average)

    50 elements: tqs tsi/2

    1000 elements : tqs= 0.2s ; tis= 3s

    100,000 elements: tqs= 30s ; tis= 9h30m



Logic synthesis in ic design and associated tools review i

Why should we care? - 2

Additional number of instances with respect to Ni original instances


Logic synthesis in ic design and associated tools review i

Worst-case polynomial time

  • Def. An algorithm is efficient if its running time is polynomial.

    Justification: It really works in practice!

    • Although 6.02  1023 N20 is technically poly-time, it would be useless in practice.

    • In practice, the poly-time algorithms that people develop almost always have low constants and low exponents.

  • Exceptions.

    • Some poly-time algorithms do have high constants and/or exponents, and are useless in practice.

    • Some exponential-time (or worse) algorithms are widely used because the worst-case instances seem to be rare.


Logic synthesis in ic design and associated tools review i

Complexity

  • The complexity of an algorithm associates a numberT(n),

  • the worst-case time the algorithm takes, witheach problem size n.

  • Mathematically,

    T: N+ → R+

  • that is T is a function that maps positive integers (giving

    problem sizes) to positive real numbers (giving number

    of steps).


Logic synthesis in ic design and associated tools review i

Asymptotic Order of Growth

  • Upper bounds. T(n)  O(f(n)).

    O(f(n)) = {T:NR*/ constants c > 0 and n0 0 such that for all n  n0 [T(n)  c · f(n)]}

  • Lower bounds. T(n) (f(n)) if  constants c > 0 and n0 0 such that for all n  n0we have T(n)  c · f(n).

  • Tight bounds. T(n) (f(n)) if T(n) is both O(f(n)) and (f(n)).

    Ex: T(n) = 32n2 + 17n + 32.

    • T(n)  O(n2), O(n3), (n2), (n), and (n2) .

    • T(n)  not O(n), (n3), (n), or (n3).


Logic synthesis in ic design and associated tools review i

Are you sure such an algorithm there exist??

Unfortunately, I can´t prove it!!

Fortunately, I can prove it!!

I will use the NP-complete theory!!

Answer 1: “I´ve just can´t find an efficient algorithm; I think I´m not

smart enough”

Answer 2: “I can´t find an efficient algorithm because such an

algorithm does not exist”

Answer 3: “I can´t find an efficient algorithm, but Knuth can´t either!

Problem Complexity

Problems

- are classified according to the algorithms used to solve them

- NP and P classes concept are defined

Suppose you are assigned to find a good algorithm for a problem

Answer 1: “I´ve just can´t find an efficient algorithm; I think I´m not

smart enough”

Answer 2: “I can´t find an efficient algorithm because such an

algorithm does not exist”

Answer 3: “I can´t find an efficient algorithm, but Knuth can´t either!


Logic synthesis in ic design and associated tools review i

P and NP Classes

  • P:is the class of all decision problems which can besolved inpolynomial time, O(nk)for some constant k.

  • NP: This is the set of all decision problems that can beverified in polynomial time

    NP stands for “Non-deterministic Algorithm in PolynomialTime

    P  NP (that means P problems are also NP problems !

  • NP-Complete: The set of the most difficult problems in NP

    NP-Complete problems are only solved by algorithms with exponential dependence in time (False)

    There is no knowledge on algorithms solving NP- Complete problems in polynomial time (True)


Logic synthesis in ic design and associated tools review i

Reduction

  • The class ofNP-completeproblems consists of a set of decision problems (a subset of theclass NP) that no one knows how to solve efficiently, but if there were a polynomial time solution for even asingle NP-complete problem, then every problem in NP would be solvable in polynomial time.

  • Reduction. Problem X polynomially reduces to problem Y if arbitrary instances of problem X can be solved using:

    • Polynomial number of standard computational steps, plus

    • Polynomial number of calls to oracle that solves problem Y.

  • Notation. X  P Y.

computational model supplemented by special pieceof hardware that solves instances of Y in a single step