KR20150116285A - 비휘발성 메모리 장치의 구동 방법 - Google Patents

비휘발성 메모리 장치의 구동 방법 Download PDF

Info

Publication number
KR20150116285A
KR20150116285A KR1020140041330A KR20140041330A KR20150116285A KR 20150116285 A KR20150116285 A KR 20150116285A KR 1020140041330 A KR1020140041330 A KR 1020140041330A KR 20140041330 A KR20140041330 A KR 20140041330A KR 20150116285 A KR20150116285 A KR 20150116285A
Authority
KR
South Korea
Prior art keywords
data block
memory cell
data
memory
cell region
Prior art date
Application number
KR1020140041330A
Other languages
English (en)
Other versions
KR102126760B1 (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 KR1020140041330A priority Critical patent/KR102126760B1/ko
Priority to US14/680,502 priority patent/US9684552B2/en
Publication of KR20150116285A publication Critical patent/KR20150116285A/ko
Application granted granted Critical
Publication of KR102126760B1 publication Critical patent/KR102126760B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Abstract

비휘발성 메모리 장치의 구동 방법이 제공된다. 비휘발성 메모리 장치의 구동 방법은, 페이지 버퍼에 데이터를 저장하되, 상기 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함하고, 상기 제1 데이터 블록을 메모리 셀 영역에 라이트하고, 상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드(verify read)하고, 상기 제2 데이터 블록을 상기 메모리 셀 영역에 라이트하고, 상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드하는 것을 포함하되, 상기 제1 데이터 블록 및 상기 제2 데이터 블록의 크기는 상기 페이지 버퍼의 크기보다 작다.

Description

비휘발성 메모리 장치의 구동 방법{METHOD FOR DRIVING NONVOLATILE MEMORY DEVICE USING RESISTIVE ELEMENT}
본 발명은 비휘발성 메모리 장치의 구동 방법에 관한 것이다.
저항체(resistance material)를 이용한 비휘발성 메모리 장치(저항성 메모리 장치)에는 상변화 메모리 장치(PRAM: Phase change Random Access Memory or PCM: Phase Change Memory), 저항 메모리 장치(RRAM: Resistive RAM), 자기 메모리 장치(MRAM: Magnetic RAM) 등 있다. 동적 메모리 장치(DRAM: Dynamic RAM)나 플래시 메모리 장치는 전하(charge)를 이용하여 데이터를 저장하는 반면, 저항체를 이용한 비휘발성 메모리 장치는 캘코제나이드 합금(chalcogenide alloy)과 같은 상변화 물질의 상태 변화(PRAM), 가변 저항체의 저항 변화(RRAM), 강자성체의 자화상태에 따른 MTJ(Magnetic Tunnel Junction) 박막의 저항 변화(MRAM) 등을 이용하여 데이터를 저장한다.
여기서, 상변화 메모리 장치를 예를 들어 설명하면, 상변화 물질은 가열 후 냉각되면서 결정 상태 또는 비정질 상태로 변화되는데, 결정 상태의 상변화 물질은 저항이 낮고 비정질 상태의 상변화 물질은 저항이 높다. 따라서, 결정 상태는 셋(set) 데이터로 정의하고 비정질 상태는 리셋(reset) 데이터로 정의할 수 있다.
본 발명이 해결하고자 하는 기술적 과제는 저항성 메모리 장치에서의 라이트(write) 성능을 향상시킬 수 있는 비휘발성 메모리 장치의 구동 방법을 제공하는 것이다.
본 발명의 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 구동 방법은, 페이지 버퍼에 데이터를 저장하되, 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함하고, 제1 데이터 블록을 메모리 셀 영역에 라이트하고, 메모리 셀 영역의 제1 데이터 블록을 검증 리드(verify read)하고, 제2 데이터 블록을 메모리 셀 영역에 라이트하고, 메모리 셀 영역의 제2 데이터 블록을 검증 리드하는 것을 포함하되, 제1 데이터 블록 및 제2 데이터 블록의 크기는 페이지 버퍼의 크기보다 작다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역에서 수행되는 라이트의 단위 크기는 상기 페이지 버퍼의 크기보다 작을 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역에서 수행되는 검증 리드의 단위 크기는 상기 페이지 버퍼의 크기보다 작을 수 있다.
본 발명의 몇몇의 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드한 후, 상기 제1 데이터 블록을 상기 메모리 셀 영역에 리라이트(rewrite)하고, 상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드한 후, 상기 제2 데이터 블록을 상기 메모리 셀 영역에 리라이트하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 데이터 블록 또는 상기 제2 데이터 블록을 상기 메모리 셀 영역에 리라이트 하는 것은, 상기 메모리 셀 영역에 인가되는 전압 바이어스를 변경하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 제1 데이터 블록 또는 상기 제2 데이터 블록을 상기 메모리 셀 영역에 리라이트 하는 것은, 상기 메모리 셀 영역에 ISPP(Incremental Step Pulse Programming)를 수행하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드한 후, 상기 제1 데이터 블록 및 상기 제2 데이터 블록을 한 번에 상기 메모리 셀 영역에 리라이트하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역에 한 번 리라이트되는 데이터의 크기는 상기 메모리 셀 영역에 한 번 라이트되는 데이터의 크기보다 클 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역에 한 번 리라이트되는 데이터의 크기는 상기 메모리 셀 영역에서 한 번 검증 리드되는 데이터의 크기보다 클 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법은, 페이지 버퍼에 데이터를 저장하되, 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함하고, 제1 데이터 블록을 메모리 셀 영역에 라이트하고, 제2 데이터 블록을 메모리 셀 영역에 라이트하고, 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드(verify read)하는 것을 포함하되, 제1 데이터 블록 및 제2 데이터 블록의 크기는 페이지 버퍼의 크기보다 작다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드하는 것은, 상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드한 후, 상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드하는 것은, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 시간은 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 각각 검증 리드하는 총 시간보다 짧을 수 있다.
본 발명의 몇몇의 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드한 후, 상기 제1 데이터 블록 및 상기 제2 데이터 블록을 상기 메모리 셀 영역에 리라이트(rewrite)하는 것을 더 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 페이지 버퍼의 데이터는 상기 제3 데이터 블록 및 제4 데이터 블록을 더 포함하고, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드한 후, 상기 제3 데이터 블록 및 상기 제4 데이터 블록을 상기 메모리 셀 영역에 라이트하고, 상기 메모리 셀 영역의 제3 데이터 블록 및 제4 데이터 블록을 검증 리드하고, 상기 제1 데이터 블록 내지 상기 제4 데이터 블록을 한 번에 상기 메모리 셀 영역에 리라이트하는 것을 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법은, 페이지 버퍼에 저장된 데이터를 제1 데이터 블록 내지 제N(단, N은 2 이상의 자연수) 데이터 블록으로 분할하고, 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 메모리 셀 영역에 라이트하고, 미리 설정된 시간 동안 딜레이(delay)하고, 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 검증 리드(verify read)하는 것을 포함한다.
본 발명의 몇몇의 실시예에서, 상기 딜레이하는 시간의 길이는, 상기 제1 데이터 블록을 상기 메모리 셀 영역에 라이트한 후, 상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드하기 전까지 상기 비휘발성 메모리의 라이트 후 리드 시간(tWTR)을 확보할 수 있도록 설정될 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 검증 리드하는 것은, 상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 각각 검증 리드하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 검증 리드하는 것은, 상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 한 번에 검증 리드하는 것을 포함할 수 있다.
본 발명의 몇몇의 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 검증 리드한 후, 상기 제1 데이터 블록 내지 제N 데이터 블록을 상기 메모리 셀 영역에 리라이트(rewrite)하는 것을 더 포함할 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 메모리 시스템을 설명하기 위한 블록도이다.
도 2는 도 1의 메모리 컨트롤러를 세부적으로 설명하기 위한 블록도이다.
도 3은 도 1의 메모리 장치를 세부적으로 설명하기 위한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 5는 도 4의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 7은 도 6의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 9는 도 8의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 11은 도 10의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 12는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 13은 도 12의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 14는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 15는 도 1의 메모리 시스템의 응용 예를 설명하기 위한 블록도이다.
도 16은 솔리드 스테이트 드라이브를 포함하는 사용자 시스템을 설명하기 위한 블록도이다.
도 17은 비휘발성 메모리 장치를 포함하는 메모리 카드를 설명하기 위한 블록도이다.
도 18은 비휘발성 메모리 장치를 포함하는 컴퓨팅 시스템을 설명하기 위한 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 도면에서 층 및 영역들의 상대적인 크기는 설명의 명료성을 위해 과장된 것일 수 있다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
하나의 소자(elements)가 다른 소자와 "접속된(connected to)" 또는 "커플링된(coupled to)" 이라고 지칭되는 것은, 다른 소자와 직접 연결 또는 커플링된 경우 또는 중간에 다른 소자를 개재한 경우를 모두 포함한다. 반면, 하나의 소자가 다른 소자와 "직접 접속된(directly connected to)" 또는 "직접 커플링된(directly coupled to)"으로 지칭되는 것은 중간에 다른 소자를 개재하지 않은 것을 나타낸다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다. "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다.
소자(elements) 또는 층이 다른 소자 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 소자 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 소자를 개재한 경우를 모두 포함한다. 반면, 소자가 "직접 위(directly on)" 또는 "바로 위"로 지칭되는 것은 중간에 다른 소자 또는 층을 개재하지 않은 것을 나타낸다.
비록 제1, 제2 등이 다양한 소자, 구성요소 및/또는 섹션들을 서술하기 위해서 사용되나, 이들 소자, 구성요소 및/또는 섹션들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자, 구성요소 또는 섹션들을 다른 소자, 구성요소 또는 섹션들과 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자, 제1 구성요소 또는 제1 섹션은 본 발명의 기술적 사상 내에서 제2 소자, 제2 구성요소 또는 제2 섹션일 수도 있음은 물론이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 본 발명의 실시예들은 상변화 메모리 장치(PRAM: Phase change Random Access Memory)를 이용하여 설명할 것이다. 그러나, 본 발명은 저항 메모리 장치(RRAM: Resistive RAM), 강유전체 메모리 장치(FRAM: Ferroelectric RAM)과 같이 저항체를 이용한 비휘발성 메모리 장치에 모두 적용될 수 있음은 본 발명이 속하는 기술 분야의 통상의 기술자에게 자명하다.
도 1은 본 발명의 일 실시예에 따른 메모리 시스템을 설명하기 위한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 메모리 시스템(1)은 메모리 컨트롤러(100; memory controller) 및 메모리 장치(200; memory device)를 포함한다.
메모리 컨트롤러(100)는 호스트(미도시)의 요청에 응답하여 메모리 장치(200)를 제어하도록 구성된다. 예를 들어, 메모리 컨트롤러(100)는 메모리 장치(200)의 라이트(write), 리드(read), 이레이즈(erase) 동작 등을 제어하도록 구성될 수 있다. 메모리 컨트롤러(100)는 메모리 장치(200)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성된다.
메모리 장치(200)는 복수의 메모리 셀을 포함하여 데이터를 저장하도록 구성된다. 메모리 장치(200)는 비휘발성 메모리 장치로 제공될 수 있다.
도 2는 도 1의 메모리 컨트롤러를 세부적으로 설명하기 위한 블록도이다.
도 2를 참조하면, 메모리 컨트롤러(100)는 호스트 인터페이스(110; host I/F), 프로세서(120; processor), 버퍼 메모리(130), 메모리 인터페이스(140; memory I/F)를 포함한다.
호스트 인터페이스(110)는 호스트와 인터페이싱 하도록 구성될 수 있다. 예를 들어, 호스트 인터페이스(110)는 USB(Universal Serial Bus) 프로토콜, MMC(multimedia card) 프로토콜, PCI(peripheral component interconnection) 프로토콜, PCI-E(PCI-express) 프로토콜, ATA(Advanced Technology Attachment) 프로토콜, Serial-ATA 프로토콜, Parallel-ATA 프로토콜, SCSI(small computer small interface) 프로토콜, ESDI(enhanced small disk interface) 프로토콜, 그리고 IDE(Integrated Drive Electronics) 프로토콜 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 포함하도록 구성될 수 있다.
프로세서(120)는 메모리 컨트롤러(100)의 제반 동작을 제어하도록 구성될 수 있다.
버퍼 메모리(130)는 메모리 장치(200)에 프로그램될 데이터를 호스트로부터 전달받아 임시 저장할 수 있다. 프로그램 동작시, 버퍼 메모리(130)에 임시 저장된 데이터는 메모리 장치(200)에 전달되어 프로그램될 수 있다. 버퍼 메모리(130)는 메모리 장치(200)로부터 독출된 데이터를 전달받아 임시 저장할 수도 있다. 예를 들어, 버퍼 메모리(130)는 RAM(Random Access Memory)으로 구성될 수 있으나, 이에 한정되는 것은 아니다.
메모리 인터페이스(140)는 메모리 장치(200)와 인터페이싱 하도록 구성될 수 있다. 예를 들어, 메모리 인터페이스(140)는 낸드 인터페이스 프로토콜을 포함하도록 구성될 수 있으나, 이에 한정되는 것은 아니다.
도 2에서는 명확하게 도시하지 않았으나, 메모리 컨트롤러(100)는 오류 정정 블록을 추가적으로 포함할 수 있다. 오류 정정 블록은 오류 정정 코드(ECC)를 이용하여 메모리 장치(200)로부터 독출된 데이터의 오류를 검출하고, 이를 정정하도록 구성될 수 있다.
오류 정정 블록은 메모리 컨트롤러(100)의 구성 요소로서 제공되거나, 메모리 장치(200)의 구성 요소로서 제공될 수 있다.
도 3은 도 1의 메모리 장치를 세부적으로 설명하기 위한 블록도이다.
도 3을 참조하면, 메모리 장치(200)는 제어 로직(210; control logic), 메모리 셀 영역(220; memory cell region), 페이지 버퍼(230; page buffer)를 포함한다.
제어 로직(210)은 메모리 장치(200)의 제반 동작을 제어하도록 구성될 수 있다.
메모리 셀 영역(220)은 데이터를 저장하는 저장 공간으로 제공된다. 본 발명의 몇몇의 실시예에서, 메모리 셀 영역(220)은 상변화 메모리 장치(PRAM: Phase change Random Access Memory or PCM: Phase Change Memory), 저항 메모리 장치(RRAM: Resistive RAM), 자기 메모리 장치(MRAM: Magnetic RAM)일 수 있다.
페이지 버퍼(230)는 제어 로직(210)의 요청에 응답하여 메모리 셀 영역(220)에 데이터를 라이트하거나, 메모리 셀 영역(220)으로부터 데이터를 리드할 수 있다. 메모리 장치(200)의 프로그램 동작시, 페이지 버퍼(230)는 메모리 셀 영역(220)에 라이트 될 페이지 데이터를 임시 저장할 수 있다. 또는, 메모리 장치(200)의 리드 동작시, 페이지 버퍼(230)는 메모리 셀 영역(220)로부터 리드된 페이지 데이터를 임시 저장할 수도 있다. 본 발명의 몇몇의 실시예에서, 페이지 버퍼(230)에 저장되는 데이터는 낸드 플래시 메모리 장치와 호환되는 크기를 가질 수 있다. 예를 들어, 페이지 버퍼(230)에 저장된 데이터의 단위 크기는 4 KB일 수 있다.
도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 저장된 데이터를 메모리 셀 영역(220)에 저장하기 위해 복수 회의 라이트 동작과 복수 회의 검증 리드 동작을 번갈아 수행한다. 여기서, 데이터의 라이트 동작 또는 검증 리드 동작은 메모리 컨트롤러(100)에 의해 수행되거나, 메모리 장치(200)의 제어 로직(210)에 의해 수행될 수 있으나, 이에 한정되는 것은 아니다. 이하에서는 설명의 편의를 위해, 메모리 컨트롤러(100)가 데이터의 라이트 동작, 검증 리드 동작 등의 각종 동작을 수행하는 것으로 설명한다.
구체적으로, 페이지 버퍼(230)에 저장된 데이터는 복수의 데이터 블록으로 분할될 수 있다. 예를 들어, 페이지 버퍼(230)에 저장된 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함할 수 있다. 메모리 컨트롤러(100)는 제1 데이터 블록에 대해 메모리 셀 영역(220)에 라이트 동작(300)을 수행한 후, 메모리 셀 영역(220)의 제1 데이터 블록에 대해 검증 리드 동작(302)을 수행한다. 이후, 메모리 컨트롤러는 제2 데이터 블록에 대해 메모리 셀 영역(220)에 라이트 동작(304)을 수행한 후, 메모리 셀 영역(220)의 제2 데이터 블록에 대해 검증 리드 동작(302)을 수행한다.
일반적으로 낸드 플래시 메모리 장치에서는 페이지 버퍼(230)의 크기를 단위로 데이터의 라이트 및 검증 리드 동작이 수행되지만, 저항성 메모리 장치에서 페이지 버퍼(230)의 크기 단위로 라이트를 하는 경우 라이트 전류가 많아지게 되는 문제가 있다. 따라서, 저항성 메모리 장치에서는 라이트 전류를 제한하기 위해 페이지 버퍼(230)보다 작은 단위로 라이트를 할 수 있다.
이에 따라, 본 실시예에서, 제1 데이터 블록 및 제2 데이터 블록의 크기는 페이지 버퍼(230)의 크기(예컨대, 4 KB)보다 작도록 설정된다. 다시 말해서, 메모리 셀 영역(220)에서 수행되는 라이트 동작의 단위 크기(c)는 페이지 버퍼(230)의 크기(a)보다 작고, 메모리 셀 영역(220)에서 수행되는 검증 리드 동작의 단위 크기(d) 역시 페이지 버퍼(230)의 크기(b)보다 작다. 도 4에 도시된 실시예에서는 페이지 버퍼(230)에 저장된 데이터를 메모리 셀 영역(220)에 저장하기 위해 8 회의 라이트 동작과 8 회의 검증 리드 동작이 번갈아 수행된다. 물론, 라이트 동작 및 검증 리드 동작의 회수는 분할된 데이터 블록의 크기에 따라 정해질 것이다.
한편, 본 실시예에서 메모리 컨트롤러(100)는 메모리 셀 영역(220)의 제1 데이터 블록에 대해 검증 리드 동작(302)을 수행한 후, 제1 데이터 블록을 메모리 셀 영역(220)에 리라이트 할 수 있다. 구체적으로, 페이지 버퍼(230)에 저장된 제1 데이터 블록과, 검증 리드된 메모리 셀 영역(220)의 제1 데이터 블록을 비교하여 일치 여부를 판단한다. 만일, 페이지 버퍼(230)에 저장된 제1 데이터 블록과 검증 리드된 메모리 셀 영역(220)의 제1 데이터 블록이 일치한다면 제1 데이터 블록의 라이트 동작(300)은 성공한 것이지만, 그렇지 않다면 제1 데이터 블록의 라이트 동작(300)은 실패한 것이다. 제1 데이터 블록의 라이트 동작(300)이 실패한 경우, 메모리 컨트롤러(100)는 제1 데이터 블록을 메모리 셀 영역(220)에 리라이트 할 수 있다. 마찬가지로, 컨트롤러(100)는 메모리 셀 영역(220)의 제2 데이터 블록에 대해 검증 리드 동작(302)을 수행한 후, 제2 데이터 블록을 메모리 셀 영역(220)에 리라이트할 수 있다.
본 발명의 몇몇의 실시예에서, 제1 데이터 블록 또는 제2 데이터 블록을 메모리 셀 영역(220)에 리라이트 하는 것은 메모리 셀 영역(220)에 인가되는 전압 바이어스를 변경(bias change)하는 것일 수 있다. 또한, 본 발명의 몇몇의 실시예에서, 제1 데이터 블록 또는 제2 데이터 블록을 메모리 셀 영역(220)에 리라이트 하는 것은, 메모리 셀 영역(220)에 ISPP(Incremental Step Pulse Programming)를 수행하는 것일 수 있다.
도 5는 도 4의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 도 4의 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 데이터를 라이트(S400)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i 번째 데이터 블록을 라이트(S410)하는 것을 포함할 수 있다. 여기서 i는, 페이지 버퍼(230)에 저장된 데이터가 N(단, N은 2 이상의 자연수)개의 데이터 블록을 분할되었다고 가정할 경우, 1 내지 N 범위의 자연수이다.
다음으로, 상기 방법은 메모리 셀 영역(220)의 i 번째 데이터 블록을 검증 리드(S420)하고, 입력 데이터(즉, 페이지 버퍼(230)에 저장된 i 번째 데이터 블록)와 검증 리드된 데이터(즉, 메모리 셀 영역(220)의 i 번째 데이터 블록)의 일치 여부를 판단(S430)하는 것을 포함할 수 있다. 만일, 입력 데이터와 검증 리드된 데이터가 일치하지 않는 경우, 라이트 사이클이 미리 설정된 임계값을 벗어나지 않는다면(S440), DC 바이어스를 조정(S450)함으로써 i 번째 데이터 블록을 메모리 셀 영역(220)에 리라이트한다. 도 4 및 도 5에 도시된 실시예에서, i 번째 데이터 블록에 대해 단계(S410 내지 S450)가 수행된 뒤에는, i + 1 번째 데이터 블록에 대해서도 마찬가지로 단계(S410 내지 S450)가 수행될 수 있다.
도 6은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 저장된 데이터를 메모리 셀 영역(220)에 저장하기 위해 복수 회의 라이트 동작과 복수 회의 검증 리드 동작을 번갈아 수행한다. 그러나, 도 4와 다른 점은, 제1 데이터 블록에 대해 검증 리드 동작(302)을 수행한 후, 제2 데이터에 대해 라이트 동작(304)을 수행하기 전에 제1 데이터 블록을 메모리 셀 영역(220)에 리라이트(즉, 바이어스 조정(bias change))하지 않는다는 점이다. 다시 말해서, 본 실시예에서 메모리 컨트롤러(100)는 제1 데이터 블록 및 제2 데이터 블록을 모두 라이트(300, 304)하고 제1 데이터 블록 및 제2 데이터 블록을 모두 검증 리드(302, 306)한 후에 비로소 제1 데이터 블록 및 제2 데이터 블록을 한 번에 메모리 셀 영역(220)에 리라이트한다. 이에 따라, 메모리 셀 영역(220)에 한 번 리라이트되는 데이터의 크기는 메모리 셀 영역(220)에 한 번 라이트되는 데이터의 크기보다 클 수 있다, 또한, 메모리 셀 영역(220)에 한 번 리라이트되는 데이터의 크기는 메모리 셀 영역(220)에 한 번 검증 리드되는 데이터의 크기보다 클 수 있다.
데이터 블록을 메모리 셀 영역(220)에 리라이트하는 것은, 상술한 바와 같이, 메모리 셀 영역(220)에 인가되는 전압 바이어스를 변경(bias change)하는 것일 수 있다. 그러나, 본 발명의 다양한 실시예에 따라 데이터 블록을 복수 회 라이트하게 될 경우, 리라이트 동작을 여러 번 수행한다면 전압 바이어스를 변경하기 위한 시간적 손실이 발생할 수 있다. 전압 바이어스를 변경하기 위해서는 비교적 큰 커패시턴스에 대해 충전을 수행해야 하기 때문이다. 따라서, 상술한 방식으로 여러 개의 데이터 블록을 라이트한 후, 한 번에 여러 개의 데이터 블록을 리라이트하게 되면, 상술한 바와 같은 시간적 손실을 방지할 수 있다. 본 실시예에서는 2 개의 데이터 블록에 대해 한 번의 리라이트 동작을 수행하는 것으로 설명하였지만, 한 번의 리라이트 동작으로 처리되는 데이터 블록의 개수는 구체적인 구현 상황에 의해 정해질 수 있고, 이에 한정되지 않는다.
도 7은 도 6의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 7을 참조하면, 도 6의 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 데이터를 라이트(S500)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i 번째 데이터 블록을 라이트(S510)하는 것을 포함할 수 있다. 여기서 i는, 페이지 버퍼(230)에 저장된 데이터가 N(단, N은 2 이상의 자연수)개의 데이터 블록을 분할되었다고 가정할 경우, 1 내지 N 범위의 자연수이다.
다음으로, 상기 방법은 메모리 셀 영역(220)의 i 번째 데이터 블록을 검증 리드(S520)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i + 1 번째 데이터 블록을 라이트(S530)하고, 메모리 셀 영역(220)의 i + 1 번째 데이터 블록을 검증 리드(S540)하는 것을 포함할 수 있다. 그리고, 상기 방법은 입력 데이터(즉, 페이지 버퍼(230)에 저장된 i 번째 데이터 블록 및 i + 1 번째 데이터 블록)와 검증 리드된 데이터(즉, 메모리 셀 영역(220)의 i 번째 데이터 블록 및 i + 1 번째 데이터 블록)의 일치 여부를 판단(S550)하는 것을 포함할 수 있다. 만일, 입력 데이터와 검증 리드된 데이터가 일치하지 않는 경우, 라이트 사이클이 미리 설정된 임계값을 벗어나지 않는다면(S560), DC 바이어스를 조정(S570)함으로써 i 번째 데이터 블록 및 i + 1 번째 데이터 블록을 메모리 셀 영역(220)에 리라이트한다. 이 때, 도 6과 관련하여 상술한 바와 같이, i 번째 데이터 블록 및 i + 1 번째 데이터 블록에 대해 한 번의 리라이트 동작이 수행될 수 있다. 도 6 및 도 7에 도시된 실시예에서, i 번째 데이터 블록 및 i + 1 번째 데이터 블록에 대해 단계(S510 내지 S570)가 수행된 뒤에는, i + 2 번째 데이터 블록 및 i + 1 번째 데이터 블록 에 대해서도 마찬가지로 단계(S510 내지 S570)가 수행될 수 있다.
도 8은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법이 도 4와 다른 점은, 제1 데이터 블록을 메모리 셀 영역(220)에 라이트하고, 제2 데이터 블록을 메모리 셀 영역(220)에 라이트한 후, 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드한다는 점이다.
본 발명의 몇몇의 실시예에서, 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드하는 것은 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 것을 포함할 수 있다. 즉, 제1 데이터 블록에 대한 라이트 동작(300)과 제2 데이터 블록에 대한 라이트 동작(304)을 수행한 후, 제1 데이터 블록 및 제2 데이터 블록에 대한 검증 리드 동작(303)을 한 번에 수행할 수 있다. 이 경우 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 시간은 메모리 셀 영역(220)의 제1 데이터 블록을 및 제2 데이터 블록을 각각 검증 리드하는 총 시간보다 단축될 수 있다.
물론, 본 발명의 몇몇의 실시예에서, 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드하는 것은 메모리 셀 영역(220)의 제1 데이터 블록을 검증 리드한 후, 메모리 셀 영역(220)의 제2 데이터 블록을 검증 리드하는 것을 포함할 수도 있다.
도 9는 도 8의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 9를 참조하면, 도 8의 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 데이터를 라이트(S500)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i 번째 데이터 블록을 라이트(S510)하는 것을 포함할 수 있다. 다음으로, 상기 방법은 메모리 셀 영역(220)에 페이지 버퍼(230)의 i + 1 번째 데이터 블록을 라이트(S520)하고, 메모리 셀 영역(220)의 i 번째 데이터 블록 및 i + 1 번째 데이터 블록을 검증 리드(S530)하는 것을 포함할 수 있다.
이후, 상기 방법은 입력 데이터(즉, 페이지 버퍼(230)에 저장된 i 번째 데이터 블록 및 i + 1 번째 데이터 블록)와 검증 리드된 데이터(즉, 메모리 셀 영역(220)의 i 번째 데이터 블록 및 i + 1 번째 데이터 블록)의 일치 여부를 판단(S540)하는 것을 포함할 수 있다. 만일, 입력 데이터와 검증 리드된 데이터가 일치하지 않는 경우, 라이트 사이클이 미리 설정된 임계값을 벗어나지 않는다면(S550), DC 바이어스를 조정(S560)함으로써 i 번째 데이터 블록 및 i + 1 번째 데이터 블록을 메모리 셀 영역(220)에 리라이트할 수 있다.
도 10은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법이 도 8과 다른 점은, 데이터 리라이트 동작이 더 드물게 수행된다는 점이다. 구체적으로, 페이지 버퍼(230)의 데이터는 제1 데이터 블록 내지 제4 데이터 블록을 포함한다고 가정하자. 본 실시예에서, 상기 방법은 메모리 셀 영역(220)의 제1 데이터 블록 및 제2 데이터 블록에 대한 검증 리드 동작(303)을 수행한 후, 제3 데이터 블록 및 제4 데이터 블록에 대한 라이트 동작(320, 324)을 수행하고, 메모리 셀 영역(220)의 제3 데이터 블록 및 제4 데이터 블록을 검증 리드한다. 그 후, 상기 방법은 제1 데이터 블록 내지 제4 데이터 블록을 한 번에 메모리 셀 영역(220)에 리라이트할 수 있다.
도 11은 도 10의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 11을 참조하면, 도 10의 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 데이터를 라이트(S600)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i 번째 데이터 블록을 라이트(S610)하는 것을 포함할 수 있다. 다음으로, 상기 방법은 메모리 셀 영역(220)에 페이지 버퍼(230)의 i + 1 번째 데이터 블록을 라이트(S620)하고, 메모리 셀 영역(220)의 i 번째 데이터 블록 및 i + 1 번째 데이터 블록을 검증 리드(S630)하는 것을 포함할 수 있다.
마찬가지로, 상기 방법은, 메모리 셀 영역(220)에 페이지 버퍼(230)의 i + 2 번째 데이터 블록을 라이트(S640)하는 것을 포함할 수 있다. 다음으로, 상기 방법은 메모리 셀 영역(220)에 페이지 버퍼(230)의 i + 3 번째 데이터 블록을 라이트(S650)하고, 메모리 셀 영역(220)의 i + 2 번째 데이터 블록 및 i + 3 번째 데이터 블록을 검증 리드(S660)하는 것을 포함할 수 있다.
이후, 상기 방법은 입력 데이터(즉, 페이지 버퍼(230)에 저장된 i 번째 데이터 블록 내지 i + 3 번째 데이터 블록)와 검증 리드된 데이터(즉, 메모리 셀 영역(220)의 i 번째 데이터 블록 내지 i + 3 번째 데이터 블록)의 일치 여부를 판단(S670)하는 것을 포함할 수 있다. 만일, 입력 데이터와 검증 리드된 데이터가 일치하지 않는 경우, 라이트 사이클이 미리 설정된 임계값을 벗어나지 않는다면(S680), DC 바이어스를 조정(S690)함으로써 i 번째 데이터 블록 및 i + 3 번째 데이터 블록을 메모리 셀 영역(220)에 리라이트할 수 있다.
도 12는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 12를 참조하면, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법이 본 발명의 상술한 다른 실시예들과 다른 점은, 복수의 데이터 블록에 대해 라이트 동작이 연속적으로 수행된 후, 상기 복수의 데이터 블록에 대해 검증 리드 동작이 연속적으로 수행된다는 점이다. 구체적으로, 페이비 버퍼(230)의 데이터는 제1 데이터 블록 내지 제N(단, N은 2 이상의 자연수) 데이터 블록으로 분할된다고 가정하자. 본 실시예에서, 상기 방법은 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 메모리 셀 영역(220)에 라이트하고, 메모리 셀 영역(220)의 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 검증 리드할 수 있다.
본 발명의 몇몇의 실시예에서, 메모리 셀 영역(220)의 제1 데이터 블록 내지 제N 데이터 블록을 검증 리드하는 것은, 메모리 셀 영역(220)의 제1 데이터 블록 내지 제N 데이터 블록을 각각 검증 리드하는 것을 포함할 수 있다. 한편, 본 발명의 몇몇의 실시예에서, 메모리 셀 영역(220)의 제1 데이터 블록 내지 제N 데이터 블록을 검증 리드하는 것은, 메모리 셀 영역(2200의 제1 데이터 블록 내지 제N 데이터 블록을 한 번에 검증 리드하는 것을 포함할 수도 있다.
도 13은 도 12의 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 흐름도이다.
도 13을 참조하면, 도 12의 비휘발성 메모리 장치의 구동 방법은 페이지 버퍼(230)에 데이터를 라이트(S700)하고, 메모리 셀 영역(220)에 페이지 버퍼(230)의 1 번째 데이터 블록 내지 N 번째 데이터 블록을 라이트(S710)하는 것을 포함할 수 있다. 다음으로, 상기 방법은 메모리 셀 영역(220)의 1 번째 데이터 블록 내지 N 번째 데이터 블록을 검증 리드(S720)하는 것을 포함할 수 있다.
이후, 상기 방법은 입력 데이터(즉, 페이지 버퍼(230)에 저장된 1 번째 데이터 블록 내지 N 번째 데이터 블록)와 검증 리드된 데이터(즉, 메모리 셀 영역(220)의 1 번째 데이터 블록 및 N 번째 데이터 블록)의 일치 여부를 판단(S730)하는 것을 포함할 수 있다. 만일, 입력 데이터와 검증 리드된 데이터가 일치하지 않는 경우, 라이트 사이클이 미리 설정된 임계값을 벗어나지 않는다면(S740), DC 바이어스를 조정(S750)함으로써 1 번째 데이터 블록 내지 N 번째 데이터 블록을 메모리 셀 영역(220)에 리라이트할 수 있다.
도 14는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법을 설명하기 위한 도면이다.
도 14을 참조하면, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 구동 방법이 도 12와 다른 점은, 복수의 데이터 블록에 대해 라이트 동작이 연속적으로 수행된 후, 상기 복수의 데이터 블록에 대해 검증 리드 동작이 연속적으로 수행되기 전에, 미리 설정된 시간 동안 딜레이(delay)를 한다는 점이다. 본 발명의 몇몇의 실시예에서, 딜레이하는 시간의 길이는, 제1 데이터 블록을 메모리 셀 영역(220)에 라이트한 후, 메모리 셀 영역(220)의 제1 데이터 블록을 검증 리드하기 전까지 비휘발성 메모리의 라이트 후 리드 시간(tWTR)을 확보할 수 있도록 설정될 수 있다.
도 15는 도 1의 메모리 시스템의 응용 예를 설명하기 위한 블록도이다. 설명의 편의를 위해, 도 1과 차이점을 중점으로 하여 설명하기로 한다.
도 15를 참조하면, 메모리 시스템의 응용 예(2000)는 메모리 컨트롤러(2100; memory controller) 및 메모리 장치(2200; memory device)를 포함한다.
메모리 장치(2200)는 복수의 메모리 칩들을 포함하여 구성될 수 있다. 복수의 메모리 칩들은 복수의 그룹으로 분할될 수 있다. 복수의 메모리 칩들의 각 그룹은 하나의 공통 채널을 통해 메모리 컨트롤러(2100)와 인터페이싱할 수 있다. 예를 들어, 복수의 메모리 칩들의 각 그룹은 제1 내지 제l 채널들(CH1~CHl)을 통해 메모리 컨트롤러(2100)와 인터페이싱할 수 있다.
도 15의 메모리 시스템의 응용예(2000)에서 복수의 메모리 칩들은 도 1을 참조하여 설명한 메모리 장치(200)와 실질적으로 동일하게 구성될 수 있다. 복수의 메모리 칩들은 메인 프로그램 동작의 제1 프로그램 동작시, 페이지 버퍼에 백업된 복수의 페이지 데이터를 이용하여 수행할 수 있다.
도 15에서는, 하나의 채널에 복수의 메모리 칩들이 연결되는 것으로 도시하였으나, 하나의 채널에 하나의 메모리 칩이 연결되도록 변형될 수도 있다.
예를 들어, 도 1 및 도 15를 참조하여 설명한 메모리 시스템들(1, 2000)은 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA (Personal Digital Assistants), 포터블(portable) 컴퓨터, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), e-북(e-book), PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 블랙박스(black box), 디지털 카메라(digital camera), 3차원 수상기(3-dimensional television), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 전자 장치들 중 하나, 컴퓨터 네트워크를 구성하는 다양한 전자 장치들 중 하나, 텔레매틱스 네트워크를 구성하는 다양한 전자 장치들 중 하나, RFID 장치, 또는 컴퓨팅 시스템을 구성하는 다양한 구성 요소들 중 하나 등과 같은 전자 장치의 다양한 구성 요소들 중 하나로 제공될 수 있다.
도 14는 솔리드 스테이트 드라이브를 포함하는 사용자 시스템을 설명하기 위한 블록도이다.
도 14를 참조하면, 사용자 시스템(3000)은 호스트(3100; host) 및 솔리드 스테이트 드라이브(3200; SSD)를 포함한다.
솔리드 스테이트 드라이브(3200)는 SSD 컨트롤러(3210; SSD controller), 메모리 장치(3220, memory device), 및 버퍼 메모리(3230; buffer memory)를 포함한다.
SSD 컨트롤러(3210)는 호스트(3100)와 인터페이싱하도록 구성될 수 있다. SSD 컨트롤러(3210)는 호스트(3100)의 요청에 응답하여 메모리 장치(3220)를 액세스할 수 있다. SSD 컨트롤러(3210)는 호스트(3100)로부터 수신되는 데이터를 버퍼 메모리(3230)에 전달할 수 있다.
메모리 장치(3220)는 솔리드 스테이트 드라이브(3200)의 저장 매체로서 제공될 수 있다. 메모리 장치(3220)는 복수의 메모리 칩들을 포함하여 구성될 수 있다. 복수의 메모리 칩들은 도 1을 참조하여 설명한 메모리 장치(200)와 실질적으로 동일하게 구성될 수 있다. 복수의 메모리 칩들은 메인 프로그램 동작의 제1 프로그램 동작시, 페이지 버퍼에 백업된 복수의 페이지 데이터를 이용하여 수행할 수 있다.
버퍼 메모리(3230)는 SSD 컨트롤러(3210)로부터 전달받은 데이터를 임시 저장할 수 있다. 메모리 장치(3220)의 프로그램 동작시, 버퍼 메모리(3230)는 임시 저장된 데이터를 메모리 장치(3220)에 전달할 수 있다. 버퍼 메모리(3230)는 충분한 버퍼링을 제공하기 위해 동기식 DRAM(Synchronous DRAM)으로 구성될 수 있으나, 이에 한정되는 것은 아니다.
도 16에서는 버퍼 메모리(3230)가 SSD 컨트롤러(3210)의 외부에 위치하는 것으로 도시하였으나, 이에 한정되는 것은 아니고, 버퍼 메모리(3230)는 SSD 컨트롤러(3210)의 내부 구성 요소로 제공될 수도 있다.
도 17은 비휘발성 메모리 장치를 포함하는 메모리 카드를 설명하기 위한 블록도이다.
도 17을 참조하면, 메모리 카드(4000)는 카드 인터페이스(4100; card I/F), 카드 컨트롤러(4200; card controller), 메모리 장치(4300; memory device)를 포함한다.
카드 인터페이스(4100)는 복수의 핀으로 구성되어, 호스트와 인터페이싱할 수 있다. 이들 핀에는 커맨드 핀, 데이터 핀, 클록 핀, 전원 핀 등이 포함될 수 있으나, 이에 한정디는 것은 아니다. 핀의 수는 메모리 카드(4000)의 종류에 따라 다양하게 변형될 수 있다.
카드 컨트롤러(4200)는 호스트의 요청에 응답하여 메모리 장치(4300)에 데이터를 기입하거나, 메모리 장치(4300)로부터 데이터를 독출하도록 구성될 수 있다.
메모리 장치(4300)는 도 1을 참조하여 설명한 메모리 장치(200)와 실질적으로 동일하게 구성될 수 있다. 메모리 장치(4300)는 메인 프로그램 동작의 제1 프로그램 동작시, 페이지 버퍼에 백업된 복수의 페이지 데이터를 이용하여 수행할 수 있다.
예를 들어, 메모리 카드(4000)는 PC 카드(personal computer memory card international association; PCMCIA), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), 유니버설 플래시 기억장치(UFS) 등과 같은 다양한 메모리 카드들 중 하나의 메모리 카드로 구성될 수 있다.
도 18은 비휘발성 메모리 장치를 포함하는 컴퓨팅 시스템을 설명하기 위한 블록도이다.
도 18을 참조하면, 컴퓨팅 시스템(5000)은 중앙 처리 장치(5100; CPU), 램(5200; RAM), 사용자 인터페이스(5300; user interface). 메모리 시스템(5400) 및 전원 공급 장치(5500; power supply)를 포함한다.
메모리 시스템(5400)은 시스템 버스(5600)를 통해서, 중앙 처리 장치(5100), 램(5200), 사용자 인터페이스(5300) 및 전원 공급 장치(5500)에 연결될 수 있다.
메모리 시스템(5400)은 도 1을 참조하여 설명한 메모리 시스템(1)과 실질적으로 동일하게 구성될 수 있다. 메모리 시스템(5400)은 도 12를 참조하여 설명한 메모리 시스템의 응용예(2000)와 실질적으로 동일하게 구성될 수도 있다. 사용자 인터페이스(5300)을 통해 제공되거나, 중앙 처리 장치(5100)에 의해 처리된 데이터가 메모리 시스템(5400)에 저장될 수 있다.
도 18에서는 메모리 장치(5420)가 메모리 컨트롤러(5410)를 통해 시스템 버스(5600)에 연결되는 것으로 도시하였으나, 메모리 장치(5410)는 시스템 버스(5600)에 직접 연결되도록 변형될 수 있다.
한편, 컴퓨팅 시스템(5000)은 도 1 및 도 15를 참조하여 설명한 메모리 시스템들(1, 2000)을 모두 포함하도록 구성될 수도 있다.
본 발명의 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는, 프로세서에 의해 실행되는 하드웨어 모듈, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명의 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체에 상주할 수도 있다. 예시적인 기록 매체는 프로세서에 연결되며, 상기 프로세서는 기록 매체로부터 정보를 독출할 수 있고 기록 매체에 정보를 기입할 수 있다. 다른 방법으로, 기록 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 기록 매체는 주문형 집적회로(ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 기록 매체는 사용자 단말기 내에 개별 구성 요소로서 상주할 수도 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
1: 메모리 시스템 100: 메모리 컨트롤러
110: 호스트 인터페이스 120: 프로세서
130: 버퍼 메모리 140: 메모리 인터페이스
200: 메모리 장치 210: 제어 로직
220: 메모리 셀 영역 230: 페이지 버퍼
300, 304, 320, 324: 라이트 동작
302, 303, 306, 322, 323, 326: 검증 리드 동작

Claims (10)

  1. 페이지 버퍼에 데이터를 저장하되, 상기 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함하고,
    상기 제1 데이터 블록을 메모리 셀 영역에 라이트하고,
    상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드(verify read)하고,
    상기 제2 데이터 블록을 상기 메모리 셀 영역에 라이트하고,
    상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드하는 것을 포함하되,
    상기 제1 데이터 블록 및 상기 제2 데이터 블록의 크기는 상기 페이지 버퍼의 크기보다 작은 비휘발성 메모리 장치의 구동 방법.
  2. 제1항에 있어서,
    상기 메모리 셀 영역에서 수행되는 라이트의 단위 크기는 상기 페이지 버퍼의 크기보다 작은 비휘발성 메모리 장치의 구동 방법.
  3. 제1항에 있어서,
    상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드한 후, 상기 제1 데이터 블록을 상기 메모리 셀 영역에 리라이트(rewrite)하고,
    상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드한 후, 상기 제2 데이터 블록을 상기 메모리 셀 영역에 리라이트하는 것을 더 포함하는 비휘발성 메모리 장치의 구동 방법.
  4. 제1항에 있어서,
    상기 메모리 셀 영역의 제2 데이터 블록을 검증 리드한 후, 상기 제1 데이터 블록 및 상기 제2 데이터 블록을 한 번에 상기 메모리 셀 영역에 리라이트하는 것을 더 포함하는 비휘발성 메모리 장치의 구동 방법.
  5. 제4항에 있어서,
    상기 메모리 셀 영역에 한 번 리라이트되는 데이터의 크기는 상기 메모리 셀 영역에 한 번 라이트되는 데이터의 크기보다 큰 비휘발성 메모리 장치의 구동 방법.
  6. 페이지 버퍼에 데이터를 저장하되, 상기 데이터는 제1 데이터 블록 및 제2 데이터 블록을 포함하고,
    상기 제1 데이터 블록을 메모리 셀 영역에 라이트하고,
    상기 제2 데이터 블록을 상기 메모리 셀 영역에 라이트하고,
    상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드(verify read)하는 것을 포함하되,
    상기 제1 데이터 블록 및 상기 제2 데이터 블록의 크기는 상기 페이지 버퍼의 크기보다 작은 비휘발성 메모리 장치의 구동 방법.
  7. 제6항에 있어서,
    상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 검증 리드하는 것은,
    상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 것을 포함하는 비휘발성 메모리 장치의 구동 방법.
  8. 제7항에 있어서,
    상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 한 번에 검증 리드하는 시간은 상기 메모리 셀 영역의 제1 데이터 블록 및 제2 데이터 블록을 각각 검증 리드하는 총 시간보다 짧은 비휘발성 메모리 장치의 구동 방법.
  9. 페이지 버퍼에 저장된 데이터를 제1 데이터 블록 내지 제N(단, N은 2 이상의 자연수) 데이터 블록으로 분할하고,
    상기 제1 데이터 블록 내지 상기 제N 데이터 블록을 연속적으로 메모리 셀 영역에 라이트하고,
    미리 설정된 시간 동안 딜레이(delay)하고,
    상기 메모리 셀 영역의 제1 데이터 블록 내지 제N 데이터 블록을 연속적으로 검증 리드(verify read)하는 것을 포함하는 비휘발성 메모리 장치의 구동 방법.
  10. 제9항에 있어서,
    상기 딜레이하는 시간의 길이는,
    상기 제1 데이터 블록을 상기 메모리 셀 영역에 라이트한 후, 상기 메모리 셀 영역의 제1 데이터 블록을 검증 리드하기 전까지 상기 비휘발성 메모리의 라이트 후 리드 시간(tWTR)을 확보할 수 있도록 설정되는 비휘발성 메모리 장치의 구동 방법.
KR1020140041330A 2014-04-07 2014-04-07 비휘발성 메모리 장치의 구동 방법 KR102126760B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140041330A KR102126760B1 (ko) 2014-04-07 2014-04-07 비휘발성 메모리 장치의 구동 방법
US14/680,502 US9684552B2 (en) 2014-04-07 2015-04-07 Method for driving nonvolatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140041330A KR102126760B1 (ko) 2014-04-07 2014-04-07 비휘발성 메모리 장치의 구동 방법

Publications (2)

Publication Number Publication Date
KR20150116285A true KR20150116285A (ko) 2015-10-15
KR102126760B1 KR102126760B1 (ko) 2020-06-25

Family

ID=54209860

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140041330A KR102126760B1 (ko) 2014-04-07 2014-04-07 비휘발성 메모리 장치의 구동 방법

Country Status (2)

Country Link
US (1) US9684552B2 (ko)
KR (1) KR102126760B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180081333A (ko) * 2017-01-06 2018-07-16 삼성전자주식회사 저항 변화 물질을 포함하는 메모리 장치 및 그 구동 방법
US11947796B2 (en) 2016-06-06 2024-04-02 Micron Technology, Inc. Memory protocol

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3388980B1 (en) * 2017-04-14 2020-06-10 Nxp B.V. Rfid integrated circuit
KR20220031776A (ko) 2020-09-03 2022-03-14 삼성전자주식회사 반도체 메모리 장치 및 그것의 동작 방법
KR20220104947A (ko) * 2021-01-19 2022-07-26 에스케이하이닉스 주식회사 메모리 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090078285A (ko) * 2008-01-14 2009-07-17 삼성전자주식회사 메모리 장치 및 멀티 비트 프로그래밍 방법
US20130103889A1 (en) * 2011-10-25 2013-04-25 Ocz Technology Group Inc. Page-buffer management of non-volatile memory-based mass storage devices

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004171411A (ja) 2002-11-21 2004-06-17 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置及びバッファメモリの管理方法
KR100834738B1 (ko) 2006-08-31 2008-06-05 삼성전자주식회사 상변화 메모리 장치의 구동 방법 및 그 방법을 사용하는상변화 메모리 장치
JP2009015978A (ja) * 2007-07-05 2009-01-22 Toshiba Corp 半導体記憶装置及びメモリシステム
KR101274190B1 (ko) 2007-07-30 2013-06-14 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치
KR100919556B1 (ko) 2007-08-10 2009-10-01 주식회사 하이닉스반도체 상 변화 메모리 장치
KR101281685B1 (ko) 2007-10-04 2013-07-03 삼성전자주식회사 상변화 메모리의 데이터 기록 방법, 데이터 판독 방법, 및그 장치
JP2009104687A (ja) 2007-10-22 2009-05-14 Fujitsu Ltd 記憶装置及び制御回路
TWI368223B (en) 2007-12-07 2012-07-11 Phison Electronics Corp Flash memory data writing method and controller using the same
JP5272013B2 (ja) 2008-10-01 2013-08-28 株式会社日立製作所 半導体装置
KR101004678B1 (ko) 2008-12-12 2011-01-04 주식회사 하이닉스반도체 상변화 메모리 장치
JP2011060388A (ja) * 2009-09-11 2011-03-24 Toshiba Corp 不揮発性メモリ装置
JP5756622B2 (ja) 2010-11-30 2015-07-29 株式会社日立製作所 半導体装置
JP2012133840A (ja) * 2010-12-20 2012-07-12 Samsung Yokohama Research Institute Co Ltd 半導体記憶装置、及び記憶方法
JP5971547B2 (ja) 2012-02-15 2016-08-17 国立大学法人 東京大学 メモリコントローラ,データ記憶装置およびメモリの制御方法
KR101938210B1 (ko) 2012-04-18 2019-01-15 삼성전자주식회사 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법
KR102025340B1 (ko) * 2012-11-27 2019-09-25 삼성전자 주식회사 불휘발성 메모리를 포함하는 반도체 메모리 장치, 이를 포함하는 캐쉬 메모리 및 컴퓨터 시스템
KR102154296B1 (ko) * 2012-12-18 2020-09-14 삼성전자 주식회사 저항체를 이용한 비휘발성 메모리 장치의 구동 방법 및 비휘발성 메모리 장치
KR102053958B1 (ko) * 2013-05-27 2019-12-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 재프로그램 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090078285A (ko) * 2008-01-14 2009-07-17 삼성전자주식회사 메모리 장치 및 멀티 비트 프로그래밍 방법
US20130103889A1 (en) * 2011-10-25 2013-04-25 Ocz Technology Group Inc. Page-buffer management of non-volatile memory-based mass storage devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947796B2 (en) 2016-06-06 2024-04-02 Micron Technology, Inc. Memory protocol
KR20180081333A (ko) * 2017-01-06 2018-07-16 삼성전자주식회사 저항 변화 물질을 포함하는 메모리 장치 및 그 구동 방법

Also Published As

Publication number Publication date
US9684552B2 (en) 2017-06-20
KR102126760B1 (ko) 2020-06-25
US20150286567A1 (en) 2015-10-08

Similar Documents

Publication Publication Date Title
US9761287B2 (en) Semiconductor memory device, memory system including the same and operating method thereof
US9996460B2 (en) Storage device, system including storage device and method of operating the same
JP5853899B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
US10497451B2 (en) Data transfer training method and data storage device performing the same
US9715341B2 (en) Operating a memory device using a program order stamp to control a read voltage
US9847122B2 (en) Multi-bit memory device and on-chip buffered program method thereof
KR102126760B1 (ko) 비휘발성 메모리 장치의 구동 방법
US9189174B2 (en) Nonvolatile memory device and method of operating the same
KR20160016386A (ko) 라이트 드라이버, 이를 포함하는 저항변화 메모리 장치 및 동작 방법
US9837167B2 (en) Method for operating storage device changing operation condition depending on data reliability
US20140325122A1 (en) Nonvolatile memory system including nonvolatile memory device, memory controller and operating method thereof
KR20160075064A (ko) 반도체 메모리 장치 및 이의 동작 방법
KR20150044475A (ko) 저항성 메모리 장치 및 동작 방법 방법과 이를 포함하는 시스템
CN107958687B (zh) 存储器编程方法、存储器控制电路单元及其存储装置
KR101348354B1 (ko) 낸드 플래시 메모리 장치의 페이지 데이터 독출 방법
US10127984B2 (en) Method for operating storage device determining wordlines for writing user data depending on reuse period
US20180040353A1 (en) Semiconductor memory device and method of operating the same
KR20170001235A (ko) 메모리 시스템 및 그것의 동작 방법
US9508438B2 (en) Semiconductor memory device, memory system having the same and operating method thereof
US9502105B2 (en) Resistive memory device, operating method thereof, and system having the same
KR20150063850A (ko) 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법
TW201814717A (zh) 記憶體程式化方法、記憶體控制電路單元與記憶體儲存裝置
US20140189218A1 (en) Method of programming data into nonvolatile memory and method of reading data from nonvolatile memory
US9672913B1 (en) Semiconductor memory device and operating method thereof
US20230185470A1 (en) Method of operating memory system and memory system performing the same

Legal Events

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