KR20110010542A - System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method - Google Patents

System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method Download PDF

Info

Publication number
KR20110010542A
KR20110010542A KR1020100024315A KR20100024315A KR20110010542A KR 20110010542 A KR20110010542 A KR 20110010542A KR 1020100024315 A KR1020100024315 A KR 1020100024315A KR 20100024315 A KR20100024315 A KR 20100024315A KR 20110010542 A KR20110010542 A KR 20110010542A
Authority
KR
South Korea
Prior art keywords
clock
synchronization
time
sampling
delayed
Prior art date
Application number
KR1020100024315A
Other languages
Korean (ko)
Other versions
KR101313104B1 (en
Inventor
오명훈
김성운
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US12/825,919 priority Critical patent/US8433019B2/en
Priority to JP2010157060A priority patent/JP5271976B2/en
Publication of KR20110010542A publication Critical patent/KR20110010542A/en
Application granted granted Critical
Publication of KR101313104B1 publication Critical patent/KR101313104B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay
    • H04L7/0037Delay of clock signal
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/085Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal
    • H03L7/089Details of the phase-locked loop concerning mainly the frequency- or phase-detection arrangement including the filtering or amplification of its output signal the phase or frequency detector generating up-down pulses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

PURPOSE: A system and apparatus for synchronization between heterogeneous periodic clock domains, a circuit for detecting synchronization failure and data receiving method are provided to avoid synchronization failure without latency by estimating the synchronization failure between heterogeneous periodic clock domains. CONSTITUTION: A sender(100) outputs a prediction clock having a first clock which is delayed a first time. A receiver(200) predicts the synchronization failure between the first clock and a second clock by using the prediction clock. The receiver delays the second clock which is selected from an estimation result by a second time to synchronize the second clock with the first clock. The sender detects the synchronization failure between the estimation clock and the second clock, thereby estimating synchronization failure generation time in advance.

Description

이종 주기 클록 도메인간의 동기화 시스템, 동기화 장치, 동기화 실패 검출 회로 및 데이터 수신방법{System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method}System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method}

본 발명에서는 멀티 클록 도메인 환경에서 레이턴시(latency) 증가로 인한 성능 저하를 방지할 수 있는 동기화 시스템, 동기화 장치, 동기화 실패 검출 회로 및 데이터 수신방법에 관한 것이다.The present invention relates to a synchronization system, a synchronization device, a synchronization failure detection circuit, and a data receiving method capable of preventing performance degradation due to increased latency in a multi-clock domain environment.

본 발명은 지식경제부 정부출연금사업의 일환으로 수행한 연구로부터 도출된 것이다. [과제관리번호: 1415094961, 과제명: 지능형자동차 전장용 임베디드 시스템 기술 개발]The present invention is derived from a study conducted as part of the government pension project of the Ministry of Knowledge Economy. [Task management number: 1415094961, Assignment name: Development of embedded system technology for intelligent automotive electronics]

수많은 IP(Intellecture Property)를 이용한 SoC(System on a Chip) 설계에 있어서 각 IP 들은 서로 다른 클록 주파수로 동작할 수 있다. 이러한 서로 다른 IP들을 통합하여 설계하려면, IP 간의 데이터 전송시 발생할 수 있는 동기화 실패 문제를 해결해야 한다. 예로써 가장 낮은 클록 주파수로 동작하는 IP에 맞추어 모든 IP들을 단일 클록으로 구동시키면, 동기화는 보장할 수 있지만, 성능 저하가 뒤따른다. 각 IP들의 클록 주기를 정수배 관계로 조절하면 상대적으로 쉬운 동기화 기법을 적용하면서 단일 클록 기반 동기화 기법 보다는 성능 저하를 막을 수 있다. 그러나, 클록들 사이의 정수배 관계 조절은 IP 수가 많을수록 IP 간 최적화 클록 주파수 차이가 클수록 적용 효과가 크게 줄어든다. In a System on a Chip (SoC) design using numerous IPs, each IP can operate at a different clock frequency. Integrating these different IPs requires solving the synchronization failure that can occur when transferring data between IPs. For example, driving all of the IPs to a single clock to match the IP operating at the lowest clock frequency ensures synchronization, but with performance degradation. By adjusting the clock cycles of each IP in an integer multiple, it is possible to apply a relatively easy synchronization technique and prevent performance degradation rather than a single clock based synchronization technique. However, the adjustment of the integer multiple relationship between clocks decreases the application effect as the number of IPs increases and the difference in optimized clock frequencies between IPs increases.

이러한 동기화 실패 문제를 해결하기 위해 다양한 동기화 기법이 제시되고 있다.Various synchronization techniques have been proposed to solve this synchronization failure problem.

"Synchronous"가정은 흔히 말하는 동기식 회로의 기반의 가정을 의미하여, 칩내 전역에서 클록 특성은 동일해야 한다는 가정이다. "Mesochronous"가정은 칩내에서 관측되는 클록들의 주파수 차이는 없되 페이즈 차이만 허용하는 가정이다. 즉, 클록 소스로부터 특정 두 개의 leaf 노드까지의 지연시간만 다른 가정이므로 동기화를 위해서는 클록이나 데이터 전달 속도를 조절하는 지연 소자를 사용한다. "Plesiochronous"가정은 미세한 주파수 차이를 인정하며, 이에 따라 페이즈도 변화할 수 있다. "Mesochronous"가정의 동기화 방식을 사용하고 이를 반복적으로 수행시킨다는 가정이다.The "Synchronous" assumption refers to the underlying assumption of synchronous circuitry, which is the assumption that the clock characteristics must be the same throughout the chip. The "Mesochronous" assumption assumes that there is no frequency difference between clocks observed in the chip but only a phase difference. In other words, the delay time from the clock source to two specific leaf nodes is assumed to be different. Therefore, the synchronization device uses a delay device that adjusts the clock or data transfer rate. The "Plesiochronous" assumption admits slight frequency differences, so the phase can change. It is assumed that you use the "Mesochronous" home synchronization method and perform it repeatedly.

"Related"가정은 칩내의 두 지점의 클록 주파수가 정수배의 관계를 갖는 가정이다. 이 가정에서는 동기화 실패 경우가 클록 주파수의 특성 분석으로 쉽게 예측가능하다. "Heterogeneous"가정은 클록 주파수간의 정수 배의 관계가 없이 클록 주파수가 다양한 경우로 특화된 동기화 실패 예측 방식이 요구된다. "Asynchronous"가정은 지금까지 설명한 모든 가정을 포함하는 가정으로 동기화를 위해서는 비동기식 설계 기법에 기반한 동기화 장치가 필요하다.The "Related" assumption is an assumption that the clock frequencies of two points in a chip are integral multiples. In this hypothesis, the case of synchronization failure can be easily predicted by characterizing the clock frequency. "Heterogeneous" assumptions require specialized synchronization failure prediction schemes where the clock frequencies vary, regardless of the integer multiple of the clock frequencies. The "Asynchronous" assumption is a home that covers all the assumptions described so far, and synchronization requires a synchronization device based on an asynchronous design technique.

"Synchronous", "Mesochronous", "Plesiochronous"가정은 단일 클록 환경에서의 구분이고, "Related", "Heterogeneous", "Asynchronous"가정은 클록 소스가 여러 개인 멀티 클록 환경에서의 구분이다. "Heterogeneous" 까지의 가정에서는 모든 클록은 주기성을 유지해야 한다. The "Synchronous", "Mesochronous", and "Plesiochronous" assumptions are the divisions in a single clock environment, and the "Related", "Heterogeneous", and "Asynchronous" assumptions are the divisions in a multi-clock environment with multiple clock sources. In homes up to "Heterogeneous", all clocks must remain periodic.

따라서, 본 발명의 목적은 다수의 주기 클록을 갖는 이종 클록 도메인간의 데이터 전송 시에 발생할 수 있는 동기화 실패 문제를 latency 없이 해결하는 동기화 장치, 시스템, 동기화 실패 검출 회로 및 데이터 수신방법을 제공하는 것이다.Accordingly, an object of the present invention is to provide a synchronization device, a system, a synchronization failure detection circuit, and a data receiving method which solve the synchronization failure problem that may occur when data is transmitted between heterogeneous clock domains having a plurality of periodic clocks without latency.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 많은 목적들은 아래의 기재로부터 본 발명의 기술분야에 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to the above-mentioned object, and many other objects not mentioned will be clearly understood by those skilled in the art from the following description.

상기와 같은 목적을 달성하기 위한 본 발명의 일면에 따른 동기화 시스템은, 이종 주기의 제1 클록과 제2 클록에 따라 각각 동작하는 센더와 리시버를 포함하는 이종 주기 클록 도메인 간의 동기화 시스템으로서, 상기 제1 클록을 제1 시간 지연시킨 예측 클록을 출력하는 센더 및 상기 예측 클록을 이용하여 상기 제1 클록과 상기 제2 클록 간의 동기화 실패 여부를 예측하고, 상기 예측 결과에 따라 선택적으로 상기 제2 클록을 제2 시간 지연시켜 상기 제1 클록과 동기화시키는 리시버를 포함한다.A synchronization system according to an aspect of the present invention for achieving the above object is a synchronization system between heterogeneous cycle clock domains comprising a sender and a receiver operating in accordance with the first clock and the second clock of the heterogeneous period, respectively, A predictor that outputs a predicted clock having a first time delayed by a first time delay and the predicted clock are used to predict whether synchronization between the first clock and the second clock has failed, and optionally, the second clock is selectively determined according to the prediction result. And a receiver for synchronizing with the first clock by a second time delay.

상기와 같은 목적을 달성하기 위한 본 발명의 다른 면에 따른 동기화 장치는, 이종 주기의 제1 클록과 제2 클록 간의 동기화를 수행하는 동기화 장치로서, 상기 제1 클록이 제1 시간 지연된 예측 클록을 입력받고, 상기 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 제1 지연신호에 응답하여, 상기 예측 클록을 샘플링하는 제1 샘플링부와, 상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 제2 지연신호에 응답하여, 상기 예측 클럭을 샘플링하는 제2 샘플링부와, 상기 제1 및 제2 샘플링부에 의해 샘플링된 결과를 각각 상기 제2 클록으로 샘플링하고, 상기 제2 클록으로 샘플링된 결과들을 비교하여 상기 제1 및 제2 클록 간의 동기화 실패 여부를 검출하는 검출부 및 상기 검출 결과에 따라 선택적으로 상기 제2 클록을 제2 시간만큼 지연시켜 상기 제1 클록과 동기화시키는 동기화부를 포함한다.A synchronization device according to another aspect of the present invention for achieving the above object is a synchronization device for performing synchronization between a first clock and a second clock of a heterogeneous period, the first clock is a first clock delayed prediction clock; A first sampling unit configured to sample the predicted clock in response to a first delayed signal received and delayed by the second clock by a hold time of the first clock; The second sampling unit for sampling the prediction clock and the result sampled by the first and second sampling units, respectively, in response to the second delayed signal delaying the second clock by a time subtracted from the setup time. A detector configured to detect a synchronization failure between the first and second clocks by sampling at two clocks and comparing the results sampled by the second clock; And a synchronization unit configured to delay two clocks by a second time to synchronize with the first clock.

상기와 같은 목적을 달성하기 위한 본 발명의 또 다른 면에 따른 동기화 실패 검출회로는, 제1 클록과 제2 클록간의 동기화 실패 여부를 검출하는 동기화 실패 검출회로로서, 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 제1 지연신호에 응답하여, 상기 제1 클록을 샘플링하는 제1 샘플링부와, 상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 제2 지연신호에 응답하여, 상기 제1 클럭을 샘플링하는 제2 샘플링부 및 상기 제1 및 제2 샘플링부에 의해 샘플링된 결과가 서로 다른지 여부를 검출하는 검출부를 포함한다.The synchronization failure detection circuit according to another aspect of the present invention for achieving the above object is a synchronization failure detection circuit for detecting whether or not the synchronization failure between the first clock and the second clock, the hold time of the first clock In response to the first delayed signal delaying the second clock, a first sampling unit for sampling the first clock, and the second clock by a time obtained by subtracting the setup time of the first clock from the period of the second clock; And a second sampling unit for sampling the first clock and a detector for detecting whether the results sampled by the first and second sampling units are different from each other in response to the delayed second delayed signal.

상기와 같은 목적을 달성하기 위한 본 발명의 또 다른 면에 따른 데이터 수신 방법은, 제1 클록에 따라 동작하는 제1 클록 도메인으로부터, 상기 제1 클록의 주기와 다른 주기의 제2 클록에 따라 동작하는 제2 클록 도메인으로 데이터를 수신하는 방법으로서, 상기 제1 클록 도메인으로부터 상기 제1 클록이 제1 시간 지연된 예측 클록을 수신하는 단계 및 상기 예측 클록을 이용하여 상기 제1 클록과 상기 제2 클록 간의 동기화 실패 여부를 예측하고, 실패한 경우 상기 제2 클록을 제2 시간만큼 지연시키고, 상기 제2 시간만큼 지연된 제2 클록에 응답하여 상기 데이터를 샘플링하는 단계를 포함한다.A data receiving method according to another aspect of the present invention for achieving the above object, in accordance with a second clock of a period different from the period of the first clock from the first clock domain operating in accordance with the first clock A method of receiving data in a second clock domain, the method comprising: receiving a prediction clock whose first clock is delayed by a first time from the first clock domain and using the prediction clock; Predicting whether or not the synchronization has failed, delaying the second clock by a second time, and sampling the data in response to the second clock delayed by the second time.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 의하여 구체적으로 개시된다.Details of other embodiments are specifically disclosed by the detailed description and the drawings.

본 발명의 구성에 따르면, 이종 클록 도메인 간의 동기화 실패 여부를 예측할 수 있고, 따라서 레이턴시 없이 동기화 실패를 회피할 수 있다. According to the configuration of the present invention, it is possible to predict whether synchronization between heterogeneous clock domains fails, and thus to avoid synchronization failure without latency.

도 1은 센더와 리시버로 구성된 일반적인 시스템을 나타내는 블록도이다.
도 2는 실시에에 따른 동기화 실패 검출회로를 나타내는 회로도이다.
도 3은 도 2의 동기화 실패 검출회로의 동작을 설명하기 위한 신호도이다.
도 4 및 도 5는 제1 클록을 얼마의 시간만큼 지연시킬 때 제2 클록의 몇 사이클 전에 동기화 실패를 미리 예측할 수 있는지를 설명하기 위한 신호도들이다.
도 6은 실시예에 따른 이종 주기 도메인 간의 동기화 시스템을 나타내는 블록도이다.
도 7은 도 6에 도시된 클록 예측기를 나타내는 블록도이다.
도 8은 도 6에 도시된 동기화기를 나타내는 예시적인 회로도이다.
도 9는 도 8의 동기화부의 변형례를 나타내는 회로도이다.
1 is a block diagram illustrating a general system consisting of a sender and a receiver.
2 is a circuit diagram illustrating a synchronization failure detection circuit according to an embodiment.
3 is a signal diagram for describing an operation of a synchronization failure detection circuit of FIG. 2.
4 and 5 are signal diagrams for explaining how many cycles before the second clock can be predicted in advance when the first clock is delayed by how much time.
6 is a block diagram illustrating a synchronization system between heterogeneous periodic domains according to an embodiment.
FIG. 7 is a block diagram illustrating the clock predictor illustrated in FIG. 6.
FIG. 8 is an exemplary circuit diagram illustrating the synchronizer shown in FIG. 6.
9 is a circuit diagram illustrating a modification of the synchronization unit of FIG. 8.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in various forms, and only the present embodiments are intended to complete the disclosure of the present invention, and the general knowledge in the art to which the present invention pertains. It is provided to fully convey the scope of the invention to those skilled in the art, and the present invention is defined only by the scope of the claims. It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. As used herein, “comprises” and / or “comprising” refers to a component, step, operation and / or device that is present in one or more other components, steps, operations and / or elements. Or does not exclude additions.

이하 첨부된 도면을 참조하면 본 발명의 바람직한 실시예를 상세히 설명하기로 하고, 각 도면에서 동일한 구성 및 기능을 갖는 구성요소에 대해서는 동일한 참조부호를 병기한다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same reference numerals are used for components having the same configuration and function in each of the drawings.

도 1 내지 도 3을 참조하여 실시예에 따른 동기화 실패 검출회로에 대해 설명한다. 도 1은 센더와 리시버로 구성된 일반적인 시스템을 나타내는 블록도이고, 도 2는 실시에에 따른 동기화 실패 검출회로를 나타내는 회로도이고, 도 3은 도 2의 동기화 실패 검출회로의 동작을 설명하기 위한 신호도이다.A synchronization failure detection circuit according to an embodiment will be described with reference to FIGS. 1 to 3. 1 is a block diagram illustrating a general system including a sender and a receiver, FIG. 2 is a circuit diagram illustrating a synchronization failure detection circuit according to an embodiment, and FIG. 3 is a signal diagram for describing an operation of the synchronization failure detection circuit of FIG. 2. to be.

먼저 도 1에 도시된 바와 같이, 센더와 리시버가 서로 다른 클록 도메인에서 동작한다. 즉, 센더는 제1 클록(sclk)에 따라 동작하며, 리시버는 제2 클록(rclk)에 따라 동작한다. 여기서 제1 클록(sclk) 및 제2 클록(rclk)은 서로 다르되, 모두 주기적인 신호이다. 센더는 제1 클록(sclk)에 따라 동작하여 데이터(data)를 출력하므로, 데이터(data)는 제1 클록(sclk)에 동기화되어 있다. 그러나 센더와 리시버는 서로 다른 클록 도메인에서 동작하므로, 제2 클록(rclk)으로 동작하는 리시버는 제1 클록(sclk)과의 동기화에 실패할 수 있다.First, as shown in FIG. 1, the sender and the receiver operate in different clock domains. That is, the sender operates according to the first clock sclk, and the receiver operates according to the second clock rclk. Here, the first clock sclk and the second clock rclk are different from each other, but both are periodic signals. Since the sender operates according to the first clock sclk and outputs data, the data is synchronized to the first clock sclk. However, since the sender and the receiver operate in different clock domains, the receiver operating as the second clock rclk may fail to synchronize with the first clock sclk.

리시버에서의 동기화 실패 여부는 도 2와 같이 동기화 실패 검출회로를 통해 검출할 수 있다. The synchronization failure in the receiver may be detected through a synchronization failure detection circuit as shown in FIG. 2.

동기화 실패 검출회로(1)는 제2 클록(rclk)을 T-Ts (T: 제2 클록(rclk)의 주기, Ts: 제1 클록(sclk)의 셋업타임(setup time))만큼 지연시킨 신호(또는 제2 클록(rclk)을 제1 클록(sclk)의 셋업타임 만큼 앞당긴 신호)와 제2 클록(rclk)을 Th (Th: 제1 클록(sclk)의 홀드타임(hold time))만큼 지연시킨 신호 각각으로 제1 클록(sclk)을 샘플링하여 판별할 수 있다. 제2 클록(rclk)을 T-Ts와 Th 만큼 각각 지연 시키면 제1 클록(sclk)의 위험(hazard) 구간만큼의 window가 생성되고, 제2 클록(rclk)은 이 window 구간에 발생됨을 의미한다. The synchronization failure detection circuit 1 delays the second clock rclk by T-Ts (T: period of the second clock rclk, Ts: setup time of the first clock sclk). (Or a signal that advances the second clock rclk by the setup time of the first clock sclk) and delays the second clock rclk by Th (Th: hold time of the first clock sclk) The first clock sclk may be sampled and determined using each of the signals. Delaying the second clock rclk by T-Ts and Th, respectively, creates a window corresponding to the hazard period of the first clock sclk, and the second clock rclk is generated in this window period. .

이러한 동기화 실패 검출회로(1)는 도 2에 도시된 바와 같이, 제1 샘플링부(20), 제2샘플링부(30) 및 검출부(40)를 포함한다. 제1 및 제2 샘플링부(20, 30)는 각각 지연기(22, 32)와 플립플롭(FF1, FF2)을 포함한다.As shown in FIG. 2, the synchronization failure detection circuit 1 includes a first sampling unit 20, a second sampling unit 30, and a detection unit 40. The first and second sampling units 20 and 30 include delayers 22 and 32 and flip-flops FF1 and FF2, respectively.

제1 샘플링부(20)는 제2 클록(rclk)을 Th 만큼 지연시킨 신호에 응답하여 제1 클록(sclk)을 샘플링하고, 제2 샘플링부(30)는 제2 클록(rclk)을 T-Ts 만큼 지연시킨 신호에 응답하여 제1 클록(sclk)을 샘플링한다. 구체적으로 제1 지연기(22)는 제2 클록(rclk)을 Th 만큼 지연시키고, 제1 플립플롭은(FF1) 제1 지연기(22)에 의해 지연된 제2 클록(rclk)에 응답하여 제1 클록(sclk)을 샘플링한다. 제2 지연기(32)는 제2 클록(rclk)을 T-Ts 만큼 지연시키고, 제2 플립플롭(FF2)은 제2 지연기(32)에 의해 지연된 제2 클록(rclk)에 응답하여 제1 클록(sclk)을 샘플링힌다.The first sampling unit 20 samples the first clock sclk in response to a signal delaying the second clock rclk by Th, and the second sampling unit 30 sets the second clock rclk to T−. The first clock sclk is sampled in response to the signal delayed by Ts. Specifically, the first delayer 22 delays the second clock rclk by Th, and the first flip-flop FF1 responds to the second clock rclk delayed by the first delayer 22. One clock (sclk) is sampled. The second delayer 32 delays the second clock rclk by T-Ts, and the second flip-flop FF2 responds to the second clock rclk delayed by the second delayer 32. One clock (sclk) is sampled.

검출부(40)는 제1 및 제2 샘플링부(20, 30)의 각 샘플링 결과를 비교하여 제1 클록(sclk)과 제2 클록(rclk)간의 동기화 실패 여부를 검출한다.The detector 40 compares the sampling results of the first and second sampling units 20 and 30 to detect whether a synchronization failure between the first clock sclk and the second clock rclk occurs.

이러한 동기화 실패 검출회로(1)의 동작에 대해서는 도 3을 참조하여 좀더 구체적으로 설명한다.The operation of the synchronization failure detection circuit 1 will be described in more detail with reference to FIG. 3.

도3의 (a)와 (b)처럼 도 2의 제1 및 제2 샘플링부(20, 30)가 같은 값을 샘플링하면, 동기화 실패가 없는 경우이다. 도3 (a)의 경우, 도 2의 A, B 노드 값은 모두 ‘0’이 되고 도 3 (b)의 경우 A, B 노드 값은 ‘1’이 된다. 그러나, 도 3 (c)와 같이 A 노드가 ‘0’, B 노드가 ‘1’의 결과 값인 경우, 제2 클록(rclk)은 제1 클록(sclk)의 위험 구간에 있음을 의미하고 이는 곧 동기화 실패가 존재함을 나타낸다. 따라서 제1 및 제2 샘플링부(20, 30)의 샘플링 결과가 다를 때 도 2의 검출부(40)는 동기화 실패를 검출하고, 제1 및 제2 샘플링부(20, 30)의 샘플링 결과가 동일할 때 동기화 실패를 검출하지 않는다. If the first and second sampling units 20 and 30 of FIG. 2 sample the same value as shown in FIGS. 3A and 3B, there is no synchronization failure. In the case of Fig. 3 (a), the A and B node values of Fig. 2 are all '0', and in Fig. 3 (b), the A and B node values are '1'. However, when the node A is '0' and the node B is '1' as shown in FIG. 3C, the second clock rclk means that the second clock rclk is in a critical section of the first clock sclk. Indicates that a synchronization failure exists. Therefore, when the sampling results of the first and second sampling units 20 and 30 are different, the detection unit 40 of FIG. 2 detects a synchronization failure, and the sampling results of the first and second sampling units 20 and 30 are the same. Do not detect synchronization failures.

이러한 검출부(40)는, 앤드(AND) 연산자를 포함하여, 제1 및 제2 샘플링부(20, 30) 중 어느 하나의 샘플링 결과를 반전시키고, 다른 샘플링 결과와 앤드(AND) 연산을 수행할 수 있다. 다만 검출부(40)는 이에 한정되지 않고, 다양한 형태로 구현될 수 있으며, 예컨대 XOR 게이트(Exclusive-OR gates)로 구성될 수 있음은 물론이다.The detector 40 includes an AND operator to invert a sampling result of any one of the first and second sampling units 20 and 30 and perform an AND operation with another sampling result. Can be. However, the detection unit 40 is not limited thereto, and may be implemented in various forms, for example, may be configured as XOR gates (Exclusive-OR gates).

한편, 도 2의 동기화 실패 검출회로(1)에 의해서 동기화 실패 여부를 검출할 수 있다고 하더라도 동기화 실패 여부를 미리 판별하지 못하면 정작 올바를 데이터(data)를 전송할 수 없다. 따라서 도 2의 동기화 실패 검출회로(1)에, 제1 클록(sclk) 대신 특정 시간만큼 지연시킨 제1 클록(sclk)을 입력하면, 제2 클록(rclk)의 몇 싸이클 전에 동기화 실패를 미리 예측할 수 있고, 그럼으로써 동기화 실패를 미리 방지 할 수 있다.On the other hand, even if the synchronization failure detection circuit 1 of FIG. 2 can detect the synchronization failure, if the synchronization failure cannot be determined in advance, data cannot be correctly transmitted. Therefore, when the first clock sclk, which is delayed by a specific time instead of the first clock sclk, is input to the synchronization failure detection circuit 1 of FIG. 2, a synchronization failure may be predicted before several cycles of the second clock rclk. This prevents synchronization failures in advance.

이하에서는 도 4 및 도 5를 참조하여, 제1 클록(sclk)을 얼마의 시간만큼 지연시킬 때 제2 클록(rclk)의 몇 사이클 전에 동기화 실패를 미리 예측할 수 있는지에 관해 설명한다. Hereinafter, with reference to FIGS. 4 and 5, how many cycles before the second clock rclk can be predicted in advance when the first clock sclk is delayed by how much time will be described.

도 4 및 도 5는 제1 클록(sclk)을 얼마의 시간만큼 지연시킬 때 제2 클록(rclk)의 몇 사이클 전에 동기화 실패를 미리 예측할 수 있는지를 설명하기 위한 신호도들이다.4 and 5 are signal diagrams for explaining how many cycles before the second clock rclk can be predicted beforehand by how much time the first clock sclk is delayed.

먼저 주기

Figure pat00001
를 갖는 free running 신호의 rising edge의 시간 집합을
Figure pat00002
라 가정하고,
Figure pat00003
를 시간
Figure pat00004
만큼 지연 시킨 신호의 rising edge의 시간 집합을
Figure pat00005
라고 가정한다. 사실상, 주기
Figure pat00006
를 갖는 free running 신호는
Figure pat00007
만큼 지연 혹은 앞당겨도 동일한 rising edge 시간 집합을 갖기 때문에
Figure pat00008
는 다음과 같이 표현할 수 있다.Give first
Figure pat00001
Set the time of rising edge of free running signal with
Figure pat00002
Assume that
Figure pat00003
Time
Figure pat00004
Time set of the rising edge of the signal delayed by
Figure pat00005
Assume that Virtual cycle
Figure pat00006
Free running signal with
Figure pat00007
Delaying or advancing by as much as the same rising edge time set
Figure pat00008
Can be expressed as

Figure pat00009
(1)
Figure pat00009
(One)

따라서

Figure pat00010
는therefore
Figure pat00010
Is

Figure pat00011
(2)
Figure pat00011
(2)

로 표현할 수 있다. 여기에서

Figure pat00012
의 (n<0)인 경우와
Figure pat00013
의 (-nT+t)<0인 경우는 의미상 신호를 앞 시간으로 당김을 나타낸다. . From here
Figure pat00012
For (n <0) of and
Figure pat00013
(-NT + t) <0 means that the signal is pulled forward in time.

도 4에 도시된 바와 같이, 주기 Tr를 갖는 제2 클록(rclk)과 Ts 주기의 제1 클록(sclk)을 가정하고, 제1 클록(sclk)을 특정 시간만큼 지연시킴에 따라 제2 클록(rclk)의 몇 사이클 전의 제1 클록(sclk)의 상태를 예측할 수 있는지를 살펴 본다. 제2 클록(rclk)의 4번째 rising edge(H)에서 제1 클록(sclk)과 동기화 실패 현상이 나타난다. 제2 클록(rclk)의 4번째 rising edge(H)보다 한 사이클 전인 G에서, H에서의 동기화 실패 여부를 예측하기 위해서는 제1 클록(sclk)을 F에서 G만큼(Tp) 지연시키면 된다. 한편, 제2 클록(rclk)의 주기인 Tr 만큼 지연된 제1 클록(sclk_del)과 제2 클록(rclk)과의 관계는, 한 싸이클 전의 제2 클록(rclk)과 제1 클록(sclk)과의 관계와 동일하다. 따라서, 도 4에서와 같이 제1 클록(sclk)을 Tr 만큼 지연(point A에서 point B 참조)시킨 신호(sclk_del)에서 F’로부터 H까지의 시간은 Tp와 동일하다. 그런데, Tp는 제1 클록(sclk)과, Tr 만큼 지연된 제1 클록(sclk_del)의 phase 차이와 같다. 즉, Tr 만큼 지연된 제1 클록(sclk_del)과, 제1 클록(sclk)과의 위상 차이는 Tp이고, 제1 클록(sclk)을 Tp 만큼 지연(point A에서 point C 참조)시킨 신호인 sclk_e1 신호는 제2 클록(rclk)의 4번째 싸이클의 한 싸이클 전 즉, 3번째 싸이클(G)에서 동기화 실패 현상이 나타난다. As shown in FIG. 4, assuming a second clock rclk having a period Tr and a first clock sclk of a Ts period, and delaying the first clock sclk by a specific time, the second clock ( How many cycles before the cycle of the first clock (sclk) can be predicted. A synchronization failure phenomenon occurs with the first clock sclk at the fourth rising edge H of the second clock rclk. At G, which is one cycle before the fourth rising edge H of the second clock rclk, the first clock sclk may be delayed from F to G (Tp) to predict whether or not the synchronization has failed at H. On the other hand, the relationship between the first clock sclk_del and the second clock rclk delayed by Tr, which is the period of the second clock rclk, is the relationship between the second clock rclk and the first clock sclk before one cycle. Same as relationship Therefore, as shown in FIG. 4, the time from F 'to H is equal to Tp in the signal sclk_del in which the first clock sclk is delayed by Tr (see point B at point A). However, Tp is equal to a phase difference between the first clock sclk and the first clock sclk_del delayed by Tr. That is, the phase difference between the first clock sclk_del delayed by Tr and the first clock sclk is Tp, and the sclk_e1 signal is a signal obtained by delaying the first clock sclk by Tp (see point C at point A). The synchronization failure occurs before one cycle of the fourth cycle of the second clock rclk, that is, the third cycle G.

sclk_e2, sclk_e3 신호는 각각 2배의 Tp, 3배의 Tp 만큼 제1 클록(sclk)을 지연시킨 것이며, 결과적으로 제1 클록(sclk)과 제2 클록(rclk) 간의 동기화 실패 현상이 나타나는 제2 클록(rclk)의 4번째 싸이클(H)로부터 각각 2 싸이클, 3 싸이클 전에 동기화 실패 현상이 나타나며, 이를 통해 미리 동기화 실패 현상을 예측할 수 있다. 이는 일정한 법칙에 따라 몇 싸이클 전에 동기화 실패 여부가 예측 가능하다는 것을 보여준다. The sclk_e2 and sclk_e3 signals delay the first clock sclk by twice Tp and triple Tp, respectively, and as a result, a second failure in which synchronization failure between the first clock sclk and the second clock rclk occurs. From the fourth cycle H of the clock rclk, a synchronization failure phenomenon occurs two cycles and three cycles, respectively, so that the synchronization failure phenomenon can be predicted in advance. This shows that the synchronization failure is predictable a few cycles before, according to a certain law.

즉, sclk_e1, sclk_e2, sclk_e3 신호를 도 2의 동기화 실패 검출회로(1)에 제1 클록(sclk) 대신 입력하면, 각각 Tr, 2*Tr, 3*Tr 전에 동기화 실패 여부를 예측할 수 있다(따라서 sclk_e1, sclk_e2, sclk_e3 신호를 이하에서 예측 클록이라 함).That is, when the sclk_e1, sclk_e2, and sclk_e3 signals are input to the synchronization failure detection circuit 1 of FIG. 2 instead of the first clock sclk, it is possible to predict whether the synchronization has failed before Tr, 2 * Tr, and 3 * Tr, respectively. sclk_e1, sclk_e2, sclk_e3 signals are hereinafter referred to as prediction clocks).

동기화 실패 여부를 미리 예측하기 위한 회로를 구현하는 경우, 특정 신호를 지연시키기 위에서는 지연 소자를 사용하는데 지연시킬 시간이 길면 길수록 지연 소자의 설계가 어려워지고 전력 소모와 같은 부가적인 side effect가 발생하게 된다. 그러나 식 (1)과 식 (2)의 주기 신호의 특성을 이용하면 지연 시간을 단축하면서 동일한 효과를 얻을 수 있다.When implementing a circuit for predicting synchronization failure in advance, the delay element is used to delay a specific signal. The longer the delay time is, the more difficult the delay element is to be designed and additional side effects such as power consumption are generated. do. However, by using the characteristics of the periodic signals of Equations (1) and (2), the same effect can be obtained while reducing the delay time.

도 4에서 제1 클록(sclk)을 3*Tp 만큼 지연시킨 신호인 예측 클록 (sclk_e3)을 예로 식 (2)에 적용해 보면In FIG. 4, the prediction clock sclk_e3, which is a signal obtained by delaying the first clock sclk by 3 * Tp, is applied to Equation (2) as an example.

Figure pat00014
(3)
Figure pat00014
(3)

과 같이 표현할 수 있다. 여기에서 It can be expressed as From here

Figure pat00015
(4)
Figure pat00015
(4)

을 만족시키는 최소의 n(n=...,-3,-2,-1,0,1,2,3,...) 값을 결정할 수 있고 이때의

Figure pat00016
값이 sclk 를 3*Tp 만큼 지연시킨 신호와 동일한 free running 신호의 최소 지연 시간이 된다. We can determine the minimum value of n (n = ...,-3, -2, -1,0,1,2,3, ...) that satisfies
Figure pat00016
The value is the minimum delay of the free running signal that is equal to the signal that delayed sclk by 3 * Tp.

도 5를 참조하여 좀더 구체적으로 살펴보면, Tr, Ts 가 각각 70 ns, 60 ns 라고 가정 한다면 Tp는 50 ns 가 된다. 이때

Figure pat00017
를 만족시키는 n은 n≥-2.5, 즉 -2로 결정된다. 결론적으로 제2 클록(rclk)을 기준으로 3 싸이클 이전에 동기화 실패를 예측하기 위해서는, 제1 클록(sclk)을 3*Tp 만큼 지연시켜도 가능하지만, 최소의 지연 시간을 위해, 제1 클록(sclk)을 3*Tp 만큼 지연시킨 예측 클록 (sclk_e3)과 동일한 파형을 같는 신호를 이용하면 된다 즉, 제1 클록(sclk)을
Figure pat00018
만틈 지연시킨 예측 클록(sclk_e4)을 이용하면, 회로 구현할 때에도 지연 시간을 최소로 할 수 있어 지연 소자의 설계가 간단해 지고, 전력 소모도 줄일 수 있다. 이러한 예측 클록(sclk_e4)을 생성하는 클록 예측부에 관한 설명은 도 7을 참조하여 후술한다.Looking more specifically with reference to Figure 5, assuming that Tr, Ts is 70 ns, 60 ns, respectively, Tp is 50 ns. At this time
Figure pat00017
N satisfying n is determined as n ≧ −2.5, that is, −2. In conclusion, in order to predict synchronization failure before three cycles based on the second clock rclk, it is possible to delay the first clock sclk by 3 * Tp, but for the minimum delay time, the first clock sclk Is a signal having the same waveform as that of the predicted clock sclk_e3 having a delay of 3 * Tp. That is, the first clock sclk
Figure pat00018
By using the delayed prediction clock sclk_e4, the delay time can be minimized even when the circuit is implemented, thereby simplifying the design of the delay device and reducing power consumption. A description of the clock predictor that generates the predicted clock sclk_e4 will be described later with reference to FIG. 7.

도 6 내지 도 8을 참조하여 본 발명의 실시예에 따른 동기화 시스템을 설명한다. 도 6은 실시예에 따른 이종 주기 도메인 간의 동기화 시스템을 나타내는 블록도이고, 도 7은 도 6에 도시된 클록 예측기를 나타내는 블록도이고, 도 8은 도 6에 도시된 동기화기를 나타내는 예시적인 회로도이다.6 to 8, a synchronization system according to an embodiment of the present invention will be described. FIG. 6 is a block diagram illustrating a synchronization system between heterogeneous periodic domains, FIG. 7 is a block diagram illustrating a clock predictor illustrated in FIG. 6, and FIG. 8 is an exemplary circuit diagram illustrating the synchronizer illustrated in FIG. 6. .

도 6은 Heterogeneous 환경의 동기화를 위한 최상위 블록도를 나타낸다. 동기화 시스템(10)은 센더(100)와 리시버(200)를 포함하고, 센더(100)는 클록 예측기(110)를 포함하며, 리시버(200)는 동기화기(210)을 포함한다.6 shows a top block diagram for synchronization of a heterogeneous environment. The synchronization system 10 includes a sender 100 and a receiver 200, the sender 100 includes a clock predictor 110, and the receiver 200 includes a synchronizer 210.

앞서 설명한 동기화 실패를 검출하기 위해, 클록 예측기(clock predictor, 110)는 제1 클록(sclk)을 일정시간 지연시켜 예측 클록(sclk_e)을 생성한다. 센더(100)는 예측 클록(sclk_e)과 데이터(data)를 리시버(200)로 출력한다.In order to detect the above-described synchronization failure, the clock predictor 110 delays the first clock sclk for a predetermined time to generate the prediction clock sclk_e. The sender 100 outputs the prediction clock sclk_e and the data to the receiver 200.

리시버(200)의 동기화기(Synchronizer, 210)는 동기화 실패를 미리 검출하고 회피할 수 있는 기능을 제공한다.The synchronizer 210 of the receiver 200 provides a function of detecting and avoiding synchronization failure in advance.

먼저 도 7을 참조하여 센더(100)의 클록 예측기(110)에 대해 구체적으로 설명한다.First, the clock predictor 110 of the sender 100 will be described in detail with reference to FIG. 7.

클록 예측기(110)는 가변 지연 소자(120)와, 고정 지연 소자(130) 및 위상 비교기(Phase Comparator, 140)를 포함한다.The clock predictor 110 includes a variable delay element 120, a fixed delay element 130, and a phase comparator 140.

가변 지연 소자(120)는 위상 비교기(140)의 피드백에 따라 가변적인 시간만큼 제1 클록(sclk)을 지연시켜 출력한다. 고정 지연 소자(130)는 가변 지연 소자(120)에 의해 지연된 제1 클록(sclk)을 미리 예측하고자 하는 시간, 예컨대 3주기(3*Tr)만큼 지연시켜 출력한다. 위상 비교기(140)는 가변 지연 소자(120)의 출력과 제1 클록(sclk) 간의 위상을 비교하여 비교 결과를 가변 지연 소자(120)로 피드백 한다.The variable delay element 120 delays and outputs the first clock sclk by a variable time according to the feedback of the phase comparator 140. The fixed delay element 130 delays and outputs the first clock sclk delayed by the variable delay element 120 by a period, for example, three periods 3 * Tr. The phase comparator 140 compares the phase between the output of the variable delay element 120 and the first clock sclk and feeds back the comparison result to the variable delay element 120.

예를 들어, 초기에 가변 지연 소자(120)는 제1 클록(sclk)을 지연시키지 않고 출력하며, 고정 지연 소자(130)가 제1 클록(sclk)을 3*Tr 만큼 지연시킨다. 그리고 위상 비교기(140)는 제1 클록(sclk)과 고정 지연 소자(130)에 의해 3*Tr 만큼 지연된 제1 클록(sclk)의 위상을 비교한다. 비교 결과 위상이 동일하지 않으면, 이를 가변 지연 소자(120)로 피드백한다. 가변 지연 소자(120)는 피드백에 따라 제1 클록(sclk)을 소정시간 지연하여 출력하고, 고정 가변 소자는 가변 지연 소자(120)에 의해 출력된 신호를 3*Tr 만큼 지연 시켜 출력한다. 위상 비교기(140)는 다시 제1 클록(sclk)과 고정 가변 소자로부터 출력된 신호의 위상을 비교하고, 그 비교 결과를 가변 지연 소자(120)로 피드백한다. For example, initially, the variable delay element 120 outputs the first clock sclk without delay, and the fixed delay element 130 delays the first clock sclk by 3 * Tr. The phase comparator 140 compares the phases of the first clock sclk and the first clock sclk delayed by 3 * Tr by the fixed delay element 130. If the comparison does not have the same phase, it is fed back to the variable delay element (120). The variable delay element 120 delays and outputs the first clock sclk by a predetermined time according to the feedback, and the fixed variable element delays and outputs the signal output by the variable delay element 120 by 3 * Tr. The phase comparator 140 compares the phase of the signal output from the first clock sclk with the fixed variable element and feeds back the comparison result to the variable delay element 120.

이와 같이 위상 비교기(140)에서 위상 차이가 없어질 때까지 가변 지연 소자(120)에 지연 시간이 더해지게 되고 최종적으로 위상 비교기(140)에서 차이가 없을 때, 그때의 가변 지연 소자(120)의 지연 시간을 통해 예측 클록(sclk_e)이 생성되어 출력된다. 여기서 출력되는 예측 클록(sclk_e)은, 예컨대 도 5의 예측 클록(sclk_e4)일 수 있다.As such, when the delay time is added to the variable delay element 120 until the phase difference disappears in the phase comparator 140 and finally there is no difference in the phase comparator 140, the variable delay element 120 at that time The prediction clock sclk_e is generated and output through the delay time. The predicted clock sclk_e output here may be, for example, the predicted clock sclk_e4 of FIG. 5.

한편, 동기화기(210)는 도 2에 도시된 구조의 동기화 실패 검출회로(1)를 포함하여, 동기화 실패 여부를 검출한다. 예측 클록(sclk_e)을 수신하여 동기화 실패를 미리 예측하고, 동기화가 실패하는 경우에는 제2 클록(rclk)을 소정시간 지연시켜 제1 클록(sclk)과 동기화시키고, 소정시간 지연된 제2 클록(rclk_del2)에 따라 데이터(data)를 수신한다. 동기화가 실패하지 않는 경우에는 동기화기(210)는 제2 클록(rclk)에 따라 데이터(data)를 수신한다. 도 8을 참조하여 이러한 동기화기(210)의 일 예를 구체적으로 설명한다.On the other hand, the synchronizer 210 includes a synchronization failure detection circuit 1 of the structure shown in FIG. 2 to detect whether synchronization failed. The prediction clock sclk_e is received to predict a synchronization failure in advance, and when synchronization fails, the second clock rclk is delayed by a predetermined time to synchronize with the first clock sclk, and the second clock rclk_del2 delayed by a predetermined time is delayed. Receive data. If the synchronization does not fail, the synchronizer 210 receives data according to the second clock rclk. An example of such a synchronizer 210 will be described in detail with reference to FIG. 8.

도 8을 참조하면, 동기화기(210)는 제1 샘플링부(220)와, 제2 샘플링부(230)와, 검출부(240)와, 동기화부(250)를 포함한다.Referring to FIG. 8, the synchronizer 210 includes a first sampling unit 220, a second sampling unit 230, a detection unit 240, and a synchronization unit 250.

먼저 제1 샘플링부(220)는 제2 클록(rclk)을 제1 클록(sclk)의 홀드타임(Tsh)만큼 지연시켜 제1 지연신호(rclk_del0)를 출력하는 제1 지연기(222)와, 직렬로 연결되어 제1 지연신호(rclk_del0)에 응답하여 동작하는 제1 및 제2 플립플롭(FF1, FF2)을 포함한다. 제1 플립플롭(FF1)은 제1 지연신호(rclk_del0)에 응답하여 예측 클록(sclk_e)을 샘플링하고, 제2 플립플롭(FF2)은 제1 플립플롭(FF1)의 출력(sclk_e_s0A)을 제1 지연신호(rclk_del0)에 응답하여 샘플링한다. First, the first sampling unit 220 delays the second clock rclk by the hold time Tsh of the first clock sclk, and outputs the first delay signal rclk_del0. The first and second flip-flops FF1 and FF2 are connected in series and operate in response to the first delay signal rclk_del0. The first flip-flop FF1 samples the prediction clock sclk_e in response to the first delay signal rclk_del0, and the second flip-flop FF2 outputs the output sclk_e_s0A of the first flip-flop FF1 to the first. The sampling is performed in response to the delay signal rclk_del0.

제2 샘플링부(230)는 제2 클록(rclk)의 주기 Tr에서 제1 클록(sclk)의 셋업타입을 뺀 시간만큼 제2 클록(rclk)을 지연시켜(또는 제1 클록(sclk)의 셋업타임만큼 제2 클록(rclk)을 앞당겨) 제2 지연신호(rclk_del1)를 출력하는 제2 지연기(232)와, 직렬로 연결되어 제2 지연신호(rclk_del1)에 응답하여 동작하는 제3 및 제4 플립플롭(FF3, FF4)을 포함한다. 제3 플립플롭(FF3)은 제2 지연신호(rclk_del1)에 응답하여 예측 클록(sclk_e)을 샘플링하고, 제4 플립플롭(FF4)은 제3 플립플롭(FF3)의 출력(sclk_e_s1A)을 제2 지연신호에 응답하여 샘플링한다. The second sampling unit 230 delays the second clock rclk by a time obtained by subtracting the setup type of the first clock sclk from the period Tr of the second clock rclk (or setup of the first clock sclk). A second delayer 232 for outputting a second delay signal rclk_del1 by advancing the second clock rclk by a time, and third and third devices connected in series to operate in response to the second delay signal rclk_del1. 4 flip-flops (FF3, FF4). The third flip-flop FF3 samples the prediction clock sclk_e in response to the second delay signal rclk_del1, and the fourth flip-flop FF4 receives the output sclk_e_s1A of the third flip-flop FF3 from the second flip-flop FF3. Sampling in response to a delay signal.

도 8의 제1 및 제2 샘플링부(220, 230)는 도 2에 도시된 제1 및 제2 샘플링부(20, 30)와 대응되는 블록들이다. 다만, 제1 및 제2 지연신호(rclk_del0, rclk_del1)는 예측 클록(sclk_e)과 비동기적인 신호이므로, 저장 장치(FF1, FF2, FF3, FF4)를 직렬로 연결한 double-latch 개념의 동기화 방식을 사용하는 것이다. The first and second sampling units 220 and 230 of FIG. 8 are blocks corresponding to the first and second sampling units 20 and 30 shown in FIG. 2. However, since the first and second delay signals rclk_del0 and rclk_del1 are asynchronous with the prediction clock sclk_e, the synchronization scheme of the double-latch concept in which the storage devices FF1, FF2, FF3, and FF4 are connected in series is used. To use.

한편, 도 2에서와 같이, 검출부(240)는 제1 및 제2 샘플링부(220, 230)의 각 샘플링된 결과(sclk_e_s0B, sclk_e_s1B)를 비교하여 동기화 실패 여부를 검출할 수 있다. 다만, 도 8에 도시된 예에서는 제5 내지 제8 플립플롭(FF5, FF6, FF7, FF8)을 통해 제1 및 제2 샘플링 결과(sclk_e_s0B, sclk_e_s1B)를 제2 클록(rclk)에 동기화시킨 후에 동기화 실패 여부를 검출한다. 그 이유에 대해 설명한다. 도 8에서는 제1 샘플링부(220)는 제1 클록 도메인(Domain 1)에 있고, 제2 샘플링부(230)는 제2 클록 도메인(Domain 2)에 있다. 그런데 동기화 실패 여부는 제2 클록(rclk)으로 동작하는 제3 도메인 영역(Domain 3)의 동기화 실패 검출부(240)에 의해 판단되므로, 동기화 실패 검출부(240)의 입력인 제1 및 제2 샘플링부(220, 230)의 각 샘플링 결과(sclk_e_s0B, sclk_e_s1B)들은 제2 클록(rclk)으로 동기화되는 것이 바람직하다. 제1 및 제2 샘플링부(220, 230)의 각 샘플링 결과들(sclk_e_s0B, sclk_e_s1B)을 제2 클록(rclk)으로 동기화하는 것은, 서로 다른 클록 도메인간의 전송(Domain 1와 Domain 3, Domain 2과 Domain 3)으로 인한 동기화 실패 확률을 줄이기 위함이다.Meanwhile, as shown in FIG. 2, the detector 240 may detect whether the synchronization has failed by comparing the sampled results sclk_e_s0B and sclk_e_s1B of the first and second sampling units 220 and 230. However, in the example illustrated in FIG. 8, after the first and second sampling results sclk_e_s0B and sclk_e_s1B are synchronized with the second clock rclk through the fifth to eighth flip-flops FF5, FF6, FF7, and FF8. Detect synchronization failure. Explain why. In FIG. 8, the first sampling unit 220 is in the first clock domain Domain 1, and the second sampling unit 230 is in the second clock domain Domain 2. However, since the synchronization failure is determined by the synchronization failure detection unit 240 of the third domain region 3 operating with the second clock rclk, the first and second sampling units which are inputs of the synchronization failure detection unit 240 are provided. Each sampling result (sclk_e_s0B, sclk_e_s1B) of (220, 230) is preferably synchronized to the second clock (rclk). Synchronizing each of the sampling results sclk_e_s0B and sclk_e_s1B of the first and second sampling units 220 and 230 to the second clock rclk may be performed by transferring between different clock domains (Domain 1, Domain 3, and Domain 2). This is to reduce the probability of synchronization failure due to Domain 3).

따라서, 검출부(240)는, 제1 및 제2 샘플링부(220, 230)와 마찬가지로, double-latch 형태의 동기화 방식으로 제 5 내지 제8 플립플롭(FF5, FF6, FF7, FF8)을 구비한다. 그리고 제6 및 제8 플립플롭(FF6, FF8)은 각각 제5 및 제7 플립플롭(FF5, FF7)의 출력(sclk_e_S02A, sclk_e_S12A)을 제2 클록(rclk)에 응답하여 각각 샘플링한다.Accordingly, the detection unit 240 includes the fifth to eighth flip-flops FF5, FF6, FF7, and FF8 in a double-latch-type synchronization manner similar to the first and second sampling units 220 and 230. . The sixth and eighth flip-flops FF6 and FF8 sample the outputs sclk_e_S02A and sclk_e_S12A of the fifth and seventh flip-flops FF5 and FF7, respectively, in response to the second clock rclk.

검출부(240)는, 예컨대 앤드 연산자를 포함하여, 제6 및 제8 플립플롭(FF6, FF7)의 출력(sclk_e_S02B, sclk_e_S12B)을 비교하여, 제1 및 제2 클록(sclk, rclk)간의 동기화 실패 여부를 검출한다. 만약, 제6 및 제8 플립플롭(FF6, FF7)의 출력(sclk_e_S02B, sclk_e_S12B)이 서로 다르면, 즉 제1 및 제2 샘플링부(220, 230)의 샘플링 결과가 서로 다르면, 검출부(240)는 동기화가 실패한 것으로 판단한다. 만약, 제6 및 제8 플립플롭(FF)의 출력(sclk_e_S02B, sclk_e_S12B)이 동일하면, 즉 제1 및 제2 샘플링부(220, 230)의 샘플링 결과가 동일하면, 검출부(240)는 동기화 실패가 아닌 것으로 판단한다. 동기화 실패인 경우를 예로 들면, 도 8에서 sclk_e_S02B는 도3 (c)에서 sclk rising 뒤에서 sampling한 신호(‘1’)와 대응되며, sclk_e_S12B는 도3 (c)에서 sclk rising 앞에서 sampling 한 신호(‘0’)와 대응된다. 이 두 신호를 이용한 AND 게이트를 거치면 동기화 실패 여부를 판단할 수 있다.The detection unit 240 includes an AND operator, and compares the outputs sclk_e_S02B and sclk_e_S12B of the sixth and eighth flip-flops FF6 and FF7, and fails to synchronize the first and second clocks sclk and rclk. Detect whether or not. If the outputs sclk_e_S02B and sclk_e_S12B of the sixth and eighth flip-flops FF6 and FF7 are different from each other, that is, the sampling results of the first and second sampling units 220 and 230 are different from each other, the detector 240 It is determined that synchronization has failed. If the outputs sclk_e_S02B and sclk_e_S12B of the sixth and eighth flip-flops FF are the same, that is, the sampling results of the first and second sampling units 220 and 230 are the same, the detection unit 240 fails to synchronize. Judging by For example, in case of a synchronization failure, sclk_e_S02B in FIG. 8 corresponds to a signal '1' sampled after sclk rising in FIG. 3 (c), and sclk_e_S12B is a signal (') sampled before sclk rising in FIG. 3 (c). 0 '). Through the AND gate using these two signals, it is possible to determine whether synchronization has failed.

동기화 실패가 아닌 경우, 제1 및 제2 클록(sclk, rclk)이 동기화된 것임을 의미하므로, 동기화부(250)는 데이터(data)를 제2 클록(rclk)으로 샘플링하여 수신한다.If not, it means that the first and second clock (sclk, rclk) is synchronized, the synchronization unit 250 samples the data (data) to the second clock (rclk) and receives.

만약 동기화 실패인 경우, 제1 및 제2 클록(sclk, rclk)이 동기화되지 않은 것을 의미하며, 동기화부(250)는 제2 클록(rclk)을 소정시간, 예컨대 제1 클록(sclk)의 셋업타임(Tss)와 홀드타임(Tsh)을 더한 시간만큼 지연시킨다. 다시 말해서, 동기화 실패인 경우에 이를 회피할 수 있는 최대 지연시간을 거친 신호(rclk_del2)로 데이터(data)를 샘플링하여 수신함으로써, 안정적으로 데이터(data)를 수신할 수 있다.If the synchronization fails, the first and second clocks sclk and rclk are not synchronized, and the synchronization unit 250 sets the second clock rclk for a predetermined time, for example, setting up the first clock sclk. Delay by the time Tss plus the hold time Tsh. In other words, data can be stably received by sampling and receiving data with a signal rclk_del2 that has undergone the maximum delay that can be avoided in case of synchronization failure.

이러한 동기화부(250)는, 도 8에 도시된 바와 같이, 제3 지연기(252)와, 제9 플립플롭(FF9)과 제10 플립플롭(FF10) 및 선택부(254)를 포함한다.As shown in FIG. 8, the synchronizer 250 includes a third delay unit 252, a ninth flip-flop FF9, a tenth flip-flop FF10, and a selector 254.

제3 지연기(252)는 제2 클록(rclk)을 제1 클록(sclk)의 셋업타임(Tss)와 홀드타임(Tsh)을 더한 시간만큼 지연시켜 신호(rclk_del2)를 출력한다. 제9 플립플롭(FF9)은 제2 클록(rclk)으로 데이터(data)를 샘플링한다. 제10 플립플롭(FF10)은 제3 지연기(252)에 의해 지연된 신호(rclk_del2)로 데이터(data)를 샘플링한다. 선택부(254)는 검출부(240)의 출력(SF)에 따라 제9 플립플롭(FF9) 및 제10 플립플롭(FF10) 중 어느 하나를 선택하여, 샘플링된 데이터(data_s)를 출력한다. The third delay unit 252 outputs the signal rclk_del2 by delaying the second clock rclk by a time obtained by adding the setup time Tss and the hold time Tsh of the first clock sclk. The ninth flip-flop FF9 samples the data with the second clock rclk. The tenth flip-flop FF10 samples the data with the signal rclk_del2 delayed by the third delay unit 252. The selector 254 selects any one of the ninth flip-flop FF9 and the tenth flip-flop FF10 according to the output SF of the detector 240, and outputs sampled data data_s.

동기화기(210)는 전체적으로 동기화 실패 검출 입력을 위한 1개씩의 플립플롭(FF0, FF1)과 두 개의 double-latch 동기화에 필요한 2개씩의 플립플롭(FF2, FF4와 FF5, FF7))이 더해져서 총 3단의 파이프라인을 거쳐야 현재 데이터(data)의 동기화 실패 여부를 알 수 있다. 따라서 도 8에 도시된 동기화기(210)가 센더(200)에 사용되는 경우, 검출부(240)가 제2 클록(rclk) 기준으로 3싸이클(3 주기) 전에 동기화 실패 여부를 예측하도록, 센더(100)의 클록 예측부(110)는 예측 클록(sclk_e)을 생성해야 한다. 따라서 클록 예측부의 고정 지연 소자(130)는 3*Tr 만큼 지연시키는 것이다.The synchronizer 210 has a total of one flip-flop (FF0, FF1) for the synchronization failure detection input and two flip-flops (FF2, FF4, FF5, and FF7) required for two double-latch synchronization). It is necessary to go through three pipelines in total to find out whether the current data has failed to synchronize. Therefore, when the synchronizer 210 illustrated in FIG. 8 is used in the sender 200, the sender 240 may predict whether the detection unit 240 fails to synchronize three cycles (3 cycles) based on the second clock rclk. The clock predictor 110 of 100 must generate a predicted clock sclk_e. Therefore, the fixed delay element 130 of the clock predictor delays by 3 * Tr.

도 9는 도 8의 동기화부(250)의 변형례를 나타내는 회로도이다.9 is a circuit diagram illustrating a modification of the synchronization unit 250 of FIG. 8.

도 9를 참조하면, 동기화부(251)는 동기화 실패 여부 결과에 따라, 제2 클록(rclk)과, 제1 클록(sclk)의 셋업타임(Tss)와 홀드타임(Tsh)을 더한 시간만큼 제2 클록(rclk)을 지연시킨 신호(rclk_del2) 중 어느 하나를 선택하는 선택부(254)와, 선택된 어느 하나의 신호에 응답하여 데이터(data)를 샘플링하는 제11 플립플롭(FF11)을 포함한다. 여기서 선택부(258)는 먹스(MUX)로 구성될 수 있다.Referring to FIG. 9, according to a result of the synchronization failure, the synchronization unit 251 may set the second clock rclk by a time obtained by adding the setup time Tss and the hold time Tsh of the first clock sclk. A selection unit 254 for selecting any one of the signals rclk_del2 delaying the two clocks rclk, and an eleventh flip-flop FF11 for sampling data in response to any one of the selected signals. . The selection unit 258 may be configured as a mux.

본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Those skilled in the art will appreciate that the present invention can be embodied in other specific forms without changing the technical spirit or essential features of the present invention. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the claims and their equivalents should be construed as being included in the scope of the present invention.

1: 동기화 실패 검출회로 10: 동기화 시스템
20: 제1 샘플링부 30: 제2 샘플링부
40: 검출부 100: 센더
200: 리시버
1: synchronization failure detection circuit 10: synchronization system
20: first sampling unit 30: second sampling unit
40: detector 100: sender
200: receiver

