IP Library › Granted Patent US 12,271,264
Granted Patent B2
US 12,271,264 · App. 17/990,588 · Granted Apr 8, 2025

Adjusting a variable parameter to increase reliability of stored data

Inventors: John D. Davis (San Francisco, CA); John Hayes (Mountain View, CA); Zhangxi Tan (Mountain View, CA); Hari Kannan (Sunnyvale, CA); Nenad Miladinovic (Los Gatos, CA)
Assignee: PURE STORAGE, INC.
G06F11/1048H03M13/353H03M13/373H03M13/3761H03M13/1102H03M13/1515
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,271,264
App. No.
17/990,588
Granted
Apr 8, 2025
Kind
B2
Abstract

A method for adjustable error correction in a storage cluster is provided. The method includes determining health of a non-volatile memory of a non-volatile solid-state storage unit of each of a plurality of storage nodes in a storage cluster on a basis of per flash package, per flash die, per flash plane, per flash block, or per flash page. The determining is performed by the storage cluster. The plurality of storage nodes is housed within a chassis that couples the storage nodes as the storage cluster. The method includes adjusting erasure coding across the plurality of storage nodes based on the health of the non-volatile memory and distributing user data throughout the plurality of storage nodes through the erasure coding. The user data is accessible via the erasure coding from a remainder of the plurality of storage nodes if any of the plurality of storage nodes are unreachable.

Claims (38)

1. A method, comprising:

determining wear level of solid state storage devices within a plurality of storage nodes, wherein at least two solid state storage devices are located within a first storage node of the plurality of storage nodes;

adjusting a variable parameter associated with data stored within the storage devices, based on the wear level of the storage devices; and

adjusting erasure coding based on the wear level of the storage devices, wherein the first storage node of the plurality of storage nodes has multiple authorities, each of the multiple authorities controlling a range of the data.

2. The method of claim 1 , further comprising:

ranking portions of non-volatile memory of at least one of the storage devices based on the wear level of the at least one of the storage devices, wherein adjusting the variable parameter includes assigning differing numbers of bits for error correction code (ECC) to differing portions of the at least one storage device according to the ranking.

3. The method of claim 1 , wherein adjusting the variable parameter comprises:

adjusting one of a stripe width and a type of error correction code (ECC).

4. The method of claim 1 , further comprising:

transferring one of the multiple authorities to a differing storage node.

5. The method of claim 1 , further comprising:

adding a storage device to the first storage node, wherein the storage device has a differing storage capacity than the solid state storage devices.

6. The method of claim 1 , further comprising:

ranking a plurality of portions of non-volatile memory of the storage devices per the wear level of the storage devices, wherein adjusting the variable parameter includes assigning a plurality of levels of data stripes to the plurality of portions of the non-volatile memory according to the ranking.

7. The method of claim 1 , further comprising:

assigning a plurality of grades to non-volatile memory of the storage devices according to the wear level of the storage devices.

8. A plurality of storage nodes, comprising:

the plurality of storage nodes configured to communicate together as a storage cluster, each of the plurality of storage nodes having solid state storage devices for data storage, the plurality of storage nodes configured to determine wear level of non-volatile memory within the solid state storage devices, wherein at least two solid state storage devices are located within a first storage node of the plurality of storage nodes, the plurality of storage nodes comprising a plurality of authorities located within the plurality of storage nodes, wherein each authority owns a range of data; and

the first storage node configurable to adjust a variable parameter associated with the data, responsive to determining the wear level of the non-volatile memory.

9. The plurality of storage nodes of claim 8 , wherein the first storage node is configurable to adjust erasure coding based on the wear level.

10. The plurality of storage nodes of claim 8 , further comprising:

the plurality of storage nodes configurable to perform a greater number of read retries for a first portion of the non-volatile memory of at least one of the plurality of storage nodes that has undergone a greater number of write and erase cycles than for a second portion of the non-volatile memory of the at least one of the plurality of storage nodes that has undergone a lesser number of write and erase cycles.

11. The plurality of storage nodes of claim 8 ,

wherein at least one of the plurality of authorities is configurable to be transferred from the first storage node to a second storage node in the storage cluster.

12. The plurality of storage nodes of claim 8 , wherein each storage node of the plurality of storage nodes includes a controller.

13. The plurality of storage nodes of claim 8 , further comprising:

the plurality of storage nodes configurable to rank blocks of the non volatile memory according to the wear level of the non-volatile memory.

14. A storage cluster, comprising:

