TECHNICAL FIELD
The present invention relates to the technical field of computer aided design of microfluidic biochips, and in particular relates to a fault-tolerant oriented physical design method for fully programmable valve array biochips.
BACKGROUND
As a new generation of fluidic microfluidic biochip, a Fully Programmable Valve Array (FPVA) biochip has become a popular platform for biochemical experiments. It combines advantages of traditional flow-based and digital microfluidic biochips and performs a fluid operation based on a channel and valve structure. It provides both programmability and high flexibility. As shown in FIG. 1, the FPVA biochip consists of intersecting flow channels with independent addressable valves regularly arranged in an array form. Fluid is flexible transported and component is dynamically constructed in any area of the FPVA by switching states of the valves. Architecture synthesis design processes of the FPVA biochip are classified into high-level synthesis and physical design. The physical design stage, as the most critical stage, comprises a component placement and flow channel routing. It determines a basic flow channel network of the chip, thus affecting overall performance of the chip. Therefore, in order to improve the quality and efficiency of the FPVA biochip, an efficient physical design automation scheme is indispensable. In addition, due to environmental or human factors, it is usually inevitable to have some manufacturing defects in a manufacturing process, such as channel fracture, dislocation, accidental connection, etc. These faults may lead to a failure of bioassay, which greatly increases a cost of chip manufacturing, and even causes a danger. However, no fault-tolerant algorithm has been proposed for these faults on the FPVA biochip. Therefore, a fault-tolerant design is essential to ensure a correct execution of on-chip bioassay.
SUMMARY
In view of this, the purpose of the present invention is to provide a fault-tolerant oriented physical design method for fully programmable valve array biochips, aiming to solve the above problems.
To achieve the above object, the following technical scheme is adopted herein.
A fault-tolerant oriented physical design method for fully programmable valve array biochips, wherein the method comprises the following steps:
- step S1: constructing component placement constraints, and performing dynamic fault-tolerant placement based on a dynamic constraint placement algorithm based on particle swarm optimization combined with a dynamic fault-tolerant technology, thereby obtaining a fault-tolerant placement scheme without component conflicts;
- step S2: considering an input sequence of reagents, and performing dynamic fault-tolerant routing based on an A* fault-tolerant routing algorithm based on an optimal input sequence combined with a dynamic fault-tolerant technology; and
- step S3: further processing fluid conflicts occurring in the routing through a routing optimization strategy based on priority and backtracking, thereby obtaining a fault-tolerant routing scheme without fluid conflicts.
Further, the component placement constraints specifically comprise:
- a non-overlapping constraint set of components is introduced to limit two components to be overlapped, so as to prevent parallel components from occupying the same cell:
- wherein, (xidi, yidi) and (xrui, yrui) represent lower-left and upper-right coordinates of the components bound by an operation Oi respectively, and K is a maximum constant; and ck is an auxiliary binary variable, wherein k=1, 2, 3, 4; and, when ck is 0, a corresponding constraint is satisfied;
- a component overlapping permission is introduced to allow the components to overlap so that an intermediate fluid can proceed to a next operation without transport; the component overlapping permission is implemented by adding an auxiliary binary variable c5 in (5):
- c5 is set to be 1 when two components are not concurrent, in which case, each CL k=1, 2, 3, 4 must be 1 to allow the two devices to overlap.
Further, the dynamic constraint placement algorithm of particle swarm optimization specifically comprises:
- each particle is encoded as (pos1, ⋅ ⋅ ⋅ , posn, f), wherein n is the number of components, posi represents location information of a component Mi, which is uniquely determined by the lower-left coordinate and shape of the component, and f represents an adaptation value of particles, then:
- (1) an adaptation value function is defined as follows:
- wherein, OL is the number of overlapping cells of parent-child components, A is a chip area occupied by non-parent-child components, D is a distance from an output fluid to an output port, α1,α2,α3 are weights that add up to 1, and β is a penalty term for violating the component placement constraints, which is defined as follows:
- wherein K is a maximum constant, and
- represents overlapping of concurrent components;
- (2) an optimal solution is iteratively searched in a solution space according to the adaptation value of particles; in each round of iterative search, particles are updated according to historical optimal solutions and a global optimal solution; and an updating formula of the ith particle Pit in the t round of iteration is defined as follows:
- wherein M represents a mutation operation, an inertia weight w represents a probability of particle mutation, and C1 and C2 represent a crossover operation between a particle and an individual historical optimal solution and a global optimal solution respectively, and learning factors c1 and c2 represent crossover probabilities between the particle and the individual historical optimal solution and the global optimal solution respectively;
- (3) firstly, a speed update is carried out, and an update formula is defined as follows:
- wherein r1 is a random number within 0˜1; when r1 is less than w, the particle mutates;
- the mutation operation is as follows: a component is randomly selected and a new available cell is found for the component as a new placement location thereof;
- secondly, self-cognitive learning is carried out, and an updated formula is defined as follows:
- wherein r2 is a random number within 0˜1; when r2 is less than c1, the particle is crossed with the individual historical optimal solution. the idea of the crossover operation of particle and individual historical optimal solution is as follows: the components that are in the same position between the current particle and individual historical optimal solution are kept, one component is randomly selected among the other components, and a new placement position is searched for the component;
- finally, social experience learning is performed, and an update formula is defined as follows:
- wherein r3 is a random number within 0˜1, and, when r3 is less than c2, the particle is crossed with the global optimal solution; and the idea of crossing the particle and the global optimal solution is the same as that of C1.
Further, the fault-tolerant placement scheme without component conflicts specifically comprises:
- (1) constructing a new alternative path by using standby cell thereof according to a bidirectional redundancy technology; and
- (2) converting cells occupied by other components which have finished the operation into spare cells according to a cell function conversion technology, thus opening a passable path for the current fluid.
Further, the A* fault-tolerant routing algorithm based on an optimal input sequence specifically comprises:
- considering a reagent input sequence and aiming to minimize bioassay completion time, a total length of transport path and the number of fluid conflicts, a formula (13) is used to calculate a new routing cost to increase a cost of routing scheme with fluid conflicts, which is calculated as:
- wherein, (xp, yp) and (xs, ys) respectively represent coordinates of a current cell p and a starting point cell s, l represents a cell length passing through a FPVA cell, and cell(s, p) represents a set of routing cells passed through from the starting point cell s to the current cell p.
Further, the routing optimization strategy based on priority specifically comprises: fluid transport priorities are defined,
- level 1: a fluid with earlier operating time;
- level 2: a fluid further from a target component;
- level 3: a fluid in a transport state;
- level 4: a fluid that has been stored for a longer period of time;
- in the event of a fluid conflict, a fluid with a lower priority would change direction or be stored in a standby cell, waiting for a fluid with a higher priority to preferentially pass.
Further, if a fluid is transported to a cell that is already occupied by another fluid, the fluid in the cell would pass through first, regardless of priority.
Further, the routing optimization strategy based on backtracking specifically comprises: the following procedure is repeated until conflicts are avoided: when a fluid conflict occurs at one moment, backtracking to a previous moment and searching for an available standby cell to store critical fluids, meanwhile, the remaining fluids continue to be transported according to the fluid transport priority.
Compared with the prior art, the present invention has the following beneficial effects: The present invention generates a fault-tolerant FPVA architecture that avoids all physical faults and potential conflicts, thereby achieving a physical design solution that minimizes the bioassay completion time and the total length of the transport path.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a FPVA architecture and its topological connection diagram in an embodiment of the present invention;
FIG. 2 is a flow chart of a method of the present invention;
FIG. 3 is a multi-functional cell in an embodiment of the present invention;
FIG. 4 shows a bidirectional redundancy technology in an embodiment of the present invention; and
FIG. 5 shows a fault mapping technology in an embodiment of the present invention.
DETAILED DESCRIPTION OF THE EMBODIMENTS
The present invention is further explained in combination with the accompany drawings and embodiments below.
In this embodiment, physical faults on an FPVA biochip are defined as faults arising from an environmental or die problem during a chip manufacturing procedure and are classified into the following four categories:
- (1) Valve blocking: due to an accidental connection between control channels, air pressure is transmitted to a non-specified channel segment, resulting in a failure of a valve in the channel segment to be opened normally, thus blocking fluid transport.
- (2) Valve leakage: the valve can not be closed normally, causing that fluid can not stay in the specified channel segment. The reasons for the fault comprise but are not limited to: 1) the control channel is blocked due to fracture of the control channel, an uneven wall of the control channel or dislocation of the control channel and a flow channel, and the air pressure cannot reach a specified position; 2) because the accidental connection between the control channels, the perforation of the channel wall and other factors lead to the leakage of the control channels, the air pressure reaching the specified position is insufficient; and, 3) the film forming the valve loses elasticity or the channel size does not match, causing that the valve formed cannot cover and seal the corresponding flow channel segment.
- (3) Flow channel blocking: due to the fracture of flow channel, uneven wall of flow channel and other factors, resulting in flow channel blocking, and fluid can not pass through normally.
- (4) Flow channel leakage: due to the accidental connection between flow channels, perforation of channel wall and other factors, resulting in the flow channel leakage, and fluid penetrates into other channel segments or loss.
In addition to physical faults, component and fluid conflicts in the physical design are two other factors that prevent the proper performance of bioassay.
- (1) Component conflict: in a placement phase, a plurality of components occupy the same cell at the same time, or there are not enough spare cells to build a plurality of components at the same time, which would cause the component conflict.
- (2) Fluid conflict: in a routing stage, a plurality of fluids are transported to the same cell at the same time, or one fluid is transported to a cell occupied by another fluid, which would cause the fluid conflict.
In the present embodiment, based on flexibility of the FPVA, the present invention introduces a concept of multi-functional cells and defines three functional cells, as shown in FIG. 3, comprising:
- (1) Transport cell: by opening or closing a series of valves on the transport cell, a flow direction of fluid is guided to form a transport path, and the fluid is transported between an input/output port and components.
- (2) Storage cell: the fluid is temporarily stored therein by closing all peripheral valves on the storage cell.
- (3) Mixing cell: by opening an inner valve of the mixing cell and closing the peripheral valve, mixers of different sizes are dynamically constructed to drive the fluid to be mixed in it.
Based on the concept of multi-functional cell, this paper proposes the cell function transformation technology. In the process of bioassay, each cell can perform function transformation dynamically, so that the fluid can realize specific functions without additional transportation, such as dynamic reconfiguration of components and control of fluid state transformation.
In the present embodiment, based on the cell function transformation technology, the present invention designs a bidirectional redundancy technology, as shown in FIG. 4, which has the following characteristics:
- (1) Adjacent FPVA cells serve as standby cells of each other, so that there are 2-4 standby cells around one FPVA cell.
- (2) Each standby cell can replace any adjacent original cell functionally, and can realize different functions dynamically.
The bidirectional redundancy technology maximizes the utilization of all spare cells on the FPVA architecture, with standby resources available for each cell at no additional cost, thus enabling real-time fault-tolerant at the lowest cost.
In this embodiment, combined with the fault-tolerant technology mentioned above, the present invention also proposes a fault mapping technology which takes into account different types and characteristics of physical faults and maps them to corresponding positions on the FPVA topological connection diagram according to the following rules to generate a fault mapping diagram, as shown in FIG. 5.
- (1) Because the valve blocking fault represents the forbidden operation of the channel segment where the valve is located, the valve blocking fault is mapped as a fault connection.
- (2) Because the valve leakage fault only affects the two cells connected to the valve, and except for the fault valve, the remaining valves in the two cells and all the channel segments are normal, the valve leakage fault is mapped to a merging cell.
- (3) If the fluid passes through the channel segment with the channel blocking or channel leakage fault, it may lead to fluid loss or pollution, that is, the occurrence of channel blocking and channel leakage fault would cause the corresponding FPVA cell to be unusable. Therefore, the channel blocking and channel leakage are mapped to the fault cell.
Referring to FIG. 2, the present invention provides a fault-tolerant oriented physical design method for fully programmable valve array biochips, wherein the method comprises the following steps:
- step S1: constructing component placement constraints, and performing dynamic fault-tolerant placement based on a dynamic constraint placement algorithm based on particle swarm optimization combined with a dynamic fault-tolerant technology, thereby obtaining a fault-tolerant placement scheme without component conflicts;
- step S2: considering an input sequence of reagents, and performing dynamic fault-tolerant routing based on an A* fault-tolerant routing algorithm based on an optimal input sequence combined with a dynamic fault-tolerant technology: and
- step S3: further processing fluid conflicts occurring in the routing through a routing optimization strategy based on priority and backtracking, thereby obtaining a fault-tolerant routing scheme without fluid conflicts.
Preferably, in the present embodiment, the component placement constraints specifically comprise:
- a non-overlapping constraint set of components is introduced to limit two components to be not overlapped, so as to prevent parallel components from occupying the same cell:
- wherein, (xidi, yidi) and (xrui, yrui) represent lower-left and upper-right coordinates of the components bound by an operation Oi respectively, and K is a maximum constant; and ck is an auxiliary binary variable, wherein k=1, 2, 3, 4; and, when ck is 0, a corresponding constraint is satisfied;
Because components can be constructed and reconfigured dynamically, the cell in which a component resides is transformed to a usable cell immediately after the operation bound by a component is completed. Therefore, when two components are not parallel, a component overlapping permission is introduced to allow the components to overlap so that an intermediate fluid can proceed to a next operation without transport, the component overlapping permission is implemented by adding an auxiliary binary variable c5 in (5):
- c5 is set to be 1 when two components are not concurrent, in which case, each ck, k=1, 2, 3, 4 must be 1 to allow the two devices to overlap.
Preferably, in this embodiment, the dynamic constraint placement algorithm of particle swarm optimization specifically comprises:
- according to the location of component, a coding scheme is designed herein to encode each particle as (posi, ⋅ ⋅ ⋅ , posn, f), wherein n is the number of components, posi represents location information of a component Mi, which is uniquely determined by the lower-left coordinate and shape of the component, and f represents an adaptation value of particles.
- (1) an adaptation value function is defined as follows:
- wherein, OL is the number of overlapping cells of a parent-child component, A is a chip area occupied by non-parent-child components, D is a distance from an output fluid to an output port, α1,α2,α3 are weights that add up to 1, and β is a penalty term for violating the component placement constraints, which is defined as follows:
- wherein K is a maximum constant, and
- represents overlapping of concurrent components;
- (2) an optimal solution is iteratively searched in a solution space according to the adaptation value of particles; in each round of iterative search, particles are updated according to historical optimal solutions and a global optimal solution; and an updating formula of the ith particle Pit in the t round of iteration is defined as follows:
- wherein M represents a mutation operation, an inertia weight w represents a probability of particle mutation, and C1 and C2 represent a crossover operation between a particle and an individual historical optimal solution and a global optimal solution respectively, and learning factors c1 and c2 represent crossover probabilities between the particle and the individual historical optimal solution and the global optimal solution respectively;
- (3) firstly, a speed update is carried out, and an update formula is defined as follows:
wherein r1 is a random number within 0˜1; when r1 is less than w, the particle mutates;
- the mutation operation is as follows: a component is randomly selected and a new available cell is found for the component as a new placement location thereof;
- secondly, self-cognitive learning is carried out, and an updated formula is defined as follows:
- wherein r2 is a random number within 0˜1; when r2 is less than c1, the particle is crossed with the individual historical optimal solution. The idea of the crossover operation of particle and individual historical optimal solution is as follows: the components that are in the same position between the current particle and individual historical optimal solution are kept, one component is randomly selected among the other components, and a new placement position is searched for the component;
- finally, social experience learning is performed, and an update formula is defined as follows:
- wherein r3 is a random number within 0˜1, and, when r3 is less than c2, the particle is crossed with the global optimal solution: and the idea of crossing the particle and the global optimal solution is the same as that of C1.
In this embodiment, preferably, the fault connection and fault cell are marked as unavailable cells according to the physical fault mapping diagram. If the fluid passes through the unavailable cell, the present invention proposes two fault-tolerant routing schemes: 1) constructing a new alternative path using its standby cells according to the bidirectional redundancy technology, and 2) converting cells occupied by other components which have finished the operation into spare cells according to the cell function transformation technology, thus opening a passable path for the current fluid.
In this embodiment, because a plurality of reagents are transported from the input port to the component, an improper reagent input sequence would result in a plurality of fluid conflicts. Therefore, in the present invention, considering the reagent input sequence and aiming to minimize bioassay completion time, a total length of transport path and the number of fluid conflicts, an A* fault-tolerant routing algorithm based on an optimal input sequence is proposed. Furthermore, designed in the present invention is a new routing cost to increase a cost of routing scheme with fluid conflicts, which is calculated as:
- wherein, (xp, yp) and (xs, ys) respectively represent coordinates of a current cell p and a starting point cell s, l represents a cell length passing through a FPVA cell, and cell(s, p) represents a set of routing cells passed through from the starting point cell s to the current cell p.
In this embodiment, the routing optimization strategy based on priority specifically comprises:
- fluid transport priorities are defined:
|
Priority (from high to low)
Fluid type
|
|
Level 1
A fluid with earlier operating time
|
Level 2
A fluid further from a target component
|
Level 3
A fluid in a transport state
|
Level 4
A fluid that has been stored for a longer
|
period of time
|
|
In the event of a fluid conflict, a fluid with a lower priority would change direction or be stored in a standby cell, waiting for a fluid with a higher priority to preferentially pass. In particular, if a fluid is transported to a cell that is already occupied by another fluid, the fluid in the cell would pass through first, regardless of priority.
In this embodiment, the routing optimization strategy based on backtracking specifically comprises: the following procedure is repeated until conflicts are avoided: when a fluid conflict occurs at one moment, backtracking to a previous moment and searching for an available standby cell to store critical fluids (i.e., the fluids that cause the conflict). Meanwhile, the remaining fluids continue to be transported according to the fluid transport priority.
The foregoing descriptions are merely preferred embodiments of the present invention, and all equivalent changes and modifications made according to the scope of the present invention for patent application shall fall within the scope of the present invention.