IP Library Granted Patent US 12,657,133
Granted Patent B1
US 12,657,133 · App. 19/461,088 · Granted Jun 16, 2026

Storage system with namespaces and host- accessible subdivisions

Inventors: Robert Lercari (Thousand Oaks, CA); Alan Chen (Simi Valley, CA); Mike Jadon (Manhattan Beach, CA); Craig Robertson (Simi Valley, CA); Andrey V. Kuzmin (Moscow, RU)
Assignee: Radian Memory Systems, ILLC
G06F12/1009G06F3/0616G06F3/064G06F3/0688G06F12/0207G06F12/0246G06F12/109G06F3/0659G06F3/0662G06F2212/1016G06F2212/7201G06F2212/7202G06F2212/7205
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,657,133
App. No.
19/461,088
Granted
Jun 16, 2026
Kind
B1
Abstract

This disclosure provides techniques hierarchical address virtualization within a memory controller and configurable block device allocation. By performing address translation only at select hierarchical levels, a memory controller can be designed to have predictable I/O latency, with brief or otherwise negligible logical-to-physical address translation time. In one embodiment, address transition may be implemented entirely with logical gates and look-up tables of a memory controller integrated circuit, without requiring processor cycles. The disclosed virtualization scheme also provides for flexibility in customizing the configuration of virtual storage devices, to present nearly any desired configuration to a host or client.

Claims (138)

1 . A storage system comprising:

a host having a host-side interface; and

a storage drive comprising:

a drive-side interface,

flash memory having subdivisions comprising respective, non-overlapping sets of erase units, and physical storage locations in the erase units, and

logic operable to cause the storage drive to transmit to the host, responsive to receipt, via the drive-side interface, of at least one query from the host, information to identify the subdivisions and associated subdivision size;

wherein the host comprises logic operable to cause the host to:

format write requests to be addressed to a logical namespace and a specific one of the subdivisions, and

transmit, via the host-side interface, the write requests to the storage drive;

wherein the storage drive further comprises logic operable to cause the storage drive to:

maintain a logical-to-physical look-up table;

for each one of the write requests addressed to the specific one of the subdivisions:

derive, from accompanying address information, a first address portion, a second address portion, and a third address portion,

identify, from the first address portion, the logical namespace,

identify, from the second address portion, the specific one of the subdivisions,

identify from the third address portion, a logical block address,

identify one of the physical storage locations which is respective to the specific one of the subdivisions,

store data associated with the one of the write requests in the identified physical storage location, and

update the logical-to-physical look-up table to associate the logical block address with the identified physical storage location;

wherein, further, the host comprises logic operable to transmit, to the storage drive, via the host-side interface, deallocate commands;

wherein, further, the storage drive comprises logic operable to:

track validity status for data stored in the flash memory;

responsive to receipt of the deallocate commands, update the tracked validity status for corresponding physical storage locations to indicate that the corresponding physical storage locations are released; and

automatically detect a condition where (1) one of the erase units, in one of the respective, non-overlapping sets, has at least a threshold amount of storage that has been released, and (2) all storage locations of the one of the erase units, are at least one of (2a) released, or (2b) contain no host-accessible valid data, and responsively control physical erasure of the one of the erase units; and

update metadata associated with the one of the erase units, the metadata indicating one of an erase count or wear information, in association with the physical erasure of the one of the erase units; and

in connection with the physical erasure of the one of the erase units, detect that the one of the erase units is bad, and responsively update data tracked by the storage drive to mark the one of the erase units as bad;

wherein each said logic comprises at least one of circuitry or instructions stored on a physical storage medium that, when executed, are to control circuitry of the storage drive.

2 . The storage system of claim 1 , wherein:

the host further comprises logic operable to cause the host to transmit read requests to the storage drive, via the host-side interface, each of the read requests specifying a read logical block address; and

the storage drive further comprises logic operable to cause the storage drive to receive, via the drive-side interface, each of the read requests from the host, and to fulfill each given one of the read requests by:

retrieving, from the logical-to-physical look-up table, a read physical address which is mapped to the read logical block address specified by the given one of the read requests,

retrieving, from the flash memory, read data from a particular one of the physical locations of the flash memory which corresponds to the read physical address, and

transmitting the read data to the host.

3 . The storage system of claim 1 , wherein the storage drive further comprises logic operable to cause the storage drive to:

track second metadata respective to a given one of the subdivisions;

compare the second metadata with at least one criterion; and

responsive to satisfaction of the at least one criterion by the second metadata, automatically copy valid data from at least one erase unit, in the set respective to the given one of the subdivisions, to a new erase unit.

4 . The storage system of claim 3 , wherein the storage drive further comprises logic operable to cause the storage drive to:

in association with the copy of the valid data, disassociate the at least one erase unit from the set which is respective to the given one of the subdivisions; and

automatically control physical erasure of the at least one erase unit from the set which is respective to the given one of the subdivisions.

5 . The storage system of claim 4 , wherein the storage drive further comprises logic operable to cause the storage drive to:

maintain a pool of free erase units; and

select the new erase unit from the pool of free erase units, and assign the new erase unit to the set which is respective to the given one of the subdivisions.

6 . The storage system of claim 4 , wherein the storage drive further comprises logic operable to cause the storage drive to:

track information representing defect status of each erase unit in the set which is respective to the given one of the subdivisions;

in association with the automatically-controlled physical erasure of the at least one erase unit, detect an erasure error in a given erase unit of the at least one erase unit; and

responsively update tracked information representing defect status to mark the given erase unit as bad.

7 . The storage system of claim 3 , wherein:

