KR20010040558A - 등시성 데이터 패킷의 예측적인 시간 스탬핑을 위한 장치및 방법 - Google Patents

등시성 데이터 패킷의 예측적인 시간 스탬핑을 위한 장치및 방법 Download PDF

Info

Publication number
KR20010040558A
KR20010040558A KR1020007008427A KR20007008427A KR20010040558A KR 20010040558 A KR20010040558 A KR 20010040558A KR 1020007008427 A KR1020007008427 A KR 1020007008427A KR 20007008427 A KR20007008427 A KR 20007008427A KR 20010040558 A KR20010040558 A KR 20010040558A
Authority
KR
South Korea
Prior art keywords
packet
transmitted
value
time
frame
Prior art date
Application number
KR1020007008427A
Other languages
English (en)
Other versions
KR100657582B1 (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 KR20010040558A publication Critical patent/KR20010040558A/ko
Application granted granted Critical
Publication of KR100657582B1 publication Critical patent/KR100657582B1/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/40Bus networks
    • 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/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • 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/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • 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/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40117Interconnection of audio or video/imaging devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43632Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Aiming, Guidance, Guns With A Light Source, Armor, Camouflage, And Targets (AREA)
  • Train Traffic Observation, Control, And Security (AREA)
  • Communication Control (AREA)

Abstract

IEEE 1394-1995 직렬 버스 네트워크를 통해 송신된 등시성 데이터 패킷을 예측적으로 시간 스탬프하기 위해서, 등시성 데이터 패킷 스트림을 수신 노드에 보내야 하는 애플리케이션은 제일 먼저 다수의 패킷으로 각각 구성된 다수의 더미 프레임(dummy frame)을 송신한다. 바람직하게, 이러한 등시성 데이터 패킷은 비디오 데이터 프레임을 구성한다. 이러한 더미 패킷으로부터, 애플리케이션은 각 패킷의 공통 등시성 패킷(CIP) 내에 있는 시간 스탬프 값을 획득한다. 이러한 획득된 시간 스탬프를 사용하여, 애플리케이션은 송신될 각 데이터 프레임에 대한 표시 시간 값을 계산한다. 송신된 비디오 프레임으로부터 획득된 시간 스탬프 값은 송신 대기열(transmit queue) 내에서 앞선 다수의 프레임인 비디오 프레임에 대한 표시 시간을 계산하기 위해 사용된다. 일단 프레임에 대한 표시 시간 값이 계산되면, 상기 값은 애플리케이션에 의해 프레임 내의 제 1 패킷의 CIP 헤더에 삽입되고, 프레임은 IEEE 1394-1995 직렬 버스 네트워크를 통한 수신 노드로의 송신을 위해 송신 대기열에 보내진다.

Description

등시성 데이터 패킷의 예측적인 시간 스탬핑을 위한 장치 및 방법{APPARATUS AND METHOD FOR PREDICTIVE TIME STAMPING OF ISOCHRONOUS DATA PACKETS}
IEEE 1394-1995 표준인 "고성능 직렬 버스에 대한 1394-1995 표준(1394-1995 Standard For High Performance Serial Bus)"은 비동기 포맷 데이터 전달과 등시성 포맷 데이터 전달을 모두 지원하는 저가의 고속 직렬 버스 구조를 구현하기 위한 국제 표준이다. 등시성 데이터 전달은, 중요한 순간들 사이의 시간간격이 송신 애플리케이션과 수신 애플리케이션 모두에서 동일한 지속기간을 갖도록 하기 위해 발생하는 실시간 전달이다. 등시적으로 전달된 데이터의 각 패킷은 자체 시간기간 동안에 전달된다. 등시적인 데이터 전달에 대한 이상적인 애플리케이션의 예로는 비디오 레코더로부터 텔레비전 세트로의 데이터 전달이 있다. 비디오 레코더는 이미지와 사운드를 기록하고 상기 데이터를 이산적인 청크(chunk)나 패킷으로 저장한다. 그런 후에, 비디오 레코더는, 해당 시간기간 동안에 텔레비전 세트를 통해 디스플레이하기 위해서, 상기 제한된 시간기간에 걸쳐 상기 이미지와 사운드를 나타내는 각 패킷을 전달한다. IEEE 1394-1995 표준 버스 구조는 애플리케이션 사이의 등시적인 데이터 전달을 위해 다중 채널을 제공한다. 적절한 애플리케이션을 통한 수신을 보장하기 위해서 6비트의 채널 번호가 데이터와 함께 제공된다. 이는 다중 애플리케이션으로 하여금 버스 구조를 통해서 등시성 데이터를 동시에 전달하도록 한다. 비동기적인 전달은 전형적인 데이터 전달 동작이고, 상기 전형적인 데이터 전달 동작은 가능한 한 빨리 이루어지고 소스로부터 목적지(destination)로 많은 데이터를 전달한다.
IEEE 1394-1995 표준은 디지털 장치들을 서로 연결함으로써 범용 I/O 연결을 제공하기 위한 고속 직렬 버스를 제공한다. IEEE 1394-1995 표준은 애플리케이션에 대한 디지털 인터페이스를 정의함으로써, 디지털 데이터가 버스를 통해 송신되기 전에 애플리케이션이 상기 디지털 데이터를 아날로그 데이터로 변환할 필요성을 제거한다. 따라서, 수신 애플리케이션은 버스로부터 아날로그 데이터가 아닌 디지털 데이터를 수신할 것이고, 그러므로, 아날로그 데이터를 디지털 데이터로 변환하는 것이 필요하지 않을 것이다. IEEE 1394-1995 표준에서 요구하는 케이블은 이러한 장치들을 연결하기 위해서 사용되는 다른 더 큰 케이블에 비해서 크기에 있어 매우 가늘다. 장치들은 버스가 활성상태인 동안에 IEEE 1394-1995 버스에 첨가될 수도 있고 이로부터 분리될 수도 있다. 만약 장치가 그렇게 첨가되거나 분리된다면, 그때는 버스가 그때까지의 기존 노드 사이에서의 데이터 송신을 위해 자동적으로 자체 재구성될 것이다. 노드는 버스 구조상에 고유 주소를 갖는 논리 엔터티(entity)로서 간주된다. 각각의 노드는 식별 ROM, 표준 제어 레지스터 세트 및 자체 주소 공간을 제공한다.
IEEE 1394-1995 케이블 환경은 포인트-포인트 링크에 의해 연결된 노드 네트워크이고, 상기 노드 네트워크는 각 노드의 물리적인 연결부에 포트(port)를 구비하고 각 노드 사이에 케이블을 구비한다. IEEE 1394-1995 직렬 버스의 케이블 환경에 대한 물리적인 토폴로지(topology)는 유한개의 분기를 갖는 비-순환적인 다중 포트 네트워크이다. 케이블 환경에 대한 중요한 제한은 노드가 임의의 폐루프를 형성하지 않고도 모두 연결되어야 한다는 것이다.
IEEE 1394-1995 케이블은 서로 다른 노드들에 있는 포트들을 모두 연결한다. 각 포트는 터미네이터, 트랜시버 및 간단한 논리회로를 구비한다. 노드는 물리적인 연결부상에 여러 개의 포트를 구비할 수 있다. 케이블과 포트는 하나의 논리 버스를 시뮬레이팅하기 위해서 노드 사이의 버스 중계장치(repeater)로서 동작한다. 각각의 노드에 있는 케이블의 물리적인 연결부는 하나 이상의 포트, 중재 논리회로, 재동기 장치 및 엔코더를 구비한다. 각 포트는 케이블 연결기가 연결되는 케이블 미디어 인터페이스를 제공한다. 중재 논리회로는 노드에 대한 버스로의 접속을 제공한다. 재동기 장치는 수신된 데이터 스트로브 엔코딩 데이터 비트를 취하고, 노드 내에 있는 애플리케이션을 통해 사용하기 위해서 로컬 클럭으로 동기된 데이터 비트를 생성한다. 엔코더는 노드를 통해 송신되는 데이터나 재동기 장치를 통해 수신된 데이터 중 하나를 취하고, 상기 취해진 데이터는 또 다른 모드로 주소지정되며, 상기 엔코더는 IEEE 1394-1995 직렬 버스를 통한 송신을 위해 상기 데이터를 데이터-스트로브 포맷으로 엔코드한다. 이러한 성분들을 사용하여, 케이블의 물리적인 연결은 케이블 환경의 물리적인 포인트-포인트 토폴로지를 가상 방송 버스(virtual broadcast bus)로 바꾸고, 이는 시스템의 더 상위의 계층을 통해 기대된다. 이는 물리적인 연결부에 있는 하나의 포트에 수신된 모든 데이터를 취하고, 상기 수신된 데이터를 로컬 클럭으로 재동기시키며, 상기 물리적인 연결부의 모든 다른 포트들로부터 상기 데이터를 중계(repeating)함으로써 달성된다.
두 장치 사이에 등시성 데이터를 송신할 때, 등시성 데이터의 각 패킷은 상기 패킷이 송신되는 사이클의 현 버스 시간으로 시간-스탬프된다. 만약 올바른 사이클로 수신 장치를 통해 수신되지 않는다면, 패킷은 일반적으로 수신 장치에 의해 버려지고 데이터는 손실된다. 이는 특히 매우 시간에 민감한 비디오 데이터를 송신할 때에 그렇다. 비디오 데이터 프레임을 송신할 때, 수신된 데이터 프레임의 제 1 패킷은 상기 패킷의 시간 스탬프 값에 비교될 때 인지된 시간 경계 내에서 수신되어야 한다. 만약 프레임의 제 1 패킷이 이 경계 밖에서 수신된다면, 전체 프레임은 일반적으로 수신 장치에 의해 버려지고 처리되지 않는다.
이러한 시간 스탬프의 값은 송신 장치 내에 있는 사이클 시간 기록기로부터 획득되고, 상기 송신 장치는 노드에 대한 현재의 버스 시간을 보존한다. 사이클 시간 기록기는 현재의 사이클을 나타내는 값을 함께 형성하는 제 2_카운트 필드와 사이클_카운트 필드를 포함한다. 이 사이클 값은 사이클_오프셋 필드로부터의 각 자리올림수(carry)를 통해 증가된다. 사이클_오프셋 필드는 시스템 클럭의 각 전이를 통해 업데이트된다. 사이클_오프셋 필드 내의 값이 3071인 그 이후의 전이를 통해, 이 필드 내의 값은 거의 "0"까지 포함하고(wrap around to zero), 사이클_카운트 필드 내의 값은 증가된다. 사이클_오프셋 필드 내의 값은 현 등시성 사이클의 일부분이다. 노드에서 애플리케이션으로부터의 데이터를 송신할 때, 애플리케이션은 사이클 시간 기록기로부터 현재의 버스 시간을 획득하여야 하고, 다음으로 현재의 버스 시간 값을 패킷에 로드하고 IEEE 1394-1995 직렬 버스를 통해 상기 패킷을 수신 노드에 송신하여야 한다. 송신 노드 내에서는, 현재의 버스 시간 값이 사이클 시간 기록기로부터 보내지는 시간과 애플리케이션이 사이클 시간 기록기로부터 현재의 버스 시간 값을 수신하고, 현재의 버스 시간 값을 패킷에 삽입하며, IEEE 1394-1995 직렬 버스 네트워크를 통해 상기 패킷을 실제적으로 송신하는 시간 사이에는 실질적인 지연이 있을 수 있다. 만약 이러한 지연이 상당하다면, 애플리케이션을 통해 수신된 현재의 버스 시간 값은 패킷이 실제적으로 송신되는 시간까지 쓸모없게 되고, 적절한 시간 경계의 밖에 있을 수 있으며, 상기 송신된 패킷이 수신 장치에 의해 버려지도록 야기될 수 있다.
필요한 것은, 패킷이 수신 장치에 의해 버려지지 않고 적절히 처리되기 위해서, 송신된 패킷이 적절한 시간 경계 내에서 수신 장치에 의해 수신되는 것을 보장하는 방법과 장치이다. 더 필요한 것은, IEEE 1394-1995 직렬 버스 상의 노드로부터 등시성 패킷의 실제적인 송신에 대응하는 현재의 버스 시간 값을 예측하기 위한 방법과 장치이다.
본 발명은 장치들 사이의 정보 송신 분야에 관한 것이다. 더 상세하게, 본 발명은 IEEE 1394-1995 직렬 버스 네트워크를 통해 장치들 사이에서의 시간에 민감한 정보를 송신하는 분야에 관한 것이다.
도 1은 컴퓨터 시스템과 비디오 카메라를 포함하는 IEEE 1394-1995 직렬 버스 네트워크의 블록도.
도 2는 컴퓨터 시스템(10)의 내부 성분들에 대한 블록도.
도 3은 IEEE 1394-1995 직렬 버스 네트워크를 통해 송신하기 위한 등시성 데이터 패킷의 포맷을 나타내는 도면.
도 4는 등시성 데이터 패킷 내에 있는 CIP 헤더 필드의 포맷을 나타내는 도면.
도 5는 본 발명의 바람직한 실시예에 따라 등시성 데이터 프레임을 예측적으로 시간 스탬핑하는데 수반되는 단계의 흐름도.
도 6은 실제적인 비디오 프레임에 선행하는 다수의 더미 프레임을 포함하는 등시성 비디오 프레임의 스트림에 대한 송신을 나타내는 도면.
IEEE 1394-1995 직렬 버스 네트워크를 통해 송신된 등시성 데이터 패킷을 예측적으로 시간 스탬프하기 위해서, 등시성 데이터 패킷 스트림을 수신 노드에 보내야 하는 애플리케이션은 제일 먼저 다수의 패킷으로 각각 구성된 다수의 더미 프레임(dummy frame)을 송신한다. 바람직하게, 이러한 등시성 데이터 패킷은 비디오 데이터 프레임을 구성한다. 이러한 더미 패킷으로부터, 애플리케이션은 각 패킷의 공통 등시성 패킷(CIP) 내에 있는 시간 스탬프 값을 획득한다. 이러한 획득된 시간 스탬프를 사용하여, 애플리케이션은 송신될 각 데이터 프레임에 대한 표시 시간 값을 계산한다. 송신된 비디오 프레임으로부터 획득된 시간 스탬프 값은 송신 대기열(transmit queue) 내에서 앞선 다수의 프레임인 비디오 프레임에 대한 표시 시간을 계산하기 위해 사용된다. 일단 프레임에 대한 표시 시간 값이 계산되면, 상기 값은 애플리케이션에 의해 해당 프레임 내의 제 1 패킷에 있는 CIP 헤더에 삽입되고, 프레임은 IEEE 1394-1995 직렬 버스 네트워크를 통한 수신 노드로의 송신을 위해 송신 대기열에 보내진다.
컴퓨터 시스템과 비디오 카메라를 포함하는 예시적인 IEEE 1394-1995 직렬 버스 네트워크의 블록도가 도 1에 도시되어 있다. 컴퓨터 시스템(10)은 관련 디스플레이(12)를 포함하고, IEEE 1394-1995 직렬 버스 케이블(16)을 통해 비디오 카메라(14)에 연결된다. 비디오 데이터와 이에 관련된 데이터는 IEEE 1394-1995 직렬 버스 케이블(16)을 통해 비디오 카메라(14)와 컴퓨터(10)간에 송신된다.
컴퓨터 시스템(14)의 내부 성분들에 대한 블록도가 도 2에 도시되어 있다. 컴퓨터 시스템(10)은 중앙처리장치(CPU)(20), 메인 메모리(30), 비디오 메모리(22), 대용량 저장 장치(32) 및 IEEE 1394-1995 인터페이스 회로(28)를 포함하고, 상기 성분들은 전형적인 양방향성 시스템 버스(34)에 의해 모두 연결된다. 인터페이스 회로(28)는 IEEE 1394-1995 직렬 버스를 통해 통신을 송신 및 수신하기 위해 물리적인 인터페이스 회로(42)를 포함한다. 물리적인 인터페이스 회로(42)는 IEEE 1394-1995 직렬 버스 케이블(16)을 통해 카메라(14)에 연결된다. 본 발명의 바람직한 실시예에서, 인터페이스 회로(28)는 컴퓨터 시스템(10) 내에 있는 IEEE 1394-1995 인터페이스 카드 상에 구현된다. 그러나, 상기 인터페이스 회로(28)가 머더보드 상에 인터페이스 회로를 제작하는 것을 포함하는 임의의 다른 적절한 방식으로 컴퓨터 시스템(10) 내에 구현될 수 있다는 것이 당업자들에게 명확해야 한다. 대용량 저장 장치(32)는 하나 이상의 자성 저장 기술, 광학 저장 기술이나 자성-광학 저장 기술, 또는 임의의 다른 유용한 대용량 저장 기술을 사용하여 고정된 미디어와 분리가능한 미디어를 모두 포함할 수 있다. 시스템 버스(34)는 메모리(22 및 30)중 임의의 부분을 주소지정하기 위한 주소 버스를 포함한다. 시스템 버스(34)는 CPU(20), 메인 메모리(30), 비디오 메모리(22), 대용량 저장 장치(32) 및 인터페이스 회로(28)들 중 두 성분 및 그 이상의 성분들 사이의 데이터 전달을 위한 데이터 버스를 또한 포함한다.
컴퓨터 시스템(10)은 키보드(38), 마우스(40) 및 관련 디스플레이(12)를 포함하는 다수의 주변 입/출력 장치에 또한 연결된다. 키보드(38)는 사용자로 하여금 데이터와 제어 명령을 컴퓨터 시스템(10)에 입력하도록 허용하기 위해서 CPU(20)에 연결된다. 종래의 마우스(40)는 커서 제어 장치로서 디스플레이(12) 상의 그래픽 이미지를 조정하기 위해 키보드(38)에 연결된다.
비디오 메모리(22)의 포트는 비디오 멀티플렉스 및 이동기 회로(24)에 연결되고, 상기 비디오 멀티플렉스 및 이동기 회로(24)는 비디오 증폭기(26)에 차례로 연결된다. 비디오 증폭기(26)는 디스플레이(12)를 구동시킨다. 비디오 멀티플렉스 및 이동기 회로(24)와 비디오 증폭기(26)는 비디오 메모리(22)에 저장된 픽셀 데이터를 디스플레이(12)가 사용하기에 적합한 래스터 신호로 변환한다.
IEEE 1394-1995 직렬 버스 네트워크를 통해 송신하기 위한 등시성 데이터 패킷의 포맷이 도 3에 도시되어 있다. 데이터 패킷의 포맷은 IEC 1883 표준을 또한 따른다. 데이터-길이(data_length) 필드는, 데이터 필드 내에 있는 데이터의 바이트 수를 나타내고 CIP 헤더 내에 있는 바이트 수를 포함하는 값을 포함한다. 채널 필드는 등시성 패킷이 송신되는 채널 번호를 포함한다. tCode 필드는 패킷에 대한 트랜잭션 코드를 포함한다. 등시성 데이터 패킷에 대해서, tCode 필드는 Ah 또는 Ch의 값 중 하나를 포함한다. sy 필드는, 현재의 등시성 패킷에 있는 데이터를 일부 애플리케이션의 특별한 경우와 동기시키기 위해 일부 애플리케이션에서 사용되는 동기 플래그를 포함한다. 소스ID 필드는 패킷을 송신하는 노드의 물리적인 식별 코드를 나타내는 6비트 값을 포함한다. 다른 CIP 헤더 필드에서의 값은 패킷에 송신되는 데이터의 포맷에 의존한다. 데이터 필드는, 만약 존재한다면, 패킷으로 송신되는 내용 데이터를 포함한다.
등시성 데이터 패킷 내에 있는 CIP 헤더의 형태가 도 4에 도시되어 있다. CIP 헤더 내에서, SID 필드는 송신 노드의 소스 노드 ID 값을 포함한다. DBS 필드는 데이터 블록의 크기를 쿼드렛(quadlet)으로 나타내는 값을 포함한다. FN 필드는 소스 패킷이 분할되는 데이터 블록의 수를 나타내는 분할 수(fractional number)를 포함한다. QPC 필드는 분할된 데이터 블록의 크기를 같게 하기 위해 소스 패킷에 추가된 더미 쿼드렛의 수를 나타내는 값을 포함한다. 만약 FN 필드가 소스 패킷이 분할되지 않았다는 것을 나타낸다면, 그 때의 QPC 필드는 "0"과 같은 값을 포함할 것이다. SPH 플래그는 소스 패킷이 소스 패킷 헤더를 포함하는지에 대한 여부를 나타낸다. SPH 플래그는 소스 패킷이 소스 패킷 헤더를 포함할 때 논리 "1"로 설정된다. RSV 필드는 미래의 확장을 위해 예비된다. DBC 필드는 데이터 블록의 손실을 검출하기 위한 데이터 블록의 연속성 카운터이다. FMT 필드는 패킷의 포맷을 식별하는 포맷 식별자를 포함한다. FDF 필드는 포맷 종속 필드이고 패킷의 포맷에 의존한다. SYT 필드는 송신기와 수신기를 동기시키기 위해 사용된다.
IEEE 1394-1995 직렬 버스 네트워크를 통해 등시성 데이터를 송신할 때, SYT 필드는 프레임의 표시 시간을 위한 시간 스탬프 값을 포함한다. 수신 노드는 데이터가 비디오 데이터에 대한 올바른 시간 경계 내에 제공되는 것을 보장하기 위해 이러한 시간 스탬프 값을 사용한다. 상술된 것처럼, 만약 프레임이 올바른 시간 경계 내에 포함되지 않는다면, 수신 장치는 모든 프레임을 버릴 것이다.
송신된 데이터가 적절한 시간 스탬프 값을 포함하도록 보장하기 위해서, 본 발명의 애플리케이션은 제일 먼저 다수의 더미 데이터 프레임을 보냄으로써 시간 스탬프 값을 계산한다. 데이터 프레임은 다수의 등시성 패킷으로 구성된다. 프레임 당 등시성 패킷의 수는 보내지는 데이터의 유형에 좌우된다. 비디오에 대해서, 데이터 프레임은 하나의 디지털 비디오 프레임일 수 있다. 제 1 데이터 프레임이 보내진 후에, 제 1 프레임의 보내진 마지막 패킷의 시간 스탬프가 획득된다. 이 값으로부터, 새로운 시간 스탬프 값이나 표시 시간이 비디오 프레임의 제 1 패킷에 대해 계산되는데, 상기 비디오 프레임은 시간 스탬프 값이 획득된 프레임보다 앞선 다수의 프레임이다. 본 발명의 바람직한 실시예에서, 표시 시간이 비디오 프레임에 대해 계산되는데, 상기 비디오 프레임은 시간 스탬프 값이 획득된 프레임보다 앞선 더미 프레임의 바람직한 수보다 하나가 적은 4개의 프레임이다. 일단 계산되면, 이 표시 시간 값은 적절한 데이터 프레임 내에 있는 제 1 패킷의 CIP 헤더의 SYT 필드에 기록되고, IEEE 1394-1995 직렬 버스를 통해 수신 노드로 송신하기 위해서 송신 대기열에 보내진다.
본 발명의 바람직한 실시예에 따라 등시성 데이터 프레임을 예측적으로 시간 스탬핑하는데 수반되는 단계의 흐름도가 도 5에 도시되어 있다. 흐름도는, 컴퓨터(10) 내의 애플리케이션이 등시성 데이터 스트림을 비디오 카메라(14)에 송신하기 위해 준비될 때, 단계(50)에서 시작된다. 단계(52)에서, 애플리케이션은 더미 데이터 프레임을 등시성 송신 대기열에 첨부한다. 각 더미 데이터 프레임은 다수의 더미 IEEE 1394-1995 등시성 패킷으로 구성된다. 데이터 프레임 당 더미 패킷의 수는 보내질 데이터의 유형에 의해 결정된다. 단계(54)에서, 애플리케이션은 IEEE 1394-1995 직렬 버스 네트워크(16)를 통해 컴퓨터(10)로부터 비디오 카메라(14)로 더미 프레임을 송신하기 시작한다. 본 발명의 바람직한 실시예에서, 5개의 더미 데이터 프레임은 실제 비디오 데이터를 포함하는 실제 데이터 프레임이 수신 장치로 송신되기 전에 보내진다. 대안적으로, 적절한 수의 더미 데이터 프레임이 애플리케이션에 의해 송신될 수 있다. 단계(56)에서, 애플리케이션은 더미 데이터 프레임이 보내졌다는 통보를 수신할 때까지 기다린다.
제 1 데이터 프레임이 보내진 후에, 애플리케이션은 IEEE 1394-1995 인터페이스 회로로부터 이러한 데이터 프레임에 있는 마지막 패킷의 시간 스탬프 값을 획득한다. 이 시간 스탬프 값으로부터, 제 1 실제 데이터 프레임 내에 있는 제 1 실제 패킷에 대한 표시 시간이 단계(58)에서 계산된다. 제 1 실제 데이터 프레임은 보내질 6번째 프레임일 것이고, 5개의 더미 데이터 프레임 후에 송신될 것이다. 이 표시 시간 값은 다음과 같은 식을 이용하여 계산된다:
표시 시간 = {(더미 프레임의 수-1)*데이터프레임 송신 시간길이}
+시간 스탬프+ 표시 시간 인자
데이터프레임 송신 시간길이 값(DataFrameXmtTimeLength value)은 송신된 각 데이터 프레임의 시간길이를 나타내고, 데이터 프레임 당 등시성 패킷의 수에 패킷 당 등시성 송신 시간을 곱함으로써 계산된다. 패킷 당 등시성 송신 시간은 IEEE 1394-1995 규격에서 기술된 것처럼 패킷 당 고정된 값이다. 데이터 프레임 송신 시간길이 값은, 시간 스탬프 값이 획득된 프레임과 표시 시간이 계산되는 프레임 사이의 송신된 프레임의 수를 나타내는 적절한 시간 값을 더하기 위해서, 송신될 더미 데이터 프레임의 수보다 하나가 적은 값과 곱해진다. 시간 스탬프 값은 데이터 프레임 내의 이전 패킷의 송신으로부터 검색된 시간 스탬프 값이다. 제 1 실제 비디오 프레임에 대해서, 시간 스탬프 값은 제 1 더미 프레임에서 보내진 마지막 등시성 패킷의 사이클 시간과 동일하다. 본 발명의 바람직한 실시예에서는, 제 1 더미 프레임에서 보내진 마지막 등시성 패킷에 대한 사이클 시간으로부터의 사이클 카운트 값만이 시간 스탬프 값으로 사용된다. 제 1 더미 프레임에서 보내진 마지막 등시성 패킷에 대한 사이클 시간의 사이클 오프셋 값은 사용되지 않는데, 그 이유는 패킷이 보내지는 사이클만이 패킷의 표시 시간을 계산하는데 필요하기 때문이다. 사이클 내의 오프셋 시간은 표시 시간을 계산하는데 필요하지 않다. 그러나, 모든 사이클 시간의 값은 대안적으로 시간 스탬프 값으로 사용될 수 있다는 것이 당업자들에게 명확해야 한다. 표시 시간 인자(Presentation Time Factor)는 시간 스탬프를 적절한 표시 시간으로 변경하기 위해 사용되는 등시성 사이클 유닛에서의 인자이다. 표시 시간 인자의 값은 특별한 구현에 따라 다르고, 시스템 구현 및 성능 특성으로 인해 바뀔 것이다. 표시 시간 인자 값은 두 성분으로 구성되고 다음과 같은 식을 사용하여 계산된다:
표시 시간 인자 = tdiff + 송신지연 극한치
tdiff 값은 패킷이 송신될 때의 실제 사이클 시간과 하드웨어가 패킷이 송신되었음을 실제적으로 통보하는 사이클 시간 사이의 차이를 나타낸다. 패킷이 송신될 때의 실제 사이클 시간과 하드웨어가 패킷이 송신되었음을 실제적으로 통보하는 사이클 시간 사이의 지연은 특별한 하드웨어 구현을 통해 결정된다. 만약 하드웨어가 패킷이 송신된 실제 시간을 리턴(returning)하는 것을 지원한다면, tdiff 값은 "0"과 같다. 송신 지연 극한값은 패킷이 오디오/비디오 장치에 의해 송신되도록 허용된 최대 사이클의 수와 같다. 이 값은 특정 하드웨어 장치에 대한 "소비자용 디지털 VCR의 규격(Specifications of Consumer-Use Digital VCR)"에서 기술되어 있다. 바람직하게, 이 값은 450 마이크로세컨드 또는 3-사이클과 같다.
일단 표시 시간이 데이터 프레임에 대해 계산되면, 이 데이터 프레임은 시간 스탬프될 수 있다. 단계(60)에서, 표시 시간 값은 데이터 프레임에 포함된 제 1 등시성 데이터 패킷의 SYT 필드에 기록된다. 단계(62)에서, 데이터 프레임은 IEEE 1394-1995 직렬 버스 네트워크를 통한 송신을 위해 송신 대기열에 첨가된다. 다음으로, 단계(64)에서, 데이트 스트림 내에 송신될 데이터 프레임이 더 있는지를 결정한다. 만약 송신될 데이터 프레임이 더 있다면, 송신된 프레임으로부터 획득된 시간 스탬프 값에서의 각 프레임에 대한 적절한 표시 시간을 계산하기 위해, 송신될 각 프레임에 대해서 단계(56) 내지 단계(62)가 반복되는데, 상기 송신된 프레임은 표시 시간 값이 계산되는 프레임 앞에 있는 4개의 프레임이다. 일단 모든 프레임이 적절히 시간 스탬프되고 송신 대기열에 첨가되면, 동작은 단계(66)에서 종료된다.
실제 비디오 프레임에 선행하는 다수의 더미 프레임을 포함하는 등시성 프레임의 스트림에 대한 송신이 도 6에 도시되어 있다. 5개의 더미 프레임(80, 82, 84, 86 및 88)이 실제 비디오 프레임(90 및 92) 이전에 연속적으로 송신된다. 5개의 더미 프레임(80, 82, 84, 86 및 88)으로부터, 애플리케이션은 데이터 스트림 내의 실제 비디오 프레임에 대한 표시 시간 값을 계산한다. 위에서 상세하게 설명된 것처럼, 실제 프레임(90)에 대한 표시 시간 값은 제 1 더미 프레임(80)으로부터 획득된 시간 스탬프 값을 사용하여 계산된다. 대응적으로, 제 2 실제 프레임(92)에 대한 표시 시간은 제 2 더미 프레임(82)으로부터 획득된 시간 스탬프 값을 사용하여 계산된다. 일단 프레임에 대한 표시 시간 값이 계산되면, 이 표시 시간 값은 프레임 내에 있는 제 1 패킷의 CIP 헤더 내에 있는 SYT 필드에 기록된다. 상기 프레임 내의 나머지 패킷은 프레임이 송신되는 현재의 버스 사이클 시간과 함께 전형적인 방식으로 시간-스탬프된다. 일단 프레임에 대한 표시 시간이 계산되어 CIP 헤더의 SYT 필드에 기록되면, 적절한 시간에 IEEE 1394-1995 직렬 버스를 통한 수신 노드로의 송신을 위해 프레임이 송신 노드의 송신 대기열에 첨가된다.
이러한 처리는, 데이터 스트림 내의 모든 데이터 프레임이 컴퓨터(10)로부터 비디오 카메라(14)로 송신될 때까지, 데이터 스트림에 있는 각각의 데이터 프레임에 대해서 반복된다. 이러한 방식으로, 프레임에 대한 적절한 시간 스탬프 값을 계산하고 상기 값을 프레임 내의 제 1 패킷에 있는 CIP 헤더의 SYT 필드에 삽입함으로써, 애플리케이션은, 비디오 카메라(14)에 의해 수신되었을 때, 비디오 데이터의 프레임이 적절하게 처리될 것이고 버려지지 않을 것이라는 것을 보장한다.
본 발명의 바람직한 실시예는 IEEE 1394-1995 직렬 버스 네트워크를 통해 개인용 컴퓨터(10) 내의 소프트웨어 애플리케이션으로부터 비디오 카메라(14)로 등시성 데이터를 송신하기 위해 사용된다. 그러나, 본 발명은, 수신되었을 때, 시간 스탬프 값이 데이터의 프레임이나 패킷이 송신되는 사이클에 대해 적합한 것을 보장하기 위해서, 두 적절하게 구성된 임의의 애플리케이션 및/또는 장치 사이의 시간에 민감한 데이터 프레임과 패킷을 송신하기 위해 사용될 수 있다는 것이 당업자에게 명확할 것이다. 본 발명의 바람직한 실시예에서, 모든 프레임에 대한 시간 스탬프 값이 계산되고 프레임의 제 1 패킷에 기록된다. 또한 본 발명은 복수 개별 패킷들이 비디오 프레임의 일부인 것에 관계없이 이들을 시간 스탬핑하기 위하여 적절하게 사용될 수 있다.
본 발명은 본 발명의 구조 및 동작 원리를 이해하기에 용이하도록 상세 사항을 병합하고 있는 특정 실시예를 통해 기술되고 있다. 본 발명의 특정 실시예와 상세 사항에 대한 이러한 참조는 본 명세서에 첨부된 청구 범위를 제한하려 하는 것이 아니다. 변형이 본 발명의 사상과 범위를 벗어나지 않으면서 설명을 위해 선택된 실시예에서 이루어질 수 있다는 사실이 당업자에게 명백할 것이다.

Claims (30)

  1. 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법에 있어서,
    a. 송신될 상기 데이터 프레임 앞에 있는 다수의 프레임 중 하나의 이전 프레임을 송신하는 단계,
    b. 상기 이전 프레임으로부터 시간 스탬프 값을 획득하는 단계, 및
    c. 상기 시간 스탬프 값을 사용하여 상기 시간 값을 결정하는 단계를 포함하는, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  2. 제 1항에 있어서, 상기 시간 값을 결정하는 단계는 프레임 숫자에 대한 송신 시간을 나타내는 값을 상기 시간 스탬프 값에 더함으로써 완성되는, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  3. 제 1항에 있어서, 상기 시간 값을 상기 송신될 데이터 프레임에 삽입하는 단계를 더 포함하는, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  4. 제 3항에 있어서, 상기 시간 값이 상기 송신될 데이터 프레임의 제 1 패킷에 삽입되는, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  5. 제 1항에 있어서, 상기 프레임의 수는 4인, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  6. 제 1항에 있어서, 상기 이전 프레임은 더미 프레임(dummy frame)인, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  7. 제 1항에 있어서, 상기 시간 값은 표시 시간 값인, 송신될 데이터 프레임에 대한 시간 값을 계산하는 방법.
  8. 다수의 패킷을 포함하는 데이터 스트림을 송신하는 방법에 있어서,
    a. 이전 패킷을 송신하고, 상기 이전 패킷으로부터 시간 스탬프 값을 획득하고, 상기 시간 스탬프 값을 이용하여 상기 시간 값을 결정함으로써, 상기 데이터 스트림 내의 송신될 패킷에 대한 시간 값을 계산하는 단계, 및
    b. 상기 시간 값을 상기 송신될 패킷에 삽입하는 단계를 포함하는, 데이터 스트림을 송신하는 방법.
  9. 제 8항에 있어서, 시간 값을 계산하는 단계는 상기 이전 패킷의 상기 시간 스탬프 값을 상기 이전 패킷과 상기 송신될 패킷 사이에 있는 다수의 패킷에 대한 송신 시간을 나타내는 값에더함으로써 완료되는, 데이터 스트림을 송신하는 방법.
  10. 제 9항에 있어서, 상기 송신될 패킷은 비디오 프레임의 일부인, 데이터 스트림을 송신하는 방법.
  11. 제 10항에 있어서, 상기 송신될 패킷은 상기 비디오 프레임 내의 제 1 패킷인, 데이터 스트림을 송신하는 방법.
  12. 다수의 패킷을 포함하는 데이터 스트림을 송신하는 방법에 있어서,
    a. 송신 노드로부터 하나 이상의 더미 패킷을 송신하는 단계로서, 각각의 상기 더미 패킷은 대응하는 더미 패킷이 송신되는 현재의 시간을 나타내는 관련 시간 스탬프를 갖는, 하나 이상의 더미 패밋을 송신하는 단계,
    b. 상기 데이터 스트림 내의 상기 송신될 패킷의 앞에 있는 다수의 패킷 중 이전에 송신된 하나의 패킷으로부터의 시간 스탬프 값을 이용하여, 상기 더미 패킷 이후의 송신될 패킷에 대한 시간 값을 계산하는 단계,
    c. 상기 시간 값을 상기 송신될 패킷에 삽입하는 단계, 및
    d. 상기 송신될 패킷을 상기 송신 노드로부터 상기 수신 노드에 송신하는 단계를 포함하는, 데이터 스트림을 송신하는 방법.
  13. 제 12항에 있어서, 상기 데이트 스트림 내의 상기 패킷은 하나 이상의 프레임으로 그룹화되는, 데이터 스트림을 송신하는 방법.
  14. 제 13항에 있어서, 상기 단계(b) 내지 단계(d)가 각 프레임 내의 제 1 패킷에 대해 반복되는, 데이터 스트림을 송신하는 방법.
  15. 제 14항에 있어서, 시간 값을 계산하는 단계는 이전에 송신된 패킷과 상기 송신될 패킷 사이에 있는 다수의 패킷에 대한 송신 시간을 나타내는 값을 상기 이전에 송신된 패킷으로부터의 상기 시간 스탬프 값에 더함으로써 완료되는, 데이터 스트림을 송신하는 방법.
  16. 제 15항에 있어서, 상기 시간 값은 표시 시간 값인, 데이터 스트림을 송신하는 방법.
  17. 제 16항에 있어서, 상기 데이터 스트림은 등시성 데이터(isochronous data)인, 데이터 스트림을 송신하는 방법.
  18. 제 17항에 있어서, 상기 송신 노드와 수신 노드는 IEEE 1394-1995 직렬 버스 네트워크를 통해 서로 연결되는, 데이터 스트림을 송신하는 방법.
  19. 제 18항에 있어서, 상기 시간 값은 상기 패킷의 CIP 헤더 내에 있는 SYT 필드에 삽입되는, 데이터 스트림을 송신하는 방법.
  20. 다수의 패킷을 포함하는 데이터 스트림을 송신하기 위한 장치에 있어서,
    a. 상기 데이터 스트림 내의 다수의 패킷을 송신 노드로부터 수신 노드로 송신하기 위한 송신 회로로서, 각각의 상기 패킷은 상기 패킷이 송신되는 현재 시간을 나타내는 관련 시간 스탬프 값을 갖는, 송신 회로,
    b. 이전 패킷으로부터 상기 시간 스탬프 값을 획득하고, 상기 획득된 시간 스탬프 값을 이용하여, 상기 이전 패킷 이후의 다수의 패킷 중 송신될 패킷에 대한 시간 값을 계산하고, 상기 시간 값을 상기 송신될 패킷이 송신되기 전에 상기 송신될 패킷에 삽입하기 위한 제어 애플리케이션을 포함하는, 데이터 스트림을 송신하기 위한 장치.
  21. 제 20항에 있어서, 상기 송신 회로는, 상기 시간 값이 상기 제어 애플리케이션에 의해 상기 패킷에 삽입된 후에 상기 송신될 패킷을 또한 송신하는, 데이터 스트림을 송신하기 위한 장치.
  22. 제 21항에 있어서, 상기 시간 값은 표시 값이고, 상기 이전 패킷과 상기 송신될 패킷 사이에 있는 패킷 숫자의 송신 시간을 나타내는 값을 상기 획득된 시간 스탬프 값에 더함으로써 계산되는, 데이터 스트림을 송신하기 위한 장치.
  23. 제 22항에 있어서, 상기 데이트 스트림 내의 상기 패킷은 하나 이상의 패킷으로 그룹화되는, 데이터 스트림을 송신하기 위한 장치.
  24. 제 23항에 있어서, 상기 제어 애플리케이션은 단지 각 프레임의 제 1 패킷에 대한 상기 시간 값을 계산하는, 데이터 스트림을 송신하기 위한 장치.
  25. 제 23항에 있어서, 상기 데이터 스트림은 등시성 데이터인, 데이터 스트림을 송신하기 위한 장치.
  26. 제 25항에 있어서, 상기 송신 노드와 상기 수신 노드는 IEEE 1394-1995 직렬 버스 네트워크를 통해 서로 연결되는, 데이터 스트림을 송신하기 위한 장치.
  27. 제 26항에 있어서, 상기 시간 값은 상기 송신될 패킷의 CIP 헤더 내에 있는 SYT 필드에 삽입되는, 데이터 스트림을 송신하기 위한 장치.
  28. IEEE 1394-1995 직렬 버스 구조를 통해, 하나 이상의 프레임으로 그룹화된 다수의 패킷을 포함하는 등시성 데이터 스트림을 송신 노드로부터 수신 노드로 송신하는 방법에 있어서,
    a. 하나 이상의 더미 패킷을 상기 송신 노드로부터 수신 노드로 송신하는 단계로서, 각각의 상기 더미 패킷은 대응하는 더미 패킷이 송신되는 현재 시간을 나타내는 관련 시간 스탬프 값을 갖는, 더미 패킷을 송신하는 단계,
    b. 상기 데이터 스트림 내의 상기 송신될 패킷 앞에 있는 다수의 패킷 중 이전에 송신된 하나의 패킷으로부터의 시간 스탬프 값을 이용하여, 상기 더미 패킷 후의 송신될 패킷에 대한 시간 값을 계산하는 단계,
    c. 상기 시간 값을 상기 송신될 패킷에 삽입하는 단계,
    d. 상기 송신될 패킷을 상기 송신 노드로부터 상기 수신 노드에 송신하는 단계, 및
    e. 상기 데이트 스트림 내의 각 프레임 내에 있는 제 1 패킷에 대해 단계(b) 내지 단계(d)를 반복하는 단계를 포함하는, 등시성 데이터 스트림을 송신하는 방법.
  29. 제 28항에 있어서, 시간 값을 계산하는 계산 단계는 이전에 송신된 패킷과 상기 송신될 패킷 사이에 있는 패킷 숫자의 송신 시간을 나타내는 값을 상기 이전에 송신된 패킷으로부터의 상기 시간 스탬프 값에 더함으로써 완료되는, 등시성 데이터 스트림을 송신하는 방법.
  30. 제 29항에 있어서, 상기 시간 값은 상기 송신될 패킷의 CIP 헤더 내에 있는 SYT 필드에 삽입되는, 등시성 데이터 스트림을 송신하는 방법.
KR1020007008427A 1998-03-09 1999-03-05 송신 데이터의 예측적인 시간 스탬핑 KR100657582B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/037,397 1998-03-09
US09/037,397 US6680944B1 (en) 1998-03-09 1998-03-09 Apparatus for and method of predictive time stamping of isochronous data packets transmitted over an IEEE 1394-1995 serial bus network

Publications (2)

Publication Number Publication Date
KR20010040558A true KR20010040558A (ko) 2001-05-15
KR100657582B1 KR100657582B1 (ko) 2006-12-19

Family

ID=21894126

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007008427A KR100657582B1 (ko) 1998-03-09 1999-03-05 송신 데이터의 예측적인 시간 스탬핑

Country Status (8)

Country Link
US (3) US6680944B1 (ko)
EP (1) EP1062814B1 (ko)
KR (1) KR100657582B1 (ko)
AT (1) ATE376749T1 (ko)
AU (1) AU2894999A (ko)
CA (1) CA2322153C (ko)
DE (1) DE69937394T2 (ko)
WO (1) WO1999046937A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6680944B1 (en) * 1998-03-09 2004-01-20 Sony Corporation Apparatus for and method of predictive time stamping of isochronous data packets transmitted over an IEEE 1394-1995 serial bus network
US7246180B1 (en) * 1998-07-31 2007-07-17 Matsushita Electric Industrial Co., Ltd. Connection-confirmable information processing system, connection-confirmable information processing apparatus, information processing method by which connection is conformable, recorder, recording system, recording method, method for recognizing correspondence between node and terminal, computer, terminal, and program recor
US6748421B1 (en) * 1998-12-23 2004-06-08 Canon Kabushiki Kaisha Method and system for conveying video messages
US6661811B1 (en) * 1999-02-12 2003-12-09 Koninklijke Philips Electronics N.V. Method of and apparatus for communicating isochronous data
US7492393B2 (en) * 1999-02-12 2009-02-17 Sony Corporation Method of and apparatus for generating a precise frame rate in digital video transmission from a computer system to a digital video device
JP4137290B2 (ja) * 1999-06-08 2008-08-20 富士通株式会社 パケット転送方法及びパケット転送制御装置
JP2001203727A (ja) * 2000-01-18 2001-07-27 Sony Corp 通信方法及び通信装置
EP1256207B1 (en) * 2000-02-18 2007-09-05 Bridgeco AG Multi-portal bridge for providing network connectivity
US6895009B1 (en) 2000-04-07 2005-05-17 Omneon Video Networks Method of generating timestamps for isochronous data
EP1148503A1 (en) * 2000-04-08 2001-10-24 Deutsche Thomson-Brandt Gmbh Method and apparatus for recording on a storage medium or replaying from a storage medium data packets of a transport stream
US7819003B2 (en) * 2002-06-11 2010-10-26 Intelligent Technologies International, Inc. Remote monitoring of fluid storage tanks
US20020089602A1 (en) * 2000-10-18 2002-07-11 Sullivan Gary J. Compressed timing indicators for media samples
US7046670B2 (en) * 2001-03-30 2006-05-16 Sony Corporation Method and system for synchronizing isochronous data on transmit over the IEEE 1394 bus from content unaware devices
US20080250869A1 (en) * 2002-06-11 2008-10-16 Intelligent Technologies International, Inc. Remote Monitoring of Fluid Pipelines
US8994546B2 (en) * 2002-06-11 2015-03-31 Intelligent Technologies International, Inc. Remote monitoring of material storage containers
DE10227165A1 (de) * 2002-06-18 2004-01-29 Siemens Ag Verfahren und Anordnung zur Codierung bzw. Decodierung einer Folge digitaler Daten
US6871312B2 (en) * 2002-08-27 2005-03-22 Spirent Communications Method and apparatus for time stamping data
US7953194B2 (en) * 2002-09-27 2011-05-31 Broadcom Corporation Handling video transition errors in video on demand streams
US7428222B1 (en) * 2003-02-28 2008-09-23 Entropic Communications Inc. Method of bus configuration to enable device bridging over dissimilar buses
JP4185426B2 (ja) * 2003-09-16 2008-11-26 株式会社リコー 端末
US7251703B1 (en) * 2004-02-27 2007-07-31 Entropic Communications, Inc. Method of time stamping to enable device bridging over dissimilar buses
ES2401964T3 (es) * 2004-07-01 2013-04-25 Oy Gamecluster Ltd Método y dispositivo para suministrar datos a un descodificador
WO2006003234A1 (en) * 2004-07-01 2006-01-12 Oy Gamecluster Ltd A method and a device for service data delivery
WO2006003232A1 (en) * 2004-07-01 2006-01-12 Oy Gamecluster Ltd A method and a device for transferring predictive and non-predictive data frames
KR100678277B1 (ko) * 2004-11-30 2007-02-02 삼성전자주식회사 멀티미디어 데이터 송수신 시스템에서 지연 시간에 대한측정값을 제공하는 지연 시간 측정 장치와 그 방법
US7756036B2 (en) * 2005-12-22 2010-07-13 Intuitive Surgical Operations, Inc. Synchronous data communication
US7757028B2 (en) * 2005-12-22 2010-07-13 Intuitive Surgical Operations, Inc. Multi-priority messaging
US8054752B2 (en) 2005-12-22 2011-11-08 Intuitive Surgical Operations, Inc. Synchronous data communication
US20100299421A1 (en) * 2007-10-04 2010-11-25 Robby Gurdan Digital multimedia network with hierarchical parameter control protocol
US20120281704A1 (en) 2011-05-02 2012-11-08 Butterworth Ashley I Methods and apparatus for isochronous data delivery within a network

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4894823A (en) * 1986-02-28 1990-01-16 American Telephone And Telegraph Company Time stamping for packet system nodes
US5052029A (en) 1990-04-05 1991-09-24 Apple Computer, Inc. Self-correcting synchronization signal method and apparatus
US5400340A (en) 1993-03-04 1995-03-21 Apple Computer, Inc. End of packet detector and resynchronizer for serial data buses
US5481543A (en) * 1993-03-16 1996-01-02 Sony Corporation Rational input buffer arrangements for auxiliary information in video and audio signal processing systems
US5412698A (en) 1993-03-16 1995-05-02 Apple Computer, Inc. Adaptive data separator
US5444709A (en) 1993-09-30 1995-08-22 Apple Computer, Inc. Protocol for transporting real time data
US5579183A (en) 1994-04-08 1996-11-26 U.S. Philips Corporation Recording and reproducing an MPEG information signal on/from a record carrier
US5434860A (en) 1994-04-20 1995-07-18 Apple Computer, Inc. Flow control for real-time data streams
US5561670A (en) 1994-05-13 1996-10-01 Apple Computer, Inc. Method and apparatus for operating a multicast system on an unreliable network
DE69521374T2 (de) 1994-08-24 2001-10-11 Hyundai Electronics America, Milpitas Videoserver und diesen verwendendes System
JP3371174B2 (ja) 1994-09-22 2003-01-27 ソニー株式会社 パケット受信装置
US5933430A (en) * 1995-08-12 1999-08-03 Sony Corporation Data communication method
JP3687188B2 (ja) * 1996-04-05 2005-08-24 ソニー株式会社 パケット伝送方法
US5859835A (en) * 1996-04-15 1999-01-12 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks
DE69735415T2 (de) * 1996-05-07 2006-09-28 Yamaha Corp., Hamamatsu Verfahren und System zur Übertragung von Audiodaten mit Zeitstempel
JPH10190705A (ja) * 1996-10-22 1998-07-21 Sony Corp 伝送装置および方法、並びに、受信装置および方法
US5860060A (en) 1997-05-02 1999-01-12 Texas Instruments Incorporated Method for left/right channel self-alignment
US6373821B2 (en) * 1998-02-20 2002-04-16 Apple Computer, Inc. Method for setting time stamp in SYT field of packet headers for IEEE-1394 devices
US6680944B1 (en) * 1998-03-09 2004-01-20 Sony Corporation Apparatus for and method of predictive time stamping of isochronous data packets transmitted over an IEEE 1394-1995 serial bus network

Also Published As

Publication number Publication date
JP2002507100A (ja) 2002-03-05
ATE376749T1 (de) 2007-11-15
WO1999046937A1 (en) 1999-09-16
CA2322153C (en) 2008-09-23
DE69937394T2 (de) 2008-07-24
EP1062814A1 (en) 2000-12-27
AU2894999A (en) 1999-09-27
US20040125825A1 (en) 2004-07-01
EP1062814B1 (en) 2007-10-24
CA2322153A1 (en) 1999-09-16
JP3977594B2 (ja) 2007-09-19
US20060013223A1 (en) 2006-01-19
DE69937394D1 (de) 2007-12-06
US6973087B2 (en) 2005-12-06
US7561576B2 (en) 2009-07-14
US6680944B1 (en) 2004-01-20
KR100657582B1 (ko) 2006-12-19

Similar Documents

Publication Publication Date Title
KR100657582B1 (ko) 송신 데이터의 예측적인 시간 스탬핑
Bloks The IEEE-1394 high speed serial bus
US7055050B2 (en) Network synchronization technique
US6928126B2 (en) Reception interface unit in transmission system
US20050002402A1 (en) Real-time transport protocol
US6516361B2 (en) Method of and apparatus for capturing and processing continuous media-based data streams transmitted over an IEEE 1394 serial bus
US6363428B1 (en) Apparatus for and method of separating header information from data in an IEEE 1394-1995 serial bus network
US7499078B2 (en) Method of and apparatus for generating a precise frame rate in digital video transmission from a computer system to a digital video device
US6041286A (en) Apparatus for and method of accurately obtaining the cycle time of completion of transmission of video frames within an isochronous stream of data transmitted over an IEEE 1394 serial bus network
US7154910B2 (en) Method for any speed dubbing using isochronous packets on isochronous channels or on asynchronous streams over an IEEE 1394-2000 serial bus network
JP3412688B2 (ja) 伝送路間のブリッジシステム及び方法
US6405275B1 (en) IEEE1394 common isochronous packet (CIP) enhancements for host controllers
KR100497166B1 (ko) 데이터 스트림을 처리하기 위한 장치 및 방법
JP3977594B6 (ja) データフレームの表示時間算出方法及びデータストリーム送信装置
JPH10257096A (ja) データ転送方法及び装置
KR100985745B1 (ko) 직렬 통신 버스용 데이터 링크 레이어 디바이스
JPH11215143A (ja) データ通信装置及び方法
US6367026B1 (en) Unbalanced clock tree for a digital interface between an IEEE 1394 serial bus system and a personal computer interface (PCI)
JPH10257080A (ja) データ転送方法及び装置
KR19990074507A (ko) 시리얼 버스 통신방법
KR20000054885A (ko) 고속 직렬 버스 인터페이스를 위한 연결 전송방법
JP2005267653A (ja) パケット転送装置、及びデータ記録媒体

Legal Events

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

Payment date: 20121126

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131125

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141124

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151124

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161125

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20171129

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20181123

Year of fee payment: 13

EXPY Expiration of term