KR102345720B1 - 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법 - Google Patents

광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법 Download PDF

Info

Publication number
KR102345720B1
KR102345720B1 KR1020150084036A KR20150084036A KR102345720B1 KR 102345720 B1 KR102345720 B1 KR 102345720B1 KR 1020150084036 A KR1020150084036 A KR 1020150084036A KR 20150084036 A KR20150084036 A KR 20150084036A KR 102345720 B1 KR102345720 B1 KR 102345720B1
Authority
KR
South Korea
Prior art keywords
signal
optical signal
sata
data
converter
Prior art date
Application number
KR1020150084036A
Other languages
English (en)
Other versions
KR20160147373A (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 한국전자통신연구원
Priority to KR1020150084036A priority Critical patent/KR102345720B1/ko
Priority to US15/066,008 priority patent/US9722702B2/en
Publication of KR20160147373A publication Critical patent/KR20160147373A/ko
Application granted granted Critical
Publication of KR102345720B1 publication Critical patent/KR102345720B1/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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/25Arrangements specific to fibre transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/80Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water
    • H04B10/801Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water using optical interconnects, e.g. light coupled isolators, circuit board interconnections
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/27Arrangements for networking
    • H04B10/278Bus-type networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/50Transmitters
    • H04B10/516Details of coding or modulation
    • H04B10/5161Combination of different modulation schemes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Computing Systems (AREA)
  • Optical Communication System (AREA)
  • Information Transfer Systems (AREA)

Abstract

광 신호를 이용한 SATA 호스트 버스 어댑터 및 광 신호를 이용한 SATA 저장소 연결 방법이 개시된다. 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터는 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 제 1 변환부; 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 광 신호 변환부; 및 상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송하는 제 2 변환부를 포함한다.

Description

광 신호를 이용한 SATA 호스트 버스 어댑터 및 SATA 저장소 연결 방법{SATA HOST BUS ADAPTOR USING LIGHT SIGNAL AND METHOD FOR CONNECTING SATA STORAGE USING THE SAME}
본 발명은 광 신호를 이용하여 서버를 구성하는 호스트 컴퓨터와 SATA 타입의 저장소를 연결하는 기술에 관한 것이다.
종래의 스토리지 디바이스를 연결하기 위한 수단으로 PC급에서는 Parallel ATA(PATA)가 주를 이루었으며, 서버급에서는 SCSI를 주로 사용하고 있었다. 또한, 고성능 서버간의 고대역폭의 스토리지 연결망을 구성하기 위해서 Fibre Channel(FC)이라는 광연결 스토리지 기술이 도입되었으며, 이는 높은 대역폭과 자유로운 연결성, 그리고 도달 거리를 늘려주는 장점을 가지고 있다. 그러나, 가격이 고가이고, 복잡한 프로토콜을 사용하고 있으므로, 데이터센터 등 가격에 제한을 비교적 덜 받는 환경에서 사용되었다. 컴퓨터 시스템이 발전함에 따라 컴퓨터 내장 및 외장 I/O 접속은 병렬 신호를 사용하는 대신 고속의 직렬 신호로 대체되게 되었으며(PCI는 PCI Express로, COM 포트나 LPT 포트는 USB로, FSB는 HyperTransport나 QPI로 대체됨) 스토리지 연결 방식인 PATA와 SCSI 또한 SATA(Serial ATA)와 SAS(Serial Attached SCSI)로 발전하게 되었으며, 현재는 PC와 서버에서 널리 사용되고 있다. 이는 상대적으로 설계가 덜 복잡하며, 저가로 구현을 할 수가 있어서 장점을 가지고 있으며, 또한 대역폭이 높으므로, 데이터센터 등에서의 고성능 컴퓨팅 환경에서도 적용 가능하다. 하지만, 전기 신호의 특성상 그 도달거리에 제약이 있어서, 특히 스토리지를 대량으로 사용하는 시스템의 경우 컴퓨팅 노드에 인접시켜야 하는 제약사항이 있으므로, FC를 대체하고 있지는 못하다.
한국 등록 특허 제 1444846호는 감시 카메라들 각각과 호스트 장치가 통신을 수행함에 있어, 호스트 버스 어댑터를 이용하여 광채널 프로토콜로 상호 통신하는 기술에 대하여 개시하고 있다.
하지만, 한국 등록 특허 제 1444846호는 광 채널 프로토콜로 상호 통신하는 기술에 대해서만 개시하고 있을 뿐, 호스트 컴퓨터와 SATA 저장소가 광 채널 프로토콜로 효율적으로 연결되고, 연결 비용을 낮출 수 있는 기술에 대해서는 침묵하고 있다.
따라서, 최근의 폭발적인 데이터량으로 인한 저장 공간의 증가의 필요에 비추어 볼 때, 호스트 컴퓨터와 SATA 저장소가 광 신호를 이용하여 연결됨에 있어, 연결 비용을 낮출 수 있는 기술의 필요성이 대두되고 있다.
본 발명의 목적은 광 신호를 이용하여 SATA 저장소와 호스트 컴퓨터 간의 연결을 가능하게 하는 것이다.
또한, 본 발명의 목적은 PCI-e 신호와 SATA 신호를 모두 수용할 수 있는 프로토콜을 이용하여 내부에서 데이터 처리를 수행하게 하는 것이다.
또한, 본 발명의 목적은 고가의 PCI-e 스위치의 이용 개수를 줄이면서, SATA 저장소와 호스트 컴퓨터의 연결 거리를 길게 하는 것이다.
또한, 본 발명의 목적은 기존의 PCI-e와 버스 간의 코어를 그대로 이용함으로써, 기존의 SATA 저장소와 호스트 컴퓨터 연결에 적용이 가능하게 하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터는 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 제 1 변환부; 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 광 신호 변환부; 및 상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송하는 제 2 변환부를 포함한다.
이 때, 상기 프로토콜은 상기 PCI 익스프레스 신호 및 상기 SATA 신호를 수용할 수 있다.
이 때, 상기 광 신호 변환부는 상기 광 신호에 기반하여 상기 제 1 변환부와 상기 제 2 변환부의 연결을 제어하는 연결 제어부를 포함할 수 있다.
이 때, 상기 연결 제어부는 제어 신호, 데이터 쓰기 신호 및 데이터 읽기 신호 중 어느 하나 이상을 포함하는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 데이터 교환을 제어할 수 있다.
이 때, 상기 제어 신호는 링크 넘버, 레인 넘버, 링크 연결 여부, 레인 연결 여부, 상기 제 1 변환부의 버퍼의 잔존량 및 상기 제 2 변환부의 버퍼의 잔존량을 포함하는 제어 신호일 수 있다.
이 때, 상기 연결 제어부는 상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입 저장소의 연결을 제어할 수 있다.
이 때, 상기 광 신호 변환부는 상기 제 2 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광 신호를 상기 제 2 변환부에 전송할 수 있다.
또한, 본 발명에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터는 SATA 타입 저장소에서 전송하는 SATA 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 제 1 변환부; 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 광 신호 변환부; 및 상기 광 신호 수신부에서 수신한 상기 광 신호를 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 PCI 익스프레스 신호로 변환하여 호스트 컴퓨터로 전송하는 제 2 변환부를 포함한다.
이 때, 상기 광 신호를 이용한 SATA 호스트 버스 어댑터는 제어 신호, 데이터 쓰기 신호, 데이터 읽기 신호 중 어느 하나 이상을 포함하는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 연결을 제어하는 연결 제어부를 포함할 수 있다.
이 때, 연결 제어부는 상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입의 저장소의 연결을 제어할 수 있다.
이 때, 상기 광 신호 변환부는 상기 제어신호에 포함된 상기 제 1 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광신호를 상기 제 2 변환부에 전송할 수 있다.
또한, 본 발명의 일 실시예에 따른 광 신호를 이용한 SATA 저장소 연결 방법은 제 1 변환부가 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 단계; 광신호 변환부가 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 단계; 및 제 2 변환부가 상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송하는 단계를 포함한다.
이 때, 상기 프로토콜은 상기 PCI 익스프레스 신호 및 상기 SATA 신호를 모두 수용하는 프로토콜일 수 있다.
이 때, 상기 광 신호를 변환하는 단계는 상기 광 신호에 기반하여 상기 제1 변환부와 상기 제 2 변환부의 연결을 제어할 수 있다.
이 때, 상기 광 신호를 변환하는 단계는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 데이터 교환을 제어하는 단계를 포함할 수 있다.
이 때, 상기 제어 신호는 링크 넘버, 레인 넘버, 링크 연결 여부, 레인 연결 여부 및 상기 제 1 변환부의 버퍼의 잔존량 및 상기 제 2 변환부의 버퍼의 잔존량을 포함할 수 있다.
이 때, 상기 데이터 교환을 제어하는 단계는 상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입 저장소의 연결을 제어할 수 있다.
이 때, 상기 광 신호를 변환하는 단계는 상기 제 2 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광 신호를 상기 제 2 변환부에 전송할 수 있다.
본 발명은 광 신호를 이용하여 SATA 저장소와 호스트 컴퓨터 간의 연결을 할 수 있어, 넓은 범위의 데이터 센터에서도 쉽게 이용할 수 있다.
또한, 본 발명은 PCI-e 신호와 SATA 신호를 모두 수용할 수 있는 프로토콜을 이용하여 내부에서 데이터 처리를 수행함으로써, 좀 더 빠르고 효율적인 데이터 전송이 가능하다.
또한, 본 발명은 호스트 컴퓨터에 연결되는 광 신호 애드온 카드에만 고가의 PCI-e 스위치를 이용하기 때문에, 고가의 PCI-e 스위치의 이용 개수를 줄일 수 있다.
또한, 본 발명은 기존의 PCI-e와 버스 간의 코어를 그대로 이용함으로써, 기존의 SATA 저장소와 호스트 컴퓨터 연결에 적용이 가능하다.
도 1은 SATA(Serial ATA)와 호스트 컴퓨터가 연결되는 방식을 나타낸 도면이다.
도 2는 PCI e 링크에 광 확장을 적용하여 SATA와 호스트 컴퓨터가 연결되는 방식을 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터를 나타낸 블록도이다.
도 4는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터를 이용하여 SATA 저장소와 호스트 컴퓨터를 연결한 것을 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 PCI E 신호를 광 신호로 변환하는 것을 도시한 도면이다.
도 6은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 광 신호를 SATA 신호로 변환하는 것을 도시한 도면이다.
도 7 내지 도 13은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 이용하는 프로토콜을 도시한 도면이다.
도 14는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 저장소 연결 방법을 나타낸 동작 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 SATA(Serial ATA)와 호스트 컴퓨터가 연결되는 방식을 나타낸 도면이다.
도 1을 참조하여 종래에 SATA 타입의 저장소와 호스트 컴퓨터가 연결되는 방식에 대하여 설명한다.
호스트 컴퓨터는 PCI 익스프레스(PCI e) 방식으로 주변 장치와 연결할 수 있다. SATA 타입의 저장소는 SATA 프로토콜을 이용하여 주변 장치와 연결할 수 있다. 따라서, 호스트 컴퓨터와 SATA 타입의 저장소를 연결하기 위해서는 PCI e 및 SATA와의 공통적인 프로토콜을 모두 수용할 수 있는 내부 병렬 버스 프로토콜을 정의해야 한다.
이 때, PCI e 연결과 내부 버스 프로토콜 간의 상호 변환을 위한 블록과, SATA 연결과 내부 버스 프로토콜 간의 상호 변환을 위한 블록을 이용하여 호스트 컴퓨터와 SATA 타입의 저장소를 연결할 수 있다.
이 때, PCI e 연결은 전기적 신호이므로 도달 거리가 짧다는 단점이 있어, 대형 서버를 이용하는 데이터 센터에서는 이러한 방식을 이용할 수 없다는 단점이 있다. 따라서, 단점을 해결하기 위해서 광 확장을 적용하여 SATA와 호스트 컴퓨터가 연결하도록 하는데, 도 2에서 서술한다.
도 2는 PCI e 링크에 광 확장을 적용하여 SATA와 호스트 컴퓨터가 연결되는 방식을 나타낸 도면이다.
도 2를 참조하여, 광 확장을 적용하여 호스트 컴퓨터와 SATA 타입의 저장소가 연결되는 방식에 대하여 서술한다.
호스트 컴퓨터에서 전송하는 PCI-e 신호를 PCI-e to Optical Interface Add-in card를 이용하여 광신호로 변환하고, 광신호를 Optical to PCIe Interface Board 를 이용하여 다시 PCI-e 신호로 변환한 후, 도 1에 도시된 방법을 이용하여 SATA 저장소와 데이터 교환을 수행하게 된다.
이 때, 광신호의 경우 큰 손실 없이 원거리를 이동할 수 있어서, 대형 서버를 이용하는 데이터 센터에서 호스트 컴퓨터와 저장소를 연결하는데 자주 이용되고 있다.
이 때, PCI-e to Optical Interface Add-in card 및 Optical to PCI-e Interface board는 PCI-e 링크에서 필요한 프로토콜을 모두 수용하여야 한다. 따라서, 복잡한 PCI-e 신호를 수용하는데 필요한 프로토콜을 수용해야 하므로, 복잡도가 증가하고, 비용 역시 증가하게 된다.
이 때, PCI-e to Optical Interface Add-in card 및 Optical to PCI-e Interface board는 PCI-e 신호를 수용하기 위해 고가의 PCI-e 스위치 칩을 이용할 수 있으며, 이 경우, 데이터가 여러 단계의 복사 단계를 거치게 되므로, 데이터 송 수신의 레이턴시(latency)가 발생할 수 있다. 또한, PCI-e 신호는 2.5/5/8 Gbps의 전송 대역폭을 가지지만 일반 적인 광 인터페이스는 10Gbps의 전송 대역폭을 가지므로, 광 인터페이스에서 사용할 수 있는 대역폭을 모두 사용하지 못하고, 낭비하는 단점을 갖게 된다. 따라서, 본 발명에서는 PCI-e 신호를 내부 버스에 정의된 프로토콜을 이용하여 제 1 신호로 변환하고, 제 1 신호를 광 신호로 변환하여 전송하고, 수신받은 광 신호를 제 2 내부 버스에 정의된 프로토콜을 이용하여 제 2 신호로 변환하고, 제 2 신호를 다시 SATA 신호로 변환하는 방법을 이용하여, 복잡한 PCI-e 신호를 한 번만 변환하여 호스트 컴퓨터와 SATA 타입의 저장소를 연결하고자 한다. 이에 대한 설명은 도 3에서 서술한다.
도 3은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터를 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터는 제 1 변환부(310), 광신호 변환부(320), 제 2 변환부(330)로 구성되어 있으며, 연결 제어부(340)를 포함할 수도 있다.
제 1 변환부(310)는 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환한다.
이 때, 제 1 변환부(310)는 PCI-e 코어를 이용하여 PCI-익스프레스 신호를 데이터 신호로 변환할 수 있다.
이 때, PCI-e 코어는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)에서 제공하는 코어일 수 있다.
이 때, 데이터 신호는 버스 내부에서 전송되는 신호일 수 있다. 버스는 여러 개의 장치나 레지스터 사이에서 데이터를 전송하는 통로를 의미한다.
이 때, 제 1 변환부(310)는 PCI-E to Optical Interface Add-in Card 내부에 삽입 될 수 있다.
이 때, 내부 버스에 정의된 프로토콜은 PCI-e 신호 및 SATA 신호를 모두 수용할 수 있는 프로토콜이다. 본 발명에서 이용하는 프로토콜에 대해서는 도 7 내지 도 13에서 서술한다.
광 신호 변환부(320)는 데이터 신호를 광 신호로 변환하고, 상기 광 신호를 광 신호 수신부로 전송한다.
이 때, 데이터 신호를 광 신호로 변환하는 방법에 대해서는 제한이 없다. 예를 들어, 기존에 사용되고 있는 Fibre Channel을 이용하여 변환할 수도 있다.
이 때, 광 신호 변환부(320)는 광 신호에 기반하여 제 1 변환부(310) 및 제 2 변환부(330)의 연결을 제어하는 연결 제어부를 포함할 수 있다.
이 때, 연결 제어부는 제어 신호, 데이터 쓰기 신호 및 데이터 읽기 신호 중 어느 하나 이상을 포함하는 광 신호에 기반하여 제 1 변환부(310) 및 제 2 변환부(330)의 데이터 교환을 제어할 수 있다.
이 때, 제어 신호는 링크 넘버, 레인 넘버, 링크 연결 여부, 레인 연결 여부, 제 1 변환부(310)의 버퍼의 잔존량 및 제 2 변환부(330)의 버퍼의 잔존량을 포함할 수 있다. 제어 신호에 대한 설명은 도 7 내지 도 13에서 서술한다.
이 때, 연결 제어부는 제어 신호를 반복적으로 제 1 변환부(310) 및 제 2 변환부(330)에 전송할 수 있고, 버퍼의 잔존량을 반복적으로 체크하여 호스트 컴퓨터와 SATA 타입 저장소의 연결을 제어할 수 있다.
이 때, 버퍼의 잔존량을 체크하는 이유는 버퍼의 잔존량이 송신하고자 하는 데이터의 크기보다 클 때에만 데이터를 전송하기 위함이다.
제 2 변환부(330)는 광 신호 수신부에서 수신한 광 신호를 데이터 신호로 변환하고, 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 SATA 신호를 전송한다.
이 때, 내부 버스에 정의된 프로토콜은 PCI-e 신호 및 SATA 신호를 모두 수용할 수 있는 프로토콜이다. 본 발명에서 이용하는 프로토콜에 대해서는 도 7 내지 도 13에서 서술한다.
이 때, 데이터 신호를 광 신호로 변환하는 방법에 대해서는 제한이 없다. 예를 들어, 기존에 사용되고 있는 Fibre Channel을 이용하여 변환할 수도 있다.
도 3에서 지금까지 서술한 것은, 호스트 컴퓨터에서 SATA 타입 저장소에 데이터를 전송할 때를 가정해서 서술한 것이고, 반대로 SATA 타입 저장소에서 호스트 컴퓨터에 데이터를 전송할 때에도 똑같이 동작한다.
예를 들면, SATA 타입 저장소에서 전송하는 SATA 신호를 프로토콜을 이용하여 데이터 신호로 변환하고, 데이터 신호는 광 신호로 변환하여 광 신호 수신부로 전송하고, 광 신호 수신부에서 수신한 광 신호를 다시 데이터 신호로 변환하고, 데이터 신호를 프로토콜을 이용하여 PCI-e 신호로 변환하여 호스트 컴퓨터에 전송할 수도 있다.
도 4는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터를 이용하여 SATA 저장소와 호스터 컴퓨터를 연결한 것을 도시한 도면이다.
도 4를 참조하면, SATA 호스트 버스 어댑터(400), 호스트 컴퓨터(410), 버스 연결부(420), SATA 연결부(460) 및 SATA 저장소(470)로 구성되어 있으며, SATA 호스트 버스 어댑터(400)는 제 1 변환부(430), 광 신호 생성부(440) 및 제 2 변환부(450)로 구성되어 있다.
호스트 컴퓨터(400)는 정보 처리 시스템에서 자료 처리를 수행하는 컴퓨터를 의미한다. 도 4에서는 호스트 컴퓨터(400)가 1 개의 SATA 저장소(470)와 연결되었으나, 이는 설명의 편의를 위해서 1 개의 SATA 저장소(470)을 도시하였을 뿐, 다수 개의 SATA 저장소와의 연결이 가능하다.
버스 연결부(420)는 호스트 컴퓨터(400)에서 PCI-e 프로토콜로 이루어진 PCI-e 신호를 수신하고, 제 1 변환부(430)에 PCI-e 프로토콜로 이루어진 PCI-e 신호를 전송한다.
이 때, 제 1 변환부(430)는 PCI-e 신호를 내부 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하고, 데이터 신호를 광 신호 변환부(440)에 전송한다.
이 때, 광 신호 변환부(440)는 수신한 데이터 신호를 광 신호로 변환하고, 제 2 변환부(450)에 전송할 수 있다.
이 때, 광 신호 변환부(440)에서 변환한 광 신호는 제어 신호, 데이터 쓰기 신호 및 데이터 읽기 신호 중 어느 하나 이상의 신호를 포함하고, 광 신호에 포함된 제어 신호에 기반하여 제 1 변환부(430) 및 제 2 변환부(450)의 데이터 교환을 제어할 수 있다.
이 때, 제 2 변환부(450)는 수신한 광 신호를 데이터 신호로 변환하고, 광 신호 변환부(440)에서 이용하는 프로토콜과 동일한 프로토콜을 이용하여 SATA 신호를 생성하고, SATA 연결부(460)에 전송한다.
이 때, SATA 연결부(460)는 수신한 SATA 신호를 SATA 저장소(470)에 전송할 수 있다.
도 4에서 서술한 바에 의하면, 본 발명의 일 실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터는 PCI-e 신호를 프로토콜을 이용하여 광 신호로 변환하고, 변환한 광신호를 SATA 신호로 변환하는 과정으로 호스트 컴퓨터와 SATA 저장소를 연결하게 된다. 도 2에서 서술한, 종래에 광 신호를 이용한 SATA 호스트 버스 어댑터는 PCI-e 신호를 광 신호로 변환하고 저장소에 전송한 후, 이를 다시 PCI-e 신호로 변환하고, PCI-e 신호를 SATA 신호로 변환하는 과정을 거치게 된다. 즉, 본 발명은 SATA 신호 및 PCI-e 신호를 모두 수용할 수 있는 프로토콜을 이용하기 때문에 복잡한 PCI-e 신호를 여러 번 변환하지 않고도 호스트 컴퓨터와 SATA 저장소를 연결할 수가 있게 된다.
도 5는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 PCI-e 신호를 광 신호로 변환하는 것을 도시한 도면이다. 즉, 제 1 변환부(310)와 광 신호 변환부(320)의 다른 실시예를 도시한 도면이다.
이 때, PCI-e 신호를 변환한 제 1 신호를 수신 받고, Master Internal Bus from/to Buffer Process Block, Master Write/Read Head Buffer, Master Write Data Buffer, Master Update Flow Control Packet Buffer에서 제 1 신호를 프로토콜을 이용하여 광 신호로 변환하고, 마스터 패킷 전송부(Master Packet Transmitter) 및 마스터 광 인터페이스(Master Optical Interface)를 이용하여 제 2 변환부(330)로 전송하게 된다.
이 때, 제 2 변환부(330)에서 광 신호를 전송 받는 경우, 마스터 광 인터페이스(Master Optical Interface)를 이용하여 광 신호를 수신하고, 프로토콜을 이용하여 광 신호에 상응하는 신호로 변환한 후, Master Read Response Buffer 및 Master Internal Buf from/to Buffer Process Block 을 이용하여 PCI-e 신호로 변환하고 호스트 컴퓨터로 전송하게 된다.
도 6은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 광 신호를 SATA 신호로 변환하는 것을 도시한 도면이다. 즉, 제 2 변환부(330)와 광 신호 변환부(320)의 다른 실시예를 도시한 도면이다.
도 6을 참조하여 설명하면, 광 신호 변환부(320)에서 전송한 광 신호를 Slave Optical Interface에서 수신 하고, Slave Packet Receiver에 전달하게 된다.
이 때, Slave Packet Receiver는 광 신호를 프로토콜을 이용하여 광 신호에 상응하는 신호로 변환한 후, Slave Write/Read Header Buffer, Slave Write Data Buffer 및 Slave Buffer from/to Internal Bus Process Block를 이용하여 광 신호에 상응하는 SATA 신호로 변환하고, SATA 신호를 SATA 저장소에 전송하게 된다.
SATA 저장소에서 SATA 신호를 전송하는 경우, Slave Buffer from/to Internal Bus Process Block, Slave Update Flow Control Packet Buffer, Slave Read Response Buffer 를 이용하여 SATA 신호를 프로토콜에 상응하는 신호로 변환하고, 프로토콜에 상응하는 신호를 Slave Packet Transmitter를 이용하여 Slave Optical Interface에 전달하고 광 신호로 변환하여 제 1 변환부(310)에 전송하게 된다.
도 7 내지 도 13은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터에서 이용하는 프로토콜을 도시한 도면이다.
광 신호를 이용한 SATA 호스트 버스 어댑터에서 이용하는 프로토콜은 크게 광 연결의 초기 성립 과정에 이용되는 패킷 구조(도 7), 버퍼의 잔여량을 포함하는 흐름 제어 초기화 패킷 구조(도 8), SATA 저장소에 데이터를 쓰기 위한 데이터 쓰기 패킷 구조(도 9), 데이터 쓰기 패킷의 수신 여부를 알려주기 위한 응답 제어 패킷 구조(도 10), 버퍼의 잔여량의 변화를 포함하는 흐름 제어 업데이트 패킷(도 11), SATA 저장소에 저장된 데이터를 읽기 위한 데이터 읽기 패킷 구조(도 12), 데이터 읽기 패킷의 수신 여부를 알려주기 위한 데이터 읽기 응답 패킷 구조(도 13)를 정의한다.
도 7은 제 1 변환부(310)와 제 2 변환부(330)를 연결하는 광 연결(Optical Link)의 초기 성립 과정에 이용되는 패킷 구조를 도시한 것이다.
도 7을 참조하면, 광 연결의 초기 성립 과정에 이용되는 패킷은 TS(Training Sequence)1, TS2 로 구성되어 있고, TS1은 초기 링크 성립을 위한 과정에 사용되는 패킷을 의미하며, TS2는 링크 성립 확인을 위한 과정에 사용되는 패킷을 의미한다.
이 때, 광 연결의 초기 성립 과정에 사용되는 고속 링크는 10GBase-R 기준으로 광 연결을 구성하며, 64 비트 단위로 전송이 이루어 지며, 각 바이트는 패킷 프레이밍을 위한 컨트롤 심볼과 데이터 심볼로 정의된다.
이 때, 광 연결의 초기 성립 과정에 이용되는 패킷은 0x9C의 컨트롤 심볼로 시작하여 세 개의 바이트가 따라오며, 0x07의 컨트롤 심볼이 4개 연속으로 나오는 형태로 구성되어 있다. 이러한 형태는 10GBase-R에서 64 비트 단위로 전송하는 규약에 적합한 형태이다. 또한, 이러한 형태는 10GBase-R의 규약을 따르기 위한 구조이며, 10GBase-R이 아닌 다른 규격의 고속 직렬 통신 규약을 이용한다면, 그 규약에 적합하게 패킷 형태를 변경할 수도 있다. 본 발명에서는 고속 직렬 통신 규약에 대한 제한이 없으므로, 도 7에서 제시하는 패킷 형태는 일실시예 일 뿐, 이에 구속되지는 않는다.
도 7에서 비트는 8비트 심볼 단위로 구성되어 있으며, 송신하는 순서대로 7-0, 15-8, 23-16, 31-24, 39-32, 47-40, 55-48, 63-56의 비트 순서대로 패킷 구조를 표시하였으며, 도 8 내지 도 13에서도 공통적으로 적용된다.
이 때, 비트 넘버 위의 숫자 표시는 컨트롤 심볼 또는 데이터 심볼을 의미하는 식별자로, 실제 바이트 단위로 데이터를 구성할 때 9비트로 구성되어 최상위 비트가 0인 경우 데이터 심볼을 의미하며, 최상위 비트가 1인 경우 컨트롤 심볼을 의미하게 된다.
이 때, 비트 7-0은 컨트롤 심볼로 정의되며, 컨트롤 신호는 1이 되고 데이터 신호는 0x9C가 된다.
이 때, 비트 15-8는 데이터 심볼로 여기서 비트 15-12는 TS 패킷인지 다른 종류 패킷인지를 나타내는 식별자를 의미한다.
이 때, 비트 15-12가 0000인 경우, TS 패킷을 의미할 수 있다.
이 때, 비트 15-8 내부의 11-9 비트의 값이 001로 정의되면, 본 패킷은 TS 1을 의미한다. 다만, 15-12가 0000으로 정의되어 있어야 한다.
이 때, 비트 11-9가 010일 때, TS2를 의미한다.
이 때, 비트 8은 9비트로 구성된 링크 넘버의 최상위 비트로 이 값이 1일 때에는 링크 탐색 단계이어서 링크 넘버의 나머지 8비트가 유효하지 않음을 나타내고 이 값이 0일 때에는 링크 설정 단계이어서 링크 넘버의 나머지 8비트가 유효함을 나타낸다.
이 때, 비트 23-16은 데이터 심볼로 링크 넘버를 나타내는데, 본 발명에서는 링크가 1개인 구성을 나타내었으나 여러 개의 광 링크를 접속하는 경우에는 링크마다 식별이 필요하며 8비트이므로 최대 256개까지 링크 구성이 가능하다.
이 때, 비트 31-24는 데이터 심볼로, 이 중에서 비트 31-30은 사용하지 않아서 0으로 고정되어 있으며, 비트 29-24는 레인 넘버로 본 발명에서는 링크 내의 다중 레인을 사용하지 않아서 레인이 1개뿐이지만 향후의 다중 레인 구성을 위하여 6비트를 할당하게 된다.
이 때, 비트 31-24에서의 최상위 비트인 비트 24는 최상위 비트는 1일 경우에는 레인 탐색 단계이어서 레인 넘버의 나머지 5비트가 유효하지 않음을 나타내고 0일 경우에는 레인 설정 단계이어서 레인 넘버의 나머지 5비트가 유효함을 나타낸다. 5비트가 있으므로 최대 32개까지 다중 레인 구성이 가능하다.
이 때, 비트 39-32, 47-40, 55-48, 63-56은 컨트롤 심볼로 컨트롤 신호가 1이고 데이터 심볼은 0x07이어서 IDLE 심볼을 나타내게 된다.
도 7에 도시된 TS1 패킷과 TS2 패킷을 이용하여 광 연결을 설정하는 방법에 대하여 서술한다.
먼저, 초기 상태에서 Internal Bus from/to Optical Protocol Engine에 있는 Master Packet Transmitter 는 링크 넘버[8]와 레인 넘버[5]가 1로 셋팅된 형태의 TS1을 반복적으로 송신한다.
다음으로, Slave Packet Receiver는 링크 넘버[8]과 레인 넘버[5]가 1로 셋팅된 TS1을 수신함으로써 Master Packet Transmitter가 동작을 시작하고 있음을 감지하게 된다.
다음으로, Slave Packet Receiver는 Slave Packet Transmitter에게 TS Information 신호를 사용하여 Slave Packet Receiver가 Master Packet Transmitter의 동작을 감지하였음을 알려줄 수 있다.
다음으로, Master Packet Transmitter가 동작 시작하였음을 알게 된 Slave Packet Transmitter는 링크 넘버[8]과 레인 넘버[5]가 1로 셋팅된 TS2를 반복 송신하여서, 이를 수신한 Master Packet Receiver는 Slave Packet Transmitter가 Master Packet Transmitter의 동작을 감지하였음을 알려줄 수 있다.
이 때, 링크 넘버[8]과 레인 넘버[5]가 모두 1인 TS2를 수신한 Master Packet Receiver는 Master Packet Transmitter에게 TS2를 수신하였음을 알려줄 수 있다.
이 때, TS2를 수신하였음을 알게 된 Master Packet Transmitter는 링크 넘버[8]을 0으로 바꾸고 링크 넘버[7:0]을 설정한 TS1을 반복 송신할 수 있다.
이 때, 링크 넘버[8]이 0이고 링크 넘버[7:0]이 설정된 TS1을 수신한 Slave Packet Receiver는 이를 수신하였음을 Slave Packet Transmitter에게 알려줄 수 있다.
이 때, Slave Packet Receiver가 링크 넘버[8]이 0이고 링크 넘버[7:0]이 설정된 TS1을 수신하였다는 것을 알게 된 Slave Packet Transmitter는 링크 넘버[8]을 0으로 바꾸고 수신한 링크 넘버[7:0]으로 자신의 링크 넘버[7:0] 값을 바꾼 TS1을 송신할 수 있다.
이 때, 링크 넘버[8]이 0이고 레인 넘버[7:0]이 자신이 송신한 TS1과 일치하는 TS1을 수신한 Master Packet Receiver는 Master Packet Transmitter에게 이 사실을 알려줄 수 있다.
이 때, 링크 넘버[7:0]으로 자신의 링크 넘버[7:0] 값을 바꾼 TS1을 수신하였다는 것을 알게 된 Master Packet Transmitter는 레인 넘버[5]가 0이고 레인 넘버[4:0]을 설정한 TS1을 송신할 수 있다.
이 때, 링크 넘버[8]이 0이고 링크 넘버[7:0]이 자신이 송신한 것과 일치하며, 레인 넘버[5]가 0이고 레인 넘버[4:0]이 설정된 TS1을 수신한 Slave Packet Receiver는 이를 수신하였음을 Slave Packet Transmitter에게 알려줄 수 있다.
이 때, Slave Packet Receiver가 링크 넘버[8]이 0이고 링크 넘버[7:0]이 자신이 송신한 것과 일치하며, 레인 넘버[5]가 0이고 레인 넘버[4:0]이 설정된 TS1을 수신하였다는 것을 알게 된 Slave Packet Transmitter는 레인 넘버[5]를 0으로 바꾸고 수신한 레인 넘버[4:0]으로 자신의 링크 넘버[4:0] 값을 바꾼 TS1을 송신하게 된다.
이 때, 링크 넘버[8]이 0이고 레인 넘버[7:0]이 자신이 송신한 TS1과 일치하며, 레인 넘버[5]가 0이고 레인 넘버[4:0]이 자신이 송신한 TS1과 일치하는 TS1을 수신한 Master Packet Receiver는 Master Packet Transmitter에게 이 사실을 알려줄 수 있다.
이 때, 링크 넘버[8]이 0이고 레인 넘버[7:0]이 자신이 송신한 TS1과 일치하며, 레인 넘버[5]가 0이고 레인 넘버[4:0]이 자신이 송신한 TS1과 일치하는 TS1을 수신하였다는 것을 알게 된 Master Packet Transmitter는 여태 TS1에서 송신한 것과 동일한 링크 넘버[8:0]과 레인 넘버[5:0]를 가지는 TS2를 송신할 수 있다.
이 때, TS2를 수신한 Master Packet Receiver와 Slave Packet Receiver는 이를 각각 Master Packet Transmitter와 Slave Packet Transmitter에게 알릴 수 있다.
이 때, TS2를 일정 개수 이상(예를 들어 8개) 수신하였다는 것을 알게 된 Master Packet Transmitter와 Slave Packet Transmitter는 TS2를 일정 개수 이상(예를 들어 16개) 송신한 후에 TS2 송신 동작을 멈추게 되며, 이로써 링크 넘버와 레인 넘버를 설정하는 물리 링크 설정 과정이 완료된다.
도 8은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서
이용하는 프로토콜을 구성하는 흐름 제어 초기화 패킷 구조를 도시한 도면이다.
먼저, 흐름 제어 초기화 패킷은 수신 측의 버퍼의 잔여량이 패킷을 수신하기에 충분할 때만, 송신 측에서 데이터를 송신할 수 있도록, 버퍼의 잔여량을 송신하기 위해 이용되는 패킷을 의미할 수 있다. 예를 들어, 제 2 변환부(330)에서 흐름 제어 초기화 패킷을 이용하여 제 2 변환부 내부의 버퍼의 잔여량을 송신하여, 흐름 제어 초기화 패킷을 수신한 제 1 변환부(310)에서 송신할 데이터의 크기 및 제 2 변환부 내부의 버퍼의 잔여량을 비교하여 데이터를 송신할 것인지를 판단할 수 있게 할 수 있다.
도 8을 참조하여 흐름 제어 초기화 패킷 구조에 대하여 서술한다.
흐름 제어 초기화 패킷에서 비트 7-0은 컨트롤 심볼로 컨트롤 신호가 1이며 데이터 비트는 0x9C로 되어 있다.
이 때, 비트 15-8은 데이터 심볼을 의미한다. 또한, 비트 15-8에 포함된 비트 15-12는 1111로 이것이 데이터 안전 송수신을 위한 패킷임을 의미할 수 있다.
이 때, 비트 11-8은 0100일 때에는 흐름 제어 초기화 패킷1(InitFC1)임을 나타낼 수 있다.
이 때, 비트 11-8이 1100일 때에는 흐름 제어 초기화 패킷2(InitFC2)임을 나타낸다.
이 때, 비트 23-16은 데이터 심볼로 비트 23-20은 0000으로 고정되어 있고, 비트 19-16은 흐름 제어 패킷일 경우에는 데이터 버퍼의 양을 나타내는 DataFC[11:0] 중에서 상위 4비트를 나타낸다.
이 때, 비트 31-24는 데이터 심볼로 흐름 제어 패킷일 경우에는 데이터 버퍼의 양을 나타내는 DataFC[11:0] 중에서 하위 8비트를 나타낸다.
이 때, 비트 39-32는 컨트롤 심볼로 컨트롤 신호가 1이며, 데이터 비트는 0x9C로 되어 있다.
이 때, 비트 47-40은 데이터 심볼로 헤더의 버퍼량을 나타낸다.
이 때, 비트 55-48 및 63-56은 데이터 심볼로 흐름 제어 패킷의 데이터 심볼 총 48비트에 대한 CRC를 나타내어 패킷의 무결성을 판단하는데 이용될 수 있다.
이 때, 흐름 제어 초기화 패킷은 반복적으로 송신되므로 패킷에 오류가 발생하더라도 동일한 패킷이 뒤이어 수신되므로 패킷마다 도착을 따로 알릴 필요는 없다.
도 8에서 서술한 흐름 제어 초기화 패킷을 이용하여 버퍼의 잔여량에 기반한 패킷 흐름을 제어하는 방법에 대하여 서술한다.
먼저, Master Packet Transmitter와 Slave Packet Transmitter는 자신이 가진 데이터 버퍼량과 헤더 버퍼량이 반영되어 있는 InitFC1 패킷을 송신한다.
또한, InitFC1 패킷을 수신한 Master Packet Transmitter와 Slave Packet Transmitter는 상대방의 버퍼량을 각각 기록한 후에 송신기에서 InitFC2 패킷을 송신하여 InitFC1 패킷을 수신하였음을 상대방에게 알린다.
또한, InitFC2 패킷을 수신한 Master Packet Receiver와 Slave Packet Receiver는 각각 Master Packet Transmitter와 Slave Packet Transmitter에게 상대방이 자신이 송신한 InitFC1 패킷을 수신하였다는 것을 알게 되었으므로 흐름 제어 초기화가 완료되었다는 사실을 알려서 데이터 패킷을 전송할 수 있는 상태로 만든다.
도 9는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서 이용하는 프로토콜을 구성하는 데이터 쓰기 패킷 구조를 도시한 도면이다.
먼저, 데이터 쓰기는 호스트 버스에서 데이터 처리를 한 후, SATA 저장소에 데이터를 저장하는 것을 의미한다.
이 때, 데이터 쓰기 동작을 위해서 제 1 변환부(310)에서는 어드레스, 쓰기 스트로브, 바이트 이네이블, 쓰기 데이터 신호를 송출할 수 있다.
이 때, 데이터 쓰기 패킷은 어드레스, 쓰기 식별자 및 바이트 이네이블 정보를 갖는 128비트의 헤더와 256비트의 데이터로 구성될 수 있다.
이 때, 광 신호 변환부(320)는 데이터 쓰기 패킷을 광 신호로 변환하여 출력할 수 있다.
데이터 쓰기 패킷은 64비트 단위로 패킷의 순서를 구분하였다.
이 때, 비트 7-0은 컨트롤 심볼로 데이터 읽기/쓰기 패킷의 시작을 알리는 0xFB로 되어 있다.
이 때, 비트 15-8은 데이터 심볼로 상위 15-12비트는 사용하지 않고 0으로 고정되어 있으며 하위 11-8비트는 데이터 읽기/쓰기 패킷의 시퀀스를 나타내는 Seq[11:0]에서 상위 4비트를 담당하게 된다.
이 때, 비트 23-16은 데이터 심볼로 데이터 읽기/쓰기 패킷의 시퀀스를 나타내는 Seq[11:0]에서 하위 8비트를 담당하게 된다.
이 때, 비트 31-24은 데이터 심볼로 이 중 비트 31-26은 더블워드(32비트 워드) 단위 어드레스인 Address[7:2]를 나타낸다. 비트 25는 0으로 고정되어 사용되지 않으며, 비트 24는 1로 이것이 데이터 쓰기 패킷임을 나타낸다. 비트 39-32는 데이터 심볼로 Address[15:8]을 나타낸다.
이 때, 비트 47-40은 데이터 심볼로 Address[23:16]을 나타낸다.
이 때, 비트 55-48은 데이터 심볼로 이 중 비트 55-54는 0으로 고정되어 사용하지 않으며, 비트 53-48은 Address[29:24]를 나타낸다.
이 때, 비트 63-56은 데이터 심볼이며, 사용하지 않으므로 0으로 고정되어 있다.
그 다음 64비트 단위에는 3개의 사용하지 않는 데이터 심볼이 존재하는 공간이 된다.
이 때, 32바이트의 바이트 이네이블 정보를 담고 있는 32비트의 정보가 뒤따른다. 그 이후에는 데이터 페이로드로 32바이트(256비트)가 바이트 단위로 연속하게 되며, 그 이후에는 데이터의 CRC를 나타내는 32비트의 LCRC가 뒤따르며, 마지막으로 컨트롤 심볼로 0xFD로 패킷의 끝을 나타내게 된다.
이 때, 어드레스[29:2]가 유효하며 이는 더블워드 단위이므로 총 1GB의 어드레스 공간을 지정할 수 있으며, 어드레스 확장이 필요할 때에는 사용하지 않는 데이터 심볼 중에서 비트를 할당하여 사용할 수 있다.
도 10은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서 이용하는 프로토콜을 구성하는 응답 제어 패킷을 도시한 도면이다.
응답 제어 패킷은 데이터 쓰기 패킷을 수신한 이후, 데이터 쓰기 패킷을 수신하였음을 알릴 때 이용하는 패킷을 의미한다. 예를 들어, 제 2 변환부가 데이터쓰기 패킷을 송신하여 제 1 변환부가 수신한 경우, 제 1 변환부에서 응답 제어 패킷을 송신하게 된다.
응답 제어 패킷의 비트 7-0은 컨트롤 심볼로 컨트롤 신호가 1이며 데이터 비트는 0x9C로 되어 있다.
이 때, 비트 15-8은 데이터 심볼로, 이 중 비트 15-12는 1111로 이것이 데이터 안전 송수신을 위한 패킷임을 나타낼 수 있다. 비트 11-8은 0000일 때에는 시퀀스와 LCRC가 옳은 패킷임을 나타내는 Ack 패킷임을 나타내고 0001일 때에는 시퀀스가 옳지 않거나 LCRC가 옳지 않거나 둘 다 옳지 않은 패킷을 수신하였음을 나타내는 Nak 패킷임을 나타낸다.
이 때, 비트 23-16은 데이터 심볼로 비트 23-20은 0000으로 고정되어 있고, 비트 19-16은 응답 제어 패킷일 경우에는 옳게 수신한 시퀀스를 나타내는 AckNak_Seq_Num[11:0] 중에서 상위 4비트를 나타낸다.
이 때, 비트 31-24는 데이터 심볼로 응답 제어 패킷일 경우에는 옳게 수신한 시퀀스를 나타내는 AckNak_Seq_Num[11:0] 중에서 하위 8비트를 나타낸다. Ack 패킷의 경우에는 현재 수신한 패킷의 시퀀스의 값이 반영되어 있고, Nak 패킷의 경우에는 이전까지 수신한 패킷 중 옳게 수신한 패킷의 시퀀스의 값이 반영되어 있다.
이 때, 비트 39-32는 컨트롤 심볼로 컨트롤 신호가 1이며, 데이터 비트는 0x9C로 되어 있다. 비트 47-40은 데이터 심볼로 헤더의 버퍼량을 나타낸다.
이 때, 비트 55-48 및 63-56은 데이터 심볼로 흐름 제어 패킷의 데이터 심볼 총 48비트에 대한 CRC를 나타내어 패킷의 무결성을 보장하게 된다.
송신기는 패킷에 대한 응답이 Nak일 경우에는 Nak 패킷에서 지정한 AckNak_Seq_Num의 값 이후에 송신한 패킷을 재송신하게 되며, 패킷에 대한 응답이 일정 시간 동안 이루어지지 않을 경우에도 송신한 패킷 중에서 Ack를 수신하지 못한 패킷에서 시작하여, 현재까지 송신한 모든 패킷을 재송신하게 된다.
예를 들어, 제 2 변환부가 데이터쓰기 패킷을 송신하여 제 1 변환부가 수신한 경우, 제 1 변환부에서 응답 제어 패킷을 송신하여 제 2 변환부에 수신된 경우, 제 2 변환부에서 응답 제어 패킷의 응답이 Nak 인 경우에는 AckNak_Seq_Num의 값 이후에 송신한 패킷(데이터 쓰기 패킷)을 재 송신하게 된다.
도 11은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서 이용하는 프로토콜을 구성하는 흐름 제어 업데이트 패킷의 구조를 도시한 도면이다.
먼저, 흐름 제어 업데이트 패킷은 흐름 제어 업데이트 패킷을 송신하는 곳의 내부의 버퍼의 잔여량의 변화를 포함하는 패킷이다.
이 때, 광 신호 변환부(320)는 버퍼의 데이터를 읽고, 버퍼의 잔여량의 변화를 흐름 제어 업데이트 패킷을 이용하여 제 1 변환부(310) 또는 제 2 변환부에 전송하게 된다.
흐름 제어 업데이트 패킷에서 비트 7-0은 컨트롤 심볼로 컨트롤 신호가 1이며 데이터 비트는 0x9C로 되어 있다.
이 때, 비트 15-8은 데이터 심볼을 의미한다. 또한, 비트 15-8에 포함된 비트 15-12는 1111로 이것이 데이터 안전 송수신을 위한 패킷(흐름 제어 초기화 패킷 또는 흐름 제어 업데이트 패킷)임을 의미할 수 있다.
이 때, 비트 11-8은 1000일 때는 흐름 제어 업데이트 패킷임을 의미한다.
이 때, 비트 23-16은 데이터 심볼로 비트 23-20은 0000으로 고정되어 있고, 비트 19-16은 흐름 제어 패킷일 경우에는 데이터 버퍼의 양을 나타내는 DataFC[11:0] 중에서 상위 4비트를 나타낸다.
이 때, 비트 31-24는 데이터 심볼로 흐름 제어 패킷일 경우에는 데이터 버퍼의 양을 나타내는 DataFC[11:0] 중에서 하위 8비트를 나타낸다.
이 때, 비트 39-32는 컨트롤 심볼로 컨트롤 신호가 1이며, 데이터 비트는 0x9C로 되어 있다.
이 때, 비트 47-40은 데이터 심볼로 헤더의 버퍼량을 나타낸다.
이 때, 비트 55-48 및 63-56은 데이터 심볼로 흐름 제어 패킷의 데이터 심볼 총 48비트에 대한 CRC를 나타내어 패킷의 무결성을 판단하는데 이용될 수 있다.
도 12는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서 이용하는 프로토콜을 구성하는 데이터 읽기 패킷 구조를 도시한 도면이다.
데이터 읽기 패킷 구조는 호스트 컴퓨터가 SATA 저장소에 저장된 데이터를 읽기 위해서 전송하는 패킷 구조를 의미할 수 있다.
이 때, 데이터 읽기 패킷 구조는 데이터 페이로드가 없다는 점과 비트 24가 0이라는 점을 제외하고는 데이터 쓰기 패킷과 형태가 동일하다.
데이터 읽기 패킷을 이용한 SATA 저장소에 저장된 데이터를 읽는 과정을 도 4를 참조하여 설명한다.
이 때, 제 2 변환부(450)가 데이터 읽기 패킷을 송신한 경우, 헤더를 송신하고, Ack를 수신하게 되고, 그 다음 패킷에 접근할 수 있게 되는데, 데이터 읽기 패킷의 경우, 다음 패킷을 송신하기 이전에 데이터 읽기 응답 패킷을 수신할 때까지 기다리도록 지정할 수도 있다.
이 때, 제 2 변환부(450)가 데이터 읽기 패킷을 송신하고, 내부의 버퍼에 데이터 읽기 패킷을 저장할 수 있다.
이 때, 제 2 변환부(450)는 내부의 버퍼에 저장된 데이터를 버스 신호로 변환 할 수 있다.
이 때, 내부 버스 신호를 수신한 SATA 연결부(460)는 SATA 연결을 통해 SATA 저장소(470)에 읽기 신호를 전송할 수 있다.
이 때, SATA 저장소(470)는 데이터 읽기 신호에 상응하는 데이터를 SATA 연결부(460)에 전달하고, SATA 연결부(460)에서 데이터 읽기 신호에 상응하는 데이터를 변환하여 제 2 변환부(450)에 전달하고, 제 2 변환부(450) 내부의 버퍼에 저장되게 된다.
이 때, 제 2 변환부(450) 내부의 버퍼에 저장된 데이터는 광신호 변환부(440)에서 광 신호로 변환되고, 제 1 변환부(430) 및 버스 연결부(420)를 통하여 호스트 컴퓨터(410)로 전송하게 된다.
이 때, 제 2 변환부(450)에서 광 신호 변환부(440)로 데이터 읽기 응답 패킷을 이용하여 전송할 수 있는데, 데이터 읽기 응답 패킷은 도 13에서 서술한다.
도 13은 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 버스 어댑터에서 이용하는 프로토콜을 구성하는 데이터 읽기 응답 패킷 구조를 도시한 도면이다.
데이터 읽기 응답 패킷은 데이터 쓰기 패킷에서 어드레스 및 바이트 이네이블에 상응하는 데이터가 빠진 형태가 된다.
이 때, 데이터 읽기 응답 패킷은 64비트 단위로 패킷의 순서를 구분하였으며, 비트 7-0은 컨트롤 심볼로 데이터 읽기/쓰기 패킷의 시작을 알리는 0xFB로 되어 있다.
이 때, 비트 15-8은 데이터 심볼로 상위 15-12비트는 사용하지 않고 0으로 고정되어 있으며 하위 11-8비트는 데이터 읽기 응답 패킷의 시퀀스를 나타내는 Seq[11:0]에서 상위 4비트를 담당한다.
이 때, 비트 23-16은 데이터 심볼로 데이터 읽기 응답 패킷의 시퀀스를 나타내는 Seq[11:0]에서 하위 8비트를 담당한다. 그 이후에는 데이터 페이로드로 32바이트(256비트)가 바이트 단위로 연속하게 되며, 그 이후에는 데이터의 CRC를 나타내는 32비트의 LCRC가 뒤따르며, 마지막으로 컨트롤 심볼로 0xFD로 패킷의 끝을 나타내게 된다.
도 4를 참조하여, 데이터 읽기 응답 패킷을 이용하여 데이터를 읽는 과정을 설명하면, 제 2 변환부(450)이 송신한 데이터 읽기 응답 패킷을 광신호 변환부(440)를 이용하여 제 1 변환부(430)에 도달하게 된다.
이 때, 제 1 변환부(430) 내부의 버퍼에 데이터 읽기 응답 패킷이 저장된다.
이 때, 제 1 변환부(430) 내부의 버퍼에 저장된 데이터 읽기 응답 패킷이 변환되어 버스 연결부(420)를 통하여 호스트 컴퓨터(410)에 전송된다.
이 때, 호스트 컴퓨터(410)는 SATA 저장소에 저장된 데이터를 읽을 수 있다.
도 14는 본 발명의 일실시예에 따른 광 신호를 이용한 SATA 저장소 연결 방법을 나타낸 동작 흐름도이다.
먼저, 제 1 변환부가 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환한다(S1410).
또한, 광신호 변환부가 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송한다(S1420).
또한, 제 2 변환부가 상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송한다(S1430).
이상에서와 같이 본 발명에 따른 광 신호를 이용한 SATA 호스트 버스 어댑터 및 광 신호를 이용한 SATA 저장소 연결 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.

Claims (18)

  1. 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 제 1 변환부;
    상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 광 신호 변환부; 및
    상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송하는 제 2 변환부
    를 포함하되,
    상기 광 신호 변환부는
    상기 광 신호에 기반하여 상기 제 1 변환부와 상기 제 2 변환부의 연결을 제어하는 연결 제어부를 포함하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  2. 청구항 1에 있어서,
    상기 프로토콜은
    상기 PCI 익스프레스 신호 및 상기 SATA 신호를 수용할 수 있는 프로토콜임을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  3. 삭제
  4. 청구항 1에 있어서,
    상기 연결 제어부는
    제어 신호, 데이터 쓰기 신호 및 데이터 읽기 신호 중 어느 하나 이상을 포함하는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 데이터 교환을 제어하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  5. 청구항 4에 있어서,
    상기 제어 신호는
    링크 넘버, 레인 넘버, 링크 연결 여부, 레인 연결 여부, 상기 제 1 변환부의 버퍼의 잔존량 및 상기 제 2 변환부의 버퍼의 잔존량을 포함하는 제어 신호임을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  6. 청구항 5에 있어서,
    상기 연결 제어부는
    상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입 저장소의 연결을 제어하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  7. 청구항 6에 있어서,
    상기 광 신호 변환부는
    상기 제 2 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광 신호를 상기 제 2 변환부에 전송하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  8. SATA 타입 저장소에서 전송하는 SATA 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 제 1 변환부;
    상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 광 신호 변환부; 및
    상기 광 신호 수신부에서 수신한 상기 광 신호를 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 PCI 익스프레스 신호로 변환하여 호스트 컴퓨터로 전송하는 제 2 변환부
    를 포함하되,
    상기 광 신호 변환부는
    상기 광 신호에 기반하여 상기 제 1 변환부와 상기 제 2 변환부의 연결을 제어하는 연결 제어부를 포함하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  9. 청구항 8에 있어서,
    상기 광 신호를 이용한 SATA 호스트 버스 어댑터는
    제어 신호, 데이터 쓰기 신호, 데이터 읽기 신호 중 어느 하나 이상을 포함하는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 연결을 제어하는 광 신호 제어부
    를 포함하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  10. 청구항 9에 있어서,
    상기 연결 제어부는
    상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입의 저장소를 제어하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  11. 청구항 10에 있어서,
    상기 광 신호 변환부는
    상기 제어 신호에 포함된 상기 제 1 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광 신호를 상기 제 2 변환부에 전송하는 것을 특징으로 하는 광 신호를 이용한 SATA 호스트 버스 어댑터.
  12. 제 1 변환부가 호스트 컴퓨터에서 전송하는 PCI-익스프레스 신호를 버스에 정의된 프로토콜을 이용하여 데이터 신호로 변환하는 단계;
    광신호 변환부가 상기 데이터 신호를 광 신호로 변환하고, 광 신호 수신부로 전송하는 단계; 및
    제 2 변환부가 상기 광 신호 수신부에서 수신한 상기 광 신호를 상기 데이터 신호로 변환하고, 상기 데이터 신호를 상기 프로토콜을 이용하여 SATA 신호로 변환하여 SATA 타입 저장소에 전송하는 단계
    를 포함하되,
    상기 광 신호를 변환하는 단계는
    상기 광 신호에 기반하여 상기 제 1 변환부와 상기 제 2 변환부의 연결을 제어하는 것을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
  13. 청구항 12에 있어서,
    상기 프로토콜은
    상기 PCI 익스프레스 신호 및 상기 SATA 신호를 수용할 수 있는 프로토콜임을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
  14. 삭제
  15. 청구항 12에 있어서,
    상기 광 신호를 변환하는 단계는
    제어 신호, 데이터 쓰기 신호 및 데이터 읽기 신호 중 어느 하나 이상을 포함하는 상기 광 신호에 기반하여 상기 제 1 변환부 및 상기 제 2 변환부의 데이터 교환을 제어하는 단계
    를 포함하는 것을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
  16. 청구항 15에 있어서,
    상기 제어 신호는
    링크 넘버, 레인 넘버, 링크 연결 여부, 레인 연결 여부 및 상기 제 1 변환부의 버퍼의 잔존량 및 상기 제 2 변환부의 버퍼의 잔존량을 포함하는 제어 신호임을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
  17. 청구항 16에 있어서,
    상기 데이터 교환을 제어하는 단계는
    상기 제어 신호를 반복적으로 전송하여 상기 호스트 컴퓨터와 상기 SATA 타입 저장소의 연결을 제어하는 것을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
  18. 청구항 17에 있어서,
    상기 광 신호를 변환하는 단계는
    상기 제 2 변환부 내부의 버퍼의 잔여량에 기반하여 상기 광 신호를 상기 제 2 변환부에 전송하는 것을 특징으로 하는 광 신호를 이용한 SATA 저장소 연결 방법.
KR1020150084036A 2015-06-15 2015-06-15 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법 KR102345720B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150084036A KR102345720B1 (ko) 2015-06-15 2015-06-15 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법
US15/066,008 US9722702B2 (en) 2015-06-15 2016-03-10 SATA host bus adapter using optical signal and method for connecting SATA storage using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150084036A KR102345720B1 (ko) 2015-06-15 2015-06-15 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법

Publications (2)

Publication Number Publication Date
KR20160147373A KR20160147373A (ko) 2016-12-23
KR102345720B1 true KR102345720B1 (ko) 2022-01-03

Family

ID=57517398

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150084036A KR102345720B1 (ko) 2015-06-15 2015-06-15 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법

Country Status (2)

Country Link
US (1) US9722702B2 (ko)
KR (1) KR102345720B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102457820B1 (ko) * 2016-03-02 2022-10-24 한국전자통신연구원 메모리 인터페이스 장치
CN110278032B (zh) * 2019-06-11 2021-03-09 中国科学技术大学 一种基于光纤的PCIe数据传输装置及方法
CN110297797B (zh) * 2019-07-04 2021-05-04 天津芯海创科技有限公司 异构协议转换装置和方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100256677B1 (ko) 1997-12-24 2000-05-15 이계철 공유 매체 액세스가 가능한 비동기 전달 모드 호스트 어뎁팅 장치
US7437643B2 (en) * 2005-06-21 2008-10-14 Intel Corporation Automated BIST execution scheme for a link
US8098993B2 (en) * 2008-05-08 2012-01-17 Alpenio, Inc. Method and apparatus for transporting computer bus protocols over an optical link
KR100973079B1 (ko) * 2008-08-13 2010-07-29 한국전자통신연구원 고속 PCIe 신호 전송 장치 및 그 제어방법
US8225019B2 (en) * 2008-09-22 2012-07-17 Micron Technology, Inc. SATA mass storage device emulation on a PCIe interface
KR101444846B1 (ko) 2009-09-28 2014-09-26 삼성테크윈 주식회사 저장 영역 네트워크의 감시 시스템
KR101095030B1 (ko) 2009-11-16 2011-12-20 한국과학기술원 광 연결을 이용한 고속 대용량 저장 장치
KR102154642B1 (ko) * 2012-04-05 2020-09-10 한국전자통신연구원 PCIe 스위치 장치 및 그의 접속제어 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
공개특허공보 제10-2010-0020806호(2010.02.23.) 1부*
공개특허공보 제10-2011-0046552호(2011.05.04.) 1부*
공개특허공보 제10-2013-0113269호(2013.10.15.) 1부*

Also Published As

Publication number Publication date
KR20160147373A (ko) 2016-12-23
US20160365924A1 (en) 2016-12-15
US9722702B2 (en) 2017-08-01

Similar Documents

Publication Publication Date Title
US7058748B1 (en) ATA device control via a packet-based interface
JP4928732B2 (ja) データ転送システム及び電子機器
JP4966695B2 (ja) マルチマスタのチェーン接続された二線シリアルバス装置及びディジタル状態機械
JP4704050B2 (ja) データ転送システム及び電子機器
KR102420530B1 (ko) 대체 프로토콜 선택
JP2006195871A (ja) 通信装置、電子機器、及び画像形成装置
KR102032862B1 (ko) 멀티미디어 고화질 링크(mhl 3) 디바이스 내의 중재 시그널링
JP2008545319A (ja) Rs−232/i2c変換icとホスト間の通信用ソフトウェア層
JPH1083375A (ja) Scsiシステム
JP4564855B2 (ja) データ転送システム及び電子機器
KR102345720B1 (ko) 광 신호를 이용한 sata 호스트 버스 어댑터 및 sata 저장소 연결 방법
EP2704021B1 (en) SRAM handshake
CN100531091C (zh) 点对点通信的i2c总线实现方法
US9678904B2 (en) PCI express data transmission
TW202248869A (zh) 快捷週邊組件互連介面裝置及其操作方法
EP2690828A1 (en) Station, target apparatus, initiator apparatus, communication system, and communication method
US20220327073A1 (en) Peripheral component interconnect express (pcie) interface device and method of operating the same
JP2008204245A (ja) データ通信装置、画像処理システムおよびデータ通信方法
US20120102251A1 (en) Serial attached small computer system interface (sas) domain access through a universal serial bus interface of a data processing device
KR102052866B1 (ko) 패킷 송수신 시스템, 장치 및 방법
CN104346310A (zh) 一种高性能i2c从机数据交换电路及方法
JP4906688B2 (ja) 制御信号通信方法、光トランシーバ装置
EP3631640B1 (en) Communication between field programmable gate arrays
US9195619B2 (en) Semiconductor memory device
US8135923B2 (en) Method for protocol enhancement of PCI express using a continue bit

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