Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
NCKU CSIE EDALAB
Kai-Han Tseng, Sheng-Chi You, Jhe-Yu Liou and Tsung-Yi Ho
http://eda.csie.ncku.edu.twDepartment of Computer Science and Information Engineering
National Cheng Kung UniversityTainan, Taiwan
2013 ACM International Symposium on Physical Design
NCKU CSIE EDALAB
Outline
Introduction
Problem Formulation
Algorithms
Experimental Results
Conclusions
NCKU CSIE EDALAB
What is Biochips?
․General definition
A chip with a small solid platform made of glass, plastic, or
membrane which deals with the behavior, precise control and
manipulation of fluids that are constrained to a small scale
․Functionality
Analysis, reaction, or detection of biological samples (DNA or
human blood)
․Application Clinical diagnostics
Environmental monitoring
Automated drug discovery
Cell culturing
Protein crystallization
NCKU CSIE EDALAB
Classification of Biochips
Biochips
Microfluidic biochipsMicroarray
DNA chip Protein chipDroplet-based
Continuous-flow
Flow-based microfluidic biochips
Flow-channel
Valve
NCKU CSIE EDALAB
․Functional component
Valves can be combined to form more complex units,
e.g., latches, switches, mixers, multiplexers, micropumps
․Reliability
The open and close activities (valve-switching) for a valve is
limited
Valve: The Basic Unit of Flow-based Microfluidic Biochips
NCKU CSIE EDALAB
The Need of CAD Support
․Applications become more complicated
Large-scale bioassays
Multiple and concurrent assay operations on a biochip
․Design complexity is increased
The increasing rate of the valve numbers is four times faster
than Moore’s Law
․Current methodologies
Manual
Full-custom
Source: Fluidigm
A top-down synthesis methodology is needed
NCKU CSIE EDALAB
Component Model : Mixer
Microfluidic mixer
S2S1 S3
Pump
NCKU CSIE EDALAB
0 0
Phase V1 V2 V3 V4 V5 V6 V7 V8 V9
1. Ip1
2. Ip2
3. Mix
4. Op1
5. Op2
1 1
Motivation
Microfluidic mixer
Open the valve
Close the valve
0 0 0 0 0 0 0
0 0 0 0 0 0 00 0
0 0 0 0 0 00 0 0
0 0 0 0 00 0 0 0
0 0 0 0 0 0 0 0 0
1 1
1 1
1 1
1 1
123
5 6
78
9
4
MixMixMix
Valve-switching : 00020610141820 + Mixing
Out2Out2
In1 Out1In2 Out2Mix
20
In1 Out1In2 Out2Mix
20 20
Reduce valve-switching 6 times
Valve-switching for a mixing operation
Total reduction
In1
14 6
146
In1 Out1In2 Out2Mix
20
5 Phases for a mixing operation
In1 Out1In2 Mix
Out1In2 MixIn1
In1 Out1In2 Out2Mix20
20
Out2
12
Operation1
Operation2
Operation3
Out2
In1 Out1In2 Out2MixIn1
208
146
6
24
Operation1
Operation2
Operation3
Reduce valve-switching and the application time
Group Continuous Operations
NCKU CSIE EDALAB
․Total valve-switching
Valve-switching of a mixer
Valve-switching of intersections
Valve-switching of a storageStorage
Transportation Issue
NCKU CSIE EDALAB
Outline
Introduction
Problem Formulation
Algorithms
Experimental Results
Conclusions
NCKU CSIE EDALAB
Component Phases
Mixer Ip1 / Ip2 / Mix / Op1 / Op2
Filter Ip / Filter / Op1 / Op2
Detector Ip / Detect / Op
Separator Ip1 / Ip2 / Separat/ Op1 / Op2
Heater Ip / Heat / Op
Problem Formulation
․Input: A biochemical application modeled as a
sequential graph and a component library
․Objective: Synthesize a flow-based microfluidic biochip
such that the valve-switching amount and application
completion time are minimized
․Constraint: Resource constraints and design rules
Parameter Value
Width of flow channel 100 μm
Minimum spacing between flow channels 40 μm
Width of control channel 30 μm
Width of control valve 100 μm
Minimum spacing between control channels 40 μm
Minimum spacing between external ports 1500 μm
NCKU CSIE EDALAB
Outline
Introduction
Problem Formulation
Algorithms
Experimental Results
Conclusions
NCKU CSIE EDALAB
Input
Application
Graph
Component
Library
Mixer : 3
Resource
Constraint
NCKU CSIE EDALAB
Top-Down Synthesis Methodology
․Architecture-level synthesis
Set-based minimum cost
maximum flow (SMCMF)
Resource binding
Resource scheduling
․Physical-level synthesis
Incremental cluster expansion
(ICE)
Placement
Routing
․Explicit scheduling
List-scheduling based
approach
Total valve-switching amount
Application completion time
NCKU CSIE EDALAB
Set-based Minimum Cost Maximum Flow
․Set-based
Group continuous operations in a set to reduce the valve-
switching activities
․Maximum Flow
Each flow path represents a component. Our goal here is to
maximize the component parallelization.
․Minimum Cost
Find a way that not only satisfies the parallelization but also
minimize the application completion time
NCKU CSIE EDALAB
Time Evaluation
Transportation time : 3
NCKU CSIE EDALAB
2325
1013
1620
1620
1013
1013
17
1625
2831
513
02
02
57
Find Continuous Sets
O1 O2 O3 O4 O5 O6 O7
O8O9 O10
O11 O12
O13
NCKU CSIE EDALAB
O1
O8
O11
O13
0
31
S1
O2
0
2
S2
O3
O9
5
13
S3
O4
1
7
S4
O5
O10
O12
10
25
S5
O6
10
13
S6
O7
16
20
S7
S : Estimated starting timeE : Estimated ending time
Si
SE
Continuous Sets
Build the Flow Network
0
31
0
2
5
13
1
7
10
25
Src
V1
V5
․ Step1
Create Src and Dst vertex
Create a vertex Vi ϵ V for each Si
․ Step2
Separate Vi → (Viin, V
iout)
Create a directed edge Viin → Vi
out,
cost=0 and capacity=1
․ Step3
Separate Dst → (Dstin, Dstout)
Create a directed edge Dstin → Dstout,
cost=0 and capacity=3 (given
component numbers)
․ Step4
Create directed edges Src → Viin and
Viout → Dstin, cost = 0 and capacity=1
For each Viout and Vj
in, if Viout + T
(transportation time) ≦ Vjin, create a
directed edge Viout → Vj
in, cost=f(x)
and capacity=1. Here, x is defined as
|(Viout -Vi
in)| and f is proportional to x
V1in
V2in
V3in
V4in
V7in
V6in V
5in
V3
out
V1out V
7out
V6
out
V5
out
V4
outV2
out
DSTin
DSTOUT
V2
V3
V7
V6
V4
Dst
10
13
16
20
NCKU CSIE EDALAB
Apply Minimum Cost Maximum Flow
Src
V1
V5
V2
V3
V4
V6
Dst
V7
V6 is isolated
Find 4 concatenated-sets
NCKU CSIE EDALAB
Sort by the Priority
O1
O8
O11
O13
O6
O3
O9
O2
O7
O5
O10
O12
O4
Mixer1 Mixer2 Mixer3
2 continuousoperations
3 continuousoperations
high low
Priority 1. Number of continuous operations2. Number of total operations
The remaining operation
NCKU CSIE EDALAB
Next operation
Insert the Remaining Operation
O3
O9
O2
O7
Mixer3
O1
O8
O11
O13
Mixer1 Mixer2
O5
O10
O12
O4
O6
Mixer2
O10
O12
O6
O4
O5
O1
O8
O11
O13
Mixer1 Mixer3
O2
O7
O3
O9
NCKU CSIE EDALAB
Relational Graph
M1 M3
M2
1
11 2
2
Relational graph
M3 -> M1
NCKU CSIE EDALAB
Top-Down Synthesis Methodology
․Architecture-level synthesis
Set-based minimum cost
maximum flow (SMCMF)
Resource binding
Resource scheduling
․Physical-level synthesis
Incremental cluster expansion
(ICE)
Placement
Routing
․Explicit scheduling
List-scheduling based
approach
Application completion time
Total valve-switching amount
NCKU CSIE EDALAB
Motivation
User User
User
User
User
User
User
UserUser
User
User
User
User
User
User
User
User
User
User
User
User
User
UserUserUser
User
User
User
User
User
User
User
M2
S1 M3
M4
M1
M5
S1 S2 M5
M4
M3 M1
M2
O(n2)
NCKU CSIE EDALAB
One Storage
Storage1
4*2 + 2Valve-switching
NCKU CSIE EDALAB
Two Storage
Storage1 Storage2
3*2 + 2Valve-switching
NCKU CSIE EDALAB
Find the Clusters
M10
M9
M8
M7
M4
M1
M5
M2
M3
M6
Iteration :Cluster :
2
1
2
3
2
3
51
1
4
4
4
1
1
1
01019786
1
Storage : 4
NCKU CSIE EDALAB
Find the Clusters
M10
M9
M8
M7
M4
M1
M5
M2
M3
M6
2
1
2
3
2
3
1
1
1
1
1
Iteration : Cluster :
2654
1
Storage : 4
NCKU CSIE EDALAB
Incremental Cluster Expansion
M3
M4 M6
M2
M7
M8
S4 S3
M10
M1S1 S2
M5M9
NCKU CSIE EDALAB
Compaction
S1M1
M10 M5
M2
M9
S2
M7
M8
S4M3
M4 M6
S3
NCKU CSIE EDALAB
Routing by dijkstra’s algorithm
M5
M2
M9
S2
M3
M4
S3
S1
M10
M7
M8
S4
M1
M6
NCKU CSIE EDALAB
100 Mixers and 10 Storages
NCKU CSIE EDALAB
Top-Down Synthesis Methodology
․Architecture-level synthesis
Set-based minimum cost
maximum flow (SMCMF)
Resource binding
Resource scheduling
․Physical-level synthesis
Incremental cluster expansion
(ICE)
Placement
Routing
․Explicit scheduling
List-scheduling based
approach
Application completion time
Total valve-switching amount
NCKU CSIE EDALAB
Time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
Mixer1
Mixer2
Mixer3
Time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
Mixer1
Mixer2
Mixer3
Valve-switching amount : 250 (62,188)
Application Completion Time : 28.5(s)
Color / Work
Operation Trasportation
Idle Input Output
Op1
Op4
Op2
Op8
Op3 Op9
Op5
Op11
Op7
Op6 Op10 Op12
Op13
Valve-switching amount :390(166,224)
Application Completion Time : 33.2(s)
Op13Op1
Op2
Op4
Op8
Op3
Op6
Op5
Op7
Op9
Op11
Op10
Op12
Reduce : 4.7(s)
Binding by SMCMF
Binding by baseline method
Explicit Scheduling
Reduce 140 valve-switching
NCKU CSIE EDALAB
Outline
Introduction
Problem Formulation
Algorithms
Experimental Results
Conclusions
NCKU CSIE EDALAB
Experimental Settings
․Implemented our algorithm in C++ language on a PC with Core2 Quad processors at 2.66GHz and 3.25GB of RAM
․Compared set-based minimum cost maximum flow binding algorithm with list scheduling based binding algorithm (baseline method) on top-down synthesis methodology
․Tested on several synthetic benchmarks by Adjusted operation numbers from 7 to 8191 and fixed mixers as
20 and storage as 1
Adjusted mixers from 10 ~ 100 and fixed operation numbers as 1023 and storage as 1
Adjusted storage from 1 ~ 10 and fixed operation numbers as 1023 and mixer as 100
NCKU CSIE EDALAB
Experimental Results (1/3)
Application Completion Time Valve-switching Amount
Operation : 7~8191
Mixer : 20Storage : 1
NCKU CSIE EDALAB
Experimental Results (2/3)
Operation : 1023Mixer : 10 ~ 100Storage : 1
Valve-switching AmountApplication Completion Time
NCKU CSIE EDALAB
Experimental Results (3/3)
Valve-switching Amount
Operation : 1023Mixer : 100Storage : 1 ~ 10
Application Completion Time
NCKU CSIE EDALAB
Outline
Introduction
Problem Formulation
Algorithms
Experimental Results
Conclusions
NCKU CSIE EDALAB
Conclusions
․The valve-switching activities for the components such
as mixer and storage were modeled
․A first top-down synthesis methodology for flow-based
microfluidic biochip was presented
․Two algorithms for architecture-level synthesis and
physical-level synthesis were proposed
Set-based minimum cost maximum flow (SMCMF)
Incremental cluster expansion (ICE)
․The experimental results showed that our top-down
synthesis methodology not only minimized the valve-
switching amount but also reduced the application
completion time
NCKU CSIE EDALAB