SlideShare a Scribd company logo
System partitioning & its considerations

                  Subash John
                  CGB0911005
                     VSD 531
     M.Sc. [Engg.] in VLSI System Design


    Module Title: IC planning & implementation
      Module Leader: Mr. Chandramohan P.




             M. S. Ramaiah School of Advanced Studies   1
Contents


• Introduction

• Physical design flow

• Need for partitioning

• Rules of partitioning

• Methods of partitioning

• Tool based partitioning

• Conclusion

• References




                          M. S. Ramaiah School of Advanced Studies   2
Introduction


•   Decomposition of a complex system into smaller subsystems

•   Each subsystem can be designed independently speeding up the design process

•   Decomposition scheme has to minimize the interconnections between the
    subsystems

•   Decomposition is carried out hierarchically until each subsystem is of
    manageable size

•   This is done mainly to separate different functional blocks and also to make
    placement and routing easier




                                    Figure 1. Bad partitioning results in more delay [2]
                          M. S. Ramaiah School of Advanced Studies                         3
Components of partitioning


•   Inputs
     – A set of components or modules

     – A netlist: In the form of weighted graph or hyper graph: nodes representing modules;
        edge or hyper edge representing a net

•   Outputs
     – A set of sub circuits that when connected, function as the original circuit

     – Terminals required for each sub circuit to be connected to other sub circuits




                             Figure 2. (a) Network (b) Graph [2]
                              M. S. Ramaiah School of Advanced Studies                        4
Physical design flow

                                                               Partitioning



                                                              Floor Planning



                                                              Power planning



                                                                Placement



                                                                  CTS



                                                                 Routing
Figure 3. Physical flow [2]
                   M. S. Ramaiah School of Advanced Studies                    5
Need for partitioning


•   Dividing a net list into clusters to minimize # of inter-cluster connections

•   Becomes more critical with VDSM

•   Influences the final quality of placement, global routing & detail routing

•   System size increases
     – Need to minimize design coupling

•   Interconnect dominates chip performance
     – Have to minimize number of block-to-block connections (e.g. global buses)

•   Helps reduce chip area
     – Minimizes length of global wires




                             M. S. Ramaiah School of Advanced Studies              6
Partitioning at different levels

                       Partitioning




System
                       Board level                          Chip level
 level




          Figure 4. Levels of partitioning [3]
                 M. S. Ramaiah School of Advanced Studies                7
5 Golden rules of partitioning

•   Interconnections between partitions
     – Reducing interconnections reduces the delay & interface between the partitions
        making it easier for independent design and fabrication

•   Delay due to partitioning

     – Partitioning of a circuit might cause a critical path to go in between partitions a
        number of times

•   Number of terminals

     – Number of nets required to connect a sub circuit to other sub circuits does not
        exceed the terminal count of the sub circuit.

•   Number of partitions

     – Large number of partitions may ease the design of individual partitions but they
        may also increase the cost of fabrication and the number of interconnections
        between the partitions

•   Area of each partition

                                 M. S. Ramaiah School of Advanced Studies                    8
Methods of partitioning


•   Constructive or iterative
     – Constructive algorithms determine a partitioning from the graph describing the
        circuit or system, whereas iterative methods aim at improving the quality of an
        existing partitioning solution



•   Deterministic or probabilistic
     – Deterministic programs generate the same solution each time they are started.
        Probabilistic methods result in differing solutions because they are based on
        random numbers




                                M. S. Ramaiah School of Advanced Studies                  9
Partitioning example I



      Input size: 48




Cut 1=4      Cut 2=4
Size 1=15    Size 2=16         Size 3=17




                           Figure 5. Partitioning example [2]
                           M. S. Ramaiah School of Advanced Studies   10
Partitioning example II


                                                                       A constructed
                                                                   partition using logic
  A partitioning                                                   cell C as a seed. It is
with five external                                                      difficult to
connections (nets                                                   get from this local
                                                                      minimum, with
  2, 4, 5, 6, and
                                                                      seven external
8)—the minimum                                                     connections (2, 3, 5,
     number.                                                            7, 9,11,12),




                       Figure 6. Partitioning example [2]
                        M. S. Ramaiah School of Advanced Studies                             11
Partitioning example III

                                                  7
7




6                                                 6




5                                                 4




       Figure 7. Partitioning example [2]
       M. S. Ramaiah School of Advanced Studies       12
Tool based partitioning

•   create_partition - Creates and manipulates partitions in a design through
    command-line specification, auto partitioning or manual GUI-based changes

                create_partition
                [-input_files files]
                [-reset overrides | partition | keepouts | all]
                [-auto_partition instance_count | area]
                [-area sub_block_area]
                [-internal_keepout keepout]
                [-external_keepout keepout]
                [-utilization block_utilization]
                [-aspect_ratio float]
                [-output_dir dir_name]
                [-create verilog_files | design | top_level_floorplan]
                [-verbose]
                [module_name_list]

      create_partition -input_files {myDesign.v} -utilization 0.85 –reset all
                 –aspect_ratio .7 -auto_partition instance_count

                            M. S. Ramaiah School of Advanced Studies            13
Tool based partitioning

•   optimize_netlist_hierarchy - Modifies the net-list tree structure in order to
    create physically partition-able hierarchy nodes in the top level such that the
    size of the nodes are well-balanced while minimizing the number of top level
    nets that need to connect to hierarchy block interface.

                optimize_netlist_hierarcy
                -netlist_files filelist
                -top topName
                [-opaque_modules modulelist]
                [-filename filename]
                [-max_partition_to_chip_ratio sizeRatio]
                [-keep_top_hier modulelist]
                [-hier_marker symbol]
                [-max_hier_mod_depth level]
                [-max_num_nodes count]

           optimize_netlist_hierarchy -netlist_files input.v -top MYTOP -
     max_partition_to_chip_ratio 0.3 -keep_top_hier {PDB08DGZ PDIANA2PC
          PDIDGZ} - max_num_nodes 500 -hier_marker / -output nlout


                            M. S. Ramaiah School of Advanced Studies                  14
Benefits of tool based partitioning


•   Identifies an optimal partitioning scheme
    for a given design, such that the blocks
    can be implemented independently

•   Ensures that the size of the partitions are
    balanced by either area or instance count

•   Minimizes the number of top-level nets
    connecting to one of more block I/O
    ports

•   Partitions the netlist without changing the
    functionality.




                               M. S. Ramaiah School of Advanced Studies   15
Summary


•   Partitioning divides a large circuit into a group of smaller sub circuits

•   These sub circuits can be designed independently and simultaneously to speed
    up the design process

•   In the tool based flow, constraints can be given to generate an efficient
    partitioned netlist




                             M. S. Ramaiah School of Advanced Studies              16
References


1. Arnab Sarkar (2008), ‘VLSI Physical Design Automation’ available from
    <http://conf05.iitkgp.ac.in/avlsi/logf/summercourse/2008/Physical_Design_A
    rnab.pdf> Retrieved on 01st Apr 2012

2. Michael John & Sebastian Smith (1997), ‘Application Specific Integrated
    Circuit’. Massachusetts: Addison-Wesley Publishing Company

3. Naveed Sherwani (1999) ‘Algorithms for Physical Design Automation’.
    Dordrecht: Kluwer Academic Publishers

4. Newton, Keutzer & Orshansky (2000) Partitioning of Physical Design,
    University of California, Berkeley, CA

5. Synopsys Inc. (2009), ‘IC Compiler Design Planning User Guide’.




                           M. S. Ramaiah School of Advanced Studies              17
Thank You




M. S. Ramaiah School of Advanced Studies   18
Remarks



Sl. No.              Topic                    Max. marks            Marks
                                                                   obtained
  1            Quality of slides                     5
  2            Clarity of subject                    5
  3              Presentation                        5
  4       Effort and question handling               5
                Total                               20




                        M. S. Ramaiah School of Advanced Studies              19
Ad

More Related Content

What's hot (20)

Floor plan & Power Plan
Floor plan & Power Plan Floor plan & Power Plan
Floor plan & Power Plan
Prathyusha Madapalli
 
Design challenges in physical design
Design challenges in physical designDesign challenges in physical design
Design challenges in physical design
Deiptii Das
 
Logic Synthesis
Logic SynthesisLogic Synthesis
Logic Synthesis
VandanaPagar1
 
SoC Design
SoC DesignSoC Design
SoC Design
VinChip Systems - VinTrain VLSI Academy
 
floor planning
floor planningfloor planning
floor planning
Team-VLSI-ITMU
 
Power dissipation cmos
Power dissipation cmosPower dissipation cmos
Power dissipation cmos
Rajesh Tiwary
 
Powerplanning
PowerplanningPowerplanning
Powerplanning
VLSI SYSTEM Design
 
Kernighan lin
Kernighan linKernighan lin
Kernighan lin
Tanvi Prabhu Dessai
 
Interconnect timing model
Interconnect  timing modelInterconnect  timing model
Interconnect timing model
Prachi Pandey
 
Vlsi stick daigram (JCE)
Vlsi stick daigram (JCE)Vlsi stick daigram (JCE)
Vlsi stick daigram (JCE)
Hrishikesh Kamat
 
Introduction to VLSI
Introduction to VLSI Introduction to VLSI
Introduction to VLSI
illpa
 
Physical design
Physical design Physical design
Physical design
Mantra VLSI
 
Asic design
Asic designAsic design
Asic design
Aksum Institute of Technology(AIT, @Letsgo)
 
Vlsi design flow
Vlsi design flowVlsi design flow
Vlsi design flow
Rajendra Kumar
 
System on Chip (SoC)
System on Chip (SoC)System on Chip (SoC)
System on Chip (SoC)
Dimas Ruliandi
 
FPGA
FPGAFPGA
FPGA
Abhilash Nair
 
ASIC DESIGN : PLACEMENT
ASIC DESIGN : PLACEMENTASIC DESIGN : PLACEMENT
ASIC DESIGN : PLACEMENT
helloactiva
 
Inputs of physical design
Inputs of physical designInputs of physical design
Inputs of physical design
Kishore Sai Addanki
 
ASIC DESIGN FLOW
ASIC DESIGN FLOWASIC DESIGN FLOW
ASIC DESIGN FLOW
Purvi Medawala
 

Viewers also liked (13)

Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notes
Dr.YNM
 
Partition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automationPartition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automation
Anil Kumar Sahu
 
Understanding cts log_messages
Understanding cts log_messagesUnderstanding cts log_messages
Understanding cts log_messages
Mujahid Mohammed
 
Embedded system custom single purpose processors
Embedded system custom single  purpose processorsEmbedded system custom single  purpose processors
Embedded system custom single purpose processors
Aiswaryadevi Jaganmohan
 
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
Edureka!
 
DPCM
DPCMDPCM
DPCM
suryateja swamy
 
Embedded System-design technology
Embedded System-design technologyEmbedded System-design technology
Embedded System-design technology
Aiswaryadevi Jaganmohan
 
CAD: Floorplanning
CAD: Floorplanning CAD: Floorplanning
CAD: Floorplanning
Team-VLSI-ITMU
 
THE CMOS VLSI DESIGN
THE CMOS VLSI DESIGNTHE CMOS VLSI DESIGN
THE CMOS VLSI DESIGN
suryateja swamy
 
minimisation of crosstalk in VLSI routing
minimisation of crosstalk in VLSI routingminimisation of crosstalk in VLSI routing
minimisation of crosstalk in VLSI routing
Chandrajit Pal
 
CAD: introduction to floorplanning
CAD:  introduction to floorplanningCAD:  introduction to floorplanning
CAD: introduction to floorplanning
Team-VLSI-ITMU
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical design
Murali Rai
 
Mobile IP
Mobile IPMobile IP
Mobile IP
Mukesh Chinta
 
Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notes
Dr.YNM
 
Partition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automationPartition problem IN VLSI algorithem automation
Partition problem IN VLSI algorithem automation
Anil Kumar Sahu
 
Understanding cts log_messages
Understanding cts log_messagesUnderstanding cts log_messages
Understanding cts log_messages
Mujahid Mohammed
 
Embedded system custom single purpose processors
Embedded system custom single  purpose processorsEmbedded system custom single  purpose processors
Embedded system custom single purpose processors
Aiswaryadevi Jaganmohan
 
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
THE VLSI INDUSTRY - An Overview of Market, Job Functions And Product Developm...
Edureka!
 
minimisation of crosstalk in VLSI routing
minimisation of crosstalk in VLSI routingminimisation of crosstalk in VLSI routing
minimisation of crosstalk in VLSI routing
Chandrajit Pal
 
CAD: introduction to floorplanning
CAD:  introduction to floorplanningCAD:  introduction to floorplanning
CAD: introduction to floorplanning
Team-VLSI-ITMU
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical design
Murali Rai
 
Ad

Similar to System partitioning in VLSI and its considerations (20)

Topograhical synthesis
Topograhical synthesis   Topograhical synthesis
Topograhical synthesis
Deiptii Das
 
DDMS DBMS Distributed DB Systems.pdf DMS
DDMS DBMS Distributed DB Systems.pdf DMSDDMS DBMS Distributed DB Systems.pdf DMS
DDMS DBMS Distributed DB Systems.pdf DMS
derntean5
 
Adbms 23 distributed database design
Adbms 23 distributed database designAdbms 23 distributed database design
Adbms 23 distributed database design
Vaibhav Khanna
 
Clean sw 3_architecture
Clean sw 3_architectureClean sw 3_architecture
Clean sw 3_architecture
AngelLuisBlasco
 
2.pptx
2.pptx2.pptx
2.pptx
SandeepYadav949827
 
CNN, Deep Learning ResNet_30_Slide_Presentation.pptx
CNN, Deep Learning ResNet_30_Slide_Presentation.pptxCNN, Deep Learning ResNet_30_Slide_Presentation.pptx
CNN, Deep Learning ResNet_30_Slide_Presentation.pptx
OnUrTipsIncorporatio
 
Chapter1 introductiontoscalingnetworks
Chapter1 introductiontoscalingnetworksChapter1 introductiontoscalingnetworks
Chapter1 introductiontoscalingnetworks
josepholaguer
 
Chapter 5.pptx
Chapter 5.pptxChapter 5.pptx
Chapter 5.pptx
JoeBaker69
 
Chapter 1 introduction to scaling networks
Chapter 1   introduction to scaling networksChapter 1   introduction to scaling networks
Chapter 1 introduction to scaling networks
Josue Wuezo
 
Cluster Computing
Cluster ComputingCluster Computing
Cluster Computing
Hitesh Mohapatra
 
Unit 1
Unit 1Unit 1
Unit 1
sasi
 
Embedded C
Embedded CEmbedded C
Embedded C
Krunal Siddhapathak
 
An octa core processor with shared memory and message-passing
An octa core processor with shared memory and message-passingAn octa core processor with shared memory and message-passing
An octa core processor with shared memory and message-passing
eSAT Journals
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
AAKANKSHA JAIN
 
Design Hierarchy, Concepts of Regularity, Modularity and Locality
Design Hierarchy, Concepts of Regularity, Modularity and LocalityDesign Hierarchy, Concepts of Regularity, Modularity and Locality
Design Hierarchy, Concepts of Regularity, Modularity and Locality
AdiSeshu16
 
Vlsi physical design (Back End Process)
Vlsi physical design (Back End Process)Vlsi physical design (Back End Process)
Vlsi physical design (Back End Process)
CHENCHU CHANDU PRASANTH NADELLA
 
Software architecture
Software architectureSoftware architecture
Software architecture
Sweta Kumari Barnwal
 
lecture25_fpga-conclude.ppt
lecture25_fpga-conclude.pptlecture25_fpga-conclude.ppt
lecture25_fpga-conclude.ppt
Sourav Roy
 
Decision Tree Clustering : A Columnstores Tuple Reconstruction
Decision Tree Clustering : A Columnstores Tuple ReconstructionDecision Tree Clustering : A Columnstores Tuple Reconstruction
Decision Tree Clustering : A Columnstores Tuple Reconstruction
csandit
 
Decision tree clustering a columnstores tuple reconstruction
Decision tree clustering  a columnstores tuple reconstructionDecision tree clustering  a columnstores tuple reconstruction
Decision tree clustering a columnstores tuple reconstruction
csandit
 
Topograhical synthesis
Topograhical synthesis   Topograhical synthesis
Topograhical synthesis
Deiptii Das
 
DDMS DBMS Distributed DB Systems.pdf DMS
DDMS DBMS Distributed DB Systems.pdf DMSDDMS DBMS Distributed DB Systems.pdf DMS
DDMS DBMS Distributed DB Systems.pdf DMS
derntean5
 
Adbms 23 distributed database design
Adbms 23 distributed database designAdbms 23 distributed database design
Adbms 23 distributed database design
Vaibhav Khanna
 
CNN, Deep Learning ResNet_30_Slide_Presentation.pptx
CNN, Deep Learning ResNet_30_Slide_Presentation.pptxCNN, Deep Learning ResNet_30_Slide_Presentation.pptx
CNN, Deep Learning ResNet_30_Slide_Presentation.pptx
OnUrTipsIncorporatio
 
Chapter1 introductiontoscalingnetworks
Chapter1 introductiontoscalingnetworksChapter1 introductiontoscalingnetworks
Chapter1 introductiontoscalingnetworks
josepholaguer
 
Chapter 5.pptx
Chapter 5.pptxChapter 5.pptx
Chapter 5.pptx
JoeBaker69
 
Chapter 1 introduction to scaling networks
Chapter 1   introduction to scaling networksChapter 1   introduction to scaling networks
Chapter 1 introduction to scaling networks
Josue Wuezo
 
Unit 1
Unit 1Unit 1
Unit 1
sasi
 
An octa core processor with shared memory and message-passing
An octa core processor with shared memory and message-passingAn octa core processor with shared memory and message-passing
An octa core processor with shared memory and message-passing
eSAT Journals
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
AAKANKSHA JAIN
 
Design Hierarchy, Concepts of Regularity, Modularity and Locality
Design Hierarchy, Concepts of Regularity, Modularity and LocalityDesign Hierarchy, Concepts of Regularity, Modularity and Locality
Design Hierarchy, Concepts of Regularity, Modularity and Locality
AdiSeshu16
 
lecture25_fpga-conclude.ppt
lecture25_fpga-conclude.pptlecture25_fpga-conclude.ppt
lecture25_fpga-conclude.ppt
Sourav Roy
 
Decision Tree Clustering : A Columnstores Tuple Reconstruction
Decision Tree Clustering : A Columnstores Tuple ReconstructionDecision Tree Clustering : A Columnstores Tuple Reconstruction
Decision Tree Clustering : A Columnstores Tuple Reconstruction
csandit
 
Decision tree clustering a columnstores tuple reconstruction
Decision tree clustering  a columnstores tuple reconstructionDecision tree clustering  a columnstores tuple reconstruction
Decision tree clustering a columnstores tuple reconstruction
csandit
 
Ad

More from Subash John (10)

Piezoelectric electric based energy harvesting
Piezoelectric electric based energy harvestingPiezoelectric electric based energy harvesting
Piezoelectric electric based energy harvesting
Subash John
 
Nano solar cells
Nano solar cellsNano solar cells
Nano solar cells
Subash John
 
Seminar on Cascode amplifier
Seminar on Cascode amplifierSeminar on Cascode amplifier
Seminar on Cascode amplifier
Subash John
 
Component & assembly issues in PCB design
Component & assembly issues in PCB designComponent & assembly issues in PCB design
Component & assembly issues in PCB design
Subash John
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancements
Subash John
 
Fault simulation – application and methods
Fault simulation – application and methodsFault simulation – application and methods
Fault simulation – application and methods
Subash John
 
Companies handling VLSI and ASIC design
Companies handling VLSI and ASIC designCompanies handling VLSI and ASIC design
Companies handling VLSI and ASIC design
Subash John
 
High k dielectrics
High k dielectricsHigh k dielectrics
High k dielectrics
Subash John
 
Fabrication units in India and outside
Fabrication units in India and outsideFabrication units in India and outside
Fabrication units in India and outside
Subash John
 
DDR2 SDRAM
DDR2 SDRAMDDR2 SDRAM
DDR2 SDRAM
Subash John
 
Piezoelectric electric based energy harvesting
Piezoelectric electric based energy harvestingPiezoelectric electric based energy harvesting
Piezoelectric electric based energy harvesting
Subash John
 
Nano solar cells
Nano solar cellsNano solar cells
Nano solar cells
Subash John
 
Seminar on Cascode amplifier
Seminar on Cascode amplifierSeminar on Cascode amplifier
Seminar on Cascode amplifier
Subash John
 
Component & assembly issues in PCB design
Component & assembly issues in PCB designComponent & assembly issues in PCB design
Component & assembly issues in PCB design
Subash John
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancements
Subash John
 
Fault simulation – application and methods
Fault simulation – application and methodsFault simulation – application and methods
Fault simulation – application and methods
Subash John
 
Companies handling VLSI and ASIC design
Companies handling VLSI and ASIC designCompanies handling VLSI and ASIC design
Companies handling VLSI and ASIC design
Subash John
 
High k dielectrics
High k dielectricsHigh k dielectrics
High k dielectrics
Subash John
 
Fabrication units in India and outside
Fabrication units in India and outsideFabrication units in India and outside
Fabrication units in India and outside
Subash John
 

Recently uploaded (20)

Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docxPeer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
19lburrell
 
CNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscessCNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscess
Mohamed Rizk Khodair
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
antiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidenceantiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidence
PrachiSontakke5
 
Origin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theoriesOrigin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theories
PrachiSontakke5
 
Rebuilding the library community in a post-Twitter world
Rebuilding the library community in a post-Twitter worldRebuilding the library community in a post-Twitter world
Rebuilding the library community in a post-Twitter world
Ned Potter
 
How to Configure Extra Steps During Checkout in Odoo 18 Website
How to Configure Extra Steps During Checkout in Odoo 18 WebsiteHow to Configure Extra Steps During Checkout in Odoo 18 Website
How to Configure Extra Steps During Checkout in Odoo 18 Website
Celine George
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon DolabaniHistory Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
fruinkamel7m
 
COPA Apprentice exam Questions and answers PDF
COPA Apprentice exam Questions and answers PDFCOPA Apprentice exam Questions and answers PDF
COPA Apprentice exam Questions and answers PDF
SONU HEETSON
 
How to Manage Manual Reordering Rule in Odoo 18 Inventory
How to Manage Manual Reordering Rule in Odoo 18 InventoryHow to Manage Manual Reordering Rule in Odoo 18 Inventory
How to Manage Manual Reordering Rule in Odoo 18 Inventory
Celine George
 
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptxU3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
Mayuri Chavan
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
Nguyen Thanh Tu Collection
 
IPL QUIZ | THE QUIZ CLUB OF PSGCAS | 2025.pdf
IPL QUIZ | THE QUIZ CLUB OF PSGCAS | 2025.pdfIPL QUIZ | THE QUIZ CLUB OF PSGCAS | 2025.pdf
IPL QUIZ | THE QUIZ CLUB OF PSGCAS | 2025.pdf
Quiz Club of PSG College of Arts & Science
 
Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...
parmarjuli1412
 
Module_2_Types_and_Approaches_of_Research (2).pptx
Module_2_Types_and_Approaches_of_Research (2).pptxModule_2_Types_and_Approaches_of_Research (2).pptx
Module_2_Types_and_Approaches_of_Research (2).pptx
drroxannekemp
 
puzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tensepuzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tense
OlgaLeonorTorresSnch
 
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptxANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
Mayuri Chavan
 
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptxUnit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Mayuri Chavan
 
Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docxPeer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
Peer Assessment_ Unit 2 Skills Development for Live Performance - for Libby.docx
19lburrell
 
CNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscessCNS infections (encephalitis, meningitis & Brain abscess
CNS infections (encephalitis, meningitis & Brain abscess
Mohamed Rizk Khodair
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
antiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidenceantiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidence
PrachiSontakke5
 
Origin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theoriesOrigin of Brahmi script: A breaking down of various theories
Origin of Brahmi script: A breaking down of various theories
PrachiSontakke5
 
Rebuilding the library community in a post-Twitter world
Rebuilding the library community in a post-Twitter worldRebuilding the library community in a post-Twitter world
Rebuilding the library community in a post-Twitter world
Ned Potter
 
How to Configure Extra Steps During Checkout in Odoo 18 Website
How to Configure Extra Steps During Checkout in Odoo 18 WebsiteHow to Configure Extra Steps During Checkout in Odoo 18 Website
How to Configure Extra Steps During Checkout in Odoo 18 Website
Celine George
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon DolabaniHistory Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
fruinkamel7m
 
COPA Apprentice exam Questions and answers PDF
COPA Apprentice exam Questions and answers PDFCOPA Apprentice exam Questions and answers PDF
COPA Apprentice exam Questions and answers PDF
SONU HEETSON
 
How to Manage Manual Reordering Rule in Odoo 18 Inventory
How to Manage Manual Reordering Rule in Odoo 18 InventoryHow to Manage Manual Reordering Rule in Odoo 18 Inventory
How to Manage Manual Reordering Rule in Odoo 18 Inventory
Celine George
 
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptxU3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
U3 ANTITUBERCULAR DRUGS Pharmacology 3.pptx
Mayuri Chavan
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
BÀI TẬP BỔ TRỢ TIẾNG ANH 9 THEO ĐƠN VỊ BÀI HỌC - GLOBAL SUCCESS - CẢ NĂM (TỪ...
Nguyen Thanh Tu Collection
 
Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...
parmarjuli1412
 
Module_2_Types_and_Approaches_of_Research (2).pptx
Module_2_Types_and_Approaches_of_Research (2).pptxModule_2_Types_and_Approaches_of_Research (2).pptx
Module_2_Types_and_Approaches_of_Research (2).pptx
drroxannekemp
 
puzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tensepuzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tense
OlgaLeonorTorresSnch
 
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptxANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
ANTI-VIRAL DRUGS unit 3 Pharmacology 3.pptx
Mayuri Chavan
 
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptxUnit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Unit 5 ACUTE, SUBACUTE,CHRONIC TOXICITY.pptx
Mayuri Chavan
 

System partitioning in VLSI and its considerations

  • 1. System partitioning & its considerations Subash John CGB0911005 VSD 531 M.Sc. [Engg.] in VLSI System Design Module Title: IC planning & implementation Module Leader: Mr. Chandramohan P. M. S. Ramaiah School of Advanced Studies 1
  • 2. Contents • Introduction • Physical design flow • Need for partitioning • Rules of partitioning • Methods of partitioning • Tool based partitioning • Conclusion • References M. S. Ramaiah School of Advanced Studies 2
  • 3. Introduction • Decomposition of a complex system into smaller subsystems • Each subsystem can be designed independently speeding up the design process • Decomposition scheme has to minimize the interconnections between the subsystems • Decomposition is carried out hierarchically until each subsystem is of manageable size • This is done mainly to separate different functional blocks and also to make placement and routing easier Figure 1. Bad partitioning results in more delay [2] M. S. Ramaiah School of Advanced Studies 3
  • 4. Components of partitioning • Inputs – A set of components or modules – A netlist: In the form of weighted graph or hyper graph: nodes representing modules; edge or hyper edge representing a net • Outputs – A set of sub circuits that when connected, function as the original circuit – Terminals required for each sub circuit to be connected to other sub circuits Figure 2. (a) Network (b) Graph [2] M. S. Ramaiah School of Advanced Studies 4
  • 5. Physical design flow Partitioning Floor Planning Power planning Placement CTS Routing Figure 3. Physical flow [2] M. S. Ramaiah School of Advanced Studies 5
  • 6. Need for partitioning • Dividing a net list into clusters to minimize # of inter-cluster connections • Becomes more critical with VDSM • Influences the final quality of placement, global routing & detail routing • System size increases – Need to minimize design coupling • Interconnect dominates chip performance – Have to minimize number of block-to-block connections (e.g. global buses) • Helps reduce chip area – Minimizes length of global wires M. S. Ramaiah School of Advanced Studies 6
  • 7. Partitioning at different levels Partitioning System Board level Chip level level Figure 4. Levels of partitioning [3] M. S. Ramaiah School of Advanced Studies 7
  • 8. 5 Golden rules of partitioning • Interconnections between partitions – Reducing interconnections reduces the delay & interface between the partitions making it easier for independent design and fabrication • Delay due to partitioning – Partitioning of a circuit might cause a critical path to go in between partitions a number of times • Number of terminals – Number of nets required to connect a sub circuit to other sub circuits does not exceed the terminal count of the sub circuit. • Number of partitions – Large number of partitions may ease the design of individual partitions but they may also increase the cost of fabrication and the number of interconnections between the partitions • Area of each partition M. S. Ramaiah School of Advanced Studies 8
  • 9. Methods of partitioning • Constructive or iterative – Constructive algorithms determine a partitioning from the graph describing the circuit or system, whereas iterative methods aim at improving the quality of an existing partitioning solution • Deterministic or probabilistic – Deterministic programs generate the same solution each time they are started. Probabilistic methods result in differing solutions because they are based on random numbers M. S. Ramaiah School of Advanced Studies 9
  • 10. Partitioning example I Input size: 48 Cut 1=4 Cut 2=4 Size 1=15 Size 2=16 Size 3=17 Figure 5. Partitioning example [2] M. S. Ramaiah School of Advanced Studies 10
  • 11. Partitioning example II A constructed partition using logic A partitioning cell C as a seed. It is with five external difficult to connections (nets get from this local minimum, with 2, 4, 5, 6, and seven external 8)—the minimum connections (2, 3, 5, number. 7, 9,11,12), Figure 6. Partitioning example [2] M. S. Ramaiah School of Advanced Studies 11
  • 12. Partitioning example III 7 7 6 6 5 4 Figure 7. Partitioning example [2] M. S. Ramaiah School of Advanced Studies 12
  • 13. Tool based partitioning • create_partition - Creates and manipulates partitions in a design through command-line specification, auto partitioning or manual GUI-based changes create_partition [-input_files files] [-reset overrides | partition | keepouts | all] [-auto_partition instance_count | area] [-area sub_block_area] [-internal_keepout keepout] [-external_keepout keepout] [-utilization block_utilization] [-aspect_ratio float] [-output_dir dir_name] [-create verilog_files | design | top_level_floorplan] [-verbose] [module_name_list] create_partition -input_files {myDesign.v} -utilization 0.85 –reset all –aspect_ratio .7 -auto_partition instance_count M. S. Ramaiah School of Advanced Studies 13
  • 14. Tool based partitioning • optimize_netlist_hierarchy - Modifies the net-list tree structure in order to create physically partition-able hierarchy nodes in the top level such that the size of the nodes are well-balanced while minimizing the number of top level nets that need to connect to hierarchy block interface. optimize_netlist_hierarcy -netlist_files filelist -top topName [-opaque_modules modulelist] [-filename filename] [-max_partition_to_chip_ratio sizeRatio] [-keep_top_hier modulelist] [-hier_marker symbol] [-max_hier_mod_depth level] [-max_num_nodes count] optimize_netlist_hierarchy -netlist_files input.v -top MYTOP - max_partition_to_chip_ratio 0.3 -keep_top_hier {PDB08DGZ PDIANA2PC PDIDGZ} - max_num_nodes 500 -hier_marker / -output nlout M. S. Ramaiah School of Advanced Studies 14
  • 15. Benefits of tool based partitioning • Identifies an optimal partitioning scheme for a given design, such that the blocks can be implemented independently • Ensures that the size of the partitions are balanced by either area or instance count • Minimizes the number of top-level nets connecting to one of more block I/O ports • Partitions the netlist without changing the functionality. M. S. Ramaiah School of Advanced Studies 15
  • 16. Summary • Partitioning divides a large circuit into a group of smaller sub circuits • These sub circuits can be designed independently and simultaneously to speed up the design process • In the tool based flow, constraints can be given to generate an efficient partitioned netlist M. S. Ramaiah School of Advanced Studies 16
  • 17. References 1. Arnab Sarkar (2008), ‘VLSI Physical Design Automation’ available from <http://conf05.iitkgp.ac.in/avlsi/logf/summercourse/2008/Physical_Design_A rnab.pdf> Retrieved on 01st Apr 2012 2. Michael John & Sebastian Smith (1997), ‘Application Specific Integrated Circuit’. Massachusetts: Addison-Wesley Publishing Company 3. Naveed Sherwani (1999) ‘Algorithms for Physical Design Automation’. Dordrecht: Kluwer Academic Publishers 4. Newton, Keutzer & Orshansky (2000) Partitioning of Physical Design, University of California, Berkeley, CA 5. Synopsys Inc. (2009), ‘IC Compiler Design Planning User Guide’. M. S. Ramaiah School of Advanced Studies 17
  • 18. Thank You M. S. Ramaiah School of Advanced Studies 18
  • 19. Remarks Sl. No. Topic Max. marks Marks obtained 1 Quality of slides 5 2 Clarity of subject 5 3 Presentation 5 4 Effort and question handling 5 Total 20 M. S. Ramaiah School of Advanced Studies 19

Editor's Notes

  • #4: Partitioning can be done in the RTL design phase when the design engineer partitions the entire design into sub-blocks and then proceeds to design each module. These modules are linked together in the main module called the TOP LEVEL module. This kind of partitioning is commonly referred to as Logical Partitioning.Efficient designing of any complex system necessitates decomposition of the same into a set of smaller subsystems. Subsequently, each subsystem can bedesigned independently and simultaneously to speed up the design process. The process of decomposition is called partitioning .Three broad parameters to be taken into consideration:1. The system must be decomposed carefully so that the original functionality of the system remains intact. 2. An interface specification is generated during the decomposition, which is used to connect all the subsystems. The system decomposition should ensure minimization of the interface interconnections between any two subsystems.3. Finally, the decomposition process should be simple and efficient so that the time required for the decomposition is a small fraction of the total design time.
  • #7: The greatest challenge in modern VLSI design is not in designing the individual transistors but rather in managing system complexity. Modern System-On-Chip (SOC) designs combine memories, processors, high speed I/O interfaces, and dedicated application-specific logic on a single chip. They use hundreds of millions (soon billions) of transistors. The implementation must be divided among large teams of engineers. If the implementation is too rigidly partitioned, each block can be optimized without regard to its neighbors, leading to poor system results.Conversely, if every task is interdependent with every other task, design will progress too slowly. Design managers face the challenge of choosing a suitable tradeoff between these extremes.
  • #8: The partitioning of a system into a group of PCBs is called the system level partitioning. The partitioning of a PCB into chips is called the board levelpartitioning while the partitioning of a chip into smaller sub circuits is called the chip level partitioning.
  • #9: 1.Interconnections between partitions: The number of interconnections at any level of partitioning have to be minimized. Reducing the interconnections not only reduces the delay but also reduces the interface between the partitions making it easier for independent design and fabrication.A large number of interconnections increase the design area as well as complicate the task of the placement and routing algorithms. Minimizationof the number of interconnections between partitions is called the mincut problem. The minimization of the cut is a very important objective function for partitioning algorithms for any level or any style of design.2. Delay due to partitioning: The partitioning of a circuit might cause a critical path to go in between partitions a number of times. As the delay between partitions is significantly larger than the delay within a partition, this is an important factor which has to be considered while partitioning high performance circuits. This is an objective function for partitioning algorithms for all levels of design.3. # of terminals: Partitioning algorithms at any level must partition the circuit so that the number of nets required to connect a subcircuit to other subcircuits does not exceed the terminal count of the subcircuit. In case of system level partitioning, this limit is decided by the maximum number of terminals available on a PCB connector which connects the PCB to the system bus. In case of board level partitioning, this limit is decided by the pin count of the package used for the chips. In case of chip level partitioning, the number of terminals of a subcircuit is determined by the perimeter of the area used by the subcircuit. At any level, the number of terminals for a partition is a constraint for the partitioning algorithm 4. Number of partitions: The number of partitions appears as a constraint in the partitioning problem at system level and board level partitioning.This prevents a system from having too many PCBs and a PCB from having too many chips. A large number of partitions may ease the design of individual partitions but they may also increase the cost of fabrication and the number of interconnections between the partitions. At the same time, if the number of partitions is small, the design of these partitions might still be too complex to be handled efficiently. At chip level, the number of partitions is determined, in part, by the capability of the placement algorithm. 5. Area of each partition: In case of system level partitioning, the area of each partition (board) is fixed and hence this factor appears as a constraint for the system level partitioning problem. In case of board level partitioning, although it is important to reduce the area of each partition (chip) to a minimum to reduce the cost of fabrication, there is also an upper bound on the area of a chip, Hence, in this case also, the area appears as a constraint for the partitioning problem. At chip level, the size of each partition is not so important as long as the partitions are balanced.
  • #14: -input_filesfilesSpecifies that a partition is to be created by using one or more Verilog files. The structure of the Verilog files does not matter. Each module mustbe defined only once. All unused modules will remain as independent top modules.-reset overrides | partition | keepouts | allResets some or all of the computed parameters in the partition. Possible choices are overrides, which resets any areas or utilization settings thatwere overridden; partition, which resets any partitioning choices that were made manually or through autopartitioning; keepouts, which resets anykeepouts that were set; or all, which does all of these things.-auto_partition instance_count | areaChooses autopartitioning as part of the partitioning for this object. You can choose instance_count, which balances partitions based on equalizing thenumber of instances in each partition, or you choose area, which balances partitions based on the size of the area.-physicalIndicates that the blocks in the module_name_list will be labelled as physical (and logical) blocks, labelling them as partitions. Note that thetop block in a design is by definition physical and logical. This option is mutually exclusive with the -logical option.-logicalIndicates that the blocks in the module_name_list will be labelled as logical-only blocks, labelling them as internal (logical) hierarchy. Notethat the top block in a design is by definition physical and logical. This option is mutually exclusive with the -physical option.-area sub_block_areaAllows you to set or to override the area for a given block within the hierarchy. This option should be used in a top-down design flow when one ormore (presumably large) blocks are missing, but their estimated area is known. This can result in more properly considering the missing blocksexpected contribution during area-based autopartitioning and during topdown, black-box shaping and floorplanning. There is no restriction on whetheror not the overridden block is a physical block. In some circumstances a block might already have a well-defined area but the designers are aware that a change is coming that will result in a different area. A designer can get a head start on refloorplanning the design by overriding the area on the current version of the block. Note that in this case, using this option will fail with an error message unless it is used with the -force-fP option.-internal_keepoutkeepoutSets an internal keepout on the given blocks. This keepout will be added to the area of the block. If that block is partitioned into a physical block,it will become larger by the internal keepout. The default internal keepout is 0.-external_keepoutkeepoutSets an external keepout on the given blocks. This keepout will be added to the the area of the block but it will not cause the partitioned physical blockto become larger. Note, however, that adding to the area of the block will cause the parents of this block to be larger. The default external keepout is 0.-utilization block_utilizationAllows you to specify the utilization on modules. There are two ways to do this. First, if used with the -input_files option, it will set a defaultutilization on all modules. Second, if used with a module_name_list, it will override the default utilization on the specified modules. The setutilization is used along with the leaf cell areas to compute the required area for the physical blocks. Note that in some cases you might need to usethe -force option to have this work.-aspect_ratiofloatAllows you to specify a target aspect ratio (height/width) for the chip to be created using the -create top_level_floorplan option. The default aspectratio is 1.
  翻译: