WO2014010763A1 - 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법 - Google Patents

쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법 Download PDF

Info

Publication number
WO2014010763A1
WO2014010763A1 PCT/KR2012/005491 KR2012005491W WO2014010763A1 WO 2014010763 A1 WO2014010763 A1 WO 2014010763A1 KR 2012005491 W KR2012005491 W KR 2012005491W WO 2014010763 A1 WO2014010763 A1 WO 2014010763A1
Authority
WO
WIPO (PCT)
Prior art keywords
pattern
flash memory
data
stored
bit
Prior art date
Application number
PCT/KR2012/005491
Other languages
English (en)
French (fr)
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 US14/413,997 priority Critical patent/US20150178193A1/en
Priority to PCT/KR2012/005491 priority patent/WO2014010763A1/ko
Publication of WO2014010763A1 publication Critical patent/WO2014010763A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7206Reconfiguration of flash memory system

Definitions

  • the present invention relates to a flash memory management apparatus and method, and more particularly to a flash memory management apparatus and method for improving the reliability and durability of the flash memory.
  • Flash memory is widely used in portable devices such as digital cameras, MP3 players, mobile phones, PDAs, etc. due to the advantages of low power and miniaturization. In recent years, the flash memory capacity has increased significantly, and its use has replaced the use of hard disk storage devices in personal computers or servers.
  • Flash memory performs erase-before-write operations because of its physical characteristics.
  • a flash memory device writes to a page, if there is data already stored in the page, the flash memory can be written only after erasing the block to which the page belongs.
  • flash memory does not support overwriting, which requires more time for write operations. Overwriting additionally generates garbage collection, merge operation, and the like, and dramatically increases the write amplification factor.
  • the corresponding block may no longer be used, and thus, the erase operation should not be repeated for a specific block.
  • NAND flash memory Since NAND flash memory is more expensive per capacity than hard disks, NAND flash memory uses technologies that increase cell density and increase storage bits per cell to increase price competitiveness. These technologies have contributed to lowering the cost of NAND flash devices, but have resulted in the disadvantage of significantly reducing the durability and reliability of NAND flash memories.
  • NAND flash memories have a gate structure that manages electrons on a cell basis.
  • the gate consists of two control gates and a floating gate, and stores data by storing and emitting electrons in a thin oxide layer between the two gates.
  • durability of the gate varies. Therefore, in order to improve the reliability and durability of NAND flash memory, program / erase cycles must be managed on a block basis. Furthermore, a method for reducing the electron-by-cell transfer in a more detailed manner should be presented.
  • Conventional methods include cell to cell interference cancellation.
  • To change the cell bit pattern of the NAND flash memory a large voltage over a predetermined voltage must be applied. The application of such a strong voltage affects not only a specific cell for which the bit pattern is to be changed, but also all cells belonging to the same word line as the corresponding cell.
  • the bit pattern of neighboring cells must be maintained at a constant voltage to operate without error, but the signal noise between cells causes the NAND flash memory to be less durable and reliable.
  • a cell to cell interference cancellation technique is used, which recognizes a voltage stored in a neighboring cell and applies a voltage to which a signal is removed from a specific cell. This technique reduces the effects of voltage fluctuations on the eight neighboring cells and improves reliability and durability within two times, but increases the complexity for performing the calculations required for voltage application.
  • Another conventional method is randomization of stored data, which reduces the effect on all cells belonging to the same word line.
  • Reliability and durability of NAND flash memory are fixed in blocks, but in the worst case, the durability of the NAND flash memory is greatly reduced by the bit storage patterns in cells.
  • "0" is repeatedly stored in a specific cell in one word line, the durability of the entire block decreases.
  • a technique of randomly converting and storing data stored in page units is used. In this case, the worst case can be avoided, but the endurance is fixed at the average value and the operation is complicated, such as recovering the data through the seed value.
  • An object of the present invention is to provide a flash memory management apparatus and method for improving the reliability and durability of a flash memory.
  • Another object of the present invention is to provide a computer-readable recording medium having recorded thereon a program for executing a flash memory management method for improving the reliability and durability of a flash memory in a computer.
  • a flash memory management apparatus for recognizing a write data pattern, including: a data analyzer configured to analyze a bit storage pattern stored in each cell of a flash memory; And a data matching unit matching the replacement pattern corresponding to the bit storage pattern according to the analysis result of the data analysis unit.
  • a method of managing a flash memory by recognizing a write data pattern comprising: analyzing a form of a bit storage pattern stored in each cell of a flash memory; And a data matching step of matching the replacement pattern corresponding to the bit storage pattern according to the analysis result of the data analysis step.
  • a flash memory management apparatus for recognizing a write data pattern, including: a data analyzer configured to analyze a bit storage pattern stored in each cell of a flash memory; And a data matching unit generating a replacement pattern matching the bit storage pattern according to an analysis result of the data analysis unit.
  • the reliability and durability of the NAND flash memory can be improved by storing the smallest number of " 0 " bits in the page.
  • it is easy and simple to apply the technique because it can be managed in the memory controller without changing the structure and cell arrangement of the NAND flash device.
  • FIG. 1 is a block diagram showing the configuration of a preferred embodiment of a flash memory management apparatus by write data pattern recognition according to the present invention
  • FIG. 2 is a block diagram showing the configuration of a preferred embodiment of the position of the flash memory management apparatus by write data pattern recognition according to the present invention in the entire system;
  • FIG. 3 is a diagram illustrating a case where a bit storage pattern of write data is recognized and matched with an alternative pattern
  • FIG. 4 is a flowchart illustrating a process of performing a preferred embodiment of the operation of the flash memory management apparatus by write data pattern recognition according to the present invention.
  • FIG. 1 is a block diagram showing the configuration of a preferred embodiment of a flash memory management apparatus by write data pattern recognition according to the present invention.
  • the flash memory management apparatus includes a data input unit 110, a data analyzer 120, a data matcher 130, a memory access unit 140, and a storage unit 150. .
  • the data input unit 110 receives write target data according to a write request from the outside.
  • the data analyzer 120 analyzes a bit storage pattern in which write target data to which a write request is input is stored in each cell of the flash memory.
  • an analysis method of calculating the number of times the bit storage pattern stored in each cell of the flash memory of the data to be written is repeated.
  • the data matching unit 130 matches the replacement pattern corresponding to the bit storage pattern stored in each cell of the flash memory of the write target data. For example, the data matching unit 130 may determine the replacement pattern such that the number of "1" bits included in the replacement pattern increases according to the number of times that the same type of bit storage pattern is repeated. In detail, when the number of times of repeating "0100" in the bit storage pattern is the most, the replacement pattern corresponding to the bit storage pattern "0100” may be determined as "1111". In addition, when the number of times that "0001" is repeated in the bit storage pattern is the next time, the bit storage pattern "0001" may be matched with any one of "1110", “1101”, “1011", and "0111". have.
  • the data matching unit 130 arranges the replacement pattern determined in correspondence with each bit storage pattern in the form of a replacement pattern matching table, and the storage unit 150 stores the replacement pattern matching table generated by the data matching unit 130. .
  • the size of the replacement pattern matching table may be adjusted in consideration of the capacity of the memory. That is, it is not necessary to determine the replacement pattern corresponding to all types of bit storage patterns, and the replacement pattern may be determined only for the bit storage patterns having a repetition number of times or more.
  • the data matching unit 130 may determine the replacement pattern by analyzing the number of repetitions of the bit storage pattern as described above, or may use a preset replacement pattern according to the shape of the bit storage pattern. In this case, a function for obtaining a replacement pattern from a table or bit storage pattern in which the bit storage pattern and the replacement pattern are matched is stored in the storage 150 in advance, and the data matching unit 130 may store the storage 150. The replacement pattern is determined from the bit storage pattern by referring to the data stored in the.
  • the memory access unit 140 stores the matched replacement pattern in the storage space of the flash memory.
  • the flash memory management apparatus may generate a bit storage pattern from the replacement pattern using a replacement pattern matching table or a function stored in the storage unit 150. .
  • FIG. 2 is a block diagram showing the configuration of a preferred embodiment of the position of the flash memory management apparatus by write data pattern recognition according to the present invention in the entire system.
  • the write / read command requested through the host arrives at the flash translation layer via a command queue of the NAND flash memory based storage device.
  • the requested write data is temporarily stored in the buffer of the NAND flash memory based storage device and mapped to the actual NAND area by the flash conversion layer, the flash program operation is performed.
  • the flash memory management apparatus is implemented in the form of a data pattern recognition memory access engine in a control layer in which a flash program operates to perform encoding / decoding of a data pattern.
  • the controller is located in the NAND flash memory device
  • the flash memory management apparatus by the write data pattern recognition according to the present invention may be located in the controller of the corresponding chip.
  • FIG. 3 is a diagram illustrating a case where a bit storage pattern of write data is recognized and matched with a replacement pattern.
  • the replacement pattern matching table exists in the storage unit 150 of the present invention, that is, the data pattern recognition memory access engine, and the data matching unit 130 maps the bit storage pattern and the replacement pattern to be actually stored one to one.
  • the Huffman algorithm can be extended to generate a replacement pattern stored in the actual flash area.
  • the present invention While the Huffman code is coded to have the shortest code sign for the most frequently occurring data pattern, the present invention generates the pattern with the most "1" bits for the most frequently occurring data pattern. In addition, even if the bit storage pattern does not occur frequently, the overhead is minimized by using a technique such as inversion for stored data having a large number of "0" bits. In this case, simple information such as the inverted flag bit is induced to be stored in the spare area of the NAND flash memory.
  • the size of the replacement pattern matching table may be adjusted in consideration of memory capacity, and may be represented as a function of a bit storage pattern instead of storing the shape of the replacement pattern in a table format as described above.
  • the data matching unit 130 stores the memory if the number of "0" bits included in the data pattern in which the write target data is stored in the page of the flash memory is greater than or equal to a preset threshold value.
  • the access unit 140 may invert and store each bit included in the data pattern.
  • file system metadata has a data pattern with a large number of "0" bits. This is because the metadata stores a map table and configuration registers of the overall data of the file system, and uses the necessary portion and fills the entire reserved area with "0" bits.
  • a storage technique that inverts the bits of all pages stored when a data pattern in which "0" bits are stored above a certain threshold value is very useful. That is, if the number of "0" bits included in the data pattern stored in the page is greater than or equal to a preset threshold value, the "0" bit is converted into “1” bit and the "1” bit is converted into “0” bit.
  • an invert flag bit indicating whether to invert is added by storing a "1” bit or a "0" bit in the spare area.
  • the data matching unit 130 of the flash memory management apparatus is a memory access unit ( 140 may invert the plurality of "0" bits to store in the flash memory.
  • the data patterns to be stored are sequentially scanned and encoded such that the "1" bits are many patterns.
  • the encoded data may be all "0" bits, but in this case the number of "1" bits can be reduced by using the page-wide bit inversion technique described above. You can increase it.
  • FIG. 4 is a flowchart illustrating a process of performing a preferred embodiment of the operation of the flash memory management apparatus by write data pattern recognition according to the present invention.
  • the data input unit 110 receives data to be written in response to a write request from the outside (S110).
  • the data analyzer 120 analyzes a bit storage pattern in which write target data to which a write request is input is stored in each cell of the flash memory (S120). As an example of the analysis method, as described above, an analysis method for calculating the number of times the bit storage pattern stored in each cell of the flash memory of the data to be written is repeated.
  • the data matching unit 130 matches the replacement pattern corresponding to the bit storage pattern stored in each cell of the flash memory of the data to be written (S130).
  • the replacement pattern may be determined such that the number of "1" bits included in the replacement pattern increases according to the number of times the bit storage pattern of the same type is repeated.
  • the storage unit 150 stores a substitution pattern matching table in which a bit storage pattern or a data pattern and a substitution pattern are recorded together.
  • the size of the replacement pattern matching table may be adjusted in consideration of the capacity of the memory.
  • the memory access unit 140 stores the matched replacement pattern in the storage space of the flash memory (S140).
  • the present invention intentionally uses the method of maximizing the number of " 1 " bits and storing the result in the NAND flash memory, thereby improving reliability and durability by more than 10 times compared to the non-NAND flash memory.
  • the write target according to the present invention when storing the write target data according to the flash memory management method according to the present invention, the write target according to the present invention and the pattern of the existing data already stored in the storage location corresponding to the address information of the flash memory where the write target data is stored.
  • a method of storing only bits changed between patterns converted from data may be used. This is because the present invention can be implemented without changing the structure of the flash memory device.
  • the differential value data representing the changed bit from the existing data may be calculated by performing an XOR operation between the pattern of the existing data and the converted pattern, and the differential value data may be compressed and stored in a separate storage medium.
  • the invention can also be embodied as computer readable code on a computer readable recording medium.
  • the computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include.
  • the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법이 개시된다. 데이터 분석부는 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석하고, 데이터 매칭부는 데이터 분석부의 분석 결과에 따라 비트 저장 패턴에 대응하는 대체 패턴을 매칭시킨다. 본 발명에 따르면, 저장 데이터 패턴 인식 기반 플래시 메모리 비트 패턴 저장 기법에 의해 최대한 적은 수의 "0" 비트를 페이지에 저장함으로써 낸드 플래시 메모리의 신뢰성 및 내구성을 향상시킬 수 있다. 또한 낸드 플래시 디바이스의 구조와 셀 배열을 변화시키지 않고 메모리 제어기에서 관리가 가능하기 때문에 기법의 적용이 쉽고 간단하다.

Description

쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법
본 발명은 플래시 메모리 관리 장치 및 방법에 관한 것으로, 보다 상세하게는 플래시 메모리의 신뢰성과 내구성을 향상시키기 위한 플래시 메모리 관리 장치 및 방법에 관한 것이다.
플래시 메모리는 저 전력, 소형화 등의 장점으로 인해 디지털 카메라, MP3 플레이어, 핸드폰, PDA 등과 같은 휴대 장치에 많이 사용되고 있다. 최근에는 플래시 메모리의 용량이 크게 늘어나면서 그 사용이 개인 컴퓨터나 서버의 하드 디스크 저장 장치의 사용을 대체하는 수준에 이르고 있다.
플래시 메모리는 자체적인 물리적 특성으로 인하여 쓰기 전 소거(erase-before-write) 연산을 수행한다. 플래시 메모리는 페이지에 쓰기 동작을 수행할 경우 만약 그 페이지에 이미 저장된 데이터가 있다면 그 페이지가 속해 있는 블록을 소거한 다음에야 쓰기 동작을 수행할 수 있다. 플래시 메모리는 하드 디스크와 달리 덮어쓰기를 지원하지 않기 때문에 쓰기 동작에 대해 더 많은 시간을 필요로 한다. 덮어쓰기는 공간 쓰레기 수집(Garbage Collection), 합병 연산(Merge Operation) 등을 추가로 발생시키며, 쓰기 증폭 요인(Write Amplification Factor)수치를 급격히 상승시킨다. 또한 플래시 메모리의 동일 블록에 대해 일정 횟수 이상의 소거 동작을 수행하면 해당 블록을 더 이상 사용할 수 없기 때문에 특정 블록에 소거 동작이 반복되는 것을 피해야 한다.
낸드 플래시 메모리는 하드디스크에 비해 용량당 가격이 비싸기 때문에 가격 경쟁력을 키우기 위해 셀의 집적도를 높이는 기술과 셀 당 저장 비트를 증가시키는 기술을 사용한다. 이러한 기술들은 낸드 플래시 디바이스의 단가를 낮추는데 공헌하였지만, 결과적으로 낸드 플래시 메모리의 내구성과 신뢰성을 크게 낮추는 단점을 초래하였다.
낸드 플래시 메모리는 셀 단위로 전자를 관리하는 게이트 구조를 갖는다. 게이트는 제어 게이트(control gate) 와 플로팅 게이트(floating gate) 두 개로 구성이 되며 두 게이트 사이의 얇은 산화 층에서 전자를 보관 및 방출하는 방식으로 데이터를 저장한다. 하지만 이러한 게이트는 한 워드 라인(word line)에 묶여있기 때문에 블록 단위로 내구성이 변이하는 특성이 있다. 따라서 낸드 플래시 메모리의 신뢰성 및 내구성을 향상시키기 위해서는 블록 단위로 프로그램/지우기 싸이클(program/erase cycle)이 관리되어야 한다. 나아가 더욱 세밀한 방식으로 셀 단위 전자 이동을 줄일 수 있는 방법이 제시되어야 한다.
기존의 방법으로 셀 간 간섭 완화 (Cell to cell interference cancellation) 기법이 있다. 낸드 플래시 메모리의 셀 비트 패턴을 바꾸기 위해서는 일정 전압 이상의 큰 전압이 인가되야 한다. 이러한 강력한 전압의 인가는 비트 패턴을 바꾸고자 하는 특정 셀 뿐만 아니라 해당 셀과 같은 워드라인에 속한 모든 셀에 전압 변동의 영향을 주게 된다. 주변 셀의 비트 패턴은 일정한 전압을 유지해야 오류 없이 동작가능하지만 셀 간 신호 잡음으로 낸드 플래시 메모리의 내구성과 신뢰성이 하락하는 문제가 발생한다. 이를 해결하기 위해 주변 셀에 저장된 전압을 인식하여 특정 셀에 신호 잡음을 제거한 전압을 인가하는 셀 간 간섭 완화 (Cell to cell interference cancellation) 기법이 사용된다. 이 기법은 주변 8개의 셀에 주게 되는 전압 변동의 영향을 감소시키는 기법으로 신뢰성과 내구성을 2배 이내로 향상시키지만 전압의 인가에 필요한 연산을 수행하기 위한 복잡도가 증가하게 된다.
또 다른 기존의 방법으로는 저장 데이터 무작위 배정(randomization) 기법으로, 같은 워드라인에 속한 모든 셀에 주게 되는 영향을 감소시키는 기법이다. 낸드 플래시 메모리의 신뢰성과 내구성은 블록 단위로 고정되지만 최악의 경우 셀 단위의 비트 저장 패턴에 의해 내구성이 크게 저하되는 문제가 발생한다. 한 워드 라인(word line)에서 특정 셀에 반복적으로 "0" 이 저장되는 경우에 전체 블록의 내구성이 하락한다. 이러한 문제를 해결하기 위해 페이지 단위로 저장되는 데이터를 랜덤(random) 하게 전환시켜 저장하는 기법이 사용된다. 이 경우 최악의 상황은 피할 수 있지만 내구성은 평균치로 고정되며 씨드(seed) 값을 통해 데이터를 복구하는 등 연산이 복잡해진다.
이렇듯 최근 출시되는 차세대 낸드 플래시 메모리의 신뢰성과 내구성은 기존 플래시 메모리에 비해 크게 저하되며 기존의 셀 간 간섭 완화(cell to cell interference cancellation) 기법과 저장 데이터 무작위 배정(randomization) 기법은 내구성과 신뢰성을 획기적으로 향상시키지 못하고 있다.
본 발명이 이루고자 하는 기술적 과제는, 플래시 메모리의 신뢰성 및 내구성을 향상시키기 위한 플래시 메모리 관리 장치 및 방법을 제공함에 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 플래시 메모리의 신뢰성 및 내구성을 향상시키기 위한 플래시 메모리 관리 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공함에 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치는, 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석하는 데이터 분석부; 및 상기 데이터 분석부의 분석 결과에 따라 상기 비트 저장 패턴에 대응하는 대체 패턴을 매칭시키는 데이터 매칭부;를 구비한다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 방법은, 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴의 형태를 분석하는 데이터 분석단계; 및 상기 데이터 분석단계의 분석 결과에 따라 상기 비트 저장 패턴에 대응하는 대체 패턴을 매칭시키는 데이터 매칭단계;를 갖는다.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치는, 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석하는 데이터 분석부; 및 상기 데이터 분석부의 분석 결과에 따라 상기 비트 저장 패턴에 매칭되는 대체 패턴을 생성하는 데이터 매칭부;를 구비한다.
본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법에 의하면, 최대한 적은 수의 "0" 비트를 페이지에 저장함으로써 낸드 플래시 메모리의 신뢰성 및 내구성을 향상시킬 수 있다. 또한 낸드 플래시 디바이스의 구조와 셀 배열을 변화시키지 않고 메모리 제어기에서 관리 가능하기 때문에 기법의 적용이 쉽고 간단하다.
도 1은 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치에 대한 바람직한 실시예의 구성을 도시한 블록도,
도 2는 전체 시스템에서 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치의 위치에 대한 바람직한 실시예의 구성을 도시한 블록도,
도 3은 쓰기 데이터의 비트 저장 패턴을 인식하여 대체 패턴에 매칭 시키는 경우를 도시한 도면, 그리고
도 4는 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치의 동작에 대한 바람직한 실시예의 수행 과정을 도시한 흐름도이다.
이하에서 첨부된 도면들을 참조하여 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.
도 1은 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치에 대한 바람직한 실시예의 구성을 도시한 블록도이다.
도 1을 참조하면, 본 발명에 따른 플래시 메모리 관리 장치는 데이터 입력부(110), 데이터 분석부(120), 데이터 매칭부(130), 메모리 액세스부(140) 및 저장부(150)를 구비한다.
데이터 입력부(110)에는 외부로부터의 쓰기 요청에 따른 쓰기 대상 데이터가 입력된다.
데이터 분석부(120)는 쓰기 요청이 입력된 쓰기 대상 데이터가 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석한다. 분석 방법의 한 예로 쓰기 대상 데이터의 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴이 반복되는 횟수를 산출하는 분석 방법이 가능하다.
데이터 매칭부(130)는 쓰기 대상 데이터의 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴에 대응하는 대체 패턴을 매칭시킨다. 예를 들면, 데이터 매칭부(130)는 동일한 형태의 비트 저장 패턴이 반복되는 횟수에 따라 대체 패턴에 포함된 "1" 비트의 개수가 많아지도록 대체 패턴을 결정할 수 있다. 구체적으로, 비트 저장 패턴에 "0100" 이 반복되는 횟수가 가장 많은 경우 비트 저장 패턴 "0100"에 대응하는 대체 패턴을 "1111"로 결정할 수 있다. 또한 비트 저장 패턴에 "0001" 이 반복되는 횟수가 그 다음으로 많은 경우 비트 저장 패턴 "0001"을 "1110","1101","1011","0111" 중 어느 하나의 대체 패턴으로 매칭시킬 수 있다.
데이터 매칭부(130)는 각 비트 저장 패턴에 대응하여 결정된 대체 패턴을 대체 패턴 매칭 테이블의 형태로 정렬하고, 저장부(150)는 데이터 매칭부(130)에서 생성한 대체 패턴 매칭 테이블을 저장한다. 대체 패턴 매칭 테이블의 크기는 메모리의 용량을 고려하여 조절될 수 있다. 즉, 모든 형태의 비트 저장 패턴에 대응하여 대체 패턴을 결정해야 하는 것은 아니며, 반복 횟수가 일정 횟수 이상인 비트 저장 패턴에 대해서만 대체 패턴을 결정할 수도 있다.
한편, 데이터 매칭부(130)는 위와 같이 비트 저장 패턴의 반복 횟수를 분석하여 대체 패턴을 결정할 수도 있고, 비트 저장 패턴의 형태에 따라 사전에 설정된 대체 패턴을 사용할 수도 있다. 이러한 경우에는 저장부(150)에 비트 저장 패턴과 대체 패턴이 매칭된 테이블 또는 비트 저장 패턴의 형태로부터 대체 패턴을 구하는 함수가 사전에 저장되어 있고, 데이터 매칭부(130)는 저장부(150)에 저장된 데이터를 참고하여 비트 저장 패턴으로부터 대체 패턴을 결정한다.
마지막으로 메모리 액세스부(140)는 매칭이 이루어진 대체 패턴을 플래시 메모리의 저장 공간에 저장한다.
이후 외부로부터 저장된 쓰기 대상 데이터에 대한 읽기 요청이 입력되면 본 발명에 따른 플래시 메모리 관리 장치는 저장부(150)에 저장된 대체 패턴 매칭 테이블 또는 함수를 이용하여 대체 패턴으로부터 비트 저장 패턴을 생성할 수 있다.
도 2는 전체 시스템에서 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치의 위치에 대한 바람직한 실시예의 구성을 도시한 블록도이다.
도 2에서 호스트를 통해 요청된 쓰기/읽기 명령은 낸드 플래시 메모리 기반 저장장치의 커맨트 큐를 거쳐 플래시 변환 레이어에 도달한다. 반면, 요청된 쓰기 데이터는 낸드 플래시 메모리 기반 저장장치의 버퍼에 임시 저장되고 플래시 변환 레이어에 의해 실제 낸드 영역으로 사상되면 플래시 프로그램 동작이 수행된다.
본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치는 플래시 프로그램이 동작하는 컨트롤 레이어에 데이터 패턴 인식 메모리 접근 엔진의 형태로 구현되어 데이터 패턴에 대한 인코딩/디코딩(encoding/decoding)을 수행한다. 낸드 플래시 메모리 디바이스 내부에 제어기가 위치하는 경우에는 해당 칩의 제어기 내부에 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치가 위치할 수도 있다. 또는 데이터 패턴 인식 메모리 접근 엔진을 하드웨어 모듈로서 구현하거나, 엔진에서 참조하는 대체 패턴 매칭 테이블을 SRAM에 두는 것이 가능하다.
도 3은 쓰기 데이터의 비트 저장 패턴을 인식하여 대체 패턴에 매칭시키는 경우를 도시한 도면이다. 앞에서 설명한 것과 같이 대체 패턴 매칭 테이블은 본 발명, 즉 데이터 패턴 인식 메모리 접근 엔진 내부의 저장부(150)에 존재하며, 데이터 매칭부(130)는 비트 저장 패턴과 실제 저장될 대체 패턴을 일대일 사상시킨다. 실제 플래시 영역에 저장되는 대체 패턴의 생성 기법으로는 허프만 알고리즘을 확장하여 사용할 수 있다.
허프만 코드가 가장 자주 발생하는 데이터 패턴에 대해 가장 짧은 코드부호를 갖도록 코딩하는데 반해, 본 발명에서는 가장 자주 발생하는 데이터 패턴에 대해 가장 "1" 비트가 많은 형태로 패턴을 생성한다. 또한 자주 발생하는 비트 저장 패턴이 아니더라도 "0" 비트의 개수가 지나치게 많은 저장 데이터에 대해서는 반전 등의 기법을 사용하여 오버헤드를 최소화한다. 이런 경우에 반전 플래그 비트 등의 간단한 정보는 낸드 플래시 메모리의 스페어 영역에 저장하도록 유도한다.
대체 패턴 매칭 테이블의 크기는 메모리의 용량을 고려하여 조절될 수 있으며, 대체 패턴의 형태를 테이블 형식으로 저장하는 대신 비트 저장 패턴에 대한 함수 형태로 나타낼 수도 있음은 앞에서 설명한 것과 같다.
쓰기 요청이 입력된 쓰기 대상 데이터에 대한 또 다른 분석 방법으로 쓰기 대상 데이터가 플래시 메모리의 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수를 산출하는 분석 방법이 있다.
이러한 분석 방법에 의해 쓰기 대상 데이터를 저장할 때, 데이터 매칭부(130)는 쓰기 대상 데이터가 플래시 메모리의 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수가 사전에 설정된 임계 수치 이상이면 메모리 액세스부(140)가 데이터 패턴에 포함된 각 비트를 반전시켜 저장하도록 할 수 있다. 일반적인 경우, 파일 시스템의 메타데이터는 "0" 비트의 개수가 많은 데이터 패턴을 갖는다. 메타데이터에는 파일 시스템의 전반적인 데이터의 맵 테이블과 설정 레지스터가 저장되기 때문에 필요한 부분을 사용하고 그 외 예약된 영역 전체를 "0" 비트로 채우는 방식을 사용하기 때문이다.
이러한 특성에 비추어 보면 일정한 임계 수치 이상으로 "0" 비트가 저장되는 데이터 패턴이 발생하는 경우 저장되는 전체 페이지의 비트를 반전시키는 저장 기법은 매우 유용하다. 즉, 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수가 사전에 설정된 임계 수치 이상이면 "0" 비트는 "1" 비트로 "1" 비트는 "0" 비트로 변환시켜 준다. 페이지를 저장할 시에는 스페어 영역에 "1" 비트 또는 "0" 비트를 저장하여 반전 여부를 표시하는 반전 플래그 비트를 추가할 수 있다.
또 다른 방법으로, 쓰기 대상 데이터가 플래시 메모리의 페이지에 저장되는 데이터 패턴에 연속하는 "0" 비트가 포함되어 있는가를 판단하는 분석 방법이 있다. 분석 결과 쓰기 대상 데이터가 플래시 메모리의 페이지에 저장되는 데이터 패턴에 연속하는 복수의 "0" 비트가 포함되어 있는 경우, 본 발명에 따른 플래시 메모리 관리 장치의 데이터 매칭부(130)는 메모리 액세스부(140)가 복수의 "0" 비트를 반전시켜 플래시 메모리에 저장하도록 할 수 있다. 즉, 저장되는 데이터 패턴을 순차적으로 스캔하면서 "1" 비트가 많은 패턴이 되도록 인코딩하는 것이다. 최악의 경우 "1" 비트, "0" 비트 반전이 지속되면 인코딩된 데이터가 모두 "0" 비트가 될 수도 있지만 이런 경우 앞서 서술한 페이지 전체 비트 반전 기법을 함께 사용하여 "1" 비트의 개수가 많아지도록 할 수 있다.
도 4는 본 발명에 따른 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치의 동작에 대한 바람직한 실시예의 수행 과정을 도시한 흐름도이다.
데이터 입력부(110)에는 외부로부터의 쓰기 요청에 따른 쓰기 대상 데이터가 입력된다(S110).
데이터 분석부(120)는 쓰기 요청이 입력된 쓰기 대상 데이터가 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석한다(S120). 분석 방법의 한 예로 앞에서 설명한 바와 같이 쓰기 대상 데이터의 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴이 반복되는 횟수를 산출하는 분석 방법이 가능하다.
데이터 매칭부(130)는 쓰기 대상 데이터의 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴에 대응하는 대체 패턴을 매칭시킨다(S130). 대체 패턴은 동일한 형태의 비트 저장 패턴이 반복되는 횟수에 따라 대체 패턴에 포함된 "1" 비트의 개수가 많아지도록 결정될 수 있다.
저장부(150)에는 비트 저장 패턴 또는 데이터 패턴과 대체 패턴이 함께 기록된 대체 패턴 매칭 테이블이 저장된다. 대체 패턴 매칭 테이블의 크기는 메모리의 용량을 고려하여 조절될 수 있다.
마지막으로 메모리 액세스부(140)는 매칭이 이루어진 대체 패턴을 플래시 메모리의 저장 공간에 저장한다(S140).
이상에서 설명한 바와 같이 본 발명은 의도적으로 "1" 비트의 개수를 최대화하여 낸드 플래시 메모리에 저장하는 방법을 사용하기 때문에 그렇지 않은 낸드 플래시 메모리에 비해 신뢰성과 내구성을 10배 이상 향상시킬 수 있다.
또한 본 발명에 따른 플래시 메모리 관리 기법에 따라 쓰기 대상 데이터를 저장할 때, 쓰기 대상 데이터가 저장될 플래시 메모리의 주소 정보에 대응하는 저장위치에 이미 저장되어 있는 기존 데이터의 패턴과 본 발명에 의해 쓰기 대상 데이터로부터 변환된 패턴 사이에서 변경된 비트만을 별로로 저장하는 방법을 사용할 수도 있다. 본 발명은 플래시 메모리 디바이스의 구조를 변화시키지 않고 구현이 가능하기 때문이다.
구체적으로, 기존 데이터의 패턴과 변환된 패턴 사이의 XOR 연산을 수행하여 기존 데이터로부터 변경된 비트를 나타내는 차등값 데이터를 산출할 수 있으며, 차등값 데이터를 압축하여 별도의 저장매체에 저장할 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.

Claims (19)

  1. 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석하는 데이터 분석부; 및
    상기 데이터 분석부의 분석 결과에 따라 상기 비트 저장 패턴에 대응하는 대체 패턴을 매칭시키는 데이터 매칭부;를 포함하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  2. 제 1항에 있어서,
    상기 비트 저장 패턴에 대응하는 대체 패턴이 테이블 형태 또는 상기 비트 저장 패턴에 대한 함수 형태로 사전에 설정되어 저장된 저장부를 더 포함하며,
    상기 데이터 매칭부는 상기 저장부에 저장된 대체 패턴을 상기 비트 저장 패턴에 대응시키는 것을 특징으로 하는 플래시 메모리 관리 장치.
  3. 제 1항에 있어서,
    상기 데이터 분석부는 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터에서 동일한 형태의 비트 저장 패턴이 반복되는 횟수를 분석하고,
    상기 데이터 매칭부는 상기 비트 저장 패턴의 반복 횟수에 대응하여 "1" 비트의 개수가 많아지도록 상기 대체 패턴의 형태를 결정하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  4. 제 3항에 있어서,
    상기 쓰기 대상 데이터의 각 비트 저장 패턴에 대응하여 결정된 대체 패턴이 저장되는 저장부를 더 포함하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  5. 제 1항에 있어서,
    상기 데이터 매칭부는 상기 플래시 메모리의 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수가 사전에 설정된 임계 수치 이상이면 상기 데이터 패턴에 포함된 각 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 장치.
  6. 제 1항에 있어서,
    상기 데이터 매칭부는 상기 플래시 메모리의 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 연속하는 복수의 "0" 비트가 포함되면 상기 연속하는 복수의 "0" 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 장치.
  7. 제 5항 또는 제 6항에 있어서,
    상기 대체 패턴을 상기 플래시 메모리에 저장하는 메모리 엑세스부를 더 포함하며,
    상기 메모리 액세스부는 상기 플래시 메모리의 저장 공간에 반전된 비트가 저장되면 상기 플래시 메모리의 스페어 영역에 반전 플래그 비트를 저장하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  8. 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴의 형태를 분석하는 데이터 분석단계; 및
    상기 데이터 분석단계의 분석 결과에 따라 상기 비트 저장 패턴에 대응하는 대체 패턴을 매칭시키는 데이터 매칭단계;를 포함하는 것을 특징으로 하는 플래시 메모리 관리 방법.
  9. 제 8항에 있어서,
    상기 비트 저장 패턴에 대응하는 대체 패턴이 테이블 형태 또는 상기 비트 저장 패턴에 대한 함수 형태로 사전에 설정되어 저장되어 있으며,
    상기 데이터 매칭단계에서, 상기 사전에 저장된 대체 패턴을 상기 비트 저장 패턴에 대응시키는 것을 특징으로 하는 플래시 메모리 관리 방법.
  10. 제 8항에 있어서,
    상기 데이터 분석단계에서, 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터에서 동일한 형태의 비트 저장 패턴이 반복되는 횟수를 분석하고,
    상기 데이터 매칭단계에서, 상기 비트 저장 패턴의 반복 횟수에 대응하여 "1" 비트의 개수가 많아지도록 상기 대체 패턴의 형태를 결정하는 것을 특징으로 하는 플래시 메모리 관리 방법.
  11. 제 10항에 있어서,
    쓰기 대상 데이터의 각 비트 저장 패턴에 대응하여 결정된 대체 패턴을 저장하는 저장단계를 더 포함하는 것을 특징으로 하는 플래시 메모리 관리 방법.
  12. 제 8항에 있어서,
    상기 데이터 매칭단계에서, 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수가 사전에 설정된 임계 수치 이상이면 상기 데이터 패턴에 포함된 각 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 방법.
  13. 제 8항에 있어서,
    상기 데이터 매칭단계에서, 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 연속하는 복수의 "0" 비트가 포함되면 상기 연속하는 복수의 "0" 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 방법.
  14. 제 12항 또는 제 13항에 있어서,
    상기 대체 패턴을 상기 플래시 메모리에 저장하는 메모리 액세스단계를 더 포함하며,
    상기 메모리 액세스단계에서, 상기 플래시 메모리의 저장 공간에 반전된 비트가 저장되면 상기 플래시 메모리의 스페어 영역에 반전 플래그 비트를 저장하는 것을 특징으로 하는 플래시 메모리 관리 방법.
  15. 제 8항 내지 제 13항 중 어느 한 항에 기재된 플래시 메모리 관리 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  16. 플래시 메모리의 각 셀에 저장되는 비트 저장 패턴을 분석하는 데이터 분석부; 및
    상기 데이터 분석부의 분석 결과에 따라 상기 비트 저장 패턴에 매칭되는 대체 패턴을 생성하는 데이터 매칭부;를 포함하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  17. 제 16항에 있어서,
    상기 데이터 분석부는 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터에서 동일한 형태의 비트 저장 패턴이 반복되는 횟수를 분석하고,
    상기 데이터 매칭부는 상기 비트 저장 패턴의 반복 횟수에 대응하여 "1" 비트의 개수가 많아지도록 상기 대체 패턴을 생성하는 것을 특징으로 하는 플래시 메모리 관리 장치.
  18. 제 16항에 있어서,
    상기 데이터 매칭부는 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 포함된 "0" 비트의 개수가 사전에 설정된 임계 수치 이상이면 상기 데이터 패턴에 포함된 각 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 장치.
  19. 제 16항에 있어서,
    상기 데이터 매칭부는 상기 플래시 메모리 각 셀에 상기 비트 저장 패턴으로 저장되는 쓰기 대상 데이터가 상기 플래시 메모리의 페이지에 저장되는 데이터 패턴에 연속하는 복수의 "0" 비트가 포함되면 상기 연속하는 복수의 "0" 비트를 반전시키는 것을 특징으로 하는 플래시 메모리 관리 장치.
PCT/KR2012/005491 2012-07-11 2012-07-11 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법 WO2014010763A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/413,997 US20150178193A1 (en) 2012-07-11 2012-07-11 Apparatus and method for managing flash memory by means of writing data pattern recognition
PCT/KR2012/005491 WO2014010763A1 (ko) 2012-07-11 2012-07-11 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2012/005491 WO2014010763A1 (ko) 2012-07-11 2012-07-11 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2014010763A1 true WO2014010763A1 (ko) 2014-01-16

Family

ID=49916195

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/005491 WO2014010763A1 (ko) 2012-07-11 2012-07-11 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법

Country Status (2)

Country Link
US (1) US20150178193A1 (ko)
WO (1) WO2014010763A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170111196A (ko) * 2016-03-25 2017-10-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법 및 그것을 포함하는 데이터 처리 시스템
CN107408066A (zh) * 2015-03-25 2017-11-28 爱信艾达株式会社 存储器控制器

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9864769B2 (en) * 2014-12-12 2018-01-09 Pure Storage, Inc. Storing data utilizing repeating pattern detection
CN105900082B (zh) * 2014-12-16 2019-05-24 华为技术有限公司 存储空间管理方法及装置
US20170255387A1 (en) * 2016-03-04 2017-09-07 Intel Corporation Techniques to Cause a Content Pattern to be Stored to Memory Cells of a Memory Device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070011743A (ko) * 2005-07-21 2007-01-25 삼성전자주식회사 메모리 장치 및 이를 위한 데이터 처리 방법
JP2007310964A (ja) * 2006-05-18 2007-11-29 Toshiba Corp Nand型フラッシュメモリ装置及びメモリデバイス
KR20090041400A (ko) * 2006-08-01 2009-04-28 샌디스크 아이엘 엘티디 플래시 메모리에서 오류를 방지하는 방법
US20100281340A1 (en) * 2009-04-30 2010-11-04 International Business Machines Corporation Adaptive endurance coding of non-volatile memories
KR20110128852A (ko) * 2009-02-12 2011-11-30 라모트 앳 텔-아비브 유니버시티 리미티드 데이터의 인코딩에 의한 플래시 내구성 강화 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321628B2 (en) * 2003-09-30 2008-01-22 Infineon Technologies Ag Data transmission system with reduced power consumption
US7587645B2 (en) * 2005-01-24 2009-09-08 Samsung Electronics Co., Ltd. Input circuit of semiconductor memory device and test system having the same
US8316173B2 (en) * 2009-04-08 2012-11-20 International Business Machines Corporation System, method, and computer program product for analyzing monitor data information from a plurality of memory devices having finite endurance and/or retention
JP5962258B2 (ja) * 2012-06-29 2016-08-03 富士通株式会社 データ変換方法、データ変換装置およびデータ変換プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070011743A (ko) * 2005-07-21 2007-01-25 삼성전자주식회사 메모리 장치 및 이를 위한 데이터 처리 방법
JP2007310964A (ja) * 2006-05-18 2007-11-29 Toshiba Corp Nand型フラッシュメモリ装置及びメモリデバイス
KR20090041400A (ko) * 2006-08-01 2009-04-28 샌디스크 아이엘 엘티디 플래시 메모리에서 오류를 방지하는 방법
KR20110128852A (ko) * 2009-02-12 2011-11-30 라모트 앳 텔-아비브 유니버시티 리미티드 데이터의 인코딩에 의한 플래시 내구성 강화 장치 및 방법
US20100281340A1 (en) * 2009-04-30 2010-11-04 International Business Machines Corporation Adaptive endurance coding of non-volatile memories

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107408066A (zh) * 2015-03-25 2017-11-28 爱信艾达株式会社 存储器控制器
EP3242211A4 (en) * 2015-03-25 2017-12-27 Aisin AW Co., Ltd. Memory controller
KR20170111196A (ko) * 2016-03-25 2017-10-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법 및 그것을 포함하는 데이터 처리 시스템
KR102523967B1 (ko) 2016-03-25 2023-04-21 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법 및 그것을 포함하는 데이터 처리 시스템

Also Published As

Publication number Publication date
US20150178193A1 (en) 2015-06-25

Similar Documents

Publication Publication Date Title
CN105786411B (zh) 非易失性存储器装置的操作方法
WO2014010763A1 (ko) 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법
CN102859504B (zh) 复制数据的方法和系统以及获得数据副本的方法
TWI451249B (zh) 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置
CN106775436B (zh) 数据存取方法、存储器控制电路单元与存储器
WO2007000862A1 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
CN108027764B (zh) 可转换的叶的存储器映射
US9418731B1 (en) Memory management method, memory storage device and memory control circuit unit
KR101374065B1 (ko) 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치
US20100287330A1 (en) Method for writing data into flash memory
KR20090008065A (ko) 데이터 쓰기 방법 및 장치
CN116134519A (zh) 存储器装置中的平衡的三层级读取干扰管理
CN112154408A (zh) 重放受保护存储器块命令队列
CN112445716A (zh) Nand存储的重映射技术
CN113885808B (zh) 映射信息记录方法以及存储器控制电路单元与存储装置
CN107102953A (zh) 非易失性存储器装置及其迭代排序方法
US10372377B2 (en) Memory controller, memory system, and control method
KR20090098275A (ko) 플래시 메모리 시스템
US20220398029A1 (en) Data Storage Device Having Predictive Analytics
WO2019007315A1 (zh) 闪存设备中数据写入的方法及设备
KR101394356B1 (ko) 쓰기 데이터 패턴 인식에 의한 플래시 메모리 관리 장치 및 방법
CN112306379B (zh) 数据搬移的恢复方法、装置、电子设备及存储介质
CN111897745B (zh) 一种数据存储方法、装置、电子设备及存储介质
CN108242249B (zh) 数据映射系统、方法及其存储介质
JP2005092678A (ja) 半導体メモリカード及び不揮発性メモリのデータ消去処理方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12880735

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14413997

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12880735

Country of ref document: EP

Kind code of ref document: A1