KR101322841B1 - Method for executing time synchronization between nodes of network and appartus for executing the method - Google Patents

Method for executing time synchronization between nodes of network and appartus for executing the method Download PDF

Info

Publication number
KR101322841B1
KR101322841B1 KR1020070026336A KR20070026336A KR101322841B1 KR 101322841 B1 KR101322841 B1 KR 101322841B1 KR 1020070026336 A KR1020070026336 A KR 1020070026336A KR 20070026336 A KR20070026336 A KR 20070026336A KR 101322841 B1 KR101322841 B1 KR 101322841B1
Authority
KR
South Korea
Prior art keywords
time
message
offset
calculating
node
Prior art date
Application number
KR1020070026336A
Other languages
Korean (ko)
Other versions
KR20080069106A (en
Inventor
제프리 엠. 가너
코넬리스 요하니스 덴 홀란더
정홍규
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US11/846,031 priority Critical patent/US20080175275A1/en
Priority to JP2007315997A priority patent/JP4819781B2/en
Publication of KR20080069106A publication Critical patent/KR20080069106A/en
Application granted granted Critical
Publication of KR101322841B1 publication Critical patent/KR101322841B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes

Abstract

본 발명은 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기에 관한 것이다. 본 발명에 따른 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하는 단계, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다.The present invention relates to a method for performing time synchronization between nodes in a network and a device for performing the method. In the method for performing time synchronization between nodes of a network according to the present invention, a predetermined value of a measured value for propagation to a master node using a time stamp in a slave node is pre-determined. Calculating each time unit, calculating an estimate of an actual propagation time using the measured value and a sliding window at the slave node, and transmitting a message at the master node. Calculating an offset using a time, a message reception time at the slave node, and the estimated value.

시간 동기화, 전파 시간(propagation time), DCO(Digital Controlled Oscillator), PLL(Phase Locked Loop), 타임 스탬프(time stamp) Time synchronization, propagation time, digital controlled oscillator (DCO), phase locked loop (PLL), time stamp

Description

네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기{METHOD FOR EXECUTING TIME SYNCHRONIZATION BETWEEN NODES OF NETWORK AND APPARTUS FOR EXECUTING THE METHOD}METHOD FOR EXECUTING TIME SYNCHRONIZATION BETWEEN NODES OF NETWORK AND APPARTUS FOR EXECUTING THE METHOD}

도 1은 종래기술에 있어서, 노드간 동기화 방법을 설명하기 위한 일례이다.1 is an example for explaining an inter-node synchronization method in the prior art.

도 2는 전파 시간을 계산하는 방법의 일례이다.2 is an example of a method for calculating propagation time.

도 3은 슬래이브 노드와 마스터 노드 사이에 중계 장치가 존재하는 경우, 전파 시간을 측정하는 방법의 일례이다.3 is an example of a method of measuring a propagation time when a relay device exists between a slave node and a master node.

도 4는 피어-투-피어 트랜스패어런트 클락을 이용한 오프셋 계산 방법의 일례이다.4 is an example of an offset calculation method using a peer-to-peer transparent clock.

도 5는 본 발명의 제1 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.5 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to the first embodiment of the present invention.

도 6은 본 발명의 제1 실시예에 있어서, 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다.6 is a flowchart illustrating a method of calculating an estimated value of actual propagation time using a sliding window according to the first embodiment of the present invention.

도 7은 본 발명의 제2 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.7 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the second embodiment of the present invention.

도 8은 본 발명의 제3 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.8 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to a third embodiment of the present invention.

도 9는 본 발명의 제3 실시예에 있어서, 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다.9 is a flowchart illustrating a method of calculating an estimated value of actual propagation time using a linear digital filter according to a third embodiment of the present invention.

도 10은 본 발명의 제4 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.10 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the fourth embodiment of the present invention.

도 11은 시간 동기화를 위한 양방향 방법을 설명하기 위한 일례이다.11 is an example for explaining a bidirectional method for time synchronization.

도 12는 본 발명의 제5 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.12 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to a fifth embodiment of the present invention.

도 13은 본 발명의 제6 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.13 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the sixth embodiment of the present invention.

도 14는 시간 동기화를 위한 단방향 방법을 설명하기 위한 일례이다.14 is an example for explaining a one-way method for time synchronization.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

710: 측정값 계산부710: calculation unit

720: 추정값 계산부720: estimated value calculation unit

721: 측정값 유지부721: measurement value holding unit

722: 제2 추정값 계산부722: second estimated value calculator

730: 오프셋 계산부730: offset calculation unit

본 발명은 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법 을 수행하는 기기에 관한 것으로 보다 자세하게는, 타임 스탬프에 기반하여 네트워크의 노드간의 시간 동기화를 수행함에 있어서 지터(Jitter), 원더(Wander) 및 시간 동기화 성능을 향상시킬 수 있는 방법 및 기기에 관한 것이다.The present invention relates to a method for performing time synchronization between nodes of a network and a device for performing the method. More particularly, the present invention relates to jitter and wonder in performing time synchronization between nodes of a network based on a time stamp. And a method and apparatus for improving time synchronization performance.

현재 IEEE 1588 프로토콜 및 네트워크 타임 프로토콜(NTP: Network Time Protocol)과 같이 타임 스탬프(time stamps)를 이용하여 타이밍(timing)을 전달하기 위한 많은 수의 스킴(schemes)이 존재한다.There are currently a number of schemes for delivering timing using time stamps, such as the IEEE 1588 protocol and the Network Time Protocol (NTP).

이와 같은 모든 스킴에서 네트워크를 구성하는 각각의 노드들은 상기 노드들 중 하나의 노드와 동기화를 시도한다. 이때, 하나의 노드는 마스터라 불리는 노드 즉, 마스터 노드에 소속되어 있다. 또한, 이러한 방법에서 타이밍은 그랜드마스터라 불리는 하나의 노드 즉, 그래드마스터 노드에서 추적 가능(traceable)하다.In all such schemes, each of the nodes constituting the network attempts to synchronize with one of the nodes. At this time, one node belongs to a node called a master, that is, a master node. In this way, the timing is also traceable in one node, the grandmaster node, called the grandmaster.

마스터 노드는 마스터 노드의 마스터 노드를 제외하고, 마스터 노드에게 부착된 모든 노드에게 타임 스탬프를 포함하는 메시지를 전송한다. 이때, 타임 스탬프는 메시지가 전송되는 순간의 시각을 의미할 수 있다. 각각의 슬래이브 노드는 이러한 타임 스탬프를 수신하고, 슬래이브 노드와 마스터 노드간의 전파 시간(propagation time)을 타임 스탬프에 더한다. 즉, 슬래이브 노드는 메시지를 수신한 시각에서 전파 시간이 더해진 타임 스탬프 즉, 전파 시간 더해진 마스터 노드에서의 전송 시각을 비교함으로써, 마스터 노드와의 차이인 오프셋(offset)을 계산하여 동기화를 수행할 수 있다.The master node sends a message containing a time stamp to all nodes attached to the master node except the master node of the master node. In this case, the time stamp may mean a time at which the message is transmitted. Each slave node receives this time stamp and adds a propagation time between the slave node and the master node to the time stamp. That is, the slave node compares the time stamp plus propagation time from the time of receiving the message, that is, the transmission time from the master node plus propagation time, and calculates an offset that is a difference from the master node to perform synchronization. Can be.

도 1은 종래기술에 있어서, 노드간 동기화 방법을 설명하기 위한 일례이다.1 is an example for explaining an inter-node synchronization method in the prior art.

마스터 노드(101)는 슬래이브 노드(102)로 메시지를 전송한다. 이때, 상기 메시지를 전송하는 순간(103)의 시각인 타임 스탬프 T1이 메시지에 기록된다. 또한, 슬래이브 노드는 메시지를 수신하는 경우, 메시지를 수신하는 순간(104)의 시각인 수신 시각 T2를 확인한다. 만약 슬래이브 노드(102)가 마스터 노드(101)로부터의 전파 시간 D1을 알고 있다면 슬래이브 노드(102)는 마스터 노드(101)와의 차이인 오프셋을 "오프셋 = T2 - T1 - D1"와 같이 계산할 수 있고, 오프셋을 이용하여 마스터 노드(101)와의 동기화를 수행할 수 있다.The master node 101 sends a message to the slave node 102. At this time, the time stamp T1, which is the time at the moment 103 of transmitting the message, is recorded in the message. In addition, when a slave node receives a message, it checks the reception time T2 which is the time of the moment 104 of receiving a message. If the slave node 102 knows the propagation time D1 from the master node 101, the slave node 102 may calculate an offset that is a difference from the master node 101 as "offset = T2-T1-D1". In addition, the offset may be used to perform synchronization with the master node 101.

그러나, 위에서의 가정에서와 같이 오프셋을 계산하기 위해서는 마스터 노드(101)로부터의 전파 시간 D1을 슬래이브 노드(102)가 알고 있어야 한다. 즉, 슬래이브 노드(102)는 전파 시간 D1을 계산해야 한다.However, the slave node 102 must know the propagation time D1 from the master node 101 to calculate the offset as in the assumption above. That is, the slave node 102 must calculate the propagation time D1.

이러한 전파 시간을 계산하는 방법 및 오프셋을 계산하는 또 다른 방법에 대해서는 본 발명의 배경으로서 [발명의 구성]에서 자세히 설명한다.Such a method of calculating the propagation time and another method of calculating the offset will be described in detail in [Configuration of the Invention] as a background of the present invention.

위에서 설명한 그리고 이후 설명될 스킴들은 슬래이브 노드에서 이용되는 오프셋을 어떻게 계산하는가에 대해 상세히 명기(specify)하지 않는다. 슬래이브 노드에서 직접 조정할 수 있지만, 이는 종종 과도한 지터(Jitter), 원더(Wander) 및 시간 동기화의 부정확이란 결과를 발생시키는 문제점이 있다. 많은 경우, 슬래이브 노드에서 오프셋들의 시퀀스는 DCO(Digital Controlled Oscillator)를 이용하여 여과되고(is filtered), 더 낮은 지터 및 원더를 원하는 경우, 아날로그 PLL(Phase Locked Loop)를 이용하여 여과된다. 그러나 이와 같은 DCO 및 PLL을 슬래이브 노드에서 이용하는 스킴은 더 비싼 비용을 요구하기 때문에 더 엄격한(stringent) 어플리케이션에서만 이용되는 실정이다.The schemes described above and later do not specify how to calculate the offset used at the slave node. Although it can be adjusted directly at the slave node, this often leads to problems that result in excessive jitter, wonder and time synchronization inaccuracies. In many cases, the sequence of offsets in the slave node is filtered using a Digital Controlled Oscillator (DCO), and using an analog Phase Locked Loop (PLL) if lower jitter and wonder are desired. However, this scheme of using DCOs and PLLs in slave nodes is only used for stringent applications because of the higher cost.

시간 부정확의 하나의 메인 근원은 타임 스탬프 측정의 한정된 입도(granularity)에 기인한다. 예를 들어, 표준 이더넷(Ethernet) 브릿지(bridges)와 종단 장치는 25MHz 발진기(oscillator)를 요구한다. 이러한 장치에 있어서, 타임 스탬프 측정의 입도는 40나노초이다. 이는 전파 시간 측정에 있어서, 80나노초 만큼의 에러(error)를 발생시킬 수 있음을 의미한다.One main source of time inaccuracy is due to the limited granularity of the time stamp measurement. For example, standard Ethernet bridges and terminators require a 25 MHz oscillator. In such an apparatus, the particle size of the time stamp measurement is 40 nanoseconds. This means that an error of 80 nanoseconds can be generated in the propagation time measurement.

이러한 에러는 피어-투-피어(peer-to-peer) 트랜스패어런트 클락(transparent clock)을 사용하는 스킴에서 전파 시간에 누적된다. N-홉의 경우 즉, 마스터 노드와 슬래이브 노드 사이에 N-1 개의 피어-투 피어 트랜스패어런트 클락이 존재하는 경우, 가능한 에러는 80N나노초이다. 많은 수의 홉의 경우에 이러한 에러는 빠르게 증가하여 수백 나노초 또는 1마이크로초를 넘어서는 문제점이 있다. 이러한 경우, 위에서 설명한 PLL 필터링을 이용하여 에러를 줄일 수 있지만 이러한 필터링은 비용이 많이 들고, 또한, 타이밍 신호를 위한 각각의 저장 장소를 필요로 한다. 이는 비용이 더 증가됨을 의미한다. 따라서, 값비싼 PLL 필터링을 이용하지 않으면서도 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있는 새로운 시간 동기화 방법이 절실히 요구된다.This error accumulates at propagation time in schemes using peer-to-peer transparent clocks. In the case of N-hops, that is, when there are N-1 peer-to-peer transparent clocks between the master node and the slave node, the possible error is 80 N nanoseconds. In the case of a large number of hops, this error increases rapidly, exceeding several hundred nanoseconds or one microsecond. In this case, the PLL filtering described above can be used to reduce the error, but such filtering is expensive and requires a separate storage location for the timing signal. This means more cost. Therefore, there is an urgent need for a new time synchronization method that can improve the performance of jitter, wonder and time synchronization without using expensive PLL filtering.

본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위해, 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기에 관한 새로운 기술을 제안한다.The present invention proposes a method for performing time synchronization between nodes of a network and a new technology related to a device for performing the method, in order to solve the above problems of the prior art.

본 발명은 슬래이브 노드에서 기선정된(predetermined) 시간 단위마다 타임 스탬프에 기반하여 전파 시간(propagation)의 측정값(measured value)들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋(offset)을 계산함으로써 지터(Jitter), 원더(Wander) 및 시간 동기화의 성능을 향상시키는 것을 목적으로 한다.The present invention calculates measured values of propagation based on a time stamp for each predetermined time unit in a slave node, and uses a mean and sliding window of the measured values to master node. It is aimed at improving the performance of jitter, wander and time synchronization by calculating the offset from.

본 발명의 다른 목적은 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시키는 것이다.Another object of the present invention is to calculate the measurements of the propagation time based on the time stamp for each pre-determined time unit at the slave node, and master using the average of the measurements and a general linear digital filter. By calculating the offset from the node, you improve the performance of jitter, wonder, and time synchronization.

본 발명의 또 다른 목적은 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간(residence time)을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시키는 것이다.It is still another object of the present invention to calculate a first offset from a master node for each predetermined time unit in a system for measuring propagation time in a unidirectional direction, and using the first offset and offsets calculated in the previous time unit as input values. By calculating the second offset, which is the offset in the current time unit, through a linear digital filter, the performance of jitter, wonder and time synchronization is improved while taking into account the residence time in the relay.

상기의 목적을 달성하고, 상술한 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따른 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하 는 단계, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다.In order to achieve the above object and to solve the above-mentioned problems of the prior art, a method of performing time synchronization between nodes of a network according to an embodiment of the present invention, using a time stamp (time stamp) in the slave node Calculating a measured value for a propagation time to a master node for each predetermined time unit, and actually propagating using the measured value and a sliding window at the slave node Calculating an estimate of an actual propagation time, and calculating an offset using the message transmission time at the master node, the message reception time at the slave node, and the estimate.

본 발명의 일측에 따르면, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는, 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 단계 및 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 단계를 포함할 수 있다.According to one aspect of the invention, the step of calculating the estimated value of the actual propagation time using the measured value and the sliding window in the slave node, the most recently calculated by the number corresponding to the length of the sliding window Maintaining a value and calculating a second estimate of the actual propagation time using the average of the retained measurements and a first estimate calculated over a previous time unit.

본 발명의 다른 측면에 따르면, 상기 유지된 측정값들의 평균을 계산하고, 상기 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 상기 단계는, 하기 수학식 1과 같이 상기 제2 추정값을 계산할 수 있다.According to another aspect of the invention, the step of calculating an average of the retained measured values, and using the average and the first estimate calculated in the previous time unit to calculate a second estimate of the actual propagation time, As shown in Equation 1, the second estimated value may be calculated.

Figure 112007021509738-pat00001
Figure 112007021509738-pat00001

Figure 112007021509738-pat00002
Figure 112007021509738-pat00002

여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미할 수 있다Where d k is the measured value in k -th time unit, D k is the estimated value in k-th time unit, M is the length of the sliding window, and H (z) is D k. Can mean the transfer function of the difference equation of

본 발명의 다른 실시예에 따르면, 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 단계, 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다. 이때, 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는, 기선정된 제1 수만큼 상기 측정값을 유지하는 단계, 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 단계 및 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 단계를 포함할 수 있고, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다.According to another embodiment of the present invention, a method of performing time synchronization between nodes in a network includes calculating a measurement value of a propagation time from a slave node to a master node by each predetermined time unit using a time stamp. Calculating an estimated value of actual propagation time at the slave node using the measured value and a linear digital filter, and at the message transmission time at the master node, at the message reception time at the slave node, and Calculating an offset using the estimated value. At this time, the step of calculating the estimated value of the actual propagation time using the measured value and the linear digital filter at the slave node, the step of maintaining the measured value by a predetermined first number, the second predetermined number Maintaining a first estimated value measured in a previous time unit by the second step and calculating a second estimated value which is an estimated value of the actual propagation time using the maintained measured value, the first estimated value and the linear digital filter. The linear digital filter may assign a plurality of filter coefficients to the held measurement and the first estimate and calculate the sum as the second estimate.

본 발명의 또 다른 실시예에 따르면, 네트워크의 노드간에 시간 동기화를 수 행하는 방법은, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 단계 및 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 단계를 포함한다.According to another embodiment of the present invention, a method of performing time synchronization between nodes of a network includes: calculating a first offset from a master node by a predetermined time unit using a time stamp at a slave node; and Calculating a second offset using the first offset and the linear digital filter.

이하 첨부된 도면을 참조하여 본 발명에 따른 다양한 실시예를 상세히 설명하기로 한다.Hereinafter, various embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

1. 배경(background).Background

도 2는 전파 시간을 계산하는 방법의 일례이다.2 is an example of a method for calculating propagation time.

두 개의 노드 즉, 마스터 노드(201) 및 슬래이브 노드(202)에 각각 부착된 클락(attached clock)간의 전파 시간은 타임 스탬프를 교환하는 상기 클락들에 의해 측정된다. 상기 클락들 중 하나인 리퀘스터(requester)는 상기 리퀘스터가 제1 메시지를 다른 클락으로 전송할 때 상기 제1 메시지에 상기 제1 메시지의 전송 시각 T1(203)을 기록한다. 상기 다른 클락인 리스폰더(responder)는 상기 제1 메시지의 수신 시각 T2(204)를 기록한다.The propagation time between the clocks attached to two nodes, namely the master node 201 and the slave node 202, respectively, is measured by the clocks that exchange time stamps. A requester, which is one of the clocks, records the transmission time T1 203 of the first message in the first message when the requester sends the first message to another clock. The other clock responder records the reception time T2 204 of the first message.

이후, 상기 리스폰더에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 리퀘스터로 전송하다. 이때, 상기 리퀘스터는 상기 제2 메시지에 상기 제2 메시지의 전송 시각 T3(205)을 기록하여 전송한다. 마지막으로 상기 리퀘스터는 상기 제2 메시지의 수신시각 T4(206)를 확인한다.Thereafter, the responder transmits a second message corresponding to the first message to the requester. At this time, the requester records and transmits the transmission time T3 205 of the second message in the second message. Finally, the requester checks the reception time T4 206 of the second message.

상기 리퀘스터는 이와 같이 확인된 상기 T1(203) 내지 상기 T4(206)를 이용 하여 다음 수학식 2와 같이 표현되는 상기 전파 시간을 계산할 수 있다.The requester may calculate the propagation time represented by Equation 2 using the T1 203 to T4 206 identified as described above.

전파 시간 = ((T2 - T1) + (T4 - T3)) / 2Propagation time = ((T2-T1) + (T4-T3)) / 2

여기서, 상기 전파 시간을 측정한 방법은 다음 (1) 내지 (4)의 조건을 만족한다고 가정한다.Here, it is assumed that the method of measuring the propagation time satisfies the following conditions (1) to (4).

(1) 상기 전파 시간이 대칭적이다. 즉, 양방향 모두에서 동일하다.(1) The propagation time is symmetrical. That is, the same in both directions.

(2) 상기 전파 시간은 안정적이다(is stable). 즉, 4개의 타임 스탬프인 상기 T1 내지 상기 T4를 얻기 위한 시간 비율(timescale)이 일정하다.(2) The propagation time is stable. In other words, the timescale for obtaining the four time stamps T1 to T4 is constant.

(3) 마스터 노드와 슬래이브 노드 사이에 주파수의 차이가 작다.(3) The frequency difference between the master node and the slave node is small.

(4) 상기 타임 스탬프의 값은 정확하다.(4) The value of the time stamp is correct.

그러나, 상기 (1) 및 상기 (2)의 가정은 상기 리퀘스터와 상기 리스폰더간에 변하기 쉬운 지연(variable delay)의 근원(source)이 존재할 수 없음을 의미한다. 다시 말해, 상기 마스터 노드 및 상기 슬래이브 노드간에 네트워크 스위치, 네트워크 브릿지 등의 중계 장치가 존재할 수 없음을 의미한다. 이러한 어떠한 장치의 존재는 지터(Jitter), 원더(Wander) 및 시간 동기화의 부정확(inaccuracy)을 야기할 수 있다.However, the assumption of (1) and (2) means that there can be no source of variable delay between the requester and the responder. In other words, a relay device such as a network switch or a network bridge cannot exist between the master node and the slave node. The presence of any such device can cause jitter, wonder and inaccuracy of time synchronization.

이와 같은 상기 마스터 노드와 상기 슬래이브 노드간에 상기 네트워크 스위치 또는 상기 네트워크 브릿지가 존재함으로써 전파 시간의 변화 및 비대칭성이 발생하고, 이를 다루기 위한 다른 접근법(approach)로서 상기 네트워크 스위치 또는 상기 네트워크 브릿지와 같은 중계 장치에서 각각의 메시지의 수신 시각 및 전송 시각을 상기 메시지에 기록하는 방법이 있다. 이러한 상기 방법은, 상기 중계 장치에서 트랜스패어런트 클락(Transparent Clock)이라 불리는 클락과 시간을 기록하는 하드웨어(a clock and time stamping hardware)를 포함할 것을 요구한다.The presence of the network switch or the network bridge between the master node and the slave node causes a change and asymmetry of propagation time, and as another approach to deal with this, such as the network switch or the network bridge. There is a method of recording a reception time and a transmission time of each message in the relay device in the message. This method requires that the relay device include a clock and time stamping hardware called a transparent clock.

상기 트랜스패어런트 클락은 상기 메시지의 수신 시각 및 상기 메시지의 전송 시각간의 차이를 계산한다. 이때, 이러한 상기 차이를 체류 시간(residence time)이라 한다. 상기 체류 시간은 상기 메시지의 필드에 누적되고, 누적된 값은 상기 전파 시간의 변화된 부분을 의미한다. 즉, 상기 값은 상기 슬래이브 노드에서 상기 중계 장치로 인해 변화된 상기 전파 시간의 변화량을 의미할 수 있다.The transparent clock calculates a difference between the reception time of the message and the transmission time of the message. In this case, this difference is called a residence time. The dwell time is accumulated in the field of the message, and the accumulated value means a changed portion of the propagation time. That is, the value may mean an amount of change of the propagation time changed by the relay device in the slave node.

도 3은 슬래이브 노드와 마스터 노드 사이에 중계 장치가 존재하는 경우, 전파 시간을 측정하는 방법의 일례이다.3 is an example of a method of measuring a propagation time when a relay device exists between a slave node and a master node.

슬래이브 노드(301)는 제1 메시지를 마스터 노드(302)로 전송하고, 마스터 노드(302)는 상기 제1 메시지에 대응하는 제2 메시지를 슬래이브 노드(301)로 전송함으로써 위에서 설명한 도 2에서와 같이 상기 T1 내지 상기 T4를 측정한다. 이때, 상기 제1 메시지 및 상기 제2 메시지는 중계 노드(303)를 거치게 되고, 중계 노드(303)는 중계 노드(303)가 포함하는 트랜스패어런트 클락을 이용하여 중계 노드(303)에서의 체류 시간을 측정한다.The slave node 301 transmits a first message to the master node 302, and the master node 302 transmits a second message corresponding to the first message to the slave node 301, thereby explaining FIG. 2. Measure T1 to T4 as in. In this case, the first message and the second message pass through the relay node 303, and the relay node 303 stays at the relay node 303 using a transparent clock included in the relay node 303. Measure your time.

즉, 중계 노드(303)는 상기 제1 메시지의 수신 시각(304) 및 전송 시각(305)의 차이 R1을 계산하고, 상기 제2 메시지의 수신 시각(306) 및 전송 시각(307)의 차이 R2를 계산하여 상기 제1 메시지 및 상기 제2 메시지에 각각 기록함으로써 슬래이브 노드(301)는 중계 노드(303)에 의해 발생하는 상기 전파 시간의 변화량을 알 수 있다.That is, the relay node 303 calculates the difference R1 between the reception time 304 and the transmission time 305 of the first message, and the difference R2 between the reception time 306 and the transmission time 307 of the second message. By calculating and recording in the first message and the second message, respectively, the slave node 301 can know the change amount of the propagation time generated by the relay node 303.

이때, 상기 전파 시간은 슬래이브 노드(301)에서 다음 수학식 3과 같이 계산될 수 있다.In this case, the propagation time may be calculated by the slave node 301 as shown in Equation 3 below.

전파 시간 = ((T2 - T1 - R1) + (T4 - T3 - R2)) / 2Propagation time = ((T2-T1-R1) + (T4-T3-R2)) / 2

이와 같이 상기 트랜스패어런트 클락을 이용한 접근법은 슬래이브 노드와 마스터 노드간의 전파 시간이 네트워크 재구성 후에 다시 측정되어야 한다. 이는 위와 같은 메커니즘이 상기 트랜스패어런트 클락의 모든 쌍간에 상기 전파 시간의 측정을 제공하는 것이 아니라 오직 각각의 슬래이브 노드와 상기 슬래이브 노드의 마스터 노드간에서만 상기 전파 시간의 측정을 제공하기 때문이다. 이러한 상기 메커니즘은 네트워크가 재구성될 때 동기화의 손실을 야기할 수 있다.As such, the approach using the transparent clock requires that the propagation time between the slave node and the master node be measured again after network reconfiguration. This is because such a mechanism does not provide a measure of the propagation time between all pairs of transparent clocks, but only a measure of the propagation time between each slave node and the master node of the slave node. . This mechanism may cause a loss of synchronization when the network is reconfigured.

