KR20160030386A - 메모리 장치용 웨어 레벨링 - Google Patents

메모리 장치용 웨어 레벨링 Download PDF

Info

Publication number
KR20160030386A
KR20160030386A KR1020160002050A KR20160002050A KR20160030386A KR 20160030386 A KR20160030386 A KR 20160030386A KR 1020160002050 A KR1020160002050 A KR 1020160002050A KR 20160002050 A KR20160002050 A KR 20160002050A KR 20160030386 A KR20160030386 A KR 20160030386A
Authority
KR
South Korea
Prior art keywords
memory
memory device
wear leveling
data
memory cells
Prior art date
Application number
KR1020160002050A
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 KR20160030386A publication Critical patent/KR20160030386A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Abstract

메모리 장치에서 웨어 레벨링 동작을 용이하게 하기 위한 메모리 장치 및 방법. 한 가지 그와 같은 방법에서, 특정 블록의 메모리 셀들이 상기 메모리 장치에서 수행되는 웨어 레벨링 동작으로부터 배제된다. 적어도 한 방법에서, 사용자가 상기 메모리 장치의 나머지 블록에서 수행되는 웨어 레벨링 동작으로부터 배제될 메모리 블록을 선택한다. 웨어 레벨링 동작이 배제될 상기 선택된 블록을 사용자가 직접 또는 간접으로 식별하는 명령에 응답하여, 선택된 메모리 블록은 웨어 레벨링 동작이 배제된다.

Description

메모리 장치용 웨어 레벨링{WEAR LEVELING FOR A MEMORY DEVICE}
본 발명은 일반적으로 반도체 메모리에 대한 것이며, 특히, 하나 또는 그 이상의 실시 예에서, 본 발명은 비휘발성 메모리 장치에서 메모리 셀들의 웨어 레벨링에 대한 것이다.
메모리 장치는 대개 컴퓨터 또는 다른 전자 장치에서 내부(중앙처리장치 내부), 반도체, 집적회로로서 제공된다. 랜덤 액세스 메모리(RAM), 전용 메모리(ROM), 동적 랜덤 액세스 메모리(DRAM), 동기식 동적 랜덤 액세스 메모리(SDRAM), 그리고 플래시 메모리를 포함한 많은 다른 유형의 메모리가 있다.
플래시 메모리 장치는 광범위 전자 응용을 위해 비휘발성 메모리의 인기있는 자원으로 개발되어 왔다. 비휘발성 메모리는 전력의 인가 없이 일정 장시간 동안 그 저장된 데이터를 유지할 수 있는 메모리이다. 플래시 메모리 그리고 다른 비휘발성 메모리의 일반적인 용도로는 개인용 컴퓨터, 개인 휴대 정보 단말기(PDA), 디지털 카메라, 디지털 미디어 플레이어, 디지털 녹음기, 게임, 가전제품, 자동차, 무선 장치, 휴대 전화기 및 이동식 메모리 모듈을 포함하며, 비휘발성 메모리의 이 같은 용도는 계속해서 확장되고 있다.
플래시 메모리 장치는 대개 높은 메모리 밀도, 높은 신뢰도, 그리고 낮은 전력 소모를 허용하는 하나의 트랜지스터 메모리 셀을 사용한다. 셀의 한계 전압 변경은, 전하 충전 구조(예를 들면, 부동 게이트 또는 전하 트랩) 또는 다른 물리적 현상(예를 들면, 상변환 또는 편광)의 프로그래밍(가끔 기록으로 칭하여진다)을 통하여, 셀 각각의 데이터 상태를 결정한다. 데이터는 판독 동작을 수행함에 의해 메모리 셀로부터 판독될 수 있다. 메모리 셀은 대개 삭제 및 프로그래밍 사이클을 사용하여 프로그램된다. 예를 들면, 특정 블록의 메모리 셀들 중 메모리 셀들이 먼저 삭제되고 다음에 선택적으로 프로그램된다.
이들 프로그램/삭제 사이클은 메모리 셀의 웨어(wear)가 발생하는 원인이 된다. 메모리 셀이 웨어됨에 따라, 옥사이드 열화(oxide degradation), 성능 저하 그리고 고장의 증가와 같은 문제가 발생 될 수 있다. 프로그램/삭제 사이클의 수는 또한 메모리 셀의 데이터 유지 특징에 영향을 미칠 수 있다. 예를 들면, 전형적인 메모리 셀은 20년의 데이터 유지 수명 또는 100,000 프로그램/삭제 사이클 동안 특정 수준의 신뢰도를 갖는다. 그러나, 메모리 셀의 기대 데이터 유지는 메모리 셀에서 수행된 프로그램/삭제 사이클 수가 증가함에 따라 줄어든다. 메모리 장치가 사용된 적용에서는 대개 데이터 유지 또는 프로그램/삭제 사이클의 높은 수가 사용자에게 더욱 주요함을 요청한다. 이 같은 웨어 문제들을 해결하기 위해 다양한 데이터 관리 방법이 사용되고 있다. 웨어 레벨링 방법(예를 들면, 동작)으로 대개 칭하여지는 방법이 메모리 셀에서 수행되어 메모리 장치에서 이 같은 웨어 문제들을 해결하도록 한다. 일반적으로, 웨어 레벨링(wear leveling)이라 함은 데이터를 이동시키고 및/또는 메모리 장치에서 이 같은 웨어 영향을 분산할 목적으로 데이터가 메모리 장치 내 어디에 저장될 것인가를 조정하는 것을 칭하는 것이다.
웨어 레벨링 동작의 한 타입은 동적 웨어 레벨링이며 전형적으로 메모리 장치를 사용하여 한 호스트 시스템(예를 들면, 처리기)에 의해 관리된다. 이 같은 호스트 시스템은 특정 메모리 위치가 메모리 장치 내 다른 메모리 위치보다 더욱 많은 프로그램/삭제 사이클을 경험하고 있는 가를 결정하기 위해 메모리 장치에서의 메모리 사용을 모니터하는 것이다. 따라서, 상기 호스트 시스템은 특정 메모리 위치가 메모리 장치 내 다른 메모리 위치와 비교하여 경험하는 프로그램/삭제 사이클의 수를 줄이기 위해 메모리 장치 내 메모리 위치의 어드레싱을 동적으로 조정한다.
웨어 레벨링 동작의 또 다른 타입은 정적 웨어 레벨링으로서, 이는 동적 웨어 레벨링에서와 같이 특정 메모리 위치가 사용되는 것에 초점을 맞추는 것이 아니며, 일정한 방법으로 웨어 레벨링 동작을 수행하는 것이다. 정적 웨어 레벨링은 기본적으로 예를 들면, 상기 호스트 시스템이 메모리 내 특정 위치에 얼마나 자주 액세스하는 가와는 무관하게 동작한다.
동적 또는 정적 웨어 레벨링 방법 어느 방법이 사용되든, 수정되지 않는(예를 들면, 변경되거나 갱신되지 않는) 메모리 장치 내에 저장된 데이터는 여전히 한 메모리 위치에서 다른 메모리 위치로 이동될 수 있다. 데이터의 이 같은 이동은 결국 상기 설명한바와 같은 데이터 유지 특성에 원하지 않은 불이익을 가져올 수 있는 추가의 프로그램/삭제 사이클을 발생시킨다.
상기 설명한 이유로 인해, 그리고 본 발명 개시내용을 읽고 이해한다면 당업자에게 명백할 다음에 설명하는 다른 이유로 인해, 메모리 장치에서 웨어 레벨링 동작을 관리하기 위한 다른 방법이 필요한 것이다.
도 1은 NAND 구성 메모리 셀 어레이를 개략적으로 도시한 도면이다.
도 2는 NOR 구성 메모리 셀 어레이를 개략적으로 도시한 도면이다.
도 3은 메모리 셀의 수(population)로 임계 전압 레인지를 그래프로 도시한 도면이다.
도 4는 다수의 파티션(partitions)을 가지며 전자 시스템의 부분으로서 한 호스트에 연결된 메모리를 도시한 도면이다.
도 5는 본 발명의 한 실시 예에 따라 메모리 장치의 간략 블록 다이어그램을 도시한 도면이다.
도 6은 본 발명의 한 실시 예에 따른 한 지시에 대한 블록 다이어그램을 도시한 도면이다.
도 7은 본 발명의 한 실시 예에 따른 전자 시스템의 일부로서 호스트에 결합된 메모리 장치의 간략 블록 다이어그램을 도시한 도면이다.
본 발명의 다음 상세한 설명에서, 상세한 설명의 일부를 구성하는 도면을 참조로 하며, 동 도면에서는 본 발명이 실시되는 특정 실시 예가 설명을 목적으로 도시된다. 도면에서, 유사 번호가 여러 도면에서 실질적으로 유사한 컴포넌트를 설명한다. 이들 실시 예들은 당업자가 본 발명을 실시 할 수 있을 정도로 상세히 설명된다. 다른 실시 예들이 사용될 수 있으며 본 발명 개시 범위를 벗어나지 않는 한도에서 구조적, 논리적, 그리고 전기적 변경이 가능하다. 따라서 다음 상세한 설명은 본 발명을 제한하는 의미로 해석해서는 않 된다.
플래시 메모리는 대개 NAND 플래시 및 NOR 플래시로 알려진 두 개의 기본 아키텍쳐 중 하나를 사용한다. 이 같은 지정은 메모리 장치를 판독하기 위해 사용된 논리로부터 유도된다. 도 1은 NAND 타입 플래시 메모리 어레이 아키텍쳐(100)를 도시하며, 여기서 메모리 어레이의 메모리 셀(102)은 행렬 어레이로 논리적으로 배열된다. 통상의 NAND 플래시 아키텍쳐에, "행"은 공통적으로 연결된 제어 게이트(120)를 갖는 메모리 셀들을 지칭하며, "열"은 예를 들면 특정 스트링의 메모리 셀(108)로서 연결된 메모리 셀들을 지징한다. 상기 어레이의 메모리 셀들(102)은 전형적으로 8, 16, 32 또는 그 이상의 스트링(예를 들면, NAND 스트링)으로 함께 배열된다. 한 스트링의 메모리 셀 각각은 소스에서 드레인으로, 비트 라인으로 자주 칭해지는, 소스 라인(114)과 데이터 라인(116) 사이에서 직렬로 함께 연결된다. 상기 어레이는 예를 들면 WL7-WL0 1187-0과 같은, 자주 워드 라인으로 칭해지는, 특정 액세스 라인을 선택함에 의해, 한 논리 행의 메모리 셀들을 작동시키는 행 디코더(도시되지 않음)에 의해 액세스된다. 워드 라인(118) 각각은 한 행의 메모리 셀들 제어 게이트에 연결된다. 비트 라인(BL1 -BL4 1161-4)은 상기 어레이에서 수행되는 동작 타입에 따라 하이 또는 로우로 구동될 수 있다. 이들 비트 라인들(BL1-BL4 1161-4)은 예를 들면 특정 비트 라인(116)에서의 전압 또는 전류를 검출함에 의해 목표 메모리 셀의 상태를 검출하는 감지 장치(예를 들면, 감지 증폭기)(130)에 연결된다. 당업자에 알려진 바와 같이, 메모리 셀들, 워드 라인 그리고 비트 라인들의 수는 도 1에서 도시된 것들보다 훨씬 클 수 있다.
메모리 셀들은 전형적으로 삭제 및 프로그래밍 사이클을 사용하여 프로그램된다. 예를 들면, 특정 블록 메모리 셀들의 메모리 셀들은 먼저 삭제되고 다음에 선택적으로 프로그램된다. NAND 어레이의 경우, 한 블록의 메모리 셀들이 대개 그 같은 블록 내 모든 워드 라인들을 접지하고 그리고 삭제 전압을 그 같은 블록의 메모리 셀들이 형성된 반도체 기판으로, 따라서 상기 메모리 셀들의 채널로 가함에 의해, 그 같은 블록의 메모리 셀들의 전하 저장 구조(예를 들면, 부동 게이트 또는 전하 트랩)에 저장될 수 있는 전하를 제거하도록 하여 삭제된다.
프로그래밍은 대개 하나 또는 그 이상의 프로그래밍 펄스를 선택된 워드 라인(예를 들면, WL4 1184), 따라서 선택된 워드 라인에 연결된 메모리 셀(1201-4) 각각의 제어 게이트에 가함을 포함한다. 전형적인 프로그래밍 펄스들은 15V에서 또는 그 가까이에서 시작되며 프로그래밍 펄스 적용 중 그 크기가 증가하는 경향이 있다. 상기 프로그래밍 전압 (예를 들면, 프로그래밍 펄스)가 상기 선택된 워드 라인으로 가해지는 동안, 접지 전위와 같은 전위가 상기 기판으로 가해지며, 따라서 이들 메모리 셀들의 채널로 가해지고, 결국 그와 같은 채널로부터 프로그래밍을 위해 목표가 된 메모리 셀들의 전하 저장 구조로 전하 전달을 일으킨다. 더욱 특히, 상기 전하 저장 구조는 대개 상기 채널로부터 전하 저장 구조로 전하의 직접 주입 또는 FN 터널링(Fowler-Nordheim tunneling)을 통해 충전되며, 결국 예를 들면 제로 보다 큰 Vt를 발생시킨다. 또한, 한 억제 전압(inhibit voltage)이 프로그래밍을 위해 목표가 된(예를 들면, 선택된) 한 메모리 셀을 포함하는 NAND 스트링에 연결되지 않은 비트 라인들로 가해진다. 대개 선택된 메모리 셀들이 이들의 목표 (예를 들면, 의도된) 프로그램 상태를 달성하였는가를 결정하기 위해 가해진 프로그래밍 펄스 각각에 이어 입증 동작(verify operation)이 수행된다. 한 입증 동작은 일반적으로 한 메모리 셀의 임계 전압이 특정 목표 값에 도달하였는가를 결정하기 위해 한 감지 동작을 수행함을 포함한다.
도 2는 NOR 타입 플래시 메모리 아키텍쳐(200)를 도시하며, 메모리 어레이의 메모리 셀들(202)이 행과 열의 어레이로 논리적으로 배열된다. 메모리 셀(202) 각각은 소스 라인(214)과 비트 라인(216) 사이에서 연결된다. 이 같은 어레이는 행 디코더(도시되지않음)에 의해 액세스되며 예를 들면 WL7-WL0 2187-0과 같은 특정 워드 라인을 선택함에 의해 한 논리 행의 메모리 셀들을 작동시킨다.워드 라인(218) 각각은 한 행의 메모리 셀들 제어 게이트에 연결된다. 비트 라인(BL1-BL4 2161-4)은 상기 어레이에서 수행되는 동작 타입에 따라 하이 또는 로우로 구동될 수 있다. 비트 라인(BL1-BL4 2161-4)은 예를 들면 한 특정 비트 라인(216)에서의 전압 또는 전류(230)를 감지함에 의해 목표 메모리 셀의 상태를 검출하는 감지 장치(230)에 연결된다. 당업자에게 알려진 바와 같이, 메모리 셀, 워드 라인 그리고 비트 라인의 수는 도 2에서 도시된 것들보다 훨씬 크다.
메모리 셀(예를 들면 플래시 메모리 셀)은 단일 레벨 메모리 셀(SLC) 또는 멀티레벨 메모리 셀(MLC)로 당해 기술 분야에서 알려진 것과 같이 구성될 수 있다. SLC 그리고 MLC 메모리 셀들은 한 데이터 상태(예를 들면, 하나 또는 그 이상의 비트에 의해 대표되는)를 상기 메모리 셀들에 저장된 특정 레인지의 임계 전압(Vt)으로 할당한다. 단일 레벨 메모리 셀(SLC)은 메모리 셀 각 각에서 단일 이진 디지트(예를 들면, 비트) 데이터의 저장을 허용한다. 한편, MLC 기술은 셀에 할당된 Vt 레인지의 양과 메모리 셀의 수명 동작 중에 상기 할당된 Vt 레인지의 안정성에 따라, 셀 마다 둘 또는 그 이상의 이진 디지트의 저장을 허용한다. N 비트로 이루어진 비트 패턴을 대표하도록 사용된, Vt 레인지(예를 들면, 레벨)의 수는 2N이며, 여기서 N는 정수이다. 예를 들면, 1 비트는 2 레인지에 의해 표시되고, 2 비트는 4 레인지에 의해 표시되며, 3 비트는 8 레인지에 의해 표시되는 등과 같다. MLC 메모리 셀은 메모리 셀 각 각에서 짝 수 또는 홀 수의 비트를 저장할 수 있으며, 분수 비트를 제공하는 방법이 또한 알려져 있다. 예를 들면, 0 또는 1에 의해 표시되는 데이터 1 비트를 저장하기 위해 SLC 메모리가 2 개의 Vt 레인지를 사용하기 때문에 일반적인 네이밍 컨벤션은 MLC (2 레벨) 메모리를 SLC 메모리라 칭한다. 2 비트의 데이터를 저장하도록 구성된 MLC 메모리는 MLC (4 레벨)로 표시될 수 있고, 3 비트의 데이터는 MLC(8 레벨)로 표시될 수 있는 등과 같다.
도 3은 한 MLC (4 레벨) (예를 들면, 2비트) 메모리 셀에 대한 Vt 레인지(300)의 예를 도시한 도면이다. 예를 들면, 한 메모리 셀이 2 비트로 구성된 한 비트 패턴에 해당하는 데이터 상태를 표시하도록 각각 사용된, 200 mV의 4 개의 각기 다른 Vt 레인지(302-308) 중 하나에 해당하는 Vt로 프로그램될 수 있다. 대개, 데드 공간(310)(예를 들면, 때때로 마진으로 칭해지며, 200 mV 에서 400 mV 까지의 레인지를 가질 수 있다)은 각 레인지(302-308) 사이에 유지되어 그 같은 레인지가 겹쳐지지 않도록 한다. 한 예로서, 한 메모리 셀에 저장된 전압이 4 개의 Vt 레인지(302) 중 첫 번째 이내이면, 이 경우 상기 셀은 논리 '11' 상태를 저장하며 이는 대개 셀의 삭제 상태로 간주된다. 만약 전압이 상기 4 개의 Vt 레인지(304) 중 두 번째 이내라면, 이 경우 상기 셀은 논리 '10' 상태를 저장 중이다. 상기 4 개의 Vt 레인지 중 세 번째 Vt 레인지(306)에서의 전압은 이 경우 셀이 논리 '00' 상태를 저장하고 있음을 나타낸다. 마지막으로, 네 번째 Vt 레인지(308)에 있는 Vt는 논리 '01' 상태가 셀 내에 저장되어 있음을 나타낸다.
대개 낮은 레벨 메모리 셀에서 보다는 높은 레벨 메모리 셀에 저장된 데이터에서 에러가 일어날 개연성이 높다. 예를 들면, MLC(4개 레벨)는 대개 SLC 메모리에서 보다 에러가 발생할 개연성이 높다. 이는 높은 레벨 메모리 셀들에서 프로그램된 Vt 레인지의 증가된 수와 네로잉(narrowing)에 의해 원인이 될 수 있다. 상기에서 설명된 바와 같이, 한 메모리 셀에서 수행된 프로그램/삭제 사이클의 수 또한 에러가 발생될 개연성을 증가시킨다. 따라서, 예를 들면 MLC 메모리 셀들은 SLC 메모리 셀들에서 보다 프로그램/삭제 사이클에 의해 유도된 에러에 의해 더욱 민감할 수 있다.
상-변경 메모리(PCM)는 전류를 가함에 의해 비정질과 결정질 상태 사이 주기표 V 또는 VI 그룹으로부터 하나 또는 그 이상의 원소를 포함하는 합금의 상태를 변경시키는 가역 처리를 사용하는 비 휘발성 메모리의 또 다른 형태이며(도면에서는 도시되지 않음), 상기 두 상태는 상당이 다른 전기 저항을 갖는다. 전형적인 현재의 상변환 메모리는 게르마늄-안티몬-텔루르(GeSbTe 또는 GST, 가장 일반적인 Ge2Sb2Te5) 합금과 같은, 칼코겐화물(chalcogenide) 합금을 사용한다. 상기 물질의 비정질(A-GST) 및 결정질(C-GST) 상태는, 약 세 자릿수의 크기로, 크게 다른 저항을 가지며, 따라서 이 같은 상태의 결정이 쉽게 내려지도록 한다. 상기 결정질 상태는 대략 킬로 오옴(KΩ)의 대표적인 저항을 가지며, 반면 비정질 상태는 대략 메가 오옴(MΩ)의 대표적인 저항을 갖는다. 이들 상태는 정상 상태에서 안정적이며, 따라서 상기 PCM 셀이 데이터를 오래 보존하는 비휘발성 셀이도록 한다. 상기 GST가 비정질 상태인 때, RESET 인 것으로 말해진다. 상기 GST가 결정질 상태인 때, SET 인 것으로 말해진다. PCM 메모리는 기록 동작을 수행하기 전에 삭제 동작이 수행될 것을 필요로 하지 않지만, 메모리 셀에서 수행된 프로그램 사이클의 수는 에러의 개연성을 증가시킬 수 있다. PCM 셀들은 예를 들면 이들의 저항을 측정함에 의해 판독될 수 있다.
도 4는 통신 채널(408)(예를 들면, 통신 버스)에 의해 연결된 호스트(402)(예를 들면, 처리기) 그리고 메모리 장치(404)를 포함하는 대표적인 메모리 시스템(400)의 기능 블록 다이어그램을 도시한 도면이다. 이 같은 메모리 장치(404)는 다수의 파티션(partitions)(412)으로 구성된 메모리 셀 어레이(410)를 포함한다. 상기 메모리 장치는 또한 통신 채널(408)을 통하여 호스트(402)와 통신하도록 구성된 제어/인터페이스 회로(406)를 더욱 포함한다. 상기 제어/인터페이스 회로(406)는 외부 호스트(402)에 의해 메모리 장치로 제공된 지시에 응답하여 수행된 동작과 같은, 상기 메모리 장치(404)에서의 특정 동작을 관리할 수 있다. 상기 호스트(402)는 예를 들면 판독 또는 기록의 일부로서, 상기 통신 채널(408)을 통하여 메모리 장치(404)로 어드레스 요청를 전송할 수 있다.
메모리 어레이(410)의 다수 파티션 중 각 파티션(412)은 다수 블록의 메모리 셀들을 포함한다. 만약 웨어 레벨링(wear leveling)이 사용된다면, 상기 메모리 장치는 각 파티션을 통해 웨어 레벨링을 균일하게 수행하도록 구성된다. 그러나, 이는 바람직하지 않은 결과를 일으킬 수 있다. 상기 메모리 어레이(410)가 256 Mb(메가 비트) 어레이 일 수 있으며, 이때 파티션(412) 각각은 예를 들면 64 Mb를 포함할 수 있다. 따라서, 상기 메모리 어레이(410)가 4개의 독립된 웨어 레벨링 파티션(412)을 포함할 것이다. 따라서, 저장될 일정 데이터가 특정 레벨의 데이터 유지를 요청하고 다른 데이터가 특정 수의 프로그램/삭제 사이클을 필요로 한다면, 이들 두 타입의 데이터는 다른 파티션에 저장될 것이다. 이는 일정 파티션의 부분들은 각 타입의 데이터를 위해 공간이 이용될 수 있도록 보장하기 위해 사용되지 않게 되는 제한이 따른다. 선택적으로, 한 파티션이 다 채워지고 동일한 타입의 추가 데이터가 상기 메모리 장치에 여전히 저장될 필요가 있을 수 있다. 예를 들면, 웨어 레벨링으로부터 배제될 데이터가 다수의 64 Mb 파티션 크기를 초과하면, 전체의 추가 파티션 하나가 예를 들면 웨어 레벨링으로부터 배제될 필요가 있다. 이 같은 추가 데이터는 선택적으로 다른 파티션에 저장되어야 하며, 이때의 상기 다른 파티션은 그와 같은 추가의 데이터를 예를 들면 상기 메모리 장치에서 바람직하지 않은 웨어 레벨링 동작에 노출시킬 수 있다.
본 발명에 따른 다양한 실시 예에 따른 메모리 장치 및 방법은, 특정 블록들이 메모리 장치에서 웨어 레벨링 동작을 경험하지 못하도록 하는 것과 같이, 특정 블록의 메모리 셀들이 웨어 레벨링 동작과 관련하여 관리되도록 조정한다. 예를 들면, 한 메모리 장치가 전체 메모리 어레이에서 단일 파티션으로 구성된 메모리 어레이를 포함할 수 있다. 본 발명의 다양한 실시 예에 따라, 이 같은 단일 파티션 중 특정 블록의 메모리는 웨어 레벨링 동작으로부터 배제될 수 있다. 따라서, 본 발명에 따른 다양한 실시 예는 웨어 레벨링 동작이 바람직한 데이터 유지 특성에 영향을 미칠 것이라는 우려 없이, 특정한 바람직한 수의 프로그램/삭제 사이클을 갖는 데이터를 저장하고 특정한 바람직한 데이터 유지 특징을 갖는 데이터 저장을 용이하게 하는 것이다. 이는 본 발명의 다양한 실시 예에 따른 메모리 장치가 종래 기술에서와 같이 전체 파티션에서 웨어 레벨링을 균일하게 적용하는 것으로 제한되지 않기 때문에, 메모리 어레이 내 메모리 위치의 개선된 유연성과 더욱 효과적인 사용을 제공할 수 있다.
도 5는 본 발명의 다양한 실시 예에 따른 메모리 장치(500) 일부를 도시한다. 도 5에서 도시된 메모리 장치(500)는 본 발명에 따른 다양한 실시 예의 이해를 증진시키기 위해 특정 엘리먼트들에 초점을 두도록 단순화되었다. 메모리 장치(500)는 예를 들면 플래시 메모리 셀 어레이와 같은, 메모리 어레이(502)를 포함한다. 상기 메모리 어레이는 NAND 및/또는 NOR 구조로 구성될 수 있다. 도 5에서 도시된 상기 메모리 어레이(502)는 하나 또는 그 이상의 파티션들 및/또는 메모리 셀들을 개별적으로 삭제가능하는 블록(504)을 포함할 수 있으며, 여기서 블록 각각은 하나 또는 그 이상의 메모리 페이지를 포함할 수 있다. 메모리 어레이(502)의 블록 각각의 메모리 셀들은 예를 들면 도 1 또는 2에서 도시된 것과 같은 행과 열로 논리적으로 배열될 수 있다. 메모리 어레이(502)의 메모리 셀들은 단일 레벨(SLC) 및/또는 멀티 레벨(MLC) 메모리 셀들을 포함한다. 메모리 어레이(502)는 본 발명의 다양한 실시 예에 따른 플래시 메모리 셀들 이외에도 비휘발성 메모리 타입을 포함할 수 있다. 예를 들면, 메모리 어레이(502)는 질화물 읽기 전용 메모리(NROM) 셀, 강 유전성 전계 효과 트랜지스터 메모리 셀, 상변환 메모리(PCM) 셀 그리고 예를 들면 한계 전압, 저항 및/또는 다른 특성에서의 변경을 사용하여 데이터 값을 저장하도록 하는 다른 메모리를 포함할 수 있다.
메모리 장치(500)는 메모리 어레이(502)의 메모리 셀들로의 액세스를 용이하게 하는 행 디코드 회로(510) 및 열 디코드 회로(512)를 더욱 포함할 수 있다. 어드레스 회로(508)는 상기 행 디코드 회로(510) 그리고 열 디코드 회로(512)로 어드레싱 정보를 제공한다. 감지 회로 그리고 데이터 캐쉬(514)는 판독, 기록(예를 들면 프로그래밍) 그리고 삭제 동작과 같은 메모리 장치 동작을 용이하게 하도록 한다. 예를 들면, 상기 감지 회로(514)는 판독될 특정 수의 선택된 메모리 셀의 프로그램된 상태를 검출한다. 데이터 캐쉬(514)는 상기 감지 회로에 의해 감지된 데이터(예를 들면, 판독 또는 증명 동작 중에 얻어진 감지 정보와 같은)를 저장할 수 있다. 데이터 캐쉬(514)는 또한, 예를 들면 프로그래밍 동작 중에, 특정 수의 선택된 메모리 셀들 내로 프로그램될 데이터를 저장할 수 있기도 하다.
메모리 장치(500)는 또한 제어 회로(예를 들면 제어기)(506)를 포함하며, 이는 적어도 부분적으로 본 발명의 다양한 실시 예에 따른 메모리 장치 동작을 용이하게 한다. 상기 제어 회로(506)는 통신 채널(516)을 통해 외부 호스트(예를 들면, 처리기)(도 5에서는 도시되지 않음)와 통신하도록 구성될 수 있다. 상기 제어 회로(506)는 예를 들면 행 디코드 회로(510), 열 디코드 회로(512) 그리고 감지 회로/데이터 캐쉬(514) 회로와 같은 메모리 장치(500)의 다른 회로(도시되지 않음)로 연결될 수 있다. 본 발명의 하나 또는 그 이상의 실시 예에 따라, 제어 회로(506)는 상기 메모리 어레이(502)의 특정 블록에 대한 웨어 레벨링을 관리하도록 구성된다. 예를 들면, 특정 식별된 블록이 상기 제어 회로(506)에 의해 용이하게 된 웨어 레벨링 동작으로부터 배제될 수 있다. 따라서, 본 발명의 하나 또는 그 이상의 실시 예에 따라, 예를 들면, 웨어 레벨링 동작이 메모리 장치의 한 서브셋 블록으로만 적용될 수 있으며, 이에 의해서 다른 블록들은 웨어 레벨링 동작에서 배제되도록 할 수 있다. 본 발명의 하나 또는 그 이상의 실시 예에 따라, 상기 제어 회로는 이에 연결될 수 있는 외부 호스트와 무관하게 상기 메모리 장치(500) 내에서 웨어 레벨링 동작을 관리하도록 구성된다.
도 6은 통신 채널(516)을 통해서 전송될 수 있으며 본 발명의 한 실시 예에 따라 도 5의 제어 회로(506)에 의해 수신될 수 있는 지시(600)의 블록 다이어그램을 도시한다. 상기 지시(600)는 예를 들면 통신 채널(516)에 의해 메모리 장치에 연결된 한 호스트 장치에 의해 발생 될 수 있다. 상기 지시(600)는 수행될 특정 작업을 나타내는 명령을 포함하는 한 명령 부(602)를 포함한다. 예를 들면, 웨어 레벨링 동작으로부터 배제될 특정 데이터 및/또는 메모리 블록을 식별하도록 한다. 상기 지시(600)는 추가로 인수 부분(argument portion)(604)를 더욱 포함한다. 상기 지시의 인수 부분은 웨어 레벨링 동작으로부터 배제될 데이터 및/또는 블록을 식별하는 정보를 포함할 수 있다. 예를 들면, 상기 인수 정보(604)는 상기 메모리 장치 내 메모리의 특정 블록 위치를 식별할 수 있다. 이 같은 인수 정보(604)는 선택적으로 메모리 블록들의 특정 레인지 또는 레인지들을 포함할 수 있다. 상기 인수(604)는 식별된 블록들의 특정 시작 및 종료 어드레스를 포함할 수 있다. 상기 인수는 선택적으로 한 시작 어드레스 그리고 이 같은 시작 어드레스에 이은 다수의 어드레스를 나타내는 한 특정 수를 포함할 수 있다. 본 발명의 다양한 실시 예에 따라 특정 블록들을 식별하기 위한 다른 인수가 가능하다.
상기 명령 부분(602)은 또한 상기 호스트에 의해 발생된 한 기록 지시를 포함할 수 있기도 하며 상기 인수 부분(604)은 기록될 데이터와 관련된 한 어드레스(예를 들면, 논리 어드레스)를 포함할 수 있다. 상기 명령 부분(602)은 한 기록 동작을 나타내는 한 명령을 포함하고, 만약 예를 들면, 본 발명의 하나 또는 그 이상의 실시 예에 따라 웨어 레벨링 동작으로부터 상기 데이터가 배제될 것이면, 인디케이터(예를 들면, 플래그)를 더욱 포함할 수 있으며, 이 같은 인디케이터가 상기 메모리 장치로 표시하게 된다. 예를 들면, 상기 플래그는 상기 관련 데이터가 웨어 레벨링으로부터 배제되는 블록에 저장되어야 하는가를 표시하는 한 특정 값을 가질 수 있다. 호스트와 메모리 장치 사이에서와 같이, 논리적 어드레스를 물리적 어드레스로 변환하는 것은 당업자에게 잘 알려져 있다.
선택적으로, 상기 인수 정보(604)는 예를 들면, 다양한 실시 예에 따라 하나 또는 그 이상의 블록이 웨어 레벨링 동작에 포함될 것임을 직접 식별함에 의해, 하나 또는 그 이상의 블록들이 웨어 레벨링 동작으로부터 배제될 것임을 간접적으로 식별할 수 있다. 따라서, 웨어 레벨링 동작에 포함될 블록들을 식별함에 의해, 웨어 레벨링 동작으로부터 배제될 블록들이 간접적으로 식별된다. 하나 또는 둘 이상의 이들 실시 예에 따라, 상기 제어 회로가 대신 구성되어 예를 들면, 웨어 레벨링 동작에 포함되는 것으로 명시적으로 식별된 블록들에서만 웨어 레벨링 동작을 수행하도록 하고 그리고 명시적으로 식별되지 않은 블록들에서는 웨어 레벨링을 수행하지 않도록 할 수 있다.
다시 도 5와 관련하여, 제어 회로(506)가 메모리 장치(예를 들면, 비휘발성 메모리)(도 5에서는 도시되지 않음)를 포함할 수 있으며, 이 같은 메모리에 상기 식별된 블록 정보가 저장될 수 있다. 식별된 블록 정보는 예를 들면, 한 특정 블록 이 웨어 레벨링 동작으로부터 배제되도록 선택되었는 가에 관련된 정보를 포함할 수 있다. 상기 식별된 블록 정보는 또한 예를 들면, 상기 메모리 어레이(502)의 한 특정 부분에 저장될 수 있기도 하다. 상기 메모리 장치의 초기화 동작 중에(예를 들면 RESET 동작에 이어), 상기 저장된 식별된 블록 정보가 상기 식별된 블록 정보를 저장하는 메모리로부터 판독될 수 있으며, 예를 들면 제어기(506) 내로 적재될 수 있다. 제어 회로(506)는 레지스터를 포함할 수 있는 데, 이 같은 레지스터 내로 상기 호스트로부터 수령하거나 및/또는 초기화 증에 메모리로부터 판독되는 때 상기 식별된 블록 정보가 적재된다. 상기 메모리 장치 내에서 웨어 레벨링 동작을 수행하는 일부로서, 상기 제어 회로(506)가 상기 레지스터에 저장된 식별된 블록 정보를 조사하여 본 발명의 다양한 실시 예에 따라 어느 블록이 웨어 레벨링 동작과 관련하여 식별되었는 가를 결정하도록 한다.
제어 회로(506)는 메모리의 특정 블록들을 웨어 레벨링 동작으로부터 배제시키며, 그럼에도 불구 하고 본 발명의 다양한 실시 예에 따라, 예를 들면 한 기록 동작을 수행하기 위한 외부 어드레스 요청에 응답하여 프로그래밍 동작이 상기 식별된 블록에서 수행될 수 있도록 한다. 예를 들면, 한 특정 그룹의 블록들이 웨어 레벨링 동작으로부터 배제될 수 있으며, 그러나 미래 어느 시점에서 변경되거나 (예를 들면, 업 로드될) 필요가 있는 데이터를 저장할 수 있다. 따라서, 한 외부 호스트에 의해 요청되는 때 이들 식별된 메모리 블록에 저장된 데이터에 대한 변경이 용이 해질 수 있으며, 그럼에도 불구 하고 본 발명의 다양한 실시 예에 따라 상기 메모리 장치(500) 내부에서 수행된 웨어 레벨링 동작으로부터 배제된다.
도 7은 본 발명의 하나 또는 그 이상의 실시 예에 따라 적어도 하나의 메모리 장치(700)를 갖는 전자 시스템의 기능적 블록 다이어그램이다. 도 7에서 도시된 상기 메모리 장치(700)는 처리기(710)와 같은 한 호스트에 연결된다. 이 같은 처리기(710)는 마이크로프로세서 또는 다른 종류의 제어 회로이다. 상기 메모리 장치(700) 그리고 처리기(710)는 전자 시스템(720)의 일부를 형성한다. 본 발명의 하나 또는 그 이상의 실시 예에 따라, 상기 메모리 장치(700)는 예를 들면 도 5와 관련하여 상기 설명된 메모리 장치(500)를 포함한다. 상기 메모리 장치(700)는 본 발명의 다양한 실시 예를 이해하는 데 도움이 되는 메모리 장치의 특징에 초점을 두어 간략히 도시한 도면이다.
상기 메모리 장치(700)는 행과 열의 뱅크로 논리적으로 배열될 수 있는 하나 또는 그 이상의 메모리 어래이(730)를 포함한다. 하나 또는 그 이상의 실시 예에 따라, 메모리 어레이(730)의 메모리 셀들은 플래시 메모리 셀들이다. 상기 메모리 어레이(730)는 상기 메모리 장치(700)의 일부로서 단일 또는 멀티플 다이(die)상에 존재하는 멀티플 뱅크 및 블록의 메모리 셀들을 포함한다. 메모리 어레이(730)는 SLC 및/또는 MLC 메모리를 포함할 수 있다. 상기 메모리 장치(700)는 또한 예를 들면, 각 셀 내에 가변 밀도(예를 들면, MIC(4개 레벨) 및 MIC(8개 레벨)의 데이터를 저장하도록 적용될 수 있기도 하다.
한 어드레스 버퍼 회로(740)가 어드레스 입력 연결 AO-Ax(742)에 제공된 어드레스 신호들을 래치하도록 제공된다. 어드레스 신호들은 행 디코더(744) 그리고 열 디코더(748)에 의해 수신되고 디코드되어 메모리 어레이(730)를 액세스하도록 한다. 행 디코더(744)는 예를 들면, 상기 메모리 어레이(730)의 워드 라인들을 구동하도록 구성된 드라이버 회로들을 포함할 수 있다. 당업자라면 본 명세서 설명의 도움으로, 어드레스 입력 연결(742)의 수가 메모리 어레이(730)의 밀도와 아키텍쳐에 종속되는 것임을 이해할 것이다. 즉, 어드레스 디지트의 수는 예를 들면, 메모리 셀 카운트가 증가하고 뱅크 및 블록 카운트가 증가함에 따라 증가하는 것이다.
상기 메모리 장치(700)는 감지/데이터 캐쉬 회로(750)와 같은 감지 장치를 사용하여 메모리 어레이 칼럼에서의 전압 또는 전류 변화를 감지함에 의해 메모리 어레이(730)에서의 데이터를 판독한다. 적어도 한 실시 예에서, 상기 감지/데이터 캐쉬 회로(750)는 상기 메모리 어레이(730)로부터 한 행의 데이터를 판독하고 래치하도록 연결된다. 데이터 입력 및 출력(I/O) 버퍼 회로(760)는 다수의 데이터 연결(762)을 통하여 처리기(710)와의 양방향 데이터 통신을 위해 포함된다. 기록/삭제 회로(756)는 상기 메모리 어레이(730)로 데이터를 기록하고 그로부터 데이터를 삭제하기 위해 제공된다.
제어 회로(770)는 예를 들면, 상기 논의된 웨어 레벨링 동작을 용이하게 하는 것과 같이, 적어도 부분적으로 본 발명의 다양한 실시 예를 실시하도록 구성된다. 적어도 한 실시 예에서, 상기 제어 회로(770)는 한 상태 머신을 사용할 수 있다. 제어 회로(770)는 예를 들면, 도 5와 관련하여 상기 설명된 제어 회로(506)와 구성 및 기능이 유사할 수 있다.
제어 신호 및 명령은 명령 버스(772)를 통하여 처리기(710)에 의해 상기 메모리 장치(700)로 보내질 수 있다. 상기 명령 버스(772)는 예를 들면, 한 이산 신호 라인일 수 있으며 혹은 멀티플 신호 라인들로 구성될 수 있다. 이들 명령 신호(772)는 데이터 판독, 데이터 기록(예를 들면, 프로그램), 그리고 삭제 동작을 포함하는, 메모리 어레이(730)에서의 동작을 제어하도록 사용된다. 도 6과 관련하여 상기 설명된 지시(600)는 예를 들면, 상기 명령 버스(772)를 통하여 처리기(710)로부터 메모리 장치(700)로 전송될 수 있다. 상기 명령 버스(772), 어드레스 버스(742) 그리고 데이터 버스(762)는 모두 결합되거나 부분적으로 결합되어 다수의 표준 인터페이스(778)를 형성할 수 있다. 예를 들면, 메모리 장치(700)와 처리기(710) 사이의 인터페이스(778)는 범용 직렬 버스(USB) 인터페이스일 수 있다. 상기 인터페이스(778)는 또한 당업자에게 알려진 바와 같은 많은 하드 디스크 드라이브(예를 들면, SATA, PATA)와 함께 사용된 표준 인터페이스일 수 있다.
도 7에서 설명된 전자 시스템은 메모리의 특징들에 대한 기본적인 이해를 용이하게하기 위해 간략히 도시된 것이며 설명의 목적만을 위한 것이다. 비휘발성 메모리의 내부 회로 및 기능에 대한 더욱 상세한 이해는 당업자에게 알려져 있다.
결 론
요약하면, 본 발명의 하나 또는 그 이상의 실시 예는 메모리 장치에서 웨어 레벨링 동작 관리 방법을 제공한다. 특히, 특정 블록들이 직접 또는 간접적으로, 메모리 장치 내 웨어 레벨링 동작으로부터 배제되는 블록들로 식별된다. 따라서, 메모리 장치에 대한 효율적인 사용을 더욱 개선하면서, 바람직한 데이터 유지 특징 및 바람직한 프로그램/삭제 사이클이 동일한 메모리에서 달성될 수 있다. 이들 방법은 메모리 셀들이 바람직한 데이터 유지 특징을 갖도록 하며 동시에 바람직한 프로그램/삭제 사이클을 갖는 메모리 셀들의 더욱 효율적인 할당을 용이하게 할 수 있다.
비록 특정 실시 예가 본원 명세서 설명되긴 하였으나. 당업자라면 동일한 목적을 달성하기 위해 계산된 모든 실시가 설명된 바와 같은 특정 실시 예를 대체할 수 있음을 이해할 것이다. 본 명세서 개시내용에 대한 많은 적용이 당업자에게 명백할 것이다. 따라서, 본 출원 발명은 본 명세서 개시내용에 대한 모든 적용 또는 변경을 포함하는 것이다.

Claims (1)

  1. 발명의 상세한 설명에 기재된 방법.
KR1020160002050A 2011-08-03 2016-01-07 메모리 장치용 웨어 레벨링 KR20160030386A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/197,460 US9104547B2 (en) 2011-08-03 2011-08-03 Wear leveling for a memory device
US13/197,460 2011-08-03

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020147005732A Division KR101769188B1 (ko) 2011-08-03 2012-08-03 메모리 장치용 웨어 레벨링 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20160030386A true KR20160030386A (ko) 2016-03-17

Family

ID=47627703

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020147005732A KR101769188B1 (ko) 2011-08-03 2012-08-03 메모리 장치용 웨어 레벨링 장치 및 방법
KR1020160002050A KR20160030386A (ko) 2011-08-03 2016-01-07 메모리 장치용 웨어 레벨링

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020147005732A KR101769188B1 (ko) 2011-08-03 2012-08-03 메모리 장치용 웨어 레벨링 장치 및 방법

Country Status (7)

Country Link
US (2) US9104547B2 (ko)
EP (1) EP2740037B1 (ko)
JP (1) JP5759630B2 (ko)
KR (2) KR101769188B1 (ko)
CN (1) CN103765392B (ko)
TW (1) TWI574270B (ko)
WO (1) WO2013020035A2 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200828320A (en) * 2006-12-28 2008-07-01 Genesys Logic Inc Method for performing static wear leveling on flash memory
US9104547B2 (en) * 2011-08-03 2015-08-11 Micron Technology, Inc. Wear leveling for a memory device
US9754648B2 (en) 2012-10-26 2017-09-05 Micron Technology, Inc. Apparatuses and methods for memory operations having variable latencies
US9201786B2 (en) 2012-12-21 2015-12-01 Kabushiki Kaisha Toshiba Memory controller and memory system
US9734097B2 (en) 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
WO2015005635A1 (ko) * 2013-07-08 2015-01-15 주식회사 윌러스표준기술연구소 메모리 시스템 및 메모리의 데이터 처리 방법
US9727493B2 (en) 2013-08-14 2017-08-08 Micron Technology, Inc. Apparatuses and methods for providing data to a configurable storage area
US9384830B2 (en) * 2014-05-06 2016-07-05 Micron Technology, Inc. Apparatuses and methods for performing multiple memory operations
US10365835B2 (en) * 2014-05-28 2019-07-30 Micron Technology, Inc. Apparatuses and methods for performing write count threshold wear leveling operations
TWI567745B (zh) * 2015-09-02 2017-01-21 So that the anti-gate flash memory has a multi-performance method
US9766831B2 (en) 2015-10-14 2017-09-19 Micron Technology, Inc. Apparatuses and methods for arbitrating a shared terminal for calibration of an impedance termination
US10592114B2 (en) * 2016-03-03 2020-03-17 Samsung Electronics Co., Ltd. Coordinated in-module RAS features for synchronous DDR compatible memory
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
CN107680632B (zh) * 2016-08-01 2020-10-16 大唐移动通信设备有限公司 一种固态硬盘的寿命测试方法及装置
US10489064B2 (en) * 2016-10-03 2019-11-26 Cypress Semiconductor Corporation Systems, methods, and devices for user configurable wear leveling of non-volatile memory
US10348270B2 (en) 2016-12-09 2019-07-09 Micron Technology, Inc. Apparatuses and methods for calibrating adjustable impedances of a semiconductor device
GB2559119B (en) 2017-01-20 2020-12-30 Advanced Risc Mach Ltd Apparatus and methods to prolong lifetime of memories
US20180285562A1 (en) * 2017-03-31 2018-10-04 Intel Corporation Computing system with protection against memory wear out attacks
US10452282B2 (en) * 2017-04-07 2019-10-22 Micron Technology, Inc. Memory management
US10193711B2 (en) 2017-06-22 2019-01-29 Micron Technology, Inc. Timing based arbitration methods and apparatuses for calibrating impedances of a semiconductor device
US10198195B1 (en) 2017-08-04 2019-02-05 Micron Technology, Inc. Wear leveling
US10615798B2 (en) * 2017-10-30 2020-04-07 Micron Technology, Inc. Apparatuses and methods for identifying memory devices of a semiconductor device sharing an external resistance
US10205451B1 (en) 2018-01-29 2019-02-12 Micron Technology, Inc. Methods and apparatuses for dynamic step size for impedance calibration of a semiconductor device
US10761739B2 (en) * 2018-08-23 2020-09-01 Micron Technology, Inc. Multi-level wear leveling for non-volatile memory
US11094357B2 (en) * 2019-05-07 2021-08-17 Micron Technology, Inc. Memory devices with user-defined tagging mechanism
US10747245B1 (en) 2019-11-19 2020-08-18 Micron Technology, Inc. Apparatuses and methods for ZQ calibration
US20230393920A1 (en) * 2022-06-01 2023-12-07 Micron Technology, Inc. Adaptive wear leveling for endurance compensation

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6948041B2 (en) 2002-10-24 2005-09-20 Micron Technology, Inc. Permanent memory block protection in a flash memory device
US7359153B2 (en) * 2004-07-28 2008-04-15 Fujifilm Corporation Recording medium cartridge
US7441067B2 (en) 2004-11-15 2008-10-21 Sandisk Corporation Cyclic flash memory wear leveling
US20060256623A1 (en) 2005-05-12 2006-11-16 Micron Technology, Inc. Partial string erase scheme in a flash memory device
KR100874441B1 (ko) * 2007-01-09 2008-12-17 삼성전자주식회사 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치,그것을 제어하는 메모리 제어기, 그리고 그것을 포함한메모리 시스템
US7804718B2 (en) 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
TWI348163B (en) 2007-10-09 2011-09-01 Phison Electronics Corp Wear leveling method and controller using the same
EP2243085A1 (en) * 2008-02-10 2010-10-27 Rambus Inc. Segmentation of flash memory for partial volatile storage
US9477587B2 (en) 2008-04-11 2016-10-25 Micron Technology, Inc. Method and apparatus for a volume management system in a non-volatile memory device
WO2010049833A1 (en) * 2008-10-28 2010-05-06 Nxp B.V. Data processing circuit with cache and interface for a detachable device
JP4952740B2 (ja) 2009-04-13 2012-06-13 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010250143A (ja) 2009-04-17 2010-11-04 Fujifilm Corp 画像シート、位置合わせ方法および装置
US20100318719A1 (en) 2009-06-12 2010-12-16 Micron Technology, Inc. Methods, memory controllers and devices for wear leveling a memory
US8266481B2 (en) 2009-07-29 2012-09-11 Stec, Inc. System and method of wear-leveling in flash storage
US8838877B2 (en) 2009-09-16 2014-09-16 Apple Inc. File system derived metadata for management of non-volatile memory
JP2011150454A (ja) 2010-01-20 2011-08-04 Panasonic Corp 移動体端末
US9104547B2 (en) * 2011-08-03 2015-08-11 Micron Technology, Inc. Wear leveling for a memory device

Also Published As

Publication number Publication date
TW201320085A (zh) 2013-05-16
CN103765392A (zh) 2014-04-30
EP2740037B1 (en) 2018-09-26
JP5759630B2 (ja) 2015-08-05
JP2014524609A (ja) 2014-09-22
KR20140043500A (ko) 2014-04-09
US9104547B2 (en) 2015-08-11
KR101769188B1 (ko) 2017-08-30
US20130036253A1 (en) 2013-02-07
WO2013020035A2 (en) 2013-02-07
US9710376B2 (en) 2017-07-18
WO2013020035A3 (en) 2013-04-25
EP2740037A4 (en) 2015-04-15
US20150301937A1 (en) 2015-10-22
CN103765392B (zh) 2016-08-31
EP2740037A2 (en) 2014-06-11
TWI574270B (zh) 2017-03-11

Similar Documents

Publication Publication Date Title
KR101769188B1 (ko) 메모리 장치용 웨어 레벨링 장치 및 방법
US9952766B2 (en) Memory system, including memory device capable of overwrite operation, and method of operating the memory system
KR100875539B1 (ko) 프로그램 방식을 선택할 수 있는 메모리 시스템
KR100878479B1 (ko) 데이터 정보에 따라 프로그램 방식을 결정하는 메모리시스템
US20160284397A1 (en) Storage and programming method thereof
CN111104059B (zh) 存储器控制器及操作该存储器控制器的方法
US11163494B2 (en) Memory system, memory controller and operating method
US11342013B2 (en) Memory system and operating method to set target command delay time to merge and process read commands
US11513738B2 (en) Memory system for processing a write request and migrating data in read-intensive state and operating method thereof
US20210334000A1 (en) Memory system, memory controller and memory device for configuring super blocks
KR20190135746A (ko) 쓰기 버퍼 메모리를 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
US8203886B2 (en) Memory device reference cell programming method and apparatus
US11474726B2 (en) Memory system, memory controller, and operation method thereof
CN112002367B (zh) 存储器装置以及操作该存储器装置的方法
KR20200138894A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 장치
US11709610B2 (en) Memory system, memory controller and operating method
US20230103515A1 (en) Memory system and operating method of memory system
US11675712B2 (en) Memory system, memory controller, and operation method of memory system

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination