1 of 368

A Deeper Look into�RowHammer’s Characteristics �in Real Modern DRAM Chips

Abdullah Giray Yaglikci

Ph.D. Candidate

SAFARI Live Seminar

17 January 2024

2 of 368

DRAM: Dynamic Random Access Memory

1

DRAM stores the data-in-use

3 of 368

DRAM: Dynamic Random Access Memory

2

DRAM stores the data-in-use

DRAM should be trustable�for reliability, security, and safety

4 of 368

DRAM Organization

3

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

Row Buffer

Bitline

Wordline

DRAM Cell

DRAM Row

5 of 368

DRAM Operation

4

DRAM Subarray

Bitline

Wordline

DRAM Cell

DRAM Cell

Row Buffer

  1. Row Activation: Fetch the row’s content into the row buffer 

  • Column AccessRead/Write a column in the row buffer

  • PrechargeDisconnect the row from the row buffer

Wordline

Capacitor

Access transistor

Bitline

charge

leakage

paths

Refresh: Restores the capacitor voltagewith a time period called refresh window

I/O Circuitry

6 of 368

The RowHammer Vulnerability

5

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening (activating) and closing (precharging)

a DRAM row causes RowHammer bit flips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 1

Row 3

Row 0

Row 4

Row 2

closed

Victim Row

Victim Row

Victim Row

Victim Row

Aggressor Row

Row 2

open

Row 2

closed

Aggressor Row

DRAM Subarray

7 of 368

DRAM Read Disturbance – Swimming Pool Analogy

6

Swimming in a lane disturbs nearby lanes

8 of 368

DRAM Read Disturbance: A Prime Example

7

9 of 368

Implications of DRAM Read Disturbance

8

Leak Private Information

Take Over a Computer

Data Loss or Corruption

Compromise Application Correctness

10 of 368

DRAM Read Disturbance Worsens

  • Mitigations are becoming prohibitively expensive
  • More effective and efficient solutions are needed

9

DRAM chips are increasingly more vulnerable �to read disturbance with technology scaling

Technology Scaling

11 of 368

Read Disturbance in DRAM

10

Increasing focus on exploiting, understanding, �and solving DRAM read disturbance

12 of 368

Thesis Statement

11

Building a detailed understanding of�DRAM read disturbance

and

leveraging insights into

modern DRAM chips and memory controllers

enable researchers and engineers

to mitigate DRAM read disturbance

efficiently and scalably

13 of 368

My Dissertation Works

  • A deeper look into RowHammer’s characteristics

  • Solutions to DRAM read disturbance

12

Temperature

Memory access patterns

Victim cell’s�physical location

Voltage

Throttling Unsafe Accesses

Parallelizing Preventive Actions

Leveraging

Heterogeneity

14 of 368

Solutions to DRAM Read Disturbance

13

15 of 368

A Deeper Look into RowHammer’s Characteristics

14

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

16 of 368

DRAM Testing Infrastructure

15

SoftMC (DRAM Bender) on a Xilinx Virtex UltraScale+ XCU200

Fine-grained control over DRAM commands,

timing parameters (±1.5ns), temperature (±0.5°C ),

and wordline voltage (±1mV)

*

17 of 368

DRAM Testing Methodology

To characterize our DRAM chips at worst-case conditions:

  1. Prevent sources of interference during core test loop
    • No DRAM refresh: to avoid refreshing victim row
    • No DRAM calibration events: to minimize variation in test timing
    • No RowHammer mitigation mechanisms: to observe circuit-level effects
    • Test for less than a refresh window (32ms) to avoid retention failures
    • Repeat tests for ten times
  2. Worst-case access sequence
  3. We use worst-case access sequence based on prior works’ observations
  4. For each row, repeatedly access the two physically-adjacent rows �as fast as possible

16

18 of 368

A Deeper Look into RowHammer’s Characteristics

17

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

19 of 368

Key Takeaways from Temperature Analysis

18

To ensure that a DRAM cell is not vulnerable to RowHammer,

we must characterize the cell at all operating temperatures

Key Takeaway 1

RowHammer vulnerability tends to worsen �as DRAM temperature increases

However, individual DRAM rows can exhibit behavior different from the dominant trend 

Key Takeaway 2

20 of 368

Key Findings: Temperature

19

Temperature

Temperature

Vulnerability to�Read Disturbance

DRAM read disturbance is more effective �within a temperature range

Vulnerable temperature range �varies across memory regions

A DRAM cell should be tested �at each possible operating temperature

21 of 368

Impact of Temperature on DRAM Cells

The fraction of vulnerable DRAM cells, experiencing bit flips at all temperature levels within their vulnerable temperature range

20

Temperature

bit flips

Vulnerable Temperature Range

no bit flips

no bit flips

Mfr. A

Mfr. B

Mfr. C

Mfr. D

99.1%

98.9%

98.0%

99.2%

OBSERVATION 1

Most DRAM cells are vulnerable to RowHammer �throughout a continuous temperature range

Lower

Bound

Upper

Bound

22 of 368

Impact of Temperature on DRAM Cells

21

Lower Bound (°C)

Upper Bound (°C)

Fraction of  Vulnerable DRAM Cells

Different DRAM cells are vulnerable to RowHammer �within specific temperature ranges

Vulnerable �from 70°C to 85 ° C

Vulnerable

from 55°C to 60°C

23 of 368

Impact of Temperature on DRAM Cells

22

Lower Bound (°C)

Upper Bound (°C)

29.8% of the cells experience bit flips �at all tested temperatures

OBSERVATION 2

A significant fraction of vulnerable DRAM cells �exhibit bit flips at all tested temperatures

24 of 368

Impact of Temperature on DRAM Cells

23

0.2% of the cells experience bit flips �only at 70°C

Lower Bound (°C)

Upper Bound (°C)

OBSERVATION 3

A small fraction of all vulnerable DRAM cells are vulnerable �to RowHammer only in a very narrow temperature range

25 of 368

Impact of Temperature on DRAM Rows

24

Temperature (°C)

Variation in

Bit Flip Counts

per DRAM Row

More cells experience bit flips as temperature increases

26 of 368

Impact of Temperature on DRAM Rows

25

Temperature (°C)

Variation in Bit Flip Counts per DRAM Row

OBSERVATION 4

A DRAM row’s bit error rate can either increase or decreasewith temperature depending on the DRAM manufacturer

27 of 368

Also in the Paper

26

The minimum activation count at which a victim row experiences a bit flip (HCfirst) when temperature changes:

OBSERVATION 5

DRAM rows can show either higher or lower HCfirst

when temperature increases

OBSERVATION 6

HCfirst tends to generally decrease 

as temperature change (ΔT) increases 

OBSERVATION 7

The HCfirst change (ΔHCfirst) tends to be larger 

as temperature change (ΔT) increases

28 of 368

Contributions to Understanding RowHammer

27

29 of 368

A Deeper Look into RowHammer’s Characteristics

28

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

30 of 368

Review: The RowHammer Vulnerability [Kim+, ISCA14]

29

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening (activating) and closing (precharging)

a DRAM row causes RowHammer bitflips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 2

closed

Victim Row

Victim Row

Aggressor Row

Row 2

open

Row 2

closed

Aggressor Row

DRAM Subarray

31 of 368

Key Takeaways�from Aggressor Row Active Time Analysis

As an aggressor row stays active longer,

victim DRAM cells become more vulnerable to RowHammer

Key Takeaway 3

RowHammer vulnerability of victim cells decreases

when the bank is precharged for a longer time  

Key Takeaway 4

32 of 368

Key Takeaways�from Aggressor Row Active Time Analysis

31

Memory Access Patterns

Read disturbance is more effective

if the read memory region

stays active longer

State-of-the-Art

Our Finding

Minimum Row Access Count to Induce the First Bitflip

36%

reduction

Fewer reads cause a more significant read disturbance

when the read memory region stays active longer

33 of 368

Memory Access Patterns�in Aggressor Row Active Time Analysis

  • Baseline access pattern:

  • Increasing aggressor row active time:

  • Increasing bank precharged time:

32

Time

Row A is active

Row B is active

Row A is active

Row B is active

Time

Row A is active

Time

Row A is active

Row B is active

Row A is active

Row B is active

Row A is active

Aggressor row active time

Bank�precharged time

Aggressor row active time

Aggressor row �active time

Bank�precharged time

Bank�precharged time

34 of 368

Increasing Aggressor Row Active Time

33

Aggressor Row Active Time (ns)

Number of Bit Flips

per DRAM Row

As the aggressor row stays active longer, �more DRAM cells experience RowHammer bit flips

35 of 368

Increasing Aggressor Row Active Time

34

Aggressor Row Active Time (ns)

Number of Bit Flips

per DRAM Row

As the aggressor row stays active longer, �more DRAM cells experience RowHammer bit flips

36 of 368

Increasing Aggressor Row Active Time

35

Aggressor Row Active Time (ns)

Minimum Activation Count

to Observe a Bit Flip (HCfirst)

Fewer activations are required to cause RowHammer bit flips when aggressor rows stay active for longer time

37 of 368

Increasing Aggressor Row Active Time

36

Aggressor Row Active Time (ns)

Minimum Activation Count

to Observe a Bit Flip (HCfirst)

OBSERVATION 8

As the aggressor row stays active longer, �more DRAM cells experience RowHammer bit flips and they experience RowHammer bit flips at lower activation counts 

38 of 368

Also in the Paper

37

The variation in aggressor row active time’s effects across DRAM rows and the effect of increasing bank precharged time

OBSERVATION 9

As the aggressor row stays active longer, the RowHammer vulnerability consistently worsens across tested DRAM rows

OBSERVATION 10

As the bank stays precharged longer, fewer DRAM cells experience RowHammer bit flips and they experience RowHammer bit flips at higher activation counts

OBSERVATION 11

As the bank stays precharged longer, the RowHammer vulnerability consistently reduces across tested DRAM rows

39 of 368

Contributions to Understanding RowHammer

38

40 of 368

RowPress [ISCA 2023]

39

41 of 368

RowPress A New DRAM Read Disturbance Phenomenon

40

Row 0

Row 1

Row 2

Row 3

Row 4

Keeping a DRAM row open (activated)

causes RowPress bitflips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 1

Row 3

Row 2

closed

Victim Row

Victim Row

Aggressor Row

Row 2

open

Aggressor Row

DRAM Subarray

42 of 368

RowPress vs. RowHammer

Instead of using a high activation count,

41

RowHammer

Aggressor Row

Open

Close

RowPress

Aggressor Row

Open

Close

We observe bitflips even with ONLY ONE activation �in extreme cases where the row stays open for 30ms

36ns, 47K activations to induce bitflips

7.8µs, only 5K activations to induce bitflips

�☞ increase the time that the aggressor row stays open

43 of 368

RowPress [ISCA 2023]

42

44 of 368

A Deeper Look into RowHammer’s Characteristics

43

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

45 of 368

Key Takeaways �from Spatial Variation Analysis

RowHammer vulnerability significantly varies

across DRAM rows and columns due to design-induced

and manufacturing-process-induced variation

Key Takeaway 5

The distribution of the minimum activation count to observe bit flips (HCfirst) exhibits a diverse set of values in a subarray

but similar values across subarrays in the same DRAM module

Key Takeaway 6

46 of 368

Spatial Variation in HCfirst across Rows

DRAM Rows (sorted by reducing HCfirst)

The minimum activation count to observe bit flips (HCfirst) across DRAM rows:

Minimum Activation Count

to Observe a Bit Flip (HCfirst)

The RowHammer vulnerability

significantly varies across DRAM rows

45

47 of 368

Spatial Variation in HCfirst across Rows

Min. Activation Count

to Observe a Bit Flip (HCfirst)

DRAM Rows (sorted by reducing HCfirst)

The RowHammer vulnerability

significantly varies across DRAM rows

46

48 of 368

Spatial Variation in Hcfirst across Rows

Minimum Activation Count

to Observe a Bit Flip (HCfirst)

DRAM Rows (sorted by reducing HCfirst)

OBSERVATION 12

A small fraction of DRAM rows are significantly more vulnerable to RowHammer than the vast majority of the rows

47

49 of 368

Spatial Variation in BER across Columns

Column Index

Chip ID

Number of Bit Flips in a Column

OBSERVATION 13

Certain columns are significantly more vulnerable

to RowHammer than other columns

48

50 of 368

Spatial Variation across Columns

Worse RowHammer Vulnerability

Larger Variation across DRAM Chips

16.7%

30.6%

High RowHammer vulnerability across all chips

High variation in vulnerability across chips

🡪 manufacturing-process-induced variation

🡪design-induced variation

0.0 0.2 0.4 0.6 0.8 1.0

1.0

0.5

0.0

49

Spatial Variation in BER across Columns

51 of 368

Spatial Variation across Columns

16.7%

50.8%

59.8%

30.6%

29.1%

OBSERVATION 14

Both manufacturing process and design

affect a DRAM column’s RowHammer vulnerability

Worse RowHammer Vulnerability

Larger Variation across DRAM Chips

50

Spatial Variation in BER across Columns

52 of 368

Also in the Paper

The minimum activation count at which a victim row experiences a bit flip (HCfirst) across rows in a subarray and across subarrays in a DRAM module:

OBSERVATION 15

The most vulnerable DRAM row in a subarray

is significantly more vulnerable

than the other rows in the subarray

OBSERVATION 16

HCfirst distributions of subarrays within a DRAM module

are significantly more similar to each other

than those of subarrays from different modules

51

53 of 368

A Deeper Look into RowHammer’s Characteristics

52

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

54 of 368

DRAM Organization and Operation

53

DRAM Subarray

Bitline

Wordline

DRAM Cell

DRAM Cell

Row Buffer

DDR4 DRAM chips have two main voltage sources:

  1. VDD (~1.2V) for DRAM array and I/O circuitry

  • VPP (~2.5V) for wordlines

VPP >> VDD so that access transistor conducts well

Wordline

Capacitor

Access transistor

Bitline

I/O Circuitry

VPP (~2.5V)

VDD

(~1.2V)

55 of 368

A Closer Look into RowHammer

54

Low Voltage

Victim Row

Bitline

Low Voltage

Victim Row

Aggressor Row

Disturbance

High Voltage

Aggressor Row

Low Voltage

Low Voltage

Victim Row

Victim Row

Low Voltage

time

Agressor Row

Wordline Voltage

Repeatedly toggling

wordline voltage

is the key to inducing RowHammer bit flips

56 of 368

Our Hypothesis

55

Reducing wordline voltage

can reduce RowHammer vulnerability

without significantly affecting reliable DRAM operation

time

Wordline

Voltage

Reduction in Disturbance

Aggressor Row

Victim Row

Aggressor Row

Victim Row

Wordline

Bitline

Wordline

Bitline

Weaker Channel�in Access Transistor

Strong Channel

Weaker Channel

time

Wordline

Voltage

57 of 368

Our Goal

56

Understand how the wordline voltage (VPP) affects

RowHammer vulnerability

and reliable DRAM operation on real DRAM chips

DRAM Subarray

Bitline

Wordline

DRAM Cell

Row Buffer

I/O Circuitry

58 of 368

DRAM Chips Tested

57

Mfr.

# DIMMs

# Chips

Density

Die

Org.

Date

A (Micron)

1

4

3

2

8

64

24

16

4Gb

8Gb

4Gb

4Gb

-

B

F

-

x8

x4

x8

x8

48-16

11-19

07-21

B (Samsung)

2

1

3

1

1

2

16

8

24

8

8

16

8Gb

8Gb

8Gb

4Gb

4Gb

8Gb

B

C

D

E

F

x8

x8

x8

x8

x8

x8

52-20

19-19

10-21

08-17

02-21

C (SK Hynix)

2

3

2

3

16

24

16

24

16Gb

4Gb

4Gb

8Gb

A

B

C

D

x8

x8

x8

x8

51-20

02-21

48-20

272 DDR4 DRAM Chips

3 Major Manufacturers

59 of 368

More Details in the Paper

Mfr.

# DIMMs

# Chips

Density

Die

Org.

Date

A (Micron)

1

4

3

2

8

64

24

16

4Gb

8Gb

4Gb

4Gb

-

B

F

-

x8

x4

x8

x8

48-16

11-19

07-21

B (Samsung)

2

1

3

1

1

2

16

8

24

8

8

16

8Gb

8Gb

8Gb

4Gb

4Gb

8Gb

B

C

D

E

F

x8

x8

x8

x8

x8

x8

52-20

19-19

10-21

08-17

02-21

C (SK Hynix)

2

3

2

3

16

24

16

24

16Gb

4Gb

4Gb

8Gb

A

B

C

D

x8

x8

x8

x8

51-20

02-21

48-20

3 Major Manufacturers

58

60 of 368

Key Takeaway from RowHammer Analysis

Reducing wordline voltage reduces RowHammer vulnerability

  • 15.2% (66.9% max) fewer bit flips occur
  • Activation count at which the first bit flip occurs increases by 7.4% (85.8% max)

Takeaway 1

59

61 of 368

Wordline Voltage’s Effect on RowHammer

Wordline Voltage: VPP (V)

1.2

1.0

0.8

0.6

0.4

0.2

1.5 1.7 1.9 2.1 2.3 2.5

OBSERVATION 1

Fewer DRAM cells experience RowHammer bit flips�under reduced wordline voltage

BER reduces �as VPP reduces

Bit Error Rate

(Normalized to VPP=2.5V)

Wordline Voltage: VPP (V)

1.2

1.0

0.8

0.6

0.4

0.2

1.5 1.7 1.9 2.1 2.3 2.5

Different DRAM modules

Lower is better

Variation across DRAM rows

60

62 of 368

Wordline Voltage’s Effect on RowHammer

Wordline Voltage: VPP (V)

1.5 1.7 1.9 2.1 2.3 2.5

OBSERVATION 2

Reducing wordline voltage can cause more DRAM cells �to experience bit flips in a small fraction of rows (15.4%)

Bit error rate increases

Bit Error Rate

(Normalized to VPP=2.5V)

1.2

1.0

0.8

0.6

0.4

0.2

Lower is better

61

63 of 368

Wordline Voltage’s Effect on RowHammer

Wordline Voltage: VPP (V)

1.5 1.7 1.9 2.1 2.3 2.5

1.3 1.6 1.9 2.2 2.5

1.5 1.7 1.9 2.1 2.3 2.5

1.2

1.0

0.8

0.6

0.4

0.2

OBSERVATION 1

Fewer DRAM cells experience RowHammer bit flips�under reduced wordline voltage

OBSERVATION 2

Reducing wordline voltage can cause more DRAM cells �to experience bit flips in a small fraction of rows (15.4%)

Bit Error Rate

(Normalized to VPP=2.5V)

Mfr. A

Mfr. B

Mfr. C

62

64 of 368

Wordline Voltage’s Effect on RowHammer

Wordline Voltage: VPP (V)

Minimum Activation Count to Induce the First Bit Flip

(Normalized to VPP=2.5V)

2.0

1.8

1.6

1.4

1.2

1.0

0.8

1.5 1.7 1.9 2.1 2.3 2.5

OBSERVATION 4

The first bit flip occurs at higher activation counts

as wordline voltage reduces

Min. activation count

to induce the first bit flip

increases as VPP reduces

Higher is better

Different DRAM modules

Variation across DRAM rows

Minimum Activation Count to Induce the First Bit Flip (Normalized to VPP=2.5V)

2.0

1.8

1.6

1.4

1.2

1.0

0.8

63

65 of 368

Wordline Voltage’s Effect on RowHammer

OBSERVATION 5

For a small fraction of rows (14.2%), the first bit flip occurs �at a smaller activation count as wordline voltage reduces

Min. activation count

to induce the first bit flip

reduces

Wordline Voltage: VPP (V)

1.5 1.7 1.9 2.1 2.3 2.5

Higher is better

Minimum Activation Count to Induce the First Bit Flip (Normalized to VPP=2.5V)

2.0

1.8

1.6

1.4

1.2

1.0

0.8

64

66 of 368

Wordline Voltage’s Effect on RowHammer

Wordline Voltage: VPP (V)

1.5 1.7 1.9 2.1 2.3 2.5

1.3 1.6 1.9 2.2 2.5

1.5 1.7 1.9 2.1 2.3 2.5

2.0

1.8

1.6

1.4

1.2

1.0

0.8

OBSERVATION 4

The first bit flip occurs at higher activation counts

as wordline voltage reduces

Minimum Activation Count �to Induce the First Bit Flip

(Normalized to VPP=2.5V)

OBSERVATION 5

For a small fraction of rows (14.2%), the first bit flip occurs �at a smaller activation count as wordline voltage reduces

Mfr. A

Mfr. B

Mfr. C

65

67 of 368

Also in the Paper

Wordline voltage’s effect on RowHammer vulnerability

varies across different DRAM rows and manufacturers

OBSERVATION 3

Change in bit error rate �varies across different DRAM rows and manufacturers

OBSERVATION 6

Change in the activation count at which the first bit flip occurs varies across different DRAM rows and manufacturers

66

68 of 368

Also in the Paper

OBSERVATION 6

HCfirst increase with reduced wordline voltage varies �across different DRAM rows and manufacturers

OBSERVATION 3

BER reduction with reduced wordline voltage varies �across different DRAM rows and manufacturers

Wordline voltage’s effect on RowHammer vulnerability varies �across different DRAM rows and manufacturers

67

69 of 368

Key Takeaway from RowHammer Analysis

Reducing wordline voltage reduces RowHammer vulnerability

  • 15.2% (66.9% max) fewer bit flips occur
  • Activation count at which the first bit flip occurs increases by 7.4% (85.8% max)

Takeaway 1

68

70 of 368

Our Hypothesis

Our Hypothesis

Reducing wordline voltage

can reduce RowHammer vulnerability

without significantly affecting reliable DRAM operation

time

Wordline

Voltage

Reduction in Disturbance

Aggressor Row

Victim Row

Aggressor Row

Victim Row

Wordline

Bitline

Wordline

Bitline

Weaker Channel�in Access Transistor

Strong Channel

Weaker Channel

time

Wordline

Voltage

69

71 of 368

Key Takeaways from DRAM Operation Analysis

208/272 tested DRAM chips reliably operate using nominal timing parameters �due to the built-in safety margins (guardbands)

64/272 tested DRAM chips can reliably operate �with longer row activation latency (24ns/15ns for 48/16 chips)

Takeaway 2

216/272 tested DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

56/272 tested DRAM chips can reliably operate �using single-error-correction ECC or 2x the refresh rate for only 16.4% of rows

Takeaway 3

216/272 tested DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

56/272 tested DRAM chips can reliably operate �using single-error-correction ECC or 2x the refresh rate for only 16.4% of rows

Takeaway 3

70

72 of 368

Wordline Voltage’s Effect on Row Activation Latency

Wordline Voltage: VPP (V)

Row Activation

Latency (tRCD)

25

20

15

10

5

1.5 1.7 1.9 2.1 2.3 2.5

OBSERVATION 7

Row activation latency increases with reduced wordline voltage

208 out of 272 DRAM chips complete row activation�before the nominal activation latency

Row activation latency�increases as VPP reduces

Nominal activation latency�has a significant guardband

Different DRAM modules

Variation across DRAM rows

71

73 of 368

Wordline Voltage’s Effect on Row Activation Latency

Wordline Voltage: VPP (V)

25

20

15

10

5

OBSERVATION 7

Row activation latency increases with reduced wordline voltage

208 out of 272 DRAM chips complete row activation�before the nominal activation latency

1.5 1.7 1.9 2.1 2.3 2.5

1.3 1.6 1.9 2.2 2.5

1.5 1.7 1.9 2.1 2.3 2.5

Row Activation

Latency (tRCD)

Nom. tRCD

Nom. tRCD

Nom. tRCD

Mfr. A

Mfr. B

Mfr. C

72

74 of 368

Wordline Voltage’s Effect on Row Activation Latency

Wordline Voltage: VPP (V)

25

20

15

10

5

48 DRAM chips from Mfr A. reliably work with a row activation latency of 24 ns

16 DRAM chips from Mfr. B reliably work with a row activation latency of 15 ns

All DRAM chips from Mfr. C reliably work using the nominal latency of 13.5ns

1.5 1.7 1.9 2.1 2.3 2.5

1.3 1.6 1.9 2.2 2.5

1.5 1.7 1.9 2.1 2.3 2.5

Row Activation

Latency (tRCD)

Nom. tRCD

Nom. tRCD

Nom. tRCD

Mfr. A

Mfr. B

Mfr. C

73

75 of 368

SPICE Simulation Methodology

  • Insights into wordline voltage’s affect on DRAM operation
  • 22 nm transistor model
  • Monte-Carlo analysis with 5% variation and 10K iterations

74

76 of 368

A Closer Look into Row Activation Latency

  • Row activation completes when the bitline voltage reaches a threshold (VTH)
  • Reduced wordline voltage leads to a weaker channel in the access transistor

Bitline voltage takes longer to reach VTH

Capacitor

Bitline

Wordline

Access transistor

Weaker

channel

OBSERVATION 8

Row activation latency increases

with reduced wordline voltage

Reducing

Wordline

Voltage

75

77 of 368

Variation in Row Activation Latency

When wordline voltage is reduced from 2.5V to 1.9V:

    • The worst-case row activation latency is still lower than nominal value
    • The guardband reduces from 4.4% to 1.5% �as the worst-case latency increases from 12.9ns to 13.3ns

The SPICE simulation results are not identical with real chip observations

because the SPICE model cannot simulate a real DRAM chip’s exact behavior �without proprietary design and manufacturing information

Worst case tRCDmin when VPP = 2.5V

Nominal row activation latency

Worst case tRCDmin when VPP = 1.9V

OBSERVATION 9

SPICE simulation results agree with our observationsbased on experiments on real chips

76

78 of 368

Also in the Paper

Wordline voltage’s effect on DRAM charge restoration process

OBSERVATION 10

A DRAM cell’s capacitor voltage can saturateat a lower voltage level when wordline voltage is reduced

OBSERVATION 11

A DRAM cell’s charge restoration latency (tRASmin) �can increase with reduced wordline voltage

77

79 of 368

Also in the Paper

Wordline voltage’s effect on DRAM charge restoration process

OBSERVATION 10

A DRAM cell’s capacitor voltage can saturateat a lower voltage level when wordline voltage is reduced

OBSERVATION 11

A DRAM cell’s charge restoration latency (tRASmin) �can increase with reduced wordline voltage

78

80 of 368

Key Takeaways from DRAM Operation Analysis

208/272 tested DRAM chips reliably operate using nominal timing parameters �due to the built-in safety margins (guardbands)

64/272 tested DRAM chips can reliably operate �with longer row activation latency (24ns/15ns for 48/16 chips)

Takeaway 2

216/272 tested DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

56/272 tested DRAM chips can reliably operate �using single-error-correction ECC or 2x the refresh rate for only 16.4% of rows

Takeaway 3

79

81 of 368

Wordline Voltage’s Effect on DRAM Refresh

Refresh Window (ms)

Data Retention

Bit Error Rate

0.05

0.04

0.03

0.02

0.01

0

OBSERVATION 12

More DRAM cells tend to experience data retention bit flips

when wordline voltage is reduced

Data retention BER increases

as wordline voltage reduces

OBSERVATION 13

216 out of 272 DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

64 256 1K 4K 16K

Different colors represent different wordline voltage levels

80

82 of 368

Wordline Voltage’s Effect on DRAM Refresh

OBSERVATION 12

More DRAM cells tend to experience data retention bit flips

when wordline voltage is reduced

OBSERVATION 13

216 out of 272 DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

Wordline Voltage’s Effect on DRAM Refresh

81

83 of 368

Spatial Distribution of Data Retention Bitflips

  • There are no 64-bit words with more than one bit flip

  • A small fraction of DRAM rows contain erroneous words

OBSERVATION 14

Data retention errors can be avoided using single error correcting codes at the smallest refresh window that yields non-zero bit error rate

Fraction of DRAM Rows

Number of 64-bit data words with one bit flip

82

84 of 368

Spatial Distribution of Data Retention Bitflips

  • There are no 64-bit words with more than one bit flip

  • A small fraction of DRAM rows contain erroneous words

OBSERVATION 15

Only a small fraction (16.4%/5.0%) of DRAM rows have erroneous words at the smallest refresh rate (64ms/128ms) that yields non-zero bit error rate

OBSERVATION 14

Data retention errors can be avoided using single error correcting codes at the smallest refresh window that yields non-zero bit error rate

83

85 of 368

Key Takeaways from DRAM Operation Analysis

208/272 tested DRAM chips reliably operate using nominal timing parameters �due to the built-in safety margins (guardbands)

64/272 tested DRAM chips can reliably operate �with longer row activation latency (24ns/15ns for 48/16 chips)

Takeaway 2

216/272 tested DRAM chips reliably operate using nominal refresh ratedue to the built-in safety margins (guardbands)

56/272 tested DRAM chips can reliably operate �using single-error-correction ECC or 2x the refresh rate for only 16.4% of rows

Takeaway 3

84

86 of 368

Takeaways from Voltage Study

  1. Reduces RowHammer vulnerability
      • Bit error rate caused by a RowHammer attack reduces by 15.2% (66.9% max)
      • A row needs to be activated 7.4% more times (85.8% max) to induce the first bit flip

  • Increases row activation latency
      • More than 76% of the tested DRAM chips reliably operate using nominal timing parameters
      • Remaining 24% reliably operate with increased (up to 24ns) row activation latency

  • Reduces data retention time
      • 80% of the tested DRAM chips reliably operate using nominal refresh rate
      • Remaining 20% reliably operate by
        • Using single error correcting codes
        • Doubling the refresh rate for a small fraction (16.4%) of DRAM rows

Reducing wordline voltage can reduce RowHammer vulnerability without significantly affecting reliable DRAM operation

85

87 of 368

Contributions to Understanding RowHammer

86

88 of 368

A Deeper Look into RowHammer’s Characteristics

87

Voltage

Victim cell’s

physical�location

Memory�access

patterns

Temperature

89 of 368

Implications on Attacks and Defenses

88

Our observations can be leveraged to craft

more effective RowHammer attacks

Our observations can be leveraged to design �more effective and efficient RowHammer defenses

90 of 368

Attack Improvement 1: �Temperature-Dependent Trigger

Identify abnormal increase �in temperature to attack a data center during its peak hours

Precisely measure the temperature �to trigger an attack exactly at the desired temperature

89

Temperature

70 °C

76.6% 

of the cells*

*Example fraction values from Mfr. C 

0.4% 

of the cells*

Temperature

70 °C

Temperature

70 °C

0.4% 

of the cells*

1.

2.

91 of 368

Attack Improvement 1: �Temperature-Dependent Trigger

Identify abnormal increase �in temperature to attack a data center during its peak hours

Precisely measure the temperature �to trigger an attack exactly at the desired temperature

90

Temperature

70 °C

76.6% 

of the cells*

*Example fraction values from Mfr. C 

0.4% 

of the cells*

Temperature

70 °C

Temperature

70 °C

0.4% 

of the cells*

1.

2.

92 of 368

Attack Improvement 2: �Bypassing Defenses with Aggressor Row Active Time

91

Reduces the minimum activation count to induce a bit flip by 36%

Bypasses defenses that do not account for this reduction

Time

Row A is active

Row B is active

Row A is active

Activating aggressor rows as frequently as possible:

Time

Row A is active

Row B is active

Keeping the aggressor rows active for a longer time:

36% reduction �in HCfirst

93 of 368

Defense Improvement 1:�Spatial Variation–Aware Read Disturbance Solutions

  • Significant variation in read disturbance vulnerabilityacross DRAM rows
  • Key Idea: To dynamically adapt the aggressiveness of existing solutions to the victim row’s read disturbance vulnerability
  • Key Results:

92

Minimum Hammer Count to Induce the First Bitflip

Weighted Speedup

(Norm. to No Mitigation Baseline)

94 of 368

Defense Improvement 1:�Spatial Variation–Aware Read Disturbance Solutions

  • Significant variation in read disturbance vulnerabilityacross DRAM rows
  • Key Idea: To dynamically adapt the aggressiveness of existing solutions to the victim row’s read disturbance vulnerability
  • Key Results:

93

Minimum Hammer Count to Induce the First Bitflip

Weighted Speedup

(Norm. to No Mitigation Baseline)

Abdullah Giray Yağlıkçı, Yahya Can Tuğrul, Geraldo F. Oliveira, Ismail Emir Yuksel, Ataberk Olgun, Haocong Luo, and Onur Mutlu, "Spatial Variation-Aware Read Disturbance Defenses: Experimental Analysis of Real DRAM Chips and Implications on Future Solutions,” to appear in HPCA, 2024.

95 of 368

More Defense Implications in the Paper

  • Leveraging the similarity across subarrays in a DRAM module �can reduce the module’s profiling time for RowHammer errors

  • Monitoring and limiting the aggressor row active time from the memory controller can reduce the RowHammer vulnerability and make defenses more efficient

  • ECC schemes can target the non-uniform bit error distribution caused by design-induced variation across DRAM columns

  • Cooling DRAM chips can reduce overall bit error rate

94

96 of 368

More Defense Implications in the Paper

  • Leveraging the similarity across subarrays in a DRAM module �to speed up profiling the module for RowHammer errors

  • Monitoring and limiting the aggressor row active time from the memory controller can reduce the RowHammer vulnerability and the defense cost

  • An ECC scheme can target the non-uniform bit error distribution caused by design-induced variation across DRAM columns

  • Cooling DRAM chips can reduce overall bit error rate

97 of 368

Conclusion

  • Experimental study: 272 DRAM chips from four major manufacturers

  • Key Results: We provide takeaways based on novel observations

A RowHammer bit flip is more likely to occur

    • in a bounded range of temperature
    • if the aggressor row is active for longer time
    • in certain physical regions of the DRAM module under attack
    • when the aggressor row is activated using a higher voltage

  • Conclusion: Our novel observations can inspire and aid future work
    • Craft more effective attacks
    • Design more effective and efficient defenses

98 of 368

Future Research

  • The effect of aging

  • Preliminary data on�aging via �68-day of �hammering

97

Min. Hammer Count to Induce Read Disturbance Bitflips�HCfirst (before aging)

Min. Hammer Count to Induce Read Disturbance Bitflips�HCfirst (before aging)

Aging can lead to read disturbance bitflips �at fewer hammers

99 of 368

Preliminary Aging Analysis

  • Significant variation in read disturbance vulnerabilityacross DRAM rows
  • Key Idea: To dynamically adapt the aggressiveness of existing solutions to the victim row’s read disturbance vulnerability
  • Key Results:

98

Minimum Hammer Count to Induce the First Bitflip

Weighted Speedup

(Norm. to No Mitigation Baseline)

Abdullah Giray Yağlıkçı, Yahya Can Tuğrul, Geraldo F. Oliveira, Ismail Emir Yuksel, Ataberk Olgun, Haocong Luo, and Onur Mutlu, "Spatial Variation-Aware Read Disturbance Defenses: Experimental Analysis of Real DRAM Chips and Implications on Future Solutions,” to appear in HPCA, 2024.

100 of 368

Future Research

  • The effect of aging

  • Interactions across different error mechanisms

99

  • RowHammer
  • RowPress
  • Data retention time errors
  • Variable retention time

101 of 368

Future Research

  • The effect of aging

  • Interactions across different error mechanisms

  • What is the worst-case?
    • Temperature
    • Data pattern
    • Memory access pattern
    • Spatial variation
    • Voltage

100

What is the worst-case considering all these sensitivities?

What is the minimum hammer count to induce a read disturbance bitflip?

102 of 368

Future Research

  • The effect of aging

  • Interactions across different error mechanisms

  • What is the worst-case?

101

How reliable are our DRAM chips?

How reliable will our DRAM chips be tomorrow?

103 of 368

Thesis Statement

102

Building a detailed understanding of�DRAM read disturbance

and

leveraging insights into

modern DRAM chips and memory controllers

enable researchers and engineers

to mitigate DRAM read disturbance

efficiently and scalably

104 of 368

Solutions to DRAM Read Disturbance

103

105 of 368

A Deeper Look into�RowHammer’s Characteristics �in Real Modern DRAM Chips

Abdullah Giray Yaglikci

Ph.D. Candidate

SAFARI Live Seminar

17 January 2024

106 of 368

A Deeper Look into�RowHammer’s Characteristics �in Real Modern DRAM Chips

Abdullah Giray Yaglikci

Ph.D. Candidate

SAFARI Live Seminar

17 January 2024

Backup Slides

107 of 368

A Deeper Look into RowHammer’s Sensitivities� Experimental Analysis of Real DRAM Chips�and Implications on Future Attacks and Defenses

Lois Orosa Abdullah Giray Yağlıkçı

Haocong Luo Ataberk Olgun Jisung Park

Hasan Hassan Minesh Patel Jeremie S. Kim Onur Mutlu

108 of 368

DRAM Organization

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

Row Buffer

Bitline

Wordline

DRAM Cell

DRAM Row

109 of 368

DRAM Organization and Operation

DRAM Subarray

Bitline

Wordline

DRAM Cell

DRAM Cell

Row Buffer

  1. Row Activation: Fetch the row’s content into the row buffer 

  • Column AccessRead/Write a column in the row buffer

  • PrechargeDisconnect the row from the row buffer

Wordline

Capacitor

Access transistor

Bitline

charge

leakage

paths

Refresh: Restores the capacitor voltagewith a time period called refresh window

I/O Circuitry

110 of 368

Executive Summary

  • Motivation:
    • Denser DRAM chips are more vulnerable to RowHammer
    • Understanding RowHammer enables designing effective and efficient solutions, but no rigorous study demonstrates how vulnerability varies under different conditions
  • Goal: Provide insights into three fundamental properties of RowHammer that can be leveraged to design more effective and efficient attacks and defenses
    1. DRAM chip temperature
    2. The time that an aggressor row stays active
    3. Victim DRAM cell’s physical location
  • Experimental study: 272 DRAM chips from four major manufacturers
  • Key Results: We provide 6 takeaways from 16 novel observations

A RowHammer bit flip is more likely to occur

    • in a bounded range of temperature
    • if the aggressor row is active for longer time
    • in certain physical regions of the DRAM module under attack
  • Conclusion: Our novel observations can inspire and aid future work
    • Craft more effective attacks
    • Design more effective and efficient defenses

111 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

112 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

113 of 368

Motivation 

  • Defenses are becoming prohibitively expensive
  • A deeper understanding is needed
  • No rigorous experimental study on fundamental properties of RowHammer to find effective and efficient solutions

It is critical to gain insights into RowHammerand its fundamental properties

Minimum Activation Count to Observe a Bit Flip

More than 10X reduction

2020

2014

Manufactured Year

114 of 368

Our Goal

Provide insights into three fundamental properties

Temperature

Aggressor Row

Active Time

Victim DRAM Cell’s Physical Location

To find effective and efficient attacks and defenses

115 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

116 of 368

DRAM Testing Infrastructures

Two separate testing infrastructures

    • DDR3: FPGA-based SoftMC (Xilinx ML605)
    • DDR4: FPGA-based SoftMC (Xilinx Virtex UltraScale+ XCU200)

FPGA (w/SoftMC)

DRAM Module �and Heater

Temperature

Controller

Fine-grained control over DRAM commands,

timing parameters and temperature (±0.1°C )

DDR4 DRAM Testing Infrastructure

Host Machine

(via PCI-e)

117 of 368

DRAM Testing Methodology

To characterize our DRAM chips at worst-case conditions:

  1. Prevent sources of interference during core test loop
    • No DRAM refresh: to avoid refreshing victim row
    • No DRAM calibration events: to minimize variation in test timing
    • No RowHammer mitigation mechanisms: to observe circuit-level effects
    • Test for less than a refresh window (32ms) to avoid retention failures

  • Worst-case access sequence
  • We use worst-case access sequence based on prior works’ observations
  • For each row, repeatedly access the two physically-adjacent rows �as fast as possible

118 of 368

DRAM Chips Tested

Mfr.

DDR4 DIMMs

DDR3 SODIMMs

# Chips

Density

Die

Org.

A (Micron)

9

1

144 (8)

8Gb (4Gb)

B (P)

x4 (x8)

B (Samsung)

4

1

32 (8)

4Gb (4Gb)

F (Q)

x8 (x8)

C (SK Hynix)

5

1

40 (8)

4Gb (4Gb)

B (B)

x8 (x8)

D (Nanya)

4

-

32 (-)

8Gb (-)

C (-)

x8 (-)

272 DRAM Chips in total

Two DRAM standards

4 Major Manufacturers

119 of 368

DRAM Chips Tested

Mfr.

DDR4 DIMMs

DDR3 SODIMMs

# Chips

Density

Die

Org.

A (Micron)

9

1

144 (8)

8Gb (4Gb)

B (P)

x4 (x8)

B (Samsung)

4

1

32 (8)

4Gb (4Gb)

F (Q)

x8 (x8)

C (SK Hynix)

5

1

40 (8)

4Gb (4Gb)

B (B)

x8 (x8)

D (Nanya)

4

-

32 (-)

8Gb (-)

C (-)

x8 (-)

  • 272 total DRAM chips tested
  • Four major DRAM manufacturers
  • DDR3 and DDR4 DRAM standards
  • Different densities, die revisions and chip organizations

120 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

121 of 368

To ensure that a DRAM cell is not vulnerable to RowHammer,

we must characterize the cell at all operating temperatures

Key Takeaway 1

RowHammer vulnerability tends to worsen �as DRAM temperature increases

However, individual DRAM rows can exhibit behavior different from the dominant trend 

Key Takeaway 2

Key Takeaways from Temperature Analysis

122 of 368

Also in the Paper

The minimum activation count at which a victim row experiences a bit flip (HCfirst) when temperature changes:

KEY OBSERVATION 5

DRAM rows can show either higher or lower HCfirst

when temperature increases

KEY OBSERVATION 6

HCfirst tends to generally decrease 

as temperature change (ΔT) increases 

KEY OBSERVATION 7

The HCfirst change (ΔHCfirst) tends to be larger 

as temperature change (ΔT) increases

123 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

124 of 368

As an aggressor row stays active longer,

victim DRAM cells become more vulnerable to RowHammer

Key Takeaway 3

RowHammer vulnerability of victim cells decreases

when the bank is precharged for a longer time  

Key Takeaway 4

Key Takeaways�from Aggressor Row Active Time Analysis

125 of 368

Also in the Paper

The variation in these behaviors across DRAM rows and �the effect of increasing bank precharged time

KEY OBSERVATION 9

As the aggressor row stays active longer, the RowHammer vulnerability consistently worsens across tested DRAM rows

KEY OBSERVATION 10

As the bank stays precharged longer, fewer DRAM cells experience RowHammer bit flips and they experience RowHammer bit flips at higher activation counts

KEY OBSERVATION 11

As the bank stays precharged longer, the RowHammer vulnerability consistently reduces across tested DRAM rows

126 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

127 of 368

Key Takeaways �from Spatial Variation Analysis

RowHammer vulnerability significantly varies

across DRAM rows and columns due to design-induced

and manufacturing-process-induced variation

Key Takeaway 5

The distribution of the minimum activation count to observe bit flips (HCfirst) exhibits a diverse set of values in a subarray

but similar values across subarrays in the same DRAM module

Key Takeaway 6

128 of 368

Also in the Paper

The minimum activation count at which a victim row experiences a bit flip (HCfirst) across rows in a subarray and across subarrays in a module:

KEY OBSERVATION 15

The most vulnerable DRAM row in a subarray

is significantly more vulnerable

than the other rows in the subarray

KEY OBSERVATION 16

HCfirst distributions of subarrays within a DRAM module

are significantly more similar to each other

than those of subarrays from different modules

129 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

130 of 368

Our observations can be leveraged to craft

more effective RowHammer attacks

Our observations can be leveraged to design �more effective and efficient RowHammer defenses

Implications on Attacks and Defenses

131 of 368

Attack Improvement 1: �Making DRAM Cells More Vulnerable

An attacker can manipulate temperature to make the cells that store sensitive data more vulnerable

130

Vulnerable Temperature Range

Temperature

no bit flips

no bit flips

45°C

55°C

65°C

75°C

50°C

70°C

DRAM cells are vulnerable in a bounded temperature range

Heating up�chip temperature

Cooling down�chip temperature

132 of 368

Defense Improvement 1:�Spatial Variation–Aware Read Disturbance Solutions

131

  • Example 1: Leveraging the variation across DRAM rows

  • Example 2: Leveraging the variation with temperature
    • A DRAM cell experiences bit flips within a bounded temperature range

    • A row can be disabled within the row’s vulnerable temperature range

Vulnerable Temperature Range

Temperature

no bit flips

no bit flips

Disable RowA

Temperature

Disable RowB

80% area reduction�for Graphene [Park+, MICRO'20]

33% area reduction �for BlockHammer [Yağlıkçı+, HPCA'21]

90%

10%

Breakdown �of DRAM Rows

 

HCfirst

Aggressiveness can be reduced:

133 of 368

Attack Improvement 1: �Making DRAM Cells More Vulnerable

An attacker can manipulate temperature to make the cells that store sensitive data more vulnerable

Vulnerable Temperature Range

Temperature

no bit flips

no bit flips

45°C

55°C

65°C

75°C

50°C

70°C

DRAM cells are vulnerable in a bounded temperature range

Heating up�chip temperature

Cooling down�chip temperature

134 of 368

Identify abnormal increase �in temperature to attack a data center during its peak hours

Precisely measure the temperature �to trigger an attack exactly at the desired temperature

Temperature

70 °C

76.6% 

of the cells*

*Example fraction values from Mfr. C 

0.4% 

of the cells*

Temperature

70 °C

Temperature

70 °C

0.4% 

of the cells*

1.

2.

Attack Improvement 2: �Temperature-Dependent Trigger

135 of 368

Reduces the minimum activation count to induce a bit flip by 36%

Bypasses defenses that do not account for this reduction

Time

Row A is active

Row B is active

Row A is active

Activating aggressor rows as frequently as possible:

Time

Row A is active

Row B is active

Keeping the aggressor rows active for a longer time:

36% reduction �in HCfirst

Attack Improvement 3: �Bypassing Defenses with Aggressor Row Active Time

136 of 368

Defense Improvements

  • Example 1: Leveraging the variation across DRAM rows

  • Example 2: Leveraging the variation with temperature
    • A DRAM cell experiences bit flips within a bounded temperature range

    • A row can be disabled within the row’s vulnerable temperature range

Vulnerable Temperature Range

Temperature

no bit flips

no bit flips

Disable RowA

Temperature

Disable RowB

80% area reduction�for Graphene [Park+, MICRO'20]

33% area reduction �for BlockHammer [Yağlıkçı+, HPCA'21]

90%

10%

Breakdown �of DRAM Rows

 

HCfirst

Aggressiveness can be reduced:

137 of 368

More Defense Implications in the Paper

  • Leveraging the similarity across subarrays in a DRAM module �can reduce the module’s profiling time for RowHammer errors

  • Monitoring and limiting the aggressor row active time from the memory controller can reduce the RowHammer vulnerability and make defenses more efficient

  • ECC schemes can target the non-uniform bit error distribution caused by design-induced variation across DRAM columns

  • Cooling DRAM chips can reduce overall bit error rate

138 of 368

More Defense Implications in the Paper

  • Leveraging the similarity across subarrays in a DRAM module �to speed up profiling the module for RowHammer errors

  • Monitoring and limiting the aggressor row active time from the memory controller can reduce the RowHammer vulnerability and the defense cost

  • An ECC scheme can target the non-uniform bit error distribution caused by design-induced variation across DRAM columns

  • Cooling DRAM chips can reduce overall bit error rate

139 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

Temperature Analysis

Aggressor Row Active Time Analysis

Spatial Variation Analysis

Implications on Attacks and Defenses

140 of 368

Conclusion

  • Motivation:
    • Denser DRAM chips are more vulnerable to RowHammer
    • Understanding RowHammer enables designing effective and efficient solutions, but no rigorous study demonstrates how vulnerability varies under different conditions
  • Goal: Provide insights into three fundamental properties of RowHammer that can be leveraged to design more effective and efficient attacks and defenses
    1. DRAM chip temperature
    2. The time that an aggressor row stays active
    3. Victim DRAM cell’s physical location
  • Experimental study: 272 DRAM chips from four major manufacturers
  • Key Results: We provide 6 takeaways from 16 novel observations

A RowHammer bit flip is more likely to occur

    • in a bounded range of temperature
    • if the aggressor row is active for longer time
    • in certain physical regions of the DRAM module under attack
  • Conclusion: Our novel observations can inspire and aid future work
    • Craft more effective attacks
    • Design more effective and efficient defenses

141 of 368

A Deeper Look into RowHammer’s Sensitivities� Experimental Analysis of Real DRAM Chips�and Implications on Future Attacks and Defenses

Lois Orosa Abdullah Giray Yağlıkçı

Haocong Luo Ataberk Olgun Jisung Park

Hasan Hassan Minesh Patel Jeremie S. Kim Onur Mutlu

142 of 368

A Deeper Look into RowHammer’s Sensitivities� Experimental Analysis of Real DRAM Chips�and Implications on Future Attacks and Defenses

Lois Orosa Abdullah Giray Yağlıkçı

Haocong Luo Ataberk Olgun Jisung Park

Hasan Hassan Minesh Patel Jeremie S. Kim Onur Mutlu

BACKUP SLIDES

143 of 368

Distribution of the Change in HCfirst

Percentage Change in 

Minimum Activation Count 

to Observe a Bit Flip (HCfirst)

Rows Ordered by HCFirst change

More Vulnerable

Less Vulnerable

144 of 368

Distribution of the Change in HCfirst

OBSERVATION 5

DRAM rows can show either higher or lower HCfirst

when temperature increases

145 of 368

Distribution of the Change in HCfirst

OBSERVATION 6

HCfirst tends to generally decrease 

as temperature change (ΔT) increases 

146 of 368

Distribution of the Change in HCfirst

OBSERVATION 7

The HCfirst change (ΔHCfirst) tends to be larger 

as temperature change (ΔT) increases

147 of 368

Circuit-Level Justification �Temperature Analysis

We hypothesize that our observations are caused by the non-monotonic behavior of charge trapping characteristics of DRAM cells

3D TCAD model [Yang+, EDL'19]

 HCfirst decreases as temperature increases, until a temperature inflection point where HCfirst starts to increase as temperature increases

A cell is more vulnerable to RowHammer at temperatures close to its temperature inflection point

148 of 368

Increasing Aggressor Row Active Time (tAggOn)

Bit Error Rate

HCfirst

** Please refer to the full paper for coefficient of variation-based (CV) analysis

 

We analyze how the coefficient of variation* values for BER and HCfirst change�across rows when the aggressor row stays active longer

OBSERVATION 8

As the aggressor row stays active longer,

more DRAM cells experience RowHammer bit flips and 

they experience  RowHammer bit flips at lower hammer counts

OBSERVATION 9

RowHammer vulnerability consistently worsens

as tAggOn increases across all tested DRAM rows**

149 of 368

Bit Error Rate

HCfirst

** Please refer to the full paper for coefficient of variation-based (CV) analysis

 

Increasing Bank Precharged Time (tAggOff)

We repeat the coefficient of variation* analysis  for BER and HCfirst change�across rows when the bank stays precharged longer

OBSERVATION 10

As the bank stays precharged longer, fewer DRAM cells

experience RowHammer bit flips and  they experience RowHammer 

bit flips at higher hammer counts

OBSERVATION 11

RowHammer vulnerability consistently reduces 

as tAggOff increases across all tested DRAM rows**

150 of 368

Circuit-Level Justification �Aggressor Row Active Time Analysis

Two possible circuit level justifications for RowHammer bit flips:

  1. Electron injection in the victim cell [Walker+, TED'21][Yang+, TDMR'16]
  2. Wordline-to-wordline cross-talk noise between aggressor and victim rows that occurs when the aggressor row is being activated [Ryu+, IEDM'17][Walker+, TED'21]

We hypothesize that increasing the aggressor row’s active time (𝑡𝐴𝑔𝑔𝑂𝑛) has a larger impact on exacerbating electron injection to the victim cell, compared to the reduction in cross-talk noise due to lower activation frequency. Thus, RowHammer vulnerability worsens when 𝑡𝐴𝑔𝑔𝑂𝑛 increases

Increasing a bank’s precharged time (𝑡𝐴𝑔𝑔𝑂ff) decreases RowHammer vulnerability  because longer 𝑡𝐴𝑔𝑔𝑂ff reduces the effect of cross-talk noise without affecting electron injection (since 𝑡𝐴𝑔𝑔𝑂n is unchanged). 

151 of 368

Spatial Variation across Rows

Minimum Activation Count

to Observe a Bit Flip (HCfirst)

DRAM Rows (sorted by reducing HCfirst)

HCfirst worst-to-best ratio in this range: P100/P90

OBSERVATION 12

A small fraction of DRAM rows

are significantly more vulnerable to RowHammer

than the vast majority of the rows

Hcfirst Worst-to-Best Ratio

Manufacturers

152 of 368

Spatial Variation across Columns

We analyze BER variation across DRAM columns

OBSERVATION 13

Certain columns are significantly more vulnerable

 to RowHammer than other columns

153 of 368

Spatial Variation across Subarrays

OBSERVATION 15

The most vulnerable DRAM row in a subarray

is significantly more vulnerable

than the other rows in the subarray

154 of 368

Spatial Variation across Subarrays

* We analyze the similarity between Hcfirst distributions of different subarrays based on Bhattacharyya distance in the paper

OBSERVATION 16

HCfirst distributions of subarrays within a DRAM module

are significantly more similar to each other

than those of subarrays from different modules

155 of 368

Spatial Variation across Subarrays�Bhattacharyya Distance Analysis

HCfirst distributions of subarrays within a DRAM module exhibit significantly more similarity to each other

than HCfirst distributions of subarrays from different modules

Identical

Different

Different

156 of 368

Circuit-Level Justification �Spatial  Variation Analysis

Variation across rows, columns, and chips:

Manufacturing process variation causes differences in cell size and bitline/wordline impedance values, which introduces variation in cell reliability characteristics within and across DRAM chips

Design-induced variation causes cell access latency characteristics to vary deterministically based on a cell’s physical location in the memory chip (e.g., its proximity to I/O circuitry)

Similarity across subarrays:

Cell’s access latency is dominated by its physical distance from the peripheral structures (e.g., local senseamplifiers and wordline drivers) within the subarray, causing corresponding cells in different subarrays to exhibit similar access latency characteristics

157 of 368

Example Attack Improvements

  • The attacker can reduce HCfirst (by 36%) by performing (10-15) additional READ commands targeting the aggressor row to bypass RowHammer defenses that do not account for this reduction

Aggressor Row Active Time

These observations can be leveraged 

to craft more effective RowHammer attacks

158 of 368

DRAM Operation

DRAM Subarray

Bitline

Wordline

DRAM Cell

Row Buffer

Row Activation: Fetching the row’s content �into the row buffer

1

Column Access: Read/Write a column �in the row buffer

2

I/O Circuitry

Precharge: Disconnect the row from�the row buffer

3

DRAM Cell

Wordline

Capacitor

Access transistor

Bitline

charge

leakage

paths

Vmin

REF

Time

Capacitor Voltage

100%

0%

Refresh Window

REF

REF

159 of 368

Example Attack Improvements

  • Example 1: Temperature-dependent trigger

An attacker can measure DRAM chip’s current temperature

      • To identify when the DRAM chip is at a certain temperature
        • To precisely measure temperature for covert channels
      • To identify abnormal operating conditions (e.g., warmer than usual)
        • To attack a data center during its peak hours
        • To spy on an end-user’s behavioral patterns
  • Example 2: Manipulating temperature to make chips more vulnerable

An attacker can heat up or cool down a DRAM chip to a temperature level where the victim cells are vulnerable

Lower Bound (°C)

Upper Bound (°C)

0.4% of DRAM cells exhibit bit flips only at 70°C

76.6% of DRAM cells exhibit bit flips above 70°C

160 of 368

Understanding RowHammer �Under Reduced Wordline Voltage� An Experimental Study Using Real DRAM Devices

Abdullah Giray Yağlıkçı

Haocong Luo Geraldo F. de Oliviera Ataberk Olgun

Minesh Patel Jisung Park Hasan Hassan Jeremie S. Kim

Lois Orosa Onur Mutlu

161 of 368

DRAM Organization

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

DRAM Cell

Wordline

Row Buffer

Bitline

DRAM Row

162 of 368

The RowHammer Vulnerability

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening (activating) and closing (precharging)

a DRAM row in real DRAM chips �causes RowHammer bit flips in nearby cells

Row 2

open�(high voltage)

Row 1

Row 3

Row 2

closed�(low voltage)

Row 2

open(high voltage)

Row 1

Row 3

Row 0

Row 4

Row 2

closed

Victim Row

Victim Row

Victim Row

Victim Row

Aggressor Row

Row 2

open(high voltage)

Row 2

closed �(low voltage)

Aggressor Row

DRAM Subarray

163 of 368

Executive Summary

Motivation:

    • Repeatedly toggling a DRAM row’s wordline voltage causes bit flips in nearby rows
    • This vulnerability, RowHammer, worsens in denser DRAM chips
    • Understanding RowHammer enables designing effective and efficient solutions

Problem: No study demonstrates how wordline voltage (VPP) affects RowHammer

Goal: Experimentally understand how VPP affects RowHammer and DRAM operation

Experimental study: 272 DRAM chips from three major DRAM manufacturers

VPP’s effect on RowHammer: Six observations show that with reduced VPP,

      • Bit error rate caused by a RowHammer attack reduces by 15.2% (66.9% max)
      • A row needs to be activated 7.4% more times (85.8% max) to induce the first bit flip

VPP’s effect on DRAM operation: Nine observations show that with reduced VPP,

    • 208 out of 272 tested DRAM chips reliably operate using nominal timing parameters
    • Erroneous DRAM chips can reliably operate with
        • A longer row activation latency, i.e., 24ns/15ns for 48/16 chips,
        • Single-error-correcting codes or 2x the refresh rate only for 16.4% of rows

Conclusion: Reducing wordline voltage can reduce RowHammer vulnerability � without significantly affecting reliable DRAM operation

164 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

165 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

166 of 368

Motivation 

  • Defenses are becoming prohibitively expensive [Kim et al., ISCA’20]
  • A deeper understanding is needed [Orosa and Yaglikci et al., MICRO’21]
  • Prior works investigate how RowHammer changes across

Minimum Activation Count to Observe a Bit Flip [Kim+, ISCA’20]

More than 10X reduction

2020

2014

Manufactured Year

DDR3

DDR4

LPDDR4

Technology

Scaling

Repeatedly toggling wordline voltage causes RowHammer

No rigorous experimental study demonstrates how the magnitude �of wordline voltage affects the RowHammer vulnerability of real DRAM chips

[Kim et al., ISCA’20]

[Orosa and Yaglikci et al., MICRO’21]

167 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

168 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

169 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

170 of 368

Outline

Conclusions

Motivation and Goal

Experimental Methodology

RowHammer Under Reduced Wordline Voltage

DRAM Operation Under Reduced Wordline Voltage

171 of 368

Understanding RowHammer �Under Reduced Wordline Voltage� An Experimental Study Using Real DRAM Devices

Abdullah Giray Yağlıkçı

Haocong Luo Geraldo F. de Oliviera Ataberk Olgun

Minesh Patel Jisung Park Hasan Hassan Jeremie S. Kim

Lois Orosa Onur Mutlu

172 of 368

Understanding RowHammer �Under Reduced Wordline Voltage� An Experimental Study Using Real DRAM Devices

Abdullah Giray Yağlıkçı

Haocong Luo Geraldo F. de Oliviera Ataberk Olgun

Minesh Patel Jisung Park Hasan Hassan Jeremie S. Kim

Lois Orosa Onur Mutlu

173 of 368

Understanding RowHammer �Under Reduced Wordline Voltage� An Experimental Study Using Real DRAM Devices

Abdullah Giray Yağlıkçı

Haocong Luo Geraldo F. de Oliviera Ataberk Olgun

Minesh Patel Jisung Park Hasan Hassan Jeremie S. Kim

Lois Orosa Onur Mutlu

BACKUP SLIDES

174 of 368

DRAM Operation

DRAM Subarray

Bitline

Wordline

DRAM Cell

Row Buffer

Row Activation: Fetching the row’s content �into the row buffer

1

Column Access: Read/Write a column �in the row buffer

2

I/O Circuitry

Precharge: Disconnect the row from�the row buffer

3

DRAM Cell

Wordline

Capacitor

Access transistor

Bitline

charge

leakage

paths

Vmin

REF

Time

Capacitor Voltage

100%

0%

Refresh Window

REF

REF

175 of 368

Distribution of Bit Flips across DRAM Rows

OBSERVATION 3

BER reduction with reduced wordline voltage varies �across different DRAM rows and manufacturers

Across manufacturers

Across rows

176 of 368

Distribution of HCfirst across DRAM Rows

OBSERVATION 3

HCfirst reduction with reduced wordline voltage varies �across different DRAM rows and manufacturers

Across manufacturers

Across rows

177 of 368

Wordline Voltage’s Effect on DRAM Refresh

Data Retention Bit Error Rate

Probability Density

0.32

0.24

0.16

0.08

0

0 0.5% 1.0% 1.5%

OBSERVATION 12

More DRAM cells tend to experience data retention bit flips

when wordline voltage is reduced

178 of 368

Wordline Voltage’s Effect on DRAM Refresh

OBSERVATION 12

More DRAM cells tend to experience data retention bit flips

when wordline voltage is reduced

179 of 368

Charge Restoration Process

OBSERVATION 10

A DRAM cell’s capacitor voltage can saturateat a lower voltage level when wordline voltage is reduced

180 of 368

Also in the Paper

OBSERVATION 11

A DRAM cell’s charge restoration latency (tRASmin) �can increase with reduced wordline voltage

181 of 368

DRAM Chips Tested

182 of 368

RowHammer Test

183 of 368

Row Activation and Refresh Rate Tests

184 of 368

Understanding RowHammer �Under Reduced Wordline Voltage� An Experimental Study Using Real DRAM Devices

Abdullah Giray Yağlıkçı

Haocong Luo Geraldo F. de Oliviera Ataberk Olgun

Minesh Patel Jisung Park Hasan Hassan Jeremie S. Kim

Lois Orosa Onur Mutlu

BACKUP SLIDES

185 of 368

Example Findings

  • RowHammer vulnerability is
    • worse in a bounded temperature range

    • worse when the hammer presses on rows�paved the way to the discovery of a new read disturbance (RowPress)

    • less effective at lower (wordline) voltage levels

    • varies across regions of a DRAM chip due to design- �and manufacturing process-induced variations

184

186 of 368

Contributions to�Solving RowHammer

185

187 of 368

BlockHammer �Preventing RowHammer at Low Cost �by Blacklisting Rapidly-Accessed DRAM Rows

Abdullah Giray Yağlıkçı

Minesh Patel Jeremie S. Kim Roknoddin Azizi

Ataberk Olgun Lois Orosa Hasan Hassan Jisung Park

Konstantinos Kanellopoulos Taha Shahroodi

Saugata Ghose* Onur Mutlu�

*

188 of 368

Executive Summary

  • Motivation: RowHammer is a worsening DRAM reliability and security problem
  • Problem: Mitigation mechanisms have limited support for current/future chips
    • Scalability with worsening RowHammer vulnerability
    • Compatibility with commodity DRAM chips
  • Goal: Efficiently and scalably prevent RowHammer bit-flips � without knowledge of or modifications to DRAM internals
  • Key Idea: Selectively throttle memory accesses that may cause RowHammer bit-flips
  • Mechanism: BlockHammer
    • Tracks activation rates of all rows by using area-efficient Bloom filters
    • Throttles row activations that could cause RowHammer bit flips
    • Identifies and throttles threads that perform RowHammer attacks
  • Scalability with Worsening RowHammer Vulnerability:
    • Competitive with state-of-the-art mechanisms when there is no attack
    • Superior performance and DRAM energy when a RowHammer attack is present
  • Compatibility with Commodity DRAM Chips:
    • No proprietary information of DRAM internals
    • No modifications to DRAM circuitry

187

189 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

188

190 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

189

191 of 368

Organizing and Accessing �DRAM Cells

A row needs to be activated to access its content

A DRAM cell consists of a capacitor and an access transistor

190

192 of 368

DRAM Refresh

Periodic refresh operations preserve stored data

Capacitor voltage (Vdd)

100%

0%

Vmin

Refresh Window�tREFW

Refresh Operations

time

REF

REF

REF

[Patel+ ISCA’17, Kim+ ISCA’20]

191

193 of 368

The RowHammer Phenomenon

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening (activating) and closing (precharging)

a DRAM row causes RowHammer bit flips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 1

Row 3

Row 0

Row 4

Row 2

closed

Victim Row

Victim Row

Victim Row

Victim Row

Aggressor Row

Row 2

open

Row 2

closed

DRAM Bank

[Kim+ ISCA’20]

192

194 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

193

195 of 368

RowHammer Mitigation Approaches

  • Increased refresh rate

  • Physical isolation

  • Reactive refresh

  • Proactive throttling

DRAM Bank

Aggressor Row

Victim Rows

Isolation Rows

Large-enough distance

DRAM Bank

Aggressor Row

Victim rows

Refresh

Victim Rows

Refresh

Rapidly activated (hammered)

REF-to-REF time reduces

Fewer activations can fit

Fewer activations can be performed

194

196 of 368

Two Key Challenges

Scalability

with worsening RowHammer vulnerability

1

Compatibility

with commodity DRAM chips

2

Compatibility

with commodity DRAM chips

2

Compatibility

with commodity DRAM chips

2

195

197 of 368

Scalabilitywith Worsening RowHammer Vulnerability

  • DRAM chips are more vulnerable to RowHammer today
  • RowHammer bit-flips occur at much lower activation counts (more than an order of magnitude decrease):
    • 139.2K [Y. Kim+, ISCA 2014]
    • 9.6K [J. S. Kim+, ISCA 2020]

  • RowHammer blast radius has increased by 33%:
    • 9 rows [Y. Kim+, ISCA 2014]
    • 12 rows [J. S. Kim+, ISCA 2020]

  • In-DRAM mitigation mechanisms are ineffective [Frigo+, S&P 2020]

RowHammer is a more serious problem than ever

196

198 of 368

Mitigation Approaches �with Worsening RowHammer Vulnerability

  • Increased refresh rate

  • Physical isolation

  • Reactive refresh

  • Proactive throttling

DRAM Bank

Aggressor Row

Victim Rows

Isolation Rows

Isolation Rows

Larger distance

more isolation rows

DRAM Bank

Aggressor row

Victim rows

Refresh more frequently

Refresh more rows

Victim rows

Refresh more frequently

Refresh more rows

REF-to-REF time further reduces

Even fewer activations can fit

More aggressively throttles row activations

197

199 of 368

Mitigation Approaches �with Worsening RowHammer Vulnerability

  • Increased refresh rate

  • Physical isolation

  • Reactive refresh

  • Proactive throttling

DRAM Bank

Aggressor Row

Victim Rows

Isolation Rows

Isolation Rows

Larger distance

more isolation rows

DRAM Bank

Aggressor row

Victim rows

Refresh more frequently

Refresh more rows

Victim rows

Refresh more frequently

Refresh more rows

REF-to-REF time further reduces

Even fewer activations can fit

More aggressively throttles row activations

Mitigation mechanisms face the challenge of scalability with worsening RowHammer

198

200 of 368

Two Key Challenges

Compatibility

with commodity DRAM chips

2

Scalability

with worsening RowHammer vulnerability

1

Compatibility

with commodity DRAM chips

2

Scalability

with worsening RowHammer vulnerability

1

Scalability

with worsening RowHammer vulnerability

1

199

201 of 368

Compatibility �with Commodity DRAM Chips

Application

Level

Virtual Memory Address

System

Level

Physical Memory Address

Memory

Controller

DRAM Bus Addresses

(Channel, Rank, Bank Group, Bank, Row, Col)

Visible within

the Processor

In-DRAM

Mapping

Physical Rows and Columns

DRAM

Chip

200

202 of 368

Compatibility �with Commodity DRAM Chips

Vendors apply in-DRAM mapping for two reasons:

  • Design Optimizations: By simplifying DRAM circuitry�to provide better density, performance, and power

  • Yield Improvement: By mapping faulty rows and columns �to redundant ones

  • In-DRAM mapping scheme includes insights into chip design �and manufacturing quality

In-DRAM mapping is proprietary information

201

203 of 368

RowHammer Mitigation Approaches

  • Increased refresh rate

  • Physical isolation

  • Reactive refresh

  • Proactive throttling

REF-to-REF time reduces

Fewer activations can fit

Fewer activations can be performed

DRAM Bank

Aggressor Row

Victim Rows

Isolation Rows

DRAM Bank

Aggressor Row

Victim rows

Victim Rows

Identifying victim and isolation rows requires

proprietary knowledge of in-DRAM mapping

202

204 of 368

Our Goal

To prevent RowHammer efficiently and scalably

without knowledge of or modifications to DRAM internals

203

205 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

204

206 of 368

BlockHammer �Key Idea

Selectively throttle memory accesses

that may cause RowHammer bit-flips

205

207 of 368

A Major Issue of Past Read Disturbance Mitigations

206

  • A RowHammer attack hammers Row A

  • Existing mechanisms detect the attack

  • Refresh rows A+1 and A-1

  • Bit flips still may occur due to �unknown DRAM-internal row mapping

Physical

Row Layout

Row A+1

Row A-1

Victim

Rows

Row A

Existing read disturbance mitigation mechanisms�need to know proprietary DRAM-internal row address mapping

208 of 368

BlockHammer: Throttling Unsafe Accesses

207

  • A RowHammer attack hammers Row A

  • BlockHammer detects and �selectively throttles accessesfrom within the memory controller

  • Bit flips do not occur

  • BlockHammer can optionally inform the system software about the attack

Physical

Row Layout

Row A

BlockHammer is compatible with commodity DRAM chips

No need for proprietary info of or modifications to DRAM chips

209 of 368

Intel Hardware Security Academic Award

208

Abdullah Giray Yağlıkçı, Minesh Patel, Jeremie S. Kim, Roknoddin Azizi, Ataberk Olgun, Lois Orosa, Hasan Hassan, Jisung Park, Konstantinos Kanellopoulos, Taha Shahroodi, Saugata Ghose, and Onur Mutlu, "BlockHammer: Preventing RowHammer at Low Cost by Blacklisting Rapidly-Accessed DRAM Rows,” in HPCA, 2021.

210 of 368

Intel Hardware Security Academic Award

209

Abdullah Giray Yağlıkçı, Minesh Patel, Jeremie S. Kim, Roknoddin Azizi, Ataberk Olgun, Lois Orosa, Hasan Hassan, Jisung Park, Konstantinos Kanellopoulos, Taha Shahroodi, Saugata Ghose, and Onur Mutlu, "BlockHammer: Preventing RowHammer at Low Cost by Blacklisting Rapidly-Accessed DRAM Rows,” in HPCA, 2021.

211 of 368

BlockHammer �Overview of Approach

RowBlocker

Tracks row activation rates using area-efficient Bloom filters

Blacklists rows that are activated at a high rate

Throttles activations targeting a blacklisted row

AttackThrottler

Identifies threads that perform a RowHammer attack

Reduces memory bandwidth usage of identified threads

No row can be activated at a high enough rate to induce bit-flips

Greatly reduces the performance degradation

and energy wastage a RowHammer attack inflicts on a system

210

212 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

211

213 of 368

RowBlocker

  • Modifies the memory request scheduler to throttle row activations
  • Blacklists rows with a high activation rate and delays subsequent activations targeting blacklisted rows

Blacklisting

Logic

Delaying

Logic

212

214 of 368

RowBlocker

  • Blocks a row activation if the row is both blacklistedand recently activated

213

215 of 368

RowBlocker

  • When a row activation is performed, both RowBlocker-BL and RowBlocker-HB are updated with the row activation information

214

216 of 368

RowBlocker-BL �Blacklisting Logic

  • Blacklists a row when the row’s �activation count in a time window �exceeds a threshold

  • Employs two counting Bloom filters �for area-efficient activation rate tracking

215

217 of 368

Counting Bloom Filters

  • Blacklisting logic counts activations using counting Bloom filters
  • A row’s activation count
    • can be observed more than it is (false positive)
    • cannot be observed less than it is (no false negative)
  • To avoid saturating counters, we use a time-interleaving approach

0

0

0

0

0

0

0

0

0

0

Hash functions

ACT Row A

1

1

1

1

1

1

1

1

ACT Row B

1

1

2

1

1

1

2

1

Minimum

1

Test Row A

1

1

2

1

216

218 of 368

RowBlocker-BL �Blacklisting Logic

  • Blacklisting logic employs two counting Bloom filters
  • A new row activation is inserted in both filters
  • Only one filter (active filter) responds to test queries
  • The active filter changes at every epoch

CBFA is active

CBFB is active

CBFA is passive

CBFB is passive

217

219 of 368

RowBlocker-BL �Blacklisting Logic

  • Blacklisting logic employs two counting Bloom filters
  • A new row activation is inserted in both filters
  • Only one filter (active filter) responds to test queries
  • The active filter changes at every epoch
  • Blacklists a row if its activation count reaches the blacklisting threshold (NBL)

Assume that the row is

activated at a high rate

Assume that the row is

not activated at a high rate

218

220 of 368

Limiting the Row Activation Rate

  • The activation rate is RowHammer-safe if it is smaller than or equal to RowHammer threshold (NRH) activations in a refresh window (tREFW)
  • RowBlocker limits the activation count (NCBF) in a CBF’s lifetime (tCBF)

tCBF

tCBF

Clear CBFB

Clear CBFB

Clear CBFA

Clear CBFA

 

219

221 of 368

Limiting the Row Activation Rate

  • The activation rate is RowHammer-safe if it is smaller than or equal to RowHammer threshold (NRH) activations in a refresh window (tREFW)
  • RowBlocker limits the activation count (NCBF) in a CBF’s lifetime (tCBF)

tCBF

tCBF

Clear CBFB

Clear CBFB

Clear CBFA

Clear CBFA

 

 

 

 

RowHammer Safety Constraint

220

222 of 368

RowBlocker-HB �Limiting the Row Activation Rate

  • Ensures that all rows experience �a RowHammer-safe activation rate

  • We limit NCBF by configuring tDelay :

Row

activation

tDelay

tDelay

NCBF row activations

 

 

 

tDelay

 

tCBF

time

tDelay

tRC x NBL

tCBF – (tRC ✖️NBL)

tRC

NBL row activations

Blacklisted row activation

 

221

223 of 368

RowBlocker-HB�Delaying Row Activations

  • RowBlocker-HB ensures no subsequent blacklisted row activation �is performed sooner than tDelay

  • RowBlocker-HB implements a history buffer for row activations that can fit in a tDelay time window
  • A blacklisted row activation is blocked as long as a valid activation record of the row exists in the history buffer

No row can be activated at a high enough rate �to induce bit-flips

222

224 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

223

225 of 368

AttackThrottler

  • Tackles a RowHammer attack’s performance degradation and energy wastage on a system

  • A RowHammer attack intrinsically keeps activating blacklisted rows

  • RowHammer Likelihood Index (RHLI): Number of activations that target blacklisted rows (normalized to maximum possible activation count)

RHLI is larger when the thread’s access pattern

is more similar to a RowHammer attack

0.0

1.0

RHLI

Benign application

No blacklisted row activations

RowHammer attack�Blacklisted row activation count �approaches RowHammer threshold

224

226 of 368

AttackThrottler

  • Applies a smaller quota to a thread’s in-flight request count as RHLI increases

  • Reduces a RowHammer attack’s memory bandwidth consumption, enabling a larger memory bandwidth for concurrent benign applications

  • RHLI can also be used as a RowHammer attack indicator by the system software

Greatly reduces the perfomance degradation and energy wastage

a RowHammer attack inflicts on a system

RHLI

Benign application

No blacklisted row activations

No quota applied

RowHammer attack�Blacklisted row activation count �approaches RowHammer threshold

No request is allowed

0.0

1.0

225

227 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

226

228 of 368

Evaluation�BlockHammer’s Hardware Complexity

  • We analyze six state-of-the-art mechanisms and BlockHammer
  • We calculate area, access energy, and static power consumption*

Mitigation

SRAM

CAM

Area

Access Energy

Static Power

Mechanism

KB

KB

mm2

%CPU

pJ

mW

BlockHammer

PARA [73]

ProHIT [137]

MRLoc [161]

CBT [132]

TWiCe [84]

Graphene [113]

Mitigation

SRAM

CAM

Area

Access Energy

Static Power

Mechanism

KB

KB

mm2

%CPU

pJ

mW

BlockHammer

51.48

1.73

0.14

0.06

20.30

22.27

PARA [73]

-

-

<0.01

-

-

-

ProHIT [137]

-

0.22

<0.01

<0.01

3.67

0.14

MRLoc [161]

-

0.47

<0.01

<0.01

4.44

0.21

CBT [132]

16.00

8.50

0.20

0.08

9.13

35.55

TWiCe [84]

23.10

14.02

0.15

0.06

7.99

21.28

Graphene [113]

-

5.22

0.04

0.02

40.67

3.11

NRH=32K

BlockHammer is low cost and competitive

with state-of-the-art mechanisms

*Assuming a high-end 28-core Intel Xeon processor system with 4-channel single-rank DDR4 DIMMs�with a RowHammer threshold (NRH) of 32K

227

229 of 368

Evaluation�BlockHammer’s Hardware Complexity

Mitigation

SRAM

CAM

Area

Access Energy

Static Power

Mechanism

KB

KB

mm2

%CPU

pJ

mW

BlockHammer

51.48

1.73

0.14

0.06

20.30

22.27

PARA [73]

-

-

<0.01

-

-

-

ProHIT [137]

-

0.22

<0.01

<0.01

3.67

0.14

MRLoc [161]

-

0.47

<0.01

<0.01

4.44

0.21

CBT [132]

16.00

8.50

0.20

0.08

9.13

35.55

TWiCe [84]

23.10

14.02

0.15

0.06

7.99

21.28

Graphene [113]

-

5.22

0.04

0.02

40.67

3.11

Mitigation

SRAM

CAM

Area

Access Energy

Static Power

Mechanism

KB

KB

mm2

%CPU

pJ

mW

BlockHammer

51.48

1.73

0.14

0.06

20.30

22.27

PARA [73]

-

-

<0.01

-

-

-

ProHIT [137]

-

0.22

<0.01

<0.01

3.67

0.14

MRLoc [161]

-

0.47

<0.01

<0.01

4.44

0.21

CBT [132]

16.00

8.50

0.20

0.08

9.13

35.55

TWiCe [84]

23.10

14.02

0.15

0.06

7.99

21.28

Graphene [113]

-

5.22

0.04

0.02

40.67

3.11

BlockHammer

441.33

55.58

1.57

0.64

99.64

220.99

PARA [73]

-

-

<0.01

-

-

-

ProHIT [137]

x

x

x

x

x

x

MRLoc [161]

x

x

x

x

x

x

CBT [132]

512.00

272.00

3.95

1.60

127.93

535.50

TWiCe [84]

738.32

448.27

5.17

2.10

124.79

631.98

Graphene [113]

-

166.03

1.14

0.46

917.55

93.96

Mitigation

SRAM

CAM

Area

Access Energy

Static Power

Mechanism

KB

KB

mm2

%CPU

pJ

mW

BlockHammer

0.06

20.30

22.27

PARA [73]

ProHIT [137]

MRLoc [161]

CBT [132]

0.08

35.55

TWiCe [84]

0.06

21.28

Graphene [113]

0.02

40.67

3.11

BlockHammer

0.64

99.64

220.99

PARA [73]

ProHIT [137]

MRLoc [161]

CBT [132]

1.60

535.50

TWiCe [84]

2.10

631.98

Graphene [113]

0.46

917.55

93.96

20x

35x

23x

10x

15x

30x

30x

10x

23x

5x

NRH=32K

NRH=1K

BlockHammer’s hardware complexity scales more efficiently than state-of-the-art mechanisms

228

230 of 368

Evaluation�Performance and DRAM Energy

  • Cycle-level simulations using Ramulator and DRAMPower
  • System Configuration:

  • Single-Core Benign Workloads:
    • 22 SPEC CPU 2006
    • 4 YCSB Disk I/O
    • 2 Network Accelerator Traces
    • 2 Bulk Data Copy with Non-Temporal Hint (movnti)
  • Randomly Chosen Multiprogrammed Workloads:
    • 125 workloads containing 8 benign applications
    • 125 workloads containing 7 benign applications and 1 RowHammer attack thread

Processor

3.2 GHz, {1,8} core, 4-wide issue, 128-entry instr. window

LLC

64-byte cacheline, 8-way set-associative, {2,16} MB

Memory scheduler

FR-FCFS

Address mapping

Minimalistic Open Pages

DRAM

DDR4 1 channel, 1 rank, 4 bank group, 4 banks per bank group

RowHammer Threshold

32K

229

231 of 368

Evaluation�Performance and DRAM Energy

  • We classify single-core workloads into three categories based on row buffer conflicts per thousand instructions

  • No application’s row activation count exceeds BlockHammer’s blacklisting threshold (NBL)

0.0

1.0

5.0

RBCPKI

Low (L)

Medium (M)

High (H)

BlockHammer does not incur performance or DRAM energy overheads for single-core benign applications

230

232 of 368

Evaluation�Performance and DRAM Energy

  • System throughput (weighted speedup)
  • Job turnaround time (harmonic speedup)
  • Unfairness (maximum slowdown)
  • DRAM energy consumption

RowHammer

Attack

Present

No

RowHammer

Attack

BlockHammer introduces very low performance (<0.5%) and DRAM energy (<0.4%) overheads

BlockHammer significantly increases benign application performance (by 45% on average)

and reduces DRAM energy consumption (by 29% on average)

231

233 of 368

Evaluation�Scaling with RowHammer Vulnerability

RowHammer

Attack Present

No RowHammer

Attack

BlockHammer’s performance and energy overheads remain negligible (<0.6%)

BlockHammer scalably provides much higher performance (71% on average)

and lower energy consumption (32% on average) than state-of-the-art mechanisms

  • System throughput (weighted speedup)
  • Job turnaround time (harmonic speedup)
  • Unfairness (maximum slowdown)
  • DRAM energy consumption

232

234 of 368

More in the Paper

  • Security Proof
    • Mathematically represent all possible access patterns
    • We show that no row can be activated high-enough times to induce bit-flipswhen BlockHammer is configured correctly
  • Addressing Many-Sided Attacks
  • Evaluation of 14 mechanisms representing four mitigation approaches
    • Comprehensive Protection
    • Compatibility with Commodity DRAM Chips
    • Scalability with RowHammer Vulnerability
    • Deterministic Protection

233

235 of 368

Outline

DRAM and RowHammer Background

Motivation and Goal

BlockHammer

RowBlocker

AttackThrottler

Evaluation

Conclusion

234

236 of 368

Conclusion

  • Motivation: RowHammer is a worsening DRAM reliability and security problem
  • Problem: Mitigation mechanisms have limited support for current/future chips
    • Scalability with worsening RowHammer vulnerability
    • Compatibility with commodity DRAM chips
  • Goal: Efficiently and scalably prevent RowHammer bit-flips � without knowledge of or modifications to DRAM internals
  • Key Idea: Selectively throttle memory accesses that may cause RowHammer bit-flips
  • Mechanism: BlockHammer
    • Tracks activation rates of all rows by using area-efficient Bloom filters
    • Throttles row activations that could cause RowHammer bit flips
    • Identifies and throttles threads that perform RowHammer attacks
  • Scalability with Worsening RowHammer Vulnerability:
    • Competitive with state-of-the-art mechanisms when there is no attack
    • Superior performance and DRAM energy when a RowHammer attack is present
  • Compatibility with Commodity DRAM Chips:
    • No proprietary information of DRAM internals
    • No modifications to DRAM circuitry

235

237 of 368

BlockHammer �Preventing RowHammer at Low Cost �by Blacklisting Rapidly-Accessed DRAM Rows

Abdullah Giray Yağlıkçı

Minesh Patel Jeremie S. Kim Roknoddin Azizi

Ataberk Olgun Lois Orosa Hasan Hassan Jisung Park

Konstantinos Kanellopoulos Taha Shahroodi

Saugata Ghose* Onur Mutlu�

*

238 of 368

BlockHammer �Preventing RowHammer at Low Cost �by Blacklisting Rapidly-Accessed DRAM Rows

Backup Slides

239 of 368

Timing Constraints �for DRAM Row Activations

  • Timing row activations is critical to meet reliability and power constraints.
  • Two timing constraints limit row activation rates.

4

3

1

6

7

2

Bank B

5

Bank C

Bank E

Bank A

time

Bank D

Time difference > tFAW (~30-35ns)

tRC. : Minimum delay between two consecutive activations in a bank.

tFAW: Rolling time window in which at most four rows can be activated in a rank.

Bank F

ACT

Row X

ACT

Row Y

Time difference > tRC (~45-50ns)

ACT

Row Z

ACT

Row T

ACT

Row U

ACT

Row V

Time difference > tFAW (~30-35ns)

ACT

Row W

238

240 of 368

BlockHammer Hardware Complexity

  • RowBlocker
    • RowBlocker-BL: Implemented per-bank
      • 1K counters in a CBF
      • 4 H3 hash functions

    • RowBlocker-HB: Implemented per-rank
      • 887 entries

  • AttackThrottler
    • Two counters per <Bank, Thread> pair.

239

241 of 368

RowHammer Characteristics

  • RowHammer Threshold (NRH): �The minimum row activation count in a refresh window to induce a RowHammer bit-flip.

  • Blast Radius (rBlast): �The maximum physical distance from the aggressor row at which RowHammer bit-flips can be observed.

  • Blast Impact Factor (ci): �Set of coefficients that scale a RowHammer attacks impact on victim rows based on their physical distance to the aggressor row.

240

242 of 368

Many-Sided Attacks

  • NRH : RowHammer threshold for single-sided attack.
  • NRH* : Maximum activation count that BlockHammer allows � in a refresh window.
  • rBlast : Blast radius
  • ci : Blast impact factor
  • We configure NRH* such that hammering all rows NRH* times does not cause bit-flips.

 

 

241

243 of 368

DRAM Bank

local

bitline

wordline

DRAM cell

DRAM row

A DRAM bank is hierarchically organized into subarrays

Columns of cells in subarrays share a local bitline

Rows of cells in a subarray share a wordline

DRAM Organization

242

244 of 368

DRAM Operation

Local Row Buffer

Local Row Buffer

Cache line

READ

READ

READ

Row Decoder

Local Row Buffer

READ

READ

READ

ACT R0

RD

PRE R0

RD

RD

ACT R1

RD

RD

RD

time

DRAM Command Sequence

243

245 of 368

DRAM Cell

Each cell encodes information in leaky capacitors

wordline

capacitor

access

transistor

bitline

Stored data is corrupted if too much charge leaks �(i.e., the capacitor voltage degrades too much)

charge

leakage

paths

[Patel+ ISCA’17, Kim+ ISCA’20]

244

246 of 368

Security Analysis

No permutation of epochs can satisfy �the necessary constraints of a successful attack

245

247 of 368

BlockHammer �Preventing RowHammer at Low Cost �by Blacklisting Rapidly-Accessed DRAM Rows

Backup Slides

248 of 368

HiRA: Hidden Row Activation for Reducing Refresh Latency of Off-the-Shelf DRAM Chips

Abdullah Giray Yağlıkçı

Ataberk Olgun Minesh Patel Haocong Luo Hasan Hassan

Lois Orosa Oğuz Ergin Onur Mutlu

249 of 368

Executive Summary

  • Problem: DRAM Refresh
    • is a fundamental operation to avoid bit flips due to leakage and RowHammer
    • incurs increasingly large performance overhead with DRAM chip density scaling
  • Goal: Reduce the performance overhead of DRAM Refresh
  • Key Idea: Hide refresh latency by refreshing a DRAM row concurrently with activating another row in a different subarray of the same bank
  • HiRA: Hidden Row Activation – a new DRAM operation that
    • Issues DRAM commands in quick succession to concurrently open two rows �in different subarrays
    • Works on real off-the-shelf DRAM chips by violating timing constraints
    • Significantly reduces (51.4%) the time spent for refresh operations
  • HiRA-MC: HiRA Memory Controller – a new mechanism
    • Leverages HiRA to perform refresh requests �concurrently with DRAM accesses and other refresh requests
    • Significantly improves system performance by hiding refresh latency for both�regular periodic and RowHammer-preventive refreshes

250 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

251 of 368

DRAM Organization

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

DRAM Cell

Wordline

Row Buffer

Bitline

DRAM Row

DRAM Rank

252 of 368

DRAM Operations

ACTIVATE (ACT):

Fetch the row’s content �into the row buffer

Column Access (RD/WR):Read/Write the target �column and drive to I/O

PRECHARGE (PRE): �Prepare the array �for a new ACTIVATE

1

1

1

1

1

2

3

I/O Circuitry

Row

Buffer

DRAM Subarray

253 of 368

DRAM Refresh

time

Fully�charged

DRAM Refresh

DRAM cells leak charge over time

DRAM Refresh is the key maintenance operation to avoid bit flips due to charge leakage

DRAM Refresh activates a row and precharges the bank

1

1

1

1

Row

Buffer

DRAM Subarray

Problem: DRAM Refresh blocks accesses to the whole bank / rank

254 of 368

Two Main Types of DRAM Refresh

2

Periodic Refresh: Periodically restores the charge� DRAM cells leak over time

1

DRAM Row

Preventive Refresh

Preventive Refresh

RowHammer: Repeatedly accessing a DRAM row can cause � bit flips in other physically nearby rows

Preventive Refresh: Mitigates RowHammer by refreshing physically nearby rows � of a repeatedly accessed row

255 of 368

Periodic Refresh�with Increasing DRAM Chip Density

A larger capacity chip has more rows to be refreshed

A smaller cell stores less charge

Significant performance and energy overhead

26% Slowdown

More periodic refresh operations incur �larger performance overhead as DRAM chip density increases

256 of 368

RowHammer and Preventive Refresh�with Increasing DRAM Chip Density

Significant performance and energy overhead

Preventive refresh operations need to be performed �more aggressively as DRAM chip density increases

96% Slowdown

RowHammer vulnerability worsens �as DRAM chip density increases

257 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

258 of 368

Our Goal

Reduce the performance overhead of DRAM Refresh �(both periodic and preventive)

259 of 368

Key Idea

Hide refresh latency by refreshing a DRAM row �concurrently with activating another row �in a different subarray of the same bank

260 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

261 of 368

HiRA: Hidden Row Activation – Key Insight

Subarray X

Subarray Y

Activating two rows in quick succession �that are in different subarrays in the same bank �can refresh one row concurrently with �activating the other row

Row A

Row B

Refreshes RowA

concurrently with

Activating RowB

ACT

ACT

DRAM Bank

262 of 368

HiRA: Hidden Row Activation

Refresh RowA concurrently with Activating RowB

HiRA

Saved time�using HiRA

ACT

RowA

PRE

ACT

RowB

time

time

RowA’s

refresh

RowB’s activation

ACT

RowA

PRE

ACT

RowB

RowA’s

refresh

RowB’s activation

RD

RD

Without HiRA

With HiRA

Precharge

263 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

264 of 368

DRAM Testing Infrastructure

FPGA-based SoftMC (Xilinx Virtex UltraScale+ XCU200)

Xilinx Alveo U200 FPGA Board�(programmed with SoftMC*)

DRAM Module with Heaters

MaxWell FT200 Temperature Controller

PCIe

Host Interface

Fine-grained control over DRAM commands,

timing parameters (±1.5ns), and temperature (±0.1°C )

265 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Result 1

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • HiRA performs a given row’s refresh concurrently withactivating any of the 32% of the rows in the same bank

Refresh RowA

32%

ACT RowB

DRAM Bank

HiRA(RowA, RowB)

266 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Result 2

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • 51.4% reduction in the time spent for refresh operations

HiRA effectively reduces the time spent �for refresh operations in off-the-shelf DRAM chips

267 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Results

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • 51.4% reduction in the time spent for refresh operations

  • HiRA performs a given row’s refresh concurrently withactivating any of the 32% of the rows in the same bank

Refresh RowA

32%

ACT RowB

DRAM Bank

HiRA(RowA, RowB)

HiRA effectively reduces the time spent �for refresh operations in off-the-shelf DRAM chips

268 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

269 of 368

HiRA-MC: HiRA Memory Controller

  • Goal: Leverage HiRA’s parallelism as much as possible
  • Key Insight: A time slack is needed to find a row activation � and a refresh to perform HiRA

RowA and RowZ are in two electrically disconnected subarrays

Ref(RowA) �is generated

Ref(RowA)

deadline

time slack

ACT

RowX

ACT

RowY

ACT

RowZ

ACT

RowT

time

Ref(RowA) �is generated

Ref(RowA) �deadline

time slack

ACT

RowX

ACT

RowY

HiRA

RowA,RowZ

ACT

RowT

time

270 of 368

HiRA-MC: HiRA Memory Controller

Generates each periodic refresh �and RowHammer-preventive refreshwith a deadline

Buffers each refresh request and �performs the refresh request �until the deadline

Finds if it can refresh a DRAM row �concurrently with a DRAM access �or another refresh

1

2

3

271 of 368

HiRA-MC: HiRA Memory Controller

Generates each periodic refresh �and RowHammer-preventive refreshwith a deadline

Buffers each refresh request and ensures �to perform the refresh request �until the deadline

Finds if it can refresh a DRAM row �concurrently with a DRAM access �or another refresh

1

2

3

272 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

273 of 368

Performance Evaluation

  • Cycle-level simulations using Ramulator [Kim+, CAL 2015]
  • System Configuration:

  • Workloads: 125 different 8-core multiprogrammed workloads � from the SPEC2006 benchmark suite
  • DRAM Chip Capacity: {2, 4, 8, 16, 32, 64, 128} Gb
  • RowHammer Threshold: {1024, 512, 256, 128, 64} activationsThe minimum number of row activations needed to induce the first RowHammer bit flip

Processor

3.2 GHz, 8 core, 4-wide issue, 128-entry instr. window

Last-Level Cache

64-byte cache line, 8-way set-associative, 8 MB

Memory Scheduler

FR-FCFS

Address Mapping

Minimalistic Open Pages

Main Memory

DDR4, 4 bank group, 4 banks per bank group (16 banks per rank)

Timing Parameters

t1=t2=3ns, tRC= 46.25ns, tFAW=16ns

274 of 368

HiRA for Periodic Refreshes

  • No-Refresh: No periodic refresh is performed (Ideal case)
  • Baseline: Auto-Refresh (using conventional REF commands)

26%

slowdown

12.6%�speedup

Periodic refreshes cause significant (26%) performance overhead

HiRA improves system performance by 12.6% over the baseline

275 of 368

HiRA for Preventive Refreshes

  • No Defense: No RowHammer mitigation employed (i.e., no preventive refresh)
  • PARA [Kim+, ISCA’14]: the RowHammer defense with the lowest hardware overhead

96%

slowdown

3.7x�speedup

PARA significantly reduces (by 96%) system performance

HiRA improves system performance by 3.7x over PARA

276 of 368

More in the Full Paper

  • Real DRAM Chip Experiments
    • Verification of HiRA’s functionality
    • Variation in HiRA’s characteristics across banks

  • Sensitivity to
    • length of time slack for refreshes
    • number of channels
    • number of ranks

  • Hardware Complexity Analysis
    • Chip area cost of 0.0023% of a processor die per DRAM rank
    • No additional latency overhead

  • Experimental Methodology
    • Detailed algorithms for each set of real chip experiments
    • Extensive security analysis for RowHammer-preventive refreshes

  • Detailed Algorithm of Finding Concurrent Refreshes

277 of 368

More in the Full Paper

  • Real DRAM Chip Experiments
    • verify that HiRA’s second row activation is performed
    • analyze the variation across banks

  • Sensitivity to
    • the length of time slack for refreshes
    • the number of channels
    • the number of ranks

  • Hardware Complexity Analysis
    • Chip area cost of 0.0023% of a processor die per DRAM rank
    • No additional latency overhead

  • Experimental methodology
    • provide detailed algorithms for each set of real chip experiments
    • an extensive security analysis for the RowHammer defense

  • Detailed Algorithm of Finding Concurrent Refreshes

278 of 368

Outline

Performance Evaluation

Background and Problem

Goal and Key Idea

HiRA in Real DRAM Chips

HiRA-MC: HiRA Memory Controller

Conclusion

HiRA: Hidden Row Activation

279 of 368

Conclusion

  • HiRA: Hidden Row Activation – a new DRAM operation
    • First technique that refreshes a DRAM row concurrently with activating another row in the same bank in off-the-shelf DRAM chips
    • Real DRAM chip experiments:
      • HiRA works on 56 real off-the-shelf DRAM chips
      • 51.4% reduction in the time spent for refresh operations

  • HiRA-MC: HiRA Memory Controller – a new mechanism
    • Leverages HiRA to perform refresh requests �concurrently with DRAM accesses and other refresh requests
    • HiRA-MC provides:
      • 12.6% speedup by hiding periodic refresh latency
      • 3.7x speedup by hiding RowHammer-preventive refresh latency

280 of 368

HiRA: Hidden Row Activation for Reducing Refresh Latency of Off-the-Shelf DRAM Chips

Abdullah Giray Yağlıkçı

Ataberk Olgun Minesh Patel Haocong Luo Hasan Hassan

Lois Orosa Oğuz Ergin Onur Mutlu

281 of 368

HiRA: Hidden Row Activation for Reducing Refresh Latency of Off-the-Shelf DRAM Chips

Abdullah Giray Yağlıkçı

Ataberk Olgun Minesh Patel Haocong Luo Hasan Hassan

Lois Orosa Oğuz Ergin Onur Mutlu

Backup Slides

282 of 368

The RowHammer Vulnerability

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening (activating) and closing (precharging) �a DRAM row in real DRAM chips causes RowHammer bit flipsin nearby cells

Row 2

open�(high voltage)

Row 1

Row 3

Row 2

closed�(low voltage)

Row 2

open(high voltage)

Row 1

Row 3

Row 2

closed

Row 2

open(high voltage)

Row 2

closed �(low voltage)

Aggressor Row

DRAM Subarray

283 of 368

Preventive Refresh

Row 0

Row 1

Row 2

Row 3

Row 4

Activating a DRAM row refreshes the row�and prevents RowHammer bit flips

Row 2

open�(high voltage)

Row 1

Row 3

Row 2

closed�(low voltage)

Row 2

open(high voltage)

Row 1

Row 3

Row 0

Row 4

Row 2

closed

Victim Row

Victim Row

Victim Row

Victim Row

Aggressor Row

Row 2

open(high voltage)

Row 2

closed �(low voltage)

Aggressor Row

DRAM Subarray

ACT

Row 1

ACT

Row 3

Row 4

Row 0

ACT

ACT

284 of 368

Mitigating RowHammer

Row 0

Row 1

Row 2

Row 3

Row 4

Row 2 is being hammered

closed

open

Refresh neighbor rows

ACT

ACT

Preventive Refresh

Activating potential victim rows mitigate RowHammer �by refreshing them

285 of 368

RowHammer and Preventive Refresh

  • RowHammer: Repeatedly accessing a DRAM row �can cause bit flips in other physically nearby rows
  • Preventive Refresh: Refresh a DRAM row when a physically nearby row is activated based on activation counts or probabilistic processes

Significant performance and energy overhead

Preventive refresh mitigates RowHammer bit flips

Preventive

Refresh

286 of 368

HiRA: Hidden Row Activation

  • HiRA concurrently activates two rows in a DRAM bank
    • Challenge 1 : Only one row can be activated in a DRAM bank at a given time
    • Solution 1 : HiRA violates timing constraints for concurrent row activations
  • HiRA activates two DRAM rows in the same bank
    • Challenge 3: The two rows can override each other’s data via shared bitlines
    • Solution 3 : HiRA uses rows from two electrically disconnected subarrays
  • HiRA issues two row activation (ACT) commands in quick succession
    • Challenge 2 : DRAM chips ignore the second activation before precharge
    • Solution 2 : HiRA issues a precharge (PRE) command between two ACTs

HiRA violates DRAM timing constraints �by issuing a sequence of ACT-PRE-ACT commands �that target two rows in two electrically disconnected subarrays

287 of 368

HiRA: Hidden Row Activation

Refreshing RowA concurrently with Activating RowB

The time saved �using HiRA

ACT

RowA

PRE

ACT

RowB

time

time

RowA’s refresh

RowB’s activation

ACT

RowA

PRE

ACT

RowB

RowA’s refresh

RowB’s activation

Reduction in the time spent for two refreshes

RD

RD

RD

RD

HiRA

Without HiRA

With HiRA

Precharge

RowB’s refresh

RowB’s refresh

288 of 368

HiRA Operation

Overlapped

PRE

RD

RD

RD

ACT RowB

PRE

ACT RowA

HiRA

t1

t2

tRCD

RowA

RowB

tRestoreA

tRestoreB

time

Local Row

Buffer X

Local Row

Buffer Y

HiRA refreshes RowA concurrently with activating RowB by issuing ACT-PRE-ACT commands in quick succession

Bank I/O

289 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Results

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • 51.4% reduction in the time spent for refresh operations

  • HiRA performs a given row’s refresh concurrently withactivating any of the 32% of the rows in the same bank

Refresh RowA

32%

ACT RowB

DRAM Bank

HiRA(RowA, RowB)

HiRA effectively reduces the time spent �for refresh operations in off-the-shelf DRAM chips

290 of 368

HiRA Support in Off-the-Shelf DRAM Chips

  • 56 off-the-shelf DDR4 DRAM chips support HiRA (from SK Hynix)
  • HiRA Coverage of a given DRAM row:
    • Refresh a given DRAM row while activating other rows in the same bank
    • We sweep two timing parameters: t1 and t2

ACT RowB

PRE

ACT RowA

HiRA

t1

t2

HiRA can refresh a DRAM row concurrently with 32% of any of the other DRAM rows in the same bank

t1 and t2 can be �as small as 3ns

291 of 368

HiRA’s Second Row Activation

  • Does performing HiRA in between refresh the victim row?
    • If HiRA’s second row activation is performed, more activations are needed to induce RowHammer bit flips
    • If HiRA’s second row activation is ignored, RowHammer threshold should not change

Hammer N/2 times

Hammer N/2 times

NOP

Hammer N/2 times

Hammer N/2 times

HiRA

292 of 368

Variation across DRAM Banks

  • Coverage: Identical across banks
  • The effect of second row activation

293 of 368

HiRA-MC: HiRA Memory Controller

  • Goal: Leverage HiRA’s parallelism as much as possible
  • Periodic and preventive refresh controllers generate each�refresh request with a deadline
  • Refresh Table buffers a refresh request until its deadline
  • Concurrent Refresh Finder finds if HiRA can refresh a row
    • Concurrently with a memory request
    • Concurrently with another refresh request

Refresh Generator

RefPtr Table

RefPtr SA1

RefPtr SAn

RefPtr SA0

Periodic Refresh�Controller

PR FIFO

RowHammer

Defense Mechanism

Preventive Refresh�Controller

Concurrent Refresh Finder

Refresh Table

Memory Request Scheduler

294 of 368

The Concurrent Refresh Finder

Case 1: Executes when a precharge is issued (completes before the precharge completes)

Case 2: Periodically executes after every tRC (completes before tRC)

295 of 368

HiRA-MC Example

  • Case 1: Refresh – Access Parallelism

  • Case 2: Refresh – Refresh Parallelism

RD SA:A Row:0

RD SA:B Row:0

Head

Memory Request Queue

REF SA:B Row:6

REF SA:B Row:1

REF SA:C Row:2

Refresh Table

HiRA(Row SA:B Row:6, SA:A Row:0)

time

ACT SA:B Row:6

ACT SA:A Row:0

PRE

6ns

RD SA:B Row:0

Head

Memory Request Queue

REF SA:B Row:1

REF SA:C Row:2

Refresh Table

HiRA(Row SA:B Row:1, SA:C Row:2)

time

ACT SA:B Row:1

ACT SA:C Row:2

PRE

6ns

HiRA-MC provides refresh-access and refresh-refresh parallelism

296 of 368

HiRA-MC Hardware Complexity

  • We use CACTI with 22nm technology node

HiRA-MC Component

Area (mm2)

Area (% of Chip Area)

Access Latency

Refresh Table

0.00031

<0.0001%

0.07ns

RefPtr Table

0.00683

0.0017%

0.12ns

PR-FIFO

0.00029

<0.0001%

0.07ns

Subarray Pairs Table

0.00180

0.0005%

0.09ns

Overall

0.00923

0.0023%

6.31ns

HiRA-MC does not increase memory access latency

HiRA-MC consumes only 0.0023% of CPU chip area per DRAM rank

HiRA-MC Overall�Latency: 6.31ns

PRE

ACT

Precharge latency: ~14.5ns

time

297 of 368

Estimating Periodic Refresh Overhead

Latency of a REF command

DRAM Chip

Capacity

298 of 368

Reducing Overall Latency of Two Refreshes

  • Refreshing two rows using nominal timing parameters:

  • Using HiRA:

ACT RowA

PRE

ACT RowB

PRE

tRAS: 32ns

tRP: 14.25ns

tRAS: 32ns

time

ACT RowA

PRE

ACT RowB

PRE

t1: 3ns

tRAS: 32ns

time

t2: 3ns

51.4% reduction

Overall latency of refreshing two rows reduces by 51.4%

from 78.25ns down to 38ns

299 of 368

Tested DRAM Chips

300 of 368

HiRA-MC: HiRA Memory Controller

  • Periodic and preventive refresh controllers generate each�refresh request with a deadline
  • Refresh Table buffers a refresh request until its deadline
  • Concurrent Refresh Finder finds if HiRA can refresh a row
    • Concurrently with a DRAM access
    • Concurrently with another refresh request

Periodic Refresh�Controller

RowHammer

Defense Mechanism

Preventive Refresh�Controller

Concurrent Refresh Finder

Refresh Table

Memory Request Scheduler

301 of 368

HiRA for Periodic Refreshes

302 of 368

RowHammer Thresholds

303 of 368

HiRA for Preventive Refreshes

304 of 368

HiRA for Periodic Refresh�Sensitivity to Number of Channels and Ranks

305 of 368

HiRA for Preventive Refresh�Sensitivity to Number of Channels and Ranks

306 of 368

Workload Memory Access Characteristics

  • 125 different 8-core multiprogrammed workloads

  • Three histograms showing MPKI, RBCPKI, and RBHPKI respectively

307 of 368

RowHammer Mitigation across Generations

105

104

103

102

105

104

103

102

DDR3-old

DDR3-new

DDR4-old

LPDDR4-1x

DDR4-new

LPDDR4-1y

PARA

TWiCe-ideal

Ideal

HCfirst (number of hammers required to induce first RowHammer bit flip)

14%

J. S. Kim, M. Patel, A. G. Yaglikci, H. Hassan, R. Azizi, L. Orosa, and O. Mutlu, "Revisiting RowHammer: An Experimental Analysis of Modern Devices and Mitigation Techniques,” in ISCA, 2020.

308 of 368

Refresh Delay

  • DDRx protocols allow a REF command to be postponed for ~70us

  • HiRA-MC’s current design does not leverage this flexibility

  • A longer time slack allows
    • the baseline to better utilize DRAM idle time to perform refresh operations
    • HiRA to find more opportunities to perform a refresh operation �concurrently with a DRAM access
  • Future sensitivity study: the effect of long refresh delays

REF

REF

REF

REF

REF

7.8us

7.8us

7.8us

7.8us

REF

REF

REF

REF

REF

~70us

REF

REF

REF

REF

REF

7.8us

7.8us

7.8us

7.8us

REF

REF

REF

REF

REF

7.8us

7.8us

7.8us

7.8us

time slack

longer time slack

309 of 368

Energy

  • HiRA does not change the number of refresh operations �at a given time window
    • Overall energy consumed for refresh operations is the same

  • HiRA improves system performance
    • Reduces the background energy consumption

  • Evaluation requires an accurate power model based on real system measurements, similar to VAMPIRE [Ghose+ SIGMETRICS’17], but for HiRA operations

310 of 368

HiRA: Hidden Row Activation for Reducing Refresh Latency of Off-the-Shelf DRAM Chips

Abdullah Giray Yağlıkçı

Ataberk Olgun Minesh Patel Haocong Luo Hasan Hassan

Lois Orosa Oğuz Ergin Onur Mutlu

311 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Results

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • 51.4% reduction in the time spent for refresh operations

  • A given row’s refresh can be performed concurrently with �the activation of any of the 32% of the rows in the same bank

Refresh RowA

32%

ACT RowB

DRAM Bank

HiRA(RowA, RowB)

HiRA effectively reduces the time spent �for refresh operations in off-the-shelf DRAM chips

312 of 368

HiRA in Off-the-Shelf DRAM Chips: Key Results

  • HiRA works in 56 off-the-shelf DRAM chips from SK Hynix

  • 51.4% reduction in the time spent for refresh operations

  • A given row’s refresh can be performed concurrently with �the activation of any of the 32% of the rows in the same bank

Refresh RowA

32%

ACT RowB

DRAM Bank

HiRA(RowA, RowB)

HiRA effectively reduces the time spent �for refresh operations in off-the-shelf DRAM chips

313 of 368

My Dissertation Works

  • Understanding DRAM Read Disturbance

  • Solutions to DRAM Read Disturbance

312

Temperature

Memory Access Patterns

In-Chip

Variations

Voltage

Throttling Unsafe Accesses

Parallelizing Preventive Measures

Leveraging

Heterogeneity

An Example

314 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

315 of 368

Executive Summary

Motivation: Read Disturbance is a worsening DRAM reliability/security problem

Problem: Existing mitigation mechanisms suffer from significant performance� and energy overheads, limited effectiveness, or prohibitively high cost

Goal:

  • To understand the spatial variation in read disturbance across DRAM rows
  • To leverage this understanding to improve the existing mitigation mechanisms

Experimental study: 136 DDR4 DRAM chips from three major vendors

  • Characterize all rows in a bank and a bank from each bank group
  • A large variation in the necessary activation count to induce the first bitflip
  • No strong correlation between a row’s spatial features and its vulnerability

SVÄRD: Dynamically adapts the aggressiveness of a RowHammer defense

  • Implemented in either the DRAM chip or the memory controller
  • Reduces the performance overheads by 2.4x, 1.6x, 2.7%, and 3.0x�for BlockHammer, PARA, Hydra, and RRS

314

316 of 368

DRAM Organization

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

DRAM Cell

Wordline

Row Buffer

Bitline

DRAM Row

DRAM Rank

315

317 of 368

DRAM Operations

ACTIVATE (ACT):

Fetch the row’s content �into the row buffer

Column Access (RD/WR):Read/Write the target �column and drive to I/O

PRECHARGE (PRE): �Prepare the array �for a new ACTIVATE

1

1

1

1

1

2

3

I/O Circuitry

Row

Buffer

DRAM Subarray

316

318 of 368

DRAM Read Disturbance

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening and closing a DRAM row

or keeping a DRAM row open causes bitflips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 1

Row 3

Row 2

closed

Victim Row

Victim Row

Aggressor Row

Row 2

open

Row 2

closed

Aggressor Row

DRAM Subarray

Aggressor Row

RowHammer bitflips

RowPress bitflips

317

319 of 368

DRAM Read Disturbance �and Increasing DRAM Chip Density

Significant performance and energy overhead

Preventive actions need to be performed �more aggressively as DRAM chip density increases

96% Slowdown

DRAM read disturbance worsens �as DRAM chip density increases

318

320 of 368

Our Goal

To understand the spatial variation

in read disturbance across DRAM rows

To leverage this understanding to improve

the existing mitigation mechanisms

319

321 of 368

DRAM Testing Infrastructure

FPGA-based SoftMC (Xilinx Virtex UltraScale+ XCU200)

Xilinx Alveo U200 FPGA Board�(programmed with SoftMC*)

DRAM Module with Heaters

MaxWell FT200 Temperature Controller

PCIe

Host Interface

Fine-grained control over DRAM commands,

timing parameters (±1.5ns), and temperature (±0.1°C )

320

322 of 368

Key Takeaways

DRAM read disturbance vulnerability

significantly varies across DRAM rows

No strong correlation is observed between a row’s spatial features & read disturbance vulnerability

321

323 of 368

Svärd: Spatial Variation Aware Read-Disturb Mitigation

136 DRAM chips from SK Hynix, Micron, and Samsung

Weakest rows experience bitflips �at hammer counts of 4K or 8K

Many rows do not experience bitflips �at hammer counts below 32K

322

A large variation in the minimum hammer count �to induce the first bitflip across rows in a DRAM bank

324 of 368

Svärd: Spatial Variation Aware Read-Disturb Mitigation

  • Observation:Not all parts of the memory �are equally resilient �to Read Disturbance

  • Key Idea: Protect the Weak more aggressively than the Strong

  • Svärd: Dynamically tunes the aggressiveness of defenses�and improves system performance

323

325 of 368

Distribution of HCfirst across DRAM Rows

Minimum Hammer Count to Induce the First Bitflip (HCfirst)

Different

Modules

Weakest rows experience bitflips at hammer counts of 4K

Many rows do not experience bitflips at hammer counts below 24K

324

326 of 368

Weakest rows experience bitflips at hammer counts of 4K or 8K

Many rows do not experience bitflips at hammer counts below 24K

Different rows may experience read disturbance bitflips �at very different hammer counts

Distribution of HCfirst across DRAM Rows

325

327 of 368

RowPress reduces the mean of the distribution with increased tAggOn

RowPress can reduce the variation within the HCfirst distribution

Effect of RowPress on the HCfirst Distribution

Minimum Hammer Count

To Induce the First Bitflip

(HCfirst)

Aggressor Row’s On Time (tAggOn) (ns)

326

328 of 368

There is a significant variation across rows�under the effect of RowPress

DRAM read disturbance vulnerability significantly varies �across DRAM rows under the effect of RowPress

Effect of RowPress on the HCfirst Distribution

Aggressor Row’s On Time (tAggOn) (ns)

Minimum Hammer Count

To Induce the First Bitflip

(HCfirst)

Aggressor Row’s On Time (tAggOn) (ns)

327

329 of 368

Correlation Analysis

Correlation between a DRAM row’s read disturbance vulnerability

  • bank address bits
  • subarray address bits
  • row address bits
  • row’s distance to local row buffer

A small fraction of DRAM chips (28.5%) contain spatial �features that provide >0.7 F1-score for predicting HCfirst

No strong correlation is observed between a row’s spatial features & read disturbance vulnerability

328

330 of 368

Svärd: Spatial Variation Aware �Read Disturbance Mitigation

  • Dynamically adapts the aggressiveness of a mitigation mechanism based on the victim row’s vulnerability level

  • Classifies DRAM rows into several vulnerability-level bins

  • Maintains a few bits (e.g., four bits) for each DRAM row within
    • the memory controller in an SRAM array
    • the parity bits in DRAM
    • the DRAM row itself (e.g., 4 bits for each 8KB capacity)

  • Svärd is implemented nearby the mitigation mechanism
    • the memory controller
    • or the DRAM chip

329

331 of 368

Performance Evaluation

  • Cycle-level simulations using Ramulator 2.0 [Luo+, TCAD 2023]
  • System Configuration:

  • Workloads: 50 different 8-core multiprogrammed workloads � from SPEC CPU2006, SPEC CPU2017, TPC,� MediaBench, and YCSB benchmark suites
  • Paired with BlockHammer, PARA, Hydra, and RRS
  • HCfirst: {4K, 2K, 1K, 512, 256, 128, 64} hammers�The minimum hammer count needed to induce the first bitflip

Processor

3.2 GHz, 8 core, 4-wide issue, 128-entry instr. window

Last-Level Cache

64-byte cache line, 8-way set-associative, 8 MB

Memory Scheduler

FR-FCFS

Address Mapping

Minimalistic Open Pages

Main Memory

DDR4, 4 bank group, 4 banks per bank group (16 banks per rank)

330

332 of 368

Implications on Future Solutions

Reduction in Performance Overhead

Minimum Hammer Count

to Induce the First Bitflip

Weighted Speedup

(Norm. to No Mitigation Baseline)

331

333 of 368

Implications on Future Solutions

Minimum Hammer Count to Induce the First Bitflip

Svärd reduces the performance overhead of mitigation mechanisms

Weighted Speedup

(Norm. to No Mitigation Baseline)

332

334 of 368

Conclusion

Experimental study: 136 DDR4 DRAM chips from 3 major vendors

  • A large variation in the necessary activation count �to induce the first bitflip
  • No strong correlation between a row’s spatial features �and its vulnerability to read disturbance

SVÄRD: Dynamically adapts the aggressiveness of mitigations

  • Implemented in either the DRAM chip or the memory controller
  • Reduces the performance overheads by 2.4x, 2.7%, 1.6x, and 3.0x�for BlockHammer, Hydra, PARA, and RRS

Future Work:

  • A deeper understanding is needed to account for �irregularities in row and column addresses across chips
  • Finding correlations is essential to reduce the hardware cost
  • Reducing also the hardware cost of defenses

333

335 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

336 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips��BACKUP SLIDES

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

337 of 368

Variation in Bit Error Rate

336

338 of 368

HCfirst Across Rows

337

339 of 368

Tested DRAM Chips

338

340 of 368

Hydra Mitigation Mechanism

Qureshi, et al. "Hydra: Enabling low-overhead mitigation of row-hammer �at ultra-low thresholds via hybrid tracking," in ISCA, 2022.

339

341 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips��BACKUP SLIDES

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

342 of 368

Svärd: Spatial Variation Aware �Read Disturbance Defenses

  • Abdullah Giray Yağlıkçı, Geraldo Francisco de Oliveira, Yahya Can Tuğrul, Ismail Emir Yuksel, Ataberk Olgun, Haocong Luo, and Onur Mutlu,�"Spatial Variation-Aware Read Disturbance Defenses: Experimental Analysis of Real DRAM Chips and Implications on Future Solutions,” in HPCA, 2024.��

341

Abdullah Giray Yağlıkçı Geraldo Francisco de Oliveira Yahya Can Tuğrul1

Ismail Emir Yüksel Ataberk Olgun Haocong Luo Onur Mutlu

ETH Zürich 1TOBB University of Economics and Technology

343 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

344 of 368

Executive Summary

Motivation: Read Disturbance is a worsening DRAM reliability/security problem

Problem: Existing mitigation mechanisms suffer from significant performance� and energy overheads, limited effectiveness, or prohibitively high cost

Goal:

  • To understand the spatial variation in read disturbance across DRAM rows
  • To leverage this understanding to improve the existing mitigation mechanisms

Experimental study: 136 DDR4 DRAM chips from three major vendors

  • Characterize all rows in a bank and a bank from each bank group
  • A large variation in the necessary activation count to induce the first bitflip
  • No strong correlation between a row’s spatial features and its vulnerability

SVÄRD: Dynamically adapts the aggressiveness of a RowHammer defense

  • Implemented in either the DRAM chip or the memory controller
  • Reduces the performance overheads by 2.4x, 1.6x, 2.7%, and 3.0x�for BlockHammer, PARA, Hydra, and RRS

343

345 of 368

DRAM Organization

DRAM Chip

Bank

Chip I/O

DRAM Bank

Subarray

. . .

DRAM Subarray

DRAM Cell

Wordline

Row Buffer

Bitline

DRAM Row

DRAM Rank

344

346 of 368

DRAM Operations

ACTIVATE (ACT):

Fetch the row’s content �into the row buffer

Column Access (RD/WR):Read/Write the target �column and drive to I/O

PRECHARGE (PRE): �Prepare the array �for a new ACTIVATE

1

1

1

1

1

2

3

I/O Circuitry

Row

Buffer

DRAM Subarray

345

347 of 368

DRAM Read Disturbance

Row 0

Row 1

Row 2

Row 3

Row 4

Repeatedly opening and closing a DRAM row

or keeping a DRAM row open causes bitflips in nearby cells

Row 2

open

Row 1

Row 3

Row 2

closed

Row 2

open

Row 1

Row 3

Row 2

closed

Victim Row

Victim Row

Aggressor Row

Row 2

open

Row 2

closed

Aggressor Row

DRAM Subarray

Aggressor Row

RowHammer bitflips

RowPress bitflips

346

348 of 368

DRAM Read Disturbance �and Increasing DRAM Chip Density

Significant performance and energy overhead

Preventive actions need to be performed �more aggressively as DRAM chip density increases

96% Slowdown

DRAM read disturbance worsens �as DRAM chip density increases

347

349 of 368

Our Goal

To understand the spatial variation

in read disturbance across DRAM rows

To leverage this understanding to improve

the existing mitigation mechanisms

348

350 of 368

DRAM Testing Infrastructure

FPGA-based SoftMC (Xilinx Virtex UltraScale+ XCU200)

Xilinx Alveo U200 FPGA Board�(programmed with SoftMC*)

DRAM Module with Heaters

MaxWell FT200 Temperature Controller

PCIe

Host Interface

Fine-grained control over DRAM commands,

timing parameters (±1.5ns), and temperature (±0.1°C )

349

351 of 368

Key Takeaways

DRAM read disturbance vulnerability

significantly varies across DRAM rows

No strong correlation is observed between a row’s spatial features & read disturbance vulnerability

350

352 of 368

Distribution of HCfirst across DRAM Rows

Minimum Hammer Count to Induce the First Bitflip (HCfirst)

Different

Modules

Weakest rows experience bitflips at hammer counts of 4K

Many rows do not experience bitflips at hammer counts below 24K

351

353 of 368

Weakest rows experience bitflips at hammer counts of 4K or 8K

Many rows do not experience bitflips at hammer counts below 24K

Different rows may experience read disturbance bitflips �at very different hammer counts

Distribution of HCfirst across DRAM Rows

352

354 of 368

RowPress reduces the mean of the distribution with increased tAggOn

RowPress can reduce the variation within the HCfirst distribution

Effect of RowPress on the HCfirst Distribution

Minimum Hammer Count

To Induce the First Bitflip

(HCfirst)

Aggressor Row’s On Time (tAggOn) (ns)

353

355 of 368

There is a significant variation across rows�under the effect of RowPress

DRAM read disturbance vulnerability significantly varies �across DRAM rows under the effect of RowPress

Effect of RowPress on the HCfirst Distribution

Aggressor Row’s On Time (tAggOn) (ns)

Minimum Hammer Count

To Induce the First Bitflip

(HCfirst)

Aggressor Row’s On Time (tAggOn) (ns)

354

356 of 368

Correlation Analysis

Correlation between a DRAM row’s read disturbance vulnerability

  • bank address bits
  • subarray address bits
  • row address bits
  • row’s distance to local row buffer

A small fraction of DRAM chips (28.5%) contain spatial �features that provide >0.7 F1-score for predicting HCfirst

No strong correlation is observed between a row’s spatial features & read disturbance vulnerability

355

357 of 368

Svärd: Spatial Variation Aware �Read Disturbance Mitigation

  • Dynamically adapts the aggressiveness of a mitigation mechanism based on the victim row’s vulnerability level

  • Classifies DRAM rows into several vulnerability-level bins

  • Maintains a few bits (e.g., four bits) for each DRAM row within
    • the memory controller in an SRAM array
    • the parity bits in DRAM
    • the DRAM row itself (e.g., 4 bits for each 8KB capacity)

  • Svärd is implemented nearby the mitigation mechanism
    • the memory controller
    • or the DRAM chip

356

358 of 368

Performance Evaluation

  • Cycle-level simulations using Ramulator 2.0 [Luo+, TCAD 2023]
  • System Configuration:

  • Workloads: 50 different 8-core multiprogrammed workloads � from SPEC CPU2006, SPEC CPU2017, TPC,� MediaBench, and YCSB benchmark suites
  • Paired with BlockHammer, PARA, Hydra, and RRS
  • HCfirst: {4K, 2K, 1K, 512, 256, 128, 64} hammers�The minimum hammer count needed to induce the first bitflip

Processor

3.2 GHz, 8 core, 4-wide issue, 128-entry instr. window

Last-Level Cache

64-byte cache line, 8-way set-associative, 8 MB

Memory Scheduler

FR-FCFS

Address Mapping

Minimalistic Open Pages

Main Memory

DDR4, 4 bank group, 4 banks per bank group (16 banks per rank)

357

359 of 368

Implications on Future Solutions

Reduction in Performance Overhead

Minimum Hammer Count

to Induce the First Bitflip

Weighted Speedup

(Norm. to No Mitigation Baseline)

358

360 of 368

Implications on Future Solutions

Minimum Hammer Count to Induce the First Bitflip

Svärd reduces the performance overhead of mitigation mechanisms

Weighted Speedup

(Norm. to No Mitigation Baseline)

359

361 of 368

Conclusion

Experimental study: 136 DDR4 DRAM chips from 3 major vendors

  • A large variation in the necessary activation count �to induce the first bitflip
  • No strong correlation between a row’s spatial features �and its vulnerability to read disturbance

SVÄRD: Dynamically adapts the aggressiveness of mitigations

  • Implemented in either the DRAM chip or the memory controller
  • Reduces the performance overheads by 2.4x, 2.7%, 1.6x, and 3.0x�for BlockHammer, Hydra, PARA, and RRS

Future Work:

  • A deeper understanding is needed to account for �irregularities in row and column addresses across chips
  • Finding correlations is essential to reduce the hardware cost
  • Reducing also the hardware cost of defenses

360

362 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

363 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips��BACKUP SLIDES

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor

364 of 368

Variation in Bit Error Rate

363

365 of 368

HCfirst Across Rows

364

366 of 368

Tested DRAM Chips

365

367 of 368

Hydra Mitigation Mechanism

Qureshi, et al. "Hydra: Enabling low-overhead mitigation of row-hammer �at ultra-low thresholds via hybrid tracking," in ISCA, 2022.

366

368 of 368

Understanding and Leveraging�the Spatial Variation�in Read Disturbance Vulnerability �of Real DRAM Chips��BACKUP SLIDES

A. Giray Yağlıkçı Onur Mutlu�PhD Candidate Advisor