1323:
172:(OS) to the physical addresses of the flash memory. This means that every write to a previously written block must first be read, erased, modified, and re-written to the same location. This approach is very time-consuming and frequently written locations will wear out quickly, while other locations will not be used at all. Once a few blocks reach their end of life, such a device becomes inoperable.
205:
which also uses a map to link the LBA to physical memory addresses. Static wear leveling works the same as dynamic wear leveling except the static blocks that do not change are periodically moved so that these low usage cells are able to be used by other data. This rotational effect enables an SSD to
111:
Wear leveling attempts to work around these limitations by arranging data so that erasures and re-writes are distributed evenly across the medium. In this way, no single erase block prematurely fails due to a high concentration of write cycles. In flash memory, a single block on the chip is designed
87:
and flash memory media have individually erasable segments, each of which can be put through a limited number of erase cycles before becoming unreliable. This is usually around 3,000/5,000 cycles but many flash devices have one block with a specially extended life of 100,000+ cycles that can be used
214:
Both dynamic and static wear leveling are implemented at the local level. This simply means that in a multi-chip product, every chip is managed as a single resource. The number of defective blocks in different chips within a NAND flash memory varies: a given chip could have all its data blocks worn
215:
out while another chip in the same device could have all its blocks still active. Global wear leveling addresses this problem by managing all blocks from all chips in the flash memory together―in a single pool. It ensures that all the cells in all the chips within the product are worn out evenly.
192:
data, and a new block is linked to that map entry. Each time a block of data is re-written to the flash memory, it is written to a new location. However, flash memory blocks that never get replacement data would sustain no additional wear, thus the name comes only from the dynamic data being
143:
were originally designed for magnetic disks and as such rewrite many of their data structures (such as their directories) repeatedly to the same area. When these systems are used on flash memory media, this becomes a problem. The problem is aggravated by the fact that some file systems track
312:(LFU) queue. The data structures for the queue itself must either be stored off-device or in such a way that the space it uses is itself wear-leveled or, in the case of flash memory, in a block with a specially extended life. However, usual
1253:
324:
storage devices as they have an asymmetrical nature – reads are usually much faster than writes, and erase operations can be performed only one "block" at a time.
168:
will not last very long if data is written to the flash. Without wear leveling, the underlying flash controller must permanently assign the logical addresses from the
193:
recycled. Such a device may last longer than one with no wear leveling, but there are blocks still remaining as active even though the device is no longer operable.
955:
563:
786:
305:
A pool of reserve space can also be kept. When a block or sector does fail, future reads and writes to it can be redirected to a replacement in that pool.
188:(LBAs) from the OS to the physical flash memory. Each time the OS writes replacement data, the map is updated so the original physical block is marked as
439:
346:
1288:
1263:
1118:
735:
1364:
1327:
1278:
484:
76:(HDDs) designed for storing audio and video data. However, HDDs generally are not wear-leveled devices in the context of this article.
1134:
758:
677:
520:
128:
779:
1293:
814:
299:
112:
for longer life than the others so that the memory controller can store operational data with less chance of its corruption.
1369:
545:
61:. There are several wear leveling mechanisms that provide varying levels of longevity enhancement in such memory systems.
1354:
1359:
1283:
945:
372:
in that they treat their media as circular logs and write to them in sequential passes. File systems which implement
772:
369:
571:
1349:
1083:
839:
327:
450:
1215:
834:
89:
1073:
1273:
592:"Algorithms and data structures for flash memories", E. Gal, and S. Toledo, ACM Computing Surveys, 2005
365:
350:
309:
185:
120:
1169:
317:
136:
1021:
915:
894:
879:
874:
864:
709:
334:
58:
1068:
1026:
713:
495:
564:"SSDs Shifting to 25nm NAND - What You Need to Know | StorageReview.com - Storage Reviews"
1016:
910:
819:
795:
394:
389:
156:
There are three basic types of wear leveling mechanisms used in flash memory storage devices:
50:
1005:(bankrupt, assets sold to Toshiba, which later spun off its SSD and flash business to Kioxia)
884:
859:
829:
313:
169:
124:
42:
1192:
1052:
970:
935:
356:
Wear leveling can also be implemented in software by special-purpose file systems such as
342:
338:
73:
69:
54:
17:
1210:
1098:
491:
524:
302:
code can be kept for each block or sector in order to detect errors or correct errors.
1343:
1303:
1140:
373:
1308:
1158:
869:
854:
824:
652:
321:
93:
46:
38:
1268:
1207:
1152:
1146:
116:
1163:
1093:
809:
413:
1031:
980:
240:
1038:
1008:
920:
849:
446:
206:
continue to operate until most of the blocks are near their end of life.
145:
132:
1047:'s NAND flash SSD business including controllers and renamed it Solidigm
1078:
975:
632:
607:
105:
1088:
997:
939:
764:
759:
Flash SSDs – Inferior
Technology or Closet Superstar?
101:
84:
628:
603:
1258:
1237:
1220:
1197:
1044:
926:
361:
357:
97:
1298:
990:
985:
844:
140:
768:
223:
The following table compares static and dynamic wear leveling:
1232:
1227:
1202:
1175:
1002:
761:, bitmicro.com, archived from the original on February 2, 2007
377:
92:
to track wear and movement of data across segments. Erasable
294:
There are several techniques for extending the media life:
341:, techniques are implemented in hardware by a built-in
320:-based caches, making them not directly suitable for
316:
are designed to manage the data flow into and out of
104:
are rated at up to 1,000 cycles (100,000 cycles for
1246:
1185:
1127:
1111:
1061:
963:
954:
903:
802:
736:"Why Standard Cache Algorithms Won't Work For SSDs"
521:"Western Digital AV Hard Drive Product Information"
308:Blocks or sectors on the media can be tracked in a
929:'s NAND flash SSD business and renamed it Solidigm
417:Wear leveling techniques for flash memory systems.
72:to describe their preservation technique used on
780:
27:Operating principle for certain storage media
8:
678:"Wear Leveling – Static, Dynamic and Global"
960:
787:
773:
765:
604:"Optimizing Linux with cheap flash drives"
433:
431:
429:
427:
425:
423:
380:, also implement a form of wear leveling.
225:
201:The other type of wear leveling is called
180:The first type of wear leveling is called
144:last-access times, which can lead to file
546:"So you wanna buy a SSD? Read this first"
479:
477:
475:
473:
471:
1119:List of solid-state drive manufacturers
485:"USB Flash Wear-Leveling and Life Span"
405:
349:, and conventional file system such as
934:Flash Forward (joint venture between
710:"Swissbit Industrial SD Memory Cards"
704:
702:
148:being constantly rewritten in-place.
7:
345:. On such devices, wear leveling is
37:) is a technique for prolonging the
570:. February 12, 2011. Archived from
164:A flash memory storage system with
1135:Advanced Host Controller Interface
25:
523:. Western Digital. Archived from
1322:
1321:
440:"Wear Leveling Application Note"
368:on optical media. All three are
627:Jonathan Corbet (2007-08-08).
280:industrial-grade flash drives
1:
1365:Solid-state computer storage
602:Arnd Bergmann (2011-02-18).
283:Consumer-grade flash drives
494:. June 2007. Archived from
370:log-structured file systems
353:can be used on them as-is.
1386:
438:Perdue, Ken (2010-04-30).
184:and it uses a map to link
41:of some kinds of erasable
1317:
734:Qing Yang (2012-02-25).
248:Shorter life expectancy
66:preemptive wear leveling
18:Preemptive wear leveling
835:Flash memory controller
245:Longer life expectancy
186:logical block addresses
90:Flash memory controller
68:(PWL) has been used by
1259:JEDEC / JC-42, JC-64.8
1247:Related organizations
568:www.storagereview.com
414:U.S. patent 6,850,443
310:least frequently used
182:dynamic wear leveling
176:Dynamic wear leveling
1370:Balancing technology
1176:Universal Serial Bus
1170:Serial attached SCSI
376:strategies, such as
335:Secure Digital cards
210:Global wear leveling
203:static wear leveling
197:Static wear leveling
1355:Non-volatile memory
904:Flash manufacturers
895:Write amplification
880:Solid-state storage
574:on December 5, 2019
59:phase-change memory
49:, which is used in
1360:Flash file systems
1069:Greenliant Systems
840:Garbage collection
796:Solid-state drives
714:Mouser Electronics
552:. 10 January 2011.
501:on 13 October 2007
364:on flash media or
328:Garbage collection
264:Design complexity
51:solid-state drives
1337:
1336:
1269:NVMHCI Work Group
1112:SSD manufacturers
1107:
1106:
865:Over-provisioning
820:Flash file system
629:"Once upon atime"
395:Battery balancing
390:Flash file system
287:
286:
33:(also written as
16:(Redirected from
1377:
1325:
1324:
1193:HDD form factors
961:
860:Open-channel SSD
789:
782:
775:
766:
747:
746:
744:
743:
731:
725:
724:
722:
720:
706:
697:
696:
694:
692:
682:
674:
668:
667:
665:
663:
649:
643:
642:
640:
639:
624:
618:
617:
615:
614:
599:
593:
590:
584:
583:
581:
579:
560:
554:
553:
550:Hardware Canucks
542:
536:
535:
533:
532:
517:
511:
510:
508:
506:
500:
489:
481:
466:
465:
463:
461:
455:
449:. Archived from
444:
435:
418:
416:
410:
339:USB flash drives
314:cache algorithms
300:error-correcting
226:
170:operating system
166:no wear leveling
160:No wear leveling
74:hard disk drives
55:USB flash drives
43:computer storage
21:
1385:
1384:
1380:
1379:
1378:
1376:
1375:
1374:
1350:Computer memory
1340:
1339:
1338:
1333:
1313:
1242:
1181:
1123:
1103:
1057:
1011:(bought by OCZ)
971:Western Digital
950:
936:Western Digital
899:
803:Key terminology
798:
793:
755:
750:
741:
739:
733:
732:
728:
718:
716:
708:
707:
700:
690:
688:
680:
676:
675:
671:
661:
659:
653:"Wear Leveling"
651:
650:
646:
637:
635:
626:
625:
621:
612:
610:
601:
600:
596:
591:
587:
577:
575:
562:
561:
557:
544:
543:
539:
530:
528:
519:
518:
514:
504:
502:
498:
487:
483:
482:
469:
459:
457:
453:
442:
437:
436:
421:
412:
411:
407:
403:
386:
343:microcontroller
292:
279:
221:
212:
199:
178:
162:
154:
82:
70:Western Digital
45:media, such as
28:
23:
22:
15:
12:
11:
5:
1383:
1381:
1373:
1372:
1367:
1362:
1357:
1352:
1342:
1341:
1335:
1334:
1332:
1331:
1318:
1315:
1314:
1312:
1311:
1306:
1301:
1296:
1291:
1286:
1281:
1276:
1271:
1266:
1261:
1256:
1250:
1248:
1244:
1243:
1241:
1240:
1235:
1230:
1225:
1224:
1223:
1213:
1211:expansion card
1205:
1200:
1195:
1189:
1187:
1186:Configurations
1183:
1182:
1180:
1179:
1173:
1167:
1161:
1156:
1150:
1144:
1138:
1131:
1129:
1125:
1124:
1122:
1121:
1115:
1113:
1109:
1108:
1105:
1104:
1102:
1101:
1096:
1091:
1086:
1081:
1076:
1071:
1065:
1063:
1059:
1058:
1056:
1055:
1050:
1049:
1048:
1036:
1035:
1034:
1024:
1019:
1014:
1013:
1012:
1006:
995:
994:
993:
988:
983:
978:
967:
965:
958:
952:
951:
949:
948:
943:
932:
931:
930:
918:
913:
907:
905:
901:
900:
898:
897:
892:
887:
882:
877:
872:
867:
862:
857:
852:
847:
842:
837:
832:
827:
822:
817:
812:
806:
804:
800:
799:
794:
792:
791:
784:
777:
769:
763:
762:
754:
753:External links
751:
749:
748:
726:
698:
669:
644:
619:
594:
585:
555:
537:
512:
467:
419:
404:
402:
399:
398:
397:
392:
385:
382:
331:
330:
325:
306:
303:
298:A checksum or
291:
288:
285:
284:
281:
276:
272:
271:
268:
265:
261:
260:
257:
254:
250:
249:
246:
243:
237:
236:
233:
230:
220:
217:
211:
208:
198:
195:
177:
174:
161:
158:
153:
150:
81:
78:
35:wear levelling
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
1382:
1371:
1368:
1366:
1363:
1361:
1358:
1356:
1353:
1351:
1348:
1347:
1345:
1330:
1329:
1320:
1319:
1316:
1310:
1307:
1305:
1302:
1300:
1297:
1295:
1292:
1290:
1287:
1285:
1284:SFF Committee
1282:
1280:
1277:
1275:
1272:
1270:
1267:
1265:
1262:
1260:
1257:
1255:
1252:
1251:
1249:
1245:
1239:
1236:
1234:
1231:
1229:
1226:
1222:
1219:
1218:
1217:
1214:
1212:
1209:
1206:
1204:
1201:
1199:
1196:
1194:
1191:
1190:
1188:
1184:
1177:
1174:
1171:
1168:
1165:
1162:
1160:
1157:
1154:
1151:
1148:
1145:
1142:
1141:Fibre Channel
1139:
1136:
1133:
1132:
1130:
1126:
1120:
1117:
1116:
1114:
1110:
1100:
1097:
1095:
1092:
1090:
1087:
1085:
1082:
1080:
1077:
1075:
1072:
1070:
1067:
1066:
1064:
1060:
1054:
1051:
1046:
1042:
1041:
1040:
1037:
1033:
1030:
1029:
1028:
1025:
1023:
1020:
1018:
1015:
1010:
1007:
1004:
1001:
1000:
999:
996:
992:
989:
987:
984:
982:
979:
977:
974:
973:
972:
969:
968:
966:
962:
959:
957:
953:
947:
944:
941:
937:
933:
928:
924:
923:
922:
919:
917:
914:
912:
909:
908:
906:
902:
896:
893:
891:
890:Wear leveling
888:
886:
883:
881:
878:
876:
873:
871:
868:
866:
863:
861:
858:
856:
853:
851:
848:
846:
843:
841:
838:
836:
833:
831:
828:
826:
823:
821:
818:
816:
813:
811:
808:
807:
805:
801:
797:
790:
785:
783:
778:
776:
771:
770:
767:
760:
757:
756:
752:
738:. velobit.com
737:
730:
727:
715:
711:
705:
703:
699:
686:
679:
673:
670:
658:
654:
648:
645:
634:
630:
623:
620:
609:
605:
598:
595:
589:
586:
573:
569:
565:
559:
556:
551:
547:
541:
538:
527:on 2010-01-02
526:
522:
516:
513:
497:
493:
486:
480:
478:
476:
474:
472:
468:
456:on 2011-06-07
452:
448:
441:
434:
432:
430:
428:
426:
424:
420:
415:
409:
406:
400:
396:
393:
391:
388:
387:
383:
381:
379:
375:
374:copy-on-write
371:
367:
363:
359:
354:
352:
348:
344:
340:
336:
329:
326:
323:
319:
315:
311:
307:
304:
301:
297:
296:
295:
289:
282:
277:
274:
273:
270:Less complex
269:
267:More complex
266:
263:
262:
258:
255:
252:
251:
247:
244:
242:
239:
238:
234:
231:
228:
227:
224:
218:
216:
209:
207:
204:
196:
194:
191:
187:
183:
175:
173:
171:
167:
159:
157:
151:
149:
147:
142:
138:
134:
130:
126:
122:
118:
115:Conventional
113:
109:
107:
103:
99:
95:
94:optical media
91:
86:
79:
77:
75:
71:
67:
62:
60:
56:
52:
48:
44:
40:
36:
32:
31:Wear leveling
19:
1326:
1159:SATA Express
889:
885:Trim command
875:Secure erase
870:Read disturb
825:Flash memory
740:. Retrieved
729:
717:. Retrieved
689:. Retrieved
684:
672:
660:. Retrieved
656:
647:
636:. Retrieved
622:
611:. Retrieved
597:
588:
576:. Retrieved
572:the original
567:
558:
549:
540:
529:. Retrieved
525:the original
515:
503:. Retrieved
496:the original
458:. Retrieved
451:the original
408:
355:
332:
293:
275:Typical use
253:Performance
222:
213:
202:
200:
189:
181:
179:
165:
163:
155:
117:file systems
114:
110:
83:
65:
63:
47:flash memory
39:service life
34:
30:
29:
1216:Thunderbolt
1208:PCI Express
1153:PCI Express
1147:NVM Express
1062:Independent
956:Controllers
855:Memory wear
691:20 November
662:20 November
578:December 5,
347:transparent
322:flash-based
53:(SSDs) and
1344:Categories
1221:USB Type-C
1164:Serial ATA
1128:Interfaces
1094:PMC-Sierra
810:Encryption
742:2013-11-26
638:2014-01-21
613:2013-10-03
531:2010-06-01
401:References
290:Techniques
219:Comparison
1032:SandForce
981:Fusion-io
657:Transcend
460:12 August
241:Endurance
80:Rationale
64:The term
1328:Category
1299:T10/SCSI
1079:Maxiotek
1039:SK Hynix
1009:Indilinx
921:SK Hynix
719:21 April
447:Spansion
384:See also
235:Dynamic
146:metadata
119:such as
108:media).
96:such as
1309:T13/ATA
1279:SATA-IO
1084:Marvell
1043:Bought
1027:Seagate
1022:Samsung
976:SanDisk
964:Captive
925:Bought
916:Samsung
830:SLC/MLC
633:LWN.net
608:LWN.net
505:27 July
492:Corsair
259:Faster
256:Slower
232:Static
190:invalid
106:DVD-RAM
88:by the
1304:T11/FC
1274:USB-IF
1254:INCITS
1166:(SATA)
1155:(PCIe)
1149:(NVMe)
1137:(AHCI)
1089:Phison
1017:Micron
998:Kioxia
940:Kioxia
911:Micron
685:Cactus
278:SSDs,
139:, and
102:DVD-RW
85:EEPROM
57:, and
1238:EDSFF
1198:mSATA
1178:(USB)
1172:(SAS)
1045:Intel
927:Intel
681:(PDF)
499:(PDF)
488:(PDF)
454:(PDF)
443:(PDF)
362:YAFFS
358:JFFS2
229:Item
152:Types
98:CD-RW
1294:SSSI
1289:SNIA
1264:ONFI
1143:(FC)
1074:Goke
1053:FADU
991:sTec
986:HGST
946:YMTC
938:and
850:MB/s
845:IOPS
721:2017
693:2019
664:2019
580:2019
507:2013
462:2010
360:and
337:and
141:NTFS
133:HFS+
100:and
1233:U.3
1228:U.2
1203:M.2
1099:SMI
1003:OCZ
815:ECC
687:: 5
378:ZFS
366:UDF
351:FAT
333:On
318:RAM
137:EXT
129:HFS
125:UFS
121:FAT
1346::
712:.
701:^
683:.
655:.
631:.
606:.
566:.
548:.
490:.
470:^
445:.
422:^
135:,
127:,
123:,
942:)
788:e
781:t
774:v
745:.
723:.
695:.
666:.
641:.
616:.
582:.
534:.
509:.
464:.
131:/
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.