HARP: Practically and Effectively Identifying Uncorrectable Errors in Memory Chips That Use On-Die Error-Correcting Codes

📝 Abstract
State-of-the-art techniques for addressing scaling-related main memory errors identify and repair bits that are at risk of error from within the memory controller. Unfortunately, modern main memory chips internally use on-die error correcting codes (on-die ECC) that obfuscate the memory controller’s view of errors, complicating the process of identifying at-risk bits (i.e., error profiling). To understand the problems that on-die ECC causes for error profiling, we analytically study how on-die ECC changes the way that memory errors appear outside of the memory chip (e.g., to the memory controller). We show that on-die ECC introduces statistical dependence between errors in different bit positions, raising three key challenges for practical and effective error profiling. To address the three challenges, we introduce Hybrid Active-Reactive Profiling (HARP), a new error profiling algorithm that rapidly achieves full coverage of at-risk bits in memory chips that use on-die ECC. HARP separates error profiling into two phases: (1) using existing profiling techniques with the help of small modifications to the on-die ECC mechanism to quickly identify a subset of at-risk bits; and (2) using a secondary ECC within the memory controller to safely identify the remaining at-risk bits, if and when they fail. Our evaluations show that HARP achieves full coverage of all at-risk bits faster (e.g., 99th-percentile coverage 20.6%/36.4%/52.9%/62.1% faster, on average, given 2/3/4/5 raw bit errors per ECC word) than two state-of-the-art baseline error profiling algorithms, which sometimes fail to achieve full coverage. We perform a case study of how each profiler impacts the system’s overall bit error rate (BER) when using a repair mechanism to tolerate DRAM data-retention errors. We show that HARP outperforms the best baseline algorithm (e.g., by 3.7x for a raw per-bit error probability of 0.75).
💡 Analysis
State-of-the-art techniques for addressing scaling-related main memory errors identify and repair bits that are at risk of error from within the memory controller. Unfortunately, modern main memory chips internally use on-die error correcting codes (on-die ECC) that obfuscate the memory controller’s view of errors, complicating the process of identifying at-risk bits (i.e., error profiling). To understand the problems that on-die ECC causes for error profiling, we analytically study how on-die ECC changes the way that memory errors appear outside of the memory chip (e.g., to the memory controller). We show that on-die ECC introduces statistical dependence between errors in different bit positions, raising three key challenges for practical and effective error profiling. To address the three challenges, we introduce Hybrid Active-Reactive Profiling (HARP), a new error profiling algorithm that rapidly achieves full coverage of at-risk bits in memory chips that use on-die ECC. HARP separates error profiling into two phases: (1) using existing profiling techniques with the help of small modifications to the on-die ECC mechanism to quickly identify a subset of at-risk bits; and (2) using a secondary ECC within the memory controller to safely identify the remaining at-risk bits, if and when they fail. Our evaluations show that HARP achieves full coverage of all at-risk bits faster (e.g., 99th-percentile coverage 20.6%/36.4%/52.9%/62.1% faster, on average, given 2/3/4/5 raw bit errors per ECC word) than two state-of-the-art baseline error profiling algorithms, which sometimes fail to achieve full coverage. We perform a case study of how each profiler impacts the system’s overall bit error rate (BER) when using a repair mechanism to tolerate DRAM data-retention errors. We show that HARP outperforms the best baseline algorithm (e.g., by 3.7x for a raw per-bit error probability of 0.75).
📄 Content
최신 기술에서는 스케일링으로 인한 메인 메모리 오류를 해결하기 위해 메모리 컨트롤러 내부에서 오류 위험이 있는 비트를 식별하고 복구하는 방식을 사용합니다. 그러나 현재 상용 메인 메모리 칩은 내부에 온‑다이(Die) 오류 정정 코드(on‑die ECC)를 탑재하고 있기 때문에, 메모리 컨트롤러가 오류를 직접 관찰하는 것이 어려워집니다. 온‑다이 ECC가 적용되면 오류가 메모리 칩 내부에서 바로 정정되거나 숨겨지므로, 오류 위험 비트를 찾아내는 과정(즉, 오류 프로파일링)이 복잡해지는 것입니다.
본 논문에서는 온‑다이 ECC가 메모리 오류가 메모리 칩 밖, 예를 들어 메모리 컨트롤러에 어떻게 나타나는지를 분석함으로써, 온‑다이 ECC가 오류 프로파일링에 초래하는 문제점을 규명합니다. 분석 결과, 온‑다이 ECC는 서로 다른 비트 위치에 발생하는 오류들 사이에 통계적 의존성을 도입한다는 사실을 발견했습니다. 이러한 의존성은 다음과 같은 세 가지 핵심 과제를 야기합니다.
- 오류 독립성 가정의 붕괴 – 기존 프로파일링 기법은 각 비트 오류가 서로 독립적이라고 가정하지만, 온‑다이 ECC는 특정 비트가 오류를 일으키면 인접 비트의 오류 확률을 변동시킵니다.
- 오류 탐지 범위의 축소 – 온‑다이 ECC가 오류를 내부에서 정정하면, 컨트롤러는 실제 오류가 발생했는지 여부를 알기 어렵고, 따라서 위험 비트를 완전하게 탐지하지 못할 위험이 있습니다.
- 프로파일링 비용 증가 – 오류 간 의존성을 고려하려면 더 많은 테스트와 복잡한 분석이 필요해, 시간·전력·시스템 자원의 소모가 크게 늘어납니다.
이 세 가지 과제를 해결하기 위해 저희는 Hybrid Active‑Reactive Profiling (HARP) 라는 새로운 오류 프로파일링 알고리즘을 제안합니다. HARP는 온‑다이 ECC가 적용된 메모리 칩에서도 위험 비트를 빠르게 전부 식별할 수 있도록 설계되었습니다. HARP는 오류 프로파일링을 두 단계로 나눕니다.
- 액티브 단계 – 기존의 프로파일링 기법을 그대로 사용하되, 온‑다이 ECC 메커니즘에 소규모 수정(예: 특정 비트에 대한 오류 보고 기능 추가)을 가해 위험 비트의 일부를 신속히 식별합니다. 이 단계에서는 온‑다이 ECC가 오류를 숨기지 못하도록 제한적인 신호를 삽입함으로써, 초기 탐지율을 크게 높일 수 있습니다.
- 리액티브 단계 – 메모리 컨트롤러 내부에 보조 ECC(secondary ECC)를 배치하여, 액티브 단계에서 놓친 나머지 위험 비트를 안전하게 찾아냅니다. 보조 ECC는 실제 오류가 발생했을 때만 작동하도록 설계되어, 불필요한 오버헤드를 최소화하면서도 남은 비트를 완전하게 커버합니다.
저희 실험 결과에 따르면, HARP는 두 개의 최신 베이스라인 오류 프로파일링 알고리즘에 비해 전반적인 위험 비트 커버리지를 훨씬 빠르게 달성합니다. 구체적으로, ECC 워드당 2·3·4·5개의 원시 비트 오류가 존재할 경우, 99번째 백분위수(99th‑percentile) 커버리지가 각각 평균 20.6 %, 36.4 %, 52.9 %, 62.1 % 더 빠르게 도달했습니다. 또한 일부 베이스라인 알고리즘은 전체 비트를 전부 탐지하지 못하는 경우가 있었지만, HARP는 언제나 완전한 커버리지를 보장합니다.
마지막으로, DRAM 데이터 유지 시간 오류를 견디기 위한 복구 메커니즘을 적용했을 때 시스템 전체 비트 오류율(BER)에 미치는 영향을 평가하기 위해 사례 연구를 수행했습니다. 그 결과, HARP는 가장 성능이 좋은 베이스라인 알고리즘보다 3.7배 더 낮은 BER을 달성했으며, 이는 원시 비트 오류 확률이 0.75인 상황에서도 동일하게 관측되었습니다.
요약하면, 온‑다이 ECC가 도입되면서 발생하는 오류 의존성 문제를 정확히 분석하고, 이를 극복하기 위한 두 단계 혼합형 프로파일링 기법인 HARP를 제시함으로써, 현대 메모리 시스템에서 오류 프로파일링의 효율성과 신뢰성을 크게 향상시켰습니다. 앞으로도 온‑다이 ECC와 같은 하드웨어 수준의 오류 정정 기술이 보편화됨에 따라, HARP와 같은 하이브리드 접근법이 메모리 신뢰성 보장에 핵심적인 역할을 할 것으로 기대됩니다.