CN116130009A - 脱氧核糖核酸存储通信方法、系统及存储介质 - Google Patents
脱氧核糖核酸存储通信方法、系统及存储介质 Download PDFInfo
- Publication number
- CN116130009A CN116130009A CN202211681952.5A CN202211681952A CN116130009A CN 116130009 A CN116130009 A CN 116130009A CN 202211681952 A CN202211681952 A CN 202211681952A CN 116130009 A CN116130009 A CN 116130009A
- Authority
- CN
- China
- Prior art keywords
- data
- decoding
- preset
- deoxyribonucleic acid
- dna
- 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.)
- Pending
Links
Images
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
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
-
- 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)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Biophysics (AREA)
- Medical Informatics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开一种脱氧核糖核酸存储通信方法、系统及存储介质,应用于通信技术领域,能够有效缓解DNA存储通信性能较低的问题,提高DNA存储通信的可靠性和稳定性。该方法包括:将待发送的第一信息数据进行分段得第二信息数据,并进行冗余余数系统编码得第一编码数据;对第一编码数据添加地址索引和标记位得到第三编码数据,并将其映射到脱氧核糖核酸得到第一脱氧核糖核酸片段,接着,将其输入脱氧核糖核酸存储通信信道传输;将接收到的第一脱氧核糖核酸片段映射到编码数据得第四编码数据,并通过标记码解码器解码得第一解码数据;对第一解码数据重新排序得第二解码数据;根据预设冗余余数系统译码算法对第二解码数据译码得到目标信息数据。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种脱氧核糖核酸存储通信方法、系统及存储介质。
背景技术
随着信息技术科学产业日益发展,计算机技术的不断更新,数字化生活已经悄然无声地渗入到我们的生活中。互联网和人工智能等信息技术和数学技术的迅速发展导致信息量呈指数级地快速增长。在大量数字信息的产生的同时也引起了不少问题,传统的存储介质已经开始慢慢满足不了存储每天产生的大量的信息的要求,存储设备也面临着发展的瓶颈。脱氧核糖核酸(DeoxyribonucleicAcid,DNA)是一种大自然天生就有的信息存储介质。与传统存储介质的比较,DNA存储有很多的好处,它具有存储密度高、存储时间长、损耗率低以及非常容易备份的特点。但相关技术中,由于目前相关的DNA存储技术发展还没完善,DNA存储还是存在许多的问题。其中,最为突出的问题就是DNA在存储过程中容易发生替换、插入以及删除的错误,这对于数据存储的完整性和正确性影响非常大,这也导致了DNA存储通信系统的通信可靠性较低和稳定性较低的问题。
发明内容
为了解决上述技术问题的至少之一,本发明提出一种脱氧核糖核酸存储通信方法、系统及存储介质,能够有效缓解DNA存储通信性能较低的问题,提高DNA存储通信的可靠性和稳定性。
一方面,本发明实施例提供了一种脱氧核糖核酸存储通信方法,包括以下步骤:
将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据;
将若干段所述第二信息数据分别进行冗余余数系统编码,得到第一编码数据;
根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据;其中,所述分段序号根据所述预设分段操作得到;
通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据;
根据预设映射算法将所述第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段;
将所述第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输;
接收所述脱氧核糖核酸存储通信信道传输的所述第一脱氧核糖核酸片段;
根据所述预设映射算法将所述第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据;
通过标记码解码器对所述第四编码数据进行解码,得到第一解码数据;
根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据;
根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据。
根据本发明实施例的一种脱氧核糖核酸存储通信方法,至少具有如下有益效果:本实施例首先对待发送的第一信息数据进行预设分段操作,以缓解脱氧核糖核酸合成过程中难以合成脱氧核糖核酸长序列的问题。接着,本实施例通过对分段得到的第二信息数据进行冗余余数系统编码的方式缓解脱氧核糖核酸存储中的替换错误问题。同时,本实施例根据预设分段操作时各个数据段对应的分段序号为第一编码数据添加地址索引,以确定各段编码数据在传输信息中的位置。进一步地,本实施例通过引入标记码的方式,在第二编码数据中添加标记位,从而缓解脱氧核糖核酸存储中的插入错误和删除错误的问题。然后,本实施例将编码得到的第三编码数据通过预设映射算法映射到脱氧核糖核酸中得到第一脱氧核糖核酸片段,并将其输入脱氧核糖核酸存储通信信道进行传输。接着,本实施例通过接收脱氧核糖核酸存储通信信道传输的第一脱氧核糖核酸片段,并通过预设映射算法将其映射至编码数据中,得到第四编码数据。然后,本实施例通过标记码解码器对第四编码数据进行解码,并通过地址索引对解码得到的第一解码数据进行重新排序得到第二解码数据后,通过预设冗余余数系统译码算法进行译码,从而得到目标信息数据,实现脱氧核糖核酸存储通信,有效缓解了DNA存储过程中出现错误导致通信性能较低的问题,提高了DNA存储通信的可靠性和稳定性。
根据本发明的一些实施例,所述根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据,包括:
对所述第二解码数据中的各个码字的可靠性进行判断,得到可靠性参数;
根据所述可靠性参数对所述第二解码数据中的所述码字进行预设调整操作,得到第三解码数据;其中,所述预设调整操作包括删除和保留;
根据冗余余数系统译码算法对所述第三解码数据进行译码,得到所述目标信息数据。
根据本发明的一些实施例,所述根据所述可靠性参数对所述第二解码数据中的所述码字进行预设调整操作,包括:
当所述码字对应的可靠性参数大于或等于预设可靠阈值,将所述码字保留;
或者,当所述码字对应的可靠性参数小于所述预设可靠阈值,将所述码字从所述第二解码数据中删除。
根据本发明的一些实施例,所述根据冗余余数系统译码算法对所述第三解码数据进行译码,得到所述目标信息数据,包括:
通过最小距离解码算法对所述第三解码数据进行译码,得到所述目标信息数据。
根据本发明的一些实施例,在执行所述根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据这一步骤之后,所述方法还包括:
通过BCH码对所述第二编码数据中的地址索引进行编码。
根据本发明的一些实施例,所述根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据,包括:
通过所述BCH码对所述第一解码数据中的地址索引进行解码,得到地址数据;
根据所述地址数据对所述第一解码数据进行重新排序,得到所述第二解码数据。
根据本发明的一些实施例,所述通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据,包括:
通过所述标记码编码器在所述第二编码数据中每隔预设个信息位插入预设标记数据,得到所述第三编码数据。
另一方面,本发明实施例还提供了一种脱氧核糖核酸存储通信系统,包括:
分段模块,用于将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据;
第一编码模块,用于将若干段所述第二信息数据分别进行冗余余数系统编码,得到第一编码数据;
地址索引模块,用于根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据;其中,所述分段序号根据所述预设分段操作得到;
第二编码模块,用于通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据;
第一映射模块,用于根据预设映射算法将所述第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段;
通信信道模块,用于将所述第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输;
接收模块,用于接收所述脱氧核糖核酸存储通信信道传输的所述第一脱氧核糖核酸片段;
第二映射模块,用于根据所述预设映射算法将所述第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据;
第一解码模块,用于通过标记码解码器对所述第四编码数据进行解码,得到第一解码数据;
排序模块,用于根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据;
第二解码模块,用于根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据。
另一方面,本发明实施例还提供了一种脱氧核糖核酸存储通信系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得至少一个所述处理器实现如上述实施例所述的脱氧核糖核酸存储通信方法。
另一方面,本发明实施例还提供了一种计算机存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由所述处理器执行时用于实现如上述实施例所述的脱氧核糖核酸存储通信方法。
附图说明
图1是本发明实施例提供的脱氧核糖核酸存储通信方法流程图;
图2是本发明实施例提供的脱氧核糖核酸存储通信系统原理框图。
具体实施方式
本申请实施例所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在对本申请实施例进行介绍说明之前,首先对本申请中涉及的相关名词进行解释说明。
脱氧核糖核酸(DeoxyribonucleicAcid,DNA)存储:脱氧核糖核酸是一种天然的信息存储介质。与传统存储介质比较,DNA存储有很多的优势,它具有存储密度高、存储时间长、损耗率地以及非常容易备份的特点。另外,DNA是比较稳定的,对于高温、震荡等外部环境具有较强的抗干扰能力,例如,目前依然可以成功地读取经历了数千年的自然环境考研的DNA片段。由于DNA作为存储介质具有高存储密度、非常好的稳定性以及维护成本低的特点,在未来DNA存储完全有希望成为非常使用可靠的信息存储介质。
冗余余数系统码(Redunt Residue Number System,RRNS):是在余数系统(RNS)的基础上添加了冗余位而得到的码,RNS有的特性RRNS码也有,并且RRNS码有比较好的容错性。RRNS码是无进位的运算,余数之间互不干扰,因此RRNS码的运算速度很快。同时,RRNS码是无序性,余数之间都是没有顺序之分。对于一个RRNS(n,k)码来说,可以检测到最多(n-k)个余数错误,能够纠正最多个余数错误,其中n为RRNS编码后的码长,k为信息位的长度,表示不超过x的最大整数。
BCH(Binary Coded Hexadecimal)码:是一种循环码,能够纠正多位随机错误。它的生成多项式跟最小的码距有着密切的关系,通常都是根据要求的纠错能力来构造相应的BCH码字。假设它的生成多项式为g(x),有d-1个连续根a1,a2,...,ad-1,那么有g(x)可以生成(n,k)循环码称为二进制BCH码。由于BCH码是一种特殊的循环码,它不仅可以用编码器常用的除法器来进行编码,也可以把所有适用于循环码的译码算法都用到BCH码的译码。
DNA存储通信系统中的DNA合成以及DNA测序的过程容易出现错误导致DNA存储产生错误,其中最为突出的问题就是DNA在存储过程中容易发生替换、插入以及删除的错误,这对于数据存储的完整性和正确性影响非常大,这也导致了DNA存储通信系统的通信可靠性较低和稳定性较低的问题。
基于此,本发明的一个实施例提供了一种脱氧核糖核酸存储通信方法、系统及存储介质,能够有效缓解DNA存储通信性能较低的问题,提高了DNA存储通信的可靠性和稳定性。参照图1,本发明实施例的方法包括但不限于步骤S110、步骤S120、步骤S130、步骤S140、步骤S150、步骤S160、步骤S170、步骤S180、步骤S190、步骤S1010和步骤S1110。
具体地,本发明实施例的方法应用过程包括但不限于以下步骤:
S110:将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据。
S120:将若干段第二信息数据分别进行冗余余数系统编码,得到第一编码数据。
S130:根据分段序号对第一编码数据添加地址索引,得到第二编码数据。其中,分段序号根据预设分段操作得到。
S140:通过标记码编码器在第二编码数据中添加标记位,得到第三编码数据。
S150:根据预设映射算法将第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段。
S160:将第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输。
S170:接收脱氧核糖核酸存储通信信道传输的第一脱氧核糖核酸片段。
S180:根据预设映射算法将第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据。
S190:通过标记码解码器对第四编码数据进行解码,得到第一解码数据。
S1010:根据第一解码数据中的地址索引对第一解码数据进行重新排序,得到第二解码数据。
S1110:根据预设冗余余数系统译码算法对第二解码数据进行译码,得到目标信息数据。
在本具体实施例工作过程中,本实施例首先将待发送的第一信息数据进行预设分段操作得到若干段第二信息数据。具体地,第一信息数据可以为二进制文件。由于脱氧核糖核酸(DNA)在合成过程中难以合成DNA长序列,即待发送的第一信息数据难以映射值一段DNA长序列片段中,因此需要对第一信息数据进行预设分段操作,将第一信息数据划分为多个数据段,得到第二信息段,以分段映射到DNA短片段的形式,缓解难以合成DNA长序列进行数据存储的问题。进一步地,本实施例将若干段的第二信息数据分别进行冗余余数系统编码得到第一编码数据。具体地,本实施例通过RRNS编码的方式缓解DNA存储中的替换错误。冗余余数系统(RRNS)编码是由k个非冗余基和r个冗余基组成了模数,总共是n位,其中k位是信息位。假设传输的信息为(x1,x2,...,xk),根据下式(1)求出传输信息所对应的整数X:
当由传输的信息位计算出它们所对应的整数X,而且整数X是在有效的动态范围内[0,M),那么就用RRNS码编码前所设定好的模数组(m1,m2,...,mn)依次对整数X进行求模操作然后取余数,如下式(2)所示,得到设定好的模数组所对应的编码信息(x1,x2,...,xn)。
同时,本实施例根据分段序号对第一编码数据添加地址索引,得到第二编码数据。容易理解的是,分段序号根据预设分段操作得到。具体地,本实施例在对第一信息数据进行预设分段操作时,根据分段的顺序可以得到各段第二信息数据对应的分段序号。因此,本实施例通过在第一编码数据中添加相应的地址索引,构建得到第二编码数据,从而能够通过第二编码数据中的地址索引将数据恢复至原始的数据,提高了脱氧核糖核酸存储通信的可靠性。进一步地,本实施例通过标记编码器在第二编数据中添加标记位,得到第三编码数据。具体地,在DNA存储中不仅仅有替换错误,还有插入错误以及删除错误。而对于插入错误和删除错误来说,传统的纠错码难以进行正确地恢复。本实施例通过在第二编码数据中添加标记码(marker码)以缓解DNA存储中的插入错误以及删除错误。本实施例通过marker码作为内码应对DNA存储通信系统信道可能产生的插入错误、删除错误所引起的比特损失或增益。示例性地,假设传输的二进制信息序列为m,marker码会根据设定的码字距离中插入一个标记位来进行标识,构成新的二进制传输信息序列x。在marker码的标记位的插入中有很多的选择,可以插入“01”、“001”、“010”等。
进一步地,本实施例根据预设映射算法将第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段。例如,第三编码数据为二进制数据,本实施例通过把二进制数据编码到四种DNA碱基A,T,G,C,从而实现将第三编码数据映射到脱氧核糖核酸中,构建得到相应的第一脱氧核糖核酸片段。然后,本实施例将得到的第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道中进行传输。接着,本实施例在接收端接收脱氧核糖核酸存储通信信道传输的脱氧核糖核酸片段,即第一脱氧核糖核酸片段。进一步地,本实施例根据预设映射算法将接收到的第一脱氧核糖核酸片段映射到编码数据中,即根据第一脱氧核糖核酸片段中DNA碱基的排列顺序映射得到相应的编码数据,得到第四编码数据。然后,本实施例通过标记码解码器对第四编码数据进行解码,得到第一解码数据。具体地,在DNA存储通信系统中,当进行DNA存储时候,存储的DNA信息如果是因为插入错误、删除错误的发生导致了DNA存储信息发生了位置的错误,但是marker码可以根据标记位的位置移动对DNA存储信息的位置进行推断,本实施例通过标记解码器对第四编码数据进行解码,以缓解插入错误和删除错误的发生导致DNA存储信息发生位置的错误的问题,有效提高了对DNA存储信息的纠错能力。然后,本实施例根据第一解码数据中的地址索引对第一解码数据进行重新排序得到第二解码数据。具体地,本实施例在第一编码数据中根据分段序号添加了相应的地址索引,以通过地址索引识别出各个数据段在原始数据中的位置。本实施例通过识别各段第一解码数据中的地址索引,然后对各段第一解码数据按照分段的顺序进行重新排序,从而还原得到原始的数据序列,得到第二解码数据。进一步地,本实施例根据预设冗余余数系统译码算法对得到的第二解码数据进行译码,得到目标信息数据,实现脱氧核糖核酸存储通信,并且有效缓解DNA存储过程中出现错误导致通信性能较低的问题,如DNA存储过程中的替换错误、插入错误以及删除错误导致通信性能较低的问题,提高了DNA存储通信的可靠性和稳定性。
在本发明的一些实施例中,根据预设冗余余数系统译码算法对第二解码数据进行译码,得到目标信息数据,包括但不限于:
对第二解码数据中的各个码字的可靠性进行判断,得到可靠性参数。
根据可靠性参数对第二解码数据中的码字进行预设调整操作,得到第三解码数据。其中,预设调整操作包括删除和保留。
根据冗余余数系统译码算法对第三解码数据进行译码,得到目标信息数据。
在本具体实施例中,本实施例首先对第二解码数据中各个码字的可靠性进行判断得到相应的可靠性参数。然后根据可靠性参数对第二解码数据中的各个码字进行预设调整操作后得到第三解码数据,并根据冗余余数系统译码算法对第三解码数据进行译码得到目标信息数据。具体地,对于一个RRNS(n,k)码来说,如果满足v>t,t+v≤n-k,就能够纠错最多t个余数错误的同时也能检测到最多v个余数错误。得益于RRNS码的性质,一个RRNS(n,k)码可以减少D个模数变成一个RRNS(n-D,k)码,D<n-k,当D个余数被删除之后,剩下的RRNS(n-D,k)码仍然是能够正常解码,而且解码结果也是不受到任何影响。这是因为RRNS码是无进位运算的,余数与余数之间都是并行运算的,余数之间是互不干扰的,被删除的余数对于剩余的RRNS码的解码结果完成不影响。本实施例根据不同通信系统的特性来判断接收到的码字的可靠性,得到可靠性参数,从而根据可靠性参数对码字进行保留或删除,得到第三解码数据,进而根据冗余余数系统译码算法对第三解码数据进行译码得到目标信息数据,有效提高了译码效率,降低译码的复杂度并且通过计入纠删功能也有效提高了译码的正确率。示例性地,对于一组n个接收到的码字,然后本实施例会对每一个码字的可靠性进行判断。其中,不同的通信系统接收到的码字可靠性判断方法会有所不同。当n个接收码字的可靠性被判断完之后,根据可靠性参数对码字进行保留或删除。其中,码字删除最多n-k个码字。然后根据剩余的码字重新构造出新的RRNS(n-D,k)码,即第三解码数据,并进行RRNS译码操作得到目标信息数据。需要说明的是,在译码过程中求出的Y必须是要满足原来的RRNS(n,k)码的合法范围M内。假设经过RRNS(n-D,k)码译码的第四步都是找不到合适的Y,证明RRNS码的解码失败,删除的码字个数过多,超过RRNS码自身的纠删能力,那么就直接把原来接收到的信息进行输出。假如能够找到合适的Y满足原来的RRNS码的合法范围内,那么就用所求得的Y对原来的RRNS码的模数组求模取余数,得到新的译码结果。
在本发明的一些实施例中,根据可靠性参数对第二解码数据中的码字进行预设调整操作,包括但不限于:
当码字对应的可靠性参数大于或等于预设可靠阈值,将码字保留。
或者,当码字对应的可靠性参数小于预设可靠阈值,将码字从第二解码数据中删除。
在本具体实施例中,本实施例根据第二解码数据中各个码字对应的可靠性参数对码字进行删除或保留。具体地,当码字对应的可靠性参数大于或等于预设可靠阈值,则认为该码字是可靠的,将该码字保留。而当码字对应的可靠性参数小于预设可靠阈值,则认为该码字的可靠性较低,因此将该码字从第二解码数据中删除。本实施例通过丢弃一些接收的错误数据和相关模数,然后从非法的(或错误接收的)整数消息中恢复正确的(或传输的)整数消息X。容易理解的是,本实施例通过将低可靠性的码字删除,剩余的码字有高可靠性,即第三解码数据中的码字可靠性较高,因此出错的几率较低,从而有效提高通信系统的译码正确率和可靠性。
在本发明的一些实施例中,根据冗余余数系统译码算法对第三解码数据进行译码,得到目标信息数据,包括但不限于:
通过最小距离解码算法对第三解码数据进行译码,得到目标信息数据。
在本具体实施例中,本实施例中对于RRNS码的纠错解码算法是通过最小距离解码算法对第三解码数据进行译码的。具体地,对于给定的RRNS(n,k)码,假设它所对应的模数组为(m1,m2,....,mn),接收到的消息码字为y=(y1,y2,...,yn)。第一步:本实施例首先取(y1,y2,...,yk),然后根据下式(3)至(5)分别计算出所对应的Δk+1,Δk+2,…,△n:
接着,统计Δk+1,Δk+2,...,△n中的非零个数,如果非零个数不超过(为取里面的数的下限),那么直接跳转到第五步,否则就继续到第二步。第二步:当yi,i=1,2,...,k+1,i≠i1不同时,根据上式(3)到(5),分别计算和Y。如果在存在一个Y在合法的动态范围内,并且里面非零个数不超过那么直接跳转到第五步,否则就继续到第三步。第三步:当yi,i=1,2,....,k+2,i≠i1,i2不同时,根据上式(3)到(5),分别计算和Y。如果在存在一个Y在合法的动态范围内,并且里面非零个数不超过那么直接跳转到第五步,否则就继续到第四步。第四步:当yi,i=1,2,…,k+t不同时,根据上式(3)到(5),分别计算 和Y。如果在存在一个Y在合法的动态范围内,并且里面非零个数不超过那么直接跳转到第五步,否则就证明接收到的码字超过RRNS(n,k)码的纠错能力,无法进行纠错,解码停止,然后直接输出原来接收到的消息码字(y1,y2,...,yk)。第五步:根据计算到的Y和预先设定好的模数组(m1,m2,...,mn),对前面k位信息位进行求模, 得到解码后的信息位(y1,y2,...,yk),实现译码,得到目标信息数据。
在本发明的一些实施例中,在执行根据分段序号对第一编码数据添加地址索引,得到第二编码数据这一步骤之后,本实施例提供的脱氧核糖核酸存储通信方法还包括但不限于:
通过BCH码对第二编码数据中的地址索引进行编码。
在本具体实施例中,本实施例通过BCH码对地址索引进行编码,以缓解编码数据中地址索引出现错误的问题。具体地,对于每个短的DNA片段,需要对其进行编码排序添加地址索引来确定每个短的DNA片段在传输信息中的位置。但是,由于DNA存储中会产生替换、插入以及删除的错误,使得添加的地址索引抗干扰性较低。因此,本实施例通过引入BCH码对第二编码数据中的地址索引进行编码,以提高地址索引的抗干扰性。
在本发明的一些实施例中,根据第一解码数据中的地址索引对第一解码数据进行重新排序,得到第二解码数据,包括但不限于:
通过BCH码对第一解码数据中的地址索引进行解码,得到地址数据。
根据地址数据对第一解码数据进行重新排序,得到第二解码数据。
在本具体实施例中,本实施例在通过地址索引对第一解码数据进行重新排序时,首先通过BCH码对第一解码数据中的地址索引进行解码,得到相应的地址数据。然后根据地址数据对第一解码数据进行重新排序,得到第二解码数据。具体地,BCH码的解码(译码)分为时域译码和频域译码,时域译码是在时域之间利用码的代数结构进行译码,如彼得森译码、迭代译码等。其中,彼得森译码算法是通过对接收到的码的多项式进行求余,然后得到部分校验式。接着,用部分校验式进行构造出一个特定的以错误位置数为根的译码多项式,通过求出译码多项式的根来找到错误位置,最后进行纠错。频域译码则是把每一个码字看作成一个数字信号,把接收到的信号进行离散傅里叶变换,然后把变换后的数字信号在频域中使用数字信号处理技术来译码,当译码结束后再通过离散傅里叶反变换进行转换得到译码后的信息。由于BCH码是一种特殊的循环码,它不仅可以用编码器常用的除法器来进行编码,也可以把所有适用于循环码的译码算法都用到BCH码的译码。因此,本实施例通过引入BHC码对地址索引进行编解码的方式,以提高脱氧核糖核酸存储通信系统的抗干扰性和可靠性。
在本发明的一些实施例中,通过标记码编码器在第二编码数据中添加标记位,得到第三编码数据,包括但不限于:
通过标记码编码器在第二编码数据中每隔预设个信息位插入预设标记数据,得到第三编码数据。
在本具体实施例中,本实施例通过标记码编码器(marker编码器)在第二编码数据中每隔预设个信息为插入相应的预设标记数据,得到第三编码数据。具体地,本实施例根据脱氧核糖核酸存储通信的传输效率以及解码的复杂度需求,通过标记码编码器在第二编码数据中每隔预设个信息位插入预设标记数据。示例性地,本实施例中每隔18个信息位插入一个“01”作为标记位,即预设标记数据,从而构建得到第三编码数据。需要说明的是,预设标记数据还可以为“001”或“010”。但是对于高码率的marker码来说,标记位设置为“01”的传输效率以及解码复杂度较优。
本发明的一个实施例还提供了一种脱氧核糖核酸存储通信系统,包括:
分段模块,用于将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据。
第一编码模块,用于将若干段第二信息数据分别进行冗余余数系统编码,得到第一编码数据。
地址索引模块,用于根据分段序号对第一编码数据添加地址索引,得到第二编码数据。其中,分段序号根据预设分段操作得到。
第二编码模块,用于通过标记码编码器在第二编码数据中添加标记位,得到第三编码数据。
第一映射模块,用于根据预设映射算法将第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段。
通信信道模块,用于将第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输。
接收模块,用于接收脱氧核糖核酸存储通信信道传输的第一脱氧核糖核酸片段。
第二映射模块,用于根据预设映射算法将第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据。
第一解码模块,用于通过标记码解码器对第四编码数据进行解码,得到第一解码数据。
排序模块,用于根据第一解码数据中的地址索引对第一解码数据进行重新排序,得到第二解码数据。
第二解码模块,用于根据预设冗余余数系统译码算法对第二解码数据进行译码,得到目标信息数据。
参照图2,本发明的一个实施例还提供了一种脱氧核糖核酸存储通信系统,包括:
至少一个处理器210。
至少一个存储器220,用于存储至少一个程序。
当至少一个程序被至少一个处理器210执行,使得至少一个处理器210实现如上述实施例描述的脱氧核糖核酸存储通信方法。
本发明的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,执行以上实施例描述的步骤。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
Claims (10)
1.一种脱氧核糖核酸存储通信方法,其特征在于,包括以下步骤:
将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据;
将若干段所述第二信息数据分别进行冗余余数系统编码,得到第一编码数据;
根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据;其中,所述分段序号根据所述预设分段操作得到;
通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据;
根据预设映射算法将所述第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段;
将所述第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输;
接收所述脱氧核糖核酸存储通信信道传输的所述第一脱氧核糖核酸片段;
根据所述预设映射算法将所述第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据;
通过标记码解码器对所述第四编码数据进行解码,得到第一解码数据;
根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据;
根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据。
2.根据权利要求1所述的脱氧核糖核酸存储通信方法,其特征在于,所述根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据,包括:
对所述第二解码数据中的各个码字的可靠性进行判断,得到可靠性参数;
根据所述可靠性参数对所述第二解码数据中的所述码字进行预设调整操作,得到第三解码数据;其中,所述预设调整操作包括删除和保留;
根据冗余余数系统译码算法对所述第三解码数据进行译码,得到所述目标信息数据。
3.根据权利要求2所述的脱氧核糖核酸存储通信方法,其特征在于,所述根据所述可靠性参数对所述第二解码数据中的所述码字进行预设调整操作,包括:
当所述码字对应的可靠性参数大于或等于预设可靠阈值,将所述码字保留;
或者,当所述码字对应的可靠性参数小于所述预设可靠阈值,将所述码字从所述第二解码数据中删除。
4.根据权利要求2所述的脱氧核糖核酸存储通信方法,其特征在于,所述根据冗余余数系统译码算法对所述第三解码数据进行译码,得到所述目标信息数据,包括:
通过最小距离解码算法对所述第三解码数据进行译码,得到所述目标信息数据。
5.根据权利要求1所述的脱氧核糖核酸存储通信方法,其特征在于,在执行所述根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据这一步骤之后,所述方法还包括:
通过BCH码对所述第二编码数据中的地址索引进行编码。
6.根据权利要求5所述的脱氧核糖核酸存储通信方法,其特征在于,所述根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据,包括:
通过所述BCH码对所述第一解码数据中的地址索引进行解码,得到地址数据;
根据所述地址数据对所述第一解码数据进行重新排序,得到所述第二解码数据。
7.根据权利要求1所述的脱氧核糖核酸存储通信方法,其特征在于,所述通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据,包括:
通过所述标记码编码器在所述第二编码数据中每隔预设个信息位插入预设标记数据,得到所述第三编码数据。
8.一种脱氧核糖核酸存储通信系统,其特征在于,包括:
分段模块,用于将待发送的第一信息数据进行预设分段操作,得到若干段第二信息数据;
第一编码模块,用于将若干段所述第二信息数据分别进行冗余余数系统编码,得到第一编码数据;
地址索引模块,用于根据分段序号对所述第一编码数据添加地址索引,得到第二编码数据;其中,所述分段序号根据所述预设分段操作得到;
第二编码模块,用于通过标记码编码器在所述第二编码数据中添加标记位,得到第三编码数据;
第一映射模块,用于根据预设映射算法将所述第三编码数据映射到脱氧核糖核酸中,得到第一脱氧核糖核酸片段;
通信信道模块,用于将所述第一脱氧核糖核酸片段输入脱氧核糖核酸存储通信信道进行传输;
接收模块,用于接收所述脱氧核糖核酸存储通信信道传输的所述第一脱氧核糖核酸片段;
第二映射模块,用于根据所述预设映射算法将所述第一脱氧核糖核酸片段映射到编码数据中,得到第四编码数据;
第一解码模块,用于通过标记码解码器对所述第四编码数据进行解码,得到第一解码数据;
排序模块,用于根据所述第一解码数据中的地址索引对所述第一解码数据进行重新排序,得到第二解码数据;
第二解码模块,用于根据预设冗余余数系统译码算法对所述第二解码数据进行译码,得到目标信息数据。
9.一种脱氧核糖核酸存储通信系统,其特征在于,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得至少一个所述处理器实现如权利要求1至7任一项所述的脱氧核糖核酸存储通信方法。
10.一种计算机存储介质,其中存储有处理器可执行的程序,其特征在于,所述处理器可执行的程序在由所述处理器执行时用于实现如权利要求1至7任一项所述的脱氧核糖核酸存储通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211681952.5A CN116130009A (zh) | 2022-12-26 | 2022-12-26 | 脱氧核糖核酸存储通信方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211681952.5A CN116130009A (zh) | 2022-12-26 | 2022-12-26 | 脱氧核糖核酸存储通信方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116130009A true CN116130009A (zh) | 2023-05-16 |
Family
ID=86296619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211681952.5A Pending CN116130009A (zh) | 2022-12-26 | 2022-12-26 | 脱氧核糖核酸存储通信方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116130009A (zh) |
-
2022
- 2022-12-26 CN CN202211681952.5A patent/CN116130009A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7409622B1 (en) | System and method for reverse error correction coding | |
CN107370560B (zh) | 一种极化码的编码和速率匹配方法、装置及设备 | |
US5379305A (en) | Error correction system with selectable error correction capabilities | |
WO2018142391A1 (en) | Device, system and method of implementing product error correction codes for fast encoding and decoding | |
US8769374B2 (en) | Multi-write endurance and error control coding of non-volatile memories | |
US20180248567A1 (en) | Method for error-correction coding | |
US20120290898A1 (en) | Adaptive endurance coding of non-volatile memories | |
KR20130125813A (ko) | 유연한 소스 블록 매핑을 갖는 탄성 코드들을 이용한 인코딩 및 디코딩 | |
WO2019126508A1 (en) | Decoding concatenated codes by guessing noise | |
US8880976B2 (en) | Method and apparatus for encoding LBA information into the parity of a LDPC system | |
WO2018157854A1 (zh) | Polar码编译码方法及装置 | |
US8321750B2 (en) | Interleaving parity bits into user bits to guarantee run-length constraint | |
WO2017194013A1 (zh) | 纠错编码方法及装置 | |
JP2006135980A (ja) | 連結された反復型と代数型の符号化 | |
US11258465B2 (en) | Content aware decoding method and system | |
JPH05244020A (ja) | インターリーブ式の誤り訂正符号を復号化するための復号器能力強化方法 | |
US20070162821A1 (en) | Parity check matrix, method of generating parity check matrix, encoding method and error correction apparatus | |
JP6046403B2 (ja) | 誤り訂正符号の符号化方法及び復号方法 | |
JP2005528840A (ja) | 線形ブロック符号の軟復号化 | |
JP4321394B2 (ja) | 符号化装置、復号装置 | |
CN116757158B (zh) | 基于半导体存储的数据管理方法 | |
US20220209791A1 (en) | Hard decoding methods in data storage devices | |
US10862512B2 (en) | Data driven ICAD graph generation | |
JP7429223B2 (ja) | ターボ積符号の復号方法、装置、デコーダー及びコンピュータ記憶媒体 | |
Justesen | Bounded distance decoding of unit memory codes |
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 |