SlideShare une entreprise Scribd logo
1  sur  31
VLSI Physical Design Automation
   Introduction , partitioning



                    Sushil kundu
                    Roll No:20084056
                    Registration No: 1954
                    Dept. of Applied Electronics
                    & Instrumentation Engg.,
                    University Institute of
                    Technology burdwan
Intended Audience

•  VLSI CAD (also known as EDA – electronic design
  automation) students, in particular for chip implementation
  (physical design)
• Circuit designers to understand how tools work behind
  the scene
• Process engineers to tune process that is more
  circuit/physical design friendly
• Mathematical/Computer Science majors who want to find
  tough problems to solve
  – Lots of VLSI physical design problems can be
      formulated into combinatorial optimization or
      mathematical programming problems.
  – Actually, most CAD problems are NP-complete ->
      heuristics
Objective of this Lecture
To review the materials used in fabrication of VLSI devices.
To review the structure of devices and process involved in
 fabricating different types of VLSI circuits.
To review the basic algorithm concepts.
 Understand the process of VLSI layout design.
 Study the basic algorithms used in layout design of VLSI
   circuits.
 Learn about the physical design automation techniques used
   in the best-known academic and commercial layout systems.
Physical Design
• Converts a circuit description into a geometric
description.
– This description is used for fabrication of the chip.
• Basic steps in the physical design cycle:
1. Partitioning
2. Floorplanning
3. placement
4. Routing
5. Compaction
So, what is Partitioning?


System Level Partitioning                 System

                                             PCBs

Board Level Partitioning

                                             Chips

 Chip Level Partitioning
                                          Subcircuits
                                           / Blocks

                                      6
Why partition ?
•  Ask Lord Curzon 
  – The most effective way to solve problems of high
      complexity : Parallel CAD Development
• System-level partitioning for multi-chip designs
  – Inter-chip interconnection delay dominates system
      performance
• IO Pin Limitation
• In deep-submicron designs, partitioning defines local
  and global interconnect, and has significant impact on
  circuit performance




                                                7
Importance of Circuit Partitioning
 Divide-and-conquer methodology
 The most effective way to solve problems of high complexity
E.g.: min-cut based placement, partitioning-based test
 generation,…
 System-level partitioning for multi-chip designs
   inter-chip interconnection delay dominates system
 performance.
 Circuit emulation/parallel simulation
  partition large circuit into multiple FPGAs (e.g. Quickturn), or
      multiple special-purpose processors (e.g. Zycad).
 Parallel CAD development
 Task decomposition and load balancing
 In deep-submicron designs, partitioning defines local and
 global interconnect, and has significant impact on circuit
 performance
…… ……
Objectives
•    Since each partition can correspond to a chip, interesting
    objectives are:
    – Minimum number of partitions
       • Subject to maximum size (area) of each partition
    – Minimum number of interconnections between partitions
       • Since they correspond to off-chip wiring with more
           delay and less reliability
       • Less pin count on ICs (larger IO pins, much higher
           packaging cost)
    – Balanced partitioning given bound for area of each
        partition




                                                  9
Partitioning:
 Partitioning is the task of dividing a circuit into smaller parts .
The objective is to partition the circuit into parts, so that the size
of each component is within prescribed ranges and the number of
connections between the components is minimized .
 Different ways to partition correspond to different circuit
implementations . Therefore, a good partitioning can significantly
improve circuit performance and reduce layout costs .
• Decomposition of a complex system into smaller subsystems
  – Done hierarchically
  – Partitioning done until each subsystem has manageable size
  – Each subsystem can be designed independently
• Interconnections between partitions minimized
  – Less hassle interfacing the subsystems
  – Communication between subsystems usually costly
Partitioning of a Circuit

Input size: 48




Cut 1=4          Cut 2=4
Size 1=15        Size 2=16   Size 3=17
Hierarcahical Partitioning
•    Levels of partitioning:
    – System-level partitioning:
       Each sub-system can be designed as a single PCB
    – Board-level partitioning:
       Circuit assigned to a PCB is partitioned into sub-circuits
       each fabricated as a VLSI chip
    – Chip-level partitioning:
       Circuit assigned to the chip is divided into manageable sub-
       circuits
       NOTE: physically not necessary
Delay at Different Levels of Partitions



        x
   A
             B
                                D

                 C
       10x


PCB1                                      PCB2
                     20x




                                     13
Partitioning: Formal Definition
•    Input:
    – Graph or hypergraph
    – Usually with vertex weights
    – Usually weighted edges
•    Constraints
    – Number of partitions (K-way partitioning)
    – Maximum capacity of each partition
        OR
        maximum allowable difference between partitions
•    Objective
    – Assign nodes to partitions subject to constraints
        s.t. the cutsize is minimized
•    Tractability
-    Is NP-complete 




                                                          14
Circuit Representation


• Netlist:                                   B
   – Gates: A, B, C, D
                                         A
   – Nets: {A,B,C}, {B,D}, {C,D}

                                             C       D
• Hypergraph:
   – Vertices: A, B, C, D
   – Hyperedges: {A,B,C}, {B,D}, {C,D}
                                                 B
   – Vertex label: Gate size/area
                                         A
   – Hyperedge label:
     Importance of net (weight)
                                             C       D
Circuit Partitioning: Formulation

  Bi-partitioning formulation:
      Minimize interconnections between partitions


                       c(X,X’)

               X                     X’


  •   Minimum cut:          min c(x, x’)
  •   minimum bisection: min c(x, x’) with |x|= |x’|
  •   minimum ratio-cut:    min c(x, x’) / |x||x’|



                                                     16
A Bi-Partitioning Example


             a                    c         100    e
                                      100    100
                             100                   100
                      9
   min-cut
             4

             b       10           d         100    f

                 mini-ratio-cut        min-bisection



       Min-cut size=13
       Min-Bisection size = 300
       Min-ratio-cut size= 19

Ratio-cut helps to identify natural clusters
                                                         17
Iterative Partitioning Algorithms


• Greedy iterative improvement method (Deterministic)
  – [Kernighan-Lin 1970]

• Simulated Annealing (Non-Deterministic)




                                                18
Restricted Partition Problem


• Restrictions:
   – For Bisectioning of circuit
   – Assume all gates are of the same size
   – Works only for 2-terminal nets

• If all nets are 2-terminal, hypergraph  graph
                      b                              b
         a                                   a


                  c       d                          c   d
          Hypergraph                Graph
          Representation            Representation
                                             19
Problem Formulation
• Input: A graph with
   – Set vertices V (|V| = 2n)
   – Set of edges E (|E| = m)
   – Cost cAB for each edge {A, B} in E
• Output: 2 partitions X & Y such that
   – Total cost of edge cuts is minimized
   – Each partition has n vertices
• This problem is NP-Complete!!!!!




                                            20
A Trivial Approach
•    Try all possible bisections and find the best one
•    If there are 2n vertices,
    # of possibilities = (2n)! / n!2 = nO(n)

•  For 4 vertices (a,b,c,d), 3 possibilities
  1. X={a,b} & Y={c,d}
  2. X={a,c} & Y={b,d}
  3. X={a,d} & Y={b,c}
• For 100 vertices, 5x1028 possibilities
•        Need 1.59x1013 years if one can try 100M
       possbilities per second




                                                         21
Definitions
• Definition 1: Consider any node a in block X. The
  contribution of node a to the cutset is called the external cost
  of a and is denoted as Ea, where
  Ea =Σcav (for all v in Y)
• Definition 2: The internal cost Ia of node a in X is defined
  as follows:
            Ia =Σcav (for all v in X)
Example

• External cost (connection) Ea = 2
• Internal cost Ia = 1




                       X         b
                                      Y
                   c
                           a          d
Idea of KL Algorithm

• Da = Decrease in cut value if moving a = Ea-Ia
  – Moving node a from block X to block Y would decrease the
    value of the cutset by Ea and increase it by Ia


        X        b
                      Y                  X        b
                                                       Y
                                         c
    c
            a         d                           a    d

                          Da = 2-1 = 1
                          Db = 1-1 = 0
Idea of KL Algorithm
•    Note that we want to balance two partitions
•    If switch A & B, gain(A,B) = DA+DB-2cAB
    – cAB : edge cost for AB



         X        B
                        Y                  X       B       Y
     C                                    C
                        D
             A                                         A   D
                      gain(A,B) = 1+0-2 = -1
Idea of KL Algorithm

•  Start with any initial legal partitions X and Y
•  A pass (exchanging each vertex exactly once) is described
  below:
  1. For i := 1 to n do
      From the unlocked (unexchanged) vertices,
       choose a pair (A,B) s.t. gain(A,B) is largest
      Exchange A and B. Lock A and B.
      Let gi = gain(A,B)
  2. Find the k s.t. G=g1+...+gk is maximized
  3. Switch the first k pairs
•     Repeat the pass until there is no
         improvement (G=0)
Example

        X            Y                               X   Y
    1                    4                     4             1
                                                     2   5
    2                    5

    3                    6                     3             6

Original Cut Value = 9                   Optimal Cut Value = 5


            A good step-by-step example in SY book
Time Complexity of KL

•  For each pass,
  – O(n2) time to find the best pair to exchange.
  – n pairs exchanged.
  – Total time is O(n3) per pass.
• Better implementation can get O(n2log n) time per pass.

•   Number of passes is usually small.
Recap of Kernighan-Lin’s Algorithm
 Pair-wise exchange of nodes to reduce cut size
 Allow cut size to increase temporarily within a
pass
 Compute the gain of a swap
 Repeat Perform a feasible swap of max gain
  Mark swapped nodes “locked”;                    u            v a
  Update swap gains;
Until no feasible swap;                          v             u
Find max prefix partial sum in gain sequence g1,
                                                      locked
g2, …, gm
Make corresponding swaps permanent.

 Start another pass if current pass reduces the
cut size
 (usually converge after a few passes)
Other Partitioning Methods
• KL and FM have each held up very well
• Min-cut / max-flow algorithms
   – Ford-Fulkerson – for unconstrained
     partitions
• Ratio cut
• Genetic algorithm
• Simulated annealing
References and Copyright
 Textbooks referred (none required)
    [Mic94] G. De Micheli
     “Synthesis and Optimization of Digital Circuits”
     McGraw-Hill, 1994.
    [CLR90] T. H. Cormen, C. E. Leiserson, R. L. Rivest
     “Introduction to Algorithms”
     MIT Press, 1990.
    [Sar96] M. Sarrafzadeh, C. K. Wong
     “An Introduction to VLSI Physical Design”
     McGraw-Hill, 1996.
    [She99] N. Sherwani
     “Algorithms For VLSI Physical Design Automation”
     Kluwer Academic Publishers, 3rd edition, 1999.
THANK YOU

Contenu connexe

Tendances

2019 3 testing and verification of vlsi design_sta
2019 3 testing and verification of vlsi design_sta2019 3 testing and verification of vlsi design_sta
2019 3 testing and verification of vlsi design_staUsha Mehta
 
ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)Sudhanshu Janwadkar
 
Physical Verification Design.pdf
Physical Verification Design.pdfPhysical Verification Design.pdf
Physical Verification Design.pdfAhmed Abdelazeem
 
Placement in VLSI Design
Placement in VLSI DesignPlacement in VLSI Design
Placement in VLSI DesignTeam-VLSI-ITMU
 
VLSI-Physical Design- Tool Terminalogy
VLSI-Physical Design- Tool TerminalogyVLSI-Physical Design- Tool Terminalogy
VLSI-Physical Design- Tool TerminalogyMurali Rai
 
Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)shaik sharief
 
Design challenges in physical design
Design challenges in physical designDesign challenges in physical design
Design challenges in physical designDeiptii Das
 
Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Olivier Coudert
 
Basic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSIBasic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSISurya Raj
 
Dft (design for testability)
Dft (design for testability)Dft (design for testability)
Dft (design for testability)shaik sharief
 
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation SystemSynopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation SystemMostafa Khamis
 
ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI Jayant Suthar
 
Study of inter and intra chip variations
Study of inter and intra chip variationsStudy of inter and intra chip variations
Study of inter and intra chip variationsRajesh M
 

Tendances (20)

2019 3 testing and verification of vlsi design_sta
2019 3 testing and verification of vlsi design_sta2019 3 testing and verification of vlsi design_sta
2019 3 testing and verification of vlsi design_sta
 
Clock Tree Synthesis.pdf
Clock Tree Synthesis.pdfClock Tree Synthesis.pdf
Clock Tree Synthesis.pdf
 
ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)
 
Physical Verification Design.pdf
Physical Verification Design.pdfPhysical Verification Design.pdf
Physical Verification Design.pdf
 
Placement in VLSI Design
Placement in VLSI DesignPlacement in VLSI Design
Placement in VLSI Design
 
