KR20170027730A - 네트워크 클록 비교 시스템들 및 방법들 - Google Patents

네트워크 클록 비교 시스템들 및 방법들 Download PDF

Info

Publication number
KR20170027730A
KR20170027730A KR1020167036275A KR20167036275A KR20170027730A KR 20170027730 A KR20170027730 A KR 20170027730A KR 1020167036275 A KR1020167036275 A KR 1020167036275A KR 20167036275 A KR20167036275 A KR 20167036275A KR 20170027730 A KR20170027730 A KR 20170027730A
Authority
KR
South Korea
Prior art keywords
timestamp
packet
time
capture
clock
Prior art date
Application number
KR1020167036275A
Other languages
English (en)
Inventor
제임스 시몬 조
알리레자 라이시니아
카를로스 호라시오 알다나
시아오롱 후앙
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20170027730A publication Critical patent/KR20170027730A/ko

Links

Images

Classifications

    • 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
    • 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
    • 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/0685Clock or time synchronisation in a node; Intranode synchronisation
    • H04J3/0697Synchronisation in a packet node

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

방법은, 제 1 디바이스에서 제 2 디바이스로부터 패킷을 수신하는 단계를 포함한다. 방법은 또한, 검출 회로에서 패킷의 수신을 검출하는 단계를 포함한다. 방법은 추가로, 패킷의 수신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 도달 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 단계를 포함한다. 방법은 또한, 제 1 디바이스에서, 패킷에 대응하는 출발 시간 타임스탬프를 제 2 디바이스로부터 수신하는 단계를 포함한다. 출발 시간 타임스탬프는, 패킷이 제 2 디바이스로부터 전송된 시간을 표시한다. 방법은 추가로, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하는 단계를 포함한다.

Description

네트워크 클록 비교 시스템들 및 방법들{SYSTEMS AND METHODS OF NETWORK CLOCK COMPARISON}
우선권 주장
[0001] 본 출원은, 2014년 7월 3일자로 출원된 공동 소유의 미국 가특허 출원 제 62/020,925호 및 2015년 6월 29일자로 출원된 미국 정규 특허 출원 제 14/754,343호를 우선권으로 주장하며, 상기 미국 출원들의 내용들은 그 전체가 인용에 의해 명백히 포함된다.
[0002] 본 개시내용은 일반적으로, 네트워크 클록(clock) 비교에 관한 것이다.
[0003] 기술에서의 발전들은 더 소형이고 더 강력한(powerful) 컴퓨팅 디바이스들을 초래했다. 예를 들어, 소형이고, 경량이며, 사용자들에 의해 용이하게 휴대되는 휴대용 무선 텔레폰들, 개인 휴대 정보 단말(PDA)들, 및 페이징(paging) 디바이스들과 같은 무선 컴퓨팅 디바이스들을 포함하는 다양한 휴대용 개인 컴퓨팅 디바이스들이 현재 존재한다. 더 구체적으로는, 셀룰러 텔레폰들 및 인터넷 프로토콜(IP) 텔레폰들과 같은 휴대용 무선 텔레폰들은 무선 네트워크들을 통해 음성(voice) 및 데이터 패킷들을 통신할 수 있다. 추가로, 많은 그러한 무선 텔레폰들은 그들에 포함되는 다른 타입들의 디바이스들을 포함한다. 예를 들어, 무선 텔레폰은 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라, 디지털 리코더, 및 오디오 파일 플레이어를 또한 포함할 수 있다. 또한, 그러한 무선 텔레폰들은, 인터넷에 액세스하기 위해 사용될 수 있는 웹 브라우저 애플리케이션과 같은 명령들을 프로세싱할 수 있다. 메모리들, 이를테면 무선 텔레폰 또는 다른 전자 디바이스 내의 메모리는, 다른 데이터에 부가하여 명령들을 저장할 수 있다.
[0004] 컴퓨팅 디바이스들은 때때로 동기식 동작들을 수행할 수 있다. 예를 들어, 카메라와 같은 비디오 소스 디바이스는 비디오 데이터를 캡쳐(capture)할 수 있다. 마이크로폰과 같은 오디오 소스 디바이스는 오디오 데이터를 캡쳐할 수 있다. 컴퓨팅 디바이스는, 네트워크를 통해 비디오 데이터를 카메라로부터 수신할 수 있고 그리고 (네트워크를 통해) 오디오 데이터를 마이크로폰으로부터 수신할 수 있다. 컴퓨팅 디바이스는, 오디오 데이터와 비디오 데이터를 결합하여 멀티미디어 스트림을 생성할 수 있다. 카메라는, 카메라에서의 카메라 클록에 기초하여 오디오 데이터를 타임스탬핑(timestamp)할 수 있고, 마이크로폰은, 마이크로폰에서의 마이크로폰 클록에 기초하여 비디오 데이터를 타임스탬핑할 수 있다. 카메라 클록 및 마이크로폰 클록은 상이할 수 있다. 예를 들어, 카메라 클록 및 마이크로폰 클록은 상이한 값들로 초기화될 수 있다. 대안적으로, 카메라 클록 및 마이크로폰 클록이 동시에 동일한 값들로 초기화된다 하더라도, 카메라 클록 및 마이크로폰 클록은 시간에 걸쳐 드리프팅(drift)할 수 있다. 예를 들어, 카메라 클록 및 마이크로폰 클록은 상이한 레이트(rate)들로 시간의 변화들을 측정할 수 있다. 컴퓨팅 디바이스는, 오디오 데이터 및 비디오 데이터의 타임스탬프들에 기초하여 오디오 데이터와 비디오 데이터를 결합시킴으로써 멀티미디어 스트림을 생성할 수 있다. 오디오 데이터 및 비디오 데이터는, 타임스탬프들이 상이한 클록들에 기초하기 때문에, 멀티미디어 스트림에서 부정확하게 동기화될 수 있다.
[0005] 네트워크 클록 비교 시스템들 및 방법들이 개시된다. 특정 양상에서, 제 1 디바이스는 제 1 패킷을 제 2 디바이스에 전송할 수 있다. 제 1 패킷은 타임스탬프 동기화 요청일 수 있다. 제 1 디바이스에서의 검출 회로는, 제 1 패킷의 송신을 검출하는 것에 대한 응답으로 제 1 타임스탬프 캡쳐 신호를 어써팅(assert)할 수 있다. 검출 회로는, 제 1 OSI(open systems interconnection model) 계층에서 동작할 수 있다. 제 1 OSI 계층은 물리 계층 또는 데이터 링크 계층을 포함할 수 있다. 제 1 패킷이 생성되거나 또는 제 2 OSI 계층에 의해 수신되는 때(예컨대, 9:00:00 AM)와 제 1 패킷의 제 1 비트가 송신되는 때(예컨대, 9:00:02 AM) 간에 지연(delay)이 존재할 수 있다. 예를 들어, 송신을 위해 제 1 패킷이 더 높은 OSI 계층들을 통해 제 1 OSI 계층으로 전달되는 것에 대응하는 지연이 존재할 수 있다. 더 높은 OSI 계층들은, 제 2 OSI 계층을 포함할 수 있다. 제 2 OSI 계층은, 애플리케이션 계층, 프레젠테이션(presentation) 계층, 세션 계층, 전송 계층, 또는 네트워크 계층을 포함할 수 있다. 검출 회로가 더 낮은 OSI 계층에서 동작하게 하는 것은, 제 1 패킷의 제 1 비트가 송신된 시간에 더 가깝게 제 1 타임스탬프 캡쳐 신호를 검출 회로가 어써팅하는 것을 가능하게 할 수 있다. 어써팅되는 제 1 타임스탬프 캡쳐 신호를 제 1 패킷의 제 1 비트가 송신된 시간에 더 가깝게 하는 것은, 본원에 설명되는 바와 같이, 더 정확한 출발 시간(time of departure)(예컨대, 9:00 AM과 비교하여 9:00:02 AM)이 캡쳐되는 것을 가능하게 할 수 있다.
[0006] 제 1 디바이스에서의 제 1 클록 레지스터는 클록에 대응할 수 있다. 예를 들어, 제 1 클록 레지스터의 값은 주기적으로 업데이트될 수 있다. 특정 양상에서, 제 1 클록 레지스터는, 제 1 디바이스에서의 프로세서에 의해 주기적으로 업데이트될 수 있다. 제 1 디바이스에서의 캡쳐 회로는, 제 1 타임스탬프 캡쳐 신호에 대한 응답으로, 제 1 클록 레지스터로부터 제 1 섀도우(shadow) 타임스탬프 레지스터로 출발 시간(TOD; time of departure)을 카피(copy)함으로써 TOD를 캡쳐할 수 있다. 제 1 섀도우 타임스탬프 레지스터에 카피된 TOD는, 제 1 타임스탬프 캡쳐 신호에 대한 응답으로 제 1 클록 레지스터가 캡쳐 회로에 의해 판독되는 시간에서의 제 1 클록 레지스터의 스냅샷(snapshot)을 표현할 수 있다. 제 1 디바이스에서의 동기화 모듈은, TOD를 제 2 디바이스에 전송할 수 있다.
[0007] 제 2 디바이스는 제 1 패킷을 수신할 수 있다. 제 2 디바이스에서의 검출 회로는, 제 1 패킷이 수신되는 것에 대한 응답으로 제 2 타임스탬프 캡쳐 신호를 어써팅할 수 있다. 제 2 디바이스에서 제 1 패킷이 수신되는 때(예컨대, 9:00:30 AM)와 제 1 패킷이 제 1 OSI 계층으로부터 더 높은 OSI 계층으로 전달되는 때(예컨대, 9:01) 간에 지연이 존재할 수 있다. 예를 들어, 제 1 패킷이 OSI 계층들을 통해 더 높은 계층으로 전달되는 것에 대응하는 지연이 존재할 수 있다. 제 1 OSI 계층은 물리 계층 및/또는 데이터 링크 계층을 포함할 수 있다. 더 높은 OSI 계층은, 애플리케이션 계층, 프레젠테이션 계층, 세션 계층, 전송 계층, 또는 네트워크 계층을 포함할 수 있다. 검출 회로가 더 낮은 OSI 계층에서 동작하게 하는 것은, 제 1 패킷의 제 1 비트가 제 2 디바이스에서 수신된 시간에 더 가깝게 제 2 타임스탬프 캡쳐 신호를 검출 회로가 어써팅하는 것을 가능하게 할 수 있다. 어써팅되는 제 2 타임스탬프 캡쳐 신호를 제 1 패킷의 제 1 비트가 수신된 시간에 더 가깝게 하는 것은, 본원에 설명되는 바와 같이, 더 정확한 도달 시간(time of arrival)(예컨대, 오전 9:01 AM과 비교하여 오전 9:00:30 AM)이 캡쳐되는 것을 가능하게 할 수 있다.
[0008] 제 2 디바이스에서의 제 2 클록 레지스터는 클록에 대응할 수 있다. 제 2 디바이스에서의 캡쳐 회로는, 제 2 타임스탬프 캡쳐 신호에 대한 응답으로, 제 2 클록 레지스터로부터 제 2 섀도우 타임스탬프 레지스터로 도달 시간(TOA; time of arrival)을 카피함으로써 TOA를 캡쳐할 수 있다. 제 2 섀도우 타임스탬프 레지스터에 카피된 TOA는, 제 2 타임스탬프 캡쳐 신호에 대한 응답으로 제 2 클록 레지스터가 제 2 디바이스의 캡쳐 회로에 의해 판독되는 시간에서의 제 2 클록 레지스터의 스냅샷을 표현할 수 있다.
[0009] 제 2 디바이스는 제 1 디바이스로부터 TOD를 수신할 수 있다. 제 2 디바이스에서의 동기화 모듈은, 제 2 섀도우 타임스탬프 레지스터로부터 TOA를 판독할 수 있고, TOA 및 TOD에 기초하여 제 1 클록 레지스터와 제 2 클록 레지스터를 비교할 수 있다. 예를 들어, 제 2 디바이스는, TOA와 TOD의 비교에 기초하여 제 1 클록 레지스터와 제 2 클록 레지스터 간의 오프셋(offset)을 결정함으로써, 제 1 클록 레지스터와 제 2 클록 레지스터를 동기화할 수 있다. 제 2 디바이스는, 제 2 디바이스에서의 메모리에 오프셋을 저장할 수 있다. 특정 양상에서, 제 2 디바이스는, 제 1 디바이스로부터 수신되는 제 1 데이터를 제 2 디바이스에서 생성되는 제 2 데이터와 동기화하기 위해 오프셋을 사용할 수 있으며, 여기서, 제 1 디바이스는 제 1 클록 레지스터에 기초하여 제 1 데이터를 타임스탬핑하고, 제 2 디바이스는 제 2 클록 레지스터에 기초하여 제 2 데이터를 타임스탬핑한다. 예를 들어, 제 2 디바이스는, 제 1 데이터를 제 2 데이터와 동기화하기 위해, 제 1 데이터의 타임스탬프들에 오프셋을 부가할 수 있다.
[0010] 제 2 디바이스에서의 동기화 모듈은, TOA를 제 1 디바이스에 전송할 수 있다. 예를 들어, 제 2 디바이스에서의 동기화 모듈은, 제 1 패킷이 타임스탬프 동기화 요청이라는 것을 결정하는 것에 기초하여 제 1 디바이스에 TOA를 전송할 수 있다. 제 1 디바이스는 TOA를 수신할 수 있다. 제 1 디바이스에서의 동기화 모듈은, 제 1 타임스탬프 섀도우 레지스터로부터 TOD를 판독할 수 있고, TOA 및 TOD에 기초하여 제 1 클록 레지스터와 제 2 클록 레지스터를 비교할 수 있다. 예를 들어, 제 1 디바이스는, TOA와 TOD의 비교에 기초하여 제 1 클록 레지스터와 제 2 클록 레지스터 간의 오프셋을 결정함으로써, 제 1 클록 레지스터와 제 2 클록 레지스터를 동기화할 수 있다. 제 1 디바이스는, 제 1 디바이스에서의 메모리에 오프셋을 저장할 수 있다. 특정 양상에서, 제 1 디바이스는, 제 1 디바이스에서 생성되는 제 1 데이터를 제 2 디바이스로부터 수신되는 제 2 데이터와 동기화하기 위해 오프셋을 사용할 수 있으며, 여기서, 제 1 디바이스는 제 1 클록 레지스터에 기초하여 제 1 데이터를 타임스탬핑하고, 제 2 디바이스는 제 2 클록 레지스터에 기초하여 제 2 데이터를 타임스탬핑한다. 예를 들어, 제 1 디바이스는, 제 1 데이터를 제 2 데이터와 동기화하기 위해, 제 1 데이터의 타임스탬프들에 오프셋을 부가할 수 있다.
[0011] 특정 양상에서, 컴퓨팅 디바이스는, 컴퓨팅 디바이스에서의 디바이스 클록을 오디오 소스 디바이스에서의 마이크로폰 클록과 동기화할 수 있다. 오디오 소스 디바이스는 마이크로폰을 포함할 수 있다. 컴퓨팅 디바이스는, 디바이스 클록을 비디오 소스 디바이스에서의 카메라 클록과 동기화할 수 있다. 비디오 소스 디바이스는 카메라를 포함할 수 있다. 예시하자면, 컴퓨팅 디바이스는, 디바이스 클록과 마이크로폰 클록 간의 제 1 오프셋을 결정할 수 있고, 디바이스 클록과 카메라 클록 간의 제 2 오프셋을 결정할 수 있다. 컴퓨팅 디바이스는, 마이크로폰으로부터 오디오 데이터를 수신할 수 있고, 카메라로부터 비디오 데이터를 수신할 수 있다. 마이크로폰은 마이크로폰 클록에 기초하여 오디오 데이터를 타임스탬핑할 수 있고, 카메라는 카메라 클록에 기초하여 비디오 데이터를 타임스탬핑할 수 있다. 컴퓨팅 디바이스는, 제 1 오프셋 및 제 2 오프셋에 기초하여 오디오 데이터와 비디오 데이터를 동기화할 수 있다. 예를 들어, 컴퓨팅 디바이스는, 오디오 데이터의 타임스탬프들에 제 1 오프셋을 부가할 수 있고, 비디오 데이터의 타임스탬프들에 제 2 오프셋을 부가할 수 있다. 다른 예로서, 컴퓨팅 디바이스는, 오디오 데이터의 타임스탬프들 또는 비디오 데이터의 타임스탬프들에 제 1 오프셋과 제 2 오프셋의 차이를 부가할 수 있다.
[0012] 특정 양상에서, 방법은, 제 1 디바이스에서 제 2 디바이스로부터 패킷을 수신하는 단계를 포함한다. 방법은 또한, 검출 회로에서 패킷의 수신을 검출하는 단계를 포함한다. 방법은 추가로, 패킷의 수신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 도달 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 단계를 포함한다. 방법은 또한, 제 1 디바이스에서, 패킷에 대응하는 출발 시간 타임스탬프를 제 2 디바이스로부터 수신하는 단계를 포함한다. 출발 시간 타임스탬프는, 패킷이 제 2 디바이스로부터 전송된 시간을 표시한다. 방법은 추가로, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하는 단계를 포함한다.
[0013] 다른 특정 양상에서, 장치는, 검출 회로, 캡쳐 회로, 수신기, 및 프로세서를 포함한다. 검출 회로는, 디바이스로의 패킷의 송신을 검출하도록 구성된다. 캡쳐 회로는, 검출 회로에 응답한다. 캡쳐 회로는, 검출 회로에서 패킷의 송신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 출발 시간 타임스탬프를 캡쳐하도록 구성된다. 수신기는, 디바이스로부터 도달 시간 타임스탬프를 수신하도록 구성된다. 도달 시간 타임스탬프는, 패킷에 대응한다. 도달 시간 타임스탬프는, 패킷이 디바이스에 의해 수신된 시간을 표시한다. 프로세서는, 검출 회로, 수신기, 및 캡쳐 회로에 커플링된다. 프로세서는, 도달 시간 타임스탬프와 출발 시간 타임스탬프를 비교하도록 구성된다.
[0014] 다른 특정 양상에서, 컴퓨터-판독가능 저장 디바이스는 명령들을 저장하며, 명령들은, 프로세서에 의해 실행되는 경우 프로세서로 하여금, 디바이스로부터 패킷을 수신하는 것, 검출 회로에서 패킷의 수신을 검출하는 것을 포함하는 동작들을 수행하게 한다. 동작들은 또한, 패킷의 수신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 도달 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 것을 포함한다. 동작들은 추가로, 패킷에 대응하는 출발 시간 타임스탬프를 디바이스로부터 수신하는 것을 포함한다. 출발 시간 타임스탬프는, 패킷이 디바이스로부터 전송된 시간을 표시한다. 동작은 또한, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하는 것을 포함한다.
[0015] 다른 특정 양상에서, 디바이스는, 수신기, 검출 회로, 캡쳐 회로, 및 프로세서를 포함한다. 수신기는, 제 2 디바이스로부터 패킷을 수신하고 그리고 제 2 디바이스로부터 출발 시간 타임스탬프를 수신하도록 구성된다. 출발 시간 타임스탬프는, 패킷에 대응한다. 출발 시간 타임스탬프는, 패킷이 제 2 디바이스로부터 전송된 시간을 표시한다. 검출 회로는 수신기에 커플링되고, 수신기에 의한 패킷의 수신을 검출하도록 구성된다. 캡쳐 회로는, 검출 회로에 응답한다. 캡쳐 회로는, 검출 회로에서 수신기에 의한 패킷의 수신을 검출하는 것에 대한 응답으로, 도달 시간 타임스탬프를 캡쳐하도록 구성된다. 프로세서는 수신기 및 캡쳐 회로에 커플링된다. 프로세서는, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하도록 구성된다.
[0016] 개시된 양상들 중 적어도 하나에 의해 제공되는 하나의 특정한 이점은, 제 1 디바이스에서의 패킷의 출발 시간(TOD) 및 제 2 디바이스에서의 패킷의 도달 시간(TOA)에 기초한, 별개의 네트워크 디바이스들에서의 클록들의 비교이다. 개시된 기술들은, 비교에 기초하여, 네트워크 디바이스들에 걸친 클록 동기화를 가능하게 할 수 있다. 개시된 기술들은, 더 낮은 레벨의 OSI 계층에서 동작하는 검출 회로를 사용하여 TOA 및 TOD 정보를 캡쳐함으로써, 클록 동기화를 가능하게 할 수 있다. 본 개시내용의 다른 양상들, 이점들, 및 특징들은, 다음의 섹션들, 즉, 도면들의 간단한 설명, 상세한 설명, 및 청구항들을 포함하는 전체 출원을 검토한 이후 명백해질 것이다.
[0017] 도 1은, 네트워크 클록 비교를 수행하도록 동작가능한 시스템의 특정 양상의 도면이다.
[0018] 도 2는, 네트워크 클록 비교를 수행하도록 동작가능한 시스템의 다른 특정 양상의 도면이다.
[0019] 도 3은, 도 1-2의 시스템들 중 적어도 하나에 의해 수행되는 네트워크 클록 비교에 대응하는 타이밍 도면의 특정 양상이다.
[0020] 도 4는, 도 1-2의 시스템들 중 적어도 하나에 의해 수행될 수 있는 네트워크 클록 비교 방법의 특정 양상을 예시하기 위한 흐름도이다.
[0021] 도 5는, 도 1-2의 시스템들 중 적어도 하나에 의해 수행될 수 있는 네트워크 클록 비교 방법의 다른 특정 양상을 예시하기 위한 흐름도이다.
[0022] 도 6은, 도 1-5의 시스템들 및 방법들에 따라 네트워크 클록 비교를 수행하도록 동작가능한 디바이스의 블록도이다.
[0023] 도 1을 참조하면, 시스템의 특정 양상이 도시되며, 일반적으로 (100)으로 지정된다. 시스템(100)은 제 1 디바이스(110) 및 제 2 디바이스(120)를 포함한다. 도 1에서 시스템(100)이 2개의 디바이스들을 포함하는 것으로 예시되지만, 시스템(100)은 2개 초과의 디바이스들을 포함할 수 있다. 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두는, 동기화 모듈(102), 트랜시버(104), 검출 회로(130), 캡쳐 회로(132), 메모리(136), 프로세서(138), 동기화 레지스터들(108), 또는 이들의 결합을 포함할 수 있다. 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두의 트랜시버(104)는, 송신기(194), 수신기(144), 또는 둘 모두를 포함할 수 있다. 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두는, 안테나(142)를 포함할 수 있다. 제 1 디바이스(110)의 검출 회로(130)는, 제 1 디바이스(110)의 트랜시버(104)를 통해 제 1 디바이스(110)의 안테나(142)에 커플링될 수 있고, 제 2 디바이스(120)의 검출 회로(130)는, 제 2 디바이스(120)의 트랜시버(104)를 통해 제 2 디바이스(120)의 안테나(142)에 커플링될 수 있다.
[0024] 제 1 디바이스(110)의 동기화 레지스터들(108)은, 하나 또는 그 초과의 제 1 클록 레지스터들(140), 하나 또는 그 초과의 제 1 섀도우 타임스탬프 레지스터들(118), 또는 이들의 결합을 포함할 수 있다. 예를 들어, 하나 또는 그 초과의 제 1 클록 레지스터들(140)은 제 1 클록 레지스터(112)를 포함할 수 있고, 하나 또는 그 초과의 제 1 섀도우 타임스탬프 레지스터들(118)은 제 1 섀도우 타임스탬프 레지스터(116)를 포함할 수 있다. 제 2 디바이스(120)의 동기화 레지스터들(108)은, 하나 또는 그 초과의 제 2 클록 레지스터들(146), 하나 또는 그 초과의 제 2 섀도우 타임스탬프 레지스터들(128), 또는 이들의 결합을 포함할 수 있다. 예를 들어, 하나 또는 그 초과의 제 2 클록 레지스터들(146)은 제 2 클록 레지스터(122)를 포함할 수 있고, 하나 또는 그 초과의 제 2 섀도우 타임스탬프 레지스터들(128)은 제 2 섀도우 타임스탬프 레지스터(126)를 포함할 수 있다.
[0025] 동작 동안, 동기화 모듈(102)은 패킷(150)을 생성하여 제 2 디바이스(120)에 전송할 수 있다. 패킷(150)은 타임스탬프 동기화 요청일 수 있다. 예를 들어, 패킷(150) 헤더의 특정 필드의 특정 값은, 패킷(150)이 타임스탬프 동기화 요청이라는 것을 표시할 수 있다. 특정 양상에서, 동기화 모듈(102)은, 패킷(150)을 주기적으로 생성할 수 있다. 다른 양상에서, 동기화 모듈(102)은, 프로세서(138)로부터 요청을 수신하는 것에 대한 응답으로 패킷(150)을 생성할 수 있다. 요청은 특정 애플리케이션에 의해 생성될 수 있다. 특정 애플리케이션은, 멀티미디어 스트림 생성기 애플리케이션을 포함할 수 있다. 또 다른 양상에서, 제 1 디바이스(110)의 동기화 모듈(102)은, 제 2 디바이스(120)로부터 다른 타임스탬프 동기화 요청을 수신하는 것에 대한 응답으로 패킷(150)을 생성할 수 있다.
[0026] 특정 양상에서, 동기화 모듈(102)은, 제 1 디바이스(110)의 제 1 OSI 계층에서 동작할 수 있다. 제 1 OSI 계층은, 애플리케이션 계층, 프레젠테이션 계층, 세션 계층, 전송 계층, 및/또는 네트워크 계층을 포함할 수 있다. 예를 들어, 동기화 모듈(102)은, 제 1 디바이스(110)의 애플리케이션으로부터 데이터를 수신하기 위해 애플리케이션 계층에서 동작할 수 있고, 애플리케이션 데이터를 암호화하기 위해 프레젠테이션 계층에서 동작할 수 있고, 암호화된 데이터에 세션 정보를 부가함으로써 세션 데이터를 생성하기 위해 세션 계층에서 동작할 수 있고, 세션 데이터에 기초하여 하나 또는 그 초과의 세그먼트(segment)들을 생성하기 위해 전송 계층에서 동작할 수 있으며, 하나 또는 그 초과의 세그먼트들에 대응하는 하나 또는 그 초과의 패킷들을 생성하기 위해 네트워크 계층에서 동작할 수 있다.
[0027] 검출 회로(130)는, 제 1 디바이스(110)의 제 2 OSI 계층에서 동작할 수 있다. 제 2 OSI 계층은 데이터 링크 계층 및/또는 물리 계층을 포함할 수 있다. 예를 들어, 검출 회로(130)는, 동기화 모듈(102)에 의해 생성된 하나 또는 그 초과의 패킷들 각각에 기초하여 하나 또는 그 초과의 프레임들을 생성하기 위해 데이터 링크 계층에서 동작할 수 있고, 하나 또는 그 초과의 프레임들 각각에 대응하는 하나 또는 그 초과의 비트들을 생성하기 위해 물리 계층에서 동작할 수 있다. 특정 양상에서, 검출 회로(130)는, 동기화 모듈(102)보다 더 낮은 OSI 계층에서 동작할 수 있다. 예를 들어, 검출 회로(130)는 데이터 링크 계층 회로일 수 있고, 동기화 모듈(102)은 애플리케이션 계층 모듈일 수 있다. 데이터 링크 계층 회로는 매체 액세스 제어기를 포함할 수 있고, 애플리케이션 계층 모듈은 중앙 프로세싱 유닛(CPU)을 포함할 수 있다. 동기화 모듈(102)은 패킷(150)을 검출 회로(130)에 제공할 수 있다.
[0028] 더 낮은 OSI 계층에서 동작하는 것은, 송신 매체가 이용가능한 때를 검출 회로(130)가 검출하는 것을 가능하게 할 수 있다. 예를 들어, 검출 회로(130)는, 송신기(194) 및 수신기(144)와 통신함으로써 물리 계층에서 동작하여 송신 매체를 모니터링할 수 있다. 예시하자면, 검출 회로(130)는, 송신 매체가 패킷(150)을 송신하는데 이용가능한지 여부를 결정할 수 있다. 예를 들어, 검출 회로(130)는, 송신 매체가 이용가능한지 여부를 결정하기 위해 캐리어 감지(carrier sensing)를 사용할 수 있다. 검출 회로(130)는 매체 액세스 제어기를 포함할 수 있다. 특정 양상에서, 제 1 디바이스(110)의 검출 회로(130)는, 제 1 디바이스(110)의 수신기(144)를 통해 신호를 수신할 수 있고, 신호가 반송파(carrier wave)를 표시하는지 여부를 결정할 수 있다. 반송파는 네트워크(190)의 다른 노드로부터 비롯될 수 있다. 제 1 디바이스(110)의 검출 회로(130)는, 제 1 디바이스(110)의 수신기(144)로부터 수신되는 신호가 반송파를 표시한다는 것을 결정하는 것에 대한 응답으로, 송신 매체가 이용가능하지 않다는 것을 결정할 수 있다. 대안적으로, 제 1 디바이스(110)의 검출 회로(130)는, 제 1 디바이스(110)의 수신기(144)로부터 수신되는 신호가 반송파를 표시하지 않는다는 것을 결정하는 것에 대한 응답으로, 송신 매체가 이용가능하다는 것을 결정할 수 있다.
[0029] 검출 회로(130)는, 송신 매체가 이용가능하지 않다는 것을 결정하는 것에 대한 응답으로, 특정 지속기간 동안 패킷(150)을 송신하는 것을 억제(refrain)할 수 있다. 특정 지속기간은 디폴트(default) 값에 대응할 수 있다. 검출 회로(130)는, 특정 지속기간 이후에, 송신 매체가 이용가능한지 여부를 결정할 수 있다.
[0030] 검출 회로(130)는, 송신 매체가 이용가능하다는 것을 결정하는 것에 대한 응답으로, 패킷(150)의 적어도 제 1 비트를 송신기(194)에 제공할 수 있다. 검출 회로(130)는, 패킷(150)의 송신에 대한 응답으로 제 1 타임스탬프 캡쳐 신호(114)를 생성할 수 있다. 예를 들어, 검출 회로(130)는, 패킷(150)의 적어도 제 1 비트를 송신기(194)에 제공하는 것에 대한 응답으로, 패킷(150)의 송신을 검출할 수 있다. 예시하자면, 검출 회로(130)는, 패킷(150)의 제 1 비트를 송신기(194)에 제공하는 것에 대한 응답으로, 제 1 타임스탬프 캡쳐 신호(114)를 어써팅할 수 있다. 제 1 디바이스(110)의 송신기(194)는, 제 1 디바이스(110)의 안테나(142)를 통해 패킷(150)의 제 1 비트를 송신할 수 있다.
[0031] 제 1 클록 레지스터(112)의 값은 클록을 표현할 수 있다. 예를 들어, 제 1 클록 레지스터(112)의 값은 주기적으로 업데이트될 수 있다. 특정 양상에서, 프로세서(138)는, 제 1 클록 레지스터(112)를 주기적으로 업데이트할 수 있다. 제 1 디바이스(110)의 캡쳐 회로(132)는, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로 출발 시간 타임스탬프(152)를 캡쳐할 수 있다. 제 1 타임스탬프 캡쳐 신호(114)는 엣지-트리거형(edge-triggered) 신호일 수 있다. 예를 들어, 검출 회로(130)는, 캡쳐 회로(132)의 입력으로 하여금 제 1 상태(예컨대, 로직 0)로부터 제 2 상태(예컨대, 로직 1)로 트랜지션(transition)하게 할 수 있다. 캡쳐 회로(132)는, 트랜지션을 검출하는 것에 대한 응답으로, 제 1 타임스탬프 캡쳐 신호(114)가 어써팅된 것을 검출할 수 있다. 특정 구현에서, 제 1 타임스탬프 캡쳐 신호(114)는, 일 로직 상태와 다른 로직 상태 사이에서 토글링(toggle)될 수 있다. 예를 들어, 캡쳐 회로(132)는, 캡쳐 회로(132)의 입력이 제 2 상태에 대응하는 동안 제 1 타임스탬프 캡쳐 신호(114)가 어써팅된 것을 검출할 수 있다.
[0032] 특정 양상에서, 제 1 타임스탬프 캡쳐 신호(114)는, 하드웨어 신호, 소프트웨어 신호, 또는 둘 모두를 포함할 수 있다. 예를 들어, 검출 회로(130)는, 하드웨어 신호에 대응하는 인터럽트(interrupt) 요청(예컨대, IRQ)을 캡쳐 회로(132)에 전송할 수 있거나, 소프트웨어 인터럽트에 대응하는 예외(exception)를 생성할 수 있거나, 또는 둘 모두를 행할 수 있다. 캡쳐 회로(132)는, 인터럽트 요청을 수신할 수 있거나, 예외를 검출할 수 있거나, 또는 둘 모두를 행할 수 있다. 특정 양상에서, 캡쳐 회로(132)는, 하드웨어 신호, 소프트웨어 신호, 또는 둘 모두에 대한 응답으로 인터럽트 핸들러(handler)를 실행할 수 있다. 인터럽트 핸들러는, 하드웨어 신호, 소프트웨어 신호, 또는 둘 모두에 대한 응답으로, 실행 중인 프로세스를 일시적으로 중단할 수 있다. 예를 들어, 캡쳐 회로(132)는, 스레드 실행을 중단할 수 있고, TOD 타임스탬프(152)를 캡쳐하는 것에 후속하여 스레드 실행을 재개하기 위해 스레드 상태를 저장할 수 있다. 특정 양상에서, 캡쳐 회로(132)는, 하드웨어 신호, 소프트웨어 신호, 또는 둘 모두에 대한 응답으로, 실행 중인 프로세스를 종결시킬 수 있다.
[0033] 캡쳐 회로(132)는, 제 1 디바이스(110)의 하나 또는 그 초과의 OSI 계층들에서 동작할 수 있다. 하나 또는 그 초과의 OSI 계층들은, 애플리케이션 계층, 프레젠테이션 계층, 세션 계층, 전송 계층, 및/또는 네트워크 계층을 포함할 수 있다. 예를 들어, 캡쳐 회로(132)는, 제 1 디바이스(110)의 애플리케이션과 데이터를 교환하기 위해 애플리케이션 계층에서 동작할 수 있고, 검출 회로(130)와 패킷들을 교환하기 위해 네트워크 계층에서 동작할 수 있다. 예시하자면, 캡쳐 회로(132)는, 애플리케이션으로부터 제 1 데이터를 수신할 수 있거나, 제 1 데이터에 기초하여 제 1 패킷을 생성할 수 있거나, 검출 회로(130)에 제 1 패킷을 제공할 수 있거나, 검출 회로(130)로부터 제 2 패킷을 수신할 수 있거나, 제 2 패킷에 기초하여 제 2 데이터를 생성할 수 있거나, 제 2 데이터를 애플리케이션을 제공할 수 있거나, 또는 이들의 결합을 행할 수 있다. 특정 양상에서, 캡쳐 회로(132)는, 애플리케이션 계층 회로일 수 있다. 애플리케이션 계층 회로는, CPU 또는 CPU의 컴포넌트를 포함할 수 있다. 특정 구현에서, 검출 회로(130)는, 제 1 OSI 계층에서 동작하는 제 1 OSI 계층 회로를 포함할 수 있고, 캡쳐 회로(132)는, 제 2 OSI 계층에서 동작하는 제 2 OSI 계층 회로를 포함할 수 있다. 제 1 OSI 계층은, 제 2 OSI 계층보다 더 낮을 수 있다. 제 1 OSI 계층은 데이터 링크 계층을 포함할 수 있고, 제 2 OSI 계층은 애플리케이션 계층을 포함할 수 있다. 특정 양상에서, 캡쳐 회로(132)는, 프로세서(138)에 커플링되거나 또는 프로세서(138)에 포함될 수 있다.
[0034] 제 1 디바이스(110)의 캡쳐 회로(132)는, 제 1 클록 레지스터(112)로부터 제 1 섀도우 타임스탬프 레지스터(116)로 TOD 타임스탬프(152)를 카피함으로써 TOD 타임스탬프(152)를 캡쳐할 수 있다. 예를 들어, 제 1 섀도우 타임스탬프 레지스터(116)에 저장된 TOD 타임스탬프(152)는, 캡쳐 회로(132)가 제 1 클록 레지스터(112)로부터 값을 판독하는 시간에서의 제 1 클록 레지스터(112)의 값의 스냅샷일 수 있다. 제 1 디바이스(110)의 동기화 모듈(102)은, TOD 타임스탬프(152)를 제 2 디바이스(120)에 전송할 수 있다. 예를 들어, 제 1 디바이스(110)의 동기화 모듈(102)은, 제 1 섀도우 타임스탬프 레지스터(116)로부터 TOD 타임스탬프(152)를 판독할 수 있고, 네트워크(190)를 통해 TOD 타임스탬프(152)를 제 2 디바이스(120)에 전송할 수 있다. 제 1 클록 레지스터(112)는 제 1 분해능(resolution)(예컨대, 60 메가헤르츠(megahertz))을 가질 수 있고, 다른 클록 레지스터, 이를테면 제 2 클록 레지스터(122)는 제 2 분해능(예컨대, 100 메가헤르츠)을 가질 수 있다. 특정 구현에서, 동기화 모듈(102)은, 제 1 분해능과 제 2 분해능 간의 차이에 대응하는 클록 도메인 동기화 에러에 기초하여 TOD 타임스탬프(152)를 업데이트할 수 있다. 특정 양상에서, TOD 타임스탬프(152)는, + 또는 - 10 나노초(nanoseconds)와 같은 클록 도메인 동기화 에러를 표시할 수 있다.
[0035] 특정 양상에서, TOD 타임스탬프(152) 그레이-코딩(grey-code)될 수 있다. 그레이 코딩에서, 제 1 값을 표현하는 변수의 단일 비트가 업데이트됨으로써, 변수는, 대신, 다음 값을 표현할 수 있다. 예를 들어, 그레이 코딩에서, 제 1 비트들이 단일 비트 포지션 값만큼 제 2 비트들과 상이하도록, 첫번째 값 "1"은 제 1 비트들 "01"에 의해 표현될 수 있고 다음 값 "2"는 제 2 비트들 "11"에 의해 표현될 수 있다.
[0036] 특정 양상에서, 제 1 디바이스(110)의 캡쳐 회로(132)는, TOD 타임스탬프(152)를 제 1 섀도우 타임스탬프 레지스터(116)에 카피하는 것에 후속하여, 제 1 디바이스(110)의 동기화 모듈(102)에 캡쳐된 스테이터스(status)를 전송할 수 있다. 캡쳐된 스테이터스는, 출발 시간(TOD) 타임스탬프(예컨대, TOD 타임스탬프(152))가 제 1 섀도우 타임스탬프 레지스터(116)에 카피됨을 표시할 수 있다. 캡쳐된 스테이터스는 또한, TOD 타임스탬프(152)가, 패킷(150)이 제 2 디바이스(120)에 전송된 시간에 대응한다는 것을 표시할 수 있다. 이러한 양상에서, 제 1 디바이스(110)의 동기화 모듈(102)은, 캡쳐된 스테이터스를 수신하는 것에 대한 응답으로, TOD 타임스탬프(152)를 제 2 디바이스(120)에 전송할 수 있다.
[0037] 제 2 디바이스(120)는, 네트워크(190)를 통해 제 1 디바이스(110)로부터 패킷(150)을 수신할 수 있다. 예를 들어, 제 2 디바이스(120)의 수신기(144)는, 제 2 디바이스(120)의 안테나(142)를 통해 패킷(150)을 수신할 수 있다. 특정 구현에서, 검출 회로(130)는, 패킷(150)을 디코딩함이 없이 패킷(150)의 수신을 검출한다. 예를 들어, 검출 회로(130)는, 패킷(150)의 제 1 비트가 수신되는 것을 검출하는 것에 대한 응답으로 패킷(150)의 수신을 검출할 수 있으며, 여기서, 제 1 비트는 패킷(150)의 가장 먼저 수신된 비트이다. 특정 구현에서, 제 2 디바이스(120)의 검출 회로(130)는, 패킷(150)의 적어도 제 1 비트가 수신되는 것을 검출하는 것에 대한 응답으로, 제 2 타임스탬프 캡쳐 신호(134)를 어써팅한다. 예를 들어, 제 2 디바이스(120)의 검출 회로(130)는, 제 2 디바이스(120)의 수신기(144)에 의해 제 1 비트가 수신되는 것을 검출하는 것에 대한 응답으로, 제 2 타임스탬프 캡쳐 신호(134)를 어써팅할 수 있다. 예시하자면, 제 2 디바이스(120)의 검출 회로(130)는, 제 1 시간에, 송신 매체가 이용가능하다는 것을 검출할 수 있고, 제 2 시간에, 송신 매체 상의 캐리어 신호를 검출할 수 있다. 캐리어 신호는 네트워크(190)의 다른 노드로부터 비롯될 수 있다. 제 2 디바이스(120)의 검출 회로(130)는, 제 2 시간에, 제 2 타임스탬프 캡쳐 신호(134)를 어써팅할 수 있다.
[0038] 특정 구현에서, 제 2 디바이스(120)의 캡쳐 회로(132)는, 제 2 타임스탬프 캡쳐 신호(134)에 대한 응답으로 도달 시간(TOA) 타임스탬프(124)를 캡쳐한다. 예를 들어, 제 2 디바이스(120)의 캡쳐 회로(132)는, 제 2 클록 레지스터(122)로부터 제 2 섀도우 타임스탬프 레지스터(126)로 TOA 타임스탬프(124)를 카피할 수 있다. 제 2 섀도우 타임스탬프 레지스터(126)에 저장된 TOA 타임스탬프(124)는, 캡쳐 회로(132)가 제 2 클록 레지스터(122)로부터 TOA 타임스탬프(124)를 판독하는 시간에서의 제 2 클록 레지스터(122)의 값의 스냅샷일 수 있다. 제 2 디바이스(120)의 동기화 모듈(102)은, 제 2 섀도우 타임스탬프 레지스터(126)로부터 TOA 타임스탬프(124)를 판독할 수 있고, 네트워크(190)를 통해 TOA 타임스탬프(124)를 제 1 디바이스(110)에 전송할 수 있다.
[0039] 클록 레지스터들(112, 122)은 상이한 분해능들을 가질 수 있다. 예를 들어, 제 1 클록 레지스터(112)는 60 메가헤르츠의 분해능을 가질 수 있고, 제 2 클록 레지스터(122)는 100 메가헤르츠의 분해능을 가질 수 있다. 특정 구현에서, 제 2 디바이스(120)의 동기화 모듈(102)은, 클록 도메인 동기화 에러에 기초하여 TOA 타임스탬프(124)를 업데이트할 수 있다. 클록 도메인 동기화 에러는, 클록 레지스터들(112, 122)의 분해능들 간의 차이에 대응할 수 있다. 특정 양상에서, TOA 타임스탬프(124)는 클록 도메인 동기화 에러(예컨대, + 또는 - 10 나노초)를 표시할 수 있다. 특정 양상에서, TOA 타임스탬프(154) 그레이-코딩될 수 있다.
[0040] 특정 양상에서, 제 2 디바이스(120)의 캡쳐 회로(132)는, TOA 타임스탬프(124)를 제 2 섀도우 타임스탬프 레지스터(126)에 카피하는 것에 후속하여, 제 2 디바이스(120)의 동기화 모듈(102)에 캡쳐된 스테이터스를 전송할 수 있다. 캡쳐된 스테이터스는, 도달 시간(TOA) 타임스탬프(예컨대, TOA 타임스탬프(124))가 제 2 섀도우 타임스탬프 레지스터(126)에 카피됨을 표시할 수 있다. 캡쳐된 스테이터스는 또한, TOA 타임스탬프(124)가, 패킷(150)이 제 1 디바이스(110)에 의해 수신된 시간에 대응한다는 것을 표시할 수 있다. 이러한 양상에서, 제 2 디바이스(120)의 동기화 모듈(102)은, 캡쳐된 스테이터스를 수신하는 것에 대한 응답으로, TOA 타임스탬프(124)를 제 1 디바이스(110)에 전송할 수 있다.
[0041] 특정 양상에서, TOA 타임스탬프(124)를 제 1 디바이스(110)에 전송하기에 앞서, 제 2 디바이스(120)의 동기화 모듈(102)은, 패킷(150) 헤더의 특정 필드의 특정 값에 기초하여, 제 2 섀도우 타임스탬프 레지스터(126) 내의 TOA 타임스탬프(124)를 유지할지 또는 폐기할지 여부를 결정할 수 있다. 예를 들어, 제 2 디바이스(120)의 동기화 모듈(102)은, 패킷(150)이 타임스탬프 동기화 요청이라는 것을 특정 값이 표시한다고 결정하는 것에 대한 응답으로, TOA 타임스탬프(124)를 유지할 수 있다. 다른 예로서, 제 2 디바이스(120)의 동기화 모듈(102)은, 패킷(150)이 부정확하게 수신됨을 결정하는 것에 대한 응답으로, 제 1 디바이스(110)가 패킷(150)의 수신자(recipient)로서 표시되지 않는다고 결정하는 것에 대한 응답으로, 패킷(150)이 타임스탬프 동기화 요청이 아니라는 것을 특정 값이 표시한다고 결정하는 것에 대한 응답으로, 또는 이들의 결합에 대한 응답으로, TOA 타임스탬프(124)를 폐기할 수 있다. 특정 양상에서, 제 2 디바이스(120)의 동기화 모듈(102)은, 제 2 섀도우 타임스탬프 레지스터(126)를 이용가능한 것으로 마킹(mark)함으로써 TOA 타임스탬프(124)를 폐기할 수 있다. 특정 양상에서, 제 2 디바이스(120)의 동기화 모듈(102)은, 패킷(150)이 무효의(invalid) 에러 정정 코드를 포함한다고 결정하는 것에 대한 응답으로, 패킷(150)이 부정확하게 수신됨을 결정할 수 있다.
[0042] 제 1 디바이스(110)의 동기화 모듈(102)은, 제 2 디바이스(120)로부터 TOA 타임스탬프(124)를 수신할 수 있다. 예를 들어, 제 1 디바이스(110)의 수신기(144)는, 제 1 디바이스(110)의 안테나(142)를 통해 TOA 타임스탬프(124)를 수신할 수 있다. 제 1 디바이스(110)의 수신기(144)는, 제 1 디바이스(110)의 메모리(136)에 TOA 타임스탬프(124)를 저장할 수 있다.
[0043] 제 2 디바이스(120)의 동기화 모듈(102)은, 제 1 디바이스(110)로부터 TOD 타임스탬프(152)를 수신할 수 있다. 예를 들어, 제 2 디바이스(120)의 수신기(144)는, 제 2 디바이스(120)의 안테나(142)를 통해 TOD 타임스탬프(152)를 수신할 수 있다. 제 2 디바이스(120)의 수신기(144)는, 제 2 디바이스(120)의 메모리(136)에 TOD 타임스탬프(152)를 저장할 수 있다.
[0044] 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두의 동기화 모듈(102)은, TOA 타임스탬프(124)와 TOD 타임스탬프(152)를 비교할 수 있다. 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두의 동기화 모듈(102)은, 비교에 기초하여 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화할 수 있다. 특정 양상에서, 동기화 모듈(102)은, TOA 타임스탬프(124)와 TOD 타임스탬프(152) 간의 차이에 기초하여 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122) 간의 오프셋을 결정함으로써, 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화할 수 있다. 동기화 모듈(102)은, 메모리(136)에 오프셋을 저장할 수 있다. 예를 들어, 제 1 디바이스(110)의 동기화 모듈(102)은, 제 1 디바이스(110)의 메모리(136)에 오프셋을 저장할 수 있다. 다른 예로서, 제 2 디바이스(120)의 동기화 모듈(102)은, 제 2 디바이스(120)의 메모리(136)에 오프셋을 저장할 수 있다.
[0045] 제 1 디바이스(110)의 동기화 모듈(102)은, 제 1 디바이스(110)에서 생성되는 제 1 데이터를 제 2 디바이스(120)로부터 수신되는 제 2 데이터와 동기화하기 위해 오프셋을 사용할 수 있으며, 여기서, 제 1 디바이스(110)는 제 1 클록 레지스터(112)에 기초하여 제 1 데이터를 타임스탬핑하고, 제 2 디바이스(120)는 제 2 클록 레지스터(122)에 기초하여 제 2 데이터를 타임스탬핑한다. 예를 들어, 제 1 디바이스(110)는, 제 1 데이터를 제 2 데이터와 동기화하기 위해, 제 1 데이터의 타임스탬프들에 오프셋을 부가할 수 있다. 유사하게, 제 2 디바이스(120)의 동기화 모듈(102)은, 제 1 디바이스(110)로부터 수신되는 제 1 데이터를 제 2 디바이스(120)에서 생성되는 제 2 데이터와 동기화하기 위해 오프셋을 사용할 수 있으며, 여기서, 제 1 디바이스(110)는 제 1 클록 레지스터(112)에 기초하여 제 1 데이터를 타임스탬핑하고, 제 2 디바이스(120)는 제 2 클록 레지스터(122)에 기초하여 제 2 데이터를 타임스탬핑한다. 예를 들어, 제 2 디바이스(120)는, 제 1 데이터를 제 2 데이터와 동기화하기 위해, 제 1 데이터의 타임스탬프들에 오프셋을 부가할 수 있다.
[0046] 대안적인 양상에서, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, TOA 타임스탬프(124) 및 TOD 타임스탬프(152)에 기초하여 제 1 클록 레지스터(112)(또는 제 2 클록 레지스터(122))의 값을 업데이트함으로써, 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화할 수 있다. 예를 들어, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, TOA 타임스탬프(124)와 TOD 타임스탬프(152) 간의 차이에 기초하여 오프셋을 결정할 수 있고, 제 1 클록 레지스터(112)(또는 제 2 클록 레지스터(122))의 값에 오프셋을 부가할 수 있다. 이러한 양상에서, 제 1 디바이스(110) 및 제 2 디바이스(120) 중 하나는 슬레이브(slave) 디바이스일 수 있고, 제 1 디바이스(110) 및 제 2 디바이스(120) 중 다른 하나는 마스터(master) 디바이스일 수 있다. 예를 들어, 제 1 디바이스(110)는, 제 2 디바이스(120)의 제 2 클록 레지스터(122)와 동기화하기 위해 제 1 클록 레지스터(112)의 값을 업데이트하는 슬레이브 디바이스일 수 있다. 다른 예로서, 제 1 디바이스(110)는 마스터 디바이스일 수 있고, 제 2 디바이스(120)는, 제 1 디바이스(110)의 제 1 클록 레지스터(112)와 동기화하기 위해 제 2 클록 레지스터(122)의 값을 업데이트할 수 있다.
[0047] 특정 양상에서, TOA 타임스탬프(124) 및 TOD 타임스탬프(152)에 기초한 클록 레지스터들(112 및 122)의 동기화는, 제 1 디바이스(110)로부터 제 2 디바이스(120)로 패킷(150)을 송신하는 것에 관련된 송신 레이턴시(latency)를 처리할 수 있다. 예를 들어, 제 1 클록 레지스터(112)는, 패킷(150)의 제 1 비트가 송신되는 때의 제 1 전송기(sender) 클록 값(예컨대, 200 시간 유닛(time unit)들)을 표시할 수 있고, TOD 타임스탬프(152)는 제 1 전송기 클록 값(예컨대, 200 시간 유닛들)을 표시할 수 있다. 제 1 클록 레지스터(112)는, 제 1 디바이스(110)로부터 제 2 디바이스(120)로의 패킷(150)의 송신에 관련된 송신 레이턴시에 대응하는, 패킷(150)의 제 1 비트가 제 2 디바이스(120)에 의해 수신되는 때의 제 2 전송기 클록 값(예컨대, 300 시간 유닛들)을 표시할 수 있다.
[0048] 제 2 클록 레지스터(122)는, 패킷(150)의 제 1 비트가 제 1 디바이스(110)에 의해 송신되는 때의 제 1 수신기 클록 값(예컨대, 500 시간 유닛들)을 표시할 수 있고, 패킷(150)의 제 1 비트가 제 2 디바이스(120)에 의해 수신되는 때의 제 2 수신기 클록 값(예컨대, 600 시간 유닛들)을 표시할 수 있다. TOA 타임스탬프(124)는 제 2 수신기 값(예컨대, 600 시간 유닛들)을 표시할 수 있다.
[0049] 제 2 클록 레지스터(122)가 제 1 수신기 클록 값을 표시했을 때 제 1 전송기 클록 값을 제 1 클록 레지스터(112)가 표시했고, 그리고 제 2 클록 레지스터(122)가 제 2 수신기 클록 값을 표시했을 때 제 2 전송기 클록 값을 제 1 클록 레지스터(112)가 표시했다 하더라도, 동기화 모듈(102)은, 각각 TOD 타임스탬프(152) 및 TOA 타임스탬프(124)에 표시되는 제 1 전송기 클록 값(예컨대, 200 시간 유닛들) 및 제 2 수신기 클록 값(예컨대, 600 시간 유닛들)에 기초하여 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화할 수 있다.
[0050] 제 1 전송기 클록 값 및 제 2 수신기 클록 값에 기초하여 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화시키는 것은, 송신 레이턴시를 처리할 수 있다. 예를 들어, 제 2 디바이스(120)의 동기화 모듈(102)은, 제 1 전송기 클록 값 및 제 2 수신기 클록 값에 기초하여 오프셋(예컨대, 600-200 = 400 시간 유닛들)을 결정할 수 있다. 제 1 클록 레지스터(112)의 특정 전송기 시간(예컨대, 1000 시간 유닛들)에 제 1 디바이스(110)가 메시지를 전송할 것이라는 것을 표시하는 통지를 제 1 디바이스(110)가 제 2 디바이스(120)에 전송하면, 제 2 디바이스(120)는, 오프셋에 기초하여, 제 2 클록 레지스터(122)의 특정 수신기 시간(예컨대, 1400 시간 유닛들)에서의 메시지를 예상할 수 있다. 오프셋이 송신 레이턴시를 고려하므로, 특정 수신기 시간은 메시지가 제 2 디바이스(120)에 의해 수신되는 때의 제 2 클록 레지스터(122)의 값에 대응할 수 있는데, 이는, 메시지가 제 1 디바이스(110)에 의해 송신되는 때의 제 2 클록 레지스터(122)의 값(예컨대, 1300 시간 유닛들)보다 더 클 수 있다.
[0051] 특정 양상에서, 제 1 디바이스(110) 및 제 2 디바이스(120)에 의해 수행되는 동작들은 단일 디바이스에 의해 수행될 수 있다. 예를 들어, 제 1 디바이스(110)는, 본원에 설명된 바와 같이, 패킷(150)에 대응하는 TOD 타임스탬프(152)를 생성할 수 있고, 다른 디바이스(예컨대, 제 2 디바이스(120) 또는 제 3 디바이스)로부터 수신되는 다른 패킷에 대응하는 TOA 타임스탬프를 생성할 수 있다. 예시하자면, 제 1 디바이스(110)의 검출 회로(130)는, 다른 패킷을 수신하는 것에 대한 응답으로 다른 타임스탬프 캡쳐 신호를 어써팅할 수 있다.
[0052] 제 1 타임스탬프 캡쳐 신호(114) 및 다른 타임스탬프 캡쳐 신호는 독립적인 측대역 프로브 신호(sideband probe signal)들일 수 있다. 예를 들어, 검출 회로(130)는, 패킷의 송신에 대한 응답으로 제 1 측대역 프로브 신호를 어써팅할 수 있고, 패킷을 수신하는 것에 대한 응답으로 제 2 측대역 프로브 신호를 어써팅할 수 있다. 예시하자면, 검출 회로(130)는, 패킷(150)의 송신에 대한 응답으로 제 1 타임스탬프 캡쳐 신호(114)를 어써팅할 수 있고, 다른 패킷을 수신하는 것에 대한 응답으로 다른 타임스탬프 캡쳐 신호를 어써팅할 수 있다. 캡쳐 회로(132)는, 어느 측대역 프로브 신호가 어써팅되는지에 기초하여, 도달 시간 타임스탬프가 캡쳐되어야 하는지 또는 출발 시간 타임스탬프가 캡쳐되어야 하는지 여부를 결정할 수 있다. 예를 들어, 제 1 측대역 프로브 신호는, 출발 시간 타임스탬프가 캡쳐되어야 한다는 것을 캡쳐 회로(132)에 표시할 수 있다. 다른 예로서, 제 2 측대역 프로브 신호는, 도달 시간 타임스탬프가 캡쳐되어야 한다는 것을 캡쳐 회로(132)에 표시할 수 있다.
[0053] 제 1 디바이스(110)의 캡쳐 회로(132)는, 다른 타임스탬프 캡쳐 신호에 대한 응답으로, 다른 TOA 타임스탬프를 캡쳐할 수 있다. 예를 들어, 제 1 디바이스(110)의 캡쳐 회로(132)는, 하나 또는 그 초과의 제 1 클록 레지스터들(140) 중의 클록 레지스터(예컨대, 제 1 클록 레지스터(112))로부터 하나 또는 그 초과의 제 1 섀도우 타임스탬프 레지스터들(118) 중의 다른 섀도우 타임스탬프 레지스터로 다른 TOA 타임스탬프를 카피할 수 있다.
[0054] 제 1 디바이스(110)의 수신기(144)는, 다른 디바이스로부터 다른 TOD 타임스탬프를 수신할 수 있고, 다른 TOD 타임스탬프를 메모리(136)에 저장할 수 있다. 동기화 모듈(102)은, 메모리(136)로부터 다른 TOD 타임스탬프를 판독할 수 있고, 다른 섀도우 타임스탬프 레지스터로부터 다른 TOA 타임스탬프를 판독할 수 있으며, 다른 TOA 타임스탬프 및 TOD 타임스탬프를 비교할 수 있다. 동기화 모듈(102)은, 비교에 기초하여, 다른 디바이스에서의 다른 클록 레지스터와 제 1 클록 레지스터(112)를 동기화할 수 있다. 동기화 모듈(102)은, TOA 타임스탬프를 다른 디바이스에 전송할 수 있다. 유사하게, 제 2 디바이스(120)는, 본원에 설명된 바와 같이, 패킷(150)에 대응하는 TOA 타임스탬프(124)를 생성할 수 있고, 다른 디바이스(예컨대, 제 1 디바이스(110) 또는 제 3 디바이스)에 전송되는 다른 패킷에 대응하는 TOD 타임스탬프를 생성할 수 있다.
[0055] 특정 양상에서, 제 1 클록 레지스터(112) 및 제 2 클록 레지스터(122)는 제 1 애플리케이션에 대응할 수 있다. 제 1 애플리케이션은, 멀티미디어 스트림 생성 애플리케이션을 포함할 수 있다. 예를 들어, 제 2 디바이스(120)에서의 멀티미디어 스트림 생성 애플리케이션은, 오디오 데이터를 생성할 수 있고, 제 2 클록 레지스터(122)에 기초하여 오디오 데이터를 타임스탬핑할 수 있다. 제 1 디바이스(110)에서의 멀티미디어 스트림 생성 애플리케이션은, 비디오 데이터를 생성할 수 있고, 제 1 클록 레지스터(112)에 기초하여 비디오 데이터를 타임스탬핑할 수 있다. 제 1 디바이스(110)는, 제 2 디바이스(120)로부터 수신되는 오디오 데이터를 제 1 디바이스(110)에서 생성되는 비디오 데이터와 동기화하기 위해, 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122)를 동기화할 수 있다.
[0056] 특정 양상에서, 하나 또는 그 초과의 제 1 클록 레지스터들(140) 중 다른 제 1 클록 레지스터 및 하나 또는 그 초과의 제 2 클록 레지스터들(146) 중 다른 제 2 클록 레지스터는 제 2 애플리케이션에 대응할 수 있다. 제 2 애플리케이션은, 비디오 게이밍 애플리케이션을 포함할 수 있다. 예를 들어, 제 1 디바이스에서의 비디오 게이밍 애플리케이션은, 제 1 사용자에 대응하는 제 1 사용자 데이터를 생성할 수 있고, 다른 제 1 클록 레지스터에 기초하여 제 1 사용자 데이터를 타임스탬핑할 수 있다. 제 2 디바이스에서의 비디오 게이밍 애플리케이션은, 제 2 사용자에 대응하는 제 2 사용자 데이터를 생성할 수 있고, 다른 제 2 클록 레지스터에 기초하여 제 2 사용자 데이터를 타임스탬핑할 수 있다. 제 1 디바이스(110)는, 제 1 디바이스(110)에서 생성되는 제 1 사용자 데이터를 제 2 디바이스로부터 수신되는 제 2 사용자 데이터와 동기화하기 위해, 다른 제 1 클록 레지스터와 다른 제 2 클록 레지스터를 동기화할 수 있다.
[0057] 특정 양상에서, 제 1 디바이스(110)는, 패킷(150)에 기초하여, 제 1 디바이스에서의 다수의 클록 레지스터들(예컨대, 제 1 클록 레지스터(112) 및 다른 제 1 클록 레지스터)을 제 2 디바이스에서의 다수의 클록 레지스터들(예컨대, 제 2 클록 레지스터(122) 및 다른 제 2 클록 레지스터)과 동기화할 수 있다. 특정 양상에서, 제 1 디바이스에서의 다수의 클록 레지스터들의 각각의 클록 레지스터, 및 제 2 디바이스에서의 다수의 클록 레지스터들 중 대응하는 클록 레지스터는, 특정 애플리케이션에 대응할 수 있다. 예를 들어, 제 1 클록 레지스터(112) 및 제 2 클록 레지스터(122)는 제 1 애플리케이션에 대응할 수 있고, 제 1 클록 레지스터들(140) 중 다른 제 1 클록 레지스터 및 제 2 클록 레지스터들(146) 중 다른 제 2 클록 레지스터는 제 2 애플리케이션에 대응할 수 있다. 특정 양상에서, 제 1 애플리케이션은 멀티미디어 애플리케이션을 포함할 수 있고, 제 2 애플리케이션은 게이밍 애플리케이션을 포함할 수 있다. 특정 양상에서, 제 1 디바이스(110)에서의 다수의 클록 레지스터들 중 하나 또는 그 초과는, 별개의 값들을 가질 수 있거나, 하나 또는 그 초과의 클록 레지스터들의 값이 변하게 하는 별개의 레이트들을 가질 수 있거나, 또는 둘 모두일 수 있다. 특정 양상에서, 제 2 디바이스(120)에서의 다수의 클록 레지스터들 중 하나 또는 그 초과는, 별개의 값들을 가질 수 있거나, 하나 또는 그 초과의 클록 레지스터들의 값이 변하게 하는 별개의 레이트들을 가질 수 있거나, 또는 둘 모두일 수 있다.
[0058] 제 1 디바이스(110)는 제 1 디바이스(110)에서의 다수의 클록 레지스터들 각각의 TOA 타임스탬프를 제 2 디바이스(120)에서의 다수의 클록 레지스터들 중 대응하는 클록 레지스터의 TOD 타임스탬프와 비교할 수 있다. 제 1 디바이스(110)에서의 다수의 클록 레지스터들 각각의 TOA 타임스탬프는, 패킷(150)이 제 1 디바이스(110)에 의해 수신된 시간에 대응할 수 있다. 제 2 디바이스(120)에서의 다수의 클록 레지스터들 각각의 TOD 타임스탬프는, 패킷(150)이 제 2 디바이스(120)에 의해 전송된 시간에 대응할 수 있다. 예를 들어, 제 1 디바이스(110)의 캡쳐 회로(132)는, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로 복수의 TOA 타임스탬프들을 캡쳐할 수 있다. 예를 들어, 제 1 디바이스(110)의 캡쳐 회로(132)는, 하나 또는 그 초과의 제 1 클록 레지스터들(140) 중의 복수의 제 1 클록 레지스터들로부터 하나 또는 그 초과의 제 1 섀도우 타임스탬프 레지스터들(118) 중의 복수의 제 1 섀도우 타임스탬프 레지스터들로 복수의 TOA 타임스탬프들을 카피할 수 있다. 복수의 TOA 타임스탬프들은 TOA 타임스탬프(124)를 포함할 수 있고, 복수의 제 1 클록 레지스터들은 제 1 클록 레지스터(112)를 포함할 수 있으며, 복수의 제 1 섀도우 타임스탬프 레지스터들은 제 1 섀도우 타임스탬프 레지스터(116)를 포함할 수 있다.
[0059] 특정 양상에서, 제 2 디바이스(120)의 캡쳐 회로(132)는, 제 2 타임스탬프 캡쳐 신호(134)에 대한 응답으로 복수의 TOD 타임스탬프들을 캡쳐할 수 있다. 예를 들어, 제 2 디바이스(120)의 캡쳐 회로(132)는, 하나 또는 그 초과의 제 2 클록 레지스터들(146) 중의 복수의 제 2 클록 레지스터들로부터 하나 또는 그 초과의 제 2 섀도우 타임스탬프 레지스터들(128) 중의 복수의 제 2 섀도우 타임스탬프 레지스터들로 복수의 TOD 타임스탬프들을 카피할 수 있다. 복수의 TOD 타임스탬프들은 TOD 타임스탬프(152)를 포함할 수 있고, 복수의 제 2 클록 레지스터들은 제 2 클록 레지스터(122)를 포함할 수 있으며, 복수의 제 2 섀도우 타임스탬프 레지스터들은 제 2 섀도우 타임스탬프 레지스터(126)를 포함할 수 있다.
[0060] 제 1 디바이스(110)의 수신기(144)는, 제 2 디바이스(120)로부터 복수의 TOD 타임스탬프들을 수신할 수 있고, 제 1 디바이스(110)의 메모리(136)에 복수의 TOD 타임스탬프들을 저장할 수 있다. 제 2 디바이스(120)의 수신기(144)는, 제 1 디바이스(110)로부터 복수의 TOA 타임스탬프들을 수신할 수 있고, 제 2 디바이스(120)의 메모리(136)에 복수의 TOA 타임스탬프들을 저장할 수 있다.
[0061] 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 복수의 TOA 타임스탬프들 및 복수의 TOD 타임스탬프들에 기초하여 복수의 제 1 클록 레지스터들을 복수의 제 2 클록 레지스터들과 동기화할 수 있다. 예를 들어, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 복수의 TOA 타임스탬프들과 복수의 TOD 타임스탬프들 간의 차이에 대응하는 복수의 오프셋들을 결정할 수 있고, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 메모리(136)에 복수의 오프셋들을 저장할 수 있다. 다른 예로서, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 복수의 TOA 타임스탬프들과 복수의 TOD 타임스탬프들 간의 차이에 기초하여 복수의 제 1 클록 레지스터들(또는 복수의 제 2 클록 레지스터들)의 값들을 업데이트할 수 있다.
[0062] 시스템(100)은, 패킷(150)이 제 1 디바이스(110)에 의해 송신된 시간에 대응하는 TOD 타임스탬프(152)와 패킷(150)이 제 2 디바이스(120)에 의해 수신된 시간에 대응하는 TOA 타임스탬프(124)의 비교를 가능하게 할 수 있다. 제 1 디바이스(110)의 검출 회로(130)에 의해 캡쳐되는 TOD 타임스탬프(152)는, 패킷(150)의 제 1 비트가 제 1 디바이스(110)의 트랜시버(104)에 의해 송신된 시간에 TOD 타임스탬프(152)가 대응할 수 있기 때문에, 정확할 수 있다. 제 2 디바이스(120)의 검출 회로(130)에 의해 캡쳐되는 TOA 타임스탬프(124)는, 패킷(150)의 제 1 비트가 제 2 디바이스(120)의 트랜시버(104)에 의해 수신된 시간에 TOA 타임스탬프(124)가 대응할 수 있기 때문에, 정확할 수 있다. 시스템(100)은, 비교에 기초하여, 제 1 디바이스(110)의 제 1 클록 레지스터(112)와 제 2 디바이스(120)의 제 2 클록 레지스터(122)의 동기화를 가능하게 할 수 있다.
[0063] 도 2를 참조하면, 시스템의 특정 양상의 도면이 도시되며, 일반적으로 (200)으로 지정된다. 특정 양상에서, 시스템(200)은 도 1의 시스템(100)에 대응할 수 있다. 시스템(200)은 제 1 디바이스(110) 및 제 2 디바이스(120)를 포함한다.
[0064] 동작 동안, 제 1 디바이스(110)의 도 1의 동기화 모듈(102)은, 타임스탬프 동기화 요청을 수신할 수 있다. 타임스탬프 동기화 요청은 관리 프레임에 대응할 수 있다. 타임스탬프 동기화 요청은, 제 1 디바이스(110)에서의 소프트웨어 또는 하드웨어에 의해 생성될 수 있다. 타임스탬프 동기화 요청에 대한 응답으로, 제 1 디바이스(110)의 동기화 모듈(102)은, 이벤트 메시지(230)(예컨대, 도 1의 패킷(150))를 생성할 수 있고, 이벤트 메시지(230)(예컨대, 패킷(150))를 제 2 디바이스(120)에 전송할 수 잇다. 제 1 디바이스(110)의 도 1의 검출 회로(130)는, 도 1을 참조하여 설명된 바와 같이, 이벤트 메시지(230)(예컨대, 패킷(150))의 제 1 비트의 송신에 대한 응답으로, 제 1 타임스탬프 캡쳐 신호(114)를 어써팅할 수 있다.
[0065] 제 1 디바이스(110)의 도 1의 캡쳐 회로(132)는, 도 1을 참조하여 설명된 바와 같이, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로 출발 시간(TOD) 타임스탬프(152)를 캡쳐할 수 있다. 예를 들어, 제 1 디바이스(110)의 캡쳐 회로(132)는, 제 1 클록 레지스터(112)로부터 제 1 섀도우 타임스탬프 레지스터(116)로 TOD 타임스탬프(152)를 카피할 수 있다. 제 1 디바이스(110)의 캡쳐 회로(132)는 또한, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로, 다른 TOD 타임스탬프를 캡쳐할 수 있다. 예를 들어, 캡쳐 회로(132)는, 제 3 클록 레지스터(204)로부터 제 3 섀도우 타임스탬프 레지스터(224)로 다른 TOD 타임스탬프를 카피할 수 있다. 하나 또는 그 초과의 제 1 클록 레지스터들(140)은 제 3 클록 레지스터(204)를 포함할 수 있고, 하나 또는 그 초과의 제 1 섀도우 타임스탬프 레지스터들(118)은 제 3 섀도우 타임스탬프 레지스터(224)를 포함할 수 있다.
[0066] 제 2 디바이스(120)는 이벤트 메시지(230)(예컨대, 패킷(150))를 수신할 수 있다. 제 2 디바이스(120)의 검출 회로(130)는, 도 1을 참조하여 설명된 바와 같이, 이벤트 메시지(230)의 제 1 비트가 제 2 디바이스(120)에 의해 수신되는 것에 대한 응답으로, 제 2 타임스탬프 캡쳐 신호(134)를 생성할 수 있다. 제 2 디바이스(120)의 캡쳐 회로(132)는, 제 2 타임스탬프 캡쳐 신호(134)에 대한 응답으로 TOA 타임스탬프(124)를 캡쳐할 수 있다. 예를 들어, 제 2 디바이스(120)의 캡쳐 회로(132)는, 제 2 클록 레지스터(122)로부터 제 2 섀도우 타임스탬프 레지스터(126)로 TOA 타임스탬프(124)를 카피할 수 있다. 제 1 디바이스(110)의 동기화 모듈(102)은, 제 1 섀도우 타임스탬프 레지스터(116)로부터 TOD 타임스탬프(152)를 판독할 수 있고, 제 3 섀도우 타임스탬프 레지스터(224)로부터 다른 TOD 타임스탬프를 판독할 수 있으며, TOD 타임스탬프(152), 다른 TOD 타임스탬프, 또는 둘 모두를 제 2 디바이스(120)에 전송할 수 있다. 제 2 디바이스(120)는, 제 2 섀도우 타임스탬프 레지스터(126)로부터 TOA 타임스탬프(124)를 판독할 수 있고, TOA 타임스탬프(124)를 제 1 디바이스(110)에 전송할 수 있다.
[0067] 도 2에 예시된 양상에서, 제 1 디바이스(110) 및 제 2 디바이스(120)는, 제 1 디바이스(110)에서의 다수의 제 1 클록 레지스터들(예컨대, 제 1 클록 레지스터(112) 및 제 3 클록 레지스터(204))을 제 2 디바이스(120)의 제 2 클록 레지스터(122)와 동기화할 수 있다. 예를 들어, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, TOD 타임스탬프(152) 및 TOA 타임스탬프(124)에 기초하여 제 1 클록 레지스터(112)와 제 2 클록 레지스터(122) 간의 제 1 오프셋을 결정할 수 있고, 다른 TOD 타임스탬프 및 TOA 타임스탬프(124)에 기초하여 제 3 클록 레지스터(204)와 제 2 클록 레지스터(122) 간의 제 2 오프셋을 결정할 수 있다. 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 제 1 디바이스(110)(또는 제 2 디바이스(120))에서 생성되는 제 1 데이터의 제 1 타임스탬프들을 제 2 디바이스(120)(또는 제 1 디바이스(110))로부터 수신되는 제 2 데이터의 제 2 타임스탬프들과 동기화할 수 있다. 예를 들어, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 제 1 타임스탬프들 또는 제 2 타임스탬프들에 오프셋을 부가할 수 있다. 다른 예로서, 제 1 디바이스(110)의 동기화 모듈(102)은, TOD 타임스탬프(152)와 TOA 타임스탬프(124) 간의 차이에 기초하여 제 1 클록 레지스터(112)의 값을 업데이트할 수 있고, 다른 TOD 타임스탬프와 TOA 타임스탬프(124) 간의 차이에 기초하여 제 3 클록 레지스터(204)의 값을 업데이트할 수 있다.
[0068] 따라서, 시스템(200)은, 이벤트 메시지(230)가 제 1 디바이스(110)로부터 송신된 시간에 대응하는 제 1 디바이스(110)에서의 다수의 TOD 타임스탬프들과 이벤트 메시지(230)가 제 2 디바이스(120)에 의해 수신된 시간에 대응하는 제 2 디바이스(120)에서의 TOA 타임스탬프의 비교를 가능하게 할 수 있다. 다수의 TOD 타임스탬프들은 이벤트 메시지(230)의 제 1 비트가 송신되는 때에 대응할 수 있고, TOA 타임스탬프는 이벤트 메시지(230)의 제 1 비트가 수신되는 때에 대응할 수 있어서, 정확한 비교가 초래된다. 시스템(200)은, 정확한 비교에 기초하여 클록 동기화를 가능하게 할 수 있다.
[0069] 도 3을 참조하면, 타이밍 도면의 특정 양상이 도시되며, 일반적으로 (300)으로 지정된다. 타이밍 도면(300)은, 도 1-2의 시스템들(100-200) 중 적어도 하나에 의해 수행되는 네트워크 클록 비교에 대응할 수 있다.
[0070] 타이밍 도면(300)에 예시된 바와 같이, 제 1 클록 레지스터(112), 제 2 클록 레지스터(122), 및 제 3 클록 레지스터(204)는 별개의 값들을 가질 수 있고, 별개의 레이트들로 동작할 수 있다. 예를 들어, 제 1 클록 레지스터(112)의 값은 제 1 주기적 간격으로 업데이트될 수 있고, 제 2 클록 레지스터(122)의 값은 제 2 주기적 간격으로 업데이트될 수 있으며, 제 3 클록 레지스터의 값은 제 3 주기적 간격으로 업데이트될 수 있다.
[0071] 동작 동안, 도 1의 제 1 디바이스(110)의 검출 회로(130)는, 도 1-2를 참조하여 설명된 바와 같이, 이벤트 메시지(230)(예컨대, 패킷(150))의 송신에 대한 응답으로, 제 1 타임스탬프 캡쳐 신호(114)를 어써팅할 수 있다. 제 1 타임스탬프 캡쳐 신호(114)는, 도 1을 참조하여 설명된 바와 같이, 엣지-트리거형 신호일 수 있다. 예를 들어, 타이밍 도면(300)의 트랜지션(302)은, 제 1 타임스탬프 캡쳐 신호(114)에 대응할 수 있다. 제 1 디바이스(110)의 캡쳐 회로(132)는, 도 1-2를 참조하여 설명된 바와 같이, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로, 제 1 클록 레지스터(112)로부터 제 1 섀도우 타임스탬프 레지스터(116)로 TOD 타임스탬프(152)(예컨대, 4)를 카피할 수 있다. 제 1 디바이스(110)의 캡쳐 회로(132)는, 도 2를 참조하여 설명된 바와 같이, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로, 제 3 클록 레지스터(204)로부터 제 3 섀도우 타임스탬프 레지스터(224)로 다른 TOD 타임스탬프(예컨대, 20)를 카피할 수 있다.
[0072] 특정 양상에서, 트랜지션(302)은, 도 1의 제 2 디바이스(120)의 제 2 타임스탬프 캡쳐 신호(134)에 대응할 수 있다. 예를 들어, 트랜지션(302)은, 도 2를 참조하여 설명된 바와 같이, 이벤트 메시지(230)를 수신하는 것에 대한 응답으로 제 2 디바이스(120)의 검출 회로(130)에 의해 어써팅되는 제 2 타임스탬프 캡쳐 신호(134)에 대응할 수 있다. 도 1의 제 2 디바이스(120)의 캡쳐 회로(132)는, 도 1-2를 참조하여 설명된 바와 같이, 제 2 타임스탬프 캡쳐 신호(134)에 대한 응답으로 TOA 타임스탬프(124)를 캡쳐할 수 있다. 예를 들어, 캡쳐 회로(132)는, 제 2 클록 레지스터(122)로부터 제 2 섀도우 타임스탬프 레지스터(126)로 TOA 타임스탬프(124)(예컨대, 26)를 카피할 수 있다.
[0073] 제 1 섀도우 타임스탬프 레지스터(116), 제 2 섀도우 타임스탬프 레지스터(126), 및 제 3 섀도우 타임스탬프 레지스터(224)의 값들은 각각, 제 1 클록 레지스터(112), 제 2 클록 레지스터(122), 및 제 3 클록 레지스터(204)의 값들의 스냅샷들일 수 있다. 스냅샷들은, 트랜지션(302)에 관련된 시간에 대응할 수 있다. 특정 양상에서, 제 1 디바이스(110)(또는 제 2 디바이스(120))의 동기화 모듈(102)은, 어떠한 레이턴시도 고려하지 않거나 또는 감소된 레이턴시를 고려하여, 제 1 섀도우 타임스탬프 레지스터(116), 제 2 섀도우 타임스탬프 레지스터(126), 및/또는 제 3 섀도우 타임스탬프 레지스터(224)의 값들을 비교할 수 있다. 예를 들어, 제 1 섀도우 타임스탬프 레지스터(116), 제 2 섀도우 타임스탬프 레지스터(126), 및 제 3 섀도우 타임스탬프 레지스터(224)의 값들은 별개의 시간들에서 판독될 수 있는데, 그럼에도 불구하고, 트랜지션(302)에 대응하는 실질적으로 유사한 캡쳐 시간을 표현할 수 있다.
[0074] 따라서, 타이밍 도면(300)은, 이벤트 메시지가 제 1 디바이스에 의해 송신된 시간에 대응하는 TOD 타임스탬프들과 이벤트 메시지가 제 2 디바이스에 의해 수신된 시간에 대응하는 TOA 타임스탬프의 비교에 대응할 수 있다.
[0075] 도 4를 참조하면, 네트워크 클록 비교의 방법의 특정 양상이 도시되며, 일반적으로 (400)으로 지정된다. 특정 양상에서, 방법(400)은, 도 1-2의 시스템들(100-200) 중 적어도 하나에 의해 수행될 수 있다.
[0076] 방법(400)은, (402)에서, 제 1 디바이스에서 제 2 디바이스로부터 패킷을 수신하는 단계를 포함한다. 예를 들어, 도 1의 제 2 디바이스(120)는, 도 1을 참조하여 설명된 바와 같이, 제 1 디바이스(110)로부터 패킷(150)을 수신할 수 있다.
[0077] 방법(400)은 또한, (404)에서, 검출 회로에서 패킷의 수신을 검출하는 단계를 포함한다. 예를 들어, 도 1의 제 2 디바이스(120)의 검출 회로(130)는, 도 1을 참조하여 설명된 바와 같이, 패킷(150)의 수신을 검출할 수 있다. 검출 회로(130)는, 제 1 디바이스(110)로부터 패킷(150)을 수신하는 것에 대한 응답으로, 제 2 타임스탬프 캡쳐 신호(134)를 어써팅할 수 있다.
[0078] 방법(400)은 추가로, (406)에서, 패킷의 수신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 도달 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 단계를 포함한다. 예를 들어, 도 1의 제 2 디바이스(120)의 캡쳐 회로(132)는, 도 1을 참조하여 설명된 바와 같이, 검출 회로(130)가 패킷(150)의 수신을 검출하는 것에 대한 응답으로, TOA 타임스탬프(124)를 캡쳐할 수 있다. 캡쳐 회로(132)는, 제 2 타임스탬프 캡쳐 신호(134)에 대한 응답으로 TOA 타임스탬프(124)를 캡쳐할 수 있다.
[0079] 방법(400)은 또한, (408)에서, 패킷에 대응하는 출발 시간 타임스탬프를 제 2 디바이스로부터 수신하는 단계를 포함한다. 출발 시간 타임스탬프는, 패킷이 제 2 디바이스로부터 전송된 시간을 표시할 수 있다. 예를 들어, 도 1의 제 2 디바이스(120)는, 도 1을 참조하여 설명된 바와 같이, 제 1 디바이스(110)로부터 패킷(150)에 대응하는 TOD 타임스탬프(152)를 수신할 수 있다. TOD 타임스탬프(152)는, 도 1을 참조하여 설명된 바와 같이, 패킷(150)이 제 1 디바이스(110)로부터 전송된 시간을 표시할 수 있다.
[0080] 방법(400)은 추가로, (410)에서, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하는 단계를 포함한다. 예를 들어, 도 1의 제 2 디바이스(120)의 동기화 모듈(102)은, 도 1을 참조하여 설명된 바와 같이, TOA 타임스탬프(124)와 TOD 타임스탬프(152)를 비교할 수 있다.
[0081] 따라서, 방법(400)은, 제 2 디바이스(120)의 동기화 모듈(102)이, 패킷(150)이 제 1 디바이스(110)에 의해 송신된 시간에 대응하는 TOD 타임스탬프(152)와 패킷(150)이 제 2 디바이스(120)에 의해 수신된 시간에 대응하는 TOA 타임스탬프(124)를 비교하는 것을 가능하게 할 수 있다.
[0082] 도 4의 방법(400)은, 필드-프로그래밍가능 게이트 어레이(FPGA; field-programmable gate array) 디바이스, 주문형 집적 회로(ASIC; application-specific integrated circuit), CPU와 같은 프로세싱 유닛, 디지털 신호 프로세서(DSP), 제어기, 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 결합을 사용하여 구현될 수 있다. 예로서, 도 4의 방법(400)은, 도 6을 참조하여 설명되는 바와 같이, 명령들을 실행하는 프로세서를 사용하여 수행될 수 있다.
[0083] 도 5를 참조하면, 네트워크 클록 비교의 방법의 특정 양상이 도시되며, 일반적으로 (500)으로 지정된다. 특정 양상에서, 방법(500)은, 도 1-2의 시스템들(100-200) 중 적어도 하나에 의해 수행될 수 있다.
[0084] 방법(500)은, (502)에서, 제 1 디바이스로부터 제 2 디바이스로 패킷을 전송하는 단계를 포함한다. 예를 들어, 도 1의 제 1 디바이스(110)는, 도 1을 참조하여 설명된 바와 같이, 제 2 디바이스(120)에 패킷(150)을 전송할 수 있다.
[0085] 방법(500)은 또한, (504)에서, 검출 회로에서 패킷의 송신을 검출하는 단계를 포함한다. 예를 들어, 도 1의 제 1 디바이스(110)의 검출 회로(130)는, 도 1을 참조하여 설명된 바와 같이, 패킷(150)의 송신을 검출할 수 있다. 검출 회로(130)는, 패킷(150)의 송신을 검출하는 것에 대한 응답으로 제 1 타임스탬프 캡쳐 신호(114)를 어써팅할 수 있다.
[0086] 방법(500)은 추가로, (506)에서, 패킷의 송신을 검출하는 것에 대한 응답으로, 패킷에 대응하는 출발 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 단계를 포함한다. 예를 들어, 도 1의 제 1 디바이스(110)의 캡쳐 회로(132)는, 도 1을 참조하여 설명된 바와 같이, 검출 회로(130)가 패킷의 송신을 검출하는 것에 대한 응답으로, TOD 타임스탬프(152)를 캡쳐할 수 있다. 캡쳐 회로(132)는, 제 1 타임스탬프 캡쳐 신호(114)에 대한 응답으로 TOD 타임스탬프(152)를 캡쳐할 수 있다.
[0087] 방법(500)은 또한, (508)에서, 제 1 디바이스에서, 패킷에 대응하는 도달 시간 타임스탬프를 제 2 디바이스로부터 수신하는 단계를 포함한다. 도달 시간 타임스탬프는, 패킷이 제 2 디바이스에 의해 수신된 시간을 표시할 수 있다. 예를 들어, 도 1의 제 1 디바이스(110)의 수신기(144)는, 도 1을 참조하여 설명된 바와 같이, 제 2 디바이스(120)로부터 도달 시간(TOA) 타임스탬프(124)를 수신할 수 있다. TOA 타임스탬프(124)는, 도 1을 참조하여 설명된 바와 같이, 패킷(150)이 제 2 디바이스(120)에 의해 수신된 시간을 표시할 수 있다.
[0088] 방법(500)은 추가로, (510)에서, 도달 시간 타임스탬프와 출발 시간 타임스탬프의 비교를 수행하는 단계를 포함한다. 예를 들어, 도 1의 제 1 디바이스(110)의 동기화 모듈(102)은, 도 1을 참조하여 설명된 바와 같이, TOA 타임스탬프(124)와 TOD 타임스탬프(152)를 비교할 수 있다.
[0089] 따라서, 방법(500)은, 제 1 디바이스(110)의 동기화 모듈(102)이, 패킷(150)이 제 1 디바이스(110)에 의해 송신된 시간에 대응하는 TOD 타임스탬프(152)와 패킷(150)이 제 2 디바이스(120)에 의해 수신된 시간에 대응하는 TOA 타임스탬프(124)를 비교하는 것을 가능하게 할 수 있다.
[0090] 도 5의 방법(500)은, FPGA 디바이스, ASIC, CPU와 같은 프로세싱 유닛, DSP, 제어기, 다른 하드웨어 디바이스, 펌웨어 디바이스, 또는 이들의 임의의 결합을 사용하여 구현될 수 있다. 예로서, 도 5의 방법(500)은, 도 6을 참조하여 설명되는 바와 같이, 명령들을 실행하는 프로세서를 사용하여 수행될 수 있다.
[0091] 도 6을 참조하면, 무선 통신 디바이스의 특정한 예시적인 양상의 블록도가 도시되며, 일반적으로 (600)으로 지정된다. 특정 양상에서, 디바이스(600)는, 도 1의 제 1 디바이스(110), 제 2 디바이스(120), 또는 둘 모두에 대응할 수 있다.
[0092] 디바이스(600)는, 메모리(136)에 커플링되는 프로세서(138)를 포함한다. 프로세서(138)는 DSP 또는 CPU를 포함할 수 있다. 프로세서(138)는, 동기화 모듈(102), 동기화 레지스터들(108), 검출 회로(130), 캡쳐 회로(132), 또는 이들의 결합을 포함할 수 있거나 또는 그에 커플링될 수 있다. 프로세서(138)는, 트랜시버(104)를 통해 안테나(142)에 커플링될 수 있다. 특정 양상에서, 트랜시버(104)는, 수신기(144), 송신기(194), 또는 둘 모두를 포함할 수 있거나 또는 그에 커플링될 수 있다. 특정 양상에서, 동기화 모듈(102), 캡쳐 회로(132), 검출 회로(130), 수신기(144), 송신기(194), 또는 이들의 결합은, 도 1-5를 참조하여 설명된 방법들 및 동작들의 적어도 부분을 수행할 수 있다.
[0093] 검출 회로(130)는, 패킷(예컨대, 도 1의 패킷(150))의 제 1 비트가 트랜시버(104)에 의해 수신되거나 또는 송신되는 것을 검출할 수 있다. 검출 회로(130)는, 타임스탬프 캡쳐 신호(예컨대, 도 1의 제 1 타임스탬프 캡쳐 신호(114) 또는 제 2 타임스탬프 캡쳐 신호(134))를 어써팅할 수 있다. 캡쳐 회로(132)는, 타임스탬프 캡쳐 신호(예컨대, 제 1 타임스탬프 캡쳐 신호(114) 또는 제 2 타임스탬프 캡쳐 신호(134))에 대한 응답으로 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))를 캡쳐할 수 있다. 예를 들어, 캡쳐 회로(132)는, 동기화 레지스터들(108)의 클록 레지스터(예컨대, 도 1의 제 1 클록 레지스터(112) 또는 제 2 클록 레지스터(122))로부터 동기화 레지스터들(108)의 섀도우 타임스탬프 레지스터(예컨대, 도 1의 제 1 섀도우 타임스탬프 레지스터(116) 또는 제 2 섀도우 타임스탬프 레지스터(126))로 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))를 카피할 수 있다. 수신기(144)는, 다른 디바이스(예컨대, 제 1 디바이스(110) 또는 제 2 디바이스(120))로부터 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 수신할 수 있고, 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 메모리(136)에 저장할 수 있다. 동기화 모듈(102)은, 섀도우 타임스탬프 레지스터(예컨대, 제 1 섀도우 타임스탬프 레지스터(116) 또는 제 2 섀도우 타임스탬프 레지스터(126))로부터 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))를 판독할 수 있고, 메모리(136)로부터 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 판독할 수 있다. 동기화 모듈(102)은, 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))와 그에 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 비교할 수 있다. 특정 양상에서, 동기화 모듈(102)은, 도 1을 참조하여 설명된 바와 같이, 비교에 기초하여 클록 동기화를 수행할 수 있다.
[0094] 특정 양상에서, 동기화 모듈(102), 캡쳐 회로(132), 검출 회로(130), 수신기(144), 송신기(194), 또는 이들의 결합은, 하나 또는 그 초과의 프로세서들(예컨대, 프로세서(138))을 통해서와 같이, 온-칩(on-chip)으로 구현될 수 있다. 예를 들어, 캡쳐 회로(132) 및 검출 회로(130)는 단일 칩 상에 또는 별개의 칩들 상에 구현될 수 있다. 특정 양상에서, 메모리(136)는, 프로세서(138)로 하여금 동기화 모듈(102), 캡쳐 회로(132), 검출 회로(130), 수신기(144), 송신기(194), 또는 이들의 결합의 동작들을 수행하게 하도록 프로세서(138)에 의해 실행가능한 컴퓨터-실행가능 명령들(656)을 저장하는 컴퓨터 판독가능 저장 디바이스일 수 있다. 예를 들어, 프로세서(138)는, 도 1을 참조하여 설명된 바와 같이, 패킷(예컨대, 패킷(150))의 제 1 비트의 송신에 대한 응답으로 또는 패킷(예컨대, 패킷(150))의 제 1 비트가 수신되는 것에 대한 응답으로 타임스탬프 캡쳐 신호(예컨대, 제 1 타임스탬프 캡쳐 신호(114) 또는 제 2 타임스탬프 캡쳐 신호(134))를 어써팅할 수 있거나, 타임스탬프 캡쳐 신호에 대한 응답으로 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))를 캡쳐할 수 있거나, 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 수신할 수 있거나, 타임스탬프(예컨대, TOA 타임스탬프(124) 또는 TOD 타임스탬프(152))와 그에 대응하는 타임스탬프(예컨대, TOD 타임스탬프(152) 또는 TOA 타임스탬프(124))를 비교할 수 있거나, 비교에 기초하여 클록 동기화를 수행할 수 있거나, 또는 이들의 결합을 행할 수 있다.
[0095] 도 6은 또한, 프로세서(138)에 커플링되고 그리고 디스플레이(628)에 커플링되는 디스플레이 제어기(626)를 도시한다. 코더/디코더(coder/decoder)(CODEC)(634)가 또한 프로세서(138)에 커플링될 수 있다. 스피커(636) 및 마이크로폰(638)은 CODEC(634)에 커플링될 수 있다. 마이크로폰(638)은 오디오 소스 디바이스를 포함할 수 있다.
[0096] 특정 양상에서, 프로세서(138), 디스플레이 제어기(626), 메모리(136), CODEC(634), 동기화 모듈(102), 동기화 레지스터들(108), 캡쳐 회로(132), 검출 회로(130), 및 트랜시버(104)는, 시스템-인-패키지(system-in-package) 또는 시스템-온-칩(system-on-chip) 디바이스(622)에 포함될 수 있다. 특정 양상에서, 입력 디바이스(630) 및 전력 공급부(644)는 시스템-온-칩 디바이스(622)에 커플링된다. 입력 디바이스(630)는 비디오 소스 디바이스를 포함할 수 있다. 더욱이, 특정 양상에서, 도 6에 예시된 바와 같이, 디스플레이(628), 입력 디바이스(630), 스피커(636), 마이크로폰(638), 안테나(142), 및 전력 공급부(644)는 시스템-온-칩 디바이스(622) 외부에 있다. 그러나, 디스플레이(628), 입력 디바이스(630), 스피커(636), 마이크로폰(638), 안테나(142), 및 전력 공급부(644) 각각은 시스템-온-칩 디바이스(622)의 컴포넌트, 이를테면 인터페이스 또는 제어기에 커플링될 수 있다.
[0097] 본원에 개시된 양상들과 관련하여 설명된 다양한 예시적인 로직 블록들, 구성들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 프로세서에 의해 실행되는 컴퓨터 소프트웨어, 또는 이 둘의 결합들로서 구현될 수 있음을 당업자들은 추가적으로 인식할 것이다. 다양한 예시적인 컴포넌트들, 블록들, 구성들, 모듈들, 회로들, 및 단계들은, 일반적으로 그들의 기능의 관점들에서 위에 설명되었다. 그러한 기능이 하드웨어로서 구현되는지 또는 프로세서 실행가능 명령들로서 구현되는지는 특정 애플리케이션 및 전체 시스템에 부과된 설계 제한들에 의존한다. 당업자들은 설명된 기능을 각각의 특정 애플리케이션에 대해 다양한 방식들로 구현할 수 있지만, 이러한 구현 결정들이 본 개시내용의 범위를 벗어나게 하는 것으로 해석되어서는 안 된다.
[0098] 본원에 개시된 양상들과 관련하여 설명되는 알고리즘 또는 방법의 단계들은 직접적으로 하드웨어로, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 결합으로 구현될 수 있다. 소프트웨어 모듈은, 랜덤 액세스 메모리(RAM), 플래시 메모리, 판독-전용 메모리(ROM), 프로그래밍가능 판독-전용 메모리(PROM), 소거가능한 프로그래밍가능 판독-전용 메모리(EPROM), 전기적으로 소거가능한 프로그래밍가능 판독-전용 메모리(EEPROM), 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM(compact disc read-only memory), 또는 당업계에 알려져 있는 임의의 다른 형태의 비-일시적인 저장 매체에 상주할 수 있다. 예시적인 저장 매체는, 프로세서가 저장 매체로부터 정보를 판독하고, 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링될 수 있다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다. 프로세서 및 저장 매체는 ASIC에 상주할 수 있다. ASIC는 컴퓨팅 디바이스 또는 사용자 단말에 상주할 수 있다. 대안적으로, 프로세서 및 저장 매체는 컴퓨팅 디바이스 또는 사용자 단말에서 이산 컴포넌트들로서 상주할 수 있다.
[0099] 개시된 양상들의 이전 설명은 당업자가 개시된 양상들을 실시 또는 사용하는 것을 가능하게 하도록 제공된다. 이러한 양상들에 대한 다양한 수정들은 당업자들에게 용이하게 명백할 것이며, 본원에서 정의된 원리들은 본 개시내용의 범위로부터 벗어남이 없이 다른 양상들에 적용될 수 있다. 따라서, 본 개시내용은 본원에서 나타낸 양상들로 제한되도록 의도되는 것이 아니라 후속하는 청구항들에 의해 정의되는 바와 같은 원리들 및 신규한 특징들과 부합하는 가능한 가장 넓은 범위를 따르도록 의도된다.

