flipping bits in memory without accessing them:

15
Flipping Bits in Memory Without Accessing Them: DRAM Disturbance Errors Yoongu Kim Ross Daly, Jeremie Kim, Chris Fallin, Ji Hye Lee, Donghyuk Lee, Chris Wilkerson, Konrad Lai, Onur Mutlu

Upload: brian

Post on 22-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Flipping Bits in Memory Without Accessing Them:. DRAM Disturbance Errors. Yoongu Kim Ross Daly, Jeremie Kim, Chris Fallin, Ji Hye Lee, Donghyuk Lee, Chris Wilkerson, Konrad Lai, Onur Mutlu. DRAM Chip. Row. Wordline. Row. Row. Row. Row. DRAM Chip. Row. Wordline. Row. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Flipping Bits in Memory Without Accessing Them:

Flipping Bits in Memory Without Accessing Them:DRAM Disturbance

ErrorsYoongu Kim

Ross Daly, Jeremie Kim, Chris Fallin, Ji Hye Lee, Donghyuk Lee, Chris Wilkerson, Konrad Lai, Onur

Mutlu

Page 2: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Row Row Row

Wordline

Page 3: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Opened Row Row Row

Wordline VHIGH

Page 4: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Closed Row Row Row

Wordline VLOW

Page 5: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Opened Row Row Row

Wordline VHIGH

Page 6: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Opened Row Row Row

Wordline VHIGH

Page 7: Flipping Bits in Memory Without Accessing Them:

DRAM Chip Row Row Opened Row Row Row

Wordline

Repeatedly opening and closing a row induces disturbance errors in adjacent rows

VHIGH

Page 8: Flipping Bits in Memory Without Accessing Them:

DRAM Module

x86 CPU

Y

X

loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop

Page 9: Flipping Bits in Memory Without Accessing Them:

DRAM Module

x86 CPU

loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop

Y

X

Page 10: Flipping Bits in Memory Without Accessing Them:

DRAM Module

x86 CPU

loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop

Y

X

Page 11: Flipping Bits in Memory Without Accessing Them:

DRAM Module

x86 CPU

loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop

Y

X

Page 12: Flipping Bits in Memory Without Accessing Them:

Most Modules At Risk86% 83% 88%

Page 13: Flipping Bits in Memory Without Accessing Them:

Most Modules At Risk86% 83% 88%

After After After

Page 14: Flipping Bits in Memory Without Accessing Them:

Most Modules At Risk86% 83% 88%

After After After

Errors Errors Errors

Page 15: Flipping Bits in Memory Without Accessing Them:

Flipping Bits in Memory Without Accessing Them:DRAM Disturbance

Errors

4:30 PM