High capacity DNA data storage with variable-length Oligonucleotides using repeat accumulate code and hybrid mapping
een praktisch DNA data storage systeem met hoge capaciteit
We zijn begonnen met het construeren van een architectuur voor het opslaan van gegevens en het ophalen van gegevens uit een DNA-gebaseerde opslag (Fig. 1, onder A)). De gebruikersgegevens werden eerst gesegmenteerd in 11.400 binaire gebruikerspakketten met elke pakketlengte van 266 bits. Om fouten te corrigeren die zich voordoen in elk stadium van de DNA-opslagprocessen, waaronder synthese, versterking, opslag en monstervoorbereiding voor sequencing, hebben we een RA-codering toegepast op binaire gebruikerspakketten waar 5% redundante/pariteit pakketten werden gegenereerd. Met elk van de 12.000 binaire pakketten, werden 14 bits toegevoegd voor indexering om de stochastische oligos te bestellen en 20 bits werden toegevoegd voor Cyclic Redundancy Check (CRC) om de interne fouten in elk pakket te detecteren. Als gevolg hiervan werd het totale aantal bits per pakket 300 bits (zie bijkomend bestand 1: Figuur S4). Daarna hebben we alle binaire sequenties in DNA-sequenties in kaart gebracht via het voorgestelde hybride schema. Toen werden de opeenvolgingen van DNA gestuurd om Bioscience voor oligossynthese te verdraaien. Na het ontvangen van de gesynthetiseerde oligospool, versterkten wij het gebruikend polymerasekettingreactie (PCR) alvorens de steekproeven naar NovogeneAIT te verzenden voor het rangschikken gebruikend Illumina HiSeq. In de laatste fase hebben we de sequentiegegevens geanalyseerd en gedecodeerd om de DNA-records terug te zetten naar digitale binaire gegevens. We hebben eerst de millions sequence reads van het sequencing resultaat naar beneden gesampled en het omgekeerde van RA-codering en mapping uitgevoerd om de originele gebruikersgegevens zonder fouten te reconstrueren, waardoor de haalbaarheid van onze methode werd gevalideerd.
naast de volledige recuperatie van gegevens met behulp van de sequencing resultaten, hebben we ook kwantitatief het voorgestelde DNA-gebaseerde opslagschema geanalyseerd en vergeleken met andere state-of-the-art schema ‘ s, door te verwijzen naar een eerdere vergelijkingstabel (Fig. 1, onder C)). De gedetailleerde definitie van prestatiemetingen in de tabel wordt beschreven in aanvullend bestand 1: sectie S7. In de tabel hebben we alleen vergeleken met de schema ‘ s die werden ontworpen en getest met het uitgangspunt van het oligo pool-opslagformaat waar de single-stranded korte oligos met een lengte van ongeveer 200nt werden gesynthetiseerd. Merk op dat met de gelijkwaardige aanname van het opslaan van veel langere DNA-strengen zoals, dat wil zeggen, 1000bp, het voorgestelde coderingsschema haalbaar blijft, en de netto informatiedichtheid zal toenemen met de lengte, het bereiken van een hogere dichtheid dan , dat wil zeggen, 1,84 bits/base over 1,74 bits/base (zie aanvullend dossier 1: sectie S3).
De hoge netto informatiedichtheid van 1.67 bits / nt bereikt door het voorgestelde DNA-gebaseerde opslagschema (Fig. 1 (D)) is voornamelijk te wijten aan de volgende twee technieken die we hebben gebruikt. Ten eerste vertoont het voorgestelde hybride karteringsschema 1,98 Bits/nt karteringspotentieel met een kleine kloof van 1% ten opzichte van de theoretische bovengrens van 2 bits/nt. Ten tweede heeft de geoptimaliseerde Ra-code voor foutcontrole een kleine redundantie van 1,05. Samen met de 14 beetjes die en 20 beetjes CRC indexeren, verkrijgt de regeling 1,67 beetjes/nt netto informatiedichtheid, die 91% van de Shannon capaciteit (1,83 beetjes/nt met 0 opleveren.5% uitval), dat is 6% meer dan de laatste hoogste gemeld in (aanvullend bestand 1: sectie S3). Theoretisch, vergeleken met, de toename van onze informatiedichtheid is het gecombineerde resultaat van de iets langere variabele lengte DNA oligos (151nt-159nt versus 152nt, exclusief primer bindingsplaatsen), de minder fout controle redundantie (1,05 versus 1,07), en de kortere indexering (14bits versus 32bits). De lengte van DNA-oligos wordt uitvoerig ontworpen om volledig gebruik te maken van de huidige wijd beschikbare DNA-synthesetechnieken (TWIST Bioscience, US), die efficiënt 200nt lange oligos kunnen samenstellen. Het geoptimaliseerde Ra-codeontwerp geeft licht verminderde redundantie van de foutcontrole met de gelijkwaardige aanname van het aanpakken van 1,3% praktische uitval als, terwijl het volledige herstel met 10x dekking (10,5 x in ) aangeeft dat de fout veerkracht wordt gehandhaafd. Het meest duidelijke verschil ontstaat in de indexering, waarbij we 14 bits alleen gebruiken voor het aangeven van de volgorde van gecodeerde 12000 oligos, terwijl 32 bits gebruikt om de zaden te vertegenwoordigen die nodig zijn voor Luby-transformatie die de basis van Fontein code stelt, wat resulteert in redundante indexering bits.
om verder te controleren of de hoge capaciteitsprestaties van het voorgestelde coderingsschema goed behouden blijven bij toenemende gegevensgrootte (schaalbaarheid), schatten we de netto informatiedichtheid voor het coderen van gegevensgrootte met hogere magnitudes in silico, d.w.z. van 2MB tot 2000MB. De geschatte dichtheid neemt licht af met de exponentiële toename van de gegevensgrootte als gevolg van de toename van de indexering lengte die nodig is voor het opnemen van Grotere gegevensgrootte (extra bestand 1: sectie S3 en Fig. 1, onder E)). Een dichtheid van 1,66 bits / nt wordt verkregen voor het opslaan van 2MB brongegevens, die nog steeds 6% hoger is dan . Bovendien zijn zowel de RA-code als de hybride karteringsstrategie, die uit het voorgestelde coderingsschema bestaat, weinig complex en in de praktijk efficiënt te implementeren. In het bijzonder voorkomt het gebruik van RA-code de mogelijke decoderingsfout (door het verlies van initiële ingangen voor het starten van decodering in het screeningsproces) en pakt redundantie aan die zich kan voordoen in DNA-fontein, en de hybride mapping bereikt een zeer hoog mappingpotentieel dat concurrerend is met DNA-fontein, terwijl hoge complexiteit wordt vermeden die in de conventionele beperkte blokcodes aanwezig is.
bovendien schatten we de fysische dichtheid die het voorgestelde schema zou kunnen vertonen. Door verdunning experimenten, auteurs in waargenomen 4% uitval tarief met een steekproef van 10PG DNA-opslag, die bijna hun Decoder limiet benaderd (dat was vooraf bepaald door de code redundantie). De RA-code die in onze regeling werd gebruikt, was optimaal ontworpen met een niveau van redundantie onder dezelfde aanname van uitvalpercentage als in . We hebben ook aangetoond dat theoretisch onze code kan tolereren tot 4.75% dropout rate (extra bestand 1: Figuur S4), die boven de 4% dropout rate waargenomen in het sequencing 10PG sample. Met vergelijkbare decoding limiet, zou ons voorgestelde schema waarschijnlijk hetzelfde werken als DNA fontein in de low moleculaire experimenten (bijvoorbeeld met 10PG monster) als gevolg van het gebruik van dezelfde experiment pijpleidingen, protocollen en normen. Met andere woorden, het codeontwerp in de eerste fase maakt het mogelijk dat het voorgestelde systeem gegevens kan herstellen van foutgevoelige omstandigheden in de verdunningsexperimenten die vergelijkbaar zijn met DNA-fontein. Onder de aanname van 13 1300 moleculen per oligo in gemiddelde, sequentiediepte van 511x, en equivalente pijpleidingen, protocollen en normen als het 10PG-verdunningsexperiment in DNA-fontein, kunnen we computationeel schatten dat ons schema een fysieke dichtheid van 239 PB/g \(\left (\frac {266*11400/8 \ text {byte}}{1300*11400*1.0688*10^{-19}\tekst {gram}} \ right)\). Er is echter een rigoureus experiment nodig om deze rekenkundig geschatte fysische dichtheid te verifiëren.
Ra code design and hybrid mapping scheme for DNA storage
We ontwierpen een coderingsmethode die oligo-level repeat accumulate (RA) code en een efficiënt hybride mapping scheme omvat.
Ra-codeontwerp
in traditionele communicatiesystemen wordt RA-code gebruikt op bit-niveau, waar redundante bits worden gegenereerd om substitutiefouten te beperken. Nochtans, is de opslag van DNA naar voren gebogen aan niet alleen substitutiefouten maar ook aan toevoeging en schrappingsfouten. Daarom, in plaats van de conventionele bit-level RA-codering, ontwierpen we een packet level RA-codering voor DNA-opslag, zodat een pakket dat onderhevig is aan invoeging, verwijdering of substitutiefouten kan worden hersteld via RA-decoder. Zoals eerder beschreven, hebben we een groot digitaal bestand gesegmenteerd in kleinere pakketten van dezelfde grootte. Deze pakketten werden beschouwd als de bronpakketten die werden gebruikt om de redundante of pariteitspakketten te genereren met behulp van systematische Ra-code Fig. 2, onder A). Merk op dat elk pakket werd opgenomen met CRC om fouten in het pakket te detecteren. Voor de pakketten die de CRC-test in de decoder hebben doorstaan, beschouwden we ze als correct hersteld, terwijl de andere werden beschouwd als verwijderd of gewist. Zo werd het algemene codeontwerp probleem voor de DNA-opslag het codeontwerp voor het verwijderingskanaal. Om een hoge betrouwbaarheid te garanderen, werd het codeontwerp uitgevoerd door een iets hogere uitvalkans te overwegen dan de werkelijke uitvalkans. In dit werk beschouwden we de werkelijke uitval als 1,3% die werd gemeld in de fontein papier . Zo ontwierpen we de RA-code zodanig dat de resulterende code een asymptotische drempel vertoonde die hoger was dan de uitvalkans van 0,013. Na de optimalisatieprocedure (zie aanvullend dossier 1: sectie S2) hebben we een RA-code van tarief 0,95 ontworpen, die een asymptotische drempel van 0,0475 geeft. De resulterende code toont slechts een kloof van 0,0025 ten opzichte van de Shannons capaciteitslimiet (0,05). De gesimuleerde foutcorrectie van de ontworpen RA-code wordt weergegeven in aanvullend bestand 1: Figuur S4. Vanwege het tarief 0.95 Ra code, we gegenereerd 600 redundante / pariteit pakketten op basis van 11.400 bron pakketten, ontvangen 12.000 binaire pakketten in totaal na het coderen.