18
A Network-Flow Based Algorithm for Digital Microfluidic Bioch ip Routing Ping-Hung Yuh, Chia-Lin Yang, and Yao-Wen Chang Department of CSIE, NTU 18th VLSI Design/CAD Symposium, Taiwan, 2007

A Network-Flow Based Algorithm for Digital Microfluidic Biochip Routing Ping-Hung Yuh, Chia-Lin Yang, and Yao-Wen Chang Department of CSIE, NTU 18th VLSI

Embed Size (px)

Citation preview

A Network-Flow Based Algorithm for Digital Microfluidic Biochip Routing

Ping-Hung Yuh, Chia-Lin Yang, and Yao-Wen Chang

Department of CSIE, NTU18th VLSI Design/CAD Symposium, Taiwan, 2007

Outline

Introduction Droplet Routing Problem Biochip Routing Algorithm

Global Routing – Network based Detailed Routing – Negotiation based

Experimental Results Conclusions

Introduction

Electrowetting on Dielectric (EWOD) 絕緣層電潤濕現象 The digital microfluidic biochips are based on the

manipulation of droplets in a 2D array The basic operations (e.g., mix, dilute, etc.) can b

e performed anywhere in the 2D array Electrodes can be re-programmed

Droplet Routing

A droplet can move to an adjacent cell when the corresponding electrode is activated

The droplet routing problem is to route all droplets

From a reservoir/dispensing port to a target pin

From a source pin to a waste reservoir

From a source pin to a target pin

Droplet Routing (cont.)

Sequentially route each 2D plane to determine the routing path and schedule of each droplet

Fluidic constraint To avoid the unexpected mixing of two droplets of

different nets during their transportation Timing constraint

The maximum allowed transportation time of a droplet

Fluidic Constraints

Static fluidic constraint The minimum spacing between two droplets is

one cell Dynamic fluidic constraint

t = tp

t = tp + 1

t = tp - 1

No other droplets can stay in the 3D cube, when dp is located at cell c at time tp

Timing Constraint

The maximum allowed transportation time of a droplet d from its source s to target c: Tmax

Earliest reaching time: minT(c, d) = md(c, s) Latest time of staying at c:

maxT(c, d) = Tmax - md(c, s)

c is available to d at time t if maxT ≥ minT Idle interval: [minT(c, d), maxT(c, d)]

The timing interval that d can stay at c

Violation interval: [minT(c, d) - 1, maxT(c, d) + 1] No other droplets can be scheduled in violation interval at c

or the neighboring cells of c

Droplet Routing Problemof One 2D Plane

Given Netlist of nets, where each net is a 2-pin net (one droplet) o

r a 3-pin net (two droplets) Location of pins and obstacles Timing constraint

Objective Route all droplets from their source pins to target pins Minimize the number of cells for routing

Constraint Both the fluidic and the timing contraints are satisfied

Biochip Routing Algorithm

Net Criticality

A net n is said to be critical if n has few possible solutions (routing paths and sc

hedules) due to timing constraint The routing solution of n will be affected by other

nets

u(c, n, t) is 1 if c is available to net n at time t

Global Routing

Determine a rough routing path for each droplet

Decompose into a set of subproblems by selecting a set of independent nets that do not interfere with each other

Two nets are said to be independent nets if Their bounding boxes do not overlap, or All cells in the overlapping area are violation-free

cells One cell such that the idle interval of d1 overlaps with violati

on interval of d2 Not violation-free cell Construct a conflict graph for net selection

Network-Flow Based Routing Algorithm

Use min-cost max-flow (MCNF) algorithm to solve each subproblem

Divide a biochip into a set of global cells gc Each global cell contains 3x3 basic cells

A node vpa in the flow graph represents

At least one cell c in gcp is available to da and c is in the bounding box of net a

Network-Flow Based Routing Algorithm (cont.)

Each node has its capacity Kp – UGp

Kp is the capacity of a global cell p

Total time of each droplet staying at each cell in gcp

UGp is the number of droplets that currently uses gcp

Each node has its cost Φ(vpa)

|N’|: # input nets, snp: # input nets that can use gcp

Encourage multiple droplets to share the same global cell Encourage two nets in N’ to share the same global cell

)( apg v

0 ,' pp UGsnN

otherwise ,'1 psnN

Handling 3-pin Nets

Route the droplet d1 with a longer Manhattan distance first

Then route d2 to one of the global cells, common mixing nodes, that are used by d1

Common Mixing Nodes

Detailed Routing

Ref.: “Pathfinder: a negotiation-based perfrormance-driven router for fpgas,” L. McMurchie and C. Ebeling, in FPGA,1995

Route and schedule each droplet in the decreasing order of their criticality Determine the arrival and departure times of each

droplet on each cell

To find the minimum cost routing tree RTa for each droplet on net a

Negotiation Based Algorithm

Construct a routing graph A unique node vp for each cell cp

vp and vq are connected via a directed edge if droplets can move from cp to cq

The node vp is associated with its cost

UC(vp) is 0 if cp is used by at least one droplet The F term is to guide to satisfy the fluidic constrai

nt If the fluidic constraint is violated in many previous iter

ations, F will be large. The router tends not to use vp at time t to route droplets

),,,()(),,,( tdvvFvUCtdvv aqpp

aqpd

Experimental Results

Compared with [5] Smaller total number of cells used for routing (237

vs. 267) Less CPU time (0.03 sec vs. 0.15 sec)

Conclusions

First network-flow based routing algorithm for digital microfluidic biochip routing

Compared with recent routing works, the algorithm can achieve better solution quality with less CPU time