VLSI-Physical Design- Tool Terminalogy
VLSI-Physical Design- Tool TerminalogyVLSI-Physical Design- Tool Terminalogy
VLSI-Physical Design- Tool Terminalogy
 
Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)
 
ASIC DESIGN FLOW
ASIC DESIGN FLOWASIC DESIGN FLOW
ASIC DESIGN FLOW
 
Powerplanning
PowerplanningPowerplanning
Powerplanning
 
Design challenges in physical design
Design challenges in physical designDesign challenges in physical design
Design challenges in physical design
 
STA.pdf
STA.pdfSTA.pdf
STA.pdf
 
CAD: Floorplanning
CAD: Floorplanning CAD: Floorplanning
CAD: Floorplanning
 
Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows
 
VLSI routing
VLSI routingVLSI routing
VLSI routing
 
Basic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSIBasic synthesis flow and commands in digital VLSI
Basic synthesis flow and commands in digital VLSI
 
Dft (design for testability)
Dft (design for testability)Dft (design for testability)
Dft (design for testability)
 
Scan insertion
Scan insertionScan insertion
Scan insertion
 
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation SystemSynopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
 
ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI
 
Study of inter and intra chip variations
Study of inter and intra chip variationsStudy of inter and intra chip variations
Study of inter and intra chip variations
 

En vedette

Partition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automationPartition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automationAnil Kumar Sahu
 
Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notesDr.YNM
 
APIs and Beyond: Open Distribution Platforms
APIs and Beyond: Open Distribution PlatformsAPIs and Beyond: Open Distribution Platforms
APIs and Beyond: Open Distribution PlatformsAPIMeetup
 
Research Facilities and Student Profile VLSI IITH
Research Facilities and Student Profile VLSI IITHResearch Facilities and Student Profile VLSI IITH
Research Facilities and Student Profile VLSI IITHPlacement.IITH Micro.VLSI
 
Vlsi Education In India
Vlsi Education In IndiaVlsi Education In India
Vlsi Education In Indiappd1961
 
VLSI circuit design process
VLSI circuit design processVLSI circuit design process
VLSI circuit design processVishal kakade
 
Vlsi physical design
Vlsi physical designVlsi physical design
Vlsi physical designI World Tech
 
CAD: introduction to floorplanning
CAD:  introduction to floorplanningCAD:  introduction to floorplanning
CAD: introduction to floorplanningTeam-VLSI-ITMU
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical designMurali Rai
 
Introduction to VLSI
Introduction to VLSI Introduction to VLSI
Introduction to VLSI illpa
 
FLOORPLANNING USING DE
FLOORPLANNING USING DEFLOORPLANNING USING DE
FLOORPLANNING USING DEshefalig93
 

En vedette (17)

Partition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automationPartition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automation
 
Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notes
 
APIs and Beyond: Open Distribution Platforms
APIs and Beyond: Open Distribution PlatformsAPIs and Beyond: Open Distribution Platforms
APIs and Beyond: Open Distribution Platforms
 
Lec4 jwfiles
Lec4 jwfilesLec4 jwfiles
Lec4 jwfiles
 
Multi chip module
Multi chip moduleMulti chip module
Multi chip module
 
Research Facilities and Student Profile VLSI IITH
Research Facilities and Student Profile VLSI IITHResearch Facilities and Student Profile VLSI IITH
Research Facilities and Student Profile VLSI IITH
 
Vlsi Education In India
Vlsi Education In IndiaVlsi Education In India
Vlsi Education In India
 
DPCM
DPCMDPCM
DPCM
 
VLSI circuit design process
VLSI circuit design processVLSI circuit design process
VLSI circuit design process
 
Vlsi physical design
Vlsi physical designVlsi physical design
Vlsi physical design
 
CAD: introduction to floorplanning
CAD:  introduction to floorplanningCAD:  introduction to floorplanning
CAD: introduction to floorplanning
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical design
 
THE CMOS VLSI DESIGN
THE CMOS VLSI DESIGNTHE CMOS VLSI DESIGN
THE CMOS VLSI DESIGN
 
Mobile IP
Mobile IPMobile IP
Mobile IP
 
Introduction to VLSI
Introduction to VLSI Introduction to VLSI
Introduction to VLSI
 
FLOORPLANNING USING DE
FLOORPLANNING USING DEFLOORPLANNING USING DE
FLOORPLANNING USING DE
 
Slideshare ppt
Slideshare pptSlideshare ppt
Slideshare ppt
 

Similaire à Vlsi physical design automation on partitioning

Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Hemant Jha
 
Network Deconvolution review [cdm]
Network Deconvolution review [cdm]Network Deconvolution review [cdm]
Network Deconvolution review [cdm]Dongmin Choi
 
Double Patterning (4/2 update)
Double Patterning (4/2 update)Double Patterning (4/2 update)
Double Patterning (4/2 update)Danny Luk
 
Oxford 05-oct-2012
Oxford 05-oct-2012Oxford 05-oct-2012
Oxford 05-oct-2012Ted Dunning
 
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...Joonhyung Lee
 
Sorting and Routing on Hypercubes and Hypercubic Architectures
Sorting and Routing on Hypercubes and Hypercubic ArchitecturesSorting and Routing on Hypercubes and Hypercubic Architectures
Sorting and Routing on Hypercubes and Hypercubic ArchitecturesCTOGreenITHub
 
MobileNet - PR044
MobileNet - PR044MobileNet - PR044
MobileNet - PR044Jinwon Lee
 
PR243: Designing Network Design Spaces
PR243: Designing Network Design SpacesPR243: Designing Network Design Spaces
PR243: Designing Network Design SpacesJinwon Lee
 
Clustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesClustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesData-Centric_Alliance
 
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...Alex Pruden
 
IOEfficientParalleMatrixMultiplication_present
IOEfficientParalleMatrixMultiplication_presentIOEfficientParalleMatrixMultiplication_present
IOEfficientParalleMatrixMultiplication_presentShubham Joshi
 
super vector machines algorithms using deep
super vector machines algorithms using deepsuper vector machines algorithms using deep
super vector machines algorithms using deepKNaveenKumarECE
 
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...Rahul Jain
 

Similaire à Vlsi physical design automation on partitioning (20)

Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
 
Floor planning ppt
Floor planning pptFloor planning ppt
Floor planning ppt
 
09 placement
09 placement09 placement
09 placement
 
Vlsi
VlsiVlsi
Vlsi
 
Network Deconvolution review [cdm]
Network Deconvolution review [cdm]Network Deconvolution review [cdm]
Network Deconvolution review [cdm]
 
Double Patterning (4/2 update)
Double Patterning (4/2 update)Double Patterning (4/2 update)
Double Patterning (4/2 update)
 
Oxford 05-oct-2012
Oxford 05-oct-2012Oxford 05-oct-2012
Oxford 05-oct-2012
 
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...
DeepLab V3+: Encoder-Decoder with Atrous Separable Convolution for Semantic I...
 
Sorting and Routing on Hypercubes and Hypercubic Architectures
Sorting and Routing on Hypercubes and Hypercubic ArchitecturesSorting and Routing on Hypercubes and Hypercubic Architectures
Sorting and Routing on Hypercubes and Hypercubic Architectures
 
Vlsi giet
Vlsi gietVlsi giet
Vlsi giet
 
MobileNet - PR044
MobileNet - PR044MobileNet - PR044
MobileNet - PR044
 
Unit iii ppt1
Unit iii ppt1Unit iii ppt1
Unit iii ppt1
 
PR243: Designing Network Design Spaces
PR243: Designing Network Design SpacesPR243: Designing Network Design Spaces
PR243: Designing Network Design Spaces
 
26_Fan.pdf
26_Fan.pdf26_Fan.pdf
26_Fan.pdf
 
Clustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesClustering of graphs and search of assemblages
Clustering of graphs and search of assemblages
 
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
 
IOEfficientParalleMatrixMultiplication_present
IOEfficientParalleMatrixMultiplication_presentIOEfficientParalleMatrixMultiplication_present
IOEfficientParalleMatrixMultiplication_present
 
super vector machines algorithms using deep
super vector machines algorithms using deepsuper vector machines algorithms using deep
super vector machines algorithms using deep
 
Grid 2.pptx
Grid 2.pptxGrid 2.pptx
Grid 2.pptx
 
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...
Memory Architecture Exploration for Power-Efficient 2D-Discrete Wavelet Trans...
 

Plus de Sushil Kundu

Synergy_Summit-Brochure
Synergy_Summit-BrochureSynergy_Summit-Brochure
Synergy_Summit-BrochureSushil Kundu
 
global_energy_summit_brochure
global_energy_summit_brochureglobal_energy_summit_brochure
global_energy_summit_brochureSushil Kundu
 
letter_head_john's_1
letter_head_john's_1letter_head_john's_1
letter_head_john's_1Sushil Kundu
 
Synergy Summit Poster_4
Synergy Summit Poster_4Synergy Summit Poster_4
Synergy Summit Poster_4Sushil Kundu
 
Synergy_Summit-Poster
Synergy_Summit-PosterSynergy_Summit-Poster
Synergy_Summit-PosterSushil Kundu
 
letter_head_john's_1
letter_head_john's_1letter_head_john's_1
letter_head_john's_1Sushil Kundu
 
brochure_john's_salon
brochure_john's_salonbrochure_john's_salon
brochure_john's_salonSushil Kundu
 
My presentation for Banaras tours
My presentation for Banaras toursMy presentation for Banaras tours
My presentation for Banaras toursSushil Kundu
 
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...Seminar on “4G Technology” held at University Institute of Technology, Burdwa...
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...Sushil Kundu
 
Mini cement plant using plc published in national conference on materials, de...
Mini cement plant using plc published in national conference on materials, de...Mini cement plant using plc published in national conference on materials, de...
Mini cement plant using plc published in national conference on materials, de...Sushil Kundu
 

Plus de Sushil Kundu (15)

Sushil_Exp_CV_new
Sushil_Exp_CV_newSushil_Exp_CV_new
Sushil_Exp_CV_new
 
Synergy_Summit-Brochure
Synergy_Summit-BrochureSynergy_Summit-Brochure
Synergy_Summit-Brochure
 
global_energy_summit_brochure
global_energy_summit_brochureglobal_energy_summit_brochure
global_energy_summit_brochure
 
letter_head_john's_1
letter_head_john's_1letter_head_john's_1
letter_head_john's_1
 
jhon's)_1
jhon's)_1jhon's)_1
jhon's)_1
 
zenta-denta2
zenta-denta2zenta-denta2
zenta-denta2
 
Synergy Summit Poster_4
Synergy Summit Poster_4Synergy Summit Poster_4
Synergy Summit Poster_4
 
Synergy_Summit-Poster
Synergy_Summit-PosterSynergy_Summit-Poster
Synergy_Summit-Poster
 
letter_head_john's_1
letter_head_john's_1letter_head_john's_1
letter_head_john's_1
 
brochure_john's_salon
brochure_john's_salonbrochure_john's_salon
brochure_john's_salon
 
zenta_denta
zenta_dentazenta_denta
zenta_denta
 
Sushil cv
Sushil cvSushil cv
Sushil cv
 
My presentation for Banaras tours
My presentation for Banaras toursMy presentation for Banaras tours
My presentation for Banaras tours
 
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...Seminar on “4G Technology” held at University Institute of Technology, Burdwa...
Seminar on “4G Technology” held at University Institute of Technology, Burdwa...
 
Mini cement plant using plc published in national conference on materials, de...
Mini cement plant using plc published in national conference on materials, de...Mini cement plant using plc published in national conference on materials, de...
Mini cement plant using plc published in national conference on materials, de...
 

Dernier

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxAmita Gupta
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 

Dernier (20)

Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 

