KR20240057882A - Synchronization apparatus and method between different system - Google Patents
Synchronization apparatus and method between different system Download PDFInfo
- Publication number
- KR20240057882A KR20240057882A KR1020220138643A KR20220138643A KR20240057882A KR 20240057882 A KR20240057882 A KR 20240057882A KR 1020220138643 A KR1020220138643 A KR 1020220138643A KR 20220138643 A KR20220138643 A KR 20220138643A KR 20240057882 A KR20240057882 A KR 20240057882A
- Authority
- KR
- South Korea
- Prior art keywords
- tick
- periodic data
- time
- signal
- synchronization
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000000737 periodic effect Effects 0.000 claims abstract description 88
- 230000001360 synchronised effect Effects 0.000 claims description 39
- 230000008569 process Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/002—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치는, 제 1 시스템의 초기화가 이루어지면, 내부 클럭을 생성하는 클럭 생성부; 상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 동기화부; 및 제 2 시스템으로부터 주기적 데이터를 수신하는 수신부를 포함하고, 상기 동기화부는, 상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성한다.A synchronization device between heterogeneous systems according to an embodiment of the present invention includes a clock generator that generates an internal clock when initialization of the first system is performed; a synchronization unit that generates a tick signal of the first system based on the generated internal clock; and a receiving unit that receives periodic data from a second system, and when periodic data is received by the receiving unit, the synchronization unit generates a tick signal of the first system based on a reception period of the periodic data.
Description
본 발명은 이종 시스템 간 시간 오차를 해소하기 위한 이종 시스템 간 동기화 장치 및 방법에 관한 것이다.The present invention relates to a synchronization device and method between heterogeneous systems for resolving time errors between heterogeneous systems.
하나의 동기화 시스템 내에서 이종 시스템 간의 시간 오차는 심각한 전체 시스템의 동작 오류로 이어질 수 있다. 따라서, 이러한 시간 오차의 문제는 분산 시스템에서 해결해야할 중요한 요소이다. Time errors between heterogeneous systems within one synchronization system can lead to serious operation errors of the entire system. Therefore, this problem of time error is an important factor to be solved in distributed systems.
시간 오차에는 두 가지 주요한 요인이 있다. 그 중 하나는 물리적으로 다른 클럭의 오차로 인한 것이고, 다른 하나는 초기 동기화 오차에 의한 것이다. 이종 시스템은 물리적으로 독립된 각자의 클럭 발생기가 있다. 그 결과, 각각의 클럭 발생기가 동작 초기에 아무리 정교하게 클럭을 동기화하더라도, 시간이 지남에 따라 클럭 스큐(Clock Skew)와 클럭 드리프트(Clock Drift)로 인해 시간 오차가 발생할 가능성이 있다. There are two main causes of time error. One of them is due to errors in physically different clocks, and the other is due to initial synchronization errors. Heterogeneous systems have their own physically independent clock generators. As a result, no matter how precisely each clock generator synchronizes its clocks at the beginning of operation, time errors are likely to occur due to clock skew and clock drift over time.
또한, 이종 시스템 간 초기 동기화 문제도 해결해야할 중요한 문제이다. 예를 들어, 특정 테스크의 시간 동기가 요구되어 실행되어야 할 때 초기 동기화가 선행될 필요가 있다.Additionally, the initial synchronization problem between heterogeneous systems is also an important issue to be solved. For example, when a specific task requires time synchronization and needs to be executed, initial synchronization needs to be done first.
본 발명이 해결하고자 하는 과제는, 이종 시스템으로부터 수신된 주기적 데이터에 기반하여 시스템 간 동기화를 수행하는 이종 시스템 간 동기화 장치 및 방법을 제공하는 것이다.The problem to be solved by the present invention is to provide a synchronization device and method between heterogeneous systems that perform inter-system synchronization based on periodic data received from heterogeneous systems.
다만, 본 발명이 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the problems to be solved by the present invention are not limited to those mentioned above, and other problems to be solved that are not mentioned can be clearly understood by those skilled in the art to which the present invention pertains from the description below. will be.
본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치는, 제 1 시스템의 초기화가 이루어지면, 내부 클럭을 생성하는 클럭 생성부; 상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 동기화부; 및 제 2 시스템으로부터 주기적 데이터를 수신하는 수신부를 포함하고, 상기 동기화부는, 상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성한다.A synchronization device between heterogeneous systems according to an embodiment of the present invention includes a clock generator that generates an internal clock when initialization of the first system is performed; a synchronization unit that generates a tick signal of the first system based on the generated internal clock; and a receiving unit that receives periodic data from a second system, and when periodic data is received by the receiving unit, the synchronization unit generates a tick signal of the first system based on a reception period of the periodic data.
또한, 상기 동기화부는, 상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 미리 정해진 틱 주기에 따라 분할하여 상기 제 1 시스템의 틱 신호를 생성할 수 있다.Additionally, when periodic data is received by the receiver, the synchronization unit may divide the reception period of the periodic data into a predetermined tick period to generate a tick signal of the first system.
또한, 상기 동기화부는, 상기 미리 정해진 틱 주기에 따라 분할된 복수의 시점에 틱 번호를 할당하고, 상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성할 수 있다.Additionally, the synchronization unit may assign a tick number to a plurality of time points divided according to the predetermined tick period and generate the tick signal at least some of the plurality of time points to which the tick number is assigned.
또한, 상기 내부 클럭에 의해 동기화 시 상기 주기적 데이터의 수신 시작 시점에 동기화된 시작 틱 번호에 대응되는 시작 테스크를 포함하는 복수의 테스크를 처리하는 실시간 운영체제를 더 포함할 수 있다.In addition, when synchronized by the internal clock, it may further include a real-time operating system that processes a plurality of tasks including a start task corresponding to a start tick number synchronized at the start of receiving the periodic data.
또한, 상기 실시간 운영체제는, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화되지 않은 경우, 상기 동기화부에 동기 요청 신호를 전송할 수 있다.Additionally, the real-time operating system may transmit a synchronization request signal to the synchronization unit if the start task is not synchronized at the time the start tick number is assigned.
또한, 상기 동기화부는, 상기 동기 요청 신호가 수신되면, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략할 수 있다.In addition, when the synchronization request signal is received, the synchronization unit omits generation of the tick signal at a time immediately after synchronization with the start task until the start task is synchronized at the time when the start tick number is assigned. can do.
또한, 상기 동기화부는, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크의 실행 시간을 나머지 테스크의 실행 시간보다 길게 설정할 수 있다.Additionally, the synchronization unit may set the execution time of the start task to be longer than the execution time of the remaining tasks until the start task is synchronized at the time when the start tick number is assigned.
또한, 상기 동기화부는, 상기 주기적 데이터의 수신 이후 상기 수신 주기에 따른 수신 예상 시점에 상기 주기적 데이터가 수신되지 않으면, 상기 수신 예상 시점에 틱 패드를 삽입하여 상기 틱 신호를 생성할 수 있다.Additionally, if the periodic data is not received at the expected reception time according to the reception period after receiving the periodic data, the synchronization unit may generate the tick signal by inserting a tick pad at the expected reception time.
또한, 상기 동기화부는, 상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 미리 정해진 기준 횟수 이하이면, 상기 수신 예상 시점마다 상기 틱 패드를 삽입하여 상기 틱 신호를 생성할 수 있다.Additionally, if the number of times that the periodic data is not consecutively received at the expected reception time is less than a predetermined reference number, the synchronization unit may generate the tick signal by inserting the tick pad at each expected reception time.
또한, 상기 동기화부는, 상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 상기 기준 횟수를 초과하면, 상기 클럭 생성부에 의해 생성된 상기 내부 클럭을 기초로 상기 틱 신호를 생성할 수 있다.In addition, the synchronization unit may generate the tick signal based on the internal clock generated by the clock generation unit when the number of times the periodic data is not received consecutively at the expected reception time exceeds the reference number. there is.
본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법은,제 1 시스템의 초기화가 이루어지면, 내부 클럭을 생성하는 단계; 상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 단계; 제 2 시스템으로부터 주기적 데이터가 수신되었는지 확인하는 단계; 및 상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계를 포함한다.A synchronization method between heterogeneous systems according to an embodiment of the present invention includes: generating an internal clock when initialization of the first system is performed; generating a tick signal of the first system based on the generated internal clock; confirming whether periodic data has been received from the second system; and when periodic data is received by the receiver, generating a tick signal of the first system based on a reception period of the periodic data.
또한, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계는, 상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 미리 정해진 틱 주기에 따라 분할하여 상기 제 1 시스템의 틱 신호를 생성할 수 있다.In addition, the step of generating a tick signal of the first system based on the reception period of the periodic data includes dividing the reception period of the periodic data according to a predetermined tick period when periodic data is received by the receiver. A tick signal of the first system may be generated.
또한, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계는, 상기 미리 정해진 틱 주기에 따라 분할된 복수의 시점에 틱 번호를 할당하는 단계; 및 상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계를 포함할 수 있다.In addition, generating a tick signal of the first system based on the reception period of the periodic data may include assigning tick numbers to a plurality of time points divided according to the predetermined tick period; and generating the tick signal at at least some of a plurality of time points to which the tick number is assigned.
또한, 상기 제 1 시스템은, 상기 내부 클럭에 의해 동기화 시 상기 주기적 데이터의 수신 시작 시점에 동기화된 시작 틱 번호에 대응되는 시작 테스크를 포함하는 복수의 테스크를 처리할 수 있다.Additionally, the first system may process a plurality of tasks including a start task corresponding to a start tick number synchronized at the start of receiving the periodic data when synchronized by the internal clock.
또한, 상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계는, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화되지 않은 경우, 상기 제 1 시스템의 실시간 운영체제로부터 상기 제 1 시스템의 동기화부로 동기 요청 신호를 전송하는 단계를 포함할 수 있다.In addition, the step of generating the tick signal at at least some of the plurality of time points to which the tick number is assigned may include, when the start task is not synchronized to the time point to which the start tick number is assigned, the step of generating the tick signal from the real-time operating system of the first system. It may include transmitting a synchronization request signal to a synchronization unit of the first system.
또한, 상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계는, 상기 동기화부에 의해 상기 동기 요청 신호가 수신되면, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략하는 단계를 더 포함할 수 있다.In addition, the step of generating the tick signal at at least some of the plurality of times to which the tick number is assigned includes, when the synchronization request signal is received by the synchronization unit, the start task is started at the time to which the start tick number is assigned. The step of omitting generation of the tick signal immediately after synchronization with the start task may be further included until synchronization.
또한, 상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략하는 단계는, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크의 실행 시간을 나머지 테스크의 실행 시간보다 길게 설정할 수 있다.In addition, the step of omitting generation of the tick signal at a time immediately after synchronization to the start task reduces the remaining execution time of the start task until the start task is synchronized to the time point to which the start tick number is assigned. It can be set longer than the task execution time.
또한, 상기 주기적 데이터의 수신 이후 상기 수신 주기에 따른 수신 예상 시점에 상기 주기적 데이터가 수신되지 않으면, 상기 수신 예상 시점에 틱 패드를 삽입하여 상기 틱 신호를 생성하는 단계를 더 포함할 수 있다.In addition, if the periodic data is not received at the expected reception time according to the reception period after receiving the periodic data, the step of generating the tick signal by inserting a tick pad at the expected reception time may be further included.
또한, 상기 수신 예상 시점에 패드를 삽입하여 상기 틱 신호를 생성하는 단계는, 상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 미리 정해진 기준 횟수 이하이면, 상기 수신 예상 시점마다 상기 틱 패드를 삽입하여 상기 틱 신호를 생성할 수 있다.In addition, the step of generating the tick signal by inserting a pad at the expected reception time may include generating the tick signal at each expected reception time if the number of times the periodic data is not received in succession at the expected reception time is less than a predetermined reference number. The tick signal can be generated by inserting a pad.
또한, 상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 상기 기준 횟수를 초과하면, 상기 클럭 생성부에 의해 생성된 상기 내부 클럭을 기초로 상기 틱 신호를 생성하는 단계를 더 포함할 수 있다.In addition, if the number of times that the periodic data is not consecutively received at the expected reception time exceeds the reference number, generating the tick signal based on the internal clock generated by the clock generator may further include. You can.
본 발명의 일 실시예에 의하면, 하나의 동기화 시스템 내에서 이종 시스템 간의 시간 동기화를 위해 한 쪽 시스템의 주기적 신호를 다른 시스템의 동기화 신호로 사용함으로써, 교환되는 데이터 내 시간 정보에 의한 데이터 오버헤드를 발생시키지 않으면서도 효율적인 동기화를 구현할 수 있다. According to an embodiment of the present invention, by using the periodic signal of one system as a synchronization signal of the other system for time synchronization between heterogeneous systems within one synchronization system, data overhead due to time information in the exchanged data is reduced. Efficient synchronization can be achieved without generating
또한, 주기적인 틱 신호의 존재 유무로 상대 시스템의 생존성을 판단할 수 있다. 그 결과 주기적인 틱 신호가 생성되지 않는 경우에도 무인 비행체 등에서 사용되는 실시간 시스템(Real-Time System)에서 수행되던 테스크가 계속 수행될 수 있도록, 내부 클럭 발생기에 의해 동작되어 전체 시스템이 멈추는 경우를 방지할 수 있다.Additionally, the survivability of the other system can be determined based on the presence or absence of periodic tick signals. As a result, even when periodic tick signals are not generated, tasks performed in real-time systems used in unmanned aerial vehicles can continue to be performed, and the internal clock generator prevents the entire system from stopping. can do.
도 1은 본 발명의 일 실시예 따른 이종 시스템을 포함하는 하나의 동기화 시스템의 제어 블록도이다.
도 2는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법의 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 모드 별 틱 신호 생성 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 추적 모드에서의 틱 신호 생성 방법의 개념을 설명하기 위한 도면이다.
도 5는 도 4의 개념에 따라 추적 모드에서 틱 신호를 생성하는 전체 과정을 예시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 주기적 데이터의 누락 시 동작을 설명하기 위한 도면이다.1 is a control block diagram of one synchronization system including heterogeneous systems according to an embodiment of the present invention.
Figure 2 is a flowchart of a synchronization method between heterogeneous systems according to an embodiment of the present invention.
Figure 3 is a diagram for explaining a method of generating a tick signal for each mode among the synchronization methods between heterogeneous systems according to an embodiment of the present invention.
Figure 4 is a diagram for explaining the concept of a method for generating a tick signal in tracking mode among the synchronization methods between heterogeneous systems according to an embodiment of the present invention.
FIG. 5 is a diagram illustrating the entire process of generating a tick signal in tracking mode according to the concept of FIG. 4.
Figure 6 is a diagram for explaining an operation when periodic data is missing in the synchronization method between heterogeneous systems according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure of the present invention is complete and to be understood by those skilled in the art in the technical field to which the present invention pertains. It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing embodiments of the present invention, if a detailed description of a known function or configuration is judged to unnecessarily obscure the gist of the present invention, the detailed description will be omitted. The terms described below are defined in consideration of functions in the embodiments of the present invention, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification.
또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 '제 1', '제 2' 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성 요소들을 서로 구별하기 위하여 사용하는 것이며, 이러한 서수사용으로 인하여 용어의 의미가 한정 해석되어서는 안 될 것이다. 일예로, 이러한 서수와 결합된 구성 요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한 해석되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다.Additionally, in this specification and claims, terms including ordinal numbers, such as 'first', 'second', etc., may be used to distinguish between components. These ordinal numbers are used to distinguish identical or similar components from each other, and the meaning of the term should not be interpreted limitedly due to the use of these ordinal numbers. For example, the order of use or arrangement of components combined with these ordinal numbers should not be interpreted as limited by the number. If necessary, each ordinal number may be used interchangeably.
본 명세서에서 단수의 표현은 문맥상 명백하게 다름을 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '구성하다' 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, singular expressions include plural expressions, unless the context clearly dictates otherwise. In the present application, terms such as 'comprise' or 'constitute' are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are intended to indicate the presence of one or more other It should be understood that this does not exclude in advance the possibility of the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.
또한, 본 발명의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한 어떤 부분이 어떤 구성 요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있다는 것을 의미한다.Additionally, in an embodiment of the present invention, when a part is connected to another part, this includes not only direct connection but also indirect connection through other media. In addition, the fact that a part includes a certain component does not mean that other components are excluded, but that it may further include other components, unless specifically stated to the contrary.
도 1은 본 발명의 일 실시예 따른 이종 시스템을 포함하는 하나의 동기화 시스템의 제어 블록도이다.1 is a control block diagram of one synchronization system including heterogeneous systems according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 동기화 시스템은 물리적으로 서로 다른 내부 클럭 생성 수단을 구비한 이종의 시스템으로 구현되는 분산 시스템을 의미할 수 있다. 이러한 동기화 시스템은 이종 시스템 간의 시간 오차를 해결하기 위해, 동기화 과정이 필수적으로 수행될 필요가 있다.The synchronization system according to an embodiment of the present invention may mean a distributed system implemented as heterogeneous systems with physically different internal clock generation means. This synchronization system essentially requires a synchronization process to resolve time errors between heterogeneous systems.
종래 널리 알려진 이종 시스템 간 시간 동기화 방법으로는 외부 시간 정보 주입 방법, 내부 시스템 간 시간 정보 공유 방법, 펄스 동기 방법 등이 있다. 이 중 외부 시간 동기 및 내부 시간 동기 방법은 동기 시스템 간 교환해야 할 정보에 시간 정보까지 더해져서 과도한 데이터 오버헤드의 부담이 클 수 있다. 또한, 펄스 동기 방법은 과도한 데이터 오버헤드의 부담이 적은 반면, 정확한 시간 정보가 없어 동기 펄스에 특정 시작 테스크를 맞추기 어려울 수 있다.Conventionally known time synchronization methods between heterogeneous systems include an external time information injection method, a time information sharing method between internal systems, and a pulse synchronization method. Among these, external time synchronization and internal time synchronization methods add time information to the information that must be exchanged between synchronization systems, so the burden of excessive data overhead may be high. Additionally, while the pulse synchronization method has less burden of excessive data overhead, it may be difficult to match a specific start task to the synchronization pulse due to the lack of accurate time information.
이를 해결하기 위해, 본 발명의 일 실시예에 따른 동기화 시스템은 이종 시스템 간 시간 동기를 시간 정보가 아닌 한 쪽 시스템에서 생성한 주기적인 데이터 정보로 다른 시스템에서 틱(Tick) 신호를 생성할 수 있다. To solve this problem, the synchronization system according to an embodiment of the present invention can generate a tick signal in the other system using periodic data information generated in one system rather than time information for time synchronization between heterogeneous systems. .
도 1에서는 설명의 편의 상 주기적 데이터를 전송하는 측을 제 2 시스템(200)이라 하고, 이를 수신하여 틱 신호를 생성하는 측을 제 1 시스템(100)이라고 한다. 다만, 이는 실시예 중의 하나일 뿐이고, 제 1 시스템(100)이 주기적 데이터를 전송하고 제 2 시스템(200)이 이를 기초로 틱 신호를 생성할 수 있으며, 두 시스템이 모두 주기적 데이터를 전송하고, 수신한 주기적 데이터를 기반으로 틱 신호를 생성하는 것도 가능할 수 있다.In Figure 1, for convenience of explanation, the side that transmits periodic data is referred to as the
도 1을 참고하면, 본 발명의 일 실시예에 따른 동기화 시스템은 주기적 데이터를 전송하는 제 2 시스템(200); 및 제 2 시스템(200)으로부터 수신한 주기적 데이터를 기초로 틱 신호를 생성하는 제 1 시스템(100)을 포함할 수 있다.Referring to FIG. 1, a synchronization system according to an embodiment of the present invention includes a
제 1 시스템(100)과 제 2 시스템(200)은 각각의 독립적인 클럭을 생성하고, 이에 기반하여 테스크를 처리하는 바, 시간의 동기화가 선행될 필요가 있다. 이를 위해, 본 발명의 일 실시예에 따른 제 1 시스템(100)은 제 2 시스템(200)으로부터 주기적 데이터를 수신하고, 이를 기초로 틱 신호를 생성할 수 있는 동기화 장치(110)를 포함할 수 있다.Since the
구체적으로, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 클럭 생성부(111); 동기화부(112); 실시간 운영체제(113); 및 수신부(114)를 포함할 수 있다.Specifically, the
클럭 생성부(111)는 제 2 시스템(200)의 클럭 생성부(111)와는 독립적으로 마련되어, 제 1 시스템(100)의 테스크 처리를 위해 독자적으로 내부 클럭을 생성할 수 있다. 구체적으로, 클럭 생성부(111)는 제 1 시스템(100)의 초기화가 이루어지면, 예를 들어 제 1 시스템(100)이 부팅되면, 미리 정해진 클럭 생성 주기에 따라 내부 클럭을 생성할 수 있다.The
동기화부(112)는 클럭 생성부(111)에 의해 생성된 내부 클럭을 기초로 제 1 시스템(100)의 틱 신호를 생성할 수 있다. 구체적으로, 동기화부(112)는 내부 클럭에 동기화된 틱 신호를 생성할 수 있다. 이렇게 생성된 틱 신호는 실시간 운영체제(113)에 제공될 수 있다.The
실시간 운영체제(113)는 내부에 매 틱 주기 마다 처리 가능한 복수의 테스크를 가지며, 동기화부(112)로부터 제공받은 틱 신호에 맞춰 복수의 테스크를 미리 정해진 고유 번호에 따라 순차적으로 처리할 수 있다.The real-
수신부(114)는 제 2 시스템(200)으로부터 주기적 데이터를 수신할 수 있다. 이렇게 수신된 주기적 데이터는 실시간 운영체제(113)에서 테스크 처리에 이용되고, 이와 동시에 동기화부(112)에 제공되어 동기화된 틱 신호를 생성하는데 이용될 수 있다. 이에 대한 자세한 동작은 후술한다.The receiving
본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 각 구성은 이러한 기능을 수행하도록 프로그램된 제어 소프트웨어를 포함하는 메모리와 이러한 소프트웨어를 수행하는 마이크로프로세서를 포함하는 연산 장치에 의해 구현될 수 있다. 이 때, 도 1의 실시예에 따른 이종 시스템 간 동기화 장치(110)의 구성 각각이 독립적으로 마이크로프로세서에 의해 구현될 수도 있고, 적어도 두개가 하나의 마이크로프로세서에 의해 구현되는 것도 가능할 수 있다.Each component of the heterogeneous
지금까지는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 구성에 대해 설명하였다. 이하에서는 도 2 및 3을 참고하여 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)에 의해 수행되는 이종 시스템 간 동기화 방법에 대해 상세히 설명한다.So far, the configuration of the
도 2는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법의 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 모드 별 틱 신호 생성 방법을 설명하기 위한 도면이다. FIG. 2 is a flowchart of a synchronization method between heterogeneous systems according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating a method of generating a tick signal for each mode among the synchronization methods between heterogeneous systems according to an embodiment of the present invention.
도 2를 참고하면, 먼저 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 제 1 시스템(100)을 초기화 할 수 있다(S210). 여기서 초기화란 제 2 시스템(200)과의 동기화 이전의 상태로 되돌아가는 것으로, 예를 들어 제 1 시스템(100)의 부팅 및 재부팅을 포함할 수 있다.Referring to FIG. 2, first, the
이 때, 제 1 시스템(100)의 초기화와 동시에 제 2 시스템(200)도 초기화되거나, 제 1 시스템(100)에 앞서 제 2 시스템(200)이 먼저 초기화될 수도 있다.At this time, the
그 다음, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 내부 클럭을 생성할 수 있다(S220). 구체적으로 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 클럭 생성부(111)는 제 2 시스템(200)과 독립적인 제 1 시스템(100)의 내부 클럭을 생성할 수 있다.Next, the
내부 클럭 생성 후, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 내부 클럭을 기초로 제 1 시스템(100)의 틱 신호를 생성할 수 있다(S230). 구체적으로 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 동기화부(112)는 내부 클럭에 동기화된 제 1 시스템(100)의 틱 신호를 생성할 수 있다. 이렇게 생성된 틱 신호는 실시간 운영체제(113)로 전달되어 복수의 테스크 처리에 이용될 수 있다. 이를 이하에서는 내부 클럭 모드라고 한다.After generating the internal clock, the
이 후, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 제 2 시스템(200)으로부터 주기적 데이터를 수신하였는지 여부를 확인할 수 있다(S240). 별도의 수신 이벤트가 확인되지 않으면, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 다시 내부 클럭을 생성할 수 있다.Afterwards, the
반면, 제 2 시스템(200)으로부터 주기적 데이터가 수신되었다면, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 수신된 주기적 데이터의 수신 주기를 기초로 제 1 시스템(100)의 틱 신호를 생성할 수 있다(S250). 구체적으로 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 동기화부(112)는 주기적 데이터의 수신 주기를 미리 정해진 틱 주기에 따라 분할하여 제 1 시스템(100)의 틱 신호를 생성할 수 있다. On the other hand, if periodic data is received from the
예를 들어, 도 3과 같이 주기적 데이터의 수신 주기가 1이고 틱 주기가 1/5인 경우, 동기화부(112)는 주기적 데이터의 수신 주기를 5분할하고, 각 분할 시점마다 제 1 시스템(100)의 틱 신호를 생성할 수 있다. 도 3에서는 5분할된 복수의 시점 각각에 서 틱 신호 5개가 생성되는 경우를 예시한다. For example, as shown in FIG. 3, when the reception period of periodic data is 1 and the tick period is 1/5, the
이렇게 생성된 틱 신호는 실시간 운영체제(113)로 전달되어 복수의 테스크 처리에 이용될 수 있다. 도 3에서는 T0부터 T4까지 5개의 테스크가 처리되는 것을 예시한다. 이를 이하에서는 클럭 동기화 모드라고 한다.The tick signal generated in this way can be transmitted to the real-
이와 같이, 도 2와 같이, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 제 2 시스템(200)으로부터 주기적 데이터가 수신되었는지 여부에 따라 클럭 동기화 모드와 내부 클럭 모드가 결정되고, 가역 전환될 수 있다. 이를 통해, 제 2 시스템(200)의 상태와 무관하게, 제 1 시스템(100)은 안정적인 테스크 처리가 가능할 수 있다.In this way, as shown in FIG. 2, the
이 때, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)는 특정 틱 번호에 동기화된 특정 시작 테스크를 추적(Tracking)할 수 있다. 이하에서는 도 4 및 5를 참고하여 특정 틱 번호에 동기화된 특정 시작 테스크를 추적하는 방법에 대해 설명한다.At this time, the
도 4는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 추적 모드에서의 틱 신호 생성 방법의 개념을 설명하기 위한 도면이고, 도 5는 도 4의 개념에 따라 추적 모드에서 틱 신호를 생성하는 전체 과정을 예시한 도면이다.FIG. 4 is a diagram illustrating the concept of a method for generating a tick signal in tracking mode among the synchronization methods between heterogeneous systems according to an embodiment of the present invention, and FIG. 5 is a diagram for generating a tick signal in tracking mode according to the concept of FIG. 4. This diagram illustrates the entire process.
주기적 데이터를 이용한 이종 시스템 간 동기화에 있어, 초기 동기화 역시 수행될 필요가 있다. 여기서 초기 동기화란 제 2 시스템(200)에서 보내주는 주기적 데이터가 특정 테스크와 시간 동기가 요구되어 처리되어야 하는 경우를 의미할 수 있다.In synchronization between heterogeneous systems using periodic data, initial synchronization also needs to be performed. Here, initial synchronization may mean a case where periodic data sent from the
도 4에서는 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)가 고유 번호 2를 가지는 시작 테스크인 T2 를 시작 틱 번호인 Tick 0에 맞추는 추적 방법의 개념을 예시한다.FIG. 4 illustrates the concept of a tracking method in which the
본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 동기화부(112)가 생성하는 모든 틱 신호는 각각 고유의 틱 번호를 가질 수 있다. 구체적으로, 동기화부(112)는 틱 주기에 따라 분할된 복수의 시점 각각에 틱 번호를 할당할 수 있다. 이 때, 내부 클럭 모드에서 동기화 시 주기적 데이터의 수신 시작 시점에 동기화된 틱 번호를 시작 틱 번호라 하며, 도 4에서 Tick 0 일 수 있다.All tick signals generated by the
또한, 실시간 운영체제(113) 안의 테스크들도 각각 고유의 테스크 번호를 가질 수 있다. 그리고, 하나의 테스크는 하나의 틱 신호에 맞추어 처리될 수 있다. 이 때, 실시간 운영체제(113) 내의 복수의 테스크 중 시작 틱 번호가 할당된 시점에 처리되어야 하는 테스크를 시작 테스크라 하며, 도 4에서 T2일 수 있다.Additionally, tasks in the real-
한편, 동기화부(112)는 틱 번호가 할당된 복수의 시점 중 적어도 일부에 틱 신호를 생성할 수 있다. 즉, 틱 번호가 할당된 모든 시점에 틱 신호를 생성하는 것은 아니다. 예를 들어, 특정 조건 하에서 동기화부(112)는 특정 틱 번호가 할당된 시점에서의 틱 신호 생성을 생략하고, 그 직후의 틱 번호가 할당된 시점에서야 틱 신호를 생성할 수 있다.Meanwhile, the
도 4를 참고하면 시작 틱 번호인 Tick 0은 제 2 시스템(200)으로부터 수신된 주기적 데이터의 수신 시작 시점과 동기될 수 있다. 이 때, 실시간 운영체제(113)는 내부의 복수의 테스크 중 시작 테스크 T2가 시작 틱 번호 Tick 0가 할당된 시점에 동기화되었는지를 확인할 수 있다. 만약, 동기화되지 않은 경우, 실시간 운영체제(113)는 동기화부(112)에 동기 요청 신호를 전송할 수 있다.Referring to FIG. 4,
동기 요청 신호가 수신되면, 동기화부(112)는 시작 테스크가 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 시작 테스크에 동기화된 시점 직후의 시점에서 틱 신호의 생성을 생략할 수 있다. 그 결과, 동기화부(112)는 시작 테스크가 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 시작 테스크의 실행 기간을 나머지 테스크의 실행 시간보다 길게 설정할 수 있다. 이하에서는 이를 추적 모드라고 한다.When a synchronization request signal is received, the
도 4를 참고하면, 시작 테스크 T2가 시작 틱 번호인 Tick 0이 할당된 시점이 아닌 틱 번호 Tick 1이 할당된 시점에 동기화 되었기 때문에, 동기 요청 신호가 생성되었음을 확인할 수 있다. 이를 수신한 동기화부(112)는 시작 테스크 T2가 동기화된 시점의 틱 번호 Tick 1 직후의 시점 Tick 2에서 틱 신호의 생성을 생략할 수 있다. 이렇게 틱 신호 생성을 생략한 결과, 그 다음 주기에서는 시작 테스크 T2가 틱 번호 Tick 2가 할당된 시점에 동기화됨을 확인할 수 있다.Referring to FIG. 4, it can be confirmed that a synchronization request signal was generated because the start task T2 was synchronized at the time when the
이와 같은 동작을 시작 테스크 T2가 시작 틱 번호 Tick 0가 할당된 시점에 동기화 될 때까지 반복 실시하면 도 5와 같은 결과를 얻을 수 있다. 도 5에서는 4주기동안 추적 모드에 진입하여 5주기만에 시작 테스크 T2가 시작 틱 번호 Tick 0가 할당된 시점에 동기화 됨을 확인할 수 있다. If this operation is repeated until the start task T2 is synchronized to the time when the start
이를 통해, 추적 모드에서 틱 신호의 생성을 생략함으로써 시작 테스크의 실행시간을 늘려서 동기화할 수 있다. 그 결과, 최소 테스크 실행 시간이 보장됨으로써, 동기화로 인한 실행 시간 감축을 차단할 수 있다.Through this, the execution time of the start task can be increased and synchronized by omitting the generation of the tick signal in trace mode. As a result, the minimum task execution time is guaranteed, thereby preventing execution time reduction due to synchronization.
동기화부(112)는 시작 테스크가 시작 틱 번호가 할당된 시점에 동기화 된 이후에는, 동기화부(112)는 잠금(Locking) 모드에 진입하여 시작 테스크가 시작 틱 번호가 할당된 시점에 동기화 된 상태를 유지할 수 있다.After the start task is synchronized at the time the start tick number is assigned, the
한편, 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 장치(110)의 동기화부(112)는 제 2 시스템(200)으로부터 주기적 데이터가 일시적으로 누락된 경우에, 주기적 데이터의 수신 예상 시점에 패드(Pad)를 삽입하여 틱 신호를 생성할 수 있다. 이에 대해서는 도 6을 통해 설명한다.Meanwhile, when periodic data is temporarily missing from the
도 6은 본 발명의 일 실시예에 따른 이종 시스템 간 동기화 방법 중 주기적 데이터의 누락 시 동작을 설명하기 위한 도면이다.Figure 6 is a diagram for explaining an operation when periodic data is missing in the synchronization method between heterogeneous systems according to an embodiment of the present invention.
도 6을 참고하면, 동기화부(112)는 제 2 시스템(200)이 전송하는 주기적 데이터가 누락 혹은 지연 수신되는 경우에도, 제 1 시스템(100)이 동기를 잃지 않고 테스크 처리가 가능하도록, 주기적 데이터의 수신 주기에 따른 수신 예상 시점, 즉 시작 틱 번호가 할당된 시점 Tick 0에 틱 패드를 삽입할 수 있다. Referring to FIG. 6, the
이 때, 동기화부(112)는 주기적인 데이터가 수신 예상 시점에 연속하여 수신되지 않은 횟수가 기준 횟수 이하이면, 반복하여 수신 예상 시점에 틱 패드를 삽입할 수 있다. 도 6을 참고하면, 기준 횟수가 2인 경우, 주기적인 데이터가 수신 예상 시점인 Tick 0에 연속하여 2번 수신되지 않은 경우, 동기화부(112)는 반복하여 수신 예상 시점 Tick 0에 틱 패드를 삽입할 수 있다.At this time, if the number of times that periodic data is not consecutively received at the expected reception time is less than the reference number, the
반면, 동기화부(112)는 주기적인 데이터가 수신 예상 시점에 연속하여 수신되지 않은 횟수가 기준 횟수를 초과하면, 내부 클럭 모드로 전환할 수 있다. 즉, 동기화부(112)는 클럭 생성부(111)에 의해 생성된 내부 클럭을 기초로 틱 신호를 생성할 수 있다.On the other hand, the
또한, 본 발명의 일 실시예에 따른 이종 시스템 동기화 장치(110)는 틱 패드 삽입 개수를 모니터링 하고, 이를 통해 이종 시스템 간 통신 에러 상태를 실시간으로 확인할 수 있다.In addition, the heterogeneous
이처럼, 본 발명의 일 실시예에 의하면, 하나의 동기화 시스템 내에서 이종 시스템 간의 시간 동기화를 위해 한 쪽 시스템의 주기적 신호를 다른 시스템의 동기화 신호로 사용함으로써, 교환되는 데이터 내 시간 정보에 의한 데이터 오버헤드를 발생시키지 않으면서도 효율적인 동기화를 구현할 수 있다. As such, according to an embodiment of the present invention, by using the periodic signal of one system as a synchronization signal of the other system for time synchronization between heterogeneous systems within one synchronization system, data overflow due to time information in the exchanged data Efficient synchronization can be achieved without generating head.
또한, 데이터 수신 신호의 존재 유무로 상대 시스템의 생존성을 판단할 수 있다. 그 결과 주기적인 틱 신호가 생성되지 않는 경우에도 무인 비행체 등에서 사용되는 실시간 시스템에서 수행되던 테스크가 계속 수행될 수 있도록, 내부 클럭 발생기에 의해 동작되어 전체 시스템이 멈추는 경우를 방지할 수 있다.Additionally, the survivability of the other system can be determined based on the presence or absence of a data reception signal. As a result, even when periodic tick signals are not generated, tasks performed in real-time systems used in unmanned aerial vehicles, etc. can continue to be performed, and it is possible to prevent the entire system from stopping by operating by an internal clock generator.
한편, 상술한 일 실시예에 따른 이종 시스템 간 동기화 방법에 포함된 각각의 단계는, 이러한 단계를 수행하도록 프로그램된 컴퓨터 프로그램을 기록하는 컴퓨터 판독가능한 기록매체에서 구현될 수 있다.Meanwhile, each step included in the synchronization method between heterogeneous systems according to the above-described embodiment may be implemented in a computer-readable recording medium that records a computer program programmed to perform these steps.
또한, 상술한 일 실시예에 따른 이종 시스템 간 동기화 방법에 포함된 각각의 단계는, 이러한 단계를 수행하도록 프로그램된 컴퓨터 프로그램으로 구현될 수도 있다.Additionally, each step included in the synchronization method between heterogeneous systems according to the above-described embodiment may be implemented as a computer program programmed to perform these steps.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present invention, and those skilled in the art will be able to make various modifications and variations without departing from the essential quality of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but are for illustrative purposes, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention shall be interpreted in accordance with the claims below, and all technical ideas within the scope equivalent thereto shall be construed as being included in the scope of rights of the present invention.
100: 제 1 시스템
110: 이종 시스템 간 동기화 장치
111: 클럭 생성부
112: 동기화부
113: 실시간 운영체제
114: 수신부
200: 제 2 시스템
100: first system
110: Synchronization device between heterogeneous systems
111: clock generation unit
112: synchronization unit
113: Real-time operating system
114: receiving unit
200: second system
Claims (22)
상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 동기화부; 및
제 2 시스템으로부터 주기적 데이터를 수신하는 수신부를 포함하고,
상기 동기화부는,
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는
이종 시스템 간 동기화 장치.A clock generator that generates an internal clock when the first system is initialized;
a synchronization unit that generates a tick signal of the first system based on the generated internal clock; and
It includes a receiving unit that receives periodic data from the second system,
The synchronization unit,
When periodic data is received by the receiver, a tick signal of the first system is generated based on the reception period of the periodic data.
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 미리 정해진 틱 주기에 따라 분할하여 상기 제 1 시스템의 틱 신호를 생성하는
이종 시스템 간 동기화 장치. According to claim 1,
The synchronization unit,
When periodic data is received by the receiver, the reception period of the periodic data is divided according to a predetermined tick period to generate a tick signal of the first system.
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 미리 정해진 틱 주기에 따라 분할된 복수의 시점에 틱 번호를 할당하고, 상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는
이종 시스템 간 동기화 장치.According to claim 2,
The synchronization unit,
Allocating tick numbers to a plurality of time points divided according to the predetermined tick period, and generating the tick signal at least some of the plurality of time points to which the tick numbers are assigned.
Synchronizer between heterogeneous systems.
상기 내부 클럭에 의해 동기화 시 상기 주기적 데이터의 수신 시작 시점에 동기화된 시작 틱 번호에 대응되는 시작 테스크를 포함하는 복수의 테스크를 처리하는 실시간 운영체제를 더 포함하는
이종 시스템 간 동기화 장치. According to claim 3,
Further comprising a real-time operating system that processes a plurality of tasks including a start task corresponding to a start tick number synchronized at the start of receiving the periodic data when synchronized by the internal clock.
Synchronizer between heterogeneous systems.
상기 실시간 운영체제는,
상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화되지 않은 경우, 상기 동기화부에 동기 요청 신호를 전송하는
이종 시스템 간 동기화 장치.According to claim 4,
The real-time operating system is,
If the start task is not synchronized at the time the start tick number is assigned, transmitting a synchronization request signal to the synchronization unit.
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 동기 요청 신호가 수신되면, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략하는
이종 시스템 간 동기화 장치.According to claim 5,
The synchronization unit,
When the synchronization request signal is received, generation of the tick signal is omitted at a time immediately after synchronization to the start task until the start task is synchronized to the time point at which the start tick number is assigned.
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크의 실행 시간을 나머지 테스크의 실행 시간보다 길게 설정하는
이종 시스템 간 동기화 장치.According to claim 6,
The synchronization unit,
Setting the execution time of the start task to be longer than the execution time of the remaining tasks until the start task is synchronized at the time when the start tick number is assigned.
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 주기적 데이터의 수신 이후 상기 수신 주기에 따른 수신 예상 시점에 상기 주기적 데이터가 수신되지 않으면, 상기 수신 예상 시점에 틱 패드를 삽입하여 상기 틱 신호를 생성하는
이종 시스템 간 동기화 장치.According to claim 1,
The synchronization unit,
If the periodic data is not received at the expected reception time according to the reception period after receiving the periodic data, inserting a tick pad at the expected reception time to generate the tick signal
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 미리 정해진 기준 횟수 이하이면, 상기 수신 예상 시점마다 상기 틱 패드를 삽입하여 상기 틱 신호를 생성하는
이종 시스템 간 동기화 장치. According to claim 8,
The synchronization unit,
If the number of times that the periodic data is not consecutively received at the expected reception time is less than a predetermined reference number, inserting the tick pad at each expected reception time to generate the tick signal
Synchronizer between heterogeneous systems.
상기 동기화부는,
상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 상기 기준 횟수를 초과하면, 상기 클럭 생성부에 의해 생성된 상기 내부 클럭을 기초로 상기 틱 신호를 생성하는
이종 시스템 간 동기화 장치.According to clause 9,
The synchronization unit,
If the number of times that the periodic data is not received consecutively at the expected reception time exceeds the reference number, generating the tick signal based on the internal clock generated by the clock generator
Synchronizer between heterogeneous systems.
상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 단계;
제 2 시스템으로부터 주기적 데이터가 수신되었는지 확인하는 단계; 및
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계를 포함하는
이종 시스템 간 동기화 방법.Upon initialization of the first system, generating an internal clock;
generating a tick signal of the first system based on the generated internal clock;
confirming whether periodic data has been received from the second system; and
When periodic data is received by the receiver, generating a tick signal of the first system based on the reception period of the periodic data.
How to synchronize between heterogeneous systems.
상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계는,
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 미리 정해진 틱 주기에 따라 분할하여 상기 제 1 시스템의 틱 신호를 생성하는
이종 시스템 간 동기화 방법. According to claim 11,
Generating a tick signal of the first system based on a reception period of the periodic data includes:
When periodic data is received by the receiver, the reception period of the periodic data is divided according to a predetermined tick period to generate a tick signal of the first system.
How to synchronize between heterogeneous systems.
상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계는,
상기 미리 정해진 틱 주기에 따라 분할된 복수의 시점에 틱 번호를 할당하는 단계; 및
상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계를 포함하는
이종 시스템 간 동기화 방법.According to claim 12,
Generating a tick signal of the first system based on a reception period of the periodic data includes:
assigning tick numbers to a plurality of time points divided according to the predetermined tick period; and
Generating the tick signal at least at some of the plurality of time points to which the tick number is assigned.
How to synchronize between heterogeneous systems.
상기 제 1 시스템은,
상기 내부 클럭에 의해 동기화 시 상기 주기적 데이터의 수신 시작 시점에 동기화된 시작 틱 번호에 대응되는 시작 테스크를 포함하는 복수의 테스크를 처리하는
이종 시스템 간 동기화 방법. According to claim 13,
The first system is,
Processing a plurality of tasks including a start task corresponding to a start tick number synchronized at the start of receiving the periodic data when synchronized by the internal clock
How to synchronize between heterogeneous systems.
상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계는,
상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화되지 않은 경우, 상기 제 1 시스템의 실시간 운영체제로부터 상기 제 1 시스템의 동기화부로 동기 요청 신호를 전송하는 단계를 포함하는
이종 시스템 간 동기화 방법.According to claim 14,
Generating the tick signal at least at some of the plurality of time points to which the tick number is assigned includes:
If the start task is not synchronized at the time the start tick number is assigned, transmitting a synchronization request signal from the real-time operating system of the first system to the synchronization unit of the first system.
How to synchronize between heterogeneous systems.
상기 틱 번호가 할당된 복수의 시점 중 적어도 일부에 상기 틱 신호를 생성하는 단계는,
상기 동기화부에 의해 상기 동기 요청 신호가 수신되면, 상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략하는 단계를 더 포함하는
이종 시스템 간 동기화 방법.According to claim 15,
Generating the tick signal at least at some of the plurality of time points to which the tick number is assigned includes:
When the synchronization request signal is received by the synchronization unit, generation of the tick signal is omitted at a time immediately after synchronization with the start task until the start task is synchronized at the time at which the start tick number is assigned. containing more steps
How to synchronize between heterogeneous systems.
상기 시작 테스크에 동기화된 시점 직후의 시점에서 상기 틱 신호의 생성을 생략하는 단계는,
상기 시작 테스크가 상기 시작 틱 번호가 할당된 시점에 동기화 될 때까지, 상기 시작 테스크의 실행 시간을 나머지 테스크의 실행 시간보다 길게 설정하는
이종 시스템 간 동기화 방법.According to claim 16,
The step of omitting generation of the tick signal immediately after synchronization with the start task includes:
Setting the execution time of the start task to be longer than the execution time of the remaining tasks until the start task is synchronized to the point at which the start tick number is assigned.
How to synchronize between heterogeneous systems.
상기 주기적 데이터의 수신 이후 상기 수신 주기에 따른 수신 예상 시점에 상기 주기적 데이터가 수신되지 않으면, 상기 수신 예상 시점에 틱 패드를 삽입하여 상기 틱 신호를 생성하는 단계를 더 포함하는
이종 시스템 간 동기화 방법.According to claim 11,
If the periodic data is not received at the expected reception time according to the reception period after receiving the periodic data, generating the tick signal by inserting a tick pad at the expected reception time
How to synchronize between heterogeneous systems.
상기 수신 예상 시점에 패드를 삽입하여 상기 틱 신호를 생성하는 단계는,
상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 미리 정해진 기준 횟수 이하이면, 상기 수신 예상 시점마다 상기 틱 패드를 삽입하여 상기 틱 신호를 생성하는
이종 시스템 간 동기화 방법. According to claim 18,
The step of generating the tick signal by inserting a pad at the expected reception point includes:
If the number of times that the periodic data is not consecutively received at the expected reception time is less than a predetermined reference number, inserting the tick pad at each expected reception time to generate the tick signal
How to synchronize between heterogeneous systems.
상기 주기적 데이터가 상기 수신 예상 시점에 연속하여 수신되지 않은 횟수가 상기 기준 횟수를 초과하면, 상기 클럭 생성부에 의해 생성된 상기 내부 클럭을 기초로 상기 틱 신호를 생성하는 단계를 더 포함하는
이종 시스템 간 동기화 방법.According to claim 19,
If the number of times that the periodic data is not consecutively received at the expected reception time exceeds the reference number, generating the tick signal based on the internal clock generated by the clock generator further comprising:
How to synchronize between heterogeneous systems.
제 1 시스템의 초기화가 이루어지면, 내부 클럭을 생성하는 단계;
상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 단계;
제 2 시스템으로부터 주기적 데이터가 수신되었는지 확인하는 단계; 및
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계를 포함하는
이종 시스템 간 동기화 방법을 수행하도록 프로그램된 상기 컴퓨터 프로그램이 저장되는
컴퓨터 판독 가능 기록매체. A computer-readable recording medium storing a computer program executed by a computer,
Upon initialization of the first system, generating an internal clock;
generating a tick signal of the first system based on the generated internal clock;
confirming whether periodic data has been received from the second system; and
When periodic data is received by the receiver, generating a tick signal of the first system based on the reception period of the periodic data.
wherein the computer program programmed to perform a synchronization method between heterogeneous systems is stored.
Computer-readable recording medium.
제 1 시스템의 초기화가 이루어지면, 내부 클럭을 생성하는 단계;
상기 생성된 내부 클럭을 기초로 상기 제 1 시스템의 틱(Tick) 신호를 생성하는 단계;
제 2 시스템으로부터 주기적 데이터가 수신되었는지 확인하는 단계; 및
상기 수신부에 의해 주기적 데이터가 수신되면, 상기 주기적 데이터의 수신 주기를 기초로 상기 제 1 시스템의 틱 신호를 생성하는 단계를 포함하는
이종 시스템 간 동기화 방법을 수행하도록 프로그램된
기록매체에 저장된 컴퓨터 프로그램.
In a computer program stored on a computer-readable recording medium and executed by a computer,
Upon initialization of the first system, generating an internal clock;
generating a tick signal of the first system based on the generated internal clock;
confirming whether periodic data has been received from the second system; and
When periodic data is received by the receiver, generating a tick signal of the first system based on the reception period of the periodic data.
Programmed to perform synchronization methods between heterogeneous systems
A computer program stored on a recording medium.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220138643A KR20240057882A (en) | 2022-10-25 | 2022-10-25 | Synchronization apparatus and method between different system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220138643A KR20240057882A (en) | 2022-10-25 | 2022-10-25 | Synchronization apparatus and method between different system |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240057882A true KR20240057882A (en) | 2024-05-03 |
Family
ID=91077732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220138643A KR20240057882A (en) | 2022-10-25 | 2022-10-25 | Synchronization apparatus and method between different system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240057882A (en) |
-
2022
- 2022-10-25 KR KR1020220138643A patent/KR20240057882A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11804919B2 (en) | High speed embedded protocol for distributed control system | |
EP0365819B1 (en) | Synchronized fault tolerant clocks for multiprocessor systems | |
US8897319B2 (en) | High speed embedded protocol for distributed control systems | |
US20090327549A1 (en) | Monitoring unit for monitoring or controlling user access to a data bus and user having such a monitoring unit | |
EP3149897B1 (en) | High speed embedded protocol for distributed control system | |
JPH0666740B2 (en) | Point-to-multipoint communication method | |
CN108563557B (en) | Channel synchronization method and device of multi-channel computer | |
KR20090067152A (en) | Cluster coupler unit and method for synchronizing a plurality of clusters in a time-triggered network | |
US9549383B2 (en) | Clock synchronization system and method for base station | |
US9568944B2 (en) | Distributed timer subsystem across multiple devices | |
CN112514289B (en) | Control system, clock synchronization method, controller, node device, and vehicle | |
CN106507017B (en) | FPGA chip for realizing V-BY-ONE and corresponding V-BY-ONE processing method | |
US10855490B2 (en) | Transmission duration report and transmission target time allocation for controller area network synchronization | |
EP3477898A1 (en) | Log information creation device, log information creation method, recording medium having log information creation program recorded therein, and information processing system | |
KR20240057882A (en) | Synchronization apparatus and method between different system | |
US20140146931A1 (en) | Synchronization control apparatus, arithmetic processing device, parallel computer system, and control method of synchronization control apparatus | |
JPS6057082B2 (en) | How to synchronize between multiple computers | |
US10560225B2 (en) | Method of operating a communication system in a time-division multiplexing technique | |
KR102585141B1 (en) | Method for synchronizing time in multiple time domains, and apparatus implementing the same method | |
KR102598744B1 (en) | Method for synchronizing time in multiple time domains, and apparatus implementing the same method | |
CN104980265B (en) | System whens for that will the wait method synchronous with supervisory clock system | |
KR100212050B1 (en) | The way and circuit for watching and choosing synchronous source of digital exchange | |
JP2009086939A (en) | Bus comparison type multiplex system processor | |
US20210149435A1 (en) | Precision timing between systems | |
KR100255381B1 (en) | Supply to stabilitied reference clock |