The number of erases per unit before “wearing out” is limited, typically to some
number between 10000 and 100000, in newer technologies even lower. In the
interest of longevity of the flash chip, the use of a “wear leveling” strategy is highly
advisable. Wear leveling means that erase cycles and write cycles are evenly distributed across the memory chip. Traditional file systems are unsuitable for flash
chips because they exhibit hot spots such as metadata fields that are frequently
updated.
8.7.3 Analysis and Design Considerations
As mentioned above, the use of a standard file system is unsuitable as it typically
exhibits hot spots. Much of the research [62] into overcoming this problem introduces some virtual-to-physical block number mapping.
Two kinds of data structures are typically suggested for this purpose. Direct
maps map a logical block number (index i) to its physical sector number.
Unfortunately, such data structures have typically a footprint in the order of several
megabytes [63].
Inverse maps store in location i the virtual block number corresponding to sector
i. These maps are usually stored on the flash disk itself and are mainly used for
regenerating the direct map at boot time.
Table 8.2 Properties of stable storage
Hard disk Solid-state
disk
Compact
flash
SD card
Flash
chip
Technology
Magnetic
disk
Flash
Flash
Flash
Flash
Capacity
2 TB
512 GB
64 GB
32 GB
16 GB
Pin count
7
7
50
9
52–
100
Interface
S-ATA
S-ATA
P-ATA
SD Card
ONFi
Access time
10 ms (R/
W)
0.1 ms (R/
W)
0.1 ms
1 ms read, 20–
500 ms write
50 us
Transfer rate (MB/s)
130
500
70
20
160
Removable
Yes
Yes
Yes
Yes
No
Host controller
complexity
High
High
Moderate Low
Low
Device implementation
complexity
High
Very high
Moderate Low
Low
Physical robustness
Low
High
High
High
High
8.7 Ultrareliable Storage
133
number between 10000 and 100000, in newer technologies even lower. In the
interest of longevity of the flash chip, the use of a “wear leveling” strategy is highly
advisable. Wear leveling means that erase cycles and write cycles are evenly distributed across the memory chip. Traditional file systems are unsuitable for flash
chips because they exhibit hot spots such as metadata fields that are frequently
updated.
8.7.3 Analysis and Design Considerations
As mentioned above, the use of a standard file system is unsuitable as it typically
exhibits hot spots. Much of the research [62] into overcoming this problem introduces some virtual-to-physical block number mapping.
Two kinds of data structures are typically suggested for this purpose. Direct
maps map a logical block number (index i) to its physical sector number.
Unfortunately, such data structures have typically a footprint in the order of several
megabytes [63].
Inverse maps store in location i the virtual block number corresponding to sector
i. These maps are usually stored on the flash disk itself and are mainly used for
regenerating the direct map at boot time.
Table 8.2 Properties of stable storage
Hard disk Solid-state
disk
Compact
flash
SD card
Flash
chip
Technology
Magnetic
disk
Flash
Flash
Flash
Flash
Capacity
2 TB
512 GB
64 GB
32 GB
16 GB
Pin count
7
7
50
9
52–
100
Interface
S-ATA
S-ATA
P-ATA
SD Card
ONFi
Access time
10 ms (R/
W)
0.1 ms (R/
W)
0.1 ms
1 ms read, 20–
500 ms write
50 us
Transfer rate (MB/s)
130
500
70
20
160
Removable
Yes
Yes
Yes
Yes
No
Host controller
complexity
High
High
Moderate Low
Low
Device implementation
complexity
High
Very high
Moderate Low
Low
Physical robustness
Low
High
High
High
High
8.7 Ultrareliable Storage
133
