2013 ACM International Symposium on Physical Design Kai-Han Tseng, - - PowerPoint PPT Presentation

2013 acm international symposium on physical design
SMART_READER_LITE
LIVE PREVIEW

2013 ACM International Symposium on Physical Design Kai-Han Tseng, - - PowerPoint PPT Presentation

2013 ACM International Symposium on Physical Design Kai-Han Tseng, Sheng-Chi You, Jhe-Yu Liou and Tsung-Yi Ho http://eda.csie.ncku.edu.tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan


slide-1
SLIDE 1

NCKU CSIE EDALAB

Kai-Han Tseng, Sheng-Chi You, Jhe-Yu Liou and Tsung-Yi Ho http://eda.csie.ncku.edu.tw Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan

2013 ACM International Symposium on Physical Design

slide-2
SLIDE 2

NCKU CSIE EDALAB

Outline

Introduction Problem Formulation Algorithms Experimental Results Conclusions

slide-3
SLIDE 3

NCKU CSIE EDALAB

What is Biochips?

․General definition

 A chip with a small solid platform made of glass, plastic, or

membrane which deals with the behavior, precise control and manipulation of fluids that are constrained to a small scale

․Functionality

 Analysis, reaction, or detection of biological samples (DNA or

human blood)

․Application

 Clinical diagnostics  Environmental monitoring  Automated drug discovery  Cell culturing  Protein crystallization

slide-4
SLIDE 4

NCKU CSIE EDALAB

Classification of Biochips

Biochips Microfluidic biochips Microarray DNA chip Protein chip Droplet- based Continuous- flow Flow-based microfluidic biochips

Flow-channel Valve

slide-5
SLIDE 5

NCKU CSIE EDALAB

․Functional component

 Valves can be combined to form more complex units,

e.g., latches, switches, mixers, multiplexers, micropumps

․Reliability

 The open and close activities (valve-switching) for a valve is

limited

Valve: The Basic Unit of Flow-based Microfluidic Biochips

slide-6
SLIDE 6

NCKU CSIE EDALAB

The Need of CAD Support

․Applications become more complicated

 Large-scale bioassays  Multiple and concurrent assay operations on a biochip

․Design complexity is increased

 The increasing rate of the valve numbers is four times faster

than Moore’s Law

․Current methodologies

 Manual  Full-custom

Source: Fluidigm

A top-down synthesis methodology is needed

slide-7
SLIDE 7

NCKU CSIE EDALAB

Component Model : Mixer

Microfluidic mixer

S2 S1 S3 Pump

slide-8
SLIDE 8

NCKU CSIE EDALAB

Phase V1 V2 V3 V4 V5 V6 V7 V8 V9

  • 1. Ip1
  • 2. Ip2
  • 3. Mix
  • 4. Op1
  • 5. Op2

1 1

Motivation

Microfluidic mixer

Open the valve Close the valve

1 1 1 1 1 1 1 1

12 3 5 6 78 9 4

Mix Mix Mix Valve-switching : 00 02 06 10 14 18 20 + Mixing

slide-9
SLIDE 9

Out2 Out2 In1 Out1 In2 Out2 Mix 20 In1 Out1 In2 Out2 Mix 20 20 Reduce valve-switching 6 times Valve-switching for a mixing operation Total reduction In1 14 6 14 6 In1 Out1 In2 Out2 Mix 20 5 Phases for a mixing operation In1 Out1 In2 Mix Out1 In2 Mix In1 In1 Out1 In2 Out2 Mix 20 20 Out2

12

Operation1 Operation2 Operation3

Out2 In1 Out1 In2 Out2 Mix In1 20 8 14 6 6

24

Operation1 Operation2 Operation3

Reduce valve-switching and the application time

Group Continuous Operations

slide-10
SLIDE 10

NCKU CSIE EDALAB

․Total valve-switching

 Valve-switching of a mixer  Valve-switching of intersections  Valve-switching of a storage

Storage Transportation Issue

slide-11
SLIDE 11

NCKU CSIE EDALAB

Outline

Introduction Problem Formulation Algorithms Experimental Results Conclusions

slide-12
SLIDE 12

NCKU CSIE EDALAB

Component Phases Mixer Ip1 / Ip2 / Mix / Op1 / Op2 Filter Ip / Filter / Op1 / Op2 Detector Ip / Detect / Op Separator Ip1 / Ip2 / Separat/ Op1 / Op2 Heater Ip / Heat / Op

Problem Formulation

․Input: A biochemical application modeled as a

sequential graph and a component library

․Objective: Synthesize a flow-based microfluidic biochip

such that the valve-switching amount and application completion time are minimized

․Constraint: Resource constraints and design rules

Parameter Value Width of flow channel 100 μm Minimum spacing between flow channels 40 μm Width of control channel 30 μm Width of control valve 100 μm Minimum spacing between control channels 40 μm Minimum spacing between external ports 1500 μm

slide-13
SLIDE 13

NCKU CSIE EDALAB

Outline

Introduction Problem Formulation Algorithms Experimental Results Conclusions

slide-14
SLIDE 14

NCKU CSIE EDALAB

Input

Application Graph Component Library

Mixer : 3

Resource Constraint

slide-15
SLIDE 15

NCKU CSIE EDALAB

Top-Down Synthesis Methodology

․Architecture-level synthesis

 Set-based minimum cost

maximum flow (SMCMF)

 Resource binding  Resource scheduling

․Physical-level synthesis

 Incremental cluster expansion

(ICE)

 Placement  Routing

․Explicit scheduling

 List-scheduling based

approach

 Total valve-switching amount  Application completion time

slide-16
SLIDE 16

NCKU CSIE EDALAB

Set-based Minimum Cost Maximum Flow

․Set-based

 Group continuous operations in a set to reduce the valve-

switching activities

․Maximum Flow

 Each flow path represents a component. Our goal here is to

maximize the component parallelization.

․Minimum Cost

 Find a way that not only satisfies the parallelization but also

minimize the application completion time

slide-17
SLIDE 17

NCKU CSIE EDALAB

Time Evaluation

Transportation time : 3

slide-18
SLIDE 18

NCKU CSIE EDALAB 23 25 10 13 16 20 16 20 10 13 10 13 1 7 16 25 28 31 5 13 2 2 5 7

Find Continuous Sets

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13

slide-19
SLIDE 19

NCKU CSIE EDALAB

O1 O8 O11 O13

31 S1

O2

2 S2

O3 O9

5 13 S3

O4

1 7 S4

O5 O10 O12

10 25 S5

O6

10 13 S6

O7

16 20 S7

S : Estimated starting time E : Estimated ending time

Si

S E

Continuous Sets

slide-20
SLIDE 20

Build the Flow Network

31 2 5 13 1 7 10 25 Src

V1 V5

․ Step1

Create Src and Dst vertex

Create a vertex Vi ϵ V for each Si

․ Step2

Separate Vi → (Vi

in, Vi

  • ut)

Create a directed edge Vi

in → Vi

  • ut,

cost=0 and capacity=1

․ Step3

Separate Dst → (Dstin, Dstout)

Create a directed edge Dstin → Dstout, cost=0 and capacity=3 (given component numbers)

․ Step4

Create directed edges Src → Vi

in and

Vi

  • ut → Dstin, cost = 0 and capacity=1

For each Vi

  • ut and Vj

in, if Vi

  • ut + T

(transportation time) ≦ Vj

in, create a

directed edge Vi

  • ut → Vj

in, cost=f(x)

and capacity=1. Here, x is defined as |(Vi

  • ut -Vi

in)| and f is proportional to x

V

1 in

V

2 in

V

3 in

V

4 in

V

7 in

V

6 in

V

5 in

V

3

  • ut

V

1

  • ut

V

7

  • ut

V

6

  • ut

V

5

  • ut

V

4

  • ut

V

2

  • ut

DSTin DSTOUT

V2 V3 V7 V6 V4

Dst 10 13 16 20

slide-21
SLIDE 21

NCKU CSIE EDALAB

Apply Minimum Cost Maximum Flow

Src

V1 V5 V2 V3 V4 V6

Dst

V7

V6 is isolated

Find 4 concatenated-sets

slide-22
SLIDE 22

NCKU CSIE EDALAB

Sort by the Priority

O1 O8 O11 O13 O6 O3 O9 O2 O7 O5 O10 O12 O4

Mixer1 Mixer2 Mixer3 2 continuous

  • perations

3 continuous

  • perations

high low

Priority

  • 1. Number of continuous operations
  • 2. Number of total operations

The remaining operation

slide-23
SLIDE 23

NCKU CSIE EDALAB

Next operation

Insert the Remaining Operation

O3

O9 O2 O7

Mixer3

O1 O8 O11 O13

Mixer1 Mixer2

O5 O10 O12 O4

O6

Mixer2

O10 O12

O6

O4 O5 O1 O8 O11 O13

Mixer1 Mixer3

O2 O7

O3

O9

slide-24
SLIDE 24

NCKU CSIE EDALAB

Relational Graph

M1 M3 M2 1 1 1 2 2 Relational graph M3 -> M1

slide-25
SLIDE 25

NCKU CSIE EDALAB

Top-Down Synthesis Methodology

․Architecture-level synthesis

 Set-based minimum cost

maximum flow (SMCMF)

 Resource binding  Resource scheduling

․Physical-level synthesis

 Incremental cluster expansion

(ICE)

 Placement  Routing

․Explicit scheduling

 List-scheduling based

approach

 Application completion time  Total valve-switching amount

slide-26
SLIDE 26

NCKU CSIE EDALAB

Motivation

User User User User User User User User User User User User User User User User User User User User User User User User User User User User User User User User

M2

S1

M3 M4 M1 M5

S1 S2

M5 M4 M3 M1 M2

O(n2)

slide-27
SLIDE 27

NCKU CSIE EDALAB

One Storage

Storage1 4*2 + 2 Valve-switching

slide-28
SLIDE 28

NCKU CSIE EDALAB

Two Storage

Storage1 Storage2 3*2 + 2 Valve-switching

slide-29
SLIDE 29

NCKU CSIE EDALAB

Find the Clusters

M10 M9 M8 M7 M4 M1 M5 M2 M3 M6

Iteration : Cluster :

2 1 2 3 2 3 5 1 1 4 4 4 1 1 1

10 1 9 7 8 6

1

Storage : 4

slide-30
SLIDE 30

NCKU CSIE EDALAB

Find the Clusters

M10 M9 M8 M7 M4 M1 M5 M2 M3 M6

2 1 2 3 2 3 1 1 1 1 1

Iteration : Cluster : 2 6 5 4

1

Storage : 4

slide-31
SLIDE 31

NCKU CSIE EDALAB

Incremental Cluster Expansion

M3 M4 M6 M2 M7 M8 S4 S3

M10

M1 S1 S2 M5 M9

slide-32
SLIDE 32

NCKU CSIE EDALAB

Compaction

S1 M1

M10

M5 M2 M9 S2 M7 M8 S4 M3 M4 M6 S3

slide-33
SLIDE 33

NCKU CSIE EDALAB

Routing by dijkstra’s algorithm

M5 M2 M9 S2 M3 M4 S3 S1

M10

M7 M8 S4 M1 M6

slide-34
SLIDE 34

NCKU CSIE EDALAB

100 Mixers and 10 Storages

slide-35
SLIDE 35

NCKU CSIE EDALAB

Top-Down Synthesis Methodology

․Architecture-level synthesis

 Set-based minimum cost

maximum flow (SMCMF)

 Resource binding  Resource scheduling

․Physical-level synthesis

 Incremental cluster expansion

(ICE)

 Placement  Routing

․Explicit scheduling

 List-scheduling based

approach

 Application completion time  Total valve-switching amount

slide-36
SLIDE 36

NCKU CSIE EDALAB

Time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Mixer1 Mixer2 Mixer3

Time 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Mixer1 Mixer2 Mixer3

Valve-switching amount : 250 (62,188) Application Completion Time : 28.5(s)

Color / Work Operation Trasportation Idle Input Output Op1 Op4 Op2 Op8 Op3 Op9 Op5 Op11 Op7 Op6 Op10 Op12 Op13

Valve-switching amount :390(166,224) Application Completion Time : 33.2(s)

Op13 Op1 Op2 Op4 Op8 Op3 Op6 Op5 Op7 Op9 Op11 Op10 Op12

Reduce : 4.7(s)

Binding by SMCMF Binding by baseline method

Explicit Scheduling

Reduce 140 valve-switching

slide-37
SLIDE 37

NCKU CSIE EDALAB

Outline

Introduction Problem Formulation Algorithms Experimental Results Conclusions

slide-38
SLIDE 38

NCKU CSIE EDALAB

Experimental Settings

․Implemented our algorithm in C++ language on a PC

with Core2 Quad processors at 2.66GHz and 3.25GB of RAM

․Compared set-based minimum cost maximum flow

binding algorithm with list scheduling based binding algorithm (baseline method) on top-down synthesis methodology

․Tested on several synthetic benchmarks by

 Adjusted operation numbers from 7 to 8191 and fixed mixers as

20 and storage as 1

 Adjusted mixers from 10 ~ 100 and fixed operation numbers as

1023 and storage as 1

 Adjusted storage from 1 ~ 10 and fixed operation numbers as

1023 and mixer as 100

slide-39
SLIDE 39

NCKU CSIE EDALAB

Experimental Results (1/3)

Application Completion Time Valve-switching Amount

Operation : 7~8191 Mixer : 20 Storage : 1

slide-40
SLIDE 40

NCKU CSIE EDALAB

Experimental Results (2/3)

Operation : 1023 Mixer : 10 ~ 100 Storage : 1

Valve-switching Amount Application Completion Time

slide-41
SLIDE 41

NCKU CSIE EDALAB

Experimental Results (3/3)

Valve-switching Amount

Operation : 1023 Mixer : 100 Storage : 1 ~ 10

Application Completion Time

slide-42
SLIDE 42

NCKU CSIE EDALAB

Outline

Introduction Problem Formulation Algorithms Experimental Results Conclusions

slide-43
SLIDE 43

NCKU CSIE EDALAB

Conclusions

․The valve-switching activities for the components such

as mixer and storage were modeled

․A first top-down synthesis methodology for flow-based

microfluidic biochip was presented

․Two algorithms for architecture-level synthesis and

physical-level synthesis were proposed

 Set-based minimum cost maximum flow (SMCMF)  Incremental cluster expansion (ICE)

․The experimental results showed that our top-down

synthesis methodology not only minimized the valve- switching amount but also reduced the application completion time

slide-44
SLIDE 44

NCKU CSIE EDALAB