IP Library Granted Patent US 12,201,985
Granted Patent B2
US 12,201,985 · App. 18/103,625 · Granted Jan 21, 2025

System and method for storage

Inventors: Merek Siu (Alameda, CA); Ali Agah (Menlo Park, CA); Stanley Hong (Palo Alto, CA); Tarun Khurana (Fremont, CA); Aathavan Karunakaran (Berkeley, CA); Craig Ciesla (Mountain View, CA); Amirali Kia (San Mateo, CA)
Assignee: Illumina, Inc.
B01L3/50855G11C13/02G16B50/30B01L2300/0645B01L2300/0829C12Q1/6869G11C13/04G16B30/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,201,985
App. No.
18/103,625
Granted
Jan 21, 2025
Kind
B2
Abstract

Devices, systems, and methods for non-volatile storage include a well activation device operable to modify one or more wells from a plurality of wells of a flow cell to provide a set of readable wells. Readable wells are configured to allow exposure of a well to substances from nucleotide sequencing fluids, and prevent exposure to other substances and fluids, such as nucleotide synthesizing fluids. The well activation device may also modify wells to provide a set of writeable wells. This set of wells is configured to allow exposure to the nucleotide synthesizing fluids and substances; and prevent exposure to the nucleotide sequencing fluids and substances. There may also be provisions made for risk mitigation for data errors such as generating commands to write specified data to a nucleotide sequence associated with a particular location in a storage device, reading the nucleotide sequence and performing a comparison.

Claims (64)

1. A system for non-volatile storage comprising:

a storage controller comprising a processor and a memory;

a storage device comprising:

a flow cell comprising a plurality of wells with open sides accessible from a first surface of the flow cell, wherein the wells are adapted to contain polynucleotides, each well comprising a plurality of electrodes, each electrode of the plurality of electrodes being associated with a corresponding nucleotide,

a fluidics interface, the fluidics interface being configured to provide a path for communication of fluid from a fluidics device to the flow cell, and

a sequencing interface, the sequencing interface being configured to provide a path for communication of light between a sequencing device and the flow cell;

a fluidics device to provide one or more fluids to the first surface of the flow cell, wherein the one or more fluids comprise a nucleotide writing reagent and a nucleotide reading reagent, the nucleotide writing reagent being configured to write nucleotides to the wells of the flow cell during a synthesis process, the nucleotide reading reagent being configured to provide reading of nucleotides in the wells of the flow cell during a sequencing process;

a sequencing device to sequence polynucleotides within the plurality of wells via the sequencing interface and determine nucleotides; and

the memory of the storage controller comprising a cache memory, the cache memory comprising a non-nucleotide memory to store data that is queued to be encoded into a set of nucleotides and synthesized, using the nucleotide writing reagent, into polynucleotides in the plurality of wells;

the storage controller being programmed to:

cause the non-nucleotide memory to store the data that is queued to be encoded into the set of nucleotides,

identify a sequence of nucleotides representing the data that is queued to be encoded into the set of nucleotides,

cause the fluidics device to communicate the nucleotide writing reagent to the storage device, and

cause activation of the plurality of electrodes, to thereby encode data in the plurality of wells by synthesizing the set of nucleotides in the plurality of wells in response to a combination of the communicated nucleotide writing reagent and the activated electrodes, the synthesized set of nucleotides having the identified sequence of nucleotides representing the data, the synthesized set of nucleotides forming at least part of the polynucleotides in the plurality of wells.

2. The system of claim 1 , wherein the cache memory stores one or more of:

a set of file indexes describing the name and location of data stored as polynucleotides within the plurality of wells, and

a set of checksum values usable to verify the integrity of data stored as polynucleotides within the plurality of wells.

3. The system of claim 1 , wherein the storage controller:

receives a set of input data to be written to the storage device, via a nucleotide writing reagent provided to the flow cell by the fluidics device, as polynucleotides in the plurality of wells,

receives a request for output data to be read by the sequencing device from polynucleotides stored in the plurality of wells,

determines whether the storage device is in a write-mode or a read-mode based upon whether it has most recently received the nucleotide writing reagent or the nucleotide reading reagent from the fluidics device,

where the storage device is in the write-mode, writes the set of input data prior to reading the output data, and

where the storage device is in the read-mode, stores the set of input data on the cache memory and reads the output data prior to writing the set of input data.

4. The system of claim 1 , wherein the storage controller:

operates the sequencing device to sequence a subset of the plurality of wells and produce a set of nucleotides describing the polynucleotides stored in the subset of the plurality of wells,

converts the set of nucleotides into a set of digital data,

stores the set of digital data in the cache memory, and

provides the set of digital data from the cache memory in response to subsequent requests.

5. The system of claim 1 ,

cause the non-nucleotide memory to store a file index, the file index indicating contents of the encoded data in the plurality of wells and locations of the encoded data in the plurality of wells.

6. The system of claim 1 , the memory storing instructions for the processor to perform a method comprising:

generating one or more commands to write specified data to a polynucleotide associated with a particular location in the storage device,

reading the polynucleotide,

performing a comparison, wherein the comparison compares the polynucleotide stored in the storage device with a particular quality control value stored in a non-nucleotide memory, and

based on the comparison, determining if the particular location in the storage device is to be treated as having corrupted data.

7. The system of claim 6 , the method further comprising:

reading the polynucleotide,

performing the comparison, and

determining if the particular location in the storage device is to be treated as having corrupted data automatically based on receiving a command to write to the storage device.

8. The system of claim 6 , the method further comprising:

determining that the particular location in the storage device is to be treated as having corrupted data, and

based on determining that the particular location in the storage device is to be treated as having corrupted data, writing a new polynucleotide encoding uncorrupted data to the particular location in the storage device.

9. The system of claim 6 , the polynucleotide comprising a check portion, the check portion representing a parity bit to provide error detection in the data represented by the sequence of nucleotides in the set of nucleotides synthesized in the plurality of wells; and

the method further comprising generating the check portion, in the set of nucleotides synthesized in the plurality of wells, based on the specified data.

10. The system of claim 6 , the particular quality control value being the specified data; and

the comparison comprising checking if there are any differences between data stored in the polynucleotide and the specified data.

11. The system of claim 6 , the method further comprising:

determining that the particular location in the storage device should not be treated as having corrupted data, and

based on determining that the particular location in the storage device should not be treated as having corrupted data, deleting the particular quality control value stored in the non-nucleotide memory.

12. A system for non-volatile storage comprising:

a nucleotide memory storage device comprising:

a flow cell comprising a plurality of wells with open sides accessible from a first surface of the flow cell, wherein the wells are adapted to contain polynucleotides,

a fluidics interface, the fluidics interface being configured to provide a path for communication of fluid from a fluidics device to the flow cell, and

a sequencing interface, the sequencing interface being configured to provide a path for communication of light between a sequencing device and the flow cell;

a fluidics device to provide one or more fluids to the first surface of the flow cell, the one or more fluids including:

a nucleotide writing reagent to write nucleotides to the wells of the flow cell during a synthesis process, and

a nucleotide reading reagent to provide reading of nucleotides in the wells of the flow cell during a sequencing process;

a sequencing device to sequence polynucleotides within the plurality of wells via the sequencing interface and determine nucleotides during the sequencing process;

a light source; and

a non-nucleotide cache memory to store data that is queued to be encoded into a set of nucleotides and synthesized, using the nucleotide writing reagent, into polynucleotides in the plurality of wells;

a controller programmed to:

cause the non-nucleotide memory to store the data that is queued to be encoded into the set of nucleotides,

cause the fluidics device to communicate the nucleotide writing reagent to the nucleotide memory storage device, and

cause activation of the light source to activate selected nucleotides, to thereby synthesize polynucleotides in the plurality of wells via light, the synthesized polynucleotides including the set of nucleotides, the set of nucleotides synthesized in the plurality of wells via light having a sequence of nucleotides representing the encoded data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2023
From: SIU, MEREK; AGAH, ALI; HONG, STANLEY; KHURANA, TARUN; KARUNAKARAN, AATHAVAN; CIESLA, CRAIG
To: ILLUMINA, INC.
Reel/Frame 062928/0428 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2023
From: KIA, AMIRALI
To: ILLUMINA, INC.
Reel/Frame 062928/0497 →
Continuity (4)
Continuation 17254462
Provisional Application 62855610 · May 31, 2019
Provisional Application 62855682 · May 31, 2019
Related Publication 20230285974A1 · Sep 14, 2023
References Cited (22)
US 5787032A · Heller et al. · 1998 [cited by applicant]
US 7414116B2 · Milton et al. · 2008 [cited by applicant]
US 8906320B1 · Eltoukhy et al. · 2014 [cited by applicant]
US 9012022B2 · George et al. · 2015 [cited by applicant]
US 9453258B2 · Kain et al. · 2016 [cited by applicant]
US 9512422B2 · Barnard et al. · 2016 [cited by applicant]
US 10254225B2 · Zhong et al. · 2019 [cited by applicant]
US 11590505B2 · Siu et al. · 2023 [cited by applicant]
US 20140274747A1 · Kain et al. · 2014 [cited by applicant]
US 20150261664A1 · Goldman et al. · 2015 [cited by applicant]
US 20160110499A1 · Donnet · 2016 [cited by applicant]
US 20160273032A1 · Esfandyarpour et al. · 2016 [cited by applicant]
US 20160356715A1 · Zhong et al. · 2016 [cited by applicant]
US 20180117587A1 · Lemoine et al. · 2018 [cited by applicant]
US 20180327829A1 · Mir · 2018 [cited by applicant]
US 20190136307A1 · Predki · 2019 [cited by examiner]
US 20190362814A1 · Roquet · 2019 [cited by examiner]
US 20190383788A1 · Predki · 2019 [cited by examiner]
EP 2714935B1 · 2017 [cited by applicant]
WO WO2014150522A1 · 2014 [cited by applicant]
WO WO2018094115A1 · 2018 [cited by applicant]
International Search Report and Written Opinion dated Jul. 14, 2020, for International Application No. PCT/US2020/034517, 6 pages. [cited by applicant]