KR20210132569A - Link startup method of storage device - Google Patents
Link startup method of storage device Download PDFInfo
- Publication number
- KR20210132569A KR20210132569A KR1020200137077A KR20200137077A KR20210132569A KR 20210132569 A KR20210132569 A KR 20210132569A KR 1020200137077 A KR1020200137077 A KR 1020200137077A KR 20200137077 A KR20200137077 A KR 20200137077A KR 20210132569 A KR20210132569 A KR 20210132569A
- Authority
- KR
- South Korea
- Prior art keywords
- line
- storage device
- host
- link
- reset
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
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)
- Stored Programmes (AREA)
Abstract
Description
본 개시의 기술적 사상은 메모리 장치에 관한 것이며, 더욱 상세하게는, 스토리지 장치의 링크 스타트업 방법 및 고속 링크 스타트업을 수행하는 스토리지 장치에 관한 것이다.The technical idea of the present disclosure relates to a memory device, and more particularly, to a link startup method of a storage device and a storage device for performing high-speed link startup.
스토리지 시스템은 호스트와 스토리지 장치로 구성된다. 호스트와 스토리지 장치는 UFS(universal flash storage), SATA(serial ATA), SCSI(small computer small interface), SAS(serial attached SCSI), eMMC(embedded MMC) 등과 같은 다양한 표준 인터페이스를 통해 연결된다. 스토리지 시스템이 모바일 장치에 사용되는 경우 호스트와 스토리지 장치 사이의 고속 동작이 매우 중요하며, 호스트와 스토리지 장치 사이의 신속한 링크업이 요구된다.A storage system consists of a host and a storage device. The host and the storage device are connected through various standard interfaces such as universal flash storage (UFS), serial ATA (SATA), small computer small interface (SCSI), serial attached SCSI (SAS), and embedded MMC (eMMC). When a storage system is used in a mobile device, high-speed operation between the host and the storage device is very important, and a fast link-up between the host and the storage device is required.
본 개시의 기술적 사상은, 호스트와 스토리지 장치 사이에서 고속 모드로 링크 스타트업을 수행할 수 있는 스토리지 장치, 이를 포함하는 스토리지 시스템, 및 스토리지 장치의 링크 스타트업 방법을 제공한다.The technical idea of the present disclosure provides a storage device capable of performing link startup in a high-speed mode between a host and a storage device, a storage system including the same, and a link startup method of the storage device.
본 개시의 기술적 사상에 따른 스토리지 장치의 링크 스타트업 방법은, 상기 스토리지 장치의 입력 신호 핀에 연결된 라인을 통해 호스트로부터 라인-리셋 신호를 수신하는 단계, 수신한 상기 라인-리셋 신호의 길이를 제1 기준 시간과 비교하는 단계, 및 상기 비교 결과에 따라, 상기 스토리지 장치와 상기 호스트 사이에서 고속 모드 또는 저속 모드로 링크 스타트업 동작을 수행하는 단계를 포함한다.A link start-up method of a storage device according to the technical concept of the present disclosure includes receiving a line-reset signal from a host through a line connected to an input signal pin of the storage device, and determining the length of the received line-reset signal. Comparing with 1 reference time, and performing a link start-up operation between the storage device and the host in a high-speed mode or a low-speed mode according to the comparison result.
또한, 본 개시의 기술적 사상에 따른 스토리지 장치의 링크 스타트업 방법은, 상기 스토리지 장치의 입력 신호 핀에 연결된 라인을 통해, 상기 호스트로부터 라인-리셋 신호가 수신되는지 여부를 판단하는 단계, 상기 호스트로부터 상기 라인-리셋 신호가 수신되면, 상기 스토리지 장치와 상기 호스트 사이에서 고속 모드 링크 스타트업 동작을 수행하는 단계, 및 상기 호스트로부터 상기 라인-리셋 신호가 수신되지 않으면, 상기 스토리지 장치와 상기 호스트 사이에서 저속 모드 링크 스타트업 동작을 수행하는 단계를 포함한다.In addition, the link start-up method of the storage device according to the technical concept of the present disclosure includes the steps of determining whether a line-reset signal is received from the host through a line connected to an input signal pin of the storage device, from the host performing a fast mode link startup operation between the storage device and the host when the line-reset signal is received; and when the line-reset signal is not received from the host, between the storage device and the host and performing a slow mode link startup operation.
또한, 본 개시의 기술적 사상에 따른 스토리지 장치의 링크 스타트업 방법은, 상기 스토리지 장치와 호스트 사이에서 고속 모드 링크 스타트업 동작을 수행하는 단계, 상기 고속 모드 링크 스타트업 동작의 완료 여부를 판단하는 단계, 상기 고속 모드 링크 스타트업 동작이 완료된 경우, 상기 스토리지 장치와 상기 호스트 사이의 링크업이 패스되었는지 여부를 판단하는 단계, 및 상기 링크업이 패스되지 않은 경우, 상기 스토리지 장치와 상기 호스트 사이에서 저속 모드 링크 스타트업 동작을 수행하는 단계를 포함한다.In addition, the link start-up method of the storage device according to the technical idea of the present disclosure includes the steps of performing a high-speed mode link startup operation between the storage device and a host, and determining whether the high-speed mode link startup operation is complete. , determining whether the link-up between the storage device and the host has passed when the high-speed mode link start-up operation is completed; and performing a mode link startup operation.
본 개시의 기술적 사상에 따르면, 스토리지 장치는 호스트로부터 라인-리셋 신호의 길이 또는 라인-리셋 신호의 유무에 따라 고속 모드 또는 저속 모드로 링크 스타트업 동작을 수행할 수 있으므로, 호스트와 스토리지 장치의 링크 스타트업 동작에 소요되는 시간을 줄일 수 있다. 이에 따라, 호스트와 스토리지 장치는 신속하게 링크업 상태로 설정될 수 있으므로, 스토리지 시스템의 성능을 향상시킬 수 있다.According to the technical idea of the present disclosure, since the storage device may perform a link start-up operation in a high-speed mode or a low-speed mode according to the length of the line-reset signal or the presence or absence of the line-reset signal from the host, the link between the host and the storage device The time required for startup operation can be reduced. Accordingly, the host and the storage device can be quickly set to a link-up state, thereby improving the performance of the storage system.
또한, 본 개시의 기술적 사상에 따르면, 스토리지 장치 및 호스트는 우선 고속 모드로 링크 스타트업 동작을 수행하고, 링크업이 완료되지 않은 경우 저속 모드로 링크 스타트업을 수행함으로써, 스토리지 장치가 고속 모드를 지원하는지 여부에 관계 없이 링크 스타트업 동작을 수행할 수 있다. 이에 따라, 호스트와 스토리지 장치의 링크 스타트업 동작에 소요되는 시간을 더욱 줄일 수 있고, 스토리지 시스템의 성능을 더욱 향상시킬 수 있다.In addition, according to the technical idea of the present disclosure, the storage device and the host perform a link start-up operation in the high-speed mode first, and when the link-up is not completed, the link start-up is performed in the low-speed mode, so that the storage device enters the high-speed mode. A link startup operation can be performed whether or not it supports it. Accordingly, a time required for a link start-up operation between the host and the storage device may be further reduced, and performance of the storage system may be further improved.
도 1은 본 개시의 일 실시예에 따른 스토리지 시스템을 나타내는 블록도이다.
도 2는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 인터페이스를 나타낸다.
도 3은 본 개시의 일 실시예에 따른 라인-리셋 신호를 나타내는 타이밍도이다.
도 4는 본 개시의 일 실시예에 따른 라인-리셋 파라미터들 및 라인-리셋 고속 링크업 파라미터들을 나타내는 표이다.
도 5는 본 개시의 일 실시예에 따른 스토리지 시스템을 나타내는 블록도이다.
도 6은 본 개시의 일 실시예에 따른 라인-리셋 검출기를 나타내는 블록도이다.
도 7은 본 개시의 일 실시예에 따라, 도 6의 라인-리셋 검출기의 검출 동작을 예시적으로 나타내는 타이밍도이다.
도 8은 본 개시의 일 실시예에 따른 라인-리셋 검출기를 나타내는 블록도이다.
도 9는 본 개시의 일 실시예에 따른 라인-리셋 검출기를 나타내는 블록도이다.
도 10은 본 개시의 일 실시예에 따라, 도 9의 라인-리셋 검출기의 검출 동작을 예시적으로 나타내는 타이밍도이다.
도 11은 본 개시의 일 실시예에 따른 스토리지 장치의 동작 방법을 나타내는 흐름도이다.
도 12는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 동작을 나타내는 흐름도이다.
도 13은 본 개시의 일 실시예에 따른 스토리지 장치의 동작 방법을 나타내는 흐름도이다.
도 14는 본 개시의 일 실시예에 따른 UFS 호스트와 UFS 장치 사이의 고속 모드 초기화 시퀀스를 예시적으로 나타내는 흐름도이다.
도 15는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 링크 스타트업 동작을 나타내는 흐름도이다.
도 16 내지 도 18은 본 개시의 일부 실시예들에 따른 스토리지 장치의 링크 스타트업 방법을 각각 나타내는 흐름도들이다.
도 19는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 링크 스타트업 동작을 나타내는 흐름도이다.
도 20 및 도 21은 본 개시의 일부 실시예들에 따른 스토리지 장치의 링크 스타트업 방법을 각각 나타내는 흐름도들이다.
도 22는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 동작을 나타내는 흐름도이다.
도 23 및 도 24는 본 개시의 일부 실시예들에 따른 스토리지 장치의 링크 스타트업 방법을 각각 나타내는 흐름도들이다.
도 25는 본 발명의 일 실시예에 따른 UFS 시스템에 대해 설명하기 위한 도면이다.
도 26a 내지 26c는 UFS 카드(card)의 폼 팩터(form factor)에 대해 설명하기 위한 도면이다.
도 27은 본 개시의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 28은 본 개시의 일 실시예에 따른 UFS 장치에 적용될 수 있는 3D VNAND 구조에 대해 설명하기 위한 도면이다.
도 29는 본 개시의 일 실시예에 따른 UFS 장치에 적용될 수 있는 BVNAND 구조에 대해 설명하기 위한 도면이다.1 is a block diagram illustrating a storage system according to an embodiment of the present disclosure.
2 illustrates an interface between a host and a storage device according to an embodiment of the present disclosure.
3 is a timing diagram illustrating a line-reset signal according to an embodiment of the present disclosure.
4 is a table illustrating line-reset parameters and line-reset high-speed link-up parameters according to an embodiment of the present disclosure.
5 is a block diagram illustrating a storage system according to an embodiment of the present disclosure.
6 is a block diagram illustrating a line-reset detector according to an embodiment of the present disclosure.
7 is a timing diagram exemplarily illustrating a detection operation of the line-reset detector of FIG. 6 , according to an embodiment of the present disclosure.
8 is a block diagram illustrating a line-reset detector according to an embodiment of the present disclosure.
9 is a block diagram illustrating a line-reset detector according to an embodiment of the present disclosure.
FIG. 10 is a timing diagram exemplarily illustrating a detection operation of the line-reset detector of FIG. 9 , according to an embodiment of the present disclosure.
11 is a flowchart illustrating a method of operating a storage device according to an embodiment of the present disclosure.
12 is a flowchart illustrating an operation between a host and a storage device according to an embodiment of the present disclosure.
13 is a flowchart illustrating a method of operating a storage device according to an embodiment of the present disclosure.
14 is a flowchart exemplarily illustrating a fast mode initialization sequence between a UFS host and a UFS device according to an embodiment of the present disclosure.
15 is a flowchart illustrating a link startup operation between a host and a storage device according to an embodiment of the present disclosure.
16 to 18 are flowcharts each illustrating a link startup method of a storage device according to some embodiments of the present disclosure.
19 is a flowchart illustrating a link startup operation between a host and a storage device according to an embodiment of the present disclosure.
20 and 21 are flowcharts each illustrating a link startup method of a storage device according to some embodiments of the present disclosure.
22 is a flowchart illustrating an operation between a host and a storage device according to an embodiment of the present disclosure.
23 and 24 are flowcharts each illustrating a link startup method of a storage device according to some embodiments of the present disclosure.
25 is a diagram for explaining a UFS system according to an embodiment of the present invention.
26A to 26C are diagrams for explaining a form factor of a UFS card.
27 is a block diagram illustrating a memory system according to an embodiment of the present disclosure.
28 is a diagram for explaining a 3D VNAND structure applicable to a UFS device according to an embodiment of the present disclosure.
29 is a diagram for explaining a BVNAND structure applicable to a UFS device according to an embodiment of the present disclosure.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 개시의 일 실시예에 따른 스토리지 시스템(10)을 나타내는 블록도이다.1 is a block diagram illustrating a
도 1을 참조하면, 스토리지 시스템(10)은 스토리지 장치(100) 및 호스트(200)를 포함한다. 예를 들어, 스토리지 장치(100)와 호스트(200)는 UFS(Universal Flash Storage) 표준(standard)에서 정의된 인터페이스 규약에 따라 연결될 수 있고, 이에 따라, 스토리지 장치(100)는 UFS 장치일 수 있고, 호스트(200)는 UFS 호스트일 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 스토리지 장치(100)와 호스트(200)는 다양한 표준 인터페이스들에 따라 연결될 수 있다.Referring to FIG. 1 , a
호스트(200)는 인터커넥트부(210) 및 호스트 컨트롤러(220)를 포함할 수 있다. 호스트(200)는 스토리지 장치(100)에 대한 데이터 처리 동작, 예를 들어, 데이터 독출 동작 또는 데이터 기입 동작 등을 제어할 수 있다. 호스트(200)는 CPU(Central Processing Unit), 프로세서, 마이크로프로세서 또는 어플리케이션 프로세서(Application Processor, AP) 등과 같이 데이터를 처리할 수 있는 데이터 처리 장치를 의미할 수 있다. 호스트(200)는 운영 체제(operating system, OS) 및/또는 다양한 응용 프로그램(application)을 수행할 수 있다. 일 실시예에서, 스토리지 시스템(10)은 모바일 장치에 포함될 수 있고, 호스트(200)는 어플리케이션 프로세서(AP)로 구현될 수 있다. 일 실시예에서, 호스트(200)는 시스템 온 칩(System-On-a-Chip, SoC)으로 구현될 수 있고, 이에 따라, 전자 장치에 내장될 수 있다. The
스토리지 장치(100)는 인터커넥트부(110), 장치 컨트롤러(120) 및 비휘발성 메모리(130)를 포함할 수 있다. 장치 컨트롤러(120)는 호스트(200)로부터의 기입 요청에 응답하여 비휘발성 메모리(130)에 데이터를 기입하도록 비휘발성 메모리(130)를 제어하거나, 또는 호스트(200)로부터의 독출 요청에 응답하여 비휘발성 메모리(130)에 저장된 데이터를 독출하도록 비휘발성 메모리(130)를 제어할 수 있다. 비휘발성 메모리(130)는 복수의 메모리 셀들을 포함할 수 있는데, 예를 들어, 복수의 메모리 셀들은 플래쉬 메모리 셀들일 수 있다. 일 실시예에서, 복수의 메모리 셀들은 낸드(NAND) 플래쉬 메모리 셀들일 수 있다. 그러나, 본 발명은 이에 한정되지 않고, 다른 실시예에서, 복수의 메모리 셀들은 ReRAM(resistive RAM), PRAM(phase change RAM) 또는 MRAM(magnetic RAM)과 같은 저항형 메모리 셀들일 수 있다.The
아울러, 도 1에서는 인터커넥트부(110)와 장치 컨트롤러(120)가 서로 구별되는 구성인 것으로 도시되어 있지만, 장치 컨트롤러(120)는 인터커넥트부(110)를 포함하는 개념일 수 있으며, 이와 같은 점은 도 1 외의 뒤에서 설명될 다른 도면들에 대해서도 같다. 예컨대, 장치 컨트롤러(120)가 하나의 패키지 칩(package chip)으로 구현될 때, 인터커넥트부(110) 역시 상기 패키지 칩에 함께 구현될 수 있다.In addition, although the
호스트(200)는 제1 핀들(P1a', P1b')을 더 포함할 수 있고, 스토리지 장치(100)는 제1 핀들(P1a', P1b')에 각각 연결되도록 구성된 제1 핀들(P1a, P1b)을 더 포함할 수 있다. 스토리지 장치(100)는 제1 핀들(P1a, P1b)을 통해 호스트(200)로부터 입력 신호, 예를 들어, 차동(differential) 입력 신호(DIN_t, DIN_c)를 수신할 수 있다. 이에 따라, 제1 핀들(P1a, P1b)은 "입력 신호 핀들"이라고 지칭할 수 있고, 차동 입력 신호(DIN_t, DIN_c)가 전송되는 신호 라인들은 수신 레인을 구성할 수 있다. 예를 들어, 제1 핀(P1a)은 "포지티브 입력 신호 핀"이라고 지칭하고, 제1 핀(P1b)은 "네거티브 입력 신호 핀"이라고 지칭할 수 있다.The
또한, 호스트(200)는 제2 핀들(P2a', P2b')을 더 포함할 수 있고, 스토리지 장치(100)는 제2 핀들(P2a', P2b')에 각각 연결되도록 구성된 제2 핀들(P2a, P2b)을 더 포함할 수 있다. 스토리지 장치(100)는 제2 핀들(P2a, P2b)을 통해 호스트(200)로 출력 신호, 예를 들어, 차동 출력 신호(DOUT_t, DOUT_c)를 전송할 수 있다. 이에 따라, 제2 핀들(P2a, P2b)은 "출력 신호 핀들"이라고 지칭할 수 있고, 차동 출력 신호(DOUT_t, DOUT_c)가 전송되는 신호 라인들은 송신 레인을 구성할 수 있다. 예를 들어, 제2 핀(P2a)은 "포지티브 출력 신호 핀"이라고 지칭하고, 제2 핀(P2b)은 "네거티브 출력 신호 핀"이라고 지칭할 수 있다.In addition, the
스토리지 장치(100)는 라인-리셋 검출기(140)를 더 포함할 수 있다. 도 1에서는, 장치 컨트롤러(120)가 라인-리셋 검출기(140)를 포함하는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않는다. 라인-리셋 검출기(140)는 호스트(200)로부터 라인-리셋 신호(LINE-RESET)를 수신하고, 수신한 라인-리셋 신호(LINE-RESET)의 길이, 즉, 라인-리셋 구간의 길이를 검출할 수 있다. 장치 컨트롤러(120)는 검출된 라인-리셋 신호(LINE-RESET)의 길이에 기초하여, 고속 모드 또는 저속 모드(예를 들어, PWM 모드)로 링크 스타트업을 수행할 수 있다. 라인-리셋 신호(LINE-RESET)에 대해서는 도 3 및 도 4를 참조하여 더욱 상세하게 설명하기로 한다. 라인-리셋 검출기(140)의 구체적인 동작에 대해서는 도 5 내지 도 10을 참조하여 더욱 상세하게 설명하기로 한다.The
인터커넥트부들(110, 210)은 호스트(200)와 스토리지 장치(100) 사이에서 데이터를 교환하기 위한 인터페이스를 제공할 수 있다. 일 실시예에서, 인터커넥트부(110)는 물리 계층(physical layer, PL)(111) 및 링크 계층(link layer, LL)(115)을 포함할 수 있고, 물리 계층(111)은 제1 및 제2 핀들(P1a, P1b, P2a, P2b)에 연결될 수 있다. 마찬가지로, 인터커넥트부(210)도 물리 계층(211) 및 링크 계층(215)을 포함할 수 있고, 물리 계층(211)은 제1 및 제2 핀들(P1a', P1b', P2a', P2b')에 연결될 수 있다. 각 물리 계층(111, 211)은 호스트(200)와 스토리지 장치(100) 사이에서 데이터를 교환하기 위한 물리적 구성들을 포함할 수 있고, 예를 들어, 적어도 하나의 송신기(transmitter) 및 적어도 하나의 수신기(receiver) 등을 포함할 수 있다. 각 링크 계층(115, 215)은 데이터의 전송 및 조합(Composition)을 관리할 수 있고, 데이터의 무결성(Integrity) 및 오류(Error)를 관리할 수도 있다.The
일 실시예에서, 스토리지 시스템(10)이 모바일 장치인 경우, 링크 계층들(115, 215)은 "UniPro" 스펙에 의해 정의될 수 있고, 물리 계층들(111, 211)은 "M-PHY" 스펙에 의해 정의될 수 있다. UniPro 및 M-PHY는 MIPI(Mobile Industry Processor Interface) 연합(Alliance)에 의해 제안된 인터페이스 규약이다. 이때, 링크 계층들(115, 215)은 물리 적응 계층(Physical Adapted Layer)을 각각 포함할 수 있다. 물리 적응 계층은 데이터의 심볼을 관리하거나 전력을 관리하는 등 물리 계층들(111, 211)을 제어할 수 있다. 이하에서는, 도 2를 참조하여 호스트(200)와 스토리지 장치(100) 사이의 인터페이스에 대해 상세하게 설명하기로 한다.In one embodiment, where
도 2는 본 개시의 일 실시예에 따른 호스트와 스토리지 장치 사이의 인터페이스(20)를 나타낸다.2 illustrates an
도 2를 참조하면, 인터페이스(20)는 호스트 컨트롤러(220)와 장치 컨트롤러(120) 사이의 링크(link)(300)를 포함할 수 있고, 링크(300)는 복수의 레인들(lanes)(310, 320, 330)을 포함할 수 있다. 링크(300)는 각 방향에 대응하는 적어도 하나의 레인을 포함할 수 있으며, 각 방향의 레인들의 수는 대칭적일 필요는 없다. 예를 들어, 링크(300)는 호스트 컨트롤러(220)에서 장치 컨트롤러(120)로의 제1 방향에 대응하는 두 개의 레인들(310, 320) 및 장치 컨트롤러(120)에서 호스트 컨트롤러(220)로의 제2 방향에 대응하는 하나의 레인(330)을 포함할 수 있으나, 본 발명은 이에 한정되지 않는다. 예를 들어, 제1 방향에 대응하는 두 개의 레인들(310, 320)은 제1 서브 링크를 구성하고, 제2 방향에 대응하는 하나의 레인(330)은 제2 서브 링크를 구성할 수 있다.Referring to FIG. 2 , the
각 레인(310, 320, 330)은 단방향(unidirectional), 싱글-시그널(single-signal), 정보를 실어 나르는 전송 채널(transmission channel)이다. 예를 들어, 레인(320)은 송신기(TX1), 수신기(RX1), 그리고 송신기(TX1)와 수신기(RX1) 사이를 포인트-투-포인트 인터컨넥트하는 라인(LINE)으로 구성될 수 있다. 예를 들어, 송신기(TX1)는 차동 신호의 포지티브 노드에 대응하는 핀(TXDP) 및 차동 신호의 네거티브 노드에 대응하는 핀(TXDN)에 연결될 수 있고, 수신기(RX1)는 차동 신호의 포지티브 노드에 대응하는 핀(RXDP) 및 차동 신호의 네거티브 노드에 대응하는 핀(RXDN)에 연결될 수 있다. 라인(LINE)은 송신기(TX1) 및 수신기(RX1)의 핀들(TXDP와 RXDP, TXDN과 RXDN)을 연결하는 2개의 차동적으로 라우팅된 와이어들로 구성되며, 이들 와이어들은 전송 라인들에 대응할 수 있다.Each of the
링크(300)는 양방향 데이터 전송 기능을 제공하는 레인 관리부들(340, 350)을 더 포함할 수 있다. 도 2에는 레인 관리부(350)와 호스트 컨트롤러(220)가 분리되는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않으며, 레인 관리부(350)는 호스트 컨트롤러(220)에 포함될 수 있다. 마찬가지로, 도 2에는 레인 관리부(340)와 장치 컨트롤러(120)가 분리되는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않고, 레인 관리부(340)는 장치 컨트롤러(120)에 포함될 수 있다.The
도 1 및 도 2를 함께 참조하면, 호스트(200)의 인터커넥트부(210)에 포함된 송신기와 스토리지 장치(100)의 인터커넥트부(110)에 포함된 수신기는 하나의 레인을 형성한다. 그런데, 호스트(200)의 인터커넥트부(210)에 포함된 송신기 및 수신기의 개수는 스토리지 장치(100)의 인터커넥트부(110)에 포함된 송신기 및 수신기의 개수와 다를 수 있다. 또한, 호스트(200)의 성능(capability)은 스토리지 장치(100)의 성능과 다를 수 있다.1 and 2 together, the transmitter included in the
따라서, 호스트(200) 및 스토리지 장치(100)는 물리적으로 연결된 레인을 인식하고 상대방 장치의 정보를 제공받기 위한 처리를 수행한다. 이에 따라, 호스트(200) 및 스토리지 장치(100)는 데이터를 교환하기 전에, 링크 스타트업 처리를 수행한다. 링크 스타트업 처리를 수행함으로써, 호스트(200)와 스토리지 장치(100)는 송신기 및 수신기의 개수에 관한 정보, 물리적으로 연결된 레인에 관한 정보, 상대방 장치의 성능 등에 관한 정보 등을 서로 교환하고 인식할 수 있다. 링크 스타트업 처리가 완료된 후, 호스트(200)와 스토리지 장치(100)는 서로 안정적으로 데이터를 교환할 수 있는 링크업 상태(linkup state)로 설정된다.Accordingly, the
링크 스타트업 처리는 스토리지 시스템(10)이 처음 사용될 때 수행되는 초기화 작동 또는 스토리지 시스템(10)의 부팅 작동 중에 수행될 수 있다. 나아가, 링크 스타트업 처리는 링크업 상태의 오류를 복구(recovery)하는 작동 중에도 수행될 수 있다. 그런데, 링크 스타트업 처리는 호스트(200)와 스토리지 장치(100)에 관한 많은 정보의 교환을 요구하므로 긴 시간이 소요될 수 있고, 이러한 긴 시간을 소요하는 링크 스타트업 처리는 스토리지 시스템(10)의 성능을 저하시킬 수 있다.The link startup process may be performed during an initialization operation performed when the
그러나, 본 개시의 일 실시예에 따르면, 호스트(200)는 스토리지 시스템(10)의 초기화 작동 또는 부팅 작동 시에 차동 입력 신호(DIN_t, DIN_c)가 전송되는 차동 입력 신호 라인을 통해 스토리지 장치(100)에 특정 길이를 갖는 라인-리셋 신호(LINE-RESET)를 제공할 수 있고, 스토리지 장치(100)는 수신한 라인-리셋 신호(LINE-RESET)의 길이를 검출함으로써 고속 모드로 링크 스타트업 처리를 수행할 수 있다. 이로써, 링크 스타트업 처리에 소요되는 시간을 줄일 수 있으므로, 스토리지 시스템(10)의 성능을 향상시킬 수 있다.However, according to an embodiment of the present disclosure, the
또한, 본 개시의 일 실시예에 따르면, 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)의 존재 여부에 기초하여 고속 모드 또는 저속 모드로 링크 스타트업 처리를 수행할 수 있다. 또한, 본 개시의 일 실시예에 따르면, 스토리지 장치(100)는 파워 업 또는 하드웨어 리셋 이후, 우선 고속 모드로 링크 스타트업 처리를 수행하고, 호스트(200)와 스토리지 장치(100) 사이에서 링크업이 패스되지 않은 경우 저속 모드로 링크 스타트업 처리를 수행할 수도 있다. Also, according to an embodiment of the present disclosure, the
또한, 본 개시의 일부 실시예들에 따르면, 링크 스타트업 처리의 동작 모드를 판단하기 위한 조건은 라인-리셋 신호(LINE-RESET)의 길이 또는 존재 여부에 한정되지 않는다. 예를 들어, 라인-리셋 신호(LINE-RESET)에서 논리 로우와 논리 하이 사이의 토글링(toggling)이 발생한 횟수 등과 같은 다른 특성에 기초하여 고속 모드 또는 저속 모드로 링크 스타트업 처리를 수행할 수 있다.In addition, according to some embodiments of the present disclosure, the condition for determining the operation mode of the link startup process is not limited to the length or existence of the line-reset signal LINE-RESET. For example, link startup processing may be performed in high-speed mode or low-speed mode based on other characteristics such as the number of times toggling between logic low and logic high in the line-reset signal LINE-RESET. have.
또한, 본 개시의 일부 실시예들에 따르면, 링크 스타트업 처리의 동작 모드를 판단하는데 이용되는 신호는 라인-리셋 신호(LINE-RESET)에 한정되지 않는다. 예를 들어, 링크 스타트업 처리가 수행되기 전에 호스트(200)와 스토리지 장치(100) 사이에서 전송될 수 있는 다른 신호들이 라인-리셋 신호 대신 이용될 수 있고, 다른 신호들에 기초하여 고속 모드 또는 저속 모드로 링크 스타트업 처리를 수행할 수 있다. In addition, according to some embodiments of the present disclosure, the signal used to determine the operation mode of the link startup process is not limited to the line-reset signal LINE-RESET. For example, other signals that may be transmitted between the
일부 실시예들에서, 스토리지 장치(100)는 디램리스(DRAMless) 장치로 구현될 수 있고, 디램리스 장치는 DRAM 캐시를 포함하지 않는 장치를 지칭할 수 있다. 이때, 장치 컨트롤러(120)는 DRAM 컨트롤러를 포함하지 않을 수 있다. 예를 들어, 스토리지 장치(100)는 비휘발성 메모리(130)의 일부 영역을 버퍼 메모리로 이용할 수 있다.In some embodiments, the
일부 실시예들에서, 스토리지 장치(100)는 전자 장치에 내장되는(embedded) 내장(internal) 메모리일 수 있다. 예를 들어, 스토리지 장치(100)는 임베디드 UFS 메모리 장치, eMMC(embedded Multi-Media Card), 또는 SSD(Solid State Drive)일 수 있다. 그러나, 본 발명은 이에 한정되지 않고, 스토리지 장치(100)는 비휘발성 메모리(예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM 등)일 수 있다. 일부 실시예들에서, 스토리지 장치(100)는 전자 장치에 착탈 가능한 외장(external) 메모리일 수 있다. 예를 들어, 스토리지 장치(100)는 UFS 메모리 카드, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 및 Memory Stick 중 적어도 하나를 포함할 수 있다. In some embodiments, the
스토리지 시스템(10)은 예를 들어, PC(personal computer), 랩탑 컴퓨터(laptop computer), 이동 전화기, 스마트폰(smartphone), 태블릿(tablet) PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), 오디오 장치(audio device), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), MP3 플레이어, 휴대용 게임 콘솔(handheld game console), 또는 e-북(e-book) 등과 같은 전자 장치로 구현될 수 있다. 또한, 스토리지 시스템(10)은 예를 들어, 손목 시계 또는 HMD(Head-Mounted Display)와 같은 웨어러블 기기(Wearable device) 등과 같은 다양한 유형의 전자 장치로 구현될 수도 있다.The
도 3은 본 개시의 일 실시예에 따른 라인-리셋 신호(LINE-RESET)를 나타내는 타이밍도이다.3 is a timing diagram illustrating a line-reset signal LINE-RESET according to an embodiment of the present disclosure.
도 1 내지 도 3을 함께 참조하면, 라인(LINE)의 전압(30)은 포지티브 차동 라인 전압을 갖는 DIF-P 상태, 네거티브 차동 라인 전압을 갖는 DIF-N 상태 또는 거의 제로 차동 라인 전압을 갖는 DIF-Z 상태로 구동될 수 있다. 도시되지는 않았으나, 라인(LINE)은 하이 임피던스 상태를 나타내는 DIF-Q 상태, 또는 DIF-N 또는 DIF-P도 아닌 DIF-X 상태를 가질 수도 있다. 여기서, 차동 라인 전압은, 포지티브 노드에 연결된 라인의 전압에서 네거티브 노드에 연결된 라인의 전압을 뺀 값으로 정의될 수 있다.1 to 3 together,
라인(LINE)은 인터페이스(20)에 포함된 임의의 라인에 대응할 수 있고, 예를 들어, 라인(LINE)은 도 1의 차동 입력 신호(DIN_t, DIN_c)가 전송되는 차동 입력 신호 라인에 대응할 수 있다. 예를 들어, 포지티브 입력 신호(DIN_t)가 인가되는 제1 핀(P1a)의 전압 레벨이 네거티브 입력 신호(DIN_c)가 인가되는 제1 핀(P1b)의 전압 레벨보다 높을 때, 라인(LINE)은 DIF-P 상태 또는 로직 하이일 수 있다. 예를 들어, 포지티브 입력 신호(DIN_t)가 인가되는 제1 핀(P1a)의 전압 레벨이 네거티브 입력 신호(DIN_c)가 인가되는 제1 핀(P1b)의 전압 레벨보다 낮을 때, 라인(LINE)은 DIF-N 상태 또는 로직 로우일 수 있다. 예를 들어, 포지티브 입력 신호(DIN_t)가 인가되는 제1 핀(P1a)의 전압 레벨이 네거티브 입력 신호(DIN_c)가 인가되는 제1 핀(P1b)의 전압 레벨과 거의 동일할 때, 라인(LINE)은 DIF-Z 상태 또는 접지 상태일 수 있다.The line LINE may correspond to any line included in the
t0에서 t1 사이의 액티베이트 구간(TACTIVATE)에서, 라인(LINE)은 DIF-N으로 구동될 수 있다. 예를 들어, 호스트(200)는 액티베이트 구간(TACTIVATE) 동안, 파워 세이빙 상태(예를 들어, 하이버네이트 상태(HIBERN8))의 탈출을 지시하도록 라인(LINE)을 통해 전송되는 신호(예를 들어, 액티베이트 신호)를 DIF-N 상태로 구동할 수 있다. 스토리지 장치(100)는 액티베이트 신호에 응답하여, 파워 세이빙 상태(예를 들어, HIBERN8 상태)를 탈출할 수 있다. 일 실시예에서, 액티베이트 구간(TACTIVATE)의 길이에 기초하여, 스토리지 장치(100)의 인터커넥트부(110)의 물리 계층(111) 또는 링크 계층(115)을 미리 설정할 수 있다. 일 실시예에서, 액티베이트 구간(TACTIVATE)의 길이에 기초하여, 호스트(200)와 스토리지 장치(100) 사이의 링크 스타트업 동작을 고속 모드 또는 저속 모드로 수행할 수 있다. In the activation period T ACTIVATE between t0 and t1 , the line LINE may be driven by DIF-N. For example, during the activation period T ACTIVATE , the
t1에서 t3 사이의 라인-리셋 구간(TLINE-RESET)에서, 라인(LINE)은 DIF-P 상태로 구동될 수 있다. 예를 들어, 호스트(200)는 라인-리셋 구간(TLINE-RESET) 동안, 라인-리셋 동작을 지시하도록 라인(LINE)을 통해 전송되는 신호(예를 들어, 라인-리셋 신호(LINE-RESET))를 DIF-P 상태로 구동할 수 있다. 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)에 응답하여, 인터커넥트부(110)의 물리 계층(111)을 리셋하는 라인-리셋을 수행할 수 있다. "라인-리셋"은 오작동 상황에서 동작 중에 라인(LINE)을 통해 인터커넥트부(110)의 물리 계층(111)을 리셋하기 위한 리셋 메커니즘이다. In the line-reset period T LINE-RESET between t1 and t3, the line LINE may be driven in the DIF-P state. For example, during the line-reset period T LINE-RESET , the
t1에서 t2 사이의 라인-리셋 고속 링크업 구간(TLINE-RESET-HS-LINKUP)에서, 라인(LINE)은 DIF-P 상태로 구동될 수 있다. 예를 들어, 호스트(200)는 라인-리셋 고속 링크업 구간(TLINE-RESET-HS-LINKUP) 동안, 고속 링크 스타트업 시퀀스를 지시하도록 라인(LINE)을 통해 전송되는 신호(예를 들어, 라인-리셋 신호(LINE-RESET))를 DIF-P 상태로 구동할 수 있다. 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)에 응답하여, 고속 링크 스타트업 시퀀스를 수행함으로써 호스트(200)와 스토리지 장치(100) 사이에서 고속 모드로 링크 스타트업 처리를 수행할 수 있다. In the line-reset high-speed link-up period T LINE-RESET-HS-LINKUP between t1 and t2, the line LINE may be driven to a DIF-P state. For example, during the line-reset high-speed link-up period (T LINE-RESET-HS-LINKUP ), the
도 4는 본 개시의 일 실시예에 따른 라인-리셋 파라미터들 및 라인-리셋 고속 링크업 파라미터들을 나타내는 표(40)이다.4 is a table 40 illustrating line-reset parameters and line-reset high-speed link-up parameters according to an embodiment of the present disclosure.
도 1, 도 3 및 도 4를 함께 참조하면, 호스트(200)가 스토리지 장치(100)의 라인-리셋 동작을 지시하기 위한 라인-리셋 구간(TLINE-RESET)은 최소 3.1 ms로 정의될 수 있다. 이에 따라, 호스트(200)는 스토리지 장치(100)의 인터커넥트부(110)의 물리 계층(111)을 리셋하기 위해서, 약 3.1 ms 이상의 시간 동안 라인(LINE)의 전압을 DIF-P 상태로 구동할 수 있다. 다시 말해, 라인-리셋 구간(TLINE-RESET)은 송신단의 라인-리셋 파라미터에 대응할 수 있다. 1, 3, and 4 together, the line-reset period T LINE-RESET for the
스토리지 장치(100)가 라인-리셋 동작을 수행하기 위한 라인-리셋 검출 구간(TLINE-RESET-DETECT)의 최소 값은 1 ms이고, 최대 값은 3 ms로 정의될 수 있다. 이에 따라, 스토리지 장치(100)는 라인(LINE)의 전압이 DIF-P로 구동되는 구간의 길이가 약 1 ms 내지 3 ms 사이이면, 인터커넥트부(110)의 물리 계층(111)을 리셋하는 라인-리셋 동작을 수행할 수 있다. 다시 말해, 라인-리셋 검출 구간(TLINE-RESET-DETECT)은 수신단의 라인-리셋 파라미터에 대응할 수 있다. The minimum value of the line-reset detection period T LINE-RESET-DETECT for the
호스트(200)가 스토리지 장치(100)의 고속 링크 스타트업 동작을 지시하기 위한 라인-리셋 고속 링크업 구간(TLINE-RESET-HS-LINKUP)의 최소 값은 300 ㎲이고, 최대 값은 500 ㎲로 정의될 수 있다. 이에 따라, 호스트(200)는 고속 링크 스타트업을 수행하기 위해서, 약 300 ㎲ 내지 500 ㎲ 사이의 시간 동안 라인(LINE)의 전압을 DIF-P 상태로 구동할 수 있다. 다시 말해, 라인-리셋 고속 링크업 구간(TLINE-RESET-HS-LINKUP)은 송신단의 라인-리셋 고속 링크업 파라미터에 대응할 수 있다. The minimum value of the line-reset high-speed link-up period (T LINE-RESET-HS-LINKUP ) for the
스토리지 장치(100)가 고속 링크 스타트업 동작을 수행하기 위한 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최소 값은 200 ㎲이고, 최대 값은 300 ㎲로 정의될 수 있다. 이에 따라, 스토리지 장치(100)는 라인(LINE)의 전압이 DIF-P 상태로 구동되는 구간의 길이가 약 200 ㎲ 내지 300 ㎲ 사이이면, 고속 링크 스타트업 시퀀스를 수행할 수 있다. 한편, 스토리지 장치(100)는 라인(LINE)의 전압이 DIF-P 상태로 구동되는 구간의 길이가 약 300 ㎲ 보다 길면, 저속 링크 스타트업 시퀀스를 수행할 수 있다. 다시 말해, 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-DETECT-HS-LINKUP-DETECT)은 수신단의 라인-리셋 고속 링크업 파라미터에 대응할 수 있다. The minimum value of the line-reset high-speed link-up detection period (T LINE-RESET-HS-LINKUP-DETECT ) for the
도 5는 본 개시의 일 실시예에 따른 스토리지 시스템(10A)을 나타내는 블록도이다.5 is a block diagram illustrating a
도 5를 참조하면, 스토리지 시스템(10A)은 스토리지 장치(100A)와 호스트(200A)를 포함하고, 스토리지 장치(100A)는 인터커넥트부(110a), 장치 컨트롤러(120a) 및 비휘발성 메모리(130)를 포함하며, 호스트(200A)는 인터커넥트부(210a) 및 호스트 컨트롤러(220a)를 포함할 수 있다. 스토리지 시스템(10A)은 도 1의 스토리지 시스템(10)의 변형 예에 대응하며, 도 1 내지 도 4를 참조하여 상술된 내용은 본 실시예에도 적용될 수 있다. 본 실시예에서, 라인-리셋 검출기(140)는 인터커넥트부(110a)에 포함될 수 있고, 예를 들어, 라인-리셋 검출기(140)는 인터커넥트부(110a)의 물리 계층(예를 들어, 도 1의 111)에 포함될 수 있다.Referring to FIG. 5 , the
도 6은 본 개시의 일 실시예에 따른 라인-리셋 검출기(140a)를 나타내는 블록도이다. 도 7은 본 개시의 일 실시예에 따라, 도 6의 라인-리셋 검출기(140a)의 검출 동작을 예시적으로 나타내는 타이밍도이다.6 is a block diagram illustrating a line-
도 1, 도 6 및 도 7을 함께 참조하면, 라인-리셋 검출기(140a)는 비교기(141), 시스템 클럭 카운터(142) 및 라인-리셋 길이 판별기(143)를 포함할 수 있고, 도 1의 라인-리셋 검출기(140)의 일 예에 대응할 수 있다. 여기서, 포지티브 입력 신호(DIN_t)는 제1 핀(P1a)을 통해 호스트(200)로부터 수신될 수 있고, 네거티브 입력 신호(DIN_c)는 제1 핀(P1b)을 통해 호스트(200)로부터 수신될 수 있다. 시스템 클럭(SYS_CLK)은 스토리지 장치(100)에서 생성되는 내부 클럭 신호에 대응할 수 있다. 1, 6, and 7 together, the line-
비교기(141)는 포지티브 입력 신호(DIN_t)와 네거티브 입력 신호(DIN_c)를 비교함으로써, 차동 라인 전압(DIF)을 생성할 수 있다. 시스템 클럭 카운터(142)는 시스템 클럭(SYS_CLK)에서 클럭의 개수를 카운팅함으로써, 시스템 클럭 카운트 값(SYS_CNT)을 생성할 수 있다. 라인-리셋 길이 판별기(143)는 차동 라인 전압(DIF)과 시스템 클럭 카운트 값(SYS_CNT)에 기초하여, 라인-리셋 길이를 판별할 수 있다. 예를 들어, 시스템 클럭(SYS_CLK)은 제1 주파수에 따라 토글링할 수 있고, 차동 라인 전압(DIF)이 로직 하이 레벨을 유지하는 구간, 다시 말해, DIF-P인 구간 동안, 시스템 클럭 카운트 값(SYS_CNT)은 예를 들어, X로 생성될 수 있다. 따라서, 라인-리셋 판별기(143)는 제1 주파수 및 시스템 클럭 카운트 값(SYS_CNT)으로부터, 라인-리셋 길이를 판별할 수 있다.The
도 8은 본 개시의 일 실시예에 따른 라인-리셋 검출기(140b)를 나타내는 블록도이다.8 is a block diagram illustrating a line-
도 1 및 도 8을 함께 참조하면, 라인-리셋 검출기(140b)는 비교기(141) 및 RC 필터(144)를 포함할 수 있고, 도 1의 라인-리셋 검출기(140)의 일 예에 대응할 수 있다. 일 실시예에서, RC 필터(144)는 인터커넥트부(110)의 물리 계층(111)에 포함될 수 있다. 일 실시예에서, RC 필터(144)는 장치 컨트롤러(120)에 포함될 수 있다.1 and 8 together, the line-
비교기(141)는 포지티브 입력 신호(DIN_t)와 네거티브 입력 신호(DIN_c)를 비교함으로써, 차동 라인 전압(DIF)을 생성할 수 있다. RC 필터(144)는 저항(R) 및 커패시터(C)를 포함할 수 있고, 입력 전압(Vin)으로서 수신한 차동 라인 전압(DIF)으로부터 출력 전압(Vout)을 생성할 수 있다. 라인-리셋 검출기(140b)는 출력 전압(Vout1)을 기초로 라인-리셋 길이를 검출할 수 있다. 구체적으로, RC 필터(144)는 제1 시점(예를 들어, 도 10의 t1)에서 차동 라인 전압(DIF)에 대응하는 출력 전압(Vout)을 감지할 수 있고, 예를 들어, 제1 시점은 저항(R)의 저항값과 커패시터(C)의 커패시턴스에 기초한 시정수에 대응할 수 있다. The
도 9는 본 개시의 일 실시예에 따른 라인-리셋 검출기(140c)를 나타내는 블록도이다.9 is a block diagram illustrating a line-
도 9를 참조하면, 라인-리셋 검출기(140c)는 비교기(141), RC 필터(144), 및 트리거 신호 생성기(145)를 포함할 수 있다. 라인-리셋 검출기(140c)는 도 8의 라인-리셋 검출기(140b)의 변형 예에 대응할 수 있고, 도 1 및 도 8을 참조하여 상술된 내용은 본 실시예에도 적용될 수 있다. 트리거 신호 생성기(145)는 출력 전압(Vout)으로부터 트리거 신호(TS)를 생성할 수 있다. 예를 들어, 트리거 신호 생성기(145)는 펄스 제너레이터(pulse generator)로 구현될 수 있고, 트리거 신호(TS)는 펄스 파형으로 생성될 수 있다. 라인-리셋 검출기(140c)는 트리거 신호(TS)로부터 라인-리셋 길이를 검출할 수 있다.Referring to FIG. 9 , the line-
도 10은 본 개시의 일 실시예에 따라, 도 9의 라인-리셋 검출기(140c)의 검출 동작을 예시적으로 나타내는 타이밍도이다.10 is a timing diagram exemplarily illustrating a detection operation of the line-
도 9 및 도 10을 함께 참조하면, t0에서 차동 라인 전압(DIF)은 로직 로우에서 로직 하이로 천이할 수 있고, 이에 따라, 출력 전압(Vout)의 전압 레벨은 상승할 수 있다. t1에서, RC 필터(144)는 차동 라인 전압(DIF)에 대응하는 출력 전압(Vout)을 감지할 수 있고, 트리거 신호 생성기(145)는 출력 전압(Vout)의 전압 레벨에 따라 인에이블되는 트리거 신호(TS)를 생성할 수 있다. 출력 전압(Vout)의 전압 레벨이 기준 전압 레벨보다 높은 경우, 트리거 신호 생성기(145)는 트리거 신호를 생성할 수 있고, 출력 전압(Vout)의 전압 레벨이 기준 전압 레벨보다 낮은 경우, 트리거 신호 생성기(145)는 트리거 신호를 생성하지 않을 수 있다. 일 실시예에서, RC 필터(144)는 내부 스위치를 포함할 수 있고, 트리거 신호(TS)가 생성되면 RC 필터(144)의 내부 스위치가 오프될 수 있다. 이에 따라, t1 이후, 차동 라인 전압(DIF)은 RC 필터(144)에 인가되지 않을 수 있고, 이에 따라, 출력 전압(Vout)의 전압 레벨은 감소할 수 있다.9 and 10 together, the differential line voltage DIF may transition from a logic low to a logic high at t0, and accordingly, the voltage level of the output voltage Vout may increase. At t1, the
예를 들어, t0에서 t1까지의 기준 시간(T1)은 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최대 값(예를 들어, 300 ㎲)에 대응할 수 있다. 이때, RC 필터(144)의 시정수는 제1 기준 시간(T1)에 대응할 수 있다. 라인-리셋 검출기(140c)는 트리거 신호(TS)가 생성되면 라인-리셋 신호의 길이가 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최대 값보다 긴 것으로 판단할 수 있고, 이때, 호스트(200)와 스토리지 장치(100)는 저속 모드로 링크 스타트업을 수행할 수 있다. 한편, 라인-리셋 검출기(140c)는 트리거 신호(TS)가 생성되지 않으면 라인-리셋 신호의 길이가 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최대 값보다 짧은 것으로 판단할 수 있고, 이때, 호스트(200)와 스토리지 장치(100)는 고속 모드로 링크 스타트업을 수행할 수 있다.For example, the reference time T1 from t0 to t1 may correspond to the maximum value (eg, 300 μs) of the line-reset high-speed link-up detection period T LINE-RESET-HS-LINKUP-DETECT. . In this case, the time constant of the
일부 실시예들에서, 라인-리셋 검출기(140c)는 감지 시점의 개수의 개수에 대응하는 복수의 RC 필터들을 포함할 수 있다. 예를 들어, 라인-리셋 검출기(140c)는 도 4에 예시된 라인-리셋 검출 구간(TLINE-RESET-DETECT)의 최소 값 및 최대 값, 그리고, 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최소 값 및 최대 값을 검출하기 위한 4개의 RC 필터들을 포함할 수 있다. 이때, 4개의 RC 필터들의 시정수들은 라인-리셋 검출 구간(TLINE-RESET-DETECT)의 최소 값 및 최대 값, 그리고, 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최소 값 및 최대 값에 각각 대응할 수 있다.In some embodiments, the line-
도 11은 본 개시의 일 실시예에 따른 스토리지 장치의 동작 방법을 나타내는 흐름도이다. 도 11을 참조하면, 본 실시예에 따른 스토리지 장치의 동작 방법은 스토리지 장치의 링크 스타트업 동작 방법에 대응하며, 예를 들어, 도 1 또는 도 5의 스토리지 장치(100, 100A)에서 시계열적으로 수행되는 단계들을 포함할 수 있다. 도 1 내지 도 10을 참조하여 상술된 내용은 본 실시예에 적용될 수 있고, 중복된 설명은 생략하기로 한다.11 is a flowchart illustrating a method of operating a storage device according to an embodiment of the present disclosure. Referring to FIG. 11 , the method of operating the storage device according to the present embodiment corresponds to the method of operating the link startup of the storage device, for example, in time series in the
단계 S110에서, 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)을 수신한다. 예를 들어, 스토리지 장치(100)는 제1 핀들(P1a, P1b)을 통해 호스트(200)로부터 라인-리셋 신호(LINE-RESET)을 수신할 수 있다. 예를 들어, 스토리지 장치(100)는 스토리지 시스템(10)에 전원이 인가되면, 호스트(200)로부터 라인-리셋 신호(LINE-RESET)을 수신할 수 있다. In step S110 , the
단계 S130에서, 스토리지 장치(100)는 수신한 라인-리셋 신호(LINE-RESET)의 길이에 대응하는 라인-리셋 길이를 제1 기준 시간과 비교한다. 예를 들어, 제1 기준 시간은 도 4의 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최대 값(예를 들어, 300 ㎲)에 대응할 수 있다. 예를 들어, 라인-리셋 검출기(140a)는 차동 라인 전압(DIF)의 DIF-P 구간과 시스템 클럭 카운트 값(SYS_CNT)에 기초하여 라인-리셋 길이를 검출할 수 있고, 검출된 라인-리셋 길이를 제1 기준 시간과 비교할 수 있다. 예를 들어, 라인-리셋 검출기(140b 또는 140c)는 제1 기준 시간에 대응하는 시점에서 차동 라인 전압(DIF)에 대응하는 출력 전압에 기초하여 라인-리셋 길이를 검출할 수 있고, 검출된 라인-리셋 길이를 제1 기준 시간과 비교할 수 있다. In operation S130 , the
단계 S150에서, 스토리지 장치(100)는 고속 모드 또는 저속 모드로 링크 스타트업을 수행한다. 일 실시예에서, 라인-리셋 길이가 제1 기준 시간보다 짧으면, 스토리지 장치(100)는 고속 모드로 링크 스타트업을 수행하고, 라인-리셋 길이가 제1 기준 시간보다 길면, 스토리지 장치(100)는 저속 모드로 링크 스타트업을 수행할 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 일 실시예에서, 라인-리셋 길이가 제1 기준 시간보다 짧으면, 스토리지 장치(100)는 저속 모드로 링크 스타트업을 수행하고, 라인-리셋 길이가 제1 기준 시간보다 길면, 스토리지 장치(100)는 고속 모드로 링크 스타트업을 수행할 수 있다.In step S150 , the
도 12는 본 개시의 일 실시예에 따른 호스트(200)와 스토리지 장치(100) 사이의 동작을 나타내는 흐름도이다.12 is a flowchart illustrating an operation between the
도 12를 참조하면, 단계 S210에서, 스토리지 시스템(10)에 파워가 인가될 수 있고, 이에 따라, 호스트(200)는 스토리지 장치(100)에 파워를 전달한다. 단계 S220에서, 호스트(200)는 라인-리셋 신호(LINE-RESET)을 생성한다. 구체적으로, 호스트(200)는 스토리지 장치(100)의 고속 링크 스타트업 동작을 지시하기 위하여, 라인(LINE)이 DIF-P 상태인 라인-리셋 구간의 길이를 예를 들어, 약 300 ㎲ 내지 500 ㎲로 발행할 수 있다.Referring to FIG. 12 , in operation S210 , power may be applied to the
단계 S230에서, 호스트(200)는 포지티브 입력 신호(DIN_t) 및 네거티브 입력 신호(DIN_c)가 전송되는 차동 입력 신호 라인을 통해, 스토리지 장치(100)에 라인-리셋 신호(LINE-RESET)를 전송한다. 구체적으로, 호스트(200)는 단계 S220에서 발행된 라인-리셋 구간의 길이에 따라, 차동 입력 신호 라인을 DIF-P 상태로 구동할 수 있다. 단계 S240에서, 스토리지 장치(100)는 호스트(200)로부터 수신한 라인-리셋 신호(LINE-RESET)를 검출하고, 라인-리셋 신호(LINE-RESET)의 길이를 제1 기준 시간과 비교한다. 단계 S220 내지 단계 S240은 고속 모드 스탠바이(HS MODE STANDBY)(HS_SB)에 대응할 수 있다.In step S230 , the
단계 S250에서, 호스트(200)는 고속 모드로 링크 스타트업 동작을 수행한다. 단계 S260에서, 스토리지 장치(100)는 고속 모드로 링크 스타트업 동작을 수행한다. 단계 S250과 단계 S260은 실질적으로 동시에 수행될 수 있다. 예를 들어, 단계 S250과 단계 S260은 도 11의 단계 S150에 대응할 수 있다. 일 실시예에서, 링크 스타트업 동작은 물리 계층들(111, 211)과 링크 계층들(115, 215)의 초기화(initialization) 동작을 포함할 수 있다. 링크 스타트업 동작은 호스트(200)와 스토리지 장치(100) 사이의 정보 교환 동작을 더 포함할 수 있다. 단계 S270에서, 링크 스타트업 동작이 완료되면, 호스트(200)와 스토리지 장치(100)는 링크업 상태로 설정될 수 있고, 호스트(200)와 스토리지 장치(100)는 안정적으로 데이터를 송수신할 수 있다. 단계 S250 내지 단계 S270은 고속 모드(HS_MD)에서 수행될 수 있다. In step S250, the
도 13은 본 개시의 일 실시예에 따른 스토리지 장치의 동작 방법을 나타내는 흐름도이다. 도 13을 참조하면, 본 실시예에 따른 스토리지 장치의 동작 방법은 스토리지 장치의 링크 스타트업 동작 방법에 대응하며, 도 11의 동작 방법은 변형 예에 대응할 수 있다. 도 11을 참조하여 상술된 내용은 본 실시예에도 적용될 수 있고, 이하에서는 도 11과의 차이점을 중심으로 설명하기로 한다. 13 is a flowchart illustrating a method of operating a storage device according to an embodiment of the present disclosure. Referring to FIG. 13 , the operating method of the storage device according to the present embodiment corresponds to the link startup operating method of the storage device, and the operating method of FIG. 11 may correspond to a modified example. The contents described above with reference to FIG. 11 may also be applied to the present embodiment, and below, differences from FIG. 11 will be mainly described.
단계 S110에서, 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)을 수신한다. 단계 S130에서, 스토리지 장치(100)는 수신한 라인-리셋 신호(LINE-RESET)의 길이에 대응하는 라인-리셋 길이를 제1 기준 시간과 비교한다. 단계 S140에서, 스토리지 장치(100)는 라인-리셋 길이와 제1 기준 시간의 비교 결과에 따라, 인터커넥트 레이어의 물리 계층 또는 링크 계층을 설정한다. 예를 들어, 장치 컨트롤러(120)는 라인-리셋 길이와 제1 기준 시간의 비교 결과에 따라, 인터커넥트부(110)의 물리 계층(111)을 설정할 수 있다. 예를 들어, 장치 컨트롤러(120)는 라인-리셋 길이와 제1 기준 시간의 비교 결과에 대한 정보를 인터커넥트부(110)의 링크 계층(115)에 전달할 수 있다. 예를 들어, 스토리지 장치(100)는 라인-리셋 길이와 제1 기준 시간의 비교 결과에 따라, 물리 계층(111) 및 링크 계층(115)을 초기화할 수 있다. 단계 S150에서, 스토리지 장치(100)는 고속 모드 또는 저속 모드로 링크 스타트업을 수행한다.In step S110 , the
도 14는 본 개시의 일 실시예에 따른 UFS 호스트(200a)와 UFS 장치(100a) 사이의 고속 모드 초기화 시퀀스를 예시적으로 나타내는 흐름도이다.14 is a flowchart exemplarily illustrating a fast mode initialization sequence between the
도 14를 참조하면, UFS 호스트(200a)는 도 1의 호스트(200)의 일 예일 수 있고, UFS 장치(100a)는 도 1의 스토리지 장치(100)의 일 예일 수 있다. UFS 호스트(200a)와 UFS 장치(100a)에 파워가 인가되면, 고속 모드 스탠바이(HS_SB) 단계에서, UFS 장치(100a)는 UFS 호스트(200a)로부터 라인-리셋 신호(LINE-RESET)을 수신하고, 수신한 라인-리셋 신호(LINE-RESET)의 길이를 판별할 수 있다. 라인-리셋 신호(LINE-RESET)의 길이가 판별되면, UFS 호스트(200a)와 USF 장치(100a)는 고속 모드에서 링크 스타트업 동작을 수행할 수 있다. 구체적으로, UFS 호스트(200a)와 USF 장치(100a)는 M-PHY/UniPro 초기화(S310)를 수행하고, 정보를 교환함으로써 링크 스타트업 시퀀스(S320)을 수행할 수 있다. 이때, UFS 호스트(200a)와 UFS 장치(100a)는 풀 듀플렉스(full duplex) 방식의 LVDS 직렬 인터페이스를 통해, 읽기 동작과 쓰기 동작을 동시에 병렬적으로 수행할 수 있다.Referring to FIG. 14 , the
도 15는 본 개시의 일 실시예에 따른 호스트(200)와 스토리지 장치(100) 사이의 링크 스타트업 동작을 나타내는 흐름도이다.15 is a flowchart illustrating a link startup operation between the
도 1, 도 1 및 도 15를 함께 참조하면, 단계 S410에서, 호스트(200)는 라인-리셋 신호(LINE-RESET)를 생성하고, 연결된 레인들의 송신기들을 리셋하고, 송신기들이 리셋되었음을 나타내는 정보를 스토리지 장치(100)에 전송할 수 있다. 또한, 단계 S410에서, 스토리지 장치(100)는 라인-리셋 신호(LINE-RESET)를 수신하고 연결된 레인들의 수신기들을 리셋하고, 수신기들이 리셋되었음을 나타내는 정보를 호스트(200)에 전송할 수 있다. 이러한 라인-리셋 동작을 통해, 인터커넥트부들(110, 210)의 물리 계층들(111, 211)의 모든 속성들(Attributes)은 디폴트 값으로 리셋될 수 있다. 호스트(200)와 스토리지 장치(100)는 라인-리셋 정보를 서로 교환할 수 있다. 단계 S410은 라인-리셋 단계로 지칭될 수 있다. 라인-리셋 단계가 수행된 후, 단계 S420 내지 S460을 포함하는 링크 스타트업 시퀀스가 시작될 수 있다.1, 1 and 15 together, in step S410, the
단계 S420 내지 S460은 링크 스타트업 시퀀스에 대응할 수 있다. 링크 스타트업 시퀀스는, 호스트(200)와 스토리지 장치(100) 사이에서, 양 방향으로 초기 링크 통신을 설정하기 위하여 UniPro 트리거 이벤트들을 교환하는, 멀티-단계 핸드쉐이크(multi-phase handshake) 방식으로 수행될 수 있다. 링크 스타트업 시퀀스는 소정의 단계들(phases)로 정의될 수 있고, 각 단계 마다 트리거 이벤트가 사용될 수 있으며, 각 트리거 이벤트는 여러 번 전송될 수 있다. Steps S420 to S460 may correspond to a link startup sequence. The link startup sequence is performed in a multi-phase handshake manner, exchanging UniPro trigger events to establish initial link communication in both directions, between the
링크 스타트업 시퀀스의 제1 단계(S420)는 호스트(200)와 스토리지 장치(100) 사이에, 연결된 레인들을 발견할 수 있다. 단계 S420, 호스트(200)는 모든 이용 가능한 송신 레인들에서(on all available TX Lanes) 제1 트리거 이벤트(TRG_UPR0)를 발송(send)할 수 있다. 호스트(200)는 스토리지 장치(100)로부터 제1 트리거 이벤트 메시지를 수신할 때까지, 제1 트리거 이벤트(TRG_UPR0)를 계속해서 전송할 수 있다. 호스트(200)에서 발송되는 제1 트리거 이벤트(TRG_UPR0)는 해당 트리거가 전송되는 호스트(200)의 송신 레인의 물리적 레인 번호를 포함할 수 있다.In the first step S420 of the link startup sequence, connected lanes may be discovered between the
또한, 제1 단계(S420)에서, 스토리지 장치(100)는 모든 이용 가능한 송신 레인들에서 제1 트리거 이벤트(TRG_UPR0)를 발송할 수 있다. 스토리지 장치(100)는 호스트(200)로부터 제1 트리거 이벤트 메시지를 수신할 때까지 제1 트리거 이벤트(TRG_UPR0)를 계속해서 전송할 수 있다. 스토리지 장치(100)에서 발송되는 제1 트리거 이벤트(TRG_UPR0)는 해당 트리거가 전송되는 스토리지 장치(100)의 송신 레인의 물리적 레인 번호를 포함할 수 있다.Also, in the first step S420 , the
링크 스타트업 시퀀스의 제2 단계(S430)는 레인을 재정비(realignment) 할 수 있다. 단계 S430에서, 호스트(200)는 모든 이용 가능한 송신 레인들에서 제2 트리거 이벤트(TRG_UPR1)를 발송할 수 있다. 호스트(200)는 스토리지 장치(100)로부터 제2 트리거 이벤트 메시지를 수신할 때까지 제2 트리거 이벤트(TRG_UPR1)를 계속해서 전송할 수 있다. 호스트(200)에서 발송되는 제2 트리거 이벤트(TRG_UPR1)는 호스트(200)에 연결된 송신 레인들에 관한 정보를 포함할 수 있다.In the second step ( S430 ) of the link startup sequence, lanes may be realigned. In step S430 , the
또한, 제2 단계(S430)에서, 스토리지 장치(100)는 모든 이용 가능한 송신 레인들에서 제2 트리거 이벤트(TRG_UPR1)를 발송할 수 있다. 스토리지 장치(100)는 호스트(200)로부터 제2 트리거 이벤트 메시지를 수신할 때까지 제2 트리거 이벤트(TRG_UPR1)를 계속해서 전송할 수 있다. 스토리지 장치(100)에서 발송되는 제2 트리거 이벤트(TRG_UPR1)는 스토리지 장치(100)에 연결된 송신 레인들에 관한 정보를 포함할 수 있다.Also, in the second step S430 , the
링크 스타트업 시퀀스의 제3 단계(S440)는 호스트(200)와 스토리지 장치(100) 사이에, 연결된 레인들, 즉 이용 가능한 레인들이 얼마나 많이 있는지를 인터커넥트부들(110, 210)의 물리 계층들(111, 211)의 속성들에 반영할 수 있다. 단계 S440에서, 호스트(200)는 모든 이용 가능한 송신 레인들에서 제3 트리거 이벤트(TRG_UPR2)를 발송할 수 있다. 호스트(200)는 스토리지 장치(100)로부터 제3 트리거 이벤트(TRG_UPR2)에 대응하는 메시지를 수신할 때까지 제3 트리거 이벤트(TRG_UPR2)를 계속해서 전송할 수 있다. 호스트(200)에서 발송되는 제3 트리거 이벤트(TRG_UPR2)는 호스트(200)에 연결된 송신 레인들에 관한 논리적 레인 번호들을 포함할 수 있다.In the third step (S440) of the link startup sequence, the physical layers ( 111, 211) can be reflected. In step S440 , the
또한, 단계 S440에서, 스토리지 장치(100)는 모든 이용 가능한 송신 레인들에서 제3 트리거 이벤트(TRG_UPR2)를 발송할 수 있다. 스토리지 장치(100)는 호스트(200)로부터 제3 트리거 이벤트(TRG_UPR2)에 대응하는 제3 트리거 이벤트 메시지를 수신할 때까지 제3 트리거 이벤트(TRG_UPR2)를 계속해서 전송할 수 있다. 스토리지 장치(100)에서 발송되는 제3 트리거 이벤트(TRG_UPR2)에는 스토리지 장치(100)에 연결된 송신 레인들에 관한 논리적 레인 번호들을 포함할 수 있다.Also, in step S440 , the
링크 스타트업 시퀀스의 제3 단계(S430)가 수행됨에 따라, 호스트(200)와 스토리지 장치(100)는 이용 가능한 레인들에 관한 일치된 논리적 레인 번호들을 가질 수 있다. 이 시점에서, 호스트(200)와 스토리지 장치(100)는 링크 스타트업 시퀀스를 종료하고 성능 교환(capability exchange)을 수행할 수 있다.As the third step S430 of the link startup sequence is performed, the
단계 S450에서, 호스트(200)와 스토리지 장치(100)는 인터커넥트부들(210, 110)의 아키텍쳐 요건들을 통신하기 위하여 상대방 장치의 성능에 관한 정보(CAP)를 서로 교환하고 인식할 수 있다. 인터커넥트부들(210, 110)의 아키텍쳐 요건들은 예컨대, 밴드위스, 타이머들, 속도 기어(gear), 터미네이션/언터미네이션(termination/untermination), 스크램블링 등을 포함할 수 있다. 단계 S450는 성능 교환 단계로 지칭될 수 있다. 성능 교환 단계(S450)를 수행함에 따라, 상대방 장치의 성능에 관한 정보(CAP)가 인터커넥트부들(210, 110)에 수집되고 수집된 성능 정보(CAP)에 따라 인터커넥트부들(210, 110)의 물리 계층들의 속성들이 설정팅될 수 있다.In step S450 , the
단계 S460에서, 호스트(200)와 스토리지 장치(100)는 신뢰할 수 있는 데이터 링크를 제공하기 위하여 컨트롤 프레임(AFC)을 서로 교환할 수 있다. 이를 위하여, 호스트(200)와 스토리지 장치(100)는 상대방 장치에 초기 데이터 프레임을 발송할 수 있는데, 데이터 프레임을 수신한 장치가 데이터 프레임을 전송한 장치에 컨트롤 프레임(AFC)을 반송(send back)할 수 있다. 컨트롤 프레임(AFC)은 데이터 프레임과 다르게 구성될 수 있고, 전송 장치에 정확히 수신되었음을 인식시키기 위해, 그리고 사용 가능한 데이터 링크 레이어의 버퍼 스페이스를 알려주기 위해 사용될 수 있다. 단계 S470에서, 링크 스타트업 동작이 완료되면, 호스트(200)와 스토리지 장치(100)는 링크업 상태로 설정될 수 있고, 호스트(200)와 스토리지 장치(100)는 안정적으로 데이터를 송수신할 수 있다. In operation S460 , the
도 16은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 16을 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 11의 링크 스타트업 방법의 일 구현 예에 대응할 수 있고, 도 1의 스토리지 장치(100)에서 시계열적으로 수행되는 단계들을 포함할 수 있다. 이하에서는, 도 1, 도 3, 도 4 및 도 16을 함께 참조하여 링크 스타트업 방법을 설명하기로 한다.16 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 16 , the link startup method of the storage device according to the present embodiment may correspond to an implementation example of the link startup method of FIG. 11 , and the steps performed in time series in the
단계 S540에서, 스토리지 장치(100)는 라인-리셋 길이가 제1 기준 시간(T1)보다 긴지 판단한다. 예를 들어, 제1 기준 시간(T1)은 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최대 값(예를 들어, 300 ㎲)에 대응할 수 있다. 여기서, 라인-리셋 길이는 라인-리셋 신호의 길이, 예를 들어, 차동 라인 전압(DIF)이 DIF-P 상태로 구동되는 구간의 길이에 대응할 수 있다. 예를 들어, 차동 라인 전압(DIF)은 도 1의 제1 핀들(P1a, P1b)에서 각각 수신되는 포지티브 입력 신호(DIN_t)와 네거티브 입력 신호(DIN_c)의 전압 레벨 차이에 대응일 수 있다. 예를 들어, 단계 S540은 도 15의 단계 S420에 대응할 수 있다.In operation S540 , the
판단 결과, 라인-리셋 길이가 제1 기준 시간(T1)보다 길지 않으면, 단계 S560에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 예를 들어, 도 15의 단계 S430 내지 S460은 고속 모드로 수행될 수 있다. 한편, 라인-리셋 길이가 제1 기준 시간(T1)보다 길면, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다. 예를 들어, 도 15의 단계 S430 내지 S460은 저속 모드, 즉, PWM 모드로 수행될 수 있다.As a result of the determination, if the line-reset length is not longer than the first reference time T1 , in step S560 , the
PWM 방식으로 수행되는 저속 모드 링크 스타트업에서는, 링크 스타트업에 필요한 정보가 레인(송신 레인 혹은 수신 레인)을 통해 스토리지 장치(100)와 호스트(200) 사이에서 교환될 때, 링크 스타트업에 필요한 정보를 나타내기 위한 비트(bit)들이 레인을 통해 전송되는 신호의 펄스 폭(pulse width)을 통해 표현된다. 이와 같은 PWM 방식의 저속 모드 링크 스타트업에서는, 레인을 통해 전송되는 신호의 각 로직 하이(logic high) 구간의 사이에 로직 로우(logic low) 구간이 반드시 존재하여야 하는 RZ(return to zero) 방식이 적용된다.In the low-speed link startup performed by the PWM method, when information required for link startup is exchanged between the
이와 달리, 고속 모드 링크 스타트업에서는 링크 스타트업에 필요한 정보를 나타내는 비트들이 레인을 통해 전송되는 신호의 로직 레벨(logic level)을 통해 표현되며, 로직 하이 구간이 연속되더라도 구간 사이에 로직 로우 구간이 존재할 필요가 없는 NRZ(non-return to zero) 방식이 적용된다. 이에 따라, 고속 모드 링크 스타트업 동작은 저속 모드 링크 스타트업 동작에 비해 빠른 속도로 이루어질 수 있다.In contrast, in the high-speed mode link startup, bits representing information necessary for link startup are expressed through the logic level of the signal transmitted through the lane, and even if the logic high interval is continuous, there is a logic low interval between the intervals. A non-return to zero (NRZ) method that does not need to exist is applied. Accordingly, the high-speed mode link start-up operation may be performed at a higher speed than the low-speed mode link start-up operation.
도 17은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 17을 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 16의 링크 스타트업 방법의 일 변형 예에 대응할 수 있고, 중복된 설명은 생략하기로 한다. 17 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 17 , the link startup method of the storage device according to the present embodiment may correspond to a modified example of the link startup method of FIG. 16 , and a redundant description will be omitted.
단계 S530에서, 스토리지 장치(100)는 라인-리셋 길이가 제2 기준 시간(T2)보다 긴지 판단한다. 예를 들어, 제2 기준 시간(T2)은 도 4의 라인-리셋 고속 링크업 검출 구간(TLINE-RESET-HS-LINKUP-DETECT)의 최소 값(예를 들어, 200 ㎲)에 대응할 수 있다. 판단 결과, 라인-리셋 길이가 제2 기준 시간(T2)보다 길면, 단계 S540에서, 스토리지 장치(100)는 라인-리셋 길이가 제1 기준 시간(T1)보다 긴지 판단한다. 본 실시예에 따르면, 라인-리셋 길이가 제1 기준 시간(T1)보다 짧더라도 제2 기준 시간(T2)보다 길지 않으면, 링크 스타트업 시퀀스를 수행하지 않을 수 있다.In operation S530 , the
도 18은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 18을 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 16의 링크 스타트업 방법의 일 변형 예에 대응할 수 있고, 중복된 설명은 생략하기로 한다.18 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 18 , the link start-up method of the storage device according to the present embodiment may correspond to a modified example of the link start-up method of FIG. 16 , and a duplicate description will be omitted.
단계 S510에서, 스토리지 장치(100)는 액티베이트 구간(TACTIVATE)의 길이가 제3 기준 시간(T3)보다 짧은지 판단한다. 예를 들어, 제3 기준 시간(T3)은 0.9 ms일 수 있다. 판단 결과, 액티베이트 구간(TACTIVATE)의 길이가 제3 기준 시간(T3)보다 짧으면, 단계 S520에서, 스토리지 장치(100)는 인터커넥트 레이어의 물리 계층 또는 링크 계층을 설정한다. 예를 들어, 장치 컨트롤러(120)는 고속 링크 스타트업 시퀀스를 수행하기 위하여, 물리 계층(111)을 미리 설정할 수 있다. 예를 들어, 장치 컨트롤러(120)는 고속 링크 스타트업 시퀀스를 수행하기 위하여, 인터커넥트부(110)의 링크 계층(115)을 미리 설정할 수 있다. 예를 들어, 스토리지 장치(100)는 고속 링크 스타트업 시퀀스를 수행하기 위하여, 물리 계층(111) 및 링크 계층(115)을 초기화할 수 있다. 한편, 액티베이트 구간(TACTIVATE)의 길이가 제3 기준 시간(T3)보다 짧지 않으면, 단계 S540을 바로 수행한다.In operation S510 , the
단계 S540에서, 스토리지 장치(100)는 라인-리셋 길이가 제1 기준 시간(T1)보다 긴지 판단한다. 판단 결과, 라인-리셋 길이가 제1 기준 시간(T1)보다 길지 않으면, 단계 S560에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 한편, 라인-리셋 길이가 제1 기준 시간(T1)보다 길면, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다. 이와 같이, 본 실시예에 따르면, 링크 스타트업 시퀀스를 수행하기 위한 동작 모드를 결정하기 위해, 액티베이트 구간(TACTIVATE)의 길이를 판단하고, 이어서, 라인-리셋 길이를 판단하는 2-스텝 판단 방식을 이용할 수 있다.In operation S540 , the
도 19는 본 개시의 일 실시예에 따른 호스트(200)와 스토리지 장치(100) 사이의 링크 스타트업 동작을 나타내는 흐름도이다. 도 19를 참조하면, 본 실시예에 따른 링크 스타트업 동작은 도 15의 링크 스타트업 동작의 일 변형 예에 대응할 수 있고, 중복된 설명은 생략하기로 한다. 단계 S400는 HIBERN8 탈출 단계에 대응할 수 있다. 단계 S400에서, 호스트(200)는 파워 세이빙 모드, 즉, 하이버네이트 상태(HIBERN8)의 탈출을 지시하는 신호(예를 들어, 액티베이트 신호)를 생성하고, 생성된 신호를 스토리지 장치(100)에 전송한다. 구체적으로, 호스트(200)는 라인(LINE)을 DIF-N 상태로 천이시키고 하이버네이트 상태(HIBERN8)를 탈출할 수 있다. 또한, 단계 S400에서, 스토리지 장치(100)는 하이버네이트 상태(HIBERN8)에서 탈출했음을 나타내는 정보를 호스트(200)에 전송할 수 있다. 단계 S410 내지 S470은 도 15를 참조하여 상술된 설명에 따라 수행될 수 있는바, 중복된 설명은 생략한다.19 is a flowchart illustrating a link startup operation between the
도 20은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다.20 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure.
도 1, 도 3 및 도 20을 함께 참조하면, 단계 S500에서, 스토리지 장치(100)는 하이버네이트 상태(HIBERN8)를 탈출한다. 예를 들어, 스토리지 장치(100)는 차동 라인 전압(DIF)이 DIF-Z 상태에서 DIF-N 상태로 천이하면, 액티베이트 구간(TACTIVATE)에 진입한 것으로 판단하고, 하이버네이트 상태(HIBERN8)를 탈출할 수 있다. 단계 S540에서, 스토리지 장치(100)는 라인-리셋 길이가 제1 기준 시간(T1)보다 긴지 판단한다. 판단 결과, 라인-리셋 길이가 제1 기준 시간(T1)보다 길지 않으면, 단계 S560에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 한편, 라인-리셋 길이가 제1 기준 시간(T1)보다 길면, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다.1, 3, and 20 together, in step S500, the
도 21은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 21을 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 11의 링크 스타트업 방법의 일 구현 예에 대응할 수 있고, 도 1의 스토리지 장치(100)에서 시계열적으로 수행되는 단계들을 포함할 수 있다. 21 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 21 , the link startup method of the storage device according to the present embodiment may correspond to an implementation example of the link startup method of FIG. 11 , and the steps performed in time series in the
단계 S620에서, 스토리지 장치(100)는 라인-리셋의 존재 여부를 판단한다. 구체적으로, 스토리지 장치(100)는 호스트(200)로부터 라인-리셋 신호(LINE-RESET)의 수신 여부를 판단한다. 일 실시예에서, 스토리지 장치(100)는 라인(LINE)이 포지티브 차동 라인 전압을 갖는 라인-리셋 구간의 유무를 판단할 수 있다. 일 실시예에서, 스토리지 장치(100)는 라인(LINE)이 네거티브 차동 라인 전압에서 포지티브 차동 라인 전압으로 천이하는지 여부를 판단할 수 있다. 예를 들어, 라인-리셋 검출기(도 6의 140a)는 시스템 클럭(SYS_CLK)을 이용하여 라인-리셋 신호(LINE-RESET)의 수신 여부를 검출할 수 있다. 예를 들어, 라인-리셋 검출기(도 8의 140b, 도 9의 140c)는 RC 필터를 이용하여 라인-리셋 신호(LINE-RESET)의 수신 여부를 검출할 수 있다.In step S620 , the
판단 결과, 라인-리셋 신호(LINE-RESET)가 존재하는 경우, 단계 S640에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 이때, 스토리지 장치(100)는 라인-리셋 동작을 생략할 수 있다. 한편, 라인-리셋 신호(LINE-RESET)가 존재하지 않는 경우, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다. As a result of the determination, if the line-reset signal LINE-RESET exists, in step S640 , the
도 11 내지 도 20을 참조하여 상술된 다양한 실시예들은 본 실시예에도 적용될 수 있다. 일부 실시예들에서, 단계 S620 단계 이후에, 스토리지 장치(100)는 고속 모드 링크 스타트업 동작 또는 저속 모드 링크 스타트업 동작을 수행하도록 인터커넥트부(110)의 물리 계층(111) 또는 링크 계층(115)을 설정할 수 있다. 또한, 일부 실시예들에서, 단계 S620 이전에, 스토리지 장치(100)는 라인(LINE)이 네거티브 차동 라인 전압을 갖는 액티베이트 구간을 기준 시간과 비교하고, 액티베이트 구간이 기준 시간보다 짧은 경우, 인터커넥트부(110)의 물리 계층(111) 또는 링크 계층(115)을 설정할 수 있다. 또한, 일부 실시예들에서, 단계 S620 이전에, 스토리지 장치(100)는 파워 세이빙 상태인 하이버네이트 상태(HIBERN8)를 탈출할 수 있다. The various embodiments described above with reference to FIGS. 11 to 20 may also be applied to this embodiment. In some embodiments, after step S620 , the
도 22는 본 개시의 일 실시예에 따른 호스트(200)와 스토리지 장치(100) 사이의 동작을 나타내는 흐름도이다.22 is a flowchart illustrating an operation between the
도 22를 참조하면, 단계 S710에서, 호스트(200)는 라인-리셋 신호(LINE-RESET)을 생성한다. 단계 S720에서, 호스트(200)는 포지티브 입력 신호(DIN_t) 및 네거티브 입력 신호(DIN_c)가 전송되는 차동 입력 신호 라인을 통해, 스토리지 장치(100)에 라인-리셋 신호(LINE-RESET)를 전송한다. 단계 S710 및 단계 S720은 고속 모드 스탠바이(HS_SB)에 대응할 수 있다.Referring to FIG. 22 , in step S710 , the
단계 S730에서, 호스트(200)는 고속 모드로 링크 스타트업 동작을 수행한다. 단계 S740에서, 스토리지 장치(100)는 고속 모드로 링크 스타트업 동작을 수행한다. 단계 S730과 단계 S740은 실질적으로 동시에 수행될 수 있다. 예를 들어, 단계 S730 및 단계 S740은 도 12의 단계 S250 및 단계 S260에 각각 대응할 수 있다. 단계 S750에서, 링크 스타트업 동작이 완료되면, 호스트(200)와 스토리지 장치(100)는 링크업 상태로 설정될 수 있고, 호스트(200)와 스토리지 장치(100)는 안정적으로 데이터를 송수신할 수 있다. 단계 S730 내지 단계 S750은 고속 모드(HS_MD)에서 수행될 수 있다.In step S730, the
도 11 내지 도 20을 참조하여 상술된 다양한 실시예들은 본 실시예에도 적용될 수 있다. 일부 실시예들에서, 단계 S820 전에, 스토리지 장치(100)는 고속 모드 링크 스타트업 동작을 수행하도록 인터커넥트부(110)를 설정할 수 있다. 또한, 일부 실시예들에서, 스토리지 장치(100)는 단계 S880 전에, 저속 모드 링크 스타트업 동작을 수행하도록 인터커넥트부(110)를 설정할 수 있다.The various embodiments described above with reference to FIGS. 11 to 20 may also be applied to this embodiment. In some embodiments, before step S820 , the
또한, 일부 실시예들에서, 단계 S820에서, 스토리지 장치(100)와 호스트(200) 사이에서, 송신 레인 및 수신 레인의 물리적 레인 번호들을 교환하는 제1 트리거 이벤트를 수행하고, 송신 레인의 정보 및 수신 레인의 정보를 교환하는 제2 트리거 이벤트를 수행하며, 송신 레인 및 수신 레인의 논리적 레인 정보를 교환하는 제3 트리거 이벤트를 수행할 수 있다. 또한, 일부 실시예들에서, 단계 S820에서, 제3 트리거 이벤트를 수행한 이후에, 스토리지 장치(100)와 호스트(200) 사이에서 성능 정보를 교환하고 인식하고, 전송된 초기 데이터 프레임이 정확히 수신되었음을 나타내는 컨트롤 프레임을 교환하고 인식할 수 있다.Further, in some embodiments, in step S820 , between the
도 23은 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 23을 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 11의 링크 스타트업 방법의 일 구현 예에 대응할 수 있고, 도 1의 스토리지 장치(100)에서 시계열적으로 수행되는 단계들을 포함할 수 있다. 23 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 23 , the link startup method of the storage device according to the present embodiment may correspond to an implementation example of the link startup method of FIG. 11 , and the steps performed in time series in the
단계 S820에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 단계 S840에서, 스토리지 장치(100)는 고속 링크업 완료 여부를 판단한다. 판단 결과, 고속 링크업이 완료되면, 단계 S860에서, 스토리지 장치(100)은 링크업 패스 여부를 판단한다. 판단 결과, 링크업이 패스된 경우, 링크 스타트업 방법은 종료된다. 한편, 링크업이 패스되지 않은 경우, 단계 S880에서, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다. In step S820 , the
초기 단계에서, 호스트(200)는 스토리지 장치(100)가 고속 모드를 지원하는지 여부를 알지 못하므로, 호스트(200)는 고속 모드 링크 스타트업 시퀀스를 우선적으로 수행할 수 있다. 고속 모드 링크 스타트업 시퀀스의 수행 결과 링크업이 패스된 경우, 호스트(200)는 스토리지 장치(100)가 고속 모드를 지원하는 장치인 것으로 판단할 수 있다. 한편, 고속 모드 링크 스타트업 시퀀스의 수행 결과 링크업이 패스되지 않은 경우, 호스트(200)는 스토리지 장치(100)가 고속 모드를 지원하지 않는 장치인 것으로 판단하고, 저속 모드 링크 스타트업 시퀀스를 수행할 수 있다.In the initial stage, since the
이와 같이, 본 실시예에 따르면, 스토리지 시스템(10)에 전원이 인가되면, 호스트(200) 및 스토리지 장치(100)는 우선 고속 모드 링크 스타트업 시퀀스를 수행할 수 있다. 이에 따라, 스토리지 장치(100)가 고속 모드를 지원하는 장치인 경우, 라인-리셋 존재 여부 또는 라인-리셋 길이 검출 등의 동작을 수행하지 않고 바로 고속 모드 링크 스타트업 시퀀스를 수행할 수 있으므로, 링크 스타트업 처리에 소요되는 시간을 더욱 감소시킬 수 있다.As described above, according to the present embodiment, when power is applied to the
도 24는 본 개시의 일 실시예에 따른 스토리지 장치의 링크 스타트업 방법을 나타내는 흐름도이다. 도 24를 참조하면, 본 실시예에 따른 스토리지 장치의 링크 스타트업 방법은 도 23의 링크 스타트업 방법의 일 구현 예에 대응할 수 있고, 도 1의 스토리지 장치(100)에서 시계열적으로 수행되는 단계들을 포함할 수 있다.24 is a flowchart illustrating a link startup method of a storage device according to an embodiment of the present disclosure. Referring to FIG. 24 , the link startup method of the storage device according to the present embodiment may correspond to an implementation example of the link startup method of FIG. 23 , and the steps performed in time series in the
단계 S820에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스를 수행한다. 단계 S840a에서, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스의 수행 시간(t)이 임계 시간(Tth)을 경과했는지 여부를 판단한다. 구체적으로, 스토리지 장치(100)는 고속 모드 링크 스타트업 시퀀스의 시작 시점부터 임계 시간(Tth)이 경과했는지 여부를 판단할 수 있다. 임계 시간(Tth)은 링크 타임아웃 값으로 정의될 수 있다. 예를 들어, 임계 시간(Tth)은 약 10 ms일 수 있다. In step S820 , the
수행 시간(t)이 임계 시간(Tth)을 경과한 경우, 단계 S840a에서, 스토리지 장치(100)는 호스트(200)로부터 성능 정보(예를 들어, PACP_CAP_ind)를 수신했는지 여부를 판단한다. 스토리지 장치(100)가 호스트(200)로부터 성능 정보를 수신한 경우, 링크업이 패스된 것으로 판단할 수 있다. 한편, 스토리지 장치(100)가 호스트(200)로부터 성능 정보를 수신하지 못한 경우, 링크업이 패스되지 않은 것으로 판단한다. 링크업이 패스되지 않은 경우, 단계 S880에서, 스토리지 장치(100)는 저속 모드 링크 스타트업 시퀀스를 수행한다. If the execution time t has passed the threshold time Tth, in step S840a , the
도 25는 본 발명의 일 실시예에 따른 UFS 시스템(1000)에 대해 설명하기 위한 도면이다. UFS 시스템(1000)은 JEDEC(Joint Electron Device Engineering Council)에서 발표하는 UFS 표준을 따르는 시스템으로서, UFS 호스트(1100), UFS 장치(1200) 및 UFS 인터페이스(1300)를 포함할 수 있다. 전술한 도 1 및 도 5의 스토리지 시스템(10, 10A)에 대한 설명은, 도 25에 대한 이하의 설명과 상충되지 않는 범위 내에서 도 25의 UFS 시스템(1000)에도 적용될 수 있다.25 is a diagram for explaining the
도 25를 참조하면, UFS 호스트(1100)와 UFS 장치(1200)는 UFS 인터페이스(1300)를 통해 상호 연결될 수 있다. 도 1의 호스트(200)가 애플리케이션 프로세서일 경우, UFS 호스트(1100)는 해당 애플리케이션 프로세서의 일부로서 구현될 수 있다. UFS 호스트 컨트롤러(1110)는 도 1의 호스트 컨트롤러(220)에 각각 대응될 수 있다. UFS 장치(1200)는 도 1의 스토리지 장치(100)에 대응될 수 있으며, UFS 장치 컨트롤러(1210) 및 비휘발성 메모리(1220)는 도 1의 장치 컨트롤러(120) 및 비휘발성 메모리(130)에 각각 대응될 수 있다.Referring to FIG. 25 , a
UFS 호스트(1100)는 UFS 호스트 컨트롤러(1110), 애플리케이션(1120), UFS 드라이버(1130), 호스트 메모리(1140) 및 UIC(UFS interconnect) 레이어(1150)를 포함할 수 있다. UFS 장치(1200)는 UFS 장치 컨트롤러(1210), 비휘발성 메모리(1220), 스토리지 인터페이스(1230), 장치 메모리(1240), UIC 레이어(1250) 및 레귤레이터(1260)를 포함할 수 있다. 비휘발성 메모리(1220)는 복수의 메모리 유닛(1221)으로 구성될 수 있으며, 이와 같은 메모리 유닛(1221)은 2D 구조 혹은 3D 구조의 V-NAND 플래시 메모리를 포함할 수 있으나, PRAM 및/또는 RRAM 등의 다른 종류의 비휘발성 메모리를 포함할 수도 있다. UFS 장치 컨트롤러(1210)와 비휘발성 메모리(1220)는 스토리지 인터페이스(1230)를 통해 서로 연결될 수 있다. 스토리지 인터페이스(1230)는 토글(Toggle) 혹은 온파이(ONFI)와 같은 표준 규약을 준수하도록 구현될 수 있다.The
애플리케이션(1120)은 UFS 장치(1200)의 기능을 이용하기 위해 UFS 장치(1200)와의 통신을 원하는 프로그램을 의미할 수 있다. 애플리케이션(1120)은 UFS 장치(1200)에 대한 입출력을 위해 입출력 요청(input-output request, IOR)을 UFS 드라이버(1130)로 전송할 수 있다. 입출력 요청(IOR)은 데이터의 독출(read) 요청, 저장(write) 요청 및/또는 소거(discard) 요청 등을 의미할 수 있으나, 반드시 이에 한정되는 것은 아니다.The
UFS 드라이버(1130)는 UFS-HCI(host controller interface)를 통해 UFS 호스트 컨트롤러(1110)를 관리할 수 있다. UFS 드라이버(1130)는 애플리케이션(1120)에 의해 생성된 입출력 요청을 UFS 표준에 의해 정의된 UFS 명령으로 변환하고, 변환된 UFS 명령을 UFS 호스트 컨트롤러(1110)로 전달할 수 있다. 하나의 입출력 요청은 복수의 UFS 명령으로 변환될 수 있다. UFS 명령은 기본적으로 SCSI 표준에 의해 정의된 명령일 수 있지만, UFS 표준 전용 명령일 수도 있다.The
UFS 호스트 컨트롤러(1110)는 UFS 드라이버(1130)에 의해 변환된 UFS 명령을 UIC 레이어(1150)와 UFS 인터페이스(1300)를 통해 UFS 장치(1200)의 UIC 레이어(1250)로 전송할 수 있다. 이 과정에서, UFS 호스트 컨트롤러(1110)의 UFS 호스트 레지스터(1111)는 명령 큐(command queue, CQ)로서의 역할을 수행할 수 있다. The
UFS 호스트(1100) 측의 UIC 레이어(1150)는 MIPI M-PHY(1151)와 MIPI UniPro(1152)를 포함할 수 있으며, UFS 장치(1200) 측의 UIC 레이어(1250) 또한 MIPI M-PHY(1251)와 MIPI UniPro(1252)을 포함할 수 있다. The
UFS 인터페이스(1300)는 기준 클럭(REF_CLK)을 전송하는 라인, UFS 장치(1200)에 대한 하드웨어 리셋 신호(RESET_n)를 전송하는 라인, 차동 입력 신호 쌍(DIN_t와 DIN_c)을 전송하는 한 쌍의 라인 및 차동 출력 신호 쌍(DOUT_t와 DOUT_c)을 전송하는 한 쌍의 라인을 포함할 수 있다.The
UFS 호스트(1100)로부터 UFS 장치(1200)로 제공되는 기준 클럭의 주파수 값은 19.2MHz, 26MHz, 38.4MHz 및 52MHz의 네 개의 값 중 하나일 수 있으나, 반드시 이에 한정되지는 않는다. UFS 호스트(1100)는 동작 중에도, 즉 UFS 호스트(1100)와 UFS 장치(1200) 사이에서 데이터 송수신이 수행되는 중에도 기준 클럭의 주파수 값을 변경할 수 있다. UFS 장치(1200)는 위상 동기 루프(phase-locked loop, PLL) 등을 이용하여, UFS 호스트(1100)로부터 제공받은 기준 클럭으로부터 다양한 주파수의 클럭을 생성할 수 있다. 또한, UFS 호스트(1100)는 기준 클럭의 주파수 값을 통해 UFS 호스트(1100)와 UFS 장치(1200) 간의 데이터 레이트(data rate)의 값을 설정할 수도 있다. 즉, 상기 데이터 레이트의 값은 기준 클럭의 주파수 값에 의존하여 결정될 수 있다.The frequency value of the reference clock provided from the
UFS 인터페이스(1300)는 복수의 레인들(multiple lanes)을 지원할 수 있으며, 각 레인은 차동(differential) 쌍으로 구현될 수 있다. 예컨대, UFS 인터페이스는 하나 이상의 수신 레인(receive lane)과 하나 이상의 송신 레인(transmit lane)을 포함할 수 있다. 도 25에서, 차동 입력 신호 쌍(DIN_T와 DIN_C)을 전송하는 한 쌍의 라인은 수신 레인을, 차동 출력 신호 쌍(DOUT_T와 DOUT_C)을 전송하는 한 쌍의 라인은 송신 레인을 각각 구성할 수 있다. 도 25에서는 하나의 송신 레인과 하나의 수신 레인을 도시하였지만, 송신 레인과 수신 레인의 수는 변경될 수 있다.The
수신 레인 및 송신 레인은 직렬 통신(serial communication) 방식으로 데이터를 전송할 수 있으며, 수신 레인과 송신 레인이 분리된 구조에 의해 UFS 호스트(1100)와 UFS 장치(1200) 간의 풀 듀플렉스(full-duplex) 방식의 통신이 가능하다. 즉, UFS 장치(1200)는 수신 레인을 통해 UFS 호스트(1100)로부터 데이터를 수신받는 동안에도, 송신 레인을 통해 UFS 호스트(1100)로 데이터를 송신할 수 있다. 또한, UFS 호스트(1100)로부터 UFS 장치(1200)로의 명령과 같은 제어 데이터와, UFS 호스트(1100)가 UFS 장치(1200)의 비휘발성 메모리(1220)에 저장하고자 하거나 비휘발성 메모리(1220)로부터 독출하고자 하는 사용자 데이터는 동일한 레인을 통해 전송될 수 있다. 이에 따라, UFS 호스트(1100)와 UFS 장치(1200) 간에는 한 쌍의 수신 레인과 한 쌍의 송신 레인 외에 데이터 전송을 위한 별도의 레인이 더 구비될 필요가 없다.The reception lane and the transmission lane may transmit data in a serial communication method, and a full-duplex between the
UFS 장치(1200)의 UFS 장치 컨트롤러(1210)는 UFS 장치(1200)의 동작을 전반적으로 제어할 수 있다. UFS 장치 컨트롤러(1210)는 논리적인 데이터 저장 단위인 LU(logical unit)(1211)를 통해 비휘발성 메모리(1220)를 관리할 수 있다. LU(1211)의 개수는 8개일 수 있으나, 이에 한정되는 것은 아니다. UFS 장치 컨트롤러(1210)는 플래시 변환 계층(flash translation layer, FTL)을 포함할 수 있으며, FTL의 어드레스 매핑(address mapping) 정보를 이용하여 UFS 호스트(1100)로부터 전달된 논리적인 데이터 주소, 예컨대 LBA(logical block address)를 물리적인 데이터 주소로, 예컨대 PBA(physical block address)로 변환할 수 있다. UFS 시스템(1000)에서 사용자 데이터(user data)의 저장을 위한 논리 블록(logical block)은 소정 범위의 크기를 가질 수 있다. 예컨대, 논리 블록의 최소 크기는 4Kbyte로 설정될 수 있다.The
UFS 호스트(1100)로부터의 명령이 UIC 레이어(1250)를 통해 UFS 장치(1200)로 입력되면, UFS 장치 컨트롤러(1210)는 입력된 명령에 따른 동작을 수행하고, 상기 동작이 완료되면 완료 응답을 UFS 호스트(1100)로 전송할 수 있다. When a command from the
일례로서, UFS 호스트(1100)가 UFS 장치(1200)에 사용자 데이터를 저장하고자 할 경우, UFS 호스트(1100)는 데이터 저장 명령을 UFS 장치(1200)로 전송할 수 있다. 사용자 데이터를 전송받을 준비가 되었다(ready-to-transfer)는 응답을 UFS 장치(1200)로부터 수신하면, UFS 호스트(1100)는 사용자 데이터를 UFS 장치(1200)로 전송할 수 있다. UFS 장치 컨트롤러(1210)는 전송받은 사용자 데이터를 장치 메모리(1240) 내에 임시로 저장하고, FTL의 어드레스 매핑 정보에 기초하여 장치 메모리(1240)에 임시로 저장된 사용자 데이터를 비휘발성 메모리(1220)의 선택된 위치에 저장할 수 있다.As an example, when the
또 다른 예로서, UFS 호스트(1100)가 UFS 장치(1200)에 저장된 사용자 데이터를 독출하고자 할 경우, UFS 호스트(1100)는 데이터 독출 명령을 UFS 장치(1200)로 전송할 수 있다. 명령을 수신한 UFS 장치 컨트롤러(1210)는 상기 데이터 독출 명령에 기초하여 비휘발성 메모리(1220)로부터 사용자 데이터를 독출하고, 독출된 사용자 데이터를 장치 메모리(1240) 내에 임시로 저장할 수 있다. 이러한 독출 과정에서, UFS 장치 컨트롤러(1210)는 내장된 ECC(error correction code) 엔진(미도시)을 이용하여, 독출된 사용자 데이터의 에러를 검출하고 정정할 수 있다. 보다 구체적으로, ECC 엔진은 비휘발성 메모리(1220)에 기입될 기입 데이터에 대하여 패리티 비트(parity bit)들을 생성할 수 있으며, 이와 같이 생성된 패리티 비트들은 기입 데이터와 함께 비휘발성 메모리(1220) 내에 저장될 수 있다. 비휘발성 메모리(1220)로부터의 데이터 독출 시, ECC 엔진은 독출 데이터와 함께 비휘발성 메모리(1220)로부터 독출되는 패리티 비트들을 이용하여 독출 데이터의 에러를 정정하고, 에러가 정정된 독출 데이터를 출력할 수 있다.As another example, when the
그리고, UFS 장치 컨트롤러(1210)는 장치 메모리(1240) 내에 임시로 저장된 사용자 데이터를 UFS 호스트(1100)로 전송할 수 있다. 아울러, UFS 장치 컨트롤러(1210)는 AES(advanced encryption standard) 엔진(미도시)을 더 포함할 수 있다. AES 엔진은, UFS 장치 컨트롤러(1210)로 입력되는 데이터에 대한 암호화(encryption) 동작과 복호화(decryption) 동작 중 적어도 하나를, 대칭 키 알고리즘(symmetric-key algorithm)을 이용하여 수행할 수 있다.In addition, the
UFS 호스트(1100)는 명령 큐로 기능할 수 있는 UFS 호스트 레지스터(1111)에 UFS 장치(1200)로 송신될 명령들을 순서에 따라 저장하고, 상기 순서대로 UFS 장치(1200)에 명령을 송신할 수 있다. 이 때, UFS 호스트(1100)는 이전에 송신된 명령이 아직 UFS 장치(1200)에 의해 처리 중인 경우에도, 즉 이전에 송신된 명령이 UFS 장치(1200)에 의해 처리가 완료되었다는 통지를 받기 전에도 명령 큐에 대기 중인 다음 명령을 UFS 장치(1200)로 송신할 수 있으며, 이에 따라 UFS 장치(1200) 역시 이전에 송신된 명령을 처리하는 중에도 다음 명령을 UFS 호스트(1100)로부터 수신할 수 있다. 이와 같은 명령 큐에 저장될 수 있는 명령의 최대 개수(queue depth)는 예컨대 32개일 수 있다. 또한, 명령 큐는 헤드 포인터(head point)와 테일 포인터(tail pointer)를 통해 큐에 저장된 명령 열의 시작과 끝을 각각 나타내는 원형 큐(circular queue) 타입으로 구현될 수 있다.The
복수의 메모리 유닛(1221) 각각은 메모리 셀 어레이(미도시)와 상기 메모리 셀 어레이의 작동을 제어하는 제어 회로(미도시)를 포함할 수 있다. 상기 메모리 셀 어레이는 2차원 메모리 셀 어레이 또는 3차원 메모리 셀 어레이를 포함할 수 있다. 메모리 셀 어레이는 복수의 메모리 셀을 포함하며, 각각의 메모리 셀은 1비트의 정보를 저장하는 셀(single level cell, SLC)일 수도 있지만, MLC(multi level cell), TLC(triple level cell), QLC(quadruple level cell)와 같이 2비트 이상의 정보를 저장하는 셀일 수도 있다. 3차원 메모리 셀 어레이는 적어도 하나의 메모리 셀이 다른 메모리 셀의 위에 위치하도록 수직으로 배향되는(vertically oriented) 수직 NAND 스트링을 포함할 수 있다.Each of the plurality of
UFS 장치(1200)에는 전원 전압으로서 VCC, VCCQ, VCCQ2 등이 입력될 수 있다. VCC는 UFS 장치(1200)를 위한 주 전원 전압으로서, 2.4~3.6V의 값을 가질 수 있다. VCCQ는 낮은 범위의 전압을 공급하기 위한 전원 전압으로서, 주로 UFS 장치 컨트롤러(1210)를 위한 것이며. 1.14~1.26V의 값을 가질 수 있다. VCCQ2는 VCC보다는 낮지만 VCCQ보다는 높은 범위의 전압을 공급하기 위한 전원 전압으로서, 주로 MIPI M-PHY(1251)와 같은 입출력 인터페이스를 위한 것이며, 1.7~1.95V의 값을 가질 수 있다. 상기 전원 전압들은 레귤레이터(1260)를 거쳐 UFS 장치(1200)의 각 구성 요소들을 위해 공급될 수 있다. 레귤레이터(1260)는 전술한 전원 전압들 중 서로 다른 것에 각각 연결되는 단위 레귤레이터의 집합으로 구현될 수 있다.VCC, VCCQ, VCCQ2, etc. may be input to the
도 26a 내지 25c는 UFS 카드의 폼 팩터에 대해 설명하기 위한 도면이다. 도 25를 참조하여 설명된 UFS 장치(1200)가 UFS 카드(2000) 형태로 구현된 경우, UFS 카드(2000)의 외형은 도 26a 내지 26c에 도시된 바를 따를 수 있다.26A to 25C are diagrams for explaining a form factor of a UFS card. When the
도 26a는 UFS 카드(2000)의 평면도(top view)를 예시적으로 보여주고 있다. 도 26a를 참조하면, UFS 카드(2000)는 전체적으로 상어(shark) 형상의 디자인을 따르고 있다는 것을 확인할 수 있다. 도 26a와 관련하여, UFS 카드(2000)는 예시적으로 아래의 표 1에 기재된 바와 같은 치수(dimension) 값을 가질 수 있다.26A exemplarily shows a top view of the
도 26b는 UFS 카드(2000)의 측면도(side view)를 예시적으로 보여주고 있다. 도 26b와 관련하여, UFS 카드(2000)는 예시적으로 아래의 표 2에 기재된 바와 같은 치수(dimension) 값을 가질 수 있다. 26B exemplarily shows a side view of the
도 26c는 UFS 카드(2000)의 저면도(bottom view)를 예시적으로 보여주고 있다. 도 26c를 참조하면, UFS 카드(2000)의 저면에는 UFS 슬롯과의 전기적 접촉을 위한 복수 개의 핀(pin)이 형성될 수 있으며, 각 핀의 기능에 대해서는 후술한다. UFS 카드(2000)의 상면과 저면 간의 대칭성에 의거하여, 도 26a 및 표 1을 참조하여 설명된 치수에 관한 정보 중 일부(예컨대, T1 내지 T5 및 T9)는 도 26c에 도시된 바와 같은 UFS 카드(2000)의 저면도에도 적용될 수 있다.UFS 카드(2000)의 저면에는 UFS 호스트와의 전기적 연결을 위해 복수의 핀이형성될 수 있으며, 도 26c에 의하면 핀의 개수는 총 12개일 수 있다. 각 핀은 직사각형 형상을 가질 수 있으며, 핀에 대응되는 신호명(signal name)은 도 26c에 표시된 바와 같다. 각 핀에 대한 개략적인 정보에 대해서는 아래의 표 3을 참조할 수 있다.26C exemplarily shows a bottom view of the
도 27은 본 개시의 일 실시예에 따른 메모리 시스템(3000)을 나타내는 블록도이다. 도 27을 참조하면, 메모리 시스템(3000)은 메모리 장치(3200) 및 메모리 컨트롤러(3100)를 포함할 수 있다. 메모리 장치(3200)는 복수의 채널들 중 하나를 기반으로 메모리 컨트롤러(3100)와 통신하는 비휘발성 메모리 장치들 중 하나에 대응할 수 있다. 예를 들어, 메모리 장치(3200)는 도 1의 비휘발성 메모리(130)에 대응할 수 있고, 메모리 컨트롤러(3100)는 도 1의 장치 컨트롤러(120)에 대응할 수 있다.27 is a block diagram illustrating a
메모리 장치(3200)는 제1 내지 제8 핀들(P11~P18), 메모리 인터페이스 회로(3210), 제어 로직 회로(3220), 및 메모리 셀 어레이(3230)를 포함할 수 있다. 메모리 인터페이스 회로(3210)는 제1 핀(P11)을 통해 메모리 컨트롤러(3100)로부터 칩 인에이블 신호(nCE)를 수신할 수 있다. 메모리 인터페이스 회로(3210)는 칩 인에이블 신호(nCE)에 따라 제2 내지 제8 핀들(P12~P18)을 통해 메모리 컨트롤러(3100)와 신호들을 송수신할 수 있다. 예를 들어, 칩 인에이블 신호(nCE)가 인에이블 상태(예를 들어, 로우 레벨)인 경우, 메모리 인터페이스 회로(3310)는 제2 내지 제8 핀들(P12~P18)을 통해 메모리 컨트롤러(3100)와 신호들을 송수신할 수 있다. The
메모리 인터페이스 회로(3210)는 제2 내지 제4 핀들(P12~P14)을 통해 메모리 컨트롤러(3100)로부터 커맨드 래치 인에이블 신호(CLE), 어드레스 래치 인에이블 신호(ALE), 및 쓰기 인에이블 신호(nWE)를 수신할 수 있다. 메모리 인터페이스 회로(3210)는 제7 핀(P17)을 통해 메모리 컨트롤러(3100)로부터 데이터 신호(DQ)를 수신하거나, 메모리 컨트롤러(3100)로 데이터 신호(DQ)를 전송할 수 있다. 데이터 신호(DQ)를 통해 커맨드(CMD), 어드레스(ADDR), 및 데이터(DATA)가 전달될 수 있다. 예를 들어, 데이터 신호(DQ)는 복수의 데이터 신호 라인들을 통해 전달될 수 있다. 이 경우, 제7 핀(P17)은 복수의 데이터 신호들에 대응하는 복수개의 핀들을 포함할 수 있다.The
메모리 인터페이스 회로(3210)는 쓰기 인에이블 신호(nWE)의 토글 타이밍들에 기초하여 커맨드 래치 인에이블 신호(CLE)의 인에이블 구간(예를 들어, 하이 레벨 상태)에서 수신되는 데이터 신호(DQ)로부터 커맨드(CMD)를 획득할 수 있다. 메모리 인터페이스 회로(3210)는 쓰기 인에이블 신호(nWE)의 토글 타이밍들에 기초하여 어드레스 래치 인에이블 신호(ALE)의 인에이블 구간(예를 들어, 하이 레벨 상태)에서 수신되는 데이터 신호(DQ)로부터 어드레스(ADDR)를 획득할 수 있다.The
예시적인 실시 예에서, 쓰기 인에이블 신호(nWE)는 고정된(static) 상태(예를 들어, 하이(high) 레벨 또는 로우(low) 레벨)를 유지하다가 하이 레벨과 로우 레벨 사이에서 토글할 수 있다. 예를 들어, 쓰기 인에이블 신호(nWE)는 커맨드(CMD) 또는 어드레스(ADDR)가 전송되는 구간에서 토글할 수 있다. 이에 따라, 메모리 인터페이스 회로(3210)는 쓰기 인에이블 신호(nWE)의 토글 타이밍들에 기초하여 커맨드(CMD) 또는 어드레스(ADDR)를 획득할 수 있다.In an exemplary embodiment, the write enable signal nWE may be toggled between a high level and a low level while maintaining a static state (eg, a high level or a low level). have. For example, the write enable signal nWE may be toggled in a period in which the command CMD or the address ADDR is transmitted. Accordingly, the
메모리 인터페이스 회로(3210)는 제5 핀(P15)을 통해 메모리 컨트롤러(3100)로부터 읽기 인에이블 신호(nRE)를 수신할 수 있다. 메모리 인터페이스 회로(3210)는 제6 핀(P16)을 통해 메모리 컨트롤러(3100)로부터 데이터 스트로브 신호(DQS)를 수신하거나, 메모리 컨트롤러(3100)로 데이터 스트로브 신호(DQS)를 전송할 수 있다.The
메모리 장치(3200)의 데이터(DATA) 출력 동작에서, 메모리 인터페이스 회로(3210)는 데이터(DATA)를 출력하기 전에 제5 핀(P15)을 통해 토글하는 읽기 인에이블 신호(nRE)를 수신할 수 있다. 메모리 인터페이스 회로(3210)는 읽기 인에이블 신호(nRE)의 토글링에 기초하여 토글하는 데이터 스트로브 신호(DQS)를 생성할 수 있다. 예를 들어, 메모리 인터페이스 회로(3210)는 읽기 인에이블 신호(nRE)의 토글링 시작 시간을 기준으로 미리 정해진 딜레이(예를 들어, tDQSRE) 이후에 토글하기 시작하는 데이터 스트로브 신호(DQS)를 생성할 수 있다. 메모리 인터페이스 회로(310)는 데이터 스트로브 신호(DQS)의 토글 타이밍에 기초하여 데이터(DATA)를 포함하는 데이터 신호(DQ)를 전송할 수 있다. 이에 따라, 데이터(DATA)는 데이터 스트로브 신호(DQS)의 토글 타이밍에 정렬되어 메모리 컨트롤러(3100)로 전송될 수 있다.In the data output operation of the
메모리 장치(3200)의 데이터(DATA) 입력 동작에서, 메모리 컨트롤러(3100)로부터 데이터(DATA)를 포함하는 데이터 신호(DQ)이 수신되는 경우, 메모리 인터페이스 회로(3210)는 메모리 컨트롤러(3100)로부터 데이터(DATA)와 함께 토글하는 데이터 스트로브 신호(DQS)를 수신할 수 있다. 메모리 인터페이스 회로(3210)는 데이터 스트로브 신호(DQS)의 토글 타이밍에 기초하여 데이터 신호(DQ)로부터 데이터(DATA)를 획득할 수 있다. 예를 들어, 메모리 인터페이스 회로(3210)는 데이터 스트로브 신호(DQS)의 상승 에지 및 하강 에지에서 데이터 신호(DQ)를 샘플링함으로써 데이터(DATA)를 획득할 수 있다.In the data input operation of the
메모리 인터페이스 회로(3210)는 제8 핀(P18)을 통해 레디/비지 출력 신호(nR/B)를 메모리 컨트롤러(3100)로 전송할 수 있다. 메모리 인터페이스 회로(3210)는 레디/비지 출력 신호(nR/B)를 통해 메모리 장치(3200)의 상태 정보를 메모리 컨트롤러(3100)로 전송할 수 있다. 메모리 장치(3200)가 비지 상태인 경우(즉, 메모리 장치(3200) 내부 동작들이 수행 중인 경우), 메모리 인터페이스 회로(3210)는 비지 상태를 나타내는 레디/비지 출력 신호(nR/B)를 메모리 컨트롤러(3100)로 전송할 수 있다. 메모리 장치(3200)가 레디 상태인 경우(즉, 메모리 장치(3200) 내부 동작들이 수행되지 않거나 완료된 경우), 메모리 인터페이스 회로(3210)는 레디 상태를 나타내는 레디/비지 출력 신호(nR/B)를 메모리 컨트롤러(3100)로 전송할 수 있다. 예를 들어, 메모리 장치(3200)가 페이지 독출 명령에 응답하여 메모리 셀 어레이(3230)로부터 데이터(DATA)를 독출하는 동안, 메모리 인터페이스 회로(3210)는 비지 상태(예를 들어, 로우 레벨)를 나타내는 레디/비지 출력 신호(nR/B)를 메모리 컨트롤러(3100)로 전송할 수 있다. 예를 들어, 메모리 장치(3200)가 프로그램 명령에 응답하여 메모리 셀 어레이(3230)로 데이터(DATA)를 프로그램하는 동안, 메모리 인터페이스 회로(3210)는 비지 상태를 나타내는 레디/비지 출력 신호(nR/B)를 메모리 컨트롤러(3100)로 전송할 수 있다.The
제어 로직 회로(3220)는 메모리 장치(3200)의 각종 동작을 전반적으로 제어할 수 있다. 제어 로직 회로(3220)는 메모리 인터페이스 회로(3210)로부터 획득된 커맨드/어드레스(CMD/ADDR)를 수신할 수 있다. 제어 로직 회로(3220)는 수신된 커맨드/어드레스(CMD/ADDR)에 따라 메모리 장치(3200)의 다른 구성 요소들을 제어하기 위한 제어 신호들을 생성할 수 있다. 예를 들어, 제어 로직 회로(3220)는 메모리 셀 어레이(3230)에 데이터(DATA)를 프로그램하거나, 또는 메모리 셀 어레이(3230)로부터 데이터(DATA)를 독출하기 위한 각종 제어 신호들을 생성할 수 있다.The
메모리 셀 어레이(3230)는 제어 로직 회로(3220)의 제어에 따라 메모리 인터페이스 회로(3210)로부터 획득된 데이터(DATA)를 저장할 수 있다. 메모리 셀 어레이(3230)는 제어 로직 회로(3220)의 제어에 따라 저장된 데이터(DATA)를 메모리 인터페이스 회로(3210)로 출력할 수 있다.The
메모리 셀 어레이(3230)는 복수의 메모리 셀들을 포함할 수 있다. 예를 들어, 복수의 메모리 셀들은 플래시 메모리 셀들일 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 메모리 셀들은 RRAM(Resistive Random Access Memory) 셀, FRAM(Ferroelectric Random Access Memory) 셀, PRAM(Phase Change Random Access Memory) 셀, TRAM(Thyristor Random Access Memory) 셀, MRAM(Magnetic Random Access Memory) 셀들일 수 있다. 이하에서는, 메모리 셀들이 낸드(NAND) 플래시 메모리 셀들인 실시 예를 중심으로 본 발명의 실시 예들이 설명될 것이다.The
메모리 컨트롤러(3100)는 제1 내지 제8 핀들(P21~P28), 및 컨트롤러 인터페이스 회로(3110)를 포함할 수 있다. 제1 내지 제8 핀들(P21~P28)은 메모리 장치(3200)의 제1 내지 제8 핀들(P11~P18)에 대응할 수 있다. 컨트롤러 인터페이스 회로(3110)는 제1 핀(P21)을 통해 메모리 장치(3200)로 칩 인에이블 신호(nCE)를 전송할 수 있다. 컨트롤러 인터페이스 회로(3110)는 칩 인에이블 신호(nCE)를 통해 선택한 메모리 장치(3200)와 제2 내지 제8 핀들(P22~P28)을 통해 신호들을 송수신할 수 있다.The
컨트롤러 인터페이스 회로(3110)는 제2 내지 제4 핀들(P22~P24)을 통해 커맨드 래치 인에이블 신호(CLE), 어드레스 래치 인에이블 신호(ALE), 및 쓰기 인에이블 신호(nWE)를 메모리 장치(3200)로 전송할 수 있다. 컨트롤러 인터페이스 회로(3110)는 제7 핀(P27)을 통해 메모리 장치(3200)로 데이터 신호(DQ)를 전송하거나, 메모리 장치(3200)로부터 데이터 신호(DQ)를 수신할 수 있다.The
컨트롤러 인터페이스 회로(3110)는 토글하는 쓰기 인에이블 신호(nWE)와 함께 커맨드(CMD) 또는 어드레스(ADDR)를 포함하는 데이터 신호(DQ)를 메모리 장치(3200)로 전송할 수 있다. 컨트롤러 인터페이스 회로(3110)는 인에이블 상태를 가지는 커맨드 래치 인에이블 신호(CLE)를 전송함에 따라 커맨드(CMD)를 포함하는 데이터 신호(DQ)를 메모리 장치(3200)로 전송하고, 인에이블 상태를 가지는 어드레스 래치 인에이블 신호(ALE)를 전송함에 따라 어드레스(ADDR)를 포함하는 데이터 신호(DQ)를 메모리 장치(3200)로 전송할 수 있다.The
컨트롤러 인터페이스 회로(3110)는 제5 핀(P25)을 통해 메모리 장치(3200)로 읽기 인에이블 신호(nRE)를 전송할 수 있다. 컨트롤러 인터페이스 회로(3110)는 제6 핀(P26)을 통해 메모리 장치(3200)로부터 데이터 스트로브 신호(DQS)를 수신하거나, 메모리 장치(3200)로 데이터 스트로브 신호(DQS)를 전송할 수 있다.The
메모리 장치(3200)의 데이터(DATA) 출력 동작에서, 컨트롤러 인터페이스 회로(3110)는 토글하는 읽기 인에이블 신호(nRE)를 생성하고, 읽기 인에이블 신호(nRE)를 메모리 장치(3200)로 전송할 수 있다. 예를 들어, 컨트롤러 인터페이스 회로(3110)는 데이터(DATA)가 출력되기 전에 고정된 상태(예를 들어, 하이 레벨 또는 로우 레벨)에서 토글 상태로 변경되는 읽기 인에이블 신호(nRE)를 생성할 수 있다. 이에 따라, 메모리 장치(3200)에서 읽기 인에이블 신호(nRE)에 기초하여 토글하는 데이터 스트로브 신호(DQS)가 생성될 수 있다. 컨트롤러 인터페이스 회로(3110)는 메모리 장치(3200)로부터 토글하는 데이터 스트로브 신호(DQS)와 함께 데이터(DATA)를 포함하는 데이터 신호(DQ)를 수신할 수 있다. 컨트롤러 인터페이스 회로(3110)는 데이터 스트로브 신호(DQS)의 토글 타이밍에 기초하여 데이터 신호(DQ)로부터 데이터(DATA)를 획득할 수 있다.In the data output operation of the
메모리 장치(3200)의 데이터(DATA) 입력 동작에서, 컨트롤러 인터페이스 회로(3110)는 토글하는 데이터 스트로브 신호(DQS)를 생성할 수 있다. 예를 들어, 컨트롤러 인터페이스 회로(3110)는 데이터(DATA)를 전송하기 전에 고정된 상태(예를 들어, 하이 레벨 또는 로우 레벨)에서 토글 상태로 변경되는 데이터 스트로브 신호(DQS)를 생성할 수 있다. 컨트롤러 인터페이스 회로(3110)는 데이터 스트로브 신호(DQS)의 토글 타이밍들에 기초하여 데이터(DATA)를 포함하는 데이터 신호(DQ)를 메모리 장치(3200)로 전송할 수 있다.In a data input operation of the
컨트롤러 인터페이스 회로(3110)는 제8 핀(P28)을 통해 메모리 장치(3200)로부터 레디/비지 출력 신호(nR/B)를 수신할 수 있다. 컨트롤러 인터페이스 회로(3110)는 레디/비지 출력 신호(nR/B)에 기초하여 메모리 장치(3200)의 상태 정보를 판별할 수 있다.The
도 28은 본 발명의 일 실시예에 따른 UFS 장치에 적용될 수 있는 3D VNAND 구조에 대해 설명하기 위한 도면이다. UFS 장치의 스토리지 모듈이 3D VNAND(Vertical NAND) 타입의 플래시 메모리로 구현될 경우, 스토리지 모듈을 구성하는 복수의 메모리 블록 각각은 도 28에 도시된 바와 같은 등가 회로로 표현될 수 있다. 도 28에 도시된 메모리 블록(BLKi)은 기판 상에 삼차원 구조로 형성되는 삼차원 메모리 블록을 나타낸다. 예를 들어, 메모리 블록(BLKi)에 포함되는 복수의 메모리 낸드 스트링들은 상기 기판과 수직한 방향으로 형성될 수 있다.28 is a diagram for explaining a 3D VNAND structure applicable to a UFS device according to an embodiment of the present invention. When the storage module of the UFS device is implemented as a 3D VNAND (Vertical NAND) type flash memory, each of a plurality of memory blocks constituting the storage module may be represented by an equivalent circuit as shown in FIG. 28 . The memory block BLKi illustrated in FIG. 28 represents a three-dimensional memory block formed on a substrate in a three-dimensional structure. For example, a plurality of memory NAND strings included in the memory block BLKi may be formed in a direction perpendicular to the substrate.
도 28을 참조하면, 메모리 블록(BLKi)은 비트 라인들(BL1, BL2, BL3)과 공통 소스 라인(CSL) 사이에 연결되는 복수의 메모리 낸드 스트링들(NS11~NS33)을 포함할 수 있다. 복수의 메모리 낸드 스트링들(NS11~NS33) 각각은 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(MC1, MC2, ..., MC8) 및 접지 선택 트랜지스터(GST)를 포함할 수 있다. 도 28에는 복수의 메모리 낸드 스트링들(NS11~NS33) 각각이 8개의 메모리 셀들(MC1, MC2, ..., MC8)을 포함하는 것으로 도시되어 있으나, 반드시 이에 한정되는 것은 아니다.Referring to FIG. 28 , the memory block BLKi may include a plurality of memory NAND strings NS11 to NS33 connected between the bit lines BL1 , BL2 , and BL3 and the common source line CSL. Each of the plurality of memory NAND strings NS11 to NS33 may include a string select transistor SST, a plurality of memory cells MC1 , MC2 , ..., MC8 , and a ground select transistor GST. 28 , each of the plurality of memory NAND strings NS11 to NS33 includes eight memory cells MC1 , MC2 , ..., MC8 , but is not limited thereto.
스트링 선택 트랜지스터(SST)는 상응하는 스트링 선택 라인(SSL1, SSL2, SSL3)에 연결될 수 있다. 복수의 메모리 셀들(MC1, MC2, ..., MC8)은 각각 상응하는 게이트 라인(GTL1, GTL2, ..., GTL8)에 연결될 수 있다. 게이트 라인(GTL1, GTL2, ..., GTL8)은 워드 라인들에 해당할 수 있으며, 게이트 라인(GTL1, GTL2, ..., GTL8)의 일부는 더미 워드 라인에 해당할 수 있다. 접지 선택 트랜지스터(GST)는 상응하는 접지 선택 라인(GSL1, GSL2, GSL3)에 연결될 수 있다. 스트링 선택 트랜지스터(SST)는 상응하는 비트 라인(BL1, BL2, BL3)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 연결될 수 있다. The string select transistor SST may be connected to the corresponding string select lines SSL1 , SSL2 , and SSL3 . The plurality of memory cells MC1 , MC2 , ..., MC8 may be respectively connected to corresponding gate lines GTL1 , GTL2 , ..., GTL8 . The gate lines GTL1, GTL2, ..., GTL8 may correspond to word lines, and some of the gate lines GTL1, GTL2, ..., GTL8 may correspond to dummy word lines. The ground select transistor GST may be connected to the corresponding ground select lines GSL1 , GSL2 , and GSL3 . The string select transistor SST may be connected to the corresponding bit lines BL1 , BL2 , and BL3 , and the ground select transistor GST may be connected to the common source line CSL.
동일 높이의 워드 라인(예를 들면, WL1)은 공통으로 연결되고, 접지 선택 라인(GSL1, GSL2, GSL3) 및 스트링 선택 라인(SSL1, SSL2, SSL3)은 각각 분리될 수 있다. 도 28에는 메모리 블록(BLK)이 여덟 개의 게이트 라인(GTL1, GTL2, ..., GTL8) 및 세 개의 비트 라인들(BL1, BL2, BL3)에 연결되는 것으로 도시되어 있으나, 반드시 이에 한정되는 것은 아니다.Word lines of the same height (eg, WL1 ) may be commonly connected, and the ground selection lines GSL1 , GSL2 , and GSL3 and the string selection lines SSL1 , SSL2 , and SSL3 may be separated from each other. 28 , the memory block BLK is illustrated as being connected to eight gate lines GTL1, GTL2, ..., GTL8 and three bit lines BL1, BL2, BL3, but is not necessarily limited thereto. no.
도 29는 본 발명의 일 실시예에 따른 UFS 장치에 적용될 수 있는 B-VNAND 구조에 대해 설명하기 위한 도면이다. UFS 장치에 포함되는 비휘발성 메모리가 B-VNAND(Bonding Vertical NAND) 타입의 플래시 메모리로 구현될 경우, 비휘발성 메모리는 도 29에 도시된 구조를 가질 수 있다.29 is a diagram for explaining a B-VNAND structure applicable to a UFS device according to an embodiment of the present invention. When the nonvolatile memory included in the UFS device is implemented as a B-VNAND (Bonding Vertical NAND) type flash memory, the nonvolatile memory may have the structure shown in FIG. 29 .
도 29를 참조하면, 메모리 장치(4000)는 C2C(chip to chip) 구조일 수 있다. C2C 구조는 제1 웨이퍼 상에 셀 영역(CELL)을 포함하는 상부 칩을 제작하고, 제1 웨이퍼와 다른 제2 웨이퍼 상에 주변 회로 영역(PERI)을 포함하는 하부 칩을 제작한 후, 상기 상부 칩과 상기 하부 칩을 본딩(bonding) 방식에 의해 서로 연결하는 것을 의미할 수 있다. 일례로, 상기 본딩 방식은 상부 칩의 최상부 메탈층에 형성된 본딩 메탈과 하부 칩의 최상부 메탈층에 형성된 본딩 메탈을 서로 전기적으로 연결하는 방식을 의미할 수 있다. 예컨대, 상기 본딩 메탈이 구리(Cu)로 형성된 경우, 상기 본딩 방식은 Cu-Cu 본딩 방식일 수 있으며, 상기 본딩 메탈은 알루미늄 혹은 텅스텐으로도 형성될 수 있다.Referring to FIG. 29 , the
메모리 장치(4000)의 주변 회로 영역(PERI)과 셀 영역(CELL) 각각은 외부 패드 본딩 영역(PA), 워드 라인 본딩 영역(WLBA), 및 비트 라인 본딩 영역(BLBA)을 포함할 수 있다.Each of the peripheral circuit area PERI and the cell area CELL of the
주변 회로 영역(PERI)은 제1 기판(4110), 층간 절연층(4115), 제1 기판(4110)에 형성되는 복수의 회로 소자들(4120a, 4120b, 4120c), 복수의 회로 소자들(4120a, 4120b, 4120c) 각각과 연결되는 제1 메탈층(4130a, 4130b, 4130c), 제1 메탈층(4130a, 4130b, 4130c) 상에 형성되는 제2 메탈층(4140a, 4140b, 4140c)을 포함할 수 있다. 일 실시예에서, 제1 메탈층(4130a, 4130b, 4130c)은 상대적으로 저항이 높은 텅스텐으로 형성될 수 있고, 제2 메탈층(4140a, 4140b, 4140c)은 상대적으로 저항이 낮은 구리로 형성될 수 있다.The peripheral circuit region PERI includes a
본 명세서에서는 제1 메탈층(4130a, 4130b, 4130c)과 제2 메탈층(4140a, 4140b, 4140c)만 도시 되고 설명되나, 이에 한정되는 것은 아니고, 제2 메탈층(4140a, 4140b, 4140c) 상에 적어도 하나 이상의 메탈층이 더 형성될 수도 있다. 제2 메탈층(4140a, 4140b, 4140c)의 상부에 형성되는 하나 이상의 메탈층 중 적어도 일부는, 제2 메탈층(4140a, 4140b, 4140c)을 형성하는 구리보다 더 낮은 저항을 갖는 알루미늄 등으로 형성될 수 있다. In this specification, only the
층간 절연층(4115)은 복수의 회로 소자들(4120a, 4120b, 4120c), 제1 메탈층(4130a, 4130b, 4130c), 및 제2 메탈층(4140a, 4140b, 4140c)을 커버하도록 제1 기판(4110) 상에 배치되며, 실리콘 산화물, 실리콘 질화물 등과 같은 절연 물질을 포함할 수 있다.The interlayer insulating
워드 라인 본딩 영역(WLBA)의 제2 메탈층(4140b) 상에 하부 본딩 메탈(4171b, 4172b)이 형성될 수 있다. 워드 라인 본딩 영역(WLBA)에서, 주변 회로 영역(PERI)의 하부 본딩 메탈(4171b, 4172b)은 셀 영역(CELL)의 상부 본딩 메탈(4271b, 4272b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있으며, 하부 본딩 메탈(4171b, 4172b)과 상부 본딩 메탈(4271b, 4272b)은 알루미늄, 구리, 혹은 텅스텐 등으로 형성될 수 있다.
셀 영역(CELL)은 적어도 하나의 메모리 블록을 제공할 수 있다. 셀 영역(CELL)은 제2 기판(4210)과 공통 소스 라인(4220)을 포함할 수 있다. 제2 기판(4210) 상에는, 제2 기판(4210)의 상면에 수직하는 방향(Z축 방향)을 따라 복수의 워드 라인들(4231-4238; 4230)이 적층될 수 있다. 워드 라인들(4230)의 상부 및 하부 각각에는 스트링 선택 라인들과 접지 선택 라인이 배치될 수 있으며, 스트링 선택 라인들과 접지 선택 라인 사이에 복수의 워드 라인들(4230)이 배치될 수 있다.The cell region CELL may provide at least one memory block. The cell region CELL may include a
비트 라인 본딩 영역(BLBA)에서, 채널 구조체(CH)는 제2 기판(4210)의 상면에 수직하는 방향으로 연장되어 워드 라인들(4230), 스트링 선택 라인들, 및 접지 선택 라인을 관통할 수 있다. 채널 구조체(CH)는 데이터 저장층, 채널층, 및 매립 절연층 등을 포함할 수 있으며, 채널층은 제1 메탈층(4250c) 및 제2 메탈층(4260c)과 전기적으로 연결될 수 있다. 예컨대, 제1 메탈층(4250c)은 비트 라인 컨택일 수 있고, 제2 메탈층(4260c)은 비트 라인일 수 있다. 일 실시예에서, 비트 라인(4260c)은 제2 기판(4210)의 상면에 평행한 제1 방향(Y축 방향)을 따라 연장될 수 있다. In the bit line bonding area BLBA, the channel structure CH may extend in a direction perpendicular to the top surface of the
도 29에 도시한 일 실시예에서, 채널 구조체(CH)와 비트 라인(4260c) 등이 배치되는 영역이 비트 라인 본딩 영역(BLBA)으로 정의될 수 있다. 비트 라인(4260c)은 비트 라인 본딩 영역(BLBA)에서 주변 회로 영역(PERI)에서 페이지 버퍼(4293)를 제공하는 회로 소자들(4120c)과 전기적으로 연결될 수 있다. 일례로, 비트 라인(4260c)은 주변 회로 영역(PERI)에서 상부 본딩 메탈(4271c, 4272c)과 연결되며, 상부 본딩 메탈(4271c, 4272c)은 페이지 버퍼(4293)의 회로 소자들(4120c)에 연결되는 하부 본딩 메탈(4171c, 4172c)과 연결될 수 있다.In the exemplary embodiment illustrated in FIG. 29 , a region in which the channel structure CH and the
워드 라인 본딩 영역(WLBA)에서, 워드 라인들(4230)은 제2 기판(4210)의 상면에 평행한 제2 방향(X축 방향)을 따라 연장될 수 있으며, 복수의 셀 컨택 플러그들(4241-4247; 4240)와 연결될 수 있다. 워드 라인들(4230)과 셀 컨택 플러그들(4240)은, 제2 방향을 따라 워드 라인들(4230) 중 적어도 일부가 서로 다른 길이로 연장되어 제공하는 패드들에서 서로 연결될 수 있다. 워드 라인들(4230)에 연결되는 셀 컨택 플러그들(4240)의 상부에는 제1 메탈층(4250b)과 제2 메탈층(4260b)이 차례로 연결될 수 있다. 셀 컨택 플러그들(4240)은 워드 라인 본딩 영역(WLBA)에서 셀 영역(CELL)의 상부 본딩 메탈(4271b, 4272b)과 주변 회로 영역(PERI)의 하부 본딩 메탈(4171b, 4172b)을 통해 주변 회로 영역(PERI)과 연결될 수 있다. In the word line bonding area WLBA, the
셀 컨택 플러그들(4240)은 주변 회로 영역(PERI)에서 로우 디코더(4294)를 제공하는 회로 소자들(4120b)과 전기적으로 연결될 수 있다. 일 실시예에서, 로우 디코더(4294)를 제공하는 회로 소자들(4120b)의 동작 전압은, 페이지 버퍼(4293)를 제공하는 회로 소자들(4120c)의 동작 전압과 다를 수 있다. 일례로, 페이지 버퍼(4293)를 제공하는 회로 소자들(4120c)의 동작 전압이 로우 디코더(4294)를 제공하는 회로 소자들(4120b)의 동작 전압보다 클 수 있다.The cell contact plugs 4240 may be electrically connected to the
외부 패드 본딩 영역(PA)에는 공통 소스 라인 컨택 플러그(4280)가 배치될 수 있다. 공통 소스 라인 컨택 플러그(4280)는 금속, 금속 화합물, 또는 폴리실리콘 등의 도전성 물질로 형성되며, 공통 소스 라인(4220)과 전기적으로 연결될 수 있다. 공통 소스 라인 컨택 플러그(4280) 상부에는 제1 메탈층(4250a)과 제2 메탈층(4260a)이 차례로 적층될 수 있다. 일례로, 공통 소스 라인 컨택 플러그(4280), 제1 메탈층(4250a), 및 제2 메탈층(4260a)이 배치되는 영역은 외부 패드 본딩 영역(PA)으로 정의될 수 있다.A common source
한편 외부 패드 본딩 영역(PA)에는 입출력 패드들(4105, 4205)이 배치될 수 있다. 도 29를 참조하면, 제1 기판(4110)의 하부에는 제1 기판(4110)의 하면을 덮는 하부 절연막(4101) 이 형성될 수 있으며, 하부 절연막(4101) 상에 제1 입출력 패드(4105)가 형성될 수 있다. 제1 입출력 패드(4105)는 제1 입출력 컨택 플러그(4103)를 통해 주변 회로 영역(PERI)에 배치되는 복수의 회로 소자들(4120a, 4120b, 4120c) 중 적어도 하나와 연결되며, 하부 절연막(4101)에 의해 제1 기판(4110)과 분리될 수 있다. 또한, 제1 입출력 컨택 플러그(4103)와 제1 기판(4110) 사이에는 측면 절연막이 배치되어 제1 입출력 컨택 플러그(4103)와 제1 기판(4110)을 전기적으로 분리할 수 있다.Meanwhile, input/
도 29를 참조하면, 제2 기판(4210)의 상부에는 제2 기판(4210)의 상면을 덮는 상부 절연막(4201)이 형성될 수 있으며, 상부 절연막(4201) 상에 제2 입출력 패드(4205)가 배치될 수 있다. 제2 입출력 패드(4205)는 제2 입출력 컨택 플러그(4203)를 통해 주변 회로 영역(PERI)에 배치되는 복수의 회로 소자들(4120a, 4120b, 4120c) 중 적어도 하나와 연결될 수 있다. Referring to FIG. 29 , an upper insulating
실시예들에 따라, 제2 입출력 컨택 플러그(4203)가 배치되는 영역에는 제2 기판(4210) 및 공통 소스 라인(4220) 등이 배치되지 않을 수 있다. 또한, 제2 입출력 패드(4205)는 제3 방향(Z축 방향)에서 워드 라인들(4230)과 오버랩되지 않을 수 있다. 도 29를 참조하면, 제2 입출력 컨택 플러그(4203)는 제2 기판(4210)의 상면에 평행한 방향에서 제2 기판(4210)과 분리되며, 셀 영역(CELL)의 층간 절연층(4215)을 관통하여 제2 입출력 패드(4205)에 연결될 수 있다. In some embodiments, the
실시예들에 따라, 제1 입출력 패드(4105)와 제2 입출력 패드(4205)는 선택적으로 형성될 수 있다. 일례로, 메모리 장치(4000)는 제1 기판(4110)의 상부에 배치되는 제1 입출력 패드(4105)만을 포함하거나, 또는 제2 기판(4210)의 상부에 배치되는 제2 입출력 패드(4205)만을 포함할 수 있다. 또는, 메모리 장치(4000)가 제1 입출력 패드(4105)와 제2 입출력 패드(4205)를 모두 포함할 수도 있다.In some embodiments, the first input/
셀 영역(CELL)과 주변 회로 영역(PERI) 각각에 포함되는 외부 패드 본딩 영역(PA)과 비트 라인 본딩 영역(BLBA) 각각에는 최상부 메탈층의 메탈 패턴이 더미 패턴(dummy pattern)으로 존재하거나, 최상부 메탈층이 비어있을 수 있다.In each of the external pad bonding area PA and the bit line bonding area BLBA included in the cell area CELL and the peripheral circuit area PERI, the metal pattern of the uppermost metal layer exists as a dummy pattern, or The uppermost metal layer may be empty.
메모리 장치(4000)는 외부 패드 본딩 영역(PA)에서, 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(4272a)에 대응하여 주변 회로 영역(PERI)의 최상부 메탈층에 셀 영역(CELL)의 상부 메탈 패턴(4272a)과 동일한 형태의 하부 메탈 패턴(4176a)을 형성할 수 있다. 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(4176a)은 주변 회로 영역(PERI)에서 별도의 컨택과 연결되지 않을 수 있다. 이와 유사하게, 외부 패드 본딩 영역(PA)에서 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴에 대응하여 셀 영역(CELL)의 상부 메탈층에 주변 회로 영역(PERI)의 하부 메탈 패턴과 동일한 형태의 상부 메탈 패턴을 형성할 수도 있다. In the external pad bonding area PA, the
워드 라인 본딩 영역(WLBA)의 제2 메탈층(4140b) 상에는 하부 본딩 메탈(4171b, 4172b)이 형성될 수 있다. 워드 라인 본딩 영역(WLBA)에서, 주변 회로 영역(PERI)의 하부 본딩 메탈(4171b, 4172b)은 셀 영역(CELL)의 상부 본딩 메탈(4271b, 4272b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있다.
또한, 비트 라인 본딩 영역(BLBA)에서, 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(4152)에 대응하여 셀 영역(CELL)의 최상부 메탈층에 주변 회로 영역(PERI)의 하부 메탈 패턴(4152)과 동일한 형태의 상부 메탈 패턴(4292)을 형성할 수 있다. 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(4292) 상에는 컨택을 형성하지 않을 수 있다.In addition, in the bit line bonding area BLBA, the lower part of the peripheral circuit area PERI is formed on the uppermost metal layer of the cell area CELL corresponding to the
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.Exemplary embodiments have been disclosed in the drawings and specification as described above. Although the embodiments have been described using specific terms in the present specification, these are used only for the purpose of explaining the technical spirit of the present disclosure and are not used to limit the meaning or the scope of the present disclosure described in the claims. . Therefore, it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible therefrom. Accordingly, the true technical protection scope of the present disclosure should be defined by the technical spirit of the appended claims.
Claims (20)
상기 스토리지 장치의 입력 신호 핀에 연결된 라인을 통해 호스트로부터 라인-리셋 신호를 수신하는 단계;
수신한 상기 라인-리셋 신호의 길이를 제1 기준 시간과 비교하는 단계; 및
상기 비교 결과에 따라, 상기 스토리지 장치와 상기 호스트 사이에서 고속 모드 또는 저속 모드로 링크 스타트업 동작을 수행하는 단계를 포함하는 방법.A method for link startup of a storage device, comprising:
receiving a line-reset signal from a host through a line connected to an input signal pin of the storage device;
comparing the length of the received line-reset signal with a first reference time; and
and performing a link startup operation between the storage device and the host in a high-speed mode or a low-speed mode according to the comparison result.
상기 라인-리셋 신호의 길이가 상기 제1 기준 시간보다 짧은 경우, 상기 고속 모드로 상기 링크 스타트업 동작을 수행하는 단계; 및
상기 라인-리셋 신호의 길이가 상기 제1 기준 시간보다 짧지 않은 경우, 상기 저속 모드로 상기 링크 스타트업 동작을 수행하는 단계를 포함하는 방법.The method of claim 1, wherein performing the link start-up operation comprises:
performing the link start-up operation in the high-speed mode when the length of the line-reset signal is shorter than the first reference time; and
and performing the link startup operation in the low speed mode when the length of the line-reset signal is not shorter than the first reference time.
상기 호스트로부터, 상기 라인이 포지티브 차동 라인 전압을 갖는 상기 라인-리셋 신호를 수신하는 단계를 포함하고,
상기 라인-리셋 신호의 길이를 상기 제1 기준 시간과 비교하는 단계는,
상기 라인이 상기 포지티브 차동 라인 전압을 갖는 라인-리셋 구간의 길이를 상기 제1 기준 시간과 비교하는 단계를 포함하는 것을 특징으로 하는 방법.The method of claim 1, wherein the receiving of the line-reset signal comprises:
receiving, from the host, the line-reset signal where the line has a positive differential line voltage;
Comparing the length of the line-reset signal with the first reference time comprises:
and comparing the length of a line-reset period in which the line has the positive differential line voltage to the first reference time.
상기 입력 신호 핀은, 포지티브 입력 신호를 수신하도록 구성된 포지티브 입력 신호 핀 및 네거티브 입력 신호를 수신하도록 구성된 네거티브 입력 신호 핀을 포함하고,
상기 라인은, 상기 포지티브 입력 신호 핀에 연결되는 포지티브 라인 및 상기 네거티브 입력 신호 핀에 연결되는 네거티브 라인을 포함하며,
상기 라인-리셋 신호를 수신하는 단계는, 상기 포지티브 라인의 전압이 상기 네거티브 라인의 전압보다 높은, 상기 라인-리셋 신호를 수신하는 것을 특징으로 하는 방법.4. The method of claim 3,
the input signal pin comprises a positive input signal pin configured to receive a positive input signal and a negative input signal pin configured to receive a negative input signal;
the line comprises a positive line connected to the positive input signal pin and a negative line connected to the negative input signal pin;
The receiving of the line-reset signal comprises receiving the line-reset signal, wherein a voltage of the positive line is higher than a voltage of the negative line.
상기 라인-리셋 신호의 길이를 상기 제1 기준 시간과 비교하는 단계는,
상기 포지티브 라인의 전압과 상기 네거티브 라인의 전압을 비교함으로써 차동 라인 전압을 생성하는 단계;
시스템 클럭에서 클럭 개수를 카운팅함으로써, 시스템 클럭 카운트 값을 생성하는 단계; 및
상기 차동 라인 전압 및 상기 시스템 클럭 카운트 값에 기초하여, 상기 라인-리셋 길이를 판별하는 단계를 포함하는 것을 특징으로 하는 방법.5. The method of claim 4,
Comparing the length of the line-reset signal with the first reference time comprises:
generating a differential line voltage by comparing the voltage of the positive line and the voltage of the negative line;
generating a system clock count value by counting the number of clocks from the system clock; and
and determining the line-reset length based on the differential line voltage and the system clock count value.
상기 라인-리셋 신호의 길이를 상기 제1 기준 시간과 비교하는 단계는,
상기 제1 기준 시간에 대응하는 시정수를 갖는 RC 필터를 이용하여, 제1 시점에서 상기 라인의 차동 라인 전압에 대응하는 출력 전압을 감지하는 단계; 및
감지된 상기 출력 전압에 기초하여 트리거 신호를 생성하는 단계를 포함하는 방법.According to claim 1,
Comparing the length of the line-reset signal with the first reference time comprises:
detecting an output voltage corresponding to the differential line voltage of the line at a first time point using an RC filter having a time constant corresponding to the first reference time; and
and generating a trigger signal based on the sensed output voltage.
상기 제1 기준 시간은 약 300 ㎲인 것을 특징으로 하는 방법.According to claim 1,
and the first reference time is about 300 μs.
상기 라인-리셋 신호의 길이를 상기 제1 기준 시간과 비교하는 단계 전에, 수신한 상기 라인-리셋 신호의 길이를, 상기 제1 기준 시간보다 작은 제2 기준 시간과 비교하는 단계를 더 포함하는 방법.According to claim 1,
Before comparing the length of the line-reset signal with the first reference time, the method further comprising: comparing the received length of the line-reset signal with a second reference time that is smaller than the first reference time .
상기 라인-리셋 신호의 길이가 상기 제2 기준 시간보다 길고 상기 제1 기준 시간보다 짧은 경우, 상기 고속 모드로 상기 링크 스타트업 동작을 수행하는 단계; 및
상기 라인-리셋 신호의 길이가 상기 제1 기준 시간보다 짧지 않은 경우, 상기 저속 모드로 상기 링크 스타트업 동작을 수행하는 단계를 포함하는 방법.The method of claim 8, wherein performing the link startup operation comprises:
performing the link start-up operation in the high-speed mode when the length of the line-reset signal is longer than the second reference time and shorter than the first reference time; and
and performing the link startup operation in the low speed mode when the length of the line-reset signal is not shorter than the first reference time.
상기 제2 기준 시간은 약 200 ㎲인 것을 특징으로 하는 방법.9. The method of claim 8,
and the second reference time is about 200 μs.
상기 스토리지 장치는, 상기 호스트와 데이터를 송수신하도록 구성된 인터커넥트부를 포함하고,
상기 방법은,
상기 비교 결과에 따라 상기 인터커넥트부의 물리 계층 또는 링크 계층을 설정하는 단계를 더 포함하는 것을 특징으로 하는 방법.According to claim 1,
The storage device includes an interconnect configured to transmit and receive data to and from the host;
The method is
The method of claim 1, further comprising: setting a physical layer or a link layer of the interconnect unit according to the comparison result.
상기 라인이 네거티브 차동 라인 전압에서 포지티브 차동 라인 전압으로 천이하는 단계를 포함하는 방법.The method of claim 1, wherein the receiving of the line-reset signal comprises:
and the line transitioning from a negative differential line voltage to a positive differential line voltage.
상기 스토리지 장치는, 상기 호스트와 데이터를 송수신하도록 구성된 인터커넥트부를 포함하고,
상기 방법은,
상기 라인-리셋 신호의 길이를 상기 제1 기준 시간과 비교하는 단계 전에, 상기 라인이 상기 네거티브 차동 라인 전압을 갖는 액티베이트 구간을 제3 기준 시간과 비교하는 단계; 및
상기 액티베이트 구간이 상기 제3 기준 시간보다 짧은 경우, 상기 인터커넥트부의 물리 계층 또는 링크 계층을 설정하는 단계를 더 포함하는 것을 특징으로 하는 방법.13. The method of claim 12,
The storage device includes an interconnect configured to transmit and receive data to and from the host;
The method is
before comparing the length of the line-reset signal with the first reference time, comparing an active period in which the line has the negative differential line voltage with a third reference time; and
When the activation period is shorter than the third reference time, the method further comprising the step of setting a physical layer or a link layer of the interconnect unit.
상기 라인-리셋 신호를 수신하는 단계 이전에, 파워 세이빙 상태인 하이버네이트 상태(HIBERN8)를 탈출하는 단계를 더 포함하는 방법.According to claim 1,
and prior to receiving the line-reset signal, exiting the hibernate state (HIBERN8), which is a power saving state.
상기 스토리지 장치는, 상기 호스트와 UFS(Universal Flash Storage) 표준에 통해 상호 연결되는 UFS 장치인 것을 특징으로 하는 방법.According to claim 1,
The storage device is a UFS device interconnected with the host through a UFS (Universal Flash Storage) standard.
상기 스토리지 장치의 입력 신호 핀에 연결된 라인을 통해, 상기 호스트로부터 라인-리셋 신호가 수신되는지 여부를 판단하는 단계;
상기 호스트로부터 상기 라인-리셋 신호가 수신되면, 상기 스토리지 장치와 상기 호스트 사이에서 고속 모드 링크 스타트업 동작을 수행하는 단계; 및
상기 호스트로부터 상기 라인-리셋 신호가 수신되지 않으면, 상기 스토리지 장치와 상기 호스트 사이에서 저속 모드 링크 스타트업 동작을 수행하는 단계를 포함하는 방법.A method for link startup of a storage device, comprising:
determining whether a line-reset signal is received from the host through a line connected to an input signal pin of the storage device;
performing a fast mode link start-up operation between the storage device and the host when the line-reset signal is received from the host; and
and when the line-reset signal is not received from the host, performing a low-speed link startup operation between the storage device and the host.
상기 라인-리셋 신호가 수신되는지 여부를 판단하는 단계는,
상기 라인이 포지티브 차동 라인 전압을 갖는 라인-리셋 구간의 유무를 판단하는 단계를 포함하는 것을 특징으로 하는 방법.17. The method of claim 16,
Determining whether the line-reset signal is received comprises:
and determining whether there is a line-reset section in which the line has a positive differential line voltage.
상기 스토리지 장치와 호스트 사이에서 고속 모드 링크 스타트업 동작을 수행하는 단계;
상기 고속 모드 링크 스타트업 동작의 완료 여부를 판단하는 단계;
상기 고속 모드 링크 스타트업 동작이 완료된 경우, 상기 스토리지 장치와 상기 호스트 사이의 링크업이 패스되었는지 여부를 판단하는 단계; 및
상기 링크업이 패스되지 않은 경우, 상기 스토리지 장치와 상기 호스트 사이에서 저속 모드 링크 스타트업 동작을 수행하는 단계를 포함하는 방법.A method for link startup of a storage device, comprising:
performing a fast mode link start-up operation between the storage device and the host;
determining whether the fast mode link start-up operation is completed;
determining whether the link-up between the storage device and the host has passed when the high-speed mode link start-up operation is completed; and
and performing a slow mode link start-up operation between the storage device and the host when the link-up is not passed.
상기 고속 모드 링크 스타트업 동작의 완료 여부를 판단하는 단계는,
상기 고속 모드 링크 스타트업 동작의 시작 시점으로부터 임계 시간이 경과했는지 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 방법.19. The method of claim 18,
The step of determining whether the high-speed mode link start-up operation is complete,
and determining whether a threshold time has elapsed from the start time of the fast mode link startup operation.
상기 링크업이 패스되었는지 여부를 판단하는 단계는,
상기 호스트로부터 성능 정보가 수신되었는지 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 방법.19. The method of claim 18,
The step of determining whether the link-up has been passed comprises:
and determining whether capability information has been received from the host.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288136.7A CN113641601A (en) | 2020-04-27 | 2021-03-17 | Link starting method of storage device, host and implementation system thereof |
EP21163416.7A EP3905055B1 (en) | 2020-04-27 | 2021-03-18 | Link startup method of storage device, and storage device, host and system implementing same |
US17/241,564 US11625342B2 (en) | 2020-04-27 | 2021-04-27 | Link startup method of storage device, and storage device, host and system implementing same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200051055 | 2020-04-27 | ||
KR20200051055 | 2020-04-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210132569A true KR20210132569A (en) | 2021-11-04 |
Family
ID=78521841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200137077A KR20210132569A (en) | 2020-04-27 | 2020-10-21 | Link startup method of storage device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210132569A (en) |
-
2020
- 2020-10-21 KR KR1020200137077A patent/KR20210132569A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3905055B1 (en) | Link startup method of storage device, and storage device, host and system implementing same | |
EP3869315B1 (en) | Storage device and storage system including the same | |
US12038857B2 (en) | Storage device adjusting data rate and storage system including the same | |
EP4156191A1 (en) | Operating method of storage device, operating method of host, and storage system including the storage device and the host | |
US12100475B2 (en) | Apparatus, memory controller, memory device, memory system, and method for clock switching and low power consumption | |
US20240184480A1 (en) | Storage device for high speed link startup and storage system including the same | |
EP3961410A2 (en) | Storage device for performing high-speed link startup and storage system including the same | |
US20210216223A1 (en) | Storage device configured to change power state based on reference clock from host device and method for operating the same | |
KR20220077400A (en) | Nonvolatile memory device, memory system and operationg method thereof | |
KR20210132569A (en) | Link startup method of storage device | |
KR20210106319A (en) | Storage device and storage system including the same | |
EP3848787B1 (en) | Storage device configured to change power state based on reference clock from host device | |
KR20210156187A (en) | Storage device for high speed link startup and storage system including the same | |
EP3982244A1 (en) | Storage controller, storage system and operating methods thereof | |
KR20220047443A (en) | Memory system, electronic device including the same, and memory controller |