KR100775903B1 - Apparatus for restoring data for serial data rink - Google Patents
Apparatus for restoring data for serial data rink Download PDFInfo
- Publication number
- KR100775903B1 KR100775903B1 KR1020050098531A KR20050098531A KR100775903B1 KR 100775903 B1 KR100775903 B1 KR 100775903B1 KR 1020050098531 A KR1020050098531 A KR 1020050098531A KR 20050098531 A KR20050098531 A KR 20050098531A KR 100775903 B1 KR100775903 B1 KR 100775903B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- flag
- transition
- change data
- transition change
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Abstract
본 발명은 직렬데이터 링크를 위한 데이터 복원장치에 관한 것으로, 고속으로 데이터를 복원할 수 있는 직렬데이터 링크를 위한 데이터 복원장치를 제공한다. 이를 위한 본 발명은 입력되는 직렬데이터를 기준 클록에 대하여 3배로 오버샘플링하는 오버샘플러와; 상기 오버샘플링된 직렬데이터의 인접 비트 사이의 데이터 천이를 검출하는 천이검출기와; 상기 검출된 천이결과에 따라 상기 오버샘플링된 직렬데이터를 재정렬하도록 잠금(locking)을 제어하는 잠금제어기와; 상기 오버샘플링된 직렬데이터를 상기 잠금제어기의 제어에 따라 재정렬하고, 일정단위의 윈도우로 분할하여 해당 직렬데이터를 추정하는 데이터 추정기를 포함하여 이루어진 것을 특징으로 한다. 상기와 같은 구성에 의해 본 발명은 기준 클록내에서 데이터를 복원할 수 있고, 따라서 고속의 데이터 링크에 적합한 효과가 있다. The present invention relates to a data restoration apparatus for a serial data link, and provides a data restoration apparatus for a serial data link capable of restoring data at high speed. The present invention for this purpose is an oversampler for oversampling the input serial data three times the reference clock; A transition detector for detecting a data transition between adjacent bits of the oversampled serial data; A lock controller for controlling a lock to reorder the oversampled serial data according to the detected transition result; And a data estimator for rearranging the oversampled serial data according to the control of the lock controller and dividing the oversampled serial data into a window of a predetermined unit to estimate the serial data. With the above configuration, the present invention can recover data within the reference clock, and thus has an effect suitable for a high speed data link.
직렬데이터, 링크, 복원장치, 천이검출, 잠금, 오퍼샘플, DVI Serial Data, Link, Restoration Device, Transition Detection, Lock, Offer Sample, DVI
Description
도 1은 본 발명의 실시예에 따른 직렬 데이터 링크를 위한 데이터 복원장치의 구성을 나타낸 블록도.1 is a block diagram showing the configuration of a data recovery apparatus for a serial data link according to an embodiment of the present invention.
도 2는 도 1의 일부의 세부구성을 개략적으로 나타낸 블록도.FIG. 2 is a block diagram schematically showing a detailed configuration of a part of FIG. 1. FIG.
도 3은 본 발명의 실시예에 따른 데이터 복원 예를 설명하기 위한 도면.3 is a view for explaining an example of data restoration according to an embodiment of the present invention;
도 4는 직렬 데이터 링크의 데이터 타이밍도.4 is a data timing diagram of a serial data link.
* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings
10 : 데이터 복원장치 110 : 오버샘플러10: data recovery device 110: oversampler
120 : 천이검출기 122 : 1차 천이검출부120: transition detector 122: primary transition detector
124 : 2차 천이검출부 130 : 잠금제어기124: second transition detection unit 130: lock controller
132 : 플래그 합산기 134 : 부분합산기 132: flag summer 134: partial summer
136 : 잠금결정부 140 : 데이터 추정기136: lock determining unit 140: data estimator
본 발명은 직렬데이터 링크를 위한 데이터 복원장치에 관한 것으로, 특히, 오버샘플링된 데이터의 인접 비트 사이의 데이터 천이를 검색하고, 일정단위로 분할하여 천이된 영역을 근거로 고속으로 데이터를 복원할 수 있는 직렬데이터 링크를 위한 데이터 복원장치에 관한 것이다. BACKGROUND OF THE
도 4는 직렬 데이터 링크의 데이터 타이밍도이다. 4 is a data timing diagram of a serial data link.
일반적으로, 도 4에 도시된 바와 같이, 지터(jitter)나 데이터 스큐(skew)에 의해 기준 클록 사이에 데이터의 천이가 발생하며, 이러한 천이는 데이터의 왜곡으로 작용할 수 있으며, 이러한 왜곡으로부터 데이터를 정상적으로 복원한 방법으로 데이터를 오버샘플링을 하고 오버샘플링된 데이터를 기준으로 원래의 데이터를 복원한다. In general, as shown in FIG. 4, data transitions occur between the reference clocks due to jitter or data skew, which may act as a distortion of the data, and the data may be converted from the distortion. The data is resampled in the normal way, and the original data is restored based on the oversampled data.
그러나, 도 4에 도시된 바와 같이, 기준 클록 사이의 데이터는, 보통(normal)의 경우 대부분의 기간동안 일정한 값을 유지하는데 반하여, 데이터의 속도에 따라서는 대부분의 기간동안 상이한 값을 갖는 경우가 있으며, 이때, 3배의 오버샘플링을 하더라도 3개의 오버샘플링 데이터중에서 하나만이 원래의 데이터를 유지하므로, 종래의 데이터 복원방법에 의해서는 데이터를 정상적으로 복원하기 어려운 문제점이 있다. However, as shown in FIG. 4, the data between the reference clocks maintains a constant value for most of the period in the normal case, whereas the data between the reference clocks has a different value for most of the period depending on the speed of the data. At this time, even if three times oversampling, only one of the three oversampling data maintains original data, which makes it difficult to restore the data normally by the conventional data restoration method.
더욱이, 종래의 직렬 데이터 링크를 위한 데이터 복원장치는 최적의 데이터 복원에 필요한 대칭된 데이터 비트의 위치를 찾기 위하여 위상제어기의 위상을 조절함으로써, 샘플링 클록의 위상을 제어하는데, 이때, 데이터 비트율이 높은 경우에는 데이터를 정상적으로 복원하기 위하여 위상제어기 등의 동작 주파수를 증가시켜야 하므로, 복원 장치 내부의 동작 주파수가 상대적으로 증가하는 문제점이 있 다. Furthermore, conventional data recovery apparatus for serial data link controls the phase of the sampling clock by adjusting the phase of the phase controller to find the position of the symmetric data bits necessary for optimal data recovery, wherein the data bit rate is high. In this case, since the operating frequency of the phase controller or the like must be increased in order to restore data normally, there is a problem in that the operating frequency inside the restoration apparatus is relatively increased.
본 발명은 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, 오버샘플링된 데이터의 인접 비트 사이의 데이터 천이를 검색하고, 데이터 천이를 이용하여 고속으로 데이터를 복원할 수 있는 직렬데이터 링크를 위한 데이터 복원장치를 제공하는 것을 목적으로 한다.The present invention has been proposed to solve the above problems, and it is possible to retrieve data transitions between adjacent bits of oversampled data, and to recover data for a serial data link that can recover data at high speed using the data transitions. It is an object to provide a device.
상기와 같은 목적을 달성하기 위한 본 발명은 입력되는 직렬데이터를 기준 클록에 대하여 3배로 오버샘플링하는 오버샘플러와; 상기 오버샘플링된 직렬데이터의 인접 비트 사이의 데이터 천이를 검출하는 천이검출기와; 상기 검출된 천이결과에 따라 상기 오버샘플링된 직렬데이터를 재정렬하도록 잠금(locking)을 제어하는 잠금제어기와; 상기 오버샘플링된 직렬데이터를 상기 잠금제어기의 제어에 따라 재정렬하고, 일정단위의 윈도우로 분할하여 해당 직렬데이터를 추정하는 데이터 추정기를 포함하여 이루어진 것을 특징으로 한다.The present invention for achieving the above object is an oversampler for oversampling the input serial data three times the reference clock; A transition detector for detecting a data transition between adjacent bits of the oversampled serial data; A lock controller for controlling a lock to reorder the oversampled serial data according to the detected transition result; And a data estimator for rearranging the oversampled serial data according to the control of the lock controller and dividing the oversampled serial data into a window of a predetermined unit to estimate the serial data.
바람직하게는 상기 천이검출기가 상기 오버샘플링된 직렬데이터를 일정단위의 윈도우로 분할하고, 인접 비트 사이의 데이터 천이를 검출하여 제 1 천이변경 데이터 및 제 1 플래그를 생성하는 다수의 1차 천이검출부와; 상기 제 1 천이변경 데이터를 일정단위의 윈도우로 분할하고, 상기 제 1 플래그를 이용하여 제 2 천이변경 데이터 및 제 2 플래그를 생성하는 다수의 2차 천이검출부를 포함할 수 있다.Preferably, the transition detector divides the oversampled serial data into a window of a predetermined unit, and detects a data transition between adjacent bits, thereby generating a plurality of first transition change data and a first flag. ; The first transition change data may be divided into a window of a predetermined unit, and a plurality of secondary transition detection units generating second transition change data and a second flag using the first flag may be included.
바람직하게는 상기 잠금제어기가 상기 제 2 천이변경 데이터와 제 2 플래그 를 앤드 연산하고, 상기 앤드연산 결과와 상기 제 2 천이변경 데이터를 출력하는 다수의 플래그 합산기와; 상기 다수의 플래그 합산기의 각 출력을 전반부, 중반부, 후반부로 분리하여 각각의 합을 연산하는 부분합산기와; 상기 부분합산결과에 따라 상기 오버샘플링된 직렬데이터의 잠금 위치를 결정하는 잠금결정부를 포함할 수 있다. Preferably, the lock controller performs an AND operation on the second transition change data and the second flag and outputs the AND operation result and the second transition change data; A partial adder for dividing each output of the plurality of flag adders into a first half, a middle half, and a second half to calculate respective sums; The lock determining unit may determine a lock position of the oversampled serial data according to the partial summation result.
바람직하게는 상기 부분합산기가 상기 다수의 플래그 합산기 각각으로부터 첫번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 전반부 합산기와; 상기 다수의 플래그 합산기 각각으로부터 두번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 중반부 합산기와; 상기 다수의 플래그 합산기 각각으로부터 세번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 후반부 합산기를 포함할 수 있다. And a first half adder for adding the second transition change data and the end result outputted first from each of the plurality of flag adders. A mid-sum adder for summing the second transition change data and the end result output second from each of the plurality of flag adders; And a second half adder configured to add the second transition change data and the end result, the third output from each of the plurality of flag adders.
바람직하게는 상기 윈도우가 4비트 윈도우일 수 있다. Preferably, the window may be a 4-bit window.
이하, 본 발명의 바람직한 실시예를 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 실시예에 따른 직렬 데이터 링크를 위한 데이터 복원장치의 구성을 나타낸 블록도이고, 도 2는 도 1의 일부의 세부구성을 개략적으로 나타낸 블록도이다. 1 is a block diagram showing the configuration of a data recovery apparatus for a serial data link according to an embodiment of the present invention, Figure 2 is a block diagram schematically showing a detailed configuration of a portion of FIG.
데이터 복원장치(10)는 입력되는 직렬데이터를 기준 클록에 대하여 3배로 오버샘플링하는 오버샘플러(110)와, 오버샘플링된 직렬데이터의 인접 비트 사이의 데이터 천이를 검출하는 천이검출기(120)와, 상기 검출된 천이결과에 따라 상기 오버 샘플링된 직렬데이터를 재정렬하도록 잠금을 제어하는 잠금제어기(130)와, 상기 오버샘플링된 직렬데이터를 잠금제어기(130)의 제어에 따라 재정렬하고, 일정단위의 윈도우로 분할하여 해당 직렬데이터를 추정하는 데이터 추정기(140)로 구성된다. The
오버샘플러(110)는 지터나 데이터 스큐에 의한 신호의 왜곡을 검출하기 위하여 제공되는 기준 클록보다 빠른 속도로 데이터를 샘플링한다. 이러한 오버샘플링은 신호의 왜곡으로부터 데이터를 정상적으로 복원하기 위하여 기준 클록 내에서 발생하는 데이터 천이를 검출하는데 사용된다. The
천이검출기(120)는 오버샘플러(110)에 의해 오버샘플링된 직렬데이터를 일정단위의 윈도우로 분할하고, 인접 비트 사이의 데이터 천이를 검출하여 제 1 천이변경 데이터 및 제 1 플래그를 생성하는 다수의 1차 천이검출부(122a~c)와, 상기 제 1 천이변경 데이터를 일정단위의 윈도우로 분할하고, 상기 제 1 플래그를 이용하여 제 1 천이변경 데이터 및 제 2 플래그를 생성하는 다수의 2차 천이검출부(124a~c)로 구성된다. The
1차 천이검출부(122a~c)는, 예를 들면, 4비트 윈도우에 의해 오버샘플링된 데이터를 입력받는데, 도 2에 도시된 바와 같이, 오버샘플링된 이전 데이터의 하위 1비트와 오버샘플링된 현재 데이터의 3비트를 기초로 인접 비트 사이의 데이터 천이를 검출하고, 이에 따라 하기의 표 1의 일차천이 검출맵에 의해 제 1 천이변경 데이터 및 제 1 플래그를 출력한다. The primary
상기 표 1에서, 오버샘플링 데이터는 4비트 윈도우에 의해 분할되어 오버샘플러(110)로부터 입력되는 오버샘플링 데이터이고, 천이데이터는 오버샘플링 데이터의 인접 비트 사이의 데이터 천이를 나타내며, 제 1 천이변경 데이터는 천이된 데이터, 즉, "1"이 2개 이상일 경우 후술하는 잠금제어기(130)의 가변적인 연산을 위해 천이데이터를 변경한 것이고, 제 1 플래그는 이를 나타낸 것이다.
보다 상세하게는, 천이 데이터에서 "1"이 1이하인 경우, 예를 들면, "000, 001, 010, 100"인 경우에는 천이 데이터를 제 1 천이변경 데이터로 생성하고 해당 제 1 플래그를 "0"으로 설정한다. 또한, 천이 데이터에서 "1"이 2인 경우, 예를 들면, "011, 110, 101"인 경우는 상위 천이 비트를 "0"으로 반전시켜 "001, 010, 001"로 변경하여 제 1 천이변경 데이터를 생성하고, 해당 제 1 플래그를 "1"로 설정한다. 한편, 천이 데이터에서 "1"인 3인 경우, 예를 들면, "111"인 경우에는 데이터 에러로 판단하여 가변적 연산에 반영하지 않도록 원래 값에 따른 제 1 천이변경 데이터를 생성한다.In Table 1, the oversampling data is oversampling data divided by a 4-bit window and input from the
More specifically, when "1" is 1 or less in the transition data, for example, "000, 001, 010, 100", the transition data is generated as the first transition change data and the first flag is set to "0". Set to "." Also, in the transition data, when "1" is 2, for example, "011, 110, 101", the upper transition bit is inverted to "0" and changed to "001, 010, 001" so that the first transition is made. The change data is generated and the first flag is set to "1". On the other hand, when the transition data is "1" of 3, for example, "111", the first transition change data according to the original value is generated so that it is determined as a data error and is not reflected in the variable operation.
2차 천이검출부(124a~c)는, 예를 들면, 4비트 윈도우에 의해 제 1 천이변경 데이터를 입력받는데, 도 2에서 두번째 2차 천이검출부(124b)를 기준으로 설명하면, 이전단의 1차 천이검출부(122a)로부터 하위 2비트의 제 1 천이변경 데이터와 제 1 플래그가 입력되고, 현재단의 1차 천이검출부(122b)로부터 상위 2비트의 제 1 천이변경 데이터와 제 1 플래그가 입력된다. The secondary
또한, 2차 천이검출부(124a~c)는 입력된 4비트의 제 1 천이변경 데이터와 전단의 제 1 플래그를 기초로 하기의 표 2 및 표 3의 이차천이 검출맵에 의해 제 2 천이변경 데이터 및 제 2 플래그를 출력한다. Further, the secondary
상기 표 2에서, 천이데이터는 4비트 윈도우에 의해 분할되어 1차 천이검출부(122a,b)로부터 2비트씩 입력되는 천이데이터이고, 전단의 플래그는 전단의 1차 천이검출부(122a)로부터 입력되는 제 1 플래그이며, 제 2 천이변경 데이터는 잠금제어기(130)에서 잠금 위치를 결정하기 위해 사용되는 가변적 연산을 위한 것이다.
보다 상세하게는, 천이 데이터의 상위 3비트를 제 2 천이변경 데이터로 선택하되, 상위 2비트 또는 하위 2비트, 즉 현재단의 1차 천이검출부(122b) 또는 이전단의 1차 천이검출부(122a)의 출력인 제 1 변경천이 데이터가 "11"인 경우에는 앞서 설명한 바와 같이, 데이터 에러로 판단하고, 해당 데이터가 가변적 연산에 영향을 미치지 않도록 제 2 변경천이 데이터를 "000"으로 설정한다.
그외, 도 4에 도시된 바와 같이, 고속(minimum) 데이터에 대해 오버샘플링된 데이터가 원래의 데이터를 충분히 반영하지 못한 경우를 고려하여, 천이 데이터가 "0101, 0110, 1010"인 경우에는 별도로 설정한다. 예를 들면, "0101"인 경우에는 가변적 연산에 영향을 미치지 않도록 제 2 변경데이터는 "000"으로 설정하고, 제 2 플래그만 별도의 연산을 수행한다. 또한, "0110, 1010"인 경우에는 전단의 제 1 플래그를 고려하여 전단의 제 1 플래그가 "1"인 경우에는 이미 가변적 연산을 위한 플래그 설정이 이루어진 것이므로 제 2 천이변경 데이터는 "000"으로 설정하고, 전단의 제 1 플래그가 "0"인 경우, 가변적 연산을 위한 플래그 설정이 이루어지지 않았으므로, 상위 3비트를 제 2 천이변경 데이터로 설정하되 "1"이 2개이기 때문에 표 1에서와 같이 상위 천이 비트를 "0"으로 반전시켜 "001, 001"로 변경한다. In the above Table 2, the transition data is transition data inputted by two bits from the primary
In more detail, the upper three bits of the transition data are selected as the second transition change data, and the upper two bits or the lower two bits, that is, the primary
In addition, as shown in FIG. 4, considering the case where the oversampled data for the minimum data does not sufficiently reflect the original data, the transition data is set separately when the transition data is "0101, 0110, 1010". do. For example, in the case of "0101", the second change data is set to "000" so as not to affect the variable operation, and only the second flag performs a separate operation. In the case of "0110, 1010", considering the first flag of the front end, if the first flag of the front end is "1", since the flag for variable operation has already been set, the second transition change data is "000". If the first flag is set to "0", the flag for variable operation is not set. Therefore, the upper 3 bits are set as the second transition change data. As shown above, the upper transition bit is inverted to "0" and changed to "001, 001".
상기 표 3에서, 천이데이터는 표 2의 천이데이터와 동일한 것을 나타내며, 전단의 플래그는 전단의 1차 천이검출부(122a)로부터 입력되는 제 1 플래그이고, 후단의 플래그는 후단의 1차 천이검출부(122b)로부터 입력되는 제 1 플래그이며, 제 2 플래그는 제 2 천이변경 데이터와 함께 잠금제어기(130)의 가변적 연산에 사용된다. In Table 3, the transition data indicates the same as the transition data in Table 2, and the flag of the front end is the first flag input from the primary
여기서, ~()는 부정(NOT) 연산을 의미하며, and는 논리곱(AND) 연산을 의미한다.
보다 상세하게는, 앞서 설명한 고속 데이터를 고려한 경우, 전단의 1차 천이검출부(122a)와 후단의 1차 천이검출부(122b) 모두에서 제 1 플래그를 설정하지 않은 경우에만 가변적 연산에 반영하도록 제 2 플래그를 "1"로 설정하고, 그외에는 이미 반영된 것이므로 "0"으로 설정한다.
또한, 고속 데이터를 고려하지 않은 그외의 경우에는 후단의 1차 천이검출부(122b)의 제 1 플래그를 가변적 연산에 반영하도록 제 2 플래그로 설정한다.Here, ~ () denotes a NOT operation, and and denotes an AND operation.
More specifically, in consideration of the high-speed data described above, the second operation is to be reflected in the variable operation only when the first flag is not set in both the first and
In other cases in which high-speed data is not taken into consideration, the second flag is set so that the first flag of the primary
이와 같은 1차 천이검출부(122a~c)와 2차 천이검출부(124a~c)의 수는 처리하고자 하는 직렬데이터의 특성에 따라 결정되는데, 예를 들면, DVI(Digital Visual Interface)의 경우에는 하나의 기준클록당 10비트가 처리되므로, 1차 천이검출부(122a~c)와 2차 천이검출부(124a~c)는 각각 10개로 구성될 수 있다. The number of such
잠금제어기(130)는 2차 천이검출부(124)로부터 출력되는 제 2 천이변경 데이터와 제 2 플래그를 앤드 연산하고, 상기 앤드연산 결과와 상기 제 2 천이변경 데이터를 출력하는 다수의 플래그 합산기(132a~c)와, 다수의 플래그 합산기의 각 출력을 전반부, 중반부, 후반부로 분리하여 각각의 합을 연산하는 부분합산기(134a~c)와, 부분합산기(134a~c)의 합산결과에 따라 오버샘플링된 직렬데이터의 잠금 위치를 결정하는 잠금결정부(136)로 구성된다. The
플래그 합산기(132a~c)는 제 2 천이데이터를 각 부분별로 가산하기 전에 제 2 플래그에 의해 가산치를 부여하기 위한 것으로, 도 2에서 두번째 플래그 합산기(132b)를 기준으로 설명하면, 이전단의 2차 천이검출부(124a)로부터 제 2 플래그와 제 2 천이변경 데이터의 하위 1비트가 입력되고, 현재단의 2차 천이검출부(124a)로부터 제 2 천이변경 데이터의 상위 2비트가 입력된다.The
또한, 플래그 합산기(132a~c)는 제 2 천이변경 데이터와 제 2 플래그를 앤드 연산하는데, 이는 결과적으로 제 2 플래그가 "1"인 제 2 천이변경 데이터 중에서 그 값이 "1"인 비트에만 가중치를 부여하기 위한 것이다. In addition, the
이와 같은 플래그 합산기(132a~c)의 수는 처리하고자 하는 직렬데이터의 특성에 따라 결정되는데, 예를 들면, DVI의 경우에는 하나의 기준클록당 10비트가 처리되므로, 10개로 구성될 수 있다. The number of
부분합산기(134a~c)는 다수의 플래그 합산기(132a~c) 각각으로부터 첫번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 전반부 합산기(134a)와, 다수의 플래그 합산기(132a~c) 각각으로부터 두번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 중반부 합산기(134b)와, 다수의 플래그 합산기(132a~c) 각각으로부터 세번째로 출력되는 상기 제 2 천이변경 데이터와 상기 앤드결과를 합산하는 후반부 합산기(134c)로 구성된다. The
잠금결정부(136)는 각 부분합산기(134a~c)의 합산결과 중에서 가장 큰 것을 선택하여 오버샘플링 데이터를 재정렬하기 위한 잠금 위치를 결정하는데, 이때, 부분의 합이 4이상일 경우 유효한 천이데이터로 인식하여 잠금을 수행한다. The
또한, 잠금결정부(136)는 각 부분별 합이 가장 큰 것이 전반부인 경우에는 전반부부터, 중반부인 경우에는 중반부부터, 후반부인 경우에는 후반부부터 데이터의 시작을 지정하여 잠금을 수행한다. In addition, the
데이터 추정기(140)는 잠금제어기(130)의 제어에 따라 오버샘플링 데이터를 재정렬하는데, 오버샘플링 데이터는 데이터 복원을 위한 대칭적인 형태에 근접하게 된다. The
여기서, 상기와 같이 재정렬된 데이터는 천이 시간과 전송라인의 특성에 의해 대칭형 데이터가 아닐 수도 있으므로, 하기의 표 4와 같은 데이터 복원맵에 의해 해당 데이터를 복원한다. Here, since the rearranged data may not be symmetrical data due to the transition time and the characteristics of the transmission line, the rearranged data is restored by the data restoration map as shown in Table 4 below.
즉, 데이터 추정기(140)는 재정렬된 오버샘플링 데이터를, 예를 들면, 4비트 윈도우에 의해 선택하고, 하기의 표 4에 의해 해당 데이터를 추정한다. That is, the
상기 표 4에서, 선택된 오버샘플링 데이터는 천이검출기(120)를 통하여 입력되는 오버샘플링 데이터를 잠금제어기(130)의 잠금결정부(136)에 따라 잠금된 데이터중에서 4비트씩 선택한 것이며, 복원 데이터는 선택된 오버샘플링 데이터에 해당하는 데이터를 추정한 것이다.
보다 구체적으로는, 4비트 윈도우에 의해 선택된 오버샘플링 데이터는 도 4에 도시된 바와 같이, 하위 3비트가 해당의 데이터에 해당되므로 이중 중간비트, 즉, 최하위로부터 2번째 비트를 해당 데이터로 복원하되, 처음 천이 위치를 고려하여 복원된다. 예를 들면, "0001"인 경우 복원 데이터는 최하위로부터 2번째 비트인 "0"이지만, 천이위치가 3번째, 즉, 해당 천이 데이터가 "001"이므로 하위 비트인 "1"로 복원된다. 또한, "0100"인 경우 복원 데이터는 "0"이지만, 천이 데이터가 "110"이므로 상위비트인 "1"로 복원된다. 한편, "0101, 1010"인 경우 천이 데이터가 "111"이므로 이는 무시하고 기본적인 원리에 의해 데이터를 복원하는데. 즉, "0,1"로 복원한다.
표 4에 도시된 바와 같은 데이터 복원 알고리즘은 일반적인 것으로 그외의 다른 알고리즘을 채용할 수도 있다. In Table 4, the selected oversampling data is selected by over 4 bits from the data locked by the
More specifically, as shown in FIG. 4, the oversampling data selected by the 4-bit window restores the double middle bit, that is, the second bit from the lowest to the corresponding data since the lower three bits correspond to the corresponding data. In this case, the first transition is restored in consideration of the position. For example, in the case of "0001", the reconstruction data is "0" which is the second bit from the lowest, but is restored to "1" which is the lower bit because the transition position is the third, that is, the corresponding transition data is "001". In the case of "0100", the reconstruction data is "0". However, since the transition data is "110", the reconstruction data is reconstructed to "1", which is the higher bit. On the other hand, in case of "0101, 1010", since the transition data is "111", it ignores this and restores data by a basic principle. That is, it restores to "0,1".
The data recovery algorithm as shown in Table 4 is generic and may employ other algorithms.
이하, 도 4를 참조하여 본 발명의 실시예에 따른 직렬데이터 링크를 위한 데이터 복원장치의 동작을 설명한다.Hereinafter, an operation of a data recovery apparatus for a serial data link according to an embodiment of the present invention will be described with reference to FIG. 4.
도 4를 본 발명의 실시예에 따른 데이터 복원 예를 설명하기 위한 도면이다.4 is a view for explaining an example of data restoration according to an embodiment of the present invention.
먼저, 오버샘플러(110)가 입력되는 직렬데이터를 3배로 오버샘플링하면, 1차 천이검출부(122)는 이를, 도 4에 도시된 바와 같이, 4비트 윈도우로 분할하여 인접 비트 사이의 천이데이터를 검출한다. First, when the
1차 천이검출부(122)는 천이데이터를 이용하여 표 1에 도시된 일차천이 검출맵을 이용하여 제 1 천이변경 데이터 및 제 1 플래그를 생성한다. The primary transition detection unit 122 generates the first transition change data and the first flag using the primary transition detection map shown in Table 1 using the transition data.
예를 들면, 오버샘플링 데이터의 첫번째 데이터, 즉, "1111"에 대하여, 천이데이터는 "000"이고, 이에 대한 제 1 천이변경 데이터는, 표 1에 도시된 바와 같이, "000"이고, 제 1 플래그는 "0"이다. For example, for the first data of oversampling data, that is, "1111", the transition data is "000", and the first transition change data thereof is "000", as shown in Table 1, The 1 flag is "0".
또한, 오버샘플링된 데이터의 10번째 데이터, 즉, "1011"에 대하여 천이데이터는 "110"이고, 이에 대한 제 1 천이변경 데이터는 "010"이며, 제 1 플래그는 "1"이다. In addition, the transition data is "110" for the tenth data of the oversampled data, that is, "1011", the first transition change data is "010", and the first flag is "1".
다음, 2차 천이검출부(124)는 제 1 천이변경 데이터를, 도 4에 도시된 바와 같이, 4비트 윈도우로 분할하여 표 2 및 표 3에 도시된 이차천이 검출맵을 이용하여 제 2 천이변경 데이터 및 제 2 플래그를 생성한다.Next, the secondary transition detection unit 124 divides the first transition change data into four bit windows, as shown in FIG. 4, and uses the secondary transition detection maps shown in Tables 2 and 3 to change the second transition. Generate data and a second flag.
예를 들면, 제 1 천이변경 데이터 중에서 첫번째 데이터의 하위 2비트와, 두번째 데이터의 상위 2비트를 하나의 윈도우로 분할하여 입력된 데이터, 즉, "0010"에 대한 제 2 천이변경 데이터는, 표 2에 도시된 바와 같이, "001"이고, 제 2 플래그는 , 표 3에 도시된 바와 같이, 현재의 플래그값을 따르는데, 현재의 플래그값은 제 1 플래그중 첫번째값인 "0"이다. For example, data input by dividing the lower two bits of the first data and the upper two bits of the second data into one window among the first transition change data, that is, the second transition change data for "0010", are listed in the table. As shown in 2, it is "001" and the second flag follows the current flag value, as shown in Table 3, wherein the current flag value is "0" which is the first value of the first flags.
또한, 제 1 천이변경 데이터 중에서 네번째 데이터의 하위 2비트와, 다섯번째 데이터의 상위 2비트를 하나의 윈도우로 분할하여 입력된 데이터, 즉, "0110"에 대한 제 2 천이변경 데이터는 전단의 플래그에 따라 결정되는데, 전단의 플래그는 제 1 플래그중 네번째 데이터에 해당되고 이는 "0"이므로, 최종적으로 제 2 천이변경 데이터는 "001"이다. In addition, the second transition change data for "0110", which is input by dividing the lower two bits of the fourth data and the upper two bits of the fifth data into one window among the first transition change data, is the flag of the previous stage. The flag of the preceding stage corresponds to the fourth data of the first flag, which is "0", so the second transition change data is "001".
여기서, 제 2 플래그는, 표 3에 도시된 바와 같이, 전단의 플래그와 현재의 플래그를 각각 부정연산하여 논리곱하여 얻어지는데, 상기 예에서는 제 1 플래그중 네번째 데이터와 다섯번째 데이터는 각각 "0"이고, 이를 각각 부정(NOT) 연산하여 논리곱하면 "1"이 되므로, 제 2 플래그는 "1"이다. Here, as shown in Table 3, the second flag is obtained by performing an AND operation on the preceding flag and the current flag, respectively, and in the above example, the fourth and fifth data of the first flag are each "0". Since each of these operations is logically multiplied by NOT, the result is "1". Therefore, the second flag is "1".
다음으로, 플래그 합산기(132)는 제 2 플래그를 이용하여 제 2 천이변경 데이터에 가중치를 부여하면, 부분합산기(134)는 각각의 전반부와 중반부와 후반부로 구분하여 합산한다. Next, when the flag summer 132 weights the second transition change data by using the second flag, the partial summer 134 divides each of the first half, the middle half, and the second half.
잠금결정부(136)는 각 부분별 합산값 중에서 가장 큰 값을 선택하여 오버샘플링 데이터의 잠금 위치를 결정하는데, 각 부분별 합이 가장 큰 것이 전반부인 경우에는 전반부부터, 중반부인 경우에는 중반부부터, 후반부인 경우에는 후반부부터 데이터의 시작을 지정하여 잠금을 수행한다. The
예를 들면, 도 4에서, 2차 천이변경 데이터 각각에 대하여, 첫번째 비트중에서 "1"의 값은 일곱번째 데이터 하나이므로 전반부의 합은 1이고, 두번째 비트중에서 "1"의 값은 없으므로 중반부의 합은 0이고, 세번째 비트중에서 "1"의 값은 첫번째부터 세번째, 다섯번째 데이터로 네개이고, 네번째 데이터의 플래그가 1이므로 최종적으로 후반부의 합은 5이다. For example, in FIG. 4, for each of the secondary transition change data, the value of the first half of the first bit is one of the seventh data, so the sum of the first half is 1, and there is no value of "1" in the second bit. The sum is 0, and the value of "1" in the third bit is four from the first to the third and the fifth data, and since the flag of the fourth data is 1, the last half sum is five.
이와 같은 결과에 따라, 잠금결정부(136)는 후반부를 잠금 위치로 결정하면, 데이터 추정기(140)는 입력되는 오버샘플링 직렬데이터중에서 후반부를 시작위치로 지정하고, 이를 기준으로 4비트 윈도우로 분할된 데이터를 표 4를 이용하여 해당 데이터를 추정한다.According to this result, when the
예를 들면, 도 4에서, 첫번째 오버샘플링 데이터중에서 후반부인 "1"일 기준으로 하면, 첫번째 선택 데이터는 "1000"이고, 이에 해당하는 복원 데이터는, 표 4에 도시된 바와 같이, "0"이다.For example, in FIG. 4, when the second half of the first oversampling data is based on "1", the first selection data is "1000", and the corresponding reconstruction data is "0" as shown in Table 4 below. to be.
이와 같은 방법으로 입력되는 직렬데이터를 신속하고 정확하게 복원할 수 있다. In this way, the incoming serial data can be restored quickly and accurately.
이상에서 설명한 바와 같이, 본 발명에 따른 직렬데이터 링크를 위한 데이터 복원장치는 입력되는 직렬데이터를 3배로 오버샘플링하여 오버샘플링 데이터의 인접 비트 사이의 데이터 천이를 검출하고, 이 데이터 천이를 이용하여 오버샘플링 데이터의 잠금 위치를 결정하고, 이에 따라 해당 데이터를 추정함으로써, 기준 클록내에서 데이터를 복원할 수 있고, 따라서 고속의 데이터 링크에 적합한 효과가 있다. As described above, the data recovery apparatus for the serial data link according to the present invention oversamples the input serial data by three times to detect data transitions between adjacent bits of the oversampling data, and over uses the data transitions. By determining the lock position of the sampling data and estimating the data accordingly, it is possible to recover the data within the reference clock, thus having an effect suitable for a high speed data link.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050098531A KR100775903B1 (en) | 2005-10-19 | 2005-10-19 | Apparatus for restoring data for serial data rink |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050098531A KR100775903B1 (en) | 2005-10-19 | 2005-10-19 | Apparatus for restoring data for serial data rink |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070042672A KR20070042672A (en) | 2007-04-24 |
KR100775903B1 true KR100775903B1 (en) | 2007-11-13 |
Family
ID=38177417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050098531A KR100775903B1 (en) | 2005-10-19 | 2005-10-19 | Apparatus for restoring data for serial data rink |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100775903B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930017345A (en) * | 1992-01-13 | 1993-08-30 | 다니이 아끼오 | Serial data receiver |
KR20030075140A (en) * | 2003-08-29 | 2003-09-22 | 이디텍 주식회사 | A data recovery algorithm using data position detecting and a serial data receiver adopting the algorithm |
KR20040075243A (en) * | 2003-02-20 | 2004-08-27 | 삼성전자주식회사 | Data recovery apparatus and method of decreasing data recovery error in high speed serial link |
-
2005
- 2005-10-19 KR KR1020050098531A patent/KR100775903B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930017345A (en) * | 1992-01-13 | 1993-08-30 | 다니이 아끼오 | Serial data receiver |
KR20040075243A (en) * | 2003-02-20 | 2004-08-27 | 삼성전자주식회사 | Data recovery apparatus and method of decreasing data recovery error in high speed serial link |
KR20030075140A (en) * | 2003-08-29 | 2003-09-22 | 이디텍 주식회사 | A data recovery algorithm using data position detecting and a serial data receiver adopting the algorithm |
Also Published As
Publication number | Publication date |
---|---|
KR20070042672A (en) | 2007-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3671920B2 (en) | Skew adjustment circuit and skew adjustment method | |
JP4317336B2 (en) | Data restoration device and restoration circuit, data restoration method, and program storage device for realizing the method | |
JP4309754B2 (en) | Hybrid data recovery system | |
JP2000504514A (en) | Digital architecture for reproducing NRZ / NRZI data | |
JPH08237117A (en) | Digital pll circuit | |
JP2005333649A (en) | Dynamic phase alignment method and apparatus | |
US7069481B2 (en) | Data recovery circuit for minimizing power consumption by non-integer times oversampling | |
JP3412160B2 (en) | Method and apparatus for detecting data deterioration | |
US20020110215A1 (en) | RZ recovery | |
JP3125699B2 (en) | Data synchronization circuit | |
KR102501200B1 (en) | Clock data recovery circuit and integrated circuit including the same | |
KR100775903B1 (en) | Apparatus for restoring data for serial data rink | |
US9091711B1 (en) | Wide-range fast-lock frequency acquisition for clock and data recovery | |
JP5060713B2 (en) | Phase detection circuit and method, and clock data restoration circuit and method using the same | |
KR100287268B1 (en) | Pattern matching equipment | |
KR100985874B1 (en) | Single bit blind over sampling data recovery circuit and the recovery method used by the circuit | |
US20060146959A1 (en) | Look-ahead digital loop filter for clock and data recovery | |
US7242735B2 (en) | Data recovery system and the method thereof | |
JP2005533450A (en) | FSK receiver with variable threshold slicer stage and corresponding method | |
JPH06343039A (en) | Phase detecting circuit and digital pll circuit | |
US8811501B2 (en) | Receiving apparatus, transmission and reception system, and restoration method | |
JP2010183429A (en) | Clock extracting circuit | |
KR100846871B1 (en) | A low power Data Recovery Unit | |
JPH0746143A (en) | Operation control system for parallel-serial conversion circuit and for serial-parallel conversion circuit | |
EP1545047A2 (en) | Improvements to data recovery circuits using oversampling for ISI compensation |
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: 20121106 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20131106 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |