KR20140030733A - Memory controller and electronic device having the memory controller - Google Patents

Memory controller and electronic device having the memory controller Download PDF

Info

Publication number
KR20140030733A
KR20140030733A KR20120097254A KR20120097254A KR20140030733A KR 20140030733 A KR20140030733 A KR 20140030733A KR 20120097254 A KR20120097254 A KR 20120097254A KR 20120097254 A KR20120097254 A KR 20120097254A KR 20140030733 A KR20140030733 A KR 20140030733A
Authority
KR
Grant status
Application
Patent type
Prior art keywords
address
instruction
command
memory controller
host
Prior art date
Application number
KR20120097254A
Other languages
Korean (ko)
Inventor
이종원
문정욱
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; 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

Abstract

Provided is a memory controller capable of receiving a plurality of addresses of a nonvolatile memory device and controlling a plurality of planes of the nonvolatile memory device to perform an operating command at the same time. The memory controller comprises: a first interface configured to receive, from a host, a first command, a first address corresponding to the first command, a second address, an address state separation command separating the first and second addresses, and a second command corresponding to the second address; and a microprocessor configured to control to decode the first command, map the first address, and perform the decoded first command in a nonvolatile memory device using the first address in which the decoded first command is mapped, and to determine the correlation between the first and second addresses with reference to the address state separation command, wherein the correlation determines whether the first and second commands are respectively performed in the first and second addresses at the same time.

Description

메모리 컨트롤러 및 상기 메모리 컨트롤러를 포함하는 전자장치{Memory controller and electronic device having the memory controller} The memory controller and the electronic device including the memory controller {Memory controller and electronic device having the memory controller}

본 발명의 개념에 따른 실시예는 비휘발성 메모리를 제어하는 메모리 컨트롤러의 구동 방법 및 상기 메모리 컨트롤러를 포함하는 전자 장치. Embodiments in accordance with the concepts of the present invention is an electronic device comprising a driving method, and the memory controller in the memory controller for controlling the nonvolatile memory.

메모리 장치는 휘발성(volatile) 메모리 장치와 비휘발성(non-volatile) 메모리 장치로 분류된다. The memory device is classified as a volatile (volatile) memory devices and non-volatile (non-volatile) memory devices. 휘발성 메모리 장치는 전원(power)이 제거될 때 데이터는 유지되지 않는다. Volatile memory device is not the data is not maintained when the power (power) is removed. 그러나, 비휘발성 메모리 장치는 전원이 제거되더라도 데이터는 유지된다. However, the non-volatile memory device, even if power is removed the data is held.

비휘발성 메모리 장치의 예들로서 ROM(read only memory), 또는 EEPROM (Electrically Erasable Programmable Read-Only Memory) 등이 있다. And the like as examples of the non-volatile memory device ROM (read only memory), or EEPROM (Electrically Erasable Programmable Read-Only Memory).

플래시(flash) EEPROM으로 소개된 플래시 메모리 장치의 구조와 동작은 종래의 EEPROM의 구조와 동작과 서로 다르다. Structure and operation of the flash memory device introduced into the flash (flash) EEPROM is different from the structure and operation of a conventional EEPROM. 플래시 메모리 장치는 블락(block) 단위로 전기적 소거(electric erase) 동작을 수행하고 비트 단위로 프로그램 동작을 수행할 수 있다. The flash memory device may perform the electrical erasure (erase electric) operate in blocks (block) units and performs a program operation in bits.

본 발명이 이루고자 하는 기술적인 과제는 호스트로부터 제 1 어드레스 및 제 2 어드레스를 제공받고, 제 1 어드레스 및 제 2 어드레스를 분리하는 어드레스 상태 분리 명령어를 제공받아 제 1 어드레스와 제 2 어드레스에서 동시에 명령어를 수행하는 것 여부를 판단하는 메모리 컨트롤러를 제공하는 것이다. Receiving the technical challenges THE INVENTION The invention provides the first address and being provided for a second address, the address state to separate the first address and second address disconnect command from the host a command at the same time at the first address and the second address done to provide a memory controller that determines whether or not to.

본 발명의 몇몇 실시예에 따른 메모리 컨트롤러는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스, 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스를 포함하고, 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리에서 수행하도록 제어하고, 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller according to some embodiments of the present invention corresponding to the first instruction, the first address, second address, the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host the includes a first interface that receives a second instruction that, and decoding the first instruction, the mapping the first address, and by using the decoded first instruction is mapped to the first address and control to be performed on a non-volatile memory , a and a microprocessor for determining the correlation between the second address and the first address. 제 1 어드레스와 제 2 어드레스와의 상관 관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 것 여부를 판단하는 것이다. The correlation of the first address and the second address is to determine whether the first instruction and the second instruction is to perform simultaneously on the first address and second address. 제 1 인터페이스는 호스트와 교신하는 호스트 인터페이스이다. The first interface is a host interface to communicate with the host. 또한, 어드레스 상태 분리 명령어는 상기 제 1 어드레스와 상기 2어드레스 사이에 제공되다. In addition, the address state separate instruction be provided between the first address and the second address. 제 1 인터페이스는 상기 제 2 명령어를 제공받고, 제 3 어드레스를 순서대로 제공받는다. A first interface being provided on the second command, receives a third address in sequence.

본 발명의 다른 실시예에 따르면, 제 1 명령어는 프로그램 명령어이며, 제 1 인터페이스는 제 1 명령어, 제 2 어드레스 및 제 1 명령어에 대응되고 프로그램 될 제 1 데이터를 순서대로 제공받는다. In accordance with another embodiment of the invention, the first instruction is the program command, the first interface is provided with first data to be corresponding to the program is the first instruction, the second address and the first instruction sequence. 제 1 프로그램 명령어 수행시, 상기 제 2 어드레스 정보를 제 1 어드레스의 메타 데이터 영역에 프로그램한다. The program should perform when one program instruction, the second address information in the metadata area of ​​the first address.

본 발명의 또 다른 실시예에 따른 메모리 컨트롤러에 있어서, 제 1 명령어는 리드 또는 이레이즈 명령어이다. A memory controller according to another embodiment of the present invention, the first command is a read or erase command.

본 발명의 또 다른 실시예에 따른 전자 장치는 호스트 및 호스트와 교신하고, 적어도 하나 이상의 비휘발성 메모리 장치를 제어하는 메모리 컨트롤러를 포함한다. Electronic device according to still another embodiment of the present invention includes a memory controller that is in communication with the host and the host, control the at least one non-volatile memory device. 메모리 컨트롤러는, 호스트와 연결되어 있으며, 제 1 명령어, 제 1 어드레스, 제 2 어드레스, 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는 호스트 인터페이스를 포함하고, 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하며, 제 1 어드레스와 제 2 어드레스의 상관 관계를 판단하는 마이크로프로세서를 포함한다. The memory controller, connected to the host, the first instruction, the first address, second address, and the first and includes a host interface receives the address state separation instruction to separate the second address, decoding the first instruction and, to map the first address, and a microprocessor for determining the correlation between the first address and the second address. 또한, 디코딩된 명령어 및 맵핑된 어드레스를 제공하는 메모리 인터페이스를 포함한다. In addition, a memory interface to provide a decoded instruction and address mapping.

메모리 컨트롤러는 비휘발성 메모리 장치의 호스트로부터 어드레스 분리 커맨드를 제공받아, 복수개의 플래인이 동시에 동작 할 수 있는지 여부를 결정하여, 비휘발성 메모리 장치의 멀티 플래인 동작 속도를 증가시킬 수 있다. The memory controller can determine whether it can accept the service address separation command from the host of the non-volatile memory device, a plurality of operation plane at the same time, increasing the multi-plane operation speed of the nonvolatile memory device.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다. A brief description of each drawing is provided in order to fully understand the drawings referred to in detailed description of the invention.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 시스템을 포함하는 전자장치의 블록도이다. Figure 1 is a block diagram of an electronic device including a non-volatile memory system according to an embodiment of the present invention.
도 2는 본 발명의 다른 실시예에 따른 메모리 시스템을 보여주는 블록도이다. Figure 2 is a block diagram showing a memory system according to another embodiment of the present invention.
도 3는 다른 실시예에 따라 비휘발성 메모리 시스템을 포함하는 전자장치를 도시하고 있다. Figure 3 shows an electronic device including a non-volatile memory system according to another embodiment.
도 4는 본 발명의 일 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 4 shows a command and an address transfer sequence is provided to the memory controller from the host in accordance with one embodiment of the present invention.
도 5는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. 5 illustrates a command and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention.
도 6는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 6 illustrates an instruction and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention.
도 7는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 7 illustrates an instruction and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention.
도 8는 본 발명의 실시 예에 따른 비휘발성 메모리 장치를 포함하는 전자 장치의 블록도를 나타낸다. Figure 8 shows a block diagram of an electronic device including a non-volatile memory device according to an embodiment of the invention.
도 9은 본 발명의 다른 실시 예에 따른 비휘발성 메모리 장치를 포함하는 전자 장치의 블록도를 나타낸다. Figure 9 shows a block diagram of an electronic device including a non-volatile memory device according to another embodiment of the present invention.
도 10는 본 발명의 또 다른 실시 예에 따른 비휘발성 메모리 장치를 포함하는 전자 장치의 블록도를 나타낸다. Figure 10 shows a block diagram of an electronic device including a non-volatile memory device according to still another embodiment of the present invention.
도 11 내지 도 13은 본 발명의 또 다른 실시 예에 따른 비휘발성 메모리 장치를 포함하는 전자 장치의 블록도를 나타낸다. 11 to 13 shows a block diagram of an electronic device including a non-volatile memory device according to still another embodiment of the present invention.

본 명세서 또는 출원에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 개념에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니된다. Herein or specific structural to a functional description will be given on embodiments according to the concepts of the invention disclosed in the application can be illustrated for the purpose of describing the embodiment according to only the concept of the invention, an embodiment according to the concept of the invention examples may be practiced in various forms and should not be construed as limited to the embodiments described herein or applications.

본 발명의 개념에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정 실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. Embodiments in accordance with the concepts of the present invention can add various modifications can have various forms illustrated in the drawings will be described in specific embodiments, detailed herein, or application. 그러나, 이는 본 발명의 개념에 따른 실시 예을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the embodiments disclosed yeeul particular form according to the concepts of the present invention, it is to be understood as embracing all included in the spirit and scope of the present invention changes, equivalents and substitutes.

제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안된다. Although the first and / or can be used in describing various elements of the second term, etc., the components should not be limited by the terms. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다. These terms are only to distinguish one component from another component, for example, while not departing from the scope of the concept of the present invention, the first component of claim could be termed a second element, similar to the second component may be named as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. It understood that when one element is described as being "connected" or "coupled" to another element, but may be directly connected or coupled to the other components, may be other element in between It should be. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. In contrast, when an element is referred to there being "directly connected" to another element or "directly connected", it should be understood that other components in the middle that does not exist. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. Configuration to be understood similarly also in other words used to describe the relationship between elements, or "between the direct ~" "~ between" and or the "- directly adjacent to" "~ neighboring".

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. The terms used herein are merely used to describe particular embodiments, and are not intended to limit the present invention. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Expression in the singular number include a plural forms unless the context clearly indicates otherwise. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. In this specification, the "inclusive" or "gajida" and the terms are staking the features, numbers, steps, operations, elements, parts or geotyiji to be a combination thereof specify the presence, of one or more other features, integers , steps, operations, elements, the presence or addition of parts or combinations thereof and are not intended to preclude.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. Unless otherwise defined, including technical and scientific terms, all terms used herein have the same meaning as commonly understood by one of ordinary skill in the art. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Any term that is defined in a general dictionary used shall be construed to have the same meaning in the context of the relevant art, unless otherwise defined explicitly in the present specification, not be interpreted to have an idealistic or excessively formalistic meaning no.

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

도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 시스템을 포함하는 전자장치의 블록도이다. Figure 1 is a block diagram of an electronic device including a non-volatile memory system according to an embodiment of the present invention.

도 1을 참조하면, 전자 장치(1000)는 호스트(1200)와 비휘발성 메모리 시스템(1100)을 포함한다. 1, the electronic device 1000 comprises a host 1200 and a non-volatile memory system (1100). 호스트(1200)는 예를 들면 Host 1200 may be, for example 퍼스널 컴퓨터, 디지털 카메라, 캠코더, 휴대 전화, 스마트 폰, 포터블 디바이스, MP3, PMP, PSP, PDA, 이메일 송수신 장치 등과 같은 전자 장치가 될 수 있다. It may be an electronic device such as a personal computer, digital camera, camcorder, mobile phone, smart phone, portable device, MP3, PMP, PSP, PDA, e-mail transmission and reception device. 비휘발성 메모리 시스템(1100)은 메모리 컨트롤러(1120) 및 비휘발성 메모리 장치(1110)를 포함한다. Non-volatile memory system 1100 includes a memory controller 1120 and a non-volatile memory device 1110. 메모리 컨트롤러(1120)는 비휘발성 메모리 장치(1110)를 전반적으로 제어 한다. The memory controller 1120 controls the overall non-volatile memory device (1110). 비휘발성 메모리 장치(1100)는 메모리 컨트롤러(1120)의 제어에 따라 소거, 쓰기 또는 읽기 동작 등을 수행할 수 있다. Non-volatile memory device 1100 can be performed, such as erase, write or read operation under the control of the memory controller 1120. 이를 위해 비휘발성 메모리 장치(1100)는 입출력 라인을 통해 커맨드(CMD), 어드레스(ADDR), 그리고 데이터(DATA)를 입력받는다. Non-volatile memory device 1100. For this, receives a command (CMD), address (ADDR), and data (DATA) through the input and output lines. 또한, 비휘발성 메모리 장치(1100)는 전원 라인을 통해 전원(PWR)을 입력받고, 제어 라인을 통해 제어 신호(CTRL)를 입력받는다. In addition, the non-volatile memory apparatus 1100 receives the power (PWR) through a power supply line, receives the control signal (CTRL) via a control line. 제어 신호(CTRL)은 예를 들어, 커맨드 래치 인에이블(CLE), 어드레스 래치 인에이블(ALE), 칩 인에이블(nCE), 쓰기 인에이블(nWE), 읽기 인에이블(nRE) 등이 포함할 수 있다. A control signal (CTRL), for example, a command latch enable (CLE), address latch enable (ALE), the chip enable (nCE), write enable (nWE), to include a read enable (nRE) can.

비휘발성 메모리 장치(1110)는 플래시 메모리(Flash Memory), EEPROM(electrically Erasable Programmable Read-Only Memory), FRAM(ferroelectrics random access memory), PRAM(phase change random access memory), MRAM(magnetoresistive random access memory)를 포함한다. Non-volatile memory device 1110 is a flash memory (Flash Memory), EEPROM (electrically Erasable Programmable Read-Only Memory), FRAM (ferroelectrics random access memory), PRAM (phase change random access memory), MRAM (magnetoresistive random access memory) It includes. 도 1에서는 예시적으로 낸드 플래시 메모리 장치를 도시하였으나, 이에 한정된 것은 아니다. 1] Although an exemplary illustration of a NAND flash memory device, not limited thereto. 도 1을 참조하면, 비휘발성 메모리 장치(1110)는 메모리 컨트롤러(1120)부터 제공받은 데이터를 저장하는 스토리지 유닛(storage unit) 역할을 할 수 있다. 1, the non-volatile memory device 1110 may be a storage unit (storage unit) functions to store the data received from the memory controller 1120. 비휘발성 메모리 장치(1110)는 데이터를 저장하는 복수개의 셀 어레이를 포함할 수 있다. Non-volatile memory device 1110 may include a plurality of cell array for storing data. 셀 어레이는 복수개의 플래인(PL1~PLn)(단, n은 자연수)을 포함할 수 있다. The cell array has a plurality of flags (PL1 ~ PLn) may include (where, n is a natural number). 플래인(PL1~PLn)은 복수개의 블락(BLK1~BLKm)(단, m은 자연수)을 포함하며, 블락(BLK1~BLKm)은 복수개의 페이지(PAGE1~PAGEk)(단, k는 자연수)를 포함한다. Plane (PL1 ~ PLn) has a plurality of blocks (BLK1 ~ BLKm) it comprises (where, m is a natural number), blocks (BLK1 ~ BLKm) includes a plurality of pages (PAGE1 ~ PAGEk) (where, k is a natural number) It includes. 블락(BLK1~BLKm)은 이레이즈 명령어를 수행하는 단위, 즉 이레이즈 동작이 동시에 이루어지는 단위일 수 있다. Blocks (BLK1 ~ BLKm) may be a unit that performs an erase command, that is, erasing operation is made at the same time unit. 페이지(PAGE1~PAGEk)는 프로그램 및 리드 명령어를 수행하는 단위, 즉, 프로그램 및 리드 동작이 동시에 이루어지는 단위일 수 있다. Page (PAGE1 ~ PAGEk) may be a unit, that is, a program, and at the same time made the read operation unit for performing a program and read commands.

본 발명의 실시 예에 따라서, 메모리 컨트롤러(1120)는 호스트와 비휘발성 메모리 장치(1110)와 연결되어 있다. According to an embodiment of the invention, the memory controller 1120 is connected to the host and non-volatile memory device 1110. 메모리 컨트롤러(1120)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 호스트 인터페이스를 포함한다. The memory controller 1120 is a second command corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host the offer includes a receiving host interface. 또한, 메모리 컨트롤러(1120)는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 것 여부를 판단한다. Moreover, the memory controller 1120 determines whether the first instruction and the second instruction is to perform simultaneously on the first address and second address. 이에 대해서는 후술하도록 한다. As it will be so described below.

도 2는 본 발명의 다른 실시예에 따른 메모리 시스템(2000)을 보여주는 블록도이다. Figure 2 is a block diagram showing a memory system 2000 according to another embodiment of the present invention.

도 2을 참조하면, 메모리 시스템(2000)은 비휘발성 메모리 장치(2200) 및 메모리 컨트롤러(2100)를 포함한다. Referring to Figure 2, the memory system 2000 includes a non-volatile memory device 2200 and memory controller 2100.

비휘발성 메모리 장치(2200)는 도 1에서 도시한 것과 같이 플래시 메모리(Flash Memory), EEPROM(electrically Erasable Programmable Read-Only Memory), FRAM(ferroelectrics random access memory), PRAM(phase change random access memory), MRAM(magnetoresistive random access memory)를 포함한다. A nonvolatile memory device 2200 is a flash memory (Flash Memory), EEPROM (electrically Erasable Programmable Read-Only Memory), FRAM (ferroelectrics random access memory), PRAM (phase change random access memory), as shown in Figure 1, and a MRAM (magnetoresistive random access memory). 또한, 도 2를 참조하면, 비휘발성 메모리 장치(2200)는 메모리 컨트롤러(2100)부터 제공받은 데이터를 저장하는 스토리지 유닛(storage unit) 역할을 할 수 있다. Further, 2, the nonvolatile memory device 2200 may be a storage unit (storage unit) functions to store the data received from the memory controller (2100). 비휘발성 메모리 장치(2200)는 예를 들면, 낸드 플래시 메모리 장치일 수 있다. Non-volatile memory device 2200 may be for example, a NAND flash memory device. 비휘발성 메모리 장치(2200)는 데이터를 저장하는 복수개의 셀 어레이를 포함할 수 있다. Non-volatile memory device 2200 may include a plurality of cell array for storing data. 셀 어레이는 복수개의 플래인을 포함할 수 있다. Cell array may comprise a plurality of plane. 플래인은 복수개의 블락을 포함하며, 블락은 복수개의 페이지를 포함한다. Plane comprises a plurality of blocks, block includes a plurality of pages.

컨트롤러(2100)는 마이크로 프로세서(microprocessor;2110), 램(RAM;2130), 롬(ROM;2140), ECC 유닛(2150), 호스트 인터페이스(2120)(2120) 및 메모리 인터페이스(memory interface)(2160), 플래인 제어 유닛(2170), 레지스터(2180) 등을 포함할 수 있다. Controller 2100 is a microprocessor (microprocessor; 2110), RAM (RAM; 2130), ROM (ROM; 2140), ECC unit 2150, a host interface 2120, 2120 and a memory interface (memory interface) (2160 ), plane control unit 2170, a register 2180, and the like. 컨트롤러(2100)의 구성요소들(2110, 2120, 2130, 2140, 2150, 2160, 2170, 2180)은 버스(bus)를 통해서 전기적으로 연결될 수 있다. The components of the controller 2100 (2110, 2120, 2130, 2140, 2150, 2160, 2170, 2180) may be electrically connected through the bus (bus).

호스트 인터페이스(2120)는 컨트롤러(1200)를 포함한 메모리 시스템(2000)과 호스트 사이의 인터페이스를 수행할 수 있다. The host interface 2120 may perform an interface between memory system 2000 and a host including a controller (1200). 도 2를 참조하면, 호스트 인터페이스(2120)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는다. 2, the host interface 2120 in the first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host It receives a second command corresponding to. 호스트 인터페이스(2120)는 호스트로부터 제 1 어드레스와 제 2 어드레스 사이에 어드레스 상태 분리 명령어를 제공받을 수 있다. The host interface 2120 may be provided with a separate address state commands between the first address and the second address from the host. 그리고 실시 예에 따라서, 제 2 어드레스를 받은 후에, 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 제 3 어드레스를 순서대로 받을 수 있다. And in accordance with the embodiment, after receiving the second address, been provided with a second command corresponding to a second address, you can receive the third address in sequence. 제 3 어드레스는 제 2 어드레스와 연속되는 어드레스이며, 제 1 명령어 및 제 2 명령어에 대응되지 않는다. Third address is the address that is continuous with the second address, the first instruction, and does not respond to the second command. 호스트 인터페이스(2120)는 예를 들어, 호스트로부터 로지컬 어드레스(logical address), 커맨드 래치 인에이블 (CLE) 시그널, 어드레스 래치 인에이블(ALE), 레디 및 비지(R/B) 시그널, 칩 인에이블(CE) 시그널을 컨트롤러로 제공해 줄 수 있다. The host interface 2120 is, for example, the logical address (logical address), command latch enable (CLE) signals, address latch enable (ALE), the ready and busy (R / B) signal, a chip enable from the host ( It can provide the CE) signal to the controller. 또한, 호스트 인터페이스(2120)는 미리 결정된 프로토콜에 의해서 호스트와 통신할 수 있다. Further, the host interface 2120 may communicate with the host by a predetermined protocol. 예를 들어, 미리 결정된 프로토콜은 USB (Universal Serial Bus), SCSI (Small Computer System Interface), PCI express, ATA, PATA (Parallel ATA), SATA (Serial ATA), SAS (Serial Attached SCSI) 등일 수 있으나, 이에 한정되지 않는다. For example, the predetermined protocol, but the like USB (Universal Serial Bus), SCSI (Small Computer System Interface), PCI express, ATA, PATA (Parallel ATA), SATA (Serial ATA), SAS (Serial Attached SCSI), but this is not restrictive.

롬(ROM;2140)은 메모리 시스템(2000)의 구동 펌웨어 코드를 저장할 수 있으며, 본 발명의 범위가 이에 한정되는 것은 아니다. ROM (ROM; 2140) can hold the drive firmware code in the memory system (2000), but the scope of the present invention is not limited thereto. 펌웨어 코드는 롬(2140)이외의 다양한 비휘발성 메모리 장치(1100), 예를 들면, 낸드 플래시 메모리 장치에 저장될 수도 있다. Firmware code, for example, various non-volatile memory apparatus 1100 other than the ROM 2140, may be stored in a NAND flash memory device. 따라서, 마이크로 프로세서(2110)의 제어 또는 개입이란, 마이크로 프로세서(1210)의 하드웨어적인 직접적 제어뿐만 아니라, 마이크로 프로세서(1210)에의해서 구동되는 소프트웨어인 펌웨어의 간섭도 포함 할 수 있다. Therefore, it is possible to include the control or intervention is, direct hardware control, as well as to to the microprocessor 1210, the interference of the firmware software driven microprocessor 1210 of the microprocessor 2110.

램(RAM; random access memory;2130)은 버퍼(buffer)역할을 하는 메모리로, 호스트 인터페이스(2120)를 통하여 입력되는 제 1 및 제 2 명령어, 제 1, 및 제 2 어드레스, 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 각종 변수들 또는 비휘발성 메모리 장치(2100)로부터 출력되는 데이터들을 저장할 수 있다. RAM (RAM; random access memory; 2130) has a first and a second instruction, a first and a second address in the memory to act buffer (buffer), input through the host interface 2120, the first and second the address state to separate the address separation commands and may store various kinds of data output from the variable or non-volatile memory device 2100. 그리고, 비휘발성 메모리 장치(2100)로 입력되고 출력되는 데이터, 각종 파라미터 및 변수들을 저장할 수 있다. And is input to the non-volatile memory device 2100 may store data, various parameters and variable output.

마이크로 프로세서(2110)는 회로, 로직, 코드 또는 이들의 조합으로 구현가능하며, 마이크로 컨트롤러(1200)를 포함한 메모리 시스템(2000)의 동작을 전반적으로 제어한다. The microprocessor 2110 is a high level of control over the operation of the memory system 2000, including possible implementation of the circuitry, logic, code, or a combination thereof, and a microcontroller 1200. The 메모리 시스템(2000)에 전원이 인가되면, 마이크로 프로세서는 롬()에 저장된 메모리 시스템(2000) 동작을 위한 펌웨어(firmware)를 램()상에서 구동시킴으로써 메모리 시스템(2000)의 전반적인 동작을 제어할 수 있다. When the memory system (2000) is powered, the microprocessor can control the overall operation of the memory system (2000) by driving the firmware (firmware) for the memory system 2000 operates is stored in the ROM () on the ram () have.

또한, 마이크로프로세서(2110)는 호스트 인터페이스(2120)를 통해 인가되는 명령어를 해석하고, 해석 결과에 따라 비휘발성 메모리 장치(2200) 의 전반적인 동작을 제어할 수 있다. In addition, the microprocessor 2110 may control the overall operation of the nonvolatile memory device 2200 in accordance with the interpretation results, interpret instructions to be applied through the host interface 2120. 구체적으로 도 2를 참조하면, 마이크로프로세서(2110)는 호스트 인터페이스(2120)를 통하여 제공된 제 1 명령어를 디코딩하며, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리에서 수행하도록 제어한다. Specifically in Figure 2, the microprocessor 2110 decodes the first instruction provided through the host interface 2120, it maps the first address, and by using the decoded first instruction is mapped to the first address and controls so as to perform in a non-volatile memory. 또한, 마이크로프로세서(2110)는 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. In addition, the microprocessor 2110 determines the correlation between the second address and the first address. 다시 말해서, 마이크로프로세서는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 것 여부를 판단한다. In other words, the microprocessor determines whether the first instruction and the second instruction is to perform simultaneously on the first address and second address.

메모리 인터페이스(2160)는 컨트롤러(2100)와 비휘발성 메모리 장치(2200) 사이에 신호를 교신할 수 있다. Memory interface 2160 may communicate a signal between the controller 2100 and the nonvolatile memory device 2200. 메모리 인터페이스(2160)를 통해서 마이크로프로세서(2110)가 요구하는 명령어가 비휘발성 메모리 장치(2200)로 제공될 수 있으며, 또한 컨트롤러(2100)로부터 비휘발성 메모리 장치(2200)로 데이터가 전송될 수 있다. There are the instructions for the microprocessor (2110) required by the memory interface 2160 can be provided in a non-volatile memory device 2200, and data from the controller 2100, a non-volatile memory device 2200 may be transmitted . 또한, 비휘발성 메모리 장치(2200) 로부터 출력되는 데이터는 메모리 인터페이스(2160)를 통해서 컨트롤러(2100)로 제공된다. Further, the data output from the nonvolatile memory device 2200 is provided to the controller 2100 via the memory interface 2160.

또한, 마이크로프로세서(2110)는 램에 저장된 제 1 명령어 및 파라미터들을 사용하여, 호스트로부터 제공된 파라미터들을 비휘발성 메모리에 최적화되도록 맵핑된다. In addition, the microprocessor 2110 uses the first instruction, and parameters stored in the RAM are mapped to optimize the parameters supplied from the host in a non-volatile memory. 예를 들면, 호스트로부터 제공된 제 1 명령어가 리드 명령에 해당하는 경우, 마이크로프로세서(2110)는 제 1 명령어를 비휘발성 메모리 인터페이스(2160)를 통해서 제공될 제 2 명령어, 즉 메모리 리드 명령어 또는 메모리 이레이즈 명령어로 맵핑 할 수 있다. For example, if the first instruction supplied from the host corresponding to the read command, the microprocessor 2110 is a second command, that is the memory read command or memory seven be provided with a first command via the non-volatile memory interface 2160 It can be mapped to rise command. 또한, 마이크로프로세서는 램(2130)에 저장된 호스트로부터 제공된 로직컬 어드레스를 비휘발성 메모리에 대응되는 물리적 어드레스로 맵핑 할 수 있다. In addition, the microprocessor may map the logical address supplied from the local host is stored in the RAM 2130 into a physical address corresponding to the non-volatile memory.

레지스터(2180)는 호스트 인터페이스(2160)를 통해서 제공된 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 명령어를 저장 할 수 있다. Register 2180 may store the address state separate instruction and the second instruction that identify the first instruction, the first address, second address and the first and second address provided via the host interface (2160). 또한, 레지스터는 마이크로 프로세서의 제어에 따라, 디코딩된 제 1 및 제 2 명령어와 맵핑된 제 1 및 제 2 어드레스를 저장할 수 있다. Further, the register is capable of storing the decoded first and second commands and mapping the first and the second address according to the control of the microprocessor. 레지스터(2180)는 실시예에 따라, 미이크로 프로세서(2110) 내부에 위치할 수 있고, 별도의 레지스터로 버스에 해서, 컨트롤러의 다른 구성요소들과 전기적으로 연결될 수 있다. Register 2180, depending on the embodiment, it may be located within the non-microprocessor 2110, to the bus as a separate register may be connected to other components of the controller and electrically.

실시 예들에 따라서, 제 1 명령어는 리드 또는 이레이즈 명령어가 될 수 있다. According to embodiments, the first instruction may be read or erase command. 또한, 실시예들에 따라서, 제 1 명령어는 프로그램 명령어가 될 수 있다. Further, according to embodiments, the first instruction may be a program instruction. 제 1 명령어가 제 1 명령어인 때에는, 호스트 인터페이스(2120)는 제 1 명령어, 제 2 어드레스 및 프로그램될 제 1 데이터 순서로 제공받을 수 있다. When the first command is the first command, the host interface 2120 may be provided with the first instruction, the second address and the first data sequence to be programmed. 또한, 제 1 프로그램 명령어 수행시, 제 2 어드레스 정보를 제 1 어드레스의 메타 데이터 영역에 프로그램 하여, 비정상적으로 공급 전원이 오프된 상태(sudden power off)에서, 프로그램 동작 종료 어드레스를 추적할 수 있다. Moreover, the first program when the command execution, the program for the second address information in the metadata area of ​​the first address, it is possible to keep track of in an abnormal supply power off state (sudden power off), the program operation end address. 따라서, 비정성적으로 공급 전원이 오프로 인한 데이터 손실을 최소화 할 수 있다. Thus, the power supply to the non achievement can minimize data loss due to off.

ECC 유닛(error correction code unit; 2150)은 에러 비트 정정을 수행한다. ECC unit (error correction code unit; 2150) performs a bit error correction. 도 2를 참조하면, ECC 유닛(2150)은 ECC 인코더(2151)와 ECC 디코더(2152)를 포함한다. Referring to Figure 2, the ECC unit 2150 includes an ECC encoder 2151 and the ECC decoder 2152.

ECC 인코더(2151)는 메모리 시스템(2000)의 호스트 인터페이스(2120)를 통해 입력되는 데이터의 오류정정 인코딩을 하여, 패리티(parity) 비트가 부가된 코드워드(codeword)를 생성한다. ECC encoder 2151 is supplied with the error correction encoding of data which is input through the host interface 2120, a memory system (2000), and generates a parity (parity) bit of the additional code word (codeword). 코드워드는 비휘발성 메모리 장치(1100)에 저장될 수 있다. Code words may be stored in non-volatile memory device 1100.

ECC 디코더(2152)는 출력된 데이터에 대하여 에러 정정 디코딩을 수행하고 수행 결과에 따라 에러 정정 디코딩의 성공 여부를 판단하고 판단 결과에 따라 지시 신호를 출력한다. ECC decoder 2152 outputs the instruction signal according to the error correction decoding, and perform determine the success of the error correction decoding in accordance with the execution result and the determination result with respect to the output data. 리드한 데이터는 ECC 디코더로 전송되고, ECC 디코더는 페리티(parity) 비트를 사용하여 데이터의 에러 비트를 정정 할 수 있다. A read data is transferred to the ECC decoder, ECC decoder can use the parity (parity) bits to correct an error bit of the data. 에러 비트 개수가 정정 가능한 에러 비트 한계치 이상 발생하면, ECC 디코더는 에러 비트를 정정할 수 없고, 에러 정정 실패(fail)가 발생한다. If errors occur more than the number of bits capable of correcting an error bit limit, ECC decoder can not correct an error bit, an error correction failure (fail) occurs.

ECC 인코더(2151)와 ECC 디코더(2152)는 LDPC(low density parity check) code, BCH code, turbo code, 리드-솔로몬 코드(Reed-Solomon code), convolution code, RSC(recursive systematic code), TCM(trellis-coded modulation), BCM(Block coded modulation) 등의 코디드 모듈레이션(coded modulation)을 사용하여 에러 정정을 할 수 있으며 이에 한정되는 것은 아니다. ECC encoder 2151 and the ECC decoder 2152 is a LDPC (low density parity check) code, BCH code, turbo code, Reed-Solomon code (Reed-Solomon code), convolution code, (recursive systematic code) RSC, TCM ( using the trellis-coded modulation), BCM (Block coded modulation) Coded modulation (coded modulation), such as to the error correction, and the embodiment is not limited thereto.

ECC 인코더(2151) 및 ECC 디코더(2152)는 오류정정화를 위한 회로, 시스템 또는 장치를 모두 포함할 수 있다. ECC encoder 2151 and the ECC decoder 2152 is a circuit for error Chong, Jong - Wha, it can include any system or device.

도 3는 다른 실시예에 따라 비휘발성 메모리 시스템(3100)을 포함하는 전자장치(3000)를 도시하고 있다. Figure 3 shows an electronic device (3000) comprising a non-volatile memory system 3100 in accordance with another embodiment.

도 3를 참조하면, 비휘발성 메모리 시스템(3100)을 포함하는 전자 장치(3000)는 예를 들면, 모바일 폰, 디지털 카메라, 이동 음악 장치, 장난감, 이메일 송수신 장치 와 같은 어떠한 비휘발성 메모리 장치를 포함하는 다양한 장치로 사용될 수 있다. Referring to Figure 3, the electronic device (3000) comprising a non-volatile memory system (3100) is, for example, include mobile phones, digital cameras, mobile music device, any non-volatile memory, such as a toy, email transceiver device that can be used in various devices. 호스트(3200)는 호스트 프로세서를 포함하며, 호스트 채널을 통해서, 호스트와 비휘발성 메모리 시스템은 초기 동작 명령어(예;제 1 명령어), 로직컬 어드레스, 입출력 데이터 등 정보를 교신(communication)한다. A host (3200) includes a host processor, via a host channel, the host and the non-volatile memory system is an initial operation instructions; and communication (communication) of information (such as the first instruction), logic, local address, data input and output. 또한, 호스트는 비휘발성 메모리 시스템에 칩 인에이블 (CE) 시그널, 로지컬 어드레스, 레디 또는 비지(R/B)시그널을 제공할 수 있다. In addition, the host may provide the chip enable (CE) signal, a logical address, the ready or busy (R / B) signal to a non-volatile memory system.

도 3를 참조하면, 메모리 시스템(3100)은 복수개의 메모리 장치(3110n) 및 메모리 컨트롤러(3110)를 포함한다. Referring to Figure 3, the memory system 3100 includes a plurality of memory devices (3110n), and the memory controller 3110. 설명의 편의상, 메모리는 비휘발성 메모리 장치는 낸드 플래시 메모리로 도시하고 있으나, 이에 제한되는 것은 아니다. For convenience of explanation, the memory is non-volatile memory device is not intended to be, but is shown as a NAND flash memory, limited. 메모리 컨트롤러는 호스트로부터 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 어드레스와 제 2 어드레스 사이에 어드레스 상태 분리 명령어를 제공받는다. The memory controller is provided with the first instruction, the address state separation commands between the first address, second address and the first address and the second address from the host.

호스트 인터페이스는 호스트로부터 제 1 어드레스와 제 2 어드레스 사이에 어드레스 상태 분리 명령어를 제공받을 수 있다. The host interface may be provided with a separate address state commands between the first address and the second address from the host. 그리고 실시 예에 따라서, 제 2 어드레스를 받은 후에, 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 제 3 어드레스를 순서대로 받을 수 있다. And in accordance with the embodiment, after receiving the second address, been provided with a second command corresponding to a second address, you can receive the third address in sequence. 제 3 어드레스는 제 2 어드레스와 연속되는 어드레스이며, 제 1 명령어 및 제 2 명령어에 대응되지 않는다. Third address is the address that is continuous with the second address, the first instruction, and does not respond to the second command. 마이크로프로세서는 호스트 인터페이스를 통하여 제공된 제 1 명령어를 디코딩하며, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리에서 수행하도록 제어한다. The microprocessor is controlled to decode a first instruction provided through the host interface, mapping the first address, and by using the decoded first instruction is mapped to the first address done in a non-volatile memory. 또한, 마이크로프로세서는 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. In addition, the microprocessor determines the correlation of the second address and the first address. 다시 말해서, 마이크로프로세서는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 것 여부를 판단한다. In other words, the microprocessor determines whether the first instruction and the second instruction is to perform simultaneously on the first address and second address.

도 4는 본 발명의 일 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 4 shows a command and an address transfer sequence is provided to the memory controller from the host in accordance with one embodiment of the present invention. 도 4를 참조하면, C1 단계는 호스트로부터 프로그램 수행을 위한 명령어 및 어드레스를 제공받는 것을 보여주고 있다. Referring to Figure 4, steps C1 shows that receives the command and the address for the program performed by the host. 도 4를 참조하면, C1 및 C2 단계는 제 1 인터페이스인 호스트 인터페이스는 호스트로부터 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는다. Referring to Figure 4, C1 and C2 is the step of the host interface Interface 1 is provided with the first instruction, the first address, second address and the first address and status commands separation to separate the second address from the host. C1 단계를 참조하면, 어드레스 상태 분리 명령어는 제 1 어드레스 및 제 2 어드레스 사이에 제공된 제 1 어드레스 및 제 2 어드레스를 구분 할 수 있는 정보를 제공한다. Referring to step C1, the address state separate instruction provides information to identify the first address and the second address is provided between the first address and second address. C1 단계에서, 호스트로부터 제공받는 제 1 명령어는 제 1 어드레스에 대응된다. In Step C1, a first command receiving from the host corresponds to the first address.

도 4를 참조하면, 제 1 명령어는 프로그램 명령어이고, 호스트 인터페이스는 제 2 어드레스를 제공받은 후에, 제 1 명령어에 대응되고, 프로그램 될 제 1 데이터를 제공받는다. 4, the first instruction is the program command, the host interface is provided after the second address, the first instruction corresponds to, it receives a first data to be programmed. 또한, 호스트 인터페이스는 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 제 2 어드레스, 어드레스 상태 분리 명령어 및, 제 3 어드레스를 제공받는다. The host interface is provided for receiving a second command corresponding to a second address, it receives a second address, the address state separation of instructions and the third address.

도 4의 C2 단계를 참조하면, 컨트롤러는 마이크로프로세서의 제어 하에, 제 1 명령어를 디코딩하고, 제 1 어드레스를 비휘발성 메모리의 블락 및 페이지 어드레스로 맵핑하여, 제 1 명령어가 비휘발성 메모리 장치에서 수행될 수 있도록 제어한다. Referring to C2 stage of Figure 4, the controller under the control of the microprocessor, decodes the first instruction, to map the first address to the block and page addresses of the nonvolatile memory, the first instruction is performed on the non-volatile memory device and controls so that it can be. 또한, 컨트롤러는 제 1 명령어를 비휘발성 메모리에 수행시, 제 2 어드레스를 메타 데이터 영역 또는 스페어 페이지에 프로그램 하도록 제어한다. In addition, the controller controls to the program, performing a second address when the first command to the nonvolatile memory in the metadata area, a spare page. 제 2 어드레스는 제 1 어드레스와 순차적인 어드레스로서, 전자 장치가 서든 파워 오프(sudden power off) 현상 발생시에, 파워 오프기가 될 시기에 프로그램 동작이 수행되는 페이지 어드레스를 추적하여, 서든 파워 오프 현상에 따른 손실을 최소화 할 수 있다. The 2 address as a first address and the subsequent address, the power-off from any electronic device (sudden power off) in the event of development, to track the page address that the program operation is performed on the timing of group power-off, sudden power-off phenomenon the losses can be minimized.

도 4의 C2 단계를 참조하면, 마이크로프로세서는 어드레스 상태 분리 명령어를 참조하여, 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. Referring to Step C2 of Fig. 4, the microprocessor with reference to the address state separate command, and determines the correlation of the second address and the first address. 또한, 제 1 인터페이스는 제 2 어드레스와 대응되는 제 2 명령어를 제 2 어드레스 수신 후에 제공받는다. In addition, the first interface is provided with the second instruction corresponding to the first address after receiving the second address. 제 2 명령어는 프로그램 명령어이다. The second command is a command program. 제 1 어드레스와 제 2 어드레스의 상관 관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 1 어드레스에서 동시에 수행하는 여부를 판단하는 것이다. Correlation of the first address and the second address is to determine whether the first instruction and the second instruction perform the same time at the first address and the first address. 따라서, 마이크로프로세서가 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정한 결과를 참조하여, 제 1 명령어 수행을 제 2 명령어를 제공 받은 후에 수행하여, 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행 될 수 있도록 제어할 수 있다. Thus, with reference to the result of the microprocessor determines the correlation of the first address and the second address, the first to perform the command execution after that receive a second command, the first command and the second command is the first address and the in the second address it can be controlled to be performed at the same time.

도 4의 C1 단계를 참조하면, 호스트 인터페이스는 제 2 명령어를 수신한 이후에, 제 2 어드레스 및 제 3 어드레스를 수신 할 수 있다. Referring to step C1 in Fig. 4, the host interface may receive a second address and a third address after receiving the second command. 그리고, 호스트 인터페이스는 제 3 어드레스를 수신한 후에, 제 2 명령어에 대응되는 프로그램될 제 2 데이터를 제공받는다. Then, the host interface after receiving a third address, is provided a second program data to be corresponding to the second instruction. 제 3 어드레스는 제 1 명령어 및 제 2 명령어에 대응되지 않고, 제 2 어드레스와 연속된 어드레스이다. The third address is a series of addresses of the first instruction and the second instruction does not correspond to the second address.

도 5는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. 5 illustrates a command and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention. 도 5를 참조하면, D1 단계는 호스트로부터 프로그램 수행을 위한 명령어 및 어드레스를 제공받는 것을 보여주고 있다. Referring to Figure 5, D1 stage has shown that receives the command and the address for the program performed by the host. 도 5를 참조하면, D1 및 D2 단계는 제 1 인터페이스인 호스트 인터페이스는 호스트로부터 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는다. Referring to Figure 5, D1 and D2 stages are the host interface, the first interface is provided with the first instruction, the first address, second address and said address state separation instruction to separate the first and second address from the host. D1 단계를 참조하면, 어드레스 상태 분리 명령어는 제 1 어드레스 및 제 2 어드레스 사이에 제공된되 제 1 어드레스 및 제 2 어드레스를 구분 할 수 있는 정보를 제공한다. Referring to step D1, an address state separate instruction provides information to identify the first address and the first address being provided between the second address and second address. D1 단계에서, 호스트로부터 제공받는 제 1 명령어는 제 1 어드레스에 대응된다. In step D1, a first command receiving from the host corresponds to the first address.

도 5를 참조하면, 제 1 명령어는 프로그램 명령어이고, 호스트 인터페이스는 제 2 어드레스를 제공받은 후에, 제 1 명령어에 대응되고, 프로그램 될 제 1 데이터를 제공받는다. 5, the first instruction is the program command, the host interface is provided after the second address, the first instruction corresponds to, it receives a first data to be programmed. 또한, 호스트 인터페이스는 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 어드레스 분리 명령어 및, 제 3 어드레스를 제공받는다. The host interface is provided for receiving a second command corresponding to a second address, it receives a separate instruction address and a third address. 호스트 인터페이스는 제 2 명령어 제공시에는 별도의 대응되는 제 2 어드레스를 제공받지 않고, 제 1 명령어 수신시에 제공된 제 2 어드레스를 사용하여, 제 2 명령어 동작을 수행한다. The host interface is provided when the second instruction is without providing a second address that is separate correspondence, using the second address is provided during the first command received, performs a second instruction operation.

도 5의 D2 단계를 참조하면, 컨트롤러는 마이크로프로세서의 제어 하에, 제 1 명령어를 디코딩하고, 제 1 어드레스를 비휘발성 메모리의 블락 및 페이지 어드레스로 맵핑하여, 제 1 명령어가 비휘발성 메모리 장치에서 수행될 수 있도록 제어한다. Referring to D2 stage of Figure 5, the controller under the control of the microprocessor, decodes the first instruction, to map the first address to the block and page addresses of the nonvolatile memory, the first instruction is performed on the non-volatile memory device and controls so that it can be. 또한, 컨트롤러는 제 1 명령어를 비휘발성 메모리에 수행시, 제 2 어드레스를 메타 데이터 영역 또는 스페어 페이지에 프로그램 하도록 제어한다. In addition, the controller controls to the program, performing a second address when the first command to the nonvolatile memory in the metadata area, a spare page. 제 2 어드레스는 제 1 어드레스와 순차적인 어드레스로서, 전자 장치가 서든 파워 오프(sudden power off) 현상 발생시에, 파워 오프기가 될 시기에 프로그램 동작이 수행되는 페이지 어드레스를 추적하여, 서든 파워 오프 현상에 따른 손실을 최소화 할 수 있다. The 2 address as a first address and the subsequent address, the power-off from any electronic device (sudden power off) in the event of development, to track the page address that the program operation is performed on the timing of group power-off, sudden power-off phenomenon the losses can be minimized.

도 5의 D2 단계를 참조하면, 마이크로프로세서는 어드레스 상태 분리 명령어를 참조하여, 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. Referring to Step D2 in FIG. 5, the microprocessor with reference to the address state separate command, and determines the correlation of the second address and the first address. 또한, 제 1 인터페이스는 제 2 어드레스와 대응되는 제 2 명령어를 제 2 어드레스 수신 후에 제공받는다. In addition, the first interface is provided with the second instruction corresponding to the first address after receiving the second address. 제 2 명령어는 프로그램 명령어이다. The second command is a command program. 제 1 어드레스와 제 2 어드레스의 상관 관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 1 어드레스에서 동시에 수행하는 여부를 판단하는 것이다. Correlation of the first address and the second address is to determine whether the first instruction and the second instruction perform the same time at the first address and the first address. 따라서, 마이크로프로세서가 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정한 결과를 참조하여, 제 1 명령어 수행을 제 2 명령어를 제공 받은 후에 수행하여, 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행 될 수 있도록 제어할 수 있다. Thus, with reference to the result of the microprocessor determines the correlation of the first address and the second address, the first to perform the command execution after that receive a second command, the first command and the second command is the first address and the in the second address it can be controlled to be performed at the same time.

도 5의 D1 단계를 참조하면, 호스트 인터페이스는 제 2 명령어를 수신한 이후에, 제 2 어드레스 및 제 3 어드레스를 수신 할 수 있다. Referring to Figure 5 of the D1 stage, the host interface may receive a second address and a third address after receiving the second command. 그리고, 호스트 인터페이스는 제 3 어드레스를 수신한 후에, 제 2 명령어에 대응되는 프로그램될 제 2 데이터를 제공받는다. Then, the host interface after receiving a third address, is provided a second program data to be corresponding to the second instruction. 제 3 어드레스는 제 1 명령어 및 제 2 명령어에 대응되지 않고, 제 2 어드레스와 연속된 어드레스이다. The third address is a series of addresses of the first instruction and the second instruction does not correspond to the second address.

도 6는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 6 illustrates an instruction and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention.

도 6를 참조하면, E1 및 E2 단계는 제 1 인터페이스인 호스트 인터페이스는 호스트로부터 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는다. Referring to Figure 6, E1 and E2 stage is the host interface first interface is provided with the first instruction, the first address, second address and said address state separation instruction to separate the first and second address from the host. E1 단계를 참조하면, 어드레스 상태 분리 명령어는 제 1 어드레스 및 제 2 어드레스 사이에 제공된 제 1 어드레스 및 제 2 어드레스를 구분 할 수 있는 정보를 제공한다. Referring to step E1, the address state separate instruction provides information to identify the first address and the second address is provided between the first address and second address. E1 단계에서, 호스트로부터 제공받는 제 1 명령어는 제 1 어드레스에 대응된다. In the E1 phase, a first command receiving from the host corresponds to the first address.

도 6를 참조하면, 제 1 명령어는 리드 또는 이레이즈 명령어이고, 제 2 어드레스를 제공받은 후에, 호스트 인터페이스는 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 제 2 어드레스, 어드레스 상태 분리 명령어 및, 제 3 어드레스를 제공받는다. Referring to Figure 6, the first command is a read or erase instruction, after that receive a second address, the host interface being provided a second command corresponding to a second address, a second address, the address state separation of commands, , it receives a third address. 제 3 어드레스는 제 1 명령어 및 제 2 명령어에 대응되지 않고, 제 2 어드레스와 연속된 어드레스이다. The third address is a series of addresses of the first instruction and the second instruction does not correspond to the second address.

도 7 호스트 인터페이스는 제 2 명령어 제공시에는 별도의 대응되는 제 2 어드레스를 제공받지 않고, 제 1 명령어 수신시에 제공된 제 2 어드레스를 사용하여, 제 2 명령어 동작을 수행한다. When the host interface 7 provides a second command is without providing a second address that is separate correspondence, using the second address is provided during the first reception command and the second performs the instruction operation.

도 6의 E2 단계를 참조하면, 컨트롤러는 마이크로프로세서의 제어 하에, 제 1 명령어를 디코딩하고, 제 1 어드레스를 비휘발성 메모리의 블락 및 페이지 어드레스로 맵핑하여, 제 1 명령어가 비휘발성 메모리 장치에서 수행될 수 있도록 제어한다. Referring to E2 stage of Figure 6, the controller, under the control of the microprocessor, decodes the first instruction, to map the first address to the block and page addresses of the nonvolatile memory, the first instruction is performed on the non-volatile memory device and controls so that it can be.

도 6의 E2 단계를 참조하면, 마이크로프로세서는 어드레스 상태 분리 명령어를 참조하여, 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. Referring to step E2 of Figure 6, the microprocessor with reference to the address state separate command, and determines the correlation of the second address and the first address. 또한, 제 1 인터페이스는 제 2 어드레스와 대응되는 제 2 명령어를 제 2 어드레스 수신 후에 제공받는다. In addition, the first interface is provided with the second instruction corresponding to the first address after receiving the second address. 도 6을 참조하면, 제 1 및 제 2 명령어는 리드 또는 이레이즈 명령어가 될 수 있다. 6, the first and second instructions may be a read or erase command. 제 1 어드레스와 제 2 어드레스의 상관 관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 여부를 판단하는 것이다. Correlation of the first address and the second address is to determine whether the first instruction and the second instruction perform the same time at the first address and second address. 따라서, 마이크로프로세서가 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정한 결과를 참조하여, 제 1 명령어 수행을 제 2 명령어를 제공 받은 후에 수행하여, 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행 될 수 있도록 제어할 수 있다. Thus, with reference to the result of the microprocessor determines the correlation of the first address and the second address, the first to perform the command execution after that receive a second command, the first command and the second command is the first address and the in the second address it can be controlled to be performed at the same time.

도 7는 본 발명의 다른 실시예에 따른 호스트로부터 메모리 컨트롤러에 제공되는 명령어 및 어드레스 전송 순서를 도시하고 있다. Figure 7 illustrates an instruction and an address transfer sequence is provided to the memory controller from the host in accordance with another embodiment of the present invention.

도 7를 참조하면, F2 및 F2 단계는 제 1 인터페이스인 호스트 인터페이스는 호스트로부터 제 1 명령어, 제 1 어드레스, 제 2 어드레스 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는다. Referring to Figure 7, F2, and F2 is a step of the host interface first interface is provided with the first instruction, the first address, second address and said address state separation instruction to separate the first and second address from the host. F2 단계를 참조하면, 어드레스 상태 분리 명령어는 제 1 어드레스 및 제 2 어드레스 사이에 제공된 제 1 어드레스 및 제 2 어드레스를 구분 할 수 있는 정보를 제공한다. Referring to step F2, the address state separate instruction provides information to identify the first address and the second address is provided between the first address and second address. F2 단계에서, 호스트로부터 제공받는 제 1 명령어는 제 1 어드레스에 대응된다. In Step F2, a first command receiving from the host corresponds to the first address.

도 7를 참조하면, 제 1 명령어는 리드 또는 이레이즈 명령어이고, 제 2 어드레스를 제공받은 후에, 호스트 인터페이스는 제 2 어드레스에 대응되는 제 2 명령어를 제공받고, 어드레스 상태 분리 명령어 및, 제 3 어드레스를 제공받는다. Referring to Figure 7, the first command is the read or erase command, and then supplied to the second address, the host interface being provided a second command corresponding to a second address, the address state separation of instructions and the third address to receive offers. 제 3 어드레스는 제 1 명령어 및 제 2 명령어에 대응되지 않고, 제 2 어드레스와 연속된 어드레스이다. The third address is a series of addresses of the first instruction and the second instruction does not correspond to the second address.

도 7을 참조하면, 호스트 인터페이스는 제 2 명령어 제공시에는 별도의 대응되는 제 2 어드레스를 제공받지 않고, 제 1 명령어 수신시에 제공된 제 2 어드레스를 사용하여, 제 2 명령어 동작을 수행한다. 7, the host interface is provided when the second instruction is without providing a second address that is separate correspondence, using the second address is provided during the first command received, it performs a second instruction operation.

도 7의 F2 단계를 참조하면, 컨트롤러는 마이크로프로세서의 제어 하에, 제 1 명령어를 디코딩하고, 제 1 어드레스를 비휘발성 메모리의 블락 및 페이지 어드레스로 맵핑하여, 제 1 명령어가 비휘발성 메모리 장치에서 수행될 수 있도록 제어한다. Referring to F2 step of Figure 7, the controller under the control of the microprocessor, decodes the first instruction, to map the first address to the block and page addresses of the nonvolatile memory, the first instruction is performed on the non-volatile memory device and controls so that it can be.

도 7의 F2 단계를 참조하면, 마이크로프로세서는 어드레스 상태 분리 명령어를 참조하여, 제 2 어드레스와 제 1 어드레스의 상관 관계를 결정한다. Referring to Step F2 of FIG. 7, the microprocessor with reference to the address state separate command, and determines the correlation of the second address and the first address. 또한, 제 1 인터페이스는 제 2 어드레스와 대응되는 제 2 명령어를 제 2 어드레스 수신 후에 제공받는다. In addition, the first interface is provided with the second instruction corresponding to the first address after receiving the second address. 도 7을 참조하면, 제 1 및 제 2 명령어는 리드 또는 이레이즈 명령어가 될 수 있다. 7, the first and second instructions may be a read or erase command. 제 1 어드레스와 제 2 어드레스의 상관 관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는 여부를 판단하는 것이다. Correlation of the first address and the second address is to determine whether the first instruction and the second instruction perform the same time at the first address and second address. 따라서, 마이크로프로세서가 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정한 결과를 참조하여, 제 1 명령어 수행을 제 2 명령어를 제공 받은 후에 수행하여, 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행 될 수 있도록 제어할 수 있다. Thus, with reference to the result of the microprocessor determines the correlation of the first address and the second address, the first to perform the command execution after that receive a second command, the first command and the second command is the first address and the in the second address it can be controlled to be performed at the same time.

도 8는 본 발명의 실시 예에 따른 메모리 컨트롤러(15000) 및 비휘발성 메모리 장치(16000)를 포함하는 전자 장치(10000)의 블록도를 나타낸다. Figure 8 shows a block diagram of an electronic device (000) including a memory controller (7000) and non-volatile memory device (16,000) according to an embodiment of the invention.

도 8를 참조하면, 이동 전화기(cellular phone), 스마트 폰(smart phone), 또는 태블릿(tablet) PC와 같은 전자 장치(10000)는 플래시 메모리 장치로 구현될 수 있는 비휘발성 메모리 장치(16000)와, 비휘발성 메모리 장치(16000)의 동작을 제어할 수 있는 메모리 컨트롤러(15000)를 포함할 수 있다. Referring to Figure 8, a mobile phone (cellular phone), smart phones (smart phone), or a tablet (tablet) PC and the electronic device (000) may be implemented as a Flash memory device a non-volatile memory device (16000), such as and it may include a memory controller (7000) to control the operation of the non-volatile memory device (16000).

비휘발성 메모리 장치(16000)는 도 1 및 도 2에서 도시한 비휘발성 메모리 장치를 의미할 수 있다. Non-volatile memory device (16 000) may refer to a non-volatile memory device shown in Figs.

메모리 컨트롤러(15000)는 전자 장치의 전반적인 동작을 제어하는 프로세서(11000)에 의하여 제어된다. A memory controller (7000) is controlled by a processor (11000) for controlling an overall operation of the electronic device.

비휘발성 메모리 장치(16000)에 저장된 데이터는 프로세서(11000)의 제어에 따라 동작하는 메모리 컨트롤러(15000)의 제어에 따라 디스플레이(13000)를 통하여 디스플레이될 수 있다. Data stored in non-volatile memory device (16 000) may be displayed via a display (13,000) according to the control of the memory controller (7000) to operate according to the control of the processor (11,000).

메모리 컨트롤러(15000)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치(16000)에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. A memory controller (7000) provides a second command corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host decoding the received first interface and the first command, and map the first address, and by using the the decoded first instruction mapping a first address and controls to be carried out in non-volatile memory device (16 000), an address state separation instruction see to, a microprocessor for determining a correlation of the first address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

무선 송수신기(12000)는 안테나(ANT)를 통하여 무선 신호를 주거나 받을 수 있다. The wireless transceiver (12,000) can be jugeona a radio signal via the antenna (ANT). 예컨대, 무선 송수신기(12000)는 안테나(ANT)를 통하여 수신된 무선 신호를 프로세서(11000)가 처리할 수 있는 신호로 변환할 수 있다. For example, the wireless transceiver (12,000) is configured to convert the radio signal received through an antenna (ANT) to a signal that can be a processor (11000) treatment. 따라서 프로세서(11000)는 무선 송수신기(12000)로부터 출력된 신호를 처리하고, 처리된 신호를 메모리 컨트롤러(15000)를 통하여 비휘발성 메모리 장치(16000)에 저장하거나 또는 디스플레이(13000)를 통하여 디스플레이할 수 있다. Therefore, the processor (11,000) is capable of displaying through the store or display (13,000) in non-volatile memory device (16,000) for signal processing, and processing a signal output from the wireless transceiver (12,000) through the memory controller (7000) have.

무선 송수신기(12000)는 프로세서(11000)로부터 출력된 신호를 무선 신호로 변환하고, 변환된 무선 신호를 안테나(ANT)를 통하여 외부로 출력할 수 있다. The wireless transceiver (12,000) can output a radio signal converted to the signal output from the processor (11,000) to a radio signal, and convert to the outside through the antenna (ANT).

입력 장치(14000)는 프로세서(11000)의 동작을 제어하기 위한 제어 신호 또는 프로세서(11000)에 의하여 처리될 데이터를 입력할 수 있는 장치로서, 터치 패드 (touch pad)와 컴퓨터 마우스(computer mouse)와 같은 포인팅 장치(pointing device), 키패드(keypad), 또는 키보드로 구현될 수 있다. An input device (14000) is a device that can input data to be processed by a control signal or a processor (11000) for controlling the operation of a processor (11000), a touch pad (touch pad) and a computer mouse (computer mouse) and such as a pointing device (pointing device), it may be implemented in a keypad (keypad), or a keyboard.

프로세서(11000)는 비휘발성 메모리 장치(16000)로부터 출력된 데이터, 무선 송수신기(12000)로부터 출력된 무선 신호, 또는 입력 장치(14000)로부터 출력된 데이터가 디스플레이(13000)를 통하여 디스플레이될 수 있도록 디스플레이(13000)를 제어할 수 있다. Processor (11000) is displayed to the data, the data output from the radio signal, or an input device (14000) output from the wireless transceiver (12,000) outputted from the non-volatile memory device (16 000) may be displayed via a display (13,000) it is possible to control (13,000).

도 9은 본 발명의 다른 실시 예에 따른 메모리 컨트롤러(24000)및 비휘발성 메모리 장치(25000)를 포함하는 전자 장치(20000)의 블록도를 나타낸다. Figure 9 shows a block diagram of an electronic device (000) including a memory controller (24,000) and non-volatile memory device (25,000) according to another embodiment of the present invention.

도 9을 참조하면, PC(personal computer), 태블릿 컴퓨터(tablet computer), 넷-북(net-book), e-리더(e-reader), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 또는 MP4 플레이어와 같은 데이터 처리 장치로 구현될 수 있는 전자 장치(20000)는 플래시 메모리 장치와 같은 비휘발성 메모리 장치(25000)와, 비휘발성 메모리 장치(25000)의 동작을 제어할 수 있는 메모리 컨트롤러(24000)를 포함한다. Referring to Figure 9, PC (personal computer), a tablet computer (tablet computer), four-drum (net-book), e- reader (e-reader), (personal digital assistant) PDA, PMP (portable multimedia player) , MP3 player, or electronic device (000), which may be implemented as a data processing device, such as a MP4 player can control the operation of the non-volatile memory device (25 000), a non-volatile memory device (25 000), such as a flash memory device which includes a memory controller (24000).

비휘발성 메모리 장치(25000)는 도 1 및 도 2에서 도시한 비휘발성 메모리 장치를 의미할 수 있다. Non-volatile memory device (25 000) may refer to a non-volatile memory device shown in Figs.

전자 장치(20000)는 전자 장치(20000)의 전반적인 동작을 제어하기 위한 프로세서(21000)를 포함할 수 있다. Electronic device (000) may include a processor (21000) for controlling an overall operation of the electronic device (000). 메모리 컨트롤러(24000)는 프로세서(21000)에 의하여 제어된다. The memory controller (24,000) is controlled by a processor (21000).

메모리 컨트롤러(24000)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치(25000)에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller (24,000) provides the second instruction corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host decoding the received first interface and the first command, and map the first address, and by using the the decoded first instruction mapping a first address and controls to be carried out in non-volatile memory device (25 000), an address state separation instruction see to, a microprocessor for determining a correlation of the first address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

프로세서(21000)는 입력 장치(22000)에 의하여 발생한 입력 신호에 따라 비휘발성 메모리 장치에 저장된 데이터를 디스플레이를 통하여 디스플레이할 수 있다. A processor (21 000) may be displayed via the display data stored in non-volatile memory device according to an input signal generated by the input device (22000). 예컨대, 입력 장치(22000)는 터치 패드 또는 컴퓨터 마우스와 같은 포인팅 장치, 키패드, 또는 키보드로 구현될 수 있다. For example, the input unit 22000 may be implemented with a pointing device, keypad or keyboard, such as a touch pad, or computer mouse.

도 10는 본 발명의 또 다른 실시 예에 따른 비휘발성 메모리 장치(34000)를 포함하는 전자 장치(30000)의 블록도를 나타낸다. Figure 10 shows a block diagram of an electronic device (30,000) comprising a non-volatile memory device (34,000) according to still another embodiment of the present invention.

도 10를 참조하면, 전자 장치(30000)는 카드 인터페이스(31000), 메모리 컨트롤러(32000), 및 비휘발성 메모리 장치(34000), 예컨대 플래시 메모리 장치를 포함한다. Referring to Figure 10, the electronic device (30,000) comprises a card interface (31000), the memory controller (32000), and non-volatile memory device (34,000), such as a flash memory device.

전자 장치(30000)는 카드 인터페이스(31000)를 통하여 호스트(HOST)와 데이터를 주거나 받을 수 있다. Electronic device (30000) may be obtained via a card interface (31000) jugeona a host (HOST), and data. 실시 예에 따라, 카드 인터페이스(31000)는 SD(secure digital) 카드 인터페이스 또는 MMC(multi-media card) 인터페이스일 수 있으나 이에 한정되는 것은 아니다. Depending on the embodiment, the card interface (31000) is a SD (secure digital) may be an interface card or MMC (multi-media card) interface, but is not limited to such. 카드 인터페이스(31000)는 전자 장치(30000)와 통신할 수 있는 호스트(HOST)의 통신 프로토콜에 따라 호스트(HOST)와 메모리 컨트롤러(32000) 사이에서 데이터 교환을 인터페이스할 수 있다. Card Interface (31000) may interface to exchange data between the host (HOST) and the memory controller (32000) in accordance with the communication protocol on the host (HOST) to communicate with the electronic device (30000).

메모리 컨트롤러(32000)는 전자 장치(30000)의 전반적인 동작을 제어하며, 카드 인터페이스(31000)와 비휘발성 메모리 장치(34000) 사이에서 데이터의 교환을 제어할 수 있다. The memory controller (32,000) controls the overall operation of the electronic device (30,000), it is possible to control the exchange of data between a card interface (31000) and the non-volatile memory device (34000). 또한 메모리 컨트롤러(32000)의 버퍼 메모리(325)는 카드 인터페이스(31000)와 비휘발성 메모리 장치(34000) 사이에서 주고받는 데이터를 버퍼링할 수 있다. In addition, the buffer memory 325 of the memory controller (32 000) may buffer the data transferred between the card interface (31000) and the non-volatile memory device (34000).

메모리 컨트롤러(32000)는 데이터 버스(DATA) 및 어드레스 버스(ADDRESS)를 통하여 카드 인터페이스(31000)와 비휘발성 메모리 장치(34000)와 접속된다. The memory controller (32,000) is connected to the data bus (DATA) and the address bus interface card through the (ADDRESS) (31000) and the non-volatile memory device (34000). 실시 예에 따라 메모리 컨트롤러(32000)는 카드 인터페이스(31000)로부터 리드 또는 라이트하고자 하는 데이터의 어드레스를 어드레스 버스(ADDRESS)를 통하여 수신하고 이를 비휘발성 메모리 장치(34000)로 전송한다. According to an embodiment the memory controller (32000) is received via the address bus (ADDRESS) the address of the data to be read or write from the card interface (31000) and sends it to the non-volatile memory device (34000).

또한, 메모리 컨트롤러(32000)는 카드 인터페이스(31000) 또는 비휘발성 메모리 장치(34000) 각각에 접속된 데이터 버스(DATA)를 통하여 리드 또는 라이트하고자 하는 데이터를 수신하거나 전송한다. Moreover, the memory controller (32 000) receives or transmits the data to be read or write through the data bus (DATA) connected to the respective interface card (31000) or non-volatile memory device (34000).

메모리 컨트롤러(32000)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치(34000)에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller (32000) provides a second command corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host decoding the received first interface and the first command, and map the first address, and by using the the decoded first instruction mapping a first address and controls to be carried out in non-volatile memory device (34,000), an address state separation instruction see to, a microprocessor for determining a correlation of the first address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

비휘발성 메모리 장치(34000)는 도 1 및 도 2에서 도시한 비휘발성 메모리 장치를 의미할 수 있다. Non-volatile memory device (34,000) may refer to a non-volatile memory device shown in Figs.

도 10의 전자 장치(30000)가 PC, 태블릿 PC, 디지털 카메라, 디지털 오디오 플레이어, 이동 전화기, 콘솔 비디오 게임 하드웨어, 또는 디지털 셋-탑 박스와 같은 호스트(HOST)에 접속될 때, 호스트(HOST)는 카드 인터페이스(31000)와 메모리 컨트롤러(32000)를 통하여 비휘발성 메모리 장치(34000)에 저장된 데이터를 주거나 받을 수 있다. When connected to a host (HOST), such as a top box, the host (HOST) - an electronic device (30000) 10 is a PC, Tablet PC, digital cameras, digital audio players, mobile phones, console video game hardware, or digital set It may be obtained via a card interface (31000) and a memory controller (32000) jugeona data stored in non-volatile memory device (34000).

도 11은 본 발명의 또 다른 실시 예에 따른 메모리 컨트롤러 및 비휘발성 메모리 장치를 포함하는 전자 장치의 블록도를 나타낸다. 11 shows a block diagram of an electronic device including a memory controller and the nonvolatile memory device according to still another embodiment of the present invention.

도 11을 참조하면, 전자 장치(40000)는 플래시 메모리 장치와 같은 비휘발성 메모리 장치(45000), 비휘발성 메모리 장치(45000)의 데이터 처리 동작을 제어하기 위한 메모리 컨트롤러(44000), 및 전자 장치(40000)의 전반적인 동작을 제어할 수 있는 이미지 센서(41000)를 포함한다. 11, the electronic device (40,000) includes a memory controller (44000), and an electronic device for controlling the data processing operation of the non-volatile memory device (45000), a non-volatile memory device (45000) and a flash memory device ( 40000) comprises the image sensor (41 000) capable of controlling an overall operation.

비휘발성 메모리 장치(45000)는 도 1 및 도 2에서 도시한 비휘발성 메모리 장치를 의미할 수 있다. Non-volatile memory device (45000) may refer to a non-volatile memory device shown in Figs.

메모리 컨트롤러(44000)는 호스트(41000)로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치(45000)에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller (44000) of the second corresponding to the first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host (41000) decoding the first interface and the first instruction that receives a command and map the first address, and the control to be performed on a non-volatile memory device (45000), using the decoded first instruction is mapped to the first address, and the address It refers to the state separation command to, and a microprocessor for determining a correlation of the first address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

또한, 메모리 컨트롤러(44000)는 도 1에서 도시한 씨드 컨트롤러(1260)을 포함한 메모리 컨트롤러를 의미할 수 있다. Moreover, the memory controller (44000) may refer to a memory controller, including the seed controller 1260 shown in FIG. 메모리 컨트롤러(44000)는 제 1 파라미터를 사용하여 제 1 시클릭 시프트를 수행하기 위한 제 1 레지스터 블록, 제 2 파라미터를 사용하여 제 2 시클릭 시프트를 수행하기 위한 제 2 레지스터 블록, 및 제 1 및 제 2 레지스터 블록에서 수행된 시클릭 시프트 결과를 사용하여 씨드를 형성하는 씨드 생성 블록을 포함하고, 생성된 씨드를 사용하여 오리지널 데이터를 랜덤데이터로 랜덤화 할 수 있다. The memory controller (44,000) includes a first register block, and the second register block for using the second parameters to perform a second cyclic shift to use the first parameter to perform a first cyclic shift, and the first and 2 by using the cyclic shift performed on the result register block included in the seed generation blocks forming the seed, use of the resulting seed is possible to randomize the original data with random data.

전자 장치(40000)의 이미지 센서(42000)는 광학 신호를 디지털 신호로 변환하고, 변환된 디지털 신호는 이미지 센서(41000)의 제어하에 비휘발성 메모리 장치(45000)에 저장되거나 또는 디스플레이(43000)를 통하여 디스플레이된다. An image sensor (42,000) of the electronic device (40000) converts the optical signal into a digital signal, the digital signal is stored in non-volatile memory device (45 000), or display (43000) under the control of the image sensor (41000) It is displayed through. 또한, 비휘발성 메모리 장치(45000)에 저장된 디지털 신호는 이미지 센서(41000)의 제어하에 디스플레이(43000)를 통하여 디스플레이된다. In addition, the digital signal stored in the non-volatile memory device (45,000) is displayed via the display (43000) under the control of the image sensor (41000).

도 12은 본 발명의 또 다른 실시 예에 따른 메모리 컨트롤러(61000) 및 비휘발성 메모리 장치(62000A, 62000B, 62000C)를 포함하는 전자 장치(60000)의 블록도를 나타낸다. Figure 12 shows a block diagram of an electronic device (60,000) comprises a memory controller (61000) and non-volatile memory device (62000A, 62000B, 62000C) in accordance with another embodiment of the present invention.

도 12을 참조하면, 전자 장치(60000)는 SSD(solid state drive)와 같은 데이터 저장 장치로 구현될 수 있다. Referring to Figure 12, an electronic device (60,000) may be implemented as a data storage device, such as a SSD (solid state drive).

전자 장치(60000)는 다수개의 비휘발성 메모리 장치들(62000A, 62000B, 62000C)과, 다수개의 비휘발성 메모리 장치들(62000A, 62000B, 62000C) 각각의 데이터 처리 동작을 제어할 수 있는 메모리 컨트롤러(61000)를 포함할 수 있다. The electronic device (60,000) is a plurality of non-volatile memory device (62000A, 62000B, 62000C) and a plurality of non-volatile memory device (62000A, 62000B, 62000C) memory that can control the respective data processing operation controller (61000 ) may include.

전자 장치(60000)는 메모리 시스템 또는 메모리 모듈로 구현될 수 있다. The electronic device (60,000) can be implemented in a memory system or a memory module.

비휘발성 메모리 장치(62000A, 62000B, 62000C)는 도 1 및 도 7에서 도시한 비휘발성 메모리 장치를 의미할 수 있다. Non-volatile memory device (62000A, 62000B, 62000C) may refer to a non-volatile memory device shown in Fig. 1 and Fig. 비휘발성 메모리 장치(62000A, 62000B, 62000C)는 랜덤 데이터를 저장 할 수 있다. Non-volatile memory device (62000A, 62000B, 62000C) may store random data.

실시 예에 따라 메모리 컨트롤러(61000)는 전자 장치(60000)의 내부 또는 외부에 구현될 수 있다. According to an embodiment the memory controller (61000) may be implemented inside or outside of the electronic device (60000). 메모리 컨트롤러(61000)는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치(62000A, 62000B, 62000C)에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller (61000) provides a second command corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host decoding the received first interface and the first command, and map the first address, and by using the decoded first instruction is mapped to the first address, and controlled to perform in a non-volatile memory device (62000A, 62000B, 62000C), refer to the address state to disconnect command, and a microprocessor for determining a correlation of the first address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

도 13는 도 12에 도시된 전자 장치를 포함하는 데이터 처리 시스템의 블록도를 나타낸다. Figure 13 shows a block diagram of a data processing system comprising the electronic device shown in Fig.

도 12(도 22)과 도 13(도 23)을 참조하면, RAID(redundant array of independent disks) 시스템으로 구현될 수 있는 데이터 저장 장치(70000)는 RAID 컨트롤러(71000)와, 다수개의 메모리 시스템들(72000A, 72999B ~72000N; N는 자연수)을 포함할 수 있다. When Figure 12 (Fig. 22) and Fig 13 with reference to (23), the RAID (redundant array of independent disks), the data storage device (70000) that can be implemented in a system, the RAID controller (71000), and a plurality of memory systems It may comprise; (72000A, 72999B ~ 72000N N is a natural number).

다수개의 메모리 시스템들(72000A, 72999B ~72000N) 각각은 도 19에 도시된 전자 장치 (700)일 수 있다. A plurality of memory system (72000A, 72999B ~ 72000N) each of which may be the electronic device 700 shown in Fig. 다수개의 메모리 시스템들(72000A, 72999B ~72000N)은 RAID 어레이를 구성할 수 있다. A plurality of memory system (72000A, 72999B ~ 72000N) may configure a RAID array. 데이터 저장 장치(70000)는 PC(personal computer) 또는 SSD로 구현될 수 있다. A data storage device (70000) may be implemented by a PC (personal computer) or SSD.

프로그램 동작 동안, RAID 컨트롤러(71000)는 호스트로부터 출력된 프로그램 데이터를 다수개의 RAID 레벨들 중에서 호스트로부터 출력된 RAID 레벨 정보에 기초하여 선택된 어느 하나의 RAID 레벨에 따라 다수개의 메모리 시스템들(72000A, 72999B ~72000N) 중에서 어느 하나의 메모리 시스템으로 출력할 수 있다. During the program operation, the RAID controller (71000) is a plurality of the memory system according to any one of the RAID level selected on the basis of the program data output from the host to the RAID level information outputted from the host in a plurality of RAID levels (72000A, 72999B from ~ 72000N) it can be output in any of the memory system.

또한, 리드 동작 동안, RAID 컨트롤러(71000)는 다수개의 RAID 레벨들 중에서 호스트로부터 출력된 RAID 레벨 정보에 기초하여 선택된 어느 하나의 RAID 레벨에 따라서 다수개의 메모리 시스템중(72000A, 72999B ~72000N)에서 어느 하나의 메모리 시스템으로부터 리드된 데이터를 호스트로 전송할 수 있다. Further, during the read operation, RAID controller (71000) is one in a plurality of RAID level of the RAID level information, any one of the plurality of memory systems according to the RAID level (72000A, 72999B ~ 72000N) selected on the basis of the output from the host It can transmit the data read from one memory to the host system.

다수개의 메모리 시스템 각각의(72000A, 72999B ~72000N) 메모리 컨트롤러는 도 1 및 도 2에서 도시한 메모리 컨트롤러를 의미할 수 있다. A plurality of memory each system (72000A, 72999B ~ 72000N) The memory controller may refer to a memory controller shown in Figs. 메모리 컨트롤러는 호스트로부터 제 1 명령어, 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스 및 제 1 명령어를 디코딩 하고, 제 1 어드레스를 맵핑하고, 디코딩된 제 1 명령어가 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치에서 수행하도록 제어하고, 어드레스 상태 분리 명령어를 참조하여, 제 1 어드레스와 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함한다. The memory controller receives the second instruction corresponding to a first instruction, the first address, second address and the first and the address state separate instruction and the second address to distinguish between the second address corresponding to the first command from the host first decoding the interface and the first command, and map the first address, and with reference to using a the decoded first instruction mapping a first address control so as to perform in a non-volatile memory device, the address state separation instruction, the first and a microprocessor for determining the correlation between the address and the second address. 그리고, 상관관계는 제 1 명령어 및 제 2 명령어가 제 1 어드레스 및 제 2 어드레스에서 동시에 수행하는지 여부를 판단한다. Then, the correlation will determine if the first command and the second command is performed at the same time the first address and second address.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. The present invention has been described for the embodiment shown in the drawings as it will be understood that s only, and those skilled in the art from available various modifications and equivalent other embodiments this being exemplary. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다. Therefore, the true technical protection scope of the invention as defined by the technical spirit of the appended claims registration.

한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. On the other hand, the invention has been shown and described with respect to specific embodiments, various modifications are possible within the limits that do not depart from the scope of the invention. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다. While the invention will be defined by the appended claims and equivalents of the invention as well as the claims below should not jeonghaejyeoseo limited to the embodiments described above ones.

1000: 전자 장치 1000: Electronic devices
1100: 비휘발성 메모리 시스템 1100: Non-volatile memory system
1200: 호스트 1200: Hosts

Claims (20)

  1. 호스트로부터 제 1 명령어, 상기 제 1 명령어에 대응되는 제 1 어드레스, 제 2 어드레스 및 상기 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어 및 상기 제 2 어드레스에 대응되는 제 2 명령어를 제공받는 제 1 인터페이스; Receiving a second command corresponding to a first instruction, the first address, second address and said first and said address state separation instruction to separate the second address and the second address corresponding to the first command from the host of claim first interface; And
    상기 제 1 명령어를 디코딩 하고, 상기 제 1 어드레스를 맵핑하고, 상기 디코딩된 제 1 명령어가 상기 맵핑된 제 1 어드레스를 사용하여 비휘발성 메모리 장치에서 수행하도록 제어하고, 상기 어드레스 상태 분리 명령어를 참조하여, 상기 제 1 어드레스와 상기 제 2 어드레스의 상관 관계를 결정하는 마이크로 프로세서를 포함하며, And decoding the first instruction, mapping the first address, and with reference to the above, using the decoded first instruction is the mapping the first address control so as to perform in a non-volatile memory device, the address state separation instruction , and a microprocessor for determining the correlation between said first address and said second address,
    상기 상관관계는 상기 제 1 명령어 및 상기 제 2 명령어가 상기 제 1 어드레스 및 상기 제 2 어드레스에서 동시에 수행하는지 여부를 판단하는 메모리 컨트롤러. The correlation memory controller for determining whether the first command and the second command is performed at the same time at the first address and the second address.
  2. 제1항에 있어서, According to claim 1,
    상기 제 1 인터페이스는 상기 호스트와 교신하는 호스트 인터페이스인 메모리 컨트롤러. Wherein the first interface includes a host interface of the memory controller in communication with the host.
  3. 제1항에 있어서, According to claim 1,
    상기 제 1 명령어는 리드 또는 이레이즈 명령어인 메모리 컨트롤러. The first command is the read or erase instruction of the memory controller.
  4. 제1항에 있어서, According to claim 1,
    상기 제 1 명령어는 프로그램 명령어고, 상기 제 1 인터페이스는 상기 제 1 명령어, 상기 제 2 어드레스 및 상기 제 1 명령어에 대응되고 프로그램 될 제 1 데이터 순서로 제공받는 메모리 컨트롤러. It said first instruction is said program instruction, the first interface of the first instruction, the second address and the second memory controller that receives a first data sequence corresponds to a first instruction and a program.
  5. 제 5항에 있어서, 6. The method of claim 5,
    상기 제 1 프로그램 명령어 수행시, 상기 제 2 어드레스 정보를 제 1 어드레스의 메타 데이터 영역에 프로그램 하는 메모리 컨트롤러. A memory controller for performing the program when the first program command, said second address information in the metadata area of ​​the first address.
  6. 제1항에 있어서, According to claim 1,
    상기 어드레스 상태 분리 명령어는 상기 제 1 어드레스와 상기 2어드레스 사이에 제공되는 메모리 컨트롤러. The address state separate instruction memory controller, provided between said first address and said second address.
  7. 제 1 항에 있어서, According to claim 1,
    상기 제 1 인터페이스는 상기 제 2 명령어를 제공받고, 제 3 어드레스를 순서대로 제공받는 메모리 컨트롤러. The first interface memory controller receives been provided with the second instruction, the third address in sequence.
  8. 제 7 항 있어서, In claim 7,
    상기 제 3 어드레스는 제 2 어드레스와 연속되며, 상기 제 1 명령어 및 상기 제 2 명령어에 대응되지 않는 메모리 컨트롤러. The third address is continuous with the second address, the first instruction, and the memory controller does not respond to the second command.
  9. 제 1항에 있어서, According to claim 1,
    상기 메모리 컨트롤러는 상기 디코딩된 제 1 명령어 및 상기 맵핑된 제 1 어드레스를 비휘발성 메모리 장치로 제공하는 메모리 인터페이스를 더 포함하는 메모리 컨트롤러. Said memory controller is a memory controller further comprising a memory interface for providing the decoded first instruction, and wherein the mapping the first address to the non-volatile memory device.
  10. 호스트; Host; And
    상기 호스트와 교신하고, 적어도 하나 이상의 비휘발성 메모리 장치를 제어하는 메모리 컨트롤러를 포함하는 전자 장치에 있어서, An electronic device comprising a memory controller for controlling the communication with the host, and at least one non-volatile memory device,
    상기 메모리 컨트롤러는, Said memory controller,
    상기 호스트와 연결되어 있으며, 제 1 명령어, 제 1 어드레스, 제 2 어드레스, 및 제 1 및 제 2 어드레스를 구분하는 어드레스 상태 분리 명령어를 제공받는 호스트 인터페이스; It is connected with the host, the first instruction, the first address, second address, and the first and the host receives the instruction address state separation that separates the second address interface;
    상기 제 1 명령어를 디코딩 하고, 상기 제 1 어드레스를 맵핑하며, 상기 제 1 어드레스와 상기 제 2 어드레스의 상관 관계를 판단하는 마이크로프로세서; Microprocessor, and mapping the first address decode of the first instruction, and determining the correlation between said first address and said second address; And
    상기 디코딩된 명령어 및 상기 맵핑된 어드레스를 제공하는 메모리 인터페이스를 포함하는 전자 장치. An electronic device comprising a memory interface to provide said decoded instructions and the mapped address.
  11. 제 10 항에 있어서, 11. The method of claim 10,
    상기 호스트 인터페이스는 상기 제 2 어드레스에 대응되는 제 2 명령어 그리고 상기 제 2 어드레스에 순차적인 어드레스인 제 3 어드레스를 제공받는 전자 장치. The host interface is an electronic device that receives a sequential address in the third address to the second instruction and the second address corresponding to the second address.
  12. 제 10 항에 있어서, 11. The method of claim 10,
    상기 어드레스 상태 분리 명령어는 상기 제 1 어드레스와 상기 제 2 어드레스 사이에 제공되는 전자 장치. The address state separation command electronic device provided between said first address and said second address.
  13. 제 10 항에 있어서, 11. The method of claim 10,
    상기 제 1 명령어는 프로그램 명령어인 전자 장치. The electronic device of the first instruction program instructions.
  14. 제 13 항에 있어서, 14. The method of claim 13,
    상기 제 2 어드레스가 제공된 후에, 상기 제 1 명령어에 대응되는 데이터가 제공되는 전자 장치. After that the second address is provided, the electronic device the data can be provided corresponding to the first instruction.
  15. 제 15 항에 있어서, 16. The method of claim 15,
    제 1 명령어를 수행하여, 프로그램 동작 수행시에, 상기 제 2 어드레스 정보를 메타 데이터영역이 프로그램하는 전자장치. By performing the first instruction, in the program operation is performed, the electronic device, the second address information, the meta data layer program.
  16. 제 10 항에 있어서, 11. The method of claim 10,
    상기 제 1 명령어는 이레이즈 또는 리드 명령어인 전자 장치. The first instruction, or erase the electronic device leads instruction.
  17. 호스트로부터, 제 1 프로그램 명령어, 제 1 어드레스, 제 2 어드레스, 및상기 제 1 및 제 2 어드레스 상태 분리 명령어를 수신하고, From the host, and receiving a first program command, the first address, second address, and the first and second address state separation instruction,
    상기 제 2 어드레스 및 상기 프로그램 명령어에 대응되는 데이터 순서로를 제공받으며, Receive the service to the second address and the data sequence corresponding to the program instructions,
    상기 제 1 프로그램 명령어를 비휘발성 메모리가 상기 제 1 어드레스에서 수행 할 수 있도록 제어하며, And controlling so that the first program commands the non-volatile memory can be performed in the first address,
    상기 제 2 어드레스와 대응되는 제 2 프로그램 명령어 및 제 3 어드레스를 제공받고, 상기 비휘발성 메모리가 상기 제 2 명령어를 상기 제 2 어드레스에서 수행하도록 제어하는 메모리 컨트롤러 동작방법. How the memory controller being operable to control provides a second program instruction, and a third address corresponding to the second address, the non-volatile memory to perform in the second address of the second instruction.
  18. 제 17 항에 있어서, 18. The method of claim 17,
    상기 제 1 프로그램 명령어를 디코딩하고, 상기 제 1 어드레스를 상기 비휘발성 메모리에 적합하도록 맵핑하는 것을 더 포함하는 메모리 컨트롤러 동작방법. The memory controller operates the method further comprises decoding the first program command and the mapping to conform to the non-volatile memory to the first address.
  19. 호스트로부터 제1 명령어, 제1 어드레스, 제2 어드레스를 제공받은 후, 제2 명령어와, 제3 어드레스를 제공받는 제1 인터페이스; From the host first instruction, the first address, after that receive a second address, the second instructions and the third address receiving a first interface; And
    상기 제1 명령어와 상기 제1 어드레스를 이용하여 제1 동작을 수행하고, 상기 제2 명령어와 상기 제2 어드레스를 이용하여 제2 동작을 수행하는 마이크로 프로세서를 포함하는 메모리 컨트롤러. A memory controller including a microprocessor for performing a first operation using the first command to the first address, and performs the second operation using the second instruction and the second address.
  20. 제 19 항에 있어서, 상기 제1 인터페이스는 상기 제1 어드레스와 상기 제2 어드레스를 구분하는 어드레스 분리 커맨드를 더 제공받는 메모리 컨트롤러. 20. The method of claim 19 wherein the first interface includes a memory controller that receives further provided an address command separation to separate the second address with the first address.
KR20120097254A 2012-09-03 2012-09-03 Memory controller and electronic device having the memory controller KR20140030733A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20120097254A KR20140030733A (en) 2012-09-03 2012-09-03 Memory controller and electronic device having the memory controller

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20120097254A KR20140030733A (en) 2012-09-03 2012-09-03 Memory controller and electronic device having the memory controller
US14016167 US9405673B2 (en) 2012-09-03 2013-09-02 Memory controller, and electronic device having the same and method for operating the same

Publications (1)

Publication Number Publication Date
KR20140030733A true true KR20140030733A (en) 2014-03-12

Family

ID=50189104

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20120097254A KR20140030733A (en) 2012-09-03 2012-09-03 Memory controller and electronic device having the memory controller

Country Status (2)

Country Link
US (1) US9405673B2 (en)
KR (1) KR20140030733A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160012299A (en) * 2014-07-23 2016-02-03 삼성전자주식회사 Storage device and operating method of storage device

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175891B1 (en) * 1997-04-23 2001-01-16 Micron Technology, Inc. System and method for assigning addresses to memory devices
US5822251A (en) * 1997-08-25 1998-10-13 Bit Microsystems, Inc. Expandable flash-memory mass-storage using shared buddy lines and intermediate flash-bus between device-specific buffers and flash-intelligent DMA controllers
US6182189B1 (en) * 1998-01-05 2001-01-30 Intel Corporation Method and apparatus for placing a memory in a read-while-write mode
JP3712567B2 (en) * 1999-07-23 2005-11-02 富士通株式会社 Storage device
KR100463197B1 (en) 2001-12-24 2004-12-23 삼성전자주식회사 Nand-type flash memory device with multi-page program, multi-page read, and multi-block erase operations
WO2003060722A1 (en) * 2002-01-09 2003-07-24 Renesas Technology Corp. Memory system and memory card
US6958940B2 (en) 2002-02-28 2005-10-25 Renesas Technology Corp. Nonvolatile semiconductor memory device capable of realizing optimized erasing operation in a memory array
KR100672992B1 (en) * 2005-01-04 2007-01-24 삼성전자주식회사 Operation method of semiconductor memory device
KR100694968B1 (en) 2005-06-30 2007-03-14 주식회사 하이닉스반도체 Non-volatile memory device and multi-page programming, reading and copyback programming method thereof
US7644224B2 (en) 2005-11-15 2010-01-05 Sandisk Il Ltd. Flash memory device and method
US7673111B2 (en) * 2005-12-23 2010-03-02 Intel Corporation Memory system with both single and consolidated commands
US7966469B2 (en) * 2006-08-14 2011-06-21 Qimonda Ag Memory system and method for operating a memory system
KR100837274B1 (en) 2006-08-28 2008-06-11 삼성전자주식회사 Flash memory device with automatic multi-page copyback function and block replacing method thereof
US7280398B1 (en) 2006-08-31 2007-10-09 Micron Technology, Inc. System and memory for sequential multi-plane page memory operations
KR100819102B1 (en) 2007-02-06 2008-04-03 삼성전자주식회사 Non-volatile semiconductor memory device with advanced multi page program operation
US7577059B2 (en) 2007-02-27 2009-08-18 Mosaid Technologies Incorporated Decoding control with address transition detection in page erase function
JP2008310841A (en) * 2007-06-12 2008-12-25 Panasonic Corp Semiconductor memory device and electronic device
KR100888823B1 (en) 2007-06-27 2009-03-17 삼성전자주식회사 Non-volatile memory system, and method of non-volatile memory system
WO2009094298A1 (en) 2008-01-25 2009-07-30 Rambus Inc. Multi-page parallel program flash memory
KR101684583B1 (en) 2008-09-03 2016-12-08 마벨 월드 트레이드 리미티드 A multi-programming data into the plane of a flash memory
US8370603B2 (en) 2008-12-23 2013-02-05 Apple Inc. Architecture for address mapping of managed non-volatile memory
US8543756B2 (en) * 2009-02-02 2013-09-24 Marvell World Trade Ltd. Solid-state drive command grouping
US8321647B2 (en) 2009-05-06 2012-11-27 Apple Inc. Multipage preparation commands for non-volatile memory systems
CA2802219A1 (en) 2010-07-21 2012-01-26 Mosaid Technologies Incorporated Multipage program scheme for flash memory
US20150095551A1 (en) * 2013-09-30 2015-04-02 Micron Technology, Inc. Volatile memory architecutre in non-volatile memory devices and related controllers
US9842630B2 (en) * 2013-10-16 2017-12-12 Rambus Inc. Memory component with adjustable core-to-interface data rate ratio

Also Published As

Publication number Publication date Type
US20140068161A1 (en) 2014-03-06 application
US9405673B2 (en) 2016-08-02 grant

Similar Documents

Publication Publication Date Title
US20140082456A1 (en) Data storage device with intermediate ecc stage
US20110191649A1 (en) Solid state drive and method of controlling an error thereof
US20100088467A1 (en) Memory device and operating method of memory device
US20070300130A1 (en) Method of Error Correction Coding for Multiple-Sector Pages in Flash Memory Devices
US20130166825A1 (en) Method Of Controlling Non-Volatile Memory, Non-Volatile Memory Controller Therefor, And Memory System Including The Same
US20120151294A1 (en) Method and apparatus for correcting errors in memory device
US20120272123A1 (en) Data writing method, memory controller and memory storage apparatus
US20100211834A1 (en) Data integrity in memory controllers and methods
US20120265927A1 (en) Method of operating memory controller, memory controller, memory device and memory system
US20130097362A1 (en) Data writing method, and memory controller and memory storage apparatus using the same
US20120066568A1 (en) Storage device, electronic device, and data error correction method
US20110125975A1 (en) Interleaving apparatuses and memory controllers having the same
US20110231732A1 (en) Error correcting method, and memory controller and memory storage system using the same
US20120260149A1 (en) Dummy data padding and error code correcting memory controller, data processing method thereof, and memory system including the same
US20130179752A1 (en) Storage device and nonvolatile memory device and operating method thereof
US20080046778A1 (en) Memory controller and semiconductor memory device
US20130246732A1 (en) Method of programming memory cells and reading data, memory controller and memory storage apparatus using the same
US20110216587A1 (en) Nonvolatile memory device, methods of programing the nonvolatile memory device and memory system including the nonvolatile memory device
US20100268869A1 (en) Memory system comprising nonvolatile memory device and controller
US20140281174A1 (en) Non-volatile multi-level cell memory system and method of performing adaptive data back-up in the system
US20120173955A1 (en) Data writing and reading method, and memory controller and memory storage apparatus using the same
US8489942B1 (en) Memory management method, and memory controller and memory storage device using the same
US20130227346A1 (en) Controlling nonvolatile memory device and nonvolatile memory system
US20100262818A1 (en) Computer system and method of booting the same
US8055842B1 (en) Using raid with large sector size ATA mass storage devices

Legal Events

Date Code Title Description
A201 Request for examination