또 다른 접근법으로서, 상기 트랜스패어런트 클락이 스스로 상기 트랜스패어런트 클락간의 전파 시간을 측정하기 위해 메시지를 교환하는 방법이 있다. 즉, 이러한 상기 메시지의 교환은 상기 트랜스패어런트 클락의 이웃한 모든 쌍간에 양방향으로 이루어진다. 상기 트랜스패어런트 클락들은 피어-투-피어 트랜스패어런트 클락이라 불리는 특성을 갖는다. 즉, 마스터 노드와 슬래이브 노드가 상기 피어-투-피어 트랜스패어런트 클락 사이에서 연결될 때, 상기 마스터 노드가 전송 시각이 기록된 메시지를 상기 슬래이브 노드로 전송하고, 각각의 상기 피어-투-피어 트랜스패어런트 클락은 체류 시간을 상기 메시지에 누적한다. 또한, 상기 피어-투-피어 트랜스패어런트 클락간에 측정된 전파 시간을 또한 상기 메시지에 누적한다. 즉, 상기 메시지가 도착한 링크의 상기 전파 시간을 상기 메시지에 누적한다.Another approach is for the transparent clocks to exchange messages for themselves to measure the propagation time between the transparent clocks. In other words, the message exchange is bidirectional between all neighboring pairs of the transparent clocks. The transparent clocks have a property called peer-to-peer transparent clock. That is, when a master node and a slave node are connected between the peer-to-peer transparent clock, the master node transmits a message indicating a transmission time to the slave node, and each of the peer-to-peer Peer transparent clock accumulates the time of stay in the message. In addition, the propagation time measured between the peer-to-peer transparent clocks is also accumulated in the message. That is, the propagation time of the link on which the message arrived is accumulated in the message.

이때, 상기 메시지를 수신한 상기 슬래이브 노드는 상기 메시지에 기록된 상기 마스터 노드에서의 전송 시각, 상기 누적된 체류 시간, 상기 누적된 전파 시간 및 상기 메시지의 수신 시각을 이용하여 바로 상기 마스터 노드로부터의 오프셋을 계산할 수 있다.At this time, the slave node receiving the message directly from the master node using the transmission time, the accumulated dwell time, the accumulated propagation time and the reception time of the message in the master node recorded in the message. The offset of can be calculated.

도 4는 피어-투-피어 트랜스패어런트 클락을 이용한 오프셋 계산 방법의 일례이다.4 is an example of an offset calculation method using a peer-to-peer transparent clock.

마스터 노드(401)는 슬래이브 노드(402)로 메시지를 전송한다. 이때, 상기 메시지는 상기 메시지의 전송 시각 T1(403)을 포함한다. 상기 메시지가 중계 노드(404)를 거치는 경우, 중계 노드(404)는 중계 노드(404)에서의 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406)을 계산하여 상기 메시지에 기록하여 슬래이브 노드(402)로 전송한다.The master node 401 sends a message to the slave node 402. In this case, the message includes a transmission time T1 403 of the message. When the message passes through the relay node 404, the relay node 404 calculates the dwell time 405 at the relay node 404 and the propagation time 406 of the link that received the message and records it in the message. To the slave node 402.

슬래이브 노드(402)는 상기 메시지의 수신 시각 T2(407) 및 마지막 중계 노드와 슬래이브 노드(402)간의 링크에 대한 전파 시간 D1(408)을 측정한다. 슬래이브 노드(402)는 상기 메시지의 전송 시각 T1(403), 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406), 전파 시간 D1(408) 및 상기 메시지의 수신 시각 T2(407)을 이용하여 마스터 노드(401)로부터의 오프셋을 계산할 수 있다.The slave node 402 measures the reception time T2 407 of the message and the propagation time D1 408 for the link between the last relay node and the slave node 402. The slave node 402 is the transmission time T1 403 of the message, the dwell time 405 and the propagation time 406 of the link that received the message, the propagation time D1 408 and the reception time T2 of the message ( 407 may be used to calculate an offset from the master node 401.

이때, 슬래이브 노드(402)는 다음 수학식 4와 같이 마스터 노드(401)로부터의 오프셋을 계산할 수 있다.In this case, the slave node 402 may calculate an offset from the master node 401 as shown in Equation 4 below.

오프셋 = T2 - T1 - R1 - D1Offset = T2-T1-R1-D1

여기서, 상기 R1은 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406)의 누적된 값을 의미할 수 있다.Here, R1 may mean a cumulative value of a dwell time 405 and a propagation time 406 of a link receiving the message.

도 2 및 도 3에서 설명한 전파 시간 측정 방법은 마스터 노드와 슬래이브 노드간에 메시지를 교환하면서 전파 시간을 측정함으로써 오프셋을 측정하는 양방향 방법이고, 도 4에서 설명한 오프셋 측정 방법은 마스터 노드에서 슬래이브 노드로 단 한번의 메시지 전송으로 오프셋을 계산할 수 있는 단방향 방법이다.The propagation time measuring method described in FIGS. 2 and 3 is a bidirectional method of measuring an offset by measuring a propagation time while exchanging messages between a master node and a slave node, and the offset measuring method described in FIG. 4 is a slave node in a master node. This is a one-way way to calculate the offset in one message transmission.

2. 본 발명에 따른 시간 동기화 방법.2. Time synchronization method according to the present invention.

본 발명에 따른 시간 동기화 방법은 다음 (1) 내지 (3)의 경우에 이용될 수 있다.The time synchronization method according to the present invention can be used in the following cases (1) to (3).

(1) 각각의 슬래이브 노드가 마스터 노드와의 사이에 존재하는 트랜스패어런트 클락 없이 상기 마스터 노드와의 지연 시간을 측정한다.(1) Each slave node measures the delay time with the master node without the transparent clock present between the master nodes.

(2) 각각의 슬래이브 노드가 마스터 노드와의 지연 시간을 측정하고 이때, 상기 슬래이브 노드와 상기 마스터 노드간에 하나 또는 그 이상의 단 대 단(end-to-end) 트랜스패어런트 클락이 존재한다.(2) Each slave node measures the delay time with the master node, where there is one or more end-to-end transparent clocks between the slave node and the master node. .

(3) 슬래이브 노드와 마스터 노드간에 하나 또는 그 이상의 피어-투-피어 트랜스패어런트 클락이 존재하고, 각각의 전파 시간이 이웃한 피어-투-피어 트랜스패어런트 클락 쌍에서 개별적으로 측정된다. 상기 마스터 노드와 첫 번째 피어-투- 피어 트랜스패어런트 클락과의 전파 시간 및 상기 슬래이브 노드와 마지막 피어-투-피어 트랜스패어런트 클락과의 전파 시간 또한 개별적으로 측정된다.(3) There is one or more peer-to-peer transparent clocks between the slave node and the master node, and each propagation time is measured separately in neighboring peer-to-peer transparent clock pairs. The propagation time between the master node and the first peer-to-peer transparent clock and the propagation time between the slave node and the last peer-to-peer transparent clock are also measured separately.

여기서, 위상 측정 입도가 제한된 클락을 이용하여 안정적인 전파 시간을 측정할 때, 상기 전파 시간의 측정값(measured values)은 두 값 사이에서 오르내리는 경향이 있다. 즉, 상기 측정값은 전파 시간보다 작은 클락 입도(clock granularity)의 최대 정수배(greatest integer multiple)와 상기 전파 시간보다 큰 클릭 입도의 최소 정수배 사이의 값을 갖는다.Here, when the stable propagation time is measured using a clock with a limited particle size of the phase measurement, the measured values of the propagation time tend to rise between the two values. That is, the measurement has a value between a maximum integer multiple of clock granularity smaller than the propagation time and a minimum integer multiple of the click granularity greater than the propagation time.

이와 같은 상기 두 값 사이의 전파 시간은 연속적인 측정값의 평균을 통해 실제 전파 시간(actual propagation time)을 측정할 수 있고, 상기 평균을 계산하기 위해 다음 두 가지 방법을 이용할 수 있다.The propagation time between the two values can measure the actual propagation time through the average of successive measured values, and the following two methods can be used to calculate the average.

첫 번째는 M 길이의 슬라이딩 윈도우(sliding window of length M)를 이용하는 방법이고, 두 번째는 일반적인 선형 디지털 필터(general linear digital filter)를 이용하는 방법이다.The first method uses a sliding window of length M, and the second method uses a general linear digital filter.

도 5는 본 발명의 제1 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.5 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to the first embodiment of the present invention.

단계(S510)에서 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 이때, 상기 슬래이브 노드는 상기 시간 단위마다 계산된 상기 측정값을 기선정된 수만큼 저장 및 유지할 수 있다. 현재 시간 단위에서 상기 측정값을 계산하기 위해 상기 슬래이브 노드는 단계(S510)에 단계(S511) 내지 단계(S514)를 포함하여 수행할 수 있다.In operation S510, the slave node calculates a measurement value for the propagation time to the master node for each predetermined time unit using the time stamp. In this case, the slave node may store and maintain the measured value calculated for each time unit by a predetermined number. In order to calculate the measured value in the current time unit, the slave node may be performed by including steps S511 to S514 in step S510.

단계(S511)에서 상기 슬래이브 노드는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송한다. 즉, 상기 슬래이브 노드는 전파 시간에 대한 상기 측정값을 계산하기 위해 위에서 설명한 바와 같이 4개의 시각을 필요로 하고, 이를 위해 상기 제1 메시지를 상기 마스터 노드로 전송한다. 이때, 상기 제1 타임 스탬프는 상기 수학식 2의 T1에 해당한다.In step S511, the slave node records a first time stamp, which is a transmission time of a first message, in the first message and transmits it to the master node. That is, the slave node needs four times as described above to calculate the measurement for propagation time, and for this purpose sends the first message to the master node. In this case, the first time stamp corresponds to T1 of Equation 2.

단계(S512)에서 상기 마스터 노드는 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인한다. 이때, 상기 제2 타임 스탬프는 상기 수학식 2의 T2에 해당한다.In step S512, the master node checks a second time stamp that is a reception time of the first message. In this case, the second time stamp corresponds to T2 of Equation 2.

단계(S513)에서 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송한다. 여기서 상기 제3 타임 스탬프는 상기 수학식 2의 T3에 해당하고, 상기 제2 메시지를 상기 슬래이브 노드로 전송함으로써 상기 제1 타임 스탬프 내지 상기 제3 타임 스탬프를 전송한다.In step S513, the master node records the first time stamp, the second time stamp, and a third time stamp, which is a transmission time of a second message corresponding to the first message, in the second message. Send to node. Here, the third time stamp corresponds to T3 of Equation 2, and transmits the first time stamp to the third time stamp by transmitting the second message to the slave node.

단계(S514)에서 상기 슬래이브 노드는 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산한다. 이때, 상기 제4 타임 스탬프는 상기 수학식 2의 T4에 해당한다. 즉, 상기 슬래이브 노드는 다음 수학식 5와 같이 상기 측정값을 계산할 수 있다.In operation S514, the slave node checks a fourth time stamp that is a reception time of the second message, and calculates a measurement value for the propagation time using the first time stamp and the fourth time stamp. . In this case, the fourth time stamp corresponds to T4 of Equation 2. That is, the slave node may calculate the measured value as shown in Equation 5 below.

Figure 112007021509738-pat00003
Figure 112007021509738-pat00003

여기서, 상기 dk는 상기 측정값을, 상기 T1,k는 상기 제1 타임 스탬프를, 상기 T2,k는 상기 제2 타임 스탬프를 상기 T3,k는 상기 제3 스탬프를, 상기 T4,k는 상기 제4 타임 스탬프를, 상기 k는 상기 제1 타임 스탬프 내지 상기 제4 타임 스탬프가 k-번째 시간 단위에 측정되었음을 각각 의미한다.Here, d k is the measured value, T 1, k is the first time stamp, T 2, k is the second time stamp, T 3, k is the third stamp, T 4 , k denotes the fourth time stamp, and k denotes that the first to fourth time stamps are measured in k-th time units, respectively.

단계(S520)에서 상기 슬래이브 노드는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 길이 M의 슬라이딩 윈도우는 M개의 상기 측정값을 저장할 수 있는 버퍼를 포함할 수 있다. 이때, 상기 슬라이딩 윈도우는 가장 최근의 측정값 M개를 상기 버퍼에 유지할 수 있고, 상기 M개의 측정값을 통해 상기 실제 전파 시간의 추정값을 계산할 수 있다. 이와 같이 상기 슬라이딩 윈도우를 통해 상기 실제 전파 시간의 추정값을 계산하는 단계(S520)에 대해서는 도 6을 통해 더욱 자세히 설명한다.In operation S520, the slave node calculates an estimated value of actual propagation time using the measured value and the sliding window. The sliding window of length M may comprise a buffer capable of storing M measurements. In this case, the sliding window may maintain M of the most recent measured values in the buffer, and calculate the estimated value of the actual propagation time through the M measured values. As described above, the step (S520) of calculating the estimated value of the actual propagation time through the sliding window will be described in more detail with reference to FIG. 6.

단계(S530)에서 상기 슬래이브 노드는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 오프셋을 계산하기 위해 다음 수학식 6을 이용할 수 있다.In operation S530, the slave node calculates an offset by using a message transmission time at the master node, a message reception time at the slave node, and the estimated value. In this case, the slave node may use the following equation (6) to calculate the offset.

오프셋 = T2 - T1 - D1Offset = T2-T1-D1

여기서, 상기 T2는 상기 메시지 수신 시각을, 상기 T1은 상기 메시지 전송 시각을, 상기 D1은 상기 추정값을 각각 의미한다.Here, T2 denotes the message reception time, T1 denotes the message transmission time, and D1 denotes the estimated value.

즉, 상기 슬래이브 노드에서의 상기 메시지 수신 시각에서 상기 마스터 노드에서의 상기 메시지 전송 시각을 빼면, 상기 메시지가 상기 슬래이브 노드에 도달하기까지의 시간이 남는다. 여기서 다시 상기 슬라이딩 윈도우를 이용하여 계산된 상기 전파 시간의 측정값을 제외하면 상기 슬래이브 노드와 상기 마스터 노드간의 타이밍 차이를 알 수 있고, 이를 이용하여 상기 슬래이브 노드와 상기 마스터 노드간의 시간 동기화를 수행할 수 있다.That is, subtracting the message transmission time from the master node from the message reception time of the slave node, the time until the message reaches the slave node remains. Here, except for the measurement of the propagation time calculated using the sliding window, a timing difference between the slave node and the master node may be known, and time synchronization between the slave node and the master node may be performed using the same. Can be done.

도 6은 본 발명의 제1 실시예에 있어서, 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다. 도 6에 도시된 바와 같이 상기 슬라이딩 윈도우를 이용하여 상기 추정값을 계산하기 위해 단계(S601) 및 단계(S602)는 도 5에서 설명한 단계(S520)에 포함되어 수행될 수 있다.6 is a flowchart illustrating a method of calculating an estimated value of actual propagation time using a sliding window according to the first embodiment of the present invention. As illustrated in FIG. 6, steps S601 and S602 may be included in step S520 described with reference to FIG. 5 to calculate the estimated value using the sliding window.

단계(S601)에서 상기 슬래이브 노드는 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지한다. 위에서 설명한 바와 같이 M 길이의 상기 슬라이딩 윈도우는 상기 M개의 상기 측정값을 유지할 수 있는 버퍼를 포함할 수 있고, 상기 버퍼를 통해 상기 M개의 측정값을 유지할 수 있다.In step S601, the slave node maintains the measured value most recently calculated by the number corresponding to the length of the sliding window. As described above, the sliding window of M length may include a buffer capable of holding the M measured values, and maintain the M measured values through the buffer.

단계(S602)에서 상기 슬래이브 노드는 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산한다. 이때, 상기 슬래이브 노드는 상기 수학식 1을 이용 하여 상기 제2 추정값을 계산할 수 있다.In step S602, the slave node calculates a second estimate of the actual propagation time as the estimate using the average of the retained measurements and a first estimate calculated in a previous time unit. In this case, the slave node may calculate the second estimated value using Equation 1.

즉, M 길이의 슬라이딩 윈도우를 이용하여 상기 연속적인 측정값에 대한 평균을 구하고, 상기 평균과 전파 시간의 측정값 중에서 현재의 측정값 및 가장 최근의 M-1개의 측정값들에 대한 평균을 이용하여 상기 수학식 1과 같이 상기 제2 추정값을 상기 추정값으로서 계산할 수 있다.That is, the average of the continuous measured values is obtained by using the sliding window of M length, and the average of the current measured value and the most recent M-1 measured values among the average and the propagation time values are used. As shown in Equation 1, the second estimated value may be calculated as the estimated value.

상기 수학식 1을 다시 살펴보면, 상기 dk는 전파 시간의 k-번째의 측정값 즉, 시간 단위 k에서의 측정값을 의미하고, 상기 Dk는 실제 전파 시간의 k-번째 추정값(estimate) 즉, 상기 시간 단위 k에서의 추정값이다. 즉, 여기서 현재 시간 단위의 추정값은 상기 제2 추정값을 의미하고, 이전 시간 단위의 추정값은 상기 제1 추정값을 의미한다.Referring back to Equation 1, d k denotes a k-th measurement value of propagation time, that is, a measurement value in time unit k, and D k denotes a k-th estimate of actual propagation time. , An estimated value in the time unit k. In other words, the estimated value of the current time unit means the second estimated value, and the estimated value of the previous time unit means the first estimated value.

또한, 상기 M은 상기 슬라이딩 윈도우의 기선정된(predetermined) 길이이다.In addition, M is a predetermined length of the sliding window.

이때, 상기 dk는 제한된 위상 측정 입도(phase measurement granularity)를 갖는 클락(clock)의 사용함에 따라 에러가 발생하기 때문에 상기 dk와 dk-M의 차이를 계산하여 상기 차이의 상기 M에 대한 비율 즉, 가장 최근의 M개의 측정값에 대한 평균 및 (k-1)-번째의 추정값인 상기 Dk-1을 이용하여 상기 추정값 Dk를 계산할 수 있다.At this time, since the error occurs due to the use of a clock having a limited phase measurement granularity (d k ), the difference between the d k and d kM by calculating the difference of the ratio to the M , The estimated value D k may be calculated using the average of the most recent M measured values and the (k-1) -th estimated value D k-1 .

상기 H(z)는 상기 추정값 Dk를 위한 계차방정식(difference equation)에 대한 이송 함수(transfer function)를 나타낸다.H (z) represents a transfer function for a difference equation for the estimated value D k .

여기서, 상기 슬라이드 윈도우의 길이 M은 상기 dk를 변화시키는 샘플들의 수에 비해 큰 값으로 선택되어야 한다. 실제 실험에 따르면, 상기 M이 32 또는 32보다 더 큰 수로 선택되었을 때 좋은 결과를 갖는다.Here, the length M of the slide window should be selected to be larger than the number of samples for changing the d k . According to practical experiments, good results are obtained when M is chosen to be 32 or a larger number than 32.

도 7은 본 발명의 제2 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 7에 도시된 바와 같이 기기(700)는 측정값 계산부(710), 추정값 계산부(720) 및 오프셋 계산부(730)를 포함한다.7 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the second embodiment of the present invention. As shown in FIG. 7, the device 700 includes a measured value calculator 710, an estimated value calculator 720, and an offset calculator 730.

측정값 계산부(710)는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 현재 시간 단위의 측정값을 계산하기 위해 측정값 계산부(710)는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송할 수 있다.The measured value calculator 710 calculates the measured value for the propagation time to the master node for each predetermined time unit by using the time stamp. In order to calculate a measurement value of a current time unit, the measurement value calculator 710 may record a first time stamp, which is a transmission time of a first message, in the first message and transmit it to the master node.

이때, 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제1 메시지의 수신 시각인 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 슬래이브 노드를 구성하는 기기(700)로 전송할 수 있고, 측정값 계산부(710)는 기기(700)에서 수신한 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인한다.In this case, the master node transmits the first time stamp, the second time stamp that is the reception time of the first message, and a third time stamp that is the transmission time of the second message corresponding to the first message, to the second message. The device may be recorded and transmitted to the device 700 constituting the slave node, and the measurement value calculator 710 checks a fourth time stamp that is a reception time of the second message received from the device 700.

이제 측정값 계산부(710)는 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산할 수 있다.The measured value calculator 710 may calculate the measured value for the propagation time by using the first time stamp and the fourth time stamp.

추정값 계산부(720)는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 이때, 상기 추정값을 계산하기 위해 추정값 계산 부(720)는 측정값 유지부(721) 및 제2 추정값 계산부(722)를 포함할 수 있다.The estimated value calculator 720 calculates an estimated value of the actual propagation time using the measured value and the sliding window. In this case, in order to calculate the estimated value, the estimated value calculator 720 may include a measured value retainer 721 and a second estimated value calculator 722.

측정값 유지부(721)는 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지한다. 위에서 설명한 바와 같이 M 길이의 상기 슬라이딩 윈도우는 상기 M개의 상기 측정값을 유지할 수 있는 버퍼를 포함할 수 있고, 상기 버퍼를 통해 상기 M개의 측정값을 유지할 수 있다.The measured value holding unit 721 maintains the measured value most recently calculated by the number corresponding to the length of the sliding window. As described above, the sliding window of M length may include a buffer capable of holding the M measured values, and maintain the M measured values through the buffer.

제2 추정값 계산부(722)는 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산한다. 즉, M 길이의 슬라이딩 윈도우를 이용하여 상기 연속적인 측정값에 대한 평균을 구하고, 상기 평균과 전파 시간의 측정값 중에서 현재의 측정값 및 가장 최근의 M-1개의 측정값들에 대한 평균을 이용하여 상기 수학식 1과 같이 상기 제2 추정값을 상기 추정값으로서 계산할 수 있다.The second estimated value calculator 722 calculates the second estimated value of the actual propagation time as the estimated value using the average of the retained measured values and the first estimated value calculated in a previous time unit. That is, the average of the continuous measured values is obtained by using the sliding window of M length, and the average of the current measured value and the most recent M-1 measured values among the average and the propagation time values are used. As shown in Equation 1, the second estimated value may be calculated as the estimated value.

상기 수학식 1을 다시 살펴보면, 상기 dk는 전파 시간의 k-번째의 측정값 즉, 시간 단위 k에서의 측정값을 의미하고, 상기 Dk는 실제 전파 시간의 k-번째 추정값(estimate) 즉, 상기 시간 단위 k에서의 추정값이다. 즉, 여기서 현재 시간 단위의 추정값은 상기 제2 추정값을 의미하고, 이전 시간 단위의 추정값은 상기 제1 추정값을 의미한다.Referring back to Equation 1, d k denotes a k-th measurement value of propagation time, that is, a measurement value in time unit k, and D k denotes a k-th estimate of actual propagation time. , An estimated value in the time unit k. In other words, the estimated value of the current time unit means the second estimated value, and the estimated value of the previous time unit means the first estimated value.

또한, 상기 M은 상기 슬라이딩 윈도우의 기선정된(predetermined) 길이이다.In addition, M is a predetermined length of the sliding window.

이때, 상기 dk는 제한된 위상 측정 입도(phase measurement granularity)를 갖는 클락(clock)의 사용함에 따라 에러가 발생하기 때문에 상기 dk와 dk-M의 차이를 계산하여 상기 차이의 상기 M에 대한 비율 즉, 가장 최근의 M개의 측정값에 대한 평균 및 (k-1)-번째의 추정값인 상기 Dk-1을 이용하여 상기 추정값 Dk를 계산할 수 있다.At this time, since the error occurs due to the use of a clock having a limited phase measurement granularity (d k ), the difference between the d k and d kM by calculating the difference of the ratio to the M , The estimated value D k may be calculated using the average of the most recent M measured values and the (k-1) -th estimated value D k-1 .

상기 H(z)는 상기 추정값 Dk를 위한 계차방정식(difference equation)에 대한 이송 함수(transfer function)를 나타낸다.H (z) represents a transfer function for a difference equation for the estimated value D k .

여기서, 상기 슬라이드 윈도우의 길이 M은 상기 dk를 변화시키는 샘플들의 수에 비해 큰 값으로 선택되어야 한다. 실제 실험에 따르면, 상기 M이 32 또는 32보다 더 큰 수로 선택되었을 때 좋은 결과를 갖는다.Here, the length M of the slide window should be selected to be larger than the number of samples for changing the d k . According to practical experiments, good results are obtained when M is chosen to be 32 or a larger number than 32.

오프셋 계산부(730)는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다.The offset calculator 730 calculates an offset using the message transmission time at the master node, the message reception time at the slave node, and the estimated value.

이와 같이 본 발명에 따른 시간 동기화 방법 및 슬래이브 노드를 구성하는 기기를 이용하면 상기 슬래이브 노드에서 기선정된 시간 단위마다 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.As described above, when the time synchronization method and the device configuring the slave node are used, the measured values of the propagation time are calculated based on a time stamp for each predetermined time unit in the slave node, and the average of the measured values is calculated. And calculating the offset from the master node using the sliding window to improve the performance of jitter, wonder and time synchronization.

도 8은 본 발명의 제3 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.8 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to a third embodiment of the present invention.

단계(S810)에서 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 이때, 현재 시간 단위에서 상기 측정값을 계산하기 위해 상기 슬래이브 노드는 단계(S810)에 단계(S811) 내지 단계(S814)를 포함하여 수행할 수 있다.In operation S810, the slave node calculates a measurement value for the propagation time to the master node for each predetermined time unit by using the time stamp. In this case, in order to calculate the measured value in the current time unit, the slave node may be performed by including steps S811 to S814 in step S810.

단계(S811)에서 상기 슬래이브 노드는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송한다. 즉, 상기 슬래이브 노드는 전파 시간에 대한 상기 측정값을 계산하기 위해 위에서 설명한 바와 같이 4개의 시각을 필요로 하고, 이를 위해 상기 제1 메시지를 상기 마스터 노드로 전송한다. 이때, 상기 제1 타임 스탬프는 상기 수학식 5의 T1,k에 해당한다.In operation S811, the slave node records a first time stamp, which is a transmission time of a first message, in the first message and transmits it to the master node. That is, the slave node needs four times as described above to calculate the measurement for propagation time, and for this purpose sends the first message to the master node. In this case, the first time stamp corresponds to T 1, k of Equation 5.

단계(S812)에서 상기 마스터 노드는 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인한다. 이때, 상기 제2 타임 스탬프는 상기 수학식 5의 T2,k에 해당한다.In step S812, the master node checks a second time stamp that is a reception time of the first message. In this case, the second time stamp corresponds to T 2, k in Equation 5.

단계(S813)에서 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송한다. 이때, 상기 제3 타임 스탬프는 상기 수학식 5의 T3,k에 해당한다.In operation S813, the master node records the first time stamp, the second time stamp, and a third time stamp, which is a transmission time of a second message corresponding to the first message, in the second message. Send to node. In this case, the third time stamp corresponds to T 3, k of Equation 5.

단계(S814)에서 상기 슬래이브 노드는 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산한다. 이때, 상기 제4 타임 스탬프는 상기 수학식 5의 T4,k에 해당하고 따라서, 상기 슬래이브 노드는 상기 수학식 5와 같이 시간 단위 k에서의 전파 시간에 대한 상기 측정값을 계산할 수 있다.In operation S814, the slave node checks a fourth time stamp that is a reception time of the second message, and calculates a measurement value for the propagation time using the first time stamp and the fourth time stamp. . In this case, the fourth time stamp corresponds to T 4, k of Equation 5 , and thus, the slave node may calculate the measured value for the propagation time in time unit k as shown in Equation 5.

단계(S820)에서 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산한다. 이와 같이 상기 선형 디지털 필터를 통해 상기 실제 전파 시간의 추정값을 계산하는 단계(S820)에 대해서는 도 9를 통해 더욱 자세히 설명한다.In operation S820, the slave node calculates an estimated value of actual propagation time using the measured value and a linear digital filter. As described above, the step S820 of calculating the estimated value of the actual propagation time through the linear digital filter will be described in more detail with reference to FIG. 9.

단계(S830)에서 상기 슬래이브 노드는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 오프셋을 계산하기 위해 상기 수학식 9를 이용할 수 있다.In operation S830, the slave node calculates an offset using a message transmission time at the master node, a message reception time at the slave node, and the estimated value. In this case, the slave node may use Equation 9 to calculate the offset.

즉, 상기 슬래이브 노드에서의 상기 메시지 수신 시각에서 상기 마스터 노드에서의 상기 메시지 전송 시각을 빼면, 상기 메시지가 상기 슬래이브 노드에 도달하기까지의 시간이 남는다. 여기서 다시 상기 선형 디지털 필터를 이용하여 계산된 상기 전파 시간의 측정값을 제외하면 상기 슬래이브 노드와 상기 마스터 노드간의 타이밍 차이를 알 수 있고, 이를 이용하여 상기 슬래이브 노드와 상기 마스터 노드간의 시간 동기화를 수행할 수 있다.That is, subtracting the message transmission time from the master node from the message reception time of the slave node, the time until the message reaches the slave node remains. Here, except for the measured value of the propagation time calculated using the linear digital filter, the timing difference between the slave node and the master node may be known, and the time synchronization between the slave node and the master node may be used using the same. Can be performed.

도 9는 본 발명의 제3 실시예에 있어서, 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다. 도 9에 도시된 바와 같이 단계(S901) 내지 단계(S903)은 도 8에서 설명한 단계(S820)에 포함되어 수행될 수 있다.9 is a flowchart illustrating a method of calculating an estimated value of actual propagation time using a linear digital filter according to a third embodiment of the present invention. As illustrated in FIG. 9, steps S901 to S903 may be performed by being included in step S820 described with reference to FIG. 8.

단계(S901)에서 상기 슬래이브 노드는 기선정된 제1 수만큼 상기 측정값을 유지한다. 여기서, 상기 제1 수는 유지하고자 하는 상기 측정값의 수에 따라 변형 이 가능하다.In step S901, the slave node maintains the measured value by a predetermined first number. Here, the first number may be modified according to the number of the measured values to be maintained.

단계(S902)에서 상기 슬래이브 노드는 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지한다. 여기서, 상기 제2 수는 유지하고자 하는 상기 제1 추정값의 수에 따라 변형이 가능하다.In step S902, the slave node maintains a first estimated value measured in a previous time unit by a predetermined second number. Here, the second number may be modified according to the number of the first estimated values to be maintained.

단계(S903)에서 상기 슬래이브 노드는 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산한다. 이때, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다.In step S903, the slave node calculates a second estimated value that is an estimated value of the actual propagation time using the retained measured value, the first estimated value, and the linear digital filter. In this case, the linear digital filter may apply a plurality of filter coefficients to the held measured value and the first estimated value and calculate the sum as the second estimated value.

일반적인 선형 디지털 필터를 이용하여 상기 전파 시간의 연속적으로 유지된 측정값에 대한 평균을 구하기 위해 상기 측정값들의 시퀀스는 다음 수학식 7과 같이 표현되는 상기 일반적인 선형 디지털 필터로 입력되고, 그 결과를 통해 상기 제2 추정값 Dk를 계산할 수 있다..The sequence of measurement values is input to the general linear digital filter represented by Equation 7 to obtain an average of the continuously maintained measurement values of the propagation time using a general linear digital filter. The second estimate D k may be calculated.

Figure 112007021509738-pat00004
Figure 112007021509738-pat00004

Figure 112007021509738-pat00005
Figure 112007021509738-pat00005

여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를 각각 의미한다. 또한, 여기서 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미한다.Where d k is the measured value in k -th time units, D k is the second estimate in k-th time units, M is the length of the sliding window, and H (z) is a filter. In a filter transfer function, a i (1 <i <n) and b j (0 <j <m) mean the plurality of filter coefficients, respectively. In addition, n denotes the first number and m denotes the second number.

뿐만 아니라, 상기 수학식 7에서 상기 선형 디지털 필터의 출력(output)이 상기 실제 전파 시간에 수렴하기 위해 상기 필터 계수는 다음 수학식 8의 조건을 만족해야 한다.In addition, in order for the output of the linear digital filter to converge to the actual propagation time in Equation 7, the filter coefficient must satisfy the condition of Equation 8.

Figure 112007021509738-pat00006
Figure 112007021509738-pat00006

여기서, 상기 선형 디지털 필터의 밴드위스(bandwidth)는 상기 dk의 변화량(variation)의 이산 주파수(discrete frequency)에 비해 작아야 한다.Here, the bandwidth of the linear digital filter should be smaller than the discrete frequency of the variation of dk.

도 10은 본 발명의 제4 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 10에 도시된 바와 같이 기기(1000)는 측정값 계산부(1010), 추정값 계산부(1020) 및 오프셋 계산부(1030)를 포함한다.10 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the fourth embodiment of the present invention. As shown in FIG. 10, the device 1000 includes a measured value calculator 1010, an estimated value calculator 1020, and an offset calculator 1030.

측정값 계산부(1010)는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 현재 시간 단위의 측정값을 계산하기 위해 측정값 계산부(1010)는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송할 수 있다.The measured value calculator 1010 calculates the measured value for the propagation time to the master node for each predetermined time unit by using the time stamp. In order to calculate a measurement value of a current time unit, the measurement value calculator 1010 may record a first time stamp, which is a transmission time of a first message, in the first message and transmit it to the master node.

이때, 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제1 메시지의 수신 시각인 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 슬래이브 노드를 구성하는 기기(1000)로 전송할 수 있고, 측정값 계산부(1010)는 기기(1000)에서 수신한 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인한다.In this case, the master node transmits the first time stamp, the second time stamp that is the reception time of the first message, and a third time stamp that is the transmission time of the second message corresponding to the first message, to the second message. The device may be recorded and transmitted to the device 1000 constituting the slave node, and the measured value calculator 1010 checks a fourth time stamp that is a reception time of the second message received by the device 1000.

이제 측정값 계산부(1010)는 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산할 수 있다.The measured value calculator 1010 may calculate the measured value for the propagation time by using the first time stamp and the fourth time stamp.

추정값 계산부(1020)는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 이때, 상기 추정값을 계산하기 위해 추정값 계산부(1020)는 측정값 유지부(1021), 제1 추정값 유지부(1022) 및 제2 추정값 계산부(1023)를 포함할 수 있다.The estimated value calculator 1020 calculates an estimated value of the actual propagation time by using the measured value and the sliding window. In this case, in order to calculate the estimated value, the estimated value calculator 1020 may include a measured value retainer 1021, a first estimated value retainer 1022, and a second estimated value calculator 1023.

측정값 유지부(1021)는 기선정된 제1 수만큼 상기 측정값을 유지한다. 여기서, 상기 제1 수는 유지하고자 하는 상기 측정값의 수에 따라 변형이 가능하다.The measured value holding unit 1021 maintains the measured value by the first predetermined number. Here, the first number may be modified according to the number of the measured values to be maintained.

제1 추정값 유지부(1022)는 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지한다. 여기서, 상기 제2 수는 유지하고자 하는 상기 제1 추정값의 수에 따라 변형이 가능하다.The first estimated value holding unit 1022 maintains the first estimated value measured in the previous time unit by a predetermined second number. Here, the second number may be modified according to the number of the first estimated values to be maintained.

제2 추정값 계산부(1023)는 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산한다. 이때, 상기 선형 디지털 필터는 복수의 필터 계수를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다. 즉, 제2 추정값 계산부(1023)는 상기 수학식 7과 같이 상기 제2 추정값을 계산할 수 있다.The second estimated value calculator 1023 calculates a second estimated value that is an estimated value of the actual propagation time by using the maintained measured value, the first estimated value, and the linear digital filter. In this case, the linear digital filter may apply a plurality of filter coefficients to the retained measured value and the first estimated value and calculate the sum as the second estimated value. That is, the second estimated value calculator 1023 may calculate the second estimated value as shown in Equation (7).

오프셋 계산부(1030)는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 오프셋 계산부(1030)는 상기 수학식 6과 같이 표현되는 상기 오프셋을 계산할 수 있다.The offset calculator 1030 calculates an offset using the message transmission time at the master node, the message reception time at the slave node, and the estimated value. In this case, the offset calculator 1030 may calculate the offset represented by Equation 6.

즉, 상기 메시지의 수신 시각에서 상기 메시지의 전송 시각을 제외함으로써 상기 메시지가 상기 마스터 노드에서 상기 슬래이브 노드까지 도달하는데 걸린 시간을 계산할 수 있고, 상기 시간에서 상기 선형 디지털 필터를 이용하여 계산된 상기 전파 시간의 추정값을 제외함으로써 상기 마스터 노드와 상기 슬래이브 노드간의 타이밍 차이를 확인할 수 있고, 이를 통해 상기 마스터 노드와 상기 슬래이브 노드간의 시간 동기화를 수행할 수 있다.That is, the time taken for the message to reach the slave node from the master node can be calculated by subtracting the transmission time of the message from the reception time of the message, wherein the time calculated using the linear digital filter at the time By excluding the estimated value of the propagation time, the timing difference between the master node and the slave node can be confirmed, and thus time synchronization between the master node and the slave node can be performed.

이와 같이 본 발명에 따른 시간 동기화 수행 방법 및 기기를 이용하면 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.As described above, using the method and the device for performing time synchronization according to the present invention, the measured values of the propagation time are calculated based on the time stamp for each predetermined time unit in the slave node, and the average of the measured values and a general linear digital filter are calculated. By calculating the offset from the master node using a liner digital filter, you can improve the performance of jitter, wonder, and time synchronization.

도 11은 시간 동기화를 위한 양방향 방법을 설명하기 위한 일례이다.11 is an example for explaining a bidirectional method for time synchronization.

마스터 노드(1101)는 시간 동기화를 위해 마스터 노드(1101)의 마스터 노드를 제외한 모든 슬래이브 노드에게 제1 메시지의 전송 시각 T1을 포함하는 상기 제1 메시지를 전송한다. 상기 모든 슬래이브 노드는 상기 제1 메시지를 수신하면 상기 제1 메시지의 수신 시각 T2를 확인한다. 이때, 상기 모든 슬래이브 노드에서 마스터 노드(1101)와의 전파 시간을 알고 있다면 상기 수학식 6을 통해 설명한 바와 같이 상기 모든 슬래이브 노드와 마스터 노드(1101)간의 오프셋을 각각 계산할 수 있고, 이를 통해 상기 시간 동기화를 수행할 수 있다.The master node 1101 transmits the first message including the transmission time T1 of the first message to all slave nodes except the master node of the master node 1101 for time synchronization. When all slave nodes receive the first message, the slave node checks the reception time T2 of the first message. In this case, if all the slave nodes know the propagation time with the master node 1101, the offset between all the slave nodes and the master node 1101 may be calculated, respectively, as described through Equation 6 above. Time synchronization can be performed.

상기 모든 슬래이브 노드 중 하나의 슬래이브 노드(1102)는 상기 전파 시간을 측정하기 위해 시간 단위 k에 마스터 노드(1101)로 제2 메시지를 전송한다. 이때, 상기 제2 메시지는 상기 제2 메시지가 전송되는 순간의 타임 스탬프 즉, 전송 시각 T1k(1103)를 포함하여 전송될 수 있다.One slave node 1102 of all the slave nodes transmits a second message to master node 1101 in time unit k to measure the propagation time. In this case, the second message may be transmitted including a time stamp of the moment when the second message is transmitted, that is, a transmission time T 1k 1103.

마스터 노드(1101)는 상기 제2 메시지를 수신하는 경우, 상기 제2 메시지가 수신된 순간의 타임 스탬프 즉, 수신 시각 T2k(1104)를 확인하고, 상기 제2 메시지에 대한 응답 메시지인 제3 메시지를 슬래이브 노드(1102)로 전송한다. 이때, 상기 제3 메시지는 전송 시각 T1k(1103), 수신 시각 T2k(1104) 및 상기 제3 메시지가 전송되는 순간의 타임 스탬프 즉, 전송 시각 T3k(1105)를 포함할 수 있다.When the master node 1101 receives the second message, the master node 1101 checks a time stamp of the moment when the second message is received, that is, a reception time T 2k 1104, and is a response message to the second message. Send a message to the slave node 1102. In this case, the third message may include a transmission time T 1k 1103, a reception time T 2k 1104, and a time stamp of the moment when the third message is transmitted, that is, the transmission time T 3k 1105.

상기 제3 메시지를 수신한 슬래이브 노드(1102)는 상기 제3 메시지를 수신한 순간의 타임 스탬프 즉, 수신 시각 T4k(1106)를 확인하고, 상기 제3 메시지가 포함하는 전송 시각 T1k(1103), 수신 시각 T2k(1104) 및 전송 시각 T3k(1105)를 확인할 수 있다.Upon receiving the third message, the slave node 1102 checks the time stamp at the moment of receiving the third message, that is, the reception time T 4k 1106, and includes the transmission time T 1k (included in the third message). 1103, the reception time T 2k 1104 and the transmission time T 3k 1105 can be confirmed.

이와 같이 슬래이브 노드(1102)는 상기 시간 단위 k 동안 전송 시각 T1k(1103), 수신 시각 T2k(1104), 전송 시각 T3k(1105) 및 수신 시각 T4k(1106)를 얻 게 되고, 상기 수학식 6을 통해 상기 시간 단위 k에서의 전파 지연의 측정값 dk를 계산할 수 있다.Thus, the slave node 1102 obtains the transmission time T 1k (1103), the reception time T 2k (1104), the transmission time T 3k (1105), and the reception time T 4k (1106) for the time unit k. Through Equation 6, the measured value d k of the propagation delay in the time unit k may be calculated.

이후, M 길이의 슬라이딩 윈도우 또는 선형 디지털 필터를 이용하여 복수의 측정값을 통해 실제 전파 지연의 추정값 Dk를 얻을 수 있다. 즉, 상기 M 길이의 슬라이딩 윈도우를 이용하는 경우, 슬래이브 노드(1102)는 상기 M 개의 측정값들의 평균과 이전 시간 단계의 추정값 Dk-1을 통해 상기 수학식 1과 같이 상기 추정값 Dk를 계산할 수 있다. 또한, 상기 선형 디지털 필터를 이용하는 경우, 슬래이브 노드(1102)는 m 개의 측정값들과 n 개의 가장 최근의 추정값 그리고, 필터 계수를 통해 상기 추정값 Dk를 계산할 수 있다.Then, the estimated value D k of the actual propagation delay can be obtained through a plurality of measured values using a sliding window of M length or a linear digital filter. That is, when using the sliding window of M length, the slave node 1102 calculates the estimated value D k as shown in Equation 1 through the average of the M measured values and the estimated value D k-1 of the previous time step. Can be. In addition, when using the linear digital filter, the slave node 1102 may calculate the estimated value D k through m measured values, n most recent estimated values, and filter coefficients.

뿐만 아니라, 상기 추정값 Dk를 통해 상기 시간 단위 k에서의 상기 오프셋을 계산할 수 있게 되고, 위에서 설명한 바와 같이 마스터 노드(1101)와 슬래이브 노드(1102)간의 시간 동기화를 수행할 수 있게 된다. 이와 같은 과정이 상기 시간 단위마다 반복되어, 네트워크에 지속적인 시간 동기화가 수행된다.In addition, the offset in the time unit k can be calculated using the estimated value D k , and time synchronization between the master node 1101 and the slave node 1102 can be performed as described above. This process is repeated for each time unit, and continuous time synchronization is performed on the network.

지금까지 도 5 내지 도 11을 통해서는 슬라이딩 윈도우 또는 선형 디지털 필터를 이용한 양방향 시간 동기화 방법을 설명하였다. 이후 도 12 내지 도 14에서는 한번의 메시지 전송으로 마스터 노드와 슬래이브 노드간의 오프셋을 계산할 수 있는 단방향 시간 동기화 방법에 대해서 설명한다.So far, the bidirectional time synchronization method using the sliding window or the linear digital filter has been described with reference to FIGS. 5 to 11. 12 to 14 will be described a one-way time synchronization method that can calculate the offset between the master node and the slave node in a single message transmission.

도 12는 본 발명의 제5 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.12 is a flowchart illustrating a method of performing time synchronization between nodes in a network according to a fifth embodiment of the present invention.

단계(S1210)에서 상기 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산한다. 이때, 도 12에 도시된 바와 같이 상기 슬래이브 노드는 단계(S1210)에 단계(S1211) 내지 단계(S1214)를 포함하여 수행할 수 있다.In operation S1210, the slave node calculates a first offset from the master node for each predetermined time unit by using a time stamp. In this case, as shown in FIG. 12, the slave node may be performed by including steps S1211 to S1214 in step S1210.

단계(S1211)에서 상기 마스터 노드는 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송한다.In step S1211, the master node writes a first time stamp, which is a transmission time of the message, to the slave node.

단계(S1212)에서 중계 노드는 상기 메시지를 수신한 링크의 제1 전파 시간 및 상기 중계 노드에서의 체류 시간이 누적된 값을 상기 메시지에 기록한다.In step S1212, the relay node records the accumulated value of the first propagation time of the link receiving the message and the dwell time at the relay node in the message.

단계(S1213)에서 상기 슬래이브 노드는 상기 메시지의 수신 시각인 제2 타임 스탬프 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 확인한다.In step S1213, the slave node checks the second propagation time of the link existing between the second time stamp, which is the reception time of the message, and the last relay node.

단계(S1214)에서 상기 슬래이브 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하기 위해 다음 수학식 9를 이용할 수 있다.In operation S1214, the slave node calculates the first offset using the first time stamp, the second time stamp, the accumulated value, and the second propagation time. In this case, the slave node may use Equation 9 to calculate the first offset by using the first time stamp, the second time stamp, the accumulated value, and the second propagation time.

제1 오프셋 = T2 - T1 - R1 - D1First Offset = T2-T1-R1-D1

여기서, 상기 T2는 상기 제2 타임 스탬프를, 상기 T1은 상기 제1 타임 스탬프를, 상기 R1은 상기 누적된 값을, 상기 D1은 상기 제2 전파 시간을 각각 의미할 수 있다.Here, T2 may mean the second time stamp, T1 may mean the first time stamp, R1 may mean the accumulated value, and D1 may mean the second propagation time.

단계(S1220)에서 상기 슬래이브 노드는 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 제2 오프셋을 계산하기 위해 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 10과 같이 상기 제2 오프셋을 계산할 수 있다.In operation S1220, the slave node calculates a second offset using the first offset and the linear digital filter. In this case, the slave node may calculate the second offset using Equation 10 below by using a predetermined number of offsets measured in the first offset and the previous time unit to calculate the second offset.

Figure 112007021509738-pat00007
Figure 112007021509738-pat00007

Figure 112007021509738-pat00008
Figure 112007021509738-pat00008

여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미할 수 있다.Where u k is the first offset, y k is the second offset, a i (1 <i <n) and b j (0 <j <m) are filter coefficients of the linear digital filter, H (z) may mean a filter transfer function, respectively.

도 13은 본 발명의 제6 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 13에 도시된 바와 같이 기기(1300)는 제1 오프셋 계산부(1310) 및 제2 오프셋 계산부(1320)를 포함한다.13 is a block diagram for explaining an internal configuration of a device constituting a slave node according to the sixth embodiment of the present invention. As shown in FIG. 13, the device 1300 includes a first offset calculator 1310 and a second offset calculator 1320.

제1 오프셋 계산부(1310)는 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산한다. 상기 제1 오프셋을 계산하기 위해 제1 오프셋 계산부(1310)는 도 13에 도시된 바와 같이 마스터 노드에서의 메시지를 수신하여 상기 메시지의 전송 시각인 제1 타임 스탬프를 확인 하는 제1 타임 스탬프 확인부(1311), 제1 전파 시간 및 체류 시간의 누적된 값을 상기 메시지에서 확인하는 누적값 확인부(1312), 상기 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 수신 시각 확인부(1313), 마지막 중계 노드간에 존재하는 링크의 제2 전파 시간을 확인하는 제2 전파 시간 확인부(1314) 및 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 계산부(1315)를 포함할 수 있다.The first offset calculator 1310 calculates the first offset from the master node for each predetermined time unit by using the time stamp in the slave node. In order to calculate the first offset, the first offset calculator 1310 receives a message from a master node and confirms a first time stamp as a transmission time of the message, as shown in FIG. 13. 1313, a cumulative value checking unit 1312 for checking accumulated values of a first propagation time and a dwell time in the message, and a reception time checking unit 1313 for confirming a second time stamp that is a reception time of the message. And a second propagation time verification unit 1314 and a first propagation time, the second time stamp, the accumulated value, and the second propagation time for confirming a second propagation time of a link existing between the last relay nodes. It may include a calculation unit 1315 for calculating the first offset.

이때, 상기 제1 전파 시간은 중계 노드에서 상기 메시지를 수신한 링크의 전파 시간일 수 있고, 상기 체류 시간은 상기 중계 노드에서의 상기 메시지의 체류 시간일 수 있다. 또한, 계산부(1315)는 상기 수학식 9와 같이 상기 제1 오프셋을 계산할 수 있다.In this case, the first propagation time may be a propagation time of a link receiving the message at the relay node, and the dwell time may be a dwell time of the message at the relay node. In addition, the calculator 1315 may calculate the first offset as shown in Equation (9).

제2 오프셋 계산부(1320)는 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산한다. 이때, 제2 오프셋 계산부(1320)는 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 상기 수학식 10과 같이 상기 제2 오프셋을 계산할 수 있다.The second offset calculator 1320 calculates a second offset using the first offset and the linear digital filter. In this case, the second offset calculator 1320 may calculate the second offset as shown in Equation 10 using the first offset and a predetermined number of offsets measured in a previous time unit.

이와 같이 본 발명에 따른 시간 동기화 방법 및 기기를 이용하면, 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.As described above, using the time synchronization method and apparatus according to the present invention, in the system for measuring the propagation time in one direction, the first offset from the master node is calculated for each predetermined time unit, and the first offset and the previous time unit are calculated. By calculating a second offset, which is an offset of the current unit of time, through a linear digital filter that uses the calculated offsets as an input value, the performance of jitter, wonder, and time synchronization can be improved while considering the dwell time in the relay device.

도 14는 시간 동기화를 위한 단방향 방법을 설명하기 위한 일례이다.14 is an example for explaining a one-way method for time synchronization.

마스터 노드(1401)는 시간 단위 k에 시간 동기화를 수행하기 위해 제1 슬래이브 노드(1402) 및 제2 슬래이브 노드(1403)를 통해 제3 슬래이브 노드(1404)로 메시지의 전송 시각 T1k(1405)를 포함하는 상기 메시지를 전송한다. 이때, 제1 슬래이브 노드(1402)는 상기 메시지를 수신한 링크의 전파 시간(1406) 및 제1 슬래이브 노드(1402)에서의 체류 시간(1407)을 확인하여 상기 메시지에 누적시키고, 상기 메시지를 다음 노드로 전송한다. 상기 다음 노드인 제2 슬래이브 노드(1403) 역시 제2 슬래이브 노드(1403)에서의 체류 시간(1408) 및 상기 메시지를 수신한 링크의 전파 시간(1409)를 확인하여 상기 메시지에 누적시키고 다음 노드로 전송한다. 이때, 상기 메시지는 전파 시간(1406), 체류 시간(1407), 체류 시간(1408) 및 전파 시간(1409)이 누적된 누적값 R1k를 포함하고 있다.The master node 1401 transmits a message T 1k to the third slave node 1404 through the first slave node 1402 and the second slave node 1403 to perform time synchronization in time unit k. And send the message 1405. In this case, the first slave node 1402 checks the propagation time 1406 of the link receiving the message and the dwell time 1407 of the first slave node 1402, and accumulates the message, and stores the message. Is sent to the next node. The second slave node 1403, which is the next node, also checks the dwell time 1408 of the second slave node 1403 and the propagation time 1409 of the link that received the message, and accumulates the message in the message. Send to node. In this case, the message includes a cumulative value R 1k in which a propagation time 1406, a residence time 1407, a residence time 1408, and a propagation time 1409 are accumulated.

상기 다음 노드이자 목적지인 제3 슬래이브 노드(1404)는 마지막 중계 노드인 제2 슬래이브 노드(1403)와의 링크에 대한 전파 시간 D1k(1410)을 확인하고, 상기 메시지를 수신한 수신 시각 T2k(1411)를 확인한다.The third slave node 1404, which is the next node and the destination, checks the propagation time D 1k 1410 of the link with the second slave node 1403, which is the last relay node, and receives the message at the received time T. Check 2k (1411).

이때, 제3 슬래이브 노드(1404)는 제1 오프셋 uk를 계산하기 위한 상기 수학식 9의 파라미터를 모두 만족한다. 즉, 제3 슬래이브 노드(1404)는 상기 제1 오프셋 uk를 계산할 수 있다. 이와 같이 제3 슬래이브 노드(1404)는 상기 시간 단위 k 동안 계산된 상기 제1 오프셋 uk를 가장 최근에 계산된 순서로 m개를 유지하고, 이 전 시간 단위에 계산되었던 제2 오프셋 또한 n개를 유지한다.At this time, the third slave node 1404 satisfies all the parameters of Equation 9 for calculating the first offset u k . That is, the third slave node 1404 may calculate the first offset u k . As such, the third slave node 1404 maintains the first offset u k calculated during the time unit k in the most recently calculated order, and the second offset calculated in the previous time unit is also n. Keep your dog.

즉, 제3 슬래이브 노드(1404)는 상기 수학식 10을 통해 상기 시간 단위 k에서의 오프셋인 제2 오프셋을 계산할 수 있고, 상기 제2 오프셋을 통해 마스터 노드(1401)와 제3 슬래이브 노드(1404)간의 시간 동기화가 수행된다. 다른 모든 슬래이브 노드와도 동일한 과정을 통해 시간 동기화를 수행할 수 있고, 이를 통해 네트워크의 시간 동기화가 수행된다.That is, the third slave node 1404 may calculate a second offset, which is an offset in the time unit k, through Equation 10, and the master node 1401 and the third slave node through the second offset. Time synchronization between 1404 is performed. The time synchronization can be performed through the same process as all other slave nodes, and the time synchronization of the network is performed.

본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as a hard disk, a floppy disk, and a magnetic tape; optical media such as CD-ROM and DVD; magnetic recording media such as a floppy disk; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by specific embodiments such as specific components and the like. For those skilled in the art, various modifications and variations are possible from these descriptions.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

본 발명에 따르면, 슬래이브 노드에서 기선정된(predetermined) 시간 단위마다 타임 스탬프에 기반하여 전파 시간(propagation)의 측정값(measured value)들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋(offset)을 계산함으로써 지터(Jitter), 원더(Wander) 및 시간 동기화의 성능을 향상시킬 수 있다.According to the present invention, measured values of propagation are calculated based on a time stamp for each predetermined time unit in a slave node, and the average and sliding window of the measured values are calculated. By calculating the offset from the master node, the performance of jitter, wander and time synchronization can be improved.

본 발명에 따르면, 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.According to the present invention, the slave node calculates the measurement values of the propagation time based on the time stamp for each predetermined time unit, and uses the average of the measurements and a general linear digital filter to master node. By calculating the offset from, you can improve the performance of jitter, wonder, and time synchronization.

본 발명에 따르면, 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간(residence time)을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.According to the present invention, in a system for measuring the propagation time in one direction, linear digital is calculated by calculating a first offset from a master node for each predetermined time unit, and using the first offset and offsets calculated in a previous time unit as input values. By calculating the second offset, which is the offset of the current time unit, through the filter, the performance of jitter, wonder, and time synchronization can be improved while considering the residence time in the relay device.

Claims (26)

네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,In a method for performing time synchronization between nodes in a network, 슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하는 단계;Calculating a measured value for a propagation time to a master node by a predetermined time unit using a time stamp at a slave node; 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계; 및Calculating an estimate of an actual propagation time using the measured value and a sliding window at the slave node; And 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계Calculating an offset using a message transmission time at the master node, a message reception time at the slave node, and the estimated value 를 포함하고,Including, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 상기 단계는,The step of calculating the measurement value for the propagation time to the master node by the predetermined time unit using the time stamp in the slave node, 상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 단계; 및Transmitting, by the slave node, a first time stamp, which is a transmission time of a first message, to the master node by recording a first time stamp in the first message; And 상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 단계Calculating a measurement value for the propagation time by receiving a second message corresponding to the first message from the master node at the slave node; 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제1항에 있어서,The method of claim 1, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는,The calculating of the estimated propagation time using the measured value and the sliding window at the slave node, 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 단계; 및Maintaining the measured value most recently calculated by the number corresponding to the length of the sliding window; And 상기 유지된 측정값의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산하는 단계Calculating a second estimated value of the actual propagation time as the estimated value using the average of the maintained measured values and a first estimated value calculated in a previous time unit. 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제2항에 있어서,3. The method of claim 2, 상기 유지된 측정값의 평균을 계산하고, 상기 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 상기 단계는,Computing the average of the maintained measured value, and using the average and the first estimate calculated in the previous time unit, calculating the second estimate of the actual propagation time, 하기 수학식 11과 같이 상기 제2 추정값을 계산하는 시간 동기화 방법.A time synchronization method for calculating the second estimated value as shown in Equation (11).
Figure 112007021509738-pat00009
Figure 112007021509738-pat00009
Figure 112007021509738-pat00010
Figure 112007021509738-pat00010
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미함.Where d k is the measured value in k -th time unit, D k is the estimated value in k-th time unit, M is the length of the sliding window, and H (z) is D k. Means the transfer function of the difference equation.
네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,In a method for performing time synchronization between nodes in a network, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 단계;Calculating a measurement value for the propagation time to the master node by the predetermined time unit using the time stamp at the slave node; 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산하는 단계; 및Calculating an estimate of an actual propagation time at the slave node using the measured value and a linear digital filter; And 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계Calculating an offset using a message transmission time at the master node, a message reception time at the slave node, and the estimated value 를 포함하고,Including, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 상기 단계는,The step of calculating the measurement value for the propagation time to the master node by the predetermined time unit using the time stamp in the slave node, 상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 단계; 및Transmitting, by the slave node, a first time stamp, which is a transmission time of a first message, to the master node by recording a first time stamp in the first message; And 상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 단계Calculating a measurement value for the propagation time by receiving a second message corresponding to the first message from the master node at the slave node; 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제4항에 있어서,5. The method of claim 4, 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는,The calculating of the estimated propagation time using the measured value and the linear digital filter at the slave node, 기선정된 제1 수만큼 상기 측정값을 유지하는 단계;Maintaining the measured value by a first predetermined number; 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 단계; 및Maintaining a first estimated value measured in a previous time unit by a second predetermined number; And 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 단계Calculating a second estimated value that is an estimated value of the actual propagation time using the held measurement, the first estimated value, and the linear digital filter. 를 포함하고,Including, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산하는 시간 동기화 방법.And said linear digital filter applies a plurality of filter coefficients to said held measurement and said first estimate and calculates the sum as said second estimate. 제5항에 있어서,The method of claim 5, 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 상기 단계는,The step of calculating a second estimated value that is an estimated value of the actual propagation time using the retained measured value, the first estimated value and the linear digital filter, 하기 수학식 12와 같이 상기 제2 추정값을 계산하는 시간 동기화 방법.A time synchronization method for calculating the second estimate value as shown in Equation 12 below.
Figure 112007021509738-pat00011
Figure 112007021509738-pat00011
Figure 112007021509738-pat00012
Figure 112007021509738-pat00012
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를, 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미함.Where d k is the measured value in k -th time units, D k is the second estimate in k-th time units, M is the length of the sliding window, and H (z) is a filter. A filter transfer function, wherein a i (1 <i <n) and b j (0 <j <m) is the plurality of filter coefficients, n is the first number, and m is Each of the second numbers.
제6항에 있어서,The method according to claim 6, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 하기 수학식 13을 만족하는 시간 동기화 방법.The a i (1 <i <n) and the b j (0 <j <m) satisfy the following equation (13).
Figure 112007021509738-pat00013
Figure 112007021509738-pat00013
제1항 또는 제4항에 있어서,The method according to claim 1 or 4, 상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 상기 단계는,The step of receiving a second message corresponding to the first message from the master node at the slave node to calculate a measurement value for the propagation time, 상기 마스터 노드에서 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 단계;Confirming, by the master node, a second time stamp that is a reception time of the first message; 상기 마스터 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송하는 단계; 및Recording, by the master node, a third time stamp, which is a transmission time of the first time stamp, the second time stamp, and a second message corresponding to the first message, in the second message and transmitting to the slave node; ; And 상기 슬래이브 노드에서 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 단계Confirming, by the slave node, a fourth time stamp that is a reception time of the second message, and calculating a measurement value for the propagation time using the first time stamp and the fourth time stamp 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제8항에 있어서,9. The method of claim 8, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 상기 단계는,The step of calculating a measurement value for the propagation time using the first time stamp and the fourth time stamp, 하기 수학식 14와 같이 상기 측정값을 계산하는 시간 동기화 방법.A time synchronization method for calculating the measured value as shown in equation (14).
Figure 112007021509738-pat00014
Figure 112007021509738-pat00014
여기서, 상기 dk는 상기 측정값을, 상기 T1,k는 상기 제1 타임 스탬프를, 상기 T2,k는 상기 제2 타임 스탬프를 상기 T3,k는 상기 제3 스탬프를, 상기 T4,k는 상기 제4 타임 스탬프를, 상기 k는 상기 제1 타임 스탬프 내지 상기 제4 타임 스탬프가 k-번째 시간 단위에 측정되었음을 각각 의미함.Here, d k is the measured value, T 1, k is the first time stamp, T 2, k is the second time stamp, T 3, k is the third stamp, T 4 , k denotes the fourth time stamp, and k denotes that the first to fourth time stamps are measured in k-th time units, respectively.
제1항 또는 제4항에 있어서,The method according to claim 1 or 4, 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 상기 단계는,The step of calculating an offset using the message transmission time at the master node, the message reception time at the slave node and the estimated value may include: 다음 수학식 15와 같이 상기 오프셋을 계산하는 시간 동기화 방법.A time synchronization method for calculating the offset as shown in the following equation (15). 오프셋 = T2 - T1 - D1Offset = T2-T1-D1 여기서, 상기 T2는 상기 메시지 수신 시각을, 상기 T1은 상기 메시지 전송 시각을, 상기 D1은 상기 추정값을 각각 의미함.Here, T2 denotes the message reception time, T1 denotes the message transmission time, and D1 denotes the estimated value. 네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,In a method for performing time synchronization between nodes in a network, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 단계; 및Calculating a first offset from the master node for each predetermined time unit using a time stamp at the slave node; And 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 단계Calculating a second offset using the first offset and the linear digital filter 를 포함하고,Including, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 상기 단계는,Computing the first offset from the master node for each predetermined time unit using the time stamp at the slave node, 마스터 노드에서 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송하는 단계; 및Transmitting, by a master node, a first time stamp, which is a transmission time of a message, to the slave node by recording in the message; And 중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 단계Calculating the first offset at the slave node using the first propagation time of the link that received the message at the relay node, the dwell time at the relay node, and the second propagation time of the link existing between the last relay node; step 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제11항에 있어서,12. The method of claim 11, 중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 상기 단계는,Calculating the first offset at the slave node using the first propagation time of the link that received the message at the relay node, the dwell time at the relay node, and the second propagation time of the link existing between the last relay node; The step, 상기 중계 노드에서 상기 메시지를 수신한 링크의 상기 제1 전파 시간 및 상기 중계 노드에서의 상기 체류 시간이 누적된 값을 상기 메시지에 기록하는 단계;Recording, in the message, a value in which the first propagation time of the link that received the message at the relay node and the dwell time at the relay node are accumulated; 상기 슬래이브 노드에서 상기 메시지의 수신 시각인 제2 타임 스탬프 및 상기 마지막 중계 노드 사이에 존재하는 링크의 상기 제2 전파 시간을 확인하는 단계; 및Confirming, at the slave node, a second time stamp that is a reception time of the message and the second propagation time of a link existing between the last relay node; And 상기 슬래이브 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 단계Calculating the first offset using the first time stamp, the second time stamp, the accumulated value, and the second propagation time at the slave node. 를 포함하는 시간 동기화 방법.Time synchronization method comprising a. 제12항에 있어서,The method of claim 12, 상기 슬래이브 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 상기 단계는,The calculating of the first offset using the first time stamp, the second time stamp, the accumulated value, and the second propagation time at the slave node may include: 하기 수학식 16과 같이 상기 제1 오프셋을 계산하는 시간 동기화 방법.A time synchronization method for calculating the first offset as shown in equation (16). 제1 오프셋 = T2 - T1 - R1 - D1First Offset = T2-T1-R1-D1 여기서, 상기 T2는 상기 제2 타임 스탬프를, 상기 T1은 상기 제1 타임 스탬프를, 상기 R1은 상기 누적된 값을, 상기 D1은 상기 제2 전파 시간을 각각 의미함.Here, T2 denotes the second time stamp, T1 denotes the first time stamp, R1 denotes the accumulated value, and D1 denotes the second propagation time. 제11항에 있어서,12. The method of claim 11, 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 상기 단계는,The step of calculating a second offset using the first offset and the linear digital filter, 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 17과 같이 상기 제2 오프셋을 계산하는 시간 동기화 방법.And calculating the second offset using Equation 17 using the first offset and a predetermined number of offsets measured in a previous time unit.
Figure 112007021509738-pat00015
Figure 112007021509738-pat00015
Figure 112007021509738-pat00016
Figure 112007021509738-pat00016
여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미함.Where u k is the first offset, y k is the second offset, a i (1 <i <n) and b j (0 <j <m) are filter coefficients of the linear digital filter, H (z) means a filter transfer function, respectively.
제11항 내지 제14항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium storing a program for executing the method according to any one of claims 11 to 14. 네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,In the device constituting the slave node for performing time synchronization between the nodes of the network, 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 측정값 계산부;A measured value calculator for calculating a measured value for a propagation time to a master node by using a time stamp for each predetermined time unit; 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 추정값 계산부; 및An estimated value calculator for calculating an estimated value of actual propagation time using the measured value and the sliding window; And 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 오프셋 계산부An offset calculator configured to calculate an offset using a message transmission time at the master node, a message reception time at the slave node, and the estimated value 를 포함하고,Including, 상기 측정값 계산부는,The measured value calculation unit, 상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 제1 메시지 전송부; 및A first message transmitter for recording a first time stamp, which is a transmission time of a first message, in the slave node in the first message and transmitting the same to the master node; And 상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 제1 계산부A first calculator configured to receive a second message corresponding to the first message from the master node at the slave node and calculate a measurement value for the propagation time 를 포함하는 기기.Apparatus comprising a. 제16항에 있어서,17. The method of claim 16, 상기 추정값 계산부는,The estimated value calculator, 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 측정값 유지부; 및A measurement value holding unit which holds the measurement value most recently calculated by the number corresponding to the length of the sliding window; And 상기 유지된 측정값의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산하는 제2 추정값 계산부A second estimated value calculator for calculating a second estimated value of the actual propagation time as the estimated value using the average of the measured values and the first estimated value calculated in a previous time unit; 를 포함하는 기기.Apparatus comprising a. 제17항에 있어서,18. The method of claim 17, 상기 제2 추정값 계산부는,The second estimated value calculator, 하기 수학식 18과 같이 상기 제2 추정값을 계산하는 기기.The apparatus for calculating the second estimated value as shown in Equation 18.
Figure 112007021509738-pat00017
Figure 112007021509738-pat00017
Figure 112007021509738-pat00018
Figure 112007021509738-pat00018
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미함.Where d k is the measured value in k -th time unit, D k is the estimated value in k-th time unit, M is the length of the sliding window, and H (z) is D k. Means the transfer function of the difference equation.
네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,In the device constituting the slave node for performing time synchronization between the nodes of the network, 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 측정값 계산부;A measured value calculator for calculating a measured value for a propagation time to a master node by using a time stamp for each predetermined time unit; 상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 추정값 계산부; 및An estimated value calculator for calculating an estimated value of an actual propagation time using the measured value and the linear digital filter; And 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 오프셋 계산부An offset calculator configured to calculate an offset using a message transmission time at the master node, a message reception time at the slave node, and the estimated value 를 포함하고,Including, 상기 측정값 계산부는,The measured value calculation unit, 상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 제1 메시지 전송부; 및A first message transmitter for recording a first time stamp, which is a transmission time of a first message, in the slave node in the first message and transmitting the same to the master node; And 상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 제1 계산부A first calculator configured to receive a second message corresponding to the first message from the master node at the slave node and calculate a measurement value for the propagation time 를 포함하는 기기.Apparatus comprising a. 제19항에 있어서,20. The method of claim 19, 상기 추정값 계산부는,The estimated value calculator, 기선정된 제1 수만큼 상기 측정값을 유지하는 측정값 유지부;A measurement value holding unit holding the measurement value by a first predetermined number; 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 제1 추정값 유지부; 및A first estimation value holding unit which maintains a first estimated value measured in a previous time unit by a predetermined second number; And 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 제2 추정값 계산부A second estimated value calculator for calculating a second estimated value that is an estimated value of the actual propagation time by using the held measured value, the first estimated value, and the linear digital filter 를 포함하고,Including, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산하는 기기.And said linear digital filter applies a plurality of filter coefficients to said held measurement and said first estimate and calculates the sum as said second estimate. 제20항에 있어서,21. The method of claim 20, 상기 제2 추정값 계산부는,The second estimated value calculator, 하기 수학식 19와 같이 상기 제2 추정값을 계산하는 기기.The apparatus for calculating the second estimated value as shown in Equation 19.
Figure 112007021509738-pat00019
Figure 112007021509738-pat00019
Figure 112007021509738-pat00020
Figure 112007021509738-pat00020
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를, 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미함.Where d k is the measured value in k -th time units, D k is the second estimate in k-th time units, M is the length of the sliding window, and H (z) is a filter. A filter transfer function, wherein a i (1 <i <n) and b j (0 <j <m) is the plurality of filter coefficients, n is the first number, and m is Each of the second numbers.
제21항에 있어서,22. The method of claim 21, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 하기 수학식 20을 만족하는 기기.Wherein a i (1 <i <n) and b j (0 <j <m) satisfy Equation 20 below.
Figure 112007021509738-pat00021
Figure 112007021509738-pat00021
제16항 또는 제19항에 있어서,The method of claim 16 or 19, 상기 제1 계산부는,The first calculation unit, 상기 마스터 노드에서 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 제2 타임 스탬프 확인부;A second time stamp checking unit for checking a second time stamp that is a reception time of the first message in the master node; 상기 마스터 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 상기 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송하는 제2 메시지 전송부; 및Recording, by the master node, a third time stamp, which is a transmission time of the first message, the second time stamp, and the second message corresponding to the first message, in the second message and transmitting the same to the slave node; A second message transmitter; And 상기 슬래이브 노드에서 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 제2 계산부A second calculator configured to check a fourth time stamp that is a reception time of the second message in the slave node, and calculate a measurement value for the propagation time using the first time stamp and the fourth time stamp; 를 포함하는 기기.Apparatus comprising a. 네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,In the device constituting the slave node for performing time synchronization between the nodes of the network, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 제1 오프셋 계산부; 및A first offset calculator configured to calculate a first offset from the master node for each predetermined time unit by using a time stamp in the slave node; And 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 제2 오프셋 계산부A second offset calculator configured to calculate a second offset using the first offset and the linear digital filter 를 포함하고,Including, 상기 제1 오프셋 계산부는,The first offset calculator, 마스터 노드에서 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송하는 제1 타임 스탬프 확인부; 및A first time stamp confirming unit for recording a first time stamp, which is a transmission time of a message in a master node, in the message and transmitting the same to the slave node; And 중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 제1 계산부Calculating the first offset at the slave node using the first propagation time of the link that received the message at the relay node, the dwell time at the relay node, and the second propagation time of the link existing between the last relay node; First calculation unit 를 포함하는 기기.Apparatus comprising a. 제24항에 있어서,25. The method of claim 24, 상기 제1 계산부는,The first calculation unit, 상기 제1 전파 시간 및 상기 체류 시간의 누적된 값을 상기 메시지에서 확인하는 누적값 확인부;A cumulative value checking unit that checks the accumulated values of the first propagation time and the residence time in the message; 상기 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 수신 시각 확인부;A reception time confirmation unit confirming a second time stamp that is a reception time of the message; 상기 마지막 중계 노드간에 존재하는 링크의 상기 제2 전파 시간을 확인하는 제2 전파 시간 확인부; 및A second propagation time confirmation unit for confirming the second propagation time of a link existing between the last relay node; And 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 제2 계산부A second calculator configured to calculate the first offset using the first time stamp, the second time stamp, the accumulated value, and the second propagation time 를 포함하고,Including, 상기 제1 전파 시간은 중계 노드에서 상기 메시지를 수신한 링크의 전파 시간이고,The first propagation time is a propagation time of a link receiving the message at a relay node, 상기 체류 시간은 상기 중계 노드에서의 상기 메시지의 체류 시간인 기기.The dwell time is the dwell time of the message at the relay node. 제24항에 있어서,25. The method of claim 24, 상기 제2 오프셋 계산부는,The second offset calculator, 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 21과 같이 상기 제2 오프셋을 계산하는 기기.And calculate a second offset as shown in Equation 21 using the first offset and a predetermined number of offsets measured in a previous time unit.
Figure 112013083435090-pat00022
Figure 112013083435090-pat00022
Figure 112013083435090-pat00023
Figure 112013083435090-pat00023
여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미함.Where u k is the first offset, y k is the second offset, a i (1 <i <n) and b j (0 <j <m) are filter coefficients of the linear digital filter, H (z) means a filter transfer function, respectively.
KR1020070026336A 2007-01-22 2007-03-16 Method for executing time synchronization between nodes of network and appartus for executing the method KR101322841B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/846,031 US20080175275A1 (en) 2007-01-22 2007-08-28 Time synchronization method between nodes in network and apparatus for implementing the same
JP2007315997A JP4819781B2 (en) 2007-01-22 2007-12-06 Method for performing time synchronization between nodes of a network and equipment for performing this method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88152007P 2007-01-22 2007-01-22
US60/881,520 2007-01-22

Publications (2)

Publication Number Publication Date
KR20080069106A KR20080069106A (en) 2008-07-25
KR101322841B1 true KR101322841B1 (en) 2013-10-25

Family

ID=39822525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070026336A KR101322841B1 (en) 2007-01-22 2007-03-16 Method for executing time synchronization between nodes of network and appartus for executing the method

Country Status (1)

Country Link
KR (1) KR101322841B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100994128B1 (en) 2008-09-23 2010-11-15 한국전자통신연구원 Timestamping method and Apparatus for precise network synchronization
KR101705592B1 (en) 2009-05-18 2017-02-10 삼성전자주식회사 Method and apparatus for performing time synchronization between nodes
KR100949120B1 (en) * 2009-10-14 2010-03-24 한국과학기술원 Method and system for multi-hop global time synchronization in ip-usn and recording method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08256161A (en) * 1995-03-15 1996-10-01 Nec Corp Time information synchronizing system for network
KR20010087284A (en) * 2000-03-01 2001-09-15 루센트 테크놀러지스 인크 Base station transceiver to radio network controller synchronization filtering function
US20060013263A1 (en) * 2004-07-19 2006-01-19 Fellman Ronald D System and method for clock synchronization over packet-switched networks
JP2006174001A (en) 2004-12-15 2006-06-29 Nakamura Kazunori Clock synchronization scheme in data transmission and data transmission system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08256161A (en) * 1995-03-15 1996-10-01 Nec Corp Time information synchronizing system for network
KR20010087284A (en) * 2000-03-01 2001-09-15 루센트 테크놀러지스 인크 Base station transceiver to radio network controller synchronization filtering function
US20060013263A1 (en) * 2004-07-19 2006-01-19 Fellman Ronald D System and method for clock synchronization over packet-switched networks
JP2006174001A (en) 2004-12-15 2006-06-29 Nakamura Kazunori Clock synchronization scheme in data transmission and data transmission system

Also Published As

Publication number Publication date
KR20080069106A (en) 2008-07-25

Similar Documents

Publication Publication Date Title
JP4819781B2 (en) Method for performing time synchronization between nodes of a network and equipment for performing this method
US10979164B2 (en) Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks
US9665121B2 (en) Method and devices for time transfer using peer-to-peer transparent clocks
KR101705592B1 (en) Method and apparatus for performing time synchronization between nodes
US9671822B2 (en) Method and devices for time transfer using end-to-end transparent clocks
US8416812B2 (en) Network timing synchronization systems
US8964790B2 (en) Communication apparatus
US9547332B1 (en) Accurate time capture and transfer between clock domains
CN100499526C (en) End-to-end quening time delay measuring method
CN106357362B (en) A kind of method for synchronizing time, device and PTP system
US11018789B2 (en) End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks
EP3053289A1 (en) Method and devices for compensating for path asymmetry
JP6227888B2 (en) Communication system, synchronization system, and communication method
EP3231110B1 (en) Method and devices for time transfer using end to end transparent clocks
KR101322841B1 (en) Method for executing time synchronization between nodes of network and appartus for executing the method
CN113424466B (en) Method and device for clock synchronization
Ferrari et al. Synchronization of the probes of a distributed instrument for real-time ethernet networks
EP3824573A1 (en) Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks
WO2016092244A1 (en) Method and devices for time transfer using peer to peer transparent clocks
WO2020015814A1 (en) End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks
Lundqvist Timing and synchronization over ethernet
Newton et al. Considerations for Deploying IEEE 1588 V2 in Network-Centric Data Acquisition and Telemetry Systems
Cho et al. Multi-phase correlator-based realistic clock synchronization for IEEE 802.15. 4 networks
Jahja et al. A Survey of IEEE 1588 Time Synchronization Performance
Lu et al. A New Approach to Time Sync for Telemetry System

Legal Events

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