CN114822695B - 用于dna存储的编码方法及编码装置 - Google Patents
用于dna存储的编码方法及编码装置 Download PDFInfo
- Publication number
- CN114822695B CN114822695B CN202210441789.9A CN202210441789A CN114822695B CN 114822695 B CN114822695 B CN 114822695B CN 202210441789 A CN202210441789 A CN 202210441789A CN 114822695 B CN114822695 B CN 114822695B
- Authority
- CN
- China
- Prior art keywords
- base
- binary
- unit
- units
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000013507 mapping Methods 0.000 claims abstract description 25
- 108020004414 DNA Proteins 0.000 claims description 48
- 102000053602 DNA Human genes 0.000 claims description 12
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 230000001502 supplementing effect Effects 0.000 claims 2
- 238000012163 sequencing technique Methods 0.000 description 9
- 230000015572 biosynthetic process Effects 0.000 description 8
- 238000003786 synthesis reaction Methods 0.000 description 8
- 239000003550 marker Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- OPTASPLRGRRNAP-UHFFFAOYSA-N cytosine Chemical compound NC=1C=CNC(=O)N=1 OPTASPLRGRRNAP-UHFFFAOYSA-N 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- UYTPUPDQBNUYGX-UHFFFAOYSA-N guanine Chemical compound O=C1NC(N)=NC2=C1N=CN2 UYTPUPDQBNUYGX-UHFFFAOYSA-N 0.000 description 2
- RWQNBRDOKXIBIV-UHFFFAOYSA-N thymine Chemical compound CC1=CNC(=O)NC1=O RWQNBRDOKXIBIV-UHFFFAOYSA-N 0.000 description 2
- 229930024421 Adenine Natural products 0.000 description 1
- GFFGJBXGBJISGV-UHFFFAOYSA-N Adenine Chemical compound NC1=NC=NC2=C1N=CN2 GFFGJBXGBJISGV-UHFFFAOYSA-N 0.000 description 1
- 108091026890 Coding region Proteins 0.000 description 1
- 230000006820 DNA synthesis Effects 0.000 description 1
- 108091028043 Nucleic acid sequence Proteins 0.000 description 1
- 229960000643 adenine Drugs 0.000 description 1
- 229940104302 cytosine Drugs 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000002773 nucleotide Substances 0.000 description 1
- 125000003729 nucleotide group Chemical group 0.000 description 1
- 239000000843 powder Substances 0.000 description 1
- 229940113082 thymine Drugs 0.000 description 1
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biophysics (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本申请公开了一种用于DNA存储的编码方法及编码装置,所述方法包括:获取待编码的二进制序列,其中,二进制序列包括N个二进制单元,N为大于0的整数;根据预设的二进制单元与碱基单元的映射规则,分别获取与N个二进制单元中的各个二进制单元对应的碱基单元,其中,碱基单元中包括7个碱基,二进制单元中包括12个二进制位,碱基单元中的第一位碱基和第二位碱基为不同碱基,碱基单元中的第六位碱基和第七位碱基为不同碱基,碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,碱基单元中的GC含量大于或等于0.4且小于或等于0.6;通过将获取到的N个碱基单元进行合并,获取与二进制序列对应的碱基序列。
Description
技术领域
本申请涉及数据存储技术领域,尤其涉及一种用于DNA存储的编码方法及编码装置。
背景技术
随着全球信息的爆炸式增长,传统的将信息以二进制序列(也就是0和1组成的序列)存到硬盘、光盘、U盘等媒介的方式,由于存在使用次数有限、存储寿命短以及信息密度低等缺点,已经难以满足大规模数据存储的需求。目前,将脱氧核糖核酸(deoxyribonucleic acid,DNA)作为存储媒介已经成为一种趋势。
但是,针对如何提高在将信息编码存入碱基序列后,碱基序列在合成、测序时的准确率,还没有比较完善的解决方案。
发明内容
本申请公开一种用于DNA存储的编码方法及编码装置,以解决如何提高在将信息编码存入碱基序列后,碱基序列在合成、测序时的准确率的问题。
为了解决上述问题,本申请采用下述技术方案:
第一方面,本申请实施例提供了一种用于DNA存储的编码方法,包括:获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数;根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元,其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6;通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA。
第二方面,本申请实施例提供了一种用于DNA存储的编码装置,包括:第一获取模块,用于获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数;第二获取模块,用于根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元,其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6;第三获取模块,用于通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
本申请实施例提供一种用于DNA存储的编码方法,通过获取待编码的二进制序列,根据预设的二进制单元与碱基单元的映射规则,分别获取与二进制序列包括的N个二进制单元中的各个二进制单元对应的碱基单元,通过将获取到的N个碱基单元进行合并,获取与二进制序列对应的碱基序列,能够较快的得到与二进制序列对应的碱基序列,实现对二进制序列的编码。并且,由于本申请的碱基单元中包括7个碱基,碱基单元中的第一位碱基和第二位碱基为不同碱基,碱基单元中的第六位碱基和第七位碱基为不同碱基,碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,因此,本申请能够避免碱基序列中的长重复碱基或者碱基序列中的极端GC含量在合成、测序时的影响,能够提高碱基序列在合成、测序时的准确率。
附图说明
图1为本申请实施例公开的一种用于DNA存储的编码方法的流程示意图;
图2为本申请实施例公开的一种编码及解码过程的示意图;
图3为本申请实施例公开的一种用于DNA存储的编码装置的结构示意图;
图4为本申请实施例公开的电子设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的用于DNA存储的编码方法进行详细地说明。
图1为本申请实施例公开的一种用于DNA存储的编码方法的流程示意图,该方法可以由电子设备执行,换言之,该方法可以由安装在电子设备的软件或硬件来执行,如图1所示,该方法包括如下步骤。
S120、获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数。
通过对二进制序列按照一定数量的二进制位为一组进行分割,使得二进制序列包括N个二进制单元。
需要说明的是,二进制序列的长度为8的整数倍。二进制序列是计算机上文件的底层表示,由0和1组成。任何存储在计算机上的文件都有唯一的二进制序列。
S140、根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元。
其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6。
DNA分子具有四种碱基,分别为:鸟嘌呤(Guanine,G)、胞嘧啶(Cytosine,C)、腺嘌呤(Adenine,A)和胸腺嘧啶(Thymine,T)。
由于考虑到将信息编码存入DNA序列(即碱基序列)后,碱基序列中的长重复碱基或者碱基序列中的GC含量在合成、测序时的影响,本申请中的碱基单元满足下述条件:
条件1:碱基单元中的第一位碱基和第二位碱基为不同碱基,碱基单元中的第六位碱基和第七位碱基为不同碱基,即碱基单元的边界上不能有重复碱基,以避免碱基单元组合后出现3个或3个以上连续重复碱基,例如,AATCGCT和ATTCGGA组合就会出现3个连续重复碱基AAA;
条件2:碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2个,即碱基单元中的第二位碱基、第三位碱基和第四位碱基不全部相同,碱基单元中的第三位碱基、第四位碱基和第五位碱基不全部相同,碱基单元中的第四位碱基、第五位碱基和第六位碱基不全部相同,从而避免连续重复碱基过长;
条件3:碱基单元中的G和C的含量之和大于或等于0.4且小于或等于0.6,即在一个碱基单元包括7个碱基的情况下,碱基单元中G和C的数量之和只能是3或4。
通过满足上述条件的碱基单元得到的碱基序列,能够能够减小在合成、测序时的出错率。
此外,由于碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2个,即通过本申请编码后的每一条碱基序列包含的连续重复碱基的数量最多只有2,因而更加稳健。
S160、通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA。
需要说明的是,碱基序列为通过对二进制序列进行编码得到。得到的碱基序列可以通过DNA合成技术合成DNA,从而实现将与二进制序列对应的数据信息存储到DNA中。
本申请实施例提供一种用于DNA存储的编码方法,通过获取待编码的二进制序列,根据预设的二进制单元与碱基单元的映射规则,分别获取与二进制序列包括的N个二进制单元中的各个二进制单元对应的碱基单元,通过将获取到的N个碱基单元进行合并,获取与二进制序列对应的碱基序列,能够较快的得到与二进制序列对应的碱基序列,实现对二进制序列的编码。并且,由于本申请的碱基单元中包括7个碱基,碱基单元中的第一位碱基和第二位碱基为不同碱基,碱基单元中的第六位碱基和第七位碱基为不同碱基,碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,因此,本申请能够避免碱基序列中的长重复碱基或者碱基序列中的极端GC含量在合成、测序时的影响,能够提高碱基序列在合成、测序时的准确率。
在本申请实施例中,考虑到通过对二进制序列按照一定数量的二进制位为一组进行分割,得到的最后一个二进制单元中包括的二进制位的数量不一定与其他二进制单元中包括的二进制位的数量相同,因此,在所述根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个二进制单元对应的所述碱基单元之前,还可以包括:获取第N个所述二进制单元中的二进制位的初始数量;在所述初始数量小于12的情况下,通过使用预设二进制位,将所述第N个所述二进制单元中的二进制位从所述初始数量补为12个。由于二进制序列的长度为8的整数倍,因此,第N个二进制单元中可能包括0个二进制位、8个二进制位或4个二进制位,均小于12,可以通过使用预设的二进制位,将第N个二进制单元中的二进制位的数量补为12个,其中,预设的二进制位可以为“0”。在本申请中,可以通过在第N个二进制单元的二进制位后补0,使得第N个二进制单元中包括的二进制位的数量与其他二进制单元中包括的二进制位的数量相同。
在本申请实施例中,所述获取与所述二进制序列对应的碱基序列,可以包括:获取与所述初始数量对应的标记碱基单元;在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列。示例性的,由于二进制序列的长度为8的整数倍,因此,第N个二进制单元中可能包括0个二进制位、8个二进制位或4个二进制位,在第N个二进制单元中包括0个二进制位的情况下,标记碱基单元可以为GACCGAT,在第N个二进制单元中包括8个二进制位的情况下,标记碱基单元可以为GACCTGT,在第N个二进制单元中包括4个二进制位的情况下,标记碱基单元可以为GACCTGA。通过在合并的N个碱基单元后添加与第N个二进制单元中的二进制位的初始数量对应的标记碱基单元,获取与二进制序列对应的碱基序列。
在一种实现方式中,在所述标记碱基单元中包括7个碱基的情况下,在所述在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列之后,还可以包括:获取与所述DNA对应的所述碱基序列;将所述碱基序列分割为N个所述碱基单元和所述标记碱基单元;根据所述映射规则,分别获取与N个所述碱基单元中的各个所述碱基单元对应的所述二进制单元;根据所述标记碱基单元,确定第N个所述碱基单元对应的所述二进制单元中的二进制位的初始数量;根据所述初始数量,对第N个所述碱基单元对应的所述二进制单元中的二进制位的数量进行还原,得到目标二进制单元;将前(N-1)个所述碱基单元对应的所述二进制单元和所述目标二进制单元进行合并,得到所述二进制序列。
示例性的,可以通过对需要解码的DNA溶液或者DNA干粉进行测序,得到与该DNA对应的碱基序列。
由于标记碱基单元与碱基单元均包括7个碱基,在通过对待编码的二进制序列进行编码,得到与二进制序列对应的碱基序列,再根据碱基序列合成DNA后,可以获取与DNA对应的碱基序列,通过对碱基序列按7个碱基为一组进行分割,将碱基序列分割为N个碱基单元和标记碱基单元,根据预设的二进制单元与碱基单元的映射规则,分别获取到与N个碱基单元中的各个碱基单元对应的二进制单元,根据标记碱基单元,确定第N个碱基单元对应的二进制单元中的二进制位的初始数量,并对第N个碱基单元对应的二进制单元中的二进制位的数量进行还原,即对编码过程中在第N个二进制单元中补充的预设二进制位进行删除,得到目标二进制单元,将前(N-1)个碱基单元对应的二进制单元和目标二进制单元进行合并,得到二进制序列,从而实现对碱基序列的解码,得到的二进制序列即为解码后得到的信息。
在本申请中,通过将每12个二进制位映射到7个碱基,净信息密度经过四舍五入为12/7=1.71,由于净信息密度较高,因而编码的效率也更高。
根据如下文所述的二进制单元与碱基单元的映射规则,下面以一个示例对本申请实施例的过程进行一个说明。
如图2所示,输入信息的二进制序列为“010001001000 000111001111111110111010 10100101”以12个二进制位为一组,一共分割成4组,前三组每组均有12个二进制位,最后一组只有8个二进制位,即二进制序列包括4个二进制单元,第四个二进制单元的二进制位的初始数量为8,在第四个二进制单元的8个二进制位后补4个预设二进制位(即“0”),使第四个二进制单元的长度达到12,该信息变成“010001001000 000111001111111110111010 101001010000”,然后根据如下文所述的二进制单元与碱基单元的映射规则,得到与“010001001000”对应的碱基单元为“AGCTCAG”,与“000111001111”对应的碱基单元为“ACTACGC”,与“111110111010”对应的碱基单元为“GACACCA”,与“101001010000”对应的碱基单元为“CATAGCG”,对得到的四个碱基单元进行合并,并在合并的四个碱基单元后添加与第四个二进制单元的二进制位的初始数量8对应的标记碱基单元“GACCTGT”,得到与二进制序列对应的碱基序列“AGCTCAG ACTACGC GACACCA CATAGCG GACCTGT”,实现编码过程。然后,可以将得到的编码序列按照7个碱基一组进行分割,得到4个碱基单元和标记碱基单元,根据映射规则分别获取4个碱基单元对应的4个二进制单元,并根据标记碱基单元,确定第四个二进制单元中二进制位的初始数量,并根据第四个二进制单元中二进制位的初始数量对第四个二进制单元中的二进制位的数量进行还原,然后将得到的前三个二进制单元和还原后的第四个二进制单元进行合并,得到二进制序列,实现解码过程。
另外,在另n为输入文件的二进制序列的长度,其中,n为大于0的整数,每个二进制单元的长度为12(即二进制单元包括12个二进制位),则实施编码或解码的映射所需的步数是n/12,这是关于n的线性函数,因而编码和解码都是线性复杂度。
示例性的,4096个二进制单元与碱基单元的映射规则如下所示,其中,符号“<-->”表示映射,该符号左侧是长度为12的二进制单元,右侧是长度为7的碱基单元:
本申请实施例提供的用于DNA存储的编码方法,执行主体可以为用于DNA存储的编码装置。本申请实施例中以用于DNA存储的编码装置执行用于DNA存储的编码方法为例,说明本申请实施例提供的用于DNA存储的编码装置。
图3为本申请实施例公开的一种用于DNA存储的编码装置的结构示意图。如图3所示,用于DNA存储的编码装置300包括:第一获取模块310、第二获取模块320和第三获取模块330。
在本申请中,第一获取模块310,用于获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数;第二获取模块320,用于根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元,其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6;第三获取模块330,用于通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA。
在一种实现方式中,所述第二获取模块320,还用于:在所述根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个二进制单元对应的所述碱基单元之前,获取第N个所述二进制单元中的二进制位的初始数量;在所述初始数量小于12的情况下,通过使用预设二进制位,将所述第N个所述二进制单元中的二进制位从所述初始数量补为12个。
在一种实现方式中,所述第三获取模块330获取与所述二进制序列对应的碱基序列,包括:获取与所述初始数量对应的标记碱基单元;在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列。
在一种实现方式中,在所述标记碱基单元中包括7个碱基的情况下,所述第三获取模块330,还用于:在所述在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列之后,获取与所述DNA对应的所述碱基序列;将所述碱基序列分割为N个所述碱基单元和所述标记碱基单元;根据所述映射规则,分别获取与N个所述碱基单元中的各个所述碱基单元对应的所述二进制单元;根据所述标记碱基单元,确定第N个所述碱基单元对应的所述二进制单元中的二进制位的初始数量;根据所述初始数量,对第N个所述碱基单元对应的所述二进制单元中的二进制位的数量进行还原,得到目标二进制单元;将前(N-1)个所述碱基单元对应的所述二进制单元和所述目标二进制单元进行合并,得到所述二进制序列。
本申请实施例提供的用于DNA存储的编码装置能够实现用于DNA存储的编码方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图4所示,本申请实施例还提供一种电子设备400,包括处理器401和存储器402,存储器402上存储有可在所述处理器401上运行的程序或指令,该程序或指令被处理器401执行时实现上述用于DNA存储的编码方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述用于DNA存储的编码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (6)
1.一种用于DNA存储的编码方法,其特征在于,包括:
获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数;
根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元,其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6;
通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA;
在所述根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个二进制单元对应的所述碱基单元之前,还包括:
获取第N个所述二进制单元中的二进制位的初始数量;
在所述初始数量小于12的情况下,通过使用预设二进制位,将所述第N个所述二进制单元中的二进制位从所述初始数量补为12个;
所述获取与所述二进制序列对应的碱基序列,包括:
获取与所述初始数量对应的标记碱基单元;
在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列。
2.根据权利要求1所述的编码方法,其特征在于,在所述标记碱基单元中包括7个碱基的情况下,在所述在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列之后,还包括:
获取与所述DNA对应的所述碱基序列;
将所述碱基序列分割为N个所述碱基单元和所述标记碱基单元;
根据所述映射规则,分别获取与N个所述碱基单元中的各个所述碱基单元对应的所述二进制单元;
根据所述标记碱基单元,确定第N个所述碱基单元对应的所述二进制单元中的二进制位的初始数量;
根据所述初始数量,对第N个所述碱基单元对应的所述二进制单元中的二进制位的数量进行还原,得到目标二进制单元;
将前(N-1)个所述碱基单元对应的所述二进制单元和所述目标二进制单元进行合并,得到所述二进制序列。
3.一种用于DNA存储的编码装置,其特征在于,包括:
第一获取模块,用于获取待编码的二进制序列,其中,所述二进制序列包括N个二进制单元,N为大于0的整数;
第二获取模块,用于根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个所述二进制单元对应的所述碱基单元,其中,所述碱基单元中包括7个碱基,所述二进制单元中包括12个二进制位,所述碱基单元中的第一位碱基和第二位碱基为不同碱基,所述碱基单元中的第六位碱基和第七位碱基为不同碱基,所述碱基单元中的第二位碱基起至第六位碱基中的单碱基连续重复数量不超过2,所述碱基单元中的GC含量大于或等于0.4且小于或等于0.6;
第三获取模块,用于通过将获取到的N个所述碱基单元进行合并,获取与所述二进制序列对应的碱基序列,其中,所述碱基序列用于合成存储有与所述二进制序列对应的数据信息的DNA;
所述第二获取模块,还用于:在所述根据预设的二进制单元与碱基单元的映射规则,分别获取与N个所述二进制单元中的各个二进制单元对应的所述碱基单元之前,获取第N个所述二进制单元中的二进制位的初始数量;在所述初始数量小于12的情况下,通过使用预设二进制位,将所述第N个所述二进制单元中的二进制位从所述初始数量补为12个;
所述第三获取模块获取与所述二进制序列对应的碱基序列,包括:获取与所述初始数量对应的标记碱基单元;在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列。
4.根据权利要求3所述的编码装置,其特征在于,在所述标记碱基单元中包括7个碱基的情况下,所述第三获取模块,还用于:
在所述在合并的N个所述碱基单元后添加所述标记碱基单元,获取与所述二进制序列对应的碱基序列之后,获取与所述DNA对应的所述碱基序列;将所述碱基序列分割为N个所述碱基单元和所述标记碱基单元;
根据所述映射规则,分别获取与N个所述碱基单元中的各个所述碱基单元对应的所述二进制单元;
根据所述标记碱基单元,确定第N个所述碱基单元对应的所述二进制单元中的二进制位的初始数量;
根据所述初始数量,对第N个所述碱基单元对应的所述二进制单元中的二进制位的数量进行还原,得到目标二进制单元;
将前(N-1)个所述碱基单元对应的所述二进制单元和所述目标二进制单元进行合并,得到所述二进制序列。
5.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-2任一项所述的用于DNA存储的编码方法的步骤。
6.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-2任一项所述的用于DNA存储的编码方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210441789.9A CN114822695B (zh) | 2022-04-25 | 2022-04-25 | 用于dna存储的编码方法及编码装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210441789.9A CN114822695B (zh) | 2022-04-25 | 2022-04-25 | 用于dna存储的编码方法及编码装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114822695A CN114822695A (zh) | 2022-07-29 |
CN114822695B true CN114822695B (zh) | 2024-04-16 |
Family
ID=82506791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210441789.9A Active CN114822695B (zh) | 2022-04-25 | 2022-04-25 | 用于dna存储的编码方法及编码装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114822695B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3173961A1 (en) * | 2015-11-27 | 2017-05-31 | Thomson Licensing | Method for storing user data and decoding information in synthesized oligos, apparatus and substance |
CN110867213A (zh) * | 2018-08-28 | 2020-03-06 | 华为技术有限公司 | 一种dna数据的存储方法和装置 |
CN112382340A (zh) * | 2020-11-25 | 2021-02-19 | 中国科学院深圳先进技术研究院 | 用于dna数据存储的二进制信息到碱基序列的编解码方法和编解码装置 |
CN113539370A (zh) * | 2021-06-29 | 2021-10-22 | 中国科学院深圳先进技术研究院 | 编码方法、解码方法、装置、终端设备及可读存储介质 |
WO2021243605A1 (zh) * | 2020-06-03 | 2021-12-09 | 深圳华大生命科学研究院 | 生成dna存储编解码规则的方法和装置及dna存储编解码方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010042007A1 (en) * | 2008-10-10 | 2010-04-15 | Jonas Tegenfeldt | Method for the mapping of the local at/gc ratio along dna |
EP2526415B1 (en) * | 2010-01-19 | 2017-05-03 | Verinata Health, Inc | Partition defined detection methods |
-
2022
- 2022-04-25 CN CN202210441789.9A patent/CN114822695B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3173961A1 (en) * | 2015-11-27 | 2017-05-31 | Thomson Licensing | Method for storing user data and decoding information in synthesized oligos, apparatus and substance |
CN110867213A (zh) * | 2018-08-28 | 2020-03-06 | 华为技术有限公司 | 一种dna数据的存储方法和装置 |
WO2021243605A1 (zh) * | 2020-06-03 | 2021-12-09 | 深圳华大生命科学研究院 | 生成dna存储编解码规则的方法和装置及dna存储编解码方法和装置 |
CN112382340A (zh) * | 2020-11-25 | 2021-02-19 | 中国科学院深圳先进技术研究院 | 用于dna数据存储的二进制信息到碱基序列的编解码方法和编解码装置 |
CN113539370A (zh) * | 2021-06-29 | 2021-10-22 | 中国科学院深圳先进技术研究院 | 编码方法、解码方法、装置、终端设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114822695A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7090148B2 (ja) | Dnaベースのデータストレージ及びデータ取り出し | |
CN109830263B (zh) | 一种基于寡核苷酸序列编码存储的dna存储方法 | |
CN112711935A (zh) | 编码方法、解码方法、装置及计算机可读存储介质 | |
US10566077B1 (en) | Re-writable DNA-based digital storage with random access | |
US20180373839A1 (en) | Systems and methods for encoding genomic graph information | |
US20210074380A1 (en) | Reverse concatenation of error-correcting codes in dna data storage | |
US9774351B2 (en) | Method and apparatus for encoding information units in code word sequences avoiding reverse complementarity | |
CN109979540B (zh) | 一种dna信息存储编码方法 | |
WO2016020280A1 (en) | Code generation method, code generating apparatus and computer readable storage medium | |
CN113539370B (zh) | 编码方法、解码方法、装置、终端设备及可读存储介质 | |
CN1794222A (zh) | 用于最佳段落排版的方法和计算机可读介质 | |
CN111858507B (zh) | 基于dna的数据存储方法、解码方法、系统和装置 | |
Al Yami et al. | LFastqC: A lossless non-reference-based FASTQ compressor | |
Park et al. | Iterative coding scheme satisfying gc balance and run-length constraints for dna storage with robustness to error propagation | |
CN114822695B (zh) | 用于dna存储的编码方法及编码装置 | |
KR102339723B1 (ko) | Dna 저장 장치의 연성 정보 기반 복호화 방법, 프로그램 및 장치 | |
WO2019080653A1 (zh) | 编码/解码方法、编码/解码器和存储方法、装置 | |
WO2023206023A1 (zh) | 用于dna存储的编码方法及编码装置 | |
Cunial et al. | Fast and compact matching statistics analytics | |
CN114730616A (zh) | 信息编码和解码方法、装置、存储介质以及信息存储和解读方法 | |
CN117854594B (zh) | 一种空间组学的测序定位匹配方法及装置、空间组学测序设备及介质 | |
CN118056206B (zh) | 用于在分子中存储信息的方法、设备和系统 | |
CN117453139A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN118132510A (zh) | 一种dna信息存储的编解码方法及系统 | |
CN118675625A (zh) | 满足gc局部平衡和游程约束的高码率dna编码方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |