您的当前位置:首页正文

An Exact Algorithm for Practical Routing Problems

2022-06-05 来源:步旅网
AnExactAlgorithmforPracticalRoutingProblems

TetsuyaIizuka†,andKunihiroAsada†‡

†Dept.ofElectronicsEngineering,UniversityofTokyo‡VLSIDesignandEducationCenter,UniversityofTokyo

7-3-1Hongo,Bunkyo-ku,Tokyo113-8656,Japan

{iizuka,asada}@silicon.u-tokyo.ac.jp

ABSTRACT

Inthispaper,weproposeanexactalgorithmforpracticalroutingproblemsinautomatedcellgeneration.Weassumegrid-based,manhattantwolayermodel.Experimentalre-sultsshowthattheproposedmethodcangeneratebetterso-lutionsthancommercialtoolswithrespecttothewirelengthandthenumberofvias.OuralgorithmtakesaccountofthecharacteristicsofVLSIlayouts,suchassilicidesandVDD/GNDlines.Thisenablesustogenerateallpossibleroutingpatternsforrealcelllayouts.Ourmethodgeneratesallpossibleroutingpatternsundersomerestrictions,sowecanpickupoptimalpatternsbyvariouscostmetrics.

1.INTRODUCTION

Thecell-basedASICisoneofthemajormethodologiesfordesigningVLSI.DuetotherecentimprovementofVLSItechnology,onechiphasalargenumberofstandardcells.Therefore,thequalityofthefinaldesignheavilydependsonthequalityofthestandardcells.Butthedeep-submicrontechnologyleadssomenewproblemssuchassignalintegrity.ThiskindofproblemsbecomesmoredifficultinSoCcom-posedofdigitalcellsandanalogcells.Therefore,thesolu-tionsgeneratedbytheconventionalcellgenerationheuristicsarenotalwaysgoodfortherecentdeep-submicrontechnol-ogy.

Inthispaper,anexactroutingalgorithmispresented.Bygeneratingallpossibleroutingpatterns,wecanobtainex-actoptimalpatternsbyvariouscostmetrics.Exactrout-ingalgorithmswereproposedbyDevadas[1],Schmiedle[2],andSulimma[3].Amongthem,Schmiedle’smethodcangenerateallpatternsexactlybutcan’tsolvelargerproblemsthan4×4grids.Ontheotherhand,themethodsofDevadasandSulimmacansolvelargerproblems,butthismethodhas

SchmiedleProposedDevadas,SulimmaSearch SpaceFig.1Comparisonwithpreviousstudies

Second Layer MetalNetPortTerminal

1First Layer Metal321TrackColumnFig.2Definitionsoftheterminology

somerestrictionsandthesearchspaceofthismethodistoosmallforgeneralcellgeneration.Weproposeanewexactroutingalgorithmthatcansolveproblemswhichislargeenoughtogeneratestandardcellroutingpatterns,anditssearchspaceismuchlargerthanthatofSulimma’smethodbyusingmorepracticalrestrictions.

Fig.1conceptuallycomparesthesearchspaceofourmethodwiththatofthesealgorithms.Fig.2definesterminologiesinthispaper.Someofthemareexplainedasbelow.Column:averticalrowofthegridbasedmodelTrack:ahorizontalrowofthegridbasedmodel

Port:anedgeofthenetwhichextendstothenextcolumnTerminal:apointofacontactholetodiffusionofgate-polysiliconlayer

InSection2,theproposedalgorithmisdescribed.Experi-mentalresultsarepresentedinSection3,followedbycon-clusionsinSection4.

2.ALGORITHM

Inourapproach,wetakethefollowingcharacteristicsofstandardcelllayoutsintoconsideration.

Cellheight:Theheightofeachstandardcellmustbecon-stant.

Portsplacement:Theportsofstandardcellsmustbeonthe

predeterminedgrids.

Silicide:IfthesilicidesareontheP/Ndiffusion,itisenough

toplaceacontactholeononegridforeachdiffusion.VDD/GNDlines:TheVDD/GNDlinesarenormallyrunon

thetop/bottomofindividualcells.Amongthesefourcharacteristics,theformertwoareauto-maticallytakenintoconsiderationbythegrid-based,fixed

Sulimma's methodProposed method1111111111111111121can not generate221211any patterns111Fig.3Differencesofroutingrestrictions

regionmodel.

TheVDD/GNDcharacteristicsarehandledasfollows.WedefinethattheterminalsNo.1areconnectedtotheVDDline,andtheterminalsNo.2areconnectedtotheGNDline.TheterminalstobeconnectedtotheVDDwillbeconnectedtothetopoftheroutingregion,andterminalstobecon-nectedtotheGNDwillbeconnectedtothebottom.

Asforthesilicideweexplainitwiththepatterngenerationinsideeachfunction

Inshortourmethodissummarizedasfollows:1.agridbasedmodel

2.amanhattantwolayermodel

3.obstaclesofarbitraryshapesinanylayers4.silicidesofarbitraryshapes5.

placementsofVDD/GNDlines

Here,weintroducemorepracticalrestrictionofroutingmod-elsthanthatofthepreviousexactroutingalgorithms[1,3].Themainrestrictionofpreviousexactroutingalgorithmsisthatiftherearesplitnetswhichbelongtothesameterminalinonecolumn,theymustbeconnectedinsidethecolumnwhichthesenetsarecontainedin.Thismeansthateachsig-nalcrosseseachverticalcolumnoftheroutingproblematmostonce.Becauseofthisrestriction,thesemethodcannot

Grid model problemFor each columnRoutingAll columnssolutionsare finishedFor each pattern of All patternsprevious columnare finishedDetermine the pattern to be Check if each pattern is validrouted in current columnor not at the next columnFind split ports and insertGenerate all possible portspossible 2nd layer metalspatterns to the next columnGenerate all possible 2ndDetermine the ports to be layer metal patternsextended to the next columnFig.4Ouralgorithmflow

This pattern is passed Column No.x-2x-1xx+1x+2from the column No. x-1

to the column No.x.63335

44144

41366662541

506Track No.: Silicide(a)(b)Fig.5Example

routemostofpracticalprobleminstances.Inordertoexpandthesearchspace,weusetherestrictionasbelow.

•Ifthesplitnetsarenotconnectedinsideacolumn,eachsplitportionofthenetextendstothenextcolumn.Thesearchspacebecomesmuchlargerbyintroducingtheaboverestriction.Fig.3illustratesthedifferencesbetweentheserestrictions.

Fig.4illustratestheflowofouralgorithm.Ourmethodstartsfromleftedgetoright,columnbycolumn.Insideeachcol-umn,allpossiblepatternsaregeneratedforeachpatternofthepreviouscolumnbygoingthroughtheproceduresillus-tratedinFig.4.Eachprocedureisimplementedasafunc-tion.WedescribeeachfunctionbyuseoftheexampleinFig.5.TheexampleinFig.5(a)indicatesaproblemtogen-eratethenextpatternsincolumnNo.x.TheportspatternpassedfromthecolumnNo.x-1tothecolumnNo.xisillustratedinFig.5(b).

Function“decideColumnPattern”:Atfirst,thepatternofprobleminthecurrentcolumnisdetermined.Inthisfunc-tion,wecheckthecurrentandpreviouscolumns.Iftheter-minalsinthecurrentcolumnareonthesilicide,whichisalreadyconnectedinsidethepreviousorthecurrentcolumn,weneednottoconsidertheseterminals.Therefore,suchter-minalsareremoved.Inthisexample,theterminalsNo.3andNo.4areremovedasillustratedinFig.6,becausetheterminalNo.3isalreadyconnectedinthecolumnNo.x-2andtheterminalNo.4isalreadyconnectedinthecurrentcolumn.

3444444666665555555556666(a)(b)Fig.6“decide-ColumnPattern”

Fig.7“connectSplitPort”

Function“connectSplitPort”:Inthisfunctionwefindthesplitports(i.e.theportswhicharenotconnected)fromthepatterngivenbythepreviousfunction.Afterfindingthesplit

44444464666665555555666(a)(b)(c)Fig.8Allsecondlayermetalpatternsgeneratedinthefunction“generateExactLayer2”

ports,wepermutetheseportsandmakeallthepatternsoforder.Weinsertthesecondlayermetalsintothepossibleplaceineachorder.Finally,weremovetheduplicatedpat-ternsfromgeneratedpatterns.Inthecaseofthisexample,theportswhoseNo.is5and6aresplitports.Weper-mutethesenumbersandcanalignthem(5,6),and(6,5).Fig.7illustratespatternswhichismadefromthisfunctionafterinsertingthepossiblesecondlayermetalsineachorder.Fig7(a)isfromtheorderof(5,6),and(b)isfromthatof(6,5).Inthecaseofthisexample,wecannotconnectboththeNo.5netsandtheNo.6netsinthiscolumn.Therefore,Sulimma’smethodfailsinthissituation.

