Incremental and On-demand Random Walk for
Iterative Power Distribution Network Analysis
Yiyu Shi*, Wei Yao*, Jinjun Xiong+ and Lei He*
*Electrical Engineering Dept., University of California, Los Angeles
+IBM
T. J. Watson Research Center, Yorktown Heights, NY
This paper is supported in part by an NSF CAREER award
CCR0306682 and a UC MICRO grant sponsored by Actel and Fujitsu.
Outline
PDN analysis and random walk algorithm
Incremental random walk
Walk Ordering Optimization
Experimental Results
Conclusions
PDN Design Challenges
Designing reliable supply network is essential
VDD decreases
Wire width decreases
Load current increases
Efficient power grid analysis tool is needed
To handle large circuit size with millions of nodes
On-demand analysis is necessary
Only calculate the response at the nodes of interest
Random walk based solver is a natural solution
To handle various design changes in the design loop
Incremental analysis is necessary
Update analysis results instead of calculating from scratch
Random Walk Based Solver
The voltage at an internal node x can be solved from
V1 Vx g1 V2 Vx g 2 V3 Vx g3 V4 Vx g 4 I x
It can be rewritten as
Vx
g
I
g1
g
g
V1 2 V2 3 V3 4 V4 x
g g g g g
2
∑
1
g2
g1
At pad node, we have
Vpad VDD or 0
g3
x
1
Ix
3
g4
4
Random Walk Based Solver
Vx
g
I
g1
g
g
V1 2 V2 3 V3 4 V4 x
g g g g g
Vpad VDD or 0
Alternatively, the above equations can be viewed as
Vx px ,1V1 px , 2V2 px ,3V3 px , 4V4 m x
V pad a pad
4
M walks from i-th
node
Take average
This yields xi
px,4
1
x
px,1
px,2
px,3
2
3
Outline
PDN analysis and random walk algorithm
Incremental random walk
Walk Ordering Optimization
Experimental Results
Conclusions
Incremental Analysis of Power Network
Incremental analysis exists in literature for full-solvers
Fictious Domain Method [Zhao:ICCAD’07]
Large Change Sensitivities
However, they both require a full solve for every node of the
original circuits
Cannot be applied to the on-demand solutions obtained from
random walk based solver.
Q: How to perform incremental analysis for
random walk based solver?
Basic Idea for Incremental Random Walk
When design changes
25
0.1
25
20 (-5)
0.1
0.1
100
0.1
0.2
25
20 (-5) 0.1
100
0.1
0.1
25
20 (-5)
40 (+15)
Increase or decrease the number of visits from the node of change
Propagate the change throughout the network.
Incremental Random Walk
Suppose the probability of walking to node i from an adjacent
node j is p j ,i
~
After design changes it becomes p j ,i
Then, the number of visits of node i needs to be changed to
N ( ~
p p )N
i
j ,i
j ,i
j
j
Ni is positive => Extra random walks are needed
Ni is negative => Remove existing random walks
Negative Random Walk
It is easy to start extra random walks from a node
But to remove existing walks is difficult
Bookkeeping of all walks is infeasible due to the huge memory
requirement
Instead of removing ΔN number of random walks starting from a
node directly, we perform ΔN number of extra random walks from
that node.
Whenever a node is visited, the number of visits at that node is
decreased by one
opposed to the normal random walk which should increase the number
of visits by one.
It can be proved that the statistical effect of such a strategy is equal
to the removal of ΔN random walks from that node.
Outline
PDN analysis and random walk algorithm
Incremental random walk
Walk Ordering Optimization
Experimental Results
Conclusions
Merging of Positive and Negative Walks
During positive (negative) random walk, when arriving at a node that
requires additional negative (positive) random walks,
The walk terminates.
The number of required additional walks at current node is decreased
by one.
Order of the incremental random walks matters
Assume ΔN positive walks from A and ΔN negative walks from B
A first, then B => ~2ΔN walks are needed
B first, then A => only ~ΔN walks are needed
ΔN
-ΔN
Intuitively, when the walks from a node has a higher
probability of hitting the nodes that require opposite walks,
that node should have an earlier start.
Runtime for Different Ordering: an Example
Runtime distribution on a circuit with 1027 nodes
500 Monte Carlo runs with different node ordering
6X runtime difference can be observed with different ordering
scheme
Walk Ordering Optimization
We order the nodes according to
P( A) P( A i)N i
i
P(A→i) is the probability of a walk staring from node A to hit
node i can can be computed as
P( A i )
p
m { c } edge(
j ,k
j k )
where Φc is a set of all paths from node A to i.
m
In practice, we only need to consider K paths with largest
probability.
P( A i )
p j ,k where
m {cK } edge( j k )m
ln p j ,k
ed ge( j k )m
p
e
j ,k
edge( j k )m
Can be solved by K shortest paths algorithm.
Outline
PDN analysis and random walk algorithm
Incremental random walk
Walk Ordering Optimization
Experimental Results
Conclusions
Impact of Ordering Algorithm
PDN design with 102,471 nodes and 215 ports
Consider topology changes and magnitude changes
Our ordering algorithm can reduce the runtime close to the
minimum time in 10000 Monte Carlo simulations.
8X speedup compared with the worst ordering case.
Linear Complexity for On-demand Analysis
Random walk from scratch has a warm-up cost
Becomes linear after the observation node is more than 40% of the total
nodes
However, in reality on-demand analysis hardly falls in this region
Incremental random walk algorithm has a linear runtime complexity
w.r.t. number of observation nodes
Very suitable for on-demand incremental analysis
Up to 100X speedup over the random walk from scratch
Iterative PDN Sizing
Design information
Runtime and accuracy comparison
18X speedup compared with random walk from scratch with
similar accuracy.
Iterative Package Ball Assignment with Substrate Rerouting
To reduce crosstalk noise
Iteratively optimize ball assignment
Different ball assignment leads to different substrate rerouting
Topology changes in RLC network
Incremental random walk can be used to speedup the iterative
design process
13X speedup for total analysis time during iterative design
Compared to random walk from scratch
Conclusion
We develop an incremental random walk algorithm, which is
capable of both incremental and on-demand analysis.
We propose an efficient algorithm to optimize the walk
ordering problem
Achieve 8× runtime reduction compared to the worst order
Compared with random walk from scratch, runtime is reduced
by up to 18× for on-chip iterative PDN sizing, and
by up to 13× for iterative package ball assignment with
substrate rerouting.
On-demand analysis has a runtime linear with respect to the
number of observed nodes for incremental random walk.
2× difference compared to non-incremental random walk.
© Copyright 2026 Paperzz