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 Microarray Microfluidic biochips Continuous- Droplet- DNA chip Protein chip flow based Flow-based microfluidic biochips Flow-channel Valve NCKU CSIE EDALAB
Valve: The Basic Unit of Flow-based Microfluidic Biochips ․ 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 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 A top-down synthesis methodology is needed The increasing rate of the valve numbers is four times faster than Moore’s Law ․ Current methodologies Manual Full-custom Source: Fluidigm NCKU CSIE EDALAB
Component Model : Mixer Microfluidic mixer Pump S 1 S 2 S 3 NCKU CSIE EDALAB
Motivation Microfluidic mixer Open the valve 5 Close the valve 6 4 1 2 78 3 9 Valve-switching : 00 20 + Mixing 06 10 14 18 02 Phase V 1 V 2 V 3 V 4 V 5 V 6 V 7 V 8 V 9 0 1 0 0 0 0 0 0 1 0 0 1. Ip1 0 0 0 1 0 0 0 0 0 0 1 2. Ip2 1 0 0 0 Mix 0 Mix 0 Mix 0 0 1 0 0 3. Mix 0 1 0 0 0 0 0 1 0 0 0 4. Op1 0 0 0 0 0 0 0 0 0 1 1 5. Op2 NCKU CSIE EDALAB
Group Continuous Operations 20 Valve-switching for a mixing operation Reduce valve-switching 6 times In 1 In 2 Mix Out 1 Out 2 Total reduction 5 Phases for a mixing operation 20 20 20 Operation 1 Operation 2 In 1 In 2 Mix Out 1 Out 2 Operation 3 In 1 In 2 Mix Out 1 Out 2 In 1 In 2 Mix Out 1 Out 2 14 20 6 Operation 1 6 Operation 2 In 1 In 2 Mix Out 1 Out 2 Out 2 12 In 1 In 1 In 2 Mix Out 1 Out 2 Out 2 24 In 1 In 1 In 2 Mix Out 1 Out 2 6 14 20 Operation 3 8 6 20 14 Reduce valve-switching and the application time
Transportation Issue ․ Total valve-switching Valve-switching of a mixer Valve-switching of intersections Valve-switching of a storage Storage NCKU CSIE EDALAB
Outline Introduction Problem Formulation Algorithms Experimental Results Conclusions NCKU CSIE EDALAB
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 Component Phases 100 μm Width of flow channel Mixer Ip 1 / Ip 2 / Mix / Op 1 / Op 2 40 μm Minimum spacing between flow channels 30 μm Width of control channel Filter Ip / Filter / Op 1 / Op 2 100 μm Width of control valve Detector Ip / Detect / Op Minimum spacing between control channels 40 μm Minimum spacing between external ports 1500 μm Separator Ip 1 / Ip 2 / Separat/ Op 1 / Op 2 Heater Ip / Heat / Op NCKU CSIE EDALAB
Outline Introduction Problem Formulation Algorithms Experimental Results Conclusions NCKU CSIE EDALAB
Input Component Library Mixer : 3 Resource Application Constraint Graph 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
Find Continuous Sets 0 0 5 1 10 10 16 O1 O2 O3 O4 O5 O6 O7 2 2 7 7 13 13 20 5 16 10 O8 O9 O10 13 13 20 23 16 O12 O11 25 25 28 O13 31 NCKU CSIE EDALAB
Continuous Sets S S i E 0 S : Estimated starting time E : Estimated ending time O1 10 O8 O5 5 O11 O3 O10 O13 0 1 10 16 O9 O12 O2 O6 O7 O4 31 13 25 2 7 13 20 S 1 S 2 S 3 S 4 S 5 S 6 S 7 NCKU CSIE EDALAB
Build the Flow Network ․ Step1 Src Create Src and Dst vertex Create a vertex Vi ϵ V for each Si ․ Step2 Separate V i → (V i in , V i out ) 4 2 V 0 V 1 in 0 in 1 in → V i V Create a directed edge V i out , in V 4 V 2 cost=0 and capacity=1 2 7 2 4 V V ․ Step3 out out Separate Dst → (Dst in , Dst out ) 5 3 V in 10 Create a directed edge Dst in → Dst out , 6 V 10 5 V V 3 in V 1 in cost=0 and capacity=3 (given V 6 3 V component numbers) 13 out 13 6 V V 5 ․ Step4 out 7 16 V Create directed edges Src → V i in and in out → Dst in, cost = 0 and capacity=1 V 7 5 V i V 25 out 20 1 V 31 7 For each V i out and V j in , if V i V out + T out out (transportation time) ≦ V j in, create a out → V j directed edge V i in , cost=f(x) DST in and capacity=1. Here, x is defined as Dst |(V i out -V i in )| and f is proportional to x DST OUT
Apply Minimum Cost Maximum Flow Src Find 4 concatenated-sets V 4 V 2 V 6 is isolated V 3 V 1 V 6 V 5 V 7 Dst NCKU CSIE EDALAB
Sort by the Priority Priority 1. Number of continuous operations 2 continuous 2. Number of total operations O2 operations O4 3 continuous O1 operations O3 O8 O5 The remaining operation O9 O11 O10 O13 O12 O7 O6 Mixer 1 Mixer 2 Mixer 3 high low NCKU CSIE EDALAB
Insert the Remaining Operation O6 Next operation O4 O2 O2 O5 O4 O1 O1 O3 O3 O8 O8 O6 O5 O9 O9 O11 O11 O10 O10 O13 O13 O12 O12 O7 O7 Mixer 1 Mixer 2 Mixer 3 Mixer 1 Mixer 2 Mixer 3 NCKU CSIE EDALAB
Relational Graph M 2 M 3 -> M 1 1 2 1 2 1 M 1 M 3 Relational graph 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 O(n 2 ) User User User User User User User User User User User User User User User User User User M 1 M 3 M 1 M 2 S 1 M 3 M 2 S 1 S 2 M 5 M 4 M 4 M 5 NCKU CSIE EDALAB
One Storage Storage 1 4*2 + 2 Valve-switching NCKU CSIE EDALAB
Two Storage Storage 1 Storage 2 3*2 + 2 Valve-switching NCKU CSIE EDALAB
Find the Clusters Iteration : 1 0 Cluster : 7 6 8 9 10 4 2 M 4 M 6 M 1 2 1 1 3 5 2 M 8 M 9 1 M 10 4 M 3 4 M 5 1 1 1 3 M 2 M 7 1 Storage : 4 NCKU CSIE EDALAB
Find the Clusters Iteration : 2 Cluster : 6 5 4 2 M 4 M 6 M 1 2 1 1 3 2 M 8 M 9 1 M 10 M 3 M 5 1 1 1 3 M 2 M 7 1 Storage : 4 NCKU CSIE EDALAB
Incremental Cluster Expansion M 9 M 10 M 5 S 1 S 2 M 1 M 2 M 3 S 4 S 3 M 7 M 8 M 4 M 6 NCKU CSIE EDALAB
Compaction M 9 M 10 M 5 S 1 S 2 M 1 M 2 M 3 S 4 S 3 M 7 M 8 M 4 M 6 NCKU CSIE EDALAB
Routing by dijkstra’s algorithm M 9 M 10 M 5 M 1 S 1 S 2 M 2 M 3 S 3 S 4 M 7 M 8 M 4 M 6 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
Recommend
More recommend