NCKU CSIE EDALAB
2013 ACM International Symposium on Physical Design Kai-Han Tseng, - - PowerPoint PPT Presentation
2013 ACM International Symposium on Physical Design Kai-Han Tseng, - - PowerPoint PPT Presentation
2013 ACM International Symposium on Physical Design Kai-Han Tseng, Sheng-Chi You, Jhe-Yu Liou and Tsung-Yi Ho http://eda.csie.ncku.edu.tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan
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 biochips Microarray DNA chip Protein chip Droplet- 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
S2 S1 S3 Pump
NCKU CSIE EDALAB
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
1 1 1 1 1 1 1 1
12 3 5 6 78 9 4
Mix Mix Mix Valve-switching : 00 02 06 10 14 18 20 + Mixing
Out2 Out2 In1 Out1 In2 Out2 Mix 20 In1 Out1 In2 Out2 Mix 20 20 Reduce valve-switching 6 times Valve-switching for a mixing operation Total reduction In1 14 6 14 6 In1 Out1 In2 Out2 Mix 20 5 Phases for a mixing operation In1 Out1 In2 Mix Out1 In2 Mix In1 In1 Out1 In2 Out2 Mix 20 20 Out2
12
Operation1 Operation2 Operation3
Out2 In1 Out1 In2 Out2 Mix In1 20 8 14 6 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 storage
Storage 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 23 25 10 13 16 20 16 20 10 13 10 13 1 7 16 25 28 31 5 13 2 2 5 7
Find Continuous Sets
O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13
NCKU CSIE EDALAB
O1 O8 O11 O13
31 S1
O2
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 time E : Estimated ending time
Si
S E
Continuous Sets
Build the Flow Network
31 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 → (Vi
in, Vi
- ut)
Create a directed edge Vi
in → Vi
- ut,
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 → Vi
in and
Vi
- ut → Dstin, cost = 0 and capacity=1
For each Vi
- ut and Vj
in, if Vi
- ut + T
(transportation time) ≦ Vj
in, create a
directed edge Vi
- ut → Vj
in, cost=f(x)
and capacity=1. Here, x is defined as |(Vi
- ut -Vi
in)| and f is proportional to x
V
1 in
V
2 in
V
3 in
V
4 in
V
7 in
V
6 in
V
5 in
V
3
- ut
V
1
- ut
V
7
- ut
V
6
- ut
V
5
- ut
V
4
- ut
V
2
- ut
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 continuous
- perations
3 continuous
- perations
high low
Priority
- 1. Number of continuous operations
- 2. 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 1 1 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 User User User User User User User User User User User User User User User User User User 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 + 2 Valve-switching
NCKU CSIE EDALAB
Two Storage
Storage1 Storage2 3*2 + 2 Valve-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 5 1 1 4 4 4 1 1 1
10 1 9 7 8 6
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 : 2 6 5 4
1
Storage : 4
NCKU CSIE EDALAB
Incremental Cluster Expansion
M3 M4 M6 M2 M7 M8 S4 S3
M10
M1 S1 S2 M5 M9
NCKU CSIE EDALAB
Compaction
S1 M1
M10
M5 M2 M9 S2 M7 M8 S4 M3 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)
Op13 Op1 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 : 20 Storage : 1
NCKU CSIE EDALAB
Experimental Results (2/3)
Operation : 1023 Mixer : 10 ~ 100 Storage : 1
Valve-switching Amount Application Completion Time
NCKU CSIE EDALAB
Experimental Results (3/3)
Valve-switching Amount
Operation : 1023 Mixer : 100 Storage : 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