99
Einleitung Hauptspeicher VECC LOT-ECC Fazit Kombinierte HW/SW-Verfahren zur Behebung von Hauptspeicherfehlern Jan Lahni TU Dortmund 3. M¨ arz 2013 1 / 24

Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Kombinierte HW/SW-Verfahren zur Behebungvon Hauptspeicherfehlern

Jan Lahni

TU Dortmund

3. Marz 2013

1 / 24

Page 2: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Inhaltsverzeichnis

Einleitung

Hauptspeicher

VECC

LOT-ECC

Fazit

2 / 24

Page 3: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des Hauptspeicherbedarfs

I Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 4: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 5: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende Anschaffungskosten

I steigender Energiebedarf des Hauptspeichers und darausresultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 6: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 7: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 8: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I Problematik

I ...

3 / 24

Page 9: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Motivation

I kontinuierliche Zunahme des HauptspeicherbedarfsI Problematik

I steigende AnschaffungskostenI steigender Energiebedarf des Hauptspeichers und daraus

resultierende Kosten

I erwartetes Fehlertoleranzverhalten erfordert Abspeichernredundanter Daten

I ProblematikI ...

3 / 24

Page 10: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 11: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senken

I Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 12: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 13: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 14: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECC

I x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 15: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ziele

I Mehrbedarf an Speicher reduzieren

I Energiebedarf senkenI Herangehensweise VECC Verfahren

I dynamische Anpassung des Schutzlevels an die aktuelleAnwendung

I Herangehensweise LOT-ECCI x8 DIMMs fur ein kommerzielles einsetzbares

”chipkill“-Verfahren zuganglich machen

4 / 24

Page 16: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 17: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 18: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiert

I Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 19: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)

I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 20: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 21: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 22: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Aufbau

I Dual Inline Memory Modul (DIMM)

I”rank“ 64Bit Datenbus Bandbreite

I Chips werden parallel adressiertI Dynamic Random Access Memory (DRAM)I 4, 8, 16 Bit

I Bezeichnung der DIMMs abhangig von DRAM Art

I x4 DIMM, x8 DIMM, x16 DIMM

5 / 24

Page 23: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)

I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Page 24: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Page 25: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits Daten

I DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Page 26: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro Rank

I 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Page 27: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus Bandbreite

I keine x16 ECC-DIMMs

6 / 24

Page 28: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I Error Checking and Correction (ECC)I ECC-DIMMs

I 8 Bits ECC schutzen 64 Bits DatenI DIMMs bieten extra Platz pro RankI 72 Bit Gesamtbus BandbreiteI keine x16 ECC-DIMMs

6 / 24

Page 29: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Page 30: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Page 31: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schutzmaßnahmen

I”chipkill correct“

I”Single Symbol Correct Double Symbol Detect“ (SSC-DSD)

I 3- oder 4-Symbol Prufsumme

7 / 24

Page 32: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

”chipkill“ Konfiguration

Abbildung : Chipkill Konfiguration(Quelle: Virtualized and Flexible ECC for Main Memory, Seite 399)

8 / 24

Page 33: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteilt

I”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 34: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 35: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim Speicherzugriff

I”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 36: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 37: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 38: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-Interfaces

I Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 39: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-InterfacesI Bereitstellen von Speicherplatz fur T2EC

I wieder Freigeben des Selben

9 / 24

Page 40: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

I DRAM ECC Mechanismus auf zwei ECC Codes aufgeteiltI

”tier-one error code“ (T1EC)

I Fehlererkennung beim SpeicherzugriffI

”tier-tow error code“ (T2EC)

I Beheben eines gefundenen Fehlers

I Anpassen des virtuellen Speicher-InterfacesI Bereitstellen von Speicherplatz fur T2ECI wieder Freigeben des Selben

9 / 24

Page 41: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Page 42: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Page 43: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der Virtuellen Fehlererkennung und -korrektur

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Information wirdim ECC Bereich bei dendazugehorigen Datengespeichert

I T2EC Information wirdin anderem DRAM rankim Datenteil gespeichert

I T2EC kann wie dienormalen Daten inden

”last-levle cache“

(LLC) geladen werden

10 / 24

Page 44: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLC

I Fehlererkennung mitT1EC Code ausfuhren

I Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 45: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhren

I Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 46: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 47: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefunden

I Laden von T2EC zurFehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 48: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefundenI Laden von T2EC zur

Fehlerkorrektur

I zusatzlicherSpeicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 49: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lesen aus dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I 1©: Cache Miss LLCI Fehlererkennung mit

T1EC Code ausfuhrenI Daten in LLC laden

I Fehler wird gefundenI Laden von T2EC zur

FehlerkorrekturI zusatzlicher

Speicherzugriff fallsT2EC nicht im LLC

11 / 24

Page 50: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“I 4©: ECC Information

im LLC wirdaktualisiert bzw. neureserviert

12 / 24

Page 51: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“

I 4©: ECC Informationim LLC wirdaktualisiert bzw. neureserviert

12 / 24

Page 52: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in den Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T2EC Information mussaktualisiert werden

I 3©: Ubersetzen derDatenadresse durch

”ECC adress

translation unit“I 4©: ECC Information

im LLC wirdaktualisiert bzw. neureserviert

12 / 24

Page 53: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I Abspeichern vonZusatzinformationbezuglich Gultigkeit

I 5© Schreiben der T2ECInformationen in denSpeicher

13 / 24

Page 54: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Schreiben in dem Speicher

Abbildung : Zwei Stufen DRAM ECCQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I Abspeichern vonZusatzinformationbezuglich Gultigkeit

I 5© Schreiben der T2ECInformationen in denSpeicher

13 / 24

Page 55: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Page 56: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Page 57: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Erweiterung fur Non-ECC DIMMs

Abbildung : Virtuelles ECC mitNon-ECC DIMMsQuelle: Virtualized and Flexible ECC forMain Memory Seite 400

I T1EC Informationenwerden bei den T2ECInformationengespeichert

I wenn ECC Informationnicht im LLC muss einweitererHauptspeicherzugrifferfolgen

I T2EC Informationenwerden sofort mitgelesen

14 / 24

Page 58: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 59: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1EC

I das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 60: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2EC

I bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 61: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 Bit

I bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 62: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 63: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 Symbole

I Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8DIMMs

15 / 24

Page 64: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ Verfahren

I”3-check-symbol error code“

I die ersten beiden Symbole realisieren den T1ECI das dritte Symbol den T2ECI bei x8 DIMMs hat jedes Symbol 8 BitI bei x16 DIMMs hat jedes Symbol 16 Bit

I Erweiterung von T2EC auf 2 SymboleI Korrigieren zweier gleichzeitiger Chipausfalle bei x4 und x8

DIMMs

15 / 24

Page 65: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM Chips

I Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 66: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 67: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 68: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in Datenchips

I bei x16 DIMMs konnen aufgrund großerer Symbole wenigerECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 69: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in DatenchipsI bei x16 DIMMs konnen aufgrund großerer Symbole weniger

ECC Informationen im LLC gehalten werden

I”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 70: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

VECC”chipkill“ verfahren

I Speicherung der T1EC Symbole in zwei ECC DRAM ChipsI Speicherung des T2EC Symbols in einen Datenchip

I x8 ECC DIMMs konnen verwendet werden

I bei Non-ECC DIMMs komplette Speicherung in DatenchipsI bei x16 DIMMs konnen aufgrund großerer Symbole weniger

ECC Informationen im LLC gehalten werdenI

”2-check-symbol code“ erlaubt nur das Erkenne eines

Chipausfalls

16 / 24

Page 71: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der lokalen und mehrstufigen Fehlererkennungund -korrektur

I”chipkill protection“ fur x4 und x8 ECC DIMMs

I Aufteilen des Schutzes auf lokale und globale Ebene

17 / 24

Page 72: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Verfahren der lokalen und mehrstufigen Fehlererkennungund -korrektur

I”chipkill protection“ fur x4 und x8 ECC DIMMs

I Aufteilen des Schutzes auf lokale und globale Ebene

17 / 24

Page 73: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 74: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 75: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhalten

I bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 76: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 77: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit Daten

I wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 78: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigt

I dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 79: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Lokale Fehlererkennung (LOT-ECC)

I bei jeden Lesevorgang die Richtigkeit der Daten uberprufen

I Lokalisierung des fehlerhaften”ranks“

I Gesamtgroße einer Cachezeile bleibt erhaltenI bei x8 DIMMs (ein rank entspricht neun x8 DRAMs)

I schutzen 7 Bit ECC 57 Bit DatenI wird ein Datenbit nicht fur die 512 Bit Cachezeile benotigtI dieses wird bei der Globalen Fehlerkorrektur genutzt

18 / 24

Page 80: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 81: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener Daten

I wird im selben”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 82: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichert

I aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 83: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht Chips

I letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 84: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 85: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I 57 Bit XOR Paritycode uber alle Datensegmente einerCachezeile

I dient zur Wiederherstellung verlorener DatenI wird im selben

”rank“ wie die zu schutzenden Daten

gespeichertI aufgeteilt in 7 Bit Blocken auf die ersten acht ChipsI letztes Bit wird in das ubrig gebliebene Datenbit gespeichert

I neunter Chip speichert 7 Bit XOR Parity des Paritycodes

19 / 24

Page 86: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werden

I kann nicht korrigiert werden, aber muss als Unkorrigierbarkeitgekennzeichnet werden

I 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Page 87: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werdenI kann nicht korrigiert werden, aber muss als Unkorrigierbarkeit

gekennzeichnet werden

I 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Page 88: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I Fehler muss bei zwei gleichzeitigen Chipfehlern erkannt werdenI kann nicht korrigiert werden, aber muss als Unkorrigierbarkeit

gekennzeichnet werdenI 9 Bit Error Detection Code fur GEC Parity Bits

Abbildung : Speicherlayout fur den GEC einer Cachezeile(Quelle: LOcalized and Tiered Reliability Mechanisms for CommodityMemory Systems Seite 289)

20 / 24

Page 89: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Page 90: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Page 91: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Page 92: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Globale Fehlerkorrektur (GEC)

I beim Lesen muss auf GEC nur zugegriffen werden, wenn einFehler erkannt wird

I bei Schreiboperationen muss der GEC jedes Mal aktualisiertwerden, jeweils 72 Bit

I bei DDR3 mussen immer acht Bursts (576 Bit) geschriebenwerden

I”Oracular coalescing“: Zusammenfassen von acht GEC Codes

bei der Aktualisierung

21 / 24

Page 93: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Page 94: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Page 95: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Ansatz

LOT-ECC

I Anderungen nur auf Ebenedes Speichercontrollersvorgenommen, uminteressant fur kommerzielleUmsetzung zu sein

I”chipkill protection“ auf x8

DIMMs realisiert

I”chipkill protection“ fur

einen aus neun Chips

Virtuelles ECC

I Moglichkeit der flexiblenAdaptierung desSchutzlevels an aktuelleAnwendung, weitreichendereAnderungen

I”chipkill protection“ mit

verschiedenenKonfigurationen; ECC aufNON-ECC DIMMs

I”chipkill protection“ fur zwei

aus 36 Chips

22 / 24

Page 96: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Page 97: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Page 98: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Vergleich”Singel Symbol Correct Double Symbol Detect“

(SSC-DSD)

LOT-ECC

I 20-40 ProzentEnergieeinsparung

I 5-15 Prozent geringereLatenz

I 14 Prozent hohererSpeicherbedarf

Virtuelles ECC

I 10-30 ProzentEnergieeinsparung

I 0,5 Prozent hohere Latenzbei ECC DIMMs

I Non-ECC DIMMs bis zu 10Prozent schlechter

23 / 24

Page 99: Kombinierte HW/SW-Verfahren zur Behebung von ... · rank\ 64Bit Datenbus Bandbreite I Chips werden parallel adressiert I Dynamic Random Access Memory (DRAM) I 4, 8, 16 Bit I Bezeichnung

Einleitung Hauptspeicher VECC LOT-ECC Fazit

Quellen

Doe Hyun Yoon, Mattan Erez. Virtualized and flexible ECC formain memory. Proceedings of the fifteenth edition of ASPLOSon Architectural support for programming languages andoperating systems. (2010)

A. N. Udipi, N. Muralimanohar, R. Balsubramonian, A. Davis,N.P. Jouppi. LOT-ECC: localized and tiered reliabilitymechanisms for commodity memory systems. 39th AnnualInternational Symposium on Computer Architecture (ISCA).(2012)

24 / 24