Partitioned Real-Time NAND Flash Storage Katherine Missimer and Rich - - PowerPoint PPT Presentation

partitioned real time nand flash storage
SMART_READER_LITE
LIVE PREVIEW

Partitioned Real-Time NAND Flash Storage Katherine Missimer and Rich - - PowerPoint PPT Presentation

Partitioned Real-Time NAND Flash Storage Katherine Missimer and Rich West Introduction 2 Introduction 3 Introduction 4 NAND Flash Memory Non-volatility Shock resistance Low power consumption Fast access time 5 NAND Flash Memory No


slide-1
SLIDE 1

Partitioned Real-Time NAND Flash Storage

Katherine Missimer and Rich West

slide-2
SLIDE 2

Introduction

2

slide-3
SLIDE 3

Introduction

3

slide-4
SLIDE 4

Introduction

4

slide-5
SLIDE 5

NAND Flash Memory

5

Non-volatility Shock resistance Low power consumption Fast access time

slide-6
SLIDE 6

NAND Flash Memory

Non-volatility Shock resistance Low power consumption Fast access time No in-place updates Reads & writes operate at different granularity than erasures

6

slide-7
SLIDE 7

SSD Internals

7

slide-8
SLIDE 8

SSD Internals

8

slide-9
SLIDE 9

SSD Internals

9

slide-10
SLIDE 10

SSD Internals

10

slide-11
SLIDE 11

SSD Internals

11

slide-12
SLIDE 12

Observations

12

slide-13
SLIDE 13

PaRT-FTL

13

slide-14
SLIDE 14

PaRT-FTL

14

slide-15
SLIDE 15

PaRT-FTL

15

slide-16
SLIDE 16

PaRT-FTL

16

Buffered pages

slide-17
SLIDE 17

PaRT-FTL

17

Buffered pages

slide-18
SLIDE 18

PaRT-FTL

18

Buffered pages

slide-19
SLIDE 19

PaRT-FTL

19

Buffered pages

slide-20
SLIDE 20

PaRT-FTL

20

Buffered pages

slide-21
SLIDE 21

PaRT-FTL

21

Buffered pages

slide-22
SLIDE 22

PaRT-FTL

22

Buffered pages

slide-23
SLIDE 23

Real-Time Task Model

Parameters for a task:

23

# pages in read request # pages in write request read period write period

slide-24
SLIDE 24

Real-Time Task Model

Parameters for a task:

24

# pages in read request # pages in write request read period write period A task does not account for the CPU computation time. These tasks exist on the flash translation layer and utilize the NAND bus.

slide-25
SLIDE 25

Real-Time Task Model

Parameters for a task: Read capacity: Write capacity:

25

# pages in read request time to read a page time to decode a page

slide-26
SLIDE 26

Real-Time Task Model

Parameters for a task: Read capacity: Write capacity:

26

# pages in write request time to write a page # write chips

slide-27
SLIDE 27

Real-Time Task Model

27

slide-28
SLIDE 28

Real-Time Task Model

Encoding task when w > 0:

28

time to write a page # pages per block # write chips time to encode a page

slide-29
SLIDE 29

Real-Time Task Model

Encoding task when w > 0:

29

# pages per block # pages in write request write period

slide-30
SLIDE 30

Real-Time Task Model

Garbage collection task when w > 0:

30

slide-31
SLIDE 31

NAND Flash Memory Garbage Collection

31

1. Write 3 flash pages of Logical Page Numbers (LPN): 0, 1, 2

slide-32
SLIDE 32

NAND Flash Memory Garbage Collection

32

1. Write 3 flash pages of Logical Page Numbers (LPN): 0, 1, 2 2. Update LPN=0

slide-33
SLIDE 33

NAND Flash Memory Garbage Collection

33

1. Write 3 flash pages of Logical Page Numbers (LPN): 0, 1, 2 2. Update LPN=0 3. GC triggered to reclaim Block 1000

slide-34
SLIDE 34

NAND Flash Memory Garbage Collection

34

1. Write 3 flash pages of Logical Page Numbers (LPN): 0, 1, 2 2. Update LPN=0 3. GC triggered to reclaim Block 1000 4. Copy valid pages in victim block to a free block

slide-35
SLIDE 35

NAND Flash Memory Garbage Collection

35

1. Write 3 flash pages of Logical Page Numbers (LPN): 0, 1, 2 2. Update LPN=0 3. GC triggered to reclaim Block 1000 4. Copy valid pages in victim block to a free block 5. Erase victim block

slide-36
SLIDE 36

Real-Time Task Model

Garbage collection task when w > 0:

36

Over-provisioning

slide-37
SLIDE 37

Real-Time Task Model

Garbage collection task when w > 0:

Over-provisioning GC victim block

37

slide-38
SLIDE 38

Real-Time Task Model

time before the next block needs to be reclaimed

Garbage collection task when w > 0:

time spent copying valid pages and erasing the victim block

38

slide-39
SLIDE 39

Admission Control

Read set: Write set:

39

slide-40
SLIDE 40

Admission Control

Read set: Write set:

40

minimum read period time to read a page

slide-41
SLIDE 41

Admission Control

Read set: Write set:

41

minimum period in all write, encoding and GC tasks time to erase a block

slide-42
SLIDE 42

Admission Control Simulations

# of task sets: 500 # of tasks per task set: 10 Each task makes 1-page read and 3-page write requests per period Periods are calculated based on generated utilizations

42

slide-43
SLIDE 43

OpenSSD Cosmos Board

43

slide-44
SLIDE 44

Experimental Results: PaRT-FTL

8 tasks 4 tasks make write requests: 12-page writes every 60 msec 4 tasks make read requests: 3-page reads every 15 msec

44

Write requests Read requests

slide-45
SLIDE 45

Experimental Results: WAO-GC

45

Write requests Read requests 8 tasks 4 tasks make write requests: 12-page writes every 60 msec 4 tasks make read requests: 3-page reads every 15 msec

slide-46
SLIDE 46

Experimental Results

46

slide-47
SLIDE 47

Conclusion

Contributions of PaRT-FTL:

  • An FTL design that takes advantage of internal

parallelism in SSDs

  • A real-time task model for read and write requests on

multiple flash chips

  • Bounded and low-latency read requests that are not

blocked by write requests or garbage collection

47