Table Of ContentAdvanced Techniques in Logic Synthesis,
Optimizations and Applications
·
Sunil P. Khatri Kanupriya Gulati
Editors
Advanced Techniques
in Logic Synthesis,
Optimizations
and Applications
123
Editors
SunilP.Khatri KanupriyaGulati
DepartmentofECE IntelCorporation
333FWERC,MS3259 2501NW229thAve
TexasA&MUniversity Hillsboro,OR97124,
CollegeStation,TX77843-3259, USA
USA kanupriya.gulati@intel.com
sunilkhatri@tamu.edu
ISBN978-1-4419-7517-1 e-ISBN978-1-4419-7518-8
DOI10.1007/978-1-4419-7518-8
SpringerNewYorkDordrechtHeidelbergLondon
(cid:2)c SpringerScience+BusinessMedia,LLC2011
Allrightsreserved.Thisworkmaynotbetranslatedorcopiedinwholeorinpartwithoutthewritten
permission of the publisher (Springer Science+Business Media, LLC, 233 Spring Street, New York,
NY10013,USA),exceptforbriefexcerptsinconnectionwithreviewsorscholarlyanalysis.Usein
connection with any form of information storage and retrieval, electronic adaptation, computer
software,orbysimilarordissimilarmethodologynowknownorhereafterdevelopedisforbidden.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if
they are not identified as such, is not to be taken as an expression of opinion as to whether or not
theyaresubjecttoproprietaryrights.
Printedonacid-freepaper
SpringerispartofSpringerScience+BusinessMedia(www.springer.com)
Preface
The last few decades have seen a stupendous growth in the speed and complex-
ity of VLSI integrated circuits. This growth has been enabled by a powerful set
of electronic design automation (EDA) tools. The earliest EDA tools were two-
level logic minimization and PLA folding tools. Subsequently, EDA tools were
developed to address other aspects of the VLSI design flow (in addition to logic
optimization)suchastechnologymapping,layoutoptimization,formalverification.
However,researchinlogicsynthesisandoptimizationcontinuedtoprogressrapidly.
Some of the research in logic synthesis tools saw broader application, to areas far
removed from traditional EDA, and routinely continue to do so. While observing
the recent developments and publications in logic synthesis and optimization, we
feltthattherewasaneedforasingleresourcewhichpresentssomerecentsignifi-
cantdevelopmentsinthisarea.Thisishowtheideaofthiseditedmonographcame
about. We decided to cover some key papers in logic synthesis, optimization, and
its applications, in an effort to provide an advanced practitioner a single reference
sourcethatcoverstheimportantpapersintheseareasoverthelastfewyears.
This monograph is organized into five sections, dealing with logic decomposi-
tion,Booleansatisfiability,Booleanmatching,logicoptimization,andapplications
oflogictechniquestospecialdesignscenarios.Eachofthechaptersinanysection
is an expanded, archival version of the original paper by the chapter authors, with
additionalexamples,results,and/orimplementationdetails.
Wededicatethisbooktotheareaoflogicsynthesisandhopethatitcanstimulate
newandexcitingideaswhichexpandthecontributionoflogicsynthesistoareasfar
beyonditstraditionalstrongholdofVLSIintegratedcircuitdesign.
CollegeStation,Texas SunilP.Khatri
Hillsboro,Oregon KanupriyaGulati
v
Contents
1 Introduction .................................................. 1
SunilP.KhatriandKanupriyaGulati
1.1 LogicDecomposition ...................................... 2
1.2 BooleanSatisfiability ...................................... 3
1.3 BooleanMatching ......................................... 4
1.4 LogicOptimization ........................................ 4
1.5 ApplicationstoSpecializedDesignScenarios .................. 5
References ..................................................... 6
PartI LogicDecomposition
2 LogicSynthesisbySignal-DrivenDecomposition .................. 9
AnnaBernasconi,ValentinaCiriani,GabriellaTrucco,andTizianoVilla
2.1 Introduction .............................................. 9
2.2 DecompositionMethods.................................... 11
2.3 P-Circuits ................................................ 17
2.3.1 SynthesisAlgorithms............................... 19
2.4 MultivariableDecomposition................................ 21
2.5 ExperimentalResults ...................................... 24
2.6 Conclusion ............................................... 28
References ..................................................... 28
3 SequentialLogicSynthesisUsingSymbolicBi-decomposition ....... 31
VictorN.KravetsandAlanMishchenko
3.1 IntroductionandMotivation................................. 31
3.2 PreliminaryConstructs ..................................... 33
3.2.1 “Less-Than-or-Equal”Relation ...................... 33
3.2.2 ParameterizedAbstraction........................... 34
3.3 Bi-decompositionofIncompletelySpecifiedFunctions .......... 35
3.3.1 ORDecomposition................................. 35
3.3.2 XORDecomposition ............................... 36
vii
viii Contents
3.4 ParameterizedDecomposition ............................... 37
3.4.1 ORParameterization ............................... 37
3.4.2 XORParameterization.............................. 38
3.5 ImplementationDetailsofSequentialSynthesis ................ 39
3.5.1 ExtractionofIncompletelySpecifiedLogic ............ 39
3.5.2 ExploringDecompositionChoices.................... 40
3.5.3 SynthesisAlgorithm................................ 41
3.6 ExperimentalEvaluation.................................... 42
3.7 ConclusionsandFutureWork ............................... 44
References ..................................................... 45
4 BooleanFactoringandDecompositionofLogicNetworks .......... 47
RobertBrayton,AlanMishchenko,andSatrajitChatterjee
4.1 Introduction .............................................. 47
4.2 Background .............................................. 48
4.3 GeneralNon-disjointDecompositions ........................ 50
4.4 Rewriting K-LUTnetworks................................. 53
4.4.1 GlobalView ...................................... 53
4.4.2 CutComputation .................................. 54
4.4.3 CutswithaDSDStructure .......................... 56
4.4.4 CutWeight ....................................... 56
4.4.5 DecompositionandNetworkUpdate .................. 57
4.4.6 Finding the Maximum Support-Reducing
Decomposition.................................... 58
4.4.7 AdditionalDetails ................................. 60
4.4.7.1 UsingTimingInformationtoFilterCandidate
BoundSets .............................. 60
4.4.7.2 Restricting Bound Sets for Balanced
Decompositions .......................... 60
4.4.7.3 OpportunisticMUX-Decomposition ......... 60
4.5 ComparisonwithBooleanMatching.......................... 61
4.6 ExperimentalResults ...................................... 62
4.7 ConclusionsandFutureWork ............................... 64
References ..................................................... 65
5 AshenhurstDecompositionUsingSAT
andInterpolation .............................................. 67
Hsuan-PoLin,Jie-HongRolandJiang,andRuei-RungLee
5.1 Introduction .............................................. 67
5.2 PreviousWork ............................................ 69
5.3 Preliminaries ............................................. 69
5.3.1 FunctionalDecomposition .......................... 70
5.3.2 FunctionalDependency ............................. 71
5.3.3 PropositionalSatisfiabilityandInterpolation ........... 71
5.3.3.1 RefutationProofandCraigInterpolation...... 71
Contents ix
5.3.3.2 Circuit-to-CNFConversion................. 72
5.4 MainAlgorithms .......................................... 72
5.4.1 Single-OutputAshenhurstDecomposition ............. 72
5.4.1.1 DecompositionwithKnownVariablePartition. 72
5.4.1.2 Decomposition with Unknown Variable
Partition................................. 75
5.4.2 Multiple-OutputAshenhurstDecomposition............ 79
5.4.3 BeyondAshenhurstDecomposition................... 80
5.5 ExperimentalResults ...................................... 80
5.6 ChapterSummary ......................................... 84
References ..................................................... 84
6 Bi-decompositionUsingSATandInterpolation ................... 87
Ruei-RungLee,Jie-HongRolandJiang,andWei-LunHung
6.1 Introduction .............................................. 87
6.2 PreviousWork ............................................ 88
6.3 Preliminaries ............................................. 89
6.3.1 Bi-Decomposition ................................. 89
6.3.2 PropositionalSatisfiability .......................... 90
6.3.2.1 RefutationProofandCraigInterpolation...... 90
6.3.3 CircuittoCNFConversion .......................... 91
6.4 OurApproach ............................................ 91
6.4.1 ORBi-decomposition .............................. 91
6.4.1.1 Decomposition of Completely Specified
Functions................................ 91
6.4.1.2 DecompositionofIncompletelySpecified
Functions................................ 97
6.4.2 ANDBi-decomposition............................. 97
6.4.3 XORBi-decomposition............................. 98
6.4.3.1 Decomposition of Completely Specified
Functions................................ 98
6.4.4 ImplementationIssues ..............................101
6.5 ExperimentalResults ......................................101
6.6 Summary ................................................103
References .....................................................104
PartII BooleanSatisfiability
7 BoundaryPointsandResolution ................................109
EugeneGoldbergandPanagiotisManolios
7.1 Introduction ..............................................109
7.2 BasicDefinitions ..........................................111
7.3 Properties ................................................112