KR100816120B1 - The method for the data swapping between the blocks of non volatile memory device - Google Patents

The method for the data swapping between the blocks of non volatile memory device Download PDF

Info

Publication number
KR100816120B1
KR100816120B1 KR1020060134936A KR20060134936A KR100816120B1 KR 100816120 B1 KR100816120 B1 KR 100816120B1 KR 1020060134936 A KR1020060134936 A KR 1020060134936A KR 20060134936 A KR20060134936 A KR 20060134936A KR 100816120 B1 KR100816120 B1 KR 100816120B1
Authority
KR
South Korea
Prior art keywords
block
data
address
stored
cell array
Prior art date
Application number
KR1020060134936A
Other languages
Korean (ko)
Inventor
정병관
정민중
Original Assignee
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 하이닉스반도체 filed Critical 주식회사 하이닉스반도체
Priority to KR1020060134936A priority Critical patent/KR100816120B1/en
Application granted granted Critical
Publication of KR100816120B1 publication Critical patent/KR100816120B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits 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

A method for exchanging data between blocks of a nonvolatile memory device is provided to improve data exchange speed by exchange data between blocks included in an equal memory cell array without using an additional external memory. A block data exchange command and an address of a first block and a second block included in an equal memory cell array are inputted(210). An address of a temporal block, for storing the first block data, included in the same memory cell array where the first block is read out from a selected point of a spare cell included in the memory cell array(216). Data of the first block is stored in the temporal block temporarily. Data stored in the first block is stored in the temporal block(218). Data stored in the second block is stored in the first block(220). Data stored in the temporal block is stored in the second block(222).

Description

불휘발성 메모리 장치의 블록간 데이터 교환 방법{The method for the data swapping between the blocks of non volatile memory device}[0001] The present invention relates to a non-volatile memory device,

도 1은 본 발명이 적용되는 불휘발성 메모리 장치의 전체 구성을 도시한 블록도이다.1 is a block diagram showing the overall configuration of a nonvolatile memory device to which the present invention is applied.

도 2는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 블록간 데이터 교환 방법을 도시한 흐름도이다. 2 is a flowchart illustrating a method of exchanging data between blocks of a nonvolatile memory device according to an embodiment of the present invention.

도 3은 데이터 교환의 대상이 되는 메모리 블록을 도시한 도면이다.3 is a diagram showing a memory block to be subjected to data exchange.

도 4는 본 발명의 일 실시예에 따른 특정 블록에 저장된 데이터를 다른 블록으로 복사하는 방법을 도시한 순서도이다.4 is a flowchart illustrating a method of copying data stored in a specific block to another block according to an embodiment of the present invention.

본원 발명은 불휘발성 메모리 장치의 블록간 데이터 교환 방법에 관한 것이다.The present invention relates to a method for exchanging data between blocks in a nonvolatile memory device.

불휘발성 메모리장치의 메모리 셀들은 반복적으로 프로그램되고 소거되는데, 그 반복회수가 증가함에 따라 각 셀들은 소모된다. 각 셀들의 소모 정도에 따라, 일부 블록은 심하게 소모되고 다른 블록은 상대적으로 소모 정도가 적은 경우, 소 모된 블록의 존재로 인해 플래시 메모리 시스템의 전체 성능이 저하된다. 소모된 블록 자체에 연관된 성능 저하 이외에도, 원하는 데이터를 저장할 수 있는 소모되지 않은 블록이 불충분한 경우에도 플래시 메모리 시스템의 전체 성능이 저하될 수 있다. 이와 같은 소모 정도의 불균형을 조정하기 위해 웨어 레벨링(wear leveling)을 실시한다. 이러한 웨어 레벨링 수단 중의 하나로서 블럭간의 데이터를 교환하는 방법을 사용한다.The memory cells of the non-volatile memory device are repeatedly programmed and erased, with each cell being consumed as the number of iterations increases. Depending on the degree of consumption of each cell, the overall performance of the flash memory system degrades due to the presence of the defective block when some blocks are heavily consumed and other blocks are relatively low in consumption. In addition to the performance degradation associated with the consumed block itself, the overall performance of the flash memory system may be degraded even if there are insufficient unused blocks to store the desired data. Wear leveling is performed to adjust the unbalance of the degree of consumption. As one of such wear leveling means, a method of exchanging data between blocks is used.

그런데, 종래에 있어서는 특정 메모리에 저장된 데이터를 다른 곳에 옮기기 위해서는 해당 데이터를 독출한 후 외부 메모리에 임시 저장했다가 다시 다른 메모리 영역으로 프로그램하는 단계를 거쳐야 했기 때문에, 소요되는 시간이 많다는 문제점이 있었다.However, conventionally, in order to move data stored in a specific memory to another location, there has been a problem in that it takes a long time to read the corresponding data, temporarily store the data in the external memory, and then program it into another memory area.

상술한 문제점을 해결하기 위하여, 본원 발명은 별도의 외부 메모리를 거치지 않고 동일 메모리 셀 어레이에 포함된 블럭간의 데이터를 교환할 수 있는 데이터 교환방법을 제공하는 것을 목적으로 한다. In order to solve the above-described problems, the present invention provides a data exchange method capable of exchanging data between blocks included in the same memory cell array without going through a separate external memory.

상술한 목적을 달성하기 위한 본원 발명의 블록간 데이터 교환 방법은 블록 데이터 교환 명령어 및 교환 대상이 되는 동일 메모리 셀 어레이에 포함된 제1 블록 및 제2 블록의 어드레스를 입력하는 단계와, 상기 제1 블록과 동일 메모리 셀 어레이에 포함되며 제1 블록의 데이터를 임시 저장할 임시 블록의 어드레스를 상기 메모리 셀 어레이에 포함된 스페어 셀의 선정된 지점에서 독출하는 단계와, 상기 제1 블록에 저장된 데이터를 상기 임시 블록에 저장하는 제1 블록 복사 단계와, 상기 제2 블록에 저장된 데이터를 상기 제1 블록에 저장하는 제2 블록 복사 단계와, 상기 임시 블록에 저장된 데이터를 상기 제2 블록에 저장하는 제3 블록 복사 단계를 포함하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a method for exchanging data between blocks, the method comprising: inputting addresses of a first block and a second block included in a block data exchange instruction word and an identical memory cell array to be exchanged; Reading an address of a temporary block included in the same memory cell array as the block and temporarily storing data of the first block at a predetermined point of a spare cell included in the memory cell array, A second block copying step of storing the data stored in the second block in the first block, a second block copying step of storing the data stored in the temporary block in the second block, And a three-block copying step.

이하, 첨부된 도면들을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명이 적용되는 불휘발성 메모리 장치의 전체 구성을 도시한 블록도이다.1 is a block diagram showing the overall configuration of a nonvolatile memory device to which the present invention is applied.

상기 불휘발성 메모리 장치는 메모리 셀 어레이(100), 페이지 버퍼(102), X/Y-디코더(104, 106), IO 버퍼부(108), 고전압 발생기(110), 명령어 인터페이스 로직부(112), 명령어 레지스터(114), 제1 내지 제3 어드레스 레지스터/카운터(116, 118, 120)를 포함한다.The nonvolatile memory device includes a memory cell array 100, a page buffer 102, X / Y-decoders 104 and 106, an IO buffer unit 108, a high voltage generator 110, a command interface logic unit 112, An instruction register 114, and first to third address registers / counters 116, 118, and 120, respectively.

상기 불휘발성 메모리 장치의 동작을 살펴보기로 한다.The operation of the nonvolatile memory device will now be described.

먼저, 상기 명령어 인터페이스 로직부(112)에 대하여 칩 인에이블 신호(/CE)가 디스에이블되고, 라이트 인에이블 신호(/WE)가 토글되면, 이에 응답하여, 상기 명령어 인터페이스 로직부(112)가 상기 IO 버퍼부(108)와 명령어 레지스터(114)를 통하여 수신되는 명령어 신호를 수신하고, 그 명령어에 따라 프로그램 명령, 소거 명령 또는 독출 명령등을 발생시킨다. 이때, 상기 커맨드 신호는 상기 불휘발성 메모리 장치의 동작 모드를 결정하는 페이지 프로그램 셋업 코드(page program setup code)를 포함한다. 한편, 상기 명령어 인터페이스 로직부(112)에서 출력되는 레디/비지바(read/busy bar) 신호(/R/B)는 일정 시간 동안 디스에이블되는데, 외부의 메모리 컨트롤러(미도시)는 상기 레디/비지바 신호(/R/B)를 수신하고 상기 불휘발성 메모리 장치가 프로그램/소거/독출 등의 동작 상태임을 인식한다. 즉, 상기 레디/비지바 신호(/R/B)가 디스에이블되는 시간 동안, 상기 메모리 셀 어레이 중 하나의 페이지에 대한 프로그램/소거/독출 등이 실행된다. First, when the chip enable signal / CE is disabled for the instruction interface logic unit 112 and the write enable signal / WE is toggled, the instruction interface logic unit 112 Receives a command signal received through the IO buffer unit 108 and the command register 114, and generates a program command, an erase command, or a read command according to the command. At this time, the command signal includes a page program setup code for determining an operation mode of the nonvolatile memory device. Meanwhile, a read / busy bar signal / R / B outputted from the command interface logic unit 112 is disabled for a predetermined time, and an external memory controller (not shown) Receives a busy signal / R / B and recognizes that the nonvolatile memory device is in an operating state such as program / erase / read. That is, programming / erasing / reading of one page of the memory cell array is performed for a time during which the ready / busy signal (/ R / B) is disabled.

또한, 제1 내지 제3 어드레스 레지스터/카운터(116, 118, 120)는 상기 IO 버퍼부(108)를 통하여 수신되는 어드레스 신호를 수신하고, 로우 어드레스 신호 및 칼럼 어드레스 신호를 발생시킨다. 상기 어드레스 신호는 상기 메모리 셀 중 하나에 포함되는 페이지들 중 하나에 대응한다. 한편, 본원 발명에서는 교환 대상이 되는 제1 블록과 제2 블록에 대한 어드레스를 입력받아 처리하고, 제1 블록에 대한 데이터가 임시 저장되는 임시 블록에 대한 어드레스를 입력받아 처리하기 위하여, 총 3개의 어드레스 레지스터/카운터(116, 118, 120)를 구성요소로 포함한다.The first to third address registers / counters 116, 118, and 120 receive the address signals received through the IO buffer unit 108, and generate row address signals and column address signals. The address signal corresponds to one of the pages included in one of the memory cells. In the present invention, in order to receive and process addresses of first and second blocks to be exchanged, and to receive and process addresses of temporary blocks in which data for the first block is temporarily stored, And includes address registers / counters 116, 118, and 120 as components.

상기 고전압 발생기(110)는 상기 프로그램 명령, 소거 명령 또는 독출 명령에 응답하여 바이어스 전압들을 발생하고 이를 페이지 버퍼(102), X-디코더(104)등에 공급한다. The high voltage generator 110 generates bias voltages in response to the program command, the erase command, or the read command, and supplies the generated bias voltages to the page buffer 102, the X-decoder 104, and the like.

상기 X-디코더(104)는 상기 로우 어드레스 신호에 응답하여, 상기 메모리 셀 어레이의 블록들 중 하나에 상기 고전압 발생기(110)로 부터 공급받은 바이어스 전압들을 메모리 셀 어레이(100)에 공급한다.In response to the row address signal, the X-decoder 104 supplies the memory cell array 100 with the bias voltages supplied from the high voltage generator 110 to one of the blocks of the memory cell array.

상기 Y-디코더(106)는 상기 컬럼 어드레스 신호에 응답하여, 상기 페이지 버퍼(102)를 통하여 상기 메모리 셀 어레이의 블록들에 의해 공유되는 비트 라인들(미도시)에 데이터 신호를 공급한다. The Y-decoder 106, in response to the column address signal, supplies a data signal to bit lines (not shown) shared by the blocks of the memory cell array through the page buffer 102.

상기 페이지 버퍼(102)는 상기 IO 버퍼부(108) 및 상기 Y-디코더(106)를 통하여 수신되는 데이터 신호를 래치하여 상기 메모리 셀 어레이의 블록들에 의해 공유되는 비트 라인들(미도시)에 출력한다.The page buffer 102 latches a data signal received through the IO buffer unit 108 and the Y-decoder 106 and outputs the latched data signal to bit lines (not shown) shared by the blocks of the memory cell array Output.

도 2는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 블록간 데이터 교환 방법을 도시한 흐름도이고, 도 3은 데이터 교환의 대상이 되는 메모리 블록을 도시한 도면이다.FIG. 2 is a flowchart illustrating a method of exchanging data between blocks of a nonvolatile memory device according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating a memory block to be subjected to data exchange.

상기 도면들을 참조하여, 본원 발명의 데이터 교환 방법을 살펴보기로 한다.The data exchange method of the present invention will be described with reference to the drawings.

먼저 상기 IO 버퍼부(108)와 명령어 레지스터(114)를 통하여 블록 데이터 교환 명령어가 상기 명령어 인터페이스 로직부(112)로 입력된다(단계 210).The block data exchange command is input to the command interface logic unit 112 through the IO buffer unit 108 and the command register 114 (step 210).

다음으로 데이터 교환 대상이 되는 제1 블록 및 제2 블록에 대한 어드레스가 입력된다(단계 212, 214). 도 3에 도시된 바와 같이 데이터 교환 대상이 되는 제1 블록과 제2 블록을 특정하게 되며, 제1 블록에 대한 어드레스는 IO 버퍼부(108)를 통하여 제1 어드레스 레지스터/카운터(116)에 입력되고, 제2 블록에 대한 어드레스는 제2 어드레스 레지스터/카운터(118)에 입력된다. 각 어드레스 레지스터/카운터(116, 118)는 해당 블록에 대한 어드레스를 X-디코더(104)로 전송한다. Next, addresses for the first block and the second block, which are data exchange destinations, are input (steps 212 and 214). The first block and the second block to be exchanged are specified as shown in FIG. 3, and the address for the first block is input to the first address register / counter 116 through the IO buffer unit 108 And the address for the second block is input to the second address register / counter 118. Each address register / counter 116, 118 sends the address for that block to the X-decoder 104. [

한편, 데이터 교환을 위한 임시 블록은 동일 메모리 셀 어레이 내에 미리 특 정되어 있으며, 이에 대한 어드레스는 메모리 셀 어레이의 스페어 셀 등에 미리 저장된다. 따라서, 임시 블록에 대한 어드레스는 별도로 입력받지 않고 상기 스페어 셀로부터 독출하여 제3 어드레스 레지스터/카운터(120)로 전송하게 된다(단계 216).On the other hand, the temporary blocks for data exchange are predefined in the same memory cell array, and the addresses therefor are stored in advance in the spare cells of the memory cell array or the like. Accordingly, the address for the temporary block is read from the spare cell without being input separately, and is transmitted to the third address register / counter 120 (step 216).

다음으로 상기 제1 블록에 저장된 데이터를 동일 메모리 셀 어레이에 포함된 임시 블록에 저장하는 제1 블록 복사 단계를 수행한다(218). 상기 블록 복사 단계의 구체적인 방법은 추후 설명하기로 한다.Next, a first block copy step of storing the data stored in the first block in a temporary block included in the same memory cell array is performed (step 218). A concrete method of the block copying step will be described later.

다음으로 상기 제2 블록에 저장된 데이터를 상기 제1 블록에 저장하는 제2 블록 복사 단계를 수행한다(220). 제1 블록에 대한 데이터가 이미 상기 임시 블록에 저장되어 있으므로, 제1 블록에 저장된 데이터는 더 이상 유지되지 않아도 되기 때문이다.Next, a second block copy step of storing the data stored in the second block in the first block is performed (220). Since the data for the first block is already stored in the temporary block, the data stored in the first block need not be held any longer.

다음으로 상기 임시 블록에 저장된 데이터를 제2 블록으로 저장하는 제3 블록 복사 단계를 수행한다(222). 앞선 단계(218)에서 임시 블록에 제1 블록에 저장된 데이터를 저장하였으므로, 이를 제2 블록으로 복사하게 되면 제2 블록에 제1 블록의 데이터가 저장되게 된다. Next, a third block copy step of storing data stored in the temporary block into a second block is performed (222). Since the data stored in the first block is stored in the temporary block in step 218, if the data is copied to the second block, the data of the first block is stored in the second block.

정리하면, 상기 블록 데이터 교환 명령어와 교환 대상이 되는 블록 어드레스가 입력되면, 메모리 셀 어레이 내에 지정된 임시 블록을 이용하여 제1 블록과 제2 블록에 저장되어 있던 데이터가 블록 단위로 교환되어 저장되는 것이다.In summary, when the block data exchange instruction word and the block address to be exchanged are inputted, the data stored in the first block and the second block are exchanged in block units using the temporary block specified in the memory cell array .

도 4는 본 발명의 일 실시예에 따른 특정 블록에 저장된 데이터를 다른 블록으로 복사하는 방법을 도시한 순서도이다. 4 is a flowchart illustrating a method of copying data stored in a specific block to another block according to an embodiment of the present invention.

먼저 제3 블록의 첫 번째 페이지에 저장된 데이터를 독출하여 페이지 버퍼에 저장한다(410).First, the data stored in the first page of the third block is read and stored in the page buffer (410).

이때, 제3 블록은 복사될 원본 데이터가 저장된 블록을 의미하며, 경우에 따라 앞서 설명한 도 3의 제1 블록, 제2 블록 또는 임시 블록이 될 수 있다. 즉, 제1 블록에서 임시블록으로 데이터를 복사하는 경우(216)에는 제1 블록이 제3 블록이 되고, 제2 블록에서 제1 블록으로 데이터를 복사하는 경우(218)에는 제2 블록이 제3 블록이 되며, 임시 블록에서 제2 블록으로 데이터를 복사하는 경우(220)에는 임시 블록이 제3 블록이 된다.In this case, the third block is a block in which original data to be copied is stored, and may be a first block, a second block, or a temporary block in FIG. 3 as described above. That is, when data is copied from the first block to the temporary block (216), the first block becomes the third block. When the data is copied to the first block from the second block (218) When the data is copied 220 from the temporary block to the second block, the temporary block becomes the third block.

메모리 셀 어레이에 포함된 상기 제3 블록의 제1 페이지부터 데이터를 독출하여 페이지 버퍼의 래치에 저장한다. 상기 독출 동작은 통상적인 페이지 버퍼의 독출동작과 유사하므로 이에 대한 상세한 설명은 생략하기로 한다.The data is read from the first page of the third block included in the memory cell array and stored in the latch of the page buffer. Since the read operation is similar to a normal page buffer read operation, a detailed description thereof will be omitted.

다음으로 페이지 버퍼에 저장된 데이터를 제4 블록의 제1 페이지에 프로그램 한다(단계 420). Next, the data stored in the page buffer is programmed in the first page of the fourth block (step 420).

이때, 제4 블록은 복사된 원본 데이터가 저장될 블록을 의미하며, 경우에 따라 앞서 설명한 도 3의 제1 블록, 제2 블록 또는 임시 블록이 될 수 있다. 즉, 제1 블록에서 임시블록으로 데이터를 복사하는 경우(216)에는 임시 블록이 제4 블록이 되고, 제2 블록에서 제1 블록으로 데이터를 복사하는 경우(218)에는 제1 블록이 제4 블록이 되며, 임시 블록에서 제2 블록으로 데이터를 복사하는 경우(220)에 는 제2 블록이 제4 블록이 된다. In this case, the fourth block means a block in which copied original data is to be stored, and may be the first block, the second block, or the temporary block in FIG. 3 described above. That is, when data is copied from the first block to the temporary block (216), the temporary block becomes the fourth block. When the data is copied (218) from the second block to the first block, In the case of copying data from the temporary block to the second block (220), the second block becomes the fourth block.

상기 페이지 버퍼에 저장된 데이터를 메모리 셀 어레이의 제4 블록의 제1 페이지에 프로그램한다. 상기 프로그램 동작은 통상적인 페이지 버퍼의 프로그램 동작과 유사하므로 이에 대한 상세한 설명은 생략하기로 한다.And program the data stored in the page buffer on the first page of the fourth block of the memory cell array. The program operation is similar to a program operation of a conventional page buffer, and thus a detailed description thereof will be omitted.

이와 같은 동작을 제3 블록과 제4 블록에 대하여 각 페이지의 순서대로 순차적으로 진행하며(단계 430, 440), 각 블록의 마지막 페이지까지 진행하게 되면 블록 복사가 종료되었음을 알리는 신호를 전달한다(단계 450).Such an operation is sequentially performed for the third block and the fourth block in the order of the respective pages (steps 430 and 440), and when the process proceeds to the last page of each block, a signal indicating that the block copy is completed is transmitted 450).

