KR20180042699A - 데이터 저장 장치 및 그것의 동작 방법 - Google Patents

데이터 저장 장치 및 그것의 동작 방법 Download PDF

Info

Publication number
KR20180042699A
KR20180042699A KR1020160135191A KR20160135191A KR20180042699A KR 20180042699 A KR20180042699 A KR 20180042699A KR 1020160135191 A KR1020160135191 A KR 1020160135191A KR 20160135191 A KR20160135191 A KR 20160135191A KR 20180042699 A KR20180042699 A KR 20180042699A
Authority
KR
South Korea
Prior art keywords
memory
wear leveling
time
leveling operation
memory units
Prior art date
Application number
KR1020160135191A
Other languages
English (en)
Other versions
KR102630116B1 (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 KR1020160135191A priority Critical patent/KR102630116B1/ko
Priority to US15/456,741 priority patent/US10156997B2/en
Priority to CN201710312644.8A priority patent/CN107958690B/zh
Publication of KR20180042699A publication Critical patent/KR20180042699A/ko
Application granted granted Critical
Publication of KR102630116B1 publication Critical patent/KR102630116B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

데이터 저장 장치는 복수의 메모리 유닛들을 포함하는 메모리 영역을 포함하는 비휘발성 메모리 장치 및 경과 시간 및 상기 메모리 영역의 라이트 횟수를 모니터하고, 모니터 결과에 따라 상기 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행하도록 구성된 컨트롤러를 포함한다.

Description

데이터 저장 장치 및 그것의 동작 방법{DATA STORAGE DEVICE AND OPERATING METHOD THEREOF}
본 발명은 데이터 저장 장치에 관한 것으로, 더욱 상세하게는 비휘발성 메모리 장치를 포함하는 데이터 저장 장치에 관한 것이다.
데이터 저장 장치는 외부 장치의 라이트 요청에 응답하여, 외부 장치로부터 제공된 데이터를 저장하도록 구성될 수 있다. 또한, 데이터 저장 장치는 외부 장치의 리드 요청에 응답하여, 저장된 데이터를 외부 장치로 제공하도록 구성될 수 있다. 외부 장치는 데이터를 처리할 수 있는 전자 장치로서, 컴퓨터, 디지털 카메라 또는 휴대폰 등을 포함할 수 있다. 데이터 저장 장치는 외부 장치에 내장되어 동작하거나, 분리 가능한 형태로 제작되어 외부 장치에 연결됨으로써 동작할 수 있다.
데이터 저장 장치는 PCMCIA(Personal Computer Memory Card International Association) 카드, CF(Compact Flash) 카드, 스마트 미디어 카드, 메모리 스틱, 다양한 멀티 미디어 카드(MMC, eMMC, RS-MMC, MMC-micro), SD(Secure Digital) 카드(SD, Mini-SD, Micro-SD), UFS(Universal Flash Storage) 또는 SSD(Solid State Drive) 등으로 구성될 수 있다.
데이터 저장 장치는 데이터를 저장하기 위해 불휘발성 메모리 장치를 포함할 수 있다. 불휘발성 메모리 장치는 전원이 인가되지 않더라도 저장된 데이터를 유지할 수 있다. 불휘발성 메모리 장치는 낸드 플래시(NAND Flash) 또는 노어 플래시(NOR Flash)와 같은 플래시 메모리 장치, FeRAM(Ferroelectrics Random Access Memory), PCRAM(Phase-Change Random Access Memory), MRAM(Magnetic Random Access Memory) 또는 ReRAM(Resistive Random Access Memory) 등을 포함할 수 있다.
본 발명의 실시 예는 비휘발성 메모리 장치의 수명을 연장하고 데이터 신뢰성을 향상시키는 데이터 저장 장치 및 그것의 동작 방법을 제공하는 데 있다.
본 발명의 실시 예는 웨어 레벨링 동작을 통해 리프레쉬 효과를 달성하는 데이터 저장 장치 및 그것의 동작 방법을 제공하는 데 있다.
본 발명의 실시 예에 따른 데이터 저장 장치는 복수의 메모리 유닛들을 포함하는 메모리 영역을 포함하는 비휘발성 메모리 장치 및 경과 시간 및 상기 메모리 영역의 라이트 횟수를 모니터하고, 모니터 결과에 따라 상기 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행하도록 구성된 컨트롤러를 포함할 수 있다.
본 발명의 실시 예에 따른 데이터 저장 장치의 동작 방법은 경과 시간 및 메모리 영역의 라이트 횟수를 모니터하는 단계 및 모니터 결과에 따라 상기 메모리 영역에 포함된 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행하는 단계를 포함할 수 있다.
본 발명의 실시 예에 따른 데이터 저장 장치는 복수의 메모리 유닛들을 포함하는 메모리 영역을 포함하는 비휘발성 메모리 장치; 및 임계 라이트 횟수의 주기로 상기 메모리 영역에 대해 웨어 레벨링 동작을 수행하도록 구성된 컨트롤러를 포함하되, 상기 컨트롤러는 늦어도 임계 시간 내에 상기 웨어 레벨링 동작을 수행하고, 상기 임계 시간은 상기 메모리 영역의 드리프트 시간에 근거하여 설정될 수 있다.
본 발명의 실시 예에 따른 데이터 저장 장치 및 그것의 동작 방법은 비휘발성 메모리 장치의 수명을 연장하고 데이터 신뢰성을 향상시킬 수 있다.
본 발명의 실시 예에 따른 데이터 저장 장치 및 그것의 동작 방법은 웨어 레벨링 동작을 통해 리프레쉬 효과를 달성할 수 있다.
도1은 본 발명의 실시 예에 따른 데이터 저장 장치를 도시한 블록도,
도2a 및 도2b는 도1의 메모리 영역에 포함된 메모리 셀들의 드리프트 현상을 설명하기 위한 도면들,
도3은 본 발명에서 웨어 레벨링 동작을 수행하기 위한 임계 시간을 설명하기 위한 도면,
도4는 도1의 웨어 레벨링부의 동작 방법을 설명하기 위한 도면,
도5는 도1의 웨어 레벨링부의 동작 방법을 설명하기 위한 도면,
도6은 도1의 데이터 저장 장치의 동작 방법을 설명하기 위한 순서도이다.
이하, 도면들을 참조하여 본 발명의 실시 예에 대해 상세히 설명하기로 한다.
도1은 본 발명의 실시 예에 따른 데이터 저장 장치(10)를 도시한 블록도이다.
데이터 저장 장치(10)는 호스트 장치(미도시)의 제어에 따라 데이터를 저장하고, 저장된 데이터를 호스트 장치로 출력할 수 있다. 데이터 저장 장치(10)는 PCMCIA(Personal Computer Memory Card International Association) 카드, CF(Compact Flash) 카드, 스마트 미디어 카드, 메모리 스틱, 다양한 멀티 미디어 카드(MMC, eMMC, RS-MMC, MMC-micro), SD(Secure Digital) 카드(SD, Mini-SD, Micro-SD), UFS(Universal Flash Storage) 또는 SSD(Solid State Drive) 등으로 구성될 수 있다.
데이터 저장 장치(10)는 컨트롤러(100)와 비휘발성 메모리 장치(200)를 포함할 수 있다.
컨트롤러(100)는 호스트 장치의 제어에 따라 비휘발성 메모리 장치(200)에 데이터를 저장하고, 저장된 데이터를 리드할 수 있다. 또한, 컨트롤러(100)는 비휘발성 메모리 장치(200)의 수명을 연장하고 데이터 신뢰성을 유지하기 위해서 웨어 레벨링 동작 및 리프레쉬 동작과 같은 관리 동작을 자체적으로 수행할 수 있다.
컨트롤러(100)는 타이머(111) 및 라이트 카운터(112)를 포함하는 웨어 레벨링부(110)를 포함할 수 있다. 타이머(111)는 경과 시간을 측정할 수 있다. 라이트 카운터(112)는 호스트 장치의 제어에 따라 메모리 영역(210)에 대해 수행된 라이트 동작들을 라이트 횟수로서 카운트할 수 있다. 웨어 레벨링부(110)는 메모리 영역(210)에 대한 웨어 레벨링 동작을 타이머(111)의 경과 시간이 임계 시간에 도달하거나 라이트 카운터(112)의 라이트 횟수가 임계 횟수에 도달했을 때 웨어 레벨링 동작을 수행할 수 있다. 타이머(111)의 경과 시간 및 라이트 카운터(112)의 라이트 횟수는 웨어 레벨링 동작이 수행된 뒤에 리셋될 수 있다. 결과적으로, 웨어 레벨링부(110)는 늦어도 임계 시간 내에 웨어 레벨링 동작을 수행할 수 있다.
본 발명에서 임계 시간은 메모리 영역(210)에 포함된 메모리 유닛들(UNIT1~UNITn)의 개수 및 에러 비트 발생에 관련된 드리프트 시간에 근거하여 설정될 수 있다.
한편, 웨어 레벨링부(110)는 스왑 알고리즘 및 갭 알고리즘에 따라 웨어 레벨링 동작을 수행할 수 있다. 도4 및 도5에서 자세하게 설명될 바와 같이, 스왑 알고리즘 및 갭 알고리즘에 따르면, 메모리 영역(210)에서 웨어 레벨링 동작이 수행될 메모리 유닛들이 순차적으로 고르게 선택될 수 있다. 또한, 이러한 웨어 레벨링 동작은 늦어도 임계 시간 내에 수행되므로 결과적으로 에러 비트 발생을 방지하는 리프레쉬 효과를 유도할 수 있다. 따라서, 컨트롤러(100)는 별도의 리프레쉬 동작을 관리할 필요 없이 웨어 레벨링 동작을 통해 리프레쉬 효과를 달성하므로 동작 부담이 경감되고 성능이 향상될 수 있다.
비휘발성 메모리 장치(200)는 컨트롤러(100)의 제어에 따라 데이터를 저장할 수 있고, 외부로부터 파워를 공급받지 않아도 저장된 데이터를 유지할 수 있다. 이하에서, 비휘발성 메모리 장치(200)는 ReRAM(Resistive Random Access Memory)일 수 있다. 그러나, 본 발명의 실시 예는 이에 제한되지 않고, 비휘발성 메모리 장치(200)는 낸드 플래시(NAND Flash) 또는 노어 플래시(NOR Flash)와 같은 플래시 메모리 장치, FeRAM(Ferroelectrics Random Access Memory), PCRAM(Phase-Change Random Access Memory) 및 MRAM(Magnetic Random Access Memory) 등으로 구현될 수도 있다.
비휘발성 메모리 장치(200)는 데이터를 저장하기 위한 메모리 영역(210)을 포함할 수 있다. 메모리 영역(210)은 복수의 메모리 유닛들(UNIT1~UNITn)을 포함할 수 있다. 복수의 메모리 유닛들(UNIT1~UNITn) 각각은 복수의 메모리 셀들(미도시)을 포함할 수 있다.
도1에서, 비휘발성 메모리 장치(200)는 1개의 메모리 영역(210)을 포함하지만, 복수의 메모리 영역(210)들이 포함될 수 있다. 이때, 타이머(111)는 복수의 메모리 영역(210)들에 대해 경과 시간을 구분하여 각각 측정하고, 라이트 카운터(112)는 복수의 메모리 영역(210)들에 대해 라이트 횟수를 구분하여 각각 카운트하고, 웨어 레벨링부(110)는 복수의 메모리 영역(210)들에 대해 대응하는 경과 시간 및 라이트 횟수에 근거하여 웨어 레벨링 동작을 각각 수행할 수 있다.
도2a 및 도2b는 도1의 메모리 영역(210)에 포함된 메모리 셀들의 드리프트 현상을 설명하기 위한 도면들이다. 도2a 및 도2b에서 가로축(R)은 메모리 셀의 저항값을 의미하고, 세로축(Cell #)은 메모리 셀들의 개수를 의미할 수 있다.
우선, 메모리 영역(210)의 메모리 셀은 라이트 동작을 통해 저장되는 데이터 값에 따라 셋 상태 또는 리셋 상태로 존재할 수 있다. 셋 상태와 리셋 상태는 메모리 셀의 저항값에 따라 구분될 수 있다. 즉, 리드 저항값(Rrd)보다 작은 저항값을 가진 메모리 셀은 셋 상태로 존재하고, 리드 저항값(Rrd)보다 큰 저항값을 가진 메모리 셀은 리셋 상태로 존재할 수 있다. 도2a에서 상태 분포(D1)는 셋 상태에 있는 메모리 셀들을 포함하고, 상태 분포(D2)는 리셋 상태에 있는 메모리 셀들을 포함할 수 있다.
메모리 셀에 대한 리드 동작은 메모리 셀로 소정 전류를 통과시켜, 메모리 셀을 통과한 전류량을 기준 전류량과 비교함으로써 수행될 수 있다. 기준 전류량은 리드 저항값(Rrd)에 대응하는 전류량, 즉, 리드 저항값(Rrd)을 가진 메모리 셀을 통과한 전류량일 수 있다. 따라서, 메모리 셀의 저항값이 리드 저항값(Rrd)보다 작을 때, 즉, 메모리 셀을 통과한 전류량이 기준 전류량보다 클 때 메모리 셀은 셋 상태에 있는 것으로 판단되고, 셋 상태에 대응하는 데이터, 즉, 셋 데이터가 리드될 수 있다. 그리고, 메모리 셀의 저항값이 리드 저항값(Rrd)보다 클 때, 즉, 메모리 셀을 통과한 전류량이 기준 전류량보다 작을 때 메모리 셀은 리셋 상태에 있는 것으로 판단되고, 리셋 상태에 대응하는 데이터, 즉, 리셋 데이터가 리드될 수 있다.
도2b를 참조하면, 시간의 흐름에 따라 메모리 셀들의 저항값들이 증가하는 드리프트 현상(201)이 발생하면, 상태 분포(D1)는 상태 분포(D3)로 이동할 수 있다. 이때, 리드 저항값(Rrd)을 기준으로 리드 동작이 수행되면 셋 데이터가 라이트되었던 메모리 셀들(202)로부터 리셋 데이터가 리드될 수 있으므로, 리드 에러가 발생할 수 있다.
도3은 본 발명에서 웨어 레벨링 동작을 수행하기 위한 임계 시간을 설명하기 위한 도면이다.
도3을 참조하면, 우선, 드리프트 시간이 정의될 수 있다. 드리프트 시간은, 셋 상태에 있는 메모리 셀의 저항값이 라이트 동작이 수행된 때로부터 리드 저항값(Rrd)까지 증가하는데 걸리는 시간이고, 드리프트 현상(203)에 대응하는 시간일 수 있다. 드리프트 시간은, 상태 분포(D1)가 리드 저항값(Rrd)에 우측 가장자리가 접하도록 상태 분포(D4)로 이동하는데 걸리는 시간일 수 있다. 드리프트 시간은 메모리 영역(210)에 셋 데이터를 라이트한 후, 리셋 데이터로 리드될 때까지 리드 동작을 반복하는 테스트를 통해 산출될 수 있다. 정리하면, 셋 데이터는 에러 비트로 리드되지 않으려면 드리프트 시간 내에 안정적인 저항 값을 회복하기 위해서 다시 라이트되어야 할 것이다.
임계 시간(CT)은 드리프트 시간을 메모리 영역(210)의 전체 메모리 유닛들(UNIT1~UNITn)의 개수(n)로 나눈 시간일 수 있다. 후술될 바와 같이, 웨어 레벨링부(110)는 각각의 메모리 유닛들(UNIT1~UNITn)에 저장된 데이터를 순차적으로 늦어도 임계 시간(CT) 내에 다른 위치에 다시 라이트함으로써 웨어 레벨링 동작을 수행할 수 있다. 결국, 메모리 영역(210)에 라이트된 데이터는 드리프트 시간 내에 적어도 한번은 다시 라이트되므로 에러 비트로 변하지 않을 것이다.
도4는 도1의 웨어 레벨링부(110)의 동작 방법을 설명하기 위한 도면이다. 도4는, 설명의 간편화를 위해, 어드레스 "0"부터 "7"까지에 대응하는 메모리 유닛들을 포함하는 메모리 영역(210)을 도시한다.
웨어 레벨링부(110)는 타이머(111)의 경과 시간이 임계 시간(CT)에 도달했는지 여부 및 메모리 영역(210)의 라이트 횟수(WC)가 임계 횟수(CC)에 도달했는지 여부를 판단할 수 있다. 웨어 레벨링부(110)는 타이머(111)의 경과 시간이 임계 시간(CT)에 도달한 것으로 판단되거나 또는 메모리 영역(210)의 라이트 횟수(WC)가 임계 횟수(CC)에 도달한 것으로 판단될 때 메모리 영역(210)의 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행할 수 있다. 웨어 레벨링 동작이 수행된 뒤, 타이머(111)의 경과 시간(PT) 및 라이트 카운터(112)의 라이트 횟수(WC)는 리셋되고, 다시 측정되기 시작할 수 있다.
도4에서 웨어 레벨링 동작이 수행될 2개의 메모리 유닛들은 스왑 알고리즘에 따라 선택될 수 있다. 웨어 레벨링부(110)는 웨어 레벨링 동작을 수행할 때마다 메모리 유닛들 중 제1 메모리 유닛을 순차적으로, 예를 들어, 어드레스를 증가시키면서 선택할 수 있다. 또한, 웨어 레벨링부(110)는 웨어 레벨링 동작을 수행할 때마다 제1 메모리 유닛에 대해 그 다음 어드레스의 메모리 유닛을 제2 메모리 유닛으로 선택할 수 있다. 그리고, 웨어 레벨링부(110)는 제1 메모리 유닛에 저장된 데이터와 제2 메모리 유닛에 저장된 데이터를 서로 교환하여 저장할 수 있다. 따라서, 제1 및 제2 메모리 유닛들은 고르게 액세스될 수 있다. 한편, 실시 예에 따라, 제2 메모리 유닛은 제1 메모리 유닛에 대해 그 다음 어드레스의 메모리 유닛이 아닌, 소정 규칙에 따라 선택된 다른 메모리 유닛일 수도 있다.
도4를 참조하면, 시간(T0)에서, 웨어 레벨링부(110)의 타이머(111) 및 라이트 카운터(112)는 경과 시간(PT) 및 라이트 횟수(WC)를 각각 측정하기 시작할 수 있다.
시간(T1)에서, 시간(T0)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 상술한 스왑 알고리즘에 따라 제1 및 제2 메모리 유닛들, 즉, 어드레스 "0" 및 "1"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T2)에서, 시간(T1)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "1" 및 "2"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T3)에서, 시간(T2)으로부터 카운트된 메모리 영역(210)의 라이트 횟수(WC)가 임계 횟수(CC)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "2" 및 "3"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T4)에서, 시간(T3)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "3" 및 "4"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T5)에서, 시간(T4)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "4" 및 "5"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T6)에서, 시간(T5)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "5" 및 "6"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T7)에서, 시간(T6)으로부터 카운트된 메모리 영역(210)의 라이트 횟수(WC)가 임계 횟수(CC)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "6" 및 "7"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T8)에서, 시간(T7)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 스왑 알고리즘에 따라 어드레스 "7" 및 "0"의 메모리 유닛들에 저장된 데이터를 서로 교환하여 저장함으로써 웨어 레벨링 동작을 수행할 수 있다.
시간(T8) 이후에, 웨어 레벨링부(110)는 도4에 도시된 동작을 반복할 수 있다. 따라서, 메모리 영역(210)에 저장된 데이터는 드리프트 시간 내에 적어도 한번은 다시 라이트되므로 에러 비트는 발생하지 않을 수 있다. 또한, 이러한 리프레쉬 효과는 웨어 레벨링 동작을 통해 수행되므로 메모리 영역(210)의 수명은 연장될 수 있다.
도5는 도1의 웨어 레벨링부(110)의 동작 방법을 설명하기 위한 도면이다. 도4에서 웨어 레벨링 동작으로 스왑 알고리즘이 적용되었던 것과 달리, 도5에서 웨어 레벨링 동작은 갭 알고리즘에 따라 수행될 수 있다.
갭 알고리즘에서도 웨어 레벨링 동작이 수행될 2개의 메모리 유닛들, 즉, 갭으로 지정될 메모리 유닛과 이전에 갭으로 지정되었던 메모리 유닛이 선택될 수 있다. 웨어 레벨링부(110)는 웨어 레벨링 동작을 수행할 때마다 메모리 유닛들 중 갭으로 지정될 메모리 유닛을 순차적으로, 예를 들어, 어드레스를 증가시키면서 선택할 수 있다. 갭으로 지정된 메모리 유닛은 데이터를 저장하는 용도로 사용되지 않을 수 있다. 그리고, 웨어 레벨링부(110)는 웨어 레벨링 동작을 수행할 때마다 갭으로 지정될 메모리 유닛에 저장된 데이터를 이전에 갭으로 지정되었었던 메모리 유닛에 카피할 수 있다. 즉, 웨어 레벨링부(110)는 웨어 레벨링 동작을 수행할 때마다 어드레스를 증가시키면서 갭을 교체할 수 있다. 결과적으로, 메모리 영역(210)의 메모리 유닛들은 고르게 액세스될 수 있다.
예를 들어, 시간(T0)에서, 어드레스 "0"의 메모리 유닛이 갭으로 지정될 수 있다. 그리고, 시간(T1)에서, 시간(T0)으로부터 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단될 때, 웨어 레벨링부(110)는 갭 알고리즘에 따라 어드레스 "1"의 메모리 유닛을 갭으로 새로 지정하기 위해, 어드레스 "1"의 메모리 유닛에 저장된 데이터를 어드레스 "0"의 메모리 유닛으로 카피할 수 있다.
도5에서 웨어 레벨링 동작은 도4를 참조하여 설명된 바와 동일하게 타이머(111)의 경과 시간(PT)이 임계 시간(CT)에 도달한 것으로 판단되거나 또는 메모리 영역(210)에 대한 라이트 카운터(112)의 라이트 횟수(WC)가 임계 횟수(CC)에 도달한 것으로 판단될 때마다 수행될 수 있다. 웨어 레벨링 동작이 수행된 뒤 타이머(111)의 경과 시간(PT) 및 라이트 카운터(112)의 라이트 횟수(WC)는 리셋될 수 있다. 따라서, 상세한 설명은 생략될 것이다.
도6은 도1의 데이터 저장 장치(10)의 동작 방법을 설명하기 위한 순서도이다. 도6은, 웨어 레벨링부(110)가 메모리 영역(210)에 대해 웨어 레벨링 동작을 수행하는 방법을 도시한다. 도6에 도시된 절차는 데이터 저장 장치(10)가 동작하는 동안 반복적으로 수행될 수 있다.
도6을 참조하면, 단계(S110)에서, 웨어 레벨링부(110)는 타이머(111)의 경과 시간 및 라이트 카운터(112)에 의해 메모리 영역(210)에 대해 카운트되는 라이트 횟수를 모니터할 수 있다.
단계(S120)에서, 웨어 레벨링부(110)는 타이머(111)의 경과 시간이 임계 시간에 도달했는지 여부 또는 메모리 영역(210)의 라이트 횟수가 임계 횟수에 도달했는지 여부를 판단할 수 있다. 임계 시간은 드리프트 시간을 메모리 영역(210)의 전체 메모리 유닛들(UNIT1~UNITn)의 개수(n)로 나눈 시간일 수 있다. 타이머(111)의 경과 시간이 임계 시간에 도달하거나 메모리 영역(210)의 라이트 횟수가 임계 횟수에 도달하지 않았을 때, 절차는 종료할 수 있다. 타이머(111)의 경과 시간이 임계 시간에 도달하거나 메모리 영역(210)의 라이트 횟수가 임계 횟수에 도달했을 때, 절차는 단계(S130)로 이동할 수 있다.
단계(S130)에서, 웨어 레벨링부(110)는 메모리 영역(210)에서 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행할 수 있다. 웨어 레벨링 동작이 수행될 메모리 유닛들은 스왑 알고리즘 및 갭 알고리즘에 따라 순차적으로 고르게 선택될 수 있다.
단계(S140)에서, 타이머(111)는 측정된 경과 시간을 리셋하고, 라이트 카운터(112)는 카운트된 라이트 횟수를 리셋할 수 있다. 타이머(111) 및 라이트 카운터(112)는 경과 시간 및 라이트 횟수를 각각 다시 측정하기 시작할 수 있다.
본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 데이터 저장 장치
100: 컨트롤러
110: 웨어 레벨링부
111: 타이머
112: 라이트 카운터
200: 비휘발성 메모리 장치
210: 메모리 영역
UNIT1~UNITn: 메모리 유닛들

