WO1991003895A1 - Clock recovery apparatus - Google Patents

Clock recovery apparatus Download PDF

Info

Publication number
WO1991003895A1
WO1991003895A1 PCT/US1990/004827 US9004827W WO9103895A1 WO 1991003895 A1 WO1991003895 A1 WO 1991003895A1 US 9004827 W US9004827 W US 9004827W WO 9103895 A1 WO9103895 A1 WO 9103895A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
phase
sample clock
signal
clock
Prior art date
Application number
PCT/US1990/004827
Other languages
French (fr)
Inventor
William Ray Apple
William R. Freeman
Paulmer Soderberg
Lyle Thompson
Mark Stephen Thomas
Original Assignee
Raynet Corporation
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
Priority claimed from US07/405,806 external-priority patent/US4959846A/en
Priority claimed from US07/405,799 external-priority patent/US4975929A/en
Application filed by Raynet Corporation filed Critical Raynet Corporation
Publication of WO1991003895A1 publication Critical patent/WO1991003895A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • H04L7/0338Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop

Definitions

  • the present invention relates to an apparatus for recovering clock, and in particular to an apparatus for recovering clock for data received asynchronously or synchronously, especially in relatively small baud length or bit length packets.
  • phase lock loops are utilized for recovering clock for data to be received in digital format.
  • PLLs phase lock loops
  • a disadvantage of PLLs is that a relatively high number of preamble data bits is required for the PLL to acquire a proper clock signal, and constant reinforcement for this clock signal (e.g. transition line encoding) must be contained within the data to prevent the PLL from unlocking from a dominant frequency detected from the preamble.
  • PLLs typically require about 10 or more bits of preamble for adequately locking onto a dominant frequency. Examples of PLLs are found in U.S. patents 4,385,396; 4,677,648; and 3,980,820, the disclosures of which are incorporated herein by reference.
  • an excessively long preamble and transition line encoding to maintain a PLL clock can significantly increase a bit rate for a system.
  • the overhead can easily exceed 50% of the total signal.
  • the actual data content of any packet is less than half of the signal bits actually transported.
  • a digital phase acquisition device for acquiring clock for detecting data, comprising:
  • the data signal including at least one packet having a clock recovery preamble of only 1 bit.
  • the device further includes means for latching onto the selected clock signal to maintain clock over segments of data signals which lock any clock edges and means can optionally be provided for latching onto the selected clock signal for a predetermined number of bit time periods corresponding to a length of the packet being detected by using a counter. It is a further object of the invention to provide means for insuring that clock rate differences which may occur between one or more subscriber interface units (SIUs) and an office interface unit (OIU) do not create reading errors, and to provide means for correcting these differences.
  • SIUs subscriber interface units
  • OIU office interface unit
  • FIG 1 illustrates a network for which a clock recovery device of the invention is particularly useful
  • FIG 2 illustrates a data stream 50 and a plurality of candidate clock phases 51-58 having identical frequencies but being out of phase with one another;
  • FIG 3 illustrates a preferred block diagram circuit for comparing and matching a data edge with a candidate phase edge according to the invention.
  • FIGs 4-6 illustrate preferred circuits of the invention for selecting an optimum phase for clock recovery.
  • FIG 7 illustrates an OIU and SIU clock, and how frequency differences therebetween can cause errors to be read by the OIU.
  • FIG 1 illustrates a telecommunications system 1 for which a clock recovery apparatus according to the invention is particularly useful.
  • a plurality of subscriber interface units (SIUs) 2 receive information from an office interface unit (OIU) transmitter 6 by preferably passively tapping signals from a read bus 3.
  • Signals to be transmitted by the SIUs are transmitted along a write bus 4 and detected by an OIU receiver 5. Examples of preferred taps are disclosed in USP 4,741,585 and in US patent application serial no. 137,317, the disclosures of which are incorporated herein by reference.
  • an amount of data actually transmitted continuously by the telephone is relatively small, e.g. on the order of 8 bits, and a repetition rate thereof is relatively high, e.g. 8000 times a second. Accordingly, with such a format, 64 kilobits of signal is sent each second. If the data to be sent is done so in a packetized format, and if each SIU transmits its data only and in a "blind” fashion, the data from all the SIUs seen by the detector 5 arrives in an asynchronous manner.
  • each SIU is connected to a plurality of telephones and optionally other telecommunication equipment, e.g. computers, and hence each packet can have a data length between 8-500 bits, preferably between 8-200 bits, typically between 8- 100 bits, e.g. 8, 9, 10, 16, or 17 bits.
  • the clock recovery apparatus of the invention is most useful in a system 1 wherein data from all the SIUs 2 has a known frequency and unknown phase, one such system being taught in United States Serial No. 935,458, the disclosure of which is incorporated herein by reference.
  • the invention provides a simple and very efficient manner of determining the phase, of each packet with as little as a few bit time periods, e.g. 4, 3, 2 or 1 data bit time periods, so as to require a preamble length of as little as 4, 3, 2 or 1 bit.
  • a plurality of N phases each having equal frequency and being delayed with respect to a neighboring phase by ⁇ /N are generated. Then with appropriate circuitry using edge detecting techniques, an edge of incoming data is matched as nearly as possible to an edge of one of the phases, and the matched phase is thereafter used for choosing the optimum clock phase for decoding the data.
  • a LOW to HIGH transition in the data is detected, though the invention can also be used to trigger off a HIGH to LOW edge as well.
  • the data bit which generates the match is detected using the chosen clock phase, and this detected bit is analyzed to insure its level is consistent with the edge previously detected to insure reliability.
  • the circuit which detects the data edge and chooses the appropriate clock phase does so repeatedly for each bit having a detectable edge so that a new clock phase can rapidly be acquired should a false match be detected previously or should the OIU or SIU clock drift an undue amount.
  • An alternate preferred embodiment is to utilize a counter so that the chosen clock phase is latched a predetermined number of bit time periods equal to the time period of the data packet being detected, and then the chosen clock phase is unlatched allowing the circuit to search for a detectable data edge for the next packet.
  • a clock phase is latched so as to be capable of accurately detecting data thereafter with no edges, e.g. all 0's or all l 's.
  • Preferred embodiments utilize a circuit which is "triggered" by the data edge to be detected; and alternative embodiments sequentially search for a predetermined data transition within predetermined repetitive "windows" of time.
  • FIG 2 more clearly illustrates a concept of the invention.
  • eight sample clock signal phases 51-58 are illustrated along with a data signal 50 having a LOW to HIGH edge 11 to be detected at time 12.
  • a data signal 50 having a LOW to HIGH edge 11 to be detected at time 12.
  • a gate delay to enable a snapshot of the phases to be taken when the edge 11 is detected at time 12, a phase sequence or digital word 11110000 . . . is detected.
  • a 1 to 0 transition in the digital word identifies the sample clock signal phases closest in phase with the data signal, in this case phases 54 and 55 and a 0 to 1 transition in the digital word identifies the phases inverted which are closest in phase with the data signal, in this case phases 58 and 51. Using either of these phases as a reference, an appropriate phase can thereafter be chosen for detecting the data signal. According to a preferred embodiment, bits of the data signal are sampled and detected at times 13 approximately centered in time for each data bit period.
  • a LOW to HIGH transition in the chosen sample clock signal phase is used to trigger sampling and detecting of the data signal, and accordingly the appropriate sample clock signal phase in this example would be either phase 58 or 51 if detection at time 13 is desired.
  • the invention is usable by triggering and detecting data off a HIGH to LOW transition as well.
  • the data edge 11 is matched with an edge of the particular phase at successive sequential time intervals separated by At, and comparing any transitions or lack thereof between the data and the various phases at these adjacent intervals.
  • the phase which has an edge within any time interval where the edge 11 for the data is detected is then used as the reference phase for choosing the appropriate clock phase, though a phase having an edge in the time interval either before or after the interval within which the data edge is found could be closer in phase with the data and could also be selected as the reference phase.
  • FIG 3 illustrates one preferred circuit for this latter embodiment for comparing edges of any one of the phases with the data to be detected.
  • both the data stream 20 and a candidate phase are delayed by a digital delay device, with the delayed signals 21, 22 being compared by first digital logic means 25, and undelayed portions of the candidate phase and data stream 23, 24 being similarly analyzed by digital logic means 26, with outputs from the first and second logic means 25, 26 being analyzed by digital means 27 for determining if both the candidate phase and the data stream underwent a predetermined transition and therefore should be used for choosing the desired clock phase for thereafter decoding the data by conventional means, e.g. by sampling the data at times approximately in the center of each bit to detect logic of LOW or HIGH values.
  • FIG 4 illustrates another preferred embodiment of appropriate digital logic means for comparing edge transitions between the data and candidate phases, the first digital logic means being a NOR gate, and the second and third digital logic means being AND gates.
  • the digital delays 30, 31 could be any conventional electronic component, e.g. flip-flops.
  • AND gate 34 only outputs a HIGH during a time period At when the data undergoes a LOW to HIGH transition and the candidate phase undergoes a HIGH to LOW transition, and thereafter LOW to HIGH transitions in the candidate phase are used to detect the data at approximately a center of each bit cell.
  • Latching means 14 latches onto this chosen clock phase to thereafter detect data even if no edge transitions follow.
  • the latching means can be unlatched after a predetermined bit time period corresponding to a length of the packet or can be unlatched when the circuit again detects the predetermined edge transitions between the data and various -8 -
  • interval At is longer than the phase delay between adjacent phases, e.g. 2 ⁇ /N, it is evident that for any data edge transition detected at least one of the phases will include a digital equivalent edge. Though a possibility exists that more than one phase would include a matching transition, the latching means 14 could simply be programmed to choose the first edge match detected, for example, though alternate matching candidates or candidates adjacent matching candidates could be chosen as well depending on design preferences.
  • One of the advantages and goals of the circuit is to acquire an appropriate clock phase for the incoming packet of data within one data bit time, or data cell. Once the proper clock phase has been selected, that clock phase may be used to "sample” the data cell with no need for further reinforcing transitions in the data. Thus, a digital signal of all "0"s or all “l”s may be sent and still have a clock that is reasonably aligned to a data cell window. Unlike a PLL, the circuits of the invention require no further reinforcing transitions to constrain the data content or burden the data rate with edge-rich overhead.
  • FIG 5 shows a further preferred embodiment of the invention.
  • An incoming serial data stream "D" is input to the circuit consisting of 7 identical blocks of logic. Each block consists of 2 delays, 3 2-input AND gates, 2 exclusive NOR gates, and a single “D” flip-flop. Each functional block receives inputs from the data "D" and a phase of a clock whose frequency is known. Assuming the frequency of the incoming data stream to be of frequency "f" allows 7 discrete phases of a local source of frequency “f” to be generated. Thus, the phases P0-P6 will represent 7 equal divisions of the base phase of "f". Each phase will serve as an input to a unique functional block along with the data "D". The object is for one of the phases to "match" the phase of the incoming data stream "D".
  • a sample of data "D” is presented at delay D13 and proceeds through the delay to provide a delayed version of "D” which attaches to an input of exclusive NOR U20.
  • "D” is also routed to an input of exclusive NOR U21.
  • That logic 1 will “gate” through the clock P6 to the OR gate U36 where it will pass through and be used as a phase-aligned clock for extracting data from subsequent bit “cells” in data stream "D".
  • the first clock edge through U36 will also cause flip-flop FF8 to set Q to a logic 0.
  • This logic 0 becomes enable signal "E” where it will be used to disallow subsequent changes to flip-flops FF1-FF8 until BIT CTR 1 (bit counter 1) counts to a predetermined number of clock cycles (bits) and resets FF8 to once again enable "E” for the next phase matching.
  • BIT CTR 1 bit counter 1
  • the sample circuit shown assumes prior knowledge of the number of bits in the asynchronous data stream "D”. Thus, after counting to that number of bits, the circuit will reset itself to readiness for the next asynchronous incoming data stream.
  • FIG 6 shows a circuit "snapshot" embodiment of the invention.
  • four sample clock signal phases labeled CKP0, CKP1, CKP2, CKP3 are inputted to four edge- triggered flip-flops FF10, FFl l, FF12, FF13 respectively.
  • the data signal, DATA IN represents an incoming asynchronous packet of data with a known frequency but unknown phase.
  • the transmission line from which the DATA IN signal comes is assumed to be in a silent, or LOW, state before the transmitted packet arrives at the circuit.
  • CKP0-CKP3 are four distinct phases of a single sample clock which frequency is, by design, the same frequency as the clock responsible for the transmission and structure of the received DATA IN signal. Each of these phases go to an individual edge- triggered D flip-flop and are "clocked" into the "D" input of the respective flip-flop by the first LOW to HIGH edge (assumed to be a single "preamble” bit) of the DATA IN signal. Thus, a "snapshot" of phases CKP0-CKP3 is taken at the time of the DATA IN transition. By comparing the instantaneous samples of these phases with the "phase” of the DATA IN transition, it is possible to superimpose these "candidate” phases and DATA IN and determine which of the phases is closest to the incoming data packet.
  • the exact resolution of alignment is a function of the number of phases represented in the candidate phases. For example: a four candidate phase circuit will align clock transitions within 90° of the incoming asynchronous data packet. A sixteen candidate phase digital phase acquisition circuit will align to within 23° of the incoming data.
  • AND gates AND1-AND8 analyze the candidate phases along with their inverses in such a way to "decode" at which phase the "0" to "1" result occurs.
  • the inverse of each phase can be considered as another unique phase which may also be considered as a candidate for the selection process.
  • CKPO through CKP3 also produces CKP4 through CKP7 for a resolution of 360° divided by 8, or 45°.
  • An example of a "snapshot" of all the phases could produce a pattern such as:
  • Only one candidate clock phase will be selected since there is only one point in the "snapshot” in which the transition from a "0" to a "1" will be observed.
  • the "selected” clock may then be used reliably as long as the transmitting clock and the clock from which the candidate phases are derived do not drift sufficiently apart in frequency.
  • packets containing hundreds of bit cells may be reliably read as the crystal oscillator is a highly stable source of clocking reference.
  • the circuit shown in FIG 6 has been tested to greater than 10Mbps with reliable acquisition of phase in a single preamble bit of time.
  • the frequency must be selected in the design process as one that is exactly the same as the signal expected in reception as this circuit acquires phase but not frequency.
  • Higher speed circuits that acquire phase in an asynchronous data packet of hundreds of megabytes per second will work using this same approach by altering the speed of the gates themselves. This is to say that the gate propagation delays themselves are the only limiting factors as to how fast of an incoming signal may be "phase aligned".
  • a preferred circuit of the invention utilizes a gate configuration such that adjacent candidate phases differ from one another by a change of only one character of its identifying binary code. Accordingly, in the event that any of the gates or flip flops or other elements making up the clock recovery circuit malfunction so as to yield a binary word which is erroneous, absent multiple gate failures occurring simultaneously, the phase ultimately selected by the circuit will be immediately adjacent the phase which should have selected. Hence, the resultant error will be inconsequential since phase alignment will be off only a small angle, e.g. the angle between adjacent phases, especially in the case where a relatively large number of candidate phases are being used, e.g. 8 or 16 and hence the angle between adjacent phases is relatively small.
  • Some prior art circuits acquire phase repeatedly to "build" a confidence factor for selecting the proper clock phase. That approach allows the circuit to maintain clocking of data even when preamble bits are missed. Building a confidence factor, however, requires the sampling of many bits over a period of time before a clock is selected.
  • the circuits of the invention on the other hand are useful in applications which are not afforded the luxury of more preamble bits and data transition encoding overhead. Thus, the invention is useful in keeping transmission speeds down. The lowering of transmission speeds typically decreases power required and may, depending on the range of speed used in transmission, allow lower cost and more highly integrated electronic technologies to be used in an application.
  • Another optional but preferred aspect of the present invention is directed to is the provision of means 65 for analyzing any differences between the frequencies of the plurality of SIU clocks and the OIU clock.
  • the circuits of FIGs 3-6 assume that the OIU knows the exact frequency of the incoming packetized data from each SIU. However, in actuality, clock frequencies can drift over time. Accordingly, when drift occurs the OIU clock phases would then have an incorrect frequency which could thus cause reading errors even if an optimum phase was originally chosen, especially when the same phase is used for reading an entire packet and a new phase is not to be chosen for each data transition corresponding to a predetermined transition.
  • FIG 7 illustrates such a situation.
  • the top clock pulse represents an OIU clock
  • the bottom clock pulse represents an SIU clock which has a frequency different than the OIU clock
  • the middle pulse represents an SIU data stream generated using the SIU clock frequency.
  • the numbers in the data stream represent the binary code sent by the SIU.
  • the arrows below the data stream indicate the center of the data stream bits, and the arrows above the data stream indicate where the OIU will try to read the data.
  • the OIU clock is running slower than the SIU clock. This is a gross exaggeration for ease of illustration of what one would expect to happen in practice.
  • the OIU would start reading the data near the center of the bit cell (because the basic circuits of FIGs 3-6 picks the correct phase for this to happen) and by the end of the packet it may be off center enough to increase the instantaneous bit error rate; in which case the SIU clock should be adjusted. Notice that the message sent by the SIU is 1010011001 and that the message received by the OIU is 10Q_01 1Q_1 (three errors plus two lost bits).
  • any differences between the SIU and OIU clock frequencies is detected and then corrected.
  • Another embodiment is to have each SIU compare its clock to the read bus data and hence the OIU clock, but this duplicates the circuitry for detecting the frequency difference many times since it must reside in each SIU.
  • the circuit of the invention include only digital delays and digital logic, as compared to analog, so that the invention can be implemented in ASIC chips.
  • Digital logic has an additional advantage that it is much faster than analog logic, thus insuring that a clock for data to be detected is recovered within 1 bit time of a predetermined data edge transition occurring.
  • a preferred phase separation between adjacent candidate clock phases has -16-
  • phase separations could be chosen according to the invention.
  • the invention has been described by reference to a particular preferred embodiment where 20, 8, and 4 candidate phases, respectively, are utilized, the invention includes all alternate phase generation numbers, the particular number chosen being determined by overall system speed and reliability considerations, the device of the invention being perfectly useful using as few as 4, 6, or 8 candidate phases, or as many as 20, 30 or even 40 candidate phases.
  • the invention includes means for accurately synchronizing each SIU clock to the OIU clock periodically to prevent frequency drift induced errors from occurring.

Landscapes

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

Abstract

A digital phase acquisition circuit includes logic for detecting an edge of incoming data and a plurality of candidate clock phases, the circuitry further including logic for determining when the data undergoes a phase transition and at least one candidate phase which undergoes a digitally equivalent transition close in time to the data transition so as to enable the candidate phase to be used for a clock for recovering information representative of the data. The circuit allows clock to be recovered within 1 bit time of a predetermined data transition occurring, thus allowing preambles of 1 bit to be utilized in data packets.

Description

CLOCK RECOVERY APPARATUS
The present invention relates to an apparatus for recovering clock, and in particular to an apparatus for recovering clock for data received asynchronously or synchronously, especially in relatively small baud length or bit length packets.
Conventionally, phase lock loops (PLLs) are utilized for recovering clock for data to be received in digital format. A disadvantage of PLLs is that a relatively high number of preamble data bits is required for the PLL to acquire a proper clock signal, and constant reinforcement for this clock signal (e.g. transition line encoding) must be contained within the data to prevent the PLL from unlocking from a dominant frequency detected from the preamble. PLLs typically require about 10 or more bits of preamble for adequately locking onto a dominant frequency. Examples of PLLs are found in U.S. patents 4,385,396; 4,677,648; and 3,980,820, the disclosures of which are incorporated herein by reference.
The inclusion of an excessively long preamble and transition line encoding to maintain a PLL clock can significantly increase a bit rate for a system. In the case of an asynchronous packetized system for transmitting telephone signals along a bus or ring, the overhead can easily exceed 50% of the total signal. Specifically, for a packet of data containing eight bits with eight preamble bits and 4B5B transition line encoding, the actual data content of any packet is less than half of the signal bits actually transported.
Other circuits, see e.g. Tanabe et al., USP 4,672,639, acquire phase repeatedly to "build" a confidence factor for selecting a proper clock phase. That approach allows the circuit to maintain clocking of data even when preamble bits are missed. Building a confidence factor, however, requires the sampling of many bits over a period of time before a clock is selected. This increases the necessary transmission speed which increases power requirements and increases costs.
It is therefore an object of the present invention to provide a method and means for recovering clock for data in a more efficient and reliable manner than heretofore proposed, specifically in as little as one bit time.
According to the invention, a digital phase acquisition device for acquiring clock for detecting data, comprising:
means for generating a clock signal of predetermined frequency;
means for generating N sample clock signals each having the predetermined frequency and being separated in phase from one another;
digital means for finding an edge in a data signal and choosing any one of the N sample clock signals within two data bit time periods of an instant when a data edge is found for sampling the data to detect HIGH and LOW values therein;
the data signal including at least one packet having a clock recovery preamble of only 1 bit.
Preferably, the device further includes means for latching onto the selected clock signal to maintain clock over segments of data signals which lock any clock edges and means can optionally be provided for latching onto the selected clock signal for a predetermined number of bit time periods corresponding to a length of the packet being detected by using a counter. It is a further object of the invention to provide means for insuring that clock rate differences which may occur between one or more subscriber interface units (SIUs) and an office interface unit (OIU) do not create reading errors, and to provide means for correcting these differences.
These and other objects will be more apparent by reference to the following detailed description and drawings.
FIG 1 illustrates a network for which a clock recovery device of the invention is particularly useful;
FIG 2 illustrates a data stream 50 and a plurality of candidate clock phases 51-58 having identical frequencies but being out of phase with one another;
FIG 3 illustrates a preferred block diagram circuit for comparing and matching a data edge with a candidate phase edge according to the invention; and
FIGs 4-6 illustrate preferred circuits of the invention for selecting an optimum phase for clock recovery.
FIG 7 illustrates an OIU and SIU clock, and how frequency differences therebetween can cause errors to be read by the OIU.
FIG 1 illustrates a telecommunications system 1 for which a clock recovery apparatus according to the invention is particularly useful. According to the system 1, a plurality of subscriber interface units (SIUs) 2 receive information from an office interface unit (OIU) transmitter 6 by preferably passively tapping signals from a read bus 3. Signals to be transmitted by the SIUs are transmitted along a write bus 4 and detected by an OIU receiver 5. Examples of preferred taps are disclosed in USP 4,741,585 and in US patent application serial no. 137,317, the disclosures of which are incorporated herein by reference.
For the case where the SIUs 2 are required to transmit information so as to be detectable on a "real time" basis, as is the case for telephone signals, an amount of data actually transmitted continuously by the telephone is relatively small, e.g. on the order of 8 bits, and a repetition rate thereof is relatively high, e.g. 8000 times a second. Accordingly, with such a format, 64 kilobits of signal is sent each second. If the data to be sent is done so in a packetized format, and if each SIU transmits its data only and in a "blind" fashion, the data from all the SIUs seen by the detector 5 arrives in an asynchronous manner. According to a preferred embodiment, each SIU is connected to a plurality of telephones and optionally other telecommunication equipment, e.g. computers, and hence each packet can have a data length between 8-500 bits, preferably between 8-200 bits, typically between 8- 100 bits, e.g. 8, 9, 10, 16, or 17 bits.
The clock recovery apparatus of the invention is most useful in a system 1 wherein data from all the SIUs 2 has a known frequency and unknown phase, one such system being taught in United States Serial No. 935,458, the disclosure of which is incorporated herein by reference. The invention provides a simple and very efficient manner of determining the phase, of each packet with as little as a few bit time periods, e.g. 4, 3, 2 or 1 data bit time periods, so as to require a preamble length of as little as 4, 3, 2 or 1 bit.
According to a preferred embodiment of the invention, a plurality of N phases each having equal frequency and being delayed with respect to a neighboring phase by ±π/N are generated. Then with appropriate circuitry using edge detecting techniques, an edge of incoming data is matched as nearly as possible to an edge of one of the phases, and the matched phase is thereafter used for choosing the optimum clock phase for decoding the data. According to a preferred embodiment, a LOW to HIGH transition in the data is detected, though the invention can also be used to trigger off a HIGH to LOW edge as well.
Optionally, the data bit which generates the match is detected using the chosen clock phase, and this detected bit is analyzed to insure its level is consistent with the edge previously detected to insure reliability. According to some preferred embodiments, the circuit which detects the data edge and chooses the appropriate clock phase does so repeatedly for each bit having a detectable edge so that a new clock phase can rapidly be acquired should a false match be detected previously or should the OIU or SIU clock drift an undue amount. An alternate preferred embodiment is to utilize a counter so that the chosen clock phase is latched a predetermined number of bit time periods equal to the time period of the data packet being detected, and then the chosen clock phase is unlatched allowing the circuit to search for a detectable data edge for the next packet. In any case, once a clock phase is chosen, it is latched so as to be capable of accurately detecting data thereafter with no edges, e.g. all 0's or all l 's. Preferred embodiments utilize a circuit which is "triggered" by the data edge to be detected; and alternative embodiments sequentially search for a predetermined data transition within predetermined repetitive "windows" of time.
FIG 2 more clearly illustrates a concept of the invention. Referring to this figure, eight sample clock signal phases 51-58 are illustrated along with a data signal 50 having a LOW to HIGH edge 11 to be detected at time 12. Using sample and hold circuitry and a gate delay to enable a snapshot of the phases to be taken when the edge 11 is detected at time 12, a phase sequence or digital word 11110000 . . . is detected.
A 1 to 0 transition in the digital word identifies the sample clock signal phases closest in phase with the data signal, in this case phases 54 and 55 and a 0 to 1 transition in the digital word identifies the phases inverted which are closest in phase with the data signal, in this case phases 58 and 51. Using either of these phases as a reference, an appropriate phase can thereafter be chosen for detecting the data signal. According to a preferred embodiment, bits of the data signal are sampled and detected at times 13 approximately centered in time for each data bit period.
According to a preferred embodiment, a LOW to HIGH transition in the chosen sample clock signal phase is used to trigger sampling and detecting of the data signal, and accordingly the appropriate sample clock signal phase in this example would be either phase 58 or 51 if detection at time 13 is desired. Of course the invention is usable by triggering and detecting data off a HIGH to LOW transition as well.
According to another preferred embodiment, the data edge 11 is matched with an edge of the particular phase at successive sequential time intervals separated by At, and comparing any transitions or lack thereof between the data and the various phases at these adjacent intervals. The phase which has an edge within any time interval where the edge 11 for the data is detected is then used as the reference phase for choosing the appropriate clock phase, though a phase having an edge in the time interval either before or after the interval within which the data edge is found could be closer in phase with the data and could also be selected as the reference phase. FIG 3 illustrates one preferred circuit for this latter embodiment for comparing edges of any one of the phases with the data to be detected. Referring to this figure, both the data stream 20 and a candidate phase are delayed by a digital delay device, with the delayed signals 21, 22 being compared by first digital logic means 25, and undelayed portions of the candidate phase and data stream 23, 24 being similarly analyzed by digital logic means 26, with outputs from the first and second logic means 25, 26 being analyzed by digital means 27 for determining if both the candidate phase and the data stream underwent a predetermined transition and therefore should be used for choosing the desired clock phase for thereafter decoding the data by conventional means, e.g. by sampling the data at times approximately in the center of each bit to detect logic of LOW or HIGH values.
FIG 4 illustrates another preferred embodiment of appropriate digital logic means for comparing edge transitions between the data and candidate phases, the first digital logic means being a NOR gate, and the second and third digital logic means being AND gates. The digital delays 30, 31 could be any conventional electronic component, e.g. flip-flops. Referring to this figure, AND gate 34 only outputs a HIGH during a time period At when the data undergoes a LOW to HIGH transition and the candidate phase undergoes a HIGH to LOW transition, and thereafter LOW to HIGH transitions in the candidate phase are used to detect the data at approximately a center of each bit cell. Latching means 14 latches onto this chosen clock phase to thereafter detect data even if no edge transitions follow. As previously discussed, the latching means can be unlatched after a predetermined bit time period corresponding to a length of the packet or can be unlatched when the circuit again detects the predetermined edge transitions between the data and various -8 -
clock phases in which case a new chosen clock phase is immediately latched.
Accordingly, utilizing a plurality of circuits such as that illustrated in FIGs 3 and 4 in parallel, one for each candidate phase and a sample of the data it is evident that the phase having a predetermined edge transition within any given time At of an edge transition of the data (LOW to HIGH or HIGH to LOW) enables an appropriate phase to always be selected.
If the interval At is longer than the phase delay between adjacent phases, e.g. 2π/N, it is evident that for any data edge transition detected at least one of the phases will include a digital equivalent edge. Though a possibility exists that more than one phase would include a matching transition, the latching means 14 could simply be programmed to choose the first edge match detected, for example, though alternate matching candidates or candidates adjacent matching candidates could be chosen as well depending on design preferences.
One of the advantages and goals of the circuit is to acquire an appropriate clock phase for the incoming packet of data within one data bit time, or data cell. Once the proper clock phase has been selected, that clock phase may be used to "sample" the data cell with no need for further reinforcing transitions in the data. Thus, a digital signal of all "0"s or all "l"s may be sent and still have a clock that is reasonably aligned to a data cell window. Unlike a PLL, the circuits of the invention require no further reinforcing transitions to constrain the data content or burden the data rate with edge-rich overhead.
FIG 5 shows a further preferred embodiment of the invention. An incoming serial data stream "D" is input to the circuit consisting of 7 identical blocks of logic. Each block consists of 2 delays, 3 2-input AND gates, 2 exclusive NOR gates, and a single "D" flip-flop. Each functional block receives inputs from the data "D" and a phase of a clock whose frequency is known. Assuming the frequency of the incoming data stream to be of frequency "f" allows 7 discrete phases of a local source of frequency "f" to be generated. Thus, the phases P0-P6 will represent 7 equal divisions of the base phase of "f". Each phase will serve as an input to a unique functional block along with the data "D". The object is for one of the phases to "match" the phase of the incoming data stream "D".
Assuming that the signal P6 most closely matches the phase of the incoming data, an analyses of the functions of components U7, D13-D14, U20, U21, U28, FF7, U35, U36, FF8 and Bit Ctr. 1 will be described. A sample of data "D" is presented at delay D13 and proceeds through the delay to provide a delayed version of "D" which attaches to an input of exclusive NOR U20. "D" is also routed to an input of exclusive NOR U21. Thus, the data as it appears at a specific point in time and sample of the data as it appeared a certain amount of time prior to then is available simultaneously. At the same time another delay D14 is used to perform the same signal delay to clock phase P6. Thus, a delayed version of P6 will be presented to the remaining input of U20, and the non-delayed P6 will be presented to the remaining input of U21. The question that U21 must answer is, "Is logic level of "D" the same as the logic level of P6 at this specific point in time?". Similarly, U20 must determine if the delayed version of "D" at the same logic level as the delayed version of P6 at the same specific point in time. This comparison of delayed signals and actual signals has the effect of determining if the both sides of two independent signals, both having positive-going edges, are approximately in phase with each other. Therefore if the delayed P6 and delayed "D" match at a specific point in time, and the actual P6 and "D" match at a previous (delayed) point in time, one may assume the two signals to be in phase. In a circuit where neither P6 nor "D" have edges the match ill still be made, and U20 and U21 will still show matches, but no meaningful signal will result at the output of U36. If P6 and "D" have real edges that align, U20 and U21 will show logic l 's at their outputs and will cause U28 to present a transition to logic 1 to flip-flop FF7. FF7 will then latch a logic 1 from the "D" input to the "Q" output. That logic 1 will "gate" through the clock P6 to the OR gate U36 where it will pass through and be used as a phase-aligned clock for extracting data from subsequent bit "cells" in data stream "D". The first clock edge through U36 will also cause flip-flop FF8 to set Q to a logic 0. This logic 0 becomes enable signal "E" where it will be used to disallow subsequent changes to flip-flops FF1-FF8 until BIT CTR 1 (bit counter 1) counts to a predetermined number of clock cycles (bits) and resets FF8 to once again enable "E" for the next phase matching. The sample circuit shown assumes prior knowledge of the number of bits in the asynchronous data stream "D". Thus, after counting to that number of bits, the circuit will reset itself to readiness for the next asynchronous incoming data stream.
FIG 6 shows a circuit "snapshot" embodiment of the invention. As shown in FIG 6, four sample clock signal phases labeled CKP0, CKP1, CKP2, CKP3 are inputted to four edge- triggered flip-flops FF10, FFl l, FF12, FF13 respectively. The data signal, DATA IN, represents an incoming asynchronous packet of data with a known frequency but unknown phase. The transmission line from which the DATA IN signal comes is assumed to be in a silent, or LOW, state before the transmitted packet arrives at the circuit.
CKP0-CKP3 are four distinct phases of a single sample clock which frequency is, by design, the same frequency as the clock responsible for the transmission and structure of the received DATA IN signal. Each of these phases go to an individual edge- triggered D flip-flop and are "clocked" into the "D" input of the respective flip-flop by the first LOW to HIGH edge (assumed to be a single "preamble" bit) of the DATA IN signal. Thus, a "snapshot" of phases CKP0-CKP3 is taken at the time of the DATA IN transition. By comparing the instantaneous samples of these phases with the "phase" of the DATA IN transition, it is possible to superimpose these "candidate" phases and DATA IN and determine which of the phases is closest to the incoming data packet.
When the latched versions of CKPO through CKP3 are each simultaneously "ANDed" with DATA IN, a unique data "word" is formed, across those phases showing which phases were HIGH at the same time DATA IN underwent a LOW to HIGH transition and which phases were not. The "snapshot" of the candidate phases reveals a pattern of contiguous "0"s as well as a pattern of contiguous "l"s. Since the "l"s represent the phases that were HIGH at the same time as DATA IN was HIGH, and the "0"s represent the phases that were LOW at the same time as DATA IN was LOW, it can be assumed that the first candidate phase which ANDs to a "1" (and whose previous phase ANDed to a "0") will be reasonably close to the transition of the DATA IN signal itself.
The exact resolution of alignment is a function of the number of phases represented in the candidate phases. For example: a four candidate phase circuit will align clock transitions within 90° of the incoming asynchronous data packet. A sixteen candidate phase digital phase acquisition circuit will align to within 23° of the incoming data.
At the time of the DATA IN LOW to HIGH transition, AND gates AND1-AND8 analyze the candidate phases along with their inverses in such a way to "decode" at which phase the "0" to "1" result occurs. The inverse of each phase can be considered as another unique phase which may also be considered as a candidate for the selection process. Thus, CKPO through CKP3 also produces CKP4 through CKP7 for a resolution of 360° divided by 8, or 45°. An example of a "snapshot" of all the phases could produce a pattern such as:
Figure imgf000014_0001
This example indicates that candidate phase CKP3 is closest in phase to the LOW to HIGH transition of DATA IN. By placing the inverters (bubbles) on selected input pins of the 4-input AND gates, the electronics can be hardwired to look for this transition in the pattern. The appropriate 4-input AND gate, upon recognizing its candidate phase as a "1" and the previous candidate phase as a "0" will output an enabling signal to one of the 2-input AND gates AND11-AND18. The enabling signal will "gate" one of the original phased clock signals through one of the AND gates AND 11 -AND 18 and on through the OR1-OR3 gates to be used as a final clock for reading the data cells in the DATA IN signal. In this example, AND4 and AND 14 are enabled so as to gate CKP2 through OR1 and OR3.
Only one candidate clock phase will be selected since there is only one point in the "snapshot" in which the transition from a "0" to a "1" will be observed. The "selected" clock may then be used reliably as long as the transmitting clock and the clock from which the candidate phases are derived do not drift sufficiently apart in frequency. In the case of crystal oscillators, packets containing hundreds of bit cells may be reliably read as the crystal oscillator is a highly stable source of clocking reference.
The circuit shown in FIG 6 has been tested to greater than 10Mbps with reliable acquisition of phase in a single preamble bit of time. The frequency must be selected in the design process as one that is exactly the same as the signal expected in reception as this circuit acquires phase but not frequency. Higher speed circuits that acquire phase in an asynchronous data packet of hundreds of megabytes per second will work using this same approach by altering the speed of the gates themselves. This is to say that the gate propagation delays themselves are the only limiting factors as to how fast of an incoming signal may be "phase aligned".
Optionally, a preferred circuit of the invention utilizes a gate configuration such that adjacent candidate phases differ from one another by a change of only one character of its identifying binary code. Accordingly, in the event that any of the gates or flip flops or other elements making up the clock recovery circuit malfunction so as to yield a binary word which is erroneous, absent multiple gate failures occurring simultaneously, the phase ultimately selected by the circuit will be immediately adjacent the phase which should have selected. Hence, the resultant error will be inconsequential since phase alignment will be off only a small angle, e.g. the angle between adjacent phases, especially in the case where a relatively large number of candidate phases are being used, e.g. 8 or 16 and hence the angle between adjacent phases is relatively small.
Some prior art circuits acquire phase repeatedly to "build" a confidence factor for selecting the proper clock phase. That approach allows the circuit to maintain clocking of data even when preamble bits are missed. Building a confidence factor, however, requires the sampling of many bits over a period of time before a clock is selected. The circuits of the invention on the other hand are useful in applications which are not afforded the luxury of more preamble bits and data transition encoding overhead. Thus, the invention is useful in keeping transmission speeds down. The lowering of transmission speeds typically decreases power required and may, depending on the range of speed used in transmission, allow lower cost and more highly integrated electronic technologies to be used in an application.
Another optional but preferred aspect of the present invention is directed to is the provision of means 65 for analyzing any differences between the frequencies of the plurality of SIU clocks and the OIU clock. Specifically, the circuits of FIGs 3-6 assume that the OIU knows the exact frequency of the incoming packetized data from each SIU. However, in actuality, clock frequencies can drift over time. Accordingly, when drift occurs the OIU clock phases would then have an incorrect frequency which could thus cause reading errors even if an optimum phase was originally chosen, especially when the same phase is used for reading an entire packet and a new phase is not to be chosen for each data transition corresponding to a predetermined transition.
FIG 7 illustrates such a situation. Referring to this FIG, the top clock pulse represents an OIU clock, the bottom clock pulse represents an SIU clock which has a frequency different than the OIU clock, and the middle pulse represents an SIU data stream generated using the SIU clock frequency. The numbers in the data stream represent the binary code sent by the SIU. The arrows below the data stream indicate the center of the data stream bits, and the arrows above the data stream indicate where the OIU will try to read the data. Here the OIU clock is running slower than the SIU clock. This is a gross exaggeration for ease of illustration of what one would expect to happen in practice. Generally, the OIU would start reading the data near the center of the bit cell (because the basic circuits of FIGs 3-6 picks the correct phase for this to happen) and by the end of the packet it may be off center enough to increase the instantaneous bit error rate; in which case the SIU clock should be adjusted. Notice that the message sent by the SIU is 1010011001 and that the message received by the OIU is 10Q_01 1Q_1 (three errors plus two lost bits).
According to a preferred aspect of the invention, any differences between the SIU and OIU clock frequencies is detected and then corrected. There are several ways to determine whether the SIU clock frequency differs from the OIU clock frequency. For example, a long known sequence (1010) could be sent periodically by each SIU and read by the OIU until a mistake is made, or one could compare the phase angle drift between the beginning and end of a packet, etc. Given that the frequency difference (and direction of difference) can be measured at the OIU, the OIU could then send a message to the SIU to tweak its clock oscillator to match its clock frequency to the OIUs clock frequency. Another embodiment is to have each SIU compare its clock to the read bus data and hence the OIU clock, but this duplicates the circuitry for detecting the frequency difference many times since it must reside in each SIU.
As previously discussed, it is most preferable that the circuit of the invention include only digital delays and digital logic, as compared to analog, so that the invention can be implemented in ASIC chips. Digital logic has an additional advantage that it is much faster than analog logic, thus insuring that a clock for data to be detected is recovered within 1 bit time of a predetermined data edge transition occurring. In addition, though a preferred phase separation between adjacent candidate clock phases has -16-
been given, it is evident that other alternative phase separations could be chosen according to the invention. Also, though the invention has been described by reference to a particular preferred embodiment where 20, 8, and 4 candidate phases, respectively, are utilized, the invention includes all alternate phase generation numbers, the particular number chosen being determined by overall system speed and reliability considerations, the device of the invention being perfectly useful using as few as 4, 6, or 8 candidate phases, or as many as 20, 30 or even 40 candidate phases.
According to the present invention, one can use crystals in the SIUs because slight frequency differences between the SIU and OIU clocks will not result in misread data. This is because the reading of the incoming data is resynchronized at the beginning of each packet. As discussed, when the length of packets is known, clock need only be recovered for the first bit for each packet. However in this case, especially when the packets become relatively long, slight differences between the OIU and SIU clocks become important and the accompanying drift can result in misread data. Accordingly, the invention includes means for accurately synchronizing each SIU clock to the OIU clock periodically to prevent frequency drift induced errors from occurring.

Claims

We claim:
1. A digital phase acquisition device for acquiring clock for detecting data, comprising:
means for generating a clock signal of predetermined frequency;
means for generating N sample clock signals each having the predetermined frequency and being separated in phase from one another;
digital means for finding an edge in a data signal and choosing any one of the N sample clock signals within two data bit time periods of an instant when a data edge is found for sampling the data to detect HIGH and LOW values therein;
the data signal including at least one packet having a clock recovery preamble of only 1 bit.
2. The device of claim 1, further comprising means for latching onto the chosen sample clock signal.
3. The device of claim 2, the latching means being unlatched when the digital means finds another data signal edge.
4. The device of claim 2, the sample clock signal chosen being used to detect a level of the preamble bit, the any one of the N sample clock signals being chosen within one data bit time period of the instant when the data edge is found.
5. The device of claim 2, further comprising means for comparing a level of the preamble bit with a level of a data edge transition detected by the digital means.
6. The device of claim 1, each of the N sample clock signals being separated in phase by 2π/N.
7. The device of claim 1 , further comprising means for comparing the frequency of the data signal and the chosen sample clock signal and changing at least one of a data signal clock frequency and the predetermined frequency so that the data signal clock frequency is closer to the predetermined frequency when a predetermined amount of drift therebetween is detected.
8. The device of claim 1, the digital means including:
a plurality of digital delays for delaying each of the N sample clock signals and the data signal a predetermined amount;
first digital comparing means for comparing a level of a delayed data signal with each delayed sample clock signal;
second digital comparing means for comparing a level of the data signal undelayed with each sample clock signal undelayed;
means for comparing outputs from the first and second digital means to determine whether the data has undergone a predetermined level transition and whether any of the sample clock signals have undergone an equivalent transition.
9. The device of claim 8, the choosing means selecting the sample clock signal which is 180° out of phase of the sample clock signal which has a delayed level which is digitally equivalent to the level of the delayed data signal and which has an undelayed level which is digitally equivalent to the level of the data undelayed, the delayed level being a binary opposite of the undelayed level.
10. The device of claim 1, the edge being a LOW to HIGH transitional edge.
1 1. The device of claim 1, the data being in packetized format arranged in frames each having a plurality of packets, at least one packet per frame having a baud length less than 17.
12. The device of claim 11 , the packets being received asynchronously, a clock frequency of each packet being identical, the packets differing in phase relative to adjacent packets.
13. The device of claim 1, the digital means including:
a plurality of D flip-flops each having a clock input connected to the data signal and a data input connected to one of the N sample clock signals;
a plurality of logic gates having inputs connected to outputs of the D flip-flops so as to gate only one of the N sample clock signals therethrough upon a predetermined transition in the data signal.
14. The device of claim 13, the digital means further including means for inverting the gated sample clock signal and using the inverted sample clock signal for determining levels of the data signal for detecting data therein.
15. The device of claim 14, further comprising means for latching onto the inverted sample clock signal, the latching means being unlatched when the digital means finds another predetermined data signal edge.
PCT/US1990/004827 1989-09-11 1990-08-24 Clock recovery apparatus WO1991003895A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US07/405,806 US4959846A (en) 1989-09-11 1989-09-11 Clock recovery apparatus including a clock frequency adjuster
US07/405,799 US4975929A (en) 1989-09-11 1989-09-11 Clock recovery apparatus
US405,806 1989-09-11
US405,799 1989-09-11

Publications (1)

Publication Number Publication Date
WO1991003895A1 true WO1991003895A1 (en) 1991-03-21

Family

ID=27019240

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1990/004827 WO1991003895A1 (en) 1989-09-11 1990-08-24 Clock recovery apparatus

Country Status (1)

Country Link
WO (1) WO1991003895A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0021290A1 (en) * 1979-06-20 1981-01-07 Siemens Aktiengesellschaft Method and circuit arrangement for synchronisation of the transmission of digital information signals
EP0174880A1 (en) * 1984-07-13 1986-03-19 Michel Servel Arrangement for the localisation of the transitions of a data signal in respect of a clock signal, and synchronisation mechanism using such an arrangement
WO1988005236A1 (en) * 1987-01-05 1988-07-14 Grumman Aerospace Corporation High speed data-clock synchronization processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0021290A1 (en) * 1979-06-20 1981-01-07 Siemens Aktiengesellschaft Method and circuit arrangement for synchronisation of the transmission of digital information signals
EP0174880A1 (en) * 1984-07-13 1986-03-19 Michel Servel Arrangement for the localisation of the transitions of a data signal in respect of a clock signal, and synchronisation mechanism using such an arrangement
WO1988005236A1 (en) * 1987-01-05 1988-07-14 Grumman Aerospace Corporation High speed data-clock synchronization processor

Similar Documents

Publication Publication Date Title
US4975929A (en) Clock recovery apparatus
US5081655A (en) Digital phase aligner and method for its operation
US5212716A (en) Data edge phase sorting circuits
KR100284800B1 (en) Method and system for resynchronizing a phase shifted and received data stream with a master clock
KR0160279B1 (en) Wireless communication apparatus
US4959846A (en) Clock recovery apparatus including a clock frequency adjuster
US4817117A (en) Method of and circuit arrangement for ensuring bit synchronization of a data block in a receiver
US5040193A (en) Receiver and digital phase-locked loop for burst mode data recovery
US4756010A (en) Asynchronous/synchronous data receiver circuit
EP0205552A1 (en) Clock recovery circuit
US5506874A (en) Phase detector and method
US4862482A (en) Receiver for Manchester encoded data
US6438187B1 (en) Phase processor for data pattern correlator
KR100634193B1 (en) Transition detection, validation and memorization circuit
US6556152B2 (en) Deserializer
US20040096016A1 (en) Fast locking clock and data recovery unit
EP0146609A1 (en) Manchester decoder
WO1999057842A1 (en) Jitter measurement
US6396953B1 (en) Data pattern correlator
US5748123A (en) Decoding apparatus for Manchester code
US5140620A (en) Method and apparatus for recovering data, such as teletext data encoded into television signals
CA1044386A (en) Phase inversion synchronization
WO1991003895A1 (en) Clock recovery apparatus
CA2066637C (en) Method and apparatus for recovering data, such as teletext data encoded into television signals
US6072344A (en) Phase-locked loop (PLL) circuit containing a phase detector for achieving byte alignment

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB IT LU NL SE

NENP Non-entry into the national phase in:

Ref country code: CA