KR100741735B1 - 주변장치 제어 방법 및 그 시스템 - Google Patents

주변장치 제어 방법 및 그 시스템 Download PDF

Info

Publication number
KR100741735B1
KR100741735B1 KR1020070009096A KR20070009096A KR100741735B1 KR 100741735 B1 KR100741735 B1 KR 100741735B1 KR 1020070009096 A KR1020070009096 A KR 1020070009096A KR 20070009096 A KR20070009096 A KR 20070009096A KR 100741735 B1 KR100741735 B1 KR 100741735B1
Authority
KR
South Korea
Prior art keywords
core
host processor
controller
connection path
peripheral
Prior art date
Application number
KR1020070009096A
Other languages
English (en)
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 KR1020070009096A priority Critical patent/KR100741735B1/ko
Application granted granted Critical
Publication of KR100741735B1 publication Critical patent/KR100741735B1/ko
Priority to PCT/KR2008/000440 priority patent/WO2008093963A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

주변장치 제어 방법 및 그 시스템이 개시된다. 본 발명의 일 실시예에 따르면, 임의의 주변 장치가 연결되면 연결 알림 인터럽트를 발생하는 주변장치 컨트롤러와 AP(Application Processor) 코어를 포함하는 어플리케이션 프로세서; 상기 AP 코어와 통신을 수행하는 호스트 프로세서; 및 상기 주변장치 컨트롤러부터 상기 제1 인터럽트가 입력되면, 미리 설정된 설정값을 참조하여 상기 AP 코어 및 호스트 프로세서 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 경로 설정부를 포함하되, 상기 주변장치 컨트롤러는 상기 연결 경로가 설정된 상기 AP 코어 및 상기 호스트 프로세서 중 어느 하나에 의해 직접 제어되는 것을 특징으로 하는 통신 제어 시스템이 제공된다. 본 발명은 어플리케이션 프로세서의 동작 여부에 상관없이 어플리케이션 프로세서에 포함된 주변장치 컨트롤러에 연결된 주변 장치를 호스트 프로세서가 직접 제어할 수 있다.
주변장치, 컨트롤러, 프로세서, peripheral

Description

주변장치 제어 방법 및 그 시스템{Method and system for controlling of peripherals}
도 1은 종래의 어플리케이션 프로세서내의 구비된 USB 컨트롤러를 통해 데이터를 송수신할 수 있는 시스템의 블록 구성도.
도 2는 본 발명의 일 실시예에 따른 호스트 프로세서가 어플리케이션 프로세서내의 구비된 USB 컨트롤러을 통해 데이터를 송수신할 수 있는 시스템의 블록 구성도.
도 3은 본 발명의 일 실시예에 따른 호스트 프로세서가 어플리케이션 프로세서에 구비된 USB 컨트롤러를 제어하는 방법을 나타낸 순서도.
<도면의 주요 부분에 대한 부호의 설명>
210 : 호스트 프로세서
220 : 어플리케이션 프로세서
222 : AP 코어
224 : USB 컨트롤러
230 : 경로 설정부
본 발명은 데이터 통신에 관한 것으로, 특히 호스트 프로세서가 어플리케이션 프로세서와의 양방향 통신을 직접 제어하는 방법 및 그 시스템에 관한 것이다.
정보통신 기술의 발전으로 인해, 다양한 전자 기기들(예를 들어, 휴대용 단말기 등)은 고유의 기능(예를 들어, 통신 기능)을 수행하는 호스트 프로세서이외의 다양한 멀티미디어 기능을 수행하는 하나 이상의 어플리케이션 프로세서들이 장착되고 있다. 이와 같은 어플리케이션 프로세서들은 일반적으로 호스트 프로세서에 비해 특정한 통신(예를 들어, USB 통신, 적외선 통신, 블루투스 등)을 수행할 수 있는 기능 블록을 포함하고 있다. 그러나, 이들 특정 통신들은 어플리케이션 프로세서 내에 구비되어 호스트 프로세서가 이용하기에는 다소 제약이 따르는 문제가 있다.
도 1은 종래의 어플리케이션 프로세서내의 구비된 USB 컨트롤러를 통해 데이터를 송수신할 수 있는 시스템의 블록 구성도이다. 도 1을 참조하여 내부 USB 컨트롤러를 구비하고 있는 어플리케이션 프로세서와 통신을 수행하는 호스트 프로세서가 내부 USB 컨트롤러를 통해 외부 USB 장치(예를 들어, 대용량 저장 매체, 멀티미디어 플레이어 등)에 데이터를 전송하는 방법에 대해 간략하게 설명하기로 한다.
호스트 프로세서(110)는 임의의 장치(예를 들어, 휴대용 단말기, 퍼스널 컴 퓨터 등)의 코어(core) 프로세서로서 해당 장치의 내부 구성 요소들의 전원 공급을 위한 제어, 동작 실행을 위한 제어 등의 기능을 수행한다. 예를 들어, 휴대용 단말기의 경우, 호스트 프로세서(110)는 베이스밴드 프로세서일 수 있으며, 퍼스널 컴퓨터의 경우 중앙처리장치(CPU)일 수 있다.
어플리케이션 프로세서(120)는 도 1에서 보여지는 바와 같이, AP 코어(122)와 외부 USB(universal serial bus) 장치가 연결되기 위한 USB 컨트롤러(124)를 포함하여 구성된다. USB 컨트롤러(124)에 임의의 외부 USB 장치가 결합되면, USB 컨트롤러(124)는 미리 설정된 인터럽트(이하, 이해와 설명의 편의를 도모하기 위해 "연결 알림 인터럽트"라 칭하기로 함)를 AP 코어(122)로 출력한다. 즉, AP 코어(122)는 USB 컨트롤러(124)를 통해 연결 알림 인터럽트를 입력받아 분석함으로써, USB 컨트롤러(124)에 임의의 외부 USB 장치가 연결된 것을 인식할 수 있다. USB 컨트롤러(124)는 외부 USB 장치가 연결되는 경우, 발생되는 전압의 차이에 의해 USB 장치의 연결 여부를 인식할 수 있으며, 이는 당업자에게는 자명한 사항이므로 이에 대한 상세한 설명은 생략하기로 한다.
AP 코어(122)는 연결 알림 인터럽트에 의해 USB 장치의 연결을 인식하면, 연결된 USB 장치에 대한 미리 설정된 초기화 동작(Enumeration)을 수행한다. 즉, AP 코어(122)는 USB 장치에 대한 어드레스 설정, 장치 디스크립터(descriptor), 환경 디스크립터, 인터페이스 디스크립터, 제조사 및 장치에 상응하는 문자 디스크립터 등을 획득하여 설정할 수 있다. 이와 같은 초기화 동작(Enumeration)은 당업자에게는 자명한 사항이므로 이에 대한 별도의 설명은 생략하기로 한다. 여기서, AP 코 어(122)와 USB 컨트롤러(124)에 연결된 USB 장치는 미리 설정된 USB 프로토콜(예를 들어, UMS(USB Mass Storage), MTP(Multimedia Transfer Protocol) 등)을 이용하여 통신을 수행할 수 있다.
초기화 동작이 완료되면, AP 코어(122)는 USB 컨트롤러(124)를 통해 연결된 USB 장치와 제어 신호 및 데이터를 송수신할 수 있다. 이와 같이, USB 장치가 어플리케이션 프로세서(120)와 직접 연결되므로, 호스트 프로세서(110)가 USB 장치로 임의의 제어 신호 및 데이터를 송수신하기 위해서는 어플리케이션 프로세서(120)를 경유해야만 한다.
예를 들어, 호스트 프로세서(110)가 임의의 데이터를 USB 장치에 기록하거나 또는 독출해야하는 경우, 호스트 프로세서(110)는 제어 신호 및 데이터 전송을 위한 명령을 어플리케이션 프로세서(120)를 통해 연결된 USB 장치로 전송해야만 하는 문제점이 있다.
또한, 어플리케이션 프로세서(120)가 동작되지 않은 경우, 호스트 프로세서(110)는 연결된 USB 장치를 이용할 수 없는 문제점이 있다.
따라서, 상술한 문제점을 해결하기 위한 본 발명은 어플리케이션 프로세서의 동작 여부에 상관없이 어플리케이션 프로세서에 포함된 주변장치 컨트롤러에 연결된 주변 장치를 호스트 프로세서가 직접 제어할 수 있는 주변장치 제어 방법 및 그 시스템을 제공하기 위한 것이다.
또한, 본 발명은 호스트 프로세서가 별도의 주변장치 컨트롤러를 포함하지 않고서도 어플리케이션 프로세서내에 포함된 주변장치 컨트롤러를 직접 제어하여 주변 장치와 데이터를 송수신할 수 있는 주변장치 제어 방법 및 그 시스템을 제공하기 위한 것이다.
또한, 본 발명은 어플리케이션 프로세서에 구비된 주변장치 컨트롤러를 호스트 프로세서와 어플리케이션 프로세서가 주변장치 컨트롤러를 각각 제어하고 이용할 수 있는 주변장치 제어 방법 및 그 시스템을 제공하기 위한 것이다.
또한, 본 발명은 어플리케이션 프로세서가 주변장치 컨트롤러를 제어하기 위해 필요한 프로그램들이 설치된 메모리를 구비하지 않아도 되므로 어플리케이션 프로세서의 제조 단가를 낮출 수 있는 주변장치 제어 방법 및 그 시스템을 제공하기 위한 것이다.
이외의 본 발명의 목적들은 하기의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.
상술한 목적을 달성하기 위하여, 본 발명의 일 측면에 따르면, 어플리케이션 프로세서에 포함된 주변장치 컨트롤러는 연결 경로가 설정된 AP 코어 및 호스트 프로세서 중 어느 하나에 의해 직접 제어될 수 있는 통신 제어 시스템이 제공된다.
본 발명의 일 실시예에 따르면, 임의의 주변 장치가 연결되면 연결 알림 인 터럽트를 발생하는 주변장치 컨트롤러와 AP(Application Processor) 코어를 포함하는 어플리케이션 프로세서; 상기 AP 코어와 통신을 수행하는 호스트 프로세서; 및 상기 주변장치 컨트롤러부터 상기 제1 인터럽트가 입력되면, 미리 설정된 설정값을 참조하여 상기 AP 코어 및 호스트 프로세서 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 경로 설정부를 포함하되, 상기 주변장치 컨트롤러는 상기 연결 경로가 설정된 상기 AP 코어 및 상기 호스트 프로세서 중 어느 하나에 의해 직접 제어되는 것을 특징으로 하는 통신 제어 시스템이 제공될 수 있다.
상기 경로 설정부는 상기 설정값이 제1 설정값이면, 상기 호스트 프로세서와 상기 주변장치 컨트롤러가 연결되도록 하는 제1 연결 경로를 설정하고, 상기 설정값이 제2 설정값이면 상기 AP 코어와 상기 주변장치 컨트롤러가 연결되도록 하는 제2 연결 경로를 설정하며, 상기 설정된 제1 또는 제2 연결 경로 중 어느 하나로 상기 연결 알림 인터럽트를 출력할 수 있다.
상기 제1 연결 경로가 설정된 후 상기 경로 설정부에 의해 상기 연결 알림 인터럽트가 입력되면 상기 호스트 프로세서는 상기 제1 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하며, 상기 주변장치와의 데이터를 송수신할 수 있다.
상기 호스트 프로세서는 상기 USB 컨트롤러를 제어하기 위한 제어 명령들의 집합인 드라이버와 상기 USB 컨트롤러에 연결된 USB 장치와의 멀티미디어 데이터를 송수신하기 위한 명령들의 집합인 어플리케이션이 설치되어 있다.
상기 제2 연결 경로가 설정되어 상기 경로 설정부에 의해 상기 연결 알림 인 터럽트가 입력되면, 상기 AP 코어는 상기 제2 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어할 수 있다.
상기 호스트 프로세서는 상기 주변장치로의 데이터 송수신을 위해 상기 AP 코어와 명령 라인을 설정한 후 상기 AP 코어를 이용하여 상기 주변장치와 데이터를 송수신할 수 있다.
상기 AP 코어는 상기 주변장치 컨트롤러를 제어하기 위한 제어 명령들의 집합인 드라이버가 설치되어 있으며, 상기 호스트 프로세서는 상기 주변장치 컨트롤러에 연결된 주변장치와의 멀티미디어 데이터를 송수신하기 위한 명령들의 집합인 어플리케이션이 설치되어 있다.
본 발명의 다른 측면에 따르면, 통신 제어 시스템에서 연결된 주변장치와의 통신을 수행하는 방법이 제공된다.
본 발명의 일 실시예에 따르면, 통신 제어 시스템에서 연결된 주변장치와의 통신을 수행하는 방법에 있어서, 주변장치의 연결에 의해 주변장치 컨트롤러가 연결 알림 인터럽트를 발생하는 단계; 경로 설정부가 상기 연결 알림 인터럽트의 입력에 의해 미리 설정된 설정값을 참조하여 호스트 프로세서 및 AP 코어 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 단계; 및 상기 연결 경로가 설정된 호스트 프로세서 및 AP 코어 중 어느 하나가 설정된 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계를 포함하되, 연결된 주변장치를 제어하는 상기 주변장치 컨트롤러와 상기 AP 코어는 어플리케이션 프로세 서에 포함되는 것을 특징으로 하는 통신 수행 방법이 제공될 수 있다.
호스트 프로세서 및 AP 코어 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 단계는, 상기 설정값이 제3 설정값이면, 상기 경로 설정부는 상기 호스트 프로세서와 상기 주변장치 컨트롤러간의 제3 연결 경로를 설정하는 단계; 상기 설정값이 제4 설정값이면, 상기 경로 설정부는 상기 어플리케이션 프로세서와 상기 주변장치 컨트롤러간의 제4 연결 경로를 설정하는 단계; 및 상기 제3 연결 경로 또는 상기 제4 연결 경로 중 어느 하나를 통해 상기 연결 알림 인터럽트를 출력하는 단계를 포함할 수 있다.
상기 제3 연결 경로로 설정된 경우, 상기 주변장치 컨트롤러를 직접 제어하는 단계는, 상기 제3 연결 경로를 통해 상기 연결 알림 인터럽트가 입력되면, 상기 호스트 프로세서는 상기 제3 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계; 및 상기 호스트 프로세서가 상기 제3 연결 경로를 통해 상기 주변장치 컨트롤러와 데이터를 송수신하는 단계를 포함할 수 있다.
상기 제4 연결 경로로 설정되는 경우, 상기 주변장치 컨트롤러를 직접 제어하는 단계는, 상기 제4 연결 경로를 통해 상기 연결 알림 인터럽트가 입력되면, 상기 AP 코어는 상기 제4 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계; 상기 호스트 프로세서가 상기 주변장치와의 데이터 송수신을 위해 상기 AP 코어와 명령 라인을 설정하는 단계; 및 상기 호스트 프로세서가 상기 설정된 명령 라인을 통해 상기 AP 코어를 이용하여 상기 주변장치 컨트롤러로 데이터를 송수신하는 단계를 포함할 수 있다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 또한, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명에 적용될 수 있는 주변 장치로는 USB 메모리, USB, 블루투스 등의 통신기능을 포함하는 멀티미디어 플레이어 등이 포함될 수 있음은 자명하나, 이해 및 설명의 편의를 위해 해당 주변 장치가 USB 메모리인 경우를 가정하여 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 호스트 프로세서가 어플리케이션 프로세서내의 구비된 USB 컨트롤러을 통해 데이터를 송수신할 수 있는 시스템의 블록 구성도이다. 이하, 호스트 프로세서(210)는 자체 USB 컨트롤러를 구비하거나 구비하지 않을 수도 있으며, 호스트 프로세서(210)가 어플리케이션 프로세서(220)내에 구 비된 USB 컨트롤러(224)에 연결된 USB 장치를 이용하기 위해 해당 USB 컨트롤러(224)를 제어하는 것에 대해 설명하기로 한다.
도 2를 참조하면, 본 발명에 따른 시스템은 호스트 프로세서(210), 어플리케이션 프로세서(220) 및 경로 설정부(230)를 포함하여 구성된다.
호스트 프로세서(210)는 예를 들어, 휴대용 단말기의 경우 베이스밴드 프로세서, 퍼스널 컴퓨터의 경우 중앙 처리 장치(CPU)와 같은 기능을 수행한다. 즉, 호스트 프로세서(210)는 임의의 기기의 내부 구성 요소들을 제어하고, 해당 구성 요소들의 동작 수행을 제어 및 지시하는 기능을 수행할 수 있다.
호스트 프로세서(210)에는 어플리케이션 프로세세(220)에 포함된 USB 컨트롤러(224)를 제어하며 데이터 통신 수행을 위해 필요한 상응하는 드라이버 및 어플리케이션이 설치된다.
본 명세서에서 드라이버는 어플리케이션 프로세서(220) 내에 구비된 USB 컨트롤러(224)를 제어하기 위한 제어 명령들의 집합으로 정의하기로 하며, 어플리케이션은 UMS(USB Mass storage), MTP(multimedia transfer protocol) 등을 이용하여 USB 컨트롤러(224)를 통해 USB 장치와 데이터 송수신 등을 위한 명령들의 집합으로 정의하기로 한다.
예를 들어, 드라이버는 USB 컨트롤러(224)에 연결된 USB 장치에 대한 초기화 동작(Enumeration)을 위한 제어 명령들이 포함될 수 있다.
실제적으로 상응하는 동작 수행을 위해 드라이버와 어플리케이션을 구현하는 방법은 당업자에게는 자명한 사항이므로 별도의 설명은 생략하기로 한다.
호스트 프로세서(220)는 구현 방법에 따라 어플리케이션과 드라이버가 모두 설치되어 있을 수도 있으며, 어플리케이션만 설치되어 있을 수 있다.
만일 어플리케이션과 드라이버가 모두 설치되어 있는 경우, 호스트 프로세서(210)는 경로 설정부(230)에 의해 USB 컨트롤러(224)와의 연결 경로가 설정되면, 해당 연결 경로를 통해 어플리케이션 프로세서(220) 내에 구비된 USB 컨트롤러(224)와 연결되어 해당 USB 컨트롤러(224)를 제어할 수 있다. 그리고, 호스트 프로세서(210)는 해당 USB 컨트롤러(224)에 연결된 USB 장치와 데이터를 송수신할 수 있다.
그러나, 만일 호스트 프로세서(210)에 어플리케이션만 설치되어 있다면, 호스트 프로세서(210)는 어플리케이션 프로세서(220) 내의 USB 컨트롤러(224)와 연결 경로가 설정되지 않아 해당 USB 컨트롤러(224)를 직접 제어할 수 없다. 이 경우, 호스트 프로세서(210)는 어플리케이션 프로세서(220)로 데이터 송수신을 위한 명령 라인을 설정한 후, 어플리케이션 프로세서(220)를 이용하여 USB 컨트롤러(224)를 통해 USB 장치와 데이터를 송수신할 수 있다.
이와 같이, 호스트 프로세서(210)에 어플리케이션만을 별도로 설치함으로써, 어플리케이션 프로세서(220)내에 해당 어플리케이션의 설치를 위한 별도의 메모리를 구비하지 않아도 되는 이점이 있다. 이와 같이, 값비싼 별도의 메모리를 구비하지 않아도 되므로, 어플리케이션 프로세서(220)의 칩 사이즈(size)를 줄일 수도 있으며, 제조 비용을 줄일 수도 있는 이점이 있다.
또한, 호스트 프로세서(210)는 자체 USB 컨트롤러(224)를 구비하거나 구비하 지 않을 수도 있으나, 이해와 설명의 편의를 도모하기 위해 자체 USB 컨트롤러(224)를 구비하지 않을 것으로 가정하여 설명하기로 한다.
어플리케이션 프로세서(220)는 도 2에서 보여지는 바와 같이, AP 코어(222)와 USB 컨트롤러(224)를 포함하여 구성된다.
USB 컨트롤러(224)는 외부 임의의 USB 장치가 연결되는 경우, 미리 설정된 인터럽트(이해와 설명의 편의를 위해, "연결 알림 인터럽트"라 칭하기로 함)를 경로 설정부(230)로 발생한다.
AP 코어(222)는 어플리케이션 프로세서(220)에 미리 설정된 동작을 수행하거나 내부 기능 블록을 제어하는 기능을 수행한다. 예를 들어, AP 코어(222)는 해당 어플리케이션 프로세서(220)에서 동작되도록 미리 구현된 기능을 수행하거나 해당 기능이 수행되도록 각 구성 요소를 제어할 수 있다. 또한, AP 코어(222)는 드라이버가 설치되어 있는 경우, USB 컨트롤러(224)와 연결되어 USB 컨트롤러(224)로부터 하나 이상의 인터럽트를 입력받아 USB 컨트롤러(224)를 제어하는 기능을 수행한다.
USB 컨트롤러(224)는 USB 장치와 연결되어 USB 장치의 임의의 동작을 위해 미리 설정된 하나 이상의 인터럽트를 발생할 수 있다. 이는 당업자에게는 자명한 사항이므로 이에 대한 별도의 설명은 생략하기로 한다.
경로 설정부(230)는 USB 컨트롤러(224)로부터 연결 알림 인터럽트가 입력되면, 미리 정해진 설정값을 참조하여 호스트 프로세서(210) 및 AP 코어(222) 중 어느 하나와 USB 컨트롤러(224)간의 연결 경로를 설정하는 기능을 수행한다. 그리고, 경로 설정부(230)는 설정된 연결 경로에 의해 연결된 AP 코어(222) 및 호스트 프로 세서(210) 중 어느 하나로 USB 컨트롤러(224)로부터 입력받은 연결 알림 인터럽트를 출력한다.
여기서, 설정값은 호스트 프로세서(210)에 드라이버와 어플리케이션이 모두 설치된 경우, 제1 설정값으로 설정되며, 호스트 프로세서(210)에 어플리케이션만 설치된 경우(즉, 어플리케이션 프로세서(220)에 드라이버가 설치되어 있는 경우) 설정값은 제2 설정값일 수 있다.
예를 들어, 호스트 프로세서(210)에 드라이버와 어플리케이션이 모두 설치되어 있다고 가정하자. 어플리케이션 프로세서(220)내의 USB 컨트롤러(224)에 임의의 USB 장치가 연결되면, USB 컨트롤러(224)는 연결 알림 인터럽트를 경로 설정부(230)로 발생한다. 경로 설정부(230)는 입력된 연결 알림 인터럽트에 상응하여 설정값을 분석하여, 제1 설정값이므로 호스트 프로세서(210)와 USB 컨트롤러(224)를 연결하기 위한 연결 경로를 설정한다. 그리고, 연결 경로가 설정된 것을 알리기 위해 경로 설정부(230)는 USB 컨트롤러(224)로부터 입력받은 연결 알림 인터럽트를 호스트 프로세서(210)로 출력한다. 이에 따라, 호스트 프로세서(210)는 USB 컨트롤러(224)에 USB 장치가 연결된 것을 인식할 수 있으며, 또한, USB 컨트롤러(224)와의 연결 경로가 설정된 것을 인식할 수 있다.
그리고, 호스트 프로세서(210)는 설치된 드라이버를 이용하여 미리 정해진 초기화 동작(enumeration)을 수행할 수 있으며, 이후 설정된 연결 경로를 통해 USB 컨트롤러(224)를 직접 제어하고, 해당 USB 컨트롤러(224)에 연결된 USB 장치와 데이터를 송수신할 수 있다.
즉, 호스트 프로세서(210)에 드라이버와 어플리케이션이 모두 설치되어 있는 경우 호스트 프로세서(210)는 어플리케이션 프로세서(220)내의 AP 코어(222)를 이용하지 않고, USB 컨트롤러(224)를 직접 제어할 수 있다. 이와 같은 경우, 어플리케이션 프로세서(220)가 구동되지 않은 상태에서도 USB 컨트롤러(224)를 제어할 수 있는 이점이 있다. 물론, 이를 위해 USB 컨트롤러(224)에는 전원이 지속적으로 인가되어 있어야만 한다.
또 다른 예를 들어, 호스트 프로세서(210)에는 어플리케이션만 설치되어 있으며, 어플리케이션 프로세서(220)에 드라이버가 설치되어 있다고 가정하자. 이 경우, 경로 설정부(230)의 설정값은 전술한 바와 같이, 제2 설정값이다. 어플리케이션 프로세서(220)내의 USB 컨트롤러(224)에 임의의 USB 장치가 연결되면, USB 컨트롤러(224)는 연결 알림 인터럽트를 경로 설정부(230)로 발생한다. 경로 설정부(230)는 입력된 연결 알림 인터럽트에 상응하여 설정값을 분석하여(즉, 설정값이 제2 설정값으로 설정되어 있으므로) AP 코어(222)와 USB 컨트롤러(224)간의 연결 경로를 설정한다. 그리고, 경로 설정부(230)는 USB 컨트롤러(224)로부터 입력된 연결 알림 인터럽트를 설정된 연결 경로를 통해 AP 코어(222)로 출력한다. 이에 따라, AP 코어(222)는 USB 컨트롤러(224)에 USB 장치가 연결된 것을 인식할 수 있으며 또한, USB 컨트롤러(224)와의 연결 경로가 설정된 것을 인식할 수 있다. 이에, AP 코어(222)는 설치된 드라이버를 이용하여 설정된 연결 경로를 통해 USB 컨트롤러(224)에 연결된 USB 장치에 대한 초기화 동작을 수행할 수 있다. 그리고, AP 코어(222)는 설정된 연결 경로를 통해 USB 컨트롤러(224)와 제어 신호만을 송수신할 수 있다.
이와 같이, 초기화 동작이 수행된 후, 호스트 프로세서(210)가 USB 컨트롤러(224)에 연결된 USB 장치와 데이터를 송수신하고자 하는 경우, 호스트 프로세서(210)는 AP 코어(222)와 데이터 송수신을 위한 명령 라인을 설정할 수 있다. 그리고, 호스트 프로세서(210)는 해당 명령 라인을 통해 데이터 송수신을 위해 필요한 명령 및 송수신할 임의의 데이터들을 AP 코어(222)를 통해 송수신할 수 있다. 호스트 프로세서(210)에 어플리케이션만 설치하여 데이터 송수신 등과 같은 기능만을 담당하고, AP 코어(222)가 USB 컨트롤러(224)를 제어하기 위한 제어 기능을 담당하도록 하여 USB 컨트롤러(224)에 의해 빈번하게 발생되는 인터럽트를 처리하기 위한 기능을 AP 코어(222)에서 처리되도록 하여 호스트 프로세서(210)의 부하를 줄일 수 있는 이점이 있다. 또한, 어플리케이션 프로세서(220)의 경우, 상대적으로 고용량의 메모리를 필요로 하는 어플리케이션을 호스트 프로세서(210)에 설치하여 해당 기능만을 수행하도록 하여 어플리케이션 프로세서(220) 제작 단가를 낮출 수 있으며 칩 사이즈 또한 줄일 수 있는 이점이 있다.
또한, 구현 방법에 따라 드라이버와 어플리케이션이 설치되는 시점에 경로 설정부(230)는 호스트 프로세서(210) 및 AP 코어(222) 중 어느 하나와 USB 컨트롤러(224)간의 연결 경로를 미리 설정할 수도 있다. 즉, USB 컨트롤러(224)는 제어를 위해 드라이버가 설치된 장치(즉, 호스트 프로세서(210) 또는 AP 코어(222))와 연결되어야 하므로, 경로 설정부(230)가 드라이버와 어플리케이션이 설치되는 시점에 시스템 관리자에 의해 해당 드라이버와 어플리케이션이 설치된 장치와 USB 컨트롤 러(224)간의 연결 경로를 미리 설정하도록 제어할 수도 있다. 이 경우, 호스트 프로세서(210) 및 AP 코어(222)와 USB 컨트롤러(224)간의 연결 경로가 미리 설정되어 있는 경우, 경로 설정부(230)는 USB 컨트롤러(224)로부터 연결 알림 인터럽트가 입력되는 경우, 별도의 연결 경로 설정을 위한 동작 수행 없이 해당 연결 알림 인터럽트를 설정된 연결 경로를 통해 호스트 프로세서(210) 및 AP 코어(222) 중 어느 하나로 전달하는 기능만을 수행할 수 있다. 즉, 경로 설정부(230)는 USB 컨트롤러(224)에 USB 장치의 연결 여부에 상관없이 미리 USB 컨트롤러(224)와 프로세서(즉, 호스트 프로세서(210) 또는 AP 코어(222))간의 연결 경로를 설정할 수 있다.
본 명세서에서는 경로 설정부(230)가 어플리케이션 프로세서(220)에 포함되지 않는 것을 가정하여 이를 중점으로 설명하였으나 어플리케이션 프로세서(220) 내에 포함되는 구성 요소일 수도 있음은 당연하다. 즉, 본 명세서에서는 경로 설정부(230)가 호스트 프로세서(210) 및 어플리케이션 프로세서(220) 중 어느 하나에도 포함되지 않은 것을 가정하기로 한다.
또한, 도 2에는 AP 코어(222)가 USB 컨트롤러(224)와의 상호간 통신을 수행할 수 있는 별도의 신호선이 없는 것을 중점으로 설명하였으나(즉, AP 코어(222)가 경로 설정부(230)를 통해 USB 컨트롤러(224)와 상호간 통신을 수행하는 것을 중점으로 설명하였으나) AP 코어(222)와 USB 컨트롤러(224)간의 상호간 통신을 수행할 수 있는 신호선이 연결되어 AP 코어(222)가 USB 컨트롤러(224)를 직접 제어할 수도 있음은 당연하다.
다른 실시예로, AP 코어(222)에 USB 컨트롤러(224)를 제어하기 위한 어플리 케이션과 드라이버가 설치되어 있으며, 호스트 프로세서(210)는 어플리케이션과 연동되는 파일시스템(file system), 저장장치 드라이버, 데이터베이스 등이 설치되어 있다고 가정하자.
예를 들어, 사용자가 USB 컨트롤러(224)에 연결된 USB 장치에 기록된 데이터를 호스트 프로세서(2100에 포함된 저장매체로 기록하기 위한 명령을 입력한 경우, USB 컨트롤러(224)는 AP 코어(222)로 데이터 기록을 위한 인터럽트를 발생한다. 이에 AP 코어(222)에 설치된 드라이버는 데이터 기록을 위한 명령(즉, 데이터 기록을 위해 미리 설정된 함수)을 UMS로 호출한다. 여기서, UMS는 USB 저장 매체에 데이터의 기록, 삭제, 갱신을 위해 설정된 함수(즉, 명령)들 및 해당 USB 저장 매체에 데이터의 기록, 삭제, 갱신 등에 상응하여 USB 저장 매체를 관리하기 위한 명령들의 집합일 수 있다. USB 저장 매체에 데이터를 기록, 삭제, 변경하기 위해서는 UMS를 이용하여야 한다는 것은 당업자에게는 자명한 사항이므로 이에 대한 별도의 설명은 생략하기로 한다.
UMS는 드라이버에 의해 호출된 데이터 기록을 위한 명령을 해석한 후 데이터 기록을 위한 명령이므로, 호스트 프로세서(210)로 데이터 기록을 위한 제어 신호를 전송한다. 여기서, UMS가 AP 코어(222)에 설치되어 있으므로, 결과적으로는 AP 코어(222)가 데이터 기록을 위한 제어 신호를 호스트 프로세서(210)로 전송하는 것과 동일한다.
데이터 기록을 위한 제어 신호를 입력받은 호스트 프로세서(210)는 설치된 저장장치 드라이버를 이용하여 저장매체를 제어한다. 그리고, 호스트 프로세 서(210)는 AP 코어(222)로부터 기록될 데이터를 예를 들어, 패킷 단위로 입력받아 저장장치 드라이버를 이용하여 저장매체에 기록할 수 있다. 여기서, 저장장치 드라이버는 호스트 프로세서(210)에 연결된 저장매체를 제어하기 위한 명령들의 집합인 것으로 가정한다. 따라서, 호스트 프로세서(210)는 저장장치 드라이버에 기록된 명령들을 이용하여 저장매체의 임의의 위치에 해당 입력받은 데이터를 기록할 수 있다.
이하, UMS를 이용하여 USB 장치를 관리하고, 별도의 저장장치 드라이버를 이용하여 저장매체에 데이터를 기록하는 방법은 당업자에게는 자명한 사항이며, UMS, 드라이버, 데이터베이스, 저장장치 드라이버가 각각의 별도의 소프트웨어의 형태로 구현되는 것 또한 당업자에게는 자명한 사항이므로 별도의 설명은 생략하기로 한다.
또 다른 실시예로, 호스트 프로세서(210)는 파일 시스템과 저장장치 드라이버만 설치되어 있으며, 어플리케이션 프로세서(220)의 AP 코어(222)에 어플리케이션과 드라이버가 설치되어 있다고 가정하자. 여기서, AP 코어(222)에 설치된 어플리케이션이 UMS, MTP, 데이터베이스라고 가정하자. 이와 같은 상태에서, 사용자에 의해 멀티미디어 데이터 재생 명령이 입력되며, 사용자에 의해 USB 장치에 기록된 데이터의 재생 명령이 입력되었다고 가정하자. 이해와 설명의 편의를 위해, 멀티미디어 데이터를 재생하는 플레이어가 윈도우 미디어 플레이어(Window media player)인 것을 가정하여 설명하기로 한다. 데이터베이스는 멀티미디어 데이터의 속성 정보(예를 들어, 파일명, 파일 크기, 파일 유형, 음악가, 재생시간 등)가 저장되어 있다.
사용자에 의해 멀티미디어 데이터 재생 명령이 USB 컨트롤러(224)를 통해 AP 코어(222)로 입력되면, AP 코어(222)는 설치된 드라이버를 이용하여 해당 멀티미디어 데이터 재생 명령을 해석한다. 해석결과 입력된 명령이 호스트 프로세서(210)에 연결된 저장매체에 기록된 멀티미디어 데이터의 재생 명령인 경우, AP 코어(222)는 설치된 MTP를 이용하여 호스트 프로세서(210)로 전송한다. 우선, MTP를 이용하여 재생될 멀티미디어 데이터의 속성 정보를 데이터베이스로부터 획득하여 호스트 프로세서(210)로 전송한다. 그리고, USB 컨트롤러(224)는 저장부에 전송할 멀티미디어 데이터를 패킷단위로 독출하여 저장하고 있으므로, AP 코어(222)는 MTP를 이용하여 USB 컨트롤러(224)에 기록된 멀티미디어 데이터를 호스트 프로세서(210)로 전송한다. 이에 따라, 호스트 프로세서(210)는 AP 코어(222)를 통해 입력받은 재생될 멀티미디어 데이터의 속성정보 및 멀티미디어 데이터를 이용하여 해당 멀티미디어 데이터를 재생할 수 있다.
도 3은 본 발명의 일 실시예에 따른 호스트 프로세서가 어플리케이션 프로세서에 구비된 USB 컨트롤러를 제어하는 방법을 나타낸 순서도이다. 이하에서는 호스트 프로세서(210)가 직접 제어하는 주변장치가 USB 장치(예를 들어, USB 메모리 등)인 것을 가정하여 이를 중점으로 설명하나 자체 통신 수단을 포함하는 주변장치 컨트롤러를 포함하는 경우에도 동일하게 적용될 수 있음은 당연하다. 다만 이해와 설명의 편의를 위해 주변장치가 USB 장치인 것으로 가정하여 설명하기로 한다.
단계 310에서 USB 컨트롤러(224)는 임의의 USB 장치가 연결되었는지 여부를 판단한다. 예를 들어, USB 컨트롤러(224)는 USB 장치 연결 여부에 상응하여 각각 상이한 전압을 감지하여 USB 장치의 연결 여부를 인식할 수 있다. 이는 당업자에게는 자명한 사항이므로 이에 대한 별도의 설명은 생략하기로 한다.
만일 임의의 USB 장치가 연결되었다고 판단되면, 단계 315에서 USB 컨트롤러(224)는 USB 장치 연결에 상응하여 연결 알림 인터럽트를 경로 설정부(230)로 발생한다.
그러나, 만일 USB 장치가 연결되지 않은 경우, USB 컨트롤러(224)는 단계 310에서 대기한다.
단계 320에서 USB 컨트롤러(224)를 통해 연결 알림 인터럽트를 입력받은 경로 설정부(230)는 설정값을 참조하여 제1 설정값인지 제2 설정값인지 여부를 판단한다.
만일 제1 설정값이라고 판단되면, 단계 325에서 경로 설정부(230)는 호스트 프로세서(210)와 USB 컨트롤러(224)간 연결 경로를 설정한 후 연결 알림 인터럽트를 호스트 프로세서(210)로 출력한다.
단계 330에서 경로 설정부(230)를 통해 연결 알림 인터럽트가 입력되면, 호스트 프로세서(210)는 설정된 연결 경로를 통해 USB 컨트롤러(224)에 연결된 USB 장치에 대해 초기화 동작(Enumeration)을 수행한다.
예를 들어, 호스트 프로세서(210)는 USB 컨트롤러(224)에 연결된 USB 장치에 대한 어드레스 설정(set address), 장치 디스크립터(device descriptor), 환경 디 스크립터(configuration descriptor), 인터페이스 디스크립터(interface descriptor), 제조사 및 장치에 상응하는 문자 디스크립터(string descriptor) 등을 획득하여 설정할 수 있다. 이는 당업자에게는 자명한 사항이므로 이에 대한 별도의 설명은 생략하기로 한다.
USB 장치에 대한 초기화 동작이 완료되면, 단계 335에서 호스트 프로세서(210)는 설정된 연결 경로를 통해 설치된 드라이버를 이용하여 USB 컨트롤러(224)를 제어하고, 어플리케이션을 이용하여 USB 컨트롤러(224)에 연결된 USB 장치와 데이터를 송수신할 수 있다.
본 발명과의 차이점을 명확히 하기 위해 도 1을 참조하여 종래의 방법에 대해 간략하게 설명하면, USB 컨트롤러(124)를 제어하기 위한 드라이버 및 USB 컨트롤러(124)에 연결된 USB 장치와의 데이터 송수신을 위한 어플리케이션이 AP 코어(122)에 설치되어 있으므로, USB 컨트롤러(124)는 임의의 USB 장치가 연결되는 경우 AP 코어(122)로 연결 알림 인터럽트를 발생하였다. 이에 따라, AP 코어(122)는 초기화 동작(Enumeration)을 수행하고, USB 컨트롤러(124)를 제어하며 USB 컨트롤러(124)에 연결된 USB 장치와 데이터를 송수신하였다. 그러나, 호스트 프로세서(110)가 자체 USB 컨트롤러(124)를 구비하지 않거나 필요에 의해 AP 코어(122)에 구비된 USB 컨트롤러(124)를 이용해야 하는 경우, 호스트 프로세서(110)는 USB 컨트롤러(124)를 직접 제어할 수 없는 문제점이 있었다.
그러나, 만일 설정값이 제2 설정값이라고 판단되면, 단계 340에서 경로 설정부(230)는 AP 코어(222)와 USB 컨트롤러(224)간 연결 경로를 설정한 후 연결 알림 인터럽트를 AP 코어(222)로 출력한다.
단계 345에서 경로 설정부(230)를 통해 연결 알림 인터럽트가 입력되면, AP 코어(222)는 설정된 연결 경로를 통해 USB 컨트롤러(224)에 연결된 USB 장치에 대해 초기화 동작(Enumeration)을 수행한다. 즉, AP 코어(222)는 설정된 연결 경로를 통해 USB 컨트롤러(224)로부터 입력되는 하나 이상의 인터럽트를 분석하여 상응하도록 USB 컨트롤러(224)를 직접 제어할 수 있다.
호스트 프로세서(210)가 USB 컨트롤러(224)에 연결된 USB 장치와의 데이터 송수신이 필요한 경우, 단계 350에서 호스트 프로세서(210)는 AP 코어(222)와 데이터 송수신을 위해 필요한 명령 라인을 설정한다.
단계 355에서 호스트 프로세서(210)는 설정된 명령 라인을 통해 데이터 송수신을 위해 필요한 명령을 AP 코어(222)로 전송한다. 그리고, 호스트 프로세서(210)는 설정된 명령 라인을 통해 AP 코어(222)를 이용하여 USB 장치와 임의의 데이터를 송수신한다.
상술한 바와 같이, 본 발명은 주변장치가 USB 통신을 수행하는 USB 장치(예를 들어, USB 메모리)인 것을 가정하여 설명하였으나, USB 장치 이외에 자체 통신 기능(예를 들어, 블루투스, 적외선 통신 등등)을 포함하는 주변장치를 제어하는 주변장치 컨트롤러를 포함하는 슬레이브 프로세서(즉, 어플리케이션 프로세서)에도 동일하게 적용될 수 있음은 당연하다. USB 장치 이외의 통신 기능을 포함하는 경우에도 호스트 프로세서가 주변장치 컨트롤러(예를 들어, USB 컨트롤러(224))를 직접 제어하기 위한 방법은 동일하므로 별도의 설명은 생략하기로 한다.
상술한 바와 같이, 본 발명은 어플리케이션 프로세서의 동작 여부에 상관없이 USB 컨트롤러에 연결된 USB 장치를 호스트 프로세서가 직접 제어할 수 있는 효과가 있다.
또한, 본 발명은 호스트 프로세서가 별도의 USB 컨트롤러를 구비하지 않고서도 어플리케이션 프로세서에 구비된 USB 컨트롤러를 직접 제어하여 USB 장치와 데이터를 송수신할 수 있는 효과도 있다.
또한, 본 발명은 어플리케이션 프로세서에 구비된 USB 컨트롤러를 호스트 프로세서와 어플리케이션 프로세서가 각각 해당 USB 컨트롤러를 제어하고 이용할 수 있는 효과도 있다.
또한, 본 발명은 어플리케이션 프로세서가 USB 컨트롤러를 제어하기 위해 필요한 프로그램들이 설치된 메모리를 구비하지 않아도 되므로 어플리케이션 프로세서의 제조 단가를 낮출 수 있는 효과도 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (11)

  1. 임의의 주변 장치가 연결되면 연결 알림 인터럽트를 발생하는 주변장치 컨트롤러와 AP(Application Processor) 코어를 포함하는 어플리케이션 프로세서;
    상기 AP 코어와 통신을 수행하는 호스트 프로세서; 및
    상기 주변장치 컨트롤러부터 상기 제1 인터럽트가 입력되면, 미리 설정된 설정값을 참조하여 상기 AP 코어 및 호스트 프로세서 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 경로 설정부를 포함하되,
    상기 주변장치 컨트롤러는 상기 연결 경로가 설정된 상기 AP 코어 및 상기 호스트 프로세서 중 어느 하나에 의해 직접 제어되는 것을 특징으로 하는 통신 제어 시스템.
  2. 제 1항에 있어서,
    상기 경로 설정부는 상기 설정값이 제1 설정값이면, 상기 호스트 프로세서와 상기 주변장치 컨트롤러가 연결되도록 하는 제1 연결 경로를 설정하고,
    상기 설정값이 제2 설정값이면 상기 AP 코어와 상기 주변장치 컨트롤러가 연결되도록 하는 제2 연결 경로를 설정하며,
    상기 설정된 제1 또는 제2 연결 경로 중 어느 하나로 상기 연결 알림 인터럽트를 출력하는 것을 특징으로 하는 통신 제어 시스템.
  3. 제 2항에 있어서,
    상기 제1 연결 경로가 설정된 후 상기 경로 설정부에 의해 상기 연결 알림 인터럽트가 입력되면 상기 호스트 프로세서는 상기 제1 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하며, 상기 주변장치와의 데이터를 송수신하는 것을 특징으로 하는 통신 제어 시스템.
  4. 제 3항에 있어서,
    상기 호스트 프로세서는 상기 USB 컨트롤러를 제어하기 위한 제어 명령들의 집합인 드라이버와 상기 USB 컨트롤러에 연결된 USB 장치와의 멀티미디어 데이터를 송수신하기 위한 명령들의 집합인 어플리케이션이 설치되어 있는 것을 특징으로 하는 통신 제어 시스템.
  5. 제 2항에 있어서,
    상기 제2 연결 경로가 설정되어 상기 경로 설정부에 의해 상기 연결 알림 인터럽트가 입력되면, 상기 AP 코어는 상기 제2 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 것을 특징으로 하는 통신 제어 시스템.
  6. 제 5항에 있어서,
    상기 호스트 프로세서는 상기 주변장치로의 데이터 송수신을 위해 상기 AP 코어와 명령 라인을 설정한 후 상기 AP 코어를 이용하여 상기 주변장치와 데이터를 송수신하는 것을 특징으로 하는 통신 제어 시스템.
  7. 제 6항에 있어서,
    상기 AP 코어는 상기 주변장치 컨트롤러를 제어하기 위한 제어 명령들의 집합인 드라이버가 설치되어 있으며,
    상기 호스트 프로세서는 상기 주변장치 컨트롤러에 연결된 주변장치와의 멀티미디어 데이터를 송수신하기 위한 명령들의 집합인 어플리케이션이 설치되어 있는 것을 특징으로 하는 통신 제어 시스템.
  8. 통신 제어 시스템에서 연결된 주변장치와의 통신을 수행하는 방법에 있어서,
    주변장치의 연결에 의해 주변장치 컨트롤러가 연결 알림 인터럽트를 발생하는 단계;
    경로 설정부가 상기 연결 알림 인터럽트의 입력에 의해 미리 설정된 설정값 을 참조하여 호스트 프로세서 및 AP 코어 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 단계; 및
    상기 연결 경로가 설정된 호스트 프로세서 및 AP 코어 중 어느 하나가 설정된 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계를 포함하되,
    연결된 주변장치를 제어하는 상기 주변장치 컨트롤러와 상기 AP 코어는 어플리케이션 프로세서에 포함되는 것을 특징으로 하는 통신 수행 방법.
  9. 제 8항에 있어서,
    호스트 프로세서 및 AP 코어 중 어느 하나와 상기 주변장치 컨트롤러가 연결되도록 하는 연결 경로를 설정하는 단계는,
    상기 설정값이 제3 설정값이면, 상기 경로 설정부는 상기 호스트 프로세서와 상기 주변장치 컨트롤러간의 제3 연결 경로를 설정하는 단계;
    상기 설정값이 제4 설정값이면, 상기 경로 설정부는 상기 어플리케이션 프로세서와 상기 주변장치 컨트롤러간의 제4 연결 경로를 설정하는 단계; 및
    상기 제3 연결 경로 또는 상기 제4 연결 경로 중 어느 하나를 통해 상기 연결 알림 인터럽트를 출력하는 단계를 포함하는 것을 특징으로 하는 통신 수행 방법.
  10. 제 9항에 있어서,
    상기 제3 연결 경로로 설정된 경우, 상기 주변장치 컨트롤러를 직접 제어하는 단계는,
    상기 제3 연결 경로를 통해 상기 연결 알림 인터럽트가 입력되면, 상기 호스트 프로세서는 상기 제3 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계; 및
    상기 호스트 프로세서가 상기 제3 연결 경로를 통해 상기 주변장치 컨트롤러와 데이터를 송수신하는 단계를 포함하는 것을 특징으로 하는 통신 수행 방법.
  11. 제 9항에 있어서,
    상기 제4 연결 경로로 설정되는 경우, 상기 주변장치 컨트롤러를 직접 제어하는 단계는,
    상기 제4 연결 경로를 통해 상기 연결 알림 인터럽트가 입력되면, 상기 AP 코어는 상기 제4 연결 경로를 통해 상기 주변장치 컨트롤러를 직접 제어하는 단계;
    상기 호스트 프로세서가 상기 주변장치와의 데이터 송수신을 위해 상기 AP 코어와 명령 라인을 설정하는 단계; 및
    상기 호스트 프로세서가 상기 설정된 명령 라인을 통해 상기 AP 코어를 이용하여 상기 주변장치 컨트롤러로 데이터를 송수신하는 단계를 포함하는 것을 특징으로 하는 통신 수행 방법.
KR1020070009096A 2007-01-29 2007-01-29 주변장치 제어 방법 및 그 시스템 KR100741735B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070009096A KR100741735B1 (ko) 2007-01-29 2007-01-29 주변장치 제어 방법 및 그 시스템
PCT/KR2008/000440 WO2008093963A1 (en) 2007-01-29 2008-01-24 Method and system for controlling of peripherals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070009096A KR100741735B1 (ko) 2007-01-29 2007-01-29 주변장치 제어 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR100741735B1 true KR100741735B1 (ko) 2007-07-23

Family

ID=38499295

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070009096A KR100741735B1 (ko) 2007-01-29 2007-01-29 주변장치 제어 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR100741735B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7142953B2 (en) * 2002-01-11 2006-11-28 Bae Systems Information And Electronic Systems Integration Inc. Reconfigurable digital processing system for space

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7142953B2 (en) * 2002-01-11 2006-11-28 Bae Systems Information And Electronic Systems Integration Inc. Reconfigurable digital processing system for space

Similar Documents

Publication Publication Date Title
US7921244B2 (en) Data sharing and transfer systems and methods
JP4346853B2 (ja) 電子装置及びその制御方法
US10380049B2 (en) Multi-host supported universal serial bus hub and automobile head unit using the same
JPWO2006035738A1 (ja) ホストコントローラ
JP5204579B2 (ja) デバイス、情報処理システム、情報処理方法
US6965954B2 (en) Data playing system, transmitting and receiving apparatus, and bus conversion unit
KR100758219B1 (ko) 유에스비 장치의 동작을 통제하는 방법
KR100741735B1 (ko) 주변장치 제어 방법 및 그 시스템
TWI749658B (zh) 具自動更新韌體功能的usb集線裝置及具有該usb集線裝置的主機系統
US7934024B2 (en) Method for reading and writing non-standard register of serial advanced technology attachment (SATA) device
WO2016031456A1 (ja) リーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラム
JP2002176456A (ja) 電子機器および情報更新方法
US20090094402A1 (en) Portable computer having auxiliary io apparatus and system setup method thereof
KR100922812B1 (ko) 주변장치 제어 방법 및 그 시스템
US20080091399A1 (en) Driverless signal generating apparatus and control method thereof
JP7111756B2 (ja) データアクセス、伝送及び電源管理機能を有する統合電子装置及びその方法
CN113971146B (zh) 具自动更新固件功能的usb集线装置及具有该usb集线装置的主机系统
KR20080017810A (ko) 휴대 단말기에서의 오티지 기능을 이용한 인터페이스 방법및 장치
US10061733B2 (en) Peripheral interface chip and data transmission method thereof
KR20230145767A (ko) 광 디스크 드라이브의 인터페이스 전환 방법
CN107818064B (zh) 支持主从变换的通用串行总线的集线器的运作方法
KR100586373B1 (ko) Usb의 데이터 저장장치
KR20090021029A (ko) 스토리지 디바이스 및 그 구동방법
KR20080058616A (ko) 휴대용 단말기에서 컴퓨터 연결모드 설정 방법 및 장치
JP2003091502A (ja) データ通信装置

Legal Events

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

Payment date: 20130626

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160630

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180627

Year of fee payment: 12