Claims (16)

  1. 복수의 메모리 유닛들을 포함하는 메모리 영역을 포함하는 비휘발성 메모리 장치; 및
    경과 시간 및 상기 메모리 영역의 라이트 횟수를 모니터하고, 모니터 결과에 따라 상기 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행하도록 구성된 컨트롤러를 포함하는 데이터 저장 장치.
  2. 제1항에 있어서,
    상기 컨트롤러는, 상기 경과 시간이 임계 시간에 도달했을 때 또는 상기 라이트 횟수가 임계 횟수에 도달했을 때, 상기 웨어 레벨링 동작을 수행하는 데이터 저장 장치.
  3. 제2항에 있어서,
    상기 임계 시간은, 상기 메모리 영역에 포함된 상기 메모리 유닛들의 개수 및 상기 메모리 영역의 드리프트 시간에 근거하여 설정되는 데이터 저장 장치.
  4. 제2항에 있어서,
    상기 컨트롤러는, 상기 웨어 레벨링 동작을 수행한 뒤 상기 경과 시간 및을 상기 라이트 횟수를 리셋하고 다시 측정하기 시작하는 데이터 저장 장치.
  5. 제1항에 있어서,
    상기 컨트롤러는, 상기 메모리 유닛들 중에서 순차적으로 선택된 제1 메모리 유닛에 저장된 데이터와 제2 메모리 유닛에 저장된 데이터를 서로 교환하여 저장함으로써 상기 웨어 레벨링 동작을 수행하는 데이터 저장 장치.
  6. 제1항에 있어서,
    상기 컨트롤러는, 상기 메모리 유닛들 중에서 순차적으로 선택된 메모리 유닛에 저장된 데이터를 이전에 갭으로 지정되었던 메모리 유닛에 저장하고, 상기 선택된 메모리 유닛을 새로운 갭으로 지정함으로써 상기 웨어 레벨링 동작을 수행하는 데이터 저장 장치.
  7. 경과 시간 및 메모리 영역의 라이트 횟수를 모니터하는 단계; 및
    모니터 결과에 따라 상기 메모리 영역에 포함된 메모리 유닛들 중 선택된 메모리 유닛들에 대해 웨어 레벨링 동작을 수행하는 단계를 포함하는 데이터 저장 장치의 동작 방법.
  8. 제7항에 있어서,
    상기 웨어 레벨링 동작을 수행하는 단계는,
    상기 경과 시간이 임계 시간에 도달했을 때 또는 상기 라이트 횟수가 임계 횟수에 도달했을 때, 상기 웨어 레벨링 동작을 수행하는 단계를 포함하는 데이터 저장 장치의 동작 방법.
  9. 제8항에 있어서,
    상기 임계 시간은, 상기 메모리 영역에 포함된 상기 메모리 유닛들의 개수 및 상기 메모리 영역의 드리프트 시간에 근거하여 설정되는 데이터 저장 장치의 동작 방법.
  10. 제8항에 있어서,
    상기 웨어 레벨링 동작을 수행한 뒤, 상기 경과 시간 및 상기 라이트 횟수를 리셋하고 다시 측정하기 시작하는 단계를 더 포함하는 데이터 저장 장치의 동작 방법.
  11. 제7항에 있어서,
    상기 웨어 레벨링 동작을 수행하는 단계는,
    상기 메모리 유닛들 중에서 순차적으로 선택된 제1 메모리 유닛에 저장된 데이터와 제2 메모리 유닛에 저장된 데이터를 서로 교환하여 저장하는 단계를 포함하는 데이터 저장 장치의 동작 방법.
  12. 제7항에 있어서,
    상기 웨어 레벨링 동작을 수행하는 단계는,
    상기 메모리 유닛들 중에서 순차적으로 선택된 메모리 유닛에 저장된 데이터를 이전에 갭으로 지정되었던 메모리 유닛에 저장하는 단계; 및
    상기 선택된 메모리 유닛을 새로운 갭으로 지정하는 단계를 포함하는 데이터 저장 장치의 동작 방법.
  13. 복수의 메모리 유닛들을 포함하는 메모리 영역을 포함하는 비휘발성 메모리 장치; 및
    임계 라이트 횟수의 주기로 상기 메모리 영역에 대해 웨어 레벨링 동작을 수행하도록 구성된 컨트롤러를 포함하되,
    상기 컨트롤러는 늦어도 임계 시간 내에 상기 웨어 레벨링 동작을 수행하고, 상기 임계 시간은 상기 메모리 영역의 드리프트 시간에 근거하여 설정되는 데이터 저장 장치.
  14. 제13항에 있어서,
    상기 임계 시간은, 상기 드리프트 시간을 상기 메모리 영역에 포함된 상기 메모리 유닛들의 개수로 나눈 시간인 데이터 저장 장치.
  15. 제13항에 있어서,
    상기 컨트롤러는, 상기 메모리 유닛들 중에서 순차적으로 선택된 제1 메모리 유닛에 저장된 데이터와 제2 메모리 유닛에 저장된 데이터를 서로 교환하여 저장함으로써 상기 웨어 레벨링 동작을 수행하는 데이터 저장 장치.
  16. 제13항에 있어서,
    상기 컨트롤러는, 상기 메모리 유닛들 중에서 순차적으로 선택된 메모리 유닛에 저장된 데이터를 이전에 갭으로 지정되었던 메모리 유닛에 저장하고, 상기 선택된 메모리 유닛을 새로운 갭으로 지정함으로써 상기 웨어 레벨링 동작을 수행하는 데이터 저장 장치.
KR1020160135191A 2016-10-18 2016-10-18 데이터 저장 장치 및 그것의 동작 방법 KR102630116B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160135191A KR102630116B1 (ko) 2016-10-18 2016-10-18 데이터 저장 장치 및 그것의 동작 방법
US15/456,741 US10156997B2 (en) 2016-10-18 2017-03-13 Data storage device and operating method to perform wear leveling based on elapsed time and write count
CN201710312644.8A CN107958690B (zh) 2016-10-18 2017-05-05 数据存储装置及其操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160135191A KR102630116B1 (ko) 2016-10-18 2016-10-18 데이터 저장 장치 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
KR20180042699A true KR20180042699A (ko) 2018-04-26
KR102630116B1 KR102630116B1 (ko) 2024-01-29

Family

ID=61903848

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160135191A KR102630116B1 (ko) 2016-10-18 2016-10-18 데이터 저장 장치 및 그것의 동작 방법

Country Status (3)

Country Link
US (1) US10156997B2 (ko)
KR (1) KR102630116B1 (ko)
CN (1) CN107958690B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108920386B (zh) 2018-07-20 2020-06-26 中兴通讯股份有限公司 面向非易失性内存的磨损均衡及访问方法、设备和存储介质
US10761739B2 (en) 2018-08-23 2020-09-01 Micron Technology, Inc. Multi-level wear leveling for non-volatile memory
US11537307B2 (en) * 2018-08-23 2022-12-27 Micron Technology, Inc. Hybrid wear leveling for in-place data replacement media
US11074004B2 (en) * 2019-01-15 2021-07-27 Intel Corporation Tenant-based telemetry for persistent storage media

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100017650A1 (en) * 2008-07-19 2010-01-21 Nanostar Corporation, U.S.A Non-volatile memory data storage system with reliability management
KR20100138896A (ko) * 2008-02-29 2010-12-31 마벨 월드 트레이드 리미티드 하이브리드 비휘발성 고체 상태 메모리 시스템에 대한 피로 관리 시스템 및 방법
KR20110086725A (ko) * 2008-11-10 2011-07-29 퓨전-아이오, 인크. 솔리드-스테이트 저장장치의 고장을 예측하는 장치, 시스템 및 방법
KR20140075438A (ko) * 2012-12-11 2014-06-19 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치 및 그 구동 방법
US20150154111A1 (en) * 2013-12-04 2015-06-04 Sandisk Technologies Inc. Apparatus and method of offloading processing from a data storage device to a host device
KR20160044989A (ko) * 2014-10-15 2016-04-26 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 데이터 저장 장치 및 그것의 동작 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881669B1 (ko) * 2006-12-18 2009-02-06 삼성전자주식회사 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치
US8873323B2 (en) * 2012-08-16 2014-10-28 Transcend Information, Inc. Method of executing wear leveling in a flash memory device according to ambient temperature information and related flash memory device
US9047938B2 (en) * 2013-02-25 2015-06-02 International Business Machines Corporation Phase change memory management
KR102178832B1 (ko) 2014-07-22 2020-11-13 삼성전자 주식회사 저항성 메모리 장치 및 저항성 메모리 장치의 동작 방법
CN105468291B (zh) * 2014-08-21 2019-09-20 腾讯科技(深圳)有限公司 动态及静态磨损均衡控制方法及装置
US9798657B2 (en) * 2014-10-15 2017-10-24 Samsung Electronics Co., Ltd. Data storage device including nonvolatile memory device and operating method thereof
CN104407982B (zh) * 2014-11-19 2018-09-21 湖南国科微电子股份有限公司 一种ssd盘片垃圾回收方法
US10082964B2 (en) * 2016-04-27 2018-09-25 Micron Technology, Inc Data caching for ferroelectric memory

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100138896A (ko) * 2008-02-29 2010-12-31 마벨 월드 트레이드 리미티드 하이브리드 비휘발성 고체 상태 메모리 시스템에 대한 피로 관리 시스템 및 방법
US20100017650A1 (en) * 2008-07-19 2010-01-21 Nanostar Corporation, U.S.A Non-volatile memory data storage system with reliability management
KR20110086725A (ko) * 2008-11-10 2011-07-29 퓨전-아이오, 인크. 솔리드-스테이트 저장장치의 고장을 예측하는 장치, 시스템 및 방법
KR20140075438A (ko) * 2012-12-11 2014-06-19 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치 및 그 구동 방법
US20150154111A1 (en) * 2013-12-04 2015-06-04 Sandisk Technologies Inc. Apparatus and method of offloading processing from a data storage device to a host device
KR20160044989A (ko) * 2014-10-15 2016-04-26 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 데이터 저장 장치 및 그것의 동작 방법

Also Published As

Publication number Publication date
KR102630116B1 (ko) 2024-01-29
US20180107386A1 (en) 2018-04-19
US10156997B2 (en) 2018-12-18
CN107958690B (zh) 2021-05-25
CN107958690A (zh) 2018-04-24

Similar Documents

Publication Publication Date Title
US10600491B2 (en) Method for managing data blocks and method of data management for data storage device
KR102174293B1 (ko) 확률론적 데이터 구조에 기초한 메모리 내의 사전적인 교정 조치
TWI632457B (zh) 用於資料儲存裝置的損耗平均方法
US9298534B2 (en) Memory system and constructing method of logical block
US10445005B2 (en) Memory system and operating method thereof
US10126970B2 (en) Paired metablocks in non-volatile storage device
KR102188628B1 (ko) 수명 종료 상태에 도달할 경우, 솔리드 스테이트 메모리로의 기록들을 제한하기 위한 방법 및 장치
KR102630116B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
TW201611018A (zh) 非揮發性記憶體裝置進行耗損管理之方法
TWI727458B (zh) 記憶體裝置及用於控制記憶體裝置之方法
CN110998543A (zh) 磨损平整
KR20180014975A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20210051873A (ko) 컨트롤러 및 메모리 시스템
KR20180126921A (ko) 데이터 저장 장치 및 그것의 동작 방법
JP6730604B2 (ja) 制御回路、半導体記憶装置、及び半導体記憶装置の制御方法
KR102504763B1 (ko) 데이터 저장 장치
JP7042930B2 (ja) センチネルセルに基づくデータ整合性の判断
KR102634813B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20170045406A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20220070989A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20160129418A (ko) 데이터 저장 장치 및 그것의 동작 방법
US11288007B2 (en) Virtual physical erase of a memory of a data storage device
KR20170052172A (ko) 데이터 저장 장치 및 그것의 동작 방법
TW202236291A (zh) 用於改良記憶體之錯誤更正碼操作之方法及系統
KR20210039163A (ko) 메모리 시스템 및 그것의 동작방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant