Download presentation
Presentation is loading. Please wait.
Published byNoel Snow Modified over 8 years ago
1
Synthesis of Digital Microfluidic Biochips with Reconfigurable Operation Execution Elena Maftei Technical University of Denmark DTU Informatics www.dreamstime.com
2
2 Duke University Digital Microfluidic Biochip
3
3 Applications Sampling and real time testing of air/water for biochemical toxins Food testing DNA analysis and sequencing Clinical diagnosis Point of care devices Drug development
4
4 Challenges: Design complexity Radically different design and test methods required Integration with microelectronic components in future SoCs Advantages & Challenges Advantages: High throughput (reduced sample / reagent consumption) Space (miniaturization) Time (parallelism) Automation (minimal human intervention)
5
5 Outline Motivation Architecture Operation Execution Contribution I Module-Based Synthesis with Dynamic Virtual Devices Contribution II Routing-Based Synthesis Contribution III Droplet-Aware Module-Based Synthesis Conclusions & Future Directions
6
6 Architecture and Working Principles Biochip architecture Cell architecture Electrowetting-on-dielectric Droplet Top plate Ground electrode Control electrodes Insulators Filler fluid Bottom plate S2S2 R2R2 B S3S3 S1S1 W R1R1 Reservoir Detector
7
7 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Microfluidic Operations
8
8 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution
9
9 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Non-reconfigurable
10
10 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Non-reconfigurable Reconfigurable
11
11 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 2 x 4 module
12
12 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 OperationArea (cells)Time (s) Mix2 x 43 Mix2 x 24 Dilution2 x 44 Dilution2 x 25 Module library 2 x 4 module
13
13 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 2 x 4 module segregation cells
14
14 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 Operations confined to rectangular, fixed modules Positions of droplets inside modules ignored Segregation cells
15
15 Module-Based Synthesis with Dynamic Virtual Modules
16
16 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D1D1 tApplication graph 12 9 1212 8 3 4 56 7 1 1313 1010 In S 1 In B In S 2 In R 1 Dilute Mix In S 3 In B Dilute In BIn R 2 Dilute
17
17 Example Biochip S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D1D1 Application graph 2 x 2 2 x 4 2 x 2 2 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
18
18 Example t S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D1D1 D 2 (O 5 ) Application graph 2 x 2 2 x 4 2 x 2 2 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
19
19 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 3 (O 12 ) M 1 (O 6 ) D 4 (O 13 ) store O 5 t+4Application graph 2 x 2 2 x 4 2 x 2 2 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
20
20 Example Application graph S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 3 (O 12 ) D 4 (O 13 ) M 2 (O 7 ) t+8 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
21
21 Example Schedule Mixer 1 Mixer 2 Diluter 2 Diluter 3 Diluter 4 O5O5 O6O6 O 12 O 13 O7O7 store tt+8t+11 Allocation Application graph 2 x 2 2 x 4 2 x 2 2 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
22
22 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) D1D1 tApplication graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
23
23 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) tApplication graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
24
24 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) tApplication graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
25
25 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) tApplication graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
26
26 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
27
27 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
28
28 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
29
29 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
30
30 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
31
31 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
32
32 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
33
33 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) D1D1 t Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
34
34 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D 2 (O 5 ) D1D1 t M 1 (O 6 ) Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
35
35 Example t+4 D 3 (O 12 ) S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 M 2 (O 7 ) D 4 (O 13 ) Application graph 2 x 2 2 x 4 2 x 22 x 4 S1 S1 B1 B1 S2 S2 R1 R1 R2 R2 B2 B2 B1 B1 S3 S3 12 9 1212 8 3 4 56 7 1 1313 1010
36
36 Example Schedule – operation execution with dynamic virtual modules O6O6 Mixer 1 Mixer 2 Diluter 2 Diluter 3 Diluter 4 O5O5 t t+9 O 12 O 13 O7O7 t+4 Allocation Mixer 1 Mixer 2 Diluter 2 Diluter 3 Diluter 4 O5O5 O6O6 O 12 O 13 O7O7 store tt+8 t+11 Allocation Schedule – operation execution with fixed virtual modules
37
37 Solution Tabu Search List Scheduling Maximal Empty Rectangles Binding of modules to operations Schedule of the operations Placement of modules performed inside scheduling Placement of the modules Free space manager based on [Bazargan et al. 2000] that divides free space on the chip into overlapping rectangles
38
38 Dynamic Placement Algorithm S1S1 S2S2 S3S3 B1B1 R1R1 R2R2 W B2B2 Rect 2 Rect 1 Rect 3 (0,0) (7,0) (0,4) (3,8) (8,8) D1D1
39
39 Dynamic Placement Algorithm S1S1 S2S2 S3S3 B1B1 R1R1 R2R2 W B2B2 D1D1 Rect 2 Rect 1 Rect 3 (0,0) D 2 (O 5 ) (6,4) (3,4) (8,8) (7,0)
40
40 Dynamic Placement Algorithm Rect 2 (4,0) Rect 1 (8,4) (6,0) S1S1 S2S2 S3S3 B1B1 R1R1 R2R2 W B2B2 D 2 (O 5 ) D1D1 (8,8)
41
41 Experimental Evaluation Tabu Search-based algorithm implemented in Java Benchmarks Real-life applications Colorimetric protein assay In-vitro diagnosis Polymerase chain reaction – mixing stage Synthetic benchmarks 10 TGFF-generated benchmarks with 10 to 100 operations Comparison between: Module-based synthesis with fixed modules (MBS) T-Tree [Yuh et al. 2007] Module-based synthesis with dynamic modules (DMBS)
42
42 Experimental Evaluation Best-, average schedule length and standard deviation out of 50 runs for MBS AreaTime limit (min) Best (s)Average (s)Standard dev. (%) 13 x 1360182189.992.90 10182192.003.64 1191199.204.70 12 x 1260182190.863.20 10185197.736.50 1193212.6210.97 60184192.503.78 10194211.7214.37 1226252.1915.76 Colorimetric protein assay
43
43 Experimental Evaluation Colorimetric protein assay Best schedule length out of 50 runs for MBS vs. T-Tree Colorimetric protein assay 22.91 % improvement for 9 x 9
44
44 Experimental Evaluation Average schedule length out of 50 runs for DMBS vs. MBS Colorimetric protein assay 7.68 % improvement for 11 x 12
45
45 Routing-Based Operation Execution
46
46 Module-Based vs. Routing-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 S2S2 R2R2 B S3S3 S1S1 W R1R1 c2c2 c1c1
47
47 Operation Execution Characterization S2S2 R2R2 B S3S3 S1S1 W R1R1 c2c2 90 ◦ 0◦0◦ 180 ◦ c1c1 p 90, p 180, p 0 ?
48
48 Operation Execution Characterization Type Area (cells) Time (s) Mix/Dlt2 x 42.9 Mix/Dlt1 x 44.6 Mix/Dlt2 x 36.1 Mix/Dlt2 x 29.9 Input-2 Detect1 x 130 0◦0◦ 0◦0◦ 0◦0◦ 0◦0◦ 90 ◦ 0◦0◦ 0◦0◦ 0◦0◦ 180 ◦ 0◦0◦ 0◦0◦ 0◦0◦ 90 ◦ p 90, p 180, p 0 Electrode pitch size = 1.5 mm, gap spacing = 0.3 mm, average velocity rate = 20 cm/s.
49
49 Operation Execution Characterization Type Area (cells) Time (s) Mix/Dlt2 x 42.9 Mix/Dlt1 x 44.6 Mix/Dlt2 x 36.1 Mix/Dlt2 x 29.9 Input-2 Detect1 x 130 p 90 = 0.1 % p 180 = - 0.5 % p 0 = 0.29 % p 0 = 0.58 % Electrode pitch size = 1.5 mm, gap spacing = 0.3 mm, average velocity rate = 20 cm/s. 1 2
50
50 Example 12 7 1010 4 In S 1 In R 1 Mix In R 2 3 In S 2 8 Mix Dilute 9 56 In S 3 In B 1 1313 Waste In R 1 1212 Mix Application graphBiochip S2S2 R2R2 B R1R1 S1S1 W S3S3
51
51 Example Application graph 12 7 1010 4 3 89 56 1 1313 1212 S2S2 R2R2 B R1R1 S1S1 W S3S3 M 2 (O 7 ) M 1 (O 8 ) t = 2.04 s 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
52
52 Example t = 6.67 s S2S2 R2R2 B R1R1 S1S1 W S3S3 M 3 (O 10 ) D 1 (O 9 ) Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
53
53 Example t = 9.5 s S2S2 R2R2 B R1R1 S1S1 W S3S3 M 4 (O 12 ) M 3 (O 10 ) Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
54
54 Example Mixer 1 Mixer 3 Mixer 2 O8O8 O9O9 2.04 12.50 6.67 O 12 O 10 Diluter 1 Mixer 4 O7O7 ScheduleApplication graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
55
55 Example t = 2.03 s S2S2 R2R2 R1R1 S1S1 B W 83 4 4 4 9 6 6 6 5 1 1122 7 Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
56
56 Example t = 4.20 s S2S2 R2R2 S1S1 W S3S3 R1R1 B 13.58 times 7 8 9 Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
57
57 Example t = 4.28 s R2R2 W S1S1 R1R1 S3S3 B S2S2 8 7 8 7 88 10 7 7 7 e 9 13 12 e 13 11 Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
58
58 Example t = 6.34 s R2R2 W S1S1 R1R1 S3S3 B S2S2 10.33 times 10 12 Application graph 12 7 1010 4 3 89 56 1 1313 1212 1 x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
59
59 Example Schedule – module-based operation execution Schedule – routing-based operation execution Mixer 1 Mixer 3 Mixer 2 O8O8 O9O9 2.04 12.50 6.67 O 12 O 10 Diluter 1 Mixer 4 O7O7 2.036.354.20 O 10 O7O7 O8O8 O9O9 O 12
60
60 Solution 12 7 1010 4 In S 1 In R 1 Mix In R 2 SourceSource 3 In S 2 8 Mix Dilute SinkSink 9 56 In S 3 In B 1 1313 Waste In R 1 1212 Mix Merge Mix
61
61 Solution 12 7 1010 4 In S 1 In R 1 Mix In R 2 SourceSource 3 In S 2 8 Mix Dilute SinkSink 9 56 In S 3 In B 1 1313 Waste In R 1 1212 Mix Merge Mix Minimize the completion time for the operation Minimize the time until the droplets meet
62
62 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 3 3 3 2 1
63
63 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 3 3 3 2 1 For each droplet: Determine possible moves Evaluate each move Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N
64
64 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 3 3 3 2 1 For each droplet: Determine possible moves Evaluate each move Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N
65
65 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 3 3 3 2 11 For each droplet: Determine possible moves Evaluate each move Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N
66
66 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 3 3 3 2 11 3 For each droplet: Determine possible moves Evaluate each move Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N
67
67 Experimental Evaluation GRASP-based algorithm implemented in Java Benchmarks Real-life applications Colorimetric protein assay Synthetic benchmarks 10 TGFF-generated benchmarks with 10 to 100 operations Comparison between: Routing-based synthesis (RBS) Module-based synthesis with fixed modules (MBS)
68
68 Experimental Evaluation Colorimetric protein assay 44.95% improvement for 10 x 10 Colorimetric protein assay Average schedule length out of 50 runs for RBS vs. MBS Colorimetric protein assay 44.95 % improvement for 10 x 10
69
69 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination
70
70 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 W S3S3 B1B1 B2B2 S2S2 R3R3 R2R2 1 residues
71
71 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1
72
72 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1
73
73 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1
74
74 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1 Partition 1 Partition 2 w2w2
75
75 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1 Partition 1 Partition 2 w2w2 S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 1 W R3R3
76
76 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 W R3R3 1 w1w1 Partition 1 Partition 2 w2w2 S1S1 R1R1 S3S3 B1B1 B2B2 S2S2 R2R2 1 W R3R3 w2w2 w1w1
77
77 Droplet-Aware Operation Execution without Contamination
78
78 Example Biochip 12 9 1212 In S 1 In B 8 In S 3 3 4 In R 1 56 7 In B 1 1313 1010 In R 2 Dilute Mix Dilute In S 2 Mix In B Application graph S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2
79
79 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 Application graphBiochip B1B1 R1R1
80
80 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 t = 2 s Application graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
81
81 Example t = 4.9 s M 2 (O 7 ) S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 Application graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
82
82 Example Diluter 1 O5O5 O 12 2 11 4.9 O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2 ScheduleApplication graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
83
83 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 t = 2 sApplication graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
84
84 Example t = 2 s S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 65 Application graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
85
85 Example t = 4.17 s S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 712 13 Application graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
86
86 Example Schedule Diluter 1 O5O5 O 12 24.17 O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2 6.67 Application graph 12 9 1212 In S 1 8 In S 3 3 4 In R 1 56 7 1 1313 1010 Dilute Mix Dilute In S 2 Mix 2 x 4 1 x 4 R2R2 B2B2 2 x 3 S3S3 B1B1 S1S1 S2S2 B1B1 R1R1
87
87 Example Schedule – module-based operation execution Schedule – droplet-aware operation execution Diluter 1 O5O5 O 12 24.17 O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2 6.67 Diluter 1 O5O5 O 12 2 11 4.9 O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2
88
88 Solution Location of modules determined using Tabu Search Greedy movement of droplets inside modules Routing of droplets between modules and between modules and I/O ports determined using GRASP
89
89 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 M 2 (O 7 ) D 3 (O 13 ) D 2 (O 12 )
90
90 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 13 12 777 7
91
91 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 13 12 777 7
92
92 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 13 12 7 777 7
93
93 Experimental Evaluation Algorithm implemented in Java Benchmarks Real-life applications In-vitro diagnosis Colorimetric protein assay Synthetic benchmarks 3 TGFF-generated benchmarks with 20, 40, 60 operations Comparison between: Droplet-aware module-based synthesis (DAS) Module-based synthesis (MBS)
94
94 Experimental Evaluation 21.55% improvement for 13 x 13 Colorimetric protein assay Average schedule length out of 50 runs for DAS vs. MBS Colorimetric protein assay 21.55 % improvement for 13 x 13 Colorimetric protein assay
95
95 Experimental Evaluation Algorithm implemented in Java Benchmarks Real-life applications Colorimetric protein assay Synthetic benchmarks 3 TGFF-generated benchmarks with 20, 40, 60 operations Comparison between: Droplet-aware module-based synthesis (DASC) Routing-based synthesis (RBSC) with contamination avoidance
96
96 Experimental Evaluation 11.19% improvement for 14 x 14 Colorimetric protein assay Average schedule length out of 50 runs for DASC vs. RBSC Colorimetric protein assay 11.19 % improvement for 14 x 14 Colorimetric protein assay
97
97 Contributions Tabu Search-based algorithm for the module-based synthesis with fixed devices [CASES09] Module-based synthesis with virtual devices [CASES09] Module-based synthesis with non-rectangular virtual devices [DAEM10] Analytical method for operation execution characterization [CASES10] Routing-based synthesis [CASES10] + contamination [DAEM, submitted] Droplet-aware module based synthesis [JETC, submitted] ILP formulation for the synthesis of digital biochips [VLSI- SoC08]
98
98 Conclusions Proposed several synthesis techniques for DMBs Considered the reconfigurability characteristic of DMBs Shown that by considering reconfigurability during operation execution improvements in the completion time of applications can be obtained
99
99 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2
100
100 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 Module-Based Synthesis with Overlapping Devices
101
101 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 Fault-Tolerant Module-Based Synthesis M 1 (O 1 ) M 2 (O 2 ) Faulty cell S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 M 1 (O 1 ) M 2 (O 2 ) M 3 (O 3 )
102
102 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 Fault-Tolerant Module-Based Synthesis Faulty cell S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 M 1 (O 1 ) M 2 (O 2 ) M 3 (O 3 ) M 2 (O 2 ) M 1 (O 1 ) M 3 (O 3 )
103
103
104
104 Back-up slides
105
105 Electrowetting
106
106 Surface Tension Imbalance of forces between molecules at an interface (gas/liquid, liquid/liquid, gas/solid, liquid/solid)
107
107 Dispensing
108
108 Dispensing
109
109 Dispensing
110
110 Splitting
111
111 Mixing
112
112 Capacitive sensor
113
113 Design Tasks OperationArea(cells)Time(s) Mix 2 x 210 Mix1 x 35 Dilute1 x 38 Dilute2 x 53
114
114 Design Tasks OperationArea(cells)Time(s) Mix 2 x 210 Mix1 x 35 Dilute1 x 38 Dilute2 x 53 S1S1 S2S2 S3S3 B R1R1 R2R2
115
115 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric protein assay 9.73% improvement for 11 x 12 Colorimetric protein assay
116
116 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric protein assay 44.63% improvement for 10 x 10
117
117 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric protein assay 15.76% improvement for 13 x 13
118
118 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 3 2 1 Pin-Constrained Routing-Based Synthesis
119
119 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 3 2 1 Pin-Constrained Routing-Based Synthesis
120
120 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R1 3 2 1 Pin-Constrained Routing-Based Synthesis
121
121 Microfluidic Operations S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing
122
122 Microfluidic Operations S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection
123
123 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Microfluidic Operations
124
124 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Microfluidic Operations
125
125 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Microfluidic Operations
126
126 Motivational Example (for the first contrib) Application graph OperationArea(cells)Time(s) Mix2 x 43 Mix2 x 24 Dilution2 x 44 Dilution2 x 25 Dispense - 2 Module library 12 9 1212 In S 1 In B 8 In S 3 3 4 In R 1 56 7 In B 1 1313 1010 In R 2 Dilute Mix Dilute In S 2 Mix In B
127
127 Motivational Example(for the 2 nd contrib) 12 7 1010 4 In S 1 In R 1 Mix In R 2 SourceSource 3 In S 2 8 Mix Dilute SinkSink 9 56 In S 3 In B 1 1313 Waste In R 1 1212 Mix Application graph TypeArea (cells) Time (s) Mix/Dlt2 x 42.9 Mix/Dlt1 x 44.6 Mix/Dlt2 x 36.1 Mix/Dlt2 x 29.9 Input-2 Detect1 x 130 Module library
128
128 Example(for the 3 rd contrib) TypeArea (cells) Time (s) Mix/Dlt2 x 42.9 Mix/Dlt1 x 44.6 Mix/Dlt2 x 36.1 Mix/Dlt2 x 29.9 Input-2 Detect1 x 130 Module libraryApplication graph 12 9 1212 In S 1 In B 8 In S 3 3 4 In R 1 56 7 In B 1 1313 1010 In R 2 Dilute Mix Dilute In S 2 Mix In B
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.