+ All Categories
Home > Documents > Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted...

Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted...

Date post: 11-Oct-2020
Category:
Upload: others
View: 6 times
Download: 0 times
Share this document with a friend
40
Routing (4541.554 Introduction to Computer-Aided Design) School of EECS Seoul National University
Transcript
Page 1: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Routing(4541.554 Introduction to Computer-Aided Design)

School of EECSSeoul National University

Page 2: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Introduction

Introduction• Detailed routing

– Unrestricted• Maze routing• Line routing

– Restricted• Switch-box routing: fixed pins on four sides• Channel routing: fixed pins on two sides• River routing: Single layer (no crossing)

• Global routing (or loose routing)• Channel definition and ordering• Power and ground routing• Clock routing

switch-box

channel

general routing

area

Page 3: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Detailed Routing

Detailed Routing• Problem definition

– Given a region with pins on its sides and possibly in the middle, and a net list, determine the interconnection geometry

• Objective functions– Minimize overall wire length– Minimize maximum wire length

--> minimize maximum signal delay– Minimize number of tracks

--> minimize area occupied by routing– Minimize number of vias

• yield, resistance/capacitance, area– Minimize (maximize) use of particular layers

Page 4: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

Unrestricted Routing• Lee-Moore Algorithm (Maze Routing)

– Fixed grid, Manhattan– One net at a time– Problems

• Dependency on net ordering• Large memory requirement<-- one storage element (2 bits) for every cell

• Long search time<-- ∝(connection length)2

– Improvement by rip-up and re-route 44 3 4

4 3 2 3 44 3 2 1 2 3 4

4 3 2 1 s 1 2 3 44 3 2

4 34 d

Page 5: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

• Rip-up and Re-route– H.Shin and A.Sangiovanni-Vincentelli, "Mighty: A 'rip-up

and re-route' detailed router," Proc. ICCAD, 1986– Incremental router– Path finder

• Maze routing is used to find the minimum cost path between two pins

• Build a list of nets with the order of ascending cost• Vertical (horizontal) wire on horizontal (vertical) layer is

penalized• Changing a layer is penalized to minimize the number of

vias– Path conformer

• After all paths have been found, implement the path according to the order

• If the path is not feasible, call path finder• If no path is found or cost is too high, call weak modifier

Page 6: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

– Weak modifier• Pushes existing wires to make space• No solution --> call strong modifier

x

x

x

x

Page 7: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

– Strong modifier• Removes blocking nets to make space

– Post processing• All the nets are re-routed from the longest net• Vertical (horizontal) wires on horizontal (vertical) layer are

less penalized– Example

• 176 sec on VAX 11/785• 31 weak modification• 9 strong modification

Page 8: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

• Line Routing– D.W.Hightower, "A solution to line routing problems on

the continuous plane," Proc. 6th Design Automation Workshop, 1969

– Gridless (often implemented on a grid)– Manhattan– Definitions

• Escape line: pair of orthogonal lines passing through a point

• Cover: Blockage of a point. Intersects with an escape line.• Escape point: A point on an escape line that is not covered

by a horizontal (vertical) cover

Page 9: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Unrestricted Routing

– Algorithm• Starting from the source and sink, generate escape lines

and determine escape points until escape lines intersect

Page 10: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Switch-Box Routing

Switch-Box Routing• Weaver

– R.Joobbani and D.Siewiorek, "Weaver: a knowledge-based routing expert," IEEE Design and Test of Computers, Feb. 1986

– Switch-box + channel routing– Knowledge-based expert system– Algorithmic part(C) + 700 rules(OPS5)– 11 experts (including user)– Interactive

• User can override system decision• Pre-route or delete wiring segments

– Long running time

Page 11: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Switch-Box Routing

– Weaver architecture

constraintpropagation

wirelength

user

focus ofattention

vert/horizconstraint

merging

congestion

commonsense

via

patternrouter

MRST

Experts

problemrepresentation

partition

decisionrepresentation

partition

scratch padpartition

blackboard

currentstate

privatesection

accessedby all

experts

expertpriority

nets to beroutednext /

can bemodified

Page 12: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Switch-Box Routing

– Constraint propagation

24 17 16 4 7 6 5 9 8 0 9 12 15 24 15 10 23 1 0 0 22 18 0

3104

161217291

2411131400

15 0 2 4 12 7 6 9 5 8 13 15 14 15 0 21 20 1 2 19 1 18 0

18222

23182111201820024193

15

Page 13: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Switch-Box Routing

– Pattern router

24 17 16 4 7 6 5 9 8 0 9 12 15 24 15 10 23 1 0 0 22 18 0

3104

161217291

2411131400

15 0 2 4 12 7 6 9 5 8 13 15 14 15 0 21 20 1 2 19 1 18 0

18222

23182111201820024193

15

Page 14: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

Channel Routing• Problem Formulation

– Assumption (original formulation)• Rectangular routing region with no obstructions• Fixed pins on two opposite sides• Floating pins on the other two sides• Two layers for interconnections• Pins are placed on a regular grid• Channels are subdivided into rows (tracks)

– Minimize number of tracks and number of viasterminal

terminal

track

dogleg

top

bottom

trunk

branch

Page 15: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• Algorithms– Left edge algorithm

• At most one trunk per net• Compute intervals for each net• Sort the intervals in ascending order of left edge's location• Assign intervals to available tracks• Overlap problem

ab

cd

ab

c

d

e e

d

a b c

ea

e

ab

c

d

e

e

a b c

ea

d

ab

c

d

e

e

a b c

ea

d

ab

c

d

e

d

a b c

ea

e

Page 16: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Constrained left edge algorithm• VCG (Vertical Constraint Graph)

– Vertex: net– Edge (directed): from a net connecting a top terminal to a net

connecting a bottom terminal on the same column

A

BC

D

E F

G

HI

J

A

C

ED

IJ

G

F

B

H

Page 17: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• HCG (Horizontal Constraint Graph)– Vertex: Net– Edge: Intersection between two intervals– Interval: Leftmost and rightmost column of a net– Density: Maximum number of intervals crossing a column

--> size of the largest clique in HCG• Density can be used as a lower bound on number of tracks

– Interval graph

1 2 2 4 5 8 0 0 10 9 9 6 37

2 4 5 8 8 10 0 0 9 7 6 3 13

12

34

56

78

910

1

2 45

63

7

9

10

8

Page 18: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Branch and bound• B.W.Kernighan, D.G.Schweikert, and G.Persky, "An

optimum channel-routing algorithm for polycell layouts of integrated circuits," Proc. 10th Design Automation Workshop, 1973

• Select a leftmost net that satisfies the vertical constraint• If the current track t is filled, compute the lower bound b• If t+b ≥ V (V is the best solution seen so far), replace the

most recently placed net by the next unplaced nets=0; t=1; V=n;place: do while track t is not full & last net is not placed

place next leftmost legal net on track t;s=s+1; netlist(s)=net placed;

if track t is fullcompute b=lower bound on tracks needed for remaining nets;if t+b < V

t=t+1; goto place;unplace netlist(s); goto place;

if n-th net is placedrecord new solution; V=t;unplace netlist(s); unplace netlist(s);goto place;

netlist

netlist

Page 19: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• Computation of lower bound– In the vertical constraint graph, static lower bound s of a net

is computed by (largest lower bound of the net’s children) + 1

– Dynamic lower bound b is computed considering the static bound and overlap of unassigned nets (matrix is used)

– If a net spanning from column L to R has static bound of s, then add 1 to matrix components M(s,L),...,M(s,R)

– Algorithm

da

bf

ed

a

bc

e f

c

s

column

1 2 3 4 5 6 7 8 9 10 11 12

1 2 3 4 5 6 7 8 9 10 11 12for j = 1, max_column

b(j) = 0;for i = 1, max_s

b(j) = max(i, b(j)+M(i,j));end for;

end for;b = maxj b(j); 1

2

3 1

1

21

13 2

1 1 1 1

1 22 2 2 2

1 1 11 1 1 1

1 11 1

1 1 0 0

0 0

0

0 0 0 0 0

0 0

Page 20: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– The dynamic lower bound is not exact since it is computed column-wise.

d

ab

a

b

c d

c

s

column

1 2 3 4 5 6 7

1 2 3 4 5 6 7

1

2

3 11 1 0 0

0 10 2 2 1

0 0 1 1 1 0

0 0

0

1

3

2

d

ab

a

b

c d

c1 2 3 4 5 6 7

1

3

2 0

Page 21: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Zone

zones1 2 3 4

da

bf

e

c

1 2 3 4 5 6 7 8 9 10 11 12

da

bf

e

c

1 2 3 4 5 6 7 8 9 10 11 12

zones1 2 3 4

da

bf

e

c

Page 22: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Speed improvement to branch and bound algorithm• T.Yoshimura and E.S.Kuh, "Efficient algorithms for

channel routing," IEEE Trans. on CAD of ICAS, Jan. 1982• Branch and bound technique gives the optimum solution

to the restricted (no dogleg) channel routing problem which isNP-complete --> long runtime

• Net merging (merged nets --> same track) simplifies the problem (smaller VCG)

• Candidate nets (i,j) for merging– No overlap between i and j --> No edge (i,j) in HCG– There is no path from i to j in VCG

• Algorithm:Select and merge nets iterativelyAssign merged nets to tracksSeparate nets

• Heuristic– Select nets to be merged so that

longest path in reduced VCG is minimal

ik

j

ij

ij

i

k

j

merge

length=2 length=3

Page 23: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Dogleg channel router• D.N.Deutsch, "A 'dogleg' channel router," 13th Design

Automation Conf., June 1976• Doglegs are allowed

• Observations– Usually a few crucial nets such as clock lines are heavily

connected to both sides of the channel--> long constraint chain--> require many tracks

Page 24: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• Doglegs are introduced only at terminal positions of the net

• Divide long connections into a series of two-pin connections

• To avoid generating too many doglegs, 'range' concept is used

– Range: Number of consecutive trunk segments that must be assigned to the same track

Page 25: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

– Jog insertion• J.Reed, A.Sangiovanni-Vincentelli, and M.Santomauro,"A

new symbolic channel router: YACR2," IEEE Trans. on CAD, July 1985

• Allows horizontal jogs on vertical layer and vertical jogs on horizontal layer

• Algorithm– Horizontal track assignment

--> Uses modified LEA to assign nets to tracks minimizing number of vertical constraint violations (allows vertical constraint violations)

– Maze routing– If routing fails, add a track and restart

• Preprocessor translates pin locations into a symbolic grid.• Postprocessor translates the symbolic routing to geometry.

Page 26: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• Maze1 routing

i

jij

verticalconstraintviolation

i

jij

aftermaze

routing

i

ji

j

morecomplexexample

Page 27: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Routing

• Maze2, Maze3 routing

i

ji

j

i

ji

j

i

ji

j

i

ji

j

Page 28: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

Channel Definition and Ordering• Routing Region Definition and Ordering

– W.M.Dai, T.Asano, and E.S.Kuh, "Routing region definition and ordering scheme for building-block layout," IEEE Trans. on CAD, July, 1985

– Channel routers are the most effective detailed routers– Tasks

• Partition layout area into module area and routing area• Identify channels for routing• Determine order of channels to be routed

Page 29: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

– Supports non-slicing structures– Define tiles

• Block tiles (for modules)• Space tiles (for routing)

– Define maximal space tiles• Horizontal tile plane• Vertical tile plane

– Replace dominant tiles by walls--> Floor plan graph

space tile

block tile

Horizontal tile plane

subordinate tile

dominant tile

Vertical tile planeFloor plan graph

external junctioninternal junction

'T' type junction

'+' type junction

emptyroom

wall

wall segment

Page 30: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

– Wall segments: channels– Wall precedence relation

--> ordering

– T junction: vertical segment before horizontal segment

Floor plan graph

external junctioninternal junction

'T' type junction

'+' type junction

emptyroom

wall

wall segment

Page 31: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

– Requirements for channel routing• Pin definition requirement: Positions of all pins along the

two edges of a channel must be fixed• Rigidity requirement: A channel already routed cannot be

altered in its channel direction

– Cycle in the precedence relation--> L-shaped channel to break the cycle

1

2

3

4

1

2 channel direction Channel 1 must be routed first

Page 32: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

– Width of L-shaped channels can be adjusted without destroying previously routed channels (how about switchbox?)

– '+' type junction• Needs normalization• Slicing structure provides acyclic precedence relation

non-slicing structure

slicing structure

Page 33: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Channel Definition and Ordering

– Algorithm• Wall slicing and Corner cutting• Channel definition stack

A

E

C

D

B

FG

A

GFEDCB

external junction

external junction

EA

D C

B

F

GH

I

j

Page 34: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

4

3

21

Channel Definition and Ordering

• Corner dependency

• Empty room– One of the four wall segments adjacent to an empty room is

ignored

aD

cb

A

DCB

AB

Cde

5

Page 35: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Global Routing

Global Routing• Goal

– Distribute nets over channels– Minimize

• Total net length• Critical net lengths• Congestion

• Approaches– One net at a time

• Depends on order• Cost function

C = aL + b / cT+1

L: channel lengthT: Tracks available

– All nets at once• 0-1 linear program• Simulated annealing• Hierarchical routing

Page 36: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Global Routing

• Integer (0-1) linear programming– Assume two-terminal nets (can be generalized)

– Minimize cost

– Subject to constraints

C1,2,...,c ,T xa

N1,2,...,n 1, x

P1,2,...,p N,1,2,...,n 0, x

c

N

1n

P

1pnp

cnp

P

1pnp

nnp

n

n

=≤

==

==≥

∑∑

= =

=

∑ ∑∑= = =

C

1c

N

1n

P|

1pnp

cnpc

n

xaL|

⎩⎨⎧

=

⎩⎨⎧

=

otherwise 0P in p path uses n net if 1

x

otherwise 0

c channel uses P in p path if 1 a

n net for paths of Set :P

nnp

ncnp

n

Page 37: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Power and Ground Routing

Power and Ground Routing• Special Routing

– Usually on a single layer (no vias)--> planar routing

– Usually much wider (more current)• MOSAICO

– Macrocell place and route system– Assume power and ground rings around the chip– Before placement, decompose power and ground nets

into smaller nets– Merge the nets after global routing– Find power requirement– After symbolic detailed routing, find the sub-net (power

and ground) widths

merge

Page 38: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Cross-Coupling

Cross-Coupling• Problem

– Routing in deep sub-micron design• Thin wire

– Large interconnect delay– delay ∝ (wire length)2

--> Al --> Cu• H > W

– Delay due to larger edge (horizontal) capacitance– Cross-talk with neighboring wires--> Permutation of signal wires or

Interleaving with power and ground wires

Page 39: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Cross-Coupling

• Reduction of Cross-Coupling– Joon-Seo Yim and Chong-Min Kyung, "Reducing cross-

coupling among interconnect wires in deep-submicron datapath design," Proc. 36th Design Automation Conf., June 1999

– Miller effect

– Control signal ordering

C

2C C0

s1

s2s2bs3s3b

s1b

order1s1

s3s1bs2bs3b

s2

order2s1

s3s1bs2s3b

s2b

order3

Page 40: Routing - Seoul National Universityocw.snu.ac.kr/sites/default/files/NOTE/10133.pdf · Unrestricted Routing Unrestricted Routing • Lee-Moore Algorithm (Maze Routing) – Fixed grid,

Cross-Coupling

s1

s2s2bs3s3b

s1b

s1

s3s1bs2bs3b

s2

s1

s3s1bs2s3b

s2b

↑↓01

0↑↓1

0↑↑1

1->2

01↑↓

↑↑1↓

0

↑↑0↓

1

1->3selection signal change

↓↑01

0↓↑1

0↓↓1

2->1

0

↓↑↑↓

1

0

↑1↑↓

0

↑1↓↓

2->3

01↓↑

↓↓1↑

0

↓↓0↑

1

3->1

0

↑↓↓↑

1

0

↓1↓↑

0

↓1↑↑

3->2

total # ofopposite

transitions

12

8

0


Recommended