KR20200105209A - data communication system and method for timing synchronization in data communication system - Google Patents
data communication system and method for timing synchronization in data communication system Download PDFInfo
- Publication number
- KR20200105209A KR20200105209A KR1020190024062A KR20190024062A KR20200105209A KR 20200105209 A KR20200105209 A KR 20200105209A KR 1020190024062 A KR1020190024062 A KR 1020190024062A KR 20190024062 A KR20190024062 A KR 20190024062A KR 20200105209 A KR20200105209 A KR 20200105209A
- Authority
- KR
- South Korea
- Prior art keywords
- synchronization
- global
- local
- master
- clock
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0673—Clock or time synchronisation among packet nodes using intermediate nodes, e.g. modification of a received timestamp before further transmission to the next packet node, e.g. including internal delay time or residence time into the packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0644—External master-clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0682—Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
본 발명은 데이터 통신 시스템에서 타이밍 동기에 관한 기술이다.The present invention is a technology related to timing synchronization in a data communication system.
통신 장비(또는 통신 노드)와 서버의 집중도가 높은 데이터 센터에서 에너지 소모와 열 방출을 줄이고 데이터 스위칭과 전송 속도를 높이기 위해 전기 대신 광을 이용하고자 하는 움직임이 있다. In data centers with high concentration of communication equipment (or communication nodes) and servers, there is a movement to use light instead of electricity to reduce energy consumption and heat dissipation, and to increase data switching and transmission speed.
데이터 스위칭과 관련해, 전력 소모를 낮추고, 스위칭 속도와 전송 속도를 높이기 위해, AWGR (arrayed waveguide grating router) 같은 수동 광 스위칭 장치가 이용되고 있다.In relation to data switching, passive optical switching devices such as arrayed waveguide grating routers (AWGRs) are used to reduce power consumption and increase switching speed and transmission speed.
데이터 전송과 데이터 스위칭을 위해, 수동 광 스위칭 장치를 이용하기 위해서는, 통신 장비(또는 통신 노드) 간의 타이밍 및 시각 동기가 중요하다. For data transmission and data switching, in order to use a passive optical switching device, timing and time synchronization between communication equipment (or communication nodes) are important.
통신 장비들 간의 타이밍 동기(클럭 동기) 방법으로, 데이터 인터페이스에서 데이터 클럭을 추출하여 이를 시스템 동기 클럭으로 사용하는 방법, 통신 장비들이 별도의 동기 타이밍을 서로 송수신하고 이를 복원하여 시스템 동기 클럭으로 사용하는 방법 등이 있다.This is a timing synchronization (clock synchronization) method between communication devices, a method of extracting a data clock from a data interface and using it as a system synchronization clock, and a method in which communication devices transmit and receive separate synchronization timings with each other and restore it to use as a system synchronization clock There are methods and so on.
통신 장비들 간의 시각 동기 방법으로, IEEE 1588v2 PTP (Precision Time Protocol)이 있다. IEEE 1588v2 PTP에 따른 시각 동기 방법은 통신 장비들이 시각 정보와 시각 오차 정보를 포함하는 데이터를 서로 송수신하여 시각 차이를 보정하는 방법이다. As a method of synchronizing time between communication devices, there is IEEE 1588v2 PTP (Precision Time Protocol). The time synchronization method according to the IEEE 1588v2 PTP is a method in which communication devices transmit and receive data including time information and time error information to correct the time difference.
이러한 IEEE 1588v2 PTP에 따른 시각 동기 방법은 다소 번거롭고 복잡한 프로토콜 처리(소프트웨어)와 하드웨어를 필요로 하고, 시각 동기의 정확성을 100ns 이하로 낮추기 어려운 점이 있다.The time synchronization method according to IEEE 1588v2 PTP is somewhat cumbersome and requires complex protocol processing (software) and hardware, and it is difficult to reduce the accuracy of time synchronization to less than 100ns.
따라서, 본 발명의 목적은, 통신 장비들(또는 대규모 산업 생산 단지에 구비된 통신 장비들) 간의 타이밍 동기 및 시각 동기를 위한 데이터 통신 시스템에서 타이밍 동기 방법 및 장치를 제공하는 데 있다.Accordingly, an object of the present invention is to provide a timing synchronization method and apparatus in a data communication system for timing synchronization and time synchronization between communication equipment (or communication equipment provided in a large-scale industrial production complex).
상술한 목적을 달성하기 위한 본 발명의 일면에 따른 데이터 통신 시스템에서 타이밍 동기 방법은, 통신 블록이, 이전 통신 블록으로부터 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신하고, 상기 수신한 전역 동기 신호를 다음 통신 블록으로 송신하여, 상기 통신 블록과 다음 통신 블록이 상기 전역 동기 신호를 이용하여 전역 동기를 수행하는 단계; 상기 통신 블록 내의 마스터가, 상기 전역 동기 클럭을 이용하여 로컬 동기 클럭을 생성하는 단계; 상기 마스터가, 상기 로컬 동기 클럭과 상기 전역 동기 펄스를 이용하여 로컬 동기 펄스를 생성하는 단계; 상기 마스터가, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 상기 슬레이브로 전송하는 단계; 및 상기 슬레이브가, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터의 타임 슬롯의 시작 시점에 동기화시키는 로컬 동기를 수행하는 단계를 포함한다.In a data communication system according to an aspect of the present invention for achieving the above object, a timing synchronization method includes a communication block receiving a global synchronization signal including a global synchronization clock and a global synchronization pulse from a previous communication block, and the received Transmitting a global synchronization signal to a next communication block, and performing global synchronization between the communication block and the next communication block using the global synchronization signal; Generating, by a master in the communication block, a local synchronization clock using the global synchronization clock; Generating, by the master, a local synchronization pulse using the local synchronization clock and the global synchronization pulse; Transmitting, by the master, the local synchronization clock and the local synchronization pulse to the slave; And performing, by the slave, local synchronization of synchronizing a start time of its own time slot to a start time of a time slot of the master using the local sync clock and the local sync pulse.
본 발명의 다른 일면에 따른 데이터 통신 시스템은, 다수의 통신 블록을 포함하고, 각 통신 블록은, 이전 통신 블록으로부터 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신하고, 상기 수신한 전역 동기 신호를 다음 통신 블록 내의 다음 마스터로 전송하고, 상기 전역 동기 신호를 이용하여 상기 다음 마스터와 전역 동기를 수행하는 마스터; 및 상기 마스터로부터, 상기 전역 동기 클럭에 기반한 로컬 동기 클럭과 상기 전역 동기 펄스에 기반한 로컬 동기 펄스를 수신하고, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터의 타임 슬롯의 시작 시점에 동기시키는 로컬 동기를 수행하는 슬레이브를 포함한다.A data communication system according to another aspect of the present invention includes a plurality of communication blocks, each communication block receives a global synchronization signal including a global synchronization clock and a global synchronization pulse from a previous communication block, and receives the received global synchronization signal. A master transmitting a synchronization signal to a next master in a next communication block, and performing global synchronization with the next master using the global synchronization signal; And receiving a local synchronization clock based on the global synchronization clock and a local synchronization pulse based on the global synchronization pulse from the master, and using the local synchronization clock and the local synchronization pulse, the start time of its own time slot is determined. It includes a slave that performs local synchronization synchronized with the start time of the master time slot.
본 발명에 따르면, 통신 장비들(또는 대규모 산업 생산 단지에 구비된 통신 장비들) 간의 정확한 타이밍 동기 및 시각 동기를 구현함으로써, 통신 장비들 간의 데이터 전송 효율을 높이고, 통신 장비들 간의 데이터 대기시간을 줄일 수 있다.According to the present invention, by implementing precise timing synchronization and time synchronization between communication equipments (or communication equipments provided in large-scale industrial production complexes), data transmission efficiency between communication equipments is increased, and data waiting time between communication equipments is reduced. Can be reduced.
또한, 정확한 타이밍 동기 및 시각 동기가 대규모 산업 생산 단지에 구비된 통신 장비들 간에 적용되면, 대규모 산업 생산 단지에서 진행하는 자동화 공동 작업의 효율성을 높일 수 있다.In addition, if precise timing synchronization and time synchronization are applied between communication devices provided in large-scale industrial production complexes, the efficiency of automated joint work performed in large-scale industrial production complexes can be improved.
도 1은 본 발명의 실시 예에 따른 데이터 통신 시스템의 전체 구성을 개략적으로 나타내는 도면.
도 2는 본 발명의 실시 예에 따른 마스터 장치의 블록 구성도.
도 3은 본 발명의 실시 예에 따른 마스터 장치의 상세 구성도이고, 도 4는 도 3에 도시된 각 슬레이브의 상세 구성도.
도 4는 도 3에 도시된 각 슬레이브의 상세 구성도.
도 5는 본 발명의 일 실시 예에 따른 마스터 장치와 슬레이브 장치 간의 연결 구조를 나타내는 도면.
도 6은 본 발명의 다른 실시 예에 따른 마스터 장치와 슬레이브 장치 간의 연결 구조를 나타내는 도면.
도 7 내지 10은 본 발명의 실시 예에 따른 마스터 장치와 슬레이브 장치 간의 로컬 동기를 수행하는 과정을 나타내는 타이밍도들.
도 11은 본 발명의 동기대상 선택과 타임 슬롯 동기를 위한 레지스터를 설명하기 위한 도면.
도 12는 본 발명의 실시 예에 따른 로컬 동기에 따라 마스터와 슬레이브들 간의 타이밍을 동기시킨 결과를 보여주는 타이밍도.
도 13은 본 발명의 실시 예에 따른 데이터 통신 시스템에서의 타이밍 동기 방법을 나타내는 흐름도.
도 14는 도 13에 도시한 단계 1310의 상세 흐름도.
도 15는 도 13에 도시한 단계 1320의 상세 흐름도.
도 16은 도 13에 도시한 단계 1330의 상세 흐름도.
도 17은 도 13에 도시한 단계 1350의 상세 흐름도.1 is a diagram schematically showing the overall configuration of a data communication system according to an embodiment of the present invention.
2 is a block diagram of a master device according to an embodiment of the present invention.
3 is a detailed configuration diagram of a master device according to an embodiment of the present invention, and FIG. 4 is a detailed configuration diagram of each slave shown in FIG. 3.
4 is a detailed configuration diagram of each slave shown in FIG. 3.
5 is a diagram showing a connection structure between a master device and a slave device according to an embodiment of the present invention.
6 is a diagram illustrating a connection structure between a master device and a slave device according to another embodiment of the present invention.
7 to 10 are timing diagrams illustrating a process of performing local synchronization between a master device and a slave device according to an embodiment of the present invention.
11 is a diagram for explaining a register for selecting a synchronization target and synchronizing a time slot according to the present invention.
12 is a timing diagram showing a result of synchronizing timing between a master and slaves according to local synchronization according to an embodiment of the present invention.
13 is a flowchart illustrating a timing synchronization method in a data communication system according to an embodiment of the present invention.
14 is a detailed flowchart of
15 is a detailed flowchart of
16 is a detailed flowchart of
17 is a detailed flowchart of
이하, 본 발명의 다양한 실시 예가 첨부된 도면과 연관되어 기재된다. 본 발명의 다양한 실시 예는 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 발명의 다양한 실시 예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 다양한 실시예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 동일한 구성요소에 대해서는 동일한 참조 부호가 사용되었다.Hereinafter, various embodiments of the present invention will be described in connection with the accompanying drawings. Various embodiments of the present invention may be modified in various ways and may have various embodiments. Specific embodiments are illustrated in the drawings and detailed descriptions thereof are provided. However, this is not intended to limit the various embodiments of the present invention to specific embodiments, it should be understood to include all changes and/or equivalents or substitutes included in the spirit and scope of the various embodiments of the present invention. In connection with the description of the drawings, the same reference numerals are used for the same components.
본 발명의 다양한 실시 예에서 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시(disclosure)된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 발명의 다양한 실시 예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Expressions such as "include" or "may include" that may be used in various embodiments of the present invention indicate the existence of a corresponding function, operation, or component that has been disclosed, and an additional one or more functions, operations, or It does not limit components, etc. In addition, in various embodiments of the present invention, terms such as "include" or "have" are intended to designate the existence of features, numbers, steps, actions, components, parts, or a combination thereof described in the specification. It is to be understood that the possibility of the presence or addition of other features, numbers, steps, actions, components, parts, or combinations thereof, or further other features, is not excluded in advance.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성 요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, the component is directly connected to or may be connected to the other component, but the component and It should be understood that new other components may exist between the other components. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it will be understood that no new other component exists between the component and the other component. Should be able to
도 1은 본 발명의 실시 예에 따른 데이터 통신 시스템의 전체 구성을 개략적으로 나타내는 도면이다.1 is a diagram schematically showing the overall configuration of a data communication system according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 데이터 통신 시스템(1)은 다수의 통신 블록들을 포함한다. 도 1에서는 4개의 통신 블록들(10, 20, 30 및 40)로 구성된 데이터 통신 시스템(1)을 도시하지만, 이는 도면을 간략화하기 위함이지, 본 발명의 데이터 통신 시스템(1)이 4개의 통신 노드들(10, 20, 30 및 40)을 포함하는 것으로 한정하고자 의도는 아니다.Referring to FIG. 1, a
통신 블록들(10, 20, 30 및 40)은 특정 공간에 배치될 수 있으며, 특정 공간은, 예를 들면, 대규모 산업 생산 단지 또는 데이터 센터일 수 있다.The communication blocks 10, 20, 30 and 40 may be arranged in a specific space, and the specific space may be, for example, a large industrial production complex or a data center.
통신 블록들(10, 20, 30 및 40)은 대규모 산업 생산 단지 또는 데이터 센터 내에서 특정 타이밍 및 특정한 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 특정 작업(work)은 '특정 프로세스(process)'라는 용어로 대체될 수 있다.
통신 블록들(10, 20, 30 및 40)은 각자의 데이터 통신 채널(60, 61, 62 및 63)을 통해 스위치(2)에 연결된다. 스위치(2)는 통신 블록들(10, 20, 30 및 40) 간에 송수신하는 데이터를 중계하는 역할을 한다. 스위치(2)는 허브, 라우터 등과 같은 통신 중계 장비일 수 있다. 넓은 의미에서 스위치(2)는 '네트워크'일 수 있다.
본 명세서에서는 '전역 동기'와 '로컬 동기'라는 용어가 사용된다.In this specification, the terms'global synchronization' and'local synchronization' are used.
전역 동기(global synchronization)는, 특정 작업을 수행하기 위해, 통신 블록들(10, 20, 30 및 40)을 특정 타이밍 및 특정한 시각에 동기화시키는 과정을 의미하고, 로컬 동기(local synchronization)는, 특정 작업을 수행하기 위해, 각 통신 블록 내에 포함된 장치들을 특정 타이밍 및 특정한 시각에 동기화시키는 것을 의미한다.Global synchronization refers to a process of synchronizing
통신 블록들(10, 20, 30 및 40)은 전역 동기 신호를 전달하는 전역 동기 채널들(50, 51, 52 및 53)에 의해 연결될 수 있다. 전역 동기 신호는 통신 블록들(10, 20, 30 및 40) 간의 전역 동기에 이용되는 신호로서, 전역 동기 클럭 신호(CLK) 및 전역 동기 펄스 신호를 포함한다. 전역 동기 펄스 신호는 프레임 펄스(Frame Pulse, FP)라는 용어로 대체될 수 있다.The communication blocks 10, 20, 30, and 40 may be connected by
각 통신 블록들은 하나의 동기 마스터 장치(이하, 마스터 장치)와 동기 슬레이브 장치(이하, 슬레이브 장치)를 포함한다. Each communication block includes one synchronization master device (hereinafter, referred to as a master device) and a synchronization slave device (hereinafter, referred to as a slave device).
구체적으로, 제1 통신 블록(10)은 마스터 장치(11)와 슬레이브 장치(12)를 포함한다. 마스터 장치(11)와 슬레이브 장치(12)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 슬레이브(12)는 다수의 슬레이브(S1_1, S1_2, …, S1_N)를 포함한다. 마스터 장치(11)와 슬레이브 장치(12) 간에 이루어지는 동기는 로컬 동기를 의미한다.Specifically, the
제2 통신 블록(20)은 마스터 장치(21)와 슬레이브 장치(22)를 포함하고, 슬레이브 장치(22)는 M개의 슬레이브(S2_1, S2_2, …, S2_N)를 포함한다. 마스터 장치(21)와 슬레이브 장치(22)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(21)와 슬레이브 장치(22) 간에 이루어지는 동기는 로컬 동기를 의미한다.The
제3 통신 블록(30)은 마스터 장치(31)와 슬레이브 장치(32)를 포함하고, 슬레이브 장치(32)는 L개의 슬레이브들(S3_1, S3_2, …, S3_L)을 포함한다. 마스터 장치(31)와 슬레이브 장치(32)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(31)와 슬레이브 장치(32) 간에 이루어지는 동기는 로컬 동기를 의미한다.The
제4 통신 블록(40)은 마스터 장치(41)와 슬레이브 장치(42)를 포함하고, 슬레이브 장치(42)는 P개의 슬레이브들(S4_1, S4_2, …, S4_P)을 포함한다. 마스터 장치(41)와 슬레이브 장치(42)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(41)와 슬레이브 장치(42) 간에 이루어지는 동기는 로컬 동기를 의미한다.The
마스터 장치들(11, 21, 31 및 41)은 마스터 전용 채널에 의해 마스터 메시지를 교환한다. 구체적으로, 마스터 장치들(11, 21, 31 및 41)은 각자의 마스터 전용 채널(70, 71, 72 및 73)에 의해 스위치(2)에 연결되고, 스위치(2)는 마스터 전용 채널(70, 71, 72 및 73)을 통해 수신된 마스터 메시지를 중계하여, 마스터 장치들(11, 21, 31 및 41) 간의 마스터 메시지의 교환을 가능하게 한다.The
마스터 메시지는 마스터 장치들(11, 21, 31 및 41) 중 어느 하나의 마스터 장치를 탑(top) 마스터를 선정하는데 이용된다. 즉, 마스터 장치들(11, 21, 31 및 41) 중 어느 하나는 자신이 탑(top) 마스터임을 나타내는 정보를 포함하는 마스터 메시지를 생성하여 마스터 전용 채널(70, 71, 72 및 73)을 이용하여 다른 마스터 장치들에게 전송한다. 탑(top) 마스터의 선정은 사용자에 의해 결정될 수 있다. 탑(top) 마스터로 선정된 마스터 장치는 전역 동기의 시작 소스를 제공한다.The master message is used to select one of the
또한, 마스터 메시지는 마스터 장치들(11, 21, 31 및 41) 중 어느 하나의 마스터 장치의 고장 상태를 다른 마스터 장치들로 알리는 데 이용될 수 있다. 이 경우, 마스터 메시지는 어느 하나의 마스터 장치의 고장 상태를 나타내는 정보를 포함하도록 구성될 수 있다.In addition, the master message may be used to inform other master devices of a failure state of one of the
각 마스터 장치는 마스터 메시지를 통해 다른 마스터 장치의 고장을 감지한다. 고장이 감지된 마스터 장치를 제외한 나머지 동기 마스터들은 전역 동기 채널(50, 51, 52 및 53)을 재구성한다.Each master device detects a failure of another master device through a master message. Except for the master device in which a failure is detected, the synchronization masters reconfigure the
마스터 장치들(11, 21, 31 및 41)은 마스터 메시지를 주기적으로 교환된다.The
마스터 장치들(11, 21, 31 및 41)은 각자의 제1 로컬 동기 채널(13, 23, 33 및 43)에 의해 슬레이브 장치들(12, 22, 32 및 42)과 각각 연결될 수 있다.The
동기 마스터들(11, 21, 31 및 41)은 각자의 제1 로컬 동기 채널(13, 23, 33 및 43)을 이용하여 대응하는 슬레이브 장치들(12, 22, 32 및 42)에게 로컬 동기를 위한 로컬 동기 신호를 전송한다. 로컬 동기 신호는 로컬 동기 클럭(CLK_LOCAL)과 로컬 동기 펄스(FP_LOCAL)를 포함한다. 로컬 동기 펄스는 로컬 프레임 펄스라는 용어로 대체될 수 있다.
마스터 장치들(11, 21, 31 및 41)은, 로컬 동기 신호를 이용하여, 특정 타이밍 및 특정 시각의 시작 시점을 슬레이브(12, 22, 32 및 42)에게 각각 알린다.The
마스터 장치들(11, 21, 31 및 41)은, 각자의 제2 로컬 동기 채널(80, 81, 82 및 83)에 의해 슬레이브 장치들(12, 22, 32 및 42)과 각각 연결될 수 있다. 마스터 장치들(11, 21, 31 및 41)은, 제2 로컬 동기 채널(80, 81, 82 및 83)을 이용하여 로컬 동기 메시지를 대응하는 슬레이브 장치들(12, 22, 32 및 42)에게 전송할 수 있다.The
로컬 동기 메시지는 특정 작업을 식별하기 위한 식별 정보, 상기 특정 작업에 설정되는 로컬 동기 펄스의 길이 정보, 상기 로컬 동기 펄스(LOCAL_PULSE)의 길이 정보에 따라 설정되는 시각 단위를 나타내는 정보를 포함한다.The local synchronization message includes identification information for identifying a specific job, length information of a local synchronization pulse set for the specific job, and information indicating a time unit set according to length information of the local synchronization pulse LOCAL_PULSE.
슬레이브 장치들(12, 22, 32 및 42) 각각은 대응하는 마스터 장치로부터 수신된 로컬 동기 메시지를 이용하여, 어떤 특정 작업을 어떤 시각 단위로 로컬 동기를 수행할지를 알 수 있게 된다.Each of the
도 2는 본 발명의 실시 예에 따른 마스터 장치의 블록 구성도이다.2 is a block diagram of a master device according to an embodiment of the present invention.
도 2에서는 설명의 간략화를 위해, 제1 통신 블록(10) 내의 제1 마스터 장치(11)와 제2 통신 블록(20) 내의 제2 마스터 장치(21)의 내부 구성만이 도시된다. In FIG. 2, only the internal configurations of the
또한, 도 2에서 제1 및 제2 마스터(11 및 21) 내부에 도시된 구성들은 제1 및 제2 통신 블록들(10, 20) 간의 전역 동기와 관련된 것으로 로컬 동기와 관련된 추가 구성들은 도 3을 참조하여 더 상세히 설명하기로 한다. In addition, components shown in the first and
도 2를 참조하면, 마스터 장치들(11 및 21) 각각은, 제1 및 제2 통신 블록들(10, 20) 간의 전역 동기를 수행하기 위해, 제1 입력 버퍼(100 또는 110), 제2 입력 버퍼(101 또는 111), 전역 타이밍 제어기(104 또는 114) 및 출력 버퍼(106 또는 116)을 포함한다.2, each of the
마스터 장치(11)는 전역 동기 채널(50)을 통해 도 1에 도시한 동기 마스터(41)로부터 전역 동기를 수행하기 위한 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신한다.The
마스터 장치(11) 내의 제1 입력 버퍼(100)는 전역 동기 신호(GLOBAL_SYNC)를 버퍼링 한 후 버퍼링된 전역 동기 신호(REF_1)를 전역 타이밍 제어기(104)로 입력한다.The
전역 타이밍 제어기(104)는 버퍼링된 전역 동기 신호(REF_1)를 출력 신호(OUT_1)로서 출력 버퍼(106)로 입력된다. 출력 버퍼(106)는 출력 신호(OUT_1)를 전역 동기 채널(51)을 통해 제2 통신 블록(도 1의 20) 내의 마스터 장치(21)로 전송한다.The
또한, 출력 버퍼(106)는 출력 신호(OUT_1)를 피드백 신호(FB_1)로서, 피드백 채널(14)을 통해 제2 입력 버퍼(101)로 입력하고, 제2 입력 버퍼(106)는 피드백 신호(FB_1)를 버퍼링한 후, 버퍼링된 피드백 신호(FB_1)를 전역 타이밍 제어기(104)로 입력한다. 즉, 전역 타이밍 제어기(104)로부터 출력되는 출력 신호(OUT_1)가 전역 타이밍 제어기(104)의 입력으로서 피드백된다. In addition, the
전역 타이밍 제어기(104)는 전역 동기 신호(REF_1)의 타이밍과 출력 버퍼(106)로부터 피드백된 출력 신호(FB_1)의 타이밍을 비교하여, 전역 동기 채널(51)에 의한 지연 시간을 측정한다.The
전역 동기 채널(51)에 의한 지연 시간을 측정하기 위해, 전역 동기 피드백 신호(FB_1)를 전송하는 피드백 채널(14)은 출력 신호(OUT_1)를 전송하는 전역 동기 채널(51)과 동일한 전송 매체로 구현하고, 피드백 신호(FB_1)를 전송하는 전송 매체의 길이는 출력 신호(OUT_1)(또는 전송 동기 신호)를 전송하는 전송 매체의 길이보다 같거나 작게 구현된다. 이와 같이, 피드백 신호(FB_1)를 전송하는 전송 매체와 출력 신호(OUT_1)(또는 전역 동기 신호)를 전송하는 전송 매체를 동일하게 구현하고, 그 길이를 서로 다르게 설계함으로써, 전역 동기 채널(51)에 의한 지연 측정이 가능해질 수 있다.In order to measure the delay time by the
전역 타이밍 제어기(104)는, 전역 동기 채널(51)에 의한 지연 시간을 측정하기 위해, 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍을 비교하여 전역 동기 채널(51)에 의해 발생할 수 있는 출력 신호(OUT_1)의 지연 시간을 측정한다. The
전역 타이밍 제어기(104)는, 측정된 지연 시간만큼 출력 신호(OUT_1)의 타이밍을 조정함으로써, 조정된 출력 신호(OUT_1)와 동기 마스터(21)로 입력되는 전역 동기 신호(REF_2) 간의 전역 동기화가 수행될 수 있다.The
동기 마스터(11)와 동기 마스터(21) 간의 전역 동기화가 완료되면, 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍은 자연스럽게 일치하고, 이에 따라, 동기 마스터(11) 내의 전역 타이밍 제어기(104)에 의해 수행되는 출력 신호(OUT_1)의 타이밍 조정은 더 이상 일어나지 않는다.When the global synchronization between the
한편, 전역 동기 채널(51)에 의한 지연 시간이 예측 또는 사전에 측정될 수 있다. 이 경우, 전역 타이밍 제어기(104)는, 전역 동기 피드백 신호(FB_1) 없이, 예측 또는 사전에 측정된 지연 시간을 이용하여 전역 동기 신호로서 입력되는 입력 신호(REF_1)와 전역 타이밍 제어기(114)로 입력되는 전역 동기 신호(REF_2)의 타이밍을 일치시킬 수 있다. 즉, 전역 동기 채널(51)에 의한 지연 시간이 예측 또는 사전에 측정되는 경우에는 전역 동기 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍 간의 비교 과정이 필요하지 않다.Meanwhile, the delay time by the
도 3은 본 발명의 실시 예에 따른 마스터 장치의 상세 구성도이고, 도 4는 도 3에 도시된 각 슬레이브의 상세 구성도이다. 3 is a detailed configuration diagram of a master device according to an embodiment of the present invention, and FIG. 4 is a detailed configuration diagram of each slave shown in FIG. 3.
도면을 간략화하기 위해, 도 3에서는 도 1에 도시한 제1 통신 블록(10)에 구비된 마스터 장치(11)와 슬레이브 장치(12)의 내부 구성만 도시된다. 또한, 도 3에서는, 마스터 장치와 슬레이브 장치 간의 로컬 동기를 설명하기 위해, 마스터 장치(11)의 내부 구성이 더 상세히 도시된다. In order to simplify the drawing, in FIG. 3, only the internal configurations of the
도 3을 참조하면, 마스터 장치(11)와 슬레이브 장치(12) 간의 로컬 동기를 수행하기 위해, 마스터 장치(11)는 로컬 동기 클럭(220, LOCAL_CLK)와 로컬 동기 펄스(222, LOCAL_ PULSE)를 포함하는 로컬 동기 신호를 슬레이브 장치(12)에게 전송한다. 3, in order to perform local synchronization between the
이를 위해, 마스터 장치(11)는 다수의 버퍼들(100, 101, 106, 207, 209, 212 및 213), 전역 타이밍 제어기(104), 전역 동기 클럭 생성기(200, OSC1), 로컬 동기 클럭 생성기(201, OSC2), 멀티플렉서(202, 이하, 먹스(MUX)라 함), 위상 고정 루프(Phase-Locked Loop, PLL)(208) 및 로컬 타이밍 제어기(211) 및 프로세서(240)를 포함한다.To this end, the
전역 타이밍 제어기(104)는 전역 동기 채널(50)을 통해 다른 마스터 장치(예를 들면, 도 1에 도시한 제4 통신 블록(40)의 마스터 장치(42))로부터 수신된 전역 동기 신호(REF_1) 또는 전역 동기 클럭 생성기(200)로부터 전역 클럭 소스를 가공하여 로컬 동기 신호(220 및 222)를 생성한다. 여기서, 전역 동기 클럭 생성기(200)는 오실레이터(OSC)일 수 있다.The
전역 클럭 소스를 가공하여 로컬 동기 신호(220 및 222)를 생성하는 경우는, 마스터 장치(11)가 탑(top) 마스터로 선정된 경우이다. 즉, 마스터 장치(11)가 다른 마스터 장치로부터 전역 동기 신호를 수신하지는 않는 경우이다.When the global clock source is processed to generate the local synchronization signals 220 and 222, the
마스터 장치(11)가 전역 동기 채널(50)을 통해 다른 마스터 장치로부터 전역 동기 신호를 수신한 경우, 전역 타이밍 제어기(104)는 전역 동기 신호(REF_1)에 포함된 전역 동기 클럭(203)과 전역 동기 펄스(204)를 분리하고, 전역 동기 클럭(203)를 먹스(202)로 출력하고, 전역 동기 펄스(204)를 로컬 타이밍 제어기(211)로 출력한다.When the
먹스(202)는, 프로세서(240)로부터 입력되는 선택 신호(241)에 따라, 전역 타이밍 제어기(104)로부터 입력되는 전역 동기 클럭(203) 또는 로컬 동기 클럭 생성기(201)로부터 입력된 로컬 동기 클럭 소스(205)를 선택하고, 선택된 신호를 다수의 슬레이브(S1_1 ~ S1_N)에 제공하는 로컬 동기 클럭으로서 출력한다. The
먹스(202)가 전역 클럭(203)를 선택하여, 선택한 전역 동기 클럭(203)를 로컬 동기 클럭으로서 출력하는 것은 통신 블록들간의 전역 동기를 수행하는데 사용되는 전역 동기 클럭(203)를 마스터 장치와 슬레이브들 간의 로컬 동기를 수행하는데 사용함을 의미한다. 이것은 전역 동기와 로컬 동기를 동시에 수행하는 것이다.When the
다르게, 먹스(202)가 로컬 동기 클럭 소스(205)를 선택하여, 선택한 로컬 동기 클럭 소스(205)를 로컬 클럭 신호로서 출력하는 것은 다른 마스터 장치로부터 수신된 전역 동기 신호에 포함된 전역 동기 클럭을 이용하지 않고, 마스터 장치(11)가 스스로 생성한 로컬 동기 클럭 소스(205)를 로컬 동기 클럭으로서 생성함을 의미한다. 이것은 로컬 동기만을 수행하는 것이다. Alternatively, when the
따라서, 프로세서(240)로부터 입력되는 선택 신호(241)는 로컬 동기만을 수행할지 아니면 전역 동기와 로컬 동기를 모두 수행할지를 결정하는 신호이다.Accordingly, the
먹스(202)로부터 출력되는 로컬 동기 클럭은 버퍼(207)와 로컬 타이밍 제어기(211)로 입력된다.The local synchronization clock output from the
출력 버퍼(207)는 먹스(202)로부터 입력되는 로컬 동기 클럭(220)을 슬레이브 장치(12)로 전송한다. 또한, 출력 버퍼(207)는 먹스(202)로부터 입력되는 로컬 동기 클럭(220)을 피드백 채널(221)을 통해 입력 버퍼(209)로 입력한다. 즉, 마스터 장치(11)로부터 슬레이브 장치(12)로 전송되는 로컬 동기 클럭(220)이 마스터 장치(11)로 피드백된다. 이것은 마스터 장치(11)와 슬레이브 장치(12)을 연결하는 로컬 동기 채널(도 1의 13)에 의해 발생하는 지연 시간을 고려하여 아래의 로컬 타이밍 제어기(211)가 로컬 동기 펄스 및 타임슬롯을 생성하도록 하기 위함이다.The
입력 버퍼(209)는 출력 버퍼(207)로부터 피드백된 로컬 동기 클럭을 버퍼링한 후, PLL(208)로 입력한다. The
PLL(208)은 입력 버퍼(209)로부터 입력된 로컬 동기 클럭을 이용하여 서로 다른 주파수를 갖는 다수의 로컬 동기 클럭(210)를 생성하고, 다수의 로컬 동기 클럭(210)을 로컬 타이밍 제어기(211)로 입력한다.The
로컬 타이밍 제어기(211)는 먹스(202)로부터 입력된 로컬 동기 클럭 신호(220) 및 전역 타이밍 제어기(104)로부터 입력되는 전역 동기 펄스(204)를 이용하여 로컬 동기 펄스(222)를 생성한다.The
생성된 로컬 동기 펄스(222)는 출력 버퍼(212)로 입력되고, 출력 버퍼(212)는 로컬 동기 펄스(222)를 버퍼링한 후 로컬 동기 채널(도 1의 13)을 통해 슬레이브 장치(12)로 전송한다. 한편, 슬레이브 장치(12)로 전송될 로컬 동기 펄스(222)는 입력 버퍼(213)로 피드백되고, 입력 버퍼(213)은 피드백된 로컬 동기 펄스(223)를 로컬 타이밍 제어기(211)로 입력한다.The generated
로컬 타이밍 제어기(211)는 상기 입력 버퍼(213)를 통해 피드백된 로컬 동기 펄스(223)와 상기 PLL(208)로부터 입력되는 다수의 로컬 동기 클럭(210) 중에서 선택된 어느 하나의 로컬 동기 클럭을 이용하여 특정 작업에 대한 타임 슬롯(Time Slot, TS)을 생성한다. 이때, 생성되는 타임 슬롯은 피드백된 로컬 동기 펄스(223)에 의해 로컬 동기 채널에 의한 지연 오차가 보상된 것이다. 예를 들면, 로컬 타이밍 제어기(211)는 다수의 로컬 동기 클럭(210) 중에서 선택된 어느 하나의 로컬 동기 클럭을 기반으로 소스 타임 슬롯을 생성한 후, 피드백된 로컬 동기 펄스(223)와 소스 타임 슬롯 간의 지연 오차를 계산하여, 계산된 지연 오차를 기반으로 소스 타임 슬롯의 시작 시점을 조정하여 타임 슬롯(Time Slot, TS)을 생성할 수 있다. The
프로세서(240)는 기본적으로 마스터 장치(11) 내의 구성들의 동작을 제어하는 범용 프로세서일 수 있다. 프로세서(240)는, 전술한 바와 같이, 먹스(202)에게 선택신호(241)를 제공한다.The
또한, 프로세서(240)는 제2 로컬 동기 채널(80)을 통해 로컬 동기 메시지를 슬레이브 장치(12)로 전송하여, 로컬 동기를 수행하기 위한 동기 설정 정보를 슬레이브 장치(12)에게 제공한다. 동기 설정 정보는, 전술한 바와 같이, 특정 작업을 식별하기 위한 식별 정보, 상기 특정 작업에 설정되는 로컬 동기 펄스의 길이값, 상기 길이값에 따라 설정되는 시각 단위를 나타내는 정보를 포함한다.In addition, the
또한, 프로세서(240)는 동기 설정 정보를 로컬 타이밍 제어기(211)에게 제공할 수 있다. 도면을 간략화하기 위해, 도 3에서는 프로세서(240)로부터 로컬 타이밍 제어기(211)로 입력되는 동기 설정 정보(또는 로컬 동기 메시지)를 나타내는 화살표를 도시하지 않았다. Further, the
로컬 타이밍 제어기(211)는 로컬 동기 펄스(222)를 생성하는데 있어서, 프로세서(240)로부터 입력된 동기 설정 정보(또는 로컬 동기 메시지)를 기반으로 로컬 동기 펄스(222)를 생성할 수 있다. 즉, 로컬 타이밍 제어기(211)는 동기 설정 정보에 포함된 로컬 동기 펄스의 길이값에 따라 로컬 동기 펄스(222)를 생성할 수 있다. In generating the
슬레이브 장치(12) 내의 슬레이브들(S1_1~S1_N)은 로컬 동기 채널을 통해 마스터 장치(11)로부터 수신된 로컬 동기 펄스(222)의 활성화 시점과 길이값을 인지하여 그에 상응하는 특정 작업의 타이밍 및 시각을 초기화한다. The slaves S1_1 to S1_N in the
또한, 프로세서(240)는 마스터 전용 채널(도 1의 70)을 이용하여 동기 설정 정보(또는 로컬 동기 메시지) 다른 마스터 장치에게 전송하여, 동기 대상(작업), 범위(시각 단위), 값(작업에 따라 정의된 로컬 동기 펄스의 길이)을 다른 마스터 장치에게 전송할 수 있다.In addition, the
도 4를 참조하면, 슬레이브(S1_1)는 입력 버퍼들(231, 232), 위상 동기 루프(233, PLL) 및 타이밍 제어기(235)를 포함한다.Referring to FIG. 4, the slave S1_1 includes input buffers 231 and 232, a phase locked loop 233 (PLL), and a
입력 버퍼(231)는 로컬 동기 채널(13)을 통해 로컬 동기 클럭(220)을 수신하고, 이를 PLL(233)로 입력하고, 입력 버퍼(232)는 로컬 동기 채널(13)을 통해 로컬 동기 펄스(222)를 수신하고, 이를 타이밍 제어기(235)로 입력한다.The
PLL(233)은 로컬 동기 클럭(220)에 동기된 다수의 로컬 동기 클럭(234)을 생성하여 이를 타이밍 제어기(235)로 입력한다. 이때, 다수의 로컬 동기 클럭(234)은 서로 다른 주파수를 가질 수 있다.The
타이밍 제어기(235)는 다수의 로컬 동기 클럭(234) 중에서 마스터 장치(11) 내의 로컬 타이밍 제어기(211)가 다수의 로컬 동기 클럭(210) 중에서 선택한 로컬 동기 클럭과 동일한 주파수를 갖는 로컬 동기 클럭을 선택하고, 선택한 로컬 동기 클럭과 입력 버퍼(232)로부터 입력된 로컬 동기 펄스를 이용하여, 마스터 장치(11) 내의 로컬 타이밍 제어기(211)에 의해 생성된 타임 슬롯에 동기된 타임 슬롯을 생성하여 마스터 장치와의 로컬 동기를 수행한다.The
도 5는 본 발명의 일 실시 예에 따른 마스터 장치와 슬레이브 장치 간의 연결 구조를 나타내는 도면이다.5 is a diagram illustrating a connection structure between a master device and a slave device according to an embodiment of the present invention.
도 5를 참조하면, 본 발명의 일 실시 예에 따른 마스터 장치(11)와 슬레이브 장치(12)는 점대점 연결 방식으로 연결될 수 있다. 점대점 연결을 위해, 예를 들면, RS-45 통신이 이용될 수 있다. 이 경우, 마스터 장치(11)는 N개의 RS45 커넥터들를 구비할 수 있다. 마찬가지로, 슬레이브 장치(12)내의 각 슬레이브는 하나의 RS45 커넥터를 구비할 수 있다. Referring to FIG. 5, the
RS45 커넥터는, 다수의 핀들로 구성될 수 있으며, 예를 들면, 로컬 동기 클럭을 송수신하는 2개의 핀들(pin), 로컬 동기 펄스를 송수하는 2개의 핀들 및 4개의 접지(GND) 핀들로 구성될 수 있다.The RS45 connector may be composed of a plurality of pins, for example, two pins for transmitting and receiving a local synchronization clock, two pins for transmitting and receiving a local synchronization pulse, and four ground (GND) pins. I can.
또한, 마스터 장치(11)는 피드백된 로컬 동기 클럭(221)을 전달하는 용도로 사용되는 RS45 커넥터들(221A 및 221B)과 피드백된 로컬 동기 펄스(223)를 전달하는 용도로 사용되는 RS45 커넥터들(223A 및 223B)을 더 포함할 수 있다.In addition, the
도 6은 본 발명의 다른 실시 예에 따른 마스터 장치와 슬레이브 장치 간의 연결 구조를 나타내는 도면이다.6 is a diagram illustrating a connection structure between a master device and a slave device according to another embodiment of the present invention.
도 6을 참조하면, 도 5를 참조하면, 본 발명의 일 실시 예에 따른 마스터 장치(11)와 슬레이브 장치(12)는 버스 방식으로 연결될 수 있다. 6, referring to FIG. 5, the
버스 방식의 경우, 마스터 장치(11)는 하나의 RJ45 커넥터를 구비할 수 있다. 즉, 마스터 장치(11)에 구비된 하나의 RJ45 커넥터가 각 슬레이브에 구비된 RJ45 커넥터가 버스 방식으로 연결될 수 있다.In the case of the bus system, the
마스터 장치(11)는, 추가로, 피드백된 로컬 동기 클럭(221)을 수신하기 위한 RJ45 커넥터(221C)와 피드백된 로컬 동기 펄스(223)을 수신하기 위한 RJ45 커넥터(223C)을 더 구비할 수 있다.The
이하, 도 7 내지 13을 참조하여, 마스터 장치와 슬레이브 장치 간의 로컬 동기를 수행하는 과정에 대해 상세히 기술한다. Hereinafter, a process of performing local synchronization between a master device and a slave device will be described in detail with reference to FIGS. 7 to 13.
도 7은 본 발명의 일 실시 예에 따른 로컬 동기를 설명하기 위한 타이밍도이다.7 is a timing diagram illustrating local synchronization according to an embodiment of the present invention.
설명의 중복을 피하기 위해, 마스터 장치(11)와 슬레이브 장치(12) 간의 로컬 동기에 대한 설명으로 다른 마스터 장치(21, 31 및 41)와 슬레이브 장치(22, 32 및 42) 간의 로컬 동기에 대한 설명을 대신한다. In order to avoid duplication of description, a description of local synchronization between the
도 7을 참조하면, 마스터 장치(11)가 슬레이브 장치(12) 내의 슬레이브들(S1_1~S1_N)에게 로컬 동기 클럭(300)과 특정 작업에 대응하는 특정 타임 슬롯(302)의 시작 시점에서 활성화된 로컬 동기 펄스(301)를 포함하는 로컬 동기 신호를 전송한다. Referring to FIG. 7, the
슬레이브(S1_1)는 로컬 동기 클럭(300)의 상승 시점(rising time)에서 로컬 동기 펄스(301)가 활성화 상태(하이(high) 구간)인 경우, 로컬 동기 클럭(300)에 대한 펄스 카운터값을 '1' 증가 시킨다(304). When the
이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 다음 상승 시점에서 로컬 동기 펄스(301)가 비활성화 상태(로우(low) 구간)인 경우(320), 로컬 동기 클럭(300)에 대한 펄스 카운팅을 종료한다. Thereafter, when the
이후, 슬레이브(S1_1)는 로컬 동기 클럭(300)의 다음 상승 시점에서 타임 슬롯(302)을 초기화하고, 펄스 카운터 값을 '0'으로 초기화한다. 타임 슬롯(302)은 타임 슬롯 클럭(303) 형태로 출력될 수 있다.Thereafter, the slave S1_1 initializes the
이후, 마스터 장치(11) 내의 프로세서(240)는 슬레이브(S1_1)에게 상기 로컬 동기 펄스(301) 길이값에 따라 정의된 특정 작업의 종류 및 시각 동기를 위한 시각 단위를 알린다. Thereafter, the
도 8은 본 발명의 다른 실시 예에 따른 나노초 단위의 로컬 동기를 설명하기 위한 타이밍도이다.8 is a timing diagram for explaining local synchronization in nanosecond units according to another embodiment of the present invention.
도 8을 참조하면, 마스터(11)는 나노(nano)초 단위로 정의되는 타임 슬롯의 시작 시점에서 로컬 동기 펄스(301)를 활성화시킨다. 이때, 활성화된 로컬 동기 펄스(301)의 활성화 구간(하이 구간, 예를 들면, 2 클럭 길이)의 길이는 타임 슬롯의 시각 단위가 나노초를 의미하는 것으로 사전에 정의된다.Referring to FIG. 8, the
로컬 동기 클럭(300)의 상승 시점(t0)에서 로컬 동기 펄스(301)가 활성 상태를 유지하는 경우, 슬레이브(S1_1)가 펄스 카운터값을 '1' 증가시킨다(304). When the
이후, 로컬 동기 클럭(300)의 다음 상승 시점(t1)에 로컬동기펄스(301)가 활성 상태를 계속 유지하는 경우, 펄스 카운터값을 '1' 증가시킨다(305). Thereafter, when the
이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 다음 상승 시점(t2)에서 로컬 동기 펄스(301)가 비활성 상태인 경우, 펄스 카운팅을 종료하고, 펄스 카운터 값 2에서 정의한 나노초 단위의 타임 슬롯을 로컬 동기 클럭(300)의 상승 시점(t2)에서 초기화하고(320), 펄스 카운터값을 '0'으로 초기화한다. 본 실시 예에서는 나노초 단위의 타임 슬롯을 펄스 카운터 값 2로 한정하는 것은 아니며 다양한 펄스 카운터 값으로 변경 가능하다.Thereafter, when the
도 9는 본 발명의 다른 실시 예에 따른 마이크로초 단위(마이크로초:나노초)의 로컬 동기를 설명하기 위한 타이밍도이다.9 is a timing diagram for explaining local synchronization in units of microseconds (microseconds: nanoseconds) according to another embodiment of the present invention.
도 9를 참조하면, 마스터(11)는 마이크로초와 나노초의 시각 단위로 정의되는 타임 슬롯의 시작 시점에서 로컬 동기 펄스(301)를 활성화시킨다. 여기서, 로컬 동기 펄스(301)는 타임 슬롯의 시각 단위가 마이크로초와 나노초임을 정의하는 길이(예, 3 클럭)로 정의될 수 있다.Referring to FIG. 9, the
로컬 동기 클럭(300)의 상승 시점(t0)에서 로컬 동기 펄스(301)가 활성 상태임을 인지할 경우, 슬레이브(S1_1)는 펄스 카운터 값을 1 증가시킨다(304). When it is recognized that the
이후, 로컬 동기 클럭(300)의 다음 상승 시점(t1)에서 로컬 동기 펄스(301)가 활성 상태인 경우, 슬레이브(S1_1)는 펄스카운터 값을 다시 1 증가 시킨다(305). Thereafter, when the
이후, 로컬 동기 클럭(300)의 상승 시점(t2)에서 로컬동기펄스(301)가 활성 상태인 경우, 슬레이브(S1_1)는 펄스카운터값을 다시 1 증가시킨다(306). Thereafter, when the
이후, 로컬 동기 클럭(300)의 상승 시점(t3)에 로컬 동기 펄스 (301)가 비활성 상태인 경우(320), 슬레이브(S1_1)는 펄스 카운팅을 종료하고, 펄스카운터 값 3에서 정의한 마이크로초와 나노초 단위의 타임 슬롯(330)을 로컬 동기 클럭(300)의 상승 시점(t3)에서 초기화 하고, 펄스 카운터값을 0으로 초기화한다. Thereafter, when the
도 10는 본 발명의 다른 실시 예에 따른 밀리초 단위의 로컬 동기를 설명하기 위한 타이밍도이다.10 is a timing diagram illustrating local synchronization in units of milliseconds according to another embodiment of the present invention.
도 10을 참조하면, 마스터 장치(11)는 밀리초, 마이크로초 및 나노초의 시각 단위로 정의되는 타임슬롯의 시작 시점에서 로컬 동기 펄스(301)를 활성화시킨다. 이때, 마스터 장치(11)는 밀리초, 마이크로초 및 나노초의 시각 단위로 정의되는 타임 슬롯의 초기화를 정의하는 로컬 동기 펄스 길이(예, 4 클럭 길이)만큼 로컬동기펄스(301)를 활성화시킨다.Referring to FIG. 10, the
슬레이브(S1_1)는 로컬 동기 펄스(301)의 활성화 구간(하이 구간)이 유지되는 동안 로컬 동기 클럭(300)의 상승 시점을 카운팅하여(304, 305, 306 및 307), 펄스 카운터값 4를 확인한다.The slave (S1_1) counts the rising point of the
이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 상승 시점(t4)에서 로컬 동기 펄스 (301)가 비활성 상태임을 인지하면, 펄스 카운팅을 종료하고, 확인된 펄스카운터 값 4에서 정의하는 시각 단위(밀리초, 마이크로초, 나노초)의 타임 슬롯을 상승 시점(t4)에서 초기화 하고, 펄스 카운터값을 0으로 초기화한다. Thereafter, when the slave (S1_1) recognizes that the
도 11은 본 발명의 동기대상 선택과 타임 슬롯 동기를 위한 레지스터를 설명하기 위한 도면이다. 11 is a diagram illustrating a register for selecting a synchronization target and synchronizing a time slot according to the present invention.
도 11을 참조하면, 마스터(11)는 로컬 동기 펄스(301)가 의미하는 바가 무엇인지를 선택할 수 있는 동기 펄스 선택 레지스터를 설정할 수 있다. Referring to FIG. 11, the
동기 마스터(11)와 슬레이브(S1_1)는 로컬 동기 펄스(301) 길이 별로 동기시킬 타이밍을 가리키는 타임 슬롯 지정 레지스터 또는 로컬 동기 펄스(301) 길이별로 동기 시킬 시각을 가리키는 시각동기 레지스터(502)를 설정할 수 있다. The
로컬 동기 펄스(301)로 타이밍을 가리키도록 설정할 경우, 동기마스터(11,21,31,41)는 로컬 동기 펄스(301) 길이를 조절하여 동기시키고자 하는 타임슬롯 (302)을 초기화 한다(320).When the
도 12는 본 발명의 실시 예에 따른 로컬 동기에 따라 마스터와 슬레이브들 간의 타이밍을 동기시킨 결과를 보여주는 타이밍도이다.12 is a timing diagram showing a result of synchronizing timing between a master and slaves according to local synchronization according to an embodiment of the present invention.
도 12에 도시된 바와 같이, 마스터(11)와 슬레이브들(S1_1~ S1_3) 간의 로컬 동기 클럭(300)에 따라 타임 슬롯 (330)이 동기되면, 슬레이브들(S1_1~S1_3) 간의 약간의 오차(skew) (< 1ns)를 두고 도 7의 사진과 같이 타이밍이 일치함을 확인할 수 있었다.As shown in FIG. 12, when the
도 13은 본 발명의 실시 예에 따른 데이터 통신 시스템에서의 타이밍 동기 방법을 나타내는 흐름도이다.13 is a flowchart illustrating a timing synchronization method in a data communication system according to an embodiment of the present invention.
도 13을 참조하면, 단계 S1310에서, 통신 블록(10)이, 이전 통신 블록(40)으로부터 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신하고, 상기 수신한 전역 동기 신호를 다음 통신 블록(20)으로 송신하여, 상기 통신 블록(10)과 다음 통신 블록(20)이 상기 전역 동기 신호를 이용하여 전역 동기를 수행한다.Referring to FIG. 13, in step S1310, the
이어, 단계 1320에서, 상기 통신 블록(10) 내의 마스터(11)가, 상기 전역 동기 신호(REF_1)에 포함된 상기 전역 동기 클럭을 이용하여 로컬 동기 클럭을 생성하는 과정이 수행된다. Subsequently, in
이어, 단계 1330에서, 상기 마스터(11)가, 상기 로컬 동기 클럭(220)과 상기 전역 동기 펄스(204)를 이용하여 로컬 동기 펄스(222)를 생성하는 과정이 수행된다.Subsequently, in
이어, 단계 1340에서, 상기 마스터(11)가, 상기 로컬 동기 클럭(220)과 상기 로컬 동기 펄스(222)를 포함하는 로컬 동기 신호를 로컬 동기 채널(13)을 통해 상기 슬레이브(S1_1)로 전송하는 과정이 수행된다. Subsequently, in
이어, 단계 S1350에서, 상기 슬레이브(S1_1)가, 상기 로컬 동기 클럭(220)과 상기 로컬 동기 펄스(222)를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터(11)의 타임 슬롯의 시작 시점에 동기화시키는 로컬 동기를 수행한다.Subsequently, in step S1350, the slave (S1_1) uses the
도 14는 도 13에 도시한 단계 1310의 상세 흐름도이다.14 is a detailed flowchart of
도 14를 참조하면, 단계 1311에서, 상기 마스터(11) 내의 제1 입력 버퍼(도 2 및 3의 100)가, 이전 통신 블록(40)의 마스터(41)으로부터 전역 동기 신호를 수신하는 과정이 수행된다.Referring to FIG. 14, in
이어, 단계, 1313에서, 상기 마스터(11) 내의 전역 타이밍 제어기(도 2 및 3의 104)가, 상기 전역 동기 신호(REF_1)를 상기 마스터(11) 내의 출력 버퍼(106)로 입력하는 과정이 수행된다. Subsequently, in step 1313, a process in which the global timing controller (104 of FIGS. 2 and 3) in the
이어, 단계 1315에서, 상기 출력 버퍼(106)가, 상기 통신 블록(10)과 상기 다음 통신 블록(20)을 연결하는 전역 동기 채널(51)을 통해, 상기 전역 동기 신호(REF_1)를 상기 다음 통신 블록(20)으로 전송하는 과정이 수행된다.Subsequently, in
이어, 단계 1317에서, 상기 출력 버퍼(106)가, 상기 전역 동기 신호(도 2의 OUT_1)를 상기 전역 타이밍 제어기(104)의 입력으로 피드백하도록 상기 마스터 내의 제2 입력 버퍼(101)로 입력하는 과정이 수행된다.Subsequently, in
이어, 단계 1319에서, 상기 전역 타이밍 제어기(104)가, 상기 제1 입력 버퍼(도 2 및 3의 100)를 통해 입력된 상기 전역 동기 신호(REF_1)와 상기 제2 입력 버퍼(101)를 통해 피드백된 전역 동기 신호(도 2 및 3의 FB_1) 간의 지연 오차를 계산하고, 계산된 지연 오차에 따라 상기 다음 통신 블록(20)으로 전송되는 전역 동기 신호(OUT_1)의 타이밍을 조정하는 과정이 수행된다.Subsequently, in
도 15는 도 13에 도시한 단계 1320의 상세 흐름도이다.15 is a detailed flowchart of
도 15를 참조하면, 단계 1321에서, 동기 범위를 설정하는 과정이 수행된다.Referring to FIG. 15, in
동기 범위의 설정은 로컬 동기만을 수행할지 아니면, 전역 동기 및 로컬 동기를 모두 수행할지를 설정하는 것일 수 있다. 이러한 설정은 시스템 관리자의 선택에 따라 결정될 수 있다. 경우에 따라, 로컬 동기만을 수행할 필요가 있을 수도 있다. 설정된 동기 범위는 마스터 내의 프로세서(240)가 메시지 형태로 구성하여, 마스터 전용 채널(70, 71, 72 및 73)을 통해 주변 마스터들로 전달될 수 있다. The setting of the synchronization range may be to set whether to perform only local synchronization or both global synchronization and local synchronization. These settings can be determined by the system administrator's choice. In some cases, it may be necessary to perform only local synchronization. The set synchronization range may be configured in the form of a message by the
동기 범위가 전역 동기 및 로컬 동기를 모두 수행하도록 설정되면, 단계 S1323에서 상기 마스터가, 상기 이전 통신 블록으로부터 수신한 전역 동기 신호에 포함된 상기 전역 동기 클럭을 상기 로컬 동기 클럭으로서 생성하는 과정이 수행된다.When the synchronization range is set to perform both global synchronization and local synchronization, in step S1323, the master generates the global synchronization clock included in the global synchronization signal received from the previous communication block as the local synchronization clock. do.
만일, 동기 범위가 로컬 동기만을 수행하도록 설정되면, 단계 1325에서, 상기 마스터가 스스로 생성한 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하는 과정이 수행된다. If the synchronization range is set to perform only local synchronization, in
단계 1323 및 1325는 도 3에 도시한 먹스(202)에서 수행될 수 있다. 예를 들면, 먹스(202)는 프로세서(240)로부터 입력된 선택 신호(241)에 따라 로컬 동기 클럭 생성기(201)로부터 입력된 로컬 동기 클럭 소스 또는 전역 타이밍 제어기(104)로부터 입력된 전역 동기 클럭 중 어느 하나를 선택하여 로컬 동기 클럭으로서 생성할 수 있다. 이 경우, 선택 신호(241)는 관리자에 설정된 동기 범위를 나타내는 신호일 수 있다.
도 16은 도 13에 도시한 단계 1330의 상세 흐름도이다.16 is a detailed flowchart of
도 16을 참조하면, 단계 1331에서, 상기 마스터 내부의 프로세서(도 3의 240)가, 사용자의 설정에 따라, 로컬 동기 메시지를 생성하여 상기 마스터 내의 로컬 타이밍 제어기(도 3의 211)로 전달하는 과정이 수행된다. 여기서, 로컬 동기 메시지는 특정 작업, 상기 특정 작업에 설정되는 상기 로컬 동기 펄스의 길이값 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위 중에서 적어도 하나를 포함할 수 있다.Referring to FIG. 16, in
이어, 단계 1333에서, 상기 로컬 타이밍 제어기(도 3의 211)가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하는 과정이 수행된다. 여기서, 상기 로컬 동기 메시지에 의해 정의되는 클럭 개수는 특정 작업 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위 중에서 적어도 하나를 정의하는 것일 수 있다.
Subsequently, in
이어, 단계 1335에서, 상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 과정이 수행된다.Subsequently, in
도 17은 도 13에 도시한 단계 1350의 상세 흐름도이다.17 is a detailed flowchart of
도 17을 참조하면, 단계 1351에서, 상기 로컬 동기 펄스의 활성화 구간 이후 상기 로컬 동기 클럭의 첫 번째 상승 시점을 인식하는 과정이 수행된다. Referring to FIG. 17, in
이어, 단계 S1353에서, 상기 첫 번째 상승 시점을 상기 마스터의 타임 슬롯의 시작 시점으로 인식하여 자신(슬레이브)의 타임 슬롯을 상기 첫 번째 상승 시점에서 초기화하는 과정이 수행된다.Subsequently, in step S1353, a process of recognizing the first rising point as a start point of the time slot of the master and initializing the own (slave)'s time slot at the first rising point is performed.
추가로, 슬레이브가 상기 로컬 동기 펄스의 활성화 구간에 대응하는 상기 로컬 동기 클럭의 클럭 개수를 카운팅하는 과정과 상기 클럭 개수를 카운팅한 결과를 기반으로 동기 대상을 인식하는 과정이 더 포함될 수 있다. 여기서, 동기 대상은 상기 마스터와 상기 슬레이브가 수행하는 특정 작업 및 상기 타임 슬롯에 대한 시각 단위를 포함한다. In addition, a process of counting the number of clocks of the local synchronization clock corresponding to the activation period of the local synchronization pulse by the slave and a process of recognizing a synchronization object based on a result of counting the number of clocks may be further included. Here, the synchronization target includes a specific task performed by the master and the slave and a time unit for the time slot.
이상에서 본 발명에 대하여 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 본 발명의 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.In the above, the present invention has been described centering on the embodiments, but these are only examples and do not limit the present invention, and those of ordinary skill in the field to which the present invention pertains will not depart from the essential characteristics of the present invention. It will be appreciated that various modifications and applications that are not illustrated in are possible. For example, each component specifically shown in the embodiment of the present invention can be modified and implemented. And differences related to these modifications and applications should be construed as being included in the scope of the present invention defined in the appended claims.
Claims (19)
통신 블록이, 이전 통신 블록으로부터 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신하고, 상기 수신한 전역 동기 신호를 다음 통신 블록으로 송신하여, 상기 통신 블록과 다음 통신 블록이 상기 전역 동기 신호를 이용하여 전역 동기를 수행하는 단계;
상기 통신 블록 내의 마스터가, 상기 전역 동기 클럭을 이용하여 로컬 동기 클럭을 생성하는 단계;
상기 마스터가, 상기 로컬 동기 클럭과 상기 전역 동기 펄스를 이용하여 로컬 동기 펄스를 생성하는 단계;
상기 마스터가, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 상기 슬레이브로 전송하는 단계; 및
상기 슬레이브가, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터의 타임 슬롯의 시작 시점에 동기화시키는 로컬 동기를 수행하는 단계
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.In a timing synchronization method in a data communication system including a plurality of communication blocks, each communication block including a master and a slave,
The communication block receives a global synchronization signal including a global synchronization clock and a global synchronization pulse from a previous communication block, and transmits the received global synchronization signal to a next communication block, so that the communication block and the next communication block are connected to the global synchronization. Performing global synchronization using a signal;
Generating, by a master in the communication block, a local synchronization clock using the global synchronization clock;
Generating, by the master, a local synchronization pulse using the local synchronization clock and the global synchronization pulse;
Transmitting, by the master, the local synchronization clock and the local synchronization pulse to the slave; And
Performing, by the slave, local synchronization of synchronizing a start time of its own time slot to a start time of a time slot of the master using the local sync clock and the local sync pulse
Timing synchronization method in a data communication system comprising a.
상기 마스터 내의 제1 입력 버퍼가, 이전 통신 블록으로부터 상기 전역 동기 신호를 수신하는 단계;
상기 마스터 내의 전역 타이밍 제어기가, 상기 제1 입력 버퍼를 통해 입력된 상기 전역 동기 신호를 상기 마스터 내의 출력 버퍼로 입력하는 단계;
상기 출력 버퍼가, 상기 통신 블록과 상기 다음 통신 블록을 연결하는 전역 동기 채널을 통해, 상기 전역 동기 신호를 상기 다음 통신 블록으로 전송하는 단계;
상기 출력 버퍼가, 상기 전역 동기 신호를 상기 전역 타이밍 제어기의 입력으로 피드백하도록 상기 마스터 내의 제2 입력 버퍼로 입력하는 단계; 및
상기 전역 타이밍 제어기가, 상기 제1 입력 버퍼를 통해 입력된 상기 전역 동기 신호와 상기 제2 입력 버퍼를 통해 피드백된 전역 동기 신호 간의 지연 오차를 계산하고, 계산된 지연 오차에 따라 상기 다음 통신 블록으로 전송되는 전역 동기 신호의 타이밍을 조정하는 단계;
를 포함하는 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 1, wherein the performing of the global synchronization comprises:
Receiving, by a first input buffer in the master, the global synchronization signal from a previous communication block;
Inputting, by a global timing controller in the master, the global synchronization signal input through the first input buffer to an output buffer in the master;
Transmitting, by the output buffer, the global synchronization signal to the next communication block through a global synchronization channel connecting the communication block and the next communication block;
Inputting, by the output buffer, the global synchronization signal to a second input buffer in the master to feed back the global synchronization signal to an input of the global timing controller; And
The global timing controller calculates a delay error between the global synchronization signal input through the first input buffer and the global synchronization signal fed back through the second input buffer, and moves to the next communication block according to the calculated delay error. Adjusting the timing of the transmitted global synchronization signal;
Timing synchronization method in a data communication system comprising a.
상기 마스터가, 상기 이전 통신 블록으로부터 수신한 전역 동기 신호에 포함된 상기 전역 동기 클럭 또는 상기 마스터가 스스로 생성한 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하는 단계인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 1, wherein generating the local synchronization clock comprises:
The timing in a data communication system in which the master generates the global synchronization clock included in the global synchronization signal received from the previous communication block or a local synchronization clock source generated by the master itself as the local synchronization clock. Synchronous way.
사용자의 선택에 따라, 상기 데이터 통신 시스템이 상기 마스터와 상기 슬레이브 간의 상기 로컬 동기만을 수행하는 경우, 상기 마스터가 스스로 생성한 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하는 단계
인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 3, wherein generating the local synchronization clock comprises:
When the data communication system performs only the local synchronization between the master and the slave according to a user's selection, generating a local synchronization clock source generated by the master itself as the local synchronization clock
Timing synchronization method in a data communication system.
사용자의 선택에 따라, 상기 데이터 통신 시스템이 상기 통신 블록들 간의 상기 전역 동기와 상기 마스터와 상기 슬레이브 간의 상기 로컬 동기를 모두 수행하는 경우, 상기 마스터가, 상기 이전 통신 블록으로부터 수신한 전역 동기 신호에 포함된 상기 전역 동기 클럭을 상기 로컬 동기 클럭으로서 생성하는 단계
인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 3, wherein generating the local synchronization clock comprises:
According to the user's selection, when the data communication system performs both the global synchronization between the communication blocks and the local synchronization between the master and the slave, the master, the global synchronization signal received from the previous communication block. Generating the included global synchronization clock as the local synchronization clock
Timing synchronization method in a data communication system.
상기 마스터가 상기 전역 동기 신호를 최초로 생성하는 탑(top) 마스터로 선정된 경우, 상기 마스터는 스스로 전역 동기 클럭과 전역 동기 펄스를 생성하는 단계
를 더 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.In claim 1,
When the master is selected as the top master that first generates the global synchronization signal, the master generates a global synchronization clock and a global synchronization pulse by itself.
The timing synchronization method in a data communication system further comprising.
상기 탑 마스터로 선정된 상기 마스터는 내부에 구비된 전역 동기 클럭 생성기로부터 생성된 전역 동기 클럭 소스를 상기 전역 동기 클럭으로서 생성하는 단계
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.In paragraph 6,
The master selected as the top master generates a global synchronization clock source generated from an internal global synchronization clock generator as the global synchronization clock.
Timing synchronization method in a data communication system comprising a.
상기 마스터 내부의 프로세서가, 사용자의 설정에 따라, 로컬 동기 메시지를 생성하여 상기 마스터 내의 로컬 타이밍 제어기로 전달하는 단계;
상기 로컬 타이밍 제어기가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하는 단계; 및
상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 단계
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 1, further comprising: generating the local sync pulse;
Generating, by a processor inside the master, a local synchronization message according to a user's setting, and transmitting it to a local timing controller within the master;
Adjusting, by the local timing controller, a length value of the global synchronization pulse to have an activation period corresponding to the number of clocks of the local synchronization clock defined by the local synchronization message; And
Generating the global synchronization pulse with the adjusted length value as the local synchronization pulse
Timing synchronization method in a data communication system comprising a.
상기 로컬 동기 펄스의 활성화 구간 이후 상기 로컬 동기 클럭의 첫 번째 상승 시점을 인식하는 단계; 및
상기 첫 번째 상승 시점을 상기 마스터의 타임 슬롯의 시작 시점으로 인식하여 자신(슬레이브)의 타임 슬롯을 상기 첫 번째 상승 시점에서 초기화하는 단계;
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.The method of claim 1, wherein performing the local synchronization comprises:
Recognizing a first rising point of the local synchronization clock after the activation period of the local synchronization pulse; And
Recognizing the first rising point as a start point of the master's time slot and initializing the own (slave)'s time slot at the first rising point;
Timing synchronization method in a data communication system comprising a.
상기 로컬 동기 펄스의 활성화 구간에 대응하는 상기 로컬 동기 클럭의 클럭 개수를 카운팅하는 단계; 및
상기 클럭 개수를 카운팅한 결과를 기반으로 동기 대상을 인식하는 단계;를 더 포함하고,
상기 동기 대상은,
상기 마스터와 상기 슬레이브가 수행하는 특정 작업 및 상기 타임 슬롯에 대한 시각 단위를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.In claim 9,
Counting the number of clocks of the local synchronization clock corresponding to the activation period of the local synchronization pulse; And
Recognizing a synchronization target based on a result of counting the number of clocks; further comprising,
The synchronization target,
And a time unit for the time slot and a specific task performed by the master and the slave.
각 통신 블록은,
이전 통신 블록으로부터 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신하고, 상기 수신한 전역 동기 신호를 다음 통신 블록 내의 다음 마스터로 전송하고, 상기 전역 동기 신호를 이용하여 상기 다음 마스터와 전역 동기를 수행하는 마스터; 및
상기 마스터로부터, 상기 전역 동기 클럭에 기반한 로컬 동기 클럭과 상기 전역 동기 펄스에 기반한 로컬 동기 펄스를 수신하고, 상기 로컬 동기 클럭과 상기 로컬 동기 펄스를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터의 타임 슬롯의 시작 시점에 동기시키는 로컬 동기를 수행하는 슬레이브를 포함하는 데이터 통신 시스템.In a data communication system including a plurality of communication blocks,
Each communication block,
Receives a global synchronization signal including a global synchronization clock and a global synchronization pulse from a previous communication block, transmits the received global synchronization signal to the next master in the next communication block, and uses the global synchronization signal to communicate with the next master. Master to perform motivation; And
A local synchronization clock based on the global synchronization clock and a local synchronization pulse based on the global synchronization pulse are received from the master, and the start time of its own time slot is determined by using the local synchronization clock and the local synchronization pulse. A data communication system including a slave that performs local synchronization that synchronizes at the start of a time slot of.
상기 이전 통신 블록으로부터 상기 전역 동기 신호를 수신하는 제1 입력 버퍼;
상기 제1 입력 버퍼를 통해 상기 전역 동기 신호를 수신하는 전역 타이밍 제어기;
상기 전역 타이밍 제어기를 통해 상기 전역 동기 신호를 상기 다음 마스터로 전송하는 출력 버퍼; 및
상기 출력 버퍼를 통해, 상기 다음 마스터로 전송되는 전역 동기 신호를 상기 전역 타이밍의 입력으로 피드백시키는 제2 입력 버퍼를 포함하고,
상기 전역 타이밍 제어기는,
상기 제1 입력 버퍼를 통해 입력된 상기 전역 동기 신호와 상기 제2 입력 버퍼를 통해 피드백된 전역 동기 신호 간의 지연 오차를 계산하고, 계산된 지연 오차에 따라 상기 다음 마스터로 전송되는 전역 동기 신호의 타이밍을 조정하는 것인 데이터 통신 시스템. In claim 11, the master,
A first input buffer for receiving the global synchronization signal from the previous communication block;
A global timing controller for receiving the global synchronization signal through the first input buffer;
An output buffer for transmitting the global synchronization signal to the next master through the global timing controller; And
A second input buffer for feeding back a global synchronization signal transmitted to the next master to an input of the global timing through the output buffer,
The global timing controller,
Calculate a delay error between the global synchronization signal input through the first input buffer and the global synchronization signal fed back through the second input buffer, and timing of the global synchronization signal transmitted to the next master according to the calculated delay error Data communication system that is to coordinate.
상기 이전 통신 블록으로부터 수신한 전역 동기 신호에서 상기 전역 동기 클럭과 상기 전역 동기 펄스를 분리하는 전역 타이밍 제어기;
로컬 동기 클럭 소스를 생성하는 로컬 동기 클럭 생성기; 및
상기 전역 타이밍 제어기로부터 분리된 상기 전역 동기 클럭 및 상기 로컬 동기 클럭 생성기로부터 생성된 상기 로컬 동기 클럭 소스 중에서 어느 하나를 선택하여, 선택된 어느 하나를 상기 로컬 동기 클럭으로서 생성하는 멀티플렉서
를 포함하는 데이터 통신 시스템. In claim 11, the master,
A global timing controller for separating the global synchronization clock and the global synchronization pulse from the global synchronization signal received from the previous communication block;
A local synchronization clock generator for generating a local synchronization clock source; And
A multiplexer that selects any one of the global synchronization clock separated from the global timing controller and the local synchronization clock source generated from the local synchronization clock generator, and generates any one selected as the local synchronization clock.
Data communication system comprising a.
상기 로컬 동기만을 수행하기 위한 제1 선택 신호에 따라, 상기 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하고,
상기 로컬 동기와 상기 전역 동기 모두를 수행하기 위한 제2 선택 신호에 따라, 상기 전역 타이밍 제어기로부터 분리된 상기 전역 동기 클럭을 상기 로컬 동기 클럭으로서 생성하는 것인 데이터 통신 시스템.The method of claim 13, wherein the multiplexer,
According to the first selection signal for performing only the local synchronization, generating the local synchronization clock source as the local synchronization clock,
And generating the global synchronization clock separated from the global timing controller as the local synchronization clock according to a second selection signal for performing both the local synchronization and the global synchronization.
전역 동기 클럭 소스를 생성하는 전역 동기 클럭 생성기; 및
상기 마스터가 탑 마스터로 선정된 경우, 상기 전역 동기 클럭 소스를 상기 전역 동기 클럭으로서 생성하고, 상기 전역 동기 펄스를 스스로 생성하여, 다음 마스터로 전송하는 전역 타이밍 제어기;
를 포함하는 것인 데이터 통신 시스템. In claim 11, the master,
A global synchronization clock generator for generating a global synchronization clock source; And
A global timing controller that generates the global synchronization clock source as the global synchronization clock when the master is selected as the top master, generates the global synchronization pulse by itself, and transmits the global synchronization pulse to the next master;
Data communication system comprising a.
로컬 동기 메시지를 생성하는 프로세서;
상기 이전 통신 블록으로부터 수신한 전역 동기 신호에서 상기 전역 동기 클럭과 상기 전역 동기 펄스를 분리하는 전역 타이밍 제어기;
상기 전역 타이밍 제어기로부터 분리된 상기 전역 동기 클럭 및 로컬 동기 클럭 생성기로부터 생생된 로컬 동기 클럭 소스 중에서 어느 하나를 선택하여, 선택된 어느 하나를 상기 로컬 동기 클럭으로서 생성하는 멀티플렉서; 및
상기 로컬 동기 메시지, 상기 전역 타이밍 제어기로부터 입력되는 상기 전역 동기 펄스 및 상기 멀티플렉서로부터 입력된 상기 로컬 동기 클럭을 이용하여 상기 로컬 동기 펄스를 생성하는 로컬 타이밍 제어기
를 포함하는 것인 데이터 통신 시스템.In clause 11,
A processor that generates a local synchronization message;
A global timing controller for separating the global synchronization clock and the global synchronization pulse from the global synchronization signal received from the previous communication block;
A multiplexer configured to select any one of the global synchronization clock separated from the global timing controller and a local synchronization clock source generated from a local synchronization clock generator, and generate one selected as the local synchronization clock; And
A local timing controller that generates the local synchronization pulse using the local synchronization message, the global synchronization pulse input from the global timing controller, and the local synchronization clock input from the multiplexer.
Data communication system comprising a.
상기 로컬 타이밍 제어기가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하고, 상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 것인 데이터 통신 시스템.The method of claim 17, wherein the local timing controller,
The local timing controller adjusts a length value of the global synchronization pulse to have an activation period corresponding to the number of clocks of the local synchronization clock defined by the local synchronization message, and the global synchronization pulse whose length value is adjusted Generating as the local sync pulse.
특정 작업 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위를 정의하는 것인 데이터 통신 시스템.The method of claim 18, wherein the number of clocks is
A data communication system that defines a specific job and a time unit of the time slot for the specific job.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190024062A KR20200105209A (en) | 2019-02-28 | 2019-02-28 | data communication system and method for timing synchronization in data communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190024062A KR20200105209A (en) | 2019-02-28 | 2019-02-28 | data communication system and method for timing synchronization in data communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200105209A true KR20200105209A (en) | 2020-09-07 |
Family
ID=72472473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190024062A KR20200105209A (en) | 2019-02-28 | 2019-02-28 | data communication system and method for timing synchronization in data communication system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20200105209A (en) |
-
2019
- 2019-02-28 KR KR1020190024062A patent/KR20200105209A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3367733B1 (en) | Method, device, and system for synchronizing clocks of processors | |
US8689035B2 (en) | Communication system, communication interface, and synchronization method | |
CN102104476B (en) | Clock synchronization device and method | |
KR102652569B1 (en) | Implementation of PHY-level hardware timestamping and time synchronization in cost-optimized environments | |
US10110367B2 (en) | High precision timer in CPU cluster | |
EP2991250B1 (en) | Method and apparatus for ptp synchronous network | |
CN108259109B (en) | Network equipment in PTP domain and TOD synchronization method | |
US9246615B2 (en) | Delay measurement in a point to multipoint system | |
EP3553994B1 (en) | Method for exchanging time synchronisation message, and network device | |
CN105262555B (en) | Time synchronization method, programmable logic device, single board and network element | |
CN104378193A (en) | Time synchronization system and method, exchanger and embedded interface board | |
WO2018082665A1 (en) | Frequency synchronization method and slave clock | |
Rietmann et al. | Field bus for data exchange and control of modular power electronic systems with high synchronisation accuracy of±4 ns | |
JP2012222833A (en) | System and method to overcome wander accumulation to achieve precision clock distribution over large networks | |
CN102916758B (en) | Ethernet time synchronism apparatus and the network equipment | |
JP2023523428A (en) | Synchronization of Pulse Width Modulation Control | |
US11144088B2 (en) | Clocking synchronization method and apparatus | |
Meier et al. | IEEE 1588 syntonization and synchronization functions completely realized in hardware | |
Kinali et al. | Fault-tolerant clock synchronization with high precision | |
KR20200105209A (en) | data communication system and method for timing synchronization in data communication system | |
WO2022222616A1 (en) | Clock synchronisation method, optical head end, and optical terminal | |
CN114650113B (en) | Method and device for selecting clock source | |
CN114070445A (en) | Distributed power supply timing calibrator and synchronous triggering method | |
CN114282677A (en) | Main control device, slave control device and quantum computing system | |
JP2023537348A (en) | Synchronization in distributed communication systems |