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 PDF

Info

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
Application number
KR1020190024062A
Other languages
Korean (ko)
Inventor
김법중
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020190024062A priority Critical patent/KR20200105209A/en
Publication of KR20200105209A publication Critical patent/KR20200105209A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0673Clock 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0644External master-clock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock 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

A timing synchronization method in a data communication system of the present invention comprises: a step that a 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 uses the global synchronization signal to perform global synchronization; a step that a master in the communication block generates a local synchronization clock by using the global synchronization clock; a step that the master generates a local synchronization pulse by using the local synchronization clock and the global synchronization pulse; a step that the master transmits the local synchronization clock and the local synchronization pulse to the slave; and a step that the slave performs local synchronization of synchronizing start time of own time slot and start time of a time slot of the master by using the local synchronization clock and the local synchronization pulse.

Description

데이터 통신 시스템 및 상기 시스템에서 타이밍 동기 방법{data communication system and method for timing synchronization in data communication system}Data communication system and method for timing synchronization in the system.

본 발명은 데이터 통신 시스템에서 타이밍 동기에 관한 기술이다.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 step 1310 shown in FIG. 13;
15 is a detailed flowchart of step 1320 shown in FIG. 13;
16 is a detailed flowchart of step 1330 shown in FIG. 13;
17 is a detailed flowchart of step 1350 shown in FIG. 13;

이하, 본 발명의 다양한 실시 예가 첨부된 도면과 연관되어 기재된다. 본 발명의 다양한 실시 예는 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 발명의 다양한 실시 예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 다양한 실시예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 동일한 구성요소에 대해서는 동일한 참조 부호가 사용되었다.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 data communication system 1 according to an embodiment of the present invention includes a plurality of communication blocks. 1 shows a data communication system 1 consisting of four communication blocks 10, 20, 30 and 40, but this is for simplicity of the drawing, and the data communication system 1 of the present invention has four communication blocks. It is not intended to be limited to including nodes 10, 20, 30 and 40.

통신 블록들(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)'라는 용어로 대체될 수 있다.Communication blocks 10, 20, 30 and 40 may be computing devices that perform specific tasks synchronized at specific timings and specific times within a large industrial production complex or data center. A specific work can be replaced with the term'specific process'.

통신 블록들(10, 20, 30 및 40)은 각자의 데이터 통신 채널(60, 61, 62 및 63)을 통해 스위치(2)에 연결된다. 스위치(2)는 통신 블록들(10, 20, 30 및 40) 간에 송수신하는 데이터를 중계하는 역할을 한다. 스위치(2)는 허브, 라우터 등과 같은 통신 중계 장비일 수 있다. 넓은 의미에서 스위치(2)는 '네트워크'일 수 있다.Communication blocks 10, 20, 30 and 40 are connected to switch 2 via respective data communication channels 60, 61, 62 and 63. The switch 2 serves to relay data transmitted and received between the communication blocks 10, 20, 30, and 40. The switch 2 may be a communication relay device such as a hub or a router. In a broad sense, the switch 2 may be a'network'.

본 명세서에서는 '전역 동기'와 '로컬 동기'라는 용어가 사용된다.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 communication blocks 10, 20, 30 and 40 at a specific timing and at a specific time in order to perform a specific task, and local synchronization is It means synchronizing the devices included in each communication block at a specific timing and at a specific time in order to perform a task.

통신 블록들(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 global synchronization channels 50, 51, 52, and 53 that transmit a global synchronization signal. The global synchronization signal is a signal used for global synchronization between the communication blocks 10, 20, 30, and 40, and includes a global synchronization clock signal CLK and a global synchronization pulse signal. The global synchronization pulse signal may be replaced with the term frame pulse (FP).

각 통신 블록들은 하나의 동기 마스터 장치(이하, 마스터 장치)와 동기 슬레이브 장치(이하, 슬레이브 장치)를 포함한다. 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 first communication block 10 includes a master device 11 and a slave device 12. The master device 11 and the slave device 12 may be computing devices that perform a specific task synchronized at a specific timing and a specific time. The slave 12 includes a plurality of slaves S1_1, S1_2, ..., S1_N. Synchronization between the master device 11 and the slave device 12 means local synchronization.

제2 통신 블록(20)은 마스터 장치(21)와 슬레이브 장치(22)를 포함하고, 슬레이브 장치(22)는 M개의 슬레이브(S2_1, S2_2, …, S2_N)를 포함한다. 마스터 장치(21)와 슬레이브 장치(22)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(21)와 슬레이브 장치(22) 간에 이루어지는 동기는 로컬 동기를 의미한다.The second communication block 20 includes a master device 21 and a slave device 22, and the slave device 22 includes M slaves S2_1, S2_2, ..., S2_N. The master device 21 and the slave device 22 may be computing devices that perform a specific task synchronized at a specific timing and a specific time. Synchronization between the master device 21 and the slave device 22 means local synchronization.

제3 통신 블록(30)은 마스터 장치(31)와 슬레이브 장치(32)를 포함하고, 슬레이브 장치(32)는 L개의 슬레이브들(S3_1, S3_2, …, S3_L)을 포함한다. 마스터 장치(31)와 슬레이브 장치(32)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(31)와 슬레이브 장치(32) 간에 이루어지는 동기는 로컬 동기를 의미한다.The third communication block 30 includes a master device 31 and a slave device 32, and the slave device 32 includes L slaves S3_1, S3_2, ..., S3_L. The master device 31 and the slave device 32 may be computing devices that perform a specific task synchronized at a specific timing and a specific time. Synchronization between the master device 31 and the slave device 32 means local synchronization.

제4 통신 블록(40)은 마스터 장치(41)와 슬레이브 장치(42)를 포함하고, 슬레이브 장치(42)는 P개의 슬레이브들(S4_1, S4_2, …, S4_P)을 포함한다. 마스터 장치(41)와 슬레이브 장치(42)는 특정 타이밍 및 특정 시각에 동기화된 특정 작업을 수행하는 컴퓨팅 장치일 수 있다. 마스터 장치(41)와 슬레이브 장치(42) 간에 이루어지는 동기는 로컬 동기를 의미한다.The fourth communication block 40 includes a master device 41 and a slave device 42, and the slave device 42 includes P slaves S4_1, S4_2, ..., S4_P. The master device 41 and the slave device 42 may be computing devices that perform a specific task synchronized at a specific timing and a specific time. Synchronization between the master device 41 and the slave device 42 means local synchronization.

마스터 장치들(11, 21, 31 및 41)은 마스터 전용 채널에 의해 마스터 메시지를 교환한다. 구체적으로, 마스터 장치들(11, 21, 31 및 41)은 각자의 마스터 전용 채널(70, 71, 72 및 73)에 의해 스위치(2)에 연결되고, 스위치(2)는 마스터 전용 채널(70, 71, 72 및 73)을 통해 수신된 마스터 메시지를 중계하여, 마스터 장치들(11, 21, 31 및 41) 간의 마스터 메시지의 교환을 가능하게 한다.The master devices 11, 21, 31 and 41 exchange master messages by means of a master dedicated channel. Specifically, the master devices 11, 21, 31 and 41 are connected to the switch 2 by their respective master dedicated channels 70, 71, 72 and 73, and the switch 2 is a master dedicated channel 70 , 71, 72 and 73) by relaying the master message received through the master devices 11, 21, 31 and 41 to enable the exchange of the master message.

마스터 메시지는 마스터 장치들(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 master devices 11, 21, 31 and 41 to select the top master. That is, any one of the master devices 11, 21, 31 and 41 generates a master message including information indicating that it is a top master, and uses the dedicated master channels 70, 71, 72, and 73. And transmit it to other master devices. The selection of the top master can be determined by the user. The master device selected as the top master provides the starting source for global synchronization.

또한, 마스터 메시지는 마스터 장치들(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 master devices 11, 21, 31 and 41. In this case, the master message may be configured to include information indicating a failure state of any one master device.

각 마스터 장치는 마스터 메시지를 통해 다른 마스터 장치의 고장을 감지한다. 고장이 감지된 마스터 장치를 제외한 나머지 동기 마스터들은 전역 동기 채널(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 global synchronization channels 50, 51, 52 and 53.

마스터 장치들(11, 21, 31 및 41)은 마스터 메시지를 주기적으로 교환된다.The master devices 11, 21, 31 and 41 exchange master messages periodically.

마스터 장치들(11, 21, 31 및 41)은 각자의 제1 로컬 동기 채널(13, 23, 33 및 43)에 의해 슬레이브 장치들(12, 22, 32 및 42)과 각각 연결될 수 있다.The master devices 11, 21, 31 and 41 may be connected to the slave devices 12, 22, 32 and 42 by respective first local synchronization channels 13, 23, 33 and 43, respectively.

동기 마스터들(11, 21, 31 및 41)은 각자의 제1 로컬 동기 채널(13, 23, 33 및 43)을 이용하여 대응하는 슬레이브 장치들(12, 22, 32 및 42)에게 로컬 동기를 위한 로컬 동기 신호를 전송한다. 로컬 동기 신호는 로컬 동기 클럭(CLK_LOCAL)과 로컬 동기 펄스(FP_LOCAL)를 포함한다. 로컬 동기 펄스는 로컬 프레임 펄스라는 용어로 대체될 수 있다.Synchronization masters 11, 21, 31 and 41 use their respective first local synchronization channels 13, 23, 33 and 43 to provide local synchronization to the corresponding slave devices 12, 22, 32 and 42. A local synchronization signal for The local synchronization signal includes a local synchronization clock (CLK_LOCAL) and a local synchronization pulse (FP_LOCAL). The local sync pulse can be replaced by the term local frame pulse.

마스터 장치들(11, 21, 31 및 41)은, 로컬 동기 신호를 이용하여, 특정 타이밍 및 특정 시각의 시작 시점을 슬레이브(12, 22, 32 및 42)에게 각각 알린다.The master devices 11, 21, 31 and 41 inform the slaves 12, 22, 32 and 42 of the specific timing and the start time of the specific time, respectively, using a local synchronization signal.

마스터 장치들(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 master devices 11, 21, 31 and 41 may be connected to the slave devices 12, 22, 32 and 42, respectively, by their respective second local synchronization channels 80, 81, 82 and 83. The master devices 11, 21, 31 and 41 transmit a local synchronization message to the corresponding slave devices 12, 22, 32 and 42 using the second local synchronization channel 80, 81, 82, and 83. Can be transmitted.

로컬 동기 메시지는 특정 작업을 식별하기 위한 식별 정보, 상기 특정 작업에 설정되는 로컬 동기 펄스의 길이 정보, 상기 로컬 동기 펄스(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 slave devices 12, 22, 32, and 42 can know which specific task to perform local synchronization in what time unit by using the local synchronization message received from the corresponding master device.

도 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 first master device 11 in the first communication block 10 and the second master device 21 in the second communication block 20 are shown for simplification of description.

또한, 도 2에서 제1 및 제2 마스터(11 및 21) 내부에 도시된 구성들은 제1 및 제2 통신 블록들(10, 20) 간의 전역 동기와 관련된 것으로 로컬 동기와 관련된 추가 구성들은 도 3을 참조하여 더 상세히 설명하기로 한다. In addition, components shown in the first and second masters 11 and 21 in FIG. 2 are related to global synchronization between the first and second communication blocks 10 and 20, and additional configurations related to local synchronization are shown in FIG. It will be described in more detail with reference to.

도 2를 참조하면, 마스터 장치들(11 및 21) 각각은, 제1 및 제2 통신 블록들(10, 20) 간의 전역 동기를 수행하기 위해, 제1 입력 버퍼(100 또는 110), 제2 입력 버퍼(101 또는 111), 전역 타이밍 제어기(104 또는 114) 및 출력 버퍼(106 또는 116)을 포함한다.2, each of the master devices 11 and 21, in order to perform global synchronization between the first and second communication blocks 10, 20, a first input buffer (100 or 110), a second Input buffer 101 or 111, global timing controller 104 or 114, and output buffer 106 or 116.

마스터 장치(11)는 전역 동기 채널(50)을 통해 도 1에 도시한 동기 마스터(41)로부터 전역 동기를 수행하기 위한 전역 동기 클럭과 전역 동기 펄스를 포함하는 전역 동기 신호를 수신한다.The master device 11 receives a global synchronization signal including a global synchronization clock and a global synchronization pulse for performing global synchronization from the synchronization master 41 shown in FIG. 1 through the global synchronization channel 50.

마스터 장치(11) 내의 제1 입력 버퍼(100)는 전역 동기 신호(GLOBAL_SYNC)를 버퍼링 한 후 버퍼링된 전역 동기 신호(REF_1)를 전역 타이밍 제어기(104)로 입력한다.The first input buffer 100 in the master device 11 buffers the global synchronization signal GLOBAL_SYNC and then inputs the buffered global synchronization signal REF_1 to the global timing controller 104.

전역 타이밍 제어기(104)는 버퍼링된 전역 동기 신호(REF_1)를 출력 신호(OUT_1)로서 출력 버퍼(106)로 입력된다. 출력 버퍼(106)는 출력 신호(OUT_1)를 전역 동기 채널(51)을 통해 제2 통신 블록(도 1의 20) 내의 마스터 장치(21)로 전송한다.The global timing controller 104 inputs the buffered global synchronization signal REF_1 as an output signal OUT_1 to the output buffer 106. The output buffer 106 transmits the output signal OUT_1 to the master device 21 in the second communication block (20 in FIG. 1) through the global synchronization channel 51.

또한, 출력 버퍼(106)는 출력 신호(OUT_1)를 피드백 신호(FB_1)로서, 피드백 채널(14)을 통해 제2 입력 버퍼(101)로 입력하고, 제2 입력 버퍼(106)는 피드백 신호(FB_1)를 버퍼링한 후, 버퍼링된 피드백 신호(FB_1)를 전역 타이밍 제어기(104)로 입력한다. 즉, 전역 타이밍 제어기(104)로부터 출력되는 출력 신호(OUT_1)가 전역 타이밍 제어기(104)의 입력으로서 피드백된다. In addition, the output buffer 106 inputs the output signal OUT_1 as a feedback signal FB_1 to the second input buffer 101 through the feedback channel 14, and the second input buffer 106 receives the feedback signal ( After buffering FB_1), the buffered feedback signal FB_1 is input to the global timing controller 104. That is, the output signal OUT_1 output from the global timing controller 104 is fed back as an input of the global timing controller 104.

전역 타이밍 제어기(104)는 전역 동기 신호(REF_1)의 타이밍과 출력 버퍼(106)로부터 피드백된 출력 신호(FB_1)의 타이밍을 비교하여, 전역 동기 채널(51)에 의한 지연 시간을 측정한다.The global timing controller 104 compares the timing of the global synchronization signal REF_1 with the timing of the output signal FB_1 fed back from the output buffer 106 to measure a delay time by the global synchronization channel 51.

전역 동기 채널(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 global synchronization channel 51, the feedback channel 14 transmitting the global synchronization feedback signal FB_1 is the same transmission medium as the global synchronization channel 51 transmitting the output signal OUT_1. And, the length of the transmission medium for transmitting the feedback signal FB_1 is implemented to be less than or equal to the length of the transmission medium for transmitting the output signal OUT_1 (or transmission synchronization signal). In this way, the transmission medium for transmitting the feedback signal FB_1 and the transmission medium for transmitting the output signal OUT_1 (or the global synchronization signal) are implemented identically, and the lengths thereof are designed to be different, so that the global synchronization channel 51 Delay measurement by can be made possible.

전역 타이밍 제어기(104)는, 전역 동기 채널(51)에 의한 지연 시간을 측정하기 위해, 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍을 비교하여 전역 동기 채널(51)에 의해 발생할 수 있는 출력 신호(OUT_1)의 지연 시간을 측정한다. The global timing controller 104 compares the timing of the feedback signal FB_1 and the timing of the output signal OUT_1 to measure the delay time by the global synchronization channel 51, and is generated by the global synchronization channel 51. The delay time of the output signal OUT_1 is measured.

전역 타이밍 제어기(104)는, 측정된 지연 시간만큼 출력 신호(OUT_1)의 타이밍을 조정함으로써, 조정된 출력 신호(OUT_1)와 동기 마스터(21)로 입력되는 전역 동기 신호(REF_2) 간의 전역 동기화가 수행될 수 있다.The global timing controller 104 adjusts the timing of the output signal OUT_1 by the measured delay time, so that global synchronization between the adjusted output signal OUT_1 and the global synchronization signal REF_2 input to the synchronization master 21 is achieved. Can be done.

동기 마스터(11)와 동기 마스터(21) 간의 전역 동기화가 완료되면, 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍은 자연스럽게 일치하고, 이에 따라, 동기 마스터(11) 내의 전역 타이밍 제어기(104)에 의해 수행되는 출력 신호(OUT_1)의 타이밍 조정은 더 이상 일어나지 않는다.When the global synchronization between the synchronous master 11 and the synchronous master 21 is completed, the timing of the feedback signal FB_1 and the timing of the output signal OUT_1 naturally match, and accordingly, the global timing controller in the synchronous master 11 The timing adjustment of the output signal OUT_1 performed by 104 no longer occurs.

한편, 전역 동기 채널(51)에 의한 지연 시간이 예측 또는 사전에 측정될 수 있다. 이 경우, 전역 타이밍 제어기(104)는, 전역 동기 피드백 신호(FB_1) 없이, 예측 또는 사전에 측정된 지연 시간을 이용하여 전역 동기 신호로서 입력되는 입력 신호(REF_1)와 전역 타이밍 제어기(114)로 입력되는 전역 동기 신호(REF_2)의 타이밍을 일치시킬 수 있다. 즉, 전역 동기 채널(51)에 의한 지연 시간이 예측 또는 사전에 측정되는 경우에는 전역 동기 피드백 신호(FB_1)의 타이밍과 출력 신호(OUT_1)의 타이밍 간의 비교 과정이 필요하지 않다.Meanwhile, the delay time by the global synchronization channel 51 may be predicted or measured in advance. In this case, the global timing controller 104 uses a predicted or previously measured delay time without the global synchronization feedback signal FB_1 to the input signal REF_1 and the global timing controller 114 input as a global synchronization signal. The timing of the input global synchronization signal REF_2 may be matched. That is, when the delay time by the global synchronization channel 51 is predicted or measured in advance, a comparison process between the timing of the global synchronization feedback signal FB_1 and the timing of the output signal OUT_1 is not required.

도 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 master device 11 and the slave device 12 provided in the first communication block 10 shown in FIG. 1 are shown. In addition, in FIG. 3, the internal configuration of the master device 11 is shown in more detail in order to explain the local synchronization between the master device and the slave device.

도 3을 참조하면, 마스터 장치(11)와 슬레이브 장치(12) 간의 로컬 동기를 수행하기 위해, 마스터 장치(11)는 로컬 동기 클럭(220, LOCAL_CLK)와 로컬 동기 펄스(222, LOCAL_ PULSE)를 포함하는 로컬 동기 신호를 슬레이브 장치(12)에게 전송한다. 3, in order to perform local synchronization between the master device 11 and the slave device 12, the master device 11 uses a local synchronization clock 220 (LOCAL_CLK) and a local synchronization pulse 222 (LOCAL_ PULSE). The included local synchronization signal is transmitted to the slave device 12.

이를 위해, 마스터 장치(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 master device 11 includes a plurality of buffers 100, 101, 106, 207, 209, 212 and 213, a global timing controller 104, a global synchronization clock generator 200, OSC1, and a local synchronization clock generator. (201, OSC2), a multiplexer 202 (hereinafter referred to as MUX), a phase-locked loop (PLL) 208, and a local timing controller 211 and a processor 240.

전역 타이밍 제어기(104)는 전역 동기 채널(50)을 통해 다른 마스터 장치(예를 들면, 도 1에 도시한 제4 통신 블록(40)의 마스터 장치(42))로부터 수신된 전역 동기 신호(REF_1) 또는 전역 동기 클럭 생성기(200)로부터 전역 클럭 소스를 가공하여 로컬 동기 신호(220 및 222)를 생성한다. 여기서, 전역 동기 클럭 생성기(200)는 오실레이터(OSC)일 수 있다.The global timing controller 104 receives the global synchronization signal REF_1 from another master device (for example, the master device 42 of the fourth communication block 40 shown in FIG. 1) through the global synchronization channel 50. ) Or by processing a global clock source from the global synchronization clock generator 200 to generate local synchronization signals 220 and 222. Here, the global synchronization clock generator 200 may be an oscillator (OSC).

전역 클럭 소스를 가공하여 로컬 동기 신호(220 및 222)를 생성하는 경우는, 마스터 장치(11)가 탑(top) 마스터로 선정된 경우이다. 즉, 마스터 장치(11)가 다른 마스터 장치로부터 전역 동기 신호를 수신하지는 않는 경우이다.When the global clock source is processed to generate the local synchronization signals 220 and 222, the master device 11 is selected as the top master. In other words, this is the case where the master device 11 does not receive a global synchronization signal from another master device.

마스터 장치(11)가 전역 동기 채널(50)을 통해 다른 마스터 장치로부터 전역 동기 신호를 수신한 경우, 전역 타이밍 제어기(104)는 전역 동기 신호(REF_1)에 포함된 전역 동기 클럭(203)과 전역 동기 펄스(204)를 분리하고, 전역 동기 클럭(203)를 먹스(202)로 출력하고, 전역 동기 펄스(204)를 로컬 타이밍 제어기(211)로 출력한다.When the master device 11 receives a global synchronization signal from another master device through the global synchronization channel 50, the global timing controller 104 includes a global synchronization clock 203 included in the global synchronization signal REF_1 and a global synchronization signal. The synchronization pulse 204 is separated, the global synchronization clock 203 is output to the mux 202, and the global synchronization pulse 204 is output to the local timing controller 211.

먹스(202)는, 프로세서(240)로부터 입력되는 선택 신호(241)에 따라, 전역 타이밍 제어기(104)로부터 입력되는 전역 동기 클럭(203) 또는 로컬 동기 클럭 생성기(201)로부터 입력된 로컬 동기 클럭 소스(205)를 선택하고, 선택된 신호를 다수의 슬레이브(S1_1 ~ S1_N)에 제공하는 로컬 동기 클럭으로서 출력한다. The mux 202 is a global synchronization clock 203 input from the global timing controller 104 or a local synchronization clock input from the local synchronization clock generator 201 according to the selection signal 241 input from the processor 240 The source 205 is selected, and the selected signal is output as a local synchronous clock that provides the selected signal to the plurality of slaves S1_1 to S1_N.

먹스(202)가 전역 클럭(203)를 선택하여, 선택한 전역 동기 클럭(203)를 로컬 동기 클럭으로서 출력하는 것은 통신 블록들간의 전역 동기를 수행하는데 사용되는 전역 동기 클럭(203)를 마스터 장치와 슬레이브들 간의 로컬 동기를 수행하는데 사용함을 의미한다. 이것은 전역 동기와 로컬 동기를 동시에 수행하는 것이다.When the mux 202 selects the global clock 203 and outputs the selected global synchronization clock 203 as a local synchronization clock, the global synchronization clock 203 used to perform global synchronization between communication blocks is transmitted to the master device. It means that it is used to perform local synchronization between slaves. This is to perform global synchronization and local synchronization simultaneously.

다르게, 먹스(202)가 로컬 동기 클럭 소스(205)를 선택하여, 선택한 로컬 동기 클럭 소스(205)를 로컬 클럭 신호로서 출력하는 것은 다른 마스터 장치로부터 수신된 전역 동기 신호에 포함된 전역 동기 클럭을 이용하지 않고, 마스터 장치(11)가 스스로 생성한 로컬 동기 클럭 소스(205)를 로컬 동기 클럭으로서 생성함을 의미한다. 이것은 로컬 동기만을 수행하는 것이다. Alternatively, when the mux 202 selects the local synchronization clock source 205 and outputs the selected local synchronization clock source 205 as a local clock signal, the global synchronization clock included in the global synchronization signal received from another master device is used. This means that the master device 11 generates a local synchronous clock source 205 that is generated by itself as a local synchronous clock without using it. This is to perform only local synchronization.

따라서, 프로세서(240)로부터 입력되는 선택 신호(241)는 로컬 동기만을 수행할지 아니면 전역 동기와 로컬 동기를 모두 수행할지를 결정하는 신호이다.Accordingly, the selection signal 241 input from the processor 240 is a signal that determines whether to perform only local synchronization or both global synchronization and local synchronization.

먹스(202)로부터 출력되는 로컬 동기 클럭은 버퍼(207)와 로컬 타이밍 제어기(211)로 입력된다.The local synchronization clock output from the mux 202 is input to the buffer 207 and the local timing controller 211.

출력 버퍼(207)는 먹스(202)로부터 입력되는 로컬 동기 클럭(220)을 슬레이브 장치(12)로 전송한다. 또한, 출력 버퍼(207)는 먹스(202)로부터 입력되는 로컬 동기 클럭(220)을 피드백 채널(221)을 통해 입력 버퍼(209)로 입력한다. 즉, 마스터 장치(11)로부터 슬레이브 장치(12)로 전송되는 로컬 동기 클럭(220)이 마스터 장치(11)로 피드백된다. 이것은 마스터 장치(11)와 슬레이브 장치(12)을 연결하는 로컬 동기 채널(도 1의 13)에 의해 발생하는 지연 시간을 고려하여 아래의 로컬 타이밍 제어기(211)가 로컬 동기 펄스 및 타임슬롯을 생성하도록 하기 위함이다.The output buffer 207 transmits the local synchronous clock 220 input from the mux 202 to the slave device 12. In addition, the output buffer 207 inputs the local synchronization clock 220 input from the mux 202 to the input buffer 209 through the feedback channel 221. That is, the local synchronization clock 220 transmitted from the master device 11 to the slave device 12 is fed back to the master device 11. This is due to the delay time generated by the local synchronization channel (13 in Fig. 1) connecting the master device 11 and the slave device 12, and the local timing controller 211 below generates a local synchronization pulse and a time slot. This is to do.

입력 버퍼(209)는 출력 버퍼(207)로부터 피드백된 로컬 동기 클럭을 버퍼링한 후, PLL(208)로 입력한다. The input buffer 209 buffers the local synchronous clock fed back from the output buffer 207 and then inputs it to the PLL 208.

PLL(208)은 입력 버퍼(209)로부터 입력된 로컬 동기 클럭을 이용하여 서로 다른 주파수를 갖는 다수의 로컬 동기 클럭(210)를 생성하고, 다수의 로컬 동기 클럭(210)을 로컬 타이밍 제어기(211)로 입력한다.The PLL 208 generates a plurality of local synchronization clocks 210 having different frequencies by using the local synchronization clock input from the input buffer 209, and converts the plurality of local synchronization clocks 210 to the local timing controller 211 Enter it as ).

로컬 타이밍 제어기(211)는 먹스(202)로부터 입력된 로컬 동기 클럭 신호(220) 및 전역 타이밍 제어기(104)로부터 입력되는 전역 동기 펄스(204)를 이용하여 로컬 동기 펄스(222)를 생성한다.The local timing controller 211 generates a local synchronization pulse 222 using the local synchronization clock signal 220 input from the mux 202 and the global synchronization pulse 204 input from the global timing controller 104.

생성된 로컬 동기 펄스(222)는 출력 버퍼(212)로 입력되고, 출력 버퍼(212)는 로컬 동기 펄스(222)를 버퍼링한 후 로컬 동기 채널(도 1의 13)을 통해 슬레이브 장치(12)로 전송한다. 한편, 슬레이브 장치(12)로 전송될 로컬 동기 펄스(222)는 입력 버퍼(213)로 피드백되고, 입력 버퍼(213)은 피드백된 로컬 동기 펄스(223)를 로컬 타이밍 제어기(211)로 입력한다.The generated local synchronization pulse 222 is input to the output buffer 212, the output buffer 212 buffers the local synchronization pulse 222 and then the slave device 12 through the local synchronization channel (13 in FIG. 1). Transfer to. Meanwhile, the local sync pulse 222 to be transmitted to the slave device 12 is fed back to the input buffer 213, and the input buffer 213 inputs the fed back local sync pulse 223 to the local timing controller 211. .

로컬 타이밍 제어기(211)는 상기 입력 버퍼(213)를 통해 피드백된 로컬 동기 펄스(223)와 상기 PLL(208)로부터 입력되는 다수의 로컬 동기 클럭(210) 중에서 선택된 어느 하나의 로컬 동기 클럭을 이용하여 특정 작업에 대한 타임 슬롯(Time Slot, TS)을 생성한다. 이때, 생성되는 타임 슬롯은 피드백된 로컬 동기 펄스(223)에 의해 로컬 동기 채널에 의한 지연 오차가 보상된 것이다. 예를 들면, 로컬 타이밍 제어기(211)는 다수의 로컬 동기 클럭(210) 중에서 선택된 어느 하나의 로컬 동기 클럭을 기반으로 소스 타임 슬롯을 생성한 후, 피드백된 로컬 동기 펄스(223)와 소스 타임 슬롯 간의 지연 오차를 계산하여, 계산된 지연 오차를 기반으로 소스 타임 슬롯의 시작 시점을 조정하여 타임 슬롯(Time Slot, TS)을 생성할 수 있다. The local timing controller 211 uses a local synchronization pulse 223 fed back through the input buffer 213 and a local synchronization clock selected from a plurality of local synchronization clocks 210 input from the PLL 208 It creates a time slot (TS) for a specific task. At this time, the generated time slot is a delay error due to the local synchronization channel is compensated by the feedback local synchronization pulse 223. For example, the local timing controller 211 generates a source time slot based on any one local synchronization clock selected from a plurality of local synchronization clocks 210, and then the local synchronization pulse 223 and the source time slot fed back. A time slot (TS) may be generated by calculating a delay error between the two and adjusting the start time of the source time slot based on the calculated delay error.

프로세서(240)는 기본적으로 마스터 장치(11) 내의 구성들의 동작을 제어하는 범용 프로세서일 수 있다. 프로세서(240)는, 전술한 바와 같이, 먹스(202)에게 선택신호(241)를 제공한다.The processor 240 may be a general-purpose processor that basically controls the operation of components in the master device 11. The processor 240 provides a selection signal 241 to the mux 202, as described above.

또한, 프로세서(240)는 제2 로컬 동기 채널(80)을 통해 로컬 동기 메시지를 슬레이브 장치(12)로 전송하여, 로컬 동기를 수행하기 위한 동기 설정 정보를 슬레이브 장치(12)에게 제공한다. 동기 설정 정보는, 전술한 바와 같이, 특정 작업을 식별하기 위한 식별 정보, 상기 특정 작업에 설정되는 로컬 동기 펄스의 길이값, 상기 길이값에 따라 설정되는 시각 단위를 나타내는 정보를 포함한다.In addition, the processor 240 transmits a local synchronization message to the slave device 12 through the second local synchronization channel 80 to provide synchronization setting information for performing local synchronization to the slave device 12. As described above, the synchronization setting information includes identification information for identifying a specific job, a length value of a local synchronization pulse set for the specific job, and information indicating a time unit set according to the length value.

또한, 프로세서(240)는 동기 설정 정보를 로컬 타이밍 제어기(211)에게 제공할 수 있다. 도면을 간략화하기 위해, 도 3에서는 프로세서(240)로부터 로컬 타이밍 제어기(211)로 입력되는 동기 설정 정보(또는 로컬 동기 메시지)를 나타내는 화살표를 도시하지 않았다. Further, the processor 240 may provide synchronization setting information to the local timing controller 211. In order to simplify the drawing, arrows representing synchronization setting information (or local synchronization messages) input from the processor 240 to the local timing controller 211 are not shown in FIG. 3.

로컬 타이밍 제어기(211)는 로컬 동기 펄스(222)를 생성하는데 있어서, 프로세서(240)로부터 입력된 동기 설정 정보(또는 로컬 동기 메시지)를 기반으로 로컬 동기 펄스(222)를 생성할 수 있다. 즉, 로컬 타이밍 제어기(211)는 동기 설정 정보에 포함된 로컬 동기 펄스의 길이값에 따라 로컬 동기 펄스(222)를 생성할 수 있다. In generating the local synchronization pulse 222, the local timing controller 211 may generate the local synchronization pulse 222 based on synchronization setting information (or a local synchronization message) input from the processor 240. That is, the local timing controller 211 may generate the local synchronization pulse 222 according to the length value of the local synchronization pulse included in the synchronization setting information.

슬레이브 장치(12) 내의 슬레이브들(S1_1~S1_N)은 로컬 동기 채널을 통해 마스터 장치(11)로부터 수신된 로컬 동기 펄스(222)의 활성화 시점과 길이값을 인지하여 그에 상응하는 특정 작업의 타이밍 및 시각을 초기화한다. The slaves S1_1 to S1_N in the slave device 12 recognize the activation time and length value of the local sync pulse 222 received from the master device 11 through the local sync channel, and the timing of a specific task corresponding thereto and Reset the time.

또한, 프로세서(240)는 마스터 전용 채널(도 1의 70)을 이용하여 동기 설정 정보(또는 로컬 동기 메시지) 다른 마스터 장치에게 전송하여, 동기 대상(작업), 범위(시각 단위), 값(작업에 따라 정의된 로컬 동기 펄스의 길이)을 다른 마스터 장치에게 전송할 수 있다.In addition, the processor 240 transmits synchronization setting information (or local synchronization message) to another master device using a master dedicated channel (70 in FIG. 1), and the synchronization target (task), range (time unit), and value (task The length of the local synchronization pulse defined according to the) can be transmitted to another master device.

도 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 timing controller 235.

입력 버퍼(231)는 로컬 동기 채널(13)을 통해 로컬 동기 클럭(220)을 수신하고, 이를 PLL(233)로 입력하고, 입력 버퍼(232)는 로컬 동기 채널(13)을 통해 로컬 동기 펄스(222)를 수신하고, 이를 타이밍 제어기(235)로 입력한다.The input buffer 231 receives the local synchronization clock 220 through the local synchronization channel 13, inputs it to the PLL 233, and the input buffer 232 receives a local synchronization pulse through the local synchronization channel 13 It receives 222, and inputs it to the timing controller 235.

PLL(233)은 로컬 동기 클럭(220)에 동기된 다수의 로컬 동기 클럭(234)을 생성하여 이를 타이밍 제어기(235)로 입력한다. 이때, 다수의 로컬 동기 클럭(234)은 서로 다른 주파수를 가질 수 있다.The PLL 233 generates a plurality of local synchronization clocks 234 synchronized with the local synchronization clock 220 and inputs them to the timing controller 235. In this case, the plurality of local synchronization clocks 234 may have different frequencies.

타이밍 제어기(235)는 다수의 로컬 동기 클럭(234) 중에서 마스터 장치(11) 내의 로컬 타이밍 제어기(211)가 다수의 로컬 동기 클럭(210) 중에서 선택한 로컬 동기 클럭과 동일한 주파수를 갖는 로컬 동기 클럭을 선택하고, 선택한 로컬 동기 클럭과 입력 버퍼(232)로부터 입력된 로컬 동기 펄스를 이용하여, 마스터 장치(11) 내의 로컬 타이밍 제어기(211)에 의해 생성된 타임 슬롯에 동기된 타임 슬롯을 생성하여 마스터 장치와의 로컬 동기를 수행한다.The timing controller 235 selects a local synchronization clock having the same frequency as the local synchronization clock selected from the plurality of local synchronization clocks 210 by the local timing controller 211 in the master device 11 among the plurality of local synchronization clocks 234. By using the selected local synchronization clock and the local synchronization pulse input from the input buffer 232, a time slot synchronized to the time slot generated by the local timing controller 211 in the master device 11 is generated, Perform local synchronization with the device.

도 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 master device 11 and the slave device 12 according to an embodiment of the present invention may be connected in a point-to-point connection method. For point-to-point connection, for example, RS-45 communication can be used. In this case, the master device 11 may have N RS45 connectors. Similarly, each slave in the slave device 12 may have one RS45 connector.

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 master device 11 includes RS45 connectors 221A and 221B used to transmit the fed back local sync clock 221 and RS45 connectors used to transmit the fed back local sync pulse 223. (223A and 223B) may be further included.

도 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 master device 11 and the slave device 12 according to an embodiment of the present invention may be connected by a bus method.

버스 방식의 경우, 마스터 장치(11)는 하나의 RJ45 커넥터를 구비할 수 있다. 즉, 마스터 장치(11)에 구비된 하나의 RJ45 커넥터가 각 슬레이브에 구비된 RJ45 커넥터가 버스 방식으로 연결될 수 있다.In the case of the bus system, the master device 11 may have one RJ45 connector. That is, one RJ45 connector provided in the master device 11 and an RJ45 connector provided in each slave may be connected in a bus manner.

마스터 장치(11)는, 추가로, 피드백된 로컬 동기 클럭(221)을 수신하기 위한 RJ45 커넥터(221C)와 피드백된 로컬 동기 펄스(223)을 수신하기 위한 RJ45 커넥터(223C)을 더 구비할 수 있다.The master device 11 may further include an RJ45 connector 221C for receiving the fed back local sync clock 221 and an RJ45 connector 223C for receiving the fed back local sync pulse 223. have.

이하, 도 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 master device 11 and the slave device 12 is provided for local synchronization between the other master devices 21, 31 and 41 and the slave devices 22, 32 and 42. Instead of explanation.

도 7을 참조하면, 마스터 장치(11)가 슬레이브 장치(12) 내의 슬레이브들(S1_1~S1_N)에게 로컬 동기 클럭(300)과 특정 작업에 대응하는 특정 타임 슬롯(302)의 시작 시점에서 활성화된 로컬 동기 펄스(301)를 포함하는 로컬 동기 신호를 전송한다. Referring to FIG. 7, the master device 11 is activated to the slaves S1_1 to S1_N in the slave device 12 at the start time of a local synchronization clock 300 and a specific time slot 302 corresponding to a specific task. A local synchronization signal including a local synchronization pulse 301 is transmitted.

슬레이브(S1_1)는 로컬 동기 클럭(300)의 상승 시점(rising time)에서 로컬 동기 펄스(301)가 활성화 상태(하이(high) 구간)인 경우, 로컬 동기 클럭(300)에 대한 펄스 카운터값을 '1' 증가 시킨다(304). When the local synchronization pulse 301 is in an active state (high period) at a rising time of the local synchronization clock 300, the slave S1_1 calculates a pulse counter value for the local synchronization clock 300. Increase it to '1' (304).

이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 다음 상승 시점에서 로컬 동기 펄스(301)가 비활성화 상태(로우(low) 구간)인 경우(320), 로컬 동기 클럭(300)에 대한 펄스 카운팅을 종료한다. Thereafter, when the local synchronization pulse 301 is in an inactive state (low period) at the next rising point of the local synchronization clock 300 when the slave S1_1 is rising (320), the pulse counting for the local synchronization clock 300 Ends.

이후, 슬레이브(S1_1)는 로컬 동기 클럭(300)의 다음 상승 시점에서 타임 슬롯(302)을 초기화하고, 펄스 카운터 값을 '0'으로 초기화한다. 타임 슬롯(302)은 타임 슬롯 클럭(303) 형태로 출력될 수 있다.Thereafter, the slave S1_1 initializes the time slot 302 at the next rising point of the local synchronous clock 300 and initializes the pulse counter value to '0'. The time slot 302 may be output in the form of a time slot clock 303.

이후, 마스터 장치(11) 내의 프로세서(240)는 슬레이브(S1_1)에게 상기 로컬 동기 펄스(301) 길이값에 따라 정의된 특정 작업의 종류 및 시각 동기를 위한 시각 단위를 알린다. Thereafter, the processor 240 in the master device 11 notifies the slave S1_1 of the type of a specific task defined according to the length value of the local synchronization pulse 301 and a time unit for time synchronization.

도 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 master 11 activates the local synchronization pulse 301 at the start of a time slot defined in nanosecond units. In this case, the length of the activation period (high period, for example, 2 clock length) of the activated local sync pulse 301 is defined in advance as the time unit of the time slot means nanoseconds.

로컬 동기 클럭(300)의 상승 시점(t0)에서 로컬 동기 펄스(301)가 활성 상태를 유지하는 경우, 슬레이브(S1_1)가 펄스 카운터값을 '1' 증가시킨다(304). When the local synchronization pulse 301 remains active at the rising point t 0 of the local synchronization clock 300, the slave S1_1 increases the pulse counter value to '1' (304).

이후, 로컬 동기 클럭(300)의 다음 상승 시점(t1)에 로컬동기펄스(301)가 활성 상태를 계속 유지하는 경우, 펄스 카운터값을 '1' 증가시킨다(305). Thereafter, when the local synchronization pulse 301 continues to be active at the next rising time t 1 of the local synchronization clock 300, the pulse counter value is increased to '1' (305).

이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 다음 상승 시점(t2)에서 로컬 동기 펄스(301)가 비활성 상태인 경우, 펄스 카운팅을 종료하고, 펄스 카운터 값 2에서 정의한 나노초 단위의 타임 슬롯을 로컬 동기 클럭(300)의 상승 시점(t2)에서 초기화하고(320), 펄스 카운터값을 '0'으로 초기화한다. 본 실시 예에서는 나노초 단위의 타임 슬롯을 펄스 카운터 값 2로 한정하는 것은 아니며 다양한 펄스 카운터 값으로 변경 가능하다.Thereafter, when the local synchronization pulse 301 is inactive at the next rising point (t 2 ) of the local synchronization clock 300, the slave (S1_1) ends pulse counting, and the time in nanoseconds defined by the pulse counter value 2 The slot is initialized at the rising point t 2 of the local synchronization clock 300 (320), and the pulse counter value is initialized to '0'. In the present embodiment, the nanosecond time slot is not limited to a pulse counter value of 2, but can be changed to various pulse counter values.

도 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 master 11 activates the local synchronization pulse 301 at the start of a time slot defined in time units of microseconds and nanoseconds. Here, the local synchronization pulse 301 may be defined as a length (eg, 3 clocks) defining that the time units of the time slot are microseconds and nanoseconds.

로컬 동기 클럭(300)의 상승 시점(t0)에서 로컬 동기 펄스(301)가 활성 상태임을 인지할 경우, 슬레이브(S1_1)는 펄스 카운터 값을 1 증가시킨다(304). When it is recognized that the local synchronization pulse 301 is active at the rising point t 0 of the local synchronization clock 300, the slave S1_1 increases the pulse counter value by 1 (304).

이후, 로컬 동기 클럭(300)의 다음 상승 시점(t1)에서 로컬 동기 펄스(301)가 활성 상태인 경우, 슬레이브(S1_1)는 펄스카운터 값을 다시 1 증가 시킨다(305). Thereafter, when the local synchronization pulse 301 is active at the next rising point t 1 of the local synchronization clock 300, the slave S1_1 increases the pulse counter value by 1 again (305).

이후, 로컬 동기 클럭(300)의 상승 시점(t2)에서 로컬동기펄스(301)가 활성 상태인 경우, 슬레이브(S1_1)는 펄스카운터값을 다시 1 증가시킨다(306). Thereafter, when the local synchronization pulse 301 is active at the rising time t 2 of the local synchronization clock 300, the slave S1_1 increases the pulse counter value by one again (306).

이후, 로컬 동기 클럭(300)의 상승 시점(t3)에 로컬 동기 펄스 (301)가 비활성 상태인 경우(320), 슬레이브(S1_1)는 펄스 카운팅을 종료하고, 펄스카운터 값 3에서 정의한 마이크로초와 나노초 단위의 타임 슬롯(330)을 로컬 동기 클럭(300)의 상승 시점(t3)에서 초기화 하고, 펄스 카운터값을 0으로 초기화한다. Thereafter, when the local synchronization pulse 301 is inactive (320) at the rising point of the local synchronization clock 300 (t 3 ), the slave (S1_1) ends the pulse counting, and the microsecond defined by the pulse counter value 3 The time slot 330 in units of and nanoseconds is initialized at the rising point t 3 of the local synchronous clock 300, and the pulse counter value is initialized to zero.

도 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 master device 11 activates the local synchronization pulse 301 at the start of a timeslot defined in time units of milliseconds, microseconds, and nanoseconds. At this time, the master device 11 activates the local synchronization pulse 301 by a local synchronization pulse length (eg, 4 clock length) that defines the initialization of a time slot defined in time units of milliseconds, microseconds, and nanoseconds.

슬레이브(S1_1)는 로컬 동기 펄스(301)의 활성화 구간(하이 구간)이 유지되는 동안 로컬 동기 클럭(300)의 상승 시점을 카운팅하여(304, 305, 306 및 307), 펄스 카운터값 4를 확인한다.The slave (S1_1) counts the rising point of the local synchronization clock 300 while the active period (high period) of the local synchronization pulse 301 is maintained (304, 305, 306 and 307), and checks the pulse counter value 4. do.

이후, 슬레이브(S1_1)가 로컬 동기 클럭(300)의 상승 시점(t4)에서 로컬 동기 펄스 (301)가 비활성 상태임을 인지하면, 펄스 카운팅을 종료하고, 확인된 펄스카운터 값 4에서 정의하는 시각 단위(밀리초, 마이크로초, 나노초)의 타임 슬롯을 상승 시점(t4)에서 초기화 하고, 펄스 카운터값을 0으로 초기화한다. Thereafter, when the slave (S1_1) recognizes that the local synchronization pulse 301 is inactive at the rising point (t 4 ) of the local synchronization clock 300, the pulse counting is terminated, and the time defined by the confirmed pulse counter value 4 The time slot of the unit (millisecond, microsecond, nanosecond) is initialized at the rising point (t 4 ), and the pulse counter value is initialized to 0.

도 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 master 11 may set a synchronization pulse selection register capable of selecting what the local synchronization pulse 301 means.

동기 마스터(11)와 슬레이브(S1_1)는 로컬 동기 펄스(301) 길이 별로 동기시킬 타이밍을 가리키는 타임 슬롯 지정 레지스터 또는 로컬 동기 펄스(301) 길이별로 동기 시킬 시각을 가리키는 시각동기 레지스터(502)를 설정할 수 있다. The synchronization master 11 and the slave (S1_1) set a time slot designation register indicating the timing to be synchronized for each length of the local synchronization pulse 301 or a time synchronization register 502 indicating the time to be synchronized for each length of the local synchronization pulse 301. I can.

로컬 동기 펄스(301)로 타이밍을 가리키도록 설정할 경우, 동기마스터(11,21,31,41)는 로컬 동기 펄스(301) 길이를 조절하여 동기시키고자 하는 타임슬롯 (302)을 초기화 한다(320).When the local synchronization pulse 301 is set to indicate timing, the synchronization masters 11, 21, 31, 41 adjust the length of the local synchronization pulse 301 to initialize the timeslot 302 to be synchronized ( 320).

도 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 time slot 330 is synchronized according to the local synchronization clock 300 between the master 11 and the slaves S1_1 to S1_3, a slight error between the slaves S1_1 to S1_3 ( skew) (< 1 ns), it was confirmed that the timing coincided as shown in the picture of FIG. 7.

도 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 communication block 10 receives a global synchronization signal including a global synchronization clock and a global synchronization pulse from the previous communication block 40, and transmits the received global synchronization signal to the next communication. By transmitting to the block 20, the communication block 10 and the next communication block 20 perform global synchronization using the global synchronization signal.

이어, 단계 1320에서, 상기 통신 블록(10) 내의 마스터(11)가, 상기 전역 동기 신호(REF_1)에 포함된 상기 전역 동기 클럭을 이용하여 로컬 동기 클럭을 생성하는 과정이 수행된다. Subsequently, in step 1320, a process of generating a local synchronization clock by using the global synchronization clock included in the global synchronization signal REF_1 by the master 11 in the communication block 10 is performed.

이어, 단계 1330에서, 상기 마스터(11)가, 상기 로컬 동기 클럭(220)과 상기 전역 동기 펄스(204)를 이용하여 로컬 동기 펄스(222)를 생성하는 과정이 수행된다.Subsequently, in step 1330, a process of generating the local synchronization pulse 222 by the master 11 using the local synchronization clock 220 and the global synchronization pulse 204 is performed.

이어, 단계 1340에서, 상기 마스터(11)가, 상기 로컬 동기 클럭(220)과 상기 로컬 동기 펄스(222)를 포함하는 로컬 동기 신호를 로컬 동기 채널(13)을 통해 상기 슬레이브(S1_1)로 전송하는 과정이 수행된다. Subsequently, in step 1340, the master 11 transmits a local synchronization signal including the local synchronization clock 220 and the local synchronization pulse 222 to the slave S1_1 through the local synchronization channel 13 The process of doing is carried out.

이어, 단계 S1350에서, 상기 슬레이브(S1_1)가, 상기 로컬 동기 클럭(220)과 상기 로컬 동기 펄스(222)를 이용하여, 자신의 타임 슬롯의 시작 시점을 상기 마스터(11)의 타임 슬롯의 시작 시점에 동기화시키는 로컬 동기를 수행한다.Subsequently, in step S1350, the slave (S1_1) uses the local synchronization clock 220 and the local synchronization pulse 222 to determine the start time of its own time slot as the start of the time slot of the master 11 Local synchronization that synchronizes at the time is performed.

도 14는 도 13에 도시한 단계 1310의 상세 흐름도이다.14 is a detailed flowchart of step 1310 shown in FIG. 13.

도 14를 참조하면, 단계 1311에서, 상기 마스터(11) 내의 제1 입력 버퍼(도 2 및 3의 100)가, 이전 통신 블록(40)의 마스터(41)으로부터 전역 동기 신호를 수신하는 과정이 수행된다.Referring to FIG. 14, in step 1311, the first input buffer (100 in FIGS. 2 and 3) in the master 11 receives a global synchronization signal from the master 41 of the previous communication block 40. Performed.

이어, 단계, 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 master 11 inputs the global synchronization signal REF_1 to the output buffer 106 in the master 11 Performed.

이어, 단계 1315에서, 상기 출력 버퍼(106)가, 상기 통신 블록(10)과 상기 다음 통신 블록(20)을 연결하는 전역 동기 채널(51)을 통해, 상기 전역 동기 신호(REF_1)를 상기 다음 통신 블록(20)으로 전송하는 과정이 수행된다.Subsequently, in step 1315, the output buffer 106 transmits the global synchronization signal REF_1 to the next through a global synchronization channel 51 connecting the communication block 10 and the next communication block 20. The process of transmitting to the communication block 20 is performed.

이어, 단계 1317에서, 상기 출력 버퍼(106)가, 상기 전역 동기 신호(도 2의 OUT_1)를 상기 전역 타이밍 제어기(104)의 입력으로 피드백하도록 상기 마스터 내의 제2 입력 버퍼(101)로 입력하는 과정이 수행된다.Subsequently, in step 1317, the output buffer 106 inputs the global synchronization signal (OUT_1 in FIG. 2) to the second input buffer 101 in the master to feed back the global synchronization signal (OUT_1 in FIG. 2) to the input of the global timing controller 104. The process is carried out.

이어, 단계 1319에서, 상기 전역 타이밍 제어기(104)가, 상기 제1 입력 버퍼(도 2 및 3의 100)를 통해 입력된 상기 전역 동기 신호(REF_1)와 상기 제2 입력 버퍼(101)를 통해 피드백된 전역 동기 신호(도 2 및 3의 FB_1) 간의 지연 오차를 계산하고, 계산된 지연 오차에 따라 상기 다음 통신 블록(20)으로 전송되는 전역 동기 신호(OUT_1)의 타이밍을 조정하는 과정이 수행된다.Subsequently, in step 1319, the global timing controller 104, through the global synchronization signal REF_1 input through the first input buffer (100 in FIGS. 2 and 3) and the second input buffer 101 A process of calculating a delay error between the fed back global synchronization signal (FB_1 in FIGS. 2 and 3) and adjusting the timing of the global synchronization signal OUT_1 transmitted to the next communication block 20 according to the calculated delay error is performed. do.

도 15는 도 13에 도시한 단계 1320의 상세 흐름도이다.15 is a detailed flowchart of step 1320 shown in FIG. 13.

도 15를 참조하면, 단계 1321에서, 동기 범위를 설정하는 과정이 수행된다.Referring to FIG. 15, in step 1321, a process of setting a synchronization range is performed.

동기 범위의 설정은 로컬 동기만을 수행할지 아니면, 전역 동기 및 로컬 동기를 모두 수행할지를 설정하는 것일 수 있다. 이러한 설정은 시스템 관리자의 선택에 따라 결정될 수 있다. 경우에 따라, 로컬 동기만을 수행할 필요가 있을 수도 있다. 설정된 동기 범위는 마스터 내의 프로세서(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 processor 240 in the master, and may be transmitted to neighboring masters through dedicated master channels 70, 71, 72, and 73.

동기 범위가 전역 동기 및 로컬 동기를 모두 수행하도록 설정되면, 단계 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 step 1325, a process of generating a local synchronization clock source generated by the master itself as the local synchronization clock is performed.

단계 1323 및 1325는 도 3에 도시한 먹스(202)에서 수행될 수 있다. 예를 들면, 먹스(202)는 프로세서(240)로부터 입력된 선택 신호(241)에 따라 로컬 동기 클럭 생성기(201)로부터 입력된 로컬 동기 클럭 소스 또는 전역 타이밍 제어기(104)로부터 입력된 전역 동기 클럭 중 어느 하나를 선택하여 로컬 동기 클럭으로서 생성할 수 있다. 이 경우, 선택 신호(241)는 관리자에 설정된 동기 범위를 나타내는 신호일 수 있다. Steps 1323 and 1325 may be performed in the mux 202 shown in FIG. 3. For example, the mux 202 is a local synchronization clock source input from the local synchronization clock generator 201 or a global synchronization clock input from the global timing controller 104 according to the selection signal 241 input from the processor 240 Any one of them can be selected and generated as a local synchronous clock. In this case, the selection signal 241 may be a signal indicating a synchronization range set by the manager.

도 16은 도 13에 도시한 단계 1330의 상세 흐름도이다.16 is a detailed flowchart of step 1330 shown in FIG. 13.

도 16을 참조하면, 단계 1331에서, 상기 마스터 내부의 프로세서(도 3의 240)가, 사용자의 설정에 따라, 로컬 동기 메시지를 생성하여 상기 마스터 내의 로컬 타이밍 제어기(도 3의 211)로 전달하는 과정이 수행된다. 여기서, 로컬 동기 메시지는 특정 작업, 상기 특정 작업에 설정되는 상기 로컬 동기 펄스의 길이값 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위 중에서 적어도 하나를 포함할 수 있다.Referring to FIG. 16, in step 1331, the processor inside the master (240 in FIG. 3) generates a local synchronization message according to the user's setting and transmits it to the local timing controller (211 in FIG. 3) in the master. The process is carried out. Here, the local synchronization message may include at least one of a specific job, a length value of the local synchronization pulse set for the specific job, and a time unit of the time slot for the specific job.

이어, 단계 1333에서, 상기 로컬 타이밍 제어기(도 3의 211)가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하는 과정이 수행된다. 여기서, 상기 로컬 동기 메시지에 의해 정의되는 클럭 개수는 특정 작업 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위 중에서 적어도 하나를 정의하는 것일 수 있다. Subsequently, in step 1333, the local timing controller (211 in FIG. 3) adjusts the 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. The process is carried out. Here, the number of clocks defined by the local synchronization message may define at least one of a specific task and a time unit of the time slot for the specific task.

이어, 단계 1335에서, 상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 과정이 수행된다.Subsequently, in step 1335, a process of generating the global synchronization pulse with the adjusted length value as the local synchronization pulse is performed.

도 17은 도 13에 도시한 단계 1350의 상세 흐름도이다.17 is a detailed flowchart of step 1350 shown in FIG. 13.

도 17을 참조하면, 단계 1351에서, 상기 로컬 동기 펄스의 활성화 구간 이후 상기 로컬 동기 클럭의 첫 번째 상승 시점을 인식하는 과정이 수행된다. Referring to FIG. 17, in step 1351, a process of recognizing a first rising point of the local synchronization clock after the activation period of the local synchronization pulse is performed.

이어, 단계 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 입력 버퍼가, 이전 통신 블록으로부터 상기 전역 동기 신호를 수신하는 단계;
상기 마스터 내의 전역 타이밍 제어기가, 상기 제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.
제1항에서, 상기 로컬 동기 클럭을 생성하는 단계는,
상기 마스터가, 상기 이전 통신 블록으로부터 수신한 전역 동기 신호에 포함된 상기 전역 동기 클럭 또는 상기 마스터가 스스로 생성한 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하는 단계인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제3항에서, 상기 로컬 동기 클럭을 생성하는 단계는,
사용자의 선택에 따라, 상기 데이터 통신 시스템이 상기 마스터와 상기 슬레이브 간의 상기 로컬 동기만을 수행하는 경우, 상기 마스터가 스스로 생성한 로컬 동기 클럭 소스를 상기 로컬 동기 클럭으로서 생성하는 단계
인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제3항에서, 상기 로컬 동기 클럭을 생성하는 단계는,
사용자의 선택에 따라, 상기 데이터 통신 시스템이 상기 통신 블록들 간의 상기 전역 동기와 상기 마스터와 상기 슬레이브 간의 상기 로컬 동기를 모두 수행하는 경우, 상기 마스터가, 상기 이전 통신 블록으로부터 수신한 전역 동기 신호에 포함된 상기 전역 동기 클럭을 상기 로컬 동기 클럭으로서 생성하는 단계
인 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제1항에서,
상기 마스터가 상기 전역 동기 신호를 최초로 생성하는 탑(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.
제6항에서,
상기 탑 마스터로 선정된 상기 마스터는 내부에 구비된 전역 동기 클럭 생성기로부터 생성된 전역 동기 클럭 소스를 상기 전역 동기 클럭으로서 생성하는 단계
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제1항에서, 상기 로컬 동기 펄스를 생성하는 단계;
상기 마스터 내부의 프로세서가, 사용자의 설정에 따라, 로컬 동기 메시지를 생성하여 상기 마스터 내의 로컬 타이밍 제어기로 전달하는 단계;
상기 로컬 타이밍 제어기가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하는 단계; 및
상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 단계
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제1항에서, 상기 로컬 동기를 수행하는 단계는,
상기 로컬 동기 펄스의 활성화 구간 이후 상기 로컬 동기 클럭의 첫 번째 상승 시점을 인식하는 단계; 및
상기 첫 번째 상승 시점을 상기 마스터의 타임 슬롯의 시작 시점으로 인식하여 자신(슬레이브)의 타임 슬롯을 상기 첫 번째 상승 시점에서 초기화하는 단계;
를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제9항에서,
상기 로컬 동기 펄스의 활성화 구간에 대응하는 상기 로컬 동기 클럭의 클럭 개수를 카운팅하는 단계; 및
상기 클럭 개수를 카운팅한 결과를 기반으로 동기 대상을 인식하는 단계;를 더 포함하고,
상기 동기 대상은,
상기 마스터와 상기 슬레이브가 수행하는 특정 작업 및 상기 타임 슬롯에 대한 시각 단위를 포함하는 것인 데이터 통신 시스템에서의 타이밍 동기 방법.
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.
제11항에서, 상기 마스터는,
상기 이전 통신 블록으로부터 상기 전역 동기 신호를 수신하는 제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.
제11항에서, 상기 마스터는,
상기 이전 통신 블록으로부터 수신한 전역 동기 신호에서 상기 전역 동기 클럭과 상기 전역 동기 펄스를 분리하는 전역 타이밍 제어기;
로컬 동기 클럭 소스를 생성하는 로컬 동기 클럭 생성기; 및
상기 전역 타이밍 제어기로부터 분리된 상기 전역 동기 클럭 및 상기 로컬 동기 클럭 생성기로부터 생성된 상기 로컬 동기 클럭 소스 중에서 어느 하나를 선택하여, 선택된 어느 하나를 상기 로컬 동기 클럭으로서 생성하는 멀티플렉서
를 포함하는 데이터 통신 시스템.
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.
제13항에서, 상기 멀티플렉서는,
상기 로컬 동기만을 수행하기 위한 제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.
제14항에서, 상기 제1 및 제2 선택 신호 중 어느 하나의 선택 신호를 상기 멀티플렉서로 입력하는 프로세서를 더 포함하는 것인 데이터 통신 시스템.The data communication system of claim 14, further comprising a processor for inputting a selection signal from among the first and second selection signals to the multiplexer. 제11항에서, 상기 마스터는,
전역 동기 클럭 소스를 생성하는 전역 동기 클럭 생성기; 및
상기 마스터가 탑 마스터로 선정된 경우, 상기 전역 동기 클럭 소스를 상기 전역 동기 클럭으로서 생성하고, 상기 전역 동기 펄스를 스스로 생성하여, 다음 마스터로 전송하는 전역 타이밍 제어기;
를 포함하는 것인 데이터 통신 시스템.
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.
제11항에서,
로컬 동기 메시지를 생성하는 프로세서;
상기 이전 통신 블록으로부터 수신한 전역 동기 신호에서 상기 전역 동기 클럭과 상기 전역 동기 펄스를 분리하는 전역 타이밍 제어기;
상기 전역 타이밍 제어기로부터 분리된 상기 전역 동기 클럭 및 로컬 동기 클럭 생성기로부터 생생된 로컬 동기 클럭 소스 중에서 어느 하나를 선택하여, 선택된 어느 하나를 상기 로컬 동기 클럭으로서 생성하는 멀티플렉서; 및
상기 로컬 동기 메시지, 상기 전역 타이밍 제어기로부터 입력되는 상기 전역 동기 펄스 및 상기 멀티플렉서로부터 입력된 상기 로컬 동기 클럭을 이용하여 상기 로컬 동기 펄스를 생성하는 로컬 타이밍 제어기
를 포함하는 것인 데이터 통신 시스템.
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.
제17항에서, 상기 로컬 타이밍 제어기는,
상기 로컬 타이밍 제어기가, 상기 로컬 동기 메시지에 의해 정의되는 상기 로컬 동기 클럭의 클럭 개수에 대응하는 활성화 구간을 갖도록 상기 전역 동기 펄스의 길이값을 조정하고, 상기 길이값이 조정된 상기 전역 동기 펄스를 상기 로컬 동기 펄스로서 생성하는 것인 데이터 통신 시스템.
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.
제18항에서, 상기 클럭 개수는,
특정 작업 및 상기 특정 작업에 대한 상기 타임 슬롯의 시각 단위를 정의하는 것인 데이터 통신 시스템.
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.
KR1020190024062A 2019-02-28 2019-02-28 data communication system and method for timing synchronization in data communication system KR20200105209A (en)

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)

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