KR20180072506A - Method and Apparatus for Estimating a Clock Frequency Error and a Clock Time Error in a PTP Slave - Google Patents
Method and Apparatus for Estimating a Clock Frequency Error and a Clock Time Error in a PTP Slave Download PDFInfo
- Publication number
- KR20180072506A KR20180072506A KR1020170002461A KR20170002461A KR20180072506A KR 20180072506 A KR20180072506 A KR 20180072506A KR 1020170002461 A KR1020170002461 A KR 1020170002461A KR 20170002461 A KR20170002461 A KR 20170002461A KR 20180072506 A KR20180072506 A KR 20180072506A
- Authority
- KR
- South Korea
- Prior art keywords
- samples
- sub
- sample
- delay
- ran
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0054—Detection of the synchronisation error by features other than the received signal transition
Abstract
Description
본 발명은 PTP(Precision Time Protocol) 슬레이브(slave)에서 클럭 동기를 맞추는 기술에 관한 것으로서, 더 구체적으로는 PTP 슬레이브에서 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 기술에 관한 것이다BACKGROUND OF THE
최근의 무선 접속망(Radio Access Network)은 마이크로 셀(micro cell), 피코 셀(pico cell), 펨토 셀(femto cell) 등의 크기가 작은 소형 셀(small cell)이 상대적으로 큰 크기의 매크로 셀(macro cell)과 연동함으로써 서비스 품질을 향상시키고 커버리지를 확장하는 형태로 진화되고 있다. 소형 이동통신 기지국인 소형 셀은 저전력의 무선 접속 노드로서 일반 셀 보다 상대적으로 좁은 서비스 영역을 가지며, DSL 모뎀과 유사한 형태로 가정 내 유선 IP 망에 연결해 휴대폰과 같은 단말로 유무선 통신을 자유롭게 사용할 수 있게 해 준다.In recent radio access networks, a small cell having a small size such as a micro cell, a pico cell, or a femto cell is a relatively large macro cell macro cell) to improve service quality and expand coverage. The small cell, which is a small mobile communication base station, is a wireless access node with a low power and has a relatively narrow service area than a general cell. It is similar to a DSL modem and can be connected to a wired IP network in the home to freely use wired / Do it.
소형 셀, 특히 TDD 시스템 기반의 소형 셀이 소형 이동통신 기지국으로서 동작하기 위한 기본 요건 중의 하나는 매크로 기지국과의 주파수 및 시간 동기이다. 그러한 동기화 방법 중의 하나로서 IEEE1588 PTP(Precision Time Protocol)가 알려져 있다. PTP에 따르면, 예컨대 소형 셀과 같은 PTP 슬레이브가 PTP 매스터(매스터 서버)에서 보내 온 주기적인 싱크 메시지들(Sync messages)을 수신하고 또한 딜레이 요청 메시지들(Delay Request messages)을 송신하고 그에 대한 응답으로서 PTP 매스터로부터 딜레이 응답 메시지들(Delay Response messages)을 수신한다. PTP 슬레이브는 싱크 메시지들의 지연 시간들 및 딜레이 요청 메시지들의 지연 시간들에 대해 평균화 방식을 적용하여 클럭(clock) 주파수 오차와 클럭 시간 오차를 추정함으로써 클럭 주파수 및 시간 동기화를 수행하는 것이 일반적인데, 이러한 평균화를 통한 추정 방식은 네트워크의 패킷 지연 편차(PDV: Packet Delay Variance)로 인해 정확한 추정 결과를 제공하기 어렵다는 문제가 있다.One of the basic requirements for a small cell, especially a small cell based on a TDD system, to operate as a small mobile communication base station is frequency and time synchronization with a macro base station. IEEE 1588 Precision Time Protocol (PTP) is known as one such synchronization method. According to the PTP, for example, a PTP slave such as a small cell receives periodic sync messages sent from a PTP master (master server), and also transmits delay request messages (Delay Request messages) And receives Delay Response messages from the PTP master. The PTP slave generally performs clock frequency and time synchronization by estimating a clock frequency error and a clock time error by applying an averaging method to the delay times of the sync messages and the delay times of the delay request messages. There is a problem that it is difficult to provide an accurate estimation result due to a packet delay variation (PDV) of the network.
본 발명의 과제는 종래 기술에 비해 정확성이 제고되고 빠른 연산이 가능한 PTP 슬레이브에서의 클럭 주파수 오차 및 클럭 시간 오차 추정 방법 및 장치를 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method and an apparatus for estimating a clock frequency error and a clock time error in a PTP slave,
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the above-mentioned problems, and other problems not mentioned can be clearly understood by those skilled in the art from the following description.
일 측면에서, PTP 슬레이브(Precision Time Protocol slave)에서 클럭 주파수 오차를 추정하는 방법이 제공된다. 본 방법은, PTP 매스터(PTP master)로부터 순차로 송신된 복수의 싱크 메시지(sync messages)가 상기 PTP 슬레이브에 도달하는데 각각 걸린 복수의 제1 지연 시간을 결정하여 복수의 제1 지연 시간 샘플을 구성하는 단계, 상기 PTP 매스터로부터 순차로 송신된 복수의 싱크 메시지의 복수의 송신 시간을 식별하여 복수의 송신 시간 샘플을 구성하는 단계 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관됨 -, 상기 PTP 슬레이브로부터 순차로 송신된 복수의 딜레이 요청 메시지(delay request messages)가 상기 PTP 매스터에 도달하는데 각각 걸린 복수의 제2 지연 시간을 결정하여 복수의 제2 지연 시간 샘플을 구성하는 단계, 상기 PTP 슬레이브로부터 순차로 송신된 복수의 딜레이 요청 메시지가 상기 PTP 매스터에 각각 도달한 복수의 수신 시간을 식별하여 복수의 수신 시간 샘플을 구성하는 단계 - 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관됨 -, 및 상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 송신 시간 샘플의 선택된 일부, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 수신 시간 샘플의 선택된 일부에 기초하여 상기 클럭 주파수 오차를 추정하는 단계를 포함할 수 있다.In one aspect, a method for estimating a clock frequency error in a PTP slave (Precision Time Protocol slave) is provided. The method includes configuring a plurality of first delay time samples by determining a plurality of first delay times respectively associated with a plurality of sync messages transmitted sequentially from a PTP master to arrive at the PTP slave Identifying a plurality of transmission times of a plurality of sink messages sequentially transmitted from the PTP master to construct a plurality of transmission time samples, the plurality of transmission time samples being associated with the plurality of first delay time samples - determining a plurality of second delay times respectively associated with a plurality of delay request messages transmitted sequentially from the PTP slave to the PTP master to construct a plurality of second delay time samples, A plurality of delay times, in which a plurality of delay request messages sequentially transmitted from the PTP slave arrive at the PTP master, Wherein the plurality of receive time samples are each associated with the plurality of second delay time samples, and wherein the selected plurality of receive time samples comprises a selected portion of the plurality of first delay time samples, Estimating the clock frequency error based on a selected portion of time samples, a selected portion of the plurality of second delay time samples, and a selected portion of the plurality of receive time samples.
일 실시예에서, 상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 송신 시간 샘플의 선택된 일부, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 수신 시간 샘플의 선택된 일부에 기초하여 상기 클럭 주파수 오차를 추정하는 단계는, 상기 복수의 제1 지연 시간 샘플로부터 선택된 복수의 제1 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제1 샘플 평균값을 결정하는 단계, 상기 복수의 송신 시간 샘플로부터 선택되며 상기 복수의 제1 지연 시간 샘플 군과 각각 연관된 복수의 송신 시간 샘플 군에 대해 각각 평균을 취해 복수의 제2 샘플 평균값을 결정하는 단계, 상기 복수의 제2 지연 시간 샘플로부터 선택된 복수의 제2 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제3 샘플 평균값을 결정하는 단계, 상기 복수의 수신 시간 샘플로부터 선택되며 상기 복수의 제2 지연 시간 샘플 군과 각각 연관된 복수의 수신 시간 샘플 군에 대해 각각 평균을 취해 복수의 제4 샘플 평균값을 결정하는 단계, 상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계 - 상기 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계는, 상기 복수의 제1 샘플 평균값과 상기 복수의 제2 샘플 평균값을 이용하여 2차원 좌표계에서의 제1 군의 점들을 정의하고 상기 제1 군의 점들 중에서 적어도 하나의 아웃라이어(outlier)가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제1 샘플 평균값과 제2 샘플 평균값을 상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 각각 제거하여 상기 복수의 제1 샘플 및 상기 복수의 제2 샘플을 구성하는 단계를 포함함 -, 상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계 - 상기 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계는, 상기 복수의 제3 샘플 평균값과 상기 복수의 제4 샘플 평균값을 이용하여 2차원 좌표계에서의 제2 군의 점들을 정의하고 상기 제2 군의 점들 중에서 적어도 하나의 아웃라이어가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제3 샘플 평균값과 제4 샘플 평균값을 상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 각각 제거하여 상기 복수의 제3 샘플 및 상기 복수의 제4 샘플을 구성하는 단계를 포함함 -, 및 상기 복수의 제1 샘플 내지 상기 복수의 제4 샘플을 이용하여 상기 클럭 주파수 오차를 추정하는 단계를 포함할 수 있다.In one embodiment, a selected portion of the plurality of first delay time samples, a selected portion of the plurality of transmission time samples, a selected portion of the plurality of second delay time samples, and a selected portion of the plurality of receive time samples Wherein estimating the clock frequency error comprises: averaging each of a plurality of first delay time sample groups selected from the plurality of first delay time samples to determine a plurality of first sample average values, Determining a plurality of second sample mean values by averaging each of a plurality of transmission time sample groups selected from time samples and associated with each of the plurality of first delay time sample groups, Averaging each of a plurality of second delay time sample groups to determine a plurality of third sample average values, Determining a plurality of fourth sample mean values by averaging each of a plurality of receive time sample groups selected from time samples and associated with each of the plurality of second delay time sample groups, Constructing a plurality of first samples and a plurality of second samples from a second sample mean of the plurality of first samples and a plurality of second samples, Dimensional coordinate system using the second sample average value of the at least one outlier, and if there is at least one outlier among the points of the first group, The first sample average value and the second sample average value are respectively removed from the plurality of first sample average values and the plurality of second sample average values, Constructing a plurality of second samples, - constructing a plurality of third samples and a plurality of fourth samples from the plurality of third sample mean values and the plurality of fourth sample mean values, The step of constructing the third sample and the plurality of fourth samples may include defining a second group of points in the two dimensional coordinate system using the plurality of third sample average values and the plurality of fourth sample average values, A third sample average value and a fourth sample mean value corresponding to the at least one outlier are removed from the plurality of third sample average values and the plurality of fourth sample average values, respectively, when there is at least one outlier among the plurality And constructing the plurality of fourth samples, and using the plurality of first samples to the plurality of fourth samples to obtain the clock frequency error And a step of estimating.
일 실시예에서, 상기 복수의 제1 샘플 내지 상기 복수의 제4 샘플을 이용하여 상기 클럭 주파수 오차를 추정하는 단계는, 상기 복수의 제1 샘플과 상기 복수의 제2 샘플을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들을 제1 일차원 함수로 정의하는 단계, 상기 제1 일차원 함수의 기울기를 제1 기울기 값으로서 결정하는 단계, 상기 복수의 제3 샘플과 상기 복수의 제4 샘플을 이용하여 2차원 좌표계에서의 제4 군의 점들을 정의하고 상기 제4 군의 점들을 제2 일차원 함수로 정의하는 단계, 상기 제2 일차원 함수의 기울기를 제2 기울기 값으로서 결정하는 단계, 상기 복수의 제1 샘플에 대한 표준 편차를 제1 표준 편차로서 계산하는 단계, 상기 복수의 제3 샘플에 대한 표준 편차를 제2 표준 편차로서 계산하는 단계, 및 상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하는 단계를 포함할 수 있다.In one embodiment, the step of estimating the clock frequency error using the plurality of first samples to the plurality of fourth samples may include estimating the clock frequency error using the plurality of first samples and the plurality of second samples, Defining a third group of points in the third group and defining points of the third group as a first one-dimensional function, determining a slope of the first one-dimensional function as a first slope value, Defining a fourth group of points in a two-dimensional coordinate system using the plurality of fourth samples and defining the points of the fourth group as a second one-dimensional function, calculating a slope of the second one-dimensional function as a second slope value Calculating a standard deviation for the plurality of first samples as a first standard deviation, computing a standard deviation for the plurality of third samples as a second standard deviation, It may include a value group, the method comprising estimating the second slope value, the first standard deviation and said clock frequency error by using the second standard deviation.
일 실시예에서, 상기 방법은, 상기 복수의 제1 샘플에 대한 평균값을 제1 평균값으로서 계산하는 단계, 상기 복수의 제2 샘플에 대한 평균값을 제2 평균값으로서 계산하는 단계, 상기 복수의 제3 샘플에 대한 평균값을 제3 평균값으로서 계산하는 단계, 상기 복수의 제4 샘플에 대한 평균값을 제4 평균값으로서 계산하는 단계, 상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하는 단계를 더 포함할 수 있다.In one embodiment, the method further comprises calculating an average value for the plurality of first samples as a first average value, calculating an average value for the plurality of second samples as a second average value, Calculating a mean value for the sample as a third mean value, calculating an average value for the plurality of fourth samples as a fourth mean value, calculating the first mean value to the fourth mean value, the estimated clock frequency error, And estimating a clock time error using a value indicating a clock time error.
일 실시예에서, 상기 복수의 제1 지연 시간 샘플로부터 선택된 복수의 제1 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제1 샘플 평균값을 결정하는 단계는, 상기 복수의 제1 지연 시간 샘플을 Nsub 개의 제1 지연 시간 샘플로 각각 구성되는 복수의 제1 서브 블록으로 분할하는 단계 - 상기 Nsub는 자연수임 -, 적어도 상기 복수의 제1 서브 블록의 각각으로부터 Msub 개의 제1 지연 시간 샘플로 구성되는 제2 서브 블록을 구성하는 단계 - 상기 Msub는 상기 Nsub 보다 작은 자연수임 -, 상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계 - 상기 Nran은 자연수임 -, 및 상기 선택된 Nran 개의 제2 서브 블록의 각각에 포함된 Msub 개의 제1 지연 시간 샘플에 대한 평균값을 상기 해당 제1 샘플 평균값으로서 결정하는 단계를 포함할 수 있다.In one embodiment, the step of averaging each of a plurality of first delay time sample groups selected from the plurality of first delay time samples to determine a plurality of first sample average values comprises: N sub of first delay time sample comprising: dividing a plurality of the first sub-block composed of each said N sub is a natural number - at least a first plurality of M sub of first delay sample from each of the sub-block , Wherein M sub is a natural number smaller than the N sub , and selecting N ran second sub-blocks that are valid among the plurality of second sub-blocks, wherein the N ran is a sub- And determining an average value of M sub first delay time samples included in each of the selected N ran second sub-blocks as the corresponding first sample average value, have.
일 실시예에서, 상기 복수의 제2 지연 시간 샘플로부터 선택된 복수의 제2 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제3 샘플 평균값을 결정하는 단계는, 상기 복수의 제2 지연 시간 샘플을 Nsub 개의 제2 지연 시간 샘플로 각각 구성되는 복수의 제1 서브 블록으로 분할하는 단계 - 상기 Nsub는 자연수임 -, 적어도 상기 복수의 제1 서브 블록의 각각으로부터 Msub 개의 제2 지연 시간 샘플로 구성되는 제2 서브 블록을 구성하는 단계 - 상기 Msub는 상기 Nsub 보다 작은 자연수임 -, 상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계 - 상기 Nran은 자연수임 -, 및 상기 선택된 Nran 개의 제2 서브 블록의 각각에 포함된 Msub 개의 제2 지연 시간 샘플에 대한 평균값을 상기 해당 제3 샘플 평균값으로서 결정하는 단계를 포함할 수 있다.In one embodiment, the step of averaging each of a plurality of second delay time samples selected from the plurality of second delay time samples to determine a plurality of third sample average values comprises: N sub of second delay time, a sample comprising: dividing a plurality of the first sub-block composed of each said N sub is a natural number - at least a first plurality of M sub of second delay time samples from each of the sub-block , Wherein M sub is a natural number smaller than the N sub , and selecting N ran second sub-blocks that are valid among the plurality of second sub-blocks, wherein the N ran is a sub- And determining an average value of M sub second delay time samples included in each of the selected N ran second sub-blocks as the corresponding third sample average value. have.
일 실시예에서, 상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계는, 상기 복수의 제2 서브 블록의 각각에 포함된 Msub 개의 제1 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 해당 제2 서브 블록을 유효한 제2 서브 블록으로 결정하는 단계를 포함할 수 있다.In one embodiment, the step of selecting N ran second valid subblocks among the plurality of second subblocks may include determining a standard for M sub first delay time samples included in each of the plurality of second subblocks, And determining the second sub-block as a valid second sub-block if the deviation is smaller than the predetermined threshold value.
일 실시예에서, 상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계는, 상기 복수의 제2 서브 블록의 각각에 포함된 Msub 개의 제2 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 해당 제2 서브 블록을 유효한 제2 서브 블록으로 결정하는 단계를 포함할 수 있다.In one embodiment, the step of selecting valid N ran second sub-blocks among the plurality of second sub-blocks may include determining a standard for M sub second delay time samples included in each of the plurality of second sub- And determining the second sub-block as a valid second sub-block if the deviation is smaller than the predetermined threshold value.
일 실시예에서, 상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계는, 상기 제1 군의 점들의 횡축 좌표 값들을 상기 복수의 제2 샘플의 값들로 설정하고 상기 제1 군의 점들의 종축 좌표 값들을 상기 복수의 제1 샘플의 값들로 설정하는 단계, 및 상기 제1 군의 점들 중에서 상기 적어도 하나의 아웃라이어가 있는지의 여부를 RANSAC(Random Sample Consensus) 알고리즘을 이용하여 판별하는 단계를 포함할 수 있다.In one embodiment, constructing a plurality of first samples and a plurality of second samples from the plurality of first sample mean values and the plurality of second sample mean values may comprise: Setting the values of the plurality of first samples and the values of the plurality of first samples to the values of the vertical axis coordinates of the first group of points, and determining whether the at least one outlier is present among the first group of points (RANSAC) algorithm using the RANSAC ( Random Sample Consensus ) algorithm.
일 실시예에서, 상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계는, 상기 제2 군의 점들의 횡축 좌표 값들을 상기 복수의 제4 샘플의 값들로 설정하고 상기 제2 군의 점들의 종축 좌표 값들을 상기 복수의 제3 샘플의 값들로 설정하는 단계, 및 상기 제2 군의 점들 중에서 상기 적어도 하나의 아웃라이어가 있는지의 여부를 RANSAC 알고리즘을 이용하여 판별하는 단계를 포함할 수 있다.In one embodiment, the step of constructing the plurality of third samples and the plurality of fourth samples from the plurality of third sample average values and the plurality of fourth sample average values may further comprise: Setting values of a plurality of fourth samples and setting values of the vertical axis coordinates of the second group of points to values of the plurality of third samples and determining whether the at least one outlier is among the points of the second group And determining whether the RANSAC algorithm is used.
일 실시예에서, 상기 복수의 제1 샘플과 상기 복수의 제2 샘플을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들을 제1 일차원 함수로 정의하는 단계는, 상기 제3 군의 점들에 대해 커브 피팅 알고리즘(curve fitting algorithm)을 적용하는 단계를 포함할 수 있다.In one embodiment, defining a third group of points in a two-dimensional coordinate system using the plurality of first samples and the plurality of second samples and defining the points of the third group as a first one-dimensional function , And applying a curve fitting algorithm to the third group of points.
일 실시예에서, 상기 복수의 제3 샘플과 상기 복수의 제4 샘플을 이용하여 2차원 좌표계에서의 제4 군의 점들을 정의하고 상기 제4 군의 점들을 제2 일차원 함수로 정의하는 단계는, 상기 제4 군의 점들에 대해 커브 피팅 알고리즘을 적용하는 단계를 포함할 수 있다.In one embodiment, defining a fourth group of points in a two-dimensional coordinate system using the plurality of third samples and the plurality of fourth samples and defining the points of the fourth group as a second one- , And applying a curve fitting algorithm to the fourth group of points.
일 실시예에서, 상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하는 단계는,In one embodiment, estimating the clock frequency error using the first slope value, the second slope value, the first standard deviation, and the second standard deviation comprises:
- 여기서, E Freq 는 상기 클럭 주파수 오차를 나타내며, f t2t1 은 상기 제1 기울기 값을 나타내며, f t4t3 는 상기 제2 기울기 값을 나타내며, 는 상기 제1 표준 편차를 나타내며, 는 상기 제2 표준 편차를 나타냄 - 에 의해 상기 클럭 주파수 오차를 추정하는 단계를 포함할 수 있다.Wherein E Freq represents the clock frequency error, f t2t1 represents the first slope value, f t4t3 represents the second slope value, Represents the first standard deviation, And estimating the clock frequency error by the second standard deviation.
일 실시예에서, 상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하는 단계는,In one embodiment, estimating the clock time error using the first mean value to the fourth mean value, the estimated clock frequency error, and the current time value,
- 여기서, E Time 은 상기 클럭 시간 오차를 나타내며, E Freq 는 상기 클럭 주파수 오차를 나타내며, D t2t1 은 상기 제1 평균값을 나타내며, D t4t3 는 상기 제3 평균값을 나타내며, T 1 은 상기 제2 평균값을 나타내며, T 4 는 상기 제4 평균값을 나타내며, T current 는 상기 현재 시간을 나타내는 값임 - 에 의해 상기 클럭 시간 오차를 추정하는 단계를 포함할 수 있다.Wherein E Time represents the clock time error, E Freq represents the clock frequency error, D t2t1 represents the first average value, D t4t3 represents the third average value, T 1 represents the second average value, T 4 represents the fourth average value, T current represents the current time, And estimating the clock time error by the clock time error.
일 측면에서, PTP 슬레이브에서 클럭 주파수 오차를 추정하기 위한 장치가 제공된다. 본 장치는, 복수의 싱크 메시지와 각각 관련된 복수의 제1 지연 시간 샘플 및 복수의 송신 시간 샘플을 구성하고, 복수의 딜레이 요청 메시지와 각각 관련된 복수의 제2 지연 시간 샘플 및 복수의 수신 시간 샘플을 구성하도록 구성된 딜레이 검출부 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관되고, 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관됨 -, 및 상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 제1 지연 시간 샘플의 선택된 일부와 연관된 상기 복수의 송신 시간 샘플 중 일부의 송신 시간 샘플들, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 제2 지연 시간 샘플의 선택된 일부와 연관된 상기 복수의 수신 시간 샘플 중 일부의 수신 시간 샘플들에 기초하여 상기 클럭 주파수 오차를 추정하도록 구성된 클록 주파수 오차 추정부를 포함할 수 있다.In one aspect, an apparatus is provided for estimating a clock frequency error in a PTP slave. The apparatus comprises a plurality of first delay time samples and a plurality of transmission time samples each associated with a plurality of sink messages, a plurality of second delay time samples and a plurality of reception time samples, Wherein the plurality of transmission time samples are each associated with the plurality of first delay time samples and the plurality of reception time samples are respectively associated with the plurality of second delay time samples, A selected portion of the plurality of first delay time samples, a selected portion of the plurality of second delay time samples and a portion of the plurality of transmission time samples associated with the selected portion of the plurality of first delay time samples, Based on some of the plurality of received time samples associated with a selected portion of the plurality of second delay time samples And a clock frequency error estimator configured to estimate the clock frequency error.
일 측면에서, PTP 슬레이브에서 클럭 주파수 오차를 추정하기 위한 장치가 제공된다. 본 장치는, PTP 매스터으로부터 복수의 싱크 메시지가 송신된 복수의 송신 시간을 식별하여 복수의 송신 시간 샘플을 결정하고, 상기 PTP 매스터로부터 상기 PTP 슬레이브까지의 상기 복수의 싱크 메시지의 지연 시간들을 산출하여 복수의 제1 지연 시간 샘플을 결정하고, 상기 PTP 슬레이브로부터 상기 PTP 매스터까지의 복수의 딜레이 요청 메시지의 지연 시간들을 산출하여 복수의 제2 지연 시간 샘플을 결정하고, 상기 복수의 딜레이 요청 메시지가 상기 PTP 매스터에 도달한 복수의 수신 시간을 식별하여 복수의 수신 시간 샘플을 결정하도록 구성된 딜레이 검출부 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관되고, 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관되고, 상기 딜레이 검출부는 선정된 주기 마다 Nsub 개의 제1 지연 시간 샘플, Nsub 개의 송신 시간 샘플, Nsub 개의 제2 지연 시간 샘플 및 Nsub 개의 수신 시간 샘플을 출력하도록 구성되며, 상기 Nsub는 자연수임 -, 및 상기 선정된 주기 마다 상기 딜레이 검출부로부터 상기 Nsub 개의 제1 지연 시간 샘플 및 상기 Nsub 개의 송신 시간 샘플을 입력받아 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 출력하도록 구성된 제1 서브블록 필터 - 상기 Nran은 자연수임 -, 상기 선정된 주기 마다 상기 딜레이 검출부로부터 상기 Nsub 개의 제2 지연 시간 샘플 및 상기 Nsub 개의 수신 시간 샘플을 입력받아 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값을 출력하도록 구성된 제2 서브블록 필터, 상기 제1 서브블록 필터로부터 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 입력받아 Mran 개의 제1 샘플 및 Mran 개의 제2 샘플을 제공하도록 구성된 제1 RANSAC 필터, 상기 Mran 개의 제1 샘플과 상기 Mran 개의 제2 샘플을 이용하여 2차원 좌표계에서의 제1 군의 점들을 정의하고, 상기 제1 군의 점들을 제1 일차원 함수로 정의하고, 상기 제1 일차원 함수의 기울기를 제1 기울기 값으로서 결정하도록 구성된 제1 최소자승 곡선 맞춤 산출부 및 상기 Mran 개의 제1 샘플에 대한 표준 편차를 제1 표준 편차로서 결정하도록 구성된 제1 딜레이 및 시간 평균부를 포함하는 제1 서브블록 선택 및 블록 평균부 - 상기 Mran은 상기 Nran과 같거나 그 보다 작은 자연수임 -, 상기 제2 서브블록 필터로부터 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값을 입력받아 Mran 개의 제3 샘플 및 Mran 개의 제4 샘플을 제공하도록 구성된 제2 RANSAC 필터, 상기 Mran 개의 제3 샘플과 상기 Mran 개의 제4 샘플을 이용하여 2차원 좌표계에서의 제2 군의 점들을 정의하고, 상기 제2 군의 점들을 제2 일차원 함수로 정의하고, 상기 제2 일차원 함수의 기울기를 제2 기울기 값으로서 결정하도록 구성된 제2 최소자승 곡선 맞춤 산출부 및 상기 Mran 개의 제3 샘플에 대한 표준 편차를 제2 표준 편차로서 결정하도록 구성된 제2 딜레이 및 시간 평균부를 포함하는 제2 서브블록 선택 및 블록 평균부, 및 상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하도록 구성된 주파수 오차 및 시간 오차 추정부를 포함할 수 있다.In one aspect, an apparatus is provided for estimating a clock frequency error in a PTP slave. The present apparatus determines a plurality of transmission time samples by identifying a plurality of transmission times from which a plurality of sync messages are transmitted from the PTP master and calculates delay times of the plurality of sync messages from the PTP master to the PTP slave Determining a plurality of first delay time samples, determining a plurality of second delay time samples by calculating delay times of a plurality of delay request messages from the PTP master to the PTP master, A delay detector configured to identify a plurality of reception time samples arriving at a PTP master to determine a plurality of reception time samples, the plurality of transmission time samples being each associated with the plurality of first delay time samples, Are respectively associated with the plurality of second delay time samples, and the delay detector Each cycle N sub of the first delay time samples, N sub transmit time samples, N sub of second delay samples, and is configured to output the N sub reception time samples, the N sub is a natural number - and the selection The N sub first delay time samples and the N sub transmission time samples from the delay detector for each period, and to output N ran first sample average values and N ran second sample average values, filter-one, each cycle of the selected receiving the N sub of second delay samples and the N sub reception time samples from the delay detection unit N ran of third sample average value and the N ran - the N ran is a natural number A second sub-block filter configured to output a fourth sample mean value, a second sub-block filter configured to output N ran first sample mean values and N ran second sample mean values from the first sub- Power take M ran of first samples and M ran of the claim configured to provide a
일 실시예에서, 상기 제1 서브블록 필터는, 상기 Nsub 개의 제1 지연 시간 샘플 중 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플을 선택하도록 구성된 정렬 및 선택부 - 상기 Msub은 상기 Nsub 보다 작은 자연수임 -, 롤오버드 딜레이 저장부, 카운트 값(Rcnt)을 저장하기 위한 카운트 레지스터 - 상기 카운트 레지스터에 저장되는 카운트 값(Rcnt)의 초기값은 0임 -, 및 상기 Msub 개의 제1 지연 시간 샘플의 유효성을 검사하여 상기 Msub 개의 제1 지연 시간 샘플이 유효하다고 판단되는 경우 상기 Msub 개의 제1 지연 시간 샘플에 대해 평균을 취해 상기 제1 샘플 평균값을 결정하고, 상기 유효하다고 결정된 Msub 개의 제1 지연 시간 샘플에 연관된 Msub 개의 송신 시간 샘플에 대해 평균을 취해 상기 제2 샘플 평균값을 결정하고, 상기 Msub 개의 제1 지연 시간 샘플이 유효하지 않다고 판단되는 경우 상기 Msub 개의 제1 지연 시간 샘플을 상기 롤오버드 딜레이 저장부에 저장하고 상기 카운트 레지스터의 카운트 값(Rcnt)을 1 만큼 증가시키도록 구성된 표준편차 검사부를 포함할 수 있고, 상기 정렬 및 선택부는, 다음 주기에 Nsub 개의 제1 지연 시간 샘플이 입력되는 것에 응답하여 상기 카운트 레지스터의 카운트 값(Rcnt)을 검사하여 상기 카운트 레지스터의 카운트 값(Rcnt)이 0이 아닌 것으로 판단되는 경우 상기 다음 주기에 입력되는 Nsub 개의 제1 지연 시간 샘플 및 상기 롤오버드 딜레이 저장부에 저장된 Msub 개의 제1 지연 시간 샘플 중에서 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플을 선택하도록 더 구성될 수 있다.In one embodiment, the first sub-block filters, and the N sub of the alignment is configured the size of the first delay time samples to select a small M sub of first delay samples and selection unit, wherein the M sub is the N count register for storing, rollover de delay storage unit, the count value (R cnt) - - less than sub natural number initial value of the count value (R cnt) being stored in the count register is 0 -, and the M sub of first case to validate the delay sample the M sub of it is determined that the first delay sample is valid, the M sub of first determining a take an average of the first sample mean value for the delay sample, wherein effective said M sub-determined number of first delay taking the average of the M sub transmit time samples associated with the time samples and determining the second sample mean value, the M number of first sub delay samples If it is determined not valid the M sub of storing a first delay samples in the roll-over de delay storage unit, and may include a standard deviation checking unit configured to increase a count value (R cnt) of the count register by one , which the sorting and selecting unit, the following in response to which the N sub of first delay sample input to the period by checking the count value (R cnt) of the count register, the count value of the count register (
일 실시예에서, 상기 표준편차 검사부는, 상기 Msub 개의 제1 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 Msub 개의 제1 지연 시간 샘플이 유효하다고 판단하도록 더 구성될 수 있다.In one embodiment, the standard deviation inspection unit, the M sub of claim may be further arranged that the M sub of first delay sample is less than the threshold standard deviation is selected for the first delay time samples so as to determine that the effective have.
일 실시예에서, 상기 제1 RANSAC 필터는, 상기 Nran 개의 제1 샘플 평균값 및 상기 Nran 개의 제2 샘플 평균값을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들 중에서 적어도 하나의 아웃라이어가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제1 샘플 평균값과 제2 샘플 평균값을 상기 Nran 개의 제1 샘플 평균값 및 상기 Nran 개의 제2 샘플 평균값으로부터 각각 제거하여 상기 Mran 개의 제1 샘플 및 상기 Mran 개의 제2 샘플을 제공하도록 더 구성될 수 있다.In one embodiment, the first RANSAC filter, the N ran one of the first sample average value and the N ran of second sample mean value using the defined points of the third group in a two-dimensional coordinate system, and the third group If there is at least one outlier from the points to each removal of the first sample average value and the second sample average value corresponding to the at least one outlier from the N ran of first sample average value and the N ran of second sample mean value It ran the M number of first samples, and to provide a second sample of the M ran can be further adapted.
일 실시예에서, 상기 제1 딜레이 및 시간 평균부는, 상기 Mran 개의 제1 샘플에 대한 평균값을 제1 평균값으로서 결정하고 상기 Mran 개의 제2 샘플에 대한 평균값을 제2 평균값으로서 결정하도록 더 구성될 수 있고, 상기 제2 딜레이 및 시간 평균부는, 상기 Mran 개의 제3 샘플에 대한 평균값을 제3 평균값으로서 결정하고 상기 Mran 개의 제4 샘플에 대한 평균값을 제4 평균값으로서 결정하도록 더 구성될 수 있고, 상기 주파수 오차 및 시간 오차 추정부는, 상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하도록 더 구성될 수 있다.In one embodiment, the first delay time and the average unit configuration further determines the mean value for the M ran of the first sample as the first average value, and to determine a mean value for the M ran of the second sample into a second mean value may be, the second delay time and the average unit determines the mean value for the M ran of third samples as the third average value and is further configured to determine an average value for the three fourth sample the M ran as a fourth average value And the frequency error and time error estimator may be further configured to estimate a clock time error using a value indicating the first to fourth mean values, the estimated clock frequency error, and the current time.
일 실시예에서, 상기 주파수 오차 및 시간 오차 추정부는,In one embodiment, the frequency error and time error estimator include:
- 여기서, E Freq 는 상기 클럭 주파수 오차를 나타내며, f t2t1 은 상기 제1 기울기 값을 나타내며, f t4t3 는 상기 제2 기울기 값을 나타내며, 는 상기 제1 표준 편차를 나타내며, 는 상기 제2 표준 편차를 나타냄 - 에 의해 상기 클럭 주파수 오차를 추정하도록 더 구성될 수 있다.Wherein E Freq represents the clock frequency error, f t2t1 represents the first slope value, f t4t3 represents the second slope value, Represents the first standard deviation, May be further configured to estimate the clock frequency error by: < EMI ID = 1.0 >
일 실시예에서, 상기 주파수 오차 및 시간 오차 추정부는,In one embodiment, the frequency error and time error estimator include:
- 여기서, E Time 은 상기 클럭 시간 오차를 나타내며, E Freq 는 상기 클럭 주파수 오차를 나타내며, D t2t1 은 상기 제1 평균값을 나타내며, D t4t3 는 상기 제3 평균값을 나타내며, T 1 은 상기 제2 평균값을 나타내며, T 4 는 상기 제4 평균값을 나타내며, T current 는 상기 현재 시간을 나타내는 값임 - 에 의해 상기 클럭 시간 오차를 추정하도록 더 구성될 수 있다.Wherein E Time represents the clock time error, E Freq represents the clock frequency error, D t2t1 represents the first average value, D t4t3 represents the third average value, T 1 represents the second average value, T 4 represents the fourth average value, T current represents the current time, Lt; RTI ID = 0.0 > time-error < / RTI >
본 발명의 실시예들에 따르면, PTP 매스터와 PTP 슬레이브 간의 패킷 지연 시간에 대한 샘플들 중 크기 및 동질성에 따라 선택된 일부 지연 시간 샘플들만을 클럭 주파수 오차 및 클럭 시간 오차 추정에 이용함으로써 PTP 슬레이브에서의 클럭 주파수 오차 및 클럭 시간 오차 추정의 정확성과 연산 속도를 높일 수 있는 기술적 효과가 있다.According to embodiments of the present invention, only some of the delay time samples selected in accordance with the size and homogeneity of the samples for the packet delay time between the PTP master and the PTP slave are used for clock frequency error and clock time error estimation, There is a technical effect that accuracy of clock frequency error and clock time error estimation and calculation speed can be increased.
도 1은 PTP 프로토콜에 따라 PTP 슬레이브가 PTP 매스터와의 클럭 동기를 수행하기 위해 PTP 매스터와 메시지들을 교환하는 것을 예시한 도면이다.
도 2는 본 발명에 따라 PTP에 기반하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 장치의 일 실시예의 블록 구성도를 도시한 도면이다.
도 3은 본 발명에 따른 서브블록 필터의 일 실시예의 블록 구성도를 도시한 도면이다.
도 4는 본 발명에 따른 서브블록 선택 및 블록 평균부의 일 실시예의 블록 구성도를 도시한 도면이다.
도 5는 본 발명에 따른 주파수 및 시간 오차 추정부의 일 실시예의 블록 구성도를 도시한 도면이다.
도 6은 본 발명에 따라 PTP에 기반하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 방법의 일 실시예를 예시하기 위한 흐름도를 도시한 도면이다1 is a diagram illustrating that a PTP slave exchanges messages with a PTP master to perform clock synchronization with a PTP master in accordance with the PTP protocol.
2 is a block diagram of an embodiment of an apparatus for estimating clock frequency error and clock time error based on PTP according to the present invention.
3 is a block diagram of a sub-block filter according to an embodiment of the present invention.
FIG. 4 is a block diagram illustrating a sub-block selection and block averaging unit according to an embodiment of the present invention. Referring to FIG.
5 is a block diagram of a frequency and time error estimator according to an embodiment of the present invention.
6 is a flowchart illustrating an embodiment of a method for estimating a clock frequency error and a clock time error based on PTP according to the present invention
본 발명의 이점들과 특징들 그리고 이들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해 질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 본 실시예들은 단지 본 발명의 개시가 완전하도록 하며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려 주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of attaining them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. To fully disclose the scope of the invention to a person skilled in the art, and the invention is only defined by the scope of the claims.
본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 발명을 한정하려는 의도에서 사용된 것이 아니다. 예를 들어, 단수로 표현된 구성 요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성 요소를 포함하는 개념으로 이해되어야 한다. 또한, 본 발명의 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성이 배제되는 것은 아니다. 또한, 본 명세서에 기재된 실시예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미할 수 있다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present invention. For example, an element expressed in singular < Desc / Clms Page number 5 > terms should be understood to include a plurality of elements unless the context clearly dictates a singular value. In addition, in the specification of the present invention, it is to be understood that terms such as "include" or "have" are intended to specify the presence of stated features, integers, steps, operations, components, The use of the term does not exclude the presence or addition of one or more other features, numbers, steps, operations, elements, parts or combinations thereof. Further, in the embodiments described herein, 'module' or 'sub-unit' may mean at least one function or a functional part performing an operation.
덧붙여, 다르게 정의되지 않는 한 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 발명의 명세서에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, all terms used herein, including technical or scientific terms, unless otherwise defined, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be construed as meaning consistent with meaning in the context of the related art and may be interpreted in an ideal or overly formal sense unless explicitly defined in the specification of the present invention It does not.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 보다 상세히 설명한다. 다만, 이하의 설명에서는 본 발명의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, well-known functions or constructions will not be described in detail if they obscure the subject matter of the present invention.
도 1은 PTP 프로토콜에 따라 PTP 슬레이브가 PTP 매스터와의 클럭 동기를 수행하기 위해 PTP 매스터와 메시지들을 교환하는 것을 예시한 도면이다.1 is a diagram illustrating that a PTP slave exchanges messages with a PTP master to perform clock synchronization with a PTP master in accordance with the PTP protocol.
패킷 네트워크 상에서 클럭 주파수/시간 동기를 맞추기 위한 방법인 IEEE 1588 시스템은 크게 네트워크의 모든 노드(node)로 시간 정보를 포함하는 패킷을 송신하는 PTP 매스터(master)(110)와 PTP 매스터(110)가 송신한 시간 패킷(timing packets)을 이용하여 매스터의 클럭에 동기를 맞추는 PTP 슬레이브(slave)(120)로 구성된다. PTP 매스터(110)는 GPS(Global Positioning System) 또는 정확한 클럭원으로부터 시간 정보를 받아서 IEEE 1588 알고리즘에 있어서의 기본 클럭으로 사용하며, PTP 슬레이브(120)는 PTP 매스터(110)로부터 받은 시간 패킷에 포함된 시간 정보를 추출하여 내부 시간(local clock)을 매스터의 클럭에 맞추게 된다. 일 실시예에서, PTP 슬레이브(120)는 마이크로 셀, 피코 셀, 펨토 셀 등의 소형 셀일 수 있다.The IEEE 1588 system, which is a method for adjusting clock frequency / time synchronization on a packet network, includes a
IEEE 1588 시스템에서 PTP 매스터(110)와 PTP 슬레이브(120)는 일반적으로 오프셋 보정 과정과 전송 지연 측정 과정을 통해서 동기를 맞추게 된다.In the IEEE 1588 system, the
오프셋 보정(offset correction) 과정은 PTP 매스터(110)와 PTP 슬레이브(120) 간의 클럭 시간 오차(clock time error)를 보정하는 것으로서, 이를 위해 PTP 매스터(110)는, 도 1에 도시된 바와 같이 주기적으로 동기 메시지(synchronization message)인 싱크(Sync) 메시지를, 예컨대 2초 마다 PTP 슬레이브(120)로 전송한다. 이 경우 PTP 매스터(110)는 싱크 메시지를 전송한 정확한 시간을 하드웨어 또는 소프트웨어를 이용하여 측정하며, 측정된 송신 시간을 팔로우업(follow-up) 메시지를 이용하여 다시 한번 PTP 슬레이브(120)로 전송한다. PTP 슬레이브(120)는 싱크 메시지의 수신 시간을 하드웨어 또는 소프트웨어를 이용하여 측정하고, 싱크 메시지의 송신 시간과 수신 시간을 바탕으로 싱크 메시지에 대한 지연 시간을 계산한다.The offset correction process corrects a clock time error between the
PTP 매스터(110)와 PTP 슬레이브(120) 간의 전송 지연을 측정하기 위하여 PTP 슬레이브(120)는, 도 1에 도시된 바와 같이 PTP 매스터(110)로 딜레이 요청(Delay Request) 메시지를 주기적으로 전송하며, PTP 매스터(110)는 하드웨어 또는 소프트웨어를 이용하여 딜레이 요청 메시지의 수신 시간을 측정하여 측정된 딜레이 요청 메시지의 수신 시간을 딜레이 응답(Delay Response) 메시지를 통해 PTP 슬레이브(120)에 알린다. 딜레이 응답 메시지를 수신한 PTP 슬레이브(120)는 딜레이 요청 메시지의 송신 시간과 딜레이 요청 메시지의 수신 시간을 바탕으로 네트워크의 전송 지연을 측정한다.In order to measure the transmission delay between the
PTP 슬레이브(120)는 PTP 매스터(110)가 싱크 메시지를 송신한 시간, PTP 슬레이브(120)가 싱크 메시지를 수신한 시간, PTP 슬레이브(120)가 딜레이 요청 메시지를 송신한 시간 및 PTP 매스터(110)가 딜레이 요청 메시지를 수신한 시간을 이용해 아래의 수학식 1 및 수학식 2와 같이 PTP 매스터와 PTP 슬레이브 간의 클럭 시간 오차 및 전송 지연 시간을 각각 결정할 수 있다.The
여기서 TO는 클럭 시간 오차를 나타내며, t1, t2, t3 및 t4는 각각 PTP 매스터(110)가 싱크 메시지를 송신한 시간, PTP 슬레이브(120)가 싱크 메시지를 수신한 시간, PTP 슬레이브(120)가 딜레이 요청 메시지를 송신한 시간 및 PTP 매스터(110)가 딜레이 요청 메시지를 수신한 시간을 각각 나타낸다.T1, t2, t3 and t4 are the time when the
여기서 TD는 전송 지연 시간을 나타낸다.Where TD represents the transmission delay time.
PTP는 유선 패킷 네트워크 기반이므로 PTP 매스터(110)로부터 송신되는 싱크 메시지와 PTP 슬레이브로(120)부터 송신되는 딜레이 요청 메시지는 필연적으로 패킷 지연 시간을 가지며 이 지연 시간이 일정하지 않다(즉, 패킷 지연 시간들 간에 편차(PDV: Packet delay variance)가 있음). 이 때문에 위 수학식 1만으로는 클럭 주파수 오차 및 클럭 시간 오차를 정확히 추정하기가 어렵게 되고 그 정확한 추정을 위해서는 많은 수의 패킷 샘플이 필요하게 된다.Since the PTP is based on a wired packet network, a sink message transmitted from the
이하에서 설명되는 본 발명의 실시예들에서는 종래와 같이 PTP 매스터(110)와 PTP 슬레이브(120) 간의 패킷 지연 시간(싱크 패킷 지연 시간 및 딜레이 요청 패킷 지연 시간)에 대한 샘플들 모두를 이용하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 대신 위 샘플들로부터 크기 및 동질성에 따라 특정 샘플들을 선별하고 이를 이용하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 방법이 제공된다.In the exemplary embodiments of the present invention described below, all of the samples of the packet delay times (the sync packet delay time and the delay request packet delay time) between the
도 2는 본 발명에 따라 PTP에 기반하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 장치의 일 실시예의 블록 구성도를 도시한 도면이다.2 is a block diagram of an embodiment of an apparatus for estimating clock frequency error and clock time error based on PTP according to the present invention.
도 2에 도시된 바와 같이, 장치(200)는 PTP 매스터(110)로부터 복수의 싱크 패킷이 송신된 복수의 송신 시간(tm1(i))을 식별하여 복수의 송신 시간 샘플(t1(i))을 결정하고, 복수의 송신 시간(tm1(i))과 PTP 슬레이브(120)에서 복수의 싱크 패킷이 수신된 시간들(tm2(i))을 기초로 PTP 매스터(110)로부터 PTP 슬레이브(120)까지의 복수의 싱크 패킷들의 지연 시간들을 산출하여 아래 수학식 3에 따라 복수의 제1 지연 시간 샘플(dt2t1(i))을 결정하도록 구성된 딜레이 검출부(210)를 포함할 수 있다.2, the
여기서, dt2t1(i), tm2(i), tm1(i), t1(i) 및 i는 제1 지연 시간 샘플, 싱크 패킷이 PTP 슬레이브에서 수신된 시간, 싱크 패킷이 PTP 매스터에서 송신된 송신 시간, 송신 시간 샘플 및 샘플 인덱스를 각각 나타낸다.Here, d t2t1 (i), tm2 (i), tm1 (i), t1 (i), and i is a first delay time samples, the sync packet received from the PTP the slave time, sending a sync packet transmitted from the PTP master Time, transmission time sample, and sample index, respectively.
일 실시예에서, 복수의 송신 시간(tm1(i))의 식별은 싱크 메시지들에 포함된 타임 스탬프들을 확인함으로써 이루어질 수 있다. 다른 실시예에서, 복수의 송신 시간(tm1(i))의 식별은 팔로우업 메시지들에 포함된 타임 스탬프들을 확인함으로써 이루어질 수 있다.In one embodiment, identification of a plurality of transmission times tm1 (i) may be accomplished by identifying the timestamps included in the sync messages. In another embodiment, the identification of the plurality of transmission times tm1 (i) may be accomplished by identifying the timestamps included in the follow-up messages.
딜레이 검출부(210)는 PTP 슬레이브(120)에서 송신한 복수의 딜레이 요청 패킷이 PTP 매스터(110)에 도달한 복수의 수신 시간(tm4(i))을 식별하여 복수의 수신 시간 샘플(t4(i))을 결정하고, PTP 슬레이브(120)에서 복수의 딜레이 요청 패킷을 송신한 송신 시간들(tm3(i))과 복수의 수신 시간(tm4(i))을 기초로 PTP 슬레이브(120)로부터 PTP 매스터(110)까지의 복수의 딜레이 요청 패킷의 지연 시간들을 산출하여 복수의 제2 지연 시간 샘플(dt4t3(i))을 결정하도록 더 구성될 수 있다.The
여기서, dt4t3(i), tm4(i), tm3(i), t4(i) 및 i는 제2 지연 시간 샘플, 딜레이 요청 패킷이 PTP 매스터에 도달한 수신 시간, 딜레이 요청 패킷이 PTP 슬레이브에서 송신된 송신 시간, 수신 시간 샘플 및 샘플 인덱스를 각각 나타낸다.Here, d t4t3 (i), tm4 (i), tm3 (i), t4 (i), and i is a second delay time samples, delay request packet is the reception time, the delay request packets reaches a PTP master in PTP slave The transmitted time, the received time sample, and the sample index, respectively.
일 실시예에서, 복수의 수신 시간(tm4(i))의 식별은 PTP 매스터(110)에서 송신한 복수의 딜레이 응답 메시지에 포함된 타임 스탬프들을 확인함으로써 이루어질 수 있다. 여기서, 복수의 송신 시간 샘플(t1(i))은 상기 복수의 제1 지연 시간 샘플(dt2t1(i))과 각각 연관되고, 상기 복수의 수신 시간 샘플(t4(i))은 상기 복수의 제2 지연 시간 샘플(dt4t3(i))과 각각 연관된다. 딜레이 검출부(210)는 선정된 주기 마다 Nsub (자연수) 개의 제1 지연 시간 샘플(dt2t1(i)), Nsub 개의 송신 시간 샘플(t1(i)), Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 출력하도록 구성될 수 있다. 일 실시예에서, 선정된 주기는 장치(200) 내부의 시스템 클럭(도시되지 않음)의 클럭 주기 또는 동 클럭 주기의 배수에 해당하는 주기일 수 있다.In one embodiment, identification of the plurality of reception times tm4 (i) may be accomplished by identifying the timestamps contained in the plurality of delay response messages transmitted by the
장치(200)는 딜레이 검출부(210)에 접속된 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)를 더 포함할 수 있다. 제1 서브블록 필터(222)는 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 및 Nsub 개의 송신 시간 샘플(t1(i))을 입력 받아 그 중에서 동질성 요건을 만족하는 소정의 샘플들을 선별하여 선별된 샘플들을 평균화하는 기능을 수행하도록 구성될 수 있다. 즉, 제1 서브블록 필터(222)는 선정된 주기 마다 딜레이 검출부(210)로부터 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 및 Nsub 개의 송신 시간 샘플(t1(i))을 입력 받아 Nran (자연수) 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값 을 출력하도록 구성될 수 있다. 제2 서브블록 필터(224)는 Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 입력 받아 그 중에서 동질성 요건을 만족하는 소정의 샘플들을 선별하여 선별된 샘플들을 평균화하는 기능을 수행하도록 구성될 수 있다. 즉, 제2 서브블록 필터(224)는 선정된 주기 마다 딜레이 검출부(210)로부터 Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 입력 받아 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값 을 출력하도록 구성될 수 있다.The
장치(200)는 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)에 각각 접속된 제1 서브블록 선택 및 블록 평균부(252) 및 제2 서브블록 선택 및 블록 평균부(254)를 더 포함할 수 있다. 제1 서브블록 선택 및 블록 평균부(252) 및 제2 서브블록 선택 및 블록 평균부(254)의 각각은 입력되는 복수의 샘플 평균값 중에서 특이 값(들)을 제외하고 남은 선별된 샘플 평균값들을 이용해 기울기 값을 구하고 이들에 대한 평균값과 표준 편차를 계산하도록 구성될 수 있다. 제1 서브블록 선택 및 블록 평균부(252)는 제1 서브블록 필터(222)로부터 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 입력받아 제1 기울기값(ft2t1), 제1 표준 편차 제1 평균값(Dt2t1) 및 제2 평균값(T1)을 출력하도록 구성될 수 있다. 제2 서브블록 선택 및 블록 평균부(254)는 제2 서브블록 필터(224)로부터 Nran 개의 제3 샘플 평균값및 Nran 개의 제4 샘플 평균값을 입력받아 제2 기울기값(ft4t3), 제2 표준 편차,제3 평균값(Dt4t3) 및 제4 평균값(T4)을 출력하도록 구성될 수 있다.The
장치(200)는 제1 서브블록 선택 및 블록 평균부(252) 및 제2 서브블록 선택 및 블록 평균부(254)에 접속된 주파수 오차 및 시간 오차 추정부(270)를 더 포함할 수 있다. 주파수 오차 및 시간 오차 추정부(270)는 제1 기울기 값(ft2t1), 제2 기울기 값(ft4t3), 제1 표준 편차 및 제2 표준 편차 를 이용하여 클럭 주파수 오차(EFreq)를 추정하도록 구성될 수 있다. 주파수 오차 및 시간 오차 추정부(270)는 제1 평균값 내지 제4 평균값(Dt2t1, T1, Dt4t3, T4), 추정된 클럭 주파수 오차(EFreq) 및 현재 시간을 나타내는 값(Tcurrent)을 이용하여 클럭 시간 오차(ETime)를 추정하도록 더 구성될 수 있다.The
도 3은 본 발명에 따른 서브블록 필터의 일 실시예의 블록 구성도를 도시한 도면이다.3 is a block diagram of a sub-block filter according to an embodiment of the present invention.
도 3에 도시된 바와 같이, 제1 서브블록 필터(222)는 정렬 및 선택부(310), 표준편차 검사부(330) 및 롤오버드 딜레이 저장부(350)를 포함할 수 있다. 제1 서브블록 필터(222)는 카운트 레지스터(도시되지 않음)를 더 포함할 수 있다. 카운트 레지스터는 카운트 값(Rcnt)을 저장하기 위해 사용되며 그 초기값은 0으로 설정될 수 있다. 정렬 및 선택부(310)는 Nsub 개의 제1 지연 시간 샘플(dt2t1(i))을 크기에 따라 정렬하여 그 중 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 선택하도록 구성될 수 있다. 여기서 Msub은 Nsub 보다 작은 자연수이다. 일 실시예에서, Msub는 Nsub의 20~30% 정도로 설정될 수 있다. 표준편차 검사부(330)는 Msub 개의 제1 지연 시간 샘플(d't2t1(i))의 유효성을 검사하여 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하다고 판단되는 경우 아래 수학식 7에 따라 Msub 개의 제1 지연 시간 샘플(d't2t1(i))에 대해 평균을 취해 제1 샘플 평균값 을 결정하고, 아래 수학식 8에 따라 유효하다고 결정된 Msub 개의 제1 지연 시간 샘플(d't2t1(i))에 연관된 Msub 개의 송신 시간 샘플(t1'(j))에 대해 평균을 취해 제2 샘플 평균 을 결정하도록 구성될 수 있다.3, the first
일 실시예에서, 표준편차 검사부(330)는 Msub 개의 제1 지연 시간 샘플(d't2t1(i))에 대한 표준 편차가 선정된 임계값 보다 작을 경우 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하다고 판단할 수 있다. 일 실시예에서, 선정된 임계값은 사용자가 설정한 시간 오차 한계치(time error limit)일 수 있다. 시간 오차 한계는 본 발명의 클럭 시간 오차 추정 장치(200)를 구현함에 있어 만족되어야 하는 시간 오차의 범위를 기준으로 설정될 수 있다. 예를 들어, 본 발명의 장치(200)가 LTE TDD 시스템을 기반으로 하는 경우 시간 오차 한계치는 3 마치크로 초(micro second)일 수 있다. 반면 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하지 않다고 판단되는 경우, 표준편차 검사부(330)는 제1 샘플 평균값 및 제2 샘플 평균값을 결정하지 않고 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 롤오버드 딜레이 저장부(350)에 저장하고 카운트 레지스터의 카운트 값(Rcnt)을 1만큼 증가시키도록 더 구성될 수 있다. 후술하는 바와 같이 롤오버드 딜레이 저장부(350)에 저장된 제1 지연 시간 샘플들은 다음 주기에서의 제1 서브블록 필터(222)에서의 연산에 재사용된다.In one embodiment, if the standard deviation for the M sub first delay time samples (d ' t2t1 (i)) is less than the predetermined threshold, then the
정렬 및 선택부(310)는 다음 주기에 카운트 레지스터에 저장된 카운트 값(Rcnt)을 검사하도록 구성될 수 있다. 카운트 레지스터의 카운트 값(Rcnt)은 이전 주기(들)에서 정렬 및 선택부(310)에서 선택된 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하지 않아 롤오버드 딜레이 저장부(350)에 저장된 횟수이다. 전술한 바와 같이 카운트 값(Rcnt)의 초기값은 0이며 이 값은 표준편차 검사부(330)에서 해당 주기에서의 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하다고 판단될 때마다 0으로 다시 초기화될 수 있다. 반면 표준편차 검사부(330)에서 해당 주기의 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 유효하지 않다고 판단하여 이를 롤오버드 딜레이 저장부(350)로 전달할 때마다 카운트 값(Rcnt)은 1씩 증가될 수 있다. 카운트 값(Rcnt)은 사용자가 설정한 값인 최대 롤오버드 딜레이 횟수(RMAX)와 같은 값이 되면 다시 0으로 초기화될 수 있다. RMAX 값을 설정하여 카운트 값(Rcnt)을 초기화하는 이유는, 간혹 있을 수 있는 비정상적인 타임 스탬프 값으로 인해 어느 한 제1 지연 시간 샘플의 값이 비정상적으로 0에 근접하거나 음의 값을 가지게 된 경우 여러 주기에 걸쳐 이 값이 정렬 및 선택부(310)에서 반복적으로 선택되고 이 값과 같이 선택된 Msub 개의 제1 지연 시간 샘플(d't2t1(i))이 표준편차 검사부(330)에서 유효하지 않은 것으로 판단되어 계속 롤오버드 딜레이 저장부(350)에 저장되고 이에 따라 제1 서브블록 필터(222)에서의 연산이 종료되지 않을 수 있기 때문이다.The sorting and selecting
정렬 및 선택부(310)는, 카운트 레지스터의 카운트 값(Rcnt)이 0이 아닌 것으로 판단되는 경우 해당 주기에 입력되는 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 및 롤오버드 딜레이 저장부(350)에 저장된 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 함께 고려하여, 즉 총 Nsub + Msub 개의 제1 지연 시간 샘플을 고려하여 그 중에서 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 선택하도록 구성될 수 있다. 그러나 카운트 레지스터의 카운트 값(Rcnt)이 0인 것으로 판단되는 경우, 정렬 및 선택부(310)는 해당 주기에 입력되는 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 만을 고려하여 그 중에서 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 선택하도록 구성될 수 있다. 첫 번째 주기에서와 동일하게, 표준편차 검사부(330)는 해당 주기에서의 Msub 개의 제1 지연 시간 샘플(d't2t1(i))의 유효성을 검사하여 그 유효성 여부에 따라 제1 샘플 평균값및 제2 샘플 평균값을 결정하거나 Msub 개의 제1 지연 시간 샘플(d't2t1(i))을 롤오버드 딜레이 저장부(350)에 저장하고 카운트 레지스터의 카운트 값(Rcnt)을 1만큼 증가시킬 수 있다.Sorting and
이와 같이 제1 서브블록 필터(222)는 선정된 주기 마다 딜레이 검출부(210)로부터 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 및 Nsub 개의 송신 시간 샘플(t1(i))을 반복하여 입력 받고, 상술한 연산을 반복한 결과 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값 이 모두 결정되면 이를 출력하도록 구성될 수 있다.In this manner, the first sub-block filter 222 extracts N sub first delay time samples d t2t1 (i) and N sub transmission time samples t1 (i) from the
제2 서브블록 필터(224)는 선정된 주기 마다 Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 입력 받아 제1 서브블록 필터(222)에서와 동일한 방식으로 동작하도록 구성될 수 있다. 즉, 제2 서브블록 필터(224)는 선정된 주기 마다 딜레이 검출부(210)로부터 Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 입력 받아 제1 서브블록 필터(222)에서와 동일한 연산을 수행함으로써 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값 을 출력하도록 구성될 수 있다. 설명의 반복을 피하기 위해 제2 서브블록 필터(224)에 관한 상세한 설명은 생략한다.The second
도 4는 본 발명에 따른 서브블록 선택 및 블록 평균부의 일 실시예의 블록 구성도를 도시한 도면이다.FIG. 4 is a block diagram illustrating a sub-block selection and block averaging unit according to an embodiment of the present invention. Referring to FIG.
도 4에 도시된 바와 같이, 제1 서브블록 선택 및 블록 평균부(252)는 RANSAC(Random Sample Consensus) 필터(410), 최소자승 곡선 맞춤 산출부(420) 및 딜레이 및 시간 평균부(430)를 포함할 수 있다. RANSAC 필터(410)는 제1 서브블록 필터(222)로부터 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 입력 받아 Mran 개의 제1 샘플 및 Mran 개의 제2 샘플 을 제공하도록 구성될 수 있다. 여기서, Mran은 Nran 보다 작거나 같은 자연수이다. RANSAC 필터(410)는 RANSAC 알고리즘에 기반한 처리를 수행하도록 구현될 수 있다. 즉, RANSAC 필터(410)는, Nran 개의 제1 샘플 평균값 과 Nran 개의 제2 샘플 평균값을 이용하여 2차원 좌표계에서의 일 군의 점들을 정의하고 이 일 군의 점들 중에서 적어도 하나의 아웃라이어(outlier)가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제1 샘플 평균값과 제2 샘플 평균값을 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값 으로부터 각각 제거하여 Mran 개의 제1 샘플 및 Mran 개의 제2 샘플 을 제공하도록 구성될 수 있다.4, the first sub-block selection and block averaging
RANSAC 필터(410)는 RANSAC 알고리즘 기반하여 데이터 세트(data set)에서 아웃리어(outliers)를 판별하도록 구성될 수 있다. 여기서 데이터 세트에 포함되는 각 데이터는 Nran 개의 제1 샘플 평균값 중 어느 한 제1 샘플 평균값과 Nran 개의 제2 샘플 평균값 중 위 어느 한 제1 샘플 평균값에 연관된 제2 샘플 평균값의 쌍일 수 있다. 데이터 세트는 총 Nran 개의 데이터를 포함한다. RANSAC 필터(410)는 다음과 같은 연산 처리를 수행할 수 있다: 데이터 세트에서 원하는 함수를 구하는데 필요한 최소 개수의 데이터를 선택한다. 본 발명의 실시예에서와 같이 원하는 함수가 직선인 경우 데이터 세트에서 2개의 데이터를 선택할 수 있다. 선택한 데이터를 이용해 함수를 구한다. 이 함수로부터 나머지 데이터들이 떨어진 거리들을 구하고 이 거리들 중, 예컨대 사용자에 의해 설정되는 거리(T)보다 큰 거리가 있는 경우 해당 거리에 대응하는 데이터를 아웃리어로 판단하고 데이터 세트에서 제외하고 데이터 세트에 남아 있는 데이터의 수를 기록한다. 이런 식으로 임의의 데이터(2개의 데이터)를 선택하고 함수를 구한 후 아웃라이어가 아닌 데이터의 수를 기록하는 것을 N회 반복 수행하며 - N은 반복 횟수임 -, 반복 수행 후 아웃라이어가 가장 적은 함수를 찾아내어 이 때의 인라이어들(inliers)을 최종 데이터로 확정한다.The
RANSAC 필터(410)를 구현할 때 반복 횟수(N)와 거리(T)를 설정할 필요가 있다. 반복 횟수(N)는 수학식 9와 같이 나타낼 수 있다.It is necessary to set the number of iterations N and the distance T when implementing the
여기서, N, p, w 및 n은 각각 반복 횟수, 함수를 구하는데 이용된 데이터 이외의 데이터들이 모두 인라이어일 확률, 주어진 데이터가 인라이어일 확률 및 함수를 구하기 위해 임의로 선택할 데이터의 수를 나타낸다.Where N, p, w, and n represent the number of repetitions, the probability that all data other than the data used to determine the function are in-liers, the probability that the given data is in-liers and the number of data .
따라서, 예를 들어 p = 0.99, w = 0.5, n = 2로 상정하는 경우, 반복 횟수 N을 16으로 설정할 수 있다.Therefore, for example, when assuming that p = 0.99, w = 0.5, and n = 2, the number N of repetitions can be set to 16. [
거리(T)는 사용자가 설정한 주파수 오차 한계치(frequency error limit)에 의해 산출될 수 있다. 주파수 오차 한계치는 본 발명의 클럭 주파수 오차 추정 장치(200)를 구현함에 있어서 만족되어야 하는 클럭 주파수 오차의 범위를 기준으로 설정될 수 있다. 예를 들어, 본 발명의 장치(200)가 LTE 시스템에 기반하는 경우 주파수 오차 한계치는 250 ppb(parts per billion)일 수 있다. 클럭 주파수 오차는 특정 시간 동안 변화하는 딜레이의 크기(tm2 - tm1 또는 - (tm4 - tm3))이므로 이하의 수학식 10이 만족되어야 한다.The distance T can be calculated by a frequency error limit set by the user. The frequency error threshold may be set based on a range of clock frequency errors that must be satisfied in implementing the clock frequency
여기서, Frequency Error Limit는 주파수 오차 한계치를 나타내고, Δ delay는 시간에 따라 변화하는 제1 샘플 평균값(인라이어 데이터)의 크기이고, 이고 이다.Here, the Frequency Error Limit represents a frequency error limit value, DELTA delay is a size of a first sample mean value (insert data) that varies with time, ego to be.
RANSAC 필터(410)에서 선택된 데이터로부터 구한 Δ delay가 위 수학식 10을 만족하여야 하므로 가장 큰 Δ delay를 가질 때 위 수학식 10을 만족하면 된다. Δ delay가 최대값을 가지는 경우는 이 선택된 인라이어이고 이 최소값이며 이 최대값이며 두 데이터만 가지고도 구할 수 있는 1차원 함수가 RANSAC 필터(410) 후단의 최소자승 곡선 맞춤 산출부(420)에서 구한 1차원 함수와 같을 때이다. 이 경우에서 실제 클럭 주파수 오차를 0 ppb라 가정하면 과의 차이는 2 * 거리(T)이다. 따라서, RANSAC 필터(410)를 구현할 때 거리(T)를 아래의 수학식 11 및 수학식 12와 같이 정리할 수 있다.DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA DELTA If Δ delay has the maximum value Is the chosen inlier Is the minimum Dimensional function obtained by the minimum square curve
RANSAC 필터(410)는 이상과 같이 설정된 반복 횟수(N)와 거리(T)로 RANSAC 알고리즘을 수행함으로써 Mran 개의 제1 샘플 및 Mran 개의 제2 샘플 을 출력할 수 있다.
최소자승 곡선 맞춤 산출부(420)는 Mran 개의 제1 샘플과 Mran 개의 제2 샘플을 이용하여 2차원 좌표계에서의 일 군의 점들을 정의하고, 이 일 군의 점들을 1차원 함수로 정의하고, 이 1차원 함수의 기울기를 제1 기울기 값(ft2t1)으로서 결정하도록 구성될 수 있다. 일 실시예에서, 라인 피팅 알고리즘(line fitting algorithm)을 이용하여 일 군의 점들을 1차원 함수로 정의할 수 있다. 시간에 따른 딜레이의 변화량이 클럭 주파수 오차이므로 제1 기울기 값(ft2t1)은 PTP 매스터(110)에서 PTP 슬레이브(120)까지의 딜레이 변화량에 의해 추정한 클럭 주파수 오차가 된다.Least-squares curve fit calculation section 420 ran M number of first samples And M ran second samples Dimensional coordinate system, defining points of the group in the two-dimensional coordinate system as a one-dimensional function, and determining the slope of the one-dimensional function as the first slope value (f t2t1 ) have. In one embodiment, a group of points can be defined as a one-dimensional function using a line fitting algorithm. The first slope value f t2t1 is a clock frequency error estimated by the amount of delay change from the
딜레이 및 시간 평균부(430)는 Mran 개의 제1 샘플 에 대한 표준 편차를 제1 표준 편차 로서 결정하고, Mran 개의 제1 샘플에 대해 평균을 취해 제1 평균값(Dt2t1)을 출력하고, Mran 개의 제2 샘플 에 대해 평균을 취해 제2 평균값(T1)을 출력하도록 구성될 수 있다.And delay time-average unit 430 ran M number of first samples The first standard deviation < RTI ID = 0.0 > And M ran of the first samples And outputs a first average value (D t2t1 ), and outputs M ran second samples And output a second average value T 1 .
제2 서브블록 선택 및 블록 평균부(254)는 제2 서브블록 필터(224)로부터 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값을 입력 받아 제1 서브블록 선택 및 블록 평균부(252)에서와 동일한 연산 처리를 수행함으로써 제2 기울기값(ft4t3), 제2 표준 편차 , 제3 평균값(Dt4t3) 및 제4 평균값(T4)을 출력하도록 구성될 수 있다. 제2 기울기값(ft4t3)은 PTP 슬레이브(120)에서 PTP 매스터(110)까지의 딜레이 변화량에 의해 추정한 클럭 주파수 오차가 된다. 제2 서브블록 선택 및 블록 평균부(254)의 구성은 제1 서브블록 선택 및 블록 평균부(252)의 구성과 동일하므로 그 상세한 설명은 생략한다.The second sub-block selection and block averaging
도 5는 본 발명에 따른 주파수 및 시간 오차 추정부의 일 실시예의 블록 구성도를 도시한 도면이다.5 is a block diagram of a frequency and time error estimator according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 주파수 및 시간 오차 추정부(270)는 주파수 오차 추정부(515) 및 시간 오차 추정부(517)를 포함할 수 있다. 주파수 오차 추정부(515)는 제1 서브블록 선택 및 블록 평균부(252)로부터 제1 기울기 값(ft2t1) 및 제1 표준 편차를 입력 받고 제2 서브블록 선택 및 블록 평균부(254)로부터 제2 기울기 값(ft4t3) 및 제2 표준 편차를 입력 받아 최종 클럭 주파수 오차(EFreq)를 아래의 수학식 13에 의해 추정할 수 있다.As shown in FIG. 5, the frequency and
표준 편차가 작다는 것은 데이터의 집합이 더 균일하고 신뢰성이 있다는 뜻이므로, 제1 기울기 값(ft2t1)과 제2 기울기 값(ft4t3)에 표준 편차에 따른 가중치를 주어 클럭 주파수 오차를 구한다. 제2 기울기 값(ft4t3)은 PTP 슬레이브(120)에서 PTP 매스터(110)까지의 딜레이 변화량에 의해 추정한 주파수 오차이므로 제1 기울기 값(ft2t1)과의 조합하기 위해 음(-)의 값을 취한다.The fact that the standard deviation is small means that the set of data is more uniform and reliable. Therefore, the weighting factor according to the standard deviation is given to the first slope value f t2t1 and the second slope value f t4t3 to obtain the clock frequency error. Since the second slope value f t4t3 is a frequency error estimated by the amount of delay change from the
시간 오차 추정부(517)는 주파수 오차 추정부(515)로부터 클럭 주파수 오차((EFreq)를 입력 받고, 제1 서브블록 선택 및 블록 평균부(252)로부터 제1 평균값(Dt2t1) 및 제2 평균값(T1)을 입력 받고, 제2 서브블록 선택 및 블록 평균부(254)로부터 제3 평균값(Dt4t3) 및 제4 평균값(T4)을 입력 받아 최종 시간 오차를 추정하도록 구성될 수 있다. 제1 및 제2 서브블록 선택 및 블록 평균부(252, 254)로부터 입력 받은 값들은 평균값들이므로 이 값들로만 시간 오차를 추정하면 주파수 오차에 따른 타임 드리프트(time drift)가 발생한다. 따라서, 시간 오차 추정부(517)에서 연산이 수행되는 시간(Tcurrent)과 평균화된 시간((T1 + T4)/2)의 차이에 의한 주파수 오차에 따른 타임 드리프트를 보정할 필요가 있다. 따라서, 시간 오차 추정부(517)는 아래의 수학식 14에 따라 최종 시간 오차를 추정할 수 있다.The
이상의 설명에서는 장치(200)의 구성부들/회로들의 각각을 분리된 별도의 구성 요소로서 설명하였으나, 장치(200)의 모든 구성부들/회로들을 또는 그 일부를 ASIC(Application Specific Integrated Circuit), PLD(Programmable Logic Device) 또는 FPGA(Field-Programmable Gate Array) 설계 방식에 기반하여 단일의 IC 칩으로 구현할 수 있다. 다양한 실시예에서, 장치(200)를 임베디드 시스템(embedded system) 용의 SoC(system on chip) 칩으로 구현하는 것도 가능하다.Although each of the components / circuits of the
도 6은 본 발명에 따라 PTP에 기반하여 클럭 주파수 오차 및 클럭 시간 오차를 추정하는 방법의 일 실시예를 예시하기 위한 흐름도를 도시한 도면이다.6 is a flow chart illustrating an embodiment of a method for estimating clock frequency error and clock time error based on PTP in accordance with the present invention.
본 발명의 방법은 제1 및 제2 서브블록 필터(222, 224)의 크기(Nsub), 제1 및 제2 서브블록 필터(222, 224)의 정렬 및 선택부(310)에서 선택될 샘플들의 수(Msub), 제1 및 제2 서브블록 선택 및 블록 평균부(252, 254)의 크기(Nran), 최대 롤오버드 딜레이 횟수(RMAX), 시간 오차 한계치 및 주파수 오차 한계치를 설정하는 단계(S610)로부터 시작된다. 단계(S615)에서는, 제1 서브블록 필터(222)가 딜레이 검출부(210)로부터 Nsub 개의 제1 지연 시간 샘플(dt2t1(i)) 및 Nsub 개의 송신 시간 샘플(t1(i))을 입력 받고, 제2 서브블록 필터(224)가 딜레이 검출부(210)로부터 Nsub 개의 제2 지연 시간 샘플(dt4t3(i)) 및 Nsub 개의 수신 시간 샘플(t4(i))을 입력 받는다. 단계(S620)에서는, 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)의 각각에서 카운트 레지스터의 카운트 값(Rcnt)이 0인지를 검사한다. 단계(S620)에서의 검사 결과 카운트 레지스터의 카운트 값(Rcnt)이 0인 것으로 판단되는 경우, 단계(S625)에서 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)의 각각이 Nsub 개의 지연 시간 샘플 중에서 최소 딜레이를 갖는 Msub 개의 지연 시간 샘플을 선택한다. 단계(S620)에서의 검사 결과 카운트 레지스터의 카운트 값(Rcnt)이 0이 아닌 것으로 판단되는 경우, 단계(S630)에서 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)의 각각이 Nsub + Msub 개의 지연 시간 샘플 중에서 최소 딜레이를 갖는 Msub 개의 지연 시간 샘플을 선택한다.The method of the present invention is similar to the method of the first embodiment except that the size (N sub ) of the first and second
단계(S635)에서는, 제1 서브블록 필터(222) 및 제2 서브블록 필터(224)의 각각에서 선택된 Msub 개의 지연 시간 샘플에 대한 표준 편차가 시간 오차 한계치 보다 작은지를 검사한다. 단계(S635)에서의 검사 결과 표준 편차가 시간 오차 한계치 보다 작지 않은 것으로 판단되는 경우, 단계(S640)에서 카운트 값(Rcnt)이 RMAX 보다 큰지를 검사한다. 단계(S640)에서 카운트 값(Rcnt)이 RMAX 보다 큰 것으로 판단되는 경우, 단계(S645)에서 카운트 값(Rcnt)을 0으로 초기화하고, 단계(S650)에서 Msub 개의 지연 시간 샘플을 롤오버드 딜레이 저장부(350)에 저장하고 단계(S615)로 복귀한다. 한편 단계(S640)에서 카운트 값(Rcnt)이 RMAX 보다 크지 않은 것으로 판단되는 경우, 단계(S650)에서 Msub 개의 지연 시간 샘플을 롤오버드 딜레이 저장부(350)에 저장하고 단계(S615)로 복귀한다.In step S635, it is checked whether the standard deviation of M sub delay time samples selected in each of the first
한편 단계(S635)에서의 검사 결과 표준 편차가 시간 오차 한계치 보다 작은 것으로 판단되는 경우, 단계(S655)에서 제1 서브블록 필터(222)가 Msub 개의 제1 지연 시간 샘플 에 대한 제1 샘플 평균값 및 Msub 개의 제1 지연 시간 샘플(d't2t1(i))과 각각 연관된 Msub 개의 송신 시간 샘플(t1'(j))에 대한 제2 샘플 평균값 을 결정하고 카운트 값(Rcnt)을 0으로 초기화한다. 또한 본 단계에서는 제2 서브블록 필터(224)가 Msub 개의 제2 지연 시간 샘플(d't4t3(i))에 대한 제3 샘플 평균값및 Msub 개의 제2 지연 시간 샘플(d't4t3(i))과 각각 연관된 Msub 개의 수신 시간 샘플(t4'(j))에 대한 제4 샘플 평균값 을 결정하고 카운트 값(Rcnt)을 0으로 초기화한다. 단계(S660)에서는 제1 서브블록 필터(222)에서 제1 샘플 평균값 및 제2 샘플 평균값이 각각 Nran 개 만큼 결정되었는지의 여부가 검사된다. 또한 본 단계에서는 제2 서브블록 필터(224)에서 제3 샘플 평균값 및 제4 샘플 평균값이 각각 Nran 개 만큼 결정되었는지의 여부가 검사된다. 단계(S660)에서의 검사 결과 각 샘플 평균값이 Nran 개 만큼 결정되지 않은 것으로 판단되는 경우, 프로세스는 단계(S615)로 복귀한다. 한편 단계(S660)에서의 검사 결과 각 샘플 평균값이 Nran 개 만큼 결정된 것으로 판단되는 경우, 단계(S665)에서 제1 및 제2 서브블록 선택 및 블록 평균부(252, 254)에 의한 처리가 수행되고 단계(S670)에서 주파수 오차 및 시간 오차 추정부(270)에 의해 최종 클럭 주파수 오차 및 최종 클럭 시간 오차가 추정된다.If it is determined in step S635 that the standard deviation is smaller than the time error threshold, in step S655, the first
이상의 설명에 있어서 어떤 구성 요소가 다른 구성 요소에 접속되거나 결합된다는 기재의 의미는 당해 구성 요소가 그 다른 구성 요소에 직접적으로 접속되거나 결합된다는 의미뿐만 아니라 이들이 그 사이에 개재된 하나 또는 그 이상의 타 구성 요소를 통해 접속되거나 결합될 수 있다는 의미를 포함하는 것으로 이해되어야 한다. 이외에도 구성 요소들 간의 관계를 기술하기 위한 용어들(예컨대, '간에', '사이에' 등)도 유사한 의미로 해석되어야 한다.In the above description, the meaning that an element is connected to or coupled to another element means that the element is directly connected or coupled to the other element, as well as the meaning of one or more other elements interposed therebetween Quot; element " may < / RTI > In addition, terms (e.g., 'between', 'between', etc.) for describing the relationship between components should be interpreted in a similar sense.
본원에 개시된 실시예들에 있어서, 도시된 구성 요소들의 배치는 발명이 구현되는 환경 또는 요구 사항에 따라 달라질 수 있다. 예컨대, 일부 구성 요소가 생략되거나 몇몇 구성 요소들이 통합되어 하나로 실시될 수 있다. 또한 일부 구성 요소들의 배치 순서 및 연결이 변경될 수 있다.In the embodiments disclosed herein, the arrangement of the components shown may vary depending on the environment or requirements in which the invention is implemented. For example, some components may be omitted or some components may be integrated into one. In addition, the arrangement order and connection of some components may be changed.
이상에서는 본 발명의 다양한 실시예들에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예들에 한정되지 아니하며, 상술한 실시예들은 첨부하는 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양하게 변형 실시될 수 있음은 물론이고, 이러한 변형 실시예들이 본 발명의 기술적 사상이나 범위와 별개로 이해되어져서는 아니 될 것이다. 따라서, 본 발명의 기술적 범위는 오직 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention. Accordingly, the technical scope of the present invention should be determined only by the appended claims.
110: PTP 매스터
120: PTP 슬레이브
200: 클럭 주파수 오차 및 클럭 시간 오차 추정 장치
210: 딜레이 검출부
222: 제1 서브블록 필터
224: 제2 서브블록 필터
252: 제1 서브블록 선택 및 블록 평균부
254: 제2 서브블록 선택 및 블록 평균부
270: 주파수 오차 및 시간 오차 추정부
310: 정렬 및 선택부
330: 표준편차 검사부
350: 롤오버드 딜레이 저장부
410: RANSAC 필터
420: 최소자승 곡선맞춤 산출부
430: 딜레이 및 시간 평균부
515: 주파수 오차 추정부
517: 시간 오차 추정부110: PTP master
120: PTP slave
200: Clock frequency error and clock time error estimation device
210: delay detector
222: first sub-block filter
224: second sub-block filter
252: First sub-block selection and block averaging
254: second sub-block selection and block averaging
270: frequency error and time error estimating unit
310: alignment and selection unit
330: Standard deviation checker
350: Rollover delay storage unit
410: RANSAC filter
420: least square curve fitting calculation unit
430: delay and time averaging
515: Frequency error estimator
517: time error estimating unit
Claims (22)
PTP 매스터(PTP master)로부터 순차로 송신된 복수의 싱크 메시지(sync messages)이 상기 PTP 슬레이브에 도달하는데 각각 걸린 복수의 제1 지연 시간을 결정하여 복수의 제1 지연 시간 샘플을 구성하는 단계,
상기 PTP 매스터로부터 순차로 송신된 복수의 싱크 메시지의 복수의 송신 시간을 식별하여 복수의 송신 시간 샘플을 구성하는 단계 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관됨 -,
상기 PTP 슬레이브로부터 순차로 송신된 복수의 딜레이 요청 메시지(delay request messages)이 상기 PTP 매스터에 도달하는데 각각 걸린 복수의 제2 지연 시간을 결정하여 복수의 제2 지연 시간 샘플을 구성하는 단계,
상기 PTP 슬레이브로부터 순차로 송신된 복수의 딜레이 요청 메시지가 상기 PTP 매스터에 각각 도달한 복수의 수신 시간을 식별하여 복수의 수신 시간 샘플을 구성하는 단계 - 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관됨 -, 및
상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 송신 시간 샘플의 선택된 일부, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 수신 시간 샘플의 선택된 일부에 기초하여 상기 클럭 주파수 오차를 추정하는 단계를 포함하는 클럭 주파수 오차 추정 방법.A method for estimating a clock frequency error in a PTP slave (Precision Time Protocol slave)
Configuring a plurality of first delay time samples by determining a plurality of first delay times respectively associated with a plurality of sync messages sequentially transmitted from a PTP master to reach the PTP slave,
Identifying a plurality of transmission times of a plurality of sink messages sequentially transmitted from the PTP master to construct a plurality of transmission time samples, each of the plurality of transmission time samples being associated with the plurality of first delay time samples, ,
Configuring a plurality of second delay time samples by determining a plurality of second delay times each time a plurality of delay request messages sequentially transmitted from the PTP slave arrive at the PTP master,
Identifying a plurality of reception times in which a plurality of delay request messages sequentially transmitted from the PTP slave arrive at the PTP master to construct a plurality of reception time samples, Each associated with a delay time sample -, and
Based on a selected portion of the plurality of first delay time samples, a selected portion of the plurality of transmission time samples, a selected portion of the plurality of second delay time samples, and a selected portion of the plurality of receive time samples, And estimating a clock frequency error.
상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 송신 시간 샘플의 선택된 일부, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 수신 시간 샘플의 선택된 일부에 기초하여 상기 클럭 주파수 오차를 추정하는 단계는
상기 복수의 제1 지연 시간 샘플로부터 선택된 복수의 제1 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제1 샘플 평균값을 결정하는 단계,
상기 복수의 송신 시간 샘플로부터 선택되며 상기 복수의 제1 지연 시간 샘플 군과 각각 연관된 복수의 송신 시간 샘플 군에 대해 각각 평균을 취해 복수의 제2 샘플 평균값을 결정하는 단계,
상기 복수의 제2 지연 시간 샘플로부터 선택된 복수의 제2 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제3 샘플 평균값을 결정하는 단계,
상기 복수의 수신 시간 샘플로부터 선택되며 상기 복수의 제2 지연 시간 샘플 군과 각각 연관된 복수의 수신 시간 샘플 군에 대해 각각 평균을 취해 복수의 제4 샘플 평균값을 결정하는 단계,
상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계 - 상기 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계는, 상기 복수의 제1 샘플 평균값과 상기 복수의 제2 샘플 평균값을 이용하여 2차원 좌표계에서의 제1 군의 점들을 정의하고 상기 제1 군의 점들 중에서 적어도 하나의 아웃라이어(outlier)가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제1 샘플 평균값과 제2 샘플 평균값을 상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 각각 제거하여 상기 복수의 제1 샘플 및 상기 복수의 제2 샘플을 구성하는 단계를 포함함 -,
상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계 - 상기 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계는, 상기 복수의 제3 샘플 평균값과 상기 복수의 제4 샘플 평균값을 이용하여 2차원 좌표계에서의 제2 군의 점들을 정의하고 상기 제2 군의 점들 중에서 적어도 하나의 아웃라이어가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제3 샘플 평균값과 제4 샘플 평균값을 상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 각각 제거하여 상기 복수의 제3 샘플 및 상기 복수의 제4 샘플을 구성하는 단계를 포함함 -, 및
상기 복수의 제1 샘플 내지 상기 복수의 제4 샘플을 이용하여 상기 클럭 주파수 오차를 추정하는 단계를 포함하는 클럭 주파수 오차 추정 방법.The method according to claim 1,
Based on a selected portion of the plurality of first delay time samples, a selected portion of the plurality of transmission time samples, a selected portion of the plurality of second delay time samples, and a selected portion of the plurality of receive time samples, The step of estimating
Averaging each of a plurality of first delay time sample groups selected from the plurality of first delay time samples to determine a plurality of first sample average values,
Averaging each of a plurality of transmission time sample groups selected from the plurality of transmission time samples and each associated with the plurality of first delay time sample groups to determine a plurality of second sample average values,
Averaging each of a plurality of second delay time sample groups selected from the plurality of second delay time samples to determine a plurality of third sample average values,
Determining a plurality of fourth sample mean values by averaging each of a plurality of receive time sample groups selected from the plurality of receive time samples and associated with each of the plurality of second delay time sample groups,
Constructing a plurality of first samples and a plurality of second samples from the plurality of first sample mean values and the plurality of second sample mean values, wherein configuring the plurality of first samples and the plurality of second samples comprises: A first group of points in a two-dimensional coordinate system is defined using the plurality of first sample average values and the plurality of second sample average values, and if there is at least one outlier among the first group of points, A first sample average value and a second sample average value corresponding to at least one outlier are respectively removed from the plurality of first sample average values and the plurality of second sample average values to obtain the plurality of first samples and the plurality of second samples Comprising the steps of:
Constructing a plurality of third samples and a plurality of fourth samples from the plurality of third sample mean values and the plurality of fourth sample mean values, wherein configuring the plurality of third samples and the plurality of fourth samples comprises: A second group of points in a two-dimensional coordinate system is defined using the plurality of third sample average values and the plurality of fourth sample average values, and if there is at least one outlier among the points of the second group, The third sample average value and the fourth sample average value corresponding to the outlier are respectively removed from the plurality of third sample average values and the plurality of fourth sample average values to construct the plurality of third samples and the plurality of fourth samples Comprising steps < RTI ID = 0.0 >
And estimating the clock frequency error using the plurality of first samples to the plurality of fourth samples.
상기 복수의 제1 샘플 내지 상기 복수의 제4 샘플을 이용하여 상기 클럭 주파수 오차를 추정하는 단계는
상기 복수의 제1 샘플과 상기 복수의 제2 샘플을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들을 제1 일차원 함수로 정의하는 단계,
상기 제1 일차원 함수의 기울기를 제1 기울기 값으로서 결정하는 단계,
상기 복수의 제3 샘플과 상기 복수의 제4 샘플을 이용하여 2차원 좌표계에서의 제4 군의 점들을 정의하고 상기 제4 군의 점들을 제2 일차원 함수로 정의하는 단계,
상기 제2 일차원 함수의 기울기를 제2 기울기 값으로서 결정하는 단계,
상기 복수의 제1 샘플에 대한 표준 편차를 제1 표준 편차로서 계산하는 단계,
상기 복수의 제3 샘플에 대한 표준 편차를 제2 표준 편차로서 계산하는 단계, 및
상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.3. The method of claim 2,
And estimating the clock frequency error using the plurality of first samples to the plurality of fourth samples
Defining points of a third group in a two-dimensional coordinate system using the plurality of first samples and the plurality of second samples and defining the points of the third group as a first one-dimensional function,
Determining a slope of the first one-dimensional function as a first slope value,
Defining points of a fourth group in a two-dimensional coordinate system using the plurality of third samples and the plurality of fourth samples and defining the points of the fourth group as a second one-dimensional function,
Determining a slope of the second one-dimensional function as a second slope value,
Calculating a standard deviation for the plurality of first samples as a first standard deviation,
Calculating a standard deviation for the plurality of third samples as a second standard deviation, and
Estimating the clock frequency error using the first slope value, the second slope value, the first standard deviation, and the second standard deviation.
상기 복수의 제1 샘플에 대한 평균값을 제1 평균값으로서 계산하는 단계,
상기 복수의 제2 샘플에 대한 평균값을 제2 평균값으로서 계산하는 단계,
상기 복수의 제3 샘플에 대한 평균값을 제3 평균값으로서 계산하는 단계,
상기 복수의 제4 샘플에 대한 평균값을 제4 평균값으로서 계산하는 단계,
상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하는 단계를 더 포함하는, 클럭 주파수 오차 추정 방법.The method of claim 3,
Calculating a mean value for the plurality of first samples as a first mean value,
Calculating an average value for the plurality of second samples as a second average value,
Calculating a mean value for the plurality of third samples as a third mean value,
Calculating a mean value for the plurality of fourth samples as a fourth mean value,
Estimating a clock time error using a value indicating the first mean value to the fourth mean value, the estimated clock frequency error, and a current time.
상기 복수의 제1 지연 시간 샘플로부터 선택된 복수의 제1 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제1 샘플 평균값을 결정하는 단계는
상기 복수의 제1 지연 시간 샘플을 Nsub 개의 제1 지연 시간 샘플로 각각 구성되는 복수의 제1 서브 블록으로 분할하는 단계 - 상기 Nsub는 자연수임 -,
적어도 상기 복수의 제1 서브 블록의 각각으로부터 Msub 개의 제1 지연 시간 샘플로 구성되는 제2 서브 블록을 구성하는 단계 - 상기 Msub는 상기 Nsub 보다 작은 자연수임 -,
상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계 - 상기 Nran은 자연수임 -, 및
상기 선택된 Nran 개의 제2 서브 블록의 각각에 포함된 Msub 개의 제1 지연 시간 샘플에 대한 평균값을 상기 해당 제1 샘플 평균값으로서 결정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.3. The method of claim 2,
Determining a plurality of first sample mean values by averaging each of a plurality of first delay time sample groups selected from the plurality of first delay time samples,
Dividing the plurality of first delay time samples into a plurality of first subblocks each comprising N sub first delay time samples, where N sub is a natural number,
A second sub-block consisting of M sub first delay time samples from each of the plurality of first sub-blocks, wherein M sub is a natural number smaller than N sub ,
Selecting valid N ran second sub-blocks among the plurality of second sub-blocks, where N ran is a natural number, and
And determining an average value of M sub first delay time samples included in each of the selected N ran second sub-blocks as the corresponding first sample average value.
상기 복수의 제2 지연 시간 샘플로부터 선택된 복수의 제2 지연 시간 샘플 군에 대해 각각 평균을 취해 복수의 제3 샘플 평균값을 결정하는 단계는
상기 복수의 제2 지연 시간 샘플을 Nsub 개의 제2 지연 시간 샘플로 각각 구성되는 복수의 제1 서브 블록으로 분할하는 단계 - 상기 Nsub는 자연수임 -,
적어도 상기 복수의 제1 서브 블록의 각각으로부터 Msub 개의 제2 지연 시간 샘플로 구성되는 제2 서브 블록을 구성하는 단계 - 상기 Msub는 상기 Nsub 보다 작은 자연수임 -,
상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계 - 상기 Nran은 자연수임 -, 및
상기 선택된 Nran 개의 제2 서브 블록의 각각에 포함된 Msub 개의 제2 지연 시간 샘플에 대한 평균값을 상기 해당 제3 샘플 평균값으로서 결정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.3. The method of claim 2,
Determining a plurality of third sample mean values by averaging each of a plurality of second delay time sample groups selected from the plurality of second delay time samples,
Dividing the plurality of second delay time samples into a plurality of first subblocks each having N sub second delay time samples, where N sub is a natural number,
A second sub-block consisting of M sub second delay time samples from each of the plurality of first sub-blocks, wherein M sub is a natural number smaller than N sub ,
Selecting valid N ran second sub-blocks among the plurality of second sub-blocks, where N ran is a natural number, and
And determining an average value of M sub second delay time samples included in each of the selected N ran second sub-blocks as the corresponding third sample average value.
상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계는, 상기 복수의 제2 서브 블록의 각각에 포함된 Msub 개의 제1 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 해당 제2 서브 블록을 유효한 제2 서브 블록으로 결정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.6. The method of claim 5,
Wherein the step of selecting valid N ran second sub-blocks among the plurality of second sub-blocks comprises the steps of: determining a standard deviation of M sub first delay time samples included in each of the plurality of second sub- Block, determining the second sub-block as a valid second sub-block if the second sub-block is smaller than the second sub-block.
상기 복수의 제2 서브 블록 중 유효한 Nran 개의 제2 서브 블록을 선택하는 단계는, 상기 복수의 제2 서브 블록의 각각에 포함된 Msub 개의 제2 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 해당 제2 서브 블록을 유효한 제2 서브 블록으로 결정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.The method according to claim 6,
Wherein the step of selecting valid N ran second sub-blocks among the plurality of second sub-blocks comprises: comparing a standard deviation of M sub second delay time samples included in each of the plurality of second sub- Block, determining the second sub-block as a valid second sub-block if the second sub-block is smaller than the second sub-block.
상기 복수의 제1 샘플 평균값 및 상기 복수의 제2 샘플 평균값으로부터 복수의 제1 샘플 및 복수의 제2 샘플을 구성하는 단계는
상기 제1 군의 점들의 횡축 좌표 값들을 상기 복수의 제2 샘플의 값들로 설정하고 상기 제1 군의 점들의 종축 좌표 값들을 상기 복수의 제1 샘플의 값들로 설정하는 단계, 및
상기 제1 군의 점들 중에서 상기 적어도 하나의 아웃라이어가 있는지의 여부를 RANSAC(Random Sample Consensus) 알고리즘을 이용하여 판별하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.3. The method of claim 2,
Wherein constructing a plurality of first samples and a plurality of second samples from the plurality of first sample mean values and the plurality of second sample mean values comprises:
Setting abscissa coordinate values of the first group of points to values of the plurality of second samples and setting ordinate coordinate values of the first group of points to values of the plurality of first samples,
Determining whether the at least one outlier among the first group of points is present using a random sample consensus (RANSAC) algorithm.
상기 복수의 제3 샘플 평균값 및 상기 복수의 제4 샘플 평균값으로부터 복수의 제3 샘플 및 복수의 제4 샘플을 구성하는 단계는
상기 제2 군의 점들의 횡축 좌표 값들을 상기 복수의 제4 샘플의 값들로 설정하고 상기 제2 군의 점들의 종축 좌표 값들을 상기 복수의 제3 샘플의 값들로 설정하는 단계, 및
상기 제2 군의 점들 중에서 상기 적어도 하나의 아웃라이어가 있는지의 여부를 RANSAC 알고리즘을 이용하여 판별하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.3. The method of claim 2,
Wherein configuring the plurality of third samples and the plurality of fourth samples from the plurality of third sample mean values and the plurality of fourth sample mean values comprises:
Setting the abscissa coordinate values of the second group of points to the values of the plurality of fourth samples and the ordinate coordinate values of the second group of points to the values of the plurality of third samples,
And determining whether there is at least one outlier among the second group of points using the RANSAC algorithm.
상기 복수의 제1 샘플과 상기 복수의 제2 샘플을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들을 제1 일차원 함수로 정의하는 단계는, 상기 제3 군의 점들에 대해 커브 피팅 알고리즘(curve fitting algorithm)을 적용하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.The method of claim 3,
Defining the third group of points in the two-dimensional coordinate system using the plurality of first samples and the plurality of second samples, and defining the points of the third group as a first one-dimensional function, And applying a curve fitting algorithm to the points of the clock frequency error.
상기 복수의 제3 샘플과 상기 복수의 제4 샘플을 이용하여 2차원 좌표계에서의 제4 군의 점들을 정의하고 상기 제4 군의 점들을 제2 일차원 함수로 정의하는 단계는, 상기 제4 군의 점들에 대해 커브 피팅 알고리즘을 적용하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.The method of claim 3,
Defining the fourth group of points in the two-dimensional coordinate system using the plurality of third samples and the plurality of fourth samples, and defining the points of the fourth group as a second one-dimensional function, And applying a curve fitting algorithm to the points of the clock frequency error.
상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하는 단계는
- 여기서, E Freq 는 상기 클럭 주파수 오차를 나타내며, f t2t1 은 상기 제1 기울기 값을 나타내며, f t4t3 는 상기 제2 기울기 값을 나타내며,는 상기 제1 표준 편차를 나타내며, 는 상기 제2 표준 편차를 나타냄 - 에 의해 상기 클럭 주파수 오차를 추정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.5. The method of claim 4,
The step of estimating the clock frequency error using the first slope value, the second slope value, the first standard deviation, and the second standard deviation
Wherein E Freq represents the clock frequency error, f t2t1 represents the first slope value, f t4t3 represents the second slope value, Represents the first standard deviation, And wherein the step of estimating the clock frequency error comprises: estimating the clock frequency error by:
상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하는 단계는
- 여기서, E Time 은 상기 클럭 시간 오차를 나타내며, E Freq 는 상기 클럭 주파수 오차를 나타내며, D t2t1 은 상기 제1 평균값을 나타내며, D t4t3 는 상기 제3 평균값을 나타내며, T 1 은 상기 제2 평균값을 나타내며, T 4 는 상기 제4 평균값을 나타내며, T current 는 상기 현재 시간을 나타내는 값임 - 에 의해 상기 클럭 시간 오차를 추정하는 단계를 포함하는, 클럭 주파수 오차 추정 방법.14. The method of claim 13,
The step of estimating the clock time error using the first mean value to the fourth mean value, the estimated clock frequency error and the current time value
Wherein E Time represents the clock time error, E Freq represents the clock frequency error, D t2t1 represents the first average value, D t4t3 represents the third average value, T 1 represents the second average value, T 4 represents the fourth average value, T current represents the current time, And estimating the clock time error by the clock frequency error.
복수의 싱크 메시지와 각각 관련된 복수의 제1 지연 시간 샘플 및 복수의 송신 시간 샘플을 구성하고, 복수의 딜레이 요청 메시지와 각각 관련된 복수의 제2 지연 시간 샘플 및 복수의 수신 시간 샘플을 구성하도록 구성된 딜레이 검출부 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관되고, 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관됨 -, 및
상기 복수의 제1 지연 시간 샘플의 선택된 일부, 상기 복수의 제1 지연 시간 샘플의 선택된 일부와 연관된 상기 복수의 송신 시간 샘플 중 일부의 송신 시간 샘플들, 상기 복수의 제2 지연 시간 샘플의 선택된 일부 및 상기 복수의 제2 지연 시간 샘플의 선택된 일부와 연관된 상기 복수의 수신 시간 샘플 중 일부의 수신 시간 샘플들에 기초하여 상기 클럭 주파수 오차를 추정하도록 구성된 클록 주파수 오차 추정부를 포함하는, 클럭 주파수 오차 추정 장치.An apparatus for estimating a clock frequency error in a PTP slave,
A delay configured to construct a plurality of first delay time samples and a plurality of transmission time samples each associated with a plurality of sink messages and to configure a plurality of second delay time samples and a plurality of reception time samples, Wherein the plurality of transmission time samples are each associated with the plurality of first delay time samples and the plurality of reception time samples are each with the plurality of second delay time samples,
A selected portion of the plurality of first delay time samples, a portion of the plurality of transmission time samples associated with a selected portion of the plurality of first delay time samples, a selected portion of the plurality of second delay time samples, And a clock frequency error estimator configured to estimate the clock frequency error based on some received time samples of the plurality of received time samples associated with a selected portion of the plurality of second delay time samples, Device.
PTP 매스터으로부터 복수의 싱크 메시지가 송신된 복수의 송신 시간을 식별하여 복수의 송신 시간 샘플을 결정하고, 상기 PTP 매스터로부터 상기 PTP 슬레이브까지의 상기 복수의 싱크 메시지의 지연 시간들을 산출하여 복수의 제1 지연 시간 샘플을 결정하고, 상기 PTP 슬레이브로부터 상기 PTP 매스터까지의 복수의 딜레이 요청 메시지의 지연 시간들을 산출하여 복수의 제2 지연 시간 샘플을 결정하고, 상기 복수의 딜레이 요청 메시지가 상기 PTP 매스터에 도달한 복수의 수신 시간을 식별하여 복수의 수신 시간 샘플을 결정하도록 구성된 딜레이 검출부 - 상기 복수의 송신 시간 샘플은 상기 복수의 제1 지연 시간 샘플과 각각 연관되고, 상기 복수의 수신 시간 샘플은 상기 복수의 제2 지연 시간 샘플과 각각 연관되고, 상기 딜레이 검출부는 선정된 주기 마다 Nsub 개의 제1 지연 시간 샘플, Nsub 개의 송신 시간 샘플, Nsub 개의 제2 지연 시간 샘플 및 Nsub 개의 수신 시간 샘플을 출력하도록 구성되며, 상기 Nsub는 자연수임 -, 및
상기 선정된 주기 마다 상기 딜레이 검출부로부터 상기 Nsub 개의 제1 지연 시간 샘플 및 상기 Nsub 개의 송신 시간 샘플을 입력받아 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 출력하도록 구성된 제1 서브블록 필터 - 상기 Nran은 자연수임 -,
상기 선정된 주기 마다 상기 딜레이 검출부로부터 상기 Nsub 개의 제2 지연 시간 샘플 및 상기 Nsub 개의 수신 시간 샘플을 입력받아 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값을 출력하도록 구성된 제2 서브블록 필터,
상기 제1 서브블록 필터로부터 Nran 개의 제1 샘플 평균값 및 Nran 개의 제2 샘플 평균값을 입력받아 Mran 개의 제1 샘플 및 Mran 개의 제2 샘플을 제공하도록 구성된 제1 RANSAC 필터, 상기 Mran 개의 제1 샘플과 상기 Mran 개의 제2 샘플을 이용하여 2차원 좌표계에서의 제1 군의 점들을 정의하고, 상기 제1 군의 점들을 제1 일차원 함수로 정의하고, 상기 제1 일차원 함수의 기울기를 제1 기울기 값으로서 결정하도록 구성된 제1 최소자승 곡선 맞춤 산출부 및 상기 Mran 개의 제1 샘플에 대한 표준 편차를 제1 표준 편차로서 결정하도록 구성된 제1 딜레이 및 시간 평균부를 포함하는 제1 서브블록 선택 및 블록 평균부 - 상기 Mran은 상기 Nran과 같거나 그 보다 작은 자연수임 -,
상기 제2 서브블록 필터로부터 Nran 개의 제3 샘플 평균값 및 Nran 개의 제4 샘플 평균값을 입력받아 Mran 개의 제3 샘플 및 Mran 개의 제4 샘플을 제공하도록 구성된 제2 RANSAC 필터, 상기 Mran 개의 제3 샘플과 상기 Mran 개의 제4 샘플을 이용하여 2차원 좌표계에서의 제2 군의 점들을 정의하고, 상기 제2 군의 점들을 제2 일차원 함수로 정의하고, 상기 제2 일차원 함수의 기울기를 제2 기울기 값으로서 결정하도록 구성된 제2 최소자승 곡선 맞춤 산출부 및 상기 Mran 개의 제3 샘플에 대한 표준 편차를 제2 표준 편차로서 결정하도록 구성된 제2 딜레이 및 시간 평균부를 포함하는 제2 서브블록 선택 및 블록 평균부, 및
상기 제1 기울기 값, 상기 제2 기울기 값, 상기 제1 표준 편차 및 상기 제2 표준 편차를 이용하여 상기 클럭 주파수 오차를 추정하도록 구성된 주파수 오차 및 시간 오차 추정부를 포함하는 클럭 주파수 오차 추정 장치.An apparatus for estimating a clock frequency error in a PTP slave,
Determining a plurality of transmission time samples by identifying a plurality of transmission times in which a plurality of sync messages are transmitted from the PTP master and calculating delay times of the plurality of sync messages from the PTP master to the PTP slave, Determining a plurality of delay time samples by calculating delay times of a plurality of delay request messages from the PTP master to the PTP master and determining a plurality of second delay time samples, A delay detector configured to identify a plurality of reception times and to determine a plurality of reception time samples, the plurality of transmission time samples being each associated with the plurality of first delay time samples, Respectively, and the delay detector is associated with a second delay time sample, N number of first sub delay time samples, N sub transmit time samples, N of second sub delay samples, and is configured to output the N sub reception time samples, wherein N is a natural number sub-, and
Each period of the selection by receiving the N sub of first delay sample and the N sub transmit time samples from the delay detection part configured to output the N ran of first sample average value and the N ran of second sample average first Sub-block filter, the N ran is a natural number,
Each period of the selection by receiving the N sub of second delay samples and the N sub reception time samples from the delay detection unit 2 configured to output the N ran of third sample average value and the N ran of the fourth sample mean value Sub-block filter,
The first sub-block N ran of first samples the average value from the filter and N ran of second samples by receiving the mean value M ran of the first sample and the first RANSAC filter, the M ran configured to provide an M ran of the second sample Dimensional coordinate system using the first sample of the first one-dimensional function and the second sample of the M ran , defining the points of the first group as a first one-dimensional function, A first minimum square curve fitting calculator configured to determine a slope as a first slope value and a first delay and a time average unit configured to determine a standard deviation for the first sample of M ran as a first standard deviation, Sub-block selection and block averaging section, wherein M ran is a natural number equal to or less than N ran ,
The second from the sub-block filter N ran of third sample average value and the N ran of the fourth sample receives the average value M ran of third sample and the second RANSAC filter, the M ran configured to provide an M ran of the fourth sample Dimensional coordinate system using the third sample and the fourth sample of M ran , defines the points of the second group as a second one-dimensional function, and defines the points of the second one-dimensional function A second least squares curve fitting calculator configured to determine a slope as a second slope value and a second delay and time average unit configured to determine a standard deviation for the third sample of M ran as a second standard deviation, Sub-block selection and block averaging, and
And a frequency error and a time error estimator configured to estimate the clock frequency error using the first slope value, the second slope value, the first standard deviation, and the second standard deviation.
상기 제1 서브블록 필터는
상기 Nsub 개의 제1 지연 시간 샘플 중 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플을 선택하도록 구성된 정렬 및 선택부 - 상기 Msub은 상기 Nsub 보다 작은 자연수임 -,
롤오버드 딜레이 저장부,
카운트 값(Rcnt)을 저장하기 위한 카운트 레지스터 - 상기 카운트 레지스터에 저장되는 카운트 값(Rcnt)의 초기값은 0임 -, 및
상기 Msub 개의 제1 지연 시간 샘플의 유효성을 검사하여 상기 Msub 개의 제1 지연 시간 샘플이 유효하다고 판단되는 경우 상기 Msub 개의 제1 지연 시간 샘플에 대해 평균을 취해 상기 제1 샘플 평균값을 결정하고, 상기 유효하다고 결정된 Msub 개의 제1 지연 시간 샘플에 연관된 Msub 개의 송신 시간 샘플에 대해 평균을 취해 상기 제2 샘플 평균값을 결정하고, 상기 Msub 개의 제1 지연 시간 샘플이 유효하지 않다고 판단되는 경우 상기 Msub 개의 제1 지연 시간 샘플을 상기 롤오버드 딜레이 저장부에 저장하고 상기 카운트 레지스터의 카운트 값(Rcnt)을 1 만큼 증가시키도록 구성된 표준편차 검사부를 포함하고,
상기 정렬 및 선택부는, 다음 주기에 Nsub 개의 제1 지연 시간 샘플이 입력되는 것에 응답하여 상기 카운트 레지스터의 카운트 값(Rcnt)을 검사하여 상기 카운트 레지스터의 카운트 값(Rcnt)이 0이 아닌 것으로 판단되는 경우 상기 다음 주기에 입력되는 Nsub 개의 제1 지연 시간 샘플 및 상기 롤오버드 딜레이 저장부에 저장된 Msub 개의 제1 지연 시간 샘플 중에서 가장 크기가 작은 Msub 개의 제1 지연 시간 샘플을 선택하도록 더 구성되는, 클럭 주파수 오차 추정 장치.17. The method of claim 16,
The first sub-block filter
And an M selection unit configured to select M sub first delay time samples of the N sub first delay time samples, wherein M sub is a natural number smaller than N sub ,
A rollover delay storage unit,
Count value (R cnt) a count register for storing initial value of the count value (R cnt) being stored in the count register is 0 -, and
The M sub of the first delay to validate the time samples the M sub of claim 1 when it is determined that the delay time the sample is valid the M sub of claim taking the average for the first delay sample determining the first sample mean value and andago not the effective that the determined M sub of first delay taking the average of the M sub transmit time samples associated with the time samples and determining the second sample mean value, the M sub of first delay sample validity determination when containing the standard deviation checking unit configured to store the M number of first sub delay samples in the delay rollover de storage unit and increases the count value (R cnt) of the count register by one, and
The sorting and selecting unit, in the next cycle N sub of first delay sample in response to an input by checking the count value (R cnt) of the count register, the count value of the count register (R cnt) is not 0 The first delay time sample of N sub that is input in the next cycle and the first delay time sample of M sub that is the smallest among the first delay time samples of M sub stored in the rollover delay storage unit are selected Wherein the clock frequency error estimator further comprises:
상기 표준편차 검사부는, 상기 Msub 개의 제1 지연 시간 샘플에 대한 표준 편차가 선정된 임계값 보다 작을 경우 상기 Msub 개의 제1 지연 시간 샘플이 유효하다고 판단하도록 더 구성되는, 클럭 주파수 오차 추정 장치.18. The method of claim 17,
The standard deviation inspection unit, the M sub of the first delay time is less than the threshold standard deviation is selected for the sample estimate the M sub of first delay sample clock frequency error, is further configured to determine that the effective device .
상기 제1 RANSAC 필터는, 상기 Nran 개의 제1 샘플 평균값 및 상기 Nran 개의 제2 샘플 평균값을 이용하여 2차원 좌표계에서의 제3 군의 점들을 정의하고 상기 제3 군의 점들 중에서 적어도 하나의 아웃라이어가 있는 경우 상기 적어도 하나의 아웃라이어에 해당하는 제1 샘플 평균값과 제2 샘플 평균값을 상기 Nran 개의 제1 샘플 평균값 및 상기 Nran 개의 제2 샘플 평균값으로부터 각각 제거하여 상기 Mran 개의 제1 샘플 및 상기 Mran 개의 제2 샘플을 제공하도록 더 구성되는, 클럭 주파수 오차 추정 장치.17. The method of claim 16,
The first RANSAC filter, the N ran of first sample average value and the N ran of the at least one from using the two-sample mean value, and defining the third group points in a two-dimensional coordinate system, the points of the third group of If the outlier removing the first sample average value and the second sample average value corresponding to the at least one outlier the N ran of claim, respectively from the first sample average value and the N ran of second sample average the M ran the 1 samples and the M ran second samples.
상기 제1 딜레이 및 시간 평균부는, 상기 Mran 개의 제1 샘플에 대한 평균값을 제1 평균값으로서 결정하고 상기 Mran 개의 제2 샘플에 대한 평균값을 제2 평균값으로서 결정하도록 더 구성되며,
상기 제2 딜레이 및 시간 평균부는, 상기 Mran 개의 제3 샘플에 대한 평균값을 제3 평균값으로서 결정하고 상기 Mran 개의 제4 샘플에 대한 평균값을 제4 평균값으로서 결정하도록 더 구성되며,
상기 주파수 오차 및 시간 오차 추정부는, 상기 제1 평균값 내지 상기 제4 평균값, 상기 추정된 클럭 주파수 오차 및 현재 시간을 나타내는 값을 이용하여 클럭 시간 오차를 추정하도록 더 구성되는, 클럭 주파수 오차 추정 장치.17. The method of claim 16,
Wherein the first delay and time averaging unit is further configured to determine an average value for the first sample of M ran as a first mean value and determine an average value for the second sample of M ran as a second mean value,
Wherein the second delay and time averaging unit are further configured to determine an average value for the third sample of M ran as a third mean value and determine an average value for the fourth sample of M ran as a fourth mean value,
Wherein the frequency error and time error estimator are further configured to estimate a clock time error using a value indicating the first mean value to the fourth mean value, the estimated clock frequency error, and a current time.
상기 주파수 오차 및 시간 오차 추정부는,
- 여기서, E Freq 는 상기 클럭 주파수 오차를 나타내며, f t2t1 은 상기 제1 기울기 값을 나타내며, f t4t3 는 상기 제2 기울기 값을 나타내며, 는 상기 제1 표준 편차를 나타내며, 는 상기 제2 표준 편차를 나타냄 - 에 의해 상기 클럭 주파수 오차를 추정하도록 더 구성되는, 클럭 주파수 오차 추정 장치.21. The method of claim 20,
The frequency error and time error estimator may include:
Wherein E Freq represents the clock frequency error, f t2t1 represents the first slope value, f t4t3 represents the second slope value, Represents the first standard deviation, Wherein the second frequency offset estimator is further configured to estimate the clock frequency error by:
상기 주파수 오차 및 시간 오차 추정부는,
- 여기서, E Time 은 상기 클럭 시간 오차를 나타내며, E Freq 는 상기 클럭 주파수 오차를 나타내며, D t2t1 은 상기 제1 평균값을 나타내며, D t4t3 는 상기 제3 평균값을 나타내며, T 1 은 상기 제2 평균값을 나타내며, T 4 는 상기 제4 평균값을 나타내며, T current 는 상기 현재 시간을 나타내는 값임 - 에 의해 상기 클럭 시간 오차를 추정하도록 더 구성되는, 클럭 주파수 오차 추정 장치.22. The method of claim 21,
The frequency error and time error estimator may include:
Wherein E Time represents the clock time error, E Freq represents the clock frequency error, D t2t1 represents the first average value, D t4t3 represents the third average value, T 1 represents the second average value, T 4 represents the fourth average value, T current represents the current time, And to estimate said clock time error by said clock frequency offset estimator.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20160175548 | 2016-12-21 | ||
KR1020160175548 | 2016-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180072506A true KR20180072506A (en) | 2018-06-29 |
KR101944102B1 KR101944102B1 (en) | 2019-01-30 |
Family
ID=62780836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170002461A KR101944102B1 (en) | 2016-12-21 | 2017-01-06 | Method and Apparatus for Estimating a Clock Frequency Error and a Clock Time Error in a PTP Slave |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101944102B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102407341B1 (en) | 2021-05-14 | 2022-06-13 | 한국전자기술연구원 | Method for transmitting and receiving messages of Precision Time Protocol (PTP) and apparatus therefor |
KR20220080871A (en) * | 2020-12-08 | 2022-06-15 | 현대오토에버 주식회사 | Apparatus for estimating communication response time between different controllers of vehicle and method thereof |
KR20220153158A (en) | 2021-05-10 | 2022-11-18 | 한국전자기술연구원 | Method for performing synchronization according to Precision Time Protocol (PTP) in ring topology network, and apparatus therefor |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230011157A (en) | 2021-07-13 | 2023-01-20 | 한국전력공사 | Precision time synchronization sustaining method and apparatus based on self-clock medel estimation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101605316B1 (en) * | 2015-02-16 | 2016-03-22 | 주식회사 이노와이어리스 | frequency error estimating apparatus using Rx delay in PTP |
-
2017
- 2017-01-06 KR KR1020170002461A patent/KR101944102B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101605316B1 (en) * | 2015-02-16 | 2016-03-22 | 주식회사 이노와이어리스 | frequency error estimating apparatus using Rx delay in PTP |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220080871A (en) * | 2020-12-08 | 2022-06-15 | 현대오토에버 주식회사 | Apparatus for estimating communication response time between different controllers of vehicle and method thereof |
KR20220153158A (en) | 2021-05-10 | 2022-11-18 | 한국전자기술연구원 | Method for performing synchronization according to Precision Time Protocol (PTP) in ring topology network, and apparatus therefor |
KR102407341B1 (en) | 2021-05-14 | 2022-06-13 | 한국전자기술연구원 | Method for transmitting and receiving messages of Precision Time Protocol (PTP) and apparatus therefor |
Also Published As
Publication number | Publication date |
---|---|
KR101944102B1 (en) | 2019-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101944102B1 (en) | Method and Apparatus for Estimating a Clock Frequency Error and a Clock Time Error in a PTP Slave | |
EP3109665B1 (en) | Error compensation apparatus and method for measuring distance in wireless communication system | |
US7876791B2 (en) | Synchronizing apparatus and method in packet network | |
US8837316B2 (en) | RTT based ranging system and method | |
RU2463741C2 (en) | Method and apparatus for measuring round-trip delay in mobile station | |
US20070147265A1 (en) | Correcting time synchronization inaccuracy caused by internal asymmetric delays in a device | |
JP2020523829A5 (en) | ||
US20160309434A1 (en) | Methods, systems, and computer readable media for synchronizing timing among network interface cards (nics) in a network equipment test device | |
US11153838B1 (en) | Time synchronization enhancements for integrated 5G-TSN networking | |
CN103814338A (en) | Systems and methods of network synchronization | |
JP2005123662A (en) | Position detecting system and apparatus thereof | |
US8301181B2 (en) | Oscillator calibration | |
CN108781428A (en) | Cellular telecommunication network | |
US11588609B2 (en) | Hardware clock with built-in accuracy check | |
KR20070054037A (en) | Clock synchronization method and apparatus using estimated one-way delay | |
Ghany et al. | A parametric TDoA technique in the IoT localization context | |
CN111464397B (en) | Method and system for measuring bidirectional distance and clock error | |
KR101605316B1 (en) | frequency error estimating apparatus using Rx delay in PTP | |
CN116888928A (en) | Network node for a vehicle | |
JP2019016872A (en) | Synchronization system, communication device, communication method, and program | |
CN113678016A (en) | Method, apparatus, and device-readable medium for detecting a change in distance between wireless devices | |
Chen et al. | A Fast Clock Synchronization Method for Wireless Sensor Networks Based on Grey Prediction. | |
CN114070762B (en) | Network monitoring probe assembly, synchronization method and data acquisition and analysis device | |
CN112803993B (en) | Short message system-oriented uplink signal system verification method and device | |
Kulakowski et al. | Can indoor RSS localization with 802.15. 4 sensors be viable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |