227-0085-44L  Projekte & Seminare: Understanding and Designing Modern SSDs (Solid-State Drives)

SemesterHerbstsemester 2022
DozierendeS. Sadrosadati
Periodizitätjedes Semester wiederkehrende Veranstaltung
LehrspracheEnglisch
KommentarNur für Elektrotechnik und Informationstechnologie BSc.

Die Lerneinheit kann nur einmal belegt werden. Eine wiederholte Belegung in einem späteren Semester ist nicht anrechenbar.



Lehrveranstaltungen

NummerTitelUmfangDozierende
227-0085-44 PProjekte & Seminare: Understanding and Designing Modern SSDs (Solid-State Drives) Für Fachstudierende und Hörer/-innen ist eine Spezialbewilligung der Dozierenden notwendig.
Für den Zugang zum Angebot und zur Einschreibung loggen Sie sich hier ein (mit Ihrem n.ETHZ account): https://psapp.ee.ethz.ch/
Bitte beachten Sie, dass die Seite jeweils erst zwei Wochen vor Semesterbeginn zugänglich ist und im Verlauf des Semesters wieder abgeschaltet wird. Die Einschreibung ist nur von Freitag vor Semesterbeginn bis zum ersten Freitagmittag im Semester möglich.

To access the offer and to enroll for courses log in (with your n.ethz account): https://psapp.ee.ethz.ch/
Please note that the P&S-site is accessible no earlier than two weeks before the start of the semester until four weeks after the start of the semester. Enrollment is only possible from Friday before the start of the semester until noon of the first Friday in the semester.

Time: To be arranged with each student taking the course
Room: tba
3 Std.S. Sadrosadati

Katalogdaten

KurzbeschreibungDer Bereich Praktika, Projekte, Seminare umfasst Lehrveranstaltungen in unterschiedlichen Formaten zum Erwerb von praktischen Kenntnissen und Fertigkeiten. Ausserdem soll selbstständiges Experimentieren und Gestalten gefördert, exploratives Lernen ermöglicht und die Methodik von Projektarbeiten vermittelt werden.
LernzielNAND flash memory is the de facto standard for architecting a storage device in modern computing systems. As modern computing systems process a large amount of data at an unprecedented scale, a storage device needs to meet high requirements on storage capacity and I/O performance. A NAND flash-based solid-state drive (SSD) can provide orders-of-magnitude higher I/O performance compared to traditional hard-disk drives (HDDs), with a much lower cost-per bit value over SSDs based on emerging non-volatile memory (NVM) technologies.

NAND flash memory has several unique characteristics, such as the erase-before write property (i.e., a flash cell needs to be first erased before programming it), limited lifetime (i.e., a cell cannot reliably store data after experiencing a certain number of program/erase (P/E) cycles), and large operation units (e.g., modern NAND flash memory typically reads/writes data in a page (e.g., 16 KiB) granularity). To achieve high performance and large capacity of the storage system while hiding the unique characteristics of NAND flash memory, it is critical to design efficient SSD firmware, commonly called Flash-Translation Layer (FTL). An FTL is responsible for many critical management tasks, such as address translation, garbage collection, wear leveling, and I/O scheduling, which significantly affect the performance, reliability, and lifetime of the SSD.

In this course, we will cover how a modern NAND flash-based SSD is organized and operates, from the basics of underlying NAND flash devices and various SSD-management tasks at the FTL level. We will also examine other emerging memory technologies for building SSDs, such as Phase Change Memory, 3D XPoint (e.g., Intel Optane SSD) and more.

You will help build a practical SSD simulator by refactoring MQSim, a state-of-the-art simulator for high-end SSDs, to support advanced features of modern NAND flash chips and essential SSD-management tasks. This will allow you to have the chance to obtain a comprehensive background in modern storage systems and research experience on system optimization with rigorous evaluation.

The course is conducted in English.

The course has two main parts:
Weekly lectures on modern NAND flash-based SSDs
Hands-on project to refactor MQSim

Course website: https://safari.ethz.ch/projects_and_seminars/
SkriptSee: https://safari.ethz.ch/projects_and_seminars/
LiteraturLearning Materials
============

Inside NAND Flash Memories: https://search.library.ethz.ch/permalink/f/823s1o/ELENDING603606

Inside Solid State Drives (SSDs):
https://search.library.ethz.ch/permalink/f/823s1o/ELENDING1030264

MQSim, an open-source multi-queue SSD simulator

Source code: https://github.com/CMU-SAFARI/MQSim

Paper: https://people.inf.ethz.ch/omutlu/pub/MQSim-SSD-simulation-framework_fast18.pdf

An example of how to improve SSD performance by optimizing the I/O scheduling policy of the FTL: Link

Examples of how to improve SSD reliability by exploiting physical characteristics of modern NAND flash memory:
Link
Link
https://arxiv.org/pdf/1706.08642.pdf

Examples of how to improve the security and privacy of stored data in SSDs: Link
Link
Voraussetzungen / BesonderesPrerequisites of the course:
- No prior knowledge of NAND flash-based storage systems is required.
- Digital Design and Computer Architecture (or equivalent course)
- Good knowledge of C/C++ programming language is required.
- Interest in system optimizations

Leistungskontrolle

Information zur Leistungskontrolle (gültig bis die Lerneinheit neu gelesen wird)
Leistungskontrolle als Semesterkurs
ECTS Kreditpunkte3 KP
PrüfendeS. Sadrosadati
Formunbenotete Semesterleistung
PrüfungsspracheEnglisch
RepetitionRepetition nur nach erneuter Belegung der Lerneinheit möglich.

Lernmaterialien

Keine öffentlichen Lernmaterialien verfügbar.
Es werden nur die öffentlichen Lernmaterialien aufgeführt.

Gruppen

Keine Informationen zu Gruppen vorhanden.

Einschränkungen

Allgemein : Für Fachstudierende und Hörer/-innen ist eine Spezialbewilligung der Dozierenden notwendig
PlätzePlätze beschränkt. Spezielles Auswahlverfahren.
BelegungsbeginnBelegung ab 16.09.2022 möglich
VorrangDie Belegung der Lerneinheit ist nur durch die primäre Zielgruppe möglich
Primäre ZielgruppeElektrotechnik und Informationstechnologie BSc (228000)
WartelisteBis 07.10.2022
BelegungsendeBelegung nur bis 30.09.2022 möglich

Angeboten in

StudiengangBereichTyp
Elektrotechnik und Informationstechnologie BachelorProjekte & SeminareWInformation