KR20140111011A - 시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치 - Google Patents

시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치 Download PDF

Info

Publication number
KR20140111011A
KR20140111011A KR1020147021836A KR20147021836A KR20140111011A KR 20140111011 A KR20140111011 A KR 20140111011A KR 1020147021836 A KR1020147021836 A KR 1020147021836A KR 20147021836 A KR20147021836 A KR 20147021836A KR 20140111011 A KR20140111011 A KR 20140111011A
Authority
KR
South Korea
Prior art keywords
processing unit
clock
communication unit
unit
indication value
Prior art date
Application number
KR1020147021836A
Other languages
English (en)
Other versions
KR102031268B1 (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 KR20140111011A publication Critical patent/KR20140111011A/ko
Application granted granted Critical
Publication of KR102031268B1 publication Critical patent/KR102031268B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0664Clock or time synchronisation among packet nodes using timestamps unidirectional timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

일 실시예에 따르면, 장치는 제1 클록에 따라 동작하는 제1 처리 유닛, 제1 클록과는 별개로 동작하는 제2 클록에 따라 동작하는 제2 처리 유닛, 및 이 제1 통신 유닛 및 제2 통신 유닛에 연결된 동기화 제어기를 포함한다. 동기화 제어기는 (i) 제1 통신 유닛으로 하여금 제1 처리 유닛이 신호를 제2 처리 유닛에 송신하는 제1 시간 지시값을 제1 클록에 따라 생성하게 하고, (ii) 제2 처리 유닛으로 하여금 제2 처리 유닛이 신호를 수신하는 제2 시간 지시값을 제2 클록에 따라 생성하게 하며, 및 (iii) 이 제1 시간 지시값 및 제2 시간 지시값에 기초하여 제1 클록과 제2 클록 사이의 오프셋을 결정하도록 구성된다.

Description

시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치{METHOD AND APPARATUS FOR COMMUNICATING TIME INFORMATION BETWEEN TIME-AWARE DEVICES}
관련 출원에 대한 상호 참조
본 출원은, 발명의 명칭이 "Wireless AVB Requirements"인, 2012년 1월 4일자로 출원된 미국 가특허 출원 제61/582,953호 및 2012년 10월 2일자로 출원된 미국 가특허 출원 제61/708,866호의 유익을 주장한다. 이들 출원 문헌의 전체 내용은 본 명세서에 참조 문헌으로 병합된다.
기술 분야
본 발명은 일반적으로 통신 디바이스에 관한 것으로, 보다 구체적으로, 통신 디바이스들 또는 통신 디바이스의 컴포넌트들을 동기화시키는 것에 관한 것이다.
본 명세서에 제공된 배경 기술은 본 발명의 상황을 일반적으로 제시하기 위한 것이다. 출원 시 종래 기술로서 인정받을 수 없을 수 있는 기술적 측면뿐 아니라 본 배경기술란에 기술된 정도까지 본 발명자들의 업적은 명시적으로든 암시적으로든 본 발명에 대한 종래 기술로 인정되어서는 안 된다.
통신 디바이스들이 유선 또는 무선 통신 채널을 통해 데이터를 교환할 때, 데이터를 전파(propagate)하는 매체 및 중간 또는 종단점 통신 디바이스에서의 처리는 데이터 교환에 여러 전파 지연을 도입한다. 예를 들어, 한 쌍의 통신 디바이스를 연결하는 이더넷 링크는 일반적으로 수 마이크로초만큼 통신 프레임을 지연시키고, 전파 지연은 일반적으로 이더넷 링크의 길이에 의존한다. 한편, 프레임을 수신하고, 수신된 프레임을 처리하며, 프레임을 더 송신하는 네트워크 라우터는 일반적으로 밀리초로 측정되는 훨씬 더 긴 지연을 도입할 수 있다.
일부 통신 프로토콜은 데이터 유닛을 위한 시간 스탬프 정보를 송신하는 기술을 명시한다. 그러나, 송신 디바이스 및 수신 디바이스는 상이한 시간에 시작해서 상이한 속도에서 동작하는 클록을 구비할 수 있다. 따라서, 통신 디바이스로 하여금 타이밍 및 동기화 정보를 교환할 수 있게 하는 표준이 개발되었다. 특히, IEEE(Institute for Electrical and Electronics Engineers) 802.1AS 표준은 LAN(Local Area Network)를 동기화시키는 프로토콜 및 절차를 명시한다. 오늘날, 이더넷 포트는 IEEE 802.1AS 표준 및 IEEE 802.3af("Power over Ethernet") 표준을 사용하여 동기화된다. 다른 예로서, 무선 포트는 IEEE 802.1AS 표준 및, 무선 네트워크에 연결된 클라이언트 디바이스를 위한 구성 기술을 명시하는 IEEE 802.11v 표준을 사용하여 동기화된다.
일 실시예에서, 장치는, 제1 클록에 따라 동작하는 제1 처리 유닛; 상기 제1 클록과는 별개로 동작하는 제2 클록에 따라 동작하는 제2 처리 유닛; 및 상기 제1 통신 유닛 및 상기 제2 통신 유닛에 연결된 동기화 제어기를 포함한다. 상기 동기화 제어기는, (i) 상기 제1 통신 유닛으로 하여금 상기 제1 처리 유닛이 신호를 상기 제2 처리 유닛에 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하게 하고, (ii) 상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하며, (iii) 상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 상기 제1 클록과 상기 제2 클록 사이의 오프셋을 결정하도록 구성된다.
여러 구현에서, 다음 특징 중 하나 이상이 포함될 수 있다. 상기 장치는 제1 통신 유닛이 상기 신호를 상기 제2 통신 유닛에 송신할 수 있게 하는 제너릭 인터페이스를 더 포함할 수 있다. 상기 제너릭 인터페이스는 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나 이상을 포함할 수 있다. 상기 신호는 펄스일 수 있다. 상기 동기화 제어기는 동작 (i) 및 (ii)을 주기적으로 반복하여 상기 제1 클록과 상기 제2 클록 사이의 주파수의 차이를 결정하도록 구성될 수 있다. 상기 제1 처리 유닛은 (i) 유선 통신 링크를 통해 데이터를 송수신하도록 구성된 유선 통신 유닛 및 (ii) 무선 통신 링크를 통해 데이터를 송수신하도록 구성된 무선 통신 유닛 중 하나의 통신 유닛일 수 있고, 상기 제2 처리 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛일 수 있고, 상기 장치는 상기 유선 통신 유닛과 상기 무선 통신 유닛 사이에 데이터를 전달하도록 구성될 수 있다. 상기 유선 통신 링크는 이더넷 링크일 수 있다. 상기 장치는 상기 제1 처리 유닛 및 상기 동기화 제어기에 연결되어 상기 제1 시간 지시값을 저장하는 제1 하드웨어 레지스터; 및 상기 제2 처리 유닛 및 상기 동기화 제어기에 연결되어 상기 제2 시간 지시값을 저장하는 제2 하드웨어 레지스터를 포함할 수 있다.
다른 실시예는 (i) 제1 클록에 따라 동작하는 제1 처리 유닛 및 (ii) 상기 제1 클록과는 별개로 동작하는 제2 클록에 따라 동작하는 제2 처리 유닛을 포함하는 디바이스에서 동기화하는 방법이다. 상기 방법은 상기 제1 처리 유닛으로 하여금 상기 제1 처리 유닛이 신호를 상기 제2 처리 유닛에 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하게 하는 단계를 포함한다. 나아가, 상기 방법은 상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하는 단계를 포함한다. 더 나아가, 상기 방법은 상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 상기 제1 클록과 상기 제2 클록 사이의 오프셋을 결정하는 단계를 포함한다.
여러 구현에서, 다음 특징 중 하나 이상이 포함될 수 있다. 상기 방법은 상기 제1 처리 유닛으로 하여금 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나를 통해 상기 신호를 송신하게 하는 단계를 포함할 수 있다. 상기 방법은 상기 제1 처리 유닛으로 하여금 상기 신호를 펄스 형태로 송신하게 하는 단계를 포함할 수 있다. 상기 신호는 상기 제1 처리 유닛과 상기 제2 처리 유닛 사이에 송신된 커맨드와 연관될 수 있고, 여기서 상기 커맨드는 상기 제1 처리 유닛과 상기 제2 처리 유닛 사이에 제어 정보를 교환하도록 한정된 메시징 프로토콜에 순응한다. 상기 방법은 상기 제1 처리 유닛으로 하여금 상기 신호를 복수의 신호 중 하나의 신호로 생성하게 하는 단계; 상기 복수의 신호를 사용하여 상기 제1 시간 지시값 및 상기 제2 시간 지시값의 다수의 버전을 생성하는 단계; 및 상기 제1 시간 지시값 및 상기 제2 시간 지시값의 다수의 버전에 기초하여 상기 제1 클록과 상기 제2 클록 사이에 주파수의 차이를 결정하는 단계를 포함할 수 있다. 상기 제1 처리 유닛은 제1 통신 유닛일 수 있고 상기 제2 처리 유닛은 제2 통신 유닛일 수 있으며, 상기 방법은, 상기 제1 통신 유닛의 포트를 통해 데이터 패킷을 수신하는 단계; 상기 결정된 오프셋 및 결정된 주파수 차이를 사용하여 상기 디바이스와 연관된 전파 지연을 결정하는 단계; 및 상기 전파 지연의 지시값을 제공하는 것을 포함하여 상기 제2 통신 유닛의 포트를 통해 상기 데이터 패킷을 송신하는 단계를 포함할 수 있다. 상기 제1 통신 유닛은 유선 통신 유닛 및 무선 통신 유닛 중 하나의 통신 유닛일 수 있고, 상기 제2 통신 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛일 수 있다.
또 다른 실시예에서, 처리 유닛은, 제1 처리 유닛, 제2 처리 유닛으로서 처리 유닛을 포함하고, 상기 제1 처리 유닛과 상기 제2 처리 유닛에 연결된 동기화 제어기를 포함하는 디바이스에서 동작하도록 구성된다. 상기 처리 유닛은, 상기 제1 처리 유닛이 동작하는 클록; 및 상기 제1 처리 유닛을 상기 제2 처리 유닛에 연결하는 인터페이스를 포함하고; 상기 제2 처리 유닛은 별개의 클록에 따라 동작한다. 상기 처리 유닛은 (i) 주기적인 신호를 상기 인터페이스를 통해 상기 제2 처리 유닛에 송신하고, (ii) 상기 제1 처리 유닛이 상기 주기적인 신호를 상기 제2 처리 유닛으로 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하도록 구성될 수 있다. 상기 동기화 제어기는 (i) 상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 주기적인 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하고, (ii) 상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 동기화 파라미터를 생성하도록 구성된다.
여러 구현에서, 다음 특징 중 하나 이상이 포함될 수 있다. 상기 인터페이스는 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나를 포함할 수 있다. 상기 주기적 신호는 펄스일 수 있다. 상기 동기화 파라미터는 (i) 상기 제1 처리 유닛의 클록과 상기 제2 처리 유닛의 클록 사이의 오프셋 및 (ii) 상기 제1 처리 유닛의 클록과 상기 제2 처리 유닛의 클록 사이의 주파수 차이 중 적어도 하나를 포함할 수 있다. 상기 제1 처리 유닛은 (i) 유선 통신 링크를 통해 데이터를 송수신하도록 구성된 유선 통신 유닛 및 (ii) 무선 통신 링크를 통해 데이터를 송수신하도록 구성된 무선 통신 유닛 중 하나의 통신 유닛일 수 있고; 상기 제2 처리 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛일 수 있다.
도 1은 일 실시예에 따라 하나 이상의 디바이스가 본 발명의 하나 이상의 동기화 기술을 구현하는 예시적인 통신 시스템을 도시한 블록도;
도 2는 일 실시예에 따라 도 1의 통신 시스템에서 동작할 수 있는 디바이스를 포함하는 여러 디바이스를 통해 데이터 유닛의 예시적인 전파를 도시한 도면;
도 3은 일 실시예에 따라 본 발명의 하나 이상의 동기화 기술을 사용하여 동기화된 다수의 통신 유닛을 포함하는 예시적인 디바이스를 도시한 블록도;
도 4는 일 실시예에 따라 동일한 디바이스에서 동작하는 2개의 처리 유닛의 클록들 사이의 차이를 결정하는 예시적인 방법의 흐름도;
도 5는 일 실시예에 따라 동일한 디바이스에서 동작하는 2개의 처리 유닛의 클록들 사이에 카운트 주파수의 차이를 결정하는 예시적인 방법의 흐름도;
도 6a는 일 실시예에 따라 데이터 유닛이 유선 포트를 통해 디바이스에 도달할 때 유선 통신 유닛 및 무선 통신 유닛을 포함하는 디바이스를 통해 전파 지연을 결정하는 예시적인 방법을 도시한 흐름도;및
도 6b는 일 실시예에 따라 데이터 유닛이 무선 포트를 통해 디바이스에서 도달할 때 유선 통신 유닛 및 무선 통신 유닛을 포함하는 디바이스를 통해 전파 지연을 결정하는 예시적인 방법을 도시한 흐름도.
후술된 실시예에서, 주기적 타이밍 신호의 별개의 상호 독립적인 소스(간략화를 위해, 별개의 "클록")를 구비하는 다수의 처리 유닛을 포함하는 디바이스들은 간단한 인터페이스를 사용하여 처리 유닛을 효율적으로 동기화시킨다. 디바이스는 오프셋의 차이 및, 필요한 경우, 클록들 사이의 주파수의 차이와 같은 하나 이상의 동기화 파라미터를 결정한다. 동기화 파라미터를 사용하여, 디바이스는 디바이스를 통해 전파 지연을 정확히 측정하거나 및/또는 예를 들어 처리 유닛들 중 하나에서 "그랜드마스터" 클록의 로컬 값을 조절할 수 있다. 일부 실시예에서, 디바이스에서 동작하는 처리 유닛들 중 일부나 전부는 네트워크 프로세서, 무선 수신기 및 송신기 등과 같은 통신 유닛이다.
패킷이 디바이스에서 동작하는 하나의 통신 유닛의 포트에 도달하고 동일한 디바이스에서 동작하는 다른 통신 유닛의 포트를 통해 떠나는 경우, 디바이스는 디바이스에 대한 전파 지연의 지시값을 패킷에 포함하거나, 또는 다른 방법으로 전파 지연 패킷을 수신 및/또는 송신하는 다른 디바이스에 통지할 수 있다. 시간-인식 디바이스는 이 시간 지시값을 사용하여 패킷을 적절히 처리할 수 있다. 예를 들어, 시간-인식 미디어 프로세서는 이 시간 지시값을 사용하여 디스플레이 및 스피커를 통해 제공된 비디오 및 오디오를 AVB(Audio/Video Bridging) 애플리케이션에서 각각 동기화할 수 있다.
예시적인 실시예에서, 디바이스는 각 통신 포트를 통해 패킷을 수신 및/또는 송신하는 한 쌍의 통신 유닛, 프로세서, 및 2개의 통신 유닛을 연결하는 제너릭 인터페이스를 포함한다. 제너릭 인터페이스는 예를 들어 GPIO(General Purpose Input Output) 핀을 포함할 수 있다. 통신 유닛은 별개의 클록을 구비한다. 통신 유닛을 동기화하기 위해, (소프트웨어로, 프로세서로, 하나의 또는 두 개의 통신 유닛으로 구현되거나, 또는 프로세서 및 통신 유닛과는 별개로 구현될 수 있는) 동기화 제어기는 제1 통신 유닛으로 하여금 펄스를 제너릭 인터페이스를 통해 제2 통신 유닛에 송신하게 하고 제1 통신 유닛의 클록에 따라 펄스를 송신한 시간 지시값을 생성하게 한다. 동기화 제어기는 제2 통신 유닛으로 하여금 펄스를 수신한 시간 지시값을 제2 통신 유닛의 클록에 따라 생성하게 한다. 2개의 통신 유닛들 사이의 거리는 충분히 작아서 제너릭 인터페이스의 전파 지연을 무시가능하게 할 수 있다. 예를 들어, 이 전파 지연은 단지 수 나노초 길이일 수 있다. 따라서, 동기화 제어기는 2개의 시간 지시값을 사용하여 제1 통신 유닛과 제2 통신 유닛 사이의 시간 차이를 결정할 수 있다. 예를 들어, 동기화 제어기는 각 통신 유닛의 ToD(Time of Day)을 결정하고 다른 ToD 값으로부터 하나의 ToD 값을 감산하는 것에 의해 통신 유닛들 사이에 "DC 오프셋"을 연산할 수 있다.
나아가, 일부 실시예에서, 디바이스는 전술된 과정을 다수회(예를 들어, 초당 한번) 수행한다. 다수의 시간 스탬프를 사용하여, 동기화 제어기는 2개의 통신 유닛의 카운트 주파수들의 차이를 계산한다. 예를 들어, 2개의 통신 유닛이 크리스탈 발진기(또는 간단히 "크리스탈")를 사용하는 경우, 동기화 제어기는 이런 방식으로 백만분의 일(parts-per-million: PPM) 차이를 계산한다. 디바이스는 일 실시예에 따라 PPM 차이 및 DC 오프셋을 사용하여 전파 지연을 계산한다.
일 실시예에 따르면, 제1 통신 유닛은 하나 또는 수 개의 이더넷 포트를 통해 패킷을 수신 및/또는 송신하는 유선 통신 유닛이고, 제2 통신 유닛은 하나 또는 수 개의 무선 포트를 통해 패킷을 수신 및/또는 송신하는 무선 통신 유닛이다. 다른 실시예에서, 제1 통신 유닛은 무선 통신 유닛이고, 제2 통신 유닛은 유선 통신 유닛이다. 보다 일반적으로, 통신 유닛은 임의의 유형일 수 있고, 펄스는 디바이스에서 하나의 통신 유닛으로부터 다른 통신 유닛으로 진행할 수 있다.
본 발명의 기술을 더 잘 기술하기 위해, 도 1은 클라이언트 스테이션(14A 및 14B)을 포함하는 무선 WLAN(local area network)(11)에서 AP(access point)(12)가 동작하는 예시적인 통신 시스템(10)을 도시한다. AP(12)는 네트워크 프로세서(18)를 포함하는 AP 브리지 디바이스(16)의 컴포넌트이다. 네트워크 프로세서(18)를 사용하여, AP 브리지 디바이스(16)는 유선 통신 링크(22)를 통해 통신 네트워크(20)에서 동작하는 디바이스와 통신한다. AP(12) 및 네트워크 프로세서(18)는 상이한 상호 독립적인 클록에 따라 동작한다. 일 실시예에서, 유선 통신 링크(22)는 이더넷 링크이다. 나아가, 일 실시예에서, WLAN(11)은 IEEE 802.11n 표준에 따라 동작한다.
클라이언트 스테이션(14A)은 미디어 플레이어(30A)에서 동작한다. 미디어 플레이어(30A)는 미디어 플레이어(30A)가 예를 들어 비디오와 같은 미디어 출력을 제공하는 미디어 프로세서(32A)를 포함한다. 컴포넌트(14A 및 32A)는 동일한 하우징 내에 배치될 수 있다. 클라이언트 스테이션(14B)은 미디어 프로세서(32B)를 포함하는 미디어 플레이어(30B)에서 동작한다. 컴포넌트(14B 및 32B)는 동일한 하우징 내에 배치될 수 있다. 미디어 플레이어(30B)는 예를 들어 미디어 프로세서(32B)를 사용하여 오디오 출력을 제공할 수 있다. 일 실시예에서, 무선 스테이션(14A) 및 미디어 프로세서(32A)는 상이한 상호 독립적인 클록에 따라 동작한다. 유사하게, 일 실시예에서, 무선 스테이션(14B) 및 미디어 프로세서(32B)는 상이한 상호 독립적인 클록에 따라 동작한다.
각 디바이스(30A, 30B, 및 16)는 본 발명의 기술의 적어도 일부에 따라 대응하는 처리 유닛들을 동기화하도록 구현된 동기화 제어기(40)를 포함한다. 보다 구체적으로, 동기화 제어기(40A)는 미디어 플레이어(30A)에서 동작하며 미디어 프로세서(32A)와 무선 스테이션(14A)을 동기화하고; 동기화 제어기(40B)는 미디어 플레이어(30B)에서 동작하며 미디어 프로세서(32B)와 무선 스테이션(14B)을 동기화하며; 동기화 제어기(40C)는 AP 브리지(16)에서 동작하며 AP(12)와 네트워크 프로세서(18)를 동기화한다. 동기화 제어기(40)는 동일한 디바이스(예를 들어, AP 브리지(16))에서 동작하는 한 쌍의 통신 유닛 뿐만 아니라 동일한 디바이스(예를 들어, 미디어 플레이어(30A 또는 30B)에서 동작하는 통신 유닛 및 처리 유닛을 동기화할 수 있다. 보다 일반적으로, 동기화 제어기(40)는 임의의 개수의 통신 유닛 및/또는 처리 유닛을 동기화하는데 사용될 수 있다.
보다 상세히 후술되는 바와 같이, 동기화 제어기(40)는 하드웨어, 소프트웨어, 펌웨어, 또는 하드웨어, 소프트웨어, 및 펌웨어의 임의의 적절한 조합을 사용하여 구현될 수 있다. 일 실시예에서, 동기화 제어기(40), 대응하는 쌍의 처리 유닛(예를 들어, AP(12) 및 네트워크 프로세서(18))들 사이의 인터페이스, 시간 스탬프를 저장하는 버퍼 등은 상이한 클록에 따라 동일한 디바이스에서 동작하는 처리 유닛들이 용이하고 신뢰성 있게 동기화될 수 있게 하는 저비용 시간 애플리케이션 인터페이스(time application interface: TAI)를 한정한다. 그러나, 예시적인 TAI를 보다 상세히 고려하기 전에, 본 발명의 기술의 적어도 일부를 구현하는 디바이스를 포함하는 수 개의 디바이스를 통해 데이터 유닛을 예시적으로 전파하는 예를 도 2를 참조하여 설명한다.
도 2의 예시적인 통신 파이프라인(100)은 유선 방식으로 통신 유닛(104)에 연결된 패킷 소스(102)를 포함하며, 이 통신 유닛은 유선 방식으로 통신 디바이스(106)에 더 연결된다. 통신 디바이스(106)는 무선 방식으로 무선 통신 유닛(108)에 더 연결된다. 예시적인 실시예에서, 무선 통신 유닛(108)은 디바이스(104 및 106)를 통해 패킷 소스(102)로부터 송신된 데이터 패킷의 "소비자"이다. 다시 말해, 컴포넌트(102 및 108)는 통신 파이프라인(100)의 종단점을 한정한다.
도 1을 참조하여 설명된 AP 브리지(16)와 유사하게, 통신 디바이스(106)는 유선 통신 유닛(110) 및 이 유선 통신 유닛(110)에 인터페이스(114)를 통해 연결된 무선 통신 유닛(112)을 포함한다. 통신 디바이스(106)는 예를 들어, 라우터 또는 브리지 디바이스로 동작할 수 있고, 일 실시예에서 통신 유닛(110 및 112)들 사이에 데이터를 라우팅하거나 전달할 수 있다. 통신 디바이스(106)는 유선 통신 유닛(110) 및 무선 통신 유닛(112)에 통신가능하게 연결된 프로세서(116)를 포함한다. 일 실시예에서, 통신 유닛(110 및 112)은 클록(118A 및 118B)을 각각 포함한다. 보다 일반적으로, 통신 유닛(110 및 112)은 통신 유닛(110 및 112)의 컴포넌트로 제공될 수 있는 별개의 독립적인 소스로부터 주기적인 타이밍 신호를 수신하거나 또는 통신 유닛(110 및 112)과는 별개로 주기적인 타이밍 신호를 수신할 수 있다. 예를 들어, 하나의 이러한 실시예에서, 유선 통신 유닛(110)은 자체 클록을 포함하지 않고 프로세서(116)의 클록에 따라 동작하는 반면, 무선 통신 유닛(112)은 클록(118B)에 따라 동작한다. 통신 디바이스(106)는 프로세서(116), 유선 통신 유닛(110), 및/또는 무선 통신 유닛(112) 내 별개의 컴포넌트 또는 수 개의 컴포넌트로 구현된 동기화 제어기(119)를 포함한다.
일 실시예에서, 무선 통신 유닛(108)은 시간-인식 디바이스의 컴포넌트로 또는 시간-인식 애플리케이션 모드에서 동작한다. 패킷 소스(102)는 이 경우에 파이프라인(100)에서 "올바른(correct)" 시간에만 대응하는 "그랜드마스터" 클록(120)을 포함한다. 클록(120)은 상이한 주파수로 동작하고, 파이프라인(100)에서 다른 클록과는 상이한 시작 시간을 구비할 수 있다. 나아가, 파이프라인(100)에서 디바이스는 상이한 온도에서 동작할 수 있다. 예를 들어, 패킷 소스(102)는 유선 통신 유닛(104)보다 더 고온의 장소에 배치될 수 있다. 알려진 바와 같이, 온도는 일반적인 크리스탈 발진기의 동작에 영향을 미칠 수 있다.
동작시, 패킷 소스(102)는 패킷(125)을 생성하고, 일 실시예에 따라 패킷(125)의 헤더에 그랜드마스터 클록(120)을 사용하여 생성된 시간스탬프(128)를 포함한다. 패킷(125)은 일반적으로 무선 통신 유닛(108) 쪽 화살표(130)로 지시된 방향으로 진행하므로, 패킷(125)은 여러 지속시간의 지연을 나타낸다. 패킷(125)을 적절히 처리하기 위해, 무선 통신 유닛(108)은 가능한 한 높은 정밀도로 파이프라인(100)을 통한 전파 지연을 결정하려고 시도한다. 이를 위해, 파이프라인(100)에서 중간 링크 및 디바이스를 통한 무시할 수 없는 지연, 예를 들어 도 2에 도시된 지연(Δt1 - Δt5)이 결정되어야 한다.
나아가, 일부 실시예에서, 컴포넌트(104, 110, 112 및 108)의 일부나 전부는 그랜드마스터 클록(120)의 각 버전을 유지한다. 동작 동안, 이 컴포넌트는 최후 계산된 지연 값(Δt1 - Δt5)을 사용하여 그랜드마스터 클록(120)의 로컬 버전을 연속적으로 또는 주기적으로 조절한다. 이를 위해, 컴포넌트(102, 104, 110, 112, 및 108)는 다운스트림으로 (화살표(130)의 방향으로), 업스트림으로 또는 둘 모두의 방향으로 대응하는 값을 전파한다.
일반적으로, 파이프라인(100)에서 동작하는 컴포넌트가 새로운 지연 값(Δt1 - Δt5)을 결정하면, 컴포넌트는 이 새로운 값을 임의의 적절한 메시징 기술을 사용하여 다른 컴포넌트에 전달할 수 있다. 예를 들어, 컴포넌트는 패킷(125) 내 시간 스탬프를 조절하고, 패킷(125)의 헤더에 지연 길이를 나타내는 필드를 식재(populate)하여, 이들 기술의 조합을 사용하여 새로운 지연 값을 갖는 별개의 메시지를 파이프라인(100)에서 동작하는 하나 이상의 컴포넌트 등으로 송신할 수 있다.
도 2를 계속 참조하면, 패킷 소스(102) 및 유선 통신 유닛(104)은 링크(140) 길이에 일반적으로 비례하는 전파 지연(Δt1)과 연관된 유선 링크(130)를 통해 연결된다. 예를 들어, 지연 값(Δt1)은 500 나노초 이하일 수 있다. 유선 링크(140)는 일 실시예에서 이더넷 링크이다. 유사하게, 유선 링크(140)는 이더넷 링크일 수 있고, 500 나노초 이하의 지연(Δt3)을 도입할 수 있다. 일 실시예에서, 링크(140 및 142)는 IEEE 802.3af 표준에 따라 동작한다. 그러나, 링크(140 및 142)는 상이한 길이를 구비하므로, 지연 값(Δt1 및 Δt3)은 동일할 필요가 없다.
한편, 유선 통신 유닛(104)과 연관된 지연(Δt2)은 지연(Δt1 및 Δt3)보다 상당히 길 수 있다(예를 들어, 10 밀리초만큼 길 수 있다). 일 실시예에서, 유선 통신 유닛(104)은 예를 들어 CPU일 수 있는 프로세서(144)에 연결된다. 여러 시나리오에서, 데이터 패킷(125)은 하드웨어 및/또는 소프트웨어 레벨에서 처리될 수 있다. 예를 들어, 유선 통신 유닛(104) 및 프로세서(144)는 다수의 프로토콜 스택 계층으로 패킷을 분석하는 네트워크 라우터에서 동작하여 상당한 시간양만큼 패킷(125)을 지연시킬 수 있다.
일부 실시예에서, 유선 통신 유닛(104)은 클록(150)을 포함한다. 록(150)은 그랜드마스터 클록(120)과 동기화되지 않을 수 있지만, 유선 통신 유닛(104)은 패킷(125)에 대한 지연(Δt3)을 정확하고 신뢰성 있게 결정할 수 있다. 이를 위해, 유선 통신 유닛(104)은 유선 통신 유닛(104)에 패킷(125)이 도달할 때(예를 들어, 패킷(125)이 대응하는 인바운드(inbound) 포트의 유입 파이프라인을 횡단할 때) 제1 시간 스탬프를 생성하고, (예를 들어, 패킷(125)이 대응하는 아웃바운드(outbound) 포트의 유출 파이프라인을 횡단할 때) 통신 링크(142)를 통해 패킷(125)을 송신하기 바로 전에 제2 시간 스탬프를 생성한다. 시간 스탬프는 단순히 클록(150)에 의해 유지되는 클록 카운터의 현재 값을 저장하는 레지스터의 값일 수 있다. 유선 통신 유닛(104)은 동일한 클록(150)을 사용하여 제1 및 제2 시간스탬프를 생성하므로, 유선 통신 유닛(104)은 제2 시간 스탬프로부터 제1 시간 스탬프를 감산하고 그 결과를 클록(150)의 주파수와 곱하는 것에 의해 지연 값(Δt2)을 정확히 결정할 수 있다.
일반적으로, 이더넷 링크(140 및 142)를 통해 상호 연결된 패킷 소스(102), 유선 통신 유닛(104) 및 유선 통신 유닛(110) 사이의 타이밍 정보 및/또는 동기화를 전파하는 것은 IEEE 802.1AS 및 802.3af 표준을 사용하여 구현될 수 있다. 이들 기술을 사용하여, 컴포넌트(102, 104, 및 110)는 지연 정보를 서로에 제공하여 그랜드마스터 클록(120)의 로컬 버전 등을 조절할 수 있다.
통신 디바이스(106)와 연관된 지연 값(Δt4)에 대해, 통신 유닛(110 및 112), 및 특히 프로세서(116)는 상당한 양의 시간만큼 패킷(126)을 지연시킬 수 있다. 지연 값(Δt4)을 결정하기 위해, 통신 디바이스(106)는 본 발명의 동기화 기술을 구현할 수 있다. 도 1을 참조하여 설명된 동기화 제어기(40)를 포함하는 디바이스와 유사하게, 통신 디바이스(106)는 통신 유닛(110 및 112)들 사이에 주기적 펄스 또는 다른 신호를 송신하거나 캡처할 수 있다. 이 실시예에 따르면, 동기화 제어기(119)는 펄스를 유선 통신 유닛(110)으로부터 무선 통신(112)으로 진행시키거나, 역으로 무선 통신(112)으로부터 유선 통신 유닛(110)으로 진행시킬 수 있다. 이들 신호를 생성하고 캡처하고 사용하는 적절한 기술은 도 3을 참조하여 아래에서 보다 상세히 설명된다.
IEEE 802.11v 표준은 지연 무선 통신 유닛(112 및 108)들 사이에 지연 값(Δt5)을 계산하는 메커니즘을 제공한다. 일부 구현에서, 무선 통신 유닛(108)은 이 메커니즘을 사용하여 클록(152)을 통신(112)의 클록(118B)과 동기화한다. 보다 구체적으로, 통신 유닛(112 및 108)은 802.11v 표준으로 한정된 "M1" 및 "M2" 프레임을 교환할 수 있다. M1 및 M2 프레임을 사용하여, 통신 유닛(112 및 108)은 지연(Δt5)을 연산할 수 있다. 통신 유닛(108)은 그랜드마스터 클록(120)의 버전으로부터 Δt5 를 감산하여 무선 통신 유닛(112)에 저장된 그랜드마스터 클록(120)의 버전과 매칭할 수 있다.
계산된 지연 값(Δt1 - Δt5) 및/또는 (파이프라인(100)에서 다른 클록과 동기화된 클록(118B)을 통해) 그랜드마스터 클록(120)과 동기화된 클록(152)을 사용하여, 미디어 프로세서(160)는 데이터 패킷(125)을 적절히 처리할 수 있다. 예를 들어, 미디어 프로세서(160)는 그랜드마스터 클록(120)에 의해 측정했을 때 올바른 시간에 패킷(125) 내 오디오 또는 비디오 컨텐츠를 플레이백할 수 있다.
이제 도 3을 참조하면, 예시적인 통신 디바이스(200)는 유닛(202 및 204)에서 각 로컬 시간의 표현과 함께 유닛(202 및 204)들 사이에 송신된 신호를 사용하여 유선 통신 유닛(202) 및 무선 통신 유닛(204)을 동기화하는 동기화 제어기(201)를 포함한다. 일 실시예에서, 통신 디바이스(106)는 통신 디바이스(200)와 일반적으로 유사하다. 나아가, 일부 실시예에서, 통신 유닛(202 및 204)들 사이에 동기화를 구현하는 통신 디바이스(200)의 동기화 제어기(201) 및 다른 컴포넌트는 도 1을 참조하여 설명된 TAI(40)와 일반적으로 유사한 TAI를 한정한다. 보다 일반적으로, 2개 이상의 처리 유닛이 별개의 클록을 사용하여 동작하는 디바이스는 통신 디바이스(200)와 유사하게 구현되어 처리 유닛들을 동기화할 수 있다.
일 실시예에서 통신 디바이스(200)는 일반 목적 CPU, 응용 특정 집적 회로(ASIC), 프로그래밍가능한 제어기 등일 수 있는 프로세서(206)를 포함한다. 프로세서(206)는 각 통신(202 및 204)에 연결된다. 일 실시예에서, 프로세서(206)는, 커맨드를 통신 유닛(202 및 204)에 제공하고 통신 유닛(202 및 204)으로부터 상태, 제어, 및 다른 정보를 수신하도록 구성된다. 예를 들어, 프로세서(206)는 데이터 패킷의 하이 레벨 처리(예를 들어, 깊은 검사(deep inspection))를 수행하는 소프트웨어 명령을 실행할 수 있다. 그러나, 다른 실시예에서, 통신 디바이스(200)는 프로세서(206)를 전혀 포함하지 않고, 통신 유닛(202 및 204)은 통신 유닛(202 및 204)에 적절히 연결되는데 필요한 로직을 직접 구현한다.
통신 디바이스(200)는 프로세서(208)에 연결된 컴퓨터-판독가능한 메모리(208)를 포함한다. 메모리(208)는 임의의 적절한 영구 또는 일시 메모리, 예를 들어 플래쉬 메모리, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM) 등일 수 있다. 메모리(208)는 하나의 또는 수 개의 소프트웨어 애플리케이션(209)을 저장한다. 메모리(208)는 프로세서(206)가 동작 동안 생성 및/또는 사용하는 데이터를 저장할 수 있다.
일부 실시예에 따르면, 동기화 제어기(201) 및 유선 통신 유닛(202)은 시간 캡처 버퍼(212)에 연결되고, 동기화 제어기(201) 및 유선 통신 유닛(204)은 시간 캡처 버퍼(214)에 연결된다. 버퍼(212 및 206)는 예를 들어 간단한 하드웨어 레지스터로 구현될 수 있다. 후술되는 바와 같이, 시간 캡처 버퍼(212 및 214)는, 신호의 송신이나 수신과 같은 특정 이벤트에 각각 대응하는 유닛(202 및 204)에 대한 로컬 시간의 표현을 저장한다.
도 3을 계속 참조하면, 유선 통신 유닛(202)은 유선 통신 유닛(202)이 동작하는 주기적 타이밍 신호를 생성하는 크리스탈 발진기 회로(220)를 포함한다. 무선 통신 유닛(204)은 무선 통신 유닛(204)이 동작하는 주기적인 타이밍 신호를 생성하는 크리스탈 발진기 회로(222)를 포함한다. 일 실시예에서, 크리스탈 발진기 회로(220 및 222)는 상이한 주파수에서 동작한다. 나아가, 통신 유닛(202 및 204)이 상이한 시간에 초기화되거나 리셋될 수 있으므로, 크리스탈 발진기 회로(220 및 222)는 일부 시나리오에 따라 상이한 시간에 카운트를 시작한다. 다른 실시예에서, 통신 유닛(202 및 204)은 다른 적절한 유형의 클록을 포함한다.
일 실시예에서, 크리스탈 발진기 회로(220)는 각 사이클에 대해 일(1)씩 카운터(230)를 증분한다. 따라서, 카운터(230)는 크리스탈 발진기 회로(220)에 의해 측정했을 때 현재 시간 표현을 저장한다. 유사하게, 크리스탈 발진기 회로(222)는 각 사이클에 대해 일(1)씩 카운터(232)를 증분하며, 카운터(232)는 크리스탈 발진기 회로(222)에 의해 측정했을 때의 현재 시간 표현을 저장한다. 특정 조건을 만족하거나 또는 동기화 제어기(201)로부터 커맨드에 응답하여, 통신 유닛(202 및 204)은 카운터(230 및 232)의 현재 값을 시간 캡처 버퍼(212 및 214)에 각각 전송한다. 일부 시나리오에서, 통신 유닛(202 및 204)은 각 버퍼(212 및 214)에 새로운 값을 실질적으로 동시에 식재한다. 다른 시나리오에서, 통신 유닛(202 및 204)은 별개의 각 커맨드에 응답하여 상이한 시간에 이들 버퍼에 식재한다.
유선 통신 유닛(202)은 제어기 및 입력/출력 파이프라인(240)을 포함한다. 일 실시예에서, 컴포넌트(220)는 입력 데이터 유닛(예를 들어, 패킷)을 처리하는 유입 파이프라인, 프로토콜 변환, 라우팅, 브리징, 및/또는 다른 기능을 구현하는 제어기, 및 송신용 데이터 유닛을 준비하는 유출 파이프라인을 포함한다. 무선 통신 유닛(204)은 제어기 및, 무선 통신 링크를 통해 송신된 입력 또는 출력 데이터 유닛을 처리하는 입력/출력 파이프라인(242)을 포함한다.
유선 통신 유닛(202)은 일 실시예에 따라 적절한 통신 프로토콜에 의해 지정된 컨택(contact) 세트를 각각 포함하는 데이터 패킷을 수신 및/또는 송신하는 하나 이상의 이더넷 포트(250)를 포함한다. 다른 실시예에서, 유선 통신 유닛(202)은 추가적으로 또는 대안적으로 전용 표준에 따른 통신을 포함하는 다른 유형의 유선 통신을 위한 포트를 포함할 수 있다. 무선 통신 유닛(204)은 일부 실시예에서 동일한 물리적 파이프라인으로 맵핑된 가상 포트일 수 있는 무선 포트(252)의 세트를 포함한다. 이더넷 포트(250) 및 무선 포트(252)는 통신 디바이스(200)의 외부 인터페이스를 함께 한정한다.
따라서, 통신 디바이스(200)는 무선 포트를 통해 데이터 패킷을 수신하고, 필요한 경우 (예를 들어, 프로토콜을 변경하거나 또는 헤더를 새로운 값으로 업데이트하는 것에 의해) 데이터 패킷을 변경하고, 이더넷 포트를 통해 데이터 패킷을 송신할 수 있다. 다른 시나리오에서, 통신 디바이스(200)는 유선 포트를 통해 데이터 패킷을 수신하고 유선 포트를 통해 데이터 패킷을 송신할 수 있다.
일 실시예에 따르면, 프로세서(206)는 통신 유닛(202 및 204)들 사이에 데이터를 교환하는 내부 인터페이스를 한정한다. 따라서, 예를 들어, 유선 통신 유닛(202)이 데이터 패킷을 무선 통신 유닛(204)으로 전달하기를 원할 때, 프로세서(206)는 유선 통신 유닛(202)으로부터 데이터 패킷을 수신하고 데이터 패킷을 무선 통신 유닛(204)으로 제공한다. 다른 실시예에서, 통신 디바이스(200)는 데이터 패킷을 교환하기 위해 통신 유닛(202 및 204)들 사이에 직접 인터페이스를 포함한다.
유선 통신 유닛(202) 및 무선 통신 유닛(204) 각각은 이용가능한 제너릭 인터페이스 컨택, 예를 들어 일 실시예에서 GPIO 핀을 포함한다. 통신 유닛(202 및 204)은 이들 제너릭 인터페이스 컨택을 사용하여 동기화 신호를 송신하거나 수신할 수 있다. 도 3의 예에서, 유선 통신 유닛(202)은 커넥터(264)에 연결된 핀(260)을 포함하고, 무선 통신 유닛(204)은 커넥터(264)에 연결된 핀(262)을 포함한다. 커넥터(264)는 통신 유닛(202 또는 204)이 예를 들어 펄스를 송신할 수 있는 간단한 연결을 제공하는 예시적인 제너릭 인터페이스이다. 다른 실시예에서, 유선 통신 유닛(202) 및 무선 통신 유닛(204)은 예를 들어 PCIE(Peripheral Component Interconnect Express) 또는 SDIS(Secure Digital Input Output)를 사용하여 버스를 통해 통신한다. 임의의 경우에, 커넥터(264)는 통신 유닛(202 및 204)들 사이에 상대적으로 간단하고 저비용인 인터페이스이다. 컴포넌트(260, 262 및 264)는 일 실시예에 따라 IEEE 802.1AS 표준에 따른 동기화를 지원하지 않는다.
동작시, 동기화 제어기(201)는 통신 유닛(202 및 204) 중 하나의 유닛이 펄스 또는 다른 동기화 신호를 커넥터(264)를 통해 통신 유닛(202 및 204) 중 다른 유닛으로 송신하게 한다. 펄스는 일반적으로 통신 유닛(202 및 204)들 사이에 어느 방향으로 진행한다. 일례로서, 동기화 제어기(201)는 유선 통신 유닛(202)을 펄스의 소스로 지정한다. 동기화 제어기(201)는 이 경우에 유선 통신 유닛(202)으로 하여금 (i) (커넥터(264)에 연결된) 핀(260)을 통해 무선 통신(204)에 펄스를 송신하게 하고 (ii) 카운터(230)의 현재 값을 시간 캡처 버퍼(212)에 레코드하게 한다. 동기화 제어기(201)는 무선 통신 유닛(204)으로 하여금 카운터(232)의 현재 값을 시간 캡처 버퍼(214)에 레코드하게 한다. 동기화 제어기(201)는 시간 캡처 버퍼(214)에 저장된 값으로부터 시간 캡처 버퍼(212)에 저장된 값을 감산하여 상기 통신 유닛(212 및 214)들 사이의 시간 지시값 카운터 차이, 예를 들어, DC 오프셋을 생성한다.
실시예의 적어도 일부에서, 커넥터(264)의 길이는 충분히 작아서 동기화 제어기(201)가 커넥터(264)를 통해 진행하는 펄스의 전파 지연을 실질적으로 0으로 고려한다. 따라서, 동기화 제어기(201)는, 펄스가 무선 통신(204)에 순간적으로 도달하고 통신 유닛(202 및 204)이 대응하는 카운터 값을 각 시간 캡처 버퍼(212 및 214)에 동시에 레코드하는 것으로 가정한다.
다른 실시예에서, 동기화 제어기(201)는 무선 통신 유닛(204)이 펄스를 검출할 때에만 무선 통신 유닛(204)이 카운터(232)의 값을 시간 캡처 버퍼(214)에 레코드하게 한다. 또 다른 실시예에서, 동기화 제어기(201)는 커넥터(264)와 연관된 일정한 전파 지연을 고려하도록 구성된다. 동기화 제어기(201)가 시간 캡처 버퍼(212 및 214)에 저장된 값의 차이를 계산할 때, 동기화 제어기(201)는 이 차이에 대한 일정한 전파 지연을 정정 팩터로 적용한다.
일부 실시예에서, 동기화 제어기(201)는 크리스탈 발진기(220 및 222)들 사이에 PPM 차이를 더 계산한다. 이를 위해, 동기화 제어기(201)는 펄스의 소스로 지정된 통신 유닛이 펄스를 주기적으로, 예를 들어, 초당 하나의 펄스(pulse per second: PPS) 속도로 송신하게 한다. 일 실시예에서, 펄스는 제2의 시작시에 송신된다.
따라서, 예시적인 시나리오에서, 동기화 제어기(201)는 유선 통신 유닛(202)으로 하여금 12:00:00am에서 펄스를 커넥터(264)를 통해 (예를 들어, 유선 통신 유닛(202) 또는 프로세서(206)의 클록에 따라) 무선 통신 유닛(204)으로 송신하게 한다. 동기화 제어기(201)는 시간 캡처 버퍼(212 및 214)에 저장된 대응하는 값을 사용하여 DC 오프셋을 계산한다. 예를 들어, 시간 캡처 버퍼(212)는 값 0x3724 2817을 저장할 수 있고 시간 캡처 버퍼(214)는 값 0x0000 1278을 저장할 수 있다. 따라서 DC 오프셋 값의 크기는 0x3724 2817 - 0x0000 1278으로 계산된다.
동기화 제어기(201)는 통신 유닛(204)으로 하여금 후속하는 펄스에 대한 송신 및 수신 시간을 각각 레코드하게 하여 PPM 차이를 결정한다. 예를 들어, 1초 후에, 시간 캡처 버퍼(212)에 있는 값은 시간 캡처 버퍼(214)에서 이 값보다 2배 증가할 수 있다. 따라서, 동기화 제어기(201)는 크리스탈 발진기(220)가 크리스탈 발진기(222)보다 2배 빨리 동작하는 것으로 결정할 수 있다. 동기화 제어기(201)가 DC 오프셋 값 및 PPM 값을 결정한 후, 통신 디바이스(200)는 통신 디바이스(202 및 204)를 동기화하고 및/또는 통신 디바이스(200)를 통한 전파 지연을 결정할 수 있다.
다른 실시예에서, 통신 유닛(202 또는 204)으로 하여금 커넥터(264) 또는 유사한 인터페이스를 통해 펄스를 송신하게 하는 대신에, 동기화 제어기(201)는 다른 비-동기화 목적을 위해 통신 유닛(202 또는 204)들 사이에 송신된 메시지를 사용한다. 그러나, 예를 들어, 이들 메시지는, 통신 유닛(202 및 204)을 동기화하는 메커니즘을 제공하지 않는 통신 유닛(202 및 204)들 사이에 제어 정보를 교환하는 프로토콜에 순응할 수 있다. 동기화 제어기(201)는 메시지의 제1 심볼(예를 들어, 비트)이 송신될 때 유선 통신 유닛(202)으로 하여금 카운터(230)의 값을 시간 캡처 버퍼(212)에 레코드하게 하고, 메시지의 제1 심볼이 수신될 때 무선 통신 유닛(204)으로 하여금 카운터(232)의 값을 시간 캡처 버퍼(214)에 레코드하게 할 수 있다.
동기화 제어기(201)는 도 3에서 별개의 컴포넌트로 도시되어 있으나, 동기화 제어기(201)는 다른 실시예에서 통신 디바이스(200)의 다른 컴포넌트의 일체형 부분으로 구현되거나 또는 통신 디바이스(200)의 다른 컴포넌트 내에서 동작하는 수 개의 컴포넌트로 구현된다. 예를 들어, 하나의 이러한 실시예에서, 동기화 제어기(201) 및 프로세서(206)는 단일 집적된 컴포넌트로 구현된다. 다른 실시예에서, 동기화 제어기(201)는 유선 통신 유닛(202)의 컴포넌트이다. 또 다른 실시예에서, 동기화 제어기(201)는 무선 통신 유닛(204)의 컴포넌트이다. 나아가, 또 다른 실시예에서, 동기화 제어기(201)는 프로세서(206)에서 실행가능한 메모리(208)에 저장된 소프트웨어 명령으로 구현된다. 더 나아가, 일 실시예에서, 동기화 제어기(201)는 소프트웨어 명령으로 뿐만 아니라 유선 통신 유닛(202), 무선 통신(204) 또는 둘 모두의 하나 이상의 하드웨어 컴포넌트로 분배된 방식으로 구현된다.
전술된 디바이스의 일부에 구현될 수 있는 수 개의 예시적인 방법이 다음에 고려된다.
제일 먼저 도 4를 참조하면, 2개의 처리 유닛의 클록들 사이의 차이를 결정하는 예시적인 방법(300)이, 예를 들어, 처리 유닛이 통신 유닛인 도 3의 동기화 제어기(201)에서 구현될 수 있다. 블록(302)에서, 방법(300)은 제1 처리 유닛이 신호를 내부 인터페이스를 통해 제2 통신 유닛으로 송신하는 단계를 포함한다. 전술된 바와 같이, 내부 인터페이스는, 예를 들어 IEEE 802.1AS와 같은 표준을 구현하는 제너릭 인터페이스일 수 있다. 전술된 바와 같이, 송신된 신호는 간단한 펄스, 다중-심볼 메시지의 시작 또는 임의의 다른 유형의 신호일 수 있다.
다음으로, 블록(304)에서, 신호가 송신되는 시간에 대응하는 시간 스탬프는 제1 처리 유닛의 클록을 사용하여 생성된다. 블록(306)에서, 신호가 제2 처리 유닛에 도달하는 시간에 대응하는 시간 스탬프가 제2 처리 유닛의 클록을 사용하여 생성된다. 일 실시예에서, 신호의 수신은 무조건적이고 순간적인 것이어서, 블록(304 및 306)은 실질적으로 동시에 실행되는 것으로 가정된다.
블록(308)에서, DC 오프셋은 2개의 생성된 시간 스탬프를 사용하여 결정된다. 보다 일반적으로, 처리 유닛의 클록의 값들의 차이가 블록(308)에서 결정된다.
도 5는 동일한 디바이스에서 동작하는 2개의 처리 유닛의 클록들 사이의 카운트 주파수의 차이를 결정하는 예시적인 방법(350)의 흐름도이다. 방법(300)과 유사하게, 방법(250)은 예를 들어 동기화 제어기(201)에 구현될 수 있다.
블록(352)에서, 한 쌍의 처리 유닛에 대한 제1 DC 오프셋 값이 계산된다. 이를 위해, 전술된 방법(300)이 예를 들어 사용될 수 있다. 다음으로 블록(354)에서, 시간 만료 이벤트가 검출되고, 한 쌍의 처리 디바이스에 대한 다른 DC 오프셋 값이 블록(356)에서 결정된다. PPM 값과 같은 카운트 주파수의 차이가 DC 오프셋 값의 마지막 계산된 쌍을 사용하여 블록(358)에서 결정된다. 흐름은 블록(354)으로 리턴하여 그 다음 시간 만료 이벤트를 대기한다. 시간은 예를 들어 1초로 설정될 수 있다. 이런 방식으로, 방법(300)은 디바이스에서 동작하는 하나의 처리 유닛이 동일한 디바이스에서 동작하는 다른 처리 유닛이 리셋됨이 없이 리셋되는 경우에도 DC 오프셋 및 PPM 값이 일반적으로 정확한 것을 보장한다.
이제 도 6a를 참조하면, 유선 통신 유닛 및 무선 통신 유닛을 포함하는 디바이스를 통한 전파 지연을 결정하는 예시적인 방법(400)이 예를 들어 도 3의 통신 디바이스(200)에서 구현될 수 있다. 블록(402)에서, 데이터 패킷은 유선 통신 유닛의 유선 포트를 통해 수신된다. 유선 포트는 예를 들어 이더넷 포트일 수 있다.
데이터 패킷이 수신되는 시간에 대응하는 시간 스탬프가 블록(404)에서 생성된다. 예를 들어, 일 실시예에서, 시간 스탬프는 데이터 패킷이 유선 포트의 유입 파이프라인을 통해 진행할 때 생성된다.
블록(406)에서, 시간 스탬프는 무선 통신 유닛의 클록에 따라 무선 통신 유닛의 유선 포트를 통해 데이터 패킷을 유출하기 바로 전에 생성된다. 유선 통신 유닛 및 무선 통신 유닛은 통신 디바이스(200)와 같은 디바이스에서 상이한 클록에 따라 동작하므로, DC 오프셋 및 PPM 차이는 블록(408)에서 결정된다. 일례로서, 전술된 방법(300 및 350)이 사용될 수 있다.
다음으로, 디바이스를 통한 전파 지연은 블록(410)에서 계산된다. 전파 지연 정보는 다른 통신 디바이스에서 후속 처리를 위해 데이터 패킷에 대해 제공된다. 이 실시예에 따르면, 실시예에 따르면, 내 필드로, 별개의 메시지로 또는 임의의 다른 적절한 방식으로 지정될 수 있다. 전파 지연 정보를 사용하여, 패킷의 후속하는 수신기는 적절한 시간에서 데이터 패킷 내 데이터를 플레이백(또는 다른 방식으로 데이터 패킷을 처리)할 수 있다.
도 6b는 패킷이 무선 통신 유닛(452)의 무선 포트에서 수신되는 것을 제외하고는 방법(400)과 일반적으로 유사한 방법(450)을 도시한다. 따라서, 데이터 패킷의 수신에 대응하는 시간 스탬프가 무선 데이터 유닛의 클록에 따라 생성되고(블록 454), 데이터 패킷이 급박히 떠나는 것에 대응하는 시간 스탬프는 유선 통신 유닛의 클록에 따라 생성된다(블록 456). 블록(458 및 460)은 전술된 블록(408 및 410)과 유사하다.
전술된 여러 블록, 동작, 및 기술의 적어도 일부는 하드웨어, 펌웨어 명령을 실행하는 프로세서, 소프트웨어 명령을 실행하는 프로세서 또는 임의의 조합을 사용하여 구현될 수 있다. 소프트웨어 또는 펌웨어 명령을 실행하는 프로세서를 사용하여 구현될 때, 소프트웨어 또는 펌웨어 명령은 자기 디스크, 광 디스크, RAM, ROM, 플래쉬 메모리 등과 같은 임의의 유형적인, 비-일시적인 컴퓨터 판독가능한 메모리에 저장될 수 있다. 소프트웨어 또는 펌웨어 명령은 프로세서에 의해 실행될 때, 프로세서로 하여금 여러 액션을 수행하게 하는 기계 판독가능한 명령을 포함할 수 있다.
하드웨어로 구현될 때, 하드웨어는 이산 컴포넌트, 집적 회로, ASIC, 프로그래밍가능한 논리 디바이스 등에서 하나 이상을 포함할 수 있다.
여러 실시예는 예시를 위하여 의도된 것일 뿐 본 발명을 제한하고자 의도된 것이 전혀 아닌 특정 예를 참조하여 설명되었으나, 개시된 실시예에는 청구범위를 벗어남이 없이 변경, 추가 및/또는 삭제가 이루어질 수 있을 것이다.

Claims (20)

  1. 장치로서,
    제1 클록에 따라 동작하는 제1 처리 유닛;
    상기 제1 클록과는 별개로 동작하는 제2 클록에 따라 동작하는 제2 처리 유닛; 및
    상기 제1 통신 유닛 및 상기 제2 통신 유닛에 연결된 동기화 제어기를 포함하고;
    상기 동기화 제어기는,
    (i) 상기 제1 통신 유닛으로 하여금 상기 제1 처리 유닛이 신호를 상기 제2 처리 유닛에 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하게 하고,
    (ii) 상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하며, 그리고
    (iii) 상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 상기 제1 클록과 상기 제2 클록 사이의 오프셋을 결정하도록 구성된 것인 장치.
  2. 제1항에 있어서, 상기 제1 통신 유닛이 상기 신호를 상기 제2 통신 유닛에 송신하는 제너릭 인터페이스를 더 포함하는 장치.
  3. 제2항에 있어서, 상기 제너릭 인터페이스는 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나를 포함하는 것인 장치.
  4. 제2항에 있어서, 상기 신호는 펄스인 것인 장치.
  5. 제1항에 있어서, 상기 동기화 제어기는 동작 (i) 및 (ii)을 주기적으로 반복하여 상기 제1 클록과 상기 제2 클록 사이의 주파수의 차이를 결정하도록 구성된 것인 장치.
  6. 제1항에 있어서, 상기 제1 처리 유닛은 (i) 유선 통신 링크를 통해 데이터를 송수신하도록 구성된 유선 통신 유닛 및 (ii) 무선 통신 링크를 통해 데이터를 송수신하도록 구성된 무선 통신 유닛 중 하나의 통신 유닛이고, 그리고
    상기 제2 처리 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛이며,
    상기 장치는 상기 유선 통신 유닛과 상기 무선 통신 유닛 사이에 데이터를 전달하도록 구성된 것인 장치.
  7. 제1항에 있어서, 상기 유선 통신 링크는 이더넷 링크인 것인 장치.
  8. 제1항에 있어서,
    상기 제1 처리 유닛 및 상기 동기화 제어기에 연결되어 상기 제1 시간 지시값을 저장하는 제1 하드웨어 레지스터; 그리고
    상기 제2 처리 유닛 및 상기 동기화 제어기에 연결되어 상기 제2 시간 지시값을 저장하는 제2 하드웨어 레지스터를 더 포함하는 장치.
  9. (i) 제1 클록에 따라 동작하는 제1 처리 유닛 및 (ii) 상기 제1 클록과는 별개로 동작하는 제2 클록에 따라 동작하는 제2 처리 유닛을 포함하는 디바이스에서 동기화하는 방법으로서, 상기 방법은,
    상기 제1 처리 유닛으로 하여금 상기 제1 처리 유닛이 신호를 상기 제2 처리 유닛에 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하게 하는 단계;
    상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하는 단계; 그리고
    상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 상기 제1 클록과 상기 제2 클록 사이의 오프셋을 결정하는 단계를 포함하는, 동기화 방법.
  10. 제9항에 있어서, 상기 제1 처리 유닛으로 하여금 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나를 통해 상기 신호를 송신하게 하는 단계를 더 포함하는, 동기화 방법.
  11. 제9항에 있어서, 상기 제1 처리 유닛으로 하여금 상기 신호를 펄스 형태로 송신하게 하는 단계를 더 포함하는, 동기화 방법.
  12. 제9항에 있어서, 상기 신호는 상기 제1 처리 유닛과 상기 제2 처리 유닛 사이에 송신된 커맨드와 연관되고, 상기 커맨드는 상기 제1 처리 유닛과 상기 제2 처리 유닛 사이에 제어 정보를 교환하도록 한정된 메시징 프로토콜에 순응하는 것인 동기화 방법.
  13. 제9항에 있어서,
    상기 제1 처리 유닛으로 하여금 상기 신호를 복수의 신호 중 하나의 신호로 생성하게 하는 단계;
    상기 복수의 신호를 사용하여 상기 제1 시간 지시값 및 상기 제2 시간 지시값의 다수의 버전을 생성하는 단계; 그리고
    상기 제1 시간 지시값 및 상기 제2 시간 지시값의 다수의 버전에 기초하여 상기 제1 클록과 상기 제2 클록 사이에 주파수 차이를 결정하는 단계를 더 포함하는, 동기화 방법.
  14. 제13항에 있어서, 상기 제1 처리 유닛은 제1 통신 유닛이고 상기 제2 처리 유닛은 제2 통신 유닛이며, 상기 방법은,
    상기 제1 통신 유닛의 포트를 통해 데이터 패킷을 수신하는 단계;
    상기 결정된 오프셋 및 결정된 주파수 차이를 사용하여 상기 디바이스와 연관된 전파 지연을 결정하는 단계; 그리고
    상기 전파 지연의 지시값을 제공하는 것을 포함하여 상기 제2 통신 유닛의 포트를 통해 상기 데이터 패킷을 송신하는 단계를 더 포함하는, 동기화 방법.
  15. 제14항에 있어서, 상기 제1 통신 유닛은 유선 통신 유닛 및 무선 통신 유닛 중 하나의 통신 유닛이고, 상기 제2 통신 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛인 것인 동기화 방법.
  16. 제1 처리 유닛, 제2 처리 유닛으로서 처리 유닛을 포함하고, 상기 제1 처리 유닛과 상기 제2 처리 유닛에 연결된 동기화 제어기를 포함하는 디바이스에서 동작하도록 구성된 처리 유닛으로서, 상기 제1 처리 유닛은,
    상기 제1 처리 유닛이 동작하는 클록; 그리고
    상기 제1 처리 유닛을 상기 제2 처리 유닛에 연결하는 인터페이스를 포함하고; 상기 제2 처리 유닛은 별개의 클록에 따라 동작하며,
    상기 처리 유닛은 (i) 주기적인 신호를 상기 인터페이스를 통해 상기 제2 처리 유닛에 송신하고, (ii) 상기 제1 처리 유닛이 상기 주기적인 신호를 상기 제2 처리 유닛으로 송신하는 제1 시간 지시값을 상기 제1 클록에 따라 생성하도록 구성되고,
    상기 동기화 제어기는 (i) 상기 제2 처리 유닛으로 하여금 상기 제2 처리 유닛이 상기 주기적인 신호를 수신하는 제2 시간 지시값을 상기 제2 클록에 따라 생성하게 하고, (ii) 상기 제1 시간 지시값 및 상기 제2 시간 지시값에 기초하여 동기화 파라미터를 생성하도록 구성된 것인 처리 유닛.
  17. 제16항에 있어서, 상기 인터페이스는 (i) GPIO(General Purpose Input/Output) 핀, (ii) PCIE(Peripheral Component Interconnect Express) 포트 또는 (iii) SDIS(Secure Digital Input Output) 슬롯 중 하나를 포함하는 것인 처리 유닛.
  18. 제16항에 있어서, 상기 주기적인 신호는 펄스인 것인 처리 유닛.
  19. 제16항에 있어서, 상기 동기화 파라미터는 (i) 상기 제1 처리 유닛의 클록과 상기 제2 처리 유닛의 클록 사이의 오프셋 및 (ii) 상기 제1 처리 유닛의 클록과 상기 제2 처리 유닛의 클록 사이의 주파수 차이 중 적어도 하나를 포함하는 것인 처리 유닛.
  20. 제16항에 있어서,
    상기 제1 처리 유닛은 (i) 유선 통신 링크를 통해 데이터를 송수신하도록 구성된 유선 통신 유닛 및 (ii) 무선 통신 링크를 통해 데이터를 송수신하도록 구성된 무선 통신 유닛 중 하나의 통신 유닛이고; 그리고
    상기 제2 처리 유닛은 상기 유선 통신 유닛 및 상기 무선 통신 유닛 중 다른 하나의 통신 유닛인 것인 처리 유닛.
KR1020147021836A 2012-01-04 2013-01-04 시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치 KR102031268B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261582953P 2012-01-04 2012-01-04
US61/582,953 2012-01-04
US201261708866P 2012-10-02 2012-10-02
US61/708,866 2012-10-02
PCT/IB2013/000319 WO2013102847A1 (en) 2012-01-04 2013-01-04 Method and apparatus for communicating time information between time-aware devices

Publications (2)

Publication Number Publication Date
KR20140111011A true KR20140111011A (ko) 2014-09-17
KR102031268B1 KR102031268B1 (ko) 2019-10-11

Family

ID=48190539

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147021836A KR102031268B1 (ko) 2012-01-04 2013-01-04 시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치

Country Status (6)

Country Link
US (1) US9256247B2 (ko)
EP (1) EP2801162B1 (ko)
JP (1) JP6214008B2 (ko)
KR (1) KR102031268B1 (ko)
CN (1) CN104115432B (ko)
WO (1) WO2013102847A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013181837A (ja) * 2012-03-01 2013-09-12 Canon Inc 撮像装置
EP2882169B1 (en) * 2014-08-19 2017-10-04 ABB Schweiz AG Redundant content bridging between substation communication networks
US10078361B2 (en) 2014-10-08 2018-09-18 Apple Inc. Methods and apparatus for running and booting an inter-processor communication link between independently operable processors
US10051588B2 (en) * 2014-11-27 2018-08-14 Mediatek Inc. Collaborative OBSS interference mitigation for wireless communication systems
DE102014225224A1 (de) * 2014-12-09 2016-06-09 Bayerische Motoren Werke Aktiengesellschaft Verfahren, Computerprogrammprodukt und Schaltungsanordnung für ein Datennetzwerk zur Übertragung von Audio/Video-Daten
US9847922B2 (en) * 2015-03-18 2017-12-19 Arista Networks, Inc. System and method for continuous measurement of transit latency in individual data switches and multi-device topologies
CN106211306B (zh) * 2015-04-30 2020-04-03 华为技术有限公司 一种通信网络延时抖动平滑方法、装置及系统
CN104980820B (zh) * 2015-06-17 2018-09-18 小米科技有限责任公司 多媒体文件播放方法及装置
GB2542148B (en) * 2015-09-09 2019-12-04 Imagination Tech Ltd Synchronising devices
US10085214B2 (en) 2016-01-27 2018-09-25 Apple Inc. Apparatus and methods for wake-limiting with an inter-device communication link
US10572390B2 (en) 2016-02-29 2020-02-25 Apple Inc. Methods and apparatus for loading firmware on demand
US10191859B2 (en) 2016-03-31 2019-01-29 Apple Inc. Memory access protection apparatus and methods for memory mapped access between independently operable processors
JP6753262B2 (ja) * 2016-10-14 2020-09-09 オムロン株式会社 制御装置および通信装置
US10255033B2 (en) 2016-12-13 2019-04-09 EVA Automation, Inc. Wireless coordination of audio playback
US10241748B2 (en) 2016-12-13 2019-03-26 EVA Automation, Inc. Schedule-based coordination of audio sources
US10892972B2 (en) * 2017-04-26 2021-01-12 Microsemi Storage Solutions, Inc. Scheduled network setup test method and system
JP6962099B2 (ja) * 2017-09-25 2021-11-05 オムロン株式会社 制御システムおよび制御装置
WO2020001504A1 (zh) * 2018-06-26 2020-01-02 华为技术有限公司 一种同步方法及装置
CN110649983B (zh) * 2018-06-26 2021-08-03 华为技术有限公司 一种同步方法及装置
US10838450B2 (en) 2018-09-28 2020-11-17 Apple Inc. Methods and apparatus for synchronization of time between independently operable processors
CN111092713B (zh) * 2018-10-23 2022-08-12 智邦科技股份有限公司 时钟同步装置及时钟同步方法
US11075743B2 (en) * 2019-08-27 2021-07-27 Nxp Usa, Inc. Adjustable high resolution timer
US11711158B2 (en) * 2021-06-28 2023-07-25 Mellanox Technologies, Ltd. Accurate time-stamping of outbound packets
CN115052199A (zh) * 2022-06-20 2022-09-13 蔚来汽车科技(安徽)有限公司 车载观影系统及车载观影方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006238424A (ja) * 2005-01-20 2006-09-07 Vixs Systems Inc 無線環境におけるマルチメディア配信のためのシステム及び方法
US20110276648A1 (en) * 2010-05-07 2011-11-10 Microsoft Corporation Clock synchronization for shared media playback

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327274B1 (en) * 1998-09-15 2001-12-04 Nokia Telecommunications, Inc. Method for estimating relative skew between clocks in packet networks
FI108489B (fi) * 1999-12-30 2002-01-31 Nokia Corp Synkronointi pakettivõlitteisessõ tietoliikennejõrjestelmõssõ
KR100815128B1 (ko) * 2000-07-26 2008-03-20 톰슨 라이센싱 비동기 디지털 홈네트워크에서 멀티-미디어 지터 제거
US7898994B2 (en) * 2002-02-25 2011-03-01 Hewlett-Packard Development Company, L.P. Power saving in multi-processor device
US7573914B2 (en) * 2005-05-12 2009-08-11 Agilent Technologies, Inc. Systems and methods for synchronizing time across networks
US7602873B2 (en) * 2005-12-23 2009-10-13 Agilent Technologies, Inc. Correcting time synchronization inaccuracy caused by asymmetric delay on a communication link
US7839897B2 (en) 2006-09-29 2010-11-23 Agere Systems Inc. Methods and apparatus for unidirectional timing message transport over packet networks
US8189710B2 (en) * 2007-04-06 2012-05-29 Intel Corporation Architecture and methods for coexistence of wireless radios having differing protocols
EP2026485A1 (en) * 2007-08-17 2009-02-18 Nokia Siemens Networks Oy Method and device for a packet based clock recovery
DE102008026391A1 (de) * 2008-06-02 2009-12-10 Micronas Gmbh Verfahren und Vorrichtung zur Synchronisation eines Taktsignals mit einem Referenztaktsignal
JP2010109586A (ja) * 2008-10-29 2010-05-13 Oki Networks Co Ltd クロック発生装置、クロック発生方法、通信装置、及び同期クロック伝送システム
GB0908883D0 (en) 2009-05-22 2009-07-01 Zarlink Semiconductor Inc Multi input timing recovery over packet networks
JP5479793B2 (ja) * 2009-07-16 2014-04-23 株式会社サイバー創研 片道変動遅延時間の推定方法及びその装置
US8630314B2 (en) * 2010-01-11 2014-01-14 Faro Technologies, Inc. Method and apparatus for synchronizing measurements taken by multiple metrology devices
FR2967535B1 (fr) 2010-11-15 2012-11-02 Alcatel Lucent Procede de synchronisation d'horloges maitre et esclave d'un reseau a commutation de paquets et a liaisons agregees entre noeuds, et dispositifs de synchronisation associes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006238424A (ja) * 2005-01-20 2006-09-07 Vixs Systems Inc 無線環境におけるマルチメディア配信のためのシステム及び方法
US20110276648A1 (en) * 2010-05-07 2011-11-10 Microsoft Corporation Clock synchronization for shared media playback

Also Published As

Publication number Publication date
CN104115432A (zh) 2014-10-22
WO2013102847A1 (en) 2013-07-11
US9256247B2 (en) 2016-02-09
JP2015506626A (ja) 2015-03-02
CN104115432B (zh) 2017-09-15
EP2801162A1 (en) 2014-11-12
EP2801162B1 (en) 2016-12-07
KR102031268B1 (ko) 2019-10-11
JP6214008B2 (ja) 2017-10-18
US20130173950A1 (en) 2013-07-04

Similar Documents

Publication Publication Date Title
KR102031268B1 (ko) 시간-인식 디바이스들 사이에 시간 정보를 통신하는 방법 및 장치
US10237008B2 (en) Synchronization with different clock transport protocols
US9548831B2 (en) Synchronizing system, synchronizing method, first synchronizing device, second synchronizing device, and computer program
US8081663B2 (en) Time synchronization method and relay apparatus
US8873588B2 (en) Network distributed packet-based synchronization
TW201921892A (zh) 間接封包分類時間戳系統及方法
US20120275501A1 (en) Pluggable synchronization clocks, networks, systems and methods related thereto
KR101290643B1 (ko) 광 전송 네트워크에서 시간 동기화 프로토콜을 베어링하는 방법 및 시스템
CN109699199B (zh) 一种报文处理的方法和网络设备
JP6351889B1 (ja) 通信システム及びスレーブ装置
JP2009182659A (ja) タイミング同期方法、同期装置、同期システム及び同期プログラム
WO2015125439A1 (ja) 通信システム、無線通信装置及び無線通信方法
US9065748B2 (en) Symmetrical latency with TDM circuit emulated service
US9497018B2 (en) Relay device, communication system and relay method
EP3915207A1 (en) Systems and methods for testing time distribution
CN106612150A (zh) 网络设备、时间同步方法及其网络系统
JP2011071869A (ja) クロック同期方法及びパケット通信システム
JP2015117941A (ja) 通信システム、及び時刻同期方法
JP2018125768A (ja) データ伝送装置及びプログラム
KR20150016735A (ko) 중앙 집중 제어 평면을 이용한 네트워크 시각 동기 시스템
JP2013131934A (ja) 速度変換中継装置
WO2016187781A1 (zh) 报文处理方法及装置
KR20110014909A (ko) 네트워크 장치간 시각 보정 방법 및 그 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right