Claims (20)

이종 주기의 제1 클록과 제2 클록에 따라 각각 동작하는 센더와 리시버를 포함하는 이종 주기 클록 도메인 간의 동기화 시스템에 있어서,
상기 제1 클록을 제1 시간 지연시킨 예측 클록을 출력하는 센더; 및
상기 예측 클록을 이용하여 상기 제1 클록과 상기 제2 클록 간의 동기화 실패 여부를 예측하고, 상기 예측 결과에 따라 선택적으로 상기 제2 클록을 제2 시간 지연시켜 상기 제1 클록과 동기화시키는 리시버
를 포함하는 이종 주기 클록 도메인간의 동기화 시스템.
A synchronization system between heterogeneous periodic clock domains comprising a sender and a receiver operating in accordance with a first clock and a second clock of a heterogeneous period, respectively,
A sender configured to output a prediction clock obtained by delaying the first clock by a first time; And
A receiver for predicting synchronization failure between the first clock and the second clock by using the prediction clock and selectively delaying the second clock for a second time according to the prediction result to synchronize with the first clock
Synchronization system between heterogeneous cycle clock domain comprising a.
제1항에 있어서, 상기 센더는
상기 예측 클록과 상기 제2 클록 간의 동기화 실패 여부를 검출하여, 상기 제1 클록과 상기 제2 클록 간에 실제 동기화 실패가 발생하는 시점보다 일정시간 미리 예측하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 1, wherein the sender
Detecting whether a synchronization failure between the predicted clock and the second clock occurs and predicting a predetermined time in advance than a time point at which an actual synchronization failure occurs between the first clock and the second clock;
Synchronization system between heterogeneous periodic clock domains.
제2항에 있어서,
상기 제1 시간은 미리 예측하고자 하는 상기 일정시간에 따라 결정되는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 2,
The first time is determined according to the predetermined time to be predicted in advance
Synchronization system between heterogeneous periodic clock domains.
제1항에 있어서,
상기 센더는 상기 예측 클럭을 출력하는 클록 예측기를 포함하고,
상기 클록 예측기는
피드백에 따라 가변적인 시간만큼 상기 제1 클록을 지연시키는 가변 지연 소자;
상기 가변 지연 소자에 의해 지연된 제1 클록을 상기 미리 예측하고자 하는 시간만큼 지연시키는 고정 지연 소자; 및
상기 제1 클록과, 상기 고정 지연 소자의 출력간의 위상을 비교하고, 상기 비교 결과를 상기 가변 지연 소자로 피드백하는 위상 비교기를 포함하되,
상기 가변 지연 소자는 상기 비교 결과 위상이 동일한 때에 상기 가변적인 시간만큼 지연된 제1 클록을 상기 예측 클록으로 출력하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 1,
The sender includes a clock predictor for outputting the prediction clock,
The clock predictor
A variable delay element for delaying the first clock by a variable time in response to a feedback;
A fixed delay element for delaying the first clock delayed by the variable delay element by the time to be predicted in advance; And
Comprising a phase comparator for comparing the phase between the first clock and the output of the fixed delay element, and feeds back the comparison result to the variable delay element,
The variable delay element outputs a first clock delayed by the variable time to the predicted clock when the comparison result is the same phase.
Synchronization system between heterogeneous periodic clock domains.
제1항에 있어서, 상기 리시버는
상기 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 신호와, 상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 신호를 이용하여, 상기 예측 클록을 각각 샘플링하고, 각 샘플링 결과를 기초로 상기 제1 및 제2 클록간의 동기화 실패 여부를 검출하는 동기화 실패 검출기를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 1, wherein the receiver
The prediction is performed by using a signal that delays the second clock by the hold time of the first clock and a signal that delays the second clock by a time obtained by subtracting the setup time of the first clock from the period of the second clock. And a synchronization failure detector for sampling clocks respectively and detecting whether synchronization between the first and second clocks has failed based on each sampling result.
Synchronization system between heterogeneous periodic clock domains.
제5항에 있어서, 상기 동기화 실패 검출기는
상기 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 신호에 응답하여 상기 예측 클록을 샘플링하는 제1 샘플링부;
상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 신호에 응답하여 상기 예측 클록을 샘플링하는 제2 샘플링부; 및
상기 제1 및 제2 샘플링부의 샘플링 결과가 서로 다른 경우에 상기 동기화가 실패한 것으로 검출하는 검출부를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 5, wherein the synchronization failure detector is
A first sampling unit sampling the predicted clock in response to a signal of delaying the second clock by a hold time of the first clock;
A second sampling unit configured to sample the prediction clock in response to a signal of delaying the second clock by a time obtained by subtracting a setup time of the first clock from a period of the second clock; And
And a detecting unit for detecting that the synchronization has failed when the sampling results of the first and second sampling units are different from each other.
Synchronization system between heterogeneous periodic clock domains.
제1항에 있어서, 상기 리시버는
상기 제1 및 제2 클록간의 동기화가 실패한 것으로 예측한 경우,
상기 제1 클록의 홀드타임 및 셋업타임의 합만큼 상기 제2 클록을 지연시켜, 상기 지연된 제2 클록과 상기 제1 클록을 동기화시키는 동기화기를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 1, wherein the receiver
If it is predicted that the synchronization between the first and second clock has failed,
And a synchronizer for delaying the second clock by the sum of the hold time and the setup time of the first clock to synchronize the delayed second clock with the first clock.
Synchronization system between heterogeneous periodic clock domains.
제7항에 있어서, 상기 동기화기는
상기 센더로부터 상기 제1 클록에 동기화되어 출력되는 데이터를 상기 제2 클록으로 샘플링하는 제1 샘플링부;
상기 제2 클록을 상기 제1 클록의 홀드타임 및 셋업타임의 합만큼 상기 제2 클록을 지연시키는 지연부;
상기 데이터를 상기 지연부에 의해 지연된 제2 클록으로 샘플링하는 제2 샘플링부; 및
상기 동기화 실패 여부의 예측 결과에 따라 상기 제1 샘플링부에 의해 샘플링된 데이터 및 상기 제2 샘플링부에 의해 샘플링된 데이터 중 어느 하나를 선택하는 선택부를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
8. The apparatus of claim 7, wherein the synchronizer
A first sampling unit configured to sample data output from the sender in synchronization with the first clock as the second clock;
A delay unit delaying the second clock by the sum of the hold time and the setup time of the first clock;
A second sampling unit for sampling the data with a second clock delayed by the delay unit; And
And a selection unit for selecting any one of data sampled by the first sampling unit and data sampled by the second sampling unit according to a prediction result of the synchronization failure.
Synchronization system between heterogeneous periodic clock domains.
이종 주기의 제1 클록과 제2 클록 간의 동기화를 수행하는 동기화 장치에 있어서,
상기 제1 클록이 제1 시간 지연된 예측 클록을 입력받고, 상기 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 제1 지연신호에 응답하여, 상기 예측 클록을 샘플링하는 제1 샘플링부;
상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 제2 지연신호에 응답하여, 상기 예측 클럭을 샘플링하는 제2 샘플링부;
상기 제1 및 제2 샘플링부에 의해 샘플링된 결과를 각각 상기 제2 클록으로 샘플링하고, 상기 제2 클록으로 샘플링된 결과들을 비교하여 상기 제1 및 제2 클록 간의 동기화 실패 여부를 검출하는 검출부; 및
상기 검출 결과에 따라 선택적으로 상기 제2 클록을 제2 시간만큼 지연시켜 상기 제1 클록과 동기화시키는 동기화부
를 포함하는 동기화 장치.
A synchronization device for performing synchronization between a first clock and a second clock of a heterogeneous period,
A first sampling unit configured to sample the predicted clock in response to a first delayed first clock received by a first time delayed prediction clock and delaying the second clock by a hold time of the first clock;
A second sampling unit configured to sample the prediction clock in response to a second delay signal that delays the second clock by a time subtracted from the setup time of the first clock by a period of the second clock;
A detector configured to sample the results sampled by the first and second sampling units with the second clock, respectively, and compare the results sampled with the second clock to detect whether synchronization between the first and second clocks has failed; And
A synchronization unit for selectively delaying the second clock by a second time and synchronizing with the first clock according to the detection result
Synchronizing device comprising a.
제9항에 있어서, 상기 동기화부는
동기화 실패로 예측된 경우, 상기 제2 시간만큼 지연된 제2 클록으로, 상기 제1 클록에 동기화되어 입력되는 데이터를 수신하고,
상기 동기화 실패가 아닌 것으로 예측된 경우, 상기 제2 클록으로, 상기 제1 클록에 동기화되어 입력되는 데이터를 수신하는 것
인 이종 주기 클록 도메인간의 동기화 장치.
The method of claim 9, wherein the synchronization unit
If it is predicted that the synchronization failure, the second clock delayed by the second time, the data received in synchronization with the first clock,
Receiving, as the second clock, data that is input in synchronization with the first clock when the synchronization is not expected to fail.
Synchronization device between heterogeneous periodic clock domains.
제10항에 있어서, 상기 동기화부는
상기 제2 시간만큼 지연된 제2 클록으로 상기 데이터를 샘플링하는 제3 샘플링부;
상기 제2 클록으로 샘플링하는 상기 데이터를 제4 샘플링부; 및
상기 검출 결과에 따라 상기 제3 및 제4 샘플링부의 출력 중 어느 하나를 선택하는 선택부를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 장치.
The method of claim 10, wherein the synchronization unit
A third sampling unit for sampling the data with a second clock delayed by the second time;
A fourth sampling unit for sampling the data with the second clock; And
And a selection unit for selecting any one of outputs of the third and fourth sampling units according to the detection result.
Synchronization device between heterogeneous periodic clock domains.
제10항에 있어서, 상기 동기화부는
상기 검출 결과에 따라, 제2 클록과 상기 제2 시간만큼 지연된 제2 클록을 중 어느 하나를 선택하는 선택부; 및
상기 선택부에 의해 선택된 어느 하나에 응답하여 상기 데이터를 샘플링하는 제3 샘플링부를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 장치.
The method of claim 10, wherein the synchronization unit
A selector configured to select one of a second clock and a second clock delayed by the second time according to the detection result; And
And a third sampling unit for sampling the data in response to any one selected by the selection unit.
Synchronization device between heterogeneous periodic clock domains.
제9항에 있어서,
상기 검출부는 상기 제1 클록과 상기 제2 클록 간에 실제 동기화 실패가 발생하는 시점보다 일정 시간 미리 예측하는 것이고,
상기 제1 시간은 미리 예측하고자 하는 상기 일정시간에 따라 결정되는 것
인 이종 주기 클록 도메인간의 동기화 장치.
10. The method of claim 9,
The detector predicts a predetermined time in advance than a time point at which an actual synchronization failure occurs between the first clock and the second clock.
The first time is determined according to the predetermined time to be predicted in advance
Synchronization device between heterogeneous periodic clock domains.
제9항에 있어서,
상기 제2 시간은 상기 제1 클록의 홀드타임 및 셋업타임의 합
인 이종 주기 클록 도메인간의 동기화 장치.
10. The method of claim 9,
The second time is the sum of the hold time and the setup time of the first clock.
Synchronization device between heterogeneous periodic clock domains.
제1 클록과 제2 클록간의 동기화 실패 여부를 검출하는 동기화 실패 검출회로에 있어서,
제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 제1 지연신호에 응답하여, 상기 제1 클록을 샘플링하는 제1 샘플링부;
상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 제2 지연신호에 응답하여, 상기 제1 클럭을 샘플링하는 제2 샘플링부; 및
상기 제1 및 제2 샘플링부에 의해 샘플링된 결과가 서로 다른지 여부를 검출하는 검출부
를 포함하는 동기화 실패 검출회로.
In the synchronization failure detection circuit for detecting whether the synchronization failure between the first clock and the second clock,
A first sampling unit sampling the first clock in response to a first delayed signal delaying the second clock by a hold time of a first clock;
A second sampling unit configured to sample the first clock in response to a second delay signal that delays the second clock by a time obtained by subtracting a setup time of the first clock from a period of the second clock; And
A detector for detecting whether the results sampled by the first and second sampling units are different from each other
Synchronization failure detection circuit comprising a.
제15항에 있어서, 상기 검출부는
상기 제1 및 제2 샘플링부에 의해 샘플링된 결과가 서로 다른 경우에 상기 제1 및 제2 클록간의 동기화가 실패한 것으로 검출하는 것
인 동기화 실패 검출회로.
The method of claim 15, wherein the detection unit
Detecting that synchronization between the first and second clocks fails when the results sampled by the first and second sampling units are different from each other.
Synchronization failure detection circuit.
제1 클록에 따라 동작하는 제1 클록 도메인으로부터, 상기 제1 클록의 주기와 다른 주기의 제2 클록에 따라 동작하는 제2 클록 도메인으로 데이터를 수신하는 방법에 있어서,
상기 제1 클록 도메인으로부터 상기 제1 클록이 제1 시간 지연된 예측 클록을 수신하는 단계; 및
상기 예측 클록을 이용하여 상기 제1 클록과 상기 제2 클록 간의 동기화 실패 여부를 예측하고, 실패한 경우 상기 제2 클록을 제2 시간만큼 지연시키고, 상기 제2 시간만큼 지연된 제2 클록에 응답하여 상기 데이터를 샘플링하는 단계
를 포함하는 이종 주기 클록 도메인으로부터의 데이터 수신방법.
A method for receiving data from a first clock domain operating in accordance with a first clock to a second clock domain operating in accordance with a second clock at a period different from a period of the first clock, the method comprising:
Receiving a prediction clock from which the first clock is first delayed from the first clock domain; And
The prediction clock is used to predict whether or not the synchronization fails between the first clock and the second clock, and if it fails, delay the second clock by a second time, and respond to the second clock delayed by the second time. Steps to Sample Data
Method of receiving data from a heterocyclic clock domain comprising a.
제17항에 있어서, 상기 데이터를 샘플링하는 단계는
상기 예측 클록과 상기 제2 클록 간의 동기화 실패 여부를 검출하여, 상기 제1 클록과 상기 제2 클록 간에 실제 동기화 실패가 발생하는 시점보다 일정시간 미리 예측하는 단계를 포함하는 것
인 이종 주기 클록 도메인간의 동기화 시스템.
18. The method of claim 17, wherein sampling the data comprises
Detecting whether a synchronization failure between the predicted clock and the second clock occurs, and predicting a predetermined time in advance than a time point at which an actual synchronization failure occurs between the first clock and the second clock;
Synchronization system between heterogeneous periodic clock domains.
제17항에 있어서, 상기 데이터를 샘플링하는 단계는
상기 제1 클록의 홀드타임만큼 상기 제2 클록을 지연시킨 제1 지연신호에 응답하여 상기 예측 클록을 제1 샘플링하는 단계;
상기 제2 클록의 주기에서 상기 제1 클록의 셋업타임을 뺀 시간만큼 상기 제2 클록을 지연시킨 제2 지연신호에 응답하여 상기 예측 클록을 제2 샘플링하는 단계; 및
상기 제1 및 제2 샘플링 단계의 각 샘플링 결과를 비교하여, 서로 다른 경우에 상기 제1 클록 및 상기 제2 클록 간에 동기화가 실패한 것으로 예측하는 단계
를 포함하는 것
인 이종 주기 클록 도메인으로부터의 데이터 수신방법.
18. The method of claim 17, wherein sampling the data comprises
First sampling the predicted clock in response to a first delayed signal that delayed the second clock by a hold time of the first clock;
Second sampling the predicted clock in response to a second delayed signal that delayed the second clock by a time subtracted from the setup time of the first clock by a period of the second clock; And
Comparing each sampling result of the first and second sampling steps, and predicting that synchronization fails between the first clock and the second clock in different cases;
Comprising
A method of receiving data from an heterocyclic clock domain.
제17항에 있어서,
상기 제1 시간은 미리 예측하고자 하는 상기 일정시간에 따라 결정되는 것이고,
상기 제2 시간은 상기 제1 클록의 홀드타임 및 셋업타임의 합
인 이종 주기 클록 도메인간의 동기화 시스템.
The method of claim 17,
The first time is determined according to the predetermined time to be predicted in advance,
The second time is the sum of the hold time and the setup time of the first clock.
Synchronization system between heterogeneous periodic clock domains.
KR1020100024315A 2009-07-24 2010-03-18 System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method KR101313104B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/825,919 US8433019B2 (en) 2009-07-24 2010-06-29 System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method
JP2010157060A JP5271976B2 (en) 2009-07-24 2010-07-09 Synchronization system, synchronization apparatus, synchronization failure detection circuit, and data reception method between different period clock domains

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20090067864 2009-07-24
KR1020090067864 2009-07-24

Publications (2)

Publication Number Publication Date
KR20110010542A true KR20110010542A (en) 2011-02-01
KR101313104B1 KR101313104B1 (en) 2013-09-30

Family

ID=43771075

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100024315A KR101313104B1 (en) 2009-07-24 2010-03-18 System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method

Country Status (1)

Country Link
KR (1) KR101313104B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170101749A (en) * 2016-02-29 2017-09-06 삼성전자주식회사 Method and apparatus for aligning clock phase

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4209916B2 (en) * 2003-02-20 2009-01-14 ザ−リンク・セミコンダクタ−・インコ−ポレイテッド Clock domain adjustment in packet networks
JP3990319B2 (en) * 2003-06-09 2007-10-10 株式会社アドバンテスト Transmission system, receiving device, test device, and test head
KR100733184B1 (en) * 2004-01-09 2007-06-28 주식회사 아도반테스토 Timing clock calibration method
JP2007104347A (en) 2005-10-05 2007-04-19 Matsushita Electric Ind Co Ltd Clock synchronization system and method of audio transmission system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170101749A (en) * 2016-02-29 2017-09-06 삼성전자주식회사 Method and apparatus for aligning clock phase

Also Published As

Publication number Publication date
KR101313104B1 (en) 2013-09-30

Similar Documents

Publication Publication Date Title
JP5271976B2 (en) Synchronization system, synchronization apparatus, synchronization failure detection circuit, and data reception method between different period clock domains
US10756714B2 (en) Skew control
JP4788825B2 (en) Jitter suppression circuit and jitter suppression method
US20130271193A1 (en) Circuits and methods to guarantee lock in delay locked loops and avoid harmonic locking
JP2001320273A (en) Delay synchronizing loop circuit and delay synchronizing method
US11256284B2 (en) Integrated skew control
WO2005093443A1 (en) Test device and test method
CN107220204B (en) Data reading circuit
KR20180122285A (en) System and method for maintaining high speed communication
US20140035636A1 (en) Clock synchronization circuit
US8514920B2 (en) Methods and apparatus for pseudo asynchronous testing of receive path in serializer/deserializer devices
KR102468261B1 (en) Duty correction circuit
KR101313104B1 (en) System and apparatus for synchronization between heterogeneous periodic clock domains, circuit for detecting synchronization failure and data receiving method
US20160380638A1 (en) Cdr control circuit, cdr circuit, and cdr control method
JP2011061350A (en) Receiving apparatus and receiving method thereof
KR20140090736A (en) Semiconductor device compensating for internal skew and method for operating thereof
JP4531827B2 (en) Communication device
US6636080B2 (en) Apparatus for detecting edges of input signal to execute signal processing on the basis of edge timings
US20100177790A1 (en) Timing recovery circuit, communication node, network system, and electronic device
US7321647B2 (en) Clock extracting circuit and clock extracting method
KR20180099998A (en) Semiconductor device
US9602272B2 (en) Clock and data recovery circuit and system using the same
JP2010183429A (en) Clock extracting circuit
JP3719413B2 (en) Data transmission system, data transmission / reception apparatus used therefor, and method thereof
US8811501B2 (en) Receiving apparatus, transmission and reception system, and restoration method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160826

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170828

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190826

Year of fee payment: 7