KR20170110408A - 메모리 장치 및 이의 동작 방법 - Google Patents
메모리 장치 및 이의 동작 방법 Download PDFInfo
- Publication number
- KR20170110408A KR20170110408A KR1020160034761A KR20160034761A KR20170110408A KR 20170110408 A KR20170110408 A KR 20170110408A KR 1020160034761 A KR1020160034761 A KR 1020160034761A KR 20160034761 A KR20160034761 A KR 20160034761A KR 20170110408 A KR20170110408 A KR 20170110408A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- received
- logical page
- page data
- lsb
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
- 238000011017 operating method Methods 0.000 title 1
- 230000015654 memory Effects 0.000 claims abstract description 110
- 230000002093 peripheral effect Effects 0.000 claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 17
- 230000005540 biological transmission Effects 0.000 claims description 48
- 239000000872 buffer Substances 0.000 claims description 33
- 230000004044 response Effects 0.000 claims description 19
- 238000012544 monitoring process Methods 0.000 claims description 8
- 239000004065 semiconductor Substances 0.000 claims description 2
- 230000003213 activating effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 101000741396 Chlamydia muridarum (strain MoPn / Nigg) Probable oxidoreductase TC_0900 Proteins 0.000 description 1
- 101000741399 Chlamydia pneumoniae Probable oxidoreductase CPn_0761/CP_1111/CPj0761/CpB0789 Proteins 0.000 description 1
- 101000741400 Chlamydia trachomatis (strain D/UW-3/Cx) Probable oxidoreductase CT_610 Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- 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
-
- 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
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1063—Control signal output circuits, e.g. status or busy flags, feedback command signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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/32—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/75—Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
- Computer Security & Cryptography (AREA)
Abstract
본 기술은 다수의 페이지들이 포함된 메모리 셀 어레이; 상기 페이지들 중 선택된 페이지에 프로그램될 다수의 논리 페이지 데이터를 순차적으로 수신하고, 상기 수신된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하도록 구성된 주변 회로; 및 상기 다수의 논리 페이지 데이터 중에서, 수신이 완료된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하고, 상기 프로그램이 수행되는 동안 나머지 논리 페이지 데이터가 수신되도록 상기 주변 회로를 제어하는 제어 로직을 포함하는 메모리 장치 및 이의 동작 방법을 포함한다.
Description
본 발명은 메모리 장치 및 이의 동작 방법에 관한 것으로, 보다 구체적으로는 메모리 장치의 프로그램 동작에 관한 것이다.
메모리 장치는 메모리 컨트롤러로부터 수신된 커맨드 및 어드레스에 따라 데이터를 저장하기 위한 프로그램 동작을 수행한다. 이를 위해, 메모리 장치는 데이터가 저장되는 메모리 셀 어레이와, 프로그램 동작을 수행하는 주변 회로와, 주변 회로를 제어하는 제어 로직을 포함할 수 있다.
메모리 셀 어레이는 다수의 플래인들(planes)을 포함할 수 있으며, 각각의 플래인에는 다수의 메모리 블록들이 포함될 수 있다. 각각의 메모리 블록은 다수의 스트링들을 포함할 수 있으며, 각각의 스트링은 다수의 메모리 셀들을 포함할 수 있다.
스트링들은 2차원 또는 3차원 구조로 구현될 수 있으며, 2차원 구조의 스트링들을 포함하는 메모리 장치는 2차원 메모리 장치라 할 수 있고, 3차원 구조의 스트링들을 포함하는 메모리 장치는 3차원 메모리 장치라 할 수 있다.
2차원 메모리 장치의 스트링들은 기판에 평행하게 배열된 메모리 셀들을 포함할 수 있고, 3차원 메모리 장치의 스트링들은 기판에 수직하게 배열된 메모리 셀들을 포함할 수 있다.
최근에는 2차원 구조의 메모리 장치보다 면적을 적게 차지하고 집적도를 높일 수 있는 3차원 구조의 메모리 장치가 활발히 개발되고 있다.
본 발명이 해결하고자 하는 과제는, 3차원 메모리 장치의 프로그램 동작의 신뢰도를 개선할 수 있는 메모리 장치 및 이의 동작 방법을 제공한다.
본 발명의 실시예에 따른 메모리 장치는, 다수의 페이지들이 포함된 메모리 셀 어레이; 상기 페이지들 중 선택된 페이지에 프로그램될 다수의 논리 페이지 데이터를 순차적으로 수신하고, 상기 수신된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하도록 구성된 주변 회로; 및 상기 다수의 논리 페이지 데이터 중에서, 수신이 완료된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하고, 상기 프로그램이 수행되는 동안 나머지 논리 페이지 데이터가 수신되도록 상기 주변 회로를 제어하는 제어 로직을 포함한다.
본 발명의 실시예에 따른 메모리 장치의 동작 방법은, 제1 내지 제N 논리 페이지 데이터를 순차적으로 수신하는 단계; 상기 제1 내지 제N 논리 페이지 데이터 중에서 수신 완료된 논리 페이지 데이터가 있으면, 상기 수신 완료된 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하는 단계; 및 상기 수신 완료된 논리 페이지 데이터가 선택된 메모리 셀들에 프로그램되는 동안, 나머지 논리 페이지 데이터를 수신하는 단계를 포함한다.
본 발명의 실시예에 따른 메모리 장치의 동작 방법은, LSB 데이터, CSB 데이터 및 MSB 데이터를 순차적으로 수신하는 단계; 상기 LSB 데이터가 모두 수신되면, 선택된 페이지에 포함된 메모리 셀들에 상기 LSB 데이터를 프로그램하는 단계; 상기 LSB 데이터를 프로그램하는 동안, 상기 CSB 데이터 및 상기 MSB 데이터를 수신하는 단계; 및 상기 CSB 데이터 및 상기 MSB 데이터가 모두 수신되고, 상기 LSB 데이터의 프로그램이 완료되면, 상기 CSB 데이터 및 상기 MSB 데이터를 상기 메모리 셀들에 순차적으로 프로그램하는 단계를 포함한다.
본 기술은 메모리 장치의 프로그램 동작의 신뢰도를 개선할 수 있으며, 메모리 장치의 리텐션(retention) 특성을 개선할 수 있다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 메모리 장치를 구체적으로 설명하기 위한 도면이다.
도 3은 본 발명의 제1 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 4는 본 발명의 제2 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 5는 본 발명의 제3 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 6은 본 발명의 프로그램 동작을 수행하기 위한 제어 로직의 실시예를 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 제어 로직의 동작 방법을 설명하기 위한 도면이다.
도 8은 다수의 플래인들이 포함된 메모리 장치를 설명하기 위한 도면이다.
도 9는 제4 실시예에 따른 프로그램 동작을 설명하기 위한 도면이다.
도 10은 본 발명의 다른 실시예에 따른 메모리 시스템을 설명하기 위한 도면이다.
도 11은 본 발명의 다른 실시예에 다른 메모리 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 메모리 장치를 구체적으로 설명하기 위한 도면이다.
도 3은 본 발명의 제1 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 4는 본 발명의 제2 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 5는 본 발명의 제3 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 6은 본 발명의 프로그램 동작을 수행하기 위한 제어 로직의 실시예를 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 제어 로직의 동작 방법을 설명하기 위한 도면이다.
도 8은 다수의 플래인들이 포함된 메모리 장치를 설명하기 위한 도면이다.
도 9는 제4 실시예에 따른 프로그램 동작을 설명하기 위한 도면이다.
도 10은 본 발명의 다른 실시예에 따른 메모리 시스템을 설명하기 위한 도면이다.
도 11은 본 발명의 다른 실시예에 다른 메모리 시스템을 설명하기 위한 도면이다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 모호하지 않도록 하기 위해 생략될 것이라는 것을 유의하여야 한다. 또한, 본 발명은 여기에서 설명되는 실시 예에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 여기에서 설명되는 실시 예은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 메모리 시스템(1000)은 저장 장치(storage device; 1100)와, 저장 장치(1100)를 제어하는 호스트(host; 1200)로 구성될 수 있다. 저장 장치(1100)는 데이터가 저장되는 메모리 장치(1110)와 메모리 장치(1110)를 제어하는 메모리 컨트롤러(1120)를 포함할 수 있다.
호스트(1200)는 PCI-E(Peripheral Component Interconnect - Express), ATA(Advanced Technology Attachment), SATA(Serial ATA), PATA(Parallel ATA), 또는 SAS(serial attached SCSI)와 같은 인터페이스 프로토콜을 사용하여 저장 장치(1100)와 통신할 수 있다. 또한, 호스트(1200)와 저장 장치(1100) 간의 인터페이스 프로토콜들은 상술한 예에 한정되지 않으며, USB(Universal Serial Bus), MMC(Multi-Media Card), ESDI(Enhanced Small Disk Interface), 또는 IDE(Integrated Drive Electronics) 등과 같은 다른 인터페이스 프로토콜들 중 하나일 수 있다.
메모리 컨트롤러(1120)는 저장 장치(1100)의 동작을 전반적으로 제어하며, 호스트(1200)와 메모리 장치(1110) 사이의 데이터 교환을 제어한다. 예를 들면, 메모리 컨트롤러(1120)는 호스트(1200)의 요청에 따라 프로그램, 리드 또는 소거 동작이 수행되도록 메모리 장치(1110)를 제어할 수 있다. 프로그램 동작을 예로 들면, 메모리 컨트롤러(1120)는 커맨드, 어드레스 및 데이터를 메모리 장치(1110)에 전송할 수 있고, 메모리 장치(1110)는 수신된 커맨드, 어드레스 및 데이터에 따라 프로그램 동작을 수행할 수 있다.
메모리 장치(1110)는 DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory), LPDDR4(Low Power Double Data Rate4) SDRAM, GDDR(Graphics Double Data Rate) SDRAM, LPDDR(Low Power DDR), RDRAM(Rambus Dynamic Random Access Memory) 또는 플래쉬 메모리(FLASH Memory)를 포함할 수 있다. 본 실시예에서는 메모리 장치(1110)가 플래쉬 메모리로 이루어진 경우를 예를 들어 설명하도록 한다.
도 2는 도 1의 메모리 장치를 구체적으로 설명하기 위한 도면이다.
도 2를 참조하면, 메모리 장치(1110)는 데이터가 저장되는 메모리 셀 어레이(100)와, 메모리 셀 어레이(100)에 데이터를 저장하기 위한 프로그램 동작(program operation), 저장된 데이터를 출력하기 위한 리드 동작(read operation), 저장된 데이터를 소거하기 위한 소거 동작(erase operation)을 수행하도록 구성된 주변 회로(200)와, 주변 회로(200)를 제어하는 제어 로직(300)을 포함할 수 있다.
메모리 셀 어레이(100)는 다수의 메모리 블록들(MB1~MBk; k는 양의 정수)을 포함할 수 있다. 각각의 메모리 블록들(MB1~MBk)에는 워드라인들(WL)과 비트라인들(BL1~BLI; I는 양의 정수)이 연결될 수 있다. 워드라인들(WL)은 각각의 메모리 블록들에 연결되며, 비트라인들(BL1~BLI)은 메모리 블록들에 공통으로 연결될 수 있다. 도 2에는 도시되지 않았으나, 각각의 메모리 블록들(MB1~MBk)에는 워드라인들(WL) 외에도 소스 셀렉트 라인들(source select lines), 드레인 셀렉트 라인들(drain select lines) 또는 파이프 라인들(pipe lines) 등이 연결될 수 있다. 워드라인에 연결된 메모리 셀들의 그룹을 물리 페이지(physical page)라 한다. 멀티 레벨 셀 방식의 프로그램 동작에서는, 하나의 물리 페이지에 다수의 논리 페이지(logical page) 데이터가 저장될 수 있다.
주변 회로(200)는 전압 생성 회로(210), 로우 디코더(220), 페이지 버퍼부(230), 컬럼 디코더(240), 입출력 회로(250) 및 전류 센싱 회로(260)를 포함할 수 있다.
전압 생성 회로(210)는 동작 신호(OP_CMD)에 응답하여 프로그램, 리드 또는 소거 동작에 사용되는 다양한 동작 전압들(Vop)을 생성할 수 있다. 예를 들면, 전압 생성 회로(210)는 프로그램 전압, 리드 전압, 소거 전압, 패스 전압 및 턴온 전압 등의 동작 전압들(Vop)을 생성할 수 있다.
로우 디코더(220)는 로우 어드레스(RADD)에 응답하여 동작 전압들(Vop)을 선택된 메모리 블록에 연결된 워드라인들(WL)에 전달할 수 있다.
페이지 버퍼부(230)는 비트라인들(BL1~BLI)에 연결된 다수의 페이지 버퍼들(PB1~PBI)을 포함할 수 있다. 페이지 버퍼들(PB1~PBI)은 페이지 버퍼 제어 시호들(PBSIGNALS)에 응답하여 동작할 수 있다. 페이지 버퍼들(PB1~PBI)은 비트라인들(BL1~BLI)을 통해 수신된 데이터를 임시로 저장하거나, 리드 또는 검증 동작시, 비트라인들(BL1~BLI)의 전압 또는 전류를 센싱(sensing)할 수 있다. 검증 동작은 프로그램 동작 및 소거 동작에서 수행되는 검증 동작이 포함될 수 있다. 멀티 레벨 셀 방식의 프로그램 동작을 위하여, 페이지 버퍼들(PB1~PBI)은 다수의 논리 페이지 데이터를 임시로 저장할 수 있다. 예를 들면, 페이지 버퍼들(PB1~PBI)은 제1 내지 제N 논리 페이지 데이터를 임시로 저장할 수 있다. 또는, 페이지 버퍼들(PB1~PBI)은 하위 비트 페이지 데이터(Least Significant Bit; 이하, LSB 데이터), 중간 비트 페이지 데이터(Central Significant Bit; 이하, CSB 데이터) 및 상위 비트 페이지 데이터(Most Significant Bit; 이하, MSB 데이터)를 저장할 수 있다. 메모리 장치(1110)에 따라, 페이지 버퍼들(PB1~PBI)은 LSB 데이터, CSB 데이터 및 MSB 데이터 외에도 더 많은 논리 페이지 데이터를 저장할 수도 있다. 다수의 논리 페이지 데이터를 저장하기 위하여, 페이지 버퍼들(PB1~PBI)에는 다수의 래치들(latches)을 포함할 수 있다. 서로 다른 논리 페이지 데이터는 서로 다른 래치들에 각각 저장될 수 있다. 하나의 페이지 버퍼(PB1)를 예로 들면, 페이지 버퍼(PB1)는 다수의 래치들을 포함할 수 있으며, 각각의 래치들에는 LSB 데이터, CSB 데이터 또는 MSB 데이터가 임시로 저장될 수 있다.
컬럼 디코더(240)는 컬럼 어드레스(CADD)에 응답하여 입출력 회로(250)와 페이지 버퍼부(230) 사이에서 데이터를 전달할 수 있다. 예를 들면, 컬럼 디코더(240)는 페이지 라인들(PL)을 통해 페이지 버퍼들(PB)과 데이터를 주고받거나, 컬럼 라인들(CL)을 통해 입출력 회로(250)와 데이터를 주고받을 수 있다.
입출력 회로(250)는 입출력 라인들을 통해 메모리 컨트롤러(도 1의 1120)에 연결되며, 메모리 컨트롤러(1120)로부터 전달받은 커맨드(CMD) 및 어드레스(ADD)를 제어 로직(300)에 전달하거나, 데이터(DATA)를 컬럼 디코더(240)와 주고받을 수 있다. 데이터(DATA)는 논리 페이지 데이터를 포함할 수 있다.
전류 센싱 회로(260)는 리드 동작(read operation) 또는 검증 동작(verify operation)시, 허용 비트(VRY_BIT<#>)에 응답하여 기준전류를 생성하고, 페이지 버퍼부(230)로부터 수신받은 센싱 전압(VPB)과 기준전류를 서로 비교하여 패스 신호(PASS) 또는 페일 신호(FAIL)를 출력할 수 있다.
제어 로직(300)은 커맨드(CMD) 및 어드레스(ADD)에 응답하여 동작 신호(OP_CMD), 로우 어드레스(RADD), 페이지 버퍼 제어 신호(PBSIGNALS) 및 허용 비트(VRY_BIT<#>)를 출력하여 주변 회로(200)를 제어할 수 있다. 또한, 제어 로직(300)은 패스 또는 페일 신호(PASS 또는 FAIL)에 응답하여 검증 동작이 패스 또는 페일되었는지를 판단할 수 있다. 특히, 제어 로직(300)은 프로그램 동작시, 메모리 장치(1110)에 수신되는 논리 페이지 데이터 중에서 수신 완료된 논리 페이지 데이터가 있으면, 다른 논리 페이지 데이터가 수신되는 동안, 수신 완료된 논리 페이지 데이터를 사용한 프로그램 동작이 수행되도록 주변 회로(200)를 제어할 수 있다. 구체적인 프로그램 동작을 설명하면 다음과 같다.
도 3은 본 발명의 제1 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 3을 참조하면, 프로그램 동작이 시작되면, 메모리 컨트롤러(1120)는 제1 논리 페이지 데이터를 메모리 장치(1110)에 전송할 수 있다(S31 단계). 메모리 장치(1110)에 제1 논리 페이지 데이터가 모두 전송되면(S32 단계), 메모리 장치(1110)는 데이터 수신 동작 및 프로그램 동작을 병렬적으로 수행한다(S33 단계). 예를 들면, 메모리 장치(1110)는 수신 완료된 제1 논리 페이지 데이터를 어드레스에 따라 선택된 페이지에 포함된 메모리 셀들에 프로그램할 수 있다(S33a 단계). 메모리 장치(1110)가 제1 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하는 동안, 메모리 컨트롤러(1120)는 메모리 장치(1110)에 나머지 제2 내지 제N 논리 페이지 데이터를 순차적으로 전송할 수 있다.
메모리 장치(1110)는 제1 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하면서, 메모리 컨트롤러(1120)로부터 전송된 제2 내지 제N 논리 페이지 데이터를 순차적으로 수신할 수 있다(S33b 단계). 일반적으로, 프로그램 동작 시간이 데이터를 수신하는 시간보다 길기 때문에, 제1 논리 페이지 데이터가 선택된 메모리 셀들에 프로그램되는 동안, 제2 내지 제N 논리 페이지 데이터는 메모리 장치(1110)에 모두 전송될 수 있다.
제2 내지 제N 논리 페이지 데이터가 메모리 장치(1110)에 모두 수신되고(S33c 단계), 제1 논리 페이지 데이터가 선택된 메모리 셀들에 모두 프로그램되면, 메모리 장치(1110)는 수신된 제2 내지 제N 논리 페이지 데이터를 어드레스에 따라 선택된 메모리 셀들에 순차적으로 프로그램할 수 있다(S34 단계).
상술한 바와 같이, 수신 완료된 논리 페이지 데이터가 메모리 셀들에 프로그램되는 동안, 나머지 논리 페이지 데이터가 메모리 장치(1110)에 동시에 수신되므로, 프로그램 동작 시간이 단축될 수 있다.
도 4는 본 발명의 제2 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 4를 참조하면, 프로그램 동작이 시작되면, 메모리 컨트롤러(1120)는 제1 내지 제L 논리 페이지 데이터(L은 양의 정수)를 메모리 장치(1110)에 전송할 수 있다(S41 단계). 메모리 장치(1110)에 제1 내지 제L 논리 페이지 데이터가 모두 전송되면(S42 단계), 메모리 장치(1110)는 데이터 수신 및 프로그램 동작을 병렬적으로 수행한다(S43 단계). 예를 들면, 메모리 장치(1110)는 수신 완료된 제1 내지 제L 논리 페이지 데이터를 어드레스에 따라 선택된 페이지에 포함된 메모리 셀들에 순차적으로 프로그램할 수 있다(S43a 단계). 메모리 장치(1110)가 제1 내지 제L 논리 페이지 데이터를 선택된 메모리 셀들에 순차적으로 프로그램하는 동안, 메모리 컨트롤러(1120)는 메모리 장치(1110)에 나머지 제L+1 내지 제N 논리 페이지 데이터(N은 양의 정수, N>L)를 순차적으로 전송할 수 있다.
메모리 장치(1110)는 제L+1 내지 제N 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하면서, 메모리 컨트롤러(1120)로부터 전송된 제2 내지 제N 논리 페이지 데이터를 순차적으로 수신할 수 있다(S43b). 일반적으로, 프로그램 동작 시간이 데이터를 수신하는 시간보다 길기 때문에, 제1 내지 제L 논리 페이지 데이터가 선택된 메모리 셀들에 프로그램되는 동안, 제L+1 내지 제N 논리 페이지 데이터는 메모리 장치(1110)에 모두 전송될 수 있다.
제L+1 내지 제N 논리 페이지 데이터가 메모리 장치(1110)에 모두 수신되고(S43c 단계), 제1 내지 제L 논리 페이지 데이터가 선택된 메모리 셀들에 모두 프로그램되면, 메모리 장치(1110)는 수신된 제L+1 내지 제N 논리 페이지 데이터를 어드레스에 따라 선택된 메모리 셀들에 순차적으로 프로그램할 수 있다(S44 단계).
상술한 바와 같이, 수신 완료된 논리 페이지 데이터가 메모리 셀들에 프로그램되는 동안, 나머지 논리 페이지 데이터가 메모리 장치(1110)에 동시에 수신되므로, 프로그램 동작 시간이 단축될 수 있다.
도 5는 본 발명의 제3 실시예에 따른 프로그램 동작을 설명하기 위한 순서도이다.
도 5를 참조하면, 하나의 메모리 셀에 3개의 논리 페이지 데 저장될 수 있는 트리플 레벨 셀(Triple Level Cell; TLC)의 프로그램 동작을 예를 들어 설명하도록 한다.
프로그램 동작이 시작되면, 메모리 컨트롤러(1120)는 LSB 데이터를 메모리 장치(1110)에 전송할 수 있다(S51). 메모리 장치(1110)에 LSB 데이터가 모두 전송되고, 메모리 장치(1110)도 LSB 데이터를 모두 수신하면(S52 단계), 메모리 장치(1110)는 데이터 수신 동작 및 프로그램 동작을 동시에 수행할 수 있다(S53 단계).
구체적으로 설명하면, 메모리 장치(1110)의 페이지 버퍼들(PB1~PBI)에 LSB 데이터가 모두 수신되면, 메모리 장치(1110)의 제어 로직(300)은 어드레스에 응답하여, 수신된 LSB 데이터가 선택된 메모리 셀들에 프로그램되도록 주변 회로(200)를 제어할 수 있다(S53a 단계). LSB 데이터가 프로그램되는 동안, 메모리 컨트롤러(110)는 CSB 데이터를 메모리 장치(1110)에 전송할 수 있다(S53b 단계). CSB 데이터가 모두 전송되고, 메모리 장치(1110)도 CSB 데이터를 모두 수신하면(S53c 단계), 메모리 컨트롤러(1120)는 MSB 데이터를 메모리 장치(1110)에 전송할 수 있다(S53d 단계).
MSB 데이터가 메모리 장치(1110)에 모두 수신하되(S53e), LSB 데이터가 선택된 메모리 셀들에 모두 프로그램되면(S53a 단계), 메모리 장치(1110)는 수신된 CSB 데이터를 어드레스에 따라 선택된 메모리 셀들에 프로그램한다(S54 단계). CSB 데이터의 프로그램 동작이 완료되면, 메모리 장치(1110)는 수신된 MSB 데이터를 어드레스에 따라 선택된 메모리 셀들에 프로그램한다(S55 단계).
상술한 단계들에서, LSB 데이터, CSB 데이터 및 MSB 데이터는 메모리 장치(1110)의 페이지 버퍼들(PB1~PBI)에 임시로 저장될 수 있다. 예를 들면, 선택된 물리 페이지에 저장된 LSB 데이터는 페이지 버퍼들(PB1~PBI)의 제1 래치들에 저장될 수 있고, CSB 데이터는 제2 래치들에 저장될 수 있고, MSB 데이터는 제3 래치들에 각각 저장될 수 있다. LSB 데이터의 프로그램 동작은 페이지 버퍼들(PB1~PBI)의 제1 래치들에 LSB 데이터가 모두 입력되면 선택된 물리 페이지에 포함된 메모리 셀들에 수행될 수 있다. 페이지 버퍼들(PB1~PBI)의 제1 래치들에 입력된 LSB 데이터를 사용한 프로그램 동작이 수행되는 동안, 페이지 버퍼들(PB1~PBI)의 제2 래치들에는 CSB 데이터가 입력될 수 있고, CSB 데이터의 입력이 모두 완료되면, 제3 래치들에 MSB 데이터가 입력될 수 있다.
상술한 바와 같이, 다수의 논리 페이지 데이터를 선택된 페이지에 프로그램하는 프로그램 동작 시, 수신 완료된 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하면서 나머지 논리 페이지 데이터를 동시에 수신함으로써, 프로그램 동작 시간을 단축할 수 있다.
도 6은 본 발명의 프로그램 동작을 수행하기 위한 제어 로직의 실시예를 설명하기 위한 도면이다.
도 6을 참조하면, 트리플 레벨 셀(TLC) 방식으로 구동되는 메모리 장치(1110)를 예를 들어 설명하도록 한다.
트리플 레벨 셀(TLC) 방식의 프로그램 동작에서, 논리 페이지 데이터에는 LSB 데이터, CSB 데이터 및 MSB 데이터가 포함될 수 있다. 따라서, 제어 로직(300)은 각 논리 페이지 데이터의 수신 상태를 모니터링하고, 모니터링 결과 수신 완료된 논리 페이지 데이터가 있으면, 수신 완료된 논리 페이지 데이터를 우선적으로 프로그램하되, 수신이 완료되지 않은 나머지 논리 페이지 데이터가 동시에 수신되도록 주변 회로를 제어할 수 있다. 구체적으로 설명하면 다음과 같다.
제어 로직(300)은 데이터 전송 완료 신호 출력부(61), 동작 제어부(62), 프로그램 제어부(63) 및 레디/비지 신호 출력부(64)를 포함할 수 있다.
데이터 전송 완료 신호 출력부(61)는 논리 페이지 데이터의 수신 상태를 모니터링할 수 있다. 예를 들면, 데이터 전송 완료 신호 출력부(61)는 LSB 데이터, CSB 데이터 및 MSB 데이터의 수신 상태를 모니터링하고, 각 데이터의 수신 상태에 따라 LSB 전송 완료 신호(FS_L), CSB 전송 완료 신호(FS_C) 또는 MSB 전송 완료 신호(FS_M)를 출력할 수 있다. 여기서, 모니터링을 위한 체크 데이터(CHK_DATA)는 페이지 버퍼(도 2의 230)로 전송되는 데이터일 수 있다. 즉, 데이터 전송 완료 신호 출력부(61)는 페이지 버퍼부(230)에 입력되는 체크 데이터(CHK_DATA)에 응답하여 LSB 전송 완료 신호(FS_L), CSB 전송 완료 신호(FS_C) 또는 MSB 전송 완료 신호(FS_M)를 출력할 수 있다. 예를 들면, 체크 데이터(CHK_DATA)는 컬럼 디코더(240)에서 페이지 버퍼부(230)로 전송되는 LSB 데이터, CSB 데이터 또는 MSB 데이터일 수 있다. 즉, LSB 데이터가 페이지 버퍼부(230)로 모두 전송되면, 데이터 전송 완료 신호 출력부(61)는 체크 데이터(CHK_DATA)로써 수신된 LSB 데이터에 응답하여 LSB 전송 완료 신호(FS_L)를 출력할 수 있다. 이와 같은 방법으로, 데이터 전송 완료 신호 출력부(61)는 체크 데이터(CHK_DATA)로써 수신된 CSB 데이터에 응답하여 CSB 전송 완료 신호(FS_C)를 출력하거나, MSB 데이터에 응답하여 MSB 전송 완료 신호(FS_M)를 출력할 수 있다.
동작 제어부(62)는 LSB 전송 완료 신호(FS_L), CSB 전송 완료 신호(FS_C) 또는 MSB 전송 완료 신호(FS_M)에 응답하여 프로그램 동작 신호(PGM_SIG) 및 레디 신호(R_SIG)를 출력할 수 있다. 예를 들면, 동작 제어부(62)는 LSB 전송 완료 신호(FS_L)가 수신되면 프로그램 동작 신호(PGM_SIG) 및 레디 신호(R_SIG)를 출력할 수 있다. 프로그램 동작 신호(PGM_SIG)와 레디 신호(R_SIG)는 메모리 장치(1110)에 설정된 코딩 값(coding value)에 따라 하이(high) 또는 로우(low)로 출력될 수 있다. 예를 들면, 동작 제어부(62)는 LSB 전송 완료 신호(FS_L)가 수신되면, LSB 프로그램 동작이 수행되도록 하이(high)의 프로그램 동작 신호를 출력할 수 있다. 또한, 동작 제어부(62)는 LSB 전송 완료 신호(FS_L)가 수신되면, 커맨드 및 데이터를 메모리 컨트롤러(1120)로부터 수신받을 수 있도록 하이(high)의 레디 신호(R_SIG)를 출력할 수 있다. 동작 제어부(62)는 CSB 및 MSB 전송 완료 신호(FS_C 및 FS_M)가 모두 수신되면, 커맨드 및 데이터를 메모리 컨트롤러(1120)로부터 수신받지 않도록 레디 신호(R_SIG)를 로우(high)로 변환하여 출력할 수 있다.
프로그램 제어부(63)는 프로그램 동작 신호(PGM_SIG)에 응답하여 프로그램 제어 신호들(PGM_CON)을 출력할 수 있다. 프로그램 제어 신호들(PGM_SIG)은 주변 회로(도 2의 200)가 프로그램 동작을 수행할 수 있도록 주변 회로(200)에 출력되는 신호일 수 있다.
레디/비지 신호 출력부(64)는 레디 신호(R_SIG)에 응답하여 레디/비지 신호(R/B)를 출력할 수 있다. 예를 들면, 레디/비지 신호(R/B)는 메모리 컨트롤러(1120)와 메모리 장치(1110) 사이에 연결된 레디/비지 라인을 통해 메모리 컨트롤러(1120)로 전송될 수 있다. 레디/비지 신호 출력부(64)는 하이(high)의 레디 신호(R_SIG)가 수신되면 하이(high)의 레디/비지 신호(R/B)를 출력할 수 있고, 로우(low)의 레디/비지 신호(R_SIG)가 수신되면 로우(low)의 레디/비지 신호(R/B)를 출력할 수 있다. 예를 들면, 레디/비지 신호 출력부(64)는 하이(high)의 레디 신호(R_SIG)가 수신되면 레디/비지 신호(R/B)를 비활성화하고, 로우(low)의 레디/비지 신호(R_SIG)가 수신되면 레디/비지 신호(R/B)를 활성화할 수 있다. 레디/비지 신호(R/B)가 비활성화되면, 메모리 장치(1110)는 커맨드, 어드레스 및 데이터를 수신할 수 있고, 레디/비지 신호(R/B)가 활성화되면, 메모리 장치(1110)는 커맨드, 어드레스 및 데이터를 수신할 수 없다.
상술한 제어 로직(300)의 동작을 구체적으로 설명하면 다음과 같다.
도 7은 본 발명의 실시예에 따른 제어 로직의 동작 방법을 설명하기 위한 도면이다.
도 7을 참조하면, 입출력 라인들(IO)을 통해 전송된 LSB 데이터(LSB DATA)가 메모리 장치(도 1의 1110)에 모두 전송되면(T1), 제어 로직(도 6의 300)에 포함된 데이터 전송 완료 신호 출력부(도 6의 61)는 LSB 전송 완료 신호(FS_L)를 출력할 수 있다. 여기서, 프로그램 동작이 시작되기 이전에, LSB, CSB 및 MSB 전송 완료 신호들(FS_L, FS_C 및 FS_M)은 모두 로우(low; L)로 초기화될 수 있다. 따라서, LSB 데이터(LSB DATA)가 메모리 장치(도 1의 1110)에 모두 전송되면(T1), 데이터 전송 완료 신호 출력부(61)는 LSB 전송 완료 신호(FS_L)를 로우(L)에서 하이(high; H)로 천이시켜 출력할 수 있다. LSB 전송 완료 신호(FS_L)가 하이(H)가 되면, 동작 제어부(도 6의 62)로부터 프로그램 동작 신호(PGM_SIG)가 출력될 수 있다. 프로그램 동작 신호(PGM_SIG)가 출력되면, 프로그램 제어부(도 6의 63)로부터 프로그램 제어 신호들(PGM_CON)이 출력되어 LSB 프로그램 동작(LSB_PGM)이 수행될 수 있다.
LSB 프로그램 동작(LSB_PGM)이 수행되는 동안, 입출력 라인들(IO)을 통해 나머지 논리 페이지 데이터인 CSB 데이터(CSB DATA) 및 MSB 데이터(MSB_DATA)가 메모리 장치(1110)에 순차적으로 수신될 수 있다. 예를 들면, CSB 데이터(CSB_DATA)가 메모리 장치(1110)에 모두 수신되면(T2), 데이터 전송 완료 신호 출력부(61)는 CSB 전송 완료 신호(FS_C)를 로우(L)에서 하이(H)로 천이시켜 출력할 수 있다. CSB 전송 완료 신호(FS_C)가 로우(L)에서 하이(H)로 천이되더라도, MSB 데이터(MSB_DATA)가 더 수신되어야 하므로, 동작 제어부(62)는 프로그램 동작 신호(PGM_SIG)를 계속 출력할 수 있고, 레디 신호(R_SIG)도 하이(H)로 계속 출력할 수 있다.
이어서, MSB 데이터(CSB_DATA)가 메모리 장치(1110)에 모두 수신되면(T3), 데이터 전송 완료 신호 출력부(61)는 MSB 전송 완료 신호(FS_M)를 로우(L)에서 하이(H)로 천이시켜 출력할 수 있다. MSB 전송 완료 신호(FS_M)가 로우(L)에서 하이(H)로 천이되면, 동작 제어부(62)는 프로그램 동작 신호(PGM_SIG)를 계속 출력할 수 있고, 레디 신호(R_SIG)는 하이(H)에서 로우(L)로 천이시킬 수 있다. 레디 신호(R_SIG)가 로우(L)로 천이되면, 레디/비지 신호 출력부(도 6의 64)는 레디/비지 신호(R/B)를 로우(L)로 출력할 수 있다.
상술한 바와 같이, 메모리 장치(1110)는 수신 완료된 논리 페이지 데이터가 있으면, 나머지 다른 논리 페이지 데이터가 수신되는 동안 프로그램 동작을 수행하므로, 프로그램 동작 시간을 단축할 수 있다.
상술한 프로그램 동작은 다수의 플래인들(planes)이 포함된 메모리 장치에도 적용될 수 있다. 구체적으로 설명하면 다음과 같다.
도 8은 다수의 플래인들이 포함된 메모리 장치를 설명하기 위한 도면이다.
도 8을 참조하면, 메모리 장치에는 제1 내지 제K 플래인들(PL1~PLK; K는 양의 정수)이 포함될 수 있다. 제1 내지 제K 플래인들(PL1~PLK) 각각은 다수의 메모리 블록들(MB1~MBJ; J는 양의 정수)을 포함할 수 있다. 제1 내지 제K 플래인들(PL1~PLK)에 다수의 메모리 블록들(MB1~MBJ)이 포함되어 있기 때문에, 플래인들(PL1~PLK)마다 서로 다른 로우 디코더들이 연결될 수 있다. 예를 들면, 제1 플래인(PL1)에는 제1 로우 디코더가 연결되고, 제2 플래인(PL2)에는 제2 로우 디코더가 연결되고, 제K 플래인(PLK)에는 제K 로우 디코더가 각각 연결될 수 있다. 제1 내지 제K 로우 디코더들을 통해, 제1 내지 제K 플래인들(PL1~PLK)에 각각 포함된 메모리 블록들(MB1~MBJ) 중 서로 다른 메모리 블록들이 선택될 수 있고, 서로 다른 페이지들이 선택될 수 있다.
다수의 플래인들(PL1~PLK)이 포함된 메모리 장치의 프로그램 동작을 설명하면 다음과 같다.
도 9는 제4 실시예에 따른 프로그램 동작을 설명하기 위한 도면이다.
도 9를 참조하면, 프로그램 동작시, 제1 내지 제K 플래인들(PL1~PLK)에 포함된 메모리 블록들 중, 서로 다른 메모리 블록들이 선택될 수 있고, 선택된 각 메모리 블록에서도 서로 다른 페이지들이 선택될 수 있다. 예를 들면, 제1 플래인(PL1)에서는 제1 메모리 블록(MB1)이 선택될 수 있고, 제1 메모리 블록(MB1)의 페이지들 중에서 제A 페이지가 선택될 수 있다. 제2 플래인(PL2)에서는 제3 메모리 블록(MB3)이 선택될 수 있고, 제3 메모리 블록(MB3)의 페이지들 중에서 제B 페이지가 선택될 수 있다. 제3 플래인(PL3)에서는 제2 메모리 블록(MB2)이 선택될 수 있고, 제2 메모리 블록(MB2)의 페이지들 중에서 제C 페이지가 선택될 수 있다. 제K 플래인(PLK)에서는 제J 메모리 블록(MBJ)이 선택될 수 있고, 제J 메모리 블록(MBJ)의 페이지들 중에서 제D 페이지가 선택될 수 있다.
제1 플래인(PL1)의 제A 페이지에 프로그램할 논리 페이지 데이터 중에서 LSB 데이터가 페이지 버퍼들에 모두 입력되고, 제2 플래인(PL2)의 제B 페이지에 프로그램할 논리 페이지 데이터 중에서 LSB 데이터가 페이지 버퍼들에 모두 입력되고, 제3 플래인(PL3)의 제C 페이지에 프로그램할 논리 페이지 데이터 중에서 LSB 데이터가 페이지 버퍼들에 모두 입력되고, 제K 플래인(PLK)의 제D 페이지에 프로그램할 논리 페이지 데이터 중에서 LSB 데이터가 페이지 버퍼들에 모두 입력되면, 제1 내지 제K 플래인들에서 각각 선택된 제A, B, C 및 D 페이지들의 LSB 프로그램 동작(LSB_PGM)이 수행된다. 제1 내지 제K 플래인들에서 각각 선택된 페이지들의 LSB 프로그램 동작(LSB_PGM)이 수행되는 동안, 제1 내지 제K 플래인들(PL1~PLK)에 연결된 페이지 버퍼들에는 CSB 데이터 및 MSB 데이터가 순차적으로 입력된다.
상술한 바와 같이, 메모리 장치에 다수의 플래인들이 포함되어 있는 경우, 메모리 블록 및 페이지 어드레스에 관계 없이, 동일한 논리 페이지 데이터가 모두 수신되면, 각 페이지들의 프로그램 동작이 수행될 수 있다. 프로그램 동작이 수행되는 동안, 나머지 논리 페이지 데이터는 메모리 장치에 수신된다. 이처럼, 프로그램 동작과 데이터 수신 동작 일부를 동시에 수행함으로써, 프로그램 동작 시간을 단축할 수 있다.
도 10은 본 발명의 다른 실시예에 따른 메모리 시스템을 설명하기 위한 도면이다. 여기서, 메모리 장치(1110)는 도 2와 실질적으로 동일하게 구성될 수 있으므로, 메모리 장치(1110)에 대한 구체적인 설명은 생략한다.
도 10을 참조하면, 메모리 시스템(300)은 제어부(3100) 및 메모리 장치(1110)를 포함할 수 있다. 제어부(3100)는 메모리 장치(1110)를 제어하도록 구성될 수 있다. SRAM(3110)은 CPU(3120)의 워킹 메모리로 사용될 수 있다. 호스트 인터페이스(3130; Host I/F)는 메모리 시스템(3000)과 접속되는 호스트의 데이터 교환 프로토콜을 구비할 수 있다. 제어부(3100)에 구비된 에러 정정 회로(3140; ECC)는 메모리 장치(1110)로부터 리드된 데이터에 포함되어 있는 에러를 검출하고 정정할 수 있다. 반도체 인터페이스(3150; Semiconductor I/F)는 메모리 장치(1110)와 인터페이싱 할 수 있다. CPU(3120)는 제어부(3100)의 데이터 교환을 위한 제어 동작을 수행할 수 있다. 또한, 도 10에는 도시되지 않았지만, 메모리 시스템(3000)은 호스트(Host)와의 인터페이싱을 위한 코드 데이터를 저장하는 ROM(미도시됨) 등이 더 제공될 수 있다.
본 발명에 따른 메모리 시스템(3000)은, 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA, 포터블(portable) 컴퓨터, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), 디지털 카메라(digital camera), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 장치들 중 하나에 적용될 수 있다.
도 11은 본 발명의 다른 실시예에 다른 메모리 시스템을 설명하기 위한 도면이다. 여기서, 메모리 장치(1110)는 도 2와 실질적으로 동일하게 구성될 수 있으므로, 메모리 장치(1110)에 대한 구체적인 설명은 생략한다.
도 11을 참조하면, 컴퓨팅 시스템(4000)은 버스(4300)에 전기적으로 연결된 메모리 장치(1110), 제어부(4100), 모뎀(4200), 마이크로프로세서(4400) 및 사용자 인터페이스(4500)를 포함할 수 있다. 본 발명에 따른 컴퓨팅 시스템(4000)이 모바일 장치인 경우, 컴퓨팅 시스템(4000)의 동작 전압을 공급하기 위한 배터리(4600)가 추가적으로 제공될 수 있다. 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(4000)에는 응용 칩셋(application chip set), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램 등이 더 포함될 수 있다.
제어부(4100)와 메모리 장치(1110)는 SSD(Solid State Drive/Disk)를 구성할 수 있다.
본 발명에 따른 시스템은 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 시스템은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP) 및 Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장 될 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위와 기술적 사상에서 벗어나지 않는 한도 내에서 다양한 변경이 가능하다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
1000: 메모리 시스템
1100: 저장 장치
1110: 메모리 장치 1120: 메모리 컨트롤러
1200: 호스트 230: 페이지 버퍼부
250: 입출력 회로 300: 제어 로직
61: 데이터 전송 완료 신호 출력부
62: 동작 제어부
63: 프로그램 제어부
64: 레디/비지 신호 출력부
PL1~PLK: 플래인들
MB1~MBJ: 메모리 블록들
1110: 메모리 장치 1120: 메모리 컨트롤러
1200: 호스트 230: 페이지 버퍼부
250: 입출력 회로 300: 제어 로직
61: 데이터 전송 완료 신호 출력부
62: 동작 제어부
63: 프로그램 제어부
64: 레디/비지 신호 출력부
PL1~PLK: 플래인들
MB1~MBJ: 메모리 블록들
Claims (20)
- 다수의 페이지들이 포함된 메모리 셀 어레이;
상기 페이지들 중 선택된 페이지에 프로그램될 다수의 논리 페이지 데이터를 순차적으로 수신하고, 상기 수신된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하도록 구성된 주변 회로; 및
상기 다수의 논리 페이지 데이터 중에서, 수신이 완료된 논리 페이지 데이터를 상기 선택된 페이지에 프로그램하고, 상기 프로그램이 수행되는 동안 나머지 논리 페이지 데이터가 수신되도록 상기 주변 회로를 제어하는 제어 로직을 포함하는 메모리 장치.
- 제1항에 있어서, 상기 제어 로직은,
상기 논리 페이지 데이터의 수신 상태를 모니터링하고,
상기 모니터링 결과, 수신 완료된 논리 페이지 데이터가 있으면, 상기 수신 완료된 논리 페이지 데이터가 상기 선택된 페이지에 프로그램되도록 상기 주변 회로를 제어하는 메모리 장치.
- 제1항에 있어서, 상기 제어 로직은,
상기 논리 페이지 데이터를 모니터링하고, 상기 모니터링 결과에 따라 전송 완료 신호들을 선택적으로 출력하는 데이터 전송 완료 신호 출력부;
상기 전송 완료 신호들에 응답하여 프로그램 동작 신호 및 레디 신호를 출력하는 동작 제어부;
상기 프로그램 동작 신호에 응답하여, 상기 주변 회로를 제어하기 위한 프로그램 제어 신호를 출력하는 프로그램 제어부; 및
상기 레이 신호에 응답하여 레디/비지 신호를 출력하는 레디/비지 신호 출력부를 포함하는 메모리 장치.
- 제3항에 있어서, 상기 데이터 전송 완료 신호 출력부는,
상기 논리 페이지 데이터를 모니터링하다가, 수신 완료된 논리 페이지 데이터가 검출되면, 상기 전송 완료 신호들 중에서 상기 수신 완료된 논리 페이지에 대응되는 전송 완료 신호를 출력하고,
수신 완료되지 않은 나머지 논리 페이지 데이터에 대응되는 전송 완료 신호들은 출력하지 않는 메모리 장치.
- 제3항에 있어서, 상기 동작 제어부는,
상기 전송 완료 신호들 중에서 첫 번째 전송 완료 신호가 수신되면,
이후에 출력되는 전송 완료 신호들에 관계 없이, 상기 프로그램 동작 신호를 유지하는 메모리 장치.
- 제3항에 있어서, 상기 동작 제어부는,
상기 전송 완료 신호들이 모두 수신되면,
상기 레디 신호를 가변하여 출력하는 메모리 장치.
- 제3항에 있어서, 상기 프로그램 제어부는,
상기 프로그램 동작 신호에 따라, 상기 선택된 페이지의 프로그램이 수행되도록 상기 주변 회로를 제어하는 프로그램 제어 신호를 출력하는 메모리 장치.
- 제3항에 있어서, 상기 레디/비지 신호 출력부는,
상기 레디 신호에 응답하여 상기 레디/비지 신호를 메모리 컨트롤러에 전송하는 메모리 장치.
- 제1항에 있어서, 상기 주변 회로는,
상기 논리 페이지 데이터를 순차적으로 수신하는 페이지 버퍼들을 포함하는 메모리 장치.
- 제9항에 있어서,
상기 제어 로직은 상기 페이지 버퍼들에 수신되는 상기 논리 페이지 데이터를 사용하여 상기 논리 페이지 데이터의 수신 상태를 모니터링하는 메모리 장치.
- 제1항에 있어서, 상기 메모리 셀 어레이는,
다수의 메모리 블록들이 포함된 다수의 플래인들을 포함하고,
상기 메모리 블록들은 상기 다수의 페이지들을 포함하는 메모리 장치.
- 제11항에 있어서, 상기 제어 로직은,
상기 플래인들 각각에 프로그램할 논리 페이지 데이터를 모니터링하고,
상기 플래인들에 공통으로 수신 완료된 논리 페이지 데이터가 검출되면, 상기 플래인들에 포함된 선택된 페이지들의 프로그램 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
- 제1 내지 제N 논리 페이지 데이터를 순차적으로 수신하는 단계;
상기 제1 내지 제N 논리 페이지 데이터 중에서 수신 완료된 논리 페이지 데이터가 있으면, 상기 수신 완료된 논리 페이지 데이터를 선택된 메모리 셀들에 프로그램하는 단계; 및
상기 수신 완료된 논리 페이지 데이터가 선택된 메모리 셀들에 프로그램되는 동안, 나머지 논리 페이지 데이터를 수신하는 단계를 포함하는 메모리 장치의 동작 방법.
- 제13항에 있어서,
상기 수신 완료된 논리 페이지 데이터가 선택된 메모리 셀들에 프로그램된 후, 나머지 수신된 논리 페이지 데이터를 상기 메모리 셀들에 프로그램하는 단계를 더 포함하는 메모리 장치의 동작 방법.
- 제13항에 있어서,
상기 나머지 논리 페이지 데이터는 상기 수신 완료된 논리 페이지가 상기 선택된 메모리 셀들에 프로그램되는 동안 모두 수신되는 메모리 장치의 동작 방법.
- LSB(Least Significant Bit) 데이터, CSB(Central Significant Bit) 데이터 및 MSB(Most Significant Bit) 데이터를 순차적으로 수신하는 단계;
상기 LSB 데이터가 모두 수신되면, 선택된 페이지에 포함된 메모리 셀들에 상기 LSB 데이터를 프로그램하는 단계;
상기 LSB 데이터를 프로그램하는 동안, 상기 CSB 데이터 및 상기 MSB 데이터를 수신하는 단계; 및
상기 CSB 데이터 및 상기 MSB 데이터가 모두 수신되고, 상기 LSB 데이터의 프로그램이 완료되면, 상기 CSB 데이터 및 상기 MSB 데이터를 상기 메모리 셀들에 순차적으로 프로그램하는 단계를 포함하는 메모리 장치의 동작 방법.
- 제16항에 있어서,
상기 선택된 페이지에 포함된 메모리 셀들에 상기 LSB 데이터를 프로그램하는 단계는,
상기 LSB 데이터가 모두 수신되면, LSB 전송 완료 신호를 출력하는 단계:
상기 LSB 전송 완료 신호에 응답하여 프로그램 동작 신호를 출력하는 단계; 및
상기 프로그램 동작 신호에 응답하여 상기 메모리 셀들을 프로그램하기 위한 프로그램 제어 신호들을 출력하는 단계를 포함하는 메모리 장치의 동작 방법.
- 제17항에 있어서,
상기 프로그램 동작 신호가 출력될 때, 레디/비지 신호를 출력하는 단계를 더 포함하는 메모리 장치의 동작 방법.
- 제18항에 있어서, 상기 레디/비지 신호는,
상기 LSB 데이터, 상기 CSB 데이터 및 상기 MSB 데이터가 모두 수신될 때가지 비활성화되고,
상기 LSB 데이터, 상기 CSB 데이터 및 상기 MSB 데이터가 모두 수신되면 활성화되는 메모리 장치의 동작 방법.
- 제16항에 있어서,
상기 CSB 데이터 및 상기 MSB 데이터는 상기 LSB 데이터의 프로그램이 완료되기 이전에 모두 수신되는 메모리 장치의 동작 방법.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160034761A KR20170110408A (ko) | 2016-03-23 | 2016-03-23 | 메모리 장치 및 이의 동작 방법 |
US15/244,641 US20170277454A1 (en) | 2016-03-23 | 2016-08-23 | Memory device and operating method thereof |
CN201610821328.9A CN107229570A (zh) | 2016-03-23 | 2016-09-13 | 存储器装置及其操作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160034761A KR20170110408A (ko) | 2016-03-23 | 2016-03-23 | 메모리 장치 및 이의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170110408A true KR20170110408A (ko) | 2017-10-11 |
Family
ID=59897279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160034761A Withdrawn KR20170110408A (ko) | 2016-03-23 | 2016-03-23 | 메모리 장치 및 이의 동작 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170277454A1 (ko) |
KR (1) | KR20170110408A (ko) |
CN (1) | CN107229570A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11133060B2 (en) | 2018-09-21 | 2021-09-28 | SK Hynix Inc. | Data storage device and operating method thereof |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190028997A (ko) * | 2017-09-11 | 2019-03-20 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 동작 방법 |
US10970165B2 (en) * | 2018-05-03 | 2021-04-06 | SK Hynix Inc. | Encoder and decoder for memory system and method thereof |
KR102627873B1 (ko) * | 2018-10-25 | 2024-01-23 | 에스케이하이닉스 주식회사 | 메모리 장치, 이를 포함하는 메모리 시스템 및 그것의 동작 방법 |
KR102816013B1 (ko) * | 2020-07-23 | 2025-06-05 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그 동작 방법 |
KR102774168B1 (ko) * | 2020-10-20 | 2025-03-04 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그 동작 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7042770B2 (en) * | 2001-07-23 | 2006-05-09 | Samsung Electronics Co., Ltd. | Memory devices with page buffer having dual registers and method of using the same |
US6614685B2 (en) * | 2001-08-09 | 2003-09-02 | Multi Level Memory Technology | Flash memory array partitioning architectures |
US7463521B2 (en) * | 2005-04-01 | 2008-12-09 | Sandisk Corporation | Method for non-volatile memory with managed execution of cached data |
CN101512496A (zh) * | 2005-11-09 | 2009-08-19 | 晟蝶以色列有限公司 | 用于监控闪存操作的设备和方法 |
US7724598B1 (en) * | 2007-04-19 | 2010-05-25 | Altera Corporation | Megafunction block and interface |
US9245653B2 (en) * | 2010-03-15 | 2016-01-26 | Intelligent Intellectual Property Holdings 2 Llc | Reduced level cell mode for non-volatile memory |
CN105183660B (zh) * | 2012-03-23 | 2018-07-13 | 群联电子股份有限公司 | 数据读取方法、存储器控制器与储存装置 |
KR20130133491A (ko) * | 2012-05-29 | 2013-12-09 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그것의 동작 방법 |
US20160322110A1 (en) * | 2015-04-28 | 2016-11-03 | Kabushiki Kaisha Toshiba | Semiconductor storage device and control method of semiconductor storage device |
-
2016
- 2016-03-23 KR KR1020160034761A patent/KR20170110408A/ko not_active Withdrawn
- 2016-08-23 US US15/244,641 patent/US20170277454A1/en not_active Abandoned
- 2016-09-13 CN CN201610821328.9A patent/CN107229570A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11133060B2 (en) | 2018-09-21 | 2021-09-28 | SK Hynix Inc. | Data storage device and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN107229570A (zh) | 2017-10-03 |
US20170277454A1 (en) | 2017-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10361722B2 (en) | Semiconductor memory device performing randomization operation | |
CN106653085B (zh) | 储存器件、具有储存器件的存储系统及其操作方法 | |
CN111415699A (zh) | 数据存储装置及其操作方法 | |
CN106205719B (zh) | 半导体器件及其操作方法 | |
US9679638B2 (en) | Semiconductor device and method of operating the same | |
KR20170110408A (ko) | 메모리 장치 및 이의 동작 방법 | |
US11294814B2 (en) | Memory system having a memory controller and a memory device having a page buffer | |
CN105957550B (zh) | 半导体器件及其操作方法 | |
US20190066794A1 (en) | Memory system and operating method of the memory system | |
US10621036B2 (en) | Memory system and operation method thereof | |
US10545689B2 (en) | Data storage device and operating method thereof | |
CN106205709B (zh) | 半导体设备及其操作方法 | |
US12327017B2 (en) | Memory device for selecting memory block according to amount of data and operating method of the same | |
US9703628B2 (en) | Memory device and system including the same | |
KR20160144564A (ko) | 불휘발성 메모리 모듈 및 그것의 동작 방법 | |
CN105575428B (zh) | 半导体器件及其操作方法 | |
US9548125B2 (en) | Semiconductor device having multi-level cell and method of reading the same | |
KR102532528B1 (ko) | 메모리 장치 및 이의 동작 방법 | |
KR20190041698A (ko) | 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 | |
CN110362181A (zh) | 电子装置、具有电子装置的存储器系统及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20160323 |
|
PG1501 | Laying open of application | ||
PC1203 | Withdrawal of no request for examination |