Microfluidic chip multiplexer automatic test method based on integer linear programming

CN116702436BActive Publication Date: 2026-10-09NORTHWESTERN POLYTECHNICAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310551175.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-05-16
Publication Date
2026-10-09
Estimated Expiration
2043-05-16

AI Technical Summary

Technical Problem

尽管上述相关工作在一定程度上提高了多路复用器的可靠性,但无法避免由制造环境和长期使用带来的物理故障

Benefits of technology

[0043] This paper proposes a test pattern generation method based on Integer Linear Programming (ILP). Although the algorithm's model solution time is longer than that of PSO-based algorithms under certain test cases, it can achieve 100% fault coverage with fewer test patterns. Furthermore, this method only needs to be executed offline once for a given multiplexer architecture to obtain the required combination of test patterns.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116702436B_ABST
    Figure CN116702436B_ABST
Patent Text Reader

Abstract

The application discloses a micro-fluidic chip multiplexer automatic testing method based on integer linear programming, which comprises the following steps: firstly, modeling the fault of the micro-fluidic chip multiplexer; secondly, generating various test modes; thirdly, analyzing the faults that can be covered by the test mode through the input multiplexer structure; fourthly, minimizing the number of test modes; and finally, combining the test modes to realize the automatic testing of the micro-fluidic chip multiplexer. The method can realize 100% fault coverage with fewer test mode numbers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of computer-aided design technology, specifically relating to an automated testing method for microfluidic chip multiplexers. Background Technology

[0002] Microfluidic biochips integrate picoliter / nanoliter-scale fluid manipulation, representing a revolutionary development in the automation and miniaturization of biochemical experiments. Complex experiments can be automatically executed according to the control logic of the biochip. Compared to traditional experimental procedures, microfluidic biochips significantly improve experimental efficiency and control reagent quantities at the picoliter / nanoliter level, increasing experimental accuracy while reducing the use of expensive reagents. To achieve complex manipulation of fluid samples, microfluidic biochips integrate numerous devices, such as mixers, heaters, and detectors. Fluid samples are transported between devices via microchannels, while microvalves precisely control device operation and fluid sample transport. Thanks to the advantages of microfluidic biochips, they have been widely applied in protein crystallization, simplified biochemical analysis, and medical diagnostics.

[0003] like Figure 1 As shown in (a), the microfluidic biochip consists of two independent logic layers: a flow layer and a control layer, each with its own channel network. The flow layer contains microchannels for transporting fluid samples, also known as flow channels; the control layer contains microchannels for implementing automatic control logic, also known as control channels. The microfluidic biochip is etched using a flexible material (polydimethylsiloxane, PDMS) via soft lithography, forming microvalves at the junction of the flow channels and control channels. The valves, as basic control units, are activated by the air pressure within the control channels. When the pressure source is activated, the air pressure in the control channels compresses the flow channels at the valves, preventing the movement of fluid samples within the flow channels. When the air pressure in the control channels is released, the flow channels reopen, restoring the transport of fluid samples. Valves, as the basic structural unit of the microfluidic biochip, can be used to construct more complex device components, such as… Figure 1 The mixer shown in (b). Figure 1 In (b), two fluid samples are first stored in the upper and lower halves of the mixer through the input ports, respectively. Then, valves b, c, f, and d are opened while valves a and e are closed. The three peristaltic valves at the top of the mixer are then opened and closed sequentially at a high frequency within a given time period, forcing the two different fluid samples to be completely mixed within the mixer.

[0004] Because the development of biochips is outpacing Moore's Law, the size of the valve has shrunk to 6×6μm. 2A microfluidic biochip the size of a coin can integrate thousands of valves. To achieve independent control of each valve, each valve's control port needs to be connected to an external pressure source. This requires the biochip to have a large, complex, and expensive off-chip control system, increasing the size, power consumption, and cost of the microfluidic device. Therefore, methods such as... Figure 2 (a) illustrates a software-programmable microfluidic platform that reduces the number of external pressure sources required by introducing an additional multiplexer layer above the control layer. Fluid samples undergo biochemical reactions at the core location of the biochip. The control channels surrounding the core location, the multiplexer, the core input, and the control port on the right together constitute the control logic, generating control patterns to switch the open / closed states of the valves at the core location. This biochip, through time-division multiplexing of the control channels, can switch 116 valves at the core location using only 15 external pressure sources, eliminating the need for a separate external pressure source for each valve. The two-layer structure of the multiplexer is illustrated in the diagram below. Figure 2 As shown in (b), the upper layer is the driver layer, and the lower layer is the control layer. Within the driver layer, the driver channel connected to control port m1 is divided into 8 channel segments by the control channel. d1 ~Segment d8 Within the control layer, the control channel connected to the flow valve f1 is divided into 7 channel segments by the drive channel. c1 ~Segment c7 The core input at the bottom of the multiplexer and the control port on the right are connected to an external pressure source, which can drive the corresponding control valves to open / close under specific control modes. Once all control valves on a certain control channel are open, that control channel connects the core input to the corresponding flow valve, thereby controlling the state of the flow valves and further controlling the movement of fluid samples within the flow channel. At any given moment during a biochemical application, the pressure values ​​of a pair of mutually exclusive control ports are always mutually exclusive; that is, only one is in a high-pressure state. Figure 2 In (b), m1m2, m3m4, and m5m6 are three pairs of mutually exclusive control ports. Through the 6-bit control mode (m1m2m3m4m5m6 = 100101), the control channel between the flow valve f8 and the core input can be connected, thereby realizing the closure of the flow valve f8.

[0005] Multiplexers achieve time-division multiplexing of control channels through frequent valve switching, significantly reducing the number of control ports. To mitigate the elastic degradation caused by frequent valve switching, a switching sequence optimization algorithm based on Hamming distance is proposed. Simultaneously, a pressure refresh algorithm based on XOR eliminates the pressure degradation problem during multiplexer execution. Furthermore, a fault-tolerant multi-channel switching mechanism for multiplexers is proposed for the first time for specific biochemical applications. This mechanism improves the execution efficiency of biochips and extends their lifespan by reducing the number of valve switching operations in the multiplexer, and provides a degree of fault tolerance by multiplexing some channels and valves. Although the above-mentioned work improves the reliability of multiplexers to some extent, it cannot avoid physical failures caused by the manufacturing environment and long-term use. As the integration density of biochips increases, the size and spacing of channels continue to decrease, and the failure rate of multiplexers gradually increases. Therefore, there is an urgent need to design an automated fault detection scheme for multiplexers to replace the traditional micro-photography manual visual fault detection method, improving detection speed and accuracy.

[0006] With the rapid development of computer vision, image recognition technology has been widely applied in the field of digital microfluidic biochips, for example, in error recovery, dynamic resource scheduling, and droplet adaptive wiring, providing more efficient and accurate solutions for biochemical experimental operations and result analysis. For continuous microfluidic biochips, based on the light transmittance of PDMS material, microphotography can capture the distribution of colored fluids in the channels. Furthermore, the multiplexer end (e.g., Figure 2 (b) The distribution of colored gas in the control channel can be quickly and accurately identified by image recognition technology. Summary of the Invention

[0007] To overcome the shortcomings of existing technologies, this invention provides an automated testing method for microfluidic chip multiplexers based on integer linear programming. First, faults in the microfluidic chip multiplexer are modeled. Then, various test modes are generated. Next, the faults covered by each test mode are analyzed using the input multiplexer structure. Then, the number of test modes is minimized, and finally, the test modes are combined to achieve automated testing of the microfluidic chip multiplexer. This method achieves 100% fault coverage with a significantly fewer number of test modes.

[0008] The technical solution adopted by this invention to solve its technical problem includes the following steps:

[0009] Step 1: Model the faults of the microfluidic chip multiplexer;

[0010] Step 2: Generate test mode;

[0011] Step 2-1: Represent the positions of the channel segment, control valve, and channel clearance using coordinates (i,j), and use DC... i This indicates the drive channel with index i, represented by CC. i This indicates the control channel with index i, using This represents the driving channel segment located at (i,j), represented by... This indicates the control channel segment located at (i,j). The direction of gas inflow is called the upstream of this position, and the direction of gas outflow is called the downstream of this position.

[0012] Step 2-2: Based on the input multiplexer structure, use 0-1 variables v i,j This indicates whether a control valve exists at the intersection (i,j) of the drive channel and the control channel; if a control valve exists, then v i,j The value is set to 1 otherwise; assuming a set of test patterns can cover all possible locations where various types of faults may occur, and the number of test patterns in this set does not exceed n. p n p It is a given constant; for the control valve located at (i,j), it is a 0-1 variable. This indicates the activation state of the control valve in the m-th test mode. If the control valve is activated (i.e., its state is closed), then... Set to 1, otherwise set to 0;

[0013] Steps 2-3: In any test mode, the activation state of all control valves on a drive channel remains consistent. That is, in the m-th test mode, if the drive channel DC... k If there is gas input, then DC k All control valves should be closed simultaneously; otherwise, they should be open simultaneously. Therefore, the drive channel DC... k The relationships between all control valves are constrained as follows:

[0014]

[0015] Where S is the set of all open / closed states of control valves in the multiplexer;

[0016] After generating the test pattern, the faults that the test pattern can cover are analyzed by the input multiplexer structure, see the following steps;

[0017] Step 3: Input colorless gas from the designated control port according to the test mode to drive the corresponding control valve to close; the time required from the start of gas input to the complete closure of the control valve is called the drive delay; after the gas input is completed, close the control port to keep the gas pressure within the drive channel;

[0018] Step 4: Input sufficient colored gas into the control channel from the core input. This time is called the gas filling delay in the control channel. After the gas filling is completed, turn off the core input to keep the colored gas in the control channel.

[0019] Step 5: Keep the control port and core input closed for a period of time; if the drive channel / control channel is damaged, the gas can fully leak into the external environment during this period, which is called the gas leakage delay; record the micro-photograph results at the end of the multiplexer at the end of the leakage delay, and use a computer to analyze in real time the distribution of colored gas in the channel segment at the end of the control channel in the multiplexer under this test mode. If it is the same as the expected distribution result, the possibility of a fault in some part of the multiplexer can be ruled out through this test mode; if it is different, it indicates that the multiplexer is faulty.

[0020] Step 6: Open the control port and core input to release the gas in the channel. Simultaneously, refresh the colored gas in the control channel to colorless gas to prepare for the next test mode execution; the time required for this process is called the gas refresh delay.

[0021] Step 7: Minimize the number of test patterns;

[0022] To achieve 100% fault coverage, n p Each test pattern must ensure that the location where each type of failure may occur is covered at least once; this constraint is described as:

[0023]

[0024]

[0025]

[0026]

[0027]

[0028] Using 0-1 variables This indicates whether the m-th test mode can determine the DC drive channel. j Is a blockage fault occurring? If so, then... Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the channel gap g. j If possible, then Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can determine the control channel CC. i Is there any blockage or fault? If so, then... Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the control channel gap g. i,j If possible, then Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect the control valve v. i,j The fault cannot be closed; if possible, then... Set to 1 otherwise set to 0; C d C represents the set of indices for all drive channels. c G represents the set of indices for all control channels. d G represents the set of subscripts representing the gaps between all drive channels. c V represents the set of subscripts for all control channel gaps, and V represents the set of subscripts for all control valves.

[0029] n p Let n be a constant, and then find a set of test patterns that can cover all possible locations for each type of fault, and the number of test patterns in this set does not exceed n. p For each test pattern, set a 0-1 variable p. m This indicates whether the m-th test mode has been used; since the activation of a valve in a test mode signifies its use, the following constraints apply:

[0030]

[0031] in, It is a positive constant larger than the number of valves in the multiplexer; if a valve is activated in the m-th test mode, the value on the right side of this constraint is greater than 0, thus making p m The value must be 1;

[0032] Under all the constraints mentioned above, to find a set of test patterns that can cover all possible locations of all fault types, the optimization objective can be described as:

[0033]

[0034] Because n p It is a specified constant, therefore it may have no solution, which means that the number of test patterns does not exceed n. p If a set of test patterns that can achieve 100% fault coverage cannot be found under the constraints, then n should be increased. p The value of is used to solve the optimization problem again;

[0035] Step 8: Combine test modes to achieve automated testing of microfluidic chip multiplexers.

[0036] Furthermore, the faults of the microfluidic chip multiplexer are classified into 5 categories;

[0037] 1) Drive channel blockage: The situation where gas leaks from the drive channel into the external environment is modeled as a drive channel blockage fault;

[0038] 2) Drive channel leakage: When the drive channel connected to the control port leaks into the adjacent drive channel at the fault location, the gas input from the control port will leak into the adjacent drive channel, causing the control valve to close incorrectly.

[0039] 3) Control channel blockage: The situation where gas leaks from the control channel into the external environment is modeled as a control channel blockage fault; the inability of a control valve to open due to loss of elasticity is also considered as a blockage fault in the control channel where the control valve is located.

[0040] 4) Control channel leakage: Similar to drive channel leakage, if the control channels connected to the two flow valves leak from each other at the fault location, the flow valves will close incorrectly due to the gas generated by the leakage.

[0041] 5) Valve failure to close due to elastic degradation: If the control valve experiences elastic degradation due to frequent opening and closing, the pressure in the drive channel cannot completely close the control valve. The gas in the control channel will be transmitted to the flow valve along the control channel, causing the flow valve to close incorrectly.

[0042] The beneficial effects of this invention are as follows:

[0043] This paper proposes a test pattern generation method based on Integer Linear Programming (ILP). Although the algorithm's model solution time is longer than that of PSO-based algorithms under certain test cases, it can achieve 100% fault coverage with fewer test patterns. Furthermore, this method only needs to be executed offline once for a given multiplexer architecture to obtain the required combination of test patterns. Attached Figure Description

[0044] Figure 1 The diagram shows the structure of a continuous microfluidic biochip: (a) schematic diagram of a continuous microfluidic biochip, and (b) mixer structure.

[0045] Figure 2 The diagram shows a multiplexer. (a) A physical diagram of a continuous microfluidic biochip multiplexer. (b) The structure of the multiplexer.

[0046] Figure 3The diagram shows the faults: (a) control channel blockage, (b) flow channel blockage, (c) flow channel leakage, and (d) channel leakage.

[0047] Figure 4 This is a schematic diagram of the coordinate system for a multiplexer.

[0048] Figure 5 This is a schematic diagram of a drive channel leakage fault.

[0049] Figure 6 A schematic diagram for controlling channel leakage faults. Detailed Implementation

[0050] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0051] The purpose of this invention is to design an automated fault detection method for a continuous microfluidic biochip multiplexer, and to design an automatic test pattern generation model for fault detection, with the optimization goal of minimizing the number of test patterns while achieving 100% fault coverage.

[0052] This invention addresses potential malfunctions that may occur during the manufacturing and use of continuous microfluidic biochips. Figure 2 (b) Taking this example, the faults in the multiplexer are modeled into the following 5 categories:

[0053] 1. Drive channel blockage: Drive channel segment d2 Blockage in the control channel prevents control valves v1 and v2 from closing, causing gas that should be blocked at control valves v1 and v2 to be incorrectly transferred along the control channel to flow valves f1 and f2. Furthermore, gas in the drive channel flows from the channel segment... d2 Leakage into the external environment will cause all control valves on this drive channel to fail to remain closed, affecting the behavior of the control valves and the channel segment. d8 The same applies when there is blockage. Therefore, the situation where gas leaks from the drive channel into the external environment is modeled as a blockage fault in the drive channel.

[0054] 2. Drive channel leakage: If the drive channel connected to control port m1 leaks with the adjacent drive channel at the fault location leakage1, then an incorrect connection will be formed between these two channels as follows: Figure 3 (c) shows the channel. At this time, the gas input from control port m1 will leak into the drive channel connected to control port m2, causing control valves v5 to v8 to close incorrectly.

[0055] 3. Control channel blockage: Control channel segment c2Blockage prevents pressure from being transmitted from the core input along the control channel to the flow valve f1. Gas leakage from the control channel into the external environment is similar to that in the drive channel and is also modeled as a blockage fault. Furthermore, if the control valve v1 experiences elastic degradation due to frequent opening and closing, and cannot be reopened after a certain closure, the control channel containing v1 is permanently blocked. Therefore, the inability of a control valve to open due to elastic degradation is considered a blockage fault in the control channel containing that control valve.

[0056] 4. Control channel leakage: Similar to the drive channel leakage, if the control channels connected to flow valves f5 and f6 leak from each other at the fault location leakage2, flow valve f6 will close incorrectly due to the gas generated by the leakage.

[0057] 5. Valve failure to close due to elastic degradation: If the control valve v1 experiences elastic degradation due to frequent opening and closing, the pressure in the drive channel will not be able to completely close the control valve v1. The gas in the control channel will be transmitted to the flow valve f1 along the control channel, causing the flow valve f1 to close incorrectly.

[0058] Based on the above fault model, this invention first proposes an automated test mode generation method. Based on the test mode combinations generated by this method, the execution process proposed in this invention for a single test mode includes the following steps:

[0059] Step 1: Input colorless gas into the designated control port according to the test mode, driving the corresponding control valve to close. The time required from the start of gas input to the complete closure of the control valve is called the "drive delay". After the gas input is completed, close the control port to maintain the gas pressure within the drive channel.

[0060] Step 2: Input sufficient colored gas into the control channel from the core input; this period is called the "filling delay" of the gas in the control channel. After the gas filling is completed, shut off the core input to keep the colored gas in the control channel.

[0061] Step 3: Keep the control port and core input closed for a period of time. If the drive channel / control channel is damaged, the gas can leak sufficiently into the external environment during this period. This period is called the gas "leakage delay". At the end of the "leakage delay", record the micro-photograph results at the end of the multiplexer, and use a computer to analyze in real time the distribution of colored gas in the channel segment at the end of the control channel in the multiplexer under this test mode. If the distribution results are the same as expected, the possibility of a fault in some part of the multiplexer can be ruled out through this test mode; if they are different, it indicates that the multiplexer is faulty.

[0062] Step 4: Open the control port and core input to release the gas in the channel. Simultaneously, refresh the colored gas in the control channel to colorless gas to prepare for the next test mode. The time required for this process is called the gas "refresh delay". Specific implementation examples:

[0064] In the proposed method, an ILP model is used to generate a set of test patterns. In describing the ILP model, this paper uses coordinates (i,j) to represent the positions of the channel segment, control valve, and channel clearance, as shown in the coordinate system. Figure 3 As shown. To better describe the positional relationships between the channels, control valves, and channel clearances, DC is used. i This indicates the drive channel with index i, represented by CC. i This indicates the control channel with index i, using This represents the driving channel segment located at (i,j), represented by... This represents the control channel segment located at (i,j). Furthermore, for a given position on the channel, the direction in which gas flows in is called the upstream of that position, and the direction in which gas flows out is called the downstream of that position.

[0065] A. Generate test mode

[0066] Based on the input multiplexer structure, use 0-1 variables v i,j This indicates whether a control valve exists at the intersection (i,j) of the drive channel and the control channel. If a control valve exists, then v i,j The value is set to 1 otherwise. Assume a set of test patterns can cover all possible locations where various types of faults may occur, and the number of test patterns in this set does not exceed n. p n p It is a given constant. For a control valve located at (i,j), it is represented by a 0-1 variable. This indicates the activation state of the control valve in the m-th test mode. If the control valve is activated (closed), then... Set it to 1, otherwise set it to 0.

[0067] In any test mode, the activation state of all control valves on a single drive channel remains consistent. That is, in the m-th test mode, if the drive channel DC... k If there is gas input, then DC k All control valves should be closed simultaneously; otherwise, they should be open simultaneously. Therefore, the drive channel DC... k The relationships between all control valves can be constrained as follows:

[0068]

[0069] Where S is the set of all open / closed states of control valves in the multiplexer, and n p This is the maximum number of test modes.

[0070] After generating the test pattern, it is necessary to analyze the input multiplexer structure to determine the faults that the test pattern can cover. The following will use... Figure 4 Taking the test mode "010100" as an example, we will analyze the types and locations of faults that this test mode can cover.

[0071] B. Drive channel blockage

[0072] In the above fault model, the blockage fault of the drive channel includes two situations: gas blockage at a certain point in the channel and gas leakage into the external environment. Figure 4 In the middle, for drive channel DC7, if gas is blocked in control valve v 5,7 When gas is blocked in the downstream channel section, it will not affect the function of the control valve on drive channel DC7, therefore this situation is considered a non-issue. At a certain point, it will cause the control valve v 5,7 and v 7,7 Unable to close properly. Furthermore, gas leakage into the external environment at any point within drive channel DC7 will lower the gas pressure within the channel, causing all control valves on that drive channel to fail to close properly. Analyzing the impact of blockages at different locations on drive channel DC7 on the open / closed state of the control valves reveals that if the last control valve downstream of drive channel DC7... 5,7 If it can close normally, it indicates that there is no channel blockage fault in the drive channel. Therefore, detecting whether there is a blockage fault in drive channel DC7 is transformed into detecting the control valve v. 5,7 Can it close normally? To determine the control valve v 5,7 Whether it can be shut down normally requires a test mode to ensure that, except for v, the control channel CC5 is functioning correctly. 5,7 All other drive valves are in the open position. Image recognition technology is used to analyze the control channel segment in real time at the end of the leakage delay period during this test mode. The presence of colored gas is used to determine v 5,7 Can it be closed normally? The presence of a colored gas indicates that v 5,7 If it cannot be shut down normally, it further indicates that there is a blockage fault in the drive channel DC7; otherwise, it means that there is no blockage fault in DC7.

[0073] In summary, when executing the m-th test mode, if the control channel CC... i The only control valve is v i,j Activated, and v i,jIt is a drive channel DC j The last downstream control valve can then control valve v i,j Can the DC drive channel be shut down normally? j Is there a blockage or fault? Use 0-1 variables. This indicates whether the m-th test mode can determine the DC drive channel. j Is a blockage or malfunction occurring? If so, then... Set it to 1, otherwise set it to 0. Therefore, this constraint can be described as:

[0074]

[0075] Among them, C d It is the set of indices for the drive channels. T is the set of indices for the last control valve downstream of all drive channels. For control channel CC i The set of all active states of the control valves, and By execution Figure 3 The test mode shown can determine whether the drive channels DC3 and DC7 are blocked.

[0076] C. Drive channel leakage

[0077] In a multiplexer, the drive channel DC j-1 With DC j+1 The gap between them is defined as g j If adjacent drive channels DC j-1 With DC j+1 If mutual leakage occurs, the channel gap g j The meeting mistakenly formed such as Figure 3 The channel shown in (c). Figure 4 As shown, when a leak occurs between drive channels DC3 and DC5, gas in DC3 will flow into DC5 from the fault location, causing the drive valve v to malfunction. 1,5 v 3,5 v 9,5 and v 11,5 It was mistakenly closed. (Due to v) 9,5 v 11,5 The control valve v upstream of the control channel 9,3 and v 11,3 When in the off state, it prevents the transmission of colored gas in the control channel, thus making the control channel segment unusable. and The presence of colored gas is used to determine whether there is a mutual leak between drive channels DC3 and DC5. However, for control channels CC1 and CC3, which should be connected, the colored gas is blocked by control valves v. 1,5 and v 3,5Therefore, through the control channel segment and The inability to detect colored gas indicates a malfunction in the multiplexer.

[0078] In summary, when determining whether a leakage fault has occurred in the drive channel, the fault is transformed into whether a new channel has been formed between adjacent drive channels, further determining whether the control valves on adjacent drive channels are abnormally closed. When executing the m-th test mode, if the drive channel gap g j Only DC drives are present in the adjacent drive channels on both sides. j-1 (DC j+1 There is gas input. Simultaneously, DC... j+1 (DC j-1 If there is a control valve on the test channel, and all control valves on the control channel containing that control valve are inactive, then the execution result of this test mode can be used to determine the DC drive channel. j-1 With DC j+1 Is there a mutual leakage fault? This is because the drive channel DC... j-1 With DC j+1 Whether a mutual leakage fault occurs between them is converted into a fault in the drive channel gap g. j Whether a new channel is formed, i.e., whether gas flows through the gap g of the drive channel. j Therefore, use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the channel gap g. j If possible, then Set to 1, otherwise set to 0. This constraint can be described as:

[0079]

[0080] Among them, G d C represents the set of subscripts representing the gap between drive channels. c This represents the set of indices for the control channels. It also represents the drive channel DC. j The set of all activated states of the driven valves is defined as and When execution Figure 3 When the test mode is shown, it can be determined whether there is gas flowing through the gaps g2, g4, g6, and g8 of the drive channel, and then it can be determined whether there is a leakage fault in the drive channels DC1, DC3, DC5, DC7, and DC9.

[0081] D. Control channel blockage

[0082] Similar to drive channel blockage faults, control channel blockage faults include two scenarios: gas blockage at a point in the channel and gas leakage into the external environment. Figure 4Taking the test mode shown as an example, when the multiplexer is fault-free, the control channel CC3 is in a connected state. If the colored gas in the control channel CC3 is blocked in the control channel segment... The lack of air pressure in the downstream control channel section prevents the flow valve f2 from closing, and also prevents the flow from closing in the control channel section. Colored gas detected. When the colored gas leaks from control channel CC3 into the external environment, it will also be unable to be contained within the control channel segment. Colored gas was detected.

[0083] In summary, when executing the m-th test mode, if the control channel CC... i If no control valve is activated, it can be controlled via the CC channel. i Whether colored gas can be detected in the last downstream channel segment is used to determine the control channel CC. i Are there any blockage faults? Furthermore, when all control channels are simultaneously connected, blockage faults in the control channels can easily be masked by leakage faults. Therefore, this situation should be avoided. Use 0-1 variables. This indicates whether the m-th test mode can determine the control channel CC. i Are there any blockages or malfunctions? If so, then... Set to 1 otherwise set to 0. The constraint is as follows:

[0084]

[0085] Among them, C c This represents the set of subscripts for the control channels. Indicates control channel CC i The set of all active states of the control valves. When executed Figure 4 When the test mode shown is used, it can be determined whether there is a blockage fault in the control channels CC1 and CC3.

[0086] E. Control channel leakage

[0087] In the control layer, the area between adjacent control channels is divided into smaller channel gaps by the drive channels. For example... Figure 5 As shown, the gap between control channels CC3 and CC4 is divided into 7 smaller gaps by 6 drive channels. The gap between the control channels located at (i,j) is defined as g. i,j For the control channel gap g i,j If its two sides control channel sections and If the air pressure is the same in any test mode, then even if a mutual leakage fault occurs between these two channel sections, the function of the multiplexer will not be affected. This situation is considered a leakage fault that does not matter, and this control channel gap g i,jThis is referred to as the unimportant channel gap. If g i,j For channel gaps that are of no concern, the upstream of the control channel segment on both sides and any drive channel either simultaneously form a control valve at the boundary, or neither forms a control valve. Use a 0-1 variable c. i,j Indicates the control channel gap g i,j This needs to be considered; if so, set it to 1; otherwise, set it to 0. The constraint is described as follows:

[0088]

[0089] Among them, G c It is the set of indices for all control channel gaps, C d It is the set of subscripts for the driving channels.

[0090] Similar to the issue of leakage in the drive channel, the question of whether leakage occurs in the control channel is transformed into whether new channels are formed within the control channel gaps. To determine which control channel gaps are covered by the m-th test mode, it is necessary to know the gas distribution within each control channel segment under that test mode. If the control channel segment... If none of the upstream drive valves are activated, the colored gas can be transferred to Use 0-1 variables This indicates the control channel segment during the execution of the m-th test mode. Is there gas inside? Therefore, this constraint can be expressed as:

[0091]

[0092] Here, H is the set of control channel segment indices. It is the control channel CC i The set of all active states of control valves.

[0093] like Figure 5 As shown, if the control channel segment and If mutual leakage occurs, the colored gas in control channel CC7 will leak through the control channel gap g. 8,6 The newly formed channel enters the control channel CC9, causing the flow valve f8 to close incorrectly. Simultaneously, in the control channel section... It can detect colored gases.

[0094] In summary, when executing the m-th test mode, if the control channel gap g... i,j Only in the control channel sections on both sides There is gas, at the same time, If none of the downstream drive valves are activated, the control channel clearance g can be determined from the execution result of this test mode. i,jWhether a new channel will be formed. This is because the control channel segment... and Whether mutual leakage occurs is converted into whether gas flows through the channel gap g. i,j Therefore, use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the control channel gap g. i,j If possible, then Set to 1, otherwise set to 0. Additionally, if the control channel gap g... i,j If it falls under the category of "not caring", then g is considered... i,j It has been tested, and will Set to 1. This constraint can be described as:

[0095]

[0096] Among them, G c It is the set of subscripts for all control channel gaps.

[0097] F. Valve malfunction due to elastic degradation

[0098] The control valve, due to frequent switching, experiences elastic degradation and cannot close completely, thus losing its ability to control pressure signals. When executing the m-th test mode, assume the drive channel DC... j Gas is being input, and valve V is being controlled simultaneously. i,j It cannot be turned off due to elastic decay. At this time, if the control channel CC... i above except v i,j If none of the other control valves are activated, then CC i Colored gas can be observed in the downstream control channel section, therefore, this test mode can be used to detect the control valve v. i,j A failure to shut down normally. Using 0-1 variables. This indicates whether the m-th test mode can detect the control valve v. i,j An inability to close the malfunction. If possible, then... Set to 1, otherwise set to 0. This constraint can be described as:

[0099]

[0100] Where V is the set of subscripts for the control valves. When executing... Figure 3 In the test mode shown, it is possible to determine the control valve v 9,3 v 5,7 Is it impossible to turn it off due to elastic degradation?

[0101] Minimize the number of test modes

[0102] To achieve 100% fault coverage, n pEach test pattern must ensure that the location of each type of failure is covered at least once. This constraint can be described as:

[0103]

[0104]

[0105]

[0106]

[0107]

[0108] Where C d C represents the set of indices for all drive channels. c G represents the set of indices for all control channels. d G represents the set of subscripts representing the gaps between all drive channels. c V represents the set of subscripts for all control channel gaps, and V represents the set of subscripts for all control valves.

[0109] The aforementioned test mode constraints depend on a known number n of test modes with 100% fault coverage. p In the formula, first n p Let n be a constant, and then find a set of test patterns that can cover all possible locations for each type of fault, and the number of test patterns in this set does not exceed n. p For each test pattern, we set a 0-1 variable p. m This indicates whether the m-th test mode has been used. Since the activation of a valve in a test mode signifies its use, the following constraints apply:

[0110]

[0111] Where S is the set of all active states of the control valves. It is a normal number larger than the number of valves in the multiplexer. If a valve is activated in the m-th test mode, the value on the right side of this constraint is greater than 0, thus making p... m The value must be 1.

[0112] Under all the constraints mentioned above, the ILP model in this paper aims to find a set of test patterns that can cover all possible locations where all fault types may occur. This optimization objective can be described as follows:

[0113]

[0114] Because n pIt is a specified constant, therefore the ILP model may have no solution, which means that the number of test patterns does not exceed n. p Under the constraints, it is impossible to find a set of test patterns that can achieve 100% fault coverage. If this occurs, increase n. p The value of is then used to solve the optimization problem again.

[0115] The ILP model for automatic test pattern generation proposed in this invention was solved using the Gurobi solver and tested on a computer with a 3.2GHz CPU and 8GB of memory. The effectiveness of the proposed algorithm was verified using eight multiplexer structures with different structures or numbers of control valves. Test case information is shown in Table 1, where n v n is the number of control valves in the multiplexer. d It is the number of drive channels, n c It controls the number of channels.

[0116] To verify the superiority of the ILP method employed in this invention in the automated generation of test patterns for control layer multiplexers, a baseline method based on the Particle Swarm Optimization (PSO) algorithm is implemented for comparison. Furthermore, this invention also compares it with an intuitive manual test pattern generation method that also achieves 100% fault coverage. In the manually generated test patterns, each test pattern can only connect one control channel; therefore, the number of test patterns generated manually is equal to the number of control channels in the multiplexer, and each control channel only needs to be covered once by its corresponding test pattern to achieve 100% fault coverage.

[0117] To obtain the test pattern combinations within a reasonable timeframe, the solution time for each test case is limited to 30 minutes, and the optimal solution obtained by the solver within this timeframe is returned. Since n p It is a specified constant, when n p When the value of n is too small, the model may not have a solution. Therefore, it is necessary to gradually increase n. p The value of n is taken to solve the optimization problem multiple times. To reduce the number of attempts, this invention uses n... p The initial value is set to n c / 2, which is half the number of control channels of the multiplexer. The number of channels is increased gradually by n each time. p When the value of is taken, the step size is 2. When the model has a solution, the final number of test patterns required is denoted as n′. p .

[0118] The experimental results are recorded in Table 1, where the column 'cov' represents the fault coverage of the test pattern set. Although manual methods can generate test pattern combinations achieving 100% fault coverage, they require acquiring the control patterns needed to drive each control channel of the multiplexer, thus consuming a considerable amount of time, which is difficult to estimate. Furthermore, the test pattern combinations generated by manual methods contain a large number of test patterns, the same as the number of multiplexer control channels. In contrast, PSO-based test pattern generation algorithms generate test pattern combinations in a shorter time but struggle to achieve 100% coverage, failing to achieve ideal results in fault detection. This paper proposes an ILP-based test pattern generation algorithm. Although the model solution time of this algorithm is longer than that of the PSO-based algorithm under certain test cases, it can achieve 100% fault coverage with fewer test patterns. Moreover, this algorithm only needs to be executed offline once for a given multiplexer structure to obtain the required test pattern combination, making the runtime acceptable.

[0119] Taking test case C as an example, the solution results of the ILP model in this paper are shown in Table 2. The test mode length is 8 bits, representing the number of control ports. The expected result of the test mode is 16 bits, representing the number of control channels. For example, when executing the first test mode 00100010, the 3rd and 7th drive channels need to be filled with gas, while the remaining drive channels do not. The expected execution result of this test mode is that colored gas can be observed in the 6th, 8th, 14th, and 16th control channels, while no colored gas is observed in the remaining control channels.

[0120] Table 1 shows the comparison results with the direct method and the PSO algorithm.

[0121]

[0122] Table 2 Test mode of test case C and its expected response results

[0123]

Claims

1. An automatic testing method for microfluidic chip multiplexers based on integer linear programming, characterized in that, Includes the following steps: Step 1: Model the faults of the microfluidic chip multiplexer; Step 2: Generate test mode; Step 2-1: Represent the positions of the channel segment, control valve, and channel clearance using coordinates (i,j), and use DC... i This indicates the drive channel with index i, represented by CC. i This indicates the control channel with index i, using This represents the driving channel segment located at (i,j), represented by... This indicates the control channel segment located at (i,j). The direction of gas inflow is called the upstream of this position, and the direction of gas outflow is called the downstream of this position. Step 2-2: Based on the input multiplexer structure, use 0-1 variables v i,j This indicates whether a control valve exists at the intersection (i,j) of the drive channel and the control channel; if a control valve exists, then v i,j The value is set to 1 otherwise; assuming a set of test patterns can cover all possible locations where various types of faults may occur, and the number of test patterns in this set does not exceed n. p n p It is a given constant; for the control valve located at (i,j), it is a 0-1 variable. This indicates the activation state of the control valve in the m-th test mode. If the control valve is activated (i.e., its state is closed), then... Set to 1, otherwise set to 0; Steps 2-3: In any test mode, the activation state of all control valves on a drive channel remains consistent. That is, in the m-th test mode, if the drive channel DC... k If there is gas input, then DC k All control valves should be closed simultaneously; otherwise, they should be open simultaneously. Therefore, the drive channel DC... k The relationships between all control valves are constrained as follows: Where S is the set of all open / closed states of control valves in the multiplexer; After generating the test pattern, the faults that the test pattern can cover are analyzed by the input multiplexer structure, see the following steps; Step 3: Input colorless gas from the designated control port according to the test mode to drive the corresponding control valve to close; the time required from the start of gas input to the complete closure of the control valve is called the drive delay; after the gas input is completed, close the control port to keep the gas pressure within the drive channel; Step 4: Input sufficient colored gas into the control channel from the core input. This time is called the gas filling delay in the control channel. After the gas filling is completed, turn off the core input to keep the colored gas in the control channel. Step 5: Keep the control port and core input closed for a period of time; if the drive channel / control channel is damaged, the gas can fully leak into the external environment during this period, which is called the gas leakage delay; record the micro-photograph results at the end of the multiplexer at the end of the leakage delay, and use a computer to analyze in real time the distribution of colored gas in the channel segment at the end of the control channel in the multiplexer under this test mode. If it is the same as the expected distribution result, the possibility of a fault in some part of the multiplexer can be ruled out through this test mode; if it is different, it indicates that the multiplexer is faulty. Step 6: Open the control port and core input to release the gas in the channel; at the same time, refresh the colored gas in the control channel to colorless gas so that the next test mode can be executed; the time required for this process is called the gas refresh delay. Step 7: Minimize the number of test patterns; To achieve 100% fault coverage, n p Each test pattern must ensure that the location where each type of failure may occur is covered at least once; this constraint is described as: Using 0-1 variables This indicates whether the m-th test mode can determine the DC drive channel. j Is a blockage fault occurring? If so, then... Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the channel gap g. j If possible, then Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can determine the control channel CC. i Is there any blockage or fault? If so, then... Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect whether gas flows through the control channel gap g. i,j If possible, then Set it to 1, otherwise set it to 0; use 0-1 variables. This indicates whether the m-th test mode can detect the control valve v. i,j The fault cannot be closed; if possible, then... Set to 1 otherwise set to 0; C d C represents the set of indices for all drive channels. c G represents the set of indices for all control channels. d G represents the set of subscripts representing the gaps between all drive channels. c V represents the set of subscripts for all control channel gaps, and V represents the set of subscripts for all control valves. n p Let n be a constant, and then find a set of test patterns that can cover all possible locations for each type of fault, and the number of test patterns in this set does not exceed n. p For each test pattern, set a 0-1 variable p. m This indicates whether the m-th test mode has been used; since the activation of a valve in a test mode signifies its use, the following constraints apply: in, It is a positive constant larger than the number of valves in the multiplexer; if a valve is activated in the m-th test mode, the value on the right side of this constraint is greater than 0, thus making p m The value must be 1; Under all the constraints mentioned above, to find a set of test patterns that can cover all possible locations of all fault types, the optimization objective can be described as: Because n p It is a specified constant, therefore it may have no solution, which means that the number of test patterns does not exceed n. p If a set of test patterns that can achieve 100% fault coverage cannot be found under the constraints, then n should be increased. p The value of is used to solve the optimization problem again; Step 8: Combine test modes to achieve automated testing of microfluidic chip multiplexers.

2. The automatic testing method for microfluidic chip multiplexers based on integer linear programming according to claim 1, characterized in that, The faults of the microfluidic chip multiplexer are classified into 5 categories; 1) Drive channel blockage: The situation where gas leaks from the drive channel into the external environment is modeled as a drive channel blockage fault; 2) Drive channel leakage: When the drive channel connected to the control port leaks into the adjacent drive channel at the fault location, the gas input from the control port will leak into the adjacent drive channel, causing the control valve to close incorrectly. 3) Control channel blockage: The situation where gas leaks from the control channel into the external environment is modeled as a control channel blockage fault; the inability of a control valve to open due to loss of elasticity is also considered as a blockage fault in the control channel where the control valve is located. 4) Control channel leakage: Similar to drive channel leakage, if the control channels connected to the two flow valves leak from each other at the fault location, the flow valves will close incorrectly due to the gas generated by the leakage. 5) Valve failure to close due to elastic degradation: If the control valve experiences elastic degradation due to frequent opening and closing, the pressure in the drive channel cannot completely close the control valve. The gas in the control channel will be transmitted to the flow valve along the control channel, causing the flow valve to close incorrectly.