KR101396641B1 - 플래시 메모리 장치에 데이터를 저장하는 방법 - Google Patents
플래시 메모리 장치에 데이터를 저장하는 방법 Download PDFInfo
- Publication number
- KR101396641B1 KR101396641B1 KR1020117000765A KR20117000765A KR101396641B1 KR 101396641 B1 KR101396641 B1 KR 101396641B1 KR 1020117000765 A KR1020117000765 A KR 1020117000765A KR 20117000765 A KR20117000765 A KR 20117000765A KR 101396641 B1 KR101396641 B1 KR 101396641B1
- Authority
- KR
- South Korea
- Prior art keywords
- word lines
- memory cells
- top edge
- data
- edge word
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
- G11C16/3495—Circuits 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/14—Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory
Abstract
플래시 메모리 장치를 수반하는 것들과 같은 방법들 및 장치가 개시된다. 하나의 그러한 방법은 복수의 워드 라인들(WL0-WLn) 및 그 워드 라인들(WL0-WLn) 상의 복수의 메모리 셀들(310)을 포함하는 메모리 블록(300) 상의 메모리 셀들에 데이터를 저장하는 단계를 포함한다. 상기 워드 라인들(WL0-WLn)은 하나 이상의 바텀 에지 워드 라인들(BEWL), 하나 이상의 탑 에지 워드 라인들(TEWL), 및 바텀 및 탑 에지 워드 라인들 사이의 중간 워드 라인들(IWL)을 포함한다. 상기 데이터는 먼저 중간 워드 라인들(IWL) 상의 메모리 셀들에 저장된다. 그 후, 데이터의 남아 있는 부분(만약 있다면)이 바텀 에지 워드 라인들(BEWL) 및/또는 탑 에지 워드 라인들(TEWL) 상의 메모리 셀들에 저장된다. 이 방법은, 고장에 더 취약할 수 있는, 바텀 또는 탑 에지 워드 라인들의 조기 고장을 방지함으로써 플래시 메모리의 수명을 향상시킨다.
Description
본 발명의 실시예들은 메모리 장치들에 관한 것으로, 특히, 하나 이상의 실시예들에서, 플래시 메모리 장치들에 관한 것이다.
플래시 메모리 장치들은 그 안에 저장된 정보를 유지하기 위해 어떤 전력도 필요로 하지 않는 방식으로 반도체 상에 정보를 저장하는 비휘발성 메모리 장치들이다. 플래시 메모리 장치들 중에서, NAND 플래시 메모리 장치들은 그들의 높은 저장 밀도 및 낮은 비용 때문에 대용량 저장 장치들로서 널리 이용되었다. 어떤 응용들에서, NAND 플래시 메모리 장치는 하드 디스크를 대체하거나 보충하는 솔리드 스테이트 디스크(SSD)로서 소용이 된다.
도 1을 참조하면, 종래의 NAND 플래시 메모리 장치는 복수의 메모리 블록들을 포함한다. 도시된 플래시 메모리 장치(10)는 첫 번째 내지 N 번째 메모리 블록들(100)을 포함한다. 메모리 블록들(100) 각각은 행렬 형태로 배열된 복수의 메모리 셀들을 포함한다.
도 2A는 도 1의 NAND 플래시 메모리 장치(10)의 메모리 블록들(100) 중 하나를 도시한다. 도시된 메모리 블록(100)은 첫 번째 내지 m 번째 비트 라인들(BL0-BLm) 및 첫 번째 내지 n 번째 워드 라인들(WL0-WLn)을 포함한다. 어떤 배열들에서, m은 32,767 또는 65,535일 수 있고, n은 32 또는 64일 수 있다. 비트 라인들(BL0-BLm)은 열 방향(column direction)으로 서로 평행으로 연장한다. 워드 라인들(WL0-WLn)은 열 방향에 수직인 행 방향(row direction)으로 서로 평행으로 연장한다. 메모리 블록(100)은 또한 도 1의 복수의 메모리 블록들 중 하나의 메모리 블록(100)을 메모리 블록(100)의 외부에 연장하는 비트 라인들에 연결함으로써 그 하나의 메모리 블록(100)을 선택하기 위한 상부 및 하부 비트 라인 선택 트랜지스터들(120a, 120b)을 포함한다.
각 비트 라인은 일련의 메모리 셀들(110)을 포함한다. 예를 들면, 제2 비트 라인 BL1은 직렬로 연결된 메모리 셀들(110)을 포함한다. 메모리 셀들(100) 각각은 플로팅 게이트 트랜지스터를 포함한다. 메모리 셀들(100)의 플로팅 게이트 트랜지스터들은 소스와 드레인 사이에 서로 직렬로 연결된다. 동일한 행 내의 메모리 셀들(110)의 플로팅 게이트 트랜지스터들의 제어 게이트들은 동일한 워드 라인에 연결된다. 메모리 셀들(110) 각각은 전하(또는 전하의 결여)를 저장하고, 저장된 전하의 양은, 예를 들면, 하나 이상의 상태들을 나타내기 위해 이용되고, 상기 하나 이상의 상태들은 하나 이상의 숫자들(또는 비트들)의 데이터를 나타낼 수 있다. 메모리 셀은 싱글-레벨 셀(SLC) 또는 멀티-레벨 셀(MLC) 중 어느 하나일 수 있다. 하나의 배열에서, 메모리 셀들(110)에 저장된 전하의 양들은 메모리 셀들(110)의 플로팅 게이트 트랜지스터들을 통하여 흐르는 전류들을 감지하는 것에 의해 검출될 수 있다. 다른 배열들에서, 메모리 셀들(110)에 저장된 전하의 양들은 메모리 셀들(110)의 플로팅 게이트 트랜지스터들의 문턱 전압 값들을 감지하는 것에 의해 검출될 수 있다.
도 2B는 제2 비트 라인 BL1 내의 메모리 셀들(110)의 플로팅 게이트 트랜지스터들의 단면을 도시한다. 프로팅 게이트 트랜지스터들은 기판(201) 상에 형성된다. 플로팅 게이트 트랜지스터들 각각은 (이웃 트랜지스터에 대한 드레인 영역인) 소스 영역(210), (이웃 트랜지스터에 대한 소스 영역인) 드레인 영역(212), 도핑된 채널 영역(214), 제1 유전체(예를 들면, 터널 산화물)(216), 플로팅 게이트(218), 제2 유전체(예를 들면, 게이트 산화물, 여기서 터널 및 게이트 산화물은 동일한 또는 상이한 재료로 형성될 수 있다)(220), 및 제어 게이트(222)를 포함한다. 터널 산화물(216)은 채널 영역(214) 상에 형성되어 플로팅 게이트(218)를 채널 영역(214)으로부터 격리시킨다. 게이트 유전체(220)는 물리적으로 및 전기적으로 플로팅 게이트(218)를 제어 게이트(222)로부터 분리한다. 제어 게이트(222)는 적당한 워드 라인, 예를 들면, 워드 라인 WL1에 연결된다. 전자들이 플로팅 게이트(218) 상에 트랩되어 데이터를 저장하기 위해 이용될 수 있다.
이제 도 1 및 2C를 참조하여, 메모리 블록에 데이터를 기입하는 종래의 방법이 설명될 것이다. 도 2C는 도 2A의 메모리 블록(100)을 개략적으로 도시하고, 메모리 셀들, 비트 라인들, 및 워드 라인들만을 나타낸다. 그러나, 메모리 블록(100)은 도 2A 및 2B에 관하여 앞에 설명된 바와 같이 다른 컴포넌트들을 포함할 수 있다는 것을 이해할 것이다.
NAND 플래시 메모리 장치(10)(도 1)의 기입 동작 동안에, 데이터는 전형적으로 단일 워드 라인 상의 메모리 셀들의 세트에 기입된다. 그러한 메모리 셀들의 세트는 "페이지"라고 불릴 수 있다. 하나의 배열에서, 페이지는 워드 라인 상의 모든 메모리 셀들을 포함할 수 있다. 다른 배열들에서, 페이지는 단일 워드 라인 상의 하나 걸러 하나의 메모리 셀들(every other memory cells)에 의해 형성될 수 있다. 특정한 배열들에서, 페이지는 단일 워드 라인 상의 3개 걸러 하나의 메모리 셀들(every fourth memory cells)에 의해 형성될 수 있다. 페이지는 워드 라인 상의 임의의 적합한 선택된 수의 메모리 셀들에 의해 형성될 수 있다는 것을 이해할 것이다.
한편, NAND 플래시 메모리 장치(10)(도 1)의 소거 동작은 전형적으로 한 블록씩(on a block-by-block basis) 수행된다. 즉, 페이지 또는 메모리 셀들은 선택적으로 소거될 수 없다.
마찬가지로, 메모리 블록 내의 메모리 셀들 중 일부의 메모리 셀들 내의 데이터 값들을 변경할 때, 그 메모리 셀들 내의 데이터 값들은 선택적으로 변경될 수 없다. 대신에, 전체 메모리 블록이 소거되고 변경된 데이터 값들로 다시 기입된다(또는 프로그램된다). 이러한 프로세스를 위하여, 전체 메모리 블록에 저장된 데이터 값들은 다른 메모리 블록에 복사된다. 예를 들면, I 번째 메모리 블록 내의 데이터 값들 중 일부가 수정되어야 할 때, 전체 I 번째 메모리 블록 내의 데이터 값들이 사용되지 않는 메모리 블록, 예를 들면 J 번째 메모리 블록에 복사된다. 그 후, 전체 I 번째 메모리 블록 내의 데이터 값들이 소거되고, 그 후 수정되지 않은 및 수정된 데이터 값들을 포함하는 업데이트된 데이터가 소거된 I 번째 메모리 블록에 기입된다.
실시예들은 실시예의 상세한 설명으로부터 및 첨부된 도면들로부터 더 잘 이해될 것이고, 첨부된 도면들은 실시예들을 제한하기 위해서가 아니라 예증하기 위해 의도되어 있다.
도 1은 복수의 메모리 블록들을 포함하는 종래의 NAND 플래시 메모리 장치의 개략도이다.
도 2A는 종래의 NAND 플래시 메모리 장치의 메모리 블록의 개략도이다.
도 2B는 도 2A의 메모리 블록의 개략 단면도이다.
도 2C는 NAND 플래시 메모리 장치의 블록에 데이터를 저장하는 종래의 방법을 예증하는 개략도이다.
도 3은 NAND 플래시 메모리 장치의 블록에 데이터를 저장하는 방법의 하나의 실시예를 예증하는 개략도이다.
도 4A는 하나의 실시예에 따른 워드 라인 어드레스들을 변경하기 위한 어드레스 디코더를 포함하는 NAND 플래시 메모리 장치의 개략 블록도이다.
도 4B는 도 4A의 어드레스 디코더에 의해 워드 라인 어드레스들을 매핑하는 방법을 예증하는 개략 블록도이다.
도 4C는 도 4A의 어드레스 디코더의 기능을 예증하는 개략 블록도이다.
도 5는 도 3의 방법을 구현하는 컨트롤러를 포함하는 컴퓨터 시스템의 개략 블록도이다.
도 1은 복수의 메모리 블록들을 포함하는 종래의 NAND 플래시 메모리 장치의 개략도이다.
도 2A는 종래의 NAND 플래시 메모리 장치의 메모리 블록의 개략도이다.
도 2B는 도 2A의 메모리 블록의 개략 단면도이다.
도 2C는 NAND 플래시 메모리 장치의 블록에 데이터를 저장하는 종래의 방법을 예증하는 개략도이다.
도 3은 NAND 플래시 메모리 장치의 블록에 데이터를 저장하는 방법의 하나의 실시예를 예증하는 개략도이다.
도 4A는 하나의 실시예에 따른 워드 라인 어드레스들을 변경하기 위한 어드레스 디코더를 포함하는 NAND 플래시 메모리 장치의 개략 블록도이다.
도 4B는 도 4A의 어드레스 디코더에 의해 워드 라인 어드레스들을 매핑하는 방법을 예증하는 개략 블록도이다.
도 4C는 도 4A의 어드레스 디코더의 기능을 예증하는 개략 블록도이다.
도 5는 도 3의 방법을 구현하는 컨트롤러를 포함하는 컴퓨터 시스템의 개략 블록도이다.
특정한 응용들에서(예를 들면, NAND 플래시 메모리가 솔리드 스테이트 디스크로서 이용되는 경우), 데이터는 NAND 플래시 메모리에서 자주 기입되거나 수정된다. 따라서, NAND 플래시 메모리 내의 적어도 일부 메모리 블록들은 많은 수의 프로그래밍 사이클들을 겪는다.
종래의 기입 방법에서, 데이터는 최저의(또는 밑바닥의) 워드 라인 상의 또는 그 근처의 메모리 셀들로부터 시작하여, 상향식(bottom-up fashion)으로 메모리 블록에 기입된다. 그 후, 데이터는 최고의(또는 꼭대기의) 워드 라인 상의 메모리 셀들이 채워질 때까지 최저의 워드 라인 위쪽의 워드 라인들 상의 메모리 셀들에서 한 페이지씩 순차적으로 기입된다. 예를 들면, 데이터는 먼저 최저의 워드 라인(WL0) 상의 메모리 셀들(110)에 기입되고, 마지막으로 도 2C에서 최고의 워드 라인(WLn) 상의 메모리 셀들(110)에 기입된다. 다른 경우에, 데이터는 먼저 두 번째 최저의 워드 라인(WL1) 상의 메모리 셀들(110)에 기입된 다음, 최저의 워드 라인(WL0) 상의 메모리 셀들(110)에 기입될 수 있고, 상향식으로 두 번째 최저의 워드 라인(WL1) 위쪽의 워드 라인들 상의 메모리 셀들(110)에 기입될 수 있다. 이 문서의 컨텍스트에서, 구 "워드 라인 상의 메모리 셀들"(memory cells on a word line)은 메모리 셀들이 어드레스 선택을 위해 워드 라인에 전기적으로 연결되는 것을 나타내고, 반드시 메모리 셀들이 물리적으로 워드 라인 상에 있는 것을 나타내는 것은 아니다.
위에 설명된 종래의 기입 방법을 이용하는 특정한 경우에, NAND 플래시 메모리 내의 메모리 블록들 중 적어도 하나가 기입 동작들 동안에 완전히 채워지지 않을 수 있다. 그러한 경우에, 메모리 셀들 중 일부는 프로그램되지 않은 채로 있을 수 있다. 예를 들면, 도 2C의 최고의 워드 라인(WLn) 상의 또는 그 근처의 메모리 셀들은 데이터를 저장하도록 다시 프로그램되지 않을 수 있다. 그러한 경우에도, 메모리 블록의 몇몇 최저의 워드 라인들 상의 메모리 셀들은 메모리 블록에 데이터가 기입될 때마다 언제나 프로그래밍 사이클을 겪는다. 따라서, 메모리 블록의 최저의 워드 라인(WL0) 상의 또는 그 근처의 메모리 셀들은 NAND 플래시 메모리 장치의 수명 동안에 가장 많은 수의 프로그래밍 사이클들을 경험한다.
게다가, 최저의 워드 라인(WL0) 또는 최고의 워드 라인(WLn) 상의 또는 그 근처의 메모리 셀들은 비트 라인 선택 트랜지스터들에 인접해 있기 때문에 손상에 가장 취약하다. 예를 들면, 도 2A에서, 최저의 워드 라인(WL0) 또는 최고의 워드 라인(WLn) 상의 또는 그 근처의 메모리 셀들은 하부 비트 라인 선택 트랜지스터들(120b) 및 상부 비트 라인 선택 트랜지스터들(120a)에 각각 인접해 있다. 최신의 NAND 플래시 메모리 산업에서는 이러한 메모리 셀들이 메모리 블록 내의 다른 메모리 셀들보다 더 많은 GIDL(Gate Induced Drain Leakage) 및 더 많은 차지 트랩-업(charge trap-up)을 경험한다는 것이 잘 알려져 있다. 프로그래밍 사이클들에의 더 빈번한 노출에 더하여 이러한 고유의 취약성 때문에, 이러한 메모리 셀들은 다른 메모리 셀들이 고장나기 전에 고장나기 쉽고, 전체 블록을 쓸모없게 한다.
하나의 실시예에서, 기입 동작 동안에, 데이터는 먼저 최고의 워드 라인 또는 최저의 워드 라인에 인접해 있지 않은 워드 라인들 상의 메모리 셀들에 기입된다. 그 후, 만약 데이터의 남아 있는 부분이 있다면, 그 남아 있는 부분은 최고의 워드 라인 및/또는 최저의 워드 라인 상의 또는 그 근처의 메모리 셀들에 기입된다. 전체 메모리 블록이 반드시 채워지지는 않기 때문에, 이러한 기입 방식은 최고의 워드 라인 또는 최저의 워드 라인 상의 또는 그 근처의 메모리 사이클들을 도 2C에 관하여 위에 설명된 종래의 방법보다 덜 빈번한 프로그래밍 사이클들에 노출시킨다. 따라서, 이 기입 방식은 최고의 워드 라인(WLn) 또는 최저의 워드 라인(WL0) 상의 또는 그 근처의 메모리 셀들이 조기에 고장나는 것을 막을 수 있고, 이로써 메모리 블록의 수명, 및 궁극적으로 NAND 플래시 메모리 장치의 수명을 연장한다.
한편, 최고의 워드 라인 또는 최저의 워드 라인 상에 또는 그 근처에 있지 않은 메모리 셀들은 최고의 워드 라인 또는 최저의 워드 라인 상의 또는 그 근처의 메모리 셀들보다 손상에 덜 취약하다. 따라서, 프로그래밍 사이클들에의 이러한 메모리 셀들의 더 빈번한 노출이 반드시 이러한 메모리 셀들의 수명을 단축시키는 것은 아니다.
도 3을 참조하여, 하나의 실시예에 따른 NAND 플래시 메모리 장치의 메모리 블록에 데이터를 저장하는 방법이 아래에 설명될 것이다. 도시된 메모리 블록(300)은 워드 라인들(WL0-WLn), 비트 라인들(BL0-BLm), 및 워드 라인들(WL0-WLn)과 비트 라인들(BL0-BLm)의 교차점들에 있는 메모리 셀들(310)을 포함한다. 메모리 블록(300)의 상세한 구성은 도 2A의 메모리 블록(100)과 관련하여 앞에 설명된 바와 같을 수 있다.
이 문서의 컨텍스트에서, 최저의 워드 라인(WL0) 및 옵션으로 최저의 워드 라인(WL0)에 바로 인접한 다수의 워드 라인들은 집합적으로 바텀 에지 워드 라인들(bottom edge word lines; BEWL)이라고 불린다. 하나의 실시예에서, 바텀 에지 워드 라인들은 워드 라인들(WL0 내지 WL4)일 수 있다. 다른 실시예에서, 바텀 에지 워드 라인들은 워드 라인들(WL0 내지 WL3)일 수 있다. 또 다른 실시예에서, 바텀 에지 워드 라인들은 워드 라인들(WL0 내지 WL2)일 수 있다. 또 다른 실시예에서, 바텀 에지 워드 라인들은 워드 라인들(WL0 및 WL1)일 수 있다. 또 다른 실시예에서, 바텀 에지 워드 라인은 워드 라인(WL0)만일 수 있다. 다른 실시예들에서, 바텀 에지 워드 라인들은 최저의 워드 라인(WL0)에 인접한 다른 워드 라인들을 포함할 수 있다.
이 문서의 컨텍스트에서, 최고의 워드 라인(WLn) 및 옵션으로 최고의 워드 라인(WLn)에 바로 인접한 다수의 워드 라인들은 집합적으로 탑 에지 워드 라인들(top edge word lines; TEWL)이라고 불린다. 하나의 실시예에서, 탑 에지 워드 라인들은 워드 라인들(WLn 내지 WLn-4)일 수 있다. 다른 실시예에서, 탑 에지 워드 라인들은 워드 라인들(WLn 내지 WLn-3)일 수 있다. 또 다른 실시예에서, 탑 에지 워드 라인들은 워드 라인들(WLn 내지 WLn-2)일 수 있다. 또 다른 실시예에서, 탑 에지 워드 라인들은 워드 라인들(WLn 및 WLn-1)일 수 있다. 또 다른 실시예에서, 탑 에지 워드 라인은 워드 라인(WLn)만일 수 있다. 다른 실시예들에서, 탑 에지 워드 라인들은 최고의 워드 라인(WLn)에 인접한 다른 워드 라인들을 포함할 수 있다.
탑 에지 워드 라인들의 수는 바텀 에지 워드 라인들의 수와 동일할 수 있다. 다른 실시예에서, 탑 에지 워드 라인들의 수는 바텀 에지 워드 라인들의 수와 상이할 수 있다. 탑 및 바텀 에지 워드 라인들의 수는, 예를 들면, 샘플 NAND 플래시 메모리 장치들을 테스트하는 것에 의해 제조 프로세스 동안에 결정될 수 있다.
또한, 탑 에지 워드 라인도 아니고 바텀 에지 워드 라인도 아닌 워드 라인들은 이 문서의 컨텍스트에서 집합적으로 중간 워드 라인들(intermediate word lines; IWL)이라고 불린다. 중간 워드 라인들은 탑 에지 워드 라인들과 바텀 에지 워드 라인들의 사이에 배치된다. 중간 워드 라인들의 수는 모든 워드 라인들의 총수에서 메모리 블록 내의 탑 및 바텀 에지 워드 라인들의 총수를 뺀 것과 같다.
하나의 실시예에서, 기입 동작 동안에, 데이터는 먼저 중간 워드 라인들(IWL) 상의 메모리 셀들에 기입되고, 만약 남아 있는 데이터가 있다면, 바텀 에지 워드 라인들(BEWL) 상의 메모리 셀들에, 및 마지막으로 탑 에지 워드 라인들(TEWL) 상의 메모리 셀들에 기입된다. 다른 실시예에서, 기입 동작 동안에, 데이터는 먼저 중간 워드 라인들(IWL) 상의 메모리 셀들에 기입되고, 만약 남아 있는 데이터가 있다면, 탑 에지 워드 라인들(TEWL) 상의 메모리 셀들에, 및 마지막으로 바텀 에지 워드 라인들(BEWL) 상의 메모리 셀들에 기입된다.
중간 워드 라인들(IWL) 상의 메모리 셀들은 중간 워드 라인들 IWL 중에서 최저의 워드 라인 상의 메모리 셀들로부터 시작하여, 상향식으로 프로그램될 수 있다. 예를 들면, 중간 워드 라인들(IWL) 중의 최저의 워드 라인 상의 메모리 셀들이 먼저 프로그램될 수 있고, 중간 워드 라인들(IWL) 중의 최고의 워드 라인 상의 메모리 셀들이 마지막으로 프로그램될 수 있고 한편 그 사이의 다른 중간 워드 라인들 상의 메모리 셀들은 밑바닥부터 꼭대기까지 한 라인씩 순차적으로 프로그램될 수 있다. 바텀 및 탑 에지 워드 라인들(BEWL 및 TEWL)이 바텀 및 탑 에지들에서 각각 3개의 워드 라인들(즉, BEWL은 WL0, WL1, 및 WL2이고; TEWL은 WLn, WLn-1, 및 WLn-2)인 도 3에 도시된 예에서는, 4 번째 워드 라인(WL3)가 먼저 프로그램될 수 있고, 그 후 4 번째 워드 라인(WL3) 위쪽의 중간 워드 라인들이, (n-3) 번째 워드 라인(WLn-3)이 프로그램될 때까지, 한 라인씩 순차적으로 프로그램될 수 있다. 다른 실시예에서, 중간 워드 라인들(IWL) 상의 메모리 셀들은 하향식(top-down fashion)으로 프로그램될 수 있다. 숙련된 기술자는 중간 워드 라인들 사이의 프로그램의 시퀀스가 크게 변할 수 있다는 것을 이해할 것이다.
바텀 에지 워드 라인들(BEWL) 상의 메모리 셀들은 바텀 에지 워드 라인들(BEWL) 중에서 최고의 워드 라인 상의 메모리 셀들로부터 시작하여, 하향식으로 프로그램될 수 있다. 예를 들면, 바텀 에지 워드 라인들(BEWL) 중의 최고의 워드 라인 상의 메모리 셀들이 먼저 프로그램될 수 있고, 바텀 에지 워드 라인들(BEWL) 중의 최저의 워드 라인 상의 메모리 셀들이 마지막으로 프로그램될 수 있고 한편 그 사이의 워드 라인들 상의 메모리 셀들은 꼭대기부터 밑바닥까지 순차적으로 프로그램될 수 있다. 도 3에 도시된 예에서는, 3 번째 워드 라인(WL2)이 먼저 프로그램될 수 있고, 그 후 3 번째 워드 라인(WL2) 아래쪽의 두 번째 및 첫 번째 워드 라인들(WL1, WL0)이 프로그램되기 위해 순차적으로 선택될 수 있다. 다른 실시예에서, 바텀 에지 워드 라인들(BEWL) 상의 메모리 셀들은 상향식으로 프로그램될 수 있다. 숙련된 기술자는 바텀 에지 워드 라인들 사이의 프로그램의 시퀀스가 크게 변할 수 있다는 것을 이해할 것이다.
탑 에지 워드 라인들(TEWL) 상의 메모리 셀들은 탑 에지 워드 라인들 중에서 최저의 워드 라인 상의 메모리 셀들로부터 시작하여, 상향식으로 프로그램될 수 있다. 예를 들면, 탑 에지 워드 라인들(TEWL) 중의 최저의 워드 라인 상의 메모리 셀들이 먼저 프로그램될 수 있고, 탑 에지 워드 라인들(TEWL) 중의 최고의 워드 라인 상의 메모리 셀들이 마지막으로 프로그램될 수 있고 한편 그 사이의 워드 라인들 상의 메모리 셀들은 밑바닥부터 꼭대기까지 순차적으로 프로그램될 수 있다. 도 3에 도시된 예에서는, (n-2) 번째 워드 라인(WLn-2)이 먼저 프로그램될 수 있고, 그 후 (n-1) 번째 및 n 번째 워드 라인들(WLn-1, WLn)이 프로그램되기 위해 순차적으로 선택될 수 있다. 다른 실시예에서, 탑 에지 워드 라인들(TEWL) 상의 메모리 셀들은 하향식으로 프로그램될 수 있다. 숙련된 기술자는 탑 에지 워드 라인들 사이의 프로그램의 시퀀스가 크게 변할 수 있다는 것을 이해할 것이다.
에지 워드 라인들(BEWL, TEWL)이 둘 이상의 워드 라인들을 포함하는 또 다른 실시예에서, 바텀 에지 워드 라인들(BEWL) 및 탑 에지 워드 라인들(TEWL) 상의 메모리 셀들에 데이터를 기입하는 것은 교대될 수 있다. 도 3에 도시된 예에서, 이러한 워드 라인들 상의 메모리 셀들에 데이터를 기입하는 것은 다음의 시퀀스로 수행될 수 있다: WL2, WLn-2, WL1, WLn-1, WL0, 및 WLn; 또는 WLn-2, WL2, WLn-1, WL1, WLn, 및 WL0. 숙련된 기술자는 이러한 시퀀스들이 크게 변할 수 있다는 것을 이해할 것이다.
이런 식으로, 바텀 및 탑 에지 워드 라인들(TEWL, BEWL) 상의 메모리 셀들은 메모리 블록이 기입 동작들 동안에 반드시 완전히 채워지지는 않을 때 프로그래밍 사이클들을 덜 빈번히 겪는다. 한편, 중간 워드 라인들(IWL) 상의 메모리 셀들은 바텀 또는 탑 에지 워드 라인들(TEWL 또는 BEWL) 상의 메모리 셀들보다 더 많은 프로그래밍 사이클들을 겪을 수 있다. 그러나, 중간 워드 라인들(IWL) 상의 메모리 셀들은 바텀 및 탑 에지 워드 라인들(TEWL, BEWL) 상의 메모리 셀들보다 손상에 덜 취약하기 때문에, 프로그래밍 사이클들에의 이러한 메모리 셀들의 더 빈번한 노출이 반드시 이러한 메모리 셀들의 수명을 단축시키는 것은 아니다. 따라서, 메모리 블록의 전체 수명, 및 궁극적으로 NAND 플래시 메모리의 수명이 연장될 수 있다.
도 4A-4C를 참조하여, 도 3과 관련하여 위에 설명된 방법을 이용하는 NAND 플래시 메모리 장치의 하나의 실시예가 아래에 설명될 것이다. 이 NAND 플래시 메모리 장치(400)는 메모리 블록(401) 및 디코더(450)를 포함한다.
메모리 블록(401)은 워드 라인들(WL0-WLn-1), 비트 라인들(BL0-BLm), 및 행렬 형태의 복수의 메모리 셀들(410)을 포함한다. 이러한 컴포넌트들의 상세한 구성은 도 2A와 관련하여 위에 설명된 바와 같을 수 있다.
어드레스 디코더(450)는 외부 메모리 컨트롤러(미도시)로부터 어드레스들을 수신한다. 어드레스들은 메모리 컨트롤러에 의해 생성되고, 데이터의 값들이 저장되어야 하는 메모리 셀들의 어드레스들을 지시한다. 컨트롤러는 NAND 플래시 메모리 장치에 데이터 판독 및/또는 기입 명령들을 제공하기 위해 이용될 수 있는 임의의 적합한 유형(예를 들면, 마이크로프로세서 또는 CPU)일 수 있다. 따라서, 컨트롤러는 종래의 방식으로, 즉, 도 4B에서 메모리 블록(421)에 도시된 바와 같이, 먼저 최저의 워드 라인들 상에서 및 순차적으로 위쪽으로 메모리 셀들을 프로그램하기 위해 상향식으로 어드레스들을 생성한다. 블록(421) 내의 수들은 기입 동작을 위한 어드레스들의 시퀀스를 나타낸다. 특정한 실시예들에서, 컨트롤러는 반대 방식으로, 즉, 도 4B에서 메모리 블록(422)에 도시된 바와 같이, 먼저 최고의 워드 라인들 상에서 및 순차적으로 아래쪽으로 메모리 셀들을 프로그램하기 위해 하향식으로 어드레스들을 생성할 수 있다. 블록(422) 내의 수들은 기입 동작을 위한 어드레스들의 시퀀스를 나타낸다.
도시된 실시예에서, 어드레스 디코더(450)는 도 3과 관련하여 위에 설명된 방법을 구현하기 위해 외부 메모리 컨트롤러로부터의 수신되는 어드레스들을 매핑한다. 어드레스 디코더(450)는 도 4B에서 메모리 블록(423)에 도시된 바와 같이, 중간 워드 라인들, 탑 에지 워드 라인들, 및 바텀 에지 워드 라인들의 순으로 기입 동작이 수행되도록 수신된 어드레스들을 매핑할 수 있다. 블록(423) 내의 수들은 기입 동작을 위한 어드레스들의 시퀀스를 나타낸다. 도시된 실시예에서, 바텀 에지 워드 라인들의 수는 탑 에지 워드 라인들의 수와 동일하다.
도시된 실시예에서, 워드 라인 어드레스 i는 만약 i가 탑 에지 워드 라인(TEWL)을 나타내지 않는다면 i + 바텀 에지 워드 라인들의 수로 매핑된다. 만약 워드 라인 어드레스 i가 탑 에지 워드 라인(TEWL)을 나타낸다면, 도 4C에 도시된 바와 같이, i는 i - (n + 1 - 바텀 에지 워드 라인들의 수)로 매핑된다. 어드레스 디코더(450)는 위에 설명된 바와 같이 수신되는 어드레스들을 매핑하는 복수의 논리 게이트들을 포함한다. 논리 게이트들은 위에 설명된 방식으로 수신된 어드레스들을 매핑하도록 배선에 의해 연결될 수 있다(hard-wired). 숙련된 기술자는 도 3과 관련하여 위에 설명된 실시예들 중 임의의 실시예를 구현하기 위해 어드레스 디코더(450)에서 또는 NAND 플래시 메모리 장치(400) 내의 임의의 다른 컴포넌트에서 다양한 방식들이 이용될 수 있다는 것을 이해할 것이다.
도 5를 참조하여, NAND 플래시 메모리 기반 솔리드 스테이트 디스크에 데이터를 저장하기 위해 도 3과 관련하여 위에 설명된 방법을 이용하는 컴퓨터 시스템의 하나의 실시예가 아래에 설명될 것이다. 도시된 컴퓨터 시스템(500)은 중앙 처리 장치(CPU)(또는 컨트롤러)(510), 휘발성 메모리(520), 및 솔리드 스테이트 디스크(530)를 포함한다. 비록 도시되지는 않았지만, 컴퓨터 시스템(500)은 또한 사용자 인터페이스, 주변 장치들, 및 하드 디스크와 같은 다른 컴포넌트들을 포함할 수 있다.
CPU(510)는 임의의 적합한 유형이고, 임의의 적합한 처리 속도를 가질 수 있다. 휘발성 메모리(520)도 임의의 적합한 유형이고 임의의 적합한 데이터 전송 레이트를 가질 수 있다. 솔리드 스테이트 디스크(530)는 도 1에 관하여 위에 설명된 바와 같이 복수의 메모리 블록들을 포함할 수 있는 NAND 플래시 메모리 장치를 포함할 수 있다. NAND 플래시 메모리 장치는 또한 어드레스 디코더 및 NAND 플래시 메모리 장치의 동작을 위한 다른 컴포넌트들을 포함할 수 있다. NAND 플래시 메모리 장치는 임의의 적합한 상업적으로 이용 가능한 NAND 플래시 메모리일 수 있다.
도시된 실시예에서, CPU(510)는 도 3과 관련하여 앞에 설명된 기입 시퀀스들 중 임의의 기입 시퀀스로 솔리드 스테이트 디스크(530)에 데이터가 저장되도록 워드 라인 어드레스들을 생성하도록 구성된다. CPU(510)는 그 후 휘발성 메모리(520)에 워드 라인 어드레스들과 함께 비트 라인 어드레스들 및 데이터를 송신한다. 휘발성 메모리(520)는 워드 라인 및 비트 라인 어드레스들 및 데이터를 임시로 저장하고, 그 후 그것들을 솔리드 스테이트 디스크(530)에 중계한다.
솔리드 스테이트 디스크(530)는 휘발성 메모리(520)를 통해 CPU(510)에 의해 제공된 어드레스들에 따라서 그 안의 하나 이상의 메모리 블록들에 데이터를 저장한다. 워드 라인들은 중간 워드 라인들 상의 메모리 셀들이 먼저 기입되거나 판독되도록 매핑되기 때문에, 솔리드 스테이트 디스크(530)는 솔리드 스테이트 디스크(530)의 입력에서 어드레스들을 수정하거나 변경하지 않고 도 3과 관련하여 앞에 설명된 방식으로 데이터를 저장할 수 있다.
어떤 실시예들에서, 솔리드 스테이트 디스크(530)는 동작의 처음에 앞에 설명된 방식으로 워드 라인 어드레스들을 제공하도록 CPU(510)에 요청할 수 있다. 특정한 실시예들에서, 솔리드 스테이트 디스크(530)는 그것의 블록들의 탑 및 바텀 에지 워드 라인들의 소망의 수들에 대한 정보를 포함할 수 있다. 탑 및 바텀 에지 라인들의 소망의 수들은, 솔리드 스테이트 디스크(530) 내의 플래시 메모리 장치에 따라서, 변할 수 있다. 솔리드 스테이트 디스크(530)는 그 정보를 휘발성 메모리(520)를 통해 CPU(510)에 송신할 수 있다. 그 정보를 수신하면, CPU(510)는 그 정보에 적어도 부분적으로 기초하여 워드 라인 어드레스들을 생성할 수 있다. 숙련된 기술자는 위에 설명된 바와 같이 워드 라인 어드레스들을 생성하도록 CPU(510)에 지시하기 위해 다양한 방식들이 이용될 수 있다는 것을 이해할 것이다.
위에 설명된 실시예들의 방법들에서, 중간 워드 라인들 상의 메모리 셀들은 바텀 및 탑 에지 워드 라인들 상의 메모리 셀들보다 더 빈번히 프로그램된다. 중간 워드 라인들 상의 메모리 셀들은 바텀 및 탑 에지 워드 라인들 상의 메모리 셀들보다 더 내구력이 있기 때문에, 상기 방법들은 도 2C에 관하여 위에 설명된 종래의 기입 방법들에서 일어날 수 있는 메모리 블록들의 조기 고장을 방지할 수 있다.
상기 실시예들은 NAND 플래시 메모리 장치들의 컨텍스트에서 설명되었다. 그 실시예들은 또한 다른 유형들의 메모리 장치들에 맞추어 개조될 수 있다. 게다가, 상기 실시예들은 그들의 기입 방법들 및 손상에 대한 특정한 메모리 셀들의 고유의 취약성 때문에 위에 설명된 유사한 문제들을 갖는 임의의 다른 유형들의 솔리드 스테이트 메모리 장치들에 맞추어 개조될 수 있다.
위에 설명된 실시예들에 따른 플래시 메모리 장치는 다양한 전자 장치들에 통합될 수 있다. 그 전자 장치들의 예들은, 소비자 전자 제품들, 전자 회로들, 전자 회로 컴포넌트들, 소비자 전자 제품들의 부품들, 전자 테스트 장비들 등을 포함할 수 있지만, 이들에 제한되지 않는다. 소비자 전자 제품들의 예들은, 휴대폰, 전화기, 텔레비전, 컴퓨터 모니터, 컴퓨터, 휴대용 메모리 장치(예를 들면, USB 드라이브), 솔리드 스테이트 디스크, 핸드헬드 컴퓨터, PDA(personal digital assistant), 전자 레인지(microwave), 냉장고, 스테레오 시스템, 카세트 리코더 또는 플레이어, DVD 플레이어, CD 플레이어, VCR, MP3 플레이어, 라디오, 캠코더, 광학 카메라, 디지털 카메라, 와셔, 드라이어, 와셔/드라이어, 복사기, 팩시밀리 머신, 스캐너, 복합 기능 주변 장치, 손목 시계, 시계, 게임 장치 등을 포함하지만, 이들에 제한되지 않는다. 더욱이, 전자 장치는 미완성 제품들을 포함할 수 있다.
하나의 실시예는 플래시 메모리 장치의 블록 내에 데이터를 배열하는 방법이다. 상기 블록은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함한다. 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이의 중간 워드 라인들을 포함한다. 상기 방법은 상기 블록의 하나 이상의 바텀 에지 워드 라인들 또는 하나 이상의 탑 에지 워드 라인들에 저장하기 전에 상기 블록의 상기 중간 워드 라인들 상의 메모리 셀들 중 적어도 하나의 메모리 셀에 블록의 처음 데이터가 저장되도록 저장될 데이터를 매핑하는 단계; 및 상기 하나 이상의 바텀 에지 워드 라인들 및/또는 상기 하나 이상의 탑 에지 워드 라인들 상의 메모리 셀들에 저장될 후속 데이터(subsequent data)의 적어도 일부(만약 있다면)를 매핑하는 단계를 포함한다.
다른 실시예는 하나 이상의 메모리 블록들을 포함하는 플래시 메모리 장치이다. 상기 메모리 블록들 각각은 복수의 메모리 셀들을 갖는 복수의 워드 라인들을 포함한다. 상기 워드 라인들은 한 방향으로 서로 평행으로 연장한다. 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함한다. 상기 메모리 장치는 또한 상기 블록의 상기 하나 이상의 바텀 에지 워드 라인들 또는 상기 하나 이상의 탑 에지 워드 라인들에 저장하기 전에 상기 블록의 상기 중간 워드 라인들 상의 메모리 셀들 중 적어도 하나의 메모리 셀에 블록의 처음 데이터가 저장되도록 저장될 데이터를 매핑하도록 구성된 어드레스 디코더를 포함한다. 상기 어드레스 디코더는 상기 블록의 상기 하나 이상의 바텀 에지 워드 라인들 및/또는 상기 하나 이상의 탑 에지 워드 라인들 상에 저장될 후속 데이터의 적어도 일부(만약 있다면)를 매핑하도록 더 구성된다.
또 다른 실시예는 컨트롤러; 및 그 안에 데이터를 저장하기 위한 어드레스들을 수신하도록 구성된 플래시 메모리 장치를 포함하는 컴퓨터 시스템이다. 상기 플래시 메모리 장치는 하나 이상의 메모리 블록들을 포함한다. 상기 메모리 블록들 각각은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함한다. 상기 워드 라인들은 한 방향으로 서로 평행으로 연장한다. 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함한다. 상기 컨트롤러는 상기 어드레스들이 상기 블록들 중 하나의 블록의 상기 중간 워드 라인들 상의 메모리 셀들에 상기 데이터의 처음 부분을 저장하고, 상기 블록들 중 상기 하나의 블록의 상기 바텀 및/또는 탑 에지 워드 라인들 상의 메모리 셀들에 상기 데이터의 후속 부분(만약 있다면)을 저장하는 기입 시퀀스를 나타내도록 상기 어드레스들을 생성하도록 구성된다.
또 다른 실시예는 플래시 메모리 장치에 데이터를 저장하기 위한 워드 라인 어드레스들의 세트를 생성하도록 구성된 컨트롤러를 포함하는 장치이다. 상기 플래시 메모리 장치는 하나 이상의 메모리 블록들을 포함한다. 상기 메모리 블록들 각각은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함한다. 상기 워드 라인들은 한 방향으로 서로 평행으로 연장한다. 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함한다. 상기 워드 라인 어드레스들의 세트는 상기 블록들 중 하나의 블록의 상기 중간 워드 라인들 상의 메모리 셀들에 상기 데이터의 처음 부분을 저장하고, 상기 블록들 중 상기 하나의 블록의 상기 바텀 및/또는 탑 에지 워드 라인들 상의 메모리 셀들에 상기 데이터의 후속 부분(만약 있다면)을 저장하는 기입 시퀀스를 나타낸다.
비록 이 발명은 특정한 실시예들에 관하여 설명되었지만, 이 문서에서 제시된 특징들 및 이점들 모두를 제공하지 않는 실시예들을 포함하여, 이 기술 분야의 통상의 지식을 가진 자들에게 명백한 다른 실시예들도 이 발명의 범위 안에 있다. 더욱이, 위에 설명된 다양한 실시예들은 조합되어 추가의 실시예들을 제공할 수 있다. 게다가, 하나의 실시예의 컨텍스트에서 제시된 특정한 특징들이 다른 실시예들에 통합될 수도 있다. 따라서, 본 발명의 범위는 첨부된 청구항들의 참조에 의해서만 정의된다.
Claims (24)
- 플래시 메모리 장치의 블록 내에 데이터를 배열하는 방법으로서 ― 상기 블록은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함하고, 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들(bottom edge word lines), 하나 이상의 탑 에지 워드 라인들(top edge word lines), 및 상기 바텀 및 탑 에지 워드 라인들 사이의 중간 워드 라인들을 포함함 ―,
상기 블록의 하나 이상의 바텀 에지 워드 라인들 또는 하나 이상의 탑 에지 워드 라인들에 저장하기 전에 상기 블록의 상기 중간 워드 라인들 상의 메모리 셀들 중 적어도 하나의 메모리 셀에 블록의 처음 데이터가 저장되도록 저장될 데이터를 매핑하는 단계; 및
상기 하나 이상의 바텀 에지 워드 라인들 및/또는 상기 하나 이상의 탑 에지 워드 라인들 상의 메모리 셀들에 저장될 후속 데이터(subsequent data)의 적어도 일부(만약 있다면)를 매핑하는 단계
를 포함하는 방법. - 제1항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하고, 상기 하나 이상의 바텀 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하는 방법.
- 제2항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들의 수는 상기 하나 이상의 바텀 에지 워드 라인들의 수와 동일한 방법.
- 제2항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들의 수는 상기 하나 이상의 바텀 에지 워드 라인들의 수와 상이한 방법.
- 제1항에 있어서, 상기 후속 데이터의 적어도 일부를 매핑하는 단계는,
상기 바텀 에지 워드 라인들 상의 상기 메모리 셀들에 저장될 상기 후속 데이터의 적어도 일부의 부분을 매핑하는 단계; 및
상기 탑 에지 워드 라인들 상의 상기 메모리 셀들에 저장될 상기 후속 데이터의 적어도 일부의 다른 부분을 매핑하는 단계
를 포함하는 방법. - 제5항에 있어서, 상기 부분을 매핑하는 단계는 상기 중간 워드 라인들에 가장 가까운 바텀 에지 워드 라인 상의 메모리 셀들에 먼저 저장될 상기 부분을 매핑하는 단계를 포함하는 방법.
- 제5항에 있어서, 상기 다른 부분을 매핑하는 단계는 상기 중간 워드 라인들에 가장 가까운 탑 에지 워드 라인 상의 메모리 셀들에 먼저 저장될 상기 다른 부분을 매핑하는 단계를 포함하는 방법.
- 제5항에 있어서, 상기 후속 데이터의 적어도 일부를 매핑하는 단계는,
상기 바텀 에지 워드 라인들 상의 상기 메모리 셀들에 저장될 상기 적어도 일부의 부분을 매핑하는 단계; 및
상기 탑 에지 워드 라인들 상의 상기 메모리 셀들에 저장될 상기 적어도 일부의 다른 부분을 매핑하는 단계
를 교대시키는 단계를 포함하는 방법. - 제1항에 있어서,
상기 플래시 메모리 장치에 의해, 상기 바텀 또는 탑 에지 워드 라인들 상의 상기 메모리 셀들에 먼저 상기 데이터를 저장하는 제1 기입 시퀀스를 나타내는 워드 라인 어드레스들의 제1 세트를 수신하는 단계; 및
상기 플래시 메모리 장치에 의해, 상기 워드 라인 어드레스들의 제1 세트를 상기 중간 워드 라인들 상의 상기 메모리 셀들에 먼저 상기 데이터를 저장하는 제2 기입 시퀀스를 나타내는 워드 라인 어드레스들의 제2 세트로 변환하는 단계
를 더 포함하는 방법. - 제1항에 있어서, 상기 플래시 메모리 장치에 의해, 상기 중간 워드 라인들 상의 상기 메모리 셀들에 먼저 상기 데이터를 저장하는 기입 시퀀스를 나타내는 워드 라인 어드레스들을 수신하는 단계를 더 포함하는 방법.
- 플래시 메모리 장치로서,
하나 이상의 메모리 블록들 ― 상기 메모리 블록들 각각은 복수의 메모리 셀들을 갖는 복수의 워드 라인들을 포함하고, 상기 워드 라인들은 한 방향으로 서로 평행으로 연장하고, 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함함 ―; 및
상기 블록의 상기 하나 이상의 바텀 에지 워드 라인들 또는 상기 하나 이상의 탑 에지 워드 라인들에 저장하기 전에 상기 블록의 상기 중간 워드 라인들 상의 메모리 셀들 중 적어도 하나의 메모리 셀에 블록의 처음 데이터가 저장되도록 저장될 데이터를 매핑하도록 구성된 어드레스 디코더
를 포함하고,
상기 어드레스 디코더는 상기 블록의 상기 하나 이상의 바텀 에지 워드 라인들 및/또는 상기 하나 이상의 탑 에지 워드 라인들 상에 저장될 후속 데이터의 적어도 일부(만약 있다면)를 매핑하도록 더 구성되는 플래시 메모리 장치. - 제11항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하고, 상기 하나 이상의 바텀 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하는 플래시 메모리 장치.
- 제11항에 있어서, 상기 어드레스 디코더는 상기 바텀 또는 탑 에지 워드 라인들 상의 메모리 셀들에 먼저 데이터를 저장하는 제1 기입 시퀀스를 나타내는 워드 라인 어드레스들의 제1 세트를 수신하고, 상기 워드 라인 어드레스들의 제1 세트를 상기 중간 워드 라인들 상의 메모리 셀들에 먼저 상기 데이터를 저장하는 제2 기입 시퀀스를 나타내는 워드 라인 어드레스들의 제2 세트로 변환하도록 구성되는 플래시 메모리 장치.
- 제11항에 있어서, 상기 플래시 메모리는 NAND 플래시 메모리를 포함하는 플래시 메모리 장치.
- 컴퓨터 시스템으로서,
컨트롤러; 및
그 안에 데이터를 저장하기 위한 어드레스들을 수신하도록 구성된 플래시 메모리 장치
를 포함하고,
상기 플래시 메모리 장치는 하나 이상의 메모리 블록들을 포함하고, 상기 메모리 블록들 각각은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함하고, 상기 워드 라인들은 한 방향으로 서로 평행으로 연장하고, 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함하고,
상기 컨트롤러는, 상기 어드레스들이 상기 블록들 중 하나의 블록의 상기 중간 워드 라인들 상의 메모리 셀들에 상기 데이터의 처음 부분을 저장하고, 상기 블록들 중 상기 하나의 블록의 상기 바텀 및/또는 탑 에지 워드 라인들 상의 메모리 셀들에 상기 데이터의 후속 부분(만약 있다면)을 저장하는 기입 시퀀스를 나타내도록 상기 어드레스들을 생성하도록 구성되는 컴퓨터 시스템. - 제15항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하고, 상기 하나 이상의 바텀 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하는 컴퓨터 시스템.
- 제16항에 있어서, 상기 플래시 메모리 장치는 상기 탑 및 바텀 에지 워드 라인들의 수들 중 적어도 하나에 대한 정보를 상기 컨트롤러에 제공하도록 더 구성되는 컴퓨터 시스템.
- 제15항에 있어서, 상기 컨트롤러는 중앙 처리 장치(CPU)를 포함하는 컴퓨터 시스템.
- 제15항에 있어서, 상기 플래시 메모리 장치는 솔리드 스테이트 디스크로서 기능하는 컴퓨터 시스템.
- 제15항에 있어서, 상기 플래시 메모리 장치는 NAND 플래시 메모리 장치를 포함하는 컴퓨터 시스템.
- 플래시 메모리 장치에 데이터를 저장하기 위한 워드 라인 어드레스들의 세트를 생성하도록 구성된 컨트롤러
를 포함하고,
상기 플래시 메모리 장치는 하나 이상의 메모리 블록들을 포함하고, 상기 메모리 블록들 각각은 복수의 워드 라인들 및 상기 워드 라인들의 복수의 메모리 셀들을 포함하고, 상기 워드 라인들은 한 방향으로 서로 평행으로 연장하고, 상기 워드 라인들은 하나 이상의 바텀 에지 워드 라인들, 하나 이상의 탑 에지 워드 라인들, 및 상기 바텀 및 탑 에지 워드 라인들 사이에 삽입된 중간 워드 라인들을 포함하고,
상기 워드 라인 어드레스들의 세트는, 상기 블록들 중 하나의 블록의 상기 중간 워드 라인들 상의 메모리 셀들에 상기 데이터의 처음 부분을 저장하고, 상기 블록들 중 상기 하나의 블록의 상기 바텀 및/또는 탑 에지 워드 라인들 상의 메모리 셀들에 상기 데이터의 후속 부분(만약 있다면)을 저장하는 기입 시퀀스를 나타내는 장치. - 제21항에 있어서, 상기 하나 이상의 탑 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하고, 상기 하나 이상의 바텀 에지 워드 라인들은 1개 내지 5개의 워드 라인들을 포함하는 장치.
- 제22항에 있어서, 상기 컨트롤러는, 상기 탑 및 바텀 에지 워드 라인들의 수들 중 적어도 하나에 대한 정보를 수신하도록 더 구성되는 장치.
- 제21항에 있어서, 상기 컨트롤러는 중앙 처리 장치(CPU)를 포함하는 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/138,137 US7949821B2 (en) | 2008-06-12 | 2008-06-12 | Method of storing data on a flash memory device |
US12/138,137 | 2008-06-12 | ||
PCT/US2009/045081 WO2009151933A2 (en) | 2008-06-12 | 2009-05-22 | Method of storing data on a flash memory device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110020296A KR20110020296A (ko) | 2011-03-02 |
KR101396641B1 true KR101396641B1 (ko) | 2014-05-16 |
Family
ID=41415817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020117000765A KR101396641B1 (ko) | 2008-06-12 | 2009-05-22 | 플래시 메모리 장치에 데이터를 저장하는 방법 |
Country Status (7)
Country | Link |
---|---|
US (4) | US7949821B2 (ko) |
EP (1) | EP2308052B1 (ko) |
JP (1) | JP5453660B2 (ko) |
KR (1) | KR101396641B1 (ko) |
CN (1) | CN102067236B (ko) |
TW (1) | TWI530952B (ko) |
WO (1) | WO2009151933A2 (ko) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7949821B2 (en) * | 2008-06-12 | 2011-05-24 | Micron Technology, Inc. | Method of storing data on a flash memory device |
US9378831B2 (en) | 2010-02-09 | 2016-06-28 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices, operating methods thereof and memory systems including the same |
KR101691092B1 (ko) | 2010-08-26 | 2016-12-30 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
KR101691088B1 (ko) | 2010-02-17 | 2016-12-29 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
KR101658479B1 (ko) | 2010-02-09 | 2016-09-21 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US9324440B2 (en) | 2010-02-09 | 2016-04-26 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices, operating methods thereof and memory systems including the same |
US8908431B2 (en) | 2010-02-17 | 2014-12-09 | Samsung Electronics Co., Ltd. | Control method of nonvolatile memory device |
TWI395460B (zh) * | 2010-06-02 | 2013-05-01 | Avision Inc | 自動存取影像處理程式之掃描設備 |
KR20120107336A (ko) * | 2011-03-21 | 2012-10-02 | 삼성전자주식회사 | 메모리 시스템 및 그것의 어드레싱 방법 |
US8685827B2 (en) * | 2011-07-13 | 2014-04-01 | Samsung Electronics Co., Ltd | Method of forming polysilicon resistor during replacement metal gate process and semiconductor device having same |
US8592281B2 (en) * | 2011-07-14 | 2013-11-26 | Samsung Electronics Co., Ltd. | Method of forming polysilicon resistor during replacement metal gate process and semiconductor device having same |
KR101868377B1 (ko) * | 2012-03-06 | 2018-06-19 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
US20130290657A1 (en) * | 2012-04-26 | 2013-10-31 | Nick Baciu | Storing data in containers |
KR102003930B1 (ko) * | 2012-07-31 | 2019-07-25 | 삼성전자주식회사 | 불휘발성 메모리 장치의 데이터 라이팅 제어방법 및 웨어레벨링 제어 기능을 가지는 메모리 콘트롤러 |
KR102242022B1 (ko) | 2013-09-16 | 2021-04-21 | 삼성전자주식회사 | 불휘발성 메모리 및 그것의 프로그램 방법 |
US9312010B1 (en) | 2014-10-07 | 2016-04-12 | Sandisk Technologies Inc. | Programming of drain side word line to reduce program disturb and charge loss |
US9305653B1 (en) * | 2014-12-05 | 2016-04-05 | Macronix International Co., Ltd. | Memory array and operating method of same |
KR102292642B1 (ko) * | 2015-03-13 | 2021-08-23 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법 |
US9728262B2 (en) * | 2015-10-30 | 2017-08-08 | Sandisk Technologies Llc | Non-volatile memory systems with multi-write direction memory units |
KR20170073944A (ko) * | 2015-12-21 | 2017-06-29 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 및 데이터 처리 시스템의 동작방법 |
US11086790B2 (en) | 2017-08-25 | 2021-08-10 | Micron Technology, Inc. | Methods of memory address verification and memory devices employing the same |
US10261914B2 (en) | 2017-08-25 | 2019-04-16 | Micron Technology, Inc. | Methods of memory address verification and memory devices employing the same |
US11232841B2 (en) | 2017-09-05 | 2022-01-25 | Samsung Electronics Co., Ltd. | Methods of operating memory devices based on sub-block positions and related memory system |
KR102336659B1 (ko) | 2017-09-05 | 2021-12-07 | 삼성전자 주식회사 | 데이터 신뢰성을 향상시키기 위한 메모리 동작을 수행하는 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 장치의 동작 방법 |
KR102261816B1 (ko) | 2017-12-05 | 2021-06-07 | 삼성전자주식회사 | 데이터 신뢰성을 향상한 불휘발성 메모리 장치 및 그 동작방법 |
US10748627B2 (en) | 2018-12-21 | 2020-08-18 | Sandisk Technologies Llc | Reducing neighbor word line interference in a two-tier memory device by modifying word line programming order |
US10943662B1 (en) | 2019-12-10 | 2021-03-09 | Western Digital Technologies, Inc. | Different word line programming orders in non-volatile memory for error recovery |
US11664075B2 (en) | 2021-08-30 | 2023-05-30 | Sandisk Technologies Llc | Sub-block programming mode with multi-tier block |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005235260A (ja) | 2004-02-17 | 2005-09-02 | Toshiba Corp | Nand型フラッシュメモリ |
US20070247909A1 (en) | 2006-04-20 | 2007-10-25 | Teruhiko Kamei | Method and system for flash memory devices |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6284495A (ja) | 1985-10-08 | 1987-04-17 | Nippon Texas Instr Kk | 半導体記憶装置 |
JPH0464998A (ja) * | 1990-07-03 | 1992-02-28 | Mitsubishi Electric Corp | 記憶装置 |
GB2251324B (en) | 1990-12-31 | 1995-05-10 | Intel Corp | File structure for a non-volatile semiconductor memory |
JPH06202937A (ja) * | 1992-12-28 | 1994-07-22 | Kawasaki Steel Corp | 不揮発性半導体記憶装置 |
TW527604B (en) * | 1998-10-05 | 2003-04-11 | Toshiba Corp | A memory systems |
KR100301932B1 (ko) * | 1999-04-27 | 2001-10-29 | 윤종용 | 불 휘발성 반도체 메모리 장치 |
JP2001035170A (ja) * | 1999-07-26 | 2001-02-09 | Nec Kyushu Ltd | 半導体記憶装置 |
KR100432884B1 (ko) * | 2001-08-28 | 2004-05-22 | 삼성전자주식회사 | 공유된 행 선택 구조를 갖는 불 휘발성 반도체 메모리 장치 |
TW536819B (en) | 2002-05-17 | 2003-06-11 | Taiwan Semiconductor Mfg | Split-gate flash memory structure and its program method for extending cycling lifetime |
KR100504696B1 (ko) * | 2003-02-26 | 2005-08-03 | 삼성전자주식회사 | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 |
US6778442B1 (en) | 2003-04-24 | 2004-08-17 | Advanced Micro Devices, Inc. | Method of dual cell memory device operation for improved end-of-life read margin |
US7161833B2 (en) * | 2004-02-06 | 2007-01-09 | Sandisk Corporation | Self-boosting system for flash memory cells |
US7177977B2 (en) * | 2004-03-19 | 2007-02-13 | Sandisk Corporation | Operating non-volatile memory without read disturb limitations |
KR100626371B1 (ko) | 2004-03-30 | 2006-09-20 | 삼성전자주식회사 | 캐쉬 읽기 동작을 수행하는 비휘발성 메모리 장치, 그것을포함한 메모리 시스템, 그리고 캐쉬 읽기 방법 |
US7120063B1 (en) | 2004-05-07 | 2006-10-10 | Spansion Llc | Flash memory cell and methods for programming and erasing |
JP2006059481A (ja) * | 2004-08-23 | 2006-03-02 | Renesas Technology Corp | 半導体記憶装置 |
US7212436B2 (en) | 2005-02-28 | 2007-05-01 | Micron Technology, Inc. | Multiple level programming in a non-volatile memory device |
US7292473B2 (en) | 2005-09-07 | 2007-11-06 | Freescale Semiconductor, Inc. | Method and apparatus for programming/erasing a non-volatile memory |
US7218552B1 (en) * | 2005-09-09 | 2007-05-15 | Sandisk Corporation | Last-first mode and method for programming of non-volatile memory with reduced program disturb |
US7170788B1 (en) * | 2005-09-09 | 2007-01-30 | Sandisk Corporation | Last-first mode and apparatus for programming of non-volatile memory with reduced program disturb |
KR100984563B1 (ko) | 2005-09-09 | 2010-10-01 | 샌디스크 코포레이션 | 프로그램 혼란이 감소된 nand 타입 비휘발성 메모리의최종-최초 모드 및 프로그래밍 방법 |
US20070094445A1 (en) * | 2005-10-20 | 2007-04-26 | Trika Sanjeev N | Method to enable fast disk caching and efficient operations on solid state disks |
KR100660546B1 (ko) * | 2005-11-10 | 2006-12-22 | 삼성전자주식회사 | 반도체 디스크 제어 장치 |
KR100742278B1 (ko) * | 2005-11-23 | 2007-07-24 | 삼성전자주식회사 | 향상된 동작 속도 및 듀얼 프로그램 기능을 갖는 낸드플래시 메모리 장치 |
KR100784862B1 (ko) | 2006-01-09 | 2007-12-14 | 삼성전자주식회사 | 더미 셀을 포함하는 플래시 메모리 장치 |
US7403425B2 (en) * | 2006-03-07 | 2008-07-22 | Micron Technology, Inc. | Programming a flash memory device |
US7952922B2 (en) | 2006-06-06 | 2011-05-31 | Micron Technology, Inc. | Method for programming a non-volatile memory device to reduce floating-gate-to-floating-gate coupling effect |
JP4945183B2 (ja) * | 2006-07-14 | 2012-06-06 | 株式会社東芝 | メモリコントローラ |
KR100885783B1 (ko) * | 2007-01-23 | 2009-02-26 | 주식회사 하이닉스반도체 | 플래시 메모리 장치 및 동작 방법 |
US20090043831A1 (en) * | 2007-08-11 | 2009-02-12 | Mcm Portfolio Llc | Smart Solid State Drive And Method For Handling Critical Files |
US7986554B2 (en) * | 2008-03-19 | 2011-07-26 | Sandisk Technologies Inc. | Different combinations of wordline order and look-ahead read to improve non-volatile memory performance |
US7949821B2 (en) | 2008-06-12 | 2011-05-24 | Micron Technology, Inc. | Method of storing data on a flash memory device |
CN102238465B (zh) | 2010-04-28 | 2014-12-03 | 北京神州泰岳软件股份有限公司 | 一种移动数据业务端到端质量分析方法及系统 |
-
2008
- 2008-06-12 US US12/138,137 patent/US7949821B2/en active Active
-
2009
- 2009-05-22 WO PCT/US2009/045081 patent/WO2009151933A2/en active Application Filing
- 2009-05-22 EP EP09763224.4A patent/EP2308052B1/en active Active
- 2009-05-22 KR KR1020117000765A patent/KR101396641B1/ko active IP Right Grant
- 2009-05-22 JP JP2011513544A patent/JP5453660B2/ja active Active
- 2009-05-22 CN CN200980122329.2A patent/CN102067236B/zh active Active
- 2009-06-02 TW TW098118229A patent/TWI530952B/zh active
-
2011
- 2011-05-09 US US13/103,669 patent/US8230165B2/en active Active
-
2012
- 2012-07-11 US US13/546,944 patent/US8595423B2/en active Active
-
2013
- 2013-11-06 US US14/073,776 patent/US9230658B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005235260A (ja) | 2004-02-17 | 2005-09-02 | Toshiba Corp | Nand型フラッシュメモリ |
US20070247909A1 (en) | 2006-04-20 | 2007-10-25 | Teruhiko Kamei | Method and system for flash memory devices |
Also Published As
Publication number | Publication date |
---|---|
US20140063954A1 (en) | 2014-03-06 |
EP2308052A2 (en) | 2011-04-13 |
EP2308052B1 (en) | 2018-08-22 |
CN102067236A (zh) | 2011-05-18 |
EP2308052A4 (en) | 2011-08-31 |
US20090313419A1 (en) | 2009-12-17 |
US7949821B2 (en) | 2011-05-24 |
US8230165B2 (en) | 2012-07-24 |
CN102067236B (zh) | 2014-01-08 |
JP2011524063A (ja) | 2011-08-25 |
WO2009151933A2 (en) | 2009-12-17 |
US8595423B2 (en) | 2013-11-26 |
TW201003658A (en) | 2010-01-16 |
TWI530952B (zh) | 2016-04-21 |
US9230658B2 (en) | 2016-01-05 |
JP5453660B2 (ja) | 2014-03-26 |
US20110213918A1 (en) | 2011-09-01 |
KR20110020296A (ko) | 2011-03-02 |
WO2009151933A3 (en) | 2010-02-25 |
US20120275230A1 (en) | 2012-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101396641B1 (ko) | 플래시 메모리 장치에 데이터를 저장하는 방법 | |
KR101832934B1 (ko) | 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 그것의 블록 관리 방법, 프로그램 방법 및 소거 방법 | |
US7369434B2 (en) | Flash memory with multi-bit read | |
US8107287B2 (en) | Method of programming nonvolatile memory device | |
US20140019675A1 (en) | Nonvolatle memory device and memory system having the same, and related memory management, erase and programming methods | |
KR20100010746A (ko) | 읽기 전압 레벨이 설정가능한 플래시 메모리 시스템 및읽기 전압 레벨의 설정방법 | |
JP2008123330A (ja) | 不揮発性半導体記憶装置 | |
US9536603B2 (en) | Methods and apparatuses for determining threshold voltage shift | |
JP2011119016A (ja) | フラッシュメモリ装置及びそのプログラム方法 | |
JP2010250891A (ja) | 不揮発性半導体記憶装置 | |
US11423998B2 (en) | Semiconductor device and reading method thereof | |
JP2007179701A (ja) | 多値データを記憶する不揮発性半導体記憶装置 | |
KR101668340B1 (ko) | Nand형 플래시 메모리 및 그의 프로그래밍 방법 | |
KR20090002636A (ko) | 비휘발성 메모리 장치 및 그것의 소거 방법 | |
KR101432108B1 (ko) | 비휘발성 메모리 장치 및 그것의 구동 방법 | |
TWI719653B (zh) | 用於判定記憶體單元之預期資料使用期限之裝置及方法 | |
US11538535B2 (en) | Apparatus for rapid data destruction | |
KR100940261B1 (ko) | 낸드 플래시 메모리소자의 소거방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170421 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180502 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190510 Year of fee payment: 6 |