a plurality of storage nodes, each of the plurality of storage nodes having storage devices with non-volatile memory for storage of data, the plurality of storage nodes configurable to generate diagnostic information regarding wear levelling of the non-volatile memory of each of the plurality of storage nodes, wherein at least two storage devices are located within a first storage node of the plurality of storage nodes; and

the plurality of storage nodes configurable to adjust a variable parameter associated with the data stored within the nonvolatile memory, based on the diagnostic information, wherein the plurality of storage nodes comprises a plurality of authorities located within the plurality of storage nodes, wherein each authority owns a range of the data.

15. The storage cluster of claim 14 , further comprising:

an error correction block configurable to track errors in reads of the non-volatile memory, wherein the diagnostic information regarding the wear levelling is based at least in part on the errors.

16. The storage cluster of claim 14 , further comprising:

a counter configurable to count how many times the non-volatile memory is written to on a per package basis, a per die basis, a per plane basis, a per block basis, or a per page basis, wherein the diagnostic information regarding the wear levelling is based at least in part on a result from the counter.

17. The storage cluster of claim 14 , further comprising:

the plurality of storage nodes configurable to rank blocks of the non-volatile memory according to the wear levelling of the non-volatile memory.

18. The storage cluster of claim 14 , wherein multiple storage nodes have heterogeneous capacities of nonvolatile memory.

19. The storage cluster of claim 14 , wherein one of the plurality of storage nodes is a compute-only node.

Continuity (3)
Continuation 17213734 · Mar 26, 2021
Continuation 14454537 · Aug 7, 2014
Related Publication 20230089583A1 · Mar 23, 2023
References Cited (400)
US 5390327A · Lubbers et al. · 1995 [cited by applicant]
US 5450581A · Bergen et al. · 1995 [cited by applicant]
US 5479653A · Jones · 1995 [cited by applicant]
US 5488731A · Mendelsohn · 1996 [cited by applicant]
US 5504858A · Ellis et al. · 1996 [cited by applicant]
US 5564113A · Bergen et al. · 1996 [cited by applicant]
US 5574882A · Menon et al. · 1996 [cited by applicant]
US 5649093A · Hanko et al. · 1997 [cited by applicant]
US 5883909A · Dekoning et al. · 1999 [cited by applicant]
US 6000010A · Legg · 1999 [cited by applicant]
US 6260156B1 · Garvin et al. · 2001 [cited by applicant]
US 6269453B1 · Krantz · 2001 [cited by applicant]
US 6275898B1 · DeKoning · 2001 [cited by applicant]
US 6453428B1 · Stephenson · 2002 [cited by applicant]
US 6523087B2 · Busser · 2003 [cited by applicant]
US 6535417B2 · Tsuda · 2003 [cited by applicant]
US 6643748B1 · Wieland · 2003 [cited by applicant]
US 6725392B1 · Frey et al. · 2004 [cited by applicant]
US 6763455B2 · Hall · 2004 [cited by applicant]
US 6836816B2 · Kendall · 2004 [cited by applicant]
US 6985995B2 · Holland et al. · 2006 [cited by applicant]
US 7032125B2 · Holt et al. · 2006 [cited by applicant]
US 7047358B2 · Lee et al. · 2006 [cited by applicant]
US 7051155B2 · Talagala et al. · 2006 [cited by applicant]
US 7055058B2 · Lee et al. · 2006 [cited by applicant]
US 7065617B2 · Wang · 2006 [cited by applicant]
US 7069383B2 · Yamamoto et al. · 2006 [cited by applicant]
US 7076606B2 · Orsley · 2006 [cited by applicant]
US 7107480B1 · Moshayedi et al. · 2006 [cited by applicant]
US 7159150B2 · Kenchammana-Hosekote et al. · 2007 [cited by applicant]
US 7162575B2 · Dalal et al. · 2007 [cited by applicant]
US 7164608B2 · Lee · 2007 [cited by applicant]
US 7188270B1 · Nanda et al. · 2007 [cited by applicant]
US 7334156B2 · Land et al. · 2008 [cited by applicant]
US 7370220B1 · Nguyen et al. · 2008 [cited by applicant]
US 7386666B1 · Beauchamp et al. · 2008 [cited by applicant]
US 7398285B2 · Kisley · 2008 [cited by applicant]
US 7424498B1 · Patterson · 2008 [cited by applicant]
US 7424592B1 · Karr · 2008 [cited by applicant]
US 7444532B2 · Masuyama et al. · 2008 [cited by applicant]
US 7480658B2 · Heinla et al. · 2009 [cited by applicant]
US 7484056B2 · Madnani et al. · 2009 [cited by applicant]
US 7484057B1 · Madnani et al. · 2009 [cited by applicant]
US 7484059B1 · Ofer et al. · 2009 [cited by applicant]
US 7536506B2 · Ashmore et al. · 2009 [cited by applicant]
US 7558859B2 · Kasiolas · 2009 [cited by applicant]
US 7565446B2 · Talagala et al. · 2009 [cited by applicant]
US 7613947B1 · Coatney · 2009 [cited by applicant]
US 7634617B2 · Misra · 2009 [cited by applicant]
US 7634618B2 · Misra · 2009 [cited by applicant]
US 7681104B1 · Sim-Tang et al. · 2010 [cited by applicant]
US 7681105B1 · Sim-Tang et al. · 2010 [cited by applicant]
US 7681109B2 · Yang et al. · 2010 [cited by applicant]
US 7730257B2 · Franklin · 2010 [cited by applicant]
US 7730258B1 · Smith · 2010 [cited by applicant]
US 7730274B1 · Usgaonkar · 2010 [cited by applicant]
US 7743276B2 · Jacobsen et al. · 2010 [cited by applicant]
US 7752489B2 · Deenadhayalan et al. · 2010 [cited by applicant]
US 7757038B2 · Kitahara · 2010 [cited by applicant]
US 7757059B1 · Ofer et al. · 2010 [cited by applicant]
US 7778960B1 · Chatterjee et al. · 2010 [cited by applicant]
US 7783955B2 · Haratsch et al. · 2010 [cited by applicant]
US 7814272B2 · Barrall et al. · 2010 [cited by applicant]
US 7814273B2 · Barrall · 2010 [cited by applicant]
US 7818531B2 · Barrall · 2010 [cited by applicant]
US 7827351B2 · Suetsugu et al. · 2010 [cited by applicant]
US 7827439B2 · Matthew et al. · 2010 [cited by applicant]
US 7831768B2 · Ananthamurthy et al. · 2010 [cited by applicant]
US 7856583B1 · Smith · 2010 [cited by applicant]
US 7870105B2 · Arakawa et al. · 2011 [cited by applicant]
US 7873878B2 · Belluomini et al. · 2011 [cited by applicant]
US 7885938B1 · Greene et al. · 2011 [cited by applicant]
US 7886111B2 · Klemm et al. · 2011 [cited by applicant]
US 7908448B1 · Chatterjee et al. · 2011 [cited by applicant]
US 7916538B2 · Jeon et al. · 2011 [cited by applicant]
US 7921268B2 · Jakob · 2011 [cited by applicant]
US 7930499B2 · Duchesne · 2011 [cited by applicant]
US 7941697B2 · Mathew et al. · 2011 [cited by applicant]
US 7958303B2 · Shuster · 2011 [cited by applicant]
US 7971129B2 · Watson · 2011 [cited by applicant]
US 7975115B2 · Wayda · 2011 [cited by applicant]
US 7984016B2 · Kisley · 2011 [cited by applicant]
US 7991822B2 · Bish et al. · 2011 [cited by applicant]
US 8006126B2 · Deenadhayalan et al. · 2011 [cited by applicant]
US 8010485B1 · Chatterjee et al. · 2011 [cited by applicant]
US 8010829B1 · Chatterjee et al. · 2011 [cited by applicant]
US 8020047B2 · Courtney · 2011 [cited by applicant]
US 8046548B1 · Chatterjee et al. · 2011 [cited by applicant]
US 8051361B2 · Sim-Tang et al. · 2011 [cited by applicant]
US 8051362B2 · Li et al. · 2011 [cited by applicant]
US 8074038B2 · Lionetti et al. · 2011 [cited by applicant]
US 8082393B2 · Galloway et al. · 2011 [cited by applicant]
US 8086603B2 · Nasre et al. · 2011 [cited by applicant]
US 8086634B2 · Mimatsu · 2011 [cited by applicant]
US 8086911B1 · Taylor · 2011 [cited by applicant]
US 8090837B2 · Shin et al. · 2012 [cited by applicant]
US 8108502B2 · Tabbara et al. · 2012 [cited by applicant]
US 8117388B2 · Jernigan, IV · 2012 [cited by applicant]
US 8117521B2 · Yang et al. · 2012 [cited by applicant]
US 8140821B1 · Raizen et al. · 2012 [cited by applicant]
US 8145838B1 · Miller et al. · 2012 [cited by applicant]
US 8145840B2 · Koul et al. · 2012 [cited by applicant]
US 8175012B2 · Haratsch et al. · 2012 [cited by applicant]
US 8176360B2 · Frost et al. · 2012 [cited by applicant]
US 8176405B2 · Hafner et al. · 2012 [cited by applicant]
US 8180855B2 · Aiello et al. · 2012 [cited by applicant]
US 8200922B2 · McKean et al. · 2012 [cited by applicant]
US 8209469B2 · Carpenter et al. · 2012 [cited by applicant]
US 8225006B1 · Karamcheti · 2012 [cited by applicant]
US 8239618B2 · Kotzur et al. · 2012 [cited by applicant]
US 8244999B1 · Chatterjee et al. · 2012 [cited by applicant]
US 8261016B1 · Goel · 2012 [cited by applicant]
US 8271455B2 · Kesselman · 2012 [cited by applicant]
US 8285686B2 · Kesselman · 2012 [cited by applicant]
US 8305811B2 · Jeon · 2012 [cited by applicant]
US 8315999B2 · Chatley et al. · 2012 [cited by applicant]
US 8327080B1 · Der · 2012 [cited by applicant]
US 8335769B2 · Kesselman · 2012 [cited by applicant]
US 8341118B2 · Drobychev et al. · 2012 [cited by applicant]
US 8351290B1 · Huang et al. · 2013 [cited by applicant]
US 8364920B1 · Parkison et al. · 2013 [cited by applicant]
US 8365041B2 · Chu et al. · 2013 [cited by applicant]
US 8375146B2 · Sinclair · 2013 [cited by applicant]
US 8397016B2 · Talagala et al. · 2013 [cited by applicant]
US 8402152B2 · Duran · 2013 [cited by applicant]
US 8412880B2 · Leibowitz et al. · 2013 [cited by applicant]
US 8423739B2 · Ash et al. · 2013 [cited by applicant]
US 8429436B2 · Filingim et al. · 2013 [cited by applicant]
US 8452928B1 · Ofer et al. · 2013 [cited by applicant]
US 8473698B2 · Lionetti et al. · 2013 [cited by applicant]
US 8473778B2 · Simitci · 2013 [cited by applicant]
US 8473815B2 · Yu et al. · 2013 [cited by applicant]
US 8479037B1 · Chatterjee et al. · 2013 [cited by applicant]
US 8484414B2 · Sugimoto et al. · 2013 [cited by applicant]
US 8495472B1 · Magerramov · 2013 [cited by applicant]
US 8498967B1 · Chatterjee et al. · 2013 [cited by applicant]
US 8504797B2 · Mimatsu · 2013 [cited by applicant]
US 8522073B2 · Cohen · 2013 [cited by applicant]
US 8533408B1 · Madnani et al. · 2013 [cited by applicant]
US 8533527B2 · Daikokuya et al. · 2013 [cited by applicant]
US 8539177B1 · Ofer et al. · 2013 [cited by applicant]
US 8544029B2 · Bakke et al. · 2013 [cited by applicant]
US 8549224B1 · Zeryck et al. · 2013 [cited by applicant]
US 8583861B1 · Ofer et al. · 2013 [cited by applicant]
US 8589625B2 · Colgrove et al. · 2013 [cited by applicant]
US 8595455B2 · Chatterjee et al. · 2013 [cited by applicant]
US 8615599B1 · Takefman et al. · 2013 [cited by applicant]
US 8627136B2 · Shankar et al. · 2014 [cited by applicant]
US 8627138B1 · Clark · 2014 [cited by applicant]
US 8639669B1 · Douglis et al. · 2014 [cited by applicant]
US 8639863B1 · Kanapathippillai et al. · 2014 [cited by applicant]
US 8640000B1 · Cypher · 2014 [cited by applicant]
US 8650343B1 · Kanapathippillai et al. · 2014 [cited by applicant]
US 8660131B2 · Vermunt et al. · 2014 [cited by applicant]
US 8661218B1 · Piszczek et al. · 2014 [cited by applicant]
US 8671072B1 · Shah et al. · 2014 [cited by applicant]
US 8689042B1 · Kanapathippillai et al. · 2014 [cited by applicant]
US 8700875B1 · Barron et al. · 2014 [cited by applicant]
US 8706694B2 · Chatterjee et al. · 2014 [cited by applicant]
US 8706914B2 · Duchesneau · 2014 [cited by applicant]
US 8706932B1 · Kanapathippillai et al. · 2014 [cited by applicant]
US 8712963B1 · Douglis et al. · 2014 [cited by applicant]
US 8713405B2 · Healey et al. · 2014 [cited by applicant]
US 8719621B1 · Karmarkar · 2014 [cited by applicant]
US 8725730B2 · Keeton et al. · 2014 [cited by applicant]
US 8751859B2 · Becker-szendy et al. · 2014 [cited by applicant]
US 8756387B2 · Frost et al. · 2014 [cited by applicant]
US 8762793B2 · Grube et al. · 2014 [cited by applicant]
US 8838541B2 · Camble et al. · 2014 [cited by applicant]
US 8769232B2 · Suryabudi et al. · 2014 [cited by applicant]
US 8775858B2 · Gower et al. · 2014 [cited by applicant]
US 8775868B2 · Colgrove et al. · 2014 [cited by applicant]
US 8788913B1 · Xin et al. · 2014 [cited by applicant]
US 8793447B2 · Usgaonkar et al. · 2014 [cited by applicant]
US 8799746B2 · Baker et al. · 2014 [cited by applicant]
US 8819311B2 · Liao · 2014 [cited by applicant]
US 8819383B1 · Jobanputra et al. · 2014 [cited by applicant]
US 8822155B2 · Sukumar · 2014 [cited by applicant]
US 8824261B1 · Miller et al. · 2014 [cited by applicant]
US 8832528B2 · Thatcher et al. · 2014 [cited by applicant]
US 8838892B2 · Li · 2014 [cited by applicant]
US 8843700B1 · Salessi et al. · 2014 [cited by applicant]
US 8850108B1 · Hayes et al. · 2014 [cited by applicant]
US 8850288B1 · Lazier et al. · 2014 [cited by applicant]
US 8856593B2 · Eckhardt et al. · 2014 [cited by applicant]
US 8856619B1 · Cypher · 2014 [cited by applicant]
US 8862617B2 · Kesselman · 2014 [cited by applicant]
US 8862847B2 · Feng et al. · 2014 [cited by applicant]
US 8862928B2 · Xavier et al. · 2014 [cited by applicant]
US 8868825B1 · Hayes · 2014 [cited by applicant]
US 8874836B1 · Hayes · 2014 [cited by applicant]
US 8880793B2 · Nagineni · 2014 [cited by applicant]
US 8880825B2 · Lionetti et al. · 2014 [cited by applicant]
US 8886778B2 · Nedved et al. · 2014 [cited by applicant]
US 8898383B2 · Yamamoto et al. · 2014 [cited by applicant]
US 8898388B1 · Kimmel · 2014 [cited by applicant]
US 8904231B2 · Coatney et al. · 2014 [cited by applicant]
US 8918478B2 · Ozzie · 2014 [cited by applicant]
US 8930307B2 · Colgrove et al. · 2015 [cited by applicant]
US 8930633B2 · Amit et al. · 2015 [cited by applicant]
US 8943357B2 · Atzmony · 2015 [cited by applicant]
US 8949502B2 · McKnight et al. · 2015 [cited by applicant]
US 8959110B2 · Smith et al. · 2015 [cited by applicant]
US 8959388B1 · Kuang et al. · 2015 [cited by applicant]
US 8972478B1 · Storer et al. · 2015 [cited by applicant]
US 8972779B2 · Lee et al. · 2015 [cited by applicant]
US 8977597B2 · Ganesh et al. · 2015 [cited by applicant]
US 8996828B2 · Kalos et al. · 2015 [cited by applicant]
US 9003144B1 · Hayes et al. · 2015 [cited by applicant]
US 9009724B2 · Gold et al. · 2015 [cited by applicant]
US 9021053B2 · Bernbo et al. · 2015 [cited by applicant]
US 9021215B2 · Meir et al. · 2015 [cited by applicant]
US 9025393B2 · Wu · 2015 [cited by applicant]
US 9043372B2 · Makkar et al. · 2015 [cited by applicant]
US 9047214B1 · Sharon et al. · 2015 [cited by applicant]
US 9053808B2 · Sprouse · 2015 [cited by applicant]
US 9058155B2 · Cepulis et al. · 2015 [cited by applicant]
US 9063895B1 · Madnani et al. · 2015 [cited by applicant]
US 9063896B1 · Madnani et al. · 2015 [cited by applicant]
US 9098211B1 · Madnani et al. · 2015 [cited by applicant]
US 9110898B1 · Chamness et al. · 2015 [cited by applicant]
US 9110964B1 · Shilane et al. · 2015 [cited by applicant]
US 9116819B2 · Cope et al. · 2015 [cited by applicant]
US 9117536B2 · Yoon · 2015 [cited by applicant]
US 9122401B2 · Zaltsman et al. · 2015 [cited by applicant]
US 9123422B2 · Sharon et al. · 2015 [cited by applicant]
US 9124300B2 · Olbrich et al. · 2015 [cited by applicant]
US 9134908B2 · Horn et al. · 2015 [cited by applicant]
US 9153337B2 · Sutardja · 2015 [cited by applicant]
US 9158472B2 · Kesselman et al. · 2015 [cited by applicant]
US 9159422B1 · Lee et al. · 2015 [cited by applicant]
US 9164891B2 · Karamcheti et al. · 2015 [cited by applicant]
US 9183136B2 · Kawamura et al. · 2015 [cited by applicant]
US 9189650B2 · Jaye et al. · 2015 [cited by applicant]
US 9201733B2 · Verma · 2015 [cited by applicant]
US 9207876B2 · Shu et al. · 2015 [cited by applicant]
US 9229656B1 · Contreras et al. · 2016 [cited by applicant]
US 9229810B2 · He et al. · 2016 [cited by applicant]
US 9235475B1 · Shilane et al. · 2016 [cited by applicant]
US 9244626B2 · Shah et al. · 2016 [cited by applicant]
US 9250687B1 · Aswadhati · 2016 [cited by applicant]
US 9250999B1 · Barroso · 2016 [cited by applicant]
US 9251066B2 · Colgrove et al. · 2016 [cited by applicant]
US 9268648B1 · Barash et al. · 2016 [cited by applicant]
US 9268806B1 · Kesselman et al. · 2016 [cited by applicant]
US 9275063B1 · Natanzon · 2016 [cited by applicant]
US 9280678B2 · Redberg · 2016 [cited by applicant]
US 9286002B1 · Karamcheti et al. · 2016 [cited by applicant]
US 9292214B2 · Kalos et al. · 2016 [cited by applicant]
US 9298760B1 · Li et al. · 2016 [cited by applicant]
US 9304908B1 · Karamcheti et al. · 2016 [cited by applicant]
US 9311969B2 · Murin · 2016 [cited by applicant]
US 9311970B2 · Sharon et al. · 2016 [cited by applicant]
US 9323663B2 · Karamcheti et al. · 2016 [cited by applicant]
US 9323667B2 · Bennett · 2016 [cited by applicant]
US 9323681B2 · Apostolides et al. · 2016 [cited by applicant]
US 9335942B2 · Kumar et al. · 2016 [cited by applicant]
US 9348538B2 · Mallaiah et al. · 2016 [cited by applicant]
US 9355022B2 · Ravimohan et al. · 2016 [cited by applicant]
US 9384082B1 · Lee et al. · 2016 [cited by applicant]
US 9384252B2 · Akirav et al. · 2016 [cited by applicant]
US 9389958B2 · Sundaram et al. · 2016 [cited by applicant]
US 9390019B2 · Patterson et al. · 2016 [cited by applicant]
US 9395922B2 · Nishikido · 2016 [cited by applicant]
US 9396202B1 · Drobychev et al. · 2016 [cited by applicant]
US 9400828B2 · Kesselman et al. · 2016 [cited by applicant]
US 9405478B2 · Koseki et al. · 2016 [cited by applicant]
US 9411685B2 · Lee · 2016 [cited by applicant]
US 9417960B2 · Klein · 2016 [cited by applicant]
US 9417963B2 · He et al. · 2016 [cited by applicant]
US 9430250B2 · Hamid et al. · 2016 [cited by applicant]
US 9430542B2 · Akirav et al. · 2016 [cited by applicant]
US 9432541B2 · Ishida · 2016 [cited by applicant]
US 9454434B2 · Sundaram et al. · 2016 [cited by applicant]
US 9471579B1 · Natanzon · 2016 [cited by applicant]
US 9477554B2 · Chamness et al. · 2016 [cited by applicant]
US 9477632B2 · Du · 2016 [cited by applicant]
US 9501398B2 · George et al. · 2016 [cited by applicant]
US 9525737B2 · Friedman · 2016 [cited by applicant]
US 9529542B2 · Friedman et al. · 2016 [cited by applicant]
US 9535631B2 · Fu et al. · 2017 [cited by applicant]
US 9552248B2 · Miller et al. · 2017 [cited by applicant]
US 9552291B2 · Munetoh et al. · 2017 [cited by applicant]
US 9552299B2 · Stalzer · 2017 [cited by applicant]
US 9563517B1 · Natanzon et al. · 2017 [cited by applicant]
US 9588698B1 · Karamcheti et al. · 2017 [cited by applicant]
US 9588712B2 · Kalos et al. · 2017 [cited by applicant]
US 9594652B1 · Sathiamoorthy et al. · 2017 [cited by applicant]
US 9600193B2 · Ahrens et al. · 2017 [cited by applicant]
US 9619321B1 · Sharon et al. · 2017 [cited by applicant]
US 9619430B2 · Kannan et al. · 2017 [cited by applicant]
US 9645754B2 · Li et al. · 2017 [cited by applicant]
US 9667720B1 · Bent et al. · 2017 [cited by applicant]
US 9710535B2 · Aizman et al. · 2017 [cited by applicant]
US 9733840B2 · Karamcheti et al. · 2017 [cited by applicant]
US 9734225B2 · Akirav et al. · 2017 [cited by applicant]
US 9740403B2 · Storer · 2017 [cited by applicant]
US 9740700B1 · Chopra et al. · 2017 [cited by applicant]
US 9740762B2 · Horowitz et al. · 2017 [cited by applicant]
US 9747319B2 · Bestler et al. · 2017 [cited by applicant]
US 9747320B2 · Kesselman · 2017 [cited by applicant]
US 9767130B2 · Bestler et al. · 2017 [cited by applicant]
US 9781227B2 · Friedman et al. · 2017 [cited by applicant]
US 9785498B2 · Misra et al. · 2017 [cited by applicant]
US 9798486B1 · Singh · 2017 [cited by applicant]
US 9804925B1 · Carmi et al. · 2017 [cited by applicant]
US 9811285B1 · Karamcheti et al. · 2017 [cited by applicant]
US 9811546B1 · Bent et al. · 2017 [cited by applicant]
US 9818478B2 · Chung et al. · 2017 [cited by applicant]
US 9829066B2 · Thomas · 2017 [cited by applicant]
US 9836245B2 · Hayes et al. · 2017 [cited by applicant]
US 9864874B1 · Shanbhag · 2018 [cited by applicant]
US 9891854B2 · Munetoh et al. · 2018 [cited by applicant]
US 9891860B1 · Delgado et al. · 2018 [cited by applicant]
US 9892005B2 · Kedem et al. · 2018 [cited by applicant]
US 9892186B2 · Akirav et al. · 2018 [cited by applicant]
US 9904589B1 · Donlan et al. · 2018 [cited by applicant]
US 9904717B2 · Anglin et al. · 2018 [cited by applicant]
US 9952809B2 · Shah · 2018 [cited by applicant]
US 9910748B2 · Pan · 2018 [cited by applicant]
US 9910904B2 · Anglin et al. · 2018 [cited by applicant]
US 9934237B1 · Shilane et al. · 2018 [cited by applicant]
US 9940065B2 · Kalos et al. · 2018 [cited by applicant]
US 9946604B1 · Glass · 2018 [cited by applicant]
US 9959167B1 · Donlan et al. · 2018 [cited by applicant]
US 9965539B2 · D'halluin et al. · 2018 [cited by applicant]
US 9998539B1 · Brock et al. · 2018 [cited by applicant]
US 10007457B2 · Hayes et al. · 2018 [cited by applicant]
US 10013177B2 · Liu et al. · 2018 [cited by applicant]
US 10013311B2 · Sundaram et al. · 2018 [cited by applicant]
US 10019314B2 · Litsyn et al. · 2018 [cited by applicant]
US 10019317B2 · Usvyatsky et al. · 2018 [cited by applicant]
US 10025673B1 · Maccanti · 2018 [cited by applicant]
US 10031703B1 · Natanzon et al. · 2018 [cited by applicant]
US 10061512B2 · Chu et al. · 2018 [cited by applicant]
US 10073626B2 · Karamcheti et al. · 2018 [cited by applicant]
US 10082985B2 · Hayes et al. · 2018 [cited by applicant]
US 10089012B1 · Chen et al. · 2018 [cited by applicant]
US 10089174B2 · Lin · 2018 [cited by applicant]
US 10089176B1 · Donlan et al. · 2018 [cited by applicant]
US 10102356B1 · Sahin · 2018 [cited by applicant]
US 10108819B1 · Donlan et al. · 2018 [cited by applicant]
US 10146787B2 · Bashyam et al. · 2018 [cited by applicant]
US 10152268B1 · Chakraborty et al. · 2018 [cited by applicant]
US 10157098B2 · Chung et al. · 2018 [cited by applicant]
US 10162704B1 · Kirschner et al. · 2018 [cited by applicant]
US 10180875B2 · Northcott · 2019 [cited by applicant]
US 10185495B2 · Katsuki · 2019 [cited by applicant]
US 10185730B2 · Bestler et al. · 2019 [cited by applicant]
US 10235065B1 · Miller et al. · 2019 [cited by applicant]
US 10324639B2 · Seo · 2019 [cited by applicant]
US 10567406B2 · Astigarraga · 2020 [cited by applicant]
US 10810088B1 · Gu · 2020 [cited by applicant]
US 10846137B2 · Vallala · 2020 [cited by applicant]
US 10877683B2 · Wu · 2020 [cited by applicant]
US 11076509B2 · Alissa et al. · 2021 [cited by applicant]
US 11106810B2 · Natanzon · 2021 [cited by applicant]
US 11194707B2 · Stalzer · 2021 [cited by applicant]
US 20020144059A1 · Kendall · 2002 [cited by applicant]
US 20030105984A1 · Masuyama et al. · 2003 [cited by applicant]
US 20030110205A1 · Johnson · 2003 [cited by applicant]
US 20040073747A1 · Lu · 2004 [cited by applicant]
US 20040161086A1 · Buntin et al. · 2004 [cited by applicant]
US 20050001652A1 · Malik et al. · 2005 [cited by applicant]
US 20050076228A1 · Davis et al. · 2005 [cited by applicant]
US 20050235132A1 · Karr et al. · 2005 [cited by applicant]
US 20050278460A1 · Shin et al. · 2005 [cited by applicant]
US 20050283649A1 · Turner et al. · 2005 [cited by applicant]
US 20060015683A1 · Ashmore et al. · 2006 [cited by applicant]
US 20060114930A1 · Lucas et al. · 2006 [cited by applicant]
US 20060174157A1 · Barrall et al. · 2006 [cited by applicant]
US 20060248294A1 · Nedved et al. · 2006 [cited by applicant]
US 20070079068A1 · Draggon · 2007 [cited by applicant]
US 20070214194A1 · Reuter · 2007 [cited by applicant]
US 20070214314A1 · Reuter · 2007 [cited by applicant]
US 20070234016A1 · Davis et al. · 2007 [cited by applicant]
US 20070268905A1 · Baker et al. · 2007 [cited by applicant]
US 20080080709A1 · Michtchenko et al. · 2008 [cited by applicant]
US 20080107274A1 · Worthy · 2008 [cited by applicant]
US 20080155191A1 · Anderson et al. · 2008 [cited by applicant]
US 20080256141A1 · Wayda et al. · 2008 [cited by applicant]
US 20080295118A1 · Liao · 2008 [cited by applicant]
US 20090077208A1 · Nguyen et al. · 2009 [cited by applicant]
US 20090138654A1 · Sutardja · 2009 [cited by applicant]
US 20090216910A1 · Duchesneau · 2009 [cited by applicant]
US 20090216920A1 · Lauterbach et al. · 2009 [cited by applicant]
US 20100017444A1 · Chatterjee et al. · 2010 [cited by applicant]
US 20100042636A1 · Lu · 2010 [cited by applicant]
US 20100094806A1 · Apostolides et al. · 2010 [cited by applicant]
US 20100115070A1 · Missimilly · 2010 [cited by applicant]
US 20100125695A1 · Wu et al. · 2010 [cited by applicant]
US 20100162076A1 · Sim-Tang et al. · 2010 [cited by applicant]
US 20100169707A1 · Mathew et al. · 2010 [cited by applicant]
US 20100174576A1 · Naylor · 2010 [cited by applicant]
US 20100268908A1 · Ouyang et al. · 2010 [cited by applicant]
US 20100306500A1 · Mimatsu · 2010 [cited by applicant]
US 20110035540A1 · Fitzgerald · 2011 [cited by applicant]
US 20110040925A1 · Frost et al. · 2011 [cited by applicant]
US 20110060927A1 · Fillingim et al. · 2011 [cited by applicant]
US 20110119462A1 · Leach et al. · 2011 [cited by applicant]
Cited By (1)
US 12,602,287