Stec SLUFD1GU2TUI User Manual

Page of 22
SLUFDxxxU2TU(I) 
Industrial Grade USB Flash Drive 
Datasheet 
 
 
61000-07007-105, June 2011 
 
3.2.2  Wear Leveling 
The SLC NAND flash devices that are being used in the USB Flash Drive are guaranteed for 100,000 
Write/Erase cycles per block. This means that after approximately 100,000 erase cycles, the erase block 
has a higher probability for errors than the error rate that is typical to the flash. While 100,000 write/erase 
cycles may be good for consumer data storage, such as digital cameras, MP3 players, etc., it is not 
sufficient for industrial and embedded applications where data is constantly written to the device and long 
product life is required.  
For example, operating systems that use a file system, will update the File Allocation Table (FAT) every 
time a write is done to the device. Without any wear leveling in place, the area on the flash where the FAT 
table is located would wear out faster than other areas, reducing the lifetime of the entire flash device.  
To overcome this limitation, the flash management algorithm needs to make sure that each block in the 
device ages, i.e. is “worn out”, at the same rate. The built-in wear leveling scheme makes sure that with 
every write to the flash, the youngest block is used. This ensures that the full flash media is used 
uniformly, so that one area of the flash will not reach the endurance limits prematurely before other areas.  
3.2.3  Error Correction/Detection 
The USB 2.0 controller implements an advanced Error Correction scheme, based on the BHC error 
correct algorithm. The ECC engine can correct up to 12-bits per 512 Bytes (symbol based). To ensure the 
fastest performance, correction is done on-the-fly, in hardware only. 
Each time the host application writes a sector of 512 bytes to the Industrial Grade UFD, a unique ECC 
signature is created by the ECC engine and written together with the data to the flash. When the data is 
read back by the host, the ECC engine creates again the unique ECC signature. It will then compare the 
original written signature with the newly created signature, and sets an error flag if the two signatures are 
not the same. Correction of the data is done on-the-fly when the error flag is set, and the data presented 
to the host will be the same as the original written data an Uncorrectable Bit Error Rate (UBER) of less 
than 1 in 10
14
 bits, read.