用于所存储的多核苷酸的取回的引物设计的制作方法

文档序号:18745006发布日期:2019-09-21 02:13阅读:239来源:国知局
用于所存储的多核苷酸的取回的引物设计的制作方法

多核苷酸序列可以排列成有机分子的线性链,有机分子是含氮碱基,诸如在脱氧核糖核酸(DNA)的情况下的腺嘌呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)、胞嘧啶(C)以及在核糖核酸(RNA)的情况下的T、G、C和尿嘧啶(U)。多核苷酸序列可以是天然存在的或合成的。在一些情况下,多核苷酸序列中所包括的个体碱基可以与另一多核苷酸序列中的互补碱基配对以产生多核苷酸序列的双链排列。例如,在脱氧核糖核酸(DNA)的情况下,T和A是互补的,并且G和C是互补的。在核糖核酸(RNA)的情况下,T和U是互补的,并且G和C是互补的。

两个多核苷酸序列中的互补核苷酸可以彼此对准以形成双链多核苷酸。多核苷酸序列的两个端(称为5'和3'端)在化学上是不同的。多核苷酸序列通常以左侧的5'核苷酸端开始表示。不同链之间的相互作用可以基于序列来预测:如果它们是互补的,则两条单链可以彼此结合并且形成双螺旋。双螺旋中的两条链具有相反的方向性(5'端附接到另一条链的3'端),因此这两个序列是彼此的“反向互补”。两条链不需要完全互补以彼此结合。

多核苷酸序列复制可以利用通常称为“聚合酶”的酶,该酶附接到多核苷酸序列的一部分并且产生该多核苷酸序列的互补链。例如,聚合酶可以附接到与多核苷酸序列的端上的靶区域结合的引物,并且通过以下方式沿着核苷酸的链移动:标识链中的个体核苷酸,生成互补核苷酸,并且对序列中的下一核苷酸重复该过程。多核苷酸复制技术可以用于从单个多核苷酸序列产生数千个双链多核苷酸序列。

在一些情况下,多核苷酸序列中所包括的核苷酸之间的相互作用可能导致线性链失去其结构并且变得排列成二级结构。例如,多核苷酸序列的部分可以折叠以产生环或发夹结构。多核苷酸序列的二级结构的形成可能干扰这些多核苷酸序列的复制。另外,在核苷酸序列的末端以外的位置处对针对引物的结合位点的复制可能导致在复制过程中产生的双链多核苷酸序列的错误。为了说明,在复制过程中产生的一些双链多核苷酸序列可能是不完整的和/或不对应于模板多核苷酸序列。



技术实现要素:

提供本发明内容是为了以简化的形式介绍一些概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容不旨在标识所要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求保护的技术方案的范围。

可以将数字数据编码为一系列核苷酸,并且可以生成编码数字数据的一个或多个多核苷酸序列。包括与数字数据相对应的核苷酸排列的多核苷酸序列的部分在本文中可以称为“有效载荷(payload)”。除了包括有效载荷之外,多核苷酸序列还可以包括其他区域,这些其他区域包括可以用于编码其他信息的附加核苷酸排列。附加信息可以包括用于重新组装从多个多核苷酸序列解码的二进制数据的寻址信息。多核苷酸序列还可以包括可以用于其他目的的碱基排列。例如,多核苷酸序列可以包括包括与多核苷酸序列复制技术相关地使用的核苷酸的区域。在一些情况下,在多核苷酸复制技术期间引物可以与之结合的多核苷酸序列的区域在本文中可以称为“引物靶”。引物是可以与引物靶结合的核苷酸的序列,并且聚合酶可以利用引物作为起始点来复制靶序列的核苷酸。引物和对应的引物靶具有互补的核苷酸序列。

可以使用多个准则来评估引物,这些准则可以指示用作要用于作为多核苷酸复制的一部分来合成互补多核苷酸序列的起始序列的适合性。评估准则可以对应于二级结构形成、G/C含量、解链温度、A/T区域的长度、G/C区域的长度、引物二聚体形成、引物的核苷酸序列与可能存在的其他核苷酸序列的相似性、或其组合。例如,可以对照评估准则评估引物的多个特性。在一些情况下,可以根据评估准则对引物的个体核苷酸进行评分。个体核苷酸的得分可以被汇总并且与阈值进行比较。在引物的汇总得分低于阈值得分的情况下,可以将引物添加到可以用于生成可以被复制的多核苷酸序列的一组引物。

可以生成包括有效载荷和至少一个引物靶的多核苷酸序列,至少一个引物靶对应于来自适合用于多核苷酸复制的一组引物的引物。可以标识与有效载荷相关联的引物,使得引物靶中的核苷酸序列与有效载荷的核苷酸序列的一个或多个部分之间的重叠量最小化。另外,在一些情况下,引物靶的序列与有效载荷组的序列之间的重叠量可以最小化。重叠量可以通过比较引物靶中所包括的核苷酸序列与有效载荷中的各种核苷酸区域来确定。在各种实现中,重叠量可以指示引物靶序列与有效载荷序列之间的序列一致性量。在引物靶的核苷酸序列与有效载荷的至少一个区域的核苷酸序列之间的重叠量大于阈值量的情况下,可以执行一个或多个补救动作。为了说明,可以将另一引物与有效载荷相关联,并且可以在与新引物相对应的新引物靶的核苷酸序列与有效载荷的区域的核苷酸之间进行附加的比较,以确定任何重叠区域。在另一实现中,由有效载荷编码的二元数据可以被随机化,并且新的核苷酸序列可以针对有效载荷被生成并且与引物进行比较以确定引物靶的核苷酸序列与有效载荷的新核苷酸序列的区域之间的重叠量小于阈值重叠量。

附图说明

参考附图阐述具体实施方式。在附图中,附图标记的(多个)最左边的数字标识首次出现附图标记的图。在不同图中使用相同的附图标记表示相似或相同的项。

图1示出了产生用于编码数字数据的多核苷酸序列的示例过程的示意图。(SEQ ID NO:1-4)

图2示出了产生用于取回由多核苷酸序列编码的数字数据的一组引物的示例过程的示意图。

图3示出了包括根据多个引物评估准则的针对引物中所包括的核苷酸的示例评分的表格。

图4示出了产生具有编码数字数据的有效载荷的多核苷酸序列的示例过程的流程图,该数字数据包括与多核苷酸序列的一个或多个引物靶区域的最小重叠量。

图5示出了使用一组引物和多个信息有效载荷组装多核苷酸序列的示例过程的示意图。(SEQ ID NO:1-6)

图6示出了产生用于存储数据的多核苷酸序列的示例计算设备的框图。

具体实施方式

本公开描述了用以提高由多核苷酸编码的数据的随机访问准确性和提高多核苷酸数据存储系统中的多核苷酸序列复制和扩增(amplification)的效率和特异性的技术。由计算设备产生的大部分数据存储在包括各种磁存储介质、光存储介质和/或固态存储介质的传统数据存储系统上。传统数据存储系统的容量未跟上计算设备产生数据的速率。诸如DNA的多核苷酸序列可以用于以超过传统存储系统容量的规模来存储非常大量的数据。包括在多核苷酸序列中的核苷酸排列(例如,CTGAAGT......)可以对应于对数据编码的位排列(例如,11010001......)。数据可以包括音频数据、视频数据、图像数据、文本数据、软件、其组合等。

多核苷酸序列可以存储在一个或多个容器中,一个或多个容器也可以包含诸如液体的培养基。在特定实现中,多核苷酸序列可以存储在诸如水的液体中。每个容器可以存储编码数字数据的多核苷酸序列。响应于接收到取回特定数字数据的请求,可以标识编码所请求的数据的一个或多个多核苷酸序列。可以从包括与所请求的数据相对应的多核苷酸序列的容器中获取样品。可以对多核苷酸序列进行解码以产生可以由计算设备处理的数字数据。

对由多核苷酸序列存储的数据的取回可以使用复制对所请求的数据进行编码的多核苷酸序列的过程来实现。例如,聚合酶链式反应(PCR)可以用于复制存储所请求的数据的多核苷酸序列。多核苷酸序列复制可以利用通常称为“聚合酶”的酶,其附接到多核苷酸序列并且产生该多核苷酸序列的互补链。聚合酶可以附接在与多核苷酸序列中的引物靶偶联的引物处。多核苷酸复制技术可以用于从起始多核苷酸序列产生互补多核苷酸序列,以产生与起始多核苷酸序列相对应的数千个双链多核苷酸序列。

在特定实现中,一个或多个引物靶可以与有效载荷相关联,有效载荷编码正在被请求的数字数据的至少一部分,并且有效载荷可以被包括在存储在特定容器中的多核苷酸序列中。包括与引物靶互补的核苷酸序列的引物可以被添加到容器并且被附接到引物靶。使用引物和单链靶多核苷酸序列的聚合酶可以从起始多核苷酸序列产生足够数目的双链多核苷酸序列,使得来自容器的样品的测序可以产生表示与有效载荷相对应的起始核苷酸序列的输出。测序可以由被称为测序仪的设备执行,该装置可以提供本文中称为读段的原始序列数据输出。读段中的每个位置是由测序仪基于由测序仪的组件感测的核苷酸的性质而确定的个体核苷酸。测序仪感测到的性质可以取决于所使用的特定测序技术而变化。然后可以解码表示与有效载荷相对应的核苷酸序列的输出以产生所请求的数字数据。

当引物靶的核苷酸序列与有效载荷的一部分具有阈值重叠量时,在多核苷酸序列的复制中可能发生错误。重叠可以对应于引物靶的核苷酸序列中与有效载荷的一部分的核苷酸序列中的相同位置的位置中的核苷酸。如本文中使用的,重叠也可以称为序列一致性。为了说明,具有20个核苷酸的序列的引物靶可以在第三位置具有A,并且有效载荷的一部分的序列也可以在第三位置具有A。在这种情况下,引物靶和有效载荷的一部分将在第三位置重叠。引物靶与有效载荷之间的重叠量对应于引物靶和有效载荷的一部分中的相同位置具有相同核苷酸的实例的数目。如果引物靶与有效载荷之间存在阈值重叠量,则在包括有效载荷的多核苷酸序列的复制期间,与引物靶互补的引物可以附接到有效载荷的与引物靶重叠的部分,而不是附接到引物靶本身。另外,可以基于多核苷酸序列的热力学性质来预测引物和有效载荷的多核苷酸序列的结合。例如,一些热力学性质(诸如焓、熵和吉布斯自由能)可以用于预测引物的核苷酸序列与有效载荷的核苷酸序列的结合。在引物结合到有效载荷而不是引物靶的情况下,聚合酶将从引物所附接到的有效载荷的一部分开始复制,而不是从引物靶开始复制。因此,被复制的多核苷酸序列可能对应于有效载荷的一部分而不是整个有效载荷。当对用于存储正在被取回的数字数据的多核苷酸序列进行测序时,错误的多核苷酸序列的复制可能导致错误。

此外,多核苷酸复制中的错误可以基于引物的某些特性而发生。例如,由引物的核苷酸序列引起的二级结构形成可能在多核苷酸复制过程中产生错误。在另一示例中,引物二聚体形成可能在多核苷酸复制中产生错误。引物的解链温度也可能影响多核苷酸复制的准确性。可能影响多核苷酸复制过程的引物的其他特性可以对应于引物的G/C含量、引物的A/T区域的长度、引物的G/C区域的长度、以及引物的核苷酸序列之间的分化。

本文中描述的实现通过最小化或消除引物的核苷酸序列与编码数字数据的有效载荷的核苷酸序列而不是引物靶结合的可能性来提高数据取回操作中多核苷酸复制的特异性和效率。通过最小化或消除引物可能与有效载荷而不是引物靶结合的可能性,也可以最小化在用于取回数据的核苷酸序列的复制和扩增过程中可能发生的错误的数目。另外,本文中描述的实现可以利用多核苷酸序列中具有有助于多核苷酸序列的高效和准确复制的特性的引物。

为了便于理解,将本公开中讨论的过程描绘为表示为独立块的单独操作。然而,这些单独描述的操作不应当被解释为必然依赖于它们的性能。描述过程的顺序不旨在被解释为限制,并且可以以任何顺序组合任何数目的所描述的过程框以实现过程或替代过程。此外,还可以修改或省略所提供的操作中的一个或多个。

图1示出了产生用于编码数据的多核苷酸序列的示例过程100的示意图。在102处,过程100可以包括获取数字数据104。数字数据104可以包括可以由计算设备处理的1和0的序列。数字数据104可以包括与一个或多个应用相关的输入和/或输出。在说明性实现中,数字数据104可以与音频内容、视频内容、图像内容或文本内容中的至少一个相关。

在106处,过程100可以包括将数字数据104编码为一个或多个核苷酸序列,诸如一组多核苷酸序列108。可以根据将数字数据104的一个或多个位与一个或多个核苷酸相关联的一种或多种技术来执行将数字数据104编码为多核苷酸序列组108。在一些实现中,第一组位可以与第一核苷酸相关联,第二组位可以与第二核苷酸相关联,第三组位可以与第三核苷酸相关联,并且第四组位可以与第四核苷酸相关联。在一个说明性示例中,位对00可以对应于第一核苷酸,诸如A;第二位对01可以对应于第二核苷酸,诸如C;第三位对10可以对应于第三核苷酸,诸如G;以及第四位对11可以对应于第四核苷酸,诸如T。在另一说明性示例中,二进制数据104可以被映射到基4(base-4)串,其中基4中的每个数字映射到表示核苷酸的相应字母。为了说明,0、1、2和3每个可以映射到A、C、G或T之一。在另外的说明性示例中,二进制数据104可以映射到基3串,其中核苷酸基于旋转码映射到基3串的每个数字(例如,0、1、2)。可以根据以下惯例执行特定说明性三元编码:

过程100还可以包括在110处生成一组引物112。一组引物110可以包括核苷酸序列,在某些情况下,该核苷酸序列包括比用于编码数字数据104的一组多核苷酸108中包括的多核苷酸更少的个体核苷酸。在其他情况下,一组引物110中的一个或多个引物可以包括比一组多核苷酸序列108中包括的一个或多个多核苷酸更多的核苷酸。在一些实现中,一组引物112中包括的引物可以包括在至少3个核苷酸、至少6个核苷酸、至少9个核苷酸、至少12个核苷酸、至少15个核苷酸、至少18个核苷酸、至少21个核苷酸、至少24个核苷酸、至少27个核苷酸或至少30个核苷酸。另外,一组引物112中包括的引物可以包括不大于100个核苷酸、不大于90个核苷酸、不大于80个核苷酸、不大于60个核苷酸、不大于60个核苷酸、不大于55个核苷酸、不大于55个核苷酸、不大于45个核苷酸、不大于42个核苷酸、不大于40个核苷酸、不大于38个核苷酸、不大于35个核苷酸、或不大于32个核苷酸。在各种实现中,一组引物112中包括的引物可以通过产生多个核苷酸的伪随机排列来生成。

可以对照一个或多个准则评估引物以确定引物是否要被包括在一组引物112中并且用于多核苷酸序列复制操作。在一些情况下,对照一个或多个准则评估引物可以包括关于彼此对引物的评估以及引物之间的可能阻碍使用引物进行的多核苷酸的扩增和复制的相互作用。用于评估引物的准则可以包括引物的G/C含量的量、包括A和T的引物区域的长度、包括G和C的引物区域的长度、由引物形成的二级结构的避免、引物的解链温度、引物二聚体形成的避免、其组合等。该准则可以用于生成单个引物的得分。在一些情况下,可以为个体引物中包括的每个碱基生成得分,并且可以汇总个体碱基得分。可以将个体引物的得分与阈值得分进行比较,并且可以将得分低于阈值得分的引物添加到一组引物112,并且可以从一组引物112中排除得分高于阈值得分的引物。

此外,在114处,可以确定引物靶122的核苷酸与有效载荷108中包括的核苷酸之间的重叠量。核苷酸之间的重叠可以指示引物靶的与有效载荷的区域相同的核苷酸的数目。也就是说,至少一个有效载荷108的区域中的核苷酸和相同并且也位于相同位置的至少一个引物靶122的核苷酸被认为是重叠的。例如,至少一个有效载荷108中的位置2处的A和至少一个引物靶122中的位置2处的A将被标识为重叠。以这种方式,将个体引物靶122的每个核苷酸与个体有效载荷108的每个核苷酸进行比较。可以执行将个体有效载荷108的连续核苷酸的不同区域与个体引物靶122的核苷酸进行比较的多次迭代,以确定个体有效载荷108与个体引物靶122之间的总重叠量。另外,114的操作可以对于个体引物靶122和不同的有效载荷108重复多次。以这种方式,可以标识可以结合相应有效载荷108而使用的多于一个引物靶122。在各种实现中,有效载荷108可以与多于一个的数据文件相关联,并且个体引物靶122的区域可以与个体有效载荷108进行比较,以确定可以关于多个数据文件的有效载荷108使用的引物靶122。

在116处,过程100可以关于阈值来确定个体引物靶122与个体有效载荷108之间的重叠量。当个体引物靶122与个体有效载荷108之间的重叠量小于阈值时,过程100可以进行到118,在118处,可以使用有效载荷108和引物靶122来设计核苷酸序列,该序列可以被合成,并且该序列可以被存储以用于稍后当请求访问与有效载荷108相关联的信息时,使用与至少一个引物靶122相对应的引物进行取回。当个体引物靶122与个体有效载荷108之间的重叠量大于阈值量时,过程100可以移动到120,在120处,执行补救动作。补救动作可以减少有效载荷108与引物靶122之间的重叠量。在特定实现中,关于阈值来确定个体引物靶122与个体有效载荷108之间的重叠量可以包括确定个体引物靶122与个体有效载荷108之间的相似性度量。在相似性度量低于阈值的情况下,过程可以移动到118,并且在相似性度量至少是阈值的情况下,过程可以移动到120。

特别地,在118处,可以设计多核苷酸序列,该多核苷酸序列包括用于对数字数据104编码的有效载荷108和与来自一组引物112的引物相对应的引物靶122。多核苷酸序列可以包括个体有效载荷108和来自一组引物112的一个或多个引物。在一些实现中,与每个有效载荷108相关联的一个或多个引物112可以以任意方式分配给个体有效载荷108。在说明性实现中,多核苷酸序列可以包括有效载荷和与来自引物池112的一个或多个引物相对应的两个引物靶。与相应有效载荷108相关联的引物靶中的每一个可以包括不同的核苷酸序列。在一些实现中,多核苷酸序列可以包括在多核苷酸序列的第一端上的第一引物靶和在多核苷酸序列的第二端上的第二引物靶。例如,多核苷酸序列可以包括在3'端上的第一引物靶和在5'端上的第二引物靶。引物靶可以用作标记多核苷酸复制过程的起始点和多核苷酸复制过程的终点的端点。在3'端上的引物靶可以用于正向上的复制,并且在5'端上的引物靶可以用于反向上的复制。

在118处组装的多核苷酸序列还可以包括对其他信息编码的一个或多个核苷酸的区域。例如,多核苷酸序列可以包括用于取回二进制数据104的信息。在一些实现中,数字数据104可以被分成多个串,每个串由对应多核苷酸序列的有效载荷108编码。寻址信息可以用于标识包括对数字数据104编码的有效载荷108的不同多核苷酸序列。寻址信息还可以指示多核苷酸序列将被解码以重建数字数据104中包括的位的顺序。在118处组装的多核苷酸序列还可以包括与诸如错误校正信息等附加信息相对应的一个或多个区域。另外,在一些示例中,引物靶122可以编码信息,诸如寻址信息和/或在使用多核苷酸序列的对数字数据104的取回中使用的密钥。

在特定实现中,还可以将包括在多核苷酸序列中的附加信息(诸如寻址信息和/或错误校正信息)与引物靶122进行比较,以确定引物靶122与附加信息之间的重叠量。附加信息可以被包括在多核苷酸序列的一个或多个元数据区域中。在一些情况下,可以将与附加信息相关的核苷酸与个体引物靶122的核苷酸进行比较,以确定对附加信息编码的核苷酸与个体引物靶122的核苷酸之间的重叠量。例如,可以确定多核苷酸的元数据区域与引物靶122之间的重叠量。在各种实现中,如果引物靶122中的一个或多个与相关于附加信息的核苷酸之间的重叠量大于阈值,则可以修改一个或多个引物靶122的核苷酸和/或附加信息的核苷酸,以减少一个或多个引物靶122与相关于附加信息的核苷酸之间的重叠量。此外,可以确定元数据区域与个体有效载荷108之间的重叠量。在多核苷酸序列的元数据区域与个体有效载荷108之间的重叠量大于阈值的情况下,可以修改个体有效载荷108的核苷酸和/或元数据区域的核苷酸以减少重叠量。

设计多核苷酸序列可以包括生成元数据存储组件,诸如指示与每个有效载荷相关联的引物靶的数据表和/或与每个有效载荷相关联的其他信息。例如,数据存储结构可以指示有效载荷和由有效载荷编码的数字数据。而且,数据存储结构可以指示包括有效载荷的多核苷酸序列中所包括的一个或多个引物靶。另外,数据存储结构可以指示与有效载荷相对应的多核苷酸序列中所包括的寻址信息和/或密钥。

在设计多核苷酸序列之后,可以合成并且存储多核苷酸序列。多核苷酸序列的合成可以使用自动化寡核苷酸合成技术来进行,例如诸如集成DNA技术和BioAutomation等公司采用的技术。在合成多核苷酸序列之后,可以将多核苷酸序列存储在培养基中。在一些实现中,来自多个数字文件的数据可以由存储在一个或多个液体池中的多个多核苷酸序列编码。由多核苷酸序列编码的数据可以通过以下方式来取回:从存储多核苷酸序列的一个或多个池获取样品,使用多核苷酸复制技术扩增靶多核苷酸序列,然后对样品测序。扩增过程可以产生包括靶多核苷酸序列的很多副本的扩增产物。术语“扩增”可以是指靶多核苷酸序列的副本数目的“指数”增加,并且可以用于描述选择的多核苷酸序列的数目的线性和指数增加。

在120处,可以基于确定至少一个引物靶的核苷酸序列与有效载荷的核苷酸序列之间的重叠量大于阈值量来执行补救动作。在其他情况下,响应于相对于阈值重叠量应用于个体有效载荷108与个体引物靶122之间的重叠量的一个或多个公式,可以触发补救动作。例如,可以将个体有效载荷108与个体引物靶122之间的重叠量的平均或均值、以及标准偏差与阈值重叠量进行比较。在这些情况下,阈值重叠量可以与针对所有有效载荷108和所有引物靶122的总重叠量相关。可以至少部分地基于有效载荷108与引物靶122之间的汇总重叠大于汇总阈值重叠或者至少部分地基于有效载荷108与引物靶122之间的汇总重叠在汇总阈值重叠的一个或多个标准偏差内,来执行补救动作。补救动作可以包括将不同的替代引物靶的核苷酸序列与有效载荷的核苷酸序列进行比较。在这些情况下,过程100可以返回到114,并且可以将不同引物靶的核苷酸序列与有效载荷的核苷酸序列进行比较,以确定不同引物靶与有效载荷之间的重叠量。补救动作还可以包括修改引物靶的一个或多个核苷酸,以减少有效载荷与引物靶之间的重叠量。

