KR20160014860A - 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법 - Google Patents

불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법 Download PDF

Info

Publication number
KR20160014860A
KR20160014860A KR1020140096657A KR20140096657A KR20160014860A KR 20160014860 A KR20160014860 A KR 20160014860A KR 1020140096657 A KR1020140096657 A KR 1020140096657A KR 20140096657 A KR20140096657 A KR 20140096657A KR 20160014860 A KR20160014860 A KR 20160014860A
Authority
KR
South Korea
Prior art keywords
data
memory cells
data group
memory
word line
Prior art date
Application number
KR1020140096657A
Other languages
English (en)
Other versions
KR102234592B1 (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 KR1020140096657A priority Critical patent/KR102234592B1/ko
Priority to US14/797,203 priority patent/US9406386B2/en
Publication of KR20160014860A publication Critical patent/KR20160014860A/ko
Application granted granted Critical
Publication of KR102234592B1 publication Critical patent/KR102234592B1/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/10Programming or 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
    • 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/08Address circuits; Decoders; Word-line control 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/26Sensing 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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant

Abstract

본 발명의 실시 예에 따른 데이터 저장 장치는 데이터 저장 장치는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 및 제2 워드 라인에 연결된 복수의 제2 메모리 셀들을 포함하는 불휘발성 메모리; 상기 복수의 제1 메모리 셀들에 프로그램될 복수의 제1 데이터들을 제1 및 제2 데이터 그룹들로 분할하고, 상기 복수의 제2 메모리 셀들에 프로그램될 복수의 제2 데이터들을 복수의 제3 및 제4 데이터 그룹들로 분할하는 메모리 컨트롤러를 포함하고, 상기 불휘발성 메모리는 상기 제1 데이터 그룹의 제1 프로그램 동작 및 상기 제3 데이터 그룹의 제2 프로그램 동작을 순차적으로 수행한 후, 상기 제2 데이터 그룹의 제3 프로그램 동작 및 상기 제4 데이터 그룹의 제4 프로그램 동작을 순차적으로 수행한다.

Description

불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법{NONVOLATILE MEMORY DEVICE AND DATA STORAGE DEVICE AND OPERATION METHOD OF THE DATA STORAGE DEVICE}
본 발명은 반도체 장치에 관한 것으로, 더 상세하게는 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법에 관한 것이다.
반도체 메모리 장치(semiconductor memory device)는 실리콘(Si, silicon), 게르마늄(Ge, Germanium), 비화 갈륨(GaAs, gallium arsenide), 인화인듐(InP, indium phospide) 등과 같은 반도체를 이용하여 구현되는 기억장치이다. 반도체 메모리 장치는 크게 휘발성 메모리 장치(Volatile memory device)와 불휘발성 메모리 장치(Nonvolatile memory device)로 구분된다.
불휘발성 메모리 장치의 동작은 데이터를 저장하는 프로그램 동작, 데이터를 삭제하는 소거 동작, 및 데이터를 읽는 읽기 동작을 포함할 수 있다. 그 중, 일반적으로, 불휘발성 메모리 장치의 프로그램 동작은 하나의 워드 라인에 연결된 복수의 메모리 셀들을 포함하는 페이지 단위로 데이터를 저장한다. 그러나, 새로운 페이지의 프로그램 동작 시, 커플링 현상으로 인해 미리 프로그램된 인접한 페이지의 문턱 전압(Vth) 특성이 변형되는 문제점이 발생 될 수 있다.
본 발명의 목적은 프로그램 동작 시, 인접한 페이지들 간의 커플링 현상이 감소되는 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 벙법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 데이터 저장 장치는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 및 제2 워드 라인에 연결된 복수의 제2 메모리 셀들을 포함하는 불휘발성 메모리; 상기 복수의 제1 메모리 셀들에 프로그램될 복수의 제1 데이터들을 제1 및 제2 데이터 그룹들로 분할하고, 상기 복수의 제2 메모리 셀들에 프로그램될 복수의 제2 데이터들을 복수의 제3 및 제4 데이터 그룹들로 분할하는 메모리 컨트롤러를 포함하고, 상기 불휘발성 메모리는 상기 제1 데이터 그룹의 제1 프로그램 동작 및 상기 제3 데이터 그룹의 제2 프로그램 동작을 순차적으로 수행한 후, 상기 제2 데이터 그룹의 제3 프로그램 동작 및 상기 제4 데이터 그룹의 제4 프로그램 동작을 순차적으로 수행하되, 상기 제1 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 제1 선택 메모리 셀들에, 상기 제2 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 상기 제1 선택 메모리 셀들과 다른 제2 선택 메모리 셀들에 각각 프로그램되며, 상기 제3 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 제3 선택 메모리 셀들에, 상기 제4 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 상기 제3 선택 메모리 셀들과 다른 제4 선택 메모리 셀들에 각각 프로그램된다.
본 발명의 일 실시 예에 따르면, 상기 메모리 컨트롤러는, 상기 제1 및 제2 프로그램 동작들에 기반하여 상기 제1 및 제3 데이터 그룹들을 상기 불휘발성 메모리에 제공하고, 상기 제3 및 제4 프로그램 동작들에 기반하여 상기 제2 및 제4 데이터 그룹들을 상기 불휘발성 메모리에 제공한다.
본 발명의 일 실시 예에 따르면, 상기 제1 프로그램 동작에 해당하는 메모리 셀들의 문턱 전압은 상기 제2 프로그램 동작에 해당하는 메모리 셀들의 문턱 전압보다 크다.
상기 목적을 달성하기 위한 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 및 제2 워드 라인에 연결된 복수의 제2 메모리 셀들을 갖는 적어도 하나의 메모리 블록을 포함하는 메모리 셀 어레이; 및
상기 복수의 제1 메모리 셀들에 프로그램 될 제1 데이터들 및 상기 복수의 제2 메모리 셀들에 프로그램 될 제2 데이터들 중 어느 하나의 데이터들을 수신하고, 상기 수신된 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할하는 페이지 버퍼 회로를 포함하되, 제1 프로그램 동작 시에, 상기 페이지 버퍼는 상기 제1 데이터 그룹을 상기 제1 워드 라인 및 상기 제2 워드 라인 중 선택된 워드 라인의 제1 메모리 셀들에 프로그램하고, 제2 프로그램 동작 시에, 상기 페이지 버퍼는 상기 제2 데이터 그룹을 상기 선택된 워드 라인의 상기 제1 메모리 셀들과 다른 제2 메모리 셀들에 프로그램한다.
본 발명의 다른 실시 예에 따르면, 상기 페이지 버퍼 회로에 제어 신호를 제공하는 제어 로직을 더 포함하되, 상기 페이지 버퍼 회로는 상기 제어 신호에 응답하여 상기 제1 데이터 그룹 및 상기 제2 데이터 그룹들 중 어느 하나의 데이터 그룹을 상기 메모리 셀 어레이에 프로그램한다.
본 발명의 다른 실시 예에 따르면, 상기 제어 로직은 외부로부터 제1 커맨드 신호 및 제2 커맨드 신호를 수신하며, 상기 제어 로직은 상기 제1 커맨드 신호에 응답하여 제1 레벨의 제어 신호를 상기 페이지 버퍼 회로에 제공하며, 상기 제2 커맨드 신호에 응답하여 제2 레벨의 제어 신호를 상기 페이지 버퍼 회로에 제공한다.
본 발명의 다른 실시 예에 따르면, 상기 페이지 버퍼 회로는 상기 제1 레벨의 제어 신호에 응답하여 상기 제1 데이터 그룹을 상기 메모리 셀 어레이에 프로그램하며, 상기 제2 레벨의 제어 신호에 응답하여 상기 제2 데이터 그룹을 상기 메모리 셀 어레이에 프로그램한다.
본 발명의 다른 실시 예에 따르면, 상기 페이지 버퍼 회로는, 상기 수신된 데이터들을 저장하는 제1 래치, 미리 설정된 분할 정보 및 상기 수신된 데이터들 각각의 비트 정보를 비교하고, 비교 결과에 따라 상기 수신된 데이터들 각각의 데이터 그룹을 판별하는 판별 유닛, 상기 판별 결과에 따라 상기 수신된 데이터들 각각의 데이터 그룹의 정보를 저장하는 제2 래치를 포함한다.
본 발명의 다른 실시 예에 따르면, 상기 제1 래치에 저장되는 비트 수는 상기 제2 래치에 저장되는 비트 수보다 크다.
본 발명의 다른 실시 예에 따르면, 상기 미리 설정된 분할 정보는 상기 제1 및 제2 메모리 셀들 각각에 프로그램되는 데이터 패턴들 중 적어도 하나 이상의 데이터 패턴을 포함한다.
본 발명의 다른 실시 예에 따르면, 상기 판별 유닛은 상기 수신된 데이터들 중 상기 미리 설정된 분할 정보에 대응하는 데이터 패턴을 갖는 데이터를 상기 제1 데이터 그룹으로 판별하고, 상기 대응하지 않는 데이터 패턴을 갖는 데이터를 상기 제2 데이터 그룹으로 판별한다.
본 발명의 다른 실시 예에 따르면, 상기 상기 제2 래치는 상기 제어 신호의 제1 레벨에 응답하여, 상기 수신된 데이터들 중 상기 제1 데이터 그룹으로 판별된 데이터들을 선택하는 선택 신호를 상기 제1 래치에 제공한다.
본 발명의 다른 실시 예에 따르면, 상기 제2 래치는 상기 제어 신호의 제1 레벨에 응답하여, 상기 수신된 데이터들 중 상기 제2 데이터 그룹으로 판별된 데이터들을 선택하는 선택 신호를 상기 제1 래치에 제공하는 불휘발성 메모리 장치.
본 발명의 다른 실시 예에 따르면, 상기 제1 데이터 그룹에 대응하여 프로그램되는 메모리 셀들의 문턱 전압은 상기 제2 데이터 그룹에 대응하여 프로그램되는 메모리 셀들의 문턱 전압보다 크다.
본 발명의 다른 실시 예에 따르면, 상기 페이지 버퍼 회로는 상기 제1 래치로부터 상기 수신된 데이터들을 수신하여 저장하는 데이터 버퍼를 더 포함한다.
본 발명의 다른 실시 예에 따르면, 상기 데이터 버퍼는 상기 제2 프로그램 동작 시, 상기 저장된 데이터들을 상기 제1 래치에 제공한다.
본 발명의 다른 실시 예에 따르면, 상기 페이지 버퍼 회로는 상기 제1 프로그램 동작이 수행된 후 그리고 상기 제2 프로그램 동작이 수행되기 전에, 리셋된다.
상기 목적을 달성하기 위한 본 발명의 다른 실시 예에 따른 데이터 저장 장치의 동작 방법은 적어도 하나의 메모리 블록을 갖는 불휘발성 메모리를 포함하는 데이터 저장 장치의 동작 방법에 있어서, 상기 적어도 하나의 메모리 블록의 제1 워드 라인에 연결된 복수의 제1 메모리 셀들에 프로그램 될 복수의 제1 데이터들을 제1 및 제2 데이터 그룹들로 분할하는 단계; 상기 제1 데이터 그룹의 제1 프로그램 동작을 수행하는 단계; 상기 적어도 하나의 메모리 블록의 제2 워드 라인에 연결된 복수의 제2 메모리 셀들에 프로그램 될 복수의 제2 데이터들을 제3 및 제4 데이터 그룹들로 분할하는 단계; 상기 제3 데이터 그룹의 제2 프로그램 동작을 수행하는 단계; 상기 제2 데이터 그룹의 제3 프로그램 동작을 수행하는 단계; 상기 제4 데이터 그룹의 제4 프로그램 동작을 수행하는 단계를 포함하되, 상기 제1 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 제1 선택 메모리 셀들에, 상기 제2 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 상기 제1 선택 메모리 셀들과 다른 제2 선택 메모리 셀들에 각각 프로그램되며, 상기 제3 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 제3 선택 메모리 셀들에, 상기 제4 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 상기 제3 선택 메모리 셀들과 다른 제4 선택 메모리 셀들에 각각 프로그램된다.
본 발명의 다른 실시 예에 따르면, 상기 메모리 컨트롤러는 상기 제1 데이터들을 상기 제1 데이터 그룹 및 상기 제2 데이터 그룹으로 분할하며, 상기 메모리 컨트롤러는 상기 제2 데이터들을 상기 제3 데이터 그룹 및 상기 제4 데이터 그룹으로 분할한다.
본 발명의 다른 실시 예에 따르면, 상기 메모리 컨트롤러는, 상기 제1 및 제3 프로그램 동작들에 기반하여 상기 제1 및 제3 데이터 그룹들을 상기 불휘발성 메모리에 제공하고, 상기 제2 및 제4 프로그램 동작들에 기반하여 상기 제2 및 제4 데이터 그룹들을 상기 불휘발성 메모리에 제공한다.
본 발명의 실시 예에 따르면, 데이터 저장 장치는 프로그램이 수행될 복수의 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할한다. 데이터 저장 장치는 프로그램 동작 시, 분할된 데이터 그룹에 따라 인접한 페이지들 간의 프로그램 순서를 교번적으로 수행함으로써, 커플링 현상을 감소시킬 수 있다.
도 1은 본 발명의 실시 예에 따른 데이터 저장 장치의 블록도이다.
도 2는 일반적인 서로 인접한 워드 라인들의 메모리 셀들의 문턱 전압 분포를 보여주는 다이어그램이다.
도 3은 도 2에 도시된 서로 인접한 워드 라인들 간의 프로그램 동작에 따른 문턱 전압 변화를 보여주는 그래프이다.
도 4 내지 도 7은 본 발명의 실시 예에 따른 서로 인접한 워드 라인들 간의 프로그램 동작 시의 문턱 전압 분포를 보여주는 다이어그램이다.
도 8은 본 발명의 실시 예에 따른 데이터 저장 장치의 동작 방법을 보여주는 순서도이다.
도 9는 본 발명의 다른 실시 예에 따른 저장 매체를 보여주는 블록도이다.
도 10은 본 발명의 다른 실시 예에 따른 도 9에 도시된 페이지 버퍼 회로를 보여주는 블록도이다.
도 11은 본 발명의 다른 실시 예에 따른 프로그램 동작 시, 도 10에 도시된 페이지 버퍼 회로의 동작 방법을 보여주는 순서도이다.
도 12는 본 발명의 다른 실시 예에 따른 저장 매체를 보여주는 블록도이다.
도 13은 본 발명의 다른 실시 예에 따른 도 12에 도시된 페이지 버퍼 회로를 보여주는 블록도이다.
도 14는 본 발명의 일 실시 예에 따른 메모리 블록의 등가 회로를 보여주는 회로도이다.
도 15는 본 발명의 일 실시 예에 따른 메모리 카드를 보여준다.
도 16은 본 발명의 일 실시 예에 따른 솔리드 스테이트 드라이브를 보여준다.
도 17은 본 발명의 일 실시 예에 따른 컴퓨팅 장치를 보여주는 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 위하여 실제보다 확대 또는 축소하여 도시한 것이다. 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명의 실시 예에 따른 데이터 저장 장치의 블록도이다. 도 1을 참조하면, 데이터 저장 장치(1000)는 호스트 장치(미도시)의 제어에 따라 프로그램(또는 쓰기) 동작, 읽기 동작 및 소거 동작을 수행할 수 있다. 데이터 저장 장치(1000)는 호스트 장치로부터 전원을 공급받고, 호스트 장치와 복수의 신호들을 교환할 수 있다. 데이터 저장 장치(1000)는 플래시 메모리, PRAM, MRAM, RRAM 등과 같은 불휘발성 메모리를 포함할 수 있다. 예시적으로, 데이터 저장 장치(1000)는 호스트 장치와 결합 또는 분리될 수 있는 착탈식 메모리 카드 또는 솔리드 스테이드 드라이브(Solid State Drive)일 수 있다.
데이터 저장 장치(1000)는 메모리 컨트롤러(100) 및 저장 매체(200)를 포함한다. 메모리 컨트롤러(100)는 호스트 장치의 요청에 따라 저장 매체(200)를 제어하도록 구성된다. 메모리 컨트롤러(100)는 저장 매체(200)로 복수의 신호들을 전송한다. 예를 들어, 메모리 컨트롤러(100)는 제어신호, 어드레스 신호, 접지 전압 신호, 및 전원 전압 신호를 포함하는 복수의 신호들을 저장 매체(200)에 전달한다. 또한, 메모리 컨트롤러(100)는 저장 매체(200)와 데이터(DATA)를 교환하도록 구성될 수 있다.
실시 예에 따르면, 메모리 컨트롤러(100)는 프로그램 동작 시, 서로 인접한 페이지들 간의 프로그램 동작이 적어도 1회 이상 교번적으로 수행되도록 제어한다. 자세하게, 메모리 컨트롤러(100)는 프로그램 유닛(110)을 포함한다. 프로그램 유닛(110)은 저장 매체(200)에 전달할 데이터들을 복수의 데이터 그룹들로 분할한다. 예를 들어, 프로그램 유닛(110)은 메모리 셀의 문턱 전압에 따라 복수의 데이터 그룹들을 분할할 수 있다. 메모리 컨트롤러(100)는 분할된 각 데이터 그룹들에 기반하여 프로그램 동작을 수행한다. 본 발명의 실시 예에 따른 프로그램 동작 방법에 대해서는 도 3 내지 도 7을 통해 자세히 설명된다.
저장 매체(200)는 다양한 메모리를 포함할 수 있다. 예시적으로, 저장 매체(200)는 불휘발성 메모리로 구현될 수 있다. 저장 매체(200)는 메모리 셀 어레이를 포함한다. 메모리 셀 어레이는 복수의 메모리 블록들을 포함한다. 메모리 블록들 각각은 복수의 페이지들을 포함하고, 페이지들 각각은 복수의 메모리 셀들을 포함한다. 각 메모리 셀에는 한 비트 또는 두 비트 이상의 데이터가 저장될 수 있다. 또한, 메모리 셀 어레이는 기판과 교차하는 방향을 따라 적층된 3차원 구조를 갖는 복수의 메모리 블록들을 포함할 수 있다.
도 2는 일반적인 서로 인접한 워드 라인들의 메모리 셀들의 문턱 전압 분포를 보여주는 다이어그램이다. 가로축은 메모리 셀의 문턱 전압(Vth)을 나타내며, 세로축은 메모리 셀의 수를 나타낸다.
도 2를 참조하면, 불휘발성 메모리에 포함된 적어도 하나의 메모리 블록의 프로그램 동작이 개시된다. 예시적으로, 메모리 블록에 포함되는 제1 워드 라인(WLn)에 연결된 메모리 셀들의 프로그램 동작 및 제2 워드 라인(WLn+1)에 연결된 메모리 셀들의 프로그램 동작이 개시된다. 여기서, n은 양의 정수일 수 있다.
제1 및 제2 워드 라인들(WLn, WLn+1)에 연결된 각 메모리 셀은 문턱 전압(Vth) 분포에 따라 소거 상태(E), 및 제1 내지 제7 프로그램 상태들(P1~P7) 중 하나로 구분된다. 예시적으로, 각 메모리 셀은 3 비트를 저장하는 메모리 셀로 구현될 수 있다. 또한, 제1 내지 제7 프로그램 상태들(P1~P7) 중 제7 프로그램 상태가 가장 높은 문턱 전압을 갖는 것으로 정의된다.
일반적으로, 프로그램 동작 시에, 제1 워드 라인(WLn)에 연결된 메모리 셀들의 프로그램 동작이 완료된 후에, 제2 워드 라인(WLn+1)에 연결된 셀들의 프로그램 동작이 수행된다. 제1 워드 라인(WLn)은 하위 워드 라인일 수 있으며, 제2 워드 라인(WLn+1)은 상위 워드 라인일 수 있다. 즉, 하위 워드 라인에 연결된 메모리 셀들의 프로그램 동작이 완료된 후, 후속하여 상위 워드 라인에 연결된 메모리 셀들의 프로그램 동작이 수행될 수 있다. 이하에서, 제1 워드 라인(WLn)에 연결된 메모리 셀들의 프로그램 동작은 하위 프로그램 동작으로 정의된다. 또한, 제2 워드 라인(WLn+1)에 연결된 메모리 셀들의 프로그램 동작은 상위 프로그램 동작으로 정의된다.
한편, 제2 워드 라인에 연결된 메모리 셀들의 프로그램 시에, 제1 워드 라인(WLn)에 연결된 메모리 셀의 문턱 전압(Vth)이 변화될 수 있다. 즉, 제1 워드 라인(WLn) 및 제2 워드 라인(WLn+1) 간에 커플링 현상이 발생 될 수 있다. 도 2에 도시된 바와 같이, 상위 프로그램 동작 시에, 제1 워드 라인(WLn)에 연결된 메모리 셀들이 커플링 영향에 의해 정상 프로그램 상태(P1~P7)에서 교란 프로그램 상태(P1'~P7')로 변환될 수 있다.
특히, 제2 워드 라인(WLn+1)에 연결된 복수의 메모리 셀들 중 문턱 전압이 높은 메모리 셀일수록 제1 워드 라인(WLn)의 메모리 셀의 문턱 전압(Vth) 변화에 크게 영향을 미칠 수 있다. 즉, 제2 워드 라인(WLn+1)에 연결된 복수의 메모리 셀들이 제1 프로그램 상태(P1) 보다 제7 프로그램 상태(P7)로 프로그램 될 때에, 제1 워드 라인(WLn)에 연결된 메모리 셀의 문턱 전압(Vth) 변화가 커질 수 있다.
또한, 제1 워드 라인(WLn)에 연결된 복수의 메모리 셀들 각각은 상위 프로그램 동작에 따른 커플링 영향을 다르게 받을 수 있다. 예를 들어, 상위 프로그램 동작 시 커플링 영향으로 인해, 제1 워드 라인(WLn)의 제1 프로그램 상태(P1)를 갖는 메모리 셀의 문턱 전압(Vth) 변화가 가장 클 수 있다. 반면, 상위 프로그램 동작 시 커플링 영향으로 인해, 제1 워드 라인(WLn)의 제7 프로그램 상태(P7)를 갖는 메모리 셀의 문턱 전압(Vth) 변화가 가장 적을 수 있다.
도 3은 도 2에 도시된 서로 인접한 워드 라인들 간의 프로그램 동작에 따른 문턱 전압 변화를 보여주는 그래프이다. 가로축은 제2 워드 라인(WLn+1)에 연결된 메모리 셀의 프로그램 상태를 보여주며, 세로축은 상위 프로그램 동작 시 커플링 영향에 의한 제1 워드 라인(WLn)에 연결된 복수의 메모리 셀들의 변화된 문턱 전압(V)을 보여준다.
자세하게, 도 3을 참조하면, 제2 워드 라인(WLn+1)에 연결된 복수의 메모리 셀들이 제1 프로그램 상태(P1) 보다 제7 프로그램 상태(P7)로 프로그램 될 때에, 제1 워드 라인(WLn)에 연결된 복수의 메모리 셀들의 문턱 전압 변화가 커질 수 있다. 도 3에 도시된 바와 같이, 제2 워드 라인(WLn+1)에 연결된 복수의 메모리 셀들이 제4 프로그램 상태(P4)에서 제5 프로그램 상태(P5)로 프로그램 될 때에, 제1 워드 라인(WLn)의 문턱 전압 변화가 급격히 클 수 있다.
따라서, 본 발명에 따른 데이터 저장 장치(1000, 도1 참조)는 서로 인접한 페이지들 간의 프로그램 동작을 적어도 1회 이상 교번적으로 수행한다. 그 결과, 커플링으로 인한 제1 워드 라인(WLn)에 연결된 복수의 메모리 셀들의 문턱 전압 변화량을 조절할 수 있다.
도 4 내지 도 7은 본 발명의 실시 예에 따른 서로 인접한 워드 라인들 간의 프로그램 동작 시의 문턱 전압 분포를 보여주는 다이어그램이다.
도 1 및 도 4 내지 도 7을 참조하면, 메모리 컨트롤러(100)는 저장 매체(200)에 하나의 워드 라인에 프로그램 될 데이터들을 복수의 데이터 그룹들로 분할한다. 이하에서, 메모리 컨트롤러(100)가 저장 매체(200)에 저장될 데이터들을 제1 데이터 그룹(G1) 및 제2 데이터 그룹(G2)으로 분할하는 것으로 설명된다. 예시적으로, 메모리 컨트롤러(100)는 제5 내지 제7 프로그램 상태들(P5~P7)에 해당하는 데이터들을 제1 데이터 그룹(G1)으로 분할한다. 메모리 컨트롤러(100)는 제1 내지 제4 프로그램 상태들(P1~P4)에 해당하는 데이터들을 제2 데이터 그룹(G2)으로 분할한다.
한편, 제1 데이터 그룹(G1)은 제1 워드 라인(WLn)에 연결된 복수의 메모리 셀들 중 제1 메모리 셀들에 프로그램 될 수 있다. 제2 데이터 그룹(G2)은 제2 워드 라인(WLn+1)에 연결된 복수의 메모리 셀들 중 제1 메모리 셀들을 제외한 나머지 제2 메모리 셀들에 프로그램 될 수 있다.
이하에서, 제5 내지 제7 프로그램 상태들(P5~P7)에 해당하는 메모리 셀들의 프로그램 동작은 제1 프로그램 동작(Po1)으로 설명된다. 제1 내지 제4 프로그램 상태들(P1~P4)에 해당하는 메모리 셀들의 프로그램 동작은 제2 프로그램 동작(Po2)으로 설명된다. 또한, 실시 예에 따르면, 분할된 데이터 그룹 수에 따라, 프로그램의 동작 횟수가 결정될 수 있다. 예를 들어, 데이터 그룹이 3 개로 분할되면, 이에 따른 각 워드 라인의 프로그램 동작은 3번이 수행된다.
한편, 앞서 상술된 바와 같이, 제1 및 제2 워드 라인들(WLn, WLn+1)에 연결된 각 메모리 셀은 문턱 전압(Vth) 분포에 따라 소거 상태(E), 및 제1 내지 제7 프로그램 상태들(P1~P7)로 구분된다. 이하에서, 예시적으로, 각 메모리 셀은 3 비트를 저장하는 메모리 셀로 설명되며, 제1 내지 제7 프로그램 상태들(P1~P7) 중 제7 프로그램 상태가 가장 높은 문턱 전압을 갖는 것으로 정의된다.
자세하게, 도 1 및 도 4를 참조하면, 메모리 컨트롤러(100)는 커맨드 신호 및 제1 워드 라인(WLn)의 제1 데이터 그룹(G1)의 데이터들을 저장 매체(200)에 전달한다. 저장 매체(200)는 커맨드 신호에 응답하여, 제1 워드 라인(WLn)의 제1 프로그램 동작(Po1)을 수행한다.
이 후, 도 5를 참조하면, 메모리 컨트롤러(100)는 커맨드 신호 및 제2 워드 라인(WLn+1)의 제1 데이터 그룹(G1)의 데이터들을 저장 매체(200)에 전달한다. 저장 매체(200)는 커맨드 신호에 응답하여, 제2 워드 라인(WLn+1)의 제1 프로그램 동작(Po1)을 수행한다.
이 경우, 제2 워드 라인(WLn+1)의 제1 프로그램 동작(Po1) 시, 제1 워드 라인(WLn)의 제5 내지 제7 프로그램 상태들(P5~P7)을 갖는 메모리 셀들의 문턱 전압(Vth)이 크게 변동되지 않을 수 있다. 즉, 도 2에서 상술된 바와 같이, 제1 워드 라인(WLn)의 제5 내지 제7 프로그램 상태들(P5~P7) 및 제2 워드 라인(WLn+1)의 제5 내지 제7 프로그램 상태들(P5~P7) 간의 문턱 전압 차이가 크지 않으므로, 커플링 현상이 적을 수 있다.
이 후, 도 6을 참조하면, 메모리 컨트롤러(100)는 커맨드 신호 및 제1 워드 라인(WLn)의 제2 데이터 그룹(G2)의 데이터들을 저장 매체(200)에 전달한다. 저장 매체(200)는 커맨드 신호에 응답하여, 제1 워드 라인(WLn)의 제2 프로그램 동작(Po2)을 수행한다.
이 후, 도 7을 참조하면, 메모리 컨트롤러(100)는 커맨드 신호 및 제2 워드 라인(WLn+1)의 제2 데이터 그룹(G2)의 데이터들을 저장 매체(200)에 전달한다. 저장 매체(200)는 커맨드 신호에 응답하여, 제2 워드 라인(WLn+1)의 제2 프로그램 동작(Po2)을 수행한다.
이 경우, 제2 워드 라인(WLn+1)의 제2 프로그램 동작(Po2) 시, 제1 워드 라인(WLn)의 제1 내지 제4 프로그램 상태들(P1~P4)을 갖는 메모리 셀들의 문턱 전압(Vth) 레벨이 크게 변동되지 않을 수 있다. 즉, 도 2에서 상술된 바와 같이, 제1 워드 라인(WLn)의 제1 내지 제4 프로그램 상태들(P1~P4) 및 제2 워드 라인(WLn+1)의 제1 내지 제4 프로그램 상태들(P1~P4) 간의 문턱 전압 차이가 크지 않으므로, 커플링 현상이 적을 수 있다.
상술된 바와 같이, 본 발명의 실시 예에 따르면, 서로 인접한 제1 및 제2 워드 라인들(WLn, WLn+1)에 높은 프로그램 상태에 대응하는 데이터들이 교번적으로 프로그램된다. 이 후, 제1 및 제2 워드 라인들(WLn, WLn+1)에 낮은 프로그램 상태에 대응하는 데이터들이 교번적으로 프로그램된다. 여기서, 높은 프로그램 상태는 제1 데이터 그룹에 따른 제1 프로그램 동작(Po1)일 수 있으며, 낮은 프로그램 상태는 제2 데이터 그룹에 따른 제2 프로그램 동작(Po2)일 수 있다. 따라서, 제1 및 제2 프로그램들 동작들(Po1, Po2) 시, 제1 및 제2 워드 라인들(WLn, WLn+1) 간의 문턱 전압 차이가 크지 않아, 커플링 현상으로 인한 제1 워드 라인(WLn)의 문턱 전압 변화량이 적을 수 있다.
도 8은 본 발명의 실시 예에 따른 데이터 저장 장치의 동작 방법을 보여주는 순서도이다.
도 1 및 도 8을 참조하면, S110 단계에서, 메모리 컨트롤러(100)는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들에 프로그램 될 제1 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할한다. 제1 데이터 그룹에 대응하는 프로그램 상태들의 문턱 전압들은 제2 데이터 그룹에 대응하는 프로그램 상태들의 문턱 전압들보다 높을 수 있다.
S120 단계에서, 메모리 컨트롤러(100)는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 중 제1 데이터 그룹에 대응하는 메모리 셀들의 제1 프로그램 동작이 수행되도록 제어한다. 이 경우, 메모리 컨트롤러(100)는 제1 데이터들의 제1 데이터 그룹을 저장 매체(200)에 전달한다.
S130 단계에서, 메모리 컨트롤러(100)는 제2 워드 라인에 연결된 복수의 제2 메모리 셀들에 프로그램 될 제2 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할한다. 제1 데이터 그룹에 대응하는 프로그램 상태들의 문턱 전압들은 제2 데이터 그룹에 대응하는 프로그램 상태들의 문턱 전압들보다 높을 수 있다.
S140 단계에서, 메모리 컨트롤러(100)는 제2 워드 라인에 연결된 복수의 제2 메모리 셀들 중 제1 데이터 그룹에 대응하는 메모리 셀들의 제1 프로그램 동작이 수행되도록 제어한다. 제2 워드 라인은 제1 워드 라인보다 상위 워드 라인으로서, 제1 워드 라인의 제1 프로그램 동작이 수행된 후 제2 워드 라인의 제1 프로그램 동작이 수행된다. 이 경우, 메모리 컨트롤러(100)는 제2 데이터들의 제1 데이터 그룹을 저장 매체(200)에 전달한다.
S150 단계에서, 메모리 컨트롤러(100)는 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 중 제2 데이터 그룹에 대응하는 메모리 셀들의 제2 프로그램 동작이 수행되도록 제어한다. 이 경우, 메모리 컨트롤러(100)는 제1 데이터들의 제2 데이터 그룹을 저장 매체(200)에 전달한다.
S160 단계에서, 메모리 컨트롤러(100)는 제2 워드 라인에 연결된 복수의 제2 메모리 셀들 중 제2 데이터 그룹에 대응하는 메모리 셀들의 제2 프로그램이 수행되도록 제어한다. 제2 워드 라인은 제1 워드 라인보다 상위 워드 라인으로서, 제1 워드 라인의 제2 프로그램 동작이 수행된 후 제2 워드 라인의 제2 프로그램 동작이 수행된다. 이 경우, 메모리 컨트롤러(100)는 제2 데이터들의 제2 데이터 그룹을 저장 매체(200)에 전달한다.
상술된 바와 같이, 본 발명에 따른 메모리 컨트롤러(100)는 커플링 유발 정도에 따라, 각 워드 라인의 복수의 메모리 셀들에 프로그램 될 데이터를 복수의 데이터 그룹들로 분할한다. 메모리 컨트롤러(100)는 분할된 복수의 데이터 그룹들에 기반하여, 서로 인접한 제1 및 제2 워드 라인들의 제1 및 제2 프로그램 동작들이 교번적으로 수행되도록 제어한다.
도 9는 본 발명의 다른 실시 예에 따른 저장 매체를 보여주는 블록도이다.
도 9를 참조하면, 저장 매체(300)는 메모리 셀 어레이(310), 어드레스 디코더(320), 페이지 버퍼 회로(330), 데이터 입출력 회로(340), 및 제어 로직(350)을 포함한다.
메모리 셀 어레이(310)는 워드 라인들(WL) 및 선택 라인들을 통해 어드레스 디코더(320)에 연결된다. 예를 들어, 선택 라인들은 스트링 선택 라인들(SSL) 및 접지 선택 라인들(GSL)을 포함할 것이다. 또한, 메모리 셀 어레이(310)는 비트 라인들(BL)을 통해 페이지 버퍼 회로(330)에 연결된다.
메모리 셀 어레이(310)는 복수의 메모리 블록들을 포함한다. 메모리 블록들 각각은 복수의 페이지들을 포함하고, 페이지들 각각은 복수의 메모리 셀들을 포함한다. 각 메모리 셀에는 한 비트 또는 두 비트 이상의 데이터가 저장될 수 있다. 또한, 메모리 셀 어레이(310)는 기판과 교차하는 방향을 따라 적층된 3차원 구조를 갖는 복수의 메모리 블록들을 포함할 수 있다.
본 발명의 실시 예에 따르면, 메모리 셀 어레이(310)는 제어 로직(350)의 제어 하에, 페이지 버퍼 회로(330)로부터 분할되어 출력되는 복수의 데이터들에 기반하여, 서로 인접한 제1 및 제2 워드 라인들의 프로그램 동작을 교번적으로 수행한다. 이하에서, 메모리 셀 어레이(310)는 각 워드 라인 마다, 복수의 분할된 데이터들에 기반하여 제1 프로그램 및 제2 프로그램을 수행하는 것으로 설명된다.
어드레스 디코더(320)는 워드 라인들(WL), 스트링 선택 라인들(SSL), 및 접지 선택 라인들(GSL)을 통해 메모리 셀 어레이(310)에 연결된다. 어드레스 디코더(320)는 제어 로직(350)의 제어에 응답하여 동작할 수 있다.
어드레스 디코더(320)는 외부로부터 어드레스(ADDR)를 수신한다. 어드레스 디코더(320)는 수신된 어드레스(ADDR)를 디코딩하도록 구성된다. 어드레스 디코더(320)는 디코딩된 어드레스를 기반으로 워드 라인들(WL)을 구동한다. 어드레스 디코더(320)는 디코딩된 어드레스를 기반으로 스트링 선택 라인들(SSL) 및 접지 선택 라인들(GSL)을 구동한다.
어드레스 디코더(320)는 제어 로직(350)으로부터 복수의 전압들을 수신한다. 어드레스 디코더(320)는 제어 로직(350)으로부터 수신된 복수의 전압들을 워드 라인들(WL) 및 선택 라인에 전달한다. 한편, 어드레스 디코더(320)가 더미 워드 라인들을 통해 메모리 셀 어레이(310)에 추가적으로 연결될 때, 어드레스 디코더(320)는 디코딩된 어드레스를 기반으로 더미 워드 라인을 구동할 것이다.
예시적으로, 어드레스 디코더(220)는 행 어드레스를 디코딩하는 행 디코더, 열 어드레스를 디코딩하는 열 디코더, 및 수신된 어드레스(ADDR)를 저장하는 어드레스 버퍼를 포함할 수 있다.
페이지 버퍼 회로(330)는 비트 라인들(BL)을 통해 메모리 셀 어레이(310)에 연결되며, 데이터 라인들(DL)을 통해 데이터 입출력 회로(340)에 연결된다. 페이지 버퍼 회로(330)는 제어 로직(350)의 제어에 응답하여 동작할 수 있다. 즉, 페이지 버퍼 회로(330)는 제어 로직(350)의 제어에 응답하여 비트 라인들(BL)을 바이어스 할 수 있다.
페이지 버퍼 회로(330)는 데이터 라인(DL)을 통해 데이터 입출력 회로(340)로부터 데이터를 수신하고, 수신된 데이터를 메모리 셀 어레이(210)에 기입한다. 또한, 페이지 버퍼 회로(330)는 메모리 셀 어레이(310)로부터 데이터를 읽고, 읽어진 데이터를 데이터 입출력 회로(340)에 전달한다. 또한, 페이지 버퍼 회로(330)는 페이저 버퍼(또는 페이지 레지스터), 열 선택 회로, 감지 증폭기, 및 쓰기 드라이버 등과 같은 구성 요소들을 포함할 수 있다.
실시 예에 따르면, 페이지 버퍼 회로(330)는 제1 래치(331), 판별 유닛(332), 및 제2 래치(333)를 포함한다. 제1 래치(331)는 복수의 제1 서브 래치들을 포함할 수 있으며, 복수의 제1 서브 래치들 각각은 하나의 비트 라인(BL)에 연결될 수 있다. 예시적으로, 제1 서브 래치는 3 개의 비트들을 저장할 수 있다. 또한, 판별 유닛(332)은 복수의 서브 판별 유닛들을 포함할 수 있다. 제2 래치(333)는 복수의 제2 서브 래치들을 포함할 수 있다. 즉, 페이지 버퍼 회로(333)에는 하나의 비트 라인(BL)을 통해 각 메모리 셀에 데이터를 전달하는 하나의 제1 서브 래치, 하나의 판별 유닛, 및 하나의 제2 서브 래치의 구성이 복수의 형태로 포함될 수 있다.
제1 래치(331)는 데이터 입출력 회로(340)로부터 복수의 데이터들을 수신하여 저장한다.
판별 유닛(332)은 제1 래치(331)로부터 복수의 데이터들을 수신한다. 판별 유닛(332)은 제1 래치(331)에 저장된 복수의 데이터들 중 적어도 하나 이상의 데이터에 대한 분할 정보가 미리 설정될 수 있다. 분할 정보는 미리 설정된 데이터 대한 비트 정보를 포함할 수 있다. 자세하게, 일 예로, 판별 유닛(332)은 복수의 데이터들 중 제1 데이터 그룹에 해당하는 데이터 패턴에 대한 분할 정보를 포함할 수 있다. 일 예로, 판별 유닛(332)은 복수의 데이터들 중 제1 데이터 그룹을 제외한 나머지 데이터들을 포함하는 제2 데이터 그룹에 해당하는 데이터 패턴에 대한 분할 정보를 포함할 수 있다. 이하에서, 판별 유닛(332)은 사전 테스트를 통해, 복수의 데이터들 중 높은 프로그램 상태에 해당하는 제1 데이터 그룹의 분할 정보를 포함하는 것으로 설명된다.
제1 데이터 그룹은 제1 워드 라인에 연결된 복수의 메모리 셀들 중 제1 메모리 셀들에 프로그램 될 수 있다. 제2 데이터 그룹은 제2 워드 라인에 연결된 복수의 메모리 셀들 중 제1 메모리 셀들을 제외한 나머지 제2 메모리 셀들에 프로그램 될 수 있다.
판별 유닛(332)은 제1 래치(331)로부터 전달된 복수의 데이터들 각각의 비트 정보와 제1 데이터 그룹의 분할 정보를 서로 비교하고, 비교 결과를 제2 래치(333)에 출력한다.
제2 래치(333)는 판별 유닛(332)으로부터의 비교 결과에 응답하여, 제1 래치(331)에 저장된 복수의 데이터들 각각에 대응하는 비트 정보를 저장한다. 예를 들어, 제2 래치(333)는 제1 래치(331)에 저장된 복수의 데이터들 각각의 비트 정보를 “0” 또는 “1”로 저장할 수 있다. 제2 래치(333)는 제어 로직(350)으로부터 출력되는 제어 신호(CS)에 응답하여, 제1 데이터 그룹 또는 제2 데이터 그룹을 선택하는 선택 신호(S)를 제1 래치(331)에 전달한다.
상술된 바와 같이, 페이지 버퍼 회로(330)는 제어 로직(350)의 제어 하에, 데이터 입출력 회로(340)로부터 수신된 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할하여 메모리 셀 어레이(310)에 출력한다. 메모리 셀 어레이(310)는 페이지 버퍼 회로(330)로부터 전달되는 분할된 데이터에 기반하여, 서로 인접한 워드 라인들 간의 프로그램 동작을 교번적으로 수행할 수 있다. 즉, 페이지 버퍼 회로(330)로부터 각 워드 라인의 제1 프로그램 동작 또는 제2 프로그램 동작에 대응하는 데이터가 메모리 셀 어레이(310)에 각각 분할되어 출력될 수 있다. 따라서, 메모리 셀 어레이(310)는 도 4 내지 도 7에서 상술된 프로그램 동작을 수행할 수 있다. 또한, 실시 예에 따르면, 페이지 버퍼는 제1 프로그램 동작이 수행된 후 그리고 상기 제2 프로그램 동작이 수행되기 전에 리셋 될 수 있다.
데이터 입출력 회로(340)는 데이터 라인들(DL)을 통해 페이지 버퍼 회로(330)에 연결된다. 데이터 입출력 회로(340)는 제어 로직(350)의 제어에 응답하여 동작할 수 있다. 데이터 입출력 회로(340)는 외부와 데이터(DATA)를 교환하도록 구성될 수 있다. 데이터 입출력 회로(340)는 외부로부터 수신되는 데이터(DATA)를 데이터 라인들(DL)을 통해 페이지 버퍼 회로(330)에 전달할 수 있다. 또한, 데이터 입출력 회로(340)는 데이터 라인들(DL)을 통해 전달되는 데이터(DATA)를 외부로 출력할 수 있다. 예시적으로, 데이터 입출력 회로(340)는 데이터 버퍼와 같은 구성 요소를 포함할 수 있다.
제어 로직(350)은 메모리 셀 어레이(310), 어드레스 디코더(320), 페이지 버퍼 회로(330), 및 데이터 입출력 회로(340)에 연결된다. 제어 로직(350)은 저장 매체(300)의 제반 동작을 제어하도록 구성된다.
또한, 본 발명의 실시 예에 따르면, 저장 매체(300)는 불휘발성 메모리 장치로 구현될 수 있다. 불휘발성 메모리 장치는 플래시 메모리(flash memory), MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torgue MRAM), Conductive bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), OUM(Ovonic Unified Memory)라고도 불리는 PRAM(Phase RAM), 저항 메모리(Resistive RAM: RRAM 또는 Re-RAM), 나노퓨브 RAM(Nanottube RAM), 폴리머 RAM(Polymer RAM: PoRAM), 나노 부유 게이트 메모리(Nano Floating Gate Memory: NFGM), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(Molecular Electronics Memory) 또는 절연 저항 변화 메모리(Insulator Resistance Change Memory)일 수 있다.
도 10은 본 발명의 다른 실시 예에 따른 도 9에 도시된 페이지 버퍼 회로를 보여주는 블록도이다. 도 11은 본 발명의 다른 실시 예에 따른 프로그램 동작 시, 도 10에 도시된 페이지 버퍼 회로의 동작 방법을 보여주는 순서도이다.
실시 예에 따르면, 제어 로직(350)은 메모리 컨트롤러(미도시)로부터 전달되는 커맨드 신호(CMD)에 응답하여 동작한다. 커맨드 신호(CMD)는 제1 커맨드 신호 및 제2 커맨드 신호들을 포함할 수 있다. 즉, 메모리 컨트롤러는 제1 데이터 그룹의 프로그램 동작 시, 제1 커맨드를 제어 로직(350)에 전달한다. 메모리 컨트롤러는 제2 데이터 그룹의 프로그램 동작 시, 제2 커맨드를 제어 로직(350)에 전달한다.
도 9 내지 도 11을 참조하면, S210 단계에서, 제어 로직(350)은 데이터 입출력 회로(340)로부터 수신되는 복수의 데이터들(D)이 제1 래치(331)에 저장되도록 제어한다.
S220 단계에서, 제어 로직(350)은 제1 래치(331)에 저장된 복수의 데이터들(D)이 판별 유닛(332)에 전달되도록 제어한다.
S230 단계에서, 판별 유닛(332)은 미리 설정된 데이터 그룹의 분할 정보 및 복수의 데이터들(D) 각각의 비트 정보를 비교한다.
S240 단계에서, 판별 유닛(332)은 비교 결과에 응답하여, 제2 래치(333)에 저장될 각 데이터의 비트 정보를 판별한다. 일 예로, 판별 유닛(332)은 복수의 데이터들 중 미리 설정된 제1 데이터 그룹의 분할 정보에 대응하는 데이터 패턴을 갖는 데이터를 제1 데이터 그룹으로 판별하고, 비트 정보를 "0"으로 판별한다. 일 예로, 판별 유닛(332)은 복수의 데이터들 중 미리 설정된 제1 데이터 그룹의 분할 정보에 대응하지 않는 데이터 패턴을 갖는 데이터를 제2 데이터 그룹으로 판별하고, 비트 정보를 "1"로 판별한다.
S250 단계에서, 제2 래치(333)는 제1 데이터 그룹 또는 제2 데이터 그룹을 선택하는 선택 신호(S)를 제1 래치(331)에 출력한다. 자세하게, 제2 래치(333)는 제어 신호(CS)의 제1 레벨에 응답하여, 제1 데이터 그룹을 선택하는 선택 신호(S)를 제1 래치(331)에 출력한다. 이와 반대로, 제2 래치(333)는 제어 신호(CS)의 제2 레벨에 응답하여, 제2 데이터 그룹을 선택하는 선택 신호(S)를 제1 래치(331)에 출력한다.
실시 예에 따르면, 제어 로직(350)은 제1 커맨드 신호에 응답하여, 제어 신호(CS)의 제1 레벨을 출력할 수 있다. 제어 로직(350)은 제2 커맨드 신호에 응답하여, 제어 신호(CS)의 제2 레벨을 출력할 수 있다.
S260 단계에서, 제1 래치(331)는 선택 신호(S)에 응답하여, 제1 데이터 그룹 및 제2 데이터 그룹 중 선택된 데이터 그룹을 메모리 셀 어레이(310)에 출력한다.
상술된 바와 같이, 본 발명의 실시 예에 따른 페이지 버퍼 회로(330)는 제어 로직(350)의 제어 하에, 제1 데이터 그룹 또는 제2 데이터 그룹을 메모리 셀 어레이(310)에 출력할 수 있다. 또한, 실시 예에 따르면, S210 내지 S250 단계에서 상술한 페이지 버퍼 회로(330)의 동작에 기반하여, 본 발명에 따른 저장 매체(300)는 도 4 내지 도 7에서 설명한 프로그램 동작 방식을 수행할 수 있다.
자세하게, 페이지 버퍼 회로(330)는 데이터 입출력 회로(340)로부터 제1 워드 라인(WLn)의 복수의 메모리 셀들에 프로그램 될 복수의 데이터 신호들을 수신한다. 페이지 버퍼 회로(330)는 제어 신호(CS)의 제1 레벨에 응답하여, 제1 워드 라인(WLn)의 메모리 셀들에 프로그램 될 제1 데이터 그룹을 메모리 셀 어레이(310)에 출력한다. 이 경우, 제어 로직(350)의 제어 하에, 제1 워드 라인(WLn)의 제1 프로그램 동작(P1)이 수행된다.
이 후, 페이지 버퍼 회로(330)는 데이터 입출력 회로(340)로부터 제2 워드 라인(WLn+1)의 복수의 메모리 셀들에 프로그램 될 복수의 데이터 신호들을 수신한다. 즉, 페이지 버퍼 회로(330)는 각 프로그램 동작마다, S210 내지 S260 단계를 반복한다. 페이지 버퍼 회로(330)는 제어 신호(CS)의 제1 레벨에 응답하여, 제2 워드 라인(WLn+1)의 메모리 셀들에 프로그램 될 제1 데이터 그룹을 메모리 셀 어레이(310)에 출력한다. 이 경우, 제어 로직(350)의 제어 하에, 제2 워드 라인(WLn+1)의 제1 프로그램 동작(P1)이 수행된다.
이 후, 페이지 버퍼 회로(330)는 데이터 입출력 회로(340)로부터 제1 워드 라인(WLn)의 복수의 메모리 셀들에 프로그램 될 복수의 데이터 신호들을 수신한다. 페이지 버퍼 회로(330)는 제어 신호(CS)의 제2 레벨에 응답하여, 제1 워드 라인(WLn)의 메모리 셀들에 프로그램 될 제2 데이터 그룹을 메모리 셀 어레이(310)에 출력한다. 이 경우, 제어 로직(350)의 제어 하에, 제1 워드 라인(WLn)의 제2 프로그램 동작(P2)이 수행된다.
이 후, 페이지 버퍼 회로(330)는 데이터 입출력 회로(340)로부터 제2 워드 라인(WLn+1)의 복수의 메모리 셀들에 프로그램 될 복수의 데이터 신호들을 수신한다. 페이지 버퍼 회로(330)는 제어 신호(CS)의 제2 레벨에 응답하여, 제2 워드 라인(WLn+1)의 메모리 셀들에 프로그램 될 제2 데이터 그룹을 메모리 셀 어레이(310)에 출력한다. 이 경우, 제어 로직(350)의 제어 하에, 제2 워드 라인(WLn+1)의 제2 프로그램 동작(P2)이 수행된다.
도 12는 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다. 도 13은 본 발명의 다른 실시 예에 따른 도 12에 도시된 페이지 버퍼 회로를 보여주는 블록도이다.
도 12를 참조하면, 저장 매체(400)는 메모리 셀 어레이(410), 어드레스 디코더(420), 페이지 버퍼 회로(430), 데이터 입출력 회로(440), 및 제어 로직(450)을 포함한다. 한편, 본 발명에 따른 저장 매체(400)는 도 9에 도시된 저장 매체(300)와 비교하여 페이지 버퍼 회로(430)의 구성을 제외한 나머지 구성들은 동일하다. 따라서, 페이지 버퍼 회로(430)의 구성을 제외한 나머지 구성들의 설명은 생략하기로 한다.
도 13을 참조하면, 페이지 버퍼 회로(430)는 제1 래치(431), 판별 유닛(432), 제2 래치(433), 및 데이터 버퍼(434)를 포함한다. 데이터 버퍼(434)를 제외한 제1 래치(431), 판별 유닛(432), 및 제2 래치(433)의 구성은 도 10에 도시된 제1 래치(331), 판별 유닛(332), 및 제2 래치(332)의 구성과 동일하므로 이에 대한 설명은 생략하기로 한다.
실시 예에 따르면, 데이터 버퍼(433)는 제1 래치(431)를 통해 제1 워드 라인(WLn, 도4 참조)의 복수의 메모리 셀들에 프로그램 될 복수의 제1 데이터들을 저장할 수 있다. 데이터 버퍼(433)는 제1 래치(431)를 통해 제2 워드 라인(WLn+1, 도4 참조)의 복수의 메모리 셀들에 프로그램 될 복수의 제2 데이터들을 저장할 수 있다.
즉, 페이지 버퍼 회로(430)는 각 프로그램 동작 마다, 각 워드 라인의 복수의 메모리 셀들에 프로그램 될 복수의 데이터들을 수신할 필요가 없다. 또한, 페이지 버퍼 회로(430)의 동작에 기반하여, 본 발명에 따른 저장 매체(400)는 도 4 내지 도 7에서 설명한 프로그램 동작 방식을 수행할 수 있다.
자세하게, 페이지 버퍼 회로(430)는 데이터 입출력 회로(440)로부터 제1 워드 라인(WLn)의 복수의 메모리 셀들에 프로그램 될 복수의 제1 데이터 신호들을 수신한다. 페이지 버퍼 회로(430)는 제어 신호(CS)의 제1 레벨에 응답하여, 제1 워드 라인(WLn)의 메모리 셀들에 프로그램 될 제1 데이터 그룹을 메모리 셀 어레이(410)에 출력한다. 이 경우, 제어 로직(350)의 제어 하에, 제1 워드 라인(WLn)의 제1 프로그램 동작(P1)이 수행된다.
이 후, 페이지 버퍼 회로(430)는 데이터 입출력 회로(440)로부터 제2 워드 라인(WLn+1)의 복수의 메모리 셀들에 프로그램 될 복수의 제2 데이터 신호들을 수신한다. 페이지 버퍼 회로(430)는 각 프로그램 동작마다, 도 11에 도시된 S210 내지 S260 단계를 반복한다. 페이지 버퍼 회로(430)는 제어 신호(CS)의 제1 레벨에 응답하여, 제2 워드 라인(WLn+1)의 메모리 셀들에 프로그램 될 제1 데이터 그룹을 메모리 셀 어레이(410)에 출력한다. 이 경우, 제어 로직(450)의 제어 하에, 제2 워드 라인(WLn+1)의 제1 프로그램 동작(P1)이 수행된다.
이 후, 페이지 버퍼 회로(430)는 데이터 버퍼(433)를 통해 복수의 제1 데이터들을 수신한다. 즉, 페이지 버퍼 회로(430)는 데이터 입출력 회로(440)로부터 복수의 제1 데이터들을 새롭게 수신하지 않는다. 페이지 버퍼 회로(430)는 제어 신호(CS)의 제2 레벨에 응답하여, 제1 워드 라인(WLn)의 메모리 셀들에 프로그램 될 제2 데이터 그룹을 메모리 셀 어레이(410)에 출력한다. 이 경우, 제어 로직(450)의 제어 하에, 제1 워드 라인(WLn)의 제2 프로그램 동작(P2)이 수행된다.
이 후, 페이지 버퍼 회로(430)는 데이터 버퍼(433)를 통해 복수의 제2 데이터들을 수신한다. 즉, 페이지 버퍼 회로(430)는 데이터 입출력 회로(440)로부터 복수의 제2 데이터들을 새롭게 수신하지 않는다. 페이지 버퍼 회로(430)는 제어 신호(CS)의 제2 레벨에 응답하여, 제2 워드 라인(WLn+1)의 메모리 셀들에 프로그램 될 제2 데이터 그룹을 메모리 셀 어레이(410)에 출력한다. 이 경우, 제어 로직(450)의 제어 하에, 제2 워드 라인(WLn+1)의 제2 프로그램 동작(P2)이 수행된다.
도 14는 본 발명의 일 실시 예에 따른 메모리 블록의 등가 회로를 보여주는 회로도이다.
도 14를 참조하면, 제1 비트 라인(BL1) 및 공통 소스 라인(CSL) 사이에 제3 방향(3rd)을 따라 낸드 스트링들(NS11, NS21, NS31)이 배치된다. 제2 비트 라인(BL2) 및 공통 소스 라인(CSL) 사이에 제3 방향(3rd)을 따라 낸드 스트링들(NS12, NS22, NS32)이 배치된다. 제3 비트 라인(BL3) 및 공통 소스 라인(CSL) 사이에 제3 방향(3rd)을 따라 낸드 스트링들(NS13, NS23, NS33)이 배치된다.
각 낸드 스트링(NS)의 스트링 선택 트랜지스터(SST)는 대응하는 비트 라인(BL)과 연결된다. 각 낸드 스트링(NS)의 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)과 연결된다. 각 낸드 스트링(NS)의 스트링 선택 트랜지스터(SST) 및 접지 선택 트랜지스터(GST) 사이에는 복수의 메모리 셀들(MC1~MC6)이 배치된다.
이하에서, 행 및 열 단위로 낸드 스트링들(NS)이 정의된다. 하나의 비트 라인에 공통으로 연결된 낸드 스트링들(NS)은 하나의 열을 형성한다. 예를 들어, 제1 비트 라인(BL1)에 연결된 낸드 스트링들(NS11, NS21, NS31)은 제1 열에 대응할 것이다. 제2 비트 라인(BL2)에 연결된 낸드 스트링들(NS12, NS22, NS32)은 제2 열에 대응할 것이다. 제3 비트 라인(BL3)에 연결된 낸드 스트링들(NS13, NS23, NS33)은 제3 열에 대응할 것이다.
하나의 스트링 선택 라인(SSL)에 연결되는 낸드 스트링들(NS)은 하나의 행을 형성한다. 예를 들어, 제1 스트링 선택 라인(SSL1)에 연결된 낸드 스트링들(NS11, N12, N13)은 제1 행을 형성한다. 제2 스트링 선택 라인(SSL2)에 연결된 낸드 스트링들(NS21, N22, N23)은 제2 행을 형성한다. 제3 스트링 선택 라인(SSL3)에 연결된 낸드 스트링들(NS31, N32, N33)은 제3 행을 형성한다.
각 낸드 스트링(NS)에서, 높이가 정의된다. 예시적으로, 각 낸드 스트링(NS)에서, 접지 선택 트랜지스터(GST)의 높이는 1인 것으로 정의된다. 접지 선택 트랜지스터(GST)에 인접한 제1 메모리 셀(MC1)의 높이는 2인 것으로 정의된다. 스트링 선택 트랜지스터(SST)의 높이는 8로 정의된다. 스트링 선택 트랜지스터(SST)와 인접한 제6 메모리 셀(MC6)의 높이는 7로 정의된다.
메모리 셀(MC)의 접지 선택 트랜지스터(GST)로부터의 순서가 증가할수록, 메모리 셀(MC)의 높이는 증가한다. 즉, 제2 방향(2nd)을 따라 메모리 셀(MC)의 높이는 증가할 수 있다. 그 결과, 제1 내지 제6 메모리 셀들(MC1~MC6)은 각각 제2 내지 제7 높이를 갖는 것으로 정의된다.
동일한 행의 낸드 스트링들(NS)은 접지 선택 라인(GSL)을 공유한다. 상이한 행의 낸드 스트링들(NS) 또한 접지 선택 라인(GSL)을 공유한다.
동일한 행의 낸드 스트링들(NS)에서, 동일한 높이의 메모리 셀들(MC)은 워드 라인(WL)을 공유한다. 동일한 높이를 가지며 상이한 행에 대응하는 낸드 스트링들(NS)의 워드 라인들(WL)은 공통으로 연결된다. 즉, 동일한 높이를 갖는 메모리 셀들(MC)은 워드 라인(WL)을 공유한다.
자세하게, 제2 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제1 워드 라인(WL1)과 연결된다. 제3 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제2 워드 라인(WL2)과 연결된다. 제4 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제3 워드 라인(WL3)과 연결된다. 제5 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제4 워드 라인(WL4)과 연결된다. 제6 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제5 워드 라인(WL5)과 연결된다. 제7 높이를 갖는 제1 내지 제3 행들의 메모리 셀들(MC)은 제6 워드 라인(WL6)과 연결된다.
동일한 행의 낸드 스트링들(NS)은 스트링 선택 라인(SSL)을 공유한다. 상이한 행의 낸드 스트링들(NS)은 상이한 스트링 선택 라인들(SSL1, SSL2, SSL3)에 각각 연결된다. 제1 내지 제3 스트링 선택 라인들(SSL1~SSL3)은 각각 제8 높이를 갖는다.
이하에서, 제1 스트링 선택 라인(SSL1)에 연결된 스트링 선택 트랜지스터들(SST)은 제1 스트링 선택 트랜지스터들(SST1)로 정의된다. 제2 스트링 선택 라인(SSL2)에 연결된 스트링 선택 트랜지스터들(SST)은 제2 스트링 선택 트랜지스터들(SST2)로 정의된다. 제3 스트링 선택 라인(SSL3)에 연결된 스트링 선택 트랜지스터들(SST)은 제3 스트링 선택 트랜지스터들(SST3)로 정의된다.
공통 소스 라인(CSL)은 낸드 스트링들(NS)에 공통으로 연결된다.
도 14에 도시된 바와 같이, 동일 높이의 워드 라인들(WL)은 공통으로 연결된다. 따라서, 특정 높이의 워드 라인(WL)이 선택될 때, 선택된 워드 라인(WL)에 연결된 모든 낸드 스트링들(NS)이 선택될 수 있다.
상이한 행의 낸드 스트링들(NS)은 상이한 스트링 선택 라인(SSL)에 연결된다. 따라서, 제1 내지 제3 스트링 선택 라인들(SSL1~SSL3)이 선택 및 비선택 됨으로써, 낸드 스트링들(NS)이 비트 라인에 전기적으로 연결 또는 분리될 수 있다. 예를 들어, 동일 워드 라인(WL)에 연결된 낸드 스트링들(NS) 중 선택된 스트링 선택 라인(SSL)에 대응하는 낸드 스트링들(NS)이 비트 라인에 전기적으로 연결될 수 있다. 이 경우, 비선택된 스트링 선택 라인(SSL)에 대응하는 낸드 스트링들(NS)은 비트 라인과 전기적으로 분리될 수 있다.
즉, 제1 내지 제3 스트링 선택 라인들(SSL1~SSL3)을 선택 및 비선택함으로써, 낸드 스트링들(NS)의 행이 선택될 수 있다. 그리고, 비트 라인들(BL1~BL3)을 선택함으로써, 선택된 행의 낸드 스트링들(NS)의 열이 선택될 수 있다.
예시적으로, 프로그램 및 읽기 동작 시에, 제1 내지 제3 스트링 선택 라인들(SSL1~SSL3) 중 하나가 선택될 것이다. 즉, 프로그램 및 읽기 동작은 낸드 스트링들(NS11~NS13, NS21~NS23, NS31~NS33)의 행 단위로 수행될 것이다.
예시적으로, 프로그램 및 읽기 동작 시에, 선택된 행의 선택된 워드 라인에 선택 전압이 인가되고, 비선택된 워드 라인들에 비선택 전압이 인가될 것이다. 예를 들면, 선택 전압은 프로그램 전압(Vpgm) 또는 선택 읽기 전압(Vrd)일 것이다. 예를 들면, 비선택 전압은 패스 전압(Vpass) 또는 비선택 읽기 전압(Vread)일 것이다. 즉, 프로그램 및 읽기 동작은 낸드 스트링들(NS11~NS13, NS21~NS23, NS31~NS33)의 선택된 행의 워드 라인 단위로 수행될 것이다.
도 15는 본 발명의 일 실시 예에 따른 메모리 카드를 보여준다. 도 15를 참조하면, 메모리 카드(2000)는 불휘발성 메모리(2100), 메모리 컨트롤러(2200), 그리고 커넥터(2300)를 포함한다.
불휘발성 메모리(2100) 또는 메모리 컨트롤러(2200)는 본 발명의 실시 예들에 따라 리셋을 수행할 수 있다. 커넥터(2300)는 메모리 카드(2000)와 외부 장치(예를 들어, 호스트)를 전기적으로 연결할 수 있다.
메모리 카드(3000)는 PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), 유니버설 플래시 기억장치(UFS) 등과 같은 메모리 카드들을 구성할 수 있다.
도 16은 본 발명의 실시 예에 따른 솔리드 스테이트 드라이브(SSD, Solid State Drive)를 보여준다. 도 16을 참조하면, 솔리드 스테이트 드라이브(3000)는 복수의 불휘발성 메모리들(3100), 메모리 컨트롤러(3200), 그리고 커넥터(3300)를 포함한다.
복수의 불휘발성 메모리들(3100) 각각 또는 메모리 컨트롤러(3200)는 본 발명의 실시 예들에 따라 리셋을 수행할 수 있다. 커넥터(3300)는 솔리드 스테이트 드라이브(3000)와 외부 장치(예를 들어, 호스트)를 전기적으로 연결할 수 있다.
도 17은 본 발명의 다른 실시 예에 따른 컴퓨팅 장치를 보여주는 블록도이다. 도 17을 참조하면, 컴퓨팅 장치(4000)는 프로세서(4100), 메모리(4200), 스토리지(4300), 모뎀(4400), 그리고 사용자 인터페이스(4500)를 포함한다.
프로세서(4100)는 컴퓨팅 장치(4000)의 제반 동작을 제어하고, 논리 연산을 수행할 수 있다. 예를 들어, 프로세서(4100)는 시스템-온-칩(SoC, System-on-Chip)으로 구성될 수 있다.
메모리(4200)는 프로세서(4100)와 통신할 수 있다. 메모리(4200)는 프로세서(4100) 또는 컴퓨팅 장치(4000)의 동작 메모리(또는 메인 메모리)일 수 있다. 메모리(4200)는 SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM) 등과 같은 휘발성 메모리, 또는 플래시 메모리, PRAM (Phase-change RAM), MRAM (Magnetic RAM), RRAM (Resistive RAM), FRAM (Ferroelectric RAM) 등과 같은 불휘발성 메모리를 포함할 수 있다.
모뎀(4400)은 프로세서(4100)의 제어에 따라 외부 장치와 통신을 수행할 수 있다. 예를 들어, 모뎀(4400)은 외부 장치와 유선 또는 무선 통신을 수행할 수 있다. 모뎀(4400)은 LTE (Long Term Evolution), 와이맥스(WiMax), GSM (Global System for Mobile communication), CDMA (Code Division Multiple Access), 블루투스(Bluetooth), NFC (Near Field Communication), 와이파이(WiFi), RFID (Radio Frequency IDentification) 등과 같은 다양한 무선 통신 방식들, 또는 USB (Universal Serial Bus), SATA (Serial AT Attachment), SCSI (Small Computer Small Interface), 파이어와이어(Firewire), PCI (Peripheral Component Interconnection) 등과 같은 다양한 유선 통신 방식들 중 적어도 하나에 기반하여 통신을 수행할 수 있다.
사용자 인터페이스(4500)는 프로세서(4100)의 제어에 따라 사용자와 통신할 수 있다. 예를 들어, 사용자 인터페이스(4500)는 키보드, 키패드, 버튼, 터치 패널, 터치 스크린, 터치 패드, 터치 볼, 카메라, 마이크, 자이로스코프 센서, 진동 센서, 등과 같은 사용자 입력 인터페이스들을 포함할 수 있다. 사용자 인터페이스(4500)는 LCD (Liquid Crystal Display), OLED (Organic Light Emitting Diode) 표시 장치, AMOLED (Active Matrix OLED) 표시 장치, LED, 스피커, 모터 등과 같은 사용자 출력 인터페이스들을 포함할 수 있다.
이상에서와 같이 도면과 명세서에서 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허 청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100: 메모리 컨트롤러 340: 데이터 입출력 회로
110: 프로그램 유닛 350: 제어 로직
200; 저장 매체
300: 저장 매체
310: 메모리 셀 어레이
320: 어드레스 디코더
330: 페이지 버퍼 회로

Claims (10)

  1. 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 및 제2 워드 라인에 연결된 복수의 제2 메모리 셀들을 포함하는 불휘발성 메모리; 및
    상기 복수의 제1 메모리 셀들에 프로그램될 복수의 제1 데이터들을 제1 및 제2 데이터 그룹들로 분할하고, 상기 복수의 제2 메모리 셀들에 프로그램될 복수의 제2 데이터들을 복수의 제3 및 제4 데이터 그룹들로 분할하는 메모리 컨트롤러를 포함하고,
    상기 불휘발성 메모리는 상기 제1 데이터 그룹의 제1 프로그램 동작 및 상기 제3 데이터 그룹의 제2 프로그램 동작을 순차적으로 수행한 후, 상기 제2 데이터 그룹의 제3 프로그램 동작 및 상기 제4 데이터 그룹의 제4 프로그램 동작을 순차적으로 수행하되,
    상기 제1 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 제1 선택 메모리 셀들에, 상기 제2 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 상기 제1 선택 메모리 셀들과 다른 제2 선택 메모리 셀들에 각각 프로그램되며,
    상기 제3 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 제3 선택 메모리 셀들에, 상기 제4 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 상기 제3 선택 메모리 셀들과 다른 제4 선택 메모리 셀들에 각각 프로그램되는 데이터 저장 장치.
  2. 제 1 항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 및 제2 프로그램 동작들에 기반하여 상기 제1 및 제3 데이터 그룹들을 상기 불휘발성 메모리에 제공하고,
    상기 제3 및 제4 프로그램 동작들에 기반하여 상기 제2 및 제4 데이터 그룹들을 상기 불휘발성 메모리에 제공하는 데이터 저장 장치.
  3. 제1 워드 라인에 연결된 복수의 제1 메모리 셀들 및 제2 워드 라인에 연결된 복수의 제2 메모리 셀들을 포함하는 메모리 셀 어레이; 및
    상기 복수의 제1 메모리 셀들에 프로그램 될 제1 데이터들 및 상기 복수의 제2 메모리 셀들에 프로그램 될 제2 데이터들 중 어느 하나의 데이터들을 수신하고, 상기 수신된 데이터들을 제1 데이터 그룹 및 제2 데이터 그룹으로 분할하는 페이지 버퍼 회로를 포함하되,
    제1 프로그램 동작 시에, 상기 페이지 버퍼는 상기 제1 데이터 그룹을 상기 제1 워드 라인 및 상기 제2 워드 라인 중 선택된 워드 라인의 제1 메모리 셀들에 프로그램하고,
    제2 프로그램 동작 시에, 상기 페이지 버퍼는 상기 제2 데이터 그룹을 상기 선택된 워드 라인의 상기 제1 메모리 셀들과 다른 제2 메모리 셀들에 프로그램하는 불휘발성 메모리 장치.
  4. 제 3 항에 있어서,
    상기 페이지 버퍼 회로에 제어 신호를 제공하는 제어 로직을 더 포함하되,
    상기 페이지 버퍼 회로는 상기 제어 신호에 응답하여 상기 제1 데이터 그룹 및 상기 제2 데이터 그룹들 중 어느 하나의 데이터 그룹을 상기 메모리 셀 어레이에 프로그램하는 불휘발성 메모리 장치.
  5. 제 4 항에 있어서,
    상기 제어 로직은 외부로부터 제1 커맨드 신호 및 제2 커맨드 신호를 수신하며,
    상기 제어 로직은 상기 제1 커맨드 신호에 응답하여 제1 레벨의 제어 신호를 상기 페이지 버퍼 회로에 제공하며, 상기 제2 커맨드 신호에 응답하여 제2 레벨의 제어 신호를 상기 페이지 버퍼 회로에 제공하는 불휘발성 메모리 장치.
  6. 제 5 항에 있어서,
    상기 페이지 버퍼 회로는 상기 제1 레벨의 제어 신호에 응답하여 상기 제1 데이터 그룹을 상기 메모리 셀 어레이에 프로그램하며,
    상기 제2 레벨의 제어 신호에 응답하여 상기 제2 데이터 그룹을 상기 메모리 셀 어레이에 프로그램하는 불휘발성 메모리 장치.
  7. 제 3 항에 있어서,
    상기 페이지 버퍼 회로는,
    상기 수신된 데이터들을 저장하는 제1 래치; 및
    미리 설정된 분할 정보 및 상기 수신된 데이터들 각각의 비트 정보를 비교하고, 비교 결과에 따라 상기 수신된 데이터들 각각의 데이터 그룹을 판별하는 판별 유닛; 및
    상기 판별 결과에 따라 상기 복수의 데이터들 각각의 데이터 그룹의 정보를 저장하는 제2 래치를 포함하는 불휘발성 메모리 장치.
  8. 제 7 항에 있어서,
    상기 판별 유닛은 상기 수신된 데이터들 중 상기 미리 설정된 분할 정보에 대응하는 데이터 패턴을 갖는 데이터를 상기 제1 데이터 그룹으로 판별하고, 대응하지 않은 데이터 패턴을 갖는 데이터를 상기 제2 데이터 그룹으로 판별하는 불휘발성 메모리 장치.
  9. 제 8 항에 있어서,
    상기 제2 래치는 상기 제어 신호의 제1 레벨에 응답하여, 상기 수신된 데이터들 중 상기 제1 데이터 그룹으로 판별된 데이터들을 선택하는 선택 신호를 상기 제1 래치에 제공하는 불휘발성 메모리 장치.
  10. 적어도 하나의 메모리 블록을 갖는 불휘발성 메모리를 포함하는 데이터 저장 장치의 동작 방법에 있어서,
    상기 적어도 하나의 메모리 블록의 제1 워드 라인에 연결된 복수의 제1 메모리 셀들에 프로그램 될 복수의 제1 데이터들을 제1 및 제2 데이터 그룹들로 분할하는 단계;
    상기 제1 데이터 그룹의 제1 프로그램 동작을 수행하는 단계;
    상기 적어도 하나의 메모리 블록의 제2 워드 라인에 연결된 복수의 제2 메모리 셀들에 프로그램 될 복수의 제2 데이터들을 제3 및 제4 데이터 그룹들로 분할하는 단계;
    상기 제3 데이터 그룹의 제2 프로그램 동작을 수행하는 단계;
    상기 제2 데이터 그룹의 제3 프로그램 동작을 수행하는 단계; 및
    상기 제4 데이터 그룹의 제4 프로그램 동작을 수행하는 단계를 포함하되,
    상기 제1 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 제1 선택 메모리 셀들에, 상기 제2 데이터 그룹은 상기 복수의 제1 메모리 셀들 중 상기 제1 선택 메모리 셀들과 다른 제2 선택 메모리 셀들에 각각 프로그램되며,
    상기 제3 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 제3 선택 메모리 셀들에, 상기 제4 데이터 그룹은 상기 복수의 제2 메모리 셀들 중 상기 제3 선택 메모리 셀들과 다른 제4 선택 메모리 셀들에 각각 프로그램되는 동작 방법.
KR1020140096657A 2014-07-29 2014-07-29 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법 KR102234592B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140096657A KR102234592B1 (ko) 2014-07-29 2014-07-29 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법
US14/797,203 US9406386B2 (en) 2014-07-29 2015-07-13 Data storage device and operation method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140096657A KR102234592B1 (ko) 2014-07-29 2014-07-29 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법

Publications (2)

Publication Number Publication Date
KR20160014860A true KR20160014860A (ko) 2016-02-12
KR102234592B1 KR102234592B1 (ko) 2021-04-05

Family

ID=55180714

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140096657A KR102234592B1 (ko) 2014-07-29 2014-07-29 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법

Country Status (2)

Country Link
US (1) US9406386B2 (ko)
KR (1) KR102234592B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200030177A (ko) 2018-09-12 2020-03-20 고려대학교 산학협력단 인-메모리 기반의 다차원 데이터 관리 장치 및 방법, 이를 수행하기 위한 기록 매체

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10600484B2 (en) * 2017-12-20 2020-03-24 Silicon Storage Technology, Inc. System and method for minimizing floating gate to floating gate coupling effects during programming in flash memory
KR20190135746A (ko) * 2018-05-29 2019-12-09 삼성전자주식회사 쓰기 버퍼 메모리를 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
JP2023000031A (ja) * 2021-06-17 2023-01-04 富士通株式会社 データ配置プログラム、プロセッサ、及びデータ配置方法
CN116547759A (zh) * 2021-12-02 2023-08-04 长江存储科技有限责任公司 存储器设备、存储器系统及其程序操作方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169062A1 (en) * 2004-01-05 2005-08-04 Sony Corporation Data storage apparatus, data storage control apparatus, data storage control method, and data storage control program
KR20090078285A (ko) * 2008-01-14 2009-07-17 삼성전자주식회사 메모리 장치 및 멀티 비트 프로그래밍 방법
US20100058003A1 (en) * 2008-09-03 2010-03-04 Akio Goto Multi-plane data order
KR20140020445A (ko) * 2012-08-08 2014-02-19 삼성전자주식회사 3차원 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 프로그램 방법
KR20140051687A (ko) * 2012-10-23 2014-05-02 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4907925B2 (ja) 2005-09-09 2012-04-04 株式会社東芝 不揮発性半導体記憶装置
US7349260B2 (en) 2005-12-29 2008-03-25 Sandisk Corporation Alternate row-based reading and writing for non-volatile memory
KR100905867B1 (ko) 2006-09-06 2009-07-03 주식회사 하이닉스반도체 멀티 레벨 셀을 갖는 플래쉬 메모리 소자의 프로그램 방법
KR100816154B1 (ko) 2007-01-23 2008-03-21 주식회사 하이닉스반도체 플래시 메모리 소자의 어드레스 스케쥴링 방법
US7619920B2 (en) 2007-07-05 2009-11-17 Kabushiki Kaisha Toshiba NAND type flash memory and write method of the same
KR101802815B1 (ko) * 2011-06-08 2017-12-29 삼성전자주식회사 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 프로그램 방법
KR101734204B1 (ko) 2010-06-01 2017-05-12 삼성전자주식회사 프로그램 시퀀서를 포함하는 플래시 메모리 장치 및 시스템, 그리고 그것의 프로그램 방법
KR101666406B1 (ko) 2010-08-16 2016-10-17 삼성전자 주식회사 비휘발성 메모리 장치 및 그 프로그램 방법, 메모리 시스템
KR20120107336A (ko) 2011-03-21 2012-10-02 삼성전자주식회사 메모리 시스템 및 그것의 어드레싱 방법
KR101821604B1 (ko) * 2011-07-25 2018-01-24 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법
KR101962786B1 (ko) 2012-03-23 2019-03-27 삼성전자주식회사 불휘발성 메모리 장치, 메모리 시스템 및 그것의 프로그램 방법
KR101891164B1 (ko) 2012-04-17 2018-08-23 삼성전자주식회사 프로그램 스케줄러를 포함하는 플래시 메모리 장치
KR101988434B1 (ko) * 2012-08-31 2019-06-12 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 서브-블록 관리 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169062A1 (en) * 2004-01-05 2005-08-04 Sony Corporation Data storage apparatus, data storage control apparatus, data storage control method, and data storage control program
KR20090078285A (ko) * 2008-01-14 2009-07-17 삼성전자주식회사 메모리 장치 및 멀티 비트 프로그래밍 방법
US20100058003A1 (en) * 2008-09-03 2010-03-04 Akio Goto Multi-plane data order
KR20140020445A (ko) * 2012-08-08 2014-02-19 삼성전자주식회사 3차원 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 프로그램 방법
KR20140051687A (ko) * 2012-10-23 2014-05-02 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
JP2014086127A (ja) * 2012-10-23 2014-05-12 Samsung Electronics Co Ltd 不揮発性メモリ及びコントローラを含むメモリシステム、そして不揮発性メモリにデータをプログラムするプログラム方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200030177A (ko) 2018-09-12 2020-03-20 고려대학교 산학협력단 인-메모리 기반의 다차원 데이터 관리 장치 및 방법, 이를 수행하기 위한 기록 매체

Also Published As

Publication number Publication date
US9406386B2 (en) 2016-08-02
KR102234592B1 (ko) 2021-04-05
US20160035427A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
KR102321501B1 (ko) 불휘발성 메모리 장치 및 그것을 포함하는 스토리지 장치의 동작 방법
CN106157999B (zh) 包括虚设存储单元的半导体存储器件及其操作方法
KR102160290B1 (ko) 불휘발성 메모리 및 불휘발성 메모리의 읽기 방법
KR102248276B1 (ko) 스토리지 장치의 동작 방법
KR102294127B1 (ko) 누설 전류 감지 장치 및 이를 포함하는 비휘발성 메모리 장치
KR102311916B1 (ko) 스토리지 장치
CN107369470B (zh) 存储设备的编程方法和使用其的存储系统
KR102294848B1 (ko) 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치
KR102242022B1 (ko) 불휘발성 메모리 및 그것의 프로그램 방법
US9910607B2 (en) Method of managing a memory, and a memory system
KR20150130634A (ko) 불휘발성 메모리 시스템 및 메모리 컨트롤러의 동작 방법
KR102187521B1 (ko) 불휘발성 메모리 및 메모리 컨트롤러를 포함하는 메모리 시스템 및 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
US9953712B2 (en) Nonvolatile memory device and storage device including the nonvolatile memory device
KR20220042093A (ko) 충전 노드를 충전하는 구동 회로
KR102122239B1 (ko) 비휘발성 메모리 장치 및 그 프로그램 방법
US9030878B2 (en) Semiconductor memory device including a plurality of cell strings, memory system including the same, and control method thereof
US10268575B2 (en) Nonvolatile memory device and memory system including the same
KR102234592B1 (ko) 불휘발성 메모리, 데이터 저장 장치, 및 데이터 저장 장치의 동작 방법
KR20190143310A (ko) 저장 장치 및 그 동작 방법
KR20160124575A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법과 독출 방법
KR20170023348A (ko) 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 쓰기를 제어하는 컨트롤러를 포함하는 스토리지 장치 및 스토리지 장치의 동작 방법
KR20170069346A (ko) 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 동작 방법
KR102272248B1 (ko) 불휘발성 메모리 장치를 포함하는 데이터 저장 장치 및 그것의 동작 방법
KR102127287B1 (ko) 메모리 컨트롤러 및 메모리 컨트롤러가 불휘발성 메모리로부터 데이터를 읽는 데이터 읽기 방법
KR102295058B1 (ko) 반도체 메모리 시스템 및 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법

Legal Events

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