KR20050021901A - 전자기기 및 그 인터페이스 제어방법 - Google Patents

전자기기 및 그 인터페이스 제어방법 Download PDF

Info

Publication number
KR20050021901A
KR20050021901A KR1020040067900A KR20040067900A KR20050021901A KR 20050021901 A KR20050021901 A KR 20050021901A KR 1020040067900 A KR1020040067900 A KR 1020040067900A KR 20040067900 A KR20040067900 A KR 20040067900A KR 20050021901 A KR20050021901 A KR 20050021901A
Authority
KR
South Korea
Prior art keywords
connection mode
data
configuration
interface
class
Prior art date
Application number
KR1020040067900A
Other languages
English (en)
Other versions
KR100769611B1 (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 캐논 가부시끼가이샤
Publication of KR20050021901A publication Critical patent/KR20050021901A/ko
Application granted granted Critical
Publication of KR100769611B1 publication Critical patent/KR100769611B1/ko

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Studio Devices (AREA)
  • Information Transfer Systems (AREA)

Abstract

제1 전송 레이트로 데이터 전송을 행하는 하이-스피드 모드 및, 상기 제1 전송 레이트보다 저속으로 데이터 전송을 행하는 풀-스피드 모드에서 데이터 전송이 가능한 USB 콘트롤러를 갖는 전자기기에서는, USB 케이블의 접속시에, 접속모드가 하이-스피드 모드인지 풀-스피드 모드인지를 취득한다. 그 취득한 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하고, 그 선택된 제1 또는 제2 컨피규레이션에 근거하여 USB 콘트롤러를 제어하고, 접속된 외부기기에 데이터 전송처리를 실행한다. 이것에 의해 접속모드에 적합한 데이터 전송처리를 실행하는 것을 가능하게 한다.

Description

전자기기 및 그 인터페이스 제어방법{ELECTRONIC DEVICE AND METHOD OF CONTROLLING INTERFACE THEREOF}
본 발명은, USB2.0 규격 또는 이것에 유사한 규격에 준거한 통신 인터페이스를 갖는 전자기기 및 이 전자기기의 인터페이스 제어방법에 관한 것이다.
USB(Universal Serial Bus) 규격(USB1.1("Universal Serial Bus Specification Revision 1.1, September 23, 1998"참조), USB2.0("Universal Serial Bus Specification Revision 2.0, April 27, 2000" 참조))은, 퍼스널 컴퓨터와 주변기기 사이의 통신 인터페이스에 관한 것이다.
또한, 현재, 디바이스 클래스의 하나인 비디오 클래스 인터페이스("Universal Serial Bus Device Class Definition for Video Devices", Revision 1.0 RC4, June 26)가 제안되어 있다. 비디오 클래스 인터페이스에 준거한 디지털 비디오 카메라에 의하면, 화상 센서에 의해 포획된 화상 데이터 또는 기억매체로부터 판독된 화상 데이터를 퍼스널 컴퓨터에 스트리밍할 수 있다. 비디오 클래스 인터페이스로 규정되어 있는 포맷의 예에는, MJPEG(Motion-JPEG), DV(Digital Video) 및 MPEG(Moving Picture Experts Group) 등이 있다.
서브 타입(비디오 클래스 인터페이스에서의 동화상 전송포맷이라고 하는 USB 용어)으로서 MJPEG 포맷을 선택하는 경우, 음성의 전송이 비디오 클래스 인터페이스에서 규정되어 있다는 사실은, 화상에 음성 데이터를 부가한 스트리밍을 행하는 경우, 비디오 클래스 인터페이스와는 별도로 오디오 클래스 인터페이스를 실장할 필요가 있다는 것을 의미한다. 그러나, DV 포맷 또는 MPEG 포맷을 서브 타입으로서 선택하는 경우, 비디오 클래스 인터페이스에 음성의 송수신도 규정되어 있기 때문에, 오디오 클래스 인터페이스를 별도로 실장할 필요가 없다. 따라서, 화상에 음성을 부가한 스트리밍을 행하는 경우, 비디오 클래스 인터페이스의 서브타입선택의 방식에 의해, 디바이스로서 실장된 인터페이스의 개수와 종류가 다르다.
또한, 비디오 클래스 인터페이스를 사용하여 스트리밍을 행하는 경우, 비동기전송(아이소크로너스(isochronous) 전송) 또는 동기전송(벌크 전송) 중 어느 하나를 사용할 수도 있다. 그러나, 화상 및 음성의 연속성을 보유하고 화상의 프레임 변경의 타이밍을 퍼스널 컴퓨터에 인식하기 쉽게 하기 때문에, 보통 아이소크로너스 전송을 사용한다.
이 아이소크로너스 전송은, 일정 간격(이하, "마이크로프레임")마다 일정량의 데이터를 반드시 전송하는 방식이다. 풀-스피드 모드(USB1.1로 규정된 12Mbps의 전송을 말하는 USB 용어) 접속시, 마이크로프레임의 간격은 1ms로, 각 마이크로프레임에서 최대 1023 바이트의 아이소크로너스 데이터를 송수신 가능하다. 이에 비해, 하이-스피드 모드(USB2.0으로 규정된 480Mbps의 전송을 말하는 USB 용어) 접속시는 마이크로프레임의 간격은 123㎲이고, 각 마이크로프레임에서 최대 3072 바이트의 데이터를 송수신 가능하다.
이러한 접속에 의한 대역의 차이로 인해, 하이-스피드 모드와 풀-스피드 모드에서 스트리밍 가능한 프레임 레이트, 화상 사이즈 및 화상 포맷이 서로 다르다. 또한, 하이-스피드 모드에서 접속하기 위해서는, 예를 들면, 호스트인 퍼스널 컴퓨터가 하이-스피드모드를 지원하는데 필요하거나, 또는 전체 접속경로가 하이-스피드 모드를 지원하는데 필요하는 것을 만족시키는 특정 조건을 필요로 한다. 그래서, 접속모드는 하이-스피드 모드 또는 풀-스피드 모드이고 사용자마다 다르다.
이 때문에, 종래와 같이, 접속모드에 의하지 않고 고정적인 컨피규레이션에서 USB 접속하여 스트리밍 등을 행하고자 하면, 사용자 환경에 따른 서비스의 제공을 항상 행할 수 없다. 예를 들면, 하이-스피드 모드의 접속에 맞춘 컨피규레이션에서는, 풀-스피드 모드에서만 접속할 수 있는 사용자는 서비스를 받을 수 없다. 한편, 풀-스피드 모드 접속에 맞춘 컨피규레이션에서는, 사용자는, 비록 하이-스피드 모드 접속이 가능할지라도 하이-스피드 모드의 대역을 이용하는 이상적인 서비스를 받을 수 없게 된다.
따라서, 본 발명의 목적은, USB 케이블의 접속시에 접속모드를 취득하고, 그 취득한 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하며, 그 제1 또는 제2 컨피규레이션에 근거하여 데이터 전송처리를 실행할 수 있는 전자기기 및 그 전자기기의 인터페이스 제어방법을 제공하는데 있다.
본 발명의 일 국면에 따른 전자기기는, USB를 경유하여 외부기기에 및 그 외부기기로부터 데이터의 송수신이 가능한 전자기기로서, 제1 전송 레이트에 의한 데이터전송을 행하는 제1 접속모드 및, 상기 제1 전송 레이트보다 저속의 데이터전송을 행하는 제2 접속모드에 의한 데이터전송이 가능한 USB 콘트롤러와, USB 케이블의 접속시에, 상기 제1 접속모드인지 상기 제2 접속모드인지를 취득하는 접속모드 취득수단과, 상기 접속모드 취득수단에 의해 취득된 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하고, 그 선택한 제1 또는 제2 컨피규레이션에 근거하여 상기 USB 콘트롤러를 제어하여, 데이터 전송처리를 실행하는 제어수단을 구비하고, 상기 제1 컨피규레이션은, 상기 제1 접속모드용의 적어도 하나의 인터페이스를 포함하며, 상기 제2 컨피규레이션은, 상기 제2 접속모드용의 적어도 하나의 인터페이스를 포함한다.
본 발명의 다른 국면에 따른 전자기기에서의 인터페이스 제어방법은, USB를 경유하여 외부기기에 및 그 외부기기로부터 데이터의 송수신이 가능한 전자기기에서의 인터페이스 제어방법으로서, 제1 전송 레이트에 의한 데이터전송을 행하는 제1 접속모드에서 데이터전송을 행하는 제1 데이터 전송단계와, 상기 제1 전송 레이트보다 저속의 제2 접속모드에서 데이터전송을 행하는 제2 데이터 전송단계와, USB 케이블의 접속시에, 상기 제1 접속모드인지 상기 제2 접속모드인지를 취득하는 접속모드 취득단계와, 상기 접속모드 취득단계에서 취득된 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하고, 그 선택한 제1 또는 제2 컨피규레이션에 근거하여 상기 USB 콘트롤러를 제어하며, 데이터 전송처리를 실행하는 제어단계를 포함하고, 상기 제1 컨피규레이션은, 상기 제1 접속모드용의 적어도 하나의 인터페이스를 포함하고, 상기 제2 컨피규레이션은, 상기 제2 접속모드용의 적어도 하나의 인터페이스를 포함한다.
본 발명의 다른 특징 및 이점들은, 첨부도면을 참조한 다음의 설명으로부터 명백해지고, 동일한 참조문자는 도면 전체에 걸쳐서 동일 또는 유사한 부분을 가리킨다.
[바람직한 실시예]
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세하게 설명한다.
[제1 실시예]
제1 실시예의 디지털 비디오 카메라는, CCD로부터의 입력화상 및 마이크로폰으로부터의 입력음성을 퍼스널 컴퓨터에 전송해서 스트리밍 재생을 행하는 기능과, 랜덤 액세스 가능한 기억매체(예를 들면, 메모리 카드)에 기억되어 있는 화상 파일을 퍼스널 컴퓨터에 전송하는 기능을 갖는 다기능장치이다.
도 1은, 제1 실시예에 따른 퍼스널 컴퓨터와 디지털 비디오 카메라를 접속한 시스템의 구성을 나타낸 블록도이다.
도 1에서, 퍼스널 컴퓨터(100)는, USB 케이블(101)에 접속될 수 있는 USB 호스트로서 기능하고 있다. 디지털 비디오 카메라(DVC)(102)는 USB 포트를 구비한 USB 디바이스이다. 퍼스널 컴퓨터(100)와 디지털 비디오 카메라(102)는, USB 케이블(101)에 의해 직접 접속된다. 이 시스템에서는, 디지털 비디오 카메라(102)로 촬영 중인 동화상 및 음성이 스트림 재생용 데이터로서 퍼스널 컴퓨터(100)에 전송된다. 또한, 디지털 비디오 카메라(102)의 메모리 카드에 기억되어 있는 화상 파일은 퍼스널 컴퓨터(100)에 전송된다.
또한, 데이터의 전송방향은, 디지털 비디오 카메라(102)로부터 퍼스널 컴퓨터(100)로의 방향을 "IN 방향"이라고 하고, 퍼스널 컴퓨터(100)로부터 디지털 비디오 카메라(102)로의 방향을 "OUT 방향"이라고 한다.
도 2는, 제1 실시예에 따른 디지털 비디오 카메라(102)의 구성을 나타낸 블록도이다.
도 2에 도시된 것처럼, 피사체로부터의 빛은 렌즈(200)를 통과한다. 201은 촬영센서(201) 상에 상기 렌즈(200)로부터의 빛이 결상되어, 그 결상된 화상에 따른 전기신호를 출력한다. 카메라 신호처리기(202)는, 촬영소자(201)로부터의 광전변환화상을 표준 화상신호가 되도록 신호처리를 행한다. 화상압축부(203)는, 화상신호를 JPEG 부호화 등에 의해 부호화해서 압축한다. 음성압축부(204)는, 마이크로폰(206)으로부터 발생되는 음성신호를, 예를 들면 PCM 부호화 등에 의해 압축해서 음성처리를 행한다. 화상/음성 압축부(205)는, 화상신호 및 음성신호를, 예를 들면 DV용 부호화 등에 의해 압축해서 처리한다. 마이크로폰(206)은, 음성을 취득하기 위해 사용된다. 음성신호 처리기(207)는, 마이크로폰(206)으로부터의 음성신호를 표준적인 음성신호가 되도록 신호처리를 행한다. CPU(208)는, 메모리(209)에 기억된 제어프로그램에 따라, 이 디지털 비디오 카메라 전체의 동작을 제어하고 있다. 메모리(209)는 또한 일시적으로 화상 데이터 또는 음성 데이터를 축적하는 메모리로서도 사용된다. 기억매체 인터페이스(210)는, 착탈가능한 기록매체(211)와의 통신을 행하기 위한 인터페이스이다. 기억매체(211)는, 예를 들면 메모리 카드이다. 또한, USB 콘트롤러(212)와, USB 케이블을 착탈하기 위한 커넥터(213)가 도시되어 있다.
도 3은, 제1 실시예에 따른 디지털 비디오 카메라(102)에서의 실장 클래스를 설명하는데 유용한 도면이다.
이 USB 다기능장치인 디지털 비디오 카메라(102)에서의 실장 클래스는, 도 3에 도시된 것처럼,
A. 하이-스피드 모드인 경우:
·비디오 클래스 인터페이스(Video)
[스트림(비디오 스트림) : DV 포맷(DV)/콘트롤(Video Control)]
·정지화상 클래스(PTP : Picture Transfer Protocol) 인터페이스
B. 풀-스피드 모드인 경우:
·비디오 클래스 인터페이스(Video)
[스트림(비디오 스트림) : MJPEG 포맷(MJPEG)/콘트롤]
·오디오 클래스 인터페이스(Audio)[스트림(Audio Stream) : PCM 포맷(PCM)/ 콘트롤]
·대기억 인터페이스(Mass Storage)를 포함하고 있다.
USB 콘트롤러(212)는, 통신용으로 7개의 엔드 포인트(USB 용어에서, 전송용 FIFO)과, 엔드 포인트 1∼6에 대하여 전송방향 및, 전송의 종별[Bulk(비동기전송)/Interrupt(인터럽트 전송)/Isochronous(동기전송)]을 변경하는 기능을 구비한다. 또한, USB 콘트롤러(212)는, 하이-스피드 모드 및 풀-스피드 모드를 지원하고, 접속시에 퍼스널 컴퓨터(100)(호스트)↔디지털 비디오 카메라(102)(디바이스)의 사이의 접속모드를 검지하고, 이 정보를 CPU(208)에 제공하여, 도 3에 나타낸 바와 같은 엔드 포인트 구성을 취하는 것이 가능하다. 여기서 아이소크로너스 전송(Isochronous)은, 각 프레임마다 n바이트 전송시간을 할당해서 전송을 행하는 모드이고, 인터럽트 전송(Interrupt)은, 호스트가 정기적으로 디바이스를 폴링하여, 전송해야 하는 데이터가 있으면 데이터전송을 행하는 모드이고, 벌크 전송(Bulk)은 우선순위가 가장 낮고, 버스의 스케줄이 비어 있을 경우 프레임단위로도 전송할 수 있는 모드이다.
도 4는, 하이-스피드 모드 및 풀-스피드 모드에서의 처리의 흐름을 나타내는 흐름도이다. 이하, 도 2의 블록도 및 도 4의 흐름도를 참조하여 동작을 설명한다. 또한 기동시에는, (도면에 나타나 있지 않은) 플래시 메모리에 압축 기억되어 있는 프로그램은, 메모리(209)에 압축해제 및 신장된다. 그리고, CPU(208)가, 이 메모리(209)에 저장된 프로그램에 따라 동작하는 것으로 한다.
우선, 도 4의 단계 S1에서, USB 케이블(101)이 USB 커넥터(213)에 삽입되면 단계 S2로 진행된다. 여기서, USB 콘트롤러(212)는, 이 케이블(101)이 삽입된 것을 검지하고, CPU(208)에 케이블이 삽입된 사실을 통지한다. 이에 따라, CPU(208)는, USB 콘트롤러(212)의 엔드 포인트의 동작에 필요한 초기화를 행하고, 이 초기화의 종료시에, USB 콘트롤러(212)를 제어하여 하이-스피드 모드 접속용의 풀업(pull-up)을 행한다.
이에 따라, USB 디바이스인 디지털 비디오 카메라(102)로부터 풀업을 받을 때, USB 호스트인 퍼스널 컴퓨터(100)는, 그 디지털 비디오 카메라(102)와 협상에 들어간다. 이때, USB 호스트(100)로부터 USB 디바이스(102)까지의 접속경로(101)가 모두 하이-스피드 모드를 지원하면, 이 접속은 하이-스피드 모드에서 행해지고, 그렇지 않으면 풀-스피드 모드에서 행해진다.
다음에, 단계 S3으로 진행되고, 이 접속모드를 검지한 USB 콘트롤러(212)는, CPU(208)에 접속모드를 통지한다. 이 통지를 받은 CPU(208)는, USB 콘트롤러(212)의 엔드 포인트 1∼6에 대하여, 도 4의 단계 S4 또는 단계 S15와 같이, 도 3에 나타낸 형태로 초기화를 행한다.
다음에, 단계 S5 또는 단계 S16에서, CPU(208)는, 도 3에 나타낸 접속모드에 맞춘 디스크립터 정보(USB 디바이스의 기능, 실장 클래스/서브클래스 프로토콜 등을 나타낸 정보를 말하는 USB 용어)를, 메모리(209)에 작성하고, 퍼스널 컴퓨터(100)의 협상(모든 USB 기기에서 표준적으로 행해지는 초기화 동작으로, 디스크립터 정보의 교환 등을 말하는 USB 용어)일 때의 표준요구에 따라 전송하고, 이들 단계 S6 또는 S17에서 협상을 종료한다.
이 협상의 방법 및 작성된 디스크립터의 내용은,
·"Universal Serial Bus Specification 2.00"
·"Universal Serial Bus Device Class Definition for Video Devices"
·"Universal Serial Bus Device Class Definition for Video Devices : Motion-JPEG Payload"
·"Universal Serial Bus Device Class Definition for Video Devices : DV Payload"
·"Universal Serial Bus Device Class Definition for Audio Devices"
·"Universal Serial Bus Mass Storage Class Specification Overview"
·"Universal Serial Bus Still image Capture Device Definition"의 사양서에 규정되어 있으므로 여기서는 생략한다.
우선, 하이-스피드 모드에 대하여 설명한다.
도 3에 나타낸 바와 같이, 하이-스피드 모드에서는, 스트림 재생에 사용된 비디오 클래스 인터페이스는 DV 포맷을 사용한다. 또한, 카드 액세스에는, 정지 화상 클래스(PTP) 인터페이스를 사용한다. 이 때문에, 도 4의 단계 S7 및 S8에서 필요한 처리를 기동한다.
다음에 스트림 재생에 사용된 비디오 클래스 인터페이스에 대하여 설명한다.
단계 S9에서, 렌즈(200)에 의해 얻어진 피사체상은, 촬영센서(201)에 의해 광전변화되고, 그 결과의 전기신호는 카메라 신호처리기(202)에 입력된다. 이 카메라 신호처리기(202)는, 광전변환 화상을 표준 화상신호로 변환해서 그 화상을 메모리(209)에 일시적으로 저장한다.
한편, 마이크로폰(206)으로부터 얻어진 음성신호는, 음성신호 처리기(207)에 의해 표준 음성신호로 변환되고, 표준 화상신호를 저장하는 영역과는 다른 영역에서 메모리(209)에 일시적으로 저장된다. 다음에, 화상/음성 압축(DV)부(205)는, 그 일시적으로 저장된 표준 화상신호 및 음성신호를 DV 포맷용으로 압축부호화 처리를 행하고, 그 압축한 결과를 조금전에 설명한 것과는 다른 영역에서 메모리(209)에 일시적으로 저장한다.
스트리밍 재생 개시시, 퍼스널 컴퓨터(100)는, 디지털 비디오 카메라(102)에 대하여 세트 인터페이스(Set Interface) 커맨드를 발행 후, 도 4의 단계 S10에서, IN 토큰(USB 호스트로부터 디지털 비디오 카메라(102)→USB 호스트(100)방향의 데이터 전송명령)을 발행한다. 이에 따라, 단계 S11에서, 디지털 비디오 카메라(102)의 CPU(208)가, USB 콘트롤러(212)로부터, 이 IN 토큰을 수리하면, 협상할 때에 동의한 사이즈의 DV 포맷 데이터를, 메모리(209)로부터 USB 콘트롤러(212)에 대하여, 메모리(209)의 데이터에 소정의 헤더를 부가해서 전송한다.
본 실시예에서는, DV 포맷 데이터를 아이소크로너스 전송을 이용하여 전송한다. 이 전송제어 및 헤더는 "Universal Serial Bus Specification 2.0"에 규정되어 있으므로 여기서는 설명을 생략한다. 이러한 처리를 반복함으로써, 비디오 클래스 인터페이스로 하이-스피드 모드에서의 DV 포맷의 스트리밍을 실현한다.
다음에, 기억매체(211)인 카드에의 액세스에 대하여 설명한다.
단계 S12에서, 퍼스널 컴퓨터(100)는, 디지털 비디오 카메라(102)에 대하여 기억매체(211)의 파일 단위로 화상의 판독/기록을 요구한다. CPU(208)는, USB 콘트롤러(212)를 제어하고, 이 퍼스널 컴퓨터(100)로부터의 요구를 받고, 메모리(209) 상에 그것을 신장하고, 그 요구 특징을 판단한다. 이 요구 특징이 디지털 비디오 카메라(102)로부터 퍼스널 컴퓨터(100)로의 오브젝트(파일)의 전송요구인 경우에, CPU(208)는 기억매체 인터페이스(210)를 제어하고, 기억매체(211)의 FAT(File Allocation Table) 정보를 메모리(209)에 신장하고, 이 FAT 정보를 기초로 상기 전송요구의 파일에 관한 섹터 내용을 메모리(209)에 신장한다. 그 섹터 내용을 신장한 후, 퍼스널 컴퓨터(100)로부터 IN 토큰이 발행되면 단계 S14로 진행된다. 협상할 때에 동의한 정지 화상 클래스 인터페이스의 사이즈에 따라, 메모리(209)의 섹터 내용을 USB 콘트롤러(212)에 전달하고, USB 콘트롤러(212)를 제어해서 케이블(101)에 전송패킷을 송출한다. 이것을 순차적으로 반복함으로써, 퍼스널 컴퓨터(100)는 기억매체(211)의 파일 등을 취득한다.
다음에 풀-스피드 모드에 대하여 설명한다.
스트림 재생에 사용한 비디오 클래스 인터페이스는 MJPEG 포맷을 사용하고, 오디오 클래스 인터페이스는 PCM 포맷을 사용한다. 또한, 카드 액세스에 사용한 대기억 클래스는, 벌크 온리(bulk only)(USB 스토리지 클래스 인터페이스 용어 : 동기전송만을 사용하는 파일전송방식)를 사용한다. 이 때문에, 도 4의 단계 S18 및 S19, S20에서 필요한 처리의 기동을 행한다.
우선, 스트림 재생에 사용한 비디오 클래스 인터페이스 및 오디오 인터페이스에 대하여 설명을 도 4의 흐름도 및 도 5의 MJPEG/PCM 관리 테이블의 개념도를 참조하여 설명한다.
도 5는, 제1 실시예에 따른 디지털 비디오 카메라(102)에서의 MJPEG/PCM 관리방법을 설명하는데 유용한 도면이다.
도 5에서, 프레임 단위의 MJPEG 및 PCM의 인덱스 테이블(500), MJPEG의 데이터 테이블(501), PCM의 데이터 테이블(502), MJPEG에서의 1 프레임 만큼의 비디오 데이터(503∼506), PCM의 1 프레임 만큼의 오디오 데이터(507∼510)를 나타내고 있다. 비디오 어드레스(511)는 MJPEG 데이터(503)의 선두 어드레스를 나타내고, 비디오 어드레스(512)는 MJPEG 데이터(503)의 데이터 어드레스를 나타내고, 오디오 어드레스(513)는 PCM 데이터(507)의 선두 어드레스를 나타내고 있다. 오디오 사이즈(514)는, PCM 데이터(507)의 데이터 사이즈를 나타내고 있다. 마찬가지로, 비디오 데이터와 오디오 데이터의 항목은, 각각 데이터 테이블(501, 502)에 의해, 그 데이터 어드레스 및 데이터 사이즈가 관리되어 있다. 또한 비디오 데이터(503, 504, 505, 506)의 항목과 오디오 데이터(507, 508, 509, 510)의 항목 각각은, 동기화 되는 것으로 한다.
다음에, 도 4의 단계 S21에서, 렌즈(200)에 의해 얻어진 피사체상은, 촬영센서(201)에 의해 광전변화되고, 그 결과의 전기신호는 카메라 신호처리기(202)에 입력된다. 이 카메라 신호처리기(202)는, 그 광전기적으로 변환된 화상을 표준 화상신호로 변환해서 메모리(209)에 그 화상을 일시적으로 저장한다. 화상압축부 (MJPEG)(203)는, 이 메모리(209)에 일시적으로 저장된 표준 비디오 데이터를 MJPEG용으로 화상압축 부호화 처리를 행하고, 메모리(209)의 상기 표준화상과는 다른 영역(도 5의 501)에 일시적으로 압축의 결과를 저장한다. 이 MJPEG 데이터의 일시저장시, 관리를 쉽게 하기 위해, 선두 어드레스(도 5의 511) 및 프레임의 데이터 사이즈(도 5의 512)를 기초로 도 5의 500으로 나타낸 인덱스 정보를 메모리(209)에 작성한다.
다음에, 단계 S22로 진행되어, 마이크로폰(206)으로부터 얻어진 음성신호는 음성신호 처리기(207)에 의해 표준 음성신호로 변환하고, 메모리(209)의 비디오 데이터와는 다른 영역에 일시적으로 저장한다. 음성압축부(PCM)(204)는, 메모리(209)에 일시적으로 저장된 이 표준음성신호를, PCM용으로 음성압축 부호화 처리를 행하고, 메모리(209)의 상기 화상 영역 및 표준음성 데이터와는 다른 영역(도 5의 502)에 일시적으로 저장한다. 이때 마찬가지로, MJPEG 비디오 데이터의 프레임마다 선두 어드레스(도 5의 513)와 사이즈(도 5의 514)를 기초로, 도 5의 500으로 나타낸 인덱스 정보를 메모리(209)에 작성한다.
이 인덱스 정보의 작성시, 도 5의 500으로 나타낸 바와 같이, 비디오 데이터와 음성 데이터의 동기위치 관계를 알도록 한다. 본 실시예에서는, 비디오 데이터와 오디오 데이터를 동일한 단일 프레임 간격으로 구획하기 위해서, 비디오 데이터(503, 504, 505, 506)와 오디오 데이터(507, 508, 509, 510)로 각각 나타낸 바와 같이, 일괄적으로 배치되는 서로에 대해 동기화된 비디오 및 오디오 데이터의 항목들에 의해 인덱스 데이터를 작성한다.
다음에, 도 4의 단계 S22에서, 스트리밍의 재생 개시시, 퍼스널 컴퓨터(100)가 디지털 비디오 카메라(102)에 대하여 세트 인터페이스 커맨드를 발행 후, 단계 S23에서, IN 토큰을 발행하여, MJPEG/PCM 데이터의 전송시작을 요구한다.
이에 따라, 디지털 비디오 카메라(102)의 CPU(208)는, USB 콘트롤러(212)로부터 IN 토큰을 수리하면, 인덱스 정보(500)로부터, 동기화된 비디오 데이터 및 오디오 데이터를 추출한다. 단계 S24에서, 단계 S18에서 시작한 비디오 클래스 인터페이스를 관리하는 처리가, 협상시에 동의된 사이즈의 비디오 데이터에 근거하여 그 데이터를 전송한다. 다음에, 단계 S25로 진행되어, 단계 S19에서 시작한, 오디오 클래스 인터페이스를 관리하는 처리가, 협상시에 동의한 사이즈의 음성 데이터에 근거하여 그 데이터를 전송한다.
본 실시예에서는, 비디오 데이터 및 오디오 데이터는 아이소크로너스 전송 을 이용하여 전송한다. 이 전송제어는 "Universal Serial Bus Specification 2.0"에 규정되어 있으므로 여기서는 생략한다.
이러한 처리를 반복함으로써, 비디오 클래스 인터페이스 및 오디오 클래스 인터페이스에 의해, 풀-스피드 모드에서의 MJPEG 데이터 및 PCM 데이터의 스트리밍을 실현한다.
다음에, 카드 액세스에 대하여 설명한다.
퍼스널 컴퓨터(100)는, 이 디지털 비디오 카메라(102)에 장착된 기억매체(211)의 FAT 정보를 취득한다. 이 FAT 정보를 취득할 때, 퍼스널 컴퓨터(100)는, 그 취득한 FAT정보를 기초로, 디지털 비디오 카메라(102)에 대하여 기억매체(211)의 섹터 단위로 화상을 판독/기록 동작을 요구한다. CPU(208)는, USB 콘트롤러(212)를 제어해서 퍼스널 컴퓨터(100)로부터의 요구를 받으면, 메모리(209)에서의 요구를 신장하여, 그 요구의 특징을 판단한다. 그 요구 특징이 디지털 비디오 카메라(102)로부터 퍼스널 컴퓨터(100)로의 전송요구인 경우, CPU(208)는 기억매체 인터페이스(210)를 제어하여, 그 요구의 섹터 내용을 메모리(209)에 신장한다. 이렇게 해서 섹터 내용이 메모리(209)에서 신장되고 IN 토큰이 수리되면, CPU(208)는, 협상시에 동의한 스토리지 클래스 인터페이스의 패킷 사이즈에 따라, 메모리(209)의 섹터 내용을 USB 콘트롤러(212)에 전달하고, USB 콘트롤러(212)를 제어해서 케이블(101)에 전송패킷을 송출한다(단계 S27). 이것을 순차적으로 반복함으로써, 퍼스널 컴퓨터(100)는 기억매체(211)로부터 파일 등을 취득할 수 있다.
또한, 이 제1 실시예에서는, 스트림 재생기능 및 카드 액세스 기능을, 접속모드에 따라 선택하는 방식을 나타냈다. 그러나, 이러한 방식을 변경하는 기능이 스트림 재생 및 카드 액세스 기능에 한정한 것은 아니다.
또한, 스트림 재생기능에 사용하는 비디오 클래스 인터페이스에 사용한 포맷을 MJPEG 및 DV, 오디오 클래스 인터페이스에 사용한 포맷을 PCM, 카드 액세스에 사용한 클래스를 PTP 클래스 인터페이스 및 대기억 클래스 인터페이스라고 한다. 그러나, 본 발명은 이것에 한정되는 것은 아니다.
또한, 스트림 전송용의 데이터의 입력은 CCD 및 마이크로폰에 한정한 것은 아니다.
[제2 실시예]
상기한 제1 실시예에서는, 접속모드에 따라 클래스의 변경이나, 전송 데이터의 포맷을 변경하도록 설명하였다. 이 제2 실시예에서는, 클래스 및 전송된 데이터 포맷을 변경하지 않고, 전송된 화상의 사이즈 및 프레임 레이트를 변경하는 경우를 설명한다. 이 제2 실시예에서의 하드웨어 구성은, 전술한 제1 실시예와 같고, 호스트와 디바이스간의 접속은 도 1과 유사하고, 카메라의 구성은 도 2에 도시된 것과 같고, MJPEG 데이터 및 PCM 데이터의 관리는 도 5에 나타낸 것과 같다.
도 6은, 이 제2 실시예에 따른 디지털 비디오 카메라(102)의 실장 클래스 및 엔드 포인트 구성을 나타낸 도면이다:
A. 하이-스피드 모드인 경우:
·비디오 클래스 인터페이스(Video)
(스트림 : MJPEG 포맷/콘트롤)
·오디오 클래스 인터페이스(Audio)
(스트림 : PCM 포맷/콘트롤)
·대기억 클래스 인터페이스(Mass Storage)
B. 풀-스피드 모드인 경우:
·비디오 클래스 인터페이스
(스트림 : MJPEG 포맷/콘트롤)
·오디오 클래스 인터페이스(스트림 : PCM 포맷/콘트롤)
·대기억 클래스 인터페이스를 포함하고 있다.
각 접속모드에서의 MJPEG 화상 데이터의 프레임 레이트 및 사이즈와, PCM 음성의 샘플링은 도 7에 나타낸 것과 같다.
도 7에서 하이-스피드 모드인 경우, MJPEG의 크기 및 프레임 레이트는 각각 VGA이고 30프레임/초이고, PCM은 32KHz로 16비트의 샘플링이다. 풀-스피드 모드인 경우, MJPEG의 크기 및 프레임 레이트는 QVGA이고 15프레임/초이고, PCM은 16KHz로 16비트의 샘플링이다.
도 8은, 제2 실시예에 따른 디지털 비디오 카메라(102)에서의 하이-스피드 모드 및 풀-스피드 모드에서의 처리를 설명하는 흐름도이다. 이하, 도 2의 블록도 및 도 8의 흐름도를 참조하여 동작을 설명한다.
먼저, 도 8의 단계 S31에서, USB 케이블(101)이 USB 커넥터(213)에 삽입되면, USB 콘트롤러(212)는, 그 케이블(101)이 삽입된 것을 검지하고, CPU(208)에게 케이블 삽입을 통지한다. CPU(208)는 USB 콘트롤러(212)의 엔드 포인트 0의 동작에 필요한 초기화를 행하고, 그 초기화의 종료 후에 USB 콘트롤러(212)를 제어하여 하이-스피드 모드 접속을 위해 풀업을 행한다.
다음에, 제어는 단계 S32로 진행된다. 여기서, 디지털 비디오 카메라(102)로부터 풀업을 받을 때, 퍼스널 컴퓨터(100)는, 디지털 비디오 카메라(102)와 협상에 들어간다. 이때, 퍼스널 컴퓨터(100)와 카메라(102)의 접속경로(101) 전체가 하이-스피드 모드를 지원하면, 접속은 하이-스피드 모드에서 행해지고, 그렇지 않으면 풀-스피드 모드에서 행해진다.
다음에, 단계 S33으로 진행되어, 접속모드를 검지한 USB 콘트롤러(212)는, CPU(208)에 접속모드를 통지한다. 이 통지를 받은 CPU(208)는 도 8의 단계 S34 혹은 단계 S47에서 USB 콘트롤러(212)의 엔드 포인트 1∼6에 대하여, 도 6에 나타낸 형태로 초기화를 행한다.
다음에, 단계 S35 또는 S48에서, CPU(208)는 도 6에 나타낸 접속모드에 맞춘 디스크립터 정보를 (도시하지 않은) 메모리 상에서 작성하고, 퍼스널 컴퓨터(100)와의 협상시의 표준요구에 따라 전송한다. 그리고, 단계 S36, S49에서, 소정의 협상을 종료하고, 단계 S37 및 S50에서의 스트리밍에 필요한 비디오 클래스 인터페이스와, 단계 S38 및 S51에서의 오디오 클래스 인터페이스와, 단계 S39 및 S52에서의 카드 액세스에 필요한 대기억 클래스 인터페이스에 관한 처리를 기동한다.
이들 각 접속모드에서의, 비디오 및 오디오 데이터의 포맷은 도 7에 나타낸 대로이다. 본 실시예의 협상에서의 디스크립터는,
·"Universal Serial Bus Specification 2.00"
·"Universal Serial Bus Device Class Definition for Video Devices"
·"Universal Serial Bus Device Class Definition for Video Devices : Motion-JPEG Payload"
·"Universal Serial Bus Device Class Definition for Audio Devices"
·"Universal Serial Bus Mass Storage Class Specification Overview"의 사양서에 규정되어 있으므로 여기서는 생략한다.
"Type I Format descriptor"에서의 "bBitResolution" 및 "bSamFreq"의 설정값과, "Video Frame Descriptor "에서의 "wWidth", "WHighth" 및 "bFrameIntervalType"의 설정값이 도 7에 나타낸 내용과 일치하도록 구성한다.
단계 S40 및 S53에서는, 렌즈(200)에 의해 얻어진 피사체상은 촬영센서(201)에 의해 광전변화되고, 그 결과의 전기신호는 카메라 신호처리기(202)에 입력된다. 카메라 신호처리기(202)는 광전변환된 전기신호를 표준 화상신호로 변환해서 메모리(209)에 일시적으로 그 화상을 저장한다. 화상압축부(MJPEG)(203)는, 이렇게 해서 메모리(209)에 일시적으로 저장된 표준화상 데이터를 MJPEG용으로 화상압축부호화 처리를 행하고, 메모리(209)의 표준화상 데이터와는 다른 영역에 일시적으로 그 압축결과를 저장한다. 이때, 단계 S40의 하이-스피드 모드에서, 압축처리 및 저장을 행하는 화상은, 도 6에 나타낸 것처럼, VGA 사이즈의 초당 30프레임이다. 한편, 풀-스피드 모드인 경우에는, 단계 S53에서, QVGA사이즈의 초당 15프레임이다.
다음에, 단계 S41 및 S54에서, 마이크로폰(206)으로부터 얻어진 음성신호는, 음성신호 처리기(207)에 의해 표준 음성신호로 변환되어, 메모리(209)의 비디오 데이터와는 다른 영역에 일시적으로 저장된다. 음성압축부(PCM)(204)는, 상기 메모리(209)에 일시적으로 저장된 표준음성신호를 PCM용으로 음성압축 부호화 처리를 행해서 메모리(209)의 비디오 데이터 영역 및 표준음성 데이터와는 다른 영역에 일시적으로 저장한다. 이때, 단계 S41에서, 하이-스피드 모드에서 음성압축 및 저장을 행하는 데이터는 32비트 샘플링이다. 풀-스피드 모드인 단계 S54에서는, 데이터는 16비트 샘플링이다.
이하, 단계 S42∼S46 및 단계 S55∼S59에서 나타낸 처리를, 전술한 제1 실시예에서의 단계 S23∼S27의 처리와 동일한 수법으로 각각 행함으로써, 비디오 클래스 인터페이스 및 오디오 클래스 인터페이스에 의해 접속모드에 맞춘 사이즈 및 레이트의 비디오 데이터와, 샘플링 주파수의 음성 데이터를 송출할 수 있다.
[제3 실시예]
전술한 제1 실시예 및 제2 실시예에서는, 스트리밍 및 파일 액세스에 대하여 접속모드에 대응한 예를 설명하였다. 이 제3 실시예에서는, 2종류 이상의 데이터전송을 행하는 클래스 중에서, 적어도 한쪽의 데이터전송에 관한 처리를 접속모드에 따라 전환하는 경우에 관해 설명한다. 구체적으로는, 비디오 클래스 인터페이스에서의 정지 화상(USB 비디오 클래스 인터페이스 용어 : 리모트 캡처에서의 정지 화상을 말함)을 예로서 설명한다.
비디오 클래스 인터페이스는, 호스트(100)로부터의 캡처 코맨드에 의해 캡처한 정지 화상(still picture) 데이터의 전송이, 스트림용 데이터를 전송하는 비디오 스트림(동화상) 데이터의 2종류의 전송을 포함한다.
이 제3 실시예에서는, 하이-스피드 모드일 때는, 도 9b에 나타낸 방법(Method)2를, 풀-스피드 모드일 때는 도 9a에 나타낸 방법1을 사용한다.
이들 방법1 및 방법2는, 동일한 엔드 포인트(도 5의 엔드 포인트 5)에서 정지 화상과 비디오 스트림의 양쪽을 전송한다. 그러나, 도 9a의 방법1에서는, 정지 화상과 비디오 스트림의 화상 사이즈가 동일하다. 한편, 도 9b의 방법2에서는, 정지 화상 및 비디오 스트림의 화상 사이즈가 다르게 되어 있다. 또한, 상기의 상세 내용에 대해서는, "Universal Serial Bus Device Class Definition for Video Devices"에 기재되어 있으므로, 여기서는 그 설명을 생략한다.
이 제3 실시예의 하드웨어 구현은, 전술한 제1 실시예와 동일하고, 호스트(100)와 디바이스(102) 사이의 접속에 대해서는 전술한 도 1과, 그 카메라의 구성에 대해서는 전술한 도 2와, 그리고 MJPEG 데이터 및 PCM 데이터의 관리는 도 5에 나타낸 것과 동일하다.
도 10은, 제3 실시예에서의 디지털 비디오 카메라(102)의 실장 클래스 및 엔드 포인트의 구성을 설명하는 도면이다.
A. 하이-스피드 모드인 경우:
·비디오 클래스 인터페이스(Video)
(스트림 : MJPEG 포맷/콘트롤)
·오디오 클래스 인터페이스(Video)
(스트림:PCM 포맷/콘트롤)
·대기억 클래스 인터페이스(Mass Storage)
B. 풀-스피드 모드인 경우:
·비디오 클래스 인터페이스(Video)
(스트림 : MJPEG 포맷/콘트롤)
·오디오 클래스 인터페이스(Video)
(스트림 : PCM 포맷/콘트롤)
·대기억 클래스 인터페이스이다.
스트리밍인 경우, 전술한 제2 실시예와 마찬가지로, 디지털 비디오 카메라(102)는 퍼스널 컴퓨터(100)에 대하여 CCD 및 마이크로폰으로부터의 입력화상 및 신호를, MJPEG 및 PCM 포맷으로 변환해서 전송한다. 이 상세한 것은 제2 실시예와 동일하기 때문에, 여기서는 다시 그 설명을 하지 않는다.
퍼스널 컴퓨터(100)가 정지화상 캡처의 요구가 발생하는 경우, 디지털 비디오 카메라(102)는 정지 화상의 전송요구를 행한다.
도 11은, 제3 실시예에 따른 디지털 비디오 카메라(102)에서의 정지 화상의 전송처리를 설명하는 흐름도이다.
하이-스피드 모드인 경우, 단계 S66에서, 퍼스널 컴퓨터(100)로부터는 정지 화상의 전송요구와 동시에, 그 전송 레이트를 변경하는 세트 인터페이스가 발행되고, 디지털 비디오 카메라(102)에 대한 교체(Alternate) 설정(대역변경이라 하는 USB 용어)을 행한다. 다음에, 단계 S67로 진행되고, CPU(208)는 USB 콘트롤러(212)로부터 데이터의 판독을 행한다. 퍼스널 컴퓨터(100)로부터 정지 화상의 전송요구를 받으면, CPU(208)는 카메라 신호처리기(202) 및 화상압축부(203)에 대하여, 상기 취득한 화상 사이즈를 정지 화상에 맞춘 것으로 변경한다. 또한, CPU(208)는 USB 코어에 대하여 엔드 포인트(5)의 사이즈를 상기 대체 설정에 맞춘 사이즈로 변경한다. 이렇게 해서 메모리(209)에 정지 화상 데이터가 작성되면, 단계 S68 및 S69로 진행되고, CPU(208)는 USB 콘트롤러(212)에 대하여 메모리(209)의, JPEG 부호화된 정지 화상 데이터의 전송을 행한다. 이것을 반복함으로써, 정지 화상 데이터를 퍼스널 컴퓨터(100)에 전송한다. 그리고 단계 S70에서, 퍼스널 컴퓨터(100)는, 정지 화상 데이터의 수신을 종료하면, 스트리밍을 재개하기 위해, 디지털 비디오 카메라(102)에 비디오 스트림의 재개를 요구하기 위해서 세트 인터페이스를 송신해 대체 설정을 행한다. 이렇게 해서 대체 설정 처리가 완료하면, 다시 비디오 스트림이 전송되고, 스트리밍이 재개된다.
한편, 단계 S63에서, 풀-스피드 모드라고 판정되면, 단계 S71로 진행된다. D여기서, 퍼스널 컴퓨터(100)로부터 정지 화상 전송요구가 하이-스피드 모드일 때와 동일하게 발행된다. 그러나, 정지 화상의 화상 사이즈 및 비디오 스트림 데이터의 화상 사이즈가 동일하기 때문에, 단계 S74에서, 비디오 스트림 전송하고 있는 데이터를 그대로 정지 화상으로서 송신한다. 그리고 단계 S75에서 송신이 종료하면, 그대로 스트리밍이 복귀된다.
이상에서 설명한 바와 같이 제3 실시예에 의하면, 하이-스피드 모드에서의 접속 환경을 갖는 사용자에 대하여, 풀-스피드 모드의 대역에서는 전송할 수 없는, 보다 대규모 데이터의 전송을 행할 수 있다. 이에 따라, 비디오 클래스 인터페이스에서, 보다 해상도 및 고화질의 데이터 포맷 및 화상 사이즈로, 프레임 레이트가 큰 화상 데이터를 전송할 수 있다.
또한, 풀-스피드 모드에서의 접속환경만 갖는 사용자가 컨피규레이션의 전환을 행하고, 대역이 허용하는 범위 내에서 동종의 서비스를 제공할 수 있다.
[다른 실시예]
본 발명의 목적은, 전술한 바와 같이, 상기 실시예들의 기능을 행하는 소프트웨어의 프로그램 코드를 저장한 기억매체를 시스템 혹은 장치에 제공하고, 그 시스템 혹은 장치의 컴퓨터(예를 들면, CPU 또는 MPU)가 기억매체에 저장된 프로그램 코드를 판독해 실행함으로써도 달성된다. 이 경우, 기억매체로부터 판독된 프로그램 코드 자체가 전술한 실시예의 신규 기능을 실현하게 되고, 그 프로그램 코드를 기억한 기억매체는 본 발명을 구성하게 된다. 이러한 프로그램 코드를 공급하기 위해 사용된 기억매체의 예로는, 플로피디스크, 하드디스크, 광디스크, 광자기디스크, CD-ROM, CD-R, 자기테이프, 비휘발성 메모리 카드 또는 ROM 등이 있다.
또한, 컴퓨터가 판독한 프로그램 코드를 실행함으로써, 전술한 실시예의 기능이 실현될뿐만 아니라, 본 발명은, 그 프로그램 코드의 지시에 따라, 컴퓨터 상에서 가동하고 있는 운영체제 등이 실제의 처리의 일부 또는 전부를 행하고, 그 처리에 의해 전술한 실시예의 기능이 실현되는 경우도 포함한다.
또한, 본 발명은, 기억매체로부터 판독된 프로그램 코드가, 컴퓨터에 삽입된 기능확장보드나 컴퓨터에 접속된 기능확장유니트에 구비된 메모리에 기록된 후, 그 프로그램 코드의 지시에 따라, 그 기능확장보드나 기능확장유니트에 구비된 CPU 등이 실제의 처리의 일부 또는 전부를 행하고, 그 처리에 의해 전술한 실시예의 기능이 실현되는 경우도 포함한다.
이상 설명한 바와 같이 제1 실시예에 의하면, 하이-스피드 접속에서 사용자는, 하이-스피드 모드의 대역을 이용할 수 있고, 풀-스피드 모드에서 송신불가능한 화상 사이즈로, 프레임 레이트 및 화질의 DV 포맷에 의거한 스트리밍을 행할 수 있다.
또한, 카드 액세스에서도, 대기억 클래스 인터페이스보다 화상의 취급에 편리한 정지 화상 클래스 인터페이스를 통해, 보다 이상적인 방식으로 파일 액세스가 가능해진다.
한편, 풀-스피드 모드 접속에서도, 사용자는, MJPEG 및 PCM 데이터의 전송에 의해, 하이-스피드 모드에 비해 화상 사이즈, 프레임 레이트, 및 화질이 뒤떨어지지만, 동종의 스트리밍을 행할 수 있다.
또한, 카드 액세스에서도, 정지 화상 클래스 인터페이스보다 화상의 취급의 편리성은 뒤떨어지지만, 대기억 클래스 인터페이스를 통해 동종의 파일 액세스가 가능해진다.
또한, 제2 실시예에 의하면, 동일한 포맷을 사용한 스트리밍 전송이어도, 각각의 접속모드의 대역 및 장치의 한계까지, 화상 사이즈, 프레임 레이트 및 화질로 스트리밍을 행하는 것이 가능해진다. 이에 따라, 하이-스피드 모드에서의 접속 환경을 갖는 사용자는, 그 대역을 이용하는 것을 더 이상적으로 스트리밍을 행할 수 있고, 풀-스피드 모드 접속 환경을 갖는 사용자는, 그 대역범위에서 동종의 서비스를 제공하는 것이 가능해진다.
또한, 제3 실시예에 의하면, 비디오 클래스 인터페이스의 일 기능인 스트리밍용 전송을, 하이-스피드 모드와 풀-스피드 모드에서 동일하게 한다. 이것을 유지하면서, 또 비디오 클래스 인터페이스의 또 하나의 기능인 정지 화상에 관해서만, 하이-스피드 모드에서는 대역을 이용하는 고화질에서 사이즈가 큰 정지화상을 전송하고, 풀-스피드 모드에서는 스트리밍용 전송과 동일레벨의 대역에서 정지화상을 전송한다. 그에 따라, 전송된 데이터 사이즈나 화질은 뒤떨어지지만, 하이-스피드모드와 동종의 정지 화상을 얻는 것이 가능해진다.
한편, 본 발명의 실시예는 독립적으로 설명했지만, 본 발명은 이들 실시예를 독립적으로 혹은 적절히 조합해서 실행되어도 된다.
또한, 본 실시예에서는, 디지털 비디오 카메라를 예로 들어 설명한 본 발명은 이것에 한정되는 것은 아니며, USB에 의해 접속가능한 컴퓨터 기기이면 된다.
본 발명의 아주 다양하고 명백하며 널리 서로 다른 실시예들을 본 발명의 사상 및 범위로부터 벗어나지 않고 할 수 있으므로, 본 발명은 첨부된 청구범위에 기재된 것 이외에 본 발명의 특정 실시예들에 한정되지 않는다는 것을 알 수 있을 것이다.
본 발명에 의하면, USB2.0 또는 이것에 유사한 규격에 준거한 통신 인터페이스의 전송 레이트에 적합한 서비스를 제공할 수 있다.
도 1은 본 발명의 제1∼제3 실시예에 따른 디지털 비디오 카메라와 퍼스널 컴퓨터를 접속한 개념도,
도 2는 제1 실시예에 따른 디지털 비디오 카메라의 구성을 나타낸 블록도,
도 3은 제1 실시예에 따른 디지털 비디오 카메라의 실장 클래스, 서브클래스, 전송포맷, 및 엔드 포인트를 설명하는 도면,
도 4는 제1 실시예에 따른 디지털 비디오 카메라에서의 스트리밍 및 카드 액세스에 관한 동작을 설명하는 흐름도,
도 5는 제1 실시예에서의 MJPEG/PCM 관리방법을 설명하는데 유용한 도면,
도 6은 제2 실시예에 따른 디지털 비디오 카메라의 실장 클래스, 서브클래스, 전송포맷 및 엔드 포인트를 설명하는 도면,
도 7은 제2 실시예에서의 MJPEG/PCM의 상태를 설명하는데 유용한 도면,
도 8은 제2 및 제3 실시예에 따른 디지털 비디오 카메라에서의 스트리밍 및 카드 액세스에 관한 동작을 설명하는 흐름도,
도 9는 제3 실시예에 따른 정지 화상 및 비디오 스트림의 전송을 설명하는데 유용한 도면,
도 10은 제3 실시예에 따른 디지털 비디오 카메라의 실장 클래스, 서브클래스, 전송포맷 및 엔드 포인트를 설명하는 도면,
도 11은 제3 실시예에 따른 디지털 비디오 카메라에서의 정지 화상의 전송처리를 설명하는 흐름도이다.
*도면의 주요 부분에 대한 부호의 설명*
201 : CCD 202 : 카메라 신호처리기
203 : 화상 압축부 204 : 음성 압축부
205 : 화상/음성 압축부 207 : 음성신호처리기
208 : CPU 209 : 메모리
210 : 기억매체 인터페이스 211 : 기억매체
212 : USB 콘트롤러 213 : USB 커넥터

Claims (20)

  1. USB를 경유하여 외부기기에 및 그 외부기기로부터 데이터의 송수신이 가능하고,
    제1 전송 레이트에 의한 데이터전송을 행하는 제1 접속모드 및, 상기 제1 전송 레이트보다 저속의 데이터전송을 행하는 제2 접속모드에 의한 데이터전송이 가능한 USB 콘트롤러와,
    USB 케이블의 접속시에, 상기 제1 접속모드인지 또는 상기 제2 접속모드인지를 취득하는 접속모드 취득수단과,
    상기 접속모드 취득수단에 의해 취득된 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하고, 그 선택한 제1 또는 제2 컨피규레이션에 근거하여 상기 USB 콘트롤러를 제어하여, 데이터 전송처리를 실행하는 제어수단을 구비하고,
    상기 제1 컨피규레이션은, 상기 제1 접속모드용의 적어도 하나의 인터페이스를 포함하고, 상기 제2 컨피규레이션은, 상기 제2 접속모드용의 적어도 하나의 인터페이스를 구비한 것을 특징으로 하는 전자기기.
  2. 제 1 항에 있어서,
    상기 제어수단은, 상기 접속모드 취득수단에 의해 취득된 접속모드에 따라 상기 USB 콘트롤러의 엔드 포인트 구성을 변경하는 것을 특징으로 하는 전자기기.
  3. 제 1 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션과의 사이에, 실장된 인터페이스의 개수 및 클래스가 서로 다른 것을 특징으로 하는 전자기기.
  4. 제 3 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션과의 사이에 적어도 하나는 동일 클래스이고, 상기 동일 클래스 내의 서브클래스, 프로토콜 및 전송 데이터 포맷 중 적어도 하나가 다른 것을 특징으로 하는 전자기기.
  5. 제 4 항에 있어서,
    상기 동일 클래스의 인터페이스는 아이소크로너스 전송을 위해 적어도 한 개를 포함하는 것을 특징으로 하는 전자기기.
  6. 제 5 항에 있어서,
    상기 동일 클래스는 비디오 클래스 인터페이스인 것을 특징으로 하는 전자기기.
  7. 제 6 항에 있어서,
    상기 제1 접속모드일 때의 전송 데이터 포맷은, 상기 제2 접속모드일 때의 전송 데이터 포맷보다도 레이트가 높은 포맷인 것을 특징으로 하는 전자기기.
  8. 제 6 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션 사이에는, 전송화상의 프레임 레이트 및 화상 사이즈 중 적어도 어느 하나가 다른 것을 특징으로 하는 전자기기.
  9. 제 3 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션의 상기 실장된 인터페이스 중에서, 적어도 하나는 데이터를 전송하는 동일 클래스이고, 상기 동일 클래스는 2종류의 데이터를 전송하는 기능을 갖고, 상기 2종류의 데이터 중 적어도 한 종류의 데이터 전송에 관한 처리를 상기 접속모드에 따라 변경하는 것을 특징으로 하는 전자기기.
  10. 제 9 항에 있어서,
    상기 데이터전송에 관한 처리는, 비디오 클래스 인터페이스에서의 정지 화상의 데이터전송인 것을 특징으로 하는 전자기기.
  11. USB를 경유하여 외부기기에 및 그 외부기기로부터 데이터의 송수신이 가능한 전자기기에서,
    제1 전송 레이트에 의한 데이터전송을 행하는 제1 접속모드에서 데이터전송을 행하는 제1 데이터 전송단계와,
    상기 제1 전송 레이트보다 저속의 제2 접속모드에서 데이터전송을 행하는 제2 데이터 전송단계와,
    USB 케이블의 접속시에, 상기 제1 접속모드인지 또는 상기 제2 접속모드인지를 취득하는 접속모드 취득단계와,
    상기 접속모드 취득단계에서 취득된 접속모드에 따른 제1 또는 제2 컨피규레이션을 선택하고, 그 선택한 제1 또는 제2 컨피규레이션에 근거하여 상기 USB 콘트롤러를 제어하여, 데이터 전송처리를 실행하는 제어단계를 포함하고,
    상기 제1 컨피규레이션은, 상기 제1 접속모드용의 적어도 하나의 인터페이스를 포함하고, 상기 제2 컨피규레이션은, 상기 제2 접속모드용의 적어도 하나의 인터페이스를 포함하는 것을 특징으로 하는 인터페이스 제어방법.
  12. 제 11 항에 있어서,
    상기 제어단계에서는, 상기 접속모드 취득단계에서 취득된 접속모드에 따라 USB 콘트롤러의 엔드 포인트 구성을 변경하는 것을 특징으로 하는 인터페이스 제어방법.
  13. 제 11 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션과의 사이에, 상기 실장된 인터페이스의 개수와 클래스가 서로 다른 것을 특징으로 하는 인터페이스 제어방법.
  14. 제 13 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션과의 사이에 적어도 하나는 동일 클래스이고, 상기 동일 클래스 내의 서브클래스, 프로토콜, 전송 데이터 포맷 중 적어도 하나가 다른 것을 특징으로 하는 인터페이스 제어방법.
  15. 제 14 항에 있어서,
    상기 동일 클래스의 인터페이스는 아이소크로너스 전송을 위해 적어도 한 개를 포함하는 것을 특징으로 하는 인터페이스 제어방법.
  16. 제 15 항에 있어서,
    상기 동일 클래스는 비디오 클래스 인터페이스인 것을 특징으로 하는 인터페이스 제어방법.
  17. 제 16 항에 있어서,
    상기 제1 접속모드일 때의 전송 데이터 포맷은, 상기 제2 접속모드일 때의 전송 데이터 포맷보다도 레이트가 높은 포맷인 것을 특징으로 하는 인터페이스 제어방법.
  18. 제 16 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션 사이에는, 전송화상의 프레임 레이트 및 화상 사이즈 중 적어도 어느 하나가 다른 것을 특징으로 하는 인터페이스 제어방법.
  19. 제 13 항에 있어서,
    상기 제1 컨피규레이션과 상기 제2 컨피규레이션의 상기 실장된 인터페이스 중에서, 적어도 하나는 데이터를 전송하는 동일 클래스이고, 상기 동일 클래스는 2종류의 데이터를 전송하는 기능을 구비하고, 상기 2종류의 데이터 중 적어도 한 종류의 데이터전송에 관한 처리를 상기 접속모드에 따라 변경하는 것을 특징으로 하는 인터페이스 제어방법.
  20. 제 19 항에 있어서,
    상기 데이터전송에 관한 처리는, 비디오 클래스 인터페이스에서의 정지 화상의 데이터전송인 것을 특징으로 하는 인터페이스 제어방법.
KR1020040067900A 2003-08-27 2004-08-27 전자기기 및 그 인터페이스 제어방법 KR100769611B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003303543A JP2005071273A (ja) 2003-08-27 2003-08-27 電子機器及びそのインターフェース制御方法
JPJP-P-2003-00303543 2003-08-27

Publications (2)

Publication Number Publication Date
KR20050021901A true KR20050021901A (ko) 2005-03-07
KR100769611B1 KR100769611B1 (ko) 2007-10-23

Family

ID=34101209

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040067900A KR100769611B1 (ko) 2003-08-27 2004-08-27 전자기기 및 그 인터페이스 제어방법

Country Status (5)

Country Link
US (1) US20050149640A1 (ko)
EP (1) EP1510928A3 (ko)
JP (1) JP2005071273A (ko)
KR (1) KR100769611B1 (ko)
CN (2) CN100390770C (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4750379B2 (ja) * 2004-05-31 2011-08-17 キヤノン株式会社 電子機器
US7685333B2 (en) * 2005-03-22 2010-03-23 Sigmatel, Inc Method and system for communicating with memory devices utilizing selected timing parameters from a timing table
CN1878055B (zh) * 2005-06-07 2010-11-03 北京握奇数据系统有限公司 一种分离式大数据量加/解密设备及实现方法
US7631199B2 (en) * 2005-06-30 2009-12-08 Intel Corporation Various methods and apparatuses for power states in a controller
US8102425B2 (en) * 2006-08-23 2012-01-24 Nikon Corporation Electronic camera and image transfer method adopted in electronic camera
US7849334B2 (en) * 2006-09-29 2010-12-07 Intel Coporation Transitioning a computing platform to a low power system state
JP5177476B2 (ja) * 2007-03-29 2013-04-03 京セラ株式会社 無線通信端末、無線通信システム及び無線通信プログラム
JP5100182B2 (ja) * 2007-03-30 2012-12-19 キヤノン株式会社 データ転送装置及びデータ受信装置並びにデータ転送システム
TWI403975B (zh) * 2008-11-26 2013-08-01 Alpha Imaging Technology Corp 具有即時編碼轉換功能的儲存裝置及資料轉換與儲存方法
US7996586B2 (en) * 2009-07-24 2011-08-09 Via Technologies, Inc. USB port for employing a plurality of selectable data transmission priority rules
CN102117251A (zh) * 2009-12-31 2011-07-06 比亚迪股份有限公司 一种选择usb设备应用模式的方法及usb设备
JP5773595B2 (ja) * 2010-08-19 2015-09-02 キヤノン株式会社 ジョブ処理デバイス、その制御方法、及びコンピュータプログラム
JP5700514B2 (ja) 2010-10-27 2015-04-15 アルパイン株式会社 通信速度制御装置および通信速度制御方法
JP5822567B2 (ja) 2011-07-06 2015-11-24 ルネサスエレクトロニクス株式会社 コントローラ及び転送スピード制御方法
TWI486786B (zh) * 2012-10-05 2015-06-01 Faraday Tech Corp 隨著使用情境進行資料傳輸動態調整之方法與裝置及計算機程式產品
US20230239429A1 (en) * 2022-01-25 2023-07-27 Mediatek Inc. Communication system and method

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1150766C (zh) * 1995-10-06 2004-05-19 松下电器产业株式会社 利用转换图象压缩格式处理压缩视频数据的系统、装置和方法
US5974486A (en) * 1997-08-12 1999-10-26 Atmel Corporation Universal serial bus device controller comprising a FIFO associated with a plurality of endpoints and a memory for storing an identifier of a current endpoint
US6151069A (en) * 1997-11-03 2000-11-21 Intel Corporation Dual mode digital camera for video and still operation
TW455805B (en) * 1998-02-26 2001-09-21 Winbond Electronics Corp Converter allowing data communications equipment to transmit data to data terminal equipment through universal serial bus and the control method thereof
JP3711432B2 (ja) * 1998-04-15 2005-11-02 セイコーエプソン株式会社 周辺処理装置およびその制御方法
US6731650B1 (en) * 1998-04-27 2004-05-04 Canon Kabushiki Kaisha Data transfer apparatus and its control method
US6359951B1 (en) * 1998-06-03 2002-03-19 Intel Corporation Method and apparatus for high speed signaling
US6108028A (en) * 1998-11-02 2000-08-22 Intel Corporation Method of activating and deactivating a screen saver in a video conferencing system
US6801576B1 (en) * 1999-08-06 2004-10-05 Loudeye Corp. System for accessing, distributing and maintaining video content over public and private internet protocol networks
ES2283345T3 (es) * 1999-12-24 2007-11-01 Koninklijke Philips Electronics N.V. Emulacion de una desconexion de un dispositivo.
US6542946B1 (en) * 2000-01-28 2003-04-01 Compaq Information Technologies Group, L.P. Dual mode differential transceiver for a universal serial bus
JP3603732B2 (ja) * 2000-03-16 2004-12-22 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP3415567B2 (ja) * 2000-06-21 2003-06-09 エヌイーシーマイクロシステム株式会社 Usb転送制御方法およびusbコントローラ
JP2002077182A (ja) * 2000-08-29 2002-03-15 Sony Corp ネットワークエラー表示装置およびエラー検出表示方法
JP4124990B2 (ja) * 2000-11-07 2008-07-23 キヤノン株式会社 撮像装置及び撮像装置の制御方法
JP2002223213A (ja) * 2001-01-26 2002-08-09 Matsushita Electric Ind Co Ltd データ転送方法、記憶装置、その制御方法、及びデータ転送制御装置
US7656426B2 (en) * 2001-04-06 2010-02-02 Sony Corporation Digital camera and data transfer method from a record medium
JP2002318778A (ja) 2001-04-20 2002-10-31 Ricoh Co Ltd データ通信システムとその通信方法
US6775733B2 (en) * 2001-06-04 2004-08-10 Winbond Electronics Corp. Interface for USB host controller and root hub
US7043587B2 (en) * 2001-09-20 2006-05-09 Lenovo (Singapore) Pte. Ltd. System and method for connecting a universal serial bus device to a host computer system
US6573846B1 (en) * 2001-12-31 2003-06-03 Apple Computer, Inc. Method and apparatus for variable length decoding and encoding of video streams
US7272740B2 (en) * 2002-01-04 2007-09-18 Agere Systems Inc. Performance indication system for use with a universal serial bus signal and a method of operation thereof
CN1180354C (zh) * 2002-01-28 2004-12-15 威盛电子股份有限公司 可自动切换路径的usb控制电路
US7545434B2 (en) * 2002-02-04 2009-06-09 Hewlett-Packard Development Company, L.P. Video camera with variable image capture rate and related methodology
KR20030072980A (ko) * 2002-03-07 2003-09-19 기가시스네트(주) USB Host/Client 동작 모드 검출 및 모드 변경 실행방법과 이를 이용한 장치.
KR100919978B1 (ko) * 2002-09-26 2009-10-05 삼성디지털이미징 주식회사 통신 상태를 디스플레이하는 디지털 카메라 및 그 제어 방법
US6842058B2 (en) * 2002-11-12 2005-01-11 Lsi Logic Corporation Method and apparatus for slew control of an output signal
KR100920664B1 (ko) * 2002-11-19 2009-10-09 엘지전자 주식회사 개인용 정보 단말기에서의 시스템 구동장치 및 방법
JP4750379B2 (ja) * 2004-05-31 2011-08-17 キヤノン株式会社 電子機器

Also Published As

Publication number Publication date
JP2005071273A (ja) 2005-03-17
US20050149640A1 (en) 2005-07-07
CN1591383A (zh) 2005-03-09
CN100390770C (zh) 2008-05-28
CN101174254A (zh) 2008-05-07
EP1510928A2 (en) 2005-03-02
CN101174254B (zh) 2012-02-15
KR100769611B1 (ko) 2007-10-23
EP1510928A3 (en) 2005-04-13

Similar Documents

Publication Publication Date Title
KR100769611B1 (ko) 전자기기 및 그 인터페이스 제어방법
JP3542653B2 (ja) 電子スチルカメラにおける画像データ伝送システム
JP2000358033A (ja) データ通信システム及びデータ通信方法
US7676612B2 (en) Video camera device and control method thereof
US7616839B2 (en) Image data transfer system, method of generating image data file, and computer program
US7711877B2 (en) Image sensing device
JPH10285240A (ja) データ通信装置及び方法、データ通信システム及び記憶媒体
JP2000092086A (ja) 通信装置、通信情報記録方法、応答情報再生/通信情報記録方法及び記憶媒体
JP3774540B2 (ja) データ転送方法及び画像処理システムと装置
JP4217727B2 (ja) ディジタル機器及びその制御方法
JP3814428B2 (ja) 端末装置のカメラ制御方法
JPH10229538A (ja) データ通信システム、プリントシステム及びデータ通信装置
JP3862349B2 (ja) 情報処理システム、画像処理システムおよびそれらの方法、並びに、情報処理装置およびコンピュータ可読メモリ
JP3544538B2 (ja) 記録システム、映像撮影装置および映像記録方法
JP3890124B2 (ja) データ通信システム、データ通信方法、データ通信ノードおよび記録媒体
JP2004088480A (ja) 撮像装置及びそのデータ伝送制御方法
JP3110602B2 (ja) 画像処理システムおよび伝送方法
JP2006050653A (ja) データ通信装置及び方法、データ通信システム及び記憶媒体
JP2002064511A (ja) データ通信システム、電子機器及びそれらの制御方法
JP4336574B2 (ja) 制御装置及び制御プログラム
JP2007082114A (ja) ランダムアクセス可能な記録媒体を使用したデジタル機器
JP2000138860A (ja) 撮像装置、撮像装置の制御装置及びコンピュータ読み取り可能な記憶媒体
JP2007018628A (ja) 再生装置およびネットワークシステム
JPH11227286A (ja) 印刷システム及び印刷制御方法
JP2006191171A (ja) 制御装置、制御方法及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20120924

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130926

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140924

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150923

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160926

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170925

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 12