Presentation is loading. Please wait.

Presentation is loading. Please wait.

NCKU CSIE EDALAB 何宗易 Tsung-Yi Ho Department of Computer Science and Information Engineering National Cheng Kung University.

Similar presentations


Presentation on theme: "NCKU CSIE EDALAB 何宗易 Tsung-Yi Ho Department of Computer Science and Information Engineering National Cheng Kung University."— Presentation transcript:

1 NCKU CSIE EDALAB 何宗易 Tsung-Yi Ho http://eda.csie.ncku.edu.tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan IEEE International Conference on Computer Design, 2009 ACM/IEEE International Conference on Computer Aided Design, 2009

2 NCKU CSIE EDALAB Outline of Work in ICCD 2009 Introduction Problem Formulation Algorithms Experimental Results Conclusion

3 NCKU CSIE EDALAB Introduction to Biochips ․ General definition  A chip with a small solid platform made of glass, plastic, or membrane ․ Functionality  Analysis, reaction, or detection of biological samples (DNA or human blood) ․ Application  Clinical diagnostics  Environmental monitoring  Massive parallel DNA analysis  Automated drug discovery  Protein crystallization Biochip (Agilent Technologies)

4 NCKU CSIE EDALAB Biochip Miniaturization ․ Smaller sample consumption ․ Lower cost ․ Higher throughput ․ Higher sensitivity ․ Higher productivity Conventional Biochemical Analyzer Shrink DNA microarray (Infineon AG)

5 NCKU CSIE EDALAB The Need of CAD Support ․ Design complexity is increased  Large-scale bioassays  Multiple and concurrent assay operations on a biochip ․ Electro-biological devices integration  System-level design challenges beyond 2009  International Technology Roadmap of Semiconductors (ITRS) Microfluidic components MEMS components Heterogeneous SOCs -Mixed-signal -Mixed-technology Digital blocks Analog blocks

6 NCKU CSIE EDALAB Classification of Biochips Biochips Microfluidic biochips Microarray DNA chipProtein chip Continuous- flow Droplet- based Electrical method Acoustical method Thermal method Chemical method Digital Microfluidic Biochips (DMFBs)

7 Continuous-flow biochips: Permanently etched microchannels, micropumps, and microvalves Digital microfluidic biochips: Manipulation of liquids as discrete droplets Microfluidic Biochips

8 NCKU CSIE EDALAB Unified Synthesis Methodology (Su and Chakrabarty, DAC 2005)

9 NCKU CSIE EDALAB Droplet Routing on Digital Microfluidic Biochips Side view Top view Droplet Bottom plate Top plate Ground electrode Control electrodes (cells) Hydrophobic insulation Droplet Spacing Reservoirs/Dispensing ports Photodiode 2D microfluidic array Droplets Control electrodes High voltage to generate an electric field The schematic view of a biochip (Duke Univ.)

10 NCKU CSIE EDALAB Routing Constraints ․ Fluidic constraint  For the correctness of droplet transportation  No unexpected mixing among droplets of different nets  Static and dynamic fluidic constraints ․ Timing constraint  Maximum transportation time of droplets Static fluidic constraint Minimum spacing Dynamic fluidic constraint X Y T

11 NCKU CSIE EDALAB Droplet Routing vs. VLSI Routing ․ Droplet routing  Droplets transportation from one location to another for reaction  Similar to Motion Planning in Robotics NP-hard even for only two robots! ․ Difference from traditional VLSI routing  Cells can be temporally shared by droplets - no permanent wires on a biochip  Droplet routing and scheduling; scheduling is to determine droplets’ locations at each time step  Unique fluidic properties for correct droplet movement ST DiDi DiDi ST Droplet Routing VLSI Routing

12 NCKU CSIE EDALAB Droplet Routing on Digital Microfluidic Biochips (DMFBs) ․ Input: A netlist of n droplets D = {d 1, d 2,…, d n }, the locations of m blockages B = {b 1, b 2,…, b m }, and the timing constraint T max. minimizing the number of unit cells ․ Objective: Route all droplets from their source cells to their target cells while minimizing the number of unit cells for better fault tolerance. ․ Constraint: Both fluidic and timing constraints are satisfied. T3T3 S4S4 T2T2 S1S1 T1T1 S3S3 T6T6 S5S5 T5T5 T4T4 S2S2 S6S6 Fluidic constraint Timing constraint BlockageSource of droplet iTarget of droplet i SiSi TiTi

13 NCKU CSIE EDALAB Related Work Prioritized A*-search algorithm [K. Böhringer, TCAD’06] A*-search for each droplet based on its priority High-priority droplets may block low-priority droplets Open shortest path first algorithm [Griffith et al, TCAD’06] Layout patterns with routing table No dynamic reconfiguration Two-stage algorithm [Su et al, DATE’06] Alternative routing path generation and droplet scheduling Random selection Network flow-based approach [Yuh et al, ICCAD’07] Maximize the number of nets routed Min-cost Max-flow formulation + prioritized A* search High-performance approach [Cho and Pan, ISPD’08] Capable of handing routing obstacles Routing order decided by bypassibility of targets

14 NCKU CSIE EDALAB A High-Performance Droplet Routing Algorithm for Digital Microfluidic Biochips * ․ Route one droplet movement at a time  Reduced routing search time ․ Bypassibility  To route a droplet with minimal impact on feasibility ․ Concession  To resolve a deadlock ․ Compaction  To satisfy timing constraint and improve fault- tolerance * M. Cho and D. Z. Pan, “A high-performance droplet routing algorithm for digital microfluidic biochips,” IEEE Trans. on CAD, vol. 27, no. 10, pp. 1714–1724, Oct. 2008.

15 NCKU CSIE EDALAB One Droplet at a Time

16 NCKU CSIE EDALAB Routing by Bypassibility ․ Three categories  Full: both horizontal and vertical bypasses are available.  Half: only either horizontal or vertical bypasses is available.  No: no bypass is available.

17 BlockageSource of droplet iTarget of droplet i SiSi TiTi (a) Test b (b) Test d S3S3 S2S2 S1S1 S5S5 S4S4 T2T2 T3T3 T4T4 T1T1 T5T5 S2S2 S1S1 S3S3 S4S4 S7S7 S9S9 S6S6 S8S8 T6T6 T4T4 T1T1 T9T9 T8T8 S5S5 T3T3 T5T5 T7T7 T2T2 Problems with Bypassibility ?

18 NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion Preferred Routing Track Construction Routing Ordering by Entropy Equation Routing Compaction by Dynamic Programming

19 NCKU CSIE EDALAB Preferred Routing Track Construction T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 S1 T1S3 Moving vector

20 NCKU CSIE EDALAB Preferred Routing Track Construction T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 S2 T2 A* maze searching

21 NCKU CSIE EDALAB Routing Ordering by Entropy Equation ․ Entropy where ΔBE di : the variant of entropy of each droplet ΔQ di : the energy variant for this energy system ES di : the energy system for the droplet.

22 NCKU CSIE EDALAB T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 ΔBE d5 = (9-(4+5)-(6)+(9+7))/9 = 10/9 Routing Ordering by Entropy Equation 4 5 T5 S5 9 6 9 7

23 NCKU CSIE EDALAB T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 Find a min-cost path for S5 Routing Ordering by Entropy Equation S5

24 NCKU CSIE EDALAB T3S4T2S1 T1S3 T6 T5 T4S2S6 Route S5 to the A-cell of T5 Routing Ordering by Entropy Equation S5

25 NCKU CSIE EDALAB T3S3T2S1 S2 T1 T6 S4T5 T4 Concession control Enhance Routability by Concession Control S5 S6 Dynamic Fluidic Constraint

26 NCKU CSIE EDALAB T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 Routing Compaction by Dynamic Programming duplicate movement Delete the duplicate movement

27 NCKU CSIE EDALAB T3S4T2S1 T1S3 T6 S5 T5 T4S2S6 Routing Compaction by Dynamic Programming D 2 = rruuuuuulllluuruu D 4 = lllddddddddddEx:

28 NCKU CSIE EDALAB ․ Illustration of dynamic programming  Decode the 2D routing path into the1D moving string (u, d, l, r) ․ Incremental compaction strategy P1P1 P2P2 P3P3 P4P4 P n-1 PnPn compaction compaction compaction … compactioncompaction Routing Compaction by Dynamic Programming S1S1 T1T1 S2S2 T2T2 MS 1 : rrrrrr MS 2 : dddddrrrr dddddrrrr 0123456789 rXXXX456789 rXXXXX56789 rXXXXXX6789 rXXXXXXX789 rXXXXXXXX89 rXXXXXXXXX9 Compaction d1d1 d2d2 d2d2 d2d2 d2d2 d2d2 d2d2 d2d2 d2d2 d2d2 d2d2 d1d1 d1d1 d1d1 d1d1 d1d1 d1d1 Used time = 9

29 NCKU CSIE EDALAB Experimental Settings ․ Implemented our algorithm in C++ language on a 2 GHz 64-bit Linux machine w/ 8GB memory ․ Compared with three state-of-the-art algorithms  Prioritized A* search [K. Böhringer, TCAD’06]  Network-flow algorithm [Yuh et al, ICCAD’07]  High-performance algorithm [Cho and Pan, ISPD’08] ․ Tested on three benchmark suites  Benchmark I [30] [Cho and Pan, ISPD’08]  Benchmark II [10] [Self generated]  Benchmark III [4] [Su and Chakrabarty, DAC’05] ※ Benchmark II: (1) bounding boxes of droplets are overlapped; (2) nx1 or 1xn narrow routing regions are used for routing; (3) the density of blockage area is over 30%.

30 Benchmark Suite IPrioritized A*Network-FlowHigh-PerformanceOur NameSize#NetT max #Blk#FailT la #T cell #FailT la #T cell #FailT la #T cell #FailT la #T cell Test112x121210023037662n/a 01006703973 Test212x1212100254n/a 7 1 04765 Test312x1212100284n/a 6 1 04158 Test412x1212100313n/a 5 0706403871 Test516x1616100390281082n/a 078118040100 Test616x16161003004311604413205511904798 Test716x1616100520331043n/a 08911304493 Test816x1616100542n/a 0471290419404996 Test916x1616100724n/a 3 1 04991 Test1016x1616100674n/a 2 07711005194 Test1124x24241001060622520100264047249056228 Test1224x24241001043n/a 080242052219062231 Test1324x24241001370602412n/a 052247062221 Test1424x24241001433n/a 2 057234064219 Test1524x2424100173063246074233083230064227 Test1624x24241001854n/a 3 063223058220 Test1732x32321003159n/a 2 068394077409 Test1832x32321003274n/a 088408091403073385 Test1932x32321003570704022n/a 090371081367 Test2032x32321003633n/a 091382099393078360 Test2132x32321003648n/a 2 076389085370 Test2232x32321003635n/a 4 085393073369 Test2348x48481006456n/a 0100681078738075709 Test2448x48481006538n/a 099737094807082717 Test2548x48481007635n/a 0100729091792087698 Test2648x48481007703n/a 099709088798084691 Test2748x48481008574n/a 0100770099762092739 Test2848x48481008645n/a 4 099808087726 Test2948x484810010167n/a 6 098733094698 Test3048x484810010178n/a 4 088751092701 Total1066130 ■ Size: Size of microfluidic array. ■ #Net: Number of droplets. ■ T max : Timing constraints. ■ #Blk: Number of blockage cells. ■ #Fail: Number of failed droplets. ■ T la : latest arrival time among all droplets. ■ T cell : Total number of cells used for routing. Experimental Results on Benchmark Suite I

31 Benchmark Suite I High-PerformanceOur NameT la #T cell CPUT la #T cell CPU Test1100670.1139730.08 Test470640.1338710.09 Test5781180.47401000.21 Test6551190.2547980.24 Test7891130.4744930.37 Test841940.2749960.19 Test10771100.4951940.64 Test11472490.55562280.81 Test12522191.59622310.91 Test13522471.52622210.98 Test14572343.03642192.82 Test15832301.42642272.08 Test16632230.95582201.74 Test17683942.42774093.85 Test18914031.32733850.91 Test19903711.33813670.78 Test20993935.76783603.71 Test217638911.22853704.31 Test22853935.13733694.18 Test23787383.59757095.84 Test24948073.66827175.78 Test25917924.30876986.91 Test26887983.71846914.11 Test27997626.26927395.41 Test28998084.31877265.97 Test299873336.47946989.72 Test308875129.72927018.14 Avg.1.211.101.40111 ■ T la : latest arrival time among all droplets. ■ T cell : Total number of cells used for routing. ■ CPU: CPU time (sec) Experimental Results on Benchmark Suite I

32 Benchmark Suite IIHigh-PerformanceOur NameSize#NetT max #Blk#FailT la #T cell #FailT la #T cell Test a13x136100691n/a 01751 Test b13x135100532n/a 01333 Test c16x167100950297402461 Test d16x1691001332n/a 02787 Test e24x2410100173038170038128 Test f24x24121002153n/a 045129 Test g32x3261004402n/a 039121 Test h32x3281004851n/a 03988 Test I48x481210010133n/a 085197 Test j48x48201001079086637083459 Total140 ■ Size: Size of microfluidic array. ■ #Net: Number of droplets. ■ T max : Timing constraints. ■ #Blk: Number of blockage cells. ■ #Fail: Number of failed droplets. ■ T la : latest arrival time among all droplets. ■ T cell : Total number of cells used for routing. (1) bounding boxes of droplets are overlapped; (2) nx1 or 1xn narrow routing regions are used for routing; (3) the density of blockage area is over 30%. Experimental Results on Benchmark Suite II

33 Benchmark Suite IIINetwork-FlowHigh-PerformanceOur NameSize#Sub.#Net# T max #D max #T cell in-vitro_116 x 161128205237258231 in-vitro_214 x 141535206236246229 protein_121 x 2164181206161816881588 protein_213 x 1378178206939963923 Avg.1.0231.0741.000 ■ Size: Size of microfluidic array. ■ #Sub: Number of subproblems. ■ #Net: Number of droplets. ■ T max : Timing constraints. ■ #D max : Maximum number of droplets among subproblems. ■ T cell : Total number of cells used for routing. Experimental Results on Benchmark Suite III

34 NCKU CSIE EDALAB Conclusion ․ We proposed a fast routability- and performance-driven droplet router for DMFBs. ․ Experimental results demonstrated that our algorithm achieves 100% routing completion for all test cases in three Benchmark Suites while the previous algorithms are not. ․ Furthermore, the experimental results shown that our algorithm can achieve better timing result (T la ) and fault tolerance (T cell ) and faster runtime (CPU) with the best known results.

35 NCKU CSIE EDALAB Outline of Work in ICCAD 2009 Introduction Problem Formulation Algorithms Experimental Results Conclusion

36 NCKU CSIE EDALAB Contamination problem Disjoint routes Routing with the wash droplet S1S1 S2S2 T1T1 T2T2 2D microfluidic array M d1d1 d2d2 d1d1 d2d2 d1d1 d2d2 Dispensing port Reservoir port W Contamination Constraints ․ Contamination problem d1d1 d2d2 W (1) separately (2) simultaneously

37 NCKU CSIE EDALAB Droplet Routing on Digital Microfluidic Biochips (DMFBs) ․ Input: A netlist of n droplets D = {d 1, d 2,…, d n }, the locations of blockages, and the timing constraint T max minimizing the number of used cells and execution time ․ Objective: Route all droplets from their source cells to their target cells while minimizing the number of used cells and execution time for better fault tolerance and reliability ․ Constraint: Fluidic, timing and contamination constraints should be satisfied. 2D microfluidic array Droplets Target Fluidic constraint Timing constraint Contamination constraint

38 NCKU CSIE EDALAB Related Work Droplet Routing Algorithm Droplet routing in the synthesis of digital microfluidic biochips [Su et al, DATE’06] Modeling and controlling parallel tasks in droplet based microfluidic systems [K. F. B hringer, TCAD’06] A network-flow based routing algorithm for digital microfluidic biochips [Yuh et al, ICCAD’07] Integrated droplet routing in the synthesis of microfluidic biochips [T. Xu and K. Chakrabarty, DAC’07] A high-performance droplet routing algorithm for digital microfluidic biochips [Cho and Pan, ISPD’08] Contamination-Aware Droplet Routing Algorithm Cross-contamination avoidance for droplet routing in digital microfluidic biochips [Y. Zhao and K. Chakrabarty, DATE’09] Disjoint routes Wash operation insertion strategy o:

39 NCKU CSIE EDALAB DATE’09 Total execution time for bioassay Subproblem SP 1 Subproblem SP 2 Subproblem SP n Subproblem SP n-1 Execution time of bioassay (time cycle) Biological reaction order … I(1,2) I(2,3) I(n-1,n) SP 2 W2W2 SP 1 W1W1 W 1,2 W 2,3 W n-1,n SP n WnWn SP n-1 W n-1 … Sequencing relationship Wash operation between subproblems Subproblem of bioassay Wash operation within one subproblem

40 NCKU CSIE EDALAB Ours Total execution time for bioassay Subproblem SP 1 Subproblem SP 2 Subproblem SP n Subproblem SP n-1 Execution time of bioassay (time cycle) Biological reaction order I(1,2) SP 1 W1W1 W 1,2 … I(2,3) I(n-1,n) SP 2 W2W2 W 2,3 W n-1,n SP n WnWn SP n-1 W n-1 … Sequencing relationship Wash operation between subproblems Subproblem of bioassay Wash operation within one subproblem SP 1 W 1,2 W1W1 SP 2 W 2,3 W2W2 SP n-1 W n-1,n W n-1 Reduced time Total execution time for bioassay

41 NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion Preprocessing Stage Intra-Contamination Aware Routing Stage Intra-Contamination Aware Routing Stage Inter-Contamination Aware Routing Stage Inter-Contamination Aware Routing Stage

42 NCKU CSIE EDALAB Preprocessing Stage ․ Preferred routing tracks construction  Reduce the design complexity for droplet routing  Minimize the used cells for better fault-tolerance  Increase the routability by concession control ․ Routing priority calculation  Routing-resource-based equation that considers the interference between droplets inside the routing region globally  Increase the routability for droplet routing

43 NCKU CSIE EDALAB Preprocessing Stage S1S1 S2S2 T1T1 T3T3 T2T2 d3d3 d1d1 d2d2 ․ Example Moving vector analysis Routing tracks construction

44 NCKU CSIE EDALAB Preprocessing Stage S1S1 S2S2 T1T1 T3T3 T2T2 Res 1 eq =((16+0)-(2+3))/16 = 11/16 Res 2 eq =((15+3)-(0))/18 = 1 Res 3 eq =((18+10)-(2+3))/28 =23/28 Route d 2 to the A-cell of T 2 by min-cost path d1d1 S3S3 Concession Control d2d2 d3d3 Res 3 eq =((18+10)-(2+6))/28 =20/28 Res 1 eq =((16+0)-(2))/16 = 14/16 ․ Example Moving vector analysis Routing tracks construction Routing priority calculation Minimum cost path

45 NCKU CSIE EDALAB Intra-Contamination Aware Routing Stage ․ Routing path modification by k-shortest path  Minimize the intra-contaminated spots by slightly modifying the routing path ․ Routing compaction by dynamic programming  Minimize the completion time for bioassays (series 2D routing paths to 3D routing paths) ․ Minimum cost circulation flow technique  Schedule the wash operation for wash droplets  Solve the intra-contaminated spots optimally under our flow construction

46 NCKU CSIE EDALAB Routing Path Modification by k-shortest Path ․ A k-shortest based algorithm †  Modify the original routing path slightly  Minimize the contaminated spots S1S1 T1T1 S2S2 T2T2 S3S3 T3T3 Contaminated spots: 6 -> 6 -> 2 Original routing path Select a highly-contaminated path Find the first shortest path Find the second shortest path Contamination spots Routing path SiSi Source location TiTi Target location † D. Eppstein, “Finding the k shortest paths,” Proc. IEEE FOCS, pp. 154-165, Feb. 1994.

47 NCKU CSIE EDALAB Routing Compaction by Dynamic Programming ․ Major goals:  Transform series 2D routing into 3D routing considering the timing issue and preserve the original routing path  Estimate the contaminated time of each contaminated spot ․ Optimal substructure  Optimally solution for a pair of droplets  Find the solution by dynamic programming incrementally

48 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Minimum Cost Circulation (MCC) problem  A generalization of network flow problems  Constraints: Bounded constraint: - each flow arc has a lower bound and a upper bound Conservation constraint: - the net flow of each node is zero  Objective: Minimize the cost:

49 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Circulation flow formulation  Schedule an optimal solution for correct wash operation  Four main phases of formulation ․ Two basic assignments  Node capacity assignment  Edge cost assignment ․ Two construction rules  Timing-based transitive topology  Connection strategy between phaseswashdropletswastereservoir contaminated spots dummy source

50 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Assignment 1: Node capacity assignment  Guarantee that the contaminated spot should be cleaned by the wash droplets Node split ․ Assignment 2: Edge cost assignment  Minimize the used cells and routing time of wash droplets  The same routing cost model between two points node split into input node and output node V IO node v assign the 3-tuple (l, u, c) of this arc

51 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Construction rule 1: Timing-based transitive topology  Timing-based topology The timing slot of each contaminated spot can be estimate by dynamic programming Connect a early contaminated spot to a later one by the 3- tuple  Transitive closure Allows the multiple wash droplets to perform the wash operation, while satisfying the timing-based topology For any triple contaminated spot (v i, v k, v j ), if there are edges connect and, a transitive edge also connects by assigning the

52 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Illustration V I O V I O V I O V I O … Contaminated spots Assignment 1 Assignment 2 Timing-based topology Transitive closure Transitive edge

53 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Construction rule 2: Connection between phases  Four major phases in the MCC formulation W3W3 W1W1 W2W2 W4W4 L = 0 U = 1 C = 0 L = 0 U = 1 C = min-cost path L = 0 U = ∞ C = min-cost path Source Sink... I O I O I O I O SourceWash dropletsContaminated spotsWaste reservoir

54 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Theorem 1: There exists a feasible solution under the two basic assignments and two flow construction rules  Proof The construction enhances at least one flow from the sink back to the source, meaning that one flow from the source to the wash droplet set. There also exists one possible path to travel all the contaminated node set (topology sorted order). STW Flow lower bound=1 C1C1 C2C2 CnCn Topology sorted order … At least one wash droplet Clean the contaminated spots

55 NCKU CSIE EDALAB Minimum Cost Circulation Flow Technique ․ Theorem 2: Under the proposed flow construction, we can adopt the MCC algorithm to schedule correct and optimal wash operations  Proof Theorem 1 shows there is a feasible solution, that is, the contaminated spots are correctly cleaned by the wash droplets. The MCC algorithm will obtain a feasible flow with minimum cost that represents the optimal scheduling of wash operations.

56 NCKU CSIE EDALAB Inter-Contamination Aware routing Stage ․ Look-ahead routing scheme  Contaminated spots also occur between subproblems  Predicting the inter-contaminations for the next subproblem and clean the intra- and inter-contaminations simultaneously to reduce the completion time Inter-contamination Intra-contamination sisi s i+1 s i and s i+1

57 NCKU CSIE EDALAB Inter-Contamination Aware routing Stage ․ Travelling salesman problem optimization †  Utilize the wash droplets while minimize the total used cells and completion time  Clean the set of non-washed look-ahead contaminated spots in the bounding box of node v i and v j ViVi VjVj (v i, v j ) is the edge of flow graph Consider the bounding box Inter-contaminated spots Construction rule 1 TSP optimization Inter-contaminated spots Intra-contaminated spots † R. Bellman, “Dynamic programming treatment of the travelling salesman problem,” J. ACM, pp. 61-63, Jan. 1962.

58 NCKU CSIE EDALAB Experimental Settings ․ Implement our algorithm in C++ language on a 2 GHz 64-bit Linux machine with 8GB memory ․ Comparison  Disjoint-route algorithm [Y. Zhao and K. Chakrabarty, DATE’09] ․ Tested on three benchmark suites  Benchmark [Su and Chakrabarty, DAC’05] CircuitSize#Sub#Net#D max #W in-vitro_116 x 16112854 in-vitro_214 x 14153564 protein_121 x 216418164 protein_213 x 137817864 Size: Size of the microfluidic array #Sub: Number of subproblems #Net: Total input nets #D max : Maximum number of droplets with one subproblem #W: Number of wash droplets

59 NCKU CSIE EDALAB Bioassay Ours (non k-SP)Ours (k-SP) #C intra #UCT exe CPU#C intra #UCT exe CPU in-vitro_1 533882250.18213511930.58 in-vitro_2 272912170.1352811910.39 protein_1 138241815921.4782221313942.58 protein_2 106145312800.7161136211081.49 Total 324455033142.49169420728865.04 #C intra : The number of intra-contaminations CPU: The CPU time (sec) T exe : The execution time for the bioassays Bioassay ContaminationsOurs (non look-ahead)Ours (look-ahead) #C intra #C inter #C intra #UCT exe CPU#UCT exe CPU in-vitro_1 2119214462270.323511930.58 in-vitro_2 5852672100.242811910.39 protein_1 8219082249315692.11221313942.58 protein_2 6114161149811720.47136211081.49 Total 169358169470431783.14420728865.04 #UC: The number of used cells for routing #C intra : The number of intra-contaminations #C iinter : The number of inter-contaminations CPU: The CPU time (sec) #UC: The number of used cells for routing T exe : The execution time for the bioassays 8% 13% 11%9% 48%

60 NCKU CSIE EDALAB Circuit Disjoint route (Y. Zhao and K. Chakrabarty)Ours (k-SP + look-ahead) #C intra #UCT exe CPU#C intra #UCT exe CPU in-vitro_1 46212680.06213511930.58 in-vitro_2 04232240.0352811910.39 protein_1 18321515080.2382221313942.58 protein_2 11157412870.1461136211081.49 Total 33583332870.46169420728865.04 #C intra : The number of intra-contaminations CPU: The CPU time (sec) #UC: The number of used cells for routing T exe : The execution time for the bioassays 28%12%

61 NCKU CSIE EDALAB Conclusion ․ We proposed a contamination aware droplet routing algorithm for DMFBs ․ We can optimally solve the wash droplets routing for the intra-contamination problem ․ Experimental results show that our algorithm can achieve better timing result (T exe ) and fault tolerance (#UC) compared with the best known results

62 NCKU CSIE EDALAB Tsung-Yi Ho http://eda.csie.ncku.edu.tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan ACM International Symposium on Physical Design, 2010

63 NCKU CSIE EDALAB Pin-Constrained Digital Microfluidic Biochips ․ Direct-addressing biochips  Dedicated control pin for each electrode  Maximum freedom of droplets  High demanded control pins ․ Broadcast-addressing biochips *  A control pin can be shared by multiple electrodes  Flexible for pin-constrained DMFBs  Control pin sharing 123456 789101112 131415161718 192021222324 1234 1 2 789101412 1314151387 214321 Control pins: 24 Control pins: 15 Dedicated pin to identify the control signal * [T. Xu and K. Chakrabarty, DAC’08]

64 NCKU CSIE EDALAB ․ Apply the direct-addressing scheme to a routing result Previous Method – Direct Addressing d1d1 d3d3 T2T2 d2d2 T3T3 T1T1 Control Pins: Used Cell: execution time: 1 23 4 5 8 6 9 7 10 11 12 20 23 21 24 22 25 26 18 15 13 14 17 16 19 26 18 # of control pins = # of used cells

65 NCKU CSIE EDALAB ․ Apply the broadcast-addressing scheme to a routing result Previous Method (1/2) – Broadcast Addressing d1d1 d3d3 T2T2 d2d2 T3T3 T1T1 Control Pins: Used Cell: execution time: 1 23 1 4 4 5 5 6 7 8 12 4 4 5 5 6 6 4 9 15 13 14 10 11 15 26 18

66 NCKU CSIE EDALAB ․ Integrate the broadcast-addressing scheme with droplet routing Previous Method (2/2) – Broadcast Addressing d1d1 d3d3 T2T2 d2d2 T3T3 T1T1 Control Pins: Used Cell: execution time: 1 23 1 4 4 5 5 6 7 89 4 4 5 5 6 6 4 9 10 11 8 5 13 12 10 11 13 29 20 Control Pins: Used Cell: execution time: 15 26 18 May increase the # of used cells and execution time

67 NCKU CSIE EDALAB ․ Integrate broadcast-addressing scheme with droplet routing while simultaneously minimizing the # of control pins, # of used cells, and execution time d1d1 d3d3 T2T2 d2d2 T3T3 T1T1 Control Pins: Used Cell: execution time: 1 23 1 4 4 9 5 6 3 7 2 4 9 6 7 6 2 5 8 5 7 2 9 23 15 Ours (1/2) Minimized # of control pins Minimized # of used cells Minimized execution time Control Pins: Used Cell: execution time: 13 29 20 Control Pins: Used Cell: execution time: 15 26 18

68 NCKU CSIE EDALAB ․ Contributions:  We propose the first algorithm that integrates the broadcast-addressing with droplet routing problem, while simultaneously minimizing the # of control pins, the # of used cells, and the execution time  A Basic ILP formulation is introduced to optimally solve the droplet routing problem  A two-stage ILP-based algorithm is presented to tackle the complexity of the basic ILP formulation Ours (2/2)

69 NCKU CSIE EDALAB


Download ppt "NCKU CSIE EDALAB 何宗易 Tsung-Yi Ho Department of Computer Science and Information Engineering National Cheng Kung University."

Similar presentations


Ads by Google