NAND PE Cycling – Data Retnetion 관계
Table of Contents
NAND 플래시 메모리는 현대 디지털 기기의 중요한 저장 매체로 자리 잡고 있습니다.
스마트폰, 태블릿, SSD, USB 드라이브 등 많은 기기가 NAND 플래시 메모리를 사용하여 데이터를 저장하고 있습니다.
이러한 메모리의 성능과 수명에 큰 영향을 미치는 요소 중 하나가 바로 PE Cycling(Program/Erase Cycling)입니다.
이번 글에서는 글에서는 PE 사이클링이 무엇인지, 그리고 이것이 데이터 보존에 어떤 영향을 미치는지에 대해 알아보겠습니다.
NAND 플래시의 구조와 동작원리
많은 Memory 종류 중 NAND 는 NVM (Nonvolitile Memory) 로써, 특이한 점을 갖고 있습니다. 그리고 그 특이성 때문에 PE Cycling 과 Data Retention 에 영향을 끼치는 일이 발생합니다. PE Cycling 을 이해하려면 NAND 의 구조와 동작원리를 알아야 합니다. NAND 는 아래와 같은 구조로 이루어 져 있습니다.

1. 제어 게이트(Control Gate) : NAND 셀에서 데이터를 프로그램하거나 지울 때 필요한 전압을 제어하는 역할을 합니다. 그림에서 파란색 영역으로 표시되어 있습니다.
2. 플로팅 게이트(Floating Gate) : NAND 셀의 핵심 부분으로, 전자를 저장하여 데이터를 기록하는 역할을 합니다. 전자가 플로팅 게이트에 주입되면 1로, 제거되면 0으로 데이터를 저장합니다. 그림에서 녹색 영역으로 표시되어 있습니다.
3. 터널 산화막(Tunnel Oxide) : 플로팅 게이트와 실리콘 기판(Substrate) 사이에 위치하여 전자의 주입과 제거를 돕는 얇은 산화막 층입니다. 그림에서 주황색 영역으로 표시되어 있습니다.
4. 소스(Source)와 드레인(Drain) : NAND 셀의 양쪽 끝에 위치하며, 전자의 흐름을 시작하고 끝내는 역할을 합니다. 그림에서 분홍색 영역으로 표시되어 있습니다.
NAND 의 동작 원리
데이터 기록(Program) : 제어 게이트에 높은 전압을 가하여 플로팅 게이트에 전자를 주입합니다. 이로 인해 플로팅 게이트는 전하를 띠게 되고, 셀은 1로 기록됩니다.
데이터 소거(Erase) : 제어 게이트에 반대 전압을 가하여 플로팅 게이트에서 전자를 제거합니다. 이로 인해 플로팅 게이트는 중성 상태로 돌아가며, 셀은 0으로 소거됩니다.
데이터 읽기(Read) : 낮은 전압을 제어 게이트에 가하여 플로팅 게이트에 전자가 있는지 확인합니다. 전자가 있으면 셀은 1로, 없으면 0으로 읽힙니다.
PE Cycling (Program/Erase Cycling)이란?
PE Cycling은 NAND 플래시 메모리 셀에서 데이터 쓰기(Program)와 지우기(Erase) 과정을 반복하는 것을 의미합니다.
- 프로그램(Program): NAND 셀에 데이터를 기록하는 과정입니다. 전압을 가하여 플로팅 게이트에 전자를 주입함으로써 데이터를 저장합니다.
- 소거(Erase): 기록된 데이터를 지우는 과정입니다. 플로팅 게이트의 전자를 제거하여 셀을 초기 상태로 되돌립니다. 이 과정은 일반적으로 블록 단위로 이루어집니다.
PE Cycling의 중요성
PE Cycling은 NAND 플래시 메모리의 수명과 성능에 직결되는 중요한 요소입니다. 주요 이유는 다음과 같습니다:
- 셀의 마모: PE 사이클이 반복되면서 셀의 산화막이 점차 손상됩니다. 이는 셀의 물리적 구조를 약화시키고, 결과적으로 셀의 고장을 초래할 수 있습니다.
- 성능 저하: 반복적인 프로그램 및 소거 작업은 셀의 전기적 특성을 변하게 하여 데이터의 읽기/쓰기 성능을 저하시킬 수 있습니다.
- 데이터 보존 능력 감소: PE 사이클이 증가함에 따라 데이터가 시간이 지나면서 변형되거나 손실될 가능성이 높아집니다.
PE Cycling 관리 방법
NAND 플래시 메모리의 수명과 성능을 최적화하기 위해서는 PE Cycling을 효과적으로 관리해야 합니다. 이를 위한 주요 방법은 다음과 같습니다:
- 웨어 레벨링(Wear Leveling): NAND 플래시 메모리의 모든 블록이 균등하게 사용되도록 하여 특정 블록의 과도한 마모를 방지하는 기술입니다. 이를 통해 전체적인 메모리 수명을 연장할 수 있습니다.
- 에러 정정 코드(Error Correction Code, ECC): 데이터를 읽을 때 발생할 수 있는 오류를 수정하는 기술입니다. PE 사이클이 증가함에 따라 발생하는 오류를 보완하여 데이터의 무결성을 유지하는 데 도움을 줍니다.
- 고급 소자 설계: 셀의 내구성을 향상시키기 위해 새로운 소재나 구조를 사용하는 방법입니다. 예를 들어, 3D NAND와 같은 기술이 대표적입니다.
- 관리 소프트웨어: 펌웨어나 드라이버 수준에서 메모리의 상태를 모니터링하고 최적화하는 소프트웨어를 사용하여 수명과 성능을 개선할 수 있습니다.
PE Cycling과 NAND 셀의 마모
PE 사이클이 반복되면서 NAND 셀의 산화막에 손상이 누적됩니다. 이는 셀의 물리적 구조가 점차 열화되며, 결국 셀의 전기적 특성이 변하게 됩니다. 이러한 변화는 데이터 읽기/쓰기 성능 저하뿐만 아니라 데이터 보존 능력에도 영향을 미칩니다.
데이터 보존(Data Retention)이란?
데이터 보존은 NAND 플래시 메모리에 기록된 데이터가 오랜 시간 동안 유지되는 능력을 의미합니다. 일반적으로, 데이터 보존 기간은 몇 년에서 수십 년까지 다양할 수 있습니다. 그러나 PE 사이클이 증가함에 따라 셀의 전기적 특성이 변하기 때문에 데이터 보존 능력은 감소하게 됩니다.
PE Cycling과 데이터 보존의 관계
PE Cycling과 데이터 보존은 밀접하게 연관되어 있습니다. 다음은 이들의 관계를 설명하는 주요 포인트입니다:
- 셀 열화 및 데이터 보존 감소
- PE 사이클이 증가할수록 셀의 열화가 진행되어, 플로팅 게이트에 전자를 정확하게 유지하기 어려워집니다. 이는 데이터가 시간이 지나면서 변형되거나 손실될 가능성을 높입니다.
- 리텐션 오류 증가
- 높은 PE 사이클 이후에는 리텐션 오류가 발생할 확률이 높아집니다. 이는 셀이 데이터를 보존하는 능력이 떨어져서, 데이터가 원래 상태에서 벗어나는 경우를 말합니다.
- 웨어 레벨링의 중요성
- 웨어 레벨링은 NAND 플래시 메모리의 모든 블록이 균등하게 사용되도록 하여 특정 블록의 과도한 마모를 방지하는 기술입니다. 이를 통해 PE 사이클이 특정 블록에 집중되는 것을 막아 전체적인 데이터 보존 능력을 향상시킬 수 있습니다.
- 에러 정정 코드(ECC)
- ECC는 데이터 보존 능력이 떨어지는 NAND 플래시 메모리에서 발생할 수 있는 오류를 수정하는 데 중요한 역할을 합니다. 이는 PE 사이클이 증가함에 따라 발생할 수 있는 데이터 오류를 보완하여 데이터의 무결성을 유지하는 데 도움이 됩니다.

X축 (PE Cycles): NAND 플래시 메모리 셀에 데이터가 쓰여지고 지워지는 프로그램/소거 사이클의 횟수입니다. 0에서 10,000회까지의 PE 사이클을 나타냅니다.
Y축 (Data Retention): 데이터 보존 기간을 년 단위로 나타낸 것입니다.
초기에는 데이터 보존 기간이 약 10년 정도입니다. 이는 NAND 플래시 메모리가 상대적으로 새로운 상태일 때의 데이터 보존 능력을 반영합니다.
PE 사이클이 증가함에 따라 데이터 보존 기간이 기하급수적으로 감소하는 것을 볼 수 있습니다. 이는 프로그램 및 소거 과정이 반복되면서 NAND 셀이 열화되고, 데이터 보존 능력이 약화되기 때문입니다.
그래프에서 빨간색 점선은 임계 보존 임계값(1년)을 나타냅니다. 이는 실질적인 데이터 보존의 최저 한계로 볼 수 있습니다. PE 사이클이 약 5,000회를 넘어서면 데이터 보존 기간이 1년 이하로 떨어지는 것을 볼 수 있습니다.