22
On segmented chann On segmented chann el routability el routability Hung, W.N.N.; Xiaoyu Song; Coppola, A.; Kenni Hung, W.N.N.; Xiaoyu Song; Coppola, A.; Kenni ngs, A. ngs, A. Circuits and Systems, 2002. ISCAS Circuits and Systems, 2002. ISCAS 2002. IEEE International Symposium 2002. IEEE International Symposium on , Volume: 1 , 26-29 May 2002 on , Volume: 1 , 26-29 May 2002

On segmented channel routability Hung, W.N.N.; Xiaoyu Song; Coppola, A.; Kennings, A. Circuits and Systems, 2002. ISCAS 2002. IEEE International Symposium

Embed Size (px)

Citation preview

On segmented channel On segmented channel routability routability

Hung, W.N.N.; Xiaoyu Song; Coppola, A.; KeHung, W.N.N.; Xiaoyu Song; Coppola, A.; Kennings, A.nnings, A.

Circuits and Systems, 2002. ISCAS 2002. IEECircuits and Systems, 2002. ISCAS 2002. IEEE International Symposium on , Volume: 1 , E International Symposium on , Volume: 1 ,

26-29 May 2002 26-29 May 2002

OutlineOutline

Introduction Introduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability - Doglegged routability- Doglegged routability Experiment result Experiment result Conclusion Conclusion

Introduction Introduction

Check routability used boolean equatioCheck routability used boolean equationn

Provides exact routability guarantees.Provides exact routability guarantees. Can incorporate incrementally updates fCan incorporate incrementally updates f

or new additional performance driven cor new additional performance driven constraints.onstraints.

OutlineOutline

IntroductionIntroduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability - Doglegged routability- Doglegged routability Experiment result Experiment result Conclusion Conclusion

Preliminary Preliminary

The model of segmented routing The model of segmented routing

horizontal switchhorizontal switchcross switchcross switchT, N, M T, N, M left(c), right(c)left(c), right(c)left(s), right(s)left(s), right(s)Q(s, c)=(right(s)>left(c))^(left(s)<right(c))Q(s, c)=(right(s)>left(c))^(left(s)<right(c))

1 2 3 4 5 6 7 8 9 10

columns

t3t2t1

tracks

c1

c2

c3c4

OutlineOutline

IntroductionIntroduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability - Doglegged routability- Doglegged routability Experiment result Experiment result Conclusion Conclusion

Dogleg-free routabilityDogleg-free routability What is dogleg-free routing?What is dogleg-free routing? net can be assigned to at most one tracknet can be assigned to at most one track Track assignment representationTrack assignment representation

Constraint for :Constraint for : 0<= <= T-1 , for all c C (1)0<= <= T-1 , for all c C (1)

)()...()()( 21 cvcvcvcv w wicvTw i ,.....,2,1},1,0{)(,)(log 2

)(cv)(cv

Unlimited segment rotingUnlimited segment roting Occupancy function h(c, s, t) :Occupancy function h(c, s, t) : h is true iff segment s on track t is occupied by net c. h is true iff segment s on track t is occupied by net c. For each net :For each net :

(2)(2) The necessary and sufficient routibility condition is :The necessary and sufficient routibility condition is : (1) (2) (1) (2)

)1)((),(),,( tcvcsQtsch

T

t Gs

nm

Cnmt

tsnhtsmh1 ,

)),,(),,((

K-segment routingK-segment routing Left-most segment and right-most segment occuLeft-most segment and right-most segment occu

pied by net c:pied by net c: K-segment constraint:K-segment constraint:

(3)(3) K-segment routibility condition:K-segment routibility condition: (1) (2) (3) (1) (2) (3)

)}(),(|max{),(

)}(),(|min{),(

ttjtj

ttjtj

GscsQjtcmright

GscsQjtcmleft

)),(),(())((,, tcmlefttcmrightKtcvCct

Add performance driven Add performance driven constraintconstraint

ΨΨ: the set of nets on the critical path: the set of nets on the critical path ωω : the set of performance driven tracks: the set of performance driven tracks Performance constraint :Performance constraint : (4)(4) Performance driven routibility conditioPerformance driven routibility conditio

n: n: (1) (2) (3) (4)(1) (2) (3) (4)

tcvtc )(,,

OutlineOutline

IntroductionIntroduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability

- Doglegged routability- Doglegged routability Experiment result Experiment result Conclusion Conclusion

Doglegged routabilityDoglegged routability What is doglegged routing?What is doglegged routing? a net can be assigned to more than one track.a net can be assigned to more than one track. split net c into p (p>=1) part:split net c into p (p>=1) part: (left(c),l1),(l1+1, l2),……,(lp-1,right(c))(left(c),l1),(l1+1, l2),……,(lp-1,right(c)) Track assignment representation:Track assignment representation:

Constraint for Constraint for 0 <= <= T-1, for all c C, and i=1, 2,…,pm(c) (5)0 <= <= T-1, for all c C, and i=1, 2,…,pm(c) (5)

qjicuTq

cpi

icuicuicu

j

m

p

,...,2,1},1,0{),(,log

)(,....,2,1

),(),....,,(),(

2

1

),( icu

Horizontal wiring contraintsHorizontal wiring contraints Occupancy function Occupancy function

true iff segment s on track t is occupied by the ith ptrue iff segment s on track t is occupied by the ith part of net c.art of net c.

For each net : For each net :

(6)(6)

)),()(()),()((),,(

)(,...,2,1

)1),((),,(),,,(

icprightslefticpleftsrighticsQ

cpi

ticuicsQtsich

d

m

dd

T

t Gs

nm

Cnm

mp

i

np

jdd

t

m m

tsjnhtsimh1 ,

)(

1

)(

1

)),,,(),,,((

Vertical wiring contraintsVertical wiring contraints Each column can be occupied by at most one net .Each column can be occupied by at most one net .

vertical constraint:vertical constraint:

(7)(7) doglegged routibility condition:doglegged routibility condition: (5) (6) (7)(5) (6) (7)

),(,

))(())((),(

),()),1,(),(({),( icRfalse

crighticleftiicR

icRicuicuicx

N

i

nm

cnm

nLiinximx1 ,

))))((),((),((

K-segment routingK-segment routing

To limit the max number of segment used by any netTo limit the max number of segment used by any net

For all net :For all net :

(8) (8)

K-segment routibility condition:K-segment routibility condition: (5) (6) (7) (8)(5) (6) (7) (8)

),,,()},(,...,1{),,( tsichcpitscused dm

CcallfortscusedKT

t Gs t

1

),,,(

Track limitationTrack limitation

To limit the max number of distinct tracks To limit the max number of distinct tracks used by each net cused by each net c

For each net For each net (9)(9) Track limitation condition:Track limitation condition: (5) (6) (7) (9)(5) (6) (7) (9)

)(,....,2,1

)),(),(()()},(,...,i{),(

cpiwhere

jcuicujicpjicdiff

m

m

Ccallforicdifflcp

i

m

)(

1

),,(

Column limitationColumn limitation

Net can only switch tracks at predetermined Net can only switch tracks at predetermined columns. columns.

(10)(10)

Column limitation condition Column limitation condition

(5) (6) (7) (10)(5) (6) (7) (10)

))1,(),(())())(((),(

),()1)((1)(

1

icuicuciclefticnw

icnwcpCc

cp

im

m

OutlineOutline

IntroductionIntroduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability - Doglegged routability- Doglegged routability Experiment resultExperiment result Conclusion Conclusion

Experiment result(1) Experiment result(1)

Experiment result(2)Experiment result(2)

OutlineOutline

IntroductionIntroduction PreliminaryPreliminary Routability formulationRoutability formulation - Dogleg-free routability- Dogleg-free routability - Doglegged routability- Doglegged routability Experiment result Experiment result Conclusion Conclusion

Conclusion Conclusion

Satisfiability-based method for segmentSatisfiability-based method for segmented channel routabilityed channel routability

time efficiency and applicability to lartime efficiency and applicability to large problem instances. ge problem instances.