KR20160017580A - Storage device and controlling method thereof - Google Patents
Storage device and controlling method thereof Download PDFInfo
- Publication number
- KR20160017580A KR20160017580A KR1020140126730A KR20140126730A KR20160017580A KR 20160017580 A KR20160017580 A KR 20160017580A KR 1020140126730 A KR1020140126730 A KR 1020140126730A KR 20140126730 A KR20140126730 A KR 20140126730A KR 20160017580 A KR20160017580 A KR 20160017580A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- nonvolatile memory
- command
- memory controller
- temperature
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
Description
본 발명은 스토리지 장치에 관한 것으로, 더 상세하게는 불휘발성 메모리를 포함하는 스토리지 장치 및 이의 제어 방법에 관한 것이다.The present invention relates to a storage apparatus, and more particularly, to a storage apparatus including a nonvolatile memory and a control method thereof.
반도체 메모리(semiconductor memory)는 실리콘(Si, silicon), 게르마늄(Ge, Germanium), 비소 갈륨(GaAs, gallium arsenide), 인화인듐(InP, indium phospide) 등과 같은 반도체를 이용하여 구현되는 기억장치이다. 반도체 메모리는 크게 휘발성 메모리(Volatile memory)와 불휘발성 메모리(Nonvolatile memory)로 구분된다.A semiconductor memory is a memory device implemented using semiconductors such as silicon (Si), germanium (Ge), gallium arsenide (GaAs), indium phosphide (InP) Semiconductor memory is divided into volatile memory and nonvolatile memory.
휘발성 메모리는 전원 공급이 차단되면 저장하고 있던 데이터를 소실하는 메모리 장치이다. 휘발성 메모리는 SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM) 등을 포함한다. 불휘발성 메모리는 전원 공급이 차단되어도 저장하고 있던 데이터를 유지하는 메모리 장치이다. 불휘발성 메모리는 ROM (Read Only Memory), PROM (Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM), 플래시 메모리, PRAM (Phase-change RAM), MRAM (Magnetic RAM), RRAM (Resistive RAM), FRAM (Ferroelectric RAM) 등을 포함한다.The volatile memory is a memory device which loses data stored when the power supply is interrupted. The volatile memory includes SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM), and the like. A nonvolatile memory is a memory device that retains data that has been stored even when the power supply is turned off. The non-volatile memory may be a ROM, a PROM, an EPROM, an EEPROM, a flash memory, a phase-change RAM (PRAM), a magnetic RAM (MRAM) RRAM (Resistive RAM), FRAM (Ferroelectric RAM), and the like.
일반적으로, 불휘발성 메모리는 동작의 신뢰성 확보를 위해 어떠한 환경에서도 동작할 수 있는 동작 속도로 설정된다. 따라서, 불휘발성 메모리의 동작 속도는 최악의 경우를 고려하여 설정된다. In general, a nonvolatile memory is set to an operation speed that can operate in any environment in order to ensure reliability of operation. Therefore, the operating speed of the nonvolatile memory is set in consideration of the worst case.
본 발명의 목적은 동작 속도가 향상된 스토리지 장치 및 그 제어 방법을 제공하는 데 있다. SUMMARY OF THE INVENTION An object of the present invention is to provide a storage apparatus and a control method thereof having an improved operation speed.
본 발명의 실시 예에 따른 스토리지 장치는 읽기, 쓰기, 및 소거를 수행하는 불휘발성 메모리 및 메모리 컨트롤러를 포함한다. 상기 메모리 컨트롤러는 전압 신호를 상기 불휘발성 메모리와 교환하거나 외부로부터 수신하는 동작 모드로 동작할 수 있다. 상기 메모리 컨트롤러가 상기 동작 모드로 동작시, 메모리 컨트롤러는 상기 전압 신호의 전압 레벨 및 상기 불휘발성 메모리의 온도에 기초하여 상기 불휘발성 메모리의 동작 주파수를 설정할 수 있다. A storage apparatus according to an embodiment of the present invention includes a nonvolatile memory and a memory controller that perform read, write, and erase operations. The memory controller may operate in an operation mode for exchanging a voltage signal with the nonvolatile memory or receiving the voltage signal from the outside. When the memory controller operates in the operation mode, the memory controller can set the operating frequency of the nonvolatile memory based on the voltage level of the voltage signal and the temperature of the nonvolatile memory.
상기 메모리 컨트롤러는 상기 메모리 컨트롤러는 상기 전압 신호의 전압 레벨이 기준 전압 레벨에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정할 수 있다. The memory controller may set the operating frequency of the nonvolatile memory to be higher as the voltage level of the voltage signal approaches the reference voltage level.
상기 메모리 컨트롤러는 상기 온도가 상온에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정할 수 있다. The memory controller can set the operating frequency of the nonvolatile memory to be higher as the temperature approaches the room temperature.
상기 스토리지 장치는 전압 측정부 및 온도 측정부를 더 포함할 수 있다. 상기 전압 측정부는 상기 전압 신호의 실제 전압 레벨을 측정할 수 있다. 상기 온도 측정부는 상기 온도를 측정할 수 있다. The storage device may further include a voltage measuring unit and a temperature measuring unit. The voltage measuring unit may measure an actual voltage level of the voltage signal. The temperature measuring unit may measure the temperature.
상기 메모리 컨트롤러는 메모리 인터페이스를 포함할 수 있다. 상기 메모리 인터페이스는 상기 전압 신호의 전압 레벨 및 상기 온도를 근거로 설정된 동작 주파수를 갖는 제어 신호를 상기 불휘발성 메모리에 출력할 수 있다. The memory controller may include a memory interface. The memory interface may output a control signal having an operating frequency set based on the voltage level of the voltage signal and the temperature to the nonvolatile memory.
상기 설정된 동작 주파수를 갖는 제어 신호는 쓰기 시에 데이터 스트로브 신호이고, 읽기 시에 읽기 인에이블 신호일 수 있다. The control signal having the set operating frequency may be a data strobe signal at the time of writing and a read enable signal at the time of reading.
상기 메모리 컨트롤러는 상기 불휘발성 메모리에 제1 커맨드를 출력하고, 상기 제1 커맨드가 쓰기 명령인지 읽기 명령인지에 따라 상기 불휘발성 메모리의 동작 주파수를 설정할 수 있다. The memory controller outputs a first command to the nonvolatile memory, and can set the operating frequency of the nonvolatile memory according to whether the first command is a write command or a read command.
상기 메모리 컨트롤러는 메모리 인터페이스를 포함하고, 상기 메모리 인터페이스는 상기 전압 신호의 전압 레벨, 상기 온도, 및 상기 제1 커맨드를 근거로 설정된 동작 주파수를 갖는 제어 신호를 상기 불휘발성 메모리에 출력할 수 있다. The memory controller may include a memory interface, and the memory interface may output to the nonvolatile memory a control signal having an operating frequency set based on the voltage level of the voltage signal, the temperature, and the first command.
상기 메모리 인터페이스는 상기 제1 커맨드가 쓰기 명령일 때 상기 불휘발성 메모리의 동작 주파수를 상기 제1 커맨드가 읽기 명령일 때 상기 불휘발성 메모리의 동작 주파수 보다 높게 설정할 수 있다. The memory interface may set the operating frequency of the nonvolatile memory to be higher than the operating frequency of the nonvolatile memory when the first command is a read command when the first command is a write command.
상기 전압 측정부 및 상기 온도 측정부는 상기 메모리 컨트롤러 내부에 구비될 수 있다. The voltage measuring unit and the temperature measuring unit may be provided in the memory controller.
상기 온도 측정부는 상기 메모리 컨트롤러 내부에 구비되고, 상기 전압 측정부는 상기 불휘발성 메모리 내부에 구비될 수 있다. The temperature measuring unit may be provided in the memory controller, and the voltage measuring unit may be provided in the nonvolatile memory.
상기 전압 측정부는 상기 메모리 컨트롤러 내부에 구비되고, 상기 온도 측정부는 상기 불휘발성 메모리 내부에 구비될 수 있다. The voltage measuring unit may be provided in the memory controller, and the temperature measuring unit may be provided in the nonvolatile memory.
상기 전압 측정부 및 상기 온도 측정부는 상기 불휘발성 메모리 내부에 구비될 수 있다. The voltage measuring unit and the temperature measuring unit may be provided in the nonvolatile memory.
본 발명의 실시 예에 따른 불휘발성 메모리 및 상기 불휘발성 메모리를 제어하는 메모리 컨트롤러를 포함하는 스토리지 장치의 제어 방법은, 상기 메모리 컨트롤러로부터 상기 불휘발성 메모리에 입력되는 전압 신호, 상기 불휘발성 메모리로부터 상기 메모리 컨트롤러에 출력되는 전압 신호, 및 외부로부터 상기 메모리 컨트롤러에 인가되는 전원 전압 중 적어도 하나의 전압 레벨을 측정하는 단계; 상기 스토리지 장치의 온도를 측정하는 단계; 및 상기 측정된 전압 레벨 및 상기 측정된 온도에 따라 상기 불휘발성 메모리의 동작 주파수를 설정하는 단계를 포함할 수 있다. A control method of a storage apparatus including a nonvolatile memory according to an embodiment of the present invention and a memory controller for controlling the nonvolatile memory is characterized by including: a voltage signal input from the memory controller to the nonvolatile memory; Measuring a voltage level of at least one of a voltage signal output to the memory controller and a power supply voltage externally applied to the memory controller; Measuring a temperature of the storage device; And setting an operating frequency of the non-volatile memory according to the measured voltage level and the measured temperature.
상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 전압 신호의 전압 레벨이 기준 전압 레벨에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정할 수 있다. The step of setting the frequency of the nonvolatile memory may set the operating frequency of the nonvolatile memory to be higher as the voltage level of the voltage signal approaches the reference voltage level.
상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 전압 신호의 실제 전압 레벨이 상기 기준 전압 레벨에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정할 수 있다. The step of setting the frequency of the non-volatile memory may set the operating frequency of the non-volatile memory to be higher as the actual voltage level of the voltage signal approaches the reference voltage level.
스토리지 장치의 제어 방법은, 상기 메모리 컨트롤러로부터 상기 불휘발성 메모리로 출력되는 제1 커맨드가 읽기 명령인지 쓰기 명령인지를 분석하는 단계를 더 포함할 수 있다. 상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 제1 커맨드가 읽기 명령인지 쓰기 명령인지에 따라 상기 불휘발성 메모리의 동작 주파수를 설정할 수 있다. The control method of the storage apparatus may further include analyzing whether the first command output from the memory controller to the nonvolatile memory is a read command or a write command. The step of setting the frequency of the nonvolatile memory may set the operating frequency of the nonvolatile memory according to whether the first command is a read command or a write command.
상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 제1 커맨드가 쓰기 명령일 때 상기 불휘발성 메모리의 동작 주파수를 상기 제1 커맨드가 읽기 명령일 때 상기 불휘발성 메모리의 동작 주파수 보다 높게 설정할 수 있다.The step of setting the frequency of the nonvolatile memory may set the operating frequency of the nonvolatile memory to be higher than the operating frequency of the nonvolatile memory when the first command is a read command when the first command is a write command.
불휘발성 메모리의 주파수를 설정하는 단계는 쓰기 시에 상기 불휘발성 메모리에 입력될 데이터 스트로브 신호의 주파수를 변경하고, 읽기 시에 상기 불휘발성 메모리에 입력될 읽기 인에이블 신호의 주파수를 변경할 수 있다. The step of setting the frequency of the nonvolatile memory may change the frequency of the data strobe signal to be input to the nonvolatile memory at the time of writing and change the frequency of the read enable signal to be inputted to the nonvolatile memory at the time of reading.
본 발명의 실시 예에 따른 스토리 장치는 제1 커맨드에 따라 읽기, 쓰기, 및 소거를 수행하는 불휘발성 메모리 및 메모리 컨트롤러를 포함한다. 상기 메모리 컨트롤러는 상기 불휘발성 메모리에 상기 제1 커맨드를 출력하고, 상기 제1 커맨드가 쓰기 명령일 때 상기 불휘발성 메모리의 동작 주파수를 상기 제1 커맨드가 읽기 명령일 때 상기 불휘발성 메모리의 동작 주파수 보다 더 높게 설정할 수 있다. A story device according to an embodiment of the present invention includes a nonvolatile memory and a memory controller that perform read, write, and erase operations in accordance with a first command. The memory controller outputs the first command to the nonvolatile memory, and when the first command is a write command, the operating frequency of the nonvolatile memory when the first command is a read command, Can be set higher.
상기 메모리 컨트롤러는 메모리 인터페이스를 포함할 수 있다. 상기 메모리 인터페이스는 상기 제1 커맨드를 근거로 설정된 동작 주파수를 갖는 제어 신호를 상기 불휘발성 메모리에 출력할 수 있다. The memory controller may include a memory interface. The memory interface may output a control signal having an operating frequency set based on the first command to the nonvolatile memory.
본 발명에 따른 스토리지 장치 및 그 제어 방법에 의하면 불휘발성 메모리의 읽기 및 쓰기 속도가 향상되어 스토리지 장치의 동작 속도가 향상될 수 있다. According to the storage device and the control method therefor according to the present invention, the reading and writing speed of the nonvolatile memory can be improved and the operation speed of the storage device can be improved.
도 1은 본 발명의 실시 예에 따른 스토리지 장치를 보여주는 블록도이다.
도 2는 메모리 컨트롤러 및 불휘발성 메모리 사이의 연결 관계를 보여주는 블록도이다.
도 3은 본 발명의 실시 예에 따른 메모리 컨트롤러를 구체적으로 도시한 스토리지 장치의 블록도이다.
도 4는 본 발명의 실시 예에 따른 제1 테이블을 예시적으로 도시한 도면이다.
도 5는 본 발명의 실시 예에 따른 제2 테이블을 예시적으로 도시한 도면이다.
도 6 내지 도 7은 본 발명의 실시 예들에 따른 스토리지 장치들을 도시한 블록도이다.
도 9는 본 발명의 실시 예에 따른 스토리지 장치의 제어 방법을 도시한 순서도이다.
도 10은 본 발명의 실시 예에 따른 스토리지 장치의 제어 방법을 도시한 순서도이다.
도 11는 본 발명의 실시 예에 따른 메모리 컨트롤러를 보여주는 블록도이다.1 is a block diagram illustrating a storage apparatus according to an embodiment of the present invention.
2 is a block diagram showing the connection relationship between the memory controller and the nonvolatile memory.
3 is a block diagram of a storage device that specifically illustrates a memory controller according to an embodiment of the present invention.
4 is a diagram illustrating a first table according to an embodiment of the present invention.
5 is a diagram illustrating a second table according to an embodiment of the present invention.
6 through 7 are block diagrams illustrating storage devices in accordance with embodiments of the present invention.
9 is a flowchart illustrating a method of controlling a storage apparatus according to an embodiment of the present invention.
10 is a flowchart illustrating a method of controlling a storage apparatus according to an embodiment of the present invention.
11 is a block diagram illustrating a memory controller according to an embodiment of the present invention.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.
도 1은 본 발명의 실시 예에 따른 스토리지 장치(10)를 보여주는 블록도이다. 도 1을 참조하면, 스토리지 장치(10)는 불휘발성 메모리(100) 및 메모리 컨트롤러(200)를 포함한다. 1 is a block diagram showing a
불휘발성 메모리(100)는 메모리 컨트롤러(200)의 제어에 따라 쓰기, 읽기 및 소거를 수행할 수 있다. 불휘발성 메모리(100)는 메모리 컨트롤러(200)로부터 메모리 신호(MS)를 입력받거나 메모리 컨트롤러(200)에 메모리 신호(MS)를 출력할 수 있다. 메모리 신호(MS)는 제1 데이터(DATA1), 제1 어드레스(ADDR1), 제1 커맨드(CMD1), 및 제어 신호(CTRL) 중 적어도 하나를 포함할 수 있다. The
불휘발성 메모리(100)는 메모리 컨트롤러(200)와 제1 데이터(DATA1)를 교환할 수 있다. 예를 들어, 불휘발성 메모리(100)는 메모리 컨트롤러(200)로부터 쓰기 데이터를 수신하고, 쓰기 데이터를 기입할 수 있다. 불휘발성 메모리(100)는 읽기를 수행하고, 읽기 데이터를 메모리 컨트롤러(200)로 출력할 수 있다.The
불휘발성 메모리(100)는 메모리 컨트롤러(200)로부터 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 수신할 수 있다. 불휘발성 메모리(100)는 메모리 컨트롤러(200)와 제어 신호(CTRL)를 교환할 수 있다. 예를 들어, 불휘발성 메모리(100)는 불휘발성 메모리(100)를 구성하는 복수의 반도체 칩들 중 적어도 하나의 반도체 칩을 선택하는 칩 선택 신호(/CE), 메모리 컨트롤러(200)로부터 수신되는 신호가 제1 커맨드(CMD1)임을 가리키는 커맨드 래치 인에이블 신호(CLE), 메모리 컨트롤러(200)로부터 수신되는 신호가 제1 어드레스(ADDR1)임을 가리키는 어드레스 래치 인에이블 신호(ALE), 읽기 시에 메모리 컨트롤러(200)에 의해 생성되며 주기적으로 토글되어 타이밍을 맞추는 데에 사용되는 읽기 인에이블 신호(/RE), 제1 커맨드(CMD1) 또는 제1 어드레스(ADDR1)가 전송될 때에 메모리 컨트롤러(200)에 의해 활성화되는 쓰기 인에이블 신호(/WE), 전원이 변화할 때에 의도하지 않은 쓰기 또는 소거를 방지하기 위해 메모리 컨트롤러(200)에 의해 활성화되는 쓰기 방지 신호(/WP), 쓰기 시에 메모리 컨트롤러(200)에 의해 생성되며 주기적으로 토글되어 제1 데이터(DATA1)의 입력 싱크를 맞추는 데에 사용되는 데이터 스트로브 신호(DQS) 중 적어도 하나를 메모리 컨트롤러(200)로부터 수신할 수 있다. 예를 들어, 불휘발성 메모리(100)는 불휘발성 메모리(100)가 프로그램, 소거 또는 읽기 동작을 수행 중인지를 가리키는 레디 및 비지 신호(R/nB), 불휘발성 메모리(100)에 의해 읽기 인에이블 신호(/RE)로부터 생성되며 주기적으로 토글되어 제1 데이터(DATA1)의 출력 싱크를 맞추는 데에 사용되는 데이터 스트로브 신호(DQS) 중 적어도 하나를 메모리 컨트롤러(200)로 출력할 수 있다.The
불휘발성 메모리(100)는 복수의 불휘발성 메모리 칩들(110)을 포함할 수 있다. 불휘발성 메모리 칩들(110) 각각은 플래시 메모리를 포함할 수 있다. 그러나, 불휘발성 메모리 칩들(110) 각각은 플래시 메모리를 포함하는 것으로 한정되지 않는다. 불휘발성 메모리 칩들(110) 각각은 PRAM (Phase-change RAM), MRAM (Magnetic RAM), RRAM (Resistive RAM), FeRAM (Ferroelectric RAM) 등과 같은 다양한 불휘발성 메모리들 중 적어도 하나를 포함할 수 있다.The
메모리 컨트롤러(200)는 불휘발성 메모리(100)를 제어하도록 구성된다. 예를 들어, 메모리 컨트롤러(200)는 불휘발성 메모리(100)가 쓰기, 읽기 또는 소거를 수행하도록 제어할 수 있다. 메모리 컨트롤러(200)는 불휘발성 메모리(100)와 제1 데이터(DATA1) 및 제어 신호(CTRL)를 교환하고, 불휘발성 메모리(100)로 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 출력할 수 있다.The
메모리 컨트롤러(200)는 외부의 호스트 장치(미도시)의 제어에 따라 불휘발성 메모리(100)를 제어할 수 있다. 메모리 컨트롤러(200)는 호스트 장치와 제2 데이터(DATA2)를 교환하고, 호스트 장치로부터 제2 커맨드(CMD2) 및 제2 어드레스(ADDR2)를 수신할 수 있다. 또한, 메모리 컨트롤러(200)는 호스트 장치로부터 전원 전압(Vccq) 및 접지 전압(Vssq)를 수신할 수 있다. 전원 전압(Vccq)는 동작 모드에 따라 1.8V 또는 3.3로 설정될 수 있다. The
메모리 컨트롤러(200)와 불휘발성 메모리(100) 사이에서 입출력되는 메모리 신호(MS)는 전원 전압(Vccq) 및 접지 전압(Vssq)을 근거로 생성될 수 있다. 따라서, 메모리 신호(MS)는 하이 상태에서 전원 전압(Vccq)의 전압 레벨을 갖고, 로우 상태에서 접지 전압(Vssq)의 전압 레벨을 가질 수 있다. The memory signal MS input and output between the
이하, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)의 전압 레벨이 1.8V 로 설정된 경우를 제1 모드로 정의하고, 메모리 신호의 하이 상태 및 전원 전압(Vccq)의 전압 레벨이 3.3V로 설정된 경우를 제2 모드로 정의한다. Hereinafter, the case where the high level of the memory signal MS and the voltage level of the power source voltage Vccq are set to 1.8 V is defined as the first mode, and the high level of the memory signal and the voltage level of the power source voltage Vccq are 3.3 V Is defined as the second mode.
메모리 컨트롤러(200)는 적어도 제1 모드 및 제2 모드 중 어느 하나로 동작할 수 있다. 예시적으로, 메모리 컨트롤러(200)는 제1 모드로 동작하는 경우, 제2 모드로 동작하는 경우에 비해 빠른 속도로 동작할 수 있다. 이하, 메모리 컨트롤러(200)가 제1 모드로 동작하는 경우에 대해 설명한다.The
메모리 컨트롤러(200)가 제1 모드로 동작하는 경우, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)은 1.8V를 갖는 것이 이상적이지만, 허용 범위 내에서 1.8V 보다 낮거나 높을 수 있다. 불휘발성 메모리(100)가 낸드 플래시인 경우, 제1 모드의 허용 범위는 1.7V 이상 1.95 V 이하일 수 있다. When the
불휘발성 메모리(100)는 제1 모드에서 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 실제 전압 레벨에 따라 동작 가능한 최대 주파수가 달라질 수 있다. 또한, 불휘발성 메모리(100)는 불휘발성 메모리(100)의 온도에 따라 동작 가능한 최대 주파수가 달라질 수 있다. The
본 발명의 스토리지 장치(10)는 제1 모드로 동작시, 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 실제 전압 레벨 및 불휘발성 메모리(100)의 온도에 따라 불휘발성 메모리(100)의 동작 주파수를 최적화할 수 있다. The
스토리지 장치(10)는 호스트 장치의 요청에 따라, 데이터의 쓰기, 읽기 또는 소거를 수행할 수 있다. 스토리지 장치(10)은 솔리드 스테이트 드라이브(SSD, Solid State Drive) 또는 하드 디스크 드라이브(HDD, Hard Disk Drive)를 포함할 수 있다. 솔리드 스테이트 드라이브는 PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), USB (Universal Serial Bus) 메모리 카드, 유니버설 플래시 스토리지(UFS) 등과 같은 메모리 카드들을 포함할 수 있다. 솔리드 스테이트 드라이브는 eMMC (embedded MultiMedia Card), UFS, PPN (Perfect Page New) 등과 같은 실장형 메모리를 포함할 수 있다.The
도 2는 메모리 컨트롤러(200) 및 불휘발성 메모리(100) 사이의 연결 관계를 보여주는 블록도이다. 도 2를 참조하면, 메모리 컨트롤러(200) 및 불휘발성 메모리(100) 각각은 제1 데이터(DATA1), 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 입출력 라인들(IO)을 통해 공통으로 교환할 수 있다. 메모리 컨트롤러(200) 및 버퍼 칩(113) 각각은 제1 내지 제k 입출력 패드들(DQ1~DQk)을 포함한다. 메모리 컨트롤러(200) 및 불휘발성 메모리(100)의 제1 내지 제k 입출력 패드들(DQ1~DQk)은 입출력 라인들(IO)을 통해 각각 연결된다. 메모리 컨트롤러(200) 및 불휘발성 메모리(100)는 제1 내지 제k 입출력 패드들(DQ1~DQk) 및 입출력 라인들(IO)을 통해 제1 데이터(DATA1), 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 교환할 수 있다.2 is a block diagram showing the connection relationship between the
예를 들어, 제어 신호(CTRL)의 형태에 따라, 제1 내지 제k 입출력 패드들(DQ1~DQk) 및 입출력 라인들(IO)을 통해 전송되는 신호는 제1 데이터(DATA1), 제1 커맨드(CMD1) 또는 제1 어드레스(ADDR1)로 식별될 수 있다. 예를 들어, 제1 내지 제k 입출력 패드들(DQ1~DQk)은 8, 16 또는 32개일 수 있으며, 한정되지 않는다.For example, depending on the type of the control signal CTRL, signals transmitted through the first to k-th input / output pads DQ1 to DQk and the input / output lines IO may include a first data DATA1, (CMD1) or a first address (ADDR1). For example, the first to k-th input / output pads DQ1 to DQk may be 8, 16, or 32, and are not limited.
메모리 컨트롤러(200) 및 불휘발성 메모리(100)는 제어 라인들(CL), 칩 인에이블 라인들(CEL), 그리고 레디 및 비지 라인들(RBL)을 통해 제어 신호(CTRL)를 교환할 수 있다. 메모리 컨트롤러(200) 및 불휘발성 메모리(100) 각각은, 데이터 스트로브 신호(DQS), 읽기 인에이블 신호(/RE), 커맨드 래치 인에이블 신호(CLE), 어드레스 래치 인에이블 신호(ALE), 쓰기 인에이블 신호(/WE), 그리고 쓰기 방지 신호(/WP)를 전송하는 패드들을 포함하며, 해당 패드들은 제어 라인들(CL)을 통해 각각 연결될 수 있다.The
메모리 컨트롤러(200) 및 불휘발성 메모리(100) 각각은 제1 내지 제N 칩 인에이블 신호들(/CE1~/CEN)을 전송하는 패드들을 포함하며, 해당 패드들은 칩 인에이블 라인들(CEL)을 통해 각각 연결될 수 있다.Each of the
메모리 컨트롤러(200) 및 불휘발성 메모리(100) 각각은 제1 내지 제N 레디 및 비지 신호들(R/nB1~R/nBN)을 교환하는 패드들을 포함하며, 해당 패드들은 레디 및 비지 라인들(RBL)을 통해 각각 연결될 수 있다.Each of the
메모리 컨트롤러(200)는 전원 라인(PL)을 통해 전원 전압(Vccq) 및 접지 전압(Vssq)을 수신할 수 있다. The
도 3은 본 발명의 실시 예에 따른 메모리 컨트롤러(200)를 구체적으로 도시한 스토리지 장치(10)의 블록도이다. 도 3을 참조하면, 메모리 컨트롤러(200)는 메모리 인터페이스(210), 전압 측정부(300), 및 온도 측정부(400)를 포함할 수 있다. 3 is a block diagram of a
메모리 인터페이스(210)는 불휘발성 메모리(100)와 통신과 관련된 제반 동작을 관리한다. 메모리 인터페이스(210)는 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 불휘발성 메모리(100)로 출력할 수 있다. 또한, 메모리 인터페이스(210)는 불휘발성 메모리(100)와 제1 데이터(DATA1) 및 제어 신호(CTRL)를 교환할 수 있다. The
메모리 인터페이스(210)는 불휘발성 메모리(100)의 동작 주파수를 결정할 수 있다. 메모리 인터페이스(210)는 제1 커맨드(CM1), 제1 어드레스(ADDR1), 제1 데이터(DATA1), 및 제어 신호(CTRL) 중 적어도 하나의 주파수를 제어함으로써 불휘발성 메모리(100)의 동작 주파수를 결정할 수 있다. 예를 들어, 메모리 인터페이스(210)는 제1 커맨드(CMD1)가 쓰기 명령일 때, 데이터 스트로브 신호(DQS)의 주파수를 제어함으로써 불휘발성 메모리(100)의 동작 주파수를 결정할 수 있다. 또한, 메모리 인터페이스(210)는 제1 커맨드(CMD1)가 읽기 명령일 때, 읽기 인에이블 신호(/RE)의 주파수를 제어함으로써 불휘발성 메모리(100)의 동작 주파수를 결정할 수 있다. The
전압 측정부(300)는 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 전압 레벨을 측정한다. 전압 측정부(300)는 측정한 전압 레벨 정보를 메모리 인터페이스(210)에 출력한다. The
전압 측정부(300)는 도 2의 입출력 라인들(IO), 제어 라인들(CL), 칩 인에이블 라인들(CEL), 및 레디 및 비지 라인들(RBL) 중 적어도 하나에 연결되어 메모리 신호(MS)의 하이 상태의 전압 레벨을 측정할 수 있다. 또한, 전압 측정부(300)는 전압 전압(Vccq)이 인가되는 전원 라인(PL)에 연결되어 전원 전압(Vccq)의 전압 레벨을 측정할 수 있다. The
전압 측정부(300)는 메모리 컨트롤러(200) 내부에 구비될 수 있다. 전압 측정부(300)는 다양한 회로 또는 소자로 구현될 수 있다. The
온도 측정부(400)는 불휘발성 메모리(100)의 온도를 측정할 수 있다. 온도 측정부(400)는 불휘발성 메모리(100)의 온도를 측정하거나, 메모리 컨트롤러(200)의 온도를 불휘발성 메모리(100)의 온도로서 측정할 수 있다. 온도 측정부(400)는 측정한 온도 정보를 메모리 인터페이스(210)에 출력한다. The
온도 측정부(300)는 메모리 컨트롤러(200) 내부에 구비될 수 있다. 온도 측정부(400)는 다양한 회로 또는 소자로 구현될 수 있다.The
메모리 컨트롤러(200)는 RAM(230)을 더 포함할 수 있다. RAM(230)은 동작 메모리, 캐시 메모리, 또는 버퍼 메모리로 사용될 수 있다. RAM(230)은 불휘발성 메모리(100)를 관리하기 위해 필요한 데이터 또는 코드를 저장할 수 있다. 예를 들어, 메모리 컨트롤러(200)는 불휘발성 메모리(100)를 관리하기 위해 필요한 데이터 또는 코드를 불휘발성 메모리(100)로부터 읽고, RAM(230)에 로딩하여 구동할 수 있다. The
도 4는 본 발명의 실시 예에 따른 제1 테이블(TB1)을 예시적으로 도시한 도면이다. 제1 테이블(TB1)은 메모리 컨트롤러(200)가 제1 모드로 동작하는 경우를 가정하여 도시하였다. 도 4에서 상온(Room Temperature)은 편의상 RT로 도시하였다. FIG. 4 is a diagram exemplarily showing a first table TB1 according to an embodiment of the present invention. The first table TB1 is assumed on the assumption that the
도 3 및 도 4를 참조하면, RAM(230)은 전압과 온도에 따른 불휘발성 메모리(100)의 최적 주파수가 설정된 제1 테이블(TB1)을 저장할 수 있다. 또한, 제1 테이블(TB1)은 불휘발성 메모리(100)에 저장되고, RAM(230)에 로딩될 수 있다. Referring to FIGS. 3 and 4, the
메모리 인터페이스(210)는 전압 레벨 정보와 온도 정보에 기초하여 불휘발성 메모리(100)의 동작 주파수를 최적화할 수 있다. 즉, 불휘발성 메모리(100)의 동작 주파수는 전압 레벨 정보와 온도 정보에 따라 달라질 수 있다. 메모리 인터페이스(210)는 전압 측정부(300)로부터 수신된 전압 레벨 정보와 온도 측정부(400)로부터 수신된 온도 정보에 해당하는 최적 주파수를 제1 테이블로부터 독출하고, 독출된 최적 주파수를 갖는 제어 신호(CTRL)를 생성할 수 있다. 최적 주파수를 갖는 제어 신호(CTRL)는 쓰기 시에 데이터 스트로브 신호(DQS)이고, 읽기 시에 읽기 인에이블 신호(/RE)일 수 있다. The
메모리 인터페이스(210)는 제1 모드에서 이상적인 전압 레벨인 1.8V(기준 전압 레벨)와 전압 레벨이 제1 전압 갭을 갖는 경우, 1.8V와 전압 레벨이 제1 전압 갭 보다 큰 제2 전압 갭을 갖는 경우 보다 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. 메모리 인터페이스(210)는 전압 레벨이 1.8V에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. When the
메모리 인터페이스(210)는 스토리지 장치(10) 내부의 온도와 상온이 제1 온도 갭을 갖는 경우, 측정된 온도와 상온이 제1 온도 갭 보다 큰 제2 온도 갭을 갖는 경우 보다 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. 메모리 인터페이스(210)는 온도가 상온에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다.The
메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.8V의 레벨을 갖고, 상온인 경우, 불휘발성 메모리(100)는 최대 667 Mbps의 주파수로 동작할 수 있다. 또한, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.8V의 레벨을 갖고, 상온이 아닌 경우, 불휘발성 메모리(100)는 최대 600 Mbps의 주파수로 동작할 수 있다. The
메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온인 경우, 불휘발성 메모리(100)는 최대 533 Mbps의 주파수로 동작할 수 있다. 또한, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온이 아닌 경우, 불휘발성 메모리(100)는 최대 480 Mbps의 주파수로 동작할 수 있다. The
한편, 도 4의 제1 테이블(TB1)에는 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)의 전압 레벨이 1.7V와 1.8V 중 하나를 갖는 경우에 최대로 동작 가능한 최적 주파수를 예시적으로 도시하였다. 하지만, 이에 제한되는 것은 아니고, 제1 모드의 허용 범위인 1.7V~1.95V 범위 내에서 전압을 제1 테이블(TB1)에 세밀하게 설정함으로써 최적 주파수를 더욱 세밀하게 설정할 수 있다. 또한, 도 4의 제1 테이블(TB1)에는 온도가 상온인 경우와 상온이 아닌 경우에 따른 최적 주파수를 예시적으로 도시하였다. 하지만, 이에 제한되는 것은 아니고, 상온이 아닌 경우의 온도를 제1 테이블(TB1)에 세밀하게 설정함으로써 최적 주파수를 더욱 세밀하게 설정할 수 있다. On the other hand, in the first table TB1 of FIG. 4, an optimum frequency which can be operated at maximum when the voltage level of the memory signal MS is high and the voltage level of the power supply voltage Vccq is one of 1.7V and 1.8V Respectively. However, the present invention is not limited thereto, and the optimum frequency can be finely set by finely setting the voltage in the first table TB1 within the allowable range of 1.7V to 1.95V in the first mode. In addition, the first table TB1 of FIG. 4 exemplarily shows the optimum frequency depending on whether the temperature is room temperature or not. However, the present invention is not limited to this, and it is possible to finely set the optimum frequency by finely setting the temperature in the first table TB1 when the temperature is not normal temperature.
메모리 컨트롤러(200)가 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 전압 레벨 및 온도에 따라 불휘발성 메모리(100)의 동작 주파수를 변경하지 않는다고 가정한다. 이 경우, 도 4의 제1 테이블(TB1)을 고려할 때, 메모리 컨트롤러(200)는 최악의 상황, 즉, 제1 모드의 전압 레벨이 1.7V 이고, 상온이 아닌 상황을 고려하여 불휘발성 메모리(100)의 동작 주파수를 480 Mbps로 설정할 수 밖에 없다. It is assumed that the
반면, 본 발명의 실시 예에 따른 메모리 컨트롤러(200)는 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 전압 레벨 및 온도에 따라 불휘발성 메모리(100)의 동작 주파수를 변경하므로, 불휘발성 메모리(100)의 동작 속도가 향상될 수 있다. 즉, 읽기 및 쓰기 속도가 향상된 스토리지 장치(10)가 제공된다. The
도 5는 본 발명의 실시 예에 따른 제2 테이블(TB2)을 예시적으로 도시한 도면이다. 제2 테이블(TB2)은 메모리 컨트롤러(200)가 제1 모드로 동작하는 경우를 가정하여 도시하였다. 도 5에서 상온(Room Temperature)은 편의상 RT로 도시하였다.5 is a diagram exemplarily showing a second table TB2 according to an embodiment of the present invention. The second table TB2 assumes that the
도 3 및 도 5를 참조하면, RAM(230)은 전압, 온도, 및 제1 커맨드에 따른 불휘발성 메모리(100)의 최적 주파수가 설정된 제2 테이블(TB2)을 저장할 수 있다. 또한, 제2 테이블(TB2)은 불휘발성 메모리(100)에 저장되고, RAM(230)에 로딩될 수 있다. Referring to FIGS. 3 and 5, the
메모리 인터페이스(210)는 제1 커맨드(CMD1)에 따라 불휘발성 메모리(100)의 동작 주파수를 최적화할 수 있다. 즉, 불휘발성 메모리(100)의 동작 주파수는, 전압 레벨 정보와 온도 정보뿐만 아니라, 제1 커맨드(CMD1)가 쓰기 명령인지 읽기 명령인지에 따라 달라질 수 있다. 메모리 인터페이스(210)는 전압 레벨 정보, 온도 정보, 및 제1 커맨드(CMD1)에 해당하는 최적 주파수를 제2 테이블로부터 독출하고, 독출된 최적 주파수를 갖는 제어 신호(CTRL)를 생성할 수 있다. 최적 주파수를 갖는 제어 신호(CTRL)는 읽기시에 데이터 스트로브 신호(DQS)이고, 쓰기 시에 읽기 인에이블 신호(/RE)일 수 있다. The
메모리 인터페이스(210)는 제1 커맨드(CMD1)가 쓰기 명령일 때 불휘발성 메모리(100)의 동작 주파수를 제1 커맨드(CMD1)가 읽기 명령일 때 불휘발성 메모리(100)의 동작 주파수 보다 높게 설정할 수 있다. The
메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온이고, 제1 커맨드(CMD1)가 쓰기 명령인 경우, 불휘발성 메모리(100)는 최대 600 Mbps의 주파수로 동작할 수 있다. 또한, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온이고, 제1 커맨드(CMD1)가 읽기 명령인 경우, 불휘발성 메모리(100)는 최대 533 Mbps의 주파수로 동작할 수 있다. When the high state of the memory signal MS and the power supply voltage Vccq are at a level of 1.7 V and the ambient temperature is the first command CMD1 is a write command, the
메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온이 아니고, 제1 커맨드(CMD1)가 쓰기 명령인 경우, 불휘발성 메모리(100)는 최대 566 Mbps의 주파수로 동작할 수 있다. 또한, 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)이 1.7V의 레벨을 갖고, 상온이 아니고, 제1 커맨드(CMD1)가 읽기 명령인 경우, 불휘발성 메모리(100)는 최대 480 Mbps의 주파수로 동작할 수 있다. When the high state of the memory signal MS and the power supply voltage Vccq have a level of 1.7 V and the first command CMD1 is a write command other than the normal temperature, the
한편, 도 5의 제2 테이블(TB2)에는 메모리 신호(MS)의 하이 상태 및 전원 전압(Vccq)의 전압 레벨이 1.7V인 경우에 최대로 동작 가능한 최적 주파수를 예시적으로 도시하였다. 하지만, 이에 제한되는 것은 아니고, 제1 모드의 허용 범위인 1.7V~1.95V 범위 내에서 전압을 제2 테이블(TB2)에 세밀하게 설정함으로써 최적 주파수를 더욱 세밀하게 설정할 수 있다. 또한, 도 5의 제2 테이블(TB2)에는 온도가 상온인 경우와 상온이 아닌 경우에 따른 최적 주파수를 예시적으로 도시하였다. 하지만, 이에 제한되는 것은 아니고, 상온이 아닌 경우의 온도를 제2 테이블(TB2)에 세밀하게 설정함으로써 최적 주파수를 더욱 세밀하게 설정할 수 있다.On the other hand, the second table TB2 of FIG. 5 exemplarily shows the maximum frequency at which the memory signal MS is high and the voltage level of the power source voltage Vccq is 1.7V. However, the present invention is not limited to this, and the optimum frequency can be finely set by finely setting the voltage in the second table TB2 within the allowable range of the first mode of 1.7V to 1.95V. In addition, the second table TB2 of FIG. 5 exemplarily shows the optimum frequency depending on whether the temperature is room temperature or not. However, the present invention is not limited to this, and the optimum frequency can be finely set by finely setting the temperature in the second table TB2 when the temperature is not normal temperature.
메모리 컨트롤러(200)가 제1 커맨드(CMD1)에 따라 불휘발성 메모리(100)의 동작 주파수를 변경하지 않는다고 가정한다. 이 경우, 도 5의 제2 테이블(TB2)을 고려할 때, 메모리 컨트롤러(200)는 최악의 상황, 즉, 제1 모드의 전압 레벨이 1.7V 이고, 상온이 아니고, 제1 커맨드(CMD1)가 읽기 명령인 상황을 고려하여 불휘발성 메모리(100)의 동작 주파수를 480 Mbps로 설정할 수 밖에 없다. It is assumed that the
반면, 본 발명의 실시 예에 따른 메모리 컨트롤러(200)는 전압 레벨 및 온도뿐만 아니라 제1 커맨드(CMD1)가 읽기 명령인지 쓰기 명령인지에 따라 불휘발성 메모리(100)의 동작 주파수를 변경하므로, 불휘발성 메모리(100)의 동작 속도가 향상될 수 있다. 즉, 읽기 및 쓰기 속도가 향상된 스토리지 장치(10)가 제공된다.On the other hand, the
도 6 내지 도 7은 본 발명의 실시 예들에 따른 스토리지 장치들(11~13)을 도시한 블록도이다. 도 6 내지 도 7을 참조하여 설명할 스토리지 장치들(11~13)은 도 1 및 도 3을 참조하여 설명한 스토리지 장치(10)와 비교하여 차이점을 중심으로 설명한다.6 to 7 are block diagrams showing
도 6을 참조하면, 스토리지 장치(11)는 메모리 컨트롤러(201) 및 불휘발성 메모리(101)를 포함한다. 도 6의 스토리지 장치(11)에서, 전압 측정부(300)는 불휘발성 메모리(101) 내부에 구비될 수 있다. 전압 측정부(300)는 메모리 신호(MS)의 하이 상태 또는 전압 전압(Vccq)의 전압 레벨을 측정하고, 측정한 전압 레벨을 입출력 라인들(IO, 도 2 참조)를 통해 메모리 인터페이스(210)에 출력한다. 도 6의 스토리지 장치(11)에서, 온도 측정부(400)는 메모리 컨트롤러(201) 내부에 구비될 수 있다. Referring to FIG. 6, the
도 7을 참조하면, 스토리지 장치(12)는 메모리 컨트롤러(202) 및 불휘발성 메모리(102)를 포함한다. 도 7의 스토리지 장치(12)에서, 전압 측정부(300)는 메모리 컨트롤러(202) 내부에 구비될 수 있다. 도 7의 스토리지 장치(12)에서, 온도 측정부(400)는 불휘발성 메모리(102) 내부에 구비될 수 있다. 온도 측정부(400)는 온도를 측정하고, 측정한 온도 정보를 입출력 라인들(IO, 도 2 참조)을 통해 메모리 인터페이스(210)에 출력한다. Referring to FIG. 7, the
도 8을 참조하면, 스토리지 장치(13)는 메모리 컨트롤러(203) 및 불휘발성 메모리(103)를 포함한다. 도 8의 스토리지 장치(11)에서, 전압 측정부(300)는 불휘발성 메모리(103) 내부에 구비될 수 있다. 전압 측정부(300)는 메모리 신호(MS)의 하이 상태 또는 전압 전압(Vccq)의 전압 레벨을 측정하고, 측정한 전압 레벨을 입출력 라인들(IO, 도 2 참조)를 통해 메모리 인터페이스(210)에 출력한다. 도 8의 스토리지 장치(13)에서, 온도 측정부(400)는 불휘발성 메모리(103) 내부에 구비될 수 있다. 온도 측정부(400)는 온도를 측정하고, 측정한 온도 정보를 입출력 라인들(IO, 도 2 참조)을 통해 메모리 인터페이스(210)에 출력한다.Referring to FIG. 8, the
도 9는 본 발명의 실시 예에 따른 스토리지 장치의 제어 방법을 도시한 순서도이다. 도 1 내지 도 4 및 도 9를 참조하면, 메모리 컨트롤러(200)는 제1 모드로 동작할 수 있다. 9 is a flowchart illustrating a method of controlling a storage apparatus according to an embodiment of the present invention. 1 to 4 and 9, the
S100 단계에서, 전압 측정부(300)는 메모리 컨트롤러(200)로부터 불휘발성 메모리(100)에 입력되는 제1 전압 레벨로 설정된 신호, 불휘발성 메모리(100)로부터 메모리 컨트롤러(200)에 출력되는 제1 전압 레벨로 설정된 신호, 및 외부로부터 메모리 컨트롤러(200)에 인가되는 제1 전압 레벨로 설정된 전원 전압 중 적어도 하나의 전압 레벨을 측정할 수 있다. 제1 전압 레벨은 메모리 컨트롤러(200)가 제1 모드로 동작할 때 이상적인 전압 레벨인 1.8V일 수 있다. In step S100, the
전압 측정부(300)는 메모리 신호(MS)의 하이 상태 또는 전원 전압(Vccq)의 전압 레벨을 측정한다. 전압 측정부(300)는 도 2의 입출력 라인들(IO), 제어 라인들(CL), 칩 인에이블 라인들(CEL), 및 레디 및 비지 라인들(RBL) 중 적어도 하나에 연결되어 메모리 신호(MS)의 하이 상태의 전압 레벨을 측정할 수 있다. 또한, 전압 측정부(300)는 전압 전압(Vccq)이 인가되는 전원 라인(PL)에 연결되어 전원 전압(Vccq)의 전압 레벨을 측정할 수 있다. The
S110 단계에서, 온도 측정부(400)는 스토리지 장치(10)의 온도를 측정한다. 온도 측정부(400)는 메모리 컨트롤러(200)의 온도를 측정하거나, 불휘발성 메모리(100)의 온도를 측정할 수 있다. 온도 측정부(400)는 메모리 컨트롤러(200)의 온도 또는 불휘발성 메모리(100)의 온도를 스토리지 장치(10)의 온도로서 측정할 수 있다. In step S110, the
S120 단계에서, 메모리 인터페이스(210)는 측정된 전압 레벨 정보와 측정된 온도 정보를 근거로 불휘발성 메모리(100)의 동작 주파수를 최적화할 수 있다. 메모리 인터페이스(210)는 제1 테이블(TB1)에서 측정된 전압 레벨 정보와 측정된 온도 정보에 해당하는 최적 주파수를 독출한다. 이후, 메모리 인터페이스(210)는 불휘발성 메모리(100)를 독출한 최적 주파수로 동작하도록 제어할 수 있다. In step S120, the
메모리 인터페이스(210)는 전압 레벨이 1.8V에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. The
메모리 인터페이스(210)는 스토리지 장치(10) 내부의 온도가 상온에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. The
도 10은 본 발명의 실시 예에 따른 스토리지 장치의 제어 방법을 도시한 순서도이다. 도 1 내지 도 3, 도 5, 및 도 10을 참조하면, 메모리 컨트롤러(200)는 제1 모드로 동작할 수 있다.10 is a flowchart illustrating a method of controlling a storage apparatus according to an embodiment of the present invention. 1 to 3, 5, and 10, the
도 10의 S200 단계 및 S210 단계는 도 9의 S100 단계 및 S110 단계와 동일하므로 구체적인 설명을 생략한다.The steps S200 and S210 of FIG. 10 are the same as the steps S100 and S110 of FIG. 9, and a detailed description thereof will be omitted.
S220 단계에서, 메모리 인터페이스(210)는 제1 커맨드(CMD1)를 분석한다. 구체적으로, 메모리 인터페이스(210)는 제1 커맨드(CMD1)가 읽기 명령인지 쓰기 명령인지를 분석한다. In step S220, the
S230 단계에서, 메모리 인터페이스(210)는 측정된 전압 레벨 정보, 측정된 온도 정보, 및 제1 커맨드(CMD1)의 분석 결과를 근거로 불휘발성 메모리(100)의 동작 주파수를 최적화할 수 있다. 메모리 인터페이스(210)는 제2 테이블(TB2)에서 측정된 전압 레벨 정보, 측정된 온도 정보, 및 제1 커맨드(CMD1)가 읽기 명령인지 쓰기 명령인지에 대한 분석 결과에 해당하는 최적 주파수를 독출한다. 이후, 메모리 인터페이스(210)는 불휘발성 메모리(100)를 독출한 최적 주파수로 동작하도록 제어할 수 있다. In step S230, the
메모리 인터페이스(210)는 전압 레벨이 1.8V에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다. The
메모리 인터페이스(210)는 스토리지 장치(10) 내부의 온도가 상온에 근접할수록 불휘발성 메모리(100)의 동작 주파수를 더 높게 설정할 수 있다.The
메모리 인터페이스(210)는 제1 커맨드(CMD1)가 쓰기 명령일 때 불휘발성 메모리(100)의 동작 주파수를 제1 커맨드(CMD1)가 읽기 명령일 때 불휘발성 메모리(100)의 동작 주파수 보다 높게 설정할 수 있다. The
도 11는 본 발명의 실시 예에 따른 메모리 컨트롤러(200)를 보여주는 블록도이다. 도 1, 도 3, 및 도 11을 참조하면, 메모리 컨트롤러(200)는 버스(121), 프로세서(250), RAM(230), 호스트 인터페이스(240), 메모리 인터페이스(210), 그리고 ECC 회로(220)를 포함한다. 11 is a block diagram illustrating a
버스(121)는 메모리 컨트롤러(200)의 구성 요소들 사이에 채널을 제공하도록 구성된다. The
프로세서(250)는 메모리 컨트롤러(200)의 제반 동작을 제어하고, 논리 연산을 수행할 수 있다. 프로세서(250)는 호스트 인터페이스(240)를 통해 외부의 호스트 장치와 통신할 수 있다. 프로세서(250)는 호스트 인터페이스(240)를 통해 수신되는 제2 커맨드(CMD2) 또는 제2 어드레스(ADDR2)를 RAM(230)에 저장할 수 있다. 프로세서(122)는 RAM(230)에 저장된 커맨드 또는 어드레스에 따라 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 생성하고, 생성된 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 메모리 인터페이스(210)를 통해 출력할 수 있다.The
예를 들어, 제2 어드레스(ADDR2)는 호스트 장치에서 사용되는 논리 어드레스이고, 제1 어드레스(ADDR2)는 불휘발성 메모리(100)에서 사용되는 물리 어드레스일 수 있다. 프로세서(250)는 제2 어드레스(ADDR2)를 제1 어드레스(ADDR1)로 변환할 때에 사용되는 정보를 RAM(230)에 로드하고, RAM (230)에 로드된 정보를 참조할 수 있다.For example, the second address ADDR2 is a logical address used in the host device, and the first address ADDR2 may be a physical address used in the
RAM(230)은 프로세서(250)의 동작 메모리, 캐시 메모리 또는 버퍼 메모리로 사용될 수 있다. RAM(230)은 프로세서(250)가 실행하는 코드들 및 명령들을 저장할 수 있다. RAM(230)은 프로세서(250)에 의해 처리되는 데이터를 저장할 수 있다. RAM (230)은 SRAM (Static RAM)을 포함할 수 있다. RAM(230)은 제1 테이블(TB1, 도 4 참조) 또는 제2 테이블(TB2, 도 5 참조)을 저장할 수 있다. 제1 테이블(TB1)은 전압과 온도에 따른 불휘발성 메모리(100)의 최적 주파수가 설정된 테이블일 수 있다. 제2 테이블(TB2)은 전압, 온도, 및 제1 커맨드(CMD1)에 따른 불휘발성 메모리(100)의 최적 주파수가 설정된 테이블일 수 있다. The
호스트 인터페이스(240)는 프로세서(250)의 제어에 따라, 외부의 호스트 장치와 통신하도록 구성된다. 호스트 인터페이스(240)는 USB (Universal Serial Bus), SATA (Serial AT Attachment), SAS (Serial Attached SCSI), HSIC (High Speed Interchip), SCSI (Small Computer System Interface), 파이어와이어(Firewire), PCI (Peripheral Component Interconnection), PCIe (PCI express), NVMe (NonVolatile Memory express), UFS (Universal Flash Storage), SD (Secure Digital), MMC (MultiMedia Card), eMMC (embedded MMC) 등과 같은 다양한 통신 방법들 중 적어도 하나를 이용하여 통신하도록 구성될 수 있다.The
메모리 인터페이스(210)는 프로세서(250)의 제어에 따라, 불휘발성 메모리(100)와 통신하도록 구성된다. 메모리 인터페이스(210)는 프로세서(250)로부터 버스(121)를 통해 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 수신할 수 있다. 메모리 인터페이스(210)는 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)를 불휘발성 메모리(100)로 출력할 수 있다. 또한, 메모리 인터페이스(210)는 제1 커맨드(CMD1) 및 제1 어드레스(ADDR1)에 기반하여 제어 신호(CTRL)를 생성하고, 생성된 제어 신호(CTRL)를 불휘발성 메모리(100)로 출력할 수 있다.The
에러 정정 블록(220)은 에러 정정을 수행할 수 있다. 에러 정정 블록(220)은 불휘발성 메모리(100)에 기입될 데이터에 기반하여, 에러 정정을 수행하기 위한 패리티를 생성할 수 있다. 데이터 및 패리티는 메모리 인터페이스(210)를 통해 불휘발성 메모리(100)로 전송되고, 불휘발성 메모리(100)에 기입될 수 있다. 에러 정정 블록(220)은 메모리 인터페이스를 통해 불휘발성 메모리(100)로부터 읽어지는 데이터 및 패리티를 이용하여, 데이터의 에러 정정을 수행할 수 있다.
한편, 상술 된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함할 것이다.
The above-described contents of the present invention are merely concrete examples for carrying out the invention. The present invention will include not only concrete and practical means themselves, but also technical ideas which are abstract and conceptual ideas that can be utilized as future technologies.
10: 스토리지 장치
100: 불휘발성 메모리
200: 메모리 컨트롤러
210: 메모리 인터페이스
300: 전압 측정부
400: 온도 측정부
10: Storage device
100: Nonvolatile memory
200: Memory controller
210: memory interface
300: voltage measuring unit
400: Temperature measuring unit
Claims (10)
전압 신호를 상기 불휘발성 메모리와 교환하거나 외부로부터 수신하는 동작 모드로 동작시, 상기 전압 신호의 전압 레벨 및 상기 불휘발성 메모리의 온도에 기초하여 상기 불휘발성 메모리의 동작 주파수를 설정하는 메모리 컨트롤러를 포함하고,
상기 메모리 컨트롤러는 상기 전압 신호의 전압 레벨이 기준 전압 레벨에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정하는 스토리지 장치.A non-volatile memory for performing read, write, and erase; And
And a memory controller for setting the operating frequency of the nonvolatile memory based on the voltage level of the voltage signal and the temperature of the nonvolatile memory when the voltage signal is operated in an operation mode for exchanging with or receiving from the nonvolatile memory and,
Wherein the memory controller sets the operating frequency of the nonvolatile memory to be higher as the voltage level of the voltage signal becomes closer to the reference voltage level.
상기 메모리 컨트롤러는 상기 온도가 상온에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정하는 스토리지 장치.The method according to claim 1,
Wherein the memory controller sets the operating frequency of the nonvolatile memory to be higher as the temperature approaches the room temperature.
상기 전압 신호의 전압 레벨을 측정하는 전압 측정부; 및
상기 온도를 측정하는 온도 측정부를 더 포함하는 것을 특징으로 하는 스토리지 장치.The method according to claim 1,
A voltage measuring unit for measuring a voltage level of the voltage signal; And
And a temperature measuring unit for measuring the temperature.
상기 메모리 컨트롤러는 메모리 인터페이스를 포함하고, 상기 메모리 인터페이스는 상기 전압 신호의 전압 레벨 및 상기 온도를 근거로 설정된 동작 주파수를 갖는 제어 신호를 상기 불휘발성 메모리에 출력하는 스토리지 장치.The method according to claim 1,
Wherein the memory controller includes a memory interface and the memory interface outputs a control signal having an operating frequency set based on the voltage level of the voltage signal and the temperature to the nonvolatile memory.
상기 설정된 동작 주파수를 갖는 제어 신호는 쓰기 시에 데이터 스트로브 신호이고, 읽기 시에 읽기 인에이블 신호인 스토리지 장치.5. The method of claim 4,
Wherein the control signal having the set operating frequency is a data strobe signal at the time of writing and a read enable signal at the time of reading.
상기 메모리 컨트롤러는 상기 불휘발성 메모리에 제1 커맨드를 출력하고, 상기 제1 커맨드가 쓰기 명령인지 읽기 명령인지에 따라 상기 불휘발성 메모리의 동작 주파수를 설정하는 스토리지 장치.The method according to claim 1,
Wherein the memory controller outputs a first command to the nonvolatile memory and sets an operation frequency of the nonvolatile memory according to whether the first command is a write command or a read command.
상기 메모리 컨트롤러는 메모리 인터페이스를 포함하고, 상기 메모리 인터페이스는 상기 전압 신호의 전압 레벨, 상기 온도, 및 상기 제1 커맨드를 근거로 설정된 동작 주파수를 갖는 제어 신호를 상기 불휘발성 메모리에 출력하는 스토리지 장치.The method according to claim 6,
Wherein the memory controller includes a memory interface, and the memory interface outputs a control signal having an operating frequency set based on the voltage level of the voltage signal, the temperature, and the first command to the nonvolatile memory.
상기 메모리 인터페이스는 상기 제1 커맨드가 쓰기 명령일 때 상기 불휘발성 메모리의 동작 주파수를 상기 제1 커맨드가 읽기 명령일 때 상기 불휘발성 메모리의 동작 주파수 보다 높게 설정하는 스토리지 장치.8. The method of claim 7,
Wherein the memory interface sets the operating frequency of the nonvolatile memory to be higher than the operating frequency of the nonvolatile memory when the first command is a read command when the first command is a write command.
상기 메모리 컨트롤러로부터 상기 불휘발성 메모리에 입력되는 전압 신호, 상기 불휘발성 메모리로부터 상기 메모리 컨트롤러에 출력되는 전압 신호, 및 외부로부터 상기 메모리 컨트롤러에 인가되는 전원 전압 중 적어도 하나의 전압 레벨을 측정하는 단계;
상기 스토리지 장치의 온도를 측정하는 단계; 및
상기 측정된 전압 레벨 및 상기 측정된 온도에 따라 상기 불휘발성 메모리의 동작 주파수를 설정하는 단계를 포함하고,
상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 측정된 전압 레벨이 기준 전압 레벨에 근접할수록 상기 불휘발성 메모리의 동작 주파수를 더 높게 설정하는 스토리지 장치의 제어 방법.A control method for a storage apparatus including a nonvolatile memory and a memory controller for controlling the nonvolatile memory,
Measuring a voltage level of at least one of a voltage signal input to the nonvolatile memory from the memory controller, a voltage signal output from the nonvolatile memory to the memory controller, and a power supply voltage externally applied to the memory controller;
Measuring a temperature of the storage device; And
Setting the operating frequency of the non-volatile memory according to the measured voltage level and the measured temperature,
Wherein the step of setting the frequency of the nonvolatile memory sets the operating frequency of the nonvolatile memory to be higher as the measured voltage level approaches the reference voltage level.
상기 메모리 컨트롤러로부터 상기 불휘발성 메모리로 출력되는 제1 커맨드가 읽기 명령인지 쓰기 명령인지를 분석하는 단계를 더 포함하고,
상기 불휘발성 메모리의 주파수를 설정하는 단계는 상기 제1 커맨드가 읽기 명령인지 쓰기 명령인지에 따라 상기 불휘발성 메모리의 동작 주파수를 설정하는 스토리지 장치의 제어 방법.
10. The method of claim 9,
Further comprising analyzing whether the first command output from the memory controller to the nonvolatile memory is a read command or a write command,
Wherein the step of setting the frequency of the nonvolatile memory sets the operating frequency of the nonvolatile memory according to whether the first command is a read command or a write command.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/662,736 US9798469B2 (en) | 2014-07-31 | 2015-03-19 | Storage device and controlling method thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462031293P | 2014-07-31 | 2014-07-31 | |
US62/031,293 | 2014-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160017580A true KR20160017580A (en) | 2016-02-16 |
Family
ID=55448039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140126730A KR20160017580A (en) | 2014-07-31 | 2014-09-23 | Storage device and controlling method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20160017580A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190011654A (en) * | 2017-07-24 | 2019-02-07 | 삼성전자주식회사 | Storage device and electronic device including the same |
US11966207B2 (en) | 2017-07-24 | 2024-04-23 | Samsung Electronics Co., Ltd. | Storage device and temperature control of electronic device including the same |
-
2014
- 2014-09-23 KR KR1020140126730A patent/KR20160017580A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190011654A (en) * | 2017-07-24 | 2019-02-07 | 삼성전자주식회사 | Storage device and electronic device including the same |
US11966207B2 (en) | 2017-07-24 | 2024-04-23 | Samsung Electronics Co., Ltd. | Storage device and temperature control of electronic device including the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102291803B1 (en) | Operation method of a nonvolatile memory system, and operation method of user system including the same | |
KR102187521B1 (en) | Memory system including nonvolatile memory and memory controller and programming method for programming data into nonvolatile memory | |
KR102532206B1 (en) | Memory controller and storage device comprising the same | |
US9640264B2 (en) | Memory system responsive to flush command to store data in fast memory and method of operating memory system | |
KR102648180B1 (en) | Memory system and operating method thereof | |
US11461226B2 (en) | Storage device including memory controller | |
KR20170099610A (en) | Data storage device and operating method thereof | |
KR102225313B1 (en) | Data storage device and operating method thereof | |
US11416174B2 (en) | Memory device and method of operating the same | |
KR20160025292A (en) | Data storage device, data processing system including the same and operating method thereof | |
US9798469B2 (en) | Storage device and controlling method thereof | |
CN107066201B (en) | Data storage device and method thereof | |
KR20200067035A (en) | Data Storage Device and Operation Method Thereof, Storage System Having the Same | |
JP2022159991A (en) | Memory system and method of operation thereof | |
KR20200071602A (en) | Storage device and operating method thereof | |
KR20200046495A (en) | Memory system and operating method thereof | |
KR20160017580A (en) | Storage device and controlling method thereof | |
KR20170109344A (en) | Data storage device and operating method thereof | |
US9524757B2 (en) | Data storage device capable of reducing power consumption | |
US10073637B2 (en) | Data storage device based on a descriptor and operating method thereof | |
KR20220169772A (en) | Storage device and operating method thereof | |
KR20150044654A (en) | Nonvolatile memory device and data storage device including the same | |
US11567703B2 (en) | Memory device comprising queue layer and storage device including the same | |
US20230103797A1 (en) | Memory controller and method of operating the same | |
US20240004578A1 (en) | Memory system and method of operating memory controller included in the memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |