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

leveling erases.

Again, considering the necessity

to maintain optimal read/write

performance in the flash, a flash

manager should never incur wear-

leveling erases if they are not

necessary. It will effectively move high

use areas of the flash to low use areas

over time and will keep the average

erase cycle count within a predefined

range. It is important to note that this

system utilizes the entire flash disk

by forcing static areas of the flash to

move, which would otherwise never

be rewritten fully.

In order to ensure that the wear-

leveling process will not degrade

performance or compromise the

integrity of fixed file system meta

data, the flash manager must begin

erases well before the cumulative

writes equals the size of the flash disk.

Advanced wearleveling schemes (like

Datalight FlashFX family) keep

endurance cycle differences in this

example between 700 and 1400, at a

maximum.

Simplistic Calculation of

Flash Cycles

In order to determine whether a

certain application will challenge the

endurance cycles of the flash that are

specified by the flash manufacturer,

a number of variables must be

considerd.

Assume the flash is used efficiently

by the application and that all flash

described by Stotal is available to be

written prior to an erase cycle being

incurred. Given this assumption, a

single erase cycle will be incurred once

the entire flash (Stotal) is written. The

period of time elapsed

over a given cycle count, and therefore

the period of time before a flash chip

wears out, is then calculated with the

following formula:

P = C [Stotal ÷ ( F * Dwrite) ]

Stotal describes the total flash memory available (KB) to be used as a disk.

Dwrite describes the amount of data (KB) being regularly written into the disk.

F is the frequency of Dwrite to the disk per day.

C is a given number of cycles to calculate the period.

Example – the difference with Static Wear-leveling

In this example, we examine a field data recorder that collects and stores

coordinates and other statistics at a rate of 1280 bytes per minute, and must

maintain the last hour of data (75KB), for a total of 1800KB of writes per day.

This device has 1 MB of flash media total, and the application and configuration

files will take up more than half of that space - meaning only 256 KB can be used

to store data.

With only dynamic wear-leveling, the media will regularly swap between two 128

KB erase blocks – remember, we cannot erase just 75 KB. The chart below shows

three different choices for flash media, rated for the total number of erase cycles.

The other values are fixed:

S total = 256 KB, D write = 1800 KB, F = 1 day

If this field recorder’s expected lifetime of 12 years, flash rated for 100,000 cycle

flash is required.

With both static and dynamic wear-leveling, as implemented by the FlashFX

family, the entire media is eventually available for data. This results in one change

to the equation values above.

S total = 1024 KB, D write = 1800 KB, F = 1 day

For the same expected lifetime of 12 years, flash rated for 10,000 erase cycles is

now perfectly appropriate, though a 20-year lifetime would still require flash with

New-Tech Magazine Europe l 49