Function“generateExactLayer2”:Wegenerateallthepos-siblesecondlayermetalpatternsfromeachpatterngener-atedbefore.Allpatternsgeneratedinthisfunctionareillus-tratedinFig.8.Fig8(a),(b)isgeneratedfromthepatternofFig.7(a),andFig.8(a),(c)isgeneratedfromthatofFig.7(b).Theduplicatedpatternsareremoved.Then,wecheckthesilicideinthecurrentcolumn.Weremovetheter-minalwhichisalreadyconnectedinthecurrentcolumnbymeansofsilicidelikeasin“decideColumnPattern”.Function“removeRightEdge”:Inthisfunction,wefindthenetswhicharealreadyconnectedandnoterminalswhichbelongtothesamenumberappearsinthefollowingcolumns.Itisnotnecessarytoextendportsfromsuchnetstothenextcolumn.Eventhoughtherearesuchterminalsinthefollow-ingcolumn,wehavenoneedtoextendportstothesetermi-nalsiftheyarealreadyconnectedbymeansofsilicidesinthepreviouscolumns.Forexample,thepatternofFig.8(a),itisnotconnectedtoallNo.5netsyet,sothesenetsmustbeextendedtothenextcolumn.Ontheotherhand,No.4netisalreadyconnectedbutthereisNo.4terminalinthefollowingcolumn(Fig.5(a)),sowemustextendaporttothenextcolumn.InthecaseofFig.8(b),allNo.5netsarealreadyconnected,weneednotextendportstothenextcolumnbecausethereisnoterminalswhichbelongtoNo.5inthefollowingcolumns.InthecaseofFig.8(c),allNo.6netsarealreadyconnectedandthereareNo.6terminalsinthefollowingcolumns,butweneednottoextendNo.6portstonextcolumnbecausethefollowingterminalsarealreadyconnectedbymeansofsilicidesintheNo.xcolumn.Function“generateNextPattern”:Inthisprocedure,weconsidertheseportswhicharedeterminedtobeextendedtothenextcolumnbythepreviousfunction“removeRight-Edge”.Wechangetheplacementofportswhichextendtothenextcolumnbyinsertingthepossiblesecondlayermetals.

6555666(b-1)

(b-2)

(b-3)

446466555666(b-4)

(b-5)

(b-6)

Fig.9AllpatternsgeneratedfromthepatterninFig.8(b)

Fig.9illustratesallthepatternsgeneratedfromFig.8(b).Function“addLeftEdge”:Inthisfunction,wecheckiftheplacementoftheportsandthatofterminalsforeachgener-atedpatterngivenfromthepreviousfunctionisvalidornot.Iftheportgoesintotheterminalwhichhasdifferentnumberfromthatoftheport,itisclearthispatternisimpossible.Butweallowthepatternwhoseportsgoesintotheterminalswhichhavethedifferentnumberifthoseterminalsareonthesilicideandothergridsonthesamesilicidearefreei.e.noportsareonthesegrids.InFig.9,(b-1),(b-3),(b-4),(b-5),and(b-6)haveportswhichcovertheterminalsofdifferentnumberinthenextcolumn.Butonlythepatternof(b-4)isremovedbecauseonlythispatterncoversalltheNo.1ter-minalswhichareconnectedtoeachotherbymeansofthesilicide.Finally,(b-1),(b-2),(b-3),(b-5),and(b-6)inFig.9remainaspossiblepatternsfromFig.8(b)atthiscolumnandarepassedtothenextcolumn.

3.EXPERIMENTALRESULTS

WehaveimplementedtheproposedalgorithminC.Atfirst,wepresenttheresultsoftheproblemmodelswhichhavenosilicidesandVDD/GNDlines.Weevaluateditsperformanceusingseveralexamples.Hereweused8tracksforthesam-pleproblemsbecauseitispracticalenoughtogeneratetheexistingstandardcells.Forexample,wepresentoneoftheresultsgeneratedbyouralgorithminFig.10.

Wecompareditwithareferencemethodcommerciallyavail-ableroutingproblembaseonrip-upmazeroutingalgorithm.Inthiscase,weappliedthemanhattantwolayermodeltothereference.InTable1,thecomparisonsofCPUtimesandthenumberofthesolutionsaregiven.“Obstacles”inthetablemeanstheseexampleshaveobstaclesonsomegrids.FromTable1,ourmethodspentmuchmoreCPUtimethantheref-erence,becauseourmethodgeneratesallpossiblepatternswhereasthereferencegeneratesonlyonenearoptimalsolu-tion.Table1showsthatSulimma’smethodcannotgenerateanypatternsfortheseexamples.Thisdemonstratesthatthe

Table1CPUtimesandthenumberofthesolutions

Example

Reference

Sulimma

Proposed#Tracks×#Columns8×15CPUTime(s)

9

275#Solutions

1Nosolution1118×15CPUTime(s)61634obstacles#Solutions1Nosolution1068×20CPUTime(s)

8902#Solutions

1Nosolution8958×20CPUTime(s)102621obstacles#Solutions

1

Nosolution

39585

241477

64912746133

1

64544556

6115

57

5

5

5

82

3

69248

8879

5

7

1

19

: Metal 1

: Metal 2

: Contact

: Via

Fig.10Oneoftheresultsofthe8×20problemsearchspaceofourmethodislargerthanthatofSulimma.Table2comparesoursolutionswiththatroutedbytherefer-ence.Thewirelengthiscalculatedassuming3µmpergrid.Table2showsthatourmethodcangeneratebettersolutionsthanthatofreferenceintermsofthenumberofviasandwirelength.TheseresultsshowthatouralgorithmcangeneratebettersolutionsthanthatofsomeheuristicsandcansolveproblemsofpracticalsizeinlargersearchspacethanthatofSulimma.

Second,wepresenttheresultsoftheproblemswhichhavesilicidesandVDD/GNDlines.Fig.11(a)illustratesthereallayoutofasamplecell.WetransformedthislayoutintoagridbasedproblempresentedinFig.11(b).FromFig.11,thisproblemhavesilicideonsomegrids.Therefore,theref-erenceandSulimma’smethodcannotgeneratesolutionsforthissampleproblem.Ourmethodgenerated29205solutionsin3917secondsCPUtimeforFig.11(b).Twooftheso-lutionsareillustratedinFig.12.Fig.12(a)isanoptimalpatternintermsofwirelength,andFig.12(b)isanoptimalpatternintermsofthenumberofthecrosspointsbetweenthefirstandthesecondlayermetals.Theseresultsshowthatwecanobtainoptimalpatternsbyvariouscostmetricsforroutingproblemsofreallayoutpattern,bygeneratingallpossibleroutingpatternsundersomerestrictions.

4.CONCLUSIONS

Inthispaper,weshowedthatbyusingmorepracticalrestric-tionsthanthatofSulimma’s,ourmethodcansolveprob-lemslargeenoughtoapplytorealcelllayoutroutingprob-lemsandhavemuchlargersearchspace.Thisenablesustosolvemuchmorepracticalroutingproblemswhichcan-notbesolvedbySulimma’smethod.Weshowthatwecanobtainoptimalsolutions,whichtheconventionalheuristicscan’tgenerate,bygeneratingallpossibleroutingpatternswithourmethod.Wealsoshowedthatourmethodcangen-

Table2Characteristicsofgeneratedsolutions

Example

Reference

ProposedProposed#Tracks×#Columnsviamin

wiremin

8×15#vias

464646wire(µm)

3963963968×15#vias454445obstacleswire(µm)3633663578×20#vias

616060wire(µm)

5615525528×20#vias626163obstacleswire(µm)

474

474

465

3515351535154367: Silicide

467323232323232(a)

(b)

Fig.11Asampleproblem:(a)isareallayoutpattern.(b)isagridbasedmodeltransformedfrom(a).

VDDVDD

5

5

: Metal 1

355

3436

7436

746

7

46

7

: Metal 2

3

33

3: Silicide

GND

GND

GNDGND

(a)(b)

Fig.12Patternsroutedbyproposedmethoderateallpossibleroutingpatternsofrealstandardcelllay-outs,sowecanobtainoptimalpatternsbyvariouscostmet-rics.

REFERENCES

[1]SrinivasDevadas,“OptimalLayoutViaBoolean

Satisfiability,”inProc.IEEEInt.Conf.onComputerAidedDesign,pp.294-297,1989.[2]F.Schmiedle,R.Drechsler,andB.Becker,“Exact

ChannelRoutingUsingSymbolicRepresentation,”inProc.IEEEInt.Symp.onCircuitsandSystems,pp.394-397,1999.[3]KoljaSulimma,andWolfgangKunz,“AnExact

AlgorithmForSolvingDifficultDetailedRoutingProblems,”inProc.ACMInt.Symp.onPhysicalDesign,pp.198-203,2001.

因篇幅问题不能全部显示,请点此查看更多更全内容