KR20010015044A - 외부 기기 제어 장치 및 외부 기기 제어 방법 - Google Patents

외부 기기 제어 장치 및 외부 기기 제어 방법 Download PDF

Info

Publication number
KR20010015044A
KR20010015044A KR1020000033452A KR20000033452A KR20010015044A KR 20010015044 A KR20010015044 A KR 20010015044A KR 1020000033452 A KR1020000033452 A KR 1020000033452A KR 20000033452 A KR20000033452 A KR 20000033452A KR 20010015044 A KR20010015044 A KR 20010015044A
Authority
KR
South Korea
Prior art keywords
data
audio
ieee
bus
control
Prior art date
Application number
KR1020000033452A
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 이데이 노부유끼
Publication of KR20010015044A publication Critical patent/KR20010015044A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/2818Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/002Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B31/00Arrangements for the associated working of recording or reproducing apparatus with related apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2525Magneto-optical [MO] discs
    • G11B2220/2529Mini-discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/65Solid state media wherein solid state memory is used for storing indexing information or metadata
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances

Abstract

본 발명에 의하면, 소정의 통신 포맷을 따르는 데이터 버스를 통해 상호 접속된 하나 이상의 소정의 외부 기기에 대해 소정의 제어 동작을 실행할 수 있는 것으로서, 상기 하나 이상의 소정의 외부 기기를 제어하는 제1 제어 프로그램- 추상화된 엔티티(entity)로서 정의됨-을 유지하기 위한 추상화 제어 프로그램 유지 수단과, 상기 제어 장치에 의해 제어가능한 타겟 외부 기기-상기 데이터 버스상에 존재함-를 검출하기 위한 접속 기기 검출 수단, 및 상기 제1 제어 프로그램을 사용함으로써 상기 접속 기기 검출 수단에 의해 검출된 상기 타겟 외부 기기를 제어하는 제2 제어 프로그램-구체화된 엔티티로 정의됨-을 생성하기 위한 제어 프로그램 구체화 수단을 포함하는 외부 기기 제어 장치가 제공된다.

Description

외부 기기 제어 장치 및 외부 기기 제어 방법{AN EXTERNAL DEVICE CONTROL APPARATUS AND AN EXTERNAL DEVICE CONTROL METHOD}
본 발명은 다양한 기기가 예컨데, IEEE 1394와 같은 소정의 데이터 인터페이스를 통해 상호 접속되는 시스템에서 외부 기기를 제어하기 위한 제어 장치 및 제어 방법에 관한 것이다.
오디오 신호를 디지털적으로 기록하기 위한 자기 광 디스크 또는 자기 테이프를 사용하는 기록/재생 기기는 음악 및 다른 정보를 기록/재생하는데 알려져 있다. 이들 기기 중 하나는 미니 디스크로 불리는 자기 광 디스크에 따르는 미니 디스크 기록/재생 기기이다.
미니 디스크는 사용자가 정보를 기록하는 영역(즉, 데이터 기록 영역) 및 아무 것도 기록되지 않은 영역(즉, 데이터 기록가능 무기록 영역)을 제어하기 위해, 음악과 같은 주 데이터로부터 분리되는 사용자-TOC(이하, U-TOC라 언급함)으로 불리는 제어 정보로 기록된다. 기록 기기는 정보가 기록될 영역을 결정하기 위해 이런 U-TOC를 참조하며, 반면에 재생 기기는 정보가 재생될 영역을 결정하기 위하여 U-TOC를 참조한다.
명확히 말하자면, U-TOC는 예컨데, 트랙으로 불리는 데이터 유닛에서 음악과, 예컨데, U-TOC에 기록될 기록된 음악의 시작 및 종료 어드레스를 제어한다. U-TOC는 데이터 기록가능 영역으로서 무기록 영역(또는 프리 영역)을 제어하며, 그 시작 및 종료 어드레스는 U-TOC에 기록된다.
또한, U-TOC에 의한 미니 디스크 상의 이들 영역을 제어하는 것은 사용자가 U-TOC을 업데이트함에 의해서만 음악과 같은 기록 데이터의 트랙을 분할, 결합, 이동(트랙수 변경) 및 소거하는 것과 같은 편집 처리를 쉽고 빠르게 하게 한다.
더욱이, U-TOC는 또한 이 디스크의 타이틀(디스크 명) 및 음악 프로그램의 타이틀(트랙 명)이 특성 정보로서 기록될 수 있는 영역을 가진다. 결과적으로, 사용자는 디스크 명 및 트랙 명을 기입하는 것과 같은 편집 처리를 실행할 수 있다.
이전에 설명된 미니 디스크 기록/재생 기기로서, 제어 시스템은 퍼스널 컴퓨터에 대한 전용 제어 단자를 가지는 것으로 알려져 있다. 제어 시스템이 이런 제어 단자를 통해 퍼스널 컴퓨터에 접속될 때, 사용자는 미니 디스크를 기록 및 재생하는 것과 관련된 처리 및 편집 동작을 실행하기 위하여 퍼스널 컴퓨터를 동작할 수 있다.
종래의 제어 시스템에서, 미니 디스크 기록/재생 기기에 대해 특정된 데이터 인터페이스가 적용된다. 기본적으로, 퍼스널 컴퓨터 및 미니 디스크 기록/재생 기기는 종래의 제어 시스템에서 일-대-일 관계로 서로 연결된다. 이들 제어 시스템은 퍼스널 컴퓨터 상에서 미니 디스크 기록/재생 기기를 제어하기 위한 어플리케이션 소프트웨어를 인스톨함에 의해 구성된디.
이들 제어 시스템에서, 사용자는 미니 디스크 기록/재생 기기를 제어하기 위한 어플리케이션 기기에 의해 제공되는 GUI를 통해 미니 디스크 기록/재생 기기를 동작시킬 수 있다. 이는 예컨데, 사용자가 미니 디스크 기록/재생 기기 상에 배열된 다양한 제어(또는 전용 원격 제어기)를 동작할 것을 요구하는 것이 아니라, 보다 용이한 사용 동작 환경을 사용자에게 제공한다.
그러나, 상술한 종래의 제어 시스템은, 이들 시스템이 일-대-일 기준으로 전용 라인을 통해 퍼스널 컴퓨터과 미니 디스크 기록/재생 기기이 접속된다는 가정을 하기 때문에, 미니 디스크 기록/재생 기기와 같은 복수의 외부 기기가 단일 퍼스널 컴퓨터에 의해 제어될 수 있도록 시스템을 확장하는데 어려움이 있다는 문제점을 가진다. 다른 문제점은 그런 확장이 달성된다 할지라도 종래 제어 시스템의 구성이 제어될 각각의 기기에 대한 원격 제어 프로그램을 시작하는 것이 요구되어 퍼스널 컴퓨터의 처리 로드를 증가시키는데 있다.
따라서, 본 발명의 목적은 복수의 오디오 기기의 제어를 용이하게 하는 제어 장치 및 이런 제어 장치용 제어 방법을 제공하는 것이다.
본 발명을 실행하는 본 발명의 일면에 따르면, 소정의 통신 포맷에 따르는 데이터 버스를 경유해서 하나 이상의 소정의 외부 기기 상에서 소정의 제어 동작을 실행할 수 있는 외부 기기 제어 장치가 제공되며, 이 외부 기기 제어 장치는, 하나 이상의 소정의 외부 기기를 제어하며 추상화된 엔트리로서 정의되는 제1 제어 프로그램을 유지하기 위한 추상화 제어 프로그램 유지 수단, 제어 장치에 의해 제어 가능하며 데이터 버스 상에 존재하는 타겟 외부 기기를 검출하기 위한 접속 기기 검출 수단, 및 접속 기기 검출 수단에 의해 검출된 타겟 외부 기기를 제어하며 실현된 엔트리로서 정의되는 제2 제어 프로그램을 생성하기 위한 제어 프로그램 실현 수단을 포함한다.
본 발명을 수행하는 또 다른 양상에 따르면, 소정의 통신 포맷에 따른 데이터 버스를 경유하여 상호 접속된 하나 이상의 소정의 외부 기기 상에 소정의 제어 조작을 실행할 수 있는 외부 기기 제어 장치에 대한 외부 기기 제어 방법에 있어서, 추상화된 엔티티로서 한정되어 하나 이상의 소정의 외부 기기를 제어하기 위한 제1 제어 프로그램을 유지하는 단계; 데이터 버스상에 존재하고 제어 장치에 의해서 제어가능한 타겟 외부 기기를 검출하는 단계; 및 구체화된 엔티티로서 한정되어 제1 제어 프로그램을 사용함으로써, 접속 기기 검출 단계에서 검출된 타겟 외부 기기를 제어하기 위한 제2 제어 프로그램을 생성하는 단계를 포함하는 외부 기기 제어 방법이 제공된다.
상술한 구성에서 나타나듯이, 외부 기기를 제어하기 위한 제어 프로그램으로서, 추상화된 엔티티로서 한정된 제1 제어 프로그램이 준비된다. 이것은 제어 프로그램의 일 모델로서 이해될 수 있다. 그 후, 제1 제어 프로그램을 사용함으로써, 데이터 버스상에 존재하는 것으로서 검출되고 제어될 각각의 외부 기기에 대한 제2 제어 프로그램이 생성된다. 이 제2 제어 프로그램은 제어될 외부 기기에 제어 명령을 실제로 송신하는 구체화된 제어 프로그램이다.
상술한 구성에서, 외부 기기를 제어하기 위한 구체화된 프로그램은 예를 들어 사전에 준비되지 않고 제어될 외부 기기가 데이터 버스상에서 검출될 때마다 생성된다.
본 발명에 대한 위의 특징 및 다른 특징과 이점들은 첨부된 도면과 함께 예시적으로 참조되어질 이하 상세한 설명으로부터 명백하게 될 것이다.
도 1은 본 발명의 일 실시예의 예시적인 시스템 구성을 나타내는 블럭도;
도 2는 MD 녹음기/재생기의 구성을 나타내는 블럭도;
도 3은 퍼스널 컴퓨터의 구성예를 나타내는 블럭도;
도 4는 본 실시예에 대응하는 IEEE 1394의 스택 모델을 나타내는 다이어그램;
도 5는 IEEE 1394에 사용되는 케이블 구조를 나타내는 다이어그램;
도 6a는 IEEE 1394 버스 위로 전송되는 DATA 신호의 타이밍 챠트;
도 6b는 IEEE 1394 버스 위로 전송되는 STROBE 신호의 타이밍 챠트;
도 6c는 IEEE 1394 버스 위로 전송되는 CLOCK 신호의 타이밍 챠트;
도 7은 IEEE 1394에서의 버스 접속 사양을 나타내는 다이어그램;
도 8a는 버스 리셋 발생시에 버스 리셋 통지가 전송되는 방법을 설명하는 트랜지션 다이어그램;
도 8b는 버스 리셋 후에 기기들간 부-자(parent-child)(ren) 관계가 정의되는 방법을 설명하는 트랜지션 다이어그램;
도 8c는 기기들의 Node IDs가 결정되는 방법을 설명하는 트랜지션 다이어그램;
도 9는 IEEE 1394에서의 패킷 전송의 개요를 나타내는 다이어그램;
도 10a는 비동기식 통신 상에서의 기본적인 트랜잭션 규칙을 보여주는 트랜지션 다이어그램;
도 10b는 전송된 트랜잭션 요구의 내용을 나열하는 테이블;
도 11a는 IEEE 1394 버스에 대한 버스 어드레스 레지스터에서의 데이터 구조의 개략도;
도 11b는 IEEE 1394 버스를 식별하기 위한 버스 IDs의 데이터 구조의 개략도;
도 11c는 IEEE 1394 버스 배치에 접속된 기기들에 할당된 Node IDs의 데이터 구조의 개략도;
도 11d는 IEEE 1394 버스에 대한 레지스터 스페이스 데이터 구조의 개략도;
도 11e는 IEEE 1394 버스에 대한 레지스터 어드레스 데이터 구조의 개략도;
도 12는 CIP 구조를 나타내는 다이어그램;
도 13은 플러그에 의해서 특정된 접속관계 예를 나타내는 다이어그램;
도 14a는 출력 플러그 제어 레지스터 oPCR[n]에서의 데이터 구조의 개략도;
도 14b는 입력 플러그 제어 레지스터 iPCR[n]에서의 데이터 구조의 개략도;
도 15는 비동기식 통신에서 특정된 기록 트랙잭션을 나타내는 처리 트랜지션 다이어그램;
도 16은 비동기식 패킷(AV/C 명령 패킷)의 구조를 나타내는 다이어그램;
도 17은 비동기식 패킷에서의 타입/응답의 정의 내용을 나타내는 다이어그램;
도 18a는 서브유닛 타입 데이터 구조의 테이블;
도 18b는 서브유닛 타입이 VCR일 때 사용되는 조작 코드에서의 명령 테이블;
도 19는 비동기식 통신에서의 플러그 구조를 나타내는 다이어그램;
도 20a는 플러그 어드레스 스페이스의 위치와 접속하는 데이터 구조도;
도 20b는 플러그 어드레스 스페이스의 위치에 대한 노드 오프셋 데이터 구조도;
도 20c는 플러그 어드레스 스페이스의 위치와 관련된 플러그 데이터 구조도;
도 21a는 플러그 어드레스에서의 데이터 구조도;
도 21b는 플러그 어드레스에서의 레지스터를 구성하는 데이터 구조도;
도 21c는 어드레스 오프셋 테이블;
도 22a는 공급자 측에서 플러그 어드레스의 레지스터를 구성하는 데이터 구조도;
도 22b는 소비자 측에서 플러그 어드레스의 레지스터를 구성하는 데이터 구조도;
도 23은 비동기식 접속으로서의 전송 프로토콜을 나타내는 다이어그램;
도 24는 OOPS에서의 오브젝트 구조를 나타내는 다이어그램;
도 25는 본 발명의 일 실시예로서 실행된 제어 프로그램의 구성을 나타내는 다이어그램;
도 26은 조작 오브젝트(클래스)의 정의 내용을 나타내는 다이어그램;
도 27은 기기 관리 오브젝트(클래스)의 정의 내용을 나타내는 다이어그램;
도 28은 오디오 기기 오브젝트의 정의 내용을 나타내는 다이어그램;
도 29는 PLAY 명령에 대한 제어 프로그램의 처리 흐름을 나타내는 다이어그램; 및
도 30은 오디오 기기 오브젝트 생성용 처리 조작을 지시하는 순서도이다.
<도면의 주요부분에 대한 부호 설명>
1: MD 레코더/플레이어
113: 퍼스널 컴퓨터
116: IEEE 1394 버스
201: CPU
25,209: IEEE 1394 인터페이스
700: 유저(GUI)
701: 조작 오브젝트(클래스)
702: 기기 관리 오브젝트(클래스)
703: 수퍼 클래스
704: 오디오기기 제어 클래스
705-1~705-n: 오디오 기기 오브젝트
본 발명은 첨부 도면을 참조하여 예를 들어 더 상세히 설명된다. 아래의 순서대로 설명될 것이다.
1. 시스템 구성
1.1 전체 구성
1.2 MD 레코더/플레이어
1-3 퍼스널 컴퓨터
2. IEEE 1394 포맷
2-1 개요
2-2 스택 모델
2-3 신호 전송의 형태
2-4 기기간의 버스 접속
2-5 패킷
2-6 트랜잭션 룰(transaction rule)
2-7 어드레싱
2-8 CIP (공통 동시 패킷)
2-9 접속 관리
2-10 FCP 하에서의 명령 및 응답
2-11 AV/C 명령 패킷
2-12 플러그
2-13 비동기 접속 전송 과정
3. 제어 프로그램
3-1 개요
3-2 제어 프로그램 구성
3-3 프로세싱 동작
1. 시스템 구성
1-1 전체 구성
본 발명의 실시예는 IEEE 1394 데이타 인터페이스 형태를 따르는 데이타 버스를 통해 데이타를 전송할 수 있는 AV 시스템을 예를 들어 설명된다.
이러한 AV 시스템은 적어도 퍼스널 컴퓨터가 오디오 기기를 (원격 방식으로) 제어할 수 있는 퍼스널 컴퓨터 및 다양한 오디오 기기를 구비한다. AV 시스템으로서 제공된 퍼스널 컴퓨터는 외부 기기를 제어하기 위한 본 발명의 실시예로서 실시되는 제어 장치이다.
도 1을 참조하면, IEEE 1394 디지탈 데이타 인터페이스에 의해 접속된 본 발명의 하나의 실시예로서 실시된 AV 시스템의 예시적인 구성이 도시되어 있다.
도 1에서의 AV 시스템은 퍼스널 컴퓨터(113) 및 IEEE 1394 데이타 인터페이스에 상응하는 케이블(601)에 의해 접속된 두개의 MD 레코더/플레이어(1 및 1A)를 구비한다. 퍼스널 컴퓨터(113) 및 MD 레코더/플레이어(1 및 1A)로 하여금 IEEE 1394 데이타 버스(116)를 통해 서로 통신할 수 있도록 접속된다.
MD 레코더/플레이어(1 및 1A)는 각각 미니 디스크(MD)로서 공지된 자기 광학 디스크로 그리고 자기 광학 디스크로부터 오디오 데이타를 기록 및 재생할 수 있는 디지탈 오디오 기기가다. 예를 들어, MD 레코더/플레이어(1 및 1A)는 MD로부터 디지탈 오디오 데이타를 추상화하고, IEEE 1394 버스(116)를 통해 추상화된 데이타를 출력한다.
따라서, 도 1에 도시된 시스템 구성은 예를 들어 MD 레코더/플레이어(1A)가 IEEE 1394 버스(116)를 통해 MD 레코더/플레이어(1)로부터 재생되고 출력된 오디오 데이타를 수신 및 기록하는 소위 데블링 동작을 허용한다.
이 경우에 특히, (ATRAC 스킴으로 불리우는) 소정의 포맷으로 압축된 오디오 데이타는 MD 상에 기록된다. MD 레코더/플레이어 간의 데블링시, 오디오 데이타는 이러한 압축 포맷으로 전송되고 데블링될 수 있다. 압축 포맷의 오디오 데이타 전송은 단지 좁은 버스 대역만을 필요로 하여, 데이타 전송 효율의 관점에서 이러한 구성이 유익하다.
퍼스널 컴퓨터(113)는 MD 레코더/플레이어(1)로부터 재생된 오디오 데이타를 IEEE 1394 버스(116)를 통해 수신하고, 수신된 데이타를 오디오 출력 및 편집 처리한다. 퍼스널 컴퓨터(113)는 또한 MD 레코더/플레이어(1 및 1A)가 (예를 들어 상기 언급된 데블링 동작을 포함하여) 기록 및 재생 동작시 제어되는 원격 제어를 수행할 수 있다. 즉, 퍼스널 컴퓨터(116)는 IEEE 1394 버스(116)에 접속된 오디오 기기를 원격 제어할 수 있다. IEEE 1394 인터페이스는 퍼스널 컴퓨터로부터 복수의 버스 접속 오디오 기기에 대해 이와 같은 원격 제어를 허용한다.
상기 언급된 성능은 예를 들어 퍼스널 컴퓨터(113) 상의 이들 성능을 실현하기 위한 응용 소프트웨어를 인스톨함으로써 제공된다. 이들 응용 소프트웨어로 인스톨된 퍼스널 컴퓨터의 구성은 이하 설명되는 본 발명의 실시예를 특징화한다.
1-2. MD 레코더/플레이어
도 2는 본 발명을 구현하는 AV 시스템에 포함되는 기록 및 재생 장치(MD 플레이어/레코더)(1)의 내부 구조를 도시한다. MD 플레이어/레코더(1A)도 동일한 구조를 가짐을 유의한다.
내부에 오디오 데이터가 저장된 광자기 디스크(Mini-disc)(90)는 스핀들 모터(2)에 의해 회전된다. 기록 또는 재생 시에, 광학 헤드(3)는 광자기 디스크(90) 상에 레이저 빔을 조사한다.
기록시에는, 광학 헤드(3)는 디스크의 열 기록 트랙에 고 레벨의 레이저 출력을 제공한다. 재생시에는, 광 헤드(3)는 자기 Kerr 효과를 통해 디스크로부터 오는 반사된 빛으로부터 데이터를 검출하기 위하여 상대적으로 낮은 레벨로 레이저를 출력한다.
광학 헤드(3)는 반사된 광을 포착하기 위한 검출기 외에도 레이저 다이오드, 편광 빔 분할기 및 대물 렌즈로 구성된 광학 시스템을 갖는다. 대물 렌즈(3a)는 디스크 표면위로 방사형으로 위치된 2축 기구에 의해 고정되고, 전후로 이동된다.
자기 헤드(6a)는 디스크(90) 양단의 광학 헤드(3)에 대해 대칭적으로 위치된다. 동작시에, 자기 헤드(3)는 데이터를 광자기 디스크(90)에 공급함에 의해 변조된 자계를 인가한다.
광학 헤드(3) 전체 및 자기 헤드(6a)는 슬레드 메카니즘(5)에 의해 디스크 상에 반경 방향으로 이동 가능하다.
재생시에, 광학 헤드(3)에 의해 디스크(90)로부터 검색된 정보는 RF 증폭기(7)로 공급된다. 차례로, RF 증폭기(7)는 공급된 정보를 처리하고 그로부터 재생된 RF 신호, 트래킹 에러 신호(TE), 포커스 에러 신호(FE) 및 그루브 정보(GFM)(광자기 디스크(90) 상의 프리그루브로서 (워블링 그루브내에) 기록된 절대 위치 정보)를 추출한다.
이렇게 추출된 재생된 RF 신호는 EFM/ACIRC 인코더/디코더(8)로 전송된다. 트래킹 에러 신호(TE) 및 포커스 에러 신호(FE)는 서보 회로(9)에 공급된다. 그루브 정보(GFM)는 어드레스 디코더(10)로 전송된다.
서보 회로(9)는 스핀들 모터(2)로부터 검출된 회전 속도 정보외에도 시스템 제어기(11)로부터의 트랙 점프 명령 및 억세스 명령에 따라 트래킹 에러 신호(TE) 및 포커스 에러 신호(FE)를 수신하는 경우 다양한 서보 구동 신호를 생성한다. 이렇게 생성된 서보 구동 신호는 포커싱을 위해 2-축 기구(4) 및 슬레드 기구(5)를 제어하고 상수 선형 속도(CLV)로 스핀들 모터(2)를 유지시킨다.
어드레스 디코더(10)는 공급된 그루브 정보(GFM)를 디코드하여 그로부터 어드레스 정보를 추출한다. 어드레스 정보는 다양한 동작을 제어하기 위하여 시스템 제어기(11)로 전송된다.
재생된 RF 신호는 EFM/ACIRC 인코더/디코더(8)에 의해 EFM 복조 및 CIRC와 같은 디코딩 공정 처리된다. 처리 동안, 어드레스 및 서브-코드 데이터가 추출되고 시스템 제어기(11)로 입력된다.
EFM/ACIRC 인코더/디코더(8)에 의한 EFM 복조 및 CIRC와 같은 디코딩 공정을 수행한 오디오 데이터(섹터 데이터)는 메모리 제어기(12)의 제어하의 버퍼 메모리(13)에 임시 기록된다. 광학 헤드(3)에 의한 디스크(90)로부터의 데이터 검색 및 광학 헤드(3)로부터 버퍼 메모리(13)까지의 재생된 데이터의 전송은 일반적으로 단속적 방식(intermittent fashion)으로 1.41Mbit/sec 속도로 수행된다.
버퍼 메모리(13)에 기록된 데이터는 오디오 데이터 압축/압축해제 인코더/디코더(14)로 0.3Mbits/sec의 속도로 전송하기 위하여 시간적으로 적절한 방식으로 검색된다. 오디오 데이터 압축/압축해제 인코더/디코더(14)는 44.1KHz의 주파수로 샘플링되고 16비트화된 디지털 오디오 신호를 생성하기 위하여 수신된 데이터를 압축된 형태로 한다.
디지털 오디오 신호는 D/A 변환기(15)에 의해 아날로그 오디오 신호로 변환된다. 아날로그 신호는 아날로그 오디오 신호(Aout)로서 라인 출력 단자(17)를 통해 외부 기기로 출력되기 이전에 레벨 및 임피던스 조절을 위해 출력 프로세싱 유닛(16)으로 전송된다. 아날로그 오디오 신호는 또한 접속되는 헤드폰에 대한 헤드폰 출력(HPout)인 헤드폰 출력 단자(27)로 입력된다.
오디오 데이터 압축/압축해제 인코더/디코더(14)에 의한 디코딩 이후의 디지털 오디오 신호는 디지털 출력 단자(21)를 통해 디지털 오디오 신호(Dout)로서 외부 기기에 출력되기 위한 디지털 인터페이스(22)로 전송된다. 도식적으로는, 신호는 광학 케이블을 통해 외부 기기로 출력될 수 있다.
광자기 디스크(90)에 기록하기 위하여 라인 입력 단자(18)에 입력되는 기록 신호(아날로그 오디오 신호(Ain))는 먼저 A/D 변환기(19)에 의해 디지털 오디오 신호로 변환된다. 디지털 오디오 신호는 오디오 데이터 압축 인코딩을 위해 오디오 데이터 압축/압축해제 인코더/디코더(14)에 공급된다.
디지털 오디오 신호(Din)가 외부 기기로부터 디지털 입력 단자(20)를 통해 공급되는 경우, 디지털 인터페이스(22)는 공급된 데이터로부터 제어 코드를 추출한다. 오디오 데이터는 오디오 데이터 압축 인코딩을 위하여 오디오 데이터 압축/압축해제 인코더/디코더(14)로 전송된다.
도시되지 않았지만, 입력 신호 외에도 마이크로폰 입력 단자는 마이크로폰을 수용하도록 제공될 수 있다.
오디오 데이터 압축/압축해제 인코더/디코더(14)에 의해 기록 데이터로 압축되는 데이터는 메모리 제어기(12)에 의해 버퍼 메모리(13)로 임시로 누적적인 방식으로 기록된다. 데이터는 다음으로 선정 데이터 크기의 증가하는데 있어서 버퍼 메모리(13)로부터 검색되고 CIRC 인코딩 및 EFM과 같은 인코딩 처리를 위해 EFM/ACIRC 인코더/디코더(8)로 전송된다. EFM/ACIRC 인코더/디코더(8)에 의한 인코딩 동작 이후에, 데이터는 자기 헤드 구동 회로(6)로 입력된다.
자기 헤드 구동 회로(6)는 인코딩된 기록 데이터에 따라 자기 헤드 구동 신호를 자기 헤드(6a)로 공급한다. 특히, 자기 헤드 구동 회로(6)는 자기 헤드(6a)가 광자기 디스크(90)로 N 또는 S 자계를 인가하도록 한다. 이때, 시스템 제어기(11)는 광학 헤드(3)에 제어 신호를 제공하여 기록 레벨 레이저 빔을 출력한다.
동작 유닛(23)은 사용자에 의해 동작될 키 및 다이얼로 구성된 제어기를 갖는다. 제어기는 재생, 기록, 일시 중지, 정지, 고속 전진(FF), 되감기(REW), 및 자동 음악 검색(AMS)와 같은 기록 및 재생 동작; 표준 재생, 프로그램 재생 및 임의 재생과 같은 플레이 모드 관련 동작; 디스플레이 유닛(24)의 디스플레이 상태를 절환하기 위해 수행되는 디스플레이 모드-관련 동작; 및 트랙(프로그램) 분할, 트랙 연결, 트랙 소거, 트랙 명 입력 및 디스크 명 입력과 같은 프로그램 편집 동작을 포괄한다.
이들 동작 키 및 다이얼로부터 오는 동작 정보는 제어 동작을 수행하는 시스템 제어기(11)로 전송된다.
본 발명의 이러한 실시예는 개략적인 적외선 방사를 이용하여 원격 제어기(32)에 의해 전송되는 명령 신호를 수신하는 수신 유닛을 포함한다. 수신 유닛(30)은 수신된 신호를 디코드하여 시스템 제어기(11)로 명령 코드(동작 정보)를 출력한다. 시스템 제어기(11)는 또한 수신 유닛(30)으로부터 오는 동작 정보를 기초로 그 제어 동작을 수행한다.
디스플레이 유닛(24)은 디스플레이 동작에 관련하여 시스템 제어기(11)에 의해 제어된다. 시스템 제어기(11)는 데이터 디스플레이를 위해서 디스플레이 유닛(24)내부의 디스플레이 구동기에 디스플레이될 데이터를 전송한다. 데이터가 주어지면, 디스플레이 구동기는 디스플레이 동작 중인 액정 디스플레이와 같은 디스플레이 유닛(24)을 구동하여 숫자, 문자 및 심볼이 디스플레이된다.
디스플레이 유닛(24)은 트랙 번호, 기록/재생 시간 및 편집 상태외에도 기록 또는 재생을 위해 현재 로딩된 디스크의 동작 모드 상태를 표시한다.
디스크(90)는 주 데이터로서 내장된 프로그램과 결부하여 관리될 트랙 명 및 앨범 타이틀과 같은 문자 정보(예를 들면 트랙 명)을 저장할 수 있다. 문자 정보로서의 저장되는 문자는 디스플레이 유닛(24) 상에 디스플레이되고, 디스크로부터 검색된 문자 정보 또한 디스플레이된다.
이 실시예로, 디스크(90)는 음악과 같은 독자적인 데이터 파일 및 다른 데이터 구성 프로그램과 같은 AUX 데이터(AUX data)를 기록할 수 있다.
AUX 데이터와 같은 데이터 파일은 문자 및 정지 화상과 같은 정보로 구성된다. 이들 문자 및 정지 화상은 디스플레이 유닛(24)에 의해 출력되고 디스플레이될 수 있다.
본 발명의 이 실시예는 AUX 데이터를 구성하는 정지 화상 및 문자를 디스플레이 유닛(24) 상에 디스플레이하도록 설계된 JPEG 디코더(26)를 갖는다.
더욱 상세하게는, AUX 데이터와 같은 데이터를 구성하는 정지 화상 데이터는 JPEG(Joint Photographic Coding Experts Group) 규격에 따른 압축된 파일 포맷으로 기록된다. JPEG 디코더(26)는 메모리 제어기(12)를 통해 디스크(90)로부터 검색되고 버퍼 메모리(13)로 누적적으로 기록된 정지 화상 데이터 파일에 접근 가능하다. 검색된 파일은 디스플레이 유닛(24)에 출력되기 이전에 JPEG 규격으로 압축해제된다. 이는 디스플레이 유닛(24)이 AUX 데이터를 구성하는 정지 화상 데이터를 디스플레이되도록 한다.
AUX 데이터를 구성하는 문자 정보 또는 정지 화상 정보를 출력하기 위하여, 그 스크린 상에 디스플레이할 때 상당히 큰 자유도를 주기 위하여 풀-도트 디스플레이 또는 CRT 디스플레이를 설치하는 것이 바람직하다. 이러한 경우, AUX 데이터는 다른 인터페이스(25)를 통해 출력될 수 있고 외부 설치된 모니터 상에 디스플레이될 수 있다.
AUX 데이터 파일은 디스크(90) 상에 사용자에 의해 기록될 수 있다. 그러한 데이터 파일 입력을 위해, 이미지 스캐너, 개인 컴퓨터 및/또는 키보드를 이용할 필요가 있다. AUX 데이터를 구성하는 정보는 이들 외부 추가 기기로부터 인터페이스(25)를 통해 입력될 수 있다.
이러한 실시예에 대해서, IEEE 1394 인터페이스가 인터페이스(25)로서 채택되는 것으로 간주된다. 아래의 설명에서, 인터페이스(25) 및 IEEE 1394 인터페이스는 교환가능하다. IEEE 1394 인터페이스(25)는 IEEE 1394 버스(116)를 통해 다양한 외부 기기에 접속된다.
시스템 제어기(11)는 내부 인터페이스를 구성하는 마이크로컴퓨터이다. 마이크로컴퓨터는 상술한 다양한 제어 동작을 수행한다.
프로그램 ROM(28)은 기록 및 재생 장치가 다양한 동작을 수행하기 위한 프로그램을 저장한다. 워크 RAM(29)은 시스템 제어기(11)가 다양한 공정을 수행하도록 필요한 데이터 및 프로그램을 실장한다.
디스크(90)로부터 또는 디스크로 데이터를 기록하거나 재생하기 위해서는 그로부터 관리 정보 즉, P.TOC(pre-mastered TOC(table of contents)) 및 U-TOC(user TOC)를 검색할 필요가 있다. 그러한 관리 정보가 주어지면, 시스템 제어기(11)는 데이터를 기록하거나 검색할 디스크(90) 상의 영역의 어드레스를 식별한다.
관리 정보는 버퍼 메모리(13)내에 보유된다.
디스크(90)가 장착될 때, 시스템 제어기(11)는 당해 정보가 기록되어 있는 디스크상의 최내측으로부터 데이터를 재생함으로써 그 관리 정보를 검색한다. 이 검색된 정보는 버퍼 메모리(13)에 위치되어 그 다음으로 디스크(90) 상의 프로그램을 기록, 재생 또는 편집을 실행하는데 참조될 수 있다.
U-TOC는 프로그램 데이터 기록과 각종 편집 처리에 따라 갱신된다. 데이터가 기록되거나 편집될 때마다, 시스템 제어기(11)는 버퍼 메모리(13)내의 U-TOC 정보를 갱신한다. 이 갱신 동작은 디스크(90) 상의 U-TOC 영역의 갱신에 의해 적절한 때에 병행된다.
디스크(90)는 상기 프로그램들과 별개로 AUX 데이터 파일들을 수용한다. AUX-TOC는 이 AUX 데이터 파일들을 관리하기 위해 디스크(90)상에 형성된다.
U-TOC의 검색시에, 이 시스템 제어기(11)는 AUX-TOC를 또한 판독하고 이것을 버퍼 메모리(13)에 둔다. 이 AUX 데이터의 관리된 상태는 이후에 버퍼 메모리(13)내의 AUX-TOC를 조사함으로써 참조될 수도 있다.
시스템 제어기(11)는 필요에 따라 적절한 때에(또는 AUX-TOC의 검색과 동시에) AUX 데이터 파일들을 판독한다. 이 검색된 파일들은 버퍼 메모리(13)내에 놓여진다. 이 AUX 데이터 파일들은 그리고나서 AUX-TOC에 따라 적절한 때에 출력되고, IEEE 1394 인터페이스(25)를 통해 디스플레이부(24)나 외부 기기상에 문자 및 화상의 형태로 표시된다.
상기 셋업에서, IEEE 1394 인터페이스(25)는 오디오 데이터를 송수신할 수 있다. 이것은 본 발명을 구체화하는 MD 레코더/플레이어가 IEEE 1394 인터페이스(25)를 통해 전송된 오디오 데이터를 수신하고 이 수신된 데이터를 디스크(90)에 기록함을 의미한다.
만약 이 전송된 오디오 데이터가 예를 들어 44.1KHz의 주파수로 샘플되고 16비트로 양자화된 디지털 오디오 데이터이면, 이 데이터는 시스템 제어기(11)를 통해 오디오 데이터 압축용 오디오 데이터 압축/압축해제 인코더/디코더(14)로 보내어진다.
전송된 오디오 데이터가 이 MD 레코더/플레이어의 압축 포맷에 따라 압축된 오디오 데이터인 것으로 판명되면, 이 데이터는 시스템 제어기(11)를 통해 메모리 제어기(12)로 보내어진다.
1-3 퍼스널 컴퓨터
퍼스널 컴퓨터(113)의 내부 구조를 이제 도 3을 참조하여 설명할 것이다.
설명한 바와 같이, 퍼스널 컴퓨터(113)는 데이터를 외부 엔티티와 교환하기 위한 IEEE 1394 인터페이스(209)를 가진다. 이 IEEE 1394 인터페이스(209)는 외부 기기와의 2방향 통신을 위한 외부 데이터 버스의 기능을 하는 IEEE 1394 버스(116)에 접속되어 있다.
IEEE 1394 인터페이스(209)는 IEEE 1394 버스(116)를 거쳐 수신된 패킷들을 복조하고, 이 수신된 패킷들로부터 데이터를 추출하고, 이 추출된 데이터를 내부 데이터 통신에 상응하는 데이터 포맷으로 변환하고, 이 변환된 데이터를 내부 버스(210)를 통해 CPU(201)로 출력한다.
또한, IEEE 1394 인터페이스(209)는 CPU(201)의 제어하에 출력 데이터를 수용하고, 이 데이터에 IEEE 1394 포맷에 의거하여 패킷으로의 변환 등의 변조 처리를 하고, 이 변조 데이터를 IEEE 1394 버스(116)를 거쳐 외부로 송신한다.
CPU(201)는 예를 들어 ROM(202)에 보유된 프로그램에 따라 많은 처리를 행한다. 이 실시예는 그 ROM(202)내에 IEEE 1394 인터페이스(209)를 제어하기 위한 프로그램들을 가져서 IEEE 1394 규격에 따라 데이터 교환을 가능하게 한다. 즉, 퍼스널 컴퓨터(113)는 IEEE 1394 하에 데이터 교환을 가능하게 하는 세트(하드웨어 및 소프트웨어)를 가진다.
RAM(203)은 필요에 따라 CPU(201)가 각종 처리를 할 수 있게 하는 데이터와 프로그램들을 수용한다.
입출력 인터페이스(204)는 키보드(205)와 마우스(206)에 접속되어 있다. 이 성분들로부터 동작이 유발된 신호들은 인터페이스(204)를 통해 CPU(201)로 보내어진다. I/0 인터페이스(204)는 또한 기억 매체로서 하드 디스크를 포함하는 하드 디스크 드라이브(207)에 접속된다. I/O 인터페이스(204)를 통해, CPU(201)는 하드 디스크 드라이브(207)에 또는 그로부터 데이터를 기입 또는 판독한다. 이 셋업에서, I/O 인터페이스(204)는 또한 화상 디스플레이를 위해 디스플레이 모니터(208)에 접속된다.
내부 버스(210)는 예를 들어 PCI(Peripheral Component Inerconnect; 주변 요소 상호 접속) 버스 또는 로컬 버스로 구성된다. 이처럼, 내부 버스(210)는 내부 기능 회로들간의 상호 접속을 제공한다.
상기한 MD 레코더 플레이어(1, 1A)에서는, 그들의 IEEE 1394 인터페이스는 기본적으로 퍼스널 컴퓨터(113)와 동일한 기능적 구조를 채택한다.
더 구체적으로, 도 2의 MD 레코더/플레이어(1, 1A)는 그 프로그램 ROM(28)에 시스템 제어기(11)가 IEEE 1394 인터페이스(25)를 제어하도록 하는 프로그램들을 가진다.
성분들이 IEEE 1394 버스 라인들에 의해 상호접속되어 있는 이 실시예의 시스템 구성은 단지 예시적인 목적으로 기재되었고 본 발명을 한정하는 것은 아니다.
2. IEEE 1394에 따른 본 발명의 데이터 통신
2.1 개요
다음은 본 발명의 데이터 통신이 IEEE 1394에 따라 어떻게 발생하는지에 대한 설명이다.
IEEE 1394는 직렬 데이터 표준 중 하나를 구성한다. IEEE 1394 하에서는 2개의 데이터 전송 방식 즉, 주기적 통신을 위한 등시성 통신(isochronous communication method)과, 등시성에 상관없이 비동기식 통신을 위한 비동기식 통신 방법이 있다. 일반적으로, 등시성 통신 방법은 데이터 전송과 수신을 위해 사용되고, 비동기식 통신 방식은 다양한 제어 명령을 변경시키기 위해 채택된다. 싱글 케이블은 데이터 및 명령의 2개의 통신 방식에 의해 전송 및 수신되도록 한다.
상술한 바와 같이, 본 발명에 따른 AV 시스템은 IEEE 1394 버스 설비(arrangement)를 통해 구성 기기들간에 MD 레코더/플레이어와 호환가능한 사용자 데이터 및 AUX(화상 파일(JPEG 정지 화상 데이터) 및 텍스트 파일)로서 압축된 오디오 데이터를 교환할 수 있도록 해준다. AV 시스템은 또한 콘트롤러의 기능을 하는 기기가 타겟으로 선택된 기기를 통해 원격 제어를 실행할 수 있도록 해준다.
오디오 데이터는 재생 시간에 기초한 오디오 출력을 호출하기 위한 시계열 데이터(time-series data)이며, 리얼 타임 처리를 요구한다. 더욱이, 오디오 데이터는 AUX 데이터의 양보다 크다. AUX 데이터는 오디오 데이터와 비교되는 적당한 양이고, ATRAC 데이터와 달리, 데이터가 오디오 데이터 재생에 동기하여 때때로 재생되더라도 리얼 타임으로 당하지는 않는다.
종합적으로, 본 실시예의 IEEE 1394 인터페이스는, 오디오 데이터가 IEEE 1394 버스를 통한 등시성 통신 방식에 의해 전송 및 수신되고, AUX 데이터가 동 버스를 통한 비동기식 통신 방식에 의해 교환되도록 요구한다. 이러한 실시예에 따라, IEEE 1394 인터페이스는 오디오 데이터와 AUX 데이터를 별도로 전송하거나 또는 시분할 즉, 후술하는 바와 같은 명백하게 동시 방식으로 등시 사이클을 이용하여 오디오 및 AUX 데이터 모두를 전송하는 것이 가능하다.
다음은 IEEE 1394기준에 따라 통신을 수행하는 실시예의 설명이다.
2-2 스택 모델
도 4는 본 실시예에서 구현되는 IEEE 1394의 스택 모델이다. IEEE 1394 포맷에는 2개의 유형 즉, 비동기식 포맷(400)과 등시성 포맷(500)이 있다. 링크층(302)인 물리층(301)이라 불리는 최저층은 비동기 포맷(400)과 등시성 포맷(500) 모두에 공통적이다. 물리층(301)은 하드웨어 베이시스상의 신호 전송을 책임진다. 링크층(302)은 특정 내부 버스로 예시되는 IEEE 1394버스를 소정의 기기에 전달하는 기능을 갖고 있다.
이하 후술되는 물리층(301), 링크층(302). 및 처리층(transaction layer; 401)은 이벤트/콘트롤/구성라인에 의해 직렬 버스 매니지먼트(303)에 링크된다. AV 케이블/커넥터(304)는 AV 데이터 전송을 위해 요구되는 물리적 커넥터와 케이블을 나타낸다.
비동기포맷(400)에 대해, 트랜잭션층(401)은 링크층(302)의 상부에 위치한다. 트랜잭션층(401)은 IEEE 1394의 데이터 전송 프로토콜을 한정한다. 기본적인 비동기식 집행으로서, 트랜잭션층(401)은 기록 집행, 판독 집행, 및 록 집행을 지정한다.
트랜잭션층(401)은 FCP(Function Control Protocol;402)에 의해 씌워진다. FCP(402)는 AV/C 명령으로서 한정되고 있는 제어 명령을 사용하여 다양한 AV 기기를 통해 명령 제어를 실행한다(403).
트랜잭션층(401) 위쪽에는 접속 관리 프로시져(405)를 이용하여 플러그들(후술되는 IEEE 1394하에서의 논리적 기기 접속)을 접속하기 위한 플러그 제어 레지스터(404)가 있다.
등시성 포맷(500)에서, CIP 헤더 포맷(501)은 링크층(302)위에 오게된다. CIP 헤더 포맷(501)의 매니지먼트하에는 SD-DVCR 리얼 타임 전송(502), HD-DVCR 리얼 타임 전송(503), SDL-DVCR ??시간 전송(504), MPEG2-TS 리얼 타임 전송(505), 및 오디오 및 음악 리얼 타임 전송(506) 등과 같은 전송 프로토콜들이 규정되어 있다.
SD-DVCR 리얼 타임 전송(502), HD-DVCR 리얼 타임 전송(503), 및 SDL-DVCR 리얼 타임 전송(504)는 어드레스 디지털 VTR(Video Tape Recorders)와 같은 데이터 전송 프로토콜이다.
SD-DVCR 리얼 타임 전송(502)에 의해 취급되는 데이터는 SD-DVCR 기록 포맷(508)에 따라 획득된 데이터 시퀀스(SD-DVCR 데이터 시퀀스(507))이다.
HD-DVCR 리얼 타임 전송(503)에 의해 취급되는 데이터는 HD-DVCR 기록 포맷(510)을 유지하면서 얻어진 데이터 시퀀스(SD-DVCR 데이터 시퀀스(509))이다.
SDL-DVCR 리얼 타임 전송(504)에 의해 취급되는 데이터는 SDL-DVCR 기록 포맷(512)에 대해 얻어지는 데이터 시퀀스(SD-DVCR 데이터 시퀀스(511))이다.
MPEG2-TS 리얼 타임 전송(505)은 위성을 통한 디지털 방송을 위한 튜너를 예시적으로 어드레스하는 전송 프로토콜이다. 이러한 프로토콜에 의해 취급될 데이터는 DVB(Digital Video Broadcast) 기록 포맷(514) 또는 ATV(Analog Television) 기록 포맷(515)에 따라 얻어진 데이터 시퀀스(MPEG2-TS 데이터 시퀀스(513))이다.
오디오 및 음악 리얼 타임 전송(506)은 본 발명을 구현하는 MD 시스템을 포함하는 디지털 오디오 장비의 전체 범위를 어드레스하는 전송 프로토콜이다. 이러한 프로토콜에 의해 취급되는 데이타는 오디오 및 악곡 기록 포맷(517)에 따라 얻어진 데이타 시퀀스 (오디오 및 악곡 데이타 시퀀스)이다.
2-3 신호 전송의 형태
도 5는 실제로 IEEE 1394 버스로서 사용되는 케이블의 전형적인 구조를 도시하고 있다.
도 5에서, 커넥터(600A 및 600B)는 케이블(601)을 통해 접속된다. 1 내지 6으로 번호가 매겨진 핀은 커넥터(600A 및 600B)에 부착된 핀 단자로서 사용되는 것으로 도시되어 있다.
커넥터(600A 및 600B) 상의 핀 단자 중 핀 번호 1은 전원(VP)에 대응하고, 핀 번호 2는 접지(VG)에 대응하며, 핀 번호 3은 TPB1에 대응하고, 핀 번호 4는 TPB2에 대응하고, 핀 번호 5는 TPA1에 대응하고, 핀 번호 6은 TPA2에 대응한다.
이 핀은 다음과 같이 커넥터(600A 및 600B) 사이에 상호 접속된다.
핀 번호 1 (VP) 대 핀 번호 1 (VP);
핀 번호 2 (VG) 대 핀 번호 2 (VG);
핀 번호 3 (TPB1) 대 핀 번호 5 (TPA1);
핀 번호 4 (TPB2) 대 핀 번호 6 (TPA2);
핀 번호 5 (TPA1) 대 핀 번호 3 (TPB1); 및
핀 번호 6 (TPA2) 대 핀 번호 4 (TPB2)
상기 핀 접속 쌍 중 2개의 트위스트 페어
핀 번호 3 (TPB1) 대 핀 번호 5 (TPA1), 및
핀 번호 4 (TPB2) 대 핀 번호 6 (TPA2)
는 미분계 신호를 교대로 전송하기 위한 신호 라인(601A)을 구성한다. 더욱이, 다른 2개의 트위스트 페어
핀 번호 5 (TPA1) 대 핀 번호 3 (TPB1), 및
핀 번호 6 (TPA2) 대 핀 번호 4 (TPB2)
는 또한 미분계 신호를 교대로 전송하기 위한 신호 라인(601B)을 형성한다.
2세트의 신호 라인(601A 및 601B)을 통해 전송되는 신호는 도 6a에 도시된 데이타 신호 (데이타) 및 도 6b에 도시된 스트로브 신호 (스트로브)이다.
도 6a의 데이타 신호는 신호 라인(601A 및 601B) 중 하나를 사용한다. 이 데이타 신호는 TPB1 및 TPB2를 통해 출력되고 TPA1 및 TPA2로 입력된다.
도 6b의 스트로브 신호는 데이타 신호 및 이 데이타 신호와 동기된 전송 클럭에 대해 소정의 논리 연산을 행함으로써 얻어진다. 이러한 이유로, 스트로브 신호는 실제 전송 클럭보다 낮은 주파수를 갖는다. 스트로브 신호는 데이타 신호 전송을 위해 점유되지 않은 신호 라인(601A 및 601B)을 사용한다. 신호 라인을 통한 전송에 후속하여, 스트로브 신호는 TPA1 및 TPA2를 통해 출력되어 TPB1 및 TPB2에 입력된다.
도 6a의 데이타 신호 및 도 6b의 스트로브 신호는 IEEE 1394에 따른 기기에 입력된다. 이러한 경우에, 이 기기는 입력 데이타 신호 및 스트로브 신호에 대한 적절한 논리 연산을 수행하여 도 6c에 도시된 전송 클럭 (클럭)을 생성한다. 이와 같이 생성된 전송 클럭은 필요한 입력 데이타 신호 처리에 사용된다.
데이타 전송 형태를 기초로 한 이러한 하드웨어를 채택함으로써, IEEE 1394 포맷은 구성된 기기들 간에 케이블을 통해 고속 전송 클럭을 전송할 필요성을 제거한다. 이는 신호 전송의 신뢰성을 향상시킨다.
상기에서 6개의 핀 배열이 설명되었지만, 이는 본 발명을 제한하려는 것은 아니다. 다르게는, IEEE 1394 포맷은 전원(VP) 및 접지(VG)를 생략하여 2개의 스트위스트 페어, 즉 신호 라인(601A 및 601B)만으로 구성된 4개의 핀 배열을 형성할 수 있다. 본 실시예의 MD 레코더/플레어어(1)는 예시적으로 사용자에게 지금까지 보다 간소화된 시스템을 제공하는 상기와 같은 4핀 케이블 배열을 사용한다.
2-4 기기간의 버스 접속
도 7은 기기들이 IEEE 1394 버스를 사용하여 상호접속되는 전형적인 방법을 도시한다. 도 7의 구성은 IEEE 1394 버스(즉, 케이블)를 통해 상호 통신을 위해 접속되어 있는 5개의 기기 A 내지 E(노드)를 보여준다.
IEEE 1394 인터페이스에 의해 소위 데이지 체인 접속(daisy-chain connection)을 이루어, 도 7의 기기 A, B, C와 같은 장치들이 IEEE 1394 버스를 통해 직렬 접속된다. 인터페이스는 소위 브랜치 접속도 가능한데, 이에 의하면 기기 A가 기기 B, D, E와 병렬로 접속되는 도 7의 구성과 같이 하나의 장치가 복수의 장치와 병렬로 접속된다.
시스템 전체로는 브랜치 접속과 데이지 체인 접속에 의해 구성되는 최대 63개의 기기(노드)를 가질 수 있다. 데이지 체인 접속 한 가지만을 사용하면 최대 16개 기기(16 팝)로 구성이 가능하다. SCSI(Small Computer System Interface)에서 필요한 터미네이터는 IEEE 1394 인터페이스에서는 필요치 않다.
IEEE 1394 인터페이스는 상기한 데이지 체인 접속 또는 브랜치 접속에 의해 접속된 기기들이 서로 통신할 수 있게 해준다. 도 7의 구성에서, 기기 A, B, C, D, E는 서로 통신가능하다.
다수의 기기가 IEEE 1394 버스에 의해 접속된 시스템에서(이 시스템을 IEEE 1394 시스템이라고 호칭한다), 구성된 기기 각각에는 노드 ID가 지정된다. 노드 ID 지정 프로세스는 도 8A 내지 8C에 도시되었다.
도 8A에 도시된 접속 셋업을 갖는 IEEE 1394 시스템에서, 케이블이 접속 또는 접속단절되거나, 시스템의 구성 기기중 어느 하나가 턴온 또는 턴오프되거나, PHY(Phycial Layer Protocol)하에서 자발적인 프로세스가 발생하는 경우에, 버스 리셋이 발생된다.
버스 리셋 통지는 (차일드 통지로 불리우는) 통신을 유발하고, 그 결과 도 8B에 도시된 바와 같이 인접 기기간에 페어런트-차일드 관계가 형성된다. 말하자면, IEEE 1394 시스템내에 구성 기기의 트리 구조가 만들어진다. 터미날이 모두 "차일드"(Ch)로 규정되는 기기가 루트이다. 도 8B의 구성에서는 기기 B가 루트로 규정된다. 다시말해, 루트인 기기 B에 접속된 기기의 터미날은 "페어런트"(P)로 규정된다.
전술한 바와 같이 IEEE 1394 시스템에서 트리 구조 및 그 루트가 규정되면, 각각의 기기는 셀프 ID 패킷을 도 8C에 도시된 자신의 노드 ID의 표식으로서 출력한다. 루트는 접속된 기기에 노드 ID를 차례로 부여하여, IEEE 1394 시스템을 구성하는 기기들의 어드레스(노드 ID)가 결정된다.
2-5 패킷
도 9에 도시된 것처럼, IEEE 1394 포맷은 반복되는 등시적인 사이클(공칭 사이클)을 통해 데이타 전송을 이룬다. 등시적인 사이클 각각은 100 MHz의 주파수 대역에서 125 μsec 동안 지속된다. 등시적인 사이클은 125 μsec 이외의 지속 시간을 가질 수도 있다. 전송을 위해, 데이타는 각각의 등시적인 사이클에서 패킷으로 전환된다.
도 9에 도시한 것처럼, 각각의 등시적인 사이클 맨 앞에는 사이클의 시작을 나타내는 사이클 시작 패킷이 있다.
사이클 시작 패킷을 발생시키는 시기는 IEEE 1394 시스템에서 사이클 마스터로 규정된 기기에 의해 결정된다. 사이클 시작 패킷 발생에 대한 상세한 설명은 생략하겠다.
각각의 사이클 개시 패킷 다음에 등시성 패킷이 우선적으로 이어진다. 도 9에 도시된 바와 같이, 등시성 패킷은 각각 채널에 대응하고 시분할 베이시스 상으로 전송된다(등시성 서브액션의 형태로). 등시성 서브 액션에 있어서, 등시성 갭으로 불리는 간격으로 패킷이 분리된다(각각은 예를 들면 0.05 ㎲ 동안 지속됨).
상술된 바와 같이, IEEE 1394 시스템은 멀티-채널 베이시스 상의 단일 전송선 위에서 등시성 데이터의 송수신을 가능하게 한다.
본 실시예에서의 MD 리코더/플레이어와 호환 가능한 압축된 오디오 데이터가 등시성 방법에 의해 송신된다고 가정하자. 이러한 경우, ATRAC 데이터가 1.4Mbps의 단일-스피드 전송 속도인 경우, 시계열 연속성(즉, 리얼 타임 특성)은 등시성 패킷 내에서 125㎲ 등시성 사이클 동안 20-odd 메가바이트로 데이터를 송신함으로써 보장된다.
예를 들면, ATRAC 데이터를 송신하기 이전에, 기기는 IEEE 1394 시스템에서 IRM(Isochronous Resource Manager)를 요구하여, ATRAC 데이터의 리얼 타임 전송을 확보할 수 있을 정도로 큰 등시성 패킷 사이즈를 승인한다. 이에 응답하여, IRM은 현재 데이터 전송 상태를 모니터함으로써 패킷 사이즈에 대한 허락을 승인하거나 보류할 수 있다. 허락이 승인되면, 질문에서의 ATRAC 데이터는 특정 채널을 통해 등시성 패킷 내로 송신된다. 이러한 절차는 이하 상세히 설명되지는 않으나, IEEE 1394 인터페이스에 대한 밴드 유보(reservation)라 불리운다.
등시성 사이클 밴드를 통해 등시성 서브액션에 대하여 사용되지 않은 주파수 범위가 비동기 서브액션, 즉 패킷의 비동기 전송에 대하여 사용된다.
도 9는 2개의 비동기 패킷 A 및 B가 송신되는 일례를 도시한다. 비동기 패킷 다음에 ACK(acknowledge) 신호가 이어지는데, 그 사이에 삽입된 ACK 갭(길이는 0.05㎲임)이라 불리는 간격을 갖는다. ACK 신호는 후술될 바와 같이 하드웨어 베이시스 상에서 임의의 비동기 데이터가 비동기 트랜잭션 동안 수신된 송신측(즉, 컨트롤러)을 통지하면서 수신측에 의해 출력된다.
서브액션 갭으로 불리는 약 10㎲의 간격이 비동기 패킷과 ACK 신호로 구성된 각각의 데이터 전송 유닛 전후에 배치된다.
등시성 패킷에서 ATRAC 데이터를 송신하고, 비동기 패킷에서 ATRAC 데이터와 함께 AUX 데이터 파일을 송신하기 위한 배열에서는, ATRAC 데이터와 AUX 데이터 파일을 명백하게 동시 방식으로 모두 송신하는 것이 가능하다.
2.6 트랜잭션 룰
도 10a는 비동기 통신에 대한 기본적인 트랜잭션 룰을 나타내는 처리 변화 다이어그램을 도시한다. 트랜잭션 룰은 FCF에 따라 규정된다.
도 10a에 도시된 바와 같이, 요구자(송신측)는 단계 S11에서 먼저 요구를 응답자(수신측)에게 송신한다. 요구를 수신하자마자(단계 S12에서), 응답자는 요구자에게 다시 승인을 송신한다(단계 S13). 승인을 수신할 때, 요구자는 응답자가 요구를 받았음을 확실하게 한다(단계 S14).
교대로, 응답자는 요구자로부터의 요구에 응답하여 트랜잭션을 송신한다(단계 S16). 요구를 수신하자마자(단계 S16에서), 응답자는 승인을 다시 요구자에게 송신한다(단계 S17). 승인을 수신할 때, 응답자는 그 요구가 요구자에 의해 수신되었음을 입증한다.
도 10a에서 송신된 요구 트랜잭션은 3개의 카테고리로 분류되는데, 기입 요구, 판독 요구, 및 잠금(lock) 요구로서, 도 10b의 테이블의 왼편에 리스트되어 있다.
기입 요구는 데이터 기입 동작을 나타내는 커맨드이다. 판독 요구는 데이터 판독 동작을 구체화하는 커맨드이다. 이하, 상세히 설명하지는 않으나, 잠금 요구는 교환, 비교, 마스크 동작에 관한 커맨드이다.
기입 요구는 또한 비동기 패킷(도면을 참조하여 이하에서 기술된 AV/C 코맨드 패킷) 내의 코맨드(오퍼랜드)의 데이타 사이즈에 따라 3가지 유형으로 그룹된다. 한 유형의 기입 요구는 비동기 패킷에서 단지 헤더 사이즈에만 따라 코맨드를 전송하기 위한 기입 요구(데이타 쿼드릿)이다. 다른 두 유형의 기입 요구는 기입 요구(데이타 블럭: 데이타 길이 = 4 바이트)과, 기입 요구(데이타 블럭: 데이타 길이 ≠ 4 바이트)이다. 후자의 두 유형의 기입 요구 각각은 코맨드 전송을 위한 데이타 블럭을 비동기 패킷의 헤더에 부가시킨다. 서로 상이한 유형의 두 기입 요구를 만드는 것은 데이타 블럭에 위치된 오퍼랜드의 데이타 사이즈가 한 유형의 요구에서는 4 바이트이고 다른 유형의 요구에서는 4 바이트 이외의 것이다.
기입 요구에 대해, 판독 요구는 또한 비동기 패킷 내의 오퍼랜드의 데이타 사이즈에 따라 3가지 유형, 즉 판독 요구(데이타 쿼드릿), 판독 요구(데이타 블럭: 데이타 길이 = 4 바이트)과, 판독 요구(데이타 블럭: 데이타 길이 ≠ 4 바이트)으로 그룹된다.
응답 트랜잭션이 도 10b 표의 우측에 목록되어 있다.
기입 응답 또는 무응답은 3가지 유형의 기입 요구중 임의의 것에 대응하는 것으로서 정의된다.
판독 응답(데이타 쿼드릿)은 판독 요구(데이타 쿼드릿)에 대응하는 것으로서 정의되고, 판독 응답(데이타 블럭)은 판독 요구((데이타 블럭: 데이타 길이 = 4 바이트)에 대응하거나 판독 요구(데이타 블럭: 데이타 길이 ≠ 4 바이트)에 대응하는 것으로서 정의된다.
잠금 응답은 잠금 요구에 대응하는 것으로서 정의된다.
2-7 어드레싱
도 11a 내지 도 11e는 IEEE 1394 버스의 어드레싱 구조를 도시한 것이다.
도 11a에서 도시된 바와 같이, IEEE 1394 포맷에는 64-비트 버스 어드레스 레지스터(어드레스 공간)가 제공된다.
이 레지스터의 상위 10-비트 영역은 IEEE 1394 버스를 식별하기 위한 버스 ID를 지정한다. 도 11b에서 도시된 바와 같이, 이 영역은 버스 #0 내지 #1,022에 대한 1,023개의 버스 ID까지 설정할 수 있다. 버스 #1,023은 로컬 버스로서 정의된다.
도 11a에서 버스 어드레스에 후속하는 6-비트 영역은 버스 ID에 의해 식별된 IEEE 1394 버스에 접속된 기기의 노드 ID를 지정한다. 도 11c에서 도시된 바와 같이, 노드 ID는 0 내지 62로 번호가 매겨진 63개의 노드 ID에 의해 식별한다.
상기 버스 ID 및 노드 ID를 구비하는 16-비트 영역은 후술될 AV/C 코맨드 패킷의 헤더의 수신지 ID에 대응한다. IEEE 1394 시스템에서, 특정 버스에 연결된 각각의 기기는 버스 ID 및 노드 ID에 의해 식별된다.
도 11a에서 노드 ID에 후속하는 20-비트 영역은 레지스터 공간을 구성한다. 이 레지스터 공간에는 28-비트의 레지스터 어드레스가 후속된다.
이 레지스터 공간은 도 11d에서 도시된 레지스터를 나타내는 값 [F FF FFh]을 갖는다. 이 레지스터의 내용은 도 11e에서 도시된 바와 같이 정의된다. 레지스터 어드레스는 도 11e에서 도시된 레지스터의 어드레스를 지정한다.
요약하자면, 어드레싱 작업은 다음과 같다. 즉, 등시성 사이클 시간 및 자유 채널에 관한 정보는 도 11e의 레지스터 내의 어드레스 512 [0 00 02 00h]부터 예시적으로 시작하는 시리얼 버스-종속형 레지스터를 참조함으로써 얻어진다.
어드레스 1,024 [0 00 04 00h]부터 시작하는 컨피그레이션(configuration) ROM의 내용을 참조함으로써 노드 유형 및 그 노드 유형에 고유한 노드-고유 ID를 인식할 수 있다.
2-8 CIP
도 12는 CIP(공통 등시성 패킷; Common Isochronous Packet)의 구조를 도시한 것이다. 이것은 도 9에서 도시된 등시성 패킷의 데이타 구조이다. IEEE 1394 호환 통신에서는, 상술된 바와 같이, 이 실시예의 MD 레코더/플레잉어에 의해 기록 및 재생되어질 오디오 데이타의 한 유형인 ATRAC 데이타(오디오 데이타)는 등시성 방식으로 전송 및 수신된다. 즉, 리얼 타임 특성을 유지하기에 충분한 데이타량이 등시성 사이클에서 잇따라 전송되는 등시성 패킷에 의해 반송된다.
CIP의 첫번째 32 비트(1 쿼드릿)가 1394 패킷 헤더를 구성한다.
이 패킷 헤더에서, 상위 16-비트 영역은 태그(tag)를 지정하는 2-비트 영역이 이어지는 데이타_길이를 나타낸다. 이 태그에는 채널을 지정하는 6-비트 영역이 이어진다. 이 채널 영역에는 tcode를 지정하는 4-비트가 이어지고, 이 tcode에는 4-비트의 sy code가 이어진다. 1394 패킷 헤더에 이어지는 쿼드릿 영역은 헤더_CRC를 포함한다.
헤더_CRC에 이어지는 2-쿼드릿 영역이 CIP 헤더를 구성한다. CIP 헤더의 상위 쿼드릿에서, 최상위 두 비트는 각각 "0"으로 채워진다. "0" 비트 이후의 6-비트 영역은 SID(ID 번호 전송)를 나타내고, 이 SID에는 DBS(데이타 블럭 사이즈, 즉 패킷 형성을 위한 데이타 증분)를 지정하는 8-비트 영역이 이어진다. DBS 영역에는 (2 비트의) FN 영역과 (3 비트의) QPC 영역이 이어진다. FN 영역은 패킷 형성을 위한 세그먼트의 수를 나타내고, QPC 영역은 세그먼트화를 위해 가산된 쿼드릿의 수를 나타낸다.
QPC 영역 다음에는 소스 패킷에서 헤더의 플래그를 나타내는 (1 비트의) SPH 영역이 이어진다. DBC 영역은 드롭된 패킷을 검출하기 위한 카운터의 값을 포함한다.
CIP 헤더의 하위 쿼드릿에서의 상위 두 비트는 "0"으로 각각 채워진다. "0" 비트에는 (6 비트의) FMT 영역과 (24 비트의) FDF 영역이 이어진다. FMT 영역은 값에 의해 이 CIP에 배치된 데이타의 유형(데이타 포맷)을 식별할 수 있는 신호 포맷(전송 포맷)을 가리킨다. 보다 상세히 기술하자면, 이러한 데이타 유형의 MPEG 스트림 데이타, AUDIO 스트림 데이타, 및 디지탈 비디오 카메라(DV) 스트림 데이타는 FMT 영역에 의해 식별될 수 있다. FMT 영역에 주어진 데이타 포맷은 예시적으로 도 4에서 도시된 CIP 헤더 포맷(501)의 관리 하에 SD-DVCR 리얼 타임 전송(502), HD-DVCR 리얼 타임 전송(503), SDL-DVCR 리얼 타임 전송(504), MPEG2-TS 리얼 타임 전송(506), 또는 오디오 및 곡 리얼 타임 전송(506) 등의 전송 프로토콜에 대응한다.
FDT 영역은 FMT 영역에서 분류된 데이타 포맷의 보다 상세된 카테고리를 지정하는 포맷-종속형 필드이다. 예시적으로, 오디오 데이타는 선형 오디오 데이타 또는 MIDI 데이타로서 보다 상세히 식별될 수 있다.
예를 들어, 이 실시예에서 사용되는 ATRAC 데이타는 우선 FMT 영역 내 오디오 스트림 데이타의 카테고리 하에 데이타 폴링(falling)으로서 표시된다. FDF 영역에 소정값을 설정함으로써, 오디오 스트림 데이타는 또한 ATRAC 데이타가 되는 것으로 도시된다.
FMT 영역이 MPEG 데이타를 나타내면, FDF 영역은 TSF(시간 시프트 플래그)라 칭하는 동기화 제어 정보를 보유한다. FMT 영역이 DVCR(디지탈 비디오 카메라) 데이타를 나타내면, FDF 영역은 도 12의 하측에서 도시된 바와 같이 정의된다. 이 FDF 영역은 초당 필드의 수를 지정하는 (1 비트의) 상위 50/60 영역을 가지며, 이어서 비디오 포맷이 SD 또는 HD인지를 나타내는 (5 비트의) STYPE 영역이 이어진다. STYPE 영역에는 프레임 동기화를 위한 시간 스탬프를 제공하는 SYT 영역이 이어진다.
CIP 헤더에 이어서, FMT 및 FDF 영역에서 표시된 데이타가 "n" 데이타 블럭의 시퀀스에 저장된다. 데이타가 FMT 영역 및 FDF 영역에 의해 ATRAC 데이타인 것으로 도시되면, 데이타 블럭은 ATRAC 데이타를 포함한다.
데이타 블럭은 데이타_CRC 영역에서 종단된다.
2-9 접속 관리(Connection Management)
IEEE 1394 포맷에서는, IEEE 1394 버스에 의해 접속된 기기 간에서의 접속 관계를 정의하는 데 "플러그(plug)"라 칭하는 논리 접속을 사용한다.
도 13은 플러그에 의해 정의된 접속 관계의 전형적인 셋업을 도시한다. 이 셋업은 IEEE 1394 버스를 통해 모두 접속된 VTR1, VTR2, 셋트톱 박스(STB: 디지탈 위성 방송 튜너), 모니터, 및 디지탈 스틸 카메라를 구성한다.
두 형태의 플러그 기반 IEEE 1394 접속이 있는데, 즉 지점간 접속(point to point connection)과 방송 접속(broadcast connection)이다.
지점간 접속은 송신 기기와 수신 기기 간의 관계를 특정한다. 데이타 전송은 전송 기기에서 수신 기기까지의 특정 채널을 통해 발생된다.
한편, 방송 접속은 송신 기기의 필요없이 데이타 전송에 의해 이용될 수신 기기와 채널을 특정하는 것이다. 수신 기기는 송신 기기를 식별하지 않고 송신되어진 데이타를 수신하여 수신된 데이타의 내용에 따라 소정의 프로세스를 행한다.
도 13의 셋업은 지점간 접속의 두 상태를 나타내는 데, 한 상태에서는 STB가 데이타를 전송하고 VTR1이 채널 #1을 통해 그 데이타를 수신하며, 다른 한 상태에서는 디지탈 스틸 카메라가 데이타를 전송하고 VTR2가 채널 #2를 통해 그 데이타를 수신한다.
또한, 도 13에서는 방송 원리에 따라 데이타를 전송하기 위한 디지탈 스틸 카메라의 방송 접속 상태를 도시한다. 방송 데이타는 모니터에 의해 수신되는 것으로 도시되며, 이 모니터는 소정의 응답 프로세스를 수행한다.
상기 접속(플러그)은 구성된 각 기기의 어드레스 공간에 포함된 PCR(플러그 제어 레지스터)에 의해 확립된다.
도 14a는 출력용 플러그 제어 레지스터(oPCR[n])의 구조를 도시하고, 도 14b는 입력용 플러그 제어 레지스터(iPCR[n])의 구조를 도시한다. 레지스터 oPCR[n] 및 iPCR[n]은 각각 32 비트의 사이즈를 갖는다.
도 14a의 레지스터 oPCR에서는, 예시적으로 최상위 비트(온-라인)에 셋트된 "1"은 방송 접속에 의해 데이타를 전송하는 것을 나타내고, "0"은 데이타가 채널-채널 번호가 MSB에 대해 제11 비트부터 시작하는 6-비트 채널 번호 영역에서 셋트됨-을 통해 지점간 접속으로 전송되는 것을 나타낸다.
도 14b의 레지스터 iPCR에서는, 예시적으로 최상위 비트(온-라인)에 셋트된 "1"은 방송 접속에 의해 데이타를 수신하는 것을 나타내고, "0"은 데이타가 채널-채널 번호가 MSB에 대해 제11 비트부터 시작하는 6-비트 채널 번호 영역에서 셋트됨-을 통해 지점간 접속으로 수신되는 것을 나타낸다.
2-10 FCP 하의 코맨드 및 응답
이 실시예의 IEEE 1394 포맷에서는, AVX 데이타(JPEG에 기초하고 MD 레코더/플레이어에 의해 기록 및 재생되는 화상 파일 및 텍스트 파일)가 비동기식 통신 방식으로 송신 및 수신된다.
이 실시예에 따르면, 비동기식 통신 방식에 의한 AUX 데이타의 전송은 도 4에서 도시된 FCP(402) 하에 조정된다. 이하에서는 FCP에 의해 관리되는 전송 트랜잭션에 대해 기술하기로 한다.
비동기식 통신 방식에서 규정된 기입 트랜잭션(도 10a 및 도 10b을 참조)은 FCP 하에 사용된다. AVX 데이타는 이 실시예에서 FCP와 보조를 맞추면서 비동기식 통신의 기입 트랜잭션을 사용함으로써 전송된다.
FCP를 지원하는 기기 각각은 코맨드/응답 레지스터를 구비한다. 기입 트랜잭션은 도 15를 참조하여 후술될 바와 같이 코맨드/응답 레지스터에 메시지를 기입함으로써 구현된다.
도 15는 단계(S21)에서 제어기가 트랜잭션 요구를 발생하여 코맨드 전송을 위한 타겟에 기입 요구 패킷을 전송하는 프로세스 전이 다이어그램을 도시한다. 단계(S22)에서, 타겟은 기입 요구를 수신하여 코맨드/응답 레지스터에 데이타를 기입한다. 타겟은 제어기에 확인 응답을 되돌려 보냄으로써 제어기는 확인 응답을 수신한다(S23 내지 S24). 지금까지의 단계가 코맨드 전송 프로세스를 구성한다.
코맨드에 응답하는 프로세스에서, 타겟은 기입 요구 패킷을 전송한다(S25). 기입 요구 패킷을 수신함에 의해, 제어기는 코맨드/응답 레지스터에 데이타를 기입한다(S26). 수신된 기입 요구 패킷에 의해, 제어기는 또한 타겟에 확인 응답을 전송한다(S27). 타겟은 확인 응답을 수신함으로써 기입 요구 패킷이 제어기에 의해 수신된 것을 획인할 수 있다(S28).
즉, FCP에 따른 데이타 전송(트랜잭션)은 두 프로세스에 기초하는데, 즉 제어기로부터 타겟으로의 코맨드 전송 프로세스와, 타겟으로부터 제어기로의 응답 전송 프로세스이다.
2-11 AV/C 코맨드 패킷
도 4를 참조하여 기술한 바와 같이, FCP에 의해 여러 AV 기기들이 AV/C 코맨드를 이용하여 비동기식 통신 방식으로 통신할 수 있다.
도 10a 및 도 10b를 참조하여 기술된 바와 같이, 3 종류의 트랜잭션인 기입, 판독 및 잠금이 비동기식 통신에서 규정되어 있다. 실제로, 여러 트랜잭션과 보조를 맞추면서 기입 요구/응답 패킷, 판독 요구/응답 패킷, 및 잠금 요구/응답 패킷이 사용된다. FCP의 경우에는, 상술된 바와 같이 기입 트랜잭션을 사용한다.
도 16은 기입 요구 패킷(비동기식 패킷(데이타 블럭의 기입 요구)의 포맷을 도시한다. 이 실시예는 기입 요구 패킷을 그 AV/C 코맨드 패킷으로서 사용한다.
기입 요구 패킷 중의 상위 5개 쿼드릿(즉, 제1 내지 제5 쿼드릿)이 패킷 헤더를 구성한다. 이 패킷 헤더의 제1 쿼드릿 내의 상위 16-비트 영역은 수신지_ID, 즉 데이타 전송 수신지로서 기능하는 노드의 ID를 가리킨다. 수신지 ID에는 패킷 번호를 나타내는 6-비트 "t1"(트랜잭트 레이블) 영역이 이어진다. 이 6-비트 영역에는 해당 패킷이 초기에 전송된 패킷인지 또는 재전송된 패킷인지를 표시하는 2-비트 "rt"(재시도 코드) 영역이 이어진다. 이 "rt" 영역에는 코맨드 코드를 지정하는 4-비트 "tcode"(트랜잭션 코드) 영역이 이어진다. 이 "tcode" 영역에는 패킷의 우선순위를 표시하는 4-비트의 "pri" (우선순위) 영역이 이어진다.
패킷 해더의 제2 쿼드릿 내의 상위 16-비트 영역은 소스_ID, 즉 데이타 전송 소스로서 기능하는 노드의 ID를 가리킨다.
제2 쿼드릿 및 총 48 비트를 차지하는 제3 쿼드릿 전체 내의 하위 16-비트 영역은 두 어드레스, 즉 코맨드 레지스터(FCP_COMMAND 레지스터)와 응답 레지스터(FCP_RESPONSE 레지스터), 를 표시하는 수신지_오프셋을 가리킨다.
수신지_ID 및 수신지_오프셋은 IEEE 1394 포맷에서 규정된 64-비트 어드레스 공간에 대응한다.
제4 쿼드릿 내의 상위 16-비트 영역은 데이타_길이를 포함한다. 이 영역은 후술될 데이타필드(도 16에서 두꺼운 선으로 둘러싸여 도시)의 데이타 사이즈를 가리킨다. 데이타_길이 영역에는 tcode를 확장할 때 사용된 확장_tcode 영역이 이어진다.
제5 쿼드릿을 구성하는 32-비트 영역은 헤더_CRC를 표시한다. 이 영역은 패킷 헤더를 체크섬하기 위한 CRC_계산값을 포함한다.
데이타 블럭은 패킷 헤더에 이어지는 제6 쿼드릿부터 시작하여 배열된다. 데이타필드는 데이타 블럭의 시작부에 형성된다.
제6 쿼드릿에 앞서는 데이타필드를 형성하는 상위 4 바이트는 CTS(코맨드 및 트랜잭션 셋트)를 기술한다. CTS 영역은 해당 기입 요구 패킷의 코맨드 셋트의 ID를 표시한다. 예를 들어, 도면에서 도시된 "0"의 CTS 값은 데이타필드의 내용을 AV/C 코맨드로서 정의한다. 환언하자면, 기입 요구 패킷은 AV/C 코맨드 패킷으로서 식별된다. 따라서, 이 실시예에서는, CTS 영역은 "0"으로 채워져 FCP가 AV/C 코맨드를 사용할 수 있게 된다.
CTS에 이어지는 4-비트 영역은 "ctype"(코맨드 종류, 즉 코맨드 기능 분류) 또는 코맨드에 대응하는 프로세스의 결과(즉, 응답)를 나타내도록 기입된 응답을 갖는다.
도 17은 상기 코맨드 종류(ctype)와 응답에 대한 정의를 목록한 것이다. 값 [0000] 내지 [0111]은 "ctype"(코맨드)로서 사용하도록 정의된다. 상세히 기술하자면, 값 [0000]은 CONTROL로 정의되고, 값 [0001]은 STATUS로 정의되고, 값 [0010]은 INQUIRY로 정의되고, 값 [0011]은 NOTIFY로 정의된다. 값 [0100] 내지 [0111은 현재 정의되어 있지 않다(예약).
CONTROL은 외부에서 기능을 제어하는 데 사용되는 코맨드이고, STATUS는 외부로부터 상태를 조회하기 위한 코맨드이고, INQUIRY는 제어 코맨드의 지원 여부를 외부에서 조회하는 데 사용되는 코맨드이고, NOTIFY는 외부 엔티티에 상태 변경을 통지하는 것을 요구하는 데 사용되는 코맨드이다.
값 [1000] 내지 [1111]은 응답으로 사용하도록 정의되어 있다. 상세히 기술하자면, 값 [1000]은 NOT IMPLEMENTED로 정의되고, 값 [1001]은 ACCEPTED로 정의되고, 값 [1010]은 REJECTED로 정의되고, 값 [1011]은 IN TRANSITION으로 정의되고, 값 [1100]은 IMPLEMENTED/STABLE로 정의되고, 값 [1101]은 CHANGED로 정의되고, 값 [1110]은 예약으로 정의되고, 값 [1111]은 INTERIM으로 정의된다.
상기 응답은 코맨드 종류에 따라 선택적으로 사용된다. 예를 들어, 4개 응답 NOT IMPLEMENTED, ACCEPTED, REJECTED, 및 INTERIM 중 하나는 응답자의 상태에따라 선택적으로 사용된다.
도 16에서, c타입/응답 영역 다음으로 서브유닛-타입을 포함하는 5비트 영역이 온다. 서브유닛-타입은 커맨트 전송의 행선지로서 또는 응답 전송의 소스로서 역할하는 서브유닛(기기)을 나타낸다. IEEE 1394 포맷에서는, 각각의 기기를 유닛이라 하고 유닛 내의 기능 유닛을 서브유닛이라 한다. 일례로, 유닛으로서의 전형적인 VTR은 2개의 서브유닛, 즉 지상 및 위성 방송을 수신하기 위한 튜너와, 비디오 카세트 리코더/플레이어를 포함한다.
서브유닛-타입은 일례로 도 18a에 도시된 바와 같이 정의된다. 구체적으로, 값 [00000]은 모니터로 정의되고, [00001] 내지 [00010]은 예약(reserve)된다. 값 [00011]은 디스크 리코더/플레이어로, [00100]은 VCR로, [00101]은 튜너로, [00111]은 카메라로 정의되고, [01000] 내지 [11110]은 예약된다. 값 [11111]은 서브유닛이 존재하지 않는 경우 사용하기 위한 유닛으로 정의된다.
도 16에서, 서브유닛 타입 영역 다음으로 오는 3비트 영역은 동일 타입의 복수개의 서브유닛이 존재하는 경우 어느 한 서브유닛을 식별하기 위한 "id"(Node_ID)를 포함한다.
"id"(Node_ID) 다음으로 오는 8비트 영역은 오피코드(opcode)를 포함하는데, 오피코드 다음으로는 오퍼랜드(operand)가 온다.
오피코드는 연산 코드를 나타낸다. 오퍼랜드는 오피코드가 필요로 하는 정보(파라미터)를 포함한다. 오피코드들은 각각의 서브유닛마다 문제의 서브유닛에 고유한 오피코드 리스트에서 정의된다. 일례로, 서브유닛이 VCR이면, PLAY(재생) 및 RECORD(녹화)와 같은 각종 커맨드들이 그 서브유닛에 대해 정의된다. 오퍼랜드는 각각의 오피코드마다 정의된다.
도 16에서 6번째 쿼드렛을 구성하는 32비트 영역은 필수 데이터필드이다. 필요하다면, 이 데이터필드 다음에 오퍼랜드가 부가될 수도 있다(부가적인 오퍼랜드로서 도시됨).
데이터필드 다음으로는 data_CRC 영역이 온다. 필요할 경우 이 data_CRC 영역 전에 패딩(padding)이 위치할 수 있다.
2-12 플러그(Plugs)
다음으로 IEEE 1394 포맷에서의 플러그에 대한 일반적인 정보를 설명한다. 도 14a 및 14b를 참조하여 상술한 바와 같이, 플러그는 IEEE 1394 포맷과 일치하여 기기들 간의 논리적 접속을 나타낸다.
도 19에 도시된 바와 같이 비동기 통신에서 유효한 커맨드(요구)와 같은 데이터가 생산자(producer)로부터 컨슈머(consumer)에게 송신된다. 생산자는 전송기로서 역할하는 기기를 나타내고 컨슈머는 IEEE 1394 인터페이스에 따라서 수신기로서 역할하는 기기를 나타낸다. 컨슈머는 도 19에 음영으로 도시된 세그먼트 버퍼로서, 생산자에 의해 기록된 데이터를 수용한다.
IEEE 1394 시스템에서, 특정 기기들을 생산자 및 컨슈머로 지명하기 위한 정보(이 정보를 접속 관리 정보라 한다)는 도 19에서 꼬인 라인으로 표시된 소정의 플러스 어드레스 위치들에 보유된다. 이 플러그 어드레스 다음에 세그먼트 버퍼가 위치한다.
뒤에 설명될 것과 같이, 고객이 데이터를 기록할 수 있는 세그먼트 버퍼 어드레스의 범위 (따라서 상기 범위는 기록가능한 데이터 양을 표시함)는 고객측에서 관리되는 리미트 카운트 레지스터 (limit count register)에 의해 결정된다.
도 20A 내지 20C는 비동기 통신용 플러그 어드레스 스페이스의 구조를 도시한다.
도 20A에 도시된 것과 같이, 64 비트 플러그 어드레스 스페이스는 도 20B에 도시된 것과 같이 개별 노드의 어드레스 스페이스내에 플러그가 있는 것과 같은 방식으로 215(64X) 노드로 나누어 진다. 각 플러그는 편복선 (braided line)이 표시하는 레지스터 및 도 20C에 도시된 것과 같이 그림자로 표시된 세그먼트 버퍼를 포함한다. 상기 레지스터는 뒤에 설명되는 것과 같이, 전송측 (생산자)과 수신측 (소비자) 사이에서 데이터를 교환하는데 필요한 정보 (즉, 전송된 데이터 크기 및 수신가능한 데이터 크기)를 포함한다. 상기 세그먼트 버퍼는 생산자에서 소비자로 보내진 데이터를 기록하는 영역이다. 최소한의 세그먼트 버퍼 크기는 64 바이트이라는 것이 예시적으로 정해져 있다.
도 21A는 내용이 도 20C의 것과 동일한 전형적인 플러그 어드레스를 도시한다.
도 21A에 도시된 바와 같이, 플러그 어드레스는 세그먼트 버퍼의 앞에 있는 레지스터에 의해 헤더 (head)된다.
도 21B에 도시된 것과 같이, 상기 레지스터의 내부 구조는 각각 크기가 32 비트의 리미트 카운트 레지스터 [1] 내지 [14]의 앞에 오는 32 비트 생산자 카운트 레지스터에 의해 헤더된다. 즉, 하나의 생산자 카운트 레지스터 및 14 리미트 카운트 레지스터가 상기 레지스터를 구성한다. 이 구조에서, 사용되지 않는 영역은 상기 리미트 카운트 레지스터 (14)의 뒤에 온다.
도 21A 및 21B에 도시된 상기 플러그 구조는 도 21C에 도시된 오프셋 어드레스에 의해 나타낸다.
오프셋 어드레스 (0)는 소비자 포트 (생산자 카운트 레지스터)를 나타내고, 오프셋 어드레스 (4), (8), (12) 내지 (56)은 생산자 포트 [1] 내지 [14]를 나타낸다. 오프셋 어드레스 (60)은 예비로 정의된 사용되지 않는 영역을 나타낸다. 오프셋 어드레스 (64)는 세그먼트 버퍼를 나타낸다.
도 22A 및 22B는 생산자 및 소비자 모두에 대한 플러그 구조를 도시한다.
사실상 상기 플러그 구조와 함께, 비동기 통신은 뒤에 설명될 예정인 데이터 교환 절차와 함께 상기 생산자 카운트 레지스터, 상기 리미트 카운트 레지스터 및 상기 세그먼트 버퍼로 데이터를 기록함으로서 실행된다. 상기 기록 동작은 상술한 기록 트랜젝션 (transaction)의 카테고리에 해당된다.
상기 생산자는 데이터를 소비자의 생산자 카운트 레지스터에 기록한다.
좀 더 구체적으로, 생산자는 먼저 생산자 측의 데이터 전송에 관한 정보를 생산자에게 특정된 어드레스의 생산자 카운트 레지스터에 기록한다. 그 후, 생산자 카운트 레지스터의 내용은 소비자 측의 생산자 카운트 레지스터로 기록된다.
상기 생산자 카운트 레지스트는 생산자에 의한 단일 기록 동작으로 소비자의 세그먼트 버퍼에 기록된 데이터의 크기를 포함한다. 즉, 생산자 카운트 레지스터로 데이터를 기록한 생산자는 소비자 세그먼트 버퍼로 기록된 데이터의 크기를 보고하는 처리를 실행한다.
이에 응답하여, 소비자는 생산자의 리미트 카운트 레지스터로 데이터를 기록한다.
좀 더 구체적으로, 상기 소비자는 먼저 상기 생산자에 대응하여 표시된 리미트 카운트 레지스터 [1] 내지 [14] (레지스터 [n])중의 하나로 자신의 세그먼트 버퍼의 크기를 기록한다. 그 후, 상기 리미트 카운트 레지스터 [n]의 내용은 생산자의 리미트 카운트 레지스터 [n]에 기록된다.
리미트 카운트 레지스트 [n]에 기록된 데이터에 따라, 생산자는 예시적으로 단일 기록 동작으로 자신의 세그먼트 버퍼에 기록된 데이터의 크기를 결정한다. 상기 세그먼트 버퍼의 내용은 다시 소비자의 세그먼트 버퍼로 기록된다. 소비자 세그먼트 버퍼로의 상기 기록 동작은 비동기 통신의 데이터 전송을 구성한다.
2-13. 비동기 접속 전송 절차
도 22A 및 22B의 인터-플러그 (inter-plug) (즉, 생산자-소비자) 구조가 결정된 것으로 가정된 비동기 접속에 의해 전송 및 수신하기 위한 기본 절차들이 도 23의 처리 변환 (proces transition) 도면을 참조로 하여 아래에 설명된다.
도 23에 도시된 전송 및 수신 절차는 비동기 통신용 FCP에 의해 규정된 환경에서 AV/C 명령 (기록 요구 패킷)을 사용하여 실행된다. 상기 실시예에 의해 취급되는 AUX 데이터는 IEEE 1394 시스템 내의 절차를 사용하여 전송 및 수신된다. 도 22A 및 22B에 도시된 처리는 비동기 접속에 의한 통신 동작만을 나타내는 것을 유의하고, 상기 기록을 어드레스하는 통신 처리 및 AUX 데이터의 플레이백은 나중에 설명될 것이다.
도 15에 도시된 바와 같이, 실제의 비동기 접속 셋업에서는, 코멘드 송신 이후에 확인응답이 송신 및 수신된다. 도 23의 셋업에서는 간략화를 위해 확인응답 교환에 대한 도시를 생략하였다.
IEEE 1394 인터페이스를 위해서, 인터-플러그 (즉, 기기간) 접속 관계는 상술한 생산자-소비자 관계 외에도 제어기-타겟 관계를 포함한다. IEEE 1394 시스템에서, 생산자-소비자 관계로 설정된 기기들은 제어기-타겟 관계로 배열된 기기와 일치할 수도 일치하지 않을 수 있다. 즉, 생산자로서 지정된 기기 이외의 제어기 기능을 제공을 약정하는 기기가 존재할 수 있다. 그러나, 본 예에서는, 생산자-소비자 관계가 제어기-타겟 관계와 동일하다고 가정한다.
도 23의 송신 과정 중 단계 S101에서는, 생산자가 소비자에게 접속 요구를 송신한다. 이 접속 요구는 생산자-소비자 간 접속을 요구하는 코멘드로서, 생산자에 의해 소비자에게 전송된다. 코멘드는 생산자의 레지스터 어드레스에 속한 소비자를 알려준다.
단계 S102에서 소비자가 접속 요구를 수신하면, 소비자는 생산자 측에 대한 레지스터의 어드레스를 확인한다. 단계 S103에서, 소비자는 그 응답으로 접속 허가를 생산자에게 송신한다. 단계 S104에서 생산자에 의한 접속 허가 수신시에, 생산자와 소비자 사이에 접속이 설정되고 이에 의해 그 다음 데이터 송신 및 수신이 행해진다.
상술한 바와 같이 셋업된 접속에 의해, 단계 S105에서, 소비자는 한계 카운트 레지스터 (이하 간단히 한계 카운터로 칭함) 기록 요구를 생산자로 송신한다. 생산자는 단계 S106에서 한계 카운트 기록 요구를 수신한 후, 단계 S107에서 한계 카운터 기록 허가를 소비자에게 송신한다. 단계 S108에서, 소비자는 한계 카운트 기록 허가를 수신한다. 한계 카운터 기록 요구와 그 다음의 기록 허가의 전송은 이후에 데이터 세그먼트에 기록될 데이터의 크기 (즉, 세그먼트 버퍼 크기)를 결정하는 프로세스이다.
단계 S109에서, 생산자는 소비자에게 세그먼트 기록 요구를 전송한다. 단계 S110에서 이 세그먼트 버퍼 기록 요구가 소비자에 의해 수신된다. 그 응답으로, 단계 S111에서 소비자는 세그먼트 버퍼 기록 허가를 생산자에게 송신한다. 단계 S112에서 생산자는 세그먼트 버퍼 기록 허가를 수신한다.
단계 S109 내지 S112의 실행은 생산자의 세그먼트 버퍼로부터 소비자의 세그먼트 버퍼로 데이터를 기록하는 단일 프로세스를 완성한다.
단계 S109 내지 S112에서, 데이터는 도 9에 도시된 단일 동기 패킷의 송신에 의해 기록된다. 비동기 패킷 안으로 전송된 데이터 크기가 한계 카운트 레지스터에 의해 지정된 데이터 크기보다 작다면, 그리고 단일 비동기 패킷을 이용하는데 필요한 데이터의 송신이 완료되지 않는다면, 세그먼트 버퍼 용량이 채워질 때까지 단계 S109 내지 S112가 반복된다.
세그먼트 버퍼로의 기록 동작이 단계 S109 내지 S112에서 완료되면, 단계 S113에서 생산자는 소비자에게 생산자 카운트 레지스트 (이하, 간단히 생산자 카운터라 칭함) 기록 요구의 송신을 행한다. 소비자는 단계 S114에서 생산자 카운트 기록 요구를 수신하여 그 생산자 카운트 레지스터에 대한 기록 동작을 수행한다. 단계 S115에서, 소비자는 생산자에게 생산자 카운트 기록 허가를 송신한다. 단계 S116에서 생산자는 생산자 카운트 기록 허가를 수신한다.
상기 프로세스는 생산자로부터 단계 S109 내지 S112에서 전송된 데이터 크기의 소비자를 소비자 세그먼트 버퍼로 알린다.
단계 S117에서, 프로세스는 단계 S113 내지 S116으로 이루어진 생산자 카운트 기록 프로세스 이후의 한계 카운트 기록 동작을 수행하기 위해 초기화된다. 특히, 단계 S117 내지 S120에 도시된 바와 같이 한계 카운트 기록 요구는 소비자로부터 생산자로 송신된다. 이에 대한 응답으로, 생산자는 한계 카운트 기록 허가를 소비자에게 송신한다.
상기 단계 S109 내지 S120은 비동기 접속에 의한 데이터 송신 과정을 단일 세트로 구성한다. 송신될 데이터의 크기가 세그먼트 버퍼 크기보다 크다면, 그리고 일련의 단계 S109 내지 S120에서 데이터 송신이 완료되지 않았다면, 데이터 송신이 완료될 때까지 단계 S109 내지 S120이 반복된다.
데이터 송신이 완료되면, 단계 S121에서 생산자는 단절 요구를 소비자에게 송신한다. 소비자는 단계 S122에서 단절 요구를 수신하고 단계 S123에서 단절 허가를 송신한다. 생산자는 단계 S124에서 단절 허가를 수신하고, 비동기 접속에 의한 데이터 송신 및 수신을 완료한다.
3. 제어 프로그램
3-1 개요
도 1을 참조하여 설명한 바와 같이, 퍼스널 컴퓨터(113)는 IEEE 1394 버스(116)를 통해 퍼스널 컴퓨터(113)에 접속된 오디오 기기를 (원격 제어 방식으로) 제어하기 위한 어플리케이션 소프트웨어(프로그램)을 가지고(내장하고) 있다. 이 프로그램의 실행을 통해 복수의 오디오 기기의 제어를 실현할 수 있다. 이하에서는 이 원격 제어 프로그램을 "제어 프로그램"으로 언급한다.
본 실시예에 따른 제어 프로그램에서는 소위 오브젝트 지향 프로그래밍 시스템(이하에서는 OOPS로 약함)이 이용된다.
오브젝트 지향 프로그램은 재사용 가능하고 확장성이 있는 프로그램을 위한 컴퓨터 프로그래밍 기술로서 알려져 있다.
예를 들면, 종래의 프로그래밍 기술이 새로운 기능 요구 및 새로운 형태의 데이터에 쉽게 적응할 수 없는데 반해, 오브젝트 지향 프로그램은 새로운 요구가 발생할 때마다 재사용 가능하고 확장성이 있는 것으로 간주된다.
다른 종래의 프로그래밍 기술에서는, 특정 데이터 세트 상에 실행되어야 할 방법이 예를 들면 하일라이트된다. 반면에, OOPS에서는 그들에게 작용하는 특성과 액션을 갖는 실제 세계(구체화된) 오브젝트가 하일라이트된다.
여기에서 오브젝트는 특정 시스템 및 사용자가 관심을 갖는 엔티티와 관련된 정보를 포함하는 데이터 구조를 말한다. 유사한 특성과 공통의 액션을 갖는 오브젝트는 오브젝트 클래스에 속하는 인스턴스 오브젝트로서 알려져 있다. 그러므로, 각 인스턴스 오브젝트(즉 오브젝트의 본질)는 시스템내의 엔티티와 관련된 정보를 포함하고, 클래스 오브젝트는 인스턴스 오브젝트에 관련된 정보를 포함한다.
오브젝트 지향 프로그래밍 시스템에서, 액션은 데이터를 포함하거나 데이터에 숨겨진 오브젝트에 액션 요구(또는 메시지)를 전송함으로써 달성된다. 액션 요구에 의해 발행(issue)된 스페시피케이션 다음에, 이 오브젝트가 데이터에 요구된 액션을 실행한다. 이 때, 액션 요구측은 실제 데이터가 어떻게 보이는지 또는 오브젝트가 데이터를 어떻게 오퍼레이팅하는지를 알 필요가 없다.
도 24를 참조하면, 하나의 오브젝트의 개략적인 모습을 도시하고 있다.
여기에서, 오브젝트는 데이터 구조와, 이 데이터 구조에 액세스하기 위한 일련의 오퍼레이션을 지칭한다. 이러한 오브젝트의 프레임은 방법들에 의해 인캡슐(encapsulate)된다. 방법은 오브젝트의 데이터 구조를 액세싱할 수 있는 액션(또는 기능)이다.
오브젝트로서의 데이터 구조는 다수의 슬롯을 구비한 프레임으로 나타낼 수 있는데, 각 슬롯은 거기에 포함된 데이터의 특성을 포함한다. 특성은 기본적인 부재, 즉 정수 또는 시퀀스, 또는 다른 오브젝트 인스턴스(즉 본질)에 대한 포인터로서의 오브젝트가다.
상기 언급한 구조로 인해, OOPS의 주요한 특성을 종종 인캡슐레이션(encapsulation)이라 부른다. 설명된 바와 같이, 프레임은 개개의 각 조각의 데이터 주위에 배열된 방법들에 의해 인캡슐되고, 프레임을 액세싱하는 것은 주위 방법들에 의해 핸들링된다.
특정 오브젝트의 방법들만이 그 오브젝트의 데이터 구조를 액세스하도록 허용되기 때문에, 데이터는 독립성을 획득한다. 오브젝트내의 데이터 구조는 그 오브젝트와 관련된 방법들에 의해서만 알려질 수 있다.
OOPS에서, 오브젝트에 무엇을 해야할 지를 말하는 메시지는 그 오브젝트에 전송되고, 그 오브젝트에 의해 소유된 방법들 중 하나를 실행하도록 요구한다. 응답에서는, 오브젝트는 수신된 메시지가 실행되어야 할 방법을 선택한다. 방법의 실행시, 오브젝트는 제어를 그 방법의 실행 결과에 따라 불러진 루틴으로 복귀한다.
3-2 제어 프로그램의 구성
이하에서는 본 발명에 따른 전술한 OOPS에 기초하여 제어 프로그램에 대해서 설명한다.
도 25은 본 실시예에 따른 제어 프로그램을 개략적으로 나타낸 것이다.
알려진 바와 같이, OOPS는 "클래스"라 불리는 개념을 갖고 있다. 이 클래스는 오브젝트를 발생시키는 모델로 파악된다. 특정한 속성을 클래스에 부여하면 오브젝트가 엔티티(즉, 인스턴스 오브젝트)로서 발생된다.
본 실시예의 제어 프로그램은 도 25에 도시된 다음의 클래스를 갖고 있다.
동작 클래스(701)는 오디오 기기를 제어하기 위한 동작을 수신한다.
기기 관리 클래스(702)는 IEEE 1394 버스 상에 존재하는 오디오 기기(또는 단순히 기기)를 검출하여, 후술될 오디오 기기 오브젝트를 발생시키고 관리한다.
수퍼 클래스(703)는 오디오 기기 제어를 추상화한다.
오디오 기기 제어 클래스(704)는 수퍼 클래스로부터 추상화된 오디오 기기 제어를 실행한다.
전술한 클래스들은 다음과 같이 동작한다.
먼저, 제어 프로그램이 시작되면, 동작 클래스(701)와 기기 관리 클래스(702)가 단 하나의 인스턴스(즉, 엔티티) 만이 예로서 존재하는 정지 상태에 있다.
기기 관리 클래스(702)는 IEEE 1394 버스(116) 상에서 오디오 기기를 검출한다. 검출된 오디오 기기에 대해서, 오디오 기기 제어 클래스(704)는 인스턴스 오브젝트들인 오디오 기기 오브젝트들(705-1 내지 705-n)을 발생시킨다.
즉, 도면에서 오디오 기기 오브젝트들(1 내지 n)로 도시된 바와 같이, IEEE 1394 버스(116) 상에 존재하는 것으로 검출된 오디오 기기의 수에 따라서 2 또는 그 이상의 오디오 기기 오브젝트들이 발생될 수 있다.
발생된 오디오 기기 오브젝트들은 제어를 위해 일의적으로 번호가 매겨진다(즉, ID가 할당된다). 여기서, 기기 관리 클래스(702)는 적어도 검출된 기기들(즉, 오디오 기기들)의 번호와 그들에 할당된 ID들로 구성된 기기 정보를 갖고 있다고 가정된다.
오디오 기기 오브젝트가 생성되는 오디오 기기들은 동종이 될 필요는 없다는 점에 유의한다.
예컨대, MD 플레이어/레코더와 CD 플레이어가 IEEE 1394 버스에 접속될 때, 이 기기들은 이종임에도 불구하고 이들 기기 모두에 대해 오디오 오브젝트들이 생성될 수 있다.
이러한 특징을 실현하기 위하여, 이종 기기들 간에 유용한 프로그램 내용이 예컨대 도 25에 도시된 바와 같이 오디오 기기 제어 클래스(704)로서 사전에 생성된다. 그리고 버스에 접속된 오디오 기기의 종류를 검출하기 위한 구성이 사전에 만들어진다. 오디오 기기 제어 클래스(704)를 이용하여 오디오 기기 오브젝트를 생성하기 위해서, 검출된 기기의 종류에 적합한 속성만이 설정될 수 있다.
사용자(700)(사용자 애플리케이션(동작 GUI)을 나타냄)가 특정 오디오 기기를 동작시겼을 때, 사용자(700)는 현재 관리되고 있는 오디오 기기들에 대한 기기 정보(예컨대, 오디오 기기의 번호와 오디오 기기 오브젝트의 ID들)에 대한 동작 클래스(701)를 요구한다. 응답시, 동작 클래스(701)는 기기 관리 클래스(702)로부터의 기기 정보를 검색하여 그 기기 정보를 사용자(700)에게 전송한다. 사용자(700)는 기기 정보를 수신하면 오디오 기기 ID를 지정하고 그에 따라서 동작 클래스에 지시를 내린다.
동작 클래스(702)는 사용자(700)에 의해 지정된 ID를 가진 오디오 기기 오브젝트(705)를 기기 관리 클래스(702)로부터 획득한다. 그 다음, 동작 클래스는 획득된 오디오 기기 오브젝트(705)에 대한 동작 지시를 개시한다.
전술한 처리에 따라서, IEEE 1394에 접속된 오디오 기기는 그 ID를 사용자(700)가 지정하는 것만으로도 동작(즉, 원격 제어)할 수가 있다.
실제로는 도작 클래스(701)와 기기 관리 클래스(702)는 전술한 동작의 실행 전에 각각 동작 오브젝트(701)와 기기 관리 오브젝트(702)로서의 오브젝트로 만들어진다는 것에 유의한다.
다음에는, 도 26 내지 28을 참조로, 전술한 동작들에 대응하는 동작 오브젝트( 또는 동작 클래스)(701), 기기 관리 오브젝트(또는 기기 관리 클래스)(702), 및 오디오 기기 오브젝트(705) 각각에 대한 입력 메시지, 작동, 및 출력 메시지의 예시적인 설정에 대해서 설명한다.
버스에 접속된 오디오 기기의 정보 획득이 도 26에 도시된 바와 같이 입력 메시지로서 얻어지면, 동작 오브젝트(702)는 작동으로서 기기 관리 오브젝트(702)로부터 버스 접속 오디오 기기 번호에 대한 오디오 기기 오브젝트(705)를 획득한다. 그 다음, 출력 메시지로서 기기 정보 획득 이벤트를 기기 관리 오브젝트(702)에 전송한다.
버스 접속 오디오 기기에 대한 동작 이벤트가 입력 메시지인 경우에는, 동작 오브젝트는 작동으로서 동작 지시를 대응 오디오 기기의 오디오 기기 오브젝트(705)에 전송한다. 그 다음, 동작 오브젝트는 예컨대 PLAY와 같은 요구되는 동작 메시지를 출력 메시지로서 오디오 기기 오브젝트(705)로 전송한다.
입력 메시지가 도 27에 도시된 바와 같이 초기화 이벤트 또는 버스 재설정 이벤트라면, 기기 관리 오브젝트(702)는 작동으로서 모든 버스 접속 오디오 기기를 검출하고, 관리를 위해 이들 검출된 오디오 기기들 각각에 대한 오디오 기기 오브젝트(705)를 발생시킨다.
입력 메시지가 기기 정보 획득 이벤트인 경우에는, 기기 관리 오브젝트는 기기 관리 오브젝트가 관리하는 오디오 기기 오브젝트(705)에 대한 정보(또는 기기 정보)를 작동으로서 전송한다. 출력 메시지로서, 기기 관리 오브젝트는 오디오 기기 오브젝트에 대한 정보(기기 정보)를 동작 오브젝트(701)로 복귀시킨다.
기기 관리 오브젝트(702) 내부의 관리 데이터는 도 27의 하반부에 도시되어 있다. 관리 데이터에서, 발생된 오디오 기기 오브젝트(705-1 내지 705-n)의 전용 ID는 전술한 바와 같이 ID : 1(오디오 기기 오브젝트 1의 포인터), ID : 2(오디오 기기 오브젝트 2의 포인터), ..., ID : n(오디오 기기 오브젝트 n의 포인터)으로 설정된다.
도 28에는 오디오 기기 오브젝트(705)의 경우가 도시되어 있다.
여기서는, PLAY(재생 시작), STOP(기록/재생 중지), 및 RECORD(기록 시작)가 예로서 입력 메시지로서 정의된다고 가정된다.
PLAY가 입력 메시지로서 얻어진 때에는, PLAY에 대한 명령 어레이가 작동으로서 생성된다. 더 구체적으로 설명하면, 도 16 내지 도 19b를 참조로 설명된 포맷에 따라서, PLAY 명령의 내용을 갖는 AV/C 명령 패킷이 생성된다. 그 다음, PLAY 명령 어레이는 동작될 오디오 기기로 출력 메시지로서 전송된다.
STOP과 RECORD가 입력 메시지로서 얻어진 경우에는 입력 메시지에 대응하는 명령 어레이가 전술한 방식과 동일한 방식으로 작동에 의해 생성된다. 생성된 명령 어레이는 동작될 오디오 기기에 출력 메시지로서 전송된다.
도 28의 하반부에 도시된 바와 같이, 오디오 기기 드라이버 제어 핸들은 오디오 기기 오브젝트의 멤버 데이터로서 정의된다.
여기서, 도 26 내지 28에 도시된 오브젝트에서의 정의들은 단지 설명의 편의을 위한 것이므로 특정 프로그램을 실행하는데 충분한 내용만을 나타냄에 유의한다. 결과적으로, 실제 오브젝트 정의는 도 26 내지 28에 도시된 것과 다를 수 있다. 예컨대, MD 레코더/플레이어와 관련된 오디오 기기 오브젝트(705)의 경우에, 전술한 PLAY, STOP, 및 RECORD 이외에도, ERASE(트랙 소거), COMBINE(트랙 조합), 및 DIVIDE(트랙 분할)는 디스크에 기록된 프로그램(또는 트랙)들을 편집하기 위해 실제로 여러가지 명령들에 따라서 정의될 수 있다.
전술한 설명에 기초하여, 다음에서는 도 29를 참조로 도 1에 도시된 제어 프로그램의 동작예에 대해서 설명한다. 이 예에서, MD 레코더/플레이어(1A)는 퍼스널 컴퓨터(113)에 의해 PLAY(재생 시작)하도록 원격 제어된다.
도 29에서는 도 25에서 이미 설명된 것과 동일한 동작들에 대해서는 동일 도면 부호를 사용한다는 점에 유의한다.
도 29를 참조하면, 퍼스널 컴퓨터(113) 상의 제어 프로그램은 IEEE 1394 데이터 인터페이스 포맷에 의해 지정된 컨트롤러로서 취급되고, 원격 제어될 기기들인 MD 레코더/플레이어(1, 1A)는 타겟으로서 취급된다.
제어 프로그램의 동작과 제어 프로그램 동작에 의해 얻어진 요구되는 동작들은 절차 (1) 내지 (8)로 나타낸다. 다음에서는 이들 절차를 이 순서대로 설명한다.
절차 (1) : 기기 관리 오브젝트(702)는 제어 프로그램이 시작되거나 버스 재설정이 있을 때에 초기화 처리로서 예로서 지금까지 행해졌던 관리 내용을 소거한다.
절차 (2) : 기기 관리 오브젝트(702)는 IEEE 1394 버스(116) 상에 존재하는 타겟인 오디오 기기를 검출한다. 여기서는 두개의 기기, 즉 MD 레코더/플레이어(1, 1A)가 검출된다. 검출된 기기에 대해서, 기기 관리 오브젝트(702)는 인스턴스 오브젝트인 오디오 기기 오브젝트를 생성한다. 여기서 기기 관리 오브젝트(702)는 MD 레코더/플레이어(1, 1A) 각각에 대한 두 개의 오디오 기기 오브젝트(705-1, 705-2)를 생성한다.
그 다음에, 도 28에 도시한 일예에 따르면, 오디오 기기 오브젝트(705-1, 705-2)에 PLAY, STOP 및 RECORD에 대한 원격 제어를 허용하는 속성이 주어진다. 이들 속성은 오디오 기기 오브젝트(705-1)와 오디오 기기 오브젝트(705-2) 각각에 대한 예에서 도시한 바와 같이 기기 제어 핸들 1과 기기 제어 핸들 2로 정의되어 있다.
기기 관리 오브젝트(702)는 기기 관리 오브젝트가 생성한 오디오 기기 오브젝트(705-1)와 오디오 기기 오브젝트(705-2)의 ID:1(오디오 기기 오브젝트 1의 포인터)와 ID:2(오디오기기 오브젝트 2의 포인터)를 세팅하여 이들을 관리하게 된다.
절차 (3) : 절차 (1)과 절차 (2)가 완료되면, 사용자(700)는 IEEE 1394 버스에 접속된 오디오 기기(즉, 타겟)에 관한 기기 정보를 획득한다. 이를 위해, 사용자(700)는 기기 정보 획득 요구를 조작 오브젝트(701)에 보낸다.
절차 (4) : 운영 오브젝트(701)은 사용자(700)로부터 기기 정보 획득 요구를 수신하면, 기기 관리 오브젝트(702)로부터 기기 정보를 획득하여 이를 다시 사용자에게 보낸다. 이것으로 사용자(700)에 의한 기기 정보의 획득이 절차 (3)으로 실질적으로 종료한다.
절차 (5) : 이 경우에는 기기 정보의 획득 후의 사용자(700)의 조작으로서, PLAY 명령이 MD 레코더/플레이어(1A)에 주어진다. 구체적으로 말하면, 사용자(700)는 ID:2를 특정한 다음에 조작 오브젝트(701)에 PLAY 명령을 내리게 된다.
절차 (6) : 조작 오브젝트(701)는 ID:2로 표시된 오디오 기기 오브젝트(705-2)를 기기 관리 오브젝트(702)로부터 획득하여 획득한 오디오 기기 오브젝트(705-2)에 관한 PLAY 조작 방법을 실행한다.
절차 (7) : 상기 절차 (6)에 의해 실행된 PLAY 조작 방법에 응답하여, 오디오 기기 오브젝트(705-2)는 이전에 기술했던 AV/C 명령 패킷으로서 PLAY 명령(명령 어레이)을 생성한다. 그 다음에, 오디오 기기 오브젝트(705-2)는 생성된 PLAY 명령을 IEEE 1394 버스(116)를 통해 MD 레코더/플레이어(1A)로 보낸다.
절차 (8) : MD 레코더/플레이어(1A)는 PLAY 명령을 수신하면 MD(90)을 재생한다. 이 재생 조작은 IEEE 1394 인터페이스(25)를 통한 PLAY 명령 수신시에 MD 레코더/플레이어(1A)내의 시스템 제어기(11)에 의해 실행된다.
이상의 설명으로부터 알 수 있는 바와 같이, 본 실시예에서 OOPS를 제어 프로그램으로 사용하여 작용을 갖는 오디오 기기 오브젝트(705)를 생성하고 원격 제어 명령을 생성하는 메시지를 출력하며 이들을 구체화된 오브젝트의 일례로서 IEEE 1394 버스에 접속된 오디오 기기로 보낸다.
이러한 구성에 따라, 버스 접속된 각 기기에 대한 오디오 기기 오브젝트 클래스(즉, 인스턴스)로부터의 생성만이 단하나의 오디오 기기만이 버스에 접속된 경우 뿐만 아니라 2개 이상의 오디오 기기가 버스에 접속된 경우에도 상기한 처리를 실행할 수 있다.
이러한 처리에서, 기기가 예를 들면 버스에 부착되어 있거나 또는 분리되어 있는 경우, 그 결과 새로이 오디오 기기 오브젝트를 생성하기로 버스를 리셋할 때에 현재의 기기 접속 상태를 검출함으로써 버스 리셋 후의 복수의 버스 접속된 기기의 원격 제어를 적절히 제공할 수 있게 된다. 즉, 이러한 구성은 소위 플러그 앤 플레이 기술과 양립되는 것이다. 게다가, 이러한 구성은 특히 사용자의 수동 설정 변경을 필요로 하지 않는다.
3-3 처리 동작
도 30을 참조하면, 상기한 절차 (1) 및 (2)와 관련하여 기술된 오디오 기기 오브젝트의 생성에 대해 설명하는 플로우챠트가 도시되어 있다. 이 플로우챠트에 기술된 처리는 제어 프로그램이 동작하는 퍼스널 컴퓨터(113)의 CPU(201)에 의해 실행된다.
도 29를 참조하여 기술한 바와 같이, CPU(201)는 버스 리셋 발생의 제어 프로그램이 개시할 때 초기화를 실행한다. 이 초기화가 단계 S201에서 행해진다.
단계 S202에서, CPU(201)는 IEEE 1394 버스(116)상의 오디오 기기를 검출하여 IEEE 1394 버스(116)상의 오디오 기기의 개수 NUM을 획득한다.
그 다음에, 단계 S203에서, CPU(201)는 오디오 기기 오브젝트의 수를 나타내는 변수 n가 1이 되도록 설정한다.
단계 S204에서, CPU(201)는 오디오 기기 오브젝트 n을 생성한다. n=1인 경우, 제1 오디오 오브젝트 1이 생성된다. 이 생성 처리에 대해서는 도 25 및 29를 참조하여 이전에 기술하였으므로 더 이상 설명하지 않기로 한다.
단계 S204에서 오디오 기기 오브젝트 n의 생성이 완료되었으면, 그 다음에 단계 S205에서 CPU(201)는 프로그램의 관리 데이터를 기기 관리 오브젝트(클래스)(702)로 등록하여 오디오 기기 오브젝트 n을 관리하게 된다. 즉, ID:n(오디오 기기 오브젝트 n의 포인터)는 오디오 기기 오브젝트 n으로 설정되어 보유된다.
단계 S204 및 S205의 프로세스에 의해, 하나의 오디오 기기 오브젝트 n이 생성되어 관리된다.
단계 S206에서, CPU(201)는 N ≥ NUM 이 변수 n과 오디오 기기의 수 NUM사이에 있는지 여부를 판정한다. 아니오 라고 판정한 경우는, 오디오 기기 오브젝트를 생성해야할 오디오 기기가 여전히 남아 있다는 것을 나타낸다. 따라서, 단계 S207에서, CPU(201)는 변수 n을 1 증가시키고 단계 S204의 처리로 복귀하여 그 다음 오디오 기기 오브젝트를 생성한다.
버스상의 모든 오디오 기기에 대한 오디오 기기 오브젝트의 생성이 완료되어 단계 S206에서 예라고 판정한 경우는, CPU(201)는 이 처리를 종료하고 제어를 그 다음의 필요 처리 루틴으로 넘긴다.
본 발명은 상기한 실시예의 구성에 한정되는 것이 아님에 유의해야 한다. 예를 들면, 본 실시예는 제어 프로그램을 실행하는 제어기로서 퍼스널 컴퓨터를 사용하고 있다. 당업자라면 그 대신에 제어 프로그램을 IEEE 1394 버스에 접속할 수 있는 AV 증폭기 등의 기기로 실행할 수도 있다는 것을 잘 알 것이다.
상기한 실시예에서, 원격 제어되는 외부 기기는 오디오 기기가다. 당업자라면 비오디오 기기도 원격제어될 수 있다는 것을 잘 알 것이다.
당업자라면 또한 데이터 인터페이스는 IEEE 1394에 한정되지 않는다는 것을 잘 알것이다. 하나의 데이터 버스상이 존재하는 2개 이상의 상호접속된 기기를 조작할 수 있다면 임의의 다른 데이터 인터페이스도 본 발명에 적용할 수 있다.
상기한 바와 같이 본 발명에 따르면, 예를 들면 오브젝트 지향 프로그램 시스템에 따라 오디오 기기(즉, 외부 기기)를 제어하는 프로그램으로 추상화된 엔티티인 오디오 기기 제어 클래스(제1 제어 프로그램)가 준비된다. 그 다음에, 데이터 버스상에 있는 각 기기(즉, 제어할 외부 기기)의 경우, 제어할 외부 기기에 실제로 제어 명령을 보낼 수 있는 구체화된 일례인 오디오 기기 오브젝트(제2 제어 프로그램)가 오디오 기기 제어 클래스를 사용하여 생성된다.
오디오 기기의 실제 제어에서는, 대응하는 오디오 기기 오브젝트가 제어를 위한 명령을 보내게 된다.
접속된 각 기기에 대한 오디오 기기 오브젝트의 생성함으로써 데이터 버스상의 2개 이상의 기기의 제어를 하나의 제어기(예를 들면, 퍼스널 컴퓨터)로 용이하게 실시하게 된다. 게다가, 이 새로운 구성을 데이터 버스에 접속된 기기를 교체, 추가 또는 분리하는 경우에도, 단지 데이터 버스상에서 새로이 검출된 오디오 기기에 대한 오디오 기기 오브젝트를 재구성만함으로써 융통성있게 적용할 수 있다.

Claims (2)

  1. 소정의 통신 포맷을 따르는 데이터 버스를 통해 상호 접속된 하나 이상의 소정의 외부 기기에 대해 소정의 제어 동작을 실행할 수 있는 외부 기기 제어 장치에 있어서,
    상기 하나 이상의 소정의 외부 기기를 제어하는 제1 제어 프로그램-추상화된 엔티티로서 정의됨-을 유지하기 위한 추상화 제어 프로그램 유지 수단;
    상기 제어 장치에 의해 제어가능한 타겟 외부 기기-상기 데이터 버스상에 존재함-를 검출하기 위한 접속 기기 검출 수단; 및
    상기 제1 제어 프로그램을 사용함으로써 상기 접속 기기 검출 수단에 의해 검출된 상기 타겟 외부 기기를 제어하는 제2 제어 프로그램-구체화된 엔티티로 정의됨-을 생성하기 위한 제어 프로그램 구체화 수단
    을 포함하여 구성되는 것을 특징으로 하는 외부 기기 제어 장치.
  2. 소정의 통신 포맷을 따르는 데이터 버스를 통해 상호 접속된 하나 이상의 소정의 외부 기기에 대해 소정의 제어 동작을 실행할 수 있는 외부 기기 제어 방법에 있어서,
    상기 하나 이상의 소정의 외부 기기를 제어하는 제1 제어 프로그램-추상화된 엔티티로서 정의됨-을 유지하는 단계;
    상기 제어 장치에 의해 제어가능한 타겟 외부 기기-상기 데이터 버스상에 존재함-를 검출하는 단계; 및
    상기 제1 제어 프로그램을 사용함으로써, 상기 접속 기기 검출 단계에서 검출된 상기 타겟 외부 기기를 제어하는 제2 제어 프로그램-구체화된 엔티티로 정의됨-을 생성하는 단계
    을 포함하여 구성되는 것을 특징으로 하는 방법.
KR1020000033452A 1999-06-18 2000-06-17 외부 기기 제어 장치 및 외부 기기 제어 방법 KR20010015044A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP11173003A JP2001006276A (ja) 1999-06-18 1999-06-18 外部機器の制御装置、及び外部機器の制御方法
JP1999-173003 1999-06-18

Publications (1)

Publication Number Publication Date
KR20010015044A true KR20010015044A (ko) 2001-02-26

Family

ID=15952399

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000033452A KR20010015044A (ko) 1999-06-18 2000-06-17 외부 기기 제어 장치 및 외부 기기 제어 방법

Country Status (4)

Country Link
EP (1) EP1061708A3 (ko)
JP (1) JP2001006276A (ko)
KR (1) KR20010015044A (ko)
CN (1) CN1278622A (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002304333A (ja) * 2001-04-03 2002-10-18 Sony Corp 伝送方法及び伝送装置
JP2003224795A (ja) * 2002-01-29 2003-08-08 Toshiba Corp 記録再生装置、情報処理システム、及び初期化方法
EP1555772A3 (en) * 2004-01-15 2013-07-17 Yamaha Corporation Remote control method of external devices
JP4856441B2 (ja) * 2006-02-10 2012-01-18 ルネサスエレクトロニクス株式会社 リモートコントロールシステム及び装置
JP4023508B2 (ja) * 2006-03-28 2007-12-19 松下電工株式会社 ネットワークシステム
JP2008159179A (ja) 2006-12-25 2008-07-10 Sony Corp 再生装置および再生方法
US8493905B2 (en) * 2010-09-08 2013-07-23 Intel Corporation Wireless clone mode display
GB2603733A (en) 2019-11-27 2022-08-10 Shure Acquisition Holdings Inc Controller with network mode and direct mode

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546595A (en) * 1993-12-21 1996-08-13 Taligent, Inc. Object-oriented system using objects representing hardware devices, physical connectors and connections between the physical connectors for configuring a computer
JPH08161250A (ja) * 1994-12-06 1996-06-21 Canon Inc 情報処理装置
KR0164838B1 (ko) * 1996-04-19 1999-01-15 김광호 컴퓨터 주변기기의 드라이버 프로그램 설치방법
JP3735942B2 (ja) * 1996-06-04 2006-01-18 ソニー株式会社 通信制御方法、通信システムおよびそれに用いる電子機器
US5922050A (en) * 1996-07-02 1999-07-13 Sun Microsystems, Inc. Method and apparatus for controlling a device on a network
DE19634165A1 (de) * 1996-08-23 1998-04-30 Bosch Siemens Hausgeraete Schaltungsanordnung und Verfahren zur Steuerung elektrischer Hausgeräte

Also Published As

Publication number Publication date
EP1061708A2 (en) 2000-12-20
JP2001006276A (ja) 2001-01-12
CN1278622A (zh) 2001-01-03
EP1061708A3 (en) 2004-03-24

Similar Documents

Publication Publication Date Title
US6789208B2 (en) System for synchronized power supply control over a plurality of electronic devices by determining whether any one of the electronic devices conforms to a predetermined condition and synchronously switching on or off each device that satisfies the predetermined condition
US7133948B2 (en) Controller device and communications system for transmitting reserve commands from a controller to target devices
US6772354B2 (en) System and method for managing the power state of a controlling device according to an indication of the power state of a source output device
EP0998744B1 (en) A model and command set for an av/c-based disc media player/recorder subunit
EP1014364B1 (en) Reception method over a chain of interconnected AV apparatus
US7191267B2 (en) Electronic device system, controlling device and controlling method
KR20010015044A (ko) 외부 기기 제어 장치 및 외부 기기 제어 방법
EP1061520A2 (en) Editing system, editing apparatus and editing method
EP1061692A2 (en) Controlling device, communication system and controlling method
JP4055313B2 (ja) 再生装置、及び情報伝送方法
JP2005045612A (ja) 受信装置、及び受信方法
JP2000209617A (ja) 通信動作検査方法及び通信動作検査装置
MXPA00000902A (en) A model and command set for an av/c-based disc media player/recorder subunit
JP2001250370A (ja) 電子機器システム、及び電子機器

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid