DNA storage method based on data superposition pseudorandom sequence index

By employing sliding correlation and majority voting algorithms for pseudo-random sequence indexing in DNA storage, the problem of vulnerable labeled sequences in oligonucleotide pool storage is solved, enabling rapid and reliable data recovery under low coverage, and improving storage density and recovery efficiency.

CN121331248APending Publication Date: 2026-01-13TIANJIN UNIV SYNTHETIC BIOLOGY FRONTIER RES INST
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511389146.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-26
Publication Date
2026-01-13

AI Technical Summary

Technical Problem

In existing DNA data storage technologies, the labeling sequences in oligonucleotide pool storage are easily damaged, leading to a decrease in data recovery accuracy. This is especially true during hydrolysis, when the labeling sequences are damaged or broken, affecting the accuracy of data recovery.

Method used

A method based on data superposition pseudo-random sequence indexing is adopted, which performs sliding correlation at the boundary of each pseudo-random sequence segment, and combines majority voting algorithm and sparse code decoding to achieve rapid location of sequencing reads and data recovery.

Benefits of technology

Error-free recovery of original data was achieved with low sequencing coverage, significantly reducing the proportion of redundant data and improving data storage density and recovery speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121331248A_ABST
    Figure CN121331248A_ABST
Patent Text Reader

Abstract

The invention discloses a DNA (deoxyribonucleic acid) storage method based on data superposition pseudorandom sequence index, which comprises the following steps of: firstly, performing exclusive OR on a pseudorandom sequence and a sparse coding sequence to generate an addressable short fragment oligonucleotide sequence; then, by using the superposed pseudo-random sequence as an index, correlating the pseudo-random sequence hidden in the sequencing read with the known pseudo-random sequence at the boundary of each pseudo-random sequence by using a small sliding window to realize quick positioning of the read so as to determine the position of the read on the whole pseudo-random sequence; and finally, reconstructing a sparse coding sequence by adopting a majority voting algorithm, and realizing error-free recovery of data through sparse code decoding and iterative decoding. The method has the advantages that sequence positioning can be achieved only through correlation operation at the boundary of each pseudo-random sequence, local label sequences do not need to be added to oligonucleotide molecules, data recovery performance reduction caused by label sequence damage, sequence breakage and the like is avoided, and rapid data recovery can be achieved under low sequencing coverage.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data storage, and more specifically, to a DNA storage method based on data overlay pseudo-random sequence indexing. Background Technology

[0002] With the rapid development of information technologies such as the internet, the amount of data generated globally is exploding. According to predictions by the International Data Corporation (IDC), the total global data volume will reach 175 ZB by 2025. In the digital economy era, data, as a key production factor, is increasingly becoming a core force driving social production and innovation. In their 2021 "Semiconductor Decade Plan," the Semiconductor Industry Association (SIA) and Semiconductor Research Corporation (SRC) pointed out that over 60% of data is "cold data" that does not require frequent access, highlighting its long-term preservation and potential value. The rapid growth of data places higher demands on storage media in terms of storage density, lifespan, and cost. Current storage media, such as hard drives, optical discs, magnetic tapes, and flash memory, face problems such as limited lifespan, high maintenance costs, and storage density approaching physical limits, making it difficult to meet the demand for long-term reliable storage of massive amounts of cold data. Therefore, facing this severe challenge, developing new storage media and storage models has become an urgent need to promote the sustainable development of information technology.

[0003] Deoxyribonucleic acid (DNA) molecules, as an emerging data storage medium, have become a highly promising new model for long-term storage of massive amounts of data due to their advantages such as high storage density, long-term stability, and low maintenance costs. DNA data storage involves storing digitized information in artificially synthesized DNA base sequences, using four different bases {A, T, G, C} to represent data. According to the "Semiconductor Synthetic Biology Roadmap" published by Semiconductor Research Corporation (SRC) in 2018, the storage density of DNA molecules is predicted to be about seven orders of magnitude higher than the highest storage capacity of existing storage media. In terms of storage stability, studies by Grass et al. have confirmed that encapsulating information-encoding DNA in materials such as silica can preserve it for thousands of years. This storage model avoids frequent data migration and high-energy-consuming maintenance, significantly reducing the data maintenance costs for long-term storage. In addition, DNA data storage supports offline storage, has high security and easy backup characteristics, and is suitable for long-term reliable storage of cold data and archived data.

[0004] DNA storage formats primarily include two types: in vitro short-fragment oligonucleotide pool storage and in vivo large-fragment DNA storage. Short-fragment DNA storage utilizes oligonucleotide pools containing a large number of short-chain DNA molecules (typically 100–300 bases) for information storage, and readout is usually achieved using next-generation high-throughput sequencing. Large-fragment DNA storage can be readout using technologies similar to cell genome sequencing, including next-generation high-throughput sequencing and third-generation nanopore sequencing. In practical applications, third-generation nanopore sequencing has a higher error rate, requires higher sequencing coverage for error-free data recovery, and has a more complex data recovery process. For large-fragment DNA storage, if next-generation high-throughput sequencing is used, it needs to be broken into short fragments using a "shotgun" method before sequencing, followed by computationally complex de novo assembly algorithms for sequence reconstruction. This process also requires high sequencing coverage for accurate recovery.

[0005] Unlike storage models based on large DNA fragments, oligonucleotide pools are typically preserved in dry powder, solution, or other enhanced encapsulation media. This storage model offers high throughput and demonstrates high-density storage potential for massive datasets. For data readout, second-generation high-throughput sequencing platforms such as Illumina and Ion Torrent are generally used to read DNA sequences. For example, the Erlich team at Columbia University used a digital fountain code scheme to encode binary data into multiple coding groups, and after adding RS code error correction redundancy, transcoded it to generate 72,000 200 nt oligonucleotide sequences. During data recovery, using the RS error correction decoding algorithm and the inverse Luby transform algorithm corresponding to the digital fountain code, the original data was successfully reconstructed at 10.5× sequencing coverage. A research team at Tianjin University used a concatenated LDPC and RS code encoding scheme to store two video files and one text file in 272,340 oligonucleotide sequences, each 169 nt in length. During data readout, sequencing data was generated by sequencing samples of different concentrations through PCR amplification and next-generation high-throughput sequencing. Combined with logic block recognition and LDPC code to RS code decoding algorithms, data recovery was achieved at molecular copy numbers ranging from 100 to 1000.

[0006] DNA data storage typically distributes information across numerous short DNA fragments, and restoring the correct order of all fragments is crucial for reliable data recovery. In short-fragment DNA data storage, the readout order is random due to the disordered nature of numerous oligonucleotide molecules. Therefore, each oligonucleotide molecule generally needs a short base sequence appended as a unique identifier to determine the position of the data it carries within the whole. However, during actual storage and retrieval, DNA molecules may degrade and are highly susceptible to hydrolysis in aqueous solutions, leading to damage or breakage of the identifier sequences, thus affecting the accuracy of data recovery. Summary of the Invention

[0007] To overcome the shortcomings of existing technologies, this invention proposes a DNA storage method based on data superposition pseudo-random sequence indexing. Addressing the problem of easily damaged labeled sequences in oligonucleotide pool storage, sliding correlation is performed within a small sliding window at the boundary of each pseudo-random sequence to locate sequencing reads, and base-by-base majority voting is used to reconstruct the original sequence, enabling error-free recovery of the original data even with low sequencing coverage.

[0008] The objective of this invention is achieved through the following technical solutions.

[0009] A DNA storage method based on data overlay pseudo-random sequence indexing, characterized in that the method includes the following steps:

[0010] (1) The user data to be stored is scrambled and encoded using global block error correction code to obtain the encoded data bit sequence; the data bit sequence is interleaved and sparsified and then segmented; the segmented double-layer data bit sequence is XORed one by one with a known double-layer pseudo-random sequence fragment of equal length; the XOR result after segmentation is transcoded according to the bit-to-base mapping rule to obtain the segmented data DNA sequence; primer sequences are added to both ends of each data DNA sequence to form an oligonucleotide sequence;

[0011] (2) All oligonucleotide sequences were chemically synthesized, and the synthesized oligonucleotide sequences were library constructed and second-generation high-throughput sequencing was performed during reading to obtain sequencing reads;

[0012] (3) Identify the paired primer sequences of each sequencing read and extract the valid data portion of each sequencing read, and demap them into damaged double-layer pseudo-random sequences according to the "base-bit" mapping rule; each damaged double-layer pseudo-random sequence is correlated with a small sliding window at the boundaries of all known double-layer pseudo-random sequences, and the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment are determined according to the correlation peak.

[0013] (4) For the sequencing reads that have been successfully identified, place them at the starting position on the corresponding double-layer pseudo-random sequence fragment according to the positioning result, and generate a consistent base sequence using the majority voting decision algorithm; convert the consistent base sequence into a damaged data bit sequence, and input it into the decoder for error correction after sparse code decoding to restore the original user data.

[0014] Furthermore, the specific process of step (1) is as follows:

[0015] (1.1) Divide the user data to be stored into segments of length [length missing]. of Short segments, each superimposed with the same scrambling sequence; among which For the number of codewords, And it is an integer;

[0016] (1.2) For each segment of length... The superimposed sequences are respectively processed using block error correction codes. Encode to generate a length of The encoded data bit sequence; where The length of the encoded codeword. The length of the information bits;

[0017] (1.3) After interleaving each segment of coded data bit sequence, according to... Bit to Sparsification is performed using bits; the length after sparsification is... Each complete sequence of bits is divided into... A length of A two-layer data bit sequence segment; where , It is a positive integer. This indicates the rounding up operation;

[0018] (1.4) XOR each double-layer data bit sequence segment with its corresponding double-layer pseudo-random sequence segment one by one. Following the bit-to-base mapping rule {00→A, 01→T, 10→G, 11→C}, transcode each bit sequence obtained after XORing into a sequence of length [length missing]. DNA sequence data;

[0019] The process for determining the two-layer pseudo-random sequence segment involves: generating longest linear feedback shift register sequences of different orders based on the initial state and the generator polynomial; periodically extending each generated sequence of different orders to the same length and then performing a bit-by-bit XOR operation; and truncating the XOR result before... bits, and divided into A length of A two-layer pseudo-random sequence fragment of bits;

[0020] (1.5) Add a length of [length missing] to both ends of each DNA sequence. Primer sequences, construct The length of the data segment is Oligonucleotide sequences of bases.

[0021] Furthermore, the specific process of step (3) is as follows:

[0022] (3.1) Based on the edit distance between each sequencing read and the primer sequences at both ends, select sequencing reads that meet the edit distance threshold, and extract the data portion located between the primer sequences at both ends respectively;

[0023] (3.2) According to the base-bit mapping rule {A→(00), T→(01), G→(10), C→(11)}, each selected sequencing read is... Demap each to a length of Bit-damaged two-layer pseudo-random sequence , The upper-level pseudo-random sequence is damaged. This is a damaged lower-level pseudo-random sequence;

[0024] (3.3) Convert the bits "0" in each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to "-1", while leaving the bits "1" unchanged;

[0025] (3.4) Slide each damaged double-layer pseudo-random sequence sequentially over each known double-layer pseudo-random sequence; when sliding over each known double-layer pseudo-random sequence, use each known double-layer pseudo-random sequence as a reference, within a predetermined displacement range. Within the range, the damaged double-layer pseudo-random sequence is shifted left and right; at each shift position, the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence is calculated, and within each effective overlap region, the corresponding damaged double-layer pseudo-random sequence is calculated bit by bit. Compared with known two-layer pseudo-random sequences The correlation values ​​between them Given a known upper-level pseudo-random sequence, The lower-level pseudo-random sequence is known;

[0026] (3.5) Compare the correlation values ​​calculated at each position on each known double-layer pseudo-random sequence, and determine the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment based on the maximum correlation peak.

[0027] Furthermore, the specific process of step (3.4) is as follows:

[0028] (3.4.1) When sliding each damaged double-layer pseudo-random sequence with each known double-layer pseudo-random sequence, the two sequences are aligned at the left end, and the damaged double-layer pseudo-random sequence is shifted to the left and right relative to the known double-layer pseudo-random sequence, respectively. One location;

[0029] (3.4.2) For each displacement Calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence. ;when At that time, the effective overlap length ,when At that time, the effective overlap length ;

[0030] (3.4.3) For each known double-layer pseudo-random sequence and each displacement, calculate the correlation value between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence bit by bit within each corresponding overlapping region. Its calculation formula is expressed as:

[0031] ,

[0032] in, Is with the first A known two-layer pseudo-random sequence in terms of displacement Calculated relevant values, , and These are displacements The corresponding damaged upper-layer pseudo-random sequences and lower-layer pseudo-random sequences, and These are displacements Given the corresponding known upper-level and lower-level pseudo-random sequences; using the formula above, obtain the correlation values ​​for each displacement in sequence, and finally obtain a total of [values] on each known double-level pseudo-random sequence. One relevant value.

[0033] Furthermore, the specific process of step (4) is as follows:

[0034] (4.1) Compare the sliding correlation value between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to obtain the cross-correlation peak value. and the corresponding peak position; where It refers to the first The correlation value is calculated from a known two-layer pseudo-random sequence.

[0035] (4.2) Based on the preset cross-correlation peak threshold, select sequencing reads that meet the threshold, and determine that sequencing reads with cross-correlation peaks greater than or equal to the threshold are successfully identified;

[0036] (4.3) Perform base-by-base majority voting on the successfully identified sequencing reads to generate a consistent base sequence;

[0037] (4.4) Each consistent base sequence is converted into a damaged data bit sequence, and after sparse code decoding, it is input into the decoder to correct residual errors and recover the original user data.

[0038] Furthermore, the specific process of step (4.3) is as follows:

[0039] (4.3.1) For lengths of Each base sequence is used to construct a separate base sequence. The counting buffer;

[0040] (4.3.2) Based on the relevant peak positions, align the successfully identified sequencing reads to the starting position of the corresponding known pseudo-random sequence; within each known double-layer pseudo-random sequence, based on the base type at each position of the sequencing read, accumulate the base counts at the corresponding positions in the counting buffer to obtain the statistical counts of the four bases {A,T,G,C} at all positions in each counting buffer;

[0041] (4.3.3) Perform a base-by-base majority vote for each counting buffer, generating a buffer of length [length missing]. The consistent base sequence.

[0042] Furthermore, the specific process of step (4.4) is as follows:

[0043] (4.4.1) Each strip of length is After the base sequence of the base is concatenated according to the codeword, each concatenated base sequence is demapped into a double-layer data bit sequence according to the mapping rule of "base-bit" {A→(00), T→(01), G→(10), C→(11)}.

[0044] (4.4.2) Perform a bitwise XOR operation between the demapped double-layer data bit sequence and the known double-layer pseudo-random sequence to obtain the damaged sparse codeword sequence;

[0045] (4.4.3) Desparse and deinterleave the damaged sparse codeword sequence to recover the damaged codeword sequence;

[0046] (4.4.4) The damaged codeword sequence is fed into the decoder for error correction. After decoding, it is XORed with the scrambling sequence to obtain the final result. By splicing together the information sequences, the original user data can be recovered.

[0047] Compared with the prior art, the beneficial effects of the technical solution of the present invention are:

[0048] (1) This invention proposes a DNA storage method based on data superposition pseudo-random sequence indexing. The method first XORs the pseudo-random sequence with the sparse coding sequence to generate addressable short oligonucleotide sequences; then, using the superimposed pseudo-random sequence as an index, the hidden pseudo-random sequence in the sequencing read is correlated with the known pseudo-random sequence at the boundary of each pseudo-random sequence with a small sliding window to achieve rapid positioning of the read and determine its position on the overall pseudo-random sequence; for reads with successful correlation identification, the majority voting algorithm is used to reconstruct the consistent base sequence, and finally, the data is recovered without error by desparse coding and iterative decoding algorithms.

[0049] (2) This invention can achieve sequence localization by performing correlation operations with each pseudo-random sequence, without the need to add a label sequence to each oligonucleotide molecule, thus fundamentally eliminating the problem of decreased data recovery performance caused by damage or breakage of the label sequence; this method significantly reduces the proportion of redundant data and increases data storage density, providing a solution for fast and reliable data reading from oligonucleotide pool storage based on second-generation high-throughput sequencing.

[0050] Instruction manual illustrations

[0051] Figure 1 A block diagram illustrating the implementation of a DNA storage method based on data overlay pseudo-random sequence indexing provided by this invention;

[0052] Figure 2 This is a flowchart illustrating the process of recovering data from second-generation high-throughput sequencing reads in this invention;

[0053] Figure 3 This is a flowchart of the pseudo-random sequence design in this invention;

[0054] Figure 4 This is a flowchart illustrating the design process of the oligonucleotide pool data DNA sequence in this invention.

[0055] Figure 5 This is a flowchart illustrating the process of using a pseudo-random sequence as an index to locate segments in this invention.

[0056] Figure 6 This is a flowchart illustrating the boundary sliding correlation of each pseudo-random sequence segment in this invention;

[0057] Figure 7 This is a distribution diagram of the peak values ​​related to correct and incorrect positions in a specific embodiment 1 of the present invention;

[0058] Figure 8 This is a distribution diagram of base error rates at different relevant peak thresholds in specific embodiment 1 of the present invention;

[0059] Figure 9This is a graph showing the proportion of successful and failed segment recognition results in specific embodiment 1 of the present invention;

[0060] Figure 10 This is a graph showing the error rate results of successfully and unsuccessfully identified segments in specific embodiment 1 of the present invention;

[0061] Figure 11 This is a spatial distribution diagram of successful and failed segment insertion / deletion errors in specific embodiment 1 of the present invention;

[0062] Figure 12 This is a graph showing the bit erasure and replacement error rates before decoding under different coverage conditions in a specific embodiment 1 of the present invention;

[0063] Figure 13 This is a graph showing the success rate of decoding recovery under different coverage conditions in a specific embodiment 1 of the present invention;

[0064] Figure 14 This is a distribution diagram of the peak values ​​related to the correct and incorrect positions in specific embodiment 2 of the present invention;

[0065] Figure 15 This is a base error rate distribution diagram for different cross-correlation peak thresholds in specific embodiment 2 of the present invention;

[0066] Figure 16 This is a graph showing the proportion of successful and failed segment recognition results in specific embodiment 2 of the present invention;

[0067] Figure 17 This is a graph showing the error rate results of successfully and unsuccessfully identified segments in specific embodiment 2 of the present invention;

[0068] Figure 18 This is a spatial distribution diagram of successful and failed segment insertion / deletion errors in specific embodiment 2 of the present invention;

[0069] Figure 19 This is a graph showing the bit erasure and replacement error rates before decoding under different coverage conditions in specific embodiment 2 of the present invention;

[0070] Figure 20 This is a graph showing the success rate of decoding recovery under different coverage conditions in specific embodiment 2 of the present invention. Detailed Implementation

[0071] To make the objectives, technical solutions, and advantages of the present invention clearer, the embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.

[0072] This invention belongs to the field of DNA data storage and proposes a DNA storage method based on data superposition pseudo-random sequence indexing. First, the invention XORs a pseudo-random sequence with a sparse coding sequence to generate addressable short oligonucleotide sequences. Then, using the superimposed pseudo-random sequence as an index, a sliding correlation is performed between the hidden pseudo-random sequence in the sequencing read and the known pseudo-random sequence at the boundaries of each pseudo-random sequence segment using a small sliding window. The position on the overall pseudo-random sequence is determined based on the sliding correlation peak. A majority voting algorithm is then used to reconstruct the consistent base sequence. Finally, error-free data recovery is achieved through sparse code decomposition and iterative decoding algorithms. The advantage of this invention is that sequence location can be achieved through correlation operations at the boundaries of each pseudo-random sequence segment, eliminating the need to add a label sequence to each oligonucleotide molecule, fundamentally eliminating the data recovery performance degradation caused by label sequence damage or breakage. This method significantly reduces the proportion of redundant data, increases data storage density, and provides a solution for rapid and reliable data readout in oligonucleotide pool storage based on second-generation high-throughput sequencing.

[0073] Appendix Figure 1 The diagram shown is a principle block diagram of the implementation of the present invention. Figure 2 The diagram shows the data recovery process from second-generation sequencing reads. The DNA storage method based on data overlay pseudo-random sequence indexing of this invention includes the following steps:

[0074] (1) The user data to be stored is scrambled and encoded using global block error correction code to obtain the encoded data bit sequence; the data bit sequence is interleaved and sparsified and then segmented; the segmented double-layer data bit sequence is XORed one by one with a known double-layer pseudo-random sequence fragment of equal length; the XOR result after segmentation is transcoded according to the bit-to-base mapping rule to obtain the segmented data DNA sequence; primer sequences are added to both ends of each data DNA sequence to form an oligonucleotide sequence;

[0075] (2) All oligonucleotide sequences were chemically synthesized, and the synthesized oligonucleotide sequences were library constructed and second-generation high-throughput sequencing was performed during reading to obtain several sequencing reads;

[0076] (3) Identify the paired primer sequences of each sequencing read and extract the valid data portion of each sequencing read, and demap them into damaged double-layer pseudo-random sequences according to the "base-bit" mapping rule; each damaged double-layer pseudo-random sequence is correlated with a small sliding window at the boundaries of all known double-layer pseudo-random sequences, and the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment are determined according to the correlation peak.

[0077] (4) For the sequencing reads that have been successfully identified, place them at the starting position on the corresponding double-layer pseudo-random sequence fragment according to the positioning result, and generate a consistent base sequence using the majority voting decision algorithm; convert the consistent base sequence into a damaged data bit sequence, and input it into the decoder for error correction after sparse code decoding to restore the original user data.

[0078] In the above methods, preferably, as shown in the appendix. Figure 3 As shown, step (1) of this invention involves scrambling the user data to be stored and encoding it using a global block error correction code to obtain the encoded data bit sequence; after interleaving and sparsifying the data bit sequence, it is segmented, and the resulting double-layer data bit sequence is XORed one by one with a known double-layer pseudo-random sequence fragment of equal length; the XOR result after segmentation is transcoded according to the bit-to-base mapping rule to obtain the segmented data DNA sequence; primer sequences are added to both ends of each data DNA sequence to form an oligonucleotide sequence. The specific steps are as follows:

[0079] (1.1) Divide the user data to be stored into segments of length [length missing]. of Short segments, each superimposed with the same scrambling sequence; among which For the number of codewords, And the value is an integer, the scrambling sequence is the same length as the short segment;

[0080] (1.2) For each segment of length... The superimposed sequences are respectively processed using block error correction codes. Encode to generate a length of The encoded data bit sequence; where The length of the encoded codeword. The length of the information bits;

[0081] (1.3) After interleaving each segment of coded data bit sequence, according to... Bit to ( < Sparsification is performed using bits; the length of the sparsified data is... Each complete sequence of bits is divided into... A length of A two-layer data bit sequence segment; where , It is a positive integer. This indicates the rounding up operation;

[0082] (1.4) XOR each double-layer data bit sequence segment with its corresponding double-layer pseudo-random sequence segment one by one. Following the bit-to-base mapping rule {00→A, 01→T, 10→G, 11→C}, transcode each bit sequence obtained after XORing into a sequence of length [length missing]. DNA sequence data;

[0083] Among them, as attached Figure 4 As shown, the process of determining the two-layer pseudo-random sequence segment is as follows: Based on the initial state and the generator polynomial, generate the longest linear feedback shift register sequence of different orders. Each generated sequence of different orders is periodically extended to the same length and then XORed bit-by-bit. The XOR result is truncated before... bits, and divided into A length of A two-layer pseudo-random sequence fragment of bits;

[0084] (1.5) Add a length of [length missing] to both ends of each DNA sequence. Primer sequences, construct The length of the data segment is Oligonucleotide sequences of bases.

[0085] In the above methods, preferably, as shown in the appendix. Figure 5 As shown, step (3) of this invention identifies the paired-end primer sequences of each sequencing read and extracts the valid data portion of each sequencing read, and demaps them into damaged double-layer pseudo-random sequences according to the "base-bit" mapping rule; each damaged double-layer pseudo-random sequence is correlated with a small sliding window at the boundaries of all known double-layer pseudo-random sequences, and the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment are determined according to the correlation peak. The specific steps are as follows:

[0086] (3.1) Based on the edit distance between each sequencing read and the primer sequences at both ends, select sequencing reads that meet the edit distance threshold, and extract the data portion located between the primer sequences at both ends respectively;

[0087] (3.2) According to the base-bit mapping rule {A→(00), T→(01), G→(10), C→(11)}, each selected sequencing read is... Demap each to a length of Bit-damaged two-layer pseudo-random sequence , The upper-level pseudo-random sequence is damaged. This is a damaged lower-level pseudo-random sequence;

[0088] (3.3) Each damaged double-layer pseudo-random sequence ( and ) and each known two-layer pseudo-random sequence ( and In this process, bit "0" is converted to "-1", while bit "1" remains unchanged;

[0089] (3.4) Slide each damaged double-layer pseudo-random sequence sequentially over each known double-layer pseudo-random sequence; when sliding over each known double-layer pseudo-random sequence, use each known double-layer pseudo-random sequence as a reference, within a predetermined displacement range. Within the range, the damaged double-layer pseudo-random sequence is shifted left and right; at each shift position, the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence is calculated, and within each effective overlap region, the corresponding damaged double-layer pseudo-random sequence is calculated bit by bit. Compared with known two-layer pseudo-random sequences The correlation values ​​between them Given a known upper-level pseudo-random sequence, The lower-level pseudo-random sequence is known;

[0090] (3.5) Compare the correlation values ​​calculated at each position on each known double-layer pseudo-random sequence, and determine the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment based on the maximum correlation peak.

[0091] In the above methods, preferably, as shown in the appendix. Figure 6 As shown, in step (3.4) of this invention, each damaged double-layer pseudo-random sequence is slid sequentially over each known double-layer pseudo-random sequence; while sliding over each known double-layer pseudo-random sequence, each known double-layer pseudo-random sequence is used as a reference, within a predetermined displacement range. Within the range, the damaged double-layer pseudo-random sequence is shifted left and right; at each shift position, the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence is calculated, and within each effective overlap region, the corresponding damaged double-layer pseudo-random sequence is calculated bit by bit. Compared with known two-layer pseudo-random sequences The correlation values ​​between them, the specific steps are as follows:

[0092] (3.4.1) When sliding each damaged double-layer pseudo-random sequence with each known double-layer pseudo-random sequence, the two sequences are aligned at the left end, and the damaged double-layer pseudo-random sequence is shifted to the left and right relative to the known double-layer pseudo-random sequence, respectively. One location;

[0093] (3.4.2) For each displacement Calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence. ;when At that time, the effective overlap length ,when At that time, the effective overlap length ;

[0094] (3.4.3) For each known double-layer pseudo-random sequence and each displacement, calculate the correlation value between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence bit by bit within each corresponding overlapping region. Its calculation formula is expressed as:

[0095] ,

[0096] in, Is with the first A known two-layer pseudo-random sequence in terms of displacement Calculated relevant values, , and These are displacements The corresponding damaged upper-layer pseudo-random sequences and lower-layer pseudo-random sequences, and These are displacements Given the corresponding known upper-level and lower-level pseudo-random sequences; using the formula above, obtain the correlation values ​​for each displacement in sequence, and finally obtain a total of [values] on each known double-level pseudo-random sequence. One relevant value.

[0097] In the above method, preferably, in step (4) of the present invention, for the sequencing reads that have been successfully identified, the reads are placed at the starting position on the corresponding double-layer pseudo-random sequence fragment according to the positioning result, and a majority voting decision algorithm is used to generate a consistent base sequence; the consistent base sequence is converted into a damaged data bit sequence, and after being decoded by sparse code, it is input into a decoder for error correction to restore the original user data. The specific process is as follows:

[0098] (4.1) Compare the sliding correlation value between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to obtain the cross-correlation peak value. and the corresponding peak position; It refers to the first The correlation value is calculated from a known two-layer pseudo-random sequence.

[0099] (4.2) Based on the preset cross-correlation peak threshold, select sequencing reads that meet the threshold, and determine that sequencing reads with cross-correlation peaks greater than or equal to the threshold are successfully identified;

[0100] (4.3) Since there are multiple copies of the base sequence at the same position, the successfully identified sequencing reads are judged by a base-by-base majority vote to generate a consistent base sequence;

[0101] (4.4) Each consistent base sequence is converted into a damaged data bit sequence, and after sparse code decoding, it is input into the decoder to correct residual errors and recover the original user data.

[0102] In the above method, preferably, step (4.3) of the present invention involves performing a base-by-base majority voting decision on the successfully identified sequencing reads since there are multiple copies of the base sequence at the same position, to generate a consistent base sequence. The specific steps are as follows:

[0103] (4.3.1) For lengths of Each base sequence is used to construct a separate base sequence. The counting buffer;

[0104] (4.3.2) Based on the relevant peak positions, align the successfully identified sequencing reads to the starting position of the corresponding known pseudo-random sequence; within each known double-layer pseudo-random sequence, based on the base type at each position of the sequencing read, accumulate the base counts at the corresponding positions in the counting buffer to obtain the statistical counts of the four bases {A,T,G,C} at all positions in each counting buffer;

[0105] (4.3.3) Perform a base-by-base majority vote for each counting buffer, generating a buffer of length [length missing]. The consistent base sequence; the specific operation process of the majority voting decision is as follows: the first base sequence in any counting buffer is... The base that appears most frequently at a given position is determined as the final base at that position. If no base is counted at that position or there is a tie for the most frequent base, the base at that position is marked with "X" to indicate an erasure error, and a line of length is ultimately generated. The consistent base sequence.

[0106] In the above method, preferably, step (4.4) of the present invention converts each consistent base sequence into a damaged data bit sequence, which is then decoded using sparse codes and input into a decoder to correct residual errors and recover the original user data.

[0107] (4.4.1) Each strip of length is After the base sequence of the base is concatenated according to the codeword, each concatenated base sequence is demapped into a double-layer data bit sequence according to the mapping rule of "base-bit" {A→(00), T→(01), G→(10), C→(11)}.

[0108] (4.4.2) Perform a bitwise XOR operation between the demapped double-layer data bit sequence and the known double-layer pseudo-random sequence to obtain the damaged sparse codeword sequence;

[0109] (4.4.3) Desparse and deinterleave the damaged sparse codeword sequence to recover the damaged codeword sequence;

[0110] (4.4.4) The damaged codeword sequence is fed into the decoder for error correction. After decoding, it is XORed with the scrambling sequence to obtain the final result. By splicing together the information sequences, the original user data can be recovered.

[0111] The advantage of this invention is that sequence localization can be achieved simply by performing correlation operations at the boundaries of each pseudo-random sequence, without the need to add local labeling sequences to oligonucleotide molecules. This avoids the decline in data recovery performance caused by labeling sequence damage, sequence breakage, etc., and enables rapid data recovery even with low sequencing coverage. Specific Implementation

[0112] This invention designs a DNA storage method based on data superposition pseudo-random sequence indexing. The method involves XORing a pseudo-random sequence with a sparse coding sequence to generate addressable short oligonucleotide sequences. Then, using the superimposed pseudo-random sequence as an index, hidden pseudo-random sequences within sequencing reads are correlated with known pseudo-random sequences at the boundaries of each pseudo-random sequence using a small sliding window. This enables rapid read location and determines the position of the read within the overall pseudo-random sequence. For reads with successful correlation identification, a majority voting algorithm is used to reconstruct the sparse coding sequence, and error-free data recovery is achieved through desparse coding and iterative decoding. This method achieves sequence location through small sliding window correlation operations, eliminating the need to add independent labeling sequences to oligonucleotide molecules. This avoids the data recovery performance degradation caused by labeling sequence damage or breakage, and enables fast and reliable data readout even with low sequencing coverage. Two specific embodiments are given below to illustrate the feasibility of this invention. The purpose, features, and advantages of the invention can be further understood by referring to the given embodiments.

[0113] Example 1

[0114] The following is a specific embodiment of the present invention. This embodiment is based on the sparse low-density parity-check code (LDPC) and pseudo-random sequence superposition encoding scheme proposed in previous work, using a binary LDPC (64,800, 43,200) with a code rate of 2 / 3 to encode the original data. After sparsification and pseudo-random sequence superposition encoding, 119,922 sequences of 160 bases each are obtained, which are used to store an image of size 2,557,704 bytes. Simulations were performed after adding 20-base primers to both ends of the data DNA sequence to verify the feasibility of the readout method proposed in this invention. The simulation followed the Illumina sequencing error mode, with the insertion error rate set to 0.016%, the deletion error rate set to 0.034%, and the substitution error rate set to 0.12%.

[0115] The data to be stored is segmented and scrambled. Oligonucleotide sequences are constructed using a method that combines LDPC codes with pseudo-random sequences. Specifically:

[0116] (1.1) Divide the 20,461,632 bits of data to be stored into 474 segments, each segment being 43,168 bits in length; according to the preset 160 base length and encoding method, superimpose each 43,168-bit segment with a scrambling sequence of equal length; after superposition, add 32 "0" bits to the end of each segment, thus obtaining a 43,200-bit data sequence for each segment;

[0117] (1.2) For each data sequence of length 43,200 bits, block error correction codes are used. Encode the data to generate a 64,800-bit encoded bit sequence.

[0118] (1.3) Interleave the first 64,768 bits of codeword sequence of each segment after encoding, and then sparsify it in the manner of 4 bits to 5 bits. The sparsified complete sequence is divided into 119,922 sequence segments of 320 bits each.

[0119] (1.4) XOR each of the sparsified sequence fragments with the corresponding pseudo-random sequence fragments one by one, and according to the mapping rules of bit pairs and bases {00→A, 01→T, 10→G, 11→C}, map and encode each bit sequence obtained after XORing into a DNA sequence of 160 bases in length.

[0120] The process of determining the two-layer pseudo-random sequence segments is as follows: Based on the initial state and the generator polynomial, a 3rd-order and a 23rd-order longest linear feedback shift register sequence are generated respectively. The period of the two longest linear feedback shift register sequences is extended to a length of 58,720,249 bits, and the first 38,375,040 bits are truncated and divided into 119,922 pseudo-random sequence segments of 320 bits each.

[0121] (1.5) Add primer sequences of 20 bases in length to both ends of each data DNA sequence to construct 119,922 oligonucleotide sequences of 200 bases in length for each data portion.

[0122] Example 1 simulates an Illumina sequencing error mode on a 200-base oligonucleotide sequence and utilizes a superimposed pseudo-random sequence as an index to achieve rapid read localization.

[0123] (2.1) Simulate the oligonucleotide sequence according to the preset error rate to obtain the simulated sequencing reads; based on the edit distance between the reads and the paired primers, screen the sequencing reads and extract the data portion located between the two primers;

[0124] (2.2) According to the base-bit mapping rule {A→(00), T→(01), G→(10), C→(11)}, each sequencing read obtained from the simulation is demapped to a length range of... A double-layered damaged pseudo-random sequence of bits;

[0125] (2.3) Convert the bits "0" in each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to "-1", while keeping the bits "1" unchanged;

[0126] (2.4) Slide each damaged double-layer pseudo-random sequence sequentially over each known double-layer pseudo-random sequence. When sliding over each known double-layer pseudo-random sequence, use the known double-layer pseudo-random sequence as a reference and move within a predetermined displacement range. Within, the double-layer damaged bit sequence is shifted to the left and right relative to the double-layer known pseudo-random sequence, respectively. One location;

[0127] (2.5) For each displacement position, calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence. Then the overlap length ,like Then the overlap length ;

[0128] (2.6) Calculate the correlation value between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence bit by bit within the effective overlapping region, and finally obtain a total of 11 correlation values ​​for each double-layer pseudo-random sequence.

[0129] (2.7) Compare the correlation values ​​calculated at each position on each known double-layer pseudo-random sequence, and determine the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment based on the maximum correlation peak.

[0130] like Figure 7 As shown, the sliding correlation values ​​of the simulated sequencing reads at the correct and incorrect positions can be well distinguished, which verifies that using superimposed pseudo-random sequences as indexes and performing small sliding window correlations at the boundaries of each pseudo-random sequence can achieve rapid localization of sequencing reads.

[0131] For successfully identified sequencing reads, a majority voting algorithm is used to generate a consistent base sequence, which is then input into the decoder to correct remaining errors and restore the original data. The specific steps are as follows:

[0132] (3.1) Compare the damaged double-layer pseudo-random sequence with the sliding correlation value of each known double-layer pseudo-random sequence to obtain the cross-correlation peak value. and the corresponding peak position;

[0133] (3.2) Based on the preset cross-correlation peak threshold, the sequencing reads are screened, and reads with cross-correlation peak values ​​greater than or equal to the threshold are judged as successfully identified;

[0134] like Figure 8 As shown, the base error rate distribution during the majority voting decision process is statistically compared under different cross-correlation peak thresholds. The overall trend indicates that the overall error rate of read segments decreases as the threshold gradually increases; however, if the threshold is set too high, some read segments will be discarded, leading to a decrease in effective utilization. By comparing the error rate curves under different thresholds, it can be found that the overall error rate of the consensus sequence is lowest when the threshold is set to 96. Therefore, based on the criterion of the lowest consensus sequence error rate, the cross-correlation peak threshold is determined to be 96.

[0135] like Figure 9 As shown, under the condition of a cross-correlation peak threshold of 96, the statistical results showed that the proportion of sequencing reads with successful correlation identification was 95.57%, while the proportion of reads with failed correlation identification was only 4.43%. This indicates that the vast majority of sequencing reads can be effectively utilized through correlation identification, verifying that the method of the present invention has a high read utilization rate.

[0136] Figure 10 and Figure 11The overall error rate and distribution of insertion and deletion errors for successfully identified and unidentified related segments are presented. It can be seen that the overall error rate for successfully identified related segments is low, with replacement errors being the main type of error, and insertion and deletion errors primarily distributed at the ends of the segments. In contrast, unidentified related segments show a significant increase in the proportion of insertion and deletion errors, with these errors mainly distributed in the middle of the segments.

[0137] (3.3) Based on the relevant peak positions, align the sequencing reads that meet the threshold for successful identification to the starting position of the corresponding pseudo-random sequence; within each 320-bit pseudo-random sequence, based on the base type at each position of the read, in The base counts at corresponding positions in the counting buffer of length are accumulated to obtain the statistical count of the four bases at all positions in each counting buffer;

[0138] (3.4) Perform a base-by-base majority voting decision for each counting buffer to generate a consistent base sequence of length 160 bases; the specific operation of the majority voting decision is as follows: take the first base from any counting buffer... The base that appears most frequently at a given position is determined as the final base at that position. If there is no base at that position or there is a tie for the most frequent base, the base at that position is marked as "X" to indicate an erasure error. Finally, a consistent base sequence of length 160 is generated.

[0139] (3.5) The 253 identical base sequences, each with a length of 160 bases, are spliced ​​together into a codeword sequence. After sparse decoding, the codeword is input into the decoder to correct residual errors and restore the original user data.

[0140] Figure 12 The study demonstrates the variations in codeword substitution and erasure error rates before decoding under different sequencing coverage levels. Simulation results show that the erasure error rate is higher at low coverage, mainly because some codewords cannot be accurately identified due to insufficient coverage. As sequencing coverage increases, the number of effective reads for data recovery continuously increases, and the substitution and erasure error rates of codeword sequences gradually decrease, providing more reliable and accurate information for subsequent decoding.

[0141] Figure 13Data recovery performance under different sequencing coverage was statistically analyzed. The results show that the data recovery rate increases significantly with increasing coverage. At low coverage, the number of reads participating in majority voting is insufficient, resulting in limited error correction capability. With increasing coverage, the accuracy of the consensus sequence generated by majority voting increases, providing high-quality input information to the LDPC decoder, thus leading to a gradual increase in the recovery rate. With a simulated error rate of 0.17%, error-free data recovery can be achieved at 2.0× sequencing coverage, validating that the proposed method can achieve reliable data readout under low coverage conditions.

[0142] Example 2

[0143] Another specific embodiment of the present invention is given below. This embodiment uses the same superposition encoding scheme as in Embodiment 1 to encode the original data. After sparsification and pseudo-random sequence superposition encoding, 64,827 sequences of 110 bases each are obtained, which are used to store an image of size 791,595 bytes. Simulations were performed after adding 20-base primers to both ends of the data DNA sequence to verify the feasibility of the readout method proposed in this invention. The simulation followed the IonTorrent sequencing error mode, with the insertion error rate set to 0.34%, the deletion error rate set to 0.18%, and the substitution error rate set to 0.07%.

[0144] The data to be stored is segmented and scrambled. Oligonucleotide sequences are constructed using a method that combines LDPC codes with pseudo-random sequences. Specifically:

[0145] (1.1) Divide the 6,332,760 bits of data to be stored into 147 segments, each segment being 43,080 bits in length; according to the preset 110 base length and encoding method, superimpose the 43,080 bits of each segment with a scrambling sequence of equal length; after superposition, add 120 "0" bits to the end of each segment, thus obtaining a 43,200-bit data sequence for each segment;

[0146] (1.2) For each data sequence of length 43,200 bits, binary LDPC is used. Encode the data to generate a 64,800-bit encoded bit sequence.

[0147] (1.3) Interleave the first 64,680 bits of codeword sequence of each segment after encoding, and then sparsify it in the manner of 4 bits to 6 bits. The sparsified complete sequence is divided into 64,827 sequence segments of 220 bits each.

[0148] (1.4) XOR each of the sparsified sequence fragments with the corresponding pseudo-random sequence fragments one by one, and according to the mapping rules of bit pairs and bases {00→A, 01→T, 10→G, 11→C}, map and encode each bit sequence obtained after XORing into a DNA sequence of length 110 bases.

[0149] The process of determining the two-layer pseudo-random sequence segments is as follows: Based on the initial state and the generator polynomial, a 7th-order, an 8th-order, and a 9th-order longest linear feedback shift register sequence are generated respectively. The period of the three longest linear feedback shift register sequences is extended to a length of 16,548,735 bits, and the first 14,261,940 bits are truncated and divided into 64,827 pseudo-random sequence segments with a length of 220 bits.

[0150] (1.5) Add primer sequences of 20 bases in length to both ends of each data DNA sequence to construct 64,827 oligonucleotide sequences of 150 bases in length for each data portion.

[0151] Example 2 simulates the IonTorrent sequencing error mode on a 150-base oligonucleotide sequence and utilizes superimposed pseudo-random sequences as an index to achieve rapid read localization.

[0152] (2.1) Simulate the oligonucleotide sequence according to the preset error rate to obtain the simulated sequencing reads; based on the edit distance between the reads and the paired primers, screen the sequencing reads and extract the data portion located between the two primers;

[0153] (2.2) According to the base-bit mapping rule {A→(00), T→(01), G→(10), C→(11)}, each sequencing read obtained from the simulation is demapped to a length range of... A double-layered damaged pseudo-random sequence of bits;

[0154] (2.3) Convert the bits "0" in each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to "-1", while keeping the bits "1" unchanged;

[0155] (2.4) Slide each damaged double-layer pseudo-random sequence sequentially over each known double-layer pseudo-random sequence. When sliding over each known double-layer pseudo-random sequence, use the known double-layer pseudo-random sequence as a reference and move within a predetermined displacement range. Within, the double-layer damaged bit sequence is shifted to the left and right relative to the double-layer known pseudo-random sequence, respectively. One location;

[0156] (2.5) For each displacement position, calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence. Then the overlap length ,like Then the overlap length ;

[0157] (2.6) Calculate the correlation value between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence bit by bit within the effective overlapping region, and finally obtain a total of 11 correlation values ​​on each double-layer pseudo-random sequence;

[0158] (2.7) Compare the correlation values ​​calculated at each position on each known double-layer pseudo-random sequence, and determine the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment based on the maximum correlation peak.

[0159] like Figure 14 As shown, the sliding correlation values ​​of the simulated sequencing reads at correct and incorrect positions can be well distinguished, indicating that even in the presence of serious insertion / deletion errors, the sliding correlation method proposed in this invention, which uses superimposed pseudo-random sequences as indexes, can still effectively achieve rapid and accurate localization of sequencing reads.

[0160] For successfully identified sequencing reads, a majority voting algorithm is used to generate a consistent base sequence, which is then input into the decoder to correct remaining errors and restore the original data. The specific steps are as follows:

[0161] (3.1) Compare the sliding correlation values ​​between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to obtain the cross-correlation peak. and the corresponding peak position;

[0162] (3.2) Based on the preset cross-correlation peak threshold, the sequencing reads are screened, and reads with cross-correlation peak values ​​greater than or equal to the threshold are judged as successfully identified;

[0163] like Figure 15 As shown, the distribution of base error rates in the majority voting process is statistically compared under different cross-correlation peak thresholds. By comparing the consensus data sequence error rates under different thresholds, it can be found that the overall error rate of the consensus sequence is lowest when the threshold is set to 90. Therefore, the cross-correlation peak threshold is set to 90.

[0164] like Figure 16As shown, when the cross-correlation peak threshold is set to 90, the proportion of sequencing reads with successful correlation identification is 71.21%, while the proportion of reads with failed correlation identification is only 28.79%. The results indicate that even in the presence of severe insertion / deletion errors, this method can still effectively identify and utilize the vast majority of sequencing reads, demonstrating strong robustness.

[0165] Depend on Figure 17 and Figure 18 It can be seen that under high error rate conditions, the overall error rate of related successfully identified read segments is lower than that of related failed read segments, and the main error type is replacement error, with insertion and deletion errors mainly distributed at both ends of the read segment.

[0166] (3.3) Based on the relevant peak positions, align the sequencing reads that meet the threshold for successful identification to the starting position of the corresponding pseudo-random sequence; within each 220-bit pseudo-random sequence, align the reads according to the base types at each position. The base counts at corresponding positions in the counting buffer of length are accumulated to obtain the statistical count of the four bases at all positions in each counting buffer;

[0167] (3.4) Perform a base-by-base majority vote for each counting buffer to generate a consistent base sequence of length 110 bases; the specific operation of the majority vote is as follows: take the first base from any counting buffer... The base that appears most frequently at a given position is determined as the final base at that position. If there is no base at that position or there is a tie for the most frequent base, the base at that position is marked as "X" to indicate an erasure error. Finally, a consistent base sequence of length 110 is generated.

[0168] (3.5) The 441 identical base sequences, each with a length of 110 bases, are spliced ​​together into a codeword sequence. After sparse decoding, the codeword is input into the decoder to correct residual errors and restore the original user data.

[0169] Figure 19 Simulation results show that as sequencing coverage increases, the number of effective reads for data recovery continuously increases, while the substitution and erasure error rates of codeword sequences gradually decrease, providing more reliable and accurate information for subsequent decoding. Figure 20 As can be seen, the data recovery rate increases significantly with increasing coverage. With a simulation error rate of 0.6%, only 3.4 × sequencing coverage is required to achieve error-free data recovery, verifying that the proposed method can still achieve rapid data readout at low coverage even in scenarios with high insertion / deletion errors.

[0170] Those skilled in the art will understand that the accompanying drawings are merely schematic diagrams of a preferred embodiment, and the sequence numbers of the embodiments described above are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0171] Although the functions and working processes of the present invention have been described above in conjunction with the accompanying drawings and embodiments, the present invention is not limited to the specific functions and working processes described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of the present invention without departing from the spirit and scope of the claims, and all of these are within the protection scope of the present invention.

Claims

1. A DNA storage method based on data overlay pseudo-random sequence indexing, characterized in that, The method includes the following steps: (1) The user data to be stored is scrambled and encoded using global block error correction code to obtain the encoded data bit sequence; the data bit sequence is interleaved and sparsified and then segmented; the segmented double-layer data bit sequence is XORed one by one with a known double-layer pseudo-random sequence fragment of equal length; the XOR result after segmentation is transcoded according to the bit-to-base mapping rule to obtain the segmented data DNA sequence; primer sequences are added to both ends of each data DNA sequence to form an oligonucleotide sequence; (2) All oligonucleotide sequences were chemically synthesized, and the synthesized oligonucleotide sequences were library constructed and second-generation high-throughput sequencing was performed during reading to obtain sequencing reads; (3) Identify the paired primer sequences of each sequencing read and extract the valid data portion of each sequencing read, and demap them into damaged double-layer pseudo-random sequences according to the "base-bit" mapping rule; each damaged double-layer pseudo-random sequence is correlated with a small sliding window at the boundaries of all known double-layer pseudo-random sequences, and the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment are determined according to the correlation peak. (4) For the sequencing reads that have been successfully identified, place them at the starting position on the corresponding double-layer pseudo-random sequence fragment according to the positioning result, and generate a consistent base sequence using the majority voting decision algorithm; convert the consistent base sequence into a damaged data bit sequence, and input it into the decoder for error correction after sparse code decoding to restore the original user data.

2. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 1, characterized in that, The specific process of step (1) is as follows: (1.1) Divide the user data to be stored into segments of length [length missing]. of Short segments, each superimposed with the same scrambling sequence; among which For the number of codewords, And it is an integer; (1.2) For each segment of length... The superimposed sequences are respectively processed using block error correction codes. Encode to generate a length of The encoded data bit sequence; where The length of the encoded codeword. The length of the information bits; (1.3) After interleaving each segment of coded data bit sequence, according to... Bit to Sparsification is performed using bits; After sparsification, the length is... Each complete sequence of bits is divided into... A length of A two-layer data bit sequence segment; where , It is a positive integer. This indicates the rounding up operation; (1.4) XOR each double-layer data bit sequence segment with its corresponding double-layer pseudo-random sequence segment one by one. Following the bit-to-base mapping rule {00→A, 01→T, 10→G, 11→C}, transcode each bit sequence obtained after XORing into a sequence of length [length missing]. DNA sequence data; The process for determining the two-layer pseudo-random sequence segment involves: generating longest linear feedback shift register sequences of different orders based on the initial state and the generator polynomial; periodically extending each generated sequence of different orders to the same length and then performing a bit-by-bit XOR operation; and truncating the XOR result before... bits, and divided into A length of A two-layer pseudo-random sequence fragment of bits; (1.5) Add a length of [length missing] to both ends of each DNA sequence. Primer sequences, construct The length of the data segment is Oligonucleotide sequences of bases.

3. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 1, characterized in that, The specific process of step (3) is as follows: (3.1) Based on the edit distance between each sequencing read and the primer sequences at both ends, select sequencing reads that meet the edit distance threshold, and extract the data portion located between the primer sequences at both ends respectively; (3.2) According to the "base-bit" mapping rule {A→(00), T→(01), G→(10), C→(11)}, each selected sequencing read is... Demap each to a length of Bit-damaged two-layer pseudo-random sequence , The upper-level pseudo-random sequence is damaged. This is a damaged lower-level pseudo-random sequence; (3.3) Convert the bits "0" in each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to "-1", while leaving the bits "1" unchanged; (3.4) Slide each damaged double-layer pseudo-random sequence sequentially over each known double-layer pseudo-random sequence; When sliding along each known two-layer pseudo-random sequence, using each known two-layer pseudo-random sequence as a reference, within a predetermined displacement range... Within, the damaged double-layer pseudo-random sequence is shifted left and right; At each displacement position, calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence, and calculate the corresponding damaged double-layer pseudo-random sequence bit by bit within each effective overlap region. Compared with known two-layer pseudo-random sequences The correlation values ​​between them Given a known upper-level pseudo-random sequence, The lower-level pseudo-random sequence is known; (3.5) Compare the correlation values ​​calculated at each position on each known double-layer pseudo-random sequence, and determine the double-layer pseudo-random sequence fragment corresponding to each sequencing read and the starting position of each sequencing read on the corresponding double-layer pseudo-random sequence fragment based on the maximum correlation peak.

4. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 3, characterized in that, The specific process of step (3.4) is as follows: (3.4.1) When sliding each damaged double-layer pseudo-random sequence with each known double-layer pseudo-random sequence, the two sequences are aligned at the left end, and the damaged double-layer pseudo-random sequence is shifted to the left and right relative to the known double-layer pseudo-random sequence, respectively. One location; (3.4.2) For each displacement Calculate the effective overlap length between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence. ;when At that time, the effective overlap length ,when At that time, the effective overlap length ; (3.4.3) For each known double-layer pseudo-random sequence and each displacement, calculate the correlation value between the damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence bit by bit within each corresponding overlapping region. Its calculation formula is expressed as: , in, Is with the first A known two-layer pseudo-random sequence in terms of displacement Calculated relevant values, , and These are displacements The corresponding damaged upper-layer pseudo-random sequences and lower-layer pseudo-random sequences, and These are displacements Given the corresponding known upper-level and lower-level pseudo-random sequences; using the formula above, obtain the correlation values ​​for each displacement in sequence, and finally obtain a total of [values] on each known double-level pseudo-random sequence. One relevant value.

5. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 1, characterized in that, The specific process of step (4) is as follows: (4.1) Compare the sliding correlation value between each damaged double-layer pseudo-random sequence and each known double-layer pseudo-random sequence to obtain the cross-correlation peak value. and the corresponding peak position; where It refers to the first The correlation value is calculated from a known two-layer pseudo-random sequence. (4.2) Based on the preset cross-correlation peak threshold, select sequencing reads that meet the threshold, and determine that sequencing reads with cross-correlation peaks greater than or equal to the threshold are successfully identified; (4.3) Perform base-by-base majority voting on the successfully identified sequencing reads to generate a consistent base sequence; (4.4) Each consistent base sequence is converted into a damaged data bit sequence, and after sparse code decoding, it is input into the decoder to correct residual errors and recover the original user data.

6. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 5, characterized in that, The specific process of step (4.3) is as follows: (4.3.1) For lengths of Each base sequence is used to construct a separate base sequence. The counting buffer; (4.3.2) Based on the relevant peak positions, align the successfully identified sequencing reads to the starting position of the corresponding known pseudo-random sequence; within each known double-layer pseudo-random sequence, based on the base type at each position of the sequencing read, accumulate the base counts at the corresponding positions in the counting buffer to obtain the statistical counts of the four bases {A,T,G,C} at all positions in each counting buffer; (4.3.3) Perform a base-by-base majority vote for each counting buffer, generating a buffer of length [length missing]. The consistent base sequence.

7. The DNA storage method based on data superposition pseudo-random sequence indexing according to claim 5, characterized in that, The specific process of step (4.4) is as follows: (4.4.1) Each strip of length is After the base sequence of the base is concatenated according to the codeword, each concatenated base sequence is demapped into a double-layer data bit sequence according to the mapping rule of "base-bit" {A→(00), T→(01), G→(10), C→(11)}. (4.4.2) Perform a bitwise XOR operation between the demapped double-layer data bit sequence and the known double-layer pseudo-random sequence to obtain the damaged sparse codeword sequence; (4.4.3) Desparse and deinterleave the damaged sparse codeword sequence to recover the damaged codeword sequence; (4.4.4) The damaged codeword sequence is fed into the decoder for error correction. After decoding, it is XORed with the scrambling sequence to obtain the final result. By splicing together the information sequences, the original user data can be recovered.