KR102341698B1 - 메모리 동작을 위한 전용 명령 - Google Patents

메모리 동작을 위한 전용 명령 Download PDF

Info

Publication number
KR102341698B1
KR102341698B1 KR1020217010478A KR20217010478A KR102341698B1 KR 102341698 B1 KR102341698 B1 KR 102341698B1 KR 1020217010478 A KR1020217010478 A KR 1020217010478A KR 20217010478 A KR20217010478 A KR 20217010478A KR 102341698 B1 KR102341698 B1 KR 102341698B1
Authority
KR
South Korea
Prior art keywords
state
controller
cells
memory
cell
Prior art date
Application number
KR1020217010478A
Other languages
English (en)
Other versions
KR20210043005A (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 마이크론 테크놀로지, 인크
Publication of KR20210043005A publication Critical patent/KR20210043005A/ko
Application granted granted Critical
Publication of KR102341698B1 publication Critical patent/KR102341698B1/ko

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0097Erasing, e.g. resetting, circuits or methods
    • 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
    • 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
    • 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/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Memories (AREA)
  • Memory System (AREA)

Abstract

장치는 저항 가변 메모리 셀 어레이를 포함하는 메모리 및 컨트롤러를 가질 수 있다. 컨트롤러는 제 1 상태에 대응하는 임의의 호스트 데이터를 다수의 저항 가변 메모리 셀 그룹에 전송하지 않고 다수의 그룹의 모든 셀을 제 1 상태로 기록하는 전용 명령을 수신하도록 구성될 수 있다. 컨트롤러는 전용 명령에 응답하여 각각의 개별 그룹에 대해 판독 동작을 수행하여 각각의 개별 그룹의 셀 상태를 결정하고, 판독 동작으로부터 제 2 상태로 프로그래밍된 각각의 개별 그룹의 셀을 결정하고, 제 2 상태에 있는 것으로 결정된 셀만을 제 1 상태로 기록하도록 구성될 수 있다.

Description

메모리 동작을 위한 전용 명령
본 개시는 전반적으로 메모리 시스템과 같은 장치 및 그 동작에 관한 것으로, 보다 상세하게는 메모리 동작을 위한 전용 명령(dedicated command)에 관한 것이다.
저장 시스템과 같은 메모리 시스템은 컴퓨터, 휴대폰, 핸드 헬드 전자 디바이스 등과 같은 전자 시스템에서 구현될 수 있다. SSD (Solid State Drive), 임베디드 멀티미디어 컨트롤러 (eMMC) 디바이스, UFS (Universal Flash Storage) 디바이스 등과 같은 일부 저장 시스템은 호스트로부터 호스트 (예를 들어, 사용자) 데이터를 저장하기 위한 비 휘발성 저장 메모리를 포함할 수 있다. 비 휘발성 저장 메모리는 전원이 공급되지 않을 때 저장된 데이터를 유지하여 영구 데이터를 제공하며, NAND 플래시 메모리, NOR 플래시 메모리, ROM (read only memory), EEPROM (Electrically Erasable Programmable ROM), EPROM (Erasable Programmable ROM) 및 저항 가변 메모리 예컨대, PCRAM (Phase Change Random Access Memory), RRAM (Resistive Random Access Memory), FeRAM (Ferroelectric Random Access Memory), MRAM (Magnetoresistive Random Access Memory) 및 다른 유형의 메모리 중에서 프로그래밍 가능한 전도성 메모리를 포함할 수 있다.
저항 가변 메모리 셀은 다수의 상태 중 하나와 같은 원하는 상태로 기록 (예를 들어, 프로그래밍)될 수 있다. 예를 들어, 개개의 다수의 상태 각각은 개개의 임계 전압 (Vt) 분포에 대응할 수 있다. SLC(single level cell)로 프로그래밍된 저항 가변 메모리 셀은 두 개의 논리 (예를 들어, 이진) 데이터 상태 (예를 들어, 1 또는 0) 중 하나를 저장할 수 있다. MLC (Multi-Level Cell)로 프로그래밍된 저항 가변 메모리 셀은 두 개 초과의 논리 데이터 상태를 저장할 수 있다. 예를 들어, 저항 변수 쿼드 레벨 셀은 1111, 0111, 0011, 1011, 1001, 0001, 0101, 1101, 1100, 0100, 0000, 1000, 1010, 0010, 0110 및 1110과 같은 16 개 상태 중 하나를 저장하도록 프로그래밍될 수 있다.
저항 가변 메모리 셀의 각각의 상태 (예를 들어, 저장된 데이터 값)는 셀의 각각의 Vts에 대응하는 메모리 셀의 각각의 프로그래밍된 저항에 의존한다. 저항 가변 메모리 셀은 일부 예에서 먼저 소거하지 않고 덮어 쓰는(overwriting) 방식으로 다시 기록될 수 있다. 이것은 제 자리(in place)에 기록되는 것으로 지칭될 수 있다. 저항 가변 메모리 셀의 상태는 예를 들어, 인가된 감지 (예를 들어, 판독) 전압에 응답하여 셀을 통해 전류를 감지함으로써 결정 (예를 들어, 판독)될 수 있다. 감지된 전류는 셀의 저항에 따라 달라지는 것으로 셀에 저장된 논리 데이터 값과 같은 셀의 상태를 나타낼 수 있다. 그러나, 프로그래밍된 저항 가변 메모리 셀의 저항은 시간이 지남에 따라 드리프트 (예를 들어, 시프트(shift))될 수 있다. 저항 드리프트(Resistance drift)는 다른 문제 중에서도 저항 가변 메모리 셀의 잘못된 감지 (예를 들어, 셀이 프로그래밍된 상태가 아닌 다른 상태에 있다는 결정)를 초래할 수 있다.
일부 예에서, 더 낮은 저항 상태의 저항 가변 셀은 세트 상태 (예를 들어, 논리 1에 해당)에 있다고 말할 수 있고, 더 높은 저항 상태의 저항 가변 셀은 리셋 상태 (예를 들어, 논리 0에 해당)에 있다고 말할 수 있다. 예를 들어, 세트 상태의 셀은 리셋 동작(reset operation)에 의해 리셋 상태로 제자리에 기록 (예를 들어, 리셋)될 수 있으며, 리셋 상태의 셀은 세트 동작(set operation)에 의해 세트 상태로 제자리에 기록 (예를 들어, 세트)될 수 있다.
도 1은 본 개시의 다수의 실시예에 따른 장치의 블록도이다.
도 2는 본 개시의 다수의 실시예에 따른, 저항 가변 셀 그룹을 공통 저항 상태로 기록하는 것과 관련된 데이터 패턴을 도시한다.
도 3은 본 개시의 다수의 실시예에 따른, 사전 판독 동작이 없는 기록과 관련된 데이터 패턴을 도시한다.
도 4는 본 개시의 다수의 실시예에 따른, 데이터 패턴 반전을 갖는 사전 판독 동작없는 기록과 관련된 데이터 패턴을 도시한다.
도 5는 본 개시의 다수의 실시예에 따른 리프레시 동작(refresh operation)과 관련된 데이터 패턴을 도시한다.
도 6a는 본 개시의 다수의 실시예에 따른, 순환 리프레시 동작(cyclic refresh operation)과 관련된 데이터 패턴을 도시한다.
도 6b는 본 개시의 다수의 실시예에 따른, 순환 리프레시 동작 동안 기록과 관련된 데이터 패턴을 도시한다.
본 개시는 메모리 시스템 및 그 동작에 대한 기술적 개선과 같은 장치 및 장치에 의해 수행되는 방법 (예를 들어, 프로세스)의 기술적 개선에 관한 것이다. 일부 실시예에서, 다수의 저항 가변 메모리 셀 그룹은 공통 저항 상태에 대응하는 임의의 호스트 데이터를 셀로 전송하지 않고 공통 저항 상태로 기록될 수 있다. 예를 들어, 메모리 내부의 컨트롤러는 전용 명령에 대한 응답으로 셀에서 호스트 데이터를 수신하지 않고 메모리 외부의 컨트롤러에서 전용 명령을 수신하는 경우에만 응답하여 메모리 내부의 공통 상태로 셀에 기록할 수 있다. 메모리 셀 그룹을 논리 (예를 들어, 이진) 제로 (0)에 해당하는 리셋 상태와 같은 공통 저항 상태(common resistance state)로 기록하는 것은 저항 레벨이 시간이 지남에 따라 드리프트할 수 있는 저항 가변 메모리 셀의 잘못된 판독을 줄이는 등의 장점을 제공할 수 있다 (예를 들어, 타겟 상태로 프로그래밍된 후).
이전 접근법에서, 메모리 셀 그룹은 데이터 버스를 통해 외부 컨트롤러로부터 메모리로 공통 저항 상태에 대응하는 호스트 데이터를 전송하고 호스트 데이터를 셀에 기록함으로써 공통 저항 상태로 기록될 수 있다. 그러나, 이러한 데이터 전송은 전력 및/또는 데이터 버스 대역폭을 소비할 수 있다. 본 발명의 실시예는 외부 컨트롤러로부터의 공통 저항에 해당하는 호스트 데이터를 수신하지 않고 외부 컨트롤러로부터 전용 명령을 수신하는 것에 응답하여 메모리 내부의 공통 저항 상태로 셀을 기록함으로써 이러한 데이터 전송과 관련된 데이터 버스 폭을 보존하고 전력 소비를 줄일 수 있다. 이것은 메모리 시스템과 그 동작에 대한 기술적 개선을 가져올 수 있다.
일부 실시예에서, 외부 컨트롤러로부터의 호스트 데이터는 외부 컨트롤러로부터의 사전 판독 명령없이 전용 기록에 응답하여 공통 저항 상태로 이전에 기록된 메모리 셀의 타겟 그룹에 기록될 수 있다. 예를 들어, 먼저 타겟 그룹을 읽지 않고 타겟 그룹에 데이터를 기록할 수 있다. 이는 이전 접근 방식에서 일반적으로 수행되는 것처럼 그룹에 기록 전에 메모리 셀 그룹 판독을 수반하는 기록 명령을 실행하는 것과 관련된 레이턴시(latency) 및 에너지 소비를 줄임으로써 메모리 시스템 및 동작에 대한 기술적인 개선을 가져올 수 있다.
개시된 실시예 중 일부에서, 논리 값 (1)과 같은 특정 데이터 값에 대응하는 세트 상태와 같은 특정 저항 상태로 기록되는 다수의 메모리 셀 그룹의 메모리 셀은, 리프레시 명령에 대한 응답으로 특정 저항 상태에 해당하는 외부 컨트롤러로부터 임의의 호스트 데이터를 수신하지 않고 외부 컨트롤러로부터 전용 리프레시 명령을 수신한 것에 응답하여 메모리 내부의 특정 저항 상태로 셀을 다시 기록하여 (예를 들어, 주기적으로) 리프레시(refresh) 될 수 있다.
상이한 시간에 특정 데이터 값에 해당하는 특정 저항 상태로 기록된 다른 셀은 시간이 지남에 따라 동일한 특정 데이터 값에 해당하는 다른 저항 상태로 드리프트될 수 있다. 이는 특정 판독 전압으로 다른 메모리 셀 판독이 어려울 수 있으며, 판독 전압은 이전 접근 방식에서 일반적으로 수행되는 것처럼 조정되어야 할 수도 있다. 서로 다른 시간에 기록된 셀을 특정 저항 상태로 주기적으로 리프레시하는 것은 잠재적으로 판독 전압을 조정할 필요가 없도록 드리프트와 관련된 문제를 완화할 수 있다.
외부 컨트롤러로부터 리프레시할 데이터에 해당하는 호스트 데이터를 전송하지 않고 셀을 리프레시하는 것은 외부 컨트롤러에서 호스트 데이터를 수신하지 않고 외부 컨트롤러로부터의 전용 리프레시 명령 수신에 응답하여 메모리 내부의 셀을 리프레시함으로써 이러한 데이터 전송과 관련된 데이터 버스 폭을 보존하고 전력 소비를 줄일 수 있다. 이것은 메모리 시스템과 그 동작에 대한 기술적 개선을 가져올 수 있다.
도 1은 본 개시의 다수의 실시예에 따른 컴퓨팅 시스템 (100) 형태의 디바이스의 블록도이다. 컴퓨팅 시스템 (100)은 예를 들어, SSD, UFS 디바이스, eMMC 디바이스 등과 같은 저장 시스템일 수 있는 메모리 시스템 (102)을 포함한다. 그러나, 실시예는 특정 유형의 메모리 시스템으로 제한되지 않는다. 예를 들어, 메모리 시스템 (102)은 시스템 (100)을 위한 메인 메모리로서 기능 할 수 있다.
도 1에 도시된 바와 같이, 메모리 시스템 (102)은 컨트롤러 (108)가 메모리 (106)를 제어할 수 있다는 점에서 메모리 시스템 컨트롤러로 지칭될 수 있는 컨트롤러 (108)를 포함할 수 있다. 컨트롤러 (108)는 호스트 (104) 및 메모리 (106)에 결합된다. 예를 들어, 메모리 (106)는 다수의 메모리 디바이스 (예를 들어, 다이, 칩 등)를 포함할 수 있고 메모리 (예를 들어, 메인 메모리) 및/또는 시스템 (102)을 위한 저장 볼륨으로서 기능할 수 있다. 메모리 (106)는 데이터 버스를 포함할 수 있고 다양한 표준을 지원할 수 있고 및/또는 DDR (double data rate) 등과 같은 다양한 인터페이스 유형을 준수 할 수 있는 인터페이스 (111) (예를 들어, 메모리 인터페이스)를 통한 컨트롤러 (108)에 결합될 수 있다. 컨트롤러 (108)는 호스트 (104)로부터 판독 및 기록 명령과 같은 명령을 수신할 수 있다. 예를 들어, 컨트롤러 (108)는 메모리 (106)에 기록될 데이터 (예를 들어, 사용자 데이터)를 수신할 수 있다. 데이터는 호스트 (104)로부터 (예를 들어, 호스트 인터페이스 (112)를 통해) 수신될 수 있고 호스트 데이터로 지칭될 수 있다.
호스트 (104)는 다양한 다른 유형의 호스트 중에서 예를 들어, 개인용 랩톱 컴퓨터, 데스크톱 컴퓨터, 디지털 카메라, 모바일 디바이스 (예를 들어, 휴대폰), 네트워크 서버, 사물 인터넷 (IoT) 디바이스 또는 메모리 카드 판독기와 같은 호스트 시스템일 수 있다. 예를 들어, 호스트 (104)는 버스를 포함할 수 있는 인터페이스 (112)를 통해 (예를 들어, 컨트롤러 (108)를 통해) 메모리 (106)에 액세스할 수 있는 하나 이상의 프로세서를 포함할 수 있다. 인터페이스 (112)는 무엇보다도 SATA(serial advanced technology attachment), PCIe(peripheral component interconnect express), 또는 USB(universal serial bus)와 같은 표준화된 인터페이스일 수 있다.
메모리 (106)는 다수의 메모리 어레이 (114) (예를 들어, 총괄하여 어레이 (114)로 지칭됨) 및 임베디드 컨트롤러로 지칭될 수 있는 컨트롤러 (113)를 포함할 수 있다. 일부 예에서, 어레이 (114)는 교차점 어레이 구조와 같은 2D 및/또는 3D 어레이 구조를 포함할 수 있다. 예를 들어, 어레이 (114)는 예를 들어, 비 휘발성 저항 가변 메모리 셀을 포함할 수 있다.
컨트롤러 (113)는 메모리 (106) 내부에 위치될 수 있고, 메모리 인터페이스 (111)를 통해 컨트롤러 (108)로부터 명령 (예를 들어, 기록 명령, 판독 명령, 리프레시 명령 등)을 수신할 수 있다. 예를 들어, 본 개시의 다수의 실시예에 따라, 컨트롤러(113)는 전용 기록 모든 데이터 값 명령 (118) 예컨대, 모든 논리 제로 (0) 기록 명령, 사전 판독 명령이 없는 전용 기록 (120) 및 컨트롤러 (108)로부터의 전용 리프레시 명령 (122)를 수신할 수 있다. 데이터 버퍼 (116)는 어레이 (114)에 결합될 수 있다. 예를 들어, 데이터는 어레이 (114)로부터 버퍼 (116)로 판독될 수 있거나, 호스트 데이터가 컨트롤러 (108)로부터 버퍼 (116)에서 수신되고 이어서 어레이 (114)에 기록될 수 있다.
메모리 어레이 (114)는 그룹을 어드레싱하는 기록 명령에 응답하여 기록될 수 있고 (예를 들어, 프로그래밍) 그리고 그룹을 어드레싱하는 판독 명령에 응답하여 판독될 수 있는 어드레싱 가능한 메모리 셀 그룹으로 분할될 수 있다. 일부 예에서, 메모리 셀의 그룹은 호스트 (104)로부터 수신된 논리 어드레스에 대응하는 물리적 어드레스를 가질 수 있다. 컨트롤러 (108)는 호스트 (104)로부터 메모리 셀 그룹의 물리적 어드레스로의 논리적 어드레스에 매핑할 수 있는 L2P (Logical-to-Physical) 매핑 테이블과 같은 매핑 테이블을 포함할 수 있다. 메모리 셀 그룹은 논리적 어드레스에 해당하는 페이지일 수 있다. 일부 예에서, 각각의 그룹은 코드 워드와 같은 관리 유닛으로 지칭될 수 있는 데이터 패턴을 저장할 수 있다.
명령 (118)에 응답하여, 컨트롤러 (113)는 명령 (118)에 응답하여 컨트롤러 (108)로부터 메모리 (106)에서 지정된 데이터 값에 대응하는 호스트 데이터를 수신하지 않고, 명령 (118)에 지정된 어레이 (114)의 메모리 셀 그룹의 모든 메모리 셀을 모든 논리 0 또는 모든 논리 1과 같은 명령 (118)에 지정된 데이터 값에 대응하는 데이터 상태로 기록할 수 있다. 예를 들어, 컨트롤러 (113)는 명령 (118)에 대한 응답으로 메모리 셀에서 호스트 데이터를 수신하지 않고 모든 메모리 셀을 메모리 (106) 내부의 데이터 상태로 기록할 수 있다.
명령 (120)에 응답하여, 컨트롤러 (113)는 컨트롤러 (108)로부터 수신된 호스트 데이터를 타겟 그룹을 사전 판독하지 않고 메모리 셀의 타겟 그룹에 기록할 수 있다. 예를 들어, 타겟 그룹의 모든 메모리 셀은 명령 (118)에 대한 응답과 같이 동일한 미리 결정된 상태로 미리 기록될 수 있으므로, 수신된 호스트 데이터를 타겟 그룹에 기록하기 전에 타겟 그룹을 판독할 필요가 없다.
명령 (122)에 응답하여, 컨트롤러 (113)는 컨트롤러 (108)로부터 명령 (122)을 수신하는 것에 응답하여 메모리 (106)에서 리프레시된 데이터에 대응하는, 컨트롤러 (108)로부터 호스트 데이터를 수신하지 않고 타겟 그룹의 셀에 있는 데이터 값을 셀에 다시 기록함으로써 메모리 셀의 타겟 그룹의 데이터를 리프레시할 수 있다.
일부 예에서, 어레이 (114)의 저항 가변 메모리 셀은 저장 엘리먼트 (예를 들어, 상 변화 재료, 금속 산화물 재료 및/또는 다른 저항 레벨로 프로그래밍할 수 있는 다른 재료)와 직렬로 연결된 선택 엘리먼트 (예를 들어, 다이오드, 트랜지스터, 또는 다른 스위칭 디바이스)를 가질 수 있다. 예를 들어, 저장 엘리먼트는 비트의 일부, 단일 비트 또는 다수의 비트의 값에 대응하는 상태로 프로그래밍될 수 있다. 선택 엘리먼트는 동일한 메모리 셀의 저장 엘리먼트에 액세스하는데 사용될 수 있다.
선택 엘리먼트는 재료를 포함할 수 있으며, 그 중 적어도 일부는 비 전도성 상태와 전도성 상태 사이에서 변경 (예를 들어, 스위칭)할 수 있다. 예를 들어, 선택 엘리먼트는 저장 엘리먼트에 액세스하기 위해 켜질 수 있다 (예를 들어, 비 전도성 상태에서 전도성 상태로 변경됨). 일부 예에서, 선택 엘리먼트는 가변 저항 재료 (예를 들어, 상 변화 재료)를 포함할 수 있다. 그러나, 선택 엘리먼트의 재료는 저장 엘리먼트에 대한 액세스를 허용하는 스위치로만 동작할 수 있도록 (예를 들어, 정보를 저장하지 않음)할 수 있다. 예를 들어, 선택 엘리먼트는 위상을 변경할 수 없는 칼코게나이드 재료를 포함할 수 있다.
저장 엘리먼트는 재료를 포함할 수 있으며, 그 중 적어도 일부는 상이한 상태 (예를 들어, 상이한 재료 위상) 사이에서 (예를 들어, 기록 동작을 통해) 변경될 수 있다. 상이한 상태는 예를 들어, 메모리 셀의 상이한 상태를 나타내기 위해 상이한 저항 값의 범위를 가질 수 있다. 예를 들어, 저장 엘리먼트는 상 변화 재료일 수도 있거나 아닐 수도 있고, 메모리 셀 판독 및/또는 프로그래밍 중에 상 변화를 겪거나 겪지 않을 수 있는 다양한 도핑 또는 도핑되지 않은 재료로 형성될 수 있는 칼코게나이드 재료를 포함할 수 있다. 일부 예에서, 저장 엘리먼트는 상 변화 재료 (예를 들어, 상 변화 칼코게나이드 합금) 예컨대, 인듐 (In)-안티몬 (Sb)-텔루륨 (Te) (IST) 재료 (예를 들어, In2Sb2Te5, In1Sb2Te4, In1Sb4Te7 등) 또는 게르마늄 (Ge)-안티몬 (Sb)-텔루륨 (Te) (GST) 재료 (예를 들어, Ge2Sb2Te5, Ge1Sb2Te4, Ge1Sb4Te7 등)를 포함할 수 있다. 본 출원에 사용된 하이픈 화학 조성 표기법은 특정 혼합물 또는 화합물에 포함된 원소이며 표시된 원소를 포함하는 모든 화학양론을 나타내기 위한 것이다. 다른 저장 원소 재료는 다양한 재료 중에서 GeTe, In-Se, Sb2Te3, GaSb, InSb, As-Te, Al-Te, Ge-Sb-Te, Te-Ge-As, In-Sb-Te, Te-Sn-Se, Ge-Se-Ga, Bi-Se-Sb, Ga-Se-Te, Sn-Sb-Te, In-Sb-Ge, Te-Ge-Sb-S, Te-Ge-Sn-O, Te-Ge- Sn-Au, Pd-Te-Ge-Sn, In-Se-Ti-Co, Ge-Sb-Te-Pd, Ge-Sb-Te-Co, Sb-Te-Bi-Se, Ag-In-Sb-Te, Ge-Sb-Se-Te, Ge-Sn-Sb-Te, Ge-Te-Sn-Ni, Ge-Te-Sn-Pd 및 Ge-Te-Sn-Pt를 포함할 수 있다.
다른 예들에서, 메모리 셀들 (120)은 선택 엘리먼트 및 저장 엘리먼트로서 작용할 수 있는 상 변화 재료와 같은 재료를 포함할 수 있어서, 메모리 셀들 (120)은 선택기 디바이스 및 메모리 엘리먼트 둘 모두로 작용할 수 있다. 이러한 일부 셀은 SSM(self-selecting memory) 셀이라고 할 수 있다.
도 2는 본 개시의 다수의 실시예들에 따라, 저항 가변 셀들의 그룹을 공통 저항 상태로 기록하는 것과 관련된 데이터 패턴을 도시한다. 예를 들어, 도 2는 논리 0의 데이터 값에 대응하는 저항 상태 (예를 들어, 리셋 상태)와 같은 공통 상태로 메모리 셀의 타겟 그룹의 모든 셀을 기록하는 것을 예시한다. 논리 0은 논리 0에 대응하는 저항 상태를 나타낼 수 있고, 논리 1은 논리 1에 대응하는 저항 상태 (예를 들어, 세트 상태)를 나타낼 수 있다. 예를 들어, 논리 0을 셀에 기록하는 것은 셀을 논리 0에 해당하는 저항 상태로 셀을 기록하는 것을 의미할 수 있고, 논리 1을 셀에 기록하는 것은 논리 1에 해당하는 저항 상태로 셀을 기록하는 것을 의미할 수 있다. 셀은 예를 들어, 세트 상태보다 리셋 상태에서 더 큰 저항을 가질 수 있다.
도 2의 동작은 전용 명령에 응답하여 컨트롤러 (108)로부터 메모리 (106)에서 수신되는 외부 호스트 데이터 없이, 명령 (118)과 같은 전용 명령에 응답하여 컨트롤러 (113)에 의해 수행될 수 있다. 예를 들어, 명령은 타겟 그룹의 어드레스를 지정하고 모든 논리 0이 타겟 그룹에 기록되도록 할 수 있다. 명령에 응답하여, 컨트롤러 (113)는 컨트롤러 (108)로부터 임의의 호스트 데이터를 수신하지 않는 경우 내부적으로 모든 논리 제로를 메모리 (106)에 기록하는 것을 진행할 수 있다. 일부 예에서, 명령은 타겟 그룹의 어드레스 및 타겟 그룹을 뒤따르는 연속된 그룹의 수량을 포함할 수 있다. 뒤따르는 것으로 설명된 논리 0 기록 전용 동작은 타겟 그룹에 추가하여 각각의 연속 그룹에 대해 수행될 수 있다. 도 2의 예는 모든 논리 0 기록을 예시하지만 다른 예에서는 모든 논리 1을 기록할 수 있다.
도 2에 도시된 바와 같이, 관리 유닛과 같은 데이터 패턴 (230) (예를 들어, 10111010101010)은 어레이 (114)의 저항 가변 메모리 셀 (235-1 내지 235-14)의 타겟 그룹으로부터 버퍼 (116)일 수 있는 버퍼 (216)로 판독 동작 (234) 동안 판독된다. 예를 들어, 메모리 셀 (235-1 내지 235-14)에 저장된 데이터 값은 버퍼 (216)의 세그먼트 (237-1 내지 237-14)로 개별적으로 판독될 수 있다. 그런 다음 컨트롤러 (113)는 버퍼 (216)의 판독 데이터 패턴 (230)으로부터 논리 1에 있는 임의의 셀 (235)을 결정할 수 있다.
일부 예들에서, 메모리 셀들의 그룹은 데이터 패턴 (230)에 대응하는 ECC(error correction) 데이터를 저장하기 위해 셀 (235-1 내지 235-14)에 추가하여 셀을 포함할 수 있다. 예를 들어, 컨트롤러 (113)는 판독 동작 (234) 동안 데이터 패턴 (230)을 정정하기 위해 ECC 데이터를 사용할 수 있다.
그런 다음 기록 동작 (238)은 논리 1을 논리 0에 저장 (예를 들어, 기록 될)하도록 결정된 셀만을 기록하도록 수행될 수 있고, 그 결과 저항 가변 메모리 셀 (235-1 내지 235-14)의 타겟 그룹에서 모든 논리 0의 데이터 패턴 (240)이 생성된다. 도 2에서, 전압 또는 전류 신호 R과 같은 리셋 신호 R은 해당 셀을 논리 0로 기록 (예를 들어, 리셋)하기 위해 논리 1을 저장하도록 결정된 셀에만 인가되고 반면 도 2에서 대시 "-"로 표시된 논리 0에 기록된 나머지 셀에는 전압 펄스가 인가되는 것이 방지된다.
논리 1로 프로그래밍된 셀에만 리셋 신호 R을 인가하고 논리 0로 프로그래밍된 셀에 리셋 신호 R을 인가하지 않는 것은 메모리 셀 그룹 (235-1 내지 235-14)에 리셋 마스크(reset mask) (242)를 인가하는 것과 동일할 수 있다. 리셋 마스크 (242)는 메모리 셀 (235-1 내지 235-14) 및 버퍼 세그먼트 (237-1 내지 237-14)에 각각의 대응하는 마스크 엘리먼트 (244-1 내지 244-14)를 갖는다. 리셋 신호 (R)에 대응하는 각각의 마스크 세그먼트는 논리 1로 프로그래밍된 셀에 대응하고 리셋 펄스 (R)가 이들 셀에 인가될 것임을 나타낸다. 대시 "-"가 포함된 각각의 마스크 세그먼트는 해당 셀이 리셋 펄스 R을 얻지 못함을 나타낸다. 이는 에너지 소비를 줄이고 에너지 효율성을 향상시킬 수 있다.
도 2와 관련하여 설명된 기록 동작은 메모리 (106)가 다른 동작을 수행하는 것과 동시에 백그라운드 동작으로 수행될 수 있으며, 어레이 (114)의 다른 파티션과 같은 어레이 (114)의 다른 부분에 판독 및/또는 기록을 위한 인터페이스 (111)를 비울 수 있다(free up). 기록 동작은 메모리 시스템 (102)의 동작을 개선하고, 따라서, 메모리 시스템 (102)에 대한 기술적인 개선을 가져온다. 인터페이스 (111)를 통한 논리 제로의 전송을 피하는 것은 전력 소비를 줄일 수 있고 메모리 시스템(102)의 성능을 향상시킬 수 있다.
도 3은 본 개시의 다수의 실시예에 따른, 사전 판독 동작이 없는 기록과 관련된 데이터 패턴을 예시한다. 예를 들어, 도 3은 전용 명령 (120)에 응답하는 것과 같이 사전 판독 없는 기록의 예를 도시한다. 사전 판독 동작이 없는 기록은 컨트롤러 (113)에 의해 메모리 (106)에 내부적으로 수행될 수 있다. 사전 판독 동작이 없는 기록은 컨트롤러 (108)로부터 버퍼 (316)에서 수신된 호스트 데이터 패턴 (344) (예를 들어, 10011000110110)을 어드레스가 전용 명령 (120)에서 지정될 수 있고 도 2와 관련하여 이전에 설명된 바와 같이, 예컨대, 명령 (118)에 대한 응답하여 모든 0의 데이터 패턴 (340)을 포함하도록 미리 기록될 수 있는 어레이 (114)의 저항 가변 메모리 셀 (335-1 내지 335-14)의 타겟 그룹에 기록한다. 이것은 셀의 상태를 결정하기 위해 셀을 미리 판독할 필요를 피한다.
버퍼 (316)는 버퍼 (116)일 수 있고 데이터 패턴 (340)의 각각의 데이터 값을 포함하는 버퍼 세그먼트 (337-1 내지 337-14)를 포함한다. 버퍼 세그먼트 (337-1 내지 337-14)는 메모리 셀 (335-1 내지 335-14)에 각각 대응한다.
일부 예에서, 전용 명령 (120)에 응답하여, 컨트롤러 (113)는 패턴 (344)이 논리 0보다 더 많은 논리 1을 갖는지를 결정할 수 있다. 컨트롤러 (113)는 패턴이 논리 0보다 논리 1이 더 많으면 이전 논리 1이 논리 0이 되고 이전 논리 0이 논리 1이 되도록 패턴에 대해 패턴 반전을 수행할 수 있다. 그러나, 패턴 (344)은 7 개의 논리 0과 7 개의 논리 1을 가지며, 패턴 반전은 보증되지 않는다.
기록 동작 (346)은 논리 1에 기록될 메모리 셀에만 기록함으로써 제자리에 데이터 패턴 (340) 위에 데이터 패턴 (344)을 기록한다. 도 3에서, 전류 또는 전압 신호 S와 같은 세트 신호 S는 해당 셀을 논리 1에 기록 (예를 들어, 세트)하기 위해 논리 1로 기록될 셀에만 인가되고, 반면, 도 3의 대시 "-"로 표시된 논리 0로 프로그래밍된 나머지 셀에는 전압 펄스가 인가되는 것이 방지된다. 이는 에너지 소비를 줄이고 에너지 효율성을 향상시킬 수 있다.
패턴 (344)이 반전된 패턴인지 여부를 나타내기 위해 플래그(flag) (353)와 같은 반전 표시자가 기록될 수 있다. 예를 들어, 플래그 (353)은 반전 없음을 나타내는 논리 0 또는 반전을 나타내는 논리 1과 같은 논리 데이터 값일 수 있다. 도 3의 예에서, 플래그는 컨트롤러 (108)로부터 수신된 패턴 (344)이 동일한 수의 논리 1과 논리 0을 갖는다는 점에서 논리 0으로 세팅된다. 일부 예들에서, 플래그 (353)는 셀 (335-1 내지 335-14)에 추가하여 셀 그룹의 셀에서와 같이 데이터 패턴에서 여분의 비트로서 저장될 수 있지만, 실시예가 그렇게 제한되지는 않는다.
논리 1로 프로그래밍될 셀에만 세트 신호 (S)를 인가하는 것은 메모리 셀 (335-1 내지 335-14) 그룹에 세트 마스크 (350)를 인가하는 것과 동일할 수 있다. 세트 마스크 (350)는 메모리 셀 (335-1 내지 335-14) 및 버퍼 세그먼트 (337-1 내지 337-14)에 각각의 대응하는 마스크 엘리먼트 (352-1 내지 352-14)를 갖는다. 세트 신호 (S)에 대응하는 각각의 마스크 세그먼트는 논리 1로 프로그래밍될 셀에 대응하고, 세트 펄스 (S)가 해당 셀에 인가될 것임을 나타낸다. 대시 "-"가 포함된 각각의 마스크 세그먼트는 대응하는 셀이 세트된 펄스 S를 얻지 못함을 나타낸다.
도 3과 관련하여 논의된 사전 판독 동작이 없는 기록은 이전 접근 방식에서 일반적으로 수행되는 그룹에 기록 전에 메모리 셀 그룹을 판독하는 것을 포함하는 기록 명령을 실행하는 것과 관련된 레이턴시 및 에너지 소비를 줄임으로써 메모리 시스템 및 그 동작에 대한 기술적인 개선을 가져올 수 있다.
도 4는 본 개시의 다수의 실시예에 따른, 데이터 패턴 반전을 갖는 사전 판독 없는 기록과 관련된 데이터 패턴을 예시한다. 예를 들어, 도 4는 전용 명령 (120)에 대한 응답과 같이 패턴 반전을 포함하는 사전 판독 없는 기록을 예시한다. 호스트 데이터 패턴 (455) (예를 들어, 10011001111010)은 컨트롤러 (108)로부터 버퍼 (416)에서 수신된다. 버퍼 (416)는 버퍼 (116)이고 데이터 패턴 (455)의 각각의 데이터 값을 포함하는 버퍼 세그먼트 (437-1 내지 437-14)를 포함한다. 컨트롤러 (113)는 패턴 (455)에서 논리 0 (6)보다 논리 1 (8)이 더 많은 것으로 결정하고 따라서, 버퍼 (416) 내에 반전된 패턴 (457) (예를 들어, 01100110000101)을 생성하기 위해 버퍼 (416)의 패턴 (455)에 대해 패턴 반전 (456)을 수행한다. 예를 들어, 패턴 (455)의 논리 1은 패턴 (457)의 논리 0이고 패턴 (455)의 논리 0은 패턴 (457)의 논리 1이다.
사전 판독 없는 기록은 예를 들어, 도 2와 관련하여 이전에 설명된 바와 같이, 명령 (118)에 대한 응답으로 모두 0의 데이터 패턴 (440)을 포함하도록 미리 기록될 수 있고 어드레스가 전용 명령 (120)에 지정될 수 있는 어레이 (114)의 저항 가변 메모리 셀 (435-1 내지 435-14)의 타겟 그룹에 패턴 (457)을 기록한다. 메모리 셀 (435-1 내지 435-14)은 예를 들어, 버퍼 세그먼트 (437-1 내지 437-14)에 각각 대응한다. 컨트롤러 (113)는 해당 컨트롤러 (113)가 메모리 셀 그룹 (435-1 내지 435-14)이 패턴 (440)을 저장한다는 것을 알고 있다는 점에서 패턴 (457)을 메모리 셀 (435-1 내지 435-14)에 기록하기 전에 메모리 셀 (435-1 내지 435-14)의 상태를 결정하기 위해 메모리 셀 (435-1 내지 435-14)을 미리 판독할 필요를 피할 수 있다.
기록 동작 (458)은 논리 1에 기록될 메모리 셀에만 기록함으로써 데이터 패턴 (440) 위에 데이터 패턴 (457)을 제자리에 기록한다. 도 4에서, 세트 신호 S는 논리 1로 기록하기 위해 논리 1로 기록될 셀에만 인가되고, 한편, 도 4에서 대시 "-"로 표시된 논리 0로 프로그래밍된 나머지 셀에는 전압 펄스가 인가되는 것이 방지된다. 플래그 (453)는 패턴 (457)이 반전 되었고 컨트롤러(108)로부터 수신된 패턴 (455)의 반전임을 나타내기 위해 논리 1로 세트된다.
메모리 셀 (435-1 내지 435-14) 및 버퍼 세그먼트 (437-1 내지 437-14)에 각각의 대응하는 마스크 엘리먼트 (452-1 내지 452-14)를 갖는 세트 마스크 (450)가 메모리 셀 그룹(435-1 내지 435-14)에 효과적으로 인가될 수 있어서 세트 신호 S는 논리 1로 프로그래밍될 셀에만 인가되고 세트 신호 S는 대시 "-"로 표시된 논리 0로 유지될 셀에 인가되지 않도록 한다.
도 5는 본 개시의 다수의 실시예에 따른 리프레시 동작과 관련된 데이터 패턴을 예시한다. 예를 들어, 리프레시 동작은 전용 명령 (122)에 응답할 수 있다. 컨트롤러 (113)는 전용 명령 (122)에 응답하여 컨트롤러 (108)로부터 메모리 (106)에서 수신되는 호스트 데이터 없이 명령 (122)에 어드레스가 지정될 수 있는 셀의 타겟 그룹에 대해 도 5의 리프레시 동작을 수행할 수 있다. 일부 예들에서, 어드레스는 명령 (122)에 지정되지 않을 수 있다. 예를 들어, 컨트롤러 (113)는 그룹이 마지막으로 리프레시된 때에 기초하여 명령 (122)에 응답하여 리프레시할 셀 그룹을 결정하는 역할을 할 수 있다. 일부 예들에서, 컨트롤러 (113)는 명령 (122)에 응답하여 어레이 (114) 전부를 리프레시할 수 있다. 일부 예들에서, 명령은 타겟 그룹의 어드레스 및 타겟 그룹을 뒤따르는 연속적인 그룹의 수량을 포함할 수 있다. 뒤따르는 것으로 설명된 리프레시 동작은 타겟 그룹에 추가하여 연속된 각각의 그룹에 대해 수행될 수 있다. 도 5의 예는 논리 1을 저장하는 셀만을 리프레시하는 것을 설명하지만, 다른 예에서는 논리 0을 저장하는 셀만을 리프레시할 수 있거나 논리 0을 저장하는 셀과 논리 1을 저장하는 셀이 리프레시될 수 있다.
도 5에서, 데이터 패턴 (558) (예를 들어, 10111010101010)은 어레이 (114)의 저항 가변 메모리 셀 (535-1 내지 535-14)의 타겟 그룹으로부터 버퍼(116)일 수 있는 버퍼 (516)로 판독 동작 (560) 동안 판독된다. 메모리 셀 (535-1 내지 535-14)에 저장된 데이터 값은 버퍼 (516)의 세그먼트 (537-1 내지 537-14)로 개별적으로 판독될 수 있다. 컨트롤러 (113)는 버퍼 (516)의 판독 데이터 패턴 (558)으로부터 논리 1로 기록된 임의의 셀 (535)을 결정할 수 있다. 그런 다음 리프레시 동작 (562)은 논리 1을 다시 논리 1로 저장하도록 결정된 셀만을 리프레시하도록 수행될 수 있어서 리프레시된 데이터 패턴 (558)을 생성할 수 있다.
일부 예에서, 메모리 셀 그룹은 데이터 패턴 (558)에 대응하는 ECC 데이터에 대한 셀 (535-1 내지 535-14)에 추가하여 셀을 포함할 수 있다. 예를 들어, 컨트롤러 (113)는 판독 동작 (560) 동안 데이터 패턴 (558)을 정정하기 위해 ECC 데이터를 사용할 수 있다.
도 5에서, 리프레시 전압 펄스 F와 같은 전압 펄스가 해당 셀을 논리 1로 리프레시하기 위해 논리 1을 저장하도록 결정된 셀에만 인가되어, 도 5에서 대시 "-"로 표시된 논리 0을 저장하는 나머지 셀에는 전압 펄스가 인가되는 것이 방지된다. 예를 들어, 논리 0을 저장하는 셀은 시간이 지남에 따라 다른 저항 상태로 드리프트될 수 있다. 이로 인해 동일한 판독 전압으로 셀을 판독이 어려울 수 있다. 도 5의 예에서, 논리 1을 저장하는 셀에 리프레시 펄스 F를 인가하는 것은 해당 셀이 거의 동일한 (예를 들어, 동일한) 저항 상태를 갖게 되어 드리프트와 관련된 문제를 완화시킬 수 있다.
메모리 셀 (535-1 내지 535-14) 및 버퍼 세그먼트 (537-1 내지 537-14)에 각각의 대응하는 마스크 엘리먼트 (566-1 내지 566-14)를 갖는 리프레시 마스크 (564)는 메모리 셀 그룹(535-1 내지 535-14)에 효과적으로 인가될 수 있어서 리프레시 펄스 F는 논리 1을 저장하는 셀에만 인가되고 리프레시 펄스 F는 대시 "-"로 표시되는 논리 0을 저장하는 셀에 인가되는 것이 방지된다.
도 6a는 본 개시의 다수의 실시예에 따른 순환 리프레시 동작(cyclic refresh operation)과 관련된 데이터 패턴을 예시한다. 예를 들어, 순환 리프레시 동작은 전용 명령 (122)에 응답하여 수행될 수 있다. 컨트롤러 (113)는 전용 명령 (122)에 응답하여 컨트롤러 (108)로부터 메모리 (106)에서 수신되는 호스트 데이터 없이 명령 (122)에 어드레스가 지정될 수 있는 셀의 타겟 그룹에 대한 도 6a의 리프레시 동작을 수행할 수 있다. 일부 예들에서, 명령은 타겟 그룹의 어드레스 및 타겟 그룹을 뒤따르는 연속 그룹 수량을 포함할 수 있다. 뒤따르는 거스로 설명된 리프레시 동작은 타겟 그룹에 추가하여 연속된 각각의 그룹에 대해 수행할 수 있다. 도 6a의 예는 논리 1을 저장하는 셀만을 리프레시하는 것을 나타내지만, 다른 예에서는 논리 0을 저장하는 셀만 리프레시되거나 논리 0을 저장하는 셀과 논리 1을 저장하는 셀이 리프레시될 수 있다.
도 6a에서, 데이터 패턴 (670 (예를 들어, 10111010101010))은 어레이 (114)의 저항 가변 메모리 셀 (635-1 내지 635-14)의 타겟 그룹으로부터 버퍼(116)일 수 있는 버퍼 (616)로 판독 동작 (672) 동안 판독된다. 메모리 셀 (635-1 내지 635-14)에 저장된 데이터 값은 버퍼 (616)의 세그먼트 (637-1 내지 637-14)에 개별적으로 판독될 수 있다. 컨트롤러 (113)는 버퍼(616)의 판독 데이터(670)로부터 논리 1로 기록된 임의의 셀 (635)을 결정할 수 있다. 그런 다음, 논리 1을 논리 1에 다시 저장하도록 결정된 셀 (635-1 내지 635-14)의 셀만을 리프레시하기 위해 순환 리프레시 동작 (674)이 수행되어 리프레시된 데이터 패턴 (670)이 생성된다.
일부 예들에서, 메모리 셀들의 그룹은 데이터 패턴 (670)에 대응하는 ECC 데이터를 위한 셀들 (635-1 내지 635-14)에 추가하여 셀들을 포함할 수 있다. 예를 들어, 컨트롤러 (113)는 판독 동작 (672) 동안 데이터 패턴(670)을 정정하기 위해 ECC 데이터를 사용할 수 있다.
메모리 셀 (635-1 내지 635-14) 및 버퍼 세그먼트 (637-1 내지 637-14)에 각각의 대응하는 마스크 엘리먼트 (678-1 내지 678-14)를 갖는 순환 리프레시 마스크 (676)는 메모리 그룹 셀 (635-1 내지 635-14)에 효과적으로 인가될 수 있어서 순환 리프레시 동작 C는 논리 1을 저장하는 셀에만 인가되고 순환 리프레시 동작 C는 대시 "-“로 표시되는 논리 0을 저장하는 셀에 인가되는 것이 방지된다.
도 6b는 본 개시의 다수의 실시예들에 따른, 순환 리프레시 동안 기록과 관련된 데이터 패턴을 예시한다. 예를 들어, 도 6b는 도 6a의 순환 리프레시 (674) 동안 기록들의 예를 예시한다. 순환 리프레시 동작 (674)은 셀 (635-1 내지 635-14) 각각이 논리 0을 저장하도록 모든 논리 0의 데이터 패턴 (640)을 생성하기 위해 해당 셀을 논리 0로 기록할 논리 1을 저장하도록 결정된 셀 (635-1 내지 635-14)의 셀에만 리셋 신호 R을 인가하는 리셋 동작 (638)과 같은 기록 동작(638)을 포함할 수 있다. 예를 들어, 메모리 셀 (635-1 내지 635-14) 및 버퍼 세그먼트 (637-1 내지 637-14)에 각각 대응하는 마스크 엘리먼트 (644-1 내지 644-14)를 갖는 리셋 마스크 (642)는 메모리 셀 그룹 (635-1 내지 635-14)에 효율적으로 인가될 수 있어서, 리셋 신호 R은 논리 1을 저장하는 셀에만 인가되고 리셋 신호 R은 대시 "-"로 표시된 논리 0을 저장하는 셀에 인가되는 것이 방지된다.
순환 리프레시 동작 (674)은 셀 (635-1 내지 635-14) 각각이 논리 0을 저장하도록 모든 논리 0의 데이터 패턴 (640)을 생성하기 위해 해당 셀을 논리 0로 기록할 논리 1을 저장하도록 결정된 셀 (635-1 내지 635-14)의 셀에만 리셋 신호 R을 인가하는 리셋 동작 (638)과 같은 기록 동작(638)을 포함할 수 있다. 예를 들어, 메모리 셀 (635-1 내지 635-14) 및 버퍼 세그먼트 (637-1 내지 637-14)에 각각 대응하는 마스크 엘리먼트 (644-1 내지 644-14)를 갖는 리셋 마스크 (642)는 메모리 셀 그룹 (635-1 내지 635-14)에 효율적으로 인가될 수 있어서, 리셋 신호 R은 논리 0을 저장하는 셀에만 인가되고 리셋 신호 R은 대시 "-"로 표시된 논리 0을 저장하는 셀에 인가되는 것이 방지된다.
순환 리프레시 동작 (674)은 세트 동작과 같은 기록 동작 (680)을 포함할 수 있다. 기록 동작 (680)은 논리 1에 기록될 메모리 셀에만 기록함으로써 데이터 패턴 (640) 위에 데이터 패턴 (670)을 제자리에 기록한다. 도 6b에서, 세트 신호 S는 논리 1에 기록될 셀에만 인가되어 해당 셀을 논리 1로 세트하고 한편, 대시 "-"로 표시된 논리 0로 유지되도록 나머지 셀에는 전압 펄스가 인가되는 것이 방지된다. 예를 들어, 메모리 셀 (635-1 내지 635-14) 및 버퍼 세그먼트 (637-1 내지 637-14)에 각각 대응하는 마스크 엘리먼트 (682-1 내지 682-14)를 갖는 세트 마스크 (681)는 메모리 셀 그룹(635-1 내지 635-14)에 효과적으로 인가될 수 있어서 세트 신호 S는 논리 1로 프로그래밍될 셀에만 인가되고 세트 신호 S는 대시 "-"로 표시된 대로 논리 0로 유지되도록 셀에 인가되는 것이 방지된다.
전술한 상세한 설명에서, 본 명세서의 일부를 형성하는 첨부 도면을 참조하며, 여기에는 특정 예가 예시로서 도시된다. 도면에서, 유사한 번호는 여러 도면에 걸쳐 실질적으로 유사한 컴포넌트를 설명한다. 다른 예가 이용될 수 있고, 본 개시의 범위를 벗어나지 않고 구조적, 논리적 및/또는 전기적 변경이 이루어질 수 있다.
본 명세서의 도면은 제 1 숫자 또는 숫자들이 도면의 도면 번호에 대응하고 나머지 숫자가 도면의 엘리먼트 또는 컴포넌트를 식별하는 번호 지정 규칙을 따른다. 서로 다른 도면 사이의 유사한 엘리먼트 또는 컴포넌트는 유사한 숫자를 사용하여 식별될 수 있다. 이해되는 바와 같이, 본 명세서의 다양한 실시예에 도시된 엘리먼트는 본 개시의 다수의 추가 실시예를 제공하기 위해 추가, 교환 및/또는 제거될 수 있다. 또한, 이해되는 바와 같이, 도면에 제공된 엘리먼트의 비율 및 상대적 스케일은 본 발명의 실시예를 예시하기 위한 것이며 제한적인 의미로 받아들여서는 안 된다.
본 출원에서 사용된, "다수의" 어떤 것은 그러한 것 중 하나 이상을 지칭할 수 있다. 예를 들어, 다수의 메모리 셀은 하나 이상의 메모리 셀을 지칭할 수 있다. "복수의" 어떤 것은 둘 이상을 의미한다. 본 출원에서 사용되는, 동시에 수행되는 다수의 행위는 특정 기간에 걸쳐 적어도 부분적으로 중첩되는 행위를 지칭한다. 본 출원에서 사용되는, 용어 "결합된"는 전기적으로 결합, 직접 결합 및/또는 개재 엘리먼트 없이 (예를 들어, 직접적인 물리적 컨택에 의해) 직접 연결되거나, 개재 엘리먼트로 간접적으로 결합 및/또는 연결된 것을 포함할 수 있다. 결합된 용어는 (예를 들어, 원인 및 결과 관계에서와 같이) 서로 협력하거나 상호 작용하는 둘 이상의 엘리먼트를 더 포함할 수 있다.
특정 예가 본 출원에 예시되고 설명되었지만, 당업자는 동일한 결과를 달성하도록 계산된 배열이 도시된 특정 실시예를 대체할 수 있음을 이해할 것이다. 본 개시는 본 개시의 하나 이상의 실시예의 적응 또는 변형을 포함하도록 의도된다. 상기 설명은 제한적인 것이 아니라 예시적인 방식으로 이루어진 것으로 이해되어야 한다. 본 개시의 하나 이상의 예의 범위는 첨부된 청구 범위를 참조하여, 그러한 청구 범위가 자격이 있는 등가물의 전체 범위와 함께 결정되어야 한다.

Claims (20)

  1. 장치에 있어서,
    저항 가변 메모리 셀의 어레이를 포함하는 메모리; 및
    컨트롤러로서,
    제 1 상태에 대응하는 데이터 패턴을 상기 저항 가변 메모리 셀의 다수의 그룹에 전달하지 않고 상기 다수의 그룹의 모든 셀을 상기 제 1 상태로 기록하는 전용 명령(dedicated command)을 수신하고; 및
    상기 전용 명령에 대한 응답하여,
    각각의 개별 그룹에 대해 판독 동작을 수행하여 각각의 개별 그룹 내의 셀의 상태를 결정하고;
    상기 판독 동작으로부터 제 2 상태로 프로그래밍된 각각의 개별 그룹의 셀들을 결정하고; 및
    상기 제 2 상태에 있는 것으로 결정된 셀만을 상기 제 1 상태로 기록하도록 구성된, 상기 컨트롤러를 포함하는, 장치.
  2. 제 1 항에 있어서, 상기 컨트롤러는 제 1 컨트롤러이고 상기 메모리 내부에 있고, 상기 전용 명령은 메모리 인터페이스를 통해 상기 메모리 외부에 있는 제 2 컨트롤러로부터 수신되는, 장치.
  3. 제 2 항에 있어서, 상기 제 1 상태에 대응하는 데이터 패턴은 상기 전용 명령에 응답하여 상기 제 2 컨트롤러로부터 전송되지 않는, 장치.
  4. 제 2 항에 있어서, 상기 판독 동작은 상기 제 2 컨트롤러로부터 판독 명령을 수신하지 않고 수행되는, 장치.
  5. 제 1 항에 있어서, 상기 판독 동작에 기초하여 리셋 마스크 패턴을 생성하는 것을 더 포함하는, 장치.
  6. 제 1 항에 있어서, 상기 컨트롤러는 상기 제 2 상태에 있는 것으로 결정된 셀에만 리셋 신호를 인가함으로써 상기 제 2 상태에 있느 것으로 결정된 셀만을 상기 제 1 상태로 기록하도록 구성된, 장치.
  7. 제 1 항에 있어서, 상기 전용 명령은 상기 다수의 그룹 중 특정 그룹의 어드레스 및 상기 특정 그룹을 뒤따르는 상기 다수의 그룹 의 연속 그룹의 수량을 포함하는, 장치.
  8. 방법에 있어서,
    메모리 외부에 있는 컨트롤러로부터 메모리로, 다수의 저항 가변 메모리 셀 그룹의 모든 셀을 제 1 상태로 기록하기 위한 제 1 전용 명령을 수신한 것에 응답하여, 현재 제 2 상태에 있는 셀만을 상기 제 1 상태로 변경하는 단계;
    상기 제 1 전용 명령은 사용자 데이터 패턴을 포함하지 않고; 및
    상기 다수의 그룹의 모든 셀이 상기 제 1 상태가 된 후, 상기 컨트롤러로부터 상기 메모리로 수신된 제 2 전용 명령에 응답하여, 타겟 그룹의 상태를 먼저 결정하지 않고, 상기 다수의 그룹 중 상기 타겟 그룹에 사용자 데이터 패턴을 기록하는 단계를 포함하는, 방법.
  9. 제 8 항에 있어서, 상기 사용자 데이터 패턴을 상기 타겟 그룹에 기록하는 단계는 상기 제 2 상태로 기록될 셀에만 기록 신호를 인가하는 단계를 포함하는, 방법.
  10. 제 8 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 사용자 데이터 패턴이 상기 제 1 상태보다 상기 제 2 상태에 대응하는 더 많은 데이터 값을 포함하는지 여부를 결정하는 단계; 및
    상기 사용자 데이터 패턴이 상기 제 1 상태보다 상기 제 2 상태에 대응하는 더 많은 데이터 값을 포함한다는 결정에 응답하여, 이전에 상기 제 2 상태에 대응하는 데이터 값이 상기 제 1 상태에 대응하고 및 이전에 상기 제 1 상태에 대응하는 데이터 값이 상기 제 2 상태에 대응하도록 상기 사용자 데이터 패턴을 상기 타겟 그룹에 저장하기 전에 패턴 반전(pattern inversion)을 수행하는 단계를 더 포함하는, 방법.
  11. 장치에 있어서,
    저항 가변 메모리 셀의 어레이를 포함하는 메모리; 및
    상기 메모리에 결합된 컨트롤러로서, 상기 컨트롤러는,
    리프레시 명령(refresh command)에 응답하여 데이터 패턴을 상기 셀의 타겟 그룹에 전송하지 않고 상기 저항 가변 메모리 셀의 타겟 셀의 타겟 그룹을 리프레시하는 전용 리프레시 명령을 수신하고; 및
    상기 전용 리프레시 명령에 응답하여,
    상기 타겟 셀의 상태를 결정하기 위해 상기 타겟 그룹에 대해 판독 동작을 수행하고; 및
    특정 상태로 프로그래밍된 것으로 결정된 타겟 셀만을 재기록하도록 구성된, 상기 컨트롤러를 포함하는, 장치.
  12. 제 11 항에 있어서, 상기 특정 상태는 제 1 상태이고, 상기 컨트롤러는,
    상기 제 1 상태의 타겟 셀에 리셋 신호를 인가하여 상기 타겟 셀을 상기 제 1 상태로부터 제 2 상태로 기록하는 단계; 및
    상기 제 2 상태의 셀에 세트 신호를 인가하여 상기 타겟 셀을 상기 제 2 상태에서 상기 제 1 상태로 재기록하는 단계에 의해 상기 타겟 셀을 재기록하도록 구성된, 장치.
  13. 제 11 항 내지 제 12 항 중 어느 한 항에 있어서,
    상기 컨트롤러는 메모리 내부에 있고, 상기 리프레시 명령은 메모리 인터페이스를 통해 상기 메모리 외부의 컨트롤러로부터 수신된, 장치.
  14. 장치에 있어서,
    제 1 컨트롤러;
    상기 제 1 컨트롤러에 결합된 메모리를 포함하되, 상기 메모리는,
    저항 가변 메모리 셀 어레이; 및
    상기 어레이에 연결된 제 2 컨트롤러를 포함하며, 상기 제 2 컨트롤러는,
    상기 제 1 컨트롤러로부터의 제 1 전용 명령에 응답하여, 상기 제 1 컨트롤러에서 상기 제 2 컨트롤러로 제 2 상태에 대응하는 데이터 패턴을 전송하지 않고 제 1 상태의 다수의 상기 저항 가변 메모리 셀의 그룹의 셀만을 제 2 상태로 기록하고; 및
    상기 다수의 그룹의 모든 셀이 제 2 상태에 있게 된 후, 상기 제 1 컨트롤러로부터의 전용 제 2 명령에 응답하여, 타겟 그룹의 상태를 먼저 결정하지 않고 상기 다수의 그룹 중 상기 타겟 그룹에 데이터 패턴을 기록하도록 구성된, 상기 제 2 컨트롤러를 포함하는, 장치.
  15. 제 14 항에 있어서, 상기 전용 제 2 명령은 상기 타겟 그룹의 상태를 먼저 결정하지 않고 상기 데이터 패턴이 상기 타겟 그룹에 기록될 것임을 상기 제 2 컨트롤러에 지시하는, 장치.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020217010478A 2018-09-12 2019-08-28 메모리 동작을 위한 전용 명령 KR102341698B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/128,550 US10622065B2 (en) 2018-09-12 2018-09-12 Dedicated commands for memory operations
US16/128,550 2018-09-12
PCT/US2019/048470 WO2020055583A1 (en) 2018-09-12 2019-08-28 Dedicated commands for memory operations

Publications (2)

Publication Number Publication Date
KR20210043005A KR20210043005A (ko) 2021-04-20
KR102341698B1 true KR102341698B1 (ko) 2021-12-21

Family

ID=69719999

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217010478A KR102341698B1 (ko) 2018-09-12 2019-08-28 메모리 동작을 위한 전용 명령

Country Status (7)

Country Link
US (1) US10622065B2 (ko)
EP (1) EP3850627A4 (ko)
JP (1) JP7061230B2 (ko)
KR (1) KR102341698B1 (ko)
CN (1) CN112673426B (ko)
TW (1) TWI720607B (ko)
WO (1) WO2020055583A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107615249B (zh) * 2015-05-14 2020-11-27 爱德斯托科技有限公司 存储器装置和控制存储器装置的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100827702B1 (ko) 2006-11-01 2008-05-07 삼성전자주식회사 가변저항 반도체 메모리 장치

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3604291B2 (ja) * 1998-10-08 2004-12-22 富士通株式会社 ダブルレートの入出力回路を有するメモリデバイス
US7010644B2 (en) * 2002-08-29 2006-03-07 Micron Technology, Inc. Software refreshed memory device and method
KR100631923B1 (ko) 2004-10-12 2006-10-04 삼성전자주식회사 반도체 메모리에서의 레퍼런스전압 공급장치 및 그의구동방법
MX2007014846A (es) * 2005-05-30 2008-02-21 Seiko Epson Corp Aparato de almacenamiento de semiconductor.
JP2007250101A (ja) 2006-03-16 2007-09-27 Fujitsu Ltd 不揮発性メモリ装置および不揮発性メモリ装置の制御方法
JP4928830B2 (ja) * 2006-05-18 2012-05-09 株式会社東芝 Nand型フラッシュメモリ装置及びメモリデバイス
JP2008146740A (ja) * 2006-12-08 2008-06-26 Sharp Corp 半導体記憶装置
US7633798B2 (en) * 2007-11-21 2009-12-15 Micron Technology, Inc. M+N bit programming and M+L bit read for M bit memory cells
KR101246833B1 (ko) * 2007-12-20 2013-03-28 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치, 이를 포함하는메모리 시스템, 및 이의 구동 방법
JP5262402B2 (ja) * 2008-08-04 2013-08-14 富士通株式会社 記憶装置及びデータ保持方法
US7830726B2 (en) * 2008-09-30 2010-11-09 Seagate Technology Llc Data storage using read-mask-write operation
IT1399916B1 (it) * 2010-04-30 2013-05-09 Balluchi Dispositivo di memoria ad accesso di registro indicizzato
US9330753B2 (en) 2010-11-29 2016-05-03 Seagate Technology Llc Memory sanitation using bit-inverted data
JP5853899B2 (ja) 2012-03-23 2016-02-09 ソニー株式会社 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP5942781B2 (ja) * 2012-04-16 2016-06-29 ソニー株式会社 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法
JP5853906B2 (ja) * 2012-08-24 2016-02-09 ソニー株式会社 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
JP5689569B2 (ja) * 2013-02-01 2015-03-25 パナソニックIpマネジメント株式会社 不揮発性記憶装置
JP5989611B2 (ja) 2013-02-05 2016-09-07 株式会社東芝 半導体記憶装置、及びそのデータ制御方法
US9449675B2 (en) * 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
KR20150095360A (ko) * 2014-02-13 2015-08-21 에스케이하이닉스 주식회사 저항성 메모리 장치 및 동작 방법
CN106255961B (zh) * 2014-05-09 2020-03-31 索尼公司 存储控制设备、存储设备及存储控制方法
KR102178832B1 (ko) 2014-07-22 2020-11-13 삼성전자 주식회사 저항성 메모리 장치 및 저항성 메모리 장치의 동작 방법
KR102251814B1 (ko) 2015-02-06 2021-05-13 삼성전자주식회사 메모리 장치, 그것의 동작 및 제어 방법
KR102354350B1 (ko) * 2015-05-18 2022-01-21 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
US9734908B1 (en) 2016-03-22 2017-08-15 Winbond Electronics Corp. Writing method for resistive memory cell and resistive memory
US9721639B1 (en) 2016-06-21 2017-08-01 Micron Technology, Inc. Memory cell imprint avoidance
US10387046B2 (en) * 2016-06-22 2019-08-20 Micron Technology, Inc. Bank to bank data transfer
US20180025777A1 (en) 2016-07-19 2018-01-25 Sandisk Technologies Llc High-reliability memory read technique
US9940052B2 (en) 2016-09-14 2018-04-10 Micron Technology, Inc. Memory device configuration commands

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100827702B1 (ko) 2006-11-01 2008-05-07 삼성전자주식회사 가변저항 반도체 메모리 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
J. Jung 외, "Energy-Efficient Spin-Transfer Torque RAM Cache Exploiting Additional All-Zero-Data Flags," International Symposium on Quality Electronic Design (ISQED), 2013. 03.

Also Published As

Publication number Publication date
US20200082883A1 (en) 2020-03-12
US10622065B2 (en) 2020-04-14
JP7061230B2 (ja) 2022-04-27
TWI720607B (zh) 2021-03-01
EP3850627A1 (en) 2021-07-21
TW202020657A (zh) 2020-06-01
JP2021527913A (ja) 2021-10-14
CN112673426B (zh) 2024-08-13
KR20210043005A (ko) 2021-04-20
CN112673426A (zh) 2021-04-16
WO2020055583A1 (en) 2020-03-19
EP3850627A4 (en) 2022-05-25

Similar Documents

Publication Publication Date Title
US10741245B2 (en) Resistive memory device and resistive memory system including a plurality of layers, and method of operating the system
KR102646907B1 (ko) 쓰기 버퍼 메모리를 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
CN111145819B (zh) 用于数据结构的专用读取电压
KR20160050394A (ko) 메모리 시스템 및 상기 메모리 시스템의 동작 방법
US20220019384A1 (en) Memory management utilzing buffer reset commands
KR102267364B1 (ko) 데이터 상태 동기화
CN113946283B (zh) 存储器装置的分区命名空间中的部分区存储器单元处置
KR102341698B1 (ko) 메모리 동작을 위한 전용 명령
US11456033B2 (en) Dedicated commands for memory operations
US20190332322A1 (en) Memory system including resistive variable memory device and operating method thereof
KR20200073108A (ko) Pram 블록들 내 카피백 및 쓰기의 통합을 위한 방법
US12093554B2 (en) Memory system and operating method of memory system

Legal Events

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