KR100577147B1 - 버스시스템의기기제어방법 - Google Patents

버스시스템의기기제어방법 Download PDF

Info

Publication number
KR100577147B1
KR100577147B1 KR1019980051495A KR19980051495A KR100577147B1 KR 100577147 B1 KR100577147 B1 KR 100577147B1 KR 1019980051495 A KR1019980051495 A KR 1019980051495A KR 19980051495 A KR19980051495 A KR 19980051495A KR 100577147 B1 KR100577147 B1 KR 100577147B1
Authority
KR
South Korea
Prior art keywords
command
operand
audio
frame
opcode
Prior art date
Application number
KR1019980051495A
Other languages
English (en)
Other versions
KR20000034219A (ko
Inventor
조기형
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1019980051495A priority Critical patent/KR100577147B1/ko
Publication of KR20000034219A publication Critical patent/KR20000034219A/ko
Application granted granted Critical
Publication of KR100577147B1 publication Critical patent/KR100577147B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link

Abstract

버스시스템의 기기 제어방법은 새로운 커맨드 타입을 추가하여 간단한 명령 교환으로 미리 사용가능한 커맨드를 알 수 있도록 하기 위한 것으로서, 제어기기에서 커맨드 타입(ctype)을 이용하여 제어 대상기기에서 지원 가능한 명령어 셋을 요청하는 단계와, 상기 요청에 따라 제어 대상기기에서 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계와, 상기 전송된 명령어 셋에 따라 제어기기에서 명령어 셋을 업데이트(update)시키는 단계와, 업데이트(update)된 명령어 셋에 따라 제어 대상기기를 제어하는 단계로 구성되는데 그 요지가 있다.

Description

버스시스템의 기기 제어방법{method for controlling device in bus system}
본 발명은 버스시스템에 관한 것으로, 특히 버스시스템의 기기 제어방법에 관한 것이다.
이하, 종래 기술에 따른 버스시스템의 기기 제어방법에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다.
도 1 은 종래 기술에 따른 1394 시리얼 버스의 토폴로지(topology)를 나타낸 도면으로, Digital TV(1)와, PC(2)와, CDROM(3)과, Digital Camera(4)와, Digital Camcoder(5)와, DVCR(6)과, DVD RAM(7)과, Printer(8)간이 루프(loop)를 형성하지 않도록 1394 시리얼 버스로 연결구성된다.
도 2 는 종래 기술에 따른 1394 시리얼 버스 프로토콜 레이어들간의 관계를 나타낸 도면으로, 시리얼 버스 매니지먼트(Serial Bus Management;이하 SBM이라 약칭함)(11)와, 피지컬 레이어(Physical layer)(12)와, 링크 레이어(Link layer)(13)와, 오디오/비디오 칩 레이어(A/V CIP layers)(14)와, 애플리케이션 레이어(Application layer)와, 트랜잭션 레이어(Transaction layer)(16)와, 플러그 컨트롤 레지스터(Plug Control Register)(17)와, 커넥션 매니지먼트 프로토콜(Connection Management Protocol)부(18)와, 펑션 컨트롤 프로토콜(Function Control Protocol)부(19)와, 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Command and Transaction Set) 및 SBP-2(20)로 구성된다.
도 3 은 도 2 의 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋 및 SBP-2에 사용되는 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Command and Transaction Set)의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 나타낸 도면으로, 상기 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)은 프레임이 오디오/비디오 컨트롤 커맨드(AV/C Commands)임을 나타내는 4비트의 "0000", 커맨드 타입(command type:ctype), 서브유니트_타입(subunit_type), 서브유니트 아이디(subunit ID), 오피코드(opcode), 다수개의 오퍼랜드(oprand) 등으로 이루어진다.
도 4 는 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 커맨드 타입(ctype)을 나타낸 도면으로, 상기 커맨드 타입(ctype)은 제어 대상기기에 동작을 지시하는 컨트롤(CONTROL)을 나타내는 "0", 제어 대상기기의 현재 상태를 파악하기 위한 스테이터스(STATUS)를 나타내는 "1", 제어 대상기기가 어떤 특정한 형식의 커맨드에 대해서 동작을 지원하는 지 여부를 파악하기 위한 스페서픽 인콰이어리(SPECIFIC INQUIRY)를 나타내는 "2", 제어 대상기기의 현재 상태를 파악하고 나중에 제어 대상기기의 변화된 상태에 대한 정보를 받기 위한 노티파이(NOTIFY)를 나타내는 "3", 제어 대상기기가 어떤 커맨드에 대해서 한가지 모드라도 동작을 지원하는 지 여부를 파악하기 위한 제너널 인콰이어리(GENERAL INQUIRY)를 나타내느 "4", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "5-7", 리스펀스 코드를 위한 리지브드(Reserved for response code)를 나타내는 "8-F16"으로 이루이진다.
도 5 은 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 서브유니트_타입(subunit_type)을 나타낸 도면으로, 상기 서브유니트_타입(subunit_type)은 비디오 모니터(Video monitor)를 나타내는 "0", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "1-2", 오디오 또는 비디오의 디스크 리코더/플레이어(disc recorder/player)를 나타내는 "3", 오디오 또는 비디오의 데이프 리코더/플레이어(tape recorder/player)를 나타내는 "4", 튜너를 나타내는 "5", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "6", 비디오 카메라(Video camera)를 나타내는 "7", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "8-1B16", 벤더 유니크(Vender unique)를 나타내는 "1C16", 모든 서브유니트_타입을 위한 리저브드(Reserved for all subunit_types)를 나타내는 "1D16", 다음 바이트로 확장된 서브유니트_타입(subunit_type extended next byte)을 나타내는 "1E16", 유니트(Unit)를 나타내는 "1F16"으로 이루어진다.
도 6 는 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 서브유니트 아이디(subunit ID)를 나타낸 도면으로, 상기 서브유니트 아이디(subunit ID)은 인스턴스 넘버(Instance number)를 나타내는 "0-4", 다음 바이트로 확장된 서브유니트 아이디(subunit ID extended next byte)을 나타내는 "5", 모든 인스턴스를 위한 리저브드(Reserved for all subunit types)를 나타내는 "6", 이그노어(Ignore)를 나타내는 "7"로 이루어진다.
도 7 은 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 오피코드(opcode)를 나타낸 도면으로, 상기 오피코드(opcode)는 도 7 에 도시된 바와 같이, 유니트 및 서브유니트 커맨드(Unit and subunit commands)를 나타내는 "0-F16", 유니트 커맨드(Unit command)를 나타내는 "1016-3F16", 서브유니트 커맨드(Subunit commands)를 나타내는 "4016-7F16", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "8016-9F16", 유니트 및 서브유니트 커맨드(Unit and subunit commands)를 나타내는 "AO16-BF16", 서브유니트 커맨드(Subunit commands)를 나타내는 "C016-DF16", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "EE16-FF16"으로 이루어진다.
도 8 는 도 2 의 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋 및 SBP-2에 사용되는 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Command and Transaction Set)의 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)을 나타낸 도면으로, 상기 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)은 프레임이 오디오/비디오 컨트롤 커맨드(AV/C Commands)임을 나타내는 4비트의 "0000", 리스펀스 타입(response type), 서브유니트_타입(subunit_type), 서브유니트 아이디(subunit ID), 오피코드(opcode), 다수개의 오퍼랜드(oprand) 등으로 이루어진다.
도 9 는 도 8 의 리스펀스 타입(response type)을 나타낸 도면으로, 커맨드 타입을 위한 리저브드(Reserved for command types)를 나타내는 "0-7", 낫 임플리먼티드(NOT IMPLEMENTED)를 나타내는 "8", 어셉티드(ACCEPTED)를 나타내는 "9", 리젝티드(REJECTED)를 나타내는 "A16", 인 트랜지션(IN TRANSITION)를 나타내는 "B16", 임플리먼티드/스테이블(IMPLEMENTED/STABLE)을 나타내는 "C16", 챈지드(CHANGED)를 나타내는 "D16", 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "E16", 인터림(INTERIM)을 나타내는 "F16"으로 이루어진다.
이와 같이 구성된 종래 기술에 따른 버스시스템의 기기 제어방법에 대하여 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
먼저, 도 1 에 도시된 바와 같이, 상기 디바이스들간의 물리적인 연결은 양방향으로 데이터를 전송하기 위한 1394 시리얼 버스 케이블로 연결되고, 상기 디바이스들은 하나 이상의 1394 시리얼 버스 케이블 연결 포트들을 갖는다.
그리고 네트워크의 구성은 버스의 초기화시 자동적으로 결정되고, 다중 케이블 포트들을 가지는 디바이스들은 하나의 로컬 버스를 만들기 위하여 시그널 리피터(signal repeater)들로서 동작한다.
상기 1394 시리얼 버스상의 각 디바이스는 상기 각 포트에 대하여 터미네이터(terminators)와, 트랜스시버(transceivers)와, 어비트레이션(arbitration)과, 패킷 포맷팅(packet formatting) 및 데이터 트랜스퍼 컨트롤(data transfer control)을 위한 로직으로 구성되고, 어싱크로너스 데이터(asynchronous data)와 SBM의 아이소크로너스 리소스 매니저(Isochronous Resource Manager;이하 IRM이라 약칭함)로부터 할당받은 채널과 밴드위스(bandwidth)를 통해 아이소크로너스 데이터(isochronous data)를 전송한다.
여기서 상기 SBM은 아이소크로너스 통신 및 어싱크로너스 통신을 위한 노드 컨트롤러(node controller)와, 상기 아이소크로너스 통신을 하기 위한 IRM과, 버스 토폴로지(Bus Topology), 버스 스피드(Bus Speed), 파워 매니지먼트(Power Management)를 수행하기 위한 버스 매니저(Bus Manager)로 구성된다.
상기 아이소크로너스 데이터(isochronous data)는 리얼 타임 데이터(Real Time data)로 아이소크로너스 패킷(isochronous packet) 구조로 전송되며, 이러한 아이소크로너스 패킷을 처리하기 위한 커먼 아이소크로너스 패킷 애플리케이션 인터페이스 레이어(common isochronous packet application interface layer)를 가지는 1394 시리얼 버스의 프로토콜 레이어들간의 관계는 도 2 에 도시된 바와 같다.
상기 프로토콜은 어떤 디바이스의 애플리케이션으로부터 다른 디바이스의 애플리케이션으로 일련의 소스 패킷(source packet)들을 전송하는 것이다.
또한, 도 1 에 도시된 바와 같은 오디오/비디오 기기간의 동작을 제어하기 위하여 도 2 에 도시된 바와 같은 각 오디오/비디오 기기내 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Control Command and Transaction Set) 및 SBP-2(20)의 제어에 따라 펑션 컨트롤 프로토콜(Function Control Protocol)부(19)에서 도 3 에 도시된 바와 같은 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 하위 레이어들을 통해 1394 케이블 환경으로 전송한다.
여기서 제어 대상기기를 제어하고자 하는 제어기기는 각 오디오/비디오 기기마다 각각의 커맨드에 대해 지원하는 정보가 상이하기 때문에 상기 오디오/비디오 컨트롤 커맨드(AV/C command)에 지원 레벨(Support Level)에 따른 지원 여부를 알기 위해서는 스페서픽 인콰이어리(Specific Inquiry), 제너럴 인콰이어리(General Inquiry) 등의 커맨드를 이용하여 파악해야 한다.
상기 지원 레벨(Support Level)로는 맨더터리(Mandatory), 리커맨디드(Recommanded), 옵셔널(Optional) 및 벤더-디펜던트(Vendor-dependent)이 있다.
즉 제어기기는 제어 대상기기의 지원 여부를 파악하기 위하여 도 4 에 도시된 바와 같이, 상기 오디오/비디오 컨트롤 커맨드(AV/C commands)내 커맨드 타입(ctype)에 "2" 또는 "4"를 기록하여 스페서픽 인콰이어리(Specific Inquiry) 또는 제너럴 인콰이어리(Geneal Inquiry)의 커맨드를 하위 레이어를 통해 1394 케이블 환경으로 전송한다.
그러면 제어 대상기기는 상기 1394 케이블 환경을 통해 상기 오디오/비디오 컨트롤 커맨드(AV/C commands)를 전송받아 커맨드 타입(ctype)을 검색하여 검색결과가 "2" 또는 "4"라면 스페서픽 인콰이어리(Specific Inquiry) 또는 제너럴 인콰이어리(Geneal Inquiry) 커맨드로 인식하여 자신의 지원 여부를 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)에 기록하여 하위 레이어와 1394 케이블 환경을 통해 전송한다.
이에 따라 제어기기는 상기 전송된 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)에 따라 도 4 내지 도 7 에 도시된 바와 같이, 오디오/비디오 컨트롤 커맨드(AV/C Commands)임을 나타내는 4비트의 "0000", 커맨드 타입(ctype), 서브유니트_타입(subunit_type), 서브유니트 아이디(subunit ID), 오피코드(opcode), 다수개의 오퍼랜드(oprand) 등을 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)에 기록하여 하위 레이어와 1394 케이블 환경을 통해 전송한다.
그러면 제어 대상기기는 상기 1394 케이블 환경을 통해 상기 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 전송받아 커맨드 타입(ctype)에 따라 도 9 에 도시된 바와 같은 리스펀스 코드(responde code)중 상기 커맨드 타입(ctype)에 상응하는 코드를 기록하여 도 8 에 도시된 바와 같은 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)을 전송한다.
즉 제어 대상기기는 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 전송받아 이를 처리한 결과에 따라 상기 커맨드 타입(ctype)이 컨트롤 커맨드(Control command)라면 낫 임플리먼티드(Not Implemented), 어셉티드(Accepted), 리젝티드(Rejected) 및 인터림(Interim) 중 하나를, 스테이터스 커맨드(Status command)라면 낫 임플리먼티드(Not Implemented), 리젝티드(Rejected), 인 트랜지션(In Transition) 및 스테이블(Stable) 중 하나를, 노티파이 커맨드(Notify command)라면 낫 임플리먼티드(Not Implemented), 리젝티드(Rejected) 및 인터림(Interim) 중 하나를, 스페서픽 인콰이어리(Specific Inquiry) 및 제너럴 인콰이어리(General Inquiry)라면 낫 임플리먼티드(Not Implemented) 및 임플리먼티드(Implemented) 중 하나를 상기 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)에 기록하여 전송한다.
이에 따라 제어 대상기기를 제어하고자 하는 기기는 상기 전송된 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)에 따라 제어 대상기기의 제어 결과를 파악할 수 있게 된다.
그러나 종래 기술에 따른 버스시스템의 기기 제어방법에 있어서는 제어 대상기기가 오디오/비디오 컨트롤 커맨드(AV/C command) 모두를 지원하지 않기 때문에 낫 임플리먼티드(NOT IMPLEMENTED)가 자주 발생하게 되는 경우 제어 대상기기를 제어하고자 하는 기기가 제어 대상기기의 동작을 제어하기 위한 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 커맨드 타입(ctype)에 따라 그에 상응하는 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 리스펀스 코드(response code)를 1394 케이블 환경을 통해 송수신하는 프로세스(process)의 수가 많은 문제점이 있다.
따라서 본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 새로운 커맨드 타입(ctype)을 추가하여 간단한 명령 교환으로 미리 사용가능한 커맨드를 알 수 있도록 한 버스시스템의 기기 제어방법을 제공하는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 버스시스템의 기기 제어방법의 특징은, 제어기기에서 커맨드 타입(ctype)을 이용하여 제어 대상기기에서 지원 가능한 명령어 셋을 요청하는 단계와, 상기 요청에 따라 제어 대상기기에서 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계와, 상기 전송된 명령어 셋에 따라 제어기기에서 명령어 셋을 업데이트(update)시키는 단계와, 업데이트(update)된 명령어 셋에 따라 제어 대상기기를 제어하는 단계로 이루어지는데 있다.
상기 명령어 셋을 요청하는 단계는 상기 커맨드 타입(ctype)중 미래의 상술을 위한 리저브드(Reserved for future specification)를 상기 명령어 셋을 요청하는 임플리먼트 커맨드 인콰이어리(Implement Commands Inquiry)로 정의하는데 다른 특징이 있다.
상기 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계는 오퍼랜드(operand)[0]에 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[n]까지의 바이트수 및 상기 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[n]까지 지원하는 커맨드들의 오피코드(opcode)값을 차례로 기록하여 전송하는데 또다른 특징이 있다.
상기 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계는 오퍼랜드(operand)[0]에 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[2n]까지의 바이트수를 기록하고, 상기 오퍼랜드(operand)[2n-1]에 지원하는 커맨드의 오피코드(operand) 및 오퍼랜드(operand)[2n]에 오퍼랜드(operand)[2n-1]이 나타내는 오피코드(opcode)에서 지원하는 커맨드 타입을 기록하여 쌍으로 기록하여 전송하는데 또다른 특징이 있다.
이하, 본 발명에 따른 버스시스템의 기기 제어방법의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다.
본 발명에 적용되는 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)은 도 3 에 도시된 바와 동일하며, 커맨드 타입(ctype), 서브유니트_타입(subunit_type), 서브유니트(subunit) 및 오피코드(opcode)는 도 4 내지 도 7 에 도시된 바와 동일하다.
아울러 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)은 도 8 에 도시된 바와 동일하며, 리스펀스 코드(response code)는 도 9 에 도시된 바와 동일하다.
그리고 본 발명은 상기 커맨드 타입(ctype)의 미래의 상술을 위한 리저브드(Reserved for future specification)를 나타내는 "5-7"을 임플리먼트 커맨드 인콰이어리(Implement Commands Inquiry)로 정의한 후 오피코드(opcode)와 오퍼랜드(operand)[0] 두 필드를 이용하여 제어 대상 기기가 유니트 커맨드(Unit command)인지 서브유니트 커맨드(Subunit command)인지와 '간단히', '자세히' 등의 리스펀스(response)의 요구도를 나타내게 된다.
이와 같이 구성된 본 발명에 따른 버스시스템의 기기 제어방법에 대하여 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
먼저, 제어 대상기기를 제어하고자 하는 기기는 제어 대상기기의 동작을 제어하기 위하여 오디오/비디오 컨트롤 커맨드(AV/C command)의 커맨드 타입(ctype)을 임플리먼트 커맨드 인콰이어리(Implement Commands Inquiry)로 정의한 후 서브유니트_타입(subunit_type) 및 서브유니트 아이디(subunit ID)를 전술한 바와 같이 기록한 후 오피코드(opcode)와 오퍼랜드(operand)에 제어 대상 기기가 유니트 커맨드(Unit command)인지 서브유니트 커맨드(Subunit command)인지와 '간단히' 또는 '자세히'의 커맨드 모드(command mode)를 나타내는 코드를 기록하여 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 하위 레이어와 1394 케이블 환경을 통해 제어 대상기기로 지원 가능한 명령어 셋을 요청한다.
상기 오피코드(opcode)와 오퍼랜드(operand)의 제어 대상 기기가 유니트 커맨드(Unit command)인지 서브유니트 커맨드(Subunit command)인지와 '간단히' 또는 '자세히'의 커맨드 모드(command mode) 코드는 예를 들면 '00000000' 또는 '11111111' 아니면 '11111111', '00000000'로 나타낼 수 있다.
그러면 제어 대상기기는 상기 1394 케이블 환경을 통해 요청된 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 커맨드 타입(ctype)의 임플리먼트 커맨드 인콰이어리(Implement Commands Inquiry)에 따라 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 리스펀스 코드(response code)를 어셉티드(Accepted), 낫 임플리먼티드(Not Implemenated) 또는 리젝티드(Rejected)중의 하나로 기록하여 전송한다.
아울러 제어 대상기기는 상기 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 오피코드(opcode) 및 오퍼랜드(operand)의 커맨드 모드(command mode)를 검색한다.
상기 검색결과 '간단히'라면 제어 대상기기는 상기 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 오퍼랜드[0]에 오퍼랜드[0]을 제외한 오퍼랜드[1]에서 오퍼랜드[n]까지의 바이트수를, 오퍼랜드[1]에서 오퍼랜드[n]에 지원하는 커맨드들의 오피코드(opcode)값을 차례로 기록하여 전송한다.
또한, 검색결과 '자세히'라면 제어 대상기기는 상기 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 오퍼랜드[0]에 오퍼랜드[0]을 제외한 오퍼랜드[1]에서 오퍼랜드[n]까지의 바이트수를, 오퍼랜드[1]에 지원하는 커맨드의 오피코드(opcode)를, 오퍼랜드[2]에 상기 오퍼랜드[1]이 나타내는 오피코드(opcode)에서 지원하는 커맨드 타입(ctype)을, 오퍼랜드[3]에 다음 지원하는 커맨드의 오피코드(opcode)를, 오퍼랜드[4]에 상기 오퍼랜드[3]이 나타내는 오피코드(opcode)에서 지원하는 커맨드 타입(ctype)을, 오피코드[2n-1]에 다음 지원하는 커맨드의 오피코드(opcode)를, 오퍼랜드[2n]에 오퍼랜드[2n-1]이 나타내는 오피코드(opcode)에서 지원하는 커맨드 타입(ctype)을 쌍(pair)으로 기록하여 전송한다.
예를 들어 오퍼랜드[4]를 플래그(flag)로 나타내면 총 8비트이므로 "X X X X X fc fs fn" 형식으로 하여 기록하게 되는데, 상기 fc는 컨트롤 커맨드(Control command)를 지원하면 '1'로 아니면 '0'으로 셋팅하고, fs는 스테이터스 커맨드(Status command)를 지원하면 '1'로 아니면 '0'으로 셋팅하고, fn는 노디파이 커맨드(Notify command)를 지원하면 '1'로 아니면 '0'으로 셋팅하는 방식이 된다.
여기서 제어 대상기기는 상기 오피코드(opcode)가 나타내는 오퍼레이션(operation)의 일부 모드라도 지원하면 상기 오피코드(opcode)를 기록하여 리스펀스(response)한다.
이에 따라 제어기기는 상기 전송된 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 리스펀스 코드(response code)를 검색하여 상기 리스펀스 코드(response code)에 따라 지원 여부를 판단한다.
상기 판단결과 지원가능하다면 제어기기는 상기 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 오피코드(opcode)와 오퍼랜드(operand)에 기록된 지원 가능한 명령어 셋과 기 저장된 명령어 셋을 비교하여 다르면 지원 가능한 명령어 셋으로 업데이트한 후 대상기기의 동작을 제어한다.
이상에서 설명한 바와 같이 본 발명에 따른 버스시스템의 기기 제어방법은 새로운 커맨드 타입(ctype)을 추가하여 간단한 명령 교환으로 미리 사용가능한 커맨드를 알 수 있도록 함으로써 기기들을 효율적으로 제어할 수 있는 효과가 있다.
도 1 은 일반적인 1394 시리얼 버스의 토폴로지(topology)를 나타낸 도면
도 2 는 일반적인 1394 시리얼 버스 프로토콜 레이어들간의 관계를 나타낸 도면
도 3 은 도 2 의 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋 및 SBP-2에 사용되는 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Command and Transaction Set)의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)을 나타낸 도면
도 4 는 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 커맨드 타입(ctype)을 나타낸 도면
도 5 은 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 서브유니트_타입(subunit_type)을 나타낸 도면
도 6 는 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 서브유니트 아이디(subunit ID)를 나타낸 도면
도 7 은 도 3 의 오디오/비디오 컨트롤 커맨드 프레임(AV/C command frame)의 오피코드(opcode)를 나타낸 도면
도 8 는 도 2 의 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋 및 SBP-2에 사용되는 오디오/비디오 컨트롤 커맨드 앤드 트랜잭션 셋(AV/C Command and Transaction Set)의 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)을 나타낸 도면
도 9 는 도 8 의 오디오/비디오 컨트롤 리스펀스 프레임(AV/C response frame)의 리스펀스 타입(response type)을 나타낸 도면

Claims (4)

  1. 제어기기에서 커맨드 타입(ctype)을 이용하여 제어 대상기기에서 지원 가능한 명령어 셋을 요청하는 단계와;
    상기 요청에 따라 제어 대상기기에서 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계와;
    상기 전송된 명령어 셋에 따라 제어기기에서 명령어 셋을 업데이트(update)시키는 단계와;
    업데이트(update)된 명령어 셋에 따라 제어 대상기기를 제어하는 단계를 포함하여 이루어진 것을 특징으로 하는 버스시스템의 기기 제어방법.
  2. 제 1 항에 있어서,
    상기 명령어 셋을 요청하는 단계는
    상기 커맨드 타입(ctype)중 미래의 상술을 위한 리저브드(Reserved for future specification)를 상기 명령어 셋을 요청하는 임플리먼트 커맨드 인콰이어리(Implement Commands Inquiry)로 정의함을 특징으로 하는 버스시스템의 기기 제어방법.
  3. 제 1 항에 있어서,
    상기 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계는
    오퍼랜드(operand)[0]에 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[n]까지의 바이트수 및 상기 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[n]까지 지원하는 커맨드들의 오피코드(opcode)값을 차례로 기록하여 전송함을 특징으로 하는 버스시스템의 기기 제어방법.
  4. 제 1 항에 있어서,
    상기 지원 가능한 명령어 셋을 상기 제어기기로 전송하는 단계는
    오퍼랜드(operand)[0]에 오퍼랜드(operand)[1]에서 오퍼랜드(operand)[n]까지의 바이트수를 기록하고, 상기 오퍼랜드(operand)[2n-1]에 지원하는 커맨드의 오피코드(operand) 및 오퍼랜드(operand)[2n]에 오퍼랜드(operand)[2n-1]이 나타내는 오피코드(opcode)에서 지원하는 커맨드 타입을 기록하여 쌍으로 기록하여 전송함을 특징으로 하는 버스시스템의 기기 제어방법.
KR1019980051495A 1998-11-28 1998-11-28 버스시스템의기기제어방법 KR100577147B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980051495A KR100577147B1 (ko) 1998-11-28 1998-11-28 버스시스템의기기제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980051495A KR100577147B1 (ko) 1998-11-28 1998-11-28 버스시스템의기기제어방법

Publications (2)

Publication Number Publication Date
KR20000034219A KR20000034219A (ko) 2000-06-15
KR100577147B1 true KR100577147B1 (ko) 2006-07-25

Family

ID=19560171

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980051495A KR100577147B1 (ko) 1998-11-28 1998-11-28 버스시스템의기기제어방법

Country Status (1)

Country Link
KR (1) KR100577147B1 (ko)

Also Published As

Publication number Publication date
KR20000034219A (ko) 2000-06-15

Similar Documents

Publication Publication Date Title
JP4449218B2 (ja) ディジタル信号処理システム及びディジタル信号伝送方法
US7072991B2 (en) Audio visual system having a serial bus for identifying devices connected to the external terminals of an amplifier in the system
US20020010824A1 (en) Electronic equipment and method for processing digital serial data at bus initialization phase in interface unit
US6964006B2 (en) Network error display apparatus and error detection display method
US6823408B2 (en) Electronic equipment, and method for controlling state of physical layer circuit therefor
JP4019481B2 (ja) 情報処理装置および方法、情報処理システム、並びに提供媒体
JP2004104254A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム及び記憶媒体
US6721859B1 (en) Multi-protocol media storage device implementing protocols optimized for storing and retrieving both asynchronous and isochronous data
US20010024445A1 (en) Communication system, communication device and communication method
KR100577147B1 (ko) 버스시스템의기기제어방법
JP4336536B2 (ja) 伝送速度設定装置、伝送速度設定方法、情報伝送システム並びに伝送速度設定用プログラム及び情報記録媒体
KR100623020B1 (ko) Ieee1394에서의 디지털 캠코더 제어방법
JP2002057683A (ja) 制御機器および制御方法
EP1182827B1 (en) Information control method, information processing apparatus, and information control system
US20030065865A1 (en) Data processing method, data processing apparatus, communications device, communications method, communications protocol and program
JP2004102443A (ja) 情報処理システム、情報処理方法、プログラム及び記憶媒体
US20020073169A1 (en) Information processing apparatus, information processing system and method thereof
JPH10243022A (ja) パケット変換装置および媒体
JP2000022718A (ja) データ伝送システム
JP2002244991A (ja) マルチイニシエータ制御装置及びその方法
KR20000025438A (ko) 프로토콜 인터페이스 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee