KR102149665B1 - Storage device, memory card, and communicating method of storage device - Google Patents
Storage device, memory card, and communicating method of storage device Download PDFInfo
- Publication number
- KR102149665B1 KR102149665B1 KR1020140126731A KR20140126731A KR102149665B1 KR 102149665 B1 KR102149665 B1 KR 102149665B1 KR 1020140126731 A KR1020140126731 A KR 1020140126731A KR 20140126731 A KR20140126731 A KR 20140126731A KR 102149665 B1 KR102149665 B1 KR 102149665B1
- Authority
- KR
- South Korea
- Prior art keywords
- protocol
- mode
- clock
- output terminal
- memory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4247—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
- G06F13/4256—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a clocked protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
본 발명의 스토리지 장치는 호스트 인터페이스, 입력 단자, 출력 단자, 및 클럭 단자를 포함한다. 호스트 인터페이스는 제1 프로토콜에 따른 통신을 수행한다. 입력 단자는 입력 신호를 수신하도록 설정된다. 출력 단자는 출력 신호를 출력하도록 설정된다. 클럭 단자는 클럭 신호를 수신하도록 설정된다. 스토리지 장치는 제1 프로토콜을 지원하지 않는 호스트 장치와 적어도 상기 클럭 단자를 통해 상기 제1 프로토콜과 서로 다른 제2 프로토콜에 따른 통신을 수행한다. The storage device of the present invention includes a host interface, an input terminal, an output terminal, and a clock terminal. The host interface performs communication according to the first protocol. The input terminal is set to receive an input signal. The output terminal is set to output an output signal. The clock terminal is set to receive a clock signal. The storage device communicates with a host device that does not support the first protocol and a second protocol different from the first protocol through at least the clock terminal.
Description
본 발명은 스토리지 장치에 관한 것으로, 더 상세하게는 스토리지 장치, 메모리 카드, 및 스토리지 장치의 통신 방법에 관한 것이다.The present invention relates to a storage device, and more particularly, to a storage device, a memory card, and a communication method of the storage device.
반도체 메모리(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, Germanium), gallium arsenide (GaAs, gallium arsenide), and indium phospide (InP). Semiconductor memories are largely 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) 등을 포함한다.Volatile memory is a memory device that loses stored data when power supply is cut off. Volatile memory includes SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM), and the like. Nonvolatile memory is a memory device that retains data stored even when power supply is cut off. Nonvolatile memory is ROM (Read Only Memory), PROM (Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM), Flash memory, PRAM (Phase-change RAM), MRAM (Magnetic RAM), It includes RRAM (Resistive RAM), FRAM (Ferroelectric RAM), and the like.
불휘발성 메모리는 컴퓨팅 장치의 스토리지로 이용된다. 불휘발성 메모리는 범용 컴퓨터와 결합되어 사용되는 SSD (Solid State Drive), 모바일 장치와 결합되어 사용되는 임베디드 스토리지(embedded storage), 범용 컴퓨터 또는 모바일 장치와 결합 또는 분리되는 착탈식 메모리 카드 등을 구성할 수 있다.Nonvolatile memory is used as storage for computing devices. Nonvolatile memory can be composed of SSD (Solid State Drive) used in combination with general-purpose computers, embedded storage used in combination with mobile devices, and removable memory cards that are combined or separated with general-purpose computers or mobile devices. have.
본 발명의 목적은 스토리지 장치는 제1 프로토콜을 지원하나 호스트 장치는 제1 프로토콜을 지원하지 않는 경우에, 호스트 장치와 제2 프로토콜에 따른 통신을 수행할 수 있는 스토리지 장치 및 그 통신 방법을 제공하는 데 있다.It is an object of the present invention to provide a storage device capable of performing communication according to a second protocol with a host device when a storage device supports the first protocol but the host device does not support the first protocol, and a communication method thereof. Have.
본 발명의 실시 예에 따른 스토리지 장치는 호스트 인터페이스, 입력 단자, 출력 단자, 및 클럭 단자를 포함한다. 호스트 인터페이스는 제1 프로토콜에 따른 통신을 수행한다. 입력 단자는 입력 신호를 수신하도록 설정된다. 출력 단자는 출력 신호를 출력하도록 설정된다. 클럭 단자는 클럭 신호를 수신하도록 설정된다. 스토리지 장치는 제1 프로토콜을 지원하지 않는 호스트 장치와 적어도 상기 클럭 단자를 통해 상기 제1 프로토콜과 서로 다른 제2 프로토콜에 따른 통신을 수행한다. A storage device according to an embodiment of the present invention includes a host interface, an input terminal, an output terminal, and a clock terminal. The host interface performs communication according to the first protocol. The input terminal is set to receive an input signal. The output terminal is set to output an output signal. The clock terminal is set to receive a clock signal. The storage device communicates with a host device that does not support the first protocol and a second protocol different from the first protocol through at least the clock terminal.
상기 제1 프로토콜은 UFS 프로토콜일 수 있다. The first protocol may be a UFS protocol.
상기 스토리지 장치는 제1 모드 및 제2 모드 중 하나로 동작할 수 있다. 스토리지 장치는 상기 제1 모드에서 상기 제1 프로토콜을 지원하는 호스트 장치와 상기 제1 프로토콜에 따른 통신을 수행하고, 상기 제2 모드에서 상기 제1 프로토콜을 지원하지 않는 호스트 장치와 상기 제2 프로토콜에 따른 통신을 수행할 수 있다. The storage device may operate in one of a first mode and a second mode. The storage device performs communication according to the first protocol with a host device supporting the first protocol in the first mode, and a host device that does not support the first protocol and the second protocol in the second mode. Communication can be performed accordingly.
상기 제2 모드에서, 상기 스토리지 장치는 상기 클럭 단자를 통해 상기 제2 프로토콜에 따른 상기 클럭 신호를 수신하고, 상기 출력 단자를 통해 상기 제2 프로토콜에 따른 상기 출력 신호를 출력할 수 있다. In the second mode, the storage device may receive the clock signal according to the second protocol through the clock terminal, and may output the output signal according to the second protocol through the output terminal.
상기 제2 모드에서, 상기 입력 단자는 비활성화될 수 있다. In the second mode, the input terminal may be deactivated.
상기 스토리지 장치는 상기 제2 프로토콜에 따른 상기 클럭 신호의 적어도 하나의 명령어 셋을 세그먼트 단위로 분석하여 상기 세그먼트의 클럭 모드를 판별하는 클럭 디코더를 더 포함할 수 있다. The storage device may further include a clock decoder for determining a clock mode of the segment by analyzing at least one instruction set of the clock signal according to the second protocol for each segment.
상기 세그먼트는 복수의 펄스들로 이루어지고, 상기 세그먼트의 길이와 상기 클럭 모드는 상기 펄스들의 펄스 폭에 의해 결정될 수 있다. The segment is composed of a plurality of pulses, and the length of the segment and the clock mode may be determined by a pulse width of the pulses.
상기 클럭 모드는, 제1 내지 제4 클럭 모드들을 포함할 수 있다. 상기 제1 클럭 모드는 상기 제2 모드로 진입하라는 명령이 할당될 수 있다. 상기 제2 클럭 모드는 상기 제2 모드에서 실행할 동작을 나타내는 코드의 제1 비트에 대응할 수 있다. 상기 제3 클럭 모드는 상기 코드의 상기 제1 비트와 서로 다른 제2 비트에 대응할 수 있다. 상기 제4 클럭 모드는 상기 코드가 나타내는 동작을 실행하라는 명령이 할당될 수 있다. The clock mode may include first to fourth clock modes. In the first clock mode, a command to enter the second mode may be assigned. The second clock mode may correspond to a first bit of a code indicating an operation to be executed in the second mode. The third clock mode may correspond to a second bit different from the first bit of the code. In the fourth clock mode, a command to execute an operation indicated by the code may be assigned.
상기 출력 단자는 상기 제2 모드로 진입한 후, 상기 명령어 셋에 해당하는 동작을 실행할 때까지 하이버네이트 상태(HIBERN8)로 제어될 수 있다. 상기 출력 단자는 상기 명령어 셋에 해당하는 동작을 실행한 후, 실행 결과에 따라 상기 하이버네이트 상태(HIBERN8)를 유지하도록 제어되거나, 양의 상태(DIF-P) 및 음의 상태(DIF-N) 중 어느 하나로 제어될 수 있다. After entering the second mode, the output terminal may be controlled to a hibernate state (HIBERN8) until an operation corresponding to the command set is executed. The output terminal is controlled to maintain the hibernate state (HIBERN8) according to the execution result after executing an operation corresponding to the instruction set, or a positive state (DIF-P) and a negative state (DIF-N). It can be controlled by either.
상기 출력 단자는 상기 하이버네이트 상태(HIBERN8)에서 풀-업될 수 있다.The output terminal may be pulled up in the hibernate state (HIBERN8).
상기 출력 단자는 서로 상보적인 신호들을 출력하는 제1 출력 단자 및 제2 출력 단자를 포함할 수 있다. 상기 출력 단자가 상기 양의 상태 또는 상기 음의 상태로 제어될 때, 상기 제1 출력 단자 및 상기 제2 출력 단자 중 로우 상태를 갖는 단자를 통해 상기 제2 프로토콜에 따른 통신을 수행할 수 있다.The output terminal may include a first output terminal and a second output terminal outputting signals complementary to each other. When the output terminal is controlled to the positive state or the negative state, communication according to the second protocol may be performed through a terminal having a low state among the first and second output terminals.
상기 호스트 인터페이스는 상기 제1 프로토콜에 따라 상기 입력 신호를 수신하거나 상기 출력 신호를 출력하고, 상기 클럭 디코더를 포함하는 물리 레이어를 포함할 수 있다. The host interface may include a physical layer that receives the input signal or outputs the output signal according to the first protocol, and includes the clock decoder.
상기 스토리지 장치는 메모리 카드로 구현될 수 있다. The storage device may be implemented as a memory card.
본 발명의 실시 예에 따른 제1 프로토콜을 지원하는 호스트 인터페이스, 입력 단자, 출력 단자, 및 클럭 단자를 포함하는 스토리지 장치와 상기 제1 프로토콜을 지원하지 않는 호스트 장치 사이의 제2 프로토콜에 따른 통신 방법에 있어서, 스토리지 장치의 통신 방법은, 상기 클럭 단자로 상기 제2 프로토콜에 따른 적어도 하나의 명령어 셋을 갖는 신호가 입력되는 단계; 및 상기 출력 단자로 상기 명령어 셋에 해당하는 동작의 결과를 출력하는 단계를 포함할 수 있다. A communication method according to a second protocol between a storage device including a host interface supporting a first protocol, an input terminal, an output terminal, and a clock terminal according to an embodiment of the present invention and a host device not supporting the first protocol The method of
스토리지 장치의 통신 방법은 상기 제2 프로토콜에 따른 통신 모드로 진입하는 단계; 및 상기 명령어 셋에 해당하는 동작을 실행하는 단계를 더 포함할 수 있다. The communication method of the storage device includes entering a communication mode according to the second protocol; And performing an operation corresponding to the instruction set.
상기 명령어 셋에 해당하는 동작은, 펌웨어 다운로드, 메모리 테스트 실행, BIST(Built-in self-test) 실행, 및 디버깅을 위해 메모리 컨트롤러 내부 상태 확인 중 적어도 하나일 수 있다. The operation corresponding to the command set may be at least one of downloading a firmware, executing a memory test, executing a built-in self-test (BIST), and checking an internal state of the memory controller for debugging.
상기 명령어 셋에 해당하는 동작의 결과를 출력할때까지 상기 출력 단자를 하이버네이트 상태(HIBERN8)로 제어할 수 있다. 상기 명령어 셋에 해당하는 동작의 실행 결과에 따라 상기 출력 단자를 하이버네이트 상태(HIBERN8)를 유지하도록 제어하거나, 양의 상태(DIF-P) 및 음의 상태(DIF-N) 중 어느 하나로 제어할 수 있다. The output terminal may be controlled in a hibernate state (HIBERN8) until a result of an operation corresponding to the command set is output. Depending on the execution result of the operation corresponding to the instruction set, the output terminal can be controlled to maintain the hibernate state (HIBERN8), or to one of the positive state (DIF-P) and the negative state (DIF-N). I can.
제1 프로토콜은 UFS 프로토콜일 수 있다. The first protocol may be a UFS protocol.
본 발명의 실시 예에 따른 메모리 카드는 불휘발성 메모리 및 메모리 컨트롤러를 포함한다. 상기 불휘발성 메모리는 쓰기, 읽기, 및 소거를 수행할 수 있다. 상기 메모리 컨트롤러는 상기 불휘발성 메모리를 제어하고, 제1 프로토콜을 지원하는 호스트 장치와 상기 제1 프로토콜에 따른 통신을 수행하는 제1 모드 및 상기 제1 프로토콜을 지원하지 않는 호스트 장치와 상기 제1 프로토콜과 서로 다른 제2 프로토콜에 따른 통신을 수행하는 제2 모드 중 하나로 동작할 수 있다.A memory card according to an embodiment of the present invention includes a nonvolatile memory and a memory controller. The nonvolatile memory may perform writing, reading, and erasing. The memory controller controls the nonvolatile memory, a first mode for performing communication according to the first protocol with a host device supporting a first protocol, and a host device not supporting the first protocol and the first protocol It is possible to operate in one of the second modes for performing communication according to a second protocol different from the one.
상기 메모리 컨트롤러는, 호스트 인터페이스, 출력 단자, 및 클럭 단자를 포함할 수 있다. 상기 호스트 인터페이스는 상기 제1 프로토콜에 따른 통신을 수행할 수 있다. 상기 출력 단자는 상기 제2 모드에서 상기 제2 프로토콜에 따른 출력 신호를 출력할 수 있다. 상기 클럭 단자는 상기 제2 모드에서 상기 제2 프로토콜에 따른 클럭 신호를 수신할 수 있다. The memory controller may include a host interface, an output terminal, and a clock terminal. The host interface may perform communication according to the first protocol. The output terminal may output an output signal according to the second protocol in the second mode. The clock terminal may receive a clock signal according to the second protocol in the second mode.
상기 메모리 컨트롤러는 상기 제2 모드에서 비활성화되는 입력 단자를 더 포함할 수 있다. The memory controller may further include an input terminal deactivated in the second mode.
본 발명에 따른 스토리지 장치 및 그 통신 방법은 호스트 장치가 제1 프로토콜을 지원하지 않는 경우에도, 클럭 단자와 출력 단자를 통해 호스트 장치와 제2 프로토콜에 따른 통신을 수행할 수 있다.The storage device and the communication method thereof according to the present invention can perform communication with the host device according to the second protocol through the clock terminal and the output terminal even when the host device does not support the first protocol.
도 1은 본 발명의 실시 예에 따른 메모리 시스템을 보여주는 블록도이다.
도 2는 본 발명의 실시 예에 따른 스토리지 장치를 보여주는 블록도이다.
도 3은 제2 프로토콜에 따른 제2 클럭 신호 중 하나의 세그먼트를 도시한 도면이다.
도 4는 본 발명의 실시 예에서 제2 프로토콜에 따라 세그먼트의 클럭 모드들에 할당된 기능을 예시적으로 도시한 도면이다.
도 5는 본 발명의 실시 예에서 클럭 단자에 인가되는 신호 및 제1 출력 단자로부터 출력되는 신호를 예시적으로 도시한 도면이다.
도 6은 본 발명의 실시 예에 따른 스토리지 장치의 동작 방법을 보여주는 순서도이다.
도 7은 도 6의 S140 단계를 보여주는 순서도이다. 호스트 장치는 제1 프로토콜을 지원하지 않는 것으로 가정한다.
도 8은 본 발명의 실시 예에 따른 호스트 장치 및 메모리 컨트롤러가 제2 프로토콜에 따른 통신을 수행하는 것을 보여주는 순서도이다.
도 9는 본 발명의 다른 실시 예에 따른 스토리지 장치를 보여주는 블록도이다.
도 10은 본 발명의 실시 예에 따른 도 2의 스토리지 장치의 불휘발성 메모리를 보여주는 블록도이다.
도 11는 본 발명의 실시 예에 따른 도 10의 불휘발성 메모리의 메모리 블록(BLKa)을 보여주는 회로도이다.
도 12는 본 발명의 다른 실시 예에 따른 도 10의 불휘발성 메모리의 메모리 블록(BLKb)을 보여주는 회로도이다.
도 13은 본 발명의 실시 예에 따른 메모리 컨트롤러를 보여주는 블록도이다.
도 14은 본 발명의 실시 예에 따른 메모리 카드를 보여주는 블록도이다.1 is a block diagram illustrating a memory system according to an embodiment of the present invention.
2 is a block diagram illustrating a storage device according to an embodiment of the present invention.
3 is a diagram illustrating a segment of a second clock signal according to a second protocol.
4 is a diagram illustrating functions allocated to clock modes of a segment according to a second protocol in an embodiment of the present invention.
5 is a diagram illustrating a signal applied to a clock terminal and a signal output from a first output terminal in an exemplary embodiment of the present invention.
6 is a flowchart illustrating a method of operating a storage device according to an embodiment of the present invention.
7 is a flow chart showing step S140 of FIG. 6. It is assumed that the host device does not support the first protocol.
8 is a flow chart illustrating that a host device and a memory controller perform communication according to a second protocol according to an embodiment of the present invention.
9 is a block diagram illustrating a storage device according to another embodiment of the present invention.
10 is a block diagram illustrating a nonvolatile memory of the storage device of FIG. 2 according to an embodiment of the present invention.
11 is a circuit diagram illustrating a memory block BLKa of the nonvolatile memory of FIG. 10 according to an embodiment of the present invention.
12 is a circuit diagram illustrating a memory block BLKb of the nonvolatile memory of FIG. 10 according to another embodiment of the present invention.
13 is a block diagram illustrating a memory controller according to an embodiment of the present invention.
14 is a block diagram illustrating a memory card according to an embodiment of the present invention.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.In the following, the contents of the present invention will be described clearly and in detail to the extent that a person of ordinary skill in the technical field of the present invention can easily implement it using the drawings.
도 1은 본 발명의 실시 예에 따른 메모리 시스템(1000)을 보여주는 블록도이다. 도 1을 참조하면, 메모리 시스템(1000)은 호스트 장치(100) 및 스토리지 장치(200)를 포함한다.1 is a block diagram illustrating a
호스트 장치(100)는 스토리지 장치(200)를 테스트하는 자동화 검사 장치(ATE: Automated Test Equipment) 일 수 있다. 호스트 장치(100)는 스토리지 장치(200)와 통신을 수행할 수 있다. 호스트 장치(100)는 스토리지 장치(200)를 테스트하기 위한 신호를 스토리지 장치(200)에 출력하고, 스토리지 장치(200)로부터 테스트 결과를 수신할 수 있다. The
호스트 장치(100)는 스토리지 장치(200)의 호스트 인터페이스와 다른 방식의 프로토콜을 지원할 수 있다. 구체적인 설명은 후술된다. 한편, 호스트 장치(100)는 자동화 검사 장치로 제한되는 것은 아니고, 스토리지 장치(200)와 다른 방식의 프로토콜을 지원하는 다양한 장치로 제공될 수 있다. The
스토리지 장치(200)는 호스트 장치(100)와 통신을 수행하여 호스트 장치(100)의 제어에 따른 동작을 수행할 수 있다. 스토리지 장치(200)는 플래시 메모리, PRAM, MRAM, RRAM 등과 같은 불휘발성 메모리를 포함할 수 있다. 예시적으로, 스토리지 장치(200)는 호스트 장치(100)와 결합 또는 분리될 수 있는 착탈식 메모리 카드일 수 있다.The
일반적으로, 호스트 장치(100)와 스토리지 장치(200)는 서로 동일한 인터페이스 방식을 통해 서로 통신할 수 있다. 하지만, 본 발명의 실시 예에 따른 메모리 시스템(1000)에 의하면, 스토리지 장치(200)는 제1 프로토콜을 지원하고, 호스트 장치(100)는 제1 프로토콜을 지원하지 않을 수 있다. 이러한 경우에도, 호스트 장치(100)와 스토리지 장치(200)는 제1 프로토콜과 서로 다른 제2 프로토콜에 따라 통신을 수행할 수 있다. 이하의 설명에서, 호스트 장치(100)는 제1 프로토콜을 지원하지 않는 것을 기준으로 설명한다. In general, the
도 2는 본 발명의 실시 예에 따른 스토리지 장치(200)를 보여주는 블록도이다. 도 1 및 도 2를 참조하면, 스토리지 장치(200)는 불휘발성 메모리(210) 및 메모리 컨트롤러(220)를 포함한다.2 is a block diagram illustrating a
불휘발성 메모리(210)는 메모리 컨트롤러(220)의 제어에 따라 쓰기, 읽기 및 소거를 수행할 수 있다. 불휘발성 메모리(210)는 낸드 플래시 메모리를 포함할 수 있다. 그러나, 불휘발성 메모리(210)는 낸드 플래시 메모리를 포함하는 것으로 한정되지 않는다. 불휘발성 메모리(210)는 PRAM, MRAM, RRAM, FeRAM 등과 같은 다양한 불휘발성 메모리들 중 적어도 하나를 포함할 수 있다.The
메모리 컨트롤러(220)는 호스트 장치(100)의 요청에 따라 불휘발성 메모리(210)를 제어하도록 구성된다. 메모리 컨트롤러(220)는 불휘발성 메모리(210)로 제어 신호(CTRL)를 전송하고, 불휘발성 메모리(210)와 데이터(DATA)를 교환하도록 구성된다. The
메모리 컨트롤러(220)는 제1 모드 및 제2 모드 중 하나로 동작할 수 있다. 제1 모드는 제1 프로토콜에 따라 제1 프로토콜을 지원하는 호스트 장치와 통신을 수행하는 모드이고, 제2 모드는 제1 프로토콜과 다른 제2 프로토콜에 따라 제1 프로토콜을 지원하지 않는 호스트 장치와 통신을 수행하는 모드일 수 있다. The
메모리 컨트롤러(220)는 호스트 인터페이스(230), 클럭 디코더(240), 및 프로세서(250)을 포함한다. The
호스트 인터페이스(230)는 제1 프로토콜에 따른 메모리 컨트롤러(220)와 호스트 장치(100) 사이의 통신을 관리할 수 있다. 본 발명의 실시 예에서, 제1 프로토콜은 UFS(Universal Flash Storage) 프로토콜일 수 있다. 호스트 인터페이스(230)는 UFS 프로토콜을 지원하는 호스트 장치와 인터페이스 할 수 있다. 다시 말해, 호스트 인터페이스(230)는 UFS 프로토콜을 지원하지 않는 호스트 장치(100)와 인터페이스 할 수 없다. 한편, 이에 제한되는 것은 아니고, 호스트 인터페이스(230)는 USB(Universal Serial Bus), MMC(Man Machine Communication), PCI-E(Peripheral Component Interconnect-Express), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Device Interface), 및 IDE(Intelligent Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜을 이용하여 동일한 인터페이스 프로토콜을 지원하는 호스트 장치와 인터페이스 할 수 있다. The
호스트 인터페이스(230)는 링크 레이어(231) 및 물리 레이어(233)를 포함할 수 있다. The
링크 레이어(231)는 UFS 프로토콜에 따라 출력 신호를 생성하고, 수신 신호를 수신할 수 있다. 링크 레이어(231)는 OSI (Open Systems Interconnection) 레이어들 중 물리 어댑터 레이어(L1.5), 데이터 링크 레이어 부(L2), 네트워크 레이어(L3), 그리고 트랜스포트 레이어(L4)를 포함할 수 있다. 링크 레이어(231)는 DME (Device Management Entity)를 구성할 수 있다. 링크 레이어(231)는 MIPI(Mobile Industry Processor Interface) Unipro를 포함할 수 있다. The
물리 레이어(233)는 UFS 프로토콜에 따라 출력 신호를 송신하고, 수신 신호를 수신할 수 있다. 물리 레이어(233)는 OSI 계층들 중 물리 레이어 (L1)를 포함할 수 있다. 물리 레이어(233)는 MIPI M-PHY를 포함할 수 있다.The
호스트 인터페이스(230)는 출력 단자(TX), 입력 단자(RX), 및 클럭 단자(REF_CLK)를 포함할 수 있다. The
물리 레이어(233)는 출력 단자(TX)를 통해 호스트 장치(100)로 신호를 전송할 수 있다. 출력 단자(TX)는 호스트 장치(100)의 수신 패드와 연결되어 채널을 구성할 수 있다. 제1 모드에서 출력 단자(TX)는 제1 프로토콜에 따른 출력 신호를 출력하도록 설정될 수 있다.The
출력 단자(TX)는 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)를 포함할 수 있다. 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)는 적어도 세가지 상태들 중 하나로 제어될 수 있다. 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)는 양의 상태(DIF-P), 음의 상태(DIF-N), 및 하이버네이트 상태(HIBERN8) 중 하나로 제어될 수 있다.The output terminal TX may include a first output terminal DOUT_t and a second output terminal DOUT_c. The first output terminal DOUT_t and the second output terminal DOUT_c may be controlled in one of at least three states. The first output terminal DOUT_t and the second output terminal DOUT_c may be controlled to one of a positive state (DIF-P), a negative state (DIF-N), and a hibernate state (HIBERN8).
제1 출력 단자(DOUT_t)의 제1 출력 신호의 레벨(예를 들어, 전압 레벨)이 제2 출력 단자(DOUT_c)의 제2 출력 신호의 레벨보다 높을 때, 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)는 양의 상태(DIF-P)일 수 있다. 제1 출력 단자(DOUT_t)의 제1 출력 신호의 레벨(예를 들어, 전압 레벨)이 제2 출력 단자(DOUT_c)의 제2 출력 신호의 레벨보다 낮을 때, 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)는 음의 상태(DIF-N)일 수 있다. 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)가 플로팅될 때, 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)는 하이버네이트 상태(HIBERN8)일 수 있다.When the level (eg, voltage level) of the first output signal of the first output terminal DOUT_t is higher than the level of the second output signal of the second output terminal DOUT_c, the first output terminal DOUT_t and the second 2 The output terminal DOUT_c may be in a positive state DIF-P. When the level (eg, voltage level) of the first output signal of the first output terminal DOUT_t is lower than the level of the second output signal of the second output terminal DOUT_c, the first output terminal DOUT_t and the second 2 The output terminal DOUT_c may be in a negative state DIF-N. When the first output terminal DOUT_t and the second output terminal DOUT_c are floating, the first output terminal DOUT_t and the second output terminal DOUT_c may be in a hibernate state HIBERN8.
제1 모드에서, 호스트 인터페이스(230)는 UFS 프로토콜을 지원하는 호스트 장치와 연결되어 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)의 양의 상태(DIF-P) 및 음의 상태(DIF-N)를 이용하여 정보를 전송할 수 있다. 즉, 호스트 인터페이스(230)는 UFS 프로토콜에 따라 제1 출력 단자(DOUT_t)의 제1 출력 신호 및 제2 출력 단자(DOUT_c)의 제2 출력 신호를 상보적인 신호로 전송하여, 정보를 전달할 수 있다. In the first mode, the
제2 모드에서, 호스트 인터페이스(230)는 UFS 프로토콜을 지원하지 않는 호스트 장치(100)와 연결되어 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c)를 통해 UFS 프로토콜에 따른 정보를 출력할 수 없다. 따라서, 제2 모드에서, 메모리 컨트롤러(220)는 UFS 프로토콜이 아닌 별도의 제2 프로토콜를 사용하여 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c) 중 어느 하나를 통해 호스트 장치(100)에 정보를 출력할 수 있다.In the second mode, the
물리 레이어(233)는 입력 단자(RX)를 통해 호스트 장치(100)로 인가된 신호를 수신할 수 있다. 입력 단자(RX)는 호스트 장치(100)의 출력 단자와 연결되어 채널을 구성할 수 있다. 제1 모드에서, 입력 단자(RX)는 제1 프로토콜에 따른 입력 신호를 수신하도록 설정될 수 있다. The
입력 단자(RX)는 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)를 포함할 수 있다. 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)는 적어도 세 가지 상태들 중 하나로 제어될 수 있다. 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)는 양의 상태(DIF-P), 음의 상태(DIF-N), 및 하이버네이트 상태(HIBERN8) 중 하나로 제어될 수 있다.The input terminal RX may include a first input terminal DIN_t and a second input terminal DIN_c. The first input terminal DIN_t and the second input terminal DIN_c may be controlled in one of at least three states. The first input terminal DIN_t and the second input terminal DIN_c may be controlled to one of a positive state (DIF-P), a negative state (DIF-N), and a hibernate state (HIBERN8).
제1 입력 단자(DIN_t)의 제1 입력 신호의 레벨(예를 들어, 전압 레벨)이 제2 입력 단자(DIN_c)의 제2 입력 신호의 레벨보다 높을 때, 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)는 양의 상태(DIF-P)일 수 있다. 제1 입력 단자(DIN_t)의 제1 입력 신호의 레벨(예를 들어, 전압 레벨)이 제2 입력 단자(DIN_c)의 제2 입력 신호의 레벨보다 낮을 때, 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)는 음의 상태(DIF-N)일 수 있다. 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)가 플로팅될 때, 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)는 하이버네이트 상태(HIBERN8)일 수 있다.When the level (eg, voltage level) of the first input signal of the first input terminal DIN_t is higher than the level of the second input signal of the second input terminal DIN_c, the first input terminal DIN_t and the second 2 The input terminal DIN_c may be in a positive state DIF-P. When the level (eg, voltage level) of the first input signal of the first input terminal DIN_t is lower than the level of the second input signal of the second input terminal DIN_c, the first input terminal DIN_t and the second 2 The input terminal DIN_c may be in a negative state DIF-N. When the first input terminal DIN_t and the second input terminal DIN_c are floating, the first input terminal DIN_t and the second input terminal DIN_c may be in a hibernate state HIBERN8.
제1 모드에서, 호스트 인터페이스(230)는 UFS 프로토콜을 지원하는 호스트 장치와 연결되어 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)의 양의 상태(DIF-P) 및 음의 상태(DIF-N)를 이용하여 정보를 할 수 있다. 즉, 호스트 인터페이스(230)는 UFS 프로토콜에 따라 제1 입력 단자(DIN_t)의 제1 입력 신호 및 제2 입력 단자(DIN_c)의 제2 입력 신호를 상보적인 신호로 수신하여, 정보를 식별할 수 있다. In the first mode, the
제2 모드에서, 호스트 인터페이스(230)는 UFS 프로토콜을 지원하지 않는 호스트 장치(100)와 연결되어 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)를 통해 UFS 프로토콜에 따른 정보를 식별할 수 없다. 제2 모드에서, 메모리 컨트롤러(220)는 제2 프로토콜에 따른 신호를 제1 입력 단자(DIN_t) 및 제2 입력 단자(DIN_c)로 수신하지 않는다. 구체적으로, 제2 모드에서, 메모리 컨트롤러(220)는 제2 프로토콜에 따른 신호를 클럭 단자(REF_CLK)를 통해 수신할 수 있다. In the second mode, the
제1 모드에서, 호스트 인터페이스(230)는 클럭 단자(REF_CLK)를 통해 제1 프로토콜에 따른 제1 클럭 신호를 수신할 수 있다. 제2 모드에서, 호스트 인터페이스(230)는 클럭 단자(REF_CLK)를 통해 제2 프로토콜에 따른 제2 클럭 신호를 수신할 수 있다. 본 실시 예에서, 제1 프로토콜이 UFS 프로토콜일 수 있고, UFS 표준 시방서(specification)에 따르면, 클럭 단자(REF_CLK)는 기준 클럭을 수신하거나 비활성화되어 풀-다운될 수 있다. 즉, UFS 프로토콜에 따라 클럭 단자(REF_CLK)가 비활성화되는 시간 동안 메모리 컨트롤러(220)는 제2 모드로 동작할 수 있고, 클럭 단자(REF_CLK)는 제2 클럭 신호를 수신할 수 있다.In the first mode, the
호스트 인터페이스(230)는 제2 프로토콜에 따른 제2 클럭 신호를 제1 및 제2 입력 단자들(DIN_t, DIN_c) 통해 수신하지 않고, 클럭 단자(REF_CLK)를 통해 수신한다. UFS 표준 시방서에 따르면, 제1 및 제2 입력 단자들(DIN_t, DIN_c)로 인가되는 신호는 200mV 내지 400mV의 범위의 스윙 폭을 가질 수 있다. 반면, 클럭 단자(REF_CLK)로 인가되는 신호는 1.2V의 범위의 스윙 폭을 가질 수 있다. 제1 및 제2 입력 단자들(DIN_t, DIN_c)로 인가되는 신호는 클럭 단자(REF_CLK)로 인가되는 신호에 비해 스윙하는 전압의 진폭이 작아서 제2 프로토콜에 따른 신호를 수신하는데 적합하지 않다. 또한, UFS 표준 시방서에 따르면, 제1 및 제2 입력 단자들(DIN_t, DIN_c)로 인가되는 신호는 클럭 단자(REF_CLK)로 인가되는 신호에 비해 요구되는 주파수가 커서, 제2 프로토콜에 따른 신호를 수신하는데 적합하지 않다. The
도시하지는 않았으나, 호스트 인터페이스(230)는 전원 단자를 더 포함할 수 있다. 전원 단자는 호스트 장치(100)로부터 전원을 공급받을 수 있다. Although not shown, the
클럭 디코더(240)는 호스트 인터페이스(230)로부터 제2 클럭 신호를 수신할 수 있다. 구체적으로, 물리 레이어(233)는 클럭 디코더(240)에 제2 클럭 신호를 전달할 수 있다. 클럭 디코더(240)는 제2 프로토콜에 따라 제2 클럭 신호를 디코딩하여 그 결과를 저장할 수 있다.The
클럭 디코더(240)는 모드 선택부(241) 및 SFR(Special Function Register)(243)를 포함할 수 있다.The
모드 선택부(241)는 제2 클럭 신호를 세그먼트 단위로 분석할 수 있다. 제2 클럭 신호는 복수의 세그먼트들을 포함할 수 있고, 각 세그먼트는 복수의 클럭 모드들 중 어느 하나의 정보를 가질 수 있다. The
본 발명의 실시 예에서 각 세그먼트는 4개의 제1 내지 제4 클럭 모드들 중 어느 하나의 정보를 갖는 것을 기준으로 설명한다. 모드 선택부(241)는 제2 클럭 신호의 각 세그먼트를 제1 내지 제4 클럭 모드들 중 어느 하나로 판별할 수 있다. 한편, 이에 제한되는 것은 아니고, 각 세그먼트는 5개 이상의 클럭 모드들 중 어느 하나의 정보를 가질 수 있다. 자세한 내용은 도 3을 참조하여 설명된다.In the exemplary embodiment of the present invention, each segment will be described based on information on any one of the four first to fourth clock modes. The
SFR(243)는 모드 선택부(241)에서 판별된 각 세그먼트의 클럭 모드 정보를 저장할 수 있다. 각 세그먼트의 클럭 모드 정보가 복수 개로 모여 하나의 명령어 셋(Command Set)을 이룰 수 있다. The
프로세서(250)는 메모리 컨트롤러(220)의 제반 동작을 제어하고, 논리 연산을 수행할 수 있다. 메모리 컨트롤러(220)가 제2 모드로 동작시, 프로세서(250)는 SFR(243)이 저장한 명령어 셋에 해당하는 동작을 수행한다. 프로세서(250)는 명령어 셋에 해당하는 동작을 수행한 결과를 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c) 중 어느 하나를 통해 호스트 장치(100)에 출력할 수 있다. 예를 들어, 명령어 셋이 불휘발성 메모리(210)의 테스트를 지시하는 경우, 프로세서(250)는 명령어 셋에 따라 불휘발성 메모리(210)를 테스트하고, 불량인지 여부를 결과로서 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c) 중 어느 하나를 통해 출력할 수 있다.The
호스트 장치(100)는 제1 프로토콜을 지원하지 않더라도, 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c) 중 어느 하나의 상태를 통해 명령어 셋에 해당하는 동작의 성공 여부를 인식할 수 있다. Even if the
프로세서(250)는 펌웨어와 마이크로 프로세서 칩으로 구현될 수 있으며, 필요에 따라 마이크로 프로세서 칩을 생략하고 펌웨어로 구현될 수 있다. The
도 3은 제2 프로토콜에 따른 제2 클럭 신호(Clk2) 중 하나의 세그먼트를 도시한 도면이다. 제2 클럭 신호(Clk2)의 세그먼트들은 클럭 모드 정보를 제외하고 동일한 형태를 가지므로, 이하 도 3을 참조하여 하나의 세그먼트에 대해 설명한다.3 is a diagram illustrating one segment of a second clock signal Clk2 according to a second protocol. Since the segments of the second clock signal Clk2 have the same shape except for the clock mode information, one segment will be described below with reference to FIG. 3.
도 3을 참조하면, 각 세그먼트는 복수의 펄스들로 이루어질 수 있다. 각 세그먼트의 펄스들은 서로 다른 제1 내지 제4 펄스 폭들(W1~W4)을 가질 수 있다. 각 세그먼트는 펄스들의 펄스 폭들(W1~W4)을 통해 세그먼트의 길이와 클럭 모드에 대한 정보를 포함할 수 있다. Referring to FIG. 3, each segment may be formed of a plurality of pulses. Pulses of each segment may have different first to fourth pulse widths W1 to W4. Each segment may include information on a length of a segment and a clock mode through pulse widths W1 to W4 of pulses.
예를 들어, 제1 펄스 폭(W1)을 갖는 펄스는 세그먼트가 시작됨을 의미하고, 제4 펄스 폭(W4)은 세그먼트가 종료됨을 의미할 수 있다. 각 세그먼트의 길이는 제1 펄스 폭(W1)을 갖는 펄스의 라이징 시점부터 제4 펄스 폭(W4)을 갖는 펄스의 폴링 시점까지로 정의될 수 있다. For example, a pulse having a first pulse width W1 may mean that a segment is started, and a fourth pulse width W4 may mean that a segment is ended. The length of each segment may be defined from the rising point of the pulse having the first pulse width W1 to the falling point of the pulse having the fourth pulse width W4.
또한, 제2 펄스 폭(W2)을 갖는 펄스는 디지털 비트 “1”에 대응할 수 있고, 제3 펄스 폭(W3)을 갖는 펄스는 디지털 비트 “0”에 대응할 수 있다. 각 세그먼트의 클럭 모드는 제2 펄스 폭(W2)을 갖는 펄스와 제3 펄스 폭(W3)을 갖는 펄스의 조합으로부터 설정될 수 있다. Further, a pulse having a second pulse width W2 may correspond to a digital bit “1”, and a pulse having a third pulse width W3 may correspond to a digital bit “0”. The clock mode of each segment may be set from a combination of a pulse having a second pulse width W2 and a pulse having a third pulse width W3.
도 4는 본 발명의 실시 예에서 제2 프로토콜에 따라 세그먼트의 클럭 모드들(Clk Mode)에 할당된 기능을 예시적으로 도시한 도면이다.FIG. 4 is a diagram exemplarily showing functions allocated to clock modes of segments according to a second protocol in an embodiment of the present invention.
도 1, 도 2, 및 도 4를 참조하면, 세그먼트의 제1 클럭 모드(M1)에는 메모리 컨트롤러(220)가 제2 모드로 진입하라는 명령이 할당될 수 있다. 제1 클럭 모드(M1)가 인식되면, 메모리 컨트롤러(220)는 제2 모드로 진입하여 제2 프로토콜에 따른 호스트 장치(100)와의 통신을 준비하고, 제1 프로토콜에 따른 통신을 비활성화시킨다. 1, 2, and 4, a command for the
제2 및 제3 클럭 모드들(M2, M3)에는 제2 모드에서 메모리 컨트롤러(220)가 실행할 동작을 나타내는 코드가 할당될 수 있다. 제2 클럭 모드(M2)는 디지털 비트 “1”로 설정될 수 있고, 제3 클럭 모드(M3)는 디지털 비트 “0”으로 설정될 수 있다. 제2 및 제3 클럭 모드들(M2, M3)의 조합에 의해 다양한 코드가 생성될 수 있다. 또한, 코드의 길이는 다양하게 설정될 수 있다. A code indicating an operation to be executed by the
코드가 나타내는 메모리 컨트롤러(220)가 실행가능한 동작은 예를 들어, 펌웨어 다운로드, 메모리 테스트 실행, BIST(Built-in self-test) 실행, 및 디버깅을 위해 메모리 컨트롤러 내부 상태 확인 등일 수 있다.Operations that the
제4 클럭 모드(M4)에는 코드가 나타내는 동작을 메모리 컨트롤러(220)가 실행하라는 명령이 할당될 수 있다. 제4 클럭 모드(M4)가 인식되면, 메모리 컨트롤러(220)는 코드가 나타내는 동작을 실행하고, 그 결과를 호스트 장치(100)에 출력할 수 있다. In the fourth clock mode M4, a command for the
도 5는 본 발명의 실시 예에서 클럭 단자에 인가되는 신호 및 제1 출력 단자로부터 출력되는 신호를 예시적으로 도시한 도면이다. 5 is a diagram illustrating a signal applied to a clock terminal and a signal output from a first output terminal in an embodiment of the present invention.
도 5에서 클럭 단자(REF_CLK)에는 하나의 명령어 셋을 갖는 제2 클럭 신호가 인가되는 것을 일 예로 도시하였다. 도 5에서 메모리 컨트롤러(220)는 제1 출력 단자(DOUT_t)를 통해 명령어 셋에 해당하는 동작의 결과를 출력하는 것을 기준으로 도시하였다. 하지만, 이에 제한되는 것은 아니고, 메모리 컨트롤러(220)는 제2 출력 단자(DOUT_c)를 통해 명령어 셋에 해당하는 동작의 결과를 출력할 수도 있다. In FIG. 5, as an example, a second clock signal having one instruction set is applied to the clock terminal REF_CLK. In FIG. 5, the
도 1, 도 2 및 도 5를 참조하면, 제1 구간(T1) 내에 메모리 컨트롤러(220)는 호스트 장치(100)로부터 클럭 단자(REF_CLK)를 통해 제2 프로토콜에 따른 명령어 셋을 수신한다. 제1 구간(T1) 내에 클럭 디코더(240)는 명령어 셋을 디코딩할 수 있다. 또한, 프로세서(250)는 제1 구간(T1) 내에 제1 클럭 모드(M1)에 따라 제2 모드로 진입할 수 있다. 1, 2, and 5, the
제1 구간(T1) 동안 출력 단자(TX)는 하이버네이트 상태(HIBERN8)일 수 있다. 프로세서(250)는 출력 단자(TX)가 하이버네이트 상태(HIBERN8)로 동작하도록 호스트 인터페이스(230)를 제어한다. 출력 단자(TX)는 풀-업 회로에 연결되어 하이버네이트 상태(HIBERN8)에서 풀-업될 수 있다. 풀-업 회로는 직렬 연결된 저항과 전압 소스를 포함할 수 있다. 즉, 제1 출력 단자(DOUT_t)는 제1 구간(T1) 동안 풀-업될 수 있다. During the first period T1, the output terminal TX may be in a hibernate state HIBERN8. The
제1 구간(T1) 이후, 프로세서(250)는 제2 및 제3 클럭 모드들(M2, M3)의 조합으로 이루어진 코드에 따른 동작을 제4 클럭 모드(M4)의 명령에 따라 실행한다. After the first period T1, the
제1 구간(T1)이 끝나고, 제2 구간(T2) 지난 후, 프로세서(250)는 제1 출력 단자(DOUT_t)를 통해 명령어 셋에 해당하는 동작의 결과를 출력할 수 있다. 제2 구간(T2) 동안 출력 단자(TX)는 여전히 하이버네이트 상태(HIBERN8)일 수 있다. 한편, 제2 구간(T2)은 필요에 따라 삭제될 수 있다.After the first period T1 ends and the second period T2 passes, the
제1 구간(T1) 및 제2 구간(T2)이 지난 후, 프로세서(250)는 명령어 셋에 해당하는 동작이 성공하면, 출력 단자(TX)가 음의 상태(DIF-N) 및 양의 상태(DIF-P) 중 어느 하나를 갖도록 호스트 인터페이스(230)를 제어할 수 있다. 또한, 프로세서(250)는 명령어 셋에 해당하는 동작이 실패하면, 출력 단자(TX)가 하이버네이트 상태(HIBERN8)를 유지하도록 호스트 인터페이스(230)를 제어할 수 있다. After the first period T1 and the second period T2 have elapsed, when the operation corresponding to the instruction set is successful, the output terminal TX is in a negative state (DIF-N) and a positive state. The
출력 단자(TX)가 음의 상태(DIF-N)를 가지면, 제1 출력 단자(DOUT_t)는 로우 상태를 가질 수 있다. 출력 단자(TX)가 양의 상태(DIF-P)를 가지면, 제2 출력 단자(DOUT_c)는 로우 상태를 가질 수 있다. When the output terminal TX has a negative state DIF-N, the first output terminal DOUT_t may have a low state. When the output terminal TX has a positive state DIF-P, the second output terminal DOUT_c may have a low state.
메모리 컨트롤러(220)는 출력 단자(TX)가 양의 상태(DIF-P) 또는 음의 상태(DIP-N)로 제어될 때, 제1 출력 단자(DOUT_t) 및 제2 출력 단자(DOUT_c) 중 로우 상태를 갖는 단자를 통해 호스트 장치(100)와 제2 프로토콜에 따른 통신을 수행할 수 있다. 도 5에서 제1 출력 단자(DOUT_t)는 제1 구간(T1) 및 제2 구간(T2) 동안 풀-업(하이) 상태를 갖다가 제1 구간(T1) 및 제2 구간(T2)이 지난 후, 로우 상태를 갖는 것을 일 예로 도시하였다. When the output terminal TX is controlled in a positive state (DIF-P) or a negative state (DIP-N), the
호스트 장치(100)는 제1 구간(T1) 및 제2 구간(T2) 이후, 제1 출력 단자(DOUT_t)의 상태를 확인함으로써, 명령어 셋에 해당하는 동작의 성공 여부를 인식할 수 있다. After the first period T1 and the second period T2, the
한편, 입력 단자(RX)는 메모리 컨트롤러(220)가 제2 모드로 동작하는 동안 하이버네이트 상태(HIBERN8)로 유지될 수 있다. Meanwhile, the input terminal RX may be maintained in the hibernate state HIBERN8 while the
본 발명의 실시예에 따른 스토리지 장치(200)에 의하면, 호스트 장치(100)가 제1 프로토콜을 지원하지 않는 경우에도, 클럭 단자(REF_CLK)와 출력 단자(TX)를 통해 호스트 장치(100)와 제2 프로토콜에 따른 통신을 수행할 수 있다. According to the
도 6은 본 발명의 실시 예에 따른 스토리지 장치(200)의 동작 방법을 보여주는 순서도이다. 6 is a flowchart illustrating a method of operating the
도 1, 도 2, 및 도 6을 참조하면, 호스트 인터페이스(230)는 제1 프로토콜을 지원하고, 호스트 장치(100)는 제1 프로토콜을 지원하거나 제1 프로토콜을 지원하지 않을 수 있다. 1, 2, and 6, the
S110 단계에서, 메모리 컨트롤러(220)는 호스트 장치(100)로부터 입력되는 신호가 제1 프로토콜에 따른 신호인지 판단한다. 제1 프로토콜에 따른 신호가 인가되면, S120 단계에서 메모리 컨트롤러(220)는 제1 모드로 동작한다. 제1 프로토콜에 따른 신호는 입력 단자(RX) 및 클럭 단자(REF_CLK)를 통해 입력될 수 있다. 제1 모드에서 호스트 인터페이스(230)는 제1 프로토콜에 따라 호스트 장치(100)와 데이터 통신을 수행한다. In step S110, the
호스트 장치(100)가 제1 프로토콜을 지원하지 않는 경우, 호스트 장치(100)는 스토리지 장치(200)에 제1 프로토콜에 따른 신호를 제공할 수 없다. 제1 프로토콜에 따른 신호가 인가되지 않으면, S130 단계에서, 메모리 컨트롤러(220)는 호스트 장치(100)로부터 입력되는 신호가 제2 프로토콜에 따른 신호인지 판단한다. 제2 프로토콜에 따른 신호가 인가되면, S140 단계에서 메모리 컨트롤러(220)는 제2 모드로 동작한다. 이때, 제2 프로토콜에 따른 신호는 클럭 단자(REF_CLK)를 통해 입력될 수 있다. 제2 모드에서 메모리 컨트롤러(220)는 제2 프로토콜에 따라 호스트 장치(100)와 데이터 통신을 수행한다. If the
한편, S110 단계 이전에, 스토리지 장치(200)는 파워-온 리셋(POR, Power-On Reset)을 수행할 수 있다. 호스트 장치(100)로부터 스토리지 장치(200)에 전원이 공급되면 호스트 인터페이스(230)는 파워-온 리셋을 수행할 수 있다. 파워-온 리셋이 수행되면, 호스트 인터페이스(230)는 초기화될 수 있다. Meanwhile, before step S110, the
도 7은 도 6의 S140 단계를 보여주는 순서도이다. 호스트 장치(100)는 제1 프로토콜을 지원하지 않는 것으로 가정한다. 7 is a flow chart showing step S140 of FIG. 6. It is assumed that the
도 1, 도 2, 및 도 7을 참조하면, S210 단계에서, 클럭 디코더(240)는 제2 프로토콜에 따라 클럭 단자(REF_CLK)로 인가된 신호를 디코딩하여 명령어 셋을 저장한다. 명령어 셋은 복수의 클럭 모드들로 이루어질 수 있다. 각 클럭 모드들 또는 클럭 모드들의 조합은 적어도 진입, 코드, 및 실행을 지시할 수 있다. 클럭 모드들은 모드 선택부(241)에서 분석될 수 있고, 분석된 클럭 모드들은 SFR(243)에 저장될 수 있다. 1, 2, and 7, in step S210, the
명령어 셋의 진입 명령에 따라, S220 단계에서, 메모리 컨트롤러(220)는 제2 모드로 진입할 수 있다. 메모리 컨트롤러(220)는 제2 모드로 진입하여 제2 프로토콜에 따른 호스트 장치(100)와의 통신을 준비하고 제1 프로토콜에 따른 통신을 비활성화시킨다.According to an entry command of the instruction set, in step S220, the
명령어 셋의 실행 명령에 따라, S230 단계에서, 메모리 컨트롤러(220)는 명령어 셋의 코드가 나타내는 동작을 실행한다. 프로세서(250)는 코드가 나타내는 동작을 실행할 수 있다. In accordance with the instruction set execution command, in step S230, the
S240 단계에서, 메모리 컨트롤러(220)는 실행한 동작의 결과를 출력 단자(TX)를 통해 출력할 수 있다. 프로세서(250)는 코드가 나타내는 동작을 실행하고, 그 결과를 출력 단자(TX)를 통해 출력하도록 제어한다.In step S240, the
도 8은 본 발명의 실시 예에 따른 호스트 장치(100) 및 메모리 컨트롤러(220)가 제2 프로토콜에 따른 통신을 수행하는 것을 보여주는 순서도이다. FIG. 8 is a flowchart illustrating that the
도 1, 도 2, 및 도 8을 참조하면, S310 단계에서, 호스트 장치(100)로부터 스토리지 장치(200)에 제2 프로토콜에 따른 신호가 인가된다. 제2 프로토콜에 따른 신호는 클럭 단자(REF_CLK)를 통해 입력될 수 있다. 클럭 단자(REF_CLK)를 통해 제2 프로토콜에 따른 신호가 인가되면, S320 단계에서, 메모리 컨트롤러(220)는 제2 모드로 진입한다. 1, 2, and 8, in step S310, a signal according to a second protocol is applied from the
메모리 컨트롤러(220)가 제2 모드로 진입한 후, S330 단계에서, 호스트 인터페이스(230)는 출력 단자(TX)를 하이버네이트 상태(HIBERN8)로 제어할 수 있다. 또한, 호스트 인터페이스(230)는 입력 단자(RX)를 하이버네이트 상태(HIBERN8)로 제어할 수 있다. After the
이후, S340 단계에서, 메모리 컨트롤러(220)는 명령어 셋의 코드가 나타내는 동작을 실행한다. 이후, S350 단계에서, 호스트 인터페이스(230)는 출력 단자(TX)를 통해 코드가 나타내는 동작의 실행 결과를 출력한다. 예를 들어, 실행한 동작이 성공한 경우, 호스트 인터페이스(230)는 출력 단자(TX)를 음의 상태(DIF-N)로 제어하고, 실행한 동작이 실패한 경우, 호스트 인터페이스(230)는 출력 단자(TX)가 하이버네이트 상태(HIBERN8)를 유지하도록 제어할 수 있다. 호스트 장치(100)는 출력 단자(TX) 중 제1 출력 단자(DOUT_t)로 출력되는 신호를 확인하여 입력한 명령어 셋에 해당하는 동작의 성공 여부를 확인할 수 있다.Thereafter, in step S340, the
도 9는 본 발명의 다른 실시 예에 따른 스토리지 장치(300)를 보여주는 블록도이다. 도 9를 참조하면, 스토리지 장치(300)는 불휘발성 메모리(310) 및 메모리 컨트롤러(320)를 포함한다. 메모리 컨트롤러(320)는 호스트 인터페이스(330) 및 프로세서(350)를 포함한다. 호스트 인터페이스(330)는 링크 레이어(331) 및 물리 레이어(333)를 포함할 수 있다.9 is a block diagram illustrating a
도 9에 도시된 스토리지 장치(300)는 도 2에 도시된 스토리지 장치(200)와 비교하여, 물리 레이어(333)가 클럭 디코더(340)를 포함할 수 있다. 클럭 디코더(340)는 호스트 인터페이스(330)와 별도로 형성되지 않고, 물리 레이어(333)를 구성하는 회로와 함께 형성될 수 있다. In the
도 10은 본 발명의 실시 예에 따른 도 2의 스토리지 장치(200)의 불휘발성 메모리(210)를 보여주는 블록도이다. 도 10을 참조하면, 불휘발성 메모리(210)는 메모리 셀 어레이(211), 어드레스 디코더 회로(213), 페이지 버퍼 회로(215), 데이터 입출력 회로(217), 그리고 제어 로직 회로(219)를 포함한다.10 is a block diagram illustrating a
메모리 셀 어레이(211)는 복수의 메모리 블록들(BLK1~BLKz)을 포함한다. 각 메모리 블록은 복수의 메모리 셀들을 포함한다. 각 메모리 블록은 적어도 하나의 접지 선택 라인(GSL), 복수의 워드 라인들(WL), 그리고 적어도 하나의 스트링 선택 라인(SSL)을 통해 어드레스 디코더 회로(213)에 연결될 수 있다. 각 메모리 블록은 복수의 비트 라인들(BL)을 통해 페이지 버퍼 회로(215)에 연결될 수 있다. 복수의 메모리 블록들(BLK1~BLKz)은 복수의 비트 라인들(BL)에 공통으로 연결될 수 있다. 복수의 메모리 블록들(BLK1~BLKz)의 메모리 셀들은 동일한 구조들을 가질 수 있다.The
어드레스 디코더 회로(213)는 복수의 접지 선택 라인들(GSL), 복수의 워드 라인들(WL), 그리고 복수의 스트링 선택 라인들(SSL)을 통해 메모리 셀 어레이(211)에 연결된다. 어드레스 디코더 회로(213)는 제어 로직 회로(219)의 제어에 따라 동작한다. 어드레스 디코더 회로(213)는 메모리 컨트롤러(220, 도 2 참조)로부터 어드레스를 수신할 수 있다. 어드레스 디코더 회로(213)는 수신된 어드레스(ADDR)를 디코딩하고, 디코딩된 어드레스에 따라 워드 라인들(WL)에 인가되는 전압들을 제어할 수 있다. 예를 들어, 프로그램 시에, 어드레스 디코더 회로(213)는, 제어 로직 회로(219)의 제어 따라, 워드 라인들(WL)에 패스 전압을 인가할 수 있다. 프로그램 시에, 어드레스 디코더 회로(213)는, 제어 로직 회로(219)의 제어에 따라, 워드 라인들(WL) 중 어드레스(ADDR)가 가리키는 워드 라인에 프로그램 전압을 더 인가할 수 있다.The
페이지 버퍼 회로(215)는 복수의 비트 라인들(BL)을 통해 메모리 셀 어레이(211)에 연결된다. 페이지 버퍼 회로(215)는 복수의 데이터 라인들(DL)을 통해 데이터 입출력 회로(217)와 연결된다. 페이지 버퍼 회로(215)는 제어 로직 회로(219)의 제어에 따라 동작한다.The
페이지 버퍼 회로(215)는 메모리 셀 어레이(211)의 메모리 셀들에 프로그램될 데이터 또는 메모리 셀들로부터 읽히는 데이터를 저장할 수 있다. 프로그램 시에, 페이지 버퍼 회로(215)는 메모리 셀들에 프로그램될 데이터를 저장할 수 있다. 저장된 데이터에 기반하여, 페이지 버퍼 회로(215)는 복수의 비트 라인들(BL)을 바이어스할 수 있다. 프로그램 시에, 페이지 버퍼 회로(215)는 쓰기 드라이버로 기능할 수 있다. 읽기 시에, 페이지 버퍼 회로(215)는 비트 라인들(BL)의 전압들을 센싱하고, 센싱 결과를 저장할 수 있다. 읽기 시에, 페이지 버퍼 회로(215)는 감지 증폭기로 기능할 수 있다.The
데이터 입출력 회로(217)는 복수의 데이터 라인들(DL)을 통해 페이지 버퍼 회로(215)와 연결된다. 데이터 입출력 회로(217)는 메모리 컨트롤러(220, 도 2 참조)와 데이터(DATA)를 교환할 수 있다.The data input/
데이터 입출력 회로(217)는 메모리 컨트롤러(220)로부터 수신되는 데이터(DATA)를 임시로 저장할 수 있다. 데이터 입출력 회로(217)는 저장된 데이터를 페이지 버퍼 회로(215)로 전달할 수 있다. 데이터 입출력 회로(217)는 페이지 버퍼 회로(215)로부터 전달되는 데이터(DATA)를 임시로 저장할 수 있다. 데이터 입출력 회로(217)는 저장된 데이터(DATA)를 메모리 컨트롤러(220)로 전송할 수 있다. 데이터 입출력 회로(217)는 버퍼 메모리로 기능할 수 있다.The data input/
제어 로직 회로(219)는 메모리 컨트롤러(220)로부터 커맨드(CMD)를 수신한다. 제어 로직 회로(219)는 수신된 커맨드(CMD)를 디코딩하고, 디코딩된 커맨드에 따라 불휘발성 메모리(210)의 제반 동작을 제어할 수 있다. 제어 로직 회로(219)는 메모리 컨트롤러(220, 도 2 참조)로부터 다양한 제어 신호들 및 전압들을 더 수신할 수 있다.The
도 11는 본 발명의 실시 예에 따른 도 10의 불휘발성 메모리(210)의 메모리 블록(BLKa)을 보여주는 회로도이다. 예시적으로, 도 10에 도시된 메모리 셀 어레이(211)의 복수의 메모리 블록들(BLK1~BLKz) 중 하나의 메모리 블록(BLKa)이 도 11에 도시된다.11 is a circuit diagram illustrating a memory block BLKa of the
도 10 및 도 11를 참조하면, 메모리 블록(BKLa)은 복수의 스트링들(SR)을 포함한다. 복수의 스트링들(SR)은 복수의 비트 라인들(BL1~BLn)에 각각 연결될 수 있다. 각 스트링(SR)은 접지 선택 트랜지스터(GST), 메모리 셀들(MC), 그리고 스트링 선택 트랜지스터(SST)를 포함한다.10 and 11, the memory block BKLa includes a plurality of strings SR. The plurality of strings SR may be connected to the plurality of bit lines BL1 to BLn, respectively. Each string SR includes a ground select transistor GST, memory cells MC, and a string select transistor SST.
각 스트링(SR)의 접지 선택 트랜지스터(GST)는 메모리 셀들(MC) 및 공통 소스 라인(CSL)의 사이에 연결된다. 복수의 스트링들(SR)의 접지 선택 트랜지스터들(GST)은 공통 소스 라인(CSL)에 공통으로 연결된다.The ground selection transistor GST of each string SR is connected between the memory cells MC and the common source line CSL. Ground selection transistors GST of the plurality of strings SR are commonly connected to a common source line CSL.
각 스트링(SR)의 스트링 선택 트랜지스터(SST)는 메모리 셀들(MC) 및 비트 라인(BL)의 사이에 연결된다. 복수의 스트링들(SR)의 스트링 선택 트랜지스터들(SST)은 복수의 비트 라인들(BL1~BLn)에 각각 연결된다. 복수의 비트 라인들(BL1~BLn)은 페이지 버퍼 회로(215)에 연결될 수 있다.The string selection transistor SST of each string SR is connected between the memory cells MC and the bit line BL. The string selection transistors SST of the plurality of strings SR are respectively connected to the plurality of bit lines BL1 to BLn. The plurality of bit lines BL1 to BLn may be connected to the
각 스트링(SR)에서, 접지 선택 트랜지스터(GST) 및 스트링 선택 트랜지스터(SST) 사이에 복수의 메모리 셀들(MC)이 제공된다. 각 스트링(SR)에서, 복수의 메모리 셀들(MC)은 직렬 연결될 수 있다.In each string SR, a plurality of memory cells MC are provided between the ground selection transistor GST and the string selection transistor SST. In each string SR, a plurality of memory cells MC may be connected in series.
복수의 스트링들(SR)에서, 공통 소스 라인(CSL)으로부터 동일한 순서에 위치한 메모리 셀들(MC)은 하나의 워드 라인에 공통으로 연결될 수 있다. 복수의 스트링들(SR)의 메모리 셀들(MC)은 복수의 워드 라인들(WL1~WLm)에 연결될 수 있다. 복수의 워드 라인들(WL1~WLm)은 어드레스 디코더 회로(213)에 연결될 수 있다.In the plurality of strings SR, memory cells MC positioned in the same order from the common source line CSL may be connected in common to one word line. The memory cells MC of the plurality of strings SR may be connected to the plurality of word lines WL1 to WLm. The plurality of word lines WL1 to WLm may be connected to the
도 12는 본 발명의 다른 실시 예에 따른 도 10의 불휘발성 메모리(210)의 메모리 블록(BLKb)을 보여주는 회로도이다. 도 12를 참조하면, 메모리 블록(BLKb)은 복수의 셀 스트링들(CS11~CS21, CS12~CS22)을 포함한다. 복수의 셀 스트링들(CS11~CS21, CS12~CS22)은 행 방향(row direction)및 열 방향(column direction)을 따라 배열되어, 행들 및 열들을 형성할 수 있다.12 is a circuit diagram illustrating a memory block BLKb of the
예를 들어, 행 방향(row direction)을 따라 배열된 셀 스트링들(CS11, CS12)은 제1 행을 형성하고, 행 방향(row direction)을 따라 배열된 셀 스트링들(CS21, CS22)은 제2 행을 형성할 수 있다. 열 방향(column direction)을 따라 배열된 셀 스트링들(CS11, CS21)은 제1 열을 형성하고, 열 방향(column direction)을 따라 배열된 셀 스트링들(CS12, CS22)은 제2 열을 형성할 수 있다.For example, the cell strings CS11 and CS12 arranged along the row direction form a first row, and the cell strings CS21 and CS22 arranged along the row direction are first. 2 rows can be formed. Cell strings CS11 and CS21 arranged along a column direction form a first column, and cell strings CS12 and CS22 arranged along a column direction form a second column can do.
각 셀 스트링은 복수의 셀 트랜지스터들을 포함할 수 있다. 복수의 셀 트랜지스터들은 접지 선택 트랜지스터들(GSTa, GSTb), 메모리 셀들(MC1~MC6), 그리고 스트링 선택 트랜지스터들(SSTa, SSTb)을 포함한다. 각 셀 스트링의 접지 선택 트랜지스터들(GSTa, GSTb), 메모리 셀들(MC1~MC6), 그리고 스트링 선택 트랜지스터들(SSTa, GSTb)은 셀 스트링들(CS11~CS21, CS12~CS22)이 행들 및 열들을 따라 배열되는 평면(예를 들어, 메모리 블록(BLKb)의 기판 상의 평면)과 수직한 높이 방향으로 적층될 수 있다.Each cell string may include a plurality of cell transistors. The plurality of cell transistors include ground select transistors GSTa and GSTb, memory cells MC1 to MC6, and string select transistors SSTa and SSTb. The ground selection transistors GSTa and GSTb, the memory cells MC1 to MC6, and the string select transistors SSTa and GSTb of each cell string are formed by the cell strings CS11 to CS21 and CS12 to CS22. It may be stacked in a height direction perpendicular to a plane arranged along the plane (eg, a plane on the substrate of the memory block BLKb).
최하단의 접지 선택 트랜지스터들(GSTa)은 공통 소스 라인(CSL)에 공통으로 연결될 수 있다.The lowermost ground select transistors GSTa may be commonly connected to the common source line CSL.
복수의 셀 스트링들(CS11~CS21, CS12~CS22)의 접지 선택 트랜지스터들(GSTa, GSTb)은 접지 선택 라인(GSL)에 공통으로 연결될 수 있다.Ground selection transistors GSTa and GSTb of the plurality of cell strings CS11 to CS21 and CS12 to CS22 may be connected in common to the ground selection line GSL.
예시적으로, 동일한 높이(또는 순서)의 접지 선택 트랜지스터들은 동일한 접지 선택 라인에 연결되고, 서로 다른 높이(또는 순서)를 갖는 접지 선택 트랜지스터들은 서로 다른 접지 선택 라인들에 연결될 수 있다. 예를 들어, 제1 높이의 접지 선택 트랜지스터들(GSTa)은 제1 접지 선택 라인에 공통으로 연결되고, 제2 높이의 접지 선택 트랜지스터들(GSTb)은 제2 접지 선택 라인에 공통으로 연결될 수 있다.For example, ground selection transistors having the same height (or order) may be connected to the same ground selection line, and ground selection transistors having different heights (or order) may be connected to different ground selection lines. For example, ground selection transistors GSTa having a first height may be commonly connected to a first ground selection line, and ground selection transistors GSTb having a second height may be commonly connected to a second ground selection line. .
예시적으로, 동일한 행의 접지 선택 트랜지스터들은 동일한 접지 선택 라인에 연결되고, 서로 다른 행의 접지 선택 트랜지스터들은 서로 다른 접지 선택 라인들에 연결될 수 있다. 예를 들어, 제1 행의 셀 스트링들(CS11, CS12)의 접지 선택 트랜지스터들(GSTa, GSTb)은 제1 접지 선택 라인에 연결되고, 제2 행의 셀 스트링들(CS21, CS22)의 접지 선택 트랜지스터들(GSTa, GSTb)은 제2 접지 선택 라인에 연결될 수 있다.For example, ground selection transistors in the same row may be connected to the same ground selection line, and ground selection transistors in different rows may be connected to different ground selection lines. For example, the ground selection transistors GSTa and GSTb of the cell strings CS11 and CS12 of the first row are connected to the first ground selection line, and the ground of the cell strings CS21 and CS22 of the second row The selection transistors GSTa and GSTb may be connected to the second ground selection line.
기판(또는 접지 선택 트랜지스터들(GST))으로부터 동일한 높이(또는 순서)에 위치한 메모리 셀들은 하나의 워드 라인에 공통으로 연결되고, 서로 다른 높이(또는 순서)에 위치한 메모리 셀들은 서로 다른 워드 라인들(WL1~WL6)에 각각 연결될 수 있다. 예를 들어, 메모리 셀들(MC1)은 워드 라인(WL1)에 공통으로 연결된다. 메모리 셀들(MC2)은 워드 라인(WL2)에 공통으로 연결된다. 메모리 셀들(MC3)은 워드 라인(WL3)에 공통으로 연결된다. 메모리 셀들(MC4)은 워드 라인(WL4)에 공통으로 연결된다. 메모리 셀들(MC5)은 워드 라인(WL5)에 공통으로 연결된다. 메모리 셀들(MC6)은 워드 라인(WL6)에 공통으로 연결된다.Memory cells located at the same height (or order) from the substrate (or ground selection transistors GST) are commonly connected to one word line, and memory cells located at different heights (or order) are different word lines. It can be connected to (WL1~WL6) respectively. For example, the memory cells MC1 are commonly connected to the word line WL1. The memory cells MC2 are commonly connected to the word line WL2. The memory cells MC3 are commonly connected to the word line WL3. The memory cells MC4 are commonly connected to the word line WL4. The memory cells MC5 are commonly connected to the word line WL5. The memory cells MC6 are commonly connected to the word line WL6.
복수의 셀 스트링들(CS11~CS21, CS12~CS22)의 동일한 높이(또는 순서)의 제1 스트링 선택 트랜지스터들(SSTa)에서, 서로 다른 행의 제1 스트링 선택 트랜지스터들(SSTa)은 서로 다른 스트링 선택 라인들(SSL1a~SSL2a)에 각각 연결된다. 예를 들어, 셀 스트링들(CS11, CS12)의 제1 스트링 선택 트랜지스터들(SSTa)은 스트링 선택 라인(SSL1a)에 공통으로 연결된다. 셀 스트링들(CS21, CS22)의 제1 스트링 선택 트랜지스터들(SSTa)은 스트링 선택 라인(SSL2a)에 공통으로 연결된다.In the first string selection transistors SSTa of the same height (or order) of the plurality of cell strings CS11 to CS21 and CS12 to CS22, the first string select transistors SSTa of different rows are different strings. They are connected to the selection lines SSL1a to SSL2a, respectively. For example, the first string selection transistors SSTa of the cell strings CS11 and CS12 are commonly connected to the string selection line SSL1a. The first string selection transistors SSTa of the cell strings CS21 and CS22 are commonly connected to the string selection line SSL2a.
복수의 셀 스트링들(CS11~CS21, CS12~CS22)의 동일한 높이(또는 순서)의 제2 스트링 선택 트랜지스터들(SSTb)에서, 서로 다른 행의 제2 스트링 선택 트랜지스터들(SSTb)은 서로 다른 스트링 선택 라인들(SSL1b~SSL2b)에 각각 연결된다. 예를 들어, 셀 스트링들(CS11, CS12)의 제2 스트링 선택 트랜지스터들(SSTb)은 스트링 선택 라인(SSL1b)에 공통으로 연결된다. 셀 스트링들(CS21, CS22)의 제2 스트링 선택 트랜지스터들(SSTb)은 스트링 선택 라인(SSL2b)에 공통으로 연결된다.In the second string selection transistors SSTb having the same height (or order) of the plurality of cell strings CS11 to CS21 and CS12 to CS22, the second string select transistors SSTb in different rows are different strings. They are connected to the selection lines SSL1b to SSL2b, respectively. For example, the second string selection transistors SSTb of the cell strings CS11 and CS12 are commonly connected to the string selection line SSL1b. The second string select transistors SSTb of the cell strings CS21 and CS22 are commonly connected to the string select line SSL2b.
즉, 서로 다른 행의 셀 스트링들은 서로 다른 스트링 선택 라인들에 연결된다. 동일한 행의 셀 스트링들의 동일한 높이(또는 순서)의 스트링 선택 트랜지스터들은 동일한 스트링 선택 라인에 연결된다. 동일한 행의 셀 스트링들의 서로 다른 높이(또는 순서)의 스트링 선택 트랜지스터들은 서로 다른 스트링 선택 라인들에 연결된다.That is, cell strings in different rows are connected to different string selection lines. String selection transistors having the same height (or order) of cell strings in the same row are connected to the same string selection line. String selection transistors of different heights (or order) of cell strings in the same row are connected to different string selection lines.
예시적으로, 동일한 행의 셀 스트링들의 스트링 선택 트랜지스터들은 하나의 스트링 선택 라인에 공통으로 연결될 수 있다. 예를 들어, 제1 행의 셀 스트링들(CS11, CS12)의 스트링 선택 트랜지스터들(SSTa, SSTb)은 하나의 스트링 선택 라인에 공통으로 연결될 수 있다. 제2 행의 샐 스트링들(CS21, CS22)의 스트링 선택 트랜지스터들(SSTa, SSTb)은 하나의 스트링 선택 라인에 공통으로 연결될 수 있다.For example, string selection transistors of cell strings in the same row may be commonly connected to one string selection line. For example, the string selection transistors SSTa and SSTb of the cell strings CS11 and CS12 in the first row may be commonly connected to one string selection line. The string selection transistors SSTa and SSTb of the cell strings CS21 and CS22 of the second row may be commonly connected to one string selection line.
복수의 셀 스트링들(CS11~CS21, CS12~CS22)의 열들은 서로 다른 비트 라인들(BL1, BL2)에 각각 연결된다. 예를 들어, 제1 열의 셀 스트링들(CS11~CS21)의 스트링 선택 트랜지스터들(SSTb)은 비트 라인(BL1)에 공통으로 연결된다. 제2 열의 셀 스트링들(CS12~CS22)의 스트링 선택 트랜지스터들(SST)은 비트 라인(BL2)에 공통으로 연결된다.The columns of the plurality of cell strings CS11 to CS21 and CS12 to CS22 are connected to different bit lines BL1 and BL2, respectively. For example, the string selection transistors SSTb of the cell strings CS11 to CS21 in the first column are commonly connected to the bit line BL1. The string select transistors SST of the cell strings CS12 to CS22 in the second column are commonly connected to the bit line BL2.
도 12에 도시된 메모리 블록(BLKb)은 예시적인 것이다. 본 발명의 기술적 사상은 도 12에 도시된 메모리 블록(BLKb)에 한정되지 않는다. 예를 들어, 셀 스트링들의 행들의 수는 증가 또는 감소될 수 있다. 셀 스트링들의 행들의 수가 변경됨에 따라, 셀 스트링들의 행들에 연결되는 스트링 선택 라인들 또는 접지 선택 라인의 수, 그리고 하나의 비트 라인에 연결되는 셀 스트링들의 수 또한 변경될 수 있다.The memory block BLKb shown in FIG. 12 is an example. The technical idea of the present invention is not limited to the memory block BLKb shown in FIG. 12. For example, the number of rows of cell strings may increase or decrease. As the number of rows of cell strings is changed, the number of string selection lines or ground selection lines connected to the rows of cell strings, and the number of cell strings connected to one bit line may also change.
셀 스트링들의 열들의 수는 증가 또는 감소될 수 있다. 셀 스트링들의 열들의 수가 변경됨에 따라, 셀 스트링들의 열들에 연결되는 비트 라인들의 수, 그리고 하나의 스트링 선택 라인에 연결되는 셀 스트링들의 수 또한 변경될 수 있다.The number of columns of cell strings may increase or decrease. As the number of columns of cell strings is changed, the number of bit lines connected to the columns of cell strings and the number of cell strings connected to one string selection line may also change.
셀 스트링들의 높이는 증가 또는 감소될 수 있다. 예를 들어, 셀 스트링들 각각에 적층되는 접지 선택 트랜지스터들, 메모리 셀들 또는 스트링 선택 트랜지스터들의 수는 증가 또는 감소될 수 있다.The height of the cell strings may be increased or decreased. For example, the number of ground select transistors, memory cells, or string select transistors stacked on each of the cell strings may increase or decrease.
예시적으로, 쓰기 및 읽기는 셀 스트링들(CS11~CS21, CS12~CS22)의 행의 단위로 수행될 수 있다. 스트링 선택 라인들(SSL1a, SSL1b, SSL2a, SSL2b)에 의해, 셀 스트링들(CS11~CS21, CS12~CS22)이 하나의 행 단위로 선택될 수 있다.For example, writing and reading may be performed in units of rows of the cell strings CS11 to CS21 and CS12 to CS22. Cell strings CS11 to CS21 and CS12 to CS22 may be selected in a row unit by the string selection lines SSL1a, SSL1b, SSL2a, and SSL2b.
셀 스트링들(CS11~CS21, CS12~CS22)의 선택된 행에서, 쓰기 및 읽기는 워드 라인의 단위로 수행될 수 있다. 셀 스트링들(CS11~CS21, CS12~CS22)의 선택된 행에서, 선택된 워드 라인에 연결된 메모리 셀들이 프로그램될 수 있다.In the selected row of the cell strings CS11 to CS21 and CS12 to CS22, writing and reading may be performed in units of word lines. In a selected row of the cell strings CS11 to CS21 and CS12 to CS22, memory cells connected to the selected word line may be programmed.
도 13은 본 발명의 실시 예에 따른 메모리 컨트롤러(220)를 보여주는 블록도이다. 도 13을 참조하면, 메모리 컨트롤러(220)는 버스(221), 프로세서(250), 메모리(223), 메모리 인터페이스(224), 에러 정정 블록(225), 호스트 인터페이스(230), 및 클럭 디코더(240)를 포함한다.13 is a block diagram illustrating a
버스(221)는 메모리 컨트롤러(220)의 구성 요소들 사이에 채널을 제공하도록 구성된다.The
프로세서(250)는 메모리 컨트롤러(220)의 제반 동작을 제어하고, 논리 연산을 수행할 수 있다. 프로세서(250)는 제1 모드에서 호스트 인터페이스(230)를 통해 제1 프로토콜을 지원하는 호스트 장치와 통신할 수 있다. 또한, 프로세서(250)는 제2 모드에서 제1 프로토콜을 지원하지 않는 호스트 장치(100)와 제2 프로토콜을 통해 통신할 수 있다. 프로세서(250)는 메모리 인터페이스(224)를 통해 외부의 불휘발성 메모리(210, 도 2 참조)와 통신할 수 있다. The
메모리(223)는 프로세서(250)의 동작 메모리, 캐시 메모리 또는 버퍼 메모리로 사용될 수 있다. 메모리(223)는 프로세서(250)가 실행하는 코드들 및 명령들을 저장할 수 있다. 메모리(223)는 프로세서(250)에 의해 처리되는 데이터를 저장할 수 있다. 메모리(223)는 SRAM을 포함할 수 있다.The
메모리 인터페이스(224)는 프로세서(250)의 제어에 따라, 불휘발성 메모리(210)와의 통신을 수행할 수 있다.The
에러 정정 블록(225)은 에러 정정을 수행할 수 있다. 에러 정정 블록(225)은 불휘발성 메모리(210)에 기입될 데이터에 기반하여, 에러 정정을 수행하기 위한 패리티를 생성할 수 있다. 데이터 및 패리티는 메모리 인터페이스(224)를 통해 불휘발성 메모리(210)로 전송되고, 불휘발성 메모리(210)에 기입될 수 있다. 에러 정정 블록(225)은 메모리 인터페이스를 통해 불휘발성 메모리(210)로부터 읽어지는 데이터 및 패리티를 이용하여, 데이터의 에러 정정을 수행할 수 있다.The
호스트 인터페이스(230)는 프로세서(250)의 제어에 따라, 제1 프로토콜에 따라 외부의 호스트 장치와 통신할 수 있다. 호스트 인터페이스(230)는 도 2를 참조하여 설명된 호스트 인터페이스(230)를 포함할 수 있다. The
도 14은 본 발명의 실시 예에 따른 메모리 카드(400)를 보여주는 블록도이다. 본 발명의 실시 예에 따른 도 2의 스토리지 장치(200)는 메모리 카드로 구현될 수 있다. 14 is a block diagram illustrating a
도 14를 참조하면, 메모리 카드(400)는 불휘발성 메모리(410), 메모리 컨트롤러(420), 커넥터(450), 그리고 바디(460)를 포함한다. 메모리 컨트롤러(420)는 호스트 인터페이스(430), 클럭 디코더(440), 및 프로세서(460)를 포함한다. Referring to FIG. 14, the
도 14의 불휘발성 메모리(410) 및 메모리 컨트롤러(420)는 도 2의 불휘발성 메모리(210) 및 메모리 컨트롤러(420)와 동일하므로 구체적인 설명을 생략한다. Since the
커넥터(450)는 호스트 장치(100, 도 1 참조)와 결합 및 분리될 수 있도록 구성된다. 커넥터(450)는 복수의 연결 패드들(451~456)을 포함한다. The
제1 연결 패드(451)는 호스트 장치(100)로부터 접지 전압(VSS)을 공급받을 수 있다. 제1 연결 패드(451)는 외부 호스트 장치(100)로부터 공급되는 접지 전압(VSS)을 불휘발성 메모리(410) 및 메모리 컨트롤러(420)에 공급할 수 있다.The
제2 연결 패드(452)는 제1 프로토콜을 지원하는 호스트 장치로부터 공급되는 기준 클럭을 메모리 컨트롤러(420)의 클럭 단자(REF_CLK)에 공급할 수 있다. 제2 연결 패드(452)는 제1 프로토콜을 지원하지 않는 호스트 장치(100)로부터 공급되는 제2 프로토콜에 따른 신호를 메모리 컨트롤러(420)의 클럭 단자(REF_CLK)에 공급할 수 있다.The
제3 및 제4 연결 패드들(453, 454)은 호스트 장치(100)로부터 수신되는 신호들을 메모리 컨트롤러(420)의 제1 및 제2 입력 단자들(DIN_t, DIN_c)에 전달할 수 있다. The third and
제5 및 제6 연결 패드들(455, 456)은 메모리 컨트롤러(420)의 제1 및 제2 출력 단자들(DOUT_t, DOUT_c)로부터 전송되는 신호들을 외부 호스트 장치(100)로 전달할 수 있다.The fifth and
메모리 카드(400)는 제1 내지 제6 연결 패드들(451~456) 이외에 제1 프로토콜을 지원하지 않는 호스트 장치(100)와 통신을 수행하기 위한 별도의 연결 패드를 구비하지 않는다. 메모리 카드(400)는 호스트 장치(100)로부터 제2 프로토콜에 따른 신호를 제2 연결 패드(452)를 통해 수신하고, 제5 및 제6 연결 패드들(455, 456) 중 어느 하나를 통해 제2 프로토콜에 따른 신호를 호스트 장치(100)에 출력할 수 있다. 메모리 카드(400)는 제2 프로토콜에 따른 통신을 위한 별도의 연결 패드 추가 없이, 제1 프로토콜을 지원하지 않는 호스트 장치(100)와 제2 프로토콜에 따른 통신을 수행할 수 있다. The
바디(460)는 메모리 카드(400)의 구성 요소들을 감싸고, 물리적으로 메모리 카드(400)를 보호할 수 있다.The
도 14의 메모리 카드(400)는 컴팩트 플래시 카드(CFC: Compact Flash Card), 마이크로 드라이브(Microdrive), 스마트 미디어 카드(SMC: Smart Media Card), 멀티미디어 카드(MMC: Multimedia Card), 보안 디지털 카드(SDC: Security Digital Card), 메모리 스틱(Memory Stick), 및 USB 플래시 메모리 드라이버 등으로 구현될 수 있다.The
한편, 상술 된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함할 것이다.
On the other hand, the contents of the present invention described above are only specific embodiments for carrying out the invention. The present invention will include not only specific and practically usable means itself, but also technical ideas that are abstract and conceptual ideas that can be utilized as future technologies.
1000: 메모리 시스템
100: 호스트 장치.
200: 스토리지 장치
210: 불휘발성 메모리
220: 메모리 컨트롤러
230: 호스트 인터페이스
240: 클럭 디코더
250: 프로세서
400: 메모리 카드
REF_CLK: 클럭 단자
RX: 입력 단자
TX: 출력 단자 1000: memory system
100: host device.
200: storage device
210: nonvolatile memory
220: memory controller
230: host interface
240: clock decoder
250: processor
400: memory card
REF_CLK: clock terminal
RX: input terminal
TX: output terminal
Claims (20)
상기 제1 프로토콜에 따라 상기 호스트 장치로부터 입력 신호를 수신하도록 구성된 입력 단자;
상기 제1 프로토콜에 따라 상기 호스트 장치로부터 출력 신호를 출력하도록 구성된 출력 단자; 및
상기 제1 프로토콜에 따라 상기 호스트 장치로부터 클럭 신호를 수신하도록 구성된 클럭 단자를 포함하고,
상기 호스트 인터페이스는 상기 클럭 단자를 통해 상기 제1 프로토콜과 다른 제2 프로토콜 기반의 클럭 신호를 수신하고, 상기 출력 단자를 통해 상기 제2 프로토콜 기반의 출력 신호를 출력하도록 더 구성되고,
상기 제2 프로토콜 기반의 상기 클럭 신호의 적어도 하나의 명령어 셋을 세그먼트 단위로 분석하여 상기 세그먼트의 클럭 모드를 판별하도록 구성된 클럭 디코더를 더 포함하는 스토리지 장치.A host interface configured to perform communication with the host device according to the first protocol;
An input terminal configured to receive an input signal from the host device according to the first protocol;
An output terminal configured to output an output signal from the host device according to the first protocol; And
A clock terminal configured to receive a clock signal from the host device according to the first protocol,
The host interface is further configured to receive a clock signal based on a second protocol different from the first protocol through the clock terminal, and to output an output signal based on the second protocol through the output terminal,
And a clock decoder configured to determine a clock mode of the segment by analyzing at least one instruction set of the clock signal based on the second protocol for each segment.
상기 제1 프로토콜은 UFS(Universal Flash Storage) 프로토콜인 스토리지 장치.The method of claim 1,
The first protocol is a UFS (Universal Flash Storage) protocol.
상기 세그먼트는 복수의 펄스들을 포함하고,
상기 클럭 디코더는 상기 펄스들의 펄스 폭들에 기초하여 상기 세그먼트의 길이와 상기 클럭 모드를 결정하는 스토리지 장치.The method of claim 1,
The segment comprises a plurality of pulses,
The clock decoder determines the length of the segment and the clock mode based on pulse widths of the pulses.
상기 호스트 인터페이스는 제1 모드에서 상기 제1 프로토콜에 따라 상기 호스트 장치와 통신하고, 제2 모드에서 상기 제2 프로토콜에 따라 상기 호스트 장치와 통신하는 스토리지 장치.The method of claim 1,
The host interface communicates with the host device according to the first protocol in a first mode, and communicates with the host device according to the second protocol in a second mode.
상기 제2 모드에서, 상기 입력 단자는 비활성화되는 스토리지 장치.The method of claim 4,
In the second mode, the input terminal is deactivated.
상기 제2 모드에서, 상기 클럭 단자를 통해 수신되는 클럭 신호는 상기 제2 프로토콜을 기반으로 하는 스토리지 장치.The method of claim 4,
In the second mode, a clock signal received through the clock terminal is based on the second protocol.
상기 클럭 모드는,
상기 제2 모드로의 진입을 알리는 명령과 연관되는 제1 클럭 모드;
상기 제2 모드에서 실행할 동작을 나타내는 코드의 제1 비트에 대응하는 제2 클럭 모드;
상기 코드의 상기 제1 비트와 다른 상기 코드의 제2 비트에 대응하는 제3 클럭 모드; 및
상기 코드가 나타내는 동작의 실행을 지시하는 명령과 연관되는 제4 클럭 모드를 포함하는 스토리지 장치.The method of claim 4,
The clock mode,
A first clock mode associated with a command notifying an entry into the second mode;
A second clock mode corresponding to a first bit of a code indicating an operation to be executed in the second mode;
A third clock mode corresponding to a second bit of the code that is different from the first bit of the code; And
A storage device including a fourth clock mode associated with a command indicating execution of an operation indicated by the code.
상기 제2 모드로 진입한 후, 상기 호스트 인터페이스는 상기 명령어 셋에 해당하는 동작을 실행할 때까지 상기 출력 단자를 하이버네이트(hibernate) 상태로 설정하고,
상기 명령어 셋에 해당하는 동작이 실행된 후, 상기 호스트 인터페이스는 상기 실행의 결과에 따라 상기 출력 단자가 상기 하이버네이트 상태로 유지되거나 상기 출력 단자가 양의 상태 및 음의 상태 중 하나를 가지도록 상기 출력 단자를 제어하는 스토리지 장치.The method of claim 4,
After entering the second mode, the host interface sets the output terminal to a hibernate state until an operation corresponding to the command set is executed, and
After the operation corresponding to the command set is executed, the host interface makes the output terminal maintain the hibernate state or the output terminal has one of a positive state and a negative state according to the execution result. A storage device that controls the output terminals.
상기 호스트 인터페이스는 상기 하이버네이트 상태에서 상기 출력 단자를 풀-업시키는 스토리지 장치.The method of claim 8,
The host interface pulls up the output terminal in the hibernate state.
상기 출력 단자는 서로 상보적인 신호들을 출력하는 제1 출력 단자 및 제2 출력 단자를 포함하고,
상기 출력 단자가 상기 양의 상태 또는 상기 음의 상태를 가지도록 제어되는 경우, 상기 호스트 인터페이스는 상기 제1 출력 단자 및 상기 제2 출력 단자 중 로우(low) 상태를 갖는 단자를 통해 상기 제2 프로토콜 기반의 통신을 수행하는 스토리지 장치.The method of claim 8,
The output terminal includes a first output terminal and a second output terminal for outputting signals complementary to each other,
When the output terminal is controlled to have the positive state or the negative state, the host interface provides the second protocol through a terminal having a low state among the first output terminal and the second output terminal. Storage devices that perform communication based.
상기 호스트 인터페이스는 상기 클럭 디코더를 포함하는 물리 레이어를 포함하는 스토리지 장치.The method of claim 1,
The host interface includes a physical layer including the clock decoder.
상기 스토리지 장치는 메모리 카드로 구현되는 스토리지 장치.The method of claim 1,
The storage device is a storage device implemented as a memory card.
제1 프로토콜을 지원하는 호스트 장치와 상기 제1 프로토콜에 따라 통신을 수행하는 제1 모드 및 상기 제1 프로토콜을 지원하지 않는 호스트 장치와 상기 제1 프로토콜과 다른 제2 프로토콜에 따라 통신을 수행하는 제2 모드 중 하나로 동작하여 상기 불휘발성 메모리를 제어하도록 구성된 메모리 컨트롤러를 포함하고,
상기 메모리 컨트롤러는,
상기 제1 프로토콜 기반의 통신을 수행하도록 구성된 호스트 인터페이스;
상기 제2 모드에서 상기 제2 프로토콜 기반으로 출력 신호를 출력하도록 구성된 출력 단자;
상기 제2 모드에서 상기 제2 프로토콜 기반의 클럭 신호를 수신하도록 구성된 클럭 단자; 및
상기 제2 프로토콜 기반의 상기 클럭 신호의 적어도 하나의 명령어 셋을 세그먼트 단위로 분석하여 상기 세그먼트의 클럭 모드를 판별하도록 구성된 클럭 디코더를 포함하는 메모리 카드.Nonvolatile memory; And
A host device supporting a first protocol, a first mode for performing communication according to the first protocol, and a host device not supporting the first protocol, and a second performing communication according to a second protocol different from the first protocol. A memory controller configured to operate in one of two modes to control the nonvolatile memory,
The memory controller,
A host interface configured to perform communication based on the first protocol;
An output terminal configured to output an output signal based on the second protocol in the second mode;
A clock terminal configured to receive a clock signal based on the second protocol in the second mode; And
And a clock decoder configured to determine a clock mode of the segment by analyzing at least one instruction set of the clock signal based on the second protocol for each segment.
상기 메모리 컨트롤러는 상기 제2 모드에서 비활성화되는 입력 단자를 더 포함하는 메모리 카드.The method of claim 13,
The memory controller further includes an input terminal deactivated in the second mode.
상기 불휘발성 메모리는 3차원 메모리 어레이를 포함하는 플래시 메모리인 메모리 카드.The method of claim 13,
The nonvolatile memory is a flash memory including a 3D memory array.
상기 메모리 컨트롤러는 호스트 장치의 통신 프로토콜을 기반으로 제1 모드 및 제2 모드 중 하나로 동작하도록 구성되고,
상기 제1 모드는 상기 메모리 컨트롤러가 제1 통신 프로토콜에 따라 상기 입력 단자에서 입력 신호를 통해 상기 호스트 장치로부터 제1 커맨드를 수신하는 모드이고,
상기 제2 모드는 상기 메모리 컨트롤러가 상기 제1 통신 프로토콜과 다른 제2 통신 프로토콜에 따라 상기 클럭 단자에서 클럭 신호를 통해 상기 호스트 장치로부터 제2 커맨드를 수신하는 모드이고,
상기 메모리 컨트롤러는 상기 제2 모드에서 상기 클럭 신호의 세그먼트의 펄스들의 펄스 폭들을 분석하여 상기 제2 커맨드를 판별하는 디코더를 더 포함하는 스토리지 장치.Including a memory controller including an input terminal and a clock terminal,
The memory controller is configured to operate in one of a first mode and a second mode based on a communication protocol of the host device,
The first mode is a mode in which the memory controller receives a first command from the host device through an input signal at the input terminal according to a first communication protocol,
The second mode is a mode in which the memory controller receives a second command from the host device through a clock signal at the clock terminal according to a second communication protocol different from the first communication protocol,
The memory controller further comprises a decoder to determine the second command by analyzing pulse widths of pulses of the segment of the clock signal in the second mode.
상기 메모리 컨트롤러는 상기 호스트 장치의 상기 통신 프로토콜이 상기 제1 통신 프로토콜이면 상기 제1 모드로 진입하고, 상기 호스트 장치의 상기 통신 프로토콜이 상기 제2 통신 프로토콜이면 상기 제2 모드로 진입하는 스토리지 장치.The method of claim 16,
The memory controller enters the first mode if the communication protocol of the host device is the first communication protocol, and enters the second mode if the communication protocol of the host device is the second communication protocol.
상기 펄스 폭들은 복수의 클럭 모드들을 나타내고,
상기 클럭 모드들은
상기 제2 모드로의 진입을 알리는 명령과 연관되는 제1 클럭 모드;
상기 제2 모드에서 실행할 동작을 나타내는 코드의 제1 비트에 대응하는 제2 클럭 모드;
상기 코드의 상기 제1 비트와 다른 상기 코드의 제2 비트에 대응하는 제3 클럭 모드; 및
상기 코드가 나타내는 동작의 실행을 지시하는 명령과 연관되는 제4 클럭 모드를 포함하는 스토리지 장치.The method of claim 16,
The pulse widths represent a plurality of clock modes,
The clock modes are
A first clock mode associated with a command notifying an entry into the second mode;
A second clock mode corresponding to a first bit of a code indicating an operation to be executed in the second mode;
A third clock mode corresponding to a second bit of the code that is different from the first bit of the code; And
A storage device including a fourth clock mode associated with a command indicating execution of an operation indicated by the code.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/795,640 US9619156B2 (en) | 2014-07-31 | 2015-07-09 | Storage device, memory card, and communicating method of storage device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462031299P | 2014-07-31 | 2014-07-31 | |
US62/031,299 | 2014-07-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160018302A KR20160018302A (en) | 2016-02-17 |
KR102149665B1 true KR102149665B1 (en) | 2020-09-01 |
Family
ID=55457565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140126731A KR102149665B1 (en) | 2014-07-31 | 2014-09-23 | Storage device, memory card, and communicating method of storage device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102149665B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102291505B1 (en) | 2014-11-24 | 2021-08-23 | 삼성전자주식회사 | Storage device and operating method of storage device |
CN105931670B (en) * | 2016-04-22 | 2019-09-03 | 西安电子科技大学 | Storage control device based on Nand flash storage array |
KR102646895B1 (en) * | 2016-09-29 | 2024-03-12 | 삼성전자주식회사 | Memory cards and storage systems including the same |
KR20190051530A (en) | 2017-11-07 | 2019-05-15 | 에스케이하이닉스 주식회사 | Data processing system and operating method of data processing system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020163834A1 (en) | 2000-08-14 | 2002-11-07 | Scheuerlein Roy E. | Integrated systems using vertically-stacked three-dimensional memory cells |
US20040215996A1 (en) | 2003-04-25 | 2004-10-28 | Renesas Technology Corp. | Memory card |
US20110072185A1 (en) | 2009-09-23 | 2011-03-24 | Sandisk Il Ltd. | Multi-protocol storage device bridge |
US20120266008A1 (en) | 2011-04-13 | 2012-10-18 | International Business Machines Corporation | System-wide power management control via clock distribution network |
US20130024585A1 (en) | 2011-07-18 | 2013-01-24 | O2Micro, Inc. | Circuits and Methods for Providing Communication Between a Memory Card and a Host Device |
-
2014
- 2014-09-23 KR KR1020140126731A patent/KR102149665B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020163834A1 (en) | 2000-08-14 | 2002-11-07 | Scheuerlein Roy E. | Integrated systems using vertically-stacked three-dimensional memory cells |
US20040215996A1 (en) | 2003-04-25 | 2004-10-28 | Renesas Technology Corp. | Memory card |
US20110072185A1 (en) | 2009-09-23 | 2011-03-24 | Sandisk Il Ltd. | Multi-protocol storage device bridge |
US20120266008A1 (en) | 2011-04-13 | 2012-10-18 | International Business Machines Corporation | System-wide power management control via clock distribution network |
US20130024585A1 (en) | 2011-07-18 | 2013-01-24 | O2Micro, Inc. | Circuits and Methods for Providing Communication Between a Memory Card and a Host Device |
Also Published As
Publication number | Publication date |
---|---|
KR20160018302A (en) | 2016-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106157999B (en) | Semiconductor memory device including dummy memory cell and method of operating the same | |
KR102321501B1 (en) | Nonvolatile memory device and operation method of storage device comprising the nonvolatile memory device | |
KR102294127B1 (en) | Leakage current detection device and nonvolatile memory device including the same | |
KR102566994B1 (en) | Method for performing multi-chip debugging and multi-chip system adopting the same | |
KR101678907B1 (en) | Nonvolatile memory device capable of reducing read disturbance and read method thereof | |
US9030878B2 (en) | Semiconductor memory device including a plurality of cell strings, memory system including the same, and control method thereof | |
US9619156B2 (en) | Storage device, memory card, and communicating method of storage device | |
KR102419173B1 (en) | Low voltage detection circuit and memory device including the same | |
US10268575B2 (en) | Nonvolatile memory device and memory system including the same | |
KR102336455B1 (en) | Integrated circuit and storage device including integrated circuit | |
KR102111579B1 (en) | Semiconductor memory device and operating method thereof | |
KR102178141B1 (en) | Method of operating nonvolatile memory device | |
KR20140145367A (en) | Semiconductor memory device, memory system including the same and operating method thereof | |
TW201321976A (en) | Semiconductor memory device, reading method thereof, and data storage device having the same | |
KR20160038160A (en) | Nonvolatile memory device and operating method thereof | |
KR20150073718A (en) | Nonvolatile memory device and driving method of the same | |
KR102149665B1 (en) | Storage device, memory card, and communicating method of storage device | |
KR20170015707A (en) | Non-volatile memory device and test system therof | |
KR20180029432A (en) | Semiconductor memory device and operating method thereof | |
US20140003167A1 (en) | Nonvolatile memory device, operating method thereof, and data storage device having the same | |
KR102234592B1 (en) | Nonvolatile memory device and data storage device and operation method of the data storage device | |
CN112542186A (en) | Memory device and method of operating memory device | |
KR20190044349A (en) | Semiconductor memory device and operating method thereof | |
CN110890125B (en) | Memory device and method of operating the same | |
CN112908370A (en) | Memory device and method of operating the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |