Скачать презентацию IEEE International Conference on Computer Design Tsung-Wei Huang Скачать презентацию IEEE International Conference on Computer Design Tsung-Wei Huang

d8e920a3ab4ff32dfac66d6b13378c20.ppt

  • Количество слайдов: 32

IEEE International Conference on Computer Design Tsung-Wei Huang and Tsung-Yi Ho http: //eda. csie. IEEE International Conference on Computer Design Tsung-Wei Huang and Tsung-Yi Ho http: //eda. csie. ncku. edu. tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan NCKU CSIE EDALAB

Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB

Introduction to Biochips ․ General definition ¾ A chip with a small solid platform 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) NCKU CSIE EDALAB

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

The Need of CAD Support ․ Design complexity is increased ¾ ¾ Large-scale bioassays 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) Heterogeneous SOCs -Mixed-signal -Mixed-technology Digital blocks Analog blocks MEMS components Microfluidic components NCKU CSIE EDALAB

Classification of Biochips Microfluidic biochips Microarray DNA chip Chemical method Protein chip Thermal method Classification of Biochips Microfluidic biochips Microarray DNA chip Chemical method Protein chip Thermal method Dropletbased Electrical method Continuousflow Acoustical method Digital Microfluidic Biochips (DMFBs) NCKU CSIE EDALAB

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

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

Droplet Routing vs. VLSI Routing ․ Droplet routing ¾ Droplets transportation from one location Droplet Routing vs. VLSI Routing ․ Droplet routing ¾ Droplets transportation from one location to another for reaction ․ 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 Droplet Routing S Di T VLSI Routing S T NCKU CSIE EDALAB

Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB

Droplet Routing on Digital Microfluidic Biochips (DMFBs) ․ Input: A netlist of n droplets Droplet Routing on Digital Microfluidic Biochips (DMFBs) ․ Input: A netlist of n droplets D = {d 1, d 2, …, dn}, the locations of m blockages B = {b 1, b 2, …, bm}, and the timing constraint Tmax. ․ 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. T 3 S 4 T 2 S 1 • Fluidic constraint T 1 S 3 T 6 S 5 T 4 S 2 Blockage Si Source of droplet i • Timing constraint S 6 Ti NCKU CSIE EDALAB Target of droplet i

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

Problems with Bypassibility S 1 S 2 S 3 S 1 S 4 ? Problems with Bypassibility S 1 S 2 S 3 S 1 S 4 ? T 2 S 2 T 5 S 5 T 2 T 1 T 3 S 8 S 6 T 7 S 5 T 3 S 4 T 5 T 6 S 7 T 4 T 8 S 9 (b) Test d (a) Test b Blockage T 1 Si Source of droplet i Ti Target of droplet i T 9

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

Preferred Routing Track Construction T 3 S 4 T 2 S 1 T 1 Preferred Routing Track Construction T 3 S 4 T 2 S 1 T 1 S 3 T 1 S 5 T 6 S 3 Moving vector T 4 T 5 S 2 S 6 NCKU CSIE EDALAB

Preferred Routing Track Construction A* maze searching T 3 S 4 T 2 S Preferred Routing Track Construction A* maze searching T 3 S 4 T 2 S 1 T 1 S 3 T 6 S 5 T 4 S 2 S 6 NCKU CSIE EDALAB

Routing Ordering by Entropy Equation ․ Entropy where ΔBEdi : the variant of entropy Routing Ordering by Entropy Equation ․ Entropy where ΔBEdi : the variant of entropy of each droplet ΔQdi : the energy variant for this energy system ESdi : the energy system for the droplet. NCKU CSIE EDALAB

Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T 1 S 3 5 T 6 79 S 5 9 T 4 4 6 S 2 T 5 S 6 ΔBEd 5 = (9 -(4+5)-(6)+(9+7))/9 = 10/9 NCKU CSIE EDALAB

Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T 1 S 3 T 6 S 5 T 5 T 4 S 2 S 6 Find a min-cost path for S 5 NCKU CSIE EDALAB

Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T Routing Ordering by Entropy Equation T 3 S 4 T 2 S 1 T 1 S 3 T 6 S 5 T 4 S 2 Route S 5 to the A-cell of T 5 S 6 NCKU CSIE EDALAB

Enhance Routability by Concession Control T 3 S 3 T 2 S 1 S Enhance Routability by Concession Control T 3 S 3 T 2 S 1 S 2 T 1 Dynamic Fluidic Constraint S 4 T 6 S 5 T 4 S 6 Concession control NCKU CSIE EDALAB

Routing Compaction by Dynamic Programming T 3 S 4 T 2 S 1 T Routing Compaction by Dynamic Programming T 3 S 4 T 2 S 1 T 1 S 3 duplicate movement T 6 S 5 T 4 S 2 S 6 Delete the duplicate movement NCKU CSIE EDALAB

Routing Compaction by Dynamic Programming T 3 S 4 T 2 S 1 T Routing Compaction by Dynamic Programming T 3 S 4 T 2 S 1 T 1 S 3 T 6 S 5 T 4 S 2 Ex: D 2 = rruuuuuulllluuruu S 6 D 4 = lllddddd NCKU CSIE EDALAB

Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB

Experimental Settings ․ Implemented our algorithm in C++ language on a 2 GHz 64 Experimental Settings ․ Implemented our algorithm in C++ language on a 2 GHz 64 -bit Linux machine w/ 8 GB 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) nx 1 or 1 xn narrow routing regions are used for routing; (3) the density of blockage area is over 30%. NCKU CSIE EDALAB

Experimental Results on Benchmark Suite I Prioritized A* Network-Flow High-Performance Our Name Size #Net Experimental Results on Benchmark Suite I Prioritized A* Network-Flow High-Performance Our Name Size #Net Tmax #Blk #Fail Tla #Tcell Test 1 Test 2 Test 3 Test 4 Test 5 Test 6 Test 7 Test 8 Test 9 Test 10 Test 11 Test 12 Test 13 Test 14 Test 15 Test 16 Test 17 Test 18 Test 19 Test 20 Test 21 Test 22 Test 23 Test 24 Test 25 Test 26 Test 27 Test 28 Test 29 Test 30 12 x 12 16 x 16 16 x 16 24 x 24 24 x 24 32 x 32 32 x 32 48 x 48 48 x 48 12 12 16 16 16 24 24 24 32 32 32 48 48 100 100 100 100 100 100 100 100 23 25 28 31 39 30 52 54 72 67 106 104 137 143 173 185 315 327 357 363 364 363 645 653 763 770 857 864 1016 1017 0 4 4 3 0 0 0 2 4 4 0 3 0 4 9 4 0 3 8 5 6 8 5 3 4 5 7 8 37 n/a n/a 28 43 33 n/a n/a 62 n/a 60 n/a 63 n/a n/a 70 n/a n/a n/a 66 n/a n/a 108 116 104 n/a n/a 252 n/a 241 n/a 246 n/a n/a 402 n/a n/a n/a 2 7 6 5 2 0 3 2 0 0 2 2 0 3 2 0 2 4 0 0 0 4 6 4 n/a n/a n/a 44 n/a 47 n/a 100 80 n/a 74 n/a 88 n/a 91 n/a 100 99 100 n/a n/a 132 n/a 129 n/a 264 242 n/a 233 n/a 408 n/a 382 n/a 681 737 729 709 770 n/a n/a 0 1 1 0 0 0 0 0 0 0 100 n/a 70 78 55 89 41 n/a 77 47 52 52 57 83 63 68 91 90 99 76 85 78 94 91 88 99 99 98 88 67 n/a 64 118 119 113 94 n/a 110 249 219 247 234 230 223 394 403 371 393 389 393 738 807 792 798 762 808 733 751 0 0 0 0 0 0 0 0 39 47 41 38 40 47 44 49 49 51 56 62 62 64 64 58 77 73 81 78 85 73 75 82 87 84 92 87 94 92 73 65 58 71 100 98 93 96 91 94 228 231 221 219 227 220 409 385 367 360 370 369 709 717 698 691 739 726 698 701 Total 106 61 3 0 ■ Size: Size of microfluidic array. ■ #Net: Number of droplets. ■ Tmax: Timing constraints. ■ #Blk: Number of blockage cells. ■ #Fail: Number of failed droplets. ■ Tla: latest arrival time among all droplets. ■ Tcell: Total number of cells used for routing.

Experimental Results on Benchmark Suite I Name Test 1 Test 4 Test 5 Test Experimental Results on Benchmark Suite I Name Test 1 Test 4 Test 5 Test 6 Test 7 Test 8 Test 10 Test 11 Test 12 Test 13 Test 14 Test 15 Test 16 Test 17 Test 18 Test 19 Test 20 Test 21 Test 22 Test 23 Test 24 Test 25 Test 26 Test 27 Test 28 Test 29 Test 30 Tla 100 70 78 55 89 41 77 47 52 52 57 83 63 68 91 90 99 76 85 78 94 91 88 99 99 98 88 #Tcell 67 64 118 119 113 94 110 249 219 247 234 230 223 394 403 371 393 389 393 738 807 792 798 762 808 733 751 CPU 0. 11 0. 13 0. 47 0. 25 0. 47 0. 27 0. 49 0. 55 1. 59 1. 52 3. 03 1. 42 0. 95 2. 42 1. 33 5. 76 11. 22 5. 13 3. 59 3. 66 4. 30 3. 71 6. 26 4. 31 36. 47 29. 72 Tla 39 38 40 47 44 49 51 56 62 62 64 64 58 77 73 81 78 85 73 75 82 87 84 92 87 94 92 #Tcell 73 71 100 98 93 96 94 228 231 221 219 227 220 409 385 367 360 370 369 709 717 698 691 739 726 698 701 CPU 0. 08 0. 09 0. 21 0. 24 0. 37 0. 19 0. 64 0. 81 0. 98 2. 82 2. 08 1. 74 3. 85 0. 91 0. 78 3. 71 4. 31 4. 18 5. 84 5. 78 6. 91 4. 11 5. 41 5. 97 9. 72 8. 14 Avg. 1. 21 1. 10 1. 40 1 1 1 High-Performance Our ■ Tla: latest arrival time among all droplets. ■ Tcell: Total number of cells used for routing. ■ CPU: CPU time (sec)

Experimental Results on Benchmark Suite II High-Performance Our Name Size #Net Tmax #Blk #Fail Experimental Results on Benchmark Suite II High-Performance Our Name Size #Net Tmax #Blk #Fail Tla #Tcell Test a Test b Test c Test d Test e Test f Test g Test h Test I Test j 13 x 13 16 x 16 24 x 24 32 x 32 48 x 48 6 5 7 9 10 12 6 8 12 20 100 100 100 69 53 95 133 173 215 440 485 1013 1079 1 2 0 3 2 1 3 0 n/a 29 n/a 38 n/a n/a 86 n/a 74 n/a 170 n/a n/a 637 0 0 0 0 0 17 13 24 27 38 45 39 39 85 83 51 33 61 87 128 129 121 88 197 459 Total 14 0 ■ Size: Size of microfluidic array. ■ #Net: Number of droplets. ■ Tmax: Timing constraints. ■ #Blk: Number of blockage cells. ■ #Fail: Number of failed droplets. ■ Tla: latest arrival time among all droplets. ■ Tcell: Total number of cells used for routing. (1) bounding boxes of droplets are overlapped; (2) nx 1 or 1 xn narrow routing regions are used for routing; (3) the density of blockage area is over 30%.

Experimental Results on Benchmark Suite III Network-Flow High-Performance Our Name Size #Sub. #Net # Experimental Results on Benchmark Suite III Network-Flow High-Performance Our Name Size #Sub. #Net # Tmax #Dmax #Tcell in-vitro_1 16 x 16 11 28 20 5 237 258 231 in-vitro_2 14 x 14 15 35 20 6 236 246 229 protein_1 21 x 21 64 181 20 6 1618 1688 1588 protein_2 13 x 13 78 178 20 6 939 963 923 1. 074 1. 000 Avg. ■ Size: Size of microfluidic array. ■ #Sub: Number of subproblems. ■ #Net: Number of droplets. ■ Tmax: Timing constraints. ■ #Dmax: Maximum number of droplets among subproblems. ■ Tcell: Total number of cells used for routing.

Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB Outline Introduction Problem Formulation Algorithms Experimental Results Conclusion NCKU CSIE EDALAB

Conclusion ․ We proposed a fast routability- and performance-driven ․ ․ droplet router for 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 (Tla) and fault tolerance (Tcell) and faster runtime (CPU) with the best known results. NCKU CSIE EDALAB

NCKU CSIE EDALAB NCKU CSIE EDALAB