Previous Page  48 / 84 Next Page
Information
Show Menu
Previous Page 48 / 84 Next Page
Page Background

in the flash disk to accommodate the

fact that flash memory cannot simply

be rewritten. The specific algorithms

are beyond the scope of this paper,

but the idea is to efficiently write

throughout the flash before rewriting

the same location.

The

wear-leveling

scheme

implemented by an effective flash

manager consists of tracking the

number of erases incurred on each

flash erase block. In other words,

both high and low use sectors are

monitored. This is often referred to

as dynamic wear-leveling. As erases

accumulate,

the difference between the highest

and lowest counts is audited. If a

specific set of constraints are met,

a wear-leveling operation - which

swaps the least erased block with the

most recently used erase block - is

completed.

Two parameters control wear-leveling

erases; the first is a maximum

difference allowed before wear-

leveling erases are incurred, and the

second limits the frequency of wear-

system code, will never reach the

flash memory’s maximum endurance.

Without wear-leveling, these low-use

sectors are essentially wasted flash

lifetime. Meanwhile, the disk use in

Figure 2 is spread evenly throughout

the disk sectors, allowing the flash

disk to be reliable for its maximum

lifetime.

Professional Wear-

leveling Implementation

A properly-executed wear-leveling

implementation moves data around

These red sectors above the

dashed line have exceeded the

maximum endurance cycles.

They are now BAD sectors and

can no longer be written to or

read from.

Advanced

wear

leveling

schemes (like Datalight FlashFX

family) keep endurance cycle

differences in this example

between 700 and 1400, at a

maximum.

48 l New-Tech Magazine Europe