flash based ssds
play

Flash-based SSDs [ Material based on slides from Tyler - PowerPoint PPT Presentation

Flash-based SSDs [ Material based on slides from Tyler Caraza-Harter ] www: https://tyler.caraza-harter.com Cost: HDD vs. SSD Source: http://www.tomshardware.com/news/ssd-hdd-solid-state-drive-hard-disk-drive-prices,14336.html Cost: HDD vs.


  1. Flash Translation Layer write 1101 logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 11 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  2. Flash Translation Layer write 1101 logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 11 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  3. Flash Translation Layer logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 11 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  4. Flash Translation Layer logical: 0 1 2 3 4 5 6 7 must eventually be garbage collected 00 00 00 00 10 11 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  5. FTL Could be implemented as device driver or in firmware (usually the latter). � Where to store mapping? SRAM. � Physical pages can be in three states: - valid, invalid, free

  6. States free valid invalid

  7. States program free valid erase invalid

  8. States program free valid relocate erase or TRIM invalid

  9. SSD Architecture SSD: looks like disk (Traditional block API) SRAM: FTL mapping tbl

  10. Problem: Big Mapping Table Assume 200GB device, 2KB pages, 4-byte entries. � SRAM needed: (200GB / 2KB) * 4 bytes = 400 MB. � Too big, SRAM is expensive!

  11. Page Translations logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  12. 2-Page Translations logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  13. Larger Mappings Advantage: larger mappings decrease table size. � Disadvantage?

  14. 2-Page Translations logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  15. 2-Page Translations write 1011 logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 11 11 physical: 01 10 11 00 01 01 11 11 block 0 block 1

  16. 2-Page Translations write 1011 logical: 0 1 2 3 4 5 6 7 copy 00 00 00 00 10 01 10 01 physical: 01 10 11 00 01 01 11 01 block 0 block 1

  17. 2-Page Translations write 1011 logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 10 01 physical: 01 10 11 00 01 01 11 01 block 0 block 1

  18. 2-Page Translations write 1011 logical: 0 1 2 3 4 5 6 7 00 00 00 00 10 01 10 01 physical: 01 10 11 00 01 01 11 01 block 0 block 1

  19. Larger Mappings Advantage: larger mappings decrease table size. � Disadvantages? - more read-modify-write updates - more garbage - less flexibility for placement

  20. Hybrid FTL Use course-grained mapping for most (e.g., 95%) of data. Map at block level. � Use fine-grained mapping for recent data. Map at page level.

  21. Log Blocks Write changed pages to designated log blocks. � After blocks become full, merge changes with old data. � Eventually garbage collect old pages.

  22. Merging Merging technique depends on I/O pattern. � Three merge types: - full merge - partial merge - switch merge

  23. Merging Merging technique depends on I/O pattern. � Three merge types: - full merge - partial merge - switch merge

  24. … logical: 0 1 2 3 11 11 11 11 11 11 11 11 A B C D physical: 11 11 11 11 11 11 11 11 block 0 block 1 (log) block 2

  25. write D2 … logical: 0 1 2 3 11 11 11 11 11 11 11 11 A B C D physical: 11 11 11 11 11 11 11 11 block 0 block 1 (log) block 2

  26. write D2 … logical: 0 1 2 3 11 11 11 11 11 11 11 A B C D D2 physical: 11 11 11 11 11 11 11 block 0 block 1 (log) block 2

  27. … logical: 0 1 2 3 11 11 11 11 11 11 11 A B C D D2 physical: 11 11 11 11 11 11 11 block 0 block 1 (log) block 2

  28. … logical: 0 1 2 3 11 11 11 11 11 11 11 A B C D D2 physical: 11 11 11 11 11 11 11 block 0 block 1 (log) block 2 eventually, we need to get rid of red arrows, as these represent expensive mappings

  29. … logical: 0 1 2 3 11 11 11 11 11 11 11 A B C D D2 physical: 11 11 11 11 11 11 11 block 0 block 1 (log) block 2

  30. … logical: 0 1 2 3 11 11 11 A B C D D2 A B C D2 physical: 11 11 11 block 0 block 1 (log) block 2

  31. … logical: 0 1 2 3 11 11 11 A B C D D2 A B C D2 physical: 11 11 11 block 0 block 1 (log) block 2

  32. … logical: 0 1 2 3 11 11 11 A B C D D2 A B C D2 physical: 11 11 11 block 0 block 1 (log) block 2

  33. … logical: 0 1 2 3 garbage 11 11 11 A B C D D2 A B C D2 physical: 11 11 11 block 0 block 1 (log) block 2

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend