Synthesis of Digital Microfluidic Biochips with Reconfigurable Operation Execution Elena Maftei Technical University of Denmark DTU Informatics
2 Duke University Digital Microfluidic Biochip
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 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 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 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 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Microfluidic Operations
8 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution
9 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Non-reconfigurable
10 Reconfigurability S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Mixing/Dilution Non-reconfigurable Reconfigurable
11 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 2 x 4 module
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 Module-Based Operation Execution S2S2 R2R2 B S3S3 S1S1 W R1R1 2 x 4 module segregation cells
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 Module-Based Synthesis with Dynamic Virtual Modules
16 Example S1S1 S2S2 S3S3 B1B1 R2R2 R1R1 W B2B2 D1D1 tApplication graph 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 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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 S
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 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 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 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 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 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 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 x Colorimetric protein assay
43 Experimental Evaluation Colorimetric protein assay Best schedule length out of 50 runs for MBS vs. T-Tree Colorimetric protein assay % improvement for 9 x 9
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 Routing-Based Operation Execution
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 Operation Execution Characterization S2S2 R2R2 B S3S3 S1S1 W R1R1 c2c2 90 ◦ 0◦0◦ 180 ◦ c1c1 p 90, p 180, p 0 ?
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 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 = % 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 Example In S 1 In R 1 Mix In R 2 3 In S 2 8 Mix Dilute 9 56 In S 3 In B Waste In R Mix Application graphBiochip S2S2 R2R2 B R1R1 S1S1 W S3S3
51 Example Application graph 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 Example t = 6.67 s S2S2 R2R2 B R1R1 S1S1 W S3S3 M 3 (O 10 ) D 1 (O 9 ) Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
53 Example t = 9.5 s S2S2 R2R2 B R1R1 S1S1 W S3S3 M 4 (O 12 ) M 3 (O 10 ) Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
54 Example Mixer 1 Mixer 3 Mixer 2 O8O8 O9O O 12 O 10 Diluter 1 Mixer 4 O7O7 ScheduleApplication graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
55 Example t = 2.03 s S2S2 R2R2 R1R1 S1S1 B W Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
56 Example t = 4.20 s S2S2 R2R2 S1S1 W S3S3 R1R1 B times Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
57 Example t = 4.28 s R2R2 W S1S1 R1R1 S3S3 B S2S e e Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
58 Example t = 6.34 s R2R2 W S1S1 R1R1 S3S3 B S2S times Application graph x 4 2 x 4 1 x 4 W R 1 R 2 S 3 B S 2 R 1 S 1
59 Example Schedule – module-based operation execution Schedule – routing-based operation execution Mixer 1 Mixer 3 Mixer 2 O8O8 O9O O 12 O 10 Diluter 1 Mixer 4 O7O O 10 O7O7 O8O8 O9O9 O 12
60 Solution 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 Waste In R Mix Merge Mix
61 Solution 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 Waste In R Mix Merge Mix Minimize the completion time for the operation Minimize the time until the droplets meet
62 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W
63 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 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 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 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 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 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 Solution Greedy Randomized Adaptive Search Procedure (GRASP) S2S2 R2R2 S3S3 R1R1 S1S1 B W 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 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 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 % improvement for 10 x 10
69 Routing-Based Operation Execution - Conclusions Improved completion time compared to module-based synthesis Challenge: contamination
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 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 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 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 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 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 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 Droplet-Aware Operation Execution without Contamination
78 Example Biochip In S 1 In B 8 In S In R In B In R 2 Dilute Mix Dilute In S 2 Mix In B Application graph S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2
79 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B In S 1 8 In S In R 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 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 t = 2 s Application graph In S 1 8 In S In R 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 Example t = 4.9 s M 2 (O 7 ) S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 Application graph In S 1 8 In S In R 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 Example Diluter 1 O5O5 O O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2 ScheduleApplication graph In S 1 8 In S In R 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 Example S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 t = 2 sApplication graph In S 1 8 In S In R 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 Example t = 2 s S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2 65 Application graph In S 1 8 In S In R 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 Example t = 4.17 s S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B Application graph In S 1 8 In S In R 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 Example Schedule Diluter 1 O5O5 O O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer Application graph In S 1 8 In S In R 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 Example Schedule – module-based operation execution Schedule – droplet-aware operation execution Diluter 1 O5O5 O O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer Diluter 1 O5O5 O O7O7 O6O6 O 13 Diluter 2 Diluter 3 Mixer 1 Mixer 2
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 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 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R
91 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R
92 Droplet-Aware Operation Execution S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R
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 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 % improvement for 13 x 13 Colorimetric protein assay
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 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 % improvement for 14 x 14 Colorimetric protein assay
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 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 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 R1R1 B2B2
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 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 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
104 Back-up slides
105 Electrowetting
106 Surface Tension Imbalance of forces between molecules at an interface (gas/liquid, liquid/liquid, gas/solid, liquid/solid)
107 Dispensing
108 Dispensing
109 Dispensing
110 Splitting
111 Mixing
112 Capacitive sensor
113 Design Tasks OperationArea(cells)Time(s) Mix 2 x 210 Mix1 x 35 Dilute1 x 38 Dilute2 x 53
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 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 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 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 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R Pin-Constrained Routing-Based Synthesis
119 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R Pin-Constrained Routing-Based Synthesis
120 Future Directions S1S1 R2R2 W S3S3 B1B1 S2S2 B2B2 R1R Pin-Constrained Routing-Based Synthesis
121 Microfluidic Operations S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing
122 Microfluidic Operations S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection
123 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Microfluidic Operations
124 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Microfluidic Operations
125 S2S2 R2R2 B S3S3 S1S1 W R1R1 Dispensing Detection Splitting/Merging Storage Microfluidic Operations
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 In S 1 In B 8 In S In R In B In R 2 Dilute Mix Dilute In S 2 Mix In B
127 Motivational Example(for the 2 nd contrib) 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 Waste In R 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 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 In S 1 In B 8 In S In R In B In R 2 Dilute Mix Dilute In S 2 Mix In B