the metadata of the storage drive comprises data validity information, tracked for at least one erase unit of the set respective to the given one of the subdivisions;

the at least one criterion of the storage drive comprises a criterion associated with data stored in individual ones of the erase units in one of the respective, non-overlapping sets; and

the automatic copy of valid data is performed responsive to satisfaction, by the data validity information, of the criterion.

8 . The storage system of claim 3 , wherein the metadata represents times, respective to the subdivisions, since data was programmed into at least one corresponding erase unit.

9 . The storage system of claim 3 , wherein the metadata indicates wear of each erase unit in a corresponding one of the non-overlapping sets of erase units.

10 . The storage system of claim 3 , wherein the metadata indicates data access frequencies respective to the subdivisions.

11 . The storage system of claim 1 , wherein the storage drive further comprises logic operable to cause the storage drive to:

track second metadata respective to the subdivisions;

compare the second metadata with at least one criterion;

responsive to satisfaction of the at least one criterion by the second metadata for a given one of the subdivisions, automatically copy valid data, from at least one erase unit in the set respective to the given one of the subdivisions, to a new erase unit; and

automatically update tracked data validity status for an old physical storage location of the flash memory, corresponding to the automatically copied data, to indicate that the old physical storage location is released.

12 . The storage system of claim 1 , wherein:

the at least one query is at least one first query;

the host further comprises logic operable to cause the host to transmit a second query to the storage drive; and

the storage drive further comprises logic operable to cause the storage drive to:

track second metadata respective to the subdivisions,

receive, via the drive-side interface, the second query, and

responsive to receipt of the second query, transmit second information, via the drive-side interface, to the host, the second information being dependent on the tracked metadata.

13 . The storage drive of claim 12 , wherein the second information identifies a given one of the subdivisions and indicates a quantity of available space, associated with the set of erase units which are respective to the given one of the subdivisions, which can currently be written to.

14 . The storage drive of claim 12 , wherein the second metadata represents a time since data was programmed into the respective subdivision.

15 . The storage drive of claim 1 , wherein:

the host further comprises logic operable to cause the host to transmit, via the host-side interface, a second query to the storage drive; and

the storage drive further comprises logic operable to cause the storage drive to:

store a value representing a maximum number of subdivisions, and

receive, via the drive-side interface, the second query, and

responsively transmit to the host, via the drive-side interface, information representing the maximum number of the subdivisions.

16 . The storage system of claim 1 , wherein:

the flash memory comprises flash memory dies;

the flash memory further comprises one or more die groups, each die group having a subset of one or more of the flash memory dies, the one or more of the flash memory dies in each die group being mutually-exclusive to the one or more of the flash memory dies in each other die group, wherein each die group is associated with a die group identifier (ID);

the host further comprises logic operable to cause the host to transmit, via the host-side interface, one or more second queries to the storage drive; and

the storage drive further comprises logic operable to cause the storage drive to receive the one or more second queries from the host, via the drive-side interface, and to responsively transmit to the host, via the drive-side interface, information representing each of the die group IDs.

17 . The storage system of claim 16 , wherein:

the host further comprises logic operable to cause the host to format each of the write requests to specify an ID associated with a specific die group of the one or more die groups; and

the storage drive further comprises logic operable to cause the storage drive to perform a division operation, on the address information associated each given one of the write requests, to identify a die group ID specified by the host in association with the given one of the write requests.

18 . The storage system of claim 1 , wherein:

the host further comprises logic operable to cause the host to transmit one or more second queries to the storage drive, via the host-side interface; and

the storage drive further comprises logic operable to cause the storage drive to receive the one or more second queries from the host, via the drive-side interface, and to transmit to the host, responsive to receipt of the one or more second queries, and via the drive-side interface, a data storage capacity associated with each one of the one or more subdivisions.

19 . The storage system of claim 1 , wherein:

the host further comprises logic operable to cause the host to transmit read requests to the storage drive, via the host-side interface; and

the storage drive further comprises logic operable to cause the storage drive to:

receive, via the drive-side interface, each of the read requests, wherein at least one of the read requests is directed to a particular logical block address,

detect an error condition associated with reading of data from the particular logical block address,

responsively copy valid data from one of the erase units, in one of the respective, non-overlapping sets, having a physical storage location corresponding to the particular logical block address, to a new erase unit, and

update the logical to physical look-up table to index the particular logical block address to a new physical address within the new erase unit.

20 . The storage drive of claim 19 , wherein the error condition corresponds to a bit error rate which exceeds a threshold.

21 . The storage system of claim 1 , wherein the storage drive further comprises logic operable to cause the storage drive to maintain information, respective to the subdivisions, identifying a next-available physical storage location for the respective subdivision, and to automatically update, in association with the receipt of a first one of the write requests, the information identifying the next-available physical storage location which is respective to the specific one of the subdivisions.

22 . The storage system of claim 21 , wherein:

the host further comprises logic operable to cause the host to transmit, to the storage drive, via the host-side interface, a second query, and

the storage drive further comprises logic operable to cause the storage drive to:

receive the second query from the host, via the drive-side interface, and

responsively transmit, to the host, via the drive-side interface, information which depends on the maintained information identifying the next-available physical storage location, as automatically updated, for at least one subdivision of the one or more subdivisions.

23 . The storage system of claim 1 , wherein the storage drive further comprises logic operable to cause the storage device to, for a write request which is directed to a given one of the subdivisions, perform a division operation on associated address information, wherein a quotient of the division operation comprises at least one of a number of the erase units, or a number of pages, or a number of storage locations, and wherein a remainder of the division operation corresponds to a structural offset corresponding to a physical address in the flash memory.

24 . The storage system of claim 1 , wherein the associated subdivision size corresponds to at least a minimum amount of storage capacity to be physically reset by the storage drive as part of a physical memory erasure operation.

25 . The storage system of claim 1 , wherein:

the storage drive further comprises logic operable to cause the storage drive to:

perform garbage collection; and

in connection with said garbage collection:

relocate all remaining valid data from any erase unit in the set respective to a given one of the subdivisions to one or more new erase units, and

automatically associate the set respective to the given one of the subdivisions with the one or more new erase units;

each of the one or more new erase units are associated with at most exactly one of the sets.

26 . The storage system of claim 1 , wherein the storage drive further comprises logic operable to cause the storage drive to receive, from the host, via the drive-side interface, a second write request, the second write request being directed to a given one of the subdivisions and, in association with the second write request, to:

detect that insufficient free memory space remains in the set of erase units respective to the given one of the subdivisions;

assign a new erase unit to the set respective to the given one of the subdivisions;

identify a destination physical address associated with a storage location in the new erase unit;

store write data accompanying the second write request at the storage location associated with the identified destination physical address; and

update the logical to physical look-up table to index a logical block address, identified for the second write request, to the destination physical address.

27 . The storage system of claim 26 , wherein:

the logical block address identified for the second write request corresponds to a logical block address identified for a first one of the write requests; and

the logic is further operable to cause the storage drive to update, in association with the storage of the write data accompanying the second write request at the storage location associated with the destination physical address, the logical-to-physical look-up table, so as to re-index a logical block address identified for the first one of the write requests to the destination physical address.

28 . The storage system of claim 1 , wherein:

the host further comprises logic operable to cause the host to transmit, to the storage drive, via the host-side interface, a configuration command accompanied with a setting; and

the storage drive further comprises logic operable to cause the storage drive to:

receive the configuration command from the host, via the drive-side interface; and

responsively update a quantity, of the subdivisions, dependent on the setting.

29 . The storage system of claim 1 , wherein:

the specific namespace is a first namespace;

the at least one namespace comprises a second namespace;

the write requests are first write requests;

the storage drive further comprises logic operable to cause the storage drive to the host, responsive to receipt, via the drive-side interface, of at least one query from the host, information to identify the second namespace, subdivisions which are associated with the second namespace and, for each one of the subdivisions associated with the second namespace, an associated subdivision size; and

the host further comprises logic operable to cause the host to format second write requests such that each of the second write requests are addressed to the second namespace and to a selected one of the subdivisions which are associated with the second namespace.

30 . The storage system of claim 1 , wherein:

the at least one namespace also comprises a second namespace;

the deallocate commands are first deallocate commands;

the first deallocate commands are addressed to the first namespace;

the storage drive comprises logic operable to:

receive, via the drive-side interface, second deallocate commands from the host, the second deallocate commands being addressed to the second namespace,

responsive to receipt of the second deallocate commands, update tracked validity status for corresponding physical storage locations associated with the second namespace to indicate that the corresponding physical storage locations associated with the second namespace are released; and

automatically detect a condition where (1) an erase unit associated with the second namespace has at least a threshold amount of storage that has been released, and (2) all storage locations of the second one of the erase units, are each at least one of (2a) released, or (2b) contain no host-accessible valid data, and to responsively and automatically control physical erasure of the erase unit associated with the second namespace; and

store metadata, for the erase unit associated with the second namespace, indicating one of an erase count or wear information, and, in association with the physical erasure of the erase unit associated with the second namespace, to update the metadata for the erase unit associated with the second namespace; and

in connection with the physical erasure of the erase unit associated with the second namespace, detect that the erase unit associated with the second namespace is bad, and to responsively update data tracked by the storage drive to mark the erase unit associated with the second namespace as bad.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2026
From: KUZMIN, ANDREY V.; JADON, MIKE; LERCARI, ROBERT; ROBERTSON, CRAIG; CHEN, ALAN
To: RADIAN MEMORY SYSTEMS, INC.
Reel/Frame 073599/0494 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2026
From: RADIAN MEMORY SYSTEMS, INC.
To: RADIAN MEMORY SYSTEMS, LLC
Reel/Frame 073599/0523 →
Continuity (14)
Continuation 19001292 · Dec 24, 2024
Continuation 18412906 · Jan 15, 2024
Continuation 18140938 · Apr 28, 2023
Continuation 17377754 · Jul 16, 2021
Continuation 17213015 · Mar 25, 2021
Continuation 16841402 · Apr 6, 2020
Continuation 15690006 · Aug 29, 2017
Continuation 15074778 · Mar 18, 2016
Continuation 14880529 · Oct 12, 2015
Continuation In Part 14848273 · Sep 8, 2015
Provisional Application 62199969 · Jul 31, 2015
Provisional Application 62194172 · Jul 17, 2015
Provisional Application 62063357 · Oct 13, 2014
Provisional Application 62048162 · Sep 9, 2014
References Cited (400)
US 4532590A · Wallach · 1985 [cited by applicant]
US 4813002A · Joyce · 1989 [cited by applicant]
US 5404485A · Ban · 1995 [cited by applicant]
US 5568423A · Jou et al. · 1996 [cited by applicant]
US 5652857A · Shimoi et al. · 1997 [cited by applicant]
US 5860082A · Smith et al. · 1999 [cited by applicant]
US 5963977A · Gold · 1999 [cited by applicant]
US 6118724A · Higgenbottom · 2000 [cited by applicant]
US 6134631A · Jennings, III · 2000 [cited by applicant]
US 6145069A · Dye · 2000 [cited by applicant]
US 6148354A · Ban · 2000 [cited by applicant]
US 6381668B1 · Lunteren · 2002 [cited by applicant]
US 6430650B1 · Miyauchi · 2002 [cited by applicant]
US 6571312B1 · Sugai · 2003 [cited by applicant]
US 6892287B1 · Millard · 2005 [cited by applicant]
US 6895464B2 · Chow · 2005 [cited by applicant]
US 7096378B2 · Stence et al. · 2006 [cited by applicant]
US 7120729B2 · Gonzalez · 2006 [cited by applicant]
US 7339823B2 · Nakayama et al. · 2008 [cited by applicant]
US 7383375B2 · Sinclair · 2008 [cited by applicant]
US 7404031B2 · Oshima · 2008 [cited by applicant]
US 7406563B1 · Nagshain · 2008 [cited by applicant]
US 7409489B2 · Sinclair · 2008 [cited by applicant]
US 7519869B2 · Mizuno · 2009 [cited by applicant]
US 7552272B2 · Gonzalez · 2009 [cited by applicant]
US 7555628B2 · Bennett · 2009 [cited by applicant]
US 7581078B2 · Ware · 2009 [cited by applicant]
US 7702846B2 · Nakanishi et al. · 2010 [cited by applicant]
US 7702948B1 · Kalman · 2010 [cited by applicant]
US 7710777B1 · Mintierth · 2010 [cited by applicant]
US 7739444B2 · Sinclair · 2010 [cited by applicant]
US 7747813B2 · Danilak · 2010 [cited by applicant]
US 7752381B2 · Wong · 2010 [cited by applicant]
US 7801561B2 · Parikh et al. · 2010 [cited by applicant]
US 7809900B2 · Danilak · 2010 [cited by applicant]
US 7814262B2 · Sinclair · 2010 [cited by applicant]
US 7818489B2 · Karamcheti et al. · 2010 [cited by applicant]
US 7836244B2 · Kim et al. · 2010 [cited by applicant]
US 7861122B2 · Cornwell et al. · 2010 [cited by applicant]
US 7877540B2 · Sinclair · 2011 [cited by applicant]
US 7898855B2 · Merry · 2011 [cited by applicant]
US 7904619B2 · Danilak · 2011 [cited by applicant]
US 7934074B2 · Lee · 2011 [cited by applicant]
US 7941692B2 · Royer et al. · 2011 [cited by applicant]
US 7970983B2 · Nochimowski · 2011 [cited by applicant]
US 7984233B2 · Sinclair · 2011 [cited by applicant]
US 7991944B2 · Lee et al. · 2011 [cited by applicant]
US 8001318B1 · Tyer · 2011 [cited by applicant]
US 8024545B2 · Kim et al. · 2011 [cited by applicant]
US 8046524B2 · Tringali · 2011 [cited by applicant]
US 8055833B2 · Danilak et al. · 2011 [cited by applicant]
US 8065471B2 · Yano et al. · 2011 [cited by applicant]
US 8065473B2 · Ito et al. · 2011 [cited by applicant]
US 8068365B2 · Kim · 2011 [cited by applicant]
US 8069284B2 · Oh · 2011 [cited by applicant]
US 8072463B1 · Van Dyke · 2011 [cited by applicant]
US 8074022B2 · Okin et al. · 2011 [cited by applicant]
US 8082389B2 · Fujibayashi · 2011 [cited by applicant]
US 8086790B2 · Roohparvar · 2011 [cited by applicant]
US 8099581B2 · Bennett · 2012 [cited by applicant]
US 8099632B2 · Tringali · 2012 [cited by applicant]
US 8195912B2 · Flynn · 2012 [cited by applicant]
US 8219776B2 · Forhan · 2012 [cited by applicant]
US 8285918B2 · Maheshwari · 2012 [cited by applicant]
US 8291151B2 · Sinclair · 2012 [cited by applicant]
US 8291295B2 · Harari · 2012 [cited by applicant]
US 8301881B2 · Reiter · 2012 [cited by applicant]
US 8341339B1 · Boyle · 2012 [cited by applicant]
US 8347042B2 · You · 2013 [cited by applicant]
US 8386700B2 · Olbrich · 2013 [cited by applicant]
US 8402249B1 · Zhu · 2013 [cited by applicant]
US 8423710B1 · Gole · 2013 [cited by applicant]
US 8429359B1 · Desai · 2013 [cited by applicant]
US 8495280B2 · Kang · 2013 [cited by applicant]
US 8538919B1 · Nielsen · 2013 [cited by applicant]
US 8539197B1 · Marshall · 2013 [cited by applicant]
US 8572331B2 · Shalvi · 2013 [cited by applicant]
US 8601202B1 · Melcher · 2013 [cited by applicant]
US 8621137B2 · Olbrich · 2013 [cited by applicant]
US 8626989B2 · Van Aken · 2014 [cited by applicant]
US 8645634B1 · Cox et al. · 2014 [cited by applicant]
US 8688894B2 · Kuehne · 2014 [cited by applicant]
US 8700961B2 · Lassa · 2014 [cited by applicant]
US 8886899B1 · Bao · 2014 [cited by applicant]
US 8898410B1 · Ehrenberg · 2014 [cited by applicant]
US 8954708B2 · Kim · 2015 [cited by applicant]
US 8959307B1 · Bruce · 2015 [cited by applicant]
US 8996796B1 · Karamcheti · 2015 [cited by applicant]
US 9063844B2 · Higgins · 2015 [cited by applicant]
US 9075705B2 · Ohishi · 2015 [cited by applicant]
US 9092182B2 · Ohishi · 2015 [cited by applicant]
US 9123443B2 · Chung · 2015 [cited by applicant]
US 9128624B2 · Ng · 2015 [cited by applicant]
US 9134918B2 · Yurzola · 2015 [cited by applicant]
US 9176864B2 · Gorobets · 2015 [cited by applicant]
US 9229854B1 · Kuzmin et al. · 2016 [cited by applicant]
US 9239781B2 · Jones · 2016 [cited by applicant]
US 9286198B2 · Bennett · 2016 [cited by applicant]
US 9329986B2 · Li · 2016 [cited by applicant]
US 9335939B2 · Bennett et al. · 2016 [cited by applicant]
US 9344596B2 · Ohishi · 2016 [cited by applicant]
US 9348749B2 · Choi · 2016 [cited by applicant]
US 9378149B1 · Bonwick · 2016 [cited by applicant]
US 9383926B2 · Law · 2016 [cited by applicant]
US 9400749B1 · Kuzmin et al. · 2016 [cited by applicant]
US 9405621B2 · Yu · 2016 [cited by applicant]
US 9519578B1 · Kuzmin et al. · 2016 [cited by applicant]
US 9542118B1 · Lercari et al. · 2017 [cited by applicant]
US 9565269B2 · Malwankar · 2017 [cited by applicant]
US 9575672B2 · Yamamoto · 2017 [cited by applicant]
US 9588904B1 · Lercari et al. · 2017 [cited by applicant]
US 9652376B2 · Kuzmin et al. · 2017 [cited by applicant]
US 9696917B1 · Sareena et al. · 2017 [cited by applicant]
US 9710377B1 · Kuzmin et al. · 2017 [cited by applicant]
US 9727454B2 · Kuzmin et al. · 2017 [cited by applicant]
US 9734086B2 · Flynn · 2017 [cited by applicant]
US 9785572B1 · Lercari et al. · 2017 [cited by applicant]
US 9846541B2 · Miyamoto et al. · 2017 [cited by applicant]
US 9858008B2 · Liu · 2018 [cited by applicant]
US 10048884B2 · Mylly · 2018 [cited by applicant]
US 10067866B2 · Sutardja · 2018 [cited by applicant]
US 10445229B1 · Kuzmin et al. · 2019 [cited by applicant]
US 10552058B1 · Jadon et al. · 2020 [cited by applicant]
US 10552085B1 · Chen et al. · 2020 [cited by applicant]
US 10642505B1 · Kuzmin · 2020 [cited by applicant]
US 10642748B1 · Lercari · 2020 [cited by applicant]
US 10838853B1 · Kuzmin · 2020 [cited by applicant]
US 10884915B1 · Kuzmin · 2021 [cited by applicant]
US 10915458B1 · Lercari · 2021 [cited by applicant]
US 10956082B1 · Kuzmin · 2021 [cited by applicant]
US 10977188B1 · Lercari · 2021 [cited by applicant]
US 10983907B1 · Kuzmin · 2021 [cited by applicant]
US 10996863B1 · Kuzmin · 2021 [cited by applicant]
US 11003586B1 · Lercari · 2021 [cited by applicant]
US 11023315B1 · Jadon · 2021 [cited by applicant]
US 11023386B1 · Lercari · 2021 [cited by applicant]
US 11023387B1 · Lercari · 2021 [cited by applicant]
US 11048643B1 · Lercari · 2021 [cited by applicant]
US 11068408B2 · Kim · 2021 [cited by applicant]
US 11074175B1 · Kuzmin · 2021 [cited by applicant]
US 11080181B1 · Kuzmin · 2021 [cited by applicant]
US 11086789B1 · Lercari · 2021 [cited by applicant]
US 11100006B1 · Lercari · 2021 [cited by applicant]
US 11163492B2 · Kamran · 2021 [cited by applicant]
US 11175984B1 · Lercari · 2021 [cited by applicant]
US 11188457B1 · Kuzmin · 2021 [cited by applicant]
US 11216365B1 · Kuzmin · 2022 [cited by applicant]
US 11221959B1 · Lercari · 2022 [cited by applicant]
US 11221960B1 · Lercari · 2022 [cited by applicant]
US 11221961B1 · Lercari · 2022 [cited by applicant]
US 11249652B1 · Kuzmin · 2022 [cited by applicant]
US 11307995B1 · Lercari · 2022 [cited by applicant]
US 11314636B1 · Kuzmin · 2022 [cited by applicant]
US 11334476B2 · Kuzmin · 2022 [cited by applicant]
US 11347638B1 · Kuzmin · 2022 [cited by applicant]
US 11347639B1 · Kuzmin · 2022 [cited by applicant]
US 11347656B1 · Lercari · 2022 [cited by applicant]
US 11347657B1 · Lercari · 2022 [cited by applicant]
US 11347658B1 · Lercari · 2022 [cited by applicant]
US 11354234B1 · Kuzmin · 2022 [cited by applicant]
US 11354235B1 · Kuzmin · 2022 [cited by applicant]
US 11416413B1 · Lercari · 2022 [cited by applicant]
US 11449240B1 · Jadon · 2022 [cited by applicant]
US 11449436B1 · Lercari · 2022 [cited by applicant]
US 11487678B2 · Park · 2022 [cited by applicant]
US 11500766B2 · Bueb · 2022 [cited by applicant]
US 11544183B1 · Kuzmin · 2023 [cited by applicant]
US 11544200B1 · Lercari · 2023 [cited by applicant]
US 11580030B2 · Das · 2023 [cited by applicant]
US 11907134B1 · Lercari · 2024 [cited by applicant]
US 12093533B1 · Kuzmin · 2024 [cited by applicant]
US 12147335B1 · Kuzmin · 2024 [cited by applicant]
US 12461655B1 · Kuzmin · 2025 [cited by applicant]
US 20030028733A1 · Tsunoda et al. · 2003 [cited by applicant]
US 20030037071A1 · Harris · 2003 [cited by applicant]
US 20030065866A1 · Spencer · 2003 [cited by applicant]
US 20030188032A1 · Solomon · 2003 [cited by applicant]
US 20040083335A1 · Gonzalez · 2004 [cited by applicant]
US 20040117414A1 · Braun · 2004 [cited by applicant]
US 20050073844A1 · Gonzalez · 2005 [cited by applicant]
US 20050073884A1 · Gonzalez · 2005 [cited by applicant]
US 20050144367A1 · Sinclair · 2005 [cited by applicant]
US 20050144413A1 · Kuo · 2005 [cited by applicant]
US 20050160227A1 · Todd · 2005 [cited by applicant]
US 20050193161A1 · Lee · 2005 [cited by applicant]
US 20050248993A1 · Lee · 2005 [cited by applicant]
US 20060004957A1 · Hand, III · 2006 [cited by applicant]
US 20060221719A1 · Maeda et al. · 2006 [cited by applicant]
US 20070019481A1 · Park · 2007 [cited by applicant]
US 20070033378A1 · Sinclair · 2007 [cited by applicant]
US 20070046681A1 · Nagashima · 2007 [cited by applicant]
US 20070058431A1 · Chung et al. · 2007 [cited by applicant]
US 20070091497A1 · Mizuno · 2007 [cited by applicant]
US 20070136555A1 · Sinclair · 2007 [cited by applicant]
US 20070143569A1 · Sanders · 2007 [cited by applicant]
US 20070168321A1 · Saito · 2007 [cited by applicant]
US 20070233939A1 · Kim · 2007 [cited by applicant]
US 20070260811A1 · Merry et al. · 2007 [cited by applicant]
US 20070260841A1 · Hampel · 2007 [cited by applicant]
US 20070283428A1 · Ma et al. · 2007 [cited by applicant]
US 20070294496A1 · Goss · 2007 [cited by applicant]
US 20080005502A1 · Kanai · 2008 [cited by applicant]
US 20080034153A1 · Lee · 2008 [cited by applicant]
US 20080082596A1 · Gorobets · 2008 [cited by applicant]
US 20080126720A1 · Danilak · 2008 [cited by applicant]
US 20080126724A1 · Danilak · 2008 [cited by applicant]
US 20080140902A1 · Townsend · 2008 [cited by applicant]
US 20080147964A1 · Chow · 2008 [cited by applicant]
US 20080155204A1 · Qawami et al. · 2008 [cited by applicant]
US 20080189485A1 · Jung et al. · 2008 [cited by applicant]
US 20080189490A1 · Cheon · 2008 [cited by applicant]
US 20080195833A1 · Park · 2008 [cited by applicant]
US 20080201517A1 · Kuhne · 2008 [cited by applicant]
US 20080209114A1 · Chow · 2008 [cited by applicant]
US 20080256287A1 · Lee · 2008 [cited by applicant]
US 20080294813A1 · Gorobets · 2008 [cited by applicant]
US 20080307020A1 · Ko · 2008 [cited by applicant]
US 20080307192A1 · Sinclair · 2008 [cited by applicant]
US 20080320476A1 · Wingard · 2008 [cited by applicant]
US 20090036163A1 · Kimbrell · 2009 [cited by applicant]
US 20090044190A1 · Tringali · 2009 [cited by applicant]
US 20090046533A1 · Jo · 2009 [cited by applicant]
US 20090083478A1 · Kunimatsu · 2009 [cited by applicant]
US 20090089482A1 · Traister · 2009 [cited by applicant]
US 20090089490A1 · Ozawa et al. · 2009 [cited by applicant]
US 20090119529A1 · Kono · 2009 [cited by applicant]
US 20090138671A1 · Danilak · 2009 [cited by applicant]
US 20090144497A1 · Withers · 2009 [cited by applicant]
US 20090172219A1 · Mardiks · 2009 [cited by applicant]
US 20090172246A1 · Afriat · 2009 [cited by applicant]
US 20090172250A1 · Allen et al. · 2009 [cited by applicant]
US 20090172257A1 · Prins · 2009 [cited by applicant]
US 20090172499A1 · Olbrich · 2009 [cited by applicant]
US 20090182964A1 · Greiner · 2009 [cited by applicant]
US 20090198946A1 · Ebata · 2009 [cited by applicant]
US 20090210616A1 · Karamcheti · 2009 [cited by applicant]
US 20090210636A1 · Karamcheti · 2009 [cited by applicant]
US 20090216992A1 · Greiner · 2009 [cited by applicant]
US 20090240903A1 · Sauber · 2009 [cited by applicant]
US 20090254689A1 · Karamcheti · 2009 [cited by applicant]
US 20090254705A1 · Abali et al. · 2009 [cited by applicant]
US 20090271562A1 · Sinclair · 2009 [cited by applicant]
US 20090292839A1 · Oh · 2009 [cited by applicant]
US 20090300015A1 · Kazan et al. · 2009 [cited by applicant]
US 20090327602A1 · Moore et al. · 2009 [cited by applicant]
US 20100011085A1 · Taguchi · 2010 [cited by applicant]
US 20100011186A1 · Bennett · 2010 [cited by applicant]
US 20100023566A1 · Minamino · 2010 [cited by applicant]
US 20100030946A1 · Kano · 2010 [cited by applicant]
US 20100042655A1 · Tse et al. · 2010 [cited by applicant]
US 20100049908A1 · Gonzalez · 2010 [cited by applicant]
US 20100083050A1 · Ohyama · 2010 [cited by applicant]
US 20100106734A1 · Calder · 2010 [cited by applicant]
US 20100115172A1 · Gillingham et al. · 2010 [cited by applicant]
US 20100125702A1 · Lee · 2010 [cited by applicant]
US 20100161882A1 · Stern et al. · 2010 [cited by applicant]
US 20100162012A1 · Cornwell et al. · 2010 [cited by applicant]
US 20100182838A1 · Kim et al. · 2010 [cited by applicant]
US 20100191779A1 · Hinrichs · 2010 [cited by applicant]
US 20100199065A1 · Kaneda · 2010 [cited by applicant]
US 20100211737A1 · Flynn · 2010 [cited by applicant]
US 20100241866A1 · Rodorff · 2010 [cited by applicant]
US 20100262761A1 · Borchers et al. · 2010 [cited by applicant]
US 20100262762A1 · Borchers · 2010 [cited by applicant]
US 20100262765A1 · Cheon · 2010 [cited by applicant]
US 20100262773A1 · Borchers · 2010 [cited by applicant]
US 20100281230A1 · Rabii et al. · 2010 [cited by applicant]
US 20100287217A1 · Borchers et al. · 2010 [cited by applicant]
US 20100287327A1 · Li · 2010 [cited by applicant]
US 20100287332A1 · Koshiyama · 2010 [cited by applicant]
US 20100299494A1 · Van Acht · 2010 [cited by applicant]
US 20100329011A1 · Lee et al. · 2010 [cited by applicant]
US 20110033548A1 · Kimmel et al. · 2011 [cited by applicant]
US 20110041039A1 · Harari · 2011 [cited by applicant]
US 20110055445A1 · Gee et al. · 2011 [cited by applicant]
US 20110066792A1 · Shaeffer · 2011 [cited by applicant]
US 20110125956A1 · Danilak · 2011 [cited by applicant]
US 20110126045A1 · Bennett · 2011 [cited by applicant]
US 20110138114A1 · Yen · 2011 [cited by applicant]
US 20110153817A1 · Maita · 2011 [cited by applicant]
US 20110153911A1 · Sprouse · 2011 [cited by applicant]
US 20110161784A1 · Sellinger et al. · 2011 [cited by applicant]
US 20110167199A1 · Danilak · 2011 [cited by applicant]
US 20110197014A1 · Yeh · 2011 [cited by applicant]
US 20110197023A1 · Iwamitsu et al. · 2011 [cited by applicant]
US 20110231623A1 · Goss · 2011 [cited by applicant]
US 20110236049A1 · Haga · 2011 [cited by applicant]
US 20110238890A1 · Sukegawa · 2011 [cited by applicant]
US 20110238892A1 · Tsai · 2011 [cited by applicant]
US 20110238943A1 · Devendran et al. · 2011 [cited by applicant]
US 20110258385A1 · Soran et al. · 2011 [cited by applicant]
US 20110258388A1 · Soran · 2011 [cited by applicant]
US 20110264843A1 · Haines · 2011 [cited by applicant]
US 20110271032A1 · Yamada · 2011 [cited by applicant]
US 20110276756A1 · Bish et al. · 2011 [cited by applicant]
US 20110283043A1 · Schuette · 2011 [cited by applicant]
US 20110289263A1 · McWilliams · 2011 [cited by applicant]
US 20110296089A1 · Seol · 2011 [cited by applicant]
US 20110296133A1 · Flynn et al. · 2011 [cited by applicant]
US 20110302477A1 · Goss · 2011 [cited by applicant]
US 20110314209A1 · Eckstein · 2011 [cited by applicant]
US 20120033519A1 · Confalonieri et al. · 2012 [cited by applicant]
US 20120054419A1 · Chen · 2012 [cited by applicant]
US 20120059972A1 · Chen · 2012 [cited by applicant]
US 20120066441A1 · Weingarten · 2012 [cited by applicant]
US 20120072654A1 · Olbrich · 2012 [cited by applicant]
US 20120072807A1 · Cornwell · 2012 [cited by applicant]
US 20120079174A1 · Nellans · 2012 [cited by applicant]
US 20120096217A1 · Son · 2012 [cited by applicant]
US 20120131270A1 · Hemmi · 2012 [cited by applicant]
US 20120131381A1 · Eleftheriou · 2012 [cited by applicant]
US 20120155492A1 · Abel · 2012 [cited by applicant]
US 20120159037A1 · Kwon · 2012 [cited by applicant]
US 20120159039A1 · Kegel et al. · 2012 [cited by applicant]
US 20120191921A1 · Shaeffer · 2012 [cited by applicant]
US 20120198123A1 · Post · 2012 [cited by applicant]
US 20120198128A1 · Van Aken · 2012 [cited by applicant]
US 20120198129A1 · Van Aken · 2012 [cited by applicant]
US 20120204079A1 · Takefman et al. · 2012 [cited by applicant]
US 20120221776A1 · Yoshihashi · 2012 [cited by applicant]
US 20120246394A1 · Ou · 2012 [cited by applicant]
US 20120284587A1 · Yu · 2012 [cited by applicant]
US 20120303875A1 · Benhase · 2012 [cited by applicant]
US 20130007343A1 · Rub · 2013 [cited by applicant]
US 20130013852A1 · Hou et al. · 2013 [cited by applicant]
US 20130019062A1 · Bennett et al. · 2013 [cited by applicant]
US 20130024423A1 · Doshi · 2013 [cited by applicant]
US 20130024460A1 · Peterson · 2013 [cited by applicant]
US 20130073793A1 · Yamagishi · 2013 [cited by applicant]
US 20130073816A1 · Seo et al. · 2013 [cited by applicant]
US 20130097236A1 · Khorashadi · 2013 [cited by applicant]
US 20130111295A1 · Li et al. · 2013 [cited by applicant]
US 20130111298A1 · Seroff · 2013 [cited by applicant]
US 20130124793A1 · Gyl et al. · 2013 [cited by applicant]
US 20130124807A1 · Nielsen · 2013 [cited by applicant]
US 20130138868A1 · Seroff · 2013 [cited by applicant]
US 20130145111A1 · Murukani · 2013 [cited by applicant]
US 20130166820A1 · Batwara · 2013 [cited by applicant]
US 20130166824A1 · Shim · 2013 [cited by applicant]
US 20130166825A1 · Kim et al. · 2013 [cited by applicant]
US 20130173554A1 · Ubukata · 2013 [cited by applicant]
US 20130227201A1 · Talagala · 2013 [cited by applicant]
US 20130232297A1 · Tanaka · 2013 [cited by applicant]
US 20130242425A1 · Zayas et al. · 2013 [cited by applicant]
US 20130275682A1 · Ramanujan · 2013 [cited by applicant]
US 20130282955A1 · Parker · 2013 [cited by applicant]
US 20130290619A1 · Knight · 2013 [cited by applicant]
US 20130297852A1 · Fai et al. · 2013 [cited by applicant]
US 20130297880A1 · Flynn · 2013 [cited by applicant]
US 20130326117A1 · Aune · 2013 [cited by applicant]
US 20130332656A1 · Kandiraju · 2013 [cited by applicant]
US 20130339580A1 · Brandt · 2013 [cited by applicant]
US 20140040550A1 · Nale · 2014 [cited by applicant]
US 20140047210A1 · Cohen · 2014 [cited by examiner]
US 20140047300A1 · Liang · 2014 [cited by applicant]
US 20140068197A1 · Joshi · 2014 [cited by applicant]
US 20140101371A1 · Nguyen et al. · 2014 [cited by applicant]
US 20140122781A1 · Smith · 2014 [cited by examiner]
US 20140189207A1 · Sinclair · 2014 [cited by applicant]
US 20140189209A1 · Sinclair et al. · 2014 [cited by applicant]
US 20140195725A1 · Bennett · 2014 [cited by applicant]
US 20140208004A1 · Cohen · 2014 [cited by applicant]
US 20140208062A1 · Cohen · 2014 [cited by applicant]
US 20140215129A1 · Kuzmin · 2014 [cited by examiner]
US 20140237168A1 · Prins · 2014 [cited by applicant]
US 20140297949A1 · Nagawaka · 2014 [cited by applicant]
US 20140317346A1 · Moon · 2014 [cited by applicant]
US 20150046670A1 · Kim · 2015 [cited by applicant]
US 20150067297A1 · Arroyo et al. · 2015 [cited by applicant]
US 20150074342A1 · Bao · 2015 [cited by applicant]
US 20150113203A1 · Dancho et al. · 2015 [cited by applicant]
US 20150134930A1 · Huang et al. · 2015 [cited by applicant]
US 20150149789A1 · Seo et al. · 2015 [cited by applicant]
US 20150193148A1 · Miwa et al. · 2015 [cited by applicant]
US 20150212938A1 · Chen et al. · 2015 [cited by applicant]
US 20150261456A1 · Alcantara et al. · 2015 [cited by applicant]
US 20150263978A1 · Olson · 2015 [cited by applicant]
US 20150309734A1 · Brondjik · 2015 [cited by applicant]
US 20150324264A1 · Vidypoornachy et al. · 2015 [cited by applicant]
US 20150339187A1 · Sharon · 2015 [cited by applicant]
US 20150347041A1 · Kotte et al. · 2015 [cited by applicant]
US 20150347291A1 · Choi · 2015 [cited by applicant]
US 20150347296A1 · Kotte · 2015 [cited by applicant]
US 20150355965A1 · Peddle · 2015 [cited by applicant]
US 20150363120A1 · Chen · 2015 [cited by applicant]
US 20150378613A1 · Koseki · 2015 [cited by applicant]
US 20150378886A1 · Nemazie · 2015 [cited by applicant]
US 20160011818A1 · Hashimoto · 2016 [cited by examiner]
US 20160018998A1 · Mohan et al. · 2016 [cited by applicant]
US 20160019148A1 · Vekiarides · 2016 [cited by applicant]
US 20160019159A1 · Ueda · 2016 [cited by applicant]
US 20160026564A1 · Manning · 2016 [cited by examiner]
US 20160034221A1 · Zettsu · 2016 [cited by applicant]
US 20160070496A1 · Cohen · 2016 [cited by applicant]
US 20160092116A1 · Liu · 2016 [cited by applicant]
US 20160147669A1 · Huang · 2016 [cited by applicant]
US 20160179664A1 · Camp · 2016 [cited by applicant]
US 20160202910A1 · Ravimohan · 2016 [cited by applicant]
US 20160253091A1 · Ayyavu · 2016 [cited by applicant]
US 20160342509A1 · Kotte et al. · 2016 [cited by applicant]