KR102384328B1 - 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐 - Google Patents

플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐 Download PDF

Info

Publication number
KR102384328B1
KR102384328B1 KR1020160052443A KR20160052443A KR102384328B1 KR 102384328 B1 KR102384328 B1 KR 102384328B1 KR 1020160052443 A KR1020160052443 A KR 1020160052443A KR 20160052443 A KR20160052443 A KR 20160052443A KR 102384328 B1 KR102384328 B1 KR 102384328B1
Authority
KR
South Korea
Prior art keywords
storage
interface
connector
protocol
adapter circuit
Prior art date
Application number
KR1020160052443A
Other languages
English (en)
Other versions
KR20160131906A (ko
Inventor
프레드 울리
해리 로저스
스리니바스 크리슈난
잔 핑
마이클 스크라이버
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20160131906A publication Critical patent/KR20160131906A/ko
Priority to KR1020220041799A priority Critical patent/KR102542578B1/ko
Application granted granted Critical
Publication of KR102384328B1 publication Critical patent/KR102384328B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0028Serial attached SCSI [SAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0032Serial ATA [SATA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

플렉시블 스토리지 시스템이 개시된다. 스토리지 마더보드는 적합한 커넥터 상에서 스토리지 어댑터 회로를 수용한다. 스토리지 어댑터 회로는 호스트 버스 인터페이스와 스토리지 인터페이스 간의 프로토콜 변환을 제공한다. 스토리지 어댑터 회로는 복수의 대규모 스토리지 장치들을 수용하기 위해 라우팅을 제공한다. 복수의 대규모 스토리지 장치들은 스토리지 마더보드를 통해 스토리지 어댑터 회로에 연결될 수 있다. 스토리지 어댑터 회로는 다른 호스트 인터페이스나 다른 스토리지 인터페이스를 지원하는 회로로 대치될 수 있다.

Description

플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 IO 인프라스트럭쳐 {MULTI-PROTOCOL IO INFRASTRUCTURE FOR A FLEXIBLE STORAGE PLATFORM}
본 발명은 데이터 스토리지에 관한 것으로, 보다 구체적으로 다중 프로토콜 스토리지 인터페이스 (multi-protocol storage interface)를 제공하는 인프라스트럭쳐 (infrastructure)에 관한 것이다.
현대의 컴퓨터 시스템은 처리 자원, 비휘발성 메모리 및 지속 스토리지 (persistent storage)로 구성될 수 있다. 지속 스토리지는 스토리지 프로토콜을 통해 로컬 처리 자원들과 통신한다. 스토리지 프로토콜은 스토리지 리소스에 대해 특정적이다. 스토리지 리소스는 그런 프로토콜을 지원할 수 있고, 컴퓨터 시스템은 그 프로토콜을 지원하기 위해 분리(separate) 인프라스트럭쳐를 지원할 수 있다. 왜냐하면, 예를 들어 커넥터 종류, 케이블 종류, 트레이스 종류, 및/또는 데이터 경로 폭, 또는 프로토콜 상세들 내의 다른 변수들이 프로토콜 내에서 차이가 있기 때문이다.
다른 스토리지 프로토콜들을 지원하기 위해 요구되는 분리 인프라스트럭쳐는 전체 컴퓨터 시스템 설계의 유연성을 제한한다. 따라서, 다중 프로토콜들을 지원하는 공통 인프라스트럭쳐가 필요해진다.
본 발명이 해결하고자 하는 기술적 과제는, 다중 프로토콜 스토리지 인터페이스를 제공하는 인프라스트럭쳐를 제공함에 있다.
본 발명의 실시 예에 따라 스토리지 시스템이 제공된다. 스토리지 시스템은, 복수의 제1 스토리지 인터페이스 커넥터들, 제1 어댑터 커넥터, 및 케이블 커넥터를 포함하는 스토리지 마더보드; 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제1 스토리지 어댑터 회로; 및 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제2 스토리지 어댑터 회로를 포함한다. 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 라우팅 회로를 포함한다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 프로토콜 변환 회로를 더 포함한다.
일 실시 예에서 상기 시스템은, 제3 스토리지 어댑터 회로를 더 포함하며, 상기 제3 스토리지 어댑터 회로는, 상기 제1 어댑터 커넥터 및 상기 제2 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제3 스토리지 어댑터 회로를 더 포함하고,
상기 제3 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제3 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 상기 제1 스토리지 어댑터의 상기 제1 마더보드 커넥터에서 제2 스토리지 인터페이스를 제공하도록 더 구성되고, 상기 제2 스토리지 인터페이스는 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 동일하게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 상기 제1 스토리지 어댑터의 상기 제1 마더보드 커넥터에서 제2 스토리지 인터페이스를 제공하도록 더 구성되고, 상기 제2 스토리지 인터페이스는 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 SATA 인터페이스를 포함하고, 상기 제2 스토리지 인터페이스는 SAS 인터페이스를 포함한다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 PCIe 인터페이스를 포함하고, 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 SATA, SAS, FibreChannel, NVMe, Ethernet, 및 USB 로 구성된 그룹으로부터 선택된 인터페이스를 포함한다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 PCIe 인터페이스를 포함하고, 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 PCIe 인터페이스를 포함한다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 SAS 인터페이스를 포함하고, 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 SAS 인터페이스를 포함한다.
일 실시 예에서, 상기 복수의 제1 스토리지 인터페이스 커넥터들의 커넥터는 적어도 두 개의 다른 스토리지 인터페이스들과 호환 가능하다.
일 실시 예에서, 상기 복수의 제1 스토리지 인터페이스 커넥터들의 커넥터는 SFF8639 커넥터를 포함한다.
본 발명의 실시 예에 따라 스토리지 시스템이 제공된다. 스토리지 시스템은,
복수의 제1 스토리지 인터페이스 커넥터들, 제1 어댑터 커넥터, 및 케이블 커넥터를 포함하는 스토리지 마더보드; 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터와, 제1 스토리지 커넥터를 포함하는 제1 스토리지 어댑터 회로를 포함하되, 상기 제1 스토리지 어댑터 회로는; 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 커넥터에서 제1 스토리지 인터페이스를 지원하고, 상기 제1 스토리지 어댑터 회로의 상기 제1 마더보드 커넥터에서 호스트 인터페이스를 지원하며; 및 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터와, 제1 스토리지 커넥터를 포함하는 제2 스토리지 어댑터 회로를 포함한다. 상기 제2 스토리지 어댑터 회로는; 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 커넥터에서 제1 스토리지 인터페이스를 지원하고, 상기 제2 스토리지 어댑터 회로의 상기 제1 마더보드 커넥터에서 호스트 인터페이스를 지원한다. 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 커넥터에 데이터 경로에 의해 연결된 대규모 스토리지 장치를 더 포함하며, 상기 데이터 경로는 케이블로 구성된 그룹으로부터 선택된 부분, 복수의 인쇄회로기판 트레이스, 및 무선 링크를 포함한다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로의 상기 제1 마더보드 커넥터는 PCIe 커넥터를 포함하고, 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 PCIe 이다.
일 실시 예에서, 상기 시스템은, 상기 제1 어댑터 커넥터 및 상기 제2 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터, 및 제1 스토리지 커넥터를 포함하는 제3 스토리지 어댑터 회로를 더 포함한다. 상기 제3 스토리지 어댑터 회로는; 상기 제3 스토리지 어댑터 회로의 상기 제1 스토리지 커넥터에서 제1 스토리지 인터페이스를 지원하고, 상기 제3 스토리지 어댑터 회로의 상기 제1 마더보드 커넥터에서 호스트 인터페이스를 지원한다. 상기 제3 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제3 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
본 발명의 실시 예에 따라 컴퓨팅 시스템이 제공된다. 컴퓨팅 시스템은 19인치 랙을 위한 랙 트레이를 포함한다. 상기 랙 트레이는, CPU 및 메모리를 포함하는 호스트 마더보드, 및 스토리지 마더보드를 포함한다. 상기 스토리지 마더보드는 복수의 제1 스토리지 인터페이스 커넥터들, 제1 어댑터 커넥터, 및 케이블 커넥터를 포함한다. 상기 랙 트레이는, 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제1 스토리지 어댑터 회로를 포함한다. 상기 랙 트레이는, 상기 제1 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제2 스토리지 어댑터 회로를 포함한다. 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다. 상기 랙 트레이는 상기 스토리지 마더보드의 상기 케이블 커넥터와 상기 호스트 마더보드에 연결된 케이블을 포함한다.
일 실시 예에서, 상기 컴퓨팅 시스템은, 상기 제1 어댑터 커넥터 및 상기 제2 어댑터 커넥터와 호환 가능한 제1 마더보드 커넥터를 포함하며, 상기 제1 마더보드 커넥터에서 지원하도록 구성되고, 제1 스토리지 인터페이스, 및 호스트 인터페이스를 포함하는 제3 스토리지 어댑터 회로를 더 포함하고, 상기 제3 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제3 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 상기 제1 스토리지 어댑터의 상기 제1 마더보드 커넥터에서 제2 스토리지 인터페이스를 제공하도록 더 구성되고, 상기 제2 스토리지 인터페이스는 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 동일하게 되어 있다.
일 실시 예에서, 상기 제1 스토리지 어댑터 회로는 상기 제1 스토리지 어댑터의 상기 제1 마더보드 커넥터에서 제2 스토리지 인터페이스를 제공하도록 더 구성되고, 상기 제2 스토리지 인터페이스는 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있다.
본 발명의 실시 예에 따라 스토리지 시스템이 제공된다. 스토리지 시스템은 스토리지 마더보드와, 스토리지 어댑터 회로 컨트롤러를 포함한다. 상기 스토리지 마더보드는: 복수의 제1 스토리지 인터페이스 커넥터들; 케이블 커넥터; 및 스토리지 어댑터 회로를 포함한다. 상기 스토리지 어댑터 회로는 상기 케이블 커넥터에 연결된 호스트 측 인터페이스와 복수의 제1 스토리지 측 인터페이스들을 가지며, 상기 복수의 제1 스토리지 측 인터페이스들은 각기 상기 스토리지 인터페이스 커넥터들의 각각의 스토리지 인터페이스 커넥터에 연결된다. 상기 스토리지 어댑터 회로는; 호스트 인터페이스 프로토콜에서 제1 스토리지 인터페이스 프로토콜까지의 통신을 변환하도록 구성된 제1 프로토콜 변환기; 호스트 인터페이스 프로토콜에서 제2 스토리지 인터페이스 프로토콜까지의 통신을 변환하도록 구성된 제2 프로토콜 변환기; 복수의 제1 스토리지 장치들을 상기 제1 프로토콜 변환기에 연결하도록 구성되고 상기 제1 스토리지 장치들은 각기 상기 제1 프로토콜을 통해 통신하도록 구성되어 있는 제1 통합장치; 및 복수의 제2 스토리지 장치들을 상기 제2 프로토콜 변환기에 연결하도록 구성되고 상기 제2 스토리지 장치들은 각기 상기 제2 프로토콜을 통해 통신하도록 구성되어 있는 제2 통합장치를 포함한다. 상기 스토리지 어댑터 회로 컨트롤러는, 상기 제1 마더보드 커넥터에서, 제1 스토리지 인터테이스와, 호스트 인터페이스를 지원하도록 구성된다. 상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스와 다르게 되어 있고, 및/또는 상기 제1 스토리지 어댑터 회로의 상기 호스트 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 호스트 인터페이스와 다르게 되어 있다.
본 발명의 방법 및 시스템에 따르면, 전체 컴퓨터 시스템 설계의 유연성이 제공된다.
도 1은 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트 및 파워 서플라이의 블록도이다.
도 2a는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 2b는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 3은 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 4a는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 4b는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 5는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 6a는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 6b는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
도 7a는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 평면도이다.
도 7b는 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 스토리지마더보드의 평면도이다.
도 8은 본 발명의 일 실시 예에 따라, 스토리지 마더보드에 연결된 호스트의 블록도이다.
첨부 도면들과 관련하여 이하에서 언급되는 상세한 설명은 다중 프로토콜 IO 인프라스트럭쳐의 예시적 실시 예의 설명으로서 의도된다. 다중 다중 프로토콜 IO 인프라스트럭쳐는 본 발명에 따라 제공된 플렉시블 스토리지 플랫폼을 위한 것이다. 실시 예의 설명은 본 발명이 구성되거나 활용될 수 있는 오직 형태들을 나타내기 위해 의도된 것은 아니다. 상세한 설명은 도시된 실시 예들과 관련하여 본 발명의 특징들을 언급한다. 그렇지만, 동일 또는 등가적인 기능들 및 구조들이 다른 실시 예들에 의해 달성될 수 있음이 이해될 것이다. 다른 실시 예들은 물론 본 발명의 기술적 사상이나 범위 이내에 포함되는 것이다. 다른 곳에서 표시되는 것으로서, 유사한 구성 소자 번호들은 유사한 구성 소자들 혹은 특징들을 나타내는 경향이 있다.
도 1을 참조하며, 일 실시 예에서, 호스트(110)는 스토리지 마더보드(120)에 연결된다. 스토리지 마더보드(120)는 호스트(110)를 위한 데이터 스토리지(예를 들면 지속 데이터 스토리지)를 제공한다. 상기 호스트(110)는 CPU, 메모리, 및 호스트 스토리지 커넥터를 포함할 수 있다. 호스트 스토리지 커넥터는 상기 스토리지 마더보드(120)와 같은 스토리지 시스템에 연결된다. 상기 호스트(110)가 호스트 버스 어댑터(HBA: 122)를 포함하면, 호스트 인터페이스 예를 들면 호스트(110)와 스토리지 마더보드(120)사이의 인터페이스는 스토리지 인터페이스가 될 수 있다. 또는 상기 호스트(110)가 호스트 버스 어댑터(122: 예를 들어 도 1에 도시된 것으로서)를 포함하지 않으면, 호스트 인터페이스는 호스트 버스 인터페이스 예를 들면 주변 컴포넌트 인터커넥트 익스프레스(PCIe)가 될 수 있다. 본 실시 예에 사용되는 것으로서, 스토리지 인터페이스는 하드 디스크 드라이브나 솔리드 스테이트 드라이브(SSD)와 같은 대규모 스토리지 장치들에 대한 인터페이스로 사용되는 인터페이스의 범주에 속한다. 스토리지 인터페이스는 예를 들어, 시리얼 진보 기술 어태치먼트(Serial Advanced Technology Attachment : SATA) 인터페이스, Fibre 채널 인터페이스, Serial Attached SCSI (SAS) 인터페이스, 비휘발성 메모리 익스프레스(Non Volatile Memory Express: NVMe)인터페이스, 또는 이더넷( Ethernet )이나 만능 시리얼 버스(Universal Serial Bus: USB)와 같은 보다 범용(more general-purpose)의 인터페이스일 수 있다. 본 실시 예에서, "호스트 버스 어댑터"는 프로토콜 변환기로서 작용하는 임의의 회로이다. 호스트 버스 어댑터는 스토리지 마더보드(120)의 호스트 측 인터페이스에 의해 사용되는 프로토콜과 스토리지 마더보드(120)의 스토리지 측 인터페이스에 의해 사용되는 프로토콜 사이에서 프로토콜 변환을 수행한다. 상기 호스트 버스 어댑터(120)는 커스텀 응용 특정 집적회로(custom application specific integrated circuit: ASIC), 시스템 온 칩(system on a chip : SOC), 또는 기타 소자로 구현될 수 있다.
일 실시 예를 위한 도 1에 도시된 바로서, 스토리지 마더보드(120)는 호스트 버스 어댑터(122), 통합 장치(consolidation device: 124), 및 복수의 대규모 스토리지 장치들(SD: 126)을 포함할 수 있다. 상기 호스트 버스 어댑터(122)와 통합 장치(124)는 물리적인 패키지 내에 함께 패키징될 수 있다. 상기 물리적인 패키지는 본 발명의 실시 예에서 스토리지 어댑터 회로(130)로 칭해진다. 대규모 스토리지 장치들(126)은 솔리드 스테이트 드라이브들(SSDs)일 수 있다. 통합 장치(124)는 라우팅 회로로서 작용할 수 있다. 상기 라우팅 회로는 예를 들면 리드 리퀘스트나 라이트 리퀘스트를 각기 지시할 수 있다. 상기 리퀘스트는 호스트(110)에서 상기 통합 장치(124)에 연결된 여러 스토리지 장치들 중의 하나 까지 수신된 것이다. 하나의 스토리지 장치는 예를 들어 상기 리드 또는 라이트 리퀘스트 내에 포함된 스토리지 어드레스에 따라 선택된다. 몇몇 실시 예에서, 통합 장치(124)는 라우터, 스위치, 확장기 (expander), 또는 허브이다. 상기 통합 장치(124)는 스토리지 인터페이스를 통해 전송되는 신호들을 위한 것이다. 상기 스토리지 마더보드(120)는 호스트(110), 또는 도 1에 도시된 것으로서 분리 파워 서플라이(140)으로부터 전원을 수신할 수 있다. 상기 스토리지 마더보드(120)는 상기 전원을 상기 스토리지 어댑터 회로(130), 상기 대규모 스토리지 장치들(126), 및 상기 스토리지 마더보드(120)에 설치되어 전원을 필요로 하는 다른 구성 소자들로 제공할 수 있다. 상기 스토리지 마더보드(120)는 인쇄회로 기판(PCB) 또는 인쇄 와이어링 기판(PWB)상에 구성될 수 있다. 상기 기판들은 PCB 트레이스(traces)의 형태로 연결을 제공할 수 있다. 상기 스토리지 마더보드 PCB 상에 설치된 것이 있는 경우, 상기 연결은 상기 커넥터들과 다른 전기적 구성 소자들 사이의 연결이다. 상기 PCB는 또한 상기 스토리지 마더보드(120:)의 다양한 구성 소자들(예를 들어 대규모 스토리지 장치들: 126)을 물리적으로 지원할 수 있다. 예를 들어 PCB는 이들 구성 소자들을 지지하기 위한 브라켓들, 또는 나사 파스너들과 함께 사용되는 나사 삽입구들을 가진다. 따라서, 상기 구성 소자들은 상기 스토리지 마더보드(120)에 고정될 수 있다.
몇몇 실시 예들에서, 상기 스토리지 어댑터 회로(130)는 어댑터 커넥터를 가질 수 있다. 상기 스토리지 어댑터 회로(130)는 상기 스토리지 마더보드(120)상에 대응되는 어댑터 커넥터를 통해 연결된다. 어댑터 커넥터는 스토리지 어댑터 회로(130)와 스토리지 마더보드(120)사이의 전기적인 연결을 제공한다. 상기 어댑터 커넥터는 또한 상기 스토리지 어댑터 회로(130)를 상기 스토리지 마더보드(120)에 대해 기계적으로 고정할 수 있다. 스토리지 어댑터 회로(130)의 호스트 측은 예를 들면 어댑터 커넥터의 호스트 측 부분을 통해 호스트(110)와 인터페이스한다. 스토리지 어댑터 회로(130)의 스토리지 측은 예를 들면 어댑터 커넥터의 스토리지 측 부분을 통해 하나 이상의 대규모 스토리지 장치들(126)과 인터페이스한다. 따라서 스토리지 어댑터 회로(130)는 호스트(110)에서 하나 이상의 대규모 스토리지 장치들(126)까지 리드 및 라이트 리퀘스트를 전달할 수 있고, 대규모 스토리지 장치(126)에 의해 거꾸로 리턴된 어떤 응답을 호스트(110)로 전달할 수 있다.
커넥터에 의해 상기 스토리지 마더보드(120)에 연결되어 있는 결과로서, 스토리지 어댑터 회로(130)는 예들 들면 실패의 경우나 다른 스토리지 어댑터 회로(130)와의 대치 시에 쉽게 교체될 수 있다. 스토리지 어댑터 회로(130)와 시스템의 다른 구성 소자들 간의 연결들은 어댑터 커넥터를 통해 만들어 질 수 있고, 예를 들면 상기 스토리지 마더보드 PCB 내의 PCB 트레이스를 통해 구현될 수 있다. 예를 들어, 호스트(110)와 상기 스토리지 어댑터 회로(130)간의 연결은 이하의 구성 소자들 내의 컨덕터들을 포함할 수 있다. 즉, 컨덕터들은 호스트(110)상의 커넥터, 상기 호스트(110)상의 상기 커넥터와 상기 스토리지 마더보드 상의 호스트 커넥터 사이의 커넥션을 형성하는 케이블, 상기 스토리지 마더보드(120)와 상기 어댑터 커넥터 사이의 PCB 트레이스, 및 기타 가능한 사이의 어댑터 커넥터를 포함할 수 있다. 몇몇 실시 예들에서, 상기 스토리지 어댑터 회로(130)에 대한 연결은 어댑터 커넥터를 통해 만들어지지 않으며, 대신에 예를 들어 대규모 스토리지 장치(126)와 상기 스토리지 어댑터 회로(130)사이에 직접적으로 연결된 하나 이상의 케이블에 의해 만들어질 수 있다.
도 2a를 참조하면, 일 실시 예에서 호스트(110)는 호스트 버스에 대한 연결을 통해 스토리지 마더보드(120)에 연결된다. 상기 호스트 버스는 예를 들어 PCIe 버스일 수 있다. 스토리지 어댑터 회로(130)는 프로토콜 변환회로로서 작용하는 호스트 버스 어댑터(122)를 가진다. 상기 프로토콜 변환회로는 호스트 버스(PCIe)의 프로토콜과 도 2a에서 도시된 바와 같이 스토리지 인터페이스(예를 들면 SATA, PCIe, 또는 SAS)의 프로토콜 사이를 변환한다. 도 2a의 실시 예에서 통합 장치(124)는 호스트 버스 어댑터(122)와 도 2a의 실시 예에서 도시된 바와 같이 복수의 대규모 스토리지 장치들(126: SATA 등 스토리지 장치들)사이에 연결된다. 도 2a의 실시 예에서, 통합 장치(124)는 SATA 확장기이다. 다른 실시 예들에서, 통합 장치(124)는 PCIe 스위치나 SAS 확장기, 또는 기타 소자이다.
몇몇 실시 예들에서, 상기 호스트 버스 어댑터(122)와 상기 통합 장치(124)의 회로들은 단일 커스텀 ASIC으로 결합될 수 있다.
몇몇 실시 예들에서, 상기 통합 장치(124: 또는 호스트 버스 어댑터(122)와 상기 통합 장치(124)의 조합)는 SOC 프로세서이다. SOC 프로세서는 상기 대규모 스토리지 잗치들(126)과 컴퓨트 자원(예를 들면 호스트)과 같은 일부 다른 엔티티 사이에서의 프로토콜 변환과 라우팅을 제공한다. 이 실시 예에서 SOC 프로세서는 압축, 중복제거(deduplication), 혹은 복제(replication)등과 같은 부가적인 프로토콜 지원이나 서비스들을 또한 제공할 수 있다. 그러한 실시 예에서, SOC 프로세서는 컴퓨팅 용량을 제공할 수 있다. 컴퓨팅 용량은 범용 혹은 특정 목적을 위해 스토리지 포로토콜의 구현 일부로서 사용되거나 스토리지 마더보드(120)의 증강된 용량으로서 사용될 수 있다. 증강된 용량은 어플리케이션들("인 스토리지 컴퓨트" 용량)에서 사용할 수 있는 것이다.
호스트(110)와 스토리지 마더보드(120)를 포함하는 시스템(예를 들어 서버 클러스터)의 오퍼레이터는 도 2a의 실시 예에서, 상기 대규모 스토리지 장치들(126)을 다른 스토리지 인터페이스를 사용하도록 구성된 대규모 스토리지 장치들(126)로 쉽게 교체될 수 있다. 상기 다른 스토리지 인터페이스는 예를 들어 SATA 대신에 SAS를 사용하도록 구성된 대규모 스토리지 장치들(126)일 수 있다. 예를 들어 일부 대규모 스토리지 장치들(126)이 실패되었거나 그들이 더 큰 스토리지 용량을 갖는 대규모 스토리지 장치들(126)로 교체되어야 할 경우에 교체가 용이해야 한다. 그렇게 하기 위해, 오퍼레이터는 도 2a의 실시 예의 스토리지 어댑터 회로(130)에 도 2b에서 도시된 바와 같은 호환성 있는 적절한 스토리지 어댑터 회로(130)을 부가하거나, 어댑터 회로(130)를 상기 호환성 있는 적절한 스토리지 어댑터 회로(130)로 교체할 수 있다. 상기 호환성은 PCIe를 가지고 호스트 측에서 호환 가능한 것과, SAS를 가지고 상기 대규모 스토리지 측에서 호환 가능한 것을 포함한다. 교체 대규모 스토리지 장치들(126)의 커넥터들이 교체되어 있는 상기 대규모 스토리지 장치들(126)의 커넥터들과 물리적으로 상호호환성 있는 경우라면(이하에서 상세히 후술될 것이지만 SFF8639 커넥터를 이용하여 다양한 스토리지 인터페이스들의 경우가 존재하는 바로서) 각각의 교체 대규모 스토리지 장치(126)는, 교체되어 있는 상기 대규모 스토리지 장치(126)가 제거되었을 때, 빈 커넥터로 접속될 수 있다. 다른 실시 예들에서, 상기 스토리지 마더보드(120)는 서로 다른 스토리지 인터페이스들을 위한 서로 다른 커넥터들의 여러 세트(sets)를 제공할 수 있다. 여러 세트를 제공하는 이유는 예를 들면 구(old) 대규모 스토리지 장치(126)를 교체하는 신 대규모 스토리지 장치(126)가 커넥터에 접속(plugged) 되도록 하기 위해서이다. 여기서 커넥터는 상기 구 대규모 스토리지 장치(126)의 제거에 의해 비어있는 커넥터에 인접한 커넥터(비어있는 커넥터와는 다른 커넥터)이다.
도 3을 참조하면, 몇몇 실시 예에서, 호스트(110)는, 호스트 인터페이스(예를 들어 호스트 110와 상기 스토리지 마더보드 120 간의 인터페이스)가 호스트 버스 인터페이스(도 1의 실시 예로서) 대신에 스토리지 인터페이스로 되어 있도록 하기 위해, 호스트 버스 어댑터(122)를 포함한다. 이들 실시 예들에서 스토리지 어댑터 회로(130)는 통합 장치(124)를 포함할 수 있고, 호스트 버스 어댑터(122)를 결여할 수 있다.
도 4a를 참조하면, 그러한 일 실시 예에서, 예를 들어 호스트(110)는 SAS 인터페이스를 제공하는 호스트 버스 어댑터(122)를 포함한다. 통합 장치(124)는 SAS 확장기를 포함한다. SAS 스토리지 인터페이스와 호환 가능한 복수의 대규모 스토리지 장치들(126)은 스토리지 어댑터 회로(130)에 연결된 스토리지 마더보드(120)상에 설치된다. 도 4b를 참조하면, 관련된 실시 예에서, 호스트(110)는 SATA 인터페이스를 제공하는 호스트 버스 어댑터(122)를 포함한다. 통합 장치(124)는 SATA 확장기를 포함한다. SATA 스토리지 인터페이스와 호환 가능한 복수의 대규모 스토리지 장치들(126)은 스토리지 어댑터 회로(130)에 연결된 스토리지 마더보드(120)상에 설치된다.
도 4a 및 4b의 실시 예들에서, 스토리지 어댑터 회로(130)는 PCIe 카드의 폼 팩터(form factor)를 가질 수 있고, 어댑터 커넥터는 PCIe 커넥터일 수 있다. PCIe 커넥터는 스토리지 어댑터 회로(130)를 지원하고 호스트(110)에 대한 연결을 제공한다. 대규모 스토리지 장치들(126)에 대한 하나 이상의 연결들은 케이블들(410)을 이용하여 만들어질 수 있다. 예를 들어 케이블들(410)은 스토리지 어댑터 회로(130)상의 스토리지 커넥터들(415)과 상기 대규모 스토리지 장치들(126)상의 대응되는 스토리지 커넥터들 사이에 설치된다.
대규모 스토리지 장치들(126)의 스토리지 인터페이스가 호스트 인터페이스라면, 프로토콜 변환은 스토리지 마더보드(120)와 스토리지 어댑터 회로(130)내에서 불필요해질 수 있다. 도 5를 참조하면, 일 실시 예에서 스토리지 어댑터 회로(130)는 호스트 버스 어댑터(122)를 결여하며, 호스트 버스 인터페이스는 PCIe 이다. 통합 장치(124)는 PCIe 스위치이고, 스토리지 장치들은 PCIe 드라이브들이다.
도 6a를 참조하면, 몇몇 실시 예들에서 스토리지 마더보드(120)는 커넥터들을 포함하고, 둘 이상의 스토리지 어댑터 회로들을 동시(concurrently 도 포함)에 지원한다. 그러한 일 실시 예에서, 제1 스토리지 인터페이스를 사용하는 복수의 제1 스토리지 장치들은 제1 스토리지 어댑터 회로에 연결될 수 있다. 상기 제1 스토리지 인터페이스와는 다른 제2 스토리지 인터페이스를 사용하는 복수의 제2 스토리지 장치들은 제2 스토리지 어댑터 회로에 연결될 수 있다. 그러한 일 실시 예에서 한 스토리지 인터페이스는 하이 퍼포먼스를 제공하기 위해 선택될 수 있고, 다른 스토리지 인터페이스는 낮은 비용(예를 들어 저 비용 대규모 스토리지 장치들을 수용하기 위해)을 제공하기 위해 선택될 수 있다. 몇몇 실시 예들에서, 스토리지 마더보드(120)는 둘 이상의 스토리지 어댑터 회로들을 지원하고 포함한다.
도 6b를 참조하면, 일 실시 예에서 단일 스토리지 어댑터 회로는 제1 스토리지 인터페이스를 사용하는 복수의 제1 대규모 스토리지 장치들과, 제2 스토리지 인터페이스를 사용하는 복수의 제2 대규모 스토리지 장치들을 동시(concurrently 도 포함)에 지원한다. 상기 복수의 제1 대규모 스토리지 장치들을 지원하기 위해, 상기 스토리지 어댑터 회로(130)는 제1 호스트 버스 어댑터(122)와 제1 통합 장치(124)를 포함한다. 제1 호스트 버스 어댑터(122)는 상기 호스트 버스 인터페이스와 상기 제1 스토리지 인터페이스 사이의 프로토콜 변환을 수행한다. 상기 제1 통합 장치(124)는 상기 복수의 제1 대규모 스토리지 장치들에 대한 라우팅을 수행한다. 상기 복수의 제2 대규모 스토리지 장치들을 지원하기 위해, 상기 스토리지 어댑터 회로(130)는 제2 호스트 버스 어댑터(122)와 제2 통합 장치(124)를 포함한다. 제2 호스트 버스 어댑터(122)는 상기 호스트 버스 인터페이스와 상기 제2 스토리지 인터페이스 사이의 프로토콜 변환을 수행한다. 상기 제2 통합 장치(124)는 상기 복수의 제2 대규모 스토리지 장치들에 대한 라우팅을 수행한다. 일부 실시 예들에서, 스토리지 어댑터 회로(130)는 둘 이상의 호스트 버스 어댑터들과 둘 이상의 통합 장치들을 포함한다.
도 7a를 참조하면, 일부 실시 예들에서, 스토리지 마더보드(120)의 배치가 도시된다. 제1 어댑터 커넥터(610)는 마더보드 내에서 설치되고 제1 스토리지 어댑터 회로를 지원하도록 구성된다. 제2 어댑터 커넥터(615)는 마더보드 내에서 설치되고 제2 스토리지 어댑터 회로(도시되지 않음)를 지원하도록 구성된다. 제1 어댑터 커넥터(610)는 제1 스토리지 인터페이스 커넥터들(620)의 어레이에 연결된다. 제1 스토리지 인터페이스 커넥터들(620)은 각기 대규모 스토리지 장치를 상기 스토리지 마더보드(그리고 상기 제1 스토리지 어댑터 회로에)에 연결하기 위해 사용될 수 있다.
상기 스토리지 인터페이스 커넥터들(620)에 사용된 커넥터 종류는 다중 프로토콜 커넥터일 수 있다. 다중 프로토콜 커넥터는 하나 이상의 스토리지 인터페이스를 지원한다. 예를 들어, 스토리지 인터페이스 커넥터들(620)은 각기 SFF8639 커넥터(U.2 connector 로도 칭해짐)일 수 있다. SFF8639 커넥터는 여러 스토리지 인터페이스들과 호환될 수 있다. 여러 스토리지 인터페이스는 SATA, NVMe over PCIe, 및 SAS를 포함할 수 있다. 또한 이더넷 시그날링을 전송하는데 상기 SFF8639를 적용하는 것이 가능해지거나 가까운 장래에 될 수 있다. 그러한 실시 예에서, 제1 스토리지 인터페이스를 위해 구성된 대규모 스토리지 장치들의 제1 세트를 상기 제1 스토리지 인터페이스와는 다른 제2 스토리지 인터페이스를 위해 구성된 대규모 스토리지 장치들의 제2 세트로 대치하는 것이 상기한 바와 같이 가능해질 수 있다. 상기 제1 스토리지 인터페이스와 상기 제2 스토리지 인터페이스 둘 다는 다중 프로토콜 커넥터와 호환 가능하다. 그러한 호환은 교체 드라이브들을 빈 커넥터들에 직접적으로 접속함에 의해 구현되며, 상기 빈 커넥터들은 교체되는 드라이브들에 의해 비어 있게 된다.
제2 어댑터 커넥터(615)는 제2 스토리지 인터페이스 커넥터들(625)의 어레이에 연결된다. 제2 스토리지 인터페이스 커넥터들(625: 제1 스토리지 인터페이스 커넥터들 620과 유사)은 각기 대규모 스토리지 장치를 상기 스토리지 마더보드(그리고 상기 제2 스토리지 어댑터 회로에)에 연결하기 위해 사용될 수 있다. 일부 실시 예들에서 상기 제1 스토리지 커넥터들(620)은 "2-레인(lane)"스토리지 인터페이스를 사용하도록 구성될 수 있다. 2- 레인 스토리지 인터페이스는 예를 들어 데이터를 전송하기 위해 스토리지 장치 당 2 핀들(pins)을 구비한다. 상기 제2 스토리지 커넥터들(625)은 "4-레인(lane)"스토리지 인터페이스를 사용하도록 구성될 수 있다. 4- 레인 스토리지 인터페이스는 예를 들어 데이터를 전송하기 위해 스토리지 장치 당 4 핀들(pins)을 구비한다.
호스트(또는 서버) 마더보드(650)는 케이블(660)을 통해 상기 스토리지 마더보드(120)에 연결될 수 있다. 상기 케이블(660)은 상기 스토리지 마더보드 상의 케이블 커넥터(665)에 연결된다. 호스트 마더보드(650)와 스토리지 마더보드(120)는 19인치 랙내의 트레이 내에 설치(예를 들어 사이드 바이 사이드로)될 수 있다. 상기 트레이는 1U high tray, 2U high tray, 또는 3U high tray 일 수 있다. 상기 19인치 랙은 Electronic Industries Alliance standard EIA-310-D에 따라 제조된 랙일 수 있다.
몇몇 실시 예들에서, 스토리지 마더보드들은 호스트에 가용되는 전체 스토리지 용량을 늘리기 위해 연결되거나 종속 연결(cascaded)될 수 있다. 도 7b를 참조하면, 일 실시 예에서, 두 스토리지 마더보드들(120)은 케이블(760)에 의해 함께 연결될 수 있다. 상기 케이블(660)은 체인된 스토리지 마더보드(120)를 호스트(미도시)에 연결한다. 스토리지 마더보드들(120)중 하나 상의 분리 회로(또는 스토리지 어댑터 회로들 중의 하나에서)는 호스트에서 스토리지 마더보드들(120)중 하나 또는 다른 것들로 신호들의 라우팅을 수행할 수행할 수 있다. 두 스토리지 마더보드들(120)은 트레이 내에 설치(예를 들어 사이드 바이 사이드로)될 수 있다. 상기 케이블(660)은 동일 혹은 다른 랙 내에서 다른 트레이로 연장될 수 있다. 이 실시 예에서 상기 두 스토리지 마더보드들(120)을 수용하는 트레이는 "just a bunch of flash" (JBOF)로 불려질 것이다.
이하의 표 1은 특징들의 다양한 조합들을 포함하는 실시 예들의 예시를 보여준다. "A"로 라벨링된 제1 로우(row)는 실시 예를 요약한다. 상기 실시 예는 제1 어댑터 커넥터(610)에 설치된 스토리지 어댑터 회로가 SAS 용 PCIe 호스트 버스 어댑터(122), 및 SAS 확장기를 포함하는 것을 나타낸다. 상기 제2 어댑터 커넥터(615)에 설치된 스토리지 어댑터 회로는 PCIe 스위치들을 포함하며, 계층적으로 배열된다. 이 실시 예는 스토리지 마더보드(120)가 PCIe 호스트 인터페이스를 가지는 호스트와 함께 트레이 내에 설치되도록 허용한다. "B"로 라벨링된 제2 로우(row)는 또 다른 실시 예를 요약한다. 상기 또 다른 실시 예는 제1 어댑터 커넥터(610)에 설치된 스토리지 어댑터 회로가 SAS 용 PCIe 호스트 버스 어댑터(122), 및 SAS 확장기를 포함하는 것을 나타낸다. 상기 제2 어댑터 커넥터(615)에 설치된 스토리지 어댑터 회로는 PCIe 스위치들과 베이스보드 관리 컨트롤러(BMC)를 포함한다. 베이스보드 관리 컨트롤러(BMC)는 내부 드라이브 온도 등과 같은 관리 데이터의 통합(consolidation)을 제공할 수 있다. 이 실시 예에서 호스트 인터페이스는 PCIe 이고, 두 스토리지 마더보드(120)는 PCIe에 근거한 JBOF의 유닛을 형성하기 위해 트레이 내에 함께 묶여질 수 있다. "C"로 라벨링된 제3 로우(row)는 또 다른 실시 예를 요약한다. 상기 또 다른 실시 예는 제1 어댑터 커넥터(610)에 설치된 스토리지 어댑터 회로가 이더넷 스위치들을 포함하는 것을 나타낸다. 상기 제2 어댑터 커넥터(615)에 설치된 스토리지 어댑터 회로는 베이스보드 관리 컨트롤러(BMC)를 포함한다. 이 실시 예에서 두 스토리지 마더보드(120)는 이더넷에 근거한 JBOF의 유닛을 형성하기 위한 트레이 내에 함께 묶여(chained)질 수 있다.
Form Factor 2 pin per SSD slot 4 pin per SSD slot
A Single tray with host [SAS Expander/HBA] [PCI switch(es) (hierarchy)]
B Switched PCIe/SAS JBOF [SAS Expander/HBA] PCI switch(es)+BMC
C Switched Ethernet JBOF [Ethernet switch(es)] BMC
몇몇 실시 예들에서, 스토리지 인터페이스 커넥터들(620)은 다중 프로토콜 커넥터들(예를 들어 2-레인 및 4-레인 프로토콜을 지원)이다. 스토리지 마더보드는 각각의 대규모 스토리지 장치에서 스토리지 어댑터 회로까지의 단일 데이터 경로를 가진다. 상기 스토리지 마더보드는 데이터 경로의 일단 에서 멀티플렉서 혹은 "MUX"와 같은 선택 메커니즘을 제공한다. 선택 메커니즘은 경로 활성화의 구성을 가능하도록 만든다. 경로 활성화는 가용 데이터 경로 "레인들"중 주어진 타임에서 활성화된 레인을 가리킨다. 예를 들어 대규모 스토리지 장치 혹은 통합 장치(124)중 하나로부터의 검출 핀이 상기 대규모 스토리지 장치 및/또는 통합 장치(124) 및 액티브 데이터 경로의 천이에 의해 사용된 프로토콜을 규명하기 위해 사용될 수 있다. 상기 데이터 경로의 천이는 한 프로토콜에서 다른 프로토콜까지의 커넥터 내에서의 천이이다. 그러한 실시 예에서, 싱글 4-레인 케이블이 사용될 수 있고 싱글 4-레인 케이블은 예를 들면 PCIe 구성에 대한 레인들의 모두를 사용하도록 유동적으로 구성될 수 있다. 싱글 4-레인 케이블은 또한 SAS 구성에 대한 상기 레인들 중 2개를 사용하도록 구성될 수 있다. 각각의 경우에 싱글 4-레인 케이블은 주어진 프로토콜을 위해 상기 커넥터상의 적절한 핀들에 데이터 레인들을 맵핑하도록 구성될 수 있다.
몇몇 실시 예들에서, 대규모 스토리지 장치들과는 다른 장치들이 상술된 실시 예들의 상기 대규모 스토리지 장치를 대신하여 사용될 수 있다. 일부 실시 예들은 임의의 연결 장치에 대한 범용 아키텍쳐로서 고려될 수 있다. 임의의 연결 장치는 잠재적 다중 물리 인프라스트럭쳐를 통하여 잠재적 다중 프로토콜에 대해 동시(concurrent 포함) 또는 순차 연결을 요구할 수 있다. 예를 들어, 대규모 스토리지 장치의 폼 팩터 내의 마이크로서버는 PCIe 및 이더넷 둘 모두에 연결될 수 있다. 이더넷 부착 SSD는 이더넷 및 관리 데이터의 통신을 위한 I2C 버스 둘 모두에 부착될 수 있다. 다른 실시 예에서, 대규모 스토리지 장치를 대신하여 설치되는 장치는 인클로저일 수 있다. 상기 인클로저는 휘발성 랜덤 억세스 메모리(RAM), 휘발성 RAM의 조합, 파워 로스 시에 RAM의 상태를 유지하기 위한 배터리 혹은 커패시터, 및 파워 로스 발생 시에도 데이터를 홀드할 수 있는 플래시 메모리와 같은 지속 메모리 기술(persistent memory technology)을 포함한다.
도 8을 참조하면, 몇몇 실시 예예서 단일 스토리지 어댑터 회로는 복수의 프로토콜 변환 및 라우팅 구성소자들을 빌딩 블록들(805-845)과 같이 포함할 수 있다. 단일 스토리지 어댑터 회로는 다수의 다른 스토리지 인터페이스를 지원할 수 있다. 예를 들어, 상기 스토리지 어댑터 회로는 호스트 버스 어댑터를 위한 옵션들로서, SAS 805 용 PCIe 호스트 버스 어댑터, 및 SATA 810 용 PCIe 호스트 버스 어댑터를 포함한다. 상기 스토리지 어댑터 회로는 통합 장치를 위한 옵션들로서, SAS 확장기(830), SATA 확장기(835), PCIe 스위치(840), 및 이더넷 통합 장치(Ethernet consolidation device)를 포함한다. 상기 이더넷 통합 장치는 예를 들어 이더넷 허브, 스위치, 또는 라우터일 수 있다. 다른 실시 예들에서, 호스트 측 프로토콜(예 이더넷을 포함)과 스토리지 측 프로토콜(예 InfiniBand 포함) 의 임의의 조합에 대한 호스트 버스 어댑터들 및 통합 장치들은 상기 스토리지 어댑터 회로내에 포함될 수 있다. 상기 스토리지 어댑터 회로내의 스토리지 어댑터 회로 제어기(860)는 스타트 업 혹은 호스트 측이나 스토리지 측에서 새로운 연결이 성립되었을 때, 새롭게 연결된 엔티티(entity)와 프로토콜을 협상(negotiate)하고 결과적으로 상기 스토리지 어댑터 회로를 구성할 수 있다.
예를 들어, 상기 스토리지 어댑터 회로 제어기(860)가 스토리지 측의 프로토콜이 SAS라는 것을 검출한 경우에, 스토리지 어댑터 회로 제어기(860)는 SAS(805)용 PCIe 호스트 버스 어댑터를 상기 스토리지 어댑터 회로의 상기 호스트 측 인터페이스에 연결할 수 있다. 그리고 상기 스토리지 어댑터 회로 제어기(860)는 SAS(805)용 PCIe 호스트 버스 어댑터와 스토리지 어댑터 회로의 스토리지측 인터페이스들 사이에 SAS 확장기(830)를 연결할 수 있다. 다른 빌딩 블록들(810,835,840)은 이 구성에서는 사용되지 않을 수 있다. 다른 예에서, 상기 스토리지 어댑터 회로 제어기(860)가 호스트 측과 스토리지 측의 프로토콜이 같다는 것을 검출한 경우에, 상기 프로토콜 변황 빌딩 블록들(805,810)은 모두 미사용될 수 있다. 스토리지 어댑터 회로 제어기(860)는 호스트 측 인터페이스와 스토리지 측 인터페이스들 사이에서 적절한 라우팅 구성 요소(예를 들어, 호스트 인터페이스가 PCIe 이고 대규모 스토리지 장치들에 대한 인터페이스들이 PCIe 이면, PCIe 스위치 840)를 단순히 연결할 수 있다.
일부 실시 예들에서 도 8의 스토리지 어댑터 회로(130)의 스토리지 어댑터 회로 제어기(860)는 호스트 버스 어댑터(805,810)중 최대 하나와, 호스트 측 인터페이스와 스토리지 어댑터 회로내의 스토리지 측 인터페이스들 사이의 통합 장치(830,835,840,845)중 최대 하나를 어느 때라도 상술한 바와 같이 연결할 수 있다. 다른 실시 예들에서 스토리지 어댑터 회로 제어기(860)는 호스트 측 인터페이스와 스토리지 측 인터페이스들 사이에서, 하나 이상의 호스트 버스 어댑터들(805,810)과 하나 이상의 통합 장치(830,835,840,845)를 동시에 연결하도록 구성될 수 있다. 이에 따라 스토리지 마더보드는, 다른 프로토콜들을 가지며 스토리지 어댑터 회로(130)에 동시에 연결되는 다중 대규모 스토리지 디바이스들 SD를 포함할 수 있다.
예를 들어, 시스템은 SAS 와 NVMe 대규모 스토리지 장치들 둘 모두를 포함할 수 있으며, 호스트 버스 프로토콜은 PCIe 일 수 있다. 오퍼레이터는 일부 SAS 대규모 스토리지 장치들을 NVMe 대규모 스토리지 장치로 교체하기를 원할 수 있다. 일부 실시 예들은 시스템 내에서 다른 변화들을 요구함이 없이도, 그러한 교체를 수용하는 것이 가능해질 수 있다.
본 명세서에 개시된 본 발명의 실시 예들에 따라 스토리지 어댑터 회로 및/또는 다른 관련 장치들 혹은 구성 요소들(components)은 임의의 적절한 하드웨어, 펌웨어(예를 들면 어플리케이션 특정 집적회로), 소프트웨어, 또는 소프트웨어 펌웨어 및 하드웨어의 조합을 활용하여 구현될 수 있다. 예를 들어, 스토리지 어댑터 회로의 다양한 구성 요소들은 하나의 IC 칩이나 분리된 IC 칩들 상에 형성될 수 있다. 또한, 스토리지 어댑터 회로의 다양한 구성 요소들은 플렉시블 인쇄 회로 필름(flexible printed circuit film), 테이프 캐리어 패키지(tape carrier package: TCP), 또는 인쇄회로 기판(PCB) 상에 구현되거나 하나의 기판(substrate)상에 형성될 수 있다. 또한, 스토리지 어댑터 회로의 다양한 구성 요소들은 하나 이상의 컴퓨팅 장치들 내에서 하나 이상의 프로세서들에 의해 운영되는 프로세스 또는 쓰레드(thread)일 수 있다. 상기 프로세서들은 컴퓨터 프로그램 명령들을 실행하고 본 실시 예에 개시된 다양한 기능들을 수행하는 다른 시스템 구성 요소들과 연동(interacting)한다. 컴퓨터 프로그램 명령들은 메모리 내에 저장된다. 상기 메모리는 스탠다드 메모리 장치를 이용하여 컴퓨팅 장치 내에 구현될 수 있다. 스탠다드 메모리 장치는 예를 들면 RAM일 수 있다. 컴퓨터 프로그램 명령들은 또한 다른 비 일시적 컴퓨터 판독가능 매체 내에 저장될 수 있다. 상기 컴퓨터 판독가능 매체는 예를 들어 CD-ROM, 플래시 드라이브, 및/또는 기타 매체일 수 있다. 본 분야에 숙련된 지식을 가진 자는 다양한 컴퓨팅 장치들의 기능이 본 발명의 실시 예를 벗어나지 않는 범위 내에서 하나 이상의 다른 컴퓨팅 장치들로 분산될 수 있음이 이해될 것이다.
제1, 제2 등과 같은 용어들이 다양한 구성소자들, 구성요소들, 영역들, 층들 및/또는 섹션들을 설명하는데 사용될 수 있으나 이들 구성소자들, 구성요소들, 영역들, 층들 및/또는 섹션들은 그 용어들에 의해 제한되지 않는다. 이들 용어들은 하나의 구성소자, 구성요소, 영역, 층 또는 섹션을 다른 구성소자, 구성요소, 영역, 층 또는 섹션과 구별하기 위해서만 사용된다. 예를 들어, 본 발명의 기술적 사상과 범위를 벗어남이 없이 이하에서 언급되는 제1의 구성소자, 구성요소, 영역, 층 또는 섹션은 제2의 구성소자, 구성요소, 영역, 층 또는 섹션으로 칭해질 수 있다.
“하부에(beneath)?, "아래에(below)", "낮은(lower)", "밑에(under)", "위에(above)", 및 "상부에(upper)"와 같은 공간적으로 상대적인 용어들은 하나의 구성 소자, 또는 도면들에 도시된 바로서 다른 구성 소자(들)이나 특징(들)의 관계를 설명하기 위한 편의성을 위해 본 명세서 내에서 사용될 수 있다. 공간적으로 상대적인 용어들이 도면들 내에서 나타낸 방향에 덧붙여, 사용이나 동작 시에 해당 장치의 다른 방향들도 포함하는 경향이 있다. 예를 들어, 도면들 내에서 장치가 회전된다면, 다른 소자들이나 특징(features, 또는 물건)들에 대해 "아래에", "하부에", "밑에" 라고 언급된 소자들은 다른 소자들이나 특징의 "위에" 위치될 수도 있다. 따라서, 예시적 용어"아래에" 및 "밑에"는 위 및 아래의 방향 모두를 망라할 수 있다. 장치는 다른 방법으로 배치될 수 있으며(90도 또는 다른 방향으로 회전) 여기에 사용된 공간적으로 상대적인 설명은 상황에 따라서 해석되어야 한다.
본 명세서에서 사용된 용어는 특별한 실시 예들을 설명하기 위한 목적으로 사용된 것이며, 본 발명의 컨셉을 제한하는 것은 아니다. 본 명세서에 사용된 바로서, 용어들 "실질적으로(substantially)", 대략(about), 및 유사한 용어들은 근사치의 용어들로서 사용되며, 정도(degree)의 용어로 사용된 것으로 아니다. 그러한 용어들은 당업자에 의해 인식될 수 있는 측정되거나 계산된 값들에서 본질적인 편차를 나타내는 것으로 여기는 경향이 있다. 본 명세서에서 사용된 바로서, 용어 "메이저 구성요소"는 조성의 무게에서 적어도 절반을 구성하는 구성요소를 의미한다. 용어 "메이저 부분"은 복수의 항목들에 적용되었을 때, 그 항목들의 적어도 절반을 의미한다.
본 명세서에 사용된 바로서, 단수 형태 "하나(a)", 및 "한(an)"은 문맥에 명확히 달리 나타나지 않는 한, 복수 형태를 또한 포함하는 경향이 있다. 또한, 본 명세서에서 용어들 "포함하다" 및/또는 "포함" 이 사용되었을 때, 이는 명시된 특징들, 숫자들, 단계들, 동작들, 구성 소자들, 및/또는 구성 요소들의 존재를 명시하지만, 하나 이상의 다른 특징들, 숫자들, 단계들, 동작들, 구성 소자들, 구성 요소들, 및/또는 이들의 그룹들의 존재나 부가를 배제하지 않는 것임이 또한 이해될 수 있을 것이다. 본 명세서에 사용된 바로서, 용어 "및/또는"은 관련 리스트 항목들 내의 하나이상의 어떤 및 모든 조합들을 포함한다. "중 적어도 하나"와 같은 표현들은 선행하는 구성 소자들의 리스트가 있을 때 구성 소자들의 전체 리스트를 변경하지만 그 리스트의 개별적인 구성 소자들을 변경하지는 않는다. 또한, 본 발명의 실시 예의 설명에서 용어"할 수 있다"의 사용은 "본 발명의 하나 이상의 실시 예들"을 나타낼 수 있다. 또한 용어 "예시적으로"는 예시 는 도시를 나타내는 경향이 있다. 본 명세서에 사용된 바로서, 용어들 "사용하다", "사용" 및 "사용된"은 용어들 "활용하다", "활용", 및 "활용된"과 각기 동의어로 고려될 수 있다.
구성 소자가 다른 소자에 대하여 "상(on)", “에 연결된(connected to)", "에 접속된(coupled to)", 또는"에 인접하여(adjacent to)"로서 언급되었을 때, 다른 소자에 대해 직접적으로 상에, 에 연결된, 에 접속된, 또는 에 인접하여 된 것이거나, 하나 이상의 중간 소자들이 개재될 수 있음이 이해될 것이다. 이에 반해, 구성 소자가 다른 소자에 대하여 "직접적으로 상(on)에", "에 직접적으로 연결된(connected to)", "에 직접적으로 접속된(coupled to)" 또는 "바로 인접하여(immediately adjacent to)"으로서 언급되었을 때, 중간 소자들은 개재되지 않는다.
본 명세서에서 인용된 수치적 범위는 인용된 범위 내에 포함(subsumed)된 동일한 수치 정밀도의 모든 하위 범위들을 포함하는 것으로 의도된다. 예를 들어, "1.0 내지 10.0"의 범위는 인용된 최소 값 1.0과 인용된 최대 값 10.0의 사이(및 포함)의 모든 하위 범위들을 포함하는 것으로 의도된다. 예를 들면 수치적 범위는 2.4 내지 7.6. 과 같이, 최소 값 1.0 이상의 값과 최대 값 10.0 이하의 값을 가질 수 있다. 본 명세서에서 인용된 임의의 최대 수치 한정은 그 안에 포함된 모든 하위 수치 제한들을 포함하도록 의도되고, 인용된 임의의 최소 수치 한정은 그 안에 포함된 모든 상위 수치 제한들을 포함하도록 의도되는 경향이 있다.
비록 플렉시블 스토리지 플랫폼에 대한 다중 프로토콜 IO 인프라스트럭쳐의 예시적인 실시 예들이 상세하게 설명되고 본 명세서에 예시되었지만 다양한 변경 및 변형이 당업자에게 명백할 것이다. 따라서, 본 발명의 기본 원리에 따라 구성된 플렉시블 스토리지 플랫폼에 대한 다중 프로토콜 IO 인프라스트럭쳐가 본 명세서에 구체적으로 기재된 것과는 다르게 실시될 수 있다는 것이 이해될 것이다. 본 발명은 이하의 청구 범위들 및 그 등가물에서 또한 정의된다.

Claims (20)

  1. 제1 스토리지 장치에 기계적으로 연결하기 위한 제1 스토리지 인터페이스 커넥터 및 제2 스토리지 장치에 기계적으로 연결하기 위한 제2 스토리지 인터페이스 커넥터를 포함하는 스토리지 마더보드;
    상기 스토리지 마더보드와 통신하고, 상기 제1 스토리지 장치와 통신하기 위한 제1 스토리지 인터페이스를 지원하도록 구성된 제1 스토리지 어댑터 회로; 및
    상기 스토리지 마더보드와 통신하고, 상기 제2 스토리지 장치와 통신하기 위한 제2 스토리지 인터페이스를 지원하도록 구성된 제2 스토리지 어댑터 회로를 포함하되,
    상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제2 스토리지 인터페이스와 상이하고,
    상기 제1 스토리지 인터페이스 커넥터는 상기 제2 스토리지 인터페이스 커넥터와 상이한 멀티 프로토콜 커넥터를 포함하는 시스템.
  2. 제 1 항에 있어서,
    상기 제1 스토리지 인터페이스는 SATA(Serial Advanced Technology Attachment) 인터페이스 또는 SAS(Serial Attached SCSI) 중 적어도 하나를 포함하고,
    상기 제2 스토리지 인터페이스는 NVMe(Non Volatile Memory Express) 인터페이스를 포함하는 시스템.
  3. 제 1 항에 있어서,
    상기 제1 스토리지 장치는 상기 제1 스토리지 인터페이스와 호환되고,
    상기 제1 스토리지 인터페이스 커넥터는 상기 제1 스토리지 인터페이스와 상이한 제3 스토리지 인터페이스와 호환되는 제3 스토리지 장치를 기계적으로 연결하도록 구성되는 시스템.
  4. 제 3 항에 있어서,
    상기 제1 스토리지 장치가 상기 제1 스토리지 인터페이스 커넥터로부터 물리적으로 제거되고, 상기 제3 스토리지 장치로 교체되는 것에 응답하여, 상기 제1 스토리지 인터페이스 커넥터가 상기 제3 스토리지 장치에 연결되는 시스템.
  5. 제 4 항에 있어서,
    상기 제1 스토리지 인터페이스는 SATA(Serial Advanced Technology Attachment) 인터페이스이고,
    상기 제3 스토리지 인터페이스는 SAS(Serial Attached SCSI) 인터페이스인 시스템.
  6. 제 1 항에 있어서,
    상기 멀티 프로토콜 커넥터는 SATA(Serial Advanced Technology Attachment), SAS(Serial Attached SCSI) 또는 PCIe(Peripheral Component Interconnect Express) 상의 NVMe(Non Volatile Memory Express) 중 적어도 2개와 호환되는 시스템.
  7. 제1 스토리지 장치에 연결하기 위한 제1 스토리지 인터페이스 커넥터 및 제2 스토리지 장치에 연결하기 위한 제2 스토리지 인터페이스 커넥터를 포함하는 스토리지 마더보드;
    상기 스토리지 마더보드와 통신하고, 상기 제1 스토리지 장치와 통신하기 위한 제1 스토리지 인터페이스를 지원하도록 구성된 제1 스토리지 어댑터 회로; 및
    상기 스토리지 마더보드와 통신하고, 상기 제2 스토리지 장치와 통신하기 위한 제2 스토리지 인터페이스를 지원하도록 구성된 제2 스토리지 어댑터 회로를 포함하되,
    상기 제1 스토리지 어댑터 회로의 상기 제1 스토리지 인터페이스는 상기 제2 스토리지 어댑터 회로의 상기 제2 스토리지 인터페이스와 상이하고,
    상기 제1 스토리지 인터페이스 커넥터 또는 상기 제2 스토리지 인터페이스 커넥터 중 적어도 하나는 적어도 2개의 상이한 스토리지 인터페이스들을 지원하도록 구성된 멀티 프로토콜 커넥터이고,
    상기 멀티 프로토콜 커넥터는 2-레인(lane) 프로토콜 및 4-레인(lane) 프로토콜을 지원하도록 구성되는 시스템.
  8. 제 7 항에 있어서,
    상기 멀티 프로토콜 커넥터는 상기 멀티 프로토콜 커넥터에 연결된 스토리지 장치에 의하여 사용된 핀들의 개수에 따라서 상기 2-레인 프로토콜 또는 4-레인 프로토콜을 이용하도록 구성된 시스템.
  9. 제1 스토리지 장치에 기계적으로 연결하기 위한 제1 스토리지 인터페이스 커넥터 및 제2 스토리지 장치에 기계적으로 연결하기 위한 제2 스토리지 인터페이스 커넥터를 포함하는 스토리지 마더보드; 및
    상기 스토리지 마더보드와 통신하고, 상기 제1 스토리지 장치와 통신하기 위한 제1 스토리지 인터페이스 및 상기 제2 스토리지 장치와 통신하기 위한 제2 스토리지 인터페이스를 지원하도록 구성된 적어도 하나의 스토리지 어댑터 회로를 포함하되,
    상기 제1 스토리지 인터페이스는 상기 제2 스토리지 인터페이스와 상이하고,
    상기 제1 스토리지 인터페이스 커넥터는 상기 제2 스토리지 인터페이스 커넥터와 상이한 멀티 프로토콜 커넥터를 포함하는 시스템.
  10. 제 9 항에 있어서,
    상기 제1 스토리지 인터페이스 커넥터는 2-레인(lane) 프로토콜을 이용하도록 구성되고,
    상기 제2 스토리지 인터페이스 커넥터는 4-레인(lane) 프로토콜을 이용하도록 구성되는 시스템.
  11. 제 10 항에 있어서,
    상기 제1 스토리지 인터페이스는 SATA(Serial Advanced Technology Attachment) 인터페이스 또는 SAS(Serial Attached SCSI) 인터페이스 중 적어도 하나를 포함하고,
    상기 제2 스토리지 인터페이스는 NVMe(Non Volatile Memory Express) 인터페이스를 포함하는 시스템.
  12. 제 11 항에 있어서,
    상기 제1 스토리지 인터페이스는 SATA 및 SAS와 호환되는 시스템.
  13. 제 9 항에 있어서,
    상기 적어도 하나의 스토리지 어댑터 회로는 상기 멀티 프로토콜 커넥터와 연결된 제3 스토리지 장치와 호환되는 제3 스토리지 인터페이스를 검출하고, 상기 제3 스토리지 장치가 상기 멀티 프로토콜 커넥터에 연결되는 것에 응답하여 상기 제3 스토리지 인터페이스를 지원하기 위한 상기 적어도 하나의 스토리지 어댑터 회로를 재구성하도록 구성된 스토리지 제어기를 포함하고,
    상기 제3 스토리지 인터페이스는 상기 제1 스토리지 인터페이스 또는 상기 제2 스토리지 인터페이스 중 적어도 하나와 상이한 시스템.
  14. 제 13 항에 있어서,
    상기 스토리지 제어기는 상기 제1 스토리지 장치가 상기 멀티 프로토콜 커넥터로부터 물리적으로 제거되고, 상기 제3 스토리지 장치로 교체되는 것에 응답하여, 상기 멀티 프로토콜 커넥터에 연결된 상기 제3 스토리지 장치를 검출하도록 구성된 시스템.
  15. 제 9 항에 있어서,
    상기 멀티 프로토콜 커넥터는 2-레인(lane) 프로토콜 및 4-레인(lane) 프로토콜을 지원하도록 구성되는 시스템.
  16. 제 15 항에 있어서,
    상기 멀티 프로토콜 커넥터는 상기 멀티 프로토콜 커넥터에 연결된 스토리지 장치에 의하여 사용된 핀들의 개수에 따라서 상기 2-레인 프로토콜 또는 4-레인 프로토콜을 이용하도록 구성된 시스템.
  17. 제 16 항에 있어서,
    상기 멀티 프로토콜 커넥터는 SATA(Serial Advanced Technology Attachment), SAS(Serial Attached SCSI) 또는 PCIe(Peripheral Component Interconnect Express) 상의 NVMe(Non Volatile Memory Express) 중 적어도 2개와 호환되는 시스템.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020160052443A 2015-05-08 2016-04-28 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐 KR102384328B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220041799A KR102542578B1 (ko) 2015-05-08 2022-04-04 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562158714P 2015-05-08 2015-05-08
US62/158,714 2015-05-08
US15/090,409 2016-04-04
US15/090,409 US10114778B2 (en) 2015-05-08 2016-04-04 Multi-protocol IO infrastructure for a flexible storage platform

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220041799A Division KR102542578B1 (ko) 2015-05-08 2022-04-04 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐

Publications (2)

Publication Number Publication Date
KR20160131906A KR20160131906A (ko) 2016-11-16
KR102384328B1 true KR102384328B1 (ko) 2022-04-07

Family

ID=57222656

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020160052443A KR102384328B1 (ko) 2015-05-08 2016-04-28 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐
KR1020220041799A KR102542578B1 (ko) 2015-05-08 2022-04-04 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220041799A KR102542578B1 (ko) 2015-05-08 2022-04-04 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐

Country Status (5)

Country Link
US (6) US10114778B2 (ko)
JP (2) JP6742144B2 (ko)
KR (2) KR102384328B1 (ko)
CN (1) CN106126448B (ko)
TW (2) TWI734555B (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210117298A1 (en) * 2013-02-21 2021-04-22 Advantest Corporation Use of host bus adapter to provide protocol flexibility in automated test equipment
US10114778B2 (en) * 2015-05-08 2018-10-30 Samsung Electronics Co., Ltd. Multi-protocol IO infrastructure for a flexible storage platform
TWI536179B (zh) * 2015-07-02 2016-06-01 緯創資通股份有限公司 連接電路及具有該連接電路之計算機系統
US11983138B2 (en) 2015-07-26 2024-05-14 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
TWM526712U (zh) * 2016-05-06 2016-08-01 Portwell Inc 可支援並自動辨識ip硬碟與sata硬碟的伺服器
US10691628B2 (en) * 2016-05-06 2020-06-23 Quanta Computer Inc. Systems and methods for flexible HDD/SSD storage support
US20190109720A1 (en) 2016-07-26 2019-04-11 Samsung Electronics Co., Ltd. Modular system (switch boards and mid-plane) for supporting 50g or 100g ethernet speeds of fpga+ssd
US10210123B2 (en) * 2016-07-26 2019-02-19 Samsung Electronics Co., Ltd. System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices
US10372659B2 (en) * 2016-07-26 2019-08-06 Samsung Electronics Co., Ltd. Multi-mode NMVE over fabrics devices
US10346041B2 (en) 2016-09-14 2019-07-09 Samsung Electronics Co., Ltd. Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US11461258B2 (en) 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
US10620855B2 (en) * 2016-09-06 2020-04-14 Samsung Electronics Co., Ltd. System and method for authenticating critical operations on solid-state drives
US10496566B2 (en) * 2016-12-20 2019-12-03 Samsung Electronics Co., Ltd. Method and apparatus for data recovering during a board replacement
US10255134B2 (en) * 2017-01-20 2019-04-09 Samsung Electronics Co., Ltd. Control plane method and apparatus for providing erasure code protection across multiple storage devices
US11543967B2 (en) * 2017-02-23 2023-01-03 Samsung Electronics Co., Ltd. Method for controlling BW SLA in NVME-of ethernet SSD storage systems
US10338838B2 (en) * 2017-03-24 2019-07-02 Samsung Electronics Co., Ltd. Multi-mode NVMe over fabrics device for supporting CAN (controller area network) bus or SMBus interface
CN112214166B (zh) 2017-09-05 2022-05-24 华为技术有限公司 用于传输数据处理请求的方法和装置
US11263508B2 (en) * 2017-09-22 2022-03-01 Samsung Electronics Co., Ltd. Modular NGSFF module to meet different density and length requirements
US11232037B2 (en) * 2017-10-23 2022-01-25 Seagate Technology Llc Using a first-in-first-out (FIFO) wraparound address lookup table (ALT) to manage cached data
TWI636366B (zh) 2017-11-22 2018-09-21 緯穎科技服務股份有限公司 資料冗餘的處理方法及其相關電腦系統
US10884975B2 (en) * 2017-11-30 2021-01-05 Samsung Electronics Co., Ltd. Differentiated storage services in ethernet SSD
US10846017B2 (en) 2017-12-14 2020-11-24 Western Digital Technologies, Inc. Secure digital (SD) to NVMe buffer manager
US10534738B2 (en) * 2018-01-17 2020-01-14 Western Digital Technologies, Inc. Host bus adaptor with configurable interface
US11334274B2 (en) * 2018-02-09 2022-05-17 Seagate Technology Llc Offloaded data migration between storage devices
US11307778B2 (en) 2018-03-09 2022-04-19 Kioxia Corporation Power management for solid state drives in a network
US10521378B2 (en) * 2018-03-09 2019-12-31 Samsung Electronics Co., Ltd. Adaptive interface storage device with multiple storage protocols including NVME and NVME over fabrics storage devices
KR102637166B1 (ko) * 2018-04-17 2024-02-16 삼성전자주식회사 대용량 데이터를 저장하는 네트워크 스토리지 장치
CN108804360A (zh) * 2018-05-21 2018-11-13 郑州云海信息技术有限公司 一种兼容sas/sata/nvme硬盘的存储卡
CN110609866B (zh) * 2018-06-15 2023-08-11 伊姆西Ip控股有限责任公司 用于协商事务的方法、设备和计算机程序产品
BE1026569B1 (de) * 2018-08-27 2020-03-23 Phoenix Contact Gmbh & Co Steuer- und Datenübertragungsanlage zur Unterstützung verschiedener Kommunikationsprotokolle und ein Adaptermodul
CN109857694B (zh) * 2018-12-10 2021-03-19 联想(北京)有限公司 装置及计算设备
CN109684250A (zh) * 2019-01-10 2019-04-26 中国长城科技集团股份有限公司 兼容sas、sata、nvme硬盘的接口电路及背板
US11500593B2 (en) * 2019-03-20 2022-11-15 Samsung Electronics Co., Ltd. High-speed data transfers through storage device connectors
CN110096112B (zh) * 2019-04-29 2020-11-10 新华三信息技术有限公司 硬盘装置、硬盘转接装置、网络设备与硬盘的连接方法
US11762798B2 (en) * 2019-06-25 2023-09-19 Micron Technology, Inc. Aggregated and virtualized solid state drives with multiple host interfaces
US10942881B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Parallel operations in aggregated and virtualized solid state drives
US11055249B2 (en) 2019-06-25 2021-07-06 Micron Technology, Inc. Access optimization in aggregated and virtualized solid state drives
US10942846B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Aggregated and virtualized solid state drives accessed via multiple logical address spaces
US11573708B2 (en) 2019-06-25 2023-02-07 Micron Technology, Inc. Fail-safe redundancy in aggregated and virtualized solid state drives
US11513923B2 (en) 2019-06-25 2022-11-29 Micron Technology, Inc. Dynamic fail-safe redundancy in aggregated and virtualized solid state drives
US11768613B2 (en) * 2019-06-25 2023-09-26 Micron Technology, Inc. Aggregation and virtualization of solid state drives
JP7442025B2 (ja) * 2019-08-30 2024-03-04 株式会社ユニテックス インタフェース変換装置
US11340796B2 (en) 2019-08-30 2022-05-24 Dell Products L.P. Method for managing sleep mode at a data storage device and system therefor
CN112860606A (zh) * 2019-11-28 2021-05-28 浙江宇视科技有限公司 一种接口转换装置及设备
US20200192832A1 (en) * 2020-02-21 2020-06-18 Intel Corporation Influencing processor governance based on serial bus converged io connection management
US20210279004A1 (en) * 2020-03-03 2021-09-09 Silicon Motion, Inc. Ssd system and ssd control system
US11150842B1 (en) * 2020-04-20 2021-10-19 Western Digital Technologies, Inc. Dynamic memory controller and method for use therewith
US11281399B2 (en) 2020-06-24 2022-03-22 Western Digital Technologies, Inc. Dual-interface storage system and method for use therewith
US11442665B2 (en) 2020-12-04 2022-09-13 Western Digital Technologies, Inc. Storage system and method for dynamic selection of a host interface
US11907587B2 (en) * 2021-06-09 2024-02-20 Western Digital Technologies, Inc. Managing persistent memory regions across multiple protocols
CN114185826A (zh) * 2021-12-13 2022-03-15 深圳市绿联科技股份有限公司 一种用于外接存储设备的接口适配器
US20230325338A1 (en) * 2022-04-06 2023-10-12 Western Digital Technologies, Inc. Protocol indicator for data transfer
US20240004822A1 (en) * 2022-06-30 2024-01-04 Advanced Micro Devices, Inc. Automatic provision of high speed serializer/deserializer lanes by firmware
US20240095199A1 (en) * 2022-09-15 2024-03-21 Micron Technology, Inc. Multi-interface memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090172235A1 (en) 2007-12-27 2009-07-02 Mei Yan Megasim card adapter
US20130160001A1 (en) 2011-12-16 2013-06-20 International Business Machines Corporation Managing configuration and system operations of a non-shared virtualized input/output adapter as virtual peripheral component interconnect root to single function hierarchies

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2693575B1 (fr) 1992-07-09 1994-08-19 Gemplus Card Int Carte à mémoire de masse avec fonction entrée/sortie.
US6738937B1 (en) 2000-12-01 2004-05-18 Lsi Logic Corporation Method for nondisruptive testing of device and host attachment to storage subsystems
US7020600B2 (en) 2001-09-07 2006-03-28 Texas Instruments Incorporated Apparatus and method for improvement of communication between an emulator unit and a host device
US6738259B2 (en) 2001-11-19 2004-05-18 Imation Corp. Apparatus supporting multiple memory card formats
US7155546B2 (en) * 2003-12-18 2006-12-26 Intel Corporation Multiple physical interfaces in a slot of a storage enclosure to support different storage interconnect architectures
US7844444B1 (en) 2004-11-23 2010-11-30 Sanblaze Technology, Inc. Fibre channel disk emulator system and method
US7308534B2 (en) 2005-01-13 2007-12-11 Hitachi, Ltd. Apparatus and method for managing a plurality of kinds of storage devices
US7478221B1 (en) 2005-05-03 2009-01-13 Symantec Operating Corporation System and method for using consistent virtual addresses to communicate in cooperative multi-layer virtualization environments
US8065133B1 (en) 2006-06-30 2011-11-22 Sanblaze Technology, Inc. Method for testing a storage network including port level data handling
US20090077299A1 (en) 2007-09-14 2009-03-19 Layerwalker Technology, Inc. Method and System for Accessing Data
CN101599053B (zh) * 2008-06-05 2011-05-25 联想(北京)有限公司 支持多种传输协议的串行接口控制器及控制方法
US8051228B2 (en) * 2008-11-13 2011-11-01 International Business Machines Corporation Physical interface macros (PHYS) supporting heterogeneous electrical properties
US8195878B2 (en) 2009-02-19 2012-06-05 Pmc-Sierra, Inc. Hard disk drive with attached solid state drive cache
US8301822B2 (en) 2009-09-23 2012-10-30 Sandisk Il Ltd. Multi-protocol storage device bridge
US9141571B2 (en) * 2010-12-28 2015-09-22 Avago Technologies General Ip (Singapore) Pte. Ltd. PCI express switch with logical device capability
WO2013038442A1 (en) 2011-09-13 2013-03-21 Hitachi, Ltd. Storage system comprising flash memory, and storage control method
WO2013126053A1 (en) * 2012-02-22 2013-08-29 Hewlett-Packard Development Company, L.P. Multiplexer for signals according to different protocols
US8998636B2 (en) * 2013-01-29 2015-04-07 Hewlett-Packard Development Company, L.P. Interconnect assembly
US9424224B2 (en) * 2013-06-18 2016-08-23 Avago Technologies General Ip (Singapore) Pte. Ltd. PCIe tunneling through SAS
US8943234B1 (en) 2013-08-05 2015-01-27 Lsi Corporation Multi-protocol storage controller
US9460042B2 (en) * 2013-09-03 2016-10-04 Hewlett Packard Enterprise Development Lp Backplane controller to arbitrate multiplexing of communication
KR20150047784A (ko) * 2013-10-25 2015-05-06 삼성전자주식회사 서버 시스템 및 스토리지 시스템
US20160124872A1 (en) * 2013-12-12 2016-05-05 Samsung Electronics Co., Ltd. Disaggregated memory appliance
US10635316B2 (en) * 2014-03-08 2020-04-28 Diamanti, Inc. Methods and systems for data storage using solid state drives
US10311003B2 (en) * 2014-03-26 2019-06-04 Lenovo (Singapore) Pte. Ltd. Detection and identifcation of supported connection protocols in a multi-purpose storage bay
CN204203855U (zh) * 2014-11-24 2015-03-11 浪潮电子信息产业股份有限公司 一种新型外置式sas 12g raid存储卡
US10114778B2 (en) * 2015-05-08 2018-10-30 Samsung Electronics Co., Ltd. Multi-protocol IO infrastructure for a flexible storage platform
US20170068628A1 (en) * 2015-09-08 2017-03-09 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Reducing ethernet latency in a multi-server chassis
US10235314B2 (en) * 2015-12-28 2019-03-19 EMC IP Holding Company LLC Fabric for modular solid-state storage systems
US10289560B2 (en) * 2016-03-10 2019-05-14 Toshiba Memory Corporation Switch module and storage system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090172235A1 (en) 2007-12-27 2009-07-02 Mei Yan Megasim card adapter
US20130160001A1 (en) 2011-12-16 2013-06-20 International Business Machines Corporation Managing configuration and system operations of a non-shared virtualized input/output adapter as virtual peripheral component interconnect root to single function hierarchies

Also Published As

Publication number Publication date
CN106126448A (zh) 2016-11-16
US20190286595A1 (en) 2019-09-19
KR20220044932A (ko) 2022-04-12
KR102542578B1 (ko) 2023-06-13
TWI734555B (zh) 2021-07-21
US20210263871A1 (en) 2021-08-26
US20200379933A1 (en) 2020-12-03
US10114778B2 (en) 2018-10-30
US20160328347A1 (en) 2016-11-10
TW202042076A (zh) 2020-11-16
JP6799706B2 (ja) 2020-12-16
US11003609B2 (en) 2021-05-11
JP2020173864A (ja) 2020-10-22
JP2016212880A (ja) 2016-12-15
US10360166B2 (en) 2019-07-23
KR20160131906A (ko) 2016-11-16
TWI702502B (zh) 2020-08-21
TW201706863A (zh) 2017-02-16
JP6742144B2 (ja) 2020-08-19
CN106126448B (zh) 2020-09-22
US20180329844A1 (en) 2018-11-15
US20240168903A1 (en) 2024-05-23
US10776299B2 (en) 2020-09-15
US11907150B2 (en) 2024-02-20

Similar Documents

Publication Publication Date Title
KR102542578B1 (ko) 플렉시블 스토리지 플랫폼을 위한 다중 프로토콜 io 인프라스트럭쳐
US11741040B2 (en) SFF-TA-100X based multi-mode protocols solid state devices
US10503618B2 (en) Modular switched fabric for data storage systems
US10467170B2 (en) Storage array including a bridge module interconnect to provide bridge connections to different protocol bridge protocol modules
EP3158455B1 (en) Modular switched fabric for data storage systems
US8522064B2 (en) Server system having mainboards
US20220346243A1 (en) Electronic equipment that provides multi-function slots
KR20110030002A (ko) 활성-활성 멀티플렉싱 유닛 또는 포트 선택자 유닛을 가지는 네트워크 직접 연결 저장 장치
US20240232119A9 (en) Scaling midplane bandwidth between storage processors via network devices
US20240134814A1 (en) Scaling midplane bandwidth between storage processors via network devices
KR20190055970A (ko) 설계자동화 프로그램을 위한 스토리지 시스템

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant