Hardware Security: Advanced Topics and Trends

Which correctly describes the idea of PRAC (per-row activation counting), added to the DDR5 standard updated in 2024 (JESD79-5C)?

  1. AThe memory controller stops counting activations, and all refreshes inside the DRAM are also carried out by the external controller commanding them one row at a time
  2. BThe DRAM counts activations per row and, if a row exceeds a threshold, notifies the controller and obtains time to refresh the neighbouring rows
  3. CA row activated more often than a set number of times is permanently disabled by the DRAM and replaced by a spare row prepared at manufacturing
Show answer and explanation

Answer: B. The DRAM counts activations per row and, if a row exceeds a threshold, notifies the controller and obtains time to refresh the neighbouring rows

Earlier countermeasures had in-DRAM TRR track only a few rows or, as with DDR5 RFM, had the memory controller count activations per bank and give the DRAM extra time. With PRAC the DRAM keeps a counter for each row and counts that row's activations every time, so nothing is missed because of a limit on how many rows can be tracked. When a count exceeds the threshold, the DRAM notifies the controller, has accesses paused for a while and refreshes the area around the targeted row. Updating the counters is said to lengthen timing parameters such as the time to close a row, so there is a trade-off with performance.

  • A. PRAC counts activations per row inside the DRAM; it is not a mechanism in which all refreshes are commanded from outside.
  • B. Correct. Rows are counted exactly, and time for countermeasures is requested when needed.
  • C. Rows are not disabled; flips are prevented by refreshing the neighbouring rows.
Practice this topic Back to topic

Books on Hardware Security: Advanced Topics and Trends Ad

As an Amazon Associate I earn from qualifying purchases.

More Hardware Security: Advanced Topics and Trends questions

  1. For simplicity, take the shortest interval at which rows in the same bank can be activated to be tRC = 50 ns. With a refresh period of 64 ms, the maximum number of times a neighbouring row can be activated between one refresh of a given row and the next is 64 ms ÷ 50 ns. What is this maximum number when the refresh rate is doubled?
  2. Which correctly describes the characteristics of the vulnerability called MDS (Microarchitectural Data Sampling), published in 2019?
  3. Which correctly pairs the descriptions of retpoline and IBRS, countermeasures against the Spectre variant that abuses indirect branch prediction (branch target injection)?
  4. A task took 10 seconds before mitigations for speculative execution were applied and made 5 million system calls during that time. Assume that the mitigations increase the processing time per system call from 0.4 µs to 0.6 µs and leave the time of everything else unchanged. By what proportion does the total time of the task increase?
  5. Lattice-based post-quantum cryptography repeatedly multiplies polynomials of degree n = 256. If the naive method of multiplying every pair of coefficients needs about n² multiplications and the method using the number-theoretic transform (NTT) needs about n log₂ n, which is closest to the factor by which the NTT reduces the number of multiplications?