모든 이야기

NAND를 읽을 때 비선택 wordline 전압을 너무 낮춰도 오류가 나는 이유

NAND read disturb를 낮추려고 비선택 wordline의 Vpass를 줄였다. 반복 전압 stress는 낮아졌는데 곧바로 read 오류가 늘 수 있다. 선택한 셀의 기준 전압을 바꾸지 않았더라도 읽기 경로가 중간에서 막힐 수 있기 때문이다. Vpass는 disturb를 만드는 전압이면서 직렬 string을 통과 가능하게 만드는 전압이다.

NAND string에는 여러 cell transistor가 직렬로 연결된다. 읽으려는 cell 하나의 상태를 sensing하려면 나머지 cell들이 전달 경로를 막지 않아야 한다. 그래서 selected wordline에는 state를 판별할 read reference를, unselected wordline에는 충분히 높은 pass voltage를 가한다. 이웃 셀의 저장 state와 무관하게 통과시키는 것이 목적이다.

Errors in Flash-Memory-Based Solid-State Drives 2.3절과 3.5절은 unread cell의 pass-through 역할과 반복 pass bias의 read disturb를 설명한다. 4.5절의 pass-through voltage optimization은 이 두 조건 사이의 여유를 활용한다. pass voltage를 낮추는 효과를 평가할 때는 selected cell만 보면 부족하다.

하나의 높은 threshold가 경로를 막는 가상 예

세 cell이 있는 단순 string에서 가운데 cell을 읽는다고 하자. 양옆 unselected cell의 threshold는 각각 2V와 5V다. source 전위와 body 효과를 생략한 switch model에서 Vpass = 6V면 둘 다 켜질 수 있다. Vpass를 4.5V로 낮추면 threshold 5V인 cell이 꺼져 전체 전류 경로를 막는다.

이때 가운데 cell이 read 기준에서 켜지는 상태라도 sense amplifier는 전류가 작은 결과를 볼 수 있다. selected cell의 저장 상태를 잘못 판별한 것처럼 보이지만 원인은 다른 cell의 pass 실패다. 실제 transistor에서는 충분한 overdrive와 직렬 저항도 필요하므로 Vpass가 threshold를 아주 조금 넘었다고 곧바로 안전하다는 뜻은 아니다.

이 가상 model은 제품의 정격 전압이 아니다. cell 수, channel 전위, select device와 분포 tail이 실제 필요값을 바꾼다. 원리는 직렬 경로의 가장 통과하기 어려운 셀도 고려해야 한다는 것이다.

전압을 높인 비용은 누적된다

pass bias는 normal read에서 정보를 바꾸지 않아야 한다. 그러나 충분히 반복하면 unread cell의 threshold가 움직여 read disturb가 생길 수 있다. Vpass를 줄이면 그 영향을 낮출 여지가 있지만, 높게 program된 셀들을 켜는 margin도 줄어든다. 동일 knob가 장기 stress와 즉시 sensing 정확성에 반대 방향으로 작용하는 셈이다.

페이지에 high-threshold state가 얼마나 많고 분포 tail이 어느 정도인지에 따라 허용 여유가 다르다. age와 wear, 온도 조건이 바뀌어도 pass margin을 다시 확인해야 한다. 평균 threshold만 보고 낮추면 드물게 나타나는 높은 tail의 셀이 직렬 path를 막을 수 있다.

ECC 여유를 쓰는 정책도 총 오류를 봐야 한다

일부 정책은 Vpass를 낮춰 생기는 즉시 오류가 correction 여유 안에 머무는 범위에서 disturb를 줄인다. 이 접근은 pass-induced 오류만 따로 0으로 만들어야 한다는 조건보다 넓은 선택지를 준다. 하지만 correction budget은 retention·wear·다른 noise도 함께 사용한다. 현재 테스트에서 남아 보이는 여유를 전부 소비하면 이후 조건에서 부족할 수 있다.

read가 실패했을 때 reference를 조정하는 retry와 Vpass를 조정하는 변경도 같은 작업이 아니다. 전자는 selected cell의 상태 경계를 움직이고 후자는 unread cell의 통과 조건을 바꾼다. 어느 쪽이 오류를 만들었는지 분리한 검사가 있어야 원래 data를 해석할 정보가 회복된다.

Vpass의 적절한 값은 “낮을수록 안전”이라는 방향 하나로 결정되지 않는다. 반복 stress를 낮추는 이득과 직렬 경로를 유지하는 minimum 사이에 창이 있어야 한다. selected·unselected cell을 나누어 그 창과 오류 budget을 확인하면, 읽기 전압을 낮춘 변경이 오히려 즉시 오류를 만드는 이유를 설명할 수 있다.