Claims (30)

  1. 방법으로서,
    제 1 디바이스에서 제 2 디바이스로부터 패킷을 수신하는 단계;
    검출 회로에서 상기 패킷의 수신을 검출하는 단계;
    상기 패킷의 수신을 검출하는 것에 대한 응답으로, 상기 패킷에 대응하는 도달 시간 타임스탬프(time of arrival timestamp)를 캡쳐(capture) 회로에서 캡쳐하는 단계;
    상기 제 1 디바이스에서, 상기 패킷에 대응하는 출발 시간(time of departure) 타임스탬프를 상기 제 2 디바이스로부터 수신하는 단계 ― 상기 출발 시간 타임스탬프는, 상기 패킷이 상기 제 2 디바이스로부터 전송된 시간을 표시함 ―; 및
    상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프의 비교를 수행하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 검출 회로는, 제 1 OSI(open systems interconnection model) 계층에서 동작하도록 구성되는 제 1 OSI 계층 회로이고, 상기 캡쳐 회로는, 제 2 OSI 계층에서 동작하도록 구성되는 제 2 OSI 계층 회로이며,
    상기 제 1 OSI 계층은 상기 제 2 OSI 계층보다 더 낮은, 방법.
  3. 제 2 항에 있어서,
    상기 제 1 OSI 계층은 데이터 링크 계층을 포함하고, 상기 제 2 OSI 계층은 애플리케이션 계층을 포함하며,
    상기 검출 회로는, 상기 패킷을 디코딩함이 없이 상기 패킷의 수신을 검출하는, 방법.
  4. 제 1 항에 있어서,
    상기 검출 회로는, 상기 패킷의 제 1 비트가 수신되는 것을 검출하는 것에 기초하여 상기 패킷의 수신을 검출하고,
    상기 제 1 비트는 상기 패킷의 가정 먼저 수신된 비트인, 방법.
  5. 제 1 항에 있어서,
    상기 도달 시간 타임스탬프는, 제 1 클록 레지스터로부터 섀도우 타임스탬프 레지스터로 상기 도달 시간 타임스탬프를 카피(copy)함으로써 캡쳐되고,
    상기 출발 시간 타임스탬프는, 상기 제 2 디바이스의 제 2 클록 레지스터에 대응하며,
    상기 제 1 클록 레지스터는 애플리케이션에 관련되는, 방법.
  6. 제 5 항에 있어서,
    상기 비교에 기초하여 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하는 단계를 더 포함하는, 방법.
  7. 제 5 항에 있어서,
    상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하는 단계는, 상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프 간의 차이에 기초하여 상기 제 1 클록 레지스터의 값을 업데이트하는 단계를 포함하는, 방법.
  8. 제 5 항에 있어서,
    상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하는 단계는, 상기 도달 시간 타임스탬프 및 상기 출발 시간 타임스탬프에 기초하여 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터 간의 오프셋(offset)을 결정하는 단계를 포함하는, 방법.
  9. 제 1 항에 있어서,
    상기 검출 회로는, 상기 패킷의 수신을 검출하는 것에 대한 응답으로 타임스탬프 캡쳐 신호를 어써팅(assert)하고,
    상기 캡쳐 회로는, 상기 타임스탬프 캡쳐 신호에 대한 응답으로 도달 시간 타임스탬프를 캡쳐하는, 방법.
  10. 제 9 항에 있어서,
    상기 타임스탬프 캡쳐 신호는, 하드웨어 신호, 소프트웨어 신호, 또는 둘 모두를 포함하는, 방법.
  11. 제 9 항에 있어서,
    상기 타임스탬프 캡쳐 신호는 인터럽트(interrupt) 신호를 포함하는, 방법.
  12. 제 9 항에 있어서,
    상기 검출 회로는, 제 2 패킷의 송신을 검출하는 것에 대한 응답으로 제 2 타임스탬프 캡쳐 신호를 어써팅하고,
    상기 타임스탬프 캡쳐 신호 및 상기 제 2 타임스탬프 캡쳐 신호는 독립적인 측대역 프로브 신호(sideband probe signal)들인, 방법.
  13. 제 9 항에 있어서,
    상기 타임스탬프 캡쳐 신호는 엣지-트리거형(edge-triggered) 신호를 포함하고,
    상기 제 1 디바이스는, 오디오 소스 디바이스, 비디오 소스 디바이스, 또는 둘 모두를 포함하는, 방법.
  14. 장치로서,
    디바이스로의 패킷의 송신을 검출하도록 구성되는 검출 회로;
    상기 검출 회로에 응답하는 캡쳐 회로 ― 상기 캡쳐 회로는, 상기 검출 회로에서 상기 패킷의 송신을 검출하는 것에 대한 응답으로, 상기 패킷에 대응하는 출발 시간 타임스탬프를 캡쳐하도록 구성됨 ―;
    상기 디바이스로부터 도달 시간 타임스탬프를 수신하도록 구성되는 수신기 ― 상기 도달 시간 타임스탬프는 상기 패킷에 대응하고, 상기 도달 시간 타임스탬프는, 상기 패킷이 상기 디바이스에 의해 수신된 시간을 표시함 ―; 및
    상기 검출 회로, 상기 수신기, 및 상기 캡쳐 회로에 커플링되는 프로세서를 포함하며,
    상기 프로세서는, 상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프를 비교하도록 구성되는, 장치.
  15. 제 14 항에 있어서,
    상기 검출 회로는 추가로, 상기 패킷의 송신을 검출하는 것에 대한 응답으로 제 1 타임스탬프 캡쳐 신호를 어써팅하도록 구성되고,
    상기 캡쳐 회로는 추가로, 상기 제 1 타임스탬프 캡쳐 신호에 대한 응답으로 상기 출발 시간 타임스탬프를 캡쳐하도록 구성되는, 장치.
  16. 제 14 항에 있어서,
    제 1 클록 레지스터 및 제 1 섀도우 타임스탬프 레지스터를 더 포함하며,
    상기 출발 시간 타임스탬프는, 상기 제 1 클록 레지스터로부터 상기 제 1 섀도우 타임스탬프 레지스터로 상기 출발 시간 타임스탬프를 카피함으로써 캡쳐되는, 장치.
  17. 제 16 항에 있어서,
    메모리를 더 포함하며,
    상기 수신기는 추가로, 상기 메모리에 상기 도달 시간 타임스탬프를 저장하도록 구성되고,
    상기 프로세서는 추가로, 상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프를 비교하기에 앞서,
    상기 메모리로부터 상기 도달 시간 타임스탬프를 판독하고, 그리고
    상기 제 1 섀도우 타임스탬프 레지스터로부터 상기 출발 시간 타임스탬프를 판독
    하도록 구성되는, 장치.
  18. 제 16 항에 있어서,
    상기 도달 시간 타임스탬프는 상기 디바이스의 제 2 클록 레지스터에 대응하고,
    상기 프로세서는 추가로, 상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프 간의 차이에 기초하여 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하도록 구성되는, 장치.
  19. 제 16 항에 있어서,
    상기 도달 시간 타임스탬프는 상기 디바이스의 제 2 클록 레지스터에 대응하고,
    상기 프로세서는 추가로, 상기 도달 시간 타임스탬프 및 상기 출발 시간 타임스탬프에 기초하여 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터 간의 오프셋을 결정함으로써, 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하도록 구성되는, 장치.
  20. 제 14 항에 있어서,
    상기 프로세서는 추가로, 상기 출발 시간 타임스탬프를 상기 디바이스에 전송하도록 구성되는, 장치.
  21. 제 14 항에 있어서,
    상기 검출 회로는 추가로, 상기 프로세서로부터 상기 패킷을 수신하고 그리고 상기 패킷을, 상기 디바이스로 송신하기 위해 송신기에 제공하도록 구성되고,
    상기 검출 회로는 추가로, 상기 패킷의 제 1 비트를 상기 송신기에 제공하는 것에 대한 응답으로 제 1 타임스탬프 캡쳐 신호를 어써팅하도록 구성되는, 장치.
  22. 제 14 항에 있어서,
    상기 수신기는 추가로,
    상기 디바이스로부터 제 2 패킷을 수신하고, 그리고
    상기 디바이스로부터 제 2 출발 시간 타임스탬프를 수신
    하도록 구성되며,
    상기 제 2 출발 시간 타임스탬프는 상기 제 2 패킷이 상기 디바이스로부터 전송된 제 2 시간을 표시하고,
    상기 검출 회로는 추가로, 상기 수신기에 의한 상기 제 2 패킷의 수신을 검출하도록 구성되고,
    상기 캡쳐 회로는 추가로, 상기 검출 회로에서 상기 제 2 패킷의 수신을 검출하는 것에 대한 응답으로, 상기 제 2 패킷에 대응하는 제 2 도달 시간 타임스탬프를 캡쳐하도록 구성되고,
    상기 프로세서는 추가로, 상기 제 2 도달 시간 타임스탬프와 상기 제 2 출발 시간 타임스탬프를 비교하도록 구성되는, 장치.
  23. 제 22 항에 있어서,
    상기 검출 회로는 추가로, 상기 수신기에 의한 상기 제 2 패킷의 수신을 검출하는 것에 대한 응답으로 제 2 타임스탬프 캡쳐 신호를 어써팅하도록 구성되고,
    상기 캡쳐 회로는 추가로, 상기 제 2 타임스탬프 캡쳐 신호에 대한 응답으로 상기 제 2 도달 시간 타임스탬프를 캡쳐하도록 구성되는, 장치.
  24. 제 22 항에 있어서,
    제 1 클록 레지스터 및 제 2 섀도우 타임스탬프 레지스터를 더 포함하며,
    상기 캡쳐 회로는 추가로, 상기 제 1 클록 레지스터로부터 상기 제 2 섀도우 타임스탬프 레지스터로 상기 제 2 도달 시간 타임스탬프를 카피함으로써 상기 제 2 도달 시간 타임스탬프를 캡쳐하도록 구성되는, 장치.
  25. 명령들을 저장하는 컴퓨터-판독가능 저장 디바이스로서,
    상기 명령들은, 프로세서에 의해 실행되는 경우 상기 프로세서로 하여금,
    디바이스로부터 패킷을 수신하는 것;
    검출 회로에서 상기 패킷의 수신을 검출하는 것;
    상기 패킷의 수신을 검출하는 것에 대한 응답으로, 상기 패킷에 대응하는 도달 시간 타임스탬프를 캡쳐 회로에서 캡쳐하는 것;
    상기 패킷에 대응하는 출발 시간 타임스탬프를 상기 디바이스로부터 수신하는 것 ― 상기 출발 시간 타임스탬프는, 상기 패킷이 상기 디바이스로부터 전송된 시간을 표시함 ―; 및
    상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프의 비교를 수행하는 것
    을 포함하는 동작들을 수행하게 하는, 컴퓨터-판독가능 저장 디바이스.
  26. 제 25 항에 있어서,
    상기 도달 시간 타임스탬프는, 제 1 클록 레지스터로부터 섀도우 타임스탬프 레지스터로 상기 도달 시간 타임스탬프를 카피함으로써 캡쳐되고,
    상기 출발 시간 타임스탬프는, 상기 디바이스의 제 2 클록 레지스터에 대응하며,
    상기 동작들은, 상기 비교에 기초하여 상기 제 1 클록 레지스터와 상기 제 2 클록 레지스터를 동기화하는 것을 더 포함하는, 컴퓨터-판독가능 저장 디바이스.
  27. 제 26 항에 있어서,
    제 1 복수의 클록 레지스터들로부터 복수의 섀도우 타임스탬프 레지스터들로 복수의 도달 시간 타임스탬프들을 카피함으로써 상기 복수의 도달 시간 타임스탬프들이 상기 캡쳐 회로에 의해 캡쳐되고,
    상기 복수의 도달 시간 타임스탬프들은, 상기 패킷의 수신을 검출하는 것에 대한 응답으로 상기 캡쳐 회로에 의해 캡쳐되고,
    상기 복수의 도달 시간 타임스탬프들은, 상기 도달 시간 타임스탬프를 포함하고,
    상기 제 1 복수의 클록 레지스터들은 상기 제 1 클록 레지스터를 포함하며,
    상기 복수의 섀도우 타임스탬프 레지스터들은 상기 섀도우 타임스탬프 레지스터를 포함하는, 컴퓨터-판독가능 저장 디바이스.
  28. 제 27 항에 있어서,
    상기 동작들은,
    상기 디바이스로부터 제 2 복수의 클록 레지스터들의 복수의 출발 시간 타임스탬프들을 수신하는 것 ― 상기 복수의 출발 시간 타임스탬프들은, 상기 패킷이 상기 디바이스로부터 전송된 시간을 표시함 ―,
    상기 복수의 섀도우 타임스탬프 레지스터들로부터 상기 복수의 도달 시간 타임스탬프들을 판독하는 것, 및
    상기 복수의 도달 시간 타임스탬프들과 상기 복수의 출발 시간 타임스탬프들을 비교하는 것
    을 더 포함하며,
    상기 복수의 출발 시간 타임스탬프들은 상기 출발 시간 타임스탬프를 포함하는, 컴퓨터-판독가능 저장 디바이스.
  29. 디바이스로서,
    수신기 ― 상기 수신기는, 제 2 디바이스로부터 패킷을 수신하고 그리고 상기 제 2 디바이스로부터 출발 시간 타임스탬프를 수신하도록 구성되며, 상기 출발 시간 타임스탬프는 상기 패킷에 대응하고, 상기 출발 시간 타임스탬프는, 상기 패킷이 상기 제 2 디바이스로부터 전송된 시간을 표시함 ―;
    상기 수신기에 커플링되고, 상기 수신기에 의한 상기 패킷의 수신을 검출하도록 구성되는 검출 회로;
    상기 검출 회로에 응답하는 캡쳐 회로 ― 상기 캡쳐 회로는, 상기 검출 회로에서 상기 수신기에 의한 상기 패킷의 수신을 검출하는 것에 대한 응답으로, 도달 시간 타임스탬프를 캡쳐하도록 구성됨 ―; 및
    상기 수신기 및 상기 캡쳐 회로에 커플링되는 프로세서를 포함하며,
    상기 프로세서는, 상기 도달 시간 타임스탬프와 상기 출발 시간 타임스탬프의 비교를 수행하도록 구성되는, 디바이스.
  30. 제 29 항에 있어서,
    상기 검출 회로는 추가로, 상기 수신기에 의한 상기 패킷의 수신을 검출하는 것에 대한 응답으로 타임스탬프 캡쳐 신호를 어써팅하도록 구성되고,
    상기 캡쳐 회로는 추가로, 상기 타임스탬프 캡쳐 신호에 대한 응답으로 상기 도달 시간 타임스탬프를 캡쳐하도록 구성되는, 디바이스.
