Synthesis of Digital Microfluidic Biochips with Reconfigurable Operation Execution Elena Maftei Technical University of Denmark DTU Informatics www.dreamstime.com Digital Microfluidic Biochip Duke University 2 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 3 Advantages & Challenges Advantages: High throughput (reduced sample / reagent consumption) Space (miniaturization) Time (parallelism) Automation (minimal human intervention) Challenges: Design complexity Radically different design and test methods required Integration with microelectronic components in future SoCs 4 Outline Motivation Architecture Operation Execution Contribution I Contribution II Routing-Based Synthesis Contribution III Module-Based Synthesis with Dynamic Virtual Devices Droplet-Aware Module-Based Synthesis Conclusions & Future Directions 5 Architecture and Working Principles Biochip architecture R Cell architecture Reservoir Ground electrode 2 Top plate B Filler fluid Droplet Insulators S2 Bottom plate S3 Control electrodes R Electrowetting-on-dielectric 1 S1 W Detector 6 Microfluidic Operations R 2 B S2 S3 R Dispensing Detection Splitting/Merging Storage Mixing/Dilution 1 S1 W 7 Reconfigurability R 2 B S2 S3 R Dispensing Detection Splitting/Merging Storage Mixing/Dilution 1 S1 W 8 Reconfigurability R 2 Non-reconfigurable B S2 S3 R Dispensing Detection Splitting/Merging Storage Mixing/Dilution 1 S1 W 9 Reconfigurability R 2 Non-reconfigurable B S2 S3 R 1 S1 W Dispensing Detection Reconfigurable Splitting/Merging Storage Mixing/Dilution 10 Module-Based Operation Execution R 2 B 2 x 4 module S2 S3 R 1 S1 W 11 Module-Based Operation Execution R 2 Operation Area (cells) B 2 x 4 module S2 S3 Time (s) Mix 2x4 3 Mix 2x2 4 Dilution 2x4 4 Dilution 2x2 5 Module library R 1 S1 W 12 Module-Based Operation Execution R 2 B 2 x 4 module S2 S3 segregation cells R 1 S1 W 13 Module-Based Operation Execution R 2 B S2 S3 Operations confined to rectangular, fixed modules Positions of droplets inside modules ignored Segregation cells R 1 S1 W 14 Module-Based Synthesis with Dynamic Virtual Modules 15 Example In S1 1 Dilute In B 2 In S2 5 3 4 6 7 In S3 8 Dilute In B 9 In R2 In R1 Mix 1 0 1 2 In B 1 3 1 1 S B 3 1 S R 1 2 S R D1 2 Dilute B Application graph 1 2 t W 16 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 6 2x2 2x4 7 8 9 S3 2x2 B1 2x4 R2 1 0 1 2 1 1 1 3 B2 S R 1 2 S R D1 2 2x2 B Application graph 1 2 Biochip W 17 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x2 2x4 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 R 1 2 S R D1 2 2x2 B Application graph 1 2 t W 18 Example S1 1 2 S2 3 4 R1 B1 5 2x2 2x4 7 8 9 S3 2x2 B1 2x4 R2 1 0 1 2 3 1 R 1 1 1 1 3 B D4 (O13) S 6 S B2 2 S D3 (O12) 2 M1 (O6) 1 2x2 B Application graph store O5 R 2 t+4 W 19 Example 1 2 S2 3 4 R1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 1 0 1 2 1 R 1 1 1 1 3 3 D4 (O13) S 6 B B2 2 S M2(O7) S1 S D3 (O12) 2 1 2x2 B Application graph R 2 t+8 W 20 Example S1 1 2 S2 3 4 R1 B1 t 5 6 8 2x2 9 S3 2x2 B1 2x4 R2 t+11 Allocation 2x4 7 t+8 1 0 1 2 Application graph 1 1 1 3 O6 Mixer1 Diluter2 O5 store O7 Mixer2 B2 2x2 Diluter3 O12 Diluter4 O13 Schedule 21 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R D1 2 1 2x2 B Application graph R 2 t W 22 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 23 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 24 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 25 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 26 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 27 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 28 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 29 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 30 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 31 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R 2 1 2x2 B Application graph R 2 t W 32 Example S1 1 2 S2 3 4 S B 3 1 R1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 3 B2 1 2 S R D1 2 1 2x2 B Application graph R 2 t W 33 Example S1 1 2 S2 3 4 S B 3 1 R1 B1 5 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 D2(O5) S 6 1 0 1 2 1 1 1 1 3 B2 2 S M1 (O6) D1 2 R 1 2x2 B Application graph R 2 t W 34 Example S1 1 2 S2 3 4 R1 S B 3 1 B1 S 6 2x4 2x2 7 8 9 S3 2x2 B1 2x4 R2 1 0 1 2 1 1 1 1 3 B2 S 2 D3 (O12) R 1 2x2 B Application graph R 2 M2 (O7) 5 D4 (O13) 2 W t+4 35 Example t t+8 t+11 Allocation Mixer1 Diluter2 O5 Allocation t t+4 O6 Mixer1 O6 store Diluter2 O5 O7 Mixer2 Mixer2 t+9 O7 Diluter3 O12 Diluter3 O12 Diluter4 O13 Diluter4 O13 Schedule – operation execution with fixed virtual modules Schedule – operation execution with dynamic virtual modules 36 Solution Binding of modules to operations Schedule of the operations Tabu Search List Scheduling Placement of modules performed inside scheduling Placement of the modules Maximal Empty Rectangles Free space manager based on [Bazargan et al. 2000] that divides free space on the chip into overlapping rectangles 37 Dynamic Placement Algorithm S (3,8) B 3 1 (8,8) Rect2 S R 1 Rect1 (0,4) S Rect3 1 R D1 2 (0,0) B 2 W 2 (7,0) 38 Dynamic Placement Algorithm S B 3 1 Rect2 D2(O5) S (8,8) R 1 (3,4) Rect1 S 2 (0,0) B 2 D1 W Rect3 (6,4) 1 R 2 (7,0) 39 Dynamic Placement Algorithm S B 3 1 (8,8) D2(O5) S 1 R 1 Rect2 (8,4) S D1 2 B 2 Rect1 R 2 (4,0) W (6,0) 40 Experimental Evaluation Tabu Search-based algorithm implemented in Java Benchmarks Real-life applications Synthetic benchmarks Colorimetric protein assay In-vitro diagnosis Polymerase chain reaction – mixing stage 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) 41 Experimental Evaluation Best-, average schedule length and standard deviation out of 50 runs for MBS Colorimetric Colorimetric protein protein assay assay Colorimetric protein assay Area Time limit (min) Best (s) Average (s) Standard dev. (%) 13 x 13 60 182 189.99 2.90 10 182 192.00 3.64 1 191 199.20 4.70 60 182 190.86 3.20 10 185 197.73 6.50 1 193 212.62 10.97 60 184 192.50 3.78 10 194 211.72 14.37 1 226 252.19 15.76 12 x 12 42 Experimental Evaluation Best schedule length out of 50 runs for MBS vs. T-Tree Colorimetric protein assay Colorimetric protein assay Colorimetric protein Colorimetric protein assayassay 300 Best schedule length (s) 250 200 150 MBS T-Tree 100 50 0 10 x 10 10 x 9 9x9 Area (cells x cells) Colorimetric protein assay 22.91 % improvement for 9 x 9 43 Experimental Evaluation Average schedule length out of 50 runs for DMBS vs. MBS Colorimetric protein assay Colorimetric protein assay Average schedule length (s) 250 200 150 DMBS MBS 100 50 0 13 x 13 12 x 12 11 x 12 Area (cells x cells) Colorimetric protein for assay 7.68 % improvement 11 x 12 44 Routing-Based Operation Execution 45 Module-Based vs. Routing-Based Operation Execution R R 2 2 B S 2 S B S c 2 1 3 c S 2 3 R S 1 W 1 R S W 1 1 46 Operation Execution Characterization R 2 B p90, p180, p0 ? S c 2 1 180◦ 90◦ c 90◦ S 2 3 0◦ S R W 1 1 47 Operation Execution Characterization 90◦ 0◦ 90◦ 0◦ 0◦ Type Area (cells) Time (s) Mix/Dlt 2x4 2.9 p90, p180, p0 Mix/Dlt 1x4 4.6 Mix/Dlt 2x3 6.1 0◦ 90◦ Mix/Dlt 2x2 9.9 ◦ 0◦ 90◦ 90 90◦ 90◦ 90◦ Input - 2 Detect 1x1 30 0◦ 90◦ 0◦ 90◦ 90◦ 180◦ 0◦ 90◦ 0◦ 0◦ 180◦ Electrode pitch size = 1.5 mm, gap spacing = 0.3 mm, average velocity rate = 20 cm/s. 48 Operation Execution Characterization p90 = 0.1 % p180 = - 0.5 % p0 = 0.29 % 1 p0 = 0.58 % 2 Type Area (cells) Time (s) Mix/Dlt 2x4 2.9 Mix/Dlt 1x4 4.6 Mix/Dlt 2x3 6.1 Mix/Dlt 2x2 9.9 Input - 2 Detect 1x1 30 Electrode pitch size = 1.5 mm, gap spacing = 0.3 mm, average velocity rate = 20 cm/s. 49 Example R 2 B 1 In S1 2 In R1 4 3 In S2 In R2 5 In S3 8 7 Mix 1 0 In B S 9 Dilute Mix Mix 6 2 S 3 1 In R1 1 Mix 1 2 1 3 R Waste S W 1 1 Application graph Biochip 50 Example R 2 S1 R1 S2 R2 S3 B B 4 3 5 6 S 8 7 1x4 9 1x4 1x4 1 0 R1 1 1 2 2x4 2x4 1 2 1 3 M2(O7) 2 M1(O8) 1 S 3 R W S W 1 1 t = 2.04 s Application graph 51 Example R 2 S1 R1 S2 R2 S3 B B 4 3 5 6 S 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 2 2x4 2x4 1 2 1 3 D1(O9) 2 M3(O10) 1 S 3 R W S W 1 1 t = 6.67 s Application graph 52 Example R 2 S1 R1 S2 R2 S3 B B 4 3 5 6 S 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 2 2x4 2x4 1 2 M4(O12) 2 M3(O10) 1 S 3 1 3 R W S W 1 1 t = 9.5 s Application graph 53 Example S1 R1 S2 R2 S3 B 2.04 1 2 4 3 5 6 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 2x4 Application graph 1 2 Mixer1 O8 Mixer2 O7 Mixer3 2x4 1 3 Diluter1 Mixer4 12.50 6.67 O10 O9 O12 W Schedule 54 Example R 2 S1 R1 1 S2 2 R2 S3 4 3 4 B 5 6 S 3 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 4 6 4 6 8 6 2 2x4 2x4 1 2 1 3 1 W S 1 1 7 2 W B 9 5 2 R 1 1 t = 2.03 s Application graph 55 Example R 13.58 times 2 S1 R1 S2 R2 S3 B B 1 2 4 3 5 6 S 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 8 2 9 2x4 2x4 1 2 S 3 1 3 R 7 W S W 1 1 t = 4.20 s Application graph 56 Example R 2 S1 R1 S2 R2 S3 B 10 8 1 2 4 3 5 6 8 9 1x4 1x4 1x4 1 0 R1 1 1 2 2x4 2x4 1 2 8 8 9 e e B 7 S 7 8 1 3 7 13 11 S 7 13 13 7 13 11 3 13 13 13 13 11 R 7 W 12 11 S W 1 1 t = 4.28 s Application graph 57 Example R 10.33 times 2 S1 R1 S2 R2 S3 B B 10 1 2 4 3 5 6 S 8 7 9 1x4 1x4 1x4 1 0 R1 1 1 12 2 S 2x4 2x4 1 2 3 1 3 R W S W 1 1 t = 6.34 s Application graph 58 Example 2.04 12.50 6.67 2.03 4.20 Mixer1 O8 O7 Mixer2 O7 O8 Mixer3 Diluter1 Mixer4 6.35 O9 O10 O9 O10 O12 Schedule – module-based operation execution O12 Schedule – routing-based operation execution 59 Solution S o u r c e 1 In S1 2 In R1 In S2 In R2 5 Mix 1 In R1 1 1 0 In B Mix Merge 9 Dilute Mix Mix 6 In S3 8 7 Mix 4 3 1 2 1 3 Waste S i n k 60 Solution S o u r c e 1 In S1 2 In R1 In S2 In R2 5 Mix Minimize the completion time for the operation 1 In R1 1 1 0 In B Mix Merge 9 Dilute Mix Mix 6 In S3 8 7 Mix 4 3 1 2 1 3 Minimize the time until the droplets meet Waste S i n k 61 Solution Greedy Randomized Adaptive Search Procedure (GRASP) R 2 3 B 3 3 2 S 2 S 1 3 R S W 1 1 62 Solution Greedy Randomized Adaptive Search Procedure (GRASP) R 2 3 B 3 3 2 For each droplet: S 2 Determine possible moves Evaluate each move S 1 3 S W R 1 Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N 1 63 Solution Greedy Randomized Adaptive Search Procedure (GRASP) R 2 3 B 3 3 2 For each droplet: S 2 Determine possible moves Evaluate each move S 1 3 S W R 1 Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N 1 64 Solution Greedy Randomized Adaptive Search Procedure (GRASP) R 2 3 B 3 3 2 For each droplet: S Determine possible moves Evaluate each move 2 1 S 1 3 S W R 1 Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N 1 65 Solution Greedy Randomized Adaptive Search Procedure (GRASP) R 2 3 B 3 3 3 2 For each droplet: S Determine possible moves Evaluate each move 2 1 S 1 3 S W R 1 Merge: minimize Manhattan distance Mix: maximize operation execution Make a list of the best N moves Perform a random move from N 1 66 Experimental Evaluation GRASP-based algorithm implemented in Java Benchmarks Real-life applications Synthetic benchmarks Colorimetric protein assay 10 TGFF-generated benchmarks with 10 to 100 operations Comparison between: Routing-based synthesis (RBS) Module-based synthesis with fixed modules (MBS) 67 Experimental Evaluation Average schedule length out of 50 runs for RBS vs. MBS Colorimetric protein assay Colorimetric protein assay Colorimetric protein Colorimetric protein assayassay Average schedule length (s) 250 200 150 RBS MBS 100 50 0 11 x 11 11 x 10 assay Colorimetric protein 10 x 10 Area (cells x cells) Colorimetric protein assay 44.95% improvement for10 10xx10 10 44.95 % improvement for 68 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination 69 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S B 3 1 R 1 2 S 1 R S 1 2 residues B 2 R 3 W 70 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S B 3 1 R 1 2 S 1 R S 1 2 B w1 2 R 3 W 71 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S B 3 1 1 R 2 S 1 R S 1 2 B w1 R 3 2 W 72 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S B 3 1 1 R 2 S 1 R S 1 2 w1 B 2 R 3 W 73 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S 3 B 1 1 R 2 S 1 Partition2 S w2 R 1 w1 2 B 2 Partition1 R 3 W 74 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S 3 B 1 1 R S B 3 1 2 S R 2 S 1 Partition2 S w2 R 1 R 1 1 w1 2 S B 2 B 2 Partition1 R 3 2 1 W R 3 W 75 Routing-Based Operation Execution Conclusions Improved completion time compared to module-based synthesis Challenge: contamination S 3 B 1 1 R S B 3 1 R 2 S 2 S 1 Partition2 S w2 R w2 1 R 1 1 w1 2 S B 2 w1 2 Partition1 R 3 B 2 1 W R 3 W 76 Droplet-Aware Operation Execution without Contamination 77 Example In S1 1 Dilute In B 2 In S2 5 In S3 Dilute In B 9 4 6 7 8 3 Mix In R2 In R1 Mix 1 0 1 2 In B 1 3 1 1 B 3 1 S R 1 1 S R 2 2 Dilute B Application graph S 2 W Biochip 78 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 Mix 2x4 1 0 1 1 1 3 B2 S R 1 1 S R 2 2 Dilute 2x3 B Application graph 2 W Biochip 79 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 Mix 2x4 1 0 1 1 1 3 S R 1 1 D1 (O5) S B2 2 R 2 Dilute 2x3 B Application graph M1 (O6) 2 W t=2s 80 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 D3(O13) S Mix 2x4 1 0 1 1 1 1 3 S B2 2 R D2(O12) 2 Dilute 2x3 B Application graph R 1 M2 (O7) 2Dilute x4 5 2 W t = 4.9 s 81 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 2 Mix 2x4 1 0 Application graph 1 1 1 3 Diluter1 O5 Mixer1 O6 Mixer2 B2 Dilute 2x3 11 4.9 O7 Diluter2 O12 Diluter3 O13 Schedule 82 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 Mix 2x4 1 0 1 1 1 3 S R 1 1 D1 (O5) S B2 2 R 2 Dilute 2x3 B Application graph M1 (O6) 2 W t=2s 83 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 Mix 2x4 1 0 1 1 1 3 S R 1 1 D1(O5) S B2 Dilute 2x3 M1(O6) 2 2 5 6 B Application graph R 2 W t=2s 84 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 S B 3 1 B1 2Dilute x4 5 6 D3(O13) S Mix 2x4 1 R 1 13 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 1 0 1 1 1 3 S B2 Dilute 2x3 M2(O7) D2(O12) 2 7 B Application graph R 2 2 12 W t = 4.17 s 85 Example SIn 1 S1 1 2 SIn 2 S2 3 4 InRR 11 B1 2Dilute x4 5 6 7 S3 SIn 3 8 Dilute 2x3 9 1 2 B1 Mix 1x4 R2 2 Mix 2x4 1 0 Application graph 1 1 1 3 4.17 6.67 Diluter1 O 5 O Mixer 1 Mixer2 B2 Dilute 2x3 6 Diluter2 O7 O Diluter3 O 12 13 Schedule 86 Example 2 Diluter1 O5 Mixer1 O6 Mixer2 Diluter2 Diluter3 11 4.9 2 4.17 6.67 Diluter1 O 5 O Mixer 1 O7 Mixer2 6 O12 Diluter2 O7 O O13 Diluter3 O Schedule – module-based operation execution 12 13 Schedule – droplet-aware operation execution 87 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 88 Droplet-Aware Operation Execution S B 3 1 D3(O13) S 1 S R 1 M2(O7) R D2(O12) 2 B 2 W 2 89 Droplet-Aware Operation Execution S B 3 1 13 13 13 13 S 7 7 R 7 1 1 7 S R 12 2 2 12 12 12 B W 2 90 Droplet-Aware Operation Execution S B 3 1 13 13 13 13 S 7 7 R 7 1 1 7 S R 12 2 2 12 12 12 B W 2 91 Droplet-Aware Operation Execution S B 3 1 13 13 13 13 S 7 7 R 7 1 1 7 S 7 R 12 2 2 12 12 12 B W 2 92 Experimental Evaluation Algorithm implemented in Java Benchmarks Real-life applications Synthetic benchmarks In-vitro diagnosis Colorimetric protein assay 3 TGFF-generated benchmarks with 20, 40, 60 operations Comparison between: Droplet-aware module-based synthesis (DAS) Module-based synthesis (MBS) 93 Experimental Evaluation Average schedule length out of 50 runs for DAS vs. MBS Colorimetric protein assay Colorimetric protein assay Colorimetric protein Colorimetric protein assayassay 140 Average schedule length (s) 120 100 80 DAS MBS 60 40 20 0 15 x 15 14 x 14 13 x 13 Area (cells x cells) Colorimetric protein assay 21.55 % improvement 21.55% improvementfor for13 13xx13 13 94 Experimental Evaluation Algorithm implemented in Java Benchmarks Real-life applications Synthetic benchmarks Colorimetric protein assay 3 TGFF-generated benchmarks with 20, 40, 60 operations Comparison between: Droplet-aware module-based synthesis (DASC) Routing-based synthesis (RBSC) with contamination avoidance 95 Experimental Evaluation Average schedule length out of 50 runs for DASC vs. RBSC Colorimetric protein assay Colorimetric protein assay Colorimetric protein Colorimetric protein assayassay Average schedule length (s) 250 200 150 DASC RBSC 100 50 0 15 x 15 14 x 14 13 x 13 Area (cells x cells) Colorimetric protein assay 11.19 % improvement 11.19% improvementfor for14 14xx14 14 96 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 [VLSISoC08] 97 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 98 Future Directions S B 3 1 S R 1 1 M2 S R 2 2 M1 B W 2 99 Future Directions Module-Based Synthesis with Overlapping Devices S B S B 3 1 3 1 S 1 M2 S 2 M1 B 2 W R S R 1 1 1 R S 2 2 M2 R 2 M1 B W 2 100 Future Directions Fault-Tolerant Module-Based Synthesis S B S B 3 1 3 1 M2 (O2) S S M3(O3) 1 M1 (O1) 2 B 2 W R S 1 1 R S 2 2 M2 (O2) Faulty cell R 1 R M1 (O1) B 2 W 2 101 Future Directions Fault-Tolerant Module-Based Synthesis S B S B 3 1 3 1 S S M3(O3) 1 M1 (O1) 2 B 2 W R S 1 1 R S 2 2 M2 (O2) Faulty cell R 1 M3(O3) M2 (O2) M1 (O1) B R 2 W 2 102 103 Back-up slides 104 Electrowetting 105 Surface Tension Imbalance of forces between molecules at an interface (gas/liquid, liquid/liquid, gas/solid, liquid/solid) 106 Dispensing 107 Dispensing 108 Dispensing 109 Splitting 110 Mixing 111 Capacitive sensor 112 Design Tasks Operation Area(cells) Time(s) Mix 2x2 10 Mix 1x3 5 Dilute 1x3 8 Dilute 2x5 3 113 Design Tasks S Operation Area(cells) Time(s) Mix 2x2 10 Mix 1x3 5 Dilute 1x3 8 Dilute 2x5 3 B 3 S R 1 1 S R 114 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric Colorimetricprotein proteinassay assay Best schedule length (s) DMBS vs. FMBS 250 200 150 DMBS FMBS 100 50 0 13 x 13 12 x 12 11 x 12 Area (cells x cells) Colorimetric protein assay 9.73% improvement for 11 x 12 115 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric Colorimetricprotein proteinassay assay RBS vs. MBS Best schedule length (s) 250 200 150 RBS MBS 100 50 0 11 x 11 11 x 10 10 x 10 Area (cells x cells) Colorimetric protein assay 44.63% improvement for 10 x 10 116 Experimental Evaluation Quality of the solution compared to classical operation execution Best out of 50 Colorimetric Colorimetricprotein proteinassay assay DAS vs. MBS 140 Best schedule length (s) 120 100 80 DAS MBS 60 40 20 0 15 x 15 14 x 14 13 x 13 Area (cells x cells) Colorimetric protein assay 15.76% improvement for 13 x 13 117 Future Directions Pin-Constrained Routing-Based Synthesis S B 3 1 3 S R 1 1 1 S R 2 2 2 B W 2 118 Future Directions Pin-Constrained Routing-Based Synthesis S B 3 1 3 S R 1 1 1 S R 2 2 2 B W 2 119 Future Directions Pin-Constrained Routing-Based Synthesis S B 3 1 3 S R 1 1 1 S R 2 2 2 B W 2 120 Microfluidic Operations R Dispensing 2 B Dispensing S2 S3 R 1 S1 W 121 Microfluidic Operations R 2 B S2 Dispensing Detection S3 R 1 S1 W 122 Microfluidic Operations R 2 B S2 S3 Dispensing Detection Splitting/Merging R 1 S1 W 123 Microfluidic Operations R 2 B S2 S3 Dispensing Detection Splitting/Merging R 1 S1 W 124 Microfluidic Operations R 2 B S2 S3 Dispensing Detection Splitting/Merging Storage R 1 S1 W 125 Motivational Example (for the first contrib) In S1 1 In B 2 In S2 3 4 In R1 Operation Area(cells) Dilute 5 6 7 In S3 8 Dilute In B 9 Mix In R2 Mix 1 0 1 2 Application graph In B 1 3 1 1 Time(s) Mix 2x4 3 Mix 2x2 4 Dilution 2x4 4 Dilution 2x2 5 Dispense - 2 Dilute Module library 126 Motivational Example(for the 2nd contrib) S o u r c e 1 In S1 2 In R1 4 3 In S2 In R2 5 In S3 8 7 Mix 1 In R1 1 1 0 In B 9 Dilute Mix Mix 6 Mix 1 2 1 3 Waste Type Area (cells) Time (s) Mix/Dlt 2x4 2.9 Mix/Dlt 1x4 4.6 Mix/Dlt 2x3 6.1 Mix/Dlt 2x2 9.9 - 2 1x1 30 Input Detect S i n k Application graph Module library 127 Example(for the 3rd contrib) In S1 1 Dilute In B 2 In S2 5 8 Dilute In B 9 4 6 7 In S3 3 Mix In R2 1 2 Application graph Area (cells) Time (s) Mix/Dlt 2x4 2.9 Mix/Dlt 1x4 4.6 Mix/Dlt 2x3 6.1 Mix/Dlt 2x2 9.9 - 2 1x1 30 In R1 Mix 1 0 Type In B 1 3 1 1 Input Detect Dilute Module library 128
© Copyright 2026 Paperzz