KR20100110651A - Memory apparatus and program method for the memory apparatus and memory system - Google Patents
Memory apparatus and program method for the memory apparatus and memory system Download PDFInfo
- Publication number
- KR20100110651A KR20100110651A KR1020090029091A KR20090029091A KR20100110651A KR 20100110651 A KR20100110651 A KR 20100110651A KR 1020090029091 A KR1020090029091 A KR 1020090029091A KR 20090029091 A KR20090029091 A KR 20090029091A KR 20100110651 A KR20100110651 A KR 20100110651A
- Authority
- KR
- South Korea
- Prior art keywords
- memory device
- program
- information
- memory
- write data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
본 발명의 실시 예는 메모리 장치에 관한 것으로, 보다 상세하게는 사용자가 메모리 장치에 기입할 데이터의 프로그램 방법을 선택할 수 있는 메모리 장치 및 그 방법에 관한 것이다.An embodiment of the present invention relates to a memory device, and more particularly, to a memory device and a method for allowing a user to select a method of programming data to be written to the memory device.
메모리 장치 중 MLC(Multi Level Cell)을 포함하는 메모리 장치(예컨대, SSD(Solid State Disk)가 공지되어 있다. MLC에 정보를 저장하는 메모리 장치의 경우 디자인 룰(rule)의 감소와 비트 수의 증가 등으로 데이터의 신뢰성(reliabiltiy) 측면에서 많은 문제가 노출되고 있다. 이에 따라 MLC 메모리 ㅈ자장치를 위한 ECC(Error correction code) 뿐만 아니라 전용 알고리즘이 비트 레벨에서 개발되고 있다. Among memory devices, a memory device including a multi-level cell (MLC), for example, a solid state disk (SSD), is known.In the case of a memory device that stores information in the MLC, the number of bits and the number of bits decrease. Many problems are exposed in terms of reliability of data, etc. As a result, dedicated algorithms as well as error correction codes (ECC) for MLC memory devices are being developed at the bit level.
이를 위한 종래의 방법으로 SLC(Single level Cell)과 MLC를 모두 포함하는 메모리 장치에서, 시스템이 데이터의 특성을 파악하고 중요 데이터는 SLC에 저장하고, 그렇지 않은 데이터는 MLC에 저장하는 방법이 있다.As a conventional method for this purpose, in a memory device including both a single level cell (SLC) and an MLC, a system determines a characteristic of data, stores important data in an SLC, and stores data in an MLC that is not.
하지만 종래의 방법은 메모리 시스템의 입장에서 중요 데이터와 그렇지 않은 데이터를 구분하고, 효율적으로 관리할 수는 있지만 메모리 시스템을 사용하는 사용자가 직접 자신의 데이터의 신뢰성을 관리할 수 없다. 또한, 애플리케이션 또는 파일 시스템에서 소정의 알고리즘으로 데이터의 특성을 파악하여 SLC에 프로그램을 할지 MLC에 프로그램을 할지 판단하므로, 데이터의 기입(프로그램)으로 인한 저장 용량의 감소를 사용자가 납득하기 어렵다. 예를 들어, 1MB의 데이터를 사용자가 저장하였는데 어떨 때(즉, SLC에 프로그램되는 경우)는 저장용량이 4MB이 감소하고, 어떨 때(즉, 4bit MLC에 프로그램되는 경우)는 1MB이 감소하면 사용자는 이를 이해하고 예측하기 어렵다. 또한 파일의 특성에 따른 데이터의 분류 역시 사용자에 따라서 다를 수 있다. 보통의 동영상 데이터의 경우 조금 손상되어도 플레이에 영향이 적으므로 신뢰성(Reliability Level)이 낮은 영역에 저장되어도 괜찮으나 사용자에 따라서 어떤 동영상 데이터는 절대로 깨어지지 않기를 바랄 수도 있다. 따라서, 메모리 시스템 또는 호스트에서 일률적으로 데이터의 특성을 분류하여 SLC 또는 MLC에 저장하는 것이 사용자가 원하는 결과와 다를 수 있다. However, in the conventional method, important data and data that are not can be distinguished and efficiently managed from the viewpoint of the memory system, but the user using the memory system cannot directly manage the reliability of his data. In addition, the application or file system determines whether to program the SLC or the MLC by identifying the characteristics of the data using a predetermined algorithm, so that it is difficult for the user to understand the reduction in storage capacity due to the writing (program) of the data. For example, if a user has stored 1MB of data (ie when programmed into an SLC), the storage capacity is reduced by 4MB, and sometimes (ie when programmed to a 4-bit MLC), when the user decreases 1MB. Is difficult to understand and predict. In addition, the classification of data according to the characteristics of the file may also vary according to users. In the case of normal video data, even if it is slightly damaged, the play is less affected. Therefore, the video data may be stored in an area of low reliability level. However, some video data may be hoped that it will never be broken. Therefore, classifying the characteristics of data uniformly in the memory system or the host and storing the data in the SLC or the MLC may be different from the result desired by the user.
따라서, 사용자가 데이터를 저장하고자 하는 경우, 자신이 원하는 프로그램 방법을 선택할 수 있고, 이에 따라 사용자의 입장에서 신뢰성 레벨을 선택하여 효율적으로 메모리 장치를 사용할 수 있는 방법 및 그 장치가 절실히 요구된다.Therefore, when a user wants to store data, a user can select a desired program method. Accordingly, a method and a device that can efficiently use a memory device by selecting a reliability level from the user's point of view are urgently required.
따라서 본 발명이 이루고자 하는 기술적인 과제는 사용자가 데이터를 저장할때 스스로 프로그램 방법을 선택할 수 있도록 하여, 사용자의 주관적인 데이터 분류에 따른 신뢰성 레벨을 선택할 수 있도록 하는 메모리 장치 및 그 방법을 제공하는 것이다.Accordingly, a technical problem of the present invention is to provide a memory device and a method for allowing a user to select a program method by himself / herself when storing data, thereby selecting a reliability level according to the subjective data classification of the user.
특히, 호스트에서 메모리 장치로 출력되는 라이트(write) 커맨드(command)에 사용자가 선택한 프로그램 방법을 포함시킬 수 있도록 함으로써, 프로그램 방법을 선택하기 위한 별도의 프로세스 또는 리소스를 추가적으로 사용하지 않고도 사용자가 원하는 프로그램 방법을 선택할 수 있는 방법 및 장치를 제공하는 것이다.In particular, by allowing a user to include a program method selected by a user in a write command outputted from the host to a memory device, the program desired by the user without additional process or resource for selecting a program method. It is to provide a method and apparatus for selecting a method.
또한, 사용자가 선택한 프로그램 방법으로 데이터를 프로그램 할 수 없는 경우, 다른 프로그램 방법으로 효율적으로 프로그램 할 수 있도록 하는 방법 및 장치를 제공하는 것이다.Another object of the present invention is to provide a method and an apparatus for efficiently programming data in another program method when data cannot be programmed by a program method selected by a user.
상기 기술적 과제를 해결하기 위한 메모리 장치의 프로그램 방법은 메모리 장치가 호스트로부터 사용자에 의해 선택된 상기 메모리 장치에 저장될 기입 데이터의 프로그램 방법에 대한 정보를 포함하는 프로그램 정보를 수신하는 단계 및 상기 메모리 장치가 수신된 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램 하는 단계를 포함한다.The program method of the memory device for solving the technical problem is a step of receiving a program information including information on the programming method of the write data to be stored in the memory device selected by the user from the host and the memory device Programming the write data to correspond to the received program information.
상기 기입 데이터의 프로그램 정보는 상기 호스트가 상기 메모리 장치로 전 송하는 상기 기입 데이터에 상응하는 라이트(write) 커맨드에 포함될 수 있다.The program information of the write data may be included in a write command corresponding to the write data transmitted from the host to the memory device.
상기 기입 데이터의 프로그램 정보를 수신하는 단계는 상기 프로그램 정보가 상기 메모리 장치에 구비된 호스트 인터페이스의 어느 하나의 레지스터에 저장될 수 있다. 상기 어느 하나의 레지스터는 피쳐 레지스터(Feature register)인 것을 특징으로 할 수 있다.Receiving the program information of the write data may be stored in any one register of the host interface provided in the memory device. One of the registers may be a feature register.
상기 프로그램 정보는 상기 기입 데이터가 프로그램될 비트 레벨에 대한 정보를 포함할 수 있다.The program information may include information about a bit level at which the write data is to be programmed.
상기 메모리 장치의 프로그램 방법은 상기 메모리 장치가 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램할 수 없는 경우, 에러 정보를 기록하고 호스트로부터 다시 제2프로그램 정보를 수신하는 단계를 더 포함하며, 상기 메모리 장치는 상기 제2프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램 할 수 있다.The program method of the memory device may further include recording error information and receiving second program information from a host when the memory device cannot program the write data to correspond to the program information. The device may program the write data to correspond to the second program information.
상기 메모리 장치의 프로그램 방법은 상기 메모리 장치가 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램할 수 없는 경우, 상기 프로그램 정보의 최근접 유사성을 갖는 프로그램 방법으로 상기 기입데이터를 프로그램하는 단계를 더 포함할 수 있다. The program method of the memory device may further include programming the write data with a program method having a closest similarity of the program information if the memory device cannot program the write data to correspond to the program information. Can be.
상기 메모리 장치는 SSD(Solid State Disk) 일 수 있다.The memory device may be a solid state disk (SSD).
상기 프로그램 정보는 상기 메모리 장치에 포함되는 메모리의 종류에 대한 정보를 더 포함하며, 상기 메모리 장치는 상기 프로그램 정보에 포함된 상기 메모리 종류에 대한 정보에 상응하는 메모리에 상기 프로그램 방법에 상응하도록 상기 기입 데이터를 프로그램할 수 있다.The program information further includes information about a type of a memory included in the memory device, wherein the memory device writes the memory corresponding to the information about the memory type included in the program information so as to correspond to the program method. You can program the data.
상기 메모리 종류는 상기 메모리 장치에 포함되는 SRAM, DRAM, 또는 플래시 메모리 중 적어도 하나를 포함할 수 있다.The memory type may include at least one of an SRAM, a DRAM, or a flash memory included in the memory device.
상기 기술적 과제를 달성하기 위한 메모리 장치의 프로그램 방법은 사용자에 의해 선택된 메모리 장치에 저장될 기입 데이터의 프로그램 방법 정보가 호스트로부터 상기 메모리 장치에 전송되는 라이트 커맨드에 포함되어 전송되어 상기 메모리 장치의 호스트 인터페이스에 포함된 피쳐 레지스터에 기록되는 단계 및 기록된 상기 프로그램 방법 정보에 상응하도록 상기 메모리 장치가 상기 기입 데이터를 프로그램하는 단계를 포함한다.The program method of the memory device for achieving the technical problem is a program interface information of the write data to be stored in the memory device selected by the user is included in the write command to be transmitted from the host to the memory device is transmitted to the host interface of the memory device And writing the write data to the feature register included in the memory device and corresponding to the recorded program method information.
상기 기술적 과제를 달성하기 위한 메모리 장치의 프로그램 방법은 상기 메모리 장치가 호스트 인터페이스의 어느 한 레지스터에 저장된 프로그램 정보를 확인하는 단계, 및 확인된 상기 프로그램 정보에 상응하도록 기입 데이터를 프로그램 하는 단계를 포함할 수 있다. 상기 프로그램 정보는 사용자로부터 선택되어 호스트로부터 전송된 정보인 것을 특징으로 할 수 있다.The program method of the memory device for achieving the technical problem includes the step of the program checks the program information stored in any one register of the host interface, and programming the write data to correspond to the identified program information Can be. The program information may be information selected from a user and transmitted from a host.
상기 기술적 과제를 달성하기 위한 메모리 장치는 싱글레벨 셀 또는 멀티레벨 셀로 프로그램 가능한 비휘발성 메모리 셀, 호스트로부터 사용자에 의해 선택된 상기 메모리 장치에 저장될 기입 데이터의 프로그램 방법에 대한 정보를 포함하는 프로그램 정보를 수신하기 위한 호스트 인터페이스, 및 상기 호스트 인터페이스로 수신된 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 상기 비휘발성 메모리 셀에 프로그램하기 위한 컨트롤러를 포함한다. 상기 프로그램 정보는 상기 호스 트가 상기 메모리 장치로 전송하는 상기 기입 데이터에 상응하는 라이트(write) 커맨드에 포함될 수 있으며, 상기 프로그램 정보는 상기 메모리 장치에 구비된 호스트 인터페이스의 어느 하나의 레지스터에 저장될 수 있다. 상기 어느 하나의 레지스터는 피쳐 레지스터(Feature register)일 수 있다.The memory device for achieving the technical problem is a non-volatile memory cell programmable into a single-level cell or a multi-level cell, program information including information on a method of programming write data to be stored in the memory device selected by a user from a host. A host interface for receiving, and a controller for programming the write data into the nonvolatile memory cell corresponding to the program information received at the host interface. The program information may be included in a write command corresponding to the write data transmitted by the host to the memory device, and the program information may be stored in any one register of a host interface included in the memory device. Can be. One of the registers may be a feature register.
상기 메모리 장치는 적어도 하나의 휘발성 메모리를 더 포함하며, 상기 프로그램 정보는, 상기 적어도 하나의 휘발성 메모리 또는 상기 비휘발성 메모리 셀 중 어느 하나를 선택하기 위한 메모리 선택정보를 더 포함하며, 상기 컨트롤러는 상기 프로그램 정보에 포함된 상기 메모리 선택 정보에 상응하는 메모리에 상기 프로그램 방법에 상응하도록 상기 기입 데이터를 프로그램할 수 있다.The memory device further includes at least one volatile memory, and the program information further includes memory selection information for selecting one of the at least one volatile memory or the nonvolatile memory cell, and the controller further comprises: The write data may be programmed to correspond to the program method in a memory corresponding to the memory selection information included in program information.
상기 컨트롤러는 상기 비휘발성 메모리 셀에 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램할 수 없는 경우 에러 정보를 기록하고, 상기 호스트 인터페이스를 통해 다시 수신된 제2프로그램 정보에 상응하도록 상기 기입 데이터를 프로그램 하거나, 상기 프로그램 정보의 최근접 유사성을 갖는 프로그램 방법으로 상기 기입 데이터를 프로그램할 수 있다.The controller writes error information when the write data cannot be programmed to correspond to the program information in the nonvolatile memory cell, and programs the write data to correspond to the second program information received through the host interface again. Alternatively, the write data may be programmed by a program method having a closest similarity of the program information.
상기 기술적 과제를 달성하기 위한 메모리 시스템은 싱글레벨 셀 또는 멀티레벨 셀로 프로그램 가능한 비휘발성 메모리 셀을 포함하는 메모리 장치 및 사용자로부터 상기 메모리 장치에 저장될 기입 데이터의 프로그램 방법에 대한 정보를 포함하는 프로그램 정보를 수신하여 상기 메모리 장치로 출력하는 호스트를 포함하며, 상기 메모리 장치는 상기 프로그램 정보에 상응하도록 상기 기입 데이터를 상기 비휘발성 메모리 셀에 프로그램할 수 있다. 상기 메모리 시스템은 PMP(portable multimedia player), PDA(personal digital assistants), UMPC(Ultra Mobile PC), 게임기, 디지털 카메라, 또는 모바일 폰 중 적어도 하나를 포함할 수 있다.The memory system for achieving the technical problem is a memory device including a non-volatile memory cell programmable to a single-level cell or a multi-level cell and program information including information on a method of programming write data to be stored in the memory device from a user And a host configured to receive and output the received data to the memory device, wherein the memory device may program the write data in the nonvolatile memory cell to correspond to the program information. The memory system may include at least one of a portable multimedia player (PMP), personal digital assistants (PDAs), ultra mobile PCs (UMPCs), game machines, digital cameras, or mobile phones.
본 발명의 실시 예에 따른 방법 및 장치에 의하면 사용자가 데이터를 저장할때 스스로 프로그램 방법을 선택할 수 있으므로 사용자가 주관적으로 중요한 데이터라고 생각하는 데이터는 신뢰성이 높은 프로그램 방법으로 저장할 수 있으며, 그렇지 않은 경우에는 다소 신뢰성이 낮은 프로그램 방법으로 데이터를 저장할 수 있도록 하여 사용자가 원하는 대로 메모리 장치를 사용할 수 있는 효과가 있다. 또한, 사용자가 메모리 장치의 리소소를 관리하는 데에 있어서도 예측가능성을 보장할 수 있는 효과가 있다.According to the method and the apparatus according to the embodiment of the present invention, when the user stores the data, the user can select the program method by himself, so that the data that the user thinks as subjective data can be stored by the highly reliable program method. By allowing data to be stored in a somewhat less reliable program method, the user can use the memory device as desired. In addition, there is an effect that can ensure the predictability in the user manages the resources of the memory device.
또한, 본 발명의 일 실시 예에 의하면, 호스트에서 메모리 장치로 출력되는 라이트(write) 커맨드(command)에 사용자가 선택한 프로그램 방법을 포함시킬 수 있도록 함으로써, 프로그램 방법을 선택하기 위한 별도의 프로세스 또는 리소스를 추가적으로 사용하지 않고도 사용자가 원하는 프로그램 방법을 선택할 수 있는 효과가 있다.In addition, according to an embodiment of the present invention, a separate process or resource for selecting a program method may be included by allowing a user to include a program method selected by a user in a write command output from the host to a memory device. There is an effect that the user can select the desired program method without additional use.
또한, 사용자가 선택한 프로그램 방법으로 데이터를 프로그램할 수 없는 경우, 다른 프로그램 방법으로 효율적으로 프로그램할 수 있도록 하여 사용자가 예기치 못한 상황에서도 효율적으로 데이터를 저장할 수 있는 효과가 있다.In addition, when the data cannot be programmed by the program method selected by the user, the program can be efficiently programmed by another program method, so that the user can efficiently store the data even in an unexpected situation.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다. In order to fully understand the present invention, the operational advantages of the present invention, and the objects achieved by the practice of the present invention, reference should be made to the accompanying drawings which illustrate preferred embodiments of the present invention and the contents described in the accompanying drawings.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다. Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.
도 1은 본 발명의 실시 예에 따른 메모리 시스템의 개략적인 기능 블록도를 나타낸다.1 is a schematic functional block diagram of a memory system according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 메모리 시스템은 호스트(100) 및 메모리 장치(200)를 포함한다. 상기 호스트(100)는 본 발명의 기술적 사상에 따라 사용자(100)로부터 상기 메모리 장치(200)에 저장될 데이터 즉, 기입 데이터의 프로그램 방법에 대한 정보 포함하는 프로그램 정보를 수신할 수 있다. 상기 프로그램 방법에 대한 정보는 상기 메모리 장치(200)에 저장될 비트 레벨에 대한 정보를 의미할 수 있다. 즉, 상기 프로그램 방법에 대한 정보는 싱글레벨 셀로 프로그 램될지 멀티 레벨 셀로 프로그램될지 여부에 대한 정보를 포함할 수 있다. 또한, 멀티 레벨 셀로 프로그램될 경우 몇 비트(예컨대, 2bit, 3bit, 4bit 등) 멀티 레벨 셀로 프로그램될지 여부에 대한 정보를 포함할 수 있다. 결국, 상기 프로그램 정보는 사용자가 기입 데이터를 저장할 신뢰성 레벨(reliability level)에 대한 정보를 포함할 수 있다. 상기 사용자(100)는 소정의 사용자 애플리케이션(user application)에 대응될 수 있다. 그러면, 상기 사용자(100)에 의해 입력된 프로그램 정보는 OS(Operating system, 120), 파일 시스템(130), 및 호스트 드라이버(140)를 통하여 상기 메모리 장치(200)로 출력될 수 있다. 즉, 사용자(110)는 소정의 UI(User Interface)를 통하여 OS(120)에 프로그램 방법에 대한 정보를 전달할 수 있으며, 상기 OS(120)는 시스템 인터페이스(System Interface)를 통하여 파일 시스템(130)에 상기 프로그램 방법에 대한 정보를 전달할 수 있다. 그러면, 상기 프로그램 방법에 대한 정보는 호스트 드라이버(140)를 통하여 상기 메모리 장치(200)로 출력될 수 있다. Referring to FIG. 1, a memory system according to an embodiment of the present invention includes a
상기 메모리 장치(200)는 상기 호스트(100)로부터 출력되는 기입 데이터 및/또는 각종 커맨드(command)가 수신되는 호스트 인터페이스(210), 상기 호스트 인터페이스(210)로를 통해 수신된 정보에 따라 상기 메모리 장치(200)를 제어하기 위한 컨트롤러(220), 및 상기 기입 데이터가 저장되는 비휘발성 메모리(230)를 포함한다. 상기 호스트 인터페이스(210)에는 적어도 하나의 레지스터(10)가 구비될 수 있다. 상기 비휘발성 메모리(230)는 낸드 플래시(NAND FLASH) 메모리 일 수 있다. 본 발명의 실시 예에 따른 상기 비휘발성 메모리(230)는 싱글레벨 셀 또는 멀 티레벨 셀로 선택적으로 프로그램될 수 있는 메모리 일 수 있다. 상기 메모리 장치(200)는 상기 비휘발성 메모리(230)에 상기 기입 데이터를 프로그램하기 위한 FTL(Flash Tlanslation Layer, 미도시)를 더 포함할 수 있음은 물론이다. 또한, 상기 메모리 장치(200)는 적어도 하나의 휘발성 메모리(240, 250)를 포함할 수 있다. 상기 적어도 하나의 휘발성 메모리(240, 250)는 DRAM 및/또는 SRAM을 포함할 수 있다. 상기 메모리 장치(200)는 SSD(Solid State Disk) 장치로 구현될 수 있다.The
상기 컨트롤러(220)는 상기 호스트(100)로부터 출력된 프로그램 정보에 상응하도록 상기 기입 데이터를 상기 비휘발성 메모리(230)에 프로그램하도록 제어할 수 있다. 상기 프로그램 정보는 다양한 방법으로 상기 메모리 장치(200)로 출력될 수 있다. 특히, 상기 프로그램 정보는 상기 호스트(100)로부터 상기 메모리 장치(200)로 출력되는 라이트 커맨드(write command)에 포함되어 출력될 수 있다.The
특히, 본 발명의 실시 예에 의하면 ATA(Advanced Technology Attachment) 인터페이스에 정의된 프로토콜을 이용하여 상기 프로그램 정보를 상기 메모리 장치(200)로 출력할 수 있는 기술적 사상을 제공한다.In particular, according to an embodiment of the present invention provides a technical idea that can output the program information to the
도 2는 본 발명의 실시 예에 따른 메모리 장치의 호스트 인터페이스에 포함되는 적어도 하나의 레지스터를 나타낸다.2 illustrates at least one register included in a host interface of a memory device according to an embodiment of the present invention.
도 2에 도시된 적어도 하나의 레지스터(10)는 ATA 인터페이스에 정의된 레지스터 셋(set)을 나타내며, 본 발명의 실시 예에 따른 메모리 장치(200)도 상기 ATA 인터페이스에 정의된 레지스터 셋을 사용할 수 있다. 도 2를 참조하면, ATA 인터페이스에 정의된 레지스터 셋에는 도 2에 도시된 바와 같이 피쳐 레지스터(Features Register, 1), 섹터 카운트(Sector Count Register), 논리적 어드레스를 위한 레지스터들(LBA Low, Mid, High), 디바이스 레지스터(Device Register), 및 커맨드 레지스터(Command Register)가 포함될 수 있다. 상기 레지스터들 중 상기 호스트(100)가 상기 메모리 장치(200)로 라이트 커맨드를 출력하는 경우에 상기 피쳐 레지스터(1)는 사용되지 않는다. 따라서, 본 발명의 실시 예에 따른 메모리 시스템에서는 상기 호스트(100)가 상기 메모리 장치(200)로 라이트 커맨드를 출력하는 경우, 상기 피쳐 레지스터(1)를 상기 프로그램 정보를 저장하기 위한 레지스터로 사용할 수 있다. 따라서, 상기 호스트 드라이버(140)는 상기 프로그램 정보를 상기 피쳐 레지스터(1)에 라이트 할 수 있으며, 다른 레지스터들 각각에는 일반적으로 라이트 커맨드를 처리하는 경우처럼 상기 기입 데이터가 저장될 논리적 어드레스(logical address) 및 라이트 커맨드 등을 라이트 할 수 있다. At least one
이처럼 본 발명의 실시 예에 따른 메모리 시스템에서는 라이트 커맨드 처리시에 사용하지 않는 레지스터를 이용하여 상기 프로그램 정보를 전송할 수 있으므로, 라이트 커맨드 이외의 별도의 프로세스나 상기 프로그램 정보를 저장할 별도의 리소스를 사용하지 않는 효과가 있다.As described above, in the memory system according to the embodiment of the present invention, the program information may be transmitted by using a register not used in the write command processing. Therefore, a separate process or a separate resource for storing the program information is not used. Does not work.
한편, 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에 의하면, 사용자는 기입 데이터를 저장할 메모리로 상기 비휘발성 메모리(230) 뿐만 아니라, 적어도 하나의 휘발성 메모리(240, 250) 중 어느 하나를 선택할 수도 있다. 즉, 상기 프로그램 정보에는 상기 기입 데이터가 프로그램될 방법에 대한 정보(즉, 비트레벨에 대한 정보) 뿐만 아니라, 상기 기입 데이터가 저장될 메모리의 종류에 대한 정보도 포함될 수 있다. 물론, 상기 기입 데이터를 저장할 메모리로 휘발성 메모리를 사용하는 경우에는 상기 프로그램 정보에는 기입 데이터가 프로그램될 방법에 대한 정보(즉, 비트 레벨에 대한 정보)는 포함되지 않을 수 있다. 상기 적어도 하나의 휘발성 메모리(240, 250)에 저장되는 경우에는 상기 기입 데이터는 임시로 저장될 데이터(예컨대, 스왑핑(swapping) 데이터 등)일 수 있다. According to a program method of a memory device according to an exemplary embodiment of the present disclosure, a user may select not only the
도 3은 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에 따른 프로그램 정보의 일 예를 나타낸다.3 illustrates an example of program information according to a program method of a memory device according to an exemplary embodiment of the inventive concept.
도 3을 참조하면, 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에서는 상기 프로그램 정보에 대응되는 특정 값이 미리 정해져 있을 수 있다. 예컨대, 도 3에 도시된 바와 같이, 피쳐 레지스터에 저장된 값이 "00000000"인 경우는 상기 기입 데이터가 상기 비휘발성 메모리(230)에 저장되며, 싱글레벨 셀로 프로그램되는 것을 의미할 수 있다. 또한, 피쳐 레지스터에 저장된 값이 "00000001"인 경우는 상기 기입 데이터가 상기 비휘발성 메모리(230)에 저장되며, 2bit 멀티레벨 셀로 프로그램되는 것을 의미할 수 있다. 또한, 피쳐 레지스터에 저장된 값이 "00000010"인 경우는 상기 기입 데이터가 상기 비휘발성 메모리(230)에 저장되며, 3bit 멀티레벨 셀로 프로그램되는 것을 의미할 수 있다. 또한, 피쳐 레지스터에 저장된 값이 "00000011"인 경우는 상기 기입 데이터가 상기 비휘발성 메모리(230)에 저장되며, 4bit 멀티레벨 셀로 프로그램되는 것을 의미할 수 있다. 또한, 피쳐 레지스터에 저장된 값이 "00000100"인 경우는 상기 기입 데이터가 상기 DRAM(240)에 저장되는 것을 의미할 수 있다. 또한, 피쳐 레지스터에 저장된 값이 "00000101"인 경우는 상기 기입 데이터가 상기 SRAM(250)에 저장되는 것을 의미할 수 있다. Referring to FIG. 3, in a program method of a memory device according to an embodiment of the present disclosure, a specific value corresponding to the program information may be predetermined. For example, as shown in FIG. 3, when the value stored in the feature register is “00000000”, it may mean that the write data is stored in the
물론, 상기 피쳐 레지스터에 저장되는 특정 값을 사용자(100)가 입력할 필요는 없다. 상기 OS(120), 상기 파일 시스템(130), 또는 상기 호스트 드라이버(140) 중 적어도 하나가 사용자가 선택한 프로그램 정보를 상기 특정 값으로 변환할 수 있기만 하면 족하다. 또한 도 3에 도시된 바와 같은 프로그램 정보 및 그에 대응되는 피쳐 레지스터의 특정 값은 상기 메모리 장치(200)의 소정의 저장장치에 미리 저장될 수 있다.Of course, the
한편, 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법은 사용자가 선택한 프로그램 방법대로 상기 기입 데이터를 프로그램을 할 수 없는 경우의 효과적인 대처방안을 제공한다. 예컨대, 상기 비휘발성 메모리(230)에 남은 저장용량이 부족하거나 상기 비휘발성 메모리(230)에 이미 저장된 데이터들의 프로그램 방법(즉, 어떠한 비트 레벨로 프로그램되었는지 여부)에 따라 사용자가 원하는 프로그램 방법대로 상기 기입 데이터가 프로그램될 수 없는 경우가 발생할 수 있다. 사용자는 미리 자신이 원하는 프로그램 방법대로 프로그램을 할 수 있는지를 모를 수 있으므로, 이때에는 사용자에게 다른 프로그램 방법을 선택하도록 하거나 메모리 시스템이 자체적으로 다른 프로그램 방법을 결정할 수도 있다. 이러한 기술적 사상은 도 4에 도시된다.On the other hand, the program method of the memory device according to an embodiment of the present invention provides an effective countermeasure when the write data can not be programmed according to the program method selected by the user. For example, the storage capacity remaining in the
도 4는 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에서 사용자가 원하는 프로그램 방법으로 프로그램을 할 수 없는 경우의 동작을 설명하기 위한 플로우 챠트이다.FIG. 4 is a flowchart illustrating an operation when a program cannot be programmed using a program method desired by a user in a program method of a memory device according to an embodiment of the present disclosure.
도 4를 참조하면, 상기 메모리 장치(200)의 컨트롤러(220) 사용자가 선택한 프로그램 정보를 확인할 수 있다(S100). 상기 프로그램 정보는 상술한 바와 같이 호스트 인터페이스(210)에 구비된 피쳐 레지스터(1)에 기록될 수도 있다. 하지만 본 발명의 권리범위가 이에 한정되지는 않으며, 상기 프로그램 정보를 저장할 수 있는 소정의 다른 저장장치에 상기 프로그램 정보가 저장될 수 있다. 그러면, 상기 컨트롤러(220)는 상기 프로그램 정보에 상응하도록 기입 데이터를 프로그램할 수 있는지 여부를 판단할 수 있다(S110). 전술한 여러 가지 이유로 상기 프로그램 정보에 상응하도록 기입 데이터를 프로그램할 수 없는 경우, 상기 컨트롤러(220)는 소정의 저장장치(예컨대, 상태 레지스터(Status Register))에 에러정보를 설정할 수 있다(S120). 또한, 에러의 종류에 대한 정보를 설정할 수 있는 소정의 저장장치(예컨대, 에러 레지스터(Error Register))에 에러에 대한 정보(즉, 사용자가 선택한 프로그램 정보에 상응하도록 프로그램을 할 수 없는 경우)를 나타내는 특정 값을 설정할 수 있다(S120). 상기 특정 값은 예컨대, 에러 레지스터의 특정 비트(예컨대, 7번째 비트)를 '1'로 설정한 값일 수 있다. 상기 특정 값은 다른 에러 종류를 나타내는 값과 구별될 수 있는 값이면 족하다. Referring to FIG. 4, program information selected by a user of the
그러면, 상기 호스트(100)는 상기 상태 레지스터와 에러 레지스터에 저장된 값을 확인하고, 상태 레지스터에 저장된 정보가 에러를 나타내는 정보이고, 상기 에러 레지스터에 저장된 정보가 본 발명의 실시 예에 따른 에러 즉, 사용자가 선택한 프로그램 정보에 상응하도록 프로그램을 할 수 없는 경우의 에러인 경우(S130), 소정의 UI를 디스플레이하여 사용자로부터 다시 새로운 프로그램 정보를 수신하도록 할 수 있다(S140). 물론, 상태 레지스터에 저장된 정보가 에러를 나타내고, 에러 레지스터에 저장된 정보가 본 발명의 실시 예에 따른 에러가 아닌 다른 에러인 경우, 상기 호스트는 그에 따른 에러처리를 수행할 수 있다(S180).Then, the
상기 호스트(100)가 새로운 프로그램 정보를 수신하면, 다시 메모리 장치(200)로 수신된 새로운 프로그램 정보를 전송할 수 있다(S150). 그러면 상기 메모리 장치(200)는 프로그램 정보를 확인하는 과정(S100) 부터 다시 프로세스를 진행할 수 있다. When the
한편, 본 발명의 실시 예에 따른 에러 즉, 사용자가 선택한 프로그램 정보에 상응하도록 프로그램을 할 수 없는 경우의 에러인 경우(S130), 상기 메모리 장치는 상기 프로그램 정보와 가장 유사한 프로그램 방법으로 프로그램을 수행할 수도 있다. 상기 프로그램 정보와 가장 유사한 프로그램 방법은 구현 예에 따라 다양하게 설정될 수 있으며, 특정 프로그램 정보와 가장 유사한 프로그램 정보는 미리 설정될 수 있다. 예컨대, 특정 프로그램 정보와 가장 유사한 프로그램 방법은 신뢰성 레벨(reliability)가 유사한 정도 또는 비트 레벨이 가장 유사한 프로그램 방법일 수 있다. 예컨대, 사용자가 SLC 프로그램 방법을 선택한 경우라면, 최근접 유사성을 갖는 프로그램 방법은 2bit MLC일 수 있다. 또한, 2bit MLC를 선택한 경우라면, 3bit MLC 또는 SLC가 최근접 유사성을 갖는 프로그램 방법일 수 있다. 예컨대, 4bit MLC를 선택한 경우라면, 3bit MLC가 최근접 유사성을 갖는 프로그램 방법일 수 있다. 구현 예에 따라 비휘발성 메모리(230)를 기입 데이터가 저장될 메모리로 선택한 경우, 휘발성 메모리(240, 250)에는 저장되지 않도록 설정하는 것이 바람직하다. 최근접 유사성을 갖는 프로그램 방법을 설정하는 다양한 구현 예가 가능함은 당해 기술분야의 평균적 전문가에게 용이하게 추론될 수 있다. 일 실시 예에 의하면, 상기 컨트롤러(220)는 사용자가 선택한 프로그램 정보에 상응하도록 프로그램을 할 수 없는 경우(S130), 도 3에 도시된 바와 같은 현재 프로그램 정보에 대응되는 피쳐 레지스터에 저장된 값(예컨대, "00000000")을 1만큼 증가시킨 값(예컨대, "00000001")에 대응되는 프로그램 정보(예컨대, 2bit MLC로 프로그램하기 위한 정보)를 새로운 프로그램 정보로 설정할 수 있다. 그러면, 새로운 프로그램 정보에 상응하는 방법으로 프로그램이 가능한 지를 판단하는 과정(S110)부터 프로세스를 다시 프로세스를 진행할 수 있다. On the other hand, when an error according to an embodiment of the present invention, that is, when the program cannot be made to correspond to the program information selected by the user (S130), the memory device performs the program in the program method most similar to the program information. You may. The program method most similar to the program information may be variously set according to an implementation example, and the program information most similar to the specific program information may be preset. For example, a program method most similar to specific program information may be a program method having a similar degree of reliability or a bit level most similar. For example, if the user selects the SLC program method, the program method with nearest similarity may be 2bit MLC. In addition, if 2bit MLC is selected, 3bit MLC or SLC may be a program method having nearest similarity. For example, if 4bit MLC is selected, 3bit MLC may be a programming method having nearest similarity. According to an embodiment, when the
본 발명의 실시 예에 따른 메모리 시스템은 상술한 상기 호스트(100) 및 상기 메모리 장치(200)를 포함하는 모든 데이터 프로세싱 장치를 포함하는 의미로 사용될 수 있다. 특히, 상기 메모리 시스템은 호스트 드라이버(140)의 수정이 용이한 PMP(portable multimedia player), PDA(personal digital assistants), UMPC(Ultra Mobile PC), 게임기, 디지털 카메라, 또는 모바일 폰 중 적어도 하나를 포함하는 여러 모바일 시스템에 적용될 수 있다. 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법을 구현하기 위해서는 호스트 드라이버(140)가 호스트 인터페이스(210)의 특정 레지스터에 정보를 기입할 수 있는 기능이 추가적으로 필요할 수 있다. 또한, 호스트(100)는 사용자로부터 프로그램 정보를 선택받기 위한 소정의 UI를 제공할 수 있는 기능이 추가적으로 필요할 수 있다.The memory system according to an exemplary embodiment of the inventive concept may be used to include all data processing devices including the
본 발명의 실시 예에 따르면, 사용자는 자신이 판단하기에 절대로 지워져서는 안 되거나 특별히 신뢰성이 필요하다고 판단되는 중요 데이터는 SLC로 저장하도록 설정할 수 있다. 또한, OS(120)는 자신이 사용하는 시스템 데이터는 SLC로 저장하도록 설정할 수 있다. 구현 예에 따라 영화/MP3 등은 신뢰성이 다소 낮을 수 있는 MLC(예컨대, 4bit MLC)로 저장하도록 설정할 수 있다. OS(120)의 디폴트(default) 저장방법의 설정 및 사용자의 설정에 따라 다양한 메모리 장치(200)의 운용이 가능하다.According to an embodiment of the present invention, the user may set to store the important data that is determined to be never erased or determined to be particularly reliable by the SLC. In addition, the
본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The program method of the memory device according to an exemplary embodiment of the inventive concept may be embodied as computer readable codes on a computer readable recording medium. Computer-readable recording media include all kinds of recording devices that store data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, optical data storage, and the like, and also in the form of carrier waves (e.g., transmission over the Internet). It also includes implementations. 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. And functional programs, codes and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다. Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다. BRIEF DESCRIPTION OF THE DRAWINGS In order to better understand the drawings cited in the detailed description of the invention, a brief description of each drawing is provided.
도 1은 본 발명의 실시 예에 따른 메모리 시스템의 개략적인 기능 블록도를 나타낸다.1 is a schematic functional block diagram of a memory system according to an embodiment of the present invention.
도 2는 본 발명의 실시 예에 따른 메모리 장치의 호스트 인터페이스에 포함되는 적어도 하나의 레지스터를 나타낸다.2 illustrates at least one register included in a host interface of a memory device according to an embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에 따른 프로그램 정보의 일 예를 나타낸다.3 illustrates an example of program information according to a program method of a memory device according to an exemplary embodiment of the inventive concept.
도 4는 본 발명의 실시 예에 따른 메모리 장치의 프로그램 방법에서 사용자가 원하는 프로그램 방법으로 프로그램을 할 수 없는 경우의 동작을 설명하기 위한 플로우 챠트이다.FIG. 4 is a flowchart illustrating an operation when a program cannot be programmed using a program method desired by a user in a program method of a memory device according to an embodiment of the present disclosure.
Claims (22)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090029091A KR101599928B1 (en) | 2009-04-03 | 2009-04-03 | Memory apparatus and program method for the memory apparatus and memory system |
US12/657,029 US8429358B2 (en) | 2007-08-14 | 2010-01-11 | Method and data storage device for processing commands |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090029091A KR101599928B1 (en) | 2009-04-03 | 2009-04-03 | Memory apparatus and program method for the memory apparatus and memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100110651A true KR20100110651A (en) | 2010-10-13 |
KR101599928B1 KR101599928B1 (en) | 2016-03-04 |
Family
ID=43131221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090029091A KR101599928B1 (en) | 2007-08-14 | 2009-04-03 | Memory apparatus and program method for the memory apparatus and memory system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101599928B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013011190A1 (en) * | 2011-07-18 | 2013-01-24 | Nokia Corporation | User selectable balance between density and reliability |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7080172B1 (en) * | 2003-05-27 | 2006-07-18 | Marvell Luternational Ltd. | Management of memory, hardware and associated device drivers using stacks |
KR20070014470A (en) * | 2005-07-28 | 2007-02-01 | 삼성전자주식회사 | Flash memory device capable of multi-bit data and single-bit data |
KR20080067509A (en) * | 2007-01-16 | 2008-07-21 | 삼성전자주식회사 | Memory system determining program method according to data information |
US20080301342A1 (en) * | 2007-06-01 | 2008-12-04 | Richard Gerard Hofmann | Device Directed Memory Barriers |
-
2009
- 2009-04-03 KR KR1020090029091A patent/KR101599928B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7080172B1 (en) * | 2003-05-27 | 2006-07-18 | Marvell Luternational Ltd. | Management of memory, hardware and associated device drivers using stacks |
KR20070014470A (en) * | 2005-07-28 | 2007-02-01 | 삼성전자주식회사 | Flash memory device capable of multi-bit data and single-bit data |
KR20080067509A (en) * | 2007-01-16 | 2008-07-21 | 삼성전자주식회사 | Memory system determining program method according to data information |
US20080301342A1 (en) * | 2007-06-01 | 2008-12-04 | Richard Gerard Hofmann | Device Directed Memory Barriers |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013011190A1 (en) * | 2011-07-18 | 2013-01-24 | Nokia Corporation | User selectable balance between density and reliability |
US8671240B2 (en) | 2011-07-18 | 2014-03-11 | Memory Technologies Llc | User selectable balance between density and reliability |
US9117531B2 (en) | 2011-07-18 | 2015-08-25 | Memory Technologies Llc | User selectable balance between density and reliability |
Also Published As
Publication number | Publication date |
---|---|
KR101599928B1 (en) | 2016-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9804801B2 (en) | Hybrid memory device for storing write data based on attribution of data stored therein | |
CN105097028B (en) | Memory device including nonvolatile memory device and method of reading the same | |
KR100878479B1 (en) | Memory system determining program method according to data information | |
US8745309B2 (en) | Cooperative memory management | |
KR102381218B1 (en) | Data storage device and operating method thereof | |
KR101989018B1 (en) | Operating method for data storage device | |
US20080195833A1 (en) | Systems, methods and computer program products for operating a data processing system in which a file system's unit of memory allocation is coordinated with a storage system's read/write operation unit | |
TWI496275B (en) | Memory system, program method thereof, and computing system including the same | |
KR20170120741A (en) | Data storage device and operating method thereof | |
US20080172520A1 (en) | Nonvolatile memory devices including multiple user-selectable program modes and related methods of operation | |
KR101368694B1 (en) | Apparatus and method of memory programming | |
CN109697027B (en) | Data storage device including shared memory region and dedicated memory region | |
KR20140145254A (en) | User device including nonvolatile memory device and write method thereof | |
KR102188628B1 (en) | Method and apparatus for restricting writes to solid state memory when an end-of-life condition is reached | |
US20100217920A1 (en) | Memory system and address allocating method of flash translation layer thereof | |
KR20170099610A (en) | Data storage device and operating method thereof | |
US10620874B2 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
US11520487B2 (en) | Managing write operations during a power loss | |
CN111400201B (en) | Data sorting method of flash memory, storage device and control circuit unit | |
CN109147854B (en) | Data storage device and operation method thereof | |
US10747462B2 (en) | Data processing system and operating method thereof | |
KR20100040487A (en) | Nonvolatile memory device recoverying oxide layer and block management method thereof | |
KR20150006613A (en) | Data storage device and operating method thereof | |
CN107239225B (en) | Memory management method, memory storage device and memory control circuit unit | |
KR102421103B1 (en) | Controller, memory system including the same and operating methods of the controller and the memory system |
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 | ||
FPAY | Annual fee payment |
Payment date: 20200131 Year of fee payment: 5 |