A Synthesis Approach for Flow Microfluidic Biochip Architectures Based on Net Optimization

CN117610483BActive Publication Date: 2026-09-01FUZHOU UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311627040.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-30
Publication Date
2026-09-01
Estimated Expiration
2043-11-30

AI Technical Summary

Benefits of technology

[0053]本发明所述方法能得到最小化通道总长度、交叉点数量、液体运输任务冲突的CFMBs芯片架构。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117610483B_ABST
    Figure CN117610483B_ABST
Patent Text Reader

Abstract

This invention proposes a synthesis method for flow microfluidic biochip architecture based on wire mesh optimization, used to generate CFMBs chip architectures that minimize total channel length, number of intersections, and liquid transport task conflicts. The method includes the following steps: Step S1: For the high-level synthesis stage of biochip operation, time-division multiplexing of flow paths reduces component interconnection requirements, and fine-grained binding is used to obtain accurate binding results and time-division multiplexing scheduling results for flow paths; Step S2: Based on the binding results and flow path characteristics, a port layout strategy based on port relevance is executed, and then components are laid out based on a secondary wire length layout method; Step S3: In the routing stage, flow channels are generated based on a minimum conflict routing method to reduce conflicts between liquid transport tasks, thereby reducing the total channel length and number of intersections and improving the execution efficiency of CFMBs; This invention can obtain CFMBs chip architectures that minimize total channel length, number of intersections, and liquid transport task conflicts.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer-aided design technology for integrated circuits, and in particular to a synthesis method for a flow microfluidic biochip architecture based on wire mesh optimization. Background Technology

[0002] The architecture synthesis of CFMBs involves three steps: high-level synthesis, placement, and routing. In the high-level synthesis stage of CFMBs, the biochemical reaction is typically modeled as a sequence diagram G(O,E), such as... Figure 1 As shown. According to the sequence diagram, two objectives are achieved at this stage: (1) to form a binding scheme. in, Let oi represent the j-th fluid input task, where p∈P represents a complete fluid transport path consisting of multiple connection pairs. (2) Scheduling scheme: Determine the time for each operation and its fluid input task.

[0003] Finding more optimized methods to achieve the above goals is a research direction. Summary of the Invention

[0004] This invention proposes a synthesis method for flow microfluidic biochip architecture based on wire mesh optimization, which can obtain a CFMBs chip architecture that minimizes the total channel length, the number of intersections, and liquid transport task conflicts.

[0005] The present invention adopts the following technical solution.

[0006] A comprehensive method for synthesizing flow microfluidic biochip architectures based on wire mesh optimization is used to generate CFMBs chip architectures that minimize total channel length, number of intersections, and liquid transport task conflicts, including the following steps;

[0007] Step S1: For the high-level integration stage of biochip operation, time-division multiplexing of the flow path is performed to reduce the component interconnection requirements, and fine-grained binding is used to obtain accurate binding results and time-division multiplexing scheduling results of the flow path.

[0008] Step S2: Based on the accurate binding results and flow path characteristics, execute the port layout strategy based on port relevance, and then lay out the biochip components based on the secondary line length layout method.

[0009] Step S3: In the routing phase, flow channels are generated based on the minimum conflict routing method to reduce conflicts between liquid transport tasks, thereby reducing the total channel length and the number of intersections and improving the execution efficiency of CFMBs.

[0010] In step S1, during the high-level synthesis stage, a high-level synthesis method that considers the interconnection requirements of components is adopted. Referring to the efficiency and cost of biochips, precise binding is performed according to the characteristics of the flow path, existing flow paths are reused, and the net is optimized by reducing the number of connection pairs. This reduces the number of connection pairs formed by components and ports, and between components, without increasing the total biochemical reaction time.

[0011] The high-level synthesis method is specifically as follows:

[0012] Based on the given sequence graph G(O,E), in the high-level synthesis stage, the flow paths and connection pairs are reused according to the characteristics of the flow paths to reduce the component interconnection requirements; the list scheduling method is used to determine the connection between component interfaces and between component interfaces and ports, and to bind each fluid transport task and storage task; and the net is optimized by considering the reduction of component interconnection requirements.

[0013] The list scheduling method calculates the priority for each operation, and all operations are added to the execution queue according to their priority. Operation o i priority q i As shown in Formula 1.

[0014] q i =Texec i +H i ×(max(q j )+t c ),o j ∈child(o i Formula 1;

[0015] Among them, Texec i It is operation o i Execution time, H i It is a 01 variable, when H i When the value is zero, it represents o i The operation has no suboperations, t c This refers to the liquid transport time;

[0016] In this step, if the CFMBs architecture has not yet been generated during the high-level synthesis phase, then t c Set to a fixed value; child(o i ) represents operation o i The set of suboperations;

[0017] In this step, different component interconnection requirements are obtained by binding operations to different components; the strategy for selecting components is as follows: when an operation o j It is a mixed operation, and its sub-operation o i Also during mixed operations, o iBinding to the executing component reduces one liquid transport task, thereby increasing efficiency and reducing component interconnection requirements. Figure 1 In the sequence diagram shown, o2 and o6 will be bound to the same component. If this is not the case, the component with the lowest cost will be selected and associated with operation o using the CostM function. i Binding. C is a collection of components. The cost value is calculated as shown in Formula 2:

[0018] CostM(o i ,m)=T i,m ×C1+F m ×C2+P m ×C3-connect m ×C5+S i,m ×MAX_NUM+max(0,t ready (m)-t finish (parent(o i )))×C4

[0019] Formula 2;

[0020] Among them, T i,m Let i represent a 01 variable, where i represents the operation o that needs to be performed to select the component. i Let the last operation performed by component m be o. j If o i with o j Both are mixed operations and their suboperations are the same operation, T i,m The value of F is 1; m F represents a 01 variable, which is set when component m contains liquid that needs to be removed. m The value is 1; if the liquid present in component m is the liquid required for the current operation, then it does not need to be removed;

[0021] P m This represents a 0 / 1 variable. Selecting a component will generate new component interconnections. (P) m The value of t is 1; ready (m) indicates the end time of the last task of component m; the last task of component m includes operation execution task and liquid transportation task;

[0022] S i,m This represents a 0 / 1 variable, indicating when component m cannot perform operation o. i At that time, S i,m The value is 1;

[0023] connect m This indicates the number of flow paths that meet the following requirement: the flow path is capable of transporting m units of liquid to another component;

[0024] parent(o i ) indicates operation o i The set of parent operations; t finish (parent(o i () indicates that the operation is performed on all parent operations. In the above expression, C1, C2, C3, C4, and C5 are all constants and positive numbers, while MAX_NUM is a maximum value, indicating that component m cannot perform the operation o. i When this happens, component m will not be selected to execute o. i ;

[0025] After determining the bound component m of the operation, create a liquid transport task and transfer o i The output liquid of the parent operation is transported to component m. If component m contains liquid at this time, the liquid needs to be stored. Let the liquid in the component be operation o. i If the output liquid is [a certain quantity], then the liquid will be transported to the next component in the following two cases: Case 1, Operation o i suboperation o j If it is a mixing operation, and one of the input liquids for this operation is already in mixer m1, then the liquid in component m is transported to component m1;

[0026] Scenario 2: Component m2 exists and satisfies the following conditions: m2 contains no liquid and m2 is o. i If the components are of type m1, the liquid in component m2 will be transported to component m2. If neither of these conditions is met, the liquid will be transported to a dedicated storage device.

[0027] In this step, the fluid transport task requires a complete transport path to execute. After allocating ports to the transport task, a scheduling time is determined for the task. A complete transport path is formed by selecting the connection pairs with the minimum cost (CostC) between ports and component interfaces, and between component interfaces. The calculation of CostC is shown in Formula 3.

[0028]

[0029] The expressions for t1 and t2 are shown in Formula 4 below. This represents a 01 variable, where i1 and i2 represent ports or component interfaces;

[0030] If a connection pair of i1 and i2 already exists, then, The value is 0 if it is not 1 otherwise; α and β are both constants.

[0031]

[0032] The layout method in step S2, based on the precise binding results of high-level synthesis, lays out the ports according to their relevance, and then uses secondary line length layout to determine the specific location of the components. This fully utilizes the characteristics of the flow path, enabling the generated layout to reduce unnecessary detours during the routing stage, thereby obtaining a better CFMBs architecture; specifically:

[0033] Assuming the ports are placed around CFMBs, given the port coordinates, the secondary line length layout estimates the line length through the cost function L(CN), and obtains the component coordinates by solving for the minimum value of L(CN). If the obtained solution may cause component overlap, a legalization step is performed on the solution to eliminate the overlap.

[0034] The two dimensions of L(CN) are considered separately and divided into two parts, x and y; L x The calculation of (CN) is shown in Formula 5:

[0035]

[0036] Where CN represents the set of connection pairs, CN p-m CN represents the set of connection pairs formed by ports and component interfaces. m-m Represents the set of connection pairs formed by component interfaces, px i CN p-m The coordinates of the port of the i-th connection pair, mx i CN p-m The coordinates of the center point of the i-th connection pair component, Horizon i This represents the horizontal offset of the component interface relative to the center point of the connection pair. If the component is horizontally placed and the interface is to the left of the component, the value is -width / 2; if it is to the right of the component, the value is width / 2, where width is the width of the corresponding component. If the component is vertically placed, the value is 0. j,1 CN m-m The x-coordinate of the j-th connection to the first component is mx j,2 CN m-m The x-coordinate of the j-th connection to the second component; similarly, L can be obtained. y (CN);

[0037] Based on the connection pairs obtained in the high-level synthesis stage, the correlation R(p1,p2) between any two ports p1 and p2 is obtained, and its calculation is shown in Formula 6 below.

[0038]

[0039] wherein, path1 represents a flow path for liquid transported from an input port to a component or from a component to an output port, path2 represents a flow path for liquid transported from a component to another component, when the i-th path of path1 uses p1 and p2 as input and output ports, the value of R'(i,p1,p2) is 1, otherwise it is 0. Let the connection pair formed by two component interfaces of the j-th path of path2 be connect1-connect2, if the connection pair formed in the high-level synthesis stage has both connect1-p1 and p2-connect2, the value of R"(j,p1,p2) is 1, otherwise it is 0;

[0040] determine the relative positions of the components according to the correlation between ports, and randomly generate the initial distance between ports, specifically: according to the relative positions of the ports and the distance dis between ports i , firstly place the ports on a straight line with a length of 2×(width+height), and fold the straight line into a rectangle of width×height to obtain the coordinates of the ports. The x-coordinate of the port is shown in Formula 7, and the y-coordinate can be calculated similarly.

[0041]

[0042] Formula 7;

[0043] wherein, dis i represents the distance between the i-th port and the (i-1)-th port placed on the straight line.

[0044] in this step, a random method is used to obtain the distance between ports, the coordinates of each port are obtained according to Formula 7, then the orientation of the component and the offset between the component interface and the component center point are calculated, the specific process is as follows: suppose among all flow paths, the port with the most connection times to interface A of component m is p1, and the port with the most connection times to interface B of component m is p2, if |x1-x2|<|y1-y2| and x1<x2, then component m is placed horizontally, the offset of interface A relative to the component center point is (-width / 2,0), and the offset of interface B relative to the component center point is (width / 2,0), wherein x1 and x2 are the abscissas of ports p1 and p2 respectively, y1 and y2 are the ordinates of ports p1 and p2 respectively, width is the width of component m, and the offsets of component interfaces relative to the center point in other cases can be obtained similarly; the coordinates of the components are obtained through the quadratic wirelength layout method and legalization, and after multiple iterations, the solution with the smallest half-perimeter wirelength is selected.

[0045] The routing method in step S3, based on the bonding and scheduling results formed in the high-level synthesis stage and the positions of ports and components formed in the placement stage, determines the specific location of the channel within the CFMBs architecture. A routing method with minimal collisions is used to increase the execution efficiency of CFMBs, specifically:

[0046] Minimum collision routing is achieved based on the A* method, using a mesh to divide the routing area; firstly, the usage time slice set for each mesh is initialized. Let N be an empty set, where Ne is the number of grid cells and Nt is the number of liquid transport tasks. It is the start time of the j-th liquid transport task obtained in the high-level integration phase. This is the transport time of the j-th liquid transport task obtained in the high-level synthesis stage, and the flow path of this task passes through the i-th grid. In this step, the flow path consists of multiple connection pairs, and each connection pair of the flow path needs to be routed during routing. A liquid transport task is bound to multiple connection pairs. If the flow path and connection pair are time-division multiplexed in the high-level synthesis stage, a connection pair may be bound to multiple liquid transport tasks. When routing a connection pair bound to a certain liquid transport task, the connection pair may have already been routed. In this case, it is not necessary to route the connection pair. When the connection pair has not been routed, the A* method is used for routing. After the routing is completed, the time slice of each grid cell used by the flow path is updated.

[0047] When using the A* method for liquid transport tasks i When routing the CP connection, use mesh CE. k The cost value Cost(k) is calculated as shown in Formula 8:

[0048] Cost(k) = h(k) + g(k) + cr(k) Formula 8;

[0049] Where h(k) is the distance from the starting point of the wiring to the grid cell ce. k The distance, g(k), is the distance of the grid cell ce. k The Manhattan distance to the endpoint of the cabling, cr(k) is the set T k The time slices and liquid transport tasks i The sum of overlapping scheduling times.

[0050] In step S3, when routing the connection pair bound to a certain liquid transportation task, if the connection pair has not been routed, use the A* method to route 5-7 rows.

[0051] In step S1, when creating a liquid transport task after determining the bound component m of the operation, if component m contains liquid, then the liquid is stored in lines 16-17.

[0052] This invention targets continuous-flow microfluidic biochips (CFMBs), a biochip technology based on microchannels. These microchips can perform various biological experiments and analyses on a single, tiny chip, offering advantages such as high throughput, high sensitivity, high precision, low cost, and rapid response. This invention proposes a wire-net optimization-based synthesis method for CFMB architectures. In the high-level synthesis stage, this invention performs time-division multiplexing of flow paths, reducing component interconnection requirements and performing fine-grained binding to obtain accurate binding results and time-division multiplexing scheduling results for flow paths. Based on the accurate binding results, this invention proposes a port layout strategy based on port relevance, followed by component layout using a quadratic wire length layout method. In the routing stage, this invention generates flow channels based on a minimum-conflict routing method to reduce conflicts between liquid transport tasks. Experimental results show that the strategy of this invention reduces the cost of CFMBs and decreases conflicts between liquid transport tasks.

[0053] The method described in this invention can achieve a CFMBs chip architecture that minimizes the total channel length, the number of intersections, and liquid transport task conflicts. Attached Figure Description

[0054] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments:

[0055] Appendix Figure 1 It is a sequence diagram of biochemical reactions in a biochip;

[0056] Appendix Figure 2 It is a scheduling diagram of biochemical reactions in a biochip. Detailed Implementation

[0057] A comprehensive method for synthesizing flow microfluidic biochip architectures based on wire mesh optimization is used to generate CFMBs chip architectures that minimize total channel length, number of intersections, and liquid transport task conflicts, including the following steps;

[0058] Step S1: For the high-level integration stage of biochip operation, time-division multiplexing of the flow path is performed to reduce the component interconnection requirements, and fine-grained binding is used to obtain accurate binding results and time-division multiplexing scheduling results of the flow path.

[0059] Step S2: Based on the accurate binding results and flow path characteristics, execute the port layout strategy based on port relevance, and then lay out the biochip components based on the secondary line length layout method.

[0060] Step S3: In the routing phase, flow channels are generated based on the minimum conflict routing method to reduce conflicts between liquid transport tasks, thereby reducing the total channel length and the number of intersections and improving the execution efficiency of CFMBs.

[0061] In step S1, during the high-level synthesis stage, a high-level synthesis method that considers the interconnection requirements of components is adopted. Referring to the efficiency and cost of biochips, precise binding is performed according to the characteristics of the flow path, existing flow paths are reused, and the net is optimized by reducing the number of connection pairs. This reduces the number of connection pairs formed by components and ports, and between components, without increasing the total biochemical reaction time.

[0062] The high-level synthesis method is specifically as follows:

[0063] Based on the given sequence graph G(O,E), in the high-level synthesis stage, the flow paths and connection pairs are reused according to the characteristics of the flow paths to reduce the component interconnection requirements; the list scheduling method is used to determine the connection between component interfaces and between component interfaces and ports, and to bind each fluid transport task and storage task; and the net is optimized by considering the reduction of component interconnection requirements.

[0064] The list scheduling method calculates the priority for each operation, and all operations are added to the execution queue according to their priority. Operation o i priority q i As shown in Formula 1.

[0065] q i =Texec i +H i ×(max(q j )+t c ),o j ∈child(o i Formula 1;

[0066] Among them, Texec i It is operation o i Execution time, H i It is a 01 variable, when H i When the value is zero, it represents o i The operation has no suboperations, t c This refers to the liquid transport time;

[0067] In this step, if the CFMBs architecture has not yet been generated during the high-level synthesis phase, then t c Set to a fixed value; child(o i ) represents operation o i The set of suboperations;

[0068] In this step, different component interconnection requirements are obtained by binding operations to different components; the strategy for selecting components is as follows: when an operation o j It is a mixed operation, and its sub-operation o i Also during mixed operations, o i Binding to the executing component reduces one liquid transport task, thereby increasing efficiency and reducing component interconnection requirements. Figure 1 In the sequence diagram shown, o2 and o6 will be bound to the same component. If this is not the case, the component with the lowest cost will be selected and associated with operation o using the CostM function. i Binding. C is a collection of components. The cost value is calculated as shown in Formula 2:

[0069] CostM(o i ,m)=T i,m ×C1+F m ×C2+P m ×C3-connect m ×C5+S i,m ×MAX_NUM+max(0,t ready (m)-t finish (parent(o i )))×C4

[0070] Formula 2;

[0071] Among them, T i,m Let i represent a 01 variable, where i represents the operation o that needs to be performed to select the component. i Let the last operation performed by component m be o. j If o i with o j Both are mixed operations and their suboperations are the same operation, T i,m The value of F is 1; m F represents a 01 variable, which is set when component m contains liquid that needs to be removed. m The value is 1; if the liquid present in component m is the liquid required for the current operation, then it does not need to be removed;

[0072] P m This represents a 0 / 1 variable. Selecting a component will generate new component interconnections. (P) m The value of t is 1; ready (m) indicates the end time of the last task of component m; the last task of component m includes operation execution task and liquid transportation task;

[0073] S i,m This represents a 0 / 1 variable, indicating when component m cannot perform operation o. i At that time, S i,mThe value is 1;

[0074] connect m This indicates the number of flow paths that meet the following requirement: the flow path is capable of transporting m units of liquid to another component;

[0075] parent(o i ) indicates operation o i The set of parent operations; t finish (parent(o i () indicates that the operation is performed on all parent operations. In the above expression, C1, C2, C3, C4, and C5 are all constants and positive numbers, while MAX_NUM is a maximum value, indicating that component m cannot perform the operation o. i When this happens, component m will not be selected to execute o. i ;

[0076] After determining the bound component m of the operation, create a liquid transport task and transfer o i The output liquid of the parent operation is transported to component m. If component m contains liquid at this time, the liquid needs to be stored. Let the liquid in the component be operation o. i If the output liquid is [a certain quantity], then the liquid will be transported to the next component in the following two cases: Case 1, Operation o i suboperation o j If it is a mixing operation, and one of the input liquids for this operation is already in mixer m1, then the liquid in component m is transported to component m1;

[0077] Scenario 2: Component m2 exists and satisfies the following conditions: m2 contains no liquid and m2 is o. i If the components are of type m1, the liquid in component m2 will be transported to component m2. If neither of these conditions is met, the liquid will be transported to a dedicated storage device.

[0078] In this step, the fluid transport task requires a complete transport path to execute. After allocating ports to the transport task, a scheduling time is determined for the task. A complete transport path is formed by selecting the connection pairs with the minimum cost (CostC) between ports and component interfaces, and between component interfaces. The calculation of CostC is shown in Formula 3.

[0079]

[0080] The expressions for t1 and t2 are shown in Formula 4 below. This represents a 01 variable, where i1 and i2 represent ports or component interfaces;

[0081] If a connection pair of i1 and i2 already exists, then, The value is 0 if it is not 1 otherwise; α and β are both constants.

[0082]

[0083] The layout method in step S2, based on the precise binding results of high-level synthesis, lays out the ports according to their relevance, and then uses secondary line length layout to determine the specific location of the components. This fully utilizes the characteristics of the flow path, enabling the generated layout to reduce unnecessary detours during the routing stage, thereby obtaining a better CFMBs architecture; specifically:

[0084] Assuming the ports are placed around CFMBs, given the port coordinates, the secondary line length layout estimates the line length through the cost function L(CN), and obtains the component coordinates by solving for the minimum value of L(CN). If the obtained solution may cause component overlap, a legalization step is performed on the solution to eliminate the overlap.

[0085] The two dimensions of L(CN) are considered separately and divided into two parts, x and y; L x The calculation of (CN) is shown in Formula 5:

[0086]

[0087] Where CN represents the set of connection pairs, CN p-m CN represents the set of connection pairs formed by ports and component interfaces. m-m Represents the set of connection pairs formed by component interfaces, px i CN p-m The coordinates of the port of the i-th connection pair, mx i CN p-m The coordinates of the center point of the i-th connection pair component, Horizon i This represents the horizontal offset of the component interface relative to the center point of the connection pair. If the component is horizontally placed and the interface is to the left of the component, the value is -width / 2; if it is to the right of the component, the value is width / 2, where width is the width of the corresponding component. If the component is vertically placed, the value is 0. j,1 CN m-m The x-coordinate of the j-th connection to the first component is mx j,2 CN m-m The x-coordinate of the j-th connection to the second component; similarly, L can be obtained. y (CN);

[0088] Based on the connection pairs obtained in the high-level synthesis stage, the correlation R(p1,p2) between any two ports p1 and p2 is obtained, and its calculation is shown in Formula 6 below.

[0089]

[0090] Wherein, path1 represents a flow path for liquid transported from the input port to a component or from a component to the output port, path2 represents a flow path for liquid transported from a component to another component, when the i-th path of path1 uses p1 and p2 as the input and output ports, the value of R'(i,p1,p2) is 1, otherwise it is 0. Let the connection pair formed by two component interfaces of the j-th path of path2 be connect1-connect2, if the connection pair formed in the high-level synthesis stage has both connect1-p1 and p2-connect2, the value of R”(j,p1,p2) is 1, otherwise it is 0;

[0091] Determine the relative positions of the components according to the correlation between ports, and randomly generate the initial distance between ports, specifically: according to the relative positions of the ports and the distance dis between ports i , first place the ports on a straight line with a length of 2×(width+height), fold the straight line into a rectangle of width×height to obtain the coordinates of the ports, the x-coordinate of the port is shown in formula seven, and the y-coordinate can be calculated similarly.

[0092]

[0093] wherein dis i represents the distance between the i-th port and the (i-1)-th port placed on the straight line.

[0094] In this step, a random method is used to obtain the distance between ports, the coordinates of each port are obtained according to formula seven, then the orientation of the component and the offset between the component interface and the component center point are calculated. The specific process is as follows: it is assumed that among all flow paths, the port with the most connection times to interface A of component m is p1, and the port with the most connection times to interface B of component m is p2, if |x1-x2|<|y1-y2| and x1<x2, then component m is placed horizontally, the offset of interface A relative to the component center point is (-width / 2, 0), and the offset of interface B relative to the component center point is (width / 2, 0), wherein x1 and x2 are the abscissas of ports p1 and p2 respectively, y1 and y2 are the ordinates of ports p1 and p2 respectively, width is the width of component m, and the offsets of component interfaces relative to the center point in other cases can be obtained similarly; the coordinates of the components are obtained through the quadratic wirelength layout method and legalization, and after multiple iterations, the solution with the smallest half-perimeter wirelength is selected.

[0095] The routing method in step S3, based on the bonding and scheduling results formed in the high-level synthesis stage and the positions of ports and components formed in the placement stage, determines the specific location of the channel within the CFMBs architecture. A routing method with minimal collisions is used to increase the execution efficiency of CFMBs, specifically:

[0096] Minimum collision routing is achieved based on the A* method, using a mesh to divide the routing area; firstly, the usage time slice set for each mesh is initialized. Let N be an empty set, where Ne is the number of grid cells and Nt is the number of liquid transport tasks. It is the start time of the j-th liquid transport task obtained in the high-level integration phase. This is the transport time of the j-th liquid transport task obtained in the high-level synthesis stage, and the flow path of this task passes through the i-th grid. In this step, the flow path consists of multiple connection pairs, and each connection pair of the flow path needs to be routed during routing. A liquid transport task is bound to multiple connection pairs. If the flow path and connection pair are time-division multiplexed in the high-level synthesis stage, a connection pair may be bound to multiple liquid transport tasks. When routing a connection pair bound to a certain liquid transport task, the connection pair may have already been routed. In this case, it is not necessary to route the connection pair. When the connection pair has not been routed, the A* method is used for routing. After the routing is completed, the time slice of each grid cell used by the flow path is updated.

[0097] When using the A* method to route connections for liquid transport tasks (tasks) to the CP, a mesh CE is used. k The cost value Cost(k) is calculated as shown in Formula 8:

[0098] Cost(k) = h(k) + g(k) + cr(k) Formula 8;

[0099] Where h(k) is the distance from the starting point of the wiring to the grid cell ce. k The distance, g(k), is the distance of the grid cell ce. k The Manhattan distance to the endpoint of the cabling, cr(k) is the set T k The time slices and liquid transport tasks i The sum of overlapping scheduling times.

[0100] In step S3, when routing the connection pair bound to a certain liquid transportation task, if the connection pair has not been routed, use the A* method to route 5-7 rows.

[0101] In step S1, when creating a liquid transport task after determining the bound component m of the operation, if component m contains liquid, then the liquid is stored in lines 16-17.

[0102] Example:

[0103] In this example, we assume that two mixers and two detectors are used. Figure 1 For high-level integration, Tables 1 and 2 are... Figure 1 The binding result, Figure 2 It is the result of its scheduling.

[0104] This binding scheme generated a total of 7 different transport paths (as shown in Table 1) and 11 different connection pairs (in1 → detector). 1,A ,detector 1,B →out1, in2→detector 2,A ,detector 2,B →out2,in3→Mixer 1,A ,mixer 1,B →out3,in4→Mixer 2,A ,mixer 2,B →out4, detector 1,B → Mixer 1,A ,detector 2,B → Mixer 2,A ,mixer 2,B → Detector 1,A Compared to binding scheme 1, binding scheme 2 reduces 3 different transport paths and 3 different connection pairs.

[0105] Table 1 shows the tasks of the components corresponding to Binding Scheme 2.

[0106] <![CDATA[Detector 2]]> <![CDATA[o3,o5]]> <![CDATA[Mixer 1]]> <![CDATA[o2,o6,o 11 ,the 12 ]]> <![CDATA[Mixer 2]]> <![CDATA[o 4, o7, o8]]>

[0107] Table 2. Liquid transport routes bound to each transport task in Binding Scheme 2

[0108]

[0109] During the layout phase of CFMBs, the specific locations of ports and components are determined. During the routing phase, the channels used for liquid transport are generated.

[0110] After using the method described in this invention, in step S1 of this example, for the transportation path p1-m 1,A m 1,B -m 2,A m 2,B -p2, if p1-m has already been bound in the previous binding. 1,A If the remaining three lines are not connected, then... The value is 0. The value is 1.

[0111] In step S2 of this example, for the binding scheme shown in Table 2, there are the following 5 connection pairs between component m1 and component m2: 1) in1 → detector 1,A ;2) Detector 1,B →out1;3)in3→Mixer 1,B ;4) Mixer 1,B →out3; 5) Detector 1,B → Mixer 1,A The secondary line length layout, port positions, and connection relationships determine the component positions. Since interface B of detector 1 is connected to both output port out1 and interface A of mixer 1, and interface A of mixer 1 is connected to input port in3, reducing the distance between port out1 and port in3 will also reduce the distance between interface B of detector 1 and interface A of mixer 1. Therefore, port out1 and port in3 are said to have a correlation degree R(out1,in3). Two ports with high correlation will be placed adjacent to each other in CFMBs.

[0112] In this example, the set of flow paths for step S2 is shown in the table below.

[0113] Table 3 Flow Path Set

[0114]

Claims

1. A synthesis method for flow-based microfluidic biochip architecture based on wire mesh optimization, characterized by: The method described above is used to generate a CFMBs chip architecture that minimizes the total channel length, the number of intersections, and liquid transport task conflicts. Includes the following steps; Step S1: For the high-level synthesis stage of CFMBs chip operation, a high-level synthesis method that considers component interconnection requirements is adopted. Step S2: Based on the accurate binding results and flow path characteristics, execute the port layout strategy based on port relevance, and then lay out the biochip components based on the secondary line length layout method. Step S3: In the routing phase, flow channels are generated based on the minimum conflict routing method to reduce conflicts between liquid transport tasks, thereby reducing the total channel length and the number of intersections and improving the execution efficiency of CFMBs. The high-level synthesis method includes: based on a given sequence graph G(O, E), multiplexing flow paths and connection pairs according to the characteristics of flow paths to reduce component interconnection requirements; using a list scheduling method to determine the connections between component interfaces and between component interfaces and ports, binding each fluid transport task and storage task; and optimizing the net by considering the reduction of component interconnection requirements. The list scheduling method calculates the priority for each operation, and all operations are added to the execution queue according to their priority; operation o i priority q i As shown in Formula 1; Formula 1; Among them, Texec i It is operation o i Execution time, H i It is a 0-1 variable, when H i When the value is zero, it represents o i The operation has no suboperations, t c This refers to liquid transport time; if the CFMBs architecture has not yet been generated during the high-level synthesis phase, then t c Set to a fixed value; child(o i ) represents operation o i The set of suboperations; By binding operations to different components, different component interconnection requirements are obtained; the strategy for selecting components is as follows: when there is an operation o j It is a mixed operation, and its sub-operation o i When mixed operations are also an option, o i Binding to the executing component reduces one liquid transport task, increasing efficiency and reducing component interconnection requirements; if not selectable, the component with the lowest cost will be selected via the CostM function. i The binding and calculation are as shown in Formula 2: Formula 2; Among them, T i,m Let i represent a 0-1 variable, where i represents the operation o that needs to be performed to select the component. i Let the last operation performed by component m be o. j If o i With o j Both are mixed operations and their suboperations are the same operation, T i,m The value of F is 1; m F represents a 0-1 variable, where F is the value of the component m containing liquid that needs to be removed. m The value is 1; if the liquid present in component m is the liquid required for the current operation, then it does not need to be removed; P m P represents a 0-1 variable. Selecting a component will generate new component interconnections. m The value of t is 1; ready (m) represents the end time of the last task of component m; the last task of component m includes operation execution task and liquid transportation task; S i,m Represents a 0-1 variable, indicating when component m cannot perform operation o. i At that time, S i,m The value is 1; connect m This indicates the number of flow paths that meet the following requirement: the flow path can transport m units of liquid to another component; parent(o i ) indicates operation o i The set of parent operations; t finish (parent(o i )) indicates operation o i The latest time for the completion of all parent operations; C1, C2, C3, C4, and C5 in the above formula are all constants and positive real numbers, and MAX_NUM is a maximum value, indicating that component m cannot execute operation o. i When this happens, component m will not be selected to execute o. i ; After determining the bound component m of the operation, create a liquid transport task and assign o i The output liquid of the parent operation is transported to component m. If component m contains liquid at this time, the liquid needs to be stored. Let the liquid in the component be operation o. i If the output liquid is [amount], then the liquid will be transported to the next component in the following two cases: Scenario 1, Operation o i suboperation o j If it is a mixing operation, and one of the input liquids for this operation is already in component m1, then the liquid in component m will be transported to component m1. Scenario 2: Component m2 exists and satisfies the following conditions: m2 contains no liquid and m2 is o. i For components of type m, the liquid in component m will be transported to component m2; If neither of the above two conditions is met, the liquid will be transported to a dedicated storage device. After assigning ports to transportation tasks, a scheduling time is determined for the task. A complete transportation path is formed by selecting the port and component interface, and the component interface and component interface connection pairs with the minimum cost using the connection cost function CostC. CostC is calculated as shown in Formula 3. Formula 3; in, This represents a 0-1 variable, where i1 and i2 represent ports or component interfaces; if a connection pair of i1 and i2 already exists, then... The value is 0 otherwise; α and β are constants; the expressions for t1 and t2 are shown in Formula 4. Formula 4; Both p1 and p2 are ports.

2. The method for synthesizing a flow microfluidic biochip architecture based on wire mesh optimization according to claim 1, characterized in that: The layout method in step S2, based on the precise binding results of high-level synthesis, lays out the ports according to their relevance, and then uses secondary line length layout to determine the specific location of the components, so as to make full use of the characteristics of the flow path. Specifically: Assuming the ports are placed around the CFMBs chip, given the port coordinates, the secondary line length layout estimates the line length using the cost function L(CN), and obtains the component coordinates by solving for the minimum value of L(CN). If the obtained solution leads to component overlap, then the solution is used to eliminate the overlap. The two dimensions of L(CN) are considered separately and divided into two parts, x and y; L x The calculation of (CN) is shown in Formula 5: Formula 5; Where CN represents the set of connection pairs, CN p-m CN represents the set of connection pairs formed by ports and component interfaces. m-m Represents the set of connection pairs formed by component interfaces, px i CN p-m The coordinates of the port of the i-th connection pair, mx i CN p-m The coordinates of the center point of the i-th connection pair component, Horizon i This represents the horizontal offset of the component interface of the i-th connection pair from the center point. If the component is horizontally placed and the interface is to the left of the component, the offset value is -width / 2; if it is to the right of the component, the offset value is width / 2, where width is the width of the corresponding component. If the component is vertically placed, the offset value is 0. j,1 CN m-m The x-coordinate of the j-th connection to the first component is mx j,2 CN m-m The x-coordinate of the j-th connection to the second component; similarly, L can be obtained. y (CN); Based on the connection pairs obtained in the high-level synthesis stage, the correlation R(p1,p2) between any two ports p1 and p2 is obtained, and the calculation is shown in Formula 6. Formula Six; Where path1 represents the flow path of liquid from the input port to the component or from the component to the output port, and path2 represents the flow path of liquid from the component to the component. When path1 uses p1 and p2 as input and output ports, The value is 1 if the value is not 1 otherwise it is 0; let connect1-connect2 be the connection pair formed by the two component interfaces of the j-th path of path2. If the connection pair formed in the high-level synthesis stage simultaneously exists as connect1-p1 and p2-connect2, then... The value is 1 if it is 1, otherwise it is 0. The relative positions of components are determined based on the correlation between ports, and the initial distances between ports are randomly generated. Specifically, the relative positions of the ports and the distances between them are determined by the following process: i First, place the port on a straight line of length 2×(width + height). Fold the line into a rectangle of width×height to obtain the coordinates of the port. The x-coordinate of the port is given by Formula 7. Similarly, calculate the y-coordinate. Formula 7; Among them, dis i This represents the distance between the i-th port and the (i-1)-th port placed on the straight line; The distances between ports are obtained by a random method, and the coordinates of each port are obtained according to Formula 7. Then the direction of the component and the offset between the component interface and the center point of the component are calculated. The specific process is as follows: assume that among all flow paths, the port with the most connection times to interface A of component m is p1, and the port with the most connection times to interface B of component m is p2. If |x1-x2|<|y1-y2| and x1<x2, then component m is placed horizontally, the offset of interface A relative to the center point of the component is (-width / 2, 0), and the offset of interface B relative to the center point of the component is (width / 2, 0), wherein x1 and x2 are the abscissas of ports p1 and p2 respectively, y1 and y2 are the ordinates of ports p1 and p2 respectively, and width is the width of component m. The coordinates of the components are obtained through the quadratic wire length layout method and overlap elimination, and after multiple iterations, the solution with the minimum half-perimeter wire length is selected.

3. The method for synthesizing a flow microfluidic biochip architecture based on wire mesh optimization according to claim 2, characterized in that: The routing method in step S3 obtains the specific position of the channel in the CFMBs architecture according to the binding and scheduling results formed in the high-level synthesis stage and the positions of ports and components formed in the layout stage; the minimum-conflict routing method is used to improve the execution efficiency of CFMBs, specifically: Minimum collision routing is achieved based on the A* method, using a mesh to divide the routing area; firstly, the usage time slice set for each mesh is initialized. Let N be an empty set, where Ne is the number of grid cells and Nt is the number of liquid transport tasks. It is the start time of the j-th liquid transport task obtained in the high-level integration phase. This is the transport time of the j-th liquid transport task obtained in the high-level synthesis stage, and the flow path of this task passes through the i-th grid. The flow path consists of multiple connection pairs, and each connection pair of the flow path needs to be routed during routing. A liquid transport task is bound to multiple connection pairs. If the flow path and connection pair are time-division multiplexed in the high-level synthesis stage, so that a connection pair is bound to multiple liquid transport tasks, then when routing a connection pair bound to a certain liquid transport task, the connection pair has already been routed, so there is no need to route the connection pair at this time. When the connection pair has not been routed, the A* method is used for routing. After the routing is completed, the time slice of each grid cell used by the flow path is updated. When using the A* method for liquid transport tasks i When routing the CP connection, use mesh CE. k The cost value Cost(k) is calculated as shown in Formula 8: Formula 8; Where h(k) is the distance from the wiring start point to the grid cell ce. k The distance, g(k), is the distance of the grid cell ce. k The Manhattan distance to the endpoint of the cabling, cr(k) is the set T k The time slices and liquid transport tasks i The sum of overlapping scheduling times.

4. The method for synthesizing a flow microfluidic biochip architecture based on wire mesh optimization according to claim 3, characterized in that: In step S3, when routing the connection pair bound to a certain liquid transportation task, if the connection pair is not routed, the A* method is used for routing, with a total of 5-7 rows.

5. The method for synthesizing a flow microfluidic biochip architecture based on wire mesh optimization according to claim 3, characterized in that: In step S1, when creating a liquid transportation task after determining the bound component m for the operation, if there is liquid in the component m, the liquid is stored, with a total of 16-17 rows.