US 12,067,274 B2
Writing segments and erase blocks based on ordering
Benjamin Scholbrock, San Jose, CA (US); Andrew R. Bernat, Mountain View, CA (US); Ronald Karr, Palo Alto, CA (US); and Xiaohui Wang, Mountain View, CA (US)
Assigned to PURE STORAGE, INC., Santa Clara, CA (US)
Filed by Pure Storage, Inc., Mountain View, CA (US)
Filed on Sep. 19, 2022, as Appl. No. 17/948,064.
Application 17/948,064 is a continuation in part of application No. 17/380,191, filed on Jul. 20, 2021, granted, now 11,520,514.
Application 17/380,191 is a continuation in part of application No. 16/389,675, filed on Apr. 19, 2019, granted, now 11,354,058, issued on Jun. 7, 2022.
Claims priority of provisional application 62/729,597, filed on Sep. 11, 2018.
Claims priority of provisional application 62/727,792, filed on Sep. 6, 2018.
Prior Publication US 2023/0085040 A1, Mar. 16, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/064 (2013.01) [G06F 3/0617 (2013.01); G06F 3/0659 (2013.01); G06F 3/067 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method, comprising:
receiving a set of data blocks to be stored in a storage system, the storage system comprising a plurality of non-volatile memory modules;
generating a set of segments based on the set of data blocks, a respective segment comprising portions of one or more allocation units; and
writing the set of segments to the non-volatile memory modules based on orderings of the portions of the one or more allocation units.