330 likes | 603 Views
Placement of Digital Microfluidic Biochips Using the T-tree Formulation. Ping-Hung Yuh 1 , Chia-Lin Yang 1 , and Yao-Wen Chang 2. 1 Dept. of Computer Science & Information Engineering 2 Graduate Institute of Electronics Engineering and Dept. of Electrical Engineering
E N D
Placement of Digital Microfluidic Biochips Using the T-tree Formulation Ping-Hung Yuh1, Chia-Lin Yang1, and Yao-Wen Chang2 1 Dept. of Computer Science & Information Engineering 2 Graduate Institute of Electronics Engineering and Dept. of Electrical Engineering National Taiwan University, Taiwan
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
Digital Microfluidic Biochips • Perform laboratory procedures based on liquid particles (droplets) • The two main components: • Reconfigurable devices (electrodes) • Droplets can move freely on the reconfigurable device • Non-reconfigurable devices (detectors and reservoirs) • Only one functionality Droplets Optical detector Storage Electrodes The schematic view of a biochip (Duke Univ.) Mixing two droplets Reservoirs/Dispensing ports
Digital Microfluidic Biochips (cont’d) Mix Storage Dilution Time: 1~4 Time: 4~5 Mix Dilution Mix Dilution a b Mix c Task graph Time: 5~7
Dispense Resource Area Time Dispense f c Mixing 2x2-array 7 Mix a 2x3-array 4 e Mix Opt. 1x1 cell 30 b Mix Storage 1x1 cell N/A d Detection Placement Problem of Biochips • Inputs: • Sequencing graph • Microfluidic module library • Design specification: • Fixed architecture (ex: 5x5-array) and maximum assay completion time (ex: 400 sec) • Limited number of non-reconfigurable devices • Output: the schedule and placement of tasks Microfluidic Module Library A sequencing graph
Previous Work • Architecture-level synthesis (scheduling and binding) • Deng et al, TCAD’01 • Architecture-level model and ILP-based method • Su and Chakrabarty, ICCAD’04 • Sequencing graph model and two heuristics • Physical placement • Su and Chakrabarty, DATE’05 • Simulated annealing based algorithm with given scheduled tasks • Unified synthesis and placement • Su and Chakrabarty, DAC’05 • Parallel recombinative simulated annealing • List scheduling and greedy placement method
Dilute T Y Storage Mix X Mix Our Contribution • Formulate the execution of a bioassay as a 3D floorplan • Apply a tree-based representation (T-tree) to solve the floorplanning/placement problem Mix Storage Mix Dilute Mix Storage Time t2 Mix Mix Mix Dilute Time t1 Time t3
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
T Y X Bioassay Execution to 3D floorplan • Model each task and storage as a 3D box • Model the execution of a bioassay as a 3D floorplan • Biochip placement problem to 3Dtemporal floorplanning problem Dilute Mix Storage Time t2 Storage Mix Mix Mix Mix Dilute Mix Time t1 Time t3
T Y X Review of T-tree • A 3-ary tree representation for temporalfloorplanning/placement problem Mix b Dilute c Storagess Storagess Mix a Mix a Mix b Dilute c A 3D compacted floorlpan The corresponding T-tree
i j k l right child middle child left child tl = ti tj=ti+Ti tk = ti The structure of T-tree Review of T-tree (cont’d) • The T-tree keeps the geometric relation as follows: • Left child: adjacent in the T+ direction • Middle child: in the Y+ direction with the same t-coordinate • Right child: in the X+ direction with the same t- and y-coordinates Mix b Dilute c Ti: duration of i Storage s Storages Mix a Mix a Mix b Dilute c ti: starting time of i
Dispense Mix c f a e Mix b Mix Detection d Modeling Tasks in a T-tree • Model each task as a node in a T-tree f Dispense e c a b d The corresponding T-tree A sequencing graph
Dispense Mix c f a e Mix b Mix Detection d Modeling Storages • Model each storage as a node in a T-tree • Each edge in a sequencing graph represents a storage f Dispense e c s2 s1 Storage a b s2 s1 s4 s3 d s5 s3 s4 s5 The corresponding T-tree A sequencing graph
i j k l right child middle child left child tl = ti tj=ti+Ti tk = ti The structure of T-tree Modeling Storages (cont’d) • The storage constraint: the duration of one storage covers the time gap between two data-dependent tasks • Insert a storage node in one of the feasible locations in a T-tree • Ensure that ts = tb + Tb t c s Tb b b feasible location ta=tb+Tb tb td=te=ta a s c d e Example of feasible locations
Dispense f c Mix a e Mix Dispense b Mix d Detection Modeling the Design Specification • The fixed-cube constraint: • Model the fixed architecture and max. completion time as a 3D cube • A feasible floorplan must be within this 3D cube • The resource constraint: • # of non-reconfigurable tasks is limited at any time • Add the virtual edges in the sequencing graph Virtual edge Max. completion time A feasible floorplan Fixed architecture
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
Floorplanning Algorithm • Based on simulated annealing (SA) • The modified SA flow: • Detect the violation of the storage constraints • Delete unused storages in a T-tree for packing efficiency Perturbation Storage Constraint Feasibility Detection &Tree Reconstruction Data Dependency Number of storagesAdjustment Packing Termination? No Yes
Floorplanning Algorithm (cont’d) • Cost function: • Volume • # of storages • Penalty term for fixed-cube constraint
Two Methods for Fixed-cube Constraint • Guide the tree perturbation based on cube violation probability pw, ph,and pt • pw = k/n, where k is the # of floorplans whose width exceeds the 3D cube in the last n iterations • If pw is large, increase the probability of placing tasks along the Y or T direction • Add the excessive length into the cost function An infeasible floorplan Max. completion time Excessive length Fixed architecture
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
Experimental Settings • Implemented our algorithm in C++ language on a 1.2 GHz SUN Blade-2000 machine with 8GB memory • Implemented the algorithm of [Su and Chakrabarty, DAC’05] on the same machine • Tested two bioassays: • Colorimetric protein assay from [Su and Chakrabarty, DAC’05] • Multiplexed in-virto diagnostics from [Su and Chakrabarty, ICCAD’04] • Assigned three different design specifications (fixed-cube constraints) to each bioassay
Experimental Result volume = area × assay completion time Result that cannot satisfy the fixed-cube constraint T-tree based algorithm is more efficient and effective
Resulting Placement of the Protein Bioassay Volume = 10x10x270 (10x10x400 fixed-cube constraint)
Outline • Introduction • T-tree Based Placement Formulation • Floorplanning Algorithm • Experimental Result • Conclusion
Conclusion • Formulated the placement problem of biochips as the temporal floorplanning problem • First work to apply a topological representation to the placement problem of biochips • Demonstrated the effectiveness and efficiency of our algorithm • Future work: • Consider fault and defect tolerance during floorplanning
Q & A r91089@csie.ntu.edu.tw
Question # 1 • Q: Why choose the T-tree representation over other 3D representations (3D-subTCG, ST, 3D-slicing tree) ? • A: Three reasons: • 1. T-tree models the compacted floorplan, thus it has the advantage of volume optimization • 2. T-tree is more efficient for large-scale circuits than 3D-subTCG, ST • 3. T-tree is more effective in handling the storages • T-tree can determine the # of storages and duration of each storage before packing with only O(n) time • 3D-subTCG and ST needs O(n^2) time before packing • 3D-slicing tree cannot obtain this information before packing • It is difficult for 3D-slicing tree to satisfy the storage constraint
Question # 2 • Q: Why add the # of storages in the cost function? • A: Two reasons: • 1. Generally, the smaller # of storages, the more compact 3D floorplan we can have • 2. Release the volume occupied by storages for reconfigurable task to use
Question # 3 • Q: Why your algorithm is better than previous work? • A: There are two reasons: • 1. T-tree is better in volume optimization than previous greedy placement method • 2. Smoother optimization process by minimizing volume instead of area plus completion time