본 논문은 POSTECH의 CAOS Lab의 박지성 교수님께서 집필하신 논문이고, Word Line에서의 새로운 RR 테크닉을 소개하는 짧은 논문으로 리뷰하면 좋을 듯 하여 글을 남긴다.
STRAW(Stress-Aware)
Read disturbance가 NAND Flash memory에서는 큰 문제가 될 수 있는데, 관련된 연구는 많이 진행되지 않았다. 기존의 Read Reclaim 방법은 WL-level로 진행되지 않아 asymmetrical했는데, 이를 해결 할 수 있는 Word Line 레벨의 Selectively RR 테크닉을 소개한다.
최근에 Flash memory chip 자체가 많이 dense하게 들어가다보니, 1년에 2.4배 이상씩 늘어나고 있는 추세이다. Virtual 3D Stacking을 통해 위로 쌓기도 하고, MLC, TLC 처럼 density 자체가 늘어가고 있다.
허나 이런 capacity-oriented design이 결국 retention loss, 즉 전하 유출이 될 possibility 자체가 높아지고, 이는 곧 데이터 손실로 이어질 수 있는 위험한 문제가 될 수 있다.
보통 이런 문제를 해결하기 위해서는 Read Reclaim을 Trigger해서 기존의 Valid한 페이지들을 다른 free한 page에 옮겨 쓰는 방식을 택한다. naive 하게는 특정 RC 값을 정해놓고 (Read Count), 그 값 이상으로 Word Line이 접근되었을 때 RR을 트리거 하게 되는 로직이다.
허나 3D Stacking을 통해 설계된 경우를 예로 들어 생각해보면, 특정 Word Line이 접근되었을 때, 즉 High Voltage가 가해졌을 때, 그 위아래 Word Line은 멀리 떨어져 있는 Word Line보다 당연히 더 영향을 받는다는 것이 역제곱 법칙 때문에 자명하다. 이 논문에서는 즉 same block이지만 exact neighbor WL이 더 영향을 많이 받게 되고, 이로부터 발생되는 Read disturbance의 Asymmetry가 block-level에서의 RR을 굉장히 비효율적으로 만든다고 이야기한다. k번째 WL에 Voltage가 가해졌을 때, k-1번째와 k+1번째 WL이 가장 크게 영향이 받는 것을 생각하면 된다.
때문에, 어떤 특정 Strategy를 써서 이런 High Stress를 받는 WL만 선택적으로 RR을 수행하면 되지 않겠느냐.가 이 논문에서 제안하는 해결방안이다.
위 Fig 1에서 볼 수 있는 것처럼, WL4에 Voltage가 가해진 경우, 가까운 WL3과 WL5의 read disturbance 정도가 거리가 먼 나머지 WL보다 심하다는 것을 볼 수 있다. 오른쪽 그림의 경우 이러한 상황이 반복되는 경우 WL의 tolerable read count 자체가 차이가 심하다는 것을 알 수 있다.
왼쪽 그림은 특정 WL35만 계속 Read 하는 경우 금방 근처 WL이 영향을 받아 ECC limit에 도달하는 것을 볼 수 있다. 가운데 그림은 반명 sequentially 하게 여러 Word line에 접근하는 경우 골고루 영향을 받게 되어 ECC limit에 도달하지 않는 것을 관측할 수 있다. 즉 Read pattern에 따라 차이가 날 수 있고, 그 차이는 ECC limit까지 도달하기의 Read count 수 차이가 10배 가까이 날 수 있다는 실험 결과를 보여준다.
때문에 이를 해결하기 위해서는, REC라고 하는 Lookup table을 보고 특정 Block의 RC 값과 WL의 RC값, 그리고 그 위아래 WL의 RC 값을 가져온다. 그 후 Read disturbance rate인 알파를 정의한 다음, ERC 값을 구한다.
그렇게 구한 ERC 값이 RPT 테이블에 적힌 ERC max 값보다 큰지 작은지 판별하는데, 크다면 heavily하게 stress를 받은 Word line이라고 판별하고 RR을 트리거한다.