DESCRIPTION
ZERO-CROSSING INTERPOLATOR TO REDUCE ISOCHRONOUS DISTORTION IN A DIGITAL FSK MODEM
Background of the Invention Field of the Invention
This invention relates to data communication and particularly to a frequency shift keyed -(FSK) detection apparatus in which a zero-crossing or change of sign is employed to determine signal state.
The output of a digital FSK detector is a sequen of binary values separated by an interval T. The binary serial information is retrieved by detecting a positive or negative value relative to a zero reference. For an audio band modulator-demodulator (mode ), a reasonable value for the time interval T is approximately 130 microseconds. The interval value is generally chosen to minimize the processi power required of the particular filter and detection schem The value of the interval T determines the amount of un¬ certainty which may be tolerated between two successive samples during an interval in which a change of sign occurs For example, at a K bit per second transmission of an FSK signal, the uncertainty in zero-crossing detection as a percentage of bit time is given by the expression:
(1/K) x 100%.
Where for example the interval T is equal to 130 microseconds and the transmission rate is K=1200 bits per second, the uncertainty in the time of zero-crossing is 15.6%. This is a relatively high uncertainty which con¬ tributes heavily to jitter, i.e., isochronous distortion, i the decoded signal.
OMPI
- IP
Description of the Prior Art
Heretofore, FSK receivers have commonly been analog signaling devices wherein the received signal is continuously detected and therefore not sampled. Accord- ingly, the uncertainty contributed by use of a digital sampling technique has not been a concern.
Digital techniques including signal sampling have been employed in other applications. The accepted techniqu for reducing signal uncertainty is to increase the sampling rate of the signal. A higher sampling rate, however, requires more preprocessing of the signal than is necessary to accurately recover the information in an FSK signal.
Nevertheless, a method is needed to reduce the uncertainty in the time of zero-crossing in a digitally processed FSK signal. A more desirable value of uncertainty is on the order of 1% to 2%.
Summary of the Invention In a digital data communication receiver, an apparatus and a method are provided for estimating the time of zero-crossing between successive samples of a continuous frequency shift keyed (FSK) or like zero-crossing signal in a manner more accurate than is provided by sampling at a rate suited to preprocessing. The apparatus includes means for sensing a change in sign of the signal relative to successive samples and means responsive to the sensed sign change to interpolate between the values of the respective samples for indicating more accurately the time of occur¬ rence of the zero-crossing prior to the second sample thereb demodulating the continuous signal.
In a specific embodiment, where the time interval of the basic clock is T=130 microseconds, an interpolated value of T =T/8.is generated, which is equal to about 16 microseconds. Reducing the zero-crossing uncertainty to n=16 microseconds yields a distortion of less than about
2%. The moment of zero-crossing can thus be more accurately
estimated by interpolation between the samples preceding a following a detected change of sign.
The invention will be better understood by refer ence to the following detailed description taken in connec tion with the accompanying drawings.
Brief Description of the Drawings Figure 1 is a block diagram of a digital signal detector for FSK signals according to the invention. Figure 2 is a set of timing diagrams for a digi¬ tally sampled FSK signal detector according to the inventi
Figure 3 is a schematic diagram of a digital signal detector according to the invention.
Detailed Description of Specific Embodiments
Various specific embodiments may be employed to accomplish the purposes of the invention, namely, to reduce the uncertainty of detecting a change in sign between two successive samples of a continuous signal wherein the sampl are separated by a time interval T. In each instance, the embodiment interpolates between successive samples having opposite signs and divides the time interval T into corres¬ ponding subintervals Tn. The interpolated samples occurrin each successive subinterval are then monitored for a sign change. A change in sign is indicated by a state change in an output signal thereby representing the demodulated signal.
Referring to Figure 1, there is shown diagram of a digital signal detector 10 according to the invention. The detector 10 comprises a storage register 12, a comparat 14 and an interpolator 16, as hereinafter explained. The storage register 12 is operative to receive sampled input values of a continuous signal at each clock cycle of a clock 18. The sampled input values comprise a sign bit and one or more value bits, typically about eight bits in total.
OMP
The sampled input values are provided over input sign line 20 and input value bus line 22 to both the storage register 12 and to one input of the interpolator 16. The output of the storage register 12 is provided through an output sign line 24 and an output value bus line 26 to a second input 28 of the interpolator 16. The signals to the second input 28 are the same signals provided to the first input 23 but delayed by one clock interval.
The input sign line 20 and the output sign line 24 are also provided to inputs of the dual input sign comparato 14. The output of the sign comparator 14 is provided to an enable input 30 of the interpolator 16. The output terminal 32 of the interpolator 16 provides a single clock-controlled two state signal representing the demodulated data output. The input signal to the detector 10 is the output of a digital low pass filter representing a sampled eye pattern of a received analog signal.
Referring to Figure 2, there is shown a set of timing diagrams illustrating the operation of the invention. In timing diagram I there is shown the continuous eye pattern signal versus time 34, a reconstructed eye pattern signal curve 36 delayed by one interval T and samples of the eye pattern signal x(n-2), x(n-l), x(n), x{n+l), x(n+2), x(n+3). The samples are shown at a scaled amplitude between +1 and -1.
The reconstructed curve between sample x(n-l) and x(n) can be approximated by a straight line originating at x(n-l). Employing the equation;
y(t) = A • t + x(n-l)
Where A equals the magnitude and sign of the slope, subintervals T_ can be constructed by dividing the interval T between x(n-l) and x(n) into N number of smaller time slots having a duration of T/N.
The slope A is given by the expression:
x(n) - x(n-l)
T
The change in the equation y(t) due to each subinterval T_ is then given by the expression:
T A • TQ = x(n) - x(n-l) • - -
This quantity remains constant throughout the period between samples x(n-l) and x(n) thereby yielding a more accurate estimation of the occurrence of a zero- crossing between the two samples than the time of sample x(n). The interpolator 16 (Fig. 1) is operative to estimat the time of zero-crossing when related circuitry, for examp the sign comparator 14, detects successive samples of opposite sign. If successive samples of the same sign are not detected, the interpolator 16 is not employed. The method according to the invention may be implemented in either random, logic digital circuitry or algorithmically in a process-oriented microprocessor-based system. The steps of an appropriate algorithm are as follows: 1. If the value of the sign of x(n) equals the value of the sign of x(n-l), then received data is passed through unchanged.
2. Otherwise, compute the value of x(n) - x(n-l) (by adding the absolute values) and store as the value "change in x" in a first register.
3. Divide the value in the first register by the scaling value determined by the ratio of the sample clock rate to the interpolator clock rate. (If the ratio is an even power of the digital number base, division may be accomplished by a shift in the value places. Specifically, where the number base is binary digital and the ratio of the value of the sample clock to the interpolator clock is 8 to
1, division is accomplished by a right shift of three bits. The value thus obtained is A • Tfi.
4. Place the value x(n-l) into an accumulator register. 5. Add to the accumulator register the contents o the first register (which has been right shifted as in Step 3) under high-speed clock control until the current sign of the value of the accumulator register is not equal to the value of the sign of the accumulator register during the previous clock cycle.
6. Thereupon change the state of the demodulator *output at the current clock transition.
Figure 3 illustrates one circuit implementation (with enumeration corresponding to Fig. 1). The inter- polator 16 includes an arithmetic unit 38, a first multi¬ plexer 50, an arithmetic accumulator 58, a second multi¬ plexer 62, and a timer 68. The sampled input values on sign line 20 and value lines 22 are coupled to the storage register 12, for example an 8-bit storage register, and to one input port 23 of the arithmetic unit 38. The output of the storage register 12 through sign line 24 and value lines 26 is coupled to another input port 28 of the arithmetic unit 38. The arithmetic unit 38 is dedicated to subtracting the values received at its first port 23 from the value received at its second port 28 to provide a difference value at its output port 40. The more significant output bits of output port 40 are shifted toward the least significant bit by three bits and coupled to a first input port 42 of the first multiplexer 44. The vacated most significant bits are tied together to an appropriate logic level (for example to ground, assuming positive logic) . The lesser significant bits are truncated. The bit shifting arrangement is the substantial equivalent of a divider 46.
The input sign line 20 and input value bus line 22 are also coupled to a second input port 48 of the first multiplexer 44. The first multiplexer 44 has its output
port 50 coupled through a sign line 52 and value bus lines 54 to an input port 56 of the accumulator 58. The output sign bit of the accumulator 58 is coupled to a first input port 60 of the second multiplexer 62. The output sign line 24 is coupled to a second input port 64 of the second multi plexer 62. The output terminal of the second multiplexer 6 is the interpolator output port 32. The storage register input sign line 20 is coupled to a first input of the sign comparator 14 and the storage register output sign line 24 is coupled to the second input of the sign comparator 14. The output of the sign comparator 14 controls the timer 68, the outputs of which are determined by the state of the enable input 30. The timer 68 has outputs coupled to the storage register 12, the accumulator 58, the first ulti- plexer 44 and the second multiplexer 62.
In order to understand the operation of the elements of Figure 3 in accordance with the invention, reference is made to Figure 2 in connection with Figure 3. A signal in the form of digital samples is applied to the input of the detector 10, the digital samples being points along the continuous eye pattern signal curve 34 (timing diagram I). The signal is delayed by the storage register 12 to produce a set of samples delayed by one interval clock cycle T relative to the detector input samples. The value of the sign of these two samples, namely the signal on input sign line 20 and the signal on output sign line 24, is applied to the sign comparator 14, the output of which is applied to the enable input 30 and appears in the form of a two state signal A (timing diagram II). The detection of unlike signs causes a change of state at the clock transition of the sample clock line signal B (timing diagram III). (Both leading and trailing edges are employed as clock signals.) Signal B out of the timer 18 toggles the storage register 12 and clears the accumulator 58. In response to the change of state indicated by signal A, the second multiplexer 62 switches its input from the output sign line 24 to the accumulator output sign line applied at
its input 60, (timing diagram II) under control of the signal C (diagram IV) out of the timer 18. The accumulator 58 is thus cleared and ready to be loaded and its output clocked through the second multiplexer 62. The interpolator clock signal (signal D of timing diagram V), which is operative at a multiple of the sample clock with intervals T. then begins to cycle the accumulato 58. On the first clock cycle, the value x(n) from input value line 22 and input sign line 20 is directed through the first multiplexer 44 into the accumulator 58, as indicated by state 1 of signal E (timing diagram VI) . At the next clock cycle, however, under control of the timer 18, the output of the multiplexer 44 is gated from the input port 42, as indicated by state 0 of signal E. The value appearin at input 42 of the multiplexer 44 is then repeatedly added to the current contents of the accumulator 58 until such time as the sign changes. (In this example, it is assumed that the sample value is provided continuously through the input to the detector 10. A sample storage register 51 at the output of the previous stag —represented in phantom—is a typical mechanism. Alternatively, the value of the sample is stored in such a sample register at the input of the detector 10.) The value in the accumulator is, for example, converged toward zero from the initial value applied through the second port 48 of the multiplexer 44, and upon the accumulator value crossing zero, the sign of the accumulator contents changes. This change in sign indicating a zero- crossing is provided at the output port 32 of the second multiplexer 62. In the detector output (signal F of timing diagram VII), state change occurs at the clock transition of the subinterval k (diagrams I and VII) at which the interpo¬ lated value crosses the zero reference.
The invention has now been explained with referenc to specific embodiments. Other embodiments will be apparent to those of ordinary skill in this art. It is therefore not intended that this invention be limited except as indicated by the appended claims.