Vlsi physical design automation on partitioning

  • 1. VLSI Physical Design Automation Introduction , partitioning Sushil kundu Roll No:20084056 Registration No: 1954 Dept. of Applied Electronics & Instrumentation Engg., University Institute of Technology burdwan
  • 2. Intended Audience • VLSI CAD (also known as EDA – electronic design automation) students, in particular for chip implementation (physical design) • Circuit designers to understand how tools work behind the scene • Process engineers to tune process that is more circuit/physical design friendly • Mathematical/Computer Science majors who want to find tough problems to solve – Lots of VLSI physical design problems can be formulated into combinatorial optimization or mathematical programming problems. – Actually, most CAD problems are NP-complete -> heuristics
  • 3. Objective of this Lecture To review the materials used in fabrication of VLSI devices. To review the structure of devices and process involved in fabricating different types of VLSI circuits. To review the basic algorithm concepts.  Understand the process of VLSI layout design.  Study the basic algorithms used in layout design of VLSI circuits.  Learn about the physical design automation techniques used in the best-known academic and commercial layout systems.
  • 4. Physical Design • Converts a circuit description into a geometric description. – This description is used for fabrication of the chip. • Basic steps in the physical design cycle: 1. Partitioning 2. Floorplanning 3. placement 4. Routing 5. Compaction
  • 5. So, what is Partitioning? System Level Partitioning System PCBs Board Level Partitioning Chips Chip Level Partitioning Subcircuits / Blocks 6
  • 6. Why partition ? • Ask Lord Curzon  – The most effective way to solve problems of high complexity : Parallel CAD Development • System-level partitioning for multi-chip designs – Inter-chip interconnection delay dominates system performance • IO Pin Limitation • In deep-submicron designs, partitioning defines local and global interconnect, and has significant impact on circuit performance 7
  • 7. Importance of Circuit Partitioning  Divide-and-conquer methodology  The most effective way to solve problems of high complexity E.g.: min-cut based placement, partitioning-based test generation,…  System-level partitioning for multi-chip designs inter-chip interconnection delay dominates system performance.  Circuit emulation/parallel simulation partition large circuit into multiple FPGAs (e.g. Quickturn), or multiple special-purpose processors (e.g. Zycad).  Parallel CAD development Task decomposition and load balancing  In deep-submicron designs, partitioning defines local and global interconnect, and has significant impact on circuit performance …… ……
  • 8. Objectives • Since each partition can correspond to a chip, interesting objectives are: – Minimum number of partitions • Subject to maximum size (area) of each partition – Minimum number of interconnections between partitions • Since they correspond to off-chip wiring with more delay and less reliability • Less pin count on ICs (larger IO pins, much higher packaging cost) – Balanced partitioning given bound for area of each partition 9
  • 9. Partitioning:  Partitioning is the task of dividing a circuit into smaller parts . The objective is to partition the circuit into parts, so that the size of each component is within prescribed ranges and the number of connections between the components is minimized .  Different ways to partition correspond to different circuit implementations . Therefore, a good partitioning can significantly improve circuit performance and reduce layout costs . • Decomposition of a complex system into smaller subsystems – Done hierarchically – Partitioning done until each subsystem has manageable size – Each subsystem can be designed independently • Interconnections between partitions minimized – Less hassle interfacing the subsystems – Communication between subsystems usually costly
  • 10. Partitioning of a Circuit Input size: 48 Cut 1=4 Cut 2=4 Size 1=15 Size 2=16 Size 3=17
  • 11. Hierarcahical Partitioning • Levels of partitioning: – System-level partitioning: Each sub-system can be designed as a single PCB – Board-level partitioning: Circuit assigned to a PCB is partitioned into sub-circuits each fabricated as a VLSI chip – Chip-level partitioning: Circuit assigned to the chip is divided into manageable sub- circuits NOTE: physically not necessary
  • 12. Delay at Different Levels of Partitions x A B D C 10x PCB1 PCB2 20x 13
  • 13. Partitioning: Formal Definition • Input: – Graph or hypergraph – Usually with vertex weights – Usually weighted edges • Constraints – Number of partitions (K-way partitioning) – Maximum capacity of each partition OR maximum allowable difference between partitions • Objective – Assign nodes to partitions subject to constraints s.t. the cutsize is minimized • Tractability - Is NP-complete  14
  • 14. Circuit Representation • Netlist: B – Gates: A, B, C, D A – Nets: {A,B,C}, {B,D}, {C,D} C D • Hypergraph: – Vertices: A, B, C, D – Hyperedges: {A,B,C}, {B,D}, {C,D} B – Vertex label: Gate size/area A – Hyperedge label: Importance of net (weight) C D
  • 15. Circuit Partitioning: Formulation Bi-partitioning formulation: Minimize interconnections between partitions c(X,X’) X X’ • Minimum cut: min c(x, x’) • minimum bisection: min c(x, x’) with |x|= |x’| • minimum ratio-cut: min c(x, x’) / |x||x’| 16
  • 16. A Bi-Partitioning Example a c 100 e 100 100 100 100 9 min-cut 4 b 10 d 100 f mini-ratio-cut min-bisection Min-cut size=13 Min-Bisection size = 300 Min-ratio-cut size= 19 Ratio-cut helps to identify natural clusters 17
  • 17. Iterative Partitioning Algorithms • Greedy iterative improvement method (Deterministic) – [Kernighan-Lin 1970] • Simulated Annealing (Non-Deterministic) 18
  • 18. Restricted Partition Problem • Restrictions: – For Bisectioning of circuit – Assume all gates are of the same size – Works only for 2-terminal nets • If all nets are 2-terminal, hypergraph  graph b b a a c d c d Hypergraph Graph Representation Representation 19
  • 19. Problem Formulation • Input: A graph with – Set vertices V (|V| = 2n) – Set of edges E (|E| = m) – Cost cAB for each edge {A, B} in E • Output: 2 partitions X & Y such that – Total cost of edge cuts is minimized – Each partition has n vertices • This problem is NP-Complete!!!!! 20
  • 20. A Trivial Approach • Try all possible bisections and find the best one • If there are 2n vertices, # of possibilities = (2n)! / n!2 = nO(n) • For 4 vertices (a,b,c,d), 3 possibilities 1. X={a,b} & Y={c,d} 2. X={a,c} & Y={b,d} 3. X={a,d} & Y={b,c} • For 100 vertices, 5x1028 possibilities • Need 1.59x1013 years if one can try 100M possbilities per second 21
  • 21. Definitions • Definition 1: Consider any node a in block X. The contribution of node a to the cutset is called the external cost of a and is denoted as Ea, where Ea =Σcav (for all v in Y) • Definition 2: The internal cost Ia of node a in X is defined as follows: Ia =Σcav (for all v in X)
  • 22. Example • External cost (connection) Ea = 2 • Internal cost Ia = 1 X b Y c a d
  • 23. Idea of KL Algorithm • Da = Decrease in cut value if moving a = Ea-Ia – Moving node a from block X to block Y would decrease the value of the cutset by Ea and increase it by Ia X b Y X b Y c c a d a d Da = 2-1 = 1 Db = 1-1 = 0
  • 24. Idea of KL Algorithm • Note that we want to balance two partitions • If switch A & B, gain(A,B) = DA+DB-2cAB – cAB : edge cost for AB X B Y X B Y C C D A A D gain(A,B) = 1+0-2 = -1
  • 25. Idea of KL Algorithm • Start with any initial legal partitions X and Y • A pass (exchanging each vertex exactly once) is described below: 1. For i := 1 to n do From the unlocked (unexchanged) vertices, choose a pair (A,B) s.t. gain(A,B) is largest Exchange A and B. Lock A and B. Let gi = gain(A,B) 2. Find the k s.t. G=g1+...+gk is maximized 3. Switch the first k pairs • Repeat the pass until there is no improvement (G=0)
  • 26. Example X Y X Y 1 4 4 1 2 5 2 5 3 6 3 6 Original Cut Value = 9 Optimal Cut Value = 5 A good step-by-step example in SY book
  • 27. Time Complexity of KL • For each pass, – O(n2) time to find the best pair to exchange. – n pairs exchanged. – Total time is O(n3) per pass. • Better implementation can get O(n2log n) time per pass. • Number of passes is usually small.
  • 28. Recap of Kernighan-Lin’s Algorithm  Pair-wise exchange of nodes to reduce cut size  Allow cut size to increase temporarily within a pass Compute the gain of a swap Repeat Perform a feasible swap of max gain Mark swapped nodes “locked”; u v a Update swap gains; Until no feasible swap; v u Find max prefix partial sum in gain sequence g1, locked g2, …, gm Make corresponding swaps permanent.  Start another pass if current pass reduces the cut size (usually converge after a few passes)
  • 29. Other Partitioning Methods • KL and FM have each held up very well • Min-cut / max-flow algorithms – Ford-Fulkerson – for unconstrained partitions • Ratio cut • Genetic algorithm • Simulated annealing
  • 30. References and Copyright  Textbooks referred (none required)  [Mic94] G. De Micheli “Synthesis and Optimization of Digital Circuits” McGraw-Hill, 1994.  [CLR90] T. H. Cormen, C. E. Leiserson, R. L. Rivest “Introduction to Algorithms” MIT Press, 1990.  [Sar96] M. Sarrafzadeh, C. K. Wong “An Introduction to VLSI Physical Design” McGraw-Hill, 1996.  [She99] N. Sherwani “Algorithms For VLSI Physical Design Automation” Kluwer Academic Publishers, 3rd edition, 1999.

Notes de l'éditeur

  1. Maximum difference between partition sizes is usually specified as a percentage. For example, if 5% is the maximum allowable imbalance, then a partition cannot have more than 55% of the vertices (or sum of vertex weights) in a 2-way partitioning solutionWhat does cutsize mean?It refers to the number (sum of weights) of the edges that are “cut”, i.e., connect two vertices from two different partitions