KR1020167036275A 2014-07-03 2015-06-30 네트워크 클록 비교 시스템들 및 방법들 KR20170027730A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462020925P 2014-07-03 2014-07-03
US62/020,925 2014-07-03
US14/754,343 US20160006526A1 (en) 2014-07-03 2015-06-29 Systems and methods of network clock comparison
US14/754,343 2015-06-29
PCT/US2015/038654 WO2016004099A1 (en) 2014-07-03 2015-06-30 Systems and methods of network clock comparison

Publications (1)

Publication Number Publication Date
KR20170027730A true KR20170027730A (ko) 2017-03-10

Family

ID=55017793

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167036275A KR20170027730A (ko) 2014-07-03 2015-06-30 네트워크 클록 비교 시스템들 및 방법들

Country Status (7)

Country Link
US (1) US20160006526A1 (ko)
EP (1) EP3164955A1 (ko)
JP (1) JP2017521027A (ko)
KR (1) KR20170027730A (ko)
CN (1) CN106464398B (ko)
BR (1) BR112017000067A2 (ko)
WO (1) WO2016004099A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10148543B2 (en) * 2015-12-23 2018-12-04 EMC IP Holding Company LLC Connection-oriented communication devices with round trip time estimation
EP3487398B1 (en) * 2016-07-19 2023-11-29 Pathways Medical Corporation Pressure sensing guidewire assemblies and systems
ES2966085T3 (es) * 2016-12-06 2024-04-18 Ericsson Telefon Ab L M Método y aparato para la monitorización de latencia
CN108934034A (zh) * 2017-05-26 2018-12-04 华为技术有限公司 一种发送和接收数据包的方法、设备及系统
WO2018214610A1 (zh) * 2017-05-26 2018-11-29 华为技术有限公司 一种发送和接收数据包的方法、设备及系统
DE102017212353A1 (de) * 2017-07-19 2019-01-24 Robert Bosch Gmbh Verfahren zum Anpassen von Zeitstempeln bei der Erfassung von Sensordaten
DE102017123319A1 (de) * 2017-10-09 2019-04-11 Sennheiser Electronic Gmbh & Co. Kg Verfahren und System zur Erfassung und Synchronisation von Audio- und Videosignalen und Audio/Video-Erfassungs- und Synchronisationssystem
JP7289299B2 (ja) * 2017-12-07 2023-06-09 テトラ ラバル ホールディングス アンド ファイナンス エス エイ 機械におけるプロセス監視の方法
US10705843B2 (en) * 2017-12-21 2020-07-07 International Business Machines Corporation Method and system for detection of thread stall
US20200014525A1 (en) * 2018-07-03 2020-01-09 Connaught Electronics Ltd. Method for time synchronization between two computing devices of a driver assistance system, driver assistance system, and motor vehicle
US11515937B2 (en) 2019-08-22 2022-11-29 Skylo Technologies, Inc. Hub communication with a satellite network or a terrestrial network
US11329745B2 (en) * 2019-08-22 2022-05-10 Skylo Technologies, Inc. Dynamically estimating a propagation time between a first node and a second node of a wireless network
US10997949B2 (en) * 2019-10-04 2021-05-04 Facebook Technologies, Llc Time synchronization between artificial reality devices
US11165527B2 (en) * 2019-12-20 2021-11-02 Juniper Networks, Inc. Time synchronization for encrypted traffic in a computer network
KR20230025902A (ko) * 2020-07-09 2023-02-23 마이크로칩 테크놀로지 인코포레이티드 시간-동기화된 하드웨어 컨트롤러들 및 관련 오디오 시스템들 및 회로부

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4926448A (en) * 1986-05-06 1990-05-15 Hayes Microcomputer Products, Inc. Method and apparatus for implementing an escape sequence
US5566180A (en) * 1994-12-21 1996-10-15 Hewlett-Packard Company Method for recognizing events and synchronizing clocks
US5790840A (en) * 1997-08-15 1998-08-04 International Business Machines Corporation Timestamp systems, methods and computer program products for data processing system
JP3405191B2 (ja) * 1998-04-28 2003-05-12 ヤマハ株式会社 クロック生成装置及び生成方法
US6252445B1 (en) * 1999-03-31 2001-06-26 Agilent Technologies, Inc. Method and apparatus for extending a resolution of a clock
US6922417B2 (en) * 2000-01-28 2005-07-26 Compuware Corporation Method and system to calculate network latency, and to display the same field of the invention
US6816510B1 (en) * 2000-02-09 2004-11-09 Koninklijke Philips Electronics N.V. Method for clock synchronization between nodes in a packet network
US6985499B2 (en) * 2000-04-20 2006-01-10 Symmetricom, Inc. Precise network time transfer
US7444476B2 (en) * 2001-07-24 2008-10-28 Texas Instruments Incorporated System and method for code and data security in a semiconductor device
US7496283B2 (en) * 2002-06-28 2009-02-24 Microsoft Corporation Methods and systems for processing digital data rate and directional playback changes
JP4368320B2 (ja) * 2005-03-16 2009-11-18 富士通株式会社 情報処理システム,パイプライン処理装置,ビジー判定プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
US7649912B2 (en) * 2005-04-27 2010-01-19 Rockwell Automation Technologies, Inc. Time synchronization, deterministic data delivery and redundancy for cascaded nodes on full duplex ethernet networks
EP2025104A4 (en) * 2006-05-19 2013-04-03 Symmetricom Inc NETWORK TIME PROTOCOL PRECISION TIME STAMP DUTY
JP2008064474A (ja) * 2006-09-04 2008-03-21 Sharp Corp 時計装置、時計システム、同期方法、時計装置制御プログラム、および通信装置
JP5074834B2 (ja) * 2007-06-29 2012-11-14 沖電気工業株式会社 音声・映像同期方法、音声・映像同期システム及び音声・映像受信端末
US8335266B2 (en) * 2007-06-29 2012-12-18 Cisco Technology, Inc. Expedited splicing of video streams
KR100932265B1 (ko) * 2007-10-17 2009-12-16 한국전자통신연구원 패킷 전송 방법 및 장치
US8416812B2 (en) * 2008-09-22 2013-04-09 Codrut Radu Radulescu Network timing synchronization systems
JP5375021B2 (ja) * 2008-10-16 2013-12-25 沖電気工業株式会社 クロック再生システムおよび方法
CN102197611B (zh) * 2008-10-24 2014-06-04 艾利森电话股份有限公司 用于分组网络同步的方法和设备
US20100125661A1 (en) * 2008-11-20 2010-05-20 Valtion Teknillinen Tutkimuskesku Arrangement for monitoring performance of network connection
US20110035511A1 (en) * 2009-08-07 2011-02-10 Cisco Technology, Inc. Remote Hardware Timestamp-Based Clock Synchronization
KR101544971B1 (ko) * 2009-12-15 2015-08-18 한국전자통신연구원 다중 클럭 동기화 방법 및 그 장치
US20130016739A1 (en) * 2010-04-08 2013-01-17 Nicusor Penisoara Multi-channel sniffer system and method for multi-channel sniffer synchronization
US9077912B2 (en) * 2010-09-23 2015-07-07 Intel Corporation Motion initiated time synchronization
US8644348B2 (en) * 2011-04-20 2014-02-04 Symmetricom, Inc. Method for generating a robust timing correction in timing transfer systems
US8923342B2 (en) * 2011-07-12 2014-12-30 Electronics And Telecommunications Research Institute Method of providing timing information for synchronizing MMT packet stream in MMT hybrid delivery service and method of synchronizing MMT packet stream in MMT hybrid delivery service
WO2013095489A1 (en) * 2011-12-22 2013-06-27 Intel Corporation Implementing an assisted cross-protocol adaptation layer/cross-layer clock synchronization scheme
EP2611153A1 (en) * 2011-12-29 2013-07-03 Thomson Licensing System and method for multiplexed streaming of multimedia content

Also Published As

Publication number Publication date
JP2017521027A (ja) 2017-07-27
US20160006526A1 (en) 2016-01-07
BR112017000067A2 (pt) 2017-11-14
WO2016004099A1 (en) 2016-01-07
EP3164955A1 (en) 2017-05-10
CN106464398B (zh) 2019-02-19
CN106464398A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
KR20170027730A (ko) 네트워크 클록 비교 시스템들 및 방법들
US10924745B2 (en) Image processing method and device
TWI651983B (zh) 藉由使用高準確度時戳輔助裝置於乙太網路之精密時間協定下的奈秒準確度
US9229832B2 (en) Time monitor
JP5646063B2 (ja) 動きによって開始される時刻同期処理
KR102226879B1 (ko) 부정확한 링크를 통한 이벤트들의 정확한 시간 태깅 시스템 및 그 방법
JP2017521027A5 (ko)
US9826491B2 (en) Method and apparatus for synchronization of devices
US20170289646A1 (en) Multi-camera dataset assembly and management with high precision timestamp requirements
CN112041829A (zh) 用于被通信链路分开的时钟的时间同步
US20200127752A1 (en) Time synchronization device and time synchronization method
EP3281317B1 (en) Multi-layer timing synchronization framework
US10122484B1 (en) Technologies for internal time syncrhonization
WO2018227703A1 (zh) 物联网中消息传递方法和装置
US10915490B2 (en) Audio streams over peripheral component interconnect (PCI) express (PCIE) links
WO2017045474A1 (zh) 报文解析的方法及装置
CN101420281B (zh) 用于在网络要素之间传送日内时间值的方法和装置
US20220360350A1 (en) Method and apparatus for acquiring timestamp of data stream, storage medium, and electronic apparatus
WO2012071977A1 (zh) 一种机架内的时间同步方法及设备
WO2018082068A1 (zh) Sfn指示方法、终端设备、定位服务器和系统
CN103490995B (zh) 报文发送方法和装置
CN112640355B (zh) 一种mac装置及时间点估算方法
CN110149171B (zh) 一种无线音频数据的发送方法、接收方法和装置
CN117319260A (zh) 测量端到端时延的方法和电子设备
JP2022129027A (ja) 処理装置、プログラム、処理方法および処理システム