상술한 구성을 통해 불휘발성 메모리 장치의 블럭간 데이터 교환을 용이하게 할 수 있으며, 특히 외부 메모리를 사용하지 않고 동일 블럭 내에 미리 구비된 임시 블록을 통하여 데이터 교환을 하게 되므로 종래 기술에 비해 훨씬 빠른 시간내에 데이터 교환이 가능하게 된다.Since the data exchange between the blocks of the nonvolatile memory device can be facilitated through the above-described configuration, and data exchange is performed through temporary blocks previously provided in the same block without using an external memory, Data exchange is possible.

아울러, 이러한 데이터 교환 방법은 웨어 레벨링을 위한 수단으로 사용할 수 있는 장점이 있다.In addition, such a data exchange method has an advantage that it can be used as a means for leveling a wearer.

Claims (3)

블록 데이터 교환 명령어 및 교환 대상이 되는 동일 메모리 셀 어레이에 포함된 제1 블록 및 제2 블록의 어드레스를 입력하는 단계와,Inputting an address of a first block and a second block included in a block data exchange instruction and an identical memory cell array to be exchanged, 상기 제1 블록과 동일 메모리 셀 어레이에 포함되며 제1 블록의 데이터를 임시 저장할 임시 블록의 어드레스를 상기 메모리 셀 어레이에 포함된 스페어 셀의 선정된 지점에서 독출하는 단계와,Reading an address of a temporary block included in the same memory cell array as the first block and temporarily storing data of the first block at a selected point of a spare cell included in the memory cell array, 상기 제1 블록에 저장된 데이터를 상기 임시 블록에 저장하는 제1 블록 복사 단계와,A first block copy step of storing data stored in the first block in the temporary block; 상기 제2 블록에 저장된 데이터를 상기 제1 블록에 저장하는 제2 블록 복사 단계와,A second block copying step of storing the data stored in the second block in the first block, 상기 임시 블록에 저장된 데이터를 상기 제2 블록에 저장하는 제3 블록 복사 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 블록간 데이터 교환 방법. And a third block copy step of storing data stored in the temporary block in the second block. 제1항에 있어서, 상기 제1 블록의 어드레스는 상기 불휘발성 메모리 장치에 구비된 제1 블록 어드레스 레지스터/카운터로 전송시키는 단계와,2. The nonvolatile memory device according to claim 1, wherein the address of the first block is transferred to a first block address register / 상기 제2 블록의 어드레스는 상기 불휘발성 메모리 장치에 구비된 제2 블록 어드레스 레지스터/카운터로 전송시키는 단계와,Transferring the address of the second block to a second block address register / counter provided in the nonvolatile memory device; 상기 임시 블록의 어드레스는 상기 불휘발성 메모리 장치에 구비된 제3 블록 어드레스 레지스터/카운터로 전송시키는 단계를 더 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 블록간 데이터 교환 방법.And the address of the temporary block is transferred to a third block address register / counter provided in the nonvolatile memory device. 제1항에 있어서, 상기 제1 블록 복사 단계는 복사될 원본 데이터가 저장된 제3 블록의 i번째 페이지의 데이터를 독출하여 페이지 버퍼에 저장하는 단계와,The method of claim 1, wherein the first block copying step comprises: reading data of an i-th page of a third block storing original data to be copied and storing the read data in a page buffer; 상기 페이지 버퍼에 저장된 데이터를 복사된 원본 데이터가 저장될 제4 블록의 i번째 페이지에 프로그램하는 단계와,Programming the data stored in the page buffer in an i-th page of a fourth block in which copied original data is to be stored; 상기 독출하는 단계와 프로그램하는 단계를 제3 블록과 제4 블록의 마지막 페이지까지 순차적으로 반복하는 단계를 포함하는 것을 특징으로 하는 불휘발성 메모리 장치의 블록간 데이터 교환 방법. And repeating the reading and programming steps sequentially from the third block to the last page of the fourth block.
KR1020060134936A 2006-12-27 2006-12-27 The method for the data swapping between the blocks of non volatile memory device KR100816120B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060134936A KR100816120B1 (en) 2006-12-27 2006-12-27 The method for the data swapping between the blocks of non volatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060134936A KR100816120B1 (en) 2006-12-27 2006-12-27 The method for the data swapping between the blocks of non volatile memory device

Publications (1)

Publication Number Publication Date
KR100816120B1 true KR100816120B1 (en) 2008-03-21

Family

ID=39411474

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060134936A KR100816120B1 (en) 2006-12-27 2006-12-27 The method for the data swapping between the blocks of non volatile memory device

Country Status (1)

Country Link
KR (1) KR100816120B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09190370A (en) * 1996-01-09 1997-07-22 Oki Electric Ind Co Ltd Method for saving and restoring content of object
KR19980026498A (en) * 1996-10-09 1998-07-15 김광호 Record information recovery apparatus and method for rewritable nonvolatile memory
JP2001051910A (en) 1999-08-13 2001-02-23 Konica Corp Non-volatile memory device
KR20050065715A (en) * 2003-12-23 2005-06-30 삼성전자주식회사 Cash processing method for writing in flash memory using file system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09190370A (en) * 1996-01-09 1997-07-22 Oki Electric Ind Co Ltd Method for saving and restoring content of object
KR19980026498A (en) * 1996-10-09 1998-07-15 김광호 Record information recovery apparatus and method for rewritable nonvolatile memory
JP2001051910A (en) 1999-08-13 2001-02-23 Konica Corp Non-volatile memory device
KR20050065715A (en) * 2003-12-23 2005-06-30 삼성전자주식회사 Cash processing method for writing in flash memory using file system

Similar Documents

Publication Publication Date Title
JP4122185B2 (en) Nonvolatile memory device, program method thereof, and pass / fail inspection method
US7016228B2 (en) Semiconductor storage device having page copying function
US6400602B2 (en) Semiconductor memory device and restoration method therefor
JP4614115B2 (en) Semiconductor device and writing method
KR100967026B1 (en) Non volatile memory device and cache reading method thereof
US7623381B2 (en) Non-volatile memory device and method of erasing the same
US8842474B2 (en) Nonvolatile memory device and nonvolatile memory system including the same
KR100769771B1 (en) Flash memory device and method of erasing thereof
US8634261B2 (en) Semiconductor memory device and method of operating the same
KR20080019115A (en) Flash memory device
KR100816120B1 (en) The method for the data swapping between the blocks of non volatile memory device
CN110554972A (en) Storage system
KR101138404B1 (en) Memory system and method of operating thereof
KR20090077318A (en) Method of programming a non volatile memory device
JP4273106B2 (en) Memory controller, flash memory system, and flash memory control method
KR100908541B1 (en) Copyback Program Method for Nonvolatile Memory Devices
JP2011198409A (en) Nonvolatile memory
US11868654B2 (en) Semiconductor device
KR20080084024A (en) Copyback programming method of non volatile memory device
KR20080038936A (en) Erasing method of non-volatile memory device
JP4304167B2 (en) Memory controller, flash memory system, and flash memory control method
KR20090000330A (en) Data setting method of non volatile memory device
KR20080095592A (en) Copyback programming method of non volatile memory device
JP2006209963A (en) Semiconductor storage device
KR20100054481A (en) Method for cache read of non volatile memory device

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: 20110222

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee