KR102251814B1 - 메모리 장치, 그것의 동작 및 제어 방법 - Google Patents

메모리 장치, 그것의 동작 및 제어 방법 Download PDF

Info

Publication number
KR102251814B1
KR102251814B1 KR1020150018866A KR20150018866A KR102251814B1 KR 102251814 B1 KR102251814 B1 KR 102251814B1 KR 1020150018866 A KR1020150018866 A KR 1020150018866A KR 20150018866 A KR20150018866 A KR 20150018866A KR 102251814 B1 KR102251814 B1 KR 102251814B1
Authority
KR
South Korea
Prior art keywords
memory cell
data
memory
state
deteriorated
Prior art date
Application number
KR1020150018866A
Other languages
English (en)
Other versions
KR20160097049A (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 KR1020150018866A priority Critical patent/KR102251814B1/ko
Priority to US15/012,881 priority patent/US9583189B2/en
Publication of KR20160097049A publication Critical patent/KR20160097049A/ko
Application granted granted Critical
Publication of KR102251814B1 publication Critical patent/KR102251814B1/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
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0097Erasing, e.g. resetting, circuits or methods
    • 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/5607Digital 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 magnetic storage elements
    • 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/5657Digital 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 ferroelectric storage elements
    • 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/5664Digital 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 organic memory material storage elements
    • 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/5678Digital 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 amorphous/crystalline phase transition storage elements
    • 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/5685Digital 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 storage elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0033Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • G11C2013/0054Read is performed on a reference element, e.g. cell, and the reference sensed value is used to compare the sensed value of the selected cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0076Write operation performed depending on read result
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0085Write a page or sector of information simultaneously, e.g. a complete row or word line
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/72Array wherein the access device being a diode

Abstract

복수의 메모리 셀들을 포함하는 메모리 장치의 동작 방법이 개시된다. 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법은, 제1 기입 커맨드를 수신하는 단계, 제1 기입 커맨드에 응답하여 대상 메모리 셀의 열화여부를 판단하는 단계, 및 판단 결과에 따라 대상 메모리 셀을 선택적으로 소거하고 대상 메모리 셀을 프로그램하는 기입 단계를 포함할 수 있다.

Description

메모리 장치, 그것의 동작 및 제어 방법{MEMORY DEVICE, OPERATING AND CONTROL METHOD THEREOF}
본 발명의 기술적 사상은 메모리 장치에 관한 것으로서, 자세하게는 중복기입(overwrite)을 지원하는 메모리 장치, 메모리 장치의 동작 방법 및 메모리 장치의 제어 방법에 관한 것이다.
메모리 장치의 고용량화 및 저전력화의 요구에 따라 비휘발성인 동시에 리프레쉬가 필요 없는 차세대 메모리 장치들에 대한 연구가 진행되고 있다. 이러한 차세대 메모리 장치는 DRAM(Dynamic Random Access Memory)의 고집적성, 플래쉬 메모리의 비휘발성, SRAM(Static RAM)의 고속성 등을 갖출 것이 요구된다. 차세대 메모리 장치로서, PRAM(Phase change RAM), NFGM(Nano Floating Gate Memory), PoRAM(Polymer RAM), MRAM(Magnetic RAM), FeRAM(Ferroelectric RAM), RRAM(Resistive RAM) 등이 상술한 요구 사항에 부응하는 차세대 메모리 장치로 거론되고 있다.
본 발명의 기술적 사상은, 기입 데이터의 신뢰성을 향상시킨 메모리 장치, 그 메모리 장치의 동작 방법 및 제어 방법을 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 기술적 사상의 일측면에 따른 복수의 메모리 셀들을 포함하는 메모리 장치의 동작 방법은, 제1 데이터에 대응하는 제1 상태를 가지는 대상 메모리 셀에, 제2 데이터를 기입하기 위한 제1 기입 커맨드를 수신하는 단계, 상기 제1 기입 커맨드에 응답하여, 상기 제1 상태에 기초하여 상기 대상 메모리 셀의 열화 여부를 판단하는 단계, 및 상기 판단 결과에 따라 상기 대상 메모리 셀을 선택적으로 소거하고, 상기 대상 메모리 셀을 상기 제2 데이터에 대응하는 제2 상태로 프로그램하는 기입 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 기입 단계는, 상기 대상 메모리 셀이 열화된 경우, 상기 대상 메모리 셀을 소거하고 상기 대상 메모리 셀을 상기 제2 상태로 프로그램하는 제1 프로그램 단계, 및 상기 대상 메모리 셀이 상기 열화되지 아니한 경우, 상기 대상 메모리 셀을 상기 제2 상태로 프로그램하는 제2 프로그램 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제2 프로그램 단계는, 상기 제1 상태로부터 상기 제1 데이터를 판별하는 단계, 상기 제1 및 제2 데이터를 비교하는 단계, 및 상기 제1 및 제2 데이터가 다른 경우, 상기 대상 메모리 셀을 상기 제1 상태로부터 상기 제2 상태로 천이시키는 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제1 데이터를 판별하는 단계는, 상기 제2 데이터에 기초하여 기준 신호를 생성하는 단계, 및 상기 기준 신호를 사용하여 상기 제1 상태를 감지하는 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 기준 신호는, 상기 제2 상태에 인접한 독출 마진 영역의 경계에 대응할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 메모리 장치의 동작 방법은 상기 대상 메모리 셀에 상기 제2 데이터를 기입하기 위한 제2 기입 커맨드를 수신하는 단계, 및 상기 제2 기입 커맨드에 응답하여, 상기 제2 프로그램 단계를 수행하는 단계를 더 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 대상 메모리 셀의 열화 여부를 판단하는 단계는, 상기 대상 메모리 셀을 기준 신호를 사용하여 센싱하는 단계, 센싱 결과에 기초하여 상기 제1 상태가 독출 마진 영역 내에 있는지 판단하는 단계, 및 상기 제1 상태가 상기 독출 마진 영역 내에 있는 경우 상기 대상 메모리 셀이 열화된 것으로서 결정하는 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제1 기입 커맨드는, 상기 대상 메모리 셀을 포함하는 메모리 셀 그룹에 상기 제2 데이터를 포함하는 그룹 데이터를 기입하기 위한 커맨드일 수 있고, 상기 대상 메모리 셀의 열화 여부를 판단하는 단계는, 상기 메모리 셀 그룹에 포함된 메모리 셀들을 기준 신호를 사용하여 센싱하는 단계, 센싱 결과에 기초하여 상기 메모리 셀 그룹에 포함된 메모리 셀들 중 독출 마진 영역 내에 있는 상태를 가지는 것들을 카운트하는 단계, 및 상기 카운트한 값이 미리 정해진 기준 값을 초과하면 상기 메모리 셀 그룹이 열화된 것으로서 결정하는 단계를 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제1 프로그램 단계는, 상기 메모리 셀 그룹을 소거하고, 상기 그룹 데이터에 기초하여 상기 메모리 셀 그룹을 프로그램할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 메모리 장치의 동작 방법은, 설정 커맨드를 수신하는 단계, 및 상기 설정 커맨드에 응답하여, 상기 기준 값을 설정하는 단계를 더 포함할 수 있다.
본 발명의 기술적 사상의 일측면에 따른, 복수의 메모리 셀들을 포함하는 메모리 장치의 제어 방법은, 제1 데이터에 대응하는 제1 상태를 가지는 대상 메모리 셀에, 제2 데이터를 기입하기 위한 기입 요청을 수신하는 단계, 상기 기입 요청에 응답하여, 상기 대상 메모리 셀의 열화 여부를 판단하는 단계, 상기 대상 메모리 셀이 열화된 경우, 제1 커맨드를 상기 메모리 장치에 전송하는 단계, 및 상기 대상 메모리 셀이 열화되지 아니한 경우, 상기 제1 커맨드와 다른 제2 커맨드를 상기 메모리 장치에 전송하는 단계를 포함할 수 있고, 상기 제1 및 제2 커맨드는 상기 대상 메모리 셀에 대응하는 어드레스를 수반할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제1 커맨드를 전송하는 단계는, 상기 제1 커맨드에 이어서 상기 제2 커맨드를 전송하는 단계를 포함할 수 있고, 상기 제1 커맨드는 상기 대상 메모리 셀을 소거하기 위한 커맨드일 수 있고, 상기 제2 커맨드는 상기 제2 데이터를 기입하기 위한 커맨드일 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제1 및 제2 커맨드는 각각 상기 제2 데이터를 기입하기 위한 커맨드일 수 있고, 상기 메모리 장치는 상기 제1 커맨드에 응답하여 상기 대상 메모리 셀의 열화 수준에 따라 상기 대상 메모리 셀을 선택적으로 소거할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 대상 메모리 셀의 열화 여부를 판단하는 단계는, 상기 대상 메모리 셀을 포함하는 메모리 셀 그룹의 기입 및/또는 독출 누적 회수가 기준 회수 이상인 경우 상기 대상 메모리 셀이 열화된 것으로서 결정할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 대상 메모리 셀의 열화 여부를 판단하는 단계는, 상기 메모리 장치에 상기 대상 메모리 셀에 대응하는 독출 커맨드를 전송하는 단계, 상기 메모리 장치로부터 상기 대상 메모리 셀에 대한 정보를 수신하는 단계, 및 상기 대상 메모리 셀에 대한 정보에 기초하여 상기 대상 메모리 셀을 포함하는 메모리 셀 그룹에 포함된 열화된 메모리 셀의 개수를 카운트하는 단계, 및 상기 카운트한 값이 미리 정해진 기준 값을 초과하면 상기 메모리 셀 그룹이 열화된 것으로 결정하는 단계를 포함할 수 있다.
본 발명의 기술적 사상의 일측면에 따른 메모리 장치는, 복수의 메모리 셀들을 포함하는 메모리 셀 어레이, 상기 메모리 셀 어레이의 한 메모리 셀 그룹에 포함된 메모리 셀들에 대한 기입 및 독출 동작을 수행하고, 상기 메모리 셀 그룹에 포함된 메모리 셀들 중 각각의 상태가 독출 마진 영역에 있는지 여부를 나타내는 신호를 출력하는 기입/독출 회로, 및 상기 기입/독출 회로의 출력 신호에 기초하여 상기 메모리 셀 그룹의 열화 여부를 판단하는 제어 로직을 포함할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제어 로직은 상기 기입/독출 회로의 출력 신호를 카운트하는 카운터를 포함할 수 있고, 상기 카운터의 출력값이 기준값 이상인 경우 상기 메모리 셀 그룹이 열화된 것으로서 결정할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제어 로직은 설정 커맨드를 수신시, 상기 기준값을 설정할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 제어 로직은 상기 메모리 셀 그룹에 대한 기입 커맨드 수신시, 상기 메모리 셀 그룹이 열화된 것으로서 결정되면 상기 메모리 셀 그룹을 소거하고 기입 동작이 수행되도록, 상기 기입/독출 회로를 제어할 수 있다.
본 발명의 예시적 실시예에 따라, 상기 기입/독출 회로는, 상기 메모리 셀 그룹으로부터 독출된 데이터를 저장하는 제1 래치부, 상기 메모리 셀 그룹에 기입될 데이터를 저장하는 제2 래치부, 및 상기 제1 및 제2 래치 회로에 각각 저장된 신호를 비교하는 비트 연산 회로를 포함할 수 있다.
본 발명의 기술적 사상에 따른 메모리 장치, 그것의 동작 및 제어 방법에 의하면, 메모리 셀의 열화로 인한 영향을 메모리 장치의 기입 데이터의 신뢰성이 향상될 수 있다.
또한, 본 발명의 기술적 사상에 다른 메모리 장치, 그것의 동작 및 제어 방법에 의하면, 중복기입이 안정적으로 구현됨으로써 메모리 장치를 관리하기 위한 사후과정이 생략될 수 있다.
도 1은 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법을 나타내는 순서도이다.
도 2는 본 발명의 예시적 실시예에 따른 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템을 나타내는 블록도이다.
도 3은 도 1의 메모리 장치의 일 구현 예를 개략적으로 나타내는 블록도이다.
도 4는 도 3의 메모리 셀 어레이의 일 구현예를 나타내는 회로도이다.
도 5는 멀티 레벨 셀들의 저항값 산포의 일 예를 나타내는 그래프이다.
도 6은 중복기입 동작시 메모리 셀의 열화에 따른 영향을 개략적으로 나타내는 도면이다.
도 7은 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법을 나태내는 순서도이다.
도 8은 본 발명의 예시적 실시예에 따라 메모리 셀을 중복기입하는 방법을 나타내는 순서도이다.
도 9는 메모리 셀의 상태를 감지시 센스 앰프에 인가되는 기준 전압의 예시를 나타낸다.
도 10은 복수의 메모리 셀들을 포함하는 메모리 셀 그룹의 열화 여부를 판단하는 방법을 나타내는 순서도이다.
도 11은 본 발명의 예시적 실시예에 따른 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템을 나타내는 블록도이다.
도 12 및 도 13는 본 발명의 예시적 실시예들에 따라 메모리 장치의 제어 방법을 나타내는 순서도들이다.
도 14는 본 발명의 예시적 실시예에 따라 메모리 셀의 열화 여부를 판단하는 방법을 나타내는 순서도이다.
도 15은 본 발명의 예시적 실시예에 따른 메모리 시스템을 메모리 카드 시스템에 적용한 예를 나타내는 블록도이다.
도 16는 본 발명의 예시적 실시예에 따른 메모리 시스템을 SSD 시스템에 적용한 예를 나타내는 블록도이다.
도 17은 본 발명의 예시적 실시예에 따른 메모리 시스템을 포함하는 컴퓨팅 시스템을 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. 본 발명의 실시 예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수개의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법을 나타내는 순서도이다. 메모리 장치는 복수의 메모리 셀들을 포함할 수 있고, 각각의 메모리 셀은 적어도 2개 이상의 상태들을 가질 수 있고, 각각의 상태는 기입된 데이터에 대응할 수 있다. 본 발명의 예시적 실시예에 따라, 메모리 장치는 중복기입(overwrite)을 지원할 수 있다. 즉, 메모리 장치는, 제1 데이터가 기입된 메모리 셀에 제2 데이터를 기입하기 위한 기입 커맨드를 지원할 수 있다.
본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법은, 데이터 기입시 메모리 셀의 열화(deterioration) 여부에 따라 선택적으로 메모리 셀을 소거하는 단계를 수행함으로써, 기입된 데이터의 신뢰도를 향상시킬 수 있다. 메모리 셀의 열화는, 기입된 데이터에 대응하는 메모리 셀의 상태가 변화함으로써, 기입된 데이터와 다른 데이터가 메모리 셀로부터 독출될 위험이 있는 현상일 수 있다. 메모리 셀은 다양한 원인들에 기인하여 열화를 경험할 수 있고, 예컨대 메모리 셀의 열화는 인접한 메모리 셀들의 상태 변경으로부터 유발될 수도 있고, 메모리 셀 자신에 대한 독출 및/또는 기입 횟수의 누적으로부터 유발될 수도 있다.
도 1에 도시된 바와 같이, 메모리 장치는 외부로부터 제1 기입 커맨드를 수신할 수 있다(S11). 예컨대, 제1 기입 커맨드는, 현재 제1 데이터에 대응하는 제1 상태를 가지는 대상 메모리 셀에 제2 데이터를 기입하기 위한 커맨드일 수 있다. 제1 및 제2 데이터는 서로 일치할 수도 있고, 다를 수도 있다.
본 발명의 예시적 실시예에 따라, 메모리 장치는, 제1 기입 커맨드에 응답하여 대상 메모리 셀의 열화 여부를 판단할 수 있다(S12). 예를 들면, 대상 메모리 셀이 가지는 제1 상태에 기초하여 대상 메모리 셀의 열화 여부를 판단할 수 있다. 대상 메모리 셀의 열화 여부를 판단하는 단계에 대한 구체적은 내용은 도 9 및 도 10을 참조하여 후술된다.
본 발명의 예시적 실시예에 따라, 메모리 장치는 대상 메모리 셀의 열화 여부에 따라, 대상 메모리 셀을 선택적으로 소거할 수 있고, 대상 메모리 셀을 프로그램(program)할 수 있다(S13). 예를 들면, 대상 메모리 셀이 열화된 것으로 판단된 경우(즉, 대상 메모리 셀이 열화를 경험함으로써, 제1 상태에 대응하는 제1 데이터가 기입 당시의 데이터와 상이할 위험이 있는 경우), 메모리 장치는 대상 메모리 셀을 소거(erase)할 수 있다. 소거는, 메모리 셀이 가질 수 있는 상태들 중에서 특정한 상태, 즉 소거 상태(또는, 리셋 상태)를 가지도록 메모리 셀에 전기적 신호를 인가하는 것일 수 있다. 본 발명의 예시적 실시예에 따라, 열화된 대상 메모리 셀이 소거됨으로써, 대상 메모리 셀은 소거 상태를 가질 수 있다. 그 다음에, 대상 매모리 셀은 제2 데이터에 대응하는 제2 상태를 가지도록 프로그램(program)될 수 있다. 프로그램은, 메모리 셀이 가질 수 있는 상태들 중에서 기입되고자 하는 데이터에 대응하는 상태를 가지도록 메모리 셀에 전기적 신호를 인가하는 것일 수 있다. 소거 및 프로그램은 메모리 셀이 특정한 상태, 예컨대 상태들의 특정한 산포에 포함되는 상태를 가지도록 전기적 신호를 인가하는 것일 수 있다. 결과적으로, 열화된 메모리 셀은 제1 상태에서 소거 상태로 천이되고, 그 다음에 소거 상태에서 제2 상태로 천이될 수 있다. 이에 따라, 소거 상태로의 천이에 의해서 열화된 대상 메모리 셀이 가지는 확장된 폭을 가지는 산포는 회복될 수 있고, 결과적으로 기입된 데이터의 신뢰성이 향상될 수 있다.
본 발명의 예시적 실시예에 따라, 대상 메모리 셀이 열화되지 않은 것으로 판단된 경우, 대상 메모리 셀은 제2 데이터에 대응하는 제2 상태를 가지도록 프로그램될 수 있다. 결과적으로, 열화되지 않은 셀은 제1 상태에서 제2 상태로 천이될 수 있다. 예를 들면, 대상 메모리 셀이 열화되지 않은 것으로 판단된 경우, 제1 및 제2 데이터는 비교될 수 있고, 제1 및 제2 데이터가 상이한 경우만 대상 메모리 셀이 프로그램될 수 있다. 이에 따라, 메모리 셀에 대한 불필요한 동작이 감소함으로써 메모리 셀의 수명이 감소되는 것을 방지할 수 있고, 메모리 장치에서 중복기입(overwrite)이 안정적으로 동작함으로 인하여 메모리 장치를 관리하기 위한 사후 과정이 생략될 수 있다.
도 2는 본 발명의 예시적 실시예에 따른 메모리 장치(100) 및 메모리 컨트롤러(200)를 포함하는 메모리 시스템(10)을 나타내는 블록도이다. 본 발명의 예시적 실시예에 따라, 메모리 장치(100)는 저항성 메모리 셀들을 포함함으로써 저항성 메모리 장치로 지칭될 수 있다. 다르게는, 본 발명의 예시적 실시예에 따라, 메모리 장치(100)는 다양한 종류의 메모리 셀들을 포함할 수 있으며, 메모리 셀들은 복수의 제1 신호 라인들 및 복수의 제2 신호 라인들이 교차하는 영역에 배치될 수 있고, 이에 따라 메모리 장치(100)는 크로스 포인트(cross-point) 메모리 장치로서 지칭될 수도 있다. 이하의 본 발명의 예시적 실시예들을 설명함에 있어서, 메모리 장치(100)는 저항성 메모리 셀들을 포함하는 크로스 포인트 메모리 장치인 것으로 설명되나, 본 발명의 기술적 사상이 이에 제한되지 않는 점은 이해될 것이다.
도 2에 도시된 바와 같이, 메모리 시스템(10)은 메모리 장치(100) 및 메모리 컨트롤러(200)를 포함할 수 있다. 메모리 컨트롤러(200)는 메모리 장치(100)에 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)를 제공할 수 있고, 기입될 데이터(DATA) 또는 독출된 데이터(DATA)가 메모리 컨트롤러(200) 및 메모리 장치(100) 사이에서 이동할 수 있다.
메모리 컨트롤러(200)는 호스트(host)로부터 기입(write) 요청에 응답하여 메모리 장치(100)에 기입 요청에 수반된 데이터를 기입하거나, 독출(read) 요청에 응답하여 메모리 장치(1000)에 저장된 데이터를 독출하도록 메모리 장치(100)를 제어할 수 있다. 구체적으로, 메모리 컨트롤러(200)는 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)을 전송함으로써, 메모리 장치(100)에 대한 기입(또는, 프로그램), 독출 및 소거 동작을 제어할 수 있다.
비록 도 2에 도시되지 않았으나, 메모리 컨트롤러(200)는 램(RAM), 프로세싱 유닛(processing unit), 호스트 인터페이스(host interface) 및 메모리 인터페이스(memory interface)를 포함할 수 있다. 램은 프로세싱 유닛의 데이터 메모리로서 이용될 수 있다. 프로세싱 유닛은 메모리 컨트롤러(200)의 동작을 제어할 수 있다. 호스트 인터페이스는 호스트 및 메모리 컨트롤러(200) 사이의 데이터 교환을 수행하기 위한 프로토콜(protocol)을 지원할 수 있다. 예를 들어, 메모리 컨트롤러(200)는 USB, MMC, PCI-E, ATA(Advanced Technology Attachment), Serial-ATA, Parallel-ATA, SCSI, ESDI, 그리고 IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 외부 장치(예컨대, 호스트)와 통신하도록 구성될 수 있다.
메모리 장치(100)는 메모리 셀 어레이(110), 기입/독출 회로(120) 및 제어 로직(130)을 포함할 수 있다. 메모리 셀 어레이(110)가 복수의 저항성 메모리 셀들을 포함하기 때문에, 메모리 시스템(10)은 저항성 메모리 시스템으로 지칭될 수 있다.
메모리 셀 어레이(110)는 복수의 제1 신호 라인들과 복수의 제2 신호 라인들이 교차하는 영역들에 각각 배치되는 복수의 메모리 셀들을 포함할 수 있다. 본 발명의 예시적 실시예들에 따라, 복수의 제1 신호 라인들 및 복수의 제2 신호 라인들은 복수의 비트 라인들 및 복수의 워드 라인들로서 각각 지칭될 수 있고, 또는 그와 반대로 지칭될 수도 있다. 또한, 본 발명의 예시적 실시예에 따라, 메모리 셀 어레이(110)는 2차원 수평 구조의 복수의 메모리 셀들을 포함할 수도 있고, 3차원 수직 구조의 복수의 메모리 셀들을 포함할 수도 있다.
본 발명의 예시적 실시예에 따라, 복수의 메모리 셀들 각각은 하나의 비트를 저장하는 싱글 레벨 셀(single level cell; SLC)일 수도 있고, 또는 적어도 2비트 이상의 데이터를 저장할 수 있는 멀티 레벨 셀(multi level cell; MLC)일 수도 있다. 다르게는, 메모리 셀 어레이(110)는 복수개의 SLC 및 MLC 양자를 포함할 수도 있다. 메모리 셀이 단일 비트를 저장하는 경우, 메모리 셀은 구별되는 2개의 저항값(resistance) 산포들을 가질 수 있다. 마찬가지로, 메모리 셀이 2비트의 데이터를 저장하는 경우 메모리 셀은 구별되는 4개의 저항값 산포들을 가질 수 있고, 메모리 셀이 3비트의 데이터를 저장하는 트리플 레벨 셀(triple level cell; TLC)인 경우 메모리 셀은 구별되는 8개의 저항값 산포들을 가질 수 있다. 본 발명의 예시적 실시예에 따라, 메모리 셀 어레이(110)에 포함된 메모리 셀은 SLC 또는 MLC일 수 있다.
본 발명의 예시적 실시예에 따라, 메모리 셀 어레이(110)는 가변 저항 소자를 포함하는 저항성 메모리 셀들을 포함할 수 있다. 예를 들면, 가변 저항 소자가 상 변화(phase change) 물질(예컨대, GST(Ge-Sb-Te))을 포함함으로써 온도에 따라 저항값이 변하는 경우, 메모리 장치(100)는 PRAM으로 지칭될 수 있다. 본 발명의 예시적 실시예에 따라, 가변 저항 소자가 상부 전극, 하부 전극 및 그 사이에 있는 전이금속 화합물(complex metal oxide)을 포함하는 경우, 메모리 장치(100)는 RRAM으로 지칭될 수 있다. 본 발명의 예시적 실시예에 따라, 가변 저항 소자가 자성체의 상부 전극, 자성체의 하부 전극 및 그 사이에 있는 유전체를 포함하는 경우, 메모리 장치(100)는 MRAM으로 지칭될 수 있다.
기입/독출 회로(120)는 메모리 셀 어레이(110)에 포함된 메모리 셀들에 대한 기입 및 독출 동작을 수행할 수 있다. 기입/독출 회로(120)는 복수의 비트 라인들을 통해서 메모리 셀들에 연결될 수 있고, 메모리 셀들에 데이터를 기입하기 위한 기입 드라이버와, 메모리 셀들의 저항 성분을 감지하는 센스 엠프를 포함할 수 있다. 또한, 기입/독출 회로(120)는 복수의 래치를 포함하는 래치부를 포함할 수 있고, 래치부는 메모리 셀 어레이(110)에 포함된 메모리 셀들로부터 독출한 데이터 또는 메모리 셀들에 기입될 데이터를 임시적으로 저장할 수 있다.
본 발명의 예시적 실시예에 따라, 기입/독출 회로(120)는 비트 연산 회로를 포함할 수 있다. 비트 연산 회로는 기입/독출 회로(120)에 포함된 센스 앰프의 출력 신호 또는 래치부에 저장된 데이터를 비트 연산(bitwise operation)함으로써 출력 신호를 생성할 수 있다. 비트 연산 회로가 생성한 출력 신호는, 메모리 셀 어레이(110)에 포함된 메모리 셀의 상태를 나타내거나, 메모리 셀에 저장된 데이터 및 메모리 셀에 기입될 데이터를 비교한 결과를 나타낼 수 있다. 이에 따라, 비트 연산 회로의 출력 신호는 제어 로직(130)에 의해서 메모리 셀 어레이(110)에 포함된 메모리 셀의 열화 여부를 판단하는데 사용되거나, 메모리 셀에 대한 프로그램 동작을 생략하는데 사용될 수 있다.
제어 로직(130)은 메모리 장치(100)의 전반적인 동작을 제어할 수 있고, 메모리 장치(100) 외부로부터 수신되는 커맨드(CMD) 및/또는 제어 신호(CTRL)에 응답하여 기입/독출 회로(120)를 제어함으로서 메모리 셀 어레이(110)에 포함된 메모리 셀에 대한 기입 및 독출 동작을 수행할 수 있다. 예를 들면, 메모리 장치(100)는 기입 동작에 사용되는 복수의 기준 신호들, 예컨대 기준 전류 및/또는 기준 전압을 생성하는 기준 신호 발생 수단을 포함할 수 있고, 제어 로직(130)은 기준 신호 발생 수단을 제어함으로써 기준 신호들의 레벨은 조정할 수 있다.
메모리 장치(100)에 대한 기입 동작에 있어서, 기입될 데이터에 따라 메모리 셀 어레이(110)에 포함된 메모리 셀의 가변 저항 소자는 그 저항값이 증가하거나 감소할 수 있다. 예를 들면, 메모리 셀 어레이(110)에 포함된 메모리 셀은 현재 저장된 데이터에 따른 제1 저항값(또는 제1 상태)을 가질 수 있고, 기입될 데이터에 따라 제1 저항값이 증가하거나 감소함으로써 기입될 데이터에 대응하는 제2 저항값(또는 제2 상태)를 가질 수 있다. 이와 같은 기입 동작은 리셋(reset) 기입 동작 및 셋(set) 기입 동작으로 분류될 수 있다. 저항성 메모리 셀에서 셋 상태는 상대적으로 낮은 저항값에 대응될 수 있는 한편, 리셋 상태는 상대적으로 높은 저항 값에 대응될 수 있다. 본 발명의 예시적 실시예에 따라, 리셋 상태는 소거 상태에 대응될 수 있고, 이 때 2비트 이상의 데이터를 저장하는 메모리 셀은 셋 상태가 포함될 복수의 구별되는 저항값 분포들을 가질 수 있다.
본 발명의 예시적 실시예에 따라, 메모리 장치(100) 및 메모리 컨트롤러(200)는 하나의 반도체 장치에 집적될 수 있다. 예를 들면, 메모리 장치(100) 및 메모리 컨트롤러(200)는 하나의 반도체 장치로서 메모리 카드를 구성할 수 있다. 즉, 메모리 장치(100) 및 메모리 컨트롤러(200)는 PC카드(PCMCIA card), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM/SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD), 유니버셜 플래시 기억장치(UFS) 등을 구성할 수 있다. 본 발명의 예시적 실시예에 따라, 메모리 장치(100) 및 메모리 컨트롤러(200)는 하나의 반도체 장리에 집적됨으로써 SSD(solid state disk/drive)를 구성할 수도 있다.
도 3은 도 1의 메모리 장치(100)의 일 구현 예를 개략적으로 나타내는 블록도이다. 도 3에 도시된 바와 같이, 메모리 장치(100)는 메모리 셀 어레이(110), 기입/독출 회로(120) 및 제어 로직(130)을 포함할 수 있다. 또한, 메모리 장치(100)는 기준 신호 발생부(140), 전원 발생부(150), 로우 디코더(160), 컬럼 디코더(170)를 더 포함할 수 있다. 기입/독출 회로(120)는 센스 앰프(121), 기입 드라이버(122), 제1 및 제2 래치부(123, 124) 및 비트 연산 회로(125)를 포함할 수 있고, 제어 로직(130)은 카운터(131)를 포함할 수 있다.
메모리 셀 어레이(110)에 포함된 복수의 메모리 셀들은 복수의 제1 신호 라인들 및 복수의 제2 신호 라인들에 연결될 수 있다. 복수의 제1 신호 라인들은 비트 라인들(BL)이고, 복수의 제2 신호 라인들은 워드 라인들(WL)일 수 있다. 복수의 비트 라인들(BL) 및 워드 라인들(WL)을 통해서 다양한 전압 및 전류가 제공될 수 있고, 이에 따라 복수의 메모리 셀들 중 선택된 메모리 셀에 데이터가 기입되거나 선택된 메모리 셀로부터 데이터가 독출되는 한편, 선택되지 않은 메모리 셀에서는 기입 또는 독출 동작이 방지될 수 있다.
커맨드(CMD)에 수반하여, 엑세스할 메모리 셀을 지시하기 위한 어드레스(ADDR)가 수신될 수 있고, 어드레스(ADDR)는 메모리 셀 어레이(110)의 워드 라인들(WL)을 선택하기 위한 로우 어드레스(X_ADDR) 및 메모리 셀 어레이(110)의 비트 라인들(BL)을 선택하기 위한 컬럼 어드레스(Y_ADDR)를 포함할 수 있다. 로우 디코더(160)는 로우 어드레스(X_ADDR)에 응답하여 워드 라인 선택 동작을 수행할 수 있고, 컬럼 디코더(170)는 컬럼 어드레스(Y_ADDR)에 응답하여 비트 라인 선택 동작을 수행할 수 있다.
기입/독출 회로(120)는 비트 라인들(BL)에 연결될 수 있고, 메모리 셀 어레이(110)에 포함된 메모리 셀에 데이터를 기입하거나 메모리 셀로부터 데이터를 독출할 수 있다. 예를 들면, 전원 발생부(150)는 기입 동작을 위한 기입 전압(Vwrite) 및 독출 동작을 위한 독출 전압(Vread)을 생성할 수 있다. 기입 전압(Vwrite)은 기입 동작과 관련하여 셋 전압 및 리셋 전압을 포함할 수 있고, 독출 전압(Vread)은 독출 동작과 관련하여 비트 라인 전압, 프리차지 전압 및 클램핑 전압 등을 포함할 수 있다. 기입 전압(Vwrite) 및 독출 전압(Vread)은 기입/독출 회로(120)를 통해서 비트 라인들(BL)에 제공되거나, 로우 디코더(160)를 통해서 워드 라인들(WL)에 제공될 수 있다.
기입 또는 독출 동작시, 기입/독출 회로(120)는 센스 앰프(121)를 통해서 판별된 상태에 기초하여 데이터를 판별하고, 판별된 데이터에 기초하여 기입 또는 독출 동작의 성공 여부를 신호(P/F)를 통해서 제어 로직(130)에 제공할 수 있다. 제어 로직(130)은 신호(P/F)에 기초하여 메모리 셀 어레이(110)의 기입 및 독출 동작을 제어할 수 있다.
도 3에 도시된 바와 같이, 기입/독출 회로(120)는 비트 연산 회로(125), 제1 및 제2 래치부(123, 124)를 포함할 수 있다. 제1 및 제2 래치부(123, 124)는 적어도 하나의 메모리 셀에 대응하는 데이터를 임시로 각각 저장할 수 있고, 비트 연산 회로(125)는 센스 앰프(12)의 출력 신호 또는 제1 및 제2 래치부(123, 124)에 저장된 데이터를 비트 연산할 수 있고, 출력 신호(SIG_Y)를 생성할 수 있다. 예를 들면, 제1 래치부(123)는 센스 엠프(121)의 출력 신호에 기초하여 메모리 셀 어레이(110)에 포함된 적어도 하나의 메모리 셀에 저장된 데이터를 저장할 수 있고, 제2 래치부(124)는 메모리 셀 어레이(110)에 포함된 적어도 하나의 메모리 셀에 저장될 데이터를 저장할 수 있으며, 비트 연산 회로(125)는 제1 래치부(123)에 저장된 데이터 및 제2 래치부(124)에 저장된 데이터를 XOR 연산할 수 있다.
제어 로직(130)의 제어에 따라, 비트 연산 회로(125)의 출력 신호는 메모리 셀 어레이(110)에 포함된 메모리 셀의 상태를 나타낼 수 있고, 또는 메모리 셀에 저장된 데이터 및 메모리 셀에 기입될 데이터를 비교한 결과를 나타낼 수 있다. 비트 연산 회로(125)의 출력 신호(SIG_Y)는 제어 로직(130)에 전달될 수 있다. 비트 연산 회로(125)의 출력 신호(SIG_Y)는 메모리 셀에 대한 프로그램 동작을 생략하는데 사용되거나, 제어 로직(130)에 의해서 메모리 셀의 열화 여부를 판단하는데 사용될 수 있다. 본 발명의 예시적 실시예에 따라, 비트 연산 회로(125)는 복수의 XOR 게이트를 포함할 수 있고, 복수의 XOR 게이트의 입력은 제1 래치부(123)의 출력 신호 및 제2 래치부(124)의 출력 신호일 수 있다.
기준 신호 발생부(140)는 제어 로직(130)의 제어에 따라, 메모리 셀 어레이(110)에 포함된 메모리 셀이 가지는 상태를 감지하는데 사용되는 기준 신호, 예컨대 기준 전압(Vref) 또는 기준 전류(Iref)를 생성할 수 있다. 예를 들면, 메모리 셀이 가지는 상태를 판별하기 위하여 센스 앰프(121)가 비트 라인(BL)의 일 노드(예컨대, 센싱 노드)에 연결될 수 있고, 센싱 노드의 전압과 기준 전압(Vref)에 대한 비교 동작을 통해서 메모리 셀이 가지는 상태가 판별될 수 있다. 다르게는, 기준 전류(Iref)에 기인한 센싱 노드의 전압과 기준 전압(Vref)를 비교함으로써 메모리 셀이 가지는 상태가 판별될 수 있다.
본 발명의 예시적 실시예에 따라, 기준 신호 발생부(140)는 제어 로직(130)의 제어에 따라, 하나의 메모리 셀이 가지는 상태를 감지하기 위하여 서로 다른 레벨을 가지는 기준 신호들을 순차적으로 생성할 수 있다. 예를 들면, 메모리 셀이 가지는 상태가 특정한 영역에 포함되는지 여부를 판별하기 위하여, 제어 로직(130)은 기준 신호 발생부(140)가 서로 다른 레벨을 가지는 기준 신호들을 순차적으로 생성하도록 기준 신호 발생부(140)를 제어할 수 있다. 이에 따라 제어 로직(130)은 감지된 메모리 셀의 상태에 기초하여 메모리 셀의 열화 여부를 판단할 수 있다.
제어 로직(130)은 메모리 컨트롤러(200)로부터 수신한 커맨드(CMD), 어드레스(ADDR) 및 제어 신호(CTRL)에 기초하여, 메모리 장치(100)에 포함된 다른 구성요소들을 제어하기 위한 신호들을 생성할 수 있다. 예를 들면, 제어 로직(130)은 기입/독출 회로(120)를 제어하기 위한 제어 신호(CTRL_RW)를 생성할 수 있고, 기준 신호 발생부(140)를 제어하기 위한 제어 신호(CTRL_REF)를 생성할 수 있다.
제어 로직(130)은 기입/독출 회로(120)로부터 수신되는 신호(SIG_Y)에 기초하여 메모리 셀 어레이(110)에 포함된 메모리 셀의 열화 여부를 판단할 수 있다. 예를 들면, 메모리 장치(100)가 제1 기입 커맨드를 수신하는 경우, 제어 로직(130)은 비트 연산 회로(125)의 출력 신호(SIG_Y)에 기초하여 제1 기입 커맨드의 대상인 메모리 셀이 가지는 상태가 특정 영역(예컨대, 독출 마진 영역)에 있는지 여부를 판단하고, 특정 영역에 포함된 상태를 가지는 메모리 셀을 열화된 것으로 판단할 수 있다. 다른 예시로서, 제1 기입 커맨드의 대상인 메모리 셀을 포함하는 메모리 셀 그룹에 대하여, 비트 연산 회로(125)는 비트 연산 회로(125)의 출력 신호가 나타내는 메모리 셀의 개수를 카운트하는 카운터(131)를 포함할 수 있고, 카운터(131)의 출력값이 미리 정해진 기준값 이상인 경우 메모리 셀 그룹이 열화된 것으로 판단할 수 있다.
기준값은 메모리 장치(100) 외부에서 설정 커맨드를 수신함으로써 설정될 수 있다. 본 발명의 예시적 실시예에 따라, 카운터(131)의 출력값은 메모리 장치(100) 외부로 전송될 수 있고, 메모리 컨트롤러(200)는 카운터(131)의 출력값을 수신하고, 출력값에 기초하여 메모리 셀 그룹의 열화 여부를 판단할 수도 있다.
도 3은 카운터(131)를 포함하는 메모치 장치(100)를 예시적으로 도시하였으나, 본 발명의 예시적 실시예에 따라 메모리 장치(100)의 외부, 예컨대 도 2의 메모리 컨트롤러(200)가 특정 영역에 포함된 상태를 가지는 메모리 셀을 카운팅하는 구성요소를 포함할 수 있다. 도 1을 참조하면, 메모리 장치(100)는 메모리 컨트롤러(200)로부터 수신된 커맨드(CMD)에 응답하여 메모리 장치(100)의 메모리 셀 어레이(110)에 포함된 메모리 셀에 대한 정보를 메모리 컨트롤러(200)에 전송할 수 있고, 메모리 컨트롤러(200)에 포함된 카운터는 메모리 장치(100)로부터 수신된 메모리 셀에 대한 정보에 기초하여 열화된 것으로 판단되는 메모리 셀을 카운트할 수 있다. 메모리 컨트롤러(200)는 카운터의 출력값이 미리 정해진 기준값 이상인 경우 열화된 것으로 판단되는 메모리 셀을 소거하도록 메모리 장치(100)를 제어할 수 있다. 메모리 컨트롤러(200)가 카운터를 포함하는 실시예에 대한 자세한 내용은 도 11 및 도 14에서 설명될 것이다.
도 4는 도 3의 메모리 셀 어레이(110)의 일 구현예를 나타내는 회로도이다. 메모리 셀 어레이(110)는 복수의 셀 블록들을 포함할 수 있으며, 도 4는 하나의 셀 블록을 나타낼 수 있다.
도 4에 도시된 바와 같이, 메모리 셀 어레이(110)는 복수의 워드 라인들(WL0 ∼ WLn), 복수의 비트 라인들(BL0 ∼ BLm) 및 복수의 메모리 셀들(MC)을 포함할 수 있다. 여기서, 워드 라인들(WL)의 개수, 비트 라인들(BL)의 개수 및 메모리 셀들(MC)의 개수는 실시예에 따라 다양하게 변경될 수 있다. 또한, 동일한 워드 라인에 연결되는 메모리 셀들(MC)을 페이지(page)로서 정의할 수 있다. 도 3을 함께 참조하면, 메모리 셀 어레이(110)에 저장된 데이터는, 기입/독출 회로(120)에 의해서 페이지 단위로 기입되거나 독출될 수 있고, 또는 페이지 단위보다 작은 단위로서(예컨대, 하나의 셀 단위로서) 기입되거나 독출될 수도 있다.
복수의 메모리 셀들(MC) 중 각각은 가변 저항(R) 및 선택 소자(D)를 포함할 수 있다. 여기서, 가변 저항(R)은 가변 저항 소자 또는 가변 저항 물질이라고 지칭될 수 있고, 선택 소자(D)는 스위칭 소자라고 지칭될 수 있다.
본 발명의 예시적 실시예에 따라, 가변 저항(R)은 복수의 비트 라인들(BL0 ∼ BLm) 중 하나와 선택 소자(D)의 사이에 연결되며, 선택 소자(D)는 가변 저항(R)과 복수의 워드 라인들(WL0 ∼ WLn) 중 하나의 사이에 연결될 수 있다. 그러나, 본 발명의 기술적 사상은 이에 한정되지 않고, 선택 소자(D)가 복수의 비트 라인들(BL0 ∼ BLm) 중 하나와 가변 저항(R) 사이에 연결되고, 가변 저항(R)이 선택 소자(D)와 복수의 워드 라인들(WL0 ∼ WLn) 중 하나의 사이에 연결될 수도 있다.
가변 저항(R)은 인가되는 전기적 펄스에 의해 복수 개의 저항 상태들 중 하나로 변동될 수 있다. 예를 들면, 가변 저항(R)은 전류 량에 따라 결정 상태가 변화하는 상변화 물질(phase-change material)을 포함할 수 있다. 상변화 물질은 2개의 원소를 화합한 GaSb, InSb, InSe. Sb2Te3, GeTe, 3개의 원소를 화합한 GeSbTe, GaSeTe, InSbTe, SnSb2Te4, InSbGe, 4개의 원소를 화합한 AgInSbTe, (GeSn)SbTe, GeSb(SeTe), Te81Ge15Sb2S2 등 다양한 종류의 물질을 사용할 수 있다. 이러한 상변화 물질은 비교적 저항이 높은 비정질 상태(amorphous state)와 비교적 저항이 낮은 결정 상태(crystal state)를 가질 수 있다. 이러한 상변화 물질은 전류의 양에 따라 발생되는 주울 열(Joule's heat) 의해 상(phase)이 변화될 수 있다. 그리고, 이와 같은 상변화를 이용하여 데이터를 저장할 수 있다. 다른 예시로서, 가변 저항(R)은 상변화 물질 대신, 페로브스카이트(perovskite) 화합물들, 전이 금속 산화물(transition metal oxide), 자성체 물질(magnetic materials), 강자성(ferromagnetic) 물질들 또는 반강자성(antiferromagnetic) 물질들을 포함할 수도 있다.
도 4에 도시된 바와 같이, 선택 소자(D)는 복수의 워드 라인들(WL0 ∼ WLn) 중 어느 하나와 가변 저항(R) 사이에 연결될 수 있으며, 연결된 워드 라인과 비트 라인에 인가되는 전압에 따라 가변 저항(R)으로의 전류 공급을 제어할 수 있다. 예를 들면, 선택 소자(D)는 PN 접합 또는 PIN 접합 다이오드일 수 있으며, 다이오드의 애노드(anode)가 가변 저항(R)에 연결되고, 다이오드의 캐소드(cathode)가 복수의 워드 라인들(WL0 ∼ WLn) 중 하나에 연결될 수 있다. 이 때, 다이오드의 애노드와 캐소드 사이의 전압 차가 다이오드의 문턱 전압보다 커지면, 다이오드가 턴 온되어 가변 저항(R)에 전류가 공급될 수 있다.
도 5는 멀티 레벨 셀들의 저항값 산포의 일 예를 나타내는 그래프이다. 구체적으로, 도 5는 각각의 멀티 레벨 셀이 2비트의 데이터를 저장하는 예시를 도시하며, 멀티 레벨 셀들은 구별되는 4개의 저항값 산포들(S1 ~ S3)을 가질 수 있다. 도 5의 그래프에서, 가로축은 저항을 나타내고 세로축은 메모리 셀들의 개수를 나타낸다. 도 5에 도시된 바와 같이, 산포(S0)는 저항 레벨이 가장 작은 저항 값을 가질 수 있고, 산포들(S1 ~ S3)은 산포(S0)에 비해 상대적으로 큰 저항 값을 가질 수 있다. 산포들(S0 ~ S2)에 포함된 메모리 셀들은 셋 상태를 가지는 것으로서 지칭될 수 있고, 산포(S3)에 포함된 메모리 셀들은 리셋 상태를 가지는 것으로서 지칭될 수 있다. 저항성 메모리 셀의 특성에 기인하여, 데이터 기입시 검증(verify) 동작을 통해서 저항값 산포의 폭이 좁아질 수 있고, 리셋 상태에 비해 셋 상태의 저항값 산포의 폭이 더 좁을 수도 있다.
저항성 메모리 셀은 중복기입 동작을 지원할 수 있다. 즉, 도 4를 참조하면, 가변 저항(R)으로 흐르는 전류의 세기 및 방향을 조절함으로써 저항성 메모리 셀은 현재 상태로부터 다른 상태로 천이할 수 있다. 예를 들면, 저항성 메모리 셀이 상포(S1)에 포함된 상태를 가지는 경우, 중복기입 데이터에 따라 저항성 메모리 셀은 프로그램을 통해서 산포들(S0, S2, S3) 중 하나에 포함된 상태로 천이될 수 있다. 특히, 산포(S3)에 포함된 리셋 상태로 천이되는 것은 소거 동작으로서 지칭될 수 있고, 리셋 상태는 소거 상태로서 지칭될 수 있다.
도 5에 도시된 바와 같이, 메모리 셀이 가지는 상태는 기준 저항값들(R0, R1, R2)을 참조하여 판별될 수 있다. 다시 말해서, 산포들(S0 ~ S3)은 기준 저항값들(R0, R1, R2)에 의해서 구별될 수 있다. 저항성 메모리 셀의 저항값이 기준 저항값들(R0, R1, R2)에 근접할수록, 저항성 메모리 셀의 상태를 판별하는 것은 어려울 수 있고, 이에 따라 기준 저항값들(R0, R1, R2)에 근접한 저항값을 가지는 메모리 셀로부터 독출한 데이터는 오류를 포함할 가능성이 상대적으로 높을 수 있다. 도 5에서 ΔR0, ΔR1 및 ΔR2로서 표시된 바와 같이, 기준 저항값들(R0, R1, R2)에 인접한 영역은 독출 마진 영역으로서 지칭될 수 있고, 독출 마진 영역은 검증 동작시 사용되는 기준 저항값들로서 정의될 수도 있다. 메모리 셀의 저항값이 독출 마진 영역내에 있는 경우 메모리 셀로부터 독출한 데이터는 오류를 포함할 가능성이 상대적으로 높을 수 있다.
도 6은 중복기입 동작시 메모리 셀의 열화에 따른 영향을 개략적으로 나타내는 도면이다. 도 6은 메모리 셀들에서 인접한 2개의 저항값 산포들(S_X, S_X+1)을 나타낸다. 구체적으로, 좌측 그림은 기입 동작(또는 검증 동작) 완료후 메모리 셀들의 저항값 산포들을 나타내고, 가운데 그림은 열화된 메모리 셀들에서 저항값 산포들을 나타내고, 우측 그림은 열화된 메모리 셀에서 중복기입 동작 완료후 저항값 산포들을 나타낸다. 전술한 바와 같이, 메모리 셀은 다양한 원인에 의해서 열화를 경험할 수 있다. 이에 따라, 메모리 셀의 저항값 산포들(S_X, S_X+1)을 구별하기 위한 기준 저항값(RX)에 근접할 수 있고, 심지어 도 6의 가운데 그림에 도시된 바와 같이 기준 저항값을 포함할 수 있다.
메모리 셀에 대한 중복기입 동작은 저장된 데이터 및 기입될 데이터를 비교하는 단계를 포함할 수 있고, 비교 결과에 따라 양 데이터가 서로 다른 경우에만 메모리 셀을 프로그램함으로써 효율성을 높일 수 있다. 도 6의 가운데 그림에 도시된 열화된 메모리 셀에서 중복기입 동작이 수행되는 경우, 기준 저항값(RX)에 기초하여 판별된 저장된 데이터와 기입될 데이터가 동일하면 기준 저항값(RX)에 근접한 저항값을 가지는 메모리 셀은 중복기입 이후에도 기준 저항값(RX)에 근접한 상태로 유지될 수 있다. 이에 따라, 도 6의 우측 그림에 도시된 바와 같이 중복기입 동작이 완료된 메모리 셀들에서 저항값 산포들(S_X, S_X+1)는 여전히 독출 마진 영역(즉, 기준 저항값(RX)에 근접한 영역)에 포함된 메모리 셀들을 포함할 수 있다.
도 7은 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법을 나태내는 순서도이다. 구체적으로, 도 7은 기입 커맨드 수신시 메모리 장치의 동작 방법을 나타낸다. 이하에서, 도 7은 도 3을 함께 참조하여 설명되지만, 본 발명의 예시적 실시예에 따른 메모리 장치의 동작 방법이 도 3에 도시된 메모리 장치(100)의 구조에 제한되지 않는 점은 이해될 것이다.
도 7에 도시된 바와 같이, 본 발명의 예시적 실시예에 따른 메모리 장치(100)는 기입 커맨드를 수신할 수 있다(S21). 예를 들면, 제어 로직(130)은 커맨드를 수신할 수 있고, 수신된 커맨드를 디코딩함으로써 수신된 커맨드가 제1 또는 제2 기입 커맨드인지를 판별할 수 있다. 제1 및 제2 기입 커맨드는 대상 메모리 셀에 대한 어드레스(ADDR)를 수반할 수 있고, 대상 메모리 셀에 기입될 제2 데이터를 수반할 수 있다. 대상 메모리 셀은 기입 커맨드 수신 전 제1 데이터에 대응하는 제1 상태를 가질 수 있고, 수신된 기입 커맨드에 응답하여 대상 메모리 셀이 제2 데이터에 대응하는 제2 상태를 가짐으로써 기입 동작이 완료될 수 있다.
제1 기입 커맨드에 따른 기입 동작은 대상 메모리 셀의 열화 여부를 판단하는 단계를 수행할 수 있고, 제2 기입 커맨드에 따른 기입 동작은 셀의 열화 여부와 무관하게 중복기입 동작을 수행할 수 있다. 즉, 도 1을 함께 참조하면, 메모리 컨트롤러(200)는 메모리 장치(100)의 메모리 셀 어레이(110)에 포함된 복수의 메모리 셀들을 관리하는 정보를 저장할 수 있고, 저장된 정보에 따라 메모리 셀의 열화를 판단하여 제1 또는 제2 기입 커맨드를 선택하여 메모리 장치(100)에 전송할 수 있다. 메모리 장치(100)는 제1 및 제2 기입 커맨드를 지원함으로써 메모리 시스템(10)에서 기입 동작의 효율성을 향상시킬 수 있다.
수신된 기입 커맨드가 제1 기입 커맨드인 경우, 메모리 장치(100)는 대상 메모리 셀이 열화되었는지 여부를 판단할 수 있다(S22). 예를 들면, 제어 로직(130)은 기입/독출 회로(120) 및 기준 신호 발생부(140)를 제어함으로써 대상 메모리 셀의 열화 여부를 판단할 수 있다. 그 다음에, 메모리 장치(100)는 대상 메모리 셀의 열화 여부에 따라 선택적으로 대상 메모리 셀을 소거하고, 대상 메모리 셀을 프로그램할 수 있다(S23).
대상 메모리 셀이 열화된 것으로 판단된 경우, 메모리 장치(100)는 대상 메모리 셀을 소거할 수 있다(S231). 예를 들면, 제어 로직(130)은 기입/독출 회로(120)를 제어함으로써 열화된 것으로 판단된 대상 메모리 셀을 소거할 수 있고, 이에 따라 대상 메모리 셀은 리셋 상태를 가질 수 있다. 그 다음에, 메모리 장치(100)는 대상 메모리 셀을 소거 상태로부터 제2 데이터에 대응하는 제2 상태로 프로그램할 수 있다(S232). 예를 들면, 제2 래치부(124)는 기입될 제2 데이터를 저장할 수 있고, 기입 드라이버(122)는 제2 래치부(124)에 저장된 제2 데이터에 기초하여, 대상 메모리 셀이 제2 상태를 가지도록 프로그램 및 검증 동작을 수행할 수 있다.
본 발명의 예시적 실시예에 따라, 대상 메모리 셀이 열화된 것으로 판단된 경우, 메모리 장치(100)는 대상 메모리 셀을 포함하는 메모리 셀 그룹을 소거할 수도 있다. 예를 들면, 제어 로직(130)은 기입/독출 회로(120)를 제어함으로써 대상 메모리 셀이 열화된 것으로 판단된 대상 메모리 셀을 포함하는 메모리 셀 그룹을 소거할 수 있다. 메모리 셀 그룹은 도 4의 페이지일 수도 있고, 페이지보다 작거나 클 수도 있다. 그 다음에, 메모리 장치(100)는 제2 데이터를 포함하는 그룹 데이터에 기초하여 소거된 메모리 셀 그룹을 프로그램할 수 있다.
단계(S22)에서 대상 메모리 셀이 열화되지 않은 것으로 판단되거나 단계(S21)에서 수신된 기입 커맨드가 제2 기입 커맨드인 경우, 메모리 장치(100)는 대상 메모리 셀을 제1 상태로부터 제2 상태로 프로그램할 수 있다(S233). 예를 들면, 제어 로직(130)의 제어에 따라, 제1 래치부(123)는 제1 상태에 대응하는 제1 데이터를 저장할 수 있고, 제2 래치부(124)는 제2 데이터를 저장할 수 있다. 비트 연산 회로(125)는 제1 및 제2 래치부(123, 124)에 저장된 제1 및 제2 데이터를 비교할 수 있고, 비트 연산 회로(125)의 출력 신호에 따라 대상 메모리 셀은 제1 및 제2 데이터가 상이한 경우 프로그램될 수 있다.
도 8은 본 발명의 예시적 실시예에 따라 메모리 셀을 중복기입하는 방법을 나타내는 순서도이고, 도 9는 메모리 셀의 상태를 감지시 센스 앰프에 인가되는 기준 전압의 예시를 나타낸다. 구체적으로, 도 8은 도 7의 순서도에서 단계(S233)을 구체적으로 나타내는 순서도이고, 도 9의 그래프에서 메모리 셀은 구별되는 4개의 저항값 산포들(S0 ~ S3)을 가질 수 있다. 이하에서, 도 8은 도 3을 함께 참조하여 설명되지만, 본 발명의 예시적 실시예에 따른 메모리 셀을 선택적으로 프로그램하는 방법이 도 3에 도시된 메모리 장치(100)의 구조에 제한되지 않는 것은 이해될 것이다.
메모리 장치(100)는 대상 메모리 셀이 가지는 제1 상태로부터 제1 데이터를 판별할 수 있다(S31). 예를 들면, 센스 앰프(121)는 제어 로직(130)의 제어에 따라 기준 신호 발생부(140)가 생성한 기준 신호에 기초하여 대상 메모리 셀의 제1 상태로부터 제1 데이터를 판별할 수 있고, 제1 데이터를 제1 래치부(123)에 저장할 수 있다. 그 다음에, 메모리 장치(100)는 제1 데이터 및 제2 데이터를 비교할 수 있다(S32). 예를 들면, 제2 래치부(124)는 기입 커맨드에 수반된 제2 데이터를 저장할 수 있고, 제1 및 제2 래치부(123, 124)에 연결된 비트 연산 회로(125)는 제1 데이터 및 제2 데이터를 비교 연산할 수 있다.
본 발명의 예시적 실시예에 따라, 메모리 장치(100)는 제1 데이터가 제2 데이터와 동일한지 여부를 판단하기 위하여, 제2 데이터에 기초하여 생성된 기준 신호를 사용하여 대상 메모리 셀이 가지는 제1 상태를 감지할 수 있다. 예를 들면, 메모리 장치(100)는 제2 상태에 인접한 독출 마진 영역, 즉 제2 데이터에 대응하는 저항값 산포의 경계에 접하는 독출 마진 영역의 경계에 대응하는 기준 신호를 사용하여 제1 상태를 감지할 수 있다. 즉, 도 9에 도시된 바와 같이, 제2 데이터가 상태(S2)에 대응하는 경우, 메모리 장치(100)는 제1 상태를 감지하기 위하여, 기준 전압(V1, V2)를 사용하는 대신 기준 전압(V12, V21)을 사용할 수 있다. 즉, 메모리 장치(100)는 제1 상태를 감지하기 위하여 제2 데이터의 기입 동작시 수행되는 검증 동작에서 사용되는 기준 전압을 사용할 수 있다. 이에 따라, 제1 데이터 및 제2 데이터가 일치함에 따라 프로그램 단계를 생략(skip)하는 대상 메모리 셀의 경우, 저항값 산포를 독출 마진 영역으로부터 격리시킬 수 있고, 결과적으로 저항값 산포의 폭을 줄일 수 있다.
제1 데이터와 제2 데이터가 상이한 경우, 메모리 장치(100)는 대상 메모리 셀을 프로그램함으로써 대상 메모리 셀을 제1 상태로부터 제2 상태로 천이시킬 수 있다(S33). 예를 들면, 기입 드라이버(122)는 제1 데이터에 대응하는 제1 상태 및 제2 데이터에 대응하는 제2 상태에 기초하여 대상 메모리 셀에 인가하는 전기적 신호를 조절함으로써 하여 상태의 이동 방향 및 이동량을 조절할 수 있고, 결과적으로 대상 메모리 셀을 제2 상태로 천이시킬 수 있다.
이하에서, 도 9는 도 3을 참조하여 설명된다. 전술한 바와 같이, 메모리 셀이 가지는 상태가 독출 마진 영역에 포함되는 경우, 메모리 셀로부터 독출된 데이터는 오류를 포함할 가능성이 상대적으로 높고, 이에 따라, 독출 마진 영역에 포함된 메모리 셀은 열화된 것으로 판단될 수 있다. 대상 메모리 셀이 가지는 제1 상태가 독출 마진 영역 내에 있는지 판단하기 위하여, 대상 메모리 셀의 상태는 2회 이상 감지될 수 있다. 예를 들면, 도 9에 도시된 바와 같이, 기준 신호 발생부(140)는 2개의 서로 다른 시점에서 기준 전압들(V21, V22)을 센스 앰프(121)에 인가할 수 있고, 비트 연산 회로(125), 제1 및 제2 래치부(123, 124)를 사용하여 양 시점에서 감지된 데이터를 비교함으로써, 메모리 셀이 가지는 상태가 독출 마진 영역의 일부인 ΔV2 영역 내에 있는지 여부가 판단될 수 있다. 본 발명의 예시적 실시예에 따라, 기준 전압들(V01, V02, V11, V12, V21, V22)은 검증 동작에 사용되는 전압들일 수 있다.
도 10은 복수의 메모리 셀들을 포함하는 메모리 셀 그룹의 열화 여부를 판단하는 방법을 나타내는 순서도이다. 본 발명의 예시적 실시예에 따라, 제1 기입 커맨드는, 대상 메모리 셀을 메모리 셀 그룹에 제2 데이터를 포함하는 그룹 데이터를 기입하기 위한 커맨드일 수 있다. 메모리 셀 그룹은 도 4의 페이지일 수도 있고, 페이지보다 작거나 클 수도 있다. 본 발명의 예시적 실시예에 따라, 메모리 장치는 복수의 메모리 셀들을 포함하는 메모리 셀 그룹 단위로 열화 여부를 판단하고, 판단 결과에 따라 메모리 셀 그룹을 선택적으로 소거할 수 있다. 이하에서, 도 10은 도 3을 참조하여 설명된다.
도 10에 도시된 바와 같이, 메모리 장치(100)는 메모리 셀 그룹에 포함된 메모리 셀들을 센싱할 수 있다(S41). 예를 들면, 기준 전압 발생부(140)는 서로 다른 시점에서 복수의 기준 전압들을 생성할 수 있고, 센스 앰프(121)는 복수의 기준 전압들에 기초하여 각 시점에서 메모리 셀 그룹에 저장된 데이터를 판별할 수 있다. 제1 및/또는 제2 래치부(123, 124)는 센스 앰프(121)가 판별한 데이터를 저장할 수 있고, 비트 연산 회로(125)는 제1 및/또는 제2 래치부(123, 124)에 저장된 데이터에 기초하여 메모리 셀 그룹에 포함된 메모리 셀들 중 독출 마진 영역 내에 있는 상태를 가지는 것들을 나타내는 신호를 출력할 수 있다.
메모리 장치(100)는 메모리 셀 그룹에 포함된 메모리 셀들 중 독출 마진 영역 내에 있는 상태를 가지는 메모리 셀을 카운트 할 수 있다(S42). 예를 들면, 제어 로직(130)은 비트 연산 회로(125)의 출력 신호(SIG_Y)를 수신할 수 있고, 카운터(131)는 비트 연산 회로(125)의 출력 신호에 기초하여 독출 마진 영역 내에 있는 상태를 가지는 메모리 셀을 카운트 할 수 있다.
메모리 장치(100)는 카운트 값과 기준값을 비교할 수 있다(S43). 기준값은 메모리 장치(100) 외부에서 설정 커맨드를 수신함으로써 설정될 수 있고, 예컨대 도 2의 메모리 컨트롤러(200)는 필요에 따라 기준값을 설정하기 위하여 설정 커맨드를 메모리 장치(100)에 전송할 수 있다.
카운트 값이 기준값을 초과하는 경우, 메모리 장치(100)는 메모리 셀 그룹에 포함된 메모리 셀들이 열화된 것으로 결정할 수 있고(S44), 메모리 셀 그룹에 포함된 메모리 셀들을 소거할 수 있다(S45). 그 다음에, 그룹 데이터에 기초하여 메모리 셀 그룹을 프로그램할 수 있다(S46).
카운트 값이 기준값을 초과하지 않는 경우, 메모리 장치(100)는 메모리 셀 그룹에서 중복기입을 할 수 있다(S47). 예를 들면, 메모리 장치(100)는 메모리 셀 그룹에 포함됨 메모리 셀들의 상태들을 감지할 수 있고, 감지된 상태들에 기초하여 판별된 그룹 데이터 및 제2 그룹 데이터를 비교하고, 서로 상이한 데이터에 대응하는 메모리 셀만을 프로그램할 수 있다.
도 11은 본 발명의 예시적 실시예에 따른 메모리 장치(100') 및 메모리 컨트롤러(200')를 포함하는 메모리 시스템(10')을 나타내는 블록도이다. 본 발명의 예시적 실시예에 따라, 메모리 시스템은 메모리 장치(100') 및 메모리 컨트롤러(200')를 포함할 수 있고, 어드레스(ADDR), 커맨드(CMD), 제어 신호(CTRL) 및 데이터(DATA)를 서로 송신하거나 수신할 수 있다. 메모리 장치(100')는 메모리 셀 어레이(110'), 기입/독출 회로(120') 및 제어 로직(130')을 포함할 수 있고, 메모리 셀 어레이(110'), 기입/독출 회로(120') 및 제어 로직(130')은 도 1의 메모리 장치(100)에 포함된 대응되는 구성요소들과 동일하거나 유사한 기능을 수행할 수 있다.
본 발명의 예시적 실시예에 따라, 메모리 장치(100')는 메모리 컨트롤러(200')가 메모리 셀 또는 메모리 셀을 포함하는 그룹의 열화 여부를 판단하는데 기초가 되는 메모리 셀에 대한 정보를 전송할 수 있다. 예를 들면, 메모리 장치(100')는 메모리 컨트롤러(200')로부터 수신된 독출 커맨드에 응답하여 독출 동작의 결과를 메모리 컨트롤러(200')에 전송할 수 있다.
도 11에 도시된 바와 같이, 메모리 컨트롤러(200')는 열화 판단부(210)를 포함할 수 있다. 열화 판단부(210)는 호스트로부터 수신된 기입 요청에 응답하여, 메모리 장치(100')의 메모리 셀 어레이(110')에 포함된 메모리 셀 또는 메모리 셀을 포함하는 그룹의 열화 여부를 판단할 수 있다. 예를 들면, 메모리 컨트롤러(200')는 열화 판단부(210)의 판단 결과에 따라 메모리 장치(100')에 제1 커맨드 또는 제1 커맨드와 다른 제2 커맨드를 전송할 수 있다. 열화 판단부(210)의 동작에 대한 자세한 내용은 도 12, 도 13 및 도 14를 참조하여 후술된다.
도 12 및 도 13는 본 발명의 예시적 실시예들에 따라 메모리 장치의 제어 방법을 나타내는 순서도들이다. 구체적으로, 도 12은 제1 및 제2 기입 커맨드를 지원하는 메모리 장치에 데이터를 기입하는 방법을 나타내는 순서도이고, 도 13는 소거 커맨드를 사용함으로써 메모리 장치를 제어하는 방법을 나타내는 순서도이다. 도 11을 함께 참조하면, 본 발명의 예시적 실시예에 따라, 메모리 컨트롤러(200')는 메모리 장치(100')의 메모리 셀 어레이(110')에 포함된 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 데이터를 프로그램하기 전에 메모리 셀을 선택적으로 소거하는 동작을 메모리 장치(100')에 지시할 수 있다. 이하에서, 도 12 및 도 13는 도 11을 참조하여 설명된다.
도 12에 도시된 예시에서, 메모리 컨트롤러(200')는 호스트로부터 기입 요청을 수신할 수 있다(S51). 기입 요청은 제1 데이터에 대응하는 제1 상태를 가지는 대상 메모리 셀에 기입될 제2 데이터를 수반할 수 있다. 그 다음에, 메모리 컨트롤러(200')는 대상 메모리 셀의 열화 여부를 판단할 수 있다(S52). 예를 들면, 열화 판단부(210)는 대상 메모리 셀을 포함하는 메모리 셀 그룹의 기입 및/또는 독출 누적 회수가 기준 회수 이상인 경우 대상 메모리 셀이 열화된 것으로서 결정할 수 있다. 다른 예시로서, 열화 판단부(210)는 대상 메모리 셀을 포함하는 메모리 셀 그룹의 독출시 발생한 오류 누적 회수가 기준 회수 이상이 경우 대상 메모리 셀이 열화된 것으로서 결정할 수 있다. 또 다른 예시로서, 이전 기입 시점으로부터 도과된 시간이 기준 시간 이상인 경우 대상 메모리 셀이 열화된 것으로서 결정될 수 있다. 또 다른 예시로서, 열화 판단부(210)는 대상 메모리 셀을 포함하는 메모리 셀 그룹에 포함된 열화된 셀의 개수를 나타내는 카운트값을 메모리 장치(100')로부터 수신할 수 있고, 수신된 카운트값이 기준값을 초과하는 경우 메모리 셀 그룹이 열화된 것으로 판단할 수 있다. 또 다른 예시로서, 열화 판단부(210)는 카운터를 포함할 수 있고, 호스트로부터 수신된 기입 요청에 응답하여 메모리 셀 어레이(110')에 포함된 메모리 셀 또는 메모리 셀을 포함하는 그룹의 열화 여부를 판단하기 위한 정보를 요청하는 커맨드를 메모리 장치(100')에 전송할 수 있다. 열화 판단부(210)에 포함된 카운터는 메모리 장치(100')로부터 수신된 메모리 셀에 대한 정보에 기초하여 열화된 것으로 판단되는 메모리 셀을 카운트할 수 있다. 열화 판단부(210)는 카운터의 출력값이 미리 정해진 기준값 이상인 경우 메모리 셀 또는 메모리 셀을 포함하는 그룹이 열화된 것으로 판단할 수 있다 열화 판단부(210)는 대상 메모리 셀의 열화 여부를 판단하기 위하여, 메모리 셀 그룹 단위로 기입 및/또는 독출에 관련된 정보를 저장할 수 있다.
대상 메모리 셀이 열화된 것으로 판단된 경우, 메모리 컨트롤러(200')는 대상 메모리 셀에 대응하는 어드레스를 수반시켜 제1 기입 커맨드를 메모리 장치(100')에 전송할 수 있다(S53). 전술한 바와 같이, 메모리 장치(100')는 제1 기입 커맨드에 응답하여 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 대상 메모리 셀을 선택적으로 소거할 수 있다.
대상 메모리 셀이 열화되지 않은 것으로 판단된 경우, 메모리 컨트롤러(200')는 대상 메모리 셀에 대응하는 어드레스를 수반하여 제2 기입 커맨드를 메모리 장치(100')에 전송할 수 있다(S54). 전술한 바와 같이 메모리 장치(100')는 제2 기입 커맨드에 응답하여 대상 메모리 셀의 열화 여부와 무관하게 대상 메모리 셀에서 중복기입을 수행할 수 있다.
도 13에 도시된 예시에서, 메모리 컨트롤러(200')는 호스트로부터 기입 요청을 수신할 수 있고(S61), 열화 판단부(210)는 대상 메모리 셀의 열화 여부를 판단할 수 있다(S62). 도 13의 단계들(S61, S62)은 도 12의 단계들(S51, S52)와 동일하거나 유사한 동작을 포함할 수 있다.
대상 메모리 셀이 열화된 것으로 판단된 경우, 메모리 컨트롤러(200')는 대상 메모리 셀을 소거하기 위한 소거 커맨드를 대상 메모리 셀에 대응하는 어드레스를 수반시켜 메모리 장치(100')에 전송할 수 있다(S63). 그 다음에, 메모리 컨트롤러(200')는 기입 커맨드를 대상 메모리 셀에 대응하는 어드레스를 수반시켜 메모리 장치(100')에 전송할 수 있다(S64).
대상 메모리 셀이 열화되지 않은 것으로 판단된 경우, 메모리 컨트롤러(200')는 기입 커맨드를 대상 메모리 셀에 대응하는 어드레스를 수반하여 메모리 장치(100')에 전송할 수 있다(S64). 본 발명의 예시적 실시예에 따라, 단계(S64)에서 기입 커맨드는 도 12의 제1 또는 제2 기입 커맨드일 수 있다.
도 14는 본 발명의 예시적 실시예에 따라 메모리 셀의 열화 여부를 판단하는 방법을 나타내는 순서도이다. 본 발명의 예시적 실시예에 따라, 도 14에 도시된 방법은 도 12의 단계(S52) 또는 도 13의 단계(S62)에 적용될 수 있다. 이해에서, 도 14는 도 11을 참조하여 설명된다.
본 발명의 예시적 실시예에 따라, 메모리 컨트롤러(200')는 호스트로부터 수신된 기입 커맨드에 응답하여 독출 커맨드를 메모리 장치(100')에 전송할 수 있다(S71). 예를 들면, 메모리 컨트롤러(200')는 호스트로부터 수신된 기입 커맨드에 대응하는 메모리 셀 어레이(110')의 영역에 저장된 데이터를 독출하기 위한 독출 커맨드를 메모리 장치(100')에 전송할 수 있다. 그 다음에, 메모리 컨트롤러(200')는 메모리 장치(100')로부터 독출 커맨드의 수행 결과를 수신할 수 있다(S72). 예를 들면, 본 발명의 예시적 실시예에 따라 메모리 장치(100')의 기입/독출 회로(120')는 수신된 독출 커맨드에 응답하여 메모리 셀 어레이(110')의 메모리 셀이 특정 영역, 에컨대 독출 마진 영역에 있는지 여부를 판단하기 위한 기준 신호를 사용하여 메모리 셀을 센싱할 수 있다. 제어 로직(130')는 기입/독출 회로(120')의 센싱 결과에 기초하여 메모리 컨트롤러(200')에 메모리 셀에 대한 정보, 예컨대 메모리 셀이 특정 영역에 있는지 여부를 나타내는 정보를 독출 커맨드의 수행 결과로서 전송할 수 있다.
메모리 컨트롤러(200')의 열화 판단부(210)는 메모리 장치(100')로부터 수신된 독출 커맨드의 수행 결과, 예컨대 메모리 셀이 특정 영역에 있는지 여부를 나타내는 정보에 기초하여 특정 영역에 포함된 상태를 가지는 메모리 셀을 카운트할 수 있다(S73). 예를 들면, 열화 판단부(210)는 카운터를 포함할 수 있고, 카운터는 특정 영역에 포함된 상태를 가지는 메모리 셀을 카운트할 수 있다. 그 다음에, 열화 판단부(210)는 카운트 값이 기준값보다 큰지 판단할 수 있다(S74). 예를 들면, 열화 판단부(210)는 카운터의 출력값이 미리 정해진 기준값보다 큰지 판단할 수 있다. 카운터값이 기준값보다 큰 경우, 열화 판단부(210)는 메모리 셀을 포함하는 그룹에 포함된 모든 메모리 셀들이 열화된 것으로 결정할 수 있다(S75).
도 15은 본 발명의 예시적 실시예에 따른 메모리 시스템(10)을 메모리 카드 시스템(600)에 적용한 예를 나타내는 블록도이다. 이하에서, 메모리 시스템(10)은 저항성 메모리 시스템인 것으로 가정한다.
도 15을 참조하면, 메모리 카드 시스템(600)은 호스트(610) 및 메모리 카드(620)를 포함할 수 있다. 호스트(610)는 호스트 컨트롤러(611) 및 호스트 접속부(612)를 포함할 수 있다. 메모리 카드(620)는 카드 접속부(621), 카드 컨트롤러(622) 및 메모리 장치(623)를 포함할 수 있다. 카드 컨트롤러(622) 및 메모리 장치(623)는 도 1 내지 도 13에 도시된 실시예들을 이용하여 각각 구현될 수 있다. 예를 들면, 메모리 장치(623)은 카드 컨트롤러(622)로부터 제1 기입 커맨드 수신시 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 대상 메모리 셀을 선택적으로 소거할 수 있다. 또한, 카드 컨트롤러(622)는 호스트(610)의 기입 요청에 응답하여 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 다른 커맨드를 메모리 장치(623)에 전송할 수 있다.
호스트(610)는 메모리 카드(620)에 데이터를 기입하거나, 메모리 카드(620)에 저장된 데이터를 독출할 수 있다. 호스트 컨트롤러(611)는 커맨드(CMD), 호스트(610) 내의 클럭 발생기(미도시)에서 발생한 클럭 신호(CLK) 및 데이터(DATA)를 호스트 접속부(612)를 통해 메모리 카드(620)로 전송할 수 있다.
카드 컨트롤러(622)는 카드 접속부(621)를 통해 수신된 커맨드에 응답하여, 카드 컨트롤러(622) 내에 있는 클럭 발생기(미도시)에서 발생한 클럭 신호에 동기하여 데이터를 메모리 장치(623)에 저장할 수 있다. 메모리 장치(623)는 호스트(610)로부터 전송된 데이터를 저장할 수 있다.
메모리 카드(620)는 컴팩트 플래시 카드(CFC: Compact Flash Card), 마이크로 드라이브(Microdrive), 스마트 미디어 카드(SMC: Smart Media Card) 멀티미디어 카드(MMC: Multimedia Card), 보안 디지털 카드(SDC: Security Digital Card), 메모리 스틱(Memory Stick), 및 USB 플래시 메모리 드라이버 등으로 구현될 수 있다.
도 16는 본 발명의 예시적 실시예에 따른 메모리 시스템(10)을 SSD 시스템(700)에 적용한 예를 나타내는 블록도이다. 도 16를 참조하면, SSD 시스템(700)은 호스트(710) 및 SSD(720)를 포함할 수 있다. SSD(720)는 신호 커넥터(signal connector)를 통해 호스트(710)와 신호를 주고 받으며, 전원 커넥터(power connector)를 통해 전원을 입력 받는다. SSD(720)는 SSD 컨트롤러(721), 보조 전원 장치(722) 및 복수의 메모리 장치들(723, 724, 725)을 포함할 수 있다.
SSD(720)는 도 1 내지 도 13에 도시된 실시예들을 이용하여 구현될 수 있다. 예를 들면, 메모리 장치들(723, 724, 725) 각각은 SSD 컨트롤러(721)로부터 제1 기입 커맨드 수신시 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 대상 메모리 셀을 선택적으로 소거할 수 있다. 또한, SSD 컨트롤러(721)는 호스트(710)의 기입 요청에 응답하여 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 다른 커맨드를 메모리 장치들(723, 724, 725)에 전송할 수 있다.
도 17은 본 발명의 예시적 실시예에 따른 메모리 시스템(10)을 포함하는 컴퓨팅 시스템(800)을 나타내는 블록도이다. 상기 메모리 시스템은 저항성 메모리 시스템인 것으로 가정한다.
도 17을 참조하면, 컴퓨팅 시스템(800)은 메모리 시스템(810), 프로세서(820), RAM(830), 입출력 장치(840) 및 전원 장치(850) 포함할 수 있다. 또한, 메모리 시스템(810)은 메모리 장치(811) 및 메모리 컨트롤러(812)를 포함할 수 있다. 메모리 시스템(810)는 도 1 내지 도 13에 도시된 실시예들을 이용하여 구현될 수 있다. 예를 들면, 메모리 장치(811)는 메모리 컨트롤러(812)로부터 제1 기입 커맨드 수신시 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 대상 메모리 셀을 선택적으로 소거할 수 있다. 또한, 메모리 컨트롤러(812)는 버스(860)에 연결된 다른 구성요소의 기입 요청에 응답하여 대상 메모리 셀의 열화 여부를 판단할 수 있고, 판단 결과에 따라 다른 커맨드를 메모리 장치(811)에 전송할 수 있다.
도 17에는 도시되지 않았지만, 컴퓨팅 시스템(800)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다. 컴퓨팅 시스템(800)은 퍼스널 컴퓨터로 구현되거나, 노트북 컴퓨터, 휴대폰, PDA(personal digital assistant) 및 카메라 등과 같은 휴대용 전자 장치로 구현될 수 있다.
프로세서(820)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 실시예에 따라, 프로세서(820)는 마이크로프로세서(micro-processor), 중앙 처리 장치(Central Processing Unit; CPU)일 수 있다. 프로세서(820)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus) 등과 같은 버스(860)를 통하여 RAM(830), 입출력 장치(840) 및 메모리 시스템(810)과 통신을 수행할 수 있다. 이 때, 메모리 시스템(810) 및/또는 RAM(830)은 도 1 내지 도 20에 도시된 실시예들의 저항성 메모리를 이용하여 구현될 수 있다.
일 실시예에 따라, 프로세서(820)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
RAM(830)는 컴퓨팅 시스템(800)의 동작에 필요한 데이터를 저장할 수 있다. 전술한 바와 같이, RAM(830)는 본 발명의 실시예에 따른 메모리 장치가 적용될 수 있으며, 또는 다른 메모리로서 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 엠램(MRAM) 등이 RAM(830)으로 이용될 수 있다.
입출력 장치(840)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터, 디스플레이 등과 같은 출력 수단을 포함할 수 있다. 전원 장치(850)는 컴퓨팅 시스템(800)의 동작에 필요한 동작 전압을 공급할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 발명의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 중복기입(overwrite)을 지원하는 복수의 저항성 메모리 셀들을 포함하는 메모리 장치의 동작 방법으로서,
    상기 복수의 저항성 메모리 셀들 중 제1 데이터에 대응하는 제1 상태를 가지는 대상 메모리 셀에, 제2 데이터를 기입하기 위한 제1 기입 커맨드를 수신하는 단계;
    상기 제1 기입 커맨드에 응답하여, 상기 제1 상태에 기초하여 상기 대상 메모리 셀의 열화 여부를 판단하는 단계; 및
    상기 판단 결과에 따라 상기 대상 메모리 셀을 선택적으로 소거하고, 상기 대상 메모리 셀을 상기 제2 데이터에 대응하는 제2 상태로 프로그램하는 기입 단계를 포함하고,
    상기 기입 단계는,
    상기 대상 메모리 셀이 열화된 경우, 상기 대상 메모리 셀을 소거 상태로 소거하고 상기 대상 메모리 셀을 상기 제2 상태로 프로그램하는 제1 프로그램 단계; 및
    상기 대상 메모리 셀이 열화되지 아니한 경우, 상기 대상 메모리 셀을 상기 제1 상태로부터 상기 제2 상태로 프로그램하는 제2 프로그램 단계를 포함하는 메모리 장치의 동작 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 제2 프로그램 단계는,
    상기 제1 상태로부터 상기 제1 데이터를 판별하는 단계;
    상기 제1 및 제2 데이터를 비교하는 단계; 및
    상기 제1 및 제2 데이터가 다른 경우, 상기 대상 메모리 셀을 상기 제1 상태로부터 상기 제2 상태로 천이시키는 단계를 포함하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  4. 제3항에 있어서,
    상기 제1 데이터를 판별하는 단계는,
    상기 제2 데이터에 기초하여 기준 신호를 생성하는 단계; 및
    상기 기준 신호를 사용하여 상기 제1 상태를 감지하는 단계를 포함하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  5. 제4항에 있어서,
    상기 기준 신호는, 상기 제2 상태에 인접한 독출 마진 영역의 경계에 대응하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  6. 제1항에 있어서,
    상기 대상 메모리 셀에 상기 제2 데이터를 기입하기 위한 제2 기입 커맨드를 수신하는 단계; 및
    상기 제2 기입 커맨드에 응답하여, 상기 제2 프로그램 단계를 수행하는 단계를 더 포함하는 메모리 장치의 동작 방법.
  7. 제1항에 있어서,
    상기 대상 메모리 셀의 열화 여부를 판단하는 단계는,
    상기 대상 메모리 셀을 기준 신호를 사용하여 센싱하는 단계;
    센싱 결과에 기초하여 상기 제1 상태가 독출 마진 영역 내에 있는지 판단하는 단계; 및
    상기 제1 상태가 상기 독출 마진 영역 내에 있는 경우 상기 대상 메모리 셀이 열화된 것으로서 결정하는 단계를 포함하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  8. 제1항에 있어서,
    상기 제1 기입 커맨드는, 상기 대상 메모리 셀을 포함하는 메모리 셀 그룹에 상기 제2 데이터를 포함하는 그룹 데이터를 기입하기 위한 커맨드이고,
    상기 대상 메모리 셀의 열화 여부를 판단하는 단계는,
    상기 메모리 셀 그룹에 포함된 메모리 셀들을 기준 신호를 사용하여 센싱하는 단계;
    센싱 결과에 기초하여 상기 메모리 셀 그룹에 포함된 메모리 셀들 중 독출 마진 영역 내에 있는 상태를 가지는 것들을 카운트하는 단계; 및
    카운트한 값이 미리 정해진 기준 값을 초과하면 상기 메모리 셀 그룹에 포함된 메모리 셀들이 열화된 것으로서 결정하는 단계를 포함하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  9. 제8항에 있어서,
    상기 제1 프로그램 단계는, 상기 메모리 셀 그룹을 소거하고, 상기 그룹 데이터에 기초하여 상기 메모리 셀 그룹을 프로그램하는 것을 특징으로 하는 메모리 장치의 동작 방법.
  10. 제8항에 있어서,
    설정 커맨드를 수신하는 단계; 및
    상기 설정 커맨드에 응답하여, 상기 기준 값을 설정하는 단계를 더 포함하는 메모리 장치의 동작 방법.
KR1020150018866A 2015-02-06 2015-02-06 메모리 장치, 그것의 동작 및 제어 방법 KR102251814B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150018866A KR102251814B1 (ko) 2015-02-06 2015-02-06 메모리 장치, 그것의 동작 및 제어 방법
US15/012,881 US9583189B2 (en) 2015-02-06 2016-02-02 Memory device, operating and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150018866A KR102251814B1 (ko) 2015-02-06 2015-02-06 메모리 장치, 그것의 동작 및 제어 방법

Publications (2)

Publication Number Publication Date
KR20160097049A KR20160097049A (ko) 2016-08-17
KR102251814B1 true KR102251814B1 (ko) 2021-05-13

Family

ID=56566981

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150018866A KR102251814B1 (ko) 2015-02-06 2015-02-06 메모리 장치, 그것의 동작 및 제어 방법

Country Status (2)

Country Link
US (1) US9583189B2 (ko)
KR (1) KR102251814B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170031224A (ko) * 2014-07-24 2017-03-20 후아웨이 테크놀러지 컴퍼니 리미티드 데이터 저장 방법 및 상변화 메모리
JP6388422B2 (ja) 2014-07-24 2018-09-12 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 相変化メモリのデータ記憶方法及び制御装置
WO2018163571A1 (ja) * 2017-03-10 2018-09-13 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
US10290327B2 (en) * 2017-10-13 2019-05-14 Nantero, Inc. Devices and methods for accessing resistive change elements in resistive change element arrays
US10916324B2 (en) * 2018-09-11 2021-02-09 Micron Technology, Inc. Data state synchronization involving memory cells having an inverted data state written thereto
US10622065B2 (en) * 2018-09-12 2020-04-14 Micron Technology, Inc. Dedicated commands for memory operations
US11456033B2 (en) 2018-09-12 2022-09-27 Micron Technology, Inc. Dedicated commands for memory operations
KR102651128B1 (ko) * 2018-12-11 2024-03-26 삼성전자주식회사 데이터 비교 기록을 수행하는 메모리 장치 및 이를 포함하는 메모리 시스템
KR102651129B1 (ko) * 2018-12-21 2024-03-26 삼성전자주식회사 메모리 장치의 데이터 재기입 방법, 상기 메모리 장치를 제어하는 메모리 컨트롤러 및 상기 메모리 컨트롤러의 제어 방법
US11416323B2 (en) * 2019-12-20 2022-08-16 Advanced Micro Devices, Inc. Defense mechanism for non-volatile memory based main memory

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101237005B1 (ko) * 2007-11-09 2013-02-26 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치, 이를 포함하는메모리 시스템, 및 이의 구동 방법
US9128821B2 (en) 2008-10-10 2015-09-08 Seagate Technology Llc Data updating in non-volatile memory
US7916515B2 (en) 2009-03-10 2011-03-29 Seagate Technology Llc Non-volatile memory read/write verify
US8423866B2 (en) 2009-10-28 2013-04-16 SanDisk Technologies, Inc. Non-volatile memory and method with post-write read and adaptive re-write to manage errors
JP2011258288A (ja) 2010-06-10 2011-12-22 Toshiba Corp 半導体記憶装置
KR101795417B1 (ko) 2010-11-08 2017-11-10 삼성전자주식회사 비휘발성 메모리 셀 어레이 및 비휘발성 메모리 장치
KR20120128014A (ko) * 2011-05-16 2012-11-26 삼성전자주식회사 불휘발성 메모리 장치의 동작 방법 및 불휘발성 메모리 장치를 포함하는 메모리 시스템의 동작 방법
US8537596B2 (en) 2011-10-21 2013-09-17 Hewlett-Packard Development Company, L.P. Overwriting a memory array
KR101832934B1 (ko) 2012-01-27 2018-02-28 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 그것의 블록 관리 방법, 프로그램 방법 및 소거 방법
KR20130127234A (ko) * 2012-05-14 2013-11-22 삼성전자주식회사 메모리의 구동 방법
KR20140008702A (ko) * 2012-07-11 2014-01-22 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 쓰기 방법
US9153331B2 (en) 2013-03-13 2015-10-06 Sandisk Technologies Inc. Tracking cell erase counts of non-volatile memory

Also Published As

Publication number Publication date
US20160232971A1 (en) 2016-08-11
US9583189B2 (en) 2017-02-28
KR20160097049A (ko) 2016-08-17

Similar Documents

Publication Publication Date Title
KR102251814B1 (ko) 메모리 장치, 그것의 동작 및 제어 방법
KR102188061B1 (ko) 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법
KR102131324B1 (ko) 저항성 메모리 장치 및 저항성 메모리 장치의 동작방법
US9728252B2 (en) Resistive memory device with temperature compensation, resistive memory system, and operating method thereof
KR102245129B1 (ko) 멀티레벨 셀을 포함하는 크로스 포인트 메모리 장치 및 크로스 포인트 메모리 장치의 동작방법
US9633726B2 (en) Resistive memory device, resistive memory system, and method of operating resistive memory device
US9659645B2 (en) Resistive memory device and method of writing data
KR102140787B1 (ko) 저항성 메모리 장치, 저항성 메모리 시스템 및 저항성 메모리 장치의 동작방법
KR102142590B1 (ko) 저항성 메모리 장치 및 저항성 메모리 장치의 동작방법
KR102238647B1 (ko) 저항성 메모리 장치, 저항성 메모리 시스템 및 저항성 메모리 장치의 동작방법
KR20160010211A (ko) 저항성 메모리 장치, 저항성 메모리 시스템 및 저항성 메모리 장치의 동작방법
KR102187116B1 (ko) 비휘발성 메모리 장치와 이를 포함하는 메모리 시스템, 및 비휘발성 메모리 장치의 구동 방법
KR102504836B1 (ko) 보상 회로를 구비하는 저항성 메모리 장치
US9449686B2 (en) Resistive memory device, resistive memory system and method of operating the resistive memory device
KR102136846B1 (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