KR20190075316A - Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line - Google Patents

Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line Download PDF

Info

Publication number
KR20190075316A
KR20190075316A KR1020170176804A KR20170176804A KR20190075316A KR 20190075316 A KR20190075316 A KR 20190075316A KR 1020170176804 A KR1020170176804 A KR 1020170176804A KR 20170176804 A KR20170176804 A KR 20170176804A KR 20190075316 A KR20190075316 A KR 20190075316A
Authority
KR
South Korea
Prior art keywords
delay
value
delay line
delay element
precision
Prior art date
Application number
KR1020170176804A
Other languages
Korean (ko)
Other versions
KR102042742B1 (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 KR1020170176804A priority Critical patent/KR102042742B1/en
Publication of KR20190075316A publication Critical patent/KR20190075316A/en
Application granted granted Critical
Publication of KR102042742B1 publication Critical patent/KR102042742B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/14Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00019Variable delay
    • H03K2005/00026Variable delay controlled by an analog electrical signal, e.g. obtained after conversion by a D/A converter
    • H03K2005/00052Variable delay controlled by an analog electrical signal, e.g. obtained after conversion by a D/A converter by mixing the outputs of fixed delayed signals with each other or with the input signal

Abstract

A method and an apparatus for high speed delay for real-time PVT compensation using a delay line are disclosed. A delay unit for performing fast delay for real-time PVT (Process, Voltage, Temperature) correction can include a plurality of delay lines for adjusting the delay skew of an input signal and a delay line controller for controlling the plurality of delay lines. Each of the plurality of delay lines includes a data delay line and a reference clock delay line. The data delay line receives and delays data. The reference clock delay line receives a reference clock as an input and delays or corrects the delay value of the data delay line.

Description

딜레이 라인을 이용한 실시간 PVT 보정용 고속 딜레이 방법 및 그 장치{Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line}TECHNICAL FIELD The present invention relates to a high-speed delay method and apparatus for real-time PVT correction using a delay line,

본 발명은 PVT 보정용 고속 딜레이 방법 및 그 장치에 관한 것으로서, 보다 상세하게는 딜레이 라인을 이용한 실시간 PVT 보정용 고속 딜레이 방법 및 그 장치에 관한 것이다.The present invention relates to a high-speed delay method and apparatus for PVT correction, and more particularly, to a high-speed delay method and apparatus for real-time PVT correction using a delay line.

기존의 딜레이 유닛은 외부핀이나 레지스터로 입력되는 딜레이 값에 따라 단순하게 딜레이시키는 구조로 딜레이의 정확도 및 일관성을 유지시키는데 비효율적이다. 또한 딜레이 값이 실시간적으로 변하는 경우 딜레이값을 다시 할당해야 하고 이때 시간적 차이가 있어 실시간 대응이 어려운 문제점이 있다.Conventional delay unit is ineffective in maintaining the accuracy and consistency of delay with simple delays according to the delay value input to the external pin or register. Also, when the delay value changes in real time, the delay value must be re-allocated.

KR 10-2005-0089944KR 10-2005-0089944

본 발명의 일 측면은 딜레이 라인을 이용한 실시간 PVT 보정용 고속 딜레이 방법을 제공한다.One aspect of the present invention provides a fast delay method for real-time PVT correction using a delay line.

본 발명의 다른 측면은 딜레이 라인을 이용한 실시간 PVT 보정용 고속 딜레이 방법을 수행하는 장치를 제공한다.Another aspect of the present invention provides an apparatus for performing a fast delay method for real-time PVT correction using a delay line.

본 발명의 일 측면에 따른 실시간 PVT((Process, Voltage, Temperature) 보정용 고속 딜레이를 수행하는 딜레이 유닛은 입력 신호의 딜레이 스큐(skew)의 조정을 위한 복수의 딜레이 라인과 상기 복수의 딜레이 라인에 대한 제어를 위한 딜레이 라인 제어기를 포함할 수 있되, 상기 복수의 딜레이 라인 각각은 데이터 딜레이 라인 및 레퍼런스 클럭 딜레이 라인을 포함하고, 상기 데이터 딜레이 라인은 데이터를 입력받아 딜레이시키고, 상기 레퍼런스 클럭 딜레이 라인은 레퍼런스 클럭을 입력으로 받아 딜레이 시키거나 상기 데이터 딜레이 라인의 딜레이 값의 보정을 위한 보정 제어 정보를 제공할 수 있다.According to an aspect of the present invention, a delay unit for performing a high-speed delay for real-time PVT (Process, Voltage, Temperature) correction includes a plurality of delay lines for adjusting a delay skew of an input signal, Wherein each of the plurality of delay lines includes a data delay line and a reference clock delay line, the data delay line receives and delays data, and the reference clock delay line includes a reference clock delay line, It is possible to receive a clock as an input and provide correction control information for correcting the delay value of the data delay line.

또한, 상기 레퍼런스 클럭 딜레이 라인은 레퍼런스 클럭을 입력으로 받아 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 상기 데이터 딜레이 라인의 딜레이 값의 보정을 위한 상기 보정 제어 정보를 제공할 수 있다. In addition, the reference clock delay line may receive the reference clock and provide the correction control information for correcting a delay value of the data delay line according to PVT (Process, Voltage, Temperature) and a change in the surrounding environment.

또한, 상기 레퍼런스 클럭 딜레이 라인 및 상기 데이터 딜레이 라인 각각 상에 딜레이 엘리먼트를 포함하고, 상기 딜레이 엘리먼트는 복수의 비정밀 딜레이 엘리먼트(Coarse Delay Element) 및 복수의 정밀 딜레이 엘리먼트(Fine Delay Element)를 포함하고, 상기 비정밀 딜레이 엘리먼트는 1차적으로 딜레이된 1차 딜레이 신호를 출력하고, 상기 정밀 딜레이 엘리먼트은 상기 1차 딜레이 신호를 추가적으로 딜레이시켜 2차 딜레이 신호를 출력할 수 있다. And a delay element on each of the reference clock delay line and the data delay line, wherein the delay element includes a plurality of coarse delay elements and a plurality of fine delay elements, , The non-precision delay element outputs a first delayed primary delay signal, and the precision delay element may further delay the primary delay signal to output a secondary delay signal.

또한, 상기 복수의 정밀 딜레이 엘리먼트는 제1 정밀 딜레이 엘리먼트 및 제2 정밀 딜레이 엘리먼트를 포함하고, 상기 제1 정밀 딜레이 엘리먼트는 제1 하위 정밀 딜레이 엘리먼트 및 제2 하위 정밀 딜레이 엘리먼트를 포함하고, 상기 제2 정밀 딜레이 엘리먼트는 제3 하위 정밀 딜레이 엘리먼트 및 제4 하위 정밀 딜레이 엘리먼트를 포함하고, 상기 제1 하위 정밀 딜레이 엘리먼트 및 상기 제3 하위 정밀 딜레이 엘리먼트는 실제 딜레이 값을 구현하기 위해 사용되고, 상기 제2 하위 정밀 딜레이 엘리먼트 및 상기 제4 하위 정밀 딜레이 엘리먼트는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하기 위해 사용될 수 있다.The plurality of precision delay elements may include a first precision delay element and a second precision delay element, wherein the first precision delay element includes a first lower precision delay element and a second lower precision delay element, 2 precision delay element includes a third lower precision delay element and a fourth lower precision delay element and wherein the first lower precision delay element and the third lower precision delay element are used to implement an actual delay value, The lower precision delay element and the fourth lower precision delay element may be used to correct delay values due to changes in PVT (Process, Voltage, Temperature) and the surrounding environment.

또한, 상기 딜레이 엘리먼트는 복수의 파이널 튜닝 딜레이 엘리먼트를 더 포함하고, 상기 복수의 파이널 튜닝 딜레이 엘리먼트는 제1 파이널 튜닝 딜레이 엘리먼트, 제2 파이널 튜닝 딜레이 엘리먼트 및 제3 파이널 튜닝 딜레이 엘리먼트 각각을 포함하고, 상기 제1 파이널 튜닝 딜레이 엘리먼트 및 상기 제2 파이널 튜닝 딜레이 엘리먼트는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하는 역할을 하고, 상기 제3 파이널 튜닝 딜레이 엘리먼트는 실제적인 딜레이 값을 구현하는데 사용될 수 있다.The delay element further includes a plurality of final tuning delay elements, the plurality of final tuning delay elements each including a first fin tuning delay element, a second final tuning delay element, and a third final tuning delay element, The first and second tuning delay elements compensate for delay values in accordance with changes in PVT (Process, Voltage, Temperature) and the surrounding environment, and the third final tuning delay element Can be used to implement the delay value.

또한, 상기 제1 파이널 튜닝 딜레이 엘리먼트는 최소 딜레이를 구현하는 제어 신호(MinimumValue)를 상기 딜레이 라인 제어기로부터 수신하고, 상기 제2 파이널 튜닝 딜레이 엘리먼트는 최대 딜레이를 구현하는 제어신호(MaximumValue)를 상기 딜레이 라인 제어기로부터 수신할 수 있다.The first tuning delay element receives a control signal (MinimumValue) that implements a minimum delay from the delay line controller, and the second final tuning delay element receives a control signal (MaximumValue) that implements a maximum delay, Can be received from the line controller.

또한, 상기 딜레이 라인 제어기는 레퍼런스 클럭(Reference Clock)과 딜레이 라인을 거친 출력 신호인 피드백 클럭(Feedback Clock)의 위상차에 따라 상기 딜레이 엘리먼트의 딜레이 값을 제어하여 위상차를0으로 만들 수 있다.The delay line controller may control the delay value of the delay element according to a phase difference between a reference clock and a feedback clock, which is an output signal passing through a delay line, to zero the phase difference.

또한, 상기 딜레이 라인 제어기는 계수 제어 메모리를 포함하고, 상기 계수 제어 메모리는 각 채널의 가변적 딜레이 엘리먼트를 제어하기 위한 계수 제어 데이터를 임시 저장하는 공용 장소이며 효율적인 메모리 관리를 위해 일정 크기의 페이지(Page) 단위의 크기로 나누어 관리될 수 있다.The delay line controller includes a coefficient control memory. The coefficient control memory is a common place for temporarily storing the coefficient control data for controlling the variable delay elements of each channel. For efficient memory management, ) ≪ / RTI > units.

상기 딜레이 라인 제어기는 DVCU(Delay Value Comparison Unit)을 더 포함하고, 상기 DVCU는 딜레이 설정 값의 변화 요청에 의해 각 채널의 딜레이 값이 변화하였을 경우 이를 감지하고 현재 값과 이전 값을 비교하여 이에 따른 페이지 단위의 메모리 할당 및 수거를 요청하고, 상기 DVCU는 여러 딜레이 값 변경 요인이 있는 딜레이 소스 루트의 제어를 수행하며 상기 딜레이 값이 변화하였을 때 딜레이 출력의 보정을 요청하고 그 속도 및 방법을 제어할 수 있다.The delay line controller further includes a delay value comparison unit (DVCU). The DVCU detects a delay value of each channel when a change in the delay set value is requested, compares the current value with a previous value, Page memory allocation and collection, and the DVCU performs control of a delay source route having various delay value change factors, and when the delay value changes, requests a correction of the delay output and controls the speed and method .

본 발명의 실시예에 따른 딜레이 라인을 이용한 실시간 PVT 보정용 고속 딜레이 방법 및 그 장치는 가변적인 딜레이 라인의 제어 계수(coefficient)를 페이지 단위의 단일 메모리를 사용하여 관리하고 각 채널 별로 가변적이고 효율적인 딜레이 제어를 통해 딜레이의 정확도 및 일관성을 유지시킬 수 있다.A high-speed delay method for real-time PVT correction using a delay line according to an embodiment of the present invention manages control coefficients of a variable delay line using a single memory on a page basis and provides variable and efficient delay control The accuracy and consistency of the delay can be maintained.

도 1은 본 발명의 실시예에 따른 딜레이 라인 시스템을 나타낸 개념도이다.
도 2는 본 발명의 실시예에 따른 멀티 채널 딜레이 라인을 나타낸 개념도이다.
도 3은 본 발명의 실시예에 따른 딜레이 라인을 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 파이널 튜닝 딜레이 엘리먼트를 나타낸 개념도이다.
도5는 딜레이 라인 제어기(Delay Line Controller)의 시스템을 나타낸 개념도이다.
도 6은 본 발명의 실시예에 따른 계수 제어 데이터 메모리(coefficient control data memory)를 나타낸 개념도이다.
도 7은 본 발명의 실시예에 따른 불연속 페이지 메모리(discontinued page memory)를 나타낸 개념도이다.
도 8은 본 발명의 실시예에 따른 메모리 페이지 디스크립터를 나타낸 개념도이다.
1 is a conceptual diagram illustrating a delay line system according to an embodiment of the present invention.
2 is a conceptual diagram illustrating a multi-channel delay line according to an embodiment of the present invention.
3 is a conceptual diagram illustrating a delay line according to an embodiment of the present invention.
4 is a conceptual diagram illustrating a final tuning delay element according to an embodiment of the present invention.
5 is a conceptual diagram showing a system of a delay line controller.
6 is a conceptual diagram illustrating a coefficient control data memory according to an embodiment of the present invention.
7 is a conceptual diagram illustrating a discontinued page memory according to an embodiment of the present invention.
8 is a conceptual diagram illustrating a memory page descriptor according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조 부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.

이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.

본 발명은 고속의 신호(DDR5급의GHz 신호)를 딜레이시키는 시스템에 관한 것으로 딜레이 라인(Delay Line)을 사용하여PVT(Process, Voltage, and Temperature)의 변화에 상관없이 일정한 딜레이를 유지시키는 방법 및 시스템에 관한 것이다.The present invention relates to a system for delaying a high-speed signal (DDR5 class GHz signal), and a method of maintaining a constant delay irrespective of changes in PVT (Process, Voltage, and Temperature) using a delay line ≪ / RTI >

본 발명의 실시예에 따른 딜레이 시스템은 각 채널(channel)별로 딜레이 라인을 가지며 딜레이 라인을 제어하는 딜레이 라인 제어기로 구성될 수 있다. 레퍼런스 클락(reference clock)과 딜레이 라인을 거친 피드백 클락(feedback clock) 간의 위상차를 구하고 이 위상차를 0으로 만들기 위해서 딜레이 라인은 가변적 딜레이를 구현할 수 있는 딜레이 엘리먼트(Element)로 구성될 수 있다.The delay system according to the embodiment of the present invention may be configured as a delay line controller having a delay line for each channel and controlling the delay line. The delay line may be constituted by a delay element capable of implementing a variable delay in order to obtain a phase difference between a reference clock and a feedback clock through a delay line and to set the phase difference to zero.

딜레이 라인 제어기는 가변적인 딜레이 라인의 제어 계수(Coefficient)를 페이지 단위의 단일 메모리를 사용하여 관리하고 각 채널 별로 가변적이고 효율적인 딜레이 제어를 통해 딜레이의 정확도 및 일관성을 유지시킬 수 있다.The delay line controller manages the coefficient of the variable delay line using a single page memory unit and maintains the accuracy and consistency of the delay through variable and efficient delay control for each channel.

딜레이 라인은 클락을 입력으로 받는 클락 딜레이 라인과 클락 신호 또는 데이터 신호를 입력으로 받는 데이터 딜레이 라인으로 구성되는데2개가 각각 독립적으로 동작할 수도 있고 협력적으로 동작할 수도 있다. 클락 딜레이 라인은 온도 등 주변 환경의 변화에 따른 딜레이 값의 변화 발생시 레퍼런스 클락과 피드백 클락의 차이를 비교하는 페이즈 탐색기(phase detector)와 입력되는 계수(coefficient)의 값에 따라 딜레이를 변화시킬 수 있는 가변적인 딜레이 엘리먼트(element)로 구성되는 딜레이 라인 및 클락 분할 블록(clock division block) 및 클락 통합 블록(clock synthesis block) 및 최종 페이즈 탐색기(final phase detector) 및 최종 튜닝 딜레이 블록으로 구성될 수 있다. 데이터(data) 딜레이 라인은 입력되는 계수 값에 따라 딜레이를 변화시킬 수 있는 가변적인 딜레이 엘리먼트로 구성되는 딜레이 라인 및 신호 분할 블록(signal division block) 및 신호 통합 블록(signal synthesis block) 및 최종 페이즈 탐색기(final phase detector) 및 최종 튜닝 딜레이 블록으로 구성될 수 있다.The delay line is composed of a clock delay line receiving a clock as input and a data delay line receiving a clock signal or a data signal as input, and two of them may operate independently or cooperatively. The clock delay line has a phase detector that compares the difference between the reference clock and the feedback clock when the delay value changes according to the ambient environment such as temperature, and the phase detector which can change the delay according to the input coefficient value A delay line and a clock division block, a clock synthesis block, a final phase detector, and a final tuning delay block constituted by a variable delay element. The data delay line includes a delay line and a signal division block, a signal synthesis block, and a delay line composed of a variable delay element capable of changing a delay according to an input coefficient value. a final phase detector and a final tuning delay block.

딜레이 라인 제어기는 각 채널(channel)에 해당되는 딜레이 값에 따라 계수(coefficient) 단위 메모리를 할당하는 메모리 할당(Memory Allocation) 기능 및 각 채널(channel)에 해당되는 딜레이 값에 따라 계수 단위 메모리를 릴리즈 하는 메모리 릴리즈(Memory Release) 기능을 포함하고 페이지 단위의 메모리를 관리하는 페이지 풀 관리 유닛(Page Pool Management Unit), 딜레이 값의 변화에 따라 메모리를 페이지 풀 관리 유닛(Page Pool Management Unit)으로부터 할당 받거나 반납하는 기능 및 해당 계수 단위 메모리 어드레스를 발생시키는 어드레스 관리 유닛(Address Management Unit), 여러 채널의 계수 제어(coefficient control) 데이터를 메모리에 저장하고 읽어내기 위해 채널 간 메모리 요청에 대한 아비트레이션(Arbitration), 먹싱(MUXing), 디먹싱(DeMUXing), DMA(Direct Memory Access)의 기능을 수행하는 메모리 제어 유닛(Memory Control Unit) 등으로 구성될 수 있다. The delay line controller includes a memory allocation function for allocating a coefficient unit memory according to a delay value corresponding to each channel and a memory unit for releasing the coefficient unit memory according to a delay value corresponding to each channel A page pool management unit that includes a memory release function that manages page memory, a memory that is allocated from a page pool management unit according to a change in delay value, An address management unit for generating the coefficient unit memory address, a function for returning the coefficient unit memory address, and an arbitration unit for arbitrating the interchannel memory request to store and read the coefficient control data of the various channels in the memory, , Muxing, DeMuxing, and Direct Memory Access (DMA). A memory control unit or the like.

딜레이 라인(Delay Line)을 구현함에 있어서 긴 시간의 딜레이를 구현하기 위해 클럭(Clock) 또는 데이터 신호를 여러 개의 딜레이 엘리먼트(Delay Element)를 거치게 하는 방식을 이용하게 된다.In realizing a delay line, a clock or a data signal is passed through a plurality of delay elements in order to realize a long time delay.

여러 개의 딜레이 엘리먼트는 딜레이 라인을 구성하며 각 채널 별로 딜레이 라인은 클락을 입력으로 받는 클럭 딜레이 라인과 클락 또는 데이터 신호를 입력으로 받는 데이터 딜레이 라인으로 구성되는데 2개가 각각 독립적으로 동작할 수도 있고 협력적으로 동작할 수도 있다.A plurality of delay elements constitute a delay line. The delay line for each channel is constituted by a clock delay line for receiving a clock as input and a data delay line for receiving a clock or a data signal as inputs. Lt; / RTI >

각 채널 별로 다른 딜레이 값을 가질 수 있으며 하나의 입력 채널(입력 신호의 개수)이 다수의 출력 채널(출력 신호의 개수)로 연결되는 경우를 포함하여 다양한 입력 및 출력 패스(path)를 가질 수 있다.And may have various input and output paths including a case where one input channel (the number of input signals) is connected to a plurality of output channels (the number of output signals) .

도 1은 본 발명의 실시예에 따른 딜레이 라인 시스템을 나타낸 개념도이다.1 is a conceptual diagram illustrating a delay line system according to an embodiment of the present invention.

도 1에서는 여러 응용 분야가 있지만 디바이스를 테스트하는 테스트 장비에서 테스트하려는 디바이스(Device Under Test)(120)의 입력 신호의 딜레이 스큐(skew)를 조정하기 위해 중간에 딜레이 라인(100)을 연결하여 DUT(120)에 신호를 공급하는 경우를 보여주고 있다.1, there is a variety of applications, but a delay line 100 is connected in the middle in order to adjust a delay skew of an input signal of a device under test (Device Under Test) 120 in a test device for testing a device, And a signal is supplied to the signal processing unit 120 of FIG.

딜레이 값 및 외부 환경 변화를 직접 받아들이는 입력부로 외부 센서 입력부, 유선 DoE(Delay On Ethernet) 입력부, 무선 DoM(Delay On Mobile) 입력부를 포함할 수 있으며 이를 통해 딜레이 데이터 소스의 현재 위치 및 상황에 따른 즉각적인 딜레이 값을 입력으로 받아들여 딜레이 라인 제어기(Delay Line Controller) (140)에서 변화된 값을 적용하고 관련 딜레이 제어 신호를 발생시킬 수 있다.(Delay On Ethernet) input and a wireless DoM (Delay On Mobile) input, which can be used to control the current position and status of the delay data source. An immediate delay value may be taken as an input to apply the changed value in the delay line controller 140 and generate an associated delay control signal.

도 2는 본 발명의 실시예에 따른 멀티 채널 딜레이 라인을 나타낸 개념도이다.2 is a conceptual diagram illustrating a multi-channel delay line according to an embodiment of the present invention.

도 2에서는 멀티 채널 딜레이 라인의 구성도인데 각각의 딜레이 라인이 데이터 딜레이 라인(200)과 레퍼런스 클럭 딜레이 라인(220)으로 구성될 수 있다. FIG. 2 is a block diagram of a multi-channel delay line. Each of the delay lines may include a data delay line 200 and a reference clock delay line 220.

레퍼런스 클럭 딜레이 라인(220)은 레퍼런스 클럭을 입력으로 받아 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 라인의 딜레이 값을 보정해서 일정한 딜레이 값을 가지는 딜레이 라인을 구성하고 자체적으로 입력 레퍼런스 클럭을 프로그래밍된 값에 따라 레퍼런스 클럭을 딜레이시킬 뿐만 아니라 데이터 딜레이 라인(200)에 보정 제어 정보를 제공하여 데이터 딜레이 라인(200)도 보정된 정확한 딜레이 값을 가지도록 딜레이 라인 제어기를 통해 제어 정보(240)를 제공할 수 있다.The reference clock delay line 220 receives a reference clock and compensates the delay value of the delay line according to PVT (Process, Voltage, Temperature) and the surrounding environment to constitute a delay line having a predetermined delay value, The reference clock is delayed according to the programmed value and the data delay line 200 is supplied with correction control information through the delay line controller 200 so that the data delay line 200 has the corrected correct delay value, (240).

도 3은 본 발명의 실시예에 따른 딜레이 라인을 나타낸 개념도이다. 3 is a conceptual diagram illustrating a delay line according to an embodiment of the present invention.

도 3을 참조하면, 클락 분할 블록(clock division block)(300)은 입력되는 레퍼런스 클럭의 주파수를 낮은 주파수로 변환할 수 있다.Referring to FIG. 3, a clock division block 300 may convert the frequency of an input reference clock to a lower frequency.

입력되는 클럭의 주파수가 높을수록 딜레이 엘리먼트의 동작 속도도 빨라져야 하고 전체적인 회로가 빠른 속도로 동작하기 때문에 전력 소비가 크고 정확한 딜레이 값을 유지하기에 많은 어려움이 있다.The higher the frequency of the input clock, the faster the operation speed of the delay element, and the overall circuit operates at a high speed, so that the power consumption is large and it is difficult to maintain the accurate delay value.

전체적으로 전력 소비를 줄이고 시스템의 안정성을 높이기 위해 클락 분할 블록(300)에서 입력 클럭의 주파수를 낮추고 뒷부분의 클록 통합 블록(Clock Synthesis Block)(320)에서 원래의 주파수를 복원할 수 있다.The frequency of the input clock may be lowered in the clock dividing block 300 and the original frequency may be restored in the clock combining block 320 in the rear part in order to reduce the power consumption as a whole and increase the stability of the system.

클락 분할 블록(300)은 클락 주파수(clock frequency)를 낮추는 기능을 담당하고 낮아진 주파수의 클락을 내부에 제공하여 딜레이 라인의 동작을 낮은 주파수로 가능하게 할 수 있다. 이는 딜레이 유닛의 전력 소비를 줄이고 면적을 감소시킬 수 있다. 낮은 주파수가 사용되는 경우, 회로가 간단해 지고 안정성이 높아질 수 있다. 또한 CMOS(complementary metal-oxide semiconductor)에서 GHz 주파수의 신호를 수 피코 세컨드(picosecond)의 작은 단위로 PVT 보정된 딜레이를 구현하기에는 서브-마이크론 기술(sub-micron technology)을 사용해야 하는데 기술이 낮아 질수록 가격이 급격히 비싸지고 설계가 복잡해진다. 따라서, 클락 분할 블록으로 이를 보완할 수 있다. The clock dividing block 300 functions to lower the clock frequency and can provide a clock of a lower frequency to the inside to enable the operation of the delay line at a lower frequency. This can reduce the power consumption of the delay units and reduce the area. When low frequencies are used, the circuit can be simplified and the stability can be enhanced. In addition, sub-micron technology should be used to realize a PVT-corrected delay in a small unit of a picosecond of a GHz frequency in a complementary metal-oxide semiconductor (CMOS) The price is rapidly increased and the design becomes complicated. Therefore, it can be compensated by a clock division block.

딜레이 라인 엘리먼트 어레이(Delay Line Element Array)(340)는 여러개의 가변적인 딜레이를 구현할 수 있는 딜레이 엘리먼트로 구성될 수 있다. 딜레이 요소는 딜레이 라인 제어기(Delay Line Controller)(360)로부터 제어 신호(Coefficient)를 받아 가변적인 딜레이를 구현할 수 있는 회로이고 제어 신호가 아날로그(Analog) 또는 디지털 신호로 딜레이 라인 제어기(360)로부터 딜레이 엘리먼트에 연결되어 제어된 딜레이 엘리먼트(Controlled Delay Element, CDE)로 동작할 수 있다. 하나의 딜레이 엘리먼트는 비정밀 딜레이 라인(Coarse Delay Line)과 정밀 딜레이 라인(Fine Delay Line)의 서로 다른 딜레이 엘리먼트로 구성될 수 있다.The delay line element array 340 may include a delay element capable of implementing a plurality of variable delays. The delay element is a circuit capable of receiving a control signal from a delay line controller 360 to implement a variable delay and a control signal is delayed from the delay line controller 360 by an analog or digital signal, Element, and can operate as a controlled delay element (CDE) connected to the element. One delay element may be composed of different delay elements of a coarse delay line (Coarse Delay Line) and a fine delay line (Fine Delay Line).

또한 다양한 딜레이 값을 구현하기 위해 각 딜레이 엘리먼트는 최소 딜레이 값을 가지는 바이패스(Bypass) 로직을 가질 수 있다. 바이패스 로직에 의해 여러 딜레이 요소 중 일부는 딜레이 제어 신호에 의해 동작하고 나머지는 바이패스될 수 있다. 페이즈 탐색기(phase detector)(370)는 레퍼런스 클럭과 딜레이 라인을 거친 출력 신호인 피드백 클락(380)의 위상차를 딜레이 라인 제어기로 전달할 수 있다.In addition, each delay element may have a bypass logic with a minimum delay value to implement various delay values. By the bypass logic, some of the various delay elements may be operated by the delay control signal and the remainder may be bypassed. The phase detector 370 can transmit the phase difference of the feedback clock 380, which is an output signal passing through the reference clock and the delay line, to the delay line controller.

이때 피드백 클락(380)은 딜레이 라인의 딜레이 엘리먼트의 출력 중 하나를 선택할 수 있는데 입력되는 레퍼런스 클럭의 주파수와 딜레이 엘리먼트가 구현할 수 있는 딜레이 범위를 고려하여 적절한 출력을 선택할 수 있다.At this time, the feedback clock 380 can select one of the outputs of the delay elements of the delay line, and can select an appropriate output in consideration of the frequency of the input reference clock and the delay range that the delay element can realize.

PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따라 회로 동작에 영향을 주어 딜레이 엘리먼트의 값이 변하게 되면 원하는 딜레이 값을 구현할 수 없게 된다. 따라서, 레퍼런스 클럭과 딜레이 라인을 거친 출력 신호인 피드백 클락의 위상차가 발생하게 된다. 딜레이 라인 제어기(Delay Line Controller)(360)는 이 위상차에 따라 각 딜레이 엘리먼트의 딜레이 값을 제어하여 위상차를 0으로 만들 수 있다.If the value of the delay element is changed by affecting the circuit operation according to the change of the PVT (Process, Voltage, Temperature) and the surrounding environment, the desired delay value can not be realized. Therefore, the phase difference of the feedback clock, which is the output signal passing through the reference clock and the delay line, is generated. The delay line controller 360 can control the delay value of each delay element according to the phase difference to make the phase difference zero.

이렇게 각 딜레이 엘리먼트의 딜레이 값을 보정하면 각 딜레이 엘리먼트의 딜레이 값은 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 상관없이 일정한 값을 유지하게 된다.When the delay value of each delay element is corrected, the delay value of each delay element maintains a constant value regardless of PVT (Process, Voltage, Temperature) and the change of the surrounding environment.

파이널 튜닝 딜레이 엘리먼트는 좀 더 작은 단위의 딜레이 값을 구현하기 위한 블록으로 3개의 딜레이 엘리먼트로 구성될 수 있다.The final tuning delay element can be composed of three delay elements as a block for implementing a smaller unit of delay value.

2개의 딜레이 엘리먼트는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하는 역할을 하고 나머지1개의 딜레이 엘리먼트는 실제적인 딜레이 값을 구현하는데 사용될 수 있다.The two delay elements serve to compensate for the delay value due to changes in PVT (Process, Voltage, Temperature) and the surrounding environment, and the other one can be used to implement the actual delay value.

본 발명의 실시예에 따르면, 레퍼런스 클록 딜레이 라인에서 PVT 보정된 계수 값을 구하고 이를 데이터 딜레이 라인에 전달하는 구조로 데이터 딜레이 라인의 구조를 간단하게 구현할 수 있다. 따라서 클럭 딜레이 라인은 자체적인 딜레이 구현 및 데이터 딜레이 라인에 PVT 보정된 제어 신호를 제공할 수 있다.According to the embodiment of the present invention, the structure of the data delay line can be simply implemented by a structure in which the PVT-corrected coefficient value is obtained in the reference clock delay line and transferred to the data delay line. Thus, the clock delay line can provide its own delay implementation and a PVT corrected control signal on the data delay line.

또한, 트리플 딜레이 엘리먼트를 사용하여 정밀한 딜레이(fine delay)가 구현될 수 있다. 메인 딜레이 라인에서 각 엘리먼트는 수백 피코세컨드(picosecond) 내지 나노세컨드 딜레이(nanosecond delay) 단위를 구현하고 페이즈 에러(phase error)를 0으로 맞출 수 있다. 메인 딜레이에서 너무 작은 단위의 딜레이를 구현하면 딜레이 라인이 너무 길어진다. 따라서, 마지막 트리플 딜레이 엘리먼트 부분에서 수 피코 세컨드 단위의 딜레이를 구현하는데 이 부분에서도 PVT 보정 방법이 필요하다.In addition, a fine delay can be realized using a triple delay element. In the main delay line, each element implements a picosecond to nanosecond delay unit and can set the phase error to zero. If you implement too small a delay in the main delay, the delay line becomes too long. Therefore, in order to implement delays of a few picoseconds in the last triple delay element part, a PVT correction method is also required in this part.

또한, 본 발명의 실시예에 따르면, 딜레이 라인 제어기의 제어 방법은 아날로그로 구현하기에 복잡하므로 디지털 로직으로 구현하여 혼합 디자인(mixed design)에 적합할 수 있다. 메모리 관리 방법을 사용하여 전원이 들어온 이후 처음으로 외부 입력 딜레이 값이 정해지면 딜레이 라인과 딜레이 라인 제어기를 통해 PVT 보정된 계수 값을 저장해 놓고 이후 딜레이 값이 변하는 경우 레퍼런스 값으로 사용하면 PVT 보정 시간 및 제어 절차를 줄일 수 있다. 이러한 경우, 페이즈 에러가 거의 0이 되는 상황인 락(lock)되는 시간이 감소될 수 있다.In addition, according to the embodiment of the present invention, the control method of the delay line controller is complicated to be implemented in analog, so that it can be implemented in digital logic and be suitable for mixed design. When the external input delay value is set for the first time after the power is turned on using the memory management method, the PVT-corrected coefficient value is stored through the delay line and the delay line controller. If the delay value is changed afterwards, The control procedure can be reduced. In this case, the time to lock, which is a situation where the phase error becomes almost zero, can be reduced.

도 4는 본 발명의 실시예에 따른 파이널 튜닝 딜레이 엘리먼트를 나타낸 개념도이다.4 is a conceptual diagram illustrating a final tuning delay element according to an embodiment of the present invention.

도 4를 참조하면, 파이널 딜레이 엘리먼트1(F Delay Element1)(400)의 입력p-1 과 파이널 딜레이 엘리먼트2(F Delay Eleement2)(450)의 입력p는 도 3의 딜레이 라인에서 임의의 연속된 딜레이 엘리먼트의 입력과 출력 신호이다. 딜레이 엘리먼트의 입력은 전단의 출력과 같다. 반드시 맨 마지막 단일 필요는 없고 1개의 딜레이 엘리먼트의 차이를 가지면 된다. 파이널 딜레이 엘리먼트 각각은 2개의 딜레이 엘리먼트(FDE1(410), FDE2(420))로 구성되고 첫번째 딜레이 엘리먼트인 FDE1(410)은 실제 딜레이 값을 구현하는데 사용되고 두번째 FDE2(420)는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하는데 사용될 수 있다.4, the input p of the final delay element 1 (F delay element 1) 400 and the input p of the final delay element 2 (F delay element 2) 450 are arbitrary consecutive Delay element input and output signals. The input of the delay element is equal to the output of the previous stage. There is no need for the last single, but only one delay element difference. Each of the FDE2 420 and the FDE2 410 is constituted by two delay elements (FDE1 410 and FDE2 420) and the first delay element FDE1 410 is used to implement the actual delay value. , Temperature) and the delay value according to the change of the surrounding environment.

파이널 딜레이 엘리먼트1(400)의 FDE1(410)은 최소 딜레이를 구현하는 제어 신호(최소값(minimum value))를 딜레이 라인 제어기(490)로부터 받고 파이널 딜레이 엘리먼트2(450)의 FDE1(460)은 최대 딜레이를 구현하는 제어 신호(최대값(Maximum Value))를 딜레이 라인 제어기로부터 수신할 수 있다. 딜레이 라인 제어기(490)는 파이널 페이즈 탐색기(Final Phase Dector(390))로부터 페이즈 비교 결과 신호를 받아 파이널 딜레이 엘리먼트2(450)와 파이널 딜레이 엘리먼트1(400)의 출력 신호의 페이즈(phase) 가 일치하도록 제어 신호(보상 제어(Compensation Control): 계수 값(Coefficient value))을 보내면 파이널 딜레이 엘리먼트1(400)의 FDE1(410)과 파이널 딜레이 엘리먼트2(450)의 FDE1(460)은 각각 최소 딜레이와 최대 딜레이를 가지고 FDE2(420, 470)에 의해 보정될 수 있기 때문에 파이널 딜레이 엘리먼트 1(400)과 파이널 딜레이 엘리먼트 2(450)의 전체 딜레이 차이는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 상관없이 항상 도3의 딜레이 라인에서 1개의 딜레이 엘리먼트의 딜레이 값과 일치하게 된다. 딜레이 라인 제어기는 파이널 딜레이 엘리먼트1(400) 및 파이널 딜레이 엘리먼트2(450)에서 얻어진 같은 보정된 제어 신호(보상 제어(Compensation Control): 계수(coefficient))를 파이널 딜레이 엘리먼트3(405)의 FDE2(425)에 보내고 실제 딜레이 값을 파이널 딜레이 엘리먼트3(405)의 FDE1(415)에 보내면PVT 및 주변 환경 변화에 상관없는 안정된 딜레이 신호를 출력할 수 있다.The FDE1 410 of the final delay element 1 400 receives the control signal (minimum value) implementing the minimum delay from the delay line controller 490 and the FDE1 460 of the final delay element 2 450 is the maximum (Maximum value) that implements the delay from the delay line controller. The delay line controller 490 receives the phase comparison result signal from the Final Phase Dector 390 to match the phases of the output signals of the final delay element 2 450 and the final delay element 1 400 The FDE1 410 of the final delay element 1 400 and the FDE1 460 of the final delay element 2 450 are set to have a minimum delay and a minimum delay value, respectively, when a control signal (Compensation Control: Coefficient value) The overall delay difference between the final delay element 1 400 and the final delay element 2 450 can be adjusted by the FDE2 420 and 470 with the maximum delay being the difference between PVT (Process, Voltage, Temperature) The delay value of one delay element always coincides with the delay value of the delay line of FIG. The delay line controller supplies the same corrected control signal (Compensation Control: coefficient) obtained in the final delay element 1 400 and the final delay element 2 450 to the FDE2 425 and sends the actual delay value to the FDE1 415 of the final delay element 3 405 to output a stable delay signal irrespective of the PVT and the surrounding environment change.

도5는 딜레이 라인 제어기(Delay Line Controller)의 시스템을 나타낸 개념도이다.5 is a conceptual diagram showing a system of a delay line controller.

계수 제어 메모리(Coefficient Control Memory)는 각 채널의 가변적 딜레이 엘리먼트를 제어하기 위한 계수 제어(Coefficient Control) 데이터를 임시 저장하는 공용 장소이며 효율적인 메모리 관리를 위해 일정 크기의 페이지(Page) 단위의 크기로 나누어 관리될 수 있다.Coefficient Control Memory is a common place to temporarily store Coefficient Control data for controlling variable delay elements of each channel. It is divided into the size of unit of page size for effective memory management. Can be managed.

페이지 단위의 메모리 관리를 수행하므로 각 채널의 제어 가능한 딜레이 엘리먼트의 개수는 페이지 크기에 따라 결정되고 다양한 딜레이 시간을 구현하기 위해 레지스터를 사용하여 페이지 크기를 프로그래밍할 수 있도록 할 수 있다.Since page memory management is performed, the number of controllable delay elements of each channel is determined according to the page size, and a register size can be used to program the page size to implement various delay times.

쓰기 버퍼(Write Buffer)(520)는 각 채널의 계수 제어 데이터를 계수 제어 메모리(Coefficient Control Memory)(500)에 저장하기 전에 임시 저장하고 있는 버퍼로 DMA(Direct Memory Access)에 의해 계수 제어 메모리(coefficient control memory)로 연속적으로 쓰여지는 횟수에 따라 이를 지원할 수 있게 크기가 결정될 수 있다. The write buffer 520 temporarily stores the coefficient control data of each channel in the coefficient control memory 500 before storing the data in the coefficient control memory 500. [ The number of consecutive writes to a coefficient control memory can be sized to support this.

어드레스 관리 유닛(Address Management Unit)(540)은 각 채널의 딜레이를 제어하기 위해 입력되는 계수 제어(coefficient control) 데이터의 저장할 위치의 메모리 어드레스를 생성 및 관리하는 부분으로 각 채널에 할당되는 딜레이 값에 따라 페이지(Page) 단위의 메모리를 페이지 풀 관리 유닛(Page Pool Management Unit)(560)으로부터 할당받거나 반납하는 기능을 수행하고 계수 제어 데이터를 저장하기 위한 어드레스 생성을 수행할 수 있다.The address management unit 540 generates and manages the memory address of the storage location of the coefficient control data inputted to control the delay of each channel. The address management unit 540 includes a delay value It is possible to perform the function of allocating or returning the page unit memory from the page pool management unit 560 and performing the address generation for storing the coefficient control data.

이때 발생되는 어드레스는 사용되는 메모리 영역에 따라 비연속적인 메모리 영역을 할당받거나 반납할 수 있기 때문에 비연속적일 수 있다. 메모리 컨트롤러(Memory Controller)는 각 채널의 계수 제어 데이터를 계수 제어 메모리에 쓰고 읽기를 하기 위한 제어 로직으로 여러 입력 및 출력 채널과 DMA 기능을 담당한다. 페이지 풀 관리 유닛(Page Pool Management Unit)(560)은 전체 계 수 제어 메모리를 일정 크기의 페이지 단위로 나누어 관리하며 각 채널의 어드레스 관리 유닛(Address Management Unit)(540)의 요청에 따라 새로운 페이지를 할당하거나 사용 후 필요 없게 된 페이지를 다시 풀에 받아들여 유기적으로 메모리 관리를 수행할 수 있다. 메모리 페이지 디스크립터(Memory Page Descriptor)(580)는 각 채널에 할당된 페이지의 연결 리스트(Linked List)를 관리할 수 있다. 읽기 버퍼(Read Buffer)는 각 채널을 통해 계수 제어 데이터를 출력하기 전에 계수 제어 메모리로부터 읽어온 계수 제어 데이터를 임시 저장하고 있는 버퍼이다. 딜레이 값 비교 유닛(Delay Value Comparison Unit(DVCU))(590)부분은 외부 사용자의 딜레이 설정 값의 변화 요청(각종 센서 및 네트워크를 통한 설정 값 변화 요청)에 의해 각 채널의 딜레이 값이 변화하였을 경우 이를 감지하고 현재와 전 값을 비교하여 이에 따른 페이지 단위의 메모리 할당 및 수거를 요청하게 한다.The address generated at this time may be discontinuous because the non-contiguous memory area can be allocated or returned depending on the used memory area. The memory controller is a control logic for writing the coefficient control data of each channel to the coefficient control memory and reading it, and is responsible for various input and output channels and DMA functions. The page pool management unit 560 divides the total-scale control memory into page units of a predetermined size and manages a new page according to a request from the address management unit 540 of each channel You can organize your memory management by reallocating pages that you no longer need after allocating or using them. A memory page descriptor 580 may manage a linked list of pages allocated to each channel. The Read Buffer is a buffer for temporarily storing the coefficient control data read from the coefficient control memory before outputting the coefficient control data through each channel. The delay value comparison unit (DVCU) 590 includes a delay value comparison unit (DVCU) 590 for comparing the delay value of each channel by a change request It detects this, compares the current value with the previous value, and requests page allocation and collection for each page.

또한, 여러 딜레이 값 변경 요인이 있는 딜레이 소스 루트의 제어를 수행하며 딜레이 값이 변화하였을 때 딜레이 출력의 보정을 요청하고 그 속도 및 방법을 제어한다. 각 채널의 어드레스 관리 유닛(Address Management Unit)(540)은 처음 상태에서 DVCU(Delay Value Comparison Unit)(590)으로부터 전달받은 딜레이 값에 따라 필요한 메모리의 크기를 결정한 후 페이지 풀 관리 유닛(Page Pool Management Unit)(560)으로부터 페이지를 할당 받는다. 각 채널이 수행해야 되는 딜레이 값이 각각 다르기 때문에 필요한 메모리 페이지의 개수도 다르게 된다. 페이지 크기는 각 상황에 따라 적당한 값을 가질 수 있도록 외부 입력 또는 레지스터를 사용하여 프로그래밍 가능하게 할 수 있다.In addition, it controls the delay source route having various delay value change factors and requests correction of the delay output when the delay value changes, and controls the speed and the method. The address management unit 540 of each channel determines the required memory size according to the delay value received from the DVCU (Delay Value Comparison Unit) 590 in the initial state, Unit (560). Since each channel has different delay values to be performed, the number of required memory pages is also different. The page size can be programmable using an external input or register so that it can have an appropriate value for each situation.

도 6은 본 발명의 실시예에 따른 계수 제어 데이터 메모리(coefficient control data memory)를 나타낸 개념도이다. 6 is a conceptual diagram illustrating a coefficient control data memory according to an embodiment of the present invention.

도 6에 나타난 것과 같이 처음 초기 상태에서는 채널 순서에 따라 연속적인 메모리 영역의 페이지(600)를 할당받게 되고 사용되지 않은 페이지는 페이지 풀 관리 유닛(Page Pool Management Unit)에 의해 관리될 수 있다.As shown in FIG. 6, in the initial initial state, pages 600 of consecutive memory areas are allocated according to the channel order, and unused pages can be managed by a page pool management unit.

도 7은 본 발명의 실시예에 따른 불연속 페이지 메모리(discontinued page memory)를 나타낸 개념도이다.7 is a conceptual diagram illustrating a discontinued page memory according to an embodiment of the present invention.

도 7에서는 연속되지 않은 영역의 페이지 할당의 경우를 보여주고 있다.FIG. 7 shows the case of page allocation of non-contiguous area.

각 채널 별로 계속해서 딜레이 값이 변하면서 페이지 할당 및 수거가 계속되면 연속되지 않은 영역의 페이지(700)를 할당받을 수 있다. 각 채널의 계수 제어 데이터가 처음으로 입력되면 쓰기 어드레스 포인터(Write Address Pointer)는 처음 페이지의 처음 계수 엘리먼트를 가리키고 있을 것이므로 할당받은 페이지 메모리 영역의 처음 계수 엘리먼트에 쓰기를 수행하고 쓰기 어드레스 포인터(Write Address Pointer)를 1씩 증가시켜 다음 계수 엘리먼트에 쓰기를 준비한다. 각 채널 및 딜레이 값에 따라 딜레이 라인 제어기와 딜레이 라인에 의해 보정된 계수 값이 저장되는데 다음에 딜레이 값이 변경될 경우는 기존의 저장된 계수 값을 읽어서 사용할 수 있다. 어드레스 관리 유닛(Address Management Unit)은 쓰기 어드레스 포인터(Write Address Pointer)와 읽기 어드레스 포인터(Read Address Pointer)를 관리하며 계수 제어 데이터를 쓰고 읽을 때 메모리 페이지 디스크립터(Memory Page Descriptor)의 다음 주소 포인터(Next Address Pointer) 및 유효 비트(Valid bit) 및 엔드 비트(End bit)를 업데이트할 수 있다. 어느 한계 상황에 다다르면(계수 메모리가 부족하거나 딜레이 값에 해당하는 계수 메모리가 오랫동안 사용되지 않는 경우 등) 현재 할당된 계수 메모리를 릴리즈할 수 있다.If the delay value is continuously changed for each channel and page allocation and collection continue, the page 700 of the non-continuous area can be allocated. When the coefficient control data of each channel is inputted for the first time, since the write address pointer will be pointing to the first coefficient element of the first page, it is necessary to write to the first coefficient element of the allocated page memory area and write address Pointer) by 1 to prepare for writing to the next coefficient element. The coefficient value corrected by the delay line controller and the delay line is stored according to each channel and the delay value. If the delay value is changed next, the existing stored value of the coefficient can be read and used. The address management unit manages a write address pointer and a read address pointer. The address management unit manages the next address pointer (Next) of the memory page descriptor when writing and reading the coefficient control data. Address Pointer, Valid bit, and End bit of the received data. When a certain limit is reached (such as when the coefficient memory is insufficient or the coefficient memory corresponding to the delay value is not used for a long time), the currently allocated coefficient memory can be released.

도 8은 본 발명의 실시예에 따른 메모리 페이지 디스크립터를 나타낸 개념도이다.8 is a conceptual diagram illustrating a memory page descriptor according to an embodiment of the present invention.

도8에 나타낸 것과 같이 각 채널 별로 할당된 페이지 단위의 계수 제어 메모리의 연결 상태를 나타내기 위해 메모리 페이지 디스크립터(Memory Page Descriptor)(800)를 구성하는데 계수 제어 메모리와는 별도의 영역에 메모리 페이지 디스크립터(800)를 구성할 수도 있고 계수 제어 메모리에 직접 구성할 수도 있다. 전달되는 딜레이 값에 따라 새로이 계수 메모리가 필요하면 필요한 페이지를 얻은 후 메모리 페이지 디스크립터(800)를 구성하고 딜레이 값에 따라 저장해야 되는 계수 값이 많이 필요하면 새로운 페이지를 할당받아 연결 리스트(Linked List)를 만들 수 있다. As shown in FIG. 8, a memory page descriptor 800 is configured to indicate a connection state of a coefficient control memory unit for each page, which is allocated for each channel, and a memory page descriptor (800), or may be configured directly in the coefficient control memory. If a new coefficient memory is required according to a delay value to be transmitted, a memory page descriptor 800 is formed after obtaining a necessary page, and if a large number of coefficient values to be stored according to a delay value are required, .

할당받은 계수 제어 메모리의 각 페이지에 해당하는 페이지 디스크립터 엘리먼트(Page Descriptor Element)가 존재하며 페이지 디스크립터 엘리먼트(Page Descriptor Element)의 엔드 비트(End bit)와 유효 비트(Valid bit)를 참조하고 다음 어드레스 포인터(Next Address Pointer)의 값에 따라 다음 읽기 및 쓰기에 해당하는 계수 제어 데이터 메모리의 페이지를 가져올 수 있다. 각 채널의 어드레스 관리 유닛(Address Management Unit)은 현재 읽기 및 쓰기를 수행하는 페이지의 마지막 계수 엘리먼트를 액세스한 후 각 페이지에 해당하는 다음 페이지 디스크립터 엘리먼트(Page Descriptor Element)의 다음 어드레스 포인터의 값을 참조하여 비연속적인 계수 제어 메모리 영역을 관리하게 된다.A page descriptor element corresponding to each page of the assigned coefficient control memory exists and refers to an end bit and a valid bit of a page descriptor element, The page of the coefficient control data memory corresponding to the next read and write can be fetched according to the value of the next address pointer. The address management unit of each channel accesses the last coefficient element of the page currently performing reading and writing and then refers to the value of the next address pointer of the next page descriptor element corresponding to each page Thereby managing the discontinuous coefficient control memory area.

딜레이 값에 따라 계수 메모리의 관리는 다음의 3 가지로 생각해볼 수 있다.The management of the coefficient memory according to the delay value can be considered in the following three ways.

첫번째 경우로 새로이 입력되는 딜레이 값이 현재 딜레이 값과 같은 경우, 사용하는 딜레이 엘리먼트의 개수를 같도록 사용한다면 관련 계수 엘리먼트의 개수도 동일할 수 있다. 이때 사용되는 메모리의 크기도 변화가 없다.In the first case, if the newly input delay value is the same as the current delay value, the number of related coefficient elements may be the same if the number of delay elements used is the same. At this time, the size of the memory used does not change.

두번째 경우로 작은 값의 새로운 딜레이 값이 적용되는 경우 새로 적용되고 있는 딜레이 값이 현재 적용되는 딜레이 값보다 작게 되므로 사용되는 딜레이 엘리먼트의 개수 및 계수 엘리먼트의 개수가 작아지고 이에 따른 전체적인 동작 상의 조정이 필요하다. 이 경우 조정 방법이 여러가지 있을 수 있는데, 한가지 방법으로 줄어드는 딜레이 값에 의해 현재 쓰고 있는 영역과 줄어드는 영역의 차이가 한 페이지 크기보다 크게 되면 페이지 메모리를 페이지 풀 관리 유닛에 반환한다.In the second case, when a new delay value with a small value is applied, the delay value newly applied is smaller than the current delay value, so that the number of delay elements used and the number of the coefficient elements are reduced, Do. In this case, there are various ways of adjusting. If the difference between the current area and the reduced area becomes larger than one page size due to the reduced delay value by one method, the page memory is returned to the page pool management unit.

세번째 경우로 큰 값의 새로운 딜레이 값이 적용되는 경우 현재 적용되고 있는 딜레이 값이 새로 적용되는 딜레이 값보다 작게 되므로 이때는 사용되는 딜레이 엘리먼트의 개수 및 계수 엘리먼트의 개수가 많아지고 이에 따른 전체적인 동작 상의 조정이 필요하다. 이때 한 페이지 크기의 메모리를 페이지 풀 관리 유닛으로부터 할당받을 수 있다.In the third case, when a new delay value having a large value is applied, the current applied delay value becomes smaller than the newly applied delay value, so that the number of delay elements and the number of coefficient elements used increases, need. At this time, memory of one page size can be allocated from the page pool management unit.

전술한 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.The above-described methods may be implemented in an application or may be implemented in the form of program instructions that may be executed through various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, and the like, alone or in combination.

상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.The program instructions recorded on the computer-readable recording medium may be ones that are specially designed and configured for the present invention and are known and available to those skilled in the art of computer software.

컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.

프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include machine language code such as those generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for performing the processing according to the present invention, and vice versa.

이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. It will be possible.

Claims (9)

실시간 PVT((Process, Voltage, Temperature) 보정용 고속 딜레이를 수행하는 딜레이 유닛은,
입력 신호의 딜레이 스큐(skew)의 조정을 위한 복수의 딜레이 라인; 및
상기 복수의 딜레이 라인에 대한 제어를 위한 딜레이 라인 제어기를 포함하되,
상기 복수의 딜레이 라인 각각은 데이터 딜레이 라인 및 레퍼런스 클럭 딜레이 라인을 포함하고,
상기 데이터 딜레이 라인은 데이터를 입력받아 딜레이시키고,
상기 레퍼런스 클럭 딜레이 라인은 레퍼런스 클럭을 입력으로 받아 딜레이 시키거나 상기 데이터 딜레이 라인의 딜레이 값의 보정을 위한 보정 제어 정보를 제공하는 것을 특징으로 하는 딜레이 유닛.
Delay units that perform high-speed delays for real-time PVT (Process, Voltage, Temperature)
A plurality of delay lines for adjusting a delay skew of an input signal; And
And a delay line controller for controlling the plurality of delay lines,
Each of the plurality of delay lines including a data delay line and a reference clock delay line,
The data delay line receives and delays data,
Wherein the reference clock delay line receives the reference clock as an input and provides correction control information for correcting a delay value of the data delay line.
제1항에 있어서,
상기 레퍼런스 클럭 딜레이 라인은 레퍼런스 클럭을 입력으로 받아 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 상기 데이터 딜레이 라인의 딜레이 값의 보정을 위한 상기 보정 제어 정보를 제공하는 것을 특징으로 하는 딜레이 유닛.
The method according to claim 1,
Wherein the reference clock delay line receives a reference clock and provides the correction control information for correcting a delay value of the data delay line according to PVT (Process, Voltage, Temperature) and a change in the surrounding environment. unit.
제2항에 있어서,
상기 레퍼런스 클럭 딜레이 라인 및 상기 데이터 딜레이 라인 각각 상에 딜레이 엘리먼트를 포함하고,
상기 딜레이 엘리먼트는 복수의 비정밀 딜레이 엘리먼트(Coarse Delay Element) 및 복수의 정밀 딜레이 엘리먼트(Fine Delay Element)를 포함하고,
상기 비정밀 딜레이 엘리먼트는 1차적으로 딜레이된 1차 딜레이 신호를 출력하고,
상기 정밀 딜레이 엘리먼트은 상기 1차 딜레이 신호를 추가적으로 딜레이시켜 2차 딜레이 신호를 출력하는 것을 특징으로 하는 딜레이 유닛.
3. The method of claim 2,
And a delay element on each of the reference clock delay line and the data delay line,
Wherein the delay element comprises a plurality of coarse delay elements and a plurality of fine delay elements,
The non-precision delay element outputs a first delayed primary delay signal,
Wherein the precision delay element further delays the first delay signal to output a second delay signal.
제3항에 있어서,
상기 복수의 정밀 딜레이 엘리먼트는 제1 정밀 딜레이 엘리먼트 및 제2 정밀 딜레이 엘리먼트를 포함하고,
상기 제1 정밀 딜레이 엘리먼트는 제1 하위 정밀 딜레이 엘리먼트 및 제2 하위 정밀 딜레이 엘리먼트를 포함하고,
상기 제2 정밀 딜레이 엘리먼트는 제3 하위 정밀 딜레이 엘리먼트 및 제4 하위 정밀 딜레이 엘리먼트를 포함하고,
상기 제1 하위 정밀 딜레이 엘리먼트 및 상기 제3 하위 정밀 딜레이 엘리먼트는 실제 딜레이 값을 구현하기 위해 사용되고,
상기 제2 하위 정밀 딜레이 엘리먼트 및 상기 제4 하위 정밀 딜레이 엘리먼트는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하기 위해 사용되는 것을 특징으로 하는 딜레이 유닛.
The method of claim 3,
The plurality of precision delay elements including a first precision delay element and a second precision delay element,
Wherein the first precision delay element comprises a first lower precision delay element and a second lower precision delay element,
Wherein the second precision delay element comprises a third lower precision delay element and a fourth lower precision delay element,
Wherein the first lower precision delay element and the third lower precision delay element are used to implement an actual delay value,
Wherein the second lower precision delay element and the fourth lower precision delay element are used for correcting a delay value in accordance with a change in PVT (Process, Voltage, Temperature) and the surrounding environment.
제3항에 있어서,
상기 딜레이 엘리먼트는 복수의 파이널 튜닝 딜레이 엘리먼트를 더 포함하고,
상기 복수의 파이널 튜닝 딜레이 엘리먼트는 제1 파이널 튜닝 딜레이 엘리먼트, 제2 파이널 튜닝 딜레이 엘리먼트 및 제3 파이널 튜닝 딜레이 엘리먼트 각각을 포함하고,
상기 제1 파이널 튜닝 딜레이 엘리먼트 및 상기 제2 파이널 튜닝 딜레이 엘리먼트는 PVT(Process, Voltage, Temperature) 및 주변 환경의 변화에 따른 딜레이 값을 보정하는 역할을 하고,
상기 제3 파이널 튜닝 딜레이 엘리먼트는 실제적인 딜레이 값을 구현하는데 사용되는 것을 특징으로 하는 딜레이 유닛.
The method of claim 3,
Wherein the delay element further comprises a plurality of final tuning delay elements,
The plurality of final tuning delay elements each including a first final tuning delay element, a second final tuning delay element and a third final tuning delay element,
The first and second tuning delay elements compensate a delay value according to PVT (Process, Voltage, Temperature)
And the third final tuning delay element is used to implement an actual delay value.
제3항에 있어서,
상기 제1 파이널 튜닝 딜레이 엘리먼트는 최소 딜레이를 구현하는 제어 신호(MinimumValue)를 상기 딜레이 라인 제어기로부터 수신하고, 상기 제2 파이널 튜닝 딜레이 엘리먼트는 최대 딜레이를 구현하는 제어신호(MaximumValue)를 상기 딜레이 라인 제어기로부터 수신하는 것을 특징으로 하는 딜레이 유닛.
The method of claim 3,
Wherein the first fin tuning delay element receives a control signal (MinimumValue) implementing a minimum delay from the delay line controller, and the second final tuning delay element receives a control signal (MaximumValue) implementing a maximum delay from the delay line controller To the delay unit.
제6항에 있어서,
상기 딜레이 라인 제어기는 레퍼런스 클럭(Reference Clock)과 딜레이 라인을 거친 출력 신호인 피드백 클럭(Feedback Clock)의 위상차에 따라 상기 딜레이 엘리먼트의 딜레이 값을 제어하여 위상차를0으로 만드는 것을 특징으로 하는 딜레이 유닛.
The method according to claim 6,
Wherein the delay line controller controls a delay value of the delay element according to a phase difference between a reference clock and a feedback clock, which is an output signal passing through a delay line, to make the phase difference zero.
제7항에 있어서,
상기 딜레이 라인 제어기는 계수 제어 메모리를 포함하고,
상기 계수 제어 메모리는 각 채널의 가변적 딜레이 엘리먼트를 제어하기 위한 계수 제어 제이터를 임시 저장하는 공용 장소이며 효율적인 메모리 관리를 위해 일정 크기의 페이지(Page) 단위의 크기로 나누어 관리되는 것을 특징으로 하는 딜레이 유닛.
8. The method of claim 7,
Wherein the delay line controller comprises a coefficient control memory,
Wherein the coefficient control memory is a common place for temporarily storing a coefficient control element for controlling a variable delay element of each channel and is managed by dividing into a page unit size of a predetermined size for efficient memory management. unit.
제8항에 있어서,
상기 딜레이 라인 제어기는 DVCU(Delay Value Comparison Unit)을 더 포함하고,
상기 DVCU는 딜레이 설정 값의 변화 요청에 의해 각 채널의 딜레이 값이 변화하였을 경우 이를 감지하고 현재 값과 이전 값을 비교하여 이에 따른 페이지 단위의 메모리 할당 및 수거를 요청하고,
상기 DVCU는 여러 딜레이 값 변경 요인이 있는 딜레이 소스 루트의 제어를 수행하며 상기 딜레이 값이 변화하였을 때 딜레이 출력의 보정을 요청하고 그 속도 및 방법을 제어하는 것을 특징으로 하는 딜레이 유닛.
9. The method of claim 8,
The delay line controller further includes a delay value comparison unit (DVCU)
The DVCU detects a delay value of each channel when a delay set value change request is received, compares a current value with a previous value, and requests memory allocation and collection in units of pages according to the current value,
Wherein the DVCU performs control of a delay source route having various delay value change factors and requests correction of the delay output when the delay value changes, and controls the speed and method thereof.
KR1020170176804A 2017-12-21 2017-12-21 Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line KR102042742B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170176804A KR102042742B1 (en) 2017-12-21 2017-12-21 Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170176804A KR102042742B1 (en) 2017-12-21 2017-12-21 Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line

Publications (2)

Publication Number Publication Date
KR20190075316A true KR20190075316A (en) 2019-07-01
KR102042742B1 KR102042742B1 (en) 2019-11-27

Family

ID=67255615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170176804A KR102042742B1 (en) 2017-12-21 2017-12-21 Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line

Country Status (1)

Country Link
KR (1) KR102042742B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320074A (en) * 1997-05-16 1998-12-04 Fujitsu Ltd Skewness reduction circuit and semiconductor device
KR19990081108A (en) * 1998-04-25 1999-11-15 김영환 Clock signal delay device
KR20050089944A (en) 2005-08-11 2005-09-09 김선장 The residents change number make and authentication
JP2011188042A (en) * 2010-03-05 2011-09-22 Nec Corp Digital signal processing circuit, digital signal processing method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320074A (en) * 1997-05-16 1998-12-04 Fujitsu Ltd Skewness reduction circuit and semiconductor device
KR19990081108A (en) * 1998-04-25 1999-11-15 김영환 Clock signal delay device
KR20050089944A (en) 2005-08-11 2005-09-09 김선장 The residents change number make and authentication
JP2011188042A (en) * 2010-03-05 2011-09-22 Nec Corp Digital signal processing circuit, digital signal processing method, and program

Also Published As

Publication number Publication date
KR102042742B1 (en) 2019-11-27

Similar Documents

Publication Publication Date Title
KR101837239B1 (en) Semiconductor device
US9159382B2 (en) Method and apparatus for timing adjustment
US8395430B2 (en) Digital phase locking loop and method for eliminating glitches
US10097189B2 (en) Semiconductor device
JP2017528838A (en) Transmitter lane skew adjustment
US7430142B2 (en) Skew adjusting circuit and semiconductor integrated circuit
US10067702B2 (en) Memory system with switchable operating bands
US9286961B1 (en) Memory controller half-clock delay adjustment
US20090238016A1 (en) Circuits to delay signals from a memory device
WO2020239027A1 (en) Fpga circuit, system, configuration method, and computer readable medium
US20180059713A1 (en) Semiconductor device
US11742010B2 (en) Controller and semiconductor system including a controller
US8140803B2 (en) Structure for reducing latency associated with read operations in a memory system
KR20160033381A (en) Multi-channel delay locked loop
US9893720B2 (en) Integrated circuit comprising circuitry to change a clock signal frequency while a data signal is valid
US20120243351A1 (en) Semiconductor device
TW202223889A (en) Semiconductor integrated circuit, memory controller, and memory system
KR20190075316A (en) Method and apparatus for high speed delay for real-time PVT(Process, Voltage, Temperature) compensation using delay line
WO2012060066A1 (en) Delay circuit, delay controller, memory controller, and information terminal
WO2014112509A1 (en) Output signal generation device, semiconductor device and output signal generation method
US20200342923A1 (en) Memory systems having a plurality of memory devices and methods of training the memory systems
JP6058835B2 (en) Semiconductor device
US20150302909A1 (en) Semiconductor memory apparatus and operating method of the same
JP2008225775A (en) Memory control unit
KR20140082174A (en) Semiconductor Memory Apparatus and Operating Method Using the same

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right