KR20220148866A - 메모리 셀을 위한 카운터 기반 감지 증폭기 방법 - Google Patents

메모리 셀을 위한 카운터 기반 감지 증폭기 방법 Download PDF

Info

Publication number
KR20220148866A
KR20220148866A KR1020227033725A KR20227033725A KR20220148866A KR 20220148866 A KR20220148866 A KR 20220148866A KR 1020227033725 A KR1020227033725 A KR 1020227033725A KR 20227033725 A KR20227033725 A KR 20227033725A KR 20220148866 A KR20220148866 A KR 20220148866A
Authority
KR
South Korea
Prior art keywords
counter
memory
codeword
cell
read
Prior art date
Application number
KR1020227033725A
Other languages
English (en)
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 KR20220148866A publication Critical patent/KR20220148866A/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/004Reading or sensing circuits or methods
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/46Test trigger logic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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/003Cell access
    • 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
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • 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
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/20Address generation devices; Devices for accessing memories, e.g. details of addressing circuits using counters or linear-feedback shift registers [LFSR]
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/54Arrangements for designing test circuits, e.g. design for test [DFT] tools
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/08Control thereof
    • 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
    • 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/0045Read using current through the cell
    • 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
    • G11C2029/0411Online error correction
    • 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
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5004Voltage
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/71Three dimensional array
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/76Array using an access device for each cell which being not a transistor and not a diode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Semiconductor Memories (AREA)
  • Read Only Memory (AREA)
  • Amplifiers (AREA)

Abstract

메모리 셀에 대한 카운터 기반 감지 증폭기 방법과 관련된 방법, 시스템 및 디바이스가 설명된다. 카운터 기반 판독 알고리즘은, - 메모리 셀 어레이와 연관된 카운터에 메모리 어레이에 저장된 데이터 비트의 미리 결정된 로직 값을 갖는 비트 수 값을 저장하는 단계; - 미리 결정된 로직 값을 갖는 비트 수에 대응하는 값을 상기 카운터로부터 판독하는 단계; - 바이어싱 전압의 램프를 인가함으로써 메모리 셀 어레이에 저장된 데이터를 판독하는 단계; - 데이터 판독 페이즈 동안 미리 결정된 로직 값을 갖는 비트 수를 카운팅하는 단계; - 상기 미리 결정된 로직 값을 갖는 비트 수가 상기 카운터에 저장된 값과 동일할 때 데이터 판독 페이즈를 중지하는 단계를 포함할 수 있다.

Description

메모리 셀을 위한 카운터 기반 감지 증폭기 방법
다음은 일반적으로 메모리 어레이를 동작시키는 것에 관한 것이고, 더 구체적으로는 메모리 셀을 위한 카운터 기반 감지 증폭기 방법에 관한 것이다.
메모리 디바이스는 컴퓨터, 무선 통신 디바이스, 카메라, 디지털 디스플레이 등과 같은 다양한 전자 디바이스에 정보를 저장하는 데 널리 사용된다. 정보는 메모리 디바이스의 다양한 상태를 프로그래밍하여 저장된다. 예를 들어, 바이너리 디바이스에는 종종 로직 "1" 또는 로직 "0"으로 표시되는 2개의 상태가 있다. 다른 시스템에서, 2개보다 더 많은 상태가 저장될 수 있다. 저장된 정보에 액세스하기 위해 전자 디바이스의 컴포넌트는 메모리 디바이스의 저장된 상태를 판독하거나 감지할 수 있다. 정보를 저장하기 위해 전자 디바이스의 컴포넌트는 메모리 디바이스의 상태를 기록하거나 프로그래밍할 수 있다.
자기 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 동적 RAM(DRAM), 동기식 동적 RAM(SDRAM), 강유전성 RAM(FeRAM), 자기 RAM(MRAM), 저항성 RAM(RRAM), 플래시 메모리, 상 변화 메모리(PCM) 등을 비롯한 다양한 유형의 메모리 디바이스가 존재한다. 메모리 디바이스는 휘발성 또는 비휘발성일 수 있다. 비휘발성 메모리 셀은 외부 전원이 없는 경우에도 장기간 그 저장된 로직 상태를 유지할 수 있다. 휘발성 메모리 셀은 외부 전원에 의해 주기적으로 리프레시되지 않으면, 시간이 지남에 따라 그 저장된 상태를 잃을 수 있다.
메모리 디바이스를 개선하는 것은 일반적으로 여러 척도 중에서 메모리 셀 밀도 증가, 판독/기록 속도 증가, 신뢰성 증가, 데이터 보유 증가, 전력 소비 감소 또는 제조 비용 감소를 포함할 수 있다. 메모리 셀이 가변적인 전기적 특성, 특히 메모리 셀의 3차원(3D) 어레이를 갖는 메모리 디바이스를 나타낼 때 메모리 셀 성능 및 신뢰성을 증가시키기 위해 보다 강건한 판독 기술이 요구될 수 있다.
도 1은 본 개시의 실시예에 따른 메모리 셀에 대한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 셀의 3차원(3D) 어레이를 갖는 메모리 디바이스 도면의 예를 예시한다.
도 2는 본 개시의 실시예에 따른 메모리 셀에 대한 카운터 기반 감지 증폭기 방법을 지원하는 3D 메모리 어레이의 예를 예시한다.
도 3은 본 개시의 실시예에 따라 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 코드워드 조성을 포함하는 메모리 페이지의 예를 예시한다.
도 4는 본 개시의 실시예에 따라 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 확장 코드워드 조성을 포함하는 개선된 메모리 페이지의 추가적인 예를 예시한다.
도 4a는 도 3의 메모리 페이지와 연관된 카운터 레지스터의 구조의 개략도이다.
도 5는 본 개시의 실시예에 따라 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 디바이스의 블록도를 도시한다.
도 6은 메모리 코드워드의 판독 페이즈와 병렬로 메모리 카운터의 판독 페이즈를 구현하기 위해 본 개시의 방법에 따라 동작하는 판독 알고리즘을 예시하는 개략도를 도시한다.
도 7은 개시된 감지 방법에 따라 동작하기 위해 본 개시의 메모리 디바이스를 준비하는 프로그래밍 페이즈의 블록도를 도시한다.
도 8은 메모리 코드워드의 판독 페이즈 및 추가적인 최종 시도 및 반복 감지 페이즈와 병렬로 메모리 카운터의 판독 페이즈를 구현하기 위해 본 개시의 방법에 따라 동작하는 판독 알고리즘을 예시하는 개략도를 도시한다.
도 9는 본 개시의 방법에 따라 수행되는 메모리 디바이스의 판독 페이즈의 블록도를 예시한다.
도 10은 본 개시의 방법에 따라 수행되고 도 8의 예에 대응하는 메모리 디바이스의 대안적인 판독 페이즈의 블록도를 예시한다.
도 11은 본 개시의 방법을 채택한 판독 페이즈의 증가된 신뢰성을 나타내는 몇 개의 곡선을 도시하는 도면이다.
도 12는 알려진 해결책에 따른 2개의 상이한 일반 메모리 페이지(XXX 및 ZZZ)에서 판독 페이즈 동안 검출될 수 있는 메모리 셀의 분포 대 시간의 비교도를 도시한다.
도 13은 본 개시의 실시예에 따른 2개의 상이한 일반 메모리 페이지(XXX 및 ZZZ)에서 판독 페이즈 동안 검출될 수 있는 메모리 셀의 분포 대 시간의 비교도를 도시한다.
도 14는 가변 기울기를 갖는 램프를 갖는 바이어싱 판독 전압을 채택하는 판독 페이즈 동안 검출될 수 있는 메모리 셀의 분포 대 시간의 도면을 도시한다.
본 기술 분야에서 알려진 바와 같이, 상 변화 메모리(PCM)는 재료의 2개의 상이한 결정학적 구조와 연관된 별개의 전기적 특성을 갖는 2개의 상, 정확하게는 비정질, 무질서 상 및 결정 또는 다결정 질서 상 사이에서 스위칭하는 특성을 갖는 재료 부류를 사용한다. 따라서, 2개의 상은 상당히 다른 값의 비저항과 연관된다.
상 변화 재료 요소는 대응하는 다른 로직 상태와 연관될 수 있는 그 상에 따라 다른 전기 비저항 값을 나타낸다. 비정질 상의 상 변화 재료의 비저항은 결정 상 재료의 비저항보다 더 높다. (완전) 비정질 상 중 하나와 (완전) 결정 상 중 하나 사이의 중간 비저항 값을 갖는 다양한 부분 결정화 정도가 또한 가능할 수 있다.
이상적으로, PCM 메모리 디바이스의 모든 메모리 셀(이하, 간단히 "PCM 셀"이라 지칭됨)은 동일한 로직 상태에 대해 동일한 (공칭) 비저항(따라서 동일한 임계 전압, 후자는 메모리 셀이 전류를 전도하게 하기 위해 메모리 셀에 인가되는 전압)을 특징으로 해야 한다. 그러나, 동일한 로직 상태로 프로그래밍된 서로 다른 PCM 셀은 (예를 들어, 다수의 판독-기록 동작의 실행 및/또는 제조 공차에 의해 야기되는 상 변화 재료의 전기적 특성 변동과 같은) 여러 요인으로 인해 실제로 상이한 비저항 값을 나타내기 때문에, 각각의 로직 상태는 실제로 각각의 비저항 분포(전형적으로 가우시안 유형 분포), 따라서 각각의 임계 전압 분포와 연관된다.
PCM 셀의 로직 상태를 평가하기 위해, PCM 셀의 임계 전압이 어느 임계 전압 분포에 속하는지 평가하기 위한 판독 동작이 수행된다. 예를 들어, 판독 전압(VDM)이 PCM 셀에 인가될 수 있고 PCM 셀의 로직 상태는 상기 판독 전압에 응답하는 전류(그 존재 또는 부재)에 기초하여 평가되고, 전류(그 존재 또는 부재)는 PCM 셀의 임계 전압에 의존한다.
2개의 임계 전압 분포(예를 들어, SET 상태에 대응하는 제1 임계 전압 분포 및 RESET 상태에 대응하는 제2 임계 전압 분포, 여기서, 제1 임계 전압 분포의 임계 전압은 제2 임계 전압 분포의 임계 전압보다 더 낮음)가 제공되는 바이너리 PCM 메모리 디바이스를 참조하면, 판독 전압(VDM)의 값은 유리하게는 제1 임계 전압 분포의 높은 임계 전압보다 더 높고 제2 임계 전압 분포의 낮은 임계 전압보다 더 낮도록 선택된다.
PCM 메모리 디바이스는 그 마지막 프로그래밍 후 시간 경과에 따라 PCM 셀의 비저항에 의해 발생하는 변화(전문 용어로 "드리프트")로 인한 단점에 부정적인 영향을 받는다. 실제로, PCM 셀이 비저항 값에 대응하는 로직 상태로 프로그래밍되면 셀의 비저항은 PCM 메모리 디바이스의 동작 온도(온도가 높을수록 시간에 따른 비저항 증가가 더 빠름) 및 프로그래밍된 로직 상태에 대응하는 비저항(높은 비저항 값으로 프로그래밍된 PCM 셀은 낮은 비저항 값으로 프로그래밍된 PCM 셀에 비교하여 더 빠른 비저항 시간 드리프트를 경험함)과 같은 여러 요인에 따라 달라지는 방식으로 시간 경과에 따라 증가하는 경향이 있다. 비저항 시간 드리프트는 결국 마지막 프로그램 동작 이후 시간 경과에 따라 대응적으로 이동하는 임계 전압 분포의 드리프트를 유발한다.
PCM 메모리 디바이스에 장시간 프로그램 동작이 적용되지 않았기 때문에, 임계 전압 분포의 드리프트가 특히 높은 경우, 이전에 판독 동작을 수행하기 위해 선택된 판독 전압의 값은 더 이상 PCM 셀의 임계 전압이 속하는 임계 전압 분포를 평가할 수 없을 수 있다.
드리프트와 사이클링은 VDM을 밀어내고 기술 메모리 기능을 저하시키는 윈도우 버짓 훼손자(window budget detractor)이다.
램프 생성기로 PCM 메모리 셀을 판독하고 전압 램프를 기초로 페이지 비트 판독을 가능하게 하는 시간 이벤트를 생성하는 페이지당 타이머를 측정하는 해결책이 제안되었다(예를 들어, 미국 특허 제8,553,453호). 스위치 검출기가 램프 상승을 중지시키는 데 사용된다. 이 해결책은 상대적으로 저렴하지만 결정론적이지 않으며 셀 분포가 알려진 형상(즉, 가우시안)을 갖는다는 가정을 기초로 하고; 또한, 구현에 따라 회로 노이즈의 영향을 받는다.
램프에 소프트 정보를 추가로 첨부하는 디지털 전압 램프를 생성하는 기준으로서 알려진 패턴 상태를 측정하기 위한 추가 해결책이 제안되었다(예를 들어, 미국 특허 제8,913,426호). 이 해결책은 소프트 수정이 동반된 ECC 오버플로우 및 참조표의 사용을 필요로 한다.
알려진 해결책과 달리, 본 명세서에 개시된 방법은 ECC 피드백 정보가 때때로 메모리 셀 내용의 정확한 판독에 충분하지 않다는 고려에서 출발한다. 이는 예를 들어 "0"으로 판독된 셀로 인한 오류의 경우 또는 그 반대의 경우에 발생한다.
예를 들어, 로직 값 "0"에 대응하는 다수의 로직 값 "1"을 포함하는 균형 패턴을 저장하는 메모리 워드의 경우, 이때, 이는 적어도 N/2개의 셀을 판독해야 할 것이다. 그러나, "0"을 저장하는 셀이 잘 프로그래밍되지 않은 경우, 이때, 해당 셀은 "1"로 판독되고 판독 페이즈는 "1"로 판독된 N/2개의 셀을 반환하지만 그러나 여기에는 "0"을 저장해야 하는 하나의 잘못된 셀이 존재한다. 동시에, 판독은 "0"으로 판독된 N/2개의 셀을 반환할 것이고, 여기에는 "1"을 저장하는 하나의 셀이 존재한다. 따라서, 셀이 파손되면, 2개의 오류가 생성된다. 이러한 이유로, ECC1은 이러한 오류를 복구하기에 충분하지 않다. 2개의 파손된 셀이 4개의 오류를 생성하기 때문에 2개의 오류를 복구하지 않는 ECC2에도 동일한 상황이 적용되는 등등이다.
위의 예에 비추어 볼 때, ECC로부터의 피드백만으로는 충분하지 않지만 본 개시의 방법은 N("1") - N(ECC)에 대응하는 다수의 셀을 판독하는 동안 ECC로부터 피드백을 필요로 하는 보다 정교한 판독 알고리즘을 따를 것을 교시한다는 것을 명확히 해둔다. 이러한 알고리즘은 최저 판독 시간을 갖는 ECC로부터 최소 수의 피드백 요청을 생성할 것이다.
본 개시의 방법은 ECC로 보호된 비트, 또는 비트당 2개의 셀 투표 방식과 같은 다른 메커니즘을 갖는 코드워드 부분- 이하 카운터라고도 지칭됨 -을 사용하며; 이 방법은 단지 메모리 코드워드를 저장하는 동안 카운터의 내용을 저장하는 프로그래밍 메커니즘의 수정만을 필요로 한다. 코드워드는 판독 페이즈 동안 사용될 토폴로지인 ECC와 유사하게 정보를 포함할 수 있다.
카운터 내용, 예를 들어 코드워드 카운터 부분의 비트의 판독 페이즈는 메모리 셀의 누설 균형 페이즈 동안 활성화되는 반면, 판독 알고리즘은 메모리 셀의 정규 판독 페이즈 동안 활성화된다.
본 개시는 3D 메모리 디바이스에서 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법에 기초한 새롭고 보다 효율적인 해결책에 관한 것이다. 이 해결책은 판독 페이즈 동안 메모리 셀에 인가되는 전압이 감소되게 하며, 따라서, 메모리 셀에 인가되는 스트레스를 감소시키며, 바이어싱 전압을 생성하는 데 필요한 전력을 더욱 감소시킨다.
이 새로운 제안된 기술은 실질적으로 프로그래밍 페이즈에서 수행되는 제1 단계 및 감지 페이즈에서 수행되는 제2 단계의 2개의 단계에 기초한다.
프로그래밍 페이즈에서 비트 플립(BF)을 사용하여 메모리 코드워드의 패턴을 대부분(>50%) 로직 값 0(높은 Vth를 가짐) 또는 로직 값 1(낮은 Vth를 가짐)로 설정하는 것이 제안된다. 달리 말해서, 로직 값 "0" 또는 "1"을 갖는 특정 코드워드에 프로그래밍된 셀의 수 값을 검출하기 위해 카운터가 사용된다.
더 구체적으로, 셀 프로그래밍을 반전할 수 있는 비트 플립을 사용하여, 로직 값 또는 다른 값에 카운팅 활동을 집중하는 것이 가능하다. 단지 예로서, 사전 충전 페이즈 동안, 프로그래밍 페이즈가 시작될 때, 적어도 50%의 셀이 로직 값 "1"로 프로그래밍되는 것을 달성하기 위해 비트 플립이 사용된다.
달리 말해서, 프로그래밍된 셀의 분포가 로직 값 "0"에서 프로그래밍된 셀의 30%를 나타내는 경우, 이때, 비트 플립을 사용하면 반대 로직 값 "1"로 프로그래밍된 메모리 셀의 백분율이 70%라는 표시를 획득하는 것이 가능하다.
이 해결책은 특히 워드 라인 드롭(즉, IR 드롭)의 존재 시 적합하며, 더 빠른 프로그래밍과 더 적은 에너지/비트를 허용한다.
그러나, 비트 플립 인코더를 통한 이 제1 통과는 선택적이며 물리적 구현에 따라, 그리고, 셀 신뢰성을 위해 선호되는 경우에 선택될 수 있음에 유의해야 한다.
이 시점에서, 가능한 BF 조작 후 기록 및 저장된 데이터로부터 프로그래밍된 로직 값 "1"의 수를 카운트하고 이 값을 ECC 비트(들)를 포함하는 카운터 메모리 부분에 신뢰성 있게 기록할 수 있으며, 예를 들어, 보호된 이중 셀(데이터/데이터#)로 값을 저장한다. 따라서, 본 출원에 개시된 기술은 특정 로직 값, 예를 들어 로직 값 "1"로 프로그래밍된 셀의 수에 대응하는 값을 연관된 ECC 비트(들)와 함께 신뢰할 수 있는 카운터에 저장하는 것을 제안한다.
대안적으로, 코드워드가 프로그래밍된 로직 값 "1" 및 "0"의 완전한 짝수를 포함해야 하는 경우 BF 조작을 사용하여 균형 50-50% + 균형 ECC 코딩을 사용할 수 있다. 이러한 경우 카운터 셀은 엄격하게 필요하지 않으며 다운로드가 필요하지 않지만(WIP), 그러나 이 대안은 일반적으로 더 큰 초기 BF 조작을 필요로 한다.
이 시점에서, 코드워드의 모든 비트(그 초기 상태에 무관함)가 기록되고, 따라서, 등사용량(iso-usage) 코드워드를 획득한다.
후속 감지 페이즈 동안, 메인 코드워드에 대한 다른 동작(예를 들어, 누설 보상)을 수행하면서, 바이어싱 전압의 빠른 램프를 적용하고 카운터 셀을 다운로드하여 카운터의 내용을 먼저 판독하도록 결정되었다. 이 판독 페이즈는 카운터에 저장된 정보를 먼저 획득할 수 있게 한다.
다른 데이터 셀은 그에 따라 그리고 카운터의 판독 동작과 동시에 바이어싱되고; 그래서, 메모리 어레이의 데이터 비트는 카운터의 전압 램프 동안 바이어싱된다. 또한, 차동 카운터 구조로 인해 다른 매우 빠른 램프의 적용이 가능하다.
이제, 데이터 메모리 셀에서 메인 램프 업을 시작하고 카운터에 기록된 낮은 Vth(즉, 로직 값 "1")로 프로그래밍된 셀의 목표 수까지 정확하게 카운팅한 다음 판독 페이즈를 중지한다.
셀이 트리거될 때마다, 이는 자동으로 턴 오프되어 IR 드롭을 감소시키는 반면, 동시에 상기 로직 값을 갖는 셀의 수에 대응하는 값을 포함하는 카운터가 감분된다.
따라서, 본 개시의 결정론적 카운터 기반 감지 증폭기 방법을 요약하면, 다음 단계 또는 페이즈를 포함한다고 말할 수 있다:
- 메모리 셀 어레이와 연관된 카운터에 상기 어레이에 저장된 데이터 비트의 미리 결정된 로직 값을 갖는 비트 수의 값을 저장하는 단계;
- 상기 미리 결정된 로직 값을 갖는 비트의 수에 대응하는 내용 또는 값을 상기 카운터로부터 판독하는 단계;
- 바이어싱 전압의 램프를 인가함으로써 메모리 셀 어레이에 저장된 데이터를 판독하는 단계;
- 데이터 판독 페이즈 동안 상기 미리 결정된 로직 값을 갖는 비트의 수를 카운팅하는 단계;
- 상기 미리 결정된 로직 값을 갖는 비트의 수가 상기 카운터에 저장된 값(예를 들어, 그 내용)과 같을 때 데이터 판독 페이즈를 중지하는 단계.
카운터의 저장 페이즈는 먼저 비트 플립 페이즈를 사용하여 미리 결정된 로직 값을 갖는 비트 수를 스위칭하여 해당 로직 값을 갖는 데이터 비트의 50% 이상의 값을 획득하는 것을 포함한다.
또한, 때때로 제1 판독 페이즈일 수 있는 카운터 판독 페이즈는 메모리 셀 어레이의 데이터 비트 부분의 사전 충전 또는 라인 누설 보상 페이즈를 시작하는 동안 상기 카운터에 대한 빠른 바이어싱 전압 램프로 수행된다.
본 개시는 또한 메모리 셀의 적어도 하나 이상의 어레이 및 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 컨트롤러를 포함하는 메모리 디바이스에 관한 것으로, 이는
- 조작된 저장된 데이터를 로직 값의 원하는 비트 수까지 인코딩하기 위해 메모리 어레이의 모든 코드워드에 대한 비트 플립 셀 세트를 포함한다.
비트 플립 셀은 3D 크로스 포인트 셀 투표 방식 또는 예를 들어, 보호된 이중 셀(BF/BF#)로 비트 플립 값을 저장하는 ECC 비트(들)를 갖는 차동 3D 크로스 포인트 셀에 의해 보호된다.
또한, 메모리 디바이스는 동일한 로직 값을 갖는 코드워드의 비트에 대응하는 수를 기록하는 각각의 코드워드에 대한 카운터를 더 포함한다.
본 개시의 카운터 기반 감지 증폭기 방법의 특징 및 이점이 다음 단락에서 상세히 설명될 것이지만; 그러나, 전체 개시의 더 나은 이해를 위해 판독 기술이 적용되는 메모리 디바이스의 물리적 구조를 먼저 설명하는 것이 적절하다. 이는 먼저 도 1 및 도 2를 참조하여 이루어질 것이다.
알려진 바와 같이, 일부 경우에 메모리 셀은 특히 통계적 프로세스 변동, 사이클링 이벤트(예를 들어, 메모리 셀에 대한 판독 또는 기록 동작) 또는 드리프트(예를 들어, 칼코게나이드 합금의 저항 변화)를 비롯한 다양한 요인으로부터 유래할 수 있는, 균일하지 않은, 가변적인 전기적 특성을 나타낸다. 단, 드리프트 때문에 판독 페이즈 동안 사용되는 바이어싱 전압의 전압 값을 증가시켜야 한다. 아마도, 본 개시에서 채택된 기술은 VDM 값을 감소시키는 것을 허용하고 결과적으로 판독 방해 내성을 개선시킨다.
본 개시의 메모리 셀에 대한 카운터 기반 감지 증폭기 방법은 메모리 셀에 인가된 판독 전압에 응답하여 활성화된 메모리 셀의 수를 추적하여 사용자 데이터(예를 들어, 코드워드, 페이지)의 세트의 판독을 수행하는 신뢰적이고 강건한 판독 기술을 제공할 수 있다. 일부 경우에, 카운터 기반 판독 알고리즘은 사용자 데이터를 판독하는 동안 제1 로직 상태와 연관된 메모리 셀이 고려되었는지 여부를 결정하기 위해 미리 결정된 수를 사용할 수 있다. 또한, 카운터 기반 판독 알고리즘은 사용자 데이터를 판독하는 동안 제1 로직 상태와 연관된 메모리 셀의 총 수를 결정할 수 있다.
일부 양태에서, 카운터 기반 판독 알고리즘 기술은 메모리 디바이스에 존재할 수 있는 판독 기준 메모리 셀의 개별 세트를 감소시키거나 제거한다. 판독 기준 메모리 셀은 특히 제조 프로세스 단계 동안의 상이한 프로세스 조건(예를 들어, 플라즈마 밀도의 균일하지 않은 로딩 패턴), 다양한 사이클링 이벤트와 같은 다양한 이유로 인해 사용자 데이터가 저장되는 대부분의 메모리 셀과 공통된 전기적 특성을 소유하지 않을 수 있다. 따라서, 판독 기준 메모리 셀의 개별 세트는 판독 동작 동안 신뢰할 수 있는 참조 방식을 제공하지 않을 수 있다.
본 개시의 카운터 기반 판독 알고리즘 기술은 인코딩된 사용자 데이터를 메모리 셀에 저장하기 전에 주어진 로직 상태(예를 들어, 로직 상태 1)를 갖도록 인코딩된 사용자 데이터의 미리 결정된 비트 수를 설정하기 위해 사용자 데이터에 적용하는 인코딩 방식을 포함할 수 있다. 인코딩 방식은 인코딩 프로세스 동안 사용자 데이터에 다수의 추가 비트(패리티 비트라고도 지칭될 수 있음)를 추가하는 것을 포함할 수 있다. 일부 실시예에서, 카운터 기반 판독 알고리즘은 사용자 데이터를 저장할 때 메모리 셀 내의 주어진 로직 상태(예를 들어, 로직 상태 1)를 갖는 사용자 데이터의 총 비트 수에 대응하는 카운팅 정보를 저장하는 상이한 인코딩 방식을 사용할 수 있다. 일부 경우에, 카운팅 정보는 주어진 로직 상태를 갖는 사용자 데이터의 총 비트 수를 나타내는 이진수로 저장될 수 있다. 다른 경우에, 카운팅 정보는 주어진 가중치(예를 들어, 20%, 30%, 50%(즉, 카운팅 정보를 저장하는 메모리 셀의 절반이 주어진 로직 상태를 가짐), 75%)의 가중치 패턴을 갖도록 인코딩될 수 있다.
일부 양태에서, 메모리 디바이스는 사용자 데이터를 저장하기 위해 3D XPointTM 메모리와 같은 3D 아키텍처로 배열된 PCM 셀의 어레이를 포함할 수 있다. 3D XPointTM 아키텍처의 PCM 셀(3DXP 메모리 셀이라고도 지칭될 수 있음)은 제1 임계 전압 세트와 연관된 제1 로직 상태(예를 들어, 로직 상태 1) 또는 임계 전압의 제2 세트와 연관된 제2 로직 상태(예를 들어, 0의 로직 상태)를 나타낼 수 있다. 일부 실시예에서, 1의 로직 상태(예를 들어, SET 셀 또는 비트로도 지칭될 수 있는 PCM 셀의 SET 상태)은 0의 로직 상태(예를 들어, RESET 셀 또는 비트로도 지칭될 수 있는 PCM 셀의 RESET 상태)와 연관된 임계 전압 세트보다 더 낮은 임계 전압 세트에 대응한다.
카운터 기반 판독 알고리즘 기술은 인코딩된 사용자 데이터를 함유하는 메모리 셀 그룹을 활성화하도록 구성된 메모리 어레이에 전압(예를 들어, 판독 전압)을 인가하는 것을 포함할 수 있다. 전압은 일정한 변화율로 시간의 함수로 증가할 수 있다. 일부 경우에, 판독 전압은 제1 기간 동안 제1 전압이 인가된 후 제2 기간 동안 제2 상이한 전압이 인가되도록 단조적으로 증가하는 계단 형상을 갖는다. 인가된 판독 전압은 인코딩된 사용자 데이터를 저장하는 메모리 셀 그룹을 활성화함으로써 일련의 스위칭 이벤트를 개시할 수 있다. 스위칭 이벤트는 메모리 셀 양단에 인가된 전압이 그 임계 전압을 초과할 때 메모리 셀이 턴 온(turn on)(예를 들어, 상당한 양의 전류를 전도함)되는 것에 기인할 수 있다. 카운터 기반 판독 알고리즘 기술은 판독 전압에 응답하여 턴 온되는(예를 들어, 활성화되는) 메모리 셀의 수를 추적할 수 있다.
사용자 데이터가 제1 로직 상태(예를 들어, 로직 상태 1)를 갖도록 미리 결정된 수의 메모리 셀로 인코딩되었을 때, 카운터 기반 판독 알고리즘 기술은 활성화된 메모리 셀의 수를 메모리 디바이스에 저장된 미리 결정된 수와 비교할 수 있다. 활성화된 메모리 셀의 수가 미리 결정된 수보다 더 적을 때 카운터 기반 판독 알고리즘 기술은 (예를 들어, 활성화된 메모리 셀의 수가 미리 결정된 수와 일치할 때까지) 활성화된 추가 메모리 셀을 추적하면서 메모리 어레이에 판독 전압을 계속 인가할(예를 들어, 증가시킬) 수 있다. 활성화된 메모리 셀의 수가 미리 결정된 수와 일치하는 경우, 카운터 기반 판독 알고리즘은 메모리 어레이에 대한 판독 전압 인가를 중지하고 인코딩된 사용자 데이터의 모든 활성화된 메모리 셀이 제1 로직 상태를 갖는 것으로 결정할 수 있다. 또한, 카운터 기반 판독 알고리즘은 인코딩된 사용자 데이터의 나머지 메모리 셀(예를 들어, 활성화된 메모리 셀의 수가 미리 결정된 수와 일치할 때 비활성 메모리 셀)이 제2 로직 상태(예를 들어, 로직 상태 0)를 갖는 것으로 결정할 수 있다.
사용자 데이터가 제1 로직 상태(예를 들어, 로직 상태 1)를 갖는 사용자 데이터의 총 비트 수에 대응하는 카운팅 정보를 저장하는 메모리 셀의 추가 세트로 인코딩되었을 때, 카운터 기반 판독 알고리즘 기술은 총 수를 식별하기 위해 추가 메모리 셀 세트로부터 카운팅 정보를 판독할 수 있다. 총 수는 판독 전압에 응답하여 사용자 데이터의 활성화된 메모리 셀의 수를 추적하는 동안 판독 전압이 계속 또는 중지될 수 있는지에 대한 기준을 제공하기 위해 메모리 디바이스에 저장될 수 있다. 활성화된 메모리 셀의 수가 총 수보다 더 적을 때 카운터 기반 판독 알고리즘 기술은 활성화된 메모리 셀의 수가 총 수와 일치할 때까지 활성화된 추가 메모리 셀을 추적하면서 메모리 어레이에 판독 전압을 계속 인가할(예를 들어, 증가시킬) 수 있다. 사용자 데이터의 활성화된 메모리 셀의 수가 총 수와 일치하면 카운터 기반 판독 알고리즘 기술은 메모리 어레이에 판독 전압을 인가하는 것을 중지하고 사용자 데이터의 모든 활성화된 메모리 셀이 제1 로직 상태(예를 들어, PCM 셀의 SET 상태)를 갖는 것으로 결정할 수 있다. 추가적으로, 카운터 기반 판독 알고리즘 기술은 사용자 데이터의 나머지 메모리 셀(예를 들어, 활성화된 메모리 셀의 수가 미리 결정된 수와 일치할 때 비활성 메모리 셀)이 제2 로직 상태(예를 들어, RESET 상태 PCM 셀)를 갖는 것으로 결정할 수 있다.
일부 경우에, 카운팅 정보는 메모리 셀의 추가 세트에 저장되기 전에 고정된 수의 제1 로직 상태(예를 들어, 로직 상태 1)의 비트를 갖도록 인코딩된다. 예를 들어, 메모리 셀의 추가 세트의 절반은 카운트 정보를 나타내도록 1의 로직 상태를 갖도록 구성될 수 있다. 판독 동작 동안, 카운터 기반 판독 알고리즘은 로직 상태 1을 갖는 추가 메모리 셀 세트의 모든 메모리 셀이 고려되는 지를 결정하기 위해 추가 메모리 셀 세트의 활성화된 메모리 셀의 수를 추적할 수 있다. 추가 메모리 셀 세트의 모든 메모리 셀이 고려(예를 들어, 활성화)되었을 때, 카운터 기반 판독 알고리즘 기술은 메모리 디바이스에 플래그를 설정하고 추가 메모리 셀 세트로부터 카운팅 정보를 추출할 수 있다. 카운팅 정보는 메모리 디바이스의 레지스터에 저장될 수 있고 플래그는 레지스터의 카운팅 정보가 제1 로직 상태(예를 들어, 로직 상태 1)를 나타내는 사용자 데이터의 총 비트 수에 대한 유효한 표현(예를 들어, 바이너리 형식)임을 나타낼 수 있다. 이때, 레지스터의 카운팅 정보가 앞서 설명한 유사한 방식으로 사용자 데이터에서 활성화된 메모리 셀의 수를 추적하는 데 사용될 수 있다. 일부 실시예에서, 사용자 데이터를 저장하는 메모리 셀과 비교하여 메모리 셀의 추가 세트에 상이한 판독 전압이 인가될 수 있다. 추가적으로 또는 대안적으로, 단일 판독 전압이 추가 세트의 메모리 셀 및 사용자 데이터를 저장하는 메모리 셀 둘 모두에 인가될 수 있다.
위에서 소개된 개시의 특징이 메모리 디바이스의 메모리 어레이와 관련하여 아래에서 더 설명된다. 그 다음, 일부 실시예(예를 들어, PCM 셀 또는 3DXP 메모리 셀을 포함하는 메모리 어레이)에 따른 메모리 셀에 대한 카운터 기반 감지 증폭기 방법의 다양한 특징을 예시하기 위해 특정한 비제한적인 예가 설명된다. 본 개시의 이들 및 다른 특징은 메모리 셀에 대한 카운터 기반 감지 증폭기 방법과 관련된 장치 도면, 시스템 도면 및 흐름도를 참조하여 추가로 예시되고 설명된다. 그러나, 본 기술 분야의 숙련자가 이해할 수 있는 바와 같이, 다른 대안 및 상이한 변형이 고려될 수 있고 본 개시의 범위 내에 속할 수 있다.
도 1은 본 개시의 실시예에 따른 예시적인 메모리 디바이스(100)를 예시한다. 메모리 디바이스(100)는 또한 전자 메모리 장치로 지칭될 수 있다. 도 1은 메모리 디바이스(100)의 다양한 컴포넌트 및 특징의 예시적인 표현이다. 이와 같이, 메모리 디바이스(100)의 컴포넌트 및 특징은 기능적 상호 관계를 예시하기 위해 도시되어 있으며, 메모리 디바이스(100) 내의 그 실제 물리적 위치를 나타내는 것이 아닐 수 있다는 것을 이해하여야 한다. 도 1의 예시적인 예에서, 메모리 디바이스(100)는 3D 메모리 어레이(102)를 포함한다. 3D 메모리 어레이(102)는 다양한 상태를 저장하도록 프로그래밍될 수 있는 메모리 셀(105)을 포함한다. 일부 실시예에서, 각각의 메모리 셀(105)은 로직 0 및 로직 1로 표시된 2개의 상태를 저장하도록 프로그래밍될 수 있다. 일부 실시예에서, 메모리 셀(105)은 2개보다 더 많은 로직 상태를 저장하도록 구성될 수 있다. 메모리 셀(105)은 일부 실시예에서 PCM 셀(예를 들어, 3DXP 메모리 셀)을 포함할 수 있다. 도 1에 포함된 일부 요소에는 숫자 표시가 표지되어 있지만, 묘사된 특징의 가시성과 명확성을 증가시키기 위한 노력의 일환으로 다른 대응 요소는 표지되어 있지 않으며, 그래도, 이들은 동일하거나 유사한 것으로 이해될 것이다.
3D 메모리 어레이(102)는 서로 인접하여(예를 들어, 서로 상하로 또는 옆에) 형성된 2개 이상의 2차원(2D) 메모리 어레이를 포함할 수 있다. 이는 2D 어레이와 비교하여 단일 다이 또는 기판 상에 배치되거나 생성될 수 있는 메모리 셀(105)의 수를 증가시킬 수 있으며, 이는 차례로 생산 비용을 감소시키거나 메모리 디바이스의 성능을 증가시키거나 양자 모두를 달성할 수 있다. 도 1에 묘사된 예에 기초하여, 3D 메모리 어레이(102)는 2개의 레벨의 메모리 셀(105)을 포함하지만; 그러나, 레벨의 수는 2개로 제한되지 않을 수 있다. 각각의 레벨은 메모리 셀(105)이 각각의 레벨에 걸쳐 서로 정렬(정확하게, 중첩 또는 대략적으로)될 수 있도록 정렬되거나 위치되어 메모리 셀 스택(145)을 형성할 수 있다. 일부 경우에, 메모리 셀 스택(145)은 다른 것의 상단에 놓인 PCM 셀(예를 들어, 3DXP 메모리 셀)을 포함할 수 있다.
일부 실시예에서, 메모리 셀(105)의 각각의 행은 액세스 라인(110)에 연결되고, 메모리 셀(105)의 각각의 열은 비트 라인(115)에 연결된다. 액세스 라인(110) 및 비트 라인(115)은 서로에 대해 실질적으로 수직일 수 있고 메모리 셀 어레이를 생성할 수 있다. 도 1에 도시된 바와 같이, 메모리 셀 스택(145)의 2개의 메모리 셀(105)은 비트 라인(115)과 같은 공통 전도성 라인을 공유할 수 있다. 즉, 비트 라인(115)은 상위 메모리 셀(105)의 하단 전극 및 하위 메모리 셀(105)의 상단 전극과 전자 통신할 수 있다. 다른 실시예에서, 메모리 셀(105)(예를 들어, 상위 메모리 셀, 하위 메모리 셀) 각각은 그 자신의 비트 라인으로 구성될 수 있다. 이러한 경우, 메모리 셀은 절연층에 의해 분리될 수 있다. 다른 구성이 가능할 수 있으며, 예를 들어 제3 층은 액세스 라인(110)을 하위 층과 공유할 수 있다. 일반적으로, 하나의 메모리 셀(105)은 액세스 라인(110) 및 비트 라인(115)과 같은 2개의 전도성 라인의 교차점에 위치할 수 있다. 이 교차점은 메모리 셀의 어드레스라고 지칭될 수 있다. 타겟 메모리 셀(105)은 활성화된 액세스 라인(110)과 비트 라인(115)의 교차점에 위치한 메모리 셀(105)일 수 있고; 즉, 액세스 라인(110)과 비트 라인(115)은 그의 교차점에서 메모리 셀(105)을 판독하거나 기록하기 위해 활성화될 수 있다. 동일한 액세스 라인(110) 또는 비트 라인(115)과 전자 통신하는(예를 들어, 연결된) 다른 메모리 셀(105)은 비표적 메모리 셀(105)로 지칭될 수 있다.
앞서 설명된 바와 같이, 전극은 메모리 셀(105) 및 액세스 라인(110) 또는 비트 라인(115)에 결합될 수 있다. 용어 전극은 전기 전도체를 지칭할 수 있고, 일부 경우에 메모리 셀(105)에 대한 전기 접촉 부분으로서 사용될 수 있다. 전극은 메모리 디바이스(100)의 요소 또는 컴포넌트 사이에 전도성 경로를 제공하는 트레이스, 와이어, 전도성 라인, 전도성 층 등을 포함할 수 있다. 일부 실시예에서, 메모리 셀(105)은 제1 전극과 제2 전극 사이에 위치하는 칼코게나이드 합금을 포함할 수 있다. 제1 전극의 일 측면은 액세스 라인(110)에 결합되고 제1 전극의 다른 측면은 칼코게나이드 합금에 결합될 수 있다. 또한, 제2 전극의 일 측면은 비트 라인(115)에 결합되고 제2 전극의 다른 측면은 칼코게나이드 합금에 결합될 수 있다. 제1 전극 및 제2 전극은 동일한 재료(예를 들어, 탄소)이거나 상이할 수 있다. 다른 실시예에서, 메모리 셀(105)은 도 2에 묘사된 바와 같이 칼코게나이드 합금을 2개의 부분으로 분리하기 위한 추가 전극을 포함할 수 있다. 칼코게나이드 합금의 제1 부분은 칼코게나이드 합금의 제2 부분과 상이한 조성을 가질 수 있다. 일부 실시예에서, 칼코게나이드 합금의 제1 부분은 칼코게나이드 합금의 제2 부분과 상이한 기능을 가질 수 있다. 추가 전극은 제1 전극 및/또는 제2 전극과 동일한 재료(예를 들어, 탄소)일 수 있거나 상이할 수 있다.
판독 및 기록과 같은 동작은 액세스 라인(110) 및 디지트 라인(115)을 여기하거나 선택함으로써 메모리 셀(105)에서 수행될 수 있다. 일부 실시예에서, 액세스 라인(110)은 또한 워드 라인(110)으로 알려져 있을 수 있고, 비트 라인(115)은 또한 디지트 라인(115)으로 알려져 있을 수 있다. 워드 라인과 비트 라인 또는 그 유사어에 대한 언급은 이해 또는 동작의 손실 없이 상호 교환 가능하다. 워드 라인(110) 또는 디지트 라인(115)을 여기 또는 선택하는 것은 각각의 라인에 전압을 인가하는 것을 포함할 수 있다. 워드 라인(110) 및 디지트 라인(115)은 금속(예를 들어, 구리(Cu), 알루미늄(Al), 금(Au), 텅스텐(W), 티타늄(Ti)), 금속 합금, 탄소, 전도성으로 도핑된 반도체, 또는 다른 전도성 재료, 합금, 화합물 등 같은 전도성 재료로 이루어질 수 있다.
일부 아키텍처에서, 메모리 셀(105)의 로직 저장 디바이스(예를 들어, 커패시터, 저항기)는 선택 컴포넌트에 의해 디지트 라인(115)으로부터 전기적으로 절연될 수 있다. 워드 라인(110)은 선택 컴포넌트에 연결될 수 있고, 선택 컴포넌트를 제어할 수 있다. 예를 들어, 선택 컴포넌트는 트랜지스터일 수 있고 워드 라인(110)은 트랜지스터의 게이트에 연결될 수 있다. 워드 라인(110)을 여기하는 것은 메모리 셀(105)의 로직 저장 디바이스와 그에 대응하는 디지트 라인(115) 사이의 전기적 연결 또는 폐회로를 초래한다. 그 다음, 디지트 라인(115)은 메모리 셀(105)을 판독하거나 기록하기 위해 액세스될 수 있다. 메모리 셀(105)을 선택할 때, 결과적인 신호는 저장된 로직 상태를 결정하기 위해 사용될 수 있다. 일부 경우에, 제1 로직 상태는 전류가 없거나 무시할 수 있을 정도로 작은 전류에 대응할 수 있는 반면, 제2 로직 상태는 유한한 양의 전류에 대응할 수 있다. 일부 경우에, 메모리 셀(105)은 3DXP 메모리 셀 또는 자체 선택 메모리(SSM) 셀을 포함할 수 있으며, 양자 모두는 2개의 단자를 갖고 별개의 선택 컴포넌트를 필요로 하지 않을 수 있다. 이와 같이, 3DXP 메모리 셀 또는 SSM 셀의 한 단자는 워드 라인(110)에 전기적으로 연결될 수 있고, 3DXP 메모리 셀 또는 SSM 셀의 다른 단자는 디지트 라인(115)에 전기적으로 연결될 수 있다.
메모리 셀(105)에 대한 액세스는 행 디코더(120) 및 열 디코더(130)를 통해 제어될 수 있다. 예를 들어, 행 디코더(120)는 메모리 컨트롤러(140)로부터 행 어드레스를 수신하고, 수신된 행 어드레스에 기초하여 적절한 워드 라인(110)을 여기할 수 있다. 유사하게, 열 디코더(130)는 메모리 컨트롤러(140)로부터 열 어드레스를 수신하고 적절한 디지트 라인(115)을 여기할 수 있다. 예를 들어, 3D 메모리 어레이(102)는 WL_B1(또는 WL_T1) 내지 WL_BM(또는 WL_TM)으로 표지된 다수의 워드 라인(110), 및 DL_1 내지 DL_N으로 표지된 다수의 디지트 라인(115)을 포함할 수 있으며, 여기서, M과 N은 어레이 크기에 따라 달라진다. 따라서, 워드 라인(110) 및 디지트 라인(115), 예를 들어, WL_B2 및 DL_3을 여기함으로써, 그의 교차점에 있는 메모리 셀(105)이 액세스될 수 있다.
액세스시, 메모리 셀(105)의 저장된 상태를 결정하기 위해 감지 컴포넌트(125)에 의해 메모리 셀(105)이 판독되거나 감지될 수 있다. 예를 들어, 전압이 (대응하는 워드 라인(110) 및 비트 라인(115)을 사용하여) 메모리 셀(105)에 인가될 수 있고 결과적인 전류의 존재는 인가된 전압 및 메모리 셀(105)의 임계 전압에 따라 달라질 수 있다. 일부 경우에, 2개 이상의 전압이 인가될 수 있다. 추가적으로, 인가된 전압이 전류 유동을 초래하지 않는다면, 전류가 감지 컴포넌트(125)에 의해 검출될 때까지 다른 전압이 인가될 수 있다. 전류 유동을 초래한 전압을 평가함으로써, 메모리 셀(105)의 저장된 로직 상태가 결정될 수 있다. 일부 경우에, 전압은 전류 유동이 검출될 때까지(예를 들어, 메모리 셀(105) 턴 온, 스위치 온, 전류 전도 또는 활성화될 때까지) 크기가 증가될 수 있다. 다른 경우에, 전류가 검출될 때까지 미리 결정된 전압을 순차적으로 인가할 수 있다. 마찬가지로, 전류가 메모리 셀(105)에 인가될 수 있고 전류를 생성하기 위한 전압의 크기는 메모리 셀(105)의 전기 저항 또는 임계 전압에 따라 달라질 수 있다.
감지 컴포넌트(125)는 신호의 차이를 검출 및 증폭하기 위해 다양한 트랜지스터 또는 증폭기를 포함할 수 있으며, 이는 래칭이라고 지칭될 수 있다. 그 다음, 메모리 셀(105)의 검출된 로직 상태는 출력(135)으로서 열 디코더(130)를 통해 출력될 수 있다. 일부 경우에, 감지 컴포넌트(125)는 열 디코더(130) 또는 행 디코더(120)의 일부일 수 있다. 또는, 감지 컴포넌트(125)는 열 디코더(130) 또는 행 디코더(120)에 연결되거나 전자 통신할 수 있다. 도 1은 또한 감지 컴포넌트(125-a)를 배열하는 대안적인 옵션을 (점선 상자로) 도시한다. 본 기술 분야의 숙련자는 감지 컴포넌트가 그 기능적 목적을 잃지 않고 열 디코더 또는 행 디코더 중 어느 쪽과든 연관될 수 있다는 것을 이해할 것이다.
메모리 셀(105)은 관련 워드 라인(110) 및 디지트 라인(115)을 유사하게 여기함으로써 설정 또는 기록될 수 있고, 적어도 하나의 로직 값이 메모리 셀(105)에 저장될 수 있다. 열 디코더(130) 또는 행 디코더(120)는 하나 이상의 메모리 셀(105)에 기록될 데이터, 예를 들어 입력/출력(135)을 수용할 수 있다.
일부 메모리 아키텍처에서, 메모리 셀(105)에 액세스하는 것은 저장된 로직 상태를 저하시키거나 파괴할 수 있고, 원래의 로직 상태를 메모리 셀(105)로 반환하기 위해 재기록 또는 리프레시 동작이 수행될 수 있다. 예를 들어, DRAM에서 커패시터는 감지 동작 동안 부분적으로 또는 완전히 방전되어 저장된 로직 상태를 손상시킬 수 있다. 따라서, 로직 상태는 감지 동작 후에 재기록될 수 있다. 추가적으로, 단일 워드 라인(110)을 여기하는 것은 행의 모든 메모리 셀(105)의 방전을 초래할 수 있고; 따라서, 행의 여러 또는 모든 메모리 셀(105)이 재기록될 필요가 있을 수 있다. 그러나, SSM, PCM(예를 들어, 3DXP 메모리), FeRAM 또는 3D NAND 메모리와 같은 비휘발성 메모리에서, 메모리 셀(105)에 액세스하는 것은 로직 상태를 파괴하지 않을 수 있으며, 따라서, 메모리 셀(105)은 액세스 이후 재기록이 필요하지 않을 수 있다.
메모리 컨트롤러(140)는 다양한 컴포넌트, 예를 들어, 행 디코더(120), 열 디코더(130) 및 감지 컴포넌트(125)를 통해 메모리 셀(105)의 동작(예를 들어, 판독, 기록, 재기록, 리프레시, 방전)을 제어할 수 있다. 일부 경우에, 행 디코더(120), 열 디코더(130) 및 감지 컴포넌트(125) 중 하나 이상이 메모리 컨트롤러(140)와 함께 배치될 수 있다. 메모리 컨트롤러(140)는 원하는 워드 라인(110) 및 디지트 라인(115)을 여기하기 위해 행 및 열 어드레스 신호를 생성할 수 있다. 메모리 컨트롤러(140)는 또한 메모리 디바이스(100)의 동작 동안 사용되는 다양한 전압 또는 전류를 생성 및 제어할 수 있다.
메모리 컨트롤러(140)는 입력/출력(135)을 통해 사용자 데이터를 수신할 수 있다. 일부 실시예에서, 메모리 컨트롤러(140)는 사용자 데이터를 메모리 셀(105)에 저장하기 전에 조건을 만족하도록 사용자 데이터를 인코딩한다. 인코딩된 사용자 데이터가 주어진 로직 상태(예를 들어, 로직 상태 1)를 나타내는 미리 결정된 비트 수를 가질 때 조건이 충족될 수 있다. 예로서, 인코딩된 사용자 데이터는 인코딩된 사용자 데이터를 저장하는 메모리 셀의 50%가 로직 상태 1을 나타내는 반면, 메모리 셀의 다른 50%가 로직 상태 0을 나타내도록 구성될 수 있다. 인코딩 프로세스 동안, 메모리 컨트롤러(140)는 주어진 로직 상태를 나타내도록 미리 결정된 수의 메모리 셀을 설정하기 위해 사용자 데이터에 특정 수의 비트(예를 들어, 패리티 비트)를 추가할 수 있다. 패리티 비트를 추가한 결과, 인코딩된 사용자 데이터는 사용자 데이터보다 더 많은 비트를 가질 수 있다. 메모리 컨트롤러(140)는 레지스터에 미리 결정된 수를 저장할 수 있다. 일부 실시예에서, 로직 상태 1을 나타내는 메모리 셀의 다른 백분율 값(예를 들어, 40%, 60%, 75%)이 인코딩 프로세스 동안 사용될 수 있다.
메모리 컨트롤러(140)는 메모리 어레이(102)에 판독 전압을 인가하여 주어진 로직 상태를 나타내는 미리 결정된 비트 수를 갖는 인코딩된 사용자 데이터를 함유하는 메모리 셀(105)의 그룹을 활성화할 수 있다. 판독 전압은 일정한 증가율 또는 단조적으로 증가하는 계단 형상을 가질 수 있다. 인가된 판독 전압은 메모리 셀(105) 양단에 인가된 판독 전압이 그 임계 전압을 초과할 때, 판독 전압을 인가한 결과로서 인코딩된 사용자 데이터를 함유하는 메모리 셀(105)의 부분집합을 활성화할 수 있다. 메모리 컨트롤러(140)는 활성화된 메모리 셀(105)의 수를 추적하고 그 수를 레지스터에 저장된 미리 결정된 수와 비교할 수 있다. 활성화된 메모리 셀(105)의 수가 미리 결정된 수와 일치할 때, 메모리 컨트롤러(140)는 주어진 로직 상태를 나타내는 모든 메모리 셀이 인코딩된 사용자 데이터를 함유하는 메모리 셀 그룹으로부터 고려되는 것으로 결정할 수 있고 판독 전압에 대한 인가를 중지할 수 있다. 후속적으로, 메모리 컨트롤러(140)는 활성화된 모든 메모리 셀(105)이 주어진 로직 상태를 갖는 것으로 결정할 수 있다.
일반적으로, 본 출원에 설명된 인가 전압 또는 전류의 진폭, 형상, 극성, 및/또는 지속기간은 조절되거나 변경될 수 있고, 메모리 디바이스(100)를 동작하는 데 설명된 다양한 동작에 대해 상이할 수 있다. 더욱이, 메모리 어레이(102) 내의 하나의, 다수의 또는 모든 메모리 셀(105)이 동시에 액세스될 수 있고; 예를 들어, 메모리 어레이(102)의 다수 또는 모든 셀은 모든 메모리 셀(105) 또는 메모리 셀 그룹(105)이 단일 로직 상태로 설정되는 리셋 동작 동안 동시에 액세스될 수 있다.
도 2는 본 개시의 실시예에 따른 메모리 셀에 대한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 어레이(202)의 예를 예시한다. 메모리 어레이(202)는 도 1을 참조하여 설명된 메모리 어레이(102)의 일부의 예일 수 있다. 도 2에 묘사된 바와 같이, 메모리 어레이(202)는 메모리 셀(105-a)을 구성하기 위한 다수의 재료를 포함한다. 각각의 메모리 셀(105-a)은 메모리 셀 스택(예를 들어, 메모리 셀 스택(145))을 생성하기 위해 수직 방향(예를 들어, 기판에 수직)으로 적층된다. 메모리 셀(105-a)은 도 1을 참조하여 설명된 메모리 셀(105)의 예일 수 있다. 따라서, 메모리 어레이(202)는 3D 메모리 어레이로 지칭될 수 있다. 메모리 어레이(202)의 아키텍처는 크로스 포인트 아키텍처로 지칭될 수 있다. 도 2에 포함된 일부 요소에는 숫자 표시가 표지되어 있지만, 묘사된 특징의 가시성과 명확성을 증가시키기 위한 노력의 일환으로 다른 대응 요소는 표지되어 있지 않으며, 그래도, 이들은 동일하거나 유사한 것으로 이해될 것이다.
메모리 어레이(202)는 또한 워드 라인(110-a) 및 비트 라인(115-a)을 포함하고, 이들은 도 1을 참조하여 설명된 워드 라인(110) 및 비트 라인(115)의 예일 수 있다. 도 2에 묘사된 워드 라인(110-a)과 비트 라인(115-a) 사이의 재료의 예시는 도 1의 메모리 셀(105)의 하위 부분을 나타낼 수 있다. 메모리 어레이(202)는 전극(205), 로직 저장 요소(210), 선택기 디바이스 요소(220), 및 기판(225)을 포함한다. 일부 예에서, 칼코게나이드 합금(도시되지 않음, 선택기 디바이스 요소(220), 로직 저장 요소(210), 및 전극(205-b)을 대체함)을 포함하는 단일 컴포넌트가 로직 저장 요소 및 선택기 디바이스 양자 모두로서 작용할 수 있다. 전극(205-a)은 비트 라인(115-a)과 전자 통신할 수 있고 전극(205-c)은 워드 라인(110-a)과 전자 통신할 수 있다.
빈 공간으로 묘사된 절연재는 전기적 및 열적 양자 모두로 절연될 수 있다. 앞서 설명한 바와 같이, PCM 기술에서, 메모리 셀(105-a)의 로직 저장 요소(210)의 전기 저항을 변화시킴으로써 다양한 로직 상태가 저장될 수 있고, 이는 차례로 메모리 셀(105-a)의 변화하는 임계 전압을 나타낸다. 일부 경우에, 다양한 로직 상태를 저장하는 것은 메모리 셀(105-a)을 통해 전류를 통과시키는 것, 메모리 셀(105-a)에서 로직 저장 요소(210)를 가열하는 것, 또는 메모리 셀(105-a)에서 로직 저장 요소(210)의 재료를 용융(예를 들어, 전체적으로 또는 부분적으로)하는 것을 포함한다. 임계 전압 변조와 같은 다른 저장 메커니즘이 칼코게나이드 기반 메모리에서 활용될 수 있다.
일부 경우에, 메모리 어레이(202)는 메모리 셀 스택의 어레이를 포함할 수 있고, 각각의 메모리 셀 스택은 다수의 메모리 셀(105-a)을 포함할 수 있다. 메모리 어레이(202)는 워드 라인(110-a)과 같은 전도성 재료의 스택을 형성함으로써 제조될 수 있으며, 여기서 각각의 전도성 재료는 그 사이의 전기 절연재에 의해 인접한 전도성 재료로부터 분리된다. 전기 절연재는 산화규소, 질화규소 또는 다른 전기 절연재와 같은 산화물 또는 질화물 재료를 포함할 수 있다. 이들 재료는 실리콘 웨이퍼, 또는 임의의 다른 반도체 또는 산화물 기판과 같은 기판(225) 위에 형성될 수 있다. 후속적으로, 각각의 메모리 셀(105-a)이 워드 라인(110-a) 및 비트 라인(115-a)과 결합될 수 있도록 워드 라인(110-a)과 비트 라인(115-a) 사이에 재료를 형성하기 위해 다양한 프로세스 단계가 이용될 수 있다.
선택기 디바이스 요소(220)는 전극(205-b)을 통해 로직 저장 요소(210)와 연결될 수 있다. 일부 예에서, 선택기 디바이스 요소(220) 및 로직 저장 요소(210)의 위치가 뒤집힐 수 있다. 선택기 디바이스 요소(220), 전극(205-b), 및 로직 저장 요소(210)를 포함하는 복합 스택은 전극(205-c)을 통해 워드 라인(110-a)에 연결되고 전극(205-a)을 통해 비트 라인(115-a)에 연결될 수 있다. 선택기 디바이스 요소(220)는 특정 메모리 셀(105-a)을 선택하는 것을 돕거나 표류 전류가 선택된 메모리 셀(105-a)에 인접한 비선택된 메모리 셀(105-a)을 통해 유동하는 것을 방지하는 것을 도울 수 있다. 선택기 디바이스 요소(220)는 다이오드와 같은 2단자 선택기 디바이스의 다른 유형들 중에서, 금속-절연체-금속(MIM) 접합, 오보닉 임계 스위치(OTS) 또는 금속-반도체-금속(MSM) 스위치와 같은 전기적으로 비선형 컴포넌트(예를 들어, 비-오믹 컴포넌트)를 포함할 수 있다. 일부 경우에, 선택기 디바이스 요소는 칼코게나이드 합금을 포함한다. 일부 예에서, 선택기 디바이스는 셀레늄(Se), 비소(As), 실리콘(Si) 및 게르마늄(Ge)의 합금을 포함한다.
앞서 설명된 바와 같이, 도 2의 메모리 셀(105-a)은 가변 저항을 갖는 재료를 포함할 수 있다. 가변 저항 재료는 예를 들어, 금속 산화물, 칼코게나이드 등을 포함하는 다양한 재료 시스템을 지칭할 수 있다. 칼코게나이드 재료는 황(S), 텔루르(Te) 또는 셀레늄(Se) 원소 중 적어도 하나를 포함하는 재료 또는 합금이다. 많은 칼코게나이드 합금이 가능할 수 있으며- 예를 들어, 게르마늄-안티몬-텔루르 합금(Ge-Sb-Te)은 칼코게나이드 재료이다. 여기에 명시적으로 언급되지 않은 다른 칼코게나이드 합금도 사용될 수 있다.
저저항 상태를 설정하기 위해, 메모리 셀(105-a)을 통해 전류를 통과시킴으로써 메모리 셀(105-a)이 가열될 수 있다. 유한한 저항을 갖는 재료를 통해 유동하는 전류에 의해 발생하는 가열은 줄(Joule) 또는 오믹(Ohmic) 가열이라고 지칭될 수 있다. 따라서, 줄 가열은 전극 또는 상 변화 재료의 전기 저항과 관련될 수 있다. 상 변화 재료를 상승된 온도(그러나 그 용융 온도 미만)로 가열하면 상 변화 재료의 결정화를 초래하여 저저항 상태를 형성할 수 있다. 일부 경우에, 메모리 셀(105-a)은 줄 가열 이외의 수단, 예를 들어 레이저를 사용하여 가열될 수 있다. 고저항 상태를 설정하기 위해 상 변화 재료는 예를 들어 줄 가열에 의해 그 용융 온도 이상으로 가열될 수 있다. 용융 재료의 비정질 구조는 인가된 전류를 갑자기 제거하여 상 변화 재료를 신속하게 냉각함으로써 급냉되거나 고정될 수 있다.
일부 경우에, 메모리 셀(105-a)은 다수의 사이클링 동작(예를 들어, 일련의 판독 또는 기록 동작) 후에 상이한 전기적 특성을 나타낼 수 있다. 예를 들어, 로직 상태 1을 저장하기 위한 동일한 프로그래밍 펄스(예를 들어, SET 프로그래밍 펄스)를 수신한 후, 로직 상태 1에 대응하는 메모리 셀(105-a)(예를 들어, PCM 셀)의 임계 전압은, 메모리 셀(105-a)이 방대한 수의 판독 또는 기록 동작을 통해 사이클링된 메모리 셀(105-a)과 비교하여 비교적 새 것인 경우(예를 들어, 작은 수의 판독 또는 기록 동작을 갖는 PCM 셀) 상이할 수 있다. 또한, 일부 경우에, 메모리 셀(105-a)(예를 들어, 로직 저장 요소(210))의 칼코게나이드 재료는 기록 동작 동안 칼코게나이드 재료의 프로그래밍(예를 들어, 결정화 또는 급냉) 후 그 저항의 변화(이는 또한 드리프트라고도 지칭될 수 있음)를 경험할 수 있다. 이러한 저항의 변화는 메모리 셀(105-a)의 임계 전압의 변화를 초래할 수 있고, 특정 기간이 경과한 후 메모리 셀(105-a)(예를 들어, PCM 셀)로부터 정보를 정확하게 판독하는 것을 방해할 수 있다. 일부 실시예에서, 변화량은 주위 온도의 함수일 수 있다.
카운터 기반 판독 알고리즘 기술은 메모리 셀(105-a)(예를 들어, PCM 셀)이 앞서 설명한 상이한 전기적 특성을 나타낼 때 강건한 판독 기술을 제공할 수 있다. 일부 실시예에서, 메모리 셀(105-a)은 수정된 사용자 데이터(또는 일부 경우에 원래 사용자 데이터) 및 이에 추가될 수 있는 다수의 패리티 비트를 포함하는 인코딩된 사용자 데이터를 저장하도록 구성될 수 있다. 일부 경우에, 메모리 셀(105-a)에 인코딩된 저장된 사용자 데이터는 로직 상태가 1인 미리 결정된 비트 수를 포함하도록 수정되었다. 로직 상태가 1인 비트의 수는 사용되는 인코딩 방식에 따라 상이할 수 있다. 일부 경우에, 로직 상태가 1인 비트의 수는 인코딩된 사용자 데이터를 함유하는 비트의 50%(또는 다른 백분율)일 수 있다. 일부 실시예에서, 메모리 셀(105-a)은 사용자 데이터를 저장하도록 구성될 수 있는 반면 메모리 셀(105-a)의 추가 세트는 카운팅 정보를 저장하도록 구성될 수 있다. 카운팅 정보는 로직 상태가 1인 사용자 데이터의 비트 수를 나타낼 수 있다. 일부 경우에, 카운팅 정보는 사용자 데이터가 판독 전에 로직 상태가 1인 사용자 데이터의 비트 수를 추출하기 위해 미리 판독될 수 있다. 추가적으로 또는 대안적으로, 카운팅 정보는 사용자 데이터가 판독되는 동안 결정될 수 있다. 카운터 기반 판독 알고리즘 기술은 로직 상태가 1인 정확한 수의 메모리 셀(105-a)을 제공하는 인코딩 방식을 이용하며, 이는 차례로 카운터 기반 판독 알고리즘 기술이 앞서 설명한 메모리 셀의 서로 다른 전기적 특성에 무관하게 사용자 데이터를 정확하게 판독할 수 있게 한다.
이제, 확장된 코드워크 조성에 대응하는 메모리 페이지의 개략도가 도시된 도 3의 예를 참조한다.
도 3은 자신의 패리티 비트(302)를 갖는 데이터 비트의 하나 이상의 코드워드(CW)를 포함하는 데이터 부분(300)을 포함하는 종래의 메모리 페이지의 예를 예시한다.
데이터 부분(300)과 패리티 비트(302)의 조합이 이 예에서 16 비트 코드워드로 취해진 전체 수정 가능한 코드워드를 형성한다고 고려할 수 있다.
메모리 페이지의 다른 부분은 패리티 보호와 관련된 카운터 셀의 그룹(304) 및 비트 플립(BF) 인코더(306)이다. 이 비트 플립은 K 비트를 포함할 수 있으며 코드워드에 첨부된다.
코드워드가 비교적 작은 데이터 부분(300)을 포함하는 경우, 이때, 카운터 비트는 비례적으로 높은 영향을 갖는다. 그러나, 데이터 비트가 클수록 대응 카운터는 작은 영향을 갖는다.
이제, 단지 특정 예로서, 코드워드(CW)(수정 후, 새로운 데이터와 병합 및 패리티 생성)가 다음 로직 값 시퀀스에 의해 형성되는 것을 가정해 본다:
0010011101001000
이 시퀀스는 BankReadWriteBuffer(BRWBuff)에 저장된다.
대응하는 BF 인코더(306)는 예를 들어 BF=0에 의해 주어지며, 따라서, 조합된 2 비트 차분 값(0, 1)이 획득된다. BF 인코더는 이중 셀 또는 이중 셀들에 중첩된 투표 방식으로 판독될 수 있다.
타겟 카운터는 6개의 로직 값, 즉, 6xd에 의해 주어지며, 이는 다음 결과를 제공하는 그 반전된 값 001로 시퀀스 110xb에 의해 구현된다:
(1,0) (1,0) (0,1)
따라서, 도 3에 도시된 전체 어레이에 기록되는 정보 피스는 다음과 같이 구성된다:
BF+카운터+코드워드
01 + 101001 + 0010011101001000
감지 페이즈는 모든 로직 값 "1"을 카운팅하기 시작할 수 있고, 이들을 카운터 부분(304 6xd)에 함유된 6 비트에 의해 주어진 값과 비교할 수 있다. 그 후, 셀 오류가 없으면 판독 페이즈가 중지될 수 있다.
아마도, 코드워드를 포함하는 앞서 개시된 메모리 어레이는 코드워드에 추가 정보, 예를 들어 토폴로지에 대한 정보, 이전 펄스 정보, 기록 상태 등을 추가하는 본 개시에 따라 더 개선되고 수정될 수 있다.
예를 들어, 도 4의 예를 참조하면 이러한 추가 CW 정보를 포함하는 추가 비트 그룹의 존재를 이해할 수 있다. 또한, 도 4에 도시된 메모리 페이지는 단일 패치, 말하자면, 감지 증폭기의 단일 판독 작용으로 병렬로 판독될 수 있는 최대 비트 수를 포함하는 구조를 나타낸다는 점에 유의해야 한다.
단일 판독 작용으로 판독할 수 있는 단일 구조의 수를 감소시키는 것은 바이어싱 페이즈 동안 수반되는 전력을 감소시키는 데 매우 중요하다.
도 4는 자신의 패리티 비트(402)를 갖는 하나 이상의 코드워드(CW) 및 추가 코드워드 정보 전용의 추가적인 셀(410) 그룹을 포함하는 데이터 부분(400)을 포함하는 개선된 메모리 페이지의 예를 예시한다.
메모리 부분(410)에 함유된 코드워드 정보는 다음과 같을 수 있다: 마지막 사이클에 의해 수정되거나 그렇지 않은 기록 상태; 마지막 낮은 프로그래밍 전압 Vth의 최소값; 마지막 낮은 프로그래밍 전압 Vth의 최대값; 마지막 높은 프로그래밍 전압 Vth의 최소값; 마지막 높은 프로그래밍 전압 Vth의 최대값; 이전 판독 정보 등.
위의 가능한 코드워드 정보의 목록은 총망라를 의도하는 것은 아니지만 성능(즉, 판독 속도) 또는 공급 전력 또는 다운로드 모드에서의 신뢰성 또는 사용 등을 최적화하기 위해 의도된 전압 분포 정보로 고려되어야 한다.
본 개시의 메모리 셀을 위한 카운터 기반 감지 증폭기 방법 또는 방법은 판독 페이즈 동안 카운터의 사용을 필요로 하지만 카운팅 알고리즘은 신호 전개와 병렬로 동작할 수 있다.
또한, 카운터는 ECC(예를 들어, 최대 11 비트를 보호하기 위해 4 비트를 전용함)로 보호될 수 있다. 특히, 검출력은 수정력보다 더 커야 한다.
카운터는 차동, 이중 차동(Fat 셀) 등일 수 있다.
바이어싱 전압 램프가 사용되기 때문에, 카운터 판독 페이즈에는 전압 기준 Vref가 필요하지 않고, 카운트된 값이 결정되면 판독이 중지되어 카운터 셀에 대한 스트레스를 피한다.
또한, 코드워드가 균형화되면(즉, 50-50%), 카운트를 저장할 필요조차도 없으며, 단지 N/2 로직 값이 "1" 또는 "0"으로 설정될 것으로 예상해야 하기 때문에 인코딩만 하면 된다. 이 제2 접근법은 추후에 개시된다.
그러나, 본 개시의 다음 단락에서, 우리는 카운터 판독 페이즈가 정규 데이터 셀을 감지하면서 사전 충전 페이즈 동안 병렬로 수행될 수 있기 때문에 카운터의 사용이 액세스 시간 측면에서 부담을 나타내지 않음을 이해할 것이다.
도 4a는 본 개시의 메모리 코드워드와 연관된 카운터 레지스터의 구조의 예를 예시한다. 카운터(404)는 도 4의 개략적인 블록(404)에 대응하고 3DXP 기술에 따라 구현된 2개의 차동 데이터 셀, 말하자면, Data<1> 및 Data<0> 및 반전된 셀 Data#<1> 및 Data#<0> 사이에 상호 연결된 제1 인버터(420) 및 제2 인버터(430)를 포함한다.
이제, 본 개시의 방법을 지원하는 메모리 디바이스의 예가 예시된 도 5의 예를 고려한다.
더 구체적으로, 도 5는 본 개시의 실시예에 따라 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 어레이(505)의 블록도(500)를 도시한다. 메모리 어레이(505)는 전자 메모리 장치로 지칭될 수 있고 본 출원에 설명된 메모리 디바이스의 컴포넌트의 예일 수 있다.
메모리 어레이(505)는 하나 이상의 메모리 셀(510), 메모리 컨트롤러(515), 워드 라인(520), 기준 컴포넌트(530), 감지 컴포넌트(535), 디지트 라인(540), 및 래치(latch)(545)를 포함할 수 있다. 이들 컴포넌트는 서로 전자 통신할 수 있고 본 출원에 설명된 기능 중 하나 이상을 수행할 수 있다. 일부 경우에, 메모리 셀(510)은 3DXP 메모리 셀을 포함할 수 있다. 일부 양태에서, 메모리 컨트롤러(515)는 바이어싱 컴포넌트(550) 및 타이밍 컴포넌트(555)를 포함할 수 있다. 일부 실시예에서, 감지 컴포넌트(535)는 기준 컴포넌트(530)의 역할을 할 수 있다. 다른 경우에, 기준 컴포넌트(530)는 선택적일 수 있다.
메모리 컨트롤러(515)는 워드 라인(520), 디지트 라인(540), 및 감지 컴포넌트(535)와 전자 통신할 수 있으며, 이는 도 1 및 도 2를 참조로 설명된 워드 라인(110), 디지트 라인(115), 및 감지 컴포넌트(125)의 예일 수 있다. 메모리 어레이(505)의 컴포넌트는 서로 전자 통신할 수 있고 도 3 및 도 4를 참조하여 설명된 기능의 양태를 수행할 수 있다. 일부 경우에, 기준 컴포넌트(530), 감지 컴포넌트(535), 및 래치(545)는 메모리 컨트롤러(515)의 컴포넌트일 수 있다.
일부 실시예에서, 디지트 라인(540)은 감지 컴포넌트(535) 및 메모리 셀(510)과 전자 통신한다. 메모리 셀(510)은 로직 상태(예를 들어, 제1, 제2, 또는 제3 로직 상태)로 기록 가능할 수 있다. 워드 라인(520)은 메모리 컨트롤러(515) 및 메모리 셀(510)과 전자 통신할 수 있다. 감지 컴포넌트(535)는 메모리 컨트롤러(515), 디지트 라인(540), 래치(545), 및 기준 라인(560)과 전자 통신할 수 있다. 기준 컴포넌트(530)는 메모리 컨트롤러(515) 및 기준 라인(560)과 전자 통신할 수 있다. 감지 제어 라인(565)은 감지 컴포넌트(535) 및 메모리 컨트롤러(515)와 전자 통신할 수 있다. 이들 컴포넌트는 또한 위에 나열되지 않은 컴포넌트에 추가하여 다른 컴포넌트, 연결 또는 버스를 통해 메모리 어레이(505) 내부 및 외부 양자 모두의 다른 컴포넌트와 전자 통신할 수 있다.
메모리 컨트롤러(515)는 이러한 다양한 노드에 전압을 인가함으로써 워드 라인(520) 또는 디지트 라인(540)을 여기하도록 구성될 수 있다. 예를 들어, 바이어싱 컴포넌트(550)는 앞서 설명한 바와 같이 메모리 셀(510)을 판독 또는 기록하도록 메모리 셀(510)을 동작시키기 위해 전압을 인가하도록 구성될 수 있다. 일부 경우에, 메모리 컨트롤러(515)는 본 출원에 설명된 바와 같이 행 디코더, 열 디코더, 또는 양자 모두를 포함할 수 있다. 이는 도 1을 참조하여 예시된 바와 같이 메모리 컨트롤러(515)는 하나 이상의 메모리 셀(105)에 액세스하는 것을 가능하게 할 수 있다. 바이어싱 컴포넌트(550)는 또한 감지 컴포넌트(535)에 대한 기준 신호를 생성하기 위해 기준 컴포넌트(530)에 전압을 제공할 수 있다. 추가적으로, 바이어싱 컴포넌트(550)는 감지 컴포넌트(535)의 동작을 위한 전압을 제공할 수 있다.
일부 실시예에서, 메모리 컨트롤러(515)는 타이밍 컴포넌트(555)를 사용하여 자신의 동작을 수행할 수 있다. 예를 들어, 타이밍 컴포넌트(555)는 본 출원에 설명된 판독 및 기록과 같은 메모리 기능을 수행하기 위한 스위칭 및 전압 인가를 위한 타이밍을 포함하는 다양한 워드 라인 선택 또는 비트 라인 바이어싱의 타이밍을 제어할 수 있다. 일부 경우에, 타이밍 컴포넌트(555)는 바이어싱 컴포넌트(550)의 동작을 제어할 수 있다.
기준 컴포넌트(530)는 감지 컴포넌트(535)에 대한 기준 신호를 생성하기 위한 다양한 컴포넌트를 포함할 수 있다. 기준 컴포넌트(530)는 기준 신호를 생성하도록 구성된 회로부를 포함할 수 있다. 일부 경우에, 기준 컴포넌트(530)는 다른 3DXP 메모리 셀을 사용하여 구현될 수 있다. 감지 컴포넌트(535)는 (디지트 라인(540)을 통해) 메모리 셀(510)로부터의 신호를 기준 컴포넌트(530)로부터의 기준 신호와 비교할 수 있다. 로직 상태를 결정할 때, 감지 컴포넌트는 그 후 출력을 래치(545)에 저장할 수 있고, 이는 메모리 어레이(505)가 일부인 전자 디바이스의 동작에 따라 사용될 수 있다. 감지 컴포넌트(535)는 래치(545) 및 메모리 셀(510)과 전자 통신하는 감지 증폭기를 포함할 수 있다.
메모리 컨트롤러(515) 및/또는 그 다양한 서브 컴포넌트 중 적어도 일부는 하드웨어, 프로세서에 의해 실행되는 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수 있다. 프로세서에 의해 실행되는 소프트웨어로 구현되는 경우, 메모리 컨트롤러(515) 및/또는 그 다양한 서브 컴포넌트 중 적어도 일부의 기능은 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그램 가능 게이트 어레이(FPGA) 또는 다른 프로그램 가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트, 또는 본 개시에서 설명된 기능을 수행하도록 설계된 그 임의의 조합에 의해 실행될 수 있다. 메모리 컨트롤러(515) 및/또는 그 다양한 서브 컴포넌트 중 적어도 일부는 기능의 일부가 하나 이상의 물리적 디바이스에 의해 서로 다른 물리적 위치에서 구현되도록 분산되는 것을 비롯하여 물리적으로 다양한 위치에 위치할 수 있다. 일부 실시예에서, 메모리 컨트롤러(515) 및/또는 그 다양한 서브 컴포넌트 중 적어도 일부는 본 개시의 다양한 실시예에 따라 별개의 컴포넌트일 수 있다. 다른 예에서, 메모리 컨트롤러(515) 및/또는 그 다양한 서브 컴포넌트 중 적어도 일부는 본 개시의 다양한 실시예에 따라, I/O 컴포넌트, 트랜시버, 네트워크 서버, 다른 컴퓨팅 디바이스, 본 개시에서 설명된 하나 이상의 다른 컴포넌트, 또는 그 조합을 포함하지만 이에 제한되지 않는 하나 이상의 다른 하드웨어 컴포넌트와 조합될 수 있다.
메모리 컨트롤러(515)는 판독 동작 동안 인코딩된 사용자 데이터를 함유하는 메모리 셀의 그룹을 활성화하도록 구성된 메모리 어레이에 전압(예를 들어, 판독 전압)을 인가할 수 있다. 전압은 일정한 변화율로 시간의 함수로 증가할 수 있다. 메모리 컨트롤러(515)는 판독 전압에 응답하여 턴 온(예를 들어, 활성화)되는 메모리 셀의 수를 추적할 수 있다. 일부 실시예에서, 메모리 컨트롤러(515)는 인코딩된 사용자 데이터가 제1 로직 상태를 갖도록 미리 결정된 수의 메모리 셀로 인코딩된 경우 활성화된 메모리 셀의 수를 메모리 디바이스에 저장된 미리 결정된 수와 비교할 수 있다. 활성화된 메모리 셀의 수가 미리 결정된 수와 일치하는 경우, 메모리 컨트롤러(515)는 메모리 어레이에 대한 판독 전압 인가를 중지하고 인코딩된 사용자 데이터의 활성화된 모든 메모리 셀이 제1 로직 상태(예를 들어, PCM 셀의 SET 상태)를 갖는 것으로 결정할 수 있다. 추가적으로, 메모리 컨트롤러(515)는 인코딩된 사용자 데이터의 나머지 메모리 셀(예를 들어, 활성화된 메모리 셀의 수가 미리 결정된 수와 일치하는 경우 비활성 메모리 셀)이 제2 로직 상태(예를 들어, PCM 셀의 RESET 상태)를 갖는 것으로 결정할 수 있다.
이제, 도 6을 참조하면, 이는 3DXP 메모리 셀에 대해 전형적으로 라인 X 사전 충전이 수행되는 초기 페이즈 610에서 시작하는 개시된 방법에 따라 감지 알고리즘에 의해 수행되는 작용의 시간 스케줄을 보고하는 방식(600)을 개시한다.
병렬적으로, 카운터 부분(404)의 패치에 대해 완전한 X 및 Y 라인 사전 충전이 수행된다. 이 사전 충전 페이즈(620)에 바로 이어서 바이어싱 전압의 빠른 램프로 수행되는 카운터 비트의 판독 페이즈(640)가 뒤따른다.
동시에, 도 6의 타임라인에서 이해할 수 있는 바와 같이, 코드워드의 데이터 비트가 라인 누설 보상 페이즈(630)에 제출된다. 이러한 종류의 메모리에서는 감지 회로부의 내부 전류를 누설 전류와 정렬하기 위해 보상 페이즈가 필요하다.
따라서, 이러한 작용은 수직 크로스 포인트 메모리 디바이스에서 어쨌든 수행될 것이며 이 페이즈(630)에 수반되는 시간은 카운터 부분의 내용을 판독하는 데 수반되는 판독 페이즈를 확장하지 않는다.
후속 페이즈(650)는 코드워드의 데이터 비트에 인가된 바이어싱 판독 전압의 느린 램프(660) 증가가 뒤따르는 메모리 셀의 라인 Y 사전 충전이다.
전체 감지 및 판독 동작은 약 75ns에 완료된다.
도 7은 연관된 패리티 및 ECC 비트와 동일한 로직 값을 갖는 코드워드의 비트 값을 보고하는 카운터로 코드워드를 설정하기 위한 유일한 프로그래밍 페이즈 동안 수행되는 작용의 시퀀스를 보고하는 개략적인 흐름도를 도시한다.
제1 입력 동작은 프로그래밍 알고리즘이 입력 기록 데이터를 처리하는 블록(710)에 의해 표현된다. 새로운 데이터는 버퍼 BankReadWriteBuffer(BRWBuff)에서 이전에 수정된 데이터와 병합된다. 새로운 ECC 패리티 비트가 이 페이즈에서 계산된다.
알고리즘은 블록 720에서 비트 플립(BF) 정보를 설정하는 0의 수 계산을 진행한다.
그 다음, 블록 730에서, 데이터는 BF 값에 따라 조작된다. BF가 단일 비트(즉, BF=1)이면 데이터가 완전히 반전되고; 반대로, 기록될 데이터 블록이 더 많은 코드워드 또는 부분으로 분할되는 경우 BF는 더 많은 비트를 포함할 수 있다. 분명히 다른 협약이 채택될 수 있다.
알고리즘은 프로그램 타겟 카운터가 대응하는 데이터 및 데이터#과 함께 저장되는 페이즈를 나타내는 블록 740에서 진행한다. 카운터 보호는 셀에 기록되는 카운터 ECC 패리티를 계산하는 이 페이즈에서 구현된다.
최종 프로그래밍 페이즈는 메인 코드워드 "0들" 및 "1들"이 프로그래밍되는 블록 750에 개략적으로 도시되어 있다. 달리 말해서, 시간을 추적하도록 전체 코드워드가 작성되고; 다양한 셀이 시간 경과에 따라 드리프트가 증가하기 때문에 모든 셀의 기록에는 재설정 페이즈가 포함되어 동일한 드리프트를 설정한다.
오류 확률이 더 낮아지는 것을 보장하기 위해, 미리 결정된 임계값과 조치가 이러한 목표에 대해 취해져야 하는 것이 권장된다는 것을 유의하여야 한다.
이와 관련하여, 이제 도 8의 개략적인 예를 참조하면, 감지 알고리즘은 블록 870에 도시된 시도 및 반복 페이즈와 함께 ECC1에 의존할 수 있다는 것을 이해할 수 있다.
도 8은 3DXP 메모리 셀에 대해 라인 X 사전 충전이 전형적으로 수행되는 초기 페이즈 810에서 시작하여 개시된 방법에 따라 감지 알고리즘에 의해 수행되는 작용의 시간 스케줄을 보고하는 방식(800)을 개시한다.
병렬적으로, 카운터 부분(404)의 패치에 대해 완전한 X 및 Y 라인 사전 충전이 수행된다. 도 6의 예에서 이미 볼 수 있는 바와 같이, 이 사전 충전 페이즈(820)에 바로 이어서 바이어싱 전압의 빠른 램프로 수행되는 카운터 비트의 판독 페이즈(840)가 뒤따른다.
동시에, 도 8의 타임라인에서 이해할 수 있는 바와 같이, 코드워드의 데이터 비트는 감지 회로부의 내부 전류를 누설 전류와 정렬하기 위해 라인 누설 보상 페이즈(830)에 제출된다.
이러한 작용은 수직 크로스 포인트 메모리 디바이스에서 어쨌든 수행될 것이기 때문에, 이 페이즈(830)에 수반되는 시간은 카운터 부분의 내용을 판독하는 데 수반되는 판독 페이즈를 확장하지 않는다.
후속 페이즈 850은 코드워드의 데이터 비트에 인가된 바이어싱 판독 전압의 느린 램프(860) 증가 또는 상승이 뒤따르는 메모리 셀의 라인 Y 사전 충전이다.
바이어싱 전압에 대한 이 느린 램프의 상승 페이즈 동안, 블록 870에 도시된 시도 및 반복의 동시 동작 페이즈도 병렬로 수행된다.
전체 감지 및 판독 동작은 약 100ns에 완료된다.
(메모리 셀에 프로그래밍된 로직 값의) 단일 물리적 실패는 2개의 로직 비트 수정이 필요하다는 점에 유의해야 한다. 따라서, 페이즈 870에서 수행된 시도 및 반복(TnR) 접근법은 ECC1을 사용하여 수정력을 복구하는 데 유용하다.
실제로 ECC1은 2 비트 초과의 오류를 신뢰성 있게 검출하고 단지 1 비트만을 수정해야 한다.
단지 예로서, N-1 비트를 카운트하고 ECC1 상태를 검사하는 것을 가정할 수 있다. 오류가 없다면, 감지가 중지된다. 이러한 경우에, 추후에, 2개의 추가 단계를 카운팅하여, 말하자면, N+1 비트까지 카운팅하여 감지가 반복된다. 달리 말해서, 가능한 수정력(ECC1)을 사용하여, N-1 미만의 판독 로직 값 "1"을 갖는 모든 코드워드는 수정될 수 없으며, N+1 초과의 판독 로직 값 "1"을 갖는 것도 마찬가지이다. 따라서, 간격 [N-1, N+1] 외부의 모든 범위는 수정에 유용하지 않으며, N+1 비트를 초과한 판독에 유용하지 않다.
이제, ECC1이 마지막 오류를 수정할 수 있으므로, ECC2를 사용하여 비트 수 N-2, N, N+2를 갖는 모든 다른 경우에서의 TnR 접근법에 대해 몇 개의 복구 비트가 필요하다. 달리 말해서, 검출력이 더 큰 ECC2 알고리즘을 사용하여 ECC2로 2 비트를 수정할 필요가 있는 경우, N-2, N 또는 N+2 로직 값 "1"을 나타내는 코드워드를 유용한 것으로 취해야 한다. 따라서, N-2 코드워드를 확인해야 하며, 정확하지 않은 경우, 그 후, N 비트 또는 N+2 비트의 코드워드 또는 제1 정확한 코드워드까지 검사가 진행될 것이다. N+2 비트에 도달하면, N+2보다 더 큰 수의 로직 값 "1"을 갖는 코드워드는 정확하지 않기 때문에 검사를 중지해야 한다. 마지막 것이 가장 높은 확률을 갖는 정확한 것이 될 것이다.
ECC1을 사용한 시도 및 반복(TnR) 감지 페이즈(870)는 트리거의 특정 임계값에 도달할 때 미리 시작할 수 있음을 마지막으로 유의해야 한다.
도 9는 판독 알고리즘을 통해 수행되는 메모리 셀의 감지 및 판독 페이즈의 개략도를 예시하는 블록도(900)를 도시한다.
제1 페이즈는 블록 910에 의해 예시되며, 여기서 적절한 카운터 레지스터의 셀은 2개의 로직 값 중 하나, 예를 들어 로직 값 "1"을 갖는 코드워드의 비트 수 값을 획득하기 위해 판독된다.
페이즈 920에서 카운터의 레지스터가 다운로드되고 메모리 셀을 바이어싱하기 위한 Vref 값이 설정된다. 바이어싱 전압(Vref)의 값은 바이어싱 전압의 상승 램프의 기울기(slope)를 정의하는 것을 허용한다.
이제, 비트 플립 셀의 값에 따라 램프의 극성이 조절된다. 예를 들어, BF 셀의 로직 값이 0이면, 이때, Vref 기울기는 위에서 아래로 진행하도록 설정되고 타겟 카운터 레지스터는 타겟 카운터 셀 값과 동일하다. 기울기 극성은 많은 요인, 예를 들어 로직 값 "0" 또는 "1" 중 어느 것을 판독해야 하는지, 판독 셀 방향 또는 반대 방향 중 어느 것을 사용하는 것이 더 편리한지에 따라 달라질 수 있다. 따라서, 이 페이즈에서 기울기 상승이 설정되고, 심지어 동일한 디바이스의 2개의 상이한 판독 페이즈에서도 상이할 수 있다. 반대로 BF 셀의 로직 값이 1이라면, 이때, Vref 기울기는 아래에서 위로 진행하도록 설정되고, 타겟 카운터 레지스터는 타겟 카운터 셀 값과 동일하지 않다.
블록 930은 Vref 값이 위에서 아래로 상승하는지 또는 그 반대인지에 상관 없이 또한 카운터의 셀을 트리거하는 데 사용됨을 예시한다. 분명히, 다른 감지를 사용하면 상황이 반대일 수 있으며 BF=1인 경우 동일한 상승 기울기를 갖거나 그 반대의 경우도 마찬가지이다.
그 다음, 테스트 페이즈 940에서 트리거된 메모리 셀의 수가 관련 또는 대응하는 카운터에 함유된 값보다 여전히 작은지 비교된다. 카운터로부터 다운로드한 값에 아직 도달하지 않은 경우 판독 페이즈가 진행되고 테스트 페이즈가 반복된다.
반대로, 해당 값에 도달하면 상승 램프가 중지되고 판독 페이즈가 종료된다.
도 10은 여전히 본 개시의 원리와 일치하는 판독 알고리즘의 대안 실시예를 통해 수행되는 메모리 셀의 감지 및 판독 페이즈의 개략도를 예시하는 블록도(1000)를 도시한다.
제1 페이즈는 블록 1010에 의해 예시되며, 여기서 적절한 카운터 레지스터의 셀은 2개의 로직 값 중 하나, 예를 들어 로직 값 "1"을 갖는 코드워드의 비트 수 값을 획득하기 위해 판독된다.
페이즈 1020에서 카운터의 레지스터가 다운로드되고 메모리 셀을 바이어싱하기 위한 Vref 값이 설정된다. 바이어싱 전압(Vref)의 값은 바이어싱 전압의 상승 램프의 기울기를 정의하는 것을 허용한다.
도 9의 예에서와 같이, 비트 플립 셀의 값에 따라 램프의 극성이 조절된다. 예를 들어, BF 셀의 로직 값이 0이면, 이때, Vref 기울기는 위에서 아래로 진행하도록 설정되고 타겟 카운터 레지스터는 타겟 카운터 셀 값과 동일하다. 반대로 BF 셀의 로직 값이 1이라면, 이때, Vref 기울기는 아래에서 위로 진행하도록 설정되고, 타겟 카운터 레지스터는 타겟 카운터 셀 값과 동일하지 않다.
블록 1030은 Vref 값이 위에서 아래로 상승하는지 또는 그 반대인지에 상관 없이 또한 카운터의 셀을 트리거하는 데 사용됨을 예시한다.
그 다음, 테스트 페이즈 1040에서 트리거된 메모리 셀의 수가 관련 또는 대응하는 카운터에 함유된 값 - 1([N-1])보다 여전히 작은지 비교된다. 이 값은 카운터의 수 N에서 ECC 수정력을 뺀 값에 대응한다. 카운터로부터 다운로드한 값 [N-1]에 아직 도달하지 않은 경우 판독 페이즈가 진행되고 테스트 페이즈가 반복된다.
이 값 [N-1]에 도달하면 ECC1 값이 정확한지 검사하기 위해 블록 1050에서 추가 테스트가 수행된다. 대답이 긍정(예)인 경우, 그 후, 상승 램프가 중지되고, 판독 페이즈는 블록 1060에서 종료된다. 이는 메모리 셀이 이미 완료된 판독 페이즈를 진행하는 데 유용하지 않은 더 높은 바이어싱 전압에 의해 스트레스를 받지 않는다는 것을 의미한다.
반대로, 대답이 부정(아니오)이면, 이때, 적어도 3 비트를 수반하는 가능한 오류가 발생할 수 있으며, 도 8에 도시된 시도 및 반복(TNR) 메커니즘이 활성화된다. 이 경우, 트리거된 메모리 셀의 수가 관련 또는 대응 카운터에 함유된 값 + 1([N+1])보다 여전히 작은지 비교되는 추가 테스트가 블록 1070에서 수행된다. 그러나, 이 추가 및 확장된 판독 절차는 확률이 낮고 단지 드문 경우에만 활성화될 수 있다.
본 출원에 개시된 방법은 대부분의 경우에 메모리 셀에 영향을 미치지 않고 만질 수 있는 최대값까지 상승하지 않는 상승 전압을 사용하여 판독 페이즈를 수행하기 때문에 고정 바이어싱 전압 값의 설정을 피할 수 있는 큰 이점이 있다.
도 11은 대응하는 코드워크와 연관된 카운터 셀을 호스팅하도록 구성된 메모리 디바이스를 제조하기 위한 비용의 작은 증분을 예시하는 도면이다. 수평 축은 메모리 페이지당 셀 수에 관련하는 반면, 수직 축은 상이한 카운터 복잡성에 따른 추가 메모리 비트를 고려하여 증가된 알고리즘 비용의 백분율을 나타낸다.
도시된 곡선은 중앙 화살표로 표시된 방향으로 신뢰성이 증가함을 나타낸다. 물론, fat 셀의 구성(2X, 3X); 차동 fat 셀, ECC1, 차동 ECC1, 균형 코드 및/또는 마모도 평준화 절차의 측면에서 절충안을 찾을 수 있다.
단지 가능한 숫자 표시로서, 128 바이트 페이지에는 전체 제조 비용의 2.48%의 적당한 증가를 수반할 것이다. 이 사실은 제안된 방법과 메모리 아키텍처가 특히 차동 ECC1 보호 셀이 있는 128 바이트의 메모리 페이지에 대해 단순한 설계와 비교적 적은 비용이라는 것을 입증한다.
또한, N개 이상의 비트 플립 BF 셀을 추가하면, 이때, 0의 최대 수가 적절하게 증가하고, 따라서, 스위칭 분포(낮은 Vth)로 인한 비트 오류율을 감소시킬 수 있다. 예를 들어, 증가된 수의 비트 플립 셀을 사용하면 단일 코드워드에서 검사할 비트 수를 상대적으로 낮은 백분율로 감소시키거나 유지하는 것이 가능하다.
본 개시의 방법은 저장된 셀의 분포 형상(가우시안 대 비가우시안)에 의존하지 않는 결정론적 접근법을 제공하며; 또한, 평균적인 리셋 방해로 램프된 더 낮은 전압으로 작업하는 것이 더 적절하게 관리될 수 있다.
기준 전압(Vref)은 카운터 부분에 초점이 맞춰진 최초 및 빠른 판독 펄스 이후에 설정될 수 있으며; 따라서, 기준 전압은 각각의 코드워드에 대해 설정된다.
단지 알려진 해결책과의 비교를 나타내기 위해, 도 12는 128 비트를 포함하고 바이어싱 판독 전압에 대한 상이한 감도를 갖는 2개의 상이한 일반 메모리 페이지 XXX 및 ZZZ에서 판독 페이즈 동안 검출될 수 있는 셀의 분포 대 시간의 비교도를 도시한다.
페이지 XXX에 관한 상부 도면에서, 로직 값 "1"을 갖는 팔십(80) 비트 및 로직 값 "0"을 갖는 나머지 사십팔(48) 비트의 가능한 분포(1210)가 표시되어 있다.
본 개시의 실시예에서, 메모리 셀은 제1 전압에 대한 전기적 응답을 나타낸다. 예를 들어, 일 실시예에서, 메모리 셀은 미리 결정된 상승 전압 값에 응답하여 스위칭하거나 스위칭하지 않을 수 있다.
일 실시예에서, 주어진 메모리 셀이 상기 미리 결정된 전압 값에 응답하여 스위칭하는지 여부는, 예를 들어 메모리 셀이 로직 값 1 또는 로직 값 0으로 프로그래밍되는지 여부 및 메모리 셀이 분포 사이의 중첩 범위에서 임계 전압을 나타내는지 여부에 의존한다.
본 개시의 실시예에서, 인가된 전압이 표시된 임계 전압보다 더 큰 크기를 갖는 경우 인가된 전압에 응답하여 메모리 셀이 스위칭된다. 따라서, 복수의 메모리 셀은 상기 제1 전압에 대한 그 응답을 기초로 그룹화될 수 있으며, 이는 다음을 포함한다: 제1 전압에 응답하여 스위칭하는 로직 1로 프로그래밍된 메모리 셀 또는 제1 전압에 응답하여 스위칭하지 않는 로직 0으로 프로그래밍된 메모리 셀.
도 12에서 기울기(slope)(1250)는 판독 페이즈 동안 전압 램프 상승을 나타내는 반면 메모리 페이지(XXX)의 확장된 셀 분포는 WC에 의해 고정되고 로직 값 "1"을 갖는 80 셀 모두를 판독하기 위해 필요한 시간 차이(Δ)를 도시한다.
하부 도면은 반대 로직 값 "1" 및 "0"을 갖는 셀의 분포가 상이한 또 다른 페이지 ZZZ에 관한 것이다. 이러한 경우, 시간 차이(Δ)가 로직 값 "0"을 갖는 셀을 또한 포함하기 때문에 정확한 판독 페이즈가 실패할 수 있다.
도 13은 도 12에 도시된 동일한 분포를 갖는 2개의 다른 메모리 페이지 XXX 및 ZZZ에서 수행된 판독 페이즈를 비교하는 도 12와 유사한 도면을 도시한다. 상승 바이어싱 전압의 기울기(1350)는 이전 도면의 기울기(1250)에 대응한다.
이 도 13에 도시된 바와 같이, WC는 주어진 코드워드의 판독을 완료하는 데 필요한 최대 시간 tRCD를 고정한다. 확장되거나 더 긴 분포가 존재하면, 로직 값 "1"을 갖는 80개의 셀의 수가 시간 t1에서 완료된다.
반대로, 메모리 페이지 ZZZ에 대해 도시된 분포에서, 이때, 로직 값 "1"을 갖는 80개 셀의 판독 페이즈는 시간 tx에서 완료되며, 따라서, tx < t1이기 때문에 더 짧은 시간 프레임에서 정확한 판독 페이즈를 획득한다.
이제, 도 14의 예를 참조하면, 상이한 기울기를 갖는 상승 바이어싱 전압의 사용이 본 개시의 방법에 따른 성공적인 판독에 적당한 영향을 미칠 수 있다는 것을 이해할 수 있을 것이다.
도 14는 이전의 도 12 및 도 13의 램프(1350 또는 1250)에 대응하는 규칙적인 램프(1450)가 미리 결정된 정규 기울기를 갖는 것을 도시한다. 기울기 라인(1410)에 의해 보고된 바와 같이, 램프의 상승을 가속화하기 위해 시간 t0에서 이 기울기를 수정하는 것을 상상하면, 정확한 판독 결과를 획득할 수 있지만 효과적인 이점을 획득하지 못하고 메모리 셀에 너무 많은 스트레스를 가할 것이다.
반대로, 다른 기울기 라인(1470)에 의해 보고된 바와 같이 램프의 상승을 감소시켜야 한다면, 단일 판독 실패를 획득하고, 이는 ECC 수정에 의해 보상될 것이다. 그러나, 이 경우 메모리 셀에 가해지는 전기적 스트레스가 적당하면서 메모리 디바이스의 사이클링 수명을 증가시키는 만족스러운 판독 결과를 획득할 수 있다.
판독 페이즈에서의 가능한 실패는 모두 기준 전압 선택에 의해 설정된 최대 시간 프레임 외부에 있다.
WC가 노이즈의 영향을 받는 경우, 슬루 레이트(slew rates)를 하향 저속화하는 것만으로 판독 페이즈에 영향을 미칠 수 있지만, 상향 저속화는 영향을 미치지 않는다.
도 14는 상승 기울기에 대한 가능한 불확실성이 도 12의 시스템에서는 실패를 생성하지만 도 13의 시스템에서는 그렇지 않다는 표시로 고려될 수 있다. 고정된 시간 차이 Δ를 적용하면 도달 전압 값 Vref는 변화하는 도 12의 시스템에서의 기울기* Δ가 될 것이며; 반대로, 본 개시의 카운터의 경우에, 전압 값 Vref는 "1" 로직 값을 함유하는 N 셀의 판독 페이즈에 사용된 상태로 유지되고, 기울기 불확실성에 대한 특정 내성을 제공한다.
결국, 우리는 본 개시의 메모리 구조 및 판독 방법의 몇 가지 양태를 간단히 요약할 수 있으며, 그 중 첫 번째는 원하는 수의 0(또는 1)까지의 작성된 데이터의 조작을 인코딩하기 위해 모든 코드워드당 적절한 비트 플립 정보 세트(1 내지 N 비트)를 사용하는 것이다.
또한, BF 셀은 수직 3D 크로스 포인트 셀 투표 방식 또는 ECC 비트가 있는 차동 셀(BF/BF#)에 의해 보호된다.
저장 알고리즘은 0(또는 1)의 수를 타겟 카운터에 저장하기 위해 작성된 패턴을 분석하고 조작하도록 구성된다.
이러한 카운터는 대응 코드워드와 연관되며, 또한 수직 3D 크로스 포인트 메모리 셀에 의해 구현된다.
타겟 카운터는 ECC 비트(비트당 2개의 셀)로 보호되는 수직 3D 크로스 포인트 차동 셀로 구현된다는 점에 유의해야 한다.
대안적으로 타겟 카운터는 투표 방식을 기초로 하는 수직 3D 크로스 포인트 셀에 의해 구현될 수 있고, 이는 ECC 비트(들)를 포함하는 보호 방식으로 고려될 수 있다.
타겟 카운터 셀은 연관 데이터 셀의 사전 충전 페이즈 동안 낮은 셀 전압에서 높은 셀 전압으로의 램프 방식으로 판독한다.
대안적으로, 타겟 카운터 셀은 고정 VDM 방식으로 판독할 수 있다.
심지어 코드워드의 데이터 셀이 데이터 셀에 대한 바이어싱 전압 램프를 중지하기 위해 이전에 판독한 타겟 카운터 정보를 사용하여 낮은 셀 전압에서 높은 셀 전압으로의 램프 방식으로(낮은 Vth 셀 검출) 판독된다.
마지막으로 트리거된 셀 "소프트" 정보는 추후에 소프트 ECC 기술에서 사용하기 위해 감지 증폭기당 하나의 추가 래치로 저장된다.
더 기본적인 판독 알고리즘은 코드워드의 N 값을 카운팅할 때 ECC 수정 방식을 사용하는 반면 대안적인 판독 알고리즘은 N-1 값을 카운팅할 때 시도 및 반복 소프트 엔진으로 ECC1을 사전 트리거하고 ECC1이 N-1 단계를 수정할 수 없는 경우 N+1 값까지 카운트하도록 사용된다.
대안적으로, 보다 강건한 수정 방식으로, 추가 판독 알고리즘을 사용하여 N-2, N을 카운팅할 때 시도 및 반복 소프트 엔진으로 ECC2를 사전 트리거하고 ECC2가 N-2, N 단계를 수정할 수 없는 경우 N+2까지 카운트하는 데 사용될 수 있다.
토폴로지, 마지막 Vref, 판독 파라미터(시작, 중지, 시도의 # 등), 기록 상태 등과 같은 추가 코드워드 정보가 또한 연관 레지스터에 저장될 수 있다.
앞서 설명된 방법 및 장치의 일부 예에서, 값의 세트에 적어도 부분적으로 기초하여, 제1 로직 상태를 갖는 메모리 셀의 총 수를 결정하기 위한 프로세스, 특징, 수단 또는 명령어를 더 포함할 수 있다. 앞서 설명된 방법 및 장치의 일부 예는 카운터를 제1 카운트 값으로 업데이트하기 위한 프로세스, 특징, 수단 또는 명령어를 더 포함할 수 있다.
앞서 설명된 방법은 가능한 구현을 설명하고, 동작 및 단계는 재배열되거나 그렇지 않으면 수정될 수 있으며 다른 구현이 가능하다는 점에 유의해야 한다. 더욱이, 2개 이상의 방법으로부터의 실시예가 조합될 수 있다.
본 출원에 설명된 정보 및 신호는 다양한 상이한 기술 및 기법 중 임의의 것을 사용하여 표현될 수 있다. 예를 들어, 위의 설명 전체에서 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트, 심볼 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학 필드 또는 입자, 또는 그 임의의 조합으로 표현될 수 있다. 일부 도면은 신호를 단일 신호로 나타낼 수 있지만; 그러나, 본 기술 분야의 숙련자는 신호가 신호의 버스를 나타낼 수 있고, 여기서 버스는 다양한 비트 폭을 가질 수 있다는 것을 이해할 것이다.
칼코게나이드 재료는 S, Se 및 Te 원소 중 적어도 하나를 포함하는 재료 또는 합금일 수 있다. 본 출원에 설명된 상 변화 재료는 칼코게나이드 재료일 수 있다. 칼코게나이드 재료는 S, Se, Te, Ge, As, Al, Sb, Au, 인듐(In), 갈륨(Ga), 주석(Sn), 비스무트(Bi), 팔라듐(Pd), 코발트(Co), 산소(O), 은 (Ag), 니켈(Ni), 백금(Pt)의 합금을 포함할 수 있다. 예시적인 칼코게나이드 재료 및 합금은 Ge-Te, In-Se, Sb-Te, Ga-Sb, In-Sb, 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를 포함할 수 있지만 이에 제한되지 않는다. 본 출원에 사용된 하이픈으로 연결한 화학 조성 표기법은 특정 화합물 또는 합금에 포함된 원소를 나타내며, 표시된 원소를 수반하는 모든 화학량론을 나타내기를 의도한다. 예를 들어, Ge-Te는 GexTey를 포함할 수 있고, 여기서, x 및 y는 임의의 양의 정수일 수 있다. 가변 저항 재료의 다른 예는 이원 금속 산화물 재료 또는 2개 이상의 금속, 예를 들어, 전이 금속, 알칼리 토금속 및/또는 희토류 금속을 포함하는 혼합 원자가 산화물을 포함할 수 있다. 실시예는 메모리 셀의 메모리 요소와 연관된 특정 가변 저항 재료 또는 재료로 제한되지 않는다. 예를 들어, 가변 저항 재료의 다른 예는 메모리 요소를 형성하는 데 사용될 수 있고 특히, 칼코게나이드 재료, 거대 자기저항 재료, 또는 폴리머 기반 재료를 포함할 수 있다.
메모리 디바이스(100)를 비롯하여 본 출원에 설명된 디바이스는 실리콘, 게르마늄, 실리콘-게르마늄 합금, 갈륨 비소, 갈륨 질화물 등과 같은 반도체 기판 상에 형성될 수 있다. 일부 경우에, 기판은 반도체 웨이퍼이다. 다른 경우에, 기판은 SOG(silicon-on-glass) 또는 SOP(silicon-on-sapphire)와 같은 SOI(silicon-on-insulator) 기판, 또는 다른 기판 상의 반도체 재료의 에피택셜 층일 수 있다. 기판의 전도도, 또는 기판의 하위 구역은 인, 붕소 또는 비소를 포함하지만 이에 제한되지 않는 다양한 화학종을 사용하여 도핑을 통해 제어될 수 있다. 도핑은 기판의 초기 형성 또는 성장 동안, 이온 주입에 의해, 또는 임의의 다른 도핑 수단에 의해 수행될 수 있다.
첨부 도면과 관련하여 본 출원에 설명된 설명은 예시적인 구성을 설명하고 구현될 수 있거나 청구범위의 범위에 포함되는 모든 예를 나타내는 것은 아니다. 본 출원에 사용된 용어 "예시적인"은 "예, 사례 또는 예시로서 기여하는"을 의미하고 "바람직한" 또는 "다른 예에 비해 유리한"을 의미하지 않는다. 상세한 설명은 설명된 기술의 이해를 제공하기 위한 목적으로 특정 세부사항을 포함한다. 그러나, 이러한 기술은 이러한 특정 세부사항 없이 실행될 수 있다. 일부 경우에, 잘 알려진 구조 및 디바이스는 설명된 예의 개념을 모호하게 하는 것을 피하기 위해 블록도 형식으로 도시된다.
첨부된 도면에서 유사한 컴포넌트 또는 특징은 동일한 참조 부호를 가질 수 있다. 또한, 참조 부호 뒤에 대시(dash) 및 유사한 컴포넌트 사이를 구별하는 제2 부호에 의해 동일한 유형의 다양한 컴포넌트를 구별할 수 있다. 명세서에서 단지 제1 참조 부호만 사용되는 경우, 설명은 제2 참조 부호에 무관하게 동일한 제1 참조 부호를 가진 유사한 컴포넌트 중 임의의 하나에 적용될 수 있다.
본 출원에 설명된 기능은 하드웨어, 프로세서에 의해 실행되는 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수 있다. 프로세서에 의해 실행되는 소프트웨어로 구현되는 경우, 기능은 컴퓨터 판독 가능 매체에 하나 이상의 명령어 또는 코드로서 저장되거나 송신될 수 있다. 다른 예 및 구현은 본 개시 및 첨부된 청구범위의 범위 내에 있다. 예를 들어, 소프트웨어의 특성으로 인해 앞서 설명한 기능은 프로세서, 하드웨어, 펌웨어, 하드웨어 배선 또는 이들 중 임의의 조합에 의해 실행되는 소프트웨어를 사용하여 구현될 수 있다. 기능을 구현하는 특징은 또한 기능의 일부가 다른 물리적 위치에서 구현되도록 분산되는 것을 포함하여 다양한 위치에 물리적으로 위치될 수 있다.
본 출원의 설명은 본 기술 분야의 숙련자가 본 개시내용을 수행하거나 사용할 수 있게 하기 위해 제공된다. 본 개시에 대한 다양한 수정은 본 기술 분야의 숙련자에게 용이하게 명백할 것이며, 본 출원에 정의된 일반적인 원리는 본 개시의 범위를 벗어나지 않고 다른 변형에 적용될 수 있다. 따라서, 본 개시내용은 본 출원에 설명된 예 및 설계로 제한되지 않고, 본 출원에 개시된 원리 및 신규한 특징과 일치하는 가장 넓은 범위에 따라야 한다.

Claims (35)

  1. 메모리 셀을 판독하는 카운터 기반 감지 증폭기 방법에 있어서,
    - 메모리 셀 어레이와 연관된 카운터에 상기 어레이에 저장된 데이터 비트의 미리 결정된 로직 값을 갖는 비트 수 값을 저장하는 단계;
    - 상기 미리 결정된 로직 값을 갖는 상기 비트 수에 대응하는 상기 값을 상기 카운터로부터 판독하는 단계;
    - 바이어싱 전압의 램프(ramp)를 인가함으로써 상기 메모리 셀 어레이에 저장된 상기 데이터를 판독하는 단계;
    - 상기 데이터 판독 페이즈 동안 상기 미리 결정된 로직 값을 갖는 상기 비트 수를 카운팅하는 단계;
    - 상기 미리 결정된 로직 값을 갖는 상기 비트 수가 상기 카운터에 저장된 상기 값과 동일할 때 상기 데이터 판독 페이즈를 중지하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서, 상기 카운터에 상기 저장 페이즈는 먼저 비트 플립 페이즈를 사용하여 데이터 비트의 50% 이상의 상기 미리 결정된 로직 값을 갖는 비트 수를 획득하는 단계를 포함하는, 방법.
  3. 청구항 2에 있어서, 상기 비트 플립 페이즈는 50-50% 균형 패턴에 도달하는 데이터를 인코딩하는 데 사용되는, 방법.
  4. 청구항 1에 있어서, 상기 카운터 판독 페이즈는 상기 메모리 셀 어레이의 데이터 비트 부분의 바이어싱 사전 충전 또는 라인 누설 보상 페이즈를 시작하는 동안 상기 카운터에 대한 빠른 바이어싱 전압 램프로 수행되는, 방법.
  5. 청구항 1에 있어서, 상기 메모리 셀 어레이는 연관된 패리티 비트를 갖는 데이터 비트 및 연관된 ECC 비트(들)를 갖는 카운터를 포함하는 코드워드(codeword)를 적어도 포함하는, 방법.
  6. 청구항 5에 있어서, 상기 코드워드는 대응하는 ECC 비트(들)를 갖는 비트 플립 셀 그룹을 더 포함하는, 방법.
  7. 청구항 1에 있어서, 상기 데이터 비트의 셀이 트리거될 때마다, 자동으로 턴 오프되는, 방법.
  8. 청구항 1에 있어서, 상기 데이터 비트의 셀이 트리거될 때마다, 동시에 상기 로직 값을 갖는 셀의 수에 대응하는 값을 포함하는 카운터를 감분시키는, 방법.
  9. 청구항 1에 있어서, 상기 카운터 판독 페이즈와 상기 데이터 판독 페이즈는 동일한 기울기(slope)를 갖는 전압 램프로 수행되는, 방법.
  10. 청구항 1에 있어서, 마지막으로 트리거된 셀의 내용은 추후에 소프트 ECC 기술에서 사용하기 위해 감지 증폭기당 하나의 추가 래치에 저장되는, 방법.
  11. 청구항 1에 있어서, 시도 및 반복 ECC의 동시 동작은 상기 데이터 판독 페이즈 동안 발생하는, 방법.
  12. 청구항 11에 있어서, 상기 메모리 어레이의 코드워드의 N-2, N 및 N+2 셀의 데이터 판독 페이즈 동안 시도 및 반복 ECC2의 동시 동작을 포함하는, 방법.
  13. 수직 3D 메모리 디바이스에서 메모리 셀의 신뢰성 있는 판독을 위한 방법에 있어서,
    미리 결정된 로직 값을 갖는 코드워드의 비트 수 값을 메모리 셀의 상기 코드워드와 연관된 카운터에 저장하는 단계;
    상기 코드워드의 내용을 판독하기 전에 상기 카운터의 내용을 판독하는 단계;
    상기 코드워드의 사전 충전 페이즈 동안 상기 카운터 판독 페이즈를 시작하는 단계;
    상기 미리 결정된 로직 값을 갖는 상기 비트 수가 상기 카운터 내용에 대응할 때 상기 코드워드 판독 페이즈를 중지하는 단계를 포함하는, 방법.
  14. 청구항 13에 있어서,
    데이터의 50% 이상인 미리 결정된 로직 값을 갖는 비트 수를 획득하기 위한 비트 플립 페이즈를 더 포함하는, 방법.
  15. 청구항 14에 있어서, 상기 비트 플립 페이즈는 50-50% 균형 패턴에 도달하는 데이터를 인코딩하는 데 사용되는, 방법.
  16. 청구항 13에 있어서, 상기 카운터 내용을 판독하는 단계는 상기 코드워드의 바이어싱 사전 충전 또는 라인 누설 보상 페이즈를 시작하는 동안 빠른 바이어싱 전압 램프로 수행되는, 방법.
  17. 청구항 13에 있어서,
    상기 코드워드로부터 판독되고, 상기 미리 결정된 로직 값을 갖는 셀의 수와 상기 카운터로부터 판독된 내용 사이의 비교; 및
    상기 수가 상기 카운터 내용에 대응하는 순간까지 상기 코드워드의 상기 판독 페이즈의 반복을 더 포함하는, 방법.
  18. 청구항 17에 있어서, 상기 카운터 판독 페이즈와 상기 코드워드 내용 판독 페이즈는 동일한 기울기를 갖는 전압 램프로 수행되는, 방법.
  19. 청구항 13에 있어서, ECC를 사용한 시도 및 반복 알고리즘의 동시 동작은 상기 데이터 판독 페이즈 및 상기 코드워드 내용 판독 페이즈 동안 발생하는, 방법.
  20. 청구항 19에 있어서, ECC1을 사용한 시도 및 반복 알고리즘은 트리거된 셀이 특정 임계값에 도달한 것에 기초하여 시작될 수 있는, 방법.
  21. 청구항 13에 있어서, 바이어싱 전압 램프가 사용되고 상기 카운팅된 값이 결정되면 상기 판독이 중지되기 때문에 상기 카운터 판독 페이즈에 전압 기준(Vref)이 필요하지 않은, 방법.
  22. 청구항 13에 있어서,
    N-1 수의 코드워드 데이터 셀을 판독한 후 ECC1 테스트를 더 포함하는, 방법.
  23. 적어도, 하나 이상의 메모리 셀 어레이를 포함하는 메모리 어레이 및 상기 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 컨트롤러를 포함하는 메모리 디바이스에 있어서,
    - 적어도, 연관된 패리티 비트를 갖는 데이터 비트 및 연관된 ECC 비트(들)를 갖는 카운터를 포함하는 상기 메모리 어레이의 코드워드를 포함하는, 메모리 디바이스.
  24. 청구항 23에 있어서, 상기 코드워드는 대응하는 ECC 비트(들)를 갖는 비트 플립 셀 그룹을 적어도 더 포함하는, 메모리 디바이스.
  25. 청구항 24에 있어서, 상기 비트 플립 셀은 3D 크로스 포인트 셀 투표 방식 또는 ECC를 사용한 차동 3D 크로스 포인트 셀에 의해 보호되는, 메모리 디바이스.
  26. 청구항 24에 있어서, 상기 비트 플립 셀 그룹은 상기 코드워드의 길이에 기초하여 계산된 1 내지 N 수의 셀을 포함하는, 메모리 디바이스.
  27. 청구항 23에 있어서, 상기 메모리 셀은 수직 3D 크로스 포인트 메모리 셀을 포함하는, 메모리 디바이스.
  28. 청구항 23에 있어서, 상기 카운터는 상기 코드워드의 데이터 비트의 상기 동일한 메모리 셀로 구현되는, 메모리 디바이스.
  29. 청구항 23에 있어서, 상기 마지막으로 트리거된 셀의 내용은 소프트 ECC 기술에서 추후에 사용하기 위해 감지 증폭기당 하나의 추가 래치에 저장되는, 메모리 디바이스.
  30. 청구항 23에 있어서, 상기 컨트롤러는 상기 코드워드 데이터 비트의 상기 바이어싱 사전 충전 또는 라인 누설 보상 페이즈와 병렬로 상기 카운터 판독 페이즈를 수행하도록 구성되는, 메모리 디바이스.
  31. 적어도, 하나 이상의 메모리 셀 어레이를 포함하는 메모리 어레이 및 상기 메모리 셀을 판독하기 위한 카운터 기반 감지 증폭기 방법을 지원하는 메모리 컨트롤러를 포함하는 메모리 디바이스에 있어서,
    조작된 저장된 데이터를 로직 값의 원하는 비트 수까지 인코딩하기 위해 상기 메모리 어레이의 모든 코드워드에 대한 비트 플립 셀 세트를 포함하는, 메모리 디바이스.
  32. 청구항 31에 있어서, 상기 비트 플립 셀은 3D 크로스 포인트 셀 투표 방식 또는 ECC를 사용한 차동 3D 크로스 포인트 셀에 의해 보호되는, 메모리 디바이스.
  33. 청구항 31에 있어서, 각각의 코드워드에 대한 카운터를 더 포함하고, 동일한 로직 값을 갖는 상기 코드워드의 상기 비트에 대응하는 수를 기록하는, 메모리 디바이스.
  34. 청구항 33에 있어서, 상기 컨트롤러는 동일한 기울기를 갖는 바이어싱 전압 램프로 상기 카운터의 내용 및 상기 코드워드의 내용을 판독하도록 구성되는, 메모리 디바이스.
  35. 청구항 31에 있어서, 상기 비트 플립 셀을 포함하는 확장 코드워드, 패리티 비트에 의해 보호되는 카운터, 대응하는 패리티 비트를 갖는 데이터 비트 및 추가 코드워드 정보를 포함하는, 메모리 디바이스.
KR1020227033725A 2020-03-03 2020-03-03 메모리 셀을 위한 카운터 기반 감지 증폭기 방법 KR20220148866A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2020/000082 WO2021176244A1 (en) 2020-03-03 2020-03-03 Counter-based sense amplifier method for memory cells

Publications (1)

Publication Number Publication Date
KR20220148866A true KR20220148866A (ko) 2022-11-07

Family

ID=77613914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227033725A KR20220148866A (ko) 2020-03-03 2020-03-03 메모리 셀을 위한 카운터 기반 감지 증폭기 방법

Country Status (7)

Country Link
US (2) US11842783B2 (ko)
EP (1) EP4115418A4 (ko)
JP (1) JP2023516346A (ko)
KR (1) KR20220148866A (ko)
CN (1) CN115443504A (ko)
TW (2) TWI770847B (ko)
WO (1) WO2021176244A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115485776A (zh) 2020-05-13 2022-12-16 美光科技公司 用于存取存储器单元的基于计数器的方法和系统
US11367484B1 (en) 2021-01-21 2022-06-21 Micron Technology, Inc. Multi-step pre-read for write operations in memory devices
US11514983B2 (en) 2021-04-02 2022-11-29 Micron Technology, Inc. Identify the programming mode of memory cells based on cell statistics obtained during reading of the memory cells
US11664073B2 (en) 2021-04-02 2023-05-30 Micron Technology, Inc. Adaptively programming memory cells in different modes to optimize performance
US11615854B2 (en) 2021-04-02 2023-03-28 Micron Technology, Inc. Identify the programming mode of memory cells during reading of the memory cells

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252289A1 (en) * 2010-04-08 2011-10-13 Seagate Technology Llc Adjusting storage device parameters based on reliability sensing
US9025364B2 (en) * 2013-03-14 2015-05-05 Micron Technology, Inc. Selective self-reference read
JP6149598B2 (ja) 2013-08-19 2017-06-21 ソニー株式会社 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
US9170876B1 (en) 2013-12-31 2015-10-27 Pmc-Sierra Us, Inc. Method and system for decoding encoded data stored in a non-volatile memory
US10089177B2 (en) * 2014-06-30 2018-10-02 Sandisk Technologies Llc Multi-stage decoder
KR20170032052A (ko) * 2015-09-14 2017-03-22 에스케이하이닉스 주식회사 에러정정 장치 및 에러정정 방법
US10075190B2 (en) 2015-10-27 2018-09-11 Sandisk Technologies Llc Adaptive scheduler for decoding
US10664343B2 (en) 2016-02-08 2020-05-26 Sony Corporation Memory controller, non-volatile memory, and method of controlling memory controller
US10431301B2 (en) 2017-12-22 2019-10-01 Micron Technology, Inc. Auto-referenced memory cell read techniques
US10514980B2 (en) * 2018-03-22 2019-12-24 Winbond Electronics Corp. Encoding method and memory storage apparatus using the same
CN110716824B (zh) 2018-07-13 2023-08-15 华邦电子股份有限公司 编码方法及使用所述编码方法的存储器存储装置
US10761927B2 (en) 2018-07-16 2020-09-01 Taiwan Semiconductor Manufacturing Co., Ltd. Detection and correction of data bit errors using error correction codes
US10884853B2 (en) * 2019-01-16 2021-01-05 Intel Corporation Fast search of error correction code (ECC) protected data in a memory
KR102652001B1 (ko) * 2019-05-22 2024-03-27 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법

Also Published As

Publication number Publication date
EP4115418A1 (en) 2023-01-11
US20230141713A1 (en) 2023-05-11
TW202201415A (zh) 2022-01-01
US20240177792A1 (en) 2024-05-30
WO2021176244A1 (en) 2021-09-10
US11842783B2 (en) 2023-12-12
JP2023516346A (ja) 2023-04-19
TWI770847B (zh) 2022-07-11
CN115443504A (zh) 2022-12-06
TW202238604A (zh) 2022-10-01
EP4115418A4 (en) 2023-04-26

Similar Documents

Publication Publication Date Title
CN111480200B (zh) 自动参考存储器单元读取的方法和存储器设备
KR102386641B1 (ko) 자동-참조 메모리 셀 판독 기술
KR20220148866A (ko) 메모리 셀을 위한 카운터 기반 감지 증폭기 방법
KR102413476B1 (ko) 카운터 및 ecc 피드백에 기초한 메모리 셀들에 대한 온 더 플라이 프로그래밍 및 검증 방법
EP3876233A1 (en) On-the-fly programming and verifying method for memory cells based on counters and ecc feedback
US11763910B2 (en) Multi-command memory accesses

Legal Events

Date Code Title Description
E902 Notification of reason for refusal