KR20180033368A - 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치 - Google Patents

케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치 Download PDF

Info

Publication number
KR20180033368A
KR20180033368A KR1020160122402A KR20160122402A KR20180033368A KR 20180033368 A KR20180033368 A KR 20180033368A KR 1020160122402 A KR1020160122402 A KR 1020160122402A KR 20160122402 A KR20160122402 A KR 20160122402A KR 20180033368 A KR20180033368 A KR 20180033368A
Authority
KR
South Korea
Prior art keywords
storage device
reference clock
clock
rck
storage
Prior art date
Application number
KR1020160122402A
Other languages
English (en)
Inventor
정용우
오화석
최진혁
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020160122402A priority Critical patent/KR20180033368A/ko
Priority to US15/685,654 priority patent/US10453507B2/en
Priority to CN202210086591.3A priority patent/CN114415964B/zh
Priority to CN201710804654.3A priority patent/CN107870741B/zh
Publication of KR20180033368A publication Critical patent/KR20180033368A/ko
Priority to US16/655,782 priority patent/US10950281B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

본 발명의 실시 예에 따른 전자 장치는, 레퍼런스 클록을 생성하는 어플리케이션 프로세서, 클록 입력 포트로 상기 어플리케이션 프로세서로부터 제공되는 레퍼런스 클록을 제공받고, 클록 출력 포트로 상기 레퍼런스 클록을 출력하며, 상기 레퍼런스 클록을 사용하여 상기 어플리케이션 프로세서와 통신하는 제 1 스토리지 장치, 그리고 상기 클록 출력 포트로부터 출력되는 상기 레퍼런스 클록을 수신하여 상기 제 1 스토리지 장치와의 통신에 사용하는 제 2 스토리지 장치를 포함한다.

Description

케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치{ELECTRONIC DEVICE COMPRISING STORAGE DEVICES TRANSMITTING REFERENCE CLOCK VIA CASCADE COUPLING STRUCTURE}
본 발명은 전자 장치에 관한 것으로, 좀 더 구체적으로는 고속 데이터 전송을 위한 레퍼런스 클록을 케스-케이드 연결 구조로 전달하는 스토리지 장치들을 포함하는 전자 장치에 관한 것이다.
근래 다양한 유형의 전자 장치들이 이용되고 있다. 전자 장치는 그것에 포함되는 하나 이상의 전자 회로들의 동작에 따라 고유의 기능들을 수행한다. 전자 장치는 고유의 기능들을 수행함으로써 사용자에게 서비스를 제공한다. 전자 장치는 단독으로 동작하여 서비스를 제공할 수 있다. 몇몇 전자 장치는 다른 전자 장치 또는 외부 전자 회로와 통신하여 서비스를 제공할 수도 있다.
연산 처리기(Operation Processor) 및 스토리지 장치(Storage Device)는 전자 장치들의 몇몇 예시이다. 예로서, 연산 프로세서는 스토리지 장치와 통신(예컨대, 인터페이싱)하여, 사용자에게 데이터 스토리지 서비스를 제공할 수 있다. 연산 프로세서는 스토리지 장치와 인터페이싱하면서, 스토리지 장치와 데이터/정보/신호/패킷을 교환할 수 있다. 연산 프로세서 및 스토리지 장치는 서로 통신하기 위해 인터페이스 규약(Interface Protocol)을 채용할 수 있다.
더 높은 성능 및 효율을 갖는 전자 장치에 대한 요구가 증가함에 따라, 전자 장치의 구성 및 인터페이스 방식이 다양하게 진화하여 왔다. 예로서, 더 큰 용량을 갖는 스토리지 장치를 구현하기 위해, 다양한 회로 구성 및 동작 방법이 제안되어 왔다. 그러나, 몇몇 경우, 사용자 요구를 충족시키기 위해 회로 구성 및 동작 방법을 변경하는 것은 비용, 구성 복잡도, 및 회로 면적의 증가를 야기할 수 있다.
본 발명은 상대적으로 낮은 복잡도를 가지면서도 높은 신뢰성, 품질의 레퍼런스 클록을 전달할 수 있는 스토리지 장치들을 제공할 수 있다.
본 발명의 실시 예에 따른 전자 장치는, 레퍼런스 클록을 생성하는 어플리케이션 프로세서, 클록 입력 포트로 상기 어플리케이션 프로세서로부터 제공되는 레퍼런스 클록을 제공받고, 클록 출력 포트로 상기 레퍼런스 클록을 출력하며, 상기 레퍼런스 클록을 사용하여 상기 어플리케이션 프로세서와 통신하는 제 1 스토리지 장치, 그리고 상기 클록 출력 포트로부터 출력되는 상기 레퍼런스 클록을 수신하여 상기 제 1 스토리지 장치와의 통신에 사용하는 제 2 스토리지 장치를 포함한다.
본 발명의 실시 예에 따른 전자 장치는, 어플리케이션 프로세서, 상기 어플리케이션 프로세서와 통신하며, 오실레이터를 사용하여 레퍼런스 클록을 생성하여 클록 출력 포트로 출력하는 제 1 스토리지 장치, 그리고 상기 클록 출력 포트로부터 출력되는 상기 레퍼런스 클록을 수신하여 상기 제 1 스토리지 장치와의 통신에 사용하는 제 2 스토리지 장치를 포함하되, 상기 어플리케이션 프로세서는 상기 제 1 스토리지 장치를 경유하여 상기 제 2 스토리지 장치와 통신한다.
본 발명의 실시 예에 따른 전자 장치는 레퍼런스 클록을 사용하여 구동 클록을 생성하고, 상기 레퍼런스 클록을 클록 출력 포트로 전달하되, 클록 입력 포트로 상기 레퍼런스 클록이 제공되지 않는 경우에는 상기 레퍼런스 클록을 생성하는 제 1 스토리지 장치, 그리고 상기 클록 출력 포트를 통해서 출력되는 상기 레퍼런스 클록을 사용하여 상기 제 1 스토리지 장치와 통신하는 제 2 스토리지 장치를 포함한다.
본 발명의 실시 예들에 따르면, 본 발명의 스토리지 장치들은 체인 방식으로 레퍼런스 클록을 제공할 수 있다. 하나의 스토리지 장치 또는 호스트는 다른 하나의 스토리지 장치로만 레퍼런스 클록을 전달하도록 구성됨에 따라 레퍼런스 클록의 파라미터 관리가 간략화될 수 있다. 더불어, 레퍼런스 클록 경로 상에 반사 성분 또는 누설 성분의 개입을 최소화함에 따라 전달되는 레퍼런스 클록의 품질이 향상될 수 있다.
도 1은 본 발명의 실시 예에 따라 직렬로 연결되는 스토리지 장치들을 포함하는 스토리지 시스템(1000)을 보여주는 블록도이다.
도 2a 내지 도 2d는 도 1의 스토리지 시스템(1000)의 예시적인 구현들을 보여주는 개념도들이다.
도 3은 도 1의 스토리지 시스템에서 채용될 수 있는 예시적인 인터페이스 규약에 따른 계층 구조를 보여주는 블록도이다.
도 4는 본 발명의 실시 예에 따른 직렬 인터페이스 프로토콜(Serial Interface Protocol)을 채용한 스토리지 시스템(2000)을 간략히 보여주는 블록도이다.
도 5는 도 4의 연산 처리 장치(2100)에 포함되는 클록 생성기(2120)의 구조를 예시적으로 보여주는 블록도이다.
도 6a 및 도 6b는 도 4의 제 1 스토리지 장치(2200)에 구비되는 클록 제어 회로(2220)의 예시적은 구성을 보여주는 블록도들이다.
도 7은 제 2 스토리지 장치(2300)에 구비된 클록 제어 회로(2320)를 보여주는 블록도이다.
도 8은 도 4의 스토리지 시스템(2000)의 제 1 스토리지 장치(2200)에서 수행되는 레퍼런스 클록(RCK_1)의 처리 절차를 예시적으로 보여주는 순서도이다.
도 9는 본 발명의 다른 실시 예에 따른 스토리지 시스템(3000)을 보여주는 블록도이다.
도 10은 도 9의 제 1 스토리지 장치(3200)에 구비되는 클록 제어 로직(3320)의 구성을 예시적으로 보여주는 블록도이다.
도 11은 도 9의 제 1 스토리지 장치(3200)에서 수행되는 레퍼런스 클록의 처리 방법을 예시적으로 보여주는 순서도이다.
도 12는 도 9의 스토리지 시스템(3000)에서 장치들 간의 레퍼런스 클록 전달 절차를 도식적으로 보여주는 도면이다.
도 13은 본 발명의 또 다른 실시 예에 따른 스토리지 시스템(4000)을 보여주는 블록도이다.
도 14는 본 발명의 케스-케이드 방식을 사용하는 스토리지 시스템(5000)의 일 예를 보여주는 블록도이다.
도 15는 본 발명의 케스-케이드 방식을 사용하는 스토리지 시스템(6000)의 다른 예를 보여주는 블록도이다.
아래에서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자(이하, 통상의 기술자)들이 본 발명을 용이하게 실시할 수 있도록, 첨부되는 도면들을 참조하여 본 발명의 실시 예들이 명확하고 상세하게 설명될 것이다.
도 1은 본 발명의 실시 예에 따라 직렬로 연결되는 스토리지 장치들을 포함하는 스토리지 시스템(1000)을 보여주는 블록도이다. 스토리지 시스템(1000)은 연산 처리 장치(1100), 제 1 스토리지 장치(1200), 및 제 2 스토리지 장치(1300)를 포함할 수 있다.
연산 처리 장치(1100)는 스토리지 시스템(1000)의 전반적인 동작들을 관리하고 처리할 수 있다. 연산 처리 장치(1100)는 다양한 산술 연산/논리 연산을 수행할 수 있다. 예로서, 연산 처리 장치(1100)는 하나 이상의 프로세서 코어들을 포함할 수 있다. 연산 처리 장치(1100)는 전용 회로(예컨대, FPGA(Field Programmable Gate Arrays), ASICs(Application Specific Integrated Circuits) 등)를 포함하여 구현되거나, 또는 SoC(System on Chip)로 구현될 수 있다. 예로서, 연산 처리 장치(1100)는 범용 프로세서, 전용 프로세서, 또는 어플리케이션 프로세서(Application Processor)를 포함할 수 있다. 연산 처리 장치(1100)는 프로세서 그 자체이거나, 프로세서를 포함하는 전자 장치 또는 시스템일 수 있다.
제 1 스토리지 장치(1200)는 하나 이상의 불휘발성 메모리들(1211) 및 컨트롤러(1231)를 포함할 수 있다. 제 2 스토리지 장치(1300)는 하나 이상의 불휘발성 메모리들(1311) 및 컨트롤러(1331)를 포함할 수 있다.
불휘발성 메모리들(1211, 1311)은 데이터를 저장하기 위한 메모리 영역들을 포함할 수 있다. 예로서, 불휘발성 메모리들(1211, 1311)이 낸드 플래시 메모리(NAND-type Flash Memory)들을 포함하는 경우, 불휘발성 메모리들(1211, 1311)은 복수의 워드 라인 및 복수의 비트 라인을 따라 형성되는 메모리 셀 어레이들을 포함할 수 있다.
그러나, 위 예는 본 발명을 한정하기 위한 것은 아니다. 불휘발성 메모리들(1211, 1311)은 PRAM(Phase-change Random Access Memory), MRAM(Magneto-resistive RAM), ReRAM(Resistive RAM), FRAM(Ferro-electric RAM) 등과 같은 다양한 불휘발성 메모리들 중 하나 이상을 포함할 수 있다. 더 나은 이해를 돕기 위해, 아래의 설명에서 불휘발성 메모리들(1211, 1311)이 낸드 플래시 메모리들을 포함하는 것으로 가정될 것이나, 불휘발성 메모리들(1211, 1311)의 구성들은 다양하게 변경 또는 수정될 수 있다.
컨트롤러들(1231, 1331)은 각각 스토리지 장치들(1200, 1300)의 전반적인 동작들을 제어할 수 있다. 이를 위해, 컨트롤러들(1231, 1331) 각각은 하나 이상의 프로세서 코어들 및 버퍼 메모리를 포함할 수 있다. 예로서, 컨트롤러들(1231, 1331)은 각각 불휘발성 메모리들(1211, 1311)을 제어할 수 있다. 컨트롤러들(1231, 1331)의 제어에 따라, 데이터가 불휘발성 메모리들(1211, 1311)에 저장되거나 불휘발성 메모리들(1211, 1311)에 저장된 데이터가 출력될 수 있다.
연산 처리 장치(1100)는 스토리지 장치들(1200, 1300)로 커맨드(Command) 및/또는 쿼리(Query)를 제공할 수 있다. 연산 처리 장치(1100)는 스토리지 장치들(1200, 1300)과 데이터를 교환할 수 있다. 몇몇 실시 예에서, 커맨드, 쿼리, 및 데이터는 패킷(Packet) 단위로 전송될 수 있으나, 이는 본 발명을 한정하기 위한 것은 아니다.
예로서, 연산 처리 장치(1100)가 스토리지 장치들(1200, 1300)로 쓰기 커맨드 및 쓰기 데이터를 제공하는 경우, 스토리지 장치들(1200, 1300)은 불휘발성 메모리들(1211, 1311)에 쓰기 데이터를 저장할 수 있다. 예로서, 연산 처리 장치(1100)가 스토리지 장치들(1200, 1300)로 읽기 커맨드를 제공하는 경우, 스토리지 장치들(1200, 1300)은 불휘발성 메모리들(1211, 1311)에 저장된 읽기 데이터를 출력할 수 있다.
연산 처리 장치(1100)는 스토리지 장치들(1200, 1300)로부터 스토리지 서비스를 제공받는 호스트 장치일 수 있다. 연산 처리 장치(1100)의 동작에 따라, 스토리지 시스템(1000)의 사용자는 스토리지 서비스를 제공받을 수 있다.
본 발명의 실시 예에서, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)은 케스-케이드(Cascade) 방식으로 연결될 수 있다. 도 1을 참조하면, 연산 처리 장치(1100)는 포트들(PORT0, PORT1a)을 통해 제 1 스토리지 장치(1200)와 직접 통신하도록 연결될 수 있다. 즉, 연산 처리 장치(1100)는 포트들(PORT0, PORT1a)을 통해 제 1 스토리지 장치(1200)와 데이터나 제어 신호를 교환하고, 레퍼런스 클록(RCK)을 전달할 수 있다. 나아가, 제 1 스토리지 장치(1200)는 포트들(PORT1b, PORT2)을 통해 제 2 스토리지 장치(1300)와 직접 통신하도록 연결될 수 있다. 즉, 제 1 스토리지 장치(1200)는 포트들(PORT1b, PORT2)을 통해 제 2 스토리지 장치(1300)와 데이터나 제어 신호를 교환하고, 레퍼런스 클록(RCK')을 전달할 수 있다. 여기서, 레퍼런스 클록들(RCK, RCK')은 동일한 발진 소스로부터 생성된 클록 신호일 수 있다. 또한, 레퍼런스 클록들(RCK, RCK')은 다른 발진 소스들로부터 각각 생성된 상이한 클록들일 수도 있다.
연산 처리 장치(1100)는 제 2 스토리지 장치(1300)와의 통신을 위해서는 제 1 스토리지 장치(1200)의 포트들(PORT1a, PORT1b)을 경유해야 한다. 즉, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)은 체인(Chain) 구조 또는 케스-케이드(Cascade) 구조의 토폴로지(Topology)로 연결될 수 있다.
예로서, 컨트롤러(1231)는 연산 처리 장치(1100)와 읽기 데이터 및 쓰기 데이터를 교환하기 위해, 연산 처리 장치(1100)와 직접 통신하도록 구성될 수 있다. 예로서, 컨트롤러들(1231, 1331)은 읽기 데이터 및 쓰기 데이터를 서로 교환하기 위해, 서로 직접 통신하도록 구성될 수 있다. 반면, 컨트롤러(1331)는 연산 처리 장치(1100)와 직접 연결되지 않을 수 있다.
도 1에 나타낸 실시 예에 따르면, 연산 처리 장치(1100)는 제 2 스토리지 장치(1300)와 직접 통신하지 않을 수 있다. 따라서, 연산 처리 장치(1100)는 제 1 스토리지 장치(1200)와 연결되는 포트(PORT0), 제 1 스토리지 장치(1200)와 통신하기 위한 통신 회로, 및 이 통신 회로를 구동/제어하는 주변 회로만을 포함할 수 있다. 대신, 제 1 스토리지 장치(1200)가 제 2 스토리지 장치(1300)와 연결되는 포트(PORT1b), 제 2 스토리지 장치(1300)와 통신하기 위한 통신 회로, 및 이 통신 회로를 구동/제어하는 주변 회로를 포함할 수 있다.
따라서, 도 1에 나타낸 실시 예에 따르면, 연산 처리 장치(1100)의 구성이 단순화될 수 있고, 연산 처리 장치(1100)에 의해 차지되는 면적이 감소할 수 있다. 게다가, 연산 처리 장치(1100)의 설계/생산 비용이 감소할 수 있다. 이러한 경제적인 혜택에 더하여, 두 개의 스토리지 장치들(1200, 1300)을 채용하는 것은 하나의 스토리지 장치를 채용하는 경우에 비해 더 많은 스토리지 용량(Capacity)을 제공할 수 있다. 따라서, 사용자 요구가 충족될 수 있다.
이러한 실시 예에서, 제 1 스토리지 장치(1200)의 구성이 다소 복잡해질 수 있다. 그러나, 많은 경우, 연산 처리 장치(1100)는 수 내지 수십 기가헤르츠(GHz)의 속도로 동작할 수 있고, 제 1 스토리지 장치(1200)는 수 내지 수십 메가헤르츠(MHz)의 속도로 동작할 수 있다. 게다가, 연산 처리 장치(1100)를 제작하기 위한 공정이 제 1 스토리지 장치(1200)를 제작하기 위한 공정보다 더 어렵고 복잡할 수 있다. 따라서, 제 1 스토리지 장치(1200)에 포트(PORT1b), 통신 회로, 및 주변 회로를 구현하는 것이 훨씬 더 단순하고 경제적일 수 있다.
상술한 스토리지 시스템(1000)의 구조에 따르면, 연산 처리 장치(1100)에서 스토리지 장치(1200)로 공급되는 레퍼런스 클록(RCK)의 신뢰성 및 품질을 높일 수 있다. 즉, 버스 토폴로지(Bus topology) 구조로 레퍼런스 클록(RCK)을 스토리지 장치들(1200, 1300)에 공급하는 경우, 복수의 장치들에 동시에 레퍼런스 클록(RCK)이 전달된다. 하지만, 어느 하나의 스토리지 장치의 입장에서는, 다른 스토리지 장치의 레퍼런스 클록(RCK)을 전달하기 위한 전송 라인은 반사 또는 누설에 따른 노이즈의 원인으로 작용한다. 더불어, 특정 스토리지 장치가 절전 모드와 같은 상태로 존재하는 경우, 레퍼런스 클록을 수신하는 전송 라인은 제어될 수 없는 기생 스터브 저항(Parasitic Stub Resistance)으로 작용한다. 본 발명의 케스-케이드 방식으로 레퍼런스 클록을 전달하거나 공급하는 경우, 이러한 문제를 해결할 수 있으며 높은 품질 및 높은 융통성을 갖는 레퍼런스 클록의 공급이 가능하다.
스토리지 장치(1200)로 공급되는 레퍼런스 클록(RCK)은 연산 처리 장치(1100)에 의해서 생성되는 클록일 수 있다. 예를 들면, 연산 처리 장치(1100)는 안정적인 주파수의 발진 신호를 생성할 수 있는 발진 소자와 위상 고정 루프(PLL)를 사용하여 레퍼런스 클록(RCK)을 생성할 수 있다. 발진 소자는 예를 들면, 다양한 환경에서도 안정적인 주파수의 발진 신호를 생성할 수 있는 온도 보상형 크리스털 오실레이터(TCXO)일 수 있다.
다른 실시 예에서, 연산 처리 장치(1100)는 외부에서 제공되는 레퍼런스 클록(RCK)을 스토리지 장치(1200)에 바이패스 하는 방식으로 제공할 수 있다. 안정적인 발진 신호를 생성하기 위한 온도 보상형 크리스털 오실레이터(TCXO)와 같은 구성은 큰 칩면적을 차지한다. 따라서, 연산 처리 장치(1100)가 높은 정확도의 클록을 생성하기 위한 전용 장치로부터 레퍼런스 클록(RCK)을 제공받아 단순하게 스토리지 장치(1200)로 전달하는 방식으로 구현될 수 있다.
또 다른 실시 예로서, 연산 처리 장치(1100)는 외부에서 제공되는 레퍼런스 클록(RCK)을 사용하여 보다 정확한 주파수의 클록 신호로 조정한 후에 스토리지 장치(1200)에 전달할 수도 있다. 즉, 연산 처리 장치(1100)는 높은 정확도의 클록을 생성하기 위한 전용 장치로부터 레퍼런스 클록(RCK)을 제공받아 위상 고정 루프(PLL)를 통해서 안정화한 후에 스토리지 장치(1200)로 전달할 수 있다.
연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)은 다양한 인터페이스 규약(Interface Protocol) 중 하나 이상에 따라 서로 통신할 수 있다. 예로서, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)은 서로 통신하기 위해 USB(Universal Serial Bus), SCSI(Small Computer System Interface), PCIe(Peripheral Component Interconnect Express), NVMe(Nonvolatile Memory Express), SATA(Serial Advanced Technology Attachment), SAS(Serial Attached SCSI), SD(Secure Digital) 카드, eMMC(Embedded Multimedia Card), UFS(Universal Flash Storage) 등과 같은 직렬 인터페이스 규약들 중 적어도 하나를 채용할 수 있으나, 다만 이 예는 본 발명을 한정하기 위한 것은 아니다.
도 2a 내지 도 2d는 도 1의 스토리지 시스템(1000)의 예시적인 구현들을 보여주는 개념도들이다.
도 2a를 참조하면, 도 1의 스토리지 시스템(1000)은 전자 장치(1000a)(예컨대, 스마트 폰, 태블릿 컴퓨터 등)에 구현될 수 있다. 전자 장치(1000a)는 어플리케이션 프로세서(1100a) 및 임베디드(Embedded) 스토리지 장치(1200a)를 포함할 수 있다. 전자 장치(1000a)는 착탈식(Removable) 스토리지 장치(1300a)를 장착하기 위해 슬롯(Slot, 1401)을 포함할 수 있다. 예로서, 착탈식 스토리지 장치(1300a)는 카드, 스틱(Stick), 또는 칩 패키지 형태로 구현될 수 있고, 슬롯(1401)에 장착되거나 슬롯(1401)으로부터 분리될 수 있다.
예로서, 어플리케이션 프로세서(1100a)는 도전 패턴(Conductive Pattern, W1)을 통해 임베디드 스토리지 장치(1200a)와 직접 통신하도록 연결될 수 있다. 착탈식 스토리지 장치(1300a)가 슬롯(1401)에 장착되는 경우, 임베디드 스토리지 장치(1200a)는 도전 패턴(W2)을 통해 착탈식 스토리지 장치(1300a)와 직접 통신하도록 연결될 수 있다. 반면, 착탈식 스토리지 장치(1300a)는 어플리케이션 프로세서(1100a)와 직접 연결되지 않을 수 있다.
도 2b 내지 도 2d를 참조하면, 도 1의 스토리지 시스템(1000)은 컴퓨팅 시스템(1000b, 1000c, 또는 1000d)(예컨대, 데스크탑 컴퓨터, 랩탑 컴퓨터, 워크스테이션, 서버 시스템 등)에 구현될 수 있다. 도 2b의 컴퓨팅 시스템(1000b)은 CPU(Central Processing Unit, 1100b) 및 스토리지 장치들(1200b, 1300b)을 포함할 수 있다. CPU(1100b)는 메인보드(또는 마더보드, 1001) 상에 장착될 수 있다.
예로서, 스토리지 장치들(1200b, 1300b) 각각은 박스 모듈(Box Module)로 구현되는 HDD(Hard Disk Drive) 또는 SSD(Solid State Drive)일 수 있다. 제 1 스토리지 장치(1200b)는 메인보드(1001) 상의 커넥터(Connector, 1003b)와 연결될 수 있고, 도전 패턴(W3) 및 전선 케이블(Wire Cable, W4)을 통해 CPU(1100b)와 직접 통신하도록 연결될 수 있다. 제 2 스토리지 장치(1300b)는 전선 케이블(W5)을 통해 제 1 스토리지 장치(1200b)와 직접 통신하도록 연결될 수 있다. 반면, 제 2 스토리지 장치(1300b)는 CPU(1100b)와 직접 연결되지 않을 수 있다. 즉, CPU(1100b)와 스토리지 장치들(1200b, 1300b)은 직렬 연결 또는 케스-케이드(Cascade) 방식으로 연결될 수 있다.
도 2c의 컴퓨팅 시스템(1000c)은 CPU(1100c) 및 스토리지 장치들(1200c, 1300c)을 포함할 수 있다. 예로서, 스토리지 장치들(1200c, 1300c) 각각은 카드 모듈(Card Module)로 구현되는 메모리 모듈 또는 SSD일 수 있다. 제 1 스토리지 장치(1200c)는 메인보드(1001) 상의 커넥터(1003c)에 연결될 수 있고, 도전 패턴(W6)을 통해 CPU(1100c)와 직접 통신하도록 연결될 수 있다. 제 2 스토리지 장치(1300c)는 메인보드(1001) 상의 커넥터(1004c)에 연결될 수 있고, 도전 패턴(W7)을 통해 제 1 스토리지 장치(1200c)와 직접 통신하도록 연결될 수 있다. 반면, 제 2 스토리지 장치(1300c)는 CPU(1100c)와 직접 연결되지 않을 수 있다.
도 2d의 컴퓨팅 시스템(1000d)은 CPU(1100d) 및 스토리지 장치들(1200d, 1300d)을 포함할 수 있다. 예로서, 스토리지 장치들(1200d, 1300d) 각각은 칩 또는 칩 패키지로 구현되는 온-보드(On-board) SSD 또는 BGA(Ball Grid Array) SSD일 수 있다. 제 1 스토리지 장치(1200d)는 도전 패턴(W8)을 통해 CPU(1100d)와 직접 통신하도록 연결될 수 있고, 도전 패턴(W9)을 통해 제 2 스토리지 장치(1300d)와 직접 통신하도록 연결될 수 있다. 반편, 제 2 스토리지 장치(1300d)는 CPU(1100d)와 직접 연결되지 않을 수 있다.
예로서, 제 1 스토리지 장치(1200d)가 BGA SSD인 경우, 제 1 스토리지 장치(1200d)는 기판(12) 상에 실장되는 불휘발성 메모리/컨트롤러 칩(13)을 포함할 수 있다. 불휘발성 메모리/컨트롤러 칩(13)은 본딩(Bonding, 15)을 통해 도전 패턴들(W8, W9)과 연결될 수 있고, 몰드 컴파운드(Mold Compound, 14)로 덮일 수 있다. 제 1 스토리지 장치(1200d)는 솔더 볼(Solder Ball)들(11)을 통해 메인보드(1001) 상에 장착될 수 있다.
몇몇 실시 예에서, 컴퓨팅 시스템들(1000b, 1000c, 1000d) 각각은 CPU(1100b, 1100c, 1100d)에 의해 처리된 또는 처리될 데이터를 임시로 저장하기 위한 워킹(Working) 메모리, 외부 장치/시스템과 통신하기 위한 통신 회로, 및 사용자와 데이터/정보를 교환하기 위한 유저 인터페이스를 더 포함할 수 있다. 워킹 메모리, 통신 회로, 및 유저 인터페이스는 메인보드(1001) 상에 장착될 수 있고, 도전 패턴들 또는 버스들을 통해 CPU(1100b, 1100c, 1100d)와 연결될 수 있다.
도 2a 내지 도 2d에서, CPU(1100a, 1100b, 1100c, 1100d ) 각각은 도 1의 연산 처리 장치(1100)에 대응할 수 있다. 임베디드 스토리지 장치(1200a) 및 제 1 스토리지 장치들(1200b, 1200c, 1200d) 각각은 도 1의 제 1 스토리지 장치(1200)에 대응할 수 있다. 착탈식 스토리지 장치(1300a) 및 제 2 스토리지 장치들(1300b, 1300c, 1300d) 각각은 도 1의 제 2 스토리지 장치(1300)에 대응할 수 있다. 도 1을 참조하여 설명된 것과 같이, 도 2a 내지 도 2d의 구성들은 사용자 요구를 충족시키면서도 경제적인 혜택을 가져올 수 있다.
예로서, 도전 패턴들(W1, W2, W3, W6, W7, W8, W9)은 PCB(Printed Circuit Board) 또는 메인보드(1001) 상에 형성되는 도전성 물질일 수 있다. 예로서, 도전 패턴들(W1, W2, W3, W6, W7, W8, W9) 각각은 와이어 패턴(Wire Pattern), 트레이스 패턴(Trace Pattern) 등을 포함할 수 있다. 예로서, 도전성 물질은 와이어, 트레이스, 도전판(Conductive Plate) 등으로 구현될 수 있다. 다만, 이 예들은 본 발명을 한정하기 위한 것은 아니다.
도 3은 도 1의 스토리지 시스템(1000)에서 채용될 수 있는 예시적인 인터페이스 규약에 따른 계층 구조를 보여주는 블록도이다. 예로서, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)은 서로 통신하기 위해, MIPI(Mobile Industry Processor Interface) 연합(Alliance)에 의해 제안된 UFS 규약에 따라 구현될 수 있다.
도 3의 예에서, 연산 처리 장치(1100)는 M-PHY 계층(L1#0), PHY 어댑터(Adapter) 계층(L1.5#0), 데이터 링크 계층(L2#0), 네트워크 계층(L3#0), 전송 계층(L4#0), 및 어플리케이션/HCI(Host Controller Interface) 계층(LA#0, 이하 어플리케이션 계층)을 포함할 수 있다. 연산 처리 장치(1100)의 계층들(L1#0, L1.5#0, L2#0, L3#0, L4#0, LA#0) 각각은 고유의 기능(들)을 수행하기 위해, 물리적인 하드웨어 회로, 및/또는 프로세서 코어에 의해 실행되는 프로그램 코드를 포함할 수 있다.
제 1 스토리지 장치(1200)는 M-PHY 계층들(L1#1a, L1#1b), PHY 어댑터 계층들(L1.5#1a, L1.5#1b), 데이터 링크 계층들(L2#1a, L2#1b), 네트워크 계층들(L3#1a, L3#1b), 전송 계층들(L4#1a, L4#b), 및 어플리케이션/UTP(UFS Transport Protocol) 계층(LA#1, 이하 어플리케이션 계층)을 포함할 수 있다. 제 1 스토리지 장치(1200)의 계층들(L1#1a, L1#1b, L1.5#1a, L1.5#1b, L2#1a, L2#1b, L3#1a, L3#1b, L4#1a, L4#b, LA#1)은 도 1의 컨트롤러(1331)에 포함될 수 있다. 제 1 스토리지 장치(1200)의 계층들(L1#1a, L1#1b, L1.5#1a, L1.5#1b, L2#1a, L2#1b, L3#1a, L3#1b, L4#1a, L4#b, LA#1) 각각은 고유의 기능(들)을 수행하기 위해, 하드웨어 회로, 및/또는 프로세서 코어에 의해 실행되는 프로그램 코드를 포함할 수 있다.
제 2 스토리지 장치(1300)는 M-PHY 계층(L1#2), PHY 어댑터 계층(L1.5#2), 데이터 링크 계층(L2#2), 네트워크 계층(L3#2), 전송 계층(L4#2), 및 어플리케이션/UTP 계층(LA#2)을 포함할 수 있다. 제 2 스토리지 장치(1300)의 계층들(L1#2, L1.5#2, L2#2, L3#2, L4#2, LA#2)은 도 1의 컨트롤러(1332)에 포함될 수 있다. 제 2 스토리지 장치(1300)의 계층들(L1#2, L1.5#2, L2#2, L3#2, L4#2, LA#2) 각각은 고유의 기능(들)을 수행하기 위해, 하드웨어 회로, 및/또는 프로세서 코어에 의해 실행되는 프로그램 코드를 포함할 수 있다.
M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2) 각각은 패킷을 송수신하기 위해 통신 회로(예컨대, 송신기/수신기, 변조기/복조기, 부호화기/복호화기, 발진기 등)를 포함할 수 있다. 연산 처리 장치(1100)의 M-PHY 계층(L1#0)은 포트들(PORT#0, PORT#1a)을 통해 제 1 스토리지 장치(1200)의 M-PHY 계층(L1#1a)과 패킷을 교환할 수 있고, 제 1 스토리지 장치(1200)의 M-PHY 계층(L1#1b)은 포트들(PORT#1b, PORT#2)을 통해 제 2 스토리지 장치(1300)의 M-PHY 계층(L1#2)과 패킷을 교환할 수 있다. 예로서, M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2) 각각은 물리 계층으로서, MIPI 연합에 의해 제안된 M-PHY 규약에 따라 구현될 수 있다.
PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2)은 각각 M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2)의 통신 환경들을 관리할 수 있다. 예로서, PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2)은 각각 M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2)을 위해, 데이터 심볼을 처리하거나 전력을 제어할 수 있다. 데이터 링크 계층들(L2#0, L2#1a, L2#1b, L2#2) 각각은 데이터의 물리적인 전송 및 조합(Composition)을 관리할 수 있다. 네트워크 계층들(L3#0, L3#1a, L3#1b, L3#2) 각각은 통신 경로를 관리하거나 통신 타이밍을 다룰 수 있다. 전송 계층들(L4#0, L4#1a, L4#1b, L4#2) 각각은 데이터 오류를 검출하고 복구할 수 있다.
따라서, PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2), 데이터 링크 계층들(L2#0, L2#1a, L2#1b, L2#2), 네트워크 계층들(L3#0, L3#1a, L3#1b, L3#2), 및 전송 계층들(L4#0, L4#1a, L4#1b, L4#2)은 M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2)을 통해 송수신되는 패킷을 전달하고 변환할 수 있다. 예로서, PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2), 데이터 링크 계층들(L2#0, L2#1a, L2#1b, L2#2), 네트워크 계층들(L3#0, L3#1a, L3#1b, L3#2), 및 전송 계층들(L4#0, L4#1a, L4#1b, L4#2)은 링크 계층으로서, MIPI 연합에 의해 제안된 UniPro 규약에 따라 구현될 수 있다.
어플리케이션 계층들(LA#0, LA#1, LA#2)은 링크 계층을 통해 전달되는 패킷에 기초하여, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300) 상에서 통신 서비스를 제공할 수 있다. 어플리케이션 계층들(LA#0, LA#1, LA#2)은 상위 계층으로서, 연산 처리 장치(1100) 및 스토리지 장치들(1200, 1300)의 사용자로부터의 요청을 다룰 수 있다. 한편, M-PHY 계층들(L1#0, L1#1a, L1#1b, L1#2), PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2), 데이터 링크 계층들(L2#0, L2#1a, L2#1b, L2#2), 네트워크 계층들(L3#0, L3#1a, L3#1b, L3#2), 및 전송 계층들(L4#0, L4#1a, L4#1b, L4#2)은 하위 계층으로서, 어플리케이션 계층들(LA#0, LA#1, LA#2)을 위해 외부 장치와의 통신을 수행할 수 있다.
각 계층들 사이의 통신들은 상이한 데이터 포맷(Data Format)들을 갖는 패킷들에 기반할 수 있다. 예로서, 어플리케이션 계층들(LA#0, LA#1) 사이에서 교환되는 패킷의 데이터 포맷은 PHY 어댑터 계층들(L1.5#0, L1.5#1a) 사이에서 교환되는 패킷의 데이터 포맷과 상이할 수 있다. 예로서, 데이터 링크 계층들(L2#1b, L2#2) 사이에서 교환되는 패킷의 데이터 포맷은 전송 계층들(L4#1b, L4#2) 사이에서 교환되는 패킷의 데이터 포맷과 상이할 수 있다.
예로서, MIPI 연합에 의해 제안된 인터페이스 규약에 따르면, 어플리케이션 계층들(LA#0, LA#1, LA#2) 각각은 UPIU(UFS Protocol Information Unit) 포맷을 갖는 패킷을 통신하고 처리할 수 있다. 예로서, PHY 어댑터 계층들(L1.5#0, L1.5#1a, L1.5#1b, L1.5#2) 각각은 PACP 프레임(PHY Adapter Control Protocol Frame)을 포함하는 데이터 포맷을 갖는 패킷을 통신하고 처리할 수 있다. UPIU 포맷 및 PACP 프레임의 구성들은 통상의 기술자에 의해 잘 이해될 수 있으므로, 상세한 설명들은 생략될 것이다.
아래에서 설명될 실시 예들에서, 스토리지 시스템(1000)이 UFS 규약을 채용한 것으로 가정될 것이다. 그러나, 이 가정은 더 나은 이해를 돕기 위해 제공되는 것이고, 본 발명을 한정하기 위한 것은 아니다. 통상의 기술자는 아래의 설명들에 기초하여, UFS 규약 외의 다른 인터페이스 규약들에도 본 발명의 실시 예들을 응용할 수 있을 것이다.
도 4는 본 발명의 실시 예에 따른 직렬 인터페이스 프로토콜(Serial Interface Protocol)을 채용한 스토리지 시스템(2000)을 간략히 보여주는 블록도이다. 도 4를 참조하면, 스토리지 시스템(2000)은 연산 처리 장치(2100), 제 1 스토리지 장치(2200), 및 제 2 스토리지 장치(2300)를 포함할 수 있다. 본 발명의 스토리지 시스템(2000)은 전송 또는 수신 데이터나 제어 신호의 직렬화(Serialize) 또는 병렬화(Deserialize)를 수행하기 위한 레퍼런스 클록(RCK)을 케스-케이드 방식으로 전달한다.
연산 처리 장치(2100)는 스토리지 시스템(2000)의 제반 동작들을 관리하고 처리할 수 있다. 연산 처리 장치(2100)의 일반적인 기능은 앞서 설명된 도 1의 그것과 실질적으로 동일하다. 따라서, 연산 처리 장치(2100)의 제어 기능에 대한 설명은 생략하기로 한다. 하지만, 본 발명의 연산 처리 장치(2100)는 레퍼런스 클록(RCK_1)을 생성할 수 있다. 레퍼런스 클록(RCK_1)에 의해서 직-병렬화기(2140)에서 수행되는 데이터의 직-병렬 변환이 수행될 수 있다. 더불어, 연산 처리 장치(2100)는 생성된 레퍼런스 클록(RCK_1)을 제 1 스토리지 장치(2200)와 공유하기 위해 별도로 구비되는 클록 포트(CK_PT0, 1130)를 통해서 전송할 수 있다. 이러한 동작을 위해 연산 처리 장치(2100)는 코어 로직(2100), 클록 생성기(2120), 클록 포트(2130), 그리고 직-병렬화기(2140)를 포함할 수 있다.
고속 직렬 인터페이스를 사용한 데이터 전송을 위해, 클록 생성기(2120)는 높은 정밀성을 갖는 오실레이터(Oscillator)를 사용하여 레퍼런스 클록(RCK_1)을 생성할 것이다. 그리고 클록 생성기(2120)는 생성된 레퍼런스 클록(RCK_1)과 위상 고정 루프(PLL) 등을 사용하여 다양한 타깃 주파수의 클록 신호를 생성할 수 있다. 생성된 클록 신호(CK0)는 연산 처리 장치(2100) 내의 코어 로직(2110)에 제공될 것이다. 여기서, 코어 로직(2110)은 연산 처리 장치(2100) 내의 다양한 기능 블록들이나 IP들을 포괄하는 의미로 사용된다. 즉, 코어 로직(2110)은 데이터를 생성, 저장, 처리하기 위한 제반 기능 블록들을 포함할 것이다.
코어 로직(2110)에서 생성 또는 처리된 데이터가 제 1 스토리지 장치(2200)나 제 2 스토리지 장치(2300)로 전송될 수 있다. 이 경우, 직-병렬화기(2140)에 의해서 전송 데이터는 직렬 데이터로 변환된다. 고속의 직렬 전송을 위해서 직-병렬화기(2140)는 레퍼런스 클록(RCK_1)을 사용하여 전송 데이터를 고속 전송에 접합한 형태로 직렬화할 수 있다.
더불어, 클록 생성기(2120)에 의해서 생성된 레퍼런스 클록(RCK_1)은 클록 포트(1130)를 통해서 제 1 스토리지 장치(2200)에 전달될 수 있다. 클록 포트(1130)는 레퍼런스 클록(RCK_1)을 출력하기 위한 연산 처리 장치(2100)의 유일(Unique)한 클록 출력 포트일 수 있다. 즉, 연산 처리 장치(2100)는 제 1 스토리지 장치(2200)의 클록 입력 포트(CK_PT1a, 2230) 외에는 레퍼런스 클록(RCK_1)을 전달하지 않을 것이다.
제 1 스토리지 장치(2200)는 연산 처리 장치(2100)로부터 제공되는 레퍼런스 클록(RCK_1)을 사용하여 연산 처리 장치(2100) 및 제 2 스토리지 장치(2300)와의 고속 직렬 데이터 전송을 수행한다. 더불어, 제 1 스토리지 장치(2200)는 연산 처리 장치(2100)로부터 제공되는 레퍼런스 클록(RCK_1)을 바이패스하거나 또는 튜닝하여 제 2 스토리지 장치(2300)로 전달할 수 있다. 여기서, 제 2 스토리지 장치(2300)로 전달되는 레퍼런스 클록(RCK_2)은 레퍼런스 클록(RCK_1)과 동일한 클록 파라미터를 가질 수 있다. 또는, 레퍼런스 클록(RCK_2)은 레퍼런스 클록(RCK_1)의 증폭 또는 튜닝하여 신호 레벨(Amplitude)이나 듀티비(Duty ratio), 슬루 레이트(Slew rate) 등이 조정된 클록 신호일 수 있다.
제 1 스토리지 장치(2200)는 코어 로직(2210), 클록 제어 로직(2220), 클록 포트들(2230, 2235), 직-병렬화기들(2242, 2244)을 포함할 수 있다. 여기서, 코어 로직(2210)은 제 1 스토리지 장치(2200)에서 송수신되는 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 코어 로직(2210)은 직-병렬화기들(2242, 2244)에 전달되기 직전의 데이터, 명령어, 제어 신호들을 처리하기 위한 제반 기능 블록들을 포함한다. 예를 들면, 코어 로직(2210)은 메모리 블록이나, 스토리지 컨트롤러 등을 포함할 수 있을 것이다. 클록 제어 로직(2220)은 연산 처리 장치(2100)로부터 제공되는 레퍼런스 클록(RCK_1)을 사용하여 클록 신호(CK1)를 생성할 수 있다. 그리고 클록 제어 로직(2220)은 레퍼런스 클록(RCK_1)을 직-병렬화기들(2242, 2244)에 전달하거나, 제 2 스토리지 장치(2300)로 전달하기 위하여 클록 포트(2235)로 전달할 수 있다.
제 2 스토리지 장치(2300)는 제 1 스토리지 장치(2200)로부터 제공된 레퍼런스 클록(RCK_2)을 사용하여 제 1 스토리지 장치(2300)와 데이터를 교환할 수 있다. 제 2 스토리지 장치(2300)는 코어 로직(2310), 클록 제어 로직(2320), 클록 포트(2330), 직-병렬화기(2340)를 포함할 수 있다. 여기서, 코어 로직(2310)은 제 1 스토리지 장치(2200)와 교환하는 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 클록 제어 로직(2320)은 제 1 스토리지 장치(2200)로부터 제공되는 레퍼런스 클록(RCK_2)을 사용하여 클록 신호(CK2)를 생성할 수 있다. 그리고 클록 제어 로직(2320)은 레퍼런스 클록(RCK_2)을 직-병렬화기(2340)에 전달할 수 있다.
이상의 스토리지 시스템(200)의 구조에서, 레퍼런스 클록(RCK_1)이 제 1 스토리지 장치(2200)를 경유하지 않고 직접 제 2 스토리지 장치(2300)에 전달되기 위한 경로는 존재하지 않는다. 즉, 레퍼런스 클록도 케스-케이드(Cascade) 방식으로 스토리지 장치들(2200, 2300)에 전달될 것이다.
도 5는 도 4의 연산 처리 장치(2100)에 포함되는 클록 생성기(2120)의 구조를 예시적으로 보여주는 블록도이다. 도 5를 참조하면, 연산 처리 장치(2100)의 클록 생성기(2120)는 레퍼런스 클록(RCK_1)을 생성하는 오실레이터(2121)와 위상 고정 루프(PLL)를 포함할 수 있다.
오실레이터(2121)는 레퍼런스 클록(RCK_1)을 생성한다. 오실레이터(2121)는 다양한 환경에서 안정적인 주파수의 발진 신호를 생성할 수 있어야 한다. 이러한 기능을 위해 오실레이터(2121)는 온도 보상형 크리스털 오실레이터(TCXO)로 구성될 수 있다. 하지만, 오실레이터(2121)는 여기의 게시에만 국한되지 않는다. 예를 들면, 오실레이터(2121)는 VC-TCXO(Voltage controlled Temperature Compensate Crystal Oscillator), DTCXO(Digital Temperature Compensate Crystal Oscillator), PLXO(Phase Locked Loop Crystal Oscillator), SPXO(Simple Package Crystal Oscillator), VCXO(Voltage controlled Crystal Oscillator) 중 적어도 하나의 방식으로 구성될 수 있음은 잘 이해될 것이다.
위상 고정 루프(PLL)는 레퍼런스 클록(RCK_1)과 분주된 출력 클록(dCK0)을 사용하여 고정된 주파수의 출력 클록(CK0)을 생성한다. 위상 고정 루프(PLL)는 위상 검출기(2122), 차지 펌프(2123), 루프 필터(2124), 전압 제어 발진기(2125), 그리고 분주기(2126)를 포함할 수 있다.
위상 검출기(2122)는 레퍼런스 클록(RCK_1)과 분주기(2126)를 통해서 피드백된 신호와의 위상 차이를 검출한다. 위상 검출기(2122)는 레퍼런스 클록(RCK_1)과 분주된 출력 클록(dCK0)의 위상을 비교하여 두 신호의 위상차(또는, 주파수 차이)에 대응하는 신호를 출력한다. 예를 들면, 위상 검출기(2122)는 두 신호의 위상차에 대응하는 폭을 가지는 펄스를 출력할 수도 있다.
차지 펌프(2123)는 위상 검출기(2122)의 출력 펄스를 사용하여 전압을 생성한다. 예를 들면, 위상 검출기(2122)의 출력 펄스 폭에 따라서 차지 펌프(2123)는 출력 노드에 공급되는 전하의 양을 가변할 수 있다. 결국, 출력 노드로 공급되는 전류를 가변하여, 출력 노드의 전압의 크기가 형성된다. 루프 필터(2124)는 차지 펌프(2123)로부터 출력되는 전압 신호로부터 고주파 성분을 제거한다. 즉, 루프 필터(2124)는 저역 필터(Low Pass Filter)에 대응한다. 전압 제어 발진기(2125)는 입력 신호의 레벨에 따른 주파수의 신호를 출력한다. 전압 제어 발진기(2125)의 출력이 안정된 위상(또는, 주파수)을 가지는 클록 신호로 사용될 수 있다.
분주기(2126)는 전압 제어 발진기(2125)의 출력 신호를 위상 검출기(2122)로 피드백하기 위한 구성이다. 전압 제어 발진기(2125)의 출력 신호 주파수는 실질적으로 너무 높아서 레퍼런스 클록(RCK_1)과 비교하기 어렵다. 따라서, 분주기(2126)를 통해 출력 클록(CK0)의 주파수를 적절한 비율로 나누어서 레퍼런스 클록(RCK_1)과 비교가 용이하도록 조정한다.
이상의 연산 처리 장치(2100)에 포함되는 클록 생성기(2120)는 레퍼런스 클록(RCK_1)을 생성할 수 있다. 그리고 생성된 레퍼런스 클록(RCK_1)을 소스로 연산 처리 장치(2100)의 내부 동작을 위한 클록(CK0)이 생성될 수 있다. 더불어, 클록 생성기(2120)에서 생성된 레퍼런스 클록(RCK_1)은 케스-케이드(Cascade) 방식으로 제 1 스토리지 장치(2200)에 전달될 수 있다.
도 6a 및 도 6b는 도 4의 제 1 스토리지 장치(2200)에 구비되는 클록 제어 회로(2220)의 예시적인 구성을 보여주는 블록도들이다. 도 6a는 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(2300)로 바이패스하는 클록 제어 회로(2220a)를 보여준다. 도 6b는 레퍼런스 클록(RCK_1)을 튜닝하여 제 2 스토리지 장치(2300)로 전달하는 클록 제어 회로(2220b)를 예시적으로 보여준다.
도 6a를 참조하면, 일 실시 예에 따른 클록 제어 회로(2220a)는 레퍼런스 클록(RCK_1)을 위상 고정 루프(PLL)를 사용하여 내부 클록(CK1)으로 생성할 수 있다. 위상 고정 루프(PLL)를 사용한 내부 클록(CK1)의 생성 과정은 앞서 설명된 도 5의 설명과 유사하므로 이에 대한 설명은 생략하기로 한다. 더불어, 클록 제어 회로(2220a)는 레퍼런스 클록(RCK_1)을 별도로 처리하지 않고 제 2 스토리지 장치(2300)로 전달하기 위하여 클록 포트(2235)로 전달할 수 있을 것이다. 즉, 클록 제어 회로(2220a)는 연산 처리 장치(2100)로부터 제공된 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(2300)로 바이패스(Bypass)시킬 수 있다. 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(2300)로 바이패스(Bypass)시키기 위해, 도시되지는 않았지만, 지연 제어 회로들이 더 포함될 수 있음은 잘 이해될 것이다.
도 6b를 참조하면, 다른 실시 예에 따른 클록 제어 회로(2220b)는 위상 고정 루프(PLL)를 사용하여 레퍼런스 클록(RCK_1)으로부터 내부 클록(CK1)을 생성할 수 있다. 특히, 클록 제어 회로(2220b)는 레퍼런스 클록(RCK_1)을 튜닝할 수 있는 레퍼런스 클록 튜너(2227)를 포함할 수 있다. 레퍼런스 클록 튜너(2227)는 레퍼런스 클록(RCK_1)의 전압 레벨, 슬루 레이트(Slew rate), 듀티비, 구동 강도 등의 파라미터를 제 2 스토리지 장치(2300)의 요구 조건에 적합하게 조정할 수 있다. 즉, 파형 제어 신호(Waveform CNTL)를 참조하여 레퍼런스 클록 튜너(2227)는 레퍼런스 클록(RCK_1)을 튜닝하여 레퍼런스 클록(RCK_2)으로 생성할 수 있다. 더불어, 레퍼런스 클록 튜너(2227)는 인에이블 신호(EN)에 따라 레퍼런스 클록(RCK_1)이 제 2 스토리지 장치(2300)로 전달되는 것을 차단할 수도 있을 것이다.
도 7은 제 2 스토리지 장치(2300)에 구비된 클록 제어 회로(2320)를 보여주는 블록도이다. 도 7을 참조하면, 제 2 스토리지 장치(2300)의 클록 제어 회로(2320)는 레퍼런스 클록(RCK_2)을 이용하여 내부 클록 신호(CK2)를 생성할 수 있다. 클록 제어 회로(2320)는 위상 고정 루프(PLL)로 구성될 수 있다. 즉, 클록 제어 회로(2320)는 위상 검출기(2322), 차지 펌프(2323), 루프 필터(2324), 전압 제어 발진기(2325), 그리고 분주기(2326)를 포함할 수 있다. 위상 고정 루프(PLL)의 동작은 앞서 설명된 도 5의 그것과 실질적으로 동일하므로, 이것에 대한 설명은 생략하기로 한다.
도 8은 도 4의 스토리지 시스템(2000)의 제 1 스토리지 장치(2200)에서 수행되는 레퍼런스 클록(RCK_1)의 처리 절차를 예시적으로 보여주는 순서도이다. 도 8을 참조하면, 제 1 스토리지 장치(2200)는 제 2 스토리지 장치(2300)의 접근 모드에 따라 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(2300)로 전달하거나 차단할 수 있다.
S110 단계에서, 제 1 스토리지 장치(2200)는 연산 처리 장치(2100)로부터 명령어(CMD)나 쿼리(Query)를 수신한다. 이때, 연산 처리 장치(2100)로부터 레퍼런스 클록(RCK_1)도 제 1 스토리지 장치(2200)에 제공되고 있다고 가정한다.
S120 단계에서, 제 1 스토리지 장치(2200)는 연산 처리 장치(2100)로부터 수신된 명령어(CMD)나 쿼리(Query)를 참조하여 제 2 스토리지 장치(2300)의 접근 모드를 결정한다. 예를 들면, 제 1 스토리지 장치(2200)는 명령어(CMD)나 쿼리(Query)를 디코딩하여 연산 처리 장치(2100)에 의한 제 2 스토리지 장치(2300)로의 접근 여부 및 접근 모드를 판단할 수 있다.
S130 단계에서, 제 2 스토리지 장치(2300)로의 접근 여부가 판단될 수 있다. 즉, 연산 처리 장치(2100)가 제 2 스토리지 장치(2300)에 데이터를 기입하거나, 제 2 스토리지 장치(2300)에 저장된 데이터를 요청했는지를 판단할 수 있다. 만일, 연산 처리 장치(2100)가 제 2 스토리지 장치(2300)로의 접근을 요청한 경우(Yes 방향), 절차는 S140 단계로 이동한다. 반면, 제 2 스토리지 장치(2300)로의 접근 요청이 없는 경우(No 방향), 절차는 S160 단계로 이동한다.
S140 단계에서, 제 2 스토리지 장치(2300)로의 접근 모드가 고속 모드인지 판단된다. 만일, 제 2 스토리지 장치(2300)로의 접근 모드가 고속 모드인 경우(Yes 방향), 절차는 S150 단계로 이동한다. 반면, 제 2 스토리지 장치(2300)로의 접근 모드가 고속 모드가 아닌 경우(No 방향), 절차는 S160 단계로 이동한다.
S150 단계에서, 제 1 스토리지 장치(2200)는 연산 처리 블록(2100)으로부터 제공된 레퍼런스 클록(RCK_1)을 바이패스 또는 튜닝한 레퍼런스 클록(RCK_2)을 제 2 스토리지 장치(2300)로 전달한다. 여기서, 레퍼런스 클록(RCK_2)은 레퍼런스 클록(RCK_1)과 동일한 클록일 수 있다. 또는, 레퍼런스 클록(RCK_2)은 레퍼런스 클록(RCK_1)을 지연한 클록일 수 있다. 더불어, 레퍼런스 클록(RCK_2)은 레퍼런스 클록(RCK_1)의 파형이 튜닝된 클록일 수도 있음은 잘 이해될 것이다.
S160 단계에서, 제 1 스토리지 장치(2200)는 제 2 스토리지 장치(2300)로의 접근을 저속 모드에 따라 수행한다. 예를 들면, 제 1 스토리지 장치(2200)는 제 2 스토리지 장치(2300)로의 접근을 레퍼런스 클록(RCK_1)의 전달없이 수행할 수 있다. 이때, 제 1 스토리지 장치(2200)와 제 2 스토리지 장치(2300)의 클록 포트들(2235, 2330)은 비활성화될 것이다.
도 9는 본 발명의 다른 실시 예에 따른 스토리지 시스템(3000)을 보여주는 블록도이다. 도 9를 참조하면, 스토리지 시스템(3000)은 연산 처리 장치(3100), 제 1 스토리지 장치(3200), 및 제 2 스토리지 장치(3300)를 포함할 수 있다. 본 발명의 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터의 레퍼런스 클록(RCK_1)과는 독립적으로 레퍼런스 클록(RCK_2)을 생성하여 제 2 제 2 스토리지 장치(3300)에 공급할 수 있다.
연산 처리 장치(3100)는 레퍼런스 클록(RCK_1)을 생성하여, 케스-케이드(Cascade) 방식으로 제 1 스토리지 장치(3200) 및 제 2 스토리지 장치(3300)에 공급할 수 있다. 연산 처리 장치(3100)는 생성된 레퍼런스 클록(RCK_1)을 제 1 스토리지 장치(3200)로 공급하기 위한 클록 포트(CK_PT0, 3130)를 포함할 수 있다. 연산 처리 장치(3100)는 코어 로직(3110), 클록 생성기(3120), 그리고 클록 포트(3130)를 포함할 수 있다. 연산 처리 장치(3100)와 제 1 스토리지 장치(3200) 및 제 2 스토리지 장치(3300)의 데이터 전송이 직렬 인터페이싱 방식에만 국한되지 않는다. 코어 로직(3110), 클록 생성기(3120), 그리고 클록 포트(3130)의 구성은 앞서 설명된 도 4의 그것들과 실질적으로 동일할 수 있다. 따라서, 이것들에 대한 설명은 생략될 것이다. 연산 처리 장치(3100)는 접근 모드에 따라 레퍼런스 클록(RCK_1)을 제 1 스토리지 장치(3200)에 선택적으로 제공할 수 있다. 예를 들면, 저속 모드(Low speed mode)에서, 연산 처리 장치(3100)는 레퍼런스 클록(RCK_1)을 제 1 스토리지 장치(3200)에 제공하지 않을 수도 있다.
제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 제공되는 레퍼런스 클록(RCK_1)을 사용하여 연산 처리 장치(3100) 및 제 2 스토리지 장치(3300)와의 데이터 전송을 수행할 수 있다. 더불어, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 레퍼런스 클록(RCK_1)이 제공되지 않는 경우에도 제 2 스토리지 장치(3300)와의 고속 직렬 데이터 전송을 수행할 수 있다. 제 1 스토리지 장치(3200)는 내부에 레퍼런스 클록(RCK_2)을 생성하는 오실레이터(3222)를 구비하고 있다. 따라서, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)와는 저속 모드(Low speed mode) 또는 펄스폭 변조(PWM) 신호 방식으로 데이터를 교환하고, 제 2 스토리지 장치(3300)와는 고속 직렬 인터페이싱 방식으로 데이터를 교환할 수 있다.
이러한 기능을 위해 제 1 스토리지 장치(3200)는 코어 로직(3210), 클록 제어 로직(3220), 클록 포트들(3230, 3235)을 포함할 수 있다. 여기서, 코어 로직(3210)은 제 1 스토리지 장치(3200)의 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 코어 로직(3210)은 데이터, 명령어, 제어 신호들을 처리하기 위한 제반 기능 블록들을 포함할 수 있다. 예를 들면, 코어 로직(3210)은 메모리 블록이나, 스토리지 컨트롤러 등을 포함할 수 있을 것이다.
클록 제어 로직(3220)은 연산 처리 장치(3100)로부터 제공되는 레퍼런스 클록(RCK_1)을 사용하여 클록 신호(CK1)를 생성할 수 있다. 클록 제어 로직(3220)은 레퍼런스 클록(RCK_1)을 사용하여 연산 처리 장치(3100)나 제 2 스토리지 장치(3300)와의 데이터 교환을 위한 클록 신호를 생성할 수 있다. 하지만, 연산 처리 장치(3100)에서 레퍼런스 클록(RCK_1)이 제공되지 않는 상황에서도, 제 1 스토리지 장치(3200)가 제 2 스토리지 장치(3300)와는 고속 직렬 인터페이싱 방식으로 데이터를 교환하는 경우가 있다. 이 경우에는, 클록 제어 로직(3220)은 내부의 오실레이터(3222)로부터 생성된 레퍼런스 클록(RCK_2)을 사용하여 제 2 스토리지 장치(3300)와의 데이터 교환을 위한 클록 신호를 생성할 수 있다. 더불어, 제 1 스토리지 장치(3200)는 생성된 레퍼런스 클록(RCK_2)을 클록 포트(3235)를 통해 제 2 스토리지 장치(3300)에 제공할 수 있다.
제 2 스토리지 장치(3300)는 제 1 스토리지 장치(3200)로부터 제공된 레퍼런스 클록(RCK_2)을 사용하여 제 1 스토리지 장치(3300)와 고속 직렬 인터페이싱 방식으로 데이터를 교환할 수 있다. 제 2 스토리지 장치(3300)는 코어 로직(3310), 클록 제어 로직(3320), 그리고 클록 포트(3330)를 포함할 수 있다. 여기서, 코어 로직(3310)은 제 1 스토리지 장치(3200)와 교환하는 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 클록 제어 로직(3320)은 제 1 스토리지 장치(3200)로부터 제공되는 레퍼런스 클록(RCK_2)을 사용하여 클록 신호(CK2)를 생성할 수 있다. 그리고 클록 제어 로직(3320)은 레퍼런스 클록(RCK_2)을 사용하여 제 1 스토리지 장치(3200)와의 데이터 교환을 위한 직-병렬화 처리에 사용할 수 있다.
이상의 스토리지 시스템(3000)의 구조에서, 연산 처리 장치(3100)로부터 레퍼런스 클록(RCK_1)이 제 1 스토리지 장치(3200)에 제공되지 않더라도, 제 1 스토리지 장치(3200)는 제 2 스토리지 장치(3300)와 고속 직렬 데이터를 교환할 수 있다. 즉, 제 1 스토리지 장치(3200)는 자체적으로 제 2 스토리지 장치(3300)와의 고속 데이터 교환을 위한 레퍼런스 클록(RCK_2)을 생성할 수 있다. 그리고 도시되지는 않았지만, 제 2 스토리지 장치(3300)와 케스-케이드(Cascade) 방식으로 연결되는 스토리지 장치들에도 레퍼런스 클록(RCK_2)이 제공될 수 있음은 잘 이해될 것이다.
도 10은 도 9의 제 1 스토리지 장치(3200)에 구비되는 클록 제어 로직(3320)의 구성을 예시적으로 보여주는 블록도이다. 도 10을 참조하면, 클록 제어 로직(3320)은 위상 고정 루프(3221), 오실레이터(3222), 그리고 선택 로직(3223)을 포함할 수 있다.
위상 고정 루프(3221)는 제 1 스토리지 장치(3200)의 코어 로직(3210)에서 사용되는 클록 신호(CK1)를 생성한다. 위상 고정 루프(3221)는 연산 처리 장치(3100)로부터 제공되는 레퍼런스 클록(RCK_1) 또는 오실레이터(3222)에서 자체 생성된 레퍼런스 클록(RCK) 중 어느 하나를 이용하여 클록 신호(CK1)를 생성할 수 있다. 제 1 스토리지 장치(3200)로부터 레퍼런스 클록(RCK_1)이 제공되는 동작 모드에서, 위상 고정 루프(3221)는 레퍼런스 클록(RCK_1)을 사용하여 클록 신호(CK1)를 생성할 것이다. 이때, 위상 고정 루프(3221)는 동작 모드에 따른 선택 신호(SEL)에 응답하여 레퍼런스 클록(RCK_1) 또는 레퍼런스 클록(RCK) 중 어느 하나를 선택할 수 있다.
오실레이터(3222)는 레퍼런스 클록(RCK)을 생성한다. 오실레이터(3222)는 연산 처리 장치(3100)로부터 레퍼런스 클록(RCK_1)이 제공되지 않는 동작 모드에서 클록 신호(CK1)와 제 2 스토리지 장치(3300)에 제공될 레퍼런스 클록(RCK_2)을 제공하기 위한 구성이다. 높은 정밀도를 갖는 레퍼런스 클록(RCK)을 생성하기 위해 오실레이터(3222)는 온도 보상형 크리스털 오실레이터(TCXO)를 포함할 수 있다. 하지만, 오실레이터(2121)는 여기의 게시에만 국한되지 않음은 잘 이해될 것이다.
선택 로직(3223)은 레퍼런스 클록(RCK_1)과 레퍼런스 클록(RCK) 중 어느 하나를 선택하여 제 2 스토리지 장치(3300)에 전달되는 레퍼런스 클록(RCK_2)으로 제공할 수 있다. 제 2 스토리지 장치(3300)에 대한 접근 모드에 따라 결정되는 선택 신호(SEL)에 응답하여, 선택 로직(3223)은 레퍼런스 클록(RCK_1) 또는 레퍼런스 클록(RCK)을 선택할 수 있다. 만일, 연산 처리 장치(3100)와 제 1 스토리지 장치(3200)의 데이터 교환이 저속 모드(Low speed mode)이고, 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300)간의 데이터 교환은 고속 모드(High speed mode)인 경우, 선택 로직(3223)은 레퍼런스 클록(RCK)을 선택할 수 있다.
이상에서는 제 1 스토리지 장치(3200)에 구비되는 클록 제어 로직(3320)의 구성이 예시적으로 설명되었다. 클록 제어 로직(3320)에 의해서 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 레퍼런스 클록(RCK_1)이 공급되지 않더라도, 제 2 스토리지 장치(3300)와는 고속 직렬 데이터 교환을 수행할 수 있다.
도 11은 도 9의 제 1 스토리지 장치(3200)에서 수행되는 레퍼런스 클록의 처리 방법을 예시적으로 보여주는 순서도이다. 도 11을 참조하면, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터의 레퍼런스 클록(RCK_1) 없이도, 제 2 스토리지 장치(3300)와의 고속 전송 모드를 지원하기 위한 레퍼런스 클록(RCK_2)을 생성할 수 있다. 이러한 레퍼런스 클록(RCK_2)의 생성에 따라 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)의 레퍼런스 클록(RCK_1)의 제공 여부에 상관없이 제 2 스토리지 장치(3300)와 고속의 직렬 데이터 전송이 가능하다.
S210 단계에서, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 명령어(CMD)나 쿼리(Query)를 수신할 수 있다. 연산 처리 장치(3100)는 제 1 스토리지 장치(3200)와 레퍼런스 클록(RCK_1)을 사용하는 고속 직렬 전송 방식으로 통신할 수 있다. 이러한 접근 모드를 고속 모드(High Speed Mode: HS)라 칭하기로 한다. 연산 처리 장치(3100)는 제 1 스토리지 장치(3200)와 레퍼런스 클록(RCK_1)을 사용하지 않는 저속 모드(Low Speed Mode: LS) 모드로 통신할 수 있다. 예를 들면, 연산 처리 장치(3100)는 레퍼런스 클록(RCK_1)의 전달없이 펄스폭 변조(PWM) 방식으로 제 1 스토리지 장치(3200)에 데이터를 전송할 수 있다. 더불어, 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300) 사이의 접근 모드도 레퍼런스 클록(RCK_1 또는 RCK_2)을 사용하는 고속 모드(HS)와 레퍼런스 클록(RCK_1 또는 RCK_2)의 사용없이 이루어지는 저속 모드를 포함한다.
S220 단계에서, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 수신된 명령어(CMD)나 쿼리(Query) 또는 레퍼런스 클록(RCK_1)의 존재 여부에 따라 접근 모드를 판단한다. 즉, 연산 처리 장치(3100)와 제 1 스토리지 장치(3200) 간의 제 1 접근 모드와 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300) 간의 제 2 접근 모드가 결정될 수 있다.
S230 단계에서, 제 1 스토리지 장치(3200)는 제 2 스토리지 장치(3200)에 대한 접근 요청이 존재하지 않는지 판단할 것이다. 만일, 제 2 스토리지 장치(3200)로의 어떠한 접근 요청도 존재하지 않는 경우, 절차는 S270 단계로 이동할 수 있다. 반면, 제 2 스토리지 장치(3200)로의 접근 요청이 존재하는 경우, 절차는 S240 단계로 이동한다.
S240 단계에서, 제 1 스토리지 장치(3200)는, 연산 처리 장치(3100)와 제 1 스토리지 장치(3200) 간의 제 1 접근 모드와 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300) 간의 제 2 접근 모드에 따라 동작 분기를 수행한다. 만일, 제 1 접근 모드 및 제 2 접근 모드가 각각 고속 모드(HS/HS)인 경우, 절차는 S250 단계로 이동할 것이다. 제 1 접근 모드가 저속 모드(LS)이고, 제 2 접근 모드가 고속 모드(LS/HS)인 경우, 절차는 S260 단계로 이동할 것이다. 그리고 제 2 접근 모드가 저속 모드인 경우들(HS/LS, LS/LS)에서 절차는 S270 단계로 이동할 것이다.
S250 단계에서, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 제공된 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(3300)에 전달할 것이다. 이때, 제 1 스토리지 장치(3200)는 레퍼런스 클록(RCK_1)을 바이패스 시키거나 튜닝한 후에 전달할 수도 있음을 잘 이해될 것이다.
S260 단계에서, 제 1 스토리지 장치(3200)는 제 2 스토리지 장치(3300)와의 고속 데이터 전송을 위해 레퍼런스 클록(RCK_2)을 제공한다. 레퍼런스 클록(RCK_2)은 제 1 스토리지 장치(3200)의 내부에 구비되는 오실레이터(3222)로부터 생성된 클록 신호이다.
S270 단계에서, 제 1 스토리지 장치(3200)는 제 2 스토리지 장치(3300)로 전달되는 레퍼런스 클록(RCK_2)을 차단할 것이다. 따라서, 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300)의 데이터 교환은 중지되거나, 펄스폭 변조 방식과 같은 저속 모드(LS)에 따라 데이터 교환이 이루어질 수 있다.
이상에서는, 연산 처리 장치(3100)와 제 1 스토리지 장치(3200) 간, 그리고 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300) 간의 접근 모드에 따라 레퍼런스 클록의 전달 방법이 설명되었다. 상술한 방법에 따라 케스-케이드(Cascade) 방식으로 연결되는 스토리지 시스템(3000)에서 높은 신뢰성 및 효율성을 갖는 레퍼런스 클록이 제공될 수 있다.
도 12는 도 9의 스토리지 시스템(3000)에서 장치들 간의 레퍼런스 클록 전달 절차를 도식적으로 보여주는 도면이다. 도 12를 참조하면, 연산 처리 장치(3100)로부터 레퍼런스 클록(RCK_1)의 제공 여부에 상관없이 제 1 스토리지 장치(3200)는 제 2 스토리지 장치(3300)에 레퍼런스 클록(RCK_2)을 제공할 수 있다.
S10 단계에서, 연산 처리 장치(3100)는 명령어(CMD)나 레퍼런스 클록(RCK_1)을 제 1 스토리지 장치(3200)에 전달할 것이다. 명령어(CMD)를 통해서 연산 처리 장치(3100)는 제 1 스토리지 장치(3100)로만 접근하거나, 제 1 스토리지 장치(3100)를 경유하여 제 2 스토리지 장치(3300)에 접근할 수 있다.
S20 단계에서, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터의 명령어나 레퍼런스 클록(RCK_1)을 이용하여 스토리지 시스템(3000)의 장치들간 접근 모드를 판단할 것이다. 여기서, 연산 처리 장치(3100)와 제 1 스토리지 장치(3200) 간의 접근 모드를 제 1 접근 모드로, 제 1 스토리지 장치(3200)와 제 2 스토리지 장치(3300) 간의 접근 모드를 제 2 접근 모드라 칭하기로 한다.
S22 단계에서, 제 1 접근 모드 및 제 2 접근 모드 모두가 고속 모드인 경우(HS/HS)에 레퍼런스 클록의 처리 방법이 도시되어 있다. 즉, 제 1 스토리지 장치(3200)는 연산 처리 장치(3100)로부터 제공된 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(3300)로 전달할 것이다.
S24 단계에서, 제 1 접근 모드는 저속 모드(LS), 제 2 접근 모드는 고속 모드인 경우(LS/HS)의 레퍼런스 클록의 처리 방법이 도시되어 있다. 즉, 제 1 스토리지 장치(3200)는 내부에서 생성된 레퍼런스 클록(RCK')을 제 2 스토리지 장치(3300)로 전달할 것이다.
S26 단계에서, S22 단계와 S24 단계에 해당하지 않는 기타 접근 모드에서의 레퍼런스 클록의 처리 방법이 보여준다. 즉, 제 1 접근 모드에 상관없이 제 2 스토리지 장치(3300)로의 접근 요청이 존재하지 않으면, 제 2 스토리지 장치(3300)로의 레퍼런스 클록의 전달은 차단될 것이다.
도 13은 본 발명의 또 다른 실시 예에 따른 스토리지 시스템(4000)을 보여주는 블록도이다. 도 13을 참조하면, 스토리지 시스템(4000)은 제 1 스토리지 장치(4100) 및 제 2 스토리지 장치(4200)를 포함한다. 본 발명의 제 1 스토리지 장치(4100)는 레퍼런스 클록(RCK_1)을 생성하여 제 2 스토리지 장치(4200)에 공급할 수 있다.
제 1 스토리지 장치(4100)는 레퍼런스 클록(RCK_1)을 생성하여, 케스-케이드(Cascade) 방식으로 제 2 스토리지 장치(3200)에 공급할 수 있다. 제 1 스토리지 장치(4100)는 생성된 레퍼런스 클록(RCK_1)을 제 2 스토리지 장치(4200)로 공급하기 위한 클록 포트(CK_PT0, 4140)를 포함할 수 있다. 제 1 스토리지 장치(4100)는 코어 로직(4110), 오실레이터(4120), 위상 고정 루프(4130), 그리고 클록 포트(4140)를 포함할 수 있다.
여기서, 코어 로직(4110)은 제 1 스토리지 장치(4100)의 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 코어 로직(4110)은 데이터, 명령어, 제어 신호들을 처리하기 위한 제반 기능 블록들을 포함할 수 있다. 예를 들면, 코어 로직(4110)은 메모리 블록이나, 스토리지 컨트롤러 등을 포함할 수 있을 것이다.
오실레이터(4120)는 제 1 스토리지 장치(4100) 내부에서 생성되는 레퍼런스 클록(RCK_1)을 제공한다. 위상 고정 루프(4130)는 레퍼런스 클록(RCK_1)을 사용하여 코어 로직(4110)을 구동하기 위한 클록 신호(CK0)를 생성한다. 제 1 스토리지 장치(4100)는 클록 포트(4140)를 통해서 제 2 스토리지 장치(4200)에 케스-케이드(Cascade) 방식으로 레퍼런스 클록(RCK_1)을 제공한다.
제 2 스토리지 장치(4200)는 제 1 스토리지 장치(4100)로부터 제공된 레퍼런스 클록(RCK_1)을 사용하여 제 1 스토리지 장치(4100)와 고속 직렬 인터페이싱 방식으로 데이터를 교환할 수 있다. 제 2 스토리지 장치(4200)는 코어 로직(4210), 클록 제어 로직(4220), 레퍼런스 클록 튜닝 회로(4230), 그리고 클록 포트들(4240, 4250)을 포함할 수 있다.
여기서, 코어 로직(4210)은 데이터를 처리, 저장, 변환하기 위한 제반 기능 블록들을 포함할 것이다. 클록 제어 로직(4220)은 제 1 스토리지 장치(4100)로부터 제공되는 레퍼런스 클록(RCK_1)을 사용하여 클록 신호(CK1)를 생성할 수 있다. 제 1 스토리지 장치(4100)로부터 제공된 레퍼런스 클록(RCK_1)은 튜닝 절차를 거쳐서 클록 포트(4150)를 통해서 외부로 출력될 수 있다. 클록 포트(4250)에는 케스-케이드 방식으로 연결되는 또 다른 장치가 연결될 수 있을 것이다.
이상의 스토리지 시스템(4000)의 구조에 따르면, 케스-케이드(Cascade) 토폴로지를 갖는 복수의 스토리지 장치들 중 어느 하나의 스토리지 장치에서 레퍼런스 클록의 생성이 가능하다. 그리고 생성된 레퍼런스 클록은 데이터를 교환하는 다른 하나의 스토리지 장치로 전달될 수 있다.
도 14는 본 발명의 케스-케이드 방식을 사용하는 스토리지 시스템(5000)의 일 예를 보여주는 블록도이다. 도 14를 참조하면, 연산 처리 장치(5100)에서 공급되는 레퍼런스 클록(RCK)이 체인 형태로 다른 스토리지 장치들에 순차적으로 전달된다.
연산 처리 장치(5100)는 도 1, 도 4, 그리고 도 9에서 설명된 연산 처리 장치들(1100, 2100, 3100)에 대응할 수 있다. 연산 처리 장치(5100)는 내부에 안정적인 주파수의 레퍼런스 클록(RCK)을 생성하기 위한 오실레이터(5150)를 포함할 수 있다. 복수의 스토리지 장치들(5200 내지 5500) 각각은 도 1, 도 4, 그리고 도 9를 참조하여 설명된 제 1 스토리지 장치(1200, 3200,4200) 또는 제 2 스토리지 장치(1300, 2300, 4300)에 대응할 수 있다.
연산 처리 장치(5100)와 복수의 스토리지 장치들(5200 내지 5500)은 각각의 입출력 포트들을 통해 서로 체인 형태(또는 직렬 방식)로 연결될 수 있다. 더불어, 연산 처리 장치(5100)와 복수의 스토리지 장치들(5200 내지 5500)은 레퍼런스 클록(RCK)을 케스-케이드(Cascade) 방식으로 전달할 수 있다. 레퍼런스 클록(RCK)을 생성하는 연산 처리 장치(5100)가 케스-케이드의 시작이 될 수 있다. 그리고 레퍼런스 클록(RCK)을 최종적으로 제공받는 스토리지 장치(5500)가 케스-케이드의 가장 끝(Tail End)에 위치할 수 있다. 각각의 스토리지 장치들은 레퍼런스 클록(RCK)의 신호 레벨을 증폭하거나, 슬루율과 같은 타이밍 파라미터를 조정하는 튜닝 회로를 더 포함할 수도 있을 것이다.
도 15는 본 발명의 케스-케이드 방식을 사용하는 스토리지 시스템(6000)의 다른 예를 보여주는 블록도이다. 도 15를 참조하면, 연산 처리 장치(6100)로부터의 레퍼런스 클록의 공급 여부에 관계없이, 복수의 스토리지 장치들(6200 내지 6500) 중 어느 하나에서 레퍼런스 클록(RCK)의 생성이 가능하다.
연산 처리 장치(6100)와 복수의 스토리지 장치들(6200 내지 6500)은 데이터 입출력 포트들을 통해 케스-케이드 형태(또는 직렬 방식)로 연결될 수 있다. 더불어, 연산 처리 장치(6100)와 복수의 스토리지 장치들(6200 내지 6500)은 레퍼런스 클록(RCK)을 케스-케이드(Cascade) 방식으로 전달할 수 있다. 특히, 연산 처리 장치(6100)에서 레퍼런스 클록이 제공되지 않는 경우에도, 제 1 스토리지 장치(6200)에서 레퍼런스 클록(RCK)의 생성이 이루어질 수 있다. 각각의 스토리지 장치들은 레퍼런스 클록(RCK)의 신호 레벨을 증폭하거나, 슬루율과 같은 타이밍 파라미터를 조정하는 튜닝 회로를 더 포함할 수도 있을 것이다.
위에서 설명된 내용은 본 발명의 기술 사상을 구현하기 위한 구체적인 예들이다. 본 발명의 기술 사상은 위에서 설명된 실시 예들뿐만 아니라, 단순하게 설계 변경하거나 용이하게 변경하여 얻어질 수 있는 실시 예들도 포함할 것이다. 또한, 본 발명의 기술 사상에는 위에서 설명된 실시 예들에 기초하여 앞으로 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다.

Claims (20)

  1. 레퍼런스 클록을 생성하는 어플리케이션 프로세서;
    클록 입력 포트로 상기 어플리케이션 프로세서로부터 제공되는 레퍼런스 클록을 제공받고, 클록 출력 포트로 상기 레퍼런스 클록을 출력하며, 상기 레퍼런스 클록을 사용하여 상기 어플리케이션 프로세서와 통신하는 제 1 스토리지 장치; 그리고
    상기 클록 출력 포트로부터 출력되는 상기 레퍼런스 클록을 수신하여 상기 제 1 스토리지 장치와의 통신에 사용하는 제 2 스토리지 장치를 포함하는 전자 장치.
  2. 제 1 항에 있어서,
    상기 제 1 스토리지 장치는 상기 클록 입력 포트로 수신된 상기 레퍼런스 클록을 상기 클록 출력 포트로 전달하는 제 1 클록 제어 로직을 포함하는 전자 장치.
  3. 제 2 항에 있어서,
    상기 제 1 클록 제어 로직은 상기 클록 입력 포트로부터 제공된 상기 레퍼런스 클록을 상기 클록 출력 포트로 바이패스하거나, 상기 제 2 스토리지 장치의 포맷에 따라 튜닝하여 상기 클록 출력 포트로 전달하는 전자 장치.
  4. 제 2 항에 있어서,
    상기 제 1 클록 제어 로직은 상기 레퍼런스 클록을 사용하여 상기 제 1 스토리지 장치의 구동을 위한 클록 신호를 생성하는 위상 고정 루프를 포함하는 전자 장치.
  5. 제 1 항에 있어서,
    상기 제 1 스토리지 장치는, 상기 클록 입력 포트로 수신된 상기 레퍼런스 클록을 사용하여 상기 어플리케이션 프로세서 또는 상기 제 2 스토리지 장치와의 데이터 교환을 위한 직-병렬화를 수행하는 직-병렬화기를 포함하는 전자 장치.
  6. 제 1 항에 있어서,
    상기 제 1 스토리지 장치는 상기 어플리케이션 프로세서가 상기 레퍼런스 클록을 제공하지 않는 경우, 상기 클록 출력 포트를 차단하는 전자 장치.
  7. 제 1 항에 있어서,
    상기 제 1 스토리지 장치는 임베디드 스토리지이고, 상기 제 2 스토리지 장치는 착탈식 스토리지인 것을 특징으로 하는 전자 장치.
  8. 제 1 항에 있어서,
    상기 어플리케이션 프로세서와 상기 제 1 스토리지 장치, 상기 제 2 스토리지 장치는 케스-케이드 구조로 연결되어 직렬 데이터 통신을 수행하는 전자 장치.
  9. 어플리케이션 프로세서;
    상기 어플리케이션 프로세서와 통신하며, 오실레이터를 사용하여 레퍼런스 클록을 생성하여 클록 출력 포트로 출력하는 제 1 스토리지 장치; 그리고
    상기 클록 출력 포트로부터 출력되는 상기 레퍼런스 클록을 수신하여 상기 제 1 스토리지 장치와의 통신에 사용하는 제 2 스토리지 장치를 포함하되,
    상기 어플리케이션 프로세서는 상기 제 1 스토리지 장치를 경유하여 상기 제 2 스토리지 장치와 통신하는 전자 장치.
  10. 제 9 항에 있어서,
    상기 어플리케이션 프로세서는 상기 제 1 스토리지 장치와 전송 속도에 따라 제 1 통신 모드와 제 2 통신 모드로 데이터를 교환하되, 상기 제 2 통신 모드는 상기 제 1 통신 모드보다 낮은 전송 속도에 대응하는 전자 장치.
  11. 제 10 항에 있어서,
    상기 제 1 통신 모드시, 상기 어플리케이션 프로세서는 상기 제 1 스토리지 장치로 상기 레퍼런스 클록을 전송하는 전자 장치.
  12. 제 10 항에 있어서,
    상기 제 2 통신 모드시, 상기 어플리케이션 프로세서는 상기 레퍼런스 클록을 제공하지 않는 전자 장치.
  13. 제 12 항에 있어서,
    상기 제 2 통신 모드시, 상기 제 1 스토리지 장치는 상기 오실레이터로부터 생성된 상기 레퍼런스 클록을 상기 제 2 스토리지 장치로 제공하는 전자 장치.
  14. 제 12 항에 있어서,
    상기 어플리케이션 프로세서, 상기 제 1 스토리지 장치, 그리고 상기 제 2 스토리지 장치의 레퍼런스 클록 전달 경로는 케스-케이드(Cascade) 방식으로 제공되는 전자 장치.
  15. 제 9 항에 있어서,
    상기 제 1 스토리지 장치는 임베디드 스토리지이고, 상기 제 2 스토리지 장치는 착탈식 스토리지인 것을 특징으로 하는 전자 장치.
  16. 제 9 항에 있어서,
    상기 제 2 스토리지 장치로부터 상기 레퍼런스 클록을 제공받으며, 케스-케이드 방식으로 상기 레퍼런스 클록을 전달받는 적어도 하나의 장치를 더 포함하는 전자 장치.
  17. 레퍼런스 클록을 사용하여 구동 클록을 생성하고, 상기 레퍼런스 클록을 클록 출력 포트로 전달하되, 클록 입력 포트로 상기 레퍼런스 클록이 제공되지 않는 경우에는 상기 레퍼런스 클록을 생성하는 제 1 스토리지 장치; 그리고
    상기 클록 출력 포트를 통해서 출력되는 상기 레퍼런스 클록을 사용하여 상기 제 1 스토리지 장치와 통신하는 제 2 스토리지 장치를 포함하는 전자 장치.
  18. 제 17 항에 있어서,
    상기 제 1 스토리지 장치 및 상기 제 2 스토리지 장치 각각은 상기 레퍼런스 클록을 사용하여 직렬 데이터를 전송하기 위한 직-병렬화기를 포함하는 전자 장치.
  19. 제 17 항에 있어서,
    상기 제 1 스토리지 장치 및 상기 제 2 스토리지 장치 각각은 상기 레퍼런스 클록을 케스-케이드 방식으로 전달하는 전자 장치.
  20. 제 17 항에 있어서,
    상기 제 1 스토리지 장치는 임베디드 스토리지이고, 상기 제 2 스토리지 장치는 착탈식 스토리지인 전자 장치.
KR1020160122402A 2016-09-23 2016-09-23 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치 KR20180033368A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020160122402A KR20180033368A (ko) 2016-09-23 2016-09-23 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치
US15/685,654 US10453507B2 (en) 2016-09-23 2017-08-24 Electronic device comprising storage devices transmitting reference clock via cascade coupling structure
CN202210086591.3A CN114415964B (zh) 2016-09-23 2017-09-08 包括经级联耦合结构发送参考时钟的存储装置的电子装置
CN201710804654.3A CN107870741B (zh) 2016-09-23 2017-09-08 包括经级联耦合结构发送参考时钟的存储装置的电子装置
US16/655,782 US10950281B2 (en) 2016-09-23 2019-10-17 Electronic device comprising storage devices transmitting reference clock via cascade coupling structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160122402A KR20180033368A (ko) 2016-09-23 2016-09-23 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20180033368A true KR20180033368A (ko) 2018-04-03

Family

ID=61686545

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160122402A KR20180033368A (ko) 2016-09-23 2016-09-23 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치

Country Status (3)

Country Link
US (2) US10453507B2 (ko)
KR (1) KR20180033368A (ko)
CN (2) CN114415964B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180034778A (ko) * 2016-09-27 2018-04-05 삼성전자주식회사 직렬로 연결되는 스토리지 장치들 중 직접 연결되지 않은 스토리지 장치로의 바이패스 경로를 제공하도록 구성되는 전자 장치, 그것에 포함되는 스토리지 장치, 그것을 포함하는 컴퓨팅 시스템, 및 그것을 이용하여 통신하는 방법
EP3869315B1 (en) * 2020-02-20 2024-07-31 Samsung Electronics Co., Ltd. Storage device and storage system including the same
CN111954090B (zh) * 2020-08-13 2022-08-30 北京同有飞骥科技股份有限公司 扩展柜控制方法及系统
JP2022049407A (ja) * 2020-09-16 2022-03-29 キオクシア株式会社 情報処理システム、ストレージデバイス、およびキャリブレーション方法
CN115422120B (zh) * 2022-11-04 2023-03-10 摩尔线程智能科技(北京)有限责任公司 Soc芯片以及soc芯片上的多级时钟的释放方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546023A (en) 1995-06-26 1996-08-13 Intel Corporation Daisy chained clock distribution scheme
JP2000268019A (ja) * 1999-03-16 2000-09-29 Hitachi Ltd 不揮発性メモリ回路を内蔵した半導体集積回路
US6816933B1 (en) 2000-05-17 2004-11-09 Silicon Laboratories, Inc. Serial device daisy chaining method and apparatus
US7296174B2 (en) 2002-10-11 2007-11-13 Broadcom Corporation Apparatus and method to interface two different clock domains
US7308524B2 (en) * 2003-01-13 2007-12-11 Silicon Pipe, Inc Memory chain
ITRM20030198A1 (it) * 2003-04-28 2004-10-29 Micron Technology Inc Monitor ad unita' di controllo basata su rom in un
US7053675B2 (en) * 2003-07-25 2006-05-30 Arm Limited Switching between clocks in data processing
KR20050051332A (ko) * 2003-11-27 2005-06-01 엘지전자 주식회사 게이트웨이 장치에서의 망동기 기능을 포함한 스위치 장치
US20060036826A1 (en) * 2004-07-30 2006-02-16 International Business Machines Corporation System, method and storage medium for providing a bus speed multiplier
US20060047990A1 (en) 2004-09-01 2006-03-02 Micron Technology, Inc. System and method for data storage and transfer between two clock domains
US7441060B2 (en) * 2004-10-29 2008-10-21 International Business Machines Corporation System, method and storage medium for providing a service interface to a memory system
KR100666225B1 (ko) 2005-02-17 2007-01-09 삼성전자주식회사 데이지 체인을 형성하는 멀티 디바이스 시스템 및 이의 구동방법
US20070076502A1 (en) 2005-09-30 2007-04-05 Pyeon Hong B Daisy chain cascading devices
US7652922B2 (en) 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
US7949863B2 (en) * 2006-03-30 2011-05-24 Silicon Image, Inc. Inter-port communication in a multi-port memory device
US7752364B2 (en) * 2006-12-06 2010-07-06 Mosaid Technologies Incorporated Apparatus and method for communicating with semiconductor devices of a serial interconnection
KR101470975B1 (ko) * 2007-12-21 2014-12-09 램버스 인코포레이티드 메모리 시스템 내 기록 타이밍을 교정하기 위한 방법 및 장치
KR101412524B1 (ko) 2008-01-31 2014-06-25 삼성전자주식회사 메모리 장치, 메모리 카드 시스템 및 그것의 카드 인식방법
US20100005218A1 (en) 2008-07-01 2010-01-07 International Business Machines Corporation Enhanced cascade interconnected memory system
US8139390B2 (en) 2008-07-08 2012-03-20 Mosaid Technologies Incorporated Mixed data rates in memory devices and systems
EP2329496A4 (en) * 2008-09-30 2012-06-13 Mosaid Technologies Inc SERIAL SWITCHED STORAGE SYSTEM WITH OUTPUT DELAY SETTING
US8031539B2 (en) * 2008-10-09 2011-10-04 Qimonda Ag Memory device and memory system comprising a memory device and a memory control device
WO2011056729A2 (en) * 2009-11-05 2011-05-12 Rambus Inc. Interface clock management
US8582382B2 (en) 2010-03-23 2013-11-12 Mosaid Technologies Incorporated Memory system having a plurality of serially connected devices
US8381051B2 (en) 2010-04-23 2013-02-19 Stmicroelectronics International N.V. Testing of multi-clock domains
US9100167B2 (en) 2012-11-30 2015-08-04 Broadcom Corporation Multilane SERDES clock and data skew alignment for multi-standard support
WO2014191785A1 (en) * 2013-05-29 2014-12-04 Freescale Semiconductor, Inc. A network receiver for a network using distributed clock synchronization and a method of adjusting a frequency of an internal clock of the network receiver
US9613665B2 (en) * 2014-03-06 2017-04-04 Mediatek Inc. Method for performing memory interface control of an electronic device, and associated apparatus
CN203747851U (zh) * 2014-04-02 2014-07-30 云南大学 一种通用的网络交换设备通信死机检测及恢复装置
KR102285789B1 (ko) * 2014-07-01 2021-08-04 삼성전자 주식회사 외장 저장 장치, 및 이의 기준 주파수를 설정하는 방법
KR102275636B1 (ko) * 2015-01-20 2021-07-13 삼성전자주식회사 아이 오프닝 회로를 구비한 집적 회로 및 서데스 장치

Also Published As

Publication number Publication date
US10950281B2 (en) 2021-03-16
CN107870741A (zh) 2018-04-03
US20180090191A1 (en) 2018-03-29
US20200051601A1 (en) 2020-02-13
US10453507B2 (en) 2019-10-22
CN114415964B (zh) 2024-09-03
CN107870741B (zh) 2022-05-24
CN114415964A (zh) 2022-04-29

Similar Documents

Publication Publication Date Title
CN114415964B (zh) 包括经级联耦合结构发送参考时钟的存储装置的电子装置
CN101897119B (zh) 具有多个装置的系统中的时钟再生和时序方法以及具有可变数据对准的存储器控制器
US8149979B2 (en) Method and apparatus for handling of clock information in serial link ports
US10942887B2 (en) Electronic device configured to control non-directly connected storage device among serially connected storage devices, storage device included therein, computing system including the same, and operation method of controller of storage device
CN110018975A (zh) 移动装置及其接口方法
KR102228031B1 (ko) 인터페이스 시스템
CN104155630A (zh) 高速数据录取存储与回放系统
JP2016529844A (ja) 構成可能なクロックツリー
US20110264849A1 (en) Protocol including timing calibration between memory request and data transfer
WO2024113681A1 (zh) 一种时钟架构及处理模组
US12038857B2 (en) Storage device adjusting data rate and storage system including the same
TWI655845B (zh) 用於高速通訊之介面電路、及包含該介面電路之半導體設備和系統
CN111858415A (zh) 一种用于数据接收与存储的多通道、多协议硬件加速方法
KR102206323B1 (ko) 공통의 클록을 이용하는 송신 회로, 및 그것을 포함하는 저장 장치
US20230080284A1 (en) Devices using chiplet based storage architectures
US20240273041A1 (en) Devices using chiplet based storage architectures
US20240264911A1 (en) Devices using chiplet based storage architectures

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application