43
The Devil is in the Details: Implemen1ng Flash Page Reuse with WOM Codes Fabio Margaglia, Gala Yadgar, Eitan Yaakobi, Yue Li, Assaf Schuster, André Brinkmann Johannes Gutenberg University, Mainz Technion California Ins1tute of Technology

The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

The$Devil$is$in$the$Details:$Implemen1ng$Flash$Page$Reuse$with$WOM$Codes$Fabio$Margaglia,$Gala$Yadgar,$Eitan$Yaakobi,$Yue$Li,$Assaf$Schuster,$André$Brinkmann$Johannes$Gutenberg$University,$Mainz$

Technion$

California$Ins1tute$of$Technology$

$

Page 2: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Flash$Page$Reuse$and$WOM$Codes$are$a$popular$topic$

$•  Grupp$et$al.$“Characterizing$flash$memory:$Anomalies,$observa1ons,$and$applica1ons.”$MICRO‘09.$

•  Jagmohan$et$al.$“Write$amplifica1on$reduc1on$in$NAND$flash$through$mul1Zwrite$coding.”$MSST’10$•  Yaakobi$et$al.$“Error$characteriza1on$and$coding$schemes$for$flash$memories.”$GLOBECOM$’10$$

•  Jacobvitz$et$al.$“Wri1ng$cosets$of$a$convolu1onal$code$to$increase$the$life1me$of$flash$memory.”$Allerton$’12$

•  Luojie$et$al.$“WOM$codes$reduce$write$amplifica1on$in$NAND$flash$memory.”$GLOBECOM$’12$•  Kaiser$et$al.$“Extending$SSD$life1me$in$database$applica1ons$with$page$overwrites.”$SYSTOR$‘13$

•  Berman$et$al.$“Re1redZpage$u1liza1on$in$writeZonce$memory$–$a$coding$perspec1ve.”$ISIT’13.$

•  Odeh$et$al.$“NAND$flash$architectures$reducing$write$amplifica1on$through$mul1Zwrite$codes.”$MSST$‘14$$

•  Gad$et$al.$“Rewri1ng$flash$memories$by$message$passing.”$ISIT$’15$$•  Yaakobi$et$al.$“When$do$WOM$codes$improve$the$erasure$factor$in$flash$memories?”$ISIT$’15$$

•  Margaglia$et$al.$“Improving$MLC$flash$performance$and$endurance$with$extended$P/E$cycles.”$MSST$’15$$

•  Yadgar$et$al.$“Write$once,$get$50%$free:$Saving$SSD$erase$costs$using$WOM$codes.”$FAST$‘15$$

$

23.2.2016 | Fabio Margaglia 2

Page 3: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

23.2.2016 | Fabio Margaglia 3

Program Interference? Page

Order?

NOP? Can you apply WOM to MLC?

Image$courtesy$of$$lekkyjustdoit$at$FreeDigitalPhotos.net$$

Page 4: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

23.2.2016 | Fabio Margaglia 4

YES, you can!

However: “The Devil is in the Details!”

5 lessons learned

Page 5: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

NAND$Flash$tradi1onal$assump1ons:$

Background$

23.2.2016 | Fabio Margaglia 5

1111$1111$1111$ 1101$1001$0111$ 0101$1001$0100"Erase$Program$

1111$1111$1111$Program$

0 ↛ 1!!

To$save$the$erase$opera1on$reprogram$with:$

Reprogram$

block

page 5page 4

page 127

page 1

page 3page 2

page 0

page 126

.

.

.

Opera)on" Granularity" Effect"

Program$ Page$ Clear$arbitrary$bits$

Erase$ Block$ Reset$all$bits$

Page 6: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

0 ↛ 1!!

Write$Once$Memory$Codes$

23.2.2016 | Fabio Margaglia 6

Plain"bits" 1st"gen" 2nd"gen"00$ 111$ 000$

01$ 110$ 001$

10$ 101$ 010$

11$ 011$ 100$

[Rivest$and$Shamir,$’82]$

•  encode$n$bits$with$m$bits,$where$m$>$n#•  encodings$organized$into$reprogram$compa1ble$genera1ons$

01$ 11$

110$ 010$

Example:$

Reprogram$

10$Erase$ Program$

WOM$Codes$ensure$

Page 7: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

What$about$MLC?$

23.2.2016 | Fabio Margaglia 7

Page 8: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

In$MLC$1$physical$cell$represents$2$bits$

Every$MLC$is$characterized$by$Vth$$

•  4$states$$•  program$opera1ons$increase$Vth$

•  erase$opera1ons$reset$Vth$

•  Reprogramming$may$cause$program$disturbance$between$bits$[Grupp$et.$al,$MICRO$2009][Margaglia$et.$al,$MSST$2014]$

$

MLC$–$Mul1$Level$Cell$

23.2.2016 | Fabio Margaglia 8

Vth

11 10 00 01

R1 R2 R3

Program

Erase

WOM$codes$are$not$enough$

Page 9: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Mapping$bits$to$pages$

23.2.2016 | Fabio Margaglia 9

Block$page$0$page$1$page$2$page$3$page$4$

page$125$page$126$page$127$

Vth

11 10 00 01

R1 R2 R3

Low$Page$ High$Page$

The$bits$of$a$single$MLC$are$mapped$to$2$independent$pages$

Program$disturbance$across$pages$

. . .

Page 10: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Siglead$SigNASII$NAND$Tester$

•  Mul1ple$manufacturers$

•  Mul1ple$feature$sizes$

Setup$for$the$analysis$of$MLC$chips$

23.2.2016 | Fabio Margaglia 10

Page 11: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

LowZHigh$(LH)$Programming$scheme$

23.2.2016 | Fabio Margaglia 11

ER$(11)$

ER$(11)$

Temp$(0X)$

ER$(11)$

P1$(10)$

P2$(00)$

P3$(01)$

1$ 0$

1$ 0$ 1$0$

Low$Bit$Program$

High$Bit$Program$

L$ H$

Vth

Vth

Vth

Page 12: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Vth

Vth

Vth

LowZLowZHigh$(LLH)$Reprogramming$Scheme$

23.2.2016 | Fabio Margaglia 12

ER$(11)$

P1$(10)$

P2$(00)$

P3$(01)$

1$ 0

1$ 0$ 1$0$

Low$Bit$Program$(1)$

High$Bit$Program$

1$ 0$

Low$Bit$Program$(2)$

0$

ER$(11)$

Temp$(0X)$

H$L$

Temp$(0X)$

ER$(11)$

ER$(11)$

WOM"Encoding"0 ↛ 1!

!Vth

Page 13: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Block$Life$Cycle$with$LLH$Reprogramming$

23.2.2016 | Fabio Margaglia 13

Clean

Erase Erase

Program L1 Program H

: empty page : programmed page : reprogrammed page

Used

Progr.$Order$

Program L1

Partially Used

Progr.$Order$

Reused

Program L2 Program H

Progr.$Order$

Use WOM Use WOM

Page 14: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Lesson$I$Page$reprogram$in$MLC$is$possible,$

but$only$for$half$of$the$pages.$

23.2.2016 | Fabio Margaglia 14

Page 15: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

LLH$Reprogramming$and$cell$wear$

23.2.2016 | Fabio Margaglia 15

Page 16: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

1.00E-05

1.00E-04

1.00E-03

1.00E-02

0 500 1000 1500 2000 2500 3000

Baseline

L1

L2

H

BER$for$LLH$Scheme$–$Chip$A$16nm$

23.2.2016 | Fabio Margaglia 16

BER$

P/E$Cycles$

ECC$Correc1on$

Chip$is$unusable$

Page 17: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

1.00E-05

1.00E-04

1.00E-03

1.00E-02

0 500 1000 1500 2000 2500 3000

Baseline

LLH 20%

LLH 40%

LLH 60%

BER$for$LLH$par1al$applica1on$–$Chip$A$16nm$$

23.2.2016 | Fabio Margaglia 17

BER$

P/E$Cycles$

ECC$Correc1on$

Page 18: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

LongZterm$cell$wear$with$LLH$Reprogramming$

23.2.2016 | Fabio Margaglia 18

1.00E-05

1.00E-04

1.00E-03

1.00E-02

0 1000 2000 3000

Baseline

LLH 20%

LLH 40%

LLH 60%

BER$

P/E$Cycles$

Rela1ve$reduc1on$of$P/E$cycles$to$reach$BER=10Z3$

5.00E-04

6.00E-04

7.00E-04

8.00E-04

9.00E-04

1.00E-03

2500 2600 2700 2800 2900 3000

Baseline

LLH 20%

LLH 40%

LLH 60%

BER$

P/E$Cycles$

Part."applica)on" A16" B16" B27" B29"

60%$ 8.5%$ 7%$ 8%$ 8.5%$

40%$ 5.2%$ 5%$ 6%$ 5.5%$

20%$ 1%$ 3%$ 2.5%$ 3%$

Page 19: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Lesson$II$LLH$reprogramming$applied$for$a$por1on$of$the$life1me$causes$only$

minor$longZterm$cell$wear$

23.2.2016 | Fabio Margaglia 19

Page 20: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

FTL$Architecture$

23.2.2016 | Fabio Margaglia 20

Page 21: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Prototype$

23.2.2016 | Fabio Margaglia 21

Jasmine$OpenSSD$board$www.openssdZproject.org$$•  ARM7TDMI$single$core$•  SATA$interface$•  64MB$DRAM$•  Samsung$35nm$MLC$

66'

+RVW,QWHUIDFH/RJLF

&RQWUROOHU

)7/

0DSSLQJ�7DEOHV

+RVW,QWHUFRQQHFW

)ODVK�&KLS

)ODVK�&KLS

)ODVK�&KLS

)ODVK�&KLS

)ODVK�&KLS

)ODVK�&KLS

Application

Modify$only$the$FTL$

Page 22: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Block$Life$Cycle$with$LLH$Reprogramming$

23.2.2016 | Fabio Margaglia 22

Clean

Erase Erase

Used

Program L1 Program H

Partially Used

Program L1

Reused

Program L2 Program H

: empty page : programmed page : reprogrammed page

Page 23: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Block$Life$Cycle$with$LLH$Reprogramming$

23.2.2016 | Fabio Margaglia 23

Clean

Erase Erase

Used

Program L1 Program H

Partially Used

Program L1

Reused

Program L2 Program H

: empty page : programmed page : reprogrammed page

Cold$Data$

$$

Hot$Data$•  Fast$invalida1on$of$low$pages$for$max$reuse$•  Minimize$life1me$of$WOM$encoded$data$

Page 24: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

WOM$overhead$

23.2.2016 | Fabio Margaglia 24

•  Polar WOM Codes •  DRAM Buffers

Plain"bits" 1st"gen" 2nd"gen"

00$ 111$ 000$

01$ 110$ 001$

10$ 101$ 010$

11$ 011$ 100$

Page 25: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Polar$WOM$Codes$

Probabilis1c$codes$introduced$in$[Burshtein$and$Strugatski,$IT$`13]$

Already$proposed$for$Reusable$SSD$in$[Yadgar$et.$al,$FAST$`15]$

•  Complexity$�$LDPC$ECC$(could$be$accelerated$in$HW)$

•  1st$write$!$no$overhead$

•  2nd$write$!$100%$overhead$

23.2.2016 | Fabio Margaglia 25

Page 26: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

DRAM$Buffers$

23.2.2016 | Fabio Margaglia 26

User Data

Block$

DRAM$

1st$write$ 2nd$write$ENCODER$

100%$overhead$

Block$INVALID$

INVALID$

INVALID$

INVALID$

INVALID$

INVALID$

User Data

DRAM$

Page 27: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Puvng$it$all$together..$

23.2.2016 | Fabio Margaglia 27

Clean$Blks$

Used$Blks$

User Data

GC$

Ac1ve$Blk$

DRAM$

Page 28: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Puvng$it$all$together..$

23.2.2016 | Fabio Margaglia 28

Clean$Blks$

Used$Blks$

Cold User Data

GC$

Hot User Data

Reused$Blks$

Part.$Used$Blks$

GC$

Ac1ve$Blk$ Ac1ve$Blk$

DRAM$DRAM$

Page 29: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Demo$

23.2.2016 | Fabio Margaglia 29

•  Visualization of the SSD internal status •  SSDPlayer [Yadgar, Shor, Yaakobi, and Shuster, HotStorage ’15] •  Replay of OpenSSD run of MSR Cambridge trace •  Small device

Page 30: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

23.2.2016 | Fabio Margaglia 30

hwp://www.cs.technion.ac.il/~gala/LLHZFTLZMSR/LLHZFTLZMSR.html$

Page 31: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Evalua1on:$Number$of$Erasures$and$Life1me$

23.2.2016 | Fabio Margaglia 31

Page 32: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Standard$SSD$

Best$Case$Reduc1on$in$Erasures$

23.2.2016 | Fabio Margaglia 32

! = !! !

!Reusable$SSD$[Yadgar$et.$al,$FAST$2015]$

!! = !! + !2

= 23!!

!The$Devil$is$in$the$Details$

!!! = !! + !4

= 45!!

!

Logical$Writes$

Pages$per$Block$

Reuse$all$pages$with$100%$WOM$overhead$

!33%$Reduc1on

Reuse$only$low$pages$with$100%$WOM$overhead$

!20%$Reduc1on

#$Erasures$

Page 33: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Erasures$Reduc1on$normalized$to$Baseline$

23.2.2016 | Fabio Margaglia 33

0.7

0.75

0.8

0.85

0.9

0.95

1

1.05

1.1

1.15

1.2

OP 7%

OP 28%

Baseline

Best Case

MSR$Cambridge$Traces$ FIU$Traces$ Synthe1c$Traces$

Depending$on$the$

amount$of$hot$data$

Page 34: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

!"#$%&!!"#!!"#$%!!"#ℎ!!!" = ! + !4 !! !"#$%&!!"#!!"#$%!!"#ℎ!!" = !!

!

Best$case$when$using$LLH$Reprogramming$for$40%$life1me$(T):$

Life1me$

23.2.2016 | Fabio Margaglia 34

10%$more$writes$over$the$life1me$

P/E$Cycles$

!"#$%!!"#$%&!!"#!!"#$% = 0.4 ∙ ! ∙ ! + !4 + 0.6 ∙ ! ∙ ! = 1.1 ∙ ! ∙ !!!

Page 35: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Erasures$Reduc1on$and$Life1me$

23.2.2016 | Fabio Margaglia 35

Part."applica)on" A16" B16" B27" B29"

40%$ 5.2%$ 5%$ 6%$ 5.5%$

Life1me$reduc1on$due$to$increased$BER$

P/E$Cycles$

10%$increase$!$$<$5%$

5.00E-04

6.00E-04

7.00E-04

8.00E-04

9.00E-04

1.00E-03

2500 2600 2700 2800 2900 3000

Baseline

LLH 20%

LLH 40%

LLH 60%

BER$

P/E$Cycles$

LongZterm$cell$wear$

Page 36: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Lesson$III$LLH$reprogramming$reduces$erasures,$but$this$does$not$necessarily$translate$to$a$

substan1al$life1me$increase.$

23.2.2016 | Fabio Margaglia 36

Page 37: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Evalua1on:$Energy$and$Latency$

23.2.2016 | Fabio Margaglia 37

Page 38: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Single$Opera1ons$

23.2.2016 | Fabio Margaglia 38

We$have$less$erasures,$but$single$read$and$write$opera1ons$become$more$expensive$(both$for$energy$and$for$latency):$

Write$WOM$encoded$data$•  Requires$read$of$previous$content$

•  WOM$overhead$for$second$writes$(use$half$flash$bandwidth)$

Read$WOM$encoded$data$•  WOM$overhead$for$data$wriwen$with$second$write$(use$half$flash$

bandwidth)$

$

Page 39: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Energy$and$Latency$normalized$to$Baseline$

23.2.2016 | Fabio Margaglia 39

0.9

0.95

1

1.05

1.1

1.15

1.2

1.25

1.3

OP 7%

OP 28%

Baseline

MSR$Cambridge$

0.9

0.95

1

1.05

1.1

1.15

1.2

1.25

1.3

MSR$Cambridge$ FIU$ Synthe1c$

Energy$ Latency$

Page 40: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Lesson$IV$The$extra$energy$consumed$by$read$and$write$opera1ons$is$larger$than$that$saved$in$erase$

opera1ons.$

Lesson$V$The$extra$1me$consumed$by$read$and$write$

opera1ons$does$not$increase$latency.$

On$the$contrary,$small$latency$reduc1ons$are$possible$

23.2.2016 | Fabio Margaglia 40

Page 41: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Lessons$learned:$I.  Reprogramming$possible$in$MLC$

II.  Modest$longZterm$wear$

III.  Less$erasures,$$limited$life1me$increase$

IV.  Energy$consump1on$increases$

V.  Limited$effect$on$latency$

Conclusions$

23.2.2016 | Fabio Margaglia 41

Where$to$go$from$here?$•  Manufacturers$support$

•  Applica1on$specific$reprogramming$[Margaglia$et$al.$MSST$2015]$$

•  MLC$specific$WOM$codes$

$

•  TLC,$oneZshot$programming?$

Page 42: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned

Thanks for Your Attention

Questions?

Page 43: The$Devil$is$in$the$Details:$ Implemen1ng$Flash$Page$Reuse ... · 23.2.2016 | Fabio Margaglia 4 YES, you can However: “The Devil is in the Details!” 5 lessons learned