在一些实现中,在120处执行的补救动作可以包括随机化数字数据104。例如,可以将随机化算法应用于数字数据104以产生随机化的数字数据。在各种实现中,随机化的数字数据可以通过使用随机化算法生成一串数字(例如,一串二进制数字)并且在数字数据104与数字串之间执行异或(XOR)运算来产生。然后可以对随机化的数字数据进行重新编码,并且编码随机化的数字数据的有效载荷的新的替代核苷酸序列可以与用于编码数字数据104的先前核苷酸序列不同。在这些情况下,过程100可以返回到114,并且然后,可以将编码随机化的数字数据的有效载荷的新的替代核苷酸序列与对应于引物池112的引物的一个或多个引物靶122进行比较,以确定重叠量。在各种实现中,在有效载荷的新的替代核苷酸序列与引物靶的核苷酸序列之间的重叠量小于阈值量之前,可以将数字数据104随机化多次。在各种实现中,用于产生随机化的数字数据的位串可以存储在数据结构中,执行随机化的计算设备可访问该数据结构。在特定实现中,位串可以由根据过程100产生的多核苷酸序列的元数据中的一个或多个核苷酸编码。用于编码在随机化过程中使用的位串的序列单独地或与元数据的其他核苷酸组合与有效载荷108的区域的重叠量可以小于阈值。

图2示出了产生用于选择性扩增多核苷酸序列的一组引物的示例过程200的示意图。在202处,基于一个或多个引物评估准则206来评估引物204的核苷酸。在一些实现中,根据引物评估准则206来评估引物204的每个核苷酸。另外,可以根据引物评估准则206来整体评估引物204,或者可以根据引物评估准则206来评估引物204的一组或多组核苷酸。

引物评估准则206可以包括由引物204对二级结构的形成。在一些情况下,核苷酸的排列可以形成二级结构,诸如环结构或结型结构。二级结构的形成可以基于引物204的核苷酸之间的引起核苷酸彼此吸引的相互作用而发生。当引物204的核苷酸彼此吸引时,引物204的核苷酸的线性排列可能被破坏。有时可以基于引物的互补核苷酸之间的相互作用形成二级结构。由引物形成二级结构可以抑制引物与多核苷酸序列的结合,从而抑制该多核苷酸序列的复制。

引物评估准则206还可以包括引物二聚体形成。在多核苷酸复制期间,当两个引物的末端处的核苷酸互补并且变为附接时,可以发生引物二聚体形成。在一些情况下,引物二聚体形成可以在引物的3'端处发生。在核苷酸复制过程期间的引物二聚体的形成可以减少可用于多核苷酸序列的复制的未结合引物的数目。因此,在通过可以形成引物二聚体的引物扩增的多核苷酸的测序中可能发生错误。通过在将引物与相应有效载荷相关联之前评估引物,可以最小化多核苷酸复制中的错误。

另外,引物评估准则206可以包括评估引物204的A/T区域的长度和引物204的G/C区域的长度。引物的A/T区域的长度和引物204的G/C区域的长度可能影响引物与互补单链多核苷酸分离的温度(“解链温度”),这又可能影响多核苷酸复制的准确性。增加的G/C含量增加了解链温度,而相反地增加的A/T含量降低了解链温度。特别地,用于破坏G与C之间的结合的能量大于用于破坏A与T之间的结合的能量。因此,多核苷酸中的G/C含量越大,多核苷酸的解链温度越高。

此外,引物评估准则206可以包括G/C含量。在一些实现中,引物池中包括的引物的G/C含量可以为至少38%、至少40%、至少42%、至少45%、至少48%或至少50%。此外,引物池中包括的引物的G/C含量可以不大于62%、不大于60%、不大于58%、不大于55%、或不大于52%。在说明性示例中,引物池中包括的引物的G/C含量可以为38%至62%。在其他的一些说明性示例中,引物池中包括的引物的G/C含量可以为42%至58%。在另外的说明性示例中,引物池中包括的引物的G/C含量可以为45%至55%。在特定的说明性示例中,引物池中包括的引物的G/C含量可以为约50%,而引物池中包括的引物的A/T含量可以为约50%。

引物评估准则206可以包括解链温度。解链温度(Tm)可以是指DNA双链体的一半将解离成单链的温度,并且指示双链体稳定性。在特定实现中,可以基于解链温度是否为52℃至62℃来评估引物。另外,可以基于解链温度是否为53℃至61℃来评估引物。此外,可以基于解链温度是否为55℃至60℃来评估引物。

另外,引物评估准则206可以包括核苷酸分化。核苷酸分化是指引物的任何两个核苷酸之间的差异。引物204的核苷酸分化量可以通过将引物204中包括的每个核苷酸与引物204中包括的每个其他核苷酸进行比较来确定。核苷酸分化量可以表示为引物204的彼此不同的核苷酸的百分比。在一些实现中,要包括在用于组装多核苷酸的引物池中的引物的核苷酸分化量可以为至少20%、至少22%、至少25%、至少28%、至少30%、至少32%、或至少35%。在一个说明性实现中,要包括在用于组装多核苷酸的引物池中的引物的核苷酸分化量可以为至少30%。

引物评估准则206可以包括引物相似性。引物相似性可以对应于一个引物的与另一引物的核苷酸相同的核苷酸的数目。在一些情况下,引物相似性涉及被认为用作引物的两个核苷酸序列之间的相似性,而不管不同序列中的核苷酸的顺序如何。也就是说,两个序列之间的相似性可以至少部分地基于两个序列中的A的数目、两个序列中的G的数目、两个序列中的T的数目、以及两个序列中的C的数目。在一些情况下,序列对准算法可以用于确定核苷酸序列的相似性。在一个说明性示例中,基本局部对准搜索工具(BLAST)可以用于确定核苷酸序列之间的相似性量。在特定实现中,在编码数字数据的多核苷酸序列中使用的引物池中所包括的核苷酸之间的相似性量可以不大于60%、不大于55%、不大于50%、不大于45%、不大于40%、或不大于35%。

基于引物评估准则206评估引物204可以生成引物评分208。引物评分208可以包括引物204的多个得分。在一些情况下,引物评分208中包括的得分可以对应于引物204中包括的每个核苷酸。例如,引物评分208可以对应于相对于每个引物评估准则206对引物204的每个核苷酸的评估。为了说明,可以根据二级结构准则评估引物204的第一核苷酸以生成第一得分。然后可以根据引物二聚体形成准则评估引物204的第一核苷酸,并且可以产生第二得分。引物评分208中包括的得分可以是数字,诸如+1、0、-1。引物评分208中包括的得分也可以根据标度来布置,诸如从1到10的标度。

与引物评分208相关联地生成的得分可以提供核苷酸或引物204整体与理想情况的偏差的指示。在各种实现中,核苷酸或核苷酸序列的理想情况可以根据每个引物评估准则206的与多核苷酸扩增中的最小错误数相对应的度量来定义。例如,引物的理想情况可以对应于指定范围的解链温度、形成二级结构的阈值概率、引物二聚体形成的阈值概率、A/T区域的最大长度、G/C区域的最大长度、G/C含量的范围、特定的核苷酸分化量、阈值核苷酸相似性量、或其组合。

在一个说明性实现中,当核苷酸参与引起引物204具有二级结构时,可以针对核苷酸生成第一得分,而当核苷酸不引起引物204具有二级结构时,可以生成第二得分。在一些情况下,引物评分208可以至少部分地基于引物204将产生二级结构的概率。在各种实现中,确定引物204将产生二级结构的概率为至少阈值概率可以引起第一得分被分配给引物204的核苷酸序列,而引物204将产生二级结构的概率小于阈值概率可以引起第二不同得分被分配给引物204的核苷酸序列。

在另一说明性实现中,引物204的核苷酸可以基于核苷酸可以参与与另一引物形成二聚体的预测而接收特定得分。在一些实现中,核苷酸可以基于核苷酸将参与引物二聚体形成的第一概率来接收第一得分,并且可以基于核苷酸将参与引物二聚体形成的第二概率来接收第二不同得分。例如,可以指定核苷酸将参与引物二聚体形成的阈值概率,并且参与引物二聚体形成的概率满足阈值概率的核苷酸将被分配第一得分,并且参与引物二聚体形成的概率不满足阈值概率的核苷酸将被分配第二不同得分。在其他的一些示例中,标度可以为核苷酸参与引物二聚体形成的各种概率范围指定得分。为了说明,参与引物二聚体形成的第一概率在第一范围内(例如,0%至10%)的第一核苷酸可以被分配第一得分,参与引物二聚体形成的第二概率在第二范围内(例如,11%至30%)的第二核苷酸可以被分配第二得分,并且参与引物二聚体形成的第三概率在第三范围内(例如,在30%以上)的第三核苷酸可以被分配第三得分。

另外,可以基于被包括在特定长度的A/T区域中来为核苷酸分配得分。例如,具有第一长度的A/T区域中包括的第一核苷酸可以被分配第一得分,并且具有第二长度的A/T区域中包括的第二核苷酸可以被分配第二不同得分。特定长度的A/T区域中包括的每个核苷酸可以被分配相同的得分。在各种实现中,可以指定A/T区域的阈值长度,并且满足或超过阈值长度的A/T区域中包括的核苷酸可以被分配第一得分,而小于阈值长度的A/T区域中包括的另一核苷酸可以被分配第二不同得分。在一些情况下,A/T区域的多个长度范围可以与不同得分相关联,不同得分可以基于引物204的A/T区域的长度所落入的范围而被分配给引物204的A/T区域中包括的核苷酸。

此外,可以基于被包括在特定长度的G/C区域中来为核苷酸分配得分。例如,具有第一长度的G/C区域中包括的第一核苷酸可以被分配第一得分,并且具有第二长度的G/C区域中包括的第二核苷酸可以被分配第二不同得分。特定长度的G/C区域中包括的每个核苷酸可以被分配相同的得分。在各种实现中,可以指定G/C区域的阈值长度,并且满足或超过阈值长度的G/C区域中包括的核苷酸可以被分配第一得分,而小于阈值长度的G/C区域中的另一核苷酸可以被分配第二得分。在一些情况下,G/C区域的多个长度范围可以与不同得分相关联,不同得分可以基于引物204的G/C区域的长度所落入的范围而被分配给引物204的G/C区域中包括的核苷酸。

此外,可以基于引物204的G/C含量来为核苷酸分配得分。在一些实现中,引物204的每个G或C可以基于引物204的总G/C含量而被分配得分。例如,基于引物204的G/C含量被包括在特定范围(例如,45%至55%)内,可以为引物204的每个G和C分配与该特定范围相关联的得分。另外,在引物204的G/C含量在特定范围之外的情况下,引物204的每个G和C可以被分配与特定范围之外的G/C含量相关联的另一得分。在一些情况下,多个G/C含量范围可以与不同得分相关联,不同得分可以基于引物204的G/C含量所落入的范围而被分配给引物204的核苷酸。

可以基于引物204的解链温度来为引物204的核苷酸分配得分。在说明性实现中,分配给引物204的每个核苷酸的得分可以基于引物204的解链温度被包括在解链温度的范围中。在一些实现中,引物204的核苷酸可以基于引物204的解链温度在第一解链温度范围内而被分配第一得分,并且如果引物204的解链温度被包括在第二解链温度范围内,则引物204的核苷酸可以被分配第二不同得分。可以基于解链温度阈值为引物204的核苷酸分配得分。为了说明,当引物204的解链温度低于阈值解链温度时,引物204的核苷酸可以被分配第一得分,并且当引物204的解链温度满足或超过阈值解链温度时,引物204的核苷酸可以被分配第二不同得分。在一些情况下,多个解链温度范围可以与不同得分相关联,不同得分可以基于引物204的解链温度所落入的范围而被分配给引物204中包括的核苷酸。

可以基于引物204的核苷酸之间的分化量来分配引物204的核苷酸。在各种实现中,可以基于引物204的核苷酸之间的分化量小于阈值分化量,为每个核苷酸分配得分。当引物204的核苷酸之间的分化量满足或超过阈值分化量时,引物204的核苷酸可以被分配另一得分。在一些实例中,引物的核苷酸分化量可以被分成多个范围,并且引物204的核苷酸关于核苷酸分化的得分可以基于核苷酸分化量所落入的范围来确定。

可以基于引物204的核苷酸序列与其他引物的核苷酸序列之间的相似性量来分配引物204的核苷酸。例如,当引物204与一个或多个附加引物之间的相似性量满足或超过阈值相似性时,引物204的核苷酸可以被分配第一得分,并且当引物204与一个或多个附加引物之间的相似性量小于阈值相似性,引物204的核苷酸可以被分配第二不同得分。在一些情况下,引物之间的相似性可以被分成多个范围,并且引物204的核苷酸关于引物204与一个或多个附加引物之间的序列相似性的得分可以基于序列相似性所落入的范围来确定。

在其他的一些情况下,引物评分208可以根据引物评估准则206中的每一个对应于引物204的相应得分。以这种方式,引物204可以具有针对第一引物评估准则206(诸如二级结构)的第一得分、关于第二引物评价准则206(诸如引物二聚体形成)的第二得分,等等。

在210处,过程200包括利用核苷酸和/或引物评分208来确定引物204的汇总得分。在一些实现中,可以针对每个引物评估准则206来确定引物204的每个核苷酸的得分。在这些情况下,引物204的汇总得分可以通过针对引物204组合引物204的每个核苷酸针对每个引物评估准则206的得分来确定。在附加的一些实现中,可以针对每个引物评估准则206作为整体确定引物204的得分。在这些情况下,引物204的汇总得分可以通过针对引物204组合每个引物评估准则206的得分来确定。

在212处,过程200包括确定汇总得分是否大于阈值得分。在一些情况下,可以基于给定引物可能导致多核苷酸复制过程中的错误的概率来确定阈值得分。在引物204的汇总得分高于阈值的情况下,过程200可以移动到214,在214处,将引物204丢弃并且不包括在将在使用多核苷酸序列的数据存储和取回操作中被利用的一组引物中。在引物204的汇总得分小于或等于阈值得分的情况下,过程200可以进行到216,并且可以将引物204添加到一组引物以用于使用多核苷酸序列的数据存储和取回操作。

图3示出了包括根据多个引物评估准则对引物中包括的核苷酸进行的示例评分的表300。表300示出了引物308的不同位置中的核苷酸302、304、306关于多个不同的引物评估准则310、312、314、316、318、320、322的评分。特别地,表300可以包括针对引物308的每个核苷酸的多个得分。例如,对于第一引物评估准则310、第二引物评估准则312、第三引物评估准则314、第四引物评估准则316、第五引物评估准则318、第六引物评估准则320和第七引物评估准则322,第一核苷酸302可以具有为0的得分。表300还指示,引物308的第二核苷酸304针对引物评估准则310、312、314、322可以具有为0的得分,并且针对引物评估准则316、318、320可以具有为2的得分。此外,表300指示,引物308的第三核苷酸306针对引物评估准则312、314、316和322可以具有为0的得分,并且针对引物评估准则310、320和322可以具有为1的得分。

图4示出了产生具有编码数字数据的有效载荷的多核苷酸序列的示例过程400的流程图,该有效载荷包括与多核苷酸序列的一个或多个引物区域的最小重叠量。在402处,过程400包括获取数字数据。数字数据可以包括位串。在一些情况下,数字数据可以包括图像数据、音频数据、视频数据、文本数据或其组合。在各种实现中,数字数据可以存储在一个或多个数据文件中。

可选地,过程400包括在404处,随机化数字数据。随机化数字数据可以包括将一个或多个伪随机数生成算法应用于数字数据。随机化数字数据修改数字数据中所包括的位的顺序。在一些实现中,可以通过使用伪随机数生成算法来生成数字串并且在数字串与数字数据之间执行异或运算,来随机化数据。在一些实现中,随机化数字数据可以包括随机化有效载荷中包括的寻址信息或其他信息、以及数字数据本身。

在406处,过程400包括将数字数据编码为一个或多个核苷酸序列,以生成与数字数据相对应的一个或多个有效载荷。编码数字数据可以包括将一个或多个核苷酸分配给数字数据的一个或多个位。在一些实现中,单核苷酸(诸如A、G、C或T)可以用于对数字数据的1或0编码。在特定实现中,可以根据核苷酸的基2序列来编码数字数据。另外,可以根据核苷酸的基3序列来编码数字数据。还可以根据核苷酸的基4序列来编码数字数据。在一些场景中,可以对数字数据的位串的长度进行分段,并且可以将个体分段编码为核苷酸序列。在特定示例中,由于超过阈值长度的多核苷酸在多核苷酸复制期间产生错误,因此编码数字数据的多核苷酸的有效载荷的长度可能受到限制。在这些情况下,编码数字数据的位串可以被分成位片段,其可以用长度不大于阈值长度的核苷酸序列来编码。

在说明性实现中,可以编码数字数据以避免有效载荷中的均聚物。均聚物是核苷酸在核苷酸序列中的相邻位置处的重复。在某些情况下,可以通过使用基3编码来编码数字数据以排除均聚物。在特定实现中,基3编码可以基于序列中编码先前位的先前核苷酸,将三元位(例如,0、1或2)编码为核苷酸。例如,旋转码可以用于将数字数据的三元位编码为核苷酸。为了说明,当前面是A时,0可以被编码为C,当前面是C时,0可以被编码为G,当前面是G时,0可以被编码为T,而当前面是T时,0可以被编码为A。此外,当前面是A时,1可以被编码为G,当前面是C时,1可以被编码为T,当前面是G时,1可以被编码为A,而当前面是T时,1可以被编码为C。此外,当前面是A时,2可以被编码为T,当前面是C时,2可以被编码为A,当前面是G时,2可以被编码为C,而当前面是T时,2可以被编码为G。

在408处,过程400可以包括将引物靶的核苷酸与有效载荷的核苷酸进行比较。可以将引物靶的核苷酸与有效载荷的核苷酸进行比较,以确定引物靶的核苷酸与有效载荷的核苷酸之间的重叠量。引物靶的核苷酸与有效载荷的核苷酸之间的重叠量可以指示引物靶的与有效载荷的对应位置处的核苷酸相同的核苷酸的数目。在说明性实现中,引物靶的核苷酸与有效载荷的核苷酸之间的重叠量可以通过使用基本局部对准搜索工具(BLAST)确定引物靶序列与有效载荷序列之间的序列一致性量来确定。引物靶与有效载荷的核苷酸相同的核苷酸的数目越少,与引物靶相对应的引物将与有效载荷而不是引物靶结合的可能性越低。

在各种实现中,引物靶的核苷酸数目可以小于有效载荷中的核苷酸数目。在这些情况下,可以将有效载荷的核苷酸的部分与引物靶的核苷酸进行比较。在特定实现中,可以将有效载荷的核苷酸的第一部分与引物靶的相应位置处的核苷酸比较。随后,可以将有效载荷的核苷酸的第二部分与引物靶的相应位置处的核苷酸比较,其中有效载荷的核苷酸的第二部分包括与第一部分不同的核苷酸。

在一些实现中,有效载荷的核苷酸与引物靶的核苷酸之间的初始比较可以从将有效载荷的第一数目的核苷酸与引物靶的相应位置处的第一数目的核苷酸进行比较开始。例如,引物靶可以具有25个核苷酸,并且引物靶的核苷酸与有效载荷的核苷酸之间的初始比较可以包括将有效载荷的前25个核苷酸与引物靶的25个核苷酸进行比较。在该示例中,将有效载荷的第一核苷酸与引物靶的第一核苷酸进行比较,将有效载荷的第二核苷酸与引物靶的第二核苷酸进行比较,将有效载荷的第三核苷酸与引物靶的第三核苷酸进行比较,等等,直到将有效载荷的第25核苷酸与引物靶的第25核苷酸进行比较。在各种实现中,比较可以以滑动方式继续,使得引物靶的25个核苷酸可以与有效载荷的25个核苷酸进行比较,但是从有效载荷的第二核苷酸而不是第一核苷酸开始。为了说明,可以将有效载荷的第二核苷酸与引物靶的第一核苷酸进行比较,可以将有效载荷的第三核苷酸与引物靶的第二核苷酸进行比较,可以将有效载荷的第四核苷酸与引物靶的第三核苷酸进行比较,等等,直到将有效载荷的第26核苷酸与引物靶的第25核苷酸进行比较。有效载荷的核苷酸和引物靶的核苷酸之间的后续比较可以继续,直到将有效载荷的最后25个核苷酸与引物的25个核苷酸进行比较。

在410处,过程400包括确定有效载荷的核苷酸与引物靶的核苷酸之间的重叠量是否大于阈值重叠量。阈值重叠量可以对应于多核苷酸序列复制中使用的引物将与多核苷酸的有效载荷相互作用而不是与多核苷酸的引物靶相互作用的概率,这可能导致多核苷酸序列的复制错误。在说明性实现中,多核苷酸序列复制中使用的引物可能结合到有效载荷而不是引物靶的概率可以对应于引物靶的与有效载荷的核苷酸的一个或多个区域重叠的核苷酸的数目。例如,在多核苷酸序列复制中使用的引物将与有效载荷相互作用的第一概率可以对应于对应引物靶的与有效载荷的一个或多个区域的核苷酸重叠的核苷酸的第一数目。另外,在多核苷酸序列复制中使用的引物与有效载荷相互作用的第二概率可以对应于对应引物靶的与有效载荷的一个或多个区域的核苷酸重叠的核苷酸的第二数目。在第一例示中,当25核苷酸引物靶的8个核苷酸与有效载荷的25核苷酸序列的相应位置中的8个核苷酸相同时,可以计算在多核苷酸序列复制中使用的引物将与有效载荷而不是引物靶相互作用的第一概率,诸如40%。在第二例示中,当25核苷酸引物靶的4个核苷酸与有效载荷的25核苷酸序列的相应位置中的4个核苷酸相同时,可以计算在多核苷酸序列复制中使用的引物将与有效载荷而不是引物靶相互作用的第二概率,诸如15%。在多核苷酸序列复制中使用的引物将与有效载荷而不是引物靶相互作用的为20%的概率对应于阈值重叠量的情况下,上述第一例示将导致确定引物靶与有效载荷之间的重叠量大于阈值,并且上述第二例示将导致确定引物靶与有效载荷之间的重叠量小于阈值。

在重叠量大于阈值重叠量的情况下,过程400可以返回到404或者过程400可以移动到412。在过程400返回到404的情况下,可以对数字数据随机化或重新随机化以产生要被编码而不是先前编码的位串的不同位串。通过借助于一个或多个伪随机数算法修改先前的位串,编码新位串的替代核苷酸序列可以与引物靶具有不同的重叠量。在一些实现中,引物靶与有效载荷的新编码之间的重叠量可以小于阈值重叠量。在过程移动到可以标识替代引物靶的412的情况下,过程400可以返回到408以将替代引物靶的核苷酸序列与有效载荷进行比较。在其他的一些情况下,在412处,可以修改引物靶的一个或多个核苷酸,并且过程400可以返回到408以比较引物靶的新核苷酸序列和有效载荷。

在重叠量小于阈值重叠量的情况下,过程400从410移动到414。在414处,可以生成包括有效载荷和引物靶的多核苷酸序列。另外,可以生成作为引物靶的互补的引物。在一些实现中,多核苷酸序列还可以包括与有效载荷的重叠量小于阈值重叠量的另一引物靶。引物靶之一可以位于多核苷酸序列的3'端,而另一引物靶可以位于多核苷酸序列的5'端。多核苷酸序列还可以包括与附加信息相对应的其他核苷酸。例如,多核苷酸序列还可以包括寻址信息,寻址信息要在标识与由多核苷酸序列编码的数字位相关联的数字文件时使用。寻址信息可以指示由多核苷酸序列编码的数字位在数字文件的较大位流内的位置。在各种实现中,寻址信息的至少一部分可以由引物靶的一个或多个核苷酸编码。在其他的一些实现中,多核苷酸序列可以包括错误校正信息。在生成多核苷酸序列之后,可以合成多核苷酸序列并且将其存储在多核苷酸存储培养基中。

图5示出了使用一组引物502和编码数字数据的多个有效载荷504来设计多核苷酸序列的示例过程500的示意图。在506处,可以将第一引物508和第二引物510与有效载荷512相关联。可以生成与第一引物508互补的第一引物靶514和与第二引物510互补的第二引物靶516,以产生多核苷酸序列518。第一引物靶514可以位于多核苷酸序列518的5'端,第二引物靶516可以位于多核苷酸序列518的3'端。在一些实现中,附加核苷酸520可以被包括在多核苷酸序列518中,其中附加核苷酸520编码附加信息。例如,附加核苷酸520的至少一部分可以编码寻址信息。在另一示例中,附加核苷酸520的至少一部分可以编码错误校正信息。尽管附加核苷酸520的位置被示出为在第一引物靶514与有效载荷512之间,但是附加核苷酸520可以位于多核苷酸序列518的一个或多个不同位置。

在522处,过程500包括合成多核苷酸序列518并且将多核苷酸序列518添加到多核苷酸存储系统524。合成多核苷酸序列518可以包括将多核苷酸序列518的核苷酸以线性链化学结合在一起。多核苷酸存储系统524可以包括多个容器,诸如容器526。容器526可以包括存储多个不同多核苷酸序列的培养基528。培养基528可以包括能够在延长的时间段(诸如数年、数十年或更长)内保持多核苷酸序列的化学结合和结构的任何培养基。在一些实现中,培养基528可以包括水。在一些实现中,多核苷酸存储系统524可以使用无培养基布置来存储多核苷酸序列,诸如存储干燥的多核苷酸小球。

在一些实现中,容器524可以存储多个多核苷酸序列。而且,容器524可以存储多核苷酸序列的多个副本,诸如多核苷酸序列518的多个副本。另外,在各种实现中,多核苷酸存储系统524的多于一个的容器可以存储多核苷酸序列。为了说明,多核苷酸存储系统524的容器526和附加容器530可以各自存储多核苷酸序列518的单独副本。在一些实现中,存储在容器524中的多核苷酸的解链点可以在第一范围内,同时存储在附加容器530中的多核苷酸的解链点可以在第二范围内。因此,容器524的多核苷酸和附加容器530的多核苷酸可以基于它们的不同解链点进行存储和取回。

在532处,过程500包括接收针对数字数据的请求。针对数字数据的请求可以从诸如计算设备534的计算设备接收。在接收到针对数字数据的请求之后,可以使用查找表或指示对所请求的数字数据编码的多核苷酸序列的其他数据结构来确定与数字数据相对应的一个或多个多核苷酸序列。例如,数据结构可以指示数据文件由一组多核苷酸编码,并且该组多核苷酸与相应引物靶和/或至少部分对应于引物靶的相应密钥相关联。数据结构还可以指示存储在容器524内的多核苷酸的位置。

在536处,过程500可以包括:使用与靶多核苷酸序列相关联的引物来扩增与所请求的数字数据相对应的靶多核苷酸序列,对扩增操作中产生的多核苷酸序列进行测序,以及解码多核苷酸序列以产生所请求的数字数据。靶多核苷酸序列的扩增可以使用引物来进行,引物包括与关联于靶多核苷酸序列的引物靶互补的核苷酸。在一些实现中,用于复制序列的引物和酶可以被添加到数据存储系统624的一个或多个容器,或者添加到包括与所请求的数字数据相对应的多核苷酸序列的一个或多个其他容器。在其他的一些实现中,待复制和扩增的多核苷酸序列可以移动到另一容器和/或培养基以执行复制和扩增过程。在一个说明性示例中,PCR可以用于扩增与所请求的数字数据相对应的多核苷酸序列。

PCR反应具有三个主要组分:模板、引物和酶。模板是包含待扩增的(亚)核苷酸序列的单链或双链分子。引物是限定待扩增区域的开始和结束的短的合成链。酶包括聚合酶和热稳定聚合酶,诸如DNA聚合酶、RNA聚合酶和逆转录酶。酶通过从与模板结合的引物开始添加核苷三磷酸逐个“填充”互补核苷酸,来从单链模板产生双链多核苷酸。PCR以“循环”发生,每个循环使溶液中的模板的数目加倍。可以重复该过程,直到创建期望数目的副本。

各种PCR技术是已知的并且可以用于本文中描述的实现中。PCR技术通常用于扩增多核苷酸的至少一部分。待扩增的样品与以下各项接触:第一引物和第二引物接触;核酸聚合酶;以及与在PCR期间待加入的核苷酸相对应的核苷三磷酸。天然核苷酸三磷酸可以包括dATP、dCTP、dGTP、dTTP和dUTP。如果期望或需要,也可加入非标准核苷酸的核苷三磷酸。用于PCR的合适聚合酶是已知的,并且包括例如热稳定聚合酶,诸如栖热菌(Thermus)物种的天然和改变的聚合酶,包括但不限于水生栖热菌(Taq)、黄栖热菌(Tfl)和嗜热栖热菌(Tth)、以及DNA聚合酶I和HIV-1聚合酶的克列诺片段。

另一种类型的PCR是Droplet DigitalTM(微滴式数字)PCR(ddPCRTM)(Bio-Rad Laboratories,Hercules,CA)。ddPCR技术使用微流体和表面活性剂化学的组合将PCR样品分成油包水微滴。微滴支持其包含的靶模板核苷酸的PCR扩增,并且使用与用于大多数标准Taqman探针测定的那些类似的试剂和工作流程。在PCR之后,在流式细胞仪中分析或读取每个微滴以确定原始样品中PCR阳性微滴的分数。然后使用泊松统计分析这些数据,以确定原始样品中的目标浓度。参见Bio-Rad Droplet DigitalTM(ddPCRTM)PCR技术。

虽然ddPCRTM是一种PCR方法,但也可以使用基于相同基础原理的其他样品分区PCR方法。可以通过可以在spdPCR内实现的任何合适的PCR方法来扩增样品的分区的核苷酸。示例性PCR类型包括等位基因特异性PCR、装配PCR、不对称PCR、端点PCR、热启动PCR、原位PCR、交叉序列特异性PCR、反向PCR、指数后线性PCR、连接介导的PCR、甲基化特异性PCR、微引物PCR、多重连接依赖性探针扩增、多重PCR、巢式PCR、重叠延伸PCR、聚合酶循环装配、定性PCR、定量PCR、实时PCR、单细胞PCR、固相PCR、热不对称交错PCR、降落PCR、通用快速步行PCR等。也可以使用连接酶链式反应(LCR)。

可以使用热循环仪执行多核苷酸序列的扩增。热循环仪(也称为热循环仪、PCR机或DNA放大器)可以用具有孔的热块实现,孔中可以插入保持扩增反应混合物的管。术语“扩增反应混合物”可以是指包括用于扩增靶核酸的各种试剂的水溶液。然后,热循环器104可以以离散的预编程步骤升高和降低块的温度。其他实现可以利用小型热循环仪,其中扩增反应混合物经由通道移动通过微流体芯片上的热区和冷区。

在扩增过程之后,可以使用下述任何技术由测序仪提取和测序扩增产物的一个或多个样品。测序仪可以提供本文中称为读段的原始序列数据输出。读段中的每个位置是由测序仪基于由测序仪的组分感测到的核苷酸的性质而确定的个体核苷酸。由测序仪感测到的性质可以根据所使用的特定测序技术而变化。读段可以表示确定DNA(或RNA)链中的四个核苷酸——A、G、C和T(或U)——中的哪个存在于序列中的给定位置处。测序仪可以产生与所请求的数据相对应的多核苷酸序列538。可以使用用于编码原始数字数据以产生与原始数字数据相对应的位串540的反向过程,对多核苷酸序列538进行解码。响应于针对数字数据的请求,可以将位串540提供给计算设备534。多核苷酸的测序可以使用以下任何测序技术或除了这里具体提到的技术之外的其他技术来实现。

在一些实现中,本文中描述的测序操作中使用的测序技术可以包括合成测序(测序)。合成测序基于使用折回PCR和锚定引物在固体表面上对DNA的扩增。将DNA片段化,并且将衔接子添加到片段的5'和3'端。附接到流动单元通道表面的DNA片段被延伸并且桥接扩增。片段变成双链,并且双链分子变性。固相扩增的多个循环随后是变性可以在流动单元的每个通道中产生相同模板的单链DNA分子的大约1,000个副本的数百万个集群。使用引物、DNA聚合酶和四种荧光团标记的可逆终止核苷酸来执行顺序测序。在核苷酸并入后,使用激光来激发荧光团,并且捕获图像并且记录第一碱基的身份。去除来自每个并入的碱基的3'终止子和荧光团,并且重复并入、检测和标识步骤。

可以用于本文中描述的实现的测序技术的另一示例是纳米孔测序。纳米孔是直径为1纳米量级的小孔。纳米孔在导电流体中的浸入和电势跨纳米孔的施加导致由于离子通过纳米孔的传导而产生的轻微电流。流过纳米孔的电流的量对纳米孔的大小敏感。当DNA分子穿过纳米孔时,DNA分子上的每个核苷酸都会在不同程度上阻塞纳米孔。因此,当DNA分子通过纳米孔时,通过纳米孔的电流的变化表示DNA序列的读段。

可以用于本文中描述的实现的测序技术的另一示例包括Pacific Biosciences(太平洋生物科学)的单分子实时(SMRTTM)技术。在SMRTTM中,四种DNA碱基中的每一种与四种不同荧光染料中的一种附接。这些染料是磷酸化的。单个DNA聚合酶在零模式波导(ZMW)的底部用单分子模板单链DNA固定。ZMW是一种限制结构,其能够对照快速扩散进出ZMW(以微秒为单位)的荧光核苷酸的背景观察DNA聚合酶对个体核苷酸的并入。将核苷酸并入生长链中需要几毫秒。在此期间,荧光标记被激发并且产生荧光信号,并且荧光标记被切除。检测到染料的相应荧光指示并入了哪种碱基。重复该过程。

可以在本文中描述的实现中使用的另一种测序技术是Helicos真单分子测序(tSMS)。在tSMS技术中,将DNA样品切割成约100至200个核苷酸的链,并且将polyA序列添加到每条DNA链的3'端。通过添加荧光标记的腺苷核苷酸标记每条链。然后将DNA链与流动单元杂交,该流动单元包含固定到流动单元表面的数百万个寡聚T捕获位点。模板的密度可以为约1亿个模板/cm2。然后将流动单元加载到仪器中,诸如HeliScopeTM测序仪,并且激光照射流动单元的表面,以揭示每个模板的位置。CCD相机可以映射流动单元表面上模板的位置。然后将模板荧光标记切割并且洗掉。通过引入DNA聚合酶和荧光标记的核苷酸开始测序反应。寡T核酸用作引物。聚合酶以模板指导的方式将标记的核苷酸并入引物中。去除聚合酶和未并入的核苷酸。通过对流动单元表面成像来检测已经指导并入荧光标记的核苷酸的模板。在成像之后,切割步骤除去荧光标记,并且用其他荧光标记的核苷酸重复该过程,直到达到期望的读取长度。每个核苷酸添加步骤收集序列信息。

可以使用的DNA测序技术的另一示例是SOLiDTM技术(应用生物系统)。在SOLiDTM测序中,将DNA剪切成片段,并且将衔接子附接到片段的5'和3'端以生成片段库。备选地,可以通过以下方式来引入内部衔接子:将衔接子连接到片段的5'和3'端,使片段环化,消化环化的片段以生成内部衔接子,并且将衔接子附接到所得到的片段的5'和3'端以生成配对库。接下来,在包含珠粒、引物、模板和PCR组分的微反应器中制备克隆珠粒群。在PCR之后,使模板变性并且富集珠粒以用扩展的模板来分离珠粒。对所选择的珠粒上的模板进行3'修改,3'修改允许结合到载玻片。

可以使用的测序技术的另一示例涉及使用化学敏感的场效应晶体管(chemFET)阵列来对DNA测序。在该技术的一个示例中,DNA分子可以置于反应室中,并且模板分子可以与结合到聚合酶的测序引物杂交。可以通过chemFET的电流变化来检测一个或多个三磷酸在测序引物的3'端处并入新的核酸链中。阵列可以具有多个chemFET传感器。在另一示例中,可以将单个核酸附接到珠粒,并且可以在珠粒上扩增核酸,并且可以将个体珠粒转移到chemFET阵列上的个体反应室,每个室具有chemFET传感器,并且可以对核酸测序。

可以使用的测序技术的另一示例涉及使用离子敏感场效应晶体管(ISFET)来测序DNA。Ion TorrentTM测序就是这种技术的一个示例。在该技术中,不需要标记分子,并且在DNA合成期间检测每个核苷酸的并入。接着,腺嘌呤、胞嘧啶、鸟嘌呤或胸腺嘧啶流过DNA室,并且如果核苷酸并入到新生链中,则反应发出氢离子。检测到氢离子发射,这指示哪个基在给定位置并入。

可以使用的测序技术的另一示例涉及使用电子显微镜。在该技术的一个示例中,使用能够使用电子显微镜区分的金属标记来标记单个DNA分子。然后将这些分子在平坦表面上拉伸并且使用电子显微镜成像以测量序列。

图6示出了用以产生用于存储数据的多核苷酸序列的包括计算设备602的示例系统600的框图。计算设备602可以用一个或多个处理单元604和存储器606来实现,两者都可以跨一个或多个物理或逻辑位置分布。例如,在一些实现中,被描述为由计算设备602执行的操作可以由多个计算设备执行。在一些情况下,被描述为由计算设备602执行的操作可以在云计算架构中执行。

(多个)处理单元604可以包括中央处理单元(CPU)、图形处理单元(GPU)、单核处理器、多核处理器、专用集成电路(ASIC)、诸如现场可编程门阵列(FPGA)等可编程电路等的任何组合。在一个实现中,(多个)处理单元604中的一个或多个可以使用单指令多数据(SIMD)并行架构。例如,(多个)处理单元604可以包括实现SIMD的一个或多个GPU。(多个)处理单元604中的一个或多个可以实现为硬件设备。在一些实现中,除了硬件实现之外,(多个)处理单元604中的一个或多个可以用软件和/或固件实现。(多个)处理单元604的软件或固件实现可以包括以任何合适的编程语言编写的用于执行所描述的各种功能的计算机或机器可执行指令。(多个)处理单元604的软件实现可以整体或部分地存储在存储器606中。

备选地或另外地,计算设备602的功能性可以至少部分由一个或多个硬件逻辑组件来执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。

计算设备602的存储器606可以包括可移动存储、不可移动存储、本地存储和/或远程存储,以提供计算机可读指令、数据结构、程序模块和其他数据的存储。存储器606可以实现为计算机可读介质。计算机可读介质包括至少两种类型的介质:计算机可读存储介质和通信介质。计算机可读存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性的可移动和不可移动介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储器、磁带盒、磁带、磁盘存储或其他磁存储设备、或者可以用于存储信息以供计算设备访问的任何其他非传输介质。

与之相比,通信介质可以在诸如载波等调制数据信号或其他传输机制中实现计算机可读指令、数据结构、程序模块或其他数据。如本文中定义的,计算机可读存储介质和通信介质是互斥的。

计算设备602可以包括一个或多个输入/输出设备608和/或与一个或多个输入/输出设备608耦合,诸如键盘、指向设备、触摸屏、麦克风、相机、显示器、扬声器、打印机等。物理上远离(多个)处理单元604和存储器606的输入/输出设备608也可以被包括在输入/输出设备608的范围内。

此外,计算设备602可以包括网络接口610。网络接口610可以是计算设备602与一个或多个网络612之间的互连点。网络接口610可以用硬件实现,例如,实现为网络接口卡(NIC)、网络适配器、LAN适配器或物理网络接口。网络接口610可以用软件实现。网络接口610可以实现为扩展卡或主板的一部分。网络接口610可以实现用于使用特定物理层和数据链路层标准(诸如以太网或Wi-Fi)进行通信的电子电路。网络接口610可以支持有线和/或无线通信。网络接口610可以提供针对完整网络协议栈的基础,以允许在同一局域网(LAN)上的计算机组之间进行通信以及通过可路由协议(诸如因特网协议(IP))进行大规模网络通信。

一个或多个网络612可以包括任何类型的通信网络,诸如局域网、广域网、网状网络、点对点(ad hoc)网络、对等网络、因特网、线缆网络、电话网络、有线网络、无线网络、其组合等。

设备接口614可以是提供硬件以建立到其他设备(诸如测序仪616、多核苷酸合成器618等)的通信连接的计算设备602的一部分。设备接口614还可以包括支持硬件的软件。设备接口614可以实现为不跨越网络的有线或无线连接。有线连接可以包括将计算设备602物理地连接到另一设备的一个或多个电线或电缆。有线连接可以通过耳机线、电话线、SCSI线、USB线、以太网线、火线等创建。无线连接可以通过无线电波(例如,蓝牙、ANT、Wi-Fi IEEE 802.11等的任何版本)、红外光等来创建。

计算设备602可以包括多个模块,其可以被实现为存储在存储器606中的指令以用于由(多个)处理单元604执行和/或全部或部分由一个或多个硬件逻辑组件或固件实现。存储器606可以用于存储可以由一个或多个处理器处理单元604执行的任何数目的功能组件。在很多实现中,这些功能组件包括可以由一个或多个处理单元604执行并且在被执行时实现用于执行归属于计算设备602的操作的操作逻辑的指令或程序。可以在一个或多个处理单元604上执行以用于实现与如本文所述的生成多核苷酸序列以用于存储和取回数字数据相关的各种功能和特征的计算设备602的功能组件包括数字数据编码模块620、引物生成和评估模块622、核苷酸重叠模块624、多核苷酸设计模块626和数字数据取回模块628。模块620、622、624、626、628中的一个或多个可以用于实现过程100、200、400以及图1、图2、图4和图5的过程500的至少一部分。

数字数据编码模块620可以包括可以由(多个)处理单元604执行以将数字数据编码为核苷酸序列的计算机可读指令。数字数据编码模块620可以从一个或多个源获取数字数据。在一些情况下,数字数据也可以由存储器606存储。此外,数字数据可以由耦合到计算设备602或由计算设备602以其他方式可访问的数据存储设备存储。数字数据可以与图像内容、视频内容、文本内容、音频内容、其组合等相关。数字数据可以包括由1和0组成的位串。

数字数据编码模块620可以将数字数据的1和0编码为核苷酸序列,诸如A、T、G、C或U。在特定实现中,数字数据的每个1或0可以被编码为特定核苷酸。在一些情况下,数字数据的一组1和一组0可以被编码为特定核苷酸。在各种实现中,在编码之前,数字数据的1和0可以在除了基2之外的数字系统中被转换为数字。例如,数字数据的1和0可以在编码之前转换为基3格式或基4格式。

在说明性实现中,数字数据编码模块620可以根据二进制编码方案对数字数据的1和0进行编码。例如,数字数据编码模块620可以将位系列00编码为第一核苷酸(例如,A),将位系列01编码为第二核苷酸(例如,T),将位系列10编码为第三核苷酸(例如,G),以及将位系列11编码为第四核苷酸(例如,C)。

在其他的一些说明性实现中,数字数据编码模块620可以根据三元编码方案对数字数据的1和0进行编码。例如,数字数据编码模块620可以将数字数据的1和0转换为包括0、1和2的经修改的数字数据。随后,数字数据编码模块620可以将经修改的数字数据的0、1和2编码为核苷酸。在一些实现中,数据编码模块620可以根据核苷酸序列中的先前核苷酸将经修改的数字数据的0、1和2编码为核苷酸。为了说明,G之前的0可以被编码为T,而A之前的0可以被编码为C。

在另外的说明性实现中,数字数据编码模块620可以根据基4编码方案对数字数据的1和0进行编码。在一个示例中,数字数据编码模块620可以将数字数据的1和0转换为包括0、1、2和3的经修改的数字数据。在这些情况下,当使用4个核苷酸来编码数字数据时,用于进行编码的每种类型的核苷酸可以对应于相应的基4编号。因此,在特定说明性示例中,0可以对应于A,1可以对应于T,2可以对应于G,以及3可以对应于C。

在一些情况下,可以限制编码数字数据的核苷酸序列的长度。例如,如果编码数字数据的核苷酸序列的长度大于特定核苷酸数目,则序列可能变得不稳定和/或以其他方式失去其线性排列,诸如通过形成二级结构。在说明性实现中,用于编码数字数据的核苷酸序列可以具有60至150个核苷酸、80至130个核苷酸、90至120个核苷酸、或100至140个核苷酸。在使用多个序列来编码数字数据的情况下,数字数据编码模块620可以将数字数据的位分成片段。数字数据编码模块620可以将数字数据的每个片段编码为单独的核苷酸序列。在某些情况下,片段可以是相同的长度,而在其他情况下,片段可以具有不同的长度。

引物生成和评估模块622可以包括在由(多个)处理单元604执行时可以生成引物的核苷酸序列并且根据一个或多个引物评估准则来评估引物的计算机可读指令。引物生成模块622可以生成特定长度的核苷酸序列,其可以用作用于通过多核苷酸序列来存储和取回数字数据的多核苷酸的引物。例如,引物生成和评估模块622可以生成长度为18至30个核苷酸的核苷酸序列。在另一示例中,引物生成模块622可以生成长度为20至25个核苷酸的核苷酸序列。引物生成和评估模块622可以使用一个或多个伪随机数算法来生成核苷酸序列。在一些情况下,引物生成和评估模块622可以生成数百至数千个核苷酸序列。在各种实现中,由引物生成和评估模块622生成的核苷酸序列可以包括具有重复核苷酸的核苷酸序列。为了说明,引物生成和评估模块622可以生成包括两个或更多个A、两个或更多个G、两个或更多个C、两个或更多个T或其组合的核苷酸序列。

引物生成和评估模块622可以根据多个引物评估准则来评估引物。在一些情况下,由引物生成和评估模块622评估的引物的至少一部分可以由除引物生成和评估模块622之外的源生成。例如,第三方服务提供方可以提供待由生成和评估模块622评估的引物。另外,由引物生成和评估模块622根据引物评估准则而评估的引物的至少一部分可以由引物生成和评估模块622生成。引物评估准则可以包括引物的G/C含量、引物的解链温度、引物的二级结构形成、引物的引物二聚体形成、引物的A/T区域的长度、引物的G/C区域的长度、相应引物的核苷酸之间的分化、引物的核苷酸序列之间的相似性、或其组合。

在实现中,引物生成和评估模块622可以通过将引物的准则值与引物评估准则中的一个或多个引物评估准则的指定值进行比较来评估引物。由引物生成和评估模块622用于评估引物的引物评估准则的指定值可以至少部分地基于各种准则的值可以对多核苷酸复制和扩增过程的准确性和/或效率(诸如PCR)的影响。例如,特定范围内的引物的解链温度可以提高多核苷酸复制过程的准确性和/或效率。在这些情况下,引物生成和评估模块622可以通过将引物的解链温度与特定范围的解链温度进行比较以确定引物的解链温度是否在特定范围内,来评估引物。在另一示例中,特定范围内的引物的G/C含量可以提高多核苷酸复制过程的准确性和/或效率。在这些情况下,引物生成和评估模块622可以通过比较引物的G/C含量与特定范围的G/C含量以确定引物的G/C含量是否在特定范围内来评估引物。

由引物生成和评估模块622对引物的评估可以生成对正在被评估的引物的评分。在一些实现中,引物生成和评估模块622可以生成正在被评估的每个引物的得分。在特定实现中,引物生成和评估模块622可以基于引物评估准则中的每一个生成引物的得分。例如,引物生成和评估模块622可以关于解链温度准则确定引物的第一得分,关于G/C含量准则确定引物的第二得分,关于二级结构准则确定引物的第三得分,等等。在各种实现中,引物生成和评估模块622可以关于引物评估准则来生成引物中包括的个体核苷酸的得分。为了说明,引物生成和评估模块622可以关于解链温度准则来生成引物的个体核苷酸的得分。在另一示例中,引物生成和评估模块622可以关于引物二聚体形成准则来生成引物的个体核苷酸的得分。

引物生成和评估模块622可以至少部分地基于对引物的评估来标识要被用于复制和扩增编码数字数据的多核苷酸序列的引物。在一些实现中,引物生成和评估模块622可以至少部分地基于与引物相关联的得分来标识要被用于复制和扩增可以编码数字数据的多核苷酸序列的引物,其中得分已经由引物生成和评估模块622确定。在各种实现中,引物生成和评估模块622可以将单个引物的得分与阈值得分进行比较,以确定引物是否要被用于复制和扩增编码数字数据的多核苷酸序列。在特定实现中,阈值得分可以至少部分地基于引物可以不利地影响多核苷酸复制和扩增操作的概率。引物生成和评估模块622可以确定引物的得分小于阈值得分,并且将引物添加到用于复制和扩增编码数字数据的多核苷酸序列的一组引物。引物生成和评估模块622还可以确定满足或超过阈值得分的引物的得分,并且将引物从用于复制和扩增用于编码数字数据的多核苷酸序列的考虑中去除。

引物生成和评估模块622可以修改得分小于阈值得分的引物,以生成得分小于阈值得分的附加引物。在一些实现中,引物生成和评估模块622可以修改得分小于阈值得分的引物的一个或多个核苷酸以产生新引物,然后基于引物评估准则来评估新引物。引物生成和评估模块622可以继续修改得分小于阈值得分的引物的核苷酸,直到引物的得分增加和/或直到引物的得分满足或超过阈值得分。另外,引物生成和评估模块622可以修改引物的一个或多个核苷酸以降低引物的得分,直到引物的得分小于阈值得分。例如,引物生成和评估模块622可以标识导致引物的得分高于阈值得分的核苷酸,并且修改该核苷酸以使得引物的得分移动到低于阈值得分。

引物生成和评估模块622还可以基于得分低于阈值得分的引物生成引物靶。也就是说,对于要被用于多核苷酸复制和扩增的每个引物,可以生成对应的引物靶。引物靶可以包括与引物的序列互补的多核苷酸序列。在一些情况下,引物靶的一些但不是全部核苷酸与引物的核苷酸互补。为了说明,引物靶的阈值量的核苷酸与引物的核苷酸互补。

核苷酸重叠模块624可以包括在由(多个)处理单元604执行时可以确定引物靶与有效载荷之间的重叠量的计算机可读指令。重叠量可以指示对应位置中相同的引物靶的核苷酸数目与有效载荷的核苷酸数目。核苷酸重叠模块624可以比较引物靶的个体核苷酸与有效载荷的个体核苷酸。在特定实现中,核苷酸重叠模块624可以将引物靶在特定位置处的核苷酸与有效载荷在相同位置处的核苷酸进行比较。当该位置处的核苷酸相同时,核苷酸重叠模块624可以确定引物靶与有效载荷之间存在重叠。

在一个说明性实现中,引物靶与有效载荷之间的序列一致性量可以通过在引物靶的不同位置处与有效载荷的相应位置处的核苷酸之间执行比较的多次迭代来确定。在第一次迭代中,可以将引物靶的核苷酸与有效载荷的第一核苷酸区域进行比较,以确定所比较的核苷酸之间的任何匹配。在第二次迭代中,可以将引物靶的核苷酸与有效载荷的第二核苷酸区域进行比较,以确定所比较的核苷酸之间的任何匹配。在一些情况下,有效载荷的第一核苷酸区域和有效载荷的第二核苷酸区域可以包括一个或多个不同的核苷酸。引物靶和有效载荷的核苷酸之间的比较可以继续,直到有效载荷的每个核苷酸已经与引物靶的至少一个核苷酸进行比较。在一些说明性实现中,BLAST工具可以用于确定引物靶与有效载荷之间的序列一致性量。在特定实现中,可以将有效载荷的不同区域之间的序列一致性量彼此比较。为了说明,可以将有效载荷的第一区域与引物靶之间的序列一致性量与有效载荷的第二区域与引物靶之间的序列一致性量进行比较。在一些情况下,可以修改有效载荷的与引物靶具有最高序列一致性量的区域,以减少有效载荷的该区域与引物靶之间的序列一致性。

核苷酸重叠模块624还可以基于引物靶与一个或多个有效载荷之间的重叠量小于阈值重叠量,来确定与引物靶相对应的引物可以被包括在要用于编码数字数据的多核苷酸序列中的一组引物中。在一些情况下,阈值重叠量可以对应于与有效载荷具有特定重叠量的引物靶可能不利地影响多核苷酸序列复制和扩增操作的概率。核苷酸重叠模块624可以确定引物靶的核苷酸与一个或多个有效载荷的核苷酸之间的重叠量小于阈值重叠量,并且将与引物靶相对应的引物添加到一组引物,以用于使用一个或多个有效载荷生成多核苷酸序列来编码数字数据。另外,核苷酸重叠模块624可以确定引物靶的核苷酸与一个或多个有效载荷的核苷酸之间的重叠量满足或超过阈值重叠量,并且指示不将与引物靶相对应的引物添加到用以使用一个或多个有效载荷生成多核苷酸序列来编码数字数据的一组引物。在各种实现中,阈值重叠量可以对应于具有相同核苷酸的引物靶和有效载荷的多个连续位置。例如,阈值重叠量可以对应于具有与有效载荷的10个核苷酸区域相匹配的核苷酸的引物靶的10个位置。在其他的一些实现中,阈值重叠量可以解释引物靶的序列内的错配和缺口,并且有效载荷可以对应于引物靶的核苷酸与有效载荷的一个或多个区域相匹配的位置的总数目。为了说明,阈值重叠量可以对应于与有效载荷的至少一个40核苷酸区域具有相同核苷酸的40核苷酸引物靶的15个位置。

核苷酸重叠模块624还可以通过分析引物和有效载荷的热力学特性来确定引物本身与有效载荷之间的重叠量。热力学特性可以指示引物可以结合到有效载荷而不是结合引物靶的概率。由核苷酸重叠模块624分析的热力学特性可以包括熵、焓、吉布斯自由能或其组合。

多核苷酸设计模块626可以包括在由(多个)处理单元604执行时设计编码数字数据的多核苷酸序列的计算机可读指令。多核苷酸设计模块626可以利用由数字数据编码模块620产生的有效载荷来设计多核苷酸序列。多核苷酸设计模块626还可以利用一组引物的引物,该组引物基于由引物生成和评估模块622执行的对引物的评估并且基于由核苷酸重叠模块624确定的重叠量而产生。引物可以用于生成可以被包括在多核苷酸序列中的引物靶。在一些实现中,多核苷酸设计模块626可以通过标识两个引物和有效载荷,来产生用于编码数字数据的多核苷酸序列。第一引物可以对应于将位于多核苷酸序列的3'端的第一引物靶,并且第二引物可以对应于将位于多核苷酸序列的5'端的第二引物靶,其中有效载荷位于两个引物靶之间。

多核苷酸设计模块626还可以产生包括除了引物靶和有效载荷的核苷酸之外的核苷酸的多核苷酸序列。例如,多核苷酸设计模块626可以在多核苷酸序列中包括与用于有效载荷的寻址信息相对应的核苷酸。在将位串在被编码为核苷酸序列之前分成多个片段的情况下,寻址信息可以指示由特定有效载荷编码的位串的片段以及片段在该位串内的位置。多核苷酸设计模块626可以生成编码寻址信息的一个或多个核苷酸,并且将编码寻址信息的核苷酸添加到多核苷酸序列中。在特定实现中,寻址信息可以至少部分被包括在引物靶中。引物靶还可以包括与密钥相对应的核苷酸,密钥可以用于取回由多核苷酸序列的有效载荷编码的数字数据。多核苷酸设计模块626还可以将核苷酸添加到与错误校正信息相对应的多核苷酸序列。

由多核苷酸设计模块626生成的多核苷酸序列可以用于合成包括多核苷酸序列的分子。在一些实现中,多核苷酸设计模块626可以将多核苷酸序列传送给用于合成多核苷酸序列的一个或多个设备,诸如设备618。例如,多核苷酸设计模块626可以经由一个或多个网络612将多核苷酸序列传送给合成多核苷酸序列的服务提供方。在另一示例中,多核苷酸设计模块626可以将多核苷酸序列经由一个或多个网络612传送给合成多核苷酸序列的设备和/或经由设备接口614传送给一个或多个设备(例如,合成器618)。

数字数据取回模块628可以包括在由(多个)处理单元604执行时可以响应于针对数字数据的请求而提供数字数据的计算机可读指令。在一些实现中,数字数据取回模块628可以接收获取数字数据的请求。例如,数字数据取回模块628可以接收针对包括数字图像的数据文件的请求。数字数据取回模块628可以标识与所请求的数据相对应的一个或多个多核苷酸序列。为了说明,数字数据取回模块628可以解析诸如查找表的数据结构,以标识与所请求的数字数据相对应的引物、寻址信息和/或密钥。数字数据取回模块628可以诸如经由设备接口614与一个或多个设备通信,以请求与引物、寻址信息和/或密钥相对应的多核苷酸序列。数字数据取回模块628可以从一个或多个设备(诸如设备618)接收多核苷酸序列,并且使用由数字数据编码模块620执行的编码的反向过程来对多核苷酸序列进行解码。例如,在位串中的00被编码为A的实现中,数字数据取回模块628可以将多核苷酸序列中的每个A解码为00。数字数据取回模块628可以再现所请求的数字数据的位串并且将位串提供给请求该数字数据的一个或多个设备。

说明性实施例

以下条款描述了用于实现本公开中描述的特征的多个可能的实施例。本文中描述的各种实施例不是限制性的,也不是任何给定实施例的每个特征都需要存在于另一实施例中。除非上下文另有明确说明,否则可以将任何两个或更多个实施例组合在一起。如本文中使用的“或”表示和/或。例如,“A或B”表示A而没有B、B而没有A、或者A和B。如本文中使用的“包括”表示包括所有列出的特征并且可能包括添加未列出的其他特征。“基本上由......组成”表示包括列出的特征和不会对所列出的特征的基本和新颖特性产生实质影响的那些附加特征。“由......组成”仅表示所列特征,但不包括任何未列出的特征。

条款A.一种方法,包括:生成指示引物序列的数据;至少部分地基于潜在引物序列的估计解链温度和一个或多个附加准则,来确定引物序列的得分;以及至少部分地基于得分小于阈值得分,将引物序列添加到一组引物。

条款B.根据条款A的方法,其中确定引物序列的得分包括:确定引物序列的个体核苷酸的相应得分;组合个体核苷酸的相应得分以确定汇总得分;以及至少部分地基于汇总得分与阈值得分之间的比较来确定汇总得分至少是阈值得分。

条款C.根据条款B的方法,其中阈值得分指示引物序列影响多核苷酸序列扩增操作的特异性的概率。

条款D.根据条款A的方法,其中确定引物序列的得分包括:至少部分地基于引物序列的估计解链温度,确定引物序列的核苷酸的第一得分;以及至少部分地基于一个或多个附加准则之一,确定核苷酸的第二得分。

条款E.根据条款A的方法,其中至少部分地基于引物序列的估计解链温度来确定引物序列的得分包括:确定解链温度被包括在解链温度的范围内。

条款F.根据条款D的方法,其中解链温度的范围为50℃至65℃。

条款G.根据条款A的方法,还包括:至少部分地基于得分小于阈值得分,修改引物序列的至少一个核苷酸以产生经修改的引物序列;以及至少部分地基于经修改的引物序列的附加估计解链温度和一个或多个附加准则,确定经修改的引物序列的附加得分。

条款H.根据条款G的方法,还包括:至少部分地基于附加得分低于阈值得分,将经修改的引物序列添加到一组引物;以及生成多核苷酸序列,该多核苷酸序列包括与引物序列或经修改的引物序列中的至少一个项互补的至少一个引物靶,多核苷酸序列还包括具有编码数字数据的另一核苷酸序列的有效载荷。

条款I.一种系统,包括:处理单元;与处理单元通信的存储器,存储器存储计算机可读指令,计算机可读指令在由处理单元执行时执行包括以下的操作:生成包括针对引物的核苷酸序列的数据;针对多个准则中的个体准则,确定引物的个体核苷酸的相应得分,多个准则与核苷酸序列用于多核苷酸序列扩增和复制的适合性相关;关于多个准则中的个体准则来汇总引物的个体核苷酸的相应得分,以产生汇总得分;确定汇总得分小于阈值得分;以及生成多核苷酸序列,多核苷酸序列包括与引物至少部分地互补的引物靶、与附加汇总得分小于阈值得分的附加引物至少部分地互补的附加引物靶、以及包括编码数字数据的核苷酸序列的有效载荷。

条款J.根据条款I的系统,其中多个准则包括二级结构形成;并且操作还包括:至少部分地基于引物的核苷酸参与二级结构形成的概率,确定核苷酸的得分。

条款K.根据条款I的系统,其中多个准则包括引物二聚体形成,并且操作还包括:至少部分地基于引物与另一引物形成二聚体的概率,确定引物的核苷酸的得分。

条款L.根据条款I的系统,其中多个准则包括核苷酸序列的A/T区域的长度,并且操作还包括:确定引物中所包括的核苷酸是A或T;确定核苷酸被包括在引物的由一个或多个A和一个或多个T组成的区域中;确定区域的长度;以及至少部分地基于区域的长度来确定核苷酸的得分。

条款M.根据条款I的系统,其中多个准则包括核苷酸序列的G/C区域的长度,并且操作还包括:确定引物中所包括的核苷酸是G或C;确定核苷酸被包括在引物的由一个或多个G和一个或多个C组成的区域中;确定区域的长度;以及至少部分地基于区域的长度来确定核苷酸的得分。

条款N.根据条款I的系统,其中多个准则包括G/C含量,并且操作还包括:确定引物中所包括的为G和C的核苷酸相对于引物中所包括的核苷酸总数目的数目;以及至少部分地基于核苷酸是G或C以及引物中的为G或C的核苷酸相对于引物的核苷酸总数目的数目,确定核苷酸的得分。

条款O.根据条款I的系统,其中多个准则包括核苷酸分化,并且操作还包括:将引物的核苷酸与引物中包括的一个或多个附加核苷酸进行比较;以及至少部分地基于核苷酸与一个或多个附加核苷酸之间的差异来确定核苷酸的得分。

条款P.根据条款I的系统,其中多个准则包括引物相似性,并且操作还包括:将引物的核苷酸与附加引物的核苷酸进行比较;确定引物的与附加引物的核苷酸相同并且位于相同位置的核苷酸的数目;以及至少部分地基于引物的与附加引物的核苷酸相同并且位于相同位置的核苷酸的数目,确定核苷酸的得分。

条款Q.一种方法,包括:确定第一引物序列的一个或多个特性;关于一个或多个准则至少部分地基于一个或多个特性,确定第一引物序列的得分,其中一个或多个准则指示第一引物序列用于多核苷酸序列扩增的适合性;确定得分小于阈值得分;将第一引物序列添加到一组引物;以及生成多核苷酸序列,多核苷酸序列包括与第一引物序列相对应的第一引物靶、与来自该组引物的第二引物序列相对应的第二引物靶、以及包括编码数字数据的附加核苷酸序列的有效载荷。

条款R.根据条款Q的方法,其中该组引物中包括的个体引物与小于阈值得分的相应得分相关联。

条款S.根据条款Q的方法,还包括:从计算设备接收针对数字数据的请求;解析数据结构以确定第一引物序列和第二引物序列与数字数据相关联;使用一个或多个酶、第一引物序列和第二引物序列来扩增多核苷酸存储系统的容器中所包括的一个或多个多核苷酸;对一个或多个多核苷酸序列进行测序;解码一个或多个多核苷酸序列以标识与数字数据相对应的位系列;以及向计算设备提供位系列。

条款T.根据条款Q的方法,其中存储在多核苷酸存储系统的第一容器中的第一组多核苷酸具有第一范围的解链温度,并且存储在多核苷酸存储系统的第二容器中的第二组多核苷酸具有第二范围的解链温度。

条款U.一种系统,包括:用于生成包括针对引物的核苷酸序列的数据的装置;用于针对多个准则中的个体准则来确定引物的个体核苷酸的相应得分的装置,多个准则与核苷酸序列用于多核苷酸序列扩增和复制的适合性相关;用于关于多个准则中的个体准则来汇总引物的个体核苷酸的相应得分以产生汇总得分的装置;用于确定汇总得分小于阈值得分的装置;以及用于生成多核苷酸序列的装置,多核苷酸序列包括与引物至少部分地互补的引物靶、与附加汇总得分小于阈值得分的附加引物至少部分地互补的附加引物靶、以及包括编码数字数据的核苷酸序列的有效载荷。

条款V.根据条款U的系统,还包括用于至少部分地基于引物的核苷酸参与二级结构形成的概率来确定核苷酸的得分的装置。

条款W.根据条款U的系统,其中多个准则包括引物二聚体形成,并且系统还包括用于至少部分地基于引物与另一引物形成二聚体的概率来确定引物的核苷酸的得分的装置。

条款X.根据条款U的系统,其中多个准则包括核苷酸序列的A/T区域的长度,并且系统还包括:用于确定引物中所包括的核苷酸是A或T的装置;用于确定核苷酸被包括在引物的由一个或多个A和一个或多个T组成的区域中的装置;用于确定区域的长度的装置;以及用于至少部分地基于区域的长度来确定核苷酸的得分的装置。

条款Y.根据条款U的系统,其中多个准则包括核苷酸序列的G/C区域的长度,并且系统还包括:用于确定引物中所包括的核苷酸是G或C的装置;用于确定核苷酸被包括在引物的由一个或多个G和一个或多个C组成的区域中的装置;用于确定区域的长度的装置;以及用于至少部分地基于区域的长度来确定核苷酸的得分的装置。

条款Z.根据条款U的系统,其中多个准则包括G/C含量,并且系统还包括:确定引物中所包括的为G和C的核苷酸相对于引物中所包括的核苷酸总数目的数目;以及至少部分地基于核苷酸是G或C以及引物中的为G或C的核苷酸相对于引物的核苷酸总数目的数目来确定核苷酸的得分。

条款AA.根据条款U的系统,其中多个准则包括核苷酸分化,并且系统还包括:用于将引物的核苷酸与引物中所包括的一个或多个附加核苷酸进行比较的装置;以及用于至少部分地基于核苷酸与一个或多个附加核苷酸之间的差异来确定核苷酸的得分的装置。

条款BB.根据条款U的系统,其中多个准则包括引物相似性,并且系统还包括:用于将引物的核苷酸与附加引物的核苷酸进行比较的装置;用于确定引物的与附加引物的核苷酸相同并且位于相同位置的核苷酸的数目的装置;以及用于至少部分地基于引物的与附加引物的核苷酸相同并且位于相同位置的核苷酸的数目来确定核苷酸的得分的装置。

尽管用特定于结构特征和/或方法动作的语言描述了本技术方案,但是应当理解,所附权利要求书中限定的技术方案不必限于上述具体特征或动作。而是,具体特征和动作被公开作为实现权利要求的示例形式。

在描述本发明的上下文中使用的术语“一”、“一个”、“该”和类似的指示物(特别是在以下权利要求的上下文中)应当被解释为涵盖单数和复数,除非本文中另有说明或明显与上下文相矛盾。

本文中描述了某些实施例,包括发明人已知的用于实现本发明的最佳模式。当然,在阅读前面的描述之后,对这些描述的实施例的变化对于本领域普通技术人员将变得很清楚。技术人员将知道如何适当地采用这样的变化,并且本文中公开的实施例可以以不同于具体描述的方式实现。因此,所附权利要求中所记载的技术方案的所有修改和等价物都被包括在本公开的范围内。此外,除非本文中另有说明或明显与上下文相矛盾,否则本发明涵盖上述元素的所有可能变型的任何组合。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1