KR20120085758A - 다중 프로토콜 저장 장치 브리지 - Google Patents

다중 프로토콜 저장 장치 브리지 Download PDF

Info

Publication number
KR20120085758A
KR20120085758A KR1020127007910A KR20127007910A KR20120085758A KR 20120085758 A KR20120085758 A KR 20120085758A KR 1020127007910 A KR1020127007910 A KR 1020127007910A KR 20127007910 A KR20127007910 A KR 20127007910A KR 20120085758 A KR20120085758 A KR 20120085758A
Authority
KR
South Korea
Prior art keywords
protocol
storage
storage device
interface
host
Prior art date
Application number
KR1020127007910A
Other languages
English (en)
Other versions
KR101700380B1 (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 KR20120085758A publication Critical patent/KR20120085758A/ko
Application granted granted Critical
Publication of KR101700380B1 publication Critical patent/KR101700380B1/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/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
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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
    • G06F3/0661Format or protocol conversion arrangements
    • 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
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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/38Universal adapter
    • G06F2213/3852Converter between protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명의 브리지는, 하나의 호스트로부터 그리고 상기 호스트로 데이터/명령들을 전달받고 전달하기 위한 하나의 호스트 인터페이스와, 하나의 저장 장치로 부터 그리고 상기 저장 장치에 데이터/명령들을 전달받고 전달하기 위한 하나의 저장 장치 인터페이스를 포함한다. 상기 브리지는 또한, 하나의 SDPC와, 하나의 제어기와, 상기 호스트 장치에 의해 사용되는 저장 장치 프로토콜이 저장 장치에 의해 사용되는 저장 장치 프로토콜과 다른 경우에는 상기 프로토콜 변환기를 상기 호스트 인터페이스 및 저장 장치 인터페이스에 연결하고, 상기 두 개의 저장 장치 프로토콜들이 동일한 경우에는 상기 양방향 프로토콜 변환기를 통하지 않고 상기 호스트 장치 인터페이스를 상기 저장 장치 인터페이스에 연결하도록 상기 제어기에 의하여 설정될 수 있는 하나의 스위칭 시스템을 포함한다. 상기 브리지는, 서로 다른 프로토콜을 호스트 프로토콜로 또 그 반대 방향으로 각각 변환하기 위하여, 두 개의 SDPC들을 포함할 수도 있고, 이 경우 상기 스위칭 시스템은 상기 두 개의 SDPC들 사이에서 전환(switch)될 수 있도록 설정 가능하다. 상기 브리지는 상기 SDPC를 전혀 구비하지 않을 수도 있는데, 이 경우 상기 스위칭 시스템은, (1) 상기 호스트 장치 인터페이스를 상기 저장 장치 인터페이스에 연결하는 것과 (2) 상기 저장 장치 인터페이스를 바이패스하는 것 사이에서 전환될 수 있도록 설정 가능하다.

Description

다중 프로토콜 저장 장치 브리지{MULTI-PROTOCOL STORAGE DEVICE BRIDGE}
본 발명은 일반적으로 저장 시스템에 관한 것으로서, 더욱 자세하게는 호스트 디바이스(host device)가 사용하고 있는 프로토콜과 동일하거나 상이한 통신 프로토콜(communication protocol)을 이용하여 호스트 디바이스를 저장 장치에 연결하는 방법 및 그러한 통신 방법을 가능케 하는 장치에 관한 것이다.
플래시 저장 장치들은 휴대성이 좋고 물리적 크기가 작으며 큰 저장 용량을 갖기 때문에 지난 수년간 빠르게 증가해왔다. 플래시 저장 장치들은 다양한 형태로 제공된다. 일부 저장 장치들은 "탈착 가능"(removable)한 것으로 여겨지는데, 이는 사용자가 하나의 호스트 장치로부터 다른 장치로 이동시키거나 호스트 장치에 연결된 저장 장치들을 교체함으로써 하나의 호스트 장치에서 다수의 저장 장치들을 사용할 수 있음을 의미한다. 다른 저장 장치들은 "내장"된 것으로 간주되는데, 이는 그 저장 장치들이 호스트 장치 안에 포함되어 사용자에 의해 제거되지 않도록 구성된 것을 의미한다.
하나의 호스트는, 현존하는 장치이든 또는 미래에 사용할 장치이든(예를 들어, SD 카드, UFS 카드, UHS-II 카드 등), 여러 종류의 탈착 가능 저장 장치들과 함께 작동할 필요가 있을 수 있다. 다양한 저장 장치들은 서로 다른 종류의 프로토콜들을 사용하거나 사용하도록 설계될 수 있다. 이러한 이유로, 상기 호스트 장치는 서로 다른 프로토콜들을 지원하여야 하고, 이는 서로 다른 카드들 및 프로토콜들을 위하여 별개의 인터페이스들을 필요로 하도록 만들었다. 또한 호스트는 다른 종류의 저장 장치 통신 토폴로지(topology)들을 지원하여야 할 수도 있다.
다양한 저장 장치들과 통신할 수 있게 하기 위하여 서로 다른 프로토콜들을 지원하는 많은 수의 인터페이스들 및 토폴로지들을 하나의 호스트에 제공하는 것은 항상 실용적이거나 효과적인 방안일 수는 없다. 따라서 더 나은 접근 방법으로 상기 문제를 해결할 것이 요구된다.
상기 문제와 관련하여, 예를 들어, 하나의 단일한 공통 인터페이스를 통하여 다양한 종류의 저장 장치들과 통신할 수 있는 호스트 장치를 갖추는 것이 바람직하다. 다양한 저장 장치들 중에서, 레거시(legacy) SD 카드들과 같은 '저속'의 카드들도 있고, UHS-II 카드 또는 UFS 카드들과 같은 '고속'의 카드들도 있는데, 그러한 모든 카드들을 하나의 공통 인터페이스로 지원하는 것이 유리하다. 서로 다른 프로토콜들로 통신을 수행하기 위하여, 상기 단일 공통 인터페이스는 다용도(versatile) 인터페이스(이후 본 명세서에서는 "브리지(bridge)"라고 칭함)로 개조된다. 상기한 바와 같은 통신들을 지원하기 위하여 설계된 다양한 브리지의 실시예들이 본 발명에서 제공된다.
하나의 실시예에서, 브리지는, 통신의 관점에서 하나의 호스트 장치와 하나의 탈착 가능 저장 장치를 연결(interface)하기 위하여, 직렬 통신 경로(serial communication path)를 따라 배치된다. 브리지는 호스트 장치와 저장 장치 사이에서 데이터 및 명령들을 전달하기 위한 두 개의 인터페이스들을 포함한다. 상기 두 개의 인터페이스들 중 하나는 호스트 측에 있는 호스트 인터페이스이고, 다른 하나는 저장 장치 측에 있는 저장 장치 인터페이스이다.
브리지는 하나 또는 그 이상의 양방향 저장 장치 프로토콜 변환기(bi-directional "SDPCs"; storage device protocol converters)를 포함할 수 있다. 하나의 SDPC는 데이터 및 명령들을 호스트 인터페이스를 통하여 호스트 장치로 변환 및 전달하기 위하여, 호스트 장치가 사용하는 저장 장치 프로토콜을 사용하도록 적용될 수 있다. 브리지는 또한 하나의 제어기와 하나의 스위칭 시스템을 포함한다. 상기 스위칭 시스템은 상기 제어기에 의하여 다수의 상태들 중 하나의 상태로 구성 가능한 것일 수 있다. 예를 들어, 호스트 장치에 의하여 사용되는 저장 장치 프로토콜이 해당 호스트에 연결된 저장 장치에 의해 사용되는 저장 장치 프로토콜과 다른 경우인 상태(1)에서는, 상기 스위칭 시스템은 호스트 인터페이스를 저장 장치 인터페이스에 연결하고, 두 개의 저장 장치 프로토콜들이 동일한 경우인 상태(2)에서는, 상기 스위칭 시스템이 호스트 장치 인터페이스를 저장 장치 인터페이스에 직접 연결하거나 SDPC를 바이패스(bypass)하여 다른 수단을 통해 연결하며, 저장 장치가 브리지에 연결되어 있지 않은 경우인 상태(3)에서는, 스위칭 시스템이 저장 장치 인터페이스를 바이패스하여 지나가도록 한다.
위에서 설명한 세 가지 스위칭 상태들 중 모두가 반드시 브리지에서 구현되고 사용되어야 하는 것은 아니다. 하나의 브리지가 사용하는 스위칭 상태들의 개수 및 종류들은 상황에 따라 결정된다(예를 들어, 필요한 변환(들)의 종류, 사용된 네트워크 토폴로지의 종류 등). 예를 들어, 만약 호스트 장치들 및 저장 장치들이 체인 토폴로지(chain topology)를 통해 기능적으로 연결된다면, 위에서 설명된 상태(1) 및 상태(2)가 적용가능하다. 다른 실시예에서는, 예를 들어 호스트 장치 및저장 장치들이 링 토폴로지(ring topology)를 통하여 기능적으로 연결되고 어떤 프로토콜 변환도 필요하지 않다면, 위에서 설명된 상태(1) 및 상태(3)가 적용가능하다. 상기 스위칭 시스템을 조작함으로써, 저속 저장 장치 프로토콜을 사용하는 장치들과 고속 저장 장치 프로토콜을 사용하는 장치들이 모두 단일한 공통 고속 저장 장치 프로토콜을 사용하는 브리지를 통하여 하나의 호스트 장치와 통신할 수 있다.
대안적으로는, 상기 브리지가 두 개의 SDPC들을 포함할 수 있는데, 각각의 SDPC는 서로 다른 프로토콜을 호스트 프로토콜로 변환하고 그 반대의 기능을 수행하고, 이와 함께 스위칭 시스템은 상기 두 개의 SDPC들 사이에서 단순한 스위칭을 수행하도록 제어기에 의해 구성 가능한 것일 수 있다. 이 경우에도 역시, 브리지는 SDPC를 완전히 생략할 수 있고, 상기 스위칭 시스템은 (1) 호스트 장치 인터페이스를 저장 장치 인터페이스에 연결하는 상태와, (2) 저장 장치 인터페이스를 거치지 않고 연결하는 상태 중에서 단순한 스위칭을 수행하도록 제어기에 의해 구성 가능한 것일 수 있다. 또 다른 실시예에서는, 상기 브리지가 호스트 장치 또는 통신 허브(communication hub)에 직접 연결될 수 있다. 이러한 실시예들 그리고 다른 실시예들과, 그 특징들, 양태들 및 장점들은 이후에 설명되는 바와 같이 이후의 상세한 설명, 첨부된 청구범위의 청구항들 및 도면들로부터 명확히 이해될 수 있을 것이다.
본 명세서의 일부로서 포함되어 있고 일부분을 구성하는 첨부된 도면은 다양한 실시예들을 도시하기 위한 것이며, 본 실시예들로 제한되는 것을 의미하지 않는다. 설명의 단순성 및 명료성을 위하여, 아래에서 참조되는 도면들에서 보이는 구성 요소들이 반드시 비율에 맞추어 도시된 것은 아니라는 점도 알 수 있다. 또한 적절하다고 판단되는 곳에서는, 대응되거나 동일한 요소들을 지칭하기 위하여, 여러 도면들에 걸쳐서 참조 부호들이 반복될 수 있다.
도 1은, 체인 토폴로지를 통하여 호스트 장치가 하나의 고속 저장 장치(예를 들어, UFS 카드) 또는 하나의 저속 저장 장치(예를 들어, 레거시 SD 카드)와 통신하는, 전통적인 네트워크 아키텍쳐(network architecture)의 한 예를 보여주는 다이어그램이다.
도 2는 체인 토폴로지를 사용하며, 한가지 실시예에 따른 하나의 브리지를 포함하는, 저장 장치 네트워크 아키텍쳐의 다이어그램이다.
도 3은 체인 토폴로지를 사용하며, 한가지 실시예에 따른 하나의 브리지를 포함하는, 네트워크 아키텍쳐의 다이어그램이다.
도 4는 하나의 실시예에 따른 브리지를 보여주는 도면이다.
도 5는 하나의 실시예에 따른 브리지를 보여주는 도면이다.
도 6은 하나의 실시예에 따른 브리지를 보여주는 도면이다.
도 7은 하나의 실시예에 따른 브리지를 작동하기 위한 방법을 보여주는 흐름도이다.
도 8은, 저장 장치 인터페이스 명령들이 UFS 프로토콜 상의 SD를 사용하여 양방향으로 투명하게 전달되는, 브리지를 통한 호스트 장치와 저장 장치 사이의 통신을 개략적으로 보여주는 도면이다.
도 9는, 저장 장치 인터페이스 명령들이 UFS 프로토콜 상의 SD를 사용하여 양방향으로 투명하게 전달되는, 브리지를 통한 호스트 장치와 저장 장치 사이의 통신을 개략적으로 보여주는 도면이다.
도 10은 하나의 브리지를 사용한, UFS 프로토콜 상의 SCSI를 이용하는 호스트 장치와 레거시 SD 프로토콜을 이용하는 저장 장치 사이의 통신을 개략적으로 보여주는 도면이다.
도 11은 하나의 실시예에 따른 브리지의 기능적 레이아웃(functional layout)을 보여주는 도면이다.
도 12는 하나의 브리지를 사용한, UFS 상의 SD를 이용하는 저장 장치와 레거시 SD 프로토콜을 이용하는 저장 장치 사이의 통신을 개략적으로 보여주는 도면이다.
도 13은 하나의 실시예에 따른 브리지의 기능적 레이아웃을 보여주는 도면이다.
도 14는 링 토폴로지로 연결된 내장 저장 장치들을 위한 UHS-II 인터페이스와, 레거시 SD 카드들을 위한 하나의 저장 장치 인터페이스와, UHS-II 카드들을 위한 하나의 저장 장치 인터페이스를 구비한 하나의 호스트 장치를 보여주는 도면이다.
도 15는 하나의 레거시 SD 인터페이스와, 링 토폴로지로 연결된 하나의 UHS-II 인터페이스와, "비바이패스(non-bypass)" 상태에 있는 하나의 바이패스 소켓(bypass socket)을 갖춘 하나의 호스트 장치를 보여주는 도면이다.
도 16은 도 15의 데이터 저장 시스템에서 상기 바이패스 소켓이 "바이패스" 상태에 있는 것을 보여주는 도면이다.
도 17은 하나의 UHS-II 인터페이스 및 도 6의 브리지가 링 토폴로지로 연결된 하나의 호스트 장치를 보여주는 도면이다.
도 18은 하나의 실시예에 따른 연결 분석기(connection analyzer)를 보여주는 도면이다.
이어지는 설명은 예시적인 실시예들의 다양한 상세 내용들을 제공한다. 하지만, 본 설명은 청구범위의 청구항들의 범위를 제한하지 않으며, 다만 본 발명의 다양한 원리들과 그 원리를 실시하기 위한 방법들을 설명하기 위한 것이다.
유니버셜 플래시 저장장치 규격(UFS: universal flash storage)은 디지털 카메라, 휴대 전화 및 소비자 가전 장치들을 위해 제안된 공통 플래시 저장 규격이다. UFS는 플래시 메모리 저장장치에 있어서 고속의 데이터 전송 속도 및 향상된 신뢰성을 제공하기 위하여 설계되었다. 초고속 타입II(UHS-II)는 SD 카드들의 새로운 세대를 정의하는 새 규격이다. UFS 및 UHS-II 프로토콜들은 또한 본 명세서에서 "고속 프로토콜"이라고 지칭된다. 기존 세대(즉, 비 UHS-II 세대) SD 카드/프로토콜은 본 명세서에서 "레거시 SD 카드/프로토콜" 또는 "저속 카드/프로토콜"이라고 지칭된다.
시큐어 디지털("SD": secure digital) 메모리 카드들 및 내장 멀티미디어 카드("eMMC": embedded multi-media-card) 저장 장치들은 상대적으로 저속인 플래시 저장 장치들의 예이다. 고속 플래시 저장 장치들의 예들은 초고속 타입 II("UHS-II") 메모리 카드들 및 유니버셜 플래시 저장장치 규격("UFS") 저장 장치들을 포함한다. "UFS"는 Joint Electron Device Engineering Council(s) ("JEDEC") Solid State Technology Association을 위하여 UFS 태스크 포스에 의해 개발된 표준이고, "UHS-II"는 차세대 SD 저장 장치들을 위하여 SD Association("SDA")에 의해 개발된 표준이다. 호스트 장치들은 SD 카드들과 상대적으로 저속의 데이터 통신을 지원하는 SD 프로토콜을 이용하여 통신한다. 호스트 장치들은 UFS 카드들 및 UHS-II 카드들과는 더 고속의 데이터 통신을 지원하는 UFS 프로토콜 및 UHS-II 프로토콜을 각각 사용하여 통신하도록 설계된다. UHS-II 및 UFS 프로토콜들은 레거시 SD 프로토콜보다 훨씬 고속의 데이터 전송 속도를 위하여 정의되었다. 그러한 고속의 데이터 전송을 지원하기 위하여, 양 프로토콜(UHS-II 및 UFS)은, 레거시 SD 인터페이스 및 eMMC 인터페이스가 사용하는 싱글 엔디드(single ended) 물리적 인터페이스와는 반대로, 차분 신호(differential signaling) 물리적 인터페이스를 사용한다. 고속 프로토콜들과 저속 프로토콜들은 또한, 하나 또는 다수의 레이어들(예를 들어, 링크 레이어(link layer), 트랜스포트 레이어(transport layer))을 다른 방식으로 사용한다는 점에서 차이가 있다. 본 명세서에서 "고속 프로토콜/장치/인터페이스"라는 용어는 "빠른 프로토콜/장치/인터페이스"라는 용어와 대체 가능하도록 사용되었다. 마찬가지로, 본 명세서에서 "저속 프로토콜/장치/인터페이스"라는 용어도 또한 "느린 프로토콜/장치/인터페이스"라는 용어와 대체 가능하도록 사용되었다.
호스트 장치는 전통적으로 레거시 SD 카드들과 "지점간(point-to-point)" 통신 방법을 이용하여 직접 통신한다. 반면에 UFS 장치들은 체인 토폴로지 타입의 데이터 네트워크를 통하여 해당 장치들의 호스트 장치들과 통신하게 된다. 상기 체인 토폴로지에서는, 장치들이 고속의 복선(two-wire) 차분 버스(differential bus)들을 이용하여 서로 통신한다. 결과적으로, 빠른 표준들(즉, UFS 및/또는 UHS-II)을 사용하고 또한 느린 표준(즉, SD)에도 역 호환 가능한(backward-compatible) 호스트 장치는 두 개의 개별적인 통신 인터페이스: 하나의 느린 인터페이스(예를 들어, SD 인터페이스) 및 하나의 빠른 인터페이스(예를 들어, UFS 인터페이스 및 UHS-II 인터페이스)를 갖출 것이 요구된다. 이는 그러한 호스트 장치가 서로 다른 통신 프로토콜들 및 토폴로지들을 처리하여야 함을 의미하고, 이는 입력-출력("I/O") 수, 프로세서 복잡도, 회로 보드 배선, 컴퓨터 자원, 호스트 게이트(host gate) 수, 시험 절차 등의 측면에서 비용을 증가시킨다.
UHS-II 저장 장치는 "링"이라고 알려진 네트워크 토폴로지를 이용하여 호스트 장치와 통신하도록 설계될 수 있다. "링" 토폴로지는 다수의 장치들이 연속적으로 연결되고 첫번째 장치 및 마지막 장치가 호스트 장치에 직접 연결되는 방식의 네트워크 구성이다. 링 토폴로지는 서로 연결된 장치들의 쌍들 각각의 사이에 일방향의 통신 경로를 제공하기 때문에, 하나의 링크의 실패로 인하여 링 토폴로지가 와해될 수 있다. 하나의 케이블 단절은 해당 링에 연결되어 있는 다른 장치들을 고립시킬 수 있다. 그러므로, UHS-II 타입 저장 장치를 이용하는 호스트 장치는 특별한 통신 인터페이스를 필요로 한다. 호스트-저장 장치 환경에서 링 토폴로지를 사용하는 것은 문제점을 야기하는데, 이는 이러한 종류의 환경이 통상적으로 탈착 가능 저장 장치를 포함하고, 하나의 저장 장치를 제거하는 것은 통신 경로를 단절시키기 때문이다. 이는 결국 UHS-II 기반 호스트 장치가 세 가지 종류의 인터페이스들(도 14에 도시된 바와 같음), 즉 (1) 링 토폴로지로 연결된 내장된 장치들을 위한 하나의 UHS-II 인터페이스, (2) UHS-II 표준을 지원하는 탈착 가능 저장 장치들을 위한 하나의 UHS-II 인터페이스, 그리고 (3) 역 호환성을 지원하기 위한 하나의 레거시 SD 인터페이스를 구비하여야 함을 의미하게 된다.
도 1은 전통적인 저장 시스템 아키텍처(architecture)(100)의 한 예이다. 위에서 설명한 바와 같이, 새로운 데이터 저장 장치 프로토콜들은 데이터 및 명령들의 빠른 전송, 예를 들어 레거시 SD 프로토콜보다 상대적으로 더 빠른 전송을 지원하도록 설계되었다. 두 가지 종류의 저장 장치 프로토콜들(즉, 느린 프로토콜; 예를 들어, 레거시 SD 프로토콜, 및 빠른 프로토콜; 예를 들어, UFS 및 UHS-II)을 처리하기 위한 전통적인 하나의 해결책은 도 1에 보인 것처럼 호스트 프로세서(즉 호스트 프로세서(110))로 하여금 프로토콜들을 별도로 분리하여 처리할 수 있도록 하는 것이다. 이후 본 명세서에서 "레거시 SD"는 간단히 "SD"라고 지칭한다.
SD 역 호환가능하도록 만들기 위하여, 호스트 프로세서(110)가 UFS 프로토콜 및 SD 프로토콜 모두를 사용하면서 작동할 수 있도록 설계되었다고 가정하자. UFS 프로토콜 및 SD 프로토콜을 처리하기 위하여, 상기 호스트 프로세서(110)에게는 두 개의 분리된 인터페이스들: 인터페이스(112) 및 인터페이스(114)가 제공된다. 인터페이스(112)는 탈착 가능 SD 카드(120)와의 직접적인(즉, SD 버스(130)을 통하여) 통신을 위하여 사용된다. 인터페이스(114)는 UFS 입/출력 장치(150), UFS 입/출력 장치(160), UFS-타입 메모리 장치(170) 및 탈착 가능 SD 카드(120)와 같은 외부 장치들과의 UFS 데이터/명령 통신을 위하여 사용된다; 상기 탈착 가능 SD 카드의 경우는, 탈착 가능 SD 카드(120)가 SD 데이터/명령들을 UFS 프로토콜 내에 캡슐화함으로써 호스트 프로세서(110)와 통신할 수 있는 UFS 카드 또는 SD-UFS 카드인 경우를 의미한다. (SD 데이터/명령들을 UFS 프로토콜 내에 캡슐화하는 것을 본 명세서에서는 이후 "SD-over-UFS"라고 칭한다.)
UFS 프로토콜이 설계된 방식으로 인하여, 상기 호스트 장치(110)는 체인 토폴로지를 구비한 버스를 통하여 그 주변장치들과 통신할 수 있다. 체인 토폴로지는 장치 A가 장치 B에 연결되고, 장치 B는 장치 C에 연결되며, 장치 C는 장치 D에 연결되는 방식으로 진행되어, 체인의 마지막 장치가 장치 A에 다시 연결되는 것이 아니라 다른 장치들을 통하여 장치 A와 통신하는 연결 방식을 말한다. 도 1을 참조하면, 호스트 프로세서(110)는 장치(150)와 UFS 버스(140)를 통하여 통신하고, 장치(150)는 UFS 버스(142)를 통하여 장치(160)와 통신하며, 장치(160)는 UFS 내장 메모리(170)와 UFS 버스(144)를 통하여 통신하고, 상기 UFS 내장 메모리(170)는 탈착 가능 SD 장치(120)와 UFS 버스(146)를 통하여 통신한다. 도 1의 회로 구성은 두 가지의 단점들, 즉 두 개의 개별 인터페이스들, 즉 SD 인터페이스(즉, 인터페이스(112)) 및 UFS 인터페이스(즉, 인터페이스(114))를 사용해야하는 단점과, 두 가지 종류의 저장 장치 프로토콜들 및 토폴로지들 모두를 위하여 호스트 CPU(110)가 공간 및 자원을 할당하고 전용의 회로들을 갖추어야만 하는 단점을 가지고 있다.
도 2는 하나의 실시예에 따른 브리지(250)를 갖춘 저장 시스템 아키텍쳐(220)의 다이어그램이다. 호스트 CPU(210)는 외부 장치들(예를 들어, 탈착 가능 저장 장치(260))와 통신하기 위한 하나의 통신 인터페이스(즉, 통신 인터페이스(212))를 구비한다. 체인 토폴로지를 사용하는 상기 아키텍쳐에서, 느린 저장 장치 인터페이스(예를 들어, 레거시 SD 인터페이스) 및 고속 인터페이스(예를 들어, UFS 인터페이스)는 고속 저장 장치 프로토콜을 사용하여 브리지를 통해 호스트와 통신한다. 이러한 방식으로 고속 프로토콜과 브리지(250)과 같은 하나의 브리지를 포함하는 호스트 장치를 포함하는 시스템이 역 호환 가능하게 되는데, 이는 상기 시스템이 저속 프로토콜들(본 실시예에서, 더 빠른 저장 장치 프로토콜은 UFS 프로토콜이고, 느린 저장 장치 프로토콜은 레거시 SD 프로토콜임)을 사용하는 장치들과 함께 작동할 수 있음을 의미한다.
도 2의 실시예에서, 호스트 CPU(210), UHS-II 타입 입/출력 모듈(220)(예를 들어, "현지 실행"(XIP: execute in place) 장치), UHS-II 타입 입/출력 모듈(230)(예를 들어, WiFi 장치), 및 내장된 메모리(240)는 UFS 프로토콜을 이용하여 데이터 및 명령들을 전달받고 전달하도록 설계된다. 이는 상호 연결된 장치들의 쌍 각각의 사이에서 해당 UFS 버스를 통한 통신은 단순 명확하다는 사실, 즉 데이터 및 명령들이 체인 네트워크(체인 토폴로지)를 따라 호스트 CPU(210)으로부터 입/출력 모듈(220)로(UFS 버스(270)를 통과함), 입/출력 모듈(220)로부터 입/출력 모듈(230)로(해당 장치들을 연결하는 UFS 버스를 통과함), 그리고 입/출력 모듈(230)로부터 내장 메모리(240)로(해당 장치들을 연결하는 UFS 버스를 통과함) 전달될 때, 저장 장치 프로토콜에서 어떠한 변화도 만들어질 필요가 없다는 것을 의미한다.
비록 호스트 CPU(210)가 레거시 SD 카드 전용의 인터페이스를 구비하지 않지만(고속 인터페이스, 즉, 본 예에서는 UFS 통신을 위한 인터페이스(212) 하나만을 구비하고 있음), 호스트 CPU는 브리지(250)를 사용함으로써 고속 인터페이스(212)를 사용하여 레거시 SD 카드들과 통신한다. 브리지(250)는, 저장 장치(260)가 '느린' 카드(예를 들어, 레거시 SD 카드)이든지 또는 '빠른' 카드(예를 들어, UFS 카드, SD-over-UFS 호환 SD 카드)이든지, 호스트 CPU(210)와 탈착 가능 저장 장치(260) 사이의 통신을 지원한다.
브리지(250)는 호스트 프로세서(210)가 사용하는 프로토콜의 종류 및 탈착 가능 저장 장치(260)가 사용하는 프로토콜의 종류에 따라, "투명"(transparent) 상태 또는 "변환"(conversion) 상태 중 하나로 존재할 수 있다. 즉, 상기 브리지(250)가 상기 프로토콜들의 종류들을 확인하고(예를 들어 도 4의 연결 분석기(442)와 같은 연결 분석기를 이용하여) 그에 맞추어 작동한다: 브리지는 만약 탈착 가능 저장 장치(260)가 레거시 SD 프로토콜을 이용하는 경우에 "변환" 상태로 전이함으로써 UFS-타입 호스트 CPU(210)에 의해 사용되는 UFS 저장 장치 프로토콜과 레거시 SD 카드(260)에 의해 사용되는 레거시 저장 장치 프로토콜 사이를 중계(bridge)하고, 만약 탈착 가능 저장 장치(260) 및 호스트 CPU(210)이 본 예의 경우 UFS 프로토콜과 같이 동일한 프로토콜을 사용하는 경우에는 "투명" 상태로 전이(또는 유지)된다. (본 명세서에서는 UFS 카드 및 SD-over-UFS 타입 카드들은 포괄적으로 UFS 카드라고 칭해진다.)
상기 "변환" 상태에 있는 동안, 브리지(250)는 (장치들(220, 230, 및 240)을 통하여) 호스트 CPU(210)로부터 UFS 저장 장치 프로토콜로 데이터/명령들을 전달받아, 레거시 SD 연결(252)를 통하여 레거시 SD 카드(260)에 레거시 SD 저장 장치 프로토콜로 그들을 전달하고, 레거시 SD 연결(252)을 통하여 레거시 SD 카드(260)으로부터 LSD 저장 장치 프로토콜로 데이터/명령들을 전달받아, (장치들(240, 230, 및 220)을 통하여) 호스트 CPU(210)에 UFS 저장 장치 프로토콜로 그들을 전달한다. 위에서 설명한 것처럼, 만약 호스트 CPU(210) 및 탈착 가능 저장 장치(260)가 동일한 저장 장치 프로토콜(본 예에서는 UFS 프로토콜)을 사용하는 경우에는 어떠한 프로토콜의 변화도 필요하지 않다. 만약 호스트 CPU(210) 및 탈착 가능 저장 장치(260)가 UFS 장치들인 경우, 상기 브리지(250) 및 저장 장치(260)는 UFS 연결(254)을 통하여 연결된다. SD 연결(252) 및 UFS 연결(254)은 논리적으로 분리된 연결들로 도시되었다. 그러나 물리적으로는 상기 연결들이 공통의 단자를 구비할 수 있다. 투명 상태에서의 브리지(예를 들어, 브리지(250))는 호스트 CPU(210)와 탈착 가능 저장 장치(260) 사이의 통신에 있어서 투명하게 된다. 저장 시스템 아키텍쳐(200)는 별도의 장치(즉, 브리지(250))로서 하나의 브리지를 포함한다. 하지만, 브리지 기능은, 아래에서 설명하는 것처럼, 도 3에 도시된 바와 같이, 내장 메모리(예를 들어, 내장 메모리(240)) 속에 통합될 수 있다.
호스트 인터페이스 단자들로 이루어진 두 개의 논리적으로 분리된 집합들을 포함하는 SD-UFS 통합 카드들이 존재할 수 있는데, 이들은 공통된 연결 단자들을 구비할 수 있다; 즉, 레거시 SD 카드를 위한 하나의 집합과 UFS 카드를 위한 다른 집합, 그리고 저장 장치 인터페이스들로 이루어진 두 개의 집합들; 즉 레거시 SD로 카드를 작동시키기 위한 저장 장치 인터페이스들의 한 집합과 UFS 카드로 카드를 작동시키기 위한 저장 장치 인터페이스의 다른 집합을 포함할 수 있다. 단자들 및 프론트 엔드(front-end)들로 이루어진 두 개의 집합들을 구비하는 것은, SD-UFS 카드들로 하여금 해당 SD-UFS 카드를 수용하는 인터페이스 및 소켓의 종류에 따라 레거시 SD 카드 또는 UFS 카드로서 사용되는 것을 가능하게 한다. 상기 브리지(250)는 탈착 가능 저장 장치(260)의 두 가지 종류 모두를 수용할 수 있는 오직 하나의 저장 장치 인터페이스(도면 생략)를 구비할 수 있다. 대안적으로는, 상기 브리지(250)가 분리된 저장 장치 인터페이스들(도 2에서는 생략됨): 레거시 SD 카드들 전용인 하나의 저장 장치 인터페이스 및 UFS 카드 전용인 다른 저장 장치 인터페이스를 구비할 수도 있다.
하나의 실시예에서, 상기 브리지(250)는 도 2에 보인 바와 같이 호스트 CPU(210)에 연결(즉 하나 또는 그 이상의 중간 장치들을 통해서)될 수 있다. 다른 실시예들에서는, 상기 브리지(250)가 호스트 CPU(250)에 직접 연결될 수 있다. 또 다른 실시예에서는, 상기 브리지(250)가 호스트 CPU(250)에 직접 또는 하나 이상의 장치들을 통하여 연결되어 있는 통신 허브(communication hub)에 연결될 수 있다.
도 3은 하나의 예시적인 실시예에 따른, 하나의 브리지와 하나의 내장 메모리의 조합으로 이루어진 장치(350)를 갖춘, 저장 시스템 아키텍쳐(300)의 다이어그램이다. 본 저장 시스템 아키텍쳐(300)는, 도면부호 350으로 보인 것처럼, 저장 시스템 아키텍쳐(300)의 경우 브리지 및 내장 메모리가 하나의 장치 안에 결합되어 있다는 점을 제외하고는, 도 2의 저장 시스템 아키텍쳐(200)과 모든 면에서 동일하다. 내장 메모리 및 브리지의 기능들을 결합한 하나의 장치(즉, 장치(350))를 사용하는 것은, 공간과 내부 배선과 입/출력 인터페이스 등을 절약할 수 있기 때문에 유익하다.
도 4는 하나의 예시적인 실시예에 따른 브리지(400)를 보여준다. 호스트 장치 인터페이스(402)는, 호스트 CPU에 연결되고 제1 저장 장치 프로토콜(예를 들어, UFS)을 이용하는 통신 버스(404)에 연결된다(체인의 일부를 이루는 다른 장치(412)들을 통하는 것도 가능). 상기 브리지(400)는 또한, 제2 저장 장치 프로토콜(예를 들어, 레거시 SD)을 이용하는 탈착 가능 저장 장치(420)와 결합하기 위한 제1 저장 장치 인터페이스(406)와, 상기 제1 저장 장치 프로토콜을 제2 저장 장치 프로토콜로, 그리고 그 반대로 변환하기 위한 양방향 저장 장치 프로토콜 변환기(SDPC)(450)을 포함한다. 상기 브리지(400)는 또한 하나의 제어기(440) 및 하나의 스위칭 시스템(460)을 포함한다. 상기 스위칭 시스템(460)은, 만약 제1 저장 장치 프로토콜(예를 들어, 상기 호스트 CPU(410)에 의해 사용되는 저장 장치 프로토콜)이 제2 저장 장치 프로토콜(예를 들어, 탈착 가능 저장 장치에 의해 사용되는 저장 장치 프로토콜)과 다른 경우에는 프로토콜 변환기(SDPC)(450)를 호스트 장치 인터페이스(402)와 제1 저장 장치 인터페이스(406) 사이에 연결하고, 만약 제1 저장 장치 프로토콜과 제2 저장 장치 프로토콜이 동일한 경우에는 호스트 장치 인터페이스(402)를 제2 저장 장치 인터페이스(408)에 연결하도록 상기 제어기(440)에 의하여 설정(configurable)될 수 있다.
상기 제어기(440)는 호스트 CPU의 종류 및/또는 호스트 CPU가 사용하는 저장 장치 프로토콜의 종류를 사전에 알 수도 있다. 만약 상기 제어기(440)이 호스트 CPU의 종류 및/또는 호스트 CPU가 사용하는 저장 장치 프로토콜의 종류를 사전에 알지 못하는 경우에는, 상기 제어기(440)는 연결 분석기(442)와 함께, 호스트 CPU의 종류 및/또는 호스트 CPU가 사용하는 저장 장치 프로토콜의 종류를 호스트 CPU(410)으로부터 발생하는 정보로부터 추론하기 위하여, 호스트 장치 인터페이스(402)를 감시한다. 상기 제어기(440)는 또한, 어떠한 저장 장치가 브리지(400)에 연결되어 있는지 그리고/또는 어떠한 저장 장치 프로토콜이 저장 장치 인터페이스(406) 또는 저장 장치 인터페이스(408)에 연결되어 있는 저장 장치에 의하여 사용되고 있는지를 감지하기 위하여 연결 분석기(442)를 사용한다. 이후 제어기(440)는 상기 저장 장치(420)가 호스트 CPU(410)에 의하여 사용되는 제1 저장 장치 프로토콜을 사용하고 있는지, 또는 호스트 CPU(410)에 의하여 사용되지 않는 제2 저장 장치 프로토콜을 사용하는지를 결정한다. 상기 제어기(440)는 양측(즉, 호스트 CPU(410) 및 저장 장치(420))에 의해 사용되는 저장 장치 프로토콜의 종류를 결정하고, 그들을 비교하여 프로토콜 변환기가 필요한지를 결정할 수도 있다. 대안적으로는, 상기 제어기(440)가 각각 사용되는 저장 장치 프로토콜의 종류는 결정하지 않고, 양측이 동일한 저장 장치 프로토콜을 사용하는지 또는 서로 다른 저장 장치 프로토콜들을 사용하는지를 결정할 수 있다. 통상적으로, 호스트 CPU(410) 및 저장 장치(420)와 같은 장치는 그 장치가 사용하는 저장 장치 프로토콜의 종류 및/또는 버젼과 관련된 명시적인 메시지를 통신하는 상대방 측에 전달한다. 그러므로, 상기 제어기(440)는 위와 같은 통신에 기반하여 저장 장치 프로토콜들을 결정할 수도 있다. 대안적으로는, 상기 제어기(440)가 감시한 통신 내용으로부터 저장 장치 프로토콜들을 추론할 수도 있다.
만약 제1 저장 장치 프로토콜이 제2 저장 장치 프로토콜과 다른 경우에, 이는 상기 호스트 CPU(410)이 특정 저장 장치 프로토콜(예를 들어, UFS 프로토콜)을 사용하여 브리지(400)를 통해 SD 카드(420)에 전달하는 데이터 및 명령들이, SD 카드(420)가 이해할 수 있는 다른 저장 장치 프로토콜(즉, 레거시 SD 프로토콜)로 해당 카드(420)에 보내져야 함을 의미한다. 이 경우에, 상기 제어기(440)는 스위칭 시스템(460)에 접점(contact) "(0)"을 접점 "(1)"에 연결하기 위한 하나의 제어 신호(444)를 보내어, 프로토콜 변환기(450)을 호스트 장치 인터페이스(402)에 연결한다(도 4에 보인 실시예에서, 프로토콜 변환기(450)는 저장 장치 인터페이스(406)에 영구적으로 연결되어 있다). 이러한 방식으로, 상기 호스트 CPU(410)는 제1 저장 장치 프로토콜, 즉 본 실시예에서는 USF 프로토콜을 이용하여 저장 장치(420)에 데이터/명령들을 전달하게 되고, UFS/SD 변환기(450)는 UFS 프로토콜을 레거시 SD 카드(420)에 의해 이용될 수 있는 제2 저장 장치 프로토콜, 즉 본 실시예에서는 레거시 SD 프로토콜로 변환한다. 제1 저장 장치 프로토콜로 전달되는 첫번째 장치로부터의 데이터, 명령 및 신호를 수신하고, 해당 데이터/명령/신호를 번역하고, 번역된 데이터/명령/신호를 다른 저장 장치 프로토콜을 이용하여 제2 장치에 전송하는 과정은, 본 명세서에서 이후 "프로토콜 변환" 또는 짧게 "변환"이라고 지칭되고, 따라서 "변환기"라는 용어 및 그 파생어들이 사용된다. 통상적으로 그러한 변환은 느린 프로토콜(예를 들어, 레거시 SD 프로토콜)을 빠른 프로토콜(예를 들어, UFS 프로토콜, UHS-II 프로토콜) 안에 캡슐화시키고, 느린 프로토콜을 빠른 프로토콜로부터 캡슐화해제하는 과정을 포함한다. "캡슐화"(encapsulation)가 하나의 프로토콜을 다른 프로토콜 안에 포함시키는 것을 의미하는 반면에, "캡슐화해제"(de-capsulation)는 반대의 작업을 의미한다. SCSI로부터 SD 또는 SD로부터 SCSI로의 변환도 역시, 기본적인 SD 에서 SCSI 및 SCSI 에서 SD로의 명령 번역을 포함한다(그리고 상기 번역은 예를 들어, 도 11의 명령 번역기(1130)와 같은 번역기에 의하여 수행된다). 프로토콜 변환도 역시, 링크 레이어 수준에서 신호 번역(예를 들어, "작업중"(busy) 신호의 번역)을 포함한다(그리고 상기 번역은 예를 들어, 도 11의 링크 신호 번역기(1185)와 같은 번역기에 의하여 수행된다).
만약 호스트 CPU(410)에 의해 사용되는 저장 장치 프로토콜이 브리지(400)에 연결된 탈착 가능 저장 장치(본 실시예에서는 UFS 카드(430))에 의해 사용되는 저장 장치 프로토콜과 동일한 경우에는, 상기 제어기(440)가 스위칭 시스템(460)에 접점 "(0)"을 접점 "(1)"에 연결하기 위한 하나의 제어 신호(444)를 보내어, 호스트 장치 인터페이스(402)를 저장 장치 인터페이스(408)에 직접, 즉 변환기(450)을 통과하지 않고 연결한다(도면부호 402와 도면부호 408 사이에 다른 요소들이 연결되는 것도 가능하다).
도 2를 참조하여 설명된 바와 같이, 만약 호스트 CPU(210)가 UFS 타입이면, 브리지(250)는, 레거시 SD 카드, SD-UFS 카드 또는 UFS 카드일 수 있는 하나의 저장 장치를 지원하도록 설정 가능한 하나의 저장 장치 인터페이스를 구비하거나, 또는 두 개의 저장 장치 인터페이스들, 즉 레거시 SD 카드들을 위한 하나와 SD-UFS 카드들 또는 UFS 카드들을 위한 다른 하나를 구비할 수 있다.
도 5는 추가로, 예시적인 실시예에 따른 하나의 브리지(500)를 보여준다. 브리지(500)가 두 개의 프로토콜 변환기들: 즉 도 4에 보인 것처럼 UFS 프로토콜에서 레거시 SD로 그리고 그 반대로의 변환기(즉, 프로토콜 변환기(450))와, UFS 프로토콜에서 UHS-II 프로토콜로 그리고 그 반대로의 변환기(즉, 프로토콜 변환기(510))를 포함한다는 점을 제외하고는, 본 브리지(500)는 도 4의 브리지(400)와 유사하다(오직 하나의 탈착 가능 저장 장치; 즉, 카드(420) 또는 카드(530)가 한 번에 하나씩 브리지(500)에 연결될 수 있다).
만약 레거시 SD 카드(420)가 브리지(500)에 연결되어 있다는 사실을 연결 분석기(542)가 제어기(540)에게 알려주는 경우, 도 4에 도시되고 설명한 바와 같이, 상기 제어기(540)는 스위칭 시스템(560)에 접점 "(0)"을 접점 "(1)"에 연결하도록 하는 제어 신호(544)를 보낸다. 만약 UHS-II 카드(530)(또는 UHS-II 프로토콜을 이용하는 SD-UHS-II 카드)가 브리지(500)에 현재 연결되어 있다는 사실을 연결 분석기(542)가 제어기(540)에게 알려주는 경우에는, 상기 제어기(540)가 스위칭 시스템(560)에 접점 "(0)"을 접점 "(2)"에 연결하도록 하는 제어 신호(544)를 보내어, 호스트 CPU(410)에 의해 사용되는 UFS 프로토콜을 UHS-II 카드(530)(또는 SD-UHS 카드)에 의해 사용되는 UHS-II 프로토콜로, 그리고 그 반대로 변환하는 것을 가능하게 한다. 호스트 CPU(410)가 UFS 프로토콜을 사용하기 때문에, 도 4의 브리지(400)처럼, 본 브리지(500)도 체인 토폴로지로 구성된다. UHS-II 프로토콜을 이용하는 호스트 CPU의 경우에는, 도 6에 보인 것처럼, 상기 브리지가 링 토폴로지로 구성될 수 있다.
도 6은 또 다른 예시적인 실시예에 따른 브리지(600)를 보여준다. 호스트 CPU(610)는 링 토폴로지를 갖춘 버스를 통해 외부 장치들(예를 들어, UHS-II 장치(620), 레거시 SD 카드(630), 또는 UHS-II 카드(640)(또는 SD-UHS-II 카드(640)), 그리고 UHS-II 입/출력 장치(650))과 통신하기 위하여 UHS-II 프로토콜을 사용한다. (한 번에 오직 하나의 레거시 SD 카드(630) 및 UHS-II 카드(640)이 브리지(600)에 연결된다.) 상기 브리지(600)는, UHS-II 장치(620)으로부터 데이터 및 명령들을 수신하기 위한 저장 장치 인터페이스(604), 레거시 SD 카드(630)에 데이터 및 명령들을 전달하고 또 그 카드로부터 다시 돌려받기 위한 저장 장치 인터페이스(604), UHS-II 카드(640)에 데이터 및 명령들을 전달하고 또 그 카드로부터 돌려받기 위한 저장 장치 인터페이스(606), 그리고 UHS-II 타입 내장 메모리 또는 UHS-II 타입 입/출력 장치 또는 UHS-II 프로토콜을 사용하는 다른 장치일 수 있는 UHS-II 장치(650)에 데이터 및 명령들을 전달하고 또 그 장치로부터 돌려받기 위한 저장 장치 인터페이스(608)를 포함한다.
상기 브리지(600)는 또한 도 4의 제어기(440) 및 도 5의 제어기(540)와 유사한 방식으로 기능하는 하나의 제어기, 호스트 CPU(610)에 의해 사용되는 UHS-II 프로토콜을 레거시 SD 카드(630)에 의해 사용되는 레거시 SD 프로토콜로(또 그 반대로) 변환하기 위한 하나의 양방향 SDPC(670), 그리고 하나의 3상(three-position) 스위치(680) 및 하나의 3상 스위치(690)를 포함한다. 스위치(680) 및 스위치(690)는, 항상 동일한 위치에 있으면서 하나의 위치에서 다른 위치로 항상 함께 움직이도록 설계되고 제어된다. 예를 들어, 만약 스위치(680)가 "(1)" 위치에 있고 스위치(690)도 역시 "(1)" 위치에 있는 경우, 만약 제어기(660)가 상기 스위치들 중 하나(예를 들어, 스위치(680))를 "(3)" 위치(예를 들어)로 전이시키는 경우, 다른 스위치(예를 들어, 스위치(690))도 역시 동일한 위치로 전이된다.
만약 브리지(600)에 연결된 저장 장치가 레거시 SD 카드(630)와 같은 레거시 SD 카드인 경우, 상기 제어기(660)는 스위치들(680, 690)을 "(1)" 위치로 설정하는데, 이러한 상태가 도 6에 도시되어 있다. "(1)" 위치에서, 호스트 CPU(610)로부터 발생하는 데이터 및 명령들은 UHS-II 장치(620)를 통해 전파되어, 브리지(600)에서 수신되고, 양방향 UHS-II/SD 변환기(670)에 전달된다. 상기 UHS-II/SD 변환기(670)는 UHS-II 프로토콜을 레거시 SD 프로토콜로 변환하고, 레거시 SD 프로토콜을 이용하여 저장 장치 인터페이스(604)를 통해 데이터/명령을 레거시 SD 카드(630)에 전달한다. (여기서 "변환"이라는 용어는 위에서 설명한 바와 같은 방식으로 이해되어야 한다.) 상기 레거시 SD 카드(630)는 레거시 SD 프로토콜을 이용하여 데이터 또는 응답(response)을 UHS-II/SD 변환기(670)에 전달하고, 상기 UHS-II/SD 변환기(670)는 UHS-II 프로토콜을 이용하여 상기 데이터 또는 응답을 링 안에 있는 다음 장치(즉, UHS-II 입/출력 장치(650))에 전달한다. 그 후, 상기 데이터/명령은 UHS-II 프로토콜을 이용하여 상기 링을 통해 계속 전파된다. 만약 호스트 CPU(610)에 의해 전송된 상기 데이터/명령이 레거시 SD 카드(630)를 위한 것이 아닌 경우에는, 프로토콜 변환을 사용하지 않고 저장 장치 인터페이스(608)를 통하여 링 안의 다음 장치(즉, UHS-II 입/출력 장치(650))에 상기 명령/데이터를 전달함으로써, 명령/데이터를 레거시 SD 프로토콜로 또는 레거시 SD 프로토콜로부터 변환할 필요성이 없어진다. 이러한 기능을 가능하도록 하는 하나의 방법은, 탈착 가능 저장 장치의 식별 정보(identification information, "ID")를 브리지 안에 저장하는 것이다. 그러한 ID는 제어기(660)로 하여금 상기 명령데이터가 해당 탈착 가능 저장 장치(예를 들어, 카드(630 또는 640))를 위한 것인지 아닌지를 구별할 수 있도록 해준다.
만약 브리지(600)에 연결된 저장 장치가 UHS-II 호환 카드(640)(즉, UHS-II 카드 또는 SD-UHS-II 카드)인 경우에는, 어떠한 프로토콜 변환도 필요하지 않으므로(즉, 호스트 CPU(610) 및 카드(640) 둘 다 실제 UHS-II 장치), 상기 제어기(660)는 스위치들(680 및 690)을 "(2)" 위치에 설정한다. "(2)" 위치에서는, 호스트 CPU(610)에서 발생하는 데이터/명령이 UHS-II 장치(620)을 통하여 전파되고, 브리지(600)에 수신되며, 저장 장치 인터페이스(606A)를 통하여 UHS-II 카드(640)에 직접 전달된다(즉, 프로토콜 변환을 거치지 않는다). 만약 데이터/명령이 UHS-II 카드(640)을 위한 것이 아닌 경우에는, 상기 UHS-II 카드(640)는 저장 장치 인터페이스(606B) 및 스위치(690)의 접점 "(2)"를 통하여 상기 데이터/명령을 링 안의 다음 장치, 즉 본 실시예에서는 UHS-II 입/출력 장치(650)에 전달한다. 만약 상기 링 타입 네트워크 안에서 장치들 중 하나가 제거되고 해당 장치의 제거로 인해 발생한 간극을 연결하기 위해 어떠한 조치도 취해지지 않았다면, 상기 통신 루프(communication loop)는 단절된다. 다시 도 6을 참조하면, 도 4의 연결 분석기(442)(예를 들어)와 하나의 연결 분석기(662)가 연결된 장치들을 감지하고 각각의 장치가 사용하는 저장 장치 프로토콜을 결정하기 위하여 호스트 장치 인터페이스(602) 및 저장 장치 인터페이스들(604, 606, 및 608)을 감시한다. 상기 연결 분석기(662)는 감시하는 인터페이스들의 상태(즉, 하나의 장치가 인터페이스 'x'에 연결되어 있는지의 여부, 인터페이스 'x'에 연결된 하나의 장치가 프로토콜 'y'를 사용하고 있는지의 여부 등)를 상기 제어기(660)에 통지한다. 만약 상기 연결 분석기(662)가 레거시 SD 카드도 저장 장치 인터페이스(604)에 연결되어 있지 않고 또한 UHS-II 호환 카드도 저장 장치 인터페이스(606)에 연결되어 있지 않다고 상기 제어기(660)에 통지하는 경우, 상기 제어기(660)는 상기 스위치(680) 및 스위치(690)를 "(3)" 위치에 설정한다.
만약 스위치(680) 및 스위치(690)가 (1) 위치에 있는 경우, 상기 브리지(600)는 "변환" 상태(conversion state)에 있는 것이다. 만약 상기 스위치(680) 및 스위치(690)가 (2) 위치에 있는 경우에는, 상기 브리지(600)가 "투명" 상태(transparent state)에 있다. 만약 스위치들(680 및 690)이 (3) 위치에 있는 경우에는, 상기 브리지(600)가 "바이패스" 상태(bypass state)에 있다. 스위치들(680 및 690)을 (3) 위치에 설정함으로써, 두 개의 저장 장치 인터페이스들(604 및 606) 모두가 바이패스된다. 다시 말하자면, 상기 브리지의 링 입력(즉, 호스트 장치 인터페이스(602))이 내부적으로 브리지의 링 출력(즉, 저장 장치 인터페이스(608))에 연결되고, 따라서 상기 브리지(600)에 의해 링 루프가 닫힌다. (만약 탈착 가능한 저장 장치, 예를 들어, 레거시 SD 카드(630) 또는 UHS-II 카드(640)가 브리지(600)에 연결되는 경우, 상기 링 루프는 각각 UHS-II/SD 변환기를 통해서 또는 UHS-II 장치(640)를 통해서 닫힌다.)
도 7은 하나의 예시적인 실시예에 따른 브리지를 작동하는 방법을 도시하고 있다. 상기 브리지(400 또는 500)와 유사할 수 있는 브리지가 간접적 또는 직접적으로 호스트 CPU에 영구적으로 연결되어 있고 동일한 호스트 장치 안에 두 개의 장치들이 내장되어 있다고 가정하자. 단계 710에서, 연결 분석기(542)와 같은 하나의 연결 분석기가 탈착 가능 저장 장치(예를 들어, 레거시 SD 카드(420) 또는 UHS-II 호환 카드(530))가 브리지에 연결되어 있는지를 확인하고, 만약 그러한 장치가 브리지에 연결되어 있는 경우에는, 그 연결된 장치에 의해 사용되는 저장 장치 프로토콜의 종류를 감지한다. 만약 탈착 가능한 저장 장치가 브리지에 연결되어 있지 않다면(단계 710에서 "아니오"로 표시됨), 상기 브리지가 대기 상태(idle state)로 진입 또는 유지되고, 단계 720에서 탈착 가능 저장 장치가 브리지에 연결될 때까지 기다린다. 만약 탈착 가능 저장 장치가 브리지에 연결된 경우에는(단계 710에서 "예"로 표시됨), 단계 730에서 상기 연결 분석기가 호스트 CPU에 의해 사용되는 저장 장치 프로토콜 및 탈착 가능 저장 장치에 의해 사용되는 저장 장치 프로토콜을 식별한다. (상기한 바와 같이, 제어기가 호스트 CPU에 의해 사용되는 프로토콜을 이미 알고 있을 수 있고, 이 경우에는, 호스트 CPU에 의해 사용되는 저장 장치 프로토콜을 결정할 필요가 없다.) 단계 740에서는, 예를 들어 제어기(540)와 유사한 제어기가 상기 두 개의 저장 장치 프로토콜들이 동일한지를 확인하고, 도 5에 도시된 실시예의 경우, 만약 상기 프로토콜들이 동일하지 않다면, 상기 제어기(540)는 어떤 종류의 프로토콜 변환이 사용되어야 하는지를 결정한다. 만약 두 개의 저장 장치 프로토콜들이 동일한 경우(단계 740에서 "예"로 표시됨), 도 4(즉, 접점 "(2)"가 인터페이스(406) 또는 인터페이스(408)에 연결) 및 도 6(즉, 접점 "(2)"를 이용함으로써 통신 경로 수립)에 보인 것처럼, 단계 750에서 상기 제어기(540)는 상기 호스트 CPU(410)와 탈착 가능 저장 장치를 직접 연결시킨다. 만약 상기 두 개의 저장 장치 프로토콜들이 다른 경우(단계 740에서 "아니오"로 표시됨), 상기 제어기는 수신되는 저장 장치 프로토콜을 발신되는 저장 장치 프로토콜로 변환하기 위하여 적절한 양방향 프로토콜 변환기를 사용한다. 호스트 CPU로부터 브리지로의 데이터/명령 통신 및 탈착 가능 저장 장치로부터 브리지로의 데이터/명령 통신은, 데이터/명령이 브리지로 들어오기 때문에, "인커밍 통신"(incoming communication)이라 불린다. 브리지로부터 호스트 CPU로 그리고 브리지로부터 탈착 가능 저장 장치로의 데이터/명령 통신은, 데이터/명령이 브리지로부터 나가기 때문에, "아웃고잉 통신"(outgoing communication)이라고 불린다.
도 8은 호스트 장치(810)과 탈착 가능 저장 장치(820) 사이에서 브리지(830)를 통하여 데이터 및 명령들을 교환하기 위하여 사용되는 네 개의 통상적인 통신 레이어들을 개략적으로 도시하고 있는데, 데이터 및 명령들은 SCSI(small computer system interface) 표준을 사용하여 양 방향으로 전달된다. 도 8은 호스트 장치에 의해 사용되는 저장 장치 프로토콜와 저장 장치에 의해 사용되는 저장 장치 프로토콜이 동일한 경우를 도시하고 있고, 그러한 이유로 브리지는 통신의 관점에서 투명하다; 즉, 어떠한 저장 장치 프로토콜 변환도 수행되지 않는다. 도 8은 g나의 UFS 카드 또는 하나의 SD-UFS 카드(430)가 브리지(400)에 연결되는 도 4의 경우와 연관되어 있다. 간략하게 말하자면, "SCSI"는 컴퓨터들 및 주변 장치들 간을 물리적으로 연결하고 그들 사이에 데이터를 전송하기 위한 표준들의 집합이다. 상기 SCSI 표준은 명령들과 프로토콜들, 그리고 전기적 및 광학적 인터페이스들을 정의한다. 상기 SCSI는 다양한 종류의 장치들을 연결하기 위하여 사용될 수 있다. UFS 표준을 위해서는, SCSI의 오직 제한된 일부분만이 사용된다.
JEDEC를 위해 활동하는 UFS 태스크포스에 의해 정의된 레이어들은, "물리적 연결" 레이어(physical connection layer), "링크 커멘드" 레이어(link command layer), "트랜스포트" 레이어(transport layer), 그리고 "애플리케이션" 레이어(application layer)이다. 호스트 장치(810)는, UFS-구성 물리적 레이어 및 UFS-구성 링크 레이어(두 개의 레이어는 도면부호 840으로 표시됨)를 사용하여, 그리고 SCSI-구성 트랜스포트 레이어 및 SCSI-구성 애플리케이션 레이어(두 개의 레이어들은 도면부호 850으로 표시됨)를 사용하여, 저장 장치(820)에 또는 저장 장치로부터 데이터/명령들을 전송 및 수신한다. ("SOUP"는 "SCSI-over-UFS protocol"의 약자임.) 저장 장치(820)는 호스트 장치(810)가 사용하는 동일한 통신 레이어들을 사용하도록 구성된다. 그러므로, 브리지(830)는 통신의 관점에서 상기 양 장치들에 투명하다; 즉 어떠한 프로토콜 변환도 필요하지 않고 이용되지도 않는다.
도 9는 도 8에 보인 것과 같은 종래의 통신 레이어들을 개략적으로 도시하고 있지만, 이 경우 호스트 장치(910)와 탈착 가능 저장 장치(920) 사이에서 브리지(930)를 통하여 SD 데이터 및 SD 명령들을 교환하기 위하여 사용되고 있다. 상기 SD 데이터 및 SD 명령들은, 호스트 장치(910) 및 저장 장치(920)가 UFS-구성 장치들이기 때문에, SD-over-UFS 구성을 이용함으로써 상기 브리지(930)을 통해 상기 호스트 장치(910)와 저장 장치(920) 사이에서 교환되고, SD 데이터 및 SD 명령들은 UFS 통신을 통하여 통신된다. "SD-over-UFS 구성" 및 "SD-over-UFS 통신"이라는 용어는, SD 데이터 및 명령들이 UFS 신호 안에 캡슐화되는 것을 의미한다(즉, 상기 데이터 및 명령들이 UFS 신호의 페이로드(payload)로서 삽입됨). 도 9는 호스트 장치에 의해 사용되는 저장 장치 프로토콜과 저장 장치에 의해 사용되는 저장 장치 프로토콜이 동일하여, 브리지가 통신의 관점에서 투명한 경우를 도시하고 있다; 즉, 어떠한 저장 장치 프로토콜 변환도 수행되지 않는다. 호스트 장치(910)는, UFS-구성 물리적 레이어 및 UFS-구성 링크 레이어(두 개의 레이어는 도면부호 940으로 표시됨)를 사용하여, 그리고 SD-over-UFS 트랜스포트 레이어 및 SD-구성 애플리케이션 레이어(두 개의 레이어들은 도면부호 950으로 표시됨)를 사용하여, 저장 장치(920)에 또는 저장 장치로부터 데이터/명령들을 전송 및 수신한다. 저장 장치(920)는, 통신 레이어 측면에서, 호스트 장치(910)와 동일한 방식으로 구성된다. 그러므로, 브리지(830)는 통신의 관점에서 상기 양 장치들에 투명하다; 즉 어떠한 프로토콜 변환도 필요하지 않고 이용되지도 않는다.
도 10은 도 8에 보인 것과 같은 종래의 통신 레이어들을 개략적으로 도시하고 있지만, 도 10의 경우에는 브리지(1030)를 통하여 SD 데이터 및 SD 명령들을 SCSI-over-UFS 프로토콜을 이용하는 호스트 장치(1010)와 레거시 SD 카드로 구성된 탈착 가능 저장 장치(1020) 사이에서 SD 데이터 및 SD 명령들을 브리지(1030)를 통해 전송하기 위하여 사용되고 있다. 호스트 장치(1010)는, UFS 물리적 레이어 및 UFS 링크 레이어(두 개의 레이어는 도면부호 1040으로 표시됨), 그리고 SCSI 트랜스포트 레이어 및 SCSI 애플리케이션 레이어(두 개의 레이어들은 도면부호 1050으로 표시됨)를 사용한다. 레거시 SD 카드(1020)는 SD 물리적 레이어, SD 링크 레이어, SD 트랜스포트 레이어, 및 SD 애플리케이션 레이어를 사용한다. 도 10은 호스트 장치에 의해 사용되는 저장 장치 프로토콜이 저장 장치에 의해 사용되는 저장 장치 프로토콜와 달라서, 저장 장치 프로토콜 변환이 수행되는 경우를 보여주고 있다.
도 11은 도 10의 브리지(1030)와 같은 브리지에 의해 사용되는 변환 방식(conversion scheme)을 개략적으로 도시하고 있는데, 이는 고속 프로토콜을 레거시(저속) SD 프로토콜로 그리고 그 반대로 변환하기 위한 것이다. 저장 장치 프로토콜 변환기(SDPC)(1100)에 의해 적용되는 브리지 방식은 SCSI 트랜스포트 레이어 및 애플리케이션 레이어를 사용함으로써 호스트 장치와 SD 카드 사이에서 데이터/명령들의 통신을 가능하게 한다. SDPC(1100)는, 상기 SDPC(450) 및 SDPC(670)를 더욱 상세하게 보여주고 있는데, 고속 프로토콜(예를 들어, UFS 또는 UHS-II)에 실려 있는(riding over) SCSI 명령을 수신(1110)한다. 상기 SCSI 기본 명령들(예를 들어, "읽기"/"쓰기")은 대응되는 SD 명령으로 번역(1130)된다. SD 프로토콜 전용 명령들(예를 들어, "쓰기 방지"(Write Protect), "SD 보안"(SD Security))은 SCSI 프로토콜 안에 캡슐화되어 호스트 장치로부터 전송된다. 그러한 명령은 캡슐화해제 과정(de-capsulation process)(1120)를 거쳐야만 한다. SD 명령(즉, SD/SCSI 번역기(1130) 또는 SD/SCSI 프로토콜 캡슐화(1120)의 결과물)은 레거시 SD 공통/상태/데이터 레지스터들에 공통인 레지스터(1140)에 저장(held)된다. 레거시 SD 카드 프로토콜은, SD 트랜스포트 레이어와 링크 레이어(1160) 및 SD 물리적 레이어(1170)를 이용함으로써, 메모리 장치 인터페이스(1150)를 통하여 상기 명령들을 레거시 SD 카드에 전달한다(도 11에서 SD 카드는 생략됨). 데이터/명령 흐름 제어(flow control)(예를 들어, "대기"/"작업중")를 위해 사용되는 링크 레이어 신호는, 링크 신호 번역기(link signaling translator)(1185)를 사용함으로써, 고속 프로토콜 링크 레이어로부터 레거시 SD 프로토콜 링크 레이어로 번역된다. 저장 장치로부터 호스트 장치로 보내진 어떠한 명령-반응(Command-Response), 데이터 및 신호라도 유사한 과정을 거친다(즉, 명령-반응 및 데이터는 레거시 SD 프로토콜을 통하여 공통의 레지스터들(1140)에 저장(loaded)된다. 기본 정보는 SD/SCSI 번역기(1130)에 의해 SCSI로 번역되고, SD 특유의 명령들은 SD/SCSI 캡슐화부(encapsulator)(1120)에 의하여 SCSI 안에 캡슐화된다. 생성된 SCSI 명령은 고속 프로토콜의 링크 레이어(1180) 및 물리적 레이어(1190)를 이용하는 고속 메모리 인터페이스(1110)를 통하여 외부로 전달된다).
도 12는 도 8에 보인 것과 같은 종래의 통신 레이어들을 개략적으로 도시하고 있지만, 도 12의 경우에는 SD-over-UFS 프로토콜을 사용하는 호스트 장치(1210)와 레거시 SD 카드와 같은 탈착 가능 저장 장치(1220) 사이에서 브리지(1230)를 통하여 데이터 및 명령을 전달하기 위해 사용되고 있다. 호스트 장치(1210)는 UFS 물리적 레이어와 UFS 링크 레이어(이 두 레이어들은 도면부호 1240으로 표시됨), 그리고 SD 트랜스포트 레이어 및 SD 애플리케이션 레이어(후자의 두 레이어들은 도면부호 1250으로 표시됨)를 사용한다. 도 12는 호스트 장치에 의해 사용되는 저장 장치 프로토콜이 저장 장치에 의해 사용되는 저장 장치 프로토콜과 다른 경우를 보여주고 있는데, 이 경우 저장 장치 프로토콜 변환이 수행된다.
도 13은 도 12의 브리지(1230)와 같은 하나의 브리지에 의하여 사용되는 변환 방식을 개략적으로 보여주고 있는데, 고속 프로토콜을 레거시(저속) SD 프로토콜로 변환하기 위한 것이다. 저장 장치 프로토콜 변환기(SDPC)에 의해 적용되는 브리지 방식은 SD-over-UFS 트랜스포트 레이어를 사용함으로써 호스트 장치와 SD 카드 사이에 데이터/명령들의 통신을 가능하게 한다. SDPC(1300)는, 상기 SDPC(450) 및 SDPC(670)를 더욱 상세하게 보여주고 있는데, 고속 프로토콜(예를 들어, UFS 또는 UHS-II)에 캡슐화되어 있는 SD 명령을 수신한다. 상기 SD 명령은 캡슐화해제되고(1320), 레지스터들(1330)에 저장되며, SD 트랜스포트 레이어, 링크 레이어(1350) 및 SD 물리적 레이어(1360)를 이용함으로써 SD 카드(도 13에는 생략됨)에 전달(1340)된다. 명령/데이터 흐름 제어(flow control)(예를 들어, "대기"/"작업중")를 위해 사용되는 링크 레이어 신호는, 링크 신호 번역기(link signaling translator)(1385)를 사용함으로써, 고속 프로토콜 링크 레이어로부터 레거시 SD 프로토콜 링크 레이어로 번역된다. 저장 장치로부터 호스트 장치로 보내진 어떠한 명령-반응(Command-Response), 데이터 및 신호라도 유사한 과정을 거친다(즉, 명령-반응 및 데이터 등은 레거시 SD 프로토콜을 통하여 공통의 레지스터들(1140)에 저장(loaded)된다. 고속 프로토콜의 링크 레이어(1380) 및 물리적 레이어(1390)을 이용함으로써, 정보는 고속 메모리 인터페이스(1310)을 통하여 SD 형식으로 전송된다. 링크 레이어 신호는, 링크 신호 번역기(1385)를 이용하여, 고속 링크 레이어 신호로 직접 번역된다.).
도 14는, "장치 1"(도면부호 1402), "장치 2"(도면부호 1404), ..., "장치 N"(도면부호 1406)으로 표시되고, N 개의 장치가 링 토폴로지를 통하여 호스트 장치(1410)에 기능적으로 연결되어 있는, 내장된 UHS-II 카드들/장치들과; HS-II 인터페이스(1430)을 통해 상기 장치(1410)에 연결된 하나의 탈착 가능 UHS-II 저장 장치(1432); 그리고 SD 인터페이스(1440)를 통하여 호스트 장치(1410)에 연결된 하나의 레거시 SD 탈착 가능 카드(1442)를 포함하는 하나의 시스템을 개략적으로 도시하고 있다. 저장 장치(1410)는 세 가지 종류의 인터페이스들: (1) "장치 1"부터 "장치 N"까지 링 토폴로지를 통해 연결된 N 개의 내장된 장치들을 위한 하나의 UHS-II 인터페이스(1420), (2) UHS-II 표준(예를 들어, UHS-II 카드(1432))을 지원하는 탈착 가능 저장 장치들을 위한 하나의 UHS-II 인터페이스(1430), 그리고 (3) 레거시 SD 카드(1442)를 위한 하나의 레거시 SD 인터페이스(14440)를 구비한다. 상기 탈착 가능 UHS-II 카드(1432)는, 분리된 통신 경로들 때문에, 링 토폴로지를 통해 연결된 N 개의 내장 장치들의 작동에 영향을 미치지 않고도 호스트(1410)로부터 기능적으로 분리될 수 있다. 그럼에도 불구하고, 앞에서 설명한 이유들(즉, 별도의 입/출력 배선 등) 때문에, 상기 인터페이스들(1420, 1430, 및 1440)과 같은 세 개의 분리된 인터페이스들을 포함하는 호스트 장치는 문제점을 가지고 있다.
도 15는 도 14에 보인 시스템 방식에서 발생하는 문제점에 대한 부분적인 해결책을 개략적으로 도시하고 있다. 탈착 가능 UHS-II 카드(1432)는 바이패스 스위치(bypass switch)(1540)를 포함하는 하나의 브리지(1510)를 통하여 링 토폴로지에 연결된다. 아래에서 설명하고 있는 도 16에 보인 바와 같이, 상기 브리지(1510)에는, 탈착 가능 UHS-II 카드(1432)가 연결되어 있는지를 감지하기 위한 수단과; 그리고 브리지(1510)의 입력 단자(1520)를 탈착 가능 UHS-II 카드(1432)의 "D0" 단자에 연결하고, 브리지(1510)의 출력 단자(1530)를 탈착 가능 UHS-II 카드(1432)의 "D1" 단자에 연결하며, 만약 탈착 가능 UHS-II 카드(1432)가 브리지(1510)으로부터 분리되는 경우에는 내부적으로 상기 입력 단자(1520)를 출력 단자(1530)에 연결하는 수단이 제공된다. 도 15의 네트워크 방식은 도 14에서 보인 두 개의 UHS-II 인터페이스들 중 하나(즉, UHS-II 인터페이스(1430))를 절약할 수 있게 해준다. 그러나 분리된 상기 SD 인터페이스(즉, SD 인터페이스(14440))는, 상기 호스트 장치(1500)를 SD 역호환 가능한 장치로 만들기 위하여, 도 15에서도 여전히 요구된다.
도 16은, 상기 탈착 가능 UHS-II 카드(1432)가 상기 브리지(1510)으로부터 분리되어 있고(해당 카드(1432)는 도 15에서 브리지(1510)에 연결되어 도시되었음), 결과적으로 "바이패스" 상태에 있는, 도 15의 데이터 저장 시스템을 보여주고 있다. "바이패스" 상태에서는, 상기 브리지(1510)의 입력 단자(1520)이 내부적으로 브리지의 출력 단자(1530)에 연결(1610)되고, 따라서 탈착 가능 UHS-II 카드(1432)가 저장 장치 인터페이스로부터 제거되거나 분리된 경우 브리지(1510) 내에서 해당 저장 장치 인터페이스를 바이패스하도록 한다.
도 17은 하나의 예시적인 실시예에 따른, 링 토폴로지 안에 연결된 하나의 브리지(1710)를 보여준다. 상기 링 토폴로지는 하나의 호스트(1740), N 개의 장치들(즉, 도면부호 1742로 표시된 "장치 1"부터 도면부호 1744로 표시된 "장치 N"까지), 그리고 도 6의 도면부호 600에 해당되는 하나의 브리지(1710)를 포함한다. 상기 브리지(1710)는, 비록 호스트 장치(1740)가 오직 하나의 인터페이스(즉, UHS-II 인터페이스(1750))만을 구비하고 있지만, 탈착 가능 레거시 SD 카드(1720) 또는 탈착 가능 UHS-II 카드(1730)와 호스트 장치(1740) 사이에서 통신이 가능하도록 해준다. 상기 호스트(1740)는, 도면부호 1750으로 표시된, 오직 하나의 저장 장치 인터페이스만을 구비하고 있고, 그 인터페이스를 통해 상기 호스트는 UHS-II 프로토콜을 사용하여 링 토폴로지 안에 있는 각각의 장치들과 통신한다. 만약 탈착 가능 UHS-II 카드(1730)가 브리지(1710)에 연결되면, 스위칭 시스템(1760)은 SDPC(1770)를 이용하지 않고 해당 카드(즉 카드 1730)를 상기 링의 루프에 연결한다. 만약 탈착 가능 레거시 SD 카드(1720)가 브리지(1710)에 연결되면, UHS-II 프로토콜에서 레거시 SD 프로토콜로의 변환 및 그 반대의 변환을 가능하게 하도록, 스위칭 시스템(1760)은 해당 카드를 SDPC(1770)를 통하여 상기 링의 루프에 연결한다. 상기 스위칭 시스템(1760)은 도 6의 스위칭 시스템(682)과 유사하고, 상기 SDPC(1770)는 도 6의 SDPC(670)와 유사하다.
도 18은 하나의 실시예에 따른 연결 분석기(1800)를 보여준다. 연결 분석기(1800)는 호스트 프로토콜 감지기(1810), 카드 프로토콜 감지기(1820), 그리고 카드 삽입/제거 감지기(1830)를 포함한다. 앞에서 설명한 것처럼, 만약 호스트 장치가 저장 장치 프로토콜의 종류를 미리 알지 못하는 경우, 브리지는 호스트 장치와의 통신을 감시함으로써 해당 프로토콜의 종류를 결정할 수 있다. 따라서, 상기 호스트 프로토콜 감지기(1810)는 상기 호스트 장치가 사용하는 저장 장치 프로토콜의 종류를 감지하기 위하여 호스트 장치로부터 발생하는 통신 신호들을 감시한다. 상기 연결 분석기(1800)는, 호스트 장치가 사용할 수 있는 하나 또는 그 이상의 저장 장치 프로토콜들을 지원하기 위하여, 설정 가능한 인터페이스(1840)를 포함할 수 있다. 호스트 장치가 사용하는 프로토콜의 종류를 감지하기 위하여, 상기 호스트 프로토콜 감지기(1810)는 먼저 해당 인터페이스(1840)가 제1 종류(예를 들어, UFS)의 고속 프로토콜을 사용하여 작동하도록 설정한다. 상기 호스트 프로토콜 감지기(1810)는 위와 같은 초기의 인터페이스 설정이 호스트 장치가 사용하는 저장 장치 프로토콜과 일치하는지, 상기 호스트 프로토콜 감지기(1810)가 인터페이스(1840)를 통하여 호스트 장치로부터 수신하는 통신 신호들을 근거로 판단한다. 만약 초기의 인터페이스 설정이 호스트 장치에 의해 사용되는 프로토콜과 일치하지 않는다면, 상기 호스트 프로토콜 감지기(1810)는 상기 인터페이스(1840)가 제2 종류(예를 들어, UHS-II)의 고속 프로토콜을 사용하여 작동하도록 설정한다. 하나의 인터페이스 설정은 호스트 장치가 사용하는 하나의 프로토콜과 대응된다고 가정한다. (UFS 및/또는 UHS-II가 아닌 다른 고속 저장 장치 프로토콜들이 호스트 장치에 의하여 사용될 수 있다.) 다시 말하자면, 상기 호스트 프로토콜 감지기(1810)는 상기 인터페이스(1840)의 작동 설정과 대응되는 프로토콜 사이의 조합으로부터 호스트 장치가 사용하는 저장 장치 프로토콜의 종류를 결정한다. 대안적으로 상기 호스트 프로토콜 감지기(1810)는, 상기 호스트 장치가 상위의 통신 레이어(예를 들어, 링크 레이어, 트랜스포트 레이어, 애플리케이션 레이어)를 이용하여 브리지에게 보내는 정보 또는 프로토콜 명령(들)을 이용함으로써 호스트 장치가 사용하는 프로토콜의 종류를 결정할 수도 있다.
대안적으로, 상기 호스트 프로토콜 감지기(1810)는 하나 이상의 고속 프로토콜들에 적합한 하나의 물리적 레이어(예를 들어, 인터페이스(1840))를 사용함으로써 호스트 장치와 통신할 수도 있다. 호스트 장치가 하나의 특정한 고속 프로토콜을 사용하여 하나의 프로토콜 명령을 브리지에 송신한다고 가정하자. 상기 호스트 프로토콜 감지기(1810)는 상기 프로토콜 명령을 수신하고, 상기 프로토콜 명령으로부터 호스트 장치가 사용하는 프로토콜의 종류를 유추하고, 대응하는 저장 장치 프로토콜을 사용하도록 해준다.
하나의 실시예에서, 카드 프로토콜 감지기(1820)는 적어도 저속의 저장 장치 프로토콜(예를 들어, 레거시 SD 프로토콜)을 사용하는 저장 장치(예를 들어, 저장 장치(1860))와 통신한다. 이러한 실시예에서, 카드 프로토콜 감지기(1820)는 먼저 저장 장치(1870)으로부터 설정 정보를 읽기 위해 저속 저장 장치 프로토콜을 사용함으로써 해당 저장 장치(1870)과 통신(1860)한다. 상기 설정 정보는 해당 저장 장치가 사용할 수 있는 저장 장치 프로토콜(들)의 종류에 관한 정보를 포함한다. 읽어들인 상기 설정 정보에 근거하여, 상기 카드 프로토콜 감지기(1820)는 해당 저장 장치(1870)가 상기 호스트 장치가 사용하는 고속 저장 장치 프로토콜을 사용할 수 있는지를 결정한다. 만약 상기 저장 장치(1870)가 호스트 장치가 사용하는 고속 저장 장치 프로토콜을 사용하지 않는 경우에, 상기 저장 장치(1870)는 저속 프로토콜을 사용하여 접근하도록 상기 카드 프로토콜 감지기(1820)가 결정한다. 만약 상기 저장 장치(1870)가 호스트 장치가 사용하는 고속 저장 장치 프로토콜을 사용할 수 있는 경우에는, 상기 저장 장치(1870)는 고속 프로토콜을 사용하여 접근하도록 상기 카드 프로토콜 감지기(1820)가 결정한다.
다른 실시예에서는, 상기 카드 프로토콜 감지기(1820)가 먼저 고속 저장 장치 프로토콜(예를 들어, UHS-II)을 이용하여 저장 장치(예를 들어, 저장 장치(1860))와 통신한다. 이러한 실시예에서, 상기 카드 프로토콜 감지기(1820)는 먼저 고속 저장 장치 프로토콜을 이용하여 저장 장치(1870)와 통신(1860)한다. 만약 해당 저장 장치(1860)가 상기 통신에 응답하지 않는 경우, 상기 저장 장치(1870)는 저속 프로토콜을 사용하여 접근하도록 상기 카드 프로토콜 감지기(1820)가 결정한다. 만약 상기 저장 장치(1870)가 상기 통신에 응답하는 경우에는, 상기 저장 장치(1870)는 고속 프로토콜을 사용하여 접근하도록 상기 카드 프로토콜 감지기(1820)가 결정한다.
프로토콜 감지 과정을 시작하기 위해서는, 저장 장치가 브리지에 연결되어 있는지를 결정할 필요가 있다. 다른 실시예에서, 저장 장치(1870)는 소켓(socket)(1880)을 통하여 브리지에 연결된다. 링 토폴로지와 관련하여 앞서 설명한 바와 같이, 하나의 장치가 링의 루프로부터 제거되는 경우, 해당 루프가 단절되지 않도록 제거된 장치를 바이패스하는 것이 필수적이다. 이를 위하여, 상기 소켓(1880)은, 해당 소켓(1890)과 저장 장치(1870)이 물리적 및 기능적으로 결합되어 있는 경우에는 제1 상태(예를 들어, "ON")에 있고 저장 장치(1870)가 해당 소켓(1890)으로부터 제거된 경우에는 제2 상태(예를 들어, "OFF")에 있는, 하나의 기계적 스위치(1890)를 포함할 수 있다. 이를 전제로, 상기 소켓(1890)은 상기 카드 연결 감지기(1830)에 연결 신호(1892)를 보낼 수 있고, 그 신호에 근거하여 상기 카드 연결 감지기(1830)는 저장 장치가 소켓(1890)(즉, 브리지)에 연결되어 있는지를 결정할 수 있다. 대안적으로는, 상기 카드 연결 감지기(1830)가 저장 장치(1870)를 조사(poll)하기 위하여 하나의 폴링 방식(polling scheme)을 사용할 수 있다. 폴링 세션(polling session)들은 저장 장치에 의해 사용되는 프로토콜의 종류가 결정된 후에 수행된다. 어떤 프로토콜이 하나의 저장 장치에 의해 사용되고 있다는 사실은, 또한 해당 저장 장치가 브리지에 연결되어 있음을 나타내는 증거로 사용된다. 만약 연결되어 있다고 생각되었던 저장 장치와의 통신 시도가 실패하는 경우에는, 해당 저장 장치가 해당 소켓(1880)에 연결되어 있지 않은 것으로 상기 카드 프로토콜 감지기(1820)가 결정한다.
제어기들(440, 540, 및 660)은 기존의 표준 시스템-온-칩(system-on-chip; "SoC") 장치이거나, 시스템-인-패키지(system-in-package; "SiP") 장치이거나, 상기 제어기에 의하여 실행되는 경우에 상기 설명된 설정, 단계들, 작업, 결정들 및 평가들을 수행하는 특화된 펌웨어(firmware), 소프트웨어, 또는 응용프로그램을 갖춘 범용 처리 유닛(general purpose processing unit)일 수 있다. 대안적으로, 상기 제어기는, 상기 설명된 설정들, 단계들, 작업들, 결정들 및 평가들을 구현한 주문형 집적회로(ASIC: application-specific integrated circuit)일 수 있다.
본 명세서에서 "하나의" 및 "한"이라는 용어는, 문맥에 따라서, 문법적 대상물의 하나 또는 그 이상(즉, 적어도 하나)를 지칭하기 위하여 사용되었다. 예를 들어, 문맥에 따라, "하나의 요소"는 하나의 요소 또는 하나 이상의 요소들을 의미할 수 있다. 본 명세서에서 "포함하는"이라는 용어는 "포함하지만 한정되지는 않는"의 의미로 대체 가능하도록 사용되었다. 본 명세서에서 "또는" 및 "그리고"라는 용어들은, 문맥상에서 명확하게 달리 나타내지 않는 한, "및/또는"의 의미로 대체 가능하도록 사용되었다. 본 명세서에서 "~와 같은"이라는 용어는 "~와 같지만 그에 한정되지는 않는"의 의미로 대체 가능하도록 사용되었다.
지금까지 설명한 본 발명의 예시적인 실시예들에 따라, 본 발명의 분야에서 통상의 기술자에게 있어 개시된 실시예들의 변형들은 본 발명의 범위에 포함된다는 사실이 명백하는 것을 알 수 있다. 따라서 대안적인 실시예들은 더 많거나 적은 모듈들 그리고/또는 기능적으로 균등한 모듈들을 포함할 수도 있다. 본 발명은 메모리 카드들, SD-구동 플래시 메모리 카드들, 플래시 저장 장치들, USB 플래시 드라이브들("UFDs"), 멀티미디어 카드("MMC")들, 시큐어 디지털("SD": secure digital), 미니 SD, 그리고 마이크로 SD 등과 같은, 다양한 종류의 대용량 저장 장치들에 관한 것이다. 따라서 첨부된 청구범위의 청구항들에서 정의되는 본 발명의 범위는 본 명세서에서 개시된 내용에 의해 제한되지 않는다.

Claims (33)

  1. 호스트 장치와 저장 장치 사이의 통신 방법으로서,
    하나의 제어기(controller), 스위칭 시스템(switching system), 양방향 변환기(bi-directional converter), 그리고 한쪽에는 제1 저장 장치 프로토콜을 사용하는 호스트 장치에 연결되는 호스트 인터페이스와, 다른 쪽에는 제1 저장 장치 프로토콜 또는 제1 저장 장치 프로토콜과는 다른 제2 저장 장치 프로토콜을 사용하는 저장 장치에 연결되는 저장 장치 인터페이스를 포함하는 하나의 브리지 안에서,
    상기 제어기를 이용하여,
    저장 장치가 상기 브리지와 연결된 경우에 제1 및 제2 저장 장치 프로토콜 중 어느 프로토콜을 상기 저장 장치가 사용하는지를 결정하는 단계;
    만약 상기 저장 장치가 제1 저장 장치 프로토콜이 아닌 제2 저장 장치 프로토콜을 사용하는 경우에, 상기 양방향 변환기가 상기 호스트 인터페이스와 저장 장치 인터페이스 사이에 기능적으로 연결되게 하여, 통신중인(communicated) 데이터를 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로, 또 그 반대 방향으로 변환하도록 상기 스위칭 시스템을 설정(configure)하는 단계; 및
    만약 상기 저장 장치가 제1 저장 장치 프로토콜을 사용하는 경우에, 상기 호스트 인터페이스를 상기 저장 장치 인터페이스에 연결할 때 상기 양방향 변환기를 바이패스(bypass)하도록 상기 스위칭 시스템을 설정하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 호스트 장치에 의해 사용되는 저장 장치 프로토콜의 종류가 상기 제어기에 사전에 알려져 있는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    만약 상기 브리지가 호스트 장치에 의해 사용되는 저장 장치 프로토콜의 종류를 알지 못하는 경우에는, 상기 제어기와 상기 호스트 장치 사이의 상호작용(interaction)을 통하여 호스트 장치에 의해 사용되는 저장 장치 프로토콜의 종류를 결정하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 제1 저장 장치 프로토콜이 상기 제2 저장 장치 프로토콜의 개선된(upgraded) 버젼(version)이거나 또는 더 빠른 버젼인 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 제1 저장 장치 프로토콜이 유니버설 플래시 스토리지(UFS: universal flash storage) 및 초고속(UHS-II: ultra high speed) 중 어느 하나인 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 제2 저장 장치 프로토콜이 시큐어 디지털(SD: secure digital), 유니버설 플래시 스토리지(UFS: universal flash storage), 울트라 하이 스피드(UHS-II: ultra high speed), 및 그 조합들 중 어느 하나인 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜 각각이 UFS 상의 SCSI(small computer system interface)인 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜 각각이 UFS 상의 SD인 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 저장 장치가 상기 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜을 모두 사용할 수 있고, 제1 및 제2 저장 장치 프로토콜들 중에서 더 빠른 저장 장치 프로토콜이 사용을 위해 선택되는 것을 특징으로 하는 방법.
  10. 제1항에 있어서,
    상기 저장 장치가 SD 카드, UFS 카드, UHS-II 카드, SD-UFS 카드 및 SD-UHS-II 카드 중 어느 하나인 것을 특징으로 하는 방법.
  11. 제1항에 있어서,
    상기 브리지가 체인 토폴로지 또는 링 토폴로지를 갖춘 데이터 네트워크를 통하여 상기 호스트 장치에 그리고 상기 저장 장치에 연결되는 것을 특징으로 하는 방법.
  12. 제11항에 있어서,
    상기 브리지에 의하여, 저장 장치가 저장 장치 인터페이스로부터 분리되는 것을 감지하고, 상기 스위칭 시스템 내의 바이패스 스위치를 활성화시켜서 상기 저장 장치 인터페이스가 바이패스되도록 하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  13. 제1항에 있어서,
    상기 브리지가 상기 호스트 장치에 또는 하나의 통신 허브(communication hub)에 직접 연결된 것을 특징으로 하는 방법.
  14. 저장 시스템 브리지로서,
    직접 또는 간접으로 제1 저장 장치 프로토콜을 사용하는 하나의 호스트 장치에 연결되는 하나의 호스트 인터페이스;
    제1 저장 장치 프로토콜 또는 제1 저장 장치 프로토콜와는 다른 제2 저장 장치 프로토콜을 사용하는 하나의 저장 장치에 연결되는 하나의 저장 장치 인터페이스;
    통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로, 또 그 반대 방향으로 변환하기 위한, 하나의 양방향 변환기;
    하나의 제어기; 및
    하나의 스위칭 시스템을 포함하고,
    상기 제어기는:
    저장 장치가 상기 저장 장치 인터페이스에 연결되어 있는지 그리고 제1 및 제2 저장 장치 프로토콜들 중 어느 프로토콜을 상기 저장 장치가 사용하는지를 결정하고;
    만약 상기 저장 장치가 제1 저장 장치 프로토콜이 아닌 제2 저장 장치 프로토콜을 사용하는 경우에는, 상기 양방향 변환기가 상기 호스트 인터페이스와 저장 장치 인터페이스 사이에 기능적으로 연결되게 하여 통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로 또 그 반대 방향으로 변환하도록 상기 스위칭 시스템을 설정하며; 그리고
    만약 상기 저장 장치가 제1 저장 장치 프로토콜을 사용하는 경우에는, 상기 호스트 인터페이스를 상기 저장 장치 인터페이스에 연결할 때 상기 양방향 변환기를 바이패스하도록 상기 스위칭 시스템을 설정하도록 된 것을 특징으로 하는 브리지.
  15. 제14항에 있어서,
    상기 호스트 장치가 제1 저장 장치 프로토콜을 사용하는 것을 상기 제어기가 미리 알고 있는 것을 특징으로 하는 브리지.
  16. 제14항에 있어서,
    만약 상기 제어기가 상기 저장 장치 프로토콜의 종류를 알지 못하는 경우에, 상기 제어기가 호스트 장치와의 상호작용(interaction)을 통하여 상기 저장 장치 프로토콜의 종류를 결정하는 것을 특징으로 하는 브리지.
  17. 제14항에 있어서,
    상기 제1 저장 장치 프로토콜이 상기 제2 저장 장치 프로토콜의 개선된(upgraded) 버젼 또는 더 빠른 버젼인 것을 특징으로 하는 브리지.
  18. 제14항에 있어서,
    상기 제1 저장 장치 프로토콜이 UFS 프로토콜 및 UHS-II 프로토콜 중 어느 하나인 것을 특징으로 하는 브리지.
  19. 제14항에 있어서,
    상기 제2 저장 장치 프로토콜이 SD 프로토콜, UFS 프로토콜, UHS-II 프로토콜, 및 그 조합 중 어느 하나인 것을 특징으로 하는 브리지.
  20. 제14항에 있어서,
    상기 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜 각각이 UFS 상의 SCSI 프로토콜인 것을 특징으로 하는 브리지.
  21. 제14항에 있어서,
    상기 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜 각각이 UFS 상의 SD(SD-over-UFS) 프로토콜인 것을 특징으로 하는 브리지.
  22. 제14항에 있어서,
    만약 저장 장치가 제1 저장 장치 프로토콜 및 제2 저장 장치 프로토콜을 모두 사용할 수 있는 경우, 더 빠른 저장 장치 프로토콜이 사용을 위하여 선택되는 것을 특징으로 하는 브리지.
  23. 제14항에 있어서,
    상기 제2 저장 장치 프로토콜을 따르는 저장 장치가 SD 메모리 카드, UFS 메모리 카드, UHS-II 메모리 카드, SD-UFS 카드, 및 SD-UHS-II 카드 중 어느 하나인 것을 특징으로 하는 브리지.
  24. 제14항에 있어서,
    상기 브리지가 체인 토폴로지 또는 링 토폴로지를 갖는 버스(bus)를 통하여 호스트 장치에 그리고 저장 장치에 연결되는 것을 특징으로 하는 브리지.
  25. 제24항에 있어서,
    상기 스위칭 시스템이 저장 장치 인터페이스를 바이패스하기 위한 하나의 바이패스 스위치를 포함하고, 상기 제어기는 상기 저장 장치가 저장 장치 인터페이스로부터 분리되는 것을 감지하고 상기 분리에 반응하여 상기 저장 장치 인터페이스를 바이패스하기 위하여 상기 바이패스 스위치를 활성화시키도록 설정된 것을 특징으로 하는 브리지.
  26. 제14항에 있어서,
    저장 장치가 상기 브리지에 연결되어 있는지의 여부와 상기 호스트 장치 및/또는 상기 저장 장치가 사용하는 저장 장치 프로토콜의 종류를 결정하기 위한 연결 분석기(connection analyzer)를 추가로 포함하는 것을 특징으로 하는 브리지.
  27. 제14항에 있어서,
    상기 브리지가 상기 호스트 장치 또는 통신 허브(communication hub)에 직접 연결된 것을 특징으로 하는 브리지.
  28. 저장 시스템 브리지로서,
    제1 저장 장치 프로토콜을 사용하는 호스트 장치에 직접 또는 간접으로 연결되는 하나의 호스트 인터페이스;
    상기 제1 저장 장치 프로토콜과는 다른, 제2 저장 장치 프로토콜 또는 제3 저장 장치 프로토콜을 사용하는 하나의 저장 장치에 연결되는 하나의 저장 장치 인터페이스;
    통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로, 또 그 반대로 변환하기 위한 제1 양방향 변환기;
    통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제3 저장 장치 프로토콜로, 또 그 반대로 변환하기 위한 제2 양방향 변환기;
    하나의 제어기; 및
    하나의 스위칭 시스템을 포함하고,
    상기 제어기는:
    저장 장치가 저장 장치 인터페이스와 연결되어 있는지 여부 및 해당 저장 장치가 제2 및 제3 저장 장치 프로토콜들 중 어느 것을 사용하는지를 결정하고;
    만약 상기 저장 장치가 제3 저장 장치 프로토콜이 아닌 제2 저장 장치 프로토콜을 사용하는 경우에는, 상기 양방향 변환기가 상기 호스트 인터페이스와 저장 장치 인터페이스 사이에 기능적으로 연결되게 하여, 통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로 또 그 반대 방향으로 변환하도록 상기 스위칭 시스템을 설정하며; 그리고
    만약 상기 저장 장치가 제3 저장 장치 프로토콜을 사용하는 경우에는, 제2 양방향 변환기가 상기 호스트 인터페이스와 저장 장치 인터페이스 사이에 기능적으로 연결되게 하여, 통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제3 저장 장치 프로토콜로 또 그 반대 방향으로 변환하도록 상기 스위칭 시스템을 설정하도록 된 것을 특징으로 하는 브리지.
  29. 제28항에 있어서,
    상기 호스트 장치가 제1 저장 장치 프로토콜을 사용하는 것을 상기 제어기가 사전에 알고 있는 것을 특징으로 하는 브리지.
  30. 제28항에 있어서,
    만약 상기 제어기가 상기 제1 저장 장치 프로토콜의 종류를 알지 못하는 경우에는, 상기 제어기가 호스트 장치와의 상호작용(interaction)을 통하여 상기 저장 장치 프로토콜의 종류를 결정하는 것을 특징으로 하는 브리지.
  31. 제28항에 있어서,
    저장 장치가 상기 브리지와 연결되어 있는지의 여부와, 해당 호스트 장치 및/또는 저장 장치가 사용하는 저장 장치 프로토콜의 종류를 결정하기 위한 연결 분석기를 추가로 포함하는 것을 특징으로 하는 브리지.
  32. 저장 시스템 브리지로서,
    링 토폴로지를 갖춘 버스를 통하여 호스트 장치와 직접 또는 간접으로 연결되는 하나의 호스트 인터페이스;
    링 토폴로지를 갖춘 상기 버스를 통하여 저장 장치와 연결되는 하나의 저장 장치 인터페이스;
    하나의 제어기; 및
    상기 저장 장치 인터페이스를 바이패스하기 위한, 설정 가능한 하나의 바이패스 스위치를 포함하고,
    상기 제어기는:
    저장 장치가 저장 장치 인터페이스와 기능적으로 연결되어 있는지의 여부를 결정하고;
    만약 저장 장치가 상기 저장 장치 인터페이스에 기능적으로 연결되어 있다고 상기 제어기가 결정하는 경우에는, 상기 호스트 장치 인터페이스를 상기 저장 장치 프로토콜에 연결하고; 그리고
    만약 어떠한 저장 장치도 상기 저장 장치 인터페이스에 기능적으로 연결되어 있다고 상기 저장장치가 결정하는 경우에는, 상기 저장 장치 인터페이스를 바이패스할 수 있도록 상기 바이패스 스위치를 활성화시키도록 설정된 것을 특징으로 하는 브리지.
  33. 제1 저장 장치 프로토콜을 사용하는 하나의 호스트 장치;
    상기 제1 저장 장치 프로토콜 또는 제1 저장 장치 프로토콜과는 다른 제2 저장 장치 프로토콜을 사용하는 하나의 저장 장치;
    하나의 제어기, 하나의 스위칭 시스템, 하나의 양방향 변환기, 그리고 한쪽에는 호스트 장치와 연결되는 하나의 호스트 인터페이스와 다른 쪽에는 저장 장치와 연결되는 하나의 저장 장치 인터페이스를 포함하는 하나의 브리지를 포함하는 데이터 저장 시스템(data storage system)으로서,
    상기 제어기는:
    저장 장치가 상기 브리지와 연결되는 경우에, 상기 저장 장치가 제1 및 제2 장치 프로토콜들 중 어느 것을 사용하는지를 결정하고;
    만약 상기 저장 장치가 제1 저장 장치 프로토콜이 아닌 제2 저장 장치 프로토콜을 사용하는 경우에는, 상기 양방향 변환기가 상기 호스트 인터페이스와 저장 장치 인터페이스 사이에 기능적으로 연결되게 하여, 통신중인 데이터를 상기 제1 저장 장치 프로토콜로부터 제2 저장 장치 프로토콜로 또 그 반대로 변환하도록 설정하고; 그리고
    만약 상기 저장 장치가 제1 저장 장치 프로토콜을 사용하는 경우에는, 상기 호스트 인터페이스를 상기 저장 장치 인터페이스에 연결할 때 상기 양방향 변환기를 바이패스할 수 있도록 상기 스위칭 시스템을 설정하도록 된 것을 특징으로 하는 데이터 저장 시스템(data storage system).
KR1020127007910A 2009-09-23 2010-09-02 다중 프로토콜 저장 장치 브리지 KR101700380B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/565,685 2009-09-23
US12/565,685 US8301822B2 (en) 2009-09-23 2009-09-23 Multi-protocol storage device bridge
PCT/IB2010/002191 WO2011036526A1 (en) 2009-09-23 2010-09-02 Multi-protocol storage device bridge

Publications (2)

Publication Number Publication Date
KR20120085758A true KR20120085758A (ko) 2012-08-01
KR101700380B1 KR101700380B1 (ko) 2017-01-26

Family

ID=43477312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127007910A KR101700380B1 (ko) 2009-09-23 2010-09-02 다중 프로토콜 저장 장치 브리지

Country Status (7)

Country Link
US (1) US8301822B2 (ko)
EP (1) EP2480978B1 (ko)
JP (1) JP2013505507A (ko)
KR (1) KR101700380B1 (ko)
CN (1) CN102576339B (ko)
TW (1) TW201135471A (ko)
WO (1) WO2011036526A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150142479A (ko) * 2014-06-12 2015-12-22 삼성전자주식회사 메모리 카드 인터페이스 및 이를 포함하는 전자 장치, 이의 운용 방법

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7581041B1 (en) * 2003-12-29 2009-08-25 Apple Inc. Methods and apparatus for high-speed serialized data transfer over network infrastructure using a different protocol
KR20100067905A (ko) * 2008-12-12 2010-06-22 삼성전자주식회사 인터페이싱 유닛 및 이를 포함하는 전자 시스템
CN103210380B (zh) * 2011-02-15 2016-08-10 松下知识产权经营株式会社 信息显示系统、信息显示控制装置和信息显示装置
US20120210038A1 (en) * 2011-02-16 2012-08-16 Skymedi Corporation External bridge system
JP5346978B2 (ja) * 2011-04-15 2013-11-20 シャープ株式会社 インターフェイス装置、配線基板、及び情報処理装置
JP5346979B2 (ja) * 2011-04-18 2013-11-20 シャープ株式会社 インターフェイス装置、配線基板、及び情報処理装置
US20120303854A1 (en) * 2011-05-24 2012-11-29 Raidundant LLC Modular interface-independent storage solution system
DE102011084280A1 (de) * 2011-10-11 2013-04-11 Siemens Aktiengesellschaft Computersystem und Verfahren
KR101911059B1 (ko) * 2011-10-18 2018-10-24 삼성전자주식회사 Ufs 인터페이스의 테스트 방법 및 이의 테스트 방법으로 테스트를 수행하는 메모리 장치
CN103064814A (zh) * 2011-10-21 2013-04-24 鸿富锦精密工业(深圳)有限公司 具有多路接口的电子装置
KR20130070251A (ko) * 2011-12-19 2013-06-27 에스케이하이닉스 주식회사 브릿지 칩셋 및 그것을 포함하는 데이터 저장 시스템
US8775713B2 (en) * 2011-12-27 2014-07-08 Intel Corporation Multi-protocol tunneling over an I/O interconnect
WO2013115798A1 (en) 2012-01-31 2013-08-08 Hewlett-Packard Development Company, L.P. Flexible port configuration based on interface coupling
US8782321B2 (en) 2012-02-08 2014-07-15 Intel Corporation PCI express tunneling over a multi-protocol I/O interconnect
JP5843656B2 (ja) * 2012-02-24 2016-01-13 三菱電機株式会社 情報処理装置及び情報処理方法
US8880923B2 (en) 2012-03-29 2014-11-04 Intel Corporation Link power management in an I/O interconnect
EP2824579B1 (en) * 2012-07-02 2016-12-28 Huawei Technologies Co., Ltd. Storage expansion device and server
US20140089553A1 (en) * 2012-09-24 2014-03-27 Broadcom Corporation Interface between a host and a peripheral device
US9984083B1 (en) 2013-02-25 2018-05-29 EMC IP Holding Company LLC Pluggable storage system for parallel query engines across non-native file systems
US9753980B1 (en) 2013-02-25 2017-09-05 EMC IP Holding Company LLC M X N dispatching in large scale distributed system
US8793411B1 (en) 2013-03-05 2014-07-29 Apple Inc. Bridge circuit reorder buffer for transaction modification and translation
KR101996822B1 (ko) 2013-03-15 2019-07-08 삼성전자 주식회사 링 토폴로지 저장 네트워크의 멀티캐스트 명령 패킷 처리 방법 및 시스템
CN104239252A (zh) * 2013-06-21 2014-12-24 华为技术有限公司 数据存储系统的数据传输方法、装置及系统
US9710413B2 (en) 2013-06-28 2017-07-18 Stmicroelectronics S.R.L. Integrated data concentrator for multi-sensor MEMS systems
US9137335B2 (en) 2013-08-19 2015-09-15 Qualcomm Incorporated Operating M-PHY based communications over mass storage-based interfaces, and related connectors, systems and methods
US10025748B2 (en) 2013-09-27 2018-07-17 Intel Corporation Lane division multiplexing of an I/O link
US9367447B2 (en) * 2013-11-15 2016-06-14 Qualcomm Incorporated Removable memory card discrimination systems and methods
US9471529B2 (en) * 2013-11-26 2016-10-18 SK Hynix Inc. Embedded storage device including a plurality of storage units coupled via relay bus
MY180121A (en) * 2014-03-20 2020-11-23 Intel Corp Memory card connector for electronic devices
KR101937003B1 (ko) * 2014-03-20 2019-01-09 인텔 코포레이션 전자 장치용 메모리 카드 커넥터
US9552318B2 (en) * 2014-06-04 2017-01-24 Qualcomm Incorporated Removable memory card type detection systems and methods
US9904651B2 (en) 2014-07-31 2018-02-27 Samsung Electronics Co., Ltd. Operating method of controller for setting link between interfaces of electronic devices, and storage device including controller
KR102149665B1 (ko) * 2014-07-31 2020-09-01 삼성전자주식회사 스토리지 장치, 메모리 카드, 및 스토리지 장치의 통신 방법
US9619156B2 (en) * 2014-07-31 2017-04-11 Samsung Electronics Co., Ltd. Storage device, memory card, and communicating method of storage device
US9690518B2 (en) 2014-08-29 2017-06-27 Sandisk Technologies Llc Dynamic host command rejection
US9720866B2 (en) 2014-09-11 2017-08-01 Kabushiki Kaisha Toshiba Interface circuit executing protocol control in compliance with first and second interface standards
US9734117B2 (en) 2015-01-26 2017-08-15 Western Digital Technologies, Inc. Data storage device and method for integrated bridge firmware to be retrieved from a storage system on chip (SOC)
WO2016145405A1 (en) * 2015-03-11 2016-09-15 Protocol Insight, Llc Intelligent packet analyzer circuits, systems, and methods
KR102371557B1 (ko) * 2015-03-20 2022-03-07 삼성전자주식회사 호스트 장치, 그것과 복수의 장치들을 갖는 호스트 시스템 및 그것의 인터페이스 링크 레이어 구성 방법
US10114778B2 (en) 2015-05-08 2018-10-30 Samsung Electronics Co., Ltd. Multi-protocol IO infrastructure for a flexible storage platform
DE102016109387A1 (de) 2015-05-26 2016-12-01 Samsung Electronics Co., Ltd. Ein-Chip-System mit Taktverwaltungseinheit und Verfahren zum Betreiben des Ein-Chip-Systems
KR102384347B1 (ko) * 2015-05-26 2022-04-07 삼성전자주식회사 클록 관리 유닛을 포함하는 시스템 온 칩 및 그 동작방법
US9946681B1 (en) * 2015-06-29 2018-04-17 Western Digital Technologies, Inc. Host configured multi serial interface device
KR102498223B1 (ko) * 2015-10-13 2023-02-09 삼성전자주식회사 Ufs 장치의 작동 방법, ufs 호스트의 작동 방법, 및 이들을 포함하는 시스템의 작동 방법
KR102528557B1 (ko) * 2016-01-12 2023-05-04 삼성전자주식회사 다중 연결 포트를 갖는 반도체 장치, 메모리 시스템의 동작 방법 및 스토리지 시스템의 통신 방법
CN106021135A (zh) * 2016-05-04 2016-10-12 青岛海信电器股份有限公司 智能终端中显示通用串行总线设备的方法及智能终端
KR102656189B1 (ko) * 2016-07-19 2024-04-11 삼성전자주식회사 직렬로 연결되는 스토리지 장치들 중 직접 연결되지 않은 스토리지 장치를 제어하도록 구성되는 전자 장치, 그것에 포함되는 스토리지 장치, 그것을 포함하는 컴퓨팅 시스템, 및 스토리지 장치의 컨트롤러의 동작 방법
US10235312B2 (en) * 2016-10-07 2019-03-19 Samsung Electronics Co., Ltd. Memory system and host device that maintain compatibility with memory devices under previous standards and/or versions of standards
TWI604372B (zh) 2016-11-14 2017-11-01 瑞昱半導體股份有限公司 用於記憶卡存取之中介電路
CN108090549A (zh) * 2016-11-21 2018-05-29 瑞昱半导体股份有限公司 用于存储卡存取的中介电路
CN106933760A (zh) * 2017-03-13 2017-07-07 郑州云海信息技术有限公司 一种基于axi协议的dma控制器及数据上传方法
US11379396B2 (en) * 2017-03-22 2022-07-05 Realtek Semiconductor Corporation Memory card access module and memory card access method
EP3710946B1 (en) * 2017-11-13 2023-10-25 Data I/O Corporation Device programming system with protocol emulation
US10353840B2 (en) 2017-11-27 2019-07-16 Motorola Solutions, Inc. Secure digital format card having two interfaces to communicate with two processors
KR102444234B1 (ko) * 2018-01-03 2022-09-16 삼성전자주식회사 메모리 카드 및 전자 시스템
DE102018210061A1 (de) * 2018-06-21 2019-12-24 Robert Bosch Gmbh I3C-Slave-Schnittstelle, integrierte Schaltung mit einer I3C-Slave-Schnittstelle und Verfahren zum Betreiben einer I3C-Slave-Schnittstelle
BE1026569B1 (de) 2018-08-27 2020-03-23 Phoenix Contact Gmbh & Co Steuer- und Datenübertragungsanlage zur Unterstützung verschiedener Kommunikationsprotokolle und ein Adaptermodul
US20220032696A1 (en) * 2018-12-13 2022-02-03 Pacific Industrial Co., Ltd. Transmitter
JP2020144689A (ja) * 2019-03-07 2020-09-10 キオクシア株式会社 ストレージ装置及びストレージ装置の制御方法
TWI760615B (zh) * 2019-06-05 2022-04-11 瑞昱半導體股份有限公司 用於進行記憶裝置之寫保護指令之偵測控制的方法、控制晶片以及電子裝置
CN112084073B (zh) * 2019-06-14 2023-02-28 瑞昱半导体股份有限公司 执行写保护指令的检测控制的方法、控制芯片和电子装置
CN110489359B (zh) * 2019-08-22 2021-05-14 苏州国芯科技股份有限公司 一种数据传输控制方法及系统
JP2021162907A (ja) * 2020-03-30 2021-10-11 キヤノン株式会社 通信装置、制御方法、及びプログラム
TWI774026B (zh) * 2020-07-27 2022-08-11 瑞昱半導體股份有限公司 通用序列匯流排裝置與主機
TWI816046B (zh) * 2020-08-19 2023-09-21 創惟科技股份有限公司 記憶體儲存裝置的讀寫控制系統及方法
CN111930395B (zh) * 2020-08-20 2023-03-07 展讯通信(上海)有限公司 智能终端的程序下载方法和智能终端
CN115017083A (zh) * 2021-03-05 2022-09-06 苏州倍昊电子科技有限公司 数据传输系统、数据传输装置以及数据传输方法
WO2023065162A1 (zh) * 2021-10-20 2023-04-27 深圳市大疆创新科技有限公司 移动存储装置的数据传输方法、装置和存储介质
US20230153263A1 (en) * 2021-11-16 2023-05-18 Infineon Technologies Austria Ag Flexible high speed interface implementation in a power supply
US11822813B2 (en) 2021-12-28 2023-11-21 Samsung Electronics Co., Ltd. Storage device, operation method of storage device, and storage system using the same
CN115052048A (zh) * 2022-06-09 2022-09-13 联想(北京)有限公司 数据处理方法、装置及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7076580B2 (en) * 2002-09-30 2006-07-11 Fujitsu Limited Interface converter having switching ability

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03230639A (ja) * 1990-02-05 1991-10-14 Mitsubishi Electric Corp データ通信装置
US5832244A (en) * 1996-02-20 1998-11-03 Iomega Corporation Multiple interface input/output port for a peripheral device
US6502159B1 (en) * 1996-06-21 2002-12-31 Acer Incorporated Method and apparatus for increasing data throughput in a computer system
GB2318262B (en) * 1996-10-08 2000-11-08 Ibm Bypass circuit for data processing system
JP3104646B2 (ja) * 1997-06-04 2000-10-30 ソニー株式会社 外部記憶装置
US5928347A (en) * 1997-11-18 1999-07-27 Shuttle Technology Group Ltd. Universal memory card interface apparatus
US6334160B1 (en) * 1999-01-28 2001-12-25 Hewlett-Packard Co. Apparatus and method for providing multiple protocols through a common connector in a device
US6718274B2 (en) * 1999-08-05 2004-04-06 2Micro International Limited Integrated PC Card host controller for the detection and operation of a plurality of expansion cards
US7263476B1 (en) * 2000-06-12 2007-08-28 Quad Research High speed information processing and mass storage system and method, particularly for information and application servers
US6832281B2 (en) * 2000-07-06 2004-12-14 Onspec Electronic Inc. Flashtoaster for reading several types of flash memory cards with or without a PC
US6438638B1 (en) * 2000-07-06 2002-08-20 Onspec Electronic, Inc. Flashtoaster for reading several types of flash-memory cards with or without a PC
US6839864B2 (en) * 2000-07-06 2005-01-04 Onspec Electronic Inc. Field-operable, stand-alone apparatus for media recovery and regeneration
US7278051B2 (en) * 2000-07-06 2007-10-02 Onspec Electronic, Inc. Field-operable, stand-alone apparatus for media recovery and regeneration
WO2003030548A1 (en) * 2001-09-28 2003-04-10 Arris International, Inc. Digital transmission system having modulators remotely located from central media access control layer
US7162549B2 (en) * 2001-10-29 2007-01-09 Onspec Electronics, Inc. Multimode controller for intelligent and “dumb” flash cards
US6895447B2 (en) * 2002-06-06 2005-05-17 Dell Products L.P. Method and system for configuring a set of wire lines to communicate with AC or DC coupled protocols
TW547729U (en) * 2002-08-12 2003-08-11 Cheng-Chun Chang Improved card reader
JP4236440B2 (ja) * 2002-10-09 2009-03-11 株式会社ルネサステクノロジ Icカード
JP2004199551A (ja) * 2002-12-20 2004-07-15 Fujitsu Ltd ストレージシステム及び障害ストレージ装置の切り離し方法
US7120713B2 (en) * 2003-04-11 2006-10-10 The Boeing Company Systems and methods for interfacing legacy equipment to high-speed data buses
US6880024B2 (en) * 2003-06-12 2005-04-12 Phison Electronics Corp. Control system for memory storage device having two different interfaces
KR100618814B1 (ko) * 2003-07-04 2006-08-31 삼성전자주식회사 다중 호스트 인터페이스를 지원하는 스마트 카드 겸용이동형 저장 장치 및 이에 대한 인터페이스 방법
JP2005031928A (ja) * 2003-07-11 2005-02-03 Hitachi Ltd 記憶システム及び記憶システムの障害特定方法
KR100524988B1 (ko) * 2003-10-02 2005-10-31 삼성전자주식회사 Usb 인터페이스 기능을 가지는 mmc 장치 및 이에대한 인터페이스 방법
US20050097263A1 (en) * 2003-10-31 2005-05-05 Henry Wurzburg Flash-memory card-reader to IDE bridge
US7069369B2 (en) * 2004-02-12 2006-06-27 Super Talent Electronics, Inc. Extended-Secure-Digital interface using a second protocol for faster transfers
US7664902B1 (en) * 2004-03-16 2010-02-16 Super Talent Electronics, Inc. Extended SD and microSD hosts and devices with USB-like high performance packetized interface and protocol
TWI271659B (en) * 2004-05-05 2007-01-21 Prolific Technology Inc Memory card equipped with a multi-interface function and method for choosing a compatible transmission mode
JP4799417B2 (ja) * 2004-09-28 2011-10-26 dブロード株式会社 ホストコントローラ
TWI310159B (en) * 2005-01-18 2009-05-21 Incomm Technologies Co Ltd An adapter for connecting a portable memory unit to a host, and a memory device having the adapter
JP2006268459A (ja) 2005-03-24 2006-10-05 Ricoh Co Ltd 不揮発性メモリーカード及び形状変換アダプタ
KR100589227B1 (ko) * 2005-05-23 2006-06-19 엠텍비젼 주식회사 메모리 인터페이스 공유 기능을 구비한 장치 및 그 공유방법
DE102006059109A1 (de) 2006-12-08 2008-06-12 Siemens Ag Anordnungen, Verfahren und Vorrichtungen zur Übertragung von Daten zwischen einer Steuer-Einrichtung und einem elektrischen Gerät
JP4438846B2 (ja) * 2007-09-14 2010-03-24 ソニー株式会社 カード型周辺装置
US7848160B2 (en) * 2007-12-13 2010-12-07 Samsung Electronics Co., Ltd. Semiconductor storage device and method for operating the same
US8204528B2 (en) * 2008-04-24 2012-06-19 Research In Motion Limited Apparatus, and associated method, for facilitating access to a home, or other public network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7076580B2 (en) * 2002-09-30 2006-07-11 Fujitsu Limited Interface converter having switching ability

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150142479A (ko) * 2014-06-12 2015-12-22 삼성전자주식회사 메모리 카드 인터페이스 및 이를 포함하는 전자 장치, 이의 운용 방법

Also Published As

Publication number Publication date
EP2480978B1 (en) 2015-10-21
TW201135471A (en) 2011-10-16
CN102576339A (zh) 2012-07-11
US20110072185A1 (en) 2011-03-24
CN102576339B (zh) 2015-07-08
US8301822B2 (en) 2012-10-30
JP2013505507A (ja) 2013-02-14
EP2480978A1 (en) 2012-08-01
WO2011036526A1 (en) 2011-03-31
KR101700380B1 (ko) 2017-01-26

Similar Documents

Publication Publication Date Title
KR101700380B1 (ko) 다중 프로토콜 저장 장치 브리지
JP6400714B2 (ja) Usbハブを有する自動車システムとの柔軟なモバイルデバイス接続性
US9355057B2 (en) Universal serial bus repeater
KR101911059B1 (ko) Ufs 인터페이스의 테스트 방법 및 이의 테스트 방법으로 테스트를 수행하는 메모리 장치
KR101181150B1 (ko) PCIe 인터페이스 상에서 SATA 대량 저장 장치 에뮬레이션
KR101111946B1 (ko) 촬상 장치, 이미지 시그널 프로세서 칩 및 칩 간의 메모리 공유 방법
US8700821B2 (en) Unified multi-transport medium connector architecture
EP3462328B1 (en) Serial connection between management controller and microcontroller
TW201937381A (zh) 支援多模式及/或多速度之跨架構高速非揮發性記憶體裝置的系統與方法及儲存裝置
JP2006024217A (ja) 複数の機能デバイスで単一のホスト・コントローラを共有すること
KR20150094506A (ko) 임베디드 범용 직렬 버스 솔루션
KR102420530B1 (ko) 대체 프로토콜 선택
JPWO2011004548A1 (ja) I/oシステム、下流pciエクスプレスブリッジ、インターフェース共有方法、およびプログラム
TWI778063B (zh) 通用串列匯流排之主機對主機自動切換
US20090271557A1 (en) Non-volatile memory storage device with high transmission rate
CN113609045A (zh) 一种通用性强的智能网卡bmc通信结构及方法
US9430431B2 (en) Multi-part electronic device and data transmission method
US20120102251A1 (en) Serial attached small computer system interface (sas) domain access through a universal serial bus interface of a data processing device
CN110855581B (zh) 适用于vpx架构的40g和srio复用的国产交换刀片装置
CN112199312B (zh) 通信设备的接口转换装置及通信系统
CN117319097A (zh) Pci-e外置系统、会话协商方法及会话协商装置
CN117435538A (zh) 一种PCIe转SRIO的桥接系统
CN116401195A (zh) 存储器扩展装置、存储系统和总线通信方法
CN102467475A (zh) 电脑系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191217

Year of fee payment: 4