一种DNA数据存储高效编码电路

未命名 08-26 阅读:122 评论:0

一种dna数据存储高效编码电路
技术领域
1.本发明涉及dna数据存储的生物信息领域,尤其涉及一种高通量dna数据存储高效编码电路。


背景技术:

2.当今世界已经完全进入大数据时代,一切生活相关的活动都涉及数据的存储和处理。近年来随着信息技术的快速发展,人类生活的方方面面都逐渐实现数字化转变,现代数据呈现指数级增长状况,远远超过了现有存储容量的增长速度。然而现有的存储介质,例如:磁性存储(例如:磁带或硬盘驱动器)、光学存储(例如蓝光)及固态存储(例如闪存),已不能满足日益增长的存储容量的需求。基于磁、光以及集成电路的现代数据存储介质虽然已经取得了飞速的发展,但它们的存储体积密度已经达到10
10
~10
12
bit/cm3,接近极限。与之相比,dna存储使用尽可能少的分子或原子来存储一个比特的信息,具有更高密度存储潜力,例如大肠杆菌染色体dna的存储体积密度据估计达约10
19
bit/cm3,约比目前的最佳存储介质高6个数量级。更重要的是,随着合成生物学的快速发展,以高通量dna合成技术和人工合成染色体工作为代表,标志着人类对dna的设计、合成、编辑和读取能力进入到一个崭新的时代。在此背景下,以dna分子为存储介质进行高密度信息存储成为一个非常有前景的研究方向,得到了学术界和产业界越来越多的关注。
3.dna存储数字信息是利用人工合成的脱氧核苷酸(dna)存储数字信息。dna存储信息,具有存储密度高、不受电磁干扰、长期高可靠和维护低成本等优势。利用dna存储数字信息的原理是:数字化信息在二进制码流、四进制碱基序列和实际dna片段之间的转化与流动。目前,基于此原理的技术流程主要包括两个方面:1、信息写入,该部分主要包括dna编码和dna合成两个部分。dna编码是通过计算机算法将文本、图片或视频等信息的二进制码流进行编码,得到a/t/c/g组成的碱基序列。随后进行第二步:dna合成,将信息数据写入写入对应的dna片段,并对其进行多模式保存;2、信息读取,该部分包括dna信息检索及测序和dna信息编码两个部分。当接收到数据读取请求后,相应的dna样本库需要被物理检索和采样。选定一个样本后,下一步对其进行测序,产生一组dna序列信息。随后进行识别、组装、纠错与解码等,将存储在dna介质中的数据还原成原始数字化信息,得到原始文本、图片、声音和视频。
4.当前dna信息存储的主要挑战为单位存储成本高,信息读写速度慢且稳定性不高,无法高效对接现有信息系统。为提高合成dna的稳定性,就必须基于dna分子生物学约束进行合适的dna存储编码方式的选择。对此,多个信息领域的信息编码方式被引入到dna存储编码的范畴。欧洲分析生物学实验室的goldman教授通过添加四倍冗余和简单的校验机制实现了数据的可靠恢复,但由于是四倍冗余的设计,该方法实现的逻辑密度和成本控制都不理想。苏黎世联邦理工大学grass团队引入了里德-所罗门(rs)纠删码,解决了寡核苷酸链池中部分丢失以及片段内碱基替代错误,在保证数据可靠恢复的同时使数据部分的逻辑密度超过了1bit/nt。erlich等引入了喷泉码,更好地适配了海量片段化的存储模式,将数
据部分的逻辑密度进一步提高到1.57bit/nt。另一思路,anavy等和choi分别使用了简并碱基来拓展dna的多进制表示方法,将逻辑密度推升到了2bit/nt以上,但是此方法也面临需要更高测序覆盖度的问题。除此之外,在未来引入非天然碱基拓展存储单元,可进一步提高逻辑密度。
5.设计dna编码算法需要考虑两个重要因素:(1)对信息传递需要进行纠错设计;(2)实现简单而直接的数据检索。不同于传统存储介质,dna存储在合成和测序过程中会引入碱基的插入和缺失错误,这使得编码更具有挑战性。基于此,dan数据编码和解码必须考虑纠错码的设计和数据检索编码的设计。针对该问题,press等提出了基于哈希编码和贪婪穷举解码的编码方案,该方案能够在单分子拷贝的情况下纠正插入和缺失错误,但需要较高的冗余度来实现纠错,且解码复杂度较高。sabary等提出了几种动态的dna重构算法,可直接用于较高错误率下的dna序列重建。天津大学song等设计了一个基于德布莱英图(de bruijn graph)的dna序列高鲁棒重建算法,可以从包括大量插入缺失和替代错误的多序列快速重建无错误的dna片段序列。该方法可以从低质量的pcr产物(序列长度完全错误)中可靠地读取数据,实现高鲁棒读取。
6.虽然近几年dna存储得到了较大的发展,但现阶段dna存储并未实现大规模的应用,其主要原因有:(1)成本高,目前dna合成一个碱基的费用约为1.04元(根据合成要求可能会有一定偏差),用dna存储1tb内容的成本约为硬盘的七千万倍;(2)耗时长,将信息存入dna中需要历经编码和dna合成,信息读取需经历dna测序和解码。一方面,dna合成及测序需花费大量时间,并且碱基序列越长,合成和测序耗费的时间就越长。另一方面,dna数据存储编码大都基于通用处理平台完成,而由于通用处理平台串行操作等原因,dna存储编码的速度慢、处理通量低,难以应对大规模dna数据存储的应用场景。预估计,当前dna数据存储的总体写入吞吐量可能是每秒千字节的级别。在10年内,与主流云存档存储系统竞争的系统将需要提供每秒十亿字节的读写吞吐量。为此,采用满足dna存储需求并适合硬件实现的算法,设计高通量dna存储专用编码芯片成为一种趋势。


技术实现要素:

7.本发明提供了一种高通量dna数据存储高效编码电路,本发明解决了当前dna数据存储中信息编码速度慢、处理通量低等问题,详见下文描述:
8.一种dna数据存储高效编码电路,所述电路包括:控制模块、进制转换模块,旋转编码模块以及线性分组码编码模块,其中:
9.控制模块,用于协调控制其余各模块输入、输出请求的发送;
10.进制转换模块,用于将31位二进制数据转换为32位十五进制数;
11.旋转编码模块,用于将十五进制数据转化为适合dna碱基合成的二进制数据;
12.线性分组码编码模块,用于对不断输入的32位数据进行线性分组码编码得到具有纠错能力的码字。
13.其中,所述控制模块用于协调控制其余各模块输入、输出请求的发送,具体实现过程如下:
14.所述控制模块包括状态控制单元和状态显示单元;所述控制状态单元包括一个计数器和一个状态选择器,其中,所述计数器输出的计数值连接所述状态选择器,最后通过计
数值控制状态选择器输出不同的状态;
15.所述状态显示单元包括四种不同的工作状态和一个选通器,当状态选择器输出不同的选择信号时,选通器输出不同的工作状态来控制其余各模块的工作和结束。
16.其中,所述进制转化模块用于将31位二进制数据转换为32位十五进制数,具体实现过程如下:
17.所述进制转换模块包括二进制转十六进制单元、十六进制预转十五进制单元、十五进制进位合并单元;所述二进制转十六进制单元是将31位二进制数在最高位添零,四比特为一组,分成八组,每一组即为十六进制下的一位,十六进制中的每一位用hi(i∈[0,7],i∈z)表示;
[0018]
所述十六进制预转十五进制单元是将十六进制的基数16改写成(15+1)的形式,使得十五进制中的每一位pj(j∈[0,7],j∈z)用十六进制组成的多项式表示;所述十五进制进位合并单元是对十五进制数各位之间做最终的进位运算,得到十五进制数p7p6p5p4p3p2p1p0。
[0019]
进一步地,所述二进制转十六进制单元是将31位二进制数在最高位添零,四比特为一组,分成八组,每一组即为十六进制下的一位,十六进制中的每一位用hi(i∈[0,7],i∈z)表示;
[0020]
具体实现过程如下,利用串并转化的方法将31位串行输入的二进制数据以4比特为一组,按时序输出到表示十六进制的4位寄存器(h0~h7)中,对于最后输出的3比特数据,通过在寄存器h7的最高位填0实现十六进制下的4比特输出。
[0021]
其中,所述十六进制预转十五进制单元是将十六进制的基数16改写成(15+1)的形式,使得十五进制中的每一位pj(j∈[0,7],j∈z)用十六进制组成的多项式表示,具体实现过程如下:
[0022]
(2.3.1)十五进制每一位均改写成如下形式:
[0023]
pi=23·
clk1+22·
clk2+21·
clk3+20·
clk4。
[0024]
(2.3.2)十六进制预转十五进制单元由八个相同且独立的处理单元构成,通过处理单元内部的移位和累加操作实现32位十六进制预转十五进制;
[0025]
(2.3.2)其中,处理单元内部包括两个加法器、一个移位寄存器、一个二路选通器以及一个计数器;
[0026]
(2.3.3)依据(2.3.1)所述形式,当第一个时钟上升沿到来时,数据clk1进入处理单元,处理单元中的加法器将数据clk1和移位寄存器中的0相加通过选通器存入移位寄存器,计数器加一;第二个时钟上升沿到来时,数据clk2进入处理单元,处理单元中的加法器将数据clk2和移位寄存器中经过移位的数据相加再通过选通器存入移位寄存器,计数器加一;第三个时钟上升沿到来时,数据clk3进入处理单元,处理单元中的加法器将数据clk3和移位寄存器中经过移位的数据相加再通过选通器存入移位寄存器,计数器加一;第四个时钟上升沿到来时,数据clk4进入处理单元,处理单元中的加法器将数据clk4和移位寄存器中经过移位的数据相加再通过选通器输出,计数器清零。
[0027]
其中,所述十五进制进位合并单元是对十五进制数各位之间做最终的进位运算,得到十五进制数p7p6p5p4p3p2p1p0,具体实现过程如下:
[0028]
(2.4.1)所述十五进制进位合并单元的硬件实现包括一个8bit的移位寄存器、一
个异或门、一个与门、一个加法器和一个选通器;
[0029]
(2.4.2)所述移位寄存器用于存放两个相近位的十五进制数,寄存器的低4位存入p0,寄存器的高4位存入p1;所述异或门用于实现移位寄存器中的低四位与4’b1111的比较,所述与门用于实现移位寄存器中的低四位清零;
[0030]
(2.4.3)所述移位寄存器中低四位的数据在时钟上升沿到来时与4’1111作异或运算,若结果为0,则将移位寄存器中的低四位与“0”,同时寄存器中的高4位数据加一;否则,将移位寄存器中的低四位数据移位输出,同时将寄存器中的高四位移动到低四位,高四位移入新的数据,重复上述过程直到输出最终的十五进制数。
[0031]
进一步地,所述旋转编码模块用于将十五进制数据转化为适合dna碱基合成的二进制数据,具体实现过程如下;
[0032]
(3.1)所述旋转编码算法用于将32比特数据以四比特为一组,依次将每组数据加一后与前一组数据加和输出;
[0033]
(3.2)所述旋转编码模块包括一个计数器、两个加法器、一个4bit的寄存器;
[0034]
(3.3)其中,所述计数器用于对输入数据的运算次数记录,输入数据的每四比特数依次经过加法器加一,并再次与寄存器中的值相加后输出,每次运算后计数器加一,当计数器值计为8时输出运算结果。
[0035]
其中,所述线性分组码编码模块用于对不断输入的32位数据进行线性分组码编码得到具有一定纠错能力的码字,以伽罗华域g(2
12
)上的rs(4000,3504)编码器为例,具体实现过程如下:
[0036]
(4.1)所述线性分组码编码模块包括数据缓冲模块、16个rs码编码器、一个选通器、一个计数器、一个比较器构成,其中:
[0037]
(4.2)所述数据缓冲模块用于检测写入响应信号,缓冲三个周期内输入的96比特数据并在第三个周期时发出读出信号,将8个12比特数据输出至8个rs编码器,包括缓冲寄存器,缓冲计数器,缓冲比较器以及缓冲选通器;
[0038]
(4.3)所述16个12比特rs码编码器用于对输入数据进行rs编码,8个12比特rs编码器为一组,组成乒乓结构,所述来自数据缓冲模块的8个12比特数轮流输入到两组rs编码器中;
[0039]
(4.4)所述选通器用于选择数据缓冲模块输出数据的去向,由翻转信号控制轮流选择两组rs编码器;
[0040]
(4.5)所述计数器用于记录rs编码器的写入次数,当每组8个rs编码器写入次数经比较器比较达4000时,计数器停止计时,表示数据处理完成。
[0041]
本发明提供的技术方案的有益效果是:
[0042]
1、本发明解决了当前dna数据存储中信息编码速度慢、处理通量低等问题;
[0043]
2、本发明提出的dna存储专用编码算法硬件电路可以在实现高数据吞吐率的同时,占用较少的硬件逻辑资源。
附图说明
[0044]
图1为本发明方案中dna数据存储高效编码电路架构硬件实现的整体架构;
[0045]
图2为本发明方案中进制转换模块的结构示意图;
[0046]
图3为本发明方案中十六进制转十五进制单元电路的结构示意图;
[0047]
图4为本发明方案中十五进制进位合并单元电路的结构示意图;
[0048]
图5为本发明方案中旋转编码模块的结构示意图;
[0049]
图6为本发明方案中rs编码模块的结构示意图。
具体实施方式
[0050]
为使本发明的目的、技术方案和优点更加清楚,下面对本发明实施方式作进一步地详细描述。
[0051]
参见图1,本发明实施例提供一种高通量dna数据存储高效编码电路,该编码电路包括:控制模块1,进制转换模块2,旋转编码模块3以及线性循环码编码模块4,
[0052]
其中,控制模块1输出的使能信号连接进制转换模块2、旋转编码模块3和线性循环码编码模块4,用于控制数据输入、输出请求的发送以及其余各模块的当前状态显示。进制转换模块2输出的32位十五进制数连接旋转编码模块3,用于将31位二进制数据转换为32位十五进制数。旋转编码模块3输出的32位十五进制数连接旋转编码模块3,用于将32位十五进制数据经循环移位和累加操作转化为适合dna碱基合成的二进制数据。线性循环码编码模块4用于将不断输入的32位数据经串并转换、合并等方式输入线性循环码编码单元得到具有一定纠错能力的编码码字。
[0053]
其中,本发明实施例以伽罗华域g(2
12
)上的rs(4000,3504)编码器为例介绍线性循环码编码算法。
[0054]
参见图2,进制转换模块2包括:控制逻辑电路20,二进制转十六进制单元21、十六进制预转十五进制单元22、十五进制进位合并单元23三个单元,具体实现如下:
[0055]
二进制转十六进制单元21用于将31位二进制数通过最高位添0后,转换为32位的十六进制数。
[0056]
十六进制预转十五进制单元22用于将32位十六进制数通过按位展开转换为32位的十五进制数。
[0057]
十五进制进位合并单元23用于将十五进制数各位之间做预先进位运算,得到简化的十五进制数。
[0058]
十六进制预转十五进制单元22用于将32位十六进制数通过按位展开转换为32位的十五进制数。具体实现如下:
[0059]
十六进制预转十五进制单元22由八个相同且独立的处理单元220构成,其中,处理单元220包括:加法器2200、移位寄存器2201、二路选通器2202、计数器2203。
[0060]
十五进制每一位均可改写成如下形式:
[0061]
pi=23·
clk1+22·
clk2+21·
clk3+20·
clk4。
[0062]
依据上述形式,当第一个时钟上升沿到来时,数据clk1进入处理单元9,处理单元9中的加法器10将数据clk1和移位寄存器11中的0相加通过选通器12存入移位寄存器11,计数器13加一;第二个时钟上升沿到来时,数据clk2进入处理单元9,处理单元9中的加法器10将数据clk2和移位寄存器11中经过移位的数据相加再通过选通器12存入移位寄存器11,计数器13加一;第三个时钟上升沿到来时,数据clk3进入处理单元9,处理单元9中的加法器10将数据clk3和移位寄存器11中经过移位的数据相加再通过选通器12存入移位寄存器11,计
数器13加一;第四个时钟上升沿到来时,数据clk4进入处理单元9,处理单元9中的加法器将10数据clk4和移位寄存器11中经过移位的数据相加再通过选通器12输出,计数器13清零。
[0063]
十五进制进位合并单元23用于将未经进位处理的十五进制数各位之间做进位运算后得到最终的十五进制数,具体实现如下:十五进制进位合并单元23的硬件实现包括寄存器14,15、比较器16、减法器17、加法器18和选通器19。其中,寄存器14,15用于存放两个相近位的十五进制数,存较低位的寄存器14在时钟上升沿到来时与比较器中的十五作比较,若较低位大于等于十五,则较低位减十五,存较高位的寄存器15加一;若较低位小于十五,则较低位输出并输入更高位,重复上述过程直至输入数据。
[0064]
请参阅图1、图3,旋转编码模块2的硬件实现包括:计数器20、加法器21、寄存器22,其中,计数器20用于对输入数据的运算次数记录,输入数据的前四比特数经过加法器21加一、加寄存器22中的值后输出,计数器20加一。当计数器20值计为8时输出运算结果。
[0065]
请参阅图1、图4,rs编码模块3由数据缓冲模块23、16个12比特rs码编码器24、选通器25、计数器26、比较器27构成,其中:
[0066]
数据缓冲模块23用于检测写入响应信号,缓冲三个周期内输入的96比特数据并在第三个周期时发出读出信号,将8个12比特数据输出至8个rs编码器24,包括:缓冲寄存器28,缓冲计数器29,缓冲比较器30以及缓冲选通器31。
[0067]
16个12比特rs码编码器24用于对输入数据进行rs编码,8个12比特rs编码器为一组,组成乒乓结构,来自数据缓冲模块23的8个12比特数轮流输入到两组rs编码器24中。
[0068]
选通器25用于选择数据缓冲模块输出数据的去向,由翻转信号控制轮流选择两组rs编码器24。
[0069]
计数器26用于记录rs编码器24的写入次数,当每组8个rs编码器24写入次数经比较器27比较达4000时,计数器26停止计时,表示数据处理完成。
[0070]
请参阅图1,控制模块4的实现包括:选通器32、计数器33和比较器34。计数器33用于记录写入硬件装置数据次数。选通器32由输入完成信号、写完成信号和读完成信号共同控制,选通读写、仅读、完成和报错四个状态。
[0071]
结合附图,本发明的使用方法如下:将3504*31*6比特原始数据以31位为一组,在硬件装置和输入端握手成功后输入到进制转换模块1。进制转换模块1将31位输入数据转换为32位十五进制表示的数据并发送给旋转编码模块2。旋转编码模块2将输入数据旋转编码成满足连续碱基约束的输出数据并发送至rs编码模块3。rs编码模块3将输入数据一边输出一边生成校验码,最终形成包括3504个192比特信息码和496个192比特校验码的rs码输出。
[0072]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员而说,本发明可以有各种更改和变化。凡是在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
[0073]
本发明实施例提出的硬件电路采用现场可编程门阵列(field programmable gate array,fpga)实现。说明书附图1中的ram存储器可采用fpga芯片中集成的ram模块实现。本发明实施例中线性分组码选取以码长为4000,信息序列长度3504的rs(n,k)码编码器为例,介绍本发明专利中提出的一种dna数据存储专用编码电路的实施效果。
[0074]
本发明实施例对各器件的型号除做特殊说明的以外,其他器件的型号不做限制,只要能完成上述功能的器件均可。
[0075]
本领域技术人员可以理解附图只是一个优选实施例的示意图,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0076]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种dna数据存储高效编码电路,其特征在于,所述电路包括:控制模块、进制转换模块,旋转编码模块以及线性分组码编码模块,其中:控制模块,用于协调控制其余各模块输入、输出请求的发送;进制转换模块,用于将31位二进制数据转换为32位十五进制数;旋转编码模块,用于将十五进制数据转化为适合dna碱基合成的二进制数据;线性分组码编码模块,用于对不断输入的32位数据进行线性分组码编码得到具有纠错能力的码字。2.根据权利要求1所述的一种dna数据存储高效编码电路,其特征在于,所述控制模块用于协调控制其余各模块输入、输出请求的发送,具体实现过程如下:所述控制模块包括状态控制单元和状态显示单元;所述控制状态单元包括一个计数器和一个状态选择器,其中,所述计数器输出的计数值连接所述状态选择器,最后通过计数值控制状态选择器输出不同的状态;所述状态显示单元包括四种不同的工作状态和一个选通器,当状态选择器输出不同的选择信号时,选通器输出不同的工作状态来控制其余各模块的工作和结束。3.根据权利要求1所述的一种dna数据存储高效编码电路,其特征在于,所述进制转化模块用于将31位二进制数据转换为32位十五进制数,具体实现过程如下:所述进制转换模块包括二进制转十六进制单元、十六进制预转十五进制单元、十五进制进位合并单元;所述二进制转十六进制单元是将31位二进制数在最高位添零,四比特为一组,分成八组,每一组即为十六进制下的一位,十六进制中的每一位用h
i
(i∈[0,7],i∈z)表示;所述十六进制预转十五进制单元是将十六进制的基数16改写成(15+1)的形式,使得十五进制中的每一位p
j
(j∈[0,7],j∈z)用十六进制组成的多项式表示;所述十五进制进位合并单元是对十五进制数各位之间做最终的进位运算,得到十五进制数p7p6p5p4p3p2p1p0。4.根据权利要求3所述的一种dna数据存储高效编码电路,其特征在于,所述二进制转十六进制单元是将31位二进制数在最高位添零,四比特为一组,分成八组,每一组即为十六进制下的一位,十六进制中的每一位用h
i
(i∈[0,7],i∈z)表示;具体实现过程如下,利用串并转化的方法将31位串行输入的二进制数据以4比特为一组,按时序输出到表示十六进制的4位寄存器(h0~h7)中,对于最后输出的3比特数据,通过在寄存器h7的最高位填0实现十六进制下的4比特输出。5.根据权利要求3所述的一种dna数据存储高效编码电路,其特征在于,所述十六进制预转十五进制单元是将十六进制的基数16改写成(15+1)的形式,使得十五进制中的每一位p
j
(j∈[0,7],j∈z)用十六进制组成的多项式表示,具体实现过程如下:(2.3.1)十五进制每一位均改写成如下形式:p
i
=23·
clk1+22·
clk2+21·
clk3+20·
clk4(2.3.2)十六进制预转十五进制单元由八个相同且独立的处理单元构成,通过处理单元内部的移位和累加操作实现32位十六进制预转十五进制;(2.3.2)其中,处理单元内部包括两个加法器、一个移位寄存器、一个二路选通器以及一个计数器;(2.3.3)依据(2.3.1)所述形式,当第一个时钟上升沿到来时,数据clk1进入处理单元,
处理单元中的加法器将数据clk1和移位寄存器中的0相加通过选通器存入移位寄存器,计数器加一;第二个时钟上升沿到来时,数据clk2进入处理单元,处理单元中的加法器将数据clk2和移位寄存器中经过移位的数据相加再通过选通器存入移位寄存器,计数器加一;第三个时钟上升沿到来时,数据clk3进入处理单元,处理单元中的加法器将数据clk3和移位寄存器中经过移位的数据相加再通过选通器存入移位寄存器,计数器加一;第四个时钟上升沿到来时,数据clk4进入处理单元,处理单元中的加法器将数据clk4和移位寄存器中经过移位的数据相加再通过选通器输出,计数器清零。6.根据权利要求3所述的一种dna数据存储高效编码电路,其特征在于,所述十五进制进位合并单元是对十五进制数各位之间做最终的进位运算,得到十五进制数p7p6p5p4p3p2p1p0,具体实现过程如下:(2.4.1)所述十五进制进位合并单元的硬件实现包括一个8bit的移位寄存器、一个异或门、一个与门、一个加法器和一个选通器;(2.4.2)所述移位寄存器用于存放两个相近位的十五进制数,寄存器的低4位存入p0,寄存器的高4位存入p1;所述异或门用于实现移位寄存器中的低四位与4’b1111的比较,所述与门用于实现移位寄存器中的低四位清零;(2.4.3)所述移位寄存器中低四位的数据在时钟上升沿到来时与4’1111作异或运算,若结果为0,则将移位寄存器中的低四位与“0”,同时寄存器中的高4位数据加一;否则,将移位寄存器中的低四位数据移位输出,同时将寄存器中的高四位移动到低四位,高四位移入新的数据,重复上述过程直到输出最终的十五进制数。7.根据权利要求1所述的一种dna数据存储高效编码电路,其特征在于,所述旋转编码模块用于将十五进制数据转化为适合dna碱基合成的二进制数据,具体实现过程如下;(3.1)所述旋转编码算法用于将32比特数据以四比特为一组,依次将每组数据加一后与前一组数据加和输出;(3.2)所述旋转编码模块包括一个计数器、两个加法器、一个4bit的寄存器;(3.3)其中,所述计数器用于对输入数据的运算次数记录,输入数据的每四比特数依次经过加法器加一,并再次与寄存器中的值相加后输出,每次运算后计数器加一,当计数器值计为8时输出运算结果。8.根据权利要求1所述一种dna数据存储高效编码电路,其特征在于,所述线性分组码编码模块用于对不断输入的32位数据进行线性分组码编码得到具有一定纠错能力的码字,以伽罗华域g(2
12
)上的rs(4000,3504)编码器为例,具体实现过程如下:(4.1)所述线性分组码编码模块包括数据缓冲模块、16个rs码编码器、一个选通器、一个计数器、一个比较器构成,其中:(4.2)所述数据缓冲模块用于检测写入响应信号,缓冲三个周期内输入的96比特数据并在第三个周期时发出读出信号,将8个12比特数据输出至8个rs编码器,包括缓冲寄存器,缓冲计数器,缓冲比较器以及缓冲选通器;(4.3)所述16个12比特rs码编码器用于对输入数据进行rs编码,8个12比特rs编码器为一组,组成乒乓结构,所述来自数据缓冲模块的8个12比特数轮流输入到两组rs编码器中;(4.4)所述选通器用于选择数据缓冲模块输出数据的去向,由翻转信号控制轮流选择两组rs编码器;
(4.5)所述计数器用于记录rs编码器的写入次数,当每组8个rs编码器写入次数经比较器比较达4000时,计数器停止计时,表示数据处理完成。

技术总结
本发明公开了一种DNA数据存储高效编码电路,包括:控制模块输出的使能信号连接进制转换模块、旋转编码模块和线性循环码编码模块,用于控制数据输入、输出请求的发送以及其余各模块的当前状态显示。进制转换模块输出的32位十五进制数连接旋转编码模块,用于将31位二进制数据转换为32位十五进制数。旋转编码模块输出的32位十五进制数连接旋转编码模块,用于将32位十五进制数据经循环移位和累加操作转化为适合DNA碱基合成的二进制数据。线性循环码编码模块用于将不断输入的32位数据经串并转换、合并等方式输入线性循环码编码单元得到具有一定纠错能力的编码码字。本发明提出的DNA存储专用编码算法硬件电路可以在实现高数据吞吐率的同时,占用较少的硬件逻辑资源。占用较少的硬件逻辑资源。占用较少的硬件逻辑资源。


技术研发人员:陈为刚 郭健 胡文杰 张洪瑞 李佳蓉
受保护的技术使用者:天津大学
技术研发日:2023.05.30
技术公布日:2023/8/23
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