KR20040076727A - 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 - Google Patents
블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 Download PDFInfo
- Publication number
- KR20040076727A KR20040076727A KR1020030012066A KR20030012066A KR20040076727A KR 20040076727 A KR20040076727 A KR 20040076727A KR 1020030012066 A KR1020030012066 A KR 1020030012066A KR 20030012066 A KR20030012066 A KR 20030012066A KR 20040076727 A KR20040076727 A KR 20040076727A
- Authority
- KR
- South Korea
- Prior art keywords
- state
- block
- signal
- response
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
-
- 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
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
여기에 개시되는 불 휘발성 반도체 메모리 장치는 복수 개의 상태 셀들을 가지며, 상기 메모리 블록들의 소거/프로그램 상태들을 나타내는 데이터를 저장하는 상태 셀 어레이를 포함한다. 데이터 발생 회로는 데이터 입력 명령에 응답하여 선택된 메모리 블록의 프로그램 상태를 나타내는 데이터를 생성하고, 블록 소거 셋업 명령에 응답하여 선택된 메모리 블록의 소거 상태를 나타내는 데이터를 생성한다. 신호 발생 회로는 소거 명령과 프로그램 명령 중 하나에 응답하여 블록 상태 쓰기 인에이블 신호와 클록 신호를 발생한다. 선택 회로는 상기 선택된 메모리 블록의 블록 어드레스에 응답하여 상기 상태 셀 어레이의 상태 셀들 중 적어도 하나를 선택한다. 쓰기 회로는 프로그램 또는 소거 동작시 상기 클록 신호에 응답하여 상기 데이터 발생 회로로부터의 데이터를 입력받고, 상기 선택된 상태 셀에 상기 입력된 데이터를 기입한다. 제어 회로는 상기 제 1 신호 발생 회로로부터의 블록 상태 쓰기 인에이블 신호에 응답하여 동작하며, 선택된 메모리 블록의 소거/프로그램 동작이 수행될 때 상기 쓰기 회로에 입력된 데이터가 선택된 상태 셀에 저장되도록 상기 쓰기 회로를 제어한다.
Description
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 낸드 플래시 메모리 장치에 관한 것이다.
플래시 메모리 장치들과 같은 불 휘발성 메모리들은 이 분야에 잘 알려져 있다. 일반적으로, 낸드 플래시 메모리 장치에 있어서, 데이터를 저장하기 위한 메모리 셀 어레이는 복수 개의 메모리 블록들을 포함하며, 각 메모리 블록은 복수 개의 페이지들의 메모리 셀들로 구성된다. 각 메모리 블록의 메모리 셀들은 동시에 소거된다. 낸드 플래시 메모리 장치는 대용량의 데이터를 저장할 수 있는 반면에 상당한 프로그램 시간을 요구한다.
낸드 플래시 메모리 장치 및 그것의 프로그램 방법은 U.S. Patent No. 6,061,270에 "Method for programming a non-volatile memory device with program disturb control"라는 제목으로 그리고 U.S. Patent No. 6,335,881에 "Method for programming a flash memory device"라는 제목으로 각각 게재되어 있다. 낸드 플래시 메모리 장치의 소거 방법은 U.S. Patent No. 6,370,062에 "NAND-type flash memory device and method of operating the same"라는 제목으로 게재되어 있다.
낸드 플래시 메모리 장치의 임의의 메모리 블록에 데이터를 프로그램하고자 하는 경우, 외부 제어 유니트 (예를 들면, 메모리 컨트롤러, 마이크로컨트롤러, 등등)는 프로그램 동작을 수행하기 전에 먼저 선택된 메모리 블록의 소거 또는 프로그램 상태를 점검한다. 선택된 메모리 블록이 소거 상태를 가지면, 데이터는 선택된 메모리 블록 내에 잘 알려진 방법으로 프로그램된다. 만약 선택된 메모리 블록이 프로그램 상태를 가지면, 데이터는 선택된 메모리 블록 내에 프로그램되지 않는다.
잘 알려진 바와 같이, 낸드 플래시 메모리 장치는 상당히 긴 읽기 시간을 필요로 하며, 이는 낸드 플래시 메모리 장치의 전반적인 프로그램 시간 (또는 동작 속도)이 증가되게 한다. 여기서, 전반적인 프로그램 시간은 메모리 블록의 소거/프로그램 상태를 확인하기 위한 시간과 실질적으로 데이터를 프로그램하는 데 필요한 시간의 합이다. 따라서, 그러한 낸드 플래시 메모리 장치가 실장되는 시스템의 동작 속도 역시 저하될 수 있다.
본 발명의 목적은 블록 상태 정보를 저장하는 상태 셀들을 포함하는 낸드 플래시 메모리 장치를 제공하는 것이다.
본 발명의 다른 목적은 프로그램 시간을 단축시킬 수 있는 낸드 플래시 메모리 장치를 제공하는 것이다.
도 1은 본 발명에 따른 낸드 플래시 메모리 장치를 개략적으로 보여주는 블록도;
도 2는 본 발명의 바람직한 실시예에 따른 도 1에 도시된 커맨드 로직을 보여주는 블록도;
도 3 및 도 4는 본 발명에 따른 낸드 플래시 메모리 장치의 블록 상태 쓰기 동작을 설명하기 위한 타이밍도들; 그리고
도 5는 본 발명에 따른 낸드 플래시 메모리 장치의 블록 상태 읽기 동작을 설명하기 위한 타이밍도이다.
* 도면의 주요 부분에 대한 부호 설명 *
100 : 낸드 플래시 메모리 장치 110 : 메모리 셀 어레이
120, 180 : 디코더 회로 130 : 페이지 버퍼 회로
140, 210 : 제어 회로 150 : 출력 회로
160 : 커맨드 로직 170 : 상태 셀 어레이
190 : 읽기 회로 200 : 쓰기 회로
상술한 제반 목적을 달성하기 위한 본 발명의 특징에 따르면, 복수 개의 메모리 블록들을 갖는 메모리 셀 어레이를 포함하는 낸드 플래시 메모리 장치는 복수 개의 상태 셀들을 가지며, 상기 메모리 블록들의 소거/프로그램 상태들을 나타내는 데이터를 저장하는 상태 셀 어레이와; 데이터 입력 명령에 응답하여 선택된 메모리블록의 프로그램 상태를 나타내는 데이터를 생성하고, 블록 소거 셋업 명령에 응답하여 선택된 메모리 블록의 소거 상태를 나타내는 데이터를 생성하는 데이터 발생 회로와; 소거 명령과 프로그램 명령 중 하나에 응답하여 블록 상태 쓰기 인에이블 신호와 클록 신호를 발생하는 제 1 신호 발생 회로와; 상기 선택된 메모리 블록의 블록 어드레스에 응답하여 상기 상태 셀 어레이의 상태 셀들 중 적어도 하나를 선택하는 선택 회로와; 프로그램 또는 소거 동작시 상기 클록 신호에 응답하여 상기 데이터 발생 회로로부터의 데이터를 입력받고, 상기 선택된 상태 셀에 상기 입력된 데이터를 쓰는 쓰기 회로와; 그리고 상기 제 1 신호 발생 회로로부터의 블록 상태 쓰기 인에이블 신호에 응답하여 동작하며, 선택된 메모리 블록의 소거/프로그램 동작이 수행될 때 상기 쓰기 회로에 입력된 데이터가 선택된 상태 셀에 저장되도록 상기 쓰기 회로를 제어하는 제어 회로를 포함한다.
바람직한 실시예에 있어서, 상기 상태 셀들은 겹쳐쓰기 가능한 불 휘발성 메모리 셀들이다.
바람직한 실시예에 있어서, 상기 제 1 신호 발생 회로는 상기 소거 명령에 응답하여 제 1 블록 상태 쓰기 인에이블 신호와 제 1 클록 신호를 발생하는 제 1 신호 발생부와; 상기 프로그램 명령에 응답하여 제 2 블록 상태 쓰기 인에이블 신호와 제 2 클록 신호를 발생하는 제 2 신호 발생부를 포함한다.
바람직한 실시예에 있어서, 상기 제 1 신호 발생부는 상기 소거 명령을 디코딩하여 블록 상태 쓰기 플래그 신호를 발생하는 디코더와; 쓰기 인에이블 신호에 응답하여 상기 디코더로부터 상기 블록 상태 쓰기 플래그 신호를 래치하는 래치와;상기 래치의 출력 신호에 응답하여 상기 제 1 클록 신호를 발생하는 클록 발생기와; 그리고 상기 래치의 출력 신호를 반전시켜 상기 제 1 블록 상태 쓰기 인에이블 신호로서 출력하는 인버터를 포함한다.
바람직한 실시예에 있어서, 상기 제 2 신호 발생부는 상기 프로그램 명령을 디코딩하여 블록 상태 쓰기 플래그 신호를 발생하는 디코더와; 쓰기 인에이블 신호에 응답하여 상기 디코더로부터 상기 블록 상태 쓰기 플래그 신호를 래치하는 래치와; 상기 래치의 출력 신호에 응답하여 상기 제 2 클록 신호를 발생하는 클록 발생기와; 그리고 상기 래치의 출력 신호를 반전시켜 상기 제 2 블록 상태 쓰기 인에이블 신호로서 출력하는 인버터를 포함한다.
바람직한 실시예에 있어서, 상기 상태 셀들의 데이터를 읽기 위한 블록 상태 읽기 명령에 응답하여 블록 상태 읽기 인에이블 신호를 발생하는 제 2 신호 발생 회로와; 그리고 소거/프로그램될 메모리 블록의 블록 어드레스에 대응하는 상태 셀로부터 데이터를 읽는 읽기 회로를 더 포함한다.
바람직한 실시예에 있어서, 상기 제어 회로는 상기 블록 상태 읽기 인에이블 신호에 응답하여 상기 읽기 회로를 제어하며, 상기 읽기 회로에 의해서 읽혀진 데이터는 출력 회로를 통해 외부로 출력된다.
이하 본 발명의 바람직한 실시예들이 참조 도면들에 의거하여 상세히 설명될 것이다.
본 발명에 따른 낸드 플래시 메모리 장치는 선택된 메모리 블록에 데이터를 프로그램하기 이전에 빠른 속도로 선택된 메모리 블록의 소거/프로그램 상태를 나타내는 데이터를 빠른 시간 (낸드 플래시 메모리 장치의 읽기 시간보다 짧은 시간) 내에 외부로 제공하는 것이 가능하다. 또한, 선택된 메모리 블록의 소거 동작이 수행되는 동안, 선택된 메모리 블록의 소거 상태를 나타내는 데이터가 메모리 블록과 별도로 제공되는 상태 셀에 저장된다. 그리고, 선택된 메모리 블록의 프로그램 동작이 수행되는 동안, 선택된 메모리 블록의 프로그램 상태를 나타내는 데이터가 메모리 블록과 별도로 제공되는 상태 셀에 저장된다. 이는 이후 상세히 설명될 것이다.
도 1은 본 발명에 따른 낸드 플래시 메모리 장치를 개략적으로 보여주는 블록도이다.
도 1을 참조하면, 본 발명에 따른 낸드 플래시 메모리 장치 (100)는 메모리 셀 어레이 (110)를 포함하며, 메모리 셀 어레이 (110)는 복수 개의 메모리 블록들 (BLOCK0-BLOCKm)로 구성된다. 메모리 블록들 (BLOCK0-BLOCKm) 각각은 복수 개의 페이지들 (또는 워드 라인들)을 포함하며, 각 페이지는 복수 개의 메모리 셀들로 구성된다. 각 열의 메모리 셀들은 낸드 스트링 (NAND string)을 구성한다. 디코더 회로 (120)는 외부로부터 제공되는 어드레스에 응답하여 메모리 블록 및 그것의 페이지를 선택한다. 페이지 버퍼 회로 (130)는 제어 회로 (140)에 의해서 제어되며, 읽기 동작시 선택된 메모리 블록의 선택된 페이지의 메모리 셀들로부터 데이터를 읽는다. 그렇게 읽혀진 데이터는 출력 회로 (150)를 통해 외부로 출력된다. 페이지 버퍼 회로 (130)는 프로그램 동작시 출력 회로 (150)를 통해 입력되는 데이터를 임시로 저장하고, 로드된 데이터는 제어 회로 (140)의 제어에 따라 페이지 버퍼 회로(130)를 통해 선택된 페이지의 메모리 셀들에 프로그램한다. 커맨드 로직 (160)은 외부로부터의 커맨드 및 제어 신호들 (nCE, CLE, ALE, nWE, nRE)을 입력받고, 입력 커맨드에 따라 제어 회로 (140)가 페이지 버퍼 회로 (130)의 동작을 제어하게 한다.
본 발명에 따른 낸드 플래시 메모리 장치 (100)는 상태 셀 어레이 (170)를 더 포함하며, 상태 셀 어레이 (170)는 메모리 셀 어레이 (110)의 메모리 블록들 (BLOCK0-BLOCKm)에 대한 소거/프로그램 상태를 나타내는 데이터를 저장한다. 상태 셀 어레이 (170)는 복수 개의 불 휘발성 상태 셀들을 포함하며, 불 휘발성 상태 셀들은 겹쳐쓰기 가능한 메모리 셀들 (overwritable memory cells)로 구성된다. 상태 셀들은 선택된 메모리 블록으로부터 데이터를 읽는 시간보다 짧은 읽기 시간을 갖는 메모리 셀들로 구성된다.
계속해서 도 1을 참조하면, 본 발명에 따른 낸드 플래시 메모리 장치 (100)는 디코더 회로 (180), 읽기 회로 (190), 쓰기 회로 (200), 그리고 제어 회로 (210)를 더 포함한다.
디코더 회로 (180)는 메모리 블록을 선택하기 위한 블록 어드레스에 응답하여 상태 셀 어레이 (170)의 상태 셀들 중 적어도 하나를 선택한다. 읽기 회로 (190)는 커맨드 로직 (160)으로부터의 블록 상태 읽기 인에이블 신호 (BSRE)에 응답하여 동작하며, 선택된 상태 셀로부터 데이터를 읽는다. 그렇게 읽혀진 데이터는 블록 어드레스에 대응하는 메모리 블록의 소거/프로그램 상태를 나타내는 데이터이다. 읽기 회로 (190)로부터의 데이터는 출력 회로 (150)를 통해 외부로 출력된다.쓰기 회로 (200)는 커맨드 로직 (160)으로부터의 클록 신호들 (CLOCK1, CLOCK2)과 데이터를 입력받는다. 예를 들면, 선택된 메모리 블록의 소거 동작이 수행될 때, 쓰기 회로 (200)는 클록 신호 (CLOCK1)의 활성화에 응답하여 커맨드 로직 (160)으로부터의 데이터 (선택된 메모리 블록의 소거 상태를 나타냄)를 입력받는다. 그리고, 선택된 메모리 블록의 프로그램 동작이 수행될 때, 쓰기 회로 (200)는 클록 신호 (CLOCK2)의 활성화에 응답하여 커맨드 로직 (160)으로부터의 데이터 (선택된 메모리 블록의 프로그램 상태를 나타냄)를 입력받는다. 제어 회로 (210)는 커맨드 로직 (160)으로부터의 블록 상태 쓰기 인에이블 신호들 (STATUS_CELL_WE1, STATUS_CELL_WE2)에 응답하여 쓰기 회로 (200)의 동작을 제어한다.
본 발명에 따르면, 메모리 셀 어레이 (110)의 선택된 메모리 블록이 소거되는 동안, 커맨드 로직 (160)에서 생성된 선택된 메모리 블록의 소거 상태 정보는 상태 셀 어레이 (170)에 저장된다. 마찬가지로, 메모리 셀 어레이 (110)의 선택된 메모리 블록이 프로그램되는 동안, 커맨드 로직 (160)에서 생성된 선택된 메모리 블록의 프로그램 상태 정보는 상태 셀 어레이 (170)에 저장된다. 임의의 메모리 블록에 데이터를 프로그램하는 경우, 먼저, 메모리 블록의 소거/프로그램 상태 정보가 상태 셀 어레이 (170)로부터 읽혀지며, 메모리 블록의 프로그램 동작은 읽혀진 결과에 따라 결정된다. 예를 들면, 현재 입력된 블록 어드레스에 대응하는 메모리 블록이 소거 상태인 경우, 메모리 블록에 대한 프로그램 동작이 수행될 것이다. 현재 입력된 블록 어드레스에 대응하는 메모리 블록이 프로그램 상태인 경우, 다른 메모리 블록에 대한 블록 상태 읽기 동작이 수행될 것이다.
도 2는 본 발명의 바람직한 실시예에 따른 도 1에 도시된 커맨드 로직을 보여주는 블록도이다.
본 발명에 따른 낸드 플래시 메모리 장치에 있어서, 블록 소거 동작을 수행하기 위해서는, 60H 커맨드, 어드레스, D0H 커맨드, 그리고 70H 커맨드가 정해진 타이밍에 따라 낸드 플래시 메모리 장치 (100)에 입력된다. 60H 커맨드는 블록 소거 셋업 커맨드 (block erase setup command)를 나타내고, D0H 커맨드는 소거 명령 (erase command)를 나타내며, 70H 커맨드는 읽기 상태 커맨드 (read status command)를 나타낸다. 프로그램 동작을 수행하기 위해서는, 80H 커맨드, 어드레스 및 데이터, 10H, 그리고 70H 커맨드가 정해진 타이밍에 따라 낸드 플래시 메모리 장치 (100)에 입력된다. 80H 커맨드는 연속 데이터 입력 커맨드 (sequential data input command)를 나타내고, 10H 커맨드는 프로그램 커맨드 (program command)를 나타낸다. 블록 상태 읽기 동작을 수행하기 위해서는, 71H 커맨드와 어드레스가 정해진 타이밍에 따라 낸드 플래시 메모리 장치 (100)에 입력된다. 71H 커맨드는 블록 상태 읽기 커맨드 (block status read command)를 나타내며, 어드레스는 프로그램될 메모리 블록을 지정하기 위한 블록 어드레스를 나타낸다.
도 2를 참조하면, 본 발명에 따른 커맨드 로직 (160)은 데이터 발생 회로 (300), 제 1 내지 제 3 디코더들 (310, 320, 330), D 플립-플롭들 (DFF1, DFF2), 인버터들 (INV1, INV2), 그리고 펄스 발생기들 (340, 350)을 포함한다.
데이터 발생 회로 (300)는 블록 소거 셋업 커맨드 (60H)의 입력에 응답하여 "1"의 데이터를 발생하고, 연속 데이터 입력 커맨드 (80H)의 입력에 응답하여 "0"의 데이터를 발생한다. "1"의 데이터는 프로그램될 메모리 블록이 소거 상태임을 의미하고, "0"의 데이터는 프로그램될 메모리 블록이 프로그램 상태임을 의미한다. 제 1 디코더 (310)는 블록 상태 읽기 커맨드 (71H)에 응답하여 블록 상태 읽기 인에이블 신호 (BSRE)를 발생한다.
제 2 디코더 (320)는 블록 소거 셋업 커맨드 (60H)와 소거 커맨드 (D0H)에 응답하여 블록 상태 쓰기 플래그 신호 (EBSWF)를 발생한다. 예를 들면, 블록 소거 셋업 커맨드 (60H)가 입력되고 그 다음에 소거 커맨드 (D0H)가 입력될 때, 제 2 디코더 (320)는 블록 상태 쓰기 플래그 신호 (EBSWF)를 활성화시킨다. D 플립-플롭 (DFF1)은 클록 신호로서 nWE 신호의 상승 에지에 동기되어 제 2 디코더 (320)의 출력 신호 (EBSWF)를 래치한다. D 플립-플롭 (DFF1)은 리세트 신호로서 nCE 신호의 로우-하이 천이시에 리세트된다. D 플립-플롭 (DFF1)의 출력 신호 (FERASE)는 인버터 (INV1)를 통해 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE1)로서 출력된다. 펄스 발생기 (340)는 인버터들 (INV2, INV3), 지연기 (341) (도면에서 "DLY"로 표기됨), 그리고 배타적 OR 게이트 (exclusive OR gate) (G1)로 구성되며, 도면에 도시된 바와 같이 연결되어 있다. 펄스 발생기 (340)는 D 플립-플롭 (DFF1)의 출력 신호 (FERASE)의 로우-하이 천이에 응답하여 액티브 로우 펄스의 클록 신호 (CLOCK1)를 발생한다.
제 3 디코더 (330)는 연속 데이터 입력 커맨드 (80H)와 프로그램 커맨드 (10H)에 응답하여 블록 상태 쓰기 플래그 신호 (PBSWF)를 발생한다. 예를 들면, 연속 데이터 입력 커맨드 (80H)가 입력되고 그 다음에 프로그램 커맨드 (10H)가 입력될 때, 제 3 디코더 (330)는 블록 상태 쓰기 플래그 신호 (PBSWF)를 활성화시킨다. D 플립-플롭 (DFF2)은 클록 신호로서 nWE 신호의 상승 에지에 동기되어 제 3 디코더 (330)의 출력 신호 (PBSWF)를 래치한다. D 플립-플롭 (DFF2)은 리세트 신호로서 nCE 신호의 로우-하이 천이시에 리세트된다. D 플립-플롭 (DFF2)의 출력 신호 (FPROGRAM)는 인버터 (INV4)를 통해 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE2)로서 출력된다. 펄스 발생기 (350)는 인버터들 (INV5, INV6), 지연기 (351) (도면에서 "DLY"로 표기됨), 그리고 배타적 OR 게이트 (G2)로 구성되며, 도면에 도시된 바와 같이 연결되어 있다. 펄스 발생기 (350)는 D 플립-플롭 (DFF2)의 출력 신호 (FPROGRAM)의 로우-하이 천이에 응답하여 액티브 로우 펄스의 클록 신호 (CLOCK2)를 발생한다.
도 3은 본 발명에 따른 낸드 플래시 메모리 장치의 소거 동작을 설명하기 위한 타이밍도이다.
임의의 메모리 블록을 소거하기 위해서는, 도 3에 도시된 바와 같이, 60H 커맨드, 어드레스, 그리고 D0H 커맨드가 정해진 타이밍에 따라 낸드 플래시 메모리 장치 (100)에 입력된다. 60H 커맨드 및 D0H 커맨드가 입력됨에 따라, 제어 회로 (140)는 커맨드 로직 (160)의 제어에 따라 선택된 메모리 블록의 소거 동작이 수행될 수 있도록 페이지 버퍼 회로 (130)와 고전압 발생 회로 (미도시됨)을 제어한다. 이는 앞서 언급된 특허들에 상세히 게재되어 있으며, 그것에 대한 설명은 그러므로 생략될 것이다.
선택된 메모리 블록에 대한 소거 동작이 수행된 후, 선택된 메모리 블록이올바르게 소거되었는 지의 여부가 판별될 것이다. 그러한 판별은, 이 분야에 잘 알려진 바와 같이, 읽기 상태 커맨드 (70H)의 입력에 따라 입출력 핀 (I/O0)을 통해 출력되는 데이터를 통해 수행될 것이다. 선택된 메모리 블록에 대한 소거 동작이 수행되는 동안, 선택된 메모리 블록의 블록 상태 정보가 다음과 같은 절차를 통해 상태 셀 어레이 (170)에 쓰여질 것이다.
커맨드 로직 (160)의 데이터 발생 회로 (300)는 60H 커맨드의 입력에 응답하여 선택된 메모리 블록이 소거됨을 나타내는 "1"의 데이터 (STATUS_DATA)를 생성한다. 소거될 메모리 블록에 대응하는 블록 어드레스에 따라 상태 셀 어레이 (170)의 상태 셀이 디코더 회로 (180)에 의해서 선택된다. 커맨드 로직 (160)의 제 2 디코더 (320)는 60H 커맨드의 입력 후에 D0H 커맨드의 입력에 응답하여 블록 상태 쓰기 플래그 신호 (EBSWF)를 하이로 활성화시킨다. D 플립-플롭(DFF1)은 nWE 신호의 로우-하이 천이에 응답하여 제 2 디코더 (320)의 출력 신호 (EBSWF)를 래치한다. 펄스 발생기 (340)는 D 플립-플롭 (DFF1)의 출력 신호 (FERASE)의 로우-하이 천이에 응답하여 액티브 로우 펄스의 클록 신호 (CLOCK1)를 발생한다. 쓰기 회로 (200)는 클록 신호 (CLOCK1)에 응답하여 데이터 발생 회로 (300)로부터의 데이터를 입력받는다. 이와 동시에, D 플립-플롭 (DFF1)에 래치된 신호는 인버터 (INV1)를 통해 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE1)로서 출력된다. 쓰기 회로 (200)는 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE1)에 응답하여 입력된 데이터를 상태 셀 어레이 (170)의 선택된 상태 셀에 기입한다. 이후, nCE 신호가 로우 레벨에서 하이 레벨로 천이할 때, 신호들 (EBSWF, FERASE, STATUS_CELL_WE1)은 순차적으로 비활성화된다.
도 4는 본 발명에 따른 낸드 플래시 메모리 장치의 프로그램 동작을 설명하기 위한 타이밍도이다.
임의의 메모리 블록을 프로그램하기 위해서는, 도 4에 도시된 바와 같이, 80H 커맨드, 어드레스 및 데이터, 그리고 10H 커맨드가 정해진 타이밍에 따라 낸드 플래시 메모리 장치 (100)에 입력된다. 80H 커맨드 및 10H 커맨드가 입력됨에 따라, 제어 회로 (140)는 커맨드 로직 (160)의 제어에 따라 선택된 메모리 블록의 프로그램 동작이 수행될 수 있도록 페이지 버퍼 회로 (130)와 고전압 발생 회로 (미도시됨)을 제어한다. 이는 앞서 언급된 특허들에 상세히 게재되어 있으며, 그것에 대한 설명은 그러므로 생략될 것이다.
선택된 메모리 블록에 대한 프로그램 동작이 수행된 후, 선택된 메모리 블록이 올바르게 프로그램되었는 지의 여부가 판별될 것이다. 그러한 판별은, 이 분야에 잘 알려진 바와 같이, 읽기 상태 커맨드 (70H)의 입력에 따라 입출력 핀 (I/O0)을 통해 출력되는 데이터를 통해 수행될 것이다. 선택된 메모리 블록에 대한 프로그램 동작이 수행되는 동안, 선택된 메모리 블록의 블록 상태 정보는 다음과 같은 절차를 통해 상태 셀 어레이 (170)에 쓰여질 것이다.
커맨드 로직 (160)의 데이터 발생 회로 (300)는 80H 커맨드의 입력에 응답하여 선택된 메모리 블록이 프로그램됨을 나타내는 "0"의 데이터 (STATUS_DATA)를 생성한다. 프로그램될 메모리 블록에 대응하는 블록 어드레스에 따라 상태 셀 어레이 (170)의 상태 셀이 디코더 회로 (180)에 의해서 선택된다. 커맨드 로직 (160)의 제3 디코더 (330)는 80H 커맨드의 입력 후에 10H 커맨드의 입력에 응답하여 블록 상태 쓰기 플래그 신호 (PBSWF)를 하이로 활성화시킨다. D 플립-플롭(DFF2)은 nWE 신호의 로우-하이 천이에 응답하여 제 3 디코더 (330)의 출력 신호 (PBSWF)를 래치한다. 펄스 발생기 (350)는 D 플립-플롭 (DFF2)의 출력 신호 (FPROGRAM)의 로우-하이 천이에 응답하여 액티브 로우 펄스의 클록 신호 (CLOCK2)를 발생한다. 쓰기 회로 (200)는 클록 신호 (CLOCK2)에 응답하여 데이터 발생 회로 (300)로부터의 데이터를 입력받는다. 이와 동시에, D 플립-플롭 (DFF2)에 래치된 신호는 인버터 (INV4)를 통해 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE2)로서 출력된다. 쓰기 회로 (200)는 블록 상태 쓰기 인에이블 신호 (STATUS_CELL_WE2)에 응답하여 입력된 데이터를 상태 셀 어레이 (170)의 선택된 상태 셀에 기입한다. 이후, nCE 신호가 로우 레벨에서 하이 레벨로 천이할 때, 신호들 (PBSWF, FPROGRAM, STATUS_CELL_WE2)은 순차적으로 비활성화된다.
도 5는 본 발명에 따른 낸드 플래시 메모리 장치의 블록 상태 읽기 동작을 설명하기 위한 타이밍도이다.
상태 셀 어레이 (170)에 저장된 블록 상태 정보는 임의의 메모리 블록을 프로그램하고자 하기 전에 액세스된다. 즉, 메모리 블록을 프로그램하고자 하는 경우, 먼저, 메모리 블록이 소거 상태인지 프로그램 상태인지의 여부를 판별하여야 한다. 이를 위해서, 70H 커맨드가 낸드 플래스 메모리 장치 (100)에 입력된다. 71H 커맨드가 입력됨에 따라, 커맨드 로직 (160)의 제 1 디코더 (310)는 71H 커맨드의 입력에 응답하여 블록 상태 읽기 인에이블 신호 (BSRE)를 활성화시킨다. 그 다음에, 디코더 회로 (180)는 외부로부터의 블록 어드레스에 응답하여 상태 셀을 선택하며, 읽기 회로 (190)는 선택된 상태 셀의 블록 상태 정보를 읽는다. 출력 회로 (150)는 읽기 회로 (190)로부터 블록 상태 데이터를 입력받고, nRE 신호에 동기되어 블록 상태 데이터를 외부로 출력한다.
낸드 플래시 메모리 장치 (100)로부터 출력된 데이터가 선택된 메모리 블록이 소거 상태임을 나타낼 때, 선택된 메모리 블록의 프로그램 동작이 수행될 것이다. 만약, 낸드 플래시 메모리 장치 (100)로부터 출력된 데이터가 선택된 메모리 블록이 프로그램 상태임을 나타낼 때, 선택된 메모리 블록의 프로그램 동작은 수행되지 않는다. 다른 메모리 블록에 대한 프로그램 동작이 수행될 것이다. 이 경우에도, 다른 메모리 블록이 소거 상태인지 아니면 프로그램 상태인 지의 여부를 판별하기 위해서 블록 상태 읽기 동작이 수행되어야 한다.
이상에서, 본 발명에 따른 회로의 구성 및 동작을 상기한 설명 및 도면에 따라 도시하였지만, 이는 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상 및 범위를 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다.
상술한 바와 같이, 메모리 블록들의 소거/프로그램 상태 정보를 저장하는 별도의 상태 셀 어레이 (또는 블록 상태 정보 테이블)를 구비함으로써, 보다 빠르게 프로그램 동작이 수행될 수 있다.
Claims (7)
- 복수 개의 메모리 블록들을 갖는 메모리 셀 어레이를 포함하는 낸드 플래시 메모리 장치에 있어서:복수 개의 상태 셀들을 가지며, 상기 메모리 블록들의 소거/프로그램 상태들을 나타내는 데이터를 저장하는 상태 셀 어레이와;데이터 입력 명령에 응답하여 선택된 메모리 블록의 프로그램 상태를 나타내는 데이터를 생성하고, 블록 소거 셋업 명령에 응답하여 선택된 메모리 블록의 소거 상태를 나타내는 데이터를 생성하는 데이터 발생 회로와;소거 명령과 프로그램 명령 중 하나에 응답하여 블록 상태 쓰기 인에이블 신호와 클록 신호를 발생하는 제 1 신호 발생 회로와;상기 선택된 메모리 블록의 블록 어드레스에 응답하여 상기 상태 셀 어레이의 상태 셀들 중 적어도 하나를 선택하는 선택 회로와;프로그램 또는 소거 동작시 상기 클록 신호에 응답하여 상기 데이터 발생 회로로부터의 데이터를 입력받고, 상기 선택된 상태 셀에 상기 입력된 데이터를 쓰는 쓰기 회로와; 그리고상기 제 1 신호 발생 회로로부터의 블록 상태 쓰기 인에이블 신호에 응답하여 동작하며, 선택된 메모리 블록의 소거/프로그램 동작이 수행될 때 상기 쓰기 회로에 입력된 데이터가 선택된 상태 셀에 저장되도록 상기 쓰기 회로를 제어하는 제어 회로를 포함하는 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 1 항에 있어서,상기 상태 셀들은 겹쳐쓰기 가능한 불 휘발성 메모리 셀들인 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 1 항에 있어서,상기 제 1 신호 발생 회로는상기 소거 명령에 응답하여 제 1 블록 상태 쓰기 인에이블 신호와 제 1 클록 신호를 발생하는 제 1 신호 발생부와;상기 프로그램 명령에 응답하여 제 2 블록 상태 쓰기 인에이블 신호와 제 2 클록 신호를 발생하는 제 2 신호 발생부를 포함하는 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 3 항에 있어서,상기 제 1 신호 발생부는상기 소거 명령을 디코딩하여 블록 상태 쓰기 플래그 신호를 발생하는 디코더와;쓰기 인에이블 신호에 응답하여 상기 디코더로부터 상기 블록 상태 쓰기 플래그 신호를 래치하는 래치와;상기 래치의 출력 신호에 응답하여 상기 제 1 클록 신호를 발생하는 클록 발생기와; 그리고상기 래치의 출력 신호를 반전시켜 상기 제 1 블록 상태 쓰기 인에이블 신호로서 출력하는 인버터를 포함하는 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 3 항에 있어서,상기 제 2 신호 발생부는상기 프로그램 명령을 디코딩하여 블록 상태 쓰기 플래그 신호를 발생하는 디코더와;쓰기 인에이블 신호에 응답하여 상기 디코더로부터 상기 블록 상태 쓰기 플래그 신호를 래치하는 래치와;상기 래치의 출력 신호에 응답하여 상기 제 2 클록 신호를 발생하는 클록 발생기와; 그리고상기 래치의 출력 신호를 반전시켜 상기 제 2 블록 상태 쓰기 인에이블 신호로서 출력하는 인버터를 포함하는 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 1 항에 있어서,상기 상태 셀들의 데이터를 읽기 위한 블록 상태 읽기 명령에 응답하여 블록 상태 읽기 인에이블 신호를 발생하는 제 2 신호 발생 회로와; 그리고소거/프로그램될 메모리 블록의 블록 어드레스에 대응하는 상태 셀로부터 데이터를 읽는 읽기 회로를 더 포함하는 것을 특징으로 하는 낸드 플래시 메모리 장치.
- 제 6 항에 있어서,상기 제어 회로는 상기 블록 상태 읽기 인에이블 신호에 응답하여 상기 읽기 회로를 제어하며, 상기 읽기 회로에 의해서 읽혀진 데이터는 출력 회로를 통해 외부로 출력되는 것을 특징으로 하는 낸드 플래시 메모리 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2003-0012066A KR100504696B1 (ko) | 2003-02-26 | 2003-02-26 | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 |
US10/788,738 US6930919B2 (en) | 2003-02-26 | 2004-02-26 | NAND-type flash memory device having array of status cells for storing block erase/program information |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2003-0012066A KR100504696B1 (ko) | 2003-02-26 | 2003-02-26 | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040076727A true KR20040076727A (ko) | 2004-09-03 |
KR100504696B1 KR100504696B1 (ko) | 2005-08-03 |
Family
ID=32866971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-0012066A KR100504696B1 (ko) | 2003-02-26 | 2003-02-26 | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6930919B2 (ko) |
KR (1) | KR100504696B1 (ko) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644239B2 (en) | 2004-05-03 | 2010-01-05 | Microsoft Corporation | Non-volatile memory cache performance improvement |
US7490197B2 (en) | 2004-10-21 | 2009-02-10 | Microsoft Corporation | Using external memory devices to improve system performance |
KR100680478B1 (ko) * | 2005-03-22 | 2007-02-08 | 주식회사 하이닉스반도체 | 면적이 감소된 플래시 메모리 장치와 그 액세스 제어 방법 |
KR100729358B1 (ko) * | 2005-08-29 | 2007-06-15 | 삼성전자주식회사 | 멀티 버퍼 프로그램 스킴을 갖는 플래시 메모리 장치 |
US8914557B2 (en) | 2005-12-16 | 2014-12-16 | Microsoft Corporation | Optimizing write and wear performance for a memory |
KR100782942B1 (ko) * | 2006-02-08 | 2007-12-07 | 삼성전자주식회사 | 일정한 소거수행시간을 제공하는 소거전압 발생회로 및이를 포함하는 불휘발성 반도체 메모리 장치 |
US7565477B2 (en) * | 2006-12-22 | 2009-07-21 | Spansion Llc | Semiconductor device and method of controlling the same |
KR100851545B1 (ko) * | 2006-12-29 | 2008-08-11 | 삼성전자주식회사 | 커맨드 및 어드레스 핀을 갖는 낸드 플래시 메모리 및그것을 포함한 플래시 메모리 시스템 |
US8631203B2 (en) | 2007-12-10 | 2014-01-14 | Microsoft Corporation | Management of external memory functioning as virtual cache |
KR101365683B1 (ko) * | 2007-12-27 | 2014-02-20 | 삼성전자주식회사 | 가변 저항 메모리 장치, 그것의 플렉서블 프로그램 방법,그리고 그것을 포함하는 메모리 시스템 |
US7949821B2 (en) * | 2008-06-12 | 2011-05-24 | Micron Technology, Inc. | Method of storing data on a flash memory device |
US9032151B2 (en) | 2008-09-15 | 2015-05-12 | Microsoft Technology Licensing, Llc | Method and system for ensuring reliability of cache data and metadata subsequent to a reboot |
US8032707B2 (en) | 2008-09-15 | 2011-10-04 | Microsoft Corporation | Managing cache data and metadata |
US7953774B2 (en) | 2008-09-19 | 2011-05-31 | Microsoft Corporation | Aggregation of write traffic to a data store |
KR101051797B1 (ko) * | 2009-03-04 | 2011-07-25 | 매그나칩 반도체 유한회사 | 비휘발성 메모리 장치 및 그의 구동방법 |
KR101625641B1 (ko) * | 2010-04-08 | 2016-05-30 | 삼성전자주식회사 | 비휘발성 메모리 장치, 이의 동작 방법 및 이를 포함하는 장치들 |
KR101975406B1 (ko) | 2012-07-11 | 2019-05-07 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 및 그것의 메모리 블록 관리, 소거, 및 프로그램 방법들 |
US11037635B1 (en) * | 2020-02-06 | 2021-06-15 | Sandisk Technologies Llc | Power management for multi-plane read operations |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04301298A (ja) * | 1991-03-29 | 1992-10-23 | Nec Corp | 不揮発性半導体記憶装置 |
US5687345A (en) * | 1992-03-17 | 1997-11-11 | Hitachi, Ltd. | Microcomputer having CPU and built-in flash memory that is rewritable under control of the CPU analyzing a command supplied from an external device |
JP3252306B2 (ja) * | 1993-08-10 | 2002-02-04 | 株式会社日立製作所 | 半導体不揮発性記憶装置 |
KR100297602B1 (ko) * | 1997-12-31 | 2001-08-07 | 윤종용 | 비휘발성메모리장치의프로그램방법 |
US5982665A (en) * | 1999-03-29 | 1999-11-09 | Silicon Storage Technology, Inc. | Non-volatile memory array having a plurality of non-volatile memory status cells coupled to a status circuit |
JP3920501B2 (ja) * | 1999-04-02 | 2007-05-30 | 株式会社東芝 | 不揮発性半導体記憶装置及びそのデータ消去制御方法 |
KR100343285B1 (ko) * | 2000-02-11 | 2002-07-15 | 윤종용 | 프로그램 시간을 단축시킬 수 있는 플래시 메모리 장치의프로그램 방법 |
JP2001250388A (ja) * | 2000-03-06 | 2001-09-14 | Fujitsu Ltd | 消去動作情報を記憶する不揮発性メモリ |
JP2003022687A (ja) * | 2001-07-09 | 2003-01-24 | Mitsubishi Electric Corp | 半導体記憶装置 |
KR100463197B1 (ko) * | 2001-12-24 | 2004-12-23 | 삼성전자주식회사 | 멀티-페이지 프로그램 동작, 멀티-페이지 읽기 동작,그리고 멀티-블록 소거 동작을 갖는 낸드 플래시 메모리장치 |
JP2004095048A (ja) * | 2002-08-30 | 2004-03-25 | Toshiba Corp | 不揮発性半導体メモリ |
-
2003
- 2003-02-26 KR KR10-2003-0012066A patent/KR100504696B1/ko not_active IP Right Cessation
-
2004
- 2004-02-26 US US10/788,738 patent/US6930919B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR100504696B1 (ko) | 2005-08-03 |
US6930919B2 (en) | 2005-08-16 |
US20040165442A1 (en) | 2004-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100504696B1 (ko) | 블록 소거/프로그램 정보를 저장하기 위한 상태 셀들의어레이를 포함한 낸드 플래시 메모리 장치 | |
KR100463197B1 (ko) | 멀티-페이지 프로그램 동작, 멀티-페이지 읽기 동작,그리고 멀티-블록 소거 동작을 갖는 낸드 플래시 메모리장치 | |
JP4287158B2 (ja) | Nandフラッシュメモリ装置 | |
WO1998059343A1 (en) | Synchronous page-mode non-volatile memory | |
JP2003085988A (ja) | 不揮発性半導体メモリ装置 | |
JP2007004961A (ja) | マルチレベルセルフラッシュメモリのアクセス方法及び装置 | |
US7420849B2 (en) | Memory device distributed controller system | |
KR20090026291A (ko) | 명령-및-어드레스-로드 주파수보다 더 높은 데이터 기입 주파수를 구비한 nand 시스템 | |
JP3875139B2 (ja) | 不揮発性半導体記憶装置、そのデータ書き込み制御方法およびプログラム | |
KR100564598B1 (ko) | 동기식 플래쉬 메모리장치 및 이를 동작시키는 방법 | |
JP2005092882A (ja) | データ伝送時間を減少させるデュアルバッファリングメモリシステム及びこれに対する制御方法 | |
KR100560773B1 (ko) | 동작 모드의 재설정없이 버스트 길이를 제어할 수 있는반도체 메모리 장치 및 그것을 포함하는 메모리 시스템 | |
JP2784550B2 (ja) | 半導体記憶装置 | |
KR20190048033A (ko) | 반도체 장치의 테스트 모드 설정 회로 및 방법 | |
KR20060009446A (ko) | 프로세서의 오동작을 방지할 수 있는 정보 처리 장치 | |
KR100621637B1 (ko) | 프로그램 시간을 단축시킬 수 있는 플래시 메모리 장치 및그것의 프로그램 방법 | |
US8531905B2 (en) | Memory apparatus and refresh method thereof | |
KR100365690B1 (ko) | 불휘발성 메모리, 복수개의 불휘발성 메모리들을 구비한시스템 , 및 이 시스템의 데이터 리드 방법 | |
KR20180091731A (ko) | 반도체 기억장치 및 데이터 세팅 방법 | |
KR100852923B1 (ko) | 반도체 메모리 | |
US20100329027A1 (en) | Nonvolatile memory device and method of operating the same | |
KR100288417B1 (ko) | 동기형 반도체 기억 장치 | |
KR101155113B1 (ko) | 불휘발성 메모리 소자 및 그 동작 방법 | |
JP6035760B2 (ja) | 半導体記憶装置及び半導体記憶装置の制御方法 | |
CN110556138B (zh) | 半导体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20090714 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |