KR102309110B1 - Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법 - Google Patents

Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법 Download PDF

Info

Publication number
KR102309110B1
KR102309110B1 KR1020170037781A KR20170037781A KR102309110B1 KR 102309110 B1 KR102309110 B1 KR 102309110B1 KR 1020170037781 A KR1020170037781 A KR 1020170037781A KR 20170037781 A KR20170037781 A KR 20170037781A KR 102309110 B1 KR102309110 B1 KR 102309110B1
Authority
KR
South Korea
Prior art keywords
data
electronic device
vdm
header
type
Prior art date
Application number
KR1020170037781A
Other languages
English (en)
Other versions
KR102309110B9 (ko
KR20180108259A (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 KR1020170037781A priority Critical patent/KR102309110B1/ko
Priority to US15/926,932 priority patent/US10423566B2/en
Publication of KR20180108259A publication Critical patent/KR20180108259A/ko
Application granted granted Critical
Publication of KR102309110B1 publication Critical patent/KR102309110B1/ko
Publication of KR102309110B9 publication Critical patent/KR102309110B9/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
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72415User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories for remote control of appliances
    • 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
    • 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
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01RELECTRICALLY-CONDUCTIVE CONNECTIONS; STRUCTURAL ASSOCIATIONS OF A PLURALITY OF MUTUALLY-INSULATED ELECTRICAL CONNECTING ELEMENTS; COUPLING DEVICES; CURRENT COLLECTORS
    • H01R24/00Two-part coupling devices, or either of their cooperating parts, characterised by their overall structure
    • H01R24/60Contacts spaced along planar side wall transverse to longitudinal axis of engagement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/026Details of the structure or mounting of specific components
    • H04M1/0274Details of the structure or mounting of specific components for an electrical connector module
    • 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]
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01RELECTRICALLY-CONDUCTIVE CONNECTIONS; STRUCTURAL ASSOCIATIONS OF A PLURALITY OF MUTUALLY-INSULATED ELECTRICAL CONNECTING ELEMENTS; COUPLING DEVICES; CURRENT COLLECTORS
    • H01R2107/00Four or more poles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Telephone Function (AREA)

Abstract

다양한 실시 예에 따른 전자 장치 및 전자 장치의 동작 방법에서, 전자 장치는 하우징, 상기 하우징에 연결되거나, 상기 하우징을 통해 노출되고, 적어도 하나의 CC(Configuration Channel) 핀을 포함하는 USB 타입 C 커넥터, 상기 하우징의 내부에 배치되고, 상기 커넥터에 전기적으로 연결된 회로, 및 상기 하우징의 내부에 배치되고, 상기 회로와 전기적으로 연결된 프로세서를 포함하고, 상기 회로는 상기 CC 핀을 통해서 패킷을 송/수신하고, 상기 패킷은 메시지 헤더, 제 1 공급자 정의 메시지(VDM) 헤더, 및 제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더를 순차적으로 포함할 수 있다.
이외에도, 다양한 실시 예들이 가능하다.

Description

USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법{ELECTRONIC DEVICE AND METHOD FOR CONTROLLING EXTERNAL ELECTROINC DEVICE CONNECTED TO USB TYPE-C CONNECTOR}
본 발명의 다양한 실시 예는, 전자 장치 및 전자 장치의 동작 방법에 대한 것으로, 특히, USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 기술에 관한 것이다.
스마트 폰(smart phone), 태블릿 PC(tablet PC), PMP(portable multimedia player), PDA(personal digital assistant), 랩탑 PC(laptop personal computer) 및 웨어러블 기기(wearable device) 등의 다양한 전자 장치들이 보급되고 있다.
최근에는 다양한 전자 장치들에 외부 전자 장치가 유선으로 연결될 수 있는 포트를 구비하고 있다. 상기 포트들은 다양한 표준에 의해 규격화되고 있다. 다양한 표준들 중 가장 널리 이용되는 표준으로 범용 직렬 버스(universal serial bus, USB) 방식이 있다.
범용 직렬 버스(universal serial bus, 이하 USB)는 전자 장치와 외부 전자 장치를 연결하는 데 쓰이는 입출력 표준 방식으로써, 다양하게 활용되고 있다.
USB 타입 C 규격을 이용하여 외부 전자 장치와 연결되는 전자 장치는, USB 타입 C 규격에 정의된 구성 채널(configuration channel, 이하 CC)을 통하여 외부 전자 장치로 제어 신호를 송/수신할 수 있다. CC를 통하여 송/수신되는 신호들 중에는 VDM(vendor defined message)이라는 신호가 포함될 수 있다. VDM은 외부 전자 장치 또는 전자 장치의 제조사에게 할당된 신호이며, VDM은 외부 전자 장치 또는 전자 장치를 제어하는 신호를 송/수신하는데 이용될 수 있다. USB 규격에서는 VDM에 포함된 데이터의 크기를 최대 24 바이트로 하고 있는데, 이에 따라24 바이트보다 큰 용량을 갖는 제어 신호(또는, 데이터)를 구성 채널을 통해 전송함에 제약이 있을 수 있다.
전자 장치가 USB 타입 C를 통해 외부 전자 장치로부터 수신하는VDM에는 외부 전자 장치의 제조사 식별자를 포함할 수 있다. 하지만, 전자 장치는 하나의 제조사에서 제조하는 다양한 외부 전자 장치들 각각의 식별자를 개별적으로 확인할 수 없다. 예를 들어, 전자 장치와 USB 타입 C커넥터로 연결된 외부 전자 장치 내부에 복수의 제품(예를 들어, 제품 식별자(product id)로 구분될 수 있다)이 구비될 경우, 전자 장치 및 외부 전자 장치 간에 커넥터를 통해 송수신 되는 VDM 메시지가 어떤 제품에 대한 메시지인지 구별할 수 없다.
전자 장치는 USB 타입 C 커넥터로 연결된 다양한 외부 전자 장치들을 인증하는 동작을 수행할 수 있다. 인증을 위한 데이터의 경우, 암호화를 통해 암호화 되기 이전의 데이터보다 크기가 커질 수 있다. 이와 같이 외부 전자 장치들을 인증하는데 필요한 암호화된 데이터는 데이터 크기 측면에서 VDM을 이용하여 전송하는데 제약이 발생될 수 있다.
본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치의 동작 방법은 복수의 VDM들을 이용함으로써, 큰 용량을 갖는 데이터 또는 암호화된 인증 데이터를 전송할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치는 하우징, 상기 하우징에 연결되거나, 상기 하우징을 통해 노출되고, 적어도 하나의 CC(Configuration Channel) 핀을 포함하는 USB 타입 C 커넥터, 상기 하우징의 내부에 배치되고, 상기 커넥터에 전기적으로 연결된 회로, 및 상기 하우징의 내부에 배치되고, 상기 회로와 전기적으로 연결된 프로세서를 포함하고, 상기 회로는 상기 CC 핀을 통해서 패킷을 송/수신하고, 상기 패킷은 메시지 헤더, 제 1 공급자 정의 메시지(VDM) 헤더, 및 제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더를 순차적으로 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법은 적어도 하나의 CC(Configuration Channel)핀을 포함하는 USB 타입 C 커넥터에 외부 전자 장치가 연결되었는지 확인하는 과정, 상기 CC핀을 통해 상기 외부 전자 장치로부터 수신하는 정보에 기반하여 상기 외부 전자 장치의 장치 식별 정보를 확인하는 과정, 및 상기 외부 전자 장치의 인증을 위한 암호화 정보 또는 상기 외부 전자 장치의 제어를 위한 커맨드 정보가 포함된 VDM들을 상기 CC핀을 통하여 상기 외부 전자 장치로 전송하는 과정을 포함할 수 있다.
본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법은 복수의 VDM들을 이용함으로써, 큰 용량을 갖는 데이터의 경우에도 VDM을 이용하여 전송할 수 있도록 할 수 있다.
또한, 본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치의 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법은 VDM의 정의된 구조 내에서, 제품 식별자를 포함하는 VDM을 생성하므로, 전자 장치와 연결되는 외부 전자 장치의 종류를 정확하게 확인할 수 있다. 또한, 본 발명의 다양한 실시 예에 따른 전자 장치 및 전자 장치의 동작 방법은 큰 용량을 갖는 인증 데이터를 VDM을 이용하여 전송할 수 있어, 전자 장치와 연결된 외부 전자 장치를 인증할 수 있다.
도 1은 본 발명의 다양한 실시 예들에 따른 네트워크 환경 내의 전자 장치를 도시한다.
도 2는 본 발명의 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 3 및 도 4a는 다양한 실시 예들에 따른 전자 장치 및 외부 전자 장치와 연결되는 커넥터를 도시한 도면이다.
도 4b는 본 발명의 다양한 실시 예들에 다른 전자 장치의 커넥터의 핀 구조를 도시한 도면이다.
도 5는 본 발명의 다양한 실시 예들에 따른 전자 장치에서, CC 핀을 이용하여 데이터를 전송할 때, 전송되는 메시지 규격을 도시한 도면이다.
도 6은 본 발명의 다양한 실시 예에 따른 전자 장치에서, CC 핀을 이용하여 전송하는 VDM(vendor defined message)의 규격을 도시한 도면이다.
도 7은 본 발명의 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 8a 내지 도 8b는 본 발명의 다양한 실시 예에 따른 전자 장치에서, VDM 메시지를 전송할 때에 있어, 작은 크기를 갖는 데이터를 전송하는 일 실시 예를 도시한 도면이다.
도 9a 내지 도 9c는 본 발명의 다양한 실시 예에 따른 전자 장치에서, VDM 메시지를 전송할 때에 있어, 큰 크기를 갖는 데이터를 전송하는 일 실시 예를 도시한 도면이다.
도 10 내지 도 11은 본 발명의 다양한 실시 예에 따른 전자 장치에서, VDM 메시지를 이용하여 외부 전자 장치를 제어하는 일 실시 예를 도시한 도면이다.
도 12 내지 도 13은 본 발명의 다양한 실시 예에 따른 전자 장치에서, VDM 메시지를 이용하여 외부 전자 장치에 대한 인증을 수행하는 일 실시 예를 도시한 도면이다.
도 14는 본 발명의 다양한 실시 예에 따른 전자 장치의 동작 방법을 도시한 동작 흐름도이다.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 기재된다. 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서의 다양한 실시예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM, 상점의 POS(point of sales), 또는 사물 인터넷 장치 (예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다. 어떤 실시예에 따르면, 전자 장치는 가구, 건물/구조물 또는 자동차의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터, 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 플렉서블하거나, 또는 전술한 다양한 장치들 중 둘 이상의 조합일 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1을 참조하여, 다양한 실시예에서의, 네트워크 환경(100) 내의 전자 장치(101)가 기재된다. 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 및 통신 인터페이스(170)를 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 버스(110)는 구성요소들(110-170)을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지 또는 데이터)을 전달하는 회로를 포함할 수 있다. 프로세서(120)는, 중앙처리장치, 어플리케이션 프로세서, 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 프로세서(120)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다.
메모리(130)는, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 한 실시예에 따르면, 메모리(130)는 소프트웨어 및/또는 프로그램(140)을 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(141), 미들웨어(143), 어플리케이션 프로그래밍 인터페이스(API)(145), 및/또는 어플리케이션 프로그램(또는 "어플리케이션")(147) 등을 포함할 수 있다. 커널(141), 미들웨어(143), 또는 API(145)의 적어도 일부는, 운영 시스템으로 지칭될 수 있다. 커널(141)은, 예를 들면, 다른 프로그램들(예: 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)을 제어 또는 관리할 수 있다. 또한, 커널(141)은 미들웨어(143), API(145), 또는 어플리케이션 프로그램(147)에서 전자 장치(101)의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어(143)는, 예를 들면, API(145) 또는 어플리케이션 프로그램(147)이 커널(141)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(143)는 어플리케이션 프로그램(147)으로부터 수신된 하나 이상의 작업 요청들을 우선 순위에 따라 처리할 수 있다. 예를 들면, 미들웨어(143)는 어플리케이션 프로그램(147) 중 적어도 하나에 전자 장치(101)의 시스템 리소스(예: 버스(110), 프로세서(120), 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 부여하고, 상기 하나 이상의 작업 요청들을 처리할 수 있다. API(145)는 어플리케이션(147)이 커널(141) 또는 미들웨어(143)에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 창 제어, 영상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수(예: 명령어)를 포함할 수 있다. 입출력 인터페이스(150)는, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 또는 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다.
디스플레이(160)는, 예를 들면, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 또는 마이크로 전자기계 시스템 (MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이(160)는, 예를 들면, 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 디스플레이(160)는, 터치 스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다. 통신 인터페이스(170)는, 예를 들면, 전자 장치(101)와 외부 장치(예: 제 1 외부 전자 장치(102), 제 2 외부 전자 장치(104), 또는 서버(106)) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크(162)에 연결되어 외부 장치(예: 제 2 외부 전자 장치(104) 또는 서버(106))와 통신할 수 있다.
무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 한 실시예에 따르면, 무선 통신은, 예를 들면, 도 1의 element 164로 예시된 바와 같이, WiFi(wireless fidelity), LiFi(light fidelity), 블루투스, 블루투스 저전력(BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. 한실시예에 따르면, 무선 통신은 GNSS를 포함할 수 있다. GNSS는, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 "Beidou") 또는 Galileo, the European global satellite-based navigation system일 수 있다. 이하, 본 문서에서는, "GPS"는 "GNSS"와 상호 호환적으로 사용될 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(162)는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다.
제 1 및 제 2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102,104), 또는 서버(106)에서 실행될 수 있다. 한 실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(106))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(106))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 다양한 실시예에 따른 전자 장치(201)의 블록도이다. 전자 장치(201)는, 예를 들면, 도 1에 도시된 전자 장치(101)의 전체 또는 일부를 포함할 수 있다. 전자 장치(201)는 하나 이상의 프로세서(예: AP)(210), 통신 모듈(220), (가입자 식별 모듈(224), 메모리(230), 센서 모듈(240), 입력 장치(250), 디스플레이(260), 인터페이스(270), 오디오 모듈(280), 카메라 모듈(291), 전력 관리 모듈(295), 배터리(296), 인디케이터(297), 및 모터(298) 를 포함할 수 있다. 프로세서(210)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(210)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(210)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 한 실시예에 따르면, 프로세서(210)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서를 더 포함할 수 있다. 프로세서(210)는 도 2에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈(221))를 포함할 수도 있다. 프로세서(210) 는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드)하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
통신 모듈(220)(예: 통신 인터페이스(170))와 동일 또는 유사한 구성을 가질 수 있다. 통신 모듈(220)은, 예를 들면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227), NFC 모듈(228) 및 RF 모듈(229)를 포함할 수 있다. 셀룰러 모듈(221)은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 가입자 식별 모듈(예: SIM 카드)(224)을 이용하여 통신 네트워크 내에서 전자 장치(201)의 구별 및 인증을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 프로세서(210)가 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시예에 따르면, 셀룰러 모듈(221)은 커뮤니케이션 프로세서(CP)를 포함할 수 있다. 어떤 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈(229)은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시예에 따르면, 셀룰러 모듈(221), WiFi 모듈(223), 블루투스 모듈(225), GNSS 모듈(227) 또는 NFC 모듈(228) 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다. 가입자 식별 모듈(224)은, 예를 들면, 가입자 식별 모듈을 포함하는 카드 또는 임베디드 SIM을 포함할 수 있으며, 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리(230)(예: 메모리(130))는, 예를 들면, 내장 메모리(232) 또는 외장 메모리(234)를 포함할 수 있다. 내장 메모리(232)는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브 (SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리(234)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리(234)는 다양한 인터페이스를 통하여 전자 장치(201)와 기능적으로 또는 물리적으로 연결될 수 있다.
센서 모듈(240)은, 예를 들면, 물리량을 계측하거나 전자 장치(201)의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), 컬러(color) 센서(240H)(예: RGB(red, green, blue) 센서), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K), 또는 UV(ultra violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 센서 모듈(240)은, 예를 들면, 후각(e-nose) 센서, 일렉트로마이오그라피(EMG) 센서, 일렉트로엔씨팔로그램(EEG) 센서, 일렉트로카디오그램(ECG) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시예에서는, 전자 장치(201)는 프로세서(210)의 일부로서 또는 별도로, 센서 모듈(240)을 제어하도록 구성된 프로세서를 더 포함하여, 프로세서(210)가 슬립(sleep) 상태에 있는 동안, 센서 모듈(240)을 제어할 수 있다.
입력 장치(250)는, 예를 들면, 터치 패널(252), (디지털) 펜 센서(254), 키(256), 또는 초음파 입력 장치(258)를 포함할 수 있다. 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 터치 패널(252)은 제어 회로를 더 포함할 수도 있다. 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다. (디지털) 펜 센서(254)는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 쉬트를 포함할 수 있다. 키(256)는, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 초음파 입력 장치(258)는 마이크(예: 마이크(288))를 통해, 입력 도구에서 발생된 초음파를 감지하여, 상기 감지된 초음파에 대응하는 데이터를 확인할 수 있다.
디스플레이(260)(예: 디스플레이(160))는 패널(262), 홀로그램 장치(264), 프로젝터(266), 및/또는 이들을 제어하기 위한 제어 회로를 포함할 수 있다. 패널(262)은, 예를 들면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 패널(262)은 터치 패널(252)과 하나 이상의 모듈로 구성될 수 있다. 한 실시예에 따르면, 패널(262)은 사용자의 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(또는 포스 센서)를 포함할 수 있다. 상기 압력 센서는 터치 패널(252)과 일체형으로 구현되거나, 또는 터치 패널(252)과는 별도의 하나 이상의 센서로 구현될 수 있다. 홀로그램 장치(264)는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터(266)는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(201)의 내부 또는 외부에 위치할 수 있다.
인터페이스(270)는, 예를 들면, HDMI(272), USB(274), 광 인터페이스(optical interface)(276), 또는 D-sub(D-subminiature)(278)를 포함할 수 있다. 인터페이스(270)는, 예를 들면, 도 1에 도시된 통신 인터페이스(170)에 포함될 수 있다. 추가적으로 또는 대체적으로, 인터페이스(270)는, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다. 본 발명의 다양한 실시예에 따른 USB(274)) USB 타입 C에 정의된 인터페이스일 수 있다. 본 발명의 다양한 실시예에 따르면, USB(274) 는 USB 타입 C 규격의 커넥터를 이용하여 전자 장치(200)에 연결된 외부 전자 장치(미도시)와 연결될 수 있다.
오디오 모듈(280)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 오디오 모듈(280)의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스(145)에 포함될 수 있다. 오디오 모듈(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286), 또는 마이크(288) 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다. 카메라 모듈(291)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, 이미지 시그널 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등)를 포함할 수 있다. 전력 관리 모듈(295)은, 예를 들면, 전자 장치(201)의 전력을 관리할 수 있다. 한 실시예에 따르면, 전력 관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC, 또는 배터리 또는 연료 게이지를 포함할 수 있다. PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 배터리 게이지는, 예를 들면, 배터리(296)의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 배터리(296)는, 예를 들면, 충전식 전지 및/또는 태양 전지를 포함할 수 있다.
인디케이터(297)는 전자 장치(201) 또는 그 일부(예: 프로세서(210))의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동, 또는 햅틱 효과 등을 발생시킬 수 있다. 전자 장치(201)는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어플로(mediaFloTM) 등의 규격에 따른 미디어 데이터를 처리할 수 있는 모바일 TV 지원 장치(예: GPU)를 포함할 수 있다. 본 문서에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치(예: 전자 장치(201))는 일부 구성요소가 생략되거나, 추가적인 구성요소를 더 포함하거나, 또는, 구성요소들 중 일부가 결합되어 하나의 개체로 구성되되, 결합 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
도 3 및 도 4a는 다양한 실시예들에 따른 전자 장치 및 외부 전자 장치와 연결되는 포트를 도시한 도면이다.
다양한 실시예에 따르면, 전자 장치(300)는 스마트폰, 태블릿 PC 등 휴대용 전자 장치로 구현될 수 있으나, 이에 한정되지는 않으며, 외부 전자 장치가 연결될 수 있는 커넥터(예를 들어, 310)를 구비하고, 상기 커넥터를 통해 연결된 외부 전자 장치와 데이터(예를 들어, 오디오 데이터 등 멀티미디어 데이터, 기타 제어 명령 등)를 송수신할 수 있는 전자 장치라면 본 발명에 따른 전자 장치(300)가 될 수 있다.
일 실시 예에 따르면, 전자 장치(300)는 도 1의 전자 장치(101) 또는 도 2의 전자 장치(201)의 구성 요소 전부 또는 적어도 일부 동일할 수 있다.
다양한 실시예에 따르면, 전자 장치(300)는 하우징(housing)의 일면에 형성된 개구(opening) 및 개구와 이어진 홀(hole)을 포함하며, 홀 내부에 커넥터(310)가 배치될 수 있다. 도 3에 도시된 바와 같이, 전자 장치(300)의 하우징의 아래쪽 일면에 개구 및 홀이 형성되고 그 내부에 커넥터(310)가 배치될 수 있으나, 커넥터(310)의 배치 위치는 이에 한정되지 않으며, 전자 장치(300)의 하우징의 다른 일면에 배치될 수도 있다.
전자 장치(300)의 커넥터(310)에는 외부 전자 장치의 커넥터(420)가 삽입될 수 있다. 외부 전자 장치의 종류에는 한정이 없으며, 전자 장치(300)에 전원을 공급하는 배터리 팩, 전자 장치(300)와 통신을 수행하는 장치, 또는 전자 장치(300)와 연결되는 외장 메모리 등이 모두 외부 전자 장치에 해당될 수 있다.
외부 장치의 커넥터(420)는 상기 홀을 통해 수용되어 전자 장치(300)의 커넥터(310)와 물리적으로 접촉되고, 물리적 접촉에 따라 전기적으로 연결될 수 있다. 다양한 실시예에 따르면, 전자 장치(300)의 커넥터(310) 및 홀 구조는 리버서블(reversible) 한 구조일 수 있다. 즉, 커넥터(310)는 외부 전자 장치가 삽입되는 방향(예를 들어, 전자 장치(300)의 아래쪽에서 위쪽 방향)과 수직인 제1방향 및 제1방향과 반대인 제2방향에 대해 서로 대칭일 수 있다.
도 4를 참고 하면, 외부 전자 장치의 커넥터(420)의 일면(예를 들어, A면)이 전자 장치(300)의 전면(예를 들어, 디스플레이가 위치한 면)과 평행한 방향으로 전자 장치(300)의 커넥터(310)에 삽입될 수 있으며, 마찬가지로 외부 장치의 커넥터(420)의 다른 일면(예를 들어, B면)이 전자 장치(300)의 전면과 평행한 방향으로 삽입될 수도 있다.
커넥터(310)는 복수의 단자를 포함할 수 있으며, 외부 장치의 커넥터(420)가 서로 다른 방향으로 삽입될 경우, 전자 장치(300)의 커넥터(310)의 각 단자에 전기적으로 연결되는 외부 전자 장치의 각 단자는 다를 수 있다.
다양한 실시예에 따르면, 커넥터(310)는 직렬 범용 버스(universal serial bus, 이하 USB) 규격에 따른 커넥터 일 수 있으며, 보다 구체적으로 USB 타입 C 규격의 커넥터일 수 있다. 다만, 본 발명의 다양한 실시예들이 USB 타입 C에 한정되는 것은 아니며, HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 표준 규격의 유선 인터페이스 또는 비규격의 유선 인터페이스에 적용될 수 있다. 더 나아가, 소스(전력을 제공하는 장치)와 싱크(전력을 공급 받는 장치) 사이 또는 DFP(downstream facing port, 데이터를 제공하는 장치) 와 UFP(upstream facing port, 데이터를 수신하는 장치) 사이에 어떤 장치들이 연결되었는지 자동으로 감지하는데 이용될 수 있는 데이터(예를 들면, 타입 C 규격에 포함된 CC1, CC2 핀에서 전송되는 데이터)를 전송할 수 있는 인터페이스는 본 발명의 다양한 실시예들이 적용될 수 있는 인터페이스이다.
도 4b는 본 발명의 다양한 실시예들에 다른 전자 장치의 커넥터의 핀 구조를 도시한 도면이다.
다양한 실시예에 따르면, 전자 장치(예: 전자 장치(300))의 커넥터는 USB 타입 C 규격에 따를 수 있으며, 도 4b는 전자 장치의 커넥터가 USB 타입 C 규격을 따르는 경우, 커넥터가 구비할 수 있는 복수의 단자들에 대해서 도시되어 있다. 도 4b에 도시된 바와 같이, USB 타입 C 규격의 커넥터는 좌측 A라인 및 우측 B라인에 각각 12개 단자를 구비할 수 있으며, 서로 대칭인 형태일 수 있다.
A6/B6 및 A7/B7단자를 통해 데이터 신호가 전송될 수 있다. 전자 장치(또는, 외부 전자 장치)는 A6/B6단자(D+)를 통해 외부 전자 장치(또는, 전자 장치)로 데이터를 전송할 수 있다.
여러 동작 모드에서 각 단자의 역할은 USB 타입 C 표준에 의해 정의되어 있는 바, 각 단자의 역할에 대해서는 그 설명을 생략하기로 한다.
전자 장치(300)와 외부 전자 장치가 연결되면, CC1 및 CC2 단자를 통해 전기적 신호(예를 들어, 디지털 ID 또는 저항 ID)가 교환되고, 그에 따라 전자 장치 및 외부 장치는 연결된 다른 장치의 종류를 감지할 수 있다. 또한, 연결된 장치의 감지 결과에 따라 전자 장치는 DFP(downstream facing port) 모드, UFP(upstream facing port) 모드로 동작할 수 있다. DFP 모드는 데이터를 제공하는 모드를 의미할 수 있으며, UFP 모드는 데이터를 수신하는 모드를 의미할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치는 USB 타입 C 커넥터를 통해 연결된 외부 전자 장치와 CC1 또는 CC2 단자(이하, CC 핀으로 통칭한다)를 통해 데이터를 송/수신할 수 있다. CC 핀은 소스(전력을 제공하는 장치)와 싱크(전력을 공급 받는 장치) 또는 DFP(데이터를 제공하는 장치)와 UFP(데이터를 수신하는 장치) 사이에 어떤 장치들이 연결되었는지 자동으로 감지하는데 이용될 수 있다.
도 5 내지 도 6에서는, CC핀을 통해 송/수신하는 데이터를 포함하는 메시지 및 메시지 구조에 대해서 서술한다.
전자 장치(300)는 CC 핀을 통해서, 외부 전자 장치와 데이터를 송/수신함에 있어서, BMC(biphase mark coding) 통신 규격을 이용한 PD 메시지(power delivery message)를 송/수신할 수 있다. BMC 통신 규격은 신호를 물리 계층에서 전송할 때 쓰이는 방법 중 하나로, 당업자에게 용이한 내용으로 자세한 내용은 생략한다. 도 5는 본 발명의 다양한 실시예들에 따른 전자 장치에서, CC 핀을 이용하여 PD 메시지를 전송할 때, PD 메시지의 메시지 규격을 도시한 도면이다. 도 5를 참조하면, PD 메시지는 프리엠블(510), SOP(520, start of packet), 메시지 헤더(530), 데이터 오브젝트들(540), CRC(cyclic redundancy check, 550), EOP(560, end of the packet)으로 순차적으로 구성될 수 있다.
프리엠블(510)은 전자 장치(300)와 외부 전자 장치 간 데이터를 전송하는 타이밍을 동기화 하기 위해 이용되는 데이터를 의미할 수 있다.
SOP(520)는 패킷의 시작을 알리는 데이터를 의미할 수 있다.
메시지 헤더(530)는 도 5에 도시된 PD 메시지의 전체적인 정보를 포함하는 데이터를 의미할 수 있다. 상술하면, 메시지 헤더(530)는 총 16bits 로 구성될 수 있으며, 본 발명의 일 실시예에 따르면, 메시지 헤더(530)는 표 1과 같은 구조를 가질 수 있다.
비트 순서 영역 이름(Field name)
15 빈 공간(Reserved)
14-12 데이터 오브젝트의 개수
11-9 메시지 식별자
8 전원 역할(Source or Sink)
7-6 Specification Revision
5 데이터 역할(DFP or UFP)
4 빈 공간(Reserved)
3-0 메시지 타입
표 1을 참조하면, 본 발명의 다양한 실시예에 따른 전자 장치가 CC핀을 통하여 송/수신하는 PD 메시지에는, 데이터 오브젝트의 개수, 전자 장치의 전원 역할(전원을 외부 전자 장치로 공급하는지, 수신하는지 여부), 전자 장치의 전원 공급(power delivery) 스펙의 버전, 전자 장치의 데이터 역할(데이터를 외부 전자 장치로 전송하는지, 수신하는지 여부)에 대한 데이터가 포함될 수 있다.
데이터 오브젝트(540)에는, PD 메시지에 포함된 데이터들이 포함된 영역을 의미할 수 있다. 본 발명의 다양한 실시예에 따르면, 전자 장치에 연결된 외부 전자 장치의 인증 정보, 또는 제어 정보 등이 데이터 오브젝트(540)에 포함될 수 있다.
CRC(550)는 PD 메시지가 오류가 있는지를 확인하기 위한 값이 포함된 영역을 의미할 수 있다. EOP(560)는 PD 메시지의 끝을 지시하는 영역을 의미할 수 있다.
표 1을 참조하면, 메시지 헤더(530)의 하위 3-0 비트에는 메시지 타입에 대해서 정의되어 있다. 메시지 타입에 대해서는 표 2에 기재되어 있다.
Bits 3/2/1/0 메시지 타입
0000 해당 없음(Reserved)
0001 Source Capabilities message type
0010 Request
0011 BIST
0100 Sink Capabilities message type
0101 ~ 1110 해당 없음(Reserved)
1111 공급자가 정의한 메시지 타입(VDM)
본 발명의 다양한 실시예에 따르면, 전자 장치(또는, 외부 전자 장치)는 외부 전자 장치(또는, 전자 장치)에 VDM(vendor defined message)을 전송할 수 있다. VDM은 도 5에 관련된 설명에서 도시된 PD message의 메시지 헤더(530)에 정의된 메시지 타입이 VDM인 PD 메시지를 의미할 수 있다. USB 타입C의 Power Delivery Specification에는, VDM의 구조에 대해서 정의되어 있는데, 아래의 도 6에 대한 설명에서 VDM의 구조에 대해서 서술한다.
도 6은 본 발명의 다양한 실시 예에 따른 전자 장치에서, CC 핀을 이용하여 전송하는 VDM(Vendor Defined Message)의 규격을 도시한 도면이다. 도 6을 참조하면, VDM은 헤더(610), VDM 헤더(620) 및 VDOs(630, Vendor Defined Data Objects)로 구성될 수 있다.
헤더(610)는 도 5의 메시지 헤더(530)와 동일할 수 있다.
VDM 헤더(620) 및 VDOs(630)는 도 5의 데이터 오브젝트들(540) 영역에 포함되는 데이터일 수 있다. VDOs(630)는 VDM에 포함된 데이터들이 할당된 영역을 의미할 수 있다. 본 발명의 다양한 실시 예에 따르면, 전자 장치에 연결된 외부 전자 장치의 인증 정보, 또는 제어 정보 등이 VDOs(630)에 포함될 수 있다.
본 발명의 다양한 실시 예에 따르면, VDM 헤더(620)는 아래의 표 3과 같은 형태로 정의될 수 있다.
비트들 파라미터 설명
31...16 공급자의 식별자 VDM 메시지를 생성한 장치를 제조한 제조사의 고유한 식별자
15 VDM 타입 1: Structured VDM
0: Unstructured VDM
14..0 데이터 공급자에 의해 정의된 데이터가 포함됨.
표 3을 참조하면, VDM은 Structured VDM과 Unstructured VDM으로 나뉘어질 수 있다. Structured VDM은 USB 타입C의 Power Delivery Specification에 정의된 대체 모드(alternative mode)와 관련된 메시지를 의미할 수 있다. Structured VDM은 신원(identity) 탐색, SVID(standard vendor identification) 탐색, 모드 탐색, 모드 진입, 모드 탈출, 주의 메시지 등으로 구성될 수 있다. Unstructured VDM은 USB 타입 C의 Power Delivery Specification에 별도로 정의되지는 않았으며, 공급자에 의해 정해지는 메시지 전송의 수단으로 이용될 수 있다. Unstructured VDM은 표준에 별도로 정의되지는 아니하였으나, 크기는 최대24바이트로 정의된다. 제한된 크기를 가지는 VDM 메시지를 이용하여 전자 장치의 커넥터에 포함되는 CC(Configuration Channel) 핀을 통하여 데이터 송수신을 수행하는 경우, 제한된 크기로 인해서 많은 데이터를 전송하지 못할 수 있다. 도 6에 도시된 VDO들은 각각 4 바이트씩 차지하도록 정의되어 있다. 또한, 하나의 VDM은 6개의 VDO들을 포함할 수 있다. 따라서, 하나의 VDM 을 이용하여 데이터를 송수신하는 경우, 최대 24 바이트 크기를 갖는 데이터만 송수신할 수 있다.
더 나아가, 표 3의 VDM 헤더와 같이, 통상의 VDM 헤더의 경우 공급자에 대한 식별자는 포함하지만, 동일한 공급자나 제조사에서 만들어지는 경우 개별 제품에 대한 식별자는 포함하지 않는다. 따라서, 하나의 공급자가 복수의 제품들을 공급하는 경우, 복수의 제품들 각각에 대한 개별적인 식별을 수행하지 못할 수 있다.
다양한 실시 예에 따른 전자 장치는, VDM 에 새로운 필드를 포함시킴으로써 큰 용량을 갖는 데이터 또는 암호화된 인증 데이터를 전송할 수 있다.
다양한 실시 예에 따른 전자 장치는, 외부 전자 장치 내부에 복수의 제품이 구비될 경우, VDM 메시지를 통해 외부 전자 장치 내부에 포함된 제품을 구별할 수 있다.
하기 내용에서는 VDM에 포함될 수 있는 새로운 필드에 대한 구체적인 실시 예 및 이를 이용하는 전자 장치의 구체적인 실시 예에 대해서 서술한다.
도 7은 본 발명의 다양한 실시 예들에 따른 전자 장치의 블록도이다.
도 7을 참조하면, 본 발명의 다양한 실시 예에 따른 전자 장치(700)은 프로세서(710), 회로(720) 및 커넥터(730)로 구성될 수 있다.
커넥터(730)는 USB(universal serial bus) 타입 C를 지원하는 커넥터로서, CC(configuration channel) 핀을 포함할 수 있다. 커넥터(730)에 대한 구체적인 설명은 도 4b에서 자세히 서술한 바 있다.
회로(720)는 커넥터(730)와 전기적으로 연결되는 회로를 의미할 수 있다. 본 발명의 다양한 실시 예에 따르면, 회로(720)는 프로세서(710)와도 전기적으로 연결될 수 있다. 본 발명의 다양한 실시 예에 따르면 회로(720)는 CC 핀을 통하여 전기적으로 연결되는 외부 전자 장치(740)와 PD 메시지를 송/수신하도록 제어할 수 있다. 이를 위해서, 회로(720)는 내부에 CC 로직(및/또는 PD로직)을 포함할 수 있다. 예를 들어, 회로(720)는 외부 전자 장치(740)로부터 수신한 PD 메시지의 경우, 별도의 I2C 통신 채널을 이용하여 프로세서(710)로 전달할 수도 있다.
프로세서(710)는 외부 전자 장치(740)가 전송한 PD 메시지를 이용하여 다양한 기능을 수행할 수 있다. 본 발명의 다양한 실시 예에 따르면, 프로세서(710)는 외부 전자 장치(740)가 전송한 PD 메시지를 이용하여 외부 전자 장치(740)에 대한 인증을 수행할 수 있다. 본 발명의 다양한 실시 예에 따르면, 프로세서(710)는 외부 전자 장치가 전송한 적어도 하나의VDM 메시지를 수신함에 대응하여, 외부 전자 장치(740)로 응답 메시지를 전송할 수 있다. 응답 메시지의 구조에 대해서는 도 8b 및 도 9b에서 서술한다.
프로세서(710)는 외부 전자 장치(740)로 데이터를 전송하기 위해서, 데이터가 포함된 PD 메시지를 외부 전자 장치(740)로 전송하도록 회로(720)를 제어할 수 있다. 본 발명의 다양한 실시 예에 따르면, 프로세서(410)는 PD 메시지에서, 메시지 타입들 중 하나인 VDM을 이용하여 외부 전자 장치(740)로 데이터를 전송할 수 있다.
본 발명의 다양한 실시 예에 따르면, 프로세서(710)는 하나의 VDM 또는 복수의 VDM들을 이용하여 데이터를 외부 전자 장치에 전송할 수 있다.
예를 들어, 프로세서(710)는 전송하고자 하는 데이터의 크기가 지정된 크기(예를 들어, 24바이트) 이하인 경우, 하나의 VDM을 이용하여 데이터를 외부 전자 장치(740)로 전송할 수 있다. 상기의 VDM 구조에 대해서는 도 8a 내지 도 8b에서 서술한다.
예를 들어, 프로세서(710)는 전송하고자 하는 데이터의 크기가 지정된 크기(예를 들어, 24바이트)를 초과하는 경우, 복수의 VDM들을 이용하여 데이터를 외부 전자 장치(740)로 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, 프로세서(710)는 데이터의 크기에 따라 전송할 VDM의 수를 결정하고, 복수의 VDM들을 이용하여 데이터를 외부 전자 장치(740)에 전송할 수 있다. 프로세서(710)는 분할된 데이터를 포함하는 VDM들을 외부 전자 장치(740)에 전송함으로써, 큰 용량을 갖는 데이터를 CC 핀을 통하여 외부 전자 장치(740)로 전송할 수 있다.
다양한 실시 예에 따르면, 프로세서(710) 및 회로(720)는 하나의 프로세서 및 회로로 구성될 수 있다. 또한, 프로세서(710)는 통신 모듈(예: 통신 모듈(220)) 또는 통신 인터페이스(예: 통신 인터페이스(170)) 중 어느 하나에 포함될 수도 있다.다양한 실시 예에 따르면, USB 타입 C의 인터페이스를 갖고, PD(power delievery) 기능을 지원하는 외부 전자 장치(740)의 경우, 별도의 회로, 모듈의 추가 없이 전자 장치(700)와 CC핀을 통하여 통신을 수행할 수 있다.
큰 용량의 데이터를 송수신하는데 이용될 수 있는 VDM 구조에 대해서는 도 9a 내지 도 9c에서 서술한다. 아래의 도 9a 내지 도 9c 에서는, 전자 장치(700)(또는, 외부 전자 장치(740))가 큰 용량을 같은 데이터를 CC 핀을 통하여 외부 전자 장치(740))(또는, 전자 장치(700))로 전송하기 위해서, 복수의 VDM들을 전송하는 내용에 대해서 서술한다. 특히, 복수의 VDM들을 전송하기 위해서, 필수적인 데이터 구조에 대해서 정의한다. 복수의 VDM 들을 전송하는 내용에 앞서, 크기가 작아 하나의 VDM을 이용하여 전송하는 경우의 VDM 구조에 대해서 서술한다.
도 8a는 한 개의 VDM을 이용하여 전송할 수 있는 데이터를 전송하는데 이용되는 VDM의 구조를 도시한 도면이다. 도 8b는 도 8a에 도시된 VDM을 수신한 후, 전송하는 응답 메시지의 구조를 도시한 도면이다. 작은 크기를 갖는 데이터는 도 7과 관련된 설명에서 서술한 바와 같이, 지정된 크기보다 작은 크기를 갖는 데이터를 의미할 수 있다. 예를 들면, 1 개의 VDM에서 최대로 포함 가능한 24 바이트 이하의 크기를 갖는 데이터를 작은 크기를 갖는 데이터로 통칭할 수 있다.
도 8a를 참조하면, VDM은 메시지 헤더(810), 제 1 VDM 헤더(820) 및 제 2 VDM 헤더(830)를 포함할 수 있다. 메시지 헤더(810)는 도 5에 도시된 메시지 헤더(530) 및 도 6에 도시된 헤더(610)와 동일한 데이터를 포함하는 헤더를 의미할 수 있다.
제 1 VDM 헤더(820)는 도 6에 도시된 VDM 헤더(620)와 동일한 데이터를 의미할 수 있다.
일 실시 예에 따르면, 전자 장치(700)와 외부 전자 장치(740)와 송수신 하는 VDM은 VOD 데이터 영역(540,630)에 제 2 VDM 헤더830)를 더 포함할 수 있다.
다양한 실시 예에 따르면, 제 2 VDM 헤더(830)는 연결된 제품의 식별자(product ID)를 포함할 수 있다.
다양한 실시 예에 따르면, 제 2 VDM 헤더(830)는 데이터의 크기에 따라 분류된 메시지 타입에 대한 지시자를 포함할 수 있다. 예를 들어, 제 2 VDM 헤더(830)는 데이터의 크기가 지정된 크기보다 작은 경우, 0이라는 값을 갖는 지시자를 포함할 수 있다. 다른 예를 들어, 제 2 VDM 헤더(830)는 데이터의 크기가 지정된 크기를 초과하는 경우, 1 이라는 값을 갖는 지시자를 포함할 수 있다.
다양한 실시 예에 따르면, 전자 장치(700)(예: 프로세서(710) 또는 회로(720))는 연결된 외부 전자 장치(740)의 종류(vendor, product) 및/또는 외부 전자 장치(740)가 지원하는 기능 및/또는 송수신할 데이터의 종류(예:제어 데이터 또는 인증 데이터) 및/또는 송수신할 데이터의 크기(예: 임계 크기값 기준)를 기준으로 메시지 타입에 대한 지시자를 결정할 수 있다.
다양한 실시 예에 따르면, 프로세서(710)는 외부 전자 장치에서 수신한 VDM의 VDM 헤더(820)에 포함된 데이터 타입을 확인할 수 있다. 프로세서(710)는 확인된 데이터 타입에 기반하여 VDM에 포함된 데이터를 추출할 수 있다. 예를 들어, 프로세서(710)는 VDM 헤더(820)에 포함된 VDM 타입에 대한 값을 Unstructured VDM 타입에 대한 값(예:0)으로 확인할 수 있다. 이에 따라 프로세서(710)는 제 2 VDM 헤더(830)에 포함된 데이터를 더 획득할 수 있다.
다양한 실시 예에 따르면, 프로세서(710)는 외부 전자 장치에서 수신한 VDM의 제 2 VDM 헤더(830)에 포함된 데이터에서 데이터 타입을 확인할 수 있다. 프로세서(710)는 제 2 VDM 헤더(830)의 데이터 타입이 long data(예: 1) 일 경우,
프로세서(710)는 외부 전자 장치에서 수신한 VDM 이후, 복수의 VDM을 추가적으로(예를 들어 제 2 VDM 헤더(830)의 VDM 메시지의 개수만큼) 수신할 수 있다. 프로세서(710)는 수신한 복수의 VDM들 각각에서 획득한 데이터들을 결합할 수 있다. 상기 결합된 데이터는 외부 전자 장치에서 전송하고자 한 데이터와 동일한 데이터일 수 있다.
다양한 실시 예에 따르면, 제 2 VDM 헤더(830)는 VDM이 포함하는 명령 타입에 대한 정보를 포함할 수 있다. 본 발명의 다양한 실시 예에 따르면 명령 타입은 크게 4개로 구분될 수 있다. 명령 타입은 개시 명령(INITIATOR), 응답(RESPONDER ACK), 무응답(RESPONDER NAK), 사용중(BUSY) 상태를 포함할 수 있다. 상기 4 개의 타입은 통신 분야에서 많이 이용되는 내용으로 자세한 설명을 생략한다.
또한, 제 2 VDM 헤더(830)는 전송될 VDM의 개수에 대한 정보도 포함할 수 있다. 아래의 표 4에는 제 2 VDM 헤더(830)에 대한 메시지 구조가 기재되어 있다.
Bits 영역
31...16 공급자 식별자(PID) 연결된 장치의 PID
15 데이터 타입 0: short data
1: long data
14...13 명령 타입 00b: INITIATOR
01b: RESPONDER ACK
10b: RESPONDER NAK
11b: RESPONDER BUSY
12 빈 영역(reserved)
11...8 VDM 메시지의 개수(0~15개) 0000b...1111b
7...0 데이터 데이터의 값
다양한 실시 예에 따르면, 표 4를 참조하면, 제품 식별자(PID)는 연결된 외부 전자 장치의 식별자를 의미할 수 있다. 제품 식별자는 제품마다 다르게 설정될 수 있다. 동일한 제조사라도, 제품이 서로 다른 경우, 제품 식별자는 각각 다르게 설정될 수 있다.
다양한 실시 예에 따르면, 제 2 VDM 헤더(830)에 포함되는 데이터 타입은 전송하고자 하는 데이터의 크기에 따라서, short data 및 long data로 구분될 수 있다. Short data는 데이터의 크기가 지정된 값 이하인 데이터를 의미할 수 있다. Long data는 데이터의 크기가 지정된 값 이상인 데이터를 의미할 수 있다. 일 실시 예에 따르면, short data는 한 개의 VDM으로 전달 될 수 있는 데이터를 의미하고, long data는 하나 이상의 VDM으로 전달 될 수 있는 데이터를 의미할 수 있다.
본 발명의 다양한 실시 예에 따르면, 하나의 VDM이 최대로 포함할 수 있는 데이터의 크기인 24 바이트 이하인 데이터는, short data로 설정될 수 있으며, 24 바이트를 초과하는 데이터는 long data로 설정될 수 있다. 다양한 실시 예에 따르면, 전자 장치(700)(예:프로세서(710) 또는 회로(720))는 외부 전자 장치(740)로 전송할 메시지 타입을 결정할 수 있다. 외부 전자 장치(740) 는 전자 장치(700)로부터 수신한 메시지 타입에 기반하여, 전자 장치(700)로 전송할 메시지 타입을 결정할 수 있다.
도 8b를 참조하면, 응답 메시지는 메시지 헤더(810), VDM 헤더(820) 및 제 2 VDM 응답 헤더(840)를 포함할 수 있다.
다양한 실시 예에 따르면, 제 2 VDM 응답 헤더(840)는 전자 장치의 제품 식별자(PID), 데이터 크기에 따른 분류를 지시하는 지시자, 명령 타입, VDM 메시지들 중 현재 전송된 VDM 메시지의 순서를 포함할 수 있다. 상기 VDM 메시지의 순서는 복수의 VDM들을 이용하여 데이터를 전송할 때 이용될 수 있다. 도 8b는 작은 크기를 갖는 데이터를 포함하는 VDM에 대한 응답 메시지이므로, 현재 전송된 VDM 메시지의 순서는 1에 해당될 수 있다. 아래의 표 5에는, 제 2 VDM 응답 헤더(840)의 메시지 구조가 정리되어 있다.
Bits 영역
31...16 공급자 식별자(PID) 연결된 장치의 PID
15 데이터 타입 0: short data
1: long data
14...13 명령 타입 00b: INITIATOR
01b: RESPONDER ACK
10b: RESPONDER NAK
11b: RESPONDER BUSY
12...4 빈 영역(reserved)
3...0 현재 VDM의 순서(최대 15개의 VDM들 중 현재 전송 완료된 VDM의 순서) 0000...1111
상기 도 8a 내지 도 8b에서 서술한 내용을 바탕으로, 큰 크기를 갖는 데이터를 전송하는 실시 예를 도 9a 내지 도 9c를 이용하여 서술한다.
도 9a는 복수의 VDM들을 이용하여 전송되는 데이터를 전송하는데 이용되는 VDM의 구조를 도시한 도면이다. 일 실시 예에 따르면, VDM은 메시지 헤더(910), 제 1 VDM 헤더(920), 제 2 VDM 헤더(930), 데이터 헤더(940), VDO들(950)를 포함할 수 있다.
큰 크기를 갖는 데이터는 도 7과 관련된 설명에서 서술한 바와 같이, 지정된 크기보다 큰 크기를 갖는 데이터를 의미할 수 있다. 예를 들면, 1 개의 VDM에서 최대로 포함 가능한 24 바이트 이상의 크기를 갖는 데이터를 작은 크기를 갖는 데이터로 통칭할 수 있다. 상기 큰 데이터는 하나의 VDM을 이용해서 송/수신할 수 없으며, 복수의 VDM을 이용하여 송/수신할 수 있다. 도 9a와 도 8a를 비교해보면, 복수의 VDM을 이용하여 데이터를 전송하는 경우, VDM은 도 8a에 도시된 VDM에서, 데이터 헤더(940) 및 VDO들(950)를 추가적으로 포함할 수 있다.
다양한 실시 예에 따르면, 데이터 헤더(940)는 현재 전송되는 VDM의 순서, VDM들이 포함하는 데이터의 크기, 현재 VDM에 포함된 데이터의 일부의 크기에 대한 정보를 포함할 수 있다. 아래에 기재된 표 6에는 데이터 헤더(940)의 구조에 대해서 기재되어 있다.
Bits 영역(Field) 값(Value)
31...28 현재 전송되는 VDM 순서 0000 ~ 1111
27...16 빈 영역(reserved)
15...8 총 데이터의 크기(0~255bytes) 00000000 ~ 11111111
7...0 현재 VDM에 포함된 데이터의 크기(Max: 16 bytes or 20bytes) 00000000 ~ 11111111
다양한 실시 예에 따르면, 현재 전송되는 VDM의 순서는 연속적으로 전송되는 VDM들 중, 먼저 보내지는 순서를 의미할 수 있다. 예를 들어, 총 16개의 VDM 메시지가 전송되는 상황을 가정하면, 8번째로 전송되는 VDM 메시지에서, 현재 전송되는 VDM 순서에 대응하는 값은 0111에 해당될 수 있다. 일 실시 예에 따르면, 연속으로 전송되는 VDM들 중 마지막으로 전송되는 VDM이 전송된 후 VDM 순서는 초기화 될 수 있다.
현재 VDM에 포함된 데이터의 크기는 VDM들 중 처음 전송되는 VDM은 16바이트가 최대이며, 그 뒤에 전송되는 VDM들은 20바이트가 최대일 수 있다. 상기 이유에 대해서는 도 9c에 기재된 VDM 메시지를 참조하면, 처음 전송되는 VDM을 제외한 나머지 VDM들에는 제 2 VDM 헤더(930)가 포함되지 않을 수 있기 때문이다. 일 실시 예에 따르면, 대용량 데이터를 전송하기 위해 연속적으로 보내지는 VDM에는 제 2 VDM 헤더(930)이 포함되지 않을 수 있다. 상기 내용은 하나의 예시에 불과하며, 처음 전송되는 VDM이 아닌 VDM들 중 적어도 하나 이상의 VDM에 제 2 VDM 헤더(930)가 포함될 수 있다.
본 발명의 다양한 실시 예에 따르면, 데이터 헤더(940) 이후에 전송되는 VDOs(Vendor Defined Objects)에는, 데이터의 일부가 포함될 수 있다.
본 발명의 다양한 실시 예에 따르면, VDM은 추가 정보 필드를 더 포함할 수 있다. 추가 정보 필드에는 다양한 정보가 포함될 수 있으며, 본 발명의 다양한 실시 예에 따른 VDM은 데이터 트레일러(960)가 포함된 추가 정보 필드를 포함할 수 있다. 데이터 트레일러(960)는 데이터 트레일러(960)가 포함된 VDM의 체크섬(checksum) 정보를 포함할 수 있다. 상기 데이터 트레일러(960)에 포함된 체크섬 정보를 이용하여 VDM의 무결성을 검증할 수 있다.
도 9b는 도 9a에 도시된 VDM을 수신한 후, 전송하는 응답 메시지의 구조를 도시한 도면이다. 도 9b에 도시된 응답 메시지를 참조하면, 응답 메시지는 메시지 헤더(910), VDM 헤더(920), 제 2 VDM 응답 헤더(970) 및 데이터 응답 헤더(980)를 포함할 수 있다. 도 8b에 도시된 응답 메시지와 비교해서, 데이터 응답 헤더(980)가 추가되었음을 확인할 수 있다.
다양한 실시 예에 따르면, 데이터 응답 헤더(980)는 큰 크기를 갖는 데이터를 전송하는데 이용되는 VDM에 대한 응답 메시지에 포함될 수 있다. 본 발명의 다양한 실시 예에 따르면, 데이터 응답 헤더(980)는 작은 크기를 갖는 데이터(지정된 크기보다 작은 데이터)를 전송하는데 이용되는 VDM에 대한 응답 메시지에는 포함되지 않을 수 있다. 다양한 실시 예에 따르면, 데이터 응답 헤더(980)는 현재 VDM에서 실제 전달된 데이터의 크기 및 데이터를 수신한 전자 장치(700)에서 계산한 체크섬 결과를 포함할 수 있다. 데이터 응답 헤더(980)에 대한 메시지 구조는 아래의 표 7에 기재되어 있다.
Bits Field
31...24 현재 VDM에 포함된 데이터 크기
23...16 빈 영역(reserved)
15,,,0 체크섬(checksum)
도 10 내지 도 11은 본 발명의 다양한 실시 예에 따른 전자 장치에서, VDM 메시지를 이용하여 외부 전자 장치를 제어하는 일 실시 예를 도시한 도면이다.
일 실시 예에 따르면, 전자 장치(1010)는 도 1의 전자 장치(101) 또는 도 2의 전자 장치(201)의 구성 요소 전부 또는 적어도 일부 동일할 수 있다.
도 10 내지 11에는 전자 장치(1010)가 short data로 정의된 데이터를 CC 채널을 통해 전송함으로써, 외부 전자 장치(1020)를 제어하는 실시 예에 대해서 기재되어 있다. 본 발명의 다양한 실시 예에 따르면, 외부 전자 장치(1020)에 포함된 팬(fan, 1022)을 제어하기 위한 커맨드 정보가 포함된 데이터는 short type 데이터로 정의될 수 있다. 더 나아가, 외부 전자 장치(1020)에 포함된 팬(1022)을 제어하기 위한 커맨드 정보가 포함된 데이터는 하나의 VDM을 이용하여 외부 전자 장치(1020)로 전송될 수 있다.
본 발명의 다양한 실시 예에 의하면, 전자 장치(1010)는 CC 채널을 이용하여 전달되는 VDM 메시지(예: short data VDM)를 통해 외부 전자 장치(1020)의 내부 기능 모듈을 제어할 수 있다. 외부 전자 장치는 내부 기능 모듈의 제어 메시지 송수신을 위해, 별도의 데이터 통신 모듈(예: USB, UART 등)을 구비하지 않아도 될 수 있다. 실시 예에 따르면, 전자 장치(1010)는 외부 전자 장치(1020)의 종류를 인식하고, 제어가 가능하다고 판단되면, 제어 메시지를 전달할 수 있다.
도 10을 참조하면, 예를 들어, 전자 장치(1010)는 CC 채널을 이용하여 외부 전자 장치(1020)와 연결되어 있음을 확인할 수 있다. 외부 전자 장치(1020)는 팬(1022)를 포함하고 있으며, 외부 전자 장치(1020)는 전자 장치(1010)의 온도에 기반하여 전자 장치(1010)로부터 전송되는 VDM 메시지(예: short data VDM)에 기반하여, 팬(1022)의 동작 여부 및 팬(1022)의 동작 속도를 결정할 수 있다.
전자 장치(1010)(예: 프로세서(710))는 프레임 워크(framework) 계층에 팬 컨트롤 매니저(10111) 및 집적 회로 드라이버(1012)를 포함할 수 있으며, 커널 계층에는 CC(configuration channel) 집적 회로(1013)를 포함할 수 있다. 집적 회로 드라이버(1012)는 도 7에서의 회로(720) 또는 CC집적 회로(1013)를 제어하기 위한 것이다. CC 집적 회로 (1013)는 예를 들어, 도7의 회로(720)에 포함될 수 있다. CC 집적 회로 드라이버(1012)는 CC 집적 회로(1013)를 통해 외부 전자 장치(1020)에 포함된 CC 집적 회로(1021)와 연결을 수행할 수 있으며, VDM 메시지를 송/수신하도록 제어할 수 있다.
다양한 실시예에 따르면, CC 집적 회로 드라이버(1012)는 CC 집적 회로(1013)의 내부에 구현될 수도 있다.
팬(1022)을 제어하는데 이용되는 데이터는 24바이트 이내의 데이터로, 전자 장치(1010) 또는 외부 전자 장치(1020)는 도 8a 내지 도 8b에 기재된 VDM을 통한 요청 메시지(예: 도 8a에 도시된 메시지) 및 응답 메시지(예: 도 8b에 도시된 메시지)를 이용하여 팬(1022)을 제어할 수 있다.
도 11은 전자 장치(1010)와 외부 전자 장치(1020)간 연결 수행 및 외부 전자 장치(1020)에 포함된 팬(1022)의 제어 수행에 대한 구체적인 실시 예를 도시하고 있다.
도 11을 참조하면, 동작 1101에서, 전자 장치(1010)는 외부 전자 장치(1020)에, 식별 정보 탐색 메시지(discover identity message)를 전송할 수 있다.
동작 1102에서 외부 전자 장치(1020)는 상기 식별 정보 탐색 메시지에 대응하여, 외부 전자 장치(1020)의 제조사 식별자(vendor ID), 제품 식별자(product ID)가 포함된 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
동작 1103에서 전자 장치(1010)는 VID, PID를 전달 받고, SVID(standard or vendor id)를 요청하는 메시지를 외부 전자 장치(1020)에 전송할 수 있다.
동작 1104에서 외부 전자 장치(1020)는 SVID를 요청하는 메시지의 수신에 대응하여 외부 전자 장치(1020)에 포함된 SVID를 전자 장치(1010)에 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, SVID는 외부 전자 장치(1020)가 지원할 수 있는 모드의 식별자를 의미할 수 있다. 예를 들어, 외부 전자 장치(1020)가 디스플레이 모드 및 대체 모드(또는, 악세서리 모드)를 지원하는 경우, 외부 전자 장치(1020)의 SVID는 총 2개가 될 수 있으며, SVID1=OxFFO1(디스플레이 모드), SVID2=Ox04E8(악세서리 모드)가 외부 전자 장치(1020)의 SVID가 될 수 있다. 전자 장치(1010)는 외부 전자 장치(1020)가 전송한 SVID를 확인하고, 외부 전자 장치가 총 2개의 모드(디스플레이 모드, 악세서리 모드)를 지원할 수 있음을 확인할 수 있다.
동작 1105에서, 전자 장치(1010)는 악세서리 모드(SVID=0x04E8)로 진입하기 위해서, 수행될 수 있는 모드를 확인하는 VDM을 외부 전자 장치(1020)로 전송할 수 있다.
동작 1106에서, 외부 전자 장치(1020)는 특정 모드(Ox01)로 진입할 수 있다는 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
동작 1107에서, 전자 장치(1010)는 특정 모드(0x01)로 진입하는 명령이 포함된 VDM을 외부 전자 장치(1020)로 전송할 수 있으며, 동작 1108에서, 외부 전자 장치는 전자 장치(1010)으로부터 수신한 VDM에 대응하여, 특정 모드로 진입할 수 있다.
실시 예에 따르면, 이 때, 전자 장치(1010)는 외부 전자 장치(1020)를 활용한 서비스(특정 모드에 대응하는 서비스일 수 있다)를 제공할 수 있다. 서비스는 SW 및 HW로 구성될 수 있다. 예를 들어, 상기 동작 1101 내지 동작 1108을 통해, 전자 장치가 디스플레이포트(displayport, SVID=OxFFO1) 모드로 진입하기로 결정되면, 전자 장치는 장치 내부의 디스플레이포트 서비스(예: DisplayPort SW 및 HW)을 활성화 할 수 있다.
예를 들어, 전자 장치가 상기 동작 1101 내지 동작 1108과정을 통해, 특정 벤더의 악세서리 모드(예: 삼성 악세서리 모드, SVID=Ox04E8)로 진입하기로 결정되면, 전자 장치는 장치 내부의 악세서리 서비스(예: 삼성 악세서리의 팬 제어 기능 등)를 활성화 할 수 있다.
일 실시 예에 따르면, 상기 서비스는 상기 CC 채널 및 상기 VDM 메시지를 통해 외부 전자 장치를 제어하는 기능을 포함할 수 있다.
다양한 실시 예에 따르면, 전자 장치(1010)는 전자 장치의 온도에 기반하여 외부 전자 장치(1020)에 포함된 팬의 동작을 결정할 수 있다. 예를 들어, 팬은 크게 4가지 모드(동작 하지 않는 모드, 제 1 세기 모드, 제 2 세기 모드, 제 3 세기 모드)로 동작할 수 있고, 전자 장치(1010)는 팬이 어떤 모드로 동작할지 지시하는 메시지가 포함된 VDM을 외부 전자 장치(1020)로 전송할 수 있다. 즉, 전자 장치(1010)가 전송하고자 하는 데이터는 지정된 크기(예를 들면, 24 바이트) 이내의 데이터로, 단일의 VDM을 이용하여 전송할 수 있다. 동작 1109에서, 전자 장치(1010)는 외부 전자 장치(1020)에 팬의 동작을 지시하는 데이터가 포함된 하나의 VDM을 전송할 수 있다. 동작 1110에서, 외부 전자 장치(1020)는 수신한 VDM을 이용하여 팬을 제어하고, 팬의 정보를 외부 전자 장치로(1020)로 전송할 수 있다.
동작 1111에서, 전자 장치(1010)는 외부 전자 장치와의 연결을 차단할 것을 지시하는 메시지를 외부 전자 장치(1020)에 전송할 수 있고, 동작 1112에서, 외부 전자 장치(1020)는 전자 장치(1010)로부터 수신한 메시지에 따라서, 팬의 동작 모드를 종료할 수 있다.
도 12는 전자 장치에서 외부 전자 장치에 대한 인증을 수행하는 일 실시 예를 도시한 도면이다.
도 12에는 전자 장치(1010)가 long data로 정의된 데이터를 CC 채널을 통해 전송함으로써, 외부 전자 장치(1020)(예: 액세서리)를 제어하는 실시 예에 대해서 기재되어 있다. 본 발명의 다양한 실시 예에 따르면, 외부 전자 장치(1020)의 인증 정보가 포함된 데이터 또는 인증 정보가 암호화된 데이터는 long type 데이터로 정의될 수 있다. 더 나아가, 인증 정보가 포함된 데이터 또는 인증 정보가 암호화된 데이터는 복수의 VDM을 이용하여 외부 전자 장치(1020)로 전송될 수 있다.
도 12를 참조하면, 1201 동작에서, 전자 장치(1010)는 외부 전자 장치(1020)에, 식별 정보 탐색 메시지 (discover identity message)를 전송할 수 있다.
동작 1202에서, 외부 전자 장치(1020)는 상기 식별 정보 탐색 메시지에 대응하여, 외부 전자 장치(1020)의 제조사 식별자(vendor ID), 제품 식별자(Product ID)가 포함된 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
동작 1203에서, 전자 장치(1010)는 VID, PID를 전달 받고, SVID를 요청하는 메시지를 외부 전자 장치(1020)에 전송할 수 있다.
동작 1204에서, 외부 전자 장치(1020)는 SVID를 요청하는 메시지의 수신에 대응하여 외부 전자 장치(1020)에 포함된 SVID를 전자 장치(1010)에 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, SVID는 외부 전자 장치(1020)가 지원할 수 있는 모드의 식별자를 의미할 수 있다. 도 12에서는, SVID가 0x04E8인 경우를 가정하여 기재한다. 예를 들어, SVID가 0x04E8인 경우, 특정 제조사에서 제조한 악세서리 제품이라는 것을 의미할 수 있다.
동작 1205에서, 전자 장치(1010)는 수신한 SVID에 대한 모드 정보를 요청할 수 있다. 동작 1206에서, 외부 전자 장치(1020)는 전자 장치(1010)가 요청한 모드 정보를 전송할 수 있다.
동작 1207에서, 전자 장치(1010)는 수신한 모드 정보를 확인하고, 특정 모드로 진입하라는 명령이 포함된 VDM을 외부 전자 장치(1020)에 전송할 수 있다. 동작 1208에서, 외부 전자 장치(1020)는 특정 모드로 진입하라는 명령에 대한 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
이 때, 전자 장치(1010)는 외부 전자 장치(1020)를 활용한 서비스(특정 모드에 대응하는 서비스일 수 있다)를 제공할 수 있다. 일 실시 예에 따르면, 전자 장치(1010)는 외부 전자 장치(1020)의 인증을 수행하고, 인증된 외부 전자 장치(1020)에 한해서 서비스를 제공할 수 있다. 아래에는, 외부 전자 장치(1020)를 인증하는 방식에 대해서 서술한다.
한 실시 예에 따르면, 전자 장치(1010)는 상기 동작 1201내지 동작 1204 , 또는 상기 동작1201 내지 동작1208에서 수신한 외부 전자 장치의 정보(예: vid, svid, 또는 모드 등)에 따라, 인증 과정을 추가로 더 수행할 지 결정하는 동작(미도시)을 포함할 수 있다. 일 실시 예에 따르면 인증 동작을 수행하기로 결정되면 이하의 동작 1209 내지 동작 1212을 수행하고, 인증 동작을 수행하지 않기로 결정되면 이하의 동작 1209 내지 동작 1212 을 수행하지 않을 수 있다. 일 실시 예에 따르면, 인증 동작 진행 여부를 결정하는 동작(미도시)는 생략될 수 있다.
다양한 실시 예에 따르면, 동작 1209에서, 전자 장치(1010)는 외부 전자 장치(1020)에 저장된 인증서(certificate)를 요청하는 VDM을 전송할 수 있다. 인증서를 요청하는 데이터는 지정된 크기보다 작은 데이터일 수 있다. 예를 들어, 전자 장치(1010)는 도 8a에 도시된 short type VDM또는 long type VDM을 이용하여 외부 전자 장치(1020)로 저장된 인증서(certificate)를 요청할 수 있다.
일 실시 예에 따르면, 동작 1210에서, 외부 전자 장치(1020)는 전자 장치(1010)에 인증서가 포함된 데이터를 전송할 수 있다. 인증서가 포함된 데이터는 지정된 크기보다 큰 데이터일 수 있다. 예를 들어, 외부 전자 장치(1020)는 도 9a에 도시된 long type VDM을 이용하여 전자 장치(1010)로 인증서가 포함된 데이터를 전송할 수 있다.
일 실시 예에 따르면, 동작 1211에서, 전자 장치(1010)는 난수(random number)를 생성할 수 있으며, 생성된 난수를 외부 전자 장치(1020)에 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, 난수는 16바이트 이내에서 생성될 수 있다. 따라서, 전자 장치(1010)는 도 8a에 도시된 short type VDM을 이용하여 난수를 외부 전자 장치(1020)로 전송할 수 있다.
일 실시 예에 따르면, 외부 전자 장치(1020)는 수신한 난수에 대한 암호화를 수행할 수 있다. 암호화된 난수는 외부 전자 장치(1020)를 인증하는데 이용될 수 있다. 동작 1212에서, 외부 전자 장치(1020)는 암호화된 난수를 전자 장치(1010)로 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, 암호화된 난수를 포함하는 데이터는 지정된 크기 이상(예: 약 40바이트 이상)의 크기를 가질 수 있고, 상기 데이터는 하나의 VDM을 이용해서 전송할 수 없다. 따라서, 외부 전자 장치(1020)는 도 9a에 도시된 long type VDM을 이용하여 암호화된 난수를 전자 장치(1010)로 전송할 수 있다.일 실시 예에 따르면, 전자 장치(1010)는 암호화된 난수 및 인증서를 이용하여, 외부 전자 장치(1020)에 대한 인증을 수행할 수 있다. 일 실시 예에 따르면, 동작 1213에서, 외부 전자 장치(1020)에 대한 인증이 완료되고, 외부 전자 장치(1020)가 유효한 장치로 인증된 경우, 전자 장치(1010)는 악세서리 정보를 요청하는 신호를 외부 전자 장치(1020)에 전송할 수 있다. 일 실시 예에 따르면, 동작 1214에서, 외부 전자 장치(1020)는 외부 전자 장치(1020)에 저장된 악세서리 정보를 전자 장치(1010)에 전송할 수 있다.
일 실시 예에 따르면, 악세서리 정보는 악세서리 식별자, 사용자 식별자, 디바이스 식별자 등 다양한 정보를 포함할 수 있다. 본 발명의 다양한 실시 예에 따르면, 악세서리 정보를 이용하여 전자 장치(1010)의 사용자에게 다양한 기능을 제공할 수 있다. 본 발명의 다양한 실시 예에 따르면, 악세서리 정보는 약 196바이트 전후의 크기를 가질 수 있다. 따라서, 악세서리 정보는 도 8a에 도시된 long type VDM을 이용하여 전송될 수 있다.
다양한 실시 예에 따라, 상기 동작 1211 내지 동작 1214 중 일부 동작은 생략될 수도 있다.
도 12에서 설명된 VDM은 USB 타입 C 표준에 정의된 unstructured vendor defined message일 수 있다.
도 13은 복수의 SVID를 갖는 외부 전자 장치에 대한 인증을 수행하는 일 실시 예를 도시한 도면이다.
도 13을 참조하면, 동작 1301에서, 전자 장치(1010)는 외부 전자 장치(1020)에, 식별 정보 탐색 메시지(Discover identity message)를 전송할 수 있다.
동작 1302에서, 외부 전자 장치(1020)는 상기 식별 정보 탐색 메시지에 대응하여, 외부 전자 장치(1020)의 SVID(standard id or vendor id), 제조사 식별자(vendor id), 제품 식별자(product id)가 포함된 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
동작 1303에서, 전자 장치(1010)는 SVID, VID, PID를 전달 받고, SVID를 요청하는 메시지를 외부 전자 장치(1020)에 전송할 수 있다.
동작 1304에서, 외부 전자 장치(1020)는 SVID를 요청하는 메시지의 수신에 대응하여 외부 전자 장치(1020)에 포함된 SVID를 전자 장치(1010)에 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, SVID는 외부 전자 장치(1020)가 지원할 수 있는 모드의 식별자를 의미할 수 있다. 예를 들어, 외부 전자 장치(1020)가 디스플레이 모드 및 대체 모드(또는, 악세서리 모드)를 지원하는 경우, 외부 전자 장치(1020)의 SVID는 총 12개가 될 수 있으며, 12개의 SVID들 중 두 개의 SVID는 각각 SVID1=OxFFO1(디스플레이 모드), SVID2=Ox04E8(악세서리 모드)일 수 있다. 전자 장치(1010)는 외부 전자 장치(1020)가 전송한 SVID(SVID1=OxFFO1(디스플레이 모드), SVID2=Ox04E8(악세서리 모드))를 확인하고, 외부 전자 장치가 총 2개의 모드(디스플레이 모드, 악세서리 모드)를 지원할 수 있음을 확인할 수 있다.
동작 1305에서, 전자 장치(1010)는 디스플레이 모드(SVID=0xFF01)로 진입하기 위해서, 모드 진입을 요청하는 신호를 포함하는 VDM을 외부 전자 장치(1020)로 전송할 수 있다. 동작 1306에서, 외부 전자 장치(1020)는 특정 모드(Ox01)로 진입할 수 있다는 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
동작 1307에서, 전자 장치(1010)는 디스플레이 모드의 상태를 요청하는 신호를 외부 전자 장치(1020)에 전송할 수 있다. 동작 1308에서, 외부 전자 장치는 디스플레이 모드의 상태를 전자 장치(1010)에 전송할 수 있다.
동작 1309에서, 전자 장치(1010)는 디스플레이 모드 상태를 확인한 후, 외부 전자 장치(1020)에 디스플레이 모드의 시작을 요청하는 신호를 외부 전자 장치(1020)에 전송할 수 있다. 동작 1310에서, 외부 전자 장치(1020)는 디스플레이 모드를 시작한 후, 응답 메시지를 외부 전자 장치(1020)에 전송할 수 있다. 도 13에 도시된 디스플레이 모드는 예를 들어, 인증 절차의 수행 없이, 외부 전자 장치(1020) 또는 전자 장치(1010)가 바로 제공할 수 있는 기능 중 하나를 의미할 수 있다.
동작 1313에서, 전자 장치(1010)는 특정 모드를 탐색하는 신호를 외부 전자 장치(1020)에 전송할 수 있다. 동작 1314에서, 외부 전자 장치(1020)는 특정 모드(예: 악세서리 모드)가 존재하는지 여부를 알리는 응답 메시지를 전자 장치(1010)에 전송할 수 있다. 동작 1315에서, 전자 장치(1010)는 특정 모드로 진입하라는 명령이 포함된 VDM을 외부 전자 장치(1020)에 전송할 수 있다. 동작 1316에서, 외부 전자 장치(1020)는 응답 메시지를 전자 장치(1010)에 전송할 수 있다.
이 때, 전자 장치(1010)는 외부 전자 장치(1020)를 활용한 서비스(특정 모드에 대응하는 서비스일 수 있다)를 제공할 수 있다. 다만, 전자 장치(1010)는 외부 전자 장치(1020)의 인증을 수행하고, 인증된 외부 전자 장치(1020)에 한해서 서비스를 제공할 수 있다. 아래에는, 외부 전자 장치(1020)를 인증하는 실시 예에 대해서, 기술한다.
한 실시 예에 따르면, 전자 장치(1010)는 상기 동작 1301내지 동작 1304 , 또는 상기 동작1301 내지 동작1316에서 수신한 외부 전자 장치의 정보(예:vid, svid, 또는 모드 등)에 따라, 인증 과정을 추가로 더 수행할 지 결정하는 동작(미도시)을 포함할 수 있다. 일 실시 예에 따르면 인증 동작을 수행하기로 결정되면 이하의 동작 1317 내지 동작 1322을 수행하고, 인증 동작을 수행하지 않기로 결정되면 이하의 동작 1317 내지 동작 1322을 수행하지 않을 수 있다. 일 실시 예에 따르면, 인증 동작 진행 여부를 결정하는 동작(미도시)는 생략될 수 있다.
동작 1317에서, 전자 장치(1010)는 외부 전자 장치(1020)에 저장된 인증서(certificate)를 요청하는 VDM을 전송할 수 있다. 인증서를 요청하는 데이터는 지정된 크기보다 작은 데이터일 수 있다. 따라서, 전자 장치(1010)는 도 8a에 도시된 short type VDM을 이용할 수 있다.
동작 1318에서, 외부 전자 장치(1020)는 전자 장치(1010)에 인증서가 포함된 데이터를 전송할 수 있다. 인증서가 포함된 데이터는 지정된 크기보다 큰 데이터일 수 있다. 따라서, 외부 전자 장치(1020)는 도 9a에 도시된 long type VDM을 이용할 수 있다.
동작 1319에서, 전자 장치(1010)는 난수(random number)를 생성할 수 있으며, 생성된 난수를 외부 전자 장치(1020)에 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, 난수는 16바이트 이내에서 생성될 수 있다. 따라서, 전자 장치(1010)는 도 8a에 도시된 short type VDM을 이용하여 난수를 외부 전자 장치(1020)로 전송할 수 있다.
외부 전자 장치(1020)는 수신한 난수에 대한 암호화를 수행할 수 있다. 암호화된 난수는 외부 전자 장치(1020)를 인증하는데 이용될 수 있다. 동작 1320에서, 외부 전자 장치(1020)는 암호화된 난수를 전자 장치(1010)로 전송할 수 있다. 본 발명의 다양한 실시 예에 따르면, 암호화된 난수는 40바이트 정도의 크기를 가질 수 있고, 하나의 VDM을 이용해서 전송할 수 없다. 따라서, 외부 전자 장치(1020)는 도 9a에 도시된 long type VDM을 이용하여 암호화된 난수를 전자 장치(1010)로 전송할 수 있다.
전자 장치(1010)는 암호화된 난수 및 인증서를 이용하여, 외부 전자 장치(1020)에 대한 인증을 수행할 수 있다. 동작 1321에서, 외부 전자 장치(1020)에 대한 인증이 완료되고, 외부 전자 장치(1020)가 유효한 장치로 인증된 경우, 전자 장치(1010)는 외부 전자 장치(1020)의 정보를 요청하는 신호를 외부 전자 장치(1020)에 전송할 수 있다. 동작 1322에서, 외부 전자 장치(1020)는 외부 전자 장치(1020)에 저장된 정보를 전자 장치(1010)에 전송할 수 있다.
본 발명의 다양한 실시 예에 따르면, 전자 장치(1010)는 외부 전자 장치(1020)의 정보를 이용하여 사용자에게 다양한 기능을 제공할 수 있다. 본 발명의 다양한 실시 예에 따르면, 외부 전자 장치(1020)의 정보는 약 196바이트 전후의 크기를 가질 수 있다. 따라서, 외부 전자 장치(1020)의 정보는 도 8a에 도시된 long type VDM을 이용하여 전송될 수 있다.
도 13에서 설명된 VDM은 USB 타입 C 표준에 정의된 unstructured vendor defined message일 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치는 하우징, 상기 하우징에 연결되거나, 상기 하우징을 통해 노출되고, 적어도 하나의 CC(Configuration Channel) 핀을 포함하는 USB 타입 C 커넥터(310 또는 730), 상기 하우징의 내부에 배치되고, 상기 커넥터에 전기적으로 연결된 회로(720), 및 상기 하우징의 내부에 배치되고, 상기 회로와 전기적으로 연결된 프로세서(710)를 포함하고, 상기 회로는 상기 CC 핀을 통해서 패킷을 송/수신하고, 상기 패킷은 메시지 헤더(810 또는 910), 제 1 공급자 정의 메시지(VDM) 헤더(820 또는 920), 및 제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더(830 또는 930)를 순차적으로 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 데이터 타입은 제 1 타입 또는 제 2 타입을 포함하며, 상기 제 2 타입의 데이터 크기는 상기 제 1 타입의 데이터 크기보다 클 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 데이터 타입이 제 1 타입인 경우, 상기 패킷은 인증, 호환성, 상기 전자 장치와 연결된 외부 전자 장치의 제어 신호 중 적어도 하나와 관련된 데이터(940, 950)를 더 포함하고, 상기 데이터는 상기 제 2 VDM 헤더(830) 이후에 포함될 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 데이터 타입이 제 2 타입인 경우, 상기 패킷은 상기 제 2VDM 헤더(930) 다음에 순차적으로, 데이터 헤더(940), 인증, 호환과 관련된 데이터(950) 중 일부를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 패킷은 상기 데이터 중 일부 다음에 데이터 트레일러(960)를 포함하고, 상기 데이터 트레일러는 상기 데이터의 무결성에 대한 정보를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 제 2 VDM 헤더(830)는 상기 패킷이 개시 명령(INITIATOR), 응답 ACK(RESPONSE ACK), 무응답 ACK(RESPONSE NAK) 및 사용중(BUSY) 상태인지 지시하는 명령 타입(command type)을 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치는 모바일 컴퓨팅 디바이스(mobile computing device), 독(dock), 또는 악세서리 장치(accessory device) 중 어느 하나일 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 제 2 VDM 헤더(830)는 상기 VDM들의 개수를 지시하는 지시자를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 데이터 헤더(940)는 상기 패킷에 포함된 VDM들 중, 상기 데이터 헤더가 포함된 VDM의 순서를 지시하는 지시자, 상기 패킷에 포함된 데이터의 크기 및 상기 데이터 헤더가 포함된 VDM에 포함된 데이터의 크기를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 데이터 타입이 상기 제 1 타입인 경우, 데이터를 상기 제 2 VDM 헤더(830)에 결합할 수 있다.
도 14는 본 발명의 다양한 실시 예에 따른 전자 장치의 동작 방법을 도시한 동작 흐름도이다.
일 실시 예에 따른 전자 장치는 도 7의 전자 장치(700)의 구성 요소 전부 또는 적어도 일부 포함할 수 있다.
도 14를 참조하면, 본 발명의 다양한 실시 예에 따른 전자 장치(예: 도 7의 전자 장치(700))는 동작 1410에서 외부 전자 장치(예: 도 7의 외부 전자 장치(740))가 연결되었는지를 확인할 수 있다. 예를 들어, 프로세서(710)는 USB 타입 C 커넥터(730)에 외부 전자 장치(740)가 연결되었는지 확인할 수 있다.
커넥터(730)를 통하여 전자 장치(700)와 외부 전자 장치(740)가 연결된 경우, 동작 1420에서, 프로세서(710)는 USB 타입 C 커넥터(730)의 CC핀을 통해 수신된 정보에 기반하여 외부 전자 장치의 장치 식별 정보(PID)를 확인할 수 있다.
동작 1430에서, 프로세서(710)는 외부 전자 장치의 인증을 위한 암호화 정보 또는 외부 전자 장치의 제어를 위한 커멘드 정보를 USB 타입 C 커넥터(730)의 CC핀을 통하여 외부 전자 장치(740)에 전송할 수 있다.
본 발명의 다양한 실시 예에 따르면, 프로세서(710)는 , 예를 들어 외부 전자 장치로 전송하는 데이터의 크기에 따라서, 복수의 VDM또는 단일의 VDM을 이용하여 외부 전자 장치(740)에 전송할 수 있다. 복수의 VDM을 이용하는 경우, 도 9a 내지 도 9c에 도시된 VDM 구조를 이용할 수 있다. 단일의 VDM을 이용하는 경우, 도 8a 내지 도 8b에 도시된 VDM 구조를 이용할 수 있다.
본 발명의 다양한 실시 예에 따르면, 프로세서(720)는 외부 전자 장치에서 수신한 VDM의 제 2 VDM 헤더(830)에 포함된 데이터 타입(예: long data type 또는 short data type)을 확인할 수 있다. 프로세서(720)는 확인된 데이터 타입에 기반하여 VDM에 포함된 데이터를 추출할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법은 적어도 하나의 CC(Configuration Channel)핀을 포함하는 USB 타입 C 커넥터(310 또는 730)에 외부 전자 장치(740)가 연결되었는지 확인하는 과정, 상기 CC핀을 통해 상기 외부 전자 장치로부터 수신하는 정보에 기반하여 상기 외부 전자 장치의 장치 식별 정보를 확인하는 과정, 및 상기 외부 전자 장치의 인증을 위한 암호화 정보 또는 상기 외부 전자 장치의 제어를 위한 커맨드 정보가 포함된 VDM들을 상기 CC핀을 통하여 상기 외부 전자 장치로 전송하는 과정을 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 VDM은 메시지 헤더(810 또는 910), 제 1 공급자 정의 메시지(VDM) 헤더(820 또는 920), 및 제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더(830 또는 930)를 순차적으로 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 데이터 타입은 제 1 타입 또는 제 2 타입을 포함하며, 상기 제 2 타입의 데이터 크기는 상기 제 1 타입의 데이터 크기보다 클 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터(310 또는 730)에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 데이터 타입이 제 1 타입인 경우, 상기 VDM은 인증, 호환성, 상기 전자 장치와 연결된 외부 전자 장치의 제어 신호 중 적어도 하나와 관련된 데이터를 더 포함하며, 상기 데이터는 상기 제 2 VDM 헤더(830) 이후에 포함될 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 데이터 타입이 제 2 타입인 경우, 상기 VDM은 상기 제 2 VDM 헤더(930) 다음에 순차적으로, 데이터 헤더(940), 인증, 호환과 관련된 데이터(950) 중 일부를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 VDM은 상기 데이터 중 일부 다음에 데이터 트레일러(960)를 포함하고, 상기 데이터 트레일러는 상기 데이터의 무결성에 대한 정보를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 제 2 VDM 헤더(830 또는 930)는 상기 패킷이 개시 명령(INITIATOR), 응답 ACK(RESPONSE ACK), 무응답 ACK(RESPONSE NAK) 및 사용중(BUSY) 상태인지 지시하는 명령 타입(command type)을 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 제 2 VDM 헤더(830 또는 930)는 상기 VDM들의 개수를 지시하는 지시자를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서, 상기 데이터 헤더(940)는 상기 패킷에 포함된 VDM들 중, 상기 데이터 헤더가 포함된 VDM의 순서를 지시하는 지시자, 상기 패킷에 포함된 데이터의 크기 및 상기 데이터 헤더가 포함된 VDM에 포함된 데이터의 크기를 포함할 수 있다.
본 발명의 다양한 실시예에 따른 전자 장치의 USB 타입 C 커넥터에 연결된 외부 전자 장치를 제어하는 방법에서 상기 데이터 타입이 상기 제 1 타입인 경우, 데이터가 상기 제 2 VDM 헤더(830)에 결합될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다. 다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예:메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체 (예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른, 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱 하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.

Claims (20)

  1. 전자 장치에 있어서,
    하우징;
    상기 하우징에 연결되거나, 상기 하우징을 통해 노출되고, 적어도 하나의 CC(Configuration Channel) 핀을 포함하는 USB 타입 C 커넥터;
    상기 하우징의 내부에 배치되고, 상기 커넥터에 전기적으로 연결된 회로; 및
    상기 하우징의 내부에 배치되고, 상기 회로와 전기적으로 연결된 프로세서를 포함하고,
    상기 회로는 상기 CC 핀을 통해서 적어도 하나의 공급자 정의 메시지(VDM)를 포함하는 패킷을 송/수신하고,
    상기 VDM은
    메시지 헤더;
    제 1 공급자 정의 메시지(VDM) 헤더;
    제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더; 및
    전송될 데이터의 적어도 일부를 포함하는 데이터 헤더를 순차적으로 포함하고,
    상기 프로세서는
    상기 데이터의 크기를 확인하고,
    상기 데이터의 크기에 기반하여, 상기 데이터를 전송하는데 있어, 복수의 VDM들을 이용할지, 하나의 VDM을 이용할지 여부를 결정하고,
    상기 복수의 VDM들을 이용하는 것으로 결정함에 대응하여, 상기 복수의 VDM들을 생성하고,
    상기 복수의 VDM들을 전송하도록 상기 회로를 제어하고,
    상기 복수의 VDM들 각각에 포함된 데이터 헤더는 상기 데이터의 다른 부분들을 포함하는 것을 특징으로 하는 전자 장치.
  2. 제 1항에 있어서,
    상기 데이터 타입은
    상기 데이터의 크기에 따라 구별되는 제 1 타입 또는 제 2 타입을 포함하며,
    상기 제 2 타입의 데이터 크기는 상기 제 1 타입의 데이터 크기보다 큰 것을 특징으로 하는 전자 장치.
  3. 제 2항에 있어서,
    상기 데이터 타입이 제 1 타입인 경우, 상기 패킷은
    인증, 호환성, 상기 전자 장치와 연결된 외부 전자 장치의 제어 신호 중 적어도 하나와 관련된 데이터를 더 포함하고,
    상기 데이터는
    상기 제 2 VDM 헤더 이후에 포함되는 것을 특징으로 하는 전자 장치.
  4. 제 2항에 있어서,
    상기 데이터 타입이 제 2 타입인 경우, 상기 패킷은
    상기 제 2VDM 헤더 다음에 순차적으로, 상기 데이터 헤더, 인증, 호환과 관련된 데이터 중 일부를 포함하는 것을 특징으로 하는 전자 장치.
  5. 제 4항에 있어서,
    상기 패킷은
    상기 데이터 중 일부 다음에 데이터 트레일러를 포함하고,
    상기 데이터 트레일러는
    상기 데이터의 무결성에 대한 정보를 포함하는 것을 특징으로 하는 전자 장치.
  6. 제 1항에 있어서,
    상기 제 2 VDM 헤더는
    상기 패킷이 개시 명령(INITIATOR), 응답 ACK(RESPONSE ACK), 무응답 ACK(RESPONSE NAK) 및 사용중(BUSY) 상태인지 지시하는 명령 타입(command type)을 포함하는 것을 특징으로 하는 전자 장치.
  7. 제 1항에 있어서,
    상기 전자 장치는
    모바일 컴퓨팅 디바이스(mobile computing device), 독(dock), 또는 악세서리 장치(accessory device) 중 어느 하나인 것을 특징으로 하는 전자 장치.
  8. 제 1항에 있어서,
    상기 제 2 VDM 헤더는
    상기 VDM들의 개수를 지시하는 지시자를 포함하는 것을 특징으로 하는 전자 장치.
  9. 제 4항에 있어서,
    상기 데이터 헤더는
    상기 패킷에 포함된 VDM들 중, 상기 데이터 헤더가 포함된 VDM의 순서를 지시하는 지시자, 상기 패킷에 포함된 데이터의 크기 및 상기 데이터 헤더가 포함된 VDM에 포함된 데이터의 크기를 포함하는 것을 특징으로 하는 전자 장치.
  10. 제 2항에 있어서,
    상기 프로세서는
    상기 데이터 타입이 상기 제 1 타입인 경우, 데이터를 상기 제 2 VDM 헤더에 결합하는 것을 특징으로 하는 전자 장치.
  11. 전자 장치의 동작 방법에 있어서,
    적어도 하나의 CC(Configuration Channel)핀을 포함하는 USB 타입 C 커넥터에 외부 전자 장치가 연결되었는지 확인하는 과정;
    상기 CC핀을 통해 상기 외부 전자 장치로부터 수신하는 정보에 기반하여 상기 외부 전자 장치의 장치 식별 정보를 확인하는 과정; 및
    상기 외부 전자 장치의 인증을 위한 암호화 정보 또는 상기 외부 전자 장치의 제어를 위한 커맨드 정보가 포함된 VDM을 포함하는 패킷을 상기 CC핀을 통하여 상기 외부 전자 장치로 전송하는 과정을 포함하고,
    상기 VDM은
    메시지 헤더;
    제 1 공급자 정의 메시지(VDM) 헤더;
    제품 식별자(product identification) 및 데이터 타입을 포함하는 제 2 VDM 헤더;
    전송될 데이터의 적어도 일부를 포함하는 데이터 헤더를 순차적으로 포함하고,
    상기 전자 장치의 동작 방법은
    상기 데이터의 크기를 확인하는 과정;
    상기 데이터의 크기에 기반하여, 상기 데이터를 전송하는데 있어, 복수의 VDM들을 이용할지, 하나의 VDM을 이용할지 여부를 결정하는 과정;
    상기 복수의 VDM들을 이용하는 것으로 결정함에 대응하여, 상기 복수의 VDM들을 생성하는 과정; 및
    상기 복수의 VDM들을 전송하는 과정을 더 포함하고,
    상기 복수의 VDM들 각각에 포함된 데이터 헤더는 상기 데이터의 다른 부분들을 포함하는 전자 장치의 동작 방법.

  12. 삭제
  13. 제 11항에 있어서,
    상기 데이터 타입은
    상기 데이터의 크기에 따라 구별되는 제 1 타입 또는 제 2 타입을 포함하며,
    상기 제 2 타입의 데이터 크기는 상기 제 1 타입의 데이터 크기보다 큰 것을 특징으로 하는 전자 장치의 동작 방법.
  14. 제 13항에 있어서,
    상기 데이터 타입이 제 1 타입인 경우, 상기 VDM은
    인증, 호환성, 상기 전자 장치와 연결된 외부 전자 장치의 제어 신호 중 적어도 하나와 관련된 데이터를 더 포함하고,
    상기 데이터는
    상기 제 2 VDM 헤더 이후에 포함되는 것을 특징으로 하는 전자 장치의 동작 방법.
  15. 제 13항에 있어서,
    상기 데이터 타입이 제 2 타입인 경우, 상기 VDM은
    상기 제 2 VDM 헤더 다음에 순차적으로, 상기 데이터 헤더, 인증, 호환과 관련된 데이터 중 일부를 포함하는 것을 특징으로 하는 전자 장치의 동작 방법.
  16. 제 11항에 있어서,
    상기 VDM은
    상기 데이터 중 일부 다음에 데이터 트레일러를 포함하고,
    상기 데이터 트레일러는
    상기 데이터의 무결성에 대한 정보를 포함하는 것을 특징으로 하는 전자 장치의 동작 방법.
  17. 제 11항에 있어서,
    상기 제 2 VDM 헤더는
    상기 패킷이 개시 명령(INITIATOR), 응답 ACK(RESPONSE ACK), 무응답 ACK(RESPONSE NAK) 및 사용중(BUSY) 상태인지 지시하는 명령 타입(command type)을 포함하는 것을 특징으로 하는 전자 장치의 동작 방법.
  18. 제 11항에 있어서,
    상기 제 2 VDM 헤더는
    상기 VDM들의 개수를 지시하는 지시자를 포함하는 것을 특징으로 하는 전자 장치의 동작 방법.
  19. 제 15항에 있어서,
    상기 데이터 헤더는
    상기 패킷에 포함된 VDM들 중, 상기 데이터 헤더가 포함된 VDM의 순서를 지시하는 지시자, 상기 패킷에 포함된 데이터의 크기 및 상기 데이터 헤더가 포함된 VDM에 포함된 데이터의 크기를 포함하는 것을 특징으로 하는 전자 장치의 동작 방법.
  20. 제 13항에 있어서,
    상기 데이터 타입이 상기 제 1 타입인 경우, 데이터가 상기 제 2 VDM 헤더에 결합되는 것을 특징으로 하는 전자 장치의 동작 방법.
KR1020170037781A 2017-03-24 2017-03-24 Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법 KR102309110B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170037781A KR102309110B1 (ko) 2017-03-24 2017-03-24 Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법
US15/926,932 US10423566B2 (en) 2017-03-24 2018-03-20 Electronic device and method for controlling external electronic device connected to USB type-C connector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170037781A KR102309110B1 (ko) 2017-03-24 2017-03-24 Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법

Publications (3)

Publication Number Publication Date
KR20180108259A KR20180108259A (ko) 2018-10-04
KR102309110B1 true KR102309110B1 (ko) 2021-10-06
KR102309110B9 KR102309110B9 (ko) 2024-01-08

Family

ID=63582652

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170037781A KR102309110B1 (ko) 2017-03-24 2017-03-24 Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법

Country Status (2)

Country Link
US (1) US10423566B2 (ko)
KR (1) KR102309110B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230062740A (ko) 2021-10-30 2023-05-09 추창욱 Usb 허브가 내장된 이중 usbpd 전원 공급장치

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102600482B1 (ko) * 2018-02-23 2023-11-10 삼성전자주식회사 경보를 출력하는 전자 장치 및 방법, 및 상기 전자 장치와 연결되는 잠금 장치를 포함하는 시스템
JP2019161897A (ja) * 2018-03-14 2019-09-19 Dynabook株式会社 システム、電子機器および充電制御方法
CN109992551B (zh) * 2019-04-09 2021-10-26 上海闻泰信息技术有限公司 Usb c型接口信息读取方法和信息读取电路
KR20210034431A (ko) 2019-09-20 2021-03-30 삼성전자주식회사 외부 장치와의 연결을 지원하는 전자 장치 및 그 외부 장치와 연결하여 사용할 때 소모 전류를 감소시키는 방법
KR20210101553A (ko) * 2020-02-10 2021-08-19 삼성전자주식회사 전자 장치 및 이를 이용한 usb 타입 c 커넥터에 연결된 오디오 출력 장치 인식 방법
CN114401418B (zh) * 2021-12-30 2023-09-12 北京北广科技股份有限公司 基于多个arm芯片架构的嵌入式音视频服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120284395A1 (en) * 2011-05-06 2012-11-08 Canon Imaging Systems, Inc. Device control apparatus and method for monitoring device, client apparatus, and device control system
US20150370299A1 (en) * 2014-06-18 2015-12-24 Texas Instruments Incorporated Tunneling in usb power delivery
US20160291987A1 (en) * 2015-03-31 2016-10-06 Via Technologies, Inc. Programmable cable and programming method thereof

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645558B2 (en) * 2005-06-15 2014-02-04 Solarflare Communications, Inc. Reception according to a data transfer protocol of data directed to any of a plurality of destination entities for data extraction
US20080046628A1 (en) * 2006-08-21 2008-02-21 Mikal Hunsaker Multi-bus type management messaging method and apparatus
US8351447B2 (en) * 2007-04-20 2013-01-08 Sony Corporation Data communication system, cradle apparatus, server apparatus, data communication method and data communication program
US7716379B2 (en) * 2007-04-26 2010-05-11 Microsoft Corporation Hardware control interface for IEEE standard 802.11 including transmission control interface component and a transmission status interface component
KR101464741B1 (ko) * 2007-12-12 2014-11-24 엘지전자 주식회사 전원관리 제어 장치 및 방법
WO2014074757A2 (en) * 2012-11-08 2014-05-15 Q Factor Communications Corp. Method & apparatus for improving the performance of tcp and other network protocols in a communications network
KR101832797B1 (ko) * 2013-07-31 2018-04-13 인텔 코포레이션 Usb 디바이스와의 mctp 통신을 수행하기 위한 방법, 장치 및 시스템
JP6083878B2 (ja) * 2014-04-09 2017-02-22 ノキア テクノロジーズ オーユー 電力供給の方向を決定する方法及び装置
US9710406B2 (en) * 2014-12-15 2017-07-18 Intel Corporation Data transmission using PCIe protocol via USB port
TWI553488B (zh) * 2015-01-27 2016-10-11 Richtek Technology Corp Usb-c型線纜與讀寫其晶片的方法
US20160227156A1 (en) * 2015-02-02 2016-08-04 Hisense Hiview Tech Co., Ltd. Modular television system
US20160306616A1 (en) * 2015-04-20 2016-10-20 Microsoft Technology Licensing, Llc Firmware update by usb cc
US10229076B2 (en) * 2015-09-09 2019-03-12 International Business Machines Corporation Peripheral component interconnect express (PCIE) pseudo-virtual channels using vendor defined messages
CN105305565B (zh) * 2015-11-26 2018-02-23 英特格灵芯片(天津)有限公司 一种充电保护及识别电路及待充电设备
WO2017143471A1 (en) * 2016-02-22 2017-08-31 Hewlett-Packard Development Company, L.P. System events in universal serial bus (usb) power delivery devices
US9894159B2 (en) * 2016-06-13 2018-02-13 Verizon Patent And Licensing Inc. Generating consumer internet-of-things data products
JP6797579B2 (ja) * 2016-07-04 2020-12-09 キヤノン株式会社 電子機器、電子機器の制御方法及びプログラム
US10928343B2 (en) * 2017-07-07 2021-02-23 Samsung Electronics Co., Ltd. Water recognition system, electronic device including the same, and method of recognizing water thereby

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120284395A1 (en) * 2011-05-06 2012-11-08 Canon Imaging Systems, Inc. Device control apparatus and method for monitoring device, client apparatus, and device control system
US20150370299A1 (en) * 2014-06-18 2015-12-24 Texas Instruments Incorporated Tunneling in usb power delivery
US20160291987A1 (en) * 2015-03-31 2016-10-06 Via Technologies, Inc. Programmable cable and programming method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230062740A (ko) 2021-10-30 2023-05-09 추창욱 Usb 허브가 내장된 이중 usbpd 전원 공급장치

Also Published As

Publication number Publication date
US10423566B2 (en) 2019-09-24
KR102309110B9 (ko) 2024-01-08
KR20180108259A (ko) 2018-10-04
US20180276178A1 (en) 2018-09-27

Similar Documents

Publication Publication Date Title
KR102309110B1 (ko) Usb 타입 c 커넥터에 연결된 외부 전자 장치를 제어하는 전자 장치 및 제어 방법
US10038290B2 (en) Electrical device
US10283920B2 (en) Interface device
KR102377279B1 (ko) 냉각 기능을 갖는 전자 장치 및 그 제어 방법
US10679053B2 (en) Method and device for recognizing biometric information
KR102294118B1 (ko) 보안 연결 장치 및 방법
US10922251B2 (en) Electronic device and method for controlling same
US20180032350A1 (en) Method for recognizing external device and electronic device supporting the same
US10088515B2 (en) Electronic device and method for determining defect in an electronic device
US10168757B2 (en) Method and apparatus for adaptively managing power
KR102213448B1 (ko) 전자 장치의 인증 상태를 제어하는 방법 및 이를 이용한 전자 장치
US20160277878A1 (en) Method for communicating data and electronic device thereof
US10539525B2 (en) Apparatus and method for preventing malfunction in an electronic device
KR102255351B1 (ko) 홍채 인식 방법 및 장치
US20190312448A1 (en) Electronic device and electronic device control method
US10566813B2 (en) Method for controlling operation of battery on basis of state thereof, and electronic device for supporting same
KR102544488B1 (ko) 인증을 수행하기 위한 전자 장치 및 방법
KR20160040872A (ko) 전자 장치의 인증 방법 및 장치
US10756847B2 (en) Electronic device and method for detecting error thereof
US20150326390A1 (en) Method of managing keys and electronic device adapted to the same
EP3287924A1 (en) Electronic device and method for measuring heart rate based on infrared rays sensor using the same
KR102538837B1 (ko) 과전압 방지를 위한 전자 장치
EP3342180B1 (en) Method of detecting external devices and electronic device for processing same
KR102328449B1 (ko) 전자 장치 및 그 동작 방법
KR102671326B1 (ko) 전자 장치, 및 전자 장치 제어 방법

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
J202 Request for trial for correction [limitation]
J301 Trial decision

Free format text: TRIAL NUMBER: 2023105000062; TRIAL DECISION FOR CORRECTION REQUESTED 20230609

Effective date: 20231205