KR101827704B1 - Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법 - Google Patents

Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법 Download PDF

Info

Publication number
KR101827704B1
KR101827704B1 KR1020160044549A KR20160044549A KR101827704B1 KR 101827704 B1 KR101827704 B1 KR 101827704B1 KR 1020160044549 A KR1020160044549 A KR 1020160044549A KR 20160044549 A KR20160044549 A KR 20160044549A KR 101827704 B1 KR101827704 B1 KR 101827704B1
Authority
KR
South Korea
Prior art keywords
host
data
usb
transmitting
vehicle
Prior art date
Application number
KR1020160044549A
Other languages
English (en)
Other versions
KR20170116679A (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 KR1020160044549A priority Critical patent/KR101827704B1/ko
Priority to US15/380,258 priority patent/US10572398B2/en
Publication of KR20170116679A publication Critical patent/KR20170116679A/ko
Application granted granted Critical
Publication of KR101827704B1 publication Critical patent/KR101827704B1/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/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/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/03Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for
    • B60R16/0315Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for using multiplexing techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]
    • 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/3812USB port controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Abstract

소프트웨어적으로 컨버터 기능을 실행하여 복수 개의 호스트가 서로 USB 표준 통신이 가능하도록 OTG(On to Go)를 지원함으로써, 호스트 시스템의 하드웨어적 복잡도를 낮추며 나아가 차량 등에서 고가의 케이블 및 복잡한 결선을 줄일 수 있는 USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법을 제공한다.
개시된 발명의 일 측면에 따른 USB 멀티 호스트 장치는 제 1 호스트 및 제 2 호스트에 연결되는 복수 개의 업스트림 포트; 상기 업스트림 포트를 통해서 상기 제 1호스트에서 상기 제 2 호스트로 전달할 데이터를 저장하는 저장부; 및 상기 저장부가 상기 데이터를 전달받는 경우 상기 데이터에 기초한 신호를 상기 제 2 호스트에 전송하고, 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 제어부;를 포함한다.

Description

USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법{USB MULTI-HOST DEVICE, VEHICLE HAVING THE SAME AND A METHOD OF USB MULTI-HOST DEVICE}
개시된 발명은 USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법에 관한 것으로써, 상세하게는 USB의 통신 방법에 관한 것이다.
USB(Universal Serial Bus)는 복잡한 컴퓨터 또는 전자 장치끼리 같은 인터페이스 기반을 사용하여 별다른 조작 없이 꽂는 수준으로 연결되도록 단순화시킨 포트 규격을 말한다.
즉, USB는 주변 장치를 컴퓨터 시스템에 연결시키고, 호스트 컴퓨터와 광범위한 동시 접속 가능한 장치들 사이의 데이터 교환을 위한 직렬 케이블 버스(serial cable bus)이다.
여기서 버스(Bus)는, 호스트가 동작하는 동안 주변 장치들이 부착, 구성, 사용 및 분리되는 것을 허용한다. 예를 들어, USB 프린터, 스캐너, 디지털 카메라, 저장 장치, 카드 판독기 등은 USB를 통해 호스트 시스템과 통신할 수 있다.
이러한 USB가 사용하는 통신 방법은 마스터-슬레이브(Master-Slave)구조의 비 대칭적 방법을 사용한다. 이 경우 호스트가 되는 마스터 기기는 구현 복잡도가 높을 수 있으나, 슬레이브 기기는 단순하게 구현할 수 있다. 또한 1대의 호스트 기기에 여러 슬레이브 기기를 접속시킬 수 있으므로 PC(Personal Computer) 및 다른 컴퓨터 시스템에 널리 쓰이고 있다.
한편, USB가 사용하는 비 대칭적 다중 통신 방법은 1 대의 호스트만이 슬레이브와 통신할 수 있으므로, 2 대 이상의 호스트가 여러 슬레이브와 다중으로 통신하기 어렵다는 문제점이 있다.
또한 현재의 USB 표준 사양에서는 이러한 통신 방법이 지원되지 않으므로, 복수 대의 호스트가 연결되기 위해서 여러 USB 포트가 물리적으로 설치되어야 하는 문제점이 있었다.
이러한 문제점을 해결하기 위해서 개시된 발명의 일 측면은 소프트웨어적으로 컨버터 기능을 실행하여 복수 개의 호스트가 서로 USB 표준 통신이 가능하도록 OTG(On to Go)를 지원함으로써, 호스트 시스템의 하드웨어적 복잡도를 낮추며 나아가 차량 등에서 고가의 케이블 및 복잡한 결선을 줄일 수 있는 USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법을 제공한다.
개시된 발명의 일 측면에 따른 USB 멀티 호스트 장치는 제 1 호스트 및 제 2 호스트에 연결되는 복수 개의 업스트림 포트; 상기 업스트림 포트를 통해서 상기 제 1호스트에서 상기 제 2 호스트로 전달할 데이터를 저장하는 저장부; 및 상기 저장부가 상기 데이터를 전달받는 경우 상기 데이터에 기초한 신호를 상기 제 2 호스트에 전송하고, 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 제어부;를 포함한다.
또한, 상기 제어부는, 상기 호스트가 복수 개인 경우, 상기 전달받은 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정할 수 있다.
또한, 상기 제어부는, 상기 제 1 호스트 및 상기 제 2 호스트가 상기 제어부를 논리 네트워크 디바이스로 인식하도록 미리 정의된 패킷을 전송할 수 있다.
또한, 상기 제어부는, 상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 상기 저장부로 전달할 수 있다.
또한, 상기 제어부는, 상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송할 수 있다.
또한, 상기 제어부는, 상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달할 수 있다.
개시된 발명의 다른 측면에 따른 차량은 제 1 호스트 및 제 2 호스트에 연결되는 복수 개의 업스트림 포트; 상기 업스트림 포트를 통해 상기 제 1호스트에서 상기 제 2 호스트로 전달할 데이터를 저장하는 저장부; 및 상기 저장부가 상기 데이터를 전달받는 경우 상기 데이터에 기초한 신호를 상기 제 2 호스트에 전송하고, 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 제어부;를 포함한다.
또한, 상기 제어부는, 상기 호스트가 복수 개인 경우, 상기 전달받은 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정할 수 있다.
또한, 상기 제어부는, 상기 제 1 호스트 및 상기 제 2 호스트가 상기 제어부를 논리 네트워크 디바이스로 인식하도록 미리 정의된 패킷을 전송할 수 있다.
또한, 상기 제어부는, 상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 상기 저장부로 전달할 수 있다.
또한, 상기 제어부는, 상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송할 수 있다.
또한, 상기 제어부는, 상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달할 수 있다.
개시된 발명의 또 다른 측면에 따른 USB 멀티 호스트 장치의 제어방법은 상기 제 1 호스트에서 제 2 호스트로 전달할 데이터를 저장하고; 전달한 상기 데이터에 기초한 신호를 상기 제 2 호스트에 전송하고; 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 것;을 포함한다.
또한, 상기 호스트가 복수 개인 경우 상기 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정하는 것;을 더 포함할 수 있다.
또한, 상기 전송하는 것;은, 상기 제 1 호스트 및 상기 제 2 호스트에 미리 정의된 패킷을 전송하는 것;을 포함할 수 있다.
또한, 상기 전달하는 것;은, 상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 전달하는 것;을 포함할 수 있다.
또한, 상기 전송하는 것;은, 상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송하는 것;을 포함할 수 있다.
또한, 상기 전달하는 것;은, 상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달하는 것;을 포함할 수 있다.
개시된 발명의 또 다른 측면에 따른 USB 멀티 호스트 장치의 제어방법은 제 1 호스트에서 전달하는 패킷과 데이터를 제 1 논리 네트워크 디바이스를 통해 전달받고; 상기 전달받은 패킷을 기초로 상기 데이터의 목적지를 결정하고; 상기 목적지가 제 2 호스트인 경우 상기 제 2 논리 네트워크 디바이스를 통해 상기 제 2 호스트로 상기 데이터에 기초한 신호를 전송하고; 상기 제 2 논리 네트워크 디바이스를 통해 상기 데이터를 상기 제 2 호스트로 전달하는 것;을 포함한다.
개시된 발명의 일 측면에 따른 USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법은 소프트웨어적으로 컨버터 기능을 실행하여 복수 개의 호스트가 서로 USB 표준 통신이 가능하도록 OTG(On to Go)를 지원함으로써, 호스트 시스템의 하드웨어적 복잡도를 낮추며 나아가 차량 등에서 고가의 케이블 및 복잡한 결선을 줄일 수 있다.
도 1은 개시된 발명의 일 실시예에 따른 차량의 외관도이다.
도 2는 차량의 일 실시예에 따른 내부 구성을 나타낸 도면이다.
도 3은 차량 내부에 마련된 USB 접속 포트 및 호스트 기기와의 연결을 나타낸 도면이다.
도 4a 는 도 3의 USB 포트를 확대해서 도시한 도면이고, 도 4b는 USB 케이블 및 커넥터를 설명하기 위한 도면이다.
도 5는 일 실시예에 USB 데이터 전송 구조를 나타낸 블록도이다.
도 6은 개시된 USB 멀티 호스트 장치의 제어 블록도이다.
도 7a 및 도 7b는 일 예에 따른 USB 멀티 호스트 장치의 데이터 전송 구조를 설명하기 위한 도면이다.
도 8은 일 예에 따른 USB 멀티 호스트 장치의 동작을 설명하기 위한 순서도이다.
도 9는 도 8의 동작을 더욱 구체적으로 설명하기 위한 순서도이다.
도 10은 차량에 USB 멀티 호스트 장치가 설치되고 적용되는 일 예를 나타낸 도면이다.
이하 첨부된 도면을 참조하여 개시된 발명의 일 측면에 따른 USB 멀티 호스트 장치, 그를 포함하는 차량 및 USB 멀티 호스트 장치의 제어방법에 관한 실시예를 상세하게 설명하도록 한다.
도 1은 개시된 발명의 일 실시예에 따른 차량의 외관도이다.
도 1을 참조하면, 개시된 발명의 일 실시예에 따른 차량(1)은 차량(1)의 외관을 형성하는 본체(2), 차량(1)을 이동시키는 차륜(61, 62), 차륜(61, 62)을 회전시키는 구동 장치(60), 차량(1) 내부를 외부로부터 차폐시키는 도어(71), 차량(1) 내부의 사용자에게 차량(1) 전방의 시야를 제공하는 전면 유리(80), 사용자에게 차량(1)의 측, 후방 시야를 제공하는 사이드미러(81, 82) 을 포함한다.
차륜(61, 62)은 차량의 전방에 마련되는 전륜(61), 차량의 후방에 마련되는 후륜(62)을 포함하며, 구동 장치(60)는 본체(2)가 전방 또는 후방으로 이동하도록 전륜(61) 또는 후륜(62)에 회전력을 제공한다. 이와 같은 구동 장치(60)는 화석 연료를 연소시켜 회전력을 생성하는 엔진(engine) 또는 축전기(미 도시)로부터 전원을 공급받아 회전력을 생성하는 모터(motor)를 채용할 수 있다.
도어(71)는 본체(2)의 좌측 및 우측에 회동 가능하게 마련되어 개방 시에 탑승자가 차량(1)의 내부에 탑승할 수 있도록 하며, 폐쇄 시에 차량(1)의 내부를 외부로부터 차폐시킨다.
윈드 스크린의 일종인 전면 유리(80)는 본체(2)의 전방 상측에 마련되어 차량(1) 내부의 운전자 또는 사용자가 차량(1) 전방의 시야 정보를 획득할 수 있도록 한다.
사이드미러(81, 82)는 본체(2)의 좌측에 마련되는 좌측 사이드미러(81) 및 우측에 마련되는 우측 사이드미러(82)를 포함하며, 차량(1) 내부의 운전자가 차량(1) 측,후방의 시야 정보를 획득할 수 있도록 한다.
도 2는 차량의 일 실시예에 따른 내부 구성을 나타낸 도면이고, 도 3은 차량 내부에 마련된 USB 접속 포트 및 호스트 기기와의 연결을 나타낸 도면이다.
도 2를 참조하면, 차량(1)은 기어박스(40), 센터페시아(50) 및 스티어링 휠(63) 등이 마련된 대시보드(dashboard)를 포함할 수 있다.
기어박스(40)에는 차량 변속을 위한 변속 기어(41)가 설치된다. 또한, 도면에 도시된 것처럼, 사용자가 내비게이션 장치(51)나 차량의 주요 기능의 수행을 제어하기 위한 다이얼 조작부(42)가 기어 박스(40)에 설치될 수 있다.
센터페시아(50)에는 공조 장치, 시계, 오디오 장치(52) 및 디스플레이(51) 등이 설치될 수 있다.
공조 장치는 차량 내부의 온도, 습도, 공기의 청정도, 공기의 흐름을 조절하여 차량의 내부를 쾌적하게 유지한다. 공조 장치는 센터페시아(50)에 설치되고 공기를 토출하는 적어도 하나의 토출구를 포함할 수 있다. 센터페시아(50)에는 공조 장치 등을 제어하기 위한 버튼이나 다이얼 등이 설치될 수 있다. 운전자 등의 사용자는 센터페시아에 배치된 버튼이나 다이얼을 이용하여 차량의 공조 장치를 제어할 수 있다.
센터페시아(50)에는 디스플레이(51)가 설치될 수 있다. 디스플레이(51)는 차량의 센터페시아(50) 내부에 매립되어 형성될 수 있다. 디스플레이(51)는 후술하는 AVN(Audio Video Navigation) 장치(111, 도9 참조)가 출력하는 다양한 영상을 표시할 수 있다.
한편, 디스플레이(51)는 액정 디스플레이 (Liquid Crystal Display: LCD) 패널, 발광 다이오드(Light Emitting Diode: LED) 패널, 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널 등으로 구현될 수 있다.
스티어링 휠(63)은 차륜(61, 62)을 제어하고 나아가 차량(1)의 주행 방향을 조절할 수 있는 구성으로, 운전자에 의해 파지되는 림(64) 및 조향을 위한 회전축의 허브를 연결하는 스포크(65)를 포함할 수 있다.
또한 대시보드는 실시예에 따라서 차량의 주행 속도, 엔진 회전수 또는 연료 잔량 등을 표시할 수 있는 각종 계기판 및 각종 물건을 수납할 수 있는 글로브 박스(globe box) 등을 더 포함할 수도 있다.
또한, 대시보드의 센터페시아(50)에는 저장매체 접속장치를 차량(1)의 AVN 장치(111, 도 10 참조) 등과 연결하는 USB 포트(100)가 설치될 수 있다. 이러한 USB 포트(100)는 차량(1) 내부의 일 구성으로 포함되어 함께 설치될 수도 있고, 내부와는 분리된 별개의 구성으로 설치되는 것도 가능할 수 있다.
한편 AVN 장치(111)는 사용자에게 목적지까지의 경로를 제공하는 내비게이션 기능을 제공할 수 있을 뿐만 아니라, 오디오, 및 비디오 기능을 통합적으로 제공할 수 있는 단말을 의미한다.
구체적으로 AVN 장치(111)는 디스플레이(51)를 통해 오디오 화면, 비디오 화면 및 내비게이션 화면 중 적어도 하나를 선택적으로 표시할 수 있을 뿐만 아니라, 차량(1)의 제어와 관련된 각종 제어 화면 또는 AVN 장치(111)에서 실행할 수 있는 부가 기능과 관련된 화면을 표시할 수도 있다.
또한, AVN 장치(111)는 USB 포트(100)를 통해서 저장매체 접속장치와 연결될 수 있다.
여기서 데이터가 저장될 수 있는 저장매체는 저장 장치에는 USB 메모리 및 메모리 카드(스마트 미디어 카드(SMC), CF(Compact Flash) 카드, 메모리 스틱, SD(Secure Digital) 카드, 멀티 미디어 카드(MMC) 등과 같은 이동식(Portable) 저장매체를 포함할 수 있다.
또한, 접속장치에 접속 가능한 저장매체는 마그네틱 저장매체(예를 들어, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독매체(예를 들어, CD-ROM, DVD 등), 및 상술한 이동식 저장매체가 접속된 전자기기를 포함할 수 있다. 여기서 전자기기는 마그네틱 저장매체, 광학적 판독매체, 및 이동식 저장매체와 접속 가능한 컴퓨터, 노트북, 디지털 카메라, 스마트 폰(141), MP3 플레이어, PMP(Portable Multimedia Player), 게임기 등을 포함할 수 있다.
구체적으로 SD(Secure Digital) 카드는 내비게이션 맵(Map) 데이터를 저장하고 USB 포트(100)를 통해 AVN 장치(111)로 저장된 맵 데이터를 전송할 수 있다. 또한 USB 메모리(122a). iPad/MP3 플레이어 및 스마트 폰(141) 등은 장치 내에 저장된 멀티미디어 파일을 AVN 장치(111)로 전송할 수 있다.
한편, AVN 장치(111)는 센터페시아(50)의 내부에 마련되어 사용자가 시각적으로 인식하지 못 할 수 있으나 앞서 언급한 다양한 입,출력 장치를 통해서 제어될 수 있다.
차량(1)의 내부에서USB 포트(100)는 센터페시아(50)의 하단에 위치할 수 있다. USB 포트(100)와 커넥터에 관한 자세한 사항은 도 4a 및 도 4b를 통해 후술한다.
한편, USB는 호스트 기기와 슬레이브 기기와의 직렬 통신 지원 방식으로 도 3과 같이 케이블을 통해 직결되는 기기들 간에 사실상의 표준으로 널리 이용되고 있는 기술이다.
일 예로 도 3은 사용자의 사용자 단말, 즉 스마트 폰(141)은 USB 포트(100)에 연결된 케이블을 통해서 AVN 장치(111)와 연결된 상황을 나타낸다, 즉, 스마트 폰(141)에 저장된 각종 미디어 파일은 USB 포트(100)에 연결된 케이블을 통해 AVN 장치(111)로 전송될 수 있다. 이 경우 스마트 폰(141)은 호스트 기기가 되고, AVN 장치(111)는 슬레이브 기기가 된다.
도 4a 는 도 3의 USB 포트를 확대해서 도시한 도면이고, 도 4b는 USB 케이블 및 커넥터를 설명하기 위한 도면이다.
도 4a를 참조하면, 센터페시아(50)의 USB 포트(100) 주변에는 전원 공급 단자(53) 또는 라이터 단자(54)가 함께 설치될 수 있다. 다만 이는 차량(1) 내부 구조의 일 예에 불과하며 다양한 형태를 나타낼 수 있다.
또한 도 4a 에서 USB 포트(100)는 USB 메모리(122a, 도9참조)가 연결되어 있다. USB는 IEEE 1394 규격에 따라 연결되며 연결 케이블 및 연결 핀(Pin)은 도 4b에서 후술한다.
도 4b를 참조하면, USB케이블은 D+, D-, Vbus, GND의 4 핀 통신 구성으로 이루어진다.
여기서 USB는 Vbus핀을 통해 호스트로부터 전원을 공급받을 수 있다. 평균적으로 호스트가 공급할 수 있는 최대 전류는 500mA이며, 최대 전압은 5V이다. GND는 전원과 관련된 Ground 라인을 의미한다.
D+ 및 D-핀은 데이터를 주고 받는 라인을 의미하며, 차동 신호로 구동된다. 또한 D+ 및 D-는 Vbus 라인보다 길이가 길다. 이는 USB 삽입시 전원이 먼저 공급(Vbus)된 다음 데이터 라인(D+, D-)이 접속 되도록 하고, 반대로 해제의 경우 신호선이 먼저 절단된 다음 전원이 절단되도록 유도하여 디바이스가 파괴되지 않도록 하기 위함이다.
한편, 개시된 USB 버스의 경우도 연결 케이블 및 핀은 IEEE 규격에 의한다.
도 5는 일 실시예에 USB 데이터 전송 구조를 나타낸 블록도이다.
도 5를 참조하면, 일 예에 따른 USB 접속 토폴로지는 제 1 호스트(110), USB 허브(120), USB 허브(120)에 연결된 슬레이브 기기(121,122,123), USB 멀티 호스트 장치(130) 및 제 2 호스트(140)로 구성될 수 있다.
일반적으로 USB 시스템에서 호스트(Host)란 모든 USB 연결의 중심으로서 하드웨어적으로 USB 호스트 컨트롤러라고 한다. 개시된 일 예에서는 호스트 기기가 복수 개, 즉 제 1 호스트(110) 및 제 2 호스트(140)가 개시된다.
호스트 기기는 결합된 디바이스, 즉 슬레이브(121) 기기에 대하여 모든 책임과 권한을 가지며, 슬레이브 기기는 버스로 접근할 수 있는 사용권을 호스트에 의해 부여 받는다. 또한 호스트는 USB의 토폴로지를 항상 모니터하고 있어야 하며, 다른 접근을 통제한다.
한편, 차량(1)에서 호스트 기기는 AVN 장치(111)일 수 있다. 여기서 AVN 장치(111)는 차량(1)에 설치된 복수 개의 슬레이브 기기(121,122,123)와 연결될 수 있다.
도 5에서 USB 허브(120)는 제 1 호스트(110)와 복수 개의 슬레이브 기기(121,122,123)를 연결한다. 즉, USB 허브(120)는 여러 개의 슬레이브 기기들이 제 1호스트(110), 즉USB 호스트 컨트롤러의 하나의 출력을 같이 사용하도록 한다.
여기서 슬레이브 기기(121,122,123)는 저장매체 접속장치일 수 있으며, 저장매체 접속장치는 USB 메모리(122a), 스마트 폰(141) 등 다양할 수 있다.
만약 AVN 장치(111)와 USB 메모리(122a)가 USB 포트(100)를 통해 연결된다면, 제 1 호스트(110)는 AVN 장치(111)가 되고, 제 1슬레이브(121)는 USB 메모리(122a)가 될 것이다.
또한, AVN 장치(111)는 USB 메모리(122a)에 대하여 모든 책임과 권한을 가지며 USB 메모리에 저장된 멀티미디어 파일에 접근 권한을 가질 수 있다.
한편, USB 시스템에서 이러한 마스터-슬레이브 원리는 USB 규격이 달성한 구성의 간소함을 이룰 수 있다. 즉, 앞서 언급한 바와 같이 USB 포트(100)의 물리적 구성이 단순히 D+, D-, Vbus 및 GND로 이루어질 수 있는 이유는 마스터-슬레이브의 비대칭적 구조로 인한 것이다.
종래 기술인 한국특허공개공보(KR-2008-0102355A)는 복수 개의 호스트가 연결되는 경우 별도의 물리적 파이프를 설치하고 각각의 호스트의 요청에 대응할 수 있는 내부 구조를 통해서 슬레이브 기기가 연결될 수 있도록 제안하고 있다.
즉, 복수의 호스트가 존재하는 경우 하나의 USB 포트(100)를 통해서는 각각이 연결될 수 없으며, 새로운 물리적 구성 예를 들면 파이프나 다른 USB 포트(100)가 더 필요하다.
하지만 이러한 방식은 복수 개의 호스트와 슬레이브간 동시 통신은 가능하지만 호스트끼리 통신은 여전히 불가능하다는 문제점이 있다.
만약 제 1 호스트(110)와 제 2 호스트(140)가 기존의 USB 토폴로지에 의해서 연결되는 경우, 제 1 호스트(110)가 데이터를 전송하면 제 2 호스트(140)는 슬레이브로 동작하여야 한다. 반대로 제 2 호스트(140)가 데이터를 전송하면, 제 1 호스트(110)는 슬레이브로 동작하여야 한다.
즉, 제 1 호스트가 슬레이브로 동작하게 되면, 제 1 호스트(110)는 USB 허브(120)를 통해 제어하는 복수 개의 슬레이브(121,122,123)의 지배권을 상실하게 된다.
예를 들어 제 1 호스트(110)가 AVN 장치(111)이고 제 2 호스트(140)가 사용자의 스마트 폰(141) 이라면 스마트 폰(141)이 호스트로 동작하는 동안 AVN 장치(111)는 차량(1)의 다른 슬레이브 장치의 장악력을 잃게 된다.
이러한 문제점을 해결하기 위해서 개시된 발명의 일 예는 USB 멀티 호스트 장치(130)를 포함한다.
여기서 USB 멀티 호스트 장치(130)는 제 1호스트(110)가 제 2 호스트(140)를 마치 슬레이브 기기처럼 보이도록 동작한다. 또한 제 2 호스트(140)가 제 1 호스트에 마스터로 동작하는 경우, USB 멀티 호스트 장치(130)는 제 1 호스트(110)를 슬레이브 기기처럼 보이도록 동작한다.
즉, USB 멀티 호스트 장치(130)는 물리적인 파이프 또는 USB 포트(100) 등의 추가 없이 복수 개의 호스트를 서로 연결시켜 주는 프로토콜 컨버터(Protocol Converter)역할을 한다.
USB 멀티 호스트 장치(130)의 동작 및 논리 구성에 관한 자세한 사항은 이하의 도면을 참고하여 설명한다.
도 6은 개시된 USB 멀티 호스트 장치의 제어 블록도이다.
도 6를 참조하면, 개시된 USB 멀티 호스트 장치(130) 즉, 프로토콜 컨버터는 제 1 호스트와 연결되는 제 1 업스트림(Upstream) 포트(131), 제 2 호스트와 연결되는 제 2 업스트림 포트(133), 전반적인 동작을 제어하고 수행하는 범용 제어부(132a) 및 각종 정보를 처리하고 저장하는 저장부(132b)를 포함하는 USB Class Abstractor(132)로 구성될 수 있다.
구체적으로 제 1 업스트림 포트(131)는 제 1 호스트(110)와 물리적으로 연결되는 포트를 의미한다. 도 5와 비교하면 제 1 호스트(110)와 제 1 업스트림 포트(131) 사이에는 USB 허브(120)가 있을 수 있다.
마찬가지로 제 2 업스트림 포트(133)도 제 2 호스트(140)와 물리적 연결을 위한 포트이다.
한편 도 6에서는 제 1 호스트(110)와 제 2 호스트(140)만을 예시하고 있으나 개시된 USB 멀티 호스트 장치(130)는 2개 이상의 호스트 기기와 연결될 수 있으며, 이에 따라 복수 개의 업스트림 포트를 포함할 수 있다.
USB Class Abstractor(132)는 USB 멀티 호스트 장치(130)의 전반적인 동작을 제어하는 코어 역할을 한다.
구체적으로 제어부(132a)는 앞서 언급한 바와 같이 USB 멀티 호스트 장치(130)가 슬레이브 기기의 역할을 하도록 동작을 제어한다. 또한 제어부(132a)는 시스템 온 칩(System On Chip, SOC)에 집적될 수 있으며, 프로세서(processor)에 의해 동작될 수 있다.
제어부(132a)의 동작에 관한 설명은 이하 도 7a 및 도 7b등에서 후술한다.
저장부(132b)는 제어부(132a)의 각종 동작 중 처리한 정보를 저장하고, 실행 코드를 저장하는 메모리(Memory)를 의미한다. 즉, 저장부(132b)는 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory)와 같은 하드웨어적 저장매체일 수 있다. 또한 저장부(132b)는 비휘발성 또는 휘발성 메모리를 모두 포함할 수 있다.
한편, 개시된 USB 멀티 호스트 장치(130)는 앞서 언급한 하드웨어적 구성 이외에도 당업자가 생각할 수 있는 다른 물리적 구성요소를 포함할 수 있으며, 다양한 변형 예가 있을 수 있다.
도 7a 및 도 7b는 일 예에 따른 USB 멀티 호스트 장치의 데이터 전송 구조를 설명하기 위한 도면이다. 즉 즉, 도 7a 및 도 7b는 물리적인 구성 장치가 아니라 논리회로에서 표현될 수 있는 형태를 의미한다.
도 7a를 먼저 참조하면, USB 멀티 호스트 장치(130)는 소프트웨어적으로 제 1 네트워크 디바이스(134), 라우터(135) 및 제 2 네트워크 디바이스(136)로 구성될 수 있다.
여기서 네트워크 디바이스(134, 136)는 논리적 인터페이스(Interface)를 의미하며 도 7b에서와 같이, 적어도 하나 이상의 엔드 포인트(EndPoint, EP)로 구성될 수 있다.
구체적으로 USB 멀티 호스트 장치(130)는 호스트의 버퍼(buffer)와 엔드 포인트와 연결하여 데이터를 요청하거나 전송할 수 있다. 좀 더 구체적으로 USB 멀티 호스트 장치(130)는 데이터를 패킷화하여 엔드 포인트에 데이터를 업로드하고 버스(BUS)를 조절하여 통신흐름을 일으킨다.
즉, 하나의 엔드 포인트는 통신 흐름의 종단이므로 각각 고유의 ID를 갖고 논리 네트워크 디바이스 내에 존재한다. 또한, 엔드 포인트는 설정된 시간 내에 번호를 할당받고 데이터 방향의 정보를 갖는다. 엔드 포인트의 데이터 전송과 관련한 사항은 이하 도 7b를 통해 후술한다.
라우터(router, 135)는 3개 이상의 호스트가 연결되는 경우 USB 멀티 호스트 장치(130)가 데이터를 전송할 목적지를 구분하기 위한 구성이다.
일반적으로 라우터는 LAN과 LAN을 연결하거나 LAN과 WAN을 연결하기 위한 인터넷 네트워킹 장비를 의미하나, 개시된 발명에서 라우터(135)는 소프트웨어적으로 데이터의 목적지를 구분하기 위한 논리 디바이스를 의미할 수 있다.
도 7b를 참조하면, 네트워크 디바이스(134, 136)는 IN Bulk EP(134a, 136a), OUT Bulk EP(134b, 136b) 및 IN Interrupt EP(134c, 136c)로 구성될 수 있다.
앞서 언급한 바와 같이 USB 시스템 인터페이스는 엔드 포인트의 집합으로 이루어진다. 즉, 개시된 USB Class Abstractor(132)는 네트워크 디바이스 클래스(Network Device Class)를 지원한다.
따라서 USB Class Abstractor(132)는 호스트가 자신을 네트워크 디바이스로 보이도록 소프트웨어적으로 엔드 포인트의 집합을 생성한다. 도 7b에서 USB Class Abstractor(132)는 적어도 하나 이상의 네트워크 디바이스(134, 136)를 소프트웨어적으로 생성함으로써, 호스트가 USB 멀티 호스트 장치(130)를 슬레이브 기기로 인식하도록 동작한다.
한편, IN Bulk EP(134a, 136a), OUT Bulk EP(134b, 136b) 및 IN Interrupt EP(134c, 136c)에서 IN 및 OUT은 호스트를 기준으로 데이터의 흐름, 방향을 의미한다.
여기서 IN 및 OUT은 호스트를 기준으로 결정된다. 즉, IN 은 슬레이브에서 호스트로 데이터가 전달되는 방향이다. OUT 은 호스트에서 슬레이브로 데이터가 전달되는 방향이다.
따라서 논리 네트워크 디바이스(134, 136)에서 IN Bulk EP(134a, 136a)는 슬레이브 기기 즉, USB 멀티 호스트 장치(130)가 호스트(110, 140)가 데이터를 저장하고, 전송하는 엔드 포인트를 의미한다.
또한, 논리 네트워크 디바이스(134, 136)에서 OUT Bulk EP(134b, 136b) 는 호스트(110, 140)가 USB 멀티 호스트 장치(130)로 데이터를 저장하고, 전송하는 엔드 포인트를 의미한다.
한편, 데이터를 전송하는 것은 네트워크 디바이스가 IEEE802.3표준에 의해서 정의된 패킷(Packet)를 전송하는 것을 의미할 수 있다. 여기서 패킷의 크기, 즉 전송되는 데이터의 크기는 Bulk, Isochoronous 및 Interrupt로 구분될 수 있다.
구체적으로 Bulk는 비교적 많은 양의 데이터를 시간에 구애 없이 정확히 전송하기 위해서 고안된 것이다. 또한 Bulk는 버스에서 전송 에러가 발생했을 경우 데이터를 재전송할 수 있다. 따라서 IN Bulk EP(134a, 136a) 및 OUT Bulk EP(134b, 136b)는 주로 큰 데이터를 주고 받을 때 쓰인다.
Interrupt는 비주기적인 매우 작은 크기의 데이터를 송수신하기 위해서 고안된 것이며, 서비스 주기를 보장하고 버스에서의 에러에 기인한 다음 주기에 시도되는 전송의 재시도 등을 담당한다.
개시된 USB 멀티 호스트 장치(130)의 논리 네트워크 디바이스(134, 136)는 IN Interrupt EP(134c, 136c)를 포함한다.
앞서 언급한 바와 같이USB 시스템은 마스터-슬레이브 원리에 의해서 슬레이브가 먼저 데이터를 보낼 수 없다. 따라서 개시된 USB 멀티 호스트 장치(130)는 복수 개의 호스트가 서로 데이터를 주고 받을 수 있도록 USB 멀티 호스트 장치(130)가 슬레이브의 역할을 대신한다.
즉, 슬레이브 역할을 하는 USB 멀티 호스트 장치(130)는 IN Interrupt EP(134c, 136c)를 통해서 데이터를 전달받을 호스트에 데이터 유무에 관한 신호를 전송한다. 즉, IN Interrupt EP(134c, 136c)가 호스트에게 데이터를 가져가라는 신호를 전송하면, 호스트는 IN Bulk EP(134a, 136a)을 통해서 데이터를 수신한다.
이를 통해서 복수 개의 호스트는 슬레이브 역할로 전환되지 않고, USB 멀티 호스트 장치(130)를 통해서 데이터를 주고 받을 수 있다.
한편, 개시된 발명의 일 예에 따른 논리 네트워크 디바이스(134, 136)는 앞서 언급한 엔드 포인트 이외에도 Isochronous 엔드 포인트를 포함할 수 있으며, 제한은 없다.
도 8은 일 예에 따른 USB 멀티 호스트 장치의 동작을 설명하기 위한 순서도이다.
개시된 발명의 일 예에 따라서 제 1 호스트(110)는 USB 멀티 호스트 장치(130)를 통해서 제 2 호스트(140)으로 데이터를 전달할 수 있다.
구체적으로 제 1 호스트(110)는 제 2 호스트의 IP주소에 관한 패킷과 데이터를 제 1 네트워크 디바이스(134)로 전달한다(201).
앞서 언급한 바와 같이 제 1 네트워크 디바이스(134)는 하드웨어적 구성이 아니라 USB Class Abstractor(132)에 의해서 생성된 소프트웨어적인 구성이다. 한편, 제 1 네트워크 디바이스(134)에서 데이터를 전달받는 엔드 포인트와 관련된 사항은 도 9을 통해서 자세히 후술한다.
데이터를 전달받은 후, USB 멀티 호스트 장치(130)의 제어부(132a)는 패킷을 통해 데이터를 전달하는 목적지를 확인한다(202).
목적지는 슬레이브 기기(121,122. 123) 또는 제 2 호스트(140)일 수 있다. 만약 목적지가 슬레이브 기기라면, USB 멀티 호스트 장치는 일반적인 USB 토폴로지에 의해서 데이터를 전달할 것이다.
목적지가 제 2호스트(140)라면, 제 1 네트워크 디바이스(134)는 라우터(135)를 통해서 제 2 네트워크 디바이스(136)으로 데이터를 전달한다(203).
데이터를 전달하는 것은 물리적으로 데이터를 전달하는 것이 아니라 USB Class Abstractor(132)를 통해서 논리적으로 결정되는 것을 의미한다.
제 2 네트워크 디바이스(136)는 제 2 호스트(204)로 데이터를 전달한다(204).
즉, 일반적인 마스터-슬레이브 원리에 따르면, 제 1 호스트(110)는 제 2 호스트(140)로 데이터를 전달할 수 없다. 만약 데이터를 전달하고자 한다면 제 2 호스트(140)는 슬레이브 기기로 전환하여야 하고, 제 2 호스트(140)는 다른 슬레이브 기기에 대한 사용권 등을 잃게 된다.
하지만 일 예에 따른 USB 멀티 호스트 장치(130)는 슬레이브 기기로 동작하는 역할을 수행하여, 제 2 호스트(140)가 호스트 기기로 동작하면서 제 1호스트(110)로부터 데이터를 전달받을 수 있도록 중재한다.
도 9는 도 8의 동작을 더욱 구체적으로 설명하기 위한 순서도이다.
도 9을 참조하면, 제 1 호스트가 데이터를 전달한다(310). 전달하는 데이터는 제 1 네트워크 디바이스(134)가 수신한다(320).
구체적으로 제 1 네트워크 디바이스(134)에서 OUT Bulk EP(134b)가 데이터를 수신하다. 도 7b에서 언급한 바와 같이, OUT은 호스트에서 슬레이브로 전달되는 방향을 의미한다. 또한 Bulk는 데이터를 전달 받을 때 사용한다. 따라서 일 예에 따라 제 1 네트워크 디바이스(134)의 OUT Bulk EP(134b)는 제 1 호스트(110)로부터 데이터를 전달받을 수 있다.
데이터를 전달받으면 USB 멀티 호스트 장치(130)는 목적지를 확인한다(330). 즉, USB 멀티 호스트 장치(130)의 라우터(135)가 데이터가 전달 되는 목적지를 확인한다. 만약 목적지가 제 2 호스트(140)이라면, 라우터(135)는 제 2 네트워크 디바이스(136)에게 알린다.
한편, 라우터(135)의 동작 설명은 물리적으로 제어부(132a), 즉 코어에 의해서 이루어지는 것으로 반드시 명령을 전달하거나 데이터를 이동시키지 않는다.
제 2네트워크 디바이스(136)는 제 2 호스트(140)로 데이터를 가져가라는 신호를 전송한다(340).
구체적으로 제 2네트워크 디바이스(136)의 IN Interrupt EP(136c)가 신호를 전달한다. 여기서 IN 은 슬레이브에서 호스트 방향을 의미하고 Interrupt는 비주기적인 매우 작은 크기의 데이터를 송수신하기 위한 엔드 포인트를 의미한다. 따라서 제 2 네트워크 디바이스(136)는 IN Interrupt EP(136c)를 통해서 제 2 호스트(140)가 전송할 데이터가 있다는 신호를 전달한다.
제 2호스트(140)가 신호를 수신하면(350), 제 2 호스트(140)는 마스터-슬레이브 원리에 의해서 데이터를 제 2 네트워크 디바이스(136)로부터 수신한다.
즉, 제 2 호스트(140)의 제어에 의해서 USB 멀티 호스트 장치(130)는 데이터를 제 2 호스트(140)로 전달한다.
구체적으로 제 2 네트워크 디바이스(136)는 제 1 호스트(110)로부터 전달받은 데이터를 IN Bulk EP(136a)에 저장한다. 여기서 IN 슬레이브에서 호스트 방향을 의미하고 큰 용량의 데이터를 전송하기 위해서 Bulk 엔드 포인트를 사용한다.
즉, 제 2 호스트는 제 2 네트워크 디바이스(136)의 IN Bulk EP(136a)를 통해서 데이터를 수신한다(351).
이를 통해서 개시된 USB 멀티 호스트 장치는 기존 USB 규격을 이용하면서 복수의 호스트간에 상호 통신이 가능하게 하고, 기존 토폴로지를 구성하는 호스트와 슬레이브 기기간에 통신이 가능하게 한다.
또한, 단일 USB 포트(100)를 통해서 다른 호스트 장치와 여러 슬레이브 장치가 서로 통신이 가능하므로, USB 포트(100)를 여러 개 설치해야 하는 부담을 경감시킬 수 있으며, 복수 개의 USB 포트(100)에 따른 고가의 케이블의 설치 또한 줄일 수 있다.
이러한 효과를 구체적으로 설명하기 위해서 이하 도 10에서는 차량(1)에 USB 멀티 호스트 장치가 설치되고, 적용되는 실시예를 나타낸다.
즉, 도 10은 차량에 USB 멀티 호스트 장치가 설치되고 적용되는 일 예를 나타낸 도면이다.
도 10를 참조하면, 차량(1)에 탑승한 사용자는 자신의 스마트 폰(141)을 USB 포트(100)를 통해서 AVN 장치(111)에 연결한 상황이다.
먼저 AVN 장치(111)는 사용자가 스마트 폰(141)을 연결하기 전에 다른 슬레이브 장치, 예를 들어 SD 카드, USB 메모리(122a) 및 뮤직 플레이어(123a))에 호스트로 동작하고 있다.
여기서 사용자의 스마트 폰(141)은 호스트로 동작하고, AVN 장치(111)에 멀티 미디어 파일을 전송하게 된다. 이 경우 AVN 장치(111)는 USB 의 마스터-슬레이브 원리에 따라 슬레이브 기기로 동작한다.
만약 USB 멀티 호스트 장치(130)가 없다면, AVN 장치(111)는 슬레이브 기기로 동작하게 되고, 이는 도 10의 복수의 슬레이브 기기와 통신이 불가능하게 됨을 의미한다.
하지만 개시된 일 예에 따른 USB 멀티 호스트 장치가 차량(1)에 설치된 경우 USB 멀티 호스트 장치(130)는 마치 자신이 슬레이브 기기가 되어 스마트 폰(141)과 연결된 것처럼 동작할 수 있다.
따라서 스마트 폰(141)이 AVN 장치(111)에게 데이터를 전송하는 경우, USB 멀티 호스트 장치(130)가 AVN 장치(111) 대신 데이터를 전달함으로써, AVN 장치(111)는 다른 슬레이브 기기에 대한 호스트 기능을 상실하지 않을 수 있다. 이를 통해서 USB 멀티 호스트 장치를 포함하는 차량(1)은 다른 USB포트(100) 및 고가의 케이블을 추가로 설치하지 않고도 여러 USB 슬레이브 기기를 지원할 수 있게 된다.
1: 차량. 2: 본체.
40: 기어박스. 41: 변속 기어. 42: 조작부.
50: 센터페시아. 51: 디스플레이. 52: 오디오 장치.
53: 전원 공급 단자. 54: 라이터 단자.
60: 구동 장치. 61. 62: 차륜.
63: 스티어링 휠, 64: 림. 64: 스포크.
71: 도어. 80: 전면 유리. 81. 82: 사이드 미러.
100: USB 포트. 110: 제 1 호스트. 111: AVN 장치,
120: USB 허브. 121,122,123: 슬레이브,
121a: SD 카드, 122a: USB 메모리, 123a: 뮤직 플레이어.
130: USB 멀티 호스트 장치. 131: 제 1업스트림 포트.
132: USB Class Abstractor. 132a: 제어부, 132b: 저장부,
133: 제 2업스트림 포트. 134: 제 1 네트워크 디바이스.
134a, 136a: IN Bulk EP. 134b, 136b: OUT Bulk EP.
134c, 136c: IN Interrupt EP. 135: 라우터,
136: 제 2 네트워크 디바이스. 140: 제 2 호스트

Claims (19)

  1. 제 1 호스트 및 제 2 호스트에 연결되는 복수 개의 업스트림 포트;
    상기 업스트림 포트를 통해서 상기 제 1호스트에서 상기 제 2 호스트로 전달할 데이터를 저장하는 저장부; 및
    상기 저장부가 상기 데이터를 전달받는 경우 상기 데이터에 기초한 신호를 엔드 포인트를 통해 상기 제 2 호스트에 전송하고, 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 제어부;를 포함하는 USB 멀티 호스트 장치.
  2. 제 1항에 있어서,
    상기 제어부는,
    상기 제 1 호스트가 복수 개인 경우, 상기 전달받은 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정하는 USB 멀티 호스트 장치.
  3. 제 1항에 있어서,
    상기 제어부는,
    상기 제 1 호스트 및 상기 제 2 호스트가 상기 제어부를 논리 네트워크 디바이스로 인식하도록 미리 정의된 패킷을 전송하는 USB 멀티 호스트 장치.
  4. 제 1항에 있어서,
    상기 제어부는,
    상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 상기 저장부로 전달하는 USB 멀티 호스트 장치.
  5. 제 1항에 있어서,
    상기 제어부는,
    상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송하는 USB 멀티 호스트 장치.
  6. 제 1항에 있어서,
    상기 제어부는,
    상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달하는 USB 멀티 호스트 장치.
  7. 제 1 호스트 및 제 2 호스트에 연결되는 복수 개의 업스트림 포트;
    상기 업스트림 포트를 통해 상기 제 1호스트에서 상기 제 2 호스트로 전달할 데이터를 저장하는 저장부; 및
    상기 저장부가 상기 데이터를 전달받는 경우 상기 데이터에 기초한 신호를 엔드 포인트를 통해 상기 제 2 호스트에 전송하고, 상기 저장된 데이터를 상기 제 2 호스트로 전달하는 제어부;를 포함하는 차량.
  8. 제 7항에 있어서,
    상기 제어부는,
    상기 제 1 호스트가 복수 개인 경우, 상기 전달받은 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정하는 차량.
  9. 제 7항에 있어서,
    상기 제어부는,
    상기 제 1 호스트 및 상기 제 2 호스트가 상기 제어부를 논리 네트워크 디바이스로 인식하도록 미리 정의된 패킷을 전송하는 차량.
  10. 제 7항에 있어서,
    상기 제어부는,
    상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 상기 저장부로 전달하는 차량.
  11. 제 7항에 있어서,
    상기 제어부는,
    상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송하는 차량.
  12. 제 7항에 있어서,
    상기 제어부는,
    상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달하는 차량.
  13. 제 1 호스트에서 제 2 호스트로 전달할 데이터를 저장하고;
    전달한 상기 데이터에 기초한 신호를 엔드 포인트를 통해 상기 제 2 호스트에 전송하고;
    상기 저장된 데이터를 상기 제 2 호스트로 전달하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
  14. 제 13항에 있어서,
    상기 제 1 호스트가 복수 개인 경우 상기 데이터에 기초하여 상기 데이터를 전달하는 호스트를 결정하는 것;을 더 포함하는 USB 멀티 호스트 장치의 제어방법.
  15. 제 13항에 있어서,
    상기 전송하는 것;은,
    상기 제 1 호스트 및 상기 제 2 호스트에 미리 정의된 패킷을 전송하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
  16. 제 13항에 있어서,
    상기 전달하는 것;은,
    상기 제 1 호스트가 OUT Bulk 엔드 포인트를 통해 상기 데이터를 전달하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
  17. 제 13항에 있어서,
    상기 전송하는 것;은,
    상기 제 2 호스트에 전송할 데이터에 기초한 신호를 IN Interrupt 엔드 포인트를 통해 전송하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
  18. 제 13항에 있어서,
    상기 전달하는 것;은,
    상기 제 2 호스트로 상기 데이터를 전송하는 경우 IN Bulk 엔드 포인트를 통해 전달하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
  19. 제 1 호스트에서 전달하는 패킷과 데이터를 제 1 논리 네트워크 디바이스를 통해 전달받고;
    상기 전달받은 패킷을 기초로 상기 데이터의 목적지를 결정하고;
    상기 목적지가 제 2 호스트인 경우 제 2 논리 네트워크 디바이스의 엔드 포인트를 통해 상기 제 2 호스트로 상기 데이터에 기초한 신호를 전송하고;
    상기 제 2 논리 네트워크 디바이스를 통해 상기 데이터를 상기 제 2 호스트로 전달하는 것;을 포함하는 USB 멀티 호스트 장치의 제어방법.
KR1020160044549A 2016-04-12 2016-04-12 Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법 KR101827704B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160044549A KR101827704B1 (ko) 2016-04-12 2016-04-12 Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법
US15/380,258 US10572398B2 (en) 2016-04-12 2016-12-15 USB multi-host device, vehicle including the USB multi-host device and method for controlling the USB multi-host device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160044549A KR101827704B1 (ko) 2016-04-12 2016-04-12 Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법

Publications (2)

Publication Number Publication Date
KR20170116679A KR20170116679A (ko) 2017-10-20
KR101827704B1 true KR101827704B1 (ko) 2018-03-22

Family

ID=59998208

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160044549A KR101827704B1 (ko) 2016-04-12 2016-04-12 Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법

Country Status (2)

Country Link
US (1) US10572398B2 (ko)
KR (1) KR101827704B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109638517A (zh) * 2018-12-21 2019-04-16 江西大乘汽车有限公司 一种轻卡车用usb接口结构
CN112799995B (zh) * 2021-01-14 2022-09-13 杭州新瀚光电科技有限公司 一种可控的usb主从模式互换的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248662A (ja) 2010-05-27 2011-12-08 Nec Corp マルチホストシステム
WO2015047945A1 (en) * 2013-09-26 2015-04-02 Unwired Technology Llc Flexible mobile device connectivity to automotive systems with usb hubs

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3045985B2 (ja) * 1997-08-07 2000-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 接続確立方法、通信方法、状態変化伝達方法、状態変化実行方法、無線装置、無線デバイス、及びコンピュータ
JP2000076038A (ja) * 1998-08-28 2000-03-14 Matsushita Electric Ind Co Ltd Usbハブ回路及びディスプレイ装置
US6389029B1 (en) * 1998-11-10 2002-05-14 Nortel Networks Limited Local area network incorporating universal serial bus protocol
US6675250B1 (en) * 2001-02-13 2004-01-06 Cisco Technology, Inc. Fault tolerant communications using a universal serial bus
US6732218B2 (en) * 2002-07-26 2004-05-04 Motorola, Inc. Dual-role compatible USB hub device and method
US7502878B1 (en) * 2003-06-27 2009-03-10 Cypress Semiconductor Corporation Method and apparatus for switching USB devices between multiple USB hosts
TW200506637A (en) 2003-08-07 2005-02-16 Ali Corp Host-to-host USB bridge
TWI221980B (en) * 2003-09-02 2004-10-11 Prolific Technology Inc Apparatus for multiple host access to storage media
TWI226551B (en) 2003-10-28 2005-01-11 Prolific Technology Inc Multi-function wireless bridge for USB and associated system
TWM274697U (en) 2005-03-10 2005-09-01 Ours Technology Inc Hub having host-to-host transmission function
US7523243B2 (en) 2006-04-14 2009-04-21 Standard Microsystems Corporation Multi-host USB device controller
US20080005262A1 (en) * 2006-06-16 2008-01-03 Henry Wurzburg Peripheral Sharing USB Hub for a Wireless Host
TWM309137U (en) * 2006-08-29 2007-04-01 Genesys Logic Inc Host bridging device in connection with SATA interface
TW200945043A (en) 2008-04-28 2009-11-01 Alcor Micro Corp Bridge device for transmitting data, its control chip and method thereof
US7769941B2 (en) * 2008-09-23 2010-08-03 Aten International Co., Ltd. USB matrix switch system
US7886106B2 (en) * 2008-11-11 2011-02-08 Aten International Co., Ltd. USB sharing switch with automatic switching capabilities
US7970976B2 (en) * 2009-03-01 2011-06-28 Qualcomm Incorporated Remote memory access using reversible host/client interface
US8447890B1 (en) 2009-10-30 2013-05-21 Cypress Semiconductor Corporation Operation of multiple masters/hosts through a hub
KR101502147B1 (ko) 2013-03-08 2015-03-13 김대환 네트워크 상에서 usb 호스트와 usb 디바이스 간의 통신 방법, 장치 및 기록매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248662A (ja) 2010-05-27 2011-12-08 Nec Corp マルチホストシステム
WO2015047945A1 (en) * 2013-09-26 2015-04-02 Unwired Technology Llc Flexible mobile device connectivity to automotive systems with usb hubs

Also Published As

Publication number Publication date
US10572398B2 (en) 2020-02-25
US20170293576A1 (en) 2017-10-12
KR20170116679A (ko) 2017-10-20

Similar Documents

Publication Publication Date Title
JP6400714B2 (ja) Usbハブを有する自動車システムとの柔軟なモバイルデバイス接続性
US8948923B2 (en) Interface in a vehicle and method for exchanging data
JP5085334B2 (ja) Usb・otgコントローラ
CN105122221B (zh) 用于围合移动设备的模块化坞站
TWI782919B (zh) 通用串列匯流排多主機端點反射器集線器
US20160371213A1 (en) Flexible mobile device connectivity to automotive systems with usb hubs
US7162566B2 (en) USB-based host-to-host networking method
US20050080973A1 (en) Peripheral device having a personal disk used for storing device drivers and driving method thereof
CN108009108B (zh) Usb集线器模块
US20180367504A1 (en) System, Apparatus And Method For Tunneling And/Or Multiplexing Via A Multi-Drop Interconnect
KR20140078161A (ko) Pci 익스프레스 스위치 및 이를 이용한 컴퓨터 시스템
KR101827704B1 (ko) Usb 멀티 호스트 장치, 그를 포함하는 차량 및 usb 멀티 호스트 장치의 제어방법
KR20220139790A (ko) 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치
JP2004535742A (ja) データを交換するためのバスシステム及び方法
CN210941352U (zh) 一种车载全液晶仪表的升级***和具有其的车辆
CN112688843A (zh) 用于多点互连上的对等通信的***、装置和方法
JP5913211B2 (ja) インタフェース装置、及び情報処理装置
JP4954832B2 (ja) 車載用通信システム
JP6052089B2 (ja) 複合型コンピュータシステム
US11374785B2 (en) Modular processor architecture of a cockpit and infotainment system for a vehicle
JP3792201B2 (ja) 入出力装置
CN118051454A (zh) 处理***、相关集成电路、设备及方法
KR20220021301A (ko) 차량용 클러스터의 소프트웨어 업데이트 장치 및 방법
JP2021081939A (ja) 車両用制御装置、車両用システム、及び車両用制御方法
JP2020052804A (ja) 回路装置、電子機器及び移動体

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