KR20140058738A - 반도체 메모리 장치 및 이의 동작 방법 - Google Patents

반도체 메모리 장치 및 이의 동작 방법 Download PDF

Info

Publication number
KR20140058738A
KR20140058738A KR1020120124234A KR20120124234A KR20140058738A KR 20140058738 A KR20140058738 A KR 20140058738A KR 1020120124234 A KR1020120124234 A KR 1020120124234A KR 20120124234 A KR20120124234 A KR 20120124234A KR 20140058738 A KR20140058738 A KR 20140058738A
Authority
KR
South Korea
Prior art keywords
data
read
read voltage
cells
voltage
Prior art date
Application number
KR1020120124234A
Other languages
English (en)
Other versions
KR102069864B1 (ko
Inventor
강원경
Original Assignee
에스케이하이닉스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020120124234A priority Critical patent/KR102069864B1/ko
Priority to US13/846,599 priority patent/US9343163B2/en
Publication of KR20140058738A publication Critical patent/KR20140058738A/ko
Application granted granted Critical
Publication of KR102069864B1 publication Critical patent/KR102069864B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory

Abstract

반도체 메모리 장치 및 이의 동작 방법은 무빙리드 동작, 랜더마이즈 동작 및 프로그램/소거 보상 동작을 독립적으로 또는 조합하여 실시하여 리드 동작 시에 사용되는 리드 전압을 변경함으로써 프로그램/소거 사이클링 효과 또는 리텐션 효과에 의해 메모리 셀들의 문턱전압 분포가 변동되는 경우에도 에러 없이 리드 동작을 안정적으로 실시할 수 있고, 리드 동작 시 소요되는 시간을 감소시킬 수 있다.

Description

반도체 메모리 장치 및 이의 동작 방법{Semiconductor memory device and operating method thereof}
본 발명은 리드 동작을 실시하는 반도체 메모리 장치 및 이의 동작 방법에 관한 것이다.
도 1은 사이클링(cycling) 및 리텐션(retention) 효과에 의한 메모리 셀들의 문턱전압분포의 변화를 설명하기 위한 도면이다.
일반적으로 반도체 메모리 장치의 메모리 셀에 데이터를 저장하기 위해서 프로그램 동작을 실시하여 메모리 셀의 문턱전압을 상승시킨다. 프로그램 동작 시 컨트롤 게이트에 고전압을 인가하면, FN 터널링에 의해 플로팅 게이트에 전자가 유입되어 메모리 셀의 문턱전압이 상승한다. 그러나 메모리 셀에 프로그램/소거 동작이 반복됨에 따라 플로팅 게이트에 유입되었던 전자들이 터널 산화막 등에 트랩된다. 이로 인해 프로그램/소거 사이클링 횟수가 증가할수록 메모리 셀들의 프로그램 속도가 빨라지는 현상이 알려져 있다.
도 1을 참조하면, 프로그램/소거 사이클링 횟수가 증가할수록 N 번째 분포의 우측이 점점 넓어지는 것을 볼 수 있다.
한편, 반도체 메모리 중 특히 낸드 플래시 메모리에서는 저장된 데이터가 전원이 꺼져있는 상태에서도 오랜 시간 동안(예: 10년 이상) 유지되어야 하는데, 이를 신뢰성(Reliability)이라 한다. 플래시 메모리가 고집적화됨에 따라 메모리 셀의 크기가 감소하고 각 분포 사이의 간격이 매우 좁아진다. 분포가 좁아지면 플로팅 게이트에 저장된 전자의 개수를 민감하게 조절해야 하며, 신뢰성을 위해서 시간에 따른 전자의 손실을 억제해야 한다. 하지만, 셀의 크기가 작아지고 하나의 셀에 저장된 전자의 개수가 줄어들면서 전자 하나의 손실이 분포상에서 크게 영향을 미치게 된다. 전자는 음전하를 나타내므로 전자의 손실은 분포를 좌측으로 이동시킨다.
도 1을 참조하면, 시간(time)이 증가할수록 리텐션 효과에 의해 N+1 번째 분포의 좌측이 점점 넓어지는 것을 볼 수 있다.
이로 인해, 기준 분포(N+1)의 좌측 셀과 기준분포의 바로 하위 분포(N)의 우측 셀이 분포상에서 교차되는 문제가 발생한다. 리드 동작 시 발생하는 에러(error)를 방지하기 위해 리드 전압을 변경시킬 필요가 있다.
본 발명의 실시예는 리드 동작 시 사용되는 리드 전압을 최적화하여 리드 동작 시 발생되는 에러를 방지할 수 있다.
반도체 메모리 장치의 동작 방법은 LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수를 카운팅하는 단계, 상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수를 카운팅하는 단계, 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수를 카운팅하는 단계, 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수를 카운팅하는 단계, 상기 제1 기준 셀들의 개수와 상기 제1 비교 셀들의 개수의 차이에 따라 상기 제2 리드 전압의 크기를 변경하는 단계, 및 상기 제2 기준 셀들의 개수와 상기 제2 비교 셀들의 개수의 차이에 따라 상기 제3 리드 전압의 크기를 변경하는 단계를 포함한다.
반도체 메모리 장치의 동작 방법은 입력 데이터를 제1 내지 제4 데이터로 랜더마이즈(randomize)하는 단계, 랜더마이즈된 데이터를 프로그램하는 단계, 제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수를 카운팅하는 단계, 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수를 카운팅하는 단계, 상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 셀들의 개수의 차이에 따라 제2 리드전압의 크기를 변경하는 단계, 및 상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제2 셀들의 개수의 차이에 따라 제3 리드전압의 크기를 변경하는 단계를 포함한다.
반도체 메모리 장치의 동작 방법은 입력되는 모드 선택 명령에 응답하여 무빙리드 모드, 랜더마이즈 모드, 및 프로그램/소거 보상 모드 중 하나 이상의 모드를 선택하는 단계, 및 선택된 모드에 따른 동작을 실시하는 단계를 포함하되, 무빙리드 모드가 선택되면 메모리 셀들에 프로그램된 데이터와 상기 메모리 셀들로부터 독출된 데이터의 차이에 따라 리드 전압의 크기를 변경하고, 랜더마이즈 모드가 선택되면 입력 데이터와 랜덤값(random value)를 랜더마이즈하여 상기 메모리 셀들에 상기 입력 데이터를 프로그램하고, 프로그램/소거 보상 모드가 선택되면 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하는 것을 특징으로 한다.
반도체 메모리 장치는 메모리 셀들을 포함하는 메모리 어레이, LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수와 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수의 차이에 따라 제2 리드 전압의 크기를 변경하고, 상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수와 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수의 차이에 따라 제3 리드 전압의 크기를 변경하도록 구성된 리드 전압 추정부, 및 상기 리드 전압 추정부의 제어 신호에 응답하여 변경된 리드 전압을 상기 메모리 어레이에 공급하도록 구성된 리드 전압 공급부를 포함한다.
반도체 메모리 장치는 메모리 셀들을 포함하는 메모리 어레이, 입력 데이터를 제1 내지 제4 데이터로 랜더마이즈(randomize)하는 랜더마이저(randomizer), 상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수의 차이에 따라 제2 리드 전압의 크기를 변경하고, 상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수의 차이에 따라 제3 리드 전압의 크기를 변경하도록 구성된 리드 전압 추정부, 및 상기 리드 전압 추정부의 제어 신호에 응답하여 변경된 리드 전압을 상기 메모리 어레이에 공급하도록 구성된 리드 전압 공급부를 포함한다.
반도체 메모리 장치는 메모리 셀들을 포함하는 메모리 어레이, 상기 메모리 셀들에 데이터를 프로그램하거나 상기 메모리 셀들로부터 데이터를 독출하도록 구성된 페이지 버퍼 그룹, 상기 메모리 어레이에 동작 전압을 공급하도록 구성된 전압 공급 회로, 입력 데이터를 랜더마이즈하기 위한 랜덤값(random value)을 상기 페이지 버퍼 그룹에 출력하도록 구성된 랜덤값 생성 회로, 및 명령 신호에 응답하여 상기 페이지 버퍼 그룹 및 상기 랜덤값 생성 회로를 제어하고, 상기 메모리 셀들에 프로그램된 제1 데이터와 상기 메모리 셀들로부터 독출된 제2 데이터의 차이에 따라 리드 전압의 크기를 변경하거나 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하도록 상기 전압 공급 회로를 제어하는 제어회로를 포함한다.
반도체 메모리 장치 및 이의 동작 방법은 무빙리드 동작, 랜더마이즈 동작 및 프로그램/소거 보상 동작을 독립적으로 또는 조합하여 실시하여 리드 동작 시에 사용되는 리드 전압을 변경함으로써 프로그램/소거 사이클링 효과 또는 리텐션 효과에 의해 메모리 셀들의 문턱전압 분포가 변동되는 경우에도 에러 없이 리드 동작을 안정적으로 실시할 수 있고, 리드 동작 시 소요되는 시간을 감소시킬 수 있다.
도 1은 사이클링(cycling) 및 리텐션(retention) 효과에 의한 메모리 셀들의 문턱전압분포의 변화를 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 반도체 메모리 장치를 설명하기 위한 블록도이다.
도 3은 도 2에 도시된 메모리 블록을 설명하기 위한 회로도이다.
도 4는 도 2에 도시된 페이지 버퍼를 설명하기 위한 회로도이다.
도 5는 도 2에 도시된 제어회로의 세부 구성을 설명하기 위한 블록도이다.
도 6은 도 5에 도시된 리드전압 추정부의 세부 구성을 설명하기 위한 블록도이다.
도 7은 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 프로그램 동작을 설명하기 위한 흐름도이다.
도 8은 도 7에 도시된 랜더마이즈(randomize) 모드를 설명하기 위한 도면이다.
도 9는 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 리드 동작을 설명하기 위한 흐름도이다.
도 10 내지 도 12는 도 9에 도시된 무빙 리드 모드를 설명하기 위한 도면이다.
도 13은 도 9의 리드 동작 중 프로그램/소거 보상 모드를 설명하기 위한 도면이다.
도 14는 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 소거 동작을 설명하기 위한 도면이다.
도 15는 본 발명의 실시예에 따른 메모리 시스템을 간략히 보여주는 블록도이다.
도 16은 앞서 설명된 다양한 실시예들에 따라 프로그램 동작을 수행하는 퓨전 메모리 장치 또는 퓨전 메모리 시스템을 간략히 보여주는 블록도이다.
도 17은 본 발명의 실시예에 따른 플래시 메모리 장치를 포함한 컴퓨팅 시스템을 간략히 보여주는 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명하기로 한다. 그러나, 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 단지 본 실시예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범위는 본원의 특허 청구 범위에 의해서 이해되어야 한다.
도 2는 본 발명의 실시예에 따른 반도체 메모리 장치를 설명하기 위한 회로도이다. 도 3은 도 2에 도시된 메모리 블록을 설명하기 위한 회로도이다.
본 발명의 실시예에 따른 반도체 메모리 장치는 다수의 메모리 블록들(110MB)을 포함하는 메모리 어레이(110), 메모리 블록(110MB)의 선택된 페이지에 포함된 메모리 셀들의 프로그램 동작, 리드 동작, 소거 동작 및 랜더마이즈 동작을 수행하도록 구성된 동작 회로(130, 140, 150, 160, 170, 180), 동작 회로(130, 140, 150, 160, 170, 180)를 제어하도록 구성된 제어 회로(120)를 포함한다. 동작 회로는 전압 공급 회로(135), 페이지 버퍼 그룹(150), 컬럼 선택 회로(160), 입출력 회로(170) 및 랜덤값 생성 회로(180)를 포함한다.
메모리 어레이(110)는 복수의 메모리 블록들(110MB)을 포함한다.
도 3을 참조하면, 각각의 메모리 블록은 비트라인들(BLe1~BLek, BLo1~BLok)과 공통 소스 라인(CSL) 사이에 연결된 다수의 스트링들(STe1~STek, STo1~STok)을 포함한다. 즉, 스트링들(STe1~STok)은 대응하는 비트 라인들(BLe1~BLok)과 각각 연결되고 공통 소스 라인(CSL)과 공통으로 연결된다. 각각의 스트링(STe1)은 소스가 공통 소스 라인(CSL)에 연결되는 소스 셀렉트 트랜지스터(SST), 복수의 메모리 셀들(C0e1~Cne1), 그리고 드레인이 비트라인(BLe1)에 연결되는 드레인 셀렉트 트랜지스터(DST)를 포함한다. 메모리 셀들(C0e1~Cne1)은 셀렉트 트랜지스터들(SST, DST) 사이에 직렬로 연결된다. 소스 셀렉트 트랜지스터(SST)의 게이트는 소스 셀렉트 라인(SSL)에 연결되고, 메모리 셀들(C0e1~Cne1)의 게이트들은 워드라인들(WL0~WLn)에 각각 연결되며, 드레인 셀렉트 트랜지스터(DST)의 게이트는 드레인 셀렉트 라인(DSL)에 연결된다.
메모리 블록에 포함된 메모리 셀들은 물리적 페이지 단위 또는 논리적 페이지 단위로 구분할 수 있다. 예를 들어, 하나의 워드라인(예, WL0)에 연결된 메모리 셀들(C0e1~C0ek, C0o1~C0ok)이 하나의 물리적 페이지(PAGE0)를 구성한다. 또한, 하나의 워드라인(예, WL0)에 연결된 짝수 번째 메모리 셀들(C0e1~C0ek)이 하나의 이븐 물리적 페이지를 구성하고, 홀수 번째 메모리 셀들(C0o1~C0ok)이 하나의 오드 물리적 페이지를 구성할 수 있다. 이러한 페이지(또는, 이븐 페이지와 오드 페이지)는 프로그램 동작 또는 리드 동작의 기본 단위가 된다. 하나의 페이지(PAGE1)를 구성하는 메모리 셀들은 메인 셀들과 플래그 셀들(또는 스페어 셀들)로 구분될 수 있다. 메인 셀들은 일반 데이터를 저장하기 위한 메모리 셀들이고 플래그 셀들(또는 스페어 셀들)은 메모리 장치의 상태 정보 등을 저장하기 위한 메모리 셀들이다. 실시예로서 플래그 셀들에는 프로그램 동작 실시 후 또는 리드 동작 실시 후에 특정 데이터를 갖는 메모리 셀들의 개수 정보가 저장될 수 있다. 또한, 플래그 셀들에는 특정 메모리 블록에 포함되는 메모리 셀들의 프로그램/소거 횟수 정보가 저장될 수 있다.
다시, 도 2 및 도 3을 참조하면, 제어 회로(120)는 외부로부터 입출력 회로(170)를 통해 입력되는 명령 신호(CMD)에 응답하여 프로그램 동작, 검증 동작, 리드 동작 또는 소거 동작을 수행하기 위해 필요한 전압을 생성하기 위한 전압 제어 신호(VCON)를 출력하고, 동작의 종류에 따라 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들(PB1~PBk)을 제어하기 위한 PB 제어 신호들(PBCON)을 출력하며, 랜덤값 생성 회로(180)를 제어하기 위한 RD 제어 신호(RDCON)를 출력한다. 제어 회로(120)가 페이지 버퍼 그룹(150)을 제어하는 동작은 후술하기로 한다. 또한, 제어 회로(120)는 입출력 회로(170)를 통해 외부로부터 입력되는 어드레스 신호(ADD)에 응답하여 로우 어드레스 신호(RADD)와 컬럼 어드레스 신호(CADD)를 출력한다.
전압 공급 회로(135)는 제어 회로(120)의 전압 제어 신호(VCON)에 응답하여 메모리 셀들의 프로그램 동작, 리드 동작 및 소거 동작에 필요한 동작 전압들(예, Verase, Vpgm, Vread, Vpass, Vvfy, Vdsl, Vssl, Vcsl)을 선택된 메모리 블록의 드레인 셀렉트 라인(DSL), 워드라인들(WL0~WLn) 및 소스 셀렉트 라인(SSL)를 포함하는 로컬 라인들로 공급한다. 이러한 전압 공급 회로(135)는 전압 생성 회로(130) 및 로우 디코더(140)를 포함한다.
전압 생성 회로(130)는 제어 회로(120)의 전압 제어 신호(VCON)에 응답하여 메모리 셀들의 프로그램 동작, 리드 동작, 또는 소거 동작에 필요한 동작 전압들(예, Verase, Vpgm, Vread, Vpass, Vvfy, Vdsl, Vssl, Vcsl)을 글로벌 라인들로 출력한다. 예를 들어, 프로그램 동작을 위해 전압 생성 회로(130)는 선택된 페이지의 메모리 셀들에 인가하기 위한 프로그램 전압(Vpgm) 및 비선택된 메모리 셀들에 인가하기 위한 패스 전압(Vpass)을 글로벌 라인들로 출력한다. 리드 동작을 위해 전압 생성 회로(130)는 선택된 페이지의 메모리 셀들에 인가하기 위한 리드 전압(Vread) 및 비선택된 메모리 셀들에 인가하기 위한 패스 전압(Vpass)을 글로벌 라인들로 출력한다. 소거 동작을 위해 전압 생성 회로(130)는 선택된 메모리 블록의 메모리 셀들에 인가하기 위한 소거 전압(Verase)을 글로벌 라인들로 출력한다.
로우 디코더(140)는 제어 회로(120)의 로우 어드레스 신호들(RADD)에 응답하여, 전압 생성 회로(130)에서 글로벌 라인들로 출력된 동작 전압들이 메모리 어레이(110)에서 선택된 메모리 블록(110MB)의 로컬 라인들(DSL, WL0~WLn, SSL)로 전달될 수 있도록 글로벌 라인들과 로컬 라인들(DSL, WL0~WLn, SSL)을 연결한다. 이로써, 선택된 셀(예, C0e1)과 연결된 로컬 워드라인(예, WL0)에는 전압 생성 회로(130)로부터 글로벌 워드라인을 통해 프로그램 전압(Vpgm) 또는 리드 전압(Vread)이 인가된다. 그리고, 선택되지 않은 셀들(C1e1~Cne1)과 연결된 로컬 워드라인들(예, WL1~WLn)에는 전압 생성 회로(130)로부터 글로벌 워드라인들을 통해 패스 전압(Vpass)이 인가된다. 소거 동작에서는 블록 내의 메모리 셀들 전체에 소거 전압(Verase)이 인가될 수 있다. 이에 따라, 선택된 셀(C0e1)에 데이터가 프로그램 전압(Vpgm)에 의해 저장되거나, 선택된 셀(C0e1)에 저장된 데이터가 리드 전압(Vread)에 의해 독출된다.
페이지 버퍼 그룹들(150)은 비트라인들(BLe1~BLek, BLo1~BLok)을 통해 메모리 어레이(110)와 연결되는 다수의 페이지 버퍼들(PB1~PBk)을 각각 포함한다. 페이지 버퍼 그룹(150)의 페이지 버퍼들(PB1~PBk)은 제어 회로(120)의 PB 제어 신호(PBCON)에 응답하여 메모리 셀들(C0e1~C0ek 또는 C0o1~C0ok)에 데이터를 저장하기 위하여 입력되는 데이터에 따라 비트라인들(BLe1~BLek 또는 BLo1~BLok)을 선택적으로 프리차지하거나, 메모리 셀들(C0e1~C0ek 또는 C0o1~C0ok)로부터 데이터를 독출하기 위하여 비트라인들(BLe1~BLek 또는 BLo1~BLok)의 전압을 센싱한다.
예를 들어, 메모리 셀(C0e1)에 저장하기 위해 프로그램 데이터(예, '0' 데이터)가 페이지 버퍼(PB1)로 입력되면, 프로그램 동작에서 페이지 버퍼(PB1)는 프로그램 데이터가 저장되는 메모리 셀(C0e1)의 비트라인(BLe1)에 프로그램 허용 전압(예, 접지 전압)을 인가한다. 그 결과, 메모리 셀(C0e1)의 문턱전압은 프로그램 동작에서 워드라인(WL0)에 인가되는 프로그램 전압(Vpgm)과 비트라인(BLe1)에 인가되는 프로그램 허용 전압에 의해 상승한다. 그리고, 메모리 셀(C0e1)에 저장하기 위해 소거 데이터(예, '1' 데이터)가 페이지 버퍼(PB1)로 입력되면, 프로그램 동작에서 페이지 버퍼(PB1)는 소거 데이터가 저장되는 메모리 셀(C0e1)의 비트라인(BLe1)에 프로그램 금지 전압(예, 전원 전압)을 인가한다. 그 결과, 프로그램 동작에서 워드라인(WL0)에 프로그램 전압(Vpgm)이 인가되더라도 비트라인(BLe1)에 인가되는 프로그램 금지 전압에 의해 메모리 셀(C0e1)의 문턱전압은 상승하지 않는다. 이렇게 문턱전압이 서로 달라짐에 따라, 메모리 셀에는 서로 다른 데이터가 저장될 수 있다.
한편, 리드 동작에서, 페이지 버퍼 그룹(150)은 이븐 비트라인들(BLe1~BLek)과 오드 비트라인들(BLo1~BLok) 중 선택된 비트라인들(예, BLe1~BLek)을 모두 프리차지하고 비선택 비트라인들(예, BLo1~BLok)을 모두 디스차지한다. 그리고, 전압 공급 회로(135)로부터 선택된 워드라인(WL0)에 리드 전압(Vread)이 인가되면, 프로그램 데이터가 저장된 메모리 셀들의 비트라인들은 프리차지 상태를 유지하고, 소거 데이터가 저장된 메모리 셀들의 비트라인들은 디스차지된다. 페이지 버퍼 그룹(150)은 비트라인들(BLe1~BLek)의 전압 변화를 센싱하고, 센싱 결과에 대응하는 메모리 셀들의 데이터를 래치한다.
페이지 버퍼의 구체적인 구성은 후술하기로 한다.
컬럼 선택 회로(160)는 제어 회로(120)에서 출력된 컬럼 어드레스 신호(CADD)에 응답하여 페이지 버퍼 그룹(150)에 포함된 페이지 버퍼들(PB1~PBk)을 선택한다. 즉, 컬럼 선택 회로(160)는 메모리 셀들에 저장될 데이터를 컬럼 어드레스 신호(CADD)에 응답하여 순차적으로 페이지 버퍼들(PB1~PBk)로 전달한다. 또한, 리드 동작에 의해 페이지 버퍼들(PB1~PBk)에 래치된 메모리 셀들의 데이터가 외부로 출력될 수 있도록 컬럼 어드레스 신호(CADD)에 응답하여 순차적으로 페이지 버퍼들(PB1~PBk)을 선택한다.
입출력 회로(170)는 프로그램 동작 시 메모리 셀들에 저장하기 위해 외부로부터 입력된 데이터를 페이지 버퍼 그룹(150)으로 입력하기 위하여 제어 회로(120)의 제어에 따라 데이터를 컬럼 선택 회로(160)에 전달한다. 컬럼 선택 회로(160)는 입출력 회로(170)로부터 전달된 데이터를 앞서 설명한 방식에 따라 페이지 버퍼 그룹(150)의 페이지 버퍼들(PB1~PBk)로 전달하면 페이지 버퍼들(PB1~PBk)은 입력된 데이터를 내부의 래치 회로에 저장한다. 또한, 리드 동작 시 입출력 회로(170)는 페이지 버퍼 그룹(150)의 페이지 버퍼들(PB1~PBk)로부터 컬럼 선택 회로(160)를 통해 전달된 데이터를 외부로 출력한다.
랜덤값 생성 회로(180)는 RD 제어신호(RDCON)에 응답하여 랜덤값(Random Value, RV)을 생성하여 페이지 버퍼 그룹(150)으로 출력한다. 페이지 버퍼 그룹(150)의 각 페이지 버퍼는 랜덤값을 이용하여 입력데이터를 랜더마이즈한다.
도 4는 도 2에 도시된 페이지 버퍼를 설명하기 위한 회로도이다.
도 4를 참조하면, 페이지 버퍼(PB)는 제어 회로(도 2의 120)의 제어에 따라 동작하며, 이하에서 설명되는 신호들(PRECH_N, TRAN, RESET, SET, PBSENSE, PROG, RANDEN, BSELe, BSELo, DISCHe, DISCHo)은 제어 회로에서 출력될 수 있다.
페이지 버퍼(PB)는 비트라인 연결 회로(BLC), 프리차지 회로(310), 센싱회로(320), 제1 내지 제3 래치들(LAT1, LAT2, LAT3), 제1 내지 제3 셋/리셋 회로들(330, 340, 350), 제1 내지 제3 전송회로들(360, 370, 380)을 포함한다.
비트라인 연결 회로(BLC)의 스위칭 소자들(305, 307)은 비트라인 선택 신호들(BSELe, BSELo)에 응답하여 이븐 비트라인(BLe1) 및 오드 비트라인(BLo1) 중 하나의 비트라인을 선택하고, 스위칭 소자들(301, 303)은 디스차지 신호들(DISCHe, DISCHo)에 응답하여 프로그램 동작 시 비선택된 비트라인을 프리차지하거나 리드 동작 시 비선택된 비트라인을 디스차지하는 동작을 수행한다. 각 스위칭 소자는 NMOS 트랜지스터로 구현된다.
프리차지 회로(310)는 프리차지 신호(PRECH_N)에 따라 전원전압 단자(VDD)와 감지노드(SO)를 연결하여 감지노드(SO)을 프리차지하는 기능을 한다. 이를 위하여, 프리차지 회로(310)는 전원전압 단자(VDD)와 감지노드(SO) 사이에 연결되어 프리차지 신호(PRECH_N)에 따라 동작하는 PMOS 트랜지스터(311)로 구현된다.
센싱회로(320)는 센싱신호(PBSENSE)에 따라 선택된 비트라인(BL)과 감지노드(SO)를 연결한다. 이를 위하여 센싱회로(320)는 비트라인(BL)과 감지노드(SO) 사이에 연결되어 센싱신호(PBSENSE)에 따라 동작하는 NMOS 트랜지스터(321)로 구현된다.
제1 래치(LAT1)는 제1 및 제2 인버터들(I1 및 I2)로 이루어진다. 제1 인버터(I1)의 입력단자와 제2 인버터(I2)의 출력단자가 서로 연결되며, 제1 인버터(I1)의 출력단자와 제2 인버터(I2)의 입력단자가 서로 연결된다. 제1 인버터(I1)의 입력단자를 캐쉬노드(QC)라고 하며, 제1 인버터(I1)의 출력단자를 반전 캐쉬노드(QC_N)라 한다.
제2 래치(LAT2)는 제3 및 제4 인버터들(I3 및 I4)로 이루어진다. 제3 인버터(I3)의 입력단자와 제4 인버터(I4)의 출력단자가 서로 연결되며, 제3 인버터(I3)의 출력단자와 제4 인버터(I4)의 입력단자가 서로 연결된다. 제3 인버터(I3)의 입력단자를 메인노드(QM)라고 하며, 제3 인버터(I3)의 출력단자를 반전 메인노드(QM_N)라 한다.
제3 래치(LAT3)는 제5 및 제6 인버터들(I5 및 I6)로 이루어진다. 제5 인버터(I5)의 입력단자와 제6 인버터(I6)의 출력단자가 서로 연결되며, 제5 인버터(I5)의 출력단자와 제6 인버터(I6)의 입력단자가 서로 연결된다. 제5 인버터(I5)의 입력단자를 플래그노드(QF)라고 하며, 제5 인버터(I5)의 출력단자를 반전 플래그노드(QF_N)라 한다.
제1 셋/리셋 회로(330)는 제1 셋신호(SET_A) 및 제1 리셋신호(RESET_A)에 따라 제1 래치(LAT1)에 입력된 데이터를 공통노드(CON)로 전송한다. 제1 셋/리셋 회로(230)는 제1 셋신호(SET_A)에 따라 동작하여 반전 캐쉬노드(QC_N)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(331), 제1 리셋신호(RESET_A)에 동작하여 캐쉬노드(QC)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(332)로 이루어진다.
제2 셋/리셋 회로(340)는 제2 셋신호(SET_B) 및 제2 리셋신호(RESET_B)에 따라 제2 래치(LAT2)에 입력된 데이터를 공통노드(CON)로 전송한다. 제2 셋/리셋 회로(240)는 제2 셋신호(SET_B)에 따라 동작하여 반전 메인노드(QM_N)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(341), 제2 리셋신호(RESET_B)에 동작하여 메인노드(QM)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(342)로 이루어진다.
제3 셋/리셋 회로(350)는 제3 셋신호(SET_C) 및 제3 리셋신호(RESET_C)에 따라 제3 래치(LAT3)에 입력된 데이터를 공통노드(CON)로 전송한다. 제3 셋/리셋 회로(350)는 제3 셋신호(SET_C)에 따라 동작하여 반전 플래그노드(QF_N)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(351), 제3 리셋신호(RESET_C)에 동작하여 플래그노드(QF)와 공통노드(CON)를 연결하는 NMOS 트랜지스터(352)로 이루어진다.
제1 전송회로(360)는 제1 래치(LAT1)에 저장된 데이터에 따라 감지노드(SO)의 전위를 유지하거나 감지노드(SO)를 디스차지하는 기능을 한다. 제1 전송회로(360)는 감지노드(SO)와 접지단자(Vss) 사이에서 서로 직렬로 연결된 제1 스위치(361) 및 제2 스위치(362)로 이루어진다. 제1 스위치(361)는 제1 전송신호(TRAN_A)에 따라 동작하며 감지노드(SO)와 제2 스위치(362)를 연결하는 NMOS 트랜지스터로 구현된다. 제2 스위치(362)는 반전 캐쉬노드(QC_N)에 입력되는 데이터에 따라 동작하며 제1 스위치(361)와 접지단자(Vss)를 연결하는 NMOS 트랜지스터로 구현된다.
제2 전송회로(370)는 제2 래치(LAT2)에 저장된 데이터에 따라 감지노드(SO)의 전위를 유지하거나 감지노드(SO)를 디스차지하는 기능을 한다. 제2 전송회로(370)는 감지노드(SO)와 접지단자(Vss) 사이에서 서로 직렬로 연결된 제3 스위치(371) 및 제4 스위치(372)로 이루어진다. 제3 스위치(371)는 제2 전송신호(TRAN_B)에 따라 동작하며 감지노드(SO)와 제4 스위치(372)를 연결하는 NMOS 트랜지스터로 구현된다. 제4 스위치(372)는 반전 메인노드(QM_N)에 입력되는 데이터에 따라 동작하며 제2 스위치(371)와 접지단자(Vss)를 연결하는 NMOS 트랜지스터로 구현된다.
제3 전송회로(280)는 제3 래치(LAT3)에 저장된 데이터에 따라 감지노드(SO)의 전위를 유지하거나 감지노드(SO)를 디스차지하는 기능을 한다. 제3 전송회로(380)는 감지노드(SO)와 접지단자(Vss) 사이에서 서로 직렬로 연결된 제5 스위치(381) 및 제6 스위치(382), 그리고 감지노드(SO)와 제3 래치(LAT3) 사이에 연결된 제7 스위치(383)로 이루어진다. 제5 스위치(381)는 제3 전송신호(TRAN_C)에 따라 동작하며 감지노드(SO)와 제6 스위치(382)를 연결하는 NMOS 트랜지스터로 구현된다. 제6 스위치(382)는 반전 플래그노드(QF_N)에 입력되는 데이터에 따라 동작하며 제3 스위치(381)와 접지단자(Vss)를 연결하는 NMOS 트랜지스터로 구현된다. 제7 스위치(383)는 제8 전송신호(PROG)에 따라 동작하며 감지노드(SO)와 플래그노드(QF)를 연결하는 NMOS 트랜지스터(383)로 구현된다.
디스차지 회로(390)는 감지노드(SO)의 전위에 따라 공통노드(CON)를 디스차지하는 기능을 한다. 디스차지 회로(390)는 감지노드(SO) 전위에 따라 동작하며, 공통노드(CON)와 데이터 라인(DL) 사이에 연결되는 NMOS 트랜지스터(391)로 구현된다. 데이터 라인(DL)은 선택적으로 접지 전원(Vss)과 연결될 수 있다.
랜덤 스위치(401)는 랜덤값 생성 회로에서 출력되는 랜덤 데이터(RV)가 입력 되는 노드와 공통 노드(CON) 사이에 연결되며 랜덤 신호(RANDEN)에 응답하여 랜덤 데이터(RV)를 페이지 버퍼로 전송한다. 랜던 스위치(401)는 NMOS 트랜지스터로 구현된다.
도 5는 도 2에 도시된 제어회로의 세부 구성을 설명하기 위한 블록도이다.
다시 도 2를 참조하면, 제어 회로(120)는 프로그램 동작에 의해 메모리 셀들에 프로그램된 데이터(P_DATA)와 리드 동작에 의해 메모리 셀들로부터 독출된 데이터(R_DATA)의 차이에 따라 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다. 특히, 리드 동작에 의해 메모리 셀들 중 플래그 셀들로부터 독출된 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다.
도 5를 참조하면, 제어 회로(120)는 모드 선택부(122), 구성요소 제어부(124) 및 리드전압 추정부(126)를 포함한다.
모드 선택부(122)는 명령 신호(CMD)에 응답하여, 무빙리드 모드를 선택하기 위한 제1 선택 신호(MV_ON)와 랜더마이즈 모드를 선택하기 위한 제2 선택 신호(RD_ON)와 프로그램/소거 보상 모드(EWCOM_ON)를 선택하기 위한 제3 선택 신호를 출력하도록 구성된다.
구성요소 제어부(124)는 제1 내지 제3 선택 신호(MV_ON, RD_ON, EWCOM_ON)에 응답하여 페이지 버퍼 그룹을 제어하기 위한 PB 제어신호(PBCON)를 출력하고, 제2 선택 신호(RD_ON)에 응답하여 랜덤값 생성 회로를 제어하기 위한 FD 제어신호(RDCON)를 출력한다.
리드 전압 추정부(126)는 제1 선택 신호(MV_ON)신호에 의해 무빙리드 모드가 선택된 경우 프로그램 동작에 의해 메모리 셀들에 프로그램된 데이터(P_DATA)와 리드 동작에 의해 메모리 셀들로부터 독출된 데이터(R_DATA)의 차이에 따라 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력하거나 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다.
일 실시예로서, 프로그램 동작에 의해 메모리 셀들에 프로그램된 데이터(P_DATA)는 LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수 정보와 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수 정보를 포함한다. 또한, 리드 동작에 의해 메모리 셀들로부터 독출된 데이터(R_DATA)는 2비트 멀티 레벨 셀(MLC)에서 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수 정보와 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수 정보를 포함한다. 리드 전압 추정부(126)는 제1 기준 셀들의 개수와 제1 비교 셀들의 개수의 차이에 따라 제2 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력하고, 제2 기준 셀들의 개수와 제2 비교 셀들의 개수의 차이에 따라 제3 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다.
제3 선택 신호(MV_ON)신호에 의해 프로그램/소거 보상 모드가 선택된 경우 리드 동작에 의해 메모리 셀들로부터 독출된 데이터(R_DATA)는 프로그램/소거 사이클링 횟수 정보를 포함한다. 리드 전압 추정부(126)는 제3 선택 신호(MV_ON)에 의해 프로그램/소거 보상 모드가 선택된 경우 프로그램/소거 사이클링 횟수에 따라 제2 리드 전압 및 제3 리드 전압의 크기를 재변경하기 위한 전압제어신호(VCON)를 출력한다.
다른 실시예로서, 제2 선택 신호(RD_ON)신호에 의해 랜더마이즈 모드가 선택된 경우 랜덤값 생성 회로는 입력 데이터를 제1 내지 제4 데이터로 랜더마이즈한다. 제1 내지 제4 데이터는 2비트 멀티 레벨 셀에 저장되는 각 데이터(11, 10, 01, 00)을 의미한다. 페이지 버퍼 그룹은 제1 내지 제4 데이터를 메모리 셀들에 프로그램한다. 리드 전압 추정부(126)는 제3 또는 제4 데이터의 개수와 제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수의 차이에 따라 제2 리드전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력하고, 제4 데이터의 개수와 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수의 차이에 따라 제3 리드전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다. 제3 선택 신호(MV_ON)에 의해 프로그램/소거 보상 모드가 선택된 경우 리드 전압 추정부(126)는 프로그램/소거 사이클링 횟수에 따라 제2 리드 전압 및 제3 리드 전압의 크기를 재변경하기 위한 전압제어신호(VCON)를 출력한다.
도 6은 도 5에 도시된 리드전압 추정부의 세부 구성을 설명하기 위한 블록도이다.
도 6을 참조하면, 리드 전압 추정부(126)는 DSV 생성부(127)와 리드전압 제어부(128)를 포함한다.
DSV 생성부(127)는 LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수와 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수를 카운팅하여 제1 합계 데이터(Digital Sum Value, DSVP)를 계산하여 출력한다.
DSV 생성부(127)는 2비트 멀티 레벨 셀에서 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수와 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수를 카운팅하여 제2 합계 데이터(DSVR)를 계산하여 출력한다.
제2 선택 신호(RD_ON)신호에 의해 랜더마이즈 모드가 선택된 경우 DSV 생성부(127)는 2비트 멀티 레벨 셀에서 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 리드 동작을 실시하여 2비트 멀티 레벨 셀에 저장되는 제1 내지 제4 데이터 중 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수와 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수를 카운팅하여 제3 합계 데이터를 계산하여 출력한다.
리드 전압 제어부(128)는 제1 합계 데이터(DSVP)와 제2 합계 데이터(DSVR)의 차이에 따라 제2 리드 전압 및 제3 리드 전압의 크기를 변경하기 위한 전압제어신호(VCON)를 출력한다. 리드 전압 제어부(128)는 제1 합계 데이터(DSVP)와 제2 합계 데이터(DSVR)의 차이에 따라 제2 리드 전압 및 제3 리드 전압의 크기를 변경하는 정도를 나타내는 테이블을 포함할 수 있다.
이하에, 상기의 구성을 갖는 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 방법을 설명하기로 한다.
도 7은 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 프로그램 동작을 설명하기 위한 흐름도이다.
도 7을 참조하면, 먼저 프로그램 동작을 실시하기 위한 프로그램 명령이 입력되고(S410), 이어서 데이터가 입력된다(S420). 프로그램 명령이 입력될 때 모드를 선택하기 위한 명령이 입력되는데, 이러한 모드 선택 명령 신호에 응답하여 무빙리드 모드, 랜더마이즈 모드 또는 프로그램/소거 보상 모드 중 하나 이상의 모드가 선택된다.
무빙리드 모드와 랜더마이즈 모드가 선택된 경우(S430, S440)에는 랜덤값 생성회로로부터 페이지 버퍼로 랜덤값이 입력되고 페이지 버퍼는 입력 데이터와 랜덤값을 연산하는 스크램블 동작을 수행하여 랜더마이즈된 입력 데이터를 메모리 셀들에 프로그램한다(S442). 무빙리드 모드와 랜더마이즈 모드가 선택된 경우에는 데이터 프로그램 동작을 실시할 필요가 없다. 이에 대해서는 후술하기로 한다.
무빙리드 모드가 선택되고 랜더마이즈 모드가 선택되지 않은 경우에는 입력데이터가 MSB 페이지가 프로그램되는 데이터인지를 확인한다(S450). 이는 플래그 셀 데이터를 통해 확인할 수 있다.
MSB 페이지가 프로그램되지 않는 경우에는 제1 프로그램검증전압(LPV1) 이상의 문턱전압을 갖는 메모리 셀들('0' 데이터를 가짐)의 개수를 카운팅한다(S452). 그리고 합계 데이터(DSVP1)를 저장한다(S454).
MSB 페이지가 프로그램되는 경우에는 2비트 멀티 레벨 셀의 프로그램 검증 동작에서 제3 프로그램검증전압(MPV3) 이상의 문턱전압을 갖는 메모리 셀들('01' 데이터를 가짐)의 개수를 카운팅한다(S462). 그리고 합계 데이터(DSVP2)를 저장한다. 도시하지는 않았지만, MSB 페이지가 프로그램되는 경우에도 제1 프로그램검증전압(LPV1) 이상의 문턱전압을 갖는 메모리 셀들('0' 데이터를 가짐)의 개수를 카운팅하고 합계 데이터(DSVP1)를 저장할 수 있다.
본 발명의 실시예에서는 랜더마이즈 모드의 온/오프가 가능하기 때문에 외부 호스트로부터 랜더마이즈된 데이터가 입력되는 경우에는 랜더마이즈 모드를 오프시켜 랜더마이즈 동작에 소요되는 시간을 감소시킬 수 있다.
도 8은 도 7에 도시된 랜더마이즈(randomize) 모드를 설명하기 위한 도면이다.
도 7에 도시된 바와 같이, 랜더마이즈 모드가 활성화된 경우에는 프로그램 검증 동작에서 메모리 셀들의 개수를 카운팅할 필요가 없다.
도 8을 참조하면, 2비트 멀티 레벨 셀의 프로그램 동작에서 입력 데이터의 개수는 랜더마이즈 전에 11, 10, 00, 01 데이터가 60%, 25%, 0%, 15%인 것을 볼 수 있다. 그러나 랜더마이즈 후에는 11, 10, 00, 01 데이터가 모두 25%가 된 것을 볼 수 있다. 따라서 전체 입력 데이터의 개수를 알면 각 데이터의 개수를 알 수 있으므로 프로그램 동작이 실시된 후의 메모리 셀들의 개수를 카운팅할 필요가 없다. 따라서 동작에 소요되는 시간을 감소시킬 수 있다.
도 9는 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 리드 동작을 설명하기 위한 흐름도이다.
도 9를 참조하면, 우선 리드 명령이 입력된다(S510). 이 때 무빙리드 모드, 랜더마이즈 모드 또는 프로그램/소거 보상 모드 중 하나 이상을 선택하기 위한 모드 선택 명령이 입력된다.
그 다음 MSB 페이지가 프로그램되었는지를 확인한다(S520). MSB 페이지가 프로그램되었는지는 플래그 데이터를 참조하여 확인할 수 있다.
MSB 페이지가 프로그램되지 않은 경우에는 기존의 리드 전압 즉, 디폴트 리드 전압으로 리드 동작을 실시한다(S522). MSB 페이지가 프로그램되지 않은 경우에는 LSB 데이터를 기준으로 리드 전압을 변경할 수도 있지만, 본 발명의 실시예에서는 고려하지 않는다.
MSB 페이지가 프로그램된 경우에는 무빙리드가 온 되었는지 즉, 무빙리드 모드가 선택되었는지를 확인한다(S530).
무빙리드 모드가 선택된 경우에는 디폴트 리드 전압으로 리드 동작을 실시하여 메모리 셀들의 개수를 카운팅하고 합계 데이터(DSV)를 계산한다. 제2 리드전압(R2)으로 리드 동작을 실시하여 제2 리드 전압보다 문턱전압이 높은 메모리 셀들(즉, 2비트 멀티 레벨 셀들 중 제3 상태('00')와 제4 상태('01')의 메모리 셀들)의 개수를 카운팅하고 합계 데이터(DSVR1)를 계산한다. 그리고 제3 리드전압(R3)으로 리드 동작을 실시하여 제3 리드 전압보다 문턱전압이 높은 메모리 셀들(즉, 2비트 멀티 레벨 셀들 중 제4 상태('01')의 메모리 셀들)의 개수를 카운팅하고 합계 데이터(DSVR2)를 계산한다(S532).
그 다음, 도 7의 프로그램 동작 시 계산되었던 합계 데이터(DSVP1)과 리드 동작 시 계산된 합계 데이터(DSVR1)의 차이에 따라 제2 리드 전압(R2)의 오프셋 리드 전압을 계산하고, 합계 데이터(DSVP2)와 합계 데이터(DSVR2)의 차이에 따라 제3 리드 전압(R3)의 오프셋 리드 전압을 계산한다(S534).
그 다음, 변경된 제2 리드 전압(R2)과 제3 리드 전압(R3)으로 리드 동작을 실시한다(S536).
단계 530에서 무빙리드 모드가 선택되지 않은 경우에는 단계 522로 가서 디폴트 리드 전압으로 리드 동작을 실시한다.
랜더마이즈 모드가 선택되었는지를 확인하여(S540), 랜더마이즈 모드가 선택된 경우에는 랜덤값을 입력하여 페이지 버퍼 그룹에서 랜덤값과 독출된 데이터의 디스크램블 동작을 실시한다(S542). 그 다음, 데이터를 출력한다(S544).
도 10 내지 도 12는 도 9에 도시된 무빙 리드 모드를 설명하기 위한 도면이다.
도 10을 참조하면, 본 발명의 실시예에서는 무빙리드 모드가 선택된 경우에 제2 리드 전압을 변경하기 위한 기준 셀(reference cell)로서 A 영역의 메모리 셀들 즉, 2비트 멀티 레벨 셀들 중 제3 상태('00')의 메모리 셀들 및 제4 상태('01')의 메모리 셀들을 이용한다. 또한 제3 리드 전압을 변경하기 위한 기준 셀로서 B영역의 메모리 셀들 즉, 2비트 멀티 레벨 셀들 중 제4 상태(''01)의 메모리 셀들을 이용한다. 제2 리드 전압과 제3 리드 전압에 대해 전용 기준 셀들을 이용함으로써 제2 리드 전압과 제3 리드 전압을 각각 변경할 수 있다. 따라서 LSB 페이지와 MSB 페이지 모두 무빙 리드에 의한 효과를 얻을 수 있다.
도 11을 참조하면, 무빙리드 모드에서 제2 리드 전압에 대한 오프셋 리드 전압을 계산하기 위해 LSB 프로그램 동작 시 문턱전압이 프로그램 검증전압(LPV1) 이상인 메모리 셀들(A)의 개수를 카운팅한다. 그리고 MSB 프로그램 동작 실시 후 디폴트 제2 리드 전압(R2)을 기준으로 리드 동작을 실시하여 문턱전압이 제2 리드 전압(R2) 이상인 메모리 셀들 즉, 제3 상태('00')와 제4 상태('01')의 메모리 셀들(B)의 개수를 카운팅한다. 카운팅한 개수의 차이에 따라 제2 리드전압(R2)에 대한 오프셋 리드 전압을 계산한다. 따라서 LSB 페이지의 무빙 리드에 의한 효과를 얻을 수 있다.
도 12를 참조하면, 무빙리드 모드에서 제3 리드 전압에 대한 오프셋 리드 전압을 계산하기 위해 MSB 프로그램 동작 시 문턱전압이 제3 프로그램 검증전압(MPV3) 이상인 메모리 셀들(A)의 개수를 카운팅한다. 그리고 MSB 프로그램 동작 실시 후 디폴트 제3 리드 전압(R3)을 기준으로 리드 동작을 실시하여 문턱전압이 제3 리드 전압(R3) 이상인 메모리 셀들 즉, 제4 상태('01')의 메모리 셀들(B)의 개수를 카운팅한다. 카운팅한 개수의 차이에 따라 제3 리드 전압(R3)에 대한 오프셋 리드 전압을 계산한다. 따라서 MSB 페이지의 무빙 리드에 의한 효과를 얻을 수 있다.
도 13은 도 9의 리드 동작 중 프로그램/소거 보상 모드를 설명하기 위한 도면이다.
도 7의 단계 534에서 제2 리드 전압과 제3 리드 전압에 대한 오프셋 리드 전압을 계산한 후, 프로그램/소거 보상 모드에 의해 추가적으로 제2 리드 전압과 제3 리드 전압의 크기를 변경할 수 있다.
도 13을 참조하면, 프로그램/소거 보상 모드가 선택되었는지를 확인하고(S610), 선택된 경우 동작을 실시하는 메모리 블록이 변경되었는지를 확인한다(S620).
블록이 변경된 경우에는 디폴트 리드 전압으로 플래그 셀들에 대해 리드 동작을 실시하여 프로그램/소거 사이클링 횟수를 독출한다(630). 블록이 변경되는 것은 제어회로에서 신호를 발생하여 감지할 수 있다.
그 다음, 프로그램/소거 사이클링 횟수에 따라 제2 리드전압과 제3 리드전압에 대한 오프셋 리드 전압을 계산한 후(S640), 단계 536으로 진행한다.
동일함 블록 내에서는 동일한 오프셋 값을 적용한다. 즉, 동일한 블록 내의 다른 페이지를 읽을 경우에는 프로그램/소거 사이클링 횟수를 독출하기 위한 리드 동작을 실시하지 않는다. 이 경우 오프셋 값은 레지스터 등에 저장될 수 있다.
멀티 플레인의 경우 양쪽 플레인의 프로그램/소거 횟수를 비교하여 더 큰 쪽 또는 더 작은 쪽을 선택하도록 제어할 수 있다.
따라서 무빙리드 모드와 프로그램/소거 보상 모드가 선택된 경우 제2 리드 전압과 제3 리드 전압을 정확하게 변경할 수 있다. 무빙리드 모드, 프로그램/소거 보상 모드, 랜더마이즈 모드가 모두 선택된 경우에는 제2 리드 전압과 제3 리드 전압을 정확하게 변경하면서 동작에 소요되는 시간을 감소시킬 수 있다.
도 14는 본 발명의 실시예에 따른 반도체 메모리 장치의 동작 중 소거 동작을 설명하기 위한 도면이다.
소거 동작은 프로그램/소거 보상 모드와 관련된다.
도 14를 참조하면, 우선 소거 명령이 입력된다(S710). 프로그램/소거 보상 모드가 선택되었는지를 확인하여(S720), 선택된 경우 디폴트 리드 전압으로 플래그 셀들에 대해 리드 동작을 실시하여 프로그램/소거 사이클링 횟수를 독출한다(S722).
그 다음 프로그램/소거 사이클링 횟수를 '1' 증가시키고(S724), 소거동작을 실시한다(S730).
프로그램 소거/보상 모드가 선택된 경우(S740), 갱신된 프로그램/소거 사이클링 횟수를 플래그 셀에 저장한다(S742).
프로그램/소거 보상 모드가 선택되지 않은 경우에는 단계 720에서 단계 730으로 진행하고, 단계 740에서 동작을 종료한다.
도 15는 본 발명의 실시예에 따른 메모리 시스템을 간략히 보여주는 블록도이다.
도 15를 참조하면, 본 발명의 실시예에 따른 메모리 시스템(800)은 불휘발성 메모리 장치(820)와 메모리 컨트롤러(810)를 포함한다.
불휘발성 메모리 장치(820)는 메모리 컨트롤러(810)와의 호환성을 위해 앞서 설명한 반도체 메모리 장치로 구성되고 앞서 설명한 방법으로 동작될 수 있다. 메모리 컨트롤러(810)는 불휘발성 메모리 장치(820)를 제어하도록 구성될 것이다. 불휘발성 메모리 장치(820)와 메모리 컨트롤러(810)의 결합에 의해 메모리 카드 또는 반도체 디스크 장치(Solid State Disk: SSD)로 제공될 수 있을 것이다. SRAM(811)은 프로세싱 유닛(812)의 동작 메모리로써 사용된다. 호스트 인터페이스(813)는 메모리 시스템(800)과 접속되는 호스트의 데이터 교환 프로토콜을 구비한다. 에러 정정 블록(814)은 불휘발성 메모리 장치(820)로부터 독출된 데이터에 포함되는 에러를 검출 및 정정한다. 메모리 인터페이스(814)는 본 발명의 불휘발성 메모리 장치(820)와 인터페이싱 한다. 프로세싱 유닛(812)은 메모리 컨트롤러(810)의 데이터 교환을 위한 제반 제어 동작을 수행한다.
비록 도면에는 도시되지 않았지만, 본 발명에 따른 메모리 시스템(800)은 호스트(Host)와의 인터페이싱을 위한 코드 데이터를 저장하는 ROM(미도시됨) 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 불휘발성 메모리 장치(820)는 복수의 플래시 메모리 칩들로 구성되는 멀티??칩 패키지로 제공될 수도 있다. 이상의 본 발명의 메모리 시스템(800)은 에러의 발생 확률이 낮은 고신뢰성의 저장 매체로 제공될 수 있다. 특히, 최근 활발히 연구되고 있는 반도체 디스크 장치(Solid State Disk: 이하 SSD)와 같은 메모리 시스템에서 본 발명의 플래시 메모리 장치가 구비될 수 있다. 이 경우, 메모리 컨트롤러(810)는 USB, MMC, PCI??E, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 것이다.
도 16은 앞서 설명된 다양한 실시예들에 따라 프로그램 동작을 수행하는 퓨전 메모리 장치 또는 퓨전 메모리 시스템을 간략히 보여주는 블록도이다. 예를 들면, 퓨전 메모리 장치로서 원낸드 플래시 메모리 장치(900)에 본 발명의 기술적 특징이 적용될 수 있다.
원낸드 플래시 메모리 장치(900)는 서로 다른 프로토콜을 사용하는 장치와의 각종 정보 교환을 위한 호스트 인터페이스(910)와, 메모리 장치를 구동하기 위한 코드를 내장하거나 데이터를 일시적으로 저장하는 버퍼 램(920)과, 외부에서 주어지는 제어 신호와 명령어에 응답하여 읽기와 프로그램 및 모든 상태를 제어하는 제어부(930)와, 명령어와 어드레스, 메모리 장치 내부의 시스템 동작 환경을 정의하는 설정(Configuration) 등의 데이터가 저장되는 레지스터(940) 및 불휘발성 메모리 셀과 페이지 버퍼를 포함하는 동작 회로로 구성된 낸드 플래시 셀 어레이(950)를 포함한다. 호스트로부터의 쓰기 요청에 응답하여 원낸드 플래시 메모리 장치는 앞서 설명한 방식에 따라 데이터를 프로그램하게 된다.
도 17에는 본 발명에 따른 플래시 메모리 장치(1012)를 포함한 컴퓨팅 시스템이 개략적으로 도시되어 있다.
본 발명에 따른 컴퓨팅 시스템(1000)은 시스템 버스(1060)에 전기적으로 연결된 마이크로프로세서(1020), 램(1030), 사용자 인터페이스(1040), 베이스밴드 칩셋(Baseband chipset)과 같은 모뎀(1050) 및 메모리 시스템(1010)을 포함한다. 본 발명에 따른 컴퓨팅 시스템(1000)이 모바일 장치인 경우, 컴퓨팅 시스템(1000)의 동작 전압을 공급하기 위한 배터리(미도시됨)가 추가적으로 제공될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(1000)에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 시스템(1010)은, 예를 들면, 데이터를 저장하는 데 불휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다. 또는, 메모리 시스템(1010)은, 퓨전 플래시 메모리(예를 들면, 원낸드 플래시 메모리)로 제공될 수 있다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
110: 메모리 어레이 110MB: 메모리 블록
PAGE0: 페이지 STe1~STok: 스트링
120: 제어 회로 130: 전압 생성 회로
140: 로우 디코더 150: 페이지 버퍼 그룹
160: 컬럼 선택 회로 170: 입출력 회로
180: 랜덤값 생성 회로

Claims (20)

  1. LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수를 카운팅하는 단계;
    상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수를 카운팅하는 단계;
    제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수를 카운팅하는 단계;
    제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수를 카운팅하는 단계;
    상기 제1 기준 셀들의 개수와 상기 제1 비교 셀들의 개수의 차이에 따라 상기 제2 리드 전압의 크기를 변경하는 단계; 및
    상기 제2 기준 셀들의 개수와 상기 제2 비교 셀들의 개수의 차이에 따라 상기 제3 리드 전압의 크기를 변경하는 단계를 포함하는 반도체 메모리 장치의 동작 방법.
  2. 제1항에 있어서, 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  3. 입력 데이터를 제1 내지 제4 데이터로 랜더마이즈(randomize)하는 단계;
    랜더마이즈된 데이터를 프로그램하는 단계;
    제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수를 카운팅하는 단계;
    제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수를 카운팅하는 단계;
    상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 셀들의 개수의 차이에 따라 제2 리드전압의 크기를 변경하는 단계; 및
    상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제2 셀들의 개수의 차이에 따라 제3 리드전압의 크기를 변경하는 단계를 포함하는 반도체 메모리 장치의 동작 방법.
  4. 제3항에 있어서, 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  5. 입력되는 모드 선택 명령에 응답하여 무빙리드 모드, 랜더마이즈 모드, 및 프로그램/소거 보상 모드 중 하나 이상의 모드를 선택하는 단계; 및
    선택된 모드에 따른 동작을 실시하는 단계를 포함하되,
    무빙리드 모드가 선택되면 메모리 셀들에 프로그램된 데이터와 상기 메모리 셀들로부터 독출된 데이터의 차이에 따라 리드 전압의 크기를 변경하고,
    랜더마이즈 모드가 선택되면 입력 데이터와 랜덤값(random value)를 랜더마이즈하여 상기 메모리 셀들에 상기 입력 데이터를 프로그램하고,
    프로그램/소거 보상 모드가 선택되면 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  6. 제5항에 있어서, 상기 무빙리드 모드가 선택되는 경우 상기 동작을 실시하는 단계는
    LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수를 카운팅하는 단계;
    상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수를 카운팅하는 단계;
    제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수를 카운팅하는 단계;
    제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수를 카운팅하는 단계;
    상기 제1 기준 셀들의 개수와 상기 제1 비교 셀들의 개수의 차이에 따라 상기 제2 리드 전압의 크기를 변경하는 단계; 및
    상기 제2 기준 셀들의 개수와 상기 제2 비교 셀들의 개수의 차이에 따라 상기 제3 리드 전압의 크기를 변경하는 단계를 포함하는 반도체 메모리 장치의 동작 방법.
  7. 제6항에 있어서, 상기 무빙리드 모드 및 상기 프로그램/소거 보상 모드가 선택되는 경우, 상기 무빙리드 모드에 의해 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 변경한 후 상기 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  8. 제5항에 있어서, 상기 무빙리드 모드 및 상기 랜더마이즈 모드가 선택되는 경우 상기 동작을 실시하는 단계는
    입력 데이터를 제1 내지 제4 데이터로 랜더마이즈(randomize)하는 단계;
    랜더마이즈된 데이터를 프로그램하는 단계;
    제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수를 카운팅하는 단계;
    제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수를 카운팅하는 단계;
    상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 셀들의 개수의 차이에 따라 제2 리드전압의 크기를 변경하는 단계; 및
    상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제2 셀들의 개수의 차이에 따라 제3 리드전압의 크기를 변경하는 단계를 포함하는 반도체 메모리 장치의 동작 방법.
  9. 제7항에 있어서, 상기 무빙리드 모드, 상기 랜더마이즈 모드, 및 상기 프로그램/소거 보상 모드가 선택되는 경우 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 변경한 후 상기 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하는 것을 특징으로 하는 반도체 메모리 장치의 동작 방법.
  10. 메모리 셀들을 포함하는 메모리 어레이;
    LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수와 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수의 차이에 따라 제2 리드 전압의 크기를 변경하고, 상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수와 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수의 차이에 따라 제3 리드 전압의 크기를 변경하도록 구성된 리드 전압 추정부; 및
    상기 리드 전압 추정부의 제어 신호에 응답하여 변경된 리드 전압을 상기 메모리 어레이에 공급하도록 구성된 리드 전압 공급부를 포함하는 반도체 메모리 장치.
  11. 제10항에 있어서, 상기 리드 전압 추정부는
    프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하도록 구성된 반도체 메모리 장치.
  12. 메모리 셀들을 포함하는 메모리 어레이;
    입력 데이터를 제1 내지 제4 데이터로 랜더마이즈(randomize)하는 랜더마이저(randomizer);
    상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수의 차이에 따라 제2 리드 전압의 크기를 변경하고, 상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수의 차이에 따라 제3 리드 전압의 크기를 변경하도록 구성된 리드 전압 추정부; 및
    상기 리드 전압 추정부의 제어 신호에 응답하여 변경된 리드 전압을 상기 메모리 어레이에 공급하도록 구성된 리드 전압 공급부를 포함하는 반도체 메모리 장치.
  13. 제12항에 있어서, 상기 리드 전압 추정부는
    프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하도록 구성된 반도체 메모리 장치.
  14. 메모리 셀들을 포함하는 메모리 어레이;
    상기 메모리 셀들에 데이터를 프로그램하거나 상기 메모리 셀들로부터 데이터를 독출하도록 구성된 페이지 버퍼 그룹;
    상기 메모리 어레이에 동작 전압을 공급하도록 구성된 전압 공급 회로;
    입력 데이터를 랜더마이즈하기 위한 랜덤값(random value)을 상기 페이지 버퍼 그룹에 출력하도록 구성된 랜덤값 생성 회로; 및
    명령 신호에 응답하여 상기 페이지 버퍼 그룹 및 상기 랜덤값 생성 회로를 제어하고, 상기 메모리 셀들에 프로그램된 제1 데이터와 상기 메모리 셀들로부터 독출된 제2 데이터의 차이에 따라 리드 전압의 크기를 변경하거나 프로그램/소거 사이클링 횟수에 따라 리드 전압의 크기를 변경하도록 상기 전압 공급 회로를 제어하는 제어회로를 포함하는 반도체 메모리 장치.
  15. 제14항에 있어서, 상기 제어회로는
    상기 명령 신호에 응답하여 무빙리드 모드를 선택하기 위한 제1 선택 신호, 랜더마이즈 모드를 선택하기 위한 제2 선택 신호, 및 프로그램/소거 보상 모드를 선택하기 위한 제3 선택 신호를 출력하도록 구성된 모드 선택부;
    상기 제1 내지 제3 선택 신호에 응답하여 상기 페이지 버퍼 그룹을 제어하기 위한 제1 제어신호를 출력하고, 상기 제2 선택 신호에 응답하여 상기 랜덤값 생성 회로를 제어하기 위한 제2 제어신호를 출력하도록 구성된 구성요소 제어부; 및
    상기 페이지 버퍼 그룹으로부터 입력되는 상기 제1 데이터 및 상기 제2 데이터에 따라 상기 리드 전압의 크기를 변경하거나 상기 프로그램/소거 사이클링 횟수에 따라 상기 리드 전압의 크기를 변경하기 위한 제3 제어신호를 상기 전압 생성 회로로 출력하도록 구성된 리드 전압 추정부를 포함하는 반도체 메모리 장치.
  16. 제15항에 있어서, 상기 제1 데이터는 LSB 프로그램 동작에 의해 LSB 데이터가 프로그램된 제1 기준 셀들의 개수 정보와 상기 제1 기준 셀들 중 MSB 프로그램 동작에 의해 MSB 데이터가 프로그램된 제2 기준 셀들의 개수 정보를 포함하고,
    상기 제2 데이터는 제1 내지 제3 리드 전압들 중 제2 리드 전압을 기준으로 LSB 리드 동작을 실시하여 상기 LSB 데이터가 프로그램된 것으로 독출된 제1 비교 셀들의 개수 정보와 제3 리드 전압을 기준으로 MSB 리드 동작을 실시하여 상기 MSB 데이터가 프로그램된 것으로 독출된 제2 비교 셀들의 개수 정보를 포함하고,
    상기 리드 전압 추정부는 상기 제1 기준 셀들의 개수와 상기 제1 비교 셀들의 개수의 차이에 따라 상기 제2 리드 전압의 크기를 변경하고 상기 제2 기준 셀들의 개수와 상기 제2 비교 셀들의 개수의 차이에 따라 상기 제3 리드 전압의 크기를 변경하기 위한 제3 제어신호를 출력하도록 구성된 반도체 메모리 장치.
  17. 제17항에 있어서, 상기 리드 전압 추정부는 상기 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하기 위한 제3 제어신호를 출력하도록 구성된 반도체 메모리 장치.
  18. 제15항에 있어서, 상기 랜덤값 생성 회로는 상기 입력 데이터를 제1 내지 제4 데이터로 랜더마이즈하고,
    상기 페이지 버퍼 그룹은 상기 제1 내지 제4 데이터를 상기 메모리 셀들에 프로그램하고,
    상기 리드 전압 추정부는 상기 랜더마이즈된 데이터 중 제 3 또는 제4 데이터의 개수와 제1 내지 제3 리드전압들 중 제2 리드전압을 기준으로 리드 동작을 실시하여 제3 또는 제4 데이터가 프로그램된 것으로 독출된 제1 셀들의 개수의 차이에 따라 상기 제2 리드전압의 크기를 변경하고 상기 랜더마이즈된 데이터 중 제4 데이터의 개수와 제3 리드전압을 기준으로 리드 동작을 실시하여 제4 데이터가 프로그램된 것으로 독출된 제2 셀들의 개수의 차이에 따라 상기 제3 리드전압의 크기를 변경하기 위한 제3 제어신호를 출력하도록 구성된 반도체 메모리 장치.
  19. 제19항에 있어서, 상기 리드 전압 추정부는 상기 프로그램/소거 사이클링 횟수에 따라 상기 제2 리드 전압 및 상기 제3 리드 전압의 크기를 재변경하기 위한 제3 제어신호를 출력하도록 구성된 반도체 메모리 장치.
  20. 제15항에 있어서, 상기 리드 전압 추정부는
    상기 제1 데이터와 상기 제2 데이터의 차이값을 계산하도록 구성된 DSV 생성부; 및
    상기 차이값에 따라 상기 제3 제어신호를 출력하도록 구성된 리드 전압 제어부를 포함하는 반도체 메모리 장치.
KR1020120124234A 2012-11-05 2012-11-05 반도체 메모리 장치 및 이의 동작 방법 KR102069864B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120124234A KR102069864B1 (ko) 2012-11-05 2012-11-05 반도체 메모리 장치 및 이의 동작 방법
US13/846,599 US9343163B2 (en) 2012-11-05 2013-03-18 Semiconductor memory device and operating method based upon a comparison of program data and read data thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120124234A KR102069864B1 (ko) 2012-11-05 2012-11-05 반도체 메모리 장치 및 이의 동작 방법

Publications (2)

Publication Number Publication Date
KR20140058738A true KR20140058738A (ko) 2014-05-15
KR102069864B1 KR102069864B1 (ko) 2020-01-23

Family

ID=50622224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120124234A KR102069864B1 (ko) 2012-11-05 2012-11-05 반도체 메모리 장치 및 이의 동작 방법

Country Status (2)

Country Link
US (1) US9343163B2 (ko)
KR (1) KR102069864B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10381089B2 (en) 2017-05-31 2019-08-13 SK Hynix Inc. Semiconductor memory system performing read operation based on counted memory cells and operating method thereof
KR20200061217A (ko) * 2018-11-23 2020-06-02 에스케이하이닉스 주식회사 전자 장치 및 그것의 동작 방법
KR20200061563A (ko) * 2018-11-26 2020-06-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US11152939B2 (en) 2019-09-26 2021-10-19 SK Hynix Inc. Semiconductor apparatus performing calibration operation and a semiconductor system using the same
US11539901B2 (en) 2020-04-16 2022-12-27 SK Hynix Inc. Image sensing device having a mirroring circuit suitable for compensating an operating current
US11614761B2 (en) 2021-03-19 2023-03-28 SK Hynix Inc. Low-dropout regulator
US11689823B2 (en) 2020-09-29 2023-06-27 SK Hynix Inc. Image sensing device and operating method thereof
US11805325B2 (en) 2021-03-25 2023-10-31 SK Hynix Inc. Image sensing device correcting defective image values
US11887673B2 (en) 2021-08-03 2024-01-30 SK Hynix Inc. Memory device for performing read operation and method of operating the same

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8923062B1 (en) * 2012-07-06 2014-12-30 Sk Hynix Memory Solutions Inc. Generating read thresholds using gradient descent and without side information
KR102069864B1 (ko) * 2012-11-05 2020-01-23 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
US9812193B2 (en) 2013-11-08 2017-11-07 SK Hynix Inc. Threshold estimation using bit flip counts and minimums
JP2016054017A (ja) * 2014-09-04 2016-04-14 株式会社東芝 半導体記憶装置
KR102284658B1 (ko) 2015-03-19 2021-08-02 삼성전자 주식회사 비휘발성 메모리 장치, 이를 포함하는 메모리 시스템 및 상기 비휘발성 메모리 장치의 동작 방법
US10210350B2 (en) * 2015-08-10 2019-02-19 Samsung Electronics Co., Ltd. Electronic device against side channel attacks
KR102438988B1 (ko) 2016-04-07 2022-09-02 삼성전자주식회사 랜덤화 연산을 수행하는 불휘발성 메모리 장치
KR102648779B1 (ko) * 2016-12-01 2024-03-19 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
US10229749B2 (en) * 2017-03-31 2019-03-12 Samsung Electronics Co., Ltd. Nonvolatile memory storage system
US10381090B2 (en) * 2017-03-31 2019-08-13 Samsung Electronics Co., Ltd. Operation method of nonvolatile memory device and storage device
US10976936B2 (en) * 2017-08-23 2021-04-13 Micron Technology, Inc. Sensing operations in memory
KR20190033791A (ko) * 2017-09-22 2019-04-01 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 장치 및 이들을 포함하는 메모리 시스템
KR20190074890A (ko) 2017-12-20 2019-06-28 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR102392056B1 (ko) 2017-12-27 2022-04-28 삼성전자주식회사 메모리 장치의 데이터 독출 방법, 메모리 컨트롤러의 제어 방법 및 이들을 포함하는 저장 장치
JP2021044032A (ja) * 2019-09-06 2021-03-18 キオクシア株式会社 半導体記憶装置
KR20220063609A (ko) * 2020-11-10 2022-05-17 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
US11651825B2 (en) * 2021-04-12 2023-05-16 Micron Technology, Inc. Random value generator

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080094246A (ko) * 2007-04-19 2008-10-23 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템 및그것의 엘에스비 읽기 방법
KR20100052159A (ko) * 2008-11-10 2010-05-19 삼성전자주식회사 비휘발성 반도체 메모리 장치, 그를 포함하는 메모리 카드와 메모리 시스템 및 그의 리드 전압 추정 방법
KR20110018336A (ko) * 2008-04-29 2011-02-23 샌디스크 아이엘 엘티디 프로그램, 검증 및, 읽기를 위한 참조 전압 레벨들의 적응적인 세팅을 갖는 비휘발성 멀티레벨 메모리
US20140126285A1 (en) * 2012-11-05 2014-05-08 SK Hynix Inc. Semiconductor memory device and operating method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101082650B1 (ko) * 2009-01-21 2011-11-14 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080094246A (ko) * 2007-04-19 2008-10-23 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템 및그것의 엘에스비 읽기 방법
KR20110018336A (ko) * 2008-04-29 2011-02-23 샌디스크 아이엘 엘티디 프로그램, 검증 및, 읽기를 위한 참조 전압 레벨들의 적응적인 세팅을 갖는 비휘발성 멀티레벨 메모리
KR20100052159A (ko) * 2008-11-10 2010-05-19 삼성전자주식회사 비휘발성 반도체 메모리 장치, 그를 포함하는 메모리 카드와 메모리 시스템 및 그의 리드 전압 추정 방법
US20140126285A1 (en) * 2012-11-05 2014-05-08 SK Hynix Inc. Semiconductor memory device and operating method thereof

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10381089B2 (en) 2017-05-31 2019-08-13 SK Hynix Inc. Semiconductor memory system performing read operation based on counted memory cells and operating method thereof
KR20200061217A (ko) * 2018-11-23 2020-06-02 에스케이하이닉스 주식회사 전자 장치 및 그것의 동작 방법
KR20200061563A (ko) * 2018-11-26 2020-06-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US11152939B2 (en) 2019-09-26 2021-10-19 SK Hynix Inc. Semiconductor apparatus performing calibration operation and a semiconductor system using the same
US11539901B2 (en) 2020-04-16 2022-12-27 SK Hynix Inc. Image sensing device having a mirroring circuit suitable for compensating an operating current
US11689823B2 (en) 2020-09-29 2023-06-27 SK Hynix Inc. Image sensing device and operating method thereof
US11614761B2 (en) 2021-03-19 2023-03-28 SK Hynix Inc. Low-dropout regulator
US11805325B2 (en) 2021-03-25 2023-10-31 SK Hynix Inc. Image sensing device correcting defective image values
US11887673B2 (en) 2021-08-03 2024-01-30 SK Hynix Inc. Memory device for performing read operation and method of operating the same

Also Published As

Publication number Publication date
US20140126285A1 (en) 2014-05-08
US9343163B2 (en) 2016-05-17
KR102069864B1 (ko) 2020-01-23

Similar Documents

Publication Publication Date Title
KR102069864B1 (ko) 반도체 메모리 장치 및 이의 동작 방법
US7684250B2 (en) Flash memory device with reduced coupling effect among cells and method of driving the same
US8625376B2 (en) Semiconductor memory device and method of operation the same
US9543027B2 (en) Memory chip, memory device, and reading method
US9030875B2 (en) Non-volatile memory device
KR101669550B1 (ko) 공통 소스 라인의 노이즈를 줄이는 플래시 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
KR102016036B1 (ko) 반도체 메모리 장치 및 이의 동작 방법
US8902674B2 (en) Semiconductor memory device and method of reading out the same
US9013923B2 (en) Semiconductor device and operating method thereof
US9251901B2 (en) Semiconductor memory device with high threshold voltage distribution reliability method
US8976598B2 (en) Semiconductor memory device and method of operating the same
JP2009151912A (ja) フラッシュメモリ装置及び動作方法
US8120954B2 (en) Method, apparatus, and system for erasing memory
JP2014157650A (ja) 半導体記憶装置
KR20120127930A (ko) 반도체 장치 및 이의 동작 방법
KR20140026115A (ko) 반도체 메모리 장치 및 이의 동작 방법
JP2009043390A (ja) 不揮発性メモリ装置のソフトプログラム方法
KR20130087857A (ko) 반도체 메모리 장치 및 이의 동작 방법
KR20140018517A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR20140144990A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR20140057901A (ko) 반도체 메모리 장치 및 이의 동작 방법
JP2011253579A (ja) 半導体記憶装置
KR20140021909A (ko) 반도체 메모리 장치 및 이의 동작 방법
JP5242603B2 (ja) 半導体記憶装置
KR20140079913A (ko) 불휘발성 메모리 장치 및 이의 프로그램 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right