BAS + ECE February 2015 - page 26

February 2015
26
M
emories
reliability, life-time estimation, MTBF, and
power on-off cycles. hyMap™ continuously
updates necessary mapping information in
the NVM by using a sophisticated algorithm
and transaction-oriented logbook. Therefore,
power-fail safety is ensured at all times.
Lower random-write WAF
The write amplification factor (WAF) refers
to the amount of additional information that
must be written to a flash when a certain
amount of user data is written to the flash.
tor (WAF) refers to the amount f additional information that must be
rtain amount of user data is written to the Flash.
WAF =  Bytes written  to  the Flash
Bytes written by  the host  
lated to 4K random writes would mean, that for each 4K bytes of data in
he flash, if blocks must be erased to free-­‐up capacity and consolidate
ver different blocks. This means that one 4K write causes a block-­‐erase
his block.
is complex and depends on many different factors including:
g and garbage collection
C/MLC, block size, page size)
mapping data (external DRAM or NVM)
if protocol permits
atterns
drive and organization of that free user space (TRIM)
irements of the host or file system and possibility to use command
ata caching to reduce WAF
write amplification can be significant, especially for small and random
tor-­‐write under worst case conditions might require that a whole block is
ent is copied and stored together with the single updated sector within
For instance, a WAF of 4 related to 4K random
writes would mean, that for each 4 Kbytes of
data in fact 16 KB are written to the flash, if
blocks must be erased to free-up capacity and
consolidate unused pages distributed over dif-
ferent blocks. This means that one 4 Kbytes
write causes a block-erase and several page-
writes to this block. Calcul ting the WAF is
complex and depends on many different fac-
tors including: mapping granularity, efficiency
of mapping and garbage collection, flash
technology (SLC/MLC, block size, page size),
caching of data, storage location of mapping
data (external DRAM or NVM), command
queuing if protocol permits, data access/
write patterns, free capacity on the drive and
organization of that free user space (TRIM),
over-provisioning, and data integrity require-
ments of the host or file system and possibility
to use command queuing and write data cach-
ing to reduce WAF. For block-based mapping,
write amplification can be significant, espe-
cially for small and random write accesses.
A single-sector-write under worst case con-
ditions might require that a whole block is
erased and all original content is copied and
stored together with the single updated sector
within that block.
In such a scenario, the WAF would be as high
as 2000, since for a 512 byte sector it would
be ne essary to write a whole block of 1 MB.
For sub-page-based mapping such worst case
write amplification is reduced significantly. A
single-sector-write under worst case condi-
tions might also require that a whole block
is erased in case no unused block would be
available but no old data would need to be
copied. Only the old sector would become
invalid and the new sector in another block
would become valid. In order to program a
single sector under worst case conditions, it
might be required to program the whole page.
In that case the write amplification would be
16 (8 Kbyte / 512 byte).
Comparing both mapping approaches with
respect to worst case WAF for write accesses
smaller than page size it becomes clear that
a finer mapping has significant merits and
would boost drive endurance by a factor close
to 100 times. In most use cases, accesses are
not only single sector writes and also the con-
troller can very often write more sectors at
each time to the flash. Enterprise workloads
are heavy on 4K random writes. This might
not reflect a regular system usage model. So,
for mainly sequential accesses or stream-
ing applications, payload sizes would proba-
bly shift more towards larger sizes while for
embedded OS, status updates, or communi-
cation protocol related tasks payload sizes
might shift to smaller payload sizes. For usage
models with a mix of payload sizes it is quite
difficult to calculate exact WAF figures but as
an order of magnitude WAF of the sub-page
based mapping might be over 30 times better.
Figure 1. Basic block-based mapping
Figure 2. Basic page-based mapping
Figure 3. Basic sub-page-based mapping
Figure 4. Worst case write amplification for an example access conditi-
on (random single sector write) for block-based mapping
Figure 5. Worst case write amplification for an example access conditi-
on (random single sector write) for page-based mapping
1...,16,17,18,19,20,21,22,23,24,25 27,28,29,30,31,32,33,34,35,36,...56
Powered by FlippingBook