KR101545560B1 - 저항 메모리 요소의 특성화 파라미터의 형성 - Google Patents

저항 메모리 요소의 특성화 파라미터의 형성 Download PDF

Info

Publication number
KR101545560B1
KR101545560B1 KR1020140022661A KR20140022661A KR101545560B1 KR 101545560 B1 KR101545560 B1 KR 101545560B1 KR 1020140022661 A KR1020140022661 A KR 1020140022661A KR 20140022661 A KR20140022661 A KR 20140022661A KR 101545560 B1 KR101545560 B1 KR 101545560B1
Authority
KR
South Korea
Prior art keywords
resistive memory
signal
resistance
characterization
characterization procedure
Prior art date
Application number
KR1020140022661A
Other languages
English (en)
Other versions
KR20140110737A (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 KR20140110737A publication Critical patent/KR20140110737A/ko
Application granted granted Critical
Publication of KR101545560B1 publication Critical patent/KR101545560B1/ko

Links

Images

Classifications

    • 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
    • G11C29/50008Marginal testing, e.g. race, voltage or current testing of impedance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • 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
    • 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/1012Adding 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 codes or arrangements adapted for a specific type of error
    • 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
    • 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/0007Digital 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 metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • 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/0083Write to perform initialising, forming process, electro forming or conditioning
    • 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/0092Write characterized by the shape, e.g. form, length, amplitude of the write pulse

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Quality & Reliability (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Materials Engineering (AREA)
  • Software Systems (AREA)
  • Semiconductor Memories (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

저항 메모리 요소의 각각의 최소 프로그래밍 시간 또는 최소 프로그래밍 전압 스텝 미만인 지속 기간 및 피크 전압 중 적어도 하나를 포함하는 증분 신호가 정의된다. 신호를 메모리 요소에 인가하고, 신호가 각각의 후속 인가 동안 증분 신호만큼 증분되는 것; 신호에 대응하여 메모리 요소의 제 1 저항을 측정하는 것; 및 c) 어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 제 1 저항의 측정으로부터 경과된 후에 메모리 요소의 제 2 저항을 측정하는 것을 적어도 포함하는 특성화 절차가 반복적으로 수행된다. 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여, 메모리 요소의 특성화 파라미터가 형성된다.

Description

저항 메모리 요소의 특성화 파라미터의 형성{FORMING A CHARACTERIZATION PARAMETER OF A RESISTIVE MEMORY ELEMENT}
본 개시는 저항 메모리 요소의 특성화 파라미터를 형성하는 것에 관한 것이다. 일 예에서, 방법들, 장치들, 및 컴퓨터 판독가능 매체 상에 저장된 명령어들은 저항 메모리 요소의 각각의 최소 프로그래밍 시간 또는 최소 프로그래밍 전압 스텝 미만인 지속 기간 및 피크 전압 중 적어도 하나를 포함하는 증분 신호를 정의하는 것을 용이하게 한다. 특성화 절차가 반복적으로 수행된다. 특성화 절차는 a) 신호를 저항 메모리 요소에 인가하고, 신호가 각각의 후속 인가 동안 증분 신호만큼 증분되는 것; b) 신호에 대응하여 저항 메모리 요소의 제 1 저항을 측정하는 것; 및 c) 어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 제 1 저항의 측정으로부터 경과된 후에 저항 메모리 요소의 제 2 저항을 측정하는 것을 적어도 포함한다. 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여, 저항 메모리 요소의 특성화 파라미터가 형성된다. 저항 메모리 요소에 영향을 미치는 데이터 액세스 동작은 특성화 파라미터를 사용하여 수정된다.
다른 실시예에서, 방법들, 장치들, 및 컴퓨터 판독가능 매체 상에 저장된 명령어들은 특성화 절차를 반복적으로 수행하는 것을 용이하게 한다. 특성화 절차는 신호를 복수의 저항 메모리 요소들의 선택된 요소에 인가하는 것을 포함한다. 신호의 피크 전압은 선택된 요소의 최소 프로그래밍 전압 스텝 미만인 증분 전압만큼 증분된다. 특성화 절차는 신호가 인가되는 것에 대응하여 선택된 요소의 제 1 저항을 측정하는 것 및 어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 제 1 저항의 측정으로부터 경과된 후에 선택된 요소의 제 2 저항을 측정하는 것을 더 포함한다. 선택된 요소에 영향을 미치는 데이터 액세스 동작은 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여 수정된다.
다양한 실시예들의 이들 및 다른 특징들 및 양상들은 이하의 상세한 논의 및 첨부 도면들을 고려하면 이해될 수 있다.
이하의 도면들에서, 동일한 참조 번호들은 다수의 도면들 내의 유사한/동일한 구성요소들을 식별하기 위해 사용될 수 있다.
도 1은 예시적 실시예에 따른 장치의 블록도이다.
도 2는 예시적 실시예에 따른 특성화 테스팅의 단계들을 예시하는 블록도이다.
도 3은 예시적 실시예에 따른 특성화 파라미터들을 획득하기 위해 사용되는 프로그래밍 신호 응답들을 예시하는 그래프이다.
도 4는 예시적 실시예에 따른 증분 프로그래밍 신호를 메모리 셀에 적용하는 것을 예시하는 블록도이다.
도 5는 예시적 실시예에 따른 메모리 셀의 저항 측정들을 형성하는 것을 예시하는 블록도이다.
도 6은 예시적 실시예에 따른 저항 메모리 셀 특성화 시퀀스를 예시하는 블록도이다.
도 7-도 10은 예시적 실시예들에 따른 셀들의 모집단이 테스트들에 기초하여 어떻게 특성화될 수 있는지의 예들을 예시하는 히스토그램들이다.
도 11 및 도 12는 예시적 실시예들에 따른 방법들을 예시하는 흐름도들이다.
다양한 예시적 실시예들의 이하의 설명에서, 이것의 일부를 형성하고, 다양한 예시적 실시예들이 예시로서 도시되는 첨부 도면들이 참조된다. 구조 및 동작 변경들은 첨부된 청구항들의 범위로부터 벗어나는 것 없이 이루어질 수 있으므로, 다른 실시예들이 이용될 수 있다는 점이 이해되어야 한다.
본 개시는 일반적으로 저항 메모리 저장을 사용하는 디바이스들과 같은 지속적 데이터 저장 디바이스들에 관한 것이다. 저항 메모리들은 데이터를 저장하기 위해 메모리 셀의 저항의 지속적 변화들을 사용하는 임의의 메모리를 포함할 수 있다. 저항 메모리들은 저항 랜덤 액세스 메모리(RRAM, ReRAM, 또는 멤리스터) 및 상 변화 메모리(PCM)를 포함할 수 있지만, 이들에 제한되지 않는다. 이러한 메모리 타입들 각각은 상이한 특성들 및 장점들을 가질 수 있지만, 상이한 메모리 타입들을 사용하는 메모리 디바이스들의 효율적 사용은 매체의 에이징에 대응하여 및/또는 매체의 워크로드에 기초하여 매체의 물리적 변화들을 효과적으로 관리하는 것을 포함할 수 있다.
본 개시는 시간에 따라 저항 기반 메모리의 저항의 시프트들을 보상하는 것에 관한 것이다. 보상은 적응 ECC(error-correction codes)의 사용, 프로그램 및 판독 작용의 수정, 특정 데이터 저장 포맷들의 사용, 및 매체의 능동적 관리의 임의의 조합을 포함할 수 있다. 이러한 보상 기술들은 조합으로 사용될 수 있고, 각각은 아래에 더 상세히 논의될 것이다. 기술들은 도 1에 도시된 저장 디바이스(100)와 같은 데이터 저장 디바이스에 사용될 수 있다.
도 1에서, 블록도는 예시적 실시예에 따른 데이터 저장 디바이스(100)를 예시한다. 이러한 디바이스(100)는 고체 상태 메모리의 임의의 조합을 이용하는 SSD(solid-state drive)(또는 그것의 서브 컴포턴트)로 구성될 수 있다. 디바이스(100)의 특징들은 고체 상태 메모리 및 자기 디스크들의 조합을 사용하는 하이브리드 드라이브들과 같은 다른 타입들의 하드 드라이브 디바이스들에 적용가능할 수 있다. 디바이스(100)의 특징들은 표준 하드 드라이브 데이터 인터페이스들을 이용하지 않는 특수 목적 고체 상태 및/또는 디스크 데이터 저장 디바이스들(또는 그것의 서브 컴포턴트들)에 적용가능할 수도 있다.
디바이스(100)는 디바이스(100)의 비휘발성 메모리의 일부 또는 전부를 포함하는 하나 이상의 메모리 유닛들(102, 103)을 포함할 수 있다. 메모리 유닛들(102, 103)은 하나 이상의 각각의 개별 물리 유닛들(104, 105), 예를 들어 메모리 칩들, 다이들, 패키지들, 평면들 등, 또는 논리 유닛들 또는 그것의 그룹화들을 포함할 수 있다. 이러한 예에서, 메모리 유닛들(102, 103)은 비계층적 유닛들이고, 각각의 물리 유닛들(104, 105)은 다른 것으로부터 상이한 타입의 비휘발성 메모리 저장 매체를 각각 포함한다. 물리 유닛들(104, 105) 각각 내에서, 메모리는 더 작은 블록들(106, 107)로 그룹화될 수 있다. 물리 유닛들(104, 105)의 기본 매체가 상이하기 때문에, 블록들(106, 107)의 메모리 크기들은 다를 수 있다. 2개의 메모리 유닛(102, 103)이 이러한 예에 도시되지만, 본 명세서에 설명되는 개념들은 상이한 매체 타입들의 더 많은 유닛들을 갖거나, 단일 저장 매체 타입의 단일 메모리 유닛을 갖는 디바이스들에 이용될 수 있다.
디바이스(100)는 호스트(114)로부터 호스트 인터페이스(113)를 통해 수신되는 요청들을 서비스하는 것을 용이하게 하는 하나 이상의 시스템 컨트롤러들(110)을 포함할 수 있다. 시스템 컨트롤러(110)는 일반적으로 논리 어드레스들을 참조하는 호스트(114)로부터 판독 또는 기록 요청들을 수신한다. 시스템 컨트롤러(110)는 논리 어드레스들을 물리 어드레스들로 변환하고, 각각의 판독 또는 기록 동작들을 메모리 유닛들(102, 103)의 적절한 물리 어드레스들 상에 수행한다. 시스템 컨트롤러(110)는 저장 컨트롤러(112)에게 메모리 유닛들(102, 103)에 영향을 미치는 동작들을 수행하라고 명령할 수 있다. 어떤 PCIe 연결 데이터 저장 디바이스들에서와 같이, 일부 대안적 실시예들에서, 시스템 컨트롤러는 물리 엔티티로 존재하는 것이 아니라, 컴퓨터 디바이스 드라이버 내에 논리 엔티티로 존재할 가치가 있다.
저장 컨트롤러(112)는 하나 이상의 메모리 유닛들(102, 103)에 판독 및 기록을 수행하는 신호들을 적용하는 특수화된 컨트롤러이다. 저장 컨트롤러(112)는 인코더들 및 디코더들을 포함할 수 있거나, 인코딩/디코딩은 분리 유닛(도시되지 않음)에 의해 수행될 수 있다. 다수의 메모리 유닛들(102, 103)이 사용되면, 다수의 저장 컨트롤러들(112)은 특정 메모리 타입에 적절한 판독/기록 동작들을 수행하기 위해 이용될 수 있다. 분리 저장 컨트롤러들(112)은 특정 메모리 아키텍처에 적절한 다른 물리 어드레싱 규정들을 이용할 수 있다. 그러한 경우에, 일차 시스템 컨트롤러(110)는 논리 호스트 어드레스를 메모리 유닛들(102, 103)과 연관되는 저장 컨트롤러들(112)에 의해 사용가능한 내부 논리 어드레스로 변환할 수 있다.
디바이스(100)는 다른 것들 중에서, 비휘발성 메모리 유닛들(102, 103)에 대한 휘발성 캐시(118)에 사용될 수 있는 휘발성 RAM(random access memory)(116)을 사용할 수 있다. 일반적으로, 휘발성 캐시(118)는 비휘발성 메모리(102, 103)의 일부들을 미러링하는 계층적 메모리 구조이지만, 비휘발성 메모리(102, 103)보다 더 빠르게 판독되며/되거나 기록될 수 있다. 일부 상황들, 예를 들어 반복된 판독/기록 활동을 짧은 시간 기간 동안 보는 데이터를 위해, 휘발성 캐시(118)는 성능을 증가시킬 것이다.
이전에 언급된 바와 같이, 메모리 유닛들(102, 103)은 상이한 타입들의 메모리 저장 매체를 포함하는 비계층적 유닛들로 구성될 수 있다. 예를 들어, 메모리 유닛들(102, 103)은 각각 플래시 메모리, 저항 RAM(또한 ReRAM, RRAM, 및 멤리스터로 공지됨), STRAM(spin-torque RAM), 또는 상 변화 메모리(PCM) 유닛들의 다른 것들일 수 있다. 본 개시의 목적들을 위해, 메모리 유닛들(102, 103) 중 적어도 하나는 저항 메모리 유닛들, 예를 들어 ReRAM 및 PCM이다.
저항 메모리는 셀들에 전기 신호들의 인가에 의해 시프트될 수 있는 미리 결정된 저항을 일반적으로 나타내는 메모리 요소들(예를 들어, 셀들)을 사용한다. 예를 들어, PCM 셀들은 특정 전압의 인가 시에 비정질, 결정질, 및 중간 상태들(및 반대)로 변화되고, 저항은 그들이 상태들 간에 측정가능하게 다를 수 있다. RRAM 셀은 전도성 경로들이 적절한 전압의 인가에 의해 형성/제거될 수 있는 유전체를 포함하며, 이는 유전체를 통해 검출되는 가변 저항을 야기한다.
저항 메모리 셀은 데이터의 하나 이상의 비트들을 저장할 수 있다. 1 비트가 셀마다 저장되면 저장된 데이터의 값은 셀의 저항 레벨을 측정하고 그것이 정의된 임계값 위 또는 아래인지를 판단함으로써 결정된다. 유사하게, 다수의 비트들은 셀마다 1보다 큰 임계값을 정의하고 검출함으로써 저장될 수 있다. 다수의 비트 셀들은 더 큰 저장 밀도를 야기할 수 있지만, 그들은 저항 측정들을 더 정교하게 구별하는 요구로 인해 에러나기 더 쉬울 수 있다. 저항 메모리 셀이 1 비트를 저장하든지 1보다 큰 비트를 저장하든지, 그것은 특정 셀들이 프로그래밍 전압들, 인접 활동, 시간 경과, 및 다른 사용/환경 인자들에 어떻게 대응하는지의 차이들에 민감할 수 있다.
저항 메모리 셀들은 제조 차이들로 인한 프로그래밍 전압들(또는 전류들)에 대응하여 변동을 나타낼 수 있다. 변동들의 일부는 반복 프로그래밍, 예를 들어 제 1 레벨로 프로그래밍하는 것, 저항을 재판독하는 것, 및 타겟 저항이 재판독될 때까지 후속 프로그래밍에 동일하게 행하는 것에 의해 설명될 수 있다. 그러나, 셀이 프로그래밍 후에, 예를 들어 열 영향들로 인해 바로 드리프트되고, 그러한 드리프트가 셀들 사이에서 변화될 수 있는 일부 경우들이 존재할 수 있다. 더 긴 시간 기간들 동안, 메모리 셀들의 저항 레벨들은 다수의 인자들, 예를 들어 온도, 재료 손상, 사이클들의 수, 유지 시간, 판독/기록 방해 등으로 인해 시프트될 수 있다.
저항 메모리 셀들의 예측불가능한 저항 시프트들은 감소된 성능을 야기할 수 있어, 예를 들어 추가 에러 정정 조치 또는 리던던시를 필요로 한다. 이러한 시프트들은 내구력 및/또는 유지력에 영향을 미칠 수도 있으며, 예를 들어 긴 시간 기간들 동안 저장되는 데이터는 상당한 BER(bit error rate)을 나타내며/내거나 판독불가능해질 수 있다. 이러한 에러들은 1보다 큰 비트를 저장하기 위해 메모리 셀이 사용될 때 훨씬 더 분명해질 수 있다. 적응 에러 정정 코드들을 포함하고, 프로그램 및 판독 작용을 수정하고, 특정 데이터 저장 포맷들을 사용하며, 매체를 능동적으로 관리하는, 저항의 시프트들을 보상하는 다수의 방법들이 존재한다. 그러나, 그러한 보상을 적용하기 위해, 특정 메모리 셀들의 성능을 특성화하는 일관된 방법이 될 필요가 있을 수 있다.
따라서, 데이터 저장 디바이스(100)는 메모리 유닛들(102, 103)의 메모리 셀들을 특성화하는 것을 용이하게 하는 하나 이상의 기능 모듈들(120)을 포함한다. 기능 모듈들(120)은 커스텀 로직 회로조직 및/또는 컴퓨터 판독가능 매체에 저장된 명령어들을 포함할 수 있다. 특성화 모듈(122)은 증분 프로그래밍 신호들을 메모리 셀들에 적용하고 체류 시간 후에 셀들의 저항들을 재판독하기 위해 시스템 컨트롤러(110) 및/또는 저장 컨트롤러(112)를 통해 동작가능하다. 특성화 모듈(122)은 특성화 데이터를 데이터베이스 인터페이스(126)를 통해 지속적 데이터 스토어(124)에 저장할 수 있다. 데이터 스토어(124)는 메모리 유닛들(102 또는 103)의 개별 파티션에서와 같이 비휘발성 메모리에 저장되는 것이 바람직하지만, 휘발성 메모리, 또는 1회 프로그램가능 메모리(도시되지 않음)에 유지될 수도 있다. 데이터베이스 인터페이스(126)는 메모리 어드레스 또는 어드레스들의 범위에 매핑/인덱싱되는 데이터를 컴팩트 포맷으로 저장하는 것을 용이하게 할 수 있다. 보상 모듈(128)은 특성화 데이터를 데이터베이스 인터페이스(126)를 통해 검색하고 보상을 정상 동작 동안, 예를 들어 호스트 요청 판독 및 기록 커맨드들에 대응하여 적용하도록 구성된다.
이제 도 2를 참조하면, 블록도는 예시적 실시예에 따른 보상 및 특성화 모듈들의 동작 원리들을 예시한다. 일반적으로, 메모리 디바이스는 매체의 공칭 제조 사양들에 따라 베이스라인 레벨(200)에서 동작하도록 구성될 수 있다. 제조된 메모리 디바이스들의 다수는 베이스라인 레벨 구성(200)을 사용하여 허용가능 성능으로 동작할 수 있지만, 심지어 일부 양상들에 관한 기대로 수행하지 못하는 것들, 예를 들어 BER은 다른 영역들 내의 테스팅(예를 들어, 어드레스 다중화 및 역다중화)을 여전히 통과할 수 있을 것이다. 게다가, 성능 저하는 베이스라인 구성(200)에 대한 변경들을 통해 정정가능할 수 있다.
제 2 제조 또는 제조후 특성화 테스팅(202)은 서비스(예를 들어, 다른 구성요소들과 통합되고, 사용을 위해 출하됨)에 들어가기 전에 일부 또는 전부의 메모리 디바이스들 상에 수행될 수 있다. 이러한 선사용 테스팅(202)은 모든 셀들 또는 선택된 셀 서브세트 상에 수행되고, 출하 제품의 일부인 데이터베이스(203)에 지속적으로 저장될 수 있는 특성화 데이터를 야기할 수 있다. 선사용 테스팅(202)은 제어된 조건들, 예를 들어 온도의 변화들, 인가된 전압 등 하에 수행될 수 있다. 가열 요소는 온도를 제어하기 위해 저장 디바이스 아래에 배치될 수 있고, 테스팅을 행하면서 가속되며/되거나 더 정확한 특성화를 수행한다. 온도 측정 능력들은 온도 기반 변화들을 더 정확하게 예측하기 위해 물리 메모리 디바이스들(예를 들어, 다이들)에 내장될 수 있다. 선사용 테스팅(202)으로부터의 데이터는 추세가 분명하면 제조 동안 다수의 상이한 디바이스들 사이에 집합될 수 있다.
저장된 특성화 데이터(203)는 임계값들, 판독/기록 전압 레벨들, 판독/기록 펄스 지속 기간들, 에러 정정 레벨들 등과 같은 다양한 파라미터들을 조정하기 위해 사용 동안 예를 들어 시스템 또는 저장 컨트롤러에 의해 액세스될 수 있다(204). 특성화 데이터가 셀의 서브세트/샘플에 대해 측정될 수 있지만, 파라미터들은 서브세트와 관련된 복수의 셀들, 예를 들어 서브세트와 동일한 물리 메모리 블록 내의 모든 셀들에 영향을 미치는 액세스 동작들을 수정(또는 다른 관리 동작들을 수행)하기 위해 사용될 수 있다. 디바이스는 초기 특성화들 후의 예측들(예를 들어, 폐루프 피드백)을 재특성화하고 재조정할 수 있다. 개별 예측기 기능들의 재조정들 및 가중 조정들은 이전 예측들 대 측정된 데이터의 정확도에 기초하여 수행될 수 있다.
1회 이상 디바이스가 사용된 후에, 사용중의 테스팅 절차(206)는 수명, 환경 조건들, 호스트 특정 워크로드들 또는 특이성들 등과 같은 인자들을 설명하기 위해 저장된 특성화 데이터(203)를 갱신하도록 수행될 수 있다. 특정 조건들(예를 들어, 온도)은 측정될 수 있음과 동시에 사용중의 테스팅은 조건들이 보증되면 임의의 결과들이 조정되거나 가중될 수 있도록 수행된다. 재특성화에 대한 트리거들은 임계 양 또는 크기보다 위의 에러들이 발생된 후에, 또는 주기적으로 시간에 따라 파워온 부트업(power-on boot-up)을 포함할 수 있다.
도 3에서, 그래프(300)는 예시적 실시예에 따른 특성화 파라미터들을 획득하기 위해 사용되는 프로그래밍 신호 응답들을 예시한다. 그래프의 수직 축은 셀의 측정된 저항 값을 나타내고 수평 축은 특정 저항을 셀에 일방향으로 부여하기 위해 사용되는 프로그래밍 펄스를 나타낸다. 펄스 값은 여기서 펄스 면적(예를 들어, 구형파에 대한 전압 곱하기 지속 기간)에 의해 표시된다. 실제 매체에 따라, 펄스 레벨 또는 펄스 지속 기간 중 단 하나는 셀을 프로그램하고 표시된 바와 같은 저항 변화를 야기하기 위해 변경될 수 있다. 게다가, 펄스의 형상은 펄스의 V*sec 면적에 의해 반영되지 않는 상이한 성능 특성들을 야기할 수 있다.
그래프는 예시의 목적들을 위해 제공되고, 실제 셀 성능을 표시하도록 의도되지 않는다는 점이 이해될 것이다. 예를 들어, 곡선(302)은 특정 셀의 성능을 표시하도록 의도되지만, 일부 매체에 대해 곡선은 역경사 형상을 가질 수 있으며/있거나, 요철이거나(jagged) 불연속일 수 있다. 본 논의의 목적들을 위해, 마이너스 펄스(예를 들어, 역전압 극성)는 저항이 곡선을 따라 좌측 방향으로 변화되게 하는 것으로 가정될 수 있다. 그러나, 주어진 셀 타입에 대해, 저항의 변화를 역방향으로 야기하는 곡선은 상당히 다른 형상을 가질 수 있다.
그래프(300)에서, 라인(304)은 셀의 2 비트 값을 구별하기 위해 사용되는 임계 저항 값을 나타내고, 라인들(305, 306)은 셀의 각각의 이론적 최소 및 최대 저항들을 나타낸다. 원하는 저항을 빠르게 설정하기 위해, 저장 컨트롤러는 큰 프로그래밍 펄스 스텝을 사용할 수 있다. 예를 들어 셀이 초기에 최소 저항 값(305)에 또는 근처에 있으면, 그것은 제로로 판독될 수 있다. 셀을 1로 프로그램하기 위해, 수평 축 상의 펄스 값(310)은 값을 설정하기 위해 사용될 수 있다. 단일 레벨 셀에 대해, 심지어 더 큰 값은 정확한 값을 저장하는 한 오버슈팅에 대한 페널티가 거의 없을 수 있으므로 사용될 수 있다. 그러나, 너무 큰 프로그래밍 전압들은 추가 웨어(wear)를 셀에 야기하고, 전력 효율을 감소시킬 수 있다. 셀이 다수의 비트 값들을 저장하면, 이 때 원하는 저항 값을 오버슈팅하는 것은 부정확한 값이 셀에 저장되는 것을 야기할 수도 있다.
오버슈트를 방지하기 위해, 펄스들은 스텝(308)에 의해 표시된 바와 같은 최소 프로그래밍 전압 스텝 및/또는 최소 펄스 지속 기간을 사용하여 서서히 인가될 수 있다. 일반적으로, 최소 스텝(308)의 크기는 오버슈트 없이 저항의 상당한 변화를 보장하기 위해 선택될 수 있다. 저장 컨트롤러는 최소 스텝(308)보다 더 긴 지속 기간들 및/또는 더 큰 전압 스텝들을 사용하여 프로그램할 수 있지만, 컨트롤러는 프로그래밍의 방향마다 적어도 하나의 최소 스텝을 정의할 수 있는 것으로 예상된다.
최소 프로그래밍 스텝(308)은 프로그래밈의 속도 또는 효율을 최적화하는 것에 기초하여 선택될 수 있지만, 그것은 반드시 판독 분해능 및/또는 더 작은 전압/지속 기간이 셀에 측정가능하게 영향을 미치는지에 기초하여 선택될 수 있는 것은 아니다. 예시적 최소 스텝(308) 내의 파선들에 의해 표시된 바와 같이, 컨트롤러는 본 명세서에 설명된 바와 같은 특성화 테스팅을 수행하기 위해 펄스 파라미터들을 시간 및/또는 전압의 더 작은 값들에 증분시키도록 구성될 수 있다. 예시적 실시예에 따른 메모리 셀에 증분 프로그래밍 신호의 인가는 도 4의 블록도에 도시된다.
도 4에서, 하나 이상의 증분 변화 프로그래밍 신호들(400-402)은 메모리 셀(404)에 인가된다. 증분 신호들(400-402)은 최소 프로그래밍 신호 상에 오버레이되는 각각의 블록으로 도시되며, 이는 쇄선들로 도시된다. 신호(400)는 최소 프로그래밍 신호보다 더 짧은 지속 기간을 갖고, 신호(401)는 최소 프로그래밍 신호의 것보다 더 낮은 피크 전압을 가지며, 신호(402)는 최소 프로그래밍 신호보다 더 낮은 피크 전압 및 더 짧은 지속 기간을 둘 다 갖는다.
증분 프로그래밍 신호가 도 4에 도시된 바와 같이 인가된 후에, 저항의 후속 측정들은 도 5에 도시된 바와 같이 이루어질 수 있다. 측정 회로(500)는 적어도 영향을 받은 셀(404), 및 선택적으로 하나 이상의 인접 셀들(502)의 저항을 결정한다. 다른 비인접 셀들이 측정될 수도 있다. 예를 들어, 매체의 일부 또는 전부는 높은 디스터브 커플링을 결정하기 위해 스캔될 수 있다. 측정 회로(500)는 일반적으로 비교적 작은 전압(프로그래밍 전압과 비교됨)을 셀 또는 셀들(404, 502)에 인가하고, 전류 흐름을 측정한다. 대안적 실시예에서, 전류가 셀에 인가될 수 있고 그것을 가로지르는 전압이 측정될 수 있다. 양 실시예들에서, 셀의 저항은 오옴의 법칙, R=E/I를 사용함으로써 계산될 수 있다.
일반적으로, 특성화 테스트는 최소 프로그래밍 신호들을 인가하는 다수의 반복들 및 도 4 및 도 5 각각에 도시된 바와 같은 측정들을 포함할 수 있다. 도 6에서, 그래프(600)는 예시적 실시예에 따른 저항 메모리 셀 특성화 시퀀스를 예시한다. 수평 축은 좌측에서 우측으로 증가하는 시간을 나타낸다. 좌측 상의 수직 축은 인가된 신호들(실선들)에 대한 전압을 나타내고 우측 상의 수직 축은 측정된 저항(쇄선들)을 나타낸다.
프로그래밍 신호들(602-607)의 시퀀스는 선택된 저항 메모리 요소(예를 들어, 셀)에 반복적으로 인가된다. 나중에 인가된 신호들 사이의 차이는 본 명세서에서 "증분 신호"로 지칭된다. 프로그래밍 신호(602)에 의해 도시된 바와 같이, 각각의 신호(602-607)는 피크 전압(Vn) 및 지속 기간(tn)과 연관될 수 있다. 이러한 예에서, tn은 모든 신호들(602-607)에 대해 동일한 것이고, Vn은 각각의 후속 펄스(602-607)에 대해 점점 더 커진다. 따라서, 이러한 예에서의 증분 프로그래밍 신호들은 tn의 지속 기간을 갖고 피크 전압은 후속 Vn(이러한 예에서 시간에 따라 변화될 수 있음)의 차이와 같을 것이다.
일부 또는 전부 Vn의 절대 값이 최소 프로그래밍 스텝 값 아래에 있는 것으로 예상되지만, 각각의 Vn을 수정하기 위해 사용되는 증분 신호들의 피크 전압은 최소 프로그램 전압 스텝 아래에 있다. 예를 들어, 펄스들(605 및 606)의 하나 또는 둘 다는 최소 프로그래밍 전압 스텝보다 더 큰 절대 피크 전압 값을 가질 수 있지만, 둘 사이의 피크 전압 차이는 최소 프로그래밍 전압 스텝 크기 아래에 있다. 증분 신호는 전체 테스트 동안 일정하게 유지될 필요는 없다. 일부 증분 신호들은 신호들(606 및 607)에 의해 도시된 바와 같은 제로 변화, 또는 마이너스 변화(도시되지 않음)를 가질 수 있다.
신호들(602-603)이 인가된 후에, 선택된 메모리 요소의 제 1 저항들(608-613)이 측정된다. 어떤 프로그래밍 신호들도 인가되지 않은(예를 들어, 체류 시간(td)) 제 1 저항들(608-613)의 측정 후의 다른 시간 기간이 경과된 후에, 선택된 메모리 요소의 제 2 저항들(614-619)이 측정된다. 하나의 신호의 인가 및 그것에 대응한 제 1 및 제 2 저항들의 측정은 본 명세서에서 "특성화 절차"로 지칭되고, 특성화 테스트는 특성화 절차의 하나 이상의 반복들을 포함한다. 특성화 절차들은 미리 결정된 프로그래밍 상태가 도달될 때까지 반복적으로 수행될 수 있다. 예를 들어, 최대 또는 최소 프로그래밍 전압 또는 셀 저항이 도달될 수 있다. 다른 예에서, 미리 결정된 수의 반복들은 프로그래밍 상태의 고려 없이 수행될 수 있다.
제 1 및 제 2 저항들(608-613)의 임의의 조합들 사이의 차이들은 선택된 저항 메모리 요소의 특성화 파라미터를 형성하기 위해 사용될 수 있다. 예를 들어, 특성화 절차의 동일한 반복에서의 제 1 저항과 제 2 저항 사이의 저항 차이(△R1)는 선택된 요소, 예를 들어 체류 시간이 경과된 후에 값들이 정착되는지를 특성화하기 위해 사용될 수 있다. 다수의 △R1 값들(예를 들어, 각각의 반복에 대해 하나)은 특성화 파라미터를 형성하기 위해 통계적으로 결합될 수 있다(예를 들어, 평균, 모드, 중간값, 가중 평균, 저항의 함수로서의 곡선 맞춤(curve fit)).
다른 저항 차이(△R2)는 특성화 절차의 상이한 반복들 사이의 제 1 저항들의 변화들(예를 들어, 차트(600)에서 제 1 저항들(610 및 611, 610 및 612 등) 사이의 변화)을 나타낸다. 프로그래밍 신호의 증분 값들과 함께, △R2의 값은 도 3에 도시된 바와 같은 곡선의 적어도 일부를 결정하기 위해 사용될 수 있다. 유사한 △R2(도시되지 않음)는 특성화 절차의 상이한 반복들 사이의 제 2 저항들의 변화들(예를 들어, 차트(600)에서 제 2 저항들(614 및 615) 사이의 변화)을 결정함으로써 발견될 수 있다. 다수의 △R2 값들(예를 들어, 각각의 반복에 대해 하나)은 특성화 파라미터를 형성하기 위해 통계적으로 결합될 수 있다(예를 들어, 평균, 모드, 중간값, 가중 평균, 저항의 함수로서의 곡선 맞춤).
도 6에 도시된 절차는 다수의 방식들로 변화될 수 있다. 예를 들어, 상이한 신호들(602-607)은 변화하는 tn, 상이한 펄스 형상들 등을 포함하는, 여기에 예시된 것보다 가능하다. 증분 시간 값이 정의되면, 이 때 인가된 신호들의 형상은 피크 전압을 변화시키는 것 없이(또는 피크 전압의 변화에 더하여) 더 넓어질 수 있다(더 긴 지속 기간). 유사한 점진적 변화는 예를 들어 삼각파에서 구형파로 서서히 전이되는 펄스들의 형상에 적용되고, 그 역도 또한 마찬가지일 수 있다. 그러한 경우에, 신호들(602-607)의 각각의 인가에 대한 펄스 형상의 변화를 나타내는 후속 신호들을 야기하는 신호에 수학적으로 추가될 수 있는 증분 신호가 정의될 수 있다. 이러한 증분 신호는 저항 메모리 요소들을 프로그래밍하는데 통상적으로 사용되는 각각의 최소 프로그래밍 시간 또는 최소 프로그래밍 전압 스텝 미만인 지속 기간 및 피크 전압 중 적어도 하나를 갖는다.
다른 변형들에서, 인접 메모리 셀들/요소들(예를 들어, 메모리 선택된 요소에 물리적으로 근접한 셀들)의 제 3(및 선택적으로 제 4) 저항들은 선택된 메모리 요소에 인가되는 신호들(602-607)에 대응하여 측정될 수 있다. 제 3 및/또는 제 4 저항들은 예를 들어 신호들(602-607)이 선택된 메모리 요소에 인가되는 것에 대응하여 선택된 메모리 요소의 제 1 및 제 2 저항들(608-613)의 하나 또는 둘 다와 동일한 또는 유사한 시간들에서 측정될 수 있다. 인접 메모리 요소들의 이들 제 3 및/또는 제 4 저항 값들은 데이터의 블록이 인접 셀들에서의 활동으로 인해 상당한 방해를 나타내는지를 판단하기 위해 사용될 수 있다.
도 6에 도시된 것과 같은 절차를 사용하여 발견되는 저장된 특성화 데이터는 반복가능하지만 정정가능한 에러를 나타낼 수 있으며, 그 경우 프로그래밍 및 판독 동작들과 같은 액세스 동작들은 데이터 에러들을 최소화하기 위해 적응될 수 있다. 상당한 △R2와 같은 일부 인자들은 셀 내의 웨어 또는 결함들을 나타낼 수 있다. 그러한 경우에, 특성화 데이터는 저항 메모리 요소들의 장기적인 저하를 예측하는데 사용될 수 있다. 이들 데이터는 미국 공개 제2010/0061207호에서 설명된 것과 같은 디바이스 고장 및 웨어아웃(wearout)을 예측하기 위해 SMART와 같은 자체 감시 특징들과 함께 사용될 수 있다.
예를 들어, 특정 응답 불일치들은 메모리 셀들의 이른 에이징을 나타낼 수 있다. 이에 대응하여, 에러 정정 코드들 및/또는 리던던시는, 메모리 셀과 함께 사용되는 에러 정정 코드의 길이를 적용함으로써와 같이, 저항 메모리 요소들과 함께 사용된다. 셀들에 콜드 데이터(예를 들어, 소수의 판독/기록 활동을 참조하는 데이터)를 저장함으로써와 같이 셀들이 이른 웨어/에이징을 나타내면, 저항 메모리 요소들의 웨어는 관리될 수도 있다. 서비스 품질은 이른 웨어/에이징을 나타내는 저항 메모리 요소들에 할당될 수 있다. 이것은 그것의 신뢰성이 의심되면, 및/또는 셀에 저장된 데이터를 판독하는 것이 과도한 양의 시간을 취한다면, 임계적 데이터가 셀 상에 저장되지 않는 것을 보장할 수 있다.
이제 도 7-도 10을 참조하면, 히스토그램들은 셀들의 모집단이 본 명세서에 설명된 테스트들에 기초하여 어떻게 특성화될 수 있는지의 예들을 예시한다. 도 7-도 10 모두의 수평 축들은 도 3의 곡선(302)과 같은 곡선 상에 적어도 하나의 지점의 경사를 나타내는 비율들이다. 이 경우에 △R은 도 6에 도시된 △R1 또는 △R2일 수 있다. △V-s/△R의 값들은 예를 들어 곡선(302)의 비선형성을 설명하기 위해 정규화될 수 있다. 도 7-도 10의 모두에서, 쇄선들은 값들의 허용가능 범위를 표시한다. 도 7의 히스토그램은 값들의 정규(가우스) 분포를 나타낸다. 도 8에서, 값들은 정규이지만 왜곡된다. 도 9 및 도 10의 히스토그램들은 비정규 분포들이다.
도 7-도 10의 값들의 분포는 저항 메모리 셀들의 장기적인 저하 또는 다른 인자들을 표시할 수 있다. 허용가능 범위들 외에 있는 셀들은 허용가능 범위 내의 것들과 비교하여 인가되는 상이한 프로그래밍 및/또는 판독 신호들을 가질 수 있다. 허용가능 범위들 외에 있는 셀들은 적응 에러 정정 코드들을 이용하여 관리되고, 증가 리던던시가 제공되고, 거의 저항 메모리 요소의 웨어에 영향을 받고, 상이한 서비스 품질 메트릭을 할당받는 등일 수 있다.
이제 도 11을 참조하면, 흐름도는 예시적 실시예에 따른 방법을 예시한다. 증분 신호(또는 신호 세트)는 1100으로 정의된다. 증분 신호는 저항 메모리 요소의 최소 프로그래밍 시간 또는 최소 프로그래밍 전압 스텝 미만인 지속 기간 및 피크 전압의 적어도 하나를 갖는다. 증분 신호는 메모리 요소들의 그룹에 인가되는 특성화 절차에 사용된다. 특성화 절차는 루프 제한 후에 개시하며(1102), 이는 각각의 요소를 통해 반복한다.
신호는 증분 프로그래밍 신호에 의해 증분된다(1104). 처음에, 신호는 증분 프로그래밍 신호에 동등하게 설정될 수 있다. 이후의 반복들에 대해, 증분 프로그래밍 신호의 전압, 형상, 및/또는 지속 기간은 이전 신호에 부가된다. 신호는 현재 선택된 저항 메모리 요소에 인가되고(1106), 저항 메모리 요소 제 1 저항은 신호에 대응하여 측정된다(1108).
절차는 제 1 저항이 측정될 때부터(1108) 개시하는 시간 기간 동안 대기하며(1110), 이 동안 어떤 프로그래밍 신호도 인가되지 않는다. 그 후에, 저항 메모리 요소의 제 2 저항이 측정된다(1112). 블록(1114)에서, 타겟 상태가 도달되는지가 판단되고(예를 들어, 타겟 저항, 타겟 전압, 변화의 타겟 레이트, 반복들의 수), 그렇지 않으면, 특성화 절차가 반복된다.
타겟 상태가 도달되면, 특성화 절차의 저항 측정들은 저항 메모리 요소의 특성화 파라미터를 형성하기 위해 사용되고(1116), 결과들은 이후의 사용을 위해 데이터베이스에 저장된다(1118). 분석할 더 많은 메모리 요소들이 있는 것이 결정되면(1120), 이 때 특성화 절차는 이들 부가 요소들에 대한 특성화 파라미터들을 결정하기 위해 사용된다.
이제 도 12를 참조하면, 흐름도는 예시적 실시예에 따른 방법을 예시한다. 방법은 계수들을 결정하기 위해 저항 메모리를 특성화하는 단계(1200)를 포함한다. 특성화(1200)는 예를 들어, 신호를 저항 메모리 요소들에 인가하고, 신호의 피크 전압이 최소 프로그래밍 전압 스텝 미만인 증분 전압만큼 증분되는 것을 포함할 수 있다. 그러한 경우에, 선택된 요소의 제 1 저항은 신호가 인가되는 것에 대응하여 측정되고, 제 2 저항은 어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 제 1 저항의 측정으로부터 경과된 후 측정된다. 제 1 및 제 2 저항들은 다른 것들 중에서, 계수들을 형성하기 위해 사용될 수 있다. 예를 들어, 계수들은 특성화 절차의 상이한 반복들 사이의 제 1 저항들의 변화들과 특성화 절차의 상이한 반복들 사이의 제 2 저항들의 변화들에 기초할 수 있다 . 다른 예에서, 계수들은 특성화 절차의 동일한 반복의 제 1 저항과 제 2 저항 사이의 차이에 기초할 수 있다.
방법은 데이터 스토어(예를 들어, 도 1의 데이터 스토어(124))에서 계수들을 갱신하는 단계(1202)를 더 포함한다. 그 후, 데이터 스토어에서의 계수들은 성능을 개선하기 위해 메모리를 동작시킬 때 이용될 수 있다(1204). 예를 들어, 계수들은 저항 메모리 요소들의 장기적인 저하를 예측하고; 저항 메모리 요소들과 함께 사용되는 에러 정정 코드들을 관리하고; 저항 메모리 요소들과 함께 사용되는 리던던시를 관리하고; 저항 메모리 요소들의 웨어를 관리하며/하거나; 저항 메모리 요소들에 서비스 품질을 할당하기 위해 사용될 수 있다. 때때로, 성능이 현재의 계수들과 함께 저하되는지가 판단될 수 있다(1206). 그렇다면, 특성화(1200) 및 갱신(1202)이 반복될 수 있다.
상술된 다양한 실시예들은 특정 결과들을 제공하기 위해 상호 작용하는 회로조직 및/또는 소프트웨어 모듈들을 이용하여 구현될 수 있다. 컴퓨팅 분야에서의 기술자는 본 기술 분야에 일반적으로 알려진 지식을 이용하여 모듈러 레벨에서 또는 전체로서, 그렇게 설명된 기능성을 용이하게 구현할 수 있다. 예를 들어, 본 명세서에 예시된 흐름도들은 프로세서에 의한 실행을 위한 컴퓨터 판독가능 명령어들/코드를 생성하기 위해 사용될 수 있다. 그러한 명령어들은 본 기술 분야에 알려진 바와 같이 실행을 위한 컴퓨터 판독가능 매체 상에 저장되고 프로세서에 전송될 수 있다. 상기 도시된 구조들 및 절차들은 상술한 바와 같은 데이터 저장 디바이스들에서의 캐싱을 관리하는 것을 용이하게 하기 위해 사용될 수 있는 단지 실시예들의 대표적인 예이다.
예시적 실시예들의 이전 설명은 예시 및 설명의 목적들을 위해 제공되었다. 그것은 소모적이거나 본 발명의 개념들을 개시된 정확한 형태에 제한하도록 의도되지 않는다. 많은 수정들 및 변형들은 상기 교시를 고려하여 가능하다. 개시된 실시예들의 어느 하나 또는 모든 특징들은 개별적으로 또는 임의의 조합으로 적용될 수 있거나 제한적인 것으로 의미되는 것이 아니라, 순전히 예시적인 것으로 의미된다. 범위는 이 상세한 설명으로 제한되는 것이 아니라, 오히려 이것에 첨부된 청구항들에 의해 결정되도록 의도된다.

Claims (20)

  1. 방법으로서,
    저항 메모리 요소의 각각의 최소 프로그래밍 시간 또는 최소 프로그래밍 전압 스텝 미만인 지속 기간 및 피크 전압 중 적어도 하나를 포함하는 증분 신호를 정의하는 단계;
    신호를 상기 저항 메모리 요소에 인가하고, 상기 신호는 각각의 후속 인가 동안 상기 증분 신호만큼 증분되는 것;
    상기 신호에 대응하여 상기 저항 메모리 요소의 제 1 저항을 측정하는 것; 및
    어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 상기 제 1 저항의 측정으로부터 경과된 후에 상기 저항 메모리 요소의 제 2 저항을 측정하는 것을 포함하는 특성화 절차를 반복적으로 수행하는 단계;
    상기 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여 상기 저항 메모리 요소의 특성화 파라미터를 형성하는 단계; 및
    상기 특성화 파라미터를 사용하여 상기 저항 메모리 요소에 영향을 미치는 데이터 액세스 동작을 수정하는 단계를 포함하는 방법.
  2. 청구항 1에 있어서, 상기 특성화 파라미터는,
    상기 특성화 절차의 상이한 반복들 사이의 제 1 저항들의 변화들; 및
    상기 특성화 절차의 상이한 반복들 사이의 제 2 저항들의 변화들 중 적어도 하나에 기초하는 방법.
  3. 청구항 1에 있어서, 상기 특성화 파라미터는 상기 특성화 절차의 동일한 반복으로 측정되는 제 1 저항과 제 2 저항 사이의 적어도 하나의 차이에 기초하는 방법.
  4. 청구항 1에 있어서, 상기 방법은 장치가 서비스에 들어가기 전에 상기 저항 메모리 요소를 포함하는 장치의 테스트에 수행되는 방법.
  5. 청구항 1에 있어서, 상기 방법은 장치의 사용자 동작 동안 수행되며, 상기 장치는 상기 저항 메모리 요소를 포함하는 방법.
  6. 청구항 1에 있어서, 상기 특성화 절차는 미리 결정된 프로그래밍 상태가 도달될 때까지 반복되는 방법.
  7. 청구항 1에 있어서,
    상기 저항 메모리 요소의 장기적인 저하를 예측하는 단계;
    상기 저항 메모리 요소와 함께 사용되는 에러 정정 코드들을 관리하는 단계;
    상기 저항 메모리 요소와 함께 사용되는 리던던시를 관리하는 단계;
    상기 저항 메모리 요소의 웨어를 관리하는 단계; 및
    서비스 품질을 상기 저항 메모리 요소에 할당하는 단계 중 적어도 하나를 수행하기 위해 상기 특성화 파라미터를 이용하는 단계를 더 포함하는 방법.
  8. 청구항 7에 있어서, 상기 저항 메모리 요소는 복수의 메모리 셀들의 선택된 메모리 셀을 포함하고, 상기 특성화 파라미터는 상기 복수의 메모리 셀들의 모두에 영향을 미치는 데이터 액세스 동작을 수정하기 위해 사용되는 방법.
  9. 청구항 1에 있어서, 상기 특성화 절차는 상이한 온도들 하에 반복되는 방법.
  10. 청구항 1에 있어서, 상기 특성화 절차는 상기 신호가 상기 저항 메모리 요소에 인가되는 것에 대응하여 인접 저항 메모리 요소의 제 3 저항을 측정하는 단계를 더 포함하며, 상기 특성화 파라미터는 상기 제 3 저항에 더 기초하여 형성되는 방법.
  11. 청구항 10에 있어서, 상기 저항 메모리 요소 및 인접 저항 요소는 메모리 블록의 일부이며, 상기 방법은,
    상기 메모리 블록의 장기적인 저하를 예측하는 단계;
    상기 메모리 블록으로 지향되는 판독 또는 기록 동작들을 수정하는 단계;
    상기 메모리 블록과 함께 사용되는 에러 정정 코드들을 관리하는 단계;
    상기 메모리 블록과 함께 사용되는 리던던시를 관리하는 단계;
    상기 메모리 블록의 웨어를 관리하는 단계; 및
    서비스 품질을 상기 메모리 블록에 할당하는 단계 중 적어도 하나를 수행하기 위해 상기 특성화 파라미터를 이용하는 단계를 더 포함하는 방법.
  12. 청구항 1에 있어서, 상기 증분 신호는 상기 특성화 절차의 각각의 반복에 대한 증분 전압만큼 증가되는 방법.
  13. 장치로서,
    복수의 저항 메모리 요소들에 결합되고,
    상기 복수의 저항 메모리 요소들의 선택된 요소에 인가하고, 상기 신호의 피크 전압은 상기 선택된 요소의 최소 프로그래밍 전압 스텝 미만인 증분 전압만큼 증분되는 것;
    상기 신호가 적용되는 것에 대응하여 상기 선택된 요소의 제 1 저항을 측정하는 것; 및
    어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 상기 제 1 저항의 측정으로부터 경과된 후에 상기 선택된 요소의 제 2 저항을 측정하는 것을 포함하는 특성화 절차를 반복적으로 수행하도록 구성될 수 있는 컨트롤러를 포함하며;
    상기 컨트롤러는 상기 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여 상기 선택된 요소에 영향을 미치는 데이터 액세스 동작을 수정하도록 더 구성되는 장치.
  14. 청구항 13에 있어서, 상기 데이터 액세스 동작은,
    상기 특성화 절차의 상이한 반복들 사이의 제 1 저항들의 변화들; 및
    상기 특성화 절차의 상이한 반복들 사이의 제 2 저항들의 변화들 중 적어도 하나를 사용하여 수정되는 장치.
  15. 청구항 13에 있어서, 상기 데이터 액세스 동작은 상기 특성화 절차의 동일한 반복의 제 1 저항과 제 2 저항 사이의 차이를 사용하여 수정되는 장치.
  16. 청구항 13에 있어서, 상기 컨트롤러는,
    상기 저항 메모리 요소들의 장기적인 저하를 예측하는 것;
    상기 저항 메모리 요소들과 함께 사용되는 에러 정정 코드들을 관리하는 것;
    상기 저항 메모리 요소들과 함께 사용되는 리던던시를 관리하는 것;
    상기 저항 메모리 요소들의 웨어를 관리하는 것; 및
    서비스 품질을 상기 저항 메모리 요소들에 할당하는 것 중 적어도 하나를 수행하기 위해 상기 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여 더 구성되는 장치.
  17. 청구항 13에 있어서, 상기 특성화 절차는 상기 신호가 상기 선택된 요소에 인가되는 것에 대응하여 인접 요소의 제 3 저항을 측정하는 것을 더 포함하고, 상기 컨트롤러는 상기 특성화 절차의 제 3 저항 측정들에 대응하여 상기 선택된 요소에 영향을 미치는 데이터 액세스 동작을 수정하도록 더 구성되는 장치.
  18. 청구항 13에 있어서, 상기 특성화 절차는 상기 선택된 요소의 미리 결정된 프로그래밍 상태가 도달될 때까지 반복되는 장치.
  19. 장치로서,
    복수의 저항 메모리 요소들에 결합되고,
    신호를 상기 복수의 저항 메모리 요소들의 선택된 요소에 인가하고, 상기 신호의 지속 기간은 각각의 후속 인가 동안 상기 선택된 요소의 최소 프로그래밍 시간 미만인 양만큼 증분되는 것;
    상기 신호가 인가되는 것에 대응하여 상기 선택된 요소 내의 제 1 저항을 측정하는 것;
    어떤 프로그래밍 신호도 인가되지 않은 상태에서 시간 기간이 상기 제 1 저항의 측정으로부터 경과된 후에 상기 선택된 요소 내의 제 2 저항을 측정하는 것을 포함하는 특성화 절차를 반복적으로 수행하도록 구성될 수 있는 컨트롤러를 포함하며;
    상기 컨트롤러는 상기 특성화 절차의 제 1 및 제 2 저항 측정들에 대응하여 상기 선택된 요소에 영향을 미치는 데이터 액세스 동작을 수정하는 것을 수행하도록 더 구성되는 장치.
  20. 청구항 19에 있어서, 상기 신호는 상기 특성화 절차의 각각의 반복에 대한 증분 전압만큼 더 증가되며, 상기 증분 전압은 상기 선택된 요소의 최소 프로그래밍 전압 스텝 미만인 장치.
KR1020140022661A 2013-03-07 2014-02-26 저항 메모리 요소의 특성화 파라미터의 형성 KR101545560B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/789,123 US9105360B2 (en) 2013-03-07 2013-03-07 Forming a characterization parameter of a resistive memory element
US13/789,123 2013-03-07

Publications (2)

Publication Number Publication Date
KR20140110737A KR20140110737A (ko) 2014-09-17
KR101545560B1 true KR101545560B1 (ko) 2015-08-21

Family

ID=51489360

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140022661A KR101545560B1 (ko) 2013-03-07 2014-02-26 저항 메모리 요소의 특성화 파라미터의 형성

Country Status (3)

Country Link
US (1) US9105360B2 (ko)
JP (1) JP6262025B2 (ko)
KR (1) KR101545560B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9792998B1 (en) * 2016-03-29 2017-10-17 Sandisk Technologies Llc System and method for erase detection before programming of a storage device
CN116665735A (zh) 2016-09-21 2023-08-29 合肥睿科微电子有限公司 存储装置
US10026478B1 (en) 2017-03-03 2018-07-17 Sandisk Technologies Llc Biasing scheme for multi-layer cross-point ReRAM
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
US11256778B2 (en) 2019-02-14 2022-02-22 Micron Technology, Inc. Methods and apparatus for checking the results of characterized memory searches
US11327551B2 (en) * 2019-02-14 2022-05-10 Micron Technology, Inc. Methods and apparatus for characterizing memory devices
US10867655B1 (en) 2019-07-08 2020-12-15 Micron Technology, Inc. Methods and apparatus for dynamically adjusting performance of partitioned memory
US20220367808A1 (en) * 2019-11-15 2022-11-17 Jun-Sung Kim Composition for memory cell containing chalcogen compound, structure thereof, method for manufacturing same, and method for operating same
US11449577B2 (en) 2019-11-20 2022-09-20 Micron Technology, Inc. Methods and apparatus for performing video processing matrix operations within a memory array
US11853385B2 (en) 2019-12-05 2023-12-26 Micron Technology, Inc. Methods and apparatus for performing diversity matrix operations within a memory array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006073010A (ja) 2004-09-02 2006-03-16 Hewlett-Packard Development Co Lp プログラム可能な抵抗メモリ素子のプログラミング
JP2008217889A (ja) 2007-03-02 2008-09-18 Elpida Memory Inc 相変化メモリのプログラム方法と読み出し方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4129170B2 (ja) * 2002-12-05 2008-08-06 シャープ株式会社 半導体記憶装置及びメモリセルの記憶データ補正方法
US7092290B2 (en) * 2004-11-16 2006-08-15 Sandisk Corporation High speed programming system with reduced over programming
JP4696715B2 (ja) * 2005-06-21 2011-06-08 ソニー株式会社 記憶装置及び記憶装置の駆動方法
CN102077296B (zh) * 2009-06-08 2014-04-02 松下电器产业株式会社 电阻变化型非易失性存储元件的成形方法及电阻变化型非易失性存储装置
WO2010143414A1 (ja) * 2009-06-08 2010-12-16 パナソニック株式会社 抵抗変化型不揮発性記憶素子の書き込み方法および抵抗変化型不揮発性記憶装置
US8238149B2 (en) 2009-06-25 2012-08-07 Macronix International Co., Ltd. Methods and apparatus for reducing defect bits in phase change memory
US8264895B2 (en) 2009-11-30 2012-09-11 Qualcomm Incorporated Resistance based memory circuit with digital sensing
US8233345B2 (en) 2010-09-08 2012-07-31 International Business Machines Corporation Phase change memory cycle timer and method
US8699258B2 (en) * 2011-01-21 2014-04-15 Macronix International Co., Ltd. Verification algorithm for metal-oxide resistive memory
KR20130043469A (ko) * 2011-10-20 2013-04-30 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그의 라이트 제어방법
US9378792B2 (en) * 2011-12-15 2016-06-28 Everspin Technologies, Inc. Method of writing to a spin torque magnetic random access memory
US8804399B2 (en) * 2012-03-23 2014-08-12 Micron Technology, Inc. Multi-function resistance change memory cells and apparatuses including the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006073010A (ja) 2004-09-02 2006-03-16 Hewlett-Packard Development Co Lp プログラム可能な抵抗メモリ素子のプログラミング
JP2008217889A (ja) 2007-03-02 2008-09-18 Elpida Memory Inc 相変化メモリのプログラム方法と読み出し方法

Also Published As

Publication number Publication date
JP6262025B2 (ja) 2018-01-17
US9105360B2 (en) 2015-08-11
JP2014175039A (ja) 2014-09-22
US20140258646A1 (en) 2014-09-11
KR20140110737A (ko) 2014-09-17

Similar Documents

Publication Publication Date Title
KR101545560B1 (ko) 저항 메모리 요소의 특성화 파라미터의 형성
US9349444B2 (en) Methods and apparatuses using a transfer function to predict resistance shifts and/or noise of resistance-based memory
US10613781B2 (en) Apparatus and method for determining an operating condition of a memory cell based on cycle information
JP5321928B2 (ja) 相変化メモリの読み出し分布管理
KR102599047B1 (ko) 데이터 신뢰성을 향상한 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 컨트롤러의 동작방법
KR101591694B1 (ko) 가변 저항 메모리 셀들을 위한 ecc 관리
US20120239991A1 (en) Apparatus and method for determining an operating condition of a memory cell based on cycle information
JP2014164793A5 (ko)
US20170358369A1 (en) Reference voltage calibration in memory during runtime
JP2014154206A (ja) 可変抵抗メモリセルを備える装置および可変抵抗メモリセルの最適化方法
KR20140100897A (ko) 메모리 셀들의 저항 변화를 역전시키기 위하여 바이어스 신호를 메모리 셀들에 인가하기
GB2510339A (en) Method and apparatus for read measurement of a plurality of resistive memory cells
CN111316362A (zh) 存储器装置上的可配置修整设置
KR102610821B1 (ko) 내구성 저하를 판단하는 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 컨트롤러의 동작방법
JP6439896B1 (ja) メモリ書き込み制御装置及び不揮発性メモリの不良判定方法
CN112365908A (zh) 温度辅助的nand闪存管理
US20220415412A1 (en) Determining threshold values for voltage distribution metrics
US9312029B2 (en) Memory device and associated controlling method
US11238950B1 (en) Reliability health prediction by high-stress seasoning of memory devices
CN117461082A (zh) 存储器占空比偏斜管理
US20240069785A1 (en) Host data storage scan data retention rating
US20230395170A1 (en) Adaptive calibration for threshold voltage offset bins
US11810631B2 (en) Data integrity checks based on voltage distribution metrics
US20240177795A1 (en) Dynamic read calibration
WO2012015438A1 (en) Memory element and method for determining the data state of a memory element

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee