KR102239572B1 - 전자 장치들 간 양방향 데이터 통신 방법 및 장치 - Google Patents

전자 장치들 간 양방향 데이터 통신 방법 및 장치 Download PDF

Info

Publication number
KR102239572B1
KR102239572B1 KR1020150012779A KR20150012779A KR102239572B1 KR 102239572 B1 KR102239572 B1 KR 102239572B1 KR 1020150012779 A KR1020150012779 A KR 1020150012779A KR 20150012779 A KR20150012779 A KR 20150012779A KR 102239572 B1 KR102239572 B1 KR 102239572B1
Authority
KR
South Korea
Prior art keywords
data
communication
electronic device
data communication
standard
Prior art date
Application number
KR1020150012779A
Other languages
English (en)
Other versions
KR20160092310A (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 KR1020150012779A priority Critical patent/KR102239572B1/ko
Priority to US15/007,977 priority patent/US10216686B2/en
Publication of KR20160092310A publication Critical patent/KR20160092310A/ko
Application granted granted Critical
Publication of KR102239572B1 publication Critical patent/KR102239572B1/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
    • 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
    • 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/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • H04L29/10
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 USB(universal serial bus) 인터페이스를 이용한 전자 장치들 간에 동시 양방향 전송(full duplex transmission)으로 데이터를 주고받을 수 있는 통신 방법 및 그를 지원하는 전자 장치에 관한 것이다. 본 발명의 실시 예에 따르면, 전자 장치의 데이터 통신 방법에 있어서, 인터페이스를 통해 전자 장치의 연결을 감지하는 과정, 상기 전자 장치의 연결에 대응하여 제1 데이터의 데이터 통신을 위한 상기 전자 장치의 호스트 또는 슬레이브를 설정하는 과정, 상기 설정에 대응하여 상기 제1 데이터에 대해 제1 규격에 따른 제1 통신경로에 기반하여 제1 데이터 통신을 수행하는 과정, 상기 제1 데이터의 데이터 통신을 수행하는 중에 제2 데이터의 데이터 통신 수행을 감지하는 과정, 상기 제2 데이터의 데이터 통신을 위한 상기 전자 장치의 호스트 또는 슬레이브를 설정하는 과정, 상기 설정에 대응하여 상기 제2 데이터에 대해 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터 통신을 수행하는 과정을 포함할 수 있다.

Description

전자 장치들 간 양방향 데이터 통신 방법 및 장치{METHOD AND APPARATUS FOR FULL DUPLEX DATA TRANSMISSION BETWEEN ELECTRONIC DEVICES}
본 발명은 USB(universal serial bus) 인터페이스를 이용한 전자 장치들 간에 동시 양방향 전송(full duplex transmission)으로 데이터를 주고받을 수 있는 통신 방법 및 그를 지원하는 전자 장치에 관한 것이다.
(tablet) PC(Personal Computer), PDA(Personal Digital Assistant), 전자수첩, 노트북(notebook), 웨어러블 기기(wearable device), 또는 TV(television) 등과 같은 다양한 유형의 전자 장치가 널리 사용되고 있다. 이러한 전자 장치에서는 데이터 전송을 위한 다양한 인터페이스를 제공하고 있으며, 전자 장치들 간에 설정되는 인터페이스에 대응하여 유선 방식 또는 무선 방식으로 전자 장치들 간의 데이터 통신(예: 송신 또는 수신)을 지원하고 있다.
예를 들어, 블루투스(bluetooth), 와이파이(WiFi, wireless fidelity), NFC(near field communication) 등과 같이 근거리 통신 기반의 무선 방식으로 데이터를 주고받을 수 있는 인터페이스와, USB(universal serial bus) 등과 같이 케이블(cable) 기반의 유선 방식으로 데이터를 주고받을 수 있는 인터페이스 등을 제공하고 있다.
상기 무선 방식의 인터페이스의 경우, 물리적인 케이블의 연결이 필요 없다는 장점을 가지는 반면, 데이터 전송 속도의 한계와 현재까지 무선 통신을 지원하지 않는 전자 장치들이 존재함에 따라 유선 방식에 비해 보편적이지 못한 상태이다. 따라서 전자 장치에서는 유선 방식의 인터페이스(예: USB 인터페이스)에 기반하여 다른 전자 장치와 물리적으로 연결하고 데이터를 전달하는 방식이 가장 보편적으로 사용되고 있다.
상기와 같이 유선 방식의 인터페이스의 경우, 예를 들어, 두 개의 전자 장치들 간에 USB(universal serial bus) 케이블을 통해 물리적으로 연결할 수 있고, 물리적 연결에 의해 전자 장치들 간의 데이터 송수신을 지원하고 있다. 하지만, 종래에서 데이터 전송 방식은 데이터 전송의 주체(예: 호스트)와 데이터 수신의 주체(예: 슬레이브)를 결정하고, 결정된 주체에 따라 어느 하나의 전자 장치(예: 호스트)에서 다른 전자 장치(예: 슬레이브)에 단 방향으로의 데이터 전송 (one way data transmission)만을 지원하고 있다. 예를 들면, 호스트로 동작하는 전자 장치에서 데이터 전송 시 슬레이브로 동작하는 전자 장치에서는 데이터 수신만이 가능하고, 역방향으로 데이터 전송이 필요한 경우 전자 장치들의 물리적인 연결 상태를 해제하고(끊고) 다시 전자 장치들을 재 연결한 후 호스트와 슬레이브 역할을 변경 설정하여 데이터 전송을 수행해야 한다. 또한 호스트로 동작하는 전자 장치에서 현재 데이터 전송에 이용되는 데이터 외에, 다른 데이터를 추가적으로 전송하는 것에 대해 지원하고 있지 않다. 따라서 사용자는 데이터 통신을 수행하는 중에 추가적인 데이터의 전송이 필요한 경우, 진행 중인 데이터 통신이 완료될 때까지 대기한 후 전자 장치들의 재 연결을 통해 데이터 전송을 수행하는 조작을 반복해야 하는 불편함이 있다.
본 발명의 실시 예에서는, 유선 방식의 인터페이스에서 동시 양방향 전송(full duplex transmission)으로 데이터 통신을 수행할 수 있는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 발명의 실시 예에서는, 전자 장치들 간에 USB 인터페이스를 통해 연결 시 일 방향으로 데이터를 전송하면서, 다른 방향으로 데이터를 수신할 수 있는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 발명의 실시 예에서는, 전자 장치들 간에 호스트(host)와 슬레이브(slave)의 역할을 자유롭게 변경 가능한 USB 타입C(type-C) 기반의 USB 인터페이스를 이용하여 전자 장치들 간의 동시 양방향 데이터 전송이 가능하도록 지원하는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 발명의 실시 예에서는, 전자 장치들 간의 제1 규격에 의한 제1 데이터 통신을 진행하면서, 동시에 제2 규격에 의한 제2 데이터 통신을 수행할 수 있는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 발명의 실시 예에 따르면, 전자 장치들 간의 데이터 전송을 위한 최적의 환경을 구현하여 사용자의 편의성 및 전자 장치의 사용성을 향상시킬 수 있는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 발명의 실시 예에 따른 전자 장치는, 다른 전자 장치와의 연결을 지원하고, 서로 다른 규격에 따른 통신경로들을 지원하며, 상기 통신경로들의 적어도 일부에 기반하여 데이터 통신을 지원하는 인터페이스와, 상기 인터페이스를 통해 연결된 전자 장치들 간에 제1 규격에 따른 제1 통신경로에 기반하여 제1 데이터에 대한 데이터 통신을 처리하고, 상기 제1 데이터에 대한 데이터 통신을 수행하는 중에 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터에 대한 데이터 통신을 처리하는 제어부를 포함할 수 있다.
본 발명의 실시 예에 따른 전자 장치의 동작 방법은, 인터페이스를 통해 전자 장치의 연결을 감지하는 과정, 상기 전자 장치의 연결에 대응하여 제1 데이터의 데이터 통신을 위한 상기 전자 장치의 호스트 또는 슬레이브를 설정하는 과정, 상기 설정에 대응하여 상기 제1 데이터에 대해 제1 규격에 따른 제1 통신경로에 기반하여 데이터 통신을 수행하는 과정, 상기 제1 데이터의 데이터 통신을 수행하는 중에 제2 데이터의 데이터 통신 수행을 감지하는 과정, 상기 제2 데이터의 데이터 통신을 위한 상기 전자 장치의 호스트 또는 슬레이브를 설정하는 과정, 상기 설정에 대응하여 상기 제2 데이터에 대해 제2 규격에 따른 제2 통신경로에 기반하여 데이터 통신을 수행하는 과정을 포함할 수 있다.
본 발명의 실시 예에 따른 기록 매체는, 인터페이스를 통해 연결된 전자 장치들 간에 제1 규격에 따른 제1 통신경로에 기반하여 제1 데이터에 대한 데이터 통신을 처리하는 동작, 상기 제1 데이터에 대한 데이터 통신을 수행하는 중에 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터에 대한 데이터 통신을 처리하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.
인터페이스를 통해 연결되는 전자 장치들 간에 동시 양방향 데이터 전송을 지원할 수 있다. 본 발명의 실시 예에 따르면, 전자 장치들 간에 호스트(host)와 슬레이브(slave)의 역할을 자유롭게 변경 가능한 USB 타입C(type-C) 기반의 USB 인터페이스를 이용하여 전자 장치들 간의 동시 양방향 데이터 전송이 가능하도록 지원할 수 있다.
본 발명의 실시 예에 따르면, 적어도 2개의 데이터 통신경로를 가지는 USB 인터페이스에서, 제1 데이터에 대해 제1 규격에 따른 제1 통신경로(예: USB 3.0 기반 데이터 통신경로)를 통해 순방향(예: 호스트 -> 슬레이브)의 데이터 전송을 진행하는 중에, 제2 데이터에 대해 제2 규격에 따른 제2 통신경로(예: USB 2.0 기반 데이터 통신경로)를 통해 역방향의 데이터 전송(예: 제2 데이터에 한해 호스트와 슬레이브의 역할 변경에 의한 데이터 전송)을 지원할 수 있다. 또한 본 발명의 실시 예에 따르면, 제1 데이터에 대해 제1 규격에 따른 제1 통신경로를 통해 데이터 전송을 진행하면서, 제2 데이터에 대해 제2 규격에 따른 제2 통신경로를 통해 데이터 전송을 병행할 수 있다.
따라서 본 발명의 실시 예에 따르면, USB 인터페이스를 이용한 데이터 통신에서 데이터 전송 시간을 단축시킬 수 있으며, 결과적으로 사용자의 사용 시간을 단축할 수 있다. 또한 본 발명의 실시 예에 따르면, 데이터 전달 시마다 호스트와 슬레이브 역할을 변경 설정해야 하는 불편함을 해소하여 사용자의 편의를 향상시킬 수 있다.
본 발명의 다양한 실시 예들에 따르면, 전자 장치들 간의 데이터 전송을 위한 최적의 환경을 구현함으로써, 사용자의 편의성을 향상시키고, 전자 장치의 사용성, 편의성, 접근성 및 경쟁력을 향상시키는데 기여할 수 있다.
도 1은 본 발명의 실시 예에 따른 전자 장치의 구성을 개략적으로 도시하는 도면이다.
도 2는 본 발명의 실시 예에 따른 전자 장치의 USB 인터페이스 구성 예시를 도시하는 도면이다.
도 3은 본 발명의 실시 예에 따른 호스트와 슬레이브로 구분되는 전자 장치들의 데이터 전송 방향을 설명하기 위해 도시하는 도면이다.
도 4는 본 발명의 실시 예에 따른 호스트와 슬레이브로 구분되는 전자 장치들의 동작을 설명하기 위해 도시하는 도면이다.
도 5, 도 6, 도 7, 도 8, 도 9 및 도 10은 본 발명의 실시 예에 따른 전자 장치의 양방향 데이터 통신 수행에 대응하는 동작 및 그의 화면 예시를 설명하기 위해 도시하는 도면들이다.
도 11은 본 발명의 실시 예에 따른 전자 장치의 동시 양방향 데이터 통신 방법을 도시하는 흐름도이다.
도 12는 본 발명의 실시 예에 따른 전자 장치의 동시 양방향 데이터 통신 방법을 도시하는 흐름도이다.
도 13은 본 발명의 실시 예에 따른 전자 장치에서 데이터 통신을 위한 통신경로를 변경하는 동작을 도시하는 흐름도이다.
도 14는 본 발명의 실시 예에 따른 전자 장치에서 데이터 통신을 위한 통신경로를 변경하는 동작을 도시하는 흐름도이다.
이하, 본 발명의 다양한 실시 예들이 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
제안하는 본 발명은 USB(universal serial bus) 인터페이스를 포함하는 전자 장치 및 그 동작 방법에 관한 것이다. 본 발명의 실시 예에서는, USB 인터페이스(예: USB 타입C(type-c) 규격)를 활용하여 데이터를 동시에 양방향으로 전송(full duplex transmission)할 수 있는 전자 장치 및 그의 데이터 통신 방법에 관하여 설명한다.
본 발명의 실시 예에 따르면, 적어도 2개의 데이터 통신경로들을 지원하는 USB 인터페이스(예: USB 타입C)를 이용하여 전자 장치들을 연결할 시 상기 USB 인터페이스를 통해 전자 장치들 간에 서로 다른 데이터를 동시에 양방향으로 전송할 수 있다. 본 발명의 실시 예에서, 상기 적어도 2개의 데이터 통신경로들은, 예를 들면, 제1 규격(예: USB 3.0)에 따른 제1 통신경로(예: 전송 속도 X(예: USB 3.0) 기반 데이터 통신경로)와, 제2 규격(예: USB 2.0)에 따른 제2 통신경로(예: 전송 속도 Y(예: USB 2.0) 기반 데이터 경로)를 포함할 수 있다. 본 발명의 실시 예에 따르면, 상기 전송 속도 X가 전송 속도 Y 보다 빠른 속도를 가지는 것을 가정하며, 전자 장치들 간의 데이터 통신 시 전송 속도가 높은 통신경로를 우선으로 설정하여 데이터 통신이 이루어질 수 있다.
본 발명의 실시 예에 따르면, 상기 USB 인터페이스에 기반하는 전자 장치들 간의 데이터 통신에서, 전자 장치들 간의 제1 규격에 따른 제1 통신경로에 의한 제1 데이터 통신을 진행하면서, 동시에 제2 규격에 따른 제2 데이터 통신을 수행할 수 있는 전자 장치 및 그 동작 방법을 제공할 수 있다. 한 실시 예에 따르면, 상기 USB 인터페이스에 기반하는 전자 장치들 간의 데이터 통신에서, 상기 제1 규격에 따른 제1 통신경로에 의한 순방향의 데이터 전송과 동시에 상기 제2 규격에 따른 제2 통신경로에 의한 역방향의 데이터 전송을 지원하여, 데이터 전송 시간 단축과 사용자 편의성을 제공할 수 있다.
일반적으로, 상기 USB 인터페이스의 경우 전자 장치들 간에 호스트(host)와 슬레이브(slave)의 역할 변경을 지원할 수 있다. 그러나 전자 장치들이 상기 USB 인터페이스를 통해 연결되고 그 역할(예: 호스트, 슬레이브)이 설정되고 나면, 다시 전자 장치들의 연결을 끊고 재 연결을 통해 호스트와 슬레이브 역할을 변경 설정하기 까지는 단 방향(one way transmission)으로의 데이터 전송만이 가능하다. 예를 들면, 제1 전자 장치(예: 호스트로 동작하는 전자 장치)에서 용량이 큰 여러 개의 파일들을 제1 통신경로를 통해 제2 전자 장치(예: 슬레이브로 동작하는 전자 장치)에 전송하는 중에, 만약 제2 전자 장치에서 저장 중인 다른 파일들을 제1 전자 장치에 전송해야 하는 경우가 발생할 수 있다. 이와 같이, 제1 전자 장치에서 제2 전자 장치로 데이터 전송을 수행하는 중에 제2 전자 장치에서 제1 전자 장치로 데이터 전송을 수행하고자 하는 경우, 종래에서는 현재의 데이터 전송(예: 제1 통신경로를 통해 제1 전자 장치에서 제2 전자 장치로 데이터 전송)이 모두 끝날 때까지 대기한 후 USB 인터페이스를 통한 전자 장치들을 재 연결하고, 제1 전자 장치와 제2 전자 장치 간의 호스트와 슬레이브 역할을 재 설정한 후 제2 전자 장치에서 제1 전자 장치로 데이터 전송을 수행할 수 있다. 따라서 종래에서는 전자 장치들 간의 동시 양방향 데이터 전송을 지원할 수 없으며, 결국 시간적인 부분과 사용자의 조작적인 부분에서 불편함이 따를 수 있다.
이에, 본 발명의 실시 예에서는 USB 인터페이스의 CC(configuration channel) 로직(logic)의 BMC(biphase mark coding) 프로토콜(protocol)을 통한 전자 장치들 간의 제2 규격에 따른 제2 통신경로(예: USB 2.0 포트)의 기능을 재정의하여, 제1 통신경로(예: USB 3.0 포트)를 통한 순방향으로의 데이터 전송과 동시에 제2 통신경로(예: USB 2.0 포트)를 통해 역방향으로의 데이터 전송이 가능하도록 제공할 수 있다. 이에 의하여, 본 발명의 실시 예에 따르면, 사용자의 데이터 전송에 소요되는 시간을 줄여줄 수 있고, 데이터 공유(또는 전송) 시마다 전자 장치들 간의 역할을 재 설정해야 하는 번거로움을 해소할 수 있다.
본 발명의 실시 예에서는, 본 발명에서 새롭게 정의하는 USB 인터페이스를 통해 전자 장치들을 연결할 시 상기 USB 인터페이스의 우선 순위의 데이터 통신경로(예: 제1 규격에 따른 제1 통신경로)를 통해 일 방향으로 데이터를 전송함과 동시에, 다른 데이터 통신경로(예: 제2 규격에 따른 제2 통신경로)를 통해 다른 방향으로의 다른 데이터 전송을 동시에 가능하게 지원할 수 있다.
본 발명의 실시 예에서 전자 장치는 본 발명의 다양한 실시 예들에 따른 기능(예: USB 인터페이스에 의한 데이터 통신 기능)을 지원하는 모든 정보통신기기, 멀티미디어기기, 웨어러블(wearable) 기기 및 그에 대한 응용기기와 같이 AP(Application Processor), GPU(Graphic Processing Unit), 및 CPU(Central Processing) 등의 다양한 프로세서(예: 프로세서(processor)) 중 하나 또는 그 이상을 사용하는 모든 장치를 포함할 수 있다.
본 발명의 실시 예에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 스마트 안경, 머리 착용형 장치(head-mounted-device(HMD) 등), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 또는 스마트 와치(smart watch)) 중 적어도 하나를 포함할 수 있다.
또한 본 발명의 실시 예에서, 전자 장치는, 스마트 가전 제품(smart home appliance)을 포함할 수 있다. 스마트 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
또한 본 발명의 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things) 중 적어도 하나를 포함할 수 있다.
또한 본 발명의 실시 예에 따르면, 전자 장치는, 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한 본 발명의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
도 1은 본 발명의 실시 예에 따른 전자 장치의 구성을 개략적으로 도시하는 도면이다.
상기 도 1을 참조하면, 본 발명의 다양한 실시 예들에 따른 전자 장치 100은 무선 통신부 110, 사용자 입력부 120, 터치스크린(touchscreen) 130, 오디오 처리부 140, 메모리 150, 인터페이스부 160, 카메라 모듈 170, 제어부 180, 그리고 전원 공급부 190을 포함할 수 있다. 본 발명의 다양한 실시 예들에서 전자 장치 100은 도 1에 도시된 구성들이 필수적인 것은 아니어서, 도 1에 도시된 구성들보다 많은 구성들을 가지거나, 또는 그보다 적은 구성들을 가지는 것으로 구현될 수 있다.
상기 무선 통신부 110은 전자 장치 100와 무선 통신 시스템 사이 또는 전자 장치 100와 다른 외부 장치(예: 다른 전자 장치, 또는 서버) 사이의 무선 통신을 가능하게 하는 하나 또는 그 이상의 모듈들을 포함할 수 있다. 예를 들어, 무선 통신부 110은 이동통신 모듈 111, 무선 랜(WLAN, wireless local area network) 모듈 113, 근거리 통신 모듈 115, 위치 산출 모듈 117, 그리고 방송 수신 모듈 119 등을 포함하여 구성될 수 있다.
상기 이동통신 모듈 111은 이동통신 네트워크 상에서 기지국, 외부의 전자 장치, 그리고 다양한 서버들(예: 통합 서버(integration server), 프로바이더 서버(provider server), 컨텐츠 서버(content server), 인터넷 서버(internet server), 또는 클라우드 서버(cloud server)) 중 적어도 하나와 무선 신호를 송수신할 수 있다. 상기 무선 신호는 음성통화 신호, 화상통화 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
상기 이동통신 모듈 111은 하나 또는 그 이상의 데이터들(예: 컨텐츠(contents), 메시지(message), 메일(mail), 이미지, 동영상, 날씨 정보, 위치 정보 또는, 시간 정보 등)을 수신할 수 있다. 한 실시 예에 따르면, 상기 이동통신 모듈 111은 전자 장치 100와 네트워크(예: 이동통신 네트워크)를 통해 연결되어 있는 외부 장치(예: 다른 전자 장치 또는 서버) 중 적어도 하나와 연결되어 다양한 데이터들을 획득(수신)할 수 있다. 상기 이동통신 모듈 111은 전자 장치 100의 동작에 필요한 다양한 데이터들을 사용자 요청에 응답하여 외부 장치로 전송할 수 있다.
상기 이동통신 모듈 111은 통신 기능을 수행할 수 있다. 예를 들어, 제어부 180의 제어 하에 RF(radio frequency) 신호를 기저대역 신호로 변환하여 제어부 180에게 제공하거나, 제어부 180으로부터의 기저대역 신호를 RF 신호로 변환하여 송신할 수 있다. 여기서, 제어부 180은 다양한 통신 방식에 기반하여 기저대역 신호를 처리할 수 있다. 예를 들어, 상기 통신 방식은, 이들에 한정하지는 않지만, GSM(global system for mobile communication) 통신 방식, EDGE(enhanced data GSM environment) 통신 방식, CDMA(code division multiple access) 통신 방식, W-CDMA(w-code division multiple access) 통신 방식, LTE(long term evolution) 통신 방식, 또는 OFDMA(orthogonal frequency division multiple access) 통신 방식 등을 포함할 수 있다.
상기 무선 랜 모듈 113은 무선 인터넷 접속 및 다른 외부 장치와 무선 랜 링크(link)를 형성하기 위한 모듈을 나타낼 수 있다. 상기 무선 랜 모듈 113은 전자 장치 100에 내장되거나 외장될 수 있다. 무선 인터넷 기술로는 무선 랜(WiFi, wireless fidelity), Wibro(wireless broadband), WiMax(world interoperability for microwave access), HSDPA(high speed downlink packet access), 또는 mmWave(millimeter wave) 등이 이용될 수 있다.
상기 무선 랜 모듈 113은 사용자로부터 선택된 하나 또는 그 이상의 데이터들을 외부로 전송하거나, 또는 외부로부터 수신할 수 있다. 한 실시 예에 따르면, 상기 무선 랜 모듈 113은 전자 장치 100과 네트워크(예: 무선 인터넷 네트워크)를 통해 연결되어 있는 다른 전자 장치 또는 서버 중 적어도 하나로부터 데이터를 획득할 수 있다. 상기 무선 랜 모듈 113은 전자 장치 100의 다양한 데이터들을 사용자 요청에 응답하여 외부(예: 서버)로 전송하거나, 또는 외부로부터 수신할 수 있다. 상기 무선 랜 모듈 113은 다른 전자 장치와 무선 랜 링크가 형성될 시 사용자 선택에 대응하는 다양한 데이터들을 다른 전자 장치로 전송하거나 수신 받을 수 있다. 상기 무선 랜 모듈 113은 상시 온(on) 상태를 유지하거나, 전자 장치 100의 설정 또는 사용자 입력에 따라 턴-온(turn-on)될 수 있다.
상기 근거리 통신 모듈 115은 근거리 통신(short range communication)을 수행하기 위한 모듈을 나타낼 수 있다. 근거리 통신 기술로 블루투스(bluetooth), 저전력 블루투스(BLE, bluetooth low energy), RFID(radio frequency identification), 적외선 통신(IrDA, infrared data association), UWB(ultra wideband), 지그비(zigbee), 또는 NFC(near field communication) 등이 이용될 수 있다.
상기 근거리 통신 모듈 115은 하나 또는 그 이상의 데이터들을 수신할 수 있다. 한 실시 예에 따르면, 상기 근거리 통신 모듈 115은 전자 장치 100과 네트워크(예: 근거리 통신 네트워크)를 통해 연결되어 있는 다른 전자 장치로부터 데이터를 획득할 수 있다. 상기 근거리 통신 모듈 115은 다른 전자 장치와 근거리 통신이 연결될 시 사용자 선택에 대응하는 데이터들을 다른 전자 장치로 전송하거나 수신 받을 수 있다. 상기 근거리 통신 모듈 115은 상시 온 상태를 유지하거나, 전자 장치 400의 설정 또는 사용자 입력에 따라 턴-온(turn-on)될 수 있다.
상기 위치 산출 모듈 117은 전자 장치 100의 위치를 획득하기 위한 모듈로서, 대표적인 예로는 GPS(global position system) 모듈을 포함할 수 있다. 상기 위치 산출 모듈 115은 삼각 측량의 원리로 전자 장치 100의 위치를 측정할 수 있다. 예를 들어, 상기 위치 산출 모듈 117은 3개 이상의 기지국들로부터 떨어진 거리 정보와 시간 정보를 산출한 다음 상기 산출된 정보에 삼각법을 적용함으로써, 위도(latitude), 경도(longitude), 및 고도(altitude)에 따른 3차원의 현 위치 정보를 산출할 수 있다. 또는 상기 위치 산출 모듈 117은 3개 이상의 위성들로부터 전자 장치 100의 위치 정보를 실시간으로 계속 수신함으로써 위치 정보를 산출할 수 있다. 전자 장치 100의 위치 정보는 다양한 방법에 의해 획득될 수 있다.
상기 방송 수신 모듈 119는 방송 채널(예: 위성 방송 채널, 지상파 방송 채널 등)을 통하여 외부의 방송 관리 서버로부터 방송 신호(예: TV 방송 신호, 라디오 방송 신호, 데이터 방송 신호 등) 및/또는 방송과 관련된 정보(예: 방송 채널, 방송 프로그램 또는 방송 서비스 제공자에 관련한 정보 등)를 수신할 수 있다.
상기 사용자 입력부 120은 전자 장치 100의 동작 제어를 위한 입력 데이터를 사용자 입력에 응답하여 발생할 수 있다. 상기 사용자 입력부 120은 사용자의 다양한 입력을 검출하기 위한 적어도 하나의 입력 수단을 포함할 수 있다. 예를 들어, 상기 사용자 입력부 120은 키패드(key pad), 돔 스위치(dome switch), 물리 버튼, 터치패드(정압/정전), 조그셔틀(jog & shuttle), 그리고 센서 등을 포함할 수 있다.
본 발명의 실시 예에서, 상기 센서는, 예를 들면, 물리량을 계측하거나 전자 장치 100의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 상기 센서는, 예를 들면, 홍채 인식 센서(iris scan sensor), 지문 인식 센서(finger scan sensor), 이미지 센서(image sensor) 또는 조도 센서(illuminance sensor)를 포함할 수 있다. 또한 상기 센서는 제스처 센서(gesture sensor), 자이로 센서(gyro sensor), 압력 센서(pressure sensor), 마그네틱 센서(magnetic sensor), 가속도 센서(acceleration sensor), 지자기 센서(terrestrial sensor), 동작 인식 센서(motion recognition sensor), 그립 센서(grip sensor), 근접 센서(proximity sensor), 컬러 센서(color sensor)(예: RGB(red, green, blue) 센서), 생체 센서(medical sensor), 온/습도 센서(temperature-humidity sensor), UV(ultra violet) 센서, 또는 HRM(heart rate monitor) 센서 중의 적어도 하나를 포함할 수 있다. 또한 상기 센서는, 예를 들면, 후각 센서(E-nose sensor), EMG 센서(electromyography sensor), EEG 센서(electroencephalogram sensor), ECG 센서(electrocardiogram sensor), IR(infrared) 센서 등을 포함할 수 있다. 본 발명의 실시 예에서 전자 장치 100은 제어부 180의 일부로서 또는 별도로, 상기 센서를 제어하도록 구성된 프로세서를 더 포함하여, 제어부 100이 슬립(sleep) 상태에 있는 동안, 상기 센서를 제어할 수 있다.
상기 사용자 입력부 120은 일부가 전자 장치 100의 외부에 버튼 형태로 구현될 수 있으며, 일부 또는 전체가 터치 패널(touch panel)로 구현될 수도 있다. 상기 사용자 입력부 120은 본 발명의 다양한 실시 예들에 따른 전자 장치 100의 동작을 개시(initiation)하기 위한 사용자 입력을 수신할 수 있고, 사용자 입력에 따른 입력 신호를 발생할 수 있다. 예를 들어, 상기 사용자 입력부 120은 데이터 선택, 데이터 통신 실행, 동시 양방향 데이터 통신 실행, 어플리케이션 실행, 데이터 입력(작성, 삽입), 전자 장치 100의 자세 변화, 컨텐츠 표시, 네트워크 연결, 데이터 전송 또는 수신 등을 수행하기 위한 다양한 사용자 입력을 수신할 수 있고, 상기 사용자 입력에 따른 입력 신호를 발생할 수 있다.
상기 터치스크린 130은 입력 기능과 표시 기능을 동시에 수행할 수 있는 입출력 수단을 나타내며, 디스플레이 131과 터치감지부 133을 포함할 수 있다. 상기 터치스크린 130은 전자 장치 100과 사용자 사이에 입출력 인터페이스를 제공하며, 사용자의 터치 입력을 전자 장치 100에게 전달할 수 있고, 또한 전자 장치 100으로부터의 출력을 사용자에게 보여주는 매개체 역할을 담당할 수 있다. 상기 터치스크린 130은 사용자에게 시각적인 출력(visual output)을 보여줄 수 있다. 상기 시각적 출력은 텍스트(text), 그래픽(graphic), 비디오(video)와 이들의 조합의 형태로 나타날 수 있다. 예를 들어, 본 발명의 실시 예에서 상기 터치스크린 130은 디스플레이 131를 통해 전자 장치 100의 동작에 따른 다양한 화면을 표시할 수 있다. 상기 다양한 화면은 예를 들어, 데이터 통신 화면, 양방향 데이터 통신 화면, 데이터 선택 화면, 동작(역할) (예: 호스트 또는 슬레이브) 설정 화면, 메신저 화면, 통화 화면, 게임 화면, 동영상 재생 화면, 갤러리(gallery) 화면, 웹 페이지 화면, 홈 화면, 또는 전자 장치 연결 화면 등이 포함될 수 있다.
상기 터치스크린 130은 상기 디스플레이 131를 통해 특정 화면을 표시하는 중에 상기 터치감지부 133를 통해 사용자로부터 터치(touch), 호버링(hovering) 또는 에어 제스처(air gesture) 중 적어도 하나에 기반하는 이벤트(예: 터치 이벤트, 호버링 이벤트, 에어 제스처 이벤트)를 감지할 수 있고, 상기 이벤트에 따른 입력 신호를 상기 제어부 180에게 전달할 수 있다. 상기 제어부 180은 전달되는 이벤트를 구분하고, 구분된 이벤트에 따른 동작 수행을 제어할 수 있다.
상기 디스플레이 131은 전자 장치 100에서 처리되는 다양한 정보를 표시(출력)할 수 있다. 예를 들어, 상기 디스플레이 131은 전자 장치 100가 양방향 데이터 통신에서 수행하는 동작(예: 호스트 또는 슬레이브)과 관련된 사용자 인터페이스(UI, user interface) 또는 그래픽 사용자 인터페이스(GUI, graphical UI)를 표시할 수 있다. 또한 상기 디스플레이 131은 전자 장치 100가 통화 모드인 경우 통화와 관련된 UI 또는 GUI를 표시할 수 있다. 상기 디스플레이 131은 전자 장치 100가 화상통화 모드 또는 촬영 모드인 경우에는 촬영 또는/및 수신된 영상과 해당 모드 운영과 관련된 UI 또는 GUI를 표시할 수 있다. 상기 디스플레이 131은 전자 장치 100의 사용과 관련된 데이터, 컨텐츠, 또는 연결된 다른 전자 장치들에 대한 정보를 표시할 수 있다. 상기 디스플레이 131은 실행되는 어플리케이션에 대응하는 다양한 어플리케이션 실행화면을 표시할 수 있다.
상기 디스플레이 131은 전자 장치 100의 회전 방향(또는 놓인 방향)에 따라 가로모드에 의한 화면 표시, 세로모드에 의한 화면 표시, 또는 가로모드와 세로모드 간의 변화에 따른 화면 표시를 지원할 수 있다. 상기 디스플레이 131은 다양한 디스플레이가 사용될 수 있다. 예를 들면, 상기 디스플레이 131은 액정 디스플레이(LCD, liquid crystal display), 발광 다이오드(LED, light-emitting diode) 디스플레이, 유기 발광 다이오드(OLED, organic light-emitting diode) 디스플레이, 마이크로 전자기계 시스템(MEMS, microelectromechanical systems) 디스플레이, 또는 전자 종이(electronic paper) 디스플레이 등을 포함할 수 있다. 일부 디스플레이는 투명형 또는 광투명형으로 구성되는 투명 디스플레이(transparent display)로 구현될 수 있다.
상기 터치감지부 133은 상기 디스플레이 131에 안착될 수 있으며, 상기 터치스크린 130 표면에 접촉 또는 근접하는 사용자 입력을 감지할 수 있다. 상기 사용자 입력은 싱글터치(single-touch), 멀티터치(multi-touch), 호버링(hovering), 또는 에어 제스처 중 적어도 하나에 기반하여 입력되는 터치 이벤트 또는 근접 이벤트를 포함할 수 있다. 예를 들어, 상기 사용자 입력은 탭(tap), 드래그(drag), 스윕(sweep), 플릭(flick), 드래그앤드롭(drag&drop), 또는 드로잉 제스처(drawing gesture)(예: 필기) 등)의 방식으로 입력될 수 있다. 상기 터치감지부 133는 상기 터치스크린 130 표면에서 사용자 입력(예: 터치 이벤트 또는 근접 이벤트)을 감지하고, 감지된 사용자 입력에 대응하는 신호를 생성하여 상기 제어부 180에게 전달할 수 있다. 상기 제어부 180은 상기 터치감지부 133에서 전달되는 신호에 의해 사용자 입력(예: 터치 이벤트 또는 근접 이벤트)이 발생된 영역에 해당하는 기능 실행을 제어할 수 있다.
상기 터치감지부 133은 본 발명의 실시 예에서 전자 장치 100의 사용과 관련된 동작을 개시하기 위한 사용자 입력을 수신할 수 있고, 사용자 입력에 따른 입력 신호를 발생할 수 있다. 상기 터치감지부 133은 디스플레이 131의 특정 부위에 가해진 압력 또는 디스플레이 131의 특정 부위에 발생하는 정전 용량 등의 변화를 전기적인 입력 신호로 변환하도록 구성될 수 있다. 상기 터치감지부 133은 입력 수단(예: 사용자 손가락, 전자 펜 등)이 디스플레이 131의 표면 상에 터치 또는 근접되는 위치 및 면적을 검출할 수 있다. 또한 상기 터치감지부 133은 적용한 터치 방식에 따라 터치 시의 압력까지도 검출할 수 있도록 구현될 수 있다. 상기 터치감지부 133에 대한 터치 또는 근접 입력이 있는 경우, 그에 대응하는 신호(들)는 터치스크린 제어기(미도시)로 전달될 수 있다. 상기 터치스크린 제어기(미도시)는 그 신호(들)를 처리한 다음 해당 데이터를 제어부 180에게 전달할 수 있다. 이로써, 제어부 180은 터치스크린 130의 어느 영역이 터치 또는 근접 되었는지 확인할 수 있고, 그에 대응하는 기능 실행 등을 처리할 수 있다.
상기 오디오 처리부 140은 상기 제어부 180로부터 입력 받은 오디오 신호를 스피커(SPK, speaker) 141로 전송하고, 마이크(MIC, microphone) 143로부터 입력 받은 음성 등의 오디오 신호를 제어부 180에 전달하는 기능을 수행할 수 있다. 상기 오디오 처리부 140은 음성/음향 데이터를 제어부 180의 제어에 따라 스피커 141를 통해 가청음으로 변환하여 출력하고, 마이크 143로부터 수신되는 음성 등의 오디오 신호를 디지털 신호로 변환하여 제어부 180에게 전달할 수 있다. 상기 오디오 처리부 140은 데이터에 삽입된 오디오 처리 정보(예: 효과음, 음악 파일 등)에 따라 사용자 입력에 반응하는 오디오 신호를 출력할 수 있다.
상기 스피커 141은 무선 통신부 110로부터 수신되거나, 또는 메모리 150에 저장된 오디오 데이터를 출력할 수 있다. 상기 스피커 141은 전자 장치 100에서 수행되는 다양한 동작(기능)과 관련된 음향 신호를 출력할 수도 있다. 상기 스피커 141은 음성 인식, 디지털 레코딩(recording) 및 전화 기능과 같은 오디오 스트림(stream)의 출력을 담당할 수 있다. 본 발명의 실시 예에서는 도시하지 않았지만, 상기 스피커 141은 탈부착 가능한(attachable and detachable) 이어폰(ear phone), 헤드폰(head phone) 또는 헤드셋(head set)이 외부 포트를 통해 전자 장치 100에 연결될 수 있다.
상기 마이크 143은 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리할 수 있다. 상기 마이크 143을 통해 처리되는 음성 데이터는 전자 장치 100이 통화 모드인 경우 이동통신 모듈 111을 통하여 외부로 송신 가능한 형태로 변환되어 출력될 수 있다. 상기 마이크 143에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘(noise reduction algorithm)이 구현될 수 있다. 상기 마이크 143은 음성 인식, 디지털 레코딩(recording) 및 전화 기능과 같은 오디오 스트림의 입력을 담당할 수 있다. 예를 들어, 상기 마이크 143은 음성 신호를 전기 신호로 변환할 수 있다. 본 발명의 실시 예에 따르면, 상기 마이크 143은 전자 장치 100에 실장되는 내장 마이크와 전자 장치에 연결되는 외장 마이크를 포함할 수 있다.
상기 메모리 150은 제어부 180에 의해 실행되는 하나 또는 그 이상의 프로그램들(one or more programs)을 저장할 수 있고, 입/출력되는 데이터들의 임시 저장을 위한 기능을 수행할 수도 있다. 상기 입/출력되는 데이터들은 예를 들어, 컨텐츠, 메신저 데이터(예: 대화 데이터), 컨택트(contact) 정보(예: 유선 또는 무선 전화번호 등), 메시지, 미디어 파일(예: 오디오, 동영상, 이미지, 사진 등의 파일), 메모 등이 포함될 수 있다. 본 발명의 실시 예에서, 상기 메모리 150은 전자 장치 100의 양방향 데이터 통신 수행에 대응하는 하나 또는 그 이상의 정보들을 저장할 수 있다. 예를 들어, 상기 메모리 150은 데이터 통신에 이용되는 데이터의 데이터 정보 판단을 위해 미리 설정되는 기준값을 저장할 수 있다. 본 발명의 실시 예에서 상기 기준값은 데이터의 크기(예: 데이터 통신 완료 시까지 남은 용량) 또는 데이터 통신에 필요한 예상 시간(예: 데이터 통신 완료 예상 시간) 중 적어도 일부의 기준을 판단하기 위한 값을 나타낼 수 있다.
상기 메모리 150은 전자 장치 100의 양방향 데이터 통신 기능과 관련되는 다양한 프로그램들과 데이터를 저장할 수 있다. 예를 들어, 상기 메모리 150은 본 발명의 실시 예에서 전자 장치들 간의 제1 규격에 의한 제1 데이터 통신을 처리하면서, 동시에 제2 규격에 의한 제2 데이터 통신을 처리하는 하나 또는 그 이상의 프로그램들 및 그에 따라 처리되는 데이터를 저장할 수 있다.
상기 메모리 150은 전자 장치 100의 동작에 따른 사용 빈도(예: 데이터 통신에서 전자 장치의 역할(호스트 또는 슬레이브)의 설정 빈도, 어플리케이션 사용 빈도, 컨텐츠 사용 빈도 등), 중요도 및 우선 순위도 함께 저장할 수 있다. 상기 메모리 150에는 터치스크린 130 상의 터치 입력 또는 근접 입력에 응답하여 출력되는 다양한 패턴(pattern)의 진동 및 음향에 관한 데이터를 저장할 수도 있다. 상기 메모리 150은 전자 장치 100의 운영 체제(OS, operating system), 터치스크린 130을 이용한 입력 및 표시 제어와 관련된 프로그램, 전자 장치 100의 다양한 동작(기능)들의 제어와 관련된 프로그램, 그리고 각 프로그램들의 동작에 의해 발생되는 다양한 데이터 등을 지속적으로 또는 일시적으로 저장할 수 있다.
상기 메모리 150은 확장 메모리(예: 외장 메모리) 또는 내부 메모리를 포함할 수 있다. 상기 메모리 150은 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 마이크로 타입(micro type), 및 카드 타입(예컨대, SD 카드(Secure Digital Card) 또는 XD 카드(eXtream Digital Card)) 등의 메모리와, DRAM(Dynamic Random Access Memory), SRAM(Static RAM), ROM(Read-Only Memory), PROM(Programmable ROM), EEPROM(Electrically Erasable PROM), 자기 메모리(MRAM, Magnetic RAM), 자기 디스크(magnetic disk), 및 광디스크(optical disk) 타입의 메모리 중 적어도 하나의 타입의 저장 매체(storage medium)를 포함할 수 있다. 전자 장치 100은 인터넷 상에서 상기 메모리 150의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다.
상기 메모리 150은 다양한 소프트웨어를 저장할 수 있다. 예를 들어, 소프트웨어 구성요소는 운영 체제(operating system) 소프트웨어 모듈, 통신 소프트웨어 모듈, 그래픽 소프트웨어 모듈, 사용자 인터페이스 소프트웨어 모듈, MPEG(Moving Picture Experts Group) 모듈 및 카메라 소프트웨어 모듈, 하나 이상의 어플리케이션 소프트웨어 모듈 등을 포함할 수 있다. 또한 소프트웨어 구성요소인 모듈은 명령어들의 집합으로 표현할 수 있으므로, 모듈을 명령어 세트(instruction set)라고 표현하기도 한다. 모듈은 또한 프로그램으로 표현하기도 한다.
상기 운영 체제 소프트웨어 모듈은 일반적인 시스템 동작(system operation)을 제어하는 여러 가지의 소프트웨어 구성요소를 포함할 수 있다. 이러한 일반적인 시스템 작동의 제어는, 예를 들면, 메모리 관리 및 제어, 전력 제어 및 관리 등을 의미할 수 있다. 또한 운영 체제 소프트웨어 모듈은 여러 가지의 하드웨어(장치)와 소프트웨어 구성요소(모듈) 사이의 통신을 원활하게 하는 기능도 수행할 수 있다.
상기 통신 소프트웨어 모듈은 무선 통신부 110을 통해 컴퓨터, 서버 또는 휴대용 단말기 등 다른 전자 장치와 통신을 가능하게 할 수 있다. 그리고, 통신 소프트웨어 모듈은 해당 통신 방식에 해당하는 프로토콜 구조로 구성될 수 있다.
상기 그래픽 소프트웨어 모듈은 터치스크린 130 상에 그래픽을 제공하고 표시하기 위한 여러 가지 소프트웨어 구성요소를 포함할 수 있다. 상기 그래픽(graphics)이란 용어는 텍스트(text), 웹 페이지(web page), 아이콘(icon), 디지털 이미지(digital image), 비디오(video), 애니메이션(animation) 등을 포함하는 의미로 사용될 수 있다.
상기 사용자 인터페이스 소프트웨어 모듈은 사용자 인터페이스(UI)에 관련한 여러 가지 소프트웨어 구성요소를 포함할 수 있다. 예를 들어, 사용자 인터페이스의 상태가 어떻게 변경되는지 또는 사용자 인터페이스 상태의 변경이 어떤 조건에서 이루어지는지 등에 대한 내용을 포함할 수 있다.
상기 MPEG 모듈은 디지털 컨텐츠(예: 비디오, 오디오) 관련 프로세스 및 기능들(예: 컨텐츠의 생성, 재생, 배포 및 전송 등)을 가능하게 하는 소프트웨어 구성요소를 포함할 수 있다.
상기 카메라 소프트웨어 모듈은 카메라 관련 프로세스 및 기능들을 가능하게 하는 카메라 관련 소프트웨어 구성요소를 포함할 수 있다.
상기 어플리케이션 모듈은 렌더링 엔진(rendering engine)을 포함하는 웹브라우저(browser), 이메일(email), 즉석 메시지(instant message), 워드 프로세싱(word processing), 키보드 에뮬레이션(keyboard emulation), 어드레스 북(address book), 위젯(widget), 디지털 저작권 관리(DRM, digital right management), 홍채 인식(iris scan), 상황 인지(context cognition), 음성 인식(voice recognition), 위치 기반 서비스(location based service) 등을 포함할 수 있다. 본 발명의 다양한 실시 예들에 따라, 상기 어플리케이션 모듈은 동시 양방향 통신 수행을 위한 명령어들을 포함할 수 있다. 예를 들어, 상기 어플리케이션 모듈은 전자 장치들 간의 제1 규격에 의한 제1 데이터 통신을 진행하면서, 동시에 제2 규격에 의한 제2 데이터 통신을 수행하는 동작(기능)을 처리할 수 있다.
상기 인터페이스부 160은 전자 장치 100에 연결되는 모든 외부 기기와의 인터페이스 역할을 수행할 수 있다. 상기 인터페이스부 160은 외부 기기로부터 데이터를 전송 받거나, 전원을 공급받아 전자 장치 100 내부의 각 구성들에 전달하거나, 전자 장치 400 내부의 데이터가 외부 기기로 전송되도록 할 수 있다. 예를 들어, 유/무선 헤드셋 포트(port), 외부 충전기 포트, 유/무선 데이터 포트, 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트, 오디오 입/출력(Input/Output) 포트, 비디오 입/출력 포트, 이어폰 포트 등이 인터페이스부 160에 포함될 수 있다.
본 발명의 실시 예에서 상기 인터페이스부 160은 타입C USB 인터페이스를 포함할 수 있다. 상기 인터페이스부 160은 다른 전자 장치와의 연결을 지원하고, 서로 다른 규격(예: 제1 규격(예: USB 3.0), 제2 규격(예: USB 2.0))에 따른 통신경로들(예: 제1 통신경로, 제2 통신경로)을 지원하며, 상기 통신경로들의 적어도 일부에 기반하여 데이터 통신을 지원할 수 있다. 예를 들어, 상기 인터페이스부 160은 전자 장치들 간의 제1 규격에 따른 제1 통신경로에 의한 제1 데이터 통신과, 제2 규격에 따른 제2 통신경로에 의한 제2 데이터 통신을 동시에 지원할 수 있다. 본 발명의 실시 예에서, 상기 제1 규격은 상기 제2 규격보다 고속의 데이터 통신을 지원하는 것을 가정할 수 있다.
상기 카메라 모듈 170은 전자 장치 100의 촬영 기능을 지원하는 구성을 나타낸다. 상기 카메라 모듈 170은 피사체의 영상(정지 영상 또는 동영상) 촬영을 지원할 수 있다. 상기 카메라 모듈 170은 제어부 180의 제어에 따라 임의의 피사체를 촬영하고, 촬영된 데이터를 디스플레이 131 및 제어부 180에 전달할 수 있다. 상기 카메라 모듈 170은 하나 이상의 이미지 센서를 포함할 수 있다. 예를 들어, 상기 카메라 모듈 170은 전자 장치 100의 전면(예: 디스플레이 131과 동일한 평면) 상에 구비되는 전면 센서(예: 전면 카메라)와 전자 장치 100의 후면(예: 배면) 상에 구비되는 후면 센서(예: 후면 카메라)를 포함할 수 있다.
상기 제어부 180은 전자 장치 100의 전반적인 동작을 제어할 수 있다. 예를 들어, 상기 제어부 180은 음성 통신, 데이터 통신, 화상 통신 등에 관련된 제어를 수행할 수 있다. 상기 제어부 180은 하나 이상의 프로세서를 포함하거나, 또는 제어부 180을 프로세서로 칭할 수도 있다. 예를 들어, 상기 제어부 180은 통신 프로세서(CP, communication processor), 어플리케이션 프로세서(AP, application processor), 인터페이스(예: GPIO(general purpose input/output)), 또는 내부 메모리 등을 별개의 구성요소로 포함하거나, 또는 하나 이상의 집적화된 회로에 집적화될 수 있다. 상기 어플리케이션 프로세서는 여러 가지의 소프트웨어 프로그램을 실행하여 전자 장치 100을 위한 여러 기능을 수행할 수 있고, 상기 통신 프로세서는 음성 통신 및 데이터 통신을 위한 처리 및 제어를 수행할 수 있다. 또한 상기 제어부 180은 메모리 150에 저장되어 있는 특정한 소프트웨어 모듈(명령어 세트(instruction set))을 실행하여 그 모듈에 대응하는 특정한 여러 가지의 기능을 수행하는 역할을 담당할 수 있다.
본 발명의 실시 예에 따르면, 상기 제어부 180은 동시 양방향 데이터 통신 기능을 수행하는 것과 관련된 동작을 제어할 수 있다. 예를 들어, 상기 제어부 180은 USB 인터페이스(예: 인터페이스부 160)를 통해 연결된 전자 장치들 간의 데이터 통신을 제어할 수 있다. 본 발명의 실시 예에서 상기 제어부 180은 데이터 통신에 있어서, 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 기반하여 제1 데이터에 대한 제1 데이터 통신을 처리할 수 있고, 동시에 상기 제1 데이터에 대응하는 상기 제1 데이터 통신을 수행하는 중에 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터에 대한 제2 데이터 통신을 처리할 수 있다. 상기 제어부 180의 본 발명의 다양한 실시 예들에 따른 제어 동작은 후술하는 도면들을 참조하여 설명된다.
본 발명의 실시 예에 따르면, 상기 제어부 180은 메모리 150에 저장된 소프트웨어 모듈들)과 연동하여 본 발명의 실시 예에 따른 전자 장치 100의 표시 제어 동작을 수행할 수 있다. 본 발명의 다양한 실시 예들에 따르면, 상기 제어부 180은 상기한 다양한 기능들을 처리할 수 있는 하나 이상의 모듈들로 구현될 수 있다.
본 발명의 실시 예에 따르면, 상기 제어부 180은 메모리 150에 저장되는 하나 또는 그 이상의 프로그램들을 실행하여 본 발명의 실시 예에 따른 전자 장치 100의 동작을 제어하는 하나 또는 그 이상의 프로세서들(one or more processors)로 구현될 수 있다. 예를 들어, 상기 제어부 180은 동작 설정 모듈 181, 이벤트 감지 모듈 183, 그리고 데이터 처리 모듈 185 등을 포함하여 구현될 수 있다.
상기 동작 설정 모듈 181은 사용자 입력에 기반하여 전자 장치의 데이터 통신 수행에 따른 동작(역할)을 설정할 수 있다. 예를 들어, 상기 동작 설정 모듈 481은 제1 데이터 통신을 개시하는 동작과, 상기 제1 데이터 통신 중에 제2 데이터 통신을 병렬적으로 수행하는 동작에서, 상기 사용자 입력에 기반하여 전자 장치를 호스트로 동작하도록 설정하거나, 슬레이브로 동작하도록 설정할 수 있다.
상기 이벤트 감지 모듈 183은 상기 제1 데이터 통신 중에 양방향 데이터 통신 실행과 관련된 이벤트를 감지할 수 있다. 예를 들어, 상기 이벤트 감지 모듈 183은 제1 데이터 통신을 수행하는 중에 사용자 인터페이스에 기반하여 후술되는 스위치 아이템이 선택되거나, 또는 양방향 데이터 통신 실행을 위한 사용자 제스처가 감지되는 경우 상기 이벤트를 감지할 수 있다. 또한 상기 이벤트 감지 모듈 183은 USB 인터페이스의 CC 핀을 통해 BMC 통신에 따라 제2 데이터의 통신 요청이 수신될 시 상기 이벤트를 감지할 수 있다.
상기 데이터 처리 모듈 185는 데이터 통신 또는 양방향 데이터 통신 수행 시, 해당 데이터에 대해 전자 장치에 설정되는 역할(예: 호스트 또는 슬레이브)에 대응하여 데이터 전송 또는 수신을 처리할 수 있다. 상기 데이터 처리 모듈 185는 상기 제1 데이터 통신에 대응하는 제1 데이터에 대해 제1 통신경로에 의한 전송 또는 수신을 처리할 수 있다. 상기 데이터 처리 모듈 185는 상기 제1 데이터 통신을 처리하는 중에, 상기 이벤트 감지 모듈 183의 이벤트 감지에 반응하여 제2 데이터 통신에 대응하는 제2 데이터에 대해 제2 통신경로에 의한 전송 또는 수신을 처리할 수 있다. 상기 데이터 처리 모듈 185는 상기 이벤트 감지 모듈 183에 의한 상기 이벤트에 대응하여, 제1 데이터에 대응하는 제1 데이터 통신은 계속하여 처리하면서, 제2 데이터에 대하여 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터 통신을 병렬적으로 처리할 수 있다.
본 발명의 실시 예에 따른 제어부 180은 상기의 기능 외에 전자 장치 100의 통상적인 기능과 관련된 각종 동작을 제어할 수 있다. 예를 들어, 제어부 180은 특정 어플리케이션 실행 시 그의 운영 및 화면 표시를 제어할 수 있다. 또한 제어부 180은 터치 기반 또는 근접 기반의 입력 인터페이스(예: 터치스크린 130)에서 지원하는 다양한 터치 이벤트 또는 근접 이벤트 입력에 대응하는 입력 신호를 수신하고 그에 따른 기능 운영을 제어할 수 있다. 또한 제어부 180은 유선 통신 기반 또는 무선 통신 기반으로 각종 데이터의 송수신을 제어할 수도 있다.
상기 전원 공급부 190은 제어부 180의 제어에 의해 외부의 전원, 내부의 전원을 인가 받아 각 구성 요소들의 동작에 필요한 전원을 공급할 수 있다. 본 발명의 실시 예에서 상기 전원 공급부 190은 제어부 180의 제어에 의해 상기 디스플레이 131, 상기 카메라 모듈 170 등에 전원을 공급 또는 차단(on/off)할 수 있다.
본 발명에서 설명되는 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, 본 발명에서 설명되는 실시 예들은 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다.
본 발명의 실시 예에서, 상기 기록 매체는 인터페이스를 통해 연결된 전자 장치들 간에 제1 규격에 따른 제1 통신경로에 기반하여 제1 데이터에 대한 데이터 통신을 처리하는 동작, 상기 제1 데이터에 대한 데이터 통신을 수행하는 중에 제2 규격에 따른 제2 통신경로에 기반하여 제2 데이터에 대한 데이터 통신을 처리하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.
그리고 일부의 경우에 본 명세서에서 설명되는 실시 예들이 제어부 180 자체로 구현될 수 있다. 또한 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수도 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.
도 2는 본 발명의 실시 예에 따른 전자 장치에서 지원하는 USB 인터페이스와 그에 의한 동작을 설명하기 위해 도시하는 도면이다.
상기 도 2는 본 발명의 실시 예에서 이용되는 타입C USB 인터페이스의 기능 핀(functional pin)의 구조 예시를 도시하는 도면이다.
상기 도 2를 참조하면, 상기 도 2는 USB 인터페이스(예: USB 타입C)의 입출력 핀 구조의 예시를 나타낸 것으로, 크게 제1 파트(part) 210과 제2 파트 220으로 구분될 수 있고, 상기 제1 파트 210과 제2 파트 220은 대칭되는 구조를 가질 수 있다. 상기 USB 인터페이스는 상기 대칭 구조에 의해 USB 케이블과 전자 장치의 USB 인터페이스(예: USB 커넥터) 간 연결 시 방향성에 관계 없이 연결될 수 있다. 예를 들면, 상기 USB 케이블의 양쪽 끝에 달린 커넥터가 똑 같은 모양(형태)을 가질 수 있고, 커넥터 자체도 앞뒤 구분이 없기 때문에 커넥터의 핀 방향성을 일치시킬 필요 없이 바로 연결이 가능할 수 있다. 예를 들어, USB 인터페이스는 위쪽(예: 제1 파트 210)을 위로 하여(upside-up) 연결하거나, 그 반대(예: 제1 파트 210)를 아래로 향하게 뒤집어(upside-down) 연결할 수 있다. 이의 연결 상태는 CC(Configuration Channels)(예: CC1 또는 CC2) 핀(단자)를 통해 검출될 수 있다. 한 실시 예에 따르면, USB 인터페이스의 CC1 핀(A5)에서 풀-다운(pull-down)이 검출되면 제1 파트 210이 플러그(plugged)된 상태일 수 있고, USB 인터페이스의 CC2 핀(B5)에서 풀-다운이 검출되면 제2 파트 220이 플러그된 상태일 수 있다.
상기 USB 인터페이스는, 예를 들면, 전체 24개의 지정된 핀들(예: A1 내지 A12, B1 내지 B 12)을 포함할 수 있고, 상기 24개의 핀들 각각은 상기 도 2에 도시한 바와 같이 각각의 역할이 규명될 수 있다.
상기 USB 인터페이스는, 예를 들면, 서로 다른 전송 속도에 의한 데이터 통신을 지원할 수 있다. 예를 들어, 상기 USB 인터페이스는 고속의 데이터 통신을 지원하는 제1 규격(예: USB 3.0)에 대응하는 제1 통신경로 230과, 저속의 데이터 통신을 지원하는 제2 규격(예: USB 2.0)에 대응하는 제2 통신경로 240을 포함할 수 있다. 상기 제1 규격(예: USB 3.0)의 제1 통신경로 230은 제1 파트 210에서 하나의 페어(pair) 231가 구성될 수 있고, 제2 파트 220에서 다른 하나의 페어 233으로 구성될 수 있다. 상기 제2 규격(예: USB 2.0)의 제2 통신경로 240은 제1 파트 210에서 하나의 페어 241가 구형성될 수 있고, 제2 파트 220에서 다른 하나의 페어 243으로 구성될 수 있다. 즉, 상기 제1 통신경로 230과 상기 제2 통신경로 240은 USB 인터페이스의 대칭 구조에 대응하여 제1 파트 210과 제2 파트 220에서 대칭되게 구현될 수 있다.
전자 장치들은 USB 인터페이스를 통해 서로 연결될 시 호스트(host)(예: DFP, downstream facing port)와 슬레이브(slave)(예: UFP, upstream facing port)로 구분되어 동작할 수 있고, 이는 상기 USB 인터페이스의 CC(Configuration Channels)(예: CC1 또는 CC2) 단자를 통해 지정될 수 있다. 또한 전자 장치들은 호스트(DFP)와 슬레이브(UFP) 외에, DRP(dual role port)로 동작할 수 있다. 상기 DRP는 전자 장치의 호스트(DFP) 또는 슬레이브(UFP)의 역할을 적응적으로 변경할 수 있는 모드(기능)를 나타낼 수 있다. 예를 들어, 상기 DRP가 호스트(DFP)로 연결되어 있는 경우 슬레이브(UFP)로 변경될 수 있고, 상기 DRP가 슬레이브(UFP)로 연결되어 있는 경우 호스트(DFP)로 변경될 수 있다. 또한 2개의 DRP가 함께 연결되는 경우 호스트(DFP)와 슬레이브(UFP) 중 랜덤(random), 예를 들면, 어느 하나의 DRP는 호스트(DFP)로 동작하고, 다른 하나의 DRP는 슬레이브(UFP)로 역할을 수행할 수 있다.
상기 USB 인터페이스의 VBUS는 전원 공급 단자를 나타낼 수 있고, 아래 <표 1>의 예시와 같이 각 USB 표준 규격에 대응하는 전원을 지원할 수 있다.
Mode of Operation Nominal Voltage Maximum Current Notes
USB 2.0 5V 500mA Default Current, based on definitions in the base specifications
USB 3.1 5V 900mA Legacy charging
USB BC 1.2 5V Up to 1.5A Supports higher power devices
USB Type-C Current @ 1.5A 5V 1.5A Supports higher power devices
USB Type-C Current @ 3.0A 5V 3A Supports higher power devices
USB PD Configurable up to 20V Configurable up to 5A Directional control and power level management
상기 <표 1>에 나타낸 바와 같이, 본 발명의 실시 예에 따른 USB 인터페이스는 전력 용량(power capability) 5V/3A까지 지원할 수 있고, USB PD(power delivery)가 USB 타입C에 결합되는 경우 전력 용량 20V/5A까지 지원될 수 있다. USB PD 프로토콜은 CC 라인 연결을 통해 전송될 수 있다.
일반적으로, 전자 장치들은 호스트(DFP)와 슬레이브(UFP)로 지정이 되면, 호스트로 동작하는 전자 장치는 슬레이브로 동작하는 전자 장치로 데이터를 전달하게 되며, 첫 번째는 USB 인터페이스에서 2 페어(pair)씩 지정된 제1 규격(예: USB 3.0)의 전송 단자(예: 제1 통신경로 230)를 통해 데이터를 전송할 수 있다. 또는 전자 장치들이 상기 제1 규격에 호환되지 않는 경우 1 페어로 지정된 제2 규격(예: USB 2.0)의 전송 단자(예: 제2 통신경로 240)를 통해 데이터를 전송할 수 있다.
예를 들어, 상기 USB 인터페이스는, 앞서 살펴본 바와 같이, 데이터 전송을 위한 서로 다른 규격(예: 제1 규격, 제2 규격)에 대응하는 각각의 데이터 통신경로들을 포함할 수 있다. 예를 들어, 상기 USB 인터페이스는 제1 규격(예: USB 3.0)에 따른 통신 속도에 기반하여 데이터 통신(예: 고속(high speed) 통신)을 위한 제1 통신경로 230과, 제2 규격(예: USB 2.0)에 따른 통신 속도에 기반하여 데이터 통신(예: 저속(low speed) 통신)을 위한 제2 통신경로 240으로 구분될 수 있다. 전자 장치들이 상기 USB 인터페이스를 통해 연결되어 호스트로 동작하는 전자 장치에서 슬레이브로 동작하는 전자 장치에 데이터를 전송할 시, 우선 순위가 높은(예: 통신 속도가 빠른) 제1 규격의 제1 통신경로 230(예: 데이터 전송 속도가 높은 규격의 경로를 우선적으로 설정)을 우선으로 데이터 통신이 이루어질 수 있다.
본 발명의 실시 예에서는, 제1 규격에 따른 제1 통신경로 230에 의해 데이터 통신(예: 호스트로 동작하는 제1 전자 장치에서 슬레이브로 동작하는 제2 전자 장치에 데이터 전송)을 수행하는 중에, 제1 전자 장치 또는 제2 전자 장치에서 추가적인 데이터 통신이 요청되는 경우, 이를 지원할 수 있도록 하는 것을 특징으로 한다.
한 실시 예에 따르면, 상기 제1 규격에 따른 제1 통신경로 230에 의한 데이터 통신 중에 추가적인 데이터 전송이 요청되는 경우, 상기 제1 통신경로 230에 의한 순방향의 데이터 전송(예: 호스트 -> 슬레이브)은 유지하면서, 상기 제2 통신경로 240에 기반하여 역방향의 데이터 전송(예: 슬레이브 -> 호스트)을 지원할 수 있다. 즉, 본 발명의 실시 예에서는 호스트의 제1 전자 장치에서 제1 데이터를 일 방향으로 슬레이브의 제2 전자 장치에 전송하는 중에, 상기 제2 전자 장치에서 제2 데이터의 전송 요청이 있는 경우 상기 제2 데이터에 대하여 전자 장치들의 호스트와 슬레이브 역할을 변경하고, 전자 장치들의 연결 상태를 유지하면서 상기 제2 데이터를 다른 방향으로 전송할 수 있다. 이에 대하여, 상기 도 3 및 상기 도 4를 참조하여 설명하기로 한다.
또한 한 실시 예에 따르면, 호스트의 제1 전자 장치에서 제1 데이터를 슬레이브의 제2 전자 장치에 전송하는 중에, 상기 제1 전자 장치에서 제2 데이터를 추가적으로 전송할 수도 있다. 예를 들어, 제1 전자 장치에서 제1 데이터를 제1 규격에 따른 제1 통신경로 230을 통해 제1 데이터를 전송하는 중에, 상기 제1 전자 장치에서 제2 데이터의 전송 요청이 있는 경우 상기 제2 데이터에 대하여 제2 규격에 따른 제2 통신경로 240을 통해 제2 전자 장치에 전송할 수도 있다.
도 3 및 도 4는 본 발명의 실시 예에 따른 호스트와 슬레이브로 구분되는 전자 장치들의 데이터 전송 방향을 설명하기 위해 도시하는 도면들이다.
상기 도 3 및 상기 도 4에 도시한 바와 같이, 상기 도 3은 전자 장치들이 상기 USB 인터페이스에 의한 연결 시 호스트와 슬레이브로 구분되는 전자 장치들의 데이터 전송 방향을 설명하기 위한 일 예시를 나타낸 것이다. 상기 도 3 및 상기 도 4에서, 제1 전자 장치 310과 상기 제2 전자 장치 320 각각은, 예를 들면, 상기 도 1에 도시된 전자 장치 100의 전체 또는 일부를 포함할 수 있고, 전자 장치 100과 동일한 또는 다른 종류의 장치일 수 있다.
상기 도 3 및 도 4를 참조하면, 본 발명의 실시 예에서 전자 장치들(예: 제1 전자 장치 310, 제2 전자 장치 320)은 상기 USB 인터페이스의 CC단자를 통한 BMC 통신으로 다른 데이터 전송 기능을 활성화할 수 있다. 예를 들어, 전자 장치들이 상기 USB 인터페이스를 통해 연결될 시 CC 핀(단자)(예: CC1 또는 CC2)를 통한 BMC 프로토콜을 통해 한 방향(예: 제1 규격(예: USB 3.0)을 지원하는 제1 통신경로)으로 제1 데이터를 전송하는 중에, 상기 BMC 통신으로 다른 방향(예: 제2 규격(예: USB 2.0)을 지원하는 제2 통신경로)으로 데이터 전송을 활성화 할 수 있고, 상기 다른 방향으로 제2 데이터 전송을 가능하도록 할 수 있다.
한 실시 예에 따르면, USB 인터페이스 규격에서는 CC 단자를 통해 1 wire protocol을 지원할 수 있고, BMC를 사용한 1 wire protocol를 통해 현재 제1 규격(예: USB 3.0)의 단자(예: 제1 통신경로)를 통해 전송되는 데이터의 전송 방향과 반대의 방향으로, 제2 규격(예: USB 2.0)의 호스트(DFP)와 슬레이브(UFP)를 지정할 수 있다. 따라서 본 발명의 실시 예에 따르면, 상기 BMC를 통해 지정된 제2 규격(예: USB 2.0)의 호스트/슬레이브(DFP/UFP)는 제1 규격(예: USB 3.0)에서 지정된 호스트/슬레이브(DFP/UFP)와는 반대 방향으로 형성될 수 있다.
상기 USB 인터페이스에서는 두 개의 CC 핀(예: CC1, CC2)을 포함할 수 있다.  상기 CC 핀 중 어느 하나의 CC 핀(예: CC1)이 제1 전자 장치 310(예: DFP)와 제2 전자 장치 320(예: UFP) 간에 연결(접속)에 사용되는 경우,. 다른 하나의 CC 핀(예: CC2)은 USB 케이블 300에 전원을 공급하는 데 사용될 수 있다.  예를 들어, 상기 전원을 공급하는 데 사용되는 CC 핀은 VCONN으로 정의될 수 있다.  한 실시 예에 따르면, 제1 전자 장치 310(예: DFP)의 CC 핀은 풀-다운을 감지 할 때, 케이블 300의 CC 핀은 풀-업에서 VCONN으로 전환될 수 있다.
상기 도 3 및 상기 도 4에서, 제1 전자 장치 310(예: DFP)은 호스트 역할의 전자 장치의 부분을 나타낼 수 있고, 제2 전자 장치 320(예: UFP)은 슬레이브 역할의 전자 장치의 부분을 나타낼 수 있다. 상기 제1 전자 장치 310과 상기 제2 전자 장치 320은 상기 USB 인터페이스를 통해 연결되기 전에는, 상기 제1 전자 장치 301의 VBUS 소스(source)에는 출력이 없으며(no output), 상기 제1 전자 장치 310과 상기 제2 전자 장치 320이 상기 USB 인터페이스를 통해 연결된 이후에, 상기 제1 전자 장치 310에서 CC 핀의 전압 레벨(voltage level)이 풀-다운 저항에 의해 드롭(dropped)이 검출될 수 있고, 이에 따라 제2 전자 장치 320의 연결을 인지할 수 있다. 한 실시예에 따르면, 상기 제1 전자 장치 310은 아래의 <표 2>의 예시와 같이 CC1 또는 CC2 상태에 따라 그 연결 상태를 인지할 수 있다.
Figure 112015008824912-pat00001
상기 <표 2>에 나타낸 바와 같이, 상기 <표 2>는 제1 전자 장치 310(예: 호스트(DFP))에서 검출되는 연결 상태들의 예시를 나타낼 수 있다. 예를 들어, CC1과 CC2가 오픈/오픈(open/open)의 상태인 경우 호스트 대 호스트(host-to-host, DFP-to-DFP)와 슬레이브 대 슬레이브(slave-to-slave, UFP-to-UFP)의 형태일 수 있고, 제2 전자 장치 320(예: 슬레이브(UFP))의 연결이 없는 상태일 수 있다. 또한 CC1과 CC2가 풀-다운/오픈(Rd/open) 또는 오픈/풀-다운(open/Rd)의 상태인 경우 호스트 대 슬레이브(host-to-slave, DFP-to-UFP) 또는 슬레이브 대 호스트(slave-to-host, UFP-to-DFP)의 형태일 수 있고, 제2 전자 장치 320(예: 슬레이브(UFP))가 연결된 상태일 수 있다. 이러한 상태의 예시가 상기 도 4에 나타나 있다. 예를 들어, CC1이 풀-다운 되고 CC2가 오픈 상태인 경우 전자 장치들은 position (1) 410과 같은 통신경로에 기반하여 데이터 통신을 수행할 수 있다. 또는 CC1이 오픈 되고 CC2가 풀-다운 상태인 경우 전자 장치들은 position (2) 420와 같은 통신경로에 기반하여 데이터 통신을 수행할 수 있다.
또한 CC1 또는 CC2에서 케이블 300에 의한 저항(예: Ra)에 의해 전압이 인가되고 다른 쪽이 풀-다운 상태의 경우에는 전력 케이블(powered cable)의 연결 상태를 검출하거나, 또는 position (1) 410 또는 position (2) 420과 같은 통신경로에 기반하여 데이터 통신을 수행할 수 있다. 반면, CC1 또는 CC2에서 케이블 300에 의한 저항(예: Ra)에 의해 전압이 인가되고 다른 쪽이 오픈 상태인 경우에는 전력 케이블의 연결 상태만을 검출할 수 있다.
또한 CC1과 CC2가 모두 풀-다운 상태이거나 또는 CC1과 CC2가 모두 케이블 300에 전압이 인가되는 상태인 경우에는, 미리 정의되는 모드에 대응하는 동작을 수행할 수 있다. 예를 들어, CC1과 CC2가 모두 풀-다운 상태인 경우 디버그 액세서리 모드(debug accessory mode)로 동작할 수 있고, CC1과 CC2가 모두 케이블에 전압이 인가되는 상태인 경우 오디오 어댑터 액세서리 모드(audio adapter accessory mode)로 동작할 수 있다.
본 발명의 실시 예에 따르면, 이상에서 살펴본 바와 같은 USB 인터페이스에 기반하여 동시 양방향 데이터 통신을 수행할 수 있다. 특히, 본 발명의 실시 예에서는 상기 USB 인터페이스를 통해 제1 데이터 통신(예: 호스트에서 슬레이브로 제1 데이터 전송) 중에, 제2 데이터 통신(예: 슬레이브에서 호스트로 제2 데이터 전송, 호스트에서 슬레이브로 제2 데이터 전송)을 지원할 수 있다. 예를 들어, 제1 전자 장치 310과 제2 전자 장치 320은 데이터 처리 모듈 185를 통해 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 기반하여 제1 데이터에 대한 제1 데이터 통신을 처리할 수 있다.
제1 전자 장치 310과 제2 전자 장치 320은 상기 제1 데이터 통신을 수행하는 중에, 이벤트 감지 모듈 183에 의해 CC 핀(단자)에 의한 이벤트(예: BMC 통신에 따라 제2 데이터 통신 요청)를 감지할 수 있다. 제1 전자 장치 310과 제2 전자 장치 320은 상기 이벤트 감지 모듈 183에 의한 상기 이벤트에 대응하여, 데이터 처리 모듈 185에서 제2 데이터에 대하여 제2 규격(예: USB 2.0)에 따른 제2 통신경로에 기반하여 제2 데이터 통신을 처리할 수 있다. 여기서, 상기 제1 데이터 통신은 계속하여 유지되면서, 상기 제2 데이터 통신이 병렬적으로 처리될 수 있다.
한 실시 예에 따르면, 제1 전자 장치 310과 제2 전자 장치 320이 상기 USB 인터페이스를 통해 연결될 수 있다. 제1 전자 장치 310과 제2 전자 장치 320은 DRP 모드를 지원할 수 있고, 사용자에 의해 호스트(DFP)와 슬레이브(UFP)가 규정(설정)되기 전까지는 상기 USB 인터페이스에 전원이 공급(예: VBUS 전원 공급)되지 않으며 대기 상태에 존재할 수 있다. 이후, 제1 전자 장치 310과 제2 전자 장치 320은 디스플레이(예: 도 1의 디스플레이 131)를 통해 표시되는 사용자 인터페이스(UI, user interface)에 기반하여 사용자에 의해 호스트와 슬레이브가 지정되면 전원이 공급되고, 호스트의 전자 장치(예: 제1 전자 장치 310)에서 사용자에 의해 선택된 제1 데이터가 상기 USB 인터페이스의 데이터 통신경로(예: 우선 순위(예: 제1 규격)의 제1 통신경로)를 통해 슬레이브의 전자 장치(예: 제2 전자 장치 320)에 전송될 수 있다.
또한 상기와 같이 제1 전자 장치 310과 제2 전자 장치 320이 호스트와 슬레이브 역할에 대응하여 제1 데이터에 대한 제1 데이터 통신을 수행하는 중에, 사용자에 의해 제2 전자 장치 320의 제2 데이터에 대한 제2 데이터 통신이 요청될 수 있다. 예를 들어, 제2 전자 장치 320의 디스플레이(예: 도 1의 디스플레이 131)를 통해 표시되는 사용자 인터페이스에 기반하여 사용자가 제2 데이터를 선택하여 전송을 명령하는 사용자 입력을 발생할 수 있다.
상기 제2 전자 장치 320은 사용자 입력에 반응하여 상기 제2 데이터에 대한 데이터 통신 개시(initiation)를 인지하고, 상기 USB 인터페이스의 다른 데이터 경로(예: 차 순위(예: 제2 규격)의 제2 통신경로)를 활성화 할 수 있다. 한 실시 예에 따르면, 제2 전자 장치 320은 상기 USB 인터페이스의 CC 단자를 이용한 BMC 통신을 통해 제1 전자 장치 310과 상기 제2 데이터의 데이터 전송을 위한 제2 통신경로를 활성화 할 수 있다.
제2 전자 장치 320은 상기 제2 데이터에 한해 제1 전자 장치 310과 제2 전자 장치 320의 호스트와 슬레이브 역할을 변경하여 상기 활성화된 제2 통신경로에 기반하여 상기 제2 데이터에 대한 제2 데이터 통신을 수행할 수 있다. 여기서, 이전에 수행 중이던 제1 데이터에 대한 제1 데이터 통신은 유지될 수 있다. 즉, 상기 제1 데이터에 대한 호스트와 슬레이브 역할은 유지되고 제1 통신경로에 의한 제1 데이터 통신은 제1 데이터의 전송 완료 시까지 계속 수행될 수 있다.
도 5, 도 6, 도 7, 도 8, 도 9 및 도 10은 본 발명의 실시 예에 따른 전자 장치의 양방향 데이터 통신 수행에 대응하는 동작 및 그의 화면 예시를 설명하기 위해 도시하는 도면들이다.
상기 도 5 및 상기 도 6에 도시한 바와 같이, 상기 도 5 및 상기 도 6은 호스트로 동작하는 제1 전자 장치(예: 도 5)와 슬레이브로 동작하는 제2 전자 장치(예: 도 6)가 USB 인터페이스를 연결되어 데이터 통신을 수행하는 중에 각 전자 장치들의 동작 화면 예시를 나타낸 것이다. 한 실시 예에 따르면, 상기 도 5는 상기 제1 전자 장치가 상기 제2 전자 장치에 데이터(예: 제1 데이터(ABCD))의 전송을 개시하고, 데이터 전송과 관련된 사용자 인터페이스를 표시하고 있는 예시를 나타낼 수 있다. 상기 도 6은 상기 제2 전자 장치가 상기 제1 전자 장치가 전송하는 상기 데이터(예: 제1 데이터(ABCD))의 수신을 개시하고, 데이터 수신과 관련된 사용자 인터페이스를 표시하고 있는 예시를 나타낼 수 있다.
상기 도 5 및 상기 도 6을 참조하면, 상기 제1 전자 장치와 상기 제2 전자 장치 각각은, 예를 들면, 상기 도 1에 도시된 전자 장치 100의 전체 또는 일부를 포함할 수 있고, 전자 장치 100과 동일한 또는 다른 종류의 장치일 수 있다. 본 발명의 실시 예에서 상기 제1 전자 장치와 상기 제2 전자 장치는 DRP 모드를 지원 가능하고 앞서 살펴본 바와 같이 USB 케이블 이용하여 각 전자 장치들의 USB 인터페이스를 통해 연결될 수 있다. 상기 제1 전자 장치와 상기 제2 전자 장치는 USB 인터페이스에 기반하여 연결될 시 데이터 통신과 관련된 사용자 인터페이스를 표시하여 호스트 또는 슬레이브로 동작할 지에 대해 확인할 수 있다. 사용자는 상기 사용자 인터페이스에 기반하여 상기 제1 전자 장치와 상기 제2 전자 장치 각각에 대해 호스트 및 슬레이브를 설정할 수 있다.
상기 제1 전자 장치와 상기 제2 전자 장치는 사용자에 의해 그 역할(예: 호스트 또는 슬레이브)이 설정되면, 상기 설정에 대응하여 데이터 통신을 수행할 수 있다. 한 실시 예에 따르면, 상기 제1 전자 장치는 제1 규격(예: USB 3.0)을 지원하는 제1 통신경로(예: 데이터 고속 전송 경로)를 통해 사용자에 의해 선택되는 데이터 전송을 개시할 수 있고, 이에 대응하여 상기 제2 전자 장치는 제1 규격(예: USB3.0)을 지원하는 제1 통신경로(예: 데이터 고속 전송 경로)를 통해 상기 제1 전자 장치가 전송하는 데이터의 수신을 개시할 수 있다.
상기 제1 전자 장치 및 상기 제2 전자 장치 각각은 데이터 통신을 수행할 시 데이터 전송과 데이터 수신에 대응하는 각각의 사용자 인터페이스를 표시할 수 있다. 한 실시 예에 따르면, 상기 제1 전자 장치에는 데이터 전송의 진행 상태를 포함하는 사용자 인터페이스(예: 도 5의 예시)가 제공될 수 있고, 상기 제2 전자 장치에는 데이터 수신의 진행 상태를 포함하는 사용자 인터페이스(예: 도 6의 예시)가 제공될 수 있다. 이러한 예시가 상기 도 5 및 상기 도 6에 도시되어 있다. 상기 도 5에 도시된 바와 같이, 호스트로 동작하는 상기 제1 전자 장치는 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550)와 상기 데이터의 통신 상태(예: 송신중)를 표시할 수 있다. 상기 도 6에 도시된 바와 같이, 슬레이브로 동작하는 상기 제2 전자 장치는 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550)와 상기 데이터의 통신 상태(예: 수신중)를 표시할 수 있다.
본 발명의 실시 예에 따르면, 데이터 전송 및 데이터 수신과 관련된 상기 사용자 인터페이스는 공통적으로 전자 장치의 양“‡향 데이터 통신을 개시하기 위한 스위치 아이템 600을 제공할 수 있다. 상기 스위치 아이템 600은, 예를 들면, 데이터 통신 중인 데이터 이외에 다른 데이터에 대한 추가적인 데이터 통신을 실행하는 아이템을 나타낼 수 있다.
한 실시 예에 따르면, 상기 스위치 아이템 600은 사용자 입력에 따라 양방향 데이터 통신 기능을 실행할 수 있고, 양방향 데이터 통신 기능 실행에 반응하여 관련 사용자 인터페이스(예: USB 인터페이스를 통해 최초 연결 시 데이터 통신을 위한 호스트와 슬레이브 설정 및 대상 데이터 선택과 관련된 사용자 인터페이스)를 표시할 수 있다. 사용자는 상기 사용자 인터페이스에 기반하여 전자 장치들 간의 호스트와 슬레이브를 설정할 수 있고, 상기 다른 데이터를 선택하여 현재 수행 중인 데이터 통신과 함께 상기 다른 데이터에 대한 데이터 통신을 동시에 수행할 수 있다.
전자 장치는 현재 수행 중인 데이터 통신 중에 상기 스위치 아이템 600에 의해 양방향 데이터 통신 기능을 실행할 수 있고, 상기 사용자 입력에 대응하여 호스트 또는 슬레이브로 동작할 수 있다. 전자 장치들은 상기 호스트 또는 슬레이브 동작에 대응하여 현재 수행 중인 데이터 통신의 제1 통신경로 외의 다른 제2 통신경로에 기반하여 상기 다른 데이터의 전송 또는 수신을 처리할 수 있다.
예를 들어, 사용자는 제1 전자 장치에서 제2 전자 장치에 제1 데이터(예: 동영상 파일 등)를 전송하는 중에, 제1 전자 장치의 제2 데이터(예: 오디오 파일, 사진 파일, 메모, 연락처 등)를 상기 제2 전자 장치에 추가적으로 전달하고자 할 수 있다. 또한 사용자는 제1 전자 장치에서 제2 전자 장치에 제1 데이터(예: 동영상 파일 등)를 전송하는 중에, 제2 전자 장치의 제2 데이터(예: 오디오 파일, 사진 파일, 메모, 연락처 등)를 상기 제1 전자 장치에 추가적으로 전달하고자 할 수 있다.
본 발명의 실시 예에 따르면, 상기 제1 데이터의 데이터 통신에 대해 호스트로 동작하는 상기 제1 전자 장치는, 상기 제1 데이터를 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 기반하여 데이터를 전송하는 중에, 상기 스위치 아이템 600의 선택을 감지하면 CC 단자의 BMC 통신을 통해 자동으로 제2 규격(예: USB 2.0)에 따른 제2 통신경로를 활성화 할 수 있다. 상기 제1 전자 장치는 상기 제2 통신경로에 기반하여 사용자에 의해 선택된 제2 데이터의 데이터 통신을 수행할 수 있다. 여기서, 상기 제1 전자 장치는 상기 제2 데이터의 데이터 통신에 대해 사용자 설정에 대응하여 호스트로 동작하거나 또는 슬레이브로 동작할 수 있다.
다양한 실시 예들에 따르면, 상기 제1 전자 장치는 제2 데이터의 데이터 통신에 대해 슬레이브로 동작하는 경우, 상기 제2 데이터의 데이터 통신에 한해 상기 제2 전자 장치와 기존에 설정된 호스트와 슬레이브의 역할을 변경할 수 있다. 즉, 상기 제1 전자 장치는 상기 제1 데이터에 대한 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 의한 데이터 전송은 그대로 진행하면서, 상기 제2 데이터에 대해 제2 규격(예: USB 2.0)에 따른 제2 통신경로에 의한 데이터 수신을 수행할 수 있다. 이에 대한 화면 예시가 상기 도 7에 도시되어 있다.
상기 도 7에 도시된 바와 같이, 상기 제1 전자 장치는 양방향 데이터 통신(예: 제1 데이터의 호스트에 의한 데이터 전송, 제2 데이터의 슬레이브에 의한 데이터 수신)을 수행할 시, 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550, 제2 데이터(1234) 750)와 해당 데이터(550, 750)의 통신 상태(예: 송신중, 수신중)를 표시할 수 있고, 해당 데이터에 대한 제1 전자 장치의 동작 정보(예: HOST 555, SLAVE 755)를 포함하여 표시할 수 있다. 상기 도 7의 예시에서, 제1 전자 장치가 양방향 데이터 통신을 수행 중인 경우 스위치 아이템 600의 표시는 생략되거나, 비활성화 상태로 표시될 수 있다. 또한 상기 동작 정보(555, 755)는 전자 장치의 설정에 따라 그 표시가 생략될 수도 있다.
다양한 실시 예들에 따르면, 상기 제1 전자 장치는 제2 데이터의 데이터 통신에 대해 호스트로 동작하는 경우, 상기 제2 데이터의 데이터 통신에 대해서도 상기 제2 전자 장치와 기존에 설정된 호스트와 슬레이브의 역할을 유지할 수 있다. 즉, 상기 제1 전자 장치는 상기 제1 데이터에 대한 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 의한 데이터 전송은 그대로 진행하면서, 상기 제2 데이터에 대해 제2 규격(예: USB 2.0)에 따른 제2 통신경로에 의한 데이터 전송을 수행할 수 있다. 이에 대한 화면 예시가 상기 도 8에 도시되어 있다.
상기 도 8에 도시된 바와 같이, 상기 제1 전자 장치는 양방향 데이터 통신(예: 제1 데이터의 호스트에 의한 데이터 전송, 제2 데이터의 호스트에 의한 데이터 전송)을 수행할 시, 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550, 제2 데이터(1234) 750)와 해당 데이터(550, 750)의 통신 상태(예: 송신중, 송신중)를 표시할 수 있고, 해당 데이터에 대한 제1 전자 장치의 동작 정보(예: HOST 555, HOST 855)를 포함하여 표시할 수 있다. 상기 도 8의 예시에서, 제1 전자 장치가 양방향 데이터 통신을 수행 중인 경우 스위치 아이템 600의 표시는 생략되거나, 비활성화 상태로 표시될 수 있다. 또한 상기 동작 정보(555, 855)는 전자 장치의 설정에 따라 그 표시가 생략될 수도 있다.
본 발명의 실시 예에 따르면, 상기 제1 데이터의 데이터 통신에 대해 슬레이브로 동작하는 상기 제2 전자 장치는, 상기 제1 데이터를 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 기반하여 데이터를 수신하는 중에, 상기 스위치 아이템 600의 선택을 감지하면 CC 단자의 BMC 통신을 통해 자동으로 제2 규격(예: USB 2.0)에 따른 제2 통신경로를 활성화 할 수 있다. 상기 제2 전자 장치는 상기 제2 통신경로에 기반하여 사용자에 의해 선택된 제2 데이터의 데이터 통신을 수행할 수 있다. 여기서, 상기 제2 전자 장치는 상기 제2 데이터의 데이터 통신에 대해 사용자 설정에 대응하여 호스트로 동작하거나 또는 슬레이브로 동작할 수 있다.
다양한 실시 예들에 따르면, 상기 제2 전자 장치는 제2 데이터의 데이터 통신에 대해 호스트로 동작하는 경우, 상기 제2 데이터의 데이터 통신에 한해 상기 제1 전자 장치와 기존에 설정된 호스트와 슬레이브의 역할을 변경할 수 있다. 즉, 상기 제2 전자 장치는 상기 제1 데이터에 대한 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 의한 데이터 수신은 그대로 진행하면서, 상기 제2 데이터에 대해 제2 규격(예: USB 2.0)에 따른 제2 통신경로에 의한 데이터 전송을 수행할 수 있다. 이에 대한 화면 예시가 상기 도 9에 도시되어 있다.
상기 도 9에 도시된 바와 같이, 상기 제2 전자 장치는 양방향 데이터 통신(예: 제1 데이터의 슬레이브에 의한 데이터 수신, 제2 데이터의 호스트에 의한 데이터 전송)을 수행할 시, 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550, 제2 데이터(1234) 750)와 해당 데이터(550, 750)의 통신 상태(예: 수신중, 송신중)를 표시할 수 있고, 해당 데이터에 대한 제2 전자 장치의 동작 정보(예: SLAVE 655, HOST 955)를 포함하여 표시할 수 있다. 상기 도 9의 예시에서, 제2 전자 장치가 양방향 데이터 통신을 수행 중인 경우 스위치 아이템 600의 표시는 생략되거나, 비활성화 상태로 표시될 수 있다. 또한 상기 동작 정보(755, 1055)는 전자 장치의 설정에 따라 그 표시가 생략될 수도 있다.
다양한 실시 예들에 따르면, 상기 제2 전자 장치는 제2 데이터의 데이터 통신에 대해 슬레이브로 동작하는 경우, 상기 제2 데이터의 데이터 통신에 대해서도 상기 제1 전자 장치와 기존에 설정된 호스트와 슬레이브의 역할을 유지할 수 있다. 즉, 상기 제2 전자 장치는 상기 제1 데이터에 대한 제1 규격(예: USB 3.0)에 따른 제1 통신경로에 의한 데이터 수신은 그대로 진행하면서, 상기 제2 데이터에 대해 제2 규격(예: USB 2.0)에 따른 제2 통신경로에 의한 데이터 수신을 수행할 수 있다. 이에 대한 화면 예시가 상기 도 10에 도시되어 있다.
상기 도 10에 도시된 바와 같이, 상기 제2 전자 장치는 양방향 데이터 통신(예: 제1 데이터의 슬레이브에 의한 데이터 수신, 제2 데이터의 슬레이브에 의한 데이터 수신)을 수행할 시, 데이터 통신에 이용되는 데이터(예: 제1 데이터(ABCD) 550, 제2 데이터(1234) 750)와 해당 데이터(550, 750)의 통신 상태(예: 수신중, 수신중)를 표시할 수 있고, 해당 데이터에 대한 제2 전자 장치의 동작 정보(예: SLAVE 655, SLAVE 1055)를 포함하여 표시할 수 있다. 상기 도 10의 예시에서, 제2 전자 장치가 양방향 데이터 통신을 수행 중인 경우 스위치 아이템 600의 표시는 생략되거나, 비활성화 상태로 표시될 수 있다. 또한 상기 동작 정보(755, 1155)는 전자 장치의 설정에 따라 그 표시가 생략될 수도 있다.
한편, 상기 도 5 내지 도 10에서 도시는 생략하였으나, 본 발명의 다양한 실시 예들에서 상기 스위치 아이템 600은 아이콘, 메뉴, 위젯, 텍스트 등 적어도 일부에 기반하여 제공될 수 있다. 추가적으로 또는 대체적으로, 상기 스위치 아이템 600은 상기 양방향 데이터 통신을 개시하기 위해 설정된 다양한 사용자 제스처 입력으로 대체될 수 있으며, 전자 장치는 상기 사용자 제스처 입력에 반응하여 상기 스위치 아이템 600에 의한 기능 실행과 대응되는 동작을 자동 수행할 수 있다. 상기 사용자 제스처는 전자 장치의 자세를 특정 방향으로 회전하는 등의 모션 기반 제스처, 터치스크린 상에 특정 패턴의 터치를 입력하는 터치 기반 제스처, 다양한 센서(예: 카메라 모듈, 지문 인식 센서 등)에 통해 사용자의 생체 정보(예: 홍채, 지문 등의 정보)를 트래킹(tracking) 하여 인식하는 센서 기반 제스처 등을 포함할 수 있다.
도 11은 본 발명의 실시 예에 따른 전자 장치의 동시 양방향 데이터 통신 방법을 도시하는 흐름도이다.
상기 도 11을 참조하면, 동작 1101에서, 제어부 180은 다른 전자 장치의 연결을 감지할 수 있다. 예를 들어, 제1 전자 장치와 제2 전자 장치가 USB 인터페이스를 통해 연결될 수 있고, 제1 전자 장치와 제2 전자 장치의 제어부 180은 상기 USB 인터페이스를 통해 접속되는 다른 전자 장치의 연결을 감지할 수 있다. 본 발명의 실시 예에 따르면, 상기 제1 전자 장치와 상기 제2 전자 장치는 DRP 모드를 지원할 수 있고, 제1 전자 장치와 제2 전자 장치의 USB 인터페이스 간을 연결하는 USB 케이블을 통해 상호 간에 연결될 수 있다.
동작, 1103에서, 제어부 180은 사용자 인터페이스 표시를 제어할 수 있다. 예를 들어, 제어부 180은 상기 다른 전자 장치의 연결 감지에 반응하여 전자 장치의 동작(역할) 설정 및 통신을 수행하고자 하는 데이터의 선택 등과 관련된 사용자 인터페이스를 표시할 수 있다. 상기 사용자 인터페이스는 전자 장치가 호스트로 동작하게 할 지, 또는 슬레이브로 동작하게 할 지에 대한 확인을 위한 다양한 그래픽적인 요소를 포함할 수 있다.
동작 1105에서, 제어부 180은 사용자 입력에 기반하여 전자 장치들 간의 데이터 통신에 대한 호스트 또는 슬레이브를 설정할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 전자 장치에서 동작할 호스트 또는 슬레이브를 설정하는 사용자 입력을 수신할 수 있고, 상기 사용자 입력에 대응하여 전자 장치의 동작(역할)을 설정할 수 있다.
동작 1107에서, 제어부 180은 전자 장치의 동작(역할)이 설정되면, 상기 설정에 대응하여 데이터 통신을 수행할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제1 데이터(예: 동영상 파일, 사진 파일, 음악 파일, 연락처 등)에 대하여, 데이터 통신에 우선 순위가 있는 제1 규격(예: USB 3.0)의 제1 통신경로를 활성화 할 수 있고, 상기 제1 통신경로를 통해 제1 데이터 통신을 수행할 수 있다. 한 실시 예에 따르면, 호스트로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 슬레이브로 동작하는 제2 전자 장치에 데이터가 전송될 수 있다. 본 발명의 실시 예에 따르면, 제어부 180은 데이터 통신을 개시할 시 상기 데이터 통신과 관련된 사용자 인터페이스 표시를 처리할 수 있다. 본 발명의 실시 예에서 상기 사용자 인터페이스는 스위치 아이템 600을 포함하여 제공될 수 있다.
동작 1109에서, 제어부 180은 상기 제1 데이터 통신을 수행하는 중에 다른 데이터 통신 수행 요청을 감지할 수 있다. 예를 들어, 사용자는 제1 데이터를 수신하는 제2 전자 장치(슬레이브로 동작 중인 전자 장치)에서 제2 데이터(예: 사진 파일, 음악 파일, 동영상 파일, 연락처 등)를 제1 전자 장치에 전달하고자 할 수 있다. 또는 사용자는 제1 데이터를 전송하는 제1 전자 장치(호스트로 동작 중인 전자 장치)에서 제2 데이터를 제2 전자 장치에 전달하고자 할 수 있다. 이에, 사용자는 제1 전자 장치 또는 제2 전자 장치를 이용하여 동시 양방향 통신을 수행하기 위한 사용자 입력을 발생할 수 있다. 한 실시 예에 따르면, 사용자는 전술한 바와 같이 스위치 아이템 600을 선택하거나, 또는 미리 설정된 특정 사용자 제스처를 입력하는 것에 기반하여 동시 양방향 통신 수행을 명령할 수 있다.
동작 1111에서, 제어부 180은 사용자 인터페이스 표시를 제어할 수 있다. 예를 들어, 제어부 180은 상기 사용자 입력에 반응하여 상기 제2 데이터에 대한 전자 장치의 동작(역할) 설정 및 통신을 수행하고자 하는 데이터의 선택 등과 관련된 사용자 인터페이스를 표시할 수 있다. 상기 사용자 인터페이스는 전자 장치가 호스트로 동작하게 할 지, 또는 슬레이브로 동작하게 할 지에 대한 확인을 위한 다양한 그래픽적인 요소를 포함할 수 있다.
동작 1113에서, 제어부 180은 사용자 입력에 기반하여 전자 장치들 간의 추가 데이터 통신에 대한 호스트 또는 슬레이브를 설정할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 전자 장치에서 상기 제2 데이터에 대해 동작할 호스트 또는 슬레이브를 설정하는 사용자 입력을 수신할 수 있고, 상기 사용자 입력에 대응하여 전자 장치의 동작(역할)을 설정할 수 있다.
동작 1115에서, 제어부 180은 상기 제2 데이터에 대한 전자 장치의 동작(역할)이 설정되면, 상기 설정에 대응하여 데이터 통신을 수행할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제2 데이터(예: 동영상 파일, 사진 파일, 음악 파일, 연락처 등)에 대하여, 현재 사용되고 있지 않은 제2 규격(예: USB 2.0)의 제2 통신경로를 활성화 할 수 있고, 상기 제2 통신경로를 통해 제2 데이터 통신을 수행할 수 있다. 한 실시 예에 따르면, 호스트로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 슬레이브로 동작하는 제2 전자 장치에 데이터를 전송하는 제1 데이터 통신은 데이터 전송 완료 시까지 계속 유지하면서, 상기 제2 규격의 제2 통신경로를 통해 제2 데이터 통신을 수행할 수 있다. 다양한 실시 예들에 따르면, 제어부 180은 상기 제2 데이터에 대한 전자 장치의 동작(역할)에 대응하여, 상기 제1 데이터에 대해 설정된 호스트 및 슬레이브 관계를 변경하여 상기 제2 데이터의 전송 또는 수신을 처리하거나, 또는 상기 제1 데이터에 대해 설정된 호스트 및 슬레이브 관계를 유지하고 상기 제2 데이터의 전송 또는 수신을 처리할 수 있다.
한편, 상기 도 11에서 도시는 생략하였으나, 본 발명의 다양한 실시 예에 따르면, 상기 동작 1111의 사용자 인터페이스 표시 동작과, 상기 동작 1113의 호스트 또는 슬레이브 설정 동작은 생략될 수 있다. 한 실시 예에 따르면, 전자 장치가 양방향 데이터 통신을 개시할 때, 기존에 수행 중이던 제1 데이터 통신에 대응하는 전자 장치의 역할(예: 호스트)과, 추가 수행하고자 하는 제2 데이터 통신에 대응하는 전자 장치의 역할(예: 슬레이브)이 반대되는 경우, 또는 본 발명에서 제1 데이터 통신과 제2 데이터 통신에 대해 서로 상반되는 방향으로만 지원하도록 전자 장치에 설정되는 경우 등에서는, 상기 동작 1111과 상기 동작 1113은 생략되고, 상기 동작 1115로 바로 진행하여 양방향 데이터 통신을 자동으로 수행할 수 있다.
도 12는 본 발명의 실시 예에 따른 전자 장치의 동시 양방향 데이터 통신 방법을 도시하는 흐름도이다.
상기 도 12를 참조하면, 동작 1201에서, 제어부 180은 다른 전자 장치의 연결을 감지할 수 있다. 예를 들어, 제1 전자 장치와 제2 전자 장치의 USB 인터페이스 간을 연결을 USB 케이블을 통해 상호 간에 연결될 수 있다.
동작 1203에서, 제어부 180은 사용자 인터페이스 표시를 제어할 수 있다. 예를 들어, 제어부 180은 상기 다른 전자 장치의 연결 감지에 반응하여 전자 장치의 동작(역할) 설정 및 통신을 수행하고자 하는 데이터(예: 제1 데이터)의 선택 등을 수행할 수 있는 사용자 인터페이스 표시를 제어할 수 있다.
동작 1205에서, 제어부 180은 상기 사용자 인터페이스에 기반하여 설정되는 동작(역할)을 판단할 수 있다. 예를 들어, 제어부 180은 전자 장치가 호스트로 동작하도록 설정되는지, 또는 슬레이브로 동작하도록 설정되는지 판단할 수 있다.
상기 동작 1205에서, 호스트 설정인 것으로 판단하면(동작 1205의 YES), 동작 1207에서, 제어부 180은 사용자에 의해 선택된 제1 데이터(예: 호스트로 동작하는 제1 전자 장치에서 선택된 데이터)의 전송을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제1 데이터에 대하여, 데이터 통신에 우선 순위가 있는 제1 규격(예: USB 3.0)의 제1 통신경로를 활성화 할 수 있고, 상기 제1 통신경로를 통해 제1 데이터 전송을 수행할 수 있다.
동작 1209에서, 제어부 180은 상기 제1 데이터 전송 완료 여부를 체크할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 전송을 수행하는 중에, 상기 제1 데이터가 슬레이브로 동작하는 제2 전자 장치에 그 전송이 완료되는지 여부를 판단할 수 있다.
상기 동작 1209에서, 상기 제1 데이터 전송이 완료되는 경우(동작 1209의 YES), 동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 전송 완료에 대한 정보를 표시할 수 있고, 사용자 입력에 대응하는 동작(기능)을 처리할 수 있다.
상기 동작 1209에서, 상기 제1 데이터 전송이 완료되지 않은 경우(동작 1209의 NO), 동작 1211에서, 제어부 180은 제2 규격에 의한 데이터 통신 요청이 있는지 판단할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 전송을 수행하는 중에 다른 데이터(예: 제2 데이터)에 대한 통신 수행 요청 여부를 감지할 수 있다. 한 실시 예에 따르면, 사용자는 제1 데이터를 수신하는 제2 전자 장치(슬레이브로 동작 중인 전자 장치)에서 제2 데이터를 제1 전자 장치에 전달하고자 할 수 있다. 또는 사용자는 제1 데이터를 전송하는 제1 전자 장치(호스트로 동작 중인 전자 장치)에서 제2 데이터를 제2 전자 장치에 추가 전달하고자 할 수 있다. 이에, 사용자는 제1 전자 장치 또는 제2 전자 장치를 이용하여 동시 양방향 통신을 수행하기 위한 사용자 입력을 발생할 수 있다. 본 발명의 실시 예에 따르면, 사용자는 스위치 아이템 600을 선택하거나, 또는 미리 설정된 특정 사용자 제스처를 입력하는 것에 기반하여 동시 양방향 통신 수행을 명령할 수 있다.
상기 동작 1211에서, 제2 규격에 의한 데이터 통신 요청이 감지되지 않으면(동작 1211의 NO), 제어부 180은 상기 동작 1207로 진행하여 그 이하의 동작 수행을 제어할 수 있다.
상기 동작 1211에서, 제2 규격에 의한 데이터 통신 요청이 감지되면(동작 1211의 YES), 동작 12313에서, 제어부 180은 상기 제2 데이터에 대한 전자 장치의 동작(역할)(예: 호스트 또는 슬레이브 동작)을 설정할 수 있다. 예를 들어, 제어부 180은 상기 제2 규격에 의한 데이터 통신 요청에 응답하여, 상기 제2 데이터에 대한 전자 장치의 동작(역할) 설정 및 통신을 수행하고자 하는 제2 데이터의 선택 등과 관련된 사용자 인터페이스를 표시할 수 있다. 상기 사용자 인터페이스는 전자 장치가 호스트로 동작하게 할 지, 또는 슬레이브로 동작하게 할 지에 대한 확인을 위한 다양한 그래픽적인 요소를 포함할 수 있다. 제어부 180은 상기 사용자 인터페이스에 기반하여 전자 장치에서 상기 제2 데이터에 대해 동작할 호스트 또는 슬레이브를 설정하는 사용자 입력을 수신할 수 있고, 상기 사용자 입력에 대응하여 전자 장치의 동작(역할)을 설정할 수 있다.
동작 1215에서, 제어부 180은 사용자 입력에 대응하여 상기 제2 데이터에 대한 전자 장치의 동작(역할)이 설정될 시, 상기 사용자 인터페이스에 기반하여 설정되는 동작(역할)을 판단할 수 있다. 예를 들어, 제어부 180은 전자 장치가 상기 제2 데이터에 대해 호스트로 동작하도록 설정되는지, 또는 슬레이브로 동작하도록 설정되는지 판단할 수 있다.
상기 동작 1215에서, 호스트 설정인 것으로 판단하면(동작 1215의 YES), 동작 1217에서, 제어부 180은 사용자에 의해 선택된 제2 데이터(예: 제1 데이터에 대해 호스트로 동작하는 제1 전자 장치에서 선택된 데이터)의 전송을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제2 데이터에 대하여, 현재 데이터 통신에 사용되고 있지 않은 차 순위의 제2 규격(예: USB 2.0)의 제2 통신경로를 활성화 할 수 있고, 상기 제2 통신경로를 통해 제2 데이터 전송을 수행할 수 있다. 한 실시 예에 따르면, 호스트로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 슬레이브로 동작하는 제2 전자 장치에 제1 데이터를 전송하는 데이터 통신은 상기 제1 데이터의 전송 완료 시까지 계속 유지하면서, 상기 제2 규격의 제2 통신경로를 통해 상기 제2 데이터를 전송하는 데이터 통신을 동시에 수행할 수 있다.
동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 서로 다른 통신경로에 기반하여 상기 제1 데이터의 전송과 상기 제2 데이터의 전송에 대한 데이터 통신을 동시에 처리하면서, 데이터 통신의 완료 여부를 체크할 수 있다. 제어부 180은 어느 하나의 데이터 통신이 완료될 시 현재 진행 중인 다른 하나의 데이터 통신의 통신경로 변경 여부를 판단하고, 그에 따른 동작을 처리할 수 있다.
상기 동작 1215에서, 슬레이브 설정인 것으로 판단하면(동작 1215의 NO), 동작 1219에서, 제어부 180은 사용자에 의해 선택된 제2 데이터(예: 제1 데이터에 대해 슬레이브로 동작하는 제2 전자 장치에서 선택된 데이터)의 수신을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제2 데이터에 대하여, 현재 데이터 통신에 사용되고 있지 않은 차 순위의 제2 규격(예: USB 2.0)의 제2 통신경로를 활성화 할 수 있고, 상기 제2 통신경로를 통해 제2 데이터 수신을 수행할 수 있다. 한 실시 예에 따르면, 호스트로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 슬레이브로 동작하는 제2 전자 장치에 제1 데이터를 전송하는 데이터 통신은 상기 제1 데이터의 전송 완료 시까지 계속 유지하면서, 상기 제2 규격의 제2 통신경로를 통해 상기 제2 데이터를 수신하는 데이터 통신을 동시에 수행할 수 있다.
동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 서로 다른 통신경로에 기반하여 상기 제1 데이터의 전송과 상기 제2 데이터의 수신에 대한 데이터 통신을 동시에 처리하면서, 데이터 통신의 완료 여부를 체크할 수 있다. 제어부 180은 어느 하나의 데이터 통신이 완료될 시 현재 진행 중인 다른 하나의 데이터 통신의 통신 경로 변경 여부를 판단하고, 그에 따른 동작을 처리할 수 있다.
상기 동작 1205에서, 슬레이브 설정인 것으로 판단하면(동작 1205의 NO), 동작 1231에서, 제어부 180은 사용자에 의해 선택된 제1 데이터(예: 호스트로 동작하는 제2 전자 장치에서 선택된 데이터)의 수신을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제1 데이터에 대하여, 데이터 통신에 우선 순위가 있는 제1 규격(예: USB 3.0)의 제1 통신경로를 활성화 할 수 있고, 상기 제1 통신경로를 통해 제1 데이터 수신을 수행할 수 있다.
동작 1233에서, 제어부 180은 상기 제1 데이터 수신 완료 여부를 체크할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 수신을 수행하는 중에, 상기 제1 데이터가 호스트로 동작하는 제2 전자 장치에 의해 그 전송이 완료되는지 여부를 판단할 수 있다.
상기 동작 1233에서, 상기 제1 데이터 수신이 완료되는 경우(동작 1233의 YES), 동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 수신 완료에 대한 정보를 표시할 수 있고, 사용자 입력에 대응하는 동작(기능)을 처리할 수 있다.
상기 동작 1233에서, 상기 제1 데이터 수신이 완료되지 않은 경우(동작 1233의 NO), 동작 1235에서, 제어부 180은 제2 규격에 의한 데이터 통신 요청이 있는지 판단할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터 수신을 수행하는 중에 다른 데이터(예: 제2 데이터)에 대한 통신 수행 요청 여부를 감지할 수 있다. 한 실시 예에 따르면, 사용자는 제1 데이터를 수신하는 제1 전자 장치(슬레이브로 동작 중인 전자 장치)에서 제2 데이터를 제2 전자 장치에 전달하고자 할 수 있다. 또는 사용자는 제1 데이터를 전송하는 제2 전자 장치(예: 호스트로 동작 중인 전자 장치)에서 제2 데이터를 제1 전자 장치에 추가 전달하고자 할 수 있다. 이에, 사용자는 제1 전자 장치 또는 제2 전자 장치를 이용하여 동시 양방향 통신을 수행하기 위한 사용자 입력을 발생할 수 있다. 본 발명의 실시 예에 따르면, 사용자는 스위치 아이템 600을 선택하거나, 또는 미리 설정된 특정 사용자 제스처를 입력하는 것에 기반하여 동시 양방향 통신 수행을 명령할 수 있다.
상기 동작 1235에서, 제2 규격에 의한 데이터 통신 요청이 감지되지 않으면(동작 1235의 NO), 제어부 180은 상기 동작 1231로 진행하여 그 이하의 동작 수행을 제어할 수 있다.
상기 동작 1235에서, 제2 규격에 의한 데이터 통신 요청이 감지되면(동작 1235의 YES), 동작 1213에서, 제어부 180은 상기 제2 데이터에 대한 전자 장치의 동작(역할)(예: 호스트 또는 슬레이브 동작)을 설정할 수 있다. 예를 들어, 제어부 180은 상기 제2 규격에 의한 데이터 통신 요청에 응답하여, 상기 제2 데이터에 대한 전자 장치의 동작(역할) 설정 및 통신을 수행하고자 하는 제2 데이터의 선택 등과 관련된 사용자 인터페이스를 표시할 수 있다. 상기 사용자 인터페이스는 전자 장치가 호스트로 동작하게 할 지, 또는 슬레이브 동작하게 할 지에 대한 확인을 위한 다양한 그래픽적인 요소를 포함할 수 있다. 제어부 180은 상기 사용자 인터페이스에 기반하여 전자 장치에서 상기 제2 데이터에 대해 동작할 호스트 또는 슬레이브를 설정하는 사용자 입력을 수신할 수 있고, 상기 사용자 입력에 대응하여 전자 장치의 동작(역할)을 설정할 수 있다.
동작 1215에서, 제어부 180은 사용자 입력에 대응하여 상기 제2 데이터에 대한 전자 장치의 동작(역할)이 설정될 시, 상기 사용자 인터페이스에 기반하여 설정되는 동작(역할)을 판단할 수 있다. 예를 들어, 제어부 180은 전자 장치가 상기 제2 데이터에 대해 호스트로 동작하도록 설정되는지, 또는 슬레이브로 동작하도록 설정되는지 판단할 수 있다.
상기 동작 1215에서, 호스트 설정인 것으로 판단하면(동작 1215의 YES), 동작 1217에서, 제어부 180은 사용자에 의해 선택된 제2 데이터(예: 제1 데이터에 대해 슬레이브로 동작하는 제1 전자 장치에서 선택된 데이터)의 전송을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제2 데이터에 대하여, 현재 데이터 통신에 사용되고 있지 않은 차 순위의 제2 규격(예: USB 2.0)의 제2 통신경로를 활성화 할 수 있고, 상기 제2 통신경로를 통해 제2 데이터 전송을 수행할 수 있다. 한 실시 예에 따르면, 슬레이브로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 호스트로 동작하는 제2 전자 장치로부터 제1 데이터를 수신하는 데이터 통신은 상기 제1 데이터의 수신 완료 시까지 계속 유지하면서, 상기 제2 규격의 제2 통신경로를 통해 상기 제2 데이터를 전송하는 데이터 통신을 동시에 수행할 수 있다.
동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 서로 다른 통신경로에 기반하여 상기 제1 데이터의 수신과 상기 제2 데이터의 전송에 대한 데이터 통신을 동시에 처리하면서, 데이터 통신의 완료 여부를 체크할 수 있다. 제어부 180은 어느 하나의 데이터 통신이 완료될 시 현재 진행 중인 다른 하나의 데이터 통신의 통신경로 변경 여부를 판단하고, 그에 따른 동작을 처리할 수 있다.
상기 동작 1215에서, 슬레이브 설정인 것으로 판단하면(동작 1215의 NO), 동작 1219에서, 제어부 180은 사용자에 의해 선택된 제2 데이터(예: 제1 데이터에 대해 호스트로 동작하는 제2 전자 장치에서 선택된 데이터)의 수신을 처리할 수 있다. 예를 들어, 제어부 180은 상기 사용자 인터페이스에 기반하여 선택되는 제2 데이터에 대하여, 현재 데이터 통신에 사용되고 있지 않은 차 순위의 제2 규격(예: USB 2.0)의 제2 통신경로를 활성화할 수 있고, 상기 제2 통신경로를 통해 제2 데이터 수신을 수행할 수 있다. 한 실시 예에 따르면, 슬레이브로 동작하는 제1 전자 장치에서 상기 제1 규격의 제1 통신경로를 통해 호스트로 동작하는 제2 전자 장치로부터 제1 데이터를 수신하는 데이터 통신은 상기 제1 데이터의 수신 완료 시까지 계속 유지하면서, 상기 제2 규격의 제2 통신경로를 통해 상기 제2 데이터를 수신하는 데이터 통신을 동시에 수행할 수 있다.
동작 1221에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 서로 다른 통신경로에 기반하여 상기 제1 데이터의 수신과 상기 제2 데이터의 수신에 대한 데이터 통신을 동시에 처리하면서, 데이터 통신의 완료 여부를 체크할 수 있다. 제어부 180은 어느 하나의 데이터 통신이 완료될 시 현재 진행 중인 다른 하나의 데이터 통신의 통신 경로 변경 여부를 판단하고, 그에 따른 동작을 처리할 수 있다.
도 13은 본 발명의 실시 예에 따른 전자 장치에서 데이터 통신을 위한 통신경로를 변경하는 동작을 도시하는 흐름도이다.
상기 도 13에 도시한 바와 같이, 상기 도 13은 전자 장치들(예: 제1 전자 장치, 제2 전자 장치) 간에 서로 다른 규격에 기반하여 동시 양방향 데이터 통신을 수행하는 중에, 어느 하나의 규격에 의한 데이터 통신 완료 시 다른 하나의 규격에 의한 데이터 통신의 통신경로를 적응적으로 변경하여 데이터 통신을 수행하는 동작 예시를 나타낸 것이다.
상기 도 13을 참조하면, 동작 1301에서, 제어부 180은 제1 데이터와 제2 데이터에 대한 양방향 데이터 통신 수행을 처리할 수 있다.
동작 1303에서, 제어부 180은 상기 양방향 데이터 통신 수행 중에, 적어도 하나의 데이터에 대한 데이터 통신 완료 여부를 판단할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터의 데이터 통신 또는 상기 제2 데이터의 데이터 통신을 진행 상태를 체크할 수 있고, 적어도 하나의 데이터 통신(예: 전송 또는 수신)이 완료될 시 해당 데이터의 데이터 통신 완료를 감지할 수 있다.
상기 동작 1303에서, 데이터 통신 완료가 감지되지 않은 경우(동작 1303의 NO), 제어부 180은 상기 동작 1301로 진행하여 그 이하의 동작 수행을 제어할 수 있다.
상기 동작 1303에서, 데이터 통신 완료가 감지되는 경우(동작 1303의 YES), 동작 1305에서, 제어부 180은 데이터 통신이 완료된 데이터를 체크하여, 동작 1307에서, 완료된 데이터 통신의 규격 및 그에 대응하는 통신경로를 판단할 수 있다. 예를 들어, 제어부 180은 완료된 데이터 통신이 제1 규격의 제1 통신경로를 기반으로 하는 데이터 통신의 완료인지, 또는 제2 규격의 제2 통신경로를 기반으로 하는 데이터 통신의 완료인지 판단할 수 있다.
상기 동작 1307에서, 제2 규격의 제2 통신경로를 기반으로 하는 데이터 통신의 완료인 것으로 판단하면(동작 1307의 NO), 동작 1309에서, 제어부 180은 상기 제2 규격의 제2 통신경로에 대한 데이터 통신을 완료(예: 제2 규격의 제2 통신경로 비활성화 등)할 수 있고, 상기 제1 규격의 제1 통신경로에 대한 데이터 통신을 계속 수행(유지)할 수 있다. 이후, 동작 1321에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 제1 규격의 제1 통신경로에 의한 데이터 통신의 완료 여부를 체크할 수 있고, 상기 데이터 통신 완료에 따른 관련 동작을 처리할 수 있다.
상기 동작 1307에서, 제1 규격의 제1 통신경로를 기반으로 하는 데이터 통신의 완료인 것으로 판단하면(동작 1307의 YES), 동작 1311에서, 제어부 180은 현재 진행 중인 데이터 통신의 데이터 정보를 체크할 수 있다. 예를 들어, 제어부 180은 제2 규격의 제2 통신경로에 기반하여 수행 중인 데이터 통신에 대응하는 데이터의 데이터 정보를 체크할 수 있다. 본 발명의 실시 예에서, 상기 데이터 정보는 데이터의 크기(예: 데이터 통신 완료 시까지 남은 용량) 또는 데이터 통신에 필요한 예상 시간(예: 데이터 통신 완료 예상 시간) 중 적어도 일부에 기반하여 정의될 수 있다.
동작 1313에서, 제어부 180은 상기 데이터 정보와 미리 설정된 기준값을 비교하여 상기 데이터 정보가 상기 기준값 보다 큰 값을 가지는지 판단할 수 있다.
상기 동작 1313에서, 데이터 정보가 기준값 이하인 것으로 판단하면(동작 1313의 NO), 동작 1315에서, 제어부 180은 상기 제2 규격의 제2 통신경로에 대한 데이터 통신을 계속 수행(유지)할 수 있다. 이후, 동작 1321에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 제2 규격의 제2 통신경로에 의한 데이터 통신의 완료 여부를 체크할 수 있고, 상기 데이터 통신 완료에 따른 관련 동작을 처리할 수 있다.
상기 동작 1313에서, 데이터 정보가 기준값 보다 큰 것으로 판단하면(동작 1313의 YES), 동작 1317에서, 제어부 180은 데이터 통신경로를 변경할 수 있다. 예를 들어, 제어부 180은 상기 데이터 통신에 대해 사용되고 있는 제2 규격의 제2 통신경로를, 현재 사용되고 있지 않은 우선 순위의 제1 규격의 제1 통신경로로 변경할 수 있다. 한 실시 예에 따르면, 제2 규격의 데이터 통신 속도에 비해 제1 규격의 데이터 통신 속도가 빠를 수 있다. 따라서 본 발명의 실시 예에서 전자 장치는 보다 빠른 데이터 통신 처리를 위해, 낮은 속도를 지원하는 제2 규격의 제2 통신경로에 의한 데이터 통신을 빠른 속도를 지원하는 제1 규격의 제1 통신경로로 변경하여 데이터 통신을 계속 처리할 수 있다.
동작 1319에서, 제어부 180은 상기 변경된 제1 규격의 제1 통신경로에 기반하여 상기 데이터에 대한 데이터 통신을 처리할 수 있다. 한 실시 예에 따르면, 제1 규격의 제2 통신경로를 활성화 및 상기 제2 규격의 제2 통신경로에 의한 데이터 통신을 일시 중단할 수 있다. 제어부 180은 상기 활성화된 제1 규격의 제1 통신경로를 통해 상기 일시 중단된 데이터 통신을 재개 할 수 있다. 이에 의해, 데이터 통신의 단절이나 데이터 누락 없이 데이터 통신이 계속 이루어질 수 있다.
동작 1321에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 변경된 통신경로에 의한 데이터 통신의 완료 여부를 체크할 수 있고, 상기 데이터 통신 완료에 따른 관련 동작을 처리할 수 있다.
한편, 상기 도 13에서 도시는 생략하였으나, 본 발명의 다양한 실시 예에 따르면, 상기 동작 1311의 데이터 정보 체크 동작과, 상기 동작 1313의 기준값에 기반한 데이터 정보 판단 동작은 생략될 수 있다. 한 실시 예에 따르면, 제어부 180은 양방향 데이터 통신 중에 우선 순위가 높은 제1 규격에 기반한 데이터 통신이 먼저 완료될 시, 차 순위의 제2 규격에 기반한 데이터 통신을 제1 규격에 기반하여 데이터 통신이 이루어지도록 그 통신경로를 자동 변경할 수도 있다. 예를 들어, 제2 규격의 데이터 통신의 데이터 정보에 관계없이, 통신 속도가 빠른 쪽에서 데이터 통신이 먼저 완료될 시, 통신 속도가 낮은 쪽의 데이터 통신을 통신 속도가 빠른 쪽으로 자동 전환하여 데이터 통신을 계속 수행하도록 동작할 수 있다.
도 14는 본 발명의 실시 예에 따른 전자 장치에서 데이터 통신을 위한 통신경로를 변경하는 동작을 도시하는 흐름도이다.
상기 도 14에 도시한 바와 같이, 상기 도 14는 전자 장치들(예: 제1 전자 장치, 제2 전자 장치) 간에 제1 데이터에 대한 데이터 통신을 수행하는 중에, 제2 데이터에 대한 데이터 통신이 요청될 시(예: 동시 양방향 통신 시작 시), 제1 데이터와 제2 데이터의 데이터 정보에 따라 데이터 통신의 통신경로를 적응적으로 변경하여 데이터 통신을 수행하는 동작 예시를 나타낸 것이다.
상기 도 14를 참조하면, 동작 1401에서, 제어부 180은 제1 데이터에 대해 제1 규격의 제1 통신경로에 의한 데이터 통신을 수행할 수 있다.
동작 1403에서, 제어부 180은 상기 데이터 통신을 수행하는 중에, 제2 데이터에 대한 데이터 통신 요청이 있는지 판단할 수 있다. 예를 들어, 제어부 180은 하나의 데이터 통신을 수행하는 중에 동시 양방향 통신을 수행하기 위한 사용자 입력에 응답하여, 동시 양방향 통신 기능을 활성활 수 있고, 사용자에 의해 선택되는 제2 데이터의 데이터 통신 요청을 감지할 수 있다.
상기 동작 1403에서, 제2 데이터에 대한 데이터 통신 요청이 감지되지 않은 경우(동작 1403의 NO), 제어부 180은 상기 동작 1401로 진행하여 그 이하의 동작 수행을 제어할 수 있다.
상기 동작 1403에서, 제2 데이터에 대한 데이터 통신 요청이 감지되는 경우(동작 1403의 YES), 동작 1405에서, 제어부 180은 상기 제1 데이터의 데이터 정보와 상기 제2 데이터의 데이터 정보를 비교할 수 있다. 본 발명의 실시 예에서, 상기 데이터 정보는 데이터의 크기(예: 데이터 통신 완료 시까지 남은 용량) 또는 데이터 통신에 필요한 예상 시간(예: 데이터 통신 완료 예상 시간) 중 적어도 일부에 기반하여 정의될 수 있다.
동작 1407에서, 제어부 180은 상기 비교하는 동작의 결과에 기반하여 상기 제2 데이터가 상기 제1 데이터보다 큰 지 여부를 판단할 수 있다. 예를 들어, 제어부 180은 상기 제1 데이터의 남은 크기와 상기 제2 데이터의 남은 크기를 비교할 수 있고, 상기 제2 데이터의 남은 크기가 큰 경우, 상기 제2 데이터가 상기 제1 데이터 보다 큰 것으로 결정할 수 있다. 또는 제어부 180은 상기 제1 데이터의 통신 완료 예상 시간과 상기 제2 데이터의 통신 완료 예상 시간을 비교할 수 있고, 상기 제2 데이터의 통신 완료 예상 시간이 상기 제1 데이터의 통신 완료 예상 시간 보다 많이 남은 경우, 상기 제2 데이터가 상기 제1 데이터보다 큰 것으로 결정할 수 있다.
상기 동작 1407에서, 상기 제2 데이터가 상기 제1 데이터보다 이하인 것으로 판단하면(동작 1407의 NO), 동작 1409에서, 제어부 180은 상기 판단하는 결과에 기반하여 상기 제1 데이터와 상기 제2 데이터에 대한 양방향 데이터 통신 수행을 처리할 수 있다. 예를 들어, 제어부 180은 제1 규격의 제1 통신경로에 의한 제1 데이터의 데이터 통신은 유지하면서, 제2 규격의 제2 통신경로를 통해 제2 데이터의 데이터 통신을 처리할 수 있다.
상기 동작 1407에서, 상기 제2 데이터가 상기 제1 데이터 보다 큰 것으로 판단하면(동작 1407의 YES), 동작 1411에서, 제어부 180은 데이터 통신경로를 변경할 수 있다. 예를 들어, 제어부 180은 현재 데이터 통신을 수행 중인 상기 제1 데이터의 제1 규격의 제1 통신경로를, 제2 규격의 제2 통신경로로 변경할 수 있다. 한 실시 예에 따르면, 제2 규격의 데이터 통신 속도에 비해 제1 규격의 데이터 통신 속도가 빠를 수 있다. 따라서 본 발명의 실시 예에서 전자 장치는 보다 빠른 데이터 통신 처리를 위해, 양방향 통신 개시 시 대상 데이터들을 비교하여, 해당 데이터들 중 통신 로드(load)가 큰 데이터(예: 크기가 크거나 또는 통신 완료 예상 시간이 긴 데이터)를 빠른 속도를 지원하는 제1 규격의 제1 통신경로에 할당하고, 해당 데이터들 중 통신 로드가 작은 데이터(예: 크기가 작거나 또는 통신 완료 예상 시간이 짧은 데이터)를 낮은 속도를 지원하는 제2 규격의 제2 통신경로에 할당하여, 양방향 데이터 통신을 처리할 수 있다.
동작 1413에서, 제어부 180은 상기 제1 데이터와 상기 제2 데이터에 대한 양방향 데이터 통신 수행을 처리할 수 있다. 예를 들어, 제어부 180은 제1 규격의 제1 통신경로에 의해 데이터 통신 중인 제1 데이터를, 그 통신경로가 변경된 제2 규격의 제2 통신경로를 통해 데이터 통신을 처리하고, 제2 데이터에 대해 제1 규격의 제1 통신경로를 통해 데이터 통신을 처리할 수 있다.
동작 1415에서, 제어부 180은 해당 동작 수행을 처리할 수 있다. 예를 들어, 제어부 180은 상기 동작 1409 또는 상기 동작 1413에 대응하는 양방향 데이터 통신을 수행하고, 적어도 하나의 데이터 통신에 대한 완료에 대응하여 도 13을 참조한 설명에서 설명한 바와 같은 통신경로 변경에 의한 데이터 통신을 처리할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 전자 장치
110: 무선 통신부 120: 사용자 입력부
130: 터치스크린 131: 디스플레이
133: 터치감지부 140: 오디오 처리부
141: 스피커 143: 마이크
150: 메모리 160: 인터페이스부
170: 카메라 모듈 180: 제어부
190: 전원 공급부

Claims (24)

  1. 전자 장치에 있어서,
    다른 전자 장치와의 연결을 지원하는 인터페이스;
    서로 다른 규격에 따라 작동되는 복수의 통신 경로들;
    제어부는:
    상기 인터페이스를 통해 연결된 전자 장치들 간에 제1 규격에 따른 제1 통신 경로에 기반하여 제1 데이터에 대한 제1 데이터 통신을 제어하고,
    상기 제1 데이터 통신을 수행하는 중에 제2 규격에 따른 제2 통신 경로에 기반하여 제2 데이터에 대한 제2 데이터 통신을 제어하고,
    상기 제2 데이터의 제2 데이터 정보와 상기 제1 데이터의 제1 데이터 정보를 비교하고,
    상기 비교 결과에 기반하여 상기 제1 데이터와 상기 제2 데이터에 대한 양방향 데이터 통신을 제어하는 전자 장치.
  2. 청구항 1에 있어서,
    상기 인터페이스는 타입C(type-C) USB(universal serial bus) 인터페이스를 포함하고,
    상기 제1 규격에 따른 상기 제1 데이터 통신은 상기 제2 규격에 따른 상기 제2 데이터 통신보다 고속,인 전자 장치.
  3. 청구항 1 에 있어서,
    상기 제어부는:
    상기 제1 데이터의 상기 제1 데이터 통신 중 상기 전자 장치가 호스트로 설정됐을 때, 상기 제1 통신 경로에 기반하여 상기 제1 데이터를 전송하고,
    상기 제1 데이터의 상기 제1 데이터 통신 중 상기 전자 장치가 슬레이브로 설정됐을 때, 상기 제1 통신 경로에 기반하여 상기 제1 데이터를 수신하는 것을 더 포함하는 전자 장치.
  4. 청구항 1에 있어서,
    상기 제어부는:
    상기 양방향 데이터 통신 수행 중 상기 전자 장치가 호스트로 설정됐을 때,상기 제2 통신 경로에 기반하여 상기 제2 데이터를 전송하고,
    상기 양방향 데이터 통신 중 상기 전자 장치가 슬레이브로 설정됐을 때,상기 제2 통신 경로에 기반하여 상기 제2 데이터를 수신하는 것을 더 포함하는 전자 장치.
  5. 삭제
  6. 청구항 1에 있어서,
    상기 제어부는:
    상기 제2 데이터의 양이 상기 제1 데이터의 양보다 작거나 같은 경우, 상기 제1 통신 경로에 기반하여 상기 제1 데이터 통신을 유지하고,
    상기 제2 규격에 따른 상기 제2 통신 경로에 기반하여 상기 제2 데이터 통신을 제어하는 것을 더 포함 하는 전자 장치.
  7. 청구항 1항에 있어서,
    상기 제어부는:
    상기 제2 데이터의 양이 상기 제1 데이터의 양보다 큰 경우, 상기 제1 데이터 통신을 중단하고,
    상기 제2 통신 경로에 기반하여 상기 제1 데이터 통신을 제어하고,
    상기 제1 통신 경로에 기반하여 상기 제2 데이터 통신을 제어하는 것을 더 포함하는 전자 장치.
  8. 청구항 1에 있어서,
    상기 제어부는:
    상기 양방향 데이터 통신을 수행하는 중, 상기 제1 데이터 통신이 완료되면 상기 제2 데이터에 대한 상기 제2 데이터 정보를 결정하고,
    상기 제2 데이터의 양이 미리 설정된 기준 값보다 클 때, 상기 제1 통신 경로에 기반하여 상기 제2 데이터의 상기 제2 데이터 통신을 제어하는 것을 더 포함하는 전자 장치.
  9. 청구항 1에 있어서,
    상기 제어부는:
    상기 연결, 상기 제1 데이터 통신, 상기 제2 데이터 통신, 또는 상기 양방향 데이터 통신 중 적어도 하나와 관련된 사용자 인터페이스를 디스플레이하는 디스플레이를 더 포함하는 전자 장치.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 청구항 9에 있어서,
    상기 양방향 데이터 통신은 스위치 아이템 또는 설정된 사용자 제스처에 기반하여 실행되는 것을 특징으로 하는 전자 장치.
  14. 전자 장치의 데이터 통신 방법에 있어서,
    인터페이스를 통해 다른 전자 장치와의 연결을 감지하는 동작;
    제1 데이터의 제1 데이터 통신을 위해 상기 전자 장치를 호스트 또는 슬레이브로 설정하는 동작;
    제1 규격에 따른 제1 통신 경로에 기반하여 상기 제1 데이터의 상기 제1 데이터 통신을 수행하는 동작;
    상기 제1 데이터 통신을 수행하는 중에 제2 데이터의 제2 데이터 통신을 위해 상기 전자 장치를 상기 호스트 또는 상기 슬레이브로 설정하는 동작; 및
    제2 규격에 따른 제2 통신 경로에 기반하여 상기 제2 데이터의 상기 제2 데이터 통신을 수행하는 동작;
    상기 제2 데이터 통신의 수행은:
    상기 제2 데이터의 제2 데이터 정보와 상기 제1 데이터의 제1 데이터 정보를 비교하는 동작; 및
    상기 비교 결과에 기반하여 상기 제1 데이터와 상기 제2 데이터에 대한 양방향 데이터 통신을 수행하는 방법.
  15. 청구항 14에 있어서,
    상기 인터페이스는 타입C(type-C) USB(universal serial bus) 인터페이스를 포함함; 및
    상기 제1 규격에 따른 상기 제1 데이터 통신은 상기 제2 규격에 따른 상기 제2 데이터 통신보다 고속인 방법.
  16. 삭제
  17. 청구항 14에 있어서,
    상기 제1 데이터 통신의 수행은:
    상기 전자 장치가 상기 호스트로 설정됐을 때, 상기 제1 통신 경로에 기반하여 상기 제1 데이터를 전송하는 동작; 또는
    상기 전자 장치가 상기 슬레이브로 설정됐을 때, 상기 제1 통신 경로에 기반하여 상기 제1 데이터를 수신하는 동작을 포함하는 방법.
  18. 청구항 14에 있어서,
    상기 제2 데이터 통신의 수행은:
    상기 전자 장치가 상기 호스트로 설정됐을 때, 상기 제2 통신 경로에 기반하여 상기 제2 데이터를 전송하는 동작; 또는
    상기 전자 장치가 상기 슬레이브로 설정됐을 때, 상기 제2 통신 경로에 기반하여 상기 제2 데이터를 수신하는 동작을 포함하는 방법.
  19. 삭제
  20. 청구항 14에 있어서,
    상기 제2 데이터 통신의 수행은:
    상기 제2 데이터의 양이 상기 제1 데이터의 양보다 작거나 같은 경우, 상기 제1 통신 경로에 기반하여 상기 제1 데이터 통신을 유지하는 동작; 및
    상기 제2 규격에 따른 상기 제2 통신 경로에 기반하여 상기 제2 데이터 통신을 수행하는 방법.
  21. 청구항 20에 있어서,
    상기 제2 데이터 통신의 수행은:
    상기 제1 데이터의 양이 상기 제2 데이터의 양보다 큰 경우, 상기 제1 데이터 통신을 중단하는 동작;
    상기 제2 통신 경로에 기반하여 상기 제1 데이터 통신을 수행하는 동작; 및
    상기 제1 통신 경로에 기반하여 상기 제2 데이터 통신을 수행하는 동작을 포함하는 방법.
  22. 청구항 14에 있어서,
    상기 양방향 데이터 통신 중 상기 제1 데이터의 상기 제1 데이터 통신이 완료된 때, 상기 제2 데이터의 상기 제2 데이터 정보를 결정하는 동작; 및
    상기 제2 데이터의 양이 미리 설정된 기준 값보다 큰 경우, 상기 제1 통신 경로에 기반하여 상기 제2 데이터에 대한 상기 제2 데이터 통신을 수행하는 동작을 포함하는 방법.
  23. 삭제
  24. 컴퓨터로 판독 가능한 기록 매체에 있어서,
    인터페이스를 통해 다른 전자 장치와의 연결을 감지하는 동작;
    제1 규격에 따른 제1 통신 경로에 기반하여 제1 데이터에 대한 제1 데이터 통신을 처리하는 동작; 및
    상기 제1 데이터 통신을 수행하는 중 제2 규격에 따른 제2 통신 경로에 기반하여 제2 데이터에 대한 제2 데이터 통신을 처리하는 동작;
    상기 제2 데이터 통신의 처리는:
    상기 제2 데이터의 제2 데이터 정보와 상기 제1 데이터의 제1 데이터 정보를 비교하는 동작; 및
    상기 비교 결과에 기반하여 상기 제2 데이터와 상기 제2 데이터에 대한 양방향 데이터 통신을 수행하는 동작을 포함하는 기록 매체.
KR1020150012779A 2015-01-27 2015-01-27 전자 장치들 간 양방향 데이터 통신 방법 및 장치 KR102239572B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150012779A KR102239572B1 (ko) 2015-01-27 2015-01-27 전자 장치들 간 양방향 데이터 통신 방법 및 장치
US15/007,977 US10216686B2 (en) 2015-01-27 2016-01-27 Method and apparatus for full duplex transmission between electronic devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150012779A KR102239572B1 (ko) 2015-01-27 2015-01-27 전자 장치들 간 양방향 데이터 통신 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160092310A KR20160092310A (ko) 2016-08-04
KR102239572B1 true KR102239572B1 (ko) 2021-04-13

Family

ID=56434490

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150012779A KR102239572B1 (ko) 2015-01-27 2015-01-27 전자 장치들 간 양방향 데이터 통신 방법 및 장치

Country Status (2)

Country Link
US (1) US10216686B2 (ko)
KR (1) KR102239572B1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2536725B (en) * 2015-03-27 2018-06-13 Displaylink Uk Ltd USB connections
GB2552558A (en) * 2016-07-25 2018-01-31 Cirrus Logic Int Semiconductor Ltd Connectors for data transfer
CN106294244B (zh) * 2016-08-11 2023-08-11 深圳慧能泰半导体科技有限公司 一种USB Type-C接口电路
CN106131732A (zh) * 2016-08-16 2016-11-16 歌尔股份有限公司 一种耳机
US10268627B2 (en) * 2016-08-23 2019-04-23 Dell Products L.P. Automatically configuring a universal serial bus (USB) type-C port of a computing device
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
JP6752675B2 (ja) * 2016-10-12 2020-09-09 ルネサスエレクトロニクス株式会社 半導体装置、半導体装置の制御方法および半導体システム
KR20180058089A (ko) * 2016-11-23 2018-05-31 삼성전자주식회사 외부 전자 장치와 통신하는 전자 장치 및 방법
US10817449B2 (en) * 2016-12-30 2020-10-27 Huawei Technologies Co., Ltd. Adaption apparatus, and device identification method and apparatus
KR102405773B1 (ko) * 2017-09-27 2022-06-08 삼성전자주식회사 Usb 타입 c 인터페이스를 이용한 멀티 디바이스 간의 통신 방법 및 이를 구현한 전자 장치
CN108810448A (zh) * 2018-03-19 2018-11-13 广州视源电子科技股份有限公司 外围装置和会议工具
US11205397B2 (en) 2018-03-19 2021-12-21 Guangzhou Shiyuan Electronics Co., Ltd. Data transmission device and data transmission method
CN111713176B (zh) * 2018-05-16 2023-01-13 华为技术有限公司 一种数据传输方法及终端
KR20200055512A (ko) * 2018-11-13 2020-05-21 삼성전자주식회사 제어 신호를 송수신하기 위한 전자 장치 및 방법
CN109150926A (zh) * 2018-11-19 2019-01-04 炬星科技(深圳)有限公司 一种数据通信方法及人机交互系统
KR20210065429A (ko) 2019-11-27 2021-06-04 삼성전자주식회사 외장형 스토리지 장치 및 외장형 스토리지 장치의 동작 방법
KR20210065435A (ko) * 2019-11-27 2021-06-04 삼성전자주식회사 외장형 스토리지 장치 및 외장형 스토리지 장치의 동작 방법
WO2023096639A1 (en) * 2021-11-24 2023-06-01 Hewlett-Packard Development Company, L.P. Wearable apparatuses with dual physical layer interfaces

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120102244A1 (en) 2010-10-20 2012-04-26 Canon Kabushiki Kaisha Communication control apparatus and method of controlling the same
US20140021802A1 (en) 2012-07-19 2014-01-23 Industrial Technology Research Institute Usb ssic thin card device and data transfer method thereof

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120290761A1 (en) * 2011-05-10 2012-11-15 Jui-Yen Chen USB Converter and Related Method
KR102018666B1 (ko) 2011-12-30 2019-09-06 삼성전자 주식회사 Usb 디바이스가 연결될 수 있는 전자장치 및 그 제어방법
US9479279B2 (en) * 2012-06-13 2016-10-25 Lattice Semiconductor Corporation Multiple protocol tunneling using time division operations
CN110737623B (zh) * 2013-12-08 2023-08-11 跨端口网路解决公司 用于使用i/o设备链路在主机之间建立高速网络通信和文件传输的链路系统
TWI623836B (zh) * 2014-01-27 2018-05-11 新唐科技股份有限公司 連接裝置及其控制晶片及控制方法
US9952996B2 (en) * 2014-10-15 2018-04-24 Icron Technologies Corporation Devices and methods for providing concurrent superspeed communication and four-lane displayport communication via a USB type-C receptacle

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120102244A1 (en) 2010-10-20 2012-04-26 Canon Kabushiki Kaisha Communication control apparatus and method of controlling the same
US20140021802A1 (en) 2012-07-19 2014-01-23 Industrial Technology Research Institute Usb ssic thin card device and data transfer method thereof

Also Published As

Publication number Publication date
KR20160092310A (ko) 2016-08-04
US10216686B2 (en) 2019-02-26
US20160217103A1 (en) 2016-07-28

Similar Documents

Publication Publication Date Title
KR102239572B1 (ko) 전자 장치들 간 양방향 데이터 통신 방법 및 장치
US10958776B2 (en) Method and apparatus for interworking between electronic devices
KR102545605B1 (ko) 전자 장치 및 그의 동작 방법
EP3104280B1 (en) Method and apparatus for providing interface
KR102511514B1 (ko) 다양한 충전 방식을 이용한 고속 충전 방법 및 장치
US9817475B2 (en) Method for tracking a user&#39;s eye to control an indicator on a touch screen and electronic device thereof
US9983767B2 (en) Apparatus and method for providing user interface based on hand-held position of the apparatus
CN105610471B (zh) 无线数据输入和输出方法和设备
US20160026384A1 (en) Method for display control and electronic device using the same
US10275056B2 (en) Method and apparatus for processing input using display
US20160351047A1 (en) Method and system for remote control of electronic device
US20150370317A1 (en) Electronic device and method for controlling display
KR20150141313A (ko) 전자 장치의 정보 처리 방법 및 장치
US9958967B2 (en) Method and electronic device for operating electronic pen
EP2990929B1 (en) Electronic device and method for setting block
US9936334B2 (en) Electronic device and operation method thereof
KR102386100B1 (ko) 리스트 표시 방법 및 장치
US20150199163A1 (en) Method for processing data and electronic device thereof

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant