SlideShare a Scribd company logo
ILP Based Approach for
Input Vector Controlled
(IVC) Toggle Maximization
in Combinational Circuits

  VDAT 2012

  Jaynarayan Tudu, IISc Bangalore
  Deepak Malani, IIT Bombay
  Virendra Singh, IIT Bombay
Outline


     Introduction and Motivation to Power
     Estimation
     Previous Work
     ILP based formulation of combinational logic
      – Constraints
      – Optimization Function
     Performance on ISCAS Benchmarks
     Roadmap


2     07/10/12
Introduction
                             Power dissipation


                 Static Power               Dynamic Power
                                                2
                   Vdd * Istatic           CL* Vdd * Ptran * fclock




3     07/10/12
Motivation


     Estimation of peak-power dissipation
     determines
     – Maximum current demand
     – VDD droop (due to IR-drop)
     – Design of power delivery network (PDN)
                      VDD      IR-drop




4     07/10/12
                                     Clock
Power Estimation Approaches

     Vector-less
     – Probabilistic
     Vector-based
     – Power pattern generation




5     07/10/12
Power Pattern Generation
    Maximum power estimation for sequential circuits using a test generation
    based technique [Kaushik Roy et al, CICC, 1996]


       Greedy toggle assignment proportional to
       fan-out factor
        – Gates are sorted in non-increasing order by their
          fan-out
        – In each iteration of algorithm, the gate having
          larger fan-out and not yet tried is assigned a 0->1
          or 1->0 toggle.
       Assignment is then justified like D-algorithm
       Heuristic based on larger fan-out alone, may not
       estimate the worst case pattern


6        07/10/12
Mathematical Expressions for logic
    gates


    GATE Type          Boolean      Algebraic     SAT* Expression
                       Expression   Expression
    x              z   z= x         z=1-x         (x+z).(x+z)



    x              z   z = x.y      z = 1 – x.y   (x+z).(y+z).
                                                   (x+y+z)
    y


    *CNF: Conjunctive Normal Form


7       07/10/12
Boolean Satisfiability based
    technique (SAT)
    Using SAT-based techniques in power estimation, [F. Aloul et al,
    Elsevier, 2007]




8       07/10/12
Boolean Satisfiability based
    technique (SAT)
     Formulation is expressed as pseudo Boolean
     SAT expression
      – CNF expressions
      – Objective function


     ILP solver found to be comparatively efficient
     than SAT solvers
      – CPLEX (ILP solver) v/s PBS, Galena, MiniSAT+



9     07/10/12
Quest directions

                                    SAT solver
                  SAT formulation
                                    ILP solver




                  ILP formulation    ILP solver




10     07/10/12
ILP Formulation

      Steps
      1)    Variable definition
      2)    Constraints
      3)    Optimization function
      4)    Solver (iterative)




11     07/10/12
ILP Formulation

     2.a) I/O Constraints
        – INV   : y=1-x
        – NAND2 : y = 1 – x1* x2
       – NOR2      : y = 1 – (x1 + x2) + x1* x2




12      07/10/12
ILP Formulation

     2.b) Product Linearization Constraint
        z = 1 – x*y
        define p = x*y s.t.
        z=1–p
        p≤x
        p≤y
        x+y–p≤1




13      07/10/12
ILP Formulation
            Example          y = 1 – x1* x2
                             p = x1* x2 s.t.
  x1             y           y=1–p
  x2                         p ≤ x1
                      z      p ≤ x2

   x3                        x1 + x2 – p ≤ 1


                             z = 1 - y * x3
                             q = y* x3 s.t.
                             z=1–q
                             q≤y
                             q ≤ x3
14
07/10/12                     y + x3 – q ≤ 1
ILP Formulation

     2.c) Toggle count constraint
       – For each net five variables are defined
       – x1 and x2 successive logic values of net ‘x’
                   1)   x1
                   2)   x1 = 1- x1
                   3)   x2
                   4)   x2 = 1- x2
                   5)   tgate_x = x1.x2 + x1.x2
     3) Optimization function
        – Maximize ∑ (tgate_i)
                           i = 1:N
15      07/10/12
ILP Formulation
                             t1 = y1.y2 + y1.y2
  x1             y1          t2 = z1.z2 + z1.z2
  x2             y2
                      z1
   x3                 z2




16
07/10/12
ILP Formulation - Summary

                          Variable
                         definition

                        Constraints
                  I/O   Linearization Toggle



                  Optimization function
                     Toggle Maximization


                           Solver
                  Generate successive pair of
                    primary input vectors
17     07/10/12
ILP Formulation

      I/O Constraints for n-input gates
       – NAND: y = 1 – ∏ xi
      – NOR : y = 1 – ∑ xi * xj + … (-1)n ∏ xi




18     07/10/12
Performance Analysis


      ISCAS-85 benchmarks
      Machine
      – Dual Core AMD Opteron, @1GHz
      ILP Solvers
      – GLPK, CPLEX




19     07/10/12
Observations
Circuit       #PI   #Nets   #Toggle   %Toggle   Solver
                                                Time (sec)
c04           1     4       4         100       0.09
c05           3     8       7         87.5      0.05
c11           3     6       5         83.3      0.02
c14           2     4       3         75        0.03
c17           5     6       6         100       0.02
c432          36    296     243       82        8.86
c499          41    626     360       57.5      3406.00
c880          60    592     491       82.9      21.55
c1355         41    690     415       60.1      3616.48
c1908         33    1291    832       64.4      2371.53
c2670         233   1925    1362      70.7      559.65
c5315         178   4897    2635      53.80     3399
20      07/10/12
Conclusion


      Any large combinational circuit can be
      represented as BIP

      Can use ILP solver for Toggle maximization
      and thereby generate Input Vector pair
      >53% nets toggling

      Cuts method speeds up optimal polyhedron
      computation

21     07/10/12
Roadmap


      Non-zero delay consideration
      – define multiple levels in combinational
        logic
      Fanout consideration
      – weighted function
      Implementation of the methodology to
      sequential circuits, by unfolding
      Explore SAT Solvers
      – MiniSAT+
22     07/10/12
Resources


      Source code, Slides, Paper
      – www.DeepakMalani.in




23     07/10/12
Acknowledgements


      LSI R&D Center, Bangalore
      – Research grant


      Pramod Subramanyan, Princeton University
      – for support in BILP formulation




24     07/10/12

More Related Content

PDF
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
PDF
PIMRC 2012
PDF
Goodfellow, Bengio, Couville (2016) "Deep Learning", Chap. 7
PDF
Goodfellow, Bengio, Couville (2016) "Deep Learning", Chap. 6
PPTX
Aaex4 group2(中英夾雜)
PPTX
Aaex5 group2(中英夾雜)
PDF
WMC2016-230pm-presented
PDF
Pclsp ntnu
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
PIMRC 2012
Goodfellow, Bengio, Couville (2016) "Deep Learning", Chap. 7
Goodfellow, Bengio, Couville (2016) "Deep Learning", Chap. 6
Aaex4 group2(中英夾雜)
Aaex5 group2(中英夾雜)
WMC2016-230pm-presented
Pclsp ntnu

What's hot (20)

PDF
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
PPTX
Aaex7 group2(中英夾雜)
PDF
Higher-order Factorization Machines(第5回ステアラボ人工知能セミナー)
PDF
Bayesian Dark Knowledge and Matrix Factorization
PDF
ICML2013読み会 Large-Scale Learning with Less RAM via Randomization
PDF
Neural Processes Family
PDF
Deep Convolutional GANs - meaning of latent space
PDF
Writing your own Neural Network.
PDF
Digital Signal Processing Tutorial:Chapt 3 frequency analysis
PDF
KDD Cup 2021 時系列異常検知コンペ 参加報告
PDF
Sparse Kernel Learning for Image Annotation
PDF
Ee gate-15-paper-02 new2
PDF
Gentle Introduction to Dirichlet Processes
PPTX
論文紹介 Fast imagetagging
PDF
Generalized Elias Schemes for Truly Random Bits
PDF
Low-rank tensor methods for stochastic forward and inverse problems
PDF
Expert Lecture on GPS at UIET, CSJM, Kanpur
PPTX
Topology Matters in Communication
PPTX
Psimd open64 workshop_2012-new
PPTX
Aaex3 group2
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
Aaex7 group2(中英夾雜)
Higher-order Factorization Machines(第5回ステアラボ人工知能セミナー)
Bayesian Dark Knowledge and Matrix Factorization
ICML2013読み会 Large-Scale Learning with Less RAM via Randomization
Neural Processes Family
Deep Convolutional GANs - meaning of latent space
Writing your own Neural Network.
Digital Signal Processing Tutorial:Chapt 3 frequency analysis
KDD Cup 2021 時系列異常検知コンペ 参加報告
Sparse Kernel Learning for Image Annotation
Ee gate-15-paper-02 new2
Gentle Introduction to Dirichlet Processes
論文紹介 Fast imagetagging
Generalized Elias Schemes for Truly Random Bits
Low-rank tensor methods for stochastic forward and inverse problems
Expert Lecture on GPS at UIET, CSJM, Kanpur
Topology Matters in Communication
Psimd open64 workshop_2012-new
Aaex3 group2
Ad

Viewers also liked (18)

PPT
Dental curing-torch
PDF
RD Construction Management presentation
PDF
Itsp inauguration-may2015-v2
PDF
Oil painting - Ya'akov Boussidan
PDF
Viroc catalogue
PPTX
Cycles and Cycling
PDF
Klassifikaciya ofisnoy nedvizhimosti_2006_rus_kf
PPTX
Wageningen UR Geoportal: RAF Aerial Photographs(Luchtfoto's uit 1943-1947)
PDF
Новый формат для бизнеса: клубный офис
PDF
Тайный посетитель ресепшн
PDF
Особенности выбора места для офиса с учетом специфики бизнеса компании
PDF
Wireless PC2TV
PDF
RU GBC presentation
PPT
Level-Accurate Peak Activity Estimation in Combinational Circuit Using BILP
PPT
Presentation: Learn by playing #rict1314.
PPT
Databank T Ui N
PPT
PDF
Desalination Using Charcoal
Dental curing-torch
RD Construction Management presentation
Itsp inauguration-may2015-v2
Oil painting - Ya'akov Boussidan
Viroc catalogue
Cycles and Cycling
Klassifikaciya ofisnoy nedvizhimosti_2006_rus_kf
Wageningen UR Geoportal: RAF Aerial Photographs(Luchtfoto's uit 1943-1947)
Новый формат для бизнеса: клубный офис
Тайный посетитель ресепшн
Особенности выбора места для офиса с учетом специфики бизнеса компании
Wireless PC2TV
RU GBC presentation
Level-Accurate Peak Activity Estimation in Combinational Circuit Using BILP
Presentation: Learn by playing #rict1314.
Databank T Ui N
Desalination Using Charcoal
Ad

Similar to ILP Based Approach for Input Vector Controlled (IVC) Toggle Maximization in Combinational Circuits (20)

PDF
ATPG of reversible circuits
PDF
DD-F215-L-Memory_v2.pdfDIGITAL design bits
PPT
4366 chapter7
PDF
Optimum Engineering Design - Day 4 - Clasical methods of optimization
PDF
Introducing LCS to Digital Design Verification
PPT
Bounded Model Checking
PPTX
Module 2 -Test Generation VLSI DESIGN .pptx
PDF
Ba26343346
DOCX
STANDARD CELL LIBRARY DESIGN
DOC
Simplex3
PDF
Distinguishing the signal from noise in an SVD of simulation data
PDF
A minimization approach for two level logic synthesis using constrained depth...
KEY
Space time
PPT
Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...
PDF
Qb ar college
PDF
3Sem-Logic Design Notes-Unit7-Sequential Design
PPTX
Lecture 18 M - Copy.pptx
PPTX
Unit-IV vlsitgajjshhrhudhdhhdhxhhdbdhd.pptx
ATPG of reversible circuits
DD-F215-L-Memory_v2.pdfDIGITAL design bits
4366 chapter7
Optimum Engineering Design - Day 4 - Clasical methods of optimization
Introducing LCS to Digital Design Verification
Bounded Model Checking
Module 2 -Test Generation VLSI DESIGN .pptx
Ba26343346
STANDARD CELL LIBRARY DESIGN
Simplex3
Distinguishing the signal from noise in an SVD of simulation data
A minimization approach for two level logic synthesis using constrained depth...
Space time
Linear Programming and its Usage in Approximation Algorithms for NP Hard Opti...
Qb ar college
3Sem-Logic Design Notes-Unit7-Sequential Design
Lecture 18 M - Copy.pptx
Unit-IV vlsitgajjshhrhudhdhhdhxhhdbdhd.pptx

Recently uploaded (20)

PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Big Data Technologies - Introduction.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Cloud computing and distributed systems.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Machine learning based COVID-19 study performance prediction
PDF
Modernizing your data center with Dell and AMD
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Understanding_Digital_Forensics_Presentation.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation_ Review paper, used for researhc scholars
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
The AUB Centre for AI in Media Proposal.docx
Big Data Technologies - Introduction.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Cloud computing and distributed systems.
Dropbox Q2 2025 Financial Results & Investor Presentation
Diabetes mellitus diagnosis method based random forest with bat algorithm
The Rise and Fall of 3GPP – Time for a Sabbatical?
Machine learning based COVID-19 study performance prediction
Modernizing your data center with Dell and AMD
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Per capita expenditure prediction using model stacking based on satellite ima...
MYSQL Presentation for SQL database connectivity
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy

ILP Based Approach for Input Vector Controlled (IVC) Toggle Maximization in Combinational Circuits

  • 1. ILP Based Approach for Input Vector Controlled (IVC) Toggle Maximization in Combinational Circuits VDAT 2012 Jaynarayan Tudu, IISc Bangalore Deepak Malani, IIT Bombay Virendra Singh, IIT Bombay
  • 2. Outline Introduction and Motivation to Power Estimation Previous Work ILP based formulation of combinational logic – Constraints – Optimization Function Performance on ISCAS Benchmarks Roadmap 2 07/10/12
  • 3. Introduction Power dissipation Static Power Dynamic Power 2 Vdd * Istatic CL* Vdd * Ptran * fclock 3 07/10/12
  • 4. Motivation Estimation of peak-power dissipation determines – Maximum current demand – VDD droop (due to IR-drop) – Design of power delivery network (PDN) VDD IR-drop 4 07/10/12 Clock
  • 5. Power Estimation Approaches Vector-less – Probabilistic Vector-based – Power pattern generation 5 07/10/12
  • 6. Power Pattern Generation Maximum power estimation for sequential circuits using a test generation based technique [Kaushik Roy et al, CICC, 1996] Greedy toggle assignment proportional to fan-out factor – Gates are sorted in non-increasing order by their fan-out – In each iteration of algorithm, the gate having larger fan-out and not yet tried is assigned a 0->1 or 1->0 toggle. Assignment is then justified like D-algorithm Heuristic based on larger fan-out alone, may not estimate the worst case pattern 6 07/10/12
  • 7. Mathematical Expressions for logic gates GATE Type Boolean Algebraic SAT* Expression Expression Expression x z z= x z=1-x (x+z).(x+z) x z z = x.y z = 1 – x.y (x+z).(y+z). (x+y+z) y *CNF: Conjunctive Normal Form 7 07/10/12
  • 8. Boolean Satisfiability based technique (SAT) Using SAT-based techniques in power estimation, [F. Aloul et al, Elsevier, 2007] 8 07/10/12
  • 9. Boolean Satisfiability based technique (SAT) Formulation is expressed as pseudo Boolean SAT expression – CNF expressions – Objective function ILP solver found to be comparatively efficient than SAT solvers – CPLEX (ILP solver) v/s PBS, Galena, MiniSAT+ 9 07/10/12
  • 10. Quest directions SAT solver SAT formulation ILP solver ILP formulation ILP solver 10 07/10/12
  • 11. ILP Formulation Steps 1) Variable definition 2) Constraints 3) Optimization function 4) Solver (iterative) 11 07/10/12
  • 12. ILP Formulation 2.a) I/O Constraints – INV : y=1-x – NAND2 : y = 1 – x1* x2 – NOR2 : y = 1 – (x1 + x2) + x1* x2 12 07/10/12
  • 13. ILP Formulation 2.b) Product Linearization Constraint z = 1 – x*y define p = x*y s.t. z=1–p p≤x p≤y x+y–p≤1 13 07/10/12
  • 14. ILP Formulation Example y = 1 – x1* x2 p = x1* x2 s.t. x1 y y=1–p x2 p ≤ x1 z p ≤ x2 x3 x1 + x2 – p ≤ 1 z = 1 - y * x3 q = y* x3 s.t. z=1–q q≤y q ≤ x3 14 07/10/12 y + x3 – q ≤ 1
  • 15. ILP Formulation 2.c) Toggle count constraint – For each net five variables are defined – x1 and x2 successive logic values of net ‘x’ 1) x1 2) x1 = 1- x1 3) x2 4) x2 = 1- x2 5) tgate_x = x1.x2 + x1.x2 3) Optimization function – Maximize ∑ (tgate_i) i = 1:N 15 07/10/12
  • 16. ILP Formulation t1 = y1.y2 + y1.y2 x1 y1 t2 = z1.z2 + z1.z2 x2 y2 z1 x3 z2 16 07/10/12
  • 17. ILP Formulation - Summary Variable definition Constraints I/O Linearization Toggle Optimization function Toggle Maximization Solver Generate successive pair of primary input vectors 17 07/10/12
  • 18. ILP Formulation I/O Constraints for n-input gates – NAND: y = 1 – ∏ xi – NOR : y = 1 – ∑ xi * xj + … (-1)n ∏ xi 18 07/10/12
  • 19. Performance Analysis ISCAS-85 benchmarks Machine – Dual Core AMD Opteron, @1GHz ILP Solvers – GLPK, CPLEX 19 07/10/12
  • 20. Observations Circuit #PI #Nets #Toggle %Toggle Solver Time (sec) c04 1 4 4 100 0.09 c05 3 8 7 87.5 0.05 c11 3 6 5 83.3 0.02 c14 2 4 3 75 0.03 c17 5 6 6 100 0.02 c432 36 296 243 82 8.86 c499 41 626 360 57.5 3406.00 c880 60 592 491 82.9 21.55 c1355 41 690 415 60.1 3616.48 c1908 33 1291 832 64.4 2371.53 c2670 233 1925 1362 70.7 559.65 c5315 178 4897 2635 53.80 3399 20 07/10/12
  • 21. Conclusion Any large combinational circuit can be represented as BIP Can use ILP solver for Toggle maximization and thereby generate Input Vector pair >53% nets toggling Cuts method speeds up optimal polyhedron computation 21 07/10/12
  • 22. Roadmap Non-zero delay consideration – define multiple levels in combinational logic Fanout consideration – weighted function Implementation of the methodology to sequential circuits, by unfolding Explore SAT Solvers – MiniSAT+ 22 07/10/12
  • 23. Resources Source code, Slides, Paper – www.DeepakMalani.in 23 07/10/12
  • 24. Acknowledgements LSI R&D Center, Bangalore – Research grant Pramod Subramanyan, Princeton University – for support in BILP formulation 24 07/10/12

Editor's Notes

  • #12: Converted all gates to NAND and NOR gates, Universal gates
  • #13: Converted all gates to NAND and NOR gates, Universal gates
  • #14: Converted all gates to NAND and NOR gates, Universal gates
  • #15: Converted all gates to NAND and NOR gates, Universal gates
  • #17: Converted all gates to NAND and NOR gates, Universal gates
  • #19: * Hide this slide. * Converted all gates to NAND and